diff --git a/.gitignore b/.gitignore index c23aeea93..9e2781708 100644 --- a/.gitignore +++ b/.gitignore @@ -49,6 +49,7 @@ target/ *.java~ *.properties~ *.xml~ +sessionStore ### system ignore ### .DS_Store diff --git a/db/1schema.sql b/db/1schema.sql index 5973b0af9..476a48b68 100644 --- a/db/1schema.sql +++ b/db/1schema.sql @@ -24,3 +24,6 @@ create database `pigxx_report` default character set utf8mb4 collate utf8mb4_gen -- pigx report 演示数据相关库 (可以不初始化) create database `pigxx_report_init` default character set utf8mb4 collate utf8mb4_general_ci; + +-- pigx bi 报表相关的数据库 +create database `pigxx_bi` default character set utf8mb4 collate utf8mb4_general_ci; diff --git a/db/2pigxx.sql b/db/2pigxx.sql index 2439ee74b..036fb2870 100644 --- a/db/2pigxx.sql +++ b/db/2pigxx.sql @@ -73,6 +73,50 @@ INSERT INTO `sys_dept_relation` VALUES (7, 12); INSERT INTO `sys_dept_relation` VALUES (8, 8); COMMIT; +-- ---------------------------- +-- Table structure for sys_post +-- ---------------------------- +DROP TABLE IF EXISTS `sys_post`; +CREATE TABLE `sys_post` ( + `post_id` bigint NOT NULL COMMENT '岗位ID', + `post_code` varchar(64) CHARACTER SET utf8mb4 NOT NULL COMMENT '岗位编码', + `post_name` varchar(50) CHARACTER SET utf8mb4 NOT NULL COMMENT '岗位名称', + `post_sort` int(0) NOT NULL COMMENT '岗位排序', + `remark` varchar(500) CHARACTER SET utf8mb4 NULL DEFAULT NULL COMMENT '岗位描述', + `del_flag` char(1) CHARACTER SET utf8mb4 NOT NULL DEFAULT '0' COMMENT '是否删除 -1:已删除 0:正常', + `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `create_by` varchar(64) CHARACTER SET utf8mb4 NOT NULL DEFAULT '' COMMENT '创建人', + `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 NOT NULL DEFAULT '' COMMENT '更新人', + `tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户ID', + PRIMARY KEY (`post_id`) USING BTREE +) ENGINE = InnoDB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '岗位信息表'; + +-- ---------------------------- +-- Records of sys_post +-- ---------------------------- +BEGIN; +INSERT INTO `sys_post` VALUES (1, 'CTO', 'CTO', 0, 'CTO', '0', '2022-03-26 13:48:17', '', '2022-03-26 13:50:14', '', 1); +INSERT INTO `sys_post` VALUES (2, 'CEO', 'CEO', 1, 'CEO', '0', '2022-03-26 13:48:27', '', '2022-03-26 13:48:38', '', 1); +COMMIT; + +-- ---------------------------- +-- Table structure for sys_user_post +-- ---------------------------- +DROP TABLE IF EXISTS `sys_user_post`; +CREATE TABLE `sys_user_post` ( + `user_id` bigint(0) NOT NULL COMMENT '用户ID', + `post_id` bigint(0) NOT NULL COMMENT '岗位ID', + PRIMARY KEY (`user_id`, `post_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT = '用户与岗位关联表'; + +-- ---------------------------- +-- Records of sys_user_post +-- ---------------------------- +BEGIN; +INSERT INTO `sys_user_post` VALUES (1, 1); +COMMIT; + -- ---------------------------- -- Table structure for sys_dict -- ---------------------------- @@ -210,7 +254,10 @@ INSERT INTO `sys_dict_item` VALUES (59, 19, '1', '开', 'captcha_flag_types', ' INSERT INTO `sys_dict_item` VALUES (60, 20, '0', '否', 'enc_flag_types', '不加密', 0, ' ', ' ', '2020-11-18 06:55:31', '2020-11-18 06:55:31', '不加密-0', '0', 1); INSERT INTO `sys_dict_item` VALUES (61, 20, '1', '是', 'enc_flag_types', '加密', 1, ' ', ' ', '2020-11-18 06:55:51', '2020-11-18 06:55:51', '加密-1', '0', 1); INSERT INTO `sys_dict_item` VALUES (62, 15, 'MERGE_PAY', '聚合支付', 'channel_id', '聚合支付', 1, ' ', ' ', '2019-05-30 19:08:08', '2019-06-18 13:51:53', '聚合支付', '0', 1); -INSERT INTO `sys_dict_item` VALUES (63, 2, 'CAS', 'CAS登录', 'social_type', 'CAS 单点登录系统', 3, ' ', ' ', '2022-02-18 13:56:25', '2022-02-18 13:56:28', NULL, '0', 0); +INSERT INTO `sys_dict_item` VALUES (63, 2, 'CAS', 'CAS登录', 'social_type', 'CAS 单点登录系统', 3, ' ', ' ', '2022-02-18 13:56:25', '2022-02-18 13:56:28', NULL, '0', 1); +INSERT INTO `sys_dict_item` VALUES (64, 2, 'DINGTALK', '钉钉', 'social_type', '钉钉', 3, ' ', ' ', '2022-02-18 13:56:25', '2022-02-18 13:56:28', NULL, '0', 1); +INSERT INTO `sys_dict_item` VALUES (65, 2, 'WEIXIN_CP', '企业微信', 'social_type', '企业微信', 3, ' ', ' ', '2022-02-18 13:56:25', '2022-02-18 13:56:28', NULL, '0', 1); +INSERT INTO `sys_dict_item` VALUES (66, 18, '2', 'APP', 'style_type', 'uview风格', 1, ' ', ' ', '2020-02-07 03:53:12', '2020-02-07 03:53:12', '', '0', 1); COMMIT; -- ---------------------------- @@ -315,14 +362,22 @@ INSERT INTO `sys_menu` VALUES (1301, '角色新增', 'sys_role_add', NULL, 1300, INSERT INTO `sys_menu` VALUES (1302, '角色修改', 'sys_role_edit', NULL, 1300, NULL, 1, '0', '1', ' ', '2017-11-08 10:14:41', ' ', '2021-05-25 03:12:55', '0', 1); INSERT INTO `sys_menu` VALUES (1303, '角色删除', 'sys_role_del', NULL, 1300, NULL, 1, '0', '1', ' ', '2017-11-08 10:14:59', ' ', '2021-05-25 03:12:55', '0', 1); INSERT INTO `sys_menu` VALUES (1304, '分配权限', 'sys_role_perm', NULL, 1300, NULL, 1, '0', '1', ' ', '2018-04-20 07:22:55', ' ', '2021-05-25 03:12:55', '0', 1); +INSERT INTO `sys_menu` VALUES (1305, '角色导入导出', 'sys_role_export', NULL, 1300, NULL, 4, '0', '1', ' ', '2022-03-26 15:54:34', ' ', NULL, '0', 1); INSERT INTO `sys_menu` VALUES (1400, '部门管理', NULL, '/admin/dept/index', 1000, 'icon-web-icon-', 4, '0', '0', ' ', '2018-01-20 13:17:19', ' ', '2022-01-27 11:59:06', '0', 1); INSERT INTO `sys_menu` VALUES (1401, '部门新增', 'sys_dept_add', NULL, 1400, NULL, 1, '0', '1', ' ', '2018-01-20 14:56:16', ' ', '2021-05-25 03:12:55', '0', 1); INSERT INTO `sys_menu` VALUES (1402, '部门修改', 'sys_dept_edit', NULL, 1400, NULL, 1, '0', '1', ' ', '2018-01-20 14:56:59', ' ', '2021-05-25 03:12:55', '0', 1); INSERT INTO `sys_menu` VALUES (1403, '部门删除', 'sys_dept_del', NULL, 1400, NULL, 1, '0', '1', ' ', '2018-01-20 14:57:28', ' ', '2021-05-25 03:12:55', '0', 1); +INSERT INTO `sys_menu` VALUES (1404, '开放互联', 'sys_connect_sync', NULL, 1400, NULL, 1, '0', '1', ' ', '2018-01-20 14:57:28', ' ', '2021-05-25 03:12:55', '0', 1); INSERT INTO `sys_menu` VALUES (1500, '租户管理', '', '/admin/tenant/index', 1000, 'icon-erji-zuhushouye', 5, '0', '0', ' ', '2018-01-20 13:17:19', ' ', '2022-01-27 11:59:14', '0', 1); INSERT INTO `sys_menu` VALUES (1501, '租户新增', 'admin_systenant_add', NULL, 1500, '1', 0, '0', '1', ' ', '2018-05-15 21:35:18', ' ', '2020-03-24 08:56:52', '0', 1); INSERT INTO `sys_menu` VALUES (1502, '租户修改', 'admin_systenant_edit', NULL, 1500, '1', 1, '0', '1', ' ', '2018-05-15 21:35:18', ' ', '2020-03-24 08:56:53', '0', 1); INSERT INTO `sys_menu` VALUES (1503, '租户删除', 'admin_systenant_del', NULL, 1500, '1', 2, '0', '1', ' ', '2018-05-15 21:35:18', ' ', '2020-03-24 08:56:54', '0', 1); +INSERT INTO `sys_menu` VALUES (1600, '岗位管理', NULL, '/admin/post/index', 1000, 'icon-record', 6, '0', '0', ' ', '2022-03-26 13:04:14', ' ', NULL, '0', 1); +INSERT INTO `sys_menu` VALUES (1601, '岗位信息查看', 'sys_post_view', NULL, 1600, NULL, 0, '0', '1', ' ', '2022-03-26 13:05:34', ' ', NULL, '0', 1); +INSERT INTO `sys_menu` VALUES (1602, '岗位信息新增', 'sys_post_add', NULL, 1600, NULL, 1, '0', '1', ' ', '2022-03-26 13:06:00', ' ', NULL, '0', 1); +INSERT INTO `sys_menu` VALUES (1603, '岗位信息修改', 'sys_post_edit', NULL, 1600, NULL, 2, '0', '1', ' ', '2022-03-26 13:06:31', ' ', '2022-03-26 13:06:38', '0', 1); +INSERT INTO `sys_menu` VALUES (1604, '岗位信息删除', 'sys_post_del', NULL, 1600, NULL, 3, '0', '1', ' ', '2022-03-26 13:06:31', ' ', NULL, '0', 1); +INSERT INTO `sys_menu` VALUES (1605, '岗位导入导出', 'sys_post_export', NULL, 1600, NULL, 4, '0', '1', ' ', '2022-03-26 13:06:31', ' ', '2022-03-26 06:32:02', '0', 1); INSERT INTO `sys_menu` VALUES (2000, '系统管理', NULL, '/system', -1, 'icon-xitongpeizhi', 1, '0', '0', ' ', '2017-11-07 20:56:00', ' ', '2022-02-05 16:15:14', '0', 1); INSERT INTO `sys_menu` VALUES (2100, '日志管理', NULL, '/admin/log/index', 2000, 'icon-rizhi', 5, '0', '0', ' ', '2017-11-20 14:06:22', ' ', '2020-03-24 08:56:56', '0', 1); INSERT INTO `sys_menu` VALUES (2101, '日志删除', 'sys_log_del', NULL, 2100, NULL, 1, '0', '1', ' ', '2017-11-20 20:37:37', ' ', '2021-05-25 03:12:55', '0', 1); @@ -425,7 +480,7 @@ INSERT INTO `sys_menu` VALUES (6801, '新增标签', 'mp_wx_account_tag_add', NU INSERT INTO `sys_menu` VALUES (6802, '编辑标签', 'mp_wx_account_tag_edit', NULL, 6800, NULL, 1, '0', '1', ' ', '2019-03-29 15:43:54', ' ', '2020-03-24 08:58:39', '0', 1); INSERT INTO `sys_menu` VALUES (6803, '删除标签', 'mp_wx_account_tag_del', NULL, 6800, NULL, 1, '0', '1', ' ', '2019-03-29 15:43:54', ' ', '2020-03-24 08:58:39', '0', 1); INSERT INTO `sys_menu` VALUES (6804, '同步标签', 'mp_wx_account_tag_sync', NULL, 6800, NULL, 1, '0', '1', ' ', '2019-03-29 15:43:54', ' ', '2022-02-17 15:44:24', '0', 1); -INSERT INTO `sys_menu` VALUES (7000, '报表设计', NULL, 'http://127.0.0.1:5006/ureport/designer', -1, 'icon-icon-p_mrpbaobiao', 9, '0', '0', ' ', '2019-08-12 09:35:16', ' ', '2020-03-24 08:58:48', '0', 1); +INSERT INTO `sys_menu` VALUES (7000, '报表设计', NULL, '/report/bi/index', -1, 'icon-icon-p_mrpbaobiao', 9, '0', '0', ' ', '2019-08-12 09:35:16', ' ', '2020-03-24 08:58:48', '0', 1); INSERT INTO `sys_menu` VALUES (8000, '文件管理', NULL, '/admin/file/index', 2000, 'icon-wenjianguanli', 6, '0', '0', ' ', '2019-06-25 12:44:46', ' ', '2020-03-24 08:58:41', '0', 1); INSERT INTO `sys_menu` VALUES (8001, '删除文件', 'sys_file_del', NULL, 8000, NULL, 1, '0', '1', ' ', '2019-06-25 13:41:41', ' ', '2020-03-24 08:58:42', '0', 1); INSERT INTO `sys_menu` VALUES (9000, '开发平台', NULL, '/gen', -1, 'icon-shejiyukaifa-', 9, '0', '0', ' ', '2019-08-12 09:35:16', ' ', '2020-03-24 08:58:48', '0', 1); @@ -511,6 +566,7 @@ INSERT INTO `sys_public_param` VALUES (5, '租户默认角色编码', 'TENANT_DE INSERT INTO `sys_public_param` VALUES (6, '租户默认角色名称', 'TENANT_DEFAULT_ROLENAME', '租户默认角色', '0', '', ' ', ' ', '2020-05-12 04:06:19', NULL, '2', '1', '0', 1); INSERT INTO `sys_public_param` VALUES (7, '表前缀', 'GEN_TABLE_PREFIX', 'tb_', '0', '', ' ', ' ', '2020-05-12 04:23:04', NULL, '9', '1', '0', 1); INSERT INTO `sys_public_param` VALUES (8, '接口文档不显示的字段', 'GEN_HIDDEN_COLUMNS', 'tenant_id', '0', '', ' ', ' ', '2020-05-12 04:25:19', NULL, '9', '1', '0', 1); +INSERT INTO `sys_public_param` VALUES (9, '注册用户默认角色', 'USER_DEFAULT_ROLE', 'GENERAL_USER', '0', NULL, ' ', ' ', '2022-03-31 16:52:24', NULL, '2', '1', '0', 1); COMMIT; -- ---------------------------- @@ -539,6 +595,7 @@ CREATE TABLE `sys_role` ( -- ---------------------------- BEGIN; INSERT INTO `sys_role` VALUES (1, '管理员', 'ROLE_ADMIN', '管理员', '3', '2', ' ', ' ', '2017-10-29 15:45:51', '2022-01-25 18:21:23', '0', 1); +INSERT INTO `sys_role` VALUES (2, '普通用户', 'GENERAL_USER', '普通用户', '3', NULL, ' ', ' ', '2022-03-31 17:03:15', NULL, '0', 1); COMMIT; -- ---------------------------- @@ -570,14 +627,22 @@ INSERT INTO `sys_role_menu` VALUES (1, 1301); INSERT INTO `sys_role_menu` VALUES (1, 1302); INSERT INTO `sys_role_menu` VALUES (1, 1303); INSERT INTO `sys_role_menu` VALUES (1, 1304); +INSERT INTO `sys_role_menu` VALUES (1, 1305); INSERT INTO `sys_role_menu` VALUES (1, 1400); INSERT INTO `sys_role_menu` VALUES (1, 1401); INSERT INTO `sys_role_menu` VALUES (1, 1402); INSERT INTO `sys_role_menu` VALUES (1, 1403); +INSERT INTO `sys_role_menu` VALUES (1, 1404); INSERT INTO `sys_role_menu` VALUES (1, 1500); INSERT INTO `sys_role_menu` VALUES (1, 1501); INSERT INTO `sys_role_menu` VALUES (1, 1502); INSERT INTO `sys_role_menu` VALUES (1, 1503); +INSERT INTO `sys_role_menu` VALUES (1, 1600); +INSERT INTO `sys_role_menu` VALUES (1, 1601); +INSERT INTO `sys_role_menu` VALUES (1, 1602); +INSERT INTO `sys_role_menu` VALUES (1, 1603); +INSERT INTO `sys_role_menu` VALUES (1, 1604); +INSERT INTO `sys_role_menu` VALUES (1, 1605); INSERT INTO `sys_role_menu` VALUES (1, 2000); INSERT INTO `sys_role_menu` VALUES (1, 2100); INSERT INTO `sys_role_menu` VALUES (1, 2101); @@ -729,6 +794,7 @@ INSERT INTO `sys_route_conf` VALUES (8, '工作流长链接支持', 'pigx-oa-pla INSERT INTO `sys_route_conf` VALUES (9, '微信公众号管理', 'pigx-mp-platform', '[{\"args\": {\"_genkey_0\": \"/mp/**\"}, \"name\": \"Path\"}]', '[]', 'lb://pigx-mp-platform', 0, NULL, ' ', ' ', '2019-10-16 16:44:41', '2019-11-05 22:37:12', '0'); INSERT INTO `sys_route_conf` VALUES (10, '支付管理', 'pigx-pay-platform', '[{\"args\": {\"_genkey_0\": \"/pay/**\"}, \"name\": \"Path\"}]', '[]', 'lb://pigx-pay-platform', 0, NULL, ' ', ' ', '2019-10-16 16:44:41', '2019-11-05 22:37:13', '0'); INSERT INTO `sys_route_conf` VALUES (11, '监控管理', 'pigx-monitor', '[{\"args\": {\"_genkey_0\": \"/monitor/**\"}, \"name\": \"Path\"}]', '[]', 'lb://pigx-monitor', 0, NULL, ' ', ' ', '2019-10-16 16:44:41', '2019-11-05 22:37:17', '0'); +INSERT INTO `sys_route_conf` VALUES (12, '积木报表', 'pigx-jimu-platform\n', '[{\"args\": {\"_genkey_0\": \"/jimu/**\"}, \"name\": \"Path\"}]', '[]', 'lb://pigx-jimu-platform', 0, NULL, ' ', ' ', '2019-10-16 16:44:41', '2019-11-05 22:37:17', '0'); COMMIT; -- ---------------------------- @@ -742,6 +808,7 @@ CREATE TABLE `sys_social_details` ( `app_id` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL, `app_secret` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL, `redirect_url` varchar(128) CHARACTER SET utf8mb4 DEFAULT NULL, + `ext` varchar(255) CHARACTER SET utf8mb4 DEFAULT NULL COMMENT '拓展字段', `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' COMMENT '创建人', `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' COMMENT '修改人', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', @@ -751,15 +818,6 @@ CREATE TABLE `sys_social_details` ( PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='系统社交登录账号表'; --- ---------------------------- --- Records of sys_social_details --- ---------------------------- -BEGIN; -INSERT INTO `sys_social_details` VALUES (1, 'WX', '微信互联参数', 'wxd1678d3f83b1d83a', '6ddb043f94da5d2172926abe8533504f', 'daoweicloud.com', ' ', ' ', '2018-08-16 14:24:25', '2019-03-02 09:43:13', '0', 1); -INSERT INTO `sys_social_details` VALUES (2, 'GITEE', '码云登录', '8fc54e0e76e7842cf767c3ae3b9fdc48c03cefed27aa565ff7b2a39d142d9892', 'c544469ce78a67d9fcf9b28cd9f310b73f5cbc46a1b993e0802ad61517deb221', 'http://gitee.huaxiadaowei.com/#/authredirect', ' ', ' ', '2019-06-28 09:59:55', '2019-06-28 09:59:55', '0', 1); -INSERT INTO `sys_social_details` VALUES (3, 'OSC', '开源中国', 'neIIqlwGsjsfsA6uxNqD', 'aOPhRuOOJNXV1x7JrTJ9qIyRCAPXoO0l', 'http://gitee.huaxiadaowei.com/#/authredirect', ' ', ' ', '2019-06-28 10:05:37', '2019-06-28 10:05:37', '0', 1); -INSERT INTO `sys_social_details` VALUES (4, 'MINI', '小程序', 'wx6832be859d0e1cf5', '08036aef810dcb2f8ae31510910ba631', NULL, ' ', ' ', '2019-11-02 22:08:03', '2019-11-02 22:10:53', '0', 1); -COMMIT; -- ---------------------------- -- Table structure for sys_tenant @@ -769,6 +827,7 @@ CREATE TABLE `sys_tenant` ( `id` bigint NOT NULL COMMENT '租户id', `name` varchar(255) CHARACTER SET utf8mb4 DEFAULT NULL, `code` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL, + `tenant_domain` varchar(255) CHARACTER SET utf8mb4 DEFAULT NULL, `start_time` datetime DEFAULT NULL COMMENT '开始时间', `end_time` datetime DEFAULT NULL COMMENT '结束时间', `status` char(1) CHARACTER SET utf8mb4 DEFAULT '0', @@ -784,7 +843,7 @@ CREATE TABLE `sys_tenant` ( -- Records of sys_tenant -- ---------------------------- BEGIN; -INSERT INTO `sys_tenant` VALUES (1, '北京分公司', '1', '2019-05-15 00:00:00', '2029-05-15 00:00:00', '0', '0', ' ', ' ', '2019-05-15 15:44:57', '2022-02-10 05:38:48'); +INSERT INTO `sys_tenant` VALUES (1, '北京分公司', '1', '','2019-05-15 00:00:00', '2029-05-15 00:00:00', '0', '0', ' ', ' ', '2019-05-15 15:44:57', '2022-02-10 05:38:48'); COMMIT; -- ---------------------------- diff --git a/db/6pigxx_config.sql b/db/6pigxx_config.sql index f14bf11ce..a86a17c7e 100644 --- a/db/6pigxx_config.sql +++ b/db/6pigxx_config.sql @@ -32,21 +32,20 @@ CREATE TABLE `config_info` ( -- Records of config_info -- ---------------------------- BEGIN; -INSERT INTO `config_info` VALUES (1, 'application-dev.yml', 'DEFAULT_GROUP', '# 配置文件加密根密码\njasypt:\n encryptor:\n password: pigx\n algorithm: PBEWithMD5AndDES\n iv-generator-classname: org.jasypt.iv.NoIvGenerator\n\nspring:\n mvc:\n pathmatch:\n matching-strategy: ant_path_matcher\n redis:\n host: pigx-redis\n servlet:\n multipart:\n max-file-size: 100MB\n max-request-size: 100MB\n cloud:\n sentinel:\n eager: true\n filter:\n enabled: false\n transport:\n dashboard: pigx-sentinel:5020\n\n# 端点对外暴露\nmanagement:\n endpoints:\n web:\n exposure:\n include: \'*\' \n endpoint:\n restart:\n enabled: true\n health:\n show-details: ALWAYS\n# feign 相关配置\nfeign:\n sentinel:\n enabled: true\n okhttp:\n enabled: true\n httpclient:\n enabled: false\n client:\n config:\n default:\n connectTimeout: 20000\n readTimeout: 20000\n compression:\n request:\n enabled: true\n response:\n enabled: true\n\n#开启灰度\ngray:\n rule:\n enabled: true\n\n# mybatis-plus 配置\nmybatis-plus:\n tenant-enable: ture\n mapper-locations: classpath:/mapper/*Mapper.xml\n global-config:\n capitalMode: true\n banner: false\n db-config:\n id-type: auto\n select-strategy: not_empty\n insert-strategy: not_empty\n update-strategy: not_empty\n type-handlers-package: com.pig4cloud.pigx.common.data.handler\n configuration:\n jdbc-type-for-null: \'null\'\n call-setters-on-nulls: true\n# swagger 全局配置\nknife4j:\n enable: true\nswagger:\n enabled: true\n title: PigX Swagger API\n license: Powered By PigX\n licenseUrl: https://pig4cloud.com/\n terms-of-service-url: https://pig4cloud.com/\n contact:\n email: wangiegie@gmail.com\n url: https://pig4cloud.com/about.html\n authorization:\n name: oauth2\n auth-regex: ^.*$\n authorization-scope-list:\n - scope: server\n description: server all\n token-url-list:\n - http://${GATEWAY_HOST:pigx-gateway}:${GATEWAY_PORT:9999}/auth/oauth/token\n\n# oauth2 资源服务器相关配置\nsecurity:\n oauth2:\n client:\n ignore-urls:\n - /css/**\n - /error\n - /actuator/**\n - /v2/api-docs\n resource:\n loadBalanced: true\n token-info-uri: http://pigx-auth/oauth/check_token', '77d9d4800dc7537704e228f2a04dac55', '2019-04-18 02:10:20', '2022-02-13 21:44:06', 'nacos', '127.0.0.1', '', '', '通用配置文件', 'null', 'null', 'yaml', 'null'); +INSERT INTO `config_info` VALUES (1, 'application-dev.yml', 'DEFAULT_GROUP', '# 配置文件加密根密码\njasypt:\n encryptor:\n password: pigx\n algorithm: PBEWithMD5AndDES\n iv-generator-classname: org.jasypt.iv.NoIvGenerator\n\nspring:\n mvc:\n pathmatch:\n matching-strategy: ant_path_matcher\n redis:\n host: pigx-redis\n servlet:\n multipart:\n max-file-size: 100MB\n max-request-size: 100MB\n cloud:\n sentinel:\n eager: true\n transport:\n dashboard: pigx-sentinel:5020\n\n# 端点对外暴露\nmanagement:\n endpoints:\n web:\n exposure:\n include: \'*\' \n endpoint:\n restart:\n enabled: true\n health:\n show-details: ALWAYS\n# feign 相关配置\nfeign:\n sentinel:\n enabled: true\n okhttp:\n enabled: true\n httpclient:\n enabled: false\n client:\n config:\n default:\n connectTimeout: 20000\n readTimeout: 20000\n compression:\n request:\n enabled: true\n response:\n enabled: true\n\n#开启灰度\ngray:\n rule:\n enabled: true\n\n# mybatis-plus 配置\nmybatis-plus:\n tenant-enable: ture\n mapper-locations: classpath:/mapper/*Mapper.xml\n global-config:\n capitalMode: true\n banner: false\n db-config:\n id-type: auto\n select-strategy: not_empty\n insert-strategy: not_empty\n update-strategy: not_empty\n type-handlers-package: com.pig4cloud.pigx.common.data.handler\n configuration:\n jdbc-type-for-null: \'null\'\n call-setters-on-nulls: true\n# swagger 全局配置\nknife4j:\n enable: true\nswagger:\n enabled: true\n title: PigX Swagger API\n license: Powered By PigX\n licenseUrl: https://pig4cloud.com/\n terms-of-service-url: https://pig4cloud.com/\n contact:\n email: wangiegie@gmail.com\n url: https://pig4cloud.com/about.html\n authorization:\n name: oauth2\n auth-regex: ^.*$\n authorization-scope-list:\n - scope: server\n description: server all\n token-url-list:\n - http://${GATEWAY_HOST:pigx-gateway}:${GATEWAY_PORT:9999}/auth/oauth/token\n\n# oauth2 资源服务器相关配置\nsecurity:\n oauth2:\n client:\n ignore-urls:\n - /css/**\n - /error\n - /actuator/**\n - /v2/api-docs\n resource:\n loadBalanced: true\n token-info-uri: http://pigx-auth/oauth/check_token', '77d9d4800dc7537704e228f2a04dac55', '2019-04-18 02:10:20', '2022-02-13 21:44:06', 'nacos', '127.0.0.1', '', '', '通用配置文件', 'null', 'null', 'yaml', 'null'); INSERT INTO `config_info` VALUES (2, 'pigx-auth-dev.yml', 'DEFAULT_GROUP', '# 数据源\nspring:\n freemarker:\n allow-request-override: false\n allow-session-override: false\n cache: true\n charset: UTF-8\n check-template-location: true\n content-type: text/html\n enabled: true\n expose-request-attributes: false\n expose-session-attributes: false\n expose-spring-macro-helpers: true\n prefer-file-system-access: true\n suffix: .ftl\n template-loader-path: classpath:/templates/', '74f53b71c7799aa754da75662378b93c', '2019-04-18 02:11:32', '2021-05-07 23:40:38', NULL, '10.1.1.143', '', '', '认证中心配置文件', 'null', 'null', 'yaml', 'null'); INSERT INTO `config_info` VALUES (3, 'pigx-codegen-dev.yml', 'DEFAULT_GROUP', '## spring security 配置\nsecurity:\n oauth2:\n client:\n client-id: ENC(gPFcUOmJm8WqM3k3eSqS0Q==)\n client-secret: ENC(gPFcUOmJm8WqM3k3eSqS0Q==)\n scope: server\n# 数据源\nspring:\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_codegen}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true\n resources:\n static-locations: classpath:/static/,classpath:/views/\n\n# 租户表维护\npigx:\n tenant:\n column: tenant_id\n tables:\n - gen_datasource_conf\n - gen_form_conf', 'ed93a557f5709d65bb45c14e80c7e9e1', '2019-04-18 02:12:10', '2022-01-27 21:27:50', 'nacos', '127.0.0.1', '', '', '代码生成', 'null', 'null', 'yaml', 'null'); INSERT INTO `config_info` VALUES (4, 'pigx-daemon-elastic-job-dev.yml', 'DEFAULT_GROUP', '## spring security 配置\nsecurity:\n oauth2:\n client:\n client-id: ENC(tz2NM4GcmnE7sNJTYL8ZSg==)\n client-secret: ENC(tz2NM4GcmnE7sNJTYL8ZSg==)\n scope: server\n## 定时任务\n# 数据源\nspring:\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_job}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true', '4124589805657db024b20772cccf57f5', '2019-04-18 02:12:57', '2020-11-09 16:18:05', NULL, '172.16.1.198', '', '', '定时任务-elastic-job配置', 'null', 'null', 'yaml', 'null'); INSERT INTO `config_info` VALUES (5, 'pigx-gateway-dev.yml', 'DEFAULT_GROUP', 'gateway:\n encode-key: \'pigxpigxpigxpigx\'\n\nswagger:\n ignore-providers:\n - pigx-monitor\n - pigx-auth\n - pigx-tx-manager\n\nribbon:\n rule:\n gray-enabled: true\n\n# 验证码相关配置参考: http://t.cn/A647jEdu\naj:\n captcha:\n cache-type: redis\n water-mark: pig4cloud', 'cd9f8a6a46e2c128f3b172be76ea3221', '2019-04-18 02:13:52', '2021-11-09 12:09:34', '', '127.0.0.1', '', '', '', '', '', 'yaml', ''); INSERT INTO `config_info` VALUES (6, 'pigx-monitor-dev.yml', 'DEFAULT_GROUP', 'spring:\n # 安全配置\n security:\n user:\n name: ENC(rZHA4LW5hHmhLAAzJoFNag==) # pigx\n password: ENC(bjeyh+Aeii3kHXkoo00ZUw==) # pigx\n autoconfigure:\n exclude: com.pig4cloud.pigx.common.core.config.JacksonConfiguration\n boot:\n admin:\n ui:\n title: \'pigx 服务状态监控\'\n brand: \'pigx 服务状态监控\'\n external-views:\n - label: \"SQL监控\"\n url: /druid/sql.html\n order: 2000\n iframe: true\nmanagement:\n endpoints:\n web:\n exposure:\n include: \'*\'\n endpoint:\n health:\n show-details: ALWAYS #显示详细信息\n\n\n# druid 监控的服务\nmonitor:\n applications:\n - pigx-upms-biz\n - pigx-pay-platform\n', 'cbc0b536fe11eeff0dcf81be11dab6e4', '2019-04-18 02:14:17', '2022-02-18 13:44:07', 'nacos', '127.0.0.1', '', '', '监控配置文件', 'null', 'null', 'yaml', 'null'); -INSERT INTO `config_info` VALUES (7, 'pigx-upms-biz-dev.yml', 'DEFAULT_GROUP', '## spring security 配置\nsecurity:\n oauth2:\n client:\n client-id: ENC(ltJPpR50wT0oIY9kfOe1Iw==)\n client-secret: ENC(ltJPpR50wT0oIY9kfOe1Iw==)\n scope: server\n ignore-urls:\n - /error\n - /druid/**\n - /actuator/**\n - /v2/api-docs\n\n# 数据源\nspring:\n autoconfigure:\n exclude: org.springframework.cloud.gateway.config.GatewayAutoConfiguration,org.springframework.cloud.gateway.config.GatewayClassPathWarningAutoConfiguration\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true\n stat-view-servlet:\n enabled: true\n allow: \"\"\n url-pattern: /druid/*\n #login-username: admin\n #login-password: admin\n filter:\n stat:\n enabled: true\n log-slow-sql: true\n slow-sql-millis: 10000\n merge-sql: false\n wall:\n config:\n multi-statement-allow: true\n\n# 文件系统 (minio测试环境,不可当生产使用)\noss:\n endpoint: http://minio.pig4cloud.com\n access-key: lengleng\n secret-key: lengleng\n bucket-name: tmp\n\n# Logger Config\nlogging:\n level:\n com.pig4cloud.pigx.admin.mapper: debug\n\n# 租户表维护\npigx:\n tenant:\n column: tenant_id\n tables:\n - sys_user\n - sys_role\n - sys_menu\n - sys_dept\n - sys_log\n - sys_social_details\n - sys_dict\n - sys_dict_item\n - sys_public_param\n - sys_log\n - sys_file\n - sys_oauth_client_details ', '1d1062f04c4b7c0a99984be0e05083c8', '2019-04-18 02:32:44', '2022-02-17 15:33:21', 'nacos', '127.0.0.1', '', '', '', '', '', 'yaml', ''); -INSERT INTO `config_info` VALUES (8, 'pigx-tx-manager-dev.yml', 'DEFAULT_GROUP', '# 页面配置\nspring:\n mvc:\n static-path-pattern: /**\n resources:\n static-locations: classpath:/static/\n\n\n# LCN 配置\ntm:\n transaction:\n netty:\n delaytime: 5 # 客户端链接最大通讯时间 (秒)\n hearttime: 15 # 客户端心跳时间 (秒)\n redis:\n savemaxtime: 30 # redis 保存时间 (秒)\n socket:\n port: 9998 # 通讯端口\n maxconnection: 1000 #最大链接数\n compensate:\n auto: false #是否自动补偿\n notifyUrl: http://ip:port/path #补偿结果通知(配消息总线里面)\n tryTime: 30 # z再次重试时间间隔\n maxWaitTime: 5000 # 请求超时的最大时间 (毫秒)', '885f5c125f2df7a08692929ccce154be', '2019-04-18 02:54:03', '2019-04-18 02:54:03', NULL, '127.0.0.1', '', '', '分布式事务协调模块', NULL, NULL, 'yaml', NULL); +INSERT INTO `config_info` VALUES (7, 'pigx-upms-biz-dev.yml', 'DEFAULT_GROUP', '## spring security 配置\nsecurity:\n oauth2:\n client:\n client-id: ENC(ltJPpR50wT0oIY9kfOe1Iw==)\n client-secret: ENC(ltJPpR50wT0oIY9kfOe1Iw==)\n scope: server\n ignore-urls:\n - /error\n - /druid/**\n - /actuator/**\n - /v2/api-docs\n\n# 数据源\nspring:\n autoconfigure:\n exclude: org.springframework.cloud.gateway.config.GatewayAutoConfiguration,org.springframework.cloud.gateway.config.GatewayClassPathWarningAutoConfiguration\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true\n stat-view-servlet:\n enabled: true\n allow: \"\"\n url-pattern: /druid/*\n #login-username: admin\n #login-password: admin\n filter:\n stat:\n enabled: true\n log-slow-sql: true\n slow-sql-millis: 10000\n merge-sql: false\n wall:\n config:\n multi-statement-allow: true\n\n# 本地文件系统\nfile:\n local:\n enable: true\n basePath: /data/file\n\n# Logger Config\nlogging:\n level:\n com.pig4cloud.pigx.admin.mapper: debug\n\n# 租户表维护\npigx:\n tenant:\n column: tenant_id\n tables:\n - sys_user\n - sys_role\n - sys_menu\n - sys_dept\n - sys_log\n - sys_social_details\n - sys_dict\n - sys_dict_item\n - sys_public_param\n - sys_log\n - sys_file\n - sys_oauth_client_details\n - sys_post', '9762403bc4feb48532167e8df21557d4', '2019-04-18 02:32:44', '2022-05-12 17:58:58', 'nacos', '127.0.0.1', '', '', '', '', '', 'yaml', ''); INSERT INTO `config_info` VALUES (9, 'pigx-daemon-quartz-dev.yml', 'DEFAULT_GROUP', '## spring security 配置\nsecurity:\n oauth2:\n client:\n client-id: ENC(tz2NM4GcmnE7sNJTYL8ZSg==)\n client-secret: ENC(tz2NM4GcmnE7sNJTYL8ZSg==)\n scope: server\n\n# 数据源\nspring:\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_job}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true\n resources:\n static-locations: classpath:/static/,classpath:/views/\n quartz:\n #相关属性配置\n properties:\n org:\n quartz:\n scheduler:\n instanceName: clusteredScheduler\n instanceId: AUTO\n jobStore:\n class: org.springframework.scheduling.quartz.LocalDataSourceJobStore\n driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate\n tablePrefix: QRTZ_\n isClustered: true\n clusterCheckinInterval: 10000\n useProperties: false\n threadPool:\n class: org.quartz.simpl.SimpleThreadPool\n threadCount: 50\n threadPriority: 5\n threadsInheritContextClassLoaderOfInitializingThread: true\n #数据库方式\n job-store-type: jdbc\n #初始化表结构\n #jdbc:\n #initialize-schema: never\n\n', '9ff6e1d6f4d7f8776cb13e31c9dc8ce9', '2019-04-18 03:08:34', '2022-02-18 14:44:22', 'nacos', '127.0.0.1', '', '', '', '', '', 'yaml', ''); INSERT INTO `config_info` VALUES (10, 'pigx-pay-platform-dev.yml', 'DEFAULT_GROUP', '## spring security 配置\nsecurity:\n oauth2:\n client:\n client-id: ENC(gPFcUOmJm8WqM3k3eSqS0Q==)\n client-secret: ENC(gPFcUOmJm8WqM3k3eSqS0Q==)\n scope: server\n ignore-urls:\n - /druid/**\n - /error\n - /actuator/**\n - /v2/api-docs\n# 数据源\nspring:\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_pay}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true\n freemarker:\n allow-request-override: false\n allow-session-override: false\n cache: true\n charset: UTF-8\n check-template-location: true\n content-type: text/html\n enabled: true\n expose-request-attributes: false\n expose-session-attributes: false\n expose-spring-macro-helpers: true\n prefer-file-system-access: true\n suffix: .ftl\n template-loader-path: classpath:/templates/\n# 租户表维护\npigx:\n pay:\n test: lengleng\n aliPayConfig:\n expire-time: 30\n return-url: http://pig4cloud.com\n notify-url: http://wechat.pigx.top/pay/notify/ali/callbak\n wxPayConfig:\n notify-url: https://admin.pig4cloud.com/pay/notify/wx/callbak\n mergePayConfig:\n return-url: http://pig4cloud.com\n notify-url: http://wechat.pigx.top/pay/notify/merge/callbak\n xsequence: #发号器相关配置\n db:\n retry-times: 3\n table-name: pay_sequence\n tenant:\n column: tenant_id\n tables:\n - pay_channel\n - pay_trade_order\n - pay_goods_order\n - pay_notify_record', 'ee15c87a8ec17f7272d0f2f4597ee764', '2019-05-28 11:46:27', '2022-02-18 14:44:43', 'nacos', '127.0.0.1', '', '', '支付模块配置', 'null', 'null', 'yaml', 'null'); INSERT INTO `config_info` VALUES (11, 'pigx-oa-platform-dev.yml', 'DEFAULT_GROUP', '## spring security 配置\nsecurity:\n oauth2:\n client:\n client-id: ENC(gPFcUOmJm8WqM3k3eSqS0Q==)\n client-secret: ENC(gPFcUOmJm8WqM3k3eSqS0Q==)\n scope: server\n ignore-urls:\n - \'/actuator/**\'\n - \'/v2/api-docs\'\n - \'/editor-app/**\'\n - \'/modeler.html\'\n \nspring:\n autoconfigure:\n exclude: org.activiti.spring.boot.SecurityAutoConfiguration\n activiti:\n check-process-definitions: false\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_ac}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true\n\n# 租户表维护\npigx:\n tenant:\n column: tenant_id\n tables:\n - oa_leave_bill', '60d4303ef8696b3cad851f7cfefa7059', '2019-10-16 16:38:52', '2021-11-05 22:46:22', 'nacos', '127.0.0.1', '', '', '', '', '', 'yaml', ''); INSERT INTO `config_info` VALUES (12, 'pigx-mp-platform-dev.yml', 'DEFAULT_GROUP', '## spring security 配置\nsecurity:\n oauth2:\n client:\n client-id: ENC(vW+Nup9LaTfIFwgufUBsYg==)\n client-secret: ENC(vW+Nup9LaTfIFwgufUBsYg==)\n scope: server\n# 数据源\nspring:\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_mp}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true\n resources:\n static-locations: classpath:/static/,classpath:/views/\n\n\n# 租户表维护\npigx:\n tenant:\n column: tenant_id\n tables:\n - wx_mp_menu\n - wx_account\n - wx_account_tag\n - wx_account_fans\n - wx_msg\n - wx_auto_reply', 'd3f9d0ebd82dc5727cf6b3e63b669931', '2019-10-21 08:58:24', '2022-01-05 11:02:19', '', '0:0:0:0:0:0:0:1', '', '', '', '', '', 'yaml', ''); -INSERT INTO `config_info` VALUES (13, 'pigx-bi-platform-dev.yml', 'DEFAULT_GROUP', 'spring:\n # 安全配置\n security:\n user:\n name: ENC(rZHA4LW5hHmhLAAzJoFNag==) # pigx\n password: ENC(bjeyh+Aeii3kHXkoo00ZUw==) # pigx\n \n# ureport 报表相关设置\nureport:\n debug: false\n disableFileProvider: true\n disableHttpSessionReportCache: true\n\n# oss 保存报表设计文件\noss:\n bucket-name: lengleng\n access-key: lengleng\n secret-key: lengleng\n endpoint: http://minio.pig4cloud.com', '77e5829593e85d395aafdd88e662c036', '2020-10-15 18:18:13', '2021-02-03 19:12:08', NULL, '172.16.1.92', '', '', '', '', '', 'yaml', ''); INSERT INTO `config_info` VALUES (14, 'pigx-xxl-job-admin-dev.yml', 'DEFAULT_GROUP', '# xxl\nxxl:\n job:\n i18n: zh_CN\n logretentiondays: 30\n triggerpool:\n fast.max: 200\n slow.max: 200\n\n# mybatis\nmybatis:\n mapper-locations: classpath:/mybatis-mapper/*Mapper.xml\n\n# spring\nspring:\n datasource:\n driver-class-name: org.h2.Driver \n url: jdbc:h2:file:~/pigxx_job;MODE=MYSQL;DB_CLOSE_DELAY=-1;AUTO_SERVER=TRUE;\n sql:\n init:\n mode: always\n schema-locations: classpath:db/schema-h2.sql\n data-locations: classpath:db/data-h2.sql\n mvc:\n static-path-pattern: /static/**\n freemarker:\n suffix: .ftl\n request-context-attribute: request\n settings:\n number_format: 0.##########\n mail:\n host: smtp.mxhichina.com\n port: 465\n from: xxxx@gitee.wang\n username: xxxx@gitee.wang\n password: xxxx\n properties:\n mail:\n smtp:\n auth: true\n ssl.enable: true\n starttls.enable: false\n required: false\n# spring boot admin 配置\n\nmanagement:\n health:\n mail:\n enabled: false\n endpoints:\n web:\n exposure:\n include: \'*\'\n endpoint:\n health:\n show-details: ALWAYS', '2a08e1ac7a4f2f079550c394d097b520', '2021-07-21 20:45:02', '2021-12-27 21:53:18', 'nacos', '127.0.0.1', '', '', '', '', '', 'yaml', ''); INSERT INTO `config_info` VALUES (15, 'pigx-report-platform-dev.yml', 'DEFAULT_GROUP', 'spring:\n messages:\n basename: i18n/messages\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_report}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true\nmybatis-plus:\n configuration:\n call-setters-on-nulls: true\n mapperLocations:\n - classpath*:/mapper/**/*.xml\n - classpath*:/modeler-mybatis-mappings/**/*.xml\n\n \n# 本应用自定义参数\ncustomer:\n file:\n #上传对应本地全路径\n dist-path: /Users/lengleng/Downloads/file/\n white-list: .png|.jpg|.gif|.icon|.pdf|.xlsx|.xls|.csv|.mp4|.avi\n excelSuffix: .xlsx|.xls|.csv\n downloadPath: http://127.0.0.1:9095/file/download\n', 'da03b3efe2b4ac44745cadc2a23328ab', '2021-11-05 09:13:54', '2022-02-18 14:39:12', 'nacos', '127.0.0.1', '', '', '大屏设计模块配置文件', '', '', 'yaml', ''); +INSERT INTO `config_info` VALUES (16, 'pigx-jimu-platform-dev.yml', 'DEFAULT_GROUP', 'spring:\n #配置静态资源\n mvc:\n static-path-pattern: /**\n resource:\n static-locations: classpath:/static/\n #配置数据库\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_bi}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true\n \n#JimuReport[minidao配置]\nminidao :\n base-package: org.jeecg.modules.jmreport.desreport.dao*\n db-type: mysql\n#JimuReport[上传配置]\njeecg :\n jmreport:\n customPrePath: /jimu\n # 自动保存\n autoSave: true\n # 单位毫秒 默认5*60*1000 \n interval: 10000\n # local|minio|alioss\n uploadType: local\n # local\n path :\n #文件路径A\n upload: ~/jimu/data\n # alioss\n oss:\n endpoint: oss-cn-beijing.aliyuncs.com\n accessKey: ??\n secretKey: ??\n staticDomain: ??\n bucketName: ??\n # minio\n minio:\n minio_url: http://minio.jeecg.com\n minio_name: ??\n minio_pass: ??\n bucketName: ??\n#输出sql日志\nlogging:\n level:\n org.jeecg.modules.jmreport : debug', '423f74383b37d44b24832570ffd54f3c', '2022-04-15 22:45:41', '2022-04-15 22:45:41', NULL, '127.0.0.1', '', '', NULL, NULL, NULL, 'yaml', NULL); COMMIT; -- ---------------------------- diff --git a/db/999pigxx_bi.sql b/db/999pigxx_bi.sql new file mode 100644 index 000000000..7f0d86ba8 --- /dev/null +++ b/db/999pigxx_bi.sql @@ -0,0 +1,1609 @@ +USE pigxx_bi; + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for jimu_dict +-- ---------------------------- +DROP TABLE IF EXISTS `jimu_dict`; +CREATE TABLE `jimu_dict` ( + `id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `dict_name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字典名称', + `dict_code` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字典编码', + `description` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述', + `del_flag` int(1) NULL DEFAULT NULL COMMENT '删除状态', + `create_by` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建人', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '更新人', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `type` int(1) UNSIGNED ZEROFILL NULL DEFAULT 0 COMMENT '字典类型0为string,1为number', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uk_sd_dict_code`(`dict_code`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of jimu_dict +-- ---------------------------- +INSERT INTO `jimu_dict` VALUES ('0b1dac3e87ed7229ae19a586a8b8c8f8', '物资类型', 'wz_cc_type', NULL, 0, 'admin', '2019-04-26 18:25:48', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('0b5d19e1fce4b2e6647e6b4a17760c14', '通告类型', 'msg_category', '消息类型1:通知公告2:系统消息', 0, 'admin', '2019-04-22 18:01:35', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1166528843122561025', '测试字典员工类型', 'ceshi_code', '', 0, 'admin', '2019-08-28 09:52:04', 'admin', '2021-01-08 14:33:43', 0); +INSERT INTO `jimu_dict` VALUES ('1174509082208395266', '职务职级', 'position_rank', '职务表职级字典', 0, 'admin', '2019-09-19 10:22:41', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1174511106530525185', '机构类型', 'org_category', '机构类型 1公司,2部门 3岗位', 0, 'admin', '2019-09-19 10:30:43', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1178295274528845826', '表单权限策略', 'form_perms_type', '', 0, 'admin', '2019-09-29 21:07:39', 'admin', '2019-09-29 21:08:26', NULL); +INSERT INTO `jimu_dict` VALUES ('1199517671259906049', '紧急程度', 'urgent_level', '日程计划紧急程度', 0, 'admin', '2019-11-27 10:37:53', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1199518099888414722', '日程计划类型', 'eoa_plan_type', '', 0, 'admin', '2019-11-27 10:39:36', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1199525215290306561', '日程计划状态', 'eoa_plan_status', '', 0, 'admin', '2019-11-27 11:07:52', 'admin', '2019-11-27 11:10:11', 0); +INSERT INTO `jimu_dict` VALUES ('1204580702536957953', '打卡类型', 'sign_type', '', 0, 'admin', '2019-12-11 09:56:34', 'admin', '2020-02-13 14:21:36', 0); +INSERT INTO `jimu_dict` VALUES ('1204581134206337025', '打卡状态', 'sign_status', '', 0, 'admin', '2019-12-11 09:58:17', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1209733563293962241', '数据库类型', 'database_type', '', 0, 'admin', '2019-12-25 15:12:12', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1232913193820581889', 'Online表单业务分类', 'ol_form_biz_type', '', 0, 'admin', '2020-02-27 14:19:46', 'admin', '2020-02-27 14:20:23', 0); +INSERT INTO `jimu_dict` VALUES ('1242281790421389314', '会议类型', 'mettingType', '', 0, 'admin', '2020-03-24 10:47:13', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1242298510024429569', '提醒方式', 'remindMode', '', 0, 'admin', '2020-03-24 11:53:40', 'admin', '2020-03-24 12:03:22', 0); +INSERT INTO `jimu_dict` VALUES ('1244538302904672258', '提醒时间', 'remindTime', '', 0, 'admin', '2020-03-30 16:13:48', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1244538772909989889', '重复提醒', 'reminders', '', 0, 'admin', '2020-03-30 16:15:40', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1244941599661178882', '表单设计器路由类型', 'desform_route_type', '表单设计器下一步路由跳转类型', 0, 'admin', '2020-03-31 18:56:22', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1250687930947620866', '定时任务状态', 'quartz_status', '', 0, 'admin', '2020-04-16 15:30:14', '', NULL, NULL); +INSERT INTO `jimu_dict` VALUES ('1252881342601908225', '栏目类型', 'cms_menu_type', '', 0, 'admin', '2020-04-22 16:46:04', '', NULL, NULL); +INSERT INTO `jimu_dict` VALUES ('1253673013610672130', '会议室规模', 'meeting_scale', '', 0, 'admin', '2020-04-24 21:11:53', '', NULL, NULL); +INSERT INTO `jimu_dict` VALUES ('1272739651112034306', '缓急', 'urgency', '', 0, 'admin', '2020-06-16 11:55:54', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1272740254731100161', '密级', 'secret_level', '', 0, 'admin', '2020-06-16 11:58:18', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1280401766745718786', '租户状态', 'tenant_status', '租户状态', 0, 'admin', '2020-07-07 15:22:25', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1336551227544694785', '999', '999', '', 1, 'admin', '2020-12-09 14:00:19', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('1338811917237489665', '报表测试职务', 'zhiwu', '积木报表演示', 0, 'admin', '2020-12-15 19:43:30', 'admin', '2021-01-13 14:03:13', 0); +INSERT INTO `jimu_dict` VALUES ('20863a840c7622c3eab0ee69e55a8c7c', '常用审批语', 'approval_remarks', '常用审批语', 0, 'admin', '2019-03-15 11:03:26', 'admin', '2019-06-10 19:38:31', 0); +INSERT INTO `jimu_dict` VALUES ('236e8a4baff0db8c62c00dd95632834f', '同步工作流引擎', 'activiti_sync', '同步工作流引擎', 0, 'admin', '2019-05-15 15:27:33', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('2e02df51611a4b9632828ab7e5338f00', '权限策略', 'perms_type', '权限策略', 0, 'admin', '2019-04-26 18:26:55', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('2f0320997ade5dd147c90130f7218c3e', '推送类别', 'msg_type', '', 0, 'admin', '2019-03-17 21:21:32', 'admin', '2019-03-26 19:57:45', 0); +INSERT INTO `jimu_dict` VALUES ('3486f32803bb953e7155dab3513dc68b', '删除状态', 'del_flag', '', 0, 'admin', '2019-10-18 21:46:26', 'admin', '2019-05-31 11:32:41', 0); +INSERT INTO `jimu_dict` VALUES ('36d57175542a3ea85073923e8fccc21c', '尺码类型', 'air_china_size', NULL, 0, 'admin', '2019-04-23 23:02:44', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('3d9a351be3436fbefb1307d4cfb49bf2', '性别', 'sex', NULL, 0, NULL, '2019-01-04 14:56:32', 'admin', '2019-03-30 11:28:27', 1); +INSERT INTO `jimu_dict` VALUES ('4274efc2292239b6f000b153f50823ff', '全局权限策略', 'global_perms_type', '全局权限策略', 0, 'admin', '2019-05-10 17:54:05', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('49a0f7247f9c2a7df4e5733b790a4c9f', '供应商', 'air_china_ supplier', NULL, 0, 'admin', '2019-04-24 16:49:25', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('4c03fca6bf1f0299c381213961566349', 'Online图表展示模板', 'online_graph_display_template', 'Online图表展示模板', 0, 'admin', '2019-04-12 17:28:50', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('4c753b5293304e7a445fd2741b46529d', '字典状态', 'dict_item_status', NULL, 0, 'admin', '2019-06-18 23:18:42', 'admin', '2019-03-30 19:33:52', 1); +INSERT INTO `jimu_dict` VALUES ('4d7fec1a7799a436d26d02325eff295e', '优先级', 'priority', '优先级', 0, 'admin', '2019-03-16 17:03:34', 'admin', '2019-04-16 17:39:23', 0); +INSERT INTO `jimu_dict` VALUES ('4e4602b3e3686f0911384e188dc7efb4', '条件规则', 'rule_conditions', '', 0, 'admin', '2019-04-01 10:15:03', 'admin', '2019-04-01 10:30:47', 0); +INSERT INTO `jimu_dict` VALUES ('4f69be5f507accea8d5df5f11346181a', '发送消息类型', 'msgType', NULL, 0, 'admin', '2019-04-11 14:27:09', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('68168534ff5065a152bfab275c2136f8', '有效无效状态', 'valid_status', '有效无效状态', 0, 'admin', '2020-09-26 19:21:14', 'admin', '2019-06-07 00:30:10', 0); +INSERT INTO `jimu_dict` VALUES ('72cce0989df68887546746d8f09811aa', 'Online表单类型', 'cgform_table_type', '', 0, 'admin', '2019-01-27 10:13:02', 'admin', '2019-03-30 11:37:36', 0); +INSERT INTO `jimu_dict` VALUES ('76c1d6755018a918c9eeda575dbf3f98', '计量单位', 'air_china_unit', NULL, 0, 'admin', '2017-12-23 23:00:02', 'admin', '2019-04-23 23:13:52', 0); +INSERT INTO `jimu_dict` VALUES ('78bda155fe380b1b3f175f1e88c284c6', '流程状态', 'bpm_status', '流程状态', 0, 'admin', '2019-05-09 16:31:52', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('83bfb33147013cc81640d5fd9eda030c', '日志类型', 'log_type', NULL, 0, 'admin', '2019-03-18 23:22:19', NULL, NULL, 1); +INSERT INTO `jimu_dict` VALUES ('880a895c98afeca9d9ac39f29e67c13e', '操作类型', 'operate_type', '操作类型', 0, 'admin', '2019-07-22 10:54:29', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('8dfe32e2d29ea9430a988b3b558bf233', '发布状态', 'send_status', '发布状态', 0, 'admin', '2019-04-16 17:40:42', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('a7adbcd86c37f7dbc9b66945c82ef9e6', '1是0否', 'yn', '', 1, 'admin', '2019-05-22 19:29:29', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('a9d9942bd0eccb6e89de92d130ec4c4a', '消息发送状态', 'msgSendStatus', NULL, 0, 'admin', '2019-04-12 18:18:17', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('ac2f7c0c5c5775fcea7e2387bcb22f01', '菜单类型', 'menu_type', NULL, 0, 'admin', '2019-12-18 23:24:32', 'admin', '2019-04-01 15:27:06', 1); +INSERT INTO `jimu_dict` VALUES ('bd1b8bc28e65d6feefefb6f3c79f42fd', 'Online图表数据类型', 'online_graph_data_type', 'Online图表数据类型', 0, 'admin', '2019-04-12 17:24:24', 'admin', '2019-04-12 17:24:57', 0); +INSERT INTO `jimu_dict` VALUES ('c36169beb12de8a71c8683ee7c28a503', '部门状态', 'depart_status', NULL, 0, 'admin', '2019-03-18 21:59:51', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('c5a14c75172783d72cbee6ee7f5df5d1', 'Online图表类型', 'online_graph_type', 'Online图表类型', 0, 'admin', '2019-04-12 17:04:06', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('c72e92c2c13cdbc07b455e6abcc60d47', '启动状态', 'air_china_valid', NULL, 0, 'admin', '2019-04-23 23:05:29', NULL, NULL, 0); +INSERT INTO `jimu_dict` VALUES ('d6e1152968b02d69ff358c75b48a6ee1', '流程类型', 'bpm_process_type', NULL, 0, 'admin', '2019-02-22 19:26:54', 'admin', '2019-03-30 18:14:44', 0); +INSERT INTO `jimu_dict` VALUES ('fc6cd58fde2e8481db10d3a1e68ce70c', '用户状态', 'user_status', NULL, 0, 'admin', '2019-03-18 21:57:25', 'admin', '2019-03-18 23:11:58', 1); + +-- ---------------------------- +-- Table structure for jimu_dict_item +-- ---------------------------- +DROP TABLE IF EXISTS `jimu_dict_item`; +CREATE TABLE `jimu_dict_item` ( + `id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `dict_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字典id', + `item_text` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字典项文本', + `item_value` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字典项值', + `description` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述', + `sort_order` int(10) NULL DEFAULT NULL COMMENT '排序', + `status` int(11) NULL DEFAULT NULL COMMENT '状态(1启用 0不启用)', + `create_by` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + `create_time` datetime NULL DEFAULT NULL, + `update_by` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + `update_time` datetime NULL DEFAULT NULL, + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_sdi_role_dict_id`(`dict_id`) USING BTREE, + INDEX `idx_sdi_role_sort_order`(`sort_order`) USING BTREE, + INDEX `idx_sdi_status`(`status`) USING BTREE, + INDEX `idx_sdi_dict_val`(`dict_id`, `item_value`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of jimu_dict_item +-- ---------------------------- +INSERT INTO `jimu_dict_item` VALUES ('0072d115e07c875d76c9b022e2179128', '4d7fec1a7799a436d26d02325eff295e', '低', 'L', '低', 3, 1, 'admin', '2019-04-16 17:04:59', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('00cd5762c968332e2bf8d1fdae872f26', '76c1d6755018a918c9eeda575dbf3f98', '条', '3', NULL, 3, 1, 'admin', '2019-04-23 23:00:42', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('05a2e732ce7b00aa52141ecc3e330b4e', '3486f32803bb953e7155dab3513dc68b', '已删除', '1', NULL, NULL, 1, 'admin', '2025-10-18 21:46:56', 'admin', '2019-03-28 22:23:20'); +INSERT INTO `jimu_dict_item` VALUES ('0737b49b097033b35e1882f970d43263', '36d57175542a3ea85073923e8fccc21c', '量体类', '1', NULL, 1, 1, 'admin', '2019-04-23 23:03:02', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('08ec6c5c986766cc0f398bf88b2c7fd5', '20863a840c7622c3eab0ee69e55a8c7c', '呈领导阅示', '呈领导阅示', '呈领导阅示', 7, 1, 'admin', '2019-05-15 11:07:59', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('096c2e758d823def3855f6376bc736fb', 'bd1b8bc28e65d6feefefb6f3c79f42fd', 'SQL', 'sql', NULL, 1, 1, 'admin', '2019-04-12 17:26:26', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('0c9532916f5cd722017b46bc4d953e41', '2f0320997ade5dd147c90130f7218c3e', '指定用户', 'USER', NULL, NULL, 1, 'admin', '2019-03-17 21:22:19', 'admin', '2019-03-17 21:22:28'); +INSERT INTO `jimu_dict_item` VALUES ('0ca4beba9efc4f9dd54af0911a946d5c', '72cce0989df68887546746d8f09811aa', '附表', '3', NULL, 3, 1, 'admin', '2019-03-27 10:13:43', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1030a2652608f5eac3b49d70458b8532', '2e02df51611a4b9632828ab7e5338f00', '禁用', '2', '禁用', 2, 1, 'admin', '2021-03-26 18:27:28', 'admin', '2019-04-26 18:39:11'); +INSERT INTO `jimu_dict_item` VALUES ('10e3b1b78da8b40161b7b89cefb2f31b', '0b1dac3e87ed7229ae19a586a8b8c8f8', '衣服', 'yifu', NULL, 1, 1, 'admin', '2019-04-26 18:26:04', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1166528884218351617', '1166528843122561025', '普通员工', '1', '', 1, 1, 'admin', '2019-08-28 09:52:14', 'admin', '2021-01-08 14:33:52'); +INSERT INTO `jimu_dict_item` VALUES ('1166528900752297986', '1166528843122561025', '领导', '2', '', 1, 1, 'admin', '2019-08-28 09:52:18', 'admin', '2021-01-08 14:33:57'); +INSERT INTO `jimu_dict_item` VALUES ('1174509082208395266', '1174511106530525185', '岗位', '3', '岗位', 1, 1, 'admin', '2019-09-19 10:31:16', '', NULL); +INSERT INTO `jimu_dict_item` VALUES ('1174509601047994369', '1174509082208395266', '员级', '1', '', 1, 1, 'admin', '2019-09-19 10:24:45', 'admin', '2019-09-23 11:46:39'); +INSERT INTO `jimu_dict_item` VALUES ('1174509667297026049', '1174509082208395266', '助级', '2', '', 2, 1, 'admin', '2019-09-19 10:25:01', 'admin', '2019-09-23 11:46:47'); +INSERT INTO `jimu_dict_item` VALUES ('1174509713568587777', '1174509082208395266', '中级', '3', '', 3, 1, 'admin', '2019-09-19 10:25:12', 'admin', '2019-09-23 11:46:56'); +INSERT INTO `jimu_dict_item` VALUES ('1174509788361416705', '1174509082208395266', '副高级', '4', '', 4, 1, 'admin', '2019-09-19 10:25:30', 'admin', '2019-09-23 11:47:06'); +INSERT INTO `jimu_dict_item` VALUES ('1174509835803189250', '1174509082208395266', '正高级', '5', '', 5, 1, 'admin', '2019-09-19 10:25:41', 'admin', '2019-09-23 11:47:12'); +INSERT INTO `jimu_dict_item` VALUES ('1174511197735665665', '1174511106530525185', '公司', '1', '公司', 1, 1, 'admin', '2019-09-19 10:31:05', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1174511244036587521', '1174511106530525185', '部门', '2', '部门', 1, 1, 'admin', '2019-09-19 10:31:16', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1178295553450061826', '1178295274528845826', '可编辑(未授权禁用)', '2', '', 2, 1, 'admin', '2019-09-29 21:08:46', 'admin', '2019-09-29 21:09:18'); +INSERT INTO `jimu_dict_item` VALUES ('1178295639554928641', '1178295274528845826', '可见(未授权不可见)', '1', '', 1, 1, 'admin', '2019-09-29 21:09:06', 'admin', '2019-09-29 21:09:24'); +INSERT INTO `jimu_dict_item` VALUES ('1199517884758368257', '1199517671259906049', '一般', '1', '', 1, 1, 'admin', '2019-11-27 10:38:44', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1199517914017832962', '1199517671259906049', '重要', '2', '', 1, 1, 'admin', '2019-11-27 10:38:51', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1199517941339529217', '1199517671259906049', '紧急', '3', '', 1, 1, 'admin', '2019-11-27 10:38:58', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1199518186144276482', '1199518099888414722', '日常记录', '1', '', 1, 1, 'admin', '2019-11-27 10:39:56', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1199518214858481666', '1199518099888414722', '本周工作', '2', '', 1, 1, 'admin', '2019-11-27 10:40:03', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1199518235943247874', '1199518099888414722', '下周计划', '3', '', 1, 1, 'admin', '2019-11-27 10:40:08', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1199525468672405505', '1199525215290306561', '未开始', '0', '', 1, 1, 'admin', '2019-11-27 11:08:52', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1199525490575060993', '1199525215290306561', '进行中', '2', '', 3, 1, 'admin', '2019-11-27 11:08:58', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1199525506429530114', '1199525215290306561', '已完成', '3', '', 4, 1, 'admin', '2019-11-27 11:09:02', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1199607547704647681', '4f69be5f507accea8d5df5f11346181a', '系统', '4', '', 1, 1, 'admin', '2019-11-27 16:35:02', 'admin', '2019-11-27 19:37:46'); +INSERT INTO `jimu_dict_item` VALUES ('1203571948706095105', '1199525215290306561', '已提醒', '1', '', 2, 1, 'admin', '2019-12-08 15:08:09', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1204581455016067074', '1204580702536957953', '上班打卡', '1', '', 1, 1, 'admin', '2019-12-11 09:59:34', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1204581521328013314', '1204580702536957953', '下班打卡', '2', '', 1, 1, 'admin', '2019-12-11 09:59:49', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1204581542945456129', '1204580702536957953', '外出打卡', '3', '', 1, 1, 'admin', '2019-12-11 09:59:55', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1204581564143468546', '1204580702536957953', '请假', '4', '', 1, 1, 'admin', '2019-12-11 10:00:00', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1204581583089139713', '1204580702536957953', '出差', '5', '', 1, 1, 'admin', '2019-12-11 10:00:04', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1204581803613061122', '1204581134206337025', '缺卡', '0', '', 1, 1, 'admin', '2019-12-11 10:00:57', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1204581830603407362', '1204581134206337025', '正常', '1', '', 1, 1, 'admin', '2019-12-11 10:01:03', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1204581850283081729', '1204581134206337025', '迟到', '2', '', 1, 1, 'admin', '2019-12-11 10:01:08', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1204581868406669314', '1204581134206337025', '旷工', '3', '', 1, 1, 'admin', '2019-12-11 10:01:12', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1204581886026940417', '1204581134206337025', '早退', '4', '', 1, 1, 'admin', '2019-12-11 10:01:16', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1209733775114702850', '1209733563293962241', 'MySQL5.5', '1', '', 1, 1, 'admin', '2019-12-25 15:13:02', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1209733839933476865', '1209733563293962241', 'Oracle', '2', '', 3, 1, 'admin', '2019-12-25 15:13:18', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1209733903020003330', '1209733563293962241', 'SQLServer', '3', '', 4, 1, 'admin', '2019-12-25 15:13:33', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1232913424813486081', '1232913193820581889', '官方示例', 'demo', '', 1, 1, 'admin', '2020-02-27 14:20:42', 'admin', '2020-02-27 14:21:37'); +INSERT INTO `jimu_dict_item` VALUES ('1232913493717512194', '1232913193820581889', '流程表单', 'bpm', '', 2, 1, 'admin', '2020-02-27 14:20:58', 'admin', '2020-02-27 14:22:20'); +INSERT INTO `jimu_dict_item` VALUES ('1232913605382467585', '1232913193820581889', '测试表单', 'temp', '', 4, 1, 'admin', '2020-02-27 14:21:25', 'admin', '2020-02-27 14:22:16'); +INSERT INTO `jimu_dict_item` VALUES ('1232914232372195330', '1232913193820581889', '导入表单', 'bdfl_include', '', 5, 1, 'admin', '2020-02-27 14:23:54', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1233279228474138625', '4e4602b3e3686f0911384e188dc7efb4', '左模糊', 'LEFT_LIKE', '', 7, 1, 'admin', '2020-02-28 14:34:16', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1233279337333104641', '4e4602b3e3686f0911384e188dc7efb4', '右模糊', 'RIGHT_LIKE', '', 7, 1, 'admin', '2020-02-28 14:34:42', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1242281959082741761', '1242281790421389314', '部门会议', 'depart', '', 1, 1, 'admin', '2020-03-24 10:47:54', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1242282018893516802', '1242281790421389314', '临时会议', 'temp', '', 1, 1, 'admin', '2020-03-24 10:48:08', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1242282141274918913', '1242281790421389314', '公司会议', 'company', '', 1, 1, 'admin', '2020-03-24 10:48:37', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1242282318563954690', '1242281790421389314', '培训会议', 'train', '', 1, 1, 'admin', '2020-03-24 10:49:19', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1242282375325470721', '1242281790421389314', '普通会议', 'common', '', 1, 1, 'admin', '2020-03-24 10:49:33', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1242300779390357505', '1242298510024429569', '短信提醒', '2', '', 2, 1, 'admin', '2020-03-24 12:02:41', 'admin', '2020-03-30 18:21:33'); +INSERT INTO `jimu_dict_item` VALUES ('1242300814383435777', '1242298510024429569', '邮件提醒', '1', '', 1, 1, 'admin', '2020-03-24 12:02:49', 'admin', '2020-03-30 18:21:26'); +INSERT INTO `jimu_dict_item` VALUES ('1242300887343353857', '1242298510024429569', '系统消息', '4', '', 4, 1, 'admin', '2020-03-24 12:03:07', 'admin', '2020-03-30 18:21:43'); +INSERT INTO `jimu_dict_item` VALUES ('1244538412480864258', '1244538302904672258', '不提醒', '0', '', 1, 1, 'admin', '2020-03-30 16:14:14', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538453169807361', '1244538302904672258', '开始时', '1', '', 1, 1, 'admin', '2020-03-30 16:14:24', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538498132746241', '1244538302904672258', '提前5分钟', '2', '', 2, 1, 'admin', '2020-03-30 16:14:35', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538537420791810', '1244538302904672258', '提前10分钟', '3', '', 3, 1, 'admin', '2020-03-30 16:14:44', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538569926647810', '1244538302904672258', '提前15分钟', '4', '', 4, 1, 'admin', '2020-03-30 16:14:52', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538620744835073', '1244538302904672258', '提前30分钟', '5', '', 5, 1, 'admin', '2020-03-30 16:15:04', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538674016690178', '1244538302904672258', '提前1小时', '6', '', 6, 1, 'admin', '2020-03-30 16:15:16', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538712323268610', '1244538302904672258', '提前2小时', '7', '', 7, 1, 'admin', '2020-03-30 16:15:26', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538832364249090', '1244538772909989889', '不重复', '0', '', 1, 1, 'admin', '2020-03-30 16:15:54', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538882335186946', '1244538772909989889', '每天', '1', '', 1, 1, 'admin', '2020-03-30 16:16:06', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538920792760321', '1244538772909989889', '每周', '2', '', 2, 1, 'admin', '2020-03-30 16:16:15', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244538964811980802', '1244538772909989889', '每月(当日)', '3', '', 3, 1, 'admin', '2020-03-30 16:16:26', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244539005064716289', '1244538772909989889', '每年(当日)', '4', '', 4, 1, 'admin', '2020-03-30 16:16:35', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1244941726052335617', '1244941599661178882', '跳转到表单', '1', '', 1, 1, 'admin', '2020-03-31 18:56:52', 'admin', '2020-03-31 21:16:05'); +INSERT INTO `jimu_dict_item` VALUES ('1244941755555069953', '1244941599661178882', '跳转到菜单', '2', '', 2, 1, 'admin', '2020-03-31 18:56:59', 'admin', '2020-03-31 21:16:09'); +INSERT INTO `jimu_dict_item` VALUES ('1244941784743231489', '1244941599661178882', '跳转到外部', '3', '', 3, 1, 'admin', '2020-03-31 18:57:06', 'admin', '2020-03-31 21:16:14'); +INSERT INTO `jimu_dict_item` VALUES ('1250688147579228161', '1250687930947620866', '正常', '0', '', 1, 1, 'admin', '2020-04-16 15:31:05', '', NULL); +INSERT INTO `jimu_dict_item` VALUES ('1250688201064992770', '1250687930947620866', '停止', '-1', '', 1, 1, 'admin', '2020-04-16 15:31:18', '', NULL); +INSERT INTO `jimu_dict_item` VALUES ('1252882203973537794', '1252881342601908225', '列表', '1', '', 1, 1, 'admin', '2020-04-22 16:49:29', '', NULL); +INSERT INTO `jimu_dict_item` VALUES ('1252882248991002626', '1252881342601908225', '链接', '2', '', 1, 1, 'admin', '2020-04-22 16:49:40', '', NULL); +INSERT INTO `jimu_dict_item` VALUES ('1253673087988264962', '1253673013610672130', '小型', 'S', '', 1, 1, 'admin', '2020-04-24 21:12:10', '', NULL); +INSERT INTO `jimu_dict_item` VALUES ('1253673146364588034', '1253673013610672130', '中型', 'M', '', 1, 1, 'admin', '2020-04-24 21:12:24', '', NULL); +INSERT INTO `jimu_dict_item` VALUES ('1253673184885075970', '1253673013610672130', '大型', 'L', '', 1, 1, 'admin', '2020-04-24 21:12:34', '', NULL); +INSERT INTO `jimu_dict_item` VALUES ('1272739846449160193', '1272739651112034306', '一般', '0', '', 1, 1, 'admin', '2020-06-16 11:56:40', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1272739980616556545', '1272739651112034306', '平急', '1', '', 1, 1, 'admin', '2020-06-16 11:57:12', 'admin', '2020-10-28 17:50:22'); +INSERT INTO `jimu_dict_item` VALUES ('1272740017782284289', '1272739651112034306', '加急', '2', '', 1, 1, 'admin', '2020-06-16 11:57:21', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1272740063856713730', '1272739651112034306', '特急', '3', '', 1, 1, 'admin', '2020-06-16 11:57:32', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1272740134505570306', '1272739651112034306', '特提', '4', '', 1, 1, 'admin', '2020-06-16 11:57:49', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1272740342673072129', '1272740254731100161', '一般', '0', '', 1, 1, 'admin', '2020-06-16 11:58:39', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1272740397966581762', '1272740254731100161', '秘密', '1', '', 1, 1, 'admin', '2020-06-16 11:58:52', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1272740445697761282', '1272740254731100161', '机密', '2', '', 1, 1, 'admin', '2020-06-16 11:59:03', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1272740494238441473', '1272740254731100161', '绝密', '3', '', 1, 1, 'admin', '2020-06-16 11:59:15', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1280401815068295170', '1280401766745718786', '正常', '1', '', 1, 1, 'admin', '2020-07-07 15:22:36', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1280401847607705602', '1280401766745718786', '冻结', '0', '', 1, 1, 'admin', '2020-07-07 15:22:44', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1280417387279060994', '1199525215290306561', '已接受', '4', '', 4, 1, 'admin', '2020-07-07 16:24:28', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1280417420456005634', '1199525215290306561', '已取消', '5', '5', 5, 1, 'admin', '2020-07-07 16:24:36', 'admin', '2020-07-07 16:24:45'); +INSERT INTO `jimu_dict_item` VALUES ('1305827309355302914', 'bd1b8bc28e65d6feefefb6f3c79f42fd', 'API', 'api', '', 3, 1, 'admin', '2020-09-15 19:14:26', 'admin', '2020-09-15 19:14:41'); +INSERT INTO `jimu_dict_item` VALUES ('1334440962954936321', '1209733563293962241', 'MYSQL5.7', '4', NULL, 1, 1, 'admin', '2020-12-03 18:16:02', 'admin', '2020-12-03 18:16:02'); +INSERT INTO `jimu_dict_item` VALUES ('1338812279746990082', '1338811917237489665', '研发经理', '1', '', 1, 1, 'admin', '2020-12-15 19:44:56', 'admin', '2021-01-13 14:00:13'); +INSERT INTO `jimu_dict_item` VALUES ('1338812321702612993', '1338811917237489665', '研发专员', '2', '', 1, 1, 'admin', '2020-12-15 19:45:06', 'admin', '2021-01-13 14:00:16'); +INSERT INTO `jimu_dict_item` VALUES ('1338812381655994370', '1338811917237489665', '财务经理', '3', '', 1, 1, 'admin', '2020-12-15 19:45:20', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1338812417886392322', '1338811917237489665', '财务专员', '4', '', 1, 1, 'admin', '2020-12-15 19:45:29', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1338812461297438721', '1338811917237489665', '客服经理', '5', '', 1, 1, 'admin', '2020-12-15 19:45:39', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1338812495665565697', '1338811917237489665', '客服专员', '6', '', 1, 1, 'admin', '2020-12-15 19:45:48', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('147c48ff4b51545032a9119d13f3222a', 'd6e1152968b02d69ff358c75b48a6ee1', '测试流程', 'test', NULL, 1, 1, 'admin', '2019-03-22 19:27:05', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('1543fe7e5e26fb97cdafe4981bedc0c8', '4c03fca6bf1f0299c381213961566349', '单排布局', 'single', NULL, 2, 1, 'admin', '2022-07-12 17:43:39', 'admin', '2019-04-12 17:43:57'); +INSERT INTO `jimu_dict_item` VALUES ('1db531bcff19649fa82a644c8a939dc4', '4c03fca6bf1f0299c381213961566349', '组合布局', 'combination', '', 4, 1, 'admin', '2019-05-11 16:07:08', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('222705e11ef0264d4214affff1fb4ff9', '4f69be5f507accea8d5df5f11346181a', '短信', '1', '', 1, 1, 'admin', '2023-02-28 10:50:36', 'admin', '2019-04-28 10:58:11'); +INSERT INTO `jimu_dict_item` VALUES ('23a5bb76004ed0e39414e928c4cde155', '4e4602b3e3686f0911384e188dc7efb4', '不等于', '!=', '不等于', 3, 1, 'admin', '2019-04-01 16:46:15', 'admin', '2019-04-01 17:48:40'); +INSERT INTO `jimu_dict_item` VALUES ('25847e9cb661a7c711f9998452dc09e6', '4e4602b3e3686f0911384e188dc7efb4', '小于等于', '<=', '小于等于', 6, 1, 'admin', '2019-04-01 16:44:34', 'admin', '2019-04-01 17:49:10'); +INSERT INTO `jimu_dict_item` VALUES ('2d51376643f220afdeb6d216a8ac2c01', '68168534ff5065a152bfab275c2136f8', '有效', '1', '有效', 1, 1, 'admin', '2020-10-26 19:22:01', 'admin', '2019-10-04 17:46:58'); +INSERT INTO `jimu_dict_item` VALUES ('308c8aadf0c37ecdde188b97ca9833f5', '8dfe32e2d29ea9430a988b3b558bf233', '已发布', '1', '已发布', 2, 1, 'admin', '2019-04-16 17:41:24', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('333e6b2196e01ef9a5f76d74e86a6e33', '8dfe32e2d29ea9430a988b3b558bf233', '未发布', '0', '未发布', 1, 1, 'admin', '2019-04-16 17:41:12', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('337ea1e401bda7233f6258c284ce4f50', 'bd1b8bc28e65d6feefefb6f3c79f42fd', 'JSON', 'json', NULL, 1, 1, 'admin', '2019-04-12 17:26:33', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('33bc9d9f753cf7dc40e70461e50fdc54', 'a9d9942bd0eccb6e89de92d130ec4c4a', '发送失败', '2', NULL, 3, 1, 'admin', '2019-04-12 18:20:02', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('3c209b31417aba7cd5663355611d12c5', '36d57175542a3ea85073923e8fccc21c', '羊毛衫及毛背心类', '3', NULL, 3, 1, 'admin', '2019-04-23 23:03:27', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('3fbc03d6c994ae06d083751248037c0e', '78bda155fe380b1b3f175f1e88c284c6', '已完成', '3', '已完成', 3, 1, 'admin', '2019-05-09 16:33:25', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('41d7aaa40c9b61756ffb1f28da5ead8e', '0b5d19e1fce4b2e6647e6b4a17760c14', '通知公告', '1', NULL, 1, 1, 'admin', '2019-04-22 18:01:57', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('41fa1e9571505d643aea87aeb83d4d76', '4e4602b3e3686f0911384e188dc7efb4', '等于', '=', '等于', 4, 1, 'admin', '2019-04-01 16:45:24', 'admin', '2019-04-01 17:49:00'); +INSERT INTO `jimu_dict_item` VALUES ('4d7bcaf63f274e262c8e919470e47e5f', '20863a840c7622c3eab0ee69e55a8c7c', '同意', '同意', '同意', 1, 1, 'admin', '2019-05-15 11:04:31', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('4f05fb5376f4c61502c5105f52e4dd2b', '83bfb33147013cc81640d5fd9eda030c', '操作日志', '2', NULL, NULL, 1, 'admin', '2019-03-18 23:22:49', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('50223341bfb5ba30bf6319789d8d17fe', 'd6e1152968b02d69ff358c75b48a6ee1', '业务办理', 'business', NULL, 3, 1, 'admin', '2023-04-22 19:28:05', 'admin', '2019-03-22 23:24:39'); +INSERT INTO `jimu_dict_item` VALUES ('51222413e5906cdaf160bb5c86fb827c', 'a7adbcd86c37f7dbc9b66945c82ef9e6', '是', '1', '', 1, 1, 'admin', '2019-05-22 19:29:45', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('538fca35afe004972c5f3947c039e766', '2e02df51611a4b9632828ab7e5338f00', '显示', '1', '显示', 1, 1, 'admin', '2025-03-26 18:27:13', 'admin', '2019-04-26 18:39:07'); +INSERT INTO `jimu_dict_item` VALUES ('5584c21993bde231bbde2b966f2633ac', '4e4602b3e3686f0911384e188dc7efb4', '自定义SQL', 'USE_SQL_RULES', '自定义SQL表达式', 9, 1, 'admin', '2019-04-01 10:45:24', 'admin', '2019-04-01 17:49:27'); +INSERT INTO `jimu_dict_item` VALUES ('56b9f1c6364c775236e1aa16ff97afae', '20863a840c7622c3eab0ee69e55a8c7c', '不同意', '不同意', '不同意', 6, 1, 'admin', '2019-05-15 11:07:17', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('58b73b344305c99b9d8db0fc056bbc0a', '72cce0989df68887546746d8f09811aa', '主表', '2', NULL, 2, 1, 'admin', '2019-03-27 10:13:36', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('598380c65be4568b6ad507e563aba667', '76c1d6755018a918c9eeda575dbf3f98', '包', '8', NULL, 8, 1, 'admin', '2019-04-23 23:01:58', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('5b65a88f076b32e8e69d19bbaadb52d5', '2f0320997ade5dd147c90130f7218c3e', '全体用户', 'ALL', NULL, NULL, 1, 'admin', '2020-10-17 21:22:43', 'admin', '2019-03-28 22:17:09'); +INSERT INTO `jimu_dict_item` VALUES ('5d833f69296f691843ccdd0c91212b6b', '880a895c98afeca9d9ac39f29e67c13e', '修改', '3', '', 3, 1, 'admin', '2019-07-22 10:55:07', 'admin', '2019-07-22 10:55:41'); +INSERT INTO `jimu_dict_item` VALUES ('5d84a8634c8fdfe96275385075b105c9', '3d9a351be3436fbefb1307d4cfb49bf2', '女', '2', NULL, 2, 1, NULL, '2019-01-04 14:56:56', NULL, '2019-01-04 17:38:12'); +INSERT INTO `jimu_dict_item` VALUES ('66c952ae2c3701a993e7db58f3baf55e', '4e4602b3e3686f0911384e188dc7efb4', '大于', '>', '大于', 1, 1, 'admin', '2019-04-01 10:45:46', 'admin', '2019-04-01 17:48:29'); +INSERT INTO `jimu_dict_item` VALUES ('69cacf64e244100289ddd4aa9fa3b915', 'a9d9942bd0eccb6e89de92d130ec4c4a', '未发送', '0', NULL, 1, 1, 'admin', '2019-04-12 18:19:23', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('6a7a9e1403a7943aba69e54ebeff9762', '4f69be5f507accea8d5df5f11346181a', '邮件', '2', '', 2, 1, 'admin', '2031-02-28 10:50:44', 'admin', '2019-04-28 10:59:03'); +INSERT INTO `jimu_dict_item` VALUES ('6c682d78ddf1715baf79a1d52d2aa8c2', '72cce0989df68887546746d8f09811aa', '单表', '1', NULL, 1, 1, 'admin', '2019-03-27 10:13:29', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('6d404fd2d82311fbc87722cd302a28bc', '4e4602b3e3686f0911384e188dc7efb4', '模糊', 'LIKE', '模糊', 7, 1, 'admin', '2019-04-01 16:46:02', 'admin', '2019-04-01 17:49:20'); +INSERT INTO `jimu_dict_item` VALUES ('6d4e26e78e1a09699182e08516c49fc4', '4d7fec1a7799a436d26d02325eff295e', '高', 'H', '高', 1, 1, 'admin', '2019-04-16 17:04:24', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('6e65c7d1cb1a433b5cccc2e072f6c536', '76c1d6755018a918c9eeda575dbf3f98', '双', '4', NULL, 4, 1, 'admin', '2019-04-23 23:01:10', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('7050c1522702bac3be40e3b7d2e1dfd8', 'c5a14c75172783d72cbee6ee7f5df5d1', '柱状图', 'bar', NULL, 1, 1, 'admin', '2019-04-12 17:05:17', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('71b924faa93805c5c1579f12e001c809', 'd6e1152968b02d69ff358c75b48a6ee1', 'OA办公', 'oa', NULL, 2, 1, 'admin', '2021-03-22 19:27:17', 'admin', '2019-03-22 23:24:36'); +INSERT INTO `jimu_dict_item` VALUES ('75b260d7db45a39fc7f21badeabdb0ed', 'c36169beb12de8a71c8683ee7c28a503', '不启用', '0', NULL, NULL, 1, 'admin', '2019-03-18 23:29:41', 'admin', '2019-03-18 23:29:54'); +INSERT INTO `jimu_dict_item` VALUES ('7688469db4a3eba61e6e35578dc7c2e5', 'c36169beb12de8a71c8683ee7c28a503', '启用', '1', NULL, NULL, 1, 'admin', '2019-03-18 23:29:28', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('78ea6cadac457967a4b1c4eb7aaa418c', 'fc6cd58fde2e8481db10d3a1e68ce70c', '正常', '1', NULL, NULL, 1, 'admin', '2019-03-18 23:30:28', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('7ccf7b80c70ee002eceb3116854b75cb', 'ac2f7c0c5c5775fcea7e2387bcb22f01', '按钮权限', '2', NULL, NULL, 1, 'admin', '2019-03-18 23:25:40', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('81fb2bb0e838dc68b43f96cc309f8257', 'fc6cd58fde2e8481db10d3a1e68ce70c', '冻结', '2', NULL, NULL, 1, 'admin', '2019-03-18 23:30:37', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('83250269359855501ec4e9c0b7e21596', '4274efc2292239b6f000b153f50823ff', '可见/可访问(授权后可见/可访问)', '1', '', 1, 1, 'admin', '2023-06-10 17:54:51', 'admin', '2019-06-05 19:43:11'); +INSERT INTO `jimu_dict_item` VALUES ('84778d7e928bc843ad4756db1322301f', '4e4602b3e3686f0911384e188dc7efb4', '大于等于', '>=', '大于等于', 5, 1, 'admin', '2019-04-01 10:46:02', 'admin', '2019-04-01 17:49:05'); +INSERT INTO `jimu_dict_item` VALUES ('848d4da35ebd93782029c57b103e5b36', 'c5a14c75172783d72cbee6ee7f5df5d1', '饼图', 'pie', NULL, 3, 1, 'admin', '2019-04-12 17:05:49', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('84dfc178dd61b95a72900fcdd624c471', '78bda155fe380b1b3f175f1e88c284c6', '处理中', '2', '处理中', 2, 1, 'admin', '2019-05-09 16:33:01', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('86f19c7e0a73a0bae451021ac05b99dd', 'ac2f7c0c5c5775fcea7e2387bcb22f01', '子菜单', '1', NULL, NULL, 1, 'admin', '2019-03-18 23:25:27', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('8bccb963e1cd9e8d42482c54cc609ca2', '4f69be5f507accea8d5df5f11346181a', '微信', '3', NULL, 3, 1, 'admin', '2021-05-11 14:29:12', 'admin', '2019-04-11 14:29:31'); +INSERT INTO `jimu_dict_item` VALUES ('8c618902365ca681ebbbe1e28f11a548', '4c753b5293304e7a445fd2741b46529d', '启用', '1', NULL, 0, 0, 'admin', '2019-03-18 23:19:27', 'admin', '2019-03-20 09:33:30'); +INSERT INTO `jimu_dict_item` VALUES ('8cdf08045056671efd10677b8456c999', '4274efc2292239b6f000b153f50823ff', '可编辑(未授权时禁用)', '2', '', 2, 1, 'admin', '2019-05-10 17:55:38', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('8ff48e657a7c5090d4f2a59b37d1b878', '4d7fec1a7799a436d26d02325eff295e', '中', 'M', '中', 2, 1, 'admin', '2019-04-16 17:04:40', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('948923658baa330319e59b2213cda97c', '880a895c98afeca9d9ac39f29e67c13e', '添加', '2', '', 2, 1, 'admin', '2019-07-22 10:54:59', 'admin', '2019-07-22 10:55:36'); +INSERT INTO `jimu_dict_item` VALUES ('9a96c4a4e4c5c9b4e4d0cbf6eb3243cc', '4c753b5293304e7a445fd2741b46529d', '不启用', '0', NULL, 1, 1, 'admin', '2019-03-18 23:19:53', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('9c5b6144c4f954d938c96384e2e948aa', '20863a840c7622c3eab0ee69e55a8c7c', '请审批', '请审批', '请审批', 8, 1, 'admin', '2019-05-15 11:08:35', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('a05f177a7d9aeb84125ee8bc9c4fc64b', '49a0f7247f9c2a7df4e5733b790a4c9f', '耐克供应商', '2', NULL, 1, 1, 'admin', '2023-01-24 16:49:39', 'admin', '2019-04-24 16:49:59'); +INSERT INTO `jimu_dict_item` VALUES ('a1e7d1ca507cff4a480c8caba7c1339e', '880a895c98afeca9d9ac39f29e67c13e', '导出', '6', '', 6, 1, 'admin', '2019-07-22 12:06:50', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('a2be752dd4ec980afaec1efd1fb589af', '8dfe32e2d29ea9430a988b3b558bf233', '已撤销', '2', '已撤销', 3, 1, 'admin', '2019-04-16 17:41:39', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('aa0d8a8042a18715a17f0a888d360aa4', 'ac2f7c0c5c5775fcea7e2387bcb22f01', '一级菜单', '0', NULL, NULL, 1, 'admin', '2019-03-18 23:24:52', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('adcf2a1fe93bb99a84833043f475fe0b', '4e4602b3e3686f0911384e188dc7efb4', '包含', 'IN', '包含', 8, 1, 'admin', '2019-04-01 16:45:47', 'admin', '2019-04-01 17:49:24'); +INSERT INTO `jimu_dict_item` VALUES ('b029a41a851465332ee4ee69dcf0a4c2', '0b5d19e1fce4b2e6647e6b4a17760c14', '系统消息', '2', NULL, 1, 1, 'admin', '2019-02-22 18:02:08', 'admin', '2019-04-22 18:02:13'); +INSERT INTO `jimu_dict_item` VALUES ('b038e6f80c527d684c9ca0e1ecbef72f', '49a0f7247f9c2a7df4e5733b790a4c9f', '阿迪供应商', '1', NULL, 1, 1, 'admin', '2023-01-24 16:49:34', 'admin', '2019-04-24 16:50:02'); +INSERT INTO `jimu_dict_item` VALUES ('b2a8b4bb2c8e66c2c4b1bb086337f393', '3486f32803bb953e7155dab3513dc68b', '正常', '0', NULL, NULL, 1, 'admin', '2022-10-18 21:46:48', 'admin', '2019-03-28 22:22:20'); +INSERT INTO `jimu_dict_item` VALUES ('b5f3bd5f66bb9a83fecd89228c0d93d1', '68168534ff5065a152bfab275c2136f8', '无效', '0', '无效', 2, 1, 'admin', '2020-09-26 19:21:49', 'admin', '2019-05-13 17:20:07'); +INSERT INTO `jimu_dict_item` VALUES ('b96af20aef0c9388f2ae843ea7f8d722', '20863a840c7622c3eab0ee69e55a8c7c', '请***阅示', '请***阅示', '请***阅示', 4, 1, 'admin', '2019-05-15 11:06:25', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('b9fbe2a3602d4a27b45c100ac5328484', '78bda155fe380b1b3f175f1e88c284c6', '待提交', '1', '待提交', 1, 1, 'admin', '2019-05-09 16:32:35', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('ba27737829c6e0e582e334832703d75e', '236e8a4baff0db8c62c00dd95632834f', '同步', '1', '同步', 1, 1, 'admin', '2019-05-15 15:28:15', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('bcec04526b04307e24a005d6dcd27fd6', '880a895c98afeca9d9ac39f29e67c13e', '导入', '5', '', 5, 1, 'admin', '2019-07-22 12:06:41', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('bdeae295bf98a61b45e9be0322657d4b', 'c72e92c2c13cdbc07b455e6abcc60d47', '不启动', '2', NULL, 1, 1, 'admin', '2019-04-23 23:05:57', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('c4896da3525689b477b3c868d728c87f', 'c72e92c2c13cdbc07b455e6abcc60d47', '启动', '1', NULL, 1, 1, 'admin', '2019-04-23 23:05:40', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('c53da022b9912e0aed691bbec3c78473', '880a895c98afeca9d9ac39f29e67c13e', '查询', '1', '', 1, 1, 'admin', '2019-07-22 10:54:51', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('c5700a71ad08994d18ad1dacc37a71a9', 'a7adbcd86c37f7dbc9b66945c82ef9e6', '否', '0', '', 1, 1, 'admin', '2019-05-22 19:29:55', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('c83d907903a7a5ff52de60aabf3550ee', '76c1d6755018a918c9eeda575dbf3f98', '件', '1', NULL, 1, 1, 'admin', '2018-12-23 23:00:17', 'admin', '2019-04-23 23:14:00'); +INSERT INTO `jimu_dict_item` VALUES ('c8e63916333e588ef52d3eb3be9b6944', '0b1dac3e87ed7229ae19a586a8b8c8f8', 'dd', 'dd', NULL, 1, 1, 'admin', '2019-04-26 18:26:07', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('c9c3fb6c8a06b7bf577b4f574adccd12', '20863a840c7622c3eab0ee69e55a8c7c', '请指示', '请指示', '请指示', 3, 1, 'admin', '2019-05-15 11:05:58', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('cbfcc5b88fc3a90975df23ffc8cbe29c', 'c5a14c75172783d72cbee6ee7f5df5d1', '曲线图', 'line', NULL, 2, 1, 'admin', '2019-05-12 17:05:30', 'admin', '2019-04-12 17:06:06'); +INSERT INTO `jimu_dict_item` VALUES ('d217592908ea3e00ff986ce97f24fb98', 'c5a14c75172783d72cbee6ee7f5df5d1', '数据列表', 'table', NULL, 4, 1, 'admin', '2019-04-12 17:05:56', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('d76e35d4fa1c2892ff812e1de08b8684', '36d57175542a3ea85073923e8fccc21c', '标准尺码类', '4', NULL, 4, 1, 'admin', '2019-04-23 23:03:37', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('da01e5c526fc1984ca60fdcf13354d05', '20863a840c7622c3eab0ee69e55a8c7c', '同意***的意见', '同意***的意见', '同意***的意见', 2, 1, 'admin', '2019-05-15 11:05:33', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('db681e7aabd2ff52fdfaf6c2770448ff', '76c1d6755018a918c9eeda575dbf3f98', '套', '2', NULL, 2, 1, 'admin', '2019-04-23 23:00:32', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('df168368dcef46cade2aadd80100d8aa', '3d9a351be3436fbefb1307d4cfb49bf2', '男', '1', '', 1, 1, NULL, '2027-08-04 14:56:49', 'admin', '2020-05-11 14:07:04'); +INSERT INTO `jimu_dict_item` VALUES ('e05d424ee35c707d7bc20de3719fb3ae', '76c1d6755018a918c9eeda575dbf3f98', '块', '7', NULL, 7, 1, 'admin', '2019-01-23 23:01:36', 'admin', '2019-04-23 23:01:48'); +INSERT INTO `jimu_dict_item` VALUES ('e6329e3a66a003819e2eb830b0ca2ea0', '4e4602b3e3686f0911384e188dc7efb4', '小于', '<', '小于', 2, 1, 'admin', '2019-04-01 16:44:15', 'admin', '2019-04-01 17:48:34'); +INSERT INTO `jimu_dict_item` VALUES ('e8f34a36f38f35e2efb1aaa342509242', '78bda155fe380b1b3f175f1e88c284c6', '已挂起', '5', '已挂起', 5, 1, 'admin', '2019-05-23 16:12:42', 'admin', '2019-05-22 18:39:42'); +INSERT INTO `jimu_dict_item` VALUES ('e94eb7af89f1dbfa0d823580a7a6e66a', '236e8a4baff0db8c62c00dd95632834f', '不同步', '0', '不同步', 2, 1, 'admin', '2019-05-15 15:28:28', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('ecb788a9b71d3d11357c31a0febefaaa', '36d57175542a3ea85073923e8fccc21c', '男衬衫类', '2', NULL, 2, 1, 'admin', '2019-04-23 23:03:18', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('f16c5706f3ae05c57a53850c64ce7c45', 'a9d9942bd0eccb6e89de92d130ec4c4a', '发送成功', '1', NULL, 2, 1, 'admin', '2019-04-12 18:19:43', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('f2688992fffa5c62e31ce50bbb1919d9', '20863a840c7622c3eab0ee69e55a8c7c', '审核无误', '审核无误', '审核无误', 9, 1, 'admin', '2019-05-15 11:08:58', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('f2bda3b1ca643b789a2e712ad53b06fb', '36d57175542a3ea85073923e8fccc21c', '固定型号', '5', NULL, 5, 1, 'admin', '2019-04-23 23:03:47', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('f37f90c496ec9841c4c326b065e00bb2', '83bfb33147013cc81640d5fd9eda030c', '登录日志', '1', NULL, NULL, 1, 'admin', '2019-03-18 23:22:37', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('f64ca22c7a2d5793a271590e7b01eb6b', '76c1d6755018a918c9eeda575dbf3f98', '个', '5', NULL, 6, 1, 'admin', '2019-04-23 23:01:21', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('f753aff60ff3931c0ecb4812d8b5e643', '4c03fca6bf1f0299c381213961566349', '双排布局', 'double', NULL, 3, 1, 'admin', '2019-04-12 17:43:51', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('f80a8f6838215753b05e1a5ba3346d22', '880a895c98afeca9d9ac39f29e67c13e', '删除', '4', '', 4, 1, 'admin', '2019-07-22 10:55:14', 'admin', '2019-07-22 10:55:30'); +INSERT INTO `jimu_dict_item` VALUES ('fb80836f3e69d977303e56023cf4b0ca', '20863a840c7622c3eab0ee69e55a8c7c', '请处理', '请处理', '请处理', 5, 1, 'admin', '2019-05-15 11:06:57', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('fcec03570f68a175e1964808dc3f1c91', '4c03fca6bf1f0299c381213961566349', 'Tab风格', 'tab', NULL, 1, 1, 'admin', '2019-04-12 17:43:31', NULL, NULL); +INSERT INTO `jimu_dict_item` VALUES ('fe50b23ae5e68434def76f67cef35d2d', '78bda155fe380b1b3f175f1e88c284c6', '已作废', '4', '已作废', 4, 1, 'admin', '2021-09-09 16:33:43', 'admin', '2019-05-09 16:34:40'); + +-- ---------------------------- +-- Table structure for jimu_report +-- ---------------------------- +DROP TABLE IF EXISTS `jimu_report`; +CREATE TABLE `jimu_report` ( + `id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '主键', + `code` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '编码', + `name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '名称', + `note` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '说明', + `status` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '状态', + `type` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '类型', + `json_str` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT 'json字符串', + `api_url` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '请求地址', + `thumb` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '缩略图', + `create_by` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建人', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '修改人', + `update_time` datetime NULL DEFAULT NULL COMMENT '修改时间', + `del_flag` tinyint(1) NULL DEFAULT NULL COMMENT '删除标识0-正常,1-已删除', + `api_method` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '请求方法0-get,1-post', + `api_code` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '请求编码', + `template` tinyint(1) NULL DEFAULT NULL COMMENT '是否是模板 0-是,1-不是', + `view_count` bigint(15) NULL DEFAULT 0 COMMENT '浏览次数', + `css_str` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT 'css增强', + `js_str` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT 'js增强', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uniq_jmreport_code`(`code`) USING BTREE, + INDEX `uniq_jmreport_createby`(`create_by`) USING BTREE, + INDEX `uniq_jmreport_delflag`(`del_flag`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '在线excel设计器' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of jimu_report +-- ---------------------------- +INSERT INTO `jimu_report` VALUES ('01a1e07ed4b12348b29d5a47ac7f0228', '566960792', '销售公司出库单副本0792', '', NULL, 'printinfo', '{\"area\":{\"sri\":4,\"sci\":0,\"eri\":4,\"eci\":0,\"width\":32,\"height\":25},\"printElWidth\":794,\"excel_config_id\":\"ff9bd143582a6dfed897ba8b6f93b175\",\"printElHeight\":800,\"rows\":{\"0\":{\"cells\":{\"0\":{\"style\":11,\"text\":\"医疗器械销售公司出货单\",\"merge\":[0,9]}},\"height\":83},\"1\":{\"cells\":{\"0\":{\"text\":\"供货单位:\",\"style\":20,\"merge\":[0,1]},\"1\":{\"style\":30},\"2\":{\"text\":\"${gongsi.gname}\",\"style\":19},\"3\":{\"style\":19},\"4\":{\"text\":\"供货日期:\",\"style\":19},\"5\":{\"text\":\"${gongsi.gdata}\",\"style\":19,\"merge\":[0,1]},\"6\":{\"style\":19},\"7\":{\"text\":\"编号:\",\"style\":20},\"8\":{\"text\":\"${gongsi.num}\",\"style\":19,\"merge\":[0,1]},\"9\":{\"style\":19}},\"isDrag\":true},\"2\":{\"cells\":{\"0\":{\"text\":\"行号\",\"style\":39},\"1\":{\"text\":\"产品代码\",\"style\":39},\"2\":{\"text\":\"产品名称\",\"style\":39},\"3\":{\"text\":\"规格型号\",\"style\":39},\"4\":{\"text\":\"单位\",\"style\":39},\"5\":{\"text\":\"实发数量\",\"style\":39},\"6\":{\"text\":\"销售单价(元)\",\"style\":39},\"7\":{\"text\":\"折扣率(%)\",\"style\":39},\"8\":{\"text\":\"销售金额(元)\",\"style\":39},\"9\":{\"text\":\"备注\",\"style\":39}}},\"3\":{\"cells\":{\"0\":{\"style\":35,\"text\":\"#{xiaoshou.id}\"},\"1\":{\"style\":35,\"text\":\"#{xiaoshou.hnum}\"},\"2\":{\"style\":35,\"text\":\"#{xiaoshou.hname}\"},\"3\":{\"style\":35,\"text\":\"#{xiaoshou.xinghao}\"},\"4\":{\"style\":35,\"text\":\"#{xiaoshou.danwei}\"},\"5\":{\"style\":35,\"text\":\"#{xiaoshou.num}\"},\"6\":{\"style\":35,\"text\":\"#{xiaoshou.danjia}\"},\"7\":{\"style\":35,\"text\":\"#{xiaoshou.zhekoulv}\"},\"8\":{\"style\":35,\"text\":\"#{xiaoshou.xiaoshoujine}\"},\"9\":{\"style\":35,\"text\":\"#{xiaoshou.xiaoshoujine}\"}}},\"4\":{\"cells\":{\"0\":{\"style\":4},\"1\":{}},\"isDrag\":true},\"len\":84,\"-1\":{\"cells\":{\"0\":{\"text\":\"#{gongsi.gdata}\"},\"-1\":{\"text\":\"#{gongsi.didian}\"}},\"isDrag\":true}},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":794,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\"},{\"font\":{\"size\":16}},{\"font\":{\"size\":16},\"align\":\"center\"},{\"align\":\"center\"},{\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"right\"},{\"align\":\"right\"},{\"align\":\"center\",\"font\":{\"size\":14}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":9}},{\"font\":{\"size\":9}},{\"align\":\"right\",\"font\":{\"size\":9}},{\"align\":\"center\",\"font\":{\"size\":8}},{\"font\":{\"size\":8}},{\"align\":\"right\",\"font\":{\"size\":8}},{\"align\":\"center\",\"font\":{\"size\":8},\"color\":\"#7f7f7f\"},{\"font\":{\"size\":8},\"color\":\"#7f7f7f\"},{\"align\":\"right\",\"font\":{\"size\":8},\"color\":\"#7f7f7f\"},{\"align\":\"center\",\"font\":{\"size\":8},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":8},\"color\":\"#3f3f3f\"},{\"align\":\"right\",\"font\":{\"size\":8},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"font\":{\"size\":8},\"color\":\"#262626\"},{\"font\":{\"size\":8},\"color\":\"#262626\"},{\"align\":\"right\",\"font\":{\"size\":8},\"color\":\"#262626\"},{\"align\":\"center\",\"font\":{\"size\":8},\"color\":\"#0c0c0c\"},{\"font\":{\"size\":8},\"color\":\"#0c0c0c\"},{\"align\":\"right\",\"font\":{\"size\":8},\"color\":\"#0c0c0c\"},{\"align\":\"right\",\"color\":\"#7f7f7f\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"bgcolor\":\"#71ae47\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#71ae47\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"align\":\"center\",\"bgcolor\":\"#71ae47\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"bgcolor\":\"#71ae47\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]}},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"align\":\"center\",\"bgcolor\":\"#c5e0b3\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"bgcolor\":\"#c5e0b3\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"align\":\"center\",\"bgcolor\":\"#a7d08c\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"bgcolor\":\"#a7d08c\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":32},\"1\":{\"width\":65},\"2\":{\"width\":115},\"3\":{\"width\":70},\"4\":{\"width\":52},\"5\":{\"width\":70},\"6\":{\"width\":93},\"7\":{\"width\":86},\"8\":{\"width\":75},\"9\":{\"width\":136},\"10\":{\"width\":81},\"len\":24},\"merges\":[\"F2:G2\",\"F2:G2\",\"I2:J2\",\"A2:B2\",\"C2:D2\",\"A2:B2\",\"A1:J1\"]}', '', 'https://static.jeecg.com/designreport/images/医疗器械_1607070355110.png', 'admin', '2021-01-19 10:46:43', 'admin', '2021-02-02 19:00:59', 1, NULL, NULL, 0, 766, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1314846205892759552', '20201010163252', 'XXX有限公司员工登记表', NULL, NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":{\"sri\":10,\"sci\":11,\"eri\":10,\"eci\":11,\"width\":85,\"height\":38},\"excel_config_id\":\"1314846205892759552\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"0\":{\"cells\":{\"0\":{\"merge\":[0,8]},\"9\":{}},\"height\":22},\"1\":{\"cells\":{\"1\":{\"style\":87,\"text\":\" \"},\"2\":{\"style\":87,\"text\":\" \"},\"3\":{\"style\":87,\"text\":\" \"},\"4\":{\"style\":87,\"text\":\" \"},\"5\":{\"style\":87,\"text\":\" \"},\"6\":{\"style\":87,\"text\":\" \"},\"7\":{\"style\":87,\"text\":\" \"},\"8\":{\"style\":87,\"text\":\" \"}},\"height\":24},\"2\":{\"cells\":{\"0\":{\"text\":\"所在部门\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.department}\",\"style\":23,\"merge\":[0,2]},\"4\":{\"text\":\"职务\",\"style\":93},\"5\":{\"text\":\"${yuangongjiben.post}\",\"style\":23},\"6\":{\"text\":\"填写日期\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.data}\",\"style\":23,\"merge\":[0,1]}},\"isDrag\":true,\"height\":36},\"3\":{\"cells\":{\"0\":{\"text\":\"姓名\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.name}\",\"style\":23},\"2\":{\"text\":\"性别\",\"style\":93},\"3\":{\"text\":\"${yuangongjiben.sex}\",\"style\":23},\"4\":{\"text\":\"出生日期\",\"style\":93},\"5\":{\"text\":\"${yuangongjiben.birth}\",\"style\":23},\"6\":{\"text\":\"政治面貌\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.political}\",\"style\":130,\"merge\":[0,1]}},\"isDrag\":true,\"height\":33},\"4\":{\"cells\":{\"0\":{\"text\":\"机关\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.office}\",\"style\":23},\"2\":{\"style\":93,\"text\":\"民族\"},\"3\":{\"text\":\"${yuangongjiben.nation}\",\"style\":23},\"4\":{\"style\":93,\"text\":\"健康状况\"},\"5\":{\"text\":\"${yuangongjiben.health}\",\"style\":23},\"6\":{\"style\":93,\"text\":\"户籍类型\",\"virtual\":\"1KT8bnqRT4bi8Z7b\"},\"7\":{\"text\":\"${yuangongjiben.register}\",\"style\":26,\"virtual\":\"1KT8bnqRT4bi8Z7b\"},\"8\":{\"merge\":[3,0],\"height\":104,\"style\":35,\"text\":\" \",\"virtual\":\"cvkWDQVZhfJPgcS4\"}},\"isDrag\":true,\"height\":31},\"5\":{\"cells\":{\"0\":{\"text\":\"最高学历\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.education}\",\"style\":23},\"2\":{\"text\":\"所学专业\",\"style\":93},\"3\":{\"text\":\"${yuangongjiben.major}\",\"style\":23,\"merge\":[0,2]},\"6\":{\"text\":\"毕业时间\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.gdata}\",\"style\":23}},\"isDrag\":true,\"height\":35},\"6\":{\"cells\":{\"0\":{\"text\":\"电子邮箱\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.mailbox}\",\"style\":23},\"2\":{\"text\":\"手机号\",\"style\":93},\"3\":{\"text\":\"${yuangongjiben.telphone}\",\"style\":23,\"merge\":[0,2]},\"6\":{\"text\":\"家庭电话\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.homephone}\",\"style\":23}},\"isDrag\":true,\"height\":38},\"7\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"第一次参加工作时间\",\"style\":93},\"2\":{\"text\":\"${yuangongjiben.pworktime}\",\"style\":133,\"merge\":[0,2]},\"5\":{\"style\":93,\"text\":\"入职时间\"},\"6\":{\"text\":\"${yuangongjiben.entrytime}\",\"style\":24,\"merge\":[0,1]}},\"isDrag\":true,\"height\":27},\"8\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"毕业院校\",\"style\":93},\"2\":{\"text\":\"${yuangongjiben.school}\",\"style\":24,\"merge\":[0,2]},\"5\":{\"style\":93,\"text\":\"身份证号\"},\"6\":{\"text\":\"${yuangongjiben.idcard}\",\"style\":24,\"merge\":[0,2]}},\"isDrag\":true,\"height\":34},\"9\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"入党(团)时间、地点\",\"style\":94},\"2\":{\"text\":\"${yuangongjiben.entrytime}\",\"style\":24,\"merge\":[0,2]},\"5\":{\"text\":\"婚姻状况\",\"style\":93},\"6\":{\"text\":\"${yuangongjiben.marital}\",\"style\":23},\"7\":{\"text\":\"有无子女\",\"style\":93},\"8\":{\"text\":\"${yuangongjiben.children}\",\"style\":23}},\"isDrag\":true,\"height\":33},\"10\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"户口所在街道名称\",\"style\":93},\"2\":{\"text\":\"${yuangongjiben.hukoustreet}\",\"style\":24,\"merge\":[0,2]},\"5\":{\"merge\":[0,1],\"text\":\"户口所在地邮编\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.hukounum}\",\"style\":23,\"merge\":[0,1]}},\"isDrag\":true,\"height\":38},\"11\":{\"cells\":{\"0\":{\"text\":\"户口所在地地址\",\"style\":96,\"merge\":[2,1]},\"2\":{\"text\":\"${yuangongjiben.hukoudi}\",\"style\":26,\"merge\":[2,6]}},\"isDrag\":true},\"12\":{\"cells\":{}},\"13\":{\"cells\":{\"11\":{\"text\":\"\"}},\"isDrag\":true},\"14\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"现居住地址\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.currentdi}\",\"style\":26,\"merge\":[0,2]},\"5\":{\"style\":98,\"merge\":[0,1],\"text\":\"现居住地址邮编\"},\"7\":{\"text\":\"${yuangongjiben.currentnum}\",\"style\":26,\"merge\":[0,1]}},\"isDrag\":true,\"height\":33},\"15\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"是否参加社保\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.socialsecurity}\",\"style\":27,\"merge\":[0,1]},\"4\":{\"text\":\"有无公积金\",\"style\":98},\"5\":{\"text\":\"${yuangongjiben.providentfund}\",\"style\":27,\"merge\":[0,1]},\"7\":{\"text\":\"兴趣爱好\",\"style\":98},\"8\":{\"text\":\"${yuangongjiben.hobby}\",\"style\":27}},\"isDrag\":true,\"height\":34},\"16\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"参加社保类型\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.sbtype}\",\"style\":116,\"merge\":[0,6]}},\"isDrag\":true,\"height\":30},\"17\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"个人档案存放地\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.archivesdi}\",\"style\":116,\"merge\":[0,6]}},\"isDrag\":true,\"height\":33},\"18\":{\"cells\":{\"0\":{\"text\":\" \",\"style\":7},\"1\":{\"text\":\" \",\"style\":7},\"2\":{\"text\":\" \",\"style\":7},\"3\":{\"text\":\" \",\"style\":7},\"4\":{\"text\":\" \",\"style\":7},\"5\":{\"text\":\" \",\"style\":7},\"6\":{\"text\":\" \",\"style\":7},\"7\":{\"text\":\" \",\"style\":7},\"8\":{\"text\":\" \",\"style\":7}}},\"19\":{\"cells\":{\"0\":{\"merge\":[0,4],\"text\":\"学历、经历(从高中开始写)\",\"style\":99},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"20\":{\"cells\":{\"0\":{\"text\":\"由_年_月\",\"merge\":[0,1],\"style\":36},\"2\":{\"merge\":[0,1],\"text\":\"至_年_月\",\"style\":38},\"4\":{\"merge\":[0,1],\"text\":\"就读学校\",\"style\":38},\"6\":{\"merge\":[0,1],\"text\":\"专业\",\"style\":38},\"8\":{\"text\":\"担任职务\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"21\":{\"cells\":{\"0\":{\"style\":90,\"merge\":[0,1],\"text\":\"#{xueli.kdate}\"},\"2\":{\"style\":90,\"text\":\"#{xueli.jdate}\",\"merge\":[0,1]},\"4\":{\"style\":90,\"text\":\"#{xueli.jstudent}\",\"merge\":[0,1]},\"6\":{\"style\":90,\"text\":\"#{xueli.zhuanye}\",\"merge\":[0,1]},\"8\":{\"style\":90,\"text\":\"#{xueli.zhiwu}\"},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"22\":{\"cells\":{\"0\":{\"style\":7,\"text\":\" \"},\"1\":{\"style\":7,\"text\":\" \"},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"23\":{\"cells\":{\"0\":{\"merge\":[0,4],\"text\":\"工作经历\",\"style\":124},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":27},\"24\":{\"cells\":{\"0\":{\"text\":\"由_年_月\",\"merge\":[0,1],\"style\":36},\"2\":{\"merge\":[0,1],\"text\":\"至_年_月\",\"style\":38},\"4\":{\"text\":\"工作单位及职称\",\"style\":38,\"merge\":[0,1]},\"6\":{\"merge\":[0,1],\"text\":\"证明人\",\"style\":38},\"8\":{\"text\":\"联系方式\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"25\":{\"cells\":{\"0\":{\"text\":\"#{uu.kdate}\",\"style\":90,\"merge\":[0,1]},\"2\":{\"text\":\"#{uu.jdate}\",\"style\":90,\"merge\":[0,1]},\"4\":{\"text\":\"#{uu.jstudent}\",\"style\":90,\"merge\":[0,1]},\"6\":{\"text\":\"#{uu.zmname}\",\"style\":90,\"merge\":[0,1]},\"8\":{\"text\":\"#{uu.zmphone}\",\"style\":90},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"26\":{\"cells\":{\"0\":{\"style\":7,\"text\":\" \"},\"1\":{\"style\":7,\"text\":\" \"},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"27\":{\"cells\":{\"0\":{\"merge\":[0,4],\"text\":\"职称/资格、证书\",\"style\":125},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":46},\"28\":{\"cells\":{\"0\":{\"text\":\"发证时间\",\"merge\":[0,1],\"style\":36},\"2\":{\"merge\":[0,1],\"text\":\"职称名称\",\"style\":38},\"4\":{\"text\":\"级别\",\"style\":38,\"merge\":[0,1]},\"6\":{\"text\":\"发证单位\",\"style\":38,\"merge\":[0,1]},\"8\":{\"text\":\"备注\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"29\":{\"cells\":{\"0\":{\"text\":\"#{zhengshu.fdate}\",\"style\":90,\"merge\":[0,1]},\"2\":{\"text\":\"#{zhengshu.zcname}\",\"style\":90,\"merge\":[0,1]},\"4\":{\"text\":\"#{zhengshu.jibie}\",\"style\":90,\"merge\":[0,1]},\"6\":{\"text\":\"#{zhengshu.danwei}\",\"style\":90,\"merge\":[0,1]},\"8\":{\"text\":\"#{zhengshu.beizhu}\",\"style\":90},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"30\":{\"cells\":{\"0\":{\"style\":7,\"text\":\" \"},\"1\":{\"style\":7,\"text\":\" \"},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"31\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"家庭成员\",\"style\":125},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":42},\"32\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"姓名\",\"style\":38},\"2\":{\"merge\":[0,1],\"text\":\"关系\",\"style\":38},\"4\":{\"text\":\"年龄\",\"style\":38},\"5\":{\"text\":\"工作单位\",\"style\":38,\"merge\":[0,1]},\"7\":{\"text\":\"政治面貌\",\"style\":38},\"8\":{\"text\":\"联系方式\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"33\":{\"cells\":{\"0\":{\"text\":\"#{jtcy.name}\",\"style\":90,\"merge\":[0,1]},\"2\":{\"text\":\"#{jtcy.guanxi}\",\"style\":90,\"merge\":[0,1]},\"4\":{\"text\":\"#{jtcy.age}\",\"style\":90},\"5\":{\"text\":\"#{jtcy.danwei}\",\"style\":90,\"merge\":[0,1]},\"7\":{\"text\":\"#{jtcy.zzmm}\",\"style\":90},\"8\":{\"text\":\"#{jtcy.phone}\",\"style\":90},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"34\":{\"cells\":{\"0\":{\"text\":\" \",\"style\":7},\"1\":{\"text\":\" \",\"style\":7},\"2\":{\"text\":\" \",\"style\":7},\"3\":{\"text\":\" \",\"style\":7},\"4\":{\"text\":\" \",\"style\":7},\"5\":{\"text\":\" \",\"style\":7},\"6\":{\"text\":\" \",\"style\":7},\"7\":{\"text\":\" \",\"style\":7},\"8\":{\"text\":\" \",\"style\":7},\"9\":{\"style\":112,\"text\":\" \"}}},\"35\":{\"cells\":{\"0\":{\"merge\":[0,2],\"text\":\"所获奖励\",\"style\":125},\"3\":{\"text\":\" \",\"style\":7},\"4\":{\"text\":\" \",\"style\":7},\"5\":{\"text\":\" \",\"style\":7},\"6\":{\"text\":\" \",\"style\":7},\"7\":{\"text\":\" \",\"style\":7},\"8\":{\"text\":\" \",\"style\":7},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":47},\"36\":{\"cells\":{\"0\":{\"text\":\"时间\",\"style\":90,\"merge\":[0,2]},\"3\":{\"style\":90,\"text\":\"地点\",\"merge\":[0,2]},\"6\":{\"style\":90,\"text\":\"所获得的奖励名称\",\"merge\":[0,2]},\"9\":{\"style\":112,\"text\":\" \"}}},\"37\":{\"cells\":{\"0\":{\"text\":\"#{jiangli.date}\",\"style\":90,\"merge\":[0,2]},\"3\":{\"text\":\"#{jiangli.didian}\",\"style\":90,\"merge\":[0,2]},\"6\":{\"text\":\"#{jiangli.mingcheng}\",\"style\":90,\"merge\":[0,2]},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"len\":98},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":703,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true}},{\"align\":\"center\",\"font\":{\"name\":\"仿宋\"}},{\"font\":{\"name\":\"仿宋\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":12}},{\"font\":{\"name\":\"宋体\",\"size\":12}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":8}},{\"font\":{\"name\":\"宋体\",\"size\":8}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10}},{\"font\":{\"name\":\"宋体\",\"size\":10}},{\"align\":\"center\",\"font\":{\"name\":\"隶书\",\"size\":10}},{\"font\":{\"name\":\"隶书\",\"size\":10}},{\"align\":\"center\",\"font\":{\"name\":\"华文中宋\",\"size\":10}},{\"font\":{\"name\":\"华文中宋\",\"size\":10}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10}},{\"textwrap\":true},{\"textwrap\":true,\"align\":\"center\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"bold\":true}},{\"font\":{\"bold\":true,\"size\":12}},{\"font\":{\"bold\":true,\"size\":10}},{\"font\":{\"bold\":true,\"size\":10},\"align\":\"center\"},{\"font\":{\"bold\":true},\"align\":\"center\"},{\"font\":{\"bold\":true,\"size\":10},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"宋体\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"font\":{\"bold\":true,\"name\":\"宋体\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true},\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true},\"border\":{\"top\":[\"medium\",\"#000\"]}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]}},{\"border\":{\"left\":[\"medium\",\"#000\"]}},{\"border\":{\"right\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"Microsoft YaHei\"},\"border\":{\"top\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"Microsoft YaHei\"}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"right\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"Microsoft YaHei\"}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"name\":\"Microsoft YaHei\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":8},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":8}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":8}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"},\"border\":{\"top\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"}},{\"border\":{\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":8},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"bold\":true}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"},\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"left\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"},\"border\":{\"top\":[\"thin\",\"#ffffff\"]}},{\"border\":{\"top\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"left\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"left\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"left\",\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"right\"},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"right\",\"valign\":\"bottom\"},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"left\",\"valign\":\"bottom\"},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"valign\":\"bottom\"},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"format\":\"datetime\"},{\"font\":{\"name\":\"宋体\",\"size\":10},\"format\":\"datetime\"},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"format\":\"normal\"},{\"font\":{\"name\":\"宋体\",\"size\":10},\"format\":\"normal\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":73},\"1\":{\"width\":71},\"2\":{\"width\":69},\"3\":{\"width\":89},\"4\":{\"width\":64},\"5\":{\"width\":47},\"6\":{\"width\":68},\"7\":{\"width\":100},\"8\":{\"width\":103},\"9\":{\"width\":19},\"10\":{\"width\":146},\"11\":{\"width\":85},\"len\":50},\"merges\":[\"H3:I3\",\"B3:D3\",\"A2:I2\",\"D6:F6\",\"D7:F7\",\"A8:B8\",\"G8:H8\",\"A9:B9\",\"A10:B10\",\"C10:E10\",\"C8:E8\",\"C9:E9\",\"A11:B11\",\"C11:E11\",\"F11:G11\",\"H11:I11\",\"C12:I14\",\"A15:B15\",\"C15:E15\",\"F15:G15\",\"H15:I15\",\"A16:B16\",\"A17:B17\",\"A18:B18\",\"C17:I17\",\"C18:I18\",\"A20:E20\",\"A21:B21\",\"C21:D21\",\"E21:F21\",\"G21:H21\",\"A22:B22\",\"A24:E24\",\"A25:B25\",\"C25:D25\",\"G25:H25\",\"A26:B26\",\"A28:E28\",\"A29:B29\",\"C29:D29\",\"A30:B30\",\"A32:B32\",\"A33:B33\",\"C33:D33\",\"A34:B34\",\"C34:D34\",\"A36:C36\",\"C16:D16\",\"F16:G16\",\"QAAAAAACI1:JAAAAAABJ38\",\"A1:I1\",\"H4:I4\",\"G9:I9\",\"G22:H22\",\"E22:F22\",\"C22:D22\",\"C26:D26\",\"G26:H26\",\"C30:D30\",\"G30:H30\",\"E30:F30\",\"D37:F37\",\"D38:F38\",\"A38:C38\",\"A37:C37\",\"G37:I37\",\"G38:I38\",\"E29:F29\",\"G29:H29\",\"E25:F25\",\"E26:F26\",\"F33:G33\",\"F34:G34\",\"A12:B14\",\"I5:I8\"],\"imgList\":[{\"row\":4,\"col\":8,\"width\":\"101\",\"height\":\"128\",\"src\":\"https://jimureport.oss-cn-beijing.aliyuncs.com/designreport/images/QQ截图20210115102648_1610694177544_1617244906979.png\",\"layer_id\":\"cvkWDQVZhfJPgcS4\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[4,8]]}]}', NULL, 'https://static.jeecg.com/designreport/images/1122_1607312336469.png', 'admin', '2020-10-10 16:32:53', 'admin', '2021-06-30 10:16:00', 0, NULL, NULL, 1, 607, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1316944968992034816', '20201016113231', '员工信息登记', NULL, NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":false,\"printElWidth\":718,\"excel_config_id\":\"1316944968992034816\",\"printElHeight\":1047,\"rows\":{\"1\":{\"cells\":{\"0\":{\"text\":\"员工信息登记表\",\"merge\":[0,6],\"style\":28},\"1\":{\"style\":21,\"text\":\" \"},\"2\":{\"style\":21,\"text\":\" \"},\"3\":{\"style\":21,\"text\":\" \"},\"4\":{\"style\":21,\"text\":\" \"},\"5\":{\"style\":21,\"text\":\" \"},\"6\":{\"style\":21,\"text\":\" \"}},\"height\":46},\"2\":{\"cells\":{\"0\":{\"text\":\"编号:\",\"style\":29},\"1\":{\"text\":\"${employee.num}\",\"style\":30,\"merge\":[0,3]},\"2\":{\"text\":\" \",\"style\":24},\"3\":{\"text\":\" \",\"style\":24},\"4\":{\"text\":\" \",\"style\":24},\"5\":{\"text\":\"填写日期:\",\"style\":29},\"6\":{\"text\":\"${employee.create_time}\",\"style\":36}},\"isDrag\":true,\"height\":44},\"3\":{\"cells\":{\"0\":{\"text\":\"姓名:\",\"style\":29},\"1\":{\"text\":\"${employee.name}\",\"style\":30},\"2\":{\"text\":\"性别:\",\"style\":29},\"3\":{\"text\":\"${employee.sex}\",\"style\":30},\"4\":{\"text\":\"出生年月:\",\"style\":29},\"5\":{\"text\":\"${employee.birthday}\",\"style\":36},\"6\":{\"style\":3,\"text\":\" \",\"merge\":[4,0],\"virtual\":\"Ym8ny6lYTdutY5tT\"}},\"isDrag\":true,\"height\":42},\"4\":{\"cells\":{\"0\":{\"text\":\"民族:\",\"style\":29},\"1\":{\"text\":\"${employee.nation}\",\"style\":30},\"2\":{\"text\":\"政治面貌:\",\"style\":29},\"3\":{\"text\":\"${employee.political}\",\"style\":30},\"4\":{\"text\":\"籍贯:\",\"style\":29},\"5\":{\"text\":\"${employee.native_place}\",\"style\":30}},\"isDrag\":true,\"height\":38},\"5\":{\"cells\":{\"0\":{\"text\":\"身高(cm):\",\"style\":29},\"1\":{\"text\":\"${employee.height}\",\"style\":30},\"2\":{\"text\":\"体重(kg):\",\"style\":29},\"3\":{\"text\":\"${employee.weight}\",\"style\":30},\"4\":{\"text\":\"健康状况:\",\"style\":29},\"5\":{\"text\":\"${employee.health}\",\"style\":30}},\"isDrag\":true,\"height\":38},\"6\":{\"cells\":{\"0\":{\"text\":\"身份证号:\",\"style\":29},\"1\":{\"text\":\"${employee.id_card}\",\"style\":30,\"merge\":[0,2]},\"2\":{\"text\":\" \",\"style\":24},\"3\":{\"text\":\" \",\"style\":24},\"4\":{\"text\":\"学历:\",\"style\":29},\"5\":{\"text\":\"${employee.education}\",\"style\":30}},\"isDrag\":true,\"height\":40},\"7\":{\"cells\":{\"0\":{\"text\":\"毕业学校:\",\"style\":29},\"1\":{\"text\":\"${employee.school}\",\"style\":30,\"merge\":[0,2]},\"2\":{\"text\":\" \",\"style\":24},\"3\":{\"text\":\" \",\"style\":24},\"4\":{\"text\":\"专业:\",\"style\":29},\"5\":{\"text\":\"${employee.major}\",\"style\":30}},\"isDrag\":true,\"height\":44},\"8\":{\"cells\":{\"0\":{\"text\":\"联系地址:\",\"style\":29},\"1\":{\"text\":\"${employee.address}\",\"style\":30,\"merge\":[0,2]},\"2\":{\"text\":\" \",\"style\":24},\"3\":{\"text\":\" \",\"style\":24},\"4\":{\"text\":\"邮编:\",\"style\":29},\"5\":{\"text\":\"${employee.zip_code}\",\"style\":30,\"merge\":[0,1]},\"6\":{\"text\":\" \",\"style\":24}},\"isDrag\":true,\"height\":45},\"9\":{\"cells\":{\"0\":{\"text\":\"Email:\",\"style\":29},\"1\":{\"text\":\"${employee.email}\",\"style\":30,\"merge\":[0,2]},\"2\":{\"text\":\" \",\"style\":24},\"3\":{\"text\":\" \",\"style\":24},\"4\":{\"text\":\"手机号:\",\"style\":29},\"5\":{\"text\":\"${employee.phone}\",\"style\":30,\"merge\":[0,1]},\"6\":{\"text\":\" \",\"style\":24}},\"isDrag\":true,\"height\":40},\"10\":{\"cells\":{\"0\":{\"text\":\"外语语种:\",\"style\":29},\"1\":{\"text\":\"${employee.foreign_language}\",\"style\":30},\"2\":{\"text\":\"外语水平:\",\"style\":29},\"3\":{\"text\":\"${employee.foreign_language_level}\",\"style\":30},\"4\":{\"text\":\"计算机水平:\",\"style\":29},\"5\":{\"text\":\"${employee.computer_level}\",\"style\":30,\"merge\":[0,1]},\"6\":{\"text\":\" \",\"style\":24}},\"isDrag\":true,\"height\":41},\"11\":{\"cells\":{\"0\":{\"text\":\"毕业时间:\",\"style\":29},\"1\":{\"text\":\"${employee.graduation_time}\",\"style\":34},\"2\":{\"text\":\"到职时间:\",\"style\":29},\"3\":{\"text\":\"${employee.arrival_time}\",\"style\":34},\"4\":{\"text\":\"职称:\",\"style\":29},\"5\":{\"text\":\"${employee.positional_titles}\",\"style\":30,\"merge\":[0,1]},\"6\":{\"text\":\" \",\"style\":24}},\"isDrag\":true,\"height\":42},\"12\":{\"cells\":{\"0\":{\"text\":\"教育经历:\",\"style\":32},\"1\":{\"text\":\"\",\"style\":35,\"merge\":[0,5]},\"2\":{\"text\":\" \",\"style\":40},\"3\":{\"text\":\" \",\"style\":40},\"4\":{\"text\":\" \",\"style\":40},\"5\":{\"text\":\" \",\"style\":40},\"6\":{\"text\":\" \",\"style\":40}},\"isDrag\":true,\"height\":39},\"13\":{\"cells\":{\"0\":{\"text\":\"${employee.education_experience}\",\"style\":33,\"merge\":[0,6]},\"1\":{\"style\":27,\"text\":\" \"},\"2\":{\"style\":27,\"text\":\" \"},\"3\":{\"style\":27,\"text\":\" \"},\"4\":{\"style\":27,\"text\":\" \"},\"5\":{\"style\":27,\"text\":\" \"},\"6\":{\"style\":27,\"text\":\" \"}},\"isDrag\":true,\"height\":70},\"14\":{\"cells\":{\"0\":{\"text\":\"工作经历:\",\"style\":32},\"1\":{\"merge\":[0,5],\"style\":30,\"text\":\" \"},\"2\":{\"text\":\" \",\"style\":24},\"3\":{\"text\":\" \",\"style\":24},\"4\":{\"text\":\" \",\"style\":24},\"5\":{\"text\":\" \",\"style\":24},\"6\":{\"text\":\" \",\"style\":24}},\"height\":43},\"15\":{\"cells\":{\"0\":{\"text\":\"${employee.work_experience}\",\"style\":30,\"merge\":[0,6]},\"1\":{\"text\":\" \",\"style\":24},\"2\":{\"text\":\" \",\"style\":24},\"3\":{\"text\":\" \",\"style\":24},\"4\":{\"text\":\" \",\"style\":24},\"5\":{\"text\":\" \",\"style\":24},\"6\":{\"text\":\" \",\"style\":24}},\"isDrag\":true,\"height\":61},\"17\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":37}}},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[\"sex1\"],\"freeze\":\"A1\",\"dataRectWidth\":712,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":true}},{\"font\":{\"bold\":true}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":false}},{\"font\":{\"bold\":false}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":true},\"align\":\"right\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16},\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]},\"font\":{\"bold\":true},\"align\":\"right\"},{\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]},\"font\":{\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]},\"font\":{\"bold\":false}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16},\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"bold\":true},\"align\":\"right\"},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"bold\":false}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16,\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16,\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"bold\":true,\"name\":\"宋体\"},\"align\":\"right\"},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"bold\":true,\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"bold\":false,\"name\":\"宋体\"}},{\"font\":{\"bold\":false,\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16,\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":true,\"name\":\"宋体\"},\"align\":\"right\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":true,\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false,\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"宋体\"},\"format\":\"date2\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"宋体\"},\"format\":\"normal\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"宋体\"},\"format\":\"date\"},{\"format\":\"date2\"},{\"font\":{\"name\":\"宋体\"},\"format\":\"date2\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"宋体\"},\"format\":\"time\"},{\"font\":{\"name\":\"宋体\"},\"format\":\"normal\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":79},\"1\":{\"width\":92},\"2\":{\"width\":76},\"3\":{\"width\":106},\"5\":{\"width\":123},\"6\":{\"width\":136},\"len\":50},\"merges\":[\"A2:G2\",\"B3:E3\",\"B7:D7\",\"B8:D8\",\"B9:D9\",\"B10:D10\",\"F9:G9\",\"F10:G10\",\"F11:G11\",\"F12:G12\",\"B13:G13\",\"A14:G14\",\"B15:G15\",\"A16:G16\",\"G4:G8\"],\"imgList\":[{\"row\":3,\"col\":6,\"width\":\"135\",\"height\":\"192\",\"src\":\"https://static.jeecg.com/designreport/images/QQ截图20210108095848_1610071294294.png\",\"layer_id\":\"Ym8ny6lYTdutY5tT\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[3,6]]}]}', NULL, 'https://static.jeecg.com/designreport/images/1133_1607312428261.png', 'admin', '2020-10-16 11:32:32', 'admin', '2021-07-13 05:39:23', 0, NULL, NULL, 1, 1412, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1331503965770223616', '20201125155042', '房屋销售综合展示大屏', NULL, NULL, 'chartinfo', '{\"loopBlockList\":[],\"chartList\":[{\"row\":1,\"col\":1,\"colspan\":0,\"rowspan\":0,\"width\":\"338\",\"height\":\"378\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":0,\\\"interval\\\":0,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"data\\\":[\\\"缤纷南郡\\\",\\\"中航华府\\\",\\\"3中家属楼\\\",\\\"幸福家园\\\",\\\"水晶国际\\\",\\\"绿城小区\\\",\\\"缤纷南郡二期\\\",\\\"国奥家园\\\",\\\"西西胡同\\\",\\\"融创学府\\\",\\\"蓝湾国际\\\",\\\"广发小区\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type\\\":\\\"category\\\"},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type \\\":\\\"value\\\"},\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"房子\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"grid\\\":{\\\"top\\\":60,\\\"left\\\":71,\\\"bottom\\\":39,\\\"right\\\":29},\\\"series\\\":[{\\\"barWidth\\\":13,\\\"data\\\":[2,2,2,3,4,3,3,5,2,7,4,8],\\\"name\\\":\\\"房子\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"\\\",\\\"barBorderRadius\\\":7},\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"top\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2,\\\"typeData\\\":[]}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"axisPointer\\\":{\\\"type\\\":\\\"shadow\\\"},\\\"trigger\\\":\\\"axis\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"padding\\\":[5,20,5,20],\\\"left\\\":\\\"left\\\",\\\"show\\\":true,\\\"text\\\":\\\"各楼盘成交量排名\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"14\\\",\\\"fontWeight\\\":\\\"normal\\\"},\\\"top\\\":10}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1331511745851731969\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"chengjiao\",\"chartType\":\"bar.multi.horizontal\",\"isTiming\":true,\"intervalTime\":\"5\"},\"layer_id\":\"5ggWQtDUvSopC4iL\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[1,1],[1,2],[1,3]]},{\"row\":1,\"col\":12,\"colspan\":0,\"rowspan\":0,\"width\":\"327\",\"height\":\"152\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":12}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"name\\\":\\\"\\\",\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false}},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":34,\\\"interval\\\":0,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"data\\\":[\\\"高层\\\",\\\"小高层\\\",\\\"写字楼\\\",\\\"厂房\\\",\\\"公寓\\\",\\\"别墅\\\",\\\"厂房\\\",\\\"四合院\\\",\\\"loft\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"name\\\":\\\"\\\",\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false}},\\\"grid\\\":{\\\"top\\\":50,\\\"left\\\":30,\\\"bottom\\\":44,\\\"right\\\":24},\\\"series\\\":[{\\\"areaStyle\\\":null,\\\"data\\\":[20,25,10,5,9,1,5,1,20],\\\"showSymbol\\\":true,\\\"lineStyle\\\":{\\\"width\\\":2},\\\"symbolSize\\\":5,\\\"isArea\\\":false,\\\"name\\\":\\\"\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"#D04672\\\"},\\\"step\\\":false,\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"top\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"line\\\",\\\"smooth\\\":true}],\\\"tooltip\\\":{\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":true,\\\"top\\\":10,\\\"text\\\":\\\"房形分析\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontWeight\\\":\\\"normal\\\",\\\"fontSize\\\":\\\"14\\\"},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1331922734933987329\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"fangyuan\",\"chartType\":\"line.smooth\",\"isTiming\":true,\"intervalTime\":\"5\"},\"layer_id\":\"nk6I2RCefm9scS1k\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[1,12],[1,13],[1,14],[1,15]]},{\"row\":7,\"col\":12,\"colspan\":0,\"rowspan\":0,\"width\":\"324\",\"height\":\"215\",\"config\":\"{\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"1室\\\",\\\"2室\\\",\\\"3室\\\",\\\"4室\\\",\\\"5室\\\"],\\\"top\\\":\\\"bottom\\\",\\\"orient\\\":\\\"vertical\\\",\\\"left\\\":\\\"right\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"series\\\":[{\\\"isRose\\\":false,\\\"data\\\":[{\\\"name\\\":\\\"1室\\\",\\\"value\\\":10,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(53,165,180,1)\\\"}},{\\\"name\\\":\\\"2室\\\",\\\"value\\\":30,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(60,140,198,1)\\\"}},{\\\"name\\\":\\\"3室\\\",\\\"value\\\":20,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(93,144,81,1)\\\"}},{\\\"name\\\":\\\"4室\\\",\\\"value\\\":5,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(191,146,68,1)\\\"}},{\\\"name\\\":\\\"5室\\\",\\\"value\\\":3,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(188,69,117,1)\\\"}}],\\\"isRadius\\\":true,\\\"roseType\\\":\\\"\\\",\\\"notCount\\\":false,\\\"center\\\":[\\\"160\\\",\\\"120\\\"],\\\"name\\\":\\\"\\\",\\\"minAngle\\\":0,\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"outside\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"\\\",\\\"fontSize\\\":\\\"8\\\",\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"pie\\\",\\\"radius\\\":[\\\"40%\\\",\\\"50%\\\"],\\\"autoSort\\\":false}],\\\"tooltip\\\":{\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":true,\\\"top\\\":10,\\\"text\\\":\\\"不同户型销售\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontWeight\\\":\\\"normal\\\",\\\"fontSize\\\":\\\"14\\\"},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1331919172472524801\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"huxingxiaoshou\",\"chartType\":\"pie.doughnut\",\"isTiming\":true,\"intervalTime\":\"5\",\"id\":\"MCJP8uqwe57YoCvF\"},\"layer_id\":\"MCJP8uqwe57YoCvF\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[7,12],[7,13],[7,14],[7,15]]},{\"row\":7,\"col\":4,\"colspan\":0,\"rowspan\":0,\"width\":\"662\",\"height\":\"222\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type \\\":\\\"value\\\"},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":0,\\\"interval\\\":0,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"data\\\":[\\\"1月\\\",\\\"2月\\\",\\\"3月\\\",\\\"4月\\\",\\\"5月\\\",\\\"6月\\\",\\\"7月\\\",\\\"8月\\\",\\\"9月\\\",\\\"10月\\\",\\\"11月\\\",\\\"12月\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#A98E8E\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type\\\":\\\"category\\\"},\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"成交量\\\",\\\"成交价\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"vertical\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#FBF8F8\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"grid\\\":{\\\"top\\\":58,\\\"left\\\":30,\\\"bottom\\\":43,\\\"right\\\":32},\\\"series\\\":[{\\\"barWidth\\\":15,\\\"stack\\\":\\\"1\\\",\\\"data\\\":[10,7,5,5,7,9,3,6,5,8,6,6],\\\"name\\\":\\\"成交量\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"#37A5B1\\\",\\\"barBorderRadius\\\":13},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":7,\\\"typeData\\\":[{\\\"name\\\":\\\"成交量\\\",\\\"type\\\":\\\"\\\",\\\"_index\\\":0,\\\"_rowKey\\\":136,\\\"stack\\\":\\\"1\\\"},{\\\"name\\\":\\\"成交价\\\",\\\"type\\\":\\\"\\\",\\\"stack\\\":\\\"1\\\",\\\"_index\\\":1,\\\"_rowKey\\\":139}]},{\\\"barWidth\\\":15,\\\"stack\\\":\\\"1\\\",\\\"data\\\":[5,5,12,5,5,5,5,10,5,5,5,5],\\\"name\\\":\\\"成交价\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"#2E72A7\\\",\\\"barBorderRadius\\\":13},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":7,\\\"typeData\\\":[{\\\"name\\\":\\\"成交量\\\",\\\"type\\\":\\\"\\\",\\\"_index\\\":0,\\\"_rowKey\\\":136,\\\"stack\\\":\\\"1\\\"},{\\\"name\\\":\\\"成交价\\\",\\\"type\\\":\\\"\\\",\\\"stack\\\":\\\"1\\\",\\\"_index\\\":1,\\\"_rowKey\\\":139}]}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"axisPointer\\\":{\\\"type\\\":\\\"shadow\\\"},\\\"trigger\\\":\\\"axis\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"padding\\\":[5,20,5,20],\\\"left\\\":\\\"left\\\",\\\"show\\\":true,\\\"text\\\":\\\"成交量和成交价趋势\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"14\\\",\\\"fontWeight\\\":\\\"normal\\\"},\\\"top\\\":10}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1331872643531526146\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"chengjiao1\",\"chartType\":\"bar.stack\",\"chartId\":\"\",\"isTiming\":true,\"intervalTime\":\"5\"},\"layer_id\":\"Nf6Xud4fZqEfvQw4\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[7,4],[7,5],[7,6],[7,7],[7,8],[7,9],[7,10],[7,11]]},{\"row\":16,\"col\":12,\"colspan\":0,\"rowspan\":0,\"width\":\"326\",\"height\":\"200\",\"config\":\"{\\\"radar\\\":[{\\\"indicator\\\":[{\\\"name\\\":\\\"房产证\\\",\\\"max\\\":520},{\\\"name\\\":\\\"购房发票\\\",\\\"max\\\":310},{\\\"name\\\":\\\"购房合同\\\",\\\"max\\\":380},{\\\"name\\\":\\\"预售合同\\\",\\\"max\\\":450},{\\\"name\\\":\\\"抵押合同\\\",\\\"max\\\":600},{\\\"name\\\":\\\"预收合同\\\",\\\"max\\\":350}],\\\"shape\\\":\\\"polygon\\\",\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"gray\\\",\\\"opacity\\\":0.5}},\\\"center\\\":[\\\"50%\\\",\\\"50%\\\"],\\\"name\\\":{\\\"formatter\\\":\\\"【{value}】\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#72ACD1\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"gray\\\",\\\"opacity\\\":0.5}}}],\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"售后产权\\\",\\\"单位产权\\\",\\\"个人产权\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"series\\\":[{\\\"type\\\":\\\"radar\\\",\\\"data\\\":[{\\\"name\\\":\\\"售后产权\\\",\\\"value\\\":[43,100,280,350,500,250],\\\"areaStyle\\\":{\\\"color\\\":\\\"#3F9AFB\\\",\\\"opacity\\\":1},\\\"lineStyle\\\":{\\\"color\\\":\\\"#2D8CF0\\\"}},{\\\"name\\\":\\\"单位产权\\\",\\\"value\\\":[190,50,140,280,310,150],\\\"areaStyle\\\":{\\\"color\\\":\\\"#A6F65C\\\",\\\"opacity\\\":1},\\\"lineStyle\\\":{\\\"color\\\":\\\"#55FE4D\\\"}},{\\\"name\\\":\\\"个人产权\\\",\\\"value\\\":[420,210,160,0,120,130],\\\"areaStyle\\\":{\\\"color\\\":\\\"rgba(188,69,117,1)\\\",\\\"opacity\\\":1},\\\"lineStyle\\\":{\\\"color\\\":\\\"rgba(188,69,117,1)\\\"}}]}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":true,\\\"top\\\":10,\\\"text\\\":\\\"不同产权、证件成交量\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#ffffff\\\",\\\"fontWeight\\\":\\\"normal\\\",\\\"fontSize\\\":\\\"14\\\"},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,20]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1331916030221602818\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"btchanquan\",\"chartType\":\"radar.basic\",\"isTiming\":true,\"intervalTime\":\"10\",\"id\":\"IWoBtyiRxjkEbkfD\"},\"layer_id\":\"IWoBtyiRxjkEbkfD\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[16,12],[16,13],[16,14],[16,15]]},{\"row\":16,\"col\":1,\"colspan\":0,\"rowspan\":0,\"width\":\"337\",\"height\":\"205\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":0,\\\"interval\\\":0,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"data\\\":[\\\"马小姐\\\",\\\"孙小姐\\\",\\\"王先生\\\",\\\"李先生\\\",\\\"赵小姐\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type\\\":\\\"category\\\"},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type \\\":\\\"value\\\"},\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"房子\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"grid\\\":{\\\"top\\\":55,\\\"left\\\":70,\\\"bottom\\\":40,\\\"right\\\":24},\\\"series\\\":[{\\\"barWidth\\\":13,\\\"data\\\":[20,15,12,10,7],\\\"name\\\":\\\"房子\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"\\\",\\\"barBorderRadius\\\":7},\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"top\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2,\\\"typeData\\\":[]}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"axisPointer\\\":{\\\"type\\\":\\\"shadow\\\"},\\\"trigger\\\":\\\"axis\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"padding\\\":[5,20,5,20],\\\"left\\\":\\\"left\\\",\\\"show\\\":true,\\\"text\\\":\\\"销售量成交排行榜\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"14\\\",\\\"fontWeight\\\":\\\"normal\\\"},\\\"top\\\":10}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1331514838211407873\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"cjpaihang\",\"chartType\":\"bar.multi.horizontal\",\"isTiming\":true,\"intervalTime\":\"5\"},\"layer_id\":\"Cror94F1kmbP71ip\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[16,1],[16,2],[16,3]]},{\"row\":16,\"col\":4,\"colspan\":0,\"rowspan\":0,\"width\":\"334\",\"height\":\"206\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":0,\\\"interval\\\":0,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"data\\\":[\\\"马小姐\\\",\\\"孙小姐\\\",\\\"王先生\\\",\\\"李先生\\\",\\\"赵小姐\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type\\\":\\\"category\\\"},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type \\\":\\\"value\\\"},\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"房子\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"grid\\\":{\\\"top\\\":55,\\\"left\\\":56,\\\"bottom\\\":38,\\\"right\\\":30},\\\"series\\\":[{\\\"barWidth\\\":13,\\\"data\\\":[20,15,12,10,7],\\\"name\\\":\\\"房子\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"\\\",\\\"barBorderRadius\\\":7},\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"top\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2,\\\"typeData\\\":[]}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"axisPointer\\\":{\\\"type\\\":\\\"shadow\\\"},\\\"trigger\\\":\\\"axis\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"padding\\\":[5,20,5,20],\\\"left\\\":\\\"left\\\",\\\"show\\\":true,\\\"text\\\":\\\"销售员成交金额\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"14\\\",\\\"fontWeight\\\":\\\"normal\\\"},\\\"top\\\":10}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1331514838211407873\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"cjpaihang\",\"chartType\":\"bar.multi.horizontal\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartId\":\"\"},\"layer_id\":\"pBOwp0Q0g4iuJCVm\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[16,4],[16,5],[16,6],[16,7]]},{\"row\":16,\"col\":8,\"colspan\":0,\"rowspan\":0,\"width\":\"324\",\"height\":\"206\",\"config\":\"{\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"简装\\\",\\\"中装\\\",\\\"精装\\\",\\\"豪装\\\",\\\"毛坯\\\"],\\\"top\\\":\\\"bottom\\\",\\\"orient\\\":\\\"vertical\\\",\\\"left\\\":\\\"left\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"series\\\":[{\\\"isRose\\\":false,\\\"data\\\":[{\\\"name\\\":\\\"简装\\\",\\\"value\\\":10,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(52,158,172,1)\\\"}},{\\\"name\\\":\\\"中装\\\",\\\"value\\\":10,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(56,131,185,1)\\\"}},{\\\"name\\\":\\\"精装\\\",\\\"value\\\":10,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(103,153,75,1)\\\"}},{\\\"name\\\":\\\"豪装\\\",\\\"value\\\":10,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(230,165,55,1)\\\"}},{\\\"name\\\":\\\"毛坯\\\",\\\"value\\\":10,\\\"itemStyle\\\":{\\\"color\\\":\\\"\\\"}}],\\\"isRadius\\\":false,\\\"roseType\\\":\\\"\\\",\\\"notCount\\\":false,\\\"center\\\":[\\\"180\\\",\\\"100\\\"],\\\"name\\\":\\\"\\\",\\\"minAngle\\\":0,\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"outside\\\",\\\"textStyle\\\":{\\\"fontSize\\\":\\\"10\\\",\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"pie\\\",\\\"radius\\\":\\\"52%\\\",\\\"autoSort\\\":false}],\\\"tooltip\\\":{\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":true,\\\"top\\\":10,\\\"text\\\":\\\"不同装修类型销售销量\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#ffffff\\\",\\\"fontWeight\\\":\\\"normal\\\",\\\"fontSize\\\":\\\"14\\\"},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1331878107552010242\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"zhuangxiu\",\"chartType\":\"pie.simple\",\"isTiming\":true,\"intervalTime\":\"5\",\"id\":\"rQgkcYfLy4x0EP6h\"},\"layer_id\":\"rQgkcYfLy4x0EP6h\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[16,8],[16,9],[16,10],[16,11]]}],\"area\":false,\"excel_config_id\":\"1331503965770223616\",\"printConfig\":{\"paper\":\"A3\",\"width\":297,\"height\":420,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"landscape\"},\"rows\":{\"0\":{\"cells\":{\"0\":{\"text\":\"\"},\"1\":{\"style\":60,\"merge\":[0,13],\"text\":\"房屋销售综合展示大屏\"}},\"height\":113},\"1\":{\"cells\":{\"1\":{\"merge\":[14,2],\"style\":43,\"text\":\" \",\"virtual\":\"5ggWQtDUvSopC4iL\"},\"2\":{\"text\":\" \",\"virtual\":\"5ggWQtDUvSopC4iL\"},\"3\":{\"text\":\" \",\"virtual\":\"5ggWQtDUvSopC4iL\"},\"4\":{\"style\":53,\"text\":\"成交量:\",\"merge\":[2,0],\"virtual\":\"5ggWQtDUvSopC4iL\"},\"5\":{\"text\":\"#{qingkuang.cjl}\",\"style\":64,\"merge\":[2,0]},\"7\":{\"style\":53,\"text\":\"成交金额:\",\"merge\":[2,0]},\"8\":{\"text\":\"#{qingkuang.cjje}\",\"style\":68,\"merge\":[2,0]},\"10\":{\"style\":53,\"text\":\"销售面积:\",\"merge\":[2,0]},\"11\":{\"text\":\"#{qingkuang.xsmj}\",\"style\":64,\"merge\":[2,0]},\"12\":{\"text\":\" \",\"virtual\":\"nk6I2RCefm9scS1k\"},\"13\":{\"text\":\" \",\"virtual\":\"nk6I2RCefm9scS1k\"},\"14\":{\"text\":\" \",\"virtual\":\"nk6I2RCefm9scS1k\"},\"15\":{\"text\":\" \",\"virtual\":\"nk6I2RCefm9scS1k\"}},\"isDrag\":true},\"2\":{\"cells\":{\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"3\":{\"cells\":{\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"4\":{\"cells\":{\"4\":{\"style\":58,\"text\":\"成交均价:\",\"merge\":[2,0]},\"5\":{\"text\":\"#{qingkuang.cjjj}\",\"style\":65,\"merge\":[2,0]},\"7\":{\"style\":58,\"text\":\"售房佣金:\",\"merge\":[2,0]},\"8\":{\"text\":\"#{qingkuang.sfyj}\",\"style\":65,\"merge\":[2,0]},\"10\":{\"style\":58,\"text\":\"预定客户:\",\"merge\":[2,0]},\"11\":{\"text\":\"#{qingkuang.ydkh}\",\"style\":65,\"merge\":[2,0]},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}},\"isDrag\":true,\"height\":25},\"5\":{\"cells\":{\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"6\":{\"cells\":{\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"7\":{\"cells\":{\"4\":{\"text\":\" \",\"virtual\":\"Nf6Xud4fZqEfvQw4\"},\"5\":{\"text\":\" \",\"virtual\":\"Nf6Xud4fZqEfvQw4\"},\"6\":{\"text\":\" \",\"virtual\":\"Nf6Xud4fZqEfvQw4\"},\"7\":{\"text\":\" \",\"virtual\":\"Nf6Xud4fZqEfvQw4\"},\"8\":{\"text\":\" \",\"virtual\":\"Nf6Xud4fZqEfvQw4\"},\"9\":{\"text\":\" \",\"virtual\":\"Nf6Xud4fZqEfvQw4\"},\"10\":{\"text\":\" \",\"virtual\":\"Nf6Xud4fZqEfvQw4\"},\"11\":{\"text\":\" \",\"virtual\":\"Nf6Xud4fZqEfvQw4\"},\"12\":{\"text\":\" \",\"virtual\":\"MCJP8uqwe57YoCvF\"},\"13\":{\"text\":\" \",\"virtual\":\"MCJP8uqwe57YoCvF\"},\"14\":{\"text\":\" \",\"virtual\":\"MCJP8uqwe57YoCvF\"},\"15\":{\"text\":\" \",\"virtual\":\"MCJP8uqwe57YoCvF\"}}},\"8\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"9\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"10\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"11\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"12\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"13\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"14\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"15\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"16\":{\"cells\":{\"1\":{\"style\":43,\"text\":\" \",\"merge\":[7,2],\"virtual\":\"Cror94F1kmbP71ip\"},\"2\":{\"text\":\" \",\"virtual\":\"Cror94F1kmbP71ip\"},\"3\":{\"text\":\" \",\"virtual\":\"Cror94F1kmbP71ip\"},\"4\":{\"text\":\" \",\"virtual\":\"pBOwp0Q0g4iuJCVm\"},\"5\":{\"text\":\" \",\"virtual\":\"pBOwp0Q0g4iuJCVm\"},\"6\":{\"text\":\" \",\"virtual\":\"pBOwp0Q0g4iuJCVm\"},\"7\":{\"text\":\" \",\"virtual\":\"pBOwp0Q0g4iuJCVm\"},\"8\":{\"text\":\" \",\"virtual\":\"rQgkcYfLy4x0EP6h\"},\"9\":{\"text\":\" \",\"virtual\":\"rQgkcYfLy4x0EP6h\"},\"10\":{\"text\":\" \",\"virtual\":\"rQgkcYfLy4x0EP6h\"},\"11\":{\"text\":\" \",\"virtual\":\"rQgkcYfLy4x0EP6h\"},\"12\":{\"text\":\" \",\"virtual\":\"IWoBtyiRxjkEbkfD\"},\"13\":{\"text\":\" \",\"virtual\":\"IWoBtyiRxjkEbkfD\"},\"14\":{\"text\":\" \",\"virtual\":\"IWoBtyiRxjkEbkfD\"},\"15\":{\"text\":\" \",\"virtual\":\"IWoBtyiRxjkEbkfD\"}}},\"17\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"18\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"19\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"20\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"21\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"22\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"23\":{\"cells\":{\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"24\":{\"cells\":{\"1\":{\"text\":\" \"},\"2\":{\"text\":\" \"},\"3\":{\"text\":\" \"},\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"text\":\" \"},\"13\":{\"text\":\" \"},\"14\":{\"text\":\" \"}}},\"len\":98},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":1463,\"displayConfig\":{},\"background\":{\"path\":\"https://static.jeecg.com/designreport/images/bg_1606961893275.png\",\"repeat\":\"repeat\",\"width\":\"\",\"height\":\"\"},\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"font\":{\"bold\":true}},{\"font\":{\"bold\":true,\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\"}},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\"}},{\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\",\"size\":18}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":18}},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\",\"size\":16}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":16}},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\",\"size\":16},\"align\":\"center\"},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":16},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"right\"},{\"align\":\"right\"},{\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"right\",\"font\":{\"size\":14}},{\"align\":\"right\",\"font\":{\"size\":14}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"right\",\"font\":{\"size\":12}},{\"align\":\"right\",\"font\":{\"size\":12}},{\"align\":\"center\",\"font\":{\"size\":12}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"center\",\"font\":{\"size\":12}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"size\":12}},{\"font\":{\"size\":12}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"right\",\"font\":{\"size\":11}},{\"align\":\"right\",\"font\":{\"size\":11}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"center\",\"font\":{\"size\":11}},{\"align\":\"center\",\"font\":{\"size\":11}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"size\":11}},{\"font\":{\"size\":11}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"right\",\"font\":{\"size\":11,\"bold\":true}},{\"align\":\"right\",\"font\":{\"size\":11,\"bold\":true}},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\",\"size\":16},\"align\":\"center\",\"color\":\"#ffffff\"},{\"color\":\"#ffffff\"},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\",\"size\":22},\"align\":\"center\",\"color\":\"#ffffff\"},{\"color\":\"#ffffff\",\"font\":{\"size\":22}},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\",\"size\":22},\"align\":\"center\",\"color\":\"#000100\"},{\"color\":\"#000100\",\"font\":{\"size\":22}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"right\",\"font\":{\"size\":11,\"bold\":true},\"color\":\"#ffffff\"},{\"align\":\"right\",\"font\":{\"size\":11,\"bold\":true},\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"center\",\"font\":{\"size\":11},\"color\":\"#ffffff\"},{\"align\":\"center\",\"font\":{\"size\":11},\"color\":\"#ffffff\"},{\"font\":{\"size\":11},\"color\":\"#ffffff\"},{},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"right\",\"font\":{\"size\":11,\"bold\":false},\"color\":\"#ffffff\"},{\"align\":\"right\",\"font\":{\"size\":11,\"bold\":false},\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"right\",\"font\":{\"size\":11,\"bold\":true,\"name\":\"宋体\"},\"color\":\"#ffffff\"},{\"align\":\"right\",\"font\":{\"size\":11,\"bold\":true,\"name\":\"宋体\"},\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"right\",\"font\":{\"size\":11,\"bold\":false,\"name\":\"宋体\"},\"color\":\"#ffffff\"},{\"align\":\"right\",\"font\":{\"size\":11,\"bold\":false,\"name\":\"宋体\"},\"color\":\"#ffffff\"},{\"align\":\"center\",\"font\":{\"size\":11},\"color\":\"#ffffff\",\"border\":{\"right\":[\"thin\",\"#eee\"]}},{\"align\":\"right\",\"font\":{\"size\":16,\"bold\":false,\"name\":\"宋体\"},\"color\":\"#ffffff\"},{\"align\":\"right\",\"font\":{\"size\":15,\"bold\":false,\"name\":\"宋体\"},\"color\":\"#ffffff\"},{\"align\":\"right\",\"font\":{\"size\":14,\"bold\":false,\"name\":\"宋体\"},\"color\":\"#ffffff\"},{\"align\":\"center\",\"font\":{\"size\":14},\"color\":\"#ffffff\"},{\"font\":{\"size\":14},\"color\":\"#ffffff\"},{\"align\":\"left\",\"font\":{\"size\":14},\"color\":\"#ffffff\"},{\"align\":\"left\",\"font\":{\"size\":14,\"bold\":false,\"name\":\"宋体\"},\"color\":\"#ffffff\"},{\"align\":\"right\",\"font\":{\"size\":14,\"bold\":false,\"name\":\"宋体\"},\"color\":\"#ffffff\",\"valign\":\"top\"},{\"align\":\"left\",\"font\":{\"size\":14},\"color\":\"#ffffff\",\"valign\":\"top\"},{\"font\":{\"bold\":true,\"name\":\"宋体\",\"size\":22},\"align\":\"center\",\"color\":\"#ffffff\"},{\"color\":\"#ffffff\",\"font\":{\"size\":22,\"name\":\"宋体\"}},{\"align\":\"left\",\"font\":{\"size\":14,\"name\":\"宋体\"},\"color\":\"#ffffff\",\"valign\":\"top\"},{\"align\":\"left\",\"font\":{\"size\":14,\"name\":\"宋体\"},\"color\":\"#ffffff\"},{\"align\":\"left\",\"font\":{\"size\":14,\"name\":\"宋体\"},\"color\":\"#ffff01\"},{\"align\":\"left\",\"font\":{\"size\":14,\"name\":\"宋体\"},\"color\":\"#ffff01\",\"valign\":\"top\"},{\"align\":\"left\",\"font\":{\"size\":14,\"name\":\"宋体\"},\"color\":\"#ffffff\",\"bgcolor\":\"#ffff01\"},{\"align\":\"left\",\"font\":{\"size\":14,\"name\":\"宋体\"},\"color\":\"#ffffff\",\"bgcolor\":\"\"},{\"align\":\"left\",\"font\":{\"size\":14,\"name\":\"宋体\"},\"color\":\"#ffff01\",\"bgcolor\":\"\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":34},\"3\":{\"width\":140},\"4\":{\"width\":136},\"5\":{\"width\":79},\"6\":{\"width\":1},\"7\":{\"width\":123},\"8\":{\"width\":102},\"9\":{\"width\":24},\"11\":{\"width\":100},\"14\":{\"width\":124},\"len\":50},\"merges\":[\"B1:O1\",\"B2:D16\",\"E2:E4\",\"F2:F4\",\"H2:H4\",\"I2:I4\",\"K2:K4\",\"L2:L4\",\"E5:E7\",\"F5:F7\",\"H5:H7\",\"I5:I7\",\"K5:K7\",\"L5:L7\",\"B17:D24\"]}', NULL, 'https://static.jeecg.com/designreport/images/QQ截图20201125161646_1606705892603.png', 'admin', '2020-11-25 15:50:43', 'admin', '2021-07-13 10:05:37', 0, NULL, NULL, 1, 713, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1334378897302753280', '20201203140834', '区域销售表', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":false,\"printElWidth\":718,\"excel_config_id\":\"1334378897302753280\",\"printElHeight\":1047,\"rows\":{\"0\":{\"cells\":{\"1\":{\"text\":\"区域销售表\",\"merge\":[0,22],\"style\":10},\"2\":{\"style\":10},\"3\":{\"style\":10},\"4\":{\"style\":10},\"5\":{\"style\":10},\"6\":{\"style\":10},\"7\":{\"style\":10},\"8\":{\"style\":10},\"9\":{\"style\":10},\"10\":{\"style\":10},\"11\":{\"style\":10},\"12\":{\"style\":10},\"13\":{\"style\":10},\"14\":{\"style\":10},\"15\":{\"style\":10},\"16\":{\"style\":10},\"17\":{\"style\":10},\"18\":{\"style\":10},\"19\":{\"style\":10},\"20\":{\"style\":10},\"21\":{\"style\":10},\"22\":{\"style\":10},\"23\":{\"style\":10}},\"height\":72},\"1\":{\"cells\":{\"0\":{\"style\":64},\"1\":{\"text\":\"区域\",\"merge\":[1,0],\"style\":65},\"2\":{\"text\":\"省份\",\"merge\":[1,0],\"style\":65},\"3\":{\"text\":\"1月\",\"merge\":[0,2],\"style\":65},\"4\":{\"style\":66,\"text\":\" \"},\"5\":{\"style\":66,\"text\":\" \"},\"6\":{\"text\":\"2月\",\"merge\":[0,2],\"style\":65},\"7\":{\"style\":66,\"text\":\" \"},\"8\":{\"style\":66,\"text\":\" \"},\"9\":{\"text\":\"3月\",\"merge\":[0,2],\"style\":65},\"10\":{\"style\":66,\"text\":\" \"},\"11\":{\"style\":66,\"text\":\" \"},\"12\":{\"text\":\"4月\",\"merge\":[0,2],\"style\":65},\"13\":{\"style\":66,\"text\":\" \"},\"14\":{\"style\":66,\"text\":\" \"},\"15\":{\"text\":\"5月\",\"merge\":[0,2],\"style\":65},\"16\":{\"style\":66,\"text\":\" \"},\"17\":{\"style\":66,\"text\":\" \"},\"18\":{\"text\":\"6月\",\"merge\":[0,2],\"style\":65},\"19\":{\"style\":66,\"text\":\" \"},\"20\":{\"style\":66,\"text\":\" \"},\"21\":{\"text\":\"总合计\",\"merge\":[0,2],\"style\":65},\"22\":{\"style\":66,\"text\":\" \"},\"23\":{\"style\":66,\"text\":\" \"},\"24\":{\"style\":64},\"25\":{\"style\":64}},\"height\":22},\"2\":{\"cells\":{\"0\":{\"style\":64},\"1\":{\"style\":66,\"text\":\" \"},\"2\":{\"style\":65,\"text\":\" \"},\"3\":{\"text\":\"销售额\",\"style\":65},\"4\":{\"text\":\"搭赠\",\"style\":65},\"5\":{\"text\":\"比例\",\"style\":65},\"6\":{\"text\":\"销售额\",\"style\":65},\"7\":{\"text\":\"搭赠\",\"style\":65},\"8\":{\"text\":\"比例\",\"style\":65},\"9\":{\"text\":\"销售额\",\"style\":65},\"10\":{\"text\":\"搭赠\",\"style\":65},\"11\":{\"text\":\"比例\",\"style\":65},\"12\":{\"text\":\"销售额\",\"style\":65},\"13\":{\"text\":\"搭赠\",\"style\":65},\"14\":{\"text\":\"比例\",\"style\":65},\"15\":{\"text\":\"销售额\",\"style\":65},\"16\":{\"text\":\"搭赠\",\"style\":65},\"17\":{\"text\":\"比例\",\"style\":65},\"18\":{\"text\":\"销售额\",\"style\":65},\"19\":{\"text\":\"搭赠\",\"style\":65},\"20\":{\"text\":\"比例\",\"style\":65},\"21\":{\"text\":\"销售额\",\"style\":65},\"22\":{\"text\":\"搭赠\",\"style\":65},\"23\":{\"text\":\"比例\",\"style\":65},\"24\":{\"style\":64},\"25\":{\"style\":64}},\"height\":24},\"3\":{\"cells\":{\"0\":{\"style\":67},\"1\":{\"text\":\"#{quyuxiaoshou.group(region)}\",\"style\":52,\"aggregate\":\"group\"},\"2\":{\"text\":\"#{quyuxiaoshou.province}\",\"style\":53},\"3\":{\"text\":\"#{quyuxiaoshou.sales_1}\",\"style\":17},\"4\":{\"text\":\"#{quyuxiaoshou.gift_1}\",\"style\":17},\"5\":{\"text\":\"#{quyuxiaoshou.proportion_1}\",\"style\":17},\"6\":{\"text\":\"#{quyuxiaoshou.sales_2}\",\"style\":17},\"7\":{\"text\":\"#{quyuxiaoshou.gift_2}\",\"style\":17},\"8\":{\"text\":\"#{quyuxiaoshou.proportion_2}\",\"style\":17},\"9\":{\"text\":\"#{quyuxiaoshou.sales_3}\",\"style\":17},\"10\":{\"text\":\"#{quyuxiaoshou.gift_3}\",\"style\":17},\"11\":{\"text\":\"#{quyuxiaoshou.proportion_3}\",\"style\":17},\"12\":{\"text\":\"#{quyuxiaoshou.sales_4}\",\"style\":17},\"13\":{\"text\":\"#{quyuxiaoshou.gift_4}\",\"style\":17},\"14\":{\"text\":\"#{quyuxiaoshou.proportion_4}\",\"style\":17},\"15\":{\"text\":\"#{quyuxiaoshou.sales_5}\",\"style\":17},\"16\":{\"text\":\"#{quyuxiaoshou.gift_5}\",\"style\":17},\"17\":{\"text\":\"#{quyuxiaoshou.proportion_5}\",\"style\":15},\"18\":{\"text\":\"#{quyuxiaoshou.sales_6}\",\"style\":15},\"19\":{\"text\":\"#{quyuxiaoshou.gift_6}\",\"style\":15},\"20\":{\"text\":\"#{quyuxiaoshou.proportion_6}\",\"style\":15},\"21\":{\"text\":\"#{quyuxiaoshou.sales_z}\",\"style\":15},\"22\":{\"text\":\"#{quyuxiaoshou.gift_z}\",\"style\":15},\"23\":{\"text\":\"#{quyuxiaoshou.proportion_z}\",\"style\":15},\"24\":{\"style\":67},\"25\":{\"style\":67}},\"isDrag\":true,\"height\":56},\"4\":{\"cells\":{\"0\":{\"style\":64},\"1\":{\"style\":39,\"text\":\"总计\",\"merge\":[0,1]},\"3\":{\"style\":68,\"text\":\"=SUM(D4)\"},\"4\":{\"style\":69,\"text\":\"=SUM(E4)\"},\"5\":{\"style\":70,\"text\":\"=SUM(F4)\"},\"6\":{\"style\":69,\"text\":\"=SUM(G4)\"},\"7\":{\"style\":69,\"text\":\"=SUM(H4)\"},\"8\":{\"style\":70,\"text\":\"=SUM(I4)\"},\"9\":{\"style\":69,\"text\":\"=SUM(J4)\"},\"10\":{\"style\":69,\"text\":\"=SUM(K4)\"},\"11\":{\"style\":70,\"text\":\"=SUM(L4)\"},\"12\":{\"style\":69,\"text\":\"=SUM(M4)\"},\"13\":{\"style\":69,\"text\":\"=SUM(N4)\"},\"14\":{\"style\":70,\"text\":\"=SUM(O4)\"},\"15\":{\"style\":69,\"text\":\"=SUM(P4)\"},\"16\":{\"style\":69,\"text\":\"=SUM(Q4)\"},\"17\":{\"style\":70,\"text\":\"=SUM(R4)\"},\"18\":{\"style\":69,\"text\":\"=SUM(S4)\"},\"19\":{\"style\":69,\"text\":\"=SUM(T4)\"},\"20\":{\"style\":70,\"text\":\"=SUM(U4)\"},\"21\":{\"style\":69,\"text\":\"=SUM(V4)\"},\"22\":{\"style\":69,\"text\":\"=SUM(W4)\"},\"23\":{\"style\":69,\"text\":\"=SUM(X4)\"},\"24\":{\"style\":64},\"25\":{\"style\":64}},\"height\":38},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"groupField\":\"quyuxiaoshou.region\",\"freeze\":\"A1\",\"dataRectWidth\":1554,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"bgcolor\":\"\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\"},{\"bgcolor\":\"#02a274\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"bfbfbf\"],\"top\":[\"thin\",\"bfbfbf\"],\"left\":[\"thin\",\"bfbfbf\"],\"right\":[\"thin\",\"bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"bfbfbf\"],\"top\":[\"thin\",\"bfbfbf\"],\"left\":[\"thin\",\"bfbfbf\"],\"right\":[\"thin\",\"bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"隶书\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#7f7f7f\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":true}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"font\":{\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#ddefe8\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":true,\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"font\":{\"bold\":true,\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"华文中宋\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Arial\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#aedac8\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"bgcolor\":\"#aedac8\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#aedac8\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"bgcolor\":\"#aedac8\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"bgcolor\":\"#aedac8\",\"align\":\"center\",\"format\":\"number\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"bgcolor\":\"#aedac8\",\"align\":\"center\",\"format\":\"normal\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#aedac8\",\"align\":\"center\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"font\":{\"bold\":false,\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#aedac8\"},{\"font\":{\"size\":10}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10},\"bgcolor\":\"#aedac8\",\"align\":\"center\",\"format\":\"normal\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10},\"bgcolor\":\"#aedac8\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#aedac8\",\"font\":{\"size\":10}},{\"font\":{\"size\":10},\"bgcolor\":\"#aedac8\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":10}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"font\":{\"bold\":false,\"size\":10}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#ddefe8\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#ddefe8\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":10,\"name\":\"宋体\"}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"font\":{\"bold\":false,\"size\":10,\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#ddefe8\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"宋体\"},\"align\":\"center\",\"color\":\"#262626\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#aedac8\"},{\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"宋体\"},\"bgcolor\":\"#aedac8\",\"align\":\"center\",\"format\":\"normal\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"宋体\"},\"bgcolor\":\"#aedac8\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#aedac8\",\"font\":{\"size\":10,\"name\":\"宋体\"}},{\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":10,\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"font\":{\"bold\":false,\"size\":10,\"name\":\"Microsoft YaHei\"}},{\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"},\"bgcolor\":\"#aedac8\",\"align\":\"center\",\"format\":\"normal\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"},\"bgcolor\":\"#aedac8\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#aedac8\",\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"}}],\"validations\":[],\"isGroup\":true,\"cols\":{\"0\":{\"width\":20},\"1\":{\"width\":84},\"2\":{\"width\":81},\"3\":{\"width\":75},\"4\":{\"width\":63},\"5\":{\"width\":59},\"6\":{\"width\":70},\"7\":{\"width\":57},\"8\":{\"width\":60},\"9\":{\"width\":75},\"10\":{\"width\":66},\"11\":{\"width\":64},\"12\":{\"width\":70},\"13\":{\"width\":61},\"14\":{\"width\":61},\"15\":{\"width\":70},\"16\":{\"width\":58},\"17\":{\"width\":63},\"18\":{\"width\":60},\"19\":{\"width\":63},\"20\":{\"width\":59},\"21\":{\"width\":73},\"22\":{\"width\":69},\"23\":{\"width\":73},\"len\":50},\"merges\":[\"B2:B3\",\"C2:C3\",\"D2:F2\",\"G2:I2\",\"J2:L2\",\"M2:O2\",\"P2:R2\",\"S2:U2\",\"V2:X2\",\"B1:X1\",\"B5:C5\"]}', NULL, 'https://static.jeecg.com/designreport/images/quyu_1607069899537.png', 'admin', '2020-12-03 14:08:34', 'admin', '2021-07-13 05:39:14', 0, NULL, NULL, 1, 444, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1334420681185566722', '202012031408346166', '学校经费一览表', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":{\"sri\":7,\"sci\":1,\"eri\":7,\"eci\":2,\"width\":216,\"height\":25},\"printElWidth\":718,\"excel_config_id\":\"1334420681185566722\",\"printElHeight\":1047,\"rows\":{\"0\":{\"cells\":{\"1\":{\"text\":\"学校经费一览表\",\"merge\":[0,22],\"style\":10},\"2\":{\"style\":10},\"3\":{\"style\":10},\"4\":{\"style\":10},\"5\":{\"style\":10},\"6\":{\"style\":10},\"7\":{\"style\":10},\"8\":{\"style\":10},\"9\":{\"style\":10},\"10\":{\"style\":10},\"11\":{\"style\":10},\"12\":{\"style\":10},\"13\":{\"style\":10},\"14\":{\"style\":10},\"15\":{\"style\":10},\"16\":{\"style\":10},\"17\":{\"style\":10},\"18\":{\"style\":10},\"19\":{\"style\":10},\"20\":{\"style\":10},\"21\":{\"style\":10},\"22\":{\"style\":10},\"23\":{\"style\":10}},\"height\":72},\"1\":{\"cells\":{\"1\":{\"text\":\"学校类别\",\"style\":221,\"merge\":[4,0]},\"2\":{\"merge\":[4,0],\"style\":222,\"text\":\"学校名称\"},\"3\":{\"text\":\"财政教育经费投入(万元)\",\"merge\":[0,8],\"style\":84},\"4\":{\"style\":40,\"text\":\" \"},\"5\":{\"style\":40,\"text\":\" \"},\"6\":{\"style\":40,\"text\":\" \"},\"7\":{\"style\":40,\"text\":\" \"},\"8\":{\"style\":40,\"text\":\" \"},\"9\":{\"style\":40,\"text\":\" \"},\"10\":{\"style\":40,\"text\":\" \"},\"11\":{\"style\":40,\"text\":\" \"},\"12\":{\"text\":\"其他投入\",\"merge\":[0,7],\"style\":84},\"13\":{\"text\":\" \",\"style\":40},\"14\":{\"text\":\" \",\"style\":40},\"15\":{\"text\":\" \",\"style\":40},\"16\":{\"text\":\" \",\"style\":40},\"17\":{\"text\":\" \",\"style\":40},\"18\":{\"text\":\" \",\"style\":40},\"19\":{\"text\":\" \",\"style\":40},\"20\":{\"style\":84,\"text\":\"补充资料\",\"merge\":[0,4]},\"21\":{\"text\":\" \",\"style\":40},\"22\":{\"text\":\" \",\"style\":40},\"23\":{\"text\":\" \",\"style\":40},\"24\":{\"text\":\" \",\"style\":40}},\"height\":28},\"2\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":40},\"2\":{\"style\":222,\"text\":\" \"},\"3\":{\"text\":\"总计\",\"style\":117,\"merge\":[3,0]},\"4\":{\"text\":\"教育事业费\",\"style\":117,\"merge\":[0,6]},\"5\":{\"style\":118,\"text\":\" \"},\"6\":{\"style\":118,\"text\":\" \"},\"7\":{\"style\":118,\"text\":\" \"},\"8\":{\"style\":118,\"text\":\" \"},\"9\":{\"style\":118,\"text\":\" \"},\"10\":{\"style\":118,\"text\":\" \"},\"11\":{\"text\":\"基础拨款\",\"style\":117,\"merge\":[3,0]},\"12\":{\"text\":\"村投入\",\"style\":117,\"merge\":[0,4]},\"13\":{\"text\":\" \",\"style\":223},\"14\":{\"text\":\" \",\"style\":223},\"15\":{\"text\":\" \",\"style\":223},\"16\":{\"text\":\" \",\"style\":223},\"17\":{\"text\":\"社会捐款\",\"style\":117,\"merge\":[0,2]},\"18\":{\"text\":\" \",\"style\":223},\"19\":{\"text\":\" \",\"style\":223},\"20\":{\"style\":126,\"merge\":[0,4],\"text\":\"信息化建设\"},\"21\":{\"style\":122,\"text\":\" \"},\"22\":{\"style\":122,\"text\":\" \"},\"23\":{\"style\":122,\"text\":\" \"},\"24\":{\"style\":122,\"text\":\" \"}},\"height\":24},\"3\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":40},\"2\":{\"style\":222,\"text\":\" \"},\"3\":{\"style\":118,\"text\":\" \"},\"4\":{\"merge\":[0,1],\"text\":\"合计\",\"style\":121},\"5\":{\"style\":122,\"text\":\" \"},\"6\":{\"merge\":[2,0],\"text\":\"人员经费\",\"style\":121},\"7\":{\"merge\":[2,0],\"text\":\"日常公用费用\",\"style\":123},\"8\":{\"merge\":[0,2],\"text\":\"项目经费\",\"style\":121},\"9\":{\"style\":122,\"text\":\" \"},\"10\":{\"style\":122,\"text\":\" \"},\"11\":{\"style\":118,\"text\":\" \"},\"12\":{\"merge\":[2,0],\"text\":\"合计\",\"style\":121},\"13\":{\"merge\":[0,3],\"text\":\"其中\",\"style\":121},\"14\":{\"text\":\" \",\"style\":223},\"15\":{\"text\":\" \",\"style\":223},\"16\":{\"text\":\" \",\"style\":223},\"17\":{\"merge\":[2,0],\"text\":\"合计\",\"style\":121},\"18\":{\"merge\":[0,1],\"text\":\"其中\",\"style\":121},\"19\":{\"style\":122,\"text\":\" \"},\"20\":{\"merge\":[2,0],\"text\":\"本年投入金额(万元)\",\"style\":230},\"21\":{\"merge\":[0,1],\"text\":\"电脑数(台数)\",\"style\":121},\"22\":{\"style\":122,\"text\":\" \"},\"23\":{\"merge\":[0,1],\"text\":\"校园网数(个)\",\"style\":121},\"24\":{\"style\":122,\"text\":\" \"}}},\"4\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":40},\"2\":{\"style\":222,\"text\":\" \"},\"3\":{\"style\":118,\"text\":\" \"},\"4\":{\"merge\":[1,0],\"text\":\"金额\",\"style\":126},\"5\":{\"merge\":[1,0],\"text\":\"比上年增长(%)\",\"style\":127},\"6\":{\"style\":122,\"text\":\" \"},\"7\":{\"style\":123,\"text\":\" \"},\"8\":{\"merge\":[1,0],\"text\":\"合计\",\"style\":121},\"9\":{\"merge\":[0,1],\"text\":\"其中\",\"style\":121},\"10\":{\"style\":122,\"text\":\" \"},\"11\":{\"style\":118,\"text\":\" \"},\"12\":{\"style\":121,\"text\":\" \"},\"13\":{\"merge\":[1,0],\"text\":\"人员经费\",\"style\":131},\"14\":{\"merge\":[1,0],\"text\":\"日常公用费用\",\"style\":131},\"15\":{\"merge\":[1,0],\"text\":\"项目经费\",\"style\":131},\"16\":{\"merge\":[1,0],\"text\":\"基建投入\",\"style\":131},\"17\":{\"style\":121,\"text\":\" \"},\"18\":{\"merge\":[1,0],\"text\":\"项目经费\",\"style\":131},\"19\":{\"merge\":[1,0],\"text\":\"基础投入\",\"style\":131},\"20\":{\"style\":231,\"text\":\" \"},\"21\":{\"merge\":[1,0],\"text\":\"合计\",\"style\":121},\"22\":{\"merge\":[1,0],\"text\":\"本年购置数\",\"style\":121},\"23\":{\"style\":121,\"merge\":[1,0],\"text\":\"合计\"},\"24\":{\"merge\":[1,0],\"text\":\"本年建成数\",\"style\":121}}},\"5\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":40},\"2\":{\"style\":222,\"text\":\" \"},\"3\":{\"style\":118,\"text\":\" \"},\"4\":{\"style\":126,\"text\":\" \"},\"5\":{\"style\":129,\"text\":\" \"},\"6\":{\"style\":121,\"text\":\" \"},\"7\":{\"style\":130,\"text\":\" \"},\"8\":{\"style\":121,\"text\":\" \"},\"9\":{\"text\":\"标准化建设\",\"style\":131},\"10\":{\"text\":\"信息化建设\",\"style\":121},\"11\":{\"style\":118,\"text\":\" \"},\"12\":{\"style\":121,\"text\":\" \"},\"13\":{\"text\":\" \",\"style\":223},\"14\":{\"style\":131,\"text\":\" \"},\"15\":{\"text\":\" \",\"style\":223},\"16\":{\"style\":131,\"text\":\" \"},\"17\":{\"style\":121,\"text\":\" \"},\"18\":{\"text\":\" \",\"style\":223},\"19\":{\"style\":131,\"text\":\" \"},\"20\":{\"style\":231,\"text\":\" \"},\"21\":{\"style\":121,\"text\":\" \"},\"22\":{\"style\":122,\"text\":\" \"},\"23\":{\"style\":131,\"text\":\" \"},\"24\":{\"style\":122,\"text\":\" \"}}},\"6\":{\"cells\":{\"0\":{\"style\":236},\"1\":{\"text\":\"#{laiyuan.group(class)}\",\"style\":233,\"aggregate\":\"group\"},\"2\":{\"text\":\"#{laiyuan.school}\",\"style\":234},\"3\":{\"style\":15,\"text\":\"=SUM(E7,I7)\"},\"4\":{\"style\":15,\"text\":\"=SUM(G7,H7)\"},\"5\":{\"text\":\"#{laiyuan.lv}\",\"style\":12},\"6\":{\"text\":\"#{laiyuan.renyuan_jy}\",\"style\":12},\"7\":{\"text\":\"#{laiyuan.richang_jy}\",\"style\":12},\"8\":{\"style\":12,\"text\":\"=SUM(J7,K7)\"},\"9\":{\"text\":\"#{laiyuan.biaozhun_jy}\",\"style\":12},\"10\":{\"text\":\"#{laiyuan.xinxi_jy}\",\"style\":12},\"11\":{\"text\":\"#{laiyuan.jichubokuan_jy}\",\"style\":12},\"12\":{\"style\":12,\"text\":\"=SUM(N7,O7)\"},\"13\":{\"text\":\"#{laiyuan.renyuan_ct}\",\"style\":12},\"14\":{\"text\":\"#{laiyuan.richang_ct}\",\"style\":12},\"15\":{\"text\":\"#{laiyuan.xiangmu_ct}\",\"style\":12},\"16\":{\"text\":\"#{laiyuan.jichubokuan_ct}\",\"style\":12},\"17\":{\"style\":12,\"text\":\"=SUM(S7,T7)\"},\"18\":{\"text\":\"#{laiyuan.xiangmu_sh}\",\"style\":12},\"19\":{\"text\":\"#{laiyuan.jichubokuan_sh}\",\"style\":12},\"20\":{\"style\":12,\"text\":\"=SUM(V7,X7)\"},\"21\":{\"style\":12,\"text\":\"#{laiyuan.diannao}\"},\"22\":{\"text\":\"#{laiyuan.diannao}\",\"style\":12},\"23\":{\"style\":12,\"text\":\"#{laiyuan.xiaoyuanwang}\"},\"24\":{\"text\":\"#{laiyuan.xiaoyuanwang}\",\"style\":12},\"25\":{\"style\":236}},\"isDrag\":true},\"7\":{\"cells\":{\"1\":{\"text\":\"总计\",\"style\":226,\"rendered\":\"\",\"merge\":[0,1]},\"3\":{\"style\":228,\"text\":\"=SUM(D7)\"},\"4\":{\"style\":228,\"text\":\"=SUM(E7)\"},\"5\":{\"style\":228,\"text\":\"\"},\"6\":{\"style\":228,\"text\":\"=SUM(G7)\"},\"7\":{\"style\":228,\"text\":\"=SUM(H7)\"},\"8\":{\"style\":228,\"text\":\"=SUM(I7)\"},\"9\":{\"style\":228,\"text\":\"=SUM(J7)\"},\"10\":{\"style\":228,\"text\":\"=SUM(K7)\"},\"11\":{\"style\":228,\"text\":\"=SUM(L7)\"},\"12\":{\"style\":228,\"text\":\"=SUM(M7)\"},\"13\":{\"style\":229,\"text\":\"=SUM(N7)\"},\"14\":{\"style\":229,\"text\":\"=SUM(O7)\"},\"15\":{\"style\":229,\"text\":\"=SUM(P7)\"},\"16\":{\"style\":229,\"text\":\"=SUM(Q7)\"},\"17\":{\"style\":229,\"text\":\"=SUM(R7)\"},\"18\":{\"style\":229,\"text\":\"=SUM(S7)\"},\"19\":{\"style\":229,\"text\":\"=SUM(T7)\"},\"20\":{\"style\":229,\"text\":\"=SUM(U7)\"},\"21\":{\"style\":229,\"text\":\"=SUM(V8)\"},\"22\":{\"style\":229,\"text\":\"=SUM(W7)\"},\"23\":{\"style\":232,\"text\":\"=SUM(X7)\"},\"24\":{\"style\":229,\"text\":\"=SUM(Y7)\"}}},\"9\":{\"cells\":{\"4\":{\"lineStart\":\"leftbottom\",\"text\":\"\"}}},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"groupField\":\"laiyuan.class\",\"freeze\":\"A1\",\"dataRectWidth\":1738,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"bgcolor\":\"\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\"},{\"bgcolor\":\"#02a274\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"bfbfbf\"],\"top\":[\"thin\",\"bfbfbf\"],\"left\":[\"thin\",\"bfbfbf\"],\"right\":[\"thin\",\"bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"bfbfbf\"],\"top\":[\"thin\",\"bfbfbf\"],\"left\":[\"thin\",\"bfbfbf\"],\"right\":[\"thin\",\"bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"隶书\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#7f7f7f\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":true}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"font\":{\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#ddefe8\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":true,\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"font\":{\"bold\":true,\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"华文中宋\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Arial\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#aedac8\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"bgcolor\":\"#aedac8\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#aedac8\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"bgcolor\":\"#aedac8\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"bgcolor\":\"#aedac8\",\"align\":\"center\",\"format\":\"number\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"bgcolor\":\"#aedac8\",\"align\":\"center\",\"format\":\"normal\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#aedac8\",\"align\":\"center\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"font\":{\"bold\":false,\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"color\":\"#262626\",\"bgcolor\":\"#aedac8\"},{\"font\":{\"size\":10}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10},\"bgcolor\":\"#aedac8\",\"align\":\"center\",\"format\":\"normal\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10},\"bgcolor\":\"#aedac8\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#aedac8\",\"font\":{\"size\":10}},{\"font\":{\"size\":10},\"bgcolor\":\"#aedac8\"},{\"bgcolor\":\"#02a274\",\"font\":{\"size\":9}},{\"bgcolor\":\"#02a274\",\"font\":{\"size\":9},\"align\":\"center\"},{\"bgcolor\":\"#02a274\",\"font\":{\"size\":9},\"align\":\"center\",\"color\":\"#ffffff\"},{\"textwrap\":true},{\"textwrap\":true,\"font\":{\"size\":9}},{\"textwrap\":true,\"font\":{\"size\":9},\"bgcolor\":\"#02a274\"},{\"textwrap\":true,\"font\":{\"size\":9},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":9}},{\"color\":\"#000100\"},{\"bgcolor\":\"#02a274\",\"font\":{\"size\":9},\"align\":\"center\",\"color\":\"#000100\"},{\"textwrap\":true,\"font\":{\"size\":9},\"bgcolor\":\"#02a274\",\"color\":\"#000100\"},{\"bgcolor\":\"\",\"font\":{\"size\":9},\"align\":\"center\",\"color\":\"#000100\"},{\"textwrap\":true,\"font\":{\"size\":9},\"bgcolor\":\"\",\"color\":\"#000100\"},{\"align\":\"center\",\"bgcolor\":\"\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":9}},{\"color\":\"#000100\",\"bgcolor\":\"\"},{\"textwrap\":true,\"font\":{\"size\":9},\"bgcolor\":\"\",\"color\":\"#000100\",\"align\":\"center\"},{\"font\":{\"size\":9}},{\"font\":{\"size\":9},\"align\":\"center\"},{\"textwrap\":true,\"align\":\"center\"},{\"font\":{\"size\":9},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#595959\"],\"top\":[\"thin\",\"#595959\"],\"left\":[\"thin\",\"#595959\"],\"right\":[\"thin\",\"#595959\"]}},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#595959\"],\"top\":[\"thin\",\"#595959\"],\"left\":[\"thin\",\"#595959\"],\"right\":[\"thin\",\"#595959\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#595959\"],\"top\":[\"thin\",\"#595959\"],\"left\":[\"thin\",\"#595959\"],\"right\":[\"thin\",\"#595959\"]}},{\"bgcolor\":\"\",\"font\":{\"size\":9},\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#595959\"],\"top\":[\"thin\",\"#595959\"],\"left\":[\"thin\",\"#595959\"],\"right\":[\"thin\",\"#595959\"]}},{\"textwrap\":true,\"font\":{\"size\":9},\"bgcolor\":\"\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#595959\"],\"top\":[\"thin\",\"#595959\"],\"left\":[\"thin\",\"#595959\"],\"right\":[\"thin\",\"#595959\"]}},{\"font\":{\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#595959\"],\"top\":[\"thin\",\"#595959\"],\"left\":[\"thin\",\"#595959\"],\"right\":[\"thin\",\"#595959\"]}},{\"font\":{\"size\":9},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"bgcolor\":\"\",\"font\":{\"size\":9},\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"textwrap\":true,\"font\":{\"size\":9},\"bgcolor\":\"\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"font\":{\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"font\":{\"size\":9},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#756f6f\"],\"top\":[\"thin\",\"#756f6f\"],\"left\":[\"thin\",\"#756f6f\"],\"right\":[\"thin\",\"#756f6f\"]}},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#756f6f\"],\"top\":[\"thin\",\"#756f6f\"],\"left\":[\"thin\",\"#756f6f\"],\"right\":[\"thin\",\"#756f6f\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#756f6f\"],\"top\":[\"thin\",\"#756f6f\"],\"left\":[\"thin\",\"#756f6f\"],\"right\":[\"thin\",\"#756f6f\"]}},{\"bgcolor\":\"\",\"font\":{\"size\":9},\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#756f6f\"],\"top\":[\"thin\",\"#756f6f\"],\"left\":[\"thin\",\"#756f6f\"],\"right\":[\"thin\",\"#756f6f\"]}},{\"textwrap\":true,\"font\":{\"size\":9},\"bgcolor\":\"\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#756f6f\"],\"top\":[\"thin\",\"#756f6f\"],\"left\":[\"thin\",\"#756f6f\"],\"right\":[\"thin\",\"#756f6f\"]}},{\"font\":{\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#756f6f\"],\"top\":[\"thin\",\"#756f6f\"],\"left\":[\"thin\",\"#756f6f\"],\"right\":[\"thin\",\"#756f6f\"]}},{\"align\":\"center\",\"bgcolor\":\"\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":9}},{\"bgcolor\":\"\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":10}},{\"align\":\"center\",\"bgcolor\":\"\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":10}},{\"color\":\"#000100\",\"font\":{\"size\":10}},{\"color\":\"#000100\",\"bgcolor\":\"\",\"font\":{\"size\":10}},{\"font\":{\"size\":10},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"font\":{\"size\":10},\"align\":\"center\"},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"font\":{\"size\":10}},{\"bgcolor\":\"\",\"font\":{\"size\":10},\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"textwrap\":true,\"font\":{\"size\":10},\"bgcolor\":\"\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"bgcolor\":\"\",\"font\":{\"size\":10},\"align\":\"center\",\"color\":\"#000100\"},{\"font\":{\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"color\":\"#000100\",\"bgcolor\":\"\",\"align\":\"center\"},{\"font\":{\"size\":10},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"bgcolor\":\"\",\"font\":{\"size\":10},\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"textwrap\":true,\"font\":{\"size\":10},\"bgcolor\":\"\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"color\":\"#000100\",\"bgcolor\":\"\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":10}},{\"color\":\"#000100\",\"font\":{\"size\":10},\"bgcolor\":\"#\"},{\"align\":\"center\",\"bgcolor\":\"#\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":9}},{\"bgcolor\":\"#\"},{\"font\":{\"size\":10},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#\"},{\"font\":{\"size\":10},\"align\":\"center\",\"bgcolor\":\"#\"},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10},\"bgcolor\":\"#\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#\"},{\"align\":\"center\",\"bgcolor\":\"#\"},{\"bgcolor\":\"#\",\"font\":{\"size\":10},\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"textwrap\":true,\"font\":{\"size\":10},\"bgcolor\":\"#\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"textwrap\":true,\"font\":{\"size\":10},\"bgcolor\":\"#\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"font\":{\"size\":10},\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10},\"bgcolor\":\"#\"},{\"align\":\"center\",\"bgcolor\":\"#ddefe8\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":10}},{\"color\":\"#000100\",\"font\":{\"size\":10},\"bgcolor\":\"#ddefe8\"},{\"align\":\"center\",\"bgcolor\":\"#ddefe8\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"bold\":false,\"size\":9}},{\"bgcolor\":\"#ddefe8\"},{\"font\":{\"size\":10},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\"},{\"font\":{\"size\":10},\"align\":\"center\",\"bgcolor\":\"#ddefe8\"},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10},\"bgcolor\":\"#ddefe8\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\"},{\"align\":\"center\",\"bgcolor\":\"#ddefe8\"},{\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":10},\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"textwrap\":true,\"font\":{\"size\":10},\"bgcolor\":\"#ddefe8\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\"},{\"textwrap\":true,\"font\":{\"size\":10},\"bgcolor\":\"#ddefe8\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"font\":{\"size\":10},\"bgcolor\":\"#ddefe8\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10},\"bgcolor\":\"#ddefe8\"},{\"color\":\"#000100\",\"bgcolor\":\"#fffff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#fffff\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#fffff\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#fffff\"},{\"textwrap\":true,\"bgcolor\":\"#fffff\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#fffff\"},{\"color\":\"#000100\",\"bgcolor\":\"#ffff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#ffff\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ffff\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ffff\"},{\"textwrap\":true,\"bgcolor\":\"#ffff\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ffff\"},{\"color\":\"#000100\",\"bgcolor\":\"#fff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#fff\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#fff\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#fff\"},{\"textwrap\":true,\"bgcolor\":\"#fff\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#fff\"},{\"color\":\"#000100\",\"bgcolor\":\"#ff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#ff\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ff\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ff\"},{\"textwrap\":true,\"bgcolor\":\"#ff\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ff\"},{\"color\":\"#000100\",\"bgcolor\":\"#f\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#f\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f\"},{\"textwrap\":true,\"bgcolor\":\"#f\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f\"},{\"color\":\"#000100\",\"bgcolor\":\"#\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#\"},{\"textwrap\":true,\"bgcolor\":\"#\"},{\"color\":\"#000100\",\"bgcolor\":\"#ddefe8\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\"},{\"textwrap\":true,\"bgcolor\":\"#ddefe8\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9}},{\"color\":\"#000100\",\"font\":{\"size\":9},\"bgcolor\":\"#ddefe8\"},{\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9}},{\"font\":{\"size\":9},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\"},{\"font\":{\"size\":9},\"align\":\"center\",\"bgcolor\":\"#ddefe8\"},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"bgcolor\":\"#ddefe8\"},{\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9},\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"textwrap\":true,\"font\":{\"size\":9},\"bgcolor\":\"#ddefe8\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9}},{\"textwrap\":true,\"font\":{\"size\":9},\"bgcolor\":\"#ddefe8\",\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"textwrap\":true,\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"font\":{\"size\":9},\"bgcolor\":\"#ddefe8\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9}},{\"textwrap\":true,\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#aedac8\"},{\"bgcolor\":\"#aedac8\"},{\"bgcolor\":\"#fffff\"},{\"bgcolor\":\"#ffff\"},{\"bgcolor\":\"#fff\"},{\"bgcolor\":\"#ff\"},{\"bgcolor\":\"#f\"},{\"align\":\"center\",\"bgcolor\":\"#aedac8\",\"font\":{\"size\":8}},{\"align\":\"center\",\"bgcolor\":\"#aedac8\",\"font\":{\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#aedac8\",\"font\":{\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Arial\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#aedac8\",\"font\":{\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"bold\":false,\"size\":9}},{\"bgcolor\":\"#02a274\",\"font\":{\"size\":9},\"align\":\"center\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"aedac8\"},{\"align\":\"center\",\"bgcolor\":\"aedac8\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\",\"color\":\"#ffffff\"},{\"align\":\"center\",\"bgcolor\":\"#aedac8\",\"color\":\"#ffffff\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\",\"color\":\"#ffffff\",\"font\":{\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#aedac8\",\"color\":\"#ffffff\",\"font\":{\"size\":9}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\",\"color\":\"#000100\",\"font\":{\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#aedac8\",\"color\":\"#000100\",\"font\":{\"size\":9}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\",\"color\":\"#000100\",\"font\":{\"size\":8}},{\"align\":\"center\",\"bgcolor\":\"#aedac8\",\"color\":\"#000100\",\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"##aedac8\"},{\"bgcolor\":\"##aedac8\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\",\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\",\"font\":{\"size\":8},\"align\":\"center\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\",\"font\":{\"size\":9}},{\"bgcolor\":\"#aedac8\",\"font\":{\"size\":8}},{\"bgcolor\":\"#aedac8\",\"font\":{\"size\":8},\"align\":\"left\"},{\"bgcolor\":\"#aedac8\",\"font\":{\"size\":8},\"align\":\"left\",\"valign\":\"middle\"},{\"align\":\"center\",\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"bold\":false,\"size\":10}},{\"bgcolor\":\"#02a274\",\"font\":{\"size\":10},\"align\":\"center\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]}},{\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":10}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\",\"color\":\"#000100\",\"font\":{\"size\":10}},{\"align\":\"center\",\"bgcolor\":\"#aedac8\",\"color\":\"#000100\",\"font\":{\"size\":10}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"bgcolor\":\"#aedac8\",\"font\":{\"size\":10},\"align\":\"center\"},{\"align\":\"center\",\"bgcolor\":\"#aedac8\",\"font\":{\"size\":10}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":10}},{\"textwrap\":true,\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":10}},{\"bgcolor\":\"#aedac8\",\"font\":{\"size\":10},\"align\":\"left\",\"valign\":\"middle\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"font\":{\"size\":9},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"font\":{\"size\":8}}],\"validations\":[],\"isGroup\":true,\"cols\":{\"0\":{\"width\":20},\"1\":{\"width\":84},\"2\":{\"width\":132},\"3\":{\"width\":75},\"4\":{\"width\":63},\"5\":{\"width\":59},\"6\":{\"width\":70},\"7\":{\"width\":61},\"8\":{\"width\":60},\"9\":{\"width\":75},\"10\":{\"width\":75},\"11\":{\"width\":64},\"12\":{\"width\":70},\"13\":{\"width\":63},\"14\":{\"width\":86},\"15\":{\"width\":64},\"16\":{\"width\":58},\"17\":{\"width\":63},\"18\":{\"width\":60},\"19\":{\"width\":63},\"20\":{\"width\":59},\"21\":{\"width\":73},\"22\":{\"width\":82},\"23\":{\"width\":73},\"24\":{\"width\":86},\"len\":50},\"merges\":[\"B1:X1\",\"D3:D6\",\"E5:E6\",\"F5:F6\",\"E4:F4\",\"G4:G6\",\"H4:H6\",\"I5:I6\",\"J5:K5\",\"I4:K4\",\"E3:K3\",\"L3:L6\",\"D2:L2\",\"M4:M6\",\"N5:N6\",\"O5:O6\",\"P5:P6\",\"Q5:Q6\",\"N4:Q4\",\"M3:Q3\",\"R4:R6\",\"R3:T3\",\"S4:T4\",\"S5:S6\",\"T5:T6\",\"U4:U6\",\"V4:W4\",\"V5:V6\",\"W5:W6\",\"X4:Y4\",\"X5:X6\",\"Y5:Y6\",\"U3:Y3\",\"M2:T2\",\"U2:Y2\",\"B2:B6\",\"C2:C6\",\"B8:C8\"]}', NULL, 'https://static.jeecg.com/designreport/images/jingfei_1607069843358.png', 'admin', '2020-12-03 16:54:17', 'admin', '2021-02-03 13:59:08', 0, NULL, NULL, 1, 436, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1334457419857793024', '20201203192154', '超市各地区销售额', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":{\"sri\":1,\"sci\":26,\"eri\":4,\"eci\":28,\"width\":300,\"height\":100},\"excel_config_id\":\"1334457419857793024\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"0\":{\"cells\":{\"1\":{\"text\":\"各地区商品销售额一栏表\",\"merge\":[0,18],\"style\":13}},\"height\":82},\"1\":{\"cells\":{\"1\":{\"text\":\"地区/类别/时间\",\"merge\":[1,1],\"style\":46},\"3\":{\"text\":\"2020年\",\"style\":46,\"merge\":[0,12]},\"16\":{\"text\":\"2019年\",\"style\":46,\"merge\":[0,9]}}},\"2\":{\"cells\":{\"3\":{\"text\":\"12月\",\"style\":46},\"4\":{\"text\":\"11月\",\"style\":46},\"5\":{\"text\":\"10月\",\"style\":46},\"6\":{\"text\":\"9月\",\"style\":46},\"7\":{\"text\":\"8月\",\"style\":46},\"8\":{\"text\":\"7月\",\"style\":46},\"9\":{\"text\":\"6月\",\"style\":46},\"10\":{\"text\":\"5月\",\"style\":46},\"11\":{\"text\":\"4月\",\"style\":46},\"12\":{\"text\":\"3月\",\"style\":46},\"13\":{\"text\":\"2月\",\"style\":46},\"14\":{\"text\":\"1月\",\"style\":46},\"15\":{\"text\":\"本年小计\",\"style\":46},\"16\":{\"text\":\"12月\",\"style\":46},\"17\":{\"text\":\"11月\",\"style\":46},\"18\":{\"text\":\"10月\",\"style\":46},\"19\":{\"text\":\"9月\",\"style\":46},\"20\":{\"text\":\"8月\",\"style\":46},\"21\":{\"text\":\"7月\",\"style\":46},\"22\":{\"text\":\"6月\",\"style\":46},\"23\":{\"text\":\"5月\",\"style\":46},\"24\":{\"text\":\"4月\",\"style\":46},\"25\":{\"text\":\"本年小计\",\"style\":46}}},\"3\":{\"cells\":{\"1\":{\"text\":\"#{xiaoshou.group(diqu)}\",\"style\":51,\"aggregate\":\"group\"},\"2\":{\"text\":\"#{xiaoshou.class}\",\"style\":51},\"3\":{\"text\":\"#{xiaoshou.sales_11}\",\"style\":20},\"4\":{\"text\":\"#{xiaoshou.sales_12}\",\"style\":20},\"5\":{\"text\":\"#{xiaoshou.sales_13}\",\"style\":20},\"6\":{\"text\":\"#{xiaoshou.sales_14}\",\"style\":20},\"7\":{\"text\":\"#{xiaoshou.sales_15}\",\"style\":20},\"8\":{\"text\":\"#{xiaoshou.sales_16}\",\"style\":20},\"9\":{\"text\":\"#{xiaoshou.sales_17}\",\"style\":20},\"10\":{\"text\":\"#{xiaoshou.sales_18}\",\"style\":20},\"11\":{\"text\":\"#{xiaoshou.sales_19}\",\"style\":20},\"12\":{\"text\":\"#{xiaoshou.sales_20}\",\"style\":20},\"13\":{\"text\":\"#{xiaoshou.sales_21}\",\"style\":20},\"14\":{\"text\":\"#{xiaoshou.sales_22}\",\"style\":20},\"15\":{\"style\":48,\"text\":\"=SUM(D4:O4)\"},\"16\":{\"text\":\"#{xiaoshou.sales_31}\",\"style\":20},\"17\":{\"text\":\"#{xiaoshou.sales_32}\",\"style\":20},\"18\":{\"text\":\"#{xiaoshou.sales_33}\",\"style\":20},\"19\":{\"text\":\"#{xiaoshou.sales_34}\",\"style\":20},\"20\":{\"text\":\"#{xiaoshou.sales_35}\",\"style\":20},\"21\":{\"text\":\"#{xiaoshou.sales_36}\",\"style\":20},\"22\":{\"text\":\"#{xiaoshou.sales_37}\",\"style\":20},\"23\":{\"text\":\"#{xiaoshou.sales_38}\",\"style\":20},\"24\":{\"text\":\"#{xiaoshou.sales_39}\",\"style\":20},\"25\":{\"style\":48,\"text\":\"=SUM(Q4:Y4)\"}},\"isDrag\":true},\"4\":{\"cells\":{\"1\":{\"text\":\"合计\",\"style\":52,\"rendered\":\"\",\"merge\":[0,1]},\"3\":{\"text\":\"=SUM(D4)\",\"style\":55},\"4\":{\"text\":\"=SUM(E4)\",\"style\":55},\"5\":{\"text\":\"=SUM(F4)\",\"style\":55},\"6\":{\"text\":\"=SUM(G4)\",\"style\":55},\"7\":{\"text\":\"=SUM(H4)\",\"style\":55},\"8\":{\"text\":\"=SUM(I4)\",\"style\":55},\"9\":{\"text\":\"=SUM(J4)\",\"style\":55},\"10\":{\"text\":\"=SUM(K4)\",\"style\":55},\"11\":{\"text\":\"=SUM(L4)\",\"style\":55},\"12\":{\"text\":\"=SUM(M4)\",\"style\":55},\"13\":{\"text\":\"=SUM(N4)\",\"style\":55},\"14\":{\"text\":\"=SUM(O4)\",\"style\":55},\"15\":{\"text\":\"=SUM(P4)\",\"style\":55},\"16\":{\"text\":\"=SUM(Q4)\",\"style\":55},\"17\":{\"text\":\"=SUM(R4)\",\"style\":55},\"18\":{\"text\":\"=SUM(S4)\",\"style\":55},\"19\":{\"text\":\"=SUM(T4)\",\"style\":55},\"20\":{\"text\":\"=SUM(U4)\",\"style\":55},\"21\":{\"text\":\"=SUM(V4)\",\"style\":55},\"22\":{\"text\":\"=SUM(W4)\",\"style\":55},\"23\":{\"text\":\"=SUM(X4)\",\"style\":55},\"24\":{\"text\":\"=SUM(Y4)\",\"style\":55},\"25\":{\"text\":\"=SUM(Z4)\",\"style\":55}},\"isDrag\":true},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"groupField\":\"xiaoshou.diqu\",\"freeze\":\"A1\",\"dataRectWidth\":2464,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"bgcolor\":\"#\"},{\"bgcolor\":\"#d7f2f9\"},{\"bgcolor\":\"#d7f2f9\",\"align\":\"center\"},{\"align\":\"center\"},{\"align\":\"center\",\"bgcolor\":\"#\"},{\"bgcolor\":\"#d7f2f9\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"2896ea\"],\"top\":[\"thin\",\"2896ea\"],\"left\":[\"thin\",\"2896ea\"],\"right\":[\"thin\",\"2896ea\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"2896ea\"],\"top\":[\"thin\",\"2896ea\"],\"left\":[\"thin\",\"2896ea\"],\"right\":[\"thin\",\"2896ea\"]}},{\"border\":{\"bottom\":[\"thin\",\"2896ea\"],\"top\":[\"thin\",\"2896ea\"],\"left\":[\"thin\",\"2896ea\"],\"right\":[\"thin\",\"2896ea\"]}},{\"bgcolor\":\"#d7f2f9\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#2896ea\"],\"top\":[\"thin\",\"#2896ea\"],\"left\":[\"thin\",\"#2896ea\"],\"right\":[\"thin\",\"#2896ea\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#2896ea\"],\"top\":[\"thin\",\"#2896ea\"],\"left\":[\"thin\",\"#2896ea\"],\"right\":[\"thin\",\"#2896ea\"]}},{\"border\":{\"bottom\":[\"thin\",\"#2896ea\"],\"top\":[\"thin\",\"#2896ea\"],\"left\":[\"thin\",\"#2896ea\"],\"right\":[\"thin\",\"#2896ea\"]}},{\"font\":{\"bold\":true}},{\"font\":{\"bold\":true,\"size\":16}},{\"font\":{\"bold\":true,\"size\":16},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#2896ea\"],\"top\":[\"thin\",\"#2896ea\"],\"left\":[\"thin\",\"#2896ea\"],\"right\":[\"thin\",\"#2896ea\"]},\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#2896ea\"],\"top\":[\"thin\",\"#2896ea\"],\"left\":[\"thin\",\"#2896ea\"],\"right\":[\"thin\",\"#2896ea\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#2896ea\"],\"top\":[\"thin\",\"#2896ea\"],\"left\":[\"thin\",\"#2896ea\"],\"right\":[\"thin\",\"#2896ea\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#2896ea\"],\"top\":[\"thin\",\"#2896ea\"],\"left\":[\"thin\",\"#2896ea\"],\"right\":[\"thin\",\"#2896ea\"]}},{\"bgcolor\":\"#5b9cd6\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#9cc2e6\"],\"top\":[\"thin\",\"#9cc2e6\"],\"left\":[\"thin\",\"#9cc2e6\"],\"right\":[\"thin\",\"#9cc2e6\"]}},{\"border\":{\"bottom\":[\"thin\",\"#9cc2e6\"],\"top\":[\"thin\",\"#9cc2e6\"],\"left\":[\"thin\",\"#9cc2e6\"],\"right\":[\"thin\",\"#9cc2e6\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#9cc2e6\"],\"top\":[\"thin\",\"#9cc2e6\"],\"left\":[\"thin\",\"#9cc2e6\"],\"right\":[\"thin\",\"#9cc2e6\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]}},{\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#e7e5e6\"],\"top\":[\"thin\",\"#e7e5e6\"],\"left\":[\"thin\",\"#e7e5e6\"],\"right\":[\"thin\",\"#e7e5e6\"]}},{\"border\":{\"bottom\":[\"thin\",\"#e7e5e6\"],\"top\":[\"thin\",\"#e7e5e6\"],\"left\":[\"thin\",\"#e7e5e6\"],\"right\":[\"thin\",\"#e7e5e6\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#e7e5e6\"],\"top\":[\"thin\",\"#e7e5e6\"],\"left\":[\"thin\",\"#e7e5e6\"],\"right\":[\"thin\",\"#e7e5e6\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d0cecf\"],\"top\":[\"thin\",\"#d0cecf\"],\"left\":[\"thin\",\"#d0cecf\"],\"right\":[\"thin\",\"#d0cecf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#d0cecf\"],\"top\":[\"thin\",\"#d0cecf\"],\"left\":[\"thin\",\"#d0cecf\"],\"right\":[\"thin\",\"#d0cecf\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#d0cecf\"],\"top\":[\"thin\",\"#d0cecf\"],\"left\":[\"thin\",\"#d0cecf\"],\"right\":[\"thin\",\"#d0cecf\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d0cecf\"],\"top\":[\"thin\",\"#d0cecf\"],\"left\":[\"thin\",\"#d0cecf\"],\"right\":[\"thin\",\"#d0cecf\"]},\"color\":\"#ffffff\"},{\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#afabac\"],\"top\":[\"thin\",\"#afabac\"],\"left\":[\"thin\",\"#afabac\"],\"right\":[\"thin\",\"#afabac\"]},\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#afabac\"],\"top\":[\"thin\",\"#afabac\"],\"left\":[\"thin\",\"#afabac\"],\"right\":[\"thin\",\"#afabac\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#afabac\"],\"top\":[\"thin\",\"#afabac\"],\"left\":[\"thin\",\"#afabac\"],\"right\":[\"thin\",\"#afabac\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#f2f2f2\"],\"top\":[\"thin\",\"#f2f2f2\"],\"left\":[\"thin\",\"#f2f2f2\"],\"right\":[\"thin\",\"#f2f2f2\"]},\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#f2f2f2\"],\"top\":[\"thin\",\"#f2f2f2\"],\"left\":[\"thin\",\"#f2f2f2\"],\"right\":[\"thin\",\"#f2f2f2\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#f2f2f2\"],\"top\":[\"thin\",\"#f2f2f2\"],\"left\":[\"thin\",\"#f2f2f2\"],\"right\":[\"thin\",\"#f2f2f2\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\"},{\"bgcolor\":\"#5b9cd6\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"size\":8},\"align\":\"center\",\"bgcolor\":\"#d7f2f9\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\",\"bgcolor\":\"#deeaf6\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"size\":8},\"align\":\"center\",\"format\":\"number\",\"bgcolor\":\"#bdd7ee\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"size\":10},\"align\":\"center\",\"bgcolor\":\"#d7f2f9\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"font\":{\"size\":9},\"align\":\"center\",\"bgcolor\":\"#d7f2f9\"},{\"align\":\"center\",\"bgcolor\":\"#bdd7ee\"},{\"bgcolor\":\"#bdd7ee\"},{\"bgcolor\":\"#bdd7ee\",\"format\":\"number\"},{\"bgcolor\":\"#bdd7ee\",\"format\":\"number\",\"align\":\"center\"}],\"validations\":[],\"isGroup\":true,\"cols\":{\"0\":{\"width\":21},\"1\":{\"width\":63},\"2\":{\"width\":85},\"3\":{\"width\":95},\"4\":{\"width\":83},\"5\":{\"width\":81},\"6\":{\"width\":88},\"7\":{\"width\":89},\"8\":{\"width\":87},\"9\":{\"width\":95},\"10\":{\"width\":92},\"11\":{\"width\":95},\"12\":{\"width\":96},\"13\":{\"width\":98},\"14\":{\"width\":98},\"15\":{\"width\":78},\"16\":{\"width\":110},\"17\":{\"width\":111},\"18\":{\"width\":102},\"19\":{\"width\":102},\"20\":{\"width\":114},\"21\":{\"width\":111},\"22\":{\"width\":113},\"23\":{\"width\":107},\"24\":{\"width\":115},\"25\":{\"width\":135},\"len\":49},\"merges\":[\"D2:P2\",\"B2:C3\",\"Q2:Z2\",\"B1:T1\",\"B5:C5\"]}', NULL, 'https://static.jeecg.com/designreport/images/chaoshi_1607069609875.png', 'admin', '2020-12-03 19:21:55', 'admin', '2021-07-13 05:39:05', 0, NULL, NULL, 1, 372, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1334696790477377536', '20201204111149', '学校收入一览表', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":{\"sri\":1,\"sci\":24,\"eri\":5,\"eci\":24,\"width\":100,\"height\":138},\"excel_config_id\":\"1334696790477377536\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"0\":{\"cells\":{\"1\":{\"text\":\"学校收入一览表\",\"merge\":[0,13],\"style\":25}},\"height\":71},\"1\":{\"cells\":{\"1\":{\"text\":\"校园信息\",\"merge\":[1,2],\"style\":40},\"4\":{\"text\":\"学生信息\",\"merge\":[1,2],\"style\":40},\"7\":{\"merge\":[1,5],\"style\":42,\"text\":\"收款信息\"},\"13\":{\"merge\":[0,10],\"text\":\"确认收入信息\",\"style\":43}},\"height\":23},\"2\":{\"cells\":{\"13\":{\"merge\":[0,3],\"text\":\"2020.09\",\"style\":46},\"17\":{\"merge\":[0,3],\"text\":\"2020.10\",\"style\":46},\"21\":{\"text\":\"合计\",\"style\":46,\"merge\":[0,2]}},\"height\":40},\"3\":{\"cells\":{\"1\":{\"text\":\"所属城际\",\"style\":50},\"2\":{\"text\":\"所属校园\",\"style\":50},\"3\":{\"text\":\"NC帐套\",\"style\":50},\"4\":{\"text\":\"学号\",\"style\":50},\"5\":{\"text\":\"姓名\",\"style\":50},\"6\":{\"text\":\"性质\",\"style\":50},\"7\":{\"text\":\"缴费金额\",\"style\":50},\"8\":{\"text\":\"缴费时间\",\"style\":50},\"9\":{\"text\":\"缴费性质\",\"style\":50},\"10\":{\"text\":\"缴费所属期间\",\"style\":50},\"11\":{\"text\":\"缴费月份数\",\"style\":50},\"12\":{\"text\":\"缴费方式\",\"style\":50},\"13\":{\"text\":\"全部\",\"style\":50},\"14\":{\"text\":\"学费\",\"style\":50},\"15\":{\"text\":\"餐费\",\"style\":50},\"16\":{\"text\":\"校车费\",\"style\":50},\"17\":{\"text\":\"全部\",\"style\":50},\"18\":{\"text\":\"学费\",\"style\":50},\"19\":{\"text\":\"餐费\",\"style\":50},\"20\":{\"text\":\"校车费\",\"style\":50},\"21\":{\"text\":\"全部\",\"style\":50},\"22\":{\"text\":\"学费\",\"style\":50},\"23\":{\"text\":\"餐费\",\"style\":50}}},\"4\":{\"cells\":{\"1\":{\"text\":\"#{shouru.group(city)}\",\"style\":45,\"aggregate\":\"group\"},\"2\":{\"text\":\"#{shouru.group(school)}\",\"style\":45,\"aggregate\":\"group\"},\"3\":{\"text\":\"#{shouru.group(ncnum)}\",\"style\":35,\"aggregate\":\"group\"},\"4\":{\"text\":\"#{shouru.num}\",\"style\":35},\"5\":{\"text\":\"#{shouru.name}\",\"style\":35},\"6\":{\"text\":\"#{shouru.class}\",\"style\":35},\"7\":{\"text\":\"#{shouru.pay}\",\"style\":35},\"8\":{\"text\":\"#{shouru.paytime}\",\"style\":35},\"9\":{\"text\":\"#{shouru.payclass}\",\"style\":35},\"10\":{\"text\":\"#{shouru.pay1}\",\"style\":35},\"11\":{\"text\":\"#{shouru.paymoth}\",\"style\":35},\"12\":{\"text\":\"#{shouru.pay2}\",\"style\":35},\"13\":{\"style\":33,\"text\":\"=SUM(O5:Q5)\"},\"14\":{\"text\":\"#{shouru.tuition_09}\",\"style\":35},\"15\":{\"text\":\"#{shouru.meals_09}\",\"style\":35},\"16\":{\"text\":\"#{shouru.busfee_09}\",\"style\":35},\"17\":{\"style\":33,\"text\":\"=SUM(S5:U5)\"},\"18\":{\"text\":\"#{shouru.tuition_10}\",\"style\":35},\"19\":{\"text\":\"#{shouru.meals_10}\",\"style\":35},\"20\":{\"text\":\"#{shouru.busfee_10}\",\"style\":35},\"21\":{\"style\":33,\"text\":\"=SUM(W5,X5)\"},\"22\":{\"style\":35,\"text\":\"=SUM(O5,S5)\"},\"23\":{\"style\":35,\"text\":\"=SUM(P5,T5)\"}},\"isDrag\":true,\"height\":25},\"5\":{\"cells\":{\"1\":{\"style\":66,\"text\":\"合计\"},\"2\":{\"text\":\" \",\"style\":66},\"3\":{\"style\":66,\"text\":\" \"},\"4\":{\"style\":66,\"text\":\" \"},\"5\":{\"style\":66,\"text\":\" \"},\"6\":{\"style\":66,\"text\":\" \"},\"7\":{\"style\":66,\"text\":\" \"},\"8\":{\"style\":66,\"text\":\" \"},\"9\":{\"style\":66,\"text\":\" \"},\"10\":{\"style\":66,\"text\":\" \"},\"11\":{\"style\":66,\"text\":\" \"},\"12\":{\"style\":66,\"text\":\" \"},\"13\":{\"style\":66,\"text\":\" \"},\"14\":{\"style\":66,\"text\":\" \"},\"15\":{\"style\":66,\"text\":\" \"},\"16\":{\"style\":66,\"text\":\" \"},\"17\":{\"style\":66,\"text\":\" \"},\"18\":{\"text\":\" \",\"style\":66},\"19\":{\"style\":66,\"text\":\" \"},\"20\":{\"style\":66,\"text\":\" \"},\"21\":{\"style\":15,\"text\":\"=SUM(V5)\"},\"22\":{\"style\":15,\"text\":\"=SUM(W5)\"},\"23\":{\"style\":15,\"text\":\"=SUM(X5)\"}}},\"9\":{\"cells\":{}},\"11\":{\"cells\":{}},\"len\":101},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"groupField\":\"shouru.city\",\"freeze\":\"A1\",\"dataRectWidth\":1881,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"bgcolor\":\"#\"},{\"align\":\"center\",\"bgcolor\":\"#309fc6\"},{\"bgcolor\":\"#ffffff\"},{\"align\":\"center\",\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\"},{\"align\":\"center\",\"bgcolor\":\"#b2ddec\"},{\"align\":\"center\",\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\",\"font\":{\"size\":8}},{\"align\":\"center\",\"bgcolor\":\"#b2ddec\",\"font\":{\"size\":8}},{\"align\":\"center\",\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\",\"font\":{\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#b2ddec\",\"font\":{\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\",\"font\":{\"size\":10}},{\"align\":\"center\",\"bgcolor\":\"\"},{\"align\":\"center\",\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\",\"font\":{\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#b2ddec\",\"font\":{\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#b2ddec\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"font\":{\"size\":9}},{\"align\":\"center\",\"font\":{\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"#dff2f9\"},{\"bgcolor\":\"\"},{\"bgcolor\":\"#309fc6\"},{\"align\":\"center\",\"color\":\"#ffffff\"},{\"align\":\"center\",\"bgcolor\":\"#dff2f9\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#b2ddec\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#dff2f9\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"b2ddec\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"¥b2ddec\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":8}},{\"align\":\"center\",\"bgcolor\":\"#b2ddec\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8}},{\"align\":\"center\",\"bgcolor\":\"#dff2f9\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\",\"font\":{\"size\":8}},{\"align\":\"center\",\"bgcolor\":\"#dff2f9\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\",\"font\":{\"size\":9}},{\"align\":\"center\",\"bgcolor\":\"\",\"color\":\"#ffffff\",\"font\":{\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"font\":{\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"align\":\"center\",\"bgcolor\":\"#d7f2f9\",\"font\":{\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#d7f2f9\",\"font\":{\"size\":8},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#5b9cd6\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"bgcolor\":\"#bdd7ee\",\"font\":{\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"font\":{\"size\":8}},{\"align\":\"center\",\"bgcolor\":\"#bdd7ee\",\"font\":{\"size\":8},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"font\":{\"size\":10}},{\"align\":\"center\",\"bgcolor\":\"#bdd7ee\",\"font\":{\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"font\":{\"size\":10}},{\"align\":\"center\",\"bgcolor\":\"#d7f2f9\",\"font\":{\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\",\"font\":{\"size\":10}},{\"font\":{\"size\":12}},{\"align\":\"center\",\"bgcolor\":\"#bdd7ee\",\"font\":{\"size\":12},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"font\":{\"size\":12}},{\"align\":\"center\",\"bgcolor\":\"#d7f2f9\",\"font\":{\"size\":12},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\",\"font\":{\"size\":12}},{\"font\":{\"size\":10.5}},{\"align\":\"center\",\"bgcolor\":\"#bdd7ee\",\"font\":{\"size\":10.5},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"center\",\"font\":{\"size\":10.5}},{\"align\":\"center\",\"bgcolor\":\"#d7f2f9\",\"font\":{\"size\":10.5},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\",\"font\":{\"size\":10.5}},{\"align\":\"left\",\"bgcolor\":\"#b2ddec\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"align\":\"left\"}],\"validations\":[],\"isGroup\":true,\"cols\":{\"0\":{\"width\":37},\"1\":{\"width\":79},\"2\":{\"width\":87},\"3\":{\"width\":79},\"4\":{\"width\":92},\"5\":{\"width\":90},\"6\":{\"width\":77},\"7\":{\"width\":83},\"8\":{\"width\":89},\"9\":{\"width\":79},\"10\":{\"width\":89},\"11\":{\"width\":84},\"12\":{\"width\":76},\"13\":{\"width\":67},\"14\":{\"width\":74},\"15\":{\"width\":69},\"16\":{\"width\":74},\"17\":{\"width\":68},\"18\":{\"width\":76},\"19\":{\"width\":79},\"20\":{\"width\":78},\"21\":{\"width\":74},\"22\":{\"width\":81},\"len\":49},\"merges\":[\"B2:D3\",\"E2:G3\",\"H2:M3\",\"N3:Q3\",\"R3:U3\",\"V3:X3\",\"N2:X2\",\"B1:O1\"]}', NULL, 'https://static.jeecg.com/designreport/images/xuexiao_1607069724407.png', 'admin', '2020-12-04 11:11:50', 'admin', '2021-07-13 05:39:04', 0, NULL, NULL, 1, 432, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1334757703079301120', '20201204151358', '车间零件完工一览表', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":{\"sri\":7,\"sci\":2,\"eri\":7,\"eci\":2,\"width\":121,\"height\":25},\"excel_config_id\":\"1334757703079301120\",\"printConfig\":{\"paper\":\"A3\",\"width\":297,\"height\":420,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"landscape\"},\"rows\":{\"0\":{\"cells\":{\"1\":{\"text\":\"车间零件完工一览表\",\"merge\":[0,12],\"style\":23}},\"height\":81},\"1\":{\"cells\":{\"1\":{\"text\":\"车间\",\"style\":22},\"2\":{\"text\":\"成品名称\",\"style\":22},\"3\":{\"text\":\"半成品名称\",\"style\":22},\"4\":{\"text\":\"完工时间\",\"style\":22},\"5\":{\"text\":\"状态\",\"style\":22},\"6\":{\"text\":\"成品属性\",\"style\":22},\"7\":{\"text\":\"工单号\",\"style\":22},\"8\":{\"text\":\"工单数量\",\"style\":22},\"9\":{\"text\":\"计划数量\",\"style\":22},\"10\":{\"text\":\"完成数量\",\"style\":22},\"11\":{\"text\":\"UPH\",\"style\":22},\"12\":{\"text\":\"H/C\",\"style\":22},\"13\":{\"text\":\"计划时间\",\"style\":22},\"14\":{\"text\":\"良率\",\"style\":22},\"15\":{\"text\":\"备注\",\"style\":22}},\"height\":55},\"2\":{\"cells\":{\"1\":{\"text\":\"#{chejian.group(city)}\",\"style\":16,\"aggregate\":\"group\"},\"2\":{\"text\":\"#{chejian.finish}\",\"style\":14},\"3\":{\"text\":\"#{chejian.semifinish}\",\"style\":14},\"4\":{\"text\":\"#{chejian.time}\",\"style\":14},\"5\":{\"text\":\"#{chejian.state}\",\"style\":14},\"6\":{\"text\":\"#{chejian.attribute}\",\"style\":14},\"7\":{\"text\":\"#{chejian.num}\",\"style\":14},\"8\":{\"text\":\"#{chejian.gnum}\",\"style\":14},\"9\":{\"text\":\"#{chejian.jnum}\",\"style\":14},\"10\":{\"text\":\"#{chejian.wnum}\",\"style\":14},\"11\":{\"text\":\"#{chejian.uph}\",\"style\":14},\"12\":{\"text\":\"#{chejian.hc}\",\"style\":14},\"13\":{\"text\":\"#{chejian.jtime}\",\"style\":14},\"14\":{\"text\":\"#{chejian.yield}\",\"style\":14},\"15\":{\"text\":\"#{chejian.beizhu}\",\"style\":14}},\"isDrag\":true,\"height\":35},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"groupField\":\"chejian.city\",\"freeze\":\"A1\",\"dataRectWidth\":1476,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"bgcolor\":\"#\"},{\"align\":\"center\",\"bgcolor\":\"#309fc6\"},{\"align\":\"center\",\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\"},{\"bgcolor\":\"#309fc6\"},{\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\"},{\"align\":\"center\",\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"font\":{\"bold\":true}},{\"font\":{\"bold\":true,\"size\":16}},{\"font\":{\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9}},{\"font\":{\"size\":9},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"align\":\"center\",\"bgcolor\":\"#\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"align\":\"center\",\"bgcolor\":\"#b2ddec\"},{\"font\":{\"size\":8}},{\"align\":\"center\",\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8}},{\"font\":{\"size\":8},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"align\":\"center\",\"bgcolor\":\"#b2ddec\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8},\"align\":\"center\"},{\"align\":\"center\",\"bgcolor\":\"#309fc6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9}},{\"font\":{\"bold\":true,\"size\":16},\"align\":\"center\"}],\"validations\":[],\"isGroup\":true,\"cols\":{\"0\":{\"width\":27},\"1\":{\"width\":106},\"2\":{\"width\":121},\"3\":{\"width\":124},\"4\":{\"width\":87},\"5\":{\"width\":76},\"6\":{\"width\":82},\"7\":{\"width\":81},\"8\":{\"width\":69},\"9\":{\"width\":76},\"10\":{\"width\":81},\"15\":{\"width\":146},\"len\":50},\"merges\":[\"B1:N1\"]}', NULL, 'https://static.jeecg.com/designreport/images/QQ截图20201216185352_1608116050060.png', 'admin', '2020-12-04 15:13:58', 'admin', '2021-07-13 05:39:02', 0, NULL, NULL, 1, 526, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1338370016550195200', '20201214142804', '条形码报表', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":{\"sri\":3,\"sci\":4,\"eri\":3,\"eci\":4,\"width\":96,\"height\":47},\"excel_config_id\":\"1338370016550195200\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"portrait\"},\"rows\":{\"0\":{\"cells\":{\"1\":{\"merge\":[1,3],\"text\":\"居民身份证申领登记表\",\"style\":39},\"5\":{\"merge\":[0,2],\"text\":\"\",\"rendered\":\"\",\"display\":\"text\"},\"-1\":{\"text\":\"${tm.tp}\"}},\"height\":27},\"1\":{\"cells\":{\"5\":{\"style\":2,\"virtual\":\"ZiOFmILaRjdmVs6E\",\"rendered\":\"DnK6I7VRVFyw8dUQ\",\"display\":\"barcode\",\"text\":\"${tm.tm}\",\"merge\":[0,2]}},\"height\":52},\"2\":{\"cells\":{\"1\":{\"text\":\"受理单位(盖章)珠海市公安局\",\"merge\":[0,3],\"style\":36},\"8\":{\"text\":\"\",\"rendered\":\"\"}},\"height\":34},\"3\":{\"cells\":{\"1\":{\"text\":\"姓名\",\"style\":24},\"2\":{\"text\":\"${tm.name}\",\"style\":7,\"rendered\":\"\"},\"3\":{\"text\":\"性别\",\"style\":16},\"4\":{\"text\":\"${tm.sex}\",\"style\":7,\"isDict\":1,\"dictCode\":\"sex1\",\"rendered\":\"\"},\"5\":{\"text\":\"民族\",\"style\":16},\"6\":{\"text\":\"${tm.nation}\",\"style\":7},\"7\":{\"text\":\"${tm.tp}\",\"style\":7,\"merge\":[2,0],\"rendered\":\"ftkUSZOje4A5gVO3\",\"display\":\"img\"},\"9\":{\"text\":\"\",\"rendered\":\"\"}},\"isDrag\":true,\"height\":47},\"4\":{\"cells\":{\"1\":{\"text\":\"出生日期\",\"style\":24},\"2\":{\"text\":\"${tm.birth}\",\"style\":32,\"merge\":[0,4]},\"8\":{\"text\":\"\",\"rendered\":\"\"}},\"isDrag\":true,\"height\":51},\"5\":{\"cells\":{\"1\":{\"text\":\"常住户口所在地住址\",\"style\":21},\"2\":{\"text\":\"${tm.zhuzhi}\",\"style\":7,\"merge\":[0,4]},\"8\":{\"text\":\"\",\"rendered\":\"\",\"config\":\"\"}},\"isDrag\":true,\"height\":62},\"6\":{\"cells\":{\"1\":{\"text\":\"公民身份证\",\"style\":24},\"2\":{\"text\":\"${tm.card}\",\"style\":7,\"merge\":[0,5]}},\"isDrag\":true,\"height\":55},\"7\":{\"cells\":{\"1\":{\"text\":\"有限期限\",\"style\":24},\"2\":{\"text\":\"${tm.ydate}\",\"style\":34,\"merge\":[0,1]},\"4\":{\"text\":\"签发机关\",\"style\":24},\"5\":{\"text\":\"${tm.qfjg}\",\"style\":7,\"merge\":[0,2]}},\"isDrag\":true,\"height\":52},\"8\":{\"cells\":{\"1\":{\"text\":\"申领原因\",\"style\":24},\"2\":{\"text\":\"${tm.slyy}\",\"style\":7,\"merge\":[0,5]}},\"isDrag\":true,\"height\":55},\"9\":{\"cells\":{\"1\":{\"text\":\"受理时间\",\"style\":24},\"2\":{\"text\":\"${tm.sdate}\",\"style\":32,\"merge\":[0,1]},\"4\":{\"text\":\"受理号\",\"style\":24},\"5\":{\"text\":\"${tm.shao}\",\"style\":7,\"merge\":[0,2]}},\"isDrag\":true,\"height\":49},\"10\":{\"cells\":{\"1\":{\"text\":\"承办人\",\"style\":24},\"2\":{\"text\":\"${tm.cbr}\",\"style\":7,\"merge\":[0,1]},\"4\":{\"text\":\"受理单位领导\",\"style\":24},\"5\":{\"text\":\"${tm.sld}\",\"style\":7,\"merge\":[0,2]}},\"isDrag\":true,\"height\":42},\"11\":{\"cells\":{\"1\":{\"text\":\"申请(监护)人签名\",\"style\":21},\"2\":{\"text\":\"${tm.sr}\",\"style\":7,\"merge\":[0,1]},\"4\":{\"text\":\"申请(监护)人联系电话\",\"style\":21},\"5\":{\"text\":\"${tm.jphone}\",\"style\":7,\"merge\":[0,2]}},\"isDrag\":true,\"height\":59},\"12\":{\"cells\":{\"1\":{\"text\":\"领证人签名\",\"style\":24},\"2\":{\"text\":\"${tm.lzr}\",\"style\":7,\"merge\":[0,1]},\"4\":{\"text\":\"领证时间\",\"style\":24},\"5\":{\"text\":\"${tm.ldate}\",\"style\":32,\"merge\":[0,2]}},\"isDrag\":true,\"height\":57},\"13\":{\"cells\":{\"1\":{\"text\":\"是否通过邮政特快专递方式领取二代\",\"merge\":[0,1],\"style\":24},\"3\":{\"text\":\"${tm.sk}\",\"style\":7,\"merge\":[0,4]}},\"isDrag\":true,\"height\":50},\"14\":{\"cells\":{\"1\":{\"text\":\"投递地址\",\"style\":24},\"2\":{\"text\":\"${tm.dizhi}\",\"style\":7,\"merge\":[0,2]},\"5\":{\"text\":\"收件人\",\"style\":24},\"6\":{\"style\":7,\"text\":\" \",\"merge\":[0,1]}},\"isDrag\":true,\"height\":53},\"15\":{\"cells\":{\"1\":{\"text\":\"邮政编码\",\"style\":24},\"2\":{\"text\":\"\",\"style\":7,\"merge\":[0,1]},\"4\":{\"text\":\"备注\",\"style\":24},\"5\":{\"text\":\"\",\"style\":7,\"merge\":[0,2]}},\"isDrag\":true,\"height\":47},\"16\":{\"cells\":{\"1\":{\"merge\":[0,6],\"text\":\"公安部治安管理局治\",\"style\":31}}},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[\"sex1\",\"sex1\",\"sex1\"],\"freeze\":\"A1\",\"dataRectWidth\":704,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"font\":{\"size\":16}},{\"font\":{\"size\":16},\"align\":\"center\"},{\"align\":\"center\"},{\"textwrap\":true},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\",\"size\":9}},{\"font\":{\"name\":\"宋体\",\"size\":9},\"color\":\"#3f3f3f\"},{\"font\":{\"name\":\"宋体\",\"size\":9},\"color\":\"#0c0c0c\"},{\"font\":{\"name\":\"宋体\",\"size\":9},\"color\":\"#7f7f7f\"},{\"font\":{\"name\":\"宋体\",\"size\":9},\"color\":\"#595959\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"align\":\"right\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\",\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\",\"bold\":false}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\",\"bold\":false}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\",\"bold\":false},\"align\":\"center\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\",\"bold\":true}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"center\"},{\"font\":{\"name\":\"宋体\",\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"right\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"center\"},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"align\":\"center\"},{\"font\":{\"size\":8}},{\"font\":{\"size\":8},\"align\":\"center\"},{\"font\":{\"size\":8},\"align\":\"right\"},{\"font\":{\"size\":10},\"align\":\"right\"},{\"font\":{\"size\":10},\"align\":\"right\",\"color\":\"#7f7f7f\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"format\":\"date2\"},{\"format\":\"date2\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"format\":\"date\"},{\"format\":\"date\"},{\"font\":{\"name\":\"宋体\",\"size\":9},\"color\":\"#595959\",\"valign\":\"bottom\"},{\"align\":\"center\",\"font\":{\"bold\":true}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16},\"valign\":\"bottom\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":16},\"1\":{\"width\":103},\"2\":{\"width\":156},\"3\":{\"width\":51},\"4\":{\"width\":96},\"5\":{\"width\":61},\"6\":{\"width\":106},\"7\":{\"width\":115},\"8\":{\"width\":135},\"len\":50},\"merges\":[\"B1:E2\",\"F1:H1\",\"F2:H2\",\"B3:E3\",\"H4:H6\",\"C5:G5\",\"C6:G6\",\"C7:H7\",\"C8:D8\",\"F8:H8\",\"C9:H9\",\"C10:D10\",\"F10:H10\",\"C11:D11\",\"F11:H11\",\"C12:D12\",\"F12:H12\",\"C13:D13\",\"F13:H13\",\"B14:C14\",\"D14:H14\",\"C15:E15\",\"G15:H15\",\"C16:D16\",\"F16:H16\",\"B17:H17\"]}', NULL, 'https://static.jeecg.com/designreport/images/未标题-1_1608118350039.png', 'admin', '2020-12-14 14:28:04', 'admin', '2021-07-13 05:39:00', 0, NULL, NULL, 1, 771, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1338744112815411200', '20201215151426', '简单条件查询报表', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":false,\"printElWidth\":718,\"excel_config_id\":\"1338744112815411200\",\"printElHeight\":1047,\"rows\":{\"1\":{\"cells\":{\"1\":{\"text\":\"职务\",\"style\":51},\"2\":{\"text\":\"雇员ID\",\"style\":51},\"3\":{\"text\":\"姓名\",\"style\":51},\"4\":{\"text\":\"性别\",\"style\":51},\"5\":{\"text\":\"雇佣日期\",\"style\":51},\"6\":{\"text\":\"家庭电话\",\"style\":51},\"7\":{\"text\":\"出生日期\",\"style\":51},\"8\":{\"text\":\"户口所在地\",\"style\":51},\"9\":{\"text\":\"联系地址\",\"style\":51},\"10\":{\"text\":\"紧急联系人\",\"style\":52}},\"height\":37},\"2\":{\"cells\":{\"0\":{\"style\":18},\"1\":{\"style\":21,\"text\":\"#{jdcx.group(update_by)}\",\"aggregate\":\"group\"},\"2\":{\"style\":21,\"text\":\"#{jdcx.id}\"},\"3\":{\"style\":21,\"text\":\"#{jdcx.name}\"},\"4\":{\"style\":21,\"text\":\"#{jdcx.sex}\"},\"5\":{\"style\":24,\"text\":\"#{jdcx.gtime}\"},\"6\":{\"style\":21,\"text\":\"#{jdcx.jphone}\"},\"7\":{\"style\":24,\"text\":\"#{jdcx.birth}\"},\"8\":{\"style\":21,\"text\":\"#{jdcx.hukou}\"},\"9\":{\"style\":21,\"text\":\"#{jdcx.laddress}\"},\"10\":{\"style\":56,\"text\":\"#{jdcx.jperson}\"},\"11\":{\"style\":18},\"12\":{\"style\":18},\"13\":{\"style\":18},\"14\":{\"style\":18},\"15\":{\"style\":18},\"16\":{\"style\":18},\"17\":{\"style\":18},\"18\":{\"style\":18},\"19\":{\"style\":18},\"20\":{\"style\":18},\"21\":{\"style\":18},\"22\":{\"style\":18},\"23\":{\"style\":18},\"24\":{\"style\":18},\"25\":{\"style\":18},\"26\":{\"style\":18},\"27\":{\"style\":18},\"28\":{\"style\":18},\"29\":{\"style\":18},\"30\":{\"style\":18},\"31\":{\"style\":18},\"32\":{\"style\":18},\"33\":{\"style\":18},\"34\":{\"style\":18},\"35\":{\"style\":18},\"36\":{\"style\":18},\"37\":{\"style\":18},\"38\":{\"style\":18},\"39\":{\"style\":18},\"40\":{\"style\":18},\"41\":{\"style\":18},\"42\":{\"style\":18},\"43\":{\"style\":18},\"44\":{\"style\":18},\"45\":{\"style\":18},\"46\":{\"style\":18},\"47\":{\"style\":18},\"48\":{\"style\":18}},\"height\":34},\"3\":{\"cells\":{\"0\":{\"style\":39},\"1\":{\"style\":39},\"2\":{\"style\":39},\"3\":{\"style\":39},\"4\":{\"style\":39},\"5\":{\"style\":39},\"6\":{\"style\":39},\"7\":{\"style\":39},\"8\":{\"style\":39},\"9\":{\"style\":39},\"10\":{\"style\":39},\"11\":{\"style\":39},\"12\":{\"style\":39},\"13\":{\"style\":39},\"14\":{\"style\":39},\"15\":{\"style\":39},\"16\":{\"style\":39},\"17\":{\"style\":39},\"18\":{\"style\":39},\"19\":{\"style\":39},\"20\":{\"style\":39},\"21\":{\"style\":39},\"22\":{\"style\":39},\"23\":{\"style\":39},\"24\":{\"style\":39}}},\"4\":{\"cells\":{\"1\":{\"text\":\"备注:\",\"style\":62},\"2\":{\"style\":63,\"text\":\" \"},\"3\":{\"style\":63,\"text\":\" \"},\"4\":{\"style\":63,\"text\":\" \"},\"5\":{\"style\":63,\"text\":\" \"},\"6\":{\"style\":63,\"text\":\" \"},\"7\":{\"style\":64,\"text\":\" \"}}},\"5\":{\"cells\":{\"1\":{\"text\":\"1、支持模糊查询,需要输入 “*+字符串”或 “字符串+* ”或“*+字符串+*”,如:张* / *丽 / *亚*;\",\"style\":65,\"merge\":[0,6]}}},\"6\":{\"cells\":{\"1\":{\"text\":\"2、以上“出生日期”为时间类型;\",\"style\":65,\"merge\":[0,6]}}},\"7\":{\"cells\":{\"1\":{\"text\":\"3、以上“雇佣日期”为日期类型\",\"style\":65,\"merge\":[0,6]}}},\"8\":{\"cells\":{\"1\":{\"text\":\"4、以上“姓名”为字符串类型,支持精准查询和模糊查询;\",\"style\":67,\"merge\":[0,6]}}},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"groupField\":\"jdcx.update_by\",\"freeze\":\"A1\",\"dataRectWidth\":1242,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"bgcolor\":\"#5b9cd6\"},{\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"color\":\"#ffffff\"},{\"align\":\"center\"},{\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"align\":\"center\"},{\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"align\":\"center\"},{\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\"},{\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8}},{\"font\":{\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9}},{\"font\":{\"size\":9},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":9},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9},\"align\":\"left\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"align\":\"left\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"align\":\"center\",\"format\":\"date\"},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"name\":\"宋体\"}},{\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"left\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\",\"format\":\"date\"},{\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"left\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\",\"format\":\"date\"},{\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"left\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"format\":\"date\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"format\":\"date2\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"format\":\"normal\"},{\"align\":\"center\",\"bgcolor\":\"#5b9cd6\"},{\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\",\"font\":{\"size\":9}},{\"border\":{\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"]}},{\"border\":{\"top\":[\"thin\",\"#000100\"]}},{\"border\":{\"top\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"top\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"top\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"align\":\"center\",\"format\":\"number\"}],\"validations\":[],\"isGroup\":true,\"cols\":{\"0\":{\"width\":40},\"1\":{\"width\":88},\"2\":{\"width\":86},\"3\":{\"width\":97},\"4\":{\"width\":67},\"5\":{\"width\":103},\"6\":{\"width\":115},\"7\":{\"width\":90},\"8\":{\"width\":239},\"9\":{\"width\":217},\"len\":50},\"merges\":[\"B6:H6\",\"B7:H7\",\"B8:H8\",\"B9:H9\"]}', NULL, 'https://static.jeecg.com/designreport/images/QQ截图20201216112919_1608089379396.png', 'admin', '2020-12-15 15:14:27', 'admin', '2021-07-13 05:38:58', 0, NULL, NULL, 1, 1059, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1338769064067076098', '202012151514266124', '多选条件查询报表', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":{\"sri\":5,\"sci\":1,\"eri\":5,\"eci\":1,\"width\":107,\"height\":25},\"excel_config_id\":\"1338769064067076098\",\"printConfig\":{\"paper\":\"A3\",\"width\":297,\"height\":420,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"landscape\"},\"rows\":{\"0\":{\"cells\":{}},\"1\":{\"cells\":{\"1\":{\"text\":\"职务\",\"style\":51},\"2\":{\"text\":\"雇员ID\",\"style\":51},\"3\":{\"text\":\"姓名\",\"style\":51},\"4\":{\"style\":51,\"text\":\"性别\"},\"5\":{\"text\":\"雇佣日期\",\"style\":51},\"6\":{\"text\":\"家庭电话\",\"style\":51},\"7\":{\"text\":\"出生日期\",\"style\":51},\"8\":{\"text\":\"户口所在地\",\"style\":51},\"9\":{\"text\":\"联系地址\",\"style\":51},\"10\":{\"text\":\"紧急联系人\",\"style\":51}},\"height\":46},\"2\":{\"cells\":{\"1\":{\"text\":\"#{pop.group(update_by)}\",\"style\":53,\"aggregate\":\"group\"},\"2\":{\"text\":\"#{pop.group(id)}\",\"style\":54,\"aggregate\":\"group\"},\"3\":{\"text\":\"#{pop.group(name)}\",\"style\":54,\"aggregate\":\"group\"},\"4\":{\"text\":\"#{pop.sex}\",\"style\":55},\"5\":{\"text\":\"#{pop.gtime}\",\"style\":56},\"6\":{\"text\":\"#{pop.jphone}\",\"style\":57},\"7\":{\"text\":\"#{pop.birth}\",\"style\":56},\"8\":{\"text\":\"#{pop.hukou}\",\"style\":58},\"9\":{\"text\":\"#{pop.laddress}\",\"style\":57},\"10\":{\"text\":\"#{pop.jperson}\",\"style\":57}},\"isDrag\":true,\"height\":35},\"5\":{\"cells\":{\"2\":{\"text\":\"\"}},\"isDrag\":true},\"len\":99},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"groupField\":\"pop.update_by\",\"freeze\":\"A1\",\"dataRectWidth\":1494,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"bgcolor\":\"#5b9cd6\"},{\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"color\":\"#ffffff\"},{\"align\":\"center\"},{\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"align\":\"center\"},{\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"align\":\"center\"},{\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\"},{\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":8}},{\"font\":{\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9}},{\"font\":{\"size\":9},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":9},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9},\"align\":\"left\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"align\":\"left\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9},\"align\":\"center\",\"format\":\"date\"},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"name\":\"宋体\"}},{\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"left\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\",\"format\":\"date\"},{\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#f1f9f6\",\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ddefe8\",\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"left\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\",\"format\":\"date\"},{\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#bdd7ee\",\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#deeaf6\",\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ffffff\",\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":10,\"name\":\"宋体\"},\"align\":\"center\",\"format\":\"normal\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#deeaf6\",\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#bdd7ee\",\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ffffff\",\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"宋体\"},\"align\":\"center\",\"format\":\"normal\"},{\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#deeaf6\",\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#bdd7ee\",\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#ffffff\",\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"format\":\"date\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"format\":\"normal\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"font\":{\"size\":9,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"format\":\"date2\"}],\"validations\":[],\"isGroup\":true,\"cols\":{\"0\":{\"width\":48},\"1\":{\"width\":107},\"3\":{\"width\":91},\"4\":{\"width\":142},\"5\":{\"width\":130},\"6\":{\"width\":131},\"7\":{\"width\":235},\"8\":{\"width\":230},\"9\":{\"width\":148},\"10\":{\"width\":132},\"len\":50},\"merges\":[]}', NULL, 'https://static.jeecg.com/designreport/images/QQ截图20201216185224_1608116008543.png', 'admin', '2020-12-15 16:53:13', 'admin', '2021-07-13 05:38:57', 0, NULL, NULL, 1, 907, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1347373863746539520', '20210108104603', '实习证明', NULL, NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":{\"sri\":16,\"sci\":5,\"eri\":16,\"eci\":5,\"width\":147,\"height\":25},\"excel_config_id\":\"1347373863746539520\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"portrait\"},\"rows\":{\"0\":{\"cells\":{\"0\":{\"text\":\"\"},\"1\":{\"text\":\"\"}}},\"1\":{\"cells\":{\"0\":{\"text\":\"\"}}},\"3\":{\"cells\":{\"2\":{\"text\":\"\",\"rendered\":\"\"}}},\"5\":{\"cells\":{},\"height\":29},\"6\":{\"cells\":{\"2\":{\"text\":\"\",\"style\":2}},\"height\":34},\"7\":{\"cells\":{\"2\":{\"merge\":[0,4],\"text\":\"实习证明\",\"style\":2}},\"height\":41},\"8\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":3},\"2\":{\"text\":\"\"}}},\"9\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":3},\"2\":{\"text\":\"\",\"style\":3},\"3\":{\"text\":\"\"}},\"isDrag\":true,\"height\":33},\"10\":{\"cells\":{\"2\":{\"text\":\"${tt.name}\",\"style\":11},\"3\":{\"text\":\"同学在我公司与 2020年4月1日 至 2020年5月1日 实习。\",\"style\":19,\"merge\":[0,3],\"height\":34}},\"height\":34},\"11\":{\"cells\":{},\"height\":28},\"12\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":6},\"2\":{\"style\":13,\"text\":\"${tt.pingjia}\",\"merge\":[3,4],\"height\":129}},\"height\":36},\"13\":{\"cells\":{},\"height\":29},\"14\":{\"cells\":{},\"height\":33},\"15\":{\"cells\":{},\"height\":31},\"16\":{\"cells\":{}},\"17\":{\"cells\":{\"1\":{\"text\":\"\"},\"2\":{\"text\":\"特此证明!\",\"style\":12}}},\"20\":{\"cells\":{\"2\":{\"text\":\"\"},\"3\":{\"text\":\"\",\"style\":3},\"4\":{\"text\":\"\"}}},\"21\":{\"cells\":{\"4\":{\"text\":\"\"}}},\"22\":{\"cells\":{\"3\":{\"text\":\"\",\"style\":3},\"4\":{\"text\":\"证明人:\",\"style\":11},\"5\":{\"text\":\"${tt.lingdao}\",\"style\":12}}},\"23\":{\"cells\":{\"4\":{\"text\":\"\"},\"5\":{\"text\":\"${tt.shijian}\",\"style\":15}}},\"len\":100},\"dbexps\":[],\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":576,\"displayConfig\":{},\"background\":{\"path\":\"https://static.jeecg.com/designreport/images/11_1611283832037.png\",\"repeat\":\"no-repeat\",\"width\":\"\",\"height\":\"\"},\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":14}},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"right\"},{\"align\":\"left\"},{\"align\":\"left\",\"valign\":\"top\"},{\"align\":\"left\",\"valign\":\"top\",\"textwrap\":true},{\"font\":{\"size\":16}},{\"align\":\"left\",\"valign\":\"top\",\"textwrap\":false},{\"textwrap\":false},{\"textwrap\":true},{\"align\":\"right\",\"font\":{\"size\":12}},{\"font\":{\"size\":12}},{\"align\":\"left\",\"valign\":\"top\",\"textwrap\":true,\"font\":{\"size\":12}},{\"textwrap\":true,\"font\":{\"size\":12}},{\"align\":\"left\",\"font\":{\"size\":12}},{\"font\":{\"size\":12},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":14}},{\"font\":{\"size\":10}},{\"textwrap\":false,\"font\":{\"size\":12}}],\"validations\":[],\"cols\":{\"0\":{\"width\":69},\"1\":{\"width\":41},\"4\":{\"width\":119},\"5\":{\"width\":147},\"6\":{\"width\":31},\"len\":50},\"merges\":[\"C8:G8\",\"D11:G11\",\"C13:G16\"]}', NULL, 'https://static.jeecg.com/designreport/images/未标题-1_1610074948259.png', 'admin', '2021-01-08 10:46:04', 'admin', '2021-07-13 05:39:21', 0, NULL, NULL, 1, 124, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1347454742040809472', '20210108161240', '实例:年度各月份佣金收入', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":false,\"printElWidth\":718,\"excel_config_id\":\"1347454742040809472\",\"printElHeight\":1047,\"rows\":{\"1\":{\"cells\":{\"1\":{\"text\":\" \",\"virtual\":\"pZTpI3BKFw0lh6D7\"},\"2\":{\"text\":\"年度各月份佣金收入\",\"style\":23,\"merge\":[0,3],\"virtual\":\"pZTpI3BKFw0lh6D7\"},\"3\":{\"style\":24},\"4\":{\"style\":24},\"5\":{\"style\":24},\"6\":{\"text\":\" \"}},\"height\":37},\"2\":{\"cells\":{\"1\":{\"text\":\" \"},\"2\":{\"text\":\" \"},\"3\":{\"text\":\" \"},\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"}}},\"4\":{\"cells\":{\"1\":{\"text\":\"查询年度:2019\"},\"4\":{\"text\":\"查询机构:总公司\"},\"6\":{\"text\":\"单位:元\"}}},\"6\":{\"cells\":{\"1\":{\"text\":\"月份\",\"style\":12},\"2\":{\"text\":\"佣金/主营业收入\",\"style\":12},\"3\":{\"text\":\"累计\",\"style\":12},\"4\":{\"text\":\"历史最低水平\",\"style\":12},\"5\":{\"text\":\"历史平均水平\",\"style\":12},\"6\":{\"text\":\"历史最高水平\",\"style\":12}}},\"7\":{\"cells\":{\"1\":{\"text\":\"#{tmp_report_data_1.monty}\",\"style\":0},\"2\":{\"text\":\"#{tmp_report_data_1.main_income}\",\"style\":0},\"3\":{\"text\":\"#{tmp_report_data_1.total}\",\"style\":18},\"4\":{\"text\":\"#{tmp_report_data_1.his_lowest}\",\"style\":0},\"5\":{\"text\":\"#{tmp_report_data_1.his_average}\",\"style\":0},\"6\":{\"text\":\"#{tmp_report_data_1.his_highest}\",\"style\":0}},\"isDrag\":true},\"9\":{\"cells\":{\"1\":{\"merge\":[1,1]}}},\"len\":99},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":678,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":true}},{\"font\":{\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":false}},{\"font\":{\"bold\":false}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":true},\"align\":\"center\"},{\"font\":{\"bold\":true},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":true,\"size\":15},\"align\":\"center\"},{\"font\":{\"bold\":true,\"size\":15},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#01b0f1\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#33CCCC\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#33CCCC\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#33CCCC\",\"align\":\"left\"},{\"font\":{\"bold\":true,\"size\":16}},{\"font\":{\"bold\":true,\"size\":24}},{\"font\":{\"bold\":true,\"size\":22}},{\"font\":{\"bold\":true,\"size\":22},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"format\":\"usd\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"format\":\"rmb\"},{\"font\":{\"bold\":true,\"name\":\"黑体\"}},{\"font\":{\"bold\":true,\"name\":\"黑体\",\"size\":22}},{\"font\":{\"bold\":true,\"name\":\"宋体\",\"size\":22}},{\"font\":{\"bold\":true,\"name\":\"楷体\",\"size\":22}},{\"font\":{\"bold\":true,\"name\":\"楷体\",\"size\":22},\"align\":\"center\"},{\"align\":\"center\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":29},\"1\":{\"width\":111},\"2\":{\"width\":116},\"4\":{\"width\":122},\"len\":50},\"merges\":[\"B10:C11\",\"C2:F2\"],\"imgList\":[{\"row\":1,\"col\":1,\"width\":\"148\",\"height\":\"56\",\"src\":\"https://static.jeecg.com/designreport/images/kunlunlog_1610591367645.png\",\"layer_id\":\"pZTpI3BKFw0lh6D7\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[1,1],[1,2]]}]}', NULL, NULL, 'admin', '2021-01-08 16:12:40', 'admin', '2021-07-13 05:38:55', 0, NULL, NULL, 1, 62, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1347459370216198144', '20210108164121', '实例:来源收入统计', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"chartList\":[{\"row\":1,\"col\":1,\"width\":\"624\",\"height\":\"281\",\"config\":\"{\\\"legend\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":\\\"12\\\"},\\\"top\\\":\\\"top\\\",\\\"left\\\":\\\"right\\\",\\\"orient\\\":\\\"vertical\\\",\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"中国石油全资(集团所属)\\\",\\\"中国石油全资(股份所属)\\\",\\\"中石油控股或有控股权\\\",\\\"中石油参股\\\",\\\"非中石油\\\"],\\\"show\\\":true},\\\"series\\\":[{\\\"isRose\\\":false,\\\"data\\\":[{\\\"name\\\":\\\"中国石油全资(集团所属)\\\",\\\"value\\\":38460270.57,\\\"itemStyle\\\":{\\\"color\\\":\\\"#E46C8A\\\"}},{\\\"name\\\":\\\"中国石油全资(股份所属)\\\",\\\"value\\\":227595.77,\\\"itemStyle\\\":{\\\"color\\\":\\\"#FCDE43\\\"}},{\\\"name\\\":\\\"中石油控股或有控股权\\\",\\\"value\\\":679926.75,\\\"itemStyle\\\":{\\\"color\\\":\\\"#01A8E1\\\"}},{\\\"name\\\":\\\"中石油参股\\\",\\\"value\\\":72062.75,\\\"itemStyle\\\":{\\\"color\\\":\\\"#99CC00\\\"}},{\\\"name\\\":\\\"非中石油\\\",\\\"value\\\":1698597.62,\\\"itemStyle\\\":{\\\"color\\\":\\\"#800080\\\"}}],\\\"isRadius\\\":false,\\\"roseType\\\":\\\"\\\",\\\"notCount\\\":false,\\\"center\\\":[320,180],\\\"name\\\":\\\"访问来源\\\",\\\"minAngle\\\":0,\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"outside\\\",\\\"textStyle\\\":{\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"pie\\\",\\\"radius\\\":\\\"55%\\\",\\\"autoSort\\\":false}],\\\"tooltip\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"},\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true},\\\"title\\\":{\\\"show\\\":true,\\\"top\\\":5,\\\"text\\\":\\\"来源收入统计\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#c23531\\\",\\\"fontWeight\\\":\\\"bolder\\\",\\\"fontSize\\\":18},\\\"left\\\":\\\"center\\\",\\\"padding\\\":[5,20,5,10]},\\\"backgroundColor\\\":\\\"#fff\\\"}\",\"url\":\"\",\"extData\":{\"dataType\":\"sql\",\"apiStatus\":\"\",\"apiUrl\":\"\",\"dataId\":\"4af57d343f1d6521b71b85097b580786\",\"axisX\":\"biz_income\",\"axisY\":\"total\",\"series\":\"\",\"yText\":\"total\",\"xText\":\"biz_income\",\"dbCode\":\"tmp_report_data_income\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"pie.simple\",\"id\":\"\"},\"layer_id\":\"nVUy533exgQ70OPb\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[1,1],[1,2],[1,3],[1,4],[1,5],[1,6],[1,7],[1,8]]}],\"area\":{\"sri\":8,\"sci\":5,\"eri\":8,\"eci\":5,\"width\":63,\"height\":25},\"excel_config_id\":\"1347459370216198144\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"1\":{\"cells\":{\"1\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"2\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"3\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"4\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"5\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"6\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"7\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"8\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"}}},\"3\":{\"cells\":{}},\"16\":{\"cells\":{\"1\":{\"text\":\"业务来源\",\"style\":1},\"2\":{\"text\":\"保险经纪佣金费\",\"style\":1},\"3\":{\"text\":\"风险咨询费\",\"style\":1},\"4\":{\"text\":\"承保公证评估费\",\"style\":1},\"5\":{\"text\":\"保险公证费\",\"style\":1},\"6\":{\"text\":\"投标咨询费\",\"style\":1},\"7\":{\"text\":\"内控咨询费\",\"style\":1},\"8\":{\"text\":\"总计\",\"style\":1}}},\"17\":{\"cells\":{\"1\":{\"text\":\"#{tmp_report_data_income.biz_income}\",\"style\":0},\"2\":{\"text\":\"#{tmp_report_data_income.bx_jj_yongjin}\",\"style\":0},\"3\":{\"text\":\"#{tmp_report_data_income.bx_zx_money}\",\"style\":0},\"4\":{\"text\":\"#{tmp_report_data_income.chengbao_gz_money}\",\"style\":0},\"5\":{\"text\":\"#{tmp_report_data_income.bx_gg_moeny}\",\"style\":0},\"6\":{\"text\":\"#{tmp_report_data_income.tb_zx_money}\",\"style\":0},\"7\":{\"text\":\"#{tmp_report_data_income.neikong_zx_money}\",\"style\":0},\"8\":{\"text\":\"#{tmp_report_data_income.total}\",\"style\":0}},\"isDrag\":true,\"height\":24},\"len\":58},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":702,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#33CCCC\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":16},\"1\":{\"width\":105},\"2\":{\"width\":119},\"3\":{\"width\":87},\"4\":{\"width\":61},\"5\":{\"width\":63},\"6\":{\"width\":60},\"7\":{\"width\":91},\"len\":50},\"merges\":[]}', NULL, NULL, 'admin', '2021-01-08 16:41:21', 'admin', '2021-07-13 05:38:53', 0, NULL, NULL, 1, 63, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1352160857479581696', '20210121154924', 'redis', NULL, NULL, 'chartinfo', '{\"loopBlockList\":[],\"chartList\":[{\"row\":1,\"col\":7,\"width\":\"551\",\"height\":\"350\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#211F1E\\\",\\\"fontSize\\\":12}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#211E1E\\\"}},\\\"show\\\":false,\\\"name\\\":\\\"数量\\\",\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false}},\\\"xAxis\\\":{\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#171515\\\",\\\"fontSize\\\":12},\\\"rotate\\\":0,\\\"interval\\\":0},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#171515\\\"}},\\\"data\\\":[\\\"15:02:38\\\",\\\"15:02:39\\\",\\\"15:02:40\\\",\\\"15:02:41\\\",\\\"15:02:42\\\"],\\\"show\\\":true,\\\"name\\\":\\\"时间\\\"},\\\"grid\\\":{\\\"top\\\":60,\\\"left\\\":60,\\\"bottom\\\":60,\\\"right\\\":60},\\\"series\\\":[{\\\"areaStyle\\\":{\\\"color\\\":\\\"rgba(231,69,193,1)\\\",\\\"opacity\\\":0.2},\\\"data\\\":[59,59,59,59,59],\\\"showSymbol\\\":true,\\\"lineStyle\\\":{\\\"width\\\":5},\\\"symbolSize\\\":5,\\\"isArea\\\":true,\\\"name\\\":\\\"销量\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(241,71,214,1)\\\"},\\\"step\\\":false,\\\"label\\\":{\\\"show\\\":true,\\\"position\\\":\\\"top\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"line\\\",\\\"smooth\\\":true}],\\\"tooltip\\\":{\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":18}},\\\"title\\\":{\\\"show\\\":true,\\\"top\\\":0,\\\"text\\\":\\\"redis数量\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#9031C2\\\",\\\"fontWeight\\\":\\\"bolder\\\",\\\"fontSize\\\":18},\\\"left\\\":\\\"center\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"d4a29dfda94357308faf62be2b94db08\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"keysSizeForReport\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"line.area\",\"id\":\"NbjJrEsYcliaQRGO\"},\"layer_id\":\"NbjJrEsYcliaQRGO\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[1,7],[1,8],[1,9],[1,10],[1,11],[1,12]]},{\"row\":1,\"col\":1,\"width\":\"597\",\"height\":\"350\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#2692DD\\\",\\\"fontSize\\\":12}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#469BDC\\\"}},\\\"show\\\":false,\\\"name\\\":\\\"内存(kb)\\\",\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false}},\\\"xAxis\\\":{\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#00FFF2\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#398DD3\\\",\\\"fontSize\\\":12},\\\"rotate\\\":0,\\\"interval\\\":0},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#1E88D0\\\"}},\\\"data\\\":[\\\"15:02:38\\\",\\\"15:02:39\\\",\\\"15:02:40\\\",\\\"15:02:41\\\",\\\"15:02:42\\\"],\\\"show\\\":true,\\\"name\\\":\\\"时间\\\"},\\\"grid\\\":{\\\"top\\\":60,\\\"left\\\":60,\\\"bottom\\\":60,\\\"right\\\":60},\\\"series\\\":[{\\\"areaStyle\\\":{\\\"color\\\":\\\"#74BCFF\\\",\\\"opacity\\\":0.3},\\\"data\\\":[875,875,875,875,875],\\\"showSymbol\\\":true,\\\"lineStyle\\\":{\\\"width\\\":5},\\\"symbolSize\\\":5,\\\"isArea\\\":true,\\\"name\\\":\\\"销量\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"#1890FF\\\"},\\\"step\\\":false,\\\"label\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"},\\\"show\\\":true,\\\"position\\\":\\\"top\\\"},\\\"type\\\":\\\"line\\\",\\\"smooth\\\":true}],\\\"tooltip\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":18},\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true},\\\"title\\\":{\\\"show\\\":true,\\\"top\\\":5,\\\"text\\\":\\\"redis内存占用情况\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#4C87E4\\\",\\\"fontWeight\\\":\\\"bolder\\\",\\\"fontSize\\\":18},\\\"left\\\":\\\"center\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"6a1d22ca4c95e8fab655d3ceed43a84d\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"memoryForReport\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"line.area\",\"id\":\"YW0FQUwafBUTagh3\"},\"layer_id\":\"YW0FQUwafBUTagh3\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[1,1],[1,2],[1,3],[1,4],[1,5],[1,6]]}],\"area\":false,\"printElWidth\":1565,\"excel_config_id\":\"1352160857479581696\",\"printElHeight\":1047,\"rows\":{\"1\":{\"cells\":{\"1\":{\"text\":\" \",\"virtual\":\"YW0FQUwafBUTagh3\",\"style\":19,\"merge\":[0,1]},\"2\":{\"text\":\" \",\"virtual\":\"YW0FQUwafBUTagh3\"},\"3\":{\"style\":19,\"virtual\":\"YW0FQUwafBUTagh3\"},\"4\":{\"style\":19,\"virtual\":\"YW0FQUwafBUTagh3\"},\"5\":{\"style\":19,\"virtual\":\"YW0FQUwafBUTagh3\"},\"6\":{\"style\":19,\"virtual\":\"YW0FQUwafBUTagh3\"},\"7\":{\"text\":\" \",\"virtual\":\"NbjJrEsYcliaQRGO\"},\"8\":{\"text\":\" \",\"virtual\":\"NbjJrEsYcliaQRGO\"},\"9\":{\"text\":\" \",\"virtual\":\"NbjJrEsYcliaQRGO\"},\"10\":{\"text\":\" \",\"virtual\":\"NbjJrEsYcliaQRGO\"},\"11\":{\"text\":\" \",\"virtual\":\"NbjJrEsYcliaQRGO\"},\"12\":{\"text\":\" \",\"virtual\":\"NbjJrEsYcliaQRGO\"}}},\"2\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"3\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"4\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"5\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"6\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"7\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"8\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"9\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"10\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"11\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"12\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"13\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"14\":{\"cells\":{\"1\":{\"style\":19},\"2\":{\"style\":19},\"3\":{\"style\":19},\"4\":{\"style\":19},\"5\":{\"style\":19},\"6\":{\"style\":19},\"7\":{\"text\":\" \"}}},\"17\":{\"cells\":{\"1\":{}}},\"18\":{\"cells\":{\"1\":{\"text\":\"redis详细信息\",\"style\":5,\"merge\":[1,1]}}},\"19\":{\"cells\":{}},\"20\":{\"cells\":{\"1\":{\"text\":\"key\",\"merge\":[0,1],\"style\":46},\"2\":{\"text\":\" \",\"style\":47},\"3\":{\"merge\":[0,1],\"style\":46,\"text\":\"value\"},\"4\":{\"text\":\" \",\"style\":47},\"5\":{\"merge\":[0,9],\"style\":46,\"text\":\"desc\"},\"6\":{\"text\":\" \",\"style\":47},\"7\":{\"text\":\" \",\"style\":47},\"8\":{\"text\":\" \",\"style\":47},\"9\":{\"text\":\" \",\"style\":47},\"10\":{\"text\":\" \",\"style\":47},\"11\":{\"text\":\" \",\"style\":47},\"12\":{\"text\":\" \",\"style\":47},\"13\":{\"text\":\" \",\"style\":47},\"14\":{\"text\":\" \",\"style\":47}}},\"21\":{\"cells\":{\"1\":{\"merge\":[0,1],\"text\":\"#{infoForReport.key}\",\"style\":52},\"2\":{\"text\":\" \",\"style\":53},\"3\":{\"merge\":[0,1],\"text\":\"#{infoForReport.value}\",\"style\":52},\"4\":{\"text\":\" \",\"style\":53},\"5\":{\"text\":\"#{infoForReport.description}\",\"style\":52,\"merge\":[0,9]}}},\"len\":98},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":1500,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"font\":{\"bold\":true}},{\"font\":{\"bold\":true},\"align\":\"center\"},{\"align\":\"center\"},{\"font\":{\"bold\":true,\"size\":18},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":18}},{\"font\":{\"bold\":true,\"size\":14},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":14}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#d8d8d8\"},{\"bgcolor\":\"#d8d8d8\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#d8d8d8\",\"align\":\"center\"},{\"bgcolor\":\"#d8d8d8\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#f2f2f2\",\"align\":\"center\"},{\"bgcolor\":\"#f2f2f2\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#a5a5a5\",\"align\":\"center\"},{\"bgcolor\":\"#a5a5a5\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#bfbfbf\",\"align\":\"center\"},{\"bgcolor\":\"#bfbfbf\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#ffffff\"},{\"bgcolor\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#f2f2f2\"},{\"bgcolor\":\"#f2f2f2\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#5b9cd6\"},{\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#deeaf6\",\"align\":\"center\"},{\"bgcolor\":\"#deeaf6\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#9cc2e6\"},{\"bgcolor\":\"#9cc2e6\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#93d051\",\"align\":\"center\"},{\"bgcolor\":\"#93d051\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#a7d08c\",\"align\":\"center\"},{\"bgcolor\":\"#a7d08c\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#c5e0b3\",\"align\":\"center\"},{\"bgcolor\":\"#c5e0b3\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#deeaf6\"},{\"bgcolor\":\"#deeaf6\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#d5dce4\"},{\"bgcolor\":\"#d5dce4\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#93d051\"},{\"bgcolor\":\"#93d051\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#756f6f\"},{\"bgcolor\":\"#756f6f\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#c5e0b3\"},{\"bgcolor\":\"#c5e0b3\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#a7d08c\"},{\"bgcolor\":\"#a7d08c\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#71ae47\"},{\"bgcolor\":\"#71ae47\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#01b0f1\"},{\"bgcolor\":\"#01b0f1\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#0170c1\"},{\"bgcolor\":\"#0170c1\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#8eaada\"},{\"bgcolor\":\"#8eaada\"}],\"validations\":[],\"cols\":{\"len\":50},\"merges\":[\"D19:E19\",\"F19:M19\",\"D20:E20\",\"F20:M20\",\"B2:C2\",\"B19:C20\",\"B22:C22\",\"D22:E22\",\"B21:C21\",\"D21:E21\",\"F21:O21\",\"F22:O22\"]}', NULL, NULL, 'admin', '2021-01-21 15:49:25', 'admin', '2021-02-03 13:58:06', 1, NULL, NULL, 0, 64, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('1cd9d574d0c42f3915046dc61d9f33bd', '202012171553133795', '企业实时报表副本3795', NULL, NULL, 'chartinfo', '{\"loopBlockList\":[],\"chartList\":[{\"row\":6,\"col\":1,\"colspan\":0,\"rowspan\":0,\"width\":\"302\",\"height\":\"337\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":0,\\\"interval\\\":0,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"data\\\":[\\\"江苏\\\",\\\"山东\\\",\\\"安徽\\\",\\\"江西\\\",\\\"河北\\\",\\\"吉林\\\",\\\"黑龙江\\\",\\\"重庆\\\",\\\"广东\\\",\\\"上海\\\",\\\"哈尔滨\\\",\\\"福建\\\",\\\"四川\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type\\\":\\\"category\\\"},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#333\\\"}},\\\"show\\\":false,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type \\\":\\\"value\\\"},\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"销售额\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"grid\\\":{\\\"top\\\":20,\\\"left\\\":45,\\\"bottom\\\":16,\\\"right\\\":46},\\\"series\\\":[{\\\"barWidth\\\":13,\\\"data\\\":[100,800,1200,1700,2500,4000,5800,6500,7000,7500,8000,8800,9500],\\\"name\\\":\\\"销售额\\\",\\\"itemStyle\\\":{\\\"barBorderRadius\\\":5,\\\"color\\\":\\\"rgba(67,184,251,1)\\\"},\\\"label\\\":{\\\"show\\\":true,\\\"position\\\":\\\"right\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#689AFB\\\",\\\"fontSize\\\":\\\"10\\\",\\\"fontWeight\\\":\\\"normal\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2,\\\"typeData\\\":[],\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontWeight\\\":\\\"bolder\\\"}}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"axisPointer\\\":{\\\"type\\\":\\\"shadow\\\"},\\\"trigger\\\":\\\"axis\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":false,\\\"top\\\":5,\\\"text\\\":\\\"销售额省份排名\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontWeight\\\":\\\"normal\\\",\\\"fontSize\\\":\\\"14\\\"},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,20]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1339491107951640577\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"xiaoshoue\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"bar.multi.horizontal\",\"chartId\":\"pie.doughnut\"},\"layer_id\":\"IFj1lg5S5aNG1wPx\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[6,1],[6,2],[6,3],[6,4]]},{\"row\":6,\"col\":10,\"colspan\":0,\"rowspan\":0,\"width\":\"247\",\"height\":\"124\",\"config\":\"{\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"销售额\\\",\\\"其他\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"series\\\":[{\\\"isRose\\\":false,\\\"data\\\":[{\\\"name\\\":\\\"销售额\\\",\\\"value\\\":6000000,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(43,193,254,1)\\\"}},{\\\"name\\\":\\\"其他\\\",\\\"value\\\":3400879,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(42,45,76,0.59)\\\"}}],\\\"isRadius\\\":true,\\\"roseType\\\":\\\"\\\",\\\"notCount\\\":false,\\\"name\\\":\\\"访问来源\\\",\\\"minAngle\\\":0,\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"outside\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"pie\\\",\\\"radius\\\":[\\\"45%\\\",\\\"55%\\\"],\\\"autoSort\\\":false}],\\\"tooltip\\\":{\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":false,\\\"top\\\":5,\\\"text\\\":\\\"销售进度\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontWeight\\\":\\\"normal\\\",\\\"fontSize\\\":\\\"14\\\"},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1339498906765000705\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"xsjd\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"pie.doughnut\",\"chartId\":\"pie.doughnut\"},\"layer_id\":\"Yb2TIGEAxnvN9ITx\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[6,10],[6,11]]},{\"row\":6,\"col\":12,\"colspan\":0,\"rowspan\":0,\"width\":\"244\",\"height\":\"128\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":0,\\\"interval\\\":0,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"data\\\":[\\\"北京\\\",\\\"青岛\\\",\\\"合肥\\\",\\\"深圳\\\",\\\"石家庄\\\",\\\"重庆\\\",\\\"保定\\\",\\\"邯郸\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type\\\":\\\"category\\\"},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#333\\\"}},\\\"show\\\":false,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type \\\":\\\"value\\\"},\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"销售额\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"grid\\\":{\\\"top\\\":10,\\\"left\\\":49,\\\"bottom\\\":16,\\\"right\\\":45},\\\"series\\\":[{\\\"barWidth\\\":9,\\\"data\\\":[80,500,800,1000,1200,1500,1600,2000],\\\"name\\\":\\\"销售额\\\",\\\"itemStyle\\\":{\\\"barBorderRadius\\\":0,\\\"color\\\":\\\"rgba(146,119,252,1)\\\"},\\\"label\\\":{\\\"show\\\":true,\\\"position\\\":\\\"right\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#689AFB\\\",\\\"fontSize\\\":\\\"10\\\",\\\"fontWeight\\\":\\\"normal\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2,\\\"typeData\\\":[],\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontWeight\\\":\\\"bolder\\\"}}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"axisPointer\\\":{\\\"type\\\":\\\"shadow\\\"},\\\"trigger\\\":\\\"axis\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":false,\\\"top\\\":5,\\\"text\\\":\\\"销售额城市排名\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontWeight\\\":\\\"normal\\\",\\\"fontSize\\\":\\\"14\\\"},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,20]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1339495346077728770\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"chengshi\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"bar.multi.horizontal\",\"chartId\":\"bar.multi.horizontal\"},\"layer_id\":\"qQHpevWlqElpRQUl\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[6,12],[6,13],[6,14]]},{\"row\":6,\"col\":15,\"colspan\":0,\"rowspan\":0,\"width\":\"230\",\"height\":\"127\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":0,\\\"interval\\\":0,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"data\\\":[\\\"北京\\\",\\\"青岛\\\",\\\"合肥\\\",\\\"深圳\\\",\\\"石家庄\\\",\\\"重庆\\\",\\\"保定\\\",\\\"邯郸\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type\\\":\\\"category\\\"},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#333\\\"}},\\\"show\\\":false,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type \\\":\\\"value\\\"},\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"销售额\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"grid\\\":{\\\"top\\\":10,\\\"left\\\":49,\\\"bottom\\\":20,\\\"right\\\":48},\\\"series\\\":[{\\\"barWidth\\\":9,\\\"data\\\":[80,500,800,1000,1200,1500,1600,2000],\\\"name\\\":\\\"销售额\\\",\\\"itemStyle\\\":{\\\"barBorderRadius\\\":0,\\\"color\\\":\\\"rgba(146,119,252,1)\\\"},\\\"label\\\":{\\\"show\\\":true,\\\"position\\\":\\\"right\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#689AFB\\\",\\\"fontSize\\\":\\\"10\\\",\\\"fontWeight\\\":\\\"normal\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2,\\\"typeData\\\":[],\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontWeight\\\":\\\"bolder\\\"}}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"axisPointer\\\":{\\\"type\\\":\\\"shadow\\\"},\\\"trigger\\\":\\\"axis\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":false,\\\"top\\\":5,\\\"text\\\":\\\"某站点用户访问来源\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#c23531\\\",\\\"fontWeight\\\":\\\"bolder\\\",\\\"fontSize\\\":18},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,20]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1339495346077728770\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"chengshi\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"bar.multi.horizontal\",\"chartId\":\"bar.multi.horizontal\"},\"layer_id\":\"phTmhkjHLebYlOEQ\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[6,15],[6,16],[6,17],[6,18]]},{\"row\":7,\"col\":5,\"colspan\":0,\"rowspan\":0,\"width\":\"430\",\"height\":\"293\",\"config\":\"{\\\"geo\\\":{\\\"map\\\":\\\"china\\\",\\\"zoom\\\":0.5,\\\"label\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"8\\\",\\\"show\\\":true},\\\"itemStyle\\\":{\\\"borderWidth\\\":0.5,\\\"areaColor\\\":\\\"#8284FB\\\",\\\"borderColor\\\":\\\"#000\\\"},\\\"emphasis\\\":{\\\"label\\\":{\\\"color\\\":\\\"#fff\\\"},\\\"itemStyle\\\":{\\\"areaColor\\\":\\\"#4195EF\\\"}},\\\"regions\\\":[],\\\"layoutSize\\\":600,\\\"roam\\\":true,\\\"layoutCenter\\\":[\\\"50%\\\",\\\"50%\\\"]},\\\"series\\\":[{\\\"encode\\\":{\\\"value\\\":[2]},\\\"data\\\":[{\\\"name\\\":\\\"河北\\\",\\\"value\\\":[114.502461,38.045474,279]},{\\\"name\\\":\\\"海南\\\",\\\"value\\\":[110.33119,20.031971,273]},{\\\"name\\\":\\\"山东\\\",\\\"value\\\":[117.000923,36.675807,229]},{\\\"name\\\":\\\"甘肃\\\",\\\"value\\\":[103.823557,36.058039,194]},{\\\"name\\\":\\\"宁夏\\\",\\\"value\\\":[106.278179,38.46637,193]},{\\\"name\\\":\\\"浙江\\\",\\\"value\\\":[120.153576,30.287459,177]},{\\\"name\\\":\\\"湖南\\\",\\\"value\\\":[112.982279,28.19409,119]},{\\\"name\\\":\\\"湖北\\\",\\\"value\\\":[114.298572,30.584355,79]},{\\\"name\\\":\\\"河南\\\",\\\"value\\\":[113.665412,34.757975,67]},{\\\"name\\\":\\\"北京\\\",\\\"value\\\":[116.405285,39.904989,58]},{\\\"name\\\":\\\"天津\\\",\\\"value\\\":[117.190182,39.125596,59]},{\\\"name\\\":\\\"上海\\\",\\\"value\\\":[121.472644,31.231706,63]}],\\\"name\\\":\\\"\\\",\\\"emphasis\\\":{\\\"label\\\":{\\\"show\\\":true}},\\\"itemStyle\\\":{\\\"color\\\":\\\"#FF1205\\\"},\\\"coordinateSystem\\\":\\\"geo\\\",\\\"label\\\":{\\\"formatter\\\":\\\"{b}\\\",\\\"show\\\":false,\\\"position\\\":\\\"right\\\"},\\\"type\\\":\\\"scatter\\\",\\\"symbolSize\\\":5}],\\\"chartType\\\":\\\"map\\\",\\\"tooltip\\\":{\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":false,\\\"top\\\":5,\\\"text\\\":\\\"主要城市空气质量\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#c23531\\\",\\\"fontWeight\\\":\\\"normal\\\",\\\"fontSize\\\":\\\"14\\\"},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"chartType\":\"map.scatter\"},\"layer_id\":\"YTri6J59av4gj1CY\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[7,5],[7,6],[7,7],[7,8]]},{\"row\":14,\"col\":12,\"colspan\":0,\"rowspan\":0,\"width\":\"244\",\"height\":\"138\",\"config\":\"{\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"销售额\\\",\\\"其他\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"series\\\":[{\\\"isRose\\\":false,\\\"data\\\":[{\\\"name\\\":\\\"销售额\\\",\\\"value\\\":6000000,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(43,193,254,1)\\\"}},{\\\"name\\\":\\\"其他\\\",\\\"value\\\":3400879,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(42,45,76,0.59)\\\"}}],\\\"isRadius\\\":true,\\\"roseType\\\":\\\"\\\",\\\"notCount\\\":false,\\\"name\\\":\\\"访问来源\\\",\\\"minAngle\\\":0,\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"outside\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"pie\\\",\\\"radius\\\":[\\\"50%\\\",\\\"60%\\\"],\\\"autoSort\\\":false}],\\\"tooltip\\\":{\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":false,\\\"top\\\":5,\\\"text\\\":\\\"\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#c23531\\\",\\\"fontWeight\\\":\\\"bolder\\\",\\\"fontSize\\\":18},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1339498906765000705\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"xsjd\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"pie.doughnut\",\"chartId\":\"pie.doughnut\"},\"layer_id\":\"ARuuHLfjqV9l1tQD\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[14,12],[14,13],[14,14]]},{\"row\":14,\"col\":15,\"colspan\":0,\"rowspan\":0,\"width\":\"230\",\"height\":\"139\",\"config\":\"{\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"销售额\\\",\\\"其他\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"series\\\":[{\\\"isRose\\\":false,\\\"data\\\":[{\\\"name\\\":\\\"销售额\\\",\\\"value\\\":6000000,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(43,193,254,1)\\\"}},{\\\"name\\\":\\\"其他\\\",\\\"value\\\":3400879,\\\"itemStyle\\\":{\\\"color\\\":\\\"rgba(42,45,76,0.59)\\\"}}],\\\"isRadius\\\":true,\\\"roseType\\\":\\\"\\\",\\\"notCount\\\":false,\\\"name\\\":\\\"访问来源\\\",\\\"minAngle\\\":0,\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"outside\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"pie\\\",\\\"radius\\\":[\\\"45%\\\",\\\"55%\\\"],\\\"autoSort\\\":false}],\\\"tooltip\\\":{\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":false,\\\"top\\\":5,\\\"text\\\":\\\"某站点用户访问来源\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#c23531\\\",\\\"fontWeight\\\":\\\"bolder\\\",\\\"fontSize\\\":18},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1339498906765000705\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"xsjd\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"pie.doughnut\",\"chartId\":\"\"},\"layer_id\":\"bcrMtWqTd2AJIjLd\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[14,15],[14,16],[14,17],[14,18]]},{\"row\":14,\"col\":10,\"colspan\":0,\"rowspan\":0,\"width\":\"244\",\"height\":\"138\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":0,\\\"interval\\\":0,\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"data\\\":[\\\"北京\\\",\\\"青岛\\\",\\\"合肥\\\",\\\"深圳\\\",\\\"石家庄\\\",\\\"重庆\\\",\\\"保定\\\",\\\"邯郸\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type\\\":\\\"category\\\"},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#333\\\"}},\\\"show\\\":false,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type \\\":\\\"value\\\"},\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"销售额\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":false,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"grid\\\":{\\\"top\\\":10,\\\"left\\\":49,\\\"bottom\\\":15,\\\"right\\\":45},\\\"series\\\":[{\\\"barWidth\\\":9,\\\"data\\\":[80,500,800,1000,1200,1500,1600,2000],\\\"name\\\":\\\"销售额\\\",\\\"itemStyle\\\":{\\\"barBorderRadius\\\":0,\\\"color\\\":\\\"rgba(146,119,252,1)\\\"},\\\"label\\\":{\\\"show\\\":true,\\\"position\\\":\\\"right\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#698AFB\\\",\\\"fontSize\\\":\\\"10\\\",\\\"fontWeight\\\":\\\"normal\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2,\\\"typeData\\\":[],\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontWeight\\\":\\\"bolder\\\"}}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"axisPointer\\\":{\\\"type\\\":\\\"shadow\\\"},\\\"trigger\\\":\\\"axis\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":false,\\\"top\\\":5,\\\"text\\\":\\\"某站点用户访问来源\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#c23531\\\",\\\"fontWeight\\\":\\\"bolder\\\",\\\"fontSize\\\":18},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,20]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1339495346077728770\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"chengshi\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"bar.multi.horizontal\",\"chartId\":\"bar.multi.horizontal\"},\"layer_id\":\"Y1kgYOWBHIVQdSN5\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[14,10],[14,11]]},{\"row\":20,\"col\":1,\"colspan\":0,\"rowspan\":0,\"width\":\"743\",\"height\":\"150\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"name\\\":\\\"\\\",\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false}},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":0,\\\"interval\\\":0,\\\"textStyle\\\":{\\\"color\\\":\\\"#FEFEFE\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"data\\\":[\\\"2020-01-09\\\",\\\"2020-01-12\\\",\\\"2020-01-14\\\",\\\"2020-01-16\\\",\\\"2020-01-18\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\"}},\\\"show\\\":true,\\\"name\\\":\\\"\\\",\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false}},\\\"grid\\\":{\\\"top\\\":53,\\\"left\\\":22,\\\"bottom\\\":37,\\\"right\\\":20},\\\"series\\\":[{\\\"areaStyle\\\":{\\\"color\\\":\\\"#43B8FB\\\",\\\"opacity\\\":0.7},\\\"data\\\":[2,6,7,5,6],\\\"showSymbol\\\":true,\\\"lineStyle\\\":{\\\"width\\\":2},\\\"symbolSize\\\":5,\\\"isArea\\\":true,\\\"name\\\":\\\"销量\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"#43B8FB\\\"},\\\"step\\\":false,\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"top\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"line\\\",\\\"smooth\\\":false}],\\\"tooltip\\\":{\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":\\\"10\\\"}},\\\"title\\\":{\\\"show\\\":true,\\\"top\\\":14,\\\"text\\\":\\\"销售额增速\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFFFF\\\",\\\"fontWeight\\\":\\\"normal\\\",\\\"fontSize\\\":\\\"14\\\"},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"api\",\"apiStatus\":\"1\",\"dataId\":\"1339538388453195777\",\"axisX\":\"name\",\"axisY\":\"value\",\"series\":\"type\",\"yText\":\"\",\"xText\":\"\",\"dbCode\":\"zhexian\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"line.area\",\"chartId\":\"\"},\"layer_id\":\"uChrZaHYoV04MQpT\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[20,1],[20,2],[20,3],[20,4],[20,5],[20,6],[20,7],[20,8],[20,9]]}],\"area\":{\"sri\":4,\"sci\":7,\"eri\":4,\"eci\":7,\"width\":100,\"height\":38},\"excel_config_id\":\"1cd9d574d0c42f3915046dc61d9f33bd\",\"printConfig\":{\"paper\":\"A3\",\"width\":297,\"height\":420,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"landscape\"},\"rows\":{\"0\":{\"cells\":{}},\"2\":{\"cells\":{\"1\":{\"merge\":[0,17],\"text\":\"企业实时销售数据\",\"style\":3}}},\"3\":{\"cells\":{},\"height\":35},\"4\":{\"cells\":{\"1\":{\"text\":\" 销售额省份排名\",\"style\":32,\"merge\":[0,1],\"virtual\":\"IFj1lg5S5aNG1wPx\"},\"2\":{\"style\":32,\"virtual\":\"IFj1lg5S5aNG1wPx\"},\"5\":{\"text\":\" 销售总额\",\"style\":69},\"10\":{\"text\":\" 销售进度\",\"style\":43},\"11\":{\"text\":\"\",\"style\":43},\"13\":{\"text\":\" 销售额城市排名\",\"style\":32,\"merge\":[0,1]},\"15\":{\"text\":\" 个人业绩排名\",\"style\":32,\"merge\":[0,1]},\"17\":{\"text\":\"\",\"style\":32,\"merge\":[0,1]}},\"height\":38},\"5\":{\"cells\":{\"1\":{\"text\":\" Sales ranking points\",\"virtual\":\"IFj1lg5S5aNG1wPx\",\"style\":62,\"merge\":[0,1]},\"5\":{\"text\":\"12436025\",\"style\":52,\"merge\":[1,0]},\"6\":{\"merge\":[1,0],\"text\":\"元\",\"style\":22},\"10\":{\"text\":\" Sales progress\",\"style\":33},\"11\":{\"text\":\"\",\"virtual\":\"Yb2TIGEAxnvN9ITx\",\"style\":33},\"13\":{\"text\":\" Sales ranking\",\"virtual\":\"qQHpevWlqElpRQUl\",\"style\":31},\"15\":{\"text\":\" Personal ranking\",\"style\":62,\"merge\":[0,1]},\"17\":{\"text\":\"\",\"style\":62,\"merge\":[0,1]}},\"height\":24},\"6\":{\"cells\":{\"1\":{\"text\":\"\",\"merge\":[0,1],\"style\":31,\"virtual\":\"IFj1lg5S5aNG1wPx\"},\"2\":{\"style\":31,\"virtual\":\"IFj1lg5S5aNG1wPx\"},\"3\":{\"text\":\" \",\"virtual\":\"IFj1lg5S5aNG1wPx\"},\"4\":{\"text\":\" \",\"virtual\":\"IFj1lg5S5aNG1wPx\"},\"10\":{\"text\":\" \",\"virtual\":\"Yb2TIGEAxnvN9ITx\"},\"11\":{\"text\":\"\",\"style\":33,\"virtual\":\"Yb2TIGEAxnvN9ITx\"},\"12\":{\"text\":\" \",\"virtual\":\"qQHpevWlqElpRQUl\"},\"13\":{\"text\":\"\",\"virtual\":\"qQHpevWlqElpRQUl\",\"style\":31},\"14\":{\"text\":\" \",\"virtual\":\"qQHpevWlqElpRQUl\"},\"15\":{\"text\":\" \",\"virtual\":\"phTmhkjHLebYlOEQ\"},\"16\":{\"text\":\" \",\"virtual\":\"phTmhkjHLebYlOEQ\"},\"17\":{\"text\":\" \",\"style\":31,\"virtual\":\"phTmhkjHLebYlOEQ\"},\"18\":{\"text\":\" \",\"virtual\":\"phTmhkjHLebYlOEQ\"}}},\"7\":{\"cells\":{\"5\":{\"style\":53,\"virtual\":\"YTri6J59av4gj1CY\"},\"6\":{\"style\":22,\"virtual\":\"YTri6J59av4gj1CY\"},\"7\":{\"text\":\" \",\"virtual\":\"YTri6J59av4gj1CY\"},\"8\":{\"text\":\" \",\"virtual\":\"YTri6J59av4gj1CY\"}}},\"8\":{\"cells\":{\"5\":{\"style\":18,\"text\":\"\",\"virtual\":\"YTri6J59av4gj1CY\"}}},\"9\":{\"cells\":{\"5\":{\"style\":21,\"text\":\"\"}}},\"10\":{\"cells\":{\"5\":{\"text\":\"\",\"style\":17}}},\"12\":{\"cells\":{\"10\":{\"text\":\" 品类销售排名\",\"style\":43},\"11\":{\"text\":\"\",\"style\":43},\"13\":{\"text\":\" 品类销售额占比\",\"style\":43,\"merge\":[0,1]},\"15\":{\"text\":\" 一季度销售季度\",\"style\":43,\"merge\":[0,1]},\"17\":{\"text\":\"\",\"style\":43,\"merge\":[0,1]}}},\"13\":{\"cells\":{\"10\":{\"text\":\" Category Sales ranking\",\"style\":31},\"11\":{\"text\":\"\",\"style\":31},\"13\":{\"text\":\" Type of Sales \",\"style\":31},\"15\":{\"text\":\" Quarterly sales progree\",\"style\":58,\"merge\":[0,1]},\"17\":{\"text\":\"\",\"style\":58,\"merge\":[0,1]}}},\"14\":{\"cells\":{\"10\":{\"text\":\" \",\"virtual\":\"Y1kgYOWBHIVQdSN5\"},\"11\":{\"text\":\" \",\"virtual\":\"Y1kgYOWBHIVQdSN5\"},\"12\":{\"text\":\" \",\"virtual\":\"ARuuHLfjqV9l1tQD\"},\"13\":{\"text\":\" \",\"virtual\":\"ARuuHLfjqV9l1tQD\"},\"14\":{\"text\":\" \",\"virtual\":\"ARuuHLfjqV9l1tQD\"},\"15\":{\"text\":\" \",\"virtual\":\"bcrMtWqTd2AJIjLd\"},\"16\":{\"text\":\" \",\"virtual\":\"bcrMtWqTd2AJIjLd\"},\"17\":{\"text\":\" \",\"virtual\":\"bcrMtWqTd2AJIjLd\"},\"18\":{\"text\":\" \",\"virtual\":\"bcrMtWqTd2AJIjLd\"}}},\"15\":{\"cells\":{},\"height\":15},\"16\":{\"cells\":{\"11\":{\"text\":\"\",\"style\":43},\"13\":{\"text\":\"\",\"style\":43,\"merge\":[0,1]},\"17\":{\"text\":\"\",\"style\":43,\"merge\":[0,1]}}},\"17\":{\"cells\":{\"11\":{\"text\":\"\",\"style\":31},\"13\":{\"text\":\"\",\"style\":31},\"17\":{\"text\":\"\",\"merge\":[0,1],\"style\":58}}},\"18\":{\"cells\":{}},\"20\":{\"cells\":{\"1\":{\"text\":\" \",\"virtual\":\"uChrZaHYoV04MQpT\"},\"2\":{\"text\":\" \",\"virtual\":\"uChrZaHYoV04MQpT\"},\"3\":{\"text\":\" \",\"virtual\":\"uChrZaHYoV04MQpT\"},\"4\":{\"text\":\" \",\"virtual\":\"uChrZaHYoV04MQpT\"},\"5\":{\"text\":\" \",\"virtual\":\"uChrZaHYoV04MQpT\"},\"6\":{\"text\":\" \",\"virtual\":\"uChrZaHYoV04MQpT\"},\"7\":{\"text\":\" \",\"virtual\":\"uChrZaHYoV04MQpT\"},\"8\":{\"text\":\" \",\"virtual\":\"uChrZaHYoV04MQpT\"},\"9\":{\"text\":\" \",\"virtual\":\"uChrZaHYoV04MQpT\"}},\"height\":39},\"22\":{\"cells\":{\"10\":{\"text\":\"企业经营指标\",\"style\":74},\"11\":{\"text\":\"1201043元\",\"style\":73},\"13\":{\"text\":\"企业经营指标\",\"style\":74},\"14\":{\"text\":\"1201043元\",\"style\":73},\"16\":{\"text\":\"企业经营指标\",\"style\":74},\"17\":{\"text\":\"1201043元\",\"style\":73}}},\"23\":{\"cells\":{\"10\":{\"text\":\"企业经营指标1\",\"style\":74},\"11\":{\"text\":\"1201043元\",\"style\":73},\"13\":{\"text\":\"企业经营指标1\",\"style\":74},\"14\":{\"text\":\"1201043元\",\"style\":73},\"16\":{\"text\":\"企业经营指标1\",\"style\":74},\"17\":{\"text\":\"1201043元\",\"style\":73}}},\"26\":{\"cells\":{},\"height\":33},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":1584,\"displayConfig\":{},\"background\":{\"path\":\"https://static.jeecg.com/designreport/images/bg55_1608205385382.png\",\"repeat\":\"no-repeat\",\"width\":\"1525\",\"height\":\"700\"},\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"color\":\"#ffffff\"},{\"color\":\"#ffffff\",\"font\":{\"size\":16}},{\"color\":\"#ffffff\",\"font\":{\"size\":16},\"align\":\"center\"},{\"color\":\"#ffffff\",\"font\":{\"size\":18},\"align\":\"center\"},{\"font\":{\"size\":18}},{\"color\":\"#67b1ee\"},{\"color\":\"#67b1ee\",\"font\":{\"size\":14}},{\"color\":\"#67b1ee\",\"font\":{\"size\":12}},{\"font\":{\"size\":14}},{\"font\":{\"size\":18},\"bgcolor\":\"#ffffff\"},{\"font\":{\"size\":18},\"bgcolor\":\"#ffffff\",\"color\":\"#ffffff\"},{\"font\":{\"size\":16},\"bgcolor\":\"#ffffff\",\"color\":\"#ffffff\"},{\"color\":\"#67b1ee\",\"font\":{\"size\":12},\"align\":\"right\"},{\"font\":{\"size\":16},\"bgcolor\":\"#ffffff\",\"color\":\"#ffffff\",\"align\":\"right\"},{\"color\":\"#67b1ee\",\"font\":{\"size\":12},\"align\":\"center\"},{\"font\":{\"size\":16}},{\"font\":{\"size\":16},\"color\":\"#fe0000\"},{\"font\":{\"size\":16},\"color\":\"#fe0000\",\"align\":\"center\"},{\"color\":\"#67b1ee\",\"font\":{\"size\":12},\"align\":\"left\"},{\"align\":\"left\"},{\"align\":\"left\",\"font\":{\"size\":14}},{\"align\":\"left\",\"font\":{\"size\":14},\"color\":\"#ffffff\"},{\"font\":{\"size\":14},\"color\":\"#ffffff\"},{\"font\":{\"size\":12},\"color\":\"#ffffff\"},{\"font\":{\"size\":12,\"bold\":true},\"color\":\"#ffffff\"},{\"font\":{\"size\":12,\"bold\":false},\"color\":\"#ffffff\"},{\"font\":{\"size\":11,\"bold\":false},\"color\":\"#ffffff\"},{\"font\":{\"size\":8}},{\"font\":{\"size\":9}},{\"font\":{\"size\":9},\"color\":\"#67b1ee\"},{\"font\":{\"size\":9},\"color\":\"#67b1ee\",\"valign\":\"top\"},{\"font\":{\"size\":8},\"color\":\"#67b1ee\",\"valign\":\"top\"},{\"font\":{\"size\":11,\"bold\":false},\"color\":\"#ffffff\",\"valign\":\"bottom\"},{\"font\":{\"size\":8},\"color\":\"#67b1ee\"},{\"color\":\"#67b1ee\",\"font\":{\"size\":12},\"align\":\"left\",\"valign\":\"bottom\"},{\"align\":\"left\",\"valign\":\"bottom\"},{\"color\":\"#67b1ee\",\"font\":{\"size\":12},\"align\":\"center\",\"valign\":\"bottom\"},{\"align\":\"center\",\"valign\":\"bottom\"},{\"color\":\"#67b1ee\",\"font\":{\"size\":12},\"align\":\"left\",\"valign\":\"middle\"},{\"align\":\"left\",\"valign\":\"middle\"},{\"font\":{\"size\":11}},{\"font\":{\"size\":11},\"color\":\"#ffffff\"},{\"font\":{\"size\":11},\"color\":\"#ffffff\",\"valign\":\"middle\"},{\"font\":{\"size\":11},\"color\":\"#ffffff\",\"valign\":\"bottom\"},{\"color\":\"#ffffff\",\"font\":{\"size\":12},\"align\":\"left\",\"valign\":\"middle\"},{\"align\":\"left\",\"valign\":\"middle\",\"color\":\"#ffffff\"},{\"color\":\"#67b1ee\",\"font\":{\"size\":16}},{\"color\":\"#ffff01\",\"font\":{\"size\":16}},{\"color\":\"#ffffff\",\"font\":{\"size\":11},\"align\":\"left\",\"valign\":\"middle\"},{\"color\":\"#ffffff\",\"font\":{\"size\":14},\"align\":\"left\",\"valign\":\"middle\"},{\"color\":\"#ffff01\",\"font\":{\"size\":14},\"align\":\"left\",\"valign\":\"middle\"},{\"font\":{\"size\":14},\"color\":\"#ffff01\"},{\"color\":\"#ffff01\",\"font\":{\"size\":14},\"align\":\"right\",\"valign\":\"middle\"},{\"font\":{\"size\":14},\"color\":\"#ffff01\",\"align\":\"right\"},{\"color\":\"#ffffff\",\"valign\":\"bottom\"},{\"font\":{\"size\":8},\"bgcolor\":\"#67b1ee\"},{\"font\":{\"size\":8},\"bgcolor\":\"#ffffff\"},{\"font\":{\"size\":8},\"bgcolor\":\"#ffffff\",\"color\":\"#67b1ee\"},{\"font\":{\"size\":8},\"bgcolor\":\"#ffffff\",\"color\":\"#67b1ee\",\"valign\":\"top\"},{\"font\":{\"size\":8,\"bold\":false},\"color\":\"#ffffff\",\"valign\":\"bottom\"},{\"font\":{\"size\":8,\"bold\":false},\"color\":\"#ffffff\",\"valign\":\"top\"},{\"font\":{\"size\":8},\"valign\":\"top\"},{\"font\":{\"size\":8,\"bold\":false},\"color\":\"#67b1ee\",\"valign\":\"top\"},{\"color\":\"#ffffff\",\"font\":{\"size\":11},\"align\":\"center\",\"valign\":\"middle\"},{\"align\":\"center\"},{\"color\":\"#ffffff\",\"font\":{\"size\":11},\"align\":\"right\",\"valign\":\"middle\"},{\"align\":\"right\"},{\"color\":\"#ffffff\",\"font\":{\"size\":14},\"align\":\"right\",\"valign\":\"middle\"},{\"align\":\"right\",\"font\":{\"size\":14}},{\"color\":\"#ffffff\",\"font\":{\"size\":11},\"align\":\"left\",\"valign\":\"bottom\"},{\"color\":\"#67b1ee\",\"font\":{\"size\":11}},{\"color\":\"#67b1ee\",\"font\":{\"size\":11},\"align\":\"center\"},{\"font\":{\"size\":12}},{\"font\":{\"size\":12},\"color\":\"#ffff01\"},{\"color\":\"#67b1ee\",\"font\":{\"size\":11},\"align\":\"right\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":10},\"3\":{\"width\":102},\"4\":{\"width\":9},\"5\":{\"width\":105},\"6\":{\"width\":102},\"8\":{\"width\":124},\"9\":{\"width\":14},\"10\":{\"width\":136},\"11\":{\"width\":114},\"12\":{\"width\":15},\"13\":{\"width\":113},\"14\":{\"width\":129},\"15\":{\"width\":11},\"len\":50},\"merges\":[\"B3:S3\",\"B5:C5\",\"N5:O5\",\"P5:Q5\",\"R5:S5\",\"B6:C6\",\"F6:F7\",\"G6:G7\",\"P6:Q6\",\"R6:S6\",\"B7:C7\",\"N13:O13\",\"P13:Q13\",\"R13:S13\",\"P14:Q14\",\"R14:S14\",\"N17:O17\",\"R17:S17\",\"R18:S18\"]}', NULL, 'https://static.jeecg.com/designreport/images/QQ截图20201218200943_1608293404719.png', 'admin', '2021-01-18 13:21:10', 'admin', '2021-07-14 06:27:34', 0, NULL, NULL, 0, 681, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('519c1c6f4d1f584ae8fa5b43b45acdc7', '56623333333', '销售单', '', NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":false,\"excel_config_id\":\"519c1c6f4d1f584ae8fa5b43b45acdc7\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"0\":{\"cells\":{\"1\":{\"text\":\"销售单\",\"style\":40,\"merge\":[0,6]}},\"height\":99},\"1\":{\"cells\":{\"1\":{\"text\":\"商品编码\",\"style\":62},\"2\":{\"text\":\"商品名称\",\"style\":62},\"3\":{\"text\":\"销售时间\",\"style\":62},\"4\":{\"text\":\"销售数量\",\"style\":62},\"5\":{\"text\":\"定价\",\"style\":62},\"6\":{\"text\":\"优惠价\",\"style\":62},\"7\":{\"text\":\"付款金额\",\"style\":62}},\"height\":39},\"2\":{\"cells\":{\"1\":{\"text\":\"#{xiaoshou.bianma}\",\"style\":61},\"2\":{\"text\":\"#{xiaoshou.cname}\",\"style\":61},\"3\":{\"text\":\"#{xiaoshou.ctime}\",\"style\":61},\"4\":{\"text\":\"#{xiaoshou.cnum}\",\"style\":61},\"5\":{\"text\":\"#{xiaoshou.cprice}\",\"style\":61},\"6\":{\"text\":\"#{xiaoshou.yprice}\",\"style\":61},\"7\":{\"text\":\"#{xiaoshou.ctotal}\",\"style\":61}},\"isDrag\":true,\"height\":35},\"3\":{\"cells\":{\"1\":{\"style\":44,\"text\":\"\"},\"5\":{\"style\":44,\"text\":\"\"},\"6\":{\"text\":\"\",\"style\":45},\"7\":{\"style\":46,\"text\":\"=SUM(H3)\"}},\"isDrag\":true,\"height\":73},\"5\":{\"cells\":{},\"isDrag\":true},\"6\":{\"cells\":{},\"isDrag\":true},\"7\":{\"cells\":{\"2\":{\"text\":\"\"}},\"isDrag\":true},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":703,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#01b0f1\"],\"top\":[\"thin\",\"#01b0f1\"],\"left\":[\"thin\",\"#01b0f1\"],\"right\":[\"thin\",\"#01b0f1\"]}},{\"border\":{\"bottom\":[\"thin\",\"#01b0f1\"],\"top\":[\"thin\",\"#01b0f1\"],\"left\":[\"thin\",\"#01b0f1\"],\"right\":[\"thin\",\"#01b0f1\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#01b0f1\"],\"top\":[\"thin\",\"#01b0f1\"],\"left\":[\"thin\",\"#01b0f1\"],\"right\":[\"thin\",\"#01b0f1\"]},\"bgcolor\":\"#01b0f1\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#01b0f1\"},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"size\":18}},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"align\":\"center\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#fed964\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#fdc101\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#fdc101\"},{\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"align\":\"center\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#ffe59a\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#ffc001\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#fed964\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#ed7d31\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"align\":\"center\"},{\"font\":{\"size\":8}},{\"font\":{\"size\":8},\"color\":\"#7f7f7f\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#9cc2e6\"},{\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]}},{\"font\":{\"bold\":true}},{\"font\":{\"bold\":true,\"size\":12}},{\"font\":{\"bold\":true,\"size\":16}},{\"font\":{\"bold\":true,\"size\":18}},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"align\":\"right\"},{\"align\":\"right\"},{\"align\":\"left\"},{\"align\":\"right\",\"font\":{\"size\":16}},{\"align\":\"left\",\"font\":{\"size\":16}},{\"align\":\"right\",\"font\":{\"size\":14}},{\"align\":\"left\",\"font\":{\"size\":14}},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true,\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"right\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"right\",\"font\":{\"size\":14,\"name\":\"宋体\"}},{\"align\":\"left\",\"font\":{\"size\":14,\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#2e75b5\"],\"top\":[\"thin\",\"#2e75b5\"],\"left\":[\"thin\",\"#2e75b5\"],\"right\":[\"thin\",\"#2e75b5\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#000100\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffff01\"],\"top\":[\"thin\",\"#ffff01\"],\"left\":[\"thin\",\"#ffff01\"],\"right\":[\"thin\",\"#ffff01\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"right\",\"font\":{\"size\":14,\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"color\":\"#ffffff\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#2e75b5\"],\"top\":[\"thin\",\"#2e75b5\"],\"left\":[\"thin\",\"#2e75b5\"],\"right\":[\"thin\",\"#2e75b5\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#ffffff\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#ffffff\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#ffffff\",\"bgcolor\":\"#5b9cd6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}}],\"validations\":[],\"cols\":{\"0\":{\"width\":18},\"1\":{\"width\":102},\"2\":{\"width\":132},\"3\":{\"width\":147},\"4\":{\"width\":66},\"5\":{\"width\":66},\"6\":{\"width\":84},\"7\":{\"width\":88},\"8\":{\"width\":121},\"len\":50},\"merges\":[\"B1:H1\"]}', '', 'https://static.jeecg.com/designreport/images/xiaoshou_1607310086160.png', 'jeecg', '2020-07-28 16:54:44', 'admin', '2021-07-12 12:21:30', 0, NULL, NULL, 1, 2085, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('537446834339098624', '20210401114849', 'oo', NULL, NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":{\"sri\":3,\"sci\":4,\"eri\":3,\"eci\":4,\"width\":100,\"height\":25},\"excel_config_id\":\"537446834339098624\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"3\":{\"cells\":{\"1\":{\"text\":\"#{pp.id}\"},\"2\":{\"text\":\"#{pp.cname}\"},\"3\":{\"text\":\"#{pp.cnum}\"},\"4\":{\"text\":\"#{pp.cprice}\"}}},\"len\":98,\"-1\":{\"cells\":{\"-1\":{\"text\":\"#{tt.id}\"}}}},\"dbexps\":[],\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":512,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[],\"validations\":[],\"cols\":{\"2\":{\"width\":109},\"3\":{\"width\":103},\"len\":50},\"merges\":[]}', NULL, NULL, 'admin', '2021-04-01 03:48:50', 'admin', '2021-04-01 05:56:45', 1, NULL, NULL, 0, 49, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('539340274106675200', '20210406171243', '333', NULL, NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":false,\"excel_config_id\":\"539340274106675200\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"1\":{\"cells\":{\"0\":{\"text\":\" \",\"virtual\":\"4YgDWyELjvBe4KIH\"},\"1\":{\"text\":\" \",\"virtual\":\"4YgDWyELjvBe4KIH\"},\"2\":{\"text\":\" \",\"virtual\":\"4YgDWyELjvBe4KIH\"}}},\"len\":100},\"dbexps\":[],\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":0,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[],\"validations\":[],\"cols\":{\"len\":50},\"merges\":[],\"imgList\":[{\"row\":1,\"col\":0,\"width\":\"247\",\"height\":\"213\",\"src\":\"excel_online/11_1617700358412.jpg\",\"layer_id\":\"4YgDWyELjvBe4KIH\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[1,0],[1,1],[1,2]]}]}', NULL, NULL, 'admin', '2021-04-06 09:12:44', 'admin', '2021-07-13 10:23:35', 1, NULL, NULL, 0, 4, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('53c82a76f837d5661dceec7d93afafec', '5678', '阜阳检票数查询', '', NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":false,\"printElWidth\":718,\"excel_config_id\":\"53c82a76f837d5661dceec7d93afafec\",\"printElHeight\":1047,\"rows\":{\"0\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"text\":\"\",\"style\":66},\"2\":{\"style\":66},\"3\":{\"style\":67,\"merge\":[0,3],\"text\":\"阜阳火车站检票数\"},\"4\":{\"style\":67},\"5\":{\"style\":67},\"6\":{\"style\":67},\"7\":{\"style\":66},\"8\":{\"style\":66},\"9\":{\"style\":58}},\"height\":63},\"1\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"style\":66},\"2\":{\"style\":66},\"3\":{\"style\":66},\"4\":{\"style\":66},\"5\":{\"style\":66},\"6\":{\"style\":66},\"7\":{\"style\":66},\"8\":{\"style\":66},\"9\":{\"style\":58}},\"height\":20},\"2\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"text\":\"日期:\",\"style\":68},\"2\":{\"text\":\"${gongsi.tdata}\",\"style\":69},\"3\":{\"style\":66},\"4\":{\"style\":66,\"text\":\"制表人:\"},\"5\":{\"text\":\"${gongsi.gname}\",\"style\":66},\"6\":{\"style\":66},\"7\":{\"text\":\"\",\"merge\":[0,1],\"style\":70},\"8\":{\"style\":70},\"9\":{\"style\":58}},\"isDrag\":true},\"3\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"text\":\"班次\",\"merge\":[1,0],\"style\":71},\"2\":{\"text\":\"发车时间\",\"merge\":[1,0],\"style\":71},\"3\":{\"text\":\"是否放空\",\"merge\":[1,0],\"style\":71},\"4\":{\"text\":\"路线\",\"merge\":[0,1],\"style\":71},\"5\":{\"style\":72},\"6\":{\"text\":\"核载座位数\",\"merge\":[1,0],\"style\":71},\"7\":{\"merge\":[1,0],\"style\":71,\"text\":\"检票数\"},\"8\":{\"merge\":[1,0],\"style\":71,\"text\":\"实载率(%)\"},\"9\":{\"style\":58}}},\"4\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"style\":72},\"2\":{\"style\":71},\"3\":{\"style\":72},\"4\":{\"text\":\"从\",\"style\":71},\"5\":{\"text\":\"到\",\"style\":71},\"6\":{\"style\":72},\"7\":{\"style\":71},\"8\":{\"style\":72},\"9\":{\"style\":58}},\"height\":25},\"5\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"style\":73,\"text\":\"#{jianpiao.bnum}\"},\"2\":{\"style\":73,\"text\":\"#{jianpiao.ftime}\"},\"3\":{\"style\":73,\"text\":\"#{jianpiao.sfkong}\"},\"4\":{\"style\":73,\"text\":\"#{jianpiao.kaishi}\"},\"5\":{\"style\":73,\"text\":\"#{jianpiao.jieshu}\"},\"6\":{\"style\":73,\"text\":\"#{jianpiao.hezairen}\"},\"7\":{\"style\":73,\"text\":\"#{jianpiao.jpnum}\"},\"8\":{\"style\":73,\"text\":\"#{jianpiao.shihelv}\"},\"9\":{\"style\":58}},\"height\":33},\"6\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}},\"isDrag\":true},\"7\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11,\"text\":\"\"},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"8\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"9\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"10\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"11\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"12\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"13\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"14\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"len\":96,\"-1\":{\"cells\":{\"-1\":{\"text\":\"${gongsi.id}\"}},\"isDrag\":true}},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":701,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"border\":{\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"]}},{\"border\":{\"top\":[\"thin\",\"#000100\"]}},{\"border\":{\"top\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"left\":[\"thin\",\"#000100\"]}},{\"border\":{\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"top\":[\"thin\",\"#7f7f7f\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"right\":[\"thin\",\"#7f7f7f\"],\"bottom\":[\"thin\",\"#7f7f7f\"]}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"]}},{\"border\":{\"right\":[\"thin\",\"#7f7f7f\"]}},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"font\":{\"bold\":true}},{\"font\":{\"bold\":false}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":true}},{\"align\":\"center\",\"font\":{\"bold\":true}},{\"align\":\"right\"},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":true},\"bgcolor\":\"#4371c6\"},{\"align\":\"center\",\"font\":{\"bold\":true},\"bgcolor\":\"#4371c6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#4371c6\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#4371c6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#2e75b5\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#2e75b5\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#0170c1\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#0170c1\"},{\"font\":{\"bold\":false},\"color\":\"#7f7f7f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#01b0f1\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#01b0f1\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true},\"valign\":\"bottom\"},{\"align\":\"center\",\"font\":{\"size\":22,\"bold\":true},\"valign\":\"bottom\"},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true},\"valign\":\"bottom\"},{\"font\":{\"bold\":false},\"color\":\"#7f7f7f\",\"align\":\"right\"},{\"color\":\"#7f7f7f\"},{\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true,\"name\":\"宋体\"},\"valign\":\"bottom\"},{\"font\":{\"bold\":false,\"name\":\"宋体\"},\"color\":\"#7f7f7f\",\"align\":\"right\"},{\"color\":\"#7f7f7f\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"right\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"bold\":false,\"name\":\"宋体\"},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"font\":{\"bold\":false,\"name\":\"宋体\"},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true,\"name\":\"Microsoft YaHei\"},\"valign\":\"bottom\"},{\"font\":{\"bold\":false,\"name\":\"Microsoft YaHei\"},\"color\":\"#7f7f7f\",\"align\":\"right\"},{\"color\":\"#7f7f7f\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"right\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"bold\":false,\"name\":\"Microsoft YaHei\"},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"font\":{\"bold\":false,\"name\":\"Microsoft YaHei\"},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"name\":\"Microsoft YaHei\"}}],\"validations\":[],\"cols\":{\"0\":{\"width\":17},\"1\":{\"width\":118},\"2\":{\"width\":75},\"3\":{\"width\":54},\"4\":{\"width\":95},\"5\":{\"width\":109},\"6\":{\"width\":75},\"7\":{\"width\":75},\"8\":{\"width\":83},\"9\":{\"width\":30},\"len\":50},\"merges\":[\"E4:F4\",\"B4:B5\",\"C4:C5\",\"D4:D5\",\"G4:G5\",\"H4:H5\",\"I4:I5\",\"D1:G1\",\"H3:I3\"]}', '', 'https://static.jeecg.com/designreport/images/25_1597233573577.png', 'jeecg', '2020-06-16 15:01:42', 'admin', '2021-02-03 12:11:37', 0, NULL, NULL, 1, 691, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('5485950d88c9918d03dece2ad24b4d72', '202101081612408899', '实例:年度各月份佣金收入副本8899', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":{\"sri\":11,\"sci\":7,\"eri\":11,\"eci\":7,\"width\":100,\"height\":25},\"printElWidth\":749,\"excel_config_id\":\"1347454742040809472\",\"printElHeight\":1047,\"rows\":{\"1\":{\"cells\":{\"1\":{\"text\":\" \",\"virtual\":\"pZTpI3BKFw0lh6D7\"},\"2\":{\"text\":\"年度各月份佣金收入\",\"style\":23,\"merge\":[0,3],\"virtual\":\"pZTpI3BKFw0lh6D7\"},\"3\":{\"style\":24},\"4\":{\"style\":24},\"5\":{\"style\":24},\"6\":{\"text\":\" \"}},\"height\":37},\"2\":{\"cells\":{\"1\":{\"text\":\" \"},\"2\":{\"text\":\" \"},\"3\":{\"text\":\" \"},\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"}}},\"4\":{\"cells\":{\"1\":{\"text\":\"查询年度:2019\"},\"4\":{\"text\":\"查询机构:总公司\"},\"6\":{\"text\":\"单位:元\"}}},\"6\":{\"cells\":{\"1\":{\"text\":\"月份\",\"style\":12},\"2\":{\"text\":\"佣金/主营业收入\",\"style\":12},\"3\":{\"text\":\"累计\",\"style\":12},\"4\":{\"text\":\"历史最低水平\",\"style\":12},\"5\":{\"text\":\"历史平均水平\",\"style\":12},\"6\":{\"text\":\"历史最高水平\",\"style\":12}}},\"7\":{\"cells\":{\"1\":{\"text\":\"#{tmp_report_data_1.monty}\",\"style\":0},\"2\":{\"text\":\"#{tmp_report_data_1.main_income}\",\"style\":0},\"3\":{\"text\":\"#{tmp_report_data_1.total}\",\"style\":18},\"4\":{\"text\":\"#{tmp_report_data_1.his_lowest}\",\"style\":0},\"5\":{\"text\":\"#{tmp_report_data_1.his_average}\",\"style\":0},\"6\":{\"text\":\"#{tmp_report_data_1.his_highest}\",\"style\":0}},\"isDrag\":true},\"9\":{\"cells\":{\"1\":{\"merge\":[1,1]}}},\"len\":99},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":703,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":true}},{\"font\":{\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":false}},{\"font\":{\"bold\":false}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":true},\"align\":\"center\"},{\"font\":{\"bold\":true},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":true,\"size\":15},\"align\":\"center\"},{\"font\":{\"bold\":true,\"size\":15},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#01b0f1\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#33CCCC\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#33CCCC\",\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#33CCCC\",\"align\":\"left\"},{\"font\":{\"bold\":true,\"size\":16}},{\"font\":{\"bold\":true,\"size\":24}},{\"font\":{\"bold\":true,\"size\":22}},{\"font\":{\"bold\":true,\"size\":22},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"format\":\"usd\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"format\":\"rmb\"},{\"font\":{\"bold\":true,\"name\":\"黑体\"}},{\"font\":{\"bold\":true,\"name\":\"黑体\",\"size\":22}},{\"font\":{\"bold\":true,\"name\":\"宋体\",\"size\":22}},{\"font\":{\"bold\":true,\"name\":\"楷体\",\"size\":22}},{\"font\":{\"bold\":true,\"name\":\"楷体\",\"size\":22},\"align\":\"center\"},{\"align\":\"center\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":54},\"1\":{\"width\":111},\"2\":{\"width\":116},\"4\":{\"width\":122},\"len\":26},\"merges\":[\"B10:C11\",\"C2:F2\"],\"imgList\":[{\"row\":1,\"col\":1,\"width\":\"148\",\"height\":\"56\",\"src\":\"https://static.jeecg.com/designreport/images/kunlunlog_1610591367645.png\",\"layer_id\":\"pZTpI3BKFw0lh6D7\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[1,1],[1,2]]}]}', NULL, NULL, 'admin', '2021-01-19 10:45:44', 'admin', '2021-02-03 12:02:25', 1, NULL, NULL, 0, 43, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('570128838205493248', '20210630161541', 'ddd', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"area\":{\"sri\":4,\"sci\":1,\"eri\":7,\"eci\":5,\"width\":500,\"height\":230},\"excel_config_id\":\"570128838205493248\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"portrait\"},\"rows\":{\"4\":{\"cells\":{\"1\":{\"text\":\"111\",\"style\":0},\"2\":{\"style\":0,\"text\":\" \"},\"3\":{\"style\":0,\"text\":\" \"},\"4\":{\"style\":0,\"text\":\" \"},\"5\":{\"style\":0,\"text\":\" \"}},\"height\":70},\"5\":{\"cells\":{\"1\":{\"text\":\"22\",\"style\":0},\"2\":{\"style\":0,\"text\":\" \"},\"3\":{\"style\":0,\"text\":\" \"},\"4\":{\"style\":0,\"text\":\" \"},\"5\":{\"style\":0,\"text\":\" \"}},\"height\":41},\"6\":{\"cells\":{\"1\":{\"text\":\"33\",\"style\":0},\"2\":{\"style\":0,\"text\":\" \"},\"3\":{\"style\":0,\"text\":\" \"},\"4\":{\"style\":0,\"text\":\" \"},\"5\":{\"style\":0,\"text\":\" \"}},\"height\":51},\"7\":{\"cells\":{\"1\":{\"text\":\"44\",\"style\":0},\"2\":{\"style\":0,\"text\":\" \"},\"3\":{\"style\":0,\"text\":\" \"},\"4\":{\"style\":0,\"text\":\" \"},\"5\":{\"style\":0,\"text\":\" \"}},\"height\":68},\"len\":100},\"dbexps\":[],\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":600,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}}],\"validations\":[],\"cols\":{\"len\":50},\"merges\":[]}', NULL, NULL, 'admin', '2021-06-30 08:15:42', 'admin', '2021-06-30 10:15:07', 1, NULL, NULL, 0, 4, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('574873661613404160', '202010101632520060', 'XXX有限公司员工登记表副本0060', NULL, NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":{\"sri\":10,\"sci\":11,\"eri\":10,\"eci\":11,\"width\":85,\"height\":38},\"excel_config_id\":\"1314846205892759552\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"0\":{\"cells\":{\"0\":{\"merge\":[0,8]},\"9\":{}},\"height\":22},\"1\":{\"cells\":{\"1\":{\"style\":87,\"text\":\" \"},\"2\":{\"style\":87,\"text\":\" \"},\"3\":{\"style\":87,\"text\":\" \"},\"4\":{\"style\":87,\"text\":\" \"},\"5\":{\"style\":87,\"text\":\" \"},\"6\":{\"style\":87,\"text\":\" \"},\"7\":{\"style\":87,\"text\":\" \"},\"8\":{\"style\":87,\"text\":\" \"}},\"height\":24},\"2\":{\"cells\":{\"0\":{\"text\":\"所在部门\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.department}\",\"style\":23,\"merge\":[0,2]},\"4\":{\"text\":\"职务\",\"style\":93},\"5\":{\"text\":\"${yuangongjiben.post}\",\"style\":23},\"6\":{\"text\":\"填写日期\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.data}\",\"style\":23,\"merge\":[0,1]}},\"isDrag\":true,\"height\":36},\"3\":{\"cells\":{\"0\":{\"text\":\"姓名\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.name}\",\"style\":23},\"2\":{\"text\":\"性别\",\"style\":93},\"3\":{\"text\":\"${yuangongjiben.sex}\",\"style\":23},\"4\":{\"text\":\"出生日期\",\"style\":93},\"5\":{\"text\":\"${yuangongjiben.birth}\",\"style\":23},\"6\":{\"text\":\"政治面貌\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.political}\",\"style\":130,\"merge\":[0,1]}},\"isDrag\":true,\"height\":33},\"4\":{\"cells\":{\"0\":{\"text\":\"机关\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.office}\",\"style\":23},\"2\":{\"style\":93,\"text\":\"民族\"},\"3\":{\"text\":\"${yuangongjiben.nation}\",\"style\":23},\"4\":{\"style\":93,\"text\":\"健康状况\"},\"5\":{\"text\":\"${yuangongjiben.health}\",\"style\":23},\"6\":{\"style\":93,\"text\":\"户籍类型\",\"virtual\":\"1KT8bnqRT4bi8Z7b\"},\"7\":{\"text\":\"${yuangongjiben.register}\",\"style\":26,\"virtual\":\"1KT8bnqRT4bi8Z7b\"},\"8\":{\"merge\":[3,0],\"height\":104,\"style\":35,\"text\":\" \",\"virtual\":\"cvkWDQVZhfJPgcS4\"}},\"isDrag\":true,\"height\":31},\"5\":{\"cells\":{\"0\":{\"text\":\"最高学历\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.education}\",\"style\":23},\"2\":{\"text\":\"所学专业\",\"style\":93},\"3\":{\"text\":\"${yuangongjiben.major}\",\"style\":23,\"merge\":[0,2]},\"6\":{\"text\":\"毕业时间\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.gdata}\",\"style\":23}},\"isDrag\":true,\"height\":35},\"6\":{\"cells\":{\"0\":{\"text\":\"电子邮箱\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.mailbox}\",\"style\":23},\"2\":{\"text\":\"手机号\",\"style\":93},\"3\":{\"text\":\"${yuangongjiben.telphone}\",\"style\":23,\"merge\":[0,2]},\"6\":{\"text\":\"家庭电话\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.homephone}\",\"style\":23}},\"isDrag\":true,\"height\":38},\"7\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"第一次参加工作时间\",\"style\":93},\"2\":{\"text\":\"${yuangongjiben.pworktime}\",\"style\":133,\"merge\":[0,2]},\"5\":{\"style\":93,\"text\":\"入职时间\"},\"6\":{\"text\":\"${yuangongjiben.entrytime}\",\"style\":24,\"merge\":[0,1]}},\"isDrag\":true,\"height\":27},\"8\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"毕业院校\",\"style\":93},\"2\":{\"text\":\"${yuangongjiben.school}\",\"style\":24,\"merge\":[0,2]},\"5\":{\"style\":93,\"text\":\"身份证号\"},\"6\":{\"text\":\"${yuangongjiben.idcard}\",\"style\":24,\"merge\":[0,2]}},\"isDrag\":true,\"height\":34},\"9\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"入党(团)时间、地点\",\"style\":94},\"2\":{\"text\":\"${yuangongjiben.entrytime}\",\"style\":24,\"merge\":[0,2]},\"5\":{\"text\":\"婚姻状况\",\"style\":93},\"6\":{\"text\":\"${yuangongjiben.marital}\",\"style\":23},\"7\":{\"text\":\"有无子女\",\"style\":93},\"8\":{\"text\":\"${yuangongjiben.children}\",\"style\":23}},\"isDrag\":true,\"height\":33},\"10\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"户口所在街道名称\",\"style\":93},\"2\":{\"text\":\"${yuangongjiben.hukoustreet}\",\"style\":24,\"merge\":[0,2]},\"5\":{\"merge\":[0,1],\"text\":\"户口所在地邮编\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.hukounum}\",\"style\":23,\"merge\":[0,1]}},\"isDrag\":true,\"height\":38},\"11\":{\"cells\":{\"0\":{\"text\":\"户口所在地地址\",\"style\":96,\"merge\":[2,1]},\"2\":{\"text\":\"${yuangongjiben.hukoudi}\",\"style\":26,\"merge\":[2,6]}},\"isDrag\":true},\"12\":{\"cells\":{}},\"13\":{\"cells\":{\"11\":{\"text\":\"\"}},\"isDrag\":true},\"14\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"现居住地址\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.currentdi}\",\"style\":26,\"merge\":[0,2]},\"5\":{\"style\":98,\"merge\":[0,1],\"text\":\"现居住地址邮编\"},\"7\":{\"text\":\"${yuangongjiben.currentnum}\",\"style\":26,\"merge\":[0,1]}},\"isDrag\":true,\"height\":33},\"15\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"是否参加社保\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.socialsecurity}\",\"style\":27,\"merge\":[0,1]},\"4\":{\"text\":\"有无公积金\",\"style\":98},\"5\":{\"text\":\"${yuangongjiben.providentfund}\",\"style\":27,\"merge\":[0,1]},\"7\":{\"text\":\"兴趣爱好\",\"style\":98},\"8\":{\"text\":\"${yuangongjiben.hobby}\",\"style\":27}},\"isDrag\":true,\"height\":34},\"16\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"参加社保类型\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.sbtype}\",\"style\":116,\"merge\":[0,6]}},\"isDrag\":true,\"height\":30},\"17\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"个人档案存放地\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.archivesdi}\",\"style\":116,\"merge\":[0,6]}},\"isDrag\":true,\"height\":33},\"18\":{\"cells\":{\"0\":{\"text\":\" \",\"style\":7},\"1\":{\"text\":\" \",\"style\":7},\"2\":{\"text\":\" \",\"style\":7},\"3\":{\"text\":\" \",\"style\":7},\"4\":{\"text\":\" \",\"style\":7},\"5\":{\"text\":\" \",\"style\":7},\"6\":{\"text\":\" \",\"style\":7},\"7\":{\"text\":\" \",\"style\":7},\"8\":{\"text\":\" \",\"style\":7}}},\"19\":{\"cells\":{\"0\":{\"merge\":[0,4],\"text\":\"学历、经历(从高中开始写)\",\"style\":99},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"20\":{\"cells\":{\"0\":{\"text\":\"由_年_月\",\"merge\":[0,1],\"style\":36},\"2\":{\"merge\":[0,1],\"text\":\"至_年_月\",\"style\":38},\"4\":{\"merge\":[0,1],\"text\":\"就读学校\",\"style\":38},\"6\":{\"merge\":[0,1],\"text\":\"专业\",\"style\":38},\"8\":{\"text\":\"担任职务\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"21\":{\"cells\":{\"0\":{\"style\":90,\"merge\":[0,1],\"text\":\"#{xueli.kdate}\"},\"2\":{\"style\":90,\"text\":\"#{xueli.jdate}\",\"merge\":[0,1]},\"4\":{\"style\":90,\"text\":\"#{xueli.jstudent}\",\"merge\":[0,1]},\"6\":{\"style\":90,\"text\":\"#{xueli.zhuanye}\",\"merge\":[0,1]},\"8\":{\"style\":90,\"text\":\"#{xueli.zhiwu}\"},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"22\":{\"cells\":{\"0\":{\"style\":7,\"text\":\" \"},\"1\":{\"style\":7,\"text\":\" \"},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"23\":{\"cells\":{\"0\":{\"merge\":[0,4],\"text\":\"工作经历\",\"style\":124},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":27},\"24\":{\"cells\":{\"0\":{\"text\":\"由_年_月\",\"merge\":[0,1],\"style\":36},\"2\":{\"merge\":[0,1],\"text\":\"至_年_月\",\"style\":38},\"4\":{\"text\":\"工作单位及职称\",\"style\":38,\"merge\":[0,1]},\"6\":{\"merge\":[0,1],\"text\":\"证明人\",\"style\":38},\"8\":{\"text\":\"联系方式\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"25\":{\"cells\":{\"0\":{\"text\":\"#{uu.kdate}\",\"style\":90,\"merge\":[0,1]},\"2\":{\"text\":\"#{uu.jdate}\",\"style\":90,\"merge\":[0,1]},\"4\":{\"text\":\"#{uu.jstudent}\",\"style\":90,\"merge\":[0,1]},\"6\":{\"text\":\"#{uu.zmname}\",\"style\":90,\"merge\":[0,1]},\"8\":{\"text\":\"#{uu.zmphone}\",\"style\":90},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"26\":{\"cells\":{\"0\":{\"style\":7,\"text\":\" \"},\"1\":{\"style\":7,\"text\":\" \"},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"27\":{\"cells\":{\"0\":{\"merge\":[0,4],\"text\":\"职称/资格、证书\",\"style\":125},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":46},\"28\":{\"cells\":{\"0\":{\"text\":\"发证时间\",\"merge\":[0,1],\"style\":36},\"2\":{\"merge\":[0,1],\"text\":\"职称名称\",\"style\":38},\"4\":{\"text\":\"级别\",\"style\":38,\"merge\":[0,1]},\"6\":{\"text\":\"发证单位\",\"style\":38,\"merge\":[0,1]},\"8\":{\"text\":\"备注\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"29\":{\"cells\":{\"0\":{\"text\":\"#{zhengshu.fdate}\",\"style\":90,\"merge\":[0,1]},\"2\":{\"text\":\"#{zhengshu.zcname}\",\"style\":90,\"merge\":[0,1]},\"4\":{\"text\":\"#{zhengshu.jibie}\",\"style\":90,\"merge\":[0,1]},\"6\":{\"text\":\"#{zhengshu.danwei}\",\"style\":90,\"merge\":[0,1]},\"8\":{\"text\":\"#{zhengshu.beizhu}\",\"style\":90},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"30\":{\"cells\":{\"0\":{\"style\":7,\"text\":\" \"},\"1\":{\"style\":7,\"text\":\" \"},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"31\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"家庭成员\",\"style\":125},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":42},\"32\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"姓名\",\"style\":38},\"2\":{\"merge\":[0,1],\"text\":\"关系\",\"style\":38},\"4\":{\"text\":\"年龄\",\"style\":38},\"5\":{\"text\":\"工作单位\",\"style\":38,\"merge\":[0,1]},\"7\":{\"text\":\"政治面貌\",\"style\":38},\"8\":{\"text\":\"联系方式\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"33\":{\"cells\":{\"0\":{\"text\":\"#{jtcy.name}\",\"style\":90,\"merge\":[0,1]},\"2\":{\"text\":\"#{jtcy.guanxi}\",\"style\":90,\"merge\":[0,1]},\"4\":{\"text\":\"#{jtcy.age}\",\"style\":90},\"5\":{\"text\":\"#{jtcy.danwei}\",\"style\":90,\"merge\":[0,1]},\"7\":{\"text\":\"#{jtcy.zzmm}\",\"style\":90},\"8\":{\"text\":\"#{jtcy.phone}\",\"style\":90},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"34\":{\"cells\":{\"0\":{\"text\":\" \",\"style\":7},\"1\":{\"text\":\" \",\"style\":7},\"2\":{\"text\":\" \",\"style\":7},\"3\":{\"text\":\" \",\"style\":7},\"4\":{\"text\":\" \",\"style\":7},\"5\":{\"text\":\" \",\"style\":7},\"6\":{\"text\":\" \",\"style\":7},\"7\":{\"text\":\" \",\"style\":7},\"8\":{\"text\":\" \",\"style\":7},\"9\":{\"style\":112,\"text\":\" \"}}},\"35\":{\"cells\":{\"0\":{\"merge\":[0,2],\"text\":\"所获奖励\",\"style\":125},\"3\":{\"text\":\" \",\"style\":7},\"4\":{\"text\":\" \",\"style\":7},\"5\":{\"text\":\" \",\"style\":7},\"6\":{\"text\":\" \",\"style\":7},\"7\":{\"text\":\" \",\"style\":7},\"8\":{\"text\":\" \",\"style\":7},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":47},\"36\":{\"cells\":{\"0\":{\"text\":\"时间\",\"style\":90,\"merge\":[0,2]},\"3\":{\"style\":90,\"text\":\"地点\",\"merge\":[0,2]},\"6\":{\"style\":90,\"text\":\"所获得的奖励名称\",\"merge\":[0,2]},\"9\":{\"style\":112,\"text\":\" \"}}},\"37\":{\"cells\":{\"0\":{\"text\":\"#{jiangli.date}\",\"style\":90,\"merge\":[0,2]},\"3\":{\"text\":\"#{jiangli.didian}\",\"style\":90,\"merge\":[0,2]},\"6\":{\"text\":\"#{jiangli.mingcheng}\",\"style\":90,\"merge\":[0,2]},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"len\":98},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":703,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true}},{\"align\":\"center\",\"font\":{\"name\":\"仿宋\"}},{\"font\":{\"name\":\"仿宋\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":12}},{\"font\":{\"name\":\"宋体\",\"size\":12}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":8}},{\"font\":{\"name\":\"宋体\",\"size\":8}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10}},{\"font\":{\"name\":\"宋体\",\"size\":10}},{\"align\":\"center\",\"font\":{\"name\":\"隶书\",\"size\":10}},{\"font\":{\"name\":\"隶书\",\"size\":10}},{\"align\":\"center\",\"font\":{\"name\":\"华文中宋\",\"size\":10}},{\"font\":{\"name\":\"华文中宋\",\"size\":10}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10}},{\"textwrap\":true},{\"textwrap\":true,\"align\":\"center\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"bold\":true}},{\"font\":{\"bold\":true,\"size\":12}},{\"font\":{\"bold\":true,\"size\":10}},{\"font\":{\"bold\":true,\"size\":10},\"align\":\"center\"},{\"font\":{\"bold\":true},\"align\":\"center\"},{\"font\":{\"bold\":true,\"size\":10},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"宋体\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"font\":{\"bold\":true,\"name\":\"宋体\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true},\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true},\"border\":{\"top\":[\"medium\",\"#000\"]}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]}},{\"border\":{\"left\":[\"medium\",\"#000\"]}},{\"border\":{\"right\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"Microsoft YaHei\"},\"border\":{\"top\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"Microsoft YaHei\"}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"right\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"Microsoft YaHei\"}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"name\":\"Microsoft YaHei\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":8},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":8}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":8}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"},\"border\":{\"top\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"}},{\"border\":{\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":8},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"bold\":true}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"},\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"left\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"},\"border\":{\"top\":[\"thin\",\"#ffffff\"]}},{\"border\":{\"top\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"left\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"left\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"left\",\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"right\"},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"right\",\"valign\":\"bottom\"},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"left\",\"valign\":\"bottom\"},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"valign\":\"bottom\"},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"format\":\"datetime\"},{\"font\":{\"name\":\"宋体\",\"size\":10},\"format\":\"datetime\"},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"format\":\"normal\"},{\"font\":{\"name\":\"宋体\",\"size\":10},\"format\":\"normal\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":73},\"1\":{\"width\":71},\"2\":{\"width\":69},\"3\":{\"width\":89},\"4\":{\"width\":64},\"5\":{\"width\":47},\"6\":{\"width\":68},\"7\":{\"width\":100},\"8\":{\"width\":103},\"9\":{\"width\":19},\"10\":{\"width\":146},\"11\":{\"width\":85},\"len\":50},\"merges\":[\"H3:I3\",\"B3:D3\",\"A2:I2\",\"D6:F6\",\"D7:F7\",\"A8:B8\",\"G8:H8\",\"A9:B9\",\"A10:B10\",\"C10:E10\",\"C8:E8\",\"C9:E9\",\"A11:B11\",\"C11:E11\",\"F11:G11\",\"H11:I11\",\"C12:I14\",\"A15:B15\",\"C15:E15\",\"F15:G15\",\"H15:I15\",\"A16:B16\",\"A17:B17\",\"A18:B18\",\"C17:I17\",\"C18:I18\",\"A20:E20\",\"A21:B21\",\"C21:D21\",\"E21:F21\",\"G21:H21\",\"A22:B22\",\"A24:E24\",\"A25:B25\",\"C25:D25\",\"G25:H25\",\"A26:B26\",\"A28:E28\",\"A29:B29\",\"C29:D29\",\"A30:B30\",\"A32:B32\",\"A33:B33\",\"C33:D33\",\"A34:B34\",\"C34:D34\",\"A36:C36\",\"C16:D16\",\"F16:G16\",\"QAAAAAACI1:JAAAAAABJ38\",\"A1:I1\",\"H4:I4\",\"G9:I9\",\"G22:H22\",\"E22:F22\",\"C22:D22\",\"C26:D26\",\"G26:H26\",\"C30:D30\",\"G30:H30\",\"E30:F30\",\"D37:F37\",\"D38:F38\",\"A38:C38\",\"A37:C37\",\"G37:I37\",\"G38:I38\",\"E29:F29\",\"G29:H29\",\"E25:F25\",\"E26:F26\",\"F33:G33\",\"F34:G34\",\"A12:B14\",\"I5:I8\"],\"imgList\":[{\"row\":4,\"col\":8,\"width\":\"101\",\"height\":\"128\",\"src\":\"https://jimureport.oss-cn-beijing.aliyuncs.com/designreport/images/QQ截图20210115102648_1610694177544_1617244906979.png\",\"layer_id\":\"cvkWDQVZhfJPgcS4\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[4,8]]}]}', NULL, 'https://static.jeecg.com/designreport/images/1122_1607312336469.png', 'admin', '2021-07-13 10:29:32', 'admin', '2021-07-13 10:29:43', 1, NULL, NULL, 0, 0, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('574875722233016320', '202101081046035167', '实习证明副本5167', NULL, NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":{\"sri\":16,\"sci\":5,\"eri\":16,\"eci\":5,\"width\":147,\"height\":25},\"excel_config_id\":\"1347373863746539520\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"portrait\"},\"rows\":{\"0\":{\"cells\":{\"0\":{\"text\":\"\"},\"1\":{\"text\":\"\"}}},\"1\":{\"cells\":{\"0\":{\"text\":\"\"}}},\"3\":{\"cells\":{\"2\":{\"text\":\"\",\"rendered\":\"\"}}},\"5\":{\"cells\":{},\"height\":29},\"6\":{\"cells\":{\"2\":{\"text\":\"\",\"style\":2}},\"height\":34},\"7\":{\"cells\":{\"2\":{\"merge\":[0,4],\"text\":\"实习证明\",\"style\":2}},\"height\":41},\"8\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":3},\"2\":{\"text\":\"\"}}},\"9\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":3},\"2\":{\"text\":\"\",\"style\":3},\"3\":{\"text\":\"\"}},\"isDrag\":true,\"height\":33},\"10\":{\"cells\":{\"2\":{\"text\":\"${tt.name}\",\"style\":11},\"3\":{\"text\":\"同学在我公司与 2020年4月1日 至 2020年5月1日 实习。\",\"style\":19,\"merge\":[0,3],\"height\":34}},\"height\":34},\"11\":{\"cells\":{},\"height\":28},\"12\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":6},\"2\":{\"style\":13,\"text\":\"${tt.pingjia}\",\"merge\":[3,4],\"height\":129}},\"height\":36},\"13\":{\"cells\":{},\"height\":29},\"14\":{\"cells\":{},\"height\":33},\"15\":{\"cells\":{},\"height\":31},\"16\":{\"cells\":{}},\"17\":{\"cells\":{\"1\":{\"text\":\"\"},\"2\":{\"text\":\"特此证明!\",\"style\":12}}},\"20\":{\"cells\":{\"2\":{\"text\":\"\"},\"3\":{\"text\":\"\",\"style\":3},\"4\":{\"text\":\"\"}}},\"21\":{\"cells\":{\"4\":{\"text\":\"\"}}},\"22\":{\"cells\":{\"3\":{\"text\":\"\",\"style\":3},\"4\":{\"text\":\"证明人:\",\"style\":11},\"5\":{\"text\":\"${tt.lingdao}\",\"style\":12}}},\"23\":{\"cells\":{\"4\":{\"text\":\"\"},\"5\":{\"text\":\"${tt.shijian}\",\"style\":15}}},\"len\":100},\"dbexps\":[],\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":576,\"displayConfig\":{},\"background\":{\"path\":\"https://static.jeecg.com/designreport/images/11_1611283832037.png\",\"repeat\":\"no-repeat\",\"width\":\"\",\"height\":\"\"},\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":14}},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"right\"},{\"align\":\"left\"},{\"align\":\"left\",\"valign\":\"top\"},{\"align\":\"left\",\"valign\":\"top\",\"textwrap\":true},{\"font\":{\"size\":16}},{\"align\":\"left\",\"valign\":\"top\",\"textwrap\":false},{\"textwrap\":false},{\"textwrap\":true},{\"align\":\"right\",\"font\":{\"size\":12}},{\"font\":{\"size\":12}},{\"align\":\"left\",\"valign\":\"top\",\"textwrap\":true,\"font\":{\"size\":12}},{\"textwrap\":true,\"font\":{\"size\":12}},{\"align\":\"left\",\"font\":{\"size\":12}},{\"font\":{\"size\":12},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":14}},{\"font\":{\"size\":10}},{\"textwrap\":false,\"font\":{\"size\":12}}],\"validations\":[],\"cols\":{\"0\":{\"width\":69},\"1\":{\"width\":41},\"4\":{\"width\":119},\"5\":{\"width\":147},\"6\":{\"width\":31},\"len\":50},\"merges\":[\"C8:G8\",\"D11:G11\",\"C13:G16\"]}', NULL, 'https://static.jeecg.com/designreport/images/未标题-1_1610074948259.png', 'admin', '2021-07-13 10:37:43', 'admin', '2021-07-13 10:37:54', 1, NULL, NULL, 0, 0, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('574875730525155328', '202010101632526669', 'XXX有限公司员工登记表副本6669', NULL, NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":{\"sri\":10,\"sci\":11,\"eri\":10,\"eci\":11,\"width\":85,\"height\":38},\"excel_config_id\":\"1314846205892759552\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"0\":{\"cells\":{\"0\":{\"merge\":[0,8]},\"9\":{}},\"height\":22},\"1\":{\"cells\":{\"1\":{\"style\":87,\"text\":\" \"},\"2\":{\"style\":87,\"text\":\" \"},\"3\":{\"style\":87,\"text\":\" \"},\"4\":{\"style\":87,\"text\":\" \"},\"5\":{\"style\":87,\"text\":\" \"},\"6\":{\"style\":87,\"text\":\" \"},\"7\":{\"style\":87,\"text\":\" \"},\"8\":{\"style\":87,\"text\":\" \"}},\"height\":24},\"2\":{\"cells\":{\"0\":{\"text\":\"所在部门\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.department}\",\"style\":23,\"merge\":[0,2]},\"4\":{\"text\":\"职务\",\"style\":93},\"5\":{\"text\":\"${yuangongjiben.post}\",\"style\":23},\"6\":{\"text\":\"填写日期\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.data}\",\"style\":23,\"merge\":[0,1]}},\"isDrag\":true,\"height\":36},\"3\":{\"cells\":{\"0\":{\"text\":\"姓名\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.name}\",\"style\":23},\"2\":{\"text\":\"性别\",\"style\":93},\"3\":{\"text\":\"${yuangongjiben.sex}\",\"style\":23},\"4\":{\"text\":\"出生日期\",\"style\":93},\"5\":{\"text\":\"${yuangongjiben.birth}\",\"style\":23},\"6\":{\"text\":\"政治面貌\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.political}\",\"style\":130,\"merge\":[0,1]}},\"isDrag\":true,\"height\":33},\"4\":{\"cells\":{\"0\":{\"text\":\"机关\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.office}\",\"style\":23},\"2\":{\"style\":93,\"text\":\"民族\"},\"3\":{\"text\":\"${yuangongjiben.nation}\",\"style\":23},\"4\":{\"style\":93,\"text\":\"健康状况\"},\"5\":{\"text\":\"${yuangongjiben.health}\",\"style\":23},\"6\":{\"style\":93,\"text\":\"户籍类型\",\"virtual\":\"1KT8bnqRT4bi8Z7b\"},\"7\":{\"text\":\"${yuangongjiben.register}\",\"style\":26,\"virtual\":\"1KT8bnqRT4bi8Z7b\"},\"8\":{\"merge\":[3,0],\"height\":104,\"style\":35,\"text\":\" \",\"virtual\":\"cvkWDQVZhfJPgcS4\"}},\"isDrag\":true,\"height\":31},\"5\":{\"cells\":{\"0\":{\"text\":\"最高学历\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.education}\",\"style\":23},\"2\":{\"text\":\"所学专业\",\"style\":93},\"3\":{\"text\":\"${yuangongjiben.major}\",\"style\":23,\"merge\":[0,2]},\"6\":{\"text\":\"毕业时间\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.gdata}\",\"style\":23}},\"isDrag\":true,\"height\":35},\"6\":{\"cells\":{\"0\":{\"text\":\"电子邮箱\",\"style\":93},\"1\":{\"text\":\"${yuangongjiben.mailbox}\",\"style\":23},\"2\":{\"text\":\"手机号\",\"style\":93},\"3\":{\"text\":\"${yuangongjiben.telphone}\",\"style\":23,\"merge\":[0,2]},\"6\":{\"text\":\"家庭电话\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.homephone}\",\"style\":23}},\"isDrag\":true,\"height\":38},\"7\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"第一次参加工作时间\",\"style\":93},\"2\":{\"text\":\"${yuangongjiben.pworktime}\",\"style\":133,\"merge\":[0,2]},\"5\":{\"style\":93,\"text\":\"入职时间\"},\"6\":{\"text\":\"${yuangongjiben.entrytime}\",\"style\":24,\"merge\":[0,1]}},\"isDrag\":true,\"height\":27},\"8\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"毕业院校\",\"style\":93},\"2\":{\"text\":\"${yuangongjiben.school}\",\"style\":24,\"merge\":[0,2]},\"5\":{\"style\":93,\"text\":\"身份证号\"},\"6\":{\"text\":\"${yuangongjiben.idcard}\",\"style\":24,\"merge\":[0,2]}},\"isDrag\":true,\"height\":34},\"9\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"入党(团)时间、地点\",\"style\":94},\"2\":{\"text\":\"${yuangongjiben.entrytime}\",\"style\":24,\"merge\":[0,2]},\"5\":{\"text\":\"婚姻状况\",\"style\":93},\"6\":{\"text\":\"${yuangongjiben.marital}\",\"style\":23},\"7\":{\"text\":\"有无子女\",\"style\":93},\"8\":{\"text\":\"${yuangongjiben.children}\",\"style\":23}},\"isDrag\":true,\"height\":33},\"10\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"户口所在街道名称\",\"style\":93},\"2\":{\"text\":\"${yuangongjiben.hukoustreet}\",\"style\":24,\"merge\":[0,2]},\"5\":{\"merge\":[0,1],\"text\":\"户口所在地邮编\",\"style\":93},\"7\":{\"text\":\"${yuangongjiben.hukounum}\",\"style\":23,\"merge\":[0,1]}},\"isDrag\":true,\"height\":38},\"11\":{\"cells\":{\"0\":{\"text\":\"户口所在地地址\",\"style\":96,\"merge\":[2,1]},\"2\":{\"text\":\"${yuangongjiben.hukoudi}\",\"style\":26,\"merge\":[2,6]}},\"isDrag\":true},\"12\":{\"cells\":{}},\"13\":{\"cells\":{\"11\":{\"text\":\"\"}},\"isDrag\":true},\"14\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"现居住地址\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.currentdi}\",\"style\":26,\"merge\":[0,2]},\"5\":{\"style\":98,\"merge\":[0,1],\"text\":\"现居住地址邮编\"},\"7\":{\"text\":\"${yuangongjiben.currentnum}\",\"style\":26,\"merge\":[0,1]}},\"isDrag\":true,\"height\":33},\"15\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"是否参加社保\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.socialsecurity}\",\"style\":27,\"merge\":[0,1]},\"4\":{\"text\":\"有无公积金\",\"style\":98},\"5\":{\"text\":\"${yuangongjiben.providentfund}\",\"style\":27,\"merge\":[0,1]},\"7\":{\"text\":\"兴趣爱好\",\"style\":98},\"8\":{\"text\":\"${yuangongjiben.hobby}\",\"style\":27}},\"isDrag\":true,\"height\":34},\"16\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"参加社保类型\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.sbtype}\",\"style\":116,\"merge\":[0,6]}},\"isDrag\":true,\"height\":30},\"17\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"个人档案存放地\",\"style\":98},\"2\":{\"text\":\"${yuangongjiben.archivesdi}\",\"style\":116,\"merge\":[0,6]}},\"isDrag\":true,\"height\":33},\"18\":{\"cells\":{\"0\":{\"text\":\" \",\"style\":7},\"1\":{\"text\":\" \",\"style\":7},\"2\":{\"text\":\" \",\"style\":7},\"3\":{\"text\":\" \",\"style\":7},\"4\":{\"text\":\" \",\"style\":7},\"5\":{\"text\":\" \",\"style\":7},\"6\":{\"text\":\" \",\"style\":7},\"7\":{\"text\":\" \",\"style\":7},\"8\":{\"text\":\" \",\"style\":7}}},\"19\":{\"cells\":{\"0\":{\"merge\":[0,4],\"text\":\"学历、经历(从高中开始写)\",\"style\":99},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"20\":{\"cells\":{\"0\":{\"text\":\"由_年_月\",\"merge\":[0,1],\"style\":36},\"2\":{\"merge\":[0,1],\"text\":\"至_年_月\",\"style\":38},\"4\":{\"merge\":[0,1],\"text\":\"就读学校\",\"style\":38},\"6\":{\"merge\":[0,1],\"text\":\"专业\",\"style\":38},\"8\":{\"text\":\"担任职务\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"21\":{\"cells\":{\"0\":{\"style\":90,\"merge\":[0,1],\"text\":\"#{xueli.kdate}\"},\"2\":{\"style\":90,\"text\":\"#{xueli.jdate}\",\"merge\":[0,1]},\"4\":{\"style\":90,\"text\":\"#{xueli.jstudent}\",\"merge\":[0,1]},\"6\":{\"style\":90,\"text\":\"#{xueli.zhuanye}\",\"merge\":[0,1]},\"8\":{\"style\":90,\"text\":\"#{xueli.zhiwu}\"},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"22\":{\"cells\":{\"0\":{\"style\":7,\"text\":\" \"},\"1\":{\"style\":7,\"text\":\" \"},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"23\":{\"cells\":{\"0\":{\"merge\":[0,4],\"text\":\"工作经历\",\"style\":124},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":27},\"24\":{\"cells\":{\"0\":{\"text\":\"由_年_月\",\"merge\":[0,1],\"style\":36},\"2\":{\"merge\":[0,1],\"text\":\"至_年_月\",\"style\":38},\"4\":{\"text\":\"工作单位及职称\",\"style\":38,\"merge\":[0,1]},\"6\":{\"merge\":[0,1],\"text\":\"证明人\",\"style\":38},\"8\":{\"text\":\"联系方式\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"25\":{\"cells\":{\"0\":{\"text\":\"#{uu.kdate}\",\"style\":90,\"merge\":[0,1]},\"2\":{\"text\":\"#{uu.jdate}\",\"style\":90,\"merge\":[0,1]},\"4\":{\"text\":\"#{uu.jstudent}\",\"style\":90,\"merge\":[0,1]},\"6\":{\"text\":\"#{uu.zmname}\",\"style\":90,\"merge\":[0,1]},\"8\":{\"text\":\"#{uu.zmphone}\",\"style\":90},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"26\":{\"cells\":{\"0\":{\"style\":7,\"text\":\" \"},\"1\":{\"style\":7,\"text\":\" \"},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"27\":{\"cells\":{\"0\":{\"merge\":[0,4],\"text\":\"职称/资格、证书\",\"style\":125},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":46},\"28\":{\"cells\":{\"0\":{\"text\":\"发证时间\",\"merge\":[0,1],\"style\":36},\"2\":{\"merge\":[0,1],\"text\":\"职称名称\",\"style\":38},\"4\":{\"text\":\"级别\",\"style\":38,\"merge\":[0,1]},\"6\":{\"text\":\"发证单位\",\"style\":38,\"merge\":[0,1]},\"8\":{\"text\":\"备注\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"29\":{\"cells\":{\"0\":{\"text\":\"#{zhengshu.fdate}\",\"style\":90,\"merge\":[0,1]},\"2\":{\"text\":\"#{zhengshu.zcname}\",\"style\":90,\"merge\":[0,1]},\"4\":{\"text\":\"#{zhengshu.jibie}\",\"style\":90,\"merge\":[0,1]},\"6\":{\"text\":\"#{zhengshu.danwei}\",\"style\":90,\"merge\":[0,1]},\"8\":{\"text\":\"#{zhengshu.beizhu}\",\"style\":90},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"30\":{\"cells\":{\"0\":{\"style\":7,\"text\":\" \"},\"1\":{\"style\":7,\"text\":\" \"},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}}},\"31\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"家庭成员\",\"style\":125},\"2\":{\"style\":7,\"text\":\" \"},\"3\":{\"style\":7,\"text\":\" \"},\"4\":{\"style\":7,\"text\":\" \"},\"5\":{\"style\":7,\"text\":\" \"},\"6\":{\"style\":7,\"text\":\" \"},\"7\":{\"style\":7,\"text\":\" \"},\"8\":{\"style\":7,\"text\":\" \"},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":42},\"32\":{\"cells\":{\"0\":{\"merge\":[0,1],\"text\":\"姓名\",\"style\":38},\"2\":{\"merge\":[0,1],\"text\":\"关系\",\"style\":38},\"4\":{\"text\":\"年龄\",\"style\":38},\"5\":{\"text\":\"工作单位\",\"style\":38,\"merge\":[0,1]},\"7\":{\"text\":\"政治面貌\",\"style\":38},\"8\":{\"text\":\"联系方式\",\"style\":38},\"9\":{\"style\":112,\"text\":\" \"}}},\"33\":{\"cells\":{\"0\":{\"text\":\"#{jtcy.name}\",\"style\":90,\"merge\":[0,1]},\"2\":{\"text\":\"#{jtcy.guanxi}\",\"style\":90,\"merge\":[0,1]},\"4\":{\"text\":\"#{jtcy.age}\",\"style\":90},\"5\":{\"text\":\"#{jtcy.danwei}\",\"style\":90,\"merge\":[0,1]},\"7\":{\"text\":\"#{jtcy.zzmm}\",\"style\":90},\"8\":{\"text\":\"#{jtcy.phone}\",\"style\":90},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"34\":{\"cells\":{\"0\":{\"text\":\" \",\"style\":7},\"1\":{\"text\":\" \",\"style\":7},\"2\":{\"text\":\" \",\"style\":7},\"3\":{\"text\":\" \",\"style\":7},\"4\":{\"text\":\" \",\"style\":7},\"5\":{\"text\":\" \",\"style\":7},\"6\":{\"text\":\" \",\"style\":7},\"7\":{\"text\":\" \",\"style\":7},\"8\":{\"text\":\" \",\"style\":7},\"9\":{\"style\":112,\"text\":\" \"}}},\"35\":{\"cells\":{\"0\":{\"merge\":[0,2],\"text\":\"所获奖励\",\"style\":125},\"3\":{\"text\":\" \",\"style\":7},\"4\":{\"text\":\" \",\"style\":7},\"5\":{\"text\":\" \",\"style\":7},\"6\":{\"text\":\" \",\"style\":7},\"7\":{\"text\":\" \",\"style\":7},\"8\":{\"text\":\" \",\"style\":7},\"9\":{\"style\":112,\"text\":\" \"}},\"height\":47},\"36\":{\"cells\":{\"0\":{\"text\":\"时间\",\"style\":90,\"merge\":[0,2]},\"3\":{\"style\":90,\"text\":\"地点\",\"merge\":[0,2]},\"6\":{\"style\":90,\"text\":\"所获得的奖励名称\",\"merge\":[0,2]},\"9\":{\"style\":112,\"text\":\" \"}}},\"37\":{\"cells\":{\"0\":{\"text\":\"#{jiangli.date}\",\"style\":90,\"merge\":[0,2]},\"3\":{\"text\":\"#{jiangli.didian}\",\"style\":90,\"merge\":[0,2]},\"6\":{\"text\":\"#{jiangli.mingcheng}\",\"style\":90,\"merge\":[0,2]},\"9\":{\"style\":112,\"text\":\" \"}},\"isDrag\":true},\"len\":98},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":703,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true}},{\"align\":\"center\",\"font\":{\"name\":\"仿宋\"}},{\"font\":{\"name\":\"仿宋\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":12}},{\"font\":{\"name\":\"宋体\",\"size\":12}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":8}},{\"font\":{\"name\":\"宋体\",\"size\":8}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10}},{\"font\":{\"name\":\"宋体\",\"size\":10}},{\"align\":\"center\",\"font\":{\"name\":\"隶书\",\"size\":10}},{\"font\":{\"name\":\"隶书\",\"size\":10}},{\"align\":\"center\",\"font\":{\"name\":\"华文中宋\",\"size\":10}},{\"font\":{\"name\":\"华文中宋\",\"size\":10}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10}},{\"textwrap\":true},{\"textwrap\":true,\"align\":\"center\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"bold\":true}},{\"font\":{\"bold\":true,\"size\":12}},{\"font\":{\"bold\":true,\"size\":10}},{\"font\":{\"bold\":true,\"size\":10},\"align\":\"center\"},{\"font\":{\"bold\":true},\"align\":\"center\"},{\"font\":{\"bold\":true,\"size\":10},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"宋体\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"宋体\"},\"align\":\"center\"},{\"font\":{\"bold\":true,\"name\":\"宋体\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"name\":\"宋体\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true},\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true},\"border\":{\"top\":[\"medium\",\"#000\"]}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]}},{\"border\":{\"left\":[\"medium\",\"#000\"]}},{\"border\":{\"right\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"Microsoft YaHei\"},\"border\":{\"top\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"Microsoft YaHei\"}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"right\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"Microsoft YaHei\"}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"name\":\"Microsoft YaHei\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"size\":10,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\"},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"bold\":true,\"name\":\"Microsoft YaHei\"},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":8},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"Microsoft YaHei\",\"size\":8}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\",\"size\":8}},{\"border\":{\"top\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"},\"border\":{\"top\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"}},{\"border\":{\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":8},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"medium\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"bold\":true}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"},\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"left\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true,\"name\":\"宋体\"},\"border\":{\"top\":[\"thin\",\"#ffffff\"]}},{\"border\":{\"top\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"left\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"left\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"left\",\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"right\"},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"right\",\"valign\":\"bottom\"},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"align\":\"left\",\"valign\":\"bottom\"},{\"font\":{\"name\":\"宋体\",\"bold\":true},\"valign\":\"bottom\"},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10,\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"format\":\"datetime\"},{\"font\":{\"name\":\"宋体\",\"size\":10},\"format\":\"datetime\"},{\"font\":{\"name\":\"宋体\",\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"format\":\"normal\"},{\"font\":{\"name\":\"宋体\",\"size\":10},\"format\":\"normal\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":73},\"1\":{\"width\":71},\"2\":{\"width\":69},\"3\":{\"width\":89},\"4\":{\"width\":64},\"5\":{\"width\":47},\"6\":{\"width\":68},\"7\":{\"width\":100},\"8\":{\"width\":103},\"9\":{\"width\":19},\"10\":{\"width\":146},\"11\":{\"width\":85},\"len\":50},\"merges\":[\"H3:I3\",\"B3:D3\",\"A2:I2\",\"D6:F6\",\"D7:F7\",\"A8:B8\",\"G8:H8\",\"A9:B9\",\"A10:B10\",\"C10:E10\",\"C8:E8\",\"C9:E9\",\"A11:B11\",\"C11:E11\",\"F11:G11\",\"H11:I11\",\"C12:I14\",\"A15:B15\",\"C15:E15\",\"F15:G15\",\"H15:I15\",\"A16:B16\",\"A17:B17\",\"A18:B18\",\"C17:I17\",\"C18:I18\",\"A20:E20\",\"A21:B21\",\"C21:D21\",\"E21:F21\",\"G21:H21\",\"A22:B22\",\"A24:E24\",\"A25:B25\",\"C25:D25\",\"G25:H25\",\"A26:B26\",\"A28:E28\",\"A29:B29\",\"C29:D29\",\"A30:B30\",\"A32:B32\",\"A33:B33\",\"C33:D33\",\"A34:B34\",\"C34:D34\",\"A36:C36\",\"C16:D16\",\"F16:G16\",\"QAAAAAACI1:JAAAAAABJ38\",\"A1:I1\",\"H4:I4\",\"G9:I9\",\"G22:H22\",\"E22:F22\",\"C22:D22\",\"C26:D26\",\"G26:H26\",\"C30:D30\",\"G30:H30\",\"E30:F30\",\"D37:F37\",\"D38:F38\",\"A38:C38\",\"A37:C37\",\"G37:I37\",\"G38:I38\",\"E29:F29\",\"G29:H29\",\"E25:F25\",\"E26:F26\",\"F33:G33\",\"F34:G34\",\"A12:B14\",\"I5:I8\"],\"imgList\":[{\"row\":4,\"col\":8,\"width\":\"101\",\"height\":\"128\",\"src\":\"https://jimureport.oss-cn-beijing.aliyuncs.com/designreport/images/QQ截图20210115102648_1610694177544_1617244906979.png\",\"layer_id\":\"cvkWDQVZhfJPgcS4\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[4,8]]}]}', NULL, 'https://static.jeecg.com/designreport/images/1122_1607312336469.png', 'admin', '2021-07-13 10:37:45', 'admin', '2021-07-13 10:37:49', 1, NULL, NULL, 0, 0, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('575163965000249344', '20210714134509', 'ddd', NULL, NULL, 'chartinfo', '{\"loopBlockList\":[],\"chartList\":[{\"row\":-1,\"col\":6,\"colspan\":7,\"rowspan\":14,\"width\":\"650\",\"height\":\"350\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#333\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type \\\":\\\"value\\\"},\\\"xAxis\\\":{\\\"axisLabel\\\":{\\\"rotate\\\":0,\\\"interval\\\":\\\"auto\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"data\\\":[\\\"周一\\\",\\\"周二\\\",\\\"周三\\\",\\\"周四\\\",\\\"周五\\\",\\\"周六\\\",\\\"周日\\\"],\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#333\\\"}},\\\"show\\\":true,\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"type\\\":\\\"category\\\"},\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"直接访问\\\",\\\"邮件营销\\\",\\\"联盟广告\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"grid\\\":{\\\"top\\\":60,\\\"left\\\":60,\\\"bottom\\\":60,\\\"right\\\":60},\\\"series\\\":[{\\\"barWidth\\\":0,\\\"data\\\":[320,332,301,334,390,330,320],\\\"name\\\":\\\"直接访问\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"\\\",\\\"barBorderRadius\\\":0},\\\"label\\\":{\\\"show\\\":true,\\\"position\\\":\\\"top\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2},{\\\"barWidth\\\":0,\\\"data\\\":[120,132,101,134,90,230,210],\\\"name\\\":\\\"邮件营销\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"\\\",\\\"barBorderRadius\\\":0},\\\"label\\\":{\\\"show\\\":true,\\\"position\\\":\\\"top\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2},{\\\"barWidth\\\":0,\\\"data\\\":[220,182,191,234,290,330,310],\\\"name\\\":\\\"联盟广告\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"\\\",\\\"barBorderRadius\\\":0},\\\"label\\\":{\\\"show\\\":true,\\\"position\\\":\\\"top\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"axisPointer\\\":{\\\"type\\\":\\\"shadow\\\"},\\\"trigger\\\":\\\"axis\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":18}},\\\"title\\\":{\\\"padding\\\":[5,20,5,20],\\\"left\\\":\\\"left\\\",\\\"show\\\":true,\\\"text\\\":\\\"某站点用户访问来源\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#c23531\\\",\\\"fontSize\\\":18,\\\"fontWeight\\\":\\\"bolder\\\"}}}\",\"url\":\"\",\"extData\":{\"chartId\":\"bar.multi\",\"chartType\":\"bar.multi\"},\"layer_id\":\"x5jNAjrL8TFhuTEo\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[-1,6],[-1,7],[-1,8],[-1,9],[-1,10],[-1,11],[-1,12]]},{\"row\":0,\"col\":0,\"colspan\":6,\"rowspan\":14,\"width\":\"570\",\"height\":\"340\",\"config\":\"{\\\"yAxis\\\":{\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#EFEDED\\\",\\\"fontSize\\\":12}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FBF4F4\\\"}},\\\"show\\\":true,\\\"name\\\":\\\"销量\\\",\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false}},\\\"xAxis\\\":{\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"red\\\",\\\"width\\\":1,\\\"type\\\":\\\"solid\\\"},\\\"show\\\":false},\\\"axisLabel\\\":{\\\"textStyle\\\":{\\\"color\\\":\\\"#FFFAFA\\\",\\\"fontSize\\\":12},\\\"rotate\\\":0,\\\"interval\\\":\\\"auto\\\"},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"#FCFCFC\\\"}},\\\"data\\\":[\\\"衬衫\\\",\\\"羊毛衫\\\",\\\"雪纺衫\\\",\\\"裤子\\\",\\\"高跟鞋\\\",\\\"袜子\\\"],\\\"show\\\":true,\\\"name\\\":\\\"服饰\\\"},\\\"grid\\\":{\\\"top\\\":60,\\\"left\\\":60,\\\"bottom\\\":60,\\\"right\\\":60},\\\"series\\\":[{\\\"barWidth\\\":50,\\\"data\\\":[5,20,36,10,10,20],\\\"name\\\":\\\"销量\\\",\\\"itemStyle\\\":{\\\"color\\\":\\\"#c43632\\\",\\\"barBorderRadius\\\":0},\\\"label\\\":{\\\"show\\\":true,\\\"position\\\":\\\"top\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"black\\\",\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"bar\\\",\\\"barMinHeight\\\":2}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":18}},\\\"title\\\":{\\\"show\\\":true,\\\"top\\\":\\\"5\\\",\\\"text\\\":\\\"某站点用户访问来源\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#FCF6F6\\\",\\\"fontWeight\\\":\\\"bolder\\\",\\\"fontSize\\\":18},\\\"left\\\":\\\"left\\\",\\\"padding\\\":[5,20,5,20]}}\",\"url\":\"\",\"extData\":{\"chartId\":\"bar.simple\",\"chartType\":\"bar.simple\"},\"layer_id\":\"WPLlLTIi2vHV8ikB\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[0,0],[0,1],[0,2],[0,3],[0,4],[0,5]]},{\"row\":14,\"col\":-1,\"colspan\":7,\"rowspan\":14,\"width\":\"647\",\"height\":\"349\",\"config\":\"{\\\"radar\\\":[{\\\"indicator\\\":[{\\\"max\\\":6500,\\\"name\\\":\\\"指标一\\\"},{\\\"max\\\":6500,\\\"name\\\":\\\"指标二\\\"},{\\\"max\\\":6500,\\\"name\\\":\\\"指标三\\\"},{\\\"max\\\":6500,\\\"name\\\":\\\"指标四\\\"},{\\\"max\\\":6500,\\\"name\\\":\\\"指标五\\\"}],\\\"startAngle\\\":90,\\\"shape\\\":\\\"circle\\\",\\\"splitArea\\\":{\\\"areaStyle\\\":{\\\"color\\\":[\\\"rgba(114, 172, 209, 0.2)\\\",\\\"rgba(114, 172, 209, 0.4)\\\",\\\"rgba(114, 172, 209, 0.6)\\\",\\\"rgba(114, 172, 209, 0.8)\\\",\\\"rgba(114, 172, 209, 1)\\\"],\\\"shadowBlur\\\":10,\\\"shadowColor\\\":\\\"rgba(0, 0, 0, 0.3)\\\"}},\\\"axisLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"gray\\\",\\\"opacity\\\":0.5}},\\\"center\\\":[320,200],\\\"name\\\":{\\\"formatter\\\":\\\"【{value}】\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#72ACD1\\\"}},\\\"splitLine\\\":{\\\"lineStyle\\\":{\\\"color\\\":\\\"gray\\\",\\\"opacity\\\":0.5}},\\\"splitNumber\\\":4,\\\"radius\\\":90}],\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"图一\\\",\\\"图二\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"horizontal\\\",\\\"left\\\":\\\"center\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"series\\\":[{\\\"data\\\":[{\\\"lineStyle\\\":{},\\\"name\\\":\\\"图一\\\",\\\"value\\\":[1000,2000,3000,4000,2000]},{\\\"lineStyle\\\":{},\\\"name\\\":\\\"图二\\\",\\\"value\\\":[5000,4000,3000,100,1500]}],\\\"name\\\":\\\"雷达图\\\",\\\"type\\\":\\\"radar\\\"}],\\\"tooltip\\\":{\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":18}},\\\"title\\\":{\\\"padding\\\":[8,20,5,20],\\\"left\\\":\\\"left\\\",\\\"show\\\":true,\\\"text\\\":\\\"圆形雷达图\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#c23531\\\",\\\"fontSize\\\":18,\\\"fontWeight\\\":\\\"bolder\\\"}}}\",\"url\":\"\",\"extData\":{\"chartId\":\"radar.custom\",\"chartType\":\"radar.basic\"},\"layer_id\":\"1goCA1os5O64qksC\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[14,-1],[14,0],[14,1],[14,2],[14,3],[14,4],[14,5]]},{\"row\":14,\"col\":6,\"colspan\":7,\"rowspan\":14,\"width\":\"650\",\"height\":\"350\",\"config\":\"{\\\"geo\\\":{\\\"regions\\\":[],\\\"layoutSize\\\":600,\\\"emphasis\\\":{\\\"itemStyle\\\":{\\\"areaColor\\\":\\\"red\\\"},\\\"label\\\":{\\\"color\\\":\\\"#fff\\\"}},\\\"itemStyle\\\":{\\\"borderColor\\\":\\\"#000\\\",\\\"areaColor\\\":\\\"#fff\\\",\\\"borderWidth\\\":0.5},\\\"zoom\\\":0.5,\\\"label\\\":{\\\"color\\\":\\\"#000\\\",\\\"show\\\":true,\\\"fontSize\\\":12},\\\"roam\\\":true,\\\"map\\\":\\\"china\\\",\\\"layoutCenter\\\":[\\\"50%\\\",\\\"50%\\\"]},\\\"series\\\":[{\\\"name\\\":\\\"地图\\\",\\\"coordinateSystem\\\":\\\"geo\\\",\\\"type\\\":\\\"map\\\"}],\\\"chartType\\\":\\\"map\\\",\\\"title\\\":{\\\"padding\\\":[5,20,5,10],\\\"left\\\":\\\"left\\\",\\\"show\\\":true,\\\"text\\\":\\\"中国地图\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#c23531\\\",\\\"fontSize\\\":18,\\\"fontWeight\\\":\\\"bolder\\\"}}}\",\"url\":\"\",\"extData\":{\"chartId\":\"map.simple\",\"chartType\":\"map.simple\"},\"layer_id\":\"yOwMM2eUbvZ7INPJ\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[14,6],[14,7],[14,8],[14,9],[14,10],[14,11],[14,12]]}],\"area\":{\"sri\":9,\"sci\":3,\"eri\":9,\"eci\":3,\"width\":100,\"height\":25},\"excel_config_id\":\"575163965000249344\",\"printConfig\":{\"paper\":\"A3\",\"width\":297,\"height\":420,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"landscape\"},\"rows\":{\"0\":{\"cells\":{\"0\":{\"text\":\" \",\"virtual\":\"WPLlLTIi2vHV8ikB\"},\"1\":{\"text\":\" \",\"virtual\":\"WPLlLTIi2vHV8ikB\"},\"2\":{\"text\":\" \",\"virtual\":\"WPLlLTIi2vHV8ikB\"},\"3\":{\"text\":\" \",\"virtual\":\"WPLlLTIi2vHV8ikB\"},\"4\":{\"text\":\" \",\"virtual\":\"WPLlLTIi2vHV8ikB\"},\"5\":{\"text\":\" \",\"virtual\":\"WPLlLTIi2vHV8ikB\"}}},\"14\":{\"cells\":{\"0\":{\"text\":\" \",\"virtual\":\"1goCA1os5O64qksC\"},\"1\":{\"text\":\" \",\"virtual\":\"1goCA1os5O64qksC\"},\"2\":{\"text\":\" \",\"virtual\":\"1goCA1os5O64qksC\"},\"3\":{\"text\":\" \",\"virtual\":\"1goCA1os5O64qksC\"},\"4\":{\"text\":\" \",\"virtual\":\"1goCA1os5O64qksC\"},\"5\":{\"text\":\" \",\"virtual\":\"1goCA1os5O64qksC\"},\"6\":{\"text\":\" \",\"virtual\":\"yOwMM2eUbvZ7INPJ\"},\"7\":{\"text\":\" \",\"virtual\":\"yOwMM2eUbvZ7INPJ\"},\"8\":{\"text\":\" \",\"virtual\":\"yOwMM2eUbvZ7INPJ\"},\"9\":{\"text\":\" \",\"virtual\":\"yOwMM2eUbvZ7INPJ\"},\"10\":{\"text\":\" \",\"virtual\":\"yOwMM2eUbvZ7INPJ\"},\"11\":{\"text\":\" \",\"virtual\":\"yOwMM2eUbvZ7INPJ\"},\"12\":{\"text\":\" \",\"virtual\":\"yOwMM2eUbvZ7INPJ\"},\"-1\":{\"text\":\" \",\"virtual\":\"1goCA1os5O64qksC\"}}},\"len\":100,\"-1\":{\"cells\":{\"6\":{\"text\":\" \",\"virtual\":\"x5jNAjrL8TFhuTEo\"},\"7\":{\"text\":\" \",\"virtual\":\"x5jNAjrL8TFhuTEo\"},\"8\":{\"text\":\" \",\"virtual\":\"x5jNAjrL8TFhuTEo\"},\"9\":{\"text\":\" \",\"virtual\":\"x5jNAjrL8TFhuTEo\"},\"10\":{\"text\":\" \",\"virtual\":\"x5jNAjrL8TFhuTEo\"},\"11\":{\"text\":\" \",\"virtual\":\"x5jNAjrL8TFhuTEo\"},\"12\":{\"text\":\" \",\"virtual\":\"x5jNAjrL8TFhuTEo\"}}}},\"dbexps\":[],\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":1300,\"displayConfig\":{},\"background\":{\"path\":\"https://jeecgdev.oss-cn-beijing.aliyuncs.com/designreport/images/QQ图片20210714134925_1626241778771.png\",\"repeat\":\"no-repeat\",\"width\":\"\",\"height\":\"\"},\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[],\"validations\":[],\"cols\":{\"len\":50},\"merges\":[]}', NULL, NULL, 'admin', '2021-07-14 05:45:09', 'admin', '2021-07-14 05:59:44', 0, NULL, NULL, 0, 5, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('6059e405dd9c66a6d38e00841d2e40cc', '566777', '处方笺', '', NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":{\"sri\":9,\"sci\":3,\"eri\":9,\"eci\":11,\"width\":593,\"height\":25},\"printElWidth\":718,\"excel_config_id\":\"6059e405dd9c66a6d38e00841d2e40cc\",\"printElHeight\":1047,\"rows\":{\"0\":{\"cells\":{\"3\":{\"style\":80,\"text\":\" \"}},\"height\":96},\"1\":{\"cells\":{\"1\":{\"style\":24,\"text\":\" \"},\"2\":{\"style\":25,\"text\":\" \"},\"3\":{\"style\":25,\"text\":\" \"},\"4\":{\"style\":25,\"text\":\" \"},\"5\":{\"style\":25,\"text\":\" \"},\"6\":{\"style\":25,\"text\":\" \"},\"7\":{\"style\":25,\"text\":\" \"},\"8\":{\"style\":25,\"text\":\" \"},\"9\":{\"style\":25,\"text\":\" \"},\"10\":{\"style\":25,\"text\":\" \"},\"11\":{\"style\":25,\"text\":\" \"},\"12\":{\"style\":26,\"text\":\" \"}},\"height\":18},\"2\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":27},\"2\":{\"merge\":[0,9],\"text\":\"智能医学院处方笺\",\"style\":38},\"3\":{\"style\":12,\"text\":\" \"},\"4\":{\"style\":12,\"text\":\" \"},\"5\":{\"style\":12,\"text\":\" \"},\"6\":{\"style\":12,\"text\":\" \"},\"7\":{\"style\":12,\"text\":\" \"},\"8\":{\"style\":12,\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"style\":12,\"text\":\" \"},\"11\":{\"style\":12,\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"},\"13\":{\"style\":80,\"text\":\" \"}},\"height\":124},\"3\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":46},\"2\":{\"merge\":[0,1],\"text\":\"姓名:\",\"style\":4},\"3\":{\"style\":4,\"text\":\" \"},\"4\":{\"text\":\"${yonghu.yphone}\"},\"5\":{\"text\":\"性别:\",\"style\":42},\"6\":{\"text\":\"${yonghu.ysex}\",\"style\":42},\"7\":{\"text\":\"年龄:\",\"style\":47},\"8\":{\"text\":\"${yonghu.yage}\"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \",\"style\":42},\"11\":{\"style\":69,\"text\":\" \",\"merge\":[0,1]},\"12\":{\"style\":43,\"text\":\" \"},\"13\":{\"style\":80,\"text\":\" \"}},\"isDrag\":true},\"4\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":74},\"2\":{\"style\":4,\"merge\":[0,1],\"text\":\"单位:\"},\"3\":{\"style\":4,\"text\":\" \"},\"4\":{\"text\":\"${yonghu.danwei}\"},\"5\":{\"text\":\"电话:\"},\"6\":{\"text\":\"${yonghu.yphone}\",\"merge\":[0,5]},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"},\"15\":{\"text\":\"\"}},\"isDrag\":true,\"height\":29},\"5\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"merge\":[0,1],\"text\":\"初步诊断:\",\"style\":4},\"3\":{\"text\":\" \",\"style\":4},\"4\":{\"text\":\"${yonghu.yjieguo}\",\"merge\":[0,7]},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"isDrag\":true,\"height\":34},\"6\":{\"cells\":{\"1\":{\"text\":\" RP:\",\"merge\":[0,2],\"style\":79},\"2\":{\"style\":11,\"text\":\" \"},\"3\":{\"style\":11,\"text\":\" \"},\"4\":{\"style\":39,\"text\":\" \"},\"5\":{\"style\":0,\"text\":\" \"},\"6\":{\"style\":0,\"text\":\" \"},\"7\":{\"style\":0,\"text\":\" \"},\"8\":{\"style\":0,\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"style\":0,\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"},\"14\":{},\"16\":{}},\"height\":79},\"7\":{\"cells\":{\"1\":{\"text\":\".\",\"style\":48},\"2\":{\"text\":\"\",\"style\":1},\"3\":{\"text\":\"#{yaopin.name}\",\"merge\":[0,1]},\"5\":{},\"6\":{},\"7\":{\"text\":\"#{yaopin.percent}\",\"merge\":[0,1]},\"9\":{},\"10\":{},\"11\":{\"text\":\"\"},\"12\":{\"style\":28,\"text\":\" \"},\"14\":{}},\"isDrag\":true,\"height\":37},\"8\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\" \"},\"3\":{\"text\":\" \"},\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"height\":27},\"9\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"医嘱:\",\"style\":76},\"3\":{\"text\":\"${yonghu.yizhu}\",\"style\":6,\"merge\":[0,8]},\"12\":{\"style\":28,\"text\":\" \"}},\"isDrag\":true},\"10\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"药品费\",\"style\":6,\"merge\":[0,1]},\"3\":{\"text\":\" \"},\"4\":{\"text\":\"${yonghu.yprice}\",\"style\":6},\"5\":{\"text\":\"中成药费\",\"style\":6,\"rendered\":\"\",\"merge\":[0,1]},\"7\":{\"style\":6,\"text\":\" \"},\"8\":{\"text\":\"治疗费\",\"merge\":[0,2],\"style\":6},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"style\":6,\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"isDrag\":true},\"11\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"检查费\",\"style\":6,\"merge\":[0,1]},\"3\":{\"text\":\" \"},\"4\":{\"style\":6,\"text\":\" \"},\"5\":{\"text\":\"换药费\",\"style\":6,\"merge\":[0,1]},\"7\":{\"style\":6,\"text\":\" \"},\"8\":{\"merge\":[0,2],\"text\":\"诊疗费\",\"style\":6},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\"${yonghu.yzhenliao}\",\"style\":6},\"12\":{\"style\":28,\"text\":\" \"}},\"isDrag\":true},\"12\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"注射费\",\"style\":6,\"merge\":[0,1]},\"3\":{\"text\":\" \"},\"4\":{\"style\":6,\"merge\":[0,3],\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"merge\":[0,2],\"text\":\"其他\",\"style\":6},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"style\":6,\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}}},\"13\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"合计\",\"style\":6,\"merge\":[0,1]},\"3\":{\"text\":\" \"},\"4\":{\"text\":\"${yonghu.ytotal}\",\"style\":6,\"merge\":[0,7]},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"isDrag\":true},\"14\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\" \"},\"3\":{\"text\":\" \"},\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"},\"13\":{\"style\":80,\"text\":\" \"}},\"height\":9},\"15\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"医师:\",\"style\":4,\"rendered\":\"\",\"merge\":[0,1]},\"4\":{\"text\":\"${yonghu.yishe}\",\"style\":80},\"5\":{\"style\":80,\"text\":\" \"},\"6\":{\"style\":80,\"text\":\" \"},\"7\":{\"style\":80,\"text\":\" \"},\"8\":{\"text\":\"日期:\",\"style\":4},\"9\":{\"text\":\"${yonghu.kdata}\",\"style\":80,\"merge\":[0,2]},\"12\":{\"style\":71,\"text\":\" \"},\"13\":{\"style\":80,\"text\":\" \"}},\"isDrag\":true,\"height\":43},\"16\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"style\":80,\"text\":\" \"},\"3\":{\"style\":80,\"text\":\" \"},\"4\":{\"style\":80,\"text\":\" \"},\"5\":{\"style\":80,\"text\":\" \"},\"6\":{\"style\":80,\"text\":\" \"},\"7\":{\"style\":80,\"text\":\" \"},\"8\":{\"style\":80,\"text\":\" \"},\"9\":{\"style\":80,\"text\":\" \"},\"10\":{\"style\":80,\"text\":\" \"},\"11\":{\"style\":80,\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"height\":17},\"17\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":32},\"2\":{\"text\":\" \",\"style\":33},\"3\":{\"style\":33,\"text\":\" \"},\"4\":{\"text\":\" \",\"style\":33},\"5\":{\"text\":\" \",\"style\":33},\"6\":{\"text\":\" \",\"style\":33},\"7\":{\"text\":\" \",\"style\":33},\"8\":{\"text\":\" \",\"style\":33},\"9\":{\"text\":\" \",\"style\":33},\"10\":{\"text\":\" \",\"style\":33},\"11\":{\"text\":\" \",\"style\":33},\"12\":{\"text\":\" \",\"style\":34}}},\"18\":{\"cells\":{\"11\":{\"text\":\"\"}},\"isDrag\":true},\"len\":94,\"-1\":{\"cells\":{\"-1\":{\"text\":\"#{yaopin.key1}\"}},\"isDrag\":true},\"\":{\"cells\":{\"NaN\":{\"text\":\"\",\"rendered\":\"\"}}}},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":709,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"font\":{\"size\":12}},{\"font\":{\"size\":10}},{\"font\":{\"size\":12},\"align\":\"right\"},{\"font\":{\"size\":14}},{\"align\":\"right\"},{\"font\":{\"size\":10},\"align\":\"right\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\"},{\"font\":{\"size\":12},\"align\":\"center\"},{\"font\":{\"size\":12,\"bold\":true},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true}},{\"font\":{\"size\":14,\"bold\":true},\"align\":\"center\"},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":14,\"bold\":true},\"align\":\"center\",\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14,\"bold\":true},\"align\":\"center\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":15},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":15}},{\"align\":\"left\"},{\"font\":{\"size\":14,\"bold\":true},\"align\":\"center\",\"border\":{\"bottom\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":true}},{\"font\":{\"size\":12,\"bold\":true},\"align\":\"center\",\"border\":{\"bottom\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"valign\":\"bottom\"},{\"font\":{\"size\":10},\"valign\":\"bottom\"},{\"valign\":\"bottom\"},{\"align\":\"right\",\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"valign\":\"bottom\",\"align\":\"right\"},{\"font\":{\"size\":10},\"valign\":\"bottom\",\"align\":\"right\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"right\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"textwrap\":true},{\"font\":{\"size\":10},\"textwrap\":true},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"textwrap\":false},{\"font\":{\"size\":10},\"textwrap\":false},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"textwrap\":false,\"align\":\"right\"},{\"font\":{\"size\":10},\"textwrap\":false,\"align\":\"right\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"textwrap\":false,\"align\":\"left\"},{\"font\":{\"size\":10},\"textwrap\":false,\"align\":\"left\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"textwrap\":false,\"align\":\"center\"},{\"font\":{\"size\":10},\"textwrap\":false,\"align\":\"center\"},{\"font\":{\"size\":15},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"right\"},{\"font\":{\"size\":15},\"align\":\"right\"},{\"font\":{\"size\":15},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"]},\"valign\":\"bottom\",\"align\":\"right\"},{\"font\":{\"size\":10},\"valign\":\"bottom\",\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"]},\"align\":\"right\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"]},\"textwrap\":false,\"align\":\"left\"},{\"font\":{\"size\":10},\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":15},\"border\":{\"left\":[\"thin\",\"#000\"]},\"align\":\"center\"},{\"align\":\"left\",\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":10},\"valign\":\"bottom\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":10},\"align\":\"left\"},{\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"right\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"right\"},{\"font\":{\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":10},\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":15,\"bold\":true},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{},{\"font\":{\"size\":15,\"bold\":true},\"align\":\"center\"},{\"align\":\"right\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":14,\"bold\":true},\"align\":\"center\",\"border\":{\"bottom\":[\"thick\",\"#000\"],\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}}],\"validations\":[],\"cols\":{\"0\":{\"width\":23},\"1\":{\"width\":14},\"2\":{\"width\":56},\"3\":{\"width\":40},\"4\":{\"width\":156},\"5\":{\"width\":41},\"6\":{\"width\":18},\"7\":{\"width\":92},\"8\":{\"width\":58},\"9\":{\"width\":20},\"10\":{\"width\":20},\"11\":{\"width\":148},\"12\":{\"width\":12},\"13\":{\"width\":11},\"len\":50},\"merges\":[\"C3:E3\",\"C7:E7\",\"H3:I3\",\"H7:I7\",\"C7:E7\",\"H7:I7\",\"I11:K11\",\"I12:K12\",\"I13:K13\",\"E13:H13\",\"C11:D11\",\"C12:D12\",\"C13:D13\",\"C14:D14\",\"L4:M4\",\"C3:L3\",\"B7:D7\",\"C4:D4\",\"C5:D5\",\"E14:L14\",\"G5:L5\",\"C6:D6\",\"E6:L6\",\"D8:E8\",\"H8:I8\",\"C16:D16\",\"J16:L16\",\"F11:G11\",\"F12:G12\",\"D10:L10\"]}', '', 'https://static.jeecg.com/designreport/images/处方_1607071731580.png', 'jeecg', '2020-07-10 17:12:16', 'admin', '2021-07-12 12:25:06', 0, NULL, NULL, 1, 849, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('6d6bdcb5e820c301ea32789e3ae43c44', '1223', '供电公司抢修单', '', NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":{\"sri\":14,\"sci\":8,\"eri\":14,\"eci\":8,\"width\":100,\"height\":67},\"printElWidth\":718,\"excel_config_id\":\"6d6bdcb5e820c301ea32789e3ae43c44\",\"printElHeight\":1047,\"rows\":{\"0\":{\"cells\":{},\"height\":11},\"1\":{\"cells\":{\"1\":{\"text\":\"供电公司抢修竣工单\",\"merge\":[0,5],\"style\":39},\"2\":{\"style\":39},\"3\":{\"style\":39},\"4\":{\"style\":39},\"5\":{\"style\":39},\"6\":{\"style\":39}},\"height\":56},\"2\":{\"cells\":{\"1\":{\"text\":\"填报单位:\",\"style\":26},\"2\":{\"text\":\"#{qiangxiu.danwei}\",\"style\":27},\"3\":{\"style\":27},\"4\":{\"text\":\"\",\"style\":27},\"5\":{\"text\":\"填报日期:\",\"style\":26},\"6\":{\"text\":\"#{qiangxiu.time}\",\"style\":27}}},\"3\":{\"cells\":{\"1\":{\"text\":\"填报名称:\",\"style\":26},\"2\":{\"text\":\"#{qiangxiu.ktime}\",\"style\":27},\"3\":{\"style\":27},\"4\":{\"style\":27},\"5\":{\"text\":\"项目编号:\",\"style\":26},\"6\":{\"text\":\"#{qiangxiu.wtime}\",\"style\":27}}},\"4\":{\"cells\":{\"1\":{\"style\":28},\"2\":{\"style\":28},\"3\":{\"style\":28},\"4\":{\"style\":28},\"5\":{\"style\":28},\"6\":{\"style\":28}},\"height\":10},\"5\":{\"cells\":{\"1\":{\"text\":\"项目批准核算\",\"style\":29},\"2\":{\"text\":\"#{qiangxiu.yusuan}\",\"style\":30,\"merge\":[0,4]}},\"height\":89},\"6\":{\"cells\":{\"1\":{\"text\":\"开工日期\",\"style\":32},\"2\":{\"style\":33,\"text\":\"#{qiangxiu.ktime}\",\"merge\":[0,1]},\"3\":{\"style\":28},\"4\":{\"style\":34,\"text\":\"完工日期\"},\"5\":{\"style\":33,\"merge\":[0,1],\"text\":\"#{qiangxiu.wtime}\"},\"6\":{\"style\":28}},\"height\":31},\"7\":{\"cells\":{\"1\":{\"text\":\"完工主要内容\",\"style\":32},\"2\":{\"style\":33,\"text\":\"#{qiangxiu.neirong}\",\"merge\":[0,4]}},\"height\":71},\"8\":{\"cells\":{\"1\":{\"text\":\"形成能力\",\"style\":32},\"2\":{\"style\":33,\"merge\":[0,4],\"text\":\"#{qiangxiu.nengli}\"},\"3\":{\"style\":28},\"4\":{\"style\":28},\"5\":{\"style\":28},\"6\":{\"style\":28}},\"height\":49},\"9\":{\"cells\":{\"1\":{\"text\":\"目标效益验收意见\",\"style\":32},\"2\":{\"style\":35,\"text\":\"#{qiangxiu.yijian}\",\"rendered\":\"\",\"merge\":[0,4]}},\"height\":100},\"10\":{\"cells\":{\"1\":{\"style\":37,\"text\":\" \",\"merge\":[0,3]},\"2\":{\"style\":28},\"3\":{\"style\":28},\"4\":{\"style\":28},\"5\":{\"style\":37,\"text\":\"#{qiangxiu.time1}\",\"merge\":[0,1]},\"6\":{\"style\":28}}},\"11\":{\"cells\":{\"1\":{\"text\":\"实施质量验收评价\",\"style\":32},\"2\":{\"style\":35,\"text\":\"#{qiangxiu.pingjia}\",\"merge\":[0,4]}},\"height\":99},\"12\":{\"cells\":{\"1\":{\"style\":33,\"merge\":[0,3]},\"2\":{\"style\":28},\"3\":{\"style\":28},\"4\":{\"style\":28},\"5\":{\"style\":33,\"merge\":[0,1],\"text\":\"#{qiangxiu.time1}\"},\"6\":{\"style\":28}}},\"13\":{\"cells\":{\"1\":{\"text\":\"验收总结\",\"style\":32},\"2\":{\"style\":35,\"text\":\"#{qiangxiu.zongjie}\",\"merge\":[0,4],\"rendered\":\"\"}},\"height\":80},\"14\":{\"cells\":{\"1\":{\"text\":\"责任单位意见\",\"style\":32},\"2\":{\"style\":33,\"merge\":[0,4],\"text\":\"#{qiangxiu.zongjie}\"}},\"height\":67},\"15\":{\"cells\":{\"1\":{\"text\":\"责任单位审核人\",\"style\":32},\"2\":{\"style\":33,\"merge\":[0,1],\"text\":\"#{qiangxiu.dshenhe}\"},\"3\":{\"style\":28},\"4\":{\"style\":34,\"text\":\"日期\"},\"5\":{\"style\":33,\"text\":\"#{qiangxiu.time3}\",\"merge\":[0,1]},\"6\":{\"style\":28}},\"height\":42},\"16\":{\"cells\":{\"1\":{\"text\":\"生技部审批意见\",\"style\":32},\"2\":{\"style\":33,\"text\":\"#{qiangxiu.dshenhe}\",\"merge\":[0,4]}},\"height\":107},\"17\":{\"cells\":{\"1\":{\"text\":\"生技部主任\",\"style\":32},\"2\":{\"style\":33,\"merge\":[0,1],\"text\":\"#{qiangxiu.zhuren}\"},\"3\":{\"style\":28},\"4\":{\"style\":34,\"text\":\"日期\"},\"5\":{\"style\":33,\"text\":\"#{qiangxiu.time4}\",\"merge\":[0,1]},\"6\":{\"style\":28}},\"height\":41},\"18\":{\"cells\":{\"1\":{\"style\":28},\"2\":{\"style\":28},\"3\":{\"style\":28},\"4\":{\"style\":28},\"5\":{\"style\":28},\"6\":{\"style\":28}}},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":699,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#9cc2e6\"},{\"bgcolor\":\"#9cc2e6\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#ffffff\"},{\"bgcolor\":\"#ffffff\"},{\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":14}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"right\"},{\"align\":\"right\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"left\"},{\"align\":\"left\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true},{\"textwrap\":true},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":false},{\"textwrap\":false},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"right\",\"color\":\"#7f7f7f\"},{\"color\":\"#7f7f7f\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#ffffff\",\"font\":{\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#ffffff\",\"font\":{\"bold\":false}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":false}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"right\",\"font\":{\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true,\"name\":\"宋体\"}},{\"align\":\"right\",\"color\":\"#7f7f7f\",\"font\":{\"name\":\"宋体\"}},{\"color\":\"#7f7f7f\",\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#ffffff\",\"font\":{\"bold\":true,\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#ffffff\",\"font\":{\"name\":\"宋体\"}},{\"bgcolor\":\"#ffffff\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"bold\":true,\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"right\",\"font\":{\"bold\":true,\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"font\":{\"name\":\"宋体\"}},{\"textwrap\":true,\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"left\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":false,\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true,\"name\":\"宋体\"}}],\"validations\":[],\"cols\":{\"0\":{\"width\":23},\"1\":{\"width\":117},\"3\":{\"width\":108},\"4\":{\"width\":127},\"5\":{\"width\":76},\"6\":{\"width\":148},\"7\":{\"width\":13},\"len\":50},\"merges\":[\"C7:D7\",\"F7:G7\",\"B2:G2\",\"C9:G9\",\"B11:E11\",\"F11:G11\",\"B13:E13\",\"F13:G13\",\"C16:D16\",\"C18:D18\",\"F16:G16\",\"F18:G18\",\"C10:G10\",\"C8:G8\",\"C6:G6\",\"C12:G12\",\"C14:G14\",\"C15:G15\",\"C17:G17\"]}', '', 'https://static.jeecg.com/designreport/images/222_1607311944321.png', 'jeecg', '2020-07-20 19:37:54', 'admin', '2021-07-12 12:25:19', 0, NULL, NULL, 1, 178, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('6df599d933df24de007764d0e98eb105', '5667774539', '处方笺副本4539', '', NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":false,\"printElWidth\":718,\"excel_config_id\":\"6df599d933df24de007764d0e98eb105\",\"printElHeight\":1047,\"rows\":{\"0\":{\"cells\":{\"3\":{\"style\":80,\"text\":\" \"}},\"height\":96},\"1\":{\"cells\":{\"1\":{\"style\":24,\"text\":\" \"},\"2\":{\"style\":25,\"text\":\" \"},\"3\":{\"style\":25,\"text\":\" \"},\"4\":{\"style\":25,\"text\":\" \"},\"5\":{\"style\":25,\"text\":\" \"},\"6\":{\"style\":25,\"text\":\" \"},\"7\":{\"style\":25,\"text\":\" \"},\"8\":{\"style\":25,\"text\":\" \"},\"9\":{\"style\":25,\"text\":\" \"},\"10\":{\"style\":25,\"text\":\" \"},\"11\":{\"style\":25,\"text\":\" \"},\"12\":{\"style\":26,\"text\":\" \"}},\"height\":18},\"2\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":27},\"2\":{\"merge\":[0,9],\"text\":\"智能医学院处方笺\",\"style\":38},\"3\":{\"style\":12,\"text\":\" \"},\"4\":{\"style\":12,\"text\":\" \"},\"5\":{\"style\":12,\"text\":\" \"},\"6\":{\"style\":12,\"text\":\" \"},\"7\":{\"style\":12,\"text\":\" \"},\"8\":{\"style\":12,\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"style\":12,\"text\":\" \"},\"11\":{\"style\":12,\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"},\"13\":{\"style\":80,\"text\":\" \"}},\"height\":124},\"3\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":46},\"2\":{\"merge\":[0,1],\"text\":\"姓名:\",\"style\":4},\"3\":{\"style\":4,\"text\":\" \"},\"4\":{\"text\":\"${yonghu.yphone}\"},\"5\":{\"text\":\"性别:\",\"style\":42},\"6\":{\"text\":\"${yonghu.ysex}\",\"style\":42},\"7\":{\"text\":\"年龄:\",\"style\":47},\"8\":{\"text\":\"${yonghu.yage}\"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \",\"style\":42},\"11\":{\"style\":69,\"text\":\" \",\"merge\":[0,1]},\"12\":{\"style\":43,\"text\":\" \"},\"13\":{\"style\":80,\"text\":\" \"}},\"isDrag\":true},\"4\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":74},\"2\":{\"style\":4,\"merge\":[0,1],\"text\":\"单位:\"},\"3\":{\"style\":4,\"text\":\" \"},\"4\":{\"text\":\"${yonghu.danwei}\"},\"5\":{\"text\":\"电话:\"},\"6\":{\"text\":\"${yonghu.yphone}\",\"merge\":[0,5]},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"},\"15\":{\"text\":\"\"}},\"isDrag\":true,\"height\":29},\"5\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"merge\":[0,1],\"text\":\"初步诊断:\",\"style\":4},\"3\":{\"text\":\" \",\"style\":4},\"4\":{\"text\":\"${yonghu.yjieguo}\",\"merge\":[0,7]},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"isDrag\":true,\"height\":34},\"6\":{\"cells\":{\"1\":{\"text\":\" RP:\",\"merge\":[0,2],\"style\":79},\"2\":{\"style\":11,\"text\":\" \"},\"3\":{\"style\":11,\"text\":\" \"},\"4\":{\"style\":39,\"text\":\" \"},\"5\":{\"style\":0,\"text\":\" \"},\"6\":{\"style\":0,\"text\":\" \"},\"7\":{\"style\":0,\"text\":\" \"},\"8\":{\"style\":0,\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"style\":0,\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"},\"14\":{},\"16\":{}},\"height\":79},\"7\":{\"cells\":{\"1\":{\"text\":\".\",\"style\":48},\"2\":{\"text\":\"\",\"style\":1},\"3\":{\"text\":\"#{yaopin.name}\",\"merge\":[0,1]},\"5\":{},\"6\":{},\"7\":{\"text\":\"#{yaopin.percent}\",\"merge\":[0,1]},\"9\":{},\"10\":{},\"11\":{\"text\":\"\"},\"12\":{\"style\":28,\"text\":\" \"},\"14\":{}},\"isDrag\":true,\"height\":37},\"8\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\" \"},\"3\":{\"text\":\" \"},\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"height\":27},\"9\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"医嘱:\",\"style\":76},\"3\":{\"text\":\"${yonghu.yizhu}\",\"style\":6,\"merge\":[0,8]},\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"isDrag\":true},\"10\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"药品费\",\"style\":6,\"merge\":[0,1]},\"3\":{\"text\":\" \"},\"4\":{\"text\":\"${yonghu.yprice}\",\"style\":6},\"5\":{\"merge\":[0,1],\"text\":\"中成药费\",\"style\":6},\"6\":{\"text\":\" \"},\"7\":{\"style\":6,\"text\":\" \"},\"8\":{\"text\":\"治疗费\",\"merge\":[0,2],\"style\":6},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"style\":6,\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"isDrag\":true},\"11\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"检查费\",\"style\":6,\"merge\":[0,1]},\"3\":{\"text\":\" \"},\"4\":{\"style\":6,\"text\":\" \"},\"5\":{\"merge\":[0,1],\"text\":\"换药费\",\"style\":6},\"6\":{\"text\":\" \"},\"7\":{\"style\":6,\"text\":\" \"},\"8\":{\"merge\":[0,2],\"text\":\"诊疗费\",\"style\":6},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\"${yonghu.yzhenliao}\",\"style\":6},\"12\":{\"style\":28,\"text\":\" \"}},\"isDrag\":true},\"12\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"注射费\",\"style\":6,\"merge\":[0,1]},\"3\":{\"text\":\" \"},\"4\":{\"style\":6,\"merge\":[0,3],\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"merge\":[0,2],\"text\":\"其他\",\"style\":6},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"style\":6,\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}}},\"13\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"合计\",\"style\":6,\"merge\":[0,1]},\"3\":{\"text\":\" \"},\"4\":{\"text\":\"${yonghu.ytotal}\",\"style\":6,\"merge\":[0,7]},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"isDrag\":true},\"14\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\" \"},\"3\":{\"text\":\" \"},\"4\":{\"text\":\" \"},\"5\":{\"text\":\" \"},\"6\":{\"text\":\" \"},\"7\":{\"text\":\" \"},\"8\":{\"text\":\" \"},\"9\":{\"text\":\" \"},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"},\"13\":{\"style\":80,\"text\":\" \"}},\"height\":9},\"15\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"text\":\"医师:\",\"style\":4,\"merge\":[0,1]},\"3\":{\"text\":\" \"},\"4\":{\"text\":\"${yonghu.yishe}\",\"style\":80},\"5\":{\"style\":80,\"text\":\" \"},\"6\":{\"style\":80,\"text\":\" \"},\"7\":{\"style\":80,\"text\":\" \"},\"8\":{\"text\":\"日期:\",\"style\":4},\"9\":{\"text\":\"${yonghu.kdata}\",\"style\":80,\"merge\":[0,2]},\"10\":{\"text\":\" \"},\"11\":{\"text\":\" \"},\"12\":{\"style\":71,\"text\":\" \"},\"13\":{\"style\":80,\"text\":\" \"}},\"isDrag\":true,\"height\":43},\"16\":{\"cells\":{\"1\":{\"style\":31,\"text\":\" \"},\"2\":{\"style\":80,\"text\":\" \"},\"3\":{\"style\":80,\"text\":\" \"},\"4\":{\"style\":80,\"text\":\" \"},\"5\":{\"style\":80,\"text\":\" \"},\"6\":{\"style\":80,\"text\":\" \"},\"7\":{\"style\":80,\"text\":\" \"},\"8\":{\"style\":80,\"text\":\" \"},\"9\":{\"style\":80,\"text\":\" \"},\"10\":{\"style\":80,\"text\":\" \"},\"11\":{\"style\":80,\"text\":\" \"},\"12\":{\"style\":28,\"text\":\" \"}},\"height\":17},\"17\":{\"cells\":{\"1\":{\"text\":\" \",\"style\":32},\"2\":{\"text\":\" \",\"style\":33},\"3\":{\"style\":33,\"text\":\" \"},\"4\":{\"text\":\" \",\"style\":33},\"5\":{\"text\":\" \",\"style\":33},\"6\":{\"text\":\" \",\"style\":33},\"7\":{\"text\":\" \",\"style\":33},\"8\":{\"text\":\" \",\"style\":33},\"9\":{\"text\":\" \",\"style\":33},\"10\":{\"text\":\" \",\"style\":33},\"11\":{\"text\":\" \",\"style\":33},\"12\":{\"text\":\" \",\"style\":34}}},\"18\":{\"cells\":{\"11\":{\"text\":\"\"}},\"isDrag\":true},\"len\":94,\"-1\":{\"cells\":{\"-1\":{\"text\":\"#{yaopin.key1}\"}},\"isDrag\":true},\"\":{\"cells\":{\"NaN\":{\"text\":\"\",\"rendered\":\"\"}}}},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":798,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"font\":{\"size\":12}},{\"font\":{\"size\":10}},{\"font\":{\"size\":12},\"align\":\"right\"},{\"font\":{\"size\":14}},{\"align\":\"right\"},{\"font\":{\"size\":10},\"align\":\"right\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\"},{\"font\":{\"size\":12},\"align\":\"center\"},{\"font\":{\"size\":12,\"bold\":true},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true}},{\"font\":{\"size\":14,\"bold\":true},\"align\":\"center\"},{\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":14,\"bold\":true},\"align\":\"center\",\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14,\"bold\":true},\"align\":\"center\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":15},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":15}},{\"align\":\"left\"},{\"font\":{\"size\":14,\"bold\":true},\"align\":\"center\",\"border\":{\"bottom\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":true}},{\"font\":{\"size\":12,\"bold\":true},\"align\":\"center\",\"border\":{\"bottom\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"valign\":\"bottom\"},{\"font\":{\"size\":10},\"valign\":\"bottom\"},{\"valign\":\"bottom\"},{\"align\":\"right\",\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"valign\":\"bottom\",\"align\":\"right\"},{\"font\":{\"size\":10},\"valign\":\"bottom\",\"align\":\"right\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"right\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"textwrap\":true},{\"font\":{\"size\":10},\"textwrap\":true},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"textwrap\":false},{\"font\":{\"size\":10},\"textwrap\":false},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"textwrap\":false,\"align\":\"right\"},{\"font\":{\"size\":10},\"textwrap\":false,\"align\":\"right\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"textwrap\":false,\"align\":\"left\"},{\"font\":{\"size\":10},\"textwrap\":false,\"align\":\"left\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thick\",\"#000\"]},\"textwrap\":false,\"align\":\"center\"},{\"font\":{\"size\":10},\"textwrap\":false,\"align\":\"center\"},{\"font\":{\"size\":15},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"right\"},{\"font\":{\"size\":15},\"align\":\"right\"},{\"font\":{\"size\":15},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"]},\"valign\":\"bottom\",\"align\":\"right\"},{\"font\":{\"size\":10},\"valign\":\"bottom\",\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"]},\"align\":\"right\"},{\"font\":{\"size\":10},\"border\":{\"left\":[\"thin\",\"#000\"]},\"textwrap\":false,\"align\":\"left\"},{\"font\":{\"size\":10},\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":15},\"border\":{\"left\":[\"thin\",\"#000\"]},\"align\":\"center\"},{\"align\":\"left\",\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":10},\"valign\":\"bottom\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":10},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":10},\"align\":\"left\"},{\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"right\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"right\"},{\"font\":{\"size\":10},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":10},\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":15,\"bold\":true},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{},{\"font\":{\"size\":15,\"bold\":true},\"align\":\"center\"},{\"align\":\"right\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":14,\"bold\":true},\"align\":\"center\",\"border\":{\"bottom\":[\"thick\",\"#000\"],\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}}],\"validations\":[],\"cols\":{\"0\":{\"width\":23},\"1\":{\"width\":14},\"2\":{\"width\":56},\"3\":{\"width\":40},\"4\":{\"width\":156},\"5\":{\"width\":41},\"6\":{\"width\":18},\"7\":{\"width\":92},\"8\":{\"width\":58},\"9\":{\"width\":20},\"10\":{\"width\":20},\"11\":{\"width\":148},\"12\":{\"width\":12},\"len\":50},\"merges\":[\"C3:E3\",\"C7:E7\",\"H3:I3\",\"H7:I7\",\"C7:E7\",\"H7:I7\",\"F11:G11\",\"I11:K11\",\"F12:G12\",\"I12:K12\",\"I13:K13\",\"E13:H13\",\"C11:D11\",\"C12:D12\",\"C13:D13\",\"C14:D14\",\"C16:D16\",\"L4:M4\",\"C3:L3\",\"B7:D7\",\"C4:D4\",\"C5:D5\",\"E14:L14\",\"J16:L16\",\"D10:L10\",\"G5:L5\",\"C6:D6\",\"E6:L6\",\"D8:E8\",\"H8:I8\"]}', '', 'https://static.jeecg.com/designreport/images/处方_1607071731580.png', 'admin', '2021-02-02 20:13:47', 'admin', '2021-07-13 10:24:42', 1, NULL, NULL, 0, 835, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('7905022412733a0c68dc7b4ef8947489', '8996445', '介绍信', '', NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":{\"sri\":5,\"sci\":15,\"eri\":5,\"eci\":15,\"width\":100,\"height\":42},\"excel_config_id\":\"7905022412733a0c68dc7b4ef8947489\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"portrait\"},\"rows\":{\"0\":{\"cells\":{\"1\":{},\"12\":{}},\"height\":11},\"3\":{\"cells\":{\"0\":{\"text\":\"\",\"style\":46},\"1\":{\"merge\":[0,10],\"text\":\"介绍信\",\"style\":337}},\"height\":216},\"4\":{\"cells\":{\"1\":{\"text\":\"${jieshaoxin.name}\",\"style\":338,\"merge\":[0,3]},\"5\":{\"text\":\":\",\"style\":339}},\"isDrag\":true,\"height\":80},\"5\":{\"cells\":{\"1\":{\"text\":\"兹介绍我局\",\"style\":340,\"merge\":[0,5]},\"7\":{\"text\":\"${jieshaoxin.value}\",\"style\":341},\"8\":{\"text\":\"同志\",\"style\":339},\"9\":{\"text\":\"#{jieshaoxin.percent}\",\"style\":339},\"10\":{\"text\":\"人,前往你处\",\"style\":339,\"merge\":[0,1]}},\"isDrag\":true,\"height\":42},\"6\":{\"cells\":{\"1\":{\"text\":\"${jieshaoxin.shiqing}\",\"style\":342,\"merge\":[0,5]},\"15\":{\"text\":\"\"}},\"isDrag\":true,\"height\":48},\"7\":{\"cells\":{\"1\":{\"style\":343,\"text\":\"\"},\"2\":{\"style\":344,\"merge\":[0,5],\"text\":\"请予接洽并给予帮助。\"}},\"height\":56},\"10\":{\"cells\":{\"8\":{\"text\":\"\",\"style\":316,\"merge\":[0,3]}},\"height\":39},\"11\":{\"cells\":{\"8\":{\"merge\":[0,2],\"text\":\"单位盖章\",\"style\":347},\"11\":{\"merge\":[0,1],\"style\":316}},\"height\":84},\"12\":{\"cells\":{\"1\":{\"merge\":[0,2],\"text\":\"\",\"style\":317},\"4\":{\"merge\":[0,2],\"text\":\"\",\"style\":346},\"7\":{\"text\":\"(有效时间:至\",\"style\":317},\"8\":{\"text\":\"${jieshaoxin.gdata}\",\"style\":316,\"merge\":[0,2]},\"11\":{\"style\":348,\"text\":\"止)\"}},\"isDrag\":true,\"height\":30},\"13\":{\"cells\":{\"1\":{\"merge\":[8,11]}}},\"len\":83},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":694,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"left\"},{\"align\":\"left\",\"underline\":true},{\"underline\":true},{\"align\":\"center\",\"underline\":true},{\"align\":\"center\"},{\"align\":\"center\",\"underline\":false},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":16}},{\"font\":{\"size\":16}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16}},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":16}},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16}},{\"align\":\"left\",\"font\":{\"size\":16,\"bold\":true}},{\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":true}},{\"font\":{\"bold\":true}},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"left\",\"font\":{\"size\":16,\"bold\":false}},{\"font\":{\"size\":16,\"bold\":false}},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":16,\"bold\":false}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":false}},{\"font\":{\"bold\":false}},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":false}},{\"align\":\"left\",\"font\":{\"size\":16,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":16,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":16,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"align\":\"center\"},{\"font\":{\"size\":12},\"align\":\"center\"},{\"font\":{\"size\":8}},{\"font\":{\"size\":10}},{\"font\":{\"size\":10,\"bold\":true}},{\"font\":{\"size\":10,\"bold\":true},\"align\":\"center\"},{\"font\":{\"size\":18,\"bold\":true},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":18}},{\"font\":{\"size\":16,\"bold\":true},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":16}},{\"font\":{\"size\":12},\"valign\":\"bottom\"},{\"font\":{\"size\":12},\"valign\":\"middle\"},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"valign\":\"middle\",\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"right\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"right\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"right\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"left\":[\"dashed\",\"#000\"]}},{\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"font\":{\"size\":12,\"bold\":true},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true}},{\"font\":{\"size\":14,\"bold\":true},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"name\":\"Arial\"}},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Arial\"}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Arial\"}},{\"font\":{\"name\":\"Arial\"}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Source Sans Pro\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Source Sans Pro\"}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"}},{\"font\":{\"name\":\"Source Sans Pro\"}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Comic Sans MS\"}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Comic Sans MS\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Comic Sans MS\"}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"}},{\"font\":{\"name\":\"Comic Sans MS\"}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Comic Sans MS\"}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"name\":\"Courier New\"}},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Courier New\"}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Courier New\"}},{\"font\":{\"name\":\"Courier New\"}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"top\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Helvetica\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"top\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":10,\"name\":\"Lato\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"center\"},{\"font\":{\"size\":10,\"name\":\"Lato\"},\"valign\":\"middle\",\"color\":\"#000100\"},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{},{\"font\":{\"size\":12,\"name\":\"Lato\",\"bold\":true},\"color\":\"#000100\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"bold\":true},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"right\"},{\"align\":\"right\"},{\"align\":\"right\",\"font\":{\"size\":12}},{\"align\":\"left\",\"font\":{\"size\":12}},{\"font\":{\"size\":12},\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"align\":\"center\"},{\"valign\":\"top\"},{\"valign\":\"top\",\"align\":\"center\"},{\"valign\":\"top\",\"align\":\"center\",\"font\":{\"size\":12}},{\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"right\"},{\"font\":{\"size\":14}},{\"align\":\"right\",\"font\":{\"size\":14}},{\"font\":{\"size\":14},\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":14,\"bold\":true}},{\"align\":\"right\",\"font\":{\"size\":9}},{\"font\":{\"size\":9}},{\"font\":{\"size\":9},\"align\":\"center\"},{\"font\":{\"size\":9},\"align\":\"left\"},{\"align\":\"left\",\"font\":{\"bold\":true,\"size\":14}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14},\"valign\":\"top\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16},\"valign\":\"top\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":18},\"valign\":\"top\"},{\"align\":\"right\",\"font\":{\"size\":10}},{\"font\":{\"size\":10},\"align\":\"center\"},{\"align\":\"left\",\"font\":{\"size\":10}},{\"align\":\"right\",\"font\":{\"size\":12},\"valign\":\"bottom\"},{\"valign\":\"bottom\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"right\",\"valign\":\"bottom\"},{\"font\":{\"size\":12},\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"align\":\"center\",\"valign\":\"bottom\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"valign\":\"bottom\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"valign\":\"bottom\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":22},\"valign\":\"top\"},{\"align\":\"right\",\"font\":{\"size\":14},\"valign\":\"bottom\"},{\"font\":{\"size\":14},\"valign\":\"bottom\"},{\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"right\",\"valign\":\"bottom\"},{\"font\":{\"size\":14},\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"align\":\"center\",\"valign\":\"bottom\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"valign\":\"bottom\"},{\"align\":\"left\",\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"valign\":\"bottom\"},{\"font\":{\"size\":14,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":14},\"align\":\"center\"},{\"valign\":\"top\",\"align\":\"center\",\"font\":{\"size\":14}},{\"align\":\"left\",\"font\":{\"size\":14}}],\"validations\":[],\"cols\":{\"0\":{\"width\":23},\"1\":{\"width\":46},\"2\":{\"width\":24},\"3\":{\"width\":15},\"4\":{\"width\":43},\"5\":{\"width\":13},\"6\":{\"width\":83},\"7\":{\"width\":256},\"8\":{\"width\":42},\"9\":{\"width\":18},\"10\":{\"width\":77},\"11\":{\"width\":54},\"12\":{\"width\":28},\"13\":{\"width\":62},\"16\":{\"width\":55},\"len\":50},\"merges\":[\"B4:L4\",\"B5:E5\",\"B6:G6\",\"K6:L6\",\"B7:G7\",\"C8:H8\",\"I11:L11\",\"I12:K12\",\"L12:M12\",\"B13:D13\",\"E13:G13\",\"I13:K13\",\"B14:M22\"]}', '', 'https://static.jeecg.com/designreport/images/介绍xin_1607072641405.png', 'jeecg', '2020-07-10 13:38:40', 'admin', '2021-07-12 12:24:47', 0, NULL, NULL, 1, 836, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('7acddbc92bc73d06c7f62ff55dfdca19', '566233333333867', '销售单副本3867', '', NULL, 'printinfo', '{\"area\":{\"sri\":6,\"sci\":7,\"eri\":6,\"eci\":7,\"width\":88,\"height\":25},\"printElWidth\":794,\"excel_config_id\":\"519c1c6f4d1f584ae8fa5b43b45acdc7\",\"printElHeight\":1047,\"rows\":{\"0\":{\"cells\":{\"1\":{\"text\":\"销售单\",\"style\":40,\"merge\":[0,6]},\"2\":{\"style\":41},\"3\":{\"style\":41},\"4\":{\"style\":41},\"5\":{\"style\":41},\"6\":{\"style\":41},\"7\":{\"style\":41}},\"height\":99},\"1\":{\"cells\":{\"1\":{\"text\":\"商品编码\",\"style\":62},\"2\":{\"text\":\"商品名称\",\"style\":62},\"3\":{\"text\":\"销售时间\",\"style\":62},\"4\":{\"text\":\"销售数量\",\"style\":62},\"5\":{\"text\":\"定价\",\"style\":62},\"6\":{\"text\":\"优惠价\",\"style\":62},\"7\":{\"text\":\"付款金额\",\"style\":62}},\"height\":39},\"2\":{\"cells\":{\"1\":{\"text\":\"#{xiaoshou.bianma}\",\"style\":61},\"2\":{\"text\":\"#{xiaoshou.cname}\",\"style\":61},\"3\":{\"text\":\"#{xiaoshou.ctime}\",\"style\":61},\"4\":{\"text\":\"#{xiaoshou.cnum}\",\"style\":61},\"5\":{\"text\":\"#{xiaoshou.cprice}\",\"style\":61},\"6\":{\"text\":\"#{xiaoshou.yprice}\",\"style\":61},\"7\":{\"text\":\"#{xiaoshou.ctotal}\",\"style\":61}},\"isDrag\":true,\"height\":35},\"3\":{\"cells\":{\"1\":{\"style\":44,\"text\":\"\"},\"2\":{\"style\":44},\"3\":{\"style\":44},\"4\":{\"style\":44},\"5\":{\"style\":44,\"text\":\"\"},\"6\":{\"text\":\"\",\"style\":45},\"7\":{\"style\":46,\"text\":\"=SUM(H3)\"}},\"isDrag\":true,\"height\":73},\"5\":{\"cells\":{},\"isDrag\":true},\"6\":{\"cells\":{},\"isDrag\":true},\"7\":{\"cells\":{\"2\":{\"text\":\"\"}},\"isDrag\":true},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":754,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#01b0f1\"],\"top\":[\"thin\",\"#01b0f1\"],\"left\":[\"thin\",\"#01b0f1\"],\"right\":[\"thin\",\"#01b0f1\"]}},{\"border\":{\"bottom\":[\"thin\",\"#01b0f1\"],\"top\":[\"thin\",\"#01b0f1\"],\"left\":[\"thin\",\"#01b0f1\"],\"right\":[\"thin\",\"#01b0f1\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#01b0f1\"],\"top\":[\"thin\",\"#01b0f1\"],\"left\":[\"thin\",\"#01b0f1\"],\"right\":[\"thin\",\"#01b0f1\"]},\"bgcolor\":\"#01b0f1\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#01b0f1\"},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"size\":18}},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"align\":\"center\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#fed964\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#fdc101\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#fdc101\"},{\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"align\":\"center\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#ffe59a\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#ffc001\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#fed964\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#ed7d31\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#fdc101\"],\"top\":[\"thin\",\"#fdc101\"],\"left\":[\"thin\",\"#fdc101\"],\"right\":[\"thin\",\"#fdc101\"]},\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"align\":\"center\"},{\"font\":{\"size\":8}},{\"font\":{\"size\":8},\"color\":\"#7f7f7f\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#9cc2e6\"},{\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]}},{\"font\":{\"bold\":true}},{\"font\":{\"bold\":true,\"size\":12}},{\"font\":{\"bold\":true,\"size\":16}},{\"font\":{\"bold\":true,\"size\":18}},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"align\":\"right\"},{\"align\":\"right\"},{\"align\":\"left\"},{\"align\":\"right\",\"font\":{\"size\":16}},{\"align\":\"left\",\"font\":{\"size\":16}},{\"align\":\"right\",\"font\":{\"size\":14}},{\"align\":\"left\",\"font\":{\"size\":14}},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true,\"name\":\"宋体\"}},{\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"right\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"right\",\"font\":{\"size\":14,\"name\":\"宋体\"}},{\"align\":\"left\",\"font\":{\"size\":14,\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#2e75b5\"],\"top\":[\"thin\",\"#2e75b5\"],\"left\":[\"thin\",\"#2e75b5\"],\"right\":[\"thin\",\"#2e75b5\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#000100\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#ffff01\"],\"top\":[\"thin\",\"#ffff01\"],\"left\":[\"thin\",\"#ffff01\"],\"right\":[\"thin\",\"#ffff01\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"right\",\"font\":{\"size\":14,\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"color\":\"#ffffff\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#2e75b5\"],\"top\":[\"thin\",\"#2e75b5\"],\"left\":[\"thin\",\"#2e75b5\"],\"right\":[\"thin\",\"#2e75b5\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#4371c6\"],\"top\":[\"thin\",\"#4371c6\"],\"left\":[\"thin\",\"#4371c6\"],\"right\":[\"thin\",\"#4371c6\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#ffffff\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]}},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"],\"top\":[\"thin\",\"#d8d8d8\"],\"left\":[\"thin\",\"#d8d8d8\"],\"right\":[\"thin\",\"#d8d8d8\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#ffffff\",\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#ffffff\",\"bgcolor\":\"#5b9cd6\",\"font\":{\"name\":\"宋体\"},\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]}}],\"validations\":[],\"cols\":{\"0\":{\"width\":31},\"1\":{\"width\":102},\"2\":{\"width\":170},\"3\":{\"width\":147},\"4\":{\"width\":66},\"5\":{\"width\":66},\"6\":{\"width\":84},\"7\":{\"width\":88},\"8\":{\"width\":121},\"len\":26},\"merges\":[\"B1:H1\"]}', '', 'https://static.jeecg.com/designreport/images/xiaoshou_1607310086160.png', 'admin', '2021-01-19 10:46:18', 'admin', '2021-02-02 19:01:02', 1, NULL, NULL, 0, 2096, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('7c02c224a2db56d0350069650033f702', '895666', '核查评估表', '', NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":{\"sri\":5,\"sci\":18,\"eri\":5,\"eci\":18,\"width\":53,\"height\":46},\"printElWidth\":1399,\"excel_config_id\":\"7c02c224a2db56d0350069650033f702\",\"printElHeight\":790,\"rows\":{\"0\":{\"cells\":{\"1\":{\"text\":\"XX县(市、区)YY低保第三方核查评估汇总表\",\"merge\":[0,21],\"style\":386},\"2\":{\"style\":386},\"3\":{\"style\":386},\"4\":{\"style\":386},\"5\":{\"style\":386},\"6\":{\"style\":386},\"7\":{\"style\":386},\"8\":{\"style\":386},\"9\":{\"style\":386},\"10\":{\"style\":386},\"11\":{\"style\":386},\"12\":{\"style\":386},\"13\":{\"style\":386},\"14\":{\"style\":386},\"15\":{\"style\":386},\"16\":{\"style\":386},\"17\":{\"style\":386},\"18\":{\"style\":386},\"19\":{\"style\":386},\"20\":{\"style\":386},\"21\":{\"style\":386},\"22\":{\"style\":386}},\"height\":70},\"1\":{\"cells\":{\"1\":{\"merge\":[0,2],\"style\":403,\"text\":\" 北京市林翠社区\"},\"2\":{\"style\":398,\"text\":\" \"},\"3\":{\"style\":398,\"text\":\" \"},\"4\":{\"merge\":[0,2],\"text\":\"镇(乡、街道办事处)\",\"style\":399},\"5\":{\"style\":399},\"6\":{\"style\":399},\"7\":{\"style\":399,\"merge\":[0,7]},\"8\":{\"style\":400},\"9\":{\"style\":400},\"10\":{\"style\":400},\"11\":{\"style\":400},\"12\":{\"style\":400},\"13\":{\"style\":400},\"14\":{\"style\":400},\"15\":{\"merge\":[0,7],\"text\":\"单位:人、元、套、平方米\",\"style\":398},\"16\":{\"style\":401},\"17\":{\"style\":401},\"18\":{\"style\":401},\"19\":{\"style\":401},\"20\":{\"style\":401},\"21\":{\"style\":401},\"22\":{\"style\":401}}},\"2\":{\"cells\":{\"1\":{\"style\":114},\"2\":{\"style\":114},\"3\":{\"style\":114},\"4\":{\"style\":114},\"5\":{\"style\":114},\"6\":{\"style\":114},\"7\":{\"style\":114},\"8\":{\"style\":114},\"9\":{\"style\":114},\"10\":{\"style\":114},\"11\":{\"style\":114},\"12\":{\"style\":114},\"13\":{\"style\":114},\"14\":{\"style\":114},\"15\":{\"style\":114},\"16\":{\"style\":114},\"17\":{\"style\":114},\"18\":{\"style\":114},\"19\":{\"style\":114},\"20\":{\"style\":114},\"21\":{\"style\":114},\"22\":{\"style\":114}},\"height\":14},\"3\":{\"cells\":{\"1\":{\"style\":406,\"text\":\"村(社区)名称\",\"merge\":[1,0]},\"2\":{\"style\":407,\"text\":\"户主名称\",\"merge\":[1,0]},\"3\":{\"style\":407,\"text\":\"保障编号\",\"merge\":[1,0]},\"4\":{\"style\":408,\"text\":\"家庭人口\",\"merge\":[1,0]},\"5\":{\"style\":409,\"text\":\"家庭住址\",\"merge\":[1,0]},\"6\":{\"style\":409,\"text\":\"联系电话\",\"merge\":[1,0]},\"7\":{\"style\":408,\"text\":\"身份证号码\",\"merge\":[1,0]},\"8\":{\"style\":409,\"text\":\"原保障\",\"merge\":[0,2]},\"9\":{\"style\":377,\"text\":\" \"},\"10\":{\"style\":377,\"text\":\" \"},\"11\":{\"text\":\"核减后月人均收入\",\"style\":408,\"merge\":[1,0]},\"12\":{\"merge\":[0,5],\"text\":\"保障建议\",\"style\":410},\"13\":{\"style\":379,\"text\":\" \"},\"14\":{\"style\":379,\"text\":\" \"},\"15\":{\"style\":379,\"text\":\" \"},\"16\":{\"style\":379,\"text\":\" \"},\"17\":{\"style\":379,\"text\":\" \"},\"18\":{\"text\":\"是否新增对象\",\"style\":411,\"merge\":[1,0]},\"19\":{\"text\":\"建议取消原因\",\"style\":409,\"merge\":[0,3]},\"20\":{\"style\":377,\"text\":\" \"},\"21\":{\"style\":377,\"text\":\" \"},\"22\":{\"style\":377,\"text\":\" \"}}},\"4\":{\"cells\":{\"1\":{\"style\":381,\"text\":\" \"},\"2\":{\"style\":407,\"text\":\" \"},\"3\":{\"style\":382,\"text\":\" \"},\"4\":{\"style\":408,\"text\":\" \"},\"5\":{\"style\":377,\"text\":\" \"},\"6\":{\"style\":409,\"text\":\" \"},\"7\":{\"style\":383,\"text\":\" \"},\"8\":{\"text\":\"户数\",\"style\":412},\"9\":{\"style\":411,\"text\":\"人口\"},\"10\":{\"style\":413,\"text\":\"金额\"},\"11\":{\"style\":383,\"text\":\" \"},\"12\":{\"text\":\"保障类型\",\"style\":408},\"13\":{\"style\":413,\"text\":\"人口\"},\"14\":{\"style\":408,\"text\":\"差额补助\"},\"15\":{\"style\":408,\"text\":\"全额补助\"},\"16\":{\"style\":408,\"text\":\"增发补助\"},\"17\":{\"style\":408,\"text\":\"合计补助\"},\"18\":{\"style\":411,\"text\":\" \"},\"19\":{\"style\":408,\"text\":\"收入超标\"},\"20\":{\"style\":406,\"text\":\"机动车超标\"},\"21\":{\"style\":410,\"text\":\"死亡\"},\"22\":{\"style\":410,\"text\":\"其他\"}},\"height\":50},\"5\":{\"cells\":{\"1\":{\"text\":\"#{hecha.name}\",\"style\":414,\"rendered\":\"\"},\"2\":{\"text\":\"#{hecha.hname}\",\"style\":414},\"3\":{\"text\":\"#{hecha.num}\",\"style\":414},\"4\":{\"text\":\"#{hecha.knum}\",\"style\":414},\"5\":{\"text\":\"#{hecha.zhuzhi}\",\"style\":414},\"6\":{\"text\":\"#{hecha.phone}\",\"style\":414},\"7\":{\"text\":\"#{hecha.scard}\",\"style\":414},\"8\":{\"text\":\"#{hecha.yhnum}\",\"style\":414},\"9\":{\"text\":\"#{hecha.yren}\",\"style\":414},\"10\":{\"text\":\"#{hecha.yjine}\",\"style\":414},\"11\":{\"text\":\"#{hecha.yjine}\",\"style\":414},\"12\":{\"text\":\"#{hecha.type}\",\"style\":414},\"13\":{\"text\":\"#{hecha.rk}\",\"style\":414},\"14\":{\"text\":\"#{hecha.cbz}\",\"style\":414},\"15\":{\"text\":\"#{hecha.cbz}\",\"style\":414},\"16\":{\"text\":\"#{hecha.cbz}\",\"style\":414},\"17\":{\"text\":\"#{hecha.cbz}\",\"style\":414},\"18\":{\"text\":\"#{hecha.sf1}\",\"style\":414},\"19\":{\"text\":\"#{hecha.sf2}\",\"style\":414},\"20\":{\"text\":\"#{hecha.sf3}\",\"style\":414},\"21\":{\"text\":\"#{hecha.sf4}\",\"style\":414},\"22\":{\"text\":\"#{hecha.bz}\",\"style\":414}},\"isDrag\":true,\"height\":46},\"6\":{\"cells\":{\"1\":{\"style\":114},\"2\":{\"style\":114},\"3\":{\"style\":114},\"4\":{\"style\":114},\"5\":{\"style\":114},\"6\":{\"style\":114},\"7\":{\"style\":114},\"8\":{\"style\":114},\"9\":{\"style\":114},\"10\":{\"style\":114},\"11\":{\"style\":114},\"12\":{\"style\":114},\"13\":{\"style\":114},\"14\":{\"style\":114},\"15\":{\"style\":114},\"16\":{\"style\":114},\"17\":{\"style\":114},\"18\":{\"style\":114},\"19\":{\"style\":114},\"20\":{\"style\":114},\"21\":{\"style\":114},\"22\":{\"style\":114}},\"height\":46},\"7\":{\"cells\":{\"1\":{\"style\":114},\"2\":{\"style\":114},\"3\":{\"style\":114},\"4\":{\"style\":114},\"5\":{\"style\":114},\"6\":{\"style\":114},\"7\":{\"style\":114},\"8\":{\"style\":114},\"9\":{\"style\":114},\"10\":{\"style\":114},\"11\":{\"style\":114},\"12\":{\"style\":114},\"13\":{\"style\":114},\"14\":{\"style\":114},\"15\":{\"style\":114},\"16\":{\"style\":114},\"17\":{\"style\":114},\"18\":{\"style\":114},\"19\":{\"style\":114},\"20\":{\"style\":114},\"21\":{\"style\":114},\"22\":{\"style\":114}},\"height\":46},\"8\":{\"cells\":{\"1\":{\"text\":\"\"},\"2\":{\"style\":114},\"3\":{\"style\":114},\"4\":{\"style\":114},\"5\":{\"style\":114},\"6\":{\"style\":114},\"7\":{\"style\":114},\"8\":{\"style\":114},\"9\":{\"style\":114},\"10\":{\"style\":114},\"11\":{\"style\":114},\"12\":{\"style\":114},\"13\":{\"style\":114},\"14\":{\"style\":114},\"15\":{\"style\":114},\"16\":{\"style\":114},\"17\":{\"style\":114},\"18\":{\"style\":114},\"19\":{\"style\":114},\"20\":{\"style\":114},\"21\":{\"style\":114},\"22\":{\"style\":114}},\"isDrag\":true},\"len\":102},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":1378,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true},{\"textwrap\":true},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":false},{\"textwrap\":false},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\"},{\"textwrap\":true,\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"valign\":\"middle\"},{\"textwrap\":true,\"valign\":\"middle\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":false,\"valign\":\"middle\"},{\"textwrap\":false,\"valign\":\"middle\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"valign\":\"bottom\"},{\"textwrap\":true,\"valign\":\"bottom\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"valign\":\"top\"},{\"border\":{\"bottom\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":18}},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true,\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"}},{\"font\":{\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"font\":{\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"font\":{\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Helvetica\"}},{\"align\":\"center\",\"font\":{\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Helvetica\"}},{\"textwrap\":true,\"font\":{\"name\":\"Helvetica\"}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Helvetica\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Helvetica\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Helvetica\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Helvetica\"}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true,\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"align\":\"center\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"textwrap\":true,\"font\":{\"name\":\"Source Sans Pro\"}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true,\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Comic Sans MS\"}},{\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"align\":\"center\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"textwrap\":true,\"font\":{\"name\":\"Comic Sans MS\"}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true,\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Courier New\"}},{\"align\":\"center\",\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Courier New\"}},{\"textwrap\":true,\"font\":{\"name\":\"Courier New\"}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Courier New\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Courier New\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Courier New\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Courier New\"}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true,\"name\":\"Verdana\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Verdana\"}},{\"font\":{\"name\":\"Verdana\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"font\":{\"name\":\"Verdana\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Verdana\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"font\":{\"name\":\"Verdana\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Verdana\"}},{\"align\":\"center\",\"font\":{\"name\":\"Verdana\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Verdana\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Verdana\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Verdana\"}},{\"textwrap\":true,\"font\":{\"name\":\"Verdana\"}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Verdana\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Verdana\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Verdana\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Verdana\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Verdana\"}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true,\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"}},{\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\"}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\"}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"textwrap\":true,\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"align\":\"center\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"textwrap\":true,\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"align\":\"center\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"align\":\"center\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"}},{\"align\":\"center\",\"valign\":\"middle\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"valign\":\"middle\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":false,\"font\":{\"name\":\"Lato\"}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"font\":{\"name\":\"Lato\"},\"valign\":\"middle\"},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true,\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"textwrap\":true,\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\"},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"top\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]},\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"valign\":\"middle\"},{\"align\":\"center\",\"border\":{\"right\":[\"thin\",\"#ffffff\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]}},{\"align\":\"center\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]}},{\"border\":{\"bottom\":[\"thin\",\"#ffffff\"],\"top\":[\"thin\",\"#ffffff\"],\"left\":[\"thin\",\"#ffffff\"],\"right\":[\"thin\",\"#ffffff\"]}},{\"align\":\"center\",\"valign\":\"middle\",\"border\":{\"right\":[\"thin\",\"#ffffff\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"border\":{\"right\":[\"thin\",\"#ffffff\"]}},{\"border\":{\"right\":[\"thin\",\"#ffffff\"]}},{\"align\":\"center\",\"valign\":\"middle\",\"border\":{\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"border\":{\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"border\":{\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"valign\":\"middle\",\"border\":{\"left\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"Lato\"},\"border\":{\"top\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"font\":{\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"]}},{\"font\":{\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"]}},{\"font\":{\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#000100\"]},\"align\":\"right\"},{\"font\":{\"name\":\"Lato\"},\"align\":\"right\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"valign\":\"middle\"},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#5b9cd6\",\"color\":\"#ffffff\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"align\":\"center\"},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\"},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#ffffff\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\"},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#000100\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\"},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#f4b184\",\"color\":\"#262626\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\"},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#9cc2e6\",\"color\":\"#262626\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\"},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#262626\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\"},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#00b04e\",\"color\":\"#ffffff\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]},\"align\":\"center\"},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\"},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#a7d08c\",\"color\":\"#ffffff\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\"},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":8},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]},\"align\":\"center\",\"font\":{\"size\":8}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\"},{\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#71ae47\",\"color\":\"#ffffff\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\"},{\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\"},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#00b04e\"],\"top\":[\"thin\",\"#00b04e\"],\"left\":[\"thin\",\"#00b04e\"],\"right\":[\"thin\",\"#00b04e\"]}},{\"align\":\"center\",\"font\":{\"size\":15,\"bold\":true,\"name\":\"Lato\"}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#000100\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":9}},{\"font\":{\"name\":\"Lato\",\"size\":9}},{\"font\":{\"size\":9}},{\"align\":\"center\",\"font\":{\"size\":9}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#000100\"]},\"color\":\"#a5a5a5\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":9},\"color\":\"#a5a5a5\"},{\"font\":{\"name\":\"Lato\",\"size\":9},\"color\":\"#a5a5a5\"},{\"font\":{\"size\":9},\"color\":\"#a5a5a5\"},{\"align\":\"center\",\"font\":{\"size\":9},\"color\":\"#a5a5a5\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#000100\"]},\"color\":\"#7f7f7f\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":9},\"color\":\"#7f7f7f\"},{\"font\":{\"name\":\"Lato\",\"size\":9},\"color\":\"#7f7f7f\"},{\"font\":{\"size\":9},\"color\":\"#7f7f7f\"},{\"align\":\"center\",\"font\":{\"size\":9},\"color\":\"#7f7f7f\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]},\"color\":\"#7f7f7f\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":9},\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"]},\"color\":\"#7f7f7f\"},{\"border\":{\"bottom\":[\"thin\",\"#d8d8d8\"]},\"align\":\"center\",\"font\":{\"size\":8}},{\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"]},\"align\":\"center\",\"font\":{\"size\":8}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"textwrap\":true,\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"align\":\"center\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"textwrap\":true,\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"textwrap\":true,\"valign\":\"bottom\",\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"textwrap\":true,\"font\":{\"name\":\"Lato\",\"size\":10},\"bgcolor\":\"#02a274\",\"color\":\"#ffffff\",\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]}},{\"border\":{\"bottom\":[\"thin\",\"#a5a5a5\"],\"top\":[\"thin\",\"#a5a5a5\"],\"left\":[\"thin\",\"#a5a5a5\"],\"right\":[\"thin\",\"#a5a5a5\"]},\"align\":\"center\",\"font\":{\"size\":8}}],\"validations\":[],\"cols\":{\"0\":{\"width\":30},\"1\":{\"width\":68},\"2\":{\"width\":86},\"3\":{\"width\":93},\"4\":{\"width\":91},\"5\":{\"width\":156},\"6\":{\"width\":95},\"7\":{\"width\":85},\"8\":{\"width\":37},\"9\":{\"width\":30},\"10\":{\"width\":43},\"11\":{\"width\":66},\"12\":{\"width\":38},\"13\":{\"width\":41},\"14\":{\"width\":54},\"15\":{\"width\":49},\"16\":{\"width\":45},\"17\":{\"width\":49},\"18\":{\"width\":53},\"19\":{\"width\":40},\"20\":{\"width\":50},\"21\":{\"width\":40},\"22\":{\"width\":39},\"len\":50},\"merges\":[\"M4:R4\",\"B4:B5\",\"C4:C5\",\"D4:D5\",\"E4:E5\",\"F4:F5\",\"G4:G5\",\"H4:H5\",\"I4:K4\",\"L4:L5\",\"S4:S5\",\"T4:W4\",\"E2:G2\",\"B2:D2\",\"B1:W1\",\"P2:W2\",\"H2:O2\"]}', '', 'https://static.jeecg.com/designreport/images/QQ截图20201207113312_1607312171402.png', 'jeecg', '2020-07-14 16:41:42', 'admin', '2021-02-03 14:01:17', 0, NULL, NULL, 1, 260, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('94b04a1ed7c17f8e96baa6d89fb90758', '3698522', '员工请假单', '', NULL, 'printinfo', '{\"area\":false,\"printElWidth\":794,\"excel_config_id\":\"94b04a1ed7c17f8e96baa6d89fb90758\",\"printElHeight\":1047,\"rows\":{\"1\":{\"cells\":{\"0\":{\"text\":\"员工请假单\",\"style\":100,\"merge\":[0,7]},\"1\":{\"style\":100},\"2\":{\"style\":100},\"3\":{\"style\":100},\"4\":{\"style\":100},\"5\":{\"style\":100},\"6\":{\"style\":100},\"7\":{\"style\":100}},\"height\":65},\"2\":{\"cells\":{\"0\":{\"text\":\"单位:北极星\",\"style\":101,\"merge\":[0,2]},\"1\":{\"style\":101},\"2\":{\"style\":101},\"3\":{\"style\":102},\"4\":{\"style\":102},\"5\":{\"style\":102},\"6\":{\"style\":102},\"7\":{\"style\":102}},\"height\":38},\"3\":{\"cells\":{\"0\":{\"text\":\"姓名\",\"style\":119},\"1\":{\"style\":119,\"text\":\" \"},\"2\":{\"text\":\"工作岗位\",\"style\":120},\"3\":{\"style\":119,\"text\":\" \"},\"4\":{\"text\":\"工作时间\",\"style\":119},\"5\":{\"style\":119,\"text\":\" \"},\"6\":{\"text\":\"出生日期\",\"style\":119},\"7\":{\"style\":119,\"text\":\" \"}}},\"4\":{\"cells\":{\"0\":{\"text\":\"请选择假类型\",\"style\":121,\"merge\":[4,0]},\"1\":{\"text\":\"年休假\",\"style\":120},\"2\":{\"style\":120,\"text\":\"病、事假\"},\"3\":{\"style\":120,\"text\":\"探亲假\"},\"4\":{\"style\":119,\"merge\":[0,1],\"text\":\"婚、丧假\"},\"5\":{\"style\":107,\"text\":\" \"},\"6\":{\"style\":119,\"merge\":[0,1],\"text\":\"生育假\"},\"7\":{\"style\":107,\"text\":\" \"}},\"height\":29},\"5\":{\"cells\":{\"0\":{\"style\":0},\"1\":{\"text\":\"1、公岭满1~9年(5天)\",\"style\":122},\"2\":{\"style\":119,\"text\":\"1、病假\"},\"3\":{\"style\":119,\"text\":\"1、未婚探父母(20天)\"},\"4\":{\"style\":119,\"merge\":[0,1],\"text\":\"1、婚假(3天)\"},\"5\":{\"style\":107,\"text\":\" \"},\"6\":{\"style\":119,\"merge\":[0,1],\"text\":\"1、流产\"},\"7\":{\"style\":107,\"text\":\" \"}},\"height\":25},\"6\":{\"cells\":{\"0\":{\"style\":0},\"1\":{\"style\":123,\"text\":\"2、公岭满10~19年(10天)\"},\"2\":{\"style\":119,\"text\":\"2、事假\"},\"3\":{\"style\":119,\"text\":\"2、已婚探父母(20天)\"},\"4\":{\"style\":119,\"merge\":[0,1],\"text\":\"2、晚婚假(13天)\"},\"5\":{\"style\":107,\"text\":\" \"},\"6\":{\"style\":119,\"merge\":[0,1],\"text\":\"2、产假\"},\"7\":{\"style\":107,\"text\":\" \"}}},\"7\":{\"cells\":{\"0\":{\"style\":0},\"1\":{\"style\":123,\"text\":\"3、公岭满20年(15天)\"},\"2\":{\"style\":119,\"text\":\" \"},\"3\":{\"style\":119,\"text\":\"3、探配偶(30天)\"},\"4\":{\"style\":119,\"merge\":[0,1],\"text\":\"3、丧假(3天)\"},\"5\":{\"style\":107,\"text\":\" \"},\"6\":{\"style\":119,\"merge\":[0,1],\"text\":\"3、哺乳假\"},\"7\":{\"style\":107,\"text\":\" \"}}},\"8\":{\"cells\":{\"0\":{\"style\":0},\"1\":{\"style\":119,\"text\":\" \"},\"2\":{\"style\":119,\"text\":\" \"},\"3\":{\"style\":119,\"text\":\"探亲地点:\",\"merge\":[0,2]},\"4\":{\"style\":107,\"text\":\" \"},\"5\":{\"style\":107,\"text\":\" \"},\"6\":{\"style\":119,\"merge\":[0,1],\"text\":\"4、陪护假\"},\"7\":{\"style\":107,\"text\":\" \"},\"8\":{\"style\":15},\"9\":{\"style\":15},\"10\":{\"style\":15},\"11\":{\"style\":15},\"12\":{\"style\":15},\"13\":{\"style\":15},\"14\":{\"style\":15},\"15\":{\"style\":15},\"16\":{\"style\":15},\"17\":{\"style\":15},\"18\":{\"style\":15},\"19\":{\"style\":15},\"20\":{\"style\":15},\"21\":{\"style\":15},\"22\":{\"style\":15},\"23\":{\"style\":5},\"24\":{\"style\":5},\"25\":{\"style\":5}}},\"9\":{\"cells\":{\"0\":{\"style\":124,\"text\":\"请假时间\"},\"1\":{\"style\":125,\"merge\":[0,6],\"text\":\"2020年02-30 至2020年02-03-30\"},\"2\":{\"style\":115,\"text\":\" \"},\"3\":{\"style\":115,\"text\":\" \"},\"4\":{\"style\":115,\"text\":\" \"},\"5\":{\"style\":115,\"text\":\" \"},\"6\":{\"style\":115,\"text\":\" \"},\"7\":{\"style\":115,\"text\":\" \"}},\"height\":46},\"10\":{\"cells\":{\"0\":{\"style\":126,\"text\":\"审批人员及意见\"},\"1\":{\"merge\":[0,6],\"style\":127,\"text\":\"同意\"},\"2\":{\"style\":118,\"text\":\" \"},\"3\":{\"style\":118,\"text\":\" \"},\"4\":{\"style\":118,\"text\":\" \"},\"5\":{\"style\":118,\"text\":\" \"},\"6\":{\"style\":118,\"text\":\" \"},\"7\":{\"style\":118,\"text\":\" \"}},\"height\":89},\"11\":{\"cells\":{\"0\":{\"text\":\"备注\",\"style\":119},\"1\":{\"style\":119,\"text\":\" \"},\"2\":{\"text\":\"请假人签名\",\"style\":119},\"3\":{\"merge\":[0,4],\"style\":119,\"text\":\" \"},\"4\":{\"style\":107,\"text\":\" \"},\"5\":{\"style\":107,\"text\":\" \"},\"6\":{\"style\":107,\"text\":\" \"},\"7\":{\"style\":107,\"text\":\" \"}},\"height\":90},\"12\":{\"cells\":{\"0\":{\"merge\":[0,7],\"style\":120,\"text\":\"请假审批表一式两份,考勤员与人力资源部门各存一份\"},\"1\":{\"style\":106,\"text\":\" \"},\"2\":{\"style\":106,\"text\":\" \"},\"3\":{\"style\":106,\"text\":\" \"},\"4\":{\"style\":106,\"text\":\" \"},\"5\":{\"style\":106,\"text\":\" \"},\"6\":{\"style\":106,\"text\":\" \"},\"7\":{\"style\":106,\"text\":\" \"}},\"height\":25},\"len\":101},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":789,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"textwrap\":true},{\"textwrap\":false},{\"textwrap\":true,\"valign\":\"middle\"},{\"textwrap\":false,\"valign\":\"middle\"},{\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":false,\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":false,\"valign\":\"middle\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":false,\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"left\"},{},{\"font\":{\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"}},{\"align\":\"center\",\"font\":{\"name\":\"Helvetica\"}},{\"textwrap\":false,\"valign\":\"middle\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"}},{\"textwrap\":false,\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"}},{\"font\":{\"name\":\"Arial\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"align\":\"center\",\"font\":{\"name\":\"Arial\"}},{\"textwrap\":false,\"valign\":\"middle\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"textwrap\":false,\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"align\":\"center\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"textwrap\":false,\"valign\":\"middle\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"textwrap\":false,\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"align\":\"center\",\"font\":{\"name\":\"Courier New\"}},{\"textwrap\":false,\"valign\":\"middle\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"textwrap\":false,\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"font\":{\"name\":\"Courier New\"},\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"Courier New\"},\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"textwrap\":true,\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"textwrap\":true,\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"align\":\"center\"},{\"font\":{\"name\":\"Courier New\"},\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"name\":\"Courier New\",\"size\":14}},{\"align\":\"center\",\"font\":{\"size\":14}},{\"align\":\"center\",\"font\":{\"name\":\"Courier New\",\"size\":14,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true}},{\"font\":{\"name\":\"Courier New\"},\"color\":\"#7f7f7f\"},{\"color\":\"#7f7f7f\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"textwrap\":true,\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Courier New\"},\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"textwrap\":false,\"valign\":\"middle\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"textwrap\":false,\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"align\":\"center\",\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\"},{\"align\":\"center\",\"color\":\"#000100\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\"},{\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"textwrap\":true,\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Lato\"},\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"textwrap\":false,\"valign\":\"middle\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"textwrap\":false,\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"align\":\"center\",\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\",\"font\":{\"name\":\"Lato\"}},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\",\"font\":{\"name\":\"Lato\"},\"valign\":\"middle\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\",\"font\":{\"name\":\"Lato\"},\"valign\":\"bottom\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\",\"font\":{\"name\":\"Lato\"},\"valign\":\"top\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"valign\":\"top\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"valign\":\"top\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"valign\":\"middle\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"valign\":\"middle\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"valign\":\"bottom\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"valign\":\"bottom\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"textwrap\":true},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"textwrap\":true},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"textwrap\":false},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"textwrap\":false},{\"textwrap\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\",\"font\":{\"name\":\"Lato\"}},{\"align\":\"center\",\"font\":{\"name\":\"宋体\",\"size\":14,\"bold\":true}},{\"font\":{\"name\":\"宋体\"},\"color\":\"#7f7f7f\"},{\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"textwrap\":true,\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"宋体\"},\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"textwrap\":false,\"valign\":\"middle\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"textwrap\":false,\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"align\":\"center\",\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\",\"font\":{\"name\":\"宋体\"},\"valign\":\"top\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\",\"valign\":\"top\"},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\",\"valign\":\"top\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\",\"font\":{\"name\":\"宋体\"},\"valign\":\"bottom\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\",\"textwrap\":false},{\"align\":\"center\",\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\",\"textwrap\":false},{\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"name\":\"宋体\"},\"align\":\"center\",\"color\":\"#000100\"},{\"textwrap\":false,\"valign\":\"middle\",\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"textwrap\":false,\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"color\":\"#000100\",\"font\":{\"name\":\"宋体\"},\"valign\":\"top\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\",\"valign\":\"top\"},{\"textwrap\":true,\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"color\":\"#000100\",\"font\":{\"name\":\"宋体\"},\"valign\":\"bottom\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#262626\"],\"top\":[\"thin\",\"#262626\"],\"left\":[\"thin\",\"#262626\"],\"right\":[\"thin\",\"#262626\"]},\"font\":{\"name\":\"宋体\"},\"color\":\"#000100\",\"textwrap\":false}],\"validations\":[],\"cols\":{\"0\":{\"width\":35},\"1\":{\"width\":195},\"2\":{\"width\":77},\"3\":{\"width\":168},\"4\":{\"width\":62},\"6\":{\"width\":70},\"7\":{\"width\":82},\"len\":26},\"merges\":[\"D9:F9\",\"E5:F5\",\"E6:F6\",\"E7:F7\",\"E8:F8\",\"G5:H5\",\"G6:H6\",\"G7:H7\",\"G8:H8\",\"G9:H9\",\"B10:H10\",\"B11:H11\",\"D12:H12\",\"A13:H13\",\"A3:C3\",\"A2:H2\",\"A5:A9\"]}', '', 'https://static.jeecg.com/designreport/images/QQ截图20201207135257_1607320433681.png', 'jeecg', '2020-07-10 18:29:39', 'admin', '2021-02-03 14:01:12', 0, NULL, NULL, 1, 142, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('961455b47c0b86dc961e90b5893bff05', '56780774', '阜阳检票数查询副本0774', '', NULL, 'printinfo', '{\"area\":{\"sri\":8,\"sci\":6,\"eri\":8,\"eci\":6,\"width\":75,\"height\":25},\"printElWidth\":794,\"excel_config_id\":\"53c82a76f837d5661dceec7d93afafec\",\"printElHeight\":1047,\"rows\":{\"0\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"text\":\"\",\"style\":66},\"2\":{\"style\":66},\"3\":{\"style\":67,\"merge\":[0,3],\"text\":\"阜阳火车站检票数\"},\"4\":{\"style\":67},\"5\":{\"style\":67},\"6\":{\"style\":67},\"7\":{\"style\":66},\"8\":{\"style\":66},\"9\":{\"style\":58}},\"height\":63},\"1\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"style\":66},\"2\":{\"style\":66},\"3\":{\"style\":66},\"4\":{\"style\":66},\"5\":{\"style\":66},\"6\":{\"style\":66},\"7\":{\"style\":66},\"8\":{\"style\":66},\"9\":{\"style\":58}},\"height\":20},\"2\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"text\":\"日期:\",\"style\":68},\"2\":{\"text\":\"${gongsi.tdata}\",\"style\":69},\"3\":{\"style\":66},\"4\":{\"style\":66,\"text\":\"制表人:\"},\"5\":{\"text\":\"${gongsi.gname}\",\"style\":66},\"6\":{\"style\":66},\"7\":{\"text\":\"\",\"merge\":[0,1],\"style\":70},\"8\":{\"style\":70},\"9\":{\"style\":58}},\"isDrag\":true},\"3\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"text\":\"班次\",\"merge\":[1,0],\"style\":71},\"2\":{\"text\":\"发车时间\",\"merge\":[1,0],\"style\":71},\"3\":{\"text\":\"是否放空\",\"merge\":[1,0],\"style\":71},\"4\":{\"text\":\"路线\",\"merge\":[0,1],\"style\":71},\"5\":{\"style\":72},\"6\":{\"text\":\"核载座位数\",\"merge\":[1,0],\"style\":71},\"7\":{\"merge\":[1,0],\"style\":71,\"text\":\"检票数\"},\"8\":{\"merge\":[1,0],\"style\":71,\"text\":\"实载率(%)\"},\"9\":{\"style\":58}}},\"4\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"style\":72},\"2\":{\"style\":71},\"3\":{\"style\":72},\"4\":{\"text\":\"从\",\"style\":71},\"5\":{\"text\":\"到\",\"style\":71},\"6\":{\"style\":72},\"7\":{\"style\":71},\"8\":{\"style\":72},\"9\":{\"style\":58}},\"height\":25},\"5\":{\"cells\":{\"0\":{\"style\":58},\"1\":{\"style\":73,\"text\":\"#{jianpiao.bnum}\"},\"2\":{\"style\":73,\"text\":\"#{jianpiao.ftime}\"},\"3\":{\"style\":73,\"text\":\"#{jianpiao.sfkong}\"},\"4\":{\"style\":73,\"text\":\"#{jianpiao.kaishi}\"},\"5\":{\"style\":73,\"text\":\"#{jianpiao.jieshu}\"},\"6\":{\"style\":73,\"text\":\"#{jianpiao.hezairen}\"},\"7\":{\"style\":73,\"text\":\"#{jianpiao.jpnum}\"},\"8\":{\"style\":73,\"text\":\"#{jianpiao.shihelv}\"},\"9\":{\"style\":58}},\"height\":33},\"6\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}},\"isDrag\":true},\"7\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11,\"text\":\"\"},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"8\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"9\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"10\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"11\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"12\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"13\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"14\":{\"cells\":{\"1\":{\"style\":11},\"2\":{\"style\":11},\"3\":{\"style\":11},\"4\":{\"style\":11},\"5\":{\"style\":11},\"6\":{\"style\":11},\"7\":{\"style\":11},\"8\":{\"style\":11}}},\"len\":96,\"-1\":{\"cells\":{\"-1\":{\"text\":\"${gongsi.id}\"}},\"isDrag\":true}},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":737,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"],\"top\":[\"thin\",\"#7f7f7f\"],\"left\":[\"thin\",\"#7f7f7f\"],\"right\":[\"thin\",\"#7f7f7f\"]}},{\"border\":{\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"]}},{\"border\":{\"top\":[\"thin\",\"#000100\"]}},{\"border\":{\"top\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"left\":[\"thin\",\"#000100\"]}},{\"border\":{\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"top\":[\"thin\",\"#7f7f7f\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]}},{\"border\":{\"right\":[\"thin\",\"#7f7f7f\"],\"bottom\":[\"thin\",\"#7f7f7f\"]}},{\"border\":{\"bottom\":[\"thin\",\"#7f7f7f\"]}},{\"border\":{\"right\":[\"thin\",\"#7f7f7f\"]}},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"font\":{\"bold\":true}},{\"font\":{\"bold\":false}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":true}},{\"align\":\"center\",\"font\":{\"bold\":true}},{\"align\":\"right\"},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":true},\"bgcolor\":\"#4371c6\"},{\"align\":\"center\",\"font\":{\"bold\":true},\"bgcolor\":\"#4371c6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#4371c6\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#4371c6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#2e75b5\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#2e75b5\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#0170c1\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#0170c1\"},{\"font\":{\"bold\":false},\"color\":\"#7f7f7f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000100\"],\"top\":[\"thin\",\"#000100\"],\"left\":[\"thin\",\"#000100\"],\"right\":[\"thin\",\"#000100\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#01b0f1\"},{\"align\":\"center\",\"font\":{\"bold\":false},\"bgcolor\":\"#01b0f1\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#5b9cd6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"bold\":false},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true},\"valign\":\"bottom\"},{\"align\":\"center\",\"font\":{\"size\":22,\"bold\":true},\"valign\":\"bottom\"},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true},\"valign\":\"bottom\"},{\"font\":{\"bold\":false},\"color\":\"#7f7f7f\",\"align\":\"right\"},{\"color\":\"#7f7f7f\"},{\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true,\"name\":\"宋体\"},\"valign\":\"bottom\"},{\"font\":{\"bold\":false,\"name\":\"宋体\"},\"color\":\"#7f7f7f\",\"align\":\"right\"},{\"color\":\"#7f7f7f\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"right\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"bold\":false,\"name\":\"宋体\"},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"font\":{\"bold\":false,\"name\":\"宋体\"},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"name\":\"宋体\"}},{\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true,\"name\":\"Microsoft YaHei\"},\"valign\":\"bottom\"},{\"font\":{\"bold\":false,\"name\":\"Microsoft YaHei\"},\"color\":\"#7f7f7f\",\"align\":\"right\"},{\"color\":\"#7f7f7f\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"right\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"bold\":false,\"name\":\"Microsoft YaHei\"},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"font\":{\"bold\":false,\"name\":\"Microsoft YaHei\"},\"bgcolor\":\"#9cc2e6\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"font\":{\"name\":\"Microsoft YaHei\"}}],\"validations\":[],\"cols\":{\"0\":{\"width\":53},\"1\":{\"width\":118},\"2\":{\"width\":75},\"3\":{\"width\":54},\"4\":{\"width\":95},\"5\":{\"width\":109},\"6\":{\"width\":75},\"7\":{\"width\":75},\"8\":{\"width\":83},\"9\":{\"width\":30},\"len\":27},\"merges\":[\"E4:F4\",\"B4:B5\",\"C4:C5\",\"D4:D5\",\"G4:G5\",\"H4:H5\",\"I4:I5\",\"D1:G1\",\"H3:I3\"]}', '', 'https://static.jeecg.com/designreport/images/25_1597233573577.png', 'admin', '2021-01-19 10:46:45', 'admin', '2021-02-03 13:58:22', 0, NULL, NULL, 0, 697, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('9dbadaee8720767efe3164a7d018c870', '45566', '发票打印', '', NULL, 'printinfo', '{\"area\":{\"sri\":8,\"sci\":4,\"eri\":8,\"eci\":4,\"width\":100,\"height\":25},\"printElWidth\":794,\"excel_config_id\":\"9dbadaee8720767efe3164a7d018c870\",\"printElHeight\":500,\"rows\":{\"0\":{\"cells\":{\"0\":{\"text\":\"\",\"virtual\":\"RTA6TUIKs1pmgVOM\"},\"1\":{\"text\":\" \",\"virtual\":\"RTA6TUIKs1pmgVOM\"},\"2\":{\"text\":\" \",\"virtual\":\"RTA6TUIKs1pmgVOM\"},\"3\":{\"text\":\" \",\"virtual\":\"RTA6TUIKs1pmgVOM\"},\"4\":{\"text\":\" \",\"virtual\":\"RTA6TUIKs1pmgVOM\"},\"5\":{\"text\":\" \",\"virtual\":\"RTA6TUIKs1pmgVOM\"},\"6\":{\"text\":\" \",\"virtual\":\"RTA6TUIKs1pmgVOM\"},\"7\":{\"text\":\" \",\"virtual\":\"RTA6TUIKs1pmgVOM\"},\"8\":{\"text\":\" \",\"virtual\":\"RTA6TUIKs1pmgVOM\"}}},\"2\":{\"cells\":{},\"height\":11},\"3\":{\"cells\":{\"2\":{\"text\":\"\"},\"5\":{\"text\":\"\"}},\"height\":18},\"4\":{\"cells\":{\"2\":{\"text\":\"182123434\",\"style\":0},\"5\":{\"text\":\"12345678\"}},\"height\":15},\"5\":{\"cells\":{\"2\":{\"text\":\"\"}}},\"7\":{\"cells\":{}},\"8\":{\"cells\":{\"1\":{\"text\":\"餐饮\"},\"2\":{\"text\":\" A11\"},\"3\":{\"text\":\" 333 3\"},\"4\":{\"text\":\" 3 4\"},\"5\":{\"text\":\" 1\"},\"6\":{\"text\":\"3333\"}}},\"9\":{\"cells\":{\"1\":{\"text\":\"测试\"},\"2\":{\"text\":\" mmm\"},\"3\":{\"text\":\" 33 5\"}}},\"10\":{\"cells\":{},\"height\":22},\"11\":{\"cells\":{\"2\":{\"text\":\" \"},\"3\":{\"text\":\"343434\"},\"6\":{\"text\":\"3434\"}},\"height\":45},\"12\":{\"cells\":{\"4\":{\"text\":\" 刮开中奖\"}},\"height\":12},\"13\":{\"cells\":{\"2\":{\"text\":\"\"},\"4\":{\"text\":\" \"},\"5\":{\"text\":\"备注\"}},\"height\":31},\"14\":{\"cells\":{\"1\":{\"text\":\" 张三\"},\"3\":{\"text\":\"完成\"},\"4\":{\"text\":\" 李思\"}},\"height\":41},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":847,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"font\":{\"size\":8}}],\"validations\":[],\"cols\":{\"0\":{\"width\":93},\"1\":{\"width\":74},\"2\":{\"width\":80},\"len\":26},\"merges\":[],\"imgList\":[{\"row\":0,\"col\":0,\"width\":\"832\",\"height\":\"480\",\"src\":\"https://static.jeecg.com/designreport/images/套打_1609313052910.png\",\"isBackend\":true,\"commonBackend\":true,\"layer_id\":\"RTA6TUIKs1pmgVOM\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[0,0],[0,1],[0,2],[0,3],[0,4],[0,5],[0,6],[0,7],[0,8]]}]}', '', 'https://static.jeecg.com/designreport/images/QQ截图20201207113651_1607312223499.png', 'jeecg', '2020-07-20 18:55:59', 'admin', '2021-02-03 13:38:49', 0, NULL, NULL, 0, 1125, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('a250846887abe01217aab173d3006489', '56663', '不动产打印', '', NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":false,\"excel_config_id\":\"a250846887abe01217aab173d3006489\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":true,\"marginX\":10,\"marginY\":10},\"rows\":{\"0\":{\"cells\":{\"0\":{\"text\":\" \",\"virtual\":\"BJ9o6oelCr85EpT2\"},\"1\":{\"text\":\" \",\"virtual\":\"BJ9o6oelCr85EpT2\"},\"2\":{\"text\":\" \",\"virtual\":\"BJ9o6oelCr85EpT2\"},\"3\":{\"text\":\" \",\"virtual\":\"BJ9o6oelCr85EpT2\"},\"4\":{\"text\":\" \",\"virtual\":\"BJ9o6oelCr85EpT2\"},\"5\":{\"text\":\" \",\"virtual\":\"BJ9o6oelCr85EpT2\"},\"6\":{\"text\":\" \",\"virtual\":\"BJ9o6oelCr85EpT2\"},\"7\":{\"text\":\" \",\"virtual\":\"BJ9o6oelCr85EpT2\"},\"8\":{\"text\":\" \",\"virtual\":\"BJ9o6oelCr85EpT2\"},\"9\":{\"text\":\" \",\"virtual\":\"BJ9o6oelCr85EpT2\"}},\"isDrag\":true,\"height\":45},\"1\":{\"cells\":{},\"height\":23},\"2\":{\"cells\":{\"0\":{\"text\":\"\",\"style\":0},\"1\":{\"text\":\" ${budong.yname}\",\"style\":21,\"merge\":[0,2]}},\"isDrag\":true,\"height\":34},\"3\":{\"cells\":{\"1\":{\"text\":\" ${budong.chanquan}\",\"style\":0,\"merge\":[0,2]},\"5\":{\"text\":\"${budong.beizhu}\",\"merge\":[5,3]}},\"isDrag\":true,\"height\":39},\"4\":{\"cells\":{\"1\":{\"text\":\" ${budong.zhuzhi}\",\"style\":39,\"merge\":[0,2]}},\"isDrag\":true,\"height\":33},\"5\":{\"cells\":{\"1\":{\"text\":\" ${budong.danyuan}\",\"style\":0,\"merge\":[0,2]}},\"isDrag\":true,\"height\":53},\"6\":{\"cells\":{\"1\":{\"text\":\" ${budong.type}\",\"style\":0,\"merge\":[0,2]}},\"isDrag\":true,\"height\":47},\"7\":{\"cells\":{\"1\":{\"text\":\" ${budong.xtype}\",\"style\":0,\"merge\":[0,2]}},\"isDrag\":true,\"height\":38},\"8\":{\"cells\":{\"1\":{\"text\":\" ${budong.suoyou}\",\"style\":0,\"merge\":[0,2]}},\"isDrag\":true,\"height\":31},\"9\":{\"cells\":{\"1\":{\"text\":\" ${budong.mianji}\",\"style\":0,\"merge\":[0,2]}},\"isDrag\":true,\"height\":45},\"10\":{\"cells\":{\"1\":{\"text\":\" ${budong.riqi}\",\"style\":0,\"merge\":[0,2]}},\"isDrag\":true,\"height\":26},\"11\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":0,\"merge\":[0,2]}},\"height\":35},\"12\":{\"cells\":{\"1\":{\"text\":\"\",\"style\":0},\"2\":{\"text\":\"${budong.chanquan}\",\"style\":0,\"merge\":[4,1]}},\"isDrag\":true},\"13\":{\"cells\":{}},\"14\":{\"cells\":{}},\"15\":{\"cells\":{}},\"16\":{\"cells\":{},\"height\":5},\"17\":{\"cells\":{\"2\":{\"text\":\"\",\"style\":0}},\"isDrag\":true,\"height\":33},\"18\":{\"cells\":{\"2\":{\"style\":0,\"text\":\"\"}}},\"len\":100,\"-1\":{\"cells\":{\"0\":{\"text\":\"#{budong.zhuzhi}\"},\"-1\":{\"text\":\"#{budong.suoyou}\"}},\"isDrag\":true}},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":1024,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"font\":{\"bold\":true}},{\"font\":{\"italic\":true}},{\"font\":{\"italic\":true,\"bold\":true}},{\"font\":{\"italic\":true,\"bold\":false}},{\"font\":{\"italic\":false,\"bold\":false}},{\"font\":{\"italic\":false,\"bold\":true}},{\"align\":\"left\"},{\"align\":\"center\"},{\"align\":\"right\"},{\"align\":\"left\",\"valign\":\"top\"},{\"align\":\"left\",\"valign\":\"top\",\"font\":{\"bold\":true}},{\"font\":{\"bold\":false}},{\"align\":\"left\",\"valign\":\"bottom\"},{\"valign\":\"bottom\"},{\"align\":\"center\",\"valign\":\"bottom\"},{\"textwrap\":true},{\"font\":{\"bold\":true},\"valign\":\"bottom\"},{\"font\":{\"italic\":false,\"bold\":true},\"valign\":\"top\"},{\"valign\":\"top\"},{\"textwrap\":true,\"font\":{\"bold\":true}},{\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"bold\":true}},{\"align\":\"left\",\"valign\":\"bottom\",\"font\":{\"bold\":true}},{\"align\":\"left\",\"valign\":\"bottom\",\"font\":{\"bold\":true,\"size\":8}},{\"font\":{\"bold\":true,\"size\":8},\"valign\":\"bottom\"},{\"align\":\"center\",\"valign\":\"bottom\",\"font\":{\"bold\":true,\"size\":8}},{\"align\":\"left\",\"valign\":\"middle\",\"font\":{\"bold\":true}},{\"align\":\"left\",\"valign\":\"middle\"},{\"font\":{\"italic\":false,\"bold\":true},\"valign\":\"bottom\"},{\"font\":{\"italic\":false,\"bold\":true},\"valign\":\"middle\"},{\"valign\":\"middle\"},{\"font\":{\"italic\":true,\"bold\":true},\"valign\":\"middle\"},{\"valign\":\"middle\",\"font\":{\"italic\":true}},{\"valign\":\"middle\",\"font\":{\"italic\":false}},{\"font\":{\"italic\":false,\"bold\":false},\"valign\":\"middle\"},{\"align\":\"center\",\"valign\":\"middle\",\"font\":{\"bold\":true,\"size\":8}},{\"font\":{\"bold\":true,\"size\":8},\"valign\":\"middle\"},{\"align\":\"left\",\"valign\":\"middle\",\"font\":{\"bold\":true,\"size\":8}},{\"align\":\"right\",\"valign\":\"middle\",\"font\":{\"bold\":true,\"size\":8}},{\"font\":{\"italic\":false,\"bold\":true},\"valign\":\"middle\",\"align\":\"center\"},{\"font\":{\"italic\":false,\"bold\":true},\"valign\":\"middle\",\"align\":\"left\"},{\"align\":\"right\",\"valign\":\"bottom\"},{\"align\":\"right\",\"valign\":\"bottom\",\"font\":{\"bold\":true,\"size\":8}},{\"align\":\"center\",\"valign\":\"middle\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":107},\"1\":{\"width\":54},\"2\":{\"width\":135},\"3\":{\"width\":180},\"6\":{\"width\":123},\"8\":{\"width\":25},\"len\":50},\"merges\":[\"B1:B2\",\"B12:D12\",\"B9:D9\",\"B7:D7\",\"B6:D6\",\"B5:D5\",\"B3:D3\",\"B11:D11\",\"B8:D8\",\"B10:D10\",\"C13:D17\",\"C1:C2\",\"B4:D4\",\"F4:I9\",\"D1:D2\"],\"imgList\":[{\"row\":0,\"col\":0,\"width\":\"950\",\"height\":\"683\",\"src\":\"https://jimureport.oss-cn-beijing.aliyuncs.com/designreport/images/38_1610456500965_1617247643815.jpg\",\"isBackend\":true,\"commonBackend\":true,\"layer_id\":\"BJ9o6oelCr85EpT2\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[0,0],[0,1],[0,2],[0,3],[0,4],[0,5],[0,6],[0,7],[0,8],[0,9]]}]}', '', 'https://static.jeecg.com/designreport/images/24_1597233568822.png', 'jeecg', '2020-07-09 10:48:22', 'admin', '2021-06-30 10:16:05', 0, NULL, NULL, 1, 1414, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('a9f068972508920cd4aab831814f0c04', '23445', '逮捕证', '', NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":false,\"excel_config_id\":\"a9f068972508920cd4aab831814f0c04\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"0\":{\"cells\":{\"2\":{\"text\":\"\",\"merge\":[0,9],\"style\":324},\"12\":{}},\"isDrag\":true,\"height\":55},\"1\":{\"cells\":{\"1\":{\"style\":410,\"merge\":[0,13],\"text\":\"兰州市经济侦查大队\"},\"15\":{\"style\":324,\"text\":\" \"}},\"height\":128},\"2\":{\"cells\":{\"1\":{\"style\":411,\"merge\":[0,13],\"text\":\"逮捕令\"},\"15\":{\"style\":324,\"text\":\" \"}},\"height\":41},\"3\":{\"cells\":{\"1\":{\"style\":412,\"merge\":[0,12],\"text\":\"第123459663号\"},\"14\":{\"style\":413,\"text\":\" \"}},\"height\":60},\"4\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"2\":{\"text\":\" 根据《中华人民共和国刑事诉讼法》第七十八条之规定,\",\"style\":341,\"merge\":[0,11]},\"14\":{\"style\":413,\"text\":\" \"}},\"height\":43},\"5\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"2\":{\"style\":341,\"text\":\"经\",\"merge\":[0,1]},\"4\":{\"text\":\"${pdaibu.pname}\",\"style\":342,\"merge\":[0,9]},\"14\":{\"style\":413,\"text\":\" \"}},\"isDrag\":true,\"height\":47},\"6\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"2\":{\"style\":344,\"text\":\" \",\"merge\":[0,2]},\"5\":{\"merge\":[0,3],\"text\":\"批准,兹由我局对涉嫌\",\"style\":338},\"9\":{\"text\":\"${pdaibu.shiqing}\",\"style\":347,\"merge\":[0,4]},\"14\":{\"style\":413,\"text\":\" \"}},\"isDrag\":true,\"height\":49},\"7\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"2\":{\"style\":341,\"text\":\"的\"},\"3\":{\"text\":\"${pdaibu.fname}\",\"style\":345,\"merge\":[0,1]},\"5\":{\"text\":\"(性别\",\"style\":343},\"6\":{\"text\":\"${pdaibu.fsex}\",\"style\":347,\"merge\":[0,1]},\"8\":{\"style\":346,\"text\":\"出生日期\"},\"9\":{\"text\":\"${pdaibu.cdata}\",\"style\":345,\"merge\":[0,4]},\"14\":{\"style\":413,\"text\":\" \"}},\"isDrag\":true,\"height\":51},\"8\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"2\":{\"text\":\"${pdaibu.zhuzhi}\",\"style\":345,\"merge\":[0,7]},\"10\":{\"style\":341,\"text\":\"执行逮捕,送兰州\",\"merge\":[0,3]},\"14\":{\"style\":413,\"text\":\" \"}},\"isDrag\":true,\"height\":51},\"9\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"2\":{\"style\":341,\"merge\":[0,6],\"text\":\"市经济侦查大队羁押。\"},\"9\":{\"style\":341,\"text\":\" \"},\"10\":{\"style\":341,\"merge\":[5,1],\"text\":\" \"},\"14\":{\"style\":413,\"text\":\" \"}},\"height\":57},\"10\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"4\":{\"style\":338,\"virtual\":\"DId4FGTLnP3vfp4y\",\"text\":\" \"},\"5\":{\"style\":338,\"virtual\":\"DId4FGTLnP3vfp4y\",\"text\":\" \"},\"6\":{\"style\":338,\"virtual\":\"DId4FGTLnP3vfp4y\",\"text\":\" \"},\"14\":{\"style\":413,\"text\":\" \"}},\"height\":61},\"11\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"6\":{\"style\":376,\"merge\":[0,2],\"text\":\" \"},\"14\":{\"style\":413,\"text\":\" \"}},\"height\":83},\"12\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"2\":{\"merge\":[0,6],\"style\":338,\"text\":\" \"},\"14\":{\"style\":413,\"text\":\" \"}},\"height\":14},\"13\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"2\":{\"style\":351,\"merge\":[0,5],\"text\":\" \"},\"8\":{\"style\":380,\"text\":\"公安局印\"},\"9\":{\"text\":\" \",\"virtual\":\"XefZfpEcdS3wI6Ae\"},\"10\":{\"text\":\" \",\"virtual\":\"XefZfpEcdS3wI6Ae\"},\"11\":{\"text\":\" \",\"virtual\":\"XefZfpEcdS3wI6Ae\"},\"14\":{\"style\":413,\"text\":\" \"}},\"height\":89},\"14\":{\"cells\":{\"1\":{\"style\":414,\"text\":\" \"},\"14\":{\"style\":413,\"text\":\" \"}},\"height\":21},\"15\":{\"cells\":{\"1\":{\"style\":415,\"text\":\" \"},\"2\":{\"style\":416,\"text\":\" \"},\"3\":{\"style\":417,\"text\":\" \"},\"4\":{\"style\":417,\"text\":\" \"},\"5\":{\"style\":417,\"text\":\" \"},\"6\":{\"text\":\"${pdaibu.gdata}\",\"style\":421,\"merge\":[0,6]},\"13\":{\"style\":417,\"text\":\" \"},\"14\":{\"style\":419,\"text\":\" \"}},\"isDrag\":true,\"height\":168},\"len\":88,\"-1\":{\"cells\":{\"1\":{\"text\":\"#{daibu.fdata}\"},\"-1\":{\"text\":\"#{pdaibu.shiqing}\"}},\"isDrag\":true}},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":709,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"left\"},{\"align\":\"left\",\"underline\":true},{\"underline\":true},{\"align\":\"center\",\"underline\":true},{\"align\":\"center\"},{\"align\":\"center\",\"underline\":false},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":16}},{\"font\":{\"size\":16}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16}},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":16}},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16}},{\"align\":\"left\",\"font\":{\"size\":16,\"bold\":true}},{\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":true}},{\"font\":{\"bold\":true}},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":true}},{\"align\":\"left\",\"font\":{\"size\":16,\"bold\":false}},{\"font\":{\"size\":16,\"bold\":false}},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":16,\"bold\":false}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":false}},{\"font\":{\"bold\":false}},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":false}},{\"align\":\"left\",\"font\":{\"size\":16,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":16,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":16,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":16,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"align\":\"center\"},{\"font\":{\"size\":12},\"align\":\"center\"},{\"font\":{\"size\":8}},{\"font\":{\"size\":10}},{\"font\":{\"size\":10,\"bold\":true}},{\"font\":{\"size\":10,\"bold\":true},\"align\":\"center\"},{\"font\":{\"size\":18,\"bold\":true},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":18}},{\"font\":{\"size\":16,\"bold\":true},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":16}},{\"font\":{\"size\":12},\"valign\":\"bottom\"},{\"font\":{\"size\":12},\"valign\":\"middle\"},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"valign\":\"middle\",\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"right\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"right\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"right\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"left\":[\"dashed\",\"#000\"]}},{\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"font\":{\"size\":12,\"bold\":true},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true}},{\"font\":{\"size\":14,\"bold\":true},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"name\":\"Arial\"}},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Arial\"}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Arial\"}},{\"font\":{\"name\":\"Arial\"}},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"name\":\"Source Sans Pro\"}},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Source Sans Pro\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Source Sans Pro\"}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"}},{\"font\":{\"name\":\"Source Sans Pro\"}},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Source Sans Pro\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"name\":\"Source Sans Pro\"},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Source Sans Pro\"}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Comic Sans MS\"}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"name\":\"Comic Sans MS\"}},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Comic Sans MS\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Comic Sans MS\"}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"}},{\"font\":{\"name\":\"Comic Sans MS\"}},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Comic Sans MS\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"name\":\"Comic Sans MS\"},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Comic Sans MS\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Comic Sans MS\"}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"name\":\"Courier New\"}},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Courier New\"}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Courier New\"}},{\"font\":{\"name\":\"Courier New\"}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"}},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Courier New\"},\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Courier New\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Arial\"},\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Arial\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"top\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Helvetica\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Helvetica\"},\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Helvetica\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"top\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]},\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":10,\"name\":\"Lato\"},\"valign\":\"middle\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"center\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"color\":\"#000100\",\"align\":\"right\"},{\"align\":\"right\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"left\",\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"left\",\"color\":\"#000100\",\"valign\":\"top\"},{\"align\":\"left\",\"valign\":\"top\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"left\",\"color\":\"#000100\",\"valign\":\"middle\"},{\"align\":\"left\",\"valign\":\"middle\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"left\",\"color\":\"#000100\",\"valign\":\"bottom\"},{\"align\":\"left\",\"valign\":\"bottom\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\",\"valign\":\"bottom\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"left\":[\"thick\",\"#000\"]},\"align\":\"right\",\"color\":\"#000100\",\"valign\":\"bottom\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":true,\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"right\",\"color\":\"#000100\",\"valign\":\"bottom\"},{\"align\":\"left\",\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"underline\":false,\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\",\"align\":\"right\"},{\"font\":{\"size\":12,\"name\":\"Lato\",\"bold\":true},\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"color\":\"#000100\"},{\"border\":{\"right\":[\"thin\",\"#000\"]}},{},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"color\":\"#000100\",\"align\":\"right\"},{\"font\":{\"size\":12,\"name\":\"Lato\",\"bold\":true},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"align\":\"right\",\"color\":\"#000100\",\"valign\":\"bottom\"},{\"align\":\"center\",\"underline\":false,\"font\":{\"size\":12,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"right\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":12}},{\"align\":\"center\",\"font\":{\"bold\":false}},{\"align\":\"center\",\"font\":{\"bold\":false,\"size\":12}},{\"align\":\"center\",\"font\":{\"bold\":false,\"size\":12},\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"valign\":\"top\"},{\"font\":{\"size\":14,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"center\"},{\"font\":{\"size\":14}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"name\":\"Lato\"},\"align\":\"right\",\"color\":\"#000100\",\"valign\":\"bottom\"},{\"align\":\"left\",\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"center\",\"font\":{\"bold\":false,\"size\":14},\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"font\":{\"name\":\"Lato\",\"size\":14},\"color\":\"#000100\"},{\"align\":\"left\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"center\"},{\"font\":{\"size\":14},\"align\":\"center\",\"border\":{\"bottom\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"]},\"font\":{\"size\":14}},{\"align\":\"left\",\"font\":{\"size\":14}},{\"align\":\"left\",\"font\":{\"name\":\"Lato\",\"size\":14},\"color\":\"#000100\"},{\"font\":{\"size\":14,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"right\"},{\"align\":\"left\",\"valign\":\"top\",\"font\":{\"size\":14}},{\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":16,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14,\"name\":\"Lato\"},\"align\":\"right\",\"color\":\"#000100\",\"valign\":\"bottom\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"bold\":false,\"size\":14},\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\"},{\"border\":{\"right\":[\"thick\",\"#000\"]},\"font\":{\"size\":14}},{\"align\":\"left\",\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"name\":\"Lato\",\"size\":14},\"color\":\"#000100\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"right\",\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"right\",\"border\":{\"bottom\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14},\"border\":{\"bottom\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"bold\":false,\"size\":14}},{\"font\":{\"size\":14},\"align\":\"center\"},{\"font\":{\"size\":14,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"center\",\"border\":{\"top\":[\"thick\",\"#000\"]}},{\"border\":{\"top\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"right\",\"border\":{\"bottom\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14},\"align\":\"right\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"size\":12}},{\"font\":{\"size\":14},\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thick\",\"#000\"]},\"font\":{\"size\":12},\"align\":\"center\"},{\"align\":\"left\",\"valign\":\"middle\",\"font\":{\"size\":14}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"size\":24}},{\"font\":{\"size\":24}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"size\":22}},{\"font\":{\"size\":22}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"size\":18}},{\"font\":{\"size\":18}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"size\":18,\"bold\":true}},{\"font\":{\"size\":18,\"bold\":true}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"size\":18,\"bold\":true},\"align\":\"center\"},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"size\":18,\"bold\":false},\"align\":\"center\"},{\"font\":{\"size\":18,\"bold\":false},\"align\":\"center\"},{\"font\":{\"size\":14,\"bold\":true}},{\"border\":{\"top\":[\"thick\",\"#000\"]},\"font\":{\"size\":18,\"bold\":false},\"align\":\"center\",\"valign\":\"bottom\"},{\"font\":{\"size\":18,\"bold\":false},\"align\":\"center\",\"valign\":\"bottom\"},{\"valign\":\"bottom\"},{\"valign\":\"bottom\",\"align\":\"right\"},{\"valign\":\"bottom\",\"align\":\"right\",\"font\":{\"size\":14}},{\"font\":{\"size\":18,\"bold\":false},\"align\":\"center\",\"valign\":\"bottom\",\"border\":{\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14},\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"valign\":\"bottom\",\"align\":\"right\",\"font\":{\"size\":14},\"border\":{\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"left\",\"font\":{\"size\":14,\"bold\":false,\"name\":\"Lato\"},\"color\":\"#000100\",\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"bold\":false,\"size\":14},\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":14},\"align\":\"center\",\"border\":{\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":18,\"bold\":false},\"align\":\"center\",\"valign\":\"bottom\",\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14},\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"valign\":\"bottom\",\"align\":\"right\",\"font\":{\"size\":14},\"border\":{\"left\":[\"thick\",\"#000\"],\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":14},\"align\":\"center\",\"border\":{\"right\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":18,\"bold\":false},\"align\":\"center\",\"valign\":\"bottom\",\"border\":{\"top\":[\"thick\",\"#000\"],\"left\":[\"thick\",\"#000\"]}},{\"valign\":\"bottom\",\"align\":\"right\",\"font\":{\"size\":14},\"border\":{\"left\":[\"thick\",\"#000\"]}},{\"font\":{\"size\":18,\"bold\":false},\"align\":\"center\",\"valign\":\"bottom\",\"border\":{\"top\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"bold\":true,\"size\":14},\"border\":{\"left\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]}},{\"valign\":\"bottom\",\"align\":\"right\",\"font\":{\"size\":14},\"border\":{\"left\":[\"medium\",\"#000\"]}},{\"border\":{\"right\":[\"medium\",\"#000\"]}},{\"border\":{\"left\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"left\":[\"medium\",\"#000\"]}},{\"font\":{\"size\":12,\"name\":\"Lato\"},\"color\":\"#000100\",\"align\":\"right\",\"border\":{\"bottom\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"]}},{\"font\":{\"size\":12},\"align\":\"center\",\"border\":{\"bottom\":[\"medium\",\"#000\"]}},{\"border\":{\"bottom\":[\"medium\",\"#000\"],\"right\":[\"medium\",\"#000\"]}},{\"align\":\"center\",\"font\":{\"bold\":false,\"size\":14},\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"font\":{\"size\":12},\"align\":\"right\",\"border\":{\"bottom\":[\"medium\",\"#000\"]}},{\"font\":{\"size\":12},\"align\":\"right\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":18},\"1\":{\"width\":21},\"2\":{\"width\":27},\"3\":{\"width\":6},\"4\":{\"width\":87},\"5\":{\"width\":51},\"6\":{\"width\":51},\"7\":{\"width\":1},\"8\":{\"width\":86},\"9\":{\"width\":163},\"10\":{\"width\":1},\"11\":{\"width\":60},\"12\":{\"width\":45},\"13\":{\"width\":49},\"14\":{\"width\":23},\"15\":{\"width\":20},\"len\":50},\"merges\":[\"D8:E8\",\"C6:D6\",\"C10:I10\",\"G8:H8\",\"C9:J9\",\"C1:L1\",\"K10:L15\",\"C13:I13\",\"C14:H14\",\"F7:I7\",\"G12:I12\",\"G16:M16\",\"B4:N4\",\"C5:N5\",\"E6:N6\",\"J7:N7\",\"C7:E7\",\"K9:N9\",\"B2:O2\",\"B3:O3\",\"J8:N8\"],\"imgList\":[{\"row\":13,\"col\":9,\"width\":\"168\",\"height\":\"158\",\"src\":\"https://static.jeecg.com/designreport/images/QQ截图20210105214919_1610075317075.png\",\"layer_id\":\"XefZfpEcdS3wI6Ae\",\"offsetX\":0,\"offsetY\":0,\"virtualCellRange\":[[13,9],[13,10],[13,11]]}]}', '', 'https://static.jeecg.com/designreport/images/逮捕令_1607070625878.png', 'jeecg', '2020-07-10 13:38:40', 'admin', '2021-04-01 03:17:16', 0, NULL, NULL, 1, 2505, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('dd482bfd6ca470a0f49d9bb4e61ec694', '202101081046034402', '实习证明副本4402', NULL, NULL, 'printinfo', '{\"area\":false,\"printElWidth\":570,\"excel_config_id\":\"1347373863746539520\",\"printElHeight\":1047,\"rows\":{\"6\":{\"cells\":{\"2\":{\"merge\":[0,1],\"text\":\"实习证明\",\"style\":2},\"3\":{\"style\":2}},\"height\":50},\"8\":{\"cells\":{\"1\":{\"text\":\"#{tt.name}\",\"style\":3},\"2\":{\"merge\":[0,2],\"text\":\"同学在我公司与 2020年4月1日 至 2020年5月1日 实习。\"}}},\"9\":{\"cells\":{\"1\":{\"text\":\"\"}},\"isDrag\":true},\"12\":{\"cells\":{\"1\":{\"merge\":[4,3],\"text\":\"#{tt.pingjia}\",\"style\":6},\"2\":{\"style\":6},\"3\":{\"style\":6},\"4\":{\"style\":6}}},\"13\":{\"cells\":{\"1\":{\"style\":6},\"2\":{\"style\":6},\"3\":{\"style\":6},\"4\":{\"style\":6}}},\"14\":{\"cells\":{\"1\":{\"style\":6},\"2\":{\"style\":6},\"3\":{\"style\":6},\"4\":{\"style\":6}}},\"15\":{\"cells\":{\"1\":{\"style\":6},\"2\":{\"style\":6},\"3\":{\"style\":6},\"4\":{\"style\":6}}},\"16\":{\"cells\":{\"1\":{\"style\":6},\"2\":{\"style\":6},\"3\":{\"style\":6},\"4\":{\"style\":6}}},\"17\":{\"cells\":{\"1\":{\"text\":\"特此证明!\"}}},\"20\":{\"cells\":{\"2\":{\"text\":\"\"},\"3\":{\"text\":\"\",\"style\":3},\"4\":{\"text\":\"\"}}},\"21\":{\"cells\":{\"4\":{\"text\":\"\"}}},\"22\":{\"cells\":{\"3\":{\"text\":\"证明人:\",\"style\":3},\"4\":{\"text\":\"#{tt.lingdao}\"}}},\"23\":{\"cells\":{\"4\":{\"text\":\"#{tt.shijian}\"}}},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":487,\"background\":{\"path\":\"https://static.jeecg.com/designreport/images/report_1595906079684_1610075686629.png\",\"repeat\":\"no-repeat\",\"width\":\"\",\"height\":\"\"},\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"font\":{\"size\":14}},{\"align\":\"center\",\"font\":{\"size\":16}},{\"align\":\"right\"},{\"align\":\"left\"},{\"align\":\"left\",\"valign\":\"top\"},{\"align\":\"left\",\"valign\":\"top\",\"textwrap\":true}],\"validations\":[],\"cols\":{\"0\":{\"width\":82},\"1\":{\"width\":86},\"4\":{\"width\":119},\"len\":26},\"merges\":[\"C7:D7\",\"C9:E9\",\"B13:E17\"]}', NULL, 'https://static.jeecg.com/designreport/images/未标题-1_1610074948259.png', 'admin', '2021-01-18 13:21:18', 'admin', '2021-02-02 19:01:05', 1, NULL, NULL, 0, 94, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('f5f275b5e28b45256ef24587ec792f0c', '202101081641215447', '实例:来源收入统计副本5447', NULL, NULL, 'datainfo', '{\"loopBlockList\":[],\"chartList\":[{\"row\":1,\"col\":1,\"colspan\":8,\"rowspan\":12,\"width\":\"675\",\"height\":\"289\",\"config\":\"{\\\"legend\\\":{\\\"padding\\\":[25,20,25,10],\\\"data\\\":[\\\"中国石油全资(集团所属)\\\",\\\"中国石油全资(股份所属)\\\",\\\"中石油控股或有控股权\\\",\\\"中石油参股\\\",\\\"非中石油\\\"],\\\"top\\\":\\\"top\\\",\\\"orient\\\":\\\"vertical\\\",\\\"left\\\":\\\"right\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#333\\\",\\\"fontSize\\\":12}},\\\"series\\\":[{\\\"isRose\\\":false,\\\"data\\\":[{\\\"name\\\":\\\"中国石油全资(集团所属)\\\",\\\"value\\\":38460270.57,\\\"itemStyle\\\":{\\\"color\\\":\\\"#E46C8A\\\"}},{\\\"name\\\":\\\"中国石油全资(股份所属)\\\",\\\"value\\\":227595.77,\\\"itemStyle\\\":{\\\"color\\\":\\\"#FCDE43\\\"}},{\\\"name\\\":\\\"中石油控股或有控股权\\\",\\\"value\\\":679926.75,\\\"itemStyle\\\":{\\\"color\\\":\\\"#01A8E1\\\"}},{\\\"name\\\":\\\"中石油参股\\\",\\\"value\\\":72062.75,\\\"itemStyle\\\":{\\\"color\\\":\\\"#99CC00\\\"}},{\\\"name\\\":\\\"非中石油\\\",\\\"value\\\":1698597.62,\\\"itemStyle\\\":{\\\"color\\\":\\\"#800080\\\"}}],\\\"isRadius\\\":false,\\\"roseType\\\":\\\"\\\",\\\"notCount\\\":false,\\\"center\\\":[320,180],\\\"name\\\":\\\"total\\\",\\\"minAngle\\\":0,\\\"label\\\":{\\\"show\\\":false,\\\"position\\\":\\\"outside\\\",\\\"textStyle\\\":{\\\"fontSize\\\":16,\\\"fontWeight\\\":\\\"bolder\\\"}},\\\"type\\\":\\\"pie\\\",\\\"radius\\\":\\\"55%\\\",\\\"autoSort\\\":false}],\\\"tooltip\\\":{\\\"formatter\\\":\\\"{b} : {c}\\\",\\\"show\\\":true,\\\"textStyle\\\":{\\\"color\\\":\\\"#fff\\\",\\\"fontSize\\\":18}},\\\"title\\\":{\\\"show\\\":true,\\\"top\\\":5,\\\"text\\\":\\\"来源收入统计\\\",\\\"textStyle\\\":{\\\"color\\\":\\\"#c23531\\\",\\\"fontWeight\\\":\\\"bolder\\\",\\\"fontSize\\\":18},\\\"left\\\":\\\"center\\\",\\\"padding\\\":[5,20,5,10]}}\",\"url\":\"\",\"extData\":{\"dataType\":\"sql\",\"apiStatus\":\"\",\"apiUrl\":\"\",\"dataId\":\"4af57d343f1d6521b71b85097b580786\",\"axisX\":\"biz_income\",\"axisY\":\"total\",\"series\":\"\",\"yText\":\"total\",\"xText\":\"biz_income\",\"dbCode\":\"tmp_report_data_income\",\"dataId1\":\"\",\"source\":\"\",\"target\":\"\",\"isTiming\":true,\"intervalTime\":\"5\",\"chartType\":\"pie.simple\",\"id\":\"\"},\"layer_id\":\"nVUy533exgQ70OPb\",\"offsetX\":0,\"offsetY\":0,\"backgroud\":{\"enabled\":false,\"color\":\"#fff\",\"image\":\"\"},\"virtualCellRange\":[[1,1],[1,2],[1,3],[1,4],[1,5],[1,6],[1,7],[1,8]]}],\"area\":{\"sri\":15,\"sci\":14,\"eri\":15,\"eci\":14,\"width\":100,\"height\":25},\"excel_config_id\":\"f5f275b5e28b45256ef24587ec792f0c\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10,\"layout\":\"portrait\"},\"zonedEditionList\":[],\"rows\":{\"1\":{\"cells\":{\"1\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"2\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"3\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"4\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"5\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"6\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"7\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"},\"8\":{\"text\":\" \",\"virtual\":\"nVUy533exgQ70OPb\"}}},\"3\":{\"cells\":{}},\"16\":{\"cells\":{\"1\":{\"text\":\"业务来源\",\"style\":1},\"2\":{\"text\":\"保险经纪佣金费\",\"style\":1},\"3\":{\"text\":\"风险咨询费\",\"style\":1},\"4\":{\"text\":\"承保公证评估费\",\"style\":1},\"5\":{\"text\":\"保险公证费\",\"style\":1},\"6\":{\"text\":\"投标咨询费\",\"style\":1},\"7\":{\"text\":\"内控咨询费\",\"style\":1},\"8\":{\"text\":\"总计\",\"style\":1}}},\"17\":{\"cells\":{\"1\":{\"text\":\"#{tmp_report_data_income.biz_income}\",\"style\":0},\"2\":{\"text\":\"#{tmp_report_data_income.bx_jj_yongjin}\",\"style\":0},\"3\":{\"text\":\"#{tmp_report_data_income.bx_zx_money}\",\"style\":0},\"4\":{\"text\":\"#{tmp_report_data_income.chengbao_gz_money}\",\"style\":0},\"5\":{\"text\":\"#{tmp_report_data_income.bx_gg_moeny}\",\"style\":0},\"6\":{\"text\":\"#{tmp_report_data_income.tb_zx_money}\",\"style\":0},\"7\":{\"text\":\"#{tmp_report_data_income.neikong_zx_money}\",\"style\":0},\"8\":{\"text\":\"#{tmp_report_data_income.total}\",\"style\":0}},\"isDrag\":true,\"height\":24},\"len\":58},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"rpbar\":{\"show\":true,\"btnList\":[]},\"freeze\":\"A1\",\"dataRectWidth\":701,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#33CCCC\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":15},\"1\":{\"width\":105},\"2\":{\"width\":119},\"3\":{\"width\":87},\"4\":{\"width\":61},\"5\":{\"width\":63},\"6\":{\"width\":60},\"7\":{\"width\":91},\"len\":50},\"merges\":[]}', NULL, NULL, 'admin', '2021-01-18 13:21:14', 'admin', '2021-10-11 09:47:48', 0, NULL, NULL, 0, 104, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('f6ee801e8bdc28ba9d63f95dc65ccd79', '4556633', '采购单', '', NULL, 'printinfo', '{\"loopBlockList\":[],\"area\":false,\"excel_config_id\":\"f6ee801e8bdc28ba9d63f95dc65ccd79\",\"printConfig\":{\"paper\":\"A4\",\"width\":210,\"height\":297,\"definition\":1,\"isBackend\":false,\"marginX\":10,\"marginY\":10},\"rows\":{\"0\":{\"cells\":{\"1\":{\"text\":\"采购单\",\"style\":21,\"merge\":[0,6]}},\"height\":89},\"1\":{\"cells\":{\"1\":{\"text\":\"产品名称\",\"style\":23},\"2\":{\"text\":\"产品数量\",\"style\":23},\"3\":{\"text\":\"单价\",\"style\":23},\"4\":{\"text\":\"库存量\",\"style\":23},\"5\":{\"text\":\"库存总值\",\"style\":23},\"6\":{\"text\":\"订购量\",\"style\":23},\"7\":{\"text\":\"二次订购量\",\"style\":23}},\"height\":45},\"2\":{\"cells\":{\"1\":{\"style\":24,\"text\":\"#{caigou.cname}\"},\"2\":{\"style\":24,\"text\":\"#{caigou.cnum}\"},\"3\":{\"style\":24,\"text\":\"#{caigou.cprice}\"},\"4\":{\"style\":24,\"text\":\"#{caigou.ctotal}\"},\"5\":{\"style\":24,\"text\":\"#{caigou.tp}\"},\"6\":{\"style\":24,\"text\":\"#{caigou.dtotal}\"},\"7\":{\"style\":24,\"text\":\"#{caigou.ztotal}\"}},\"height\":26},\"5\":{\"cells\":{\"1\":{\"text\":\"\"}},\"isDrag\":true},\"6\":{\"cells\":{\"1\":{\"text\":\"\"}},\"isDrag\":true},\"7\":{\"cells\":{\"1\":{\"text\":\"\"},\"2\":{\"text\":\"\"}},\"isDrag\":true},\"len\":100},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":718,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":682,\"displayConfig\":{},\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"align\":\"center\"},{\"align\":\"center\",\"color\":\"#000100\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#01b0f1\"],\"top\":[\"thin\",\"#01b0f1\"],\"left\":[\"thin\",\"#01b0f1\"],\"right\":[\"thin\",\"#01b0f1\"]}},{\"border\":{\"bottom\":[\"thin\",\"#01b0f1\"],\"top\":[\"thin\",\"#01b0f1\"],\"left\":[\"thin\",\"#01b0f1\"],\"right\":[\"thin\",\"#01b0f1\"]}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#01b0f1\"],\"top\":[\"thin\",\"#01b0f1\"],\"left\":[\"thin\",\"#01b0f1\"],\"right\":[\"thin\",\"#01b0f1\"]},\"bgcolor\":\"#01b0f1\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#01b0f1\"},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]}},{\"align\":\"center\",\"font\":{\"size\":18}},{\"align\":\"center\",\"font\":{\"size\":18,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true}},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"align\":\"center\"},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#9cc2e6\"},{\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true,\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#5b9cd6\"],\"top\":[\"thin\",\"#5b9cd6\"],\"left\":[\"thin\",\"#5b9cd6\"],\"right\":[\"thin\",\"#5b9cd6\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#9cc2e6\",\"font\":{\"name\":\"宋体\"}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#000100\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#5b9cd6\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#5b9cd6\",\"font\":{\"name\":\"宋体\"}},{\"align\":\"center\",\"font\":{\"size\":16,\"bold\":true,\"name\":\"Microsoft YaHei\"}},{\"font\":{\"name\":\"Microsoft YaHei\"}},{\"align\":\"center\",\"color\":\"#ffffff\",\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"bgcolor\":\"#5b9cd6\",\"font\":{\"name\":\"Microsoft YaHei\"}},{\"border\":{\"bottom\":[\"thin\",\"#bfbfbf\"],\"top\":[\"thin\",\"#bfbfbf\"],\"left\":[\"thin\",\"#bfbfbf\"],\"right\":[\"thin\",\"#bfbfbf\"]},\"align\":\"center\",\"font\":{\"name\":\"Microsoft YaHei\"}}],\"validations\":[],\"cols\":{\"0\":{\"width\":43},\"1\":{\"width\":114},\"2\":{\"width\":109},\"3\":{\"width\":78},\"4\":{\"width\":77},\"5\":{\"width\":84},\"6\":{\"width\":82},\"7\":{\"width\":95},\"len\":50},\"merges\":[\"B1:H1\"]}', '', 'https://static.jeecg.com/designreport/images/caigou_1607310279439.png', 'jeecg', '2020-07-28 16:54:44', 'admin', '2021-04-01 03:09:41', 0, NULL, NULL, 1, 1248, NULL, NULL); +INSERT INTO `jimu_report` VALUES ('ff9bd143582a6dfed897ba8b6f93b175', '56696', '销售公司出库单', '', NULL, 'printinfo', '{\"area\":{\"sri\":4,\"sci\":0,\"eri\":4,\"eci\":0,\"width\":32,\"height\":25},\"printElWidth\":794,\"excel_config_id\":\"ff9bd143582a6dfed897ba8b6f93b175\",\"printElHeight\":800,\"rows\":{\"0\":{\"cells\":{\"0\":{\"style\":11,\"text\":\"医疗器械销售公司出货单\",\"merge\":[0,9]}},\"height\":83},\"1\":{\"cells\":{\"0\":{\"text\":\"供货单位:\",\"style\":20,\"merge\":[0,1]},\"1\":{\"style\":30},\"2\":{\"text\":\"${gongsi.gname}\",\"style\":19},\"3\":{\"style\":19},\"4\":{\"text\":\"供货日期:\",\"style\":19},\"5\":{\"text\":\"${gongsi.gdata}\",\"style\":19,\"merge\":[0,1]},\"6\":{\"style\":19},\"7\":{\"text\":\"编号:\",\"style\":20},\"8\":{\"text\":\"${gongsi.num}\",\"style\":19,\"merge\":[0,1]},\"9\":{\"style\":19}},\"isDrag\":true},\"2\":{\"cells\":{\"0\":{\"text\":\"行号\",\"style\":39},\"1\":{\"text\":\"产品代码\",\"style\":39},\"2\":{\"text\":\"产品名称\",\"style\":39},\"3\":{\"text\":\"规格型号\",\"style\":39},\"4\":{\"text\":\"单位\",\"style\":39},\"5\":{\"text\":\"实发数量\",\"style\":39},\"6\":{\"text\":\"销售单价(元)\",\"style\":39},\"7\":{\"text\":\"折扣率(%)\",\"style\":39},\"8\":{\"text\":\"销售金额(元)\",\"style\":39},\"9\":{\"text\":\"备注\",\"style\":39}}},\"3\":{\"cells\":{\"0\":{\"style\":35,\"text\":\"#{xiaoshou.id}\"},\"1\":{\"style\":35,\"text\":\"#{xiaoshou.hnum}\"},\"2\":{\"style\":35,\"text\":\"#{xiaoshou.hname}\"},\"3\":{\"style\":35,\"text\":\"#{xiaoshou.xinghao}\"},\"4\":{\"style\":35,\"text\":\"#{xiaoshou.danwei}\"},\"5\":{\"style\":35,\"text\":\"#{xiaoshou.num}\"},\"6\":{\"style\":35,\"text\":\"#{xiaoshou.danjia}\"},\"7\":{\"style\":35,\"text\":\"#{xiaoshou.zhekoulv}\"},\"8\":{\"style\":35,\"text\":\"#{xiaoshou.xiaoshoujine}\"},\"9\":{\"style\":35,\"text\":\"#{xiaoshou.xiaoshoujine}\"}}},\"4\":{\"cells\":{\"0\":{\"style\":4},\"1\":{}},\"isDrag\":true},\"len\":84,\"-1\":{\"cells\":{\"0\":{\"text\":\"#{gongsi.gdata}\"},\"-1\":{\"text\":\"#{gongsi.didian}\"}},\"isDrag\":true}},\"dbexps\":[],\"toolPrintSizeObj\":{\"printType\":\"A4\",\"widthPx\":794,\"heightPx\":1047},\"dicts\":[],\"freeze\":\"A1\",\"dataRectWidth\":794,\"background\":false,\"name\":\"sheet1\",\"autofilter\":{},\"styles\":[{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\"},{\"font\":{\"size\":16}},{\"font\":{\"size\":16},\"align\":\"center\"},{\"align\":\"center\"},{\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"]}},{\"border\":{\"top\":[\"thin\",\"#000\"],\"bottom\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]}},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"right\"},{\"align\":\"right\"},{\"align\":\"center\",\"font\":{\"size\":14}},{\"align\":\"center\",\"font\":{\"size\":14,\"bold\":true}},{\"align\":\"center\",\"font\":{\"size\":9}},{\"font\":{\"size\":9}},{\"align\":\"right\",\"font\":{\"size\":9}},{\"align\":\"center\",\"font\":{\"size\":8}},{\"font\":{\"size\":8}},{\"align\":\"right\",\"font\":{\"size\":8}},{\"align\":\"center\",\"font\":{\"size\":8},\"color\":\"#7f7f7f\"},{\"font\":{\"size\":8},\"color\":\"#7f7f7f\"},{\"align\":\"right\",\"font\":{\"size\":8},\"color\":\"#7f7f7f\"},{\"align\":\"center\",\"font\":{\"size\":8},\"color\":\"#3f3f3f\"},{\"font\":{\"size\":8},\"color\":\"#3f3f3f\"},{\"align\":\"right\",\"font\":{\"size\":8},\"color\":\"#3f3f3f\"},{\"align\":\"center\",\"font\":{\"size\":8},\"color\":\"#262626\"},{\"font\":{\"size\":8},\"color\":\"#262626\"},{\"align\":\"right\",\"font\":{\"size\":8},\"color\":\"#262626\"},{\"align\":\"center\",\"font\":{\"size\":8},\"color\":\"#0c0c0c\"},{\"font\":{\"size\":8},\"color\":\"#0c0c0c\"},{\"align\":\"right\",\"font\":{\"size\":8},\"color\":\"#0c0c0c\"},{\"align\":\"right\",\"color\":\"#7f7f7f\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"align\":\"center\",\"bgcolor\":\"#71ae47\"},{\"border\":{\"bottom\":[\"thin\",\"#000\"],\"top\":[\"thin\",\"#000\"],\"left\":[\"thin\",\"#000\"],\"right\":[\"thin\",\"#000\"]},\"bgcolor\":\"#71ae47\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"align\":\"center\",\"bgcolor\":\"#71ae47\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"bgcolor\":\"#71ae47\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"align\":\"center\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]}},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"align\":\"center\",\"bgcolor\":\"#c5e0b3\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"bgcolor\":\"#c5e0b3\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"align\":\"center\",\"bgcolor\":\"#a7d08c\"},{\"border\":{\"bottom\":[\"thin\",\"#538136\"],\"top\":[\"thin\",\"#538136\"],\"left\":[\"thin\",\"#538136\"],\"right\":[\"thin\",\"#538136\"]},\"bgcolor\":\"#a7d08c\"}],\"validations\":[],\"cols\":{\"0\":{\"width\":32},\"1\":{\"width\":65},\"2\":{\"width\":115},\"3\":{\"width\":70},\"4\":{\"width\":52},\"5\":{\"width\":70},\"6\":{\"width\":93},\"7\":{\"width\":86},\"8\":{\"width\":75},\"9\":{\"width\":136},\"10\":{\"width\":81},\"len\":24},\"merges\":[\"F2:G2\",\"F2:G2\",\"I2:J2\",\"A2:B2\",\"C2:D2\",\"A2:B2\",\"A1:J1\"]}', '', 'https://static.jeecg.com/designreport/images/医疗器械_1607070355110.png', 'jeecg', '2020-06-16 11:54:02', 'admin', '2021-02-02 19:34:39', 0, NULL, NULL, 0, 764, NULL, NULL); + +-- ---------------------------- +-- Table structure for jimu_report_data_source +-- ---------------------------- +DROP TABLE IF EXISTS `jimu_report_data_source`; +CREATE TABLE `jimu_report_data_source` ( + `id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '数据源名称', + `report_id` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '报表_id', + `code` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '编码', + `remark` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `db_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '数据库类型', + `db_driver` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '驱动类', + `db_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '数据源地址', + `db_username` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户名', + `db_password` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '密码', + `create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建日期', + `update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新日期', + `connect_times` int(1) UNSIGNED NULL DEFAULT 0 COMMENT '连接失败次数', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_jmdatasource_report_id`(`report_id`) USING BTREE, + INDEX `idx_jmdatasource_code`(`code`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of jimu_report_data_source +-- ---------------------------- +INSERT INTO `jimu_report_data_source` VALUES ('1324261983692902402', 'jeewx', '1324261770294071296', '', NULL, 'MYSQL', 'com.mysql.jdbc.Driver', 'jdbc:mysql://127.0.0.1:3306/jeewx-boot?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8', 'root', 'root', 'jeecg', '2020-11-05 16:07:15', NULL, '2020-11-05 16:07:15', 0); +INSERT INTO `jimu_report_data_source` VALUES ('26d21fe4f27920d2f56abc8d90a8e527', 'oracle', '1308645288868712448', '', NULL, 'ORACLE', 'oracle.jdbc.OracleDriver', 'jdbc:oracle:thin:@192.168.1.199:1521:helowin', 'jeecgbootbpm', 'jeecg196283', 'admin', '2021-01-05 19:26:24', NULL, '2021-01-05 19:26:24', 1); +INSERT INTO `jimu_report_data_source` VALUES ('8f90daf47d15d35ca6cf420748b8b9ba', 'localhost', '1316944968992034816', '', NULL, 'MYSQL5.7', 'com.mysql.cj.jdbc.Driver', 'jdbc:mysql://127.0.0.1:3306/jeecg-boot?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8', 'root', 'root', 'admin', '2021-01-13 14:34:00', NULL, '2021-01-13 14:34:00', 0); + +-- ---------------------------- +-- Table structure for jimu_report_db +-- ---------------------------- +DROP TABLE IF EXISTS `jimu_report_db`; +CREATE TABLE `jimu_report_db` ( + `id` varchar(36) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'id', + `jimu_report_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '主键字段', + `create_by` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建人登录名称', + `update_by` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '更新人登录名称', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建日期', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新日期', + `db_code` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '数据集编码', + `db_ch_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '数据集名字', + `db_type` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '数据源类型', + `db_table_name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '数据库表名', + `db_dyn_sql` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '动态查询SQL', + `db_key` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '数据源KEY', + `tb_db_key` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '填报数据源', + `tb_db_table_name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '填报数据表', + `java_type` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'java类数据集 类型(spring:springkey,class:java类名)', + `java_value` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'java类数据源 数值(bean key/java类名)', + `api_url` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '请求地址', + `api_method` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '请求方法0-get,1-post', + `is_list` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '是否是列表0否1是 默认0', + `is_page` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '是否作为分页,0:不分页,1:分页', + `db_source` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '数据源', + `db_source_type` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '数据库类型 MYSQL ORACLE SQLSERVER', + `json_data` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT 'json数据,直接解析json内容', + `api_convert` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'api转换器', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_jmreportdb_db_key`(`db_key`) USING BTREE, + INDEX `idx_jimu_report_id`(`jimu_report_id`) USING BTREE, + INDEX `idx_db_source_id`(`db_source`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of jimu_report_db +-- ---------------------------- +INSERT INTO `jimu_report_db` VALUES ('1272834687525482497', '53c82a76f837d5661dceec7d93afafec', 'admin', NULL, '2021-01-04 20:42:17', '2021-01-04 20:42:17', 'jianpiao', 'jianpiao', '0', NULL, 'select * from rep_demo_jianpiao where s_id=\'${id}\'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '1', NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1272858455908073473', 'ff9bd143582a6dfed897ba8b6f93b175', 'admin', NULL, '2020-12-14 16:21:09', '2020-12-14 16:21:09', 'xiaoshou', 'xiaoshou', '0', NULL, 'select * from rep_demo_xiaoshou where s_id=\'${id}\'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '1', NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1273495682564534273', 'ff9bd143582a6dfed897ba8b6f93b175', 'admin', NULL, '2020-09-28 10:18:07', '2020-12-14 16:21:09', 'gongsi', 'gongsi', '0', NULL, 'select * from rep_demo_gongsi where id=\'${id}\'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '0', '0', NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1283730831482937345', '6059e405dd9c66a6d38e00841d2e40cc', 'admin', NULL, '2020-12-04 16:53:38', '2020-12-04 16:53:38', 'yaopin', 'yaopin', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/chufangjian', '0', '0', '0', NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1283957016150249473', '6059e405dd9c66a6d38e00841d2e40cc', NULL, NULL, '2020-07-17 10:49:42', NULL, 'yonghu', 'yonghu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/yonghu', '0', '0', NULL, NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1284070508744257537', 'a250846887abe01217aab173d3006489', NULL, NULL, '2020-07-17 15:33:53', '2020-07-20 17:50:49', 'budong', 'budong', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/budongchan', '0', '0', NULL, NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1285157606524002305', 'a9f068972508920cd4aab831814f0c04', 'admin', 'admin', '2021-04-01 02:44:48', '2021-04-01 02:44:48', 'pdaibu', 'pdaibu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/daibu', '0', '0', '0', '', 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1285164420728692737', '7905022412733a0c68dc7b4ef8947489', NULL, NULL, '2020-07-20 18:47:30', NULL, 'jieshaoxin', 'jieshaoxin', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/jieshaoxin', '0', '0', NULL, NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1285178919099637762', '6d6bdcb5e820c301ea32789e3ae43c44', NULL, NULL, '2020-07-20 19:45:06', NULL, 'qiangxiu', 'qiangxiu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/qiangxiu', '0', '0', NULL, NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1288038655293661186', 'f6ee801e8bdc28ba9d63f95dc65ccd79', 'admin', 'admin', '2021-04-01 03:09:40', '2021-04-01 03:09:40', 'caigou', 'caigou', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/caigou?pageNo=\'${pageNo}\'&pageSize=\'${pageSize}\'', '0', '1', '1', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1289140698221678593', '519c1c6f4d1f584ae8fa5b43b45acdc7', 'admin', 'admin', '2021-04-01 03:09:23', '2021-04-01 03:09:23', 'xiaoshou', 'xiaoshou', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/xiaoshou?pageNo=\'${pageNo}\'&pageSize=\'${pageSize}\'', '0', '1', '1', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1290104038414721025', '53c82a76f837d5661dceec7d93afafec', 'admin', NULL, '2021-01-04 20:47:07', '2021-01-04 20:47:07', 'gongsi', 'gongsi', '0', NULL, 'select * from rep_demo_gongsi where id=\'${id}\'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '0', '0', '', 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1316987047604514817', '1314846205892759552', 'admin', NULL, '2021-01-08 10:36:58', '2021-01-08 10:36:58', 'yuangongjiben', 'yuangongjiben', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/yuangongjiben', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1316997232402231298', '1316944968992034816', 'admin', NULL, '2021-01-13 14:34:06', '2021-01-13 14:34:06', 'employee', 'employee', '0', NULL, 'select * from rep_demo_employee where id=\'${id}\'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '0', '', '', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1317006713165049858', '1314846205892759552', 'admin', NULL, '2021-01-11 14:38:14', '2021-01-11 14:38:14', 'xueli', 'xueli', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/xueli', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1317007979484147714', '1314846205892759552', 'admin', NULL, '2021-01-08 10:40:31', '2021-01-08 10:40:31', 'uu', 'uu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/gongzuojingli', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1317009166140829698', '1314846205892759552', 'admin', NULL, '2020-10-16 15:47:09', '2021-01-05 15:33:58', 'zhengshu', 'zhengshu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/zhengshu', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1317013474634756097', '1314846205892759552', 'admin', NULL, '2020-10-16 16:04:16', '2021-01-05 15:33:58', 'jtcy', 'jtcy', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/jtcy', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1317015169494282241', '1314846205892759552', 'admin', NULL, '2020-10-16 16:11:00', '2021-01-05 15:33:58', 'jiangli', 'jiangli', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/jiangli', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1331511745851731969', '1331503965770223616', 'admin', NULL, '2020-11-25 16:15:13', '2020-11-25 16:15:13', 'chengjiao', 'chengjiao', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/chengjiao', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1331514838211407873', '1331503965770223616', 'admin', NULL, '2020-11-25 16:27:30', '2020-11-25 16:27:30', 'cjpaihang', 'cjpaihang', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/cjpaihang', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1331514935028527106', '1331503965770223616', 'admin', NULL, '2020-11-25 16:27:54', '2020-11-25 16:27:54', 'cjjine', 'cjjine', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/cjjine', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1331872643531526146', '1331503965770223616', 'admin', NULL, '2020-11-26 16:09:18', '2020-11-26 16:09:18', 'chengjiao1', 'chengjiao1', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/chengjiao1', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1331878107552010242', '1331503965770223616', 'admin', NULL, '2020-11-26 16:31:01', '2020-11-26 16:31:01', 'zhuangxiu', 'zhuangxiu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/zhuangxiu', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1331916030221602818', '1331503965770223616', 'admin', NULL, '2020-11-26 19:01:42', '2020-11-26 19:01:42', 'btchanquan', 'btchanquan', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/btchanquan', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1331919172472524801', '1331503965770223616', 'admin', NULL, '2020-11-26 19:14:11', '2020-11-26 19:14:11', 'huxingxiaoshou', 'huxingxiaoshou', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/huxingxiaoshou', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1331922734933987329', '1331503965770223616', 'admin', NULL, '2020-11-26 19:28:21', '2020-11-26 19:28:21', 'fangyuan', 'fangyuan', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/fangyuan', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1331926127597441025', '1331503965770223616', 'admin', NULL, '2020-11-26 19:41:49', '2020-11-26 19:41:49', 'qingkuang', 'qingkuang', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/qingkuang', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1334390762455965697', '1334378897302753280', 'admin', NULL, '2021-01-06 11:43:35', '2021-01-06 11:43:35', 'quyuxiaoshou', 'quyuxiaoshou', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/quyuxiaoshou', '0', '1', '1', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1334440263732436994', '1334420681185566722', 'admin', NULL, '2021-01-04 21:28:19', '2021-01-04 21:28:19', 'laiyuan', 'laiyuan', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/laiyuan', '0', '1', '1', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1334465135435063298', '1334457419857793024', 'admin', NULL, '2021-01-04 21:29:28', '2021-01-04 21:29:28', 'xiaoshou', 'xiaoshou', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/xiaoshou', '0', '1', '1', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1334708015269490689', '1334696790477377536', 'admin', NULL, '2021-01-04 21:30:29', '2021-01-04 21:30:29', 'shouru', 'shouru', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/shouru', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1334763434197200897', '1334757703079301120', 'admin', NULL, '2020-12-04 15:40:31', '2020-12-04 15:40:31', 'chejian', 'chejian', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/chejian', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('1338756341933543425', '1338744112815411200', 'admin', NULL, '2021-02-02 19:20:56', '2021-02-02 19:20:56', 'jdcx', 'jdcx', '0', NULL, 'select * from rep_demo_dxtj', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '0', '', 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('22f025b781ee9fe4746438621e82674f', '01a1e07ed4b12348b29d5a47ac7f0228', 'admin', NULL, '2020-12-14 16:21:09', '2020-12-14 16:21:09', 'xiaoshou', 'xiaoshou', '0', NULL, 'select * from rep_demo_xiaoshou where s_id=\'${id}\'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '1', NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('2324fac242b35938678a05bbbba345e2', '7acddbc92bc73d06c7f62ff55dfdca19', 'admin', NULL, '2021-01-11 14:25:45', '2021-01-11 14:25:45', 'xiaoshou', 'xiaoshou', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/xiaoshou?pageNo=\'${pageNo}\'&pageSize=\'${pageSize}\'', '0', '1', '1', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('28e0b01cc3e2b0d361107661527bfdff', '6df599d933df24de007764d0e98eb105', 'admin', NULL, '2020-12-04 16:53:38', '2020-12-04 16:53:38', 'yaopin', 'yaopin', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/chufangjian', '0', '0', '0', NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('4af57d343f1d6521b71b85097b580786', '1347459370216198144', 'admin', NULL, '2021-01-08 17:26:57', '2021-01-08 17:26:57', 'tmp_report_data_income', '来源收入统计', '0', NULL, 'select * from tmp_report_data_income', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '1', '', 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('4dc208eb92fd1a84ef7b4723251e3e51', '5485950d88c9918d03dece2ad24b4d72', 'admin', NULL, '2021-01-08 16:24:16', '2021-01-08 16:24:16', 'tmp_report_data_1', '年度佣金收入', '0', NULL, 'select monty,main_income,total,his_lowest,his_average,his_highest from tmp_report_data_1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '0', '', 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('537477711022567424', '537446834339098624', 'admin', 'admin', '2021-04-01 05:54:42', '2021-04-01 05:54:42', 'yy', 'yy', '0', NULL, 'select * from rep_demo_dxtj', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '1', '', 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('537478337278291968', '537446834339098624', 'admin', 'admin', '2021-04-01 05:54:37', '2021-04-01 05:54:37', 'tt', 'tt', '0', NULL, 'select * from SYS_DATA_LOG', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '0', '26d21fe4f27920d2f56abc8d90a8e527', 'ORACLE', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('537478706314129408', '537446834339098624', 'admin', 'admin', '2021-04-01 05:56:44', '2021-04-01 05:56:44', 'pp', 'pp', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/caigou', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574873661957337088', '574873661613404160', 'admin', NULL, '2021-07-13 10:29:32', '2021-01-08 10:36:58', 'yuangongjiben', 'yuangongjiben', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/yuangongjiben', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574873663005913088', '574873661613404160', 'admin', NULL, '2021-07-13 10:29:32', '2021-01-11 14:38:14', 'xueli', 'xueli', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/xueli', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574873663161102336', '574873661613404160', 'admin', NULL, '2021-07-13 10:29:32', '2021-01-08 10:40:31', 'uu', 'uu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/gongzuojingli', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574873663341457408', '574873661613404160', 'admin', NULL, '2021-07-13 10:29:32', '2021-01-05 15:33:58', 'zhengshu', 'zhengshu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/zhengshu', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574873663500840960', '574873661613404160', 'admin', NULL, '2021-07-13 10:29:32', '2021-01-05 15:33:58', 'jtcy', 'jtcy', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/jtcy', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574873663693778944', '574873661613404160', 'admin', NULL, '2021-07-13 10:29:32', '2021-01-05 15:33:58', 'jiangli', 'jiangli', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/jiangli', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574875722388205568', '574875722233016320', 'admin', NULL, '2021-07-13 10:37:43', '2021-01-08 10:47:52', 'tt', 'tt', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/shixi', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574875730650984448', '574875730525155328', 'admin', NULL, '2021-07-13 10:37:45', '2021-01-08 10:36:58', 'yuangongjiben', 'yuangongjiben', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/yuangongjiben', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574875731594702848', '574875730525155328', 'admin', NULL, '2021-07-13 10:37:45', '2021-01-11 14:38:14', 'xueli', 'xueli', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/xueli', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574875731737309184', '574875730525155328', 'admin', NULL, '2021-07-13 10:37:45', '2021-01-08 10:40:31', 'uu', 'uu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/gongzuojingli', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574875731867332608', '574875730525155328', 'admin', NULL, '2021-07-13 10:37:45', '2021-01-05 15:33:58', 'zhengshu', 'zhengshu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/zhengshu', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574875731997356032', '574875730525155328', 'admin', NULL, '2021-07-13 10:37:45', '2021-01-05 15:33:58', 'jtcy', 'jtcy', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/jtcy', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('574875732131573760', '574875730525155328', 'admin', NULL, '2021-07-13 10:37:45', '2021-01-05 15:33:58', 'jiangli', 'jiangli', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/jiangli', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('6011955e58d89040fca52e7f962d0bf4', '961455b47c0b86dc961e90b5893bff05', 'admin', NULL, '2021-01-04 20:47:07', '2021-01-04 20:47:07', 'gongsi', 'gongsi', '0', NULL, 'select * from rep_demo_gongsi where id=\'${id}\'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '0', '0', '', 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('60b3feffadc55eb49baa5a48fdf1ff0e', '1352160857479581696', 'admin', NULL, '2021-01-29 18:36:35', '2021-01-29 18:36:35', 'infoForReport', '信息', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://localhost:8080/jeecg-boot/sys/actuator/redis/infoForReport', '0', '1', '1', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('629609c4d540cb4675e9064af8955296', '7c02c224a2db56d0350069650033f702', 'admin', NULL, '2021-02-02 19:33:09', '2021-02-02 19:33:09', 'hecha', 'hecha', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/hecha', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('654609e4247a0469e0b2befbc69b00f9', '1cd9d574d0c42f3915046dc61d9f33bd', 'admin', NULL, '2020-12-17 16:42:21', '2020-12-17 19:50:14', 'xiaoshoue', '销售额', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/xiaoshoue', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('6a1d22ca4c95e8fab655d3ceed43a84d', '1352160857479581696', 'admin', NULL, '2021-01-29 18:36:42', '2021-01-29 18:36:42', 'memoryForReport', '内存', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://localhost:8080/jeecg-boot/sys/actuator/redis/memoryForReport', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('7911bd189c2d53e182693bd599a315a2', '1cd9d574d0c42f3915046dc61d9f33bd', 'admin', NULL, '2020-12-17 16:59:12', '2020-12-17 19:50:14', 'chengshi', '城市', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/chengshi', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('7b20679054449c554cde856ef24126ab', '1347454742040809472', 'admin', NULL, '2021-01-08 16:24:16', '2021-01-08 16:24:16', 'tmp_report_data_1', '年度佣金收入', '0', NULL, 'select monty,main_income,total,his_lowest,his_average,his_highest from tmp_report_data_1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '0', '', 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('94bcd8202bc6bc467efd0d679dadd7bb', '1338370016550195200', 'admin', 'admin', '2021-07-12 12:15:08', '2021-07-12 12:15:08', 'tm', 'tm', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/tiaoma1', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('9b75c161322e0b7e29b3ffc84239a72c', '1cd9d574d0c42f3915046dc61d9f33bd', 'admin', NULL, '2020-12-17 17:13:21', '2020-12-17 19:50:14', 'xsjd', '销售进度', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/xsjd', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('9b7d28336b01f9a6b1a613957c3d7cda', '1338769064067076098', 'admin', NULL, '2021-02-02 19:12:55', '2021-02-02 19:12:55', 'pop', 'pop', '0', NULL, 'select * from rep_demo_dxtj', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '0', '', 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('a543d8dd40f4d26839b78bd604be659e', 'f5f275b5e28b45256ef24587ec792f0c', 'admin', NULL, '2021-01-08 17:26:57', '2021-01-08 17:26:57', 'tmp_report_data_income', '来源收入统计', '0', NULL, 'select * from tmp_report_data_income', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '1', '', 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('bbc5d5ab143d59f0beab484682361aa5', 'dd482bfd6ca470a0f49d9bb4e61ec694', 'admin', NULL, '2021-01-08 10:47:52', '2021-01-08 10:47:52', 'tt', 'tt', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/shixi', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('c9bdb6b7ac68accfecb366718bf78f79', '01a1e07ed4b12348b29d5a47ac7f0228', 'admin', NULL, '2020-09-28 10:18:07', '2020-12-14 16:21:09', 'gongsi', 'gongsi', '0', NULL, 'select * from rep_demo_gongsi where id=\'${id}\'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '0', '0', NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('d4a29dfda94357308faf62be2b94db08', '1352160857479581696', 'admin', NULL, '2021-01-29 18:36:47', '2021-01-29 18:36:47', 'keysSizeForReport', '数量', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://localhost:8080/jeecg-boot/sys/actuator/redis/keysSizeForReport', '0', '1', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('e0fe1d693625c906c1171d7de706a47c', '6df599d933df24de007764d0e98eb105', NULL, NULL, '2020-07-17 10:49:42', NULL, 'yonghu', 'yonghu', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/yonghu', '0', '0', NULL, NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('e4cec9ff15bc0ea42f536a442a6d1335', '961455b47c0b86dc961e90b5893bff05', 'admin', NULL, '2021-01-04 20:42:17', '2021-01-04 20:42:17', 'jianpiao', 'jianpiao', '0', NULL, 'select * from rep_demo_jianpiao where s_id=\'${id}\'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1', '1', NULL, 'MYSQL', NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('f7649b77cfc9e0a9dacdac370cd4036b', '1347373863746539520', 'admin', NULL, '2021-01-08 10:47:52', '2021-01-08 10:47:52', 'tt', 'tt', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/baobiao/shixi', '0', '0', '0', '', NULL, NULL, NULL); +INSERT INTO `jimu_report_db` VALUES ('fb70a91730f087f8023afd88d24f9697', '1cd9d574d0c42f3915046dc61d9f33bd', 'admin', NULL, '2020-12-17 19:50:14', '2020-12-17 19:50:14', 'zhexian', 'zhexian', '1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://api.jeecg.com/mock/26/zhexian', '0', '1', '1', '', NULL, NULL, NULL); + +-- ---------------------------- +-- Table structure for jimu_report_db_field +-- ---------------------------- +DROP TABLE IF EXISTS `jimu_report_db_field`; +CREATE TABLE `jimu_report_db_field` ( + `id` varchar(36) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'id', + `create_by` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建人登录名称', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建日期', + `update_by` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '更新人登录名称', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新日期', + `jimu_report_db_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '数据源ID', + `field_name` varchar(80) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字段名', + `field_text` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字段文本', + `widget_type` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '控件类型', + `widget_width` int(10) NULL DEFAULT NULL COMMENT '控件宽度', + `order_num` int(3) NULL DEFAULT NULL COMMENT '排序', + `search_flag` int(3) NULL DEFAULT 0 COMMENT '查询标识0否1是 默认0', + `search_mode` int(3) NULL DEFAULT NULL COMMENT '查询模式1简单2范围', + `dict_code` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字典编码支持从表中取数据', + `search_value` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '查询默认值', + `search_format` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '查询时间格式化表达式', + `ext_json` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '参数配置', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_jrdf_jimu_report_db_id`(`jimu_report_db_id`) USING BTREE, + INDEX `idx_dbfield_order_num`(`order_num`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of jimu_report_db_field +-- ---------------------------- +INSERT INTO `jimu_report_db_field` VALUES ('00a67b539ac15446c1bd658104e1020a', NULL, '2020-07-21 15:17:10', NULL, NULL, 'c9bdb6b7ac68accfecb366718bf78f79', 'gdata', 'gdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('014179e260e0adf1706c616a3ad6e552', NULL, '2021-01-08 16:10:28', NULL, NULL, '7b20679054449c554cde856ef24126ab', 'main_income', 'main_income', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('01cb1f61f836aae43bca333dbaf293be', NULL, '2021-01-11 14:38:14', NULL, NULL, '1317006713165049858', 'zhuanye', 'zhuanye', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('0470c07d386940053253fe8a8c200225', NULL, '2021-01-08 16:29:02', NULL, NULL, '4af57d343f1d6521b71b85097b580786', 'chengbao_gz_money', 'chengbao_gz_money', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('0680555456f0e579a0065c4ca5dd8d06', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'id', 'id', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('06b24135f3670ea4f4c7f554d2521a39', NULL, '2021-01-08 16:29:02', NULL, NULL, 'a543d8dd40f4d26839b78bd604be659e', 'biz_income', 'biz_income', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('08e22bbf63e81198c0d2585dce8ee8f9', NULL, '2021-02-02 19:10:15', NULL, NULL, '9b7d28336b01f9a6b1a613957c3d7cda', 'jperson', 'jperson', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('0c82931edb766ad89ead9e98a998d43f', NULL, '2021-01-11 14:38:14', NULL, NULL, '1317006713165049858', 'kdate', 'kdate', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('0c9f65f5f754f1251070f51a2a19905d', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'hname', 'hname', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('0fb03c8e2330e051564f3dd1de54512f', NULL, '2021-01-11 14:38:14', NULL, NULL, '1317006713165049858', 'jstudent', 'jstudent', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('10e61155dcf655d7843ebc01cc90c8b1', NULL, '2021-01-08 16:10:28', NULL, NULL, '7b20679054449c554cde856ef24126ab', 'total', 'total', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('115c1ac01462ca1fbecb3c0a55218395', NULL, '2021-01-08 16:10:28', NULL, NULL, '7b20679054449c554cde856ef24126ab', 'his_highest', 'his_highest', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('11713370900fa3c1455cac7e8db61fe1', NULL, '2021-01-08 10:47:52', NULL, NULL, 'bbc5d5ab143d59f0beab484682361aa5', 'pingjia', 'pingjia', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('11d3a082d297adeffecd86690e28cf39', NULL, '2021-01-05 15:09:15', NULL, NULL, '2324fac242b35938678a05bbbba345e2', 'ctotal', 'ctotal', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1260eb03ab66bd12766b2102e343d280', NULL, '2021-01-21 17:07:16', NULL, NULL, '6a1d22ca4c95e8fab655d3ceed43a84d', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1272834907562864641', NULL, '2020-06-16 18:14:25', NULL, NULL, '1272834687525482497', 'id', 'id', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1272834907567058946', NULL, '2020-06-16 18:14:25', NULL, NULL, '1272834687525482497', 'bnum', 'bnum', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1272834907571253250', NULL, '2020-06-16 18:14:25', NULL, NULL, '1272834687525482497', 'ftime', 'ftime', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1272834907571253251', NULL, '2020-06-16 18:14:25', NULL, NULL, '1272834687525482497', 'sfkong', 'sfkong', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1272834907571253252', NULL, '2020-06-16 18:14:25', NULL, NULL, '1272834687525482497', 'kaishi', 'kaishi', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1272834907571253253', NULL, '2020-06-16 18:14:25', NULL, NULL, '1272834687525482497', 'jieshu', 'jieshu', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1272834907571253254', NULL, '2020-06-16 18:14:25', NULL, NULL, '1272834687525482497', 'hezairen', 'hezairen', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1272834907571253255', NULL, '2020-06-16 18:14:25', NULL, NULL, '1272834687525482497', 'jpnum', 'jpnum', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1272834907575447554', NULL, '2020-06-16 18:14:25', NULL, NULL, '1272834687525482497', 'shihelv', 'shihelv', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016175415297', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'yphone', 'yphone', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016183803906', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'yzhenliao', 'yzhenliao', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016187998209', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'ysex', 'ysex', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016192192513', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'danwei', 'danwei', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016196386818', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'kdata', 'kdata', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016204775425', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'yname', 'yname', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016208969729', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'yprice', 'yprice', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016213164033', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'ytotal', 'ytotal', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016217358337', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'yishe', 'yishe', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016221552641', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'yizhu', 'yizhu', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016225746946', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'yage', 'yage', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1283957016229941249', NULL, '2020-07-17 10:49:42', NULL, NULL, '1283957016150249473', 'yjieguo', 'yjieguo', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155649130497', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'xtype', 'xtype', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155686879234', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'danyuan', 'danyuan', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155691073538', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'chanquan', 'chanquan', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155695267841', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'zhuzhi', 'zhuzhi', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155699462145', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'fujian', 'fujian', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155707850754', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'didian', 'didian', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155707850755', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'type', 'type', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155712045058', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'suoyou', 'suoyou', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155716239361', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'name', 'name', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155716239362', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'bianhao', 'bianhao', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155720433666', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'yname', 'yname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155720433667', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'riqi', 'riqi', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155724627969', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'beizhu', 'beizhu', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155728822274', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'time', 'time', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285150155728822275', NULL, '2020-07-20 17:50:49', NULL, NULL, '1284070508744257537', 'mianji', 'mianji', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285159608326889474', 'admin', '2021-04-01 02:44:48', NULL, NULL, '1285157606524002305', 'fsex', 'fsex', 'string', NULL, NULL, 0, NULL, 'sex', NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285159608335278082', 'admin', '2021-04-01 02:44:48', NULL, NULL, '1285157606524002305', 'fname', 'fname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285159608339472385', 'admin', '2021-04-01 02:44:48', NULL, NULL, '1285157606524002305', 'shiqing', 'shiqing', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285159608339472386', 'admin', '2021-04-01 02:44:48', NULL, NULL, '1285157606524002305', 'pname', 'pname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285159608339472387', 'admin', '2021-04-01 02:44:48', NULL, NULL, '1285157606524002305', 'zhuzhi', 'zhuzhi', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285159608339472388', 'admin', '2021-04-01 02:44:48', NULL, NULL, '1285157606524002305', 'gdata', 'gdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285159608343666690', 'admin', '2021-04-01 02:44:48', NULL, NULL, '1285157606524002305', 'cdata', 'cdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285164420749664258', NULL, '2020-07-20 18:47:30', NULL, NULL, '1285164420728692737', 'shiqing', 'shiqing', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285164420753858561', NULL, '2020-07-20 18:47:30', NULL, NULL, '1285164420728692737', 'name', 'name', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285164420758052866', NULL, '2020-07-20 18:47:30', NULL, NULL, '1285164420728692737', 'gdata', 'gdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285164420758052867', NULL, '2020-07-20 18:47:30', NULL, NULL, '1285164420728692737', 'value', 'value', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285164420758052868', NULL, '2020-07-20 18:47:30', NULL, NULL, '1285164420728692737', 'percent', 'percent', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285164420762247169', NULL, '2020-07-20 18:47:30', NULL, NULL, '1285164420728692737', 'tdata', 'tdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919124803585', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'ktime', 'ktime', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919133192193', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'danwei', 'danwei', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919133192194', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'wtime', 'wtime', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919133192195', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'yusuan', 'yusuan', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919133192196', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'dshenhe', 'dshenhe', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919133192197', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'zhuren', 'zhuren', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919137386498', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'neirong', 'neirong', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919137386499', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'yijian', 'yijian', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919137386500', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'time1', 'time1', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919137386501', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'time2', 'time2', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919137386502', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'time3', 'time3', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919141580801', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'time4', 'time4', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919141580802', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'pingjia', 'pingjia', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919141580803', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'name', 'name', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919141580804', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'bianhao', 'bianhao', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919141580805', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'zongjie', 'zongjie', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919145775105', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'nengli', 'nengli', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285178919145775106', NULL, '2020-07-20 19:45:06', NULL, NULL, '1285178919099637762', 'time', 'time', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285473875810967553', NULL, '2020-07-21 15:17:10', NULL, NULL, '1273495682564534273', 'id', 'id', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285473875823550466', NULL, '2020-07-21 15:17:10', NULL, NULL, '1273495682564534273', 'gname', 'gname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285473875823550467', NULL, '2020-07-21 15:17:10', NULL, NULL, '1273495682564534273', 'gdata', 'gdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285473875823550468', NULL, '2020-07-21 15:17:10', NULL, NULL, '1273495682564534273', 'tdata', 'tdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285473875827744769', NULL, '2020-07-21 15:17:10', NULL, NULL, '1273495682564534273', 'didian', 'didian', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285473875827744770', NULL, '2020-07-21 15:17:10', NULL, NULL, '1273495682564534273', 'zhaiyao', 'zhaiyao', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1285473875827744771', NULL, '2020-07-21 15:17:10', NULL, NULL, '1273495682564534273', 'num', 'num', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288038655394324482', 'admin', '2021-04-01 03:09:40', NULL, NULL, '1288038655293661186', 'ctotal', '库存量', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288038655402713090', 'admin', '2021-04-01 03:09:40', NULL, NULL, '1288038655293661186', 'cname', '产品名称', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288038655406907393', 'admin', '2021-04-01 03:09:40', NULL, NULL, '1288038655293661186', 'cprice', '单价', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288038655411101697', 'admin', '2021-04-01 03:09:40', NULL, NULL, '1288038655293661186', 'dtotal', '订购量', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288038655411101698', 'admin', '2021-04-01 03:09:40', NULL, NULL, '1288038655293661186', 'tp', '库存总值', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288038655415296002', 'admin', '2021-04-01 03:09:40', NULL, NULL, '1288038655293661186', 'ztotal', '二次订购量', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288038655415296003', 'admin', '2021-04-01 03:09:40', NULL, NULL, '1288038655293661186', 'cnum', '产品数量', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290843074561', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'id', 'id', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290847268865', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'hnum', 'hnum', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290851463170', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'hname', 'hname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290851463171', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'xinghao', 'xinghao', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290851463172', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'fahuocangku', 'fahuocangku', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290851463173', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'danwei', 'danwei', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290851463174', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'num', 'num', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290851463175', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'danjia', 'danjia', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290851463176', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'zhekoulv', 'zhekoulv', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290855657473', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'xiaoshoujine', 'xiaoshoujine', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290859851778', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 'beizhu', 'beizhu', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1288048290859851779', NULL, '2020-07-28 17:46:58', NULL, NULL, '1272858455908073473', 's_id', 's_id', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1290104038439886849', NULL, '2020-08-03 09:55:46', NULL, NULL, '1290104038414721025', 'id', 'id', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1290104038448275458', NULL, '2020-08-03 09:55:46', NULL, NULL, '1290104038414721025', 'gname', 'gname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1290104038448275459', NULL, '2020-08-03 09:55:46', NULL, NULL, '1290104038414721025', 'gdata', 'gdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1290104038448275460', NULL, '2020-08-03 09:55:46', NULL, NULL, '1290104038414721025', 'tdata', 'tdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1290104038452469761', NULL, '2020-08-03 09:55:46', NULL, NULL, '1290104038414721025', 'didian', 'didian', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1290104038452469762', NULL, '2020-08-03 09:55:46', NULL, NULL, '1290104038414721025', 'zhaiyao', 'zhaiyao', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1290104038452469763', NULL, '2020-08-03 09:55:46', NULL, NULL, '1290104038414721025', 'num', 'num', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317007979534479361', NULL, '2020-10-16 15:42:26', NULL, NULL, '1317007979484147714', 'zmphone', 'zmphone', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317007979534479362', NULL, '2020-10-16 15:42:26', NULL, NULL, '1317007979484147714', 'jstudent', 'jstudent', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317007979534479363', NULL, '2020-10-16 15:42:26', NULL, NULL, '1317007979484147714', 'kdate', 'kdate', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317007979534479364', NULL, '2020-10-16 15:42:26', NULL, NULL, '1317007979484147714', 'jdate', 'jdate', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317007979534479365', NULL, '2020-10-16 15:42:26', NULL, NULL, '1317007979484147714', 'zmname', 'zmname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317009166149218305', NULL, '2020-10-16 15:47:09', NULL, NULL, '1317009166140829698', 'zcname', 'zcname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317009166149218306', NULL, '2020-10-16 15:47:09', NULL, NULL, '1317009166140829698', 'danwei', 'danwei', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317009166149218307', NULL, '2020-10-16 15:47:09', NULL, NULL, '1317009166140829698', 'fdate', 'fdate', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317009166149218308', NULL, '2020-10-16 15:47:09', NULL, NULL, '1317009166140829698', 'jibie', 'jibie', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317009166149218309', NULL, '2020-10-16 15:47:09', NULL, NULL, '1317009166140829698', 'beizhu', 'beizhu', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317013474643144706', NULL, '2020-10-16 16:04:16', NULL, NULL, '1317013474634756097', 'danwei', 'danwei', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317013474643144707', NULL, '2020-10-16 16:04:16', NULL, NULL, '1317013474634756097', 'phone', 'phone', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317013474643144708', NULL, '2020-10-16 16:04:16', NULL, NULL, '1317013474634756097', 'name', 'name', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317013474643144709', NULL, '2020-10-16 16:04:16', NULL, NULL, '1317013474634756097', 'zzmm', 'zzmm', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317013474643144710', NULL, '2020-10-16 16:04:16', NULL, NULL, '1317013474634756097', 'guanxi', 'guanxi', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317013474643144711', NULL, '2020-10-16 16:04:16', NULL, NULL, '1317013474634756097', 'age', 'age', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317015169502670849', NULL, '2020-10-16 16:11:00', NULL, NULL, '1317015169494282241', 'date', 'date', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317015169502670850', NULL, '2020-10-16 16:11:00', NULL, NULL, '1317015169494282241', 'mingcheng', 'mingcheng', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1317015169502670851', NULL, '2020-10-16 16:11:00', NULL, NULL, '1317015169494282241', 'didian', 'didian', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331511745855926274', NULL, '2020-11-25 16:15:13', NULL, NULL, '1331511745851731969', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331511745855926275', NULL, '2020-11-25 16:15:13', NULL, NULL, '1331511745851731969', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331511745855926276', NULL, '2020-11-25 16:15:13', NULL, NULL, '1331511745851731969', 'type', 'type', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331514838215602178', NULL, '2020-11-25 16:27:30', NULL, NULL, '1331514838211407873', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331514838215602179', NULL, '2020-11-25 16:27:30', NULL, NULL, '1331514838211407873', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331514838215602180', NULL, '2020-11-25 16:27:30', NULL, NULL, '1331514838211407873', 'type', 'type', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331514935032721409', NULL, '2020-11-25 16:27:54', NULL, NULL, '1331514935028527106', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331514935032721410', NULL, '2020-11-25 16:27:54', NULL, NULL, '1331514935028527106', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331514935032721411', NULL, '2020-11-25 16:27:54', NULL, NULL, '1331514935028527106', 'type', 'type', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331872643539914754', NULL, '2020-11-26 16:09:18', NULL, NULL, '1331872643531526146', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331872643539914755', NULL, '2020-11-26 16:09:18', NULL, NULL, '1331872643531526146', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331872643539914756', NULL, '2020-11-26 16:09:18', NULL, NULL, '1331872643531526146', 'type', 'type', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331878107560398849', NULL, '2020-11-26 16:31:01', NULL, NULL, '1331878107552010242', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331878107560398850', NULL, '2020-11-26 16:31:01', NULL, NULL, '1331878107552010242', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331916030229991425', NULL, '2020-11-26 19:01:42', NULL, NULL, '1331916030221602818', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331916030229991426', NULL, '2020-11-26 19:01:42', NULL, NULL, '1331916030221602818', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331916030229991427', NULL, '2020-11-26 19:01:42', NULL, NULL, '1331916030221602818', 'type', 'type', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331919172480913409', NULL, '2020-11-26 19:14:11', NULL, NULL, '1331919172472524801', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331919172480913410', NULL, '2020-11-26 19:14:11', NULL, NULL, '1331919172472524801', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331922734942375938', NULL, '2020-11-26 19:28:21', NULL, NULL, '1331922734933987329', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331922734942375939', NULL, '2020-11-26 19:28:21', NULL, NULL, '1331922734933987329', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331926127605829634', NULL, '2020-11-26 19:41:49', NULL, NULL, '1331926127597441025', 'cjl', 'cjl', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331926127605829635', NULL, '2020-11-26 19:41:49', NULL, NULL, '1331926127597441025', 'cjje', 'cjje', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331926127605829636', NULL, '2020-11-26 19:41:49', NULL, NULL, '1331926127597441025', 'xsmj', 'xsmj', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331926127605829637', NULL, '2020-11-26 19:41:49', NULL, NULL, '1331926127597441025', 'cjjj', 'cjjj', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331926127605829638', NULL, '2020-11-26 19:41:49', NULL, NULL, '1331926127597441025', 'sfyj', 'sfyj', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1331926127605829639', NULL, '2020-11-26 19:41:49', NULL, NULL, '1331926127597441025', 'ydkh', 'ydkh', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825602', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'class', 'class', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825603', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'school', 'school', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825604', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'lv', 'lv', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825605', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'renyuan_jy', 'renyuan_jy', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825606', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'richang_jy', 'richang_jy', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825607', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'biaozhun_jy', 'biaozhun_jy', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825608', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'xinxi_jy', 'xinxi_jy', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825609', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'jichubokuan_jy', 'jichubokuan_jy', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825610', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'renyuan_ct', 'renyuan_ct', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825611', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'richang_ct', 'richang_ct', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825612', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'xiangmu_ct', 'xiangmu_ct', 'String', NULL, 11, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825613', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'jichubokuan_ct', 'jichubokuan_ct', 'String', NULL, 12, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825614', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'xiangmu_sh', 'xiangmu_sh', 'String', NULL, 13, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825615', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'jichubokuan_sh', 'jichubokuan_sh', 'String', NULL, 14, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825616', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'diannao', 'diannao', 'String', NULL, 15, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334440263740825617', NULL, '2020-12-03 18:12:06', NULL, NULL, '1334440263732436994', 'xiaoyuanwang', 'xiaoyuanwang', 'String', NULL, 16, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135443451905', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'diqu', 'diqu', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135443451906', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'class', 'class', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135443451907', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_11', 'sales_11', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135443451908', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_12', 'sales_12', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135443451909', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_13', 'sales_13', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135443451910', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_14', 'sales_14', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135443451911', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_15', 'sales_15', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135443451912', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_16', 'sales_16', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135443451913', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_17', 'sales_17', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646210', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_18', 'sales_18', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646211', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_19', 'sales_19', 'String', NULL, 11, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646212', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_20', 'sales_20', 'String', NULL, 12, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646213', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_21', 'sales_21', 'String', NULL, 13, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646214', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_22', 'sales_22', 'String', NULL, 14, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646215', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_31', 'sales_31', 'String', NULL, 15, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646216', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_32', 'sales_32', 'String', NULL, 16, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646217', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_33', 'sales_33', 'String', NULL, 17, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646218', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_34', 'sales_34', 'String', NULL, 18, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646219', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_35', 'sales_35', 'String', NULL, 19, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646220', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_36', 'sales_36', 'String', NULL, 20, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646221', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_37', 'sales_37', 'String', NULL, 21, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646222', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_38', 'sales_38', 'String', NULL, 22, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646223', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_39', 'sales_39', 'String', NULL, 23, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646224', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_40', 'sales_40', 'String', NULL, 24, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646225', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_41', 'sales_41', 'String', NULL, 25, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334465135447646226', NULL, '2020-12-03 19:50:56', NULL, NULL, '1334465135435063298', 'sales_42', 'sales_42', 'String', NULL, 26, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015277879297', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'city', 'city', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073601', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'school', 'school', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073602', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'ncnum', 'ncnum', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073603', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'num', 'num', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073604', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'name', 'name', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073605', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'class', 'class', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073606', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'pay', 'pay', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073607', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'paytime', 'paytime', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073608', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'payclass', 'payclass', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073609', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'pay1', 'pay1', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073610', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'paymoth', 'paymoth', 'String', NULL, 11, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073611', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'pay2', 'pay2', 'String', NULL, 12, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073612', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'tuition_09', 'tuition_09', 'String', NULL, 13, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073613', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'meals_09', 'meals_09', 'String', NULL, 14, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073614', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'busfee_09', 'busfee_09', 'String', NULL, 15, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073615', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'tuition_10', 'tuition_10', 'String', NULL, 16, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073616', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'meals_10', 'meals_10', 'String', NULL, 17, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334708015282073617', NULL, '2020-12-04 11:56:03', NULL, NULL, '1334708015269490689', 'busfee_10', 'busfee_10', 'String', NULL, 18, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504126402561', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'city', 'city', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596866', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'finish', 'finish', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596867', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'semifinish', 'semifinish', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596868', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'time', 'time', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596869', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'state', 'state', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596870', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'attribute', 'attribute', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596871', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'num', 'num', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596872', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'gnum', 'gnum', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596873', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'jnum', 'jnum', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596874', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'wnum', 'wnum', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596875', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'uph', 'uph', 'String', NULL, 11, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596876', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'hc', 'hc', 'String', NULL, 12, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596877', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'jtime', 'jtime', 'String', NULL, 13, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596878', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'yield', 'yield', 'String', NULL, 14, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334764504130596879', NULL, '2020-12-04 15:40:31', NULL, NULL, '1334763434197200897', 'beizhu', 'beizhu', 'String', NULL, 15, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334782903430754305', NULL, '2020-12-04 16:53:38', NULL, NULL, '1283730831482937345', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334782903430754306', NULL, '2020-12-04 16:53:38', NULL, NULL, '1283730831482937345', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334782903430754307', NULL, '2020-12-04 16:53:38', NULL, NULL, '1283730831482937345', 'key1', 'key1', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334782903430754308', NULL, '2020-12-04 16:53:38', NULL, NULL, '1283730831482937345', 'key2', 'key2', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334782903430754309', NULL, '2020-12-04 16:53:38', NULL, NULL, '1283730831482937345', 'key3', 'key3', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334782903430754310', NULL, '2020-12-04 16:53:38', NULL, NULL, '1283730831482937345', 'key4', 'key4', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334782903430754311', NULL, '2020-12-04 16:53:38', NULL, NULL, '1283730831482937345', 'key5', 'key5', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334782903430754312', NULL, '2020-12-04 16:53:38', NULL, NULL, '1283730831482937345', 'key6', 'key6', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334782903430754313', NULL, '2020-12-04 16:53:38', NULL, NULL, '1283730831482937345', 'key7', 'key7', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1334782903430754314', NULL, '2020-12-04 16:53:38', NULL, NULL, '1283730831482937345', 'percent', 'percent', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('141dc952421a55e66fcddb94adddc48b', NULL, '2021-02-02 19:10:15', NULL, NULL, '9b7d28336b01f9a6b1a613957c3d7cda', 'sex', '性别', 'String', NULL, 10, 1, 1, 'sex', NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('15eb0c90635e9b9427a6e0a2d87f31b6', NULL, '2021-01-08 16:29:02', NULL, NULL, 'a543d8dd40f4d26839b78bd604be659e', 'chengbao_gz_money', 'chengbao_gz_money', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('16cca55134a7951fe6724e5d98787498', NULL, '2021-01-05 15:09:15', NULL, NULL, '2324fac242b35938678a05bbbba345e2', 'yprice', 'yprice', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('175e76d9da7c88d8c2c0d7708b308e6c', NULL, '2020-12-04 16:53:38', NULL, NULL, '28e0b01cc3e2b0d361107661527bfdff', 'key7', 'key7', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('17a278c53299d1342c56a8eb1614a44e', 'admin', '2021-04-01 03:09:23', NULL, NULL, '1289140698221678593', 'ctime', 'ctime', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('19e6fe3dc95b352d97f460648dc93e15', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'proportion_z', 'proportion_z', 'String', NULL, 23, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1a1487eb23cc0008b933537c69d51bd9', NULL, '2021-01-05 15:09:15', NULL, NULL, '2324fac242b35938678a05bbbba345e2', 'cname', 'cname', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1aee61147ee0eb946574db960bc77aec', NULL, '2021-01-08 10:47:52', NULL, NULL, 'bbc5d5ab143d59f0beab484682361aa5', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1b09540b3d8deddc06ebdbec26f6ae87', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'political', 'political', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1b6fbe11728a1c4633eeea8ffb12bc25', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'update_by', 'update_by', 'String', NULL, 30, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1c649cbddf0506464e08ae84c20ea20d', NULL, '2021-01-21 18:00:57', NULL, NULL, '60b3feffadc55eb49baa5a48fdf1ff0e', 'key', 'key', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1d21c72184f2e06ca1be3dc95fbcc259', NULL, '2021-01-11 14:38:14', NULL, NULL, '1317006713165049858', 'zhiwu', 'zhiwu', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1d4cc138f277f5d78e1fe3f5241db7f2', NULL, '2021-01-08 16:29:02', NULL, NULL, 'a543d8dd40f4d26839b78bd604be659e', 'tb_zx_money', 'tb_zx_money', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1ee3018b4d0c305e2c06f77e1e5f3c4c', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'sales_3', 'sales_3', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('1fac3f8219222b8963dc6b85870ffd86', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'telphone', 'telphone', NULL, NULL, 16, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('21f7de0326129dbbbc03d64aceb4d3f7', 'admin', '2021-04-01 03:09:23', NULL, NULL, '1289140698221678593', 'yprice', 'yprice', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('2309090975648b8765ef36ff16c09270', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'danwei', 'danwei', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('2330620c6a26ff9e2840fcdcb2fd22af', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'yphone', 'yphone', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('240f3415fa8e7b3876c0b422d468c90d', NULL, '2020-08-03 09:55:46', NULL, NULL, '6011955e58d89040fca52e7f962d0bf4', 'gname', 'gname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('26ee0ad4aea9dcd4604f98ea168aa1be', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'xiaoshoujine', 'xiaoshoujine', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('27bd70e2e4a08009edf64fac0fba5119', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'yizhu', 'yizhu', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('284f03aead3848cf0994f71a64ce1eba', NULL, '2020-12-04 16:53:38', NULL, NULL, '28e0b01cc3e2b0d361107661527bfdff', 'key1', 'key1', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('29fcb4292d4782888e9fd0496bd8ddc8', 'admin', '2021-04-01 03:09:23', NULL, NULL, '1289140698221678593', 'id', 'id', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('2a20af47c214fc8ad9570c9c6ba585c2', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'yzhenliao', 'yzhenliao', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('2a3b35b4830f1b1eff84a5a9bceed0b6', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'gift_z', 'gift_z', 'String', NULL, 22, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('2a613408420925ed9cf9618eb77a05cf', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'yage', 'yage', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('2baefff331206f29a9c3bf895982473a', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'kdata', 'kdata', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('2be25d6c7e3ac28abec99854618d0e3d', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'birthday', 'birthday', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('2f94a4be25426f3f4013c50103559969', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'sales_4', 'sales_4', 'String', NULL, 12, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('30034c384d47b0193e04b19b3068b89b', NULL, '2020-12-04 16:53:38', NULL, NULL, '28e0b01cc3e2b0d361107661527bfdff', 'key4', 'key4', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('30f8183ff4ec5a6b30724a1da7fbbed0', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'pworktime', 'pworktime', NULL, NULL, 18, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('30fc020c8d14776e96350edb479f40ac', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'zhuzhi', 'zhuzhi', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('31649efb1fbc69009bdbb41f388c7d7f', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'ysex', 'ysex', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('31bd06f8bc201628d8c9c56b29f0621e', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'yjieguo', 'yjieguo', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('32545e398eea7bf89791cc78dd16ab12', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'yhnum', 'yhnum', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('334ffa2aec9300ff712a1f3f3143a4cd', NULL, '2021-01-08 16:29:02', NULL, NULL, '4af57d343f1d6521b71b85097b580786', 'bx_gg_moeny', 'bx_gg_moeny', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('34c933903ddf6ba5bad588d913c487c5', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'gift_4', 'gift_4', 'String', NULL, 13, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('350be7312c299482acfe44fb086f91c1', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'sales_5', 'sales_5', 'String', NULL, 15, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('35c224f8acfb063af6828b31e31f3967', NULL, '2020-12-04 16:53:38', NULL, NULL, '28e0b01cc3e2b0d361107661527bfdff', 'percent', 'percent', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('35d9204189dd1d1f142a7587f89ab46c', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'email', 'email', 'String', NULL, 18, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('37868bf0bad09f6d2084340e0b05333d', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'sf4', 'sf4', 'String', NULL, 18, 0, NULL, 'ttype', NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('38b2955e0ef75d384d0d9ff8417e4945', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'sf3', 'sf3', 'String', NULL, 17, 0, NULL, 'ttype', NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('3c2a8313af79dbecba4c5687b65a66ab', 'admin', '2021-04-01 03:09:23', NULL, NULL, '1289140698221678593', 'cnum', 'cnum', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('3c71c10a0d27796808cb201e30024fe8', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'school', 'school', 'String', NULL, 14, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('3c7597c1efa73ca9400cdc36a9a48e23', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'gift_1', 'gift_1', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('3cd9d09176d10d3225e4fe86b4538739', NULL, '2020-12-17 16:59:12', NULL, NULL, '7911bd189c2d53e182693bd599a315a2', 'type', 'type', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('3d0f4b223f7ada50a7363235ae39e675', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'hnum', 'hnum', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('3ec76a981ff5353d4a65052963166477', NULL, '2020-12-17 17:13:21', NULL, NULL, '9b75c161322e0b7e29b3ffc84239a72c', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('3f5a04060285392287f4e7f6d59988c6', NULL, '2020-08-03 09:55:46', NULL, NULL, '6011955e58d89040fca52e7f962d0bf4', 'tdata', 'tdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('3f7ce1ee2ad20770e64016384f2c1cd5', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'homephone', 'homephone', NULL, NULL, 17, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('42225abb0677e51111a8e9e7b001332c', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'yjine', 'yjine', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('445c1d5a76a45fb0137425d1a51be6d7', NULL, '2021-01-08 16:10:28', NULL, NULL, '4dc208eb92fd1a84ef7b4723251e3e51', 'main_income', 'main_income', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('450316da5f9b7d8505944e16f1284a38', NULL, '2021-01-08 16:10:28', NULL, NULL, '7b20679054449c554cde856ef24126ab', 'monty', 'monty', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('467edbfc6ca934a7a4d600391ed0fb75', NULL, '2021-01-08 16:29:02', NULL, NULL, '4af57d343f1d6521b71b85097b580786', 'bx_jj_yongjin', 'bx_jj_yongjin', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('468acf3a75a559a283e8f424db3ac4a8', NULL, '2020-12-04 16:53:38', NULL, NULL, '28e0b01cc3e2b0d361107661527bfdff', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('46f68d27013cff9b09c5d059c79fbf28', NULL, '2021-02-02 19:10:15', NULL, NULL, '9b7d28336b01f9a6b1a613957c3d7cda', 'gtime', '雇佣时间', 'date', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('472e430a024d9648a7ab8a125419b161', NULL, '2021-01-05 15:09:15', NULL, NULL, '2324fac242b35938678a05bbbba345e2', 'cprice', 'cprice', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('48b03a60cab1f280d4b304da6b27dae2', NULL, '2021-01-05 15:09:15', NULL, NULL, '2324fac242b35938678a05bbbba345e2', 'ctime', 'ctime', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('4942cc4d04ac7330799ecc3fec48ac8b', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'id_card', 'id_card', 'String', NULL, 12, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('49def4afc641cb52775ff03fdba3007a', NULL, '2021-01-08 16:10:28', NULL, NULL, '7b20679054449c554cde856ef24126ab', 'his_lowest', 'his_lowest', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('49fa04e98f2ed62966d7f6141611dd7e', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'children', 'children', NULL, NULL, 24, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('49febadfe1eb3a59bfbe802d506aa590', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'data', 'data', NULL, NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('4b9e347c71a67de7a7a466b07109a101', NULL, '2020-07-21 15:17:10', NULL, NULL, 'c9bdb6b7ac68accfecb366718bf78f79', 'zhaiyao', 'zhaiyao', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('4d782de2bf10be3a79f04e8841053f00', NULL, '2021-01-08 10:47:52', NULL, NULL, 'f7649b77cfc9e0a9dacdac370cd4036b', 'pingjia', 'pingjia', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('4d7dd94ecf26b5fa69f9a1f811583340', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'address', 'address', 'String', NULL, 16, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('502a0a66b4dbf8689ed36e56ab272c2f', NULL, '2021-02-02 19:10:15', NULL, NULL, '9b7d28336b01f9a6b1a613957c3d7cda', 'birth', '出生日期', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('52444b20f2fcdfe43461a5a49079e4dc', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'health', 'health', 'String', NULL, 11, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537477711047733248', 'admin', '2021-04-01 05:54:42', NULL, NULL, '537477711022567424', 'id', 'id', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537477711056121856', 'admin', '2021-04-01 05:54:42', NULL, NULL, '537477711022567424', 'name', 'name', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537477711064510464', 'admin', '2021-04-01 05:54:42', NULL, NULL, '537477711022567424', 'gtime', 'gtime', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537477711072899072', 'admin', '2021-04-01 05:54:42', NULL, NULL, '537477711022567424', 'update_by', 'update_by', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537477711077093376', 'admin', '2021-04-01 05:54:42', NULL, NULL, '537477711022567424', 'jphone', 'jphone', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537477711085481984', 'admin', '2021-04-01 05:54:42', NULL, NULL, '537477711022567424', 'birth', 'birth', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537477711093870592', 'admin', '2021-04-01 05:54:42', NULL, NULL, '537477711022567424', 'hukou', 'hukou', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537477711102259200', 'admin', '2021-04-01 05:54:42', NULL, NULL, '537477711022567424', 'laddress', 'laddress', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537477711106453504', 'admin', '2021-04-01 05:54:42', NULL, NULL, '537477711022567424', 'jperson', 'jperson', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537477711110647808', 'admin', '2021-04-01 05:54:42', NULL, NULL, '537477711022567424', 'sex', 'sex', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478337303457792', 'admin', '2021-04-01 05:54:37', NULL, NULL, '537478337278291968', 'id', 'id', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478337320235008', 'admin', '2021-04-01 05:54:37', NULL, NULL, '537478337278291968', 'create_by', 'create_by', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478337328623616', 'admin', '2021-04-01 05:54:37', NULL, NULL, '537478337278291968', 'create_time', 'create_time', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478337332817920', 'admin', '2021-04-01 05:54:37', NULL, NULL, '537478337278291968', 'update_by', 'update_by', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478337341206528', 'admin', '2021-04-01 05:54:37', NULL, NULL, '537478337278291968', 'update_time', 'update_time', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478337349595136', 'admin', '2021-04-01 05:54:37', NULL, NULL, '537478337278291968', 'data_table', 'data_table', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478337353789440', 'admin', '2021-04-01 05:54:37', NULL, NULL, '537478337278291968', 'data_id', 'data_id', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478337362178048', 'admin', '2021-04-01 05:54:37', NULL, NULL, '537478337278291968', 'data_content', 'data_content', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478337370566656', 'admin', '2021-04-01 05:54:37', NULL, NULL, '537478337278291968', 'data_version', 'data_version', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478337378955264', 'admin', '2021-04-01 05:54:37', NULL, NULL, '537478337278291968', 'rownum_', 'rownum_', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478706330906624', 'admin', '2021-04-01 05:56:44', NULL, NULL, '537478706314129408', 'id', 'id', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478706343489536', 'admin', '2021-04-01 05:56:44', NULL, NULL, '537478706314129408', 'cname', 'cname', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478706351878144', 'admin', '2021-04-01 05:56:44', NULL, NULL, '537478706314129408', 'cnum', 'cnum', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478706356072448', 'admin', '2021-04-01 05:56:44', NULL, NULL, '537478706314129408', 'cprice', 'cprice', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478706360266752', 'admin', '2021-04-01 05:56:44', NULL, NULL, '537478706314129408', 'ctotal', 'ctotal', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478706368655360', 'admin', '2021-04-01 05:56:44', NULL, NULL, '537478706314129408', 'tp', 'tp', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478706377043968', 'admin', '2021-04-01 05:56:44', NULL, NULL, '537478706314129408', 'dtotal', 'dtotal', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478706381238272', 'admin', '2021-04-01 05:56:44', NULL, NULL, '537478706314129408', 'ztotal', 'ztotal', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('537478706389626880', 'admin', '2021-04-01 05:56:44', NULL, NULL, '537478706314129408', 'd_id', 'd_id', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('538563757aa1a49935824ce14568f27c', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'archivesdi', 'archivesdi', NULL, NULL, 34, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('53bb8b7ef4c8d8dc9b151f07929fb587', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'xinghao', 'xinghao', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('5406c33ff49384c2bcad5b85a9701355', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'province', 'province', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('558e3bb304d51582f225ec1d911cb4b8', NULL, '2021-01-05 15:09:15', NULL, NULL, '2324fac242b35938678a05bbbba345e2', 'id', 'id', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537851944955904', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'name', 'name', 'String', NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852028841984', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'sex', 'sex', 'String', NULL, 1, NULL, NULL, 'sex', NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852054007808', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'tp', 'tp', 'String', NULL, 2, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852070785024', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'tm', 'tm', 'String', NULL, 3, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852079173632', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'nation', 'nation', 'String', NULL, 4, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852095950848', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'birth', 'birth', 'String', NULL, 5, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852108533760', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'zhuzhi', 'zhuzhi', 'String', NULL, 6, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852125310976', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'card', 'card', 'String', NULL, 7, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852137893888', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'ydate', 'ydate', 'String', NULL, 8, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852150476800', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'qfjg', 'qfjg', 'String', NULL, 9, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852163059712', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'slyy', 'slyy', 'String', NULL, 10, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852175642624', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'sdate', 'sdate', 'String', NULL, 11, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852192419840', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'shao', 'shao', 'String', NULL, 12, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852209197056', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'cbr', 'cbr', 'String', NULL, 13, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852221779968', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'sld', 'sld', 'String', NULL, 14, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852238557184', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'sr', 'sr', 'String', NULL, 15, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852272111616', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'jphone', 'jphone', 'String', NULL, 16, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852288888832', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'lzr', 'lzr', 'String', NULL, 17, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852305666048', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'ldate', 'ldate', 'String', NULL, 18, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852318248960', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'sk', 'sk', 'String', NULL, 19, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574537852335026176', 'admin', '2021-07-12 12:15:09', NULL, NULL, '94bcd8202bc6bc467efd0d679dadd7bb', 'dizhi', 'dizhi', 'String', NULL, 20, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662045417472', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'department', 'department', NULL, NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662129303552', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'post', 'post', NULL, NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662183829504', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'data', 'data', NULL, NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662238355456', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'name', 'name', NULL, NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662263521280', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'sex', 'sex', NULL, NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662368378880', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'birth', 'birth', NULL, NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662393544704', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'political', 'political', NULL, NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662418710528', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'office', 'office', NULL, NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662443876352', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'nation', 'nation', NULL, NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662464847872', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'health', 'health', NULL, NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662490013696', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'register', 'register', NULL, NULL, 11, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662510985216', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'education', 'education', NULL, NULL, 12, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662531956736', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'major', 'major', NULL, NULL, 13, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662557122560', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'gdata', 'gdata', NULL, NULL, 14, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662590676992', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'mailbox', 'mailbox', NULL, NULL, 15, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662611648512', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'telphone', 'telphone', NULL, NULL, 16, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662645202944', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'homephone', 'homephone', NULL, NULL, 17, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662661980160', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'pworktime', 'pworktime', NULL, NULL, 18, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662678757376', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'entrytime', 'entrytime', NULL, NULL, 19, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662695534592', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'school', 'school', NULL, NULL, 20, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662716506112', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'idcard', 'idcard', NULL, NULL, 21, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662733283328', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'party', 'party', NULL, NULL, 22, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662745866240', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'marital', 'marital', NULL, NULL, 23, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662762643456', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'children', 'children', NULL, NULL, 24, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662779420672', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'hukoustreet', 'hukoustreet', NULL, NULL, 25, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662796197888', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'hukounum', 'hukounum', NULL, NULL, 26, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662812975104', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'hukoudi', 'hukoudi', NULL, NULL, 27, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662829752320', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'currentdi', 'currentdi', NULL, NULL, 28, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662854918144', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'currentnum', 'currentnum', NULL, NULL, 29, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662884278272', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'socialsecurity', 'socialsecurity', NULL, NULL, 30, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662905249792', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'providentfund', 'providentfund', NULL, NULL, 31, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662926221312', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'hobby', 'hobby', NULL, NULL, 32, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662942998528', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'sbtype', 'sbtype', NULL, NULL, 33, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873662959775744', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873661957337088', 'archivesdi', 'archivesdi', NULL, NULL, 34, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663035273216', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663005913088', 'kdate', 'kdate', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663052050432', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663005913088', 'jdate', 'jdate', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663077216256', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663005913088', 'jstudent', 'jstudent', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663093993472', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663005913088', 'zhuanye', 'zhuanye', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663114964992', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663005913088', 'zhiwu', 'zhiwu', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663194656768', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663161102336', 'zmphone', 'zmphone', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663211433984', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663161102336', 'jstudent', 'jstudent', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663236599808', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663161102336', 'kdate', 'kdate', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663261765632', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663161102336', 'jdate', 'jdate', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663291125760', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663161102336', 'zmname', 'zmname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663370817536', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663341457408', 'zcname', 'zcname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663391789056', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663341457408', 'danwei', 'danwei', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663408566272', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663341457408', 'fdate', 'fdate', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663429537792', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663341457408', 'jibie', 'jibie', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663450509312', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663341457408', 'beizhu', 'beizhu', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663538589696', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663500840960', 'danwei', 'danwei', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663563755520', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663500840960', 'phone', 'phone', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663584727040', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663500840960', 'name', 'name', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663609892864', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663500840960', 'zzmm', 'zzmm', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663626670080', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663500840960', 'guanxi', 'guanxi', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663656030208', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663500840960', 'age', 'age', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663714750464', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663693778944', 'date', 'date', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663731527680', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663693778944', 'mingcheng', 'mingcheng', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574873663756693504', 'admin', '2021-07-13 10:29:32', NULL, NULL, '574873663693778944', 'didian', 'didian', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875722493063168', 'admin', '2021-07-13 10:37:43', NULL, NULL, '574875722388205568', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875722530811904', 'admin', '2021-07-13 10:37:43', NULL, NULL, '574875722388205568', 'pingjia', 'pingjia', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875722551783424', 'admin', '2021-07-13 10:37:43', NULL, NULL, '574875722388205568', 'lingdao', 'lingdao', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875722581143552', 'admin', '2021-07-13 10:37:43', NULL, NULL, '574875722388205568', 'shijian', 'shijian', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730747453440', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'department', 'department', NULL, NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730768424960', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'post', 'post', NULL, NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730785202176', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'data', 'data', NULL, NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730818756608', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'name', 'name', NULL, NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730835533824', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'sex', 'sex', NULL, NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730856505344', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'birth', 'birth', NULL, NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730885865472', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'political', 'political', NULL, NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730906836992', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'office', 'office', NULL, NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730932002816', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'nation', 'nation', NULL, NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730961362944', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'health', 'health', NULL, NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875730986528768', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'register', 'register', NULL, NULL, 11, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731011694592', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'education', 'education', NULL, NULL, 12, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731070414848', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'major', 'major', NULL, NULL, 13, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731095580672', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'gdata', 'gdata', NULL, NULL, 14, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731116552192', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'mailbox', 'mailbox', NULL, NULL, 15, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731137523712', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'telphone', 'telphone', NULL, NULL, 16, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731166883840', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'homephone', 'homephone', NULL, NULL, 17, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731187855360', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'pworktime', 'pworktime', NULL, NULL, 18, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731213021184', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'entrytime', 'entrytime', NULL, NULL, 19, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731242381312', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'school', 'school', NULL, NULL, 20, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731259158528', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'idcard', 'idcard', NULL, NULL, 21, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731280130048', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'party', 'party', NULL, NULL, 22, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731305295872', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'marital', 'marital', NULL, NULL, 23, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731326267392', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'children', 'children', NULL, NULL, 24, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731343044608', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'hukoustreet', 'hukoustreet', NULL, NULL, 25, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731364016128', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'hukounum', 'hukounum', NULL, NULL, 26, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731389181952', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'hukoudi', 'hukoudi', NULL, NULL, 27, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731414347776', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'currentdi', 'currentdi', NULL, NULL, 28, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731443707904', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'currentnum', 'currentnum', NULL, NULL, 29, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731460485120', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'socialsecurity', 'socialsecurity', NULL, NULL, 30, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731489845248', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'providentfund', 'providentfund', NULL, NULL, 31, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731506622464', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'hobby', 'hobby', NULL, NULL, 32, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731527593984', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'sbtype', 'sbtype', NULL, NULL, 33, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731548565504', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875730650984448', 'archivesdi', 'archivesdi', NULL, NULL, 34, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731619868672', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731594702848', 'kdate', 'kdate', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731640840192', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731594702848', 'jdate', 'jdate', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731661811712', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731594702848', 'jstudent', 'jstudent', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731678588928', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731594702848', 'zhuanye', 'zhuanye', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731699560448', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731594702848', 'zhiwu', 'zhiwu', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731762475008', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731737309184', 'zmphone', 'zmphone', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731779252224', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731737309184', 'jstudent', 'jstudent', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731800223744', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731737309184', 'kdate', 'kdate', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731812806656', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731737309184', 'jdate', 'jdate', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731833778176', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731737309184', 'zmname', 'zmname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731892498432', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731867332608', 'zcname', 'zcname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731909275648', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731867332608', 'danwei', 'danwei', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731926052864', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731867332608', 'fdate', 'fdate', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731942830080', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731867332608', 'jibie', 'jibie', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875731959607296', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731867332608', 'beizhu', 'beizhu', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875732018327552', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731997356032', 'danwei', 'danwei', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875732030910464', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731997356032', 'phone', 'phone', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875732047687680', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731997356032', 'name', 'name', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875732068659200', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731997356032', 'zzmm', 'zzmm', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875732085436416', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731997356032', 'guanxi', 'guanxi', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875732102213632', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875731997356032', 'age', 'age', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875732148350976', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875732131573760', 'date', 'date', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875732165128192', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875732131573760', 'mingcheng', 'mingcheng', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('574875732181905408', 'admin', '2021-07-13 10:37:45', NULL, NULL, '574875732131573760', 'didian', 'didian', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('57ee0e6ffe7135a943dde2408d424c97', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'proportion_1', 'proportion_1', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('589a5a4fe61fc71aa1bf45d3bd73974b', NULL, '2020-12-17 19:50:14', NULL, NULL, 'fb70a91730f087f8023afd88d24f9697', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('5a88459afcf01cc20ac5a50322b35fd6', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'hukounum', 'hukounum', NULL, NULL, 26, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('5b7f7bebf0c3951b891026e7c2ac90cb', NULL, '2020-08-03 09:55:46', NULL, NULL, '6011955e58d89040fca52e7f962d0bf4', 'didian', 'didian', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('5bc99af9cfddd240794167a6765a1517', NULL, '2021-01-08 16:29:02', NULL, NULL, '4af57d343f1d6521b71b85097b580786', 'neikong_zx_money', 'neikong_zx_money', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('5bf6aee0bd8f676a218e0210e9e6fa0e', NULL, '2020-12-17 16:59:12', NULL, NULL, '7911bd189c2d53e182693bd599a315a2', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('5cf4a1ca15691d6340e522e1831dc3ac', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'sales_6', 'sales_6', 'String', NULL, 18, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('5e4e8b7531a88f4db1a0d133de159494', NULL, '2020-08-03 09:55:46', NULL, NULL, '6011955e58d89040fca52e7f962d0bf4', 'num', 'num', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('6020e457162b86b75a2d335999ab06ec', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'nation', 'nation', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('631632bc2243018788d11d4f8348bfd2', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'socialsecurity', 'socialsecurity', NULL, NULL, 30, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('6394ea45a090ca79cfbfdbbfe2016d95', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'yprice', 'yprice', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('64ff8b4e61a58a0ca3e34108c9bd97c0', NULL, '2021-01-08 16:29:02', NULL, NULL, 'a543d8dd40f4d26839b78bd604be659e', 'bx_gg_moeny', 'bx_gg_moeny', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('665f13c7fcebac6c35c894d885c4b344', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'proportion_6', 'proportion_6', 'String', NULL, 20, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('677bf4d6400fc465067b0d5bd6ad2a58', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'gift_2', 'gift_2', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('6a3544cc8c028e94692bb1b448620ec2', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'yname', 'yname', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('6c2b1c9e4cfd3f6b79d0fb26fea72cec', NULL, '2020-08-03 09:55:46', NULL, NULL, '6011955e58d89040fca52e7f962d0bf4', 'zhaiyao', 'zhaiyao', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('6c8250304aa25753f64c6f4723e6d2d8', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'fahuocangku', 'fahuocangku', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('6d4b24ab2f685556d6161a86658329c8', NULL, '2021-01-21 16:25:09', NULL, NULL, 'd4a29dfda94357308faf62be2b94db08', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('6dae70a5323b3d517c8f13278f0e1d5f', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'proportion_5', 'proportion_5', 'String', NULL, 17, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('6ec41a06e2dee9ec8f07a894ddcaaae5', NULL, '2021-02-02 19:10:15', NULL, NULL, '9b7d28336b01f9a6b1a613957c3d7cda', 'jphone', 'jphone', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('70abaf24c413f38ff6a3c315ad8824b2', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'height', 'height', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('710104c3e0541602a151d5e00fc2ee29', NULL, '2020-12-17 16:42:21', NULL, NULL, '654609e4247a0469e0b2befbc69b00f9', 'type', 'type', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('718a062a1e42276c1913c7d7836b1bee', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'hobby', 'hobby', NULL, NULL, 32, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('71cb567cd27fda05d55d80324c7b59e1', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'del_flag', 'del_flag', 'String', NULL, 32, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('729c2d2c70da0f3bc092f4aab4432244', NULL, '2020-12-17 16:42:21', NULL, NULL, '654609e4247a0469e0b2befbc69b00f9', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('732c8b168ade2e34974c9db6396df61f', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'type', 'type', 'String', NULL, 12, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('742954cf518d8026db68cc87c017ad2a', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'bz', 'bz', 'String', NULL, 19, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('765d95a760a36d0c853bec639af85302', NULL, '2021-01-05 15:09:15', NULL, NULL, '2324fac242b35938678a05bbbba345e2', 'bianma', 'bianma', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('768fb670937ab4aadde39842df36bfd3', 'admin', '2021-04-01 03:09:23', NULL, NULL, '1289140698221678593', 'cprice', 'cprice', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('79f29ea3b1c7ec966077941fdd004e4d', NULL, '2021-01-08 16:29:02', NULL, NULL, 'a543d8dd40f4d26839b78bd604be659e', 'bx_zx_money', 'bx_zx_money', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('7b794ecee6f61f64839eb1094a7c20bb', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'region', 'region', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('7c2c06cc52978c4e5665deac1784535d', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'yren', 'yren', 'String', NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('7df83cf21e083451a47f2f731a225a7e', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'num', 'num', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('7e564f212697079394030ac0563df496', NULL, '2020-06-16 18:14:25', NULL, NULL, 'e4cec9ff15bc0ea42f536a442a6d1335', 'id', 'id', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('7f5570e3056d82210d7d4e79b861560c', NULL, '2021-02-02 19:10:15', NULL, NULL, '9b7d28336b01f9a6b1a613957c3d7cda', 'laddress', 'laddress', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('80017f23232ea91ae32e4718eb10e8c3', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'proportion_4', 'proportion_4', 'String', NULL, 14, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('80b5e3fd550d9be1a8c8ea69a2a593f8', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'birth', 'birth', NULL, NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('81dea8f0ccba2b3530038ebcf92b36b1', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'name', 'name', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('81f2de244fa1e6b5f28419f60c4db169', NULL, '2020-06-16 18:14:25', NULL, NULL, 'e4cec9ff15bc0ea42f536a442a6d1335', 'bnum', 'bnum', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('83da395758d9bca23b2c5b9f54e79eed', NULL, '2021-01-21 16:25:09', NULL, NULL, 'd4a29dfda94357308faf62be2b94db08', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('84391d55c9bd4185c4abbc0d9a8a3f9b', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'native_place', 'native_place', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('85263a305fba4c7e7a991ed3b416e006', NULL, '2020-12-17 16:42:21', NULL, NULL, '654609e4247a0469e0b2befbc69b00f9', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('865ca077977b78934e5e82e733ef4e47', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'major', 'major', 'String', NULL, 15, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('8749d00c6c3cf873841a227a5206478a', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'sales_1', 'sales_1', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('87f43f4f5220c34a95d55ff3fa9de0c1', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'health', 'health', NULL, NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('8875e4280c1a62759ec4b3719b5f9566', NULL, '2021-01-08 10:47:52', NULL, NULL, 'bbc5d5ab143d59f0beab484682361aa5', 'lingdao', 'lingdao', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('88b19703dac5a5ae8c01c68101cd8b5b', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'cbz', 'cbz', 'String', NULL, 14, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('89bd5c1f5b37b82ab2d56d8c9e50a674', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'sex', 'sex', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('8a122291db744a6109a93af5d289787f', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'computer_level', 'computer_level', 'String', NULL, 22, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('8ab8d51dfb792cdc767e68d7e9370f3d', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'num', 'num', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('8bfc84f6d610581d736fcccc5f04a863', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'scard', 'scard', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('8d186f249df9e1c1c549fbdc6a0a4d77', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'currentdi', 'currentdi', NULL, NULL, 28, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('8db810062e3a19eb83fca651691b848e', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'sales_2', 'sales_2', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('8e39d42a7fad183fe75ce1a56f148db1', 'admin', '2021-04-01 03:09:23', NULL, NULL, '1289140698221678593', 'bianma', 'bianma', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('8fb12c3929ea745f94cc4a90df9d5181', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'idcard', 'idcard', NULL, NULL, 21, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9168272dc8fa019a861f11b81bea1dc2', NULL, '2021-01-08 16:29:02', NULL, NULL, 'a543d8dd40f4d26839b78bd604be659e', 'bx_jj_yongjin', 'bx_jj_yongjin', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9238ae757fb73c0ef546d7e0e91aa662', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 's_id', 's_id', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9282683fd000d19b205ad6841f0f7b6e', NULL, '2021-01-08 16:29:02', NULL, NULL, '4af57d343f1d6521b71b85097b580786', 'total', 'total', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('94fc5c2791e2e218383864b80095c89c', NULL, '2021-02-02 19:10:15', NULL, NULL, '9b7d28336b01f9a6b1a613957c3d7cda', 'id', 'id', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('95486ef4c7e0f3f3ac4ce249b1c761a1', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'id', 'id', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('95650b0335c6981bf0d657e11b1b2082', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'hysr', 'hysr', 'String', NULL, 11, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9a5f78c12595cb66d3b630962f7cd7bf', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'sf1', 'sf1', 'String', NULL, 15, 0, NULL, 'ttype', NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9b77e74bed080cbd798d223bb0177c5d', NULL, '2020-07-21 15:17:10', NULL, NULL, 'c9bdb6b7ac68accfecb366718bf78f79', 'didian', 'didian', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9bb9b5329f79564ec030694a639ffd7f', NULL, '2021-01-08 16:29:02', NULL, NULL, '4af57d343f1d6521b71b85097b580786', 'bx_zx_money', 'bx_zx_money', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9bf1e9bc4e887eb0816365262d0e9c8e', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'zhekoulv', 'zhekoulv', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9d3986d3a32e9b4672dc2b29174749f3', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'rk', 'rk', 'String', NULL, 13, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9d6a3a8b9cf5c659e7d752028b70da8b', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'sf2', 'sf2', 'String', NULL, 16, 0, NULL, 'ttype', NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9ddf87596d6701eda383c3d8d7853b2b', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'education', 'education', 'String', NULL, 13, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('9e28f1951ea83b6e6dae4e3892baea90', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'positional_titles', 'positional_titles', 'String', NULL, 25, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a15e649faa93fbae15a66f5266bd9336', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'phone', 'phone', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a17a61990a30e0cfbe4c7169dafcd85d', NULL, '2020-07-21 15:17:10', NULL, NULL, 'c9bdb6b7ac68accfecb366718bf78f79', 'id', 'id', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a1b7ffeb00d30e7c0a1a1f466dd1fe06', NULL, '2020-12-04 16:53:38', NULL, NULL, '28e0b01cc3e2b0d361107661527bfdff', 'key2', 'key2', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a200ec7a67ded4302744ee7e4e156d13', NULL, '2021-01-08 16:10:28', NULL, NULL, '4dc208eb92fd1a84ef7b4723251e3e51', 'monty', 'monty', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a2e680c356e712b43343d589539da011', NULL, '2021-01-08 10:47:52', NULL, NULL, 'f7649b77cfc9e0a9dacdac370cd4036b', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a379ebc1ac4dd2d567eee55c403ab2a3', NULL, '2020-07-21 15:17:10', NULL, NULL, 'c9bdb6b7ac68accfecb366718bf78f79', 'gname', 'gname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a42eed89da67da0653650edcc1576f8c', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'currentnum', 'currentnum', NULL, NULL, 29, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a93ce07361b9d6ec02a58cf7f6b94664', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'political', 'political', NULL, NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a949c4beac3fec79e96309a6d2d8f5bb', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'entrytime', 'entrytime', NULL, NULL, 19, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a9c7c96a412537b4da3df68ff8e93cc8', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'post', 'post', NULL, NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('a9e4bf3b458d821307e0749f6e119f8d', NULL, '2021-01-08 16:10:28', NULL, NULL, '4dc208eb92fd1a84ef7b4723251e3e51', 'total', 'total', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('aa26aca6685baef7b24189214866f370', NULL, '2021-01-21 18:00:57', NULL, NULL, '60b3feffadc55eb49baa5a48fdf1ff0e', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ab0aabf8cc08327a4510420bd553e6c0', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'providentfund', 'providentfund', NULL, NULL, 31, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ab4ee4418e54c4a4fef3c14ad8e98fa5', NULL, '2021-01-08 16:29:02', NULL, NULL, 'a543d8dd40f4d26839b78bd604be659e', 'neikong_zx_money', 'neikong_zx_money', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ad0b3d410c53378134428afb1b063758', NULL, '2021-01-08 16:10:28', NULL, NULL, '4dc208eb92fd1a84ef7b4723251e3e51', 'his_average', 'his_average', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ad146af051ba273a480223d49f59358b', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'hukoustreet', 'hukoustreet', NULL, NULL, 25, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ad1d1fe2ee182c2d3a263a127fea041e', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'proportion_2', 'proportion_2', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ae5ec6e56478a098b36587e93b1d8908', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'arrival_time', 'arrival_time', 'String', NULL, 24, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('aee0188ab2bf9849607f6ef34b36713e', NULL, '2020-12-17 17:13:21', NULL, NULL, '9b75c161322e0b7e29b3ffc84239a72c', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('aee106a24b11b0f8ca10bc88b62189d7', NULL, '2020-08-03 09:55:46', NULL, NULL, '6011955e58d89040fca52e7f962d0bf4', 'gdata', 'gdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('aee31ce5eb6271601bc4e6f8affaceb0', NULL, '2020-06-16 18:14:25', NULL, NULL, 'e4cec9ff15bc0ea42f536a442a6d1335', 'hezairen', 'hezairen', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b14588abed341d314a08d316dfde553f', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'work_experience', 'work_experience', 'String', NULL, 27, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b1de05c2d02cdde59c1e2a93e45964f9', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'create_time', 'create_time', 'String', NULL, 29, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b279ab8f7d20ebbeec67f5bf2109ba22', NULL, '2021-01-08 16:10:28', NULL, NULL, '7b20679054449c554cde856ef24126ab', 'his_average', 'his_average', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b2c01550c60da7b1babf36d8535fcaed', NULL, '2021-01-08 10:47:52', NULL, NULL, 'bbc5d5ab143d59f0beab484682361aa5', 'shijian', 'shijian', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b3c98ed9cb9e4a234273aa4921efd545', NULL, '2020-06-16 18:14:25', NULL, NULL, 'e4cec9ff15bc0ea42f536a442a6d1335', 'jpnum', 'jpnum', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b450669f376fa9f075ac403c7d7f2ee9', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'proportion_3', 'proportion_3', 'String', NULL, 11, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b46d80bfe53372b6ff92a6f8e8bf38df', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'hukoudi', 'hukoudi', NULL, NULL, 27, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b5afa6c7c63f649460d4d45b7d697098', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'zip_code', 'zip_code', 'String', NULL, 17, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b5df568754994e67a15a8f5b8d4bc297', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'phone', 'phone', 'String', NULL, 19, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b60fbeff0c77080cb73aa6aaf6dd8715', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'danjia', 'danjia', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b6884ea117811c5161ff1eb11502cf19', NULL, '2020-07-21 15:17:10', NULL, NULL, 'c9bdb6b7ac68accfecb366718bf78f79', 'num', 'num', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b81d3a495af538759aa6dbaf752c48db', NULL, '2020-12-04 16:53:38', NULL, NULL, '28e0b01cc3e2b0d361107661527bfdff', 'key6', 'key6', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b863f83ac64327d86f36c8796a00f777', NULL, '2020-06-16 18:14:25', NULL, NULL, 'e4cec9ff15bc0ea42f536a442a6d1335', 'jieshu', 'jieshu', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('b8aafd56ddcf6902909722c7d2529797', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'department', 'department', NULL, NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ba83ad8a89105b198aa49798f2940c29', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'foreign_language', 'foreign_language', 'String', NULL, 20, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('bb8db85fed8034645c5517b6283addc7', NULL, '2020-12-04 16:53:38', NULL, NULL, '28e0b01cc3e2b0d361107661527bfdff', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('bd09800edb1343880b05b65974875597', NULL, '2020-07-21 15:17:10', NULL, NULL, 'c9bdb6b7ac68accfecb366718bf78f79', 'tdata', 'tdata', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c17be48ad3705f848acdb28cbe3bc1b7', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'hname', 'hname', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c1913cffe0a0a65b8f76ef280af93038', NULL, '2021-01-08 16:29:02', NULL, NULL, '4af57d343f1d6521b71b85097b580786', 'tb_zx_money', 'tb_zx_money', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c2b7ed56f87bc4cb95c8e1e0300e51ff', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'ytotal', 'ytotal', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c357b23ae68c0ee6c9dab322507dce0b', NULL, '2021-01-11 14:38:14', NULL, NULL, '1317006713165049858', 'jdate', 'jdate', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c3b0443ebecc7152343c5ea3ef32a38f', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'graduation_time', 'graduation_time', 'String', NULL, 23, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c3d8cd6e68c605fd6d6ac217fed5c8d4', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'weight', 'weight', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c3fe8f62ea0c6ce9990bfa22dc0265b6', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'major', 'major', NULL, NULL, 13, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c40fe2cf7a74a6e96575f73ef5e7d205', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'nation', 'nation', NULL, NULL, 9, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c4d6132699dcdff382c93ab10d64551a', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'education_experience', 'education_experience', 'String', NULL, 26, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c57bd36c25b13a8149268496e54052ae', NULL, '2020-12-17 19:50:14', NULL, NULL, 'fb70a91730f087f8023afd88d24f9697', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c5a801ff78f2ca6b1b7a03b3222fdd61', NULL, '2021-01-08 16:29:02', NULL, NULL, '4af57d343f1d6521b71b85097b580786', 'biz_income', 'biz_income', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c6144f2ca7422a71e951abea1bce6aaf', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'education', 'education', NULL, NULL, 12, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c6820a1e3308badb60582998805a0645', NULL, '2020-06-16 18:14:25', NULL, NULL, 'e4cec9ff15bc0ea42f536a442a6d1335', 'shihelv', 'shihelv', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c74ee42894f54c0ebc1a64a79395aa06', NULL, '2020-12-04 16:53:38', NULL, NULL, '28e0b01cc3e2b0d361107661527bfdff', 'key3', 'key3', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c8d1276d19bdd946e9fc18b83aacda15', 'admin', '2021-04-01 03:09:23', NULL, NULL, '1289140698221678593', 'cname', 'cname', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c904e40b35f065cbefd0b22fd5937b38', NULL, '2021-01-21 18:00:57', NULL, NULL, '60b3feffadc55eb49baa5a48fdf1ff0e', 'description', 'description', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('c98a41c7d5edcba47273e192b9d66b9b', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'beizhu', 'beizhu', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('cc91f43bf975f056944b5ec19266ec9c', NULL, '2020-12-17 16:59:12', NULL, NULL, '7911bd189c2d53e182693bd599a315a2', 'value', 'value', 'String', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ce81562be14047bcbc29c0a66782fc42', NULL, '2021-01-21 17:07:16', NULL, NULL, '6a1d22ca4c95e8fab655d3ceed43a84d', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('cec893b2241134ba9b03ed6d4edf2919', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'marital', 'marital', NULL, NULL, 23, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('cf9d32fea2f67e4b11cd2823dbbefbad', NULL, '2020-08-03 09:55:46', NULL, NULL, '6011955e58d89040fca52e7f962d0bf4', 'id', 'id', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('d076942aecee8f5197b66eb382ba1995', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'sbtype', 'sbtype', NULL, NULL, 33, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('d1d67bf8aea628bba4d28dfede489d55', NULL, '2021-01-08 16:10:28', NULL, NULL, '4dc208eb92fd1a84ef7b4723251e3e51', 'his_highest', 'his_highest', 'String', NULL, 6, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('d3ef9876d3c56889157747be606f70fc', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'gift_6', 'gift_6', 'String', NULL, 19, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('d5b7b92023a2fb09fed9d36a4ac7b3e3', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'sales_z', 'sales_z', 'String', NULL, 21, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('d6accb7bb835271d1284d8a3dc394c1f', NULL, '2020-07-28 17:46:58', NULL, NULL, '22f025b781ee9fe4746438621e82674f', 'danwei', 'danwei', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('db503c31de99f35cbcb1f66a69f9964c', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'mailbox', 'mailbox', NULL, NULL, 15, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('dd56fbd98db5c1cda9dd77637ba1c7e6', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'create_by', 'create_by', 'String', NULL, 28, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('dfbc8bba6261dcd4ceb3da5f517a0d58', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'school', 'school', NULL, NULL, 20, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('e1fffff7030dd37d70d7b5a138046fac', NULL, '2020-12-04 16:53:38', NULL, NULL, '28e0b01cc3e2b0d361107661527bfdff', 'key5', 'key5', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('e52e7896193ad09d700599d2ef6fa8ae', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'knum', 'knum', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('e757987004087de43f1ccab14092361f', NULL, '2020-07-17 10:49:42', NULL, NULL, 'e0fe1d693625c906c1171d7de706a47c', 'yishe', 'yishe', NULL, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('e7f6104183a7b2408f72b91f4638e9e2', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'gift_3', 'gift_3', 'String', NULL, 10, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ea6018bdbd9fb192b1d3f9e832b5d382', NULL, '2021-02-02 19:10:15', NULL, NULL, '9b7d28336b01f9a6b1a613957c3d7cda', 'name', '姓名', 'string', NULL, 2, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ec6c6f56c64de5f4de16166000f31d19', NULL, '2020-06-16 18:14:25', NULL, NULL, 'e4cec9ff15bc0ea42f536a442a6d1335', 'ftime', 'ftime', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ef685270770a69bddb4f24e37eed9dc0', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'office', 'office', NULL, NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('efe17d82b5daaa3f95364e9afaeffd1c', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'register', 'register', NULL, NULL, 11, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('efe4e0110a61d9791e18308aed422aa7', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'name', 'name', NULL, NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f110f1f947e0f895b552f7edd133a60a', 'admin', '2021-04-01 03:09:23', NULL, NULL, '1289140698221678593', 'ctotal', 'ctotal', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f11af753ccbf495818e9c23c1b083ae2', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'foreign_language_level', 'foreign_language_level', 'String', NULL, 21, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f1905f7a175f8e56afd8f6c2969582e6', NULL, '2021-01-06 11:43:35', NULL, NULL, '1334390762455965697', 'gift_5', 'gift_5', 'String', NULL, 16, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f192c538d9cb0dc88e537b11a37551c8', NULL, '2021-01-08 16:10:28', NULL, NULL, '4dc208eb92fd1a84ef7b4723251e3e51', 'his_lowest', 'his_lowest', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f31715d024bad06ea8862ba383e87f5b', NULL, '2021-01-05 15:09:15', NULL, NULL, '2324fac242b35938678a05bbbba345e2', 'cnum', 'cnum', 'String', NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f3b4e31c7ff6a365c4130cbc695e2621', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'num', 'num', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f430837a3f4c08f425bcd1de46d3a2d3', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'sex', 'sex', NULL, NULL, 5, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f53143608c570f9886861442be87b5ff', NULL, '2021-02-02 19:10:15', NULL, NULL, '9b7d28336b01f9a6b1a613957c3d7cda', 'update_by', '职务', 'String', NULL, 4, 1, 3, 'zhiwu', NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f82904af04e557b12dcfe3562900597c', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'gdata', 'gdata', NULL, NULL, 14, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f9154d882408b868253ed8fb87879220', NULL, '2021-02-02 19:30:23', NULL, NULL, '629609c4d540cb4675e9064af8955296', 'name', 'name', 'String', NULL, 1, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f95dd09a118b93cc7884b12118448ed4', NULL, '2021-02-02 19:10:15', NULL, NULL, '9b7d28336b01f9a6b1a613957c3d7cda', 'hukou', 'hukou', 'String', NULL, 7, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f978117e8eda0daee2c00223f9df4b48', NULL, '2021-01-13 11:59:53', NULL, NULL, '1316997232402231298', 'update_time', 'update_time', 'String', NULL, 31, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('f984ef26fe0a505b279a0e4a3b27201f', NULL, '2021-01-08 10:47:52', NULL, NULL, 'f7649b77cfc9e0a9dacdac370cd4036b', 'shijian', 'shijian', 'String', NULL, 4, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('fa6fce04eaee2480faa8a14393ffe15a', NULL, '2021-01-08 16:29:02', NULL, NULL, 'a543d8dd40f4d26839b78bd604be659e', 'total', 'total', 'String', NULL, 8, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('fac871f69237c6c25abe8c4332eabcbf', NULL, '2021-01-08 10:47:52', NULL, NULL, 'f7649b77cfc9e0a9dacdac370cd4036b', 'lingdao', 'lingdao', 'String', NULL, 3, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('fc07c053ed0ecbfcc45041640acf6cb1', NULL, '2021-01-05 15:33:07', NULL, NULL, '1316987047604514817', 'party', 'party', NULL, NULL, 22, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('fe3b1449ce346836f47234ca65949aea', NULL, '2020-06-16 18:14:25', NULL, NULL, 'e4cec9ff15bc0ea42f536a442a6d1335', 'sfkong', 'sfkong', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_field` VALUES ('ffb5fbe81d2cf48ca45a815c676fd9eb', NULL, '2020-06-16 18:14:25', NULL, NULL, 'e4cec9ff15bc0ea42f536a442a6d1335', 'kaishi', 'kaishi', 'string', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); + +-- ---------------------------- +-- Table structure for jimu_report_db_param +-- ---------------------------- +DROP TABLE IF EXISTS `jimu_report_db_param`; +CREATE TABLE `jimu_report_db_param` ( + `id` varchar(36) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `jimu_report_head_id` varchar(36) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '动态报表ID', + `param_name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '参数字段', + `param_txt` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '参数文本', + `param_value` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '参数默认值', + `order_num` int(11) NULL DEFAULT NULL COMMENT '排序', + `create_by` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建人登录名称', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建日期', + `update_by` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '更新人登录名称', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新日期', + `search_flag` int(1) NULL DEFAULT NULL COMMENT '查询标识0否1是 默认0', + `widget_type` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '查询控件类型', + `search_mode` int(1) NULL DEFAULT NULL COMMENT '查询模式1简单2范围', + `dict_code` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字典', + `search_format` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '查询时间格式化表达式', + `ext_json` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '参数配置', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_jmrheadid`(`jimu_report_head_id`) USING BTREE, + INDEX `idx_jrdp_jimu_report_head_id`(`jimu_report_head_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of jimu_report_db_param +-- ---------------------------- +INSERT INTO `jimu_report_db_param` VALUES ('078d99565feef91904c84b42b43f5174', '1273495682564534273', 'id', 'id', '1', 1, NULL, '2020-08-03 09:55:26', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('0d91170e4546cdbebbc3e9cc7879ce79', '22f025b781ee9fe4746438621e82674f', 'id', 'id', '1', 1, NULL, '2020-07-21 15:31:51', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('1324279360203526146', '1324279359998005250', 'pageSize', 'pageSize', '10', 2, NULL, '2020-08-03 15:19:54', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('1324279360220303361', '1324279359998005250', 'pageNo', 'pageNo', '1', 1, NULL, '2020-08-03 15:19:54', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('143f8c164072ddbdeafec5c5b1466827', '1272858455908073473', 'id', 'id', '1', 1, NULL, '2020-07-21 15:31:51', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('173c869cc45b683a9cfe25826110cead', '1272834687525482497', 'id', 'id', '1', 1, NULL, '2020-08-03 09:57:08', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('1805eb351a966dc3c039b5239b6faa49', '1291310198925840385', 'sex', 'sex', '男', 2, NULL, '2020-06-08 15:21:09', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('256eb2f8582ce4d74559b1fc1e2917ca', '1291310198925840385', 'id', 'id', '111', 1, NULL, '2020-06-08 15:21:09', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('3957799c20fcc696d680cca9649897bb', 'e4cec9ff15bc0ea42f536a442a6d1335', 'id', 'id', '1', 1, NULL, '2020-08-03 09:57:08', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('3a9efc51a6b6723d5a0ddf109aacb2b5', '1288038655293661186', 'pageNo', 'pageNo', '1', 1, 'admin', '2021-04-01 03:09:40', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('3ced36c7a2cce40c667cc485bf59cd11', '1291217511962902530', 'pageSize', 'pageSize', '10', 2, NULL, '2020-08-03 15:19:54', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('49bd3f212cd6c406c8584e6bb0d9cf93', '1291549569390243841', 'pageSize', 'pageSize', '10', 2, NULL, '2020-07-30 17:26:29', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('52db6da75ea733ae741c62cc54c85d92', '6011955e58d89040fca52e7f962d0bf4', 'id', 'id', '1', 1, NULL, '2020-08-03 09:55:46', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('57165a6fe5f2b700d4ef19518de4defd', '1290104038414721025', 'id', 'id', '1', 1, NULL, '2020-08-03 09:55:46', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('7569e95c1fa73d5438aceb19c1b85ef0', '1288038655293661186', 'pageSize', 'pageSize', '20', 2, 'admin', '2021-04-01 03:09:40', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('7d7765754aadaddab91bf1257447ae73', '1291549569390243841', 'pageNo', 'pageNo', '1', 1, NULL, '2020-07-30 17:26:29', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('8bff26e0c3fe48ddd41cf8d939ad4f2c', '2324fac242b35938678a05bbbba345e2', 'pageSize', 'pageSize', '10', 2, NULL, '2020-08-03 15:19:54', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('90b22a058cc331146b548bc93f09b5cd', '1289140698221678593', 'pageSize', 'pageSize', '20', 2, 'admin', '2021-04-01 03:09:23', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('944eaee4cb7639a435aadbf2ad7469a0', '2324fac242b35938678a05bbbba345e2', 'pageNo', 'pageNo', '1', 1, NULL, '2020-08-03 15:19:54', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('a29c10ed01c6608e899e1368f2d5d7e3', '1316997232402231298', 'id', 'id', '1', 1, NULL, '2021-01-13 14:31:13', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('a803707f3383dd9f4685fadc7efa07f4', '1224643501392728065', 'sex', 'sex', '男', 2, NULL, '2020-06-08 15:21:09', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('b7c34e8a3c2804715825af4bdbcf857a', '1224643501392728065', 'id', 'id', '111', 1, NULL, '2020-06-08 15:21:09', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('d8010a4ffbe567e6117e7f59641aeb7c', '1289140698221678593', 'pageNo', 'pageNo', '1', 1, 'admin', '2021-04-01 03:09:23', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('d9d94d6b09dd074f39af96d7a4696f9a', '1291217511962902530', 'pageNo', 'pageNo', '1', 1, NULL, '2020-08-03 15:19:54', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `jimu_report_db_param` VALUES ('ec09a8b27e7e9ec9dbc683fc5a38faec', 'c9bdb6b7ac68accfecb366718bf78f79', 'id', 'id', '1', 1, NULL, '2020-08-03 09:55:26', NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL); + +-- ---------------------------- +-- Table structure for jimu_report_link +-- ---------------------------- +DROP TABLE IF EXISTS `jimu_report_link`; +CREATE TABLE `jimu_report_link` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键id', + `report_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '积木设计器id', + `parameter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '参数', + `eject_type` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '弹出方式(0 当前页面 1 新窗口)', + `link_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '链接名称', + `api_method` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '请求方法0-get,1-post', + `link_type` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '链接方式(0 网络报表 1 网络连接 2 图表联动)', + `api_url` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '外网api', + `link_chart_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联动图表的ID', + `expression` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '表达式', + `requirement` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '条件', + PRIMARY KEY (`id`) USING BTREE, + INDEX `uniq_link_reportid`(`report_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '超链接配置表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for jimu_report_map +-- ---------------------------- +DROP TABLE IF EXISTS `jimu_report_map`; +CREATE TABLE `jimu_report_map` ( + `id` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '主键', + `label` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '地图名称', + `name` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '地图编码', + `data` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '地图数据', + `create_by` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建人', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '修改人', + `update_time` datetime NULL DEFAULT NULL COMMENT '修改时间', + `del_flag` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '0表示未删除,1表示删除', + `sys_org_code` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '所属部门', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uniq_jmreport_map_name`(`name`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '地图配置表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of jimu_report_map +-- ---------------------------- +INSERT INTO `jimu_report_map` VALUES ('1235103352843448322', '中国地图(大屏默认)', 'CHINA', '{\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 110000,\n \"name\": \"北京市\",\n \"center\": [\n 116.405285,\n 39.904989\n ],\n \"centroid\": [\n 116.41989,\n 40.189913\n ],\n \"childrenNum\": 16,\n \"level\": \"province\",\n \"subFeatureIndex\": 0,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 117.210024,\n 40.082262\n ],\n [\n 117.105315,\n 40.074479\n ],\n [\n 117.105315,\n 40.074479\n ],\n [\n 117.102851,\n 40.073563\n ],\n [\n 117.102235,\n 40.073105\n ],\n [\n 117.102235,\n 40.073105\n ],\n [\n 117.102851,\n 40.073563\n ],\n [\n 116.999989,\n 40.030053\n ],\n [\n 116.927924,\n 40.054788\n ],\n [\n 116.783794,\n 40.035093\n ],\n [\n 116.757925,\n 39.968176\n ],\n [\n 116.786874,\n 39.886963\n ],\n [\n 116.926076,\n 39.835524\n ],\n [\n 116.949482,\n 39.778529\n ],\n [\n 116.902055,\n 39.763813\n ],\n [\n 116.90575,\n 39.687883\n ],\n [\n 116.812128,\n 39.616018\n ],\n [\n 116.717273,\n 39.603572\n ],\n [\n 116.717273,\n 39.603572\n ],\n [\n 116.720969,\n 39.599884\n ],\n [\n 116.720969,\n 39.599884\n ],\n [\n 116.726512,\n 39.595274\n ],\n [\n 116.726512,\n 39.595274\n ],\n [\n 116.703106,\n 39.588819\n ],\n [\n 116.703106,\n 39.588819\n ],\n [\n 116.607636,\n 39.619705\n ],\n [\n 116.524484,\n 39.596657\n ],\n [\n 116.440716,\n 39.527466\n ],\n [\n 116.433325,\n 39.44296\n ],\n [\n 116.332927,\n 39.457744\n ],\n [\n 116.245464,\n 39.515466\n ],\n [\n 116.204196,\n 39.588819\n ],\n [\n 116.10195,\n 39.576368\n ],\n [\n 116.10195,\n 39.576368\n ],\n [\n 115.957204,\n 39.561147\n ],\n [\n 115.910393,\n 39.600345\n ],\n [\n 115.910393,\n 39.600345\n ],\n [\n 115.855574,\n 39.554689\n ],\n [\n 115.855574,\n 39.554689\n ],\n [\n 115.846951,\n 39.550999\n ],\n [\n 115.846951,\n 39.550999\n ],\n [\n 115.821081,\n 39.517312\n ],\n [\n 115.821081,\n 39.517312\n ],\n [\n 115.752712,\n 39.512696\n ],\n [\n 115.752712,\n 39.512696\n ],\n [\n 115.738545,\n 39.539464\n ],\n [\n 115.738545,\n 39.539925\n ],\n [\n 115.738545,\n 39.539464\n ],\n [\n 115.738545,\n 39.539925\n ],\n [\n 115.737314,\n 39.544078\n ],\n [\n 115.737314,\n 39.544078\n ],\n [\n 115.723763,\n 39.544539\n ],\n [\n 115.723763,\n 39.544539\n ],\n [\n 115.721299,\n 39.543617\n ],\n [\n 115.721299,\n 39.543617\n ],\n [\n 115.721299,\n 39.55146\n ],\n [\n 115.721299,\n 39.55146\n ],\n [\n 115.716988,\n 39.560225\n ],\n [\n 115.716988,\n 39.560225\n ],\n [\n 115.699125,\n 39.577751\n ],\n [\n 115.698509,\n 39.577751\n ],\n [\n 115.698509,\n 39.577751\n ],\n [\n 115.699125,\n 39.577751\n ],\n [\n 115.698509,\n 39.577751\n ],\n [\n 115.69543,\n 39.579135\n ],\n [\n 115.69543,\n 39.579135\n ],\n [\n 115.586408,\n 39.58928\n ],\n [\n 115.478619,\n 39.650578\n ],\n [\n 115.478619,\n 39.650578\n ],\n [\n 115.498945,\n 39.69617\n ],\n [\n 115.498945,\n 39.69617\n ],\n [\n 115.443511,\n 39.785426\n ],\n [\n 115.443511,\n 39.785426\n ],\n [\n 115.567314,\n 39.816224\n ],\n [\n 115.514344,\n 39.837821\n ],\n [\n 115.522967,\n 39.898898\n ],\n [\n 115.426264,\n 39.95029\n ],\n [\n 115.454597,\n 40.029595\n ],\n [\n 115.599343,\n 40.11979\n ],\n [\n 115.73485,\n 40.129398\n ],\n [\n 115.773038,\n 40.176044\n ],\n [\n 115.85311,\n 40.148609\n ],\n [\n 115.89869,\n 40.234536\n ],\n [\n 115.968907,\n 40.264219\n ],\n [\n 115.9184,\n 40.354103\n ],\n [\n 115.861733,\n 40.364589\n ],\n [\n 115.861733,\n 40.364589\n ],\n [\n 115.779197,\n 40.442501\n ],\n [\n 115.755792,\n 40.540333\n ],\n [\n 115.907929,\n 40.617133\n ],\n [\n 116.005247,\n 40.58397\n ],\n [\n 116.088399,\n 40.62667\n ],\n [\n 116.22021,\n 40.744181\n ],\n [\n 116.247311,\n 40.791762\n ],\n [\n 116.464738,\n 40.771827\n ],\n [\n 116.334159,\n 40.90446\n ],\n [\n 116.473977,\n 40.895867\n ],\n [\n 116.455499,\n 40.98084\n ],\n [\n 116.519557,\n 40.981292\n ],\n [\n 116.519557,\n 40.981292\n ],\n [\n 116.599013,\n 40.974516\n ],\n [\n 116.615643,\n 41.053072\n ],\n [\n 116.688324,\n 41.044499\n ],\n [\n 116.677853,\n 40.970902\n ],\n [\n 116.730208,\n 40.897676\n ],\n [\n 116.858323,\n 40.833423\n ],\n [\n 116.964881,\n 40.70972\n ],\n [\n 117.110858,\n 40.70836\n ],\n [\n 117.286401,\n 40.660719\n ],\n [\n 117.386799,\n 40.684317\n ],\n [\n 117.49582,\n 40.674334\n ],\n [\n 117.389879,\n 40.5617\n ],\n [\n 117.344299,\n 40.582152\n ],\n [\n 117.213104,\n 40.512136\n ],\n [\n 117.225423,\n 40.369148\n ],\n [\n 117.309191,\n 40.279284\n ],\n [\n 117.309807,\n 40.279284\n ],\n [\n 117.309191,\n 40.279284\n ],\n [\n 117.309807,\n 40.279284\n ],\n [\n 117.389879,\n 40.228141\n ],\n [\n 117.367089,\n 40.172387\n ],\n [\n 117.367089,\n 40.172844\n ],\n [\n 117.367089,\n 40.173301\n ],\n [\n 117.367089,\n 40.173301\n ],\n [\n 117.367089,\n 40.172844\n ],\n [\n 117.367089,\n 40.172387\n ],\n [\n 117.344299,\n 40.13443\n ],\n [\n 117.210024,\n 40.082262\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 120000,\n \"name\": \"天津市\",\n \"center\": [\n 117.190182,\n 39.125596\n ],\n \"centroid\": [\n 117.351154,\n 39.28914\n ],\n \"childrenNum\": 16,\n \"level\": \"province\",\n \"subFeatureIndex\": 1,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 117.210024,\n 40.082262\n ],\n [\n 117.344299,\n 40.13443\n ],\n [\n 117.367089,\n 40.172387\n ],\n [\n 117.367089,\n 40.172844\n ],\n [\n 117.367089,\n 40.173301\n ],\n [\n 117.367089,\n 40.173301\n ],\n [\n 117.367089,\n 40.172844\n ],\n [\n 117.367089,\n 40.172387\n ],\n [\n 117.389879,\n 40.228141\n ],\n [\n 117.450857,\n 40.252347\n ],\n [\n 117.571581,\n 40.21809\n ],\n [\n 117.652269,\n 40.12345\n ],\n [\n 117.652269,\n 40.12345\n ],\n [\n 117.651037,\n 40.122535\n ],\n [\n 117.651037,\n 40.122535\n ],\n [\n 117.71879,\n 40.082262\n ],\n [\n 117.71879,\n 40.082262\n ],\n [\n 117.75821,\n 40.073563\n ],\n [\n 117.75821,\n 40.073563\n ],\n [\n 117.782232,\n 39.968634\n ],\n [\n 117.614697,\n 39.972303\n ],\n [\n 117.589443,\n 39.997059\n ],\n [\n 117.513067,\n 39.910373\n ],\n [\n 117.513067,\n 39.910373\n ],\n [\n 117.537704,\n 39.835064\n ],\n [\n 117.537704,\n 39.835064\n ],\n [\n 117.540784,\n 39.822658\n ],\n [\n 117.540784,\n 39.822658\n ],\n [\n 117.57774,\n 39.727009\n ],\n [\n 117.644262,\n 39.702155\n ],\n [\n 117.66274,\n 39.636295\n ],\n [\n 117.619008,\n 39.603111\n ],\n [\n 117.736037,\n 39.560686\n ],\n [\n 117.736037,\n 39.560686\n ],\n [\n 117.74774,\n 39.58928\n ],\n [\n 117.866,\n 39.596657\n ],\n [\n 117.933753,\n 39.574062\n ],\n [\n 117.870311,\n 39.454972\n ],\n [\n 117.846906,\n 39.328274\n ],\n [\n 117.972557,\n 39.312536\n ],\n [\n 117.972557,\n 39.312536\n ],\n [\n 117.982412,\n 39.298647\n ],\n [\n 117.982412,\n 39.298647\n ],\n [\n 118.021833,\n 39.287071\n ],\n [\n 118.021833,\n 39.287071\n ],\n [\n 118.024296,\n 39.289386\n ],\n [\n 118.024296,\n 39.289386\n ],\n [\n 118.024912,\n 39.292164\n ],\n [\n 118.024912,\n 39.292164\n ],\n [\n 118.037231,\n 39.220353\n ],\n [\n 117.871543,\n 39.122479\n ],\n [\n 117.837667,\n 39.056999\n ],\n [\n 117.855529,\n 38.957502\n ],\n [\n 117.898029,\n 38.948661\n ],\n [\n 117.847522,\n 38.855535\n ],\n [\n 117.778536,\n 38.869046\n ],\n [\n 117.64611,\n 38.828972\n ],\n [\n 117.646725,\n 38.788875\n ],\n [\n 117.740964,\n 38.753888\n ],\n [\n 117.729261,\n 38.680127\n ],\n [\n 117.639334,\n 38.62686\n ],\n [\n 117.47919,\n 38.617043\n ],\n [\n 117.39419,\n 38.573553\n ],\n [\n 117.252524,\n 38.556711\n ],\n [\n 117.213104,\n 38.639947\n ],\n [\n 117.213104,\n 38.639947\n ],\n [\n 117.176764,\n 38.617978\n ],\n [\n 117.176764,\n 38.617978\n ],\n [\n 117.097924,\n 38.587118\n ],\n [\n 117.042489,\n 38.706279\n ],\n [\n 116.95133,\n 38.689468\n ],\n [\n 116.947634,\n 38.689468\n ],\n [\n 116.947634,\n 38.689468\n ],\n [\n 116.950714,\n 38.689468\n ],\n [\n 116.95133,\n 38.689468\n ],\n [\n 116.950714,\n 38.689468\n ],\n [\n 116.877417,\n 38.680594\n ],\n [\n 116.858939,\n 38.741289\n ],\n [\n 116.766548,\n 38.742222\n ],\n [\n 116.737599,\n 38.784677\n ],\n [\n 116.708034,\n 38.931907\n ],\n [\n 116.783179,\n 39.050959\n ],\n [\n 116.783179,\n 39.050959\n ],\n [\n 116.812744,\n 39.050959\n ],\n [\n 116.812744,\n 39.050959\n ],\n [\n 116.912526,\n 39.110873\n ],\n [\n 116.91191,\n 39.111338\n ],\n [\n 116.91191,\n 39.111338\n ],\n [\n 116.912526,\n 39.110873\n ],\n [\n 116.865714,\n 39.155428\n ],\n [\n 116.865714,\n 39.155428\n ],\n [\n 116.892816,\n 39.224061\n ],\n [\n 116.870642,\n 39.357426\n ],\n [\n 116.796113,\n 39.446656\n ],\n [\n 116.812128,\n 39.616018\n ],\n [\n 116.90575,\n 39.687883\n ],\n [\n 116.916837,\n 39.703996\n ],\n [\n 116.916837,\n 39.703996\n ],\n [\n 116.983975,\n 39.63906\n ],\n [\n 116.983975,\n 39.63906\n ],\n [\n 117.126873,\n 39.61694\n ],\n [\n 117.177996,\n 39.64551\n ],\n [\n 117.165061,\n 39.718725\n ],\n [\n 117.165061,\n 39.718725\n ],\n [\n 117.205713,\n 39.763813\n ],\n [\n 117.156438,\n 39.817603\n ],\n [\n 117.229735,\n 39.852981\n ],\n [\n 117.152126,\n 39.878239\n ],\n [\n 117.150894,\n 39.944785\n ],\n [\n 117.198322,\n 39.992933\n ],\n [\n 117.210024,\n 40.082262\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 130000,\n \"name\": \"河北省\",\n \"center\": [\n 114.502461,\n 38.045474\n ],\n \"childrenNum\": 11,\n \"level\": \"province\",\n \"subFeatureIndex\": 2,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 117.389879,\n 40.228141\n ],\n [\n 117.309807,\n 40.279284\n ],\n [\n 117.309191,\n 40.279284\n ],\n [\n 117.309807,\n 40.279284\n ],\n [\n 117.309191,\n 40.279284\n ],\n [\n 117.225423,\n 40.369148\n ],\n [\n 117.213104,\n 40.512136\n ],\n [\n 117.344299,\n 40.582152\n ],\n [\n 117.389879,\n 40.5617\n ],\n [\n 117.49582,\n 40.674334\n ],\n [\n 117.386799,\n 40.684317\n ],\n [\n 117.286401,\n 40.660719\n ],\n [\n 117.110858,\n 40.70836\n ],\n [\n 116.964881,\n 40.70972\n ],\n [\n 116.858323,\n 40.833423\n ],\n [\n 116.730208,\n 40.897676\n ],\n [\n 116.677853,\n 40.970902\n ],\n [\n 116.688324,\n 41.044499\n ],\n [\n 116.615643,\n 41.053072\n ],\n [\n 116.599013,\n 40.974516\n ],\n [\n 116.519557,\n 40.981292\n ],\n [\n 116.519557,\n 40.981292\n ],\n [\n 116.455499,\n 40.98084\n ],\n [\n 116.473977,\n 40.895867\n ],\n [\n 116.334159,\n 40.90446\n ],\n [\n 116.464738,\n 40.771827\n ],\n [\n 116.247311,\n 40.791762\n ],\n [\n 116.22021,\n 40.744181\n ],\n [\n 116.088399,\n 40.62667\n ],\n [\n 116.005247,\n 40.58397\n ],\n [\n 115.907929,\n 40.617133\n ],\n [\n 115.755792,\n 40.540333\n ],\n [\n 115.779197,\n 40.442501\n ],\n [\n 115.861733,\n 40.364589\n ],\n [\n 115.861733,\n 40.364589\n ],\n [\n 115.9184,\n 40.354103\n ],\n [\n 115.968907,\n 40.264219\n ],\n [\n 115.89869,\n 40.234536\n ],\n [\n 115.85311,\n 40.148609\n ],\n [\n 115.773038,\n 40.176044\n ],\n [\n 115.73485,\n 40.129398\n ],\n [\n 115.599343,\n 40.11979\n ],\n [\n 115.454597,\n 40.029595\n ],\n [\n 115.426264,\n 39.95029\n ],\n [\n 115.522967,\n 39.898898\n ],\n [\n 115.514344,\n 39.837821\n ],\n [\n 115.567314,\n 39.816224\n ],\n [\n 115.443511,\n 39.785426\n ],\n [\n 115.443511,\n 39.785426\n ],\n [\n 115.498945,\n 39.69617\n ],\n [\n 115.498945,\n 39.69617\n ],\n [\n 115.478619,\n 39.650578\n ],\n [\n 115.478619,\n 39.650578\n ],\n [\n 115.586408,\n 39.58928\n ],\n [\n 115.69543,\n 39.579135\n ],\n [\n 115.69543,\n 39.579135\n ],\n [\n 115.698509,\n 39.577751\n ],\n [\n 115.699125,\n 39.577751\n ],\n [\n 115.698509,\n 39.577751\n ],\n [\n 115.698509,\n 39.577751\n ],\n [\n 115.699125,\n 39.577751\n ],\n [\n 115.716988,\n 39.560225\n ],\n [\n 115.716988,\n 39.560225\n ],\n [\n 115.721299,\n 39.55146\n ],\n [\n 115.721299,\n 39.55146\n ],\n [\n 115.721299,\n 39.543617\n ],\n [\n 115.721299,\n 39.543617\n ],\n [\n 115.723763,\n 39.544539\n ],\n [\n 115.723763,\n 39.544539\n ],\n [\n 115.737314,\n 39.544078\n ],\n [\n 115.737314,\n 39.544078\n ],\n [\n 115.738545,\n 39.539925\n ],\n [\n 115.738545,\n 39.539464\n ],\n [\n 115.738545,\n 39.539925\n ],\n [\n 115.738545,\n 39.539464\n ],\n [\n 115.752712,\n 39.512696\n ],\n [\n 115.752712,\n 39.512696\n ],\n [\n 115.821081,\n 39.517312\n ],\n [\n 115.821081,\n 39.517312\n ],\n [\n 115.846951,\n 39.550999\n ],\n [\n 115.846951,\n 39.550999\n ],\n [\n 115.855574,\n 39.554689\n ],\n [\n 115.855574,\n 39.554689\n ],\n [\n 115.910393,\n 39.600345\n ],\n [\n 115.910393,\n 39.600345\n ],\n [\n 115.957204,\n 39.561147\n ],\n [\n 116.10195,\n 39.576368\n ],\n [\n 116.10195,\n 39.576368\n ],\n [\n 116.204196,\n 39.588819\n ],\n [\n 116.245464,\n 39.515466\n ],\n [\n 116.332927,\n 39.457744\n ],\n [\n 116.433325,\n 39.44296\n ],\n [\n 116.440716,\n 39.527466\n ],\n [\n 116.524484,\n 39.596657\n ],\n [\n 116.607636,\n 39.619705\n ],\n [\n 116.703106,\n 39.588819\n ],\n [\n 116.703106,\n 39.588819\n ],\n [\n 116.726512,\n 39.595274\n ],\n [\n 116.726512,\n 39.595274\n ],\n [\n 116.720969,\n 39.599884\n ],\n [\n 116.720969,\n 39.599884\n ],\n [\n 116.717273,\n 39.603572\n ],\n [\n 116.717273,\n 39.603572\n ],\n [\n 116.812128,\n 39.616018\n ],\n [\n 116.796113,\n 39.446656\n ],\n [\n 116.870642,\n 39.357426\n ],\n [\n 116.892816,\n 39.224061\n ],\n [\n 116.865714,\n 39.155428\n ],\n [\n 116.865714,\n 39.155428\n ],\n [\n 116.912526,\n 39.110873\n ],\n [\n 116.91191,\n 39.111338\n ],\n [\n 116.91191,\n 39.111338\n ],\n [\n 116.912526,\n 39.110873\n ],\n [\n 116.812744,\n 39.050959\n ],\n [\n 116.812744,\n 39.050959\n ],\n [\n 116.783179,\n 39.050959\n ],\n [\n 116.783179,\n 39.050959\n ],\n [\n 116.708034,\n 38.931907\n ],\n [\n 116.737599,\n 38.784677\n ],\n [\n 116.766548,\n 38.742222\n ],\n [\n 116.858939,\n 38.741289\n ],\n [\n 116.877417,\n 38.680594\n ],\n [\n 116.950714,\n 38.689468\n ],\n [\n 116.95133,\n 38.689468\n ],\n [\n 116.950714,\n 38.689468\n ],\n [\n 116.947634,\n 38.689468\n ],\n [\n 116.947634,\n 38.689468\n ],\n [\n 116.95133,\n 38.689468\n ],\n [\n 117.042489,\n 38.706279\n ],\n [\n 117.097924,\n 38.587118\n ],\n [\n 117.176764,\n 38.617978\n ],\n [\n 117.176764,\n 38.617978\n ],\n [\n 117.213104,\n 38.639947\n ],\n [\n 117.213104,\n 38.639947\n ],\n [\n 117.252524,\n 38.556711\n ],\n [\n 117.39419,\n 38.573553\n ],\n [\n 117.47919,\n 38.617043\n ],\n [\n 117.639334,\n 38.62686\n ],\n [\n 117.638102,\n 38.545013\n ],\n [\n 117.781,\n 38.374004\n ],\n [\n 117.937449,\n 38.387606\n ],\n [\n 117.895565,\n 38.30173\n ],\n [\n 117.808718,\n 38.228445\n ],\n [\n 117.771761,\n 38.136734\n ],\n [\n 117.70216,\n 38.075529\n ],\n [\n 117.5839,\n 38.070819\n ],\n [\n 117.513067,\n 37.94353\n ],\n [\n 117.438538,\n 37.853823\n ],\n [\n 117.34122,\n 37.863271\n ],\n [\n 117.267923,\n 37.838704\n ],\n [\n 117.093612,\n 37.849571\n ],\n [\n 117.023395,\n 37.832561\n ],\n [\n 116.788106,\n 37.843429\n ],\n [\n 116.724664,\n 37.744139\n ],\n [\n 116.433941,\n 37.47349\n ],\n [\n 116.38097,\n 37.522858\n ],\n [\n 116.379738,\n 37.521909\n ],\n [\n 116.38097,\n 37.522858\n ],\n [\n 116.379738,\n 37.521909\n ],\n [\n 116.337238,\n 37.580255\n ],\n [\n 116.291659,\n 37.557966\n ],\n [\n 116.27626,\n 37.466841\n ],\n [\n 116.240536,\n 37.489633\n ],\n [\n 116.240536,\n 37.489633\n ],\n [\n 116.226369,\n 37.428365\n ],\n [\n 116.2855,\n 37.404604\n ],\n [\n 116.236224,\n 37.361816\n ],\n [\n 116.169087,\n 37.384164\n ],\n [\n 116.051443,\n 37.367998\n ],\n [\n 115.984921,\n 37.326616\n ],\n [\n 115.969523,\n 37.239497\n ],\n [\n 115.909777,\n 37.206622\n ],\n [\n 115.868509,\n 37.076414\n ],\n [\n 115.776734,\n 36.992829\n ],\n [\n 115.79706,\n 36.968931\n ],\n [\n 115.71206,\n 36.883313\n ],\n [\n 115.683727,\n 36.808139\n ],\n [\n 115.479851,\n 36.76022\n ],\n [\n 115.365902,\n 36.622043\n ],\n [\n 115.283366,\n 36.486505\n ],\n [\n 115.308004,\n 36.461967\n ],\n [\n 115.308004,\n 36.461967\n ],\n [\n 115.366518,\n 36.308793\n ],\n [\n 115.466916,\n 36.259115\n ],\n [\n 115.466916,\n 36.259115\n ],\n [\n 115.483547,\n 36.149036\n ],\n [\n 115.312931,\n 36.088137\n ],\n [\n 115.201446,\n 36.210371\n ],\n [\n 115.201446,\n 36.210371\n ],\n [\n 115.064092,\n 36.178985\n ],\n [\n 114.996955,\n 36.06831\n ],\n [\n 114.914419,\n 36.051865\n ],\n [\n 114.912571,\n 36.140339\n ],\n [\n 114.591666,\n 36.130192\n ],\n [\n 114.345291,\n 36.255738\n ],\n [\n 114.169132,\n 36.243675\n ],\n [\n 114.169132,\n 36.243675\n ],\n [\n 114.060727,\n 36.276482\n ],\n [\n 114.055799,\n 36.330005\n ],\n [\n 113.982502,\n 36.358921\n ],\n [\n 113.911054,\n 36.314578\n ],\n [\n 113.881488,\n 36.354102\n ],\n [\n 113.819894,\n 36.330969\n ],\n [\n 113.731199,\n 36.363257\n ],\n [\n 113.708409,\n 36.423461\n ],\n [\n 113.554425,\n 36.494682\n ],\n [\n 113.588301,\n 36.562955\n ],\n [\n 113.476816,\n 36.655171\n ],\n [\n 113.499606,\n 36.740564\n ],\n [\n 113.680692,\n 36.789933\n ],\n [\n 113.696707,\n 36.882356\n ],\n [\n 113.773083,\n 36.855072\n ],\n [\n 113.76138,\n 36.956022\n ],\n [\n 113.791561,\n 36.987572\n ],\n [\n 113.758301,\n 37.075459\n ],\n [\n 113.773083,\n 37.1518\n ],\n [\n 113.832213,\n 37.167536\n ],\n [\n 113.90243,\n 37.309962\n ],\n [\n 114.014531,\n 37.424564\n ],\n [\n 114.036705,\n 37.49438\n ],\n [\n 114.123553,\n 37.60159\n ],\n [\n 114.12848,\n 37.698231\n ],\n [\n 113.993589,\n 37.706752\n ],\n [\n 114.044712,\n 37.762116\n ],\n [\n 113.976959,\n 37.816965\n ],\n [\n 113.951706,\n 37.917573\n ],\n [\n 113.872249,\n 37.990228\n ],\n [\n 113.876561,\n 38.055273\n ],\n [\n 113.810039,\n 38.112729\n ],\n [\n 113.825438,\n 38.169199\n ],\n [\n 113.720728,\n 38.174843\n ],\n [\n 113.711489,\n 38.213873\n ],\n [\n 113.570439,\n 38.237375\n ],\n [\n 113.525475,\n 38.382916\n ],\n [\n 113.583374,\n 38.459793\n ],\n [\n 113.561816,\n 38.558115\n ],\n [\n 113.612939,\n 38.646022\n ],\n [\n 113.70225,\n 38.65163\n ],\n [\n 113.720728,\n 38.713283\n ],\n [\n 113.839605,\n 38.758554\n ],\n [\n 113.855619,\n 38.828972\n ],\n [\n 113.776163,\n 38.885814\n ],\n [\n 113.76754,\n 38.959828\n ],\n [\n 113.898119,\n 39.067684\n ],\n [\n 114.050872,\n 39.135939\n ],\n [\n 114.10877,\n 39.052352\n ],\n [\n 114.345907,\n 39.075116\n ],\n [\n 114.388406,\n 39.176767\n ],\n [\n 114.47587,\n 39.216181\n ],\n [\n 114.416124,\n 39.243063\n ],\n [\n 114.480797,\n 39.350023\n ],\n [\n 114.470942,\n 39.408759\n ],\n [\n 114.568877,\n 39.574062\n ],\n [\n 114.408117,\n 39.65196\n ],\n [\n 114.395182,\n 39.867218\n ],\n [\n 114.225183,\n 39.857114\n ],\n [\n 114.17406,\n 39.897521\n ],\n [\n 114.047176,\n 39.916339\n ],\n [\n 114.021307,\n 39.992017\n ],\n [\n 113.910438,\n 40.011725\n ],\n [\n 113.956017,\n 40.031428\n ],\n [\n 113.989278,\n 40.112469\n ],\n [\n 114.044712,\n 40.05662\n ],\n [\n 114.101995,\n 40.099655\n ],\n [\n 114.073046,\n 40.168729\n ],\n [\n 114.073046,\n 40.168729\n ],\n [\n 114.235654,\n 40.198442\n ],\n [\n 114.255364,\n 40.236363\n ],\n [\n 114.46971,\n 40.267872\n ],\n [\n 114.530688,\n 40.344983\n ],\n [\n 114.446305,\n 40.372795\n ],\n [\n 114.31203,\n 40.372795\n ],\n [\n 114.267066,\n 40.474369\n ],\n [\n 114.283081,\n 40.590785\n ],\n [\n 114.209168,\n 40.629848\n ],\n [\n 114.134639,\n 40.737381\n ],\n [\n 114.044712,\n 40.83116\n ],\n [\n 114.073661,\n 40.857412\n ],\n [\n 113.973263,\n 40.983099\n ],\n [\n 113.819279,\n 41.097726\n ],\n [\n 113.920293,\n 41.172081\n ],\n [\n 113.996669,\n 41.192345\n ],\n [\n 113.927068,\n 41.326829\n ],\n [\n 113.94493,\n 41.39105\n ],\n [\n 113.871017,\n 41.41349\n ],\n [\n 113.930764,\n 41.485693\n ],\n [\n 114.100147,\n 41.537218\n ],\n [\n 114.230726,\n 41.513477\n ],\n [\n 114.203009,\n 41.793334\n ],\n [\n 114.34837,\n 41.947049\n ],\n [\n 114.510978,\n 41.973299\n ],\n [\n 114.466015,\n 42.038656\n ],\n [\n 114.510978,\n 42.111047\n ],\n [\n 114.765361,\n 42.118593\n ],\n [\n 114.828803,\n 42.147434\n ],\n [\n 114.9021,\n 42.015544\n ],\n [\n 114.922426,\n 41.824999\n ],\n [\n 114.866991,\n 41.803147\n ],\n [\n 114.899636,\n 41.756299\n ],\n [\n 114.895325,\n 41.636567\n ],\n [\n 114.862064,\n 41.603915\n ],\n [\n 115.0992,\n 41.624045\n ],\n [\n 115.252569,\n 41.579303\n ],\n [\n 115.376989,\n 41.602126\n ],\n [\n 115.319091,\n 41.691546\n ],\n [\n 115.654162,\n 41.829011\n ],\n [\n 115.811226,\n 41.912328\n ],\n [\n 115.916552,\n 41.945269\n ],\n [\n 116.016334,\n 41.777273\n ],\n [\n 116.09887,\n 41.776381\n ],\n [\n 116.122892,\n 41.861995\n ],\n [\n 116.194341,\n 41.861995\n ],\n [\n 116.233145,\n 41.941263\n ],\n [\n 116.310137,\n 41.997316\n ],\n [\n 116.409303,\n 41.994203\n ],\n [\n 116.386514,\n 41.952389\n ],\n [\n 116.510933,\n 41.974189\n ],\n [\n 116.560209,\n 41.928356\n ],\n [\n 116.727744,\n 41.951054\n ],\n [\n 116.879881,\n 42.018211\n ],\n [\n 116.890352,\n 42.092846\n ],\n [\n 116.789338,\n 42.200202\n ],\n [\n 116.907598,\n 42.191337\n ],\n [\n 116.886656,\n 42.366641\n ],\n [\n 116.910062,\n 42.394928\n ],\n [\n 116.910062,\n 42.394928\n ],\n [\n 116.927308,\n 42.40509\n ],\n [\n 116.927308,\n 42.40509\n ],\n [\n 116.929156,\n 42.407741\n ],\n [\n 116.929156,\n 42.408182\n ],\n [\n 116.929156,\n 42.407741\n ],\n [\n 116.929156,\n 42.408182\n ],\n [\n 116.936547,\n 42.410833\n ],\n [\n 116.936547,\n 42.410833\n ],\n [\n 116.944555,\n 42.415251\n ],\n [\n 116.944555,\n 42.415251\n ],\n [\n 116.976583,\n 42.427618\n ],\n [\n 116.976583,\n 42.427618\n ],\n [\n 116.984591,\n 42.427176\n ],\n [\n 116.984591,\n 42.427176\n ],\n [\n 116.993214,\n 42.425851\n ],\n [\n 116.993214,\n 42.425851\n ],\n [\n 116.995678,\n 42.426734\n ],\n [\n 116.995678,\n 42.426734\n ],\n [\n 117.001837,\n 42.432476\n ],\n [\n 117.001837,\n 42.432476\n ],\n [\n 117.004301,\n 42.432476\n ],\n [\n 117.004301,\n 42.432476\n ],\n [\n 117.005533,\n 42.4338\n ],\n [\n 117.005533,\n 42.4338\n ],\n [\n 117.133648,\n 42.470443\n ],\n [\n 117.133648,\n 42.470443\n ],\n [\n 117.147815,\n 42.470443\n ],\n [\n 117.147815,\n 42.470443\n ],\n [\n 117.264227,\n 42.476621\n ],\n [\n 117.264227,\n 42.476621\n ],\n [\n 117.412669,\n 42.472649\n ],\n [\n 117.387415,\n 42.517648\n ],\n [\n 117.387415,\n 42.517648\n ],\n [\n 117.43669,\n 42.584205\n ],\n [\n 117.516146,\n 42.599622\n ],\n [\n 117.516146,\n 42.599622\n ],\n [\n 117.687377,\n 42.582884\n ],\n [\n 117.779768,\n 42.618558\n ],\n [\n 117.874007,\n 42.510151\n ],\n [\n 118.019369,\n 42.39537\n ],\n [\n 118.060021,\n 42.298083\n ],\n [\n 117.977485,\n 42.229892\n ],\n [\n 118.109296,\n 42.165176\n ],\n [\n 118.097593,\n 42.105277\n ],\n [\n 118.155491,\n 42.081301\n ],\n [\n 118.119767,\n 42.034656\n ],\n [\n 118.194296,\n 42.031545\n ],\n [\n 118.212774,\n 42.081301\n ],\n [\n 118.297157,\n 42.048876\n ],\n [\n 118.237411,\n 42.023101\n ],\n [\n 118.313788,\n 41.987977\n ],\n [\n 118.268824,\n 41.930136\n ],\n [\n 118.340273,\n 41.872688\n ],\n [\n 118.29223,\n 41.772811\n ],\n [\n 118.165962,\n 41.813405\n ],\n [\n 118.130854,\n 41.74246\n ],\n [\n 118.214006,\n 41.641933\n ],\n [\n 118.230636,\n 41.581989\n ],\n [\n 118.307012,\n 41.569008\n ],\n [\n 118.271904,\n 41.471349\n ],\n [\n 118.348896,\n 41.428296\n ],\n [\n 118.35136,\n 41.337163\n ],\n [\n 118.519511,\n 41.353783\n ],\n [\n 118.677192,\n 41.350639\n ],\n [\n 118.741866,\n 41.324133\n ],\n [\n 118.843496,\n 41.374439\n ],\n [\n 118.890923,\n 41.300764\n ],\n [\n 118.96422,\n 41.309303\n ],\n [\n 119.197661,\n 41.282781\n ],\n [\n 119.239545,\n 41.314696\n ],\n [\n 119.2494,\n 41.279634\n ],\n [\n 119.126212,\n 41.138744\n ],\n [\n 119.037516,\n 41.067509\n ],\n [\n 118.96422,\n 41.079236\n ],\n [\n 118.951901,\n 41.01832\n ],\n [\n 119.013495,\n 41.007485\n ],\n [\n 118.977154,\n 40.959155\n ],\n [\n 118.977154,\n 40.959155\n ],\n [\n 118.90201,\n 40.960963\n ],\n [\n 118.849039,\n 40.800821\n ],\n [\n 118.911249,\n 40.776811\n ],\n [\n 119.054147,\n 40.664804\n ],\n [\n 119.184726,\n 40.680233\n ],\n [\n 119.162552,\n 40.599872\n ],\n [\n 119.30237,\n 40.530329\n ],\n [\n 119.571536,\n 40.540333\n ],\n [\n 119.598637,\n 40.465266\n ],\n [\n 119.586934,\n 40.37553\n ],\n [\n 119.642369,\n 40.291151\n ],\n [\n 119.625123,\n 40.224029\n ],\n [\n 119.745847,\n 40.208038\n ],\n [\n 119.736608,\n 40.10469\n ],\n [\n 119.779723,\n 40.049293\n ],\n [\n 119.779723,\n 40.049293\n ],\n [\n 119.780339,\n 40.047002\n ],\n [\n 119.780339,\n 40.047002\n ],\n [\n 119.817296,\n 40.049751\n ],\n [\n 119.817296,\n 40.049751\n ],\n [\n 119.848093,\n 40.020432\n ],\n [\n 119.848093,\n 40.020432\n ],\n [\n 119.845629,\n 40.000726\n ],\n [\n 119.845629,\n 40.000726\n ],\n [\n 119.854252,\n 39.988349\n ],\n [\n 119.791426,\n 39.952124\n ],\n [\n 119.540739,\n 39.88834\n ],\n [\n 119.536427,\n 39.808871\n ],\n [\n 119.466826,\n 39.810709\n ],\n [\n 119.357805,\n 39.721946\n ],\n [\n 119.269726,\n 39.498385\n ],\n [\n 119.314689,\n 39.412457\n ],\n [\n 119.190885,\n 39.368528\n ],\n [\n 119.096031,\n 39.242136\n ],\n [\n 118.948821,\n 39.138259\n ],\n [\n 118.955597,\n 39.176303\n ],\n [\n 118.76096,\n 39.133618\n ],\n [\n 118.637156,\n 39.157284\n ],\n [\n 118.533062,\n 39.090907\n ],\n [\n 118.604511,\n 38.971458\n ],\n [\n 118.491178,\n 38.909097\n ],\n [\n 118.377845,\n 38.971923\n ],\n [\n 118.366143,\n 39.016101\n ],\n [\n 118.225092,\n 39.034694\n ],\n [\n 118.120999,\n 39.186043\n ],\n [\n 118.037231,\n 39.220353\n ],\n [\n 118.024912,\n 39.292164\n ],\n [\n 118.024912,\n 39.292164\n ],\n [\n 118.024296,\n 39.289386\n ],\n [\n 118.024296,\n 39.289386\n ],\n [\n 118.021833,\n 39.287071\n ],\n [\n 118.021833,\n 39.287071\n ],\n [\n 117.982412,\n 39.298647\n ],\n [\n 117.982412,\n 39.298647\n ],\n [\n 117.972557,\n 39.312536\n ],\n [\n 117.972557,\n 39.312536\n ],\n [\n 117.846906,\n 39.328274\n ],\n [\n 117.870311,\n 39.454972\n ],\n [\n 117.933753,\n 39.574062\n ],\n [\n 117.866,\n 39.596657\n ],\n [\n 117.74774,\n 39.58928\n ],\n [\n 117.736037,\n 39.560686\n ],\n [\n 117.736037,\n 39.560686\n ],\n [\n 117.619008,\n 39.603111\n ],\n [\n 117.66274,\n 39.636295\n ],\n [\n 117.644262,\n 39.702155\n ],\n [\n 117.57774,\n 39.727009\n ],\n [\n 117.540784,\n 39.822658\n ],\n [\n 117.540784,\n 39.822658\n ],\n [\n 117.537704,\n 39.835064\n ],\n [\n 117.537704,\n 39.835064\n ],\n [\n 117.513067,\n 39.910373\n ],\n [\n 117.513067,\n 39.910373\n ],\n [\n 117.589443,\n 39.997059\n ],\n [\n 117.614697,\n 39.972303\n ],\n [\n 117.782232,\n 39.968634\n ],\n [\n 117.75821,\n 40.073563\n ],\n [\n 117.75821,\n 40.073563\n ],\n [\n 117.71879,\n 40.082262\n ],\n [\n 117.71879,\n 40.082262\n ],\n [\n 117.651037,\n 40.122535\n ],\n [\n 117.651037,\n 40.122535\n ],\n [\n 117.652269,\n 40.12345\n ],\n [\n 117.652269,\n 40.12345\n ],\n [\n 117.571581,\n 40.21809\n ],\n [\n 117.450857,\n 40.252347\n ],\n [\n 117.389879,\n 40.228141\n ]\n ]\n ],\n [\n [\n [\n 116.90575,\n 39.687883\n ],\n [\n 116.902055,\n 39.763813\n ],\n [\n 116.949482,\n 39.778529\n ],\n [\n 116.926076,\n 39.835524\n ],\n [\n 116.786874,\n 39.886963\n ],\n [\n 116.757925,\n 39.968176\n ],\n [\n 116.783794,\n 40.035093\n ],\n [\n 116.927924,\n 40.054788\n ],\n [\n 116.999989,\n 40.030053\n ],\n [\n 117.102851,\n 40.073563\n ],\n [\n 117.102235,\n 40.073105\n ],\n [\n 117.102235,\n 40.073105\n ],\n [\n 117.102851,\n 40.073563\n ],\n [\n 117.105315,\n 40.074479\n ],\n [\n 117.105315,\n 40.074479\n ],\n [\n 117.210024,\n 40.082262\n ],\n [\n 117.198322,\n 39.992933\n ],\n [\n 117.150894,\n 39.944785\n ],\n [\n 117.152126,\n 39.878239\n ],\n [\n 117.229735,\n 39.852981\n ],\n [\n 117.156438,\n 39.817603\n ],\n [\n 117.205713,\n 39.763813\n ],\n [\n 117.165061,\n 39.718725\n ],\n [\n 117.165061,\n 39.718725\n ],\n [\n 117.177996,\n 39.64551\n ],\n [\n 117.126873,\n 39.61694\n ],\n [\n 116.983975,\n 39.63906\n ],\n [\n 116.983975,\n 39.63906\n ],\n [\n 116.916837,\n 39.703996\n ],\n [\n 116.916837,\n 39.703996\n ],\n [\n 116.90575,\n 39.687883\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 140000,\n \"name\": \"山西省\",\n \"center\": [\n 112.549248,\n 37.857014\n ],\n \"centroid\": [\n 112.305144,\n 37.619053\n ],\n \"childrenNum\": 11,\n \"level\": \"province\",\n \"subFeatureIndex\": 3,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 113.731199,\n 36.363257\n ],\n [\n 113.716417,\n 36.262492\n ],\n [\n 113.651743,\n 36.172224\n ],\n [\n 113.694859,\n 36.026707\n ],\n [\n 113.637576,\n 35.98847\n ],\n [\n 113.656671,\n 35.836792\n ],\n [\n 113.604316,\n 35.797008\n ],\n [\n 113.578446,\n 35.63378\n ],\n [\n 113.485439,\n 35.520879\n ],\n [\n 113.31236,\n 35.481424\n ],\n [\n 113.298194,\n 35.427325\n ],\n [\n 113.189789,\n 35.449261\n ],\n [\n 113.126347,\n 35.332197\n ],\n [\n 112.997,\n 35.362455\n ],\n [\n 112.992072,\n 35.296068\n ],\n [\n 112.911384,\n 35.24673\n ],\n [\n 112.818377,\n 35.258457\n ],\n [\n 112.766022,\n 35.203718\n ],\n [\n 112.628052,\n 35.263342\n ],\n [\n 112.637291,\n 35.225716\n ],\n [\n 112.513487,\n 35.218384\n ],\n [\n 112.058924,\n 35.279951\n ],\n [\n 112.078634,\n 35.219362\n ],\n [\n 112.062004,\n 35.055937\n ],\n [\n 111.900012,\n 35.079933\n ],\n [\n 111.66965,\n 34.988319\n ],\n [\n 111.570484,\n 34.843094\n ],\n [\n 111.346282,\n 34.831798\n ],\n [\n 111.232949,\n 34.789551\n ],\n [\n 111.148566,\n 34.80773\n ],\n [\n 111.118385,\n 34.756622\n ],\n [\n 110.966248,\n 34.70499\n ],\n [\n 110.929907,\n 34.731548\n ],\n [\n 110.883712,\n 34.642498\n ],\n [\n 110.749437,\n 34.652342\n ],\n [\n 110.710017,\n 34.605078\n ],\n [\n 110.533242,\n 34.583406\n ],\n [\n 110.474728,\n 34.617389\n ],\n [\n 110.379257,\n 34.600646\n ],\n [\n 110.310272,\n 34.608033\n ],\n [\n 110.241287,\n 34.682361\n ],\n [\n 110.232664,\n 34.803308\n ],\n [\n 110.257301,\n 34.93487\n ],\n [\n 110.325671,\n 35.014785\n ],\n [\n 110.39404,\n 35.271647\n ],\n [\n 110.45009,\n 35.327803\n ],\n [\n 110.477808,\n 35.413672\n ],\n [\n 110.525851,\n 35.44195\n ],\n [\n 110.609619,\n 35.632321\n ],\n [\n 110.57759,\n 35.701346\n ],\n [\n 110.549257,\n 35.877527\n ],\n [\n 110.511684,\n 35.879951\n ],\n [\n 110.447011,\n 36.164495\n ],\n [\n 110.474112,\n 36.248018\n ],\n [\n 110.45933,\n 36.330969\n ],\n [\n 110.503677,\n 36.487948\n ],\n [\n 110.496902,\n 36.582175\n ],\n [\n 110.394656,\n 36.676768\n ],\n [\n 110.447011,\n 36.737687\n ],\n [\n 110.416214,\n 36.790892\n ],\n [\n 110.425453,\n 36.960325\n ],\n [\n 110.382953,\n 37.021975\n ],\n [\n 110.444547,\n 37.007164\n ],\n [\n 110.53509,\n 37.137969\n ],\n [\n 110.690307,\n 37.287115\n ],\n [\n 110.695234,\n 37.34945\n ],\n [\n 110.630561,\n 37.373228\n ],\n [\n 110.644111,\n 37.435017\n ],\n [\n 110.745125,\n 37.450693\n ],\n [\n 110.795017,\n 37.566029\n ],\n [\n 110.796248,\n 37.66319\n ],\n [\n 110.706321,\n 37.705332\n ],\n [\n 110.758676,\n 37.744139\n ],\n [\n 110.663821,\n 37.803256\n ],\n [\n 110.59422,\n 37.921821\n ],\n [\n 110.522771,\n 37.954853\n ],\n [\n 110.501213,\n 38.031713\n ],\n [\n 110.509221,\n 38.192245\n ],\n [\n 110.565887,\n 38.215283\n ],\n [\n 110.57759,\n 38.297035\n ],\n [\n 110.661358,\n 38.308773\n ],\n [\n 110.746973,\n 38.366029\n ],\n [\n 110.77777,\n 38.44105\n ],\n [\n 110.874473,\n 38.453702\n ],\n [\n 110.920052,\n 38.581973\n ],\n [\n 110.880016,\n 38.618446\n ],\n [\n 111.009363,\n 38.847614\n ],\n [\n 110.980414,\n 38.970063\n ],\n [\n 111.138711,\n 39.064897\n ],\n [\n 111.163348,\n 39.152644\n ],\n [\n 111.247732,\n 39.302351\n ],\n [\n 111.125776,\n 39.366678\n ],\n [\n 111.171971,\n 39.42355\n ],\n [\n 111.337043,\n 39.420777\n ],\n [\n 111.418963,\n 39.500232\n ],\n [\n 111.462079,\n 39.626157\n ],\n [\n 111.502115,\n 39.663015\n ],\n [\n 111.646245,\n 39.644128\n ],\n [\n 111.783599,\n 39.588819\n ],\n [\n 111.842729,\n 39.620166\n ],\n [\n 111.93204,\n 39.61233\n ],\n [\n 111.970229,\n 39.79646\n ],\n [\n 112.28559,\n 40.197985\n ],\n [\n 112.310227,\n 40.256457\n ],\n [\n 112.456205,\n 40.300278\n ],\n [\n 112.6299,\n 40.235906\n ],\n [\n 112.72845,\n 40.168272\n ],\n [\n 112.844863,\n 40.203926\n ],\n [\n 112.892906,\n 40.326284\n ],\n [\n 113.251382,\n 40.413352\n ],\n [\n 113.316056,\n 40.319898\n ],\n [\n 113.559968,\n 40.348631\n ],\n [\n 113.794641,\n 40.518049\n ],\n [\n 113.855619,\n 40.457071\n ],\n [\n 113.948626,\n 40.514865\n ],\n [\n 114.061959,\n 40.528964\n ],\n [\n 114.041633,\n 40.608503\n ],\n [\n 114.074277,\n 40.723325\n ],\n [\n 114.134639,\n 40.737381\n ],\n [\n 114.209168,\n 40.629848\n ],\n [\n 114.283081,\n 40.590785\n ],\n [\n 114.267066,\n 40.474369\n ],\n [\n 114.31203,\n 40.372795\n ],\n [\n 114.446305,\n 40.372795\n ],\n [\n 114.530688,\n 40.344983\n ],\n [\n 114.46971,\n 40.267872\n ],\n [\n 114.255364,\n 40.236363\n ],\n [\n 114.235654,\n 40.198442\n ],\n [\n 114.073046,\n 40.168729\n ],\n [\n 114.073046,\n 40.168729\n ],\n [\n 114.101995,\n 40.099655\n ],\n [\n 114.044712,\n 40.05662\n ],\n [\n 113.989278,\n 40.112469\n ],\n [\n 113.956017,\n 40.031428\n ],\n [\n 113.910438,\n 40.011725\n ],\n [\n 114.021307,\n 39.992017\n ],\n [\n 114.047176,\n 39.916339\n ],\n [\n 114.17406,\n 39.897521\n ],\n [\n 114.225183,\n 39.857114\n ],\n [\n 114.395182,\n 39.867218\n ],\n [\n 114.408117,\n 39.65196\n ],\n [\n 114.568877,\n 39.574062\n ],\n [\n 114.470942,\n 39.408759\n ],\n [\n 114.480797,\n 39.350023\n ],\n [\n 114.416124,\n 39.243063\n ],\n [\n 114.47587,\n 39.216181\n ],\n [\n 114.388406,\n 39.176767\n ],\n [\n 114.345907,\n 39.075116\n ],\n [\n 114.10877,\n 39.052352\n ],\n [\n 114.050872,\n 39.135939\n ],\n [\n 113.898119,\n 39.067684\n ],\n [\n 113.76754,\n 38.959828\n ],\n [\n 113.776163,\n 38.885814\n ],\n [\n 113.855619,\n 38.828972\n ],\n [\n 113.839605,\n 38.758554\n ],\n [\n 113.720728,\n 38.713283\n ],\n [\n 113.70225,\n 38.65163\n ],\n [\n 113.612939,\n 38.646022\n ],\n [\n 113.561816,\n 38.558115\n ],\n [\n 113.583374,\n 38.459793\n ],\n [\n 113.525475,\n 38.382916\n ],\n [\n 113.570439,\n 38.237375\n ],\n [\n 113.711489,\n 38.213873\n ],\n [\n 113.720728,\n 38.174843\n ],\n [\n 113.825438,\n 38.169199\n ],\n [\n 113.810039,\n 38.112729\n ],\n [\n 113.876561,\n 38.055273\n ],\n [\n 113.872249,\n 37.990228\n ],\n [\n 113.951706,\n 37.917573\n ],\n [\n 113.976959,\n 37.816965\n ],\n [\n 114.044712,\n 37.762116\n ],\n [\n 113.993589,\n 37.706752\n ],\n [\n 114.12848,\n 37.698231\n ],\n [\n 114.123553,\n 37.60159\n ],\n [\n 114.036705,\n 37.49438\n ],\n [\n 114.014531,\n 37.424564\n ],\n [\n 113.90243,\n 37.309962\n ],\n [\n 113.832213,\n 37.167536\n ],\n [\n 113.773083,\n 37.1518\n ],\n [\n 113.758301,\n 37.075459\n ],\n [\n 113.791561,\n 36.987572\n ],\n [\n 113.76138,\n 36.956022\n ],\n [\n 113.773083,\n 36.855072\n ],\n [\n 113.696707,\n 36.882356\n ],\n [\n 113.680692,\n 36.789933\n ],\n [\n 113.499606,\n 36.740564\n ],\n [\n 113.476816,\n 36.655171\n ],\n [\n 113.588301,\n 36.562955\n ],\n [\n 113.554425,\n 36.494682\n ],\n [\n 113.708409,\n 36.423461\n ],\n [\n 113.731199,\n 36.363257\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 150000,\n \"name\": \"内蒙古自治区\",\n \"center\": [\n 111.670801,\n 40.818311\n ],\n \"centroid\": [\n 114.059024,\n 44.315561\n ],\n \"childrenNum\": 12,\n \"level\": \"province\",\n \"subFeatureIndex\": 4,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 123.703873,\n 43.370824\n ],\n [\n 123.664453,\n 43.264606\n ],\n [\n 123.666916,\n 43.179585\n ],\n [\n 123.572678,\n 43.0035\n ],\n [\n 123.515395,\n 43.027561\n ],\n [\n 123.515395,\n 43.027561\n ],\n [\n 123.474743,\n 43.04243\n ],\n [\n 123.259165,\n 42.992997\n ],\n [\n 123.18402,\n 42.926002\n ],\n [\n 123.169853,\n 42.859811\n ],\n [\n 123.227752,\n 42.831735\n ],\n [\n 123.058368,\n 42.768957\n ],\n [\n 122.887137,\n 42.770275\n ],\n [\n 122.831087,\n 42.722381\n ],\n [\n 122.786123,\n 42.756218\n ],\n [\n 122.786123,\n 42.756218\n ],\n [\n 122.732536,\n 42.786524\n ],\n [\n 122.624747,\n 42.773349\n ],\n [\n 122.563769,\n 42.826031\n ],\n [\n 122.436886,\n 42.843142\n ],\n [\n 122.35127,\n 42.830419\n ],\n [\n 122.374676,\n 42.774667\n ],\n [\n 122.457212,\n 42.774227\n ],\n [\n 122.395002,\n 42.683687\n ],\n [\n 122.338951,\n 42.670051\n ],\n [\n 122.203445,\n 42.731171\n ],\n [\n 122.20406,\n 42.683687\n ],\n [\n 122.071634,\n 42.711391\n ],\n [\n 121.940438,\n 42.688525\n ],\n [\n 121.904714,\n 42.569666\n ],\n [\n 121.66573,\n 42.437333\n ],\n [\n 121.604752,\n 42.494271\n ],\n [\n 121.388557,\n 42.475297\n ],\n [\n 121.304789,\n 42.435567\n ],\n [\n 121.304789,\n 42.435567\n ],\n [\n 121.285079,\n 42.387857\n ],\n [\n 121.068884,\n 42.252483\n ],\n [\n 120.933378,\n 42.279493\n ],\n [\n 120.79048,\n 42.218372\n ],\n [\n 120.745516,\n 42.223689\n ],\n [\n 120.624792,\n 42.154532\n ],\n [\n 120.58414,\n 42.167394\n ],\n [\n 120.466496,\n 42.105277\n ],\n [\n 120.456641,\n 42.016433\n ],\n [\n 120.373489,\n 41.994648\n ],\n [\n 120.188707,\n 41.848179\n ],\n [\n 120.096316,\n 41.696907\n ],\n [\n 120.035954,\n 41.708075\n ],\n [\n 120.051968,\n 41.775935\n ],\n [\n 119.989759,\n 41.898969\n ],\n [\n 119.837622,\n 42.135455\n ],\n [\n 119.846861,\n 42.21527\n ],\n [\n 119.744615,\n 42.211725\n ],\n [\n 119.541971,\n 42.292329\n ],\n [\n 119.572152,\n 42.359568\n ],\n [\n 119.502551,\n 42.387857\n ],\n [\n 119.415703,\n 42.309588\n ],\n [\n 119.284508,\n 42.265325\n ],\n [\n 119.237697,\n 42.201088\n ],\n [\n 119.315921,\n 42.119037\n ],\n [\n 119.384906,\n 42.089738\n ],\n [\n 119.324544,\n 41.969296\n ],\n [\n 119.334399,\n 41.869569\n ],\n [\n 119.294363,\n 41.775935\n ],\n [\n 119.307914,\n 41.657581\n ],\n [\n 119.415703,\n 41.590044\n ],\n [\n 119.361501,\n 41.56498\n ],\n [\n 119.405848,\n 41.508548\n ],\n [\n 119.376283,\n 41.422015\n ],\n [\n 119.30545,\n 41.402271\n ],\n [\n 119.326392,\n 41.329525\n ],\n [\n 119.239545,\n 41.314696\n ],\n [\n 119.197661,\n 41.282781\n ],\n [\n 118.96422,\n 41.309303\n ],\n [\n 118.890923,\n 41.300764\n ],\n [\n 118.843496,\n 41.374439\n ],\n [\n 118.741866,\n 41.324133\n ],\n [\n 118.677192,\n 41.350639\n ],\n [\n 118.519511,\n 41.353783\n ],\n [\n 118.35136,\n 41.337163\n ],\n [\n 118.348896,\n 41.428296\n ],\n [\n 118.271904,\n 41.471349\n ],\n [\n 118.307012,\n 41.569008\n ],\n [\n 118.230636,\n 41.581989\n ],\n [\n 118.214006,\n 41.641933\n ],\n [\n 118.130854,\n 41.74246\n ],\n [\n 118.165962,\n 41.813405\n ],\n [\n 118.29223,\n 41.772811\n ],\n [\n 118.340273,\n 41.872688\n ],\n [\n 118.268824,\n 41.930136\n ],\n [\n 118.313788,\n 41.987977\n ],\n [\n 118.237411,\n 42.023101\n ],\n [\n 118.297157,\n 42.048876\n ],\n [\n 118.212774,\n 42.081301\n ],\n [\n 118.194296,\n 42.031545\n ],\n [\n 118.119767,\n 42.034656\n ],\n [\n 118.155491,\n 42.081301\n ],\n [\n 118.097593,\n 42.105277\n ],\n [\n 118.109296,\n 42.165176\n ],\n [\n 117.977485,\n 42.229892\n ],\n [\n 118.060021,\n 42.298083\n ],\n [\n 118.019369,\n 42.39537\n ],\n [\n 117.874007,\n 42.510151\n ],\n [\n 117.779768,\n 42.618558\n ],\n [\n 117.687377,\n 42.582884\n ],\n [\n 117.516146,\n 42.599622\n ],\n [\n 117.516146,\n 42.599622\n ],\n [\n 117.43669,\n 42.584205\n ],\n [\n 117.387415,\n 42.517648\n ],\n [\n 117.387415,\n 42.517648\n ],\n [\n 117.412669,\n 42.472649\n ],\n [\n 117.264227,\n 42.476621\n ],\n [\n 117.264227,\n 42.476621\n ],\n [\n 117.147815,\n 42.470443\n ],\n [\n 117.147815,\n 42.470443\n ],\n [\n 117.133648,\n 42.470443\n ],\n [\n 117.133648,\n 42.470443\n ],\n [\n 117.005533,\n 42.4338\n ],\n [\n 117.005533,\n 42.4338\n ],\n [\n 117.004301,\n 42.432476\n ],\n [\n 117.004301,\n 42.432476\n ],\n [\n 117.001837,\n 42.432476\n ],\n [\n 117.001837,\n 42.432476\n ],\n [\n 116.995678,\n 42.426734\n ],\n [\n 116.995678,\n 42.426734\n ],\n [\n 116.993214,\n 42.425851\n ],\n [\n 116.993214,\n 42.425851\n ],\n [\n 116.984591,\n 42.427176\n ],\n [\n 116.984591,\n 42.427176\n ],\n [\n 116.976583,\n 42.427618\n ],\n [\n 116.976583,\n 42.427618\n ],\n [\n 116.944555,\n 42.415251\n ],\n [\n 116.944555,\n 42.415251\n ],\n [\n 116.936547,\n 42.410833\n ],\n [\n 116.936547,\n 42.410833\n ],\n [\n 116.929156,\n 42.408182\n ],\n [\n 116.929156,\n 42.407741\n ],\n [\n 116.929156,\n 42.408182\n ],\n [\n 116.929156,\n 42.407741\n ],\n [\n 116.927308,\n 42.40509\n ],\n [\n 116.927308,\n 42.40509\n ],\n [\n 116.910062,\n 42.394928\n ],\n [\n 116.910062,\n 42.394928\n ],\n [\n 116.886656,\n 42.366641\n ],\n [\n 116.907598,\n 42.191337\n ],\n [\n 116.789338,\n 42.200202\n ],\n [\n 116.890352,\n 42.092846\n ],\n [\n 116.879881,\n 42.018211\n ],\n [\n 116.727744,\n 41.951054\n ],\n [\n 116.560209,\n 41.928356\n ],\n [\n 116.510933,\n 41.974189\n ],\n [\n 116.386514,\n 41.952389\n ],\n [\n 116.409303,\n 41.994203\n ],\n [\n 116.310137,\n 41.997316\n ],\n [\n 116.233145,\n 41.941263\n ],\n [\n 116.194341,\n 41.861995\n ],\n [\n 116.122892,\n 41.861995\n ],\n [\n 116.09887,\n 41.776381\n ],\n [\n 116.016334,\n 41.777273\n ],\n [\n 115.916552,\n 41.945269\n ],\n [\n 115.811226,\n 41.912328\n ],\n [\n 115.654162,\n 41.829011\n ],\n [\n 115.319091,\n 41.691546\n ],\n [\n 115.376989,\n 41.602126\n ],\n [\n 115.252569,\n 41.579303\n ],\n [\n 115.0992,\n 41.624045\n ],\n [\n 114.862064,\n 41.603915\n ],\n [\n 114.895325,\n 41.636567\n ],\n [\n 114.899636,\n 41.756299\n ],\n [\n 114.866991,\n 41.803147\n ],\n [\n 114.922426,\n 41.824999\n ],\n [\n 114.9021,\n 42.015544\n ],\n [\n 114.828803,\n 42.147434\n ],\n [\n 114.765361,\n 42.118593\n ],\n [\n 114.510978,\n 42.111047\n ],\n [\n 114.466015,\n 42.038656\n ],\n [\n 114.510978,\n 41.973299\n ],\n [\n 114.34837,\n 41.947049\n ],\n [\n 114.203009,\n 41.793334\n ],\n [\n 114.230726,\n 41.513477\n ],\n [\n 114.100147,\n 41.537218\n ],\n [\n 113.930764,\n 41.485693\n ],\n [\n 113.871017,\n 41.41349\n ],\n [\n 113.94493,\n 41.39105\n ],\n [\n 113.927068,\n 41.326829\n ],\n [\n 113.996669,\n 41.192345\n ],\n [\n 113.920293,\n 41.172081\n ],\n [\n 113.819279,\n 41.097726\n ],\n [\n 113.973263,\n 40.983099\n ],\n [\n 114.073661,\n 40.857412\n ],\n [\n 114.044712,\n 40.83116\n ],\n [\n 114.134639,\n 40.737381\n ],\n [\n 114.074277,\n 40.723325\n ],\n [\n 114.041633,\n 40.608503\n ],\n [\n 114.061959,\n 40.528964\n ],\n [\n 113.948626,\n 40.514865\n ],\n [\n 113.855619,\n 40.457071\n ],\n [\n 113.794641,\n 40.518049\n ],\n [\n 113.559968,\n 40.348631\n ],\n [\n 113.316056,\n 40.319898\n ],\n [\n 113.251382,\n 40.413352\n ],\n [\n 112.892906,\n 40.326284\n ],\n [\n 112.844863,\n 40.203926\n ],\n [\n 112.72845,\n 40.168272\n ],\n [\n 112.6299,\n 40.235906\n ],\n [\n 112.456205,\n 40.300278\n ],\n [\n 112.310227,\n 40.256457\n ],\n [\n 112.28559,\n 40.197985\n ],\n [\n 111.970229,\n 39.79646\n ],\n [\n 111.93204,\n 39.61233\n ],\n [\n 111.842729,\n 39.620166\n ],\n [\n 111.783599,\n 39.588819\n ],\n [\n 111.646245,\n 39.644128\n ],\n [\n 111.502115,\n 39.663015\n ],\n [\n 111.462079,\n 39.626157\n ],\n [\n 111.418963,\n 39.500232\n ],\n [\n 111.337043,\n 39.420777\n ],\n [\n 111.171971,\n 39.42355\n ],\n [\n 111.125776,\n 39.366678\n ],\n [\n 111.064182,\n 39.400899\n ],\n [\n 111.148566,\n 39.531619\n ],\n [\n 111.134399,\n 39.586513\n ],\n [\n 110.892335,\n 39.509927\n ],\n [\n 110.740198,\n 39.351874\n ],\n [\n 110.702626,\n 39.27364\n ],\n [\n 110.604075,\n 39.277345\n ],\n [\n 110.528315,\n 39.380091\n ],\n [\n 110.434692,\n 39.381016\n ],\n [\n 110.39096,\n 39.31161\n ],\n [\n 110.243751,\n 39.42355\n ],\n [\n 110.146432,\n 39.455434\n ],\n [\n 110.217881,\n 39.28105\n ],\n [\n 109.961035,\n 39.191608\n ],\n [\n 109.665384,\n 38.981691\n ],\n [\n 109.683862,\n 38.935631\n ],\n [\n 109.624116,\n 38.854603\n ],\n [\n 109.549587,\n 38.805662\n ],\n [\n 109.511399,\n 38.833633\n ],\n [\n 109.404226,\n 38.720752\n ],\n [\n 109.338936,\n 38.70161\n ],\n [\n 109.367269,\n 38.627328\n ],\n [\n 109.276726,\n 38.623121\n ],\n [\n 109.178792,\n 38.520675\n ],\n [\n 109.051908,\n 38.432146\n ],\n [\n 108.938575,\n 38.207291\n ],\n [\n 108.963829,\n 38.155085\n ],\n [\n 109.069155,\n 38.091071\n ],\n [\n 109.017416,\n 37.969949\n ],\n [\n 108.938575,\n 37.920877\n ],\n [\n 108.871438,\n 38.027471\n ],\n [\n 108.797525,\n 38.047735\n ],\n [\n 108.82709,\n 37.989285\n ],\n [\n 108.798141,\n 37.93362\n ],\n [\n 108.799989,\n 37.783871\n ],\n [\n 108.777815,\n 37.683554\n ],\n [\n 108.611512,\n 37.65419\n ],\n [\n 108.532671,\n 37.690656\n ],\n [\n 108.440896,\n 37.654663\n ],\n [\n 108.304158,\n 37.638556\n ],\n [\n 108.219158,\n 37.661295\n ],\n [\n 108.134159,\n 37.621971\n ],\n [\n 108.025137,\n 37.649926\n ],\n [\n 107.982022,\n 37.787181\n ],\n [\n 107.65003,\n 37.864688\n ],\n [\n 107.49235,\n 37.944945\n ],\n [\n 107.419669,\n 37.940699\n ],\n [\n 107.438147,\n 37.992586\n ],\n [\n 107.329742,\n 38.087774\n ],\n [\n 107.19054,\n 38.154144\n ],\n [\n 107.014997,\n 38.120261\n ],\n [\n 106.768621,\n 38.174843\n ],\n [\n 106.546883,\n 38.269794\n ],\n [\n 106.482825,\n 38.319571\n ],\n [\n 106.601702,\n 38.392295\n ],\n [\n 106.647897,\n 38.470569\n ],\n [\n 106.66268,\n 38.601614\n ],\n [\n 106.709491,\n 38.718885\n ],\n [\n 106.954019,\n 38.941215\n ],\n [\n 106.96757,\n 39.054676\n ],\n [\n 106.859164,\n 39.107623\n ],\n [\n 106.795723,\n 39.214327\n ],\n [\n 106.806809,\n 39.318554\n ],\n [\n 106.751375,\n 39.381478\n ],\n [\n 106.683622,\n 39.357426\n ],\n [\n 106.602318,\n 39.375466\n ],\n [\n 106.506231,\n 39.269934\n ],\n [\n 106.402753,\n 39.291701\n ],\n [\n 106.284493,\n 39.270397\n ],\n [\n 106.283877,\n 39.14522\n ],\n [\n 106.145907,\n 39.153108\n ],\n [\n 106.096631,\n 39.08487\n ],\n [\n 106.060907,\n 38.968667\n ],\n [\n 105.97098,\n 38.909097\n ],\n [\n 106.003625,\n 38.874636\n ],\n [\n 105.897683,\n 38.788875\n ],\n [\n 105.90569,\n 38.731488\n ],\n [\n 105.852719,\n 38.641349\n ],\n [\n 105.874277,\n 38.593197\n ],\n [\n 105.821307,\n 38.366967\n ],\n [\n 105.86627,\n 38.296565\n ],\n [\n 105.775111,\n 38.186601\n ],\n [\n 105.780655,\n 38.084949\n ],\n [\n 105.840401,\n 38.003902\n ],\n [\n 105.799749,\n 37.940227\n ],\n [\n 105.80406,\n 37.861854\n ],\n [\n 105.760944,\n 37.799947\n ],\n [\n 105.622974,\n 37.778669\n ],\n [\n 105.598952,\n 37.699178\n ],\n [\n 105.315004,\n 37.702018\n ],\n [\n 105.111128,\n 37.633818\n ],\n [\n 105.024281,\n 37.579781\n ],\n [\n 104.866601,\n 37.566503\n ],\n [\n 104.801311,\n 37.538516\n ],\n [\n 104.419429,\n 37.511943\n ],\n [\n 104.407726,\n 37.464467\n ],\n [\n 104.287002,\n 37.42789\n ],\n [\n 104.183524,\n 37.406981\n ],\n [\n 103.948235,\n 37.564606\n ],\n [\n 103.676606,\n 37.783871\n ],\n [\n 103.401897,\n 37.861854\n ],\n [\n 103.362477,\n 38.037368\n ],\n [\n 103.369868,\n 38.089658\n ],\n [\n 103.53494,\n 38.156497\n ],\n [\n 103.507838,\n 38.281068\n ],\n [\n 103.416063,\n 38.404956\n ],\n [\n 103.85954,\n 38.64462\n ],\n [\n 104.044322,\n 38.895128\n ],\n [\n 104.168125,\n 38.940285\n ],\n [\n 104.207546,\n 39.083941\n ],\n [\n 104.177364,\n 39.15218\n ],\n [\n 104.047401,\n 39.297721\n ],\n [\n 104.091133,\n 39.418466\n ],\n [\n 103.964865,\n 39.455434\n ],\n [\n 103.839214,\n 39.460516\n ],\n [\n 103.595302,\n 39.386565\n ],\n [\n 103.344615,\n 39.331514\n ],\n [\n 103.007696,\n 39.09973\n ],\n [\n 102.601792,\n 39.172129\n ],\n [\n 102.45335,\n 39.25511\n ],\n [\n 102.280887,\n 39.190217\n ],\n [\n 101.830636,\n 39.093229\n ],\n [\n 101.926106,\n 39.000758\n ],\n [\n 102.075164,\n 38.891403\n ],\n [\n 101.941505,\n 38.808926\n ],\n [\n 101.777049,\n 38.660507\n ],\n [\n 101.679115,\n 38.690869\n ],\n [\n 101.601506,\n 38.6549\n ],\n [\n 101.562702,\n 38.712816\n ],\n [\n 101.307087,\n 38.802865\n ],\n [\n 101.334189,\n 38.848545\n ],\n [\n 101.24303,\n 38.86066\n ],\n [\n 101.198682,\n 38.943077\n ],\n [\n 101.228863,\n 39.02075\n ],\n [\n 101.117378,\n 38.97518\n ],\n [\n 100.969553,\n 38.9468\n ],\n [\n 100.961545,\n 39.005873\n ],\n [\n 100.835278,\n 39.025863\n ],\n [\n 100.864227,\n 39.106695\n ],\n [\n 100.842669,\n 39.199955\n ],\n [\n 100.842053,\n 39.405523\n ],\n [\n 100.619699,\n 39.38749\n ],\n [\n 100.498975,\n 39.400437\n ],\n [\n 100.500823,\n 39.4813\n ],\n [\n 100.326512,\n 39.509003\n ],\n [\n 100.314193,\n 39.606799\n ],\n [\n 100.250135,\n 39.68512\n ],\n [\n 100.128179,\n 39.702155\n ],\n [\n 100.040716,\n 39.756913\n ],\n [\n 99.904593,\n 39.785886\n ],\n [\n 99.822058,\n 39.85987\n ],\n [\n 99.672384,\n 39.887881\n ],\n [\n 99.488218,\n 39.875943\n ],\n [\n 99.927383,\n 40.063947\n ],\n [\n 100.002528,\n 40.197528\n ],\n [\n 100.169447,\n 40.277458\n ],\n [\n 100.169447,\n 40.541242\n ],\n [\n 100.242744,\n 40.618495\n ],\n [\n 100.237201,\n 40.716977\n ],\n [\n 100.107853,\n 40.875511\n ],\n [\n 100.057346,\n 40.908077\n ],\n [\n 99.673,\n 40.932943\n ],\n [\n 99.565827,\n 40.846551\n ],\n [\n 99.174705,\n 40.858317\n ],\n [\n 99.172858,\n 40.747354\n ],\n [\n 99.102025,\n 40.676603\n ],\n [\n 99.041662,\n 40.693844\n ],\n [\n 98.984996,\n 40.782701\n ],\n [\n 98.790975,\n 40.705185\n ],\n [\n 98.801446,\n 40.609411\n ],\n [\n 98.689345,\n 40.691576\n ],\n [\n 98.668403,\n 40.772734\n ],\n [\n 98.569853,\n 40.746901\n ],\n [\n 98.627751,\n 40.677965\n ],\n [\n 98.344419,\n 40.568518\n ],\n [\n 98.333332,\n 40.918929\n ],\n [\n 98.25018,\n 40.939271\n ],\n [\n 97.971776,\n 41.097726\n ],\n [\n 97.629314,\n 41.440407\n ],\n [\n 97.613915,\n 41.477176\n ],\n [\n 97.84674,\n 41.656687\n ],\n [\n 97.307177,\n 42.565259\n ],\n [\n 97.172903,\n 42.795305\n ],\n [\n 98.195362,\n 42.653331\n ],\n [\n 98.546447,\n 42.638368\n ],\n [\n 99.503001,\n 42.568344\n ],\n [\n 99.969267,\n 42.648051\n ],\n [\n 100.272309,\n 42.636167\n ],\n [\n 100.32528,\n 42.689845\n ],\n [\n 100.826655,\n 42.67533\n ],\n [\n 101.23995,\n 42.59698\n ],\n [\n 101.581796,\n 42.525145\n ],\n [\n 101.803534,\n 42.503534\n ],\n [\n 102.070236,\n 42.232107\n ],\n [\n 102.449039,\n 42.143885\n ],\n [\n 102.540814,\n 42.162072\n ],\n [\n 102.712045,\n 42.152757\n ],\n [\n 103.021862,\n 42.02799\n ],\n [\n 103.418527,\n 41.882489\n ],\n [\n 103.868779,\n 41.802701\n ],\n [\n 104.080046,\n 41.804931\n ],\n [\n 104.530298,\n 41.874916\n ],\n [\n 104.524138,\n 41.662051\n ],\n [\n 104.68613,\n 41.64551\n ],\n [\n 104.923267,\n 41.654005\n ],\n [\n 105.009498,\n 41.583331\n ],\n [\n 105.230621,\n 41.750942\n ],\n [\n 105.291599,\n 41.750049\n ],\n [\n 105.74185,\n 41.949274\n ],\n [\n 106.01348,\n 42.03199\n ],\n [\n 106.619564,\n 42.243625\n ],\n [\n 106.785867,\n 42.291444\n ],\n [\n 107.051337,\n 42.319322\n ],\n [\n 107.269996,\n 42.363547\n ],\n [\n 107.303872,\n 42.4126\n ],\n [\n 107.46648,\n 42.458967\n ],\n [\n 107.57427,\n 42.413042\n ],\n [\n 107.939522,\n 42.403764\n ],\n [\n 108.022058,\n 42.433359\n ],\n [\n 108.238252,\n 42.460291\n ],\n [\n 108.298614,\n 42.438216\n ],\n [\n 108.532671,\n 42.443073\n ],\n [\n 108.845569,\n 42.395811\n ],\n [\n 109.026039,\n 42.458525\n ],\n [\n 109.291509,\n 42.435567\n ],\n [\n 109.544044,\n 42.472208\n ],\n [\n 109.683862,\n 42.559089\n ],\n [\n 109.906216,\n 42.635727\n ],\n [\n 110.108244,\n 42.642769\n ],\n [\n 110.139657,\n 42.67489\n ],\n [\n 110.437156,\n 42.781254\n ],\n [\n 110.469801,\n 42.839194\n ],\n [\n 110.631177,\n 42.936078\n ],\n [\n 110.736502,\n 43.089639\n ],\n [\n 110.769763,\n 43.099251\n ],\n [\n 111.02045,\n 43.329926\n ],\n [\n 111.183674,\n 43.396045\n ],\n [\n 111.354289,\n 43.436029\n ],\n [\n 111.456535,\n 43.49422\n ],\n [\n 111.564325,\n 43.490314\n ],\n [\n 111.79407,\n 43.67192\n ],\n [\n 111.951135,\n 43.693122\n ],\n [\n 111.959758,\n 43.8232\n ],\n [\n 111.870447,\n 43.940071\n ],\n [\n 111.773128,\n 44.010686\n ],\n [\n 111.662875,\n 44.061012\n ],\n [\n 111.559397,\n 44.171408\n ],\n [\n 111.507042,\n 44.294019\n ],\n [\n 111.415883,\n 44.357368\n ],\n [\n 111.478709,\n 44.488982\n ],\n [\n 111.569868,\n 44.576418\n ],\n [\n 111.560629,\n 44.647124\n ],\n [\n 111.624687,\n 44.778509\n ],\n [\n 111.764505,\n 44.969314\n ],\n [\n 111.889541,\n 45.045459\n ],\n [\n 112.002874,\n 45.090675\n ],\n [\n 112.113743,\n 45.072931\n ],\n [\n 112.438959,\n 45.071663\n ],\n [\n 112.540589,\n 45.001054\n ],\n [\n 112.599719,\n 44.93078\n ],\n [\n 112.850406,\n 44.840484\n ],\n [\n 112.937869,\n 44.84006\n ],\n [\n 113.11526,\n 44.799741\n ],\n [\n 113.503918,\n 44.77766\n ],\n [\n 113.631417,\n 44.745372\n ],\n [\n 113.907358,\n 44.915105\n ],\n [\n 114.065038,\n 44.931204\n ],\n [\n 114.19069,\n 45.036581\n ],\n [\n 114.347139,\n 45.119392\n ],\n [\n 114.519602,\n 45.283812\n ],\n [\n 114.551014,\n 45.387699\n ],\n [\n 114.745035,\n 45.438521\n ],\n [\n 114.974165,\n 45.377193\n ],\n [\n 115.153403,\n 45.395682\n ],\n [\n 115.36467,\n 45.392321\n ],\n [\n 115.699741,\n 45.459509\n ],\n [\n 115.936878,\n 45.632987\n ],\n [\n 116.035428,\n 45.68526\n ],\n [\n 116.17463,\n 45.688604\n ],\n [\n 116.286731,\n 45.775056\n ],\n [\n 116.288579,\n 45.838869\n ],\n [\n 116.243,\n 45.875956\n ],\n [\n 116.271949,\n 45.966692\n ],\n [\n 116.414231,\n 46.13404\n ],\n [\n 116.439484,\n 46.137771\n ],\n [\n 116.585462,\n 46.292199\n ],\n [\n 116.745606,\n 46.327743\n ],\n [\n 116.826294,\n 46.380602\n ],\n [\n 117.097308,\n 46.35707\n ],\n [\n 117.372017,\n 46.360373\n ],\n [\n 117.392343,\n 46.463093\n ],\n [\n 117.447777,\n 46.528172\n ],\n [\n 117.42006,\n 46.582071\n ],\n [\n 117.49582,\n 46.600574\n ],\n [\n 117.622704,\n 46.596052\n ],\n [\n 117.704008,\n 46.516645\n ],\n [\n 117.870927,\n 46.549985\n ],\n [\n 117.914659,\n 46.607973\n ],\n [\n 118.04647,\n 46.631398\n ],\n [\n 118.124078,\n 46.678216\n ],\n [\n 118.192448,\n 46.682731\n ],\n [\n 118.316252,\n 46.739347\n ],\n [\n 118.446831,\n 46.704482\n ],\n [\n 118.586033,\n 46.692992\n ],\n [\n 118.639004,\n 46.721302\n ],\n [\n 118.788061,\n 46.687246\n ],\n [\n 118.845343,\n 46.771731\n ],\n [\n 118.914329,\n 46.775009\n ],\n [\n 118.912481,\n 46.733196\n ],\n [\n 119.011647,\n 46.745498\n ],\n [\n 119.123132,\n 46.642901\n ],\n [\n 119.26295,\n 46.649062\n ],\n [\n 119.374435,\n 46.60304\n ],\n [\n 119.431718,\n 46.638793\n ],\n [\n 119.656535,\n 46.625645\n ],\n [\n 119.677477,\n 46.584539\n ],\n [\n 119.783419,\n 46.626056\n ],\n [\n 119.8136,\n 46.668363\n ],\n [\n 119.911534,\n 46.669595\n ],\n [\n 119.93494,\n 46.712688\n ],\n [\n 119.928781,\n 46.903933\n ],\n [\n 119.859795,\n 46.917013\n ],\n [\n 119.795122,\n 47.01297\n ],\n [\n 119.806825,\n 47.054973\n ],\n [\n 119.716282,\n 47.195829\n ],\n [\n 119.56784,\n 47.24825\n ],\n [\n 119.559833,\n 47.303053\n ],\n [\n 119.487152,\n 47.329419\n ],\n [\n 119.353493,\n 47.43192\n ],\n [\n 119.365812,\n 47.477232\n ],\n [\n 119.152081,\n 47.540685\n ],\n [\n 119.134219,\n 47.664539\n ],\n [\n 118.773278,\n 47.771213\n ],\n [\n 118.568171,\n 47.992315\n ],\n [\n 118.424041,\n 48.014734\n ],\n [\n 118.299621,\n 48.005127\n ],\n [\n 118.231252,\n 48.043943\n ],\n [\n 117.96147,\n 48.011132\n ],\n [\n 117.813645,\n 48.016335\n ],\n [\n 117.493357,\n 47.758343\n ],\n [\n 117.384335,\n 47.641162\n ],\n [\n 117.094844,\n 47.823865\n ],\n [\n 116.879265,\n 47.893718\n ],\n [\n 116.669846,\n 47.890509\n ],\n [\n 116.453035,\n 47.837522\n ],\n [\n 116.26579,\n 47.876866\n ],\n [\n 116.111189,\n 47.811812\n ],\n [\n 115.939342,\n 47.683071\n ],\n [\n 115.580249,\n 47.921793\n ],\n [\n 115.529126,\n 48.155029\n ],\n [\n 115.822929,\n 48.2595\n ],\n [\n 115.799523,\n 48.514993\n ],\n [\n 115.83032,\n 48.560156\n ],\n [\n 116.077928,\n 48.822412\n ],\n [\n 116.048363,\n 48.873598\n ],\n [\n 116.717889,\n 49.847388\n ],\n [\n 116.736367,\n 49.847388\n ],\n [\n 117.068974,\n 49.695524\n ],\n [\n 117.278394,\n 49.636272\n ],\n [\n 117.485349,\n 49.633172\n ],\n [\n 117.809333,\n 49.521049\n ],\n [\n 117.867848,\n 49.592853\n ],\n [\n 117.980565,\n 49.621158\n ],\n [\n 118.084658,\n 49.618057\n ],\n [\n 118.122231,\n 49.669586\n ],\n [\n 118.205998,\n 49.684686\n ],\n [\n 118.225708,\n 49.734211\n ],\n [\n 118.388316,\n 49.786004\n ],\n [\n 118.395092,\n 49.819601\n ],\n [\n 118.49549,\n 49.843144\n ],\n [\n 118.485635,\n 49.86706\n ],\n [\n 118.574946,\n 49.931423\n ],\n [\n 118.741866,\n 49.946441\n ],\n [\n 118.929111,\n 49.989545\n ],\n [\n 119.092335,\n 49.986082\n ],\n [\n 119.163168,\n 50.027613\n ],\n [\n 119.190269,\n 50.087538\n ],\n [\n 119.243856,\n 50.078324\n ],\n [\n 119.360269,\n 50.196441\n ],\n [\n 119.319001,\n 50.220948\n ],\n [\n 119.358421,\n 50.358949\n ],\n [\n 119.259871,\n 50.345205\n ],\n [\n 119.125596,\n 50.389095\n ],\n [\n 119.250631,\n 50.448568\n ],\n [\n 119.28266,\n 50.604899\n ],\n [\n 119.361501,\n 50.632611\n ],\n [\n 119.383674,\n 50.682301\n ],\n [\n 119.450196,\n 50.695569\n ],\n [\n 119.506862,\n 50.764118\n ],\n [\n 119.491464,\n 50.879026\n ],\n [\n 119.633746,\n 51.010218\n ],\n [\n 119.726137,\n 51.050105\n ],\n [\n 119.788346,\n 51.16656\n ],\n [\n 119.760629,\n 51.21231\n ],\n [\n 119.944795,\n 51.366848\n ],\n [\n 120.002693,\n 51.459396\n ],\n [\n 119.985447,\n 51.505227\n ],\n [\n 120.051968,\n 51.553245\n ],\n [\n 120.035338,\n 51.586343\n ],\n [\n 120.087077,\n 51.678076\n ],\n [\n 120.172693,\n 51.679931\n ],\n [\n 120.363634,\n 51.789982\n ],\n [\n 120.398742,\n 51.832153\n ],\n [\n 120.480046,\n 51.855072\n ],\n [\n 120.481278,\n 51.885735\n ],\n [\n 120.656821,\n 51.92634\n ],\n [\n 120.719031,\n 52.014438\n ],\n [\n 120.68577,\n 52.036896\n ],\n [\n 120.747364,\n 52.076996\n ],\n [\n 120.786784,\n 52.157824\n ],\n [\n 120.7449,\n 52.206984\n ],\n [\n 120.755371,\n 52.258287\n ],\n [\n 120.627256,\n 52.324161\n ],\n [\n 120.62356,\n 52.361081\n ],\n [\n 120.688234,\n 52.427531\n ],\n [\n 120.689466,\n 52.516098\n ],\n [\n 120.727654,\n 52.529568\n ],\n [\n 120.467728,\n 52.644076\n ],\n [\n 120.40367,\n 52.617929\n ],\n [\n 120.287873,\n 52.623378\n ],\n [\n 120.196714,\n 52.579043\n ],\n [\n 120.049505,\n 52.598672\n ],\n [\n 120.035338,\n 52.646255\n ],\n [\n 120.071063,\n 52.706113\n ],\n [\n 120.038418,\n 52.780006\n ],\n [\n 120.222584,\n 52.842934\n ],\n [\n 120.350699,\n 52.906131\n ],\n [\n 120.455409,\n 53.011376\n ],\n [\n 120.549647,\n 53.076125\n ],\n [\n 120.643886,\n 53.106667\n ],\n [\n 120.736277,\n 53.204615\n ],\n [\n 120.840371,\n 53.24724\n ],\n [\n 120.882871,\n 53.294472\n ],\n [\n 121.129246,\n 53.277303\n ],\n [\n 121.285695,\n 53.291253\n ],\n [\n 121.347289,\n 53.327003\n ],\n [\n 121.499426,\n 53.337008\n ],\n [\n 121.612143,\n 53.260484\n ],\n [\n 121.679896,\n 53.240437\n ],\n [\n 121.665114,\n 53.170556\n ],\n [\n 121.754425,\n 53.146519\n ],\n [\n 121.817867,\n 53.061744\n ],\n [\n 121.785838,\n 53.018575\n ],\n [\n 121.715621,\n 52.998054\n ],\n [\n 121.66265,\n 52.912626\n ],\n [\n 121.610295,\n 52.892416\n ],\n [\n 121.591201,\n 52.824499\n ],\n [\n 121.476636,\n 52.772043\n ],\n [\n 121.373158,\n 52.683268\n ],\n [\n 121.182217,\n 52.599399\n ],\n [\n 121.325731,\n 52.572498\n ],\n [\n 121.416274,\n 52.499346\n ],\n [\n 121.519136,\n 52.456709\n ],\n [\n 121.63986,\n 52.444311\n ],\n [\n 121.714389,\n 52.317944\n ],\n [\n 121.841272,\n 52.282818\n ],\n [\n 121.94783,\n 52.298555\n ],\n [\n 122.091344,\n 52.427167\n ],\n [\n 122.168952,\n 52.513549\n ],\n [\n 122.207756,\n 52.469103\n ],\n [\n 122.310618,\n 52.475299\n ],\n [\n 122.342031,\n 52.41403\n ],\n [\n 122.484313,\n 52.341711\n ],\n [\n 122.478153,\n 52.29636\n ],\n [\n 122.585943,\n 52.266344\n ],\n [\n 122.76087,\n 52.26671\n ],\n [\n 122.769493,\n 52.179843\n ],\n [\n 122.629059,\n 52.136529\n ],\n [\n 122.683877,\n 51.974649\n ],\n [\n 122.726377,\n 51.978704\n ],\n [\n 122.706051,\n 51.890166\n ],\n [\n 122.771957,\n 51.779619\n ],\n [\n 122.749167,\n 51.746661\n ],\n [\n 122.85634,\n 51.606786\n ],\n [\n 122.854492,\n 51.477659\n ],\n [\n 122.903768,\n 51.415384\n ],\n [\n 122.965977,\n 51.387015\n ],\n [\n 122.978296,\n 51.331346\n ],\n [\n 123.058984,\n 51.321999\n ],\n [\n 123.294273,\n 51.25427\n ],\n [\n 123.465504,\n 51.287212\n ],\n [\n 123.736517,\n 50.974064\n ],\n [\n 123.825829,\n 50.813669\n ],\n [\n 124.076516,\n 50.564249\n ],\n [\n 123.983509,\n 50.510249\n ],\n [\n 124.005067,\n 50.434469\n ],\n [\n 123.920067,\n 50.37307\n ],\n [\n 123.800575,\n 50.455806\n ],\n [\n 123.777785,\n 50.344441\n ],\n [\n 123.870792,\n 50.270307\n ],\n [\n 123.878799,\n 50.208696\n ],\n [\n 123.953944,\n 50.186865\n ],\n [\n 124.007531,\n 50.219417\n ],\n [\n 124.061733,\n 50.199122\n ],\n [\n 124.103001,\n 50.238555\n ],\n [\n 124.189233,\n 50.216737\n ],\n [\n 124.278544,\n 50.231284\n ],\n [\n 124.32474,\n 50.178436\n ],\n [\n 124.368471,\n 50.258068\n ],\n [\n 124.36416,\n 50.360857\n ],\n [\n 124.43992,\n 50.388713\n ],\n [\n 124.499666,\n 50.397868\n ],\n [\n 124.504594,\n 50.342532\n ],\n [\n 124.578507,\n 50.294777\n ],\n [\n 124.619774,\n 50.229753\n ],\n [\n 124.575427,\n 50.179585\n ],\n [\n 124.508289,\n 50.162723\n ],\n [\n 124.604992,\n 50.070644\n ],\n [\n 124.680752,\n 50.031841\n ],\n [\n 124.650571,\n 49.99493\n ],\n [\n 124.66597,\n 49.868217\n ],\n [\n 124.730644,\n 49.817671\n ],\n [\n 124.74173,\n 49.761274\n ],\n [\n 124.824266,\n 49.849703\n ],\n [\n 124.972708,\n 49.834654\n ],\n [\n 124.935135,\n 49.866675\n ],\n [\n 124.977635,\n 49.900601\n ],\n [\n 125.095896,\n 49.795661\n ],\n [\n 125.177815,\n 49.829637\n ],\n [\n 125.222779,\n 49.799137\n ],\n [\n 125.219699,\n 49.669199\n ],\n [\n 125.132236,\n 49.671909\n ],\n [\n 125.234482,\n 49.592077\n ],\n [\n 125.228323,\n 49.486857\n ],\n [\n 125.264047,\n 49.461585\n ],\n [\n 125.261583,\n 49.318656\n ],\n [\n 125.219699,\n 49.188999\n ],\n [\n 125.117453,\n 49.126\n ],\n [\n 124.906802,\n 49.183915\n ],\n [\n 124.807636,\n 49.108769\n ],\n [\n 124.808252,\n 49.020563\n ],\n [\n 124.709086,\n 48.920406\n ],\n [\n 124.697383,\n 48.841711\n ],\n [\n 124.653651,\n 48.777089\n ],\n [\n 124.579122,\n 48.596574\n ],\n [\n 124.520608,\n 48.556196\n ],\n [\n 124.555717,\n 48.467805\n ],\n [\n 124.507674,\n 48.445584\n ],\n [\n 124.51876,\n 48.378068\n ],\n [\n 124.579738,\n 48.304095\n ],\n [\n 124.578507,\n 48.251931\n ],\n [\n 124.463942,\n 48.097518\n ],\n [\n 124.467637,\n 48.178972\n ],\n [\n 124.418978,\n 48.181765\n ],\n [\n 124.404812,\n 48.264679\n ],\n [\n 124.317964,\n 48.347856\n ],\n [\n 124.314269,\n 48.503894\n ],\n [\n 124.25945,\n 48.536391\n ],\n [\n 124.25945,\n 48.536391\n ],\n [\n 124.07898,\n 48.436058\n ],\n [\n 123.873256,\n 48.281006\n ],\n [\n 123.746373,\n 48.19772\n ],\n [\n 123.537569,\n 48.021938\n ],\n [\n 123.300432,\n 47.953861\n ],\n [\n 123.228983,\n 47.840735\n ],\n [\n 123.166158,\n 47.783677\n ],\n [\n 122.855108,\n 47.677432\n ],\n [\n 122.763333,\n 47.613338\n ],\n [\n 122.59395,\n 47.547551\n ],\n [\n 122.543443,\n 47.495427\n ],\n [\n 122.507103,\n 47.401555\n ],\n [\n 122.418407,\n 47.350503\n ],\n [\n 122.556378,\n 47.17265\n ],\n [\n 122.679566,\n 47.094092\n ],\n [\n 122.845869,\n 47.046819\n ],\n [\n 122.778116,\n 47.00277\n ],\n [\n 122.796594,\n 46.938261\n ],\n [\n 122.895144,\n 46.960317\n ],\n [\n 122.906847,\n 46.807372\n ],\n [\n 123.026339,\n 46.718841\n ],\n [\n 123.163694,\n 46.740167\n ],\n [\n 123.221592,\n 46.850355\n ],\n [\n 123.309056,\n 46.86222\n ],\n [\n 123.374345,\n 46.837668\n ],\n [\n 123.404526,\n 46.935401\n ],\n [\n 123.52833,\n 46.944797\n ],\n [\n 123.483366,\n 46.845854\n ],\n [\n 123.562823,\n 46.825797\n ],\n [\n 123.576989,\n 46.891259\n ],\n [\n 123.625648,\n 46.84749\n ],\n [\n 123.631808,\n 46.728685\n ],\n [\n 123.603475,\n 46.689299\n ],\n [\n 123.366338,\n 46.677805\n ],\n [\n 123.276411,\n 46.660972\n ],\n [\n 123.228368,\n 46.58824\n ],\n [\n 123.18094,\n 46.614138\n ],\n [\n 123.04605,\n 46.617426\n ],\n [\n 123.002318,\n 46.574257\n ],\n [\n 123.011557,\n 46.43506\n ],\n [\n 123.178476,\n 46.247944\n ],\n [\n 123.102716,\n 46.172172\n ],\n [\n 123.112571,\n 46.129894\n ],\n [\n 123.04605,\n 46.10003\n ],\n [\n 122.792898,\n 46.073056\n ],\n [\n 122.828623,\n 45.912185\n ],\n [\n 122.752246,\n 45.834701\n ],\n [\n 122.792283,\n 45.766291\n ],\n [\n 122.741775,\n 45.70532\n ],\n [\n 122.671558,\n 45.700723\n ],\n [\n 122.640761,\n 45.7713\n ],\n [\n 122.555146,\n 45.821359\n ],\n [\n 122.504639,\n 45.787157\n ],\n [\n 122.496016,\n 45.858041\n ],\n [\n 122.446125,\n 45.916764\n ],\n [\n 122.362357,\n 45.917597\n ],\n [\n 122.372828,\n 45.855957\n ],\n [\n 122.258879,\n 45.794666\n ],\n [\n 122.200981,\n 45.85679\n ],\n [\n 122.091344,\n 45.881787\n ],\n [\n 122.040221,\n 45.95879\n ],\n [\n 121.84312,\n 46.02447\n ],\n [\n 121.762432,\n 45.999538\n ],\n [\n 121.809243,\n 45.96087\n ],\n [\n 121.817251,\n 45.875539\n ],\n [\n 121.754425,\n 45.795084\n ],\n [\n 121.644172,\n 45.752516\n ],\n [\n 121.713773,\n 45.701977\n ],\n [\n 121.811091,\n 45.686932\n ],\n [\n 121.867142,\n 45.719942\n ],\n [\n 121.949062,\n 45.711169\n ],\n [\n 122.003264,\n 45.623363\n ],\n [\n 121.966308,\n 45.596157\n ],\n [\n 122.02359,\n 45.490137\n ],\n [\n 122.163408,\n 45.443979\n ],\n [\n 122.147394,\n 45.295598\n ],\n [\n 122.239169,\n 45.276234\n ],\n [\n 122.22993,\n 45.20672\n ],\n [\n 122.143082,\n 45.183108\n ],\n [\n 122.109822,\n 45.142186\n ],\n [\n 122.119677,\n 45.068705\n ],\n [\n 122.074713,\n 45.006553\n ],\n [\n 122.079025,\n 44.914258\n ],\n [\n 122.04946,\n 44.912987\n ],\n [\n 122.114749,\n 44.776386\n ],\n [\n 122.161561,\n 44.728371\n ],\n [\n 122.103046,\n 44.673935\n ],\n [\n 122.13138,\n 44.577697\n ],\n [\n 122.196053,\n 44.559794\n ],\n [\n 122.228082,\n 44.480017\n ],\n [\n 122.28598,\n 44.477883\n ],\n [\n 122.291524,\n 44.310291\n ],\n [\n 122.271198,\n 44.255463\n ],\n [\n 122.319241,\n 44.232745\n ],\n [\n 122.483697,\n 44.237032\n ],\n [\n 122.676486,\n 44.28631\n ],\n [\n 122.76087,\n 44.369772\n ],\n [\n 122.85634,\n 44.398422\n ],\n [\n 123.025108,\n 44.492823\n ],\n [\n 123.125506,\n 44.509466\n ],\n [\n 123.128585,\n 44.366778\n ],\n [\n 123.196955,\n 44.34496\n ],\n [\n 123.323838,\n 44.179991\n ],\n [\n 123.386664,\n 44.161966\n ],\n [\n 123.32815,\n 44.083795\n ],\n [\n 123.332461,\n 44.028326\n ],\n [\n 123.400831,\n 43.979264\n ],\n [\n 123.52525,\n 43.695718\n ],\n [\n 123.5117,\n 43.59267\n ],\n [\n 123.439019,\n 43.577501\n ],\n [\n 123.439019,\n 43.577501\n ],\n [\n 123.304744,\n 43.551055\n ],\n [\n 123.315831,\n 43.49205\n ],\n [\n 123.382968,\n 43.46904\n ],\n [\n 123.419925,\n 43.409955\n ],\n [\n 123.486446,\n 43.445587\n ],\n [\n 123.608402,\n 43.366474\n ],\n [\n 123.703873,\n 43.370824\n ]\n ]\n ],\n [\n [\n [\n 124.076516,\n 50.564249\n ],\n [\n 123.825829,\n 50.813669\n ],\n [\n 123.736517,\n 50.974064\n ],\n [\n 123.465504,\n 51.287212\n ],\n [\n 123.661989,\n 51.319008\n ],\n [\n 123.711264,\n 51.398216\n ],\n [\n 123.842459,\n 51.367595\n ],\n [\n 123.926227,\n 51.300681\n ],\n [\n 124.071588,\n 51.320878\n ],\n [\n 124.128255,\n 51.347419\n ],\n [\n 124.239124,\n 51.344429\n ],\n [\n 124.271769,\n 51.308162\n ],\n [\n 124.406659,\n 51.271867\n ],\n [\n 124.43684,\n 51.353772\n ],\n [\n 124.490427,\n 51.380294\n ],\n [\n 124.58713,\n 51.363486\n ],\n [\n 124.62655,\n 51.327608\n ],\n [\n 124.693687,\n 51.332842\n ],\n [\n 124.783614,\n 51.392243\n ],\n [\n 124.864302,\n 51.379547\n ],\n [\n 124.942527,\n 51.447465\n ],\n [\n 124.928976,\n 51.498523\n ],\n [\n 125.047236,\n 51.529801\n ],\n [\n 125.098975,\n 51.658408\n ],\n [\n 125.130388,\n 51.635389\n ],\n [\n 125.35151,\n 51.623876\n ],\n [\n 125.567089,\n 51.455668\n ],\n [\n 125.567089,\n 51.455668\n ],\n [\n 125.595422,\n 51.416877\n ],\n [\n 125.595422,\n 51.416877\n ],\n [\n 125.597886,\n 51.414638\n ],\n [\n 125.597886,\n 51.414638\n ],\n [\n 125.600966,\n 51.413518\n ],\n [\n 125.600966,\n 51.413518\n ],\n [\n 125.623756,\n 51.387762\n ],\n [\n 125.623756,\n 51.387762\n ],\n [\n 125.63977,\n 51.372451\n ],\n [\n 125.63977,\n 51.372451\n ],\n [\n 125.668103,\n 51.347419\n ],\n [\n 125.668103,\n 51.347419\n ],\n [\n 125.670567,\n 51.34555\n ],\n [\n 125.670567,\n 51.34555\n ],\n [\n 125.743248,\n 51.275984\n ],\n [\n 125.743248,\n 51.275984\n ],\n [\n 125.756798,\n 51.227675\n ],\n [\n 125.840566,\n 51.220555\n ],\n [\n 125.878138,\n 51.159431\n ],\n [\n 126.059225,\n 51.043711\n ],\n [\n 126.033971,\n 51.010971\n ],\n [\n 126.073391,\n 50.963514\n ],\n [\n 125.890457,\n 50.805729\n ],\n [\n 125.758646,\n 50.746706\n ],\n [\n 125.825784,\n 50.703906\n ],\n [\n 125.787595,\n 50.677373\n ],\n [\n 125.829479,\n 50.561589\n ],\n [\n 125.740784,\n 50.523184\n ],\n [\n 125.632379,\n 50.443996\n ],\n [\n 125.590495,\n 50.452378\n ],\n [\n 125.519662,\n 50.315795\n ],\n [\n 125.466075,\n 50.297452\n ],\n [\n 125.448829,\n 50.216354\n ],\n [\n 125.334264,\n 50.165023\n ],\n [\n 125.258504,\n 50.103659\n ],\n [\n 125.294228,\n 50.029151\n ],\n [\n 125.231402,\n 49.957606\n ],\n [\n 125.239409,\n 49.844687\n ],\n [\n 125.177815,\n 49.829637\n ],\n [\n 125.095896,\n 49.795661\n ],\n [\n 124.977635,\n 49.900601\n ],\n [\n 124.935135,\n 49.866675\n ],\n [\n 124.972708,\n 49.834654\n ],\n [\n 124.824266,\n 49.849703\n ],\n [\n 124.74173,\n 49.761274\n ],\n [\n 124.730644,\n 49.817671\n ],\n [\n 124.66597,\n 49.868217\n ],\n [\n 124.650571,\n 49.99493\n ],\n [\n 124.680752,\n 50.031841\n ],\n [\n 124.604992,\n 50.070644\n ],\n [\n 124.508289,\n 50.162723\n ],\n [\n 124.575427,\n 50.179585\n ],\n [\n 124.619774,\n 50.229753\n ],\n [\n 124.578507,\n 50.294777\n ],\n [\n 124.504594,\n 50.342532\n ],\n [\n 124.499666,\n 50.397868\n ],\n [\n 124.43992,\n 50.388713\n ],\n [\n 124.43992,\n 50.539919\n ],\n [\n 124.322892,\n 50.532693\n ],\n [\n 124.289015,\n 50.553226\n ],\n [\n 124.076516,\n 50.564249\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 210000,\n \"name\": \"辽宁省\",\n \"center\": [\n 123.429096,\n 41.796767\n ],\n \"centroid\": [\n 122.606135,\n 41.300702\n ],\n \"childrenNum\": 14,\n \"level\": \"province\",\n \"subFeatureIndex\": 5,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 119.239545,\n 41.314696\n ],\n [\n 119.326392,\n 41.329525\n ],\n [\n 119.30545,\n 41.402271\n ],\n [\n 119.376283,\n 41.422015\n ],\n [\n 119.405848,\n 41.508548\n ],\n [\n 119.361501,\n 41.56498\n ],\n [\n 119.415703,\n 41.590044\n ],\n [\n 119.307914,\n 41.657581\n ],\n [\n 119.294363,\n 41.775935\n ],\n [\n 119.334399,\n 41.869569\n ],\n [\n 119.324544,\n 41.969296\n ],\n [\n 119.384906,\n 42.089738\n ],\n [\n 119.315921,\n 42.119037\n ],\n [\n 119.237697,\n 42.201088\n ],\n [\n 119.284508,\n 42.265325\n ],\n [\n 119.415703,\n 42.309588\n ],\n [\n 119.502551,\n 42.387857\n ],\n [\n 119.572152,\n 42.359568\n ],\n [\n 119.541971,\n 42.292329\n ],\n [\n 119.744615,\n 42.211725\n ],\n [\n 119.846861,\n 42.21527\n ],\n [\n 119.837622,\n 42.135455\n ],\n [\n 119.989759,\n 41.898969\n ],\n [\n 120.051968,\n 41.775935\n ],\n [\n 120.035954,\n 41.708075\n ],\n [\n 120.096316,\n 41.696907\n ],\n [\n 120.188707,\n 41.848179\n ],\n [\n 120.373489,\n 41.994648\n ],\n [\n 120.456641,\n 42.016433\n ],\n [\n 120.466496,\n 42.105277\n ],\n [\n 120.58414,\n 42.167394\n ],\n [\n 120.624792,\n 42.154532\n ],\n [\n 120.745516,\n 42.223689\n ],\n [\n 120.79048,\n 42.218372\n ],\n [\n 120.933378,\n 42.279493\n ],\n [\n 121.068884,\n 42.252483\n ],\n [\n 121.285079,\n 42.387857\n ],\n [\n 121.304789,\n 42.435567\n ],\n [\n 121.304789,\n 42.435567\n ],\n [\n 121.388557,\n 42.475297\n ],\n [\n 121.604752,\n 42.494271\n ],\n [\n 121.66573,\n 42.437333\n ],\n [\n 121.904714,\n 42.569666\n ],\n [\n 121.940438,\n 42.688525\n ],\n [\n 122.071634,\n 42.711391\n ],\n [\n 122.20406,\n 42.683687\n ],\n [\n 122.203445,\n 42.731171\n ],\n [\n 122.338951,\n 42.670051\n ],\n [\n 122.395002,\n 42.683687\n ],\n [\n 122.457212,\n 42.774227\n ],\n [\n 122.374676,\n 42.774667\n ],\n [\n 122.35127,\n 42.830419\n ],\n [\n 122.436886,\n 42.843142\n ],\n [\n 122.563769,\n 42.826031\n ],\n [\n 122.624747,\n 42.773349\n ],\n [\n 122.732536,\n 42.786524\n ],\n [\n 122.786123,\n 42.756218\n ],\n [\n 122.786123,\n 42.756218\n ],\n [\n 122.831087,\n 42.722381\n ],\n [\n 122.887137,\n 42.770275\n ],\n [\n 123.058368,\n 42.768957\n ],\n [\n 123.227752,\n 42.831735\n ],\n [\n 123.169853,\n 42.859811\n ],\n [\n 123.18402,\n 42.926002\n ],\n [\n 123.259165,\n 42.992997\n ],\n [\n 123.474743,\n 43.04243\n ],\n [\n 123.515395,\n 43.027561\n ],\n [\n 123.515395,\n 43.027561\n ],\n [\n 123.572678,\n 43.0035\n ],\n [\n 123.666916,\n 43.179585\n ],\n [\n 123.664453,\n 43.264606\n ],\n [\n 123.703873,\n 43.370824\n ],\n [\n 123.710032,\n 43.417344\n ],\n [\n 123.791952,\n 43.491182\n ],\n [\n 123.87264,\n 43.451234\n ],\n [\n 123.84985,\n 43.415606\n ],\n [\n 123.896046,\n 43.361689\n ],\n [\n 124.032784,\n 43.280724\n ],\n [\n 124.098074,\n 43.29292\n ],\n [\n 124.114704,\n 43.247175\n ],\n [\n 124.226805,\n 43.241945\n ],\n [\n 124.226805,\n 43.241945\n ],\n [\n 124.282856,\n 43.230176\n ],\n [\n 124.284088,\n 43.166058\n ],\n [\n 124.425754,\n 43.076092\n ],\n [\n 124.333363,\n 42.997373\n ],\n [\n 124.422674,\n 42.975927\n ],\n [\n 124.431913,\n 42.930821\n ],\n [\n 124.369087,\n 42.882613\n ],\n [\n 124.435609,\n 42.88086\n ],\n [\n 124.454703,\n 42.823836\n ],\n [\n 124.514449,\n 42.873406\n ],\n [\n 124.514449,\n 42.873406\n ],\n [\n 124.539086,\n 42.867266\n ],\n [\n 124.659195,\n 42.972862\n ],\n [\n 124.686912,\n 43.051176\n ],\n [\n 124.785462,\n 43.117161\n ],\n [\n 124.896331,\n 43.129826\n ],\n [\n 124.840897,\n 43.032372\n ],\n [\n 124.869846,\n 42.988183\n ],\n [\n 124.859375,\n 42.822959\n ],\n [\n 124.897563,\n 42.787841\n ],\n [\n 124.975171,\n 42.802768\n ],\n [\n 124.996113,\n 42.745234\n ],\n [\n 124.996113,\n 42.745234\n ],\n [\n 124.968396,\n 42.72282\n ],\n [\n 125.038613,\n 42.615476\n ],\n [\n 125.097127,\n 42.62252\n ],\n [\n 125.068794,\n 42.499564\n ],\n [\n 125.186439,\n 42.428059\n ],\n [\n 125.175352,\n 42.308261\n ],\n [\n 125.29854,\n 42.290116\n ],\n [\n 125.305931,\n 42.146103\n ],\n [\n 125.353358,\n 42.178923\n ],\n [\n 125.490097,\n 42.136343\n ],\n [\n 125.369989,\n 42.003096\n ],\n [\n 125.291764,\n 41.958618\n ],\n [\n 125.299156,\n 41.872243\n ],\n [\n 125.299156,\n 41.872243\n ],\n [\n 125.297308,\n 41.861995\n ],\n [\n 125.297308,\n 41.861995\n ],\n [\n 125.29238,\n 41.83971\n ],\n [\n 125.29238,\n 41.83971\n ],\n [\n 125.29238,\n 41.83971\n ],\n [\n 125.319482,\n 41.777273\n ],\n [\n 125.319482,\n 41.777273\n ],\n [\n 125.323793,\n 41.771026\n ],\n [\n 125.323793,\n 41.771026\n ],\n [\n 125.325025,\n 41.670097\n ],\n [\n 125.450677,\n 41.674119\n ],\n [\n 125.450061,\n 41.598099\n ],\n [\n 125.534444,\n 41.478073\n ],\n [\n 125.547995,\n 41.401373\n ],\n [\n 125.637306,\n 41.34435\n ],\n [\n 125.646545,\n 41.264344\n ],\n [\n 125.758646,\n 41.232404\n ],\n [\n 125.737088,\n 41.179737\n ],\n [\n 125.791291,\n 41.167577\n ],\n [\n 125.712451,\n 41.095471\n ],\n [\n 125.726617,\n 41.055328\n ],\n [\n 125.674879,\n 40.974516\n ],\n [\n 125.589263,\n 40.931135\n ],\n [\n 125.707523,\n 40.866915\n ],\n [\n 125.544915,\n 40.72922\n ],\n [\n 125.49564,\n 40.728767\n ],\n [\n 125.422343,\n 40.635297\n ],\n [\n 125.279445,\n 40.655273\n ],\n [\n 125.018287,\n 40.53624\n ],\n [\n 124.985642,\n 40.475279\n ],\n [\n 124.897563,\n 40.47892\n ],\n [\n 124.851368,\n 40.427017\n ],\n [\n 124.74481,\n 40.375074\n ],\n [\n 124.718325,\n 40.319441\n ],\n [\n 124.62039,\n 40.290695\n ],\n [\n 124.388797,\n 40.113384\n ],\n [\n 124.38079,\n 40.108808\n ],\n [\n 124.336442,\n 40.049751\n ],\n [\n 124.372167,\n 40.021348\n ],\n [\n 124.239124,\n 39.927352\n ],\n [\n 124.173218,\n 39.841496\n ],\n [\n 124.144885,\n 39.745413\n ],\n [\n 124.103001,\n 39.823577\n ],\n [\n 124.002603,\n 39.800137\n ],\n [\n 123.828908,\n 39.831389\n ],\n [\n 123.697097,\n 39.807032\n ],\n [\n 123.665684,\n 39.831389\n ],\n [\n 123.612714,\n 39.77485\n ],\n [\n 123.536337,\n 39.788644\n ],\n [\n 123.392823,\n 39.723787\n ],\n [\n 123.383584,\n 39.766572\n ],\n [\n 123.274563,\n 39.753693\n ],\n [\n 123.253005,\n 39.689724\n ],\n [\n 123.010941,\n 39.655184\n ],\n [\n 122.972753,\n 39.594813\n ],\n [\n 122.85634,\n 39.606799\n ],\n [\n 122.808913,\n 39.559764\n ],\n [\n 122.581631,\n 39.464211\n ],\n [\n 122.489856,\n 39.403673\n ],\n [\n 122.412864,\n 39.411995\n ],\n [\n 122.274893,\n 39.322257\n ],\n [\n 122.242865,\n 39.267618\n ],\n [\n 122.117213,\n 39.213863\n ],\n [\n 122.167104,\n 39.158676\n ],\n [\n 122.048228,\n 39.101123\n ],\n [\n 121.963228,\n 39.030046\n ],\n [\n 121.864062,\n 39.037018\n ],\n [\n 121.920728,\n 38.969598\n ],\n [\n 121.863446,\n 38.942611\n ],\n [\n 121.790149,\n 39.022609\n ],\n [\n 121.671273,\n 39.010057\n ],\n [\n 121.655874,\n 38.9468\n ],\n [\n 121.719316,\n 38.92027\n ],\n [\n 121.708845,\n 38.872772\n ],\n [\n 121.565331,\n 38.875101\n ],\n [\n 121.509897,\n 38.817784\n ],\n [\n 121.359608,\n 38.822446\n ],\n [\n 121.259825,\n 38.786543\n ],\n [\n 121.198848,\n 38.721686\n ],\n [\n 121.13479,\n 38.72402\n ],\n [\n 121.128014,\n 38.958897\n ],\n [\n 121.204391,\n 38.941215\n ],\n [\n 121.341129,\n 38.980761\n ],\n [\n 121.370695,\n 39.060251\n ],\n [\n 121.508049,\n 39.034229\n ],\n [\n 121.68236,\n 39.117837\n ],\n [\n 121.604136,\n 39.166098\n ],\n [\n 121.598592,\n 39.279198\n ],\n [\n 121.668193,\n 39.276419\n ],\n [\n 121.723628,\n 39.367603\n ],\n [\n 121.621382,\n 39.32596\n ],\n [\n 121.474788,\n 39.296332\n ],\n [\n 121.432904,\n 39.357426\n ],\n [\n 121.246891,\n 39.421702\n ],\n [\n 121.304173,\n 39.481762\n ],\n [\n 121.224717,\n 39.51962\n ],\n [\n 121.297398,\n 39.605877\n ],\n [\n 121.450151,\n 39.625235\n ],\n [\n 121.501274,\n 39.706758\n ],\n [\n 121.45939,\n 39.747713\n ],\n [\n 121.530223,\n 39.851603\n ],\n [\n 121.626925,\n 39.882831\n ],\n [\n 121.699606,\n 39.937445\n ],\n [\n 121.76428,\n 39.933316\n ],\n [\n 121.82341,\n 40.036467\n ],\n [\n 121.884388,\n 40.053415\n ],\n [\n 122.01004,\n 40.149067\n ],\n [\n 121.940438,\n 40.2423\n ],\n [\n 122.02667,\n 40.245041\n ],\n [\n 122.040221,\n 40.322178\n ],\n [\n 122.198517,\n 40.382367\n ],\n [\n 122.245944,\n 40.519868\n ],\n [\n 122.133843,\n 40.614408\n ],\n [\n 122.148626,\n 40.671612\n ],\n [\n 122.06609,\n 40.648464\n ],\n [\n 121.951525,\n 40.680687\n ],\n [\n 121.934279,\n 40.798103\n ],\n [\n 121.852359,\n 40.821199\n ],\n [\n 121.816019,\n 40.894962\n ],\n [\n 121.682976,\n 40.829802\n ],\n [\n 121.526527,\n 40.851529\n ],\n [\n 121.499426,\n 40.880035\n ],\n [\n 121.335586,\n 40.900842\n ],\n [\n 121.23642,\n 40.851077\n ],\n [\n 121.126167,\n 40.869177\n ],\n [\n 121.086747,\n 40.798103\n ],\n [\n 120.991276,\n 40.744181\n ],\n [\n 121.033776,\n 40.70972\n ],\n [\n 120.8299,\n 40.671158\n ],\n [\n 120.822509,\n 40.593966\n ],\n [\n 120.72827,\n 40.539423\n ],\n [\n 120.674683,\n 40.471183\n ],\n [\n 120.616169,\n 40.457071\n ],\n [\n 120.599539,\n 40.355471\n ],\n [\n 120.537329,\n 40.325372\n ],\n [\n 120.523778,\n 40.256914\n ],\n [\n 120.465264,\n 40.178787\n ],\n [\n 120.371641,\n 40.174673\n ],\n [\n 120.273091,\n 40.127111\n ],\n [\n 119.955882,\n 40.046544\n ],\n [\n 119.913998,\n 39.988349\n ],\n [\n 119.854252,\n 39.988349\n ],\n [\n 119.845629,\n 40.000726\n ],\n [\n 119.845629,\n 40.000726\n ],\n [\n 119.848093,\n 40.020432\n ],\n [\n 119.848093,\n 40.020432\n ],\n [\n 119.817296,\n 40.049751\n ],\n [\n 119.817296,\n 40.049751\n ],\n [\n 119.780339,\n 40.047002\n ],\n [\n 119.780339,\n 40.047002\n ],\n [\n 119.779723,\n 40.049293\n ],\n [\n 119.779723,\n 40.049293\n ],\n [\n 119.736608,\n 40.10469\n ],\n [\n 119.745847,\n 40.208038\n ],\n [\n 119.625123,\n 40.224029\n ],\n [\n 119.642369,\n 40.291151\n ],\n [\n 119.586934,\n 40.37553\n ],\n [\n 119.598637,\n 40.465266\n ],\n [\n 119.571536,\n 40.540333\n ],\n [\n 119.30237,\n 40.530329\n ],\n [\n 119.162552,\n 40.599872\n ],\n [\n 119.184726,\n 40.680233\n ],\n [\n 119.054147,\n 40.664804\n ],\n [\n 118.911249,\n 40.776811\n ],\n [\n 118.849039,\n 40.800821\n ],\n [\n 118.90201,\n 40.960963\n ],\n [\n 118.977154,\n 40.959155\n ],\n [\n 118.977154,\n 40.959155\n ],\n [\n 119.013495,\n 41.007485\n ],\n [\n 118.951901,\n 41.01832\n ],\n [\n 118.96422,\n 41.079236\n ],\n [\n 119.037516,\n 41.067509\n ],\n [\n 119.126212,\n 41.138744\n ],\n [\n 119.2494,\n 41.279634\n ],\n [\n 119.239545,\n 41.314696\n ]\n ]\n ],\n [\n [\n [\n 122.969057,\n 39.513158\n ],\n [\n 122.978912,\n 39.561609\n ],\n [\n 123.036194,\n 39.533004\n ],\n [\n 122.969057,\n 39.513158\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 220000,\n \"name\": \"吉林省\",\n \"center\": [\n 125.3245,\n 43.886841\n ],\n \"centroid\": [\n 126.171246,\n 43.703944\n ],\n \"childrenNum\": 9,\n \"level\": \"province\",\n \"subFeatureIndex\": 6,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 125.707523,\n 40.866915\n ],\n [\n 125.589263,\n 40.931135\n ],\n [\n 125.674879,\n 40.974516\n ],\n [\n 125.726617,\n 41.055328\n ],\n [\n 125.712451,\n 41.095471\n ],\n [\n 125.791291,\n 41.167577\n ],\n [\n 125.737088,\n 41.179737\n ],\n [\n 125.758646,\n 41.232404\n ],\n [\n 125.646545,\n 41.264344\n ],\n [\n 125.637306,\n 41.34435\n ],\n [\n 125.547995,\n 41.401373\n ],\n [\n 125.534444,\n 41.478073\n ],\n [\n 125.450061,\n 41.598099\n ],\n [\n 125.450677,\n 41.674119\n ],\n [\n 125.325025,\n 41.670097\n ],\n [\n 125.323793,\n 41.771026\n ],\n [\n 125.323793,\n 41.771026\n ],\n [\n 125.319482,\n 41.777273\n ],\n [\n 125.319482,\n 41.777273\n ],\n [\n 125.29238,\n 41.83971\n ],\n [\n 125.29238,\n 41.83971\n ],\n [\n 125.29238,\n 41.83971\n ],\n [\n 125.297308,\n 41.861995\n ],\n [\n 125.297308,\n 41.861995\n ],\n [\n 125.299156,\n 41.872243\n ],\n [\n 125.299156,\n 41.872243\n ],\n [\n 125.291764,\n 41.958618\n ],\n [\n 125.369989,\n 42.003096\n ],\n [\n 125.490097,\n 42.136343\n ],\n [\n 125.353358,\n 42.178923\n ],\n [\n 125.305931,\n 42.146103\n ],\n [\n 125.29854,\n 42.290116\n ],\n [\n 125.175352,\n 42.308261\n ],\n [\n 125.186439,\n 42.428059\n ],\n [\n 125.068794,\n 42.499564\n ],\n [\n 125.097127,\n 42.62252\n ],\n [\n 125.038613,\n 42.615476\n ],\n [\n 124.968396,\n 42.72282\n ],\n [\n 124.996113,\n 42.745234\n ],\n [\n 124.996113,\n 42.745234\n ],\n [\n 124.975171,\n 42.802768\n ],\n [\n 124.897563,\n 42.787841\n ],\n [\n 124.859375,\n 42.822959\n ],\n [\n 124.869846,\n 42.988183\n ],\n [\n 124.840897,\n 43.032372\n ],\n [\n 124.896331,\n 43.129826\n ],\n [\n 124.785462,\n 43.117161\n ],\n [\n 124.686912,\n 43.051176\n ],\n [\n 124.659195,\n 42.972862\n ],\n [\n 124.539086,\n 42.867266\n ],\n [\n 124.514449,\n 42.873406\n ],\n [\n 124.514449,\n 42.873406\n ],\n [\n 124.454703,\n 42.823836\n ],\n [\n 124.435609,\n 42.88086\n ],\n [\n 124.369087,\n 42.882613\n ],\n [\n 124.431913,\n 42.930821\n ],\n [\n 124.422674,\n 42.975927\n ],\n [\n 124.333363,\n 42.997373\n ],\n [\n 124.425754,\n 43.076092\n ],\n [\n 124.284088,\n 43.166058\n ],\n [\n 124.282856,\n 43.230176\n ],\n [\n 124.226805,\n 43.241945\n ],\n [\n 124.226805,\n 43.241945\n ],\n [\n 124.114704,\n 43.247175\n ],\n [\n 124.098074,\n 43.29292\n ],\n [\n 124.032784,\n 43.280724\n ],\n [\n 123.896046,\n 43.361689\n ],\n [\n 123.84985,\n 43.415606\n ],\n [\n 123.87264,\n 43.451234\n ],\n [\n 123.791952,\n 43.491182\n ],\n [\n 123.710032,\n 43.417344\n ],\n [\n 123.703873,\n 43.370824\n ],\n [\n 123.608402,\n 43.366474\n ],\n [\n 123.486446,\n 43.445587\n ],\n [\n 123.419925,\n 43.409955\n ],\n [\n 123.382968,\n 43.46904\n ],\n [\n 123.315831,\n 43.49205\n ],\n [\n 123.304744,\n 43.551055\n ],\n [\n 123.439019,\n 43.577501\n ],\n [\n 123.439019,\n 43.577501\n ],\n [\n 123.5117,\n 43.59267\n ],\n [\n 123.52525,\n 43.695718\n ],\n [\n 123.400831,\n 43.979264\n ],\n [\n 123.332461,\n 44.028326\n ],\n [\n 123.32815,\n 44.083795\n ],\n [\n 123.386664,\n 44.161966\n ],\n [\n 123.323838,\n 44.179991\n ],\n [\n 123.196955,\n 44.34496\n ],\n [\n 123.128585,\n 44.366778\n ],\n [\n 123.125506,\n 44.509466\n ],\n [\n 123.025108,\n 44.492823\n ],\n [\n 122.85634,\n 44.398422\n ],\n [\n 122.76087,\n 44.369772\n ],\n [\n 122.676486,\n 44.28631\n ],\n [\n 122.483697,\n 44.237032\n ],\n [\n 122.319241,\n 44.232745\n ],\n [\n 122.271198,\n 44.255463\n ],\n [\n 122.291524,\n 44.310291\n ],\n [\n 122.28598,\n 44.477883\n ],\n [\n 122.228082,\n 44.480017\n ],\n [\n 122.196053,\n 44.559794\n ],\n [\n 122.13138,\n 44.577697\n ],\n [\n 122.103046,\n 44.673935\n ],\n [\n 122.161561,\n 44.728371\n ],\n [\n 122.114749,\n 44.776386\n ],\n [\n 122.04946,\n 44.912987\n ],\n [\n 122.079025,\n 44.914258\n ],\n [\n 122.074713,\n 45.006553\n ],\n [\n 122.119677,\n 45.068705\n ],\n [\n 122.109822,\n 45.142186\n ],\n [\n 122.143082,\n 45.183108\n ],\n [\n 122.22993,\n 45.20672\n ],\n [\n 122.239169,\n 45.276234\n ],\n [\n 122.147394,\n 45.295598\n ],\n [\n 122.163408,\n 45.443979\n ],\n [\n 122.02359,\n 45.490137\n ],\n [\n 121.966308,\n 45.596157\n ],\n [\n 122.003264,\n 45.623363\n ],\n [\n 121.949062,\n 45.711169\n ],\n [\n 121.867142,\n 45.719942\n ],\n [\n 121.811091,\n 45.686932\n ],\n [\n 121.713773,\n 45.701977\n ],\n [\n 121.644172,\n 45.752516\n ],\n [\n 121.754425,\n 45.795084\n ],\n [\n 121.817251,\n 45.875539\n ],\n [\n 121.809243,\n 45.96087\n ],\n [\n 121.762432,\n 45.999538\n ],\n [\n 121.84312,\n 46.02447\n ],\n [\n 122.040221,\n 45.95879\n ],\n [\n 122.091344,\n 45.881787\n ],\n [\n 122.200981,\n 45.85679\n ],\n [\n 122.258879,\n 45.794666\n ],\n [\n 122.372828,\n 45.855957\n ],\n [\n 122.362357,\n 45.917597\n ],\n [\n 122.446125,\n 45.916764\n ],\n [\n 122.496016,\n 45.858041\n ],\n [\n 122.504639,\n 45.787157\n ],\n [\n 122.555146,\n 45.821359\n ],\n [\n 122.640761,\n 45.7713\n ],\n [\n 122.671558,\n 45.700723\n ],\n [\n 122.741775,\n 45.70532\n ],\n [\n 122.792283,\n 45.766291\n ],\n [\n 122.752246,\n 45.834701\n ],\n [\n 122.828623,\n 45.912185\n ],\n [\n 122.792898,\n 46.073056\n ],\n [\n 123.04605,\n 46.10003\n ],\n [\n 123.112571,\n 46.129894\n ],\n [\n 123.102716,\n 46.172172\n ],\n [\n 123.178476,\n 46.247944\n ],\n [\n 123.248078,\n 46.273178\n ],\n [\n 123.319527,\n 46.253736\n ],\n [\n 123.319527,\n 46.253736\n ],\n [\n 123.373113,\n 46.223112\n ],\n [\n 123.498765,\n 46.259528\n ],\n [\n 123.565902,\n 46.22601\n ],\n [\n 123.610866,\n 46.252909\n ],\n [\n 123.779633,\n 46.264078\n ],\n [\n 123.896046,\n 46.303774\n ],\n [\n 123.982893,\n 46.22601\n ],\n [\n 123.99398,\n 46.101275\n ],\n [\n 124.040176,\n 46.019484\n ],\n [\n 123.970574,\n 45.971267\n ],\n [\n 123.996444,\n 45.907189\n ],\n [\n 124.061118,\n 45.886369\n ],\n [\n 124.064813,\n 45.797586\n ],\n [\n 124.009379,\n 45.78215\n ],\n [\n 124.13811,\n 45.68735\n ],\n [\n 124.129487,\n 45.637589\n ],\n [\n 124.273001,\n 45.584014\n ],\n [\n 124.287783,\n 45.539191\n ],\n [\n 124.354305,\n 45.546734\n ],\n [\n 124.398652,\n 45.44062\n ],\n [\n 124.480572,\n 45.456151\n ],\n [\n 124.544014,\n 45.412066\n ],\n [\n 124.625318,\n 45.437262\n ],\n [\n 124.886476,\n 45.442719\n ],\n [\n 124.923433,\n 45.541286\n ],\n [\n 124.961005,\n 45.49517\n ],\n [\n 125.025678,\n 45.493492\n ],\n [\n 125.06941,\n 45.384757\n ],\n [\n 125.248649,\n 45.417526\n ],\n [\n 125.347815,\n 45.395262\n ],\n [\n 125.398322,\n 45.416686\n ],\n [\n 125.424807,\n 45.485523\n ],\n [\n 125.497488,\n 45.469161\n ],\n [\n 125.628067,\n 45.522006\n ],\n [\n 125.687813,\n 45.51404\n ],\n [\n 125.716146,\n 45.421725\n ],\n [\n 125.697052,\n 45.349447\n ],\n [\n 125.760494,\n 45.291389\n ],\n [\n 125.915095,\n 45.196602\n ],\n [\n 126.166398,\n 45.133323\n ],\n [\n 126.321615,\n 45.178891\n ],\n [\n 126.428172,\n 45.2358\n ],\n [\n 126.567375,\n 45.252651\n ],\n [\n 126.831613,\n 45.146406\n ],\n [\n 126.96404,\n 45.132056\n ],\n [\n 126.968351,\n 45.074621\n ],\n [\n 127.085995,\n 44.944757\n ],\n [\n 127.021938,\n 44.899002\n ],\n [\n 126.984366,\n 44.823936\n ],\n [\n 127.037336,\n 44.72157\n ],\n [\n 127.049039,\n 44.567041\n ],\n [\n 127.094003,\n 44.615189\n ],\n [\n 127.182082,\n 44.644144\n ],\n [\n 127.392733,\n 44.632223\n ],\n [\n 127.557189,\n 44.575566\n ],\n [\n 127.536247,\n 44.522266\n ],\n [\n 127.463566,\n 44.484713\n ],\n [\n 127.50853,\n 44.437312\n ],\n [\n 127.483892,\n 44.401842\n ],\n [\n 127.483892,\n 44.401842\n ],\n [\n 127.623095,\n 44.277743\n ],\n [\n 127.591066,\n 44.227601\n ],\n [\n 127.681609,\n 44.167116\n ],\n [\n 127.724109,\n 44.196723\n ],\n [\n 127.729036,\n 44.098836\n ],\n [\n 127.862079,\n 44.063162\n ],\n [\n 128.059796,\n 44.110007\n ],\n [\n 128.089977,\n 44.132342\n ],\n [\n 128.101679,\n 44.290593\n ],\n [\n 128.049941,\n 44.349239\n ],\n [\n 128.190375,\n 44.367206\n ],\n [\n 128.211317,\n 44.431757\n ],\n [\n 128.373309,\n 44.51416\n ],\n [\n 128.46262,\n 44.433894\n ],\n [\n 128.481714,\n 44.375332\n ],\n [\n 128.450301,\n 44.203157\n ],\n [\n 128.574721,\n 44.047682\n ],\n [\n 128.584576,\n 43.990887\n ],\n [\n 128.644938,\n 43.936193\n ],\n [\n 128.636315,\n 43.891366\n ],\n [\n 128.723778,\n 43.894816\n ],\n [\n 128.760734,\n 43.857724\n ],\n [\n 128.719467,\n 43.816724\n ],\n [\n 128.877763,\n 43.540213\n ],\n [\n 128.949212,\n 43.55409\n ],\n [\n 129.014501,\n 43.523295\n ],\n [\n 129.230696,\n 43.59527\n ],\n [\n 129.211602,\n 43.784336\n ],\n [\n 129.406855,\n 43.819314\n ],\n [\n 129.467833,\n 43.874548\n ],\n [\n 129.742542,\n 43.875841\n ],\n [\n 129.784426,\n 43.964623\n ],\n [\n 129.869425,\n 44.005521\n ],\n [\n 129.869425,\n 44.005521\n ],\n [\n 129.880512,\n 44.000357\n ],\n [\n 129.880512,\n 44.000357\n ],\n [\n 129.98091,\n 44.014128\n ],\n [\n 130.017251,\n 43.962039\n ],\n [\n 130.027106,\n 43.851684\n ],\n [\n 130.079461,\n 43.835285\n ],\n [\n 130.079461,\n 43.835285\n ],\n [\n 130.189098,\n 43.940501\n ],\n [\n 130.260547,\n 43.948256\n ],\n [\n 130.353554,\n 44.050262\n ],\n [\n 130.338155,\n 43.949979\n ],\n [\n 130.338155,\n 43.949979\n ],\n [\n 130.383119,\n 43.906025\n ],\n [\n 130.380039,\n 43.783904\n ],\n [\n 130.423771,\n 43.742853\n ],\n [\n 130.4133,\n 43.652009\n ],\n [\n 130.488444,\n 43.655905\n ],\n [\n 130.823515,\n 43.502901\n ],\n [\n 130.841378,\n 43.454274\n ],\n [\n 130.907283,\n 43.434291\n ],\n [\n 131.026775,\n 43.508542\n ],\n [\n 131.134565,\n 43.428643\n ],\n [\n 131.134565,\n 43.428643\n ],\n [\n 131.294093,\n 43.469909\n ],\n [\n 131.304564,\n 43.502033\n ],\n [\n 131.314419,\n 43.392567\n ],\n [\n 131.275615,\n 43.369084\n ],\n [\n 131.255289,\n 43.265041\n ],\n [\n 131.206014,\n 43.23715\n ],\n [\n 131.218332,\n 43.146853\n ],\n [\n 131.171521,\n 43.069536\n ],\n [\n 131.102536,\n 43.021\n ],\n [\n 131.151195,\n 42.968485\n ],\n [\n 131.114855,\n 42.915048\n ],\n [\n 131.034167,\n 42.929069\n ],\n [\n 131.045869,\n 42.866828\n ],\n [\n 130.949167,\n 42.876913\n ],\n [\n 130.890653,\n 42.852793\n ],\n [\n 130.801957,\n 42.879544\n ],\n [\n 130.784095,\n 42.842265\n ],\n [\n 130.666451,\n 42.847968\n ],\n [\n 130.40714,\n 42.731611\n ],\n [\n 130.464423,\n 42.688525\n ],\n [\n 130.586995,\n 42.67621\n ],\n [\n 130.633806,\n 42.603586\n ],\n [\n 130.570364,\n 42.557327\n ],\n [\n 130.558661,\n 42.496035\n ],\n [\n 130.482285,\n 42.626483\n ],\n [\n 130.388046,\n 42.603145\n ],\n [\n 130.242069,\n 42.738643\n ],\n [\n 130.265474,\n 42.904092\n ],\n [\n 130.10225,\n 42.922935\n ],\n [\n 130.144134,\n 42.976365\n ],\n [\n 129.994461,\n 42.980304\n ],\n [\n 129.98707,\n 42.977678\n ],\n [\n 129.939642,\n 43.01225\n ],\n [\n 129.899606,\n 43.002187\n ],\n [\n 129.85957,\n 42.966295\n ],\n [\n 129.858338,\n 42.964544\n ],\n [\n 129.839244,\n 42.879983\n ],\n [\n 129.835549,\n 42.866828\n ],\n [\n 129.821382,\n 42.854109\n ],\n [\n 129.816454,\n 42.851039\n ],\n [\n 129.7641,\n 42.716227\n ],\n [\n 129.764716,\n 42.713149\n ],\n [\n 129.776418,\n 42.69908\n ],\n [\n 129.794281,\n 42.684127\n ],\n [\n 129.741926,\n 42.580681\n ],\n [\n 129.748701,\n 42.470884\n ],\n [\n 129.704354,\n 42.427176\n ],\n [\n 129.612579,\n 42.436892\n ],\n [\n 129.601492,\n 42.42276\n ],\n [\n 129.546057,\n 42.361336\n ],\n [\n 129.452434,\n 42.440866\n ],\n [\n 129.344029,\n 42.451462\n ],\n [\n 129.239935,\n 42.36841\n ],\n [\n 129.231928,\n 42.36001\n ],\n [\n 129.260261,\n 42.335689\n ],\n [\n 129.183269,\n 42.262225\n ],\n [\n 129.215914,\n 42.20818\n ],\n [\n 129.120443,\n 42.142111\n ],\n [\n 128.954755,\n 42.083966\n ],\n [\n 128.930734,\n 42.014211\n ],\n [\n 128.737945,\n 42.050209\n ],\n [\n 128.70222,\n 42.020434\n ],\n [\n 128.60675,\n 42.030212\n ],\n [\n 128.569177,\n 41.996426\n ],\n [\n 128.466316,\n 42.020878\n ],\n [\n 128.090593,\n 42.022656\n ],\n [\n 128.033926,\n 42.000428\n ],\n [\n 128.106607,\n 41.950164\n ],\n [\n 128.112766,\n 41.79378\n ],\n [\n 128.171897,\n 41.713882\n ],\n [\n 128.278454,\n 41.658922\n ],\n [\n 128.317258,\n 41.593177\n ],\n [\n 128.242114,\n 41.501827\n ],\n [\n 128.203309,\n 41.411246\n ],\n [\n 128.113998,\n 41.364561\n ],\n [\n 127.932296,\n 41.446686\n ],\n [\n 127.850376,\n 41.422912\n ],\n [\n 127.636645,\n 41.41349\n ],\n [\n 127.547334,\n 41.477176\n ],\n [\n 127.40998,\n 41.463278\n ],\n [\n 127.294183,\n 41.48659\n ],\n [\n 127.283096,\n 41.513925\n ],\n [\n 127.115561,\n 41.540353\n ],\n [\n 127.179618,\n 41.599888\n ],\n [\n 127.039184,\n 41.671884\n ],\n [\n 127.051503,\n 41.744693\n ],\n [\n 126.943714,\n 41.772365\n ],\n [\n 126.931395,\n 41.812959\n ],\n [\n 126.808207,\n 41.748264\n ],\n [\n 126.798968,\n 41.697354\n ],\n [\n 126.726903,\n 41.751389\n ],\n [\n 126.688099,\n 41.674119\n ],\n [\n 126.608643,\n 41.670543\n ],\n [\n 126.569838,\n 41.621809\n ],\n [\n 126.497158,\n 41.406758\n ],\n [\n 126.539041,\n 41.366806\n ],\n [\n 126.435564,\n 41.351088\n ],\n [\n 126.322847,\n 41.231054\n ],\n [\n 126.293282,\n 41.17073\n ],\n [\n 126.157775,\n 41.091413\n ],\n [\n 126.031507,\n 40.927067\n ],\n [\n 125.959442,\n 40.881845\n ],\n [\n 125.875059,\n 40.90853\n ],\n [\n 125.817161,\n 40.866915\n ],\n [\n 125.785132,\n 40.895867\n ],\n [\n 125.707523,\n 40.866915\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 230000,\n \"name\": \"黑龙江省\",\n \"center\": [\n 126.642464,\n 45.756967\n ],\n \"centroid\": [\n 127.693002,\n 48.040469\n ],\n \"childrenNum\": 13,\n \"level\": \"province\",\n \"subFeatureIndex\": 7,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 123.319527,\n 46.253736\n ],\n [\n 123.319527,\n 46.253736\n ],\n [\n 123.248078,\n 46.273178\n ],\n [\n 123.178476,\n 46.247944\n ],\n [\n 123.011557,\n 46.43506\n ],\n [\n 123.002318,\n 46.574257\n ],\n [\n 123.04605,\n 46.617426\n ],\n [\n 123.18094,\n 46.614138\n ],\n [\n 123.228368,\n 46.58824\n ],\n [\n 123.276411,\n 46.660972\n ],\n [\n 123.366338,\n 46.677805\n ],\n [\n 123.603475,\n 46.689299\n ],\n [\n 123.631808,\n 46.728685\n ],\n [\n 123.625648,\n 46.84749\n ],\n [\n 123.576989,\n 46.891259\n ],\n [\n 123.562823,\n 46.825797\n ],\n [\n 123.483366,\n 46.845854\n ],\n [\n 123.52833,\n 46.944797\n ],\n [\n 123.404526,\n 46.935401\n ],\n [\n 123.374345,\n 46.837668\n ],\n [\n 123.309056,\n 46.86222\n ],\n [\n 123.221592,\n 46.850355\n ],\n [\n 123.163694,\n 46.740167\n ],\n [\n 123.026339,\n 46.718841\n ],\n [\n 122.906847,\n 46.807372\n ],\n [\n 122.895144,\n 46.960317\n ],\n [\n 122.796594,\n 46.938261\n ],\n [\n 122.778116,\n 47.00277\n ],\n [\n 122.845869,\n 47.046819\n ],\n [\n 122.679566,\n 47.094092\n ],\n [\n 122.556378,\n 47.17265\n ],\n [\n 122.418407,\n 47.350503\n ],\n [\n 122.507103,\n 47.401555\n ],\n [\n 122.543443,\n 47.495427\n ],\n [\n 122.59395,\n 47.547551\n ],\n [\n 122.763333,\n 47.613338\n ],\n [\n 122.855108,\n 47.677432\n ],\n [\n 123.166158,\n 47.783677\n ],\n [\n 123.228983,\n 47.840735\n ],\n [\n 123.300432,\n 47.953861\n ],\n [\n 123.537569,\n 48.021938\n ],\n [\n 123.746373,\n 48.19772\n ],\n [\n 123.873256,\n 48.281006\n ],\n [\n 124.07898,\n 48.436058\n ],\n [\n 124.25945,\n 48.536391\n ],\n [\n 124.25945,\n 48.536391\n ],\n [\n 124.314269,\n 48.503894\n ],\n [\n 124.317964,\n 48.347856\n ],\n [\n 124.404812,\n 48.264679\n ],\n [\n 124.418978,\n 48.181765\n ],\n [\n 124.467637,\n 48.178972\n ],\n [\n 124.463942,\n 48.097518\n ],\n [\n 124.578507,\n 48.251931\n ],\n [\n 124.579738,\n 48.304095\n ],\n [\n 124.51876,\n 48.378068\n ],\n [\n 124.507674,\n 48.445584\n ],\n [\n 124.555717,\n 48.467805\n ],\n [\n 124.520608,\n 48.556196\n ],\n [\n 124.579122,\n 48.596574\n ],\n [\n 124.653651,\n 48.777089\n ],\n [\n 124.697383,\n 48.841711\n ],\n [\n 124.709086,\n 48.920406\n ],\n [\n 124.808252,\n 49.020563\n ],\n [\n 124.807636,\n 49.108769\n ],\n [\n 124.906802,\n 49.183915\n ],\n [\n 125.117453,\n 49.126\n ],\n [\n 125.219699,\n 49.188999\n ],\n [\n 125.261583,\n 49.318656\n ],\n [\n 125.264047,\n 49.461585\n ],\n [\n 125.228323,\n 49.486857\n ],\n [\n 125.234482,\n 49.592077\n ],\n [\n 125.132236,\n 49.671909\n ],\n [\n 125.219699,\n 49.669199\n ],\n [\n 125.222779,\n 49.799137\n ],\n [\n 125.177815,\n 49.829637\n ],\n [\n 125.239409,\n 49.844687\n ],\n [\n 125.231402,\n 49.957606\n ],\n [\n 125.294228,\n 50.029151\n ],\n [\n 125.258504,\n 50.103659\n ],\n [\n 125.334264,\n 50.165023\n ],\n [\n 125.448829,\n 50.216354\n ],\n [\n 125.466075,\n 50.297452\n ],\n [\n 125.519662,\n 50.315795\n ],\n [\n 125.590495,\n 50.452378\n ],\n [\n 125.632379,\n 50.443996\n ],\n [\n 125.740784,\n 50.523184\n ],\n [\n 125.829479,\n 50.561589\n ],\n [\n 125.787595,\n 50.677373\n ],\n [\n 125.825784,\n 50.703906\n ],\n [\n 125.758646,\n 50.746706\n ],\n [\n 125.890457,\n 50.805729\n ],\n [\n 126.073391,\n 50.963514\n ],\n [\n 126.033971,\n 51.010971\n ],\n [\n 126.059225,\n 51.043711\n ],\n [\n 125.878138,\n 51.159431\n ],\n [\n 125.840566,\n 51.220555\n ],\n [\n 125.756798,\n 51.227675\n ],\n [\n 125.743248,\n 51.275984\n ],\n [\n 125.743248,\n 51.275984\n ],\n [\n 125.670567,\n 51.34555\n ],\n [\n 125.670567,\n 51.34555\n ],\n [\n 125.668103,\n 51.347419\n ],\n [\n 125.668103,\n 51.347419\n ],\n [\n 125.63977,\n 51.372451\n ],\n [\n 125.63977,\n 51.372451\n ],\n [\n 125.623756,\n 51.387762\n ],\n [\n 125.623756,\n 51.387762\n ],\n [\n 125.600966,\n 51.413518\n ],\n [\n 125.600966,\n 51.413518\n ],\n [\n 125.597886,\n 51.414638\n ],\n [\n 125.597886,\n 51.414638\n ],\n [\n 125.595422,\n 51.416877\n ],\n [\n 125.595422,\n 51.416877\n ],\n [\n 125.567089,\n 51.455668\n ],\n [\n 125.567089,\n 51.455668\n ],\n [\n 125.35151,\n 51.623876\n ],\n [\n 125.130388,\n 51.635389\n ],\n [\n 125.098975,\n 51.658408\n ],\n [\n 125.047236,\n 51.529801\n ],\n [\n 124.928976,\n 51.498523\n ],\n [\n 124.942527,\n 51.447465\n ],\n [\n 124.864302,\n 51.379547\n ],\n [\n 124.783614,\n 51.392243\n ],\n [\n 124.693687,\n 51.332842\n ],\n [\n 124.62655,\n 51.327608\n ],\n [\n 124.58713,\n 51.363486\n ],\n [\n 124.490427,\n 51.380294\n ],\n [\n 124.43684,\n 51.353772\n ],\n [\n 124.406659,\n 51.271867\n ],\n [\n 124.271769,\n 51.308162\n ],\n [\n 124.239124,\n 51.344429\n ],\n [\n 124.128255,\n 51.347419\n ],\n [\n 124.071588,\n 51.320878\n ],\n [\n 123.926227,\n 51.300681\n ],\n [\n 123.842459,\n 51.367595\n ],\n [\n 123.711264,\n 51.398216\n ],\n [\n 123.661989,\n 51.319008\n ],\n [\n 123.465504,\n 51.287212\n ],\n [\n 123.294273,\n 51.25427\n ],\n [\n 123.058984,\n 51.321999\n ],\n [\n 122.978296,\n 51.331346\n ],\n [\n 122.965977,\n 51.387015\n ],\n [\n 122.903768,\n 51.415384\n ],\n [\n 122.854492,\n 51.477659\n ],\n [\n 122.85634,\n 51.606786\n ],\n [\n 122.749167,\n 51.746661\n ],\n [\n 122.771957,\n 51.779619\n ],\n [\n 122.706051,\n 51.890166\n ],\n [\n 122.726377,\n 51.978704\n ],\n [\n 122.683877,\n 51.974649\n ],\n [\n 122.629059,\n 52.136529\n ],\n [\n 122.769493,\n 52.179843\n ],\n [\n 122.76087,\n 52.26671\n ],\n [\n 122.585943,\n 52.266344\n ],\n [\n 122.478153,\n 52.29636\n ],\n [\n 122.484313,\n 52.341711\n ],\n [\n 122.342031,\n 52.41403\n ],\n [\n 122.310618,\n 52.475299\n ],\n [\n 122.207756,\n 52.469103\n ],\n [\n 122.168952,\n 52.513549\n ],\n [\n 122.091344,\n 52.427167\n ],\n [\n 121.94783,\n 52.298555\n ],\n [\n 121.841272,\n 52.282818\n ],\n [\n 121.714389,\n 52.317944\n ],\n [\n 121.63986,\n 52.444311\n ],\n [\n 121.519136,\n 52.456709\n ],\n [\n 121.416274,\n 52.499346\n ],\n [\n 121.325731,\n 52.572498\n ],\n [\n 121.182217,\n 52.599399\n ],\n [\n 121.373158,\n 52.683268\n ],\n [\n 121.476636,\n 52.772043\n ],\n [\n 121.591201,\n 52.824499\n ],\n [\n 121.610295,\n 52.892416\n ],\n [\n 121.66265,\n 52.912626\n ],\n [\n 121.715621,\n 52.998054\n ],\n [\n 121.785838,\n 53.018575\n ],\n [\n 121.817867,\n 53.061744\n ],\n [\n 121.754425,\n 53.146519\n ],\n [\n 121.665114,\n 53.170556\n ],\n [\n 121.679896,\n 53.240437\n ],\n [\n 121.612143,\n 53.260484\n ],\n [\n 121.499426,\n 53.337008\n ],\n [\n 121.596128,\n 53.352368\n ],\n [\n 121.697758,\n 53.392705\n ],\n [\n 121.754425,\n 53.389494\n ],\n [\n 121.875765,\n 53.426587\n ],\n [\n 122.111054,\n 53.426944\n ],\n [\n 122.161561,\n 53.468635\n ],\n [\n 122.227466,\n 53.461868\n ],\n [\n 122.350038,\n 53.50566\n ],\n [\n 122.435038,\n 53.444766\n ],\n [\n 122.608117,\n 53.46543\n ],\n [\n 122.894528,\n 53.462936\n ],\n [\n 123.052209,\n 53.506727\n ],\n [\n 123.137209,\n 53.498186\n ],\n [\n 123.274563,\n 53.563269\n ],\n [\n 123.454417,\n 53.536608\n ],\n [\n 123.510468,\n 53.509218\n ],\n [\n 123.517243,\n 53.558293\n ],\n [\n 123.569598,\n 53.505304\n ],\n [\n 123.58746,\n 53.546919\n ],\n [\n 123.668764,\n 53.533763\n ],\n [\n 123.698329,\n 53.498542\n ],\n [\n 123.865249,\n 53.489644\n ],\n [\n 124.058038,\n 53.404121\n ],\n [\n 124.125791,\n 53.348082\n ],\n [\n 124.239124,\n 53.379501\n ],\n [\n 124.327819,\n 53.332006\n ],\n [\n 124.375863,\n 53.259053\n ],\n [\n 124.435609,\n 53.223962\n ],\n [\n 124.563108,\n 53.201389\n ],\n [\n 124.683832,\n 53.206406\n ],\n [\n 124.734339,\n 53.146519\n ],\n [\n 124.832889,\n 53.145083\n ],\n [\n 124.87231,\n 53.099123\n ],\n [\n 124.887708,\n 53.164458\n ],\n [\n 124.970244,\n 53.194221\n ],\n [\n 125.195062,\n 53.198522\n ],\n [\n 125.315786,\n 53.145083\n ],\n [\n 125.503647,\n 53.095171\n ],\n [\n 125.530749,\n 53.050956\n ],\n [\n 125.613901,\n 53.083313\n ],\n [\n 125.684118,\n 53.008136\n ],\n [\n 125.742632,\n 52.993733\n ],\n [\n 125.737704,\n 52.945087\n ],\n [\n 125.665023,\n 52.913348\n ],\n [\n 125.678574,\n 52.860999\n ],\n [\n 125.772197,\n 52.89783\n ],\n [\n 125.855349,\n 52.866418\n ],\n [\n 125.985312,\n 52.758648\n ],\n [\n 126.058609,\n 52.798098\n ],\n [\n 126.115275,\n 52.757924\n ],\n [\n 126.045058,\n 52.738366\n ],\n [\n 126.061688,\n 52.673473\n ],\n [\n 125.995783,\n 52.675287\n ],\n [\n 125.968682,\n 52.630279\n ],\n [\n 126.030891,\n 52.576135\n ],\n [\n 126.066616,\n 52.60376\n ],\n [\n 126.213209,\n 52.5252\n ],\n [\n 126.205202,\n 52.466187\n ],\n [\n 126.266796,\n 52.475664\n ],\n [\n 126.353644,\n 52.389207\n ],\n [\n 126.327774,\n 52.310628\n ],\n [\n 126.4331,\n 52.298555\n ],\n [\n 126.300673,\n 52.220915\n ],\n [\n 126.34502,\n 52.192315\n ],\n [\n 126.499005,\n 52.160394\n ],\n [\n 126.563679,\n 52.119266\n ],\n [\n 126.514404,\n 52.037264\n ],\n [\n 126.450962,\n 52.027693\n ],\n [\n 126.462665,\n 51.948473\n ],\n [\n 126.510092,\n 51.922281\n ],\n [\n 126.622809,\n 51.777397\n ],\n [\n 126.734294,\n 51.711454\n ],\n [\n 126.741069,\n 51.642073\n ],\n [\n 126.69549,\n 51.578536\n ],\n [\n 126.837156,\n 51.536128\n ],\n [\n 126.784185,\n 51.44821\n ],\n [\n 126.908605,\n 51.407174\n ],\n [\n 126.930163,\n 51.359376\n ],\n [\n 126.837156,\n 51.345177\n ],\n [\n 126.841468,\n 51.258763\n ],\n [\n 126.92154,\n 51.259512\n ],\n [\n 126.887047,\n 51.321999\n ],\n [\n 126.978822,\n 51.329477\n ],\n [\n 126.976358,\n 51.291702\n ],\n [\n 126.899982,\n 51.200689\n ],\n [\n 126.922772,\n 51.061764\n ],\n [\n 127.143894,\n 50.91035\n ],\n [\n 127.236285,\n 50.781524\n ],\n [\n 127.295415,\n 50.755035\n ],\n [\n 127.294799,\n 50.663721\n ],\n [\n 127.370559,\n 50.581349\n ],\n [\n 127.293567,\n 50.46571\n ],\n [\n 127.3644,\n 50.43828\n ],\n [\n 127.332371,\n 50.340623\n ],\n [\n 127.371791,\n 50.296688\n ],\n [\n 127.603385,\n 50.23932\n ],\n [\n 127.58737,\n 50.137802\n ],\n [\n 127.501755,\n 50.056817\n ],\n [\n 127.495595,\n 49.994545\n ],\n [\n 127.543638,\n 49.944131\n ],\n [\n 127.531936,\n 49.825777\n ],\n [\n 127.563964,\n 49.793343\n ],\n [\n 127.660051,\n 49.77905\n ],\n [\n 127.677913,\n 49.697846\n ],\n [\n 127.815268,\n 49.594017\n ],\n [\n 127.897804,\n 49.578889\n ],\n [\n 128.001281,\n 49.592465\n ],\n [\n 128.070882,\n 49.55677\n ],\n [\n 128.185447,\n 49.539301\n ],\n [\n 128.287077,\n 49.566473\n ],\n [\n 128.343128,\n 49.545125\n ],\n [\n 128.389939,\n 49.590138\n ],\n [\n 128.537764,\n 49.604487\n ],\n [\n 128.715155,\n 49.56492\n ],\n [\n 128.744104,\n 49.594792\n ],\n [\n 128.813089,\n 49.558323\n ],\n [\n 128.754575,\n 49.506676\n ],\n [\n 128.792147,\n 49.473251\n ],\n [\n 128.871604,\n 49.492298\n ],\n [\n 129.013886,\n 49.457307\n ],\n [\n 129.055769,\n 49.382188\n ],\n [\n 129.143849,\n 49.357253\n ],\n [\n 129.215298,\n 49.398935\n ],\n [\n 129.320623,\n 49.358422\n ],\n [\n 129.379138,\n 49.366995\n ],\n [\n 129.390224,\n 49.432799\n ],\n [\n 129.448739,\n 49.441359\n ],\n [\n 129.546057,\n 49.395041\n ],\n [\n 129.562687,\n 49.299541\n ],\n [\n 129.604571,\n 49.278858\n ],\n [\n 129.714209,\n 49.296029\n ],\n [\n 129.761636,\n 49.257384\n ],\n [\n 129.753629,\n 49.208547\n ],\n [\n 129.847867,\n 49.181177\n ],\n [\n 129.866962,\n 49.114252\n ],\n [\n 129.913157,\n 49.108377\n ],\n [\n 129.937179,\n 49.04057\n ],\n [\n 130.020946,\n 49.020955\n ],\n [\n 130.059135,\n 48.978954\n ],\n [\n 130.211272,\n 48.901137\n ],\n [\n 130.245148,\n 48.866514\n ],\n [\n 130.471198,\n 48.905464\n ],\n [\n 130.501995,\n 48.86612\n ],\n [\n 130.680617,\n 48.881074\n ],\n [\n 130.689856,\n 48.849586\n ],\n [\n 130.622103,\n 48.783792\n ],\n [\n 130.538335,\n 48.612004\n ],\n [\n 130.605473,\n 48.5942\n ],\n [\n 130.620871,\n 48.495964\n ],\n [\n 130.767465,\n 48.507858\n ],\n [\n 130.740363,\n 48.425339\n ],\n [\n 130.845073,\n 48.296533\n ],\n [\n 130.769313,\n 48.23121\n ],\n [\n 130.765617,\n 48.189344\n ],\n [\n 130.673842,\n 48.128278\n ],\n [\n 130.699711,\n 48.044344\n ],\n [\n 130.891269,\n 47.927006\n ],\n [\n 130.961486,\n 47.827882\n ],\n [\n 130.966413,\n 47.732996\n ],\n [\n 131.029855,\n 47.694752\n ],\n [\n 131.115471,\n 47.689919\n ],\n [\n 131.273767,\n 47.739032\n ],\n [\n 131.456085,\n 47.747079\n ],\n [\n 131.543548,\n 47.735813\n ],\n [\n 131.59036,\n 47.660912\n ],\n [\n 131.695685,\n 47.709248\n ],\n [\n 131.825649,\n 47.677432\n ],\n [\n 131.970394,\n 47.671388\n ],\n [\n 132.000575,\n 47.712066\n ],\n [\n 132.086191,\n 47.703208\n ],\n [\n 132.272205,\n 47.718507\n ],\n [\n 132.371987,\n 47.76518\n ],\n [\n 132.469305,\n 47.726154\n ],\n [\n 132.570319,\n 47.720922\n ],\n [\n 132.599268,\n 47.792521\n ],\n [\n 132.687348,\n 47.885293\n ],\n [\n 132.661478,\n 47.944643\n ],\n [\n 132.723072,\n 47.963076\n ],\n [\n 132.819159,\n 47.937028\n ],\n [\n 132.883216,\n 48.002325\n ],\n [\n 132.992238,\n 48.035142\n ],\n [\n 133.041513,\n 48.102313\n ],\n [\n 133.15423,\n 48.137063\n ],\n [\n 133.302055,\n 48.103112\n ],\n [\n 133.407997,\n 48.124684\n ],\n [\n 133.536728,\n 48.117494\n ],\n [\n 133.59709,\n 48.194928\n ],\n [\n 133.693177,\n 48.186951\n ],\n [\n 133.740604,\n 48.25472\n ],\n [\n 134.0689,\n 48.338311\n ],\n [\n 134.131109,\n 48.335527\n ],\n [\n 134.20379,\n 48.38244\n ],\n [\n 134.350384,\n 48.378466\n ],\n [\n 134.501905,\n 48.418986\n ],\n [\n 134.696542,\n 48.407072\n ],\n [\n 134.820961,\n 48.376081\n ],\n [\n 134.927519,\n 48.451537\n ],\n [\n 135.09567,\n 48.437646\n ],\n [\n 135.082736,\n 48.396346\n ],\n [\n 134.864077,\n 48.332345\n ],\n [\n 134.679295,\n 48.256314\n ],\n [\n 134.67252,\n 48.170593\n ],\n [\n 134.632484,\n 48.099516\n ],\n [\n 134.551796,\n 48.032742\n ],\n [\n 134.607846,\n 47.909362\n ],\n [\n 134.660201,\n 47.900538\n ],\n [\n 134.678679,\n 47.819446\n ],\n [\n 134.772918,\n 47.763572\n ],\n [\n 134.779694,\n 47.716091\n ],\n [\n 134.684223,\n 47.631889\n ],\n [\n 134.685455,\n 47.603253\n ],\n [\n 134.576434,\n 47.519273\n ],\n [\n 134.568426,\n 47.478445\n ],\n [\n 134.493898,\n 47.446894\n ],\n [\n 134.339297,\n 47.43961\n ],\n [\n 134.177305,\n 47.32658\n ],\n [\n 134.156979,\n 47.248656\n ],\n [\n 134.230276,\n 47.182411\n ],\n [\n 134.222268,\n 47.105496\n ],\n [\n 134.142812,\n 47.093277\n ],\n [\n 134.042414,\n 46.886761\n ],\n [\n 134.011001,\n 46.637971\n ],\n [\n 133.919842,\n 46.596052\n ],\n [\n 133.852089,\n 46.449903\n ],\n [\n 133.950023,\n 46.394634\n ],\n [\n 133.876726,\n 46.362438\n ],\n [\n 133.922922,\n 46.330635\n ],\n [\n 133.904444,\n 46.25084\n ],\n [\n 133.83977,\n 46.202825\n ],\n [\n 133.706111,\n 46.163056\n ],\n [\n 133.745531,\n 46.075547\n ],\n [\n 133.676546,\n 45.942982\n ],\n [\n 133.616184,\n 45.943398\n ],\n [\n 133.576148,\n 45.870957\n ],\n [\n 133.51209,\n 45.886785\n ],\n [\n 133.470822,\n 45.838035\n ],\n [\n 133.484373,\n 45.738737\n ],\n [\n 133.445569,\n 45.70532\n ],\n [\n 133.491764,\n 45.672301\n ],\n [\n 133.371656,\n 45.576895\n ],\n [\n 133.21028,\n 45.516975\n ],\n [\n 133.141295,\n 45.427605\n ],\n [\n 133.095715,\n 45.246753\n ],\n [\n 133.138215,\n 45.178469\n ],\n [\n 133.103107,\n 45.107147\n ],\n [\n 132.945426,\n 45.020512\n ],\n [\n 132.867202,\n 45.061944\n ],\n [\n 132.394161,\n 45.163706\n ],\n [\n 132.025829,\n 45.250545\n ],\n [\n 131.93159,\n 45.288442\n ],\n [\n 131.917423,\n 45.339354\n ],\n [\n 131.82996,\n 45.31159\n ],\n [\n 131.79362,\n 45.211778\n ],\n [\n 131.721555,\n 45.234536\n ],\n [\n 131.650722,\n 45.159909\n ],\n [\n 131.695685,\n 45.132056\n ],\n [\n 131.632244,\n 45.074621\n ],\n [\n 131.484418,\n 44.995553\n ],\n [\n 131.464708,\n 44.963388\n ],\n [\n 131.355687,\n 44.98963\n ],\n [\n 131.274999,\n 44.919766\n ],\n [\n 131.16105,\n 44.948145\n ],\n [\n 131.090217,\n 44.924426\n ],\n [\n 131.07913,\n 44.881623\n ],\n [\n 130.967029,\n 44.854059\n ],\n [\n 131.016304,\n 44.789551\n ],\n [\n 131.064348,\n 44.787003\n ],\n [\n 131.111775,\n 44.71009\n ],\n [\n 131.310723,\n 44.046392\n ],\n [\n 131.263912,\n 44.030047\n ],\n [\n 131.267608,\n 43.938778\n ],\n [\n 131.211557,\n 43.826221\n ],\n [\n 131.244818,\n 43.604369\n ],\n [\n 131.20047,\n 43.531971\n ],\n [\n 131.304564,\n 43.502033\n ],\n [\n 131.294093,\n 43.469909\n ],\n [\n 131.134565,\n 43.428643\n ],\n [\n 131.134565,\n 43.428643\n ],\n [\n 131.026775,\n 43.508542\n ],\n [\n 130.907283,\n 43.434291\n ],\n [\n 130.841378,\n 43.454274\n ],\n [\n 130.823515,\n 43.502901\n ],\n [\n 130.488444,\n 43.655905\n ],\n [\n 130.4133,\n 43.652009\n ],\n [\n 130.423771,\n 43.742853\n ],\n [\n 130.380039,\n 43.783904\n ],\n [\n 130.383119,\n 43.906025\n ],\n [\n 130.338155,\n 43.949979\n ],\n [\n 130.338155,\n 43.949979\n ],\n [\n 130.353554,\n 44.050262\n ],\n [\n 130.260547,\n 43.948256\n ],\n [\n 130.189098,\n 43.940501\n ],\n [\n 130.079461,\n 43.835285\n ],\n [\n 130.079461,\n 43.835285\n ],\n [\n 130.027106,\n 43.851684\n ],\n [\n 130.017251,\n 43.962039\n ],\n [\n 129.98091,\n 44.014128\n ],\n [\n 129.880512,\n 44.000357\n ],\n [\n 129.880512,\n 44.000357\n ],\n [\n 129.869425,\n 44.005521\n ],\n [\n 129.869425,\n 44.005521\n ],\n [\n 129.784426,\n 43.964623\n ],\n [\n 129.742542,\n 43.875841\n ],\n [\n 129.467833,\n 43.874548\n ],\n [\n 129.406855,\n 43.819314\n ],\n [\n 129.211602,\n 43.784336\n ],\n [\n 129.230696,\n 43.59527\n ],\n [\n 129.014501,\n 43.523295\n ],\n [\n 128.949212,\n 43.55409\n ],\n [\n 128.877763,\n 43.540213\n ],\n [\n 128.719467,\n 43.816724\n ],\n [\n 128.760734,\n 43.857724\n ],\n [\n 128.723778,\n 43.894816\n ],\n [\n 128.636315,\n 43.891366\n ],\n [\n 128.644938,\n 43.936193\n ],\n [\n 128.584576,\n 43.990887\n ],\n [\n 128.574721,\n 44.047682\n ],\n [\n 128.450301,\n 44.203157\n ],\n [\n 128.481714,\n 44.375332\n ],\n [\n 128.46262,\n 44.433894\n ],\n [\n 128.373309,\n 44.51416\n ],\n [\n 128.211317,\n 44.431757\n ],\n [\n 128.190375,\n 44.367206\n ],\n [\n 128.049941,\n 44.349239\n ],\n [\n 128.101679,\n 44.290593\n ],\n [\n 128.089977,\n 44.132342\n ],\n [\n 128.059796,\n 44.110007\n ],\n [\n 127.862079,\n 44.063162\n ],\n [\n 127.729036,\n 44.098836\n ],\n [\n 127.724109,\n 44.196723\n ],\n [\n 127.681609,\n 44.167116\n ],\n [\n 127.591066,\n 44.227601\n ],\n [\n 127.623095,\n 44.277743\n ],\n [\n 127.483892,\n 44.401842\n ],\n [\n 127.483892,\n 44.401842\n ],\n [\n 127.50853,\n 44.437312\n ],\n [\n 127.463566,\n 44.484713\n ],\n [\n 127.536247,\n 44.522266\n ],\n [\n 127.557189,\n 44.575566\n ],\n [\n 127.392733,\n 44.632223\n ],\n [\n 127.182082,\n 44.644144\n ],\n [\n 127.094003,\n 44.615189\n ],\n [\n 127.049039,\n 44.567041\n ],\n [\n 127.037336,\n 44.72157\n ],\n [\n 126.984366,\n 44.823936\n ],\n [\n 127.021938,\n 44.899002\n ],\n [\n 127.085995,\n 44.944757\n ],\n [\n 126.968351,\n 45.074621\n ],\n [\n 126.96404,\n 45.132056\n ],\n [\n 126.831613,\n 45.146406\n ],\n [\n 126.567375,\n 45.252651\n ],\n [\n 126.428172,\n 45.2358\n ],\n [\n 126.321615,\n 45.178891\n ],\n [\n 126.166398,\n 45.133323\n ],\n [\n 125.915095,\n 45.196602\n ],\n [\n 125.760494,\n 45.291389\n ],\n [\n 125.697052,\n 45.349447\n ],\n [\n 125.716146,\n 45.421725\n ],\n [\n 125.687813,\n 45.51404\n ],\n [\n 125.628067,\n 45.522006\n ],\n [\n 125.497488,\n 45.469161\n ],\n [\n 125.424807,\n 45.485523\n ],\n [\n 125.398322,\n 45.416686\n ],\n [\n 125.347815,\n 45.395262\n ],\n [\n 125.248649,\n 45.417526\n ],\n [\n 125.06941,\n 45.384757\n ],\n [\n 125.025678,\n 45.493492\n ],\n [\n 124.961005,\n 45.49517\n ],\n [\n 124.923433,\n 45.541286\n ],\n [\n 124.886476,\n 45.442719\n ],\n [\n 124.625318,\n 45.437262\n ],\n [\n 124.544014,\n 45.412066\n ],\n [\n 124.480572,\n 45.456151\n ],\n [\n 124.398652,\n 45.44062\n ],\n [\n 124.354305,\n 45.546734\n ],\n [\n 124.287783,\n 45.539191\n ],\n [\n 124.273001,\n 45.584014\n ],\n [\n 124.129487,\n 45.637589\n ],\n [\n 124.13811,\n 45.68735\n ],\n [\n 124.009379,\n 45.78215\n ],\n [\n 124.064813,\n 45.797586\n ],\n [\n 124.061118,\n 45.886369\n ],\n [\n 123.996444,\n 45.907189\n ],\n [\n 123.970574,\n 45.971267\n ],\n [\n 124.040176,\n 46.019484\n ],\n [\n 123.99398,\n 46.101275\n ],\n [\n 123.982893,\n 46.22601\n ],\n [\n 123.896046,\n 46.303774\n ],\n [\n 123.779633,\n 46.264078\n ],\n [\n 123.610866,\n 46.252909\n ],\n [\n 123.565902,\n 46.22601\n ],\n [\n 123.498765,\n 46.259528\n ],\n [\n 123.373113,\n 46.223112\n ],\n [\n 123.319527,\n 46.253736\n ]\n ]\n ],\n [\n [\n [\n 124.43992,\n 50.388713\n ],\n [\n 124.36416,\n 50.360857\n ],\n [\n 124.368471,\n 50.258068\n ],\n [\n 124.32474,\n 50.178436\n ],\n [\n 124.278544,\n 50.231284\n ],\n [\n 124.189233,\n 50.216737\n ],\n [\n 124.103001,\n 50.238555\n ],\n [\n 124.061733,\n 50.199122\n ],\n [\n 124.007531,\n 50.219417\n ],\n [\n 123.953944,\n 50.186865\n ],\n [\n 123.878799,\n 50.208696\n ],\n [\n 123.870792,\n 50.270307\n ],\n [\n 123.777785,\n 50.344441\n ],\n [\n 123.800575,\n 50.455806\n ],\n [\n 123.920067,\n 50.37307\n ],\n [\n 124.005067,\n 50.434469\n ],\n [\n 123.983509,\n 50.510249\n ],\n [\n 124.076516,\n 50.564249\n ],\n [\n 124.289015,\n 50.553226\n ],\n [\n 124.322892,\n 50.532693\n ],\n [\n 124.43992,\n 50.539919\n ],\n [\n 124.43992,\n 50.388713\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 310000,\n \"name\": \"上海市\",\n \"center\": [\n 121.472644,\n 31.231706\n ],\n \"centroid\": [\n 121.438732,\n 31.072508\n ],\n \"childrenNum\": 16,\n \"level\": \"province\",\n \"subFeatureIndex\": 8,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 121.970004,\n 30.789217\n ],\n [\n 121.943518,\n 30.77688\n ],\n [\n 121.904714,\n 30.814399\n ],\n [\n 121.601056,\n 30.805149\n ],\n [\n 121.426129,\n 30.730089\n ],\n [\n 121.362071,\n 30.679673\n ],\n [\n 121.274608,\n 30.677615\n ],\n [\n 121.217942,\n 30.785105\n ],\n [\n 121.123087,\n 30.778936\n ],\n [\n 121.097218,\n 30.85704\n ],\n [\n 120.989428,\n 30.833924\n ],\n [\n 120.991892,\n 31.00793\n ],\n [\n 120.901349,\n 31.017673\n ],\n [\n 120.881023,\n 31.134513\n ],\n [\n 121.076892,\n 31.158581\n ],\n [\n 121.063341,\n 31.268088\n ],\n [\n 121.150188,\n 31.275247\n ],\n [\n 121.106457,\n 31.364697\n ],\n [\n 121.173594,\n 31.448956\n ],\n [\n 121.25613,\n 31.478047\n ],\n [\n 121.25613,\n 31.478047\n ],\n [\n 121.302325,\n 31.498966\n ],\n [\n 121.302325,\n 31.498966\n ],\n [\n 121.343593,\n 31.512229\n ],\n [\n 121.520984,\n 31.394835\n ],\n [\n 121.713773,\n 31.308992\n ],\n [\n 121.946598,\n 31.065861\n ],\n [\n 121.990945,\n 30.968434\n ],\n [\n 121.970004,\n 30.789217\n ]\n ]\n ],\n [\n [\n [\n 121.371926,\n 31.553028\n ],\n [\n 121.145261,\n 31.753699\n ],\n [\n 121.200079,\n 31.835066\n ],\n [\n 121.323267,\n 31.86861\n ],\n [\n 121.43352,\n 31.768452\n ],\n [\n 121.715005,\n 31.673788\n ],\n [\n 121.974931,\n 31.617249\n ],\n [\n 121.995873,\n 31.493354\n ],\n [\n 121.890547,\n 31.428537\n ],\n [\n 121.819098,\n 31.438237\n ],\n [\n 121.547469,\n 31.531101\n ],\n [\n 121.434136,\n 31.59024\n ],\n [\n 121.371926,\n 31.553028\n ]\n ]\n ],\n [\n [\n [\n 121.74149,\n 31.345792\n ],\n [\n 121.509897,\n 31.482639\n ],\n [\n 121.742106,\n 31.407091\n ],\n [\n 121.74149,\n 31.345792\n ]\n ]\n ],\n [\n [\n [\n 121.844352,\n 31.294678\n ],\n [\n 121.792613,\n 31.377468\n ],\n [\n 121.914569,\n 31.343236\n ],\n [\n 121.844352,\n 31.294678\n ]\n ]\n ],\n [\n [\n [\n 121.943518,\n 31.215397\n ],\n [\n 122.008808,\n 31.221026\n ],\n [\n 121.995873,\n 31.160629\n ],\n [\n 121.943518,\n 31.215397\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 320000,\n \"name\": \"江苏省\",\n \"center\": [\n 118.767413,\n 32.041544\n ],\n \"centroid\": [\n 119.48196,\n 32.985864\n ],\n \"childrenNum\": 13,\n \"level\": \"province\",\n \"subFeatureIndex\": 9,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 121.974931,\n 31.617249\n ],\n [\n 121.715005,\n 31.673788\n ],\n [\n 121.43352,\n 31.768452\n ],\n [\n 121.323267,\n 31.86861\n ],\n [\n 121.200079,\n 31.835066\n ],\n [\n 121.145261,\n 31.753699\n ],\n [\n 121.371926,\n 31.553028\n ],\n [\n 121.343593,\n 31.512229\n ],\n [\n 121.302325,\n 31.498966\n ],\n [\n 121.302325,\n 31.498966\n ],\n [\n 121.25613,\n 31.478047\n ],\n [\n 121.25613,\n 31.478047\n ],\n [\n 121.173594,\n 31.448956\n ],\n [\n 121.106457,\n 31.364697\n ],\n [\n 121.150188,\n 31.275247\n ],\n [\n 121.063341,\n 31.268088\n ],\n [\n 121.076892,\n 31.158581\n ],\n [\n 120.881023,\n 31.134513\n ],\n [\n 120.901349,\n 31.017673\n ],\n [\n 120.698089,\n 30.970999\n ],\n [\n 120.713487,\n 30.885286\n ],\n [\n 120.589068,\n 30.854472\n ],\n [\n 120.504684,\n 30.757858\n ],\n [\n 120.423996,\n 30.900689\n ],\n [\n 120.35809,\n 30.88734\n ],\n [\n 120.371025,\n 30.948424\n ],\n [\n 120.226279,\n 30.926356\n ],\n [\n 120.13512,\n 30.941752\n ],\n [\n 120.001461,\n 31.026902\n ],\n [\n 119.919542,\n 31.170868\n ],\n [\n 119.678093,\n 31.168308\n ],\n [\n 119.623891,\n 31.130416\n ],\n [\n 119.460051,\n 31.156533\n ],\n [\n 119.388602,\n 31.194415\n ],\n [\n 119.388602,\n 31.194415\n ],\n [\n 119.379979,\n 31.269622\n ],\n [\n 119.267878,\n 31.250698\n ],\n [\n 119.199508,\n 31.293655\n ],\n [\n 119.075089,\n 31.232282\n ],\n [\n 118.781286,\n 31.239956\n ],\n [\n 118.728931,\n 31.281384\n ],\n [\n 118.745561,\n 31.37287\n ],\n [\n 118.853967,\n 31.39841\n ],\n [\n 118.876756,\n 31.532631\n ],\n [\n 118.873061,\n 31.53569\n ],\n [\n 118.858278,\n 31.624382\n ],\n [\n 118.804691,\n 31.618268\n ],\n [\n 118.77451,\n 31.682444\n ],\n [\n 118.736938,\n 31.634061\n ],\n [\n 118.643931,\n 31.65138\n ],\n [\n 118.697518,\n 31.709935\n ],\n [\n 118.638388,\n 31.759295\n ],\n [\n 118.552772,\n 31.729275\n ],\n [\n 118.481939,\n 31.778117\n ],\n [\n 118.504729,\n 31.841674\n ],\n [\n 118.363679,\n 31.930581\n ],\n [\n 118.400019,\n 32.077724\n ],\n [\n 118.499801,\n 32.1203\n ],\n [\n 118.522591,\n 32.188178\n ],\n [\n 118.642083,\n 32.208937\n ],\n [\n 118.69567,\n 32.31721\n ],\n [\n 118.69259,\n 32.463224\n ],\n [\n 118.592192,\n 32.481396\n ],\n [\n 118.563859,\n 32.56363\n ],\n [\n 118.719076,\n 32.614042\n ],\n [\n 118.719076,\n 32.614042\n ],\n [\n 118.92172,\n 32.557074\n ],\n [\n 118.922336,\n 32.557074\n ],\n [\n 118.92172,\n 32.557074\n ],\n [\n 118.922336,\n 32.557074\n ],\n [\n 118.978386,\n 32.504106\n ],\n [\n 119.041212,\n 32.515207\n ],\n [\n 119.084944,\n 32.452622\n ],\n [\n 119.22045,\n 32.57674\n ],\n [\n 119.184726,\n 32.825465\n ],\n [\n 119.104038,\n 32.82647\n ],\n [\n 118.995017,\n 32.958604\n ],\n [\n 118.849039,\n 32.956596\n ],\n [\n 118.811467,\n 32.854622\n ],\n [\n 118.74125,\n 32.850601\n ],\n [\n 118.756648,\n 32.737433\n ],\n [\n 118.707373,\n 32.720319\n ],\n [\n 118.375382,\n 32.718809\n ],\n [\n 118.250346,\n 32.84859\n ],\n [\n 118.2331,\n 32.914414\n ],\n [\n 118.293462,\n 32.947056\n ],\n [\n 118.244803,\n 32.998256\n ],\n [\n 118.221397,\n 33.182228\n ],\n [\n 118.038463,\n 33.134642\n ],\n [\n 117.939297,\n 33.262813\n ],\n [\n 117.971941,\n 33.277821\n ],\n [\n 118.050782,\n 33.492148\n ],\n [\n 118.108064,\n 33.475181\n ],\n [\n 118.112376,\n 33.617302\n ],\n [\n 118.16781,\n 33.66313\n ],\n [\n 118.116071,\n 33.767645\n ],\n [\n 117.901724,\n 33.719883\n ],\n [\n 117.805638,\n 33.736304\n ],\n [\n 117.752667,\n 33.711422\n ],\n [\n 117.758826,\n 33.885445\n ],\n [\n 117.715095,\n 33.879485\n ],\n [\n 117.629479,\n 34.028872\n ],\n [\n 117.575892,\n 33.982744\n ],\n [\n 117.514914,\n 34.061097\n ],\n [\n 117.410205,\n 34.026888\n ],\n [\n 117.352922,\n 34.089842\n ],\n [\n 117.192778,\n 34.068532\n ],\n [\n 117.025243,\n 34.167106\n ],\n [\n 117.04988,\n 34.242321\n ],\n [\n 116.971656,\n 34.279409\n ],\n [\n 116.969192,\n 34.387613\n ],\n [\n 116.828142,\n 34.389094\n ],\n [\n 116.774555,\n 34.452764\n ],\n [\n 116.574991,\n 34.488773\n ],\n [\n 116.595933,\n 34.510469\n ],\n [\n 116.491839,\n 34.57109\n ],\n [\n 116.429629,\n 34.652834\n ],\n [\n 116.374195,\n 34.640036\n ],\n [\n 116.408071,\n 34.85095\n ],\n [\n 116.445028,\n 34.89562\n ],\n [\n 116.677853,\n 34.939285\n ],\n [\n 116.821983,\n 34.929475\n ],\n [\n 116.966728,\n 34.875497\n ],\n [\n 117.000605,\n 34.793482\n ],\n [\n 117.088069,\n 34.702039\n ],\n [\n 117.07575,\n 34.637575\n ],\n [\n 117.137344,\n 34.633144\n ],\n [\n 117.175532,\n 34.47003\n ],\n [\n 117.242669,\n 34.445856\n ],\n [\n 117.301184,\n 34.557294\n ],\n [\n 117.301184,\n 34.557294\n ],\n [\n 117.322125,\n 34.566656\n ],\n [\n 117.322125,\n 34.566656\n ],\n [\n 117.32151,\n 34.566656\n ],\n [\n 117.32151,\n 34.566656\n ],\n [\n 117.322125,\n 34.574046\n ],\n [\n 117.322125,\n 34.574046\n ],\n [\n 117.402813,\n 34.569612\n ],\n [\n 117.465023,\n 34.484827\n ],\n [\n 117.592523,\n 34.462631\n ],\n [\n 117.684298,\n 34.547439\n ],\n [\n 117.801942,\n 34.51885\n ],\n [\n 117.793935,\n 34.65185\n ],\n [\n 117.902956,\n 34.644467\n ],\n [\n 117.951615,\n 34.678424\n ],\n [\n 118.084042,\n 34.655788\n ],\n [\n 118.079115,\n 34.569612\n ],\n [\n 118.185056,\n 34.543989\n ],\n [\n 118.132702,\n 34.483348\n ],\n [\n 118.177665,\n 34.453257\n ],\n [\n 118.179513,\n 34.379218\n ],\n [\n 118.290382,\n 34.424637\n ],\n [\n 118.404947,\n 34.427598\n ],\n [\n 118.440671,\n 34.527724\n ],\n [\n 118.424657,\n 34.595228\n ],\n [\n 118.460997,\n 34.65628\n ],\n [\n 118.601431,\n 34.714336\n ],\n [\n 118.690127,\n 34.678424\n ],\n [\n 118.783749,\n 34.723188\n ],\n [\n 118.719076,\n 34.745315\n ],\n [\n 118.772047,\n 34.794464\n ],\n [\n 118.860742,\n 34.94419\n ],\n [\n 118.865053,\n 35.029974\n ],\n [\n 118.928495,\n 35.051039\n ],\n [\n 119.114509,\n 35.054958\n ],\n [\n 119.137915,\n 35.09609\n ],\n [\n 119.286972,\n 35.11518\n ],\n [\n 119.306066,\n 35.076506\n ],\n [\n 119.238929,\n 35.04908\n ],\n [\n 119.202588,\n 34.890222\n ],\n [\n 119.238313,\n 34.799378\n ],\n [\n 119.378747,\n 34.764487\n ],\n [\n 119.459435,\n 34.770876\n ],\n [\n 119.50871,\n 34.729089\n ],\n [\n 119.465594,\n 34.673012\n ],\n [\n 119.582623,\n 34.598676\n ],\n [\n 119.781571,\n 34.515892\n ],\n [\n 119.811752,\n 34.48532\n ],\n [\n 119.962657,\n 34.458684\n ],\n [\n 120.311895,\n 34.307091\n ],\n [\n 120.367329,\n 34.091328\n ],\n [\n 120.583524,\n 33.668608\n ],\n [\n 120.651277,\n 33.575937\n ],\n [\n 120.741205,\n 33.337826\n ],\n [\n 120.821893,\n 33.298327\n ],\n [\n 120.90566,\n 33.030366\n ],\n [\n 120.929682,\n 32.876232\n ],\n [\n 120.974646,\n 32.874724\n ],\n [\n 120.966638,\n 32.770141\n ],\n [\n 120.900733,\n 32.72334\n ],\n [\n 120.916131,\n 32.642261\n ],\n [\n 121.153268,\n 32.529333\n ],\n [\n 121.352216,\n 32.47433\n ],\n [\n 121.425513,\n 32.430909\n ],\n [\n 121.472941,\n 32.138034\n ],\n [\n 121.524063,\n 32.137528\n ],\n [\n 121.759352,\n 32.059471\n ],\n [\n 121.856055,\n 31.95546\n ],\n [\n 121.970004,\n 31.719096\n ],\n [\n 121.974931,\n 31.617249\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 330000,\n \"name\": \"浙江省\",\n \"center\": [\n 120.153576,\n 30.287459\n ],\n \"centroid\": [\n 120.109522,\n 29.181876\n ],\n \"childrenNum\": 11,\n \"level\": \"province\",\n \"subFeatureIndex\": 10,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 120.461568,\n 27.14259\n ],\n [\n 120.401206,\n 27.211253\n ],\n [\n 120.430155,\n 27.258601\n ],\n [\n 120.34146,\n 27.39946\n ],\n [\n 120.26262,\n 27.432921\n ],\n [\n 120.13512,\n 27.420175\n ],\n [\n 120.052584,\n 27.338886\n ],\n [\n 120.007005,\n 27.376084\n ],\n [\n 119.843165,\n 27.300611\n ],\n [\n 119.770484,\n 27.305928\n ],\n [\n 119.685485,\n 27.438762\n ],\n [\n 119.70889,\n 27.514141\n ],\n [\n 119.630666,\n 27.582574\n ],\n [\n 119.644217,\n 27.663684\n ],\n [\n 119.501319,\n 27.649905\n ],\n [\n 119.474833,\n 27.539079\n ],\n [\n 119.376899,\n 27.534835\n ],\n [\n 119.267878,\n 27.421237\n ],\n [\n 119.194581,\n 27.418582\n ],\n [\n 118.983314,\n 27.498751\n ],\n [\n 118.903858,\n 27.462125\n ],\n [\n 118.869365,\n 27.54014\n ],\n [\n 118.913713,\n 27.61651\n ],\n [\n 118.818242,\n 27.916697\n ],\n [\n 118.730163,\n 27.970611\n ],\n [\n 118.719076,\n 28.063576\n ],\n [\n 118.802228,\n 28.117416\n ],\n [\n 118.771431,\n 28.188634\n ],\n [\n 118.802228,\n 28.240303\n ],\n [\n 118.700598,\n 28.310912\n ],\n [\n 118.674728,\n 28.271398\n ],\n [\n 118.587881,\n 28.28299\n ],\n [\n 118.444367,\n 28.25348\n ],\n [\n 118.433896,\n 28.288786\n ],\n [\n 118.486867,\n 28.328821\n ],\n [\n 118.432048,\n 28.402003\n ],\n [\n 118.472084,\n 28.482497\n ],\n [\n 118.426505,\n 28.532447\n ],\n [\n 118.425273,\n 28.537177\n ],\n [\n 118.426505,\n 28.532447\n ],\n [\n 118.425273,\n 28.537177\n ],\n [\n 118.421577,\n 28.540331\n ],\n [\n 118.421577,\n 28.541908\n ],\n [\n 118.423425,\n 28.587626\n ],\n [\n 118.423425,\n 28.587626\n ],\n [\n 118.431432,\n 28.679528\n ],\n [\n 118.379077,\n 28.785509\n ],\n [\n 118.379077,\n 28.785509\n ],\n [\n 118.306396,\n 28.823782\n ],\n [\n 118.270056,\n 28.918619\n ],\n [\n 118.111144,\n 28.997671\n ],\n [\n 118.111144,\n 28.997671\n ],\n [\n 118.037847,\n 29.097054\n ],\n [\n 118.027992,\n 29.168132\n ],\n [\n 118.077883,\n 29.290836\n ],\n [\n 118.136397,\n 29.284052\n ],\n [\n 118.20723,\n 29.346135\n ],\n [\n 118.193064,\n 29.395149\n ],\n [\n 118.316252,\n 29.422774\n ],\n [\n 118.310708,\n 29.49623\n ],\n [\n 118.496106,\n 29.519662\n ],\n [\n 118.500417,\n 29.575877\n ],\n [\n 118.573714,\n 29.638302\n ],\n [\n 118.644547,\n 29.641942\n ],\n [\n 118.744945,\n 29.738621\n ],\n [\n 118.755416,\n 29.845586\n ],\n [\n 118.894619,\n 29.93792\n ],\n [\n 118.902626,\n 30.029133\n ],\n [\n 118.847807,\n 30.163208\n ],\n [\n 118.929727,\n 30.202515\n ],\n [\n 118.880452,\n 30.31518\n ],\n [\n 118.954365,\n 30.360106\n ],\n [\n 119.06277,\n 30.304849\n ],\n [\n 119.201356,\n 30.290901\n ],\n [\n 119.246936,\n 30.341002\n ],\n [\n 119.36766,\n 30.384885\n ],\n [\n 119.326392,\n 30.532906\n ],\n [\n 119.237081,\n 30.54682\n ],\n [\n 119.238929,\n 30.60915\n ],\n [\n 119.312225,\n 30.620993\n ],\n [\n 119.386754,\n 30.685333\n ],\n [\n 119.416935,\n 30.642101\n ],\n [\n 119.482841,\n 30.70437\n ],\n [\n 119.479761,\n 30.772253\n ],\n [\n 119.575847,\n 30.829814\n ],\n [\n 119.585702,\n 30.976642\n ],\n [\n 119.633746,\n 31.019724\n ],\n [\n 119.623891,\n 31.130416\n ],\n [\n 119.678093,\n 31.168308\n ],\n [\n 119.919542,\n 31.170868\n ],\n [\n 120.001461,\n 31.026902\n ],\n [\n 120.13512,\n 30.941752\n ],\n [\n 120.226279,\n 30.926356\n ],\n [\n 120.371025,\n 30.948424\n ],\n [\n 120.35809,\n 30.88734\n ],\n [\n 120.423996,\n 30.900689\n ],\n [\n 120.504684,\n 30.757858\n ],\n [\n 120.589068,\n 30.854472\n ],\n [\n 120.713487,\n 30.885286\n ],\n [\n 120.698089,\n 30.970999\n ],\n [\n 120.901349,\n 31.017673\n ],\n [\n 120.991892,\n 31.00793\n ],\n [\n 120.989428,\n 30.833924\n ],\n [\n 121.097218,\n 30.85704\n ],\n [\n 121.123087,\n 30.778936\n ],\n [\n 121.217942,\n 30.785105\n ],\n [\n 121.274608,\n 30.677615\n ],\n [\n 121.058413,\n 30.563823\n ],\n [\n 121.225333,\n 30.404496\n ],\n [\n 121.328195,\n 30.397271\n ],\n [\n 121.497578,\n 30.258864\n ],\n [\n 121.632469,\n 30.072119\n ],\n [\n 121.721164,\n 29.992865\n ],\n [\n 121.78399,\n 29.993383\n ],\n [\n 121.919497,\n 29.920808\n ],\n [\n 121.968156,\n 29.956584\n ],\n [\n 122.00696,\n 29.891764\n ],\n [\n 122.140003,\n 29.901619\n ],\n [\n 122.10243,\n 29.859597\n ],\n [\n 121.997721,\n 29.759919\n ],\n [\n 121.937359,\n 29.748491\n ],\n [\n 121.833265,\n 29.653382\n ],\n [\n 121.966308,\n 29.635702\n ],\n [\n 122.000185,\n 29.582642\n ],\n [\n 121.968772,\n 29.515497\n ],\n [\n 121.993409,\n 29.451954\n ],\n [\n 121.937975,\n 29.384201\n ],\n [\n 121.986634,\n 29.15507\n ],\n [\n 121.966308,\n 29.053128\n ],\n [\n 121.884388,\n 29.105419\n ],\n [\n 121.780294,\n 29.109601\n ],\n [\n 121.767975,\n 29.166565\n ],\n [\n 121.660186,\n 29.118487\n ],\n [\n 121.774751,\n 28.864138\n ],\n [\n 121.668193,\n 28.873046\n ],\n [\n 121.704534,\n 28.816443\n ],\n [\n 121.689135,\n 28.719415\n ],\n [\n 121.540694,\n 28.655379\n ],\n [\n 121.634317,\n 28.56293\n ],\n [\n 121.687287,\n 28.40095\n ],\n [\n 121.627541,\n 28.251899\n ],\n [\n 121.499426,\n 28.306171\n ],\n [\n 121.373774,\n 28.133246\n ],\n [\n 121.288159,\n 28.144854\n ],\n [\n 121.261057,\n 28.034533\n ],\n [\n 121.140949,\n 28.031364\n ],\n [\n 121.108304,\n 28.13905\n ],\n [\n 121.059029,\n 28.096305\n ],\n [\n 120.991892,\n 27.95\n ],\n [\n 121.05595,\n 27.900306\n ],\n [\n 121.162507,\n 27.90718\n ],\n [\n 121.152652,\n 27.810376\n ],\n [\n 121.153268,\n 27.809847\n ],\n [\n 121.149572,\n 27.801908\n ],\n [\n 121.149572,\n 27.801379\n ],\n [\n 121.149572,\n 27.80085\n ],\n [\n 121.13479,\n 27.787088\n ],\n [\n 121.134174,\n 27.787088\n ],\n [\n 121.152036,\n 27.815139\n ],\n [\n 121.027616,\n 27.832601\n ],\n [\n 120.942001,\n 27.896605\n ],\n [\n 120.797871,\n 27.779677\n ],\n [\n 120.634647,\n 27.577271\n ],\n [\n 120.703016,\n 27.478581\n ],\n [\n 120.673451,\n 27.369708\n ],\n [\n 120.572437,\n 27.313903\n ],\n [\n 120.544104,\n 27.154303\n ],\n [\n 120.461568,\n 27.14259\n ]\n ]\n ],\n [\n [\n [\n 122.301379,\n 29.942068\n ],\n [\n 122.163408,\n 29.988201\n ],\n [\n 122.038989,\n 29.989756\n ],\n [\n 121.991561,\n 30.075743\n ],\n [\n 121.990945,\n 30.076261\n ],\n [\n 121.952757,\n 30.183898\n ],\n [\n 122.152938,\n 30.113015\n ],\n [\n 122.293988,\n 30.100075\n ],\n [\n 122.347574,\n 30.014109\n ],\n [\n 122.301379,\n 29.942068\n ]\n ]\n ],\n [\n [\n [\n 122.100583,\n 30.304333\n ],\n [\n 122.228082,\n 30.329641\n ],\n [\n 122.22993,\n 30.232503\n ],\n [\n 122.058083,\n 30.291934\n ],\n [\n 122.100583,\n 30.304333\n ]\n ]\n ],\n [\n [\n [\n 122.317393,\n 30.249561\n ],\n [\n 122.40732,\n 30.272817\n ],\n [\n 122.397465,\n 30.225266\n ],\n [\n 122.317393,\n 30.249561\n ]\n ]\n ],\n [\n [\n [\n 122.435038,\n 29.906287\n ],\n [\n 122.391922,\n 29.831573\n ],\n [\n 122.327248,\n 29.922883\n ],\n [\n 122.411632,\n 29.951918\n ],\n [\n 122.435038,\n 29.906287\n ]\n ]\n ],\n [\n [\n [\n 122.353734,\n 30.464339\n ],\n [\n 122.423335,\n 30.408624\n ],\n [\n 122.281669,\n 30.418944\n ],\n [\n 122.277973,\n 30.471558\n ],\n [\n 122.353734,\n 30.464339\n ]\n ]\n ],\n [\n [\n [\n 122.303843,\n 29.832611\n ],\n [\n 122.310002,\n 29.766671\n ],\n [\n 122.221307,\n 29.832611\n ],\n [\n 122.303843,\n 29.832611\n ]\n ]\n ],\n [\n [\n [\n 122.13138,\n 29.673659\n ],\n [\n 122.047612,\n 29.719396\n ],\n [\n 122.130148,\n 29.79056\n ],\n [\n 122.200981,\n 29.711082\n ],\n [\n 122.192358,\n 29.655462\n ],\n [\n 122.13138,\n 29.673659\n ]\n ]\n ],\n [\n [\n [\n 121.943518,\n 30.77688\n ],\n [\n 121.970004,\n 30.789217\n ],\n [\n 122.011271,\n 30.669381\n ],\n [\n 121.968156,\n 30.68842\n ],\n [\n 121.943518,\n 30.77688\n ]\n ]\n ],\n [\n [\n [\n 121.874533,\n 29.964878\n ],\n [\n 121.835113,\n 29.992865\n ],\n [\n 121.855439,\n 30.085062\n ],\n [\n 121.924424,\n 30.052441\n ],\n [\n 121.933047,\n 29.994938\n ],\n [\n 121.874533,\n 29.964878\n ]\n ]\n ],\n [\n [\n [\n 122.155401,\n 29.97058\n ],\n [\n 122.154169,\n 29.971098\n ],\n [\n 122.152322,\n 29.971098\n ],\n [\n 122.163408,\n 29.988201\n ],\n [\n 122.155401,\n 29.97058\n ]\n ]\n ],\n [\n [\n [\n 121.136638,\n 27.948414\n ],\n [\n 121.041783,\n 27.943657\n ],\n [\n 121.0695,\n 27.984349\n ],\n [\n 121.136638,\n 27.948414\n ]\n ]\n ],\n [\n [\n [\n 121.134174,\n 27.786029\n ],\n [\n 121.134174,\n 27.787088\n ],\n [\n 121.13479,\n 27.787088\n ],\n [\n 121.134174,\n 27.786029\n ]\n ]\n ],\n [\n [\n [\n 122.152322,\n 29.971098\n ],\n [\n 122.154169,\n 29.971098\n ],\n [\n 122.155401,\n 29.97058\n ],\n [\n 122.152322,\n 29.971098\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 340000,\n \"name\": \"安徽省\",\n \"center\": [\n 117.283042,\n 31.86119\n ],\n \"centroid\": [\n 117.226894,\n 31.849585\n ],\n \"childrenNum\": 16,\n \"level\": \"province\",\n \"subFeatureIndex\": 11,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 115.5088,\n 32.468777\n ],\n [\n 115.409018,\n 32.549005\n ],\n [\n 115.304924,\n 32.553039\n ],\n [\n 115.20083,\n 32.591864\n ],\n [\n 115.183584,\n 32.665937\n ],\n [\n 115.197135,\n 32.85613\n ],\n [\n 115.139237,\n 32.897837\n ],\n [\n 114.943368,\n 32.935005\n ],\n [\n 114.883006,\n 32.990227\n ],\n [\n 114.925506,\n 33.016821\n ],\n [\n 114.902716,\n 33.129632\n ],\n [\n 114.966158,\n 33.147167\n ],\n [\n 115.042534,\n 33.08653\n ],\n [\n 115.168186,\n 33.088535\n ],\n [\n 115.301229,\n 33.141657\n ],\n [\n 115.365286,\n 33.335826\n ],\n [\n 115.312931,\n 33.376307\n ],\n [\n 115.345576,\n 33.503125\n ],\n [\n 115.421953,\n 33.556992\n ],\n [\n 115.639995,\n 33.584909\n ],\n [\n 115.563003,\n 33.771624\n ],\n [\n 115.614126,\n 33.775603\n ],\n [\n 115.629524,\n 33.871536\n ],\n [\n 115.546988,\n 33.875014\n ],\n [\n 115.60735,\n 34.030359\n ],\n [\n 115.736082,\n 34.076957\n ],\n [\n 115.877132,\n 34.003083\n ],\n [\n 115.95782,\n 34.007547\n ],\n [\n 116.00032,\n 33.964881\n ],\n [\n 115.987385,\n 33.900842\n ],\n [\n 116.05945,\n 33.861103\n ],\n [\n 116.074232,\n 33.781571\n ],\n [\n 116.155536,\n 33.709929\n ],\n [\n 116.263326,\n 33.729835\n ],\n [\n 116.316297,\n 33.771127\n ],\n [\n 116.437021,\n 33.801461\n ],\n [\n 116.437637,\n 33.846694\n ],\n [\n 116.64336,\n 33.896869\n ],\n [\n 116.648288,\n 33.973317\n ],\n [\n 116.575607,\n 34.069028\n ],\n [\n 116.575607,\n 34.069028\n ],\n [\n 116.530643,\n 34.107183\n ],\n [\n 116.565752,\n 34.173541\n ],\n [\n 116.516477,\n 34.296217\n ],\n [\n 116.409303,\n 34.273971\n ],\n [\n 116.409303,\n 34.273971\n ],\n [\n 116.26271,\n 34.375762\n ],\n [\n 116.213435,\n 34.382181\n ],\n [\n 116.162312,\n 34.459178\n ],\n [\n 116.204196,\n 34.508497\n ],\n [\n 116.196804,\n 34.576017\n ],\n [\n 116.240536,\n 34.552367\n ],\n [\n 116.281188,\n 34.60754\n ],\n [\n 116.374195,\n 34.640036\n ],\n [\n 116.429629,\n 34.652834\n ],\n [\n 116.491839,\n 34.57109\n ],\n [\n 116.595933,\n 34.510469\n ],\n [\n 116.574991,\n 34.488773\n ],\n [\n 116.774555,\n 34.452764\n ],\n [\n 116.828142,\n 34.389094\n ],\n [\n 116.969192,\n 34.387613\n ],\n [\n 116.971656,\n 34.279409\n ],\n [\n 117.04988,\n 34.242321\n ],\n [\n 117.025243,\n 34.167106\n ],\n [\n 117.192778,\n 34.068532\n ],\n [\n 117.352922,\n 34.089842\n ],\n [\n 117.410205,\n 34.026888\n ],\n [\n 117.514914,\n 34.061097\n ],\n [\n 117.575892,\n 33.982744\n ],\n [\n 117.629479,\n 34.028872\n ],\n [\n 117.715095,\n 33.879485\n ],\n [\n 117.758826,\n 33.885445\n ],\n [\n 117.752667,\n 33.711422\n ],\n [\n 117.805638,\n 33.736304\n ],\n [\n 117.901724,\n 33.719883\n ],\n [\n 118.116071,\n 33.767645\n ],\n [\n 118.16781,\n 33.66313\n ],\n [\n 118.112376,\n 33.617302\n ],\n [\n 118.108064,\n 33.475181\n ],\n [\n 118.050782,\n 33.492148\n ],\n [\n 117.971941,\n 33.277821\n ],\n [\n 117.939297,\n 33.262813\n ],\n [\n 118.038463,\n 33.134642\n ],\n [\n 118.221397,\n 33.182228\n ],\n [\n 118.244803,\n 32.998256\n ],\n [\n 118.293462,\n 32.947056\n ],\n [\n 118.2331,\n 32.914414\n ],\n [\n 118.250346,\n 32.84859\n ],\n [\n 118.375382,\n 32.718809\n ],\n [\n 118.707373,\n 32.720319\n ],\n [\n 118.756648,\n 32.737433\n ],\n [\n 118.74125,\n 32.850601\n ],\n [\n 118.811467,\n 32.854622\n ],\n [\n 118.849039,\n 32.956596\n ],\n [\n 118.995017,\n 32.958604\n ],\n [\n 119.104038,\n 32.82647\n ],\n [\n 119.184726,\n 32.825465\n ],\n [\n 119.22045,\n 32.57674\n ],\n [\n 119.084944,\n 32.452622\n ],\n [\n 119.041212,\n 32.515207\n ],\n [\n 118.978386,\n 32.504106\n ],\n [\n 118.922336,\n 32.557074\n ],\n [\n 118.92172,\n 32.557074\n ],\n [\n 118.922336,\n 32.557074\n ],\n [\n 118.92172,\n 32.557074\n ],\n [\n 118.719076,\n 32.614042\n ],\n [\n 118.719076,\n 32.614042\n ],\n [\n 118.563859,\n 32.56363\n ],\n [\n 118.592192,\n 32.481396\n ],\n [\n 118.69259,\n 32.463224\n ],\n [\n 118.69567,\n 32.31721\n ],\n [\n 118.642083,\n 32.208937\n ],\n [\n 118.522591,\n 32.188178\n ],\n [\n 118.499801,\n 32.1203\n ],\n [\n 118.400019,\n 32.077724\n ],\n [\n 118.363679,\n 31.930581\n ],\n [\n 118.504729,\n 31.841674\n ],\n [\n 118.481939,\n 31.778117\n ],\n [\n 118.552772,\n 31.729275\n ],\n [\n 118.638388,\n 31.759295\n ],\n [\n 118.697518,\n 31.709935\n ],\n [\n 118.643931,\n 31.65138\n ],\n [\n 118.736938,\n 31.634061\n ],\n [\n 118.77451,\n 31.682444\n ],\n [\n 118.804691,\n 31.618268\n ],\n [\n 118.858278,\n 31.624382\n ],\n [\n 118.873061,\n 31.53569\n ],\n [\n 118.866285,\n 31.527021\n ],\n [\n 118.870597,\n 31.526001\n ],\n [\n 118.876756,\n 31.532631\n ],\n [\n 118.853967,\n 31.39841\n ],\n [\n 118.745561,\n 31.37287\n ],\n [\n 118.728931,\n 31.281384\n ],\n [\n 118.781286,\n 31.239956\n ],\n [\n 119.075089,\n 31.232282\n ],\n [\n 119.199508,\n 31.293655\n ],\n [\n 119.267878,\n 31.250698\n ],\n [\n 119.379979,\n 31.269622\n ],\n [\n 119.388602,\n 31.194415\n ],\n [\n 119.388602,\n 31.194415\n ],\n [\n 119.460051,\n 31.156533\n ],\n [\n 119.623891,\n 31.130416\n ],\n [\n 119.633746,\n 31.019724\n ],\n [\n 119.585702,\n 30.976642\n ],\n [\n 119.575847,\n 30.829814\n ],\n [\n 119.479761,\n 30.772253\n ],\n [\n 119.482841,\n 30.70437\n ],\n [\n 119.416935,\n 30.642101\n ],\n [\n 119.386754,\n 30.685333\n ],\n [\n 119.312225,\n 30.620993\n ],\n [\n 119.238929,\n 30.60915\n ],\n [\n 119.237081,\n 30.54682\n ],\n [\n 119.326392,\n 30.532906\n ],\n [\n 119.36766,\n 30.384885\n ],\n [\n 119.246936,\n 30.341002\n ],\n [\n 119.201356,\n 30.290901\n ],\n [\n 119.06277,\n 30.304849\n ],\n [\n 118.954365,\n 30.360106\n ],\n [\n 118.880452,\n 30.31518\n ],\n [\n 118.929727,\n 30.202515\n ],\n [\n 118.847807,\n 30.163208\n ],\n [\n 118.902626,\n 30.029133\n ],\n [\n 118.894619,\n 29.93792\n ],\n [\n 118.755416,\n 29.845586\n ],\n [\n 118.744945,\n 29.738621\n ],\n [\n 118.644547,\n 29.641942\n ],\n [\n 118.573714,\n 29.638302\n ],\n [\n 118.500417,\n 29.575877\n ],\n [\n 118.496106,\n 29.519662\n ],\n [\n 118.310708,\n 29.49623\n ],\n [\n 118.316252,\n 29.422774\n ],\n [\n 118.193064,\n 29.395149\n ],\n [\n 118.136397,\n 29.419125\n ],\n [\n 118.134549,\n 29.508728\n ],\n [\n 118.008282,\n 29.578479\n ],\n [\n 117.872775,\n 29.547774\n ],\n [\n 117.807486,\n 29.573796\n ],\n [\n 117.707703,\n 29.548815\n ],\n [\n 117.647957,\n 29.614897\n ],\n [\n 117.545711,\n 29.594089\n ],\n [\n 117.532161,\n 29.651822\n ],\n [\n 117.453936,\n 29.688214\n ],\n [\n 117.455168,\n 29.749011\n ],\n [\n 117.384335,\n 29.84351\n ],\n [\n 117.29256,\n 29.822749\n ],\n [\n 117.246365,\n 29.915104\n ],\n [\n 117.17738,\n 29.921846\n ],\n [\n 117.073286,\n 29.832092\n ],\n [\n 117.136728,\n 29.7755\n ],\n [\n 117.112706,\n 29.712121\n ],\n [\n 116.780715,\n 29.570153\n ],\n [\n 116.651983,\n 29.637262\n ],\n [\n 116.677237,\n 29.66898\n ],\n [\n 116.694483,\n 29.672099\n ],\n [\n 116.694483,\n 29.672099\n ],\n [\n 116.717273,\n 29.690813\n ],\n [\n 116.710498,\n 29.69705\n ],\n [\n 116.709882,\n 29.69757\n ],\n [\n 116.706186,\n 29.69809\n ],\n [\n 116.698795,\n 29.707964\n ],\n [\n 116.684012,\n 29.72823\n ],\n [\n 116.789954,\n 29.795233\n ],\n [\n 116.882961,\n 29.89332\n ],\n [\n 116.900207,\n 29.949326\n ],\n [\n 116.83307,\n 29.957621\n ],\n [\n 116.747454,\n 30.057101\n ],\n [\n 116.666766,\n 30.076779\n ],\n [\n 116.586078,\n 30.046226\n ],\n [\n 116.552201,\n 29.909918\n ],\n [\n 116.473361,\n 29.89747\n ],\n [\n 116.26271,\n 29.782251\n ],\n [\n 116.207891,\n 29.82742\n ],\n [\n 116.13521,\n 29.819634\n ],\n [\n 116.127203,\n 29.899544\n ],\n [\n 116.073616,\n 29.970061\n ],\n [\n 116.091479,\n 30.036385\n ],\n [\n 116.065609,\n 30.204584\n ],\n [\n 115.985537,\n 30.290901\n ],\n [\n 115.903001,\n 30.313631\n ],\n [\n 115.921479,\n 30.416364\n ],\n [\n 115.876516,\n 30.582368\n ],\n [\n 115.819234,\n 30.59782\n ],\n [\n 115.762567,\n 30.685848\n ],\n [\n 115.782893,\n 30.751687\n ],\n [\n 115.851262,\n 30.756829\n ],\n [\n 115.865429,\n 30.864231\n ],\n [\n 115.976298,\n 30.931488\n ],\n [\n 116.071769,\n 30.956633\n ],\n [\n 116.058834,\n 31.012545\n ],\n [\n 115.938726,\n 31.047409\n ],\n [\n 115.869125,\n 31.147828\n ],\n [\n 115.763799,\n 31.118123\n ],\n [\n 115.700973,\n 31.201068\n ],\n [\n 115.646155,\n 31.209768\n ],\n [\n 115.559307,\n 31.160117\n ],\n [\n 115.516191,\n 31.263485\n ],\n [\n 115.457677,\n 31.281384\n ],\n [\n 115.442279,\n 31.346303\n ],\n [\n 115.372062,\n 31.349368\n ],\n [\n 115.373909,\n 31.405559\n ],\n [\n 115.371446,\n 31.495905\n ],\n [\n 115.496481,\n 31.674297\n ],\n [\n 115.660937,\n 31.760822\n ],\n [\n 115.767495,\n 31.787272\n ],\n [\n 115.816154,\n 31.762348\n ],\n [\n 115.909777,\n 31.791849\n ],\n [\n 115.893146,\n 31.833033\n ],\n [\n 115.931334,\n 31.994541\n ],\n [\n 115.941805,\n 32.166402\n ],\n [\n 115.912856,\n 32.227666\n ],\n [\n 115.899306,\n 32.391005\n ],\n [\n 115.845719,\n 32.501583\n ],\n [\n 115.789052,\n 32.468777\n ],\n [\n 115.706517,\n 32.494014\n ],\n [\n 115.667712,\n 32.409696\n ],\n [\n 115.567314,\n 32.421819\n ],\n [\n 115.509416,\n 32.466758\n ],\n [\n 115.510648,\n 32.467768\n ],\n [\n 115.510648,\n 32.468272\n ],\n [\n 115.510648,\n 32.468777\n ],\n [\n 115.5088,\n 32.468777\n ]\n ]\n ],\n [\n [\n [\n 116.717273,\n 29.690813\n ],\n [\n 116.694483,\n 29.672099\n ],\n [\n 116.694483,\n 29.672099\n ],\n [\n 116.677237,\n 29.66898\n ],\n [\n 116.684012,\n 29.72823\n ],\n [\n 116.698795,\n 29.707964\n ],\n [\n 116.706186,\n 29.69809\n ],\n [\n 116.709882,\n 29.69757\n ],\n [\n 116.710498,\n 29.69705\n ],\n [\n 116.709882,\n 29.69757\n ],\n [\n 116.717273,\n 29.690813\n ]\n ]\n ],\n [\n [\n [\n 118.873061,\n 31.53569\n ],\n [\n 118.876756,\n 31.532631\n ],\n [\n 118.870597,\n 31.526001\n ],\n [\n 118.866285,\n 31.527021\n ],\n [\n 118.873061,\n 31.53569\n ]\n ]\n ],\n [\n [\n [\n 115.510648,\n 32.468777\n ],\n [\n 115.510648,\n 32.468272\n ],\n [\n 115.510648,\n 32.467768\n ],\n [\n 115.509416,\n 32.466758\n ],\n [\n 115.5088,\n 32.468777\n ],\n [\n 115.510648,\n 32.468777\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 350000,\n \"name\": \"福建省\",\n \"center\": [\n 119.306239,\n 26.075302\n ],\n \"centroid\": [\n 118.005928,\n 26.070282\n ],\n \"childrenNum\": 9,\n \"level\": \"province\",\n \"subFeatureIndex\": 12,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 120.461568,\n 27.14259\n ],\n [\n 120.393199,\n 27.081343\n ],\n [\n 120.287257,\n 27.094128\n ],\n [\n 120.29588,\n 27.035519\n ],\n [\n 120.231823,\n 26.907006\n ],\n [\n 120.117258,\n 26.916609\n ],\n [\n 120.047041,\n 26.824809\n ],\n [\n 120.1382,\n 26.79704\n ],\n [\n 120.165917,\n 26.73133\n ],\n [\n 120.110483,\n 26.692848\n ],\n [\n 120.1382,\n 26.637775\n ],\n [\n 119.967585,\n 26.597657\n ],\n [\n 119.896136,\n 26.516306\n ],\n [\n 119.827767,\n 26.524872\n ],\n [\n 119.851788,\n 26.595516\n ],\n [\n 119.949107,\n 26.624404\n ],\n [\n 120.052584,\n 26.786892\n ],\n [\n 119.942947,\n 26.784756\n ],\n [\n 119.86965,\n 26.642588\n ],\n [\n 119.83023,\n 26.69071\n ],\n [\n 119.711354,\n 26.686433\n ],\n [\n 119.665159,\n 26.725986\n ],\n [\n 119.577695,\n 26.622264\n ],\n [\n 119.788346,\n 26.58321\n ],\n [\n 119.876426,\n 26.359867\n ],\n [\n 119.962657,\n 26.373269\n ],\n [\n 119.8986,\n 26.308388\n ],\n [\n 119.841317,\n 26.322333\n ],\n [\n 119.668854,\n 26.256887\n ],\n [\n 119.604181,\n 26.168853\n ],\n [\n 119.668854,\n 26.025924\n ],\n [\n 119.723673,\n 26.011406\n ],\n [\n 119.688564,\n 25.897892\n ],\n [\n 119.632514,\n 25.884436\n ],\n [\n 119.635594,\n 25.746011\n ],\n [\n 119.601101,\n 25.683479\n ],\n [\n 119.472986,\n 25.662448\n ],\n [\n 119.586934,\n 25.592317\n ],\n [\n 119.634362,\n 25.475161\n ],\n [\n 119.716898,\n 25.550758\n ],\n [\n 119.716898,\n 25.551838\n ],\n [\n 119.683637,\n 25.592856\n ],\n [\n 119.785883,\n 25.667841\n ],\n [\n 119.790194,\n 25.614439\n ],\n [\n 119.883817,\n 25.54644\n ],\n [\n 119.812368,\n 25.523225\n ],\n [\n 119.864107,\n 25.479482\n ],\n [\n 119.764325,\n 25.433562\n ],\n [\n 119.773564,\n 25.395732\n ],\n [\n 119.646064,\n 25.460576\n ],\n [\n 119.649144,\n 25.34275\n ],\n [\n 119.549362,\n 25.367082\n ],\n [\n 119.48592,\n 25.364919\n ],\n [\n 119.490232,\n 25.447069\n ],\n [\n 119.438493,\n 25.412487\n ],\n [\n 119.452044,\n 25.490824\n ],\n [\n 119.36458,\n 25.521065\n ],\n [\n 119.354725,\n 25.427077\n ],\n [\n 119.288204,\n 25.410865\n ],\n [\n 119.256175,\n 25.488664\n ],\n [\n 119.14469,\n 25.388165\n ],\n [\n 119.299291,\n 25.32869\n ],\n [\n 119.380595,\n 25.250247\n ],\n [\n 119.293131,\n 25.23347\n ],\n [\n 119.26911,\n 25.15984\n ],\n [\n 119.131755,\n 25.223187\n ],\n [\n 119.165632,\n 25.145217\n ],\n [\n 119.119436,\n 25.012447\n ],\n [\n 119.107118,\n 25.075327\n ],\n [\n 119.035669,\n 25.125717\n ],\n [\n 119.081248,\n 25.218856\n ],\n [\n 118.989473,\n 25.202075\n ],\n [\n 118.996864,\n 25.266481\n ],\n [\n 118.911249,\n 25.241589\n ],\n [\n 118.981466,\n 25.19612\n ],\n [\n 118.975923,\n 25.118133\n ],\n [\n 118.868133,\n 25.082372\n ],\n [\n 118.928495,\n 25.025459\n ],\n [\n 119.02335,\n 25.04877\n ],\n [\n 118.989473,\n 24.973944\n ],\n [\n 119.032589,\n 24.962011\n ],\n [\n 119.032589,\n 24.961468\n ],\n [\n 118.918024,\n 24.924034\n ],\n [\n 118.96114,\n 24.871933\n ],\n [\n 118.86259,\n 24.886589\n ],\n [\n 118.650707,\n 24.808949\n ],\n [\n 118.786213,\n 24.776358\n ],\n [\n 118.703677,\n 24.665485\n ],\n [\n 118.675344,\n 24.57628\n ],\n [\n 118.558316,\n 24.512602\n ],\n [\n 118.557084,\n 24.573016\n ],\n [\n 118.444367,\n 24.614907\n ],\n [\n 118.355056,\n 24.534376\n ],\n [\n 118.242955,\n 24.512602\n ],\n [\n 118.134549,\n 24.575736\n ],\n [\n 118.12531,\n 24.571927\n ],\n [\n 118.048934,\n 24.418385\n ],\n [\n 118.088354,\n 24.409123\n ],\n [\n 118.158571,\n 24.270111\n ],\n [\n 118.001507,\n 24.176805\n ],\n [\n 117.762522,\n 23.88718\n ],\n [\n 117.671979,\n 23.877879\n ],\n [\n 117.612849,\n 23.71364\n ],\n [\n 117.500132,\n 23.703232\n ],\n [\n 117.463791,\n 23.58539\n ],\n [\n 117.387415,\n 23.555228\n ],\n [\n 117.192778,\n 23.561809\n ],\n [\n 117.192778,\n 23.629799\n ],\n [\n 117.053576,\n 23.696657\n ],\n [\n 117.012308,\n 23.855446\n ],\n [\n 116.980279,\n 23.881709\n ],\n [\n 116.981511,\n 23.999282\n ],\n [\n 116.939627,\n 24.033713\n ],\n [\n 116.9347,\n 24.127123\n ],\n [\n 116.998757,\n 24.178988\n ],\n [\n 116.933468,\n 24.21992\n ],\n [\n 116.903903,\n 24.369888\n ],\n [\n 116.860787,\n 24.462507\n ],\n [\n 116.789338,\n 24.50988\n ],\n [\n 116.761005,\n 24.58281\n ],\n [\n 116.815207,\n 24.655154\n ],\n [\n 116.778867,\n 24.680165\n ],\n [\n 116.597165,\n 24.65461\n ],\n [\n 116.525716,\n 24.604572\n ],\n [\n 116.486912,\n 24.71876\n ],\n [\n 116.44626,\n 24.714412\n ],\n [\n 116.376659,\n 24.820353\n ],\n [\n 116.245464,\n 24.793197\n ],\n [\n 116.18079,\n 24.87519\n ],\n [\n 116.068073,\n 24.849675\n ],\n [\n 116.014486,\n 24.905584\n ],\n [\n 115.89253,\n 24.937056\n ],\n [\n 115.873436,\n 25.020038\n ],\n [\n 115.928255,\n 25.050396\n ],\n [\n 115.880212,\n 25.092126\n ],\n [\n 115.855574,\n 25.209654\n ],\n [\n 115.929487,\n 25.234553\n ],\n [\n 116.008327,\n 25.319496\n ],\n [\n 116.005247,\n 25.490284\n ],\n [\n 116.063145,\n 25.563173\n ],\n [\n 116.067457,\n 25.703967\n ],\n [\n 116.18079,\n 25.774571\n ],\n [\n 116.131515,\n 25.82413\n ],\n [\n 116.176478,\n 25.893048\n ],\n [\n 116.258398,\n 25.902736\n ],\n [\n 116.36434,\n 25.960312\n ],\n [\n 116.383434,\n 26.029687\n ],\n [\n 116.489375,\n 26.113529\n ],\n [\n 116.471513,\n 26.175296\n ],\n [\n 116.396985,\n 26.166168\n ],\n [\n 116.412999,\n 26.298197\n ],\n [\n 116.519557,\n 26.410251\n ],\n [\n 116.601476,\n 26.372733\n ],\n [\n 116.610716,\n 26.477216\n ],\n [\n 116.539267,\n 26.559129\n ],\n [\n 116.566368,\n 26.650075\n ],\n [\n 116.516477,\n 26.69071\n ],\n [\n 116.557745,\n 26.774073\n ],\n [\n 116.548506,\n 26.839758\n ],\n [\n 116.679085,\n 26.978479\n ],\n [\n 116.910062,\n 27.034453\n ],\n [\n 117.05296,\n 27.100519\n ],\n [\n 117.043721,\n 27.139928\n ],\n [\n 117.171836,\n 27.290509\n ],\n [\n 117.100387,\n 27.338886\n ],\n [\n 117.133032,\n 27.4223\n ],\n [\n 117.084989,\n 27.564011\n ],\n [\n 117.01662,\n 27.563481\n ],\n [\n 117.040641,\n 27.670043\n ],\n [\n 117.096692,\n 27.626582\n ],\n [\n 117.118865,\n 27.694416\n ],\n [\n 117.204481,\n 27.683819\n ],\n [\n 117.296872,\n 27.764854\n ],\n [\n 117.27901,\n 27.870161\n ],\n [\n 117.341836,\n 27.855879\n ],\n [\n 117.52169,\n 27.982236\n ],\n [\n 117.608537,\n 27.863814\n ],\n [\n 117.740348,\n 27.800321\n ],\n [\n 117.78716,\n 27.896076\n ],\n [\n 117.856145,\n 27.945772\n ],\n [\n 117.999043,\n 27.991218\n ],\n [\n 118.096977,\n 27.96744\n ],\n [\n 118.155491,\n 28.061992\n ],\n [\n 118.356288,\n 28.091555\n ],\n [\n 118.37415,\n 28.188106\n ],\n [\n 118.314404,\n 28.22238\n ],\n [\n 118.433896,\n 28.288786\n ],\n [\n 118.444367,\n 28.25348\n ],\n [\n 118.587881,\n 28.28299\n ],\n [\n 118.674728,\n 28.271398\n ],\n [\n 118.700598,\n 28.310912\n ],\n [\n 118.802228,\n 28.240303\n ],\n [\n 118.771431,\n 28.188634\n ],\n [\n 118.802228,\n 28.117416\n ],\n [\n 118.719076,\n 28.063576\n ],\n [\n 118.730163,\n 27.970611\n ],\n [\n 118.818242,\n 27.916697\n ],\n [\n 118.913713,\n 27.61651\n ],\n [\n 118.869365,\n 27.54014\n ],\n [\n 118.903858,\n 27.462125\n ],\n [\n 118.983314,\n 27.498751\n ],\n [\n 119.194581,\n 27.418582\n ],\n [\n 119.267878,\n 27.421237\n ],\n [\n 119.376899,\n 27.534835\n ],\n [\n 119.474833,\n 27.539079\n ],\n [\n 119.501319,\n 27.649905\n ],\n [\n 119.644217,\n 27.663684\n ],\n [\n 119.630666,\n 27.582574\n ],\n [\n 119.70889,\n 27.514141\n ],\n [\n 119.685485,\n 27.438762\n ],\n [\n 119.770484,\n 27.305928\n ],\n [\n 119.843165,\n 27.300611\n ],\n [\n 120.007005,\n 27.376084\n ],\n [\n 120.052584,\n 27.338886\n ],\n [\n 120.13512,\n 27.420175\n ],\n [\n 120.26262,\n 27.432921\n ],\n [\n 120.34146,\n 27.39946\n ],\n [\n 120.430155,\n 27.258601\n ],\n [\n 120.401206,\n 27.211253\n ],\n [\n 120.461568,\n 27.14259\n ]\n ]\n ],\n [\n [\n [\n 118.412338,\n 24.514235\n ],\n [\n 118.477012,\n 24.437452\n ],\n [\n 118.335962,\n 24.385148\n ],\n [\n 118.316252,\n 24.487557\n ],\n [\n 118.374766,\n 24.458695\n ],\n [\n 118.412338,\n 24.514235\n ]\n ]\n ],\n [\n [\n [\n 119.532116,\n 25.203158\n ],\n [\n 119.549362,\n 25.162007\n ],\n [\n 119.444036,\n 25.202075\n ],\n [\n 119.473601,\n 25.259988\n ],\n [\n 119.532116,\n 25.203158\n ]\n ]\n ],\n [\n [\n [\n 118.079115,\n 24.444533\n ],\n [\n 118.093281,\n 24.540907\n ],\n [\n 118.142557,\n 24.561588\n ],\n [\n 118.20723,\n 24.487012\n ],\n [\n 118.143173,\n 24.421109\n ],\n [\n 118.079115,\n 24.444533\n ]\n ]\n ],\n [\n [\n [\n 119.737224,\n 26.646332\n ],\n [\n 119.668238,\n 26.628683\n ],\n [\n 119.673782,\n 26.681087\n ],\n [\n 119.737224,\n 26.646332\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 360000,\n \"name\": \"江西省\",\n \"center\": [\n 115.892151,\n 28.676493\n ],\n \"centroid\": [\n 115.732937,\n 27.636129\n ],\n \"childrenNum\": 11,\n \"level\": \"province\",\n \"subFeatureIndex\": 13,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 113.94185,\n 29.047374\n ],\n [\n 113.952321,\n 29.092871\n ],\n [\n 114.061959,\n 29.204176\n ],\n [\n 114.252284,\n 29.234985\n ],\n [\n 114.259059,\n 29.344049\n ],\n [\n 114.519602,\n 29.325271\n ],\n [\n 114.660652,\n 29.393585\n ],\n [\n 114.759818,\n 29.363345\n ],\n [\n 114.931049,\n 29.422252\n ],\n [\n 114.860216,\n 29.475917\n ],\n [\n 114.940904,\n 29.494147\n ],\n [\n 115.00065,\n 29.572235\n ],\n [\n 115.154019,\n 29.51029\n ],\n [\n 115.142316,\n 29.651822\n ],\n [\n 115.359127,\n 29.646623\n ],\n [\n 115.471844,\n 29.742777\n ],\n [\n 115.511264,\n 29.839877\n ],\n [\n 115.667712,\n 29.850257\n ],\n [\n 115.837096,\n 29.748491\n ],\n [\n 115.965827,\n 29.724593\n ],\n [\n 116.13521,\n 29.819634\n ],\n [\n 116.207891,\n 29.82742\n ],\n [\n 116.26271,\n 29.782251\n ],\n [\n 116.473361,\n 29.89747\n ],\n [\n 116.552201,\n 29.909918\n ],\n [\n 116.586078,\n 30.046226\n ],\n [\n 116.666766,\n 30.076779\n ],\n [\n 116.747454,\n 30.057101\n ],\n [\n 116.83307,\n 29.957621\n ],\n [\n 116.900207,\n 29.949326\n ],\n [\n 116.882961,\n 29.89332\n ],\n [\n 116.789954,\n 29.795233\n ],\n [\n 116.684012,\n 29.72823\n ],\n [\n 116.677237,\n 29.66898\n ],\n [\n 116.651983,\n 29.637262\n ],\n [\n 116.780715,\n 29.570153\n ],\n [\n 117.112706,\n 29.712121\n ],\n [\n 117.136728,\n 29.7755\n ],\n [\n 117.073286,\n 29.832092\n ],\n [\n 117.17738,\n 29.921846\n ],\n [\n 117.246365,\n 29.915104\n ],\n [\n 117.29256,\n 29.822749\n ],\n [\n 117.384335,\n 29.84351\n ],\n [\n 117.455168,\n 29.749011\n ],\n [\n 117.453936,\n 29.688214\n ],\n [\n 117.532161,\n 29.651822\n ],\n [\n 117.545711,\n 29.594089\n ],\n [\n 117.647957,\n 29.614897\n ],\n [\n 117.707703,\n 29.548815\n ],\n [\n 117.807486,\n 29.573796\n ],\n [\n 117.872775,\n 29.547774\n ],\n [\n 118.008282,\n 29.578479\n ],\n [\n 118.134549,\n 29.508728\n ],\n [\n 118.136397,\n 29.419125\n ],\n [\n 118.193064,\n 29.395149\n ],\n [\n 118.20723,\n 29.346135\n ],\n [\n 118.136397,\n 29.284052\n ],\n [\n 118.077883,\n 29.290836\n ],\n [\n 118.027992,\n 29.168132\n ],\n [\n 118.037847,\n 29.097054\n ],\n [\n 118.111144,\n 28.997671\n ],\n [\n 118.111144,\n 28.997671\n ],\n [\n 118.270056,\n 28.918619\n ],\n [\n 118.306396,\n 28.823782\n ],\n [\n 118.379077,\n 28.785509\n ],\n [\n 118.379077,\n 28.785509\n ],\n [\n 118.431432,\n 28.679528\n ],\n [\n 118.423425,\n 28.587626\n ],\n [\n 118.423425,\n 28.587626\n ],\n [\n 118.421577,\n 28.541908\n ],\n [\n 118.421577,\n 28.540331\n ],\n [\n 118.425273,\n 28.537177\n ],\n [\n 118.426505,\n 28.532447\n ],\n [\n 118.425273,\n 28.537177\n ],\n [\n 118.426505,\n 28.532447\n ],\n [\n 118.472084,\n 28.482497\n ],\n [\n 118.432048,\n 28.402003\n ],\n [\n 118.486867,\n 28.328821\n ],\n [\n 118.433896,\n 28.288786\n ],\n [\n 118.314404,\n 28.22238\n ],\n [\n 118.37415,\n 28.188106\n ],\n [\n 118.356288,\n 28.091555\n ],\n [\n 118.155491,\n 28.061992\n ],\n [\n 118.096977,\n 27.96744\n ],\n [\n 117.999043,\n 27.991218\n ],\n [\n 117.856145,\n 27.945772\n ],\n [\n 117.78716,\n 27.896076\n ],\n [\n 117.740348,\n 27.800321\n ],\n [\n 117.608537,\n 27.863814\n ],\n [\n 117.52169,\n 27.982236\n ],\n [\n 117.341836,\n 27.855879\n ],\n [\n 117.27901,\n 27.870161\n ],\n [\n 117.296872,\n 27.764854\n ],\n [\n 117.204481,\n 27.683819\n ],\n [\n 117.118865,\n 27.694416\n ],\n [\n 117.096692,\n 27.626582\n ],\n [\n 117.040641,\n 27.670043\n ],\n [\n 117.01662,\n 27.563481\n ],\n [\n 117.084989,\n 27.564011\n ],\n [\n 117.133032,\n 27.4223\n ],\n [\n 117.100387,\n 27.338886\n ],\n [\n 117.171836,\n 27.290509\n ],\n [\n 117.043721,\n 27.139928\n ],\n [\n 117.05296,\n 27.100519\n ],\n [\n 116.910062,\n 27.034453\n ],\n [\n 116.679085,\n 26.978479\n ],\n [\n 116.548506,\n 26.839758\n ],\n [\n 116.557745,\n 26.774073\n ],\n [\n 116.516477,\n 26.69071\n ],\n [\n 116.566368,\n 26.650075\n ],\n [\n 116.539267,\n 26.559129\n ],\n [\n 116.610716,\n 26.477216\n ],\n [\n 116.601476,\n 26.372733\n ],\n [\n 116.519557,\n 26.410251\n ],\n [\n 116.412999,\n 26.298197\n ],\n [\n 116.396985,\n 26.166168\n ],\n [\n 116.471513,\n 26.175296\n ],\n [\n 116.489375,\n 26.113529\n ],\n [\n 116.383434,\n 26.029687\n ],\n [\n 116.36434,\n 25.960312\n ],\n [\n 116.258398,\n 25.902736\n ],\n [\n 116.176478,\n 25.893048\n ],\n [\n 116.131515,\n 25.82413\n ],\n [\n 116.18079,\n 25.774571\n ],\n [\n 116.067457,\n 25.703967\n ],\n [\n 116.063145,\n 25.563173\n ],\n [\n 116.005247,\n 25.490284\n ],\n [\n 116.008327,\n 25.319496\n ],\n [\n 115.929487,\n 25.234553\n ],\n [\n 115.855574,\n 25.209654\n ],\n [\n 115.880212,\n 25.092126\n ],\n [\n 115.928255,\n 25.050396\n ],\n [\n 115.873436,\n 25.020038\n ],\n [\n 115.89253,\n 24.937056\n ],\n [\n 115.907313,\n 24.880075\n ],\n [\n 115.822313,\n 24.90884\n ],\n [\n 115.756408,\n 24.749192\n ],\n [\n 115.845103,\n 24.563221\n ],\n [\n 115.688038,\n 24.545261\n ],\n [\n 115.67264,\n 24.604028\n ],\n [\n 115.573474,\n 24.617083\n ],\n [\n 115.556227,\n 24.682883\n ],\n [\n 115.412714,\n 24.792654\n ],\n [\n 115.358511,\n 24.735064\n ],\n [\n 115.308004,\n 24.758429\n ],\n [\n 115.095505,\n 24.674184\n ],\n [\n 115.056701,\n 24.703541\n ],\n [\n 114.909491,\n 24.661679\n ],\n [\n 114.868839,\n 24.562132\n ],\n [\n 114.729637,\n 24.608924\n ],\n [\n 114.704999,\n 24.526211\n ],\n [\n 114.664963,\n 24.583898\n ],\n [\n 114.589819,\n 24.537642\n ],\n [\n 114.534384,\n 24.558867\n ],\n [\n 114.428443,\n 24.486468\n ],\n [\n 114.391486,\n 24.562677\n ],\n [\n 114.308334,\n 24.574104\n ],\n [\n 114.258443,\n 24.641558\n ],\n [\n 114.169132,\n 24.689407\n ],\n [\n 114.27261,\n 24.700279\n ],\n [\n 114.33482,\n 24.747562\n ],\n [\n 114.403189,\n 24.877361\n ],\n [\n 114.395798,\n 24.951161\n ],\n [\n 114.506051,\n 24.999975\n ],\n [\n 114.561485,\n 25.077495\n ],\n [\n 114.640326,\n 25.073702\n ],\n [\n 114.735796,\n 25.121925\n ],\n [\n 114.679746,\n 25.194495\n ],\n [\n 114.743188,\n 25.274597\n ],\n [\n 114.63663,\n 25.324364\n ],\n [\n 114.535616,\n 25.41681\n ],\n [\n 114.381015,\n 25.31571\n ],\n [\n 114.31511,\n 25.338424\n ],\n [\n 114.262755,\n 25.29191\n ],\n [\n 114.13156,\n 25.30922\n ],\n [\n 114.039785,\n 25.250789\n ],\n [\n 114.051488,\n 25.348699\n ],\n [\n 113.94493,\n 25.441667\n ],\n [\n 113.983118,\n 25.599332\n ],\n [\n 113.913517,\n 25.701272\n ],\n [\n 113.971416,\n 25.835979\n ],\n [\n 114.028082,\n 25.893586\n ],\n [\n 114.007756,\n 26.007104\n ],\n [\n 114.044096,\n 26.076452\n ],\n [\n 114.237501,\n 26.152204\n ],\n [\n 114.181451,\n 26.214489\n ],\n [\n 114.088444,\n 26.168316\n ],\n [\n 113.944314,\n 26.16402\n ],\n [\n 114.029314,\n 26.266545\n ],\n [\n 114.030546,\n 26.376485\n ],\n [\n 114.085364,\n 26.4065\n ],\n [\n 114.073046,\n 26.480965\n ],\n [\n 114.106306,\n 26.576254\n ],\n [\n 113.915365,\n 26.613706\n ],\n [\n 113.860546,\n 26.663978\n ],\n [\n 113.834677,\n 26.803983\n ],\n [\n 113.927068,\n 26.949149\n ],\n [\n 113.821126,\n 27.037651\n ],\n [\n 113.779242,\n 27.137265\n ],\n [\n 113.848844,\n 27.225087\n ],\n [\n 113.872865,\n 27.385116\n ],\n [\n 113.616635,\n 27.345264\n ],\n [\n 113.632033,\n 27.405303\n ],\n [\n 113.583374,\n 27.524754\n ],\n [\n 113.607395,\n 27.625522\n ],\n [\n 113.763228,\n 27.799262\n ],\n [\n 113.729967,\n 27.887086\n ],\n [\n 113.752141,\n 27.933614\n ],\n [\n 113.864242,\n 28.004954\n ],\n [\n 113.914133,\n 27.991218\n ],\n [\n 114.047176,\n 28.05724\n ],\n [\n 113.992357,\n 28.161207\n ],\n [\n 114.107538,\n 28.182833\n ],\n [\n 114.25598,\n 28.323554\n ],\n [\n 114.252284,\n 28.395687\n ],\n [\n 114.172212,\n 28.432524\n ],\n [\n 114.218407,\n 28.484601\n ],\n [\n 114.08598,\n 28.558201\n ],\n [\n 114.157429,\n 28.761384\n ],\n [\n 114.152502,\n 28.83479\n ],\n [\n 114.076741,\n 28.834266\n ],\n [\n 114.008988,\n 28.955273\n ],\n [\n 113.966488,\n 28.945326\n ],\n [\n 113.94185,\n 29.047374\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 370000,\n \"name\": \"山东省\",\n \"center\": [\n 117.000923,\n 36.675807\n ],\n \"centroid\": [\n 118.186283,\n 36.374485\n ],\n \"childrenNum\": 17,\n \"level\": \"province\",\n \"subFeatureIndex\": 14,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 121.362071,\n 37.634292\n ],\n [\n 121.4791,\n 37.474914\n ],\n [\n 121.565331,\n 37.440242\n ],\n [\n 121.635548,\n 37.49438\n ],\n [\n 121.66573,\n 37.47349\n ],\n [\n 121.923808,\n 37.473015\n ],\n [\n 122.08888,\n 37.554171\n ],\n [\n 122.166488,\n 37.439292\n ],\n [\n 122.234857,\n 37.469216\n ],\n [\n 122.284133,\n 37.426464\n ],\n [\n 122.41656,\n 37.414585\n ],\n [\n 122.487393,\n 37.434541\n ],\n [\n 122.553914,\n 37.406981\n ],\n [\n 122.670942,\n 37.429315\n ],\n [\n 122.573624,\n 37.296159\n ],\n [\n 122.629059,\n 37.194708\n ],\n [\n 122.581015,\n 37.147508\n ],\n [\n 122.505871,\n 37.149892\n ],\n [\n 122.467067,\n 37.03726\n ],\n [\n 122.575472,\n 37.054452\n ],\n [\n 122.532356,\n 36.901497\n ],\n [\n 122.344495,\n 36.828257\n ],\n [\n 122.174495,\n 36.842623\n ],\n [\n 122.141235,\n 36.93833\n ],\n [\n 122.051923,\n 36.904846\n ],\n [\n 122.008808,\n 36.962238\n ],\n [\n 121.767975,\n 36.874698\n ],\n [\n 121.762432,\n 36.846454\n ],\n [\n 121.627541,\n 36.795683\n ],\n [\n 121.647867,\n 36.723301\n ],\n [\n 121.492035,\n 36.789933\n ],\n [\n 121.454462,\n 36.75255\n ],\n [\n 121.209318,\n 36.671489\n ],\n [\n 121.028848,\n 36.573046\n ],\n [\n 120.847146,\n 36.618682\n ],\n [\n 120.983269,\n 36.546133\n ],\n [\n 120.890878,\n 36.373375\n ],\n [\n 120.828668,\n 36.466779\n ],\n [\n 120.759683,\n 36.462448\n ],\n [\n 120.694393,\n 36.390234\n ],\n [\n 120.7449,\n 36.330969\n ],\n [\n 120.66298,\n 36.331933\n ],\n [\n 120.712255,\n 36.126809\n ],\n [\n 120.478199,\n 36.091522\n ],\n [\n 120.343308,\n 36.04219\n ],\n [\n 120.290337,\n 36.061539\n ],\n [\n 120.362402,\n 36.19637\n ],\n [\n 120.181316,\n 36.204095\n ],\n [\n 120.108635,\n 36.127292\n ],\n [\n 120.241062,\n 36.047995\n ],\n [\n 120.213345,\n 35.998152\n ],\n [\n 120.292801,\n 36.017512\n ],\n [\n 120.262004,\n 35.965712\n ],\n [\n 120.062439,\n 35.870739\n ],\n [\n 120.011317,\n 35.713006\n ],\n [\n 119.926317,\n 35.759631\n ],\n [\n 119.923237,\n 35.635238\n ],\n [\n 119.718129,\n 35.615785\n ],\n [\n 119.665775,\n 35.57005\n ],\n [\n 119.543819,\n 35.347815\n ],\n [\n 119.411392,\n 35.231581\n ],\n [\n 119.373819,\n 35.078464\n ],\n [\n 119.306066,\n 35.076506\n ],\n [\n 119.286972,\n 35.11518\n ],\n [\n 119.137915,\n 35.09609\n ],\n [\n 119.114509,\n 35.054958\n ],\n [\n 118.928495,\n 35.051039\n ],\n [\n 118.865053,\n 35.029974\n ],\n [\n 118.860742,\n 34.94419\n ],\n [\n 118.772047,\n 34.794464\n ],\n [\n 118.719076,\n 34.745315\n ],\n [\n 118.783749,\n 34.723188\n ],\n [\n 118.690127,\n 34.678424\n ],\n [\n 118.601431,\n 34.714336\n ],\n [\n 118.460997,\n 34.65628\n ],\n [\n 118.424657,\n 34.595228\n ],\n [\n 118.440671,\n 34.527724\n ],\n [\n 118.404947,\n 34.427598\n ],\n [\n 118.290382,\n 34.424637\n ],\n [\n 118.179513,\n 34.379218\n ],\n [\n 118.177665,\n 34.453257\n ],\n [\n 118.132702,\n 34.483348\n ],\n [\n 118.185056,\n 34.543989\n ],\n [\n 118.079115,\n 34.569612\n ],\n [\n 118.084042,\n 34.655788\n ],\n [\n 117.951615,\n 34.678424\n ],\n [\n 117.902956,\n 34.644467\n ],\n [\n 117.793935,\n 34.65185\n ],\n [\n 117.801942,\n 34.51885\n ],\n [\n 117.684298,\n 34.547439\n ],\n [\n 117.592523,\n 34.462631\n ],\n [\n 117.465023,\n 34.484827\n ],\n [\n 117.402813,\n 34.569612\n ],\n [\n 117.322125,\n 34.574046\n ],\n [\n 117.322125,\n 34.574046\n ],\n [\n 117.32151,\n 34.566656\n ],\n [\n 117.32151,\n 34.566656\n ],\n [\n 117.322125,\n 34.566656\n ],\n [\n 117.322125,\n 34.566656\n ],\n [\n 117.301184,\n 34.557294\n ],\n [\n 117.301184,\n 34.557294\n ],\n [\n 117.242669,\n 34.445856\n ],\n [\n 117.175532,\n 34.47003\n ],\n [\n 117.137344,\n 34.633144\n ],\n [\n 117.07575,\n 34.637575\n ],\n [\n 117.088069,\n 34.702039\n ],\n [\n 117.000605,\n 34.793482\n ],\n [\n 116.966728,\n 34.875497\n ],\n [\n 116.821983,\n 34.929475\n ],\n [\n 116.677853,\n 34.939285\n ],\n [\n 116.445028,\n 34.89562\n ],\n [\n 116.408071,\n 34.85095\n ],\n [\n 116.374195,\n 34.640036\n ],\n [\n 116.281188,\n 34.60754\n ],\n [\n 116.240536,\n 34.552367\n ],\n [\n 116.196804,\n 34.576017\n ],\n [\n 116.134594,\n 34.559758\n ],\n [\n 116.101334,\n 34.605571\n ],\n [\n 115.83032,\n 34.562714\n ],\n [\n 115.697278,\n 34.594243\n ],\n [\n 115.667096,\n 34.557294\n ],\n [\n 115.515575,\n 34.582421\n ],\n [\n 115.461373,\n 34.637083\n ],\n [\n 115.42688,\n 34.805273\n ],\n [\n 115.317243,\n 34.859297\n ],\n [\n 115.256265,\n 34.845549\n ],\n [\n 115.251953,\n 34.906416\n ],\n [\n 115.189128,\n 34.914757\n ],\n [\n 115.12815,\n 35.004493\n ],\n [\n 115.028983,\n 34.97165\n ],\n [\n 114.923658,\n 34.968709\n ],\n [\n 114.824492,\n 35.012335\n ],\n [\n 114.883006,\n 35.098537\n ],\n [\n 114.841738,\n 35.151389\n ],\n [\n 114.932281,\n 35.197362\n ],\n [\n 114.929817,\n 35.248196\n ],\n [\n 115.02036,\n 35.364406\n ],\n [\n 115.093657,\n 35.41611\n ],\n [\n 115.237171,\n 35.422937\n ],\n [\n 115.357895,\n 35.498475\n ],\n [\n 115.383148,\n 35.569076\n ],\n [\n 115.48601,\n 35.710091\n ],\n [\n 115.693582,\n 35.75429\n ],\n [\n 115.773654,\n 35.854252\n ],\n [\n 115.875284,\n 35.859102\n ],\n [\n 115.911624,\n 35.960385\n ],\n [\n 116.048979,\n 35.970071\n ],\n [\n 116.099486,\n 36.111826\n ],\n [\n 115.989849,\n 36.045576\n ],\n [\n 115.646155,\n 35.920663\n ],\n [\n 115.496481,\n 35.885283\n ],\n [\n 115.498329,\n 35.897401\n ],\n [\n 115.503257,\n 35.91194\n ],\n [\n 115.503257,\n 35.91194\n ],\n [\n 115.487242,\n 35.903702\n ],\n [\n 115.473692,\n 35.896917\n ],\n [\n 115.473692,\n 35.896917\n ],\n [\n 115.467532,\n 35.889646\n ],\n [\n 115.467532,\n 35.889646\n ],\n [\n 115.464452,\n 35.882859\n ],\n [\n 115.464452,\n 35.88092\n ],\n [\n 115.464452,\n 35.882859\n ],\n [\n 115.463837,\n 35.882859\n ],\n [\n 115.464452,\n 35.88092\n ],\n [\n 115.463837,\n 35.88092\n ],\n [\n 115.463837,\n 35.882859\n ],\n [\n 115.463837,\n 35.88092\n ],\n [\n 115.460141,\n 35.86783\n ],\n [\n 115.363438,\n 35.78002\n ],\n [\n 115.335105,\n 35.796522\n ],\n [\n 115.362822,\n 35.972008\n ],\n [\n 115.447822,\n 36.012672\n ],\n [\n 115.483547,\n 36.149036\n ],\n [\n 115.466916,\n 36.259115\n ],\n [\n 115.466916,\n 36.259115\n ],\n [\n 115.366518,\n 36.308793\n ],\n [\n 115.308004,\n 36.461967\n ],\n [\n 115.308004,\n 36.461967\n ],\n [\n 115.283366,\n 36.486505\n ],\n [\n 115.365902,\n 36.622043\n ],\n [\n 115.479851,\n 36.76022\n ],\n [\n 115.683727,\n 36.808139\n ],\n [\n 115.71206,\n 36.883313\n ],\n [\n 115.79706,\n 36.968931\n ],\n [\n 115.776734,\n 36.992829\n ],\n [\n 115.868509,\n 37.076414\n ],\n [\n 115.909777,\n 37.206622\n ],\n [\n 115.969523,\n 37.239497\n ],\n [\n 115.984921,\n 37.326616\n ],\n [\n 116.051443,\n 37.367998\n ],\n [\n 116.169087,\n 37.384164\n ],\n [\n 116.236224,\n 37.361816\n ],\n [\n 116.2855,\n 37.404604\n ],\n [\n 116.226369,\n 37.428365\n ],\n [\n 116.240536,\n 37.489633\n ],\n [\n 116.240536,\n 37.489633\n ],\n [\n 116.27626,\n 37.466841\n ],\n [\n 116.291659,\n 37.557966\n ],\n [\n 116.337238,\n 37.580255\n ],\n [\n 116.379738,\n 37.521909\n ],\n [\n 116.38097,\n 37.522858\n ],\n [\n 116.379738,\n 37.521909\n ],\n [\n 116.38097,\n 37.522858\n ],\n [\n 116.433941,\n 37.47349\n ],\n [\n 116.724664,\n 37.744139\n ],\n [\n 116.788106,\n 37.843429\n ],\n [\n 117.023395,\n 37.832561\n ],\n [\n 117.093612,\n 37.849571\n ],\n [\n 117.267923,\n 37.838704\n ],\n [\n 117.34122,\n 37.863271\n ],\n [\n 117.438538,\n 37.853823\n ],\n [\n 117.513067,\n 37.94353\n ],\n [\n 117.5839,\n 38.070819\n ],\n [\n 117.70216,\n 38.075529\n ],\n [\n 117.771761,\n 38.136734\n ],\n [\n 117.808718,\n 38.228445\n ],\n [\n 117.895565,\n 38.30173\n ],\n [\n 117.997811,\n 38.211992\n ],\n [\n 118.045238,\n 38.207761\n ],\n [\n 118.143788,\n 38.297035\n ],\n [\n 118.07234,\n 38.170139\n ],\n [\n 118.331034,\n 38.124968\n ],\n [\n 118.504729,\n 38.114141\n ],\n [\n 118.552156,\n 38.055744\n ],\n [\n 118.607591,\n 38.129204\n ],\n [\n 118.726467,\n 38.154144\n ],\n [\n 118.853967,\n 38.155085\n ],\n [\n 118.974075,\n 38.094367\n ],\n [\n 119.004872,\n 37.992114\n ],\n [\n 119.110813,\n 37.921349\n ],\n [\n 119.12806,\n 37.814601\n ],\n [\n 119.217371,\n 37.810347\n ],\n [\n 119.259871,\n 37.702492\n ],\n [\n 119.080016,\n 37.696337\n ],\n [\n 118.99748,\n 37.632396\n ],\n [\n 118.939582,\n 37.527129\n ],\n [\n 118.983314,\n 37.349926\n ],\n [\n 119.054147,\n 37.254738\n ],\n [\n 119.12806,\n 37.254738\n ],\n [\n 119.298675,\n 37.197567\n ],\n [\n 119.329472,\n 37.115548\n ],\n [\n 119.489616,\n 37.13463\n ],\n [\n 119.566608,\n 37.100755\n ],\n [\n 119.744615,\n 37.135107\n ],\n [\n 119.89244,\n 37.263786\n ],\n [\n 119.843781,\n 37.376557\n ],\n [\n 120.144359,\n 37.482036\n ],\n [\n 120.246605,\n 37.556543\n ],\n [\n 120.215192,\n 37.621023\n ],\n [\n 120.272475,\n 37.636661\n ],\n [\n 120.227511,\n 37.693497\n ],\n [\n 120.367945,\n 37.697758\n ],\n [\n 120.466496,\n 37.757858\n ],\n [\n 120.595227,\n 37.767318\n ],\n [\n 120.733197,\n 37.833506\n ],\n [\n 120.938305,\n 37.821219\n ],\n [\n 121.037471,\n 37.718585\n ],\n [\n 121.136022,\n 37.723318\n ],\n [\n 121.153884,\n 37.613914\n ],\n [\n 121.217326,\n 37.582626\n ],\n [\n 121.354064,\n 37.595901\n ],\n [\n 121.362071,\n 37.634292\n ]\n ]\n ],\n [\n [\n [\n 115.498329,\n 35.897401\n ],\n [\n 115.496481,\n 35.885283\n ],\n [\n 115.460141,\n 35.86783\n ],\n [\n 115.463837,\n 35.88092\n ],\n [\n 115.463837,\n 35.882859\n ],\n [\n 115.463837,\n 35.88092\n ],\n [\n 115.464452,\n 35.88092\n ],\n [\n 115.463837,\n 35.882859\n ],\n [\n 115.464452,\n 35.882859\n ],\n [\n 115.464452,\n 35.88092\n ],\n [\n 115.464452,\n 35.882859\n ],\n [\n 115.467532,\n 35.889646\n ],\n [\n 115.467532,\n 35.889646\n ],\n [\n 115.473692,\n 35.896917\n ],\n [\n 115.473692,\n 35.896917\n ],\n [\n 115.487242,\n 35.903702\n ],\n [\n 115.498329,\n 35.897401\n ]\n ]\n ],\n [\n [\n [\n 121.487723,\n 37.578833\n ],\n [\n 121.487723,\n 37.577884\n ],\n [\n 121.487107,\n 37.577884\n ],\n [\n 121.485875,\n 37.578359\n ],\n [\n 121.485875,\n 37.578833\n ],\n [\n 121.487723,\n 37.578833\n ]\n ]\n ],\n [\n [\n [\n 121.487723,\n 37.578833\n ],\n [\n 121.488339,\n 37.578833\n ],\n [\n 121.488339,\n 37.578833\n ],\n [\n 121.487723,\n 37.57741\n ],\n [\n 121.487723,\n 37.577884\n ],\n [\n 121.487723,\n 37.578833\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 410000,\n \"name\": \"河南省\",\n \"center\": [\n 113.665412,\n 34.757975\n ],\n \"centroid\": [\n 113.619918,\n 33.902738\n ],\n \"childrenNum\": 18,\n \"level\": \"province\",\n \"subFeatureIndex\": 15,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 116.196804,\n 34.576017\n ],\n [\n 116.204196,\n 34.508497\n ],\n [\n 116.162312,\n 34.459178\n ],\n [\n 116.213435,\n 34.382181\n ],\n [\n 116.26271,\n 34.375762\n ],\n [\n 116.409303,\n 34.273971\n ],\n [\n 116.409303,\n 34.273971\n ],\n [\n 116.516477,\n 34.296217\n ],\n [\n 116.565752,\n 34.173541\n ],\n [\n 116.530643,\n 34.107183\n ],\n [\n 116.575607,\n 34.069028\n ],\n [\n 116.575607,\n 34.069028\n ],\n [\n 116.648288,\n 33.973317\n ],\n [\n 116.64336,\n 33.896869\n ],\n [\n 116.437637,\n 33.846694\n ],\n [\n 116.437021,\n 33.801461\n ],\n [\n 116.316297,\n 33.771127\n ],\n [\n 116.263326,\n 33.729835\n ],\n [\n 116.155536,\n 33.709929\n ],\n [\n 116.074232,\n 33.781571\n ],\n [\n 116.05945,\n 33.861103\n ],\n [\n 115.987385,\n 33.900842\n ],\n [\n 116.00032,\n 33.964881\n ],\n [\n 115.95782,\n 34.007547\n ],\n [\n 115.877132,\n 34.003083\n ],\n [\n 115.736082,\n 34.076957\n ],\n [\n 115.60735,\n 34.030359\n ],\n [\n 115.546988,\n 33.875014\n ],\n [\n 115.629524,\n 33.871536\n ],\n [\n 115.614126,\n 33.775603\n ],\n [\n 115.563003,\n 33.771624\n ],\n [\n 115.639995,\n 33.584909\n ],\n [\n 115.421953,\n 33.556992\n ],\n [\n 115.345576,\n 33.503125\n ],\n [\n 115.312931,\n 33.376307\n ],\n [\n 115.365286,\n 33.335826\n ],\n [\n 115.301229,\n 33.141657\n ],\n [\n 115.168186,\n 33.088535\n ],\n [\n 115.042534,\n 33.08653\n ],\n [\n 114.966158,\n 33.147167\n ],\n [\n 114.902716,\n 33.129632\n ],\n [\n 114.925506,\n 33.016821\n ],\n [\n 114.883006,\n 32.990227\n ],\n [\n 114.943368,\n 32.935005\n ],\n [\n 115.139237,\n 32.897837\n ],\n [\n 115.197135,\n 32.85613\n ],\n [\n 115.183584,\n 32.665937\n ],\n [\n 115.20083,\n 32.591864\n ],\n [\n 115.304924,\n 32.553039\n ],\n [\n 115.409018,\n 32.549005\n ],\n [\n 115.5088,\n 32.468777\n ],\n [\n 115.509416,\n 32.466758\n ],\n [\n 115.567314,\n 32.421819\n ],\n [\n 115.667712,\n 32.409696\n ],\n [\n 115.706517,\n 32.494014\n ],\n [\n 115.789052,\n 32.468777\n ],\n [\n 115.845719,\n 32.501583\n ],\n [\n 115.899306,\n 32.391005\n ],\n [\n 115.912856,\n 32.227666\n ],\n [\n 115.941805,\n 32.166402\n ],\n [\n 115.931334,\n 31.994541\n ],\n [\n 115.893146,\n 31.833033\n ],\n [\n 115.909777,\n 31.791849\n ],\n [\n 115.816154,\n 31.762348\n ],\n [\n 115.767495,\n 31.787272\n ],\n [\n 115.660937,\n 31.760822\n ],\n [\n 115.496481,\n 31.674297\n ],\n [\n 115.371446,\n 31.495905\n ],\n [\n 115.373909,\n 31.405559\n ],\n [\n 115.301229,\n 31.384109\n ],\n [\n 115.22054,\n 31.426494\n ],\n [\n 115.235323,\n 31.556597\n ],\n [\n 115.12507,\n 31.598904\n ],\n [\n 115.088729,\n 31.507638\n ],\n [\n 115.024056,\n 31.528551\n ],\n [\n 114.830035,\n 31.458654\n ],\n [\n 114.778912,\n 31.5209\n ],\n [\n 114.696376,\n 31.526001\n ],\n [\n 114.641558,\n 31.582085\n ],\n [\n 114.560869,\n 31.561185\n ],\n [\n 114.549783,\n 31.642721\n ],\n [\n 114.586123,\n 31.762348\n ],\n [\n 114.448769,\n 31.728257\n ],\n [\n 114.292936,\n 31.752173\n ],\n [\n 114.195002,\n 31.850315\n ],\n [\n 114.135871,\n 31.843707\n ],\n [\n 114.088444,\n 31.781677\n ],\n [\n 113.988662,\n 31.750138\n ],\n [\n 113.954785,\n 31.856413\n ],\n [\n 113.838373,\n 31.854889\n ],\n [\n 113.791561,\n 32.036142\n ],\n [\n 113.728735,\n 32.0833\n ],\n [\n 113.783554,\n 32.186153\n ],\n [\n 113.749677,\n 32.272196\n ],\n [\n 113.761996,\n 32.268149\n ],\n [\n 113.757069,\n 32.29243\n ],\n [\n 113.758301,\n 32.296476\n ],\n [\n 113.752757,\n 32.388478\n ],\n [\n 113.664062,\n 32.422324\n ],\n [\n 113.624642,\n 32.361191\n ],\n [\n 113.425693,\n 32.269161\n ],\n [\n 113.211962,\n 32.431919\n ],\n [\n 113.118956,\n 32.375846\n ],\n [\n 113.025949,\n 32.425354\n ],\n [\n 112.992072,\n 32.378373\n ],\n [\n 112.860877,\n 32.395552\n ],\n [\n 112.733993,\n 32.363718\n ],\n [\n 112.729066,\n 32.366245\n ],\n [\n 112.544284,\n 32.403635\n ],\n [\n 112.451893,\n 32.344511\n ],\n [\n 112.390915,\n 32.371298\n ],\n [\n 112.328089,\n 32.321761\n ],\n [\n 112.228923,\n 32.385447\n ],\n [\n 112.014576,\n 32.450098\n ],\n [\n 111.948671,\n 32.517225\n ],\n [\n 111.890157,\n 32.503097\n ],\n [\n 111.640701,\n 32.634703\n ],\n [\n 111.577875,\n 32.593376\n ],\n [\n 111.380159,\n 32.828984\n ],\n [\n 111.293311,\n 32.859145\n ],\n [\n 111.242804,\n 32.930486\n ],\n [\n 111.273601,\n 32.971656\n ],\n [\n 111.238493,\n 33.040899\n ],\n [\n 111.151029,\n 33.053438\n ],\n [\n 111.179363,\n 33.115601\n ],\n [\n 111.056791,\n 33.192743\n ],\n [\n 111.032769,\n 33.209265\n ],\n [\n 110.984726,\n 33.255308\n ],\n [\n 111.025994,\n 33.330327\n ],\n [\n 110.996429,\n 33.435745\n ],\n [\n 111.02661,\n 33.474183\n ],\n [\n 111.02661,\n 33.478675\n ],\n [\n 111.00382,\n 33.578429\n ],\n [\n 110.877552,\n 33.635238\n ],\n [\n 110.782698,\n 33.795494\n ],\n [\n 110.587445,\n 33.887929\n ],\n [\n 110.669365,\n 33.939072\n ],\n [\n 110.590525,\n 34.096778\n ],\n [\n 110.642264,\n 34.16067\n ],\n [\n 110.43962,\n 34.24331\n ],\n [\n 110.426685,\n 34.275454\n ],\n [\n 110.503677,\n 34.337234\n ],\n [\n 110.403279,\n 34.43352\n ],\n [\n 110.403279,\n 34.43352\n ],\n [\n 110.360779,\n 34.516878\n ],\n [\n 110.379257,\n 34.600646\n ],\n [\n 110.474728,\n 34.617389\n ],\n [\n 110.533242,\n 34.583406\n ],\n [\n 110.710017,\n 34.605078\n ],\n [\n 110.749437,\n 34.652342\n ],\n [\n 110.883712,\n 34.642498\n ],\n [\n 110.929907,\n 34.731548\n ],\n [\n 110.966248,\n 34.70499\n ],\n [\n 111.118385,\n 34.756622\n ],\n [\n 111.148566,\n 34.80773\n ],\n [\n 111.232949,\n 34.789551\n ],\n [\n 111.346282,\n 34.831798\n ],\n [\n 111.570484,\n 34.843094\n ],\n [\n 111.66965,\n 34.988319\n ],\n [\n 111.900012,\n 35.079933\n ],\n [\n 112.062004,\n 35.055937\n ],\n [\n 112.078634,\n 35.219362\n ],\n [\n 112.058924,\n 35.279951\n ],\n [\n 112.513487,\n 35.218384\n ],\n [\n 112.637291,\n 35.225716\n ],\n [\n 112.628052,\n 35.263342\n ],\n [\n 112.766022,\n 35.203718\n ],\n [\n 112.818377,\n 35.258457\n ],\n [\n 112.911384,\n 35.24673\n ],\n [\n 112.992072,\n 35.296068\n ],\n [\n 112.997,\n 35.362455\n ],\n [\n 113.126347,\n 35.332197\n ],\n [\n 113.189789,\n 35.449261\n ],\n [\n 113.298194,\n 35.427325\n ],\n [\n 113.31236,\n 35.481424\n ],\n [\n 113.485439,\n 35.520879\n ],\n [\n 113.578446,\n 35.63378\n ],\n [\n 113.604316,\n 35.797008\n ],\n [\n 113.656671,\n 35.836792\n ],\n [\n 113.637576,\n 35.98847\n ],\n [\n 113.694859,\n 36.026707\n ],\n [\n 113.651743,\n 36.172224\n ],\n [\n 113.716417,\n 36.262492\n ],\n [\n 113.731199,\n 36.363257\n ],\n [\n 113.819894,\n 36.330969\n ],\n [\n 113.881488,\n 36.354102\n ],\n [\n 113.911054,\n 36.314578\n ],\n [\n 113.982502,\n 36.358921\n ],\n [\n 114.055799,\n 36.330005\n ],\n [\n 114.060727,\n 36.276482\n ],\n [\n 114.169132,\n 36.243675\n ],\n [\n 114.169132,\n 36.243675\n ],\n [\n 114.345291,\n 36.255738\n ],\n [\n 114.591666,\n 36.130192\n ],\n [\n 114.912571,\n 36.140339\n ],\n [\n 114.914419,\n 36.051865\n ],\n [\n 114.996955,\n 36.06831\n ],\n [\n 115.064092,\n 36.178985\n ],\n [\n 115.201446,\n 36.210371\n ],\n [\n 115.201446,\n 36.210371\n ],\n [\n 115.312931,\n 36.088137\n ],\n [\n 115.483547,\n 36.149036\n ],\n [\n 115.447822,\n 36.012672\n ],\n [\n 115.362822,\n 35.972008\n ],\n [\n 115.335105,\n 35.796522\n ],\n [\n 115.363438,\n 35.78002\n ],\n [\n 115.460141,\n 35.86783\n ],\n [\n 115.496481,\n 35.885283\n ],\n [\n 115.646155,\n 35.920663\n ],\n [\n 115.989849,\n 36.045576\n ],\n [\n 116.099486,\n 36.111826\n ],\n [\n 116.048979,\n 35.970071\n ],\n [\n 115.911624,\n 35.960385\n ],\n [\n 115.875284,\n 35.859102\n ],\n [\n 115.773654,\n 35.854252\n ],\n [\n 115.693582,\n 35.75429\n ],\n [\n 115.48601,\n 35.710091\n ],\n [\n 115.383148,\n 35.569076\n ],\n [\n 115.357895,\n 35.498475\n ],\n [\n 115.237171,\n 35.422937\n ],\n [\n 115.093657,\n 35.41611\n ],\n [\n 115.02036,\n 35.364406\n ],\n [\n 114.929817,\n 35.248196\n ],\n [\n 114.932281,\n 35.197362\n ],\n [\n 114.841738,\n 35.151389\n ],\n [\n 114.883006,\n 35.098537\n ],\n [\n 114.824492,\n 35.012335\n ],\n [\n 114.923658,\n 34.968709\n ],\n [\n 115.028983,\n 34.97165\n ],\n [\n 115.12815,\n 35.004493\n ],\n [\n 115.189128,\n 34.914757\n ],\n [\n 115.251953,\n 34.906416\n ],\n [\n 115.256265,\n 34.845549\n ],\n [\n 115.317243,\n 34.859297\n ],\n [\n 115.42688,\n 34.805273\n ],\n [\n 115.461373,\n 34.637083\n ],\n [\n 115.515575,\n 34.582421\n ],\n [\n 115.667096,\n 34.557294\n ],\n [\n 115.697278,\n 34.594243\n ],\n [\n 115.83032,\n 34.562714\n ],\n [\n 116.101334,\n 34.605571\n ],\n [\n 116.134594,\n 34.559758\n ],\n [\n 116.196804,\n 34.576017\n ]\n ]\n ],\n [\n [\n [\n 115.498329,\n 35.897401\n ],\n [\n 115.487242,\n 35.903702\n ],\n [\n 115.503257,\n 35.91194\n ],\n [\n 115.503257,\n 35.91194\n ],\n [\n 115.498329,\n 35.897401\n ]\n ]\n ],\n [\n [\n [\n 113.749677,\n 32.272196\n ],\n [\n 113.758301,\n 32.296476\n ],\n [\n 113.757069,\n 32.29243\n ],\n [\n 113.761996,\n 32.268149\n ],\n [\n 113.749677,\n 32.272196\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 420000,\n \"name\": \"湖北省\",\n \"center\": [\n 114.298572,\n 30.584355\n ],\n \"centroid\": [\n 112.271042,\n 30.98802\n ],\n \"childrenNum\": 17,\n \"level\": \"province\",\n \"subFeatureIndex\": 16,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 109.232378,\n 29.119533\n ],\n [\n 109.110422,\n 29.215143\n ],\n [\n 109.11227,\n 29.360737\n ],\n [\n 108.919481,\n 29.326314\n ],\n [\n 108.927488,\n 29.435281\n ],\n [\n 108.880677,\n 29.442576\n ],\n [\n 108.91209,\n 29.571714\n ],\n [\n 108.844337,\n 29.658582\n ],\n [\n 108.785822,\n 29.633622\n ],\n [\n 108.690968,\n 29.689773\n ],\n [\n 108.666946,\n 29.842472\n ],\n [\n 108.602273,\n 29.865824\n ],\n [\n 108.504338,\n 29.707964\n ],\n [\n 108.437201,\n 29.741218\n ],\n [\n 108.424266,\n 29.816\n ],\n [\n 108.371295,\n 29.841434\n ],\n [\n 108.516041,\n 29.885539\n ],\n [\n 108.542526,\n 29.998047\n ],\n [\n 108.513577,\n 30.057619\n ],\n [\n 108.56778,\n 30.157517\n ],\n [\n 108.581947,\n 30.255763\n ],\n [\n 108.460606,\n 30.35959\n ],\n [\n 108.402092,\n 30.376626\n ],\n [\n 108.42673,\n 30.492184\n ],\n [\n 108.56778,\n 30.468464\n ],\n [\n 108.688504,\n 30.587519\n ],\n [\n 108.743939,\n 30.494762\n ],\n [\n 108.808612,\n 30.491153\n ],\n [\n 108.971836,\n 30.627686\n ],\n [\n 109.114734,\n 30.64416\n ],\n [\n 109.09256,\n 30.578762\n ],\n [\n 109.103647,\n 30.565883\n ],\n [\n 109.143683,\n 30.521052\n ],\n [\n 109.299516,\n 30.630775\n ],\n [\n 109.36111,\n 30.550942\n ],\n [\n 109.35495,\n 30.487028\n ],\n [\n 109.435638,\n 30.59576\n ],\n [\n 109.590855,\n 30.693566\n ],\n [\n 109.780564,\n 30.848822\n ],\n [\n 109.893897,\n 30.899662\n ],\n [\n 110.008462,\n 30.883746\n ],\n [\n 110.082375,\n 30.799496\n ],\n [\n 110.172918,\n 30.978694\n ],\n [\n 110.135961,\n 30.986902\n ],\n [\n 110.119947,\n 31.088409\n ],\n [\n 110.189548,\n 31.129391\n ],\n [\n 110.140273,\n 31.390238\n ],\n [\n 110.054042,\n 31.410666\n ],\n [\n 109.946252,\n 31.506108\n ],\n [\n 109.848934,\n 31.552008\n ],\n [\n 109.719586,\n 31.555067\n ],\n [\n 109.76455,\n 31.602981\n ],\n [\n 109.731289,\n 31.700263\n ],\n [\n 109.585928,\n 31.726731\n ],\n [\n 109.638282,\n 31.811172\n ],\n [\n 109.584696,\n 31.900617\n ],\n [\n 109.631507,\n 31.962059\n ],\n [\n 109.590855,\n 32.012807\n ],\n [\n 109.621652,\n 32.106617\n ],\n [\n 109.592703,\n 32.219568\n ],\n [\n 109.495385,\n 32.300522\n ],\n [\n 109.502776,\n 32.389489\n ],\n [\n 109.575457,\n 32.506629\n ],\n [\n 109.637051,\n 32.540935\n ],\n [\n 109.631507,\n 32.599929\n ],\n [\n 109.726978,\n 32.608498\n ],\n [\n 109.816905,\n 32.577244\n ],\n [\n 109.910528,\n 32.592872\n ],\n [\n 110.017701,\n 32.546987\n ],\n [\n 110.085454,\n 32.613034\n ],\n [\n 110.153824,\n 32.593376\n ],\n [\n 110.206179,\n 32.633191\n ],\n [\n 110.156903,\n 32.683061\n ],\n [\n 110.159367,\n 32.767122\n ],\n [\n 110.10886,\n 32.82999\n ],\n [\n 109.988752,\n 32.886281\n ],\n [\n 109.76455,\n 32.909391\n ],\n [\n 109.794731,\n 33.066977\n ],\n [\n 109.688174,\n 33.116603\n ],\n [\n 109.576073,\n 33.110088\n ],\n [\n 109.438718,\n 33.152177\n ],\n [\n 109.537268,\n 33.2438\n ],\n [\n 109.619804,\n 33.27532\n ],\n [\n 109.732521,\n 33.231288\n ],\n [\n 109.852013,\n 33.247803\n ],\n [\n 110.031252,\n 33.191742\n ],\n [\n 110.164911,\n 33.209265\n ],\n [\n 110.218497,\n 33.163197\n ],\n [\n 110.468569,\n 33.181226\n ],\n [\n 110.54125,\n 33.255809\n ],\n [\n 110.59422,\n 33.168706\n ],\n [\n 110.702626,\n 33.097057\n ],\n [\n 110.745741,\n 33.147167\n ],\n [\n 110.824582,\n 33.158188\n ],\n [\n 110.984726,\n 33.255308\n ],\n [\n 111.032769,\n 33.209265\n ],\n [\n 111.037081,\n 33.187235\n ],\n [\n 111.031537,\n 33.17722\n ],\n [\n 111.056791,\n 33.192743\n ],\n [\n 111.179363,\n 33.115601\n ],\n [\n 111.151029,\n 33.053438\n ],\n [\n 111.238493,\n 33.040899\n ],\n [\n 111.273601,\n 32.971656\n ],\n [\n 111.242804,\n 32.930486\n ],\n [\n 111.293311,\n 32.859145\n ],\n [\n 111.380159,\n 32.828984\n ],\n [\n 111.577875,\n 32.593376\n ],\n [\n 111.640701,\n 32.634703\n ],\n [\n 111.890157,\n 32.503097\n ],\n [\n 111.948671,\n 32.517225\n ],\n [\n 112.014576,\n 32.450098\n ],\n [\n 112.228923,\n 32.385447\n ],\n [\n 112.328089,\n 32.321761\n ],\n [\n 112.390915,\n 32.371298\n ],\n [\n 112.451893,\n 32.344511\n ],\n [\n 112.544284,\n 32.403635\n ],\n [\n 112.729066,\n 32.366245\n ],\n [\n 112.730914,\n 32.363212\n ],\n [\n 112.732146,\n 32.362707\n ],\n [\n 112.733993,\n 32.363718\n ],\n [\n 112.860877,\n 32.395552\n ],\n [\n 112.992072,\n 32.378373\n ],\n [\n 113.025949,\n 32.425354\n ],\n [\n 113.118956,\n 32.375846\n ],\n [\n 113.211962,\n 32.431919\n ],\n [\n 113.425693,\n 32.269161\n ],\n [\n 113.624642,\n 32.361191\n ],\n [\n 113.664062,\n 32.422324\n ],\n [\n 113.752757,\n 32.388478\n ],\n [\n 113.758301,\n 32.296476\n ],\n [\n 113.749677,\n 32.272196\n ],\n [\n 113.783554,\n 32.186153\n ],\n [\n 113.728735,\n 32.0833\n ],\n [\n 113.791561,\n 32.036142\n ],\n [\n 113.838373,\n 31.854889\n ],\n [\n 113.954785,\n 31.856413\n ],\n [\n 113.988662,\n 31.750138\n ],\n [\n 114.088444,\n 31.781677\n ],\n [\n 114.135871,\n 31.843707\n ],\n [\n 114.195002,\n 31.850315\n ],\n [\n 114.292936,\n 31.752173\n ],\n [\n 114.448769,\n 31.728257\n ],\n [\n 114.586123,\n 31.762348\n ],\n [\n 114.549783,\n 31.642721\n ],\n [\n 114.560869,\n 31.561185\n ],\n [\n 114.641558,\n 31.582085\n ],\n [\n 114.696376,\n 31.526001\n ],\n [\n 114.778912,\n 31.5209\n ],\n [\n 114.830035,\n 31.458654\n ],\n [\n 115.024056,\n 31.528551\n ],\n [\n 115.088729,\n 31.507638\n ],\n [\n 115.12507,\n 31.598904\n ],\n [\n 115.235323,\n 31.556597\n ],\n [\n 115.22054,\n 31.426494\n ],\n [\n 115.301229,\n 31.384109\n ],\n [\n 115.373909,\n 31.405559\n ],\n [\n 115.372062,\n 31.349368\n ],\n [\n 115.442279,\n 31.346303\n ],\n [\n 115.457677,\n 31.281384\n ],\n [\n 115.516191,\n 31.263485\n ],\n [\n 115.559307,\n 31.160117\n ],\n [\n 115.646155,\n 31.209768\n ],\n [\n 115.700973,\n 31.201068\n ],\n [\n 115.763799,\n 31.118123\n ],\n [\n 115.869125,\n 31.147828\n ],\n [\n 115.938726,\n 31.047409\n ],\n [\n 116.058834,\n 31.012545\n ],\n [\n 116.071769,\n 30.956633\n ],\n [\n 115.976298,\n 30.931488\n ],\n [\n 115.865429,\n 30.864231\n ],\n [\n 115.851262,\n 30.756829\n ],\n [\n 115.782893,\n 30.751687\n ],\n [\n 115.762567,\n 30.685848\n ],\n [\n 115.819234,\n 30.59782\n ],\n [\n 115.876516,\n 30.582368\n ],\n [\n 115.921479,\n 30.416364\n ],\n [\n 115.903001,\n 30.313631\n ],\n [\n 115.985537,\n 30.290901\n ],\n [\n 116.065609,\n 30.204584\n ],\n [\n 116.091479,\n 30.036385\n ],\n [\n 116.073616,\n 29.970061\n ],\n [\n 116.127203,\n 29.899544\n ],\n [\n 116.13521,\n 29.819634\n ],\n [\n 115.965827,\n 29.724593\n ],\n [\n 115.837096,\n 29.748491\n ],\n [\n 115.667712,\n 29.850257\n ],\n [\n 115.511264,\n 29.839877\n ],\n [\n 115.471844,\n 29.742777\n ],\n [\n 115.359127,\n 29.646623\n ],\n [\n 115.142316,\n 29.651822\n ],\n [\n 115.154019,\n 29.51029\n ],\n [\n 115.00065,\n 29.572235\n ],\n [\n 114.940904,\n 29.494147\n ],\n [\n 114.860216,\n 29.475917\n ],\n [\n 114.931049,\n 29.422252\n ],\n [\n 114.759818,\n 29.363345\n ],\n [\n 114.660652,\n 29.393585\n ],\n [\n 114.519602,\n 29.325271\n ],\n [\n 114.259059,\n 29.344049\n ],\n [\n 114.252284,\n 29.234985\n ],\n [\n 114.061959,\n 29.204176\n ],\n [\n 113.952321,\n 29.092871\n ],\n [\n 113.94185,\n 29.047374\n ],\n [\n 113.877793,\n 29.035343\n ],\n [\n 113.816199,\n 29.105419\n ],\n [\n 113.749677,\n 29.060973\n ],\n [\n 113.66283,\n 29.1697\n ],\n [\n 113.689931,\n 29.230808\n ],\n [\n 113.606779,\n 29.253779\n ],\n [\n 113.686236,\n 29.392021\n ],\n [\n 113.753373,\n 29.43997\n ],\n [\n 113.630801,\n 29.523307\n ],\n [\n 113.736743,\n 29.576918\n ],\n [\n 113.664678,\n 29.683536\n ],\n [\n 113.547033,\n 29.675219\n ],\n [\n 113.566127,\n 29.846105\n ],\n [\n 113.37765,\n 29.703287\n ],\n [\n 113.145441,\n 29.449349\n ],\n [\n 113.078304,\n 29.438407\n ],\n [\n 113.057362,\n 29.522265\n ],\n [\n 112.950188,\n 29.472792\n ],\n [\n 112.912,\n 29.607095\n ],\n [\n 113.004391,\n 29.692892\n ],\n [\n 113.020405,\n 29.772384\n ],\n [\n 112.937869,\n 29.783809\n ],\n [\n 112.939101,\n 29.768229\n ],\n [\n 112.926782,\n 29.763036\n ],\n [\n 112.861493,\n 29.78329\n ],\n [\n 112.79374,\n 29.736023\n ],\n [\n 112.788812,\n 29.681457\n ],\n [\n 112.687182,\n 29.592528\n ],\n [\n 112.439574,\n 29.633622\n ],\n [\n 112.369973,\n 29.542048\n ],\n [\n 112.281278,\n 29.536842\n ],\n [\n 112.303452,\n 29.585244\n ],\n [\n 112.111279,\n 29.659622\n ],\n [\n 112.07617,\n 29.740179\n ],\n [\n 111.95483,\n 29.796791\n ],\n [\n 111.962222,\n 29.837282\n ],\n [\n 111.862439,\n 29.856484\n ],\n [\n 111.807005,\n 29.904213\n ],\n [\n 111.723853,\n 29.909399\n ],\n [\n 111.723853,\n 29.909399\n ],\n [\n 111.709686,\n 29.897988\n ],\n [\n 111.709686,\n 29.897988\n ],\n [\n 111.39063,\n 29.914585\n ],\n [\n 111.244036,\n 30.039492\n ],\n [\n 110.929907,\n 30.063316\n ],\n [\n 110.924364,\n 30.111463\n ],\n [\n 110.746973,\n 30.113015\n ],\n [\n 110.712481,\n 30.033277\n ],\n [\n 110.650887,\n 30.077814\n ],\n [\n 110.497518,\n 30.05503\n ],\n [\n 110.557264,\n 29.988201\n ],\n [\n 110.498134,\n 29.910955\n ],\n [\n 110.60038,\n 29.839877\n ],\n [\n 110.642264,\n 29.777578\n ],\n [\n 110.507373,\n 29.691853\n ],\n [\n 110.360779,\n 29.635702\n ],\n [\n 110.219729,\n 29.746413\n ],\n [\n 110.113788,\n 29.789521\n ],\n [\n 110.02386,\n 29.769788\n ],\n [\n 109.869876,\n 29.774462\n ],\n [\n 109.775637,\n 29.755244\n ],\n [\n 109.714043,\n 29.673139\n ],\n [\n 109.717739,\n 29.614897\n ],\n [\n 109.516326,\n 29.62582\n ],\n [\n 109.458428,\n 29.513414\n ],\n [\n 109.343863,\n 29.369602\n ],\n [\n 109.352487,\n 29.284574\n ],\n [\n 109.258248,\n 29.21932\n ],\n [\n 109.274262,\n 29.122146\n ],\n [\n 109.232378,\n 29.119533\n ]\n ]\n ],\n [\n [\n [\n 113.020405,\n 29.772384\n ],\n [\n 112.926782,\n 29.692372\n ],\n [\n 112.926782,\n 29.763036\n ],\n [\n 112.939101,\n 29.768229\n ],\n [\n 112.937869,\n 29.783809\n ],\n [\n 113.020405,\n 29.772384\n ]\n ]\n ],\n [\n [\n [\n 111.032769,\n 33.209265\n ],\n [\n 111.056791,\n 33.192743\n ],\n [\n 111.031537,\n 33.17722\n ],\n [\n 111.037081,\n 33.187235\n ],\n [\n 111.032769,\n 33.209265\n ]\n ]\n ],\n [\n [\n [\n 109.106111,\n 30.57052\n ],\n [\n 109.09872,\n 30.579277\n ],\n [\n 109.100567,\n 30.580823\n ],\n [\n 109.106727,\n 30.572066\n ],\n [\n 109.106111,\n 30.57052\n ]\n ]\n ],\n [\n [\n [\n 112.732146,\n 32.362707\n ],\n [\n 112.730914,\n 32.363212\n ],\n [\n 112.729066,\n 32.366245\n ],\n [\n 112.733993,\n 32.363718\n ],\n [\n 112.732146,\n 32.362707\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 430000,\n \"name\": \"湖南省\",\n \"center\": [\n 112.982279,\n 28.19409\n ],\n \"centroid\": [\n 111.754313,\n 27.655081\n ],\n \"childrenNum\": 14,\n \"level\": \"province\",\n \"subFeatureIndex\": 17,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 109.965962,\n 26.195699\n ],\n [\n 110.017701,\n 26.343246\n ],\n [\n 109.932701,\n 26.476145\n ],\n [\n 109.856325,\n 26.465433\n ],\n [\n 109.892665,\n 26.525408\n ],\n [\n 109.82676,\n 26.605681\n ],\n [\n 109.946252,\n 26.685899\n ],\n [\n 109.838463,\n 26.72759\n ],\n [\n 109.821216,\n 26.781017\n ],\n [\n 109.652449,\n 26.76232\n ],\n [\n 109.660456,\n 26.709419\n ],\n [\n 109.590855,\n 26.686433\n ],\n [\n 109.529261,\n 26.740414\n ],\n [\n 109.548971,\n 26.737208\n ],\n [\n 109.548971,\n 26.737208\n ],\n [\n 109.528029,\n 26.744689\n ],\n [\n 109.52187,\n 26.748964\n ],\n [\n 109.504624,\n 26.805051\n ],\n [\n 109.500928,\n 26.828546\n ],\n [\n 109.486761,\n 26.895267\n ],\n [\n 109.555131,\n 26.947015\n ],\n [\n 109.520022,\n 27.058433\n ],\n [\n 109.454733,\n 27.069622\n ],\n [\n 109.472595,\n 27.135136\n ],\n [\n 109.415928,\n 27.15377\n ],\n [\n 109.267487,\n 27.128746\n ],\n [\n 109.164625,\n 27.065893\n ],\n [\n 109.07901,\n 27.115965\n ],\n [\n 108.87575,\n 26.999273\n ],\n [\n 108.791366,\n 27.084539\n ],\n [\n 108.878829,\n 27.106378\n ],\n [\n 108.907162,\n 27.2054\n ],\n [\n 109.040821,\n 27.276151\n ],\n [\n 109.142451,\n 27.418051\n ],\n [\n 109.202197,\n 27.449913\n ],\n [\n 109.300132,\n 27.423893\n ],\n [\n 109.303211,\n 27.475396\n ],\n [\n 109.461508,\n 27.567724\n ],\n [\n 109.470747,\n 27.68011\n ],\n [\n 109.332777,\n 27.782853\n ],\n [\n 109.345711,\n 27.840537\n ],\n [\n 109.30198,\n 27.956342\n ],\n [\n 109.378972,\n 28.032948\n ],\n [\n 109.298284,\n 28.036117\n ],\n [\n 109.340168,\n 28.190216\n ],\n [\n 109.388211,\n 28.268236\n ],\n [\n 109.27303,\n 28.310386\n ],\n [\n 109.274262,\n 28.494592\n ],\n [\n 109.321074,\n 28.581322\n ],\n [\n 109.304443,\n 28.623871\n ],\n [\n 109.201581,\n 28.598133\n ],\n [\n 109.2989,\n 28.747221\n ],\n [\n 109.241002,\n 28.776594\n ],\n [\n 109.235458,\n 28.882476\n ],\n [\n 109.319842,\n 29.042667\n ],\n [\n 109.232378,\n 29.119533\n ],\n [\n 109.274262,\n 29.122146\n ],\n [\n 109.258248,\n 29.21932\n ],\n [\n 109.352487,\n 29.284574\n ],\n [\n 109.343863,\n 29.369602\n ],\n [\n 109.458428,\n 29.513414\n ],\n [\n 109.516326,\n 29.62582\n ],\n [\n 109.717739,\n 29.614897\n ],\n [\n 109.714043,\n 29.673139\n ],\n [\n 109.775637,\n 29.755244\n ],\n [\n 109.869876,\n 29.774462\n ],\n [\n 110.02386,\n 29.769788\n ],\n [\n 110.113788,\n 29.789521\n ],\n [\n 110.219729,\n 29.746413\n ],\n [\n 110.360779,\n 29.635702\n ],\n [\n 110.507373,\n 29.691853\n ],\n [\n 110.642264,\n 29.777578\n ],\n [\n 110.60038,\n 29.839877\n ],\n [\n 110.498134,\n 29.910955\n ],\n [\n 110.557264,\n 29.988201\n ],\n [\n 110.497518,\n 30.05503\n ],\n [\n 110.650887,\n 30.077814\n ],\n [\n 110.712481,\n 30.033277\n ],\n [\n 110.746973,\n 30.113015\n ],\n [\n 110.924364,\n 30.111463\n ],\n [\n 110.929907,\n 30.063316\n ],\n [\n 111.244036,\n 30.039492\n ],\n [\n 111.39063,\n 29.914585\n ],\n [\n 111.709686,\n 29.897988\n ],\n [\n 111.709686,\n 29.897988\n ],\n [\n 111.723853,\n 29.909399\n ],\n [\n 111.723853,\n 29.909399\n ],\n [\n 111.807005,\n 29.904213\n ],\n [\n 111.862439,\n 29.856484\n ],\n [\n 111.962222,\n 29.837282\n ],\n [\n 111.95483,\n 29.796791\n ],\n [\n 112.07617,\n 29.740179\n ],\n [\n 112.111279,\n 29.659622\n ],\n [\n 112.303452,\n 29.585244\n ],\n [\n 112.281278,\n 29.536842\n ],\n [\n 112.369973,\n 29.542048\n ],\n [\n 112.439574,\n 29.633622\n ],\n [\n 112.687182,\n 29.592528\n ],\n [\n 112.788812,\n 29.681457\n ],\n [\n 112.79374,\n 29.736023\n ],\n [\n 112.861493,\n 29.78329\n ],\n [\n 112.926782,\n 29.763036\n ],\n [\n 112.926782,\n 29.692372\n ],\n [\n 113.020405,\n 29.772384\n ],\n [\n 113.004391,\n 29.692892\n ],\n [\n 112.912,\n 29.607095\n ],\n [\n 112.950188,\n 29.472792\n ],\n [\n 113.057362,\n 29.522265\n ],\n [\n 113.078304,\n 29.438407\n ],\n [\n 113.145441,\n 29.449349\n ],\n [\n 113.37765,\n 29.703287\n ],\n [\n 113.566127,\n 29.846105\n ],\n [\n 113.547033,\n 29.675219\n ],\n [\n 113.664678,\n 29.683536\n ],\n [\n 113.736743,\n 29.576918\n ],\n [\n 113.630801,\n 29.523307\n ],\n [\n 113.753373,\n 29.43997\n ],\n [\n 113.686236,\n 29.392021\n ],\n [\n 113.606779,\n 29.253779\n ],\n [\n 113.689931,\n 29.230808\n ],\n [\n 113.66283,\n 29.1697\n ],\n [\n 113.749677,\n 29.060973\n ],\n [\n 113.816199,\n 29.105419\n ],\n [\n 113.877793,\n 29.035343\n ],\n [\n 113.94185,\n 29.047374\n ],\n [\n 113.966488,\n 28.945326\n ],\n [\n 114.008988,\n 28.955273\n ],\n [\n 114.076741,\n 28.834266\n ],\n [\n 114.152502,\n 28.83479\n ],\n [\n 114.157429,\n 28.761384\n ],\n [\n 114.08598,\n 28.558201\n ],\n [\n 114.218407,\n 28.484601\n ],\n [\n 114.172212,\n 28.432524\n ],\n [\n 114.252284,\n 28.395687\n ],\n [\n 114.25598,\n 28.323554\n ],\n [\n 114.107538,\n 28.182833\n ],\n [\n 113.992357,\n 28.161207\n ],\n [\n 114.047176,\n 28.05724\n ],\n [\n 113.914133,\n 27.991218\n ],\n [\n 113.864242,\n 28.004954\n ],\n [\n 113.752141,\n 27.933614\n ],\n [\n 113.729967,\n 27.887086\n ],\n [\n 113.763228,\n 27.799262\n ],\n [\n 113.607395,\n 27.625522\n ],\n [\n 113.583374,\n 27.524754\n ],\n [\n 113.632033,\n 27.405303\n ],\n [\n 113.616635,\n 27.345264\n ],\n [\n 113.872865,\n 27.385116\n ],\n [\n 113.848844,\n 27.225087\n ],\n [\n 113.779242,\n 27.137265\n ],\n [\n 113.821126,\n 27.037651\n ],\n [\n 113.927068,\n 26.949149\n ],\n [\n 113.834677,\n 26.803983\n ],\n [\n 113.860546,\n 26.663978\n ],\n [\n 113.915365,\n 26.613706\n ],\n [\n 114.106306,\n 26.576254\n ],\n [\n 114.073046,\n 26.480965\n ],\n [\n 114.085364,\n 26.4065\n ],\n [\n 114.030546,\n 26.376485\n ],\n [\n 114.029314,\n 26.266545\n ],\n [\n 113.944314,\n 26.16402\n ],\n [\n 114.088444,\n 26.168316\n ],\n [\n 114.181451,\n 26.214489\n ],\n [\n 114.237501,\n 26.152204\n ],\n [\n 114.044096,\n 26.076452\n ],\n [\n 114.007756,\n 26.007104\n ],\n [\n 114.028082,\n 25.893586\n ],\n [\n 113.971416,\n 25.835979\n ],\n [\n 113.913517,\n 25.701272\n ],\n [\n 113.983118,\n 25.599332\n ],\n [\n 113.94493,\n 25.441667\n ],\n [\n 113.887032,\n 25.436804\n ],\n [\n 113.822974,\n 25.331935\n ],\n [\n 113.753373,\n 25.362756\n ],\n [\n 113.611707,\n 25.326527\n ],\n [\n 113.611707,\n 25.326527\n ],\n [\n 113.535946,\n 25.368704\n ],\n [\n 113.449715,\n 25.359512\n ],\n [\n 113.373338,\n 25.402758\n ],\n [\n 113.311129,\n 25.490284\n ],\n [\n 113.248919,\n 25.514045\n ],\n [\n 113.11834,\n 25.445449\n ],\n [\n 113.080151,\n 25.3833\n ],\n [\n 112.900297,\n 25.311383\n ],\n [\n 112.867036,\n 25.249706\n ],\n [\n 112.992688,\n 25.247\n ],\n [\n 113.034572,\n 25.198285\n ],\n [\n 112.96805,\n 25.141426\n ],\n [\n 113.018557,\n 25.082914\n ],\n [\n 112.979137,\n 25.034133\n ],\n [\n 113.011782,\n 24.946279\n ],\n [\n 112.871348,\n 24.895816\n ],\n [\n 112.780805,\n 24.896901\n ],\n [\n 112.712436,\n 25.083456\n ],\n [\n 112.660081,\n 25.132759\n ],\n [\n 112.414937,\n 25.142509\n ],\n [\n 112.369357,\n 25.189081\n ],\n [\n 112.3053,\n 25.157132\n ],\n [\n 112.187039,\n 25.182584\n ],\n [\n 112.155626,\n 25.026544\n ],\n [\n 112.119902,\n 24.963638\n ],\n [\n 112.175337,\n 24.92729\n ],\n [\n 112.171025,\n 24.86379\n ],\n [\n 112.097112,\n 24.826327\n ],\n [\n 112.024431,\n 24.739955\n ],\n [\n 111.951135,\n 24.769839\n ],\n [\n 111.68936,\n 24.778531\n ],\n [\n 111.570484,\n 24.644821\n ],\n [\n 111.431282,\n 24.687776\n ],\n [\n 111.479325,\n 24.797543\n ],\n [\n 111.470086,\n 24.928917\n ],\n [\n 111.43313,\n 24.97991\n ],\n [\n 111.435593,\n 25.09321\n ],\n [\n 111.321645,\n 25.10513\n ],\n [\n 111.274833,\n 25.151175\n ],\n [\n 111.200921,\n 25.074786\n ],\n [\n 111.101754,\n 25.035218\n ],\n [\n 111.100522,\n 24.945736\n ],\n [\n 110.991501,\n 24.924034\n ],\n [\n 110.951465,\n 25.043891\n ],\n [\n 110.998892,\n 25.161465\n ],\n [\n 111.112841,\n 25.217232\n ],\n [\n 111.103602,\n 25.284877\n ],\n [\n 111.301319,\n 25.450851\n ],\n [\n 111.343202,\n 25.602569\n ],\n [\n 111.30871,\n 25.72014\n ],\n [\n 111.442369,\n 25.771877\n ],\n [\n 111.43313,\n 25.84621\n ],\n [\n 111.49226,\n 25.868824\n ],\n [\n 111.346282,\n 25.906504\n ],\n [\n 111.252043,\n 25.864517\n ],\n [\n 111.189834,\n 25.953318\n ],\n [\n 111.267442,\n 26.058716\n ],\n [\n 111.279761,\n 26.271911\n ],\n [\n 111.204616,\n 26.307852\n ],\n [\n 111.092515,\n 26.306779\n ],\n [\n 110.94469,\n 26.373805\n ],\n [\n 110.939146,\n 26.28425\n ],\n [\n 110.76114,\n 26.248838\n ],\n [\n 110.612083,\n 26.333594\n ],\n [\n 110.555416,\n 26.286396\n ],\n [\n 110.516612,\n 26.186035\n ],\n [\n 110.373098,\n 26.08935\n ],\n [\n 110.325671,\n 25.975373\n ],\n [\n 110.257301,\n 25.961388\n ],\n [\n 110.201251,\n 26.066241\n ],\n [\n 110.165527,\n 26.023773\n ],\n [\n 110.065128,\n 26.051191\n ],\n [\n 110.099005,\n 26.16939\n ],\n [\n 109.965962,\n 26.195699\n ]\n ]\n ],\n [\n [\n [\n 109.48245,\n 26.029687\n ],\n [\n 109.449805,\n 26.101709\n ],\n [\n 109.486761,\n 26.148445\n ],\n [\n 109.486761,\n 26.148445\n ],\n [\n 109.439334,\n 26.238641\n ],\n [\n 109.466435,\n 26.314288\n ],\n [\n 109.340784,\n 26.264399\n ],\n [\n 109.285965,\n 26.296052\n ],\n [\n 109.326001,\n 26.427398\n ],\n [\n 109.407305,\n 26.532902\n ],\n [\n 109.35495,\n 26.693383\n ],\n [\n 109.454117,\n 26.761252\n ],\n [\n 109.52187,\n 26.748964\n ],\n [\n 109.528029,\n 26.744689\n ],\n [\n 109.529261,\n 26.740414\n ],\n [\n 109.590855,\n 26.686433\n ],\n [\n 109.660456,\n 26.709419\n ],\n [\n 109.652449,\n 26.76232\n ],\n [\n 109.821216,\n 26.781017\n ],\n [\n 109.838463,\n 26.72759\n ],\n [\n 109.946252,\n 26.685899\n ],\n [\n 109.82676,\n 26.605681\n ],\n [\n 109.892665,\n 26.525408\n ],\n [\n 109.856325,\n 26.465433\n ],\n [\n 109.932701,\n 26.476145\n ],\n [\n 110.017701,\n 26.343246\n ],\n [\n 109.965962,\n 26.195699\n ],\n [\n 109.906832,\n 26.143611\n ],\n [\n 109.864332,\n 26.027537\n ],\n [\n 109.783028,\n 25.988282\n ],\n [\n 109.806434,\n 25.874746\n ],\n [\n 109.685094,\n 25.880129\n ],\n [\n 109.730057,\n 25.989895\n ],\n [\n 109.635203,\n 26.047428\n ],\n [\n 109.513247,\n 25.997962\n ],\n [\n 109.48245,\n 26.029687\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 440000,\n \"name\": \"广东省\",\n \"center\": [\n 113.280637,\n 23.125178\n ],\n \"centroid\": [\n 113.429877,\n 23.334664\n ],\n \"childrenNum\": 22,\n \"level\": \"province\",\n \"subFeatureIndex\": 18,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 109.785492,\n 21.457116\n ],\n [\n 109.742992,\n 21.61629\n ],\n [\n 109.898209,\n 21.649661\n ],\n [\n 109.940709,\n 21.734723\n ],\n [\n 109.94502,\n 21.844172\n ],\n [\n 110.051578,\n 21.856945\n ],\n [\n 110.119947,\n 21.901918\n ],\n [\n 110.200019,\n 21.898587\n ],\n [\n 110.200019,\n 21.898587\n ],\n [\n 110.388497,\n 21.89026\n ],\n [\n 110.355236,\n 22.061709\n ],\n [\n 110.355236,\n 22.061709\n ],\n [\n 110.350924,\n 22.072799\n ],\n [\n 110.350924,\n 22.072799\n ],\n [\n 110.414366,\n 22.20858\n ],\n [\n 110.488895,\n 22.144863\n ],\n [\n 110.560344,\n 22.196393\n ],\n [\n 110.629329,\n 22.149296\n ],\n [\n 110.646575,\n 22.222982\n ],\n [\n 110.725415,\n 22.295522\n ],\n [\n 110.785777,\n 22.294415\n ],\n [\n 110.711249,\n 22.369684\n ],\n [\n 110.778386,\n 22.585304\n ],\n [\n 111.055559,\n 22.648268\n ],\n [\n 111.056791,\n 22.72776\n ],\n [\n 111.202152,\n 22.740452\n ],\n [\n 111.358601,\n 22.889362\n ],\n [\n 111.363528,\n 22.968713\n ],\n [\n 111.433746,\n 23.036456\n ],\n [\n 111.377695,\n 23.082149\n ],\n [\n 111.388782,\n 23.210337\n ],\n [\n 111.353673,\n 23.28895\n ],\n [\n 111.399869,\n 23.469638\n ],\n [\n 111.479941,\n 23.532738\n ],\n [\n 111.487332,\n 23.62651\n ],\n [\n 111.615448,\n 23.639117\n ],\n [\n 111.667187,\n 23.718023\n ],\n [\n 111.621607,\n 23.725692\n ],\n [\n 111.664723,\n 23.83465\n ],\n [\n 111.8107,\n 23.806735\n ],\n [\n 111.812548,\n 23.887727\n ],\n [\n 111.940664,\n 23.987803\n ],\n [\n 111.878454,\n 24.110195\n ],\n [\n 111.877838,\n 24.229196\n ],\n [\n 111.939432,\n 24.230287\n ],\n [\n 112.029975,\n 24.297925\n ],\n [\n 112.057692,\n 24.387327\n ],\n [\n 111.985011,\n 24.467953\n ],\n [\n 112.007185,\n 24.534376\n ],\n [\n 111.937584,\n 24.595323\n ],\n [\n 111.961606,\n 24.720934\n ],\n [\n 112.024431,\n 24.739955\n ],\n [\n 112.097112,\n 24.826327\n ],\n [\n 112.171025,\n 24.86379\n ],\n [\n 112.175337,\n 24.92729\n ],\n [\n 112.119902,\n 24.963638\n ],\n [\n 112.155626,\n 25.026544\n ],\n [\n 112.187039,\n 25.182584\n ],\n [\n 112.3053,\n 25.157132\n ],\n [\n 112.369357,\n 25.189081\n ],\n [\n 112.414937,\n 25.142509\n ],\n [\n 112.660081,\n 25.132759\n ],\n [\n 112.712436,\n 25.083456\n ],\n [\n 112.780805,\n 24.896901\n ],\n [\n 112.871348,\n 24.895816\n ],\n [\n 113.011782,\n 24.946279\n ],\n [\n 112.979137,\n 25.034133\n ],\n [\n 113.018557,\n 25.082914\n ],\n [\n 112.96805,\n 25.141426\n ],\n [\n 113.034572,\n 25.198285\n ],\n [\n 112.992688,\n 25.247\n ],\n [\n 112.867036,\n 25.249706\n ],\n [\n 112.900297,\n 25.311383\n ],\n [\n 113.080151,\n 25.3833\n ],\n [\n 113.11834,\n 25.445449\n ],\n [\n 113.248919,\n 25.514045\n ],\n [\n 113.311129,\n 25.490284\n ],\n [\n 113.373338,\n 25.402758\n ],\n [\n 113.449715,\n 25.359512\n ],\n [\n 113.535946,\n 25.368704\n ],\n [\n 113.611707,\n 25.326527\n ],\n [\n 113.611707,\n 25.326527\n ],\n [\n 113.753373,\n 25.362756\n ],\n [\n 113.822974,\n 25.331935\n ],\n [\n 113.887032,\n 25.436804\n ],\n [\n 113.94493,\n 25.441667\n ],\n [\n 114.051488,\n 25.348699\n ],\n [\n 114.039785,\n 25.250789\n ],\n [\n 114.13156,\n 25.30922\n ],\n [\n 114.262755,\n 25.29191\n ],\n [\n 114.31511,\n 25.338424\n ],\n [\n 114.381015,\n 25.31571\n ],\n [\n 114.535616,\n 25.41681\n ],\n [\n 114.63663,\n 25.324364\n ],\n [\n 114.743188,\n 25.274597\n ],\n [\n 114.679746,\n 25.194495\n ],\n [\n 114.735796,\n 25.121925\n ],\n [\n 114.640326,\n 25.073702\n ],\n [\n 114.561485,\n 25.077495\n ],\n [\n 114.506051,\n 24.999975\n ],\n [\n 114.395798,\n 24.951161\n ],\n [\n 114.403189,\n 24.877361\n ],\n [\n 114.33482,\n 24.747562\n ],\n [\n 114.27261,\n 24.700279\n ],\n [\n 114.169132,\n 24.689407\n ],\n [\n 114.258443,\n 24.641558\n ],\n [\n 114.308334,\n 24.574104\n ],\n [\n 114.391486,\n 24.562677\n ],\n [\n 114.428443,\n 24.486468\n ],\n [\n 114.534384,\n 24.558867\n ],\n [\n 114.589819,\n 24.537642\n ],\n [\n 114.664963,\n 24.583898\n ],\n [\n 114.704999,\n 24.526211\n ],\n [\n 114.729637,\n 24.608924\n ],\n [\n 114.868839,\n 24.562132\n ],\n [\n 114.909491,\n 24.661679\n ],\n [\n 115.056701,\n 24.703541\n ],\n [\n 115.095505,\n 24.674184\n ],\n [\n 115.308004,\n 24.758429\n ],\n [\n 115.358511,\n 24.735064\n ],\n [\n 115.412714,\n 24.792654\n ],\n [\n 115.556227,\n 24.682883\n ],\n [\n 115.573474,\n 24.617083\n ],\n [\n 115.67264,\n 24.604028\n ],\n [\n 115.688038,\n 24.545261\n ],\n [\n 115.845103,\n 24.563221\n ],\n [\n 115.756408,\n 24.749192\n ],\n [\n 115.822313,\n 24.90884\n ],\n [\n 115.907313,\n 24.880075\n ],\n [\n 115.89253,\n 24.937056\n ],\n [\n 116.014486,\n 24.905584\n ],\n [\n 116.068073,\n 24.849675\n ],\n [\n 116.18079,\n 24.87519\n ],\n [\n 116.245464,\n 24.793197\n ],\n [\n 116.376659,\n 24.820353\n ],\n [\n 116.44626,\n 24.714412\n ],\n [\n 116.486912,\n 24.71876\n ],\n [\n 116.525716,\n 24.604572\n ],\n [\n 116.597165,\n 24.65461\n ],\n [\n 116.778867,\n 24.680165\n ],\n [\n 116.815207,\n 24.655154\n ],\n [\n 116.761005,\n 24.58281\n ],\n [\n 116.789338,\n 24.50988\n ],\n [\n 116.860787,\n 24.462507\n ],\n [\n 116.903903,\n 24.369888\n ],\n [\n 116.933468,\n 24.21992\n ],\n [\n 116.998757,\n 24.178988\n ],\n [\n 116.9347,\n 24.127123\n ],\n [\n 116.939627,\n 24.033713\n ],\n [\n 116.981511,\n 23.999282\n ],\n [\n 116.980279,\n 23.881709\n ],\n [\n 117.012308,\n 23.855446\n ],\n [\n 117.053576,\n 23.696657\n ],\n [\n 117.192778,\n 23.629799\n ],\n [\n 117.192778,\n 23.561809\n ],\n [\n 117.054192,\n 23.542064\n ],\n [\n 117.01046,\n 23.502564\n ],\n [\n 116.921765,\n 23.53219\n ],\n [\n 116.874953,\n 23.447683\n ],\n [\n 116.874338,\n 23.447683\n ],\n [\n 116.871258,\n 23.416391\n ],\n [\n 116.871874,\n 23.415842\n ],\n [\n 116.782563,\n 23.313679\n ],\n [\n 116.806584,\n 23.200989\n ],\n [\n 116.74499,\n 23.215286\n ],\n [\n 116.550969,\n 23.109668\n ],\n [\n 116.576839,\n 23.014429\n ],\n [\n 116.50539,\n 22.930696\n ],\n [\n 116.382818,\n 22.919124\n ],\n [\n 116.317528,\n 22.952736\n ],\n [\n 116.226985,\n 22.914715\n ],\n [\n 116.106877,\n 22.817685\n ],\n [\n 116.073616,\n 22.8425\n ],\n [\n 115.883291,\n 22.785142\n ],\n [\n 115.796444,\n 22.739349\n ],\n [\n 115.788437,\n 22.809964\n ],\n [\n 115.654162,\n 22.865657\n ],\n [\n 115.542677,\n 22.76142\n ],\n [\n 115.606119,\n 22.754799\n ],\n [\n 115.57409,\n 22.650477\n ],\n [\n 115.471844,\n 22.697956\n ],\n [\n 115.381301,\n 22.684156\n ],\n [\n 115.338185,\n 22.776867\n ],\n [\n 115.230396,\n 22.776867\n ],\n [\n 115.236555,\n 22.825406\n ],\n [\n 115.054853,\n 22.777419\n ],\n [\n 115.04007,\n 22.712307\n ],\n [\n 114.87623,\n 22.589724\n ],\n [\n 114.747499,\n 22.581437\n ],\n [\n 114.728405,\n 22.651029\n ],\n [\n 114.749963,\n 22.764179\n ],\n [\n 114.709927,\n 22.7879\n ],\n [\n 114.512826,\n 22.655446\n ],\n [\n 114.603369,\n 22.63888\n ],\n [\n 114.559022,\n 22.583094\n ],\n [\n 114.616304,\n 22.54276\n ],\n [\n 114.611377,\n 22.481959\n ],\n [\n 114.485109,\n 22.446572\n ],\n [\n 114.467863,\n 22.533365\n ],\n [\n 114.41058,\n 22.599667\n ],\n [\n 114.232574,\n 22.539997\n ],\n [\n 114.185762,\n 22.551601\n ],\n [\n 114.185762,\n 22.551601\n ],\n [\n 114.045944,\n 22.502413\n ],\n [\n 114.044096,\n 22.502413\n ],\n [\n 114.031778,\n 22.504071\n ],\n [\n 113.959097,\n 22.505177\n ],\n [\n 113.891959,\n 22.442701\n ],\n [\n 113.733663,\n 22.73659\n ],\n [\n 113.678228,\n 22.726104\n ],\n [\n 113.740438,\n 22.53447\n ],\n [\n 113.631417,\n 22.475877\n ],\n [\n 113.669605,\n 22.416154\n ],\n [\n 113.558736,\n 22.213012\n ],\n [\n 113.553809,\n 22.107727\n ],\n [\n 113.442324,\n 22.009575\n ],\n [\n 113.330223,\n 21.961861\n ],\n [\n 113.246455,\n 21.880266\n ],\n [\n 113.091854,\n 22.065591\n ],\n [\n 113.032724,\n 22.072799\n ],\n [\n 113.037652,\n 21.935223\n ],\n [\n 112.944645,\n 21.84195\n ],\n [\n 112.795587,\n 21.923567\n ],\n [\n 112.651458,\n 21.761954\n ],\n [\n 112.523342,\n 21.760842\n ],\n [\n 112.439574,\n 21.803624\n ],\n [\n 112.415553,\n 21.734723\n ],\n [\n 112.24001,\n 21.701371\n ],\n [\n 112.192583,\n 21.78918\n ],\n [\n 112.036134,\n 21.761398\n ],\n [\n 111.951135,\n 21.671904\n ],\n [\n 112.026895,\n 21.633533\n ],\n [\n 111.811316,\n 21.558985\n ],\n [\n 111.810084,\n 21.604609\n ],\n [\n 111.693672,\n 21.590144\n ],\n [\n 111.677658,\n 21.52949\n ],\n [\n 111.382623,\n 21.495534\n ],\n [\n 111.257587,\n 21.413675\n ],\n [\n 111.28284,\n 21.485513\n ],\n [\n 111.061102,\n 21.44932\n ],\n [\n 110.929291,\n 21.375792\n ],\n [\n 110.799328,\n 21.374678\n ],\n [\n 110.626249,\n 21.215797\n ],\n [\n 110.422373,\n 21.190695\n ],\n [\n 110.388497,\n 21.125968\n ],\n [\n 110.296722,\n 21.093594\n ],\n [\n 110.180925,\n 20.981905\n ],\n [\n 110.201251,\n 20.867337\n ],\n [\n 110.390344,\n 20.820367\n ],\n [\n 110.392192,\n 20.682727\n ],\n [\n 110.466105,\n 20.680488\n ],\n [\n 110.548025,\n 20.477715\n ],\n [\n 110.545561,\n 20.42726\n ],\n [\n 110.452554,\n 20.311151\n ],\n [\n 110.349076,\n 20.258958\n ],\n [\n 110.118099,\n 20.219661\n ],\n [\n 110.082375,\n 20.258958\n ],\n [\n 109.910528,\n 20.224152\n ],\n [\n 109.916071,\n 20.316762\n ],\n [\n 109.861252,\n 20.376789\n ],\n [\n 109.888354,\n 20.475473\n ],\n [\n 109.839695,\n 20.489485\n ],\n [\n 109.793499,\n 20.61554\n ],\n [\n 109.74484,\n 20.62114\n ],\n [\n 109.730057,\n 20.719667\n ],\n [\n 109.654913,\n 20.903673\n ],\n [\n 109.674623,\n 21.136572\n ],\n [\n 109.763934,\n 21.226395\n ],\n [\n 109.757775,\n 21.346816\n ],\n [\n 109.868644,\n 21.365763\n ],\n [\n 109.894513,\n 21.44208\n ],\n [\n 109.785492,\n 21.457116\n ]\n ]\n ],\n [\n [\n [\n 117.100387,\n 23.401566\n ],\n [\n 116.946402,\n 23.421881\n ],\n [\n 117.129336,\n 23.483358\n ],\n [\n 117.100387,\n 23.401566\n ]\n ]\n ],\n [\n [\n [\n 112.853486,\n 21.74028\n ],\n [\n 112.804826,\n 21.686361\n ],\n [\n 112.817145,\n 21.590144\n ],\n [\n 112.730914,\n 21.613509\n ],\n [\n 112.782037,\n 21.665788\n ],\n [\n 112.70566,\n 21.679133\n ],\n [\n 112.831312,\n 21.77529\n ],\n [\n 112.853486,\n 21.74028\n ]\n ]\n ],\n [\n [\n [\n 112.625588,\n 21.616847\n ],\n [\n 112.535045,\n 21.628527\n ],\n [\n 112.663776,\n 21.714157\n ],\n [\n 112.625588,\n 21.616847\n ]\n ]\n ],\n [\n [\n [\n 110.495054,\n 21.075171\n ],\n [\n 110.560344,\n 21.061213\n ],\n [\n 110.535706,\n 20.923235\n ],\n [\n 110.47288,\n 20.983022\n ],\n [\n 110.347845,\n 20.984698\n ],\n [\n 110.201251,\n 20.938324\n ],\n [\n 110.211106,\n 20.986933\n ],\n [\n 110.305961,\n 21.088012\n ],\n [\n 110.495054,\n 21.075171\n ]\n ]\n ],\n [\n [\n [\n 110.501829,\n 21.142711\n ],\n [\n 110.431612,\n 21.181211\n ],\n [\n 110.634256,\n 21.21022\n ],\n [\n 110.582517,\n 21.094711\n ],\n [\n 110.501829,\n 21.142711\n ]\n ]\n ],\n [\n [\n [\n 116.769628,\n 20.771704\n ],\n [\n 116.88604,\n 20.77562\n ],\n [\n 116.934084,\n 20.67657\n ],\n [\n 116.862635,\n 20.588657\n ],\n [\n 116.749302,\n 20.600979\n ],\n [\n 116.849084,\n 20.62842\n ],\n [\n 116.87249,\n 20.738134\n ],\n [\n 116.769628,\n 20.771704\n ]\n ]\n ],\n [\n [\n [\n 110.598532,\n 20.857273\n ],\n [\n 110.548641,\n 20.908703\n ],\n [\n 110.584365,\n 20.948941\n ],\n [\n 110.646575,\n 20.917087\n ],\n [\n 110.598532,\n 20.857273\n ]\n ]\n ],\n [\n [\n [\n 115.943037,\n 21.097502\n ],\n [\n 116.044051,\n 21.11034\n ],\n [\n 116.067457,\n 21.040552\n ],\n [\n 115.989233,\n 21.035526\n ],\n [\n 115.943037,\n 21.097502\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 450000,\n \"name\": \"广西壮族自治区\",\n \"center\": [\n 108.320004,\n 22.82402\n ],\n \"centroid\": [\n 108.794237,\n 23.833575\n ],\n \"childrenNum\": 14,\n \"level\": \"province\",\n \"subFeatureIndex\": 19,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 112.024431,\n 24.739955\n ],\n [\n 111.961606,\n 24.720934\n ],\n [\n 111.937584,\n 24.595323\n ],\n [\n 112.007185,\n 24.534376\n ],\n [\n 111.985011,\n 24.467953\n ],\n [\n 112.057692,\n 24.387327\n ],\n [\n 112.029975,\n 24.297925\n ],\n [\n 111.939432,\n 24.230287\n ],\n [\n 111.877838,\n 24.229196\n ],\n [\n 111.878454,\n 24.110195\n ],\n [\n 111.940664,\n 23.987803\n ],\n [\n 111.812548,\n 23.887727\n ],\n [\n 111.8107,\n 23.806735\n ],\n [\n 111.664723,\n 23.83465\n ],\n [\n 111.621607,\n 23.725692\n ],\n [\n 111.667187,\n 23.718023\n ],\n [\n 111.615448,\n 23.639117\n ],\n [\n 111.487332,\n 23.62651\n ],\n [\n 111.479941,\n 23.532738\n ],\n [\n 111.399869,\n 23.469638\n ],\n [\n 111.353673,\n 23.28895\n ],\n [\n 111.388782,\n 23.210337\n ],\n [\n 111.377695,\n 23.082149\n ],\n [\n 111.433746,\n 23.036456\n ],\n [\n 111.363528,\n 22.968713\n ],\n [\n 111.358601,\n 22.889362\n ],\n [\n 111.202152,\n 22.740452\n ],\n [\n 111.056791,\n 22.72776\n ],\n [\n 111.055559,\n 22.648268\n ],\n [\n 110.778386,\n 22.585304\n ],\n [\n 110.711249,\n 22.369684\n ],\n [\n 110.785777,\n 22.294415\n ],\n [\n 110.725415,\n 22.295522\n ],\n [\n 110.646575,\n 22.222982\n ],\n [\n 110.629329,\n 22.149296\n ],\n [\n 110.560344,\n 22.196393\n ],\n [\n 110.488895,\n 22.144863\n ],\n [\n 110.414366,\n 22.20858\n ],\n [\n 110.350924,\n 22.072799\n ],\n [\n 110.350924,\n 22.072799\n ],\n [\n 110.355236,\n 22.061709\n ],\n [\n 110.355236,\n 22.061709\n ],\n [\n 110.388497,\n 21.89026\n ],\n [\n 110.200019,\n 21.898587\n ],\n [\n 110.200019,\n 21.898587\n ],\n [\n 110.119947,\n 21.901918\n ],\n [\n 110.051578,\n 21.856945\n ],\n [\n 109.94502,\n 21.844172\n ],\n [\n 109.940709,\n 21.734723\n ],\n [\n 109.898209,\n 21.649661\n ],\n [\n 109.742992,\n 21.61629\n ],\n [\n 109.785492,\n 21.457116\n ],\n [\n 109.704188,\n 21.462684\n ],\n [\n 109.612413,\n 21.55676\n ],\n [\n 109.540964,\n 21.466025\n ],\n [\n 109.245929,\n 21.425929\n ],\n [\n 109.138756,\n 21.389163\n ],\n [\n 109.042669,\n 21.464355\n ],\n [\n 109.150459,\n 21.523924\n ],\n [\n 109.142451,\n 21.56455\n ],\n [\n 108.937959,\n 21.589588\n ],\n [\n 108.881293,\n 21.627415\n ],\n [\n 108.74517,\n 21.599046\n ],\n [\n 108.710062,\n 21.646881\n ],\n [\n 108.591802,\n 21.677465\n ],\n [\n 108.479085,\n 21.546743\n ],\n [\n 108.338651,\n 21.541177\n ],\n [\n 108.230245,\n 21.49108\n ],\n [\n 108.235173,\n 21.60294\n ],\n [\n 108.106441,\n 21.508895\n ],\n [\n 108.030681,\n 21.546186\n ],\n [\n 107.956768,\n 21.535055\n ],\n [\n 107.860066,\n 21.651886\n ],\n [\n 107.546553,\n 21.58625\n ],\n [\n 107.46956,\n 21.659671\n ],\n [\n 107.388256,\n 21.594039\n ],\n [\n 107.310648,\n 21.733611\n ],\n [\n 107.247206,\n 21.703039\n ],\n [\n 107.088294,\n 21.805291\n ],\n [\n 107.011917,\n 21.826399\n ],\n [\n 107.05996,\n 21.915241\n ],\n [\n 106.999598,\n 21.947433\n ],\n [\n 106.73844,\n 22.007911\n ],\n [\n 106.681158,\n 21.995152\n ],\n [\n 106.717498,\n 22.074463\n ],\n [\n 106.673151,\n 22.182543\n ],\n [\n 106.7021,\n 22.206918\n ],\n [\n 106.663296,\n 22.330948\n ],\n [\n 106.562282,\n 22.34589\n ],\n [\n 106.562282,\n 22.462608\n ],\n [\n 106.61402,\n 22.601876\n ],\n [\n 106.710723,\n 22.57536\n ],\n [\n 106.768621,\n 22.739349\n ],\n [\n 106.841302,\n 22.799484\n ],\n [\n 106.606013,\n 22.925737\n ],\n [\n 106.366413,\n 22.857939\n ],\n [\n 106.286957,\n 22.86676\n ],\n [\n 106.206885,\n 22.978629\n ],\n [\n 106.019639,\n 22.990747\n ],\n [\n 105.994385,\n 22.93786\n ],\n [\n 105.893987,\n 22.936758\n ],\n [\n 105.724604,\n 23.062332\n ],\n [\n 105.574931,\n 23.066186\n ],\n [\n 105.542902,\n 23.18449\n ],\n [\n 105.531815,\n 23.248275\n ],\n [\n 105.694423,\n 23.363122\n ],\n [\n 105.699966,\n 23.401566\n ],\n [\n 105.815763,\n 23.506953\n ],\n [\n 105.89214,\n 23.525058\n ],\n [\n 105.999929,\n 23.447683\n ],\n [\n 106.141595,\n 23.569487\n ],\n [\n 106.120653,\n 23.605129\n ],\n [\n 106.157609,\n 23.724048\n ],\n [\n 106.136667,\n 23.795238\n ],\n [\n 106.192102,\n 23.824798\n ],\n [\n 106.04982,\n 24.089986\n ],\n [\n 105.933407,\n 24.123847\n ],\n [\n 105.89214,\n 24.040271\n ],\n [\n 105.704278,\n 24.066497\n ],\n [\n 105.649459,\n 24.033167\n ],\n [\n 105.628518,\n 24.126577\n ],\n [\n 105.529967,\n 24.129308\n ],\n [\n 105.481924,\n 24.018958\n ],\n [\n 105.320548,\n 24.116202\n ],\n [\n 105.260186,\n 24.061033\n ],\n [\n 105.20044,\n 24.105279\n ],\n [\n 105.229389,\n 24.165888\n ],\n [\n 105.164715,\n 24.288109\n ],\n [\n 105.188121,\n 24.346995\n ],\n [\n 105.063085,\n 24.429281\n ],\n [\n 105.063085,\n 24.429281\n ],\n [\n 104.979933,\n 24.412937\n ],\n [\n 104.83642,\n 24.446712\n ],\n [\n 104.72863,\n 24.446167\n ],\n [\n 104.70892,\n 24.321372\n ],\n [\n 104.610986,\n 24.376973\n ],\n [\n 104.492109,\n 24.656241\n ],\n [\n 104.529682,\n 24.73126\n ],\n [\n 104.63316,\n 24.65896\n ],\n [\n 104.743413,\n 24.621978\n ],\n [\n 104.841963,\n 24.676359\n ],\n [\n 104.899245,\n 24.752996\n ],\n [\n 105.03352,\n 24.787765\n ],\n [\n 105.077868,\n 24.918065\n ],\n [\n 105.082179,\n 24.915895\n ],\n [\n 105.096346,\n 24.928375\n ],\n [\n 105.09573,\n 24.928375\n ],\n [\n 105.198592,\n 24.995095\n ],\n [\n 105.265729,\n 24.930003\n ],\n [\n 105.365511,\n 24.943566\n ],\n [\n 105.445584,\n 24.918608\n ],\n [\n 105.500402,\n 24.807862\n ],\n [\n 105.70551,\n 24.768752\n ],\n [\n 105.827466,\n 24.702997\n ],\n [\n 105.942031,\n 24.724738\n ],\n [\n 106.023335,\n 24.632313\n ],\n [\n 106.045508,\n 24.681796\n ],\n [\n 106.173008,\n 24.760059\n ],\n [\n 106.206269,\n 24.851304\n ],\n [\n 106.146522,\n 24.948449\n ],\n [\n 106.215508,\n 24.982079\n ],\n [\n 106.304819,\n 24.973944\n ],\n [\n 106.590615,\n 25.087791\n ],\n [\n 106.684238,\n 25.178252\n ],\n [\n 106.732281,\n 25.162548\n ],\n [\n 106.900432,\n 25.194495\n ],\n [\n 106.912751,\n 25.243212\n ],\n [\n 107.013765,\n 25.275138\n ],\n [\n 107.012533,\n 25.353024\n ],\n [\n 106.963874,\n 25.437884\n ],\n [\n 107.066736,\n 25.509186\n ],\n [\n 107.064272,\n 25.559395\n ],\n [\n 107.228728,\n 25.604728\n ],\n [\n 107.336517,\n 25.461116\n ],\n [\n 107.318039,\n 25.401677\n ],\n [\n 107.420901,\n 25.393029\n ],\n [\n 107.432604,\n 25.289205\n ],\n [\n 107.481263,\n 25.300024\n ],\n [\n 107.472024,\n 25.213984\n ],\n [\n 107.599523,\n 25.250789\n ],\n [\n 107.659885,\n 25.316251\n ],\n [\n 107.700537,\n 25.193954\n ],\n [\n 107.741805,\n 25.239965\n ],\n [\n 107.841587,\n 25.115966\n ],\n [\n 108.001732,\n 25.196661\n ],\n [\n 108.115065,\n 25.210195\n ],\n [\n 108.152021,\n 25.324364\n ],\n [\n 108.142782,\n 25.390867\n ],\n [\n 108.348506,\n 25.536183\n ],\n [\n 108.418723,\n 25.443287\n ],\n [\n 108.471693,\n 25.458955\n ],\n [\n 108.625062,\n 25.308138\n ],\n [\n 108.6072,\n 25.491904\n ],\n [\n 108.68912,\n 25.623072\n ],\n [\n 108.763649,\n 25.637097\n ],\n [\n 108.781511,\n 25.554537\n ],\n [\n 108.949046,\n 25.557236\n ],\n [\n 109.025423,\n 25.512426\n ],\n [\n 109.088249,\n 25.550758\n ],\n [\n 109.030966,\n 25.629545\n ],\n [\n 109.07901,\n 25.720679\n ],\n [\n 109.000785,\n 25.73631\n ],\n [\n 108.953974,\n 25.686714\n ],\n [\n 108.953974,\n 25.686714\n ],\n [\n 108.896076,\n 25.71421\n ],\n [\n 108.989698,\n 25.778881\n ],\n [\n 109.143683,\n 25.795044\n ],\n [\n 109.147995,\n 25.7417\n ],\n [\n 109.3414,\n 25.732537\n ],\n [\n 109.339552,\n 25.834363\n ],\n [\n 109.435022,\n 25.933411\n ],\n [\n 109.408537,\n 25.967305\n ],\n [\n 109.48245,\n 26.029687\n ],\n [\n 109.513247,\n 25.997962\n ],\n [\n 109.635203,\n 26.047428\n ],\n [\n 109.730057,\n 25.989895\n ],\n [\n 109.685094,\n 25.880129\n ],\n [\n 109.806434,\n 25.874746\n ],\n [\n 109.783028,\n 25.988282\n ],\n [\n 109.864332,\n 26.027537\n ],\n [\n 109.906832,\n 26.143611\n ],\n [\n 109.965962,\n 26.195699\n ],\n [\n 110.099005,\n 26.16939\n ],\n [\n 110.065128,\n 26.051191\n ],\n [\n 110.165527,\n 26.023773\n ],\n [\n 110.201251,\n 26.066241\n ],\n [\n 110.257301,\n 25.961388\n ],\n [\n 110.325671,\n 25.975373\n ],\n [\n 110.373098,\n 26.08935\n ],\n [\n 110.516612,\n 26.186035\n ],\n [\n 110.555416,\n 26.286396\n ],\n [\n 110.612083,\n 26.333594\n ],\n [\n 110.76114,\n 26.248838\n ],\n [\n 110.939146,\n 26.28425\n ],\n [\n 110.94469,\n 26.373805\n ],\n [\n 111.092515,\n 26.306779\n ],\n [\n 111.204616,\n 26.307852\n ],\n [\n 111.279761,\n 26.271911\n ],\n [\n 111.267442,\n 26.058716\n ],\n [\n 111.189834,\n 25.953318\n ],\n [\n 111.252043,\n 25.864517\n ],\n [\n 111.346282,\n 25.906504\n ],\n [\n 111.49226,\n 25.868824\n ],\n [\n 111.43313,\n 25.84621\n ],\n [\n 111.442369,\n 25.771877\n ],\n [\n 111.30871,\n 25.72014\n ],\n [\n 111.343202,\n 25.602569\n ],\n [\n 111.301319,\n 25.450851\n ],\n [\n 111.103602,\n 25.284877\n ],\n [\n 111.112841,\n 25.217232\n ],\n [\n 110.998892,\n 25.161465\n ],\n [\n 110.951465,\n 25.043891\n ],\n [\n 110.991501,\n 24.924034\n ],\n [\n 111.100522,\n 24.945736\n ],\n [\n 111.101754,\n 25.035218\n ],\n [\n 111.200921,\n 25.074786\n ],\n [\n 111.274833,\n 25.151175\n ],\n [\n 111.321645,\n 25.10513\n ],\n [\n 111.435593,\n 25.09321\n ],\n [\n 111.43313,\n 24.97991\n ],\n [\n 111.470086,\n 24.928917\n ],\n [\n 111.479325,\n 24.797543\n ],\n [\n 111.431282,\n 24.687776\n ],\n [\n 111.570484,\n 24.644821\n ],\n [\n 111.68936,\n 24.778531\n ],\n [\n 111.951135,\n 24.769839\n ],\n [\n 112.024431,\n 24.739955\n ]\n ]\n ],\n [\n [\n [\n 105.082179,\n 24.915895\n ],\n [\n 105.077868,\n 24.918065\n ],\n [\n 105.09573,\n 24.928375\n ],\n [\n 105.096346,\n 24.928375\n ],\n [\n 105.082179,\n 24.915895\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 460000,\n \"name\": \"海南省\",\n \"center\": [\n 110.33119,\n 20.031971\n ],\n \"centroid\": [\n 109.754777,\n 19.189617\n ],\n \"childrenNum\": 19,\n \"level\": \"province\",\n \"subFeatureIndex\": 20,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 109.231147,\n 19.863293\n ],\n [\n 109.300748,\n 19.917868\n ],\n [\n 109.498464,\n 19.873422\n ],\n [\n 109.585312,\n 19.98817\n ],\n [\n 109.712195,\n 20.017406\n ],\n [\n 109.76147,\n 19.981422\n ],\n [\n 109.965346,\n 19.993792\n ],\n [\n 110.106396,\n 20.026963\n ],\n [\n 110.144585,\n 20.074176\n ],\n [\n 110.291178,\n 20.056754\n ],\n [\n 110.318279,\n 20.109015\n ],\n [\n 110.526467,\n 20.0753\n ],\n [\n 110.562191,\n 20.109577\n ],\n [\n 110.717408,\n 20.148901\n ],\n [\n 110.744509,\n 20.074176\n ],\n [\n 110.871393,\n 20.011784\n ],\n [\n 110.969327,\n 20.010097\n ],\n [\n 111.071573,\n 19.629025\n ],\n [\n 110.920668,\n 19.552926\n ],\n [\n 110.844292,\n 19.450278\n ],\n [\n 110.729727,\n 19.378611\n ],\n [\n 110.619474,\n 19.152118\n ],\n [\n 110.578206,\n 18.78489\n ],\n [\n 110.499366,\n 18.751466\n ],\n [\n 110.495054,\n 18.65002\n ],\n [\n 110.329366,\n 18.64265\n ],\n [\n 110.246215,\n 18.609764\n ],\n [\n 110.117483,\n 18.507666\n ],\n [\n 110.090382,\n 18.399262\n ],\n [\n 110.022629,\n 18.360083\n ],\n [\n 109.919767,\n 18.375415\n ],\n [\n 109.785492,\n 18.339639\n ],\n [\n 109.749767,\n 18.193617\n ],\n [\n 109.584696,\n 18.143589\n ],\n [\n 109.355566,\n 18.215216\n ],\n [\n 109.287813,\n 18.264655\n ],\n [\n 109.138756,\n 18.268064\n ],\n [\n 109.117814,\n 18.322032\n ],\n [\n 108.944735,\n 18.31408\n ],\n [\n 108.888068,\n 18.412319\n ],\n [\n 108.68912,\n 18.447513\n ],\n [\n 108.644772,\n 18.486672\n ],\n [\n 108.663866,\n 18.673261\n ],\n [\n 108.593033,\n 18.809246\n ],\n [\n 108.637997,\n 18.920785\n ],\n [\n 108.591186,\n 19.14477\n ],\n [\n 108.609048,\n 19.276417\n ],\n [\n 108.663866,\n 19.374095\n ],\n [\n 108.765496,\n 19.401187\n ],\n [\n 109.048829,\n 19.620007\n ],\n [\n 109.169553,\n 19.736628\n ],\n [\n 109.159082,\n 19.790684\n ],\n [\n 109.231147,\n 19.863293\n ]\n ]\n ],\n [\n [\n [\n 113.896887,\n 7.607259\n ],\n [\n 114.029314,\n 7.670119\n ],\n [\n 114.211632,\n 7.786918\n ],\n [\n 114.268298,\n 7.870496\n ],\n [\n 114.414892,\n 7.952872\n ],\n [\n 114.540543,\n 7.945761\n ],\n [\n 114.540543,\n 7.862199\n ],\n [\n 114.419819,\n 7.765577\n ],\n [\n 114.368696,\n 7.63869\n ],\n [\n 114.157429,\n 7.56159\n ],\n [\n 113.98743,\n 7.536085\n ],\n [\n 113.896887,\n 7.607259\n ]\n ]\n ],\n [\n [\n [\n 111.660411,\n 16.258092\n ],\n [\n 111.606825,\n 16.17766\n ],\n [\n 111.569252,\n 16.195472\n ],\n [\n 111.660411,\n 16.258092\n ]\n ]\n ],\n [\n [\n [\n 113.976959,\n 8.872658\n ],\n [\n 114.060111,\n 8.816493\n ],\n [\n 114.037321,\n 8.781016\n ],\n [\n 113.976959,\n 8.872658\n ]\n ]\n ],\n [\n [\n [\n 112.067547,\n 16.319543\n ],\n [\n 111.97454,\n 16.323563\n ],\n [\n 112.047221,\n 16.360309\n ],\n [\n 112.067547,\n 16.319543\n ]\n ]\n ],\n [\n [\n [\n 115.837712,\n 9.709358\n ],\n [\n 115.925791,\n 9.7813\n ],\n [\n 115.901153,\n 9.671021\n ],\n [\n 115.837712,\n 9.709358\n ]\n ]\n ],\n [\n [\n [\n 109.463972,\n 7.344453\n ],\n [\n 109.536037,\n 7.448882\n ],\n [\n 109.653065,\n 7.559218\n ],\n [\n 109.72205,\n 7.575825\n ],\n [\n 109.904984,\n 7.551507\n ],\n [\n 109.938861,\n 7.504647\n ],\n [\n 109.791651,\n 7.524815\n ],\n [\n 109.654297,\n 7.479138\n ],\n [\n 109.513247,\n 7.320122\n ],\n [\n 109.463972,\n 7.344453\n ]\n ]\n ],\n [\n [\n [\n 112.527654,\n 16.058099\n ],\n [\n 112.607726,\n 16.066724\n ],\n [\n 112.570154,\n 16.010945\n ],\n [\n 112.448814,\n 16.005194\n ],\n [\n 112.527654,\n 16.058099\n ]\n ]\n ],\n [\n [\n [\n 114.469095,\n 10.83618\n ],\n [\n 114.587355,\n 10.90904\n ],\n [\n 114.565181,\n 10.836767\n ],\n [\n 114.469095,\n 10.83618\n ]\n ]\n ],\n [\n [\n [\n 112.383524,\n 16.266134\n ],\n [\n 112.528886,\n 16.318395\n ],\n [\n 112.538741,\n 16.289107\n ],\n [\n 112.383524,\n 16.266134\n ]\n ]\n ],\n [\n [\n [\n 116.48876,\n 10.395704\n ],\n [\n 116.514629,\n 10.349208\n ],\n [\n 116.637817,\n 10.3651\n ],\n [\n 116.566368,\n 10.304472\n ],\n [\n 116.467202,\n 10.309182\n ],\n [\n 116.48876,\n 10.395704\n ]\n ]\n ],\n [\n [\n [\n 115.16757,\n 8.386402\n ],\n [\n 115.315395,\n 8.356213\n ],\n [\n 115.285214,\n 8.314772\n ],\n [\n 115.18112,\n 8.345557\n ],\n [\n 115.16757,\n 8.386402\n ]\n ]\n ],\n [\n [\n [\n 109.936397,\n 7.848566\n ],\n [\n 109.953027,\n 7.888869\n ],\n [\n 110.078063,\n 7.949317\n ],\n [\n 110.050346,\n 7.846195\n ],\n [\n 109.988136,\n 7.812408\n ],\n [\n 109.936397,\n 7.848566\n ]\n ]\n ],\n [\n [\n [\n 114.696992,\n 11.004203\n ],\n [\n 114.766593,\n 11.110489\n ],\n [\n 114.793079,\n 11.076435\n ],\n [\n 114.696992,\n 11.004203\n ]\n ]\n ],\n [\n [\n [\n 110.459946,\n 8.116389\n ],\n [\n 110.568351,\n 8.172657\n ],\n [\n 110.554184,\n 8.09388\n ],\n [\n 110.471032,\n 8.071962\n ],\n [\n 110.459946,\n 8.116389\n ]\n ]\n ],\n [\n [\n [\n 117.266691,\n 10.691581\n ],\n [\n 117.369553,\n 10.742727\n ],\n [\n 117.404661,\n 10.671002\n ],\n [\n 117.266691,\n 10.691581\n ]\n ]\n ],\n [\n [\n [\n 113.80696,\n 19.223319\n ],\n [\n 113.920293,\n 19.223319\n ],\n [\n 113.874097,\n 19.151553\n ],\n [\n 113.80696,\n 19.223319\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 500000,\n \"name\": \"重庆市\",\n \"center\": [\n 106.504962,\n 29.533155\n ],\n \"centroid\": [\n 107.88398,\n 30.067321\n ],\n \"childrenNum\": 38,\n \"level\": \"province\",\n \"subFeatureIndex\": 21,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 109.09256,\n 30.578762\n ],\n [\n 109.114734,\n 30.64416\n ],\n [\n 108.971836,\n 30.627686\n ],\n [\n 108.808612,\n 30.491153\n ],\n [\n 108.743939,\n 30.494762\n ],\n [\n 108.688504,\n 30.587519\n ],\n [\n 108.56778,\n 30.468464\n ],\n [\n 108.42673,\n 30.492184\n ],\n [\n 108.402092,\n 30.376626\n ],\n [\n 108.460606,\n 30.35959\n ],\n [\n 108.581947,\n 30.255763\n ],\n [\n 108.56778,\n 30.157517\n ],\n [\n 108.513577,\n 30.057619\n ],\n [\n 108.542526,\n 29.998047\n ],\n [\n 108.516041,\n 29.885539\n ],\n [\n 108.371295,\n 29.841434\n ],\n [\n 108.424266,\n 29.816\n ],\n [\n 108.437201,\n 29.741218\n ],\n [\n 108.504338,\n 29.707964\n ],\n [\n 108.602273,\n 29.865824\n ],\n [\n 108.666946,\n 29.842472\n ],\n [\n 108.690968,\n 29.689773\n ],\n [\n 108.785822,\n 29.633622\n ],\n [\n 108.844337,\n 29.658582\n ],\n [\n 108.91209,\n 29.571714\n ],\n [\n 108.880677,\n 29.442576\n ],\n [\n 108.927488,\n 29.435281\n ],\n [\n 108.919481,\n 29.326314\n ],\n [\n 109.11227,\n 29.360737\n ],\n [\n 109.110422,\n 29.215143\n ],\n [\n 109.232378,\n 29.119533\n ],\n [\n 109.319842,\n 29.042667\n ],\n [\n 109.235458,\n 28.882476\n ],\n [\n 109.241002,\n 28.776594\n ],\n [\n 109.2989,\n 28.747221\n ],\n [\n 109.201581,\n 28.598133\n ],\n [\n 109.304443,\n 28.623871\n ],\n [\n 109.321074,\n 28.581322\n ],\n [\n 109.274262,\n 28.494592\n ],\n [\n 109.191726,\n 28.470927\n ],\n [\n 109.152306,\n 28.349885\n ],\n [\n 109.081473,\n 28.249264\n ],\n [\n 109.086401,\n 28.184942\n ],\n [\n 109.026655,\n 28.220271\n ],\n [\n 109.006329,\n 28.163317\n ],\n [\n 108.922561,\n 28.217635\n ],\n [\n 108.772888,\n 28.21289\n ],\n [\n 108.726692,\n 28.282463\n ],\n [\n 108.764881,\n 28.306698\n ],\n [\n 108.779663,\n 28.425158\n ],\n [\n 108.710678,\n 28.500902\n ],\n [\n 108.640461,\n 28.457251\n ],\n [\n 108.688504,\n 28.422527\n ],\n [\n 108.668178,\n 28.334614\n ],\n [\n 108.611512,\n 28.324607\n ],\n [\n 108.577019,\n 28.534024\n ],\n [\n 108.636149,\n 28.621245\n ],\n [\n 108.565316,\n 28.662204\n ],\n [\n 108.471077,\n 28.627548\n ],\n [\n 108.332491,\n 28.679528\n ],\n [\n 108.385462,\n 28.772398\n ],\n [\n 108.352817,\n 28.815395\n ],\n [\n 108.350353,\n 28.933282\n ],\n [\n 108.268433,\n 29.089734\n ],\n [\n 108.256115,\n 29.040574\n ],\n [\n 108.068253,\n 29.086597\n ],\n [\n 108.024521,\n 29.038482\n ],\n [\n 107.930899,\n 29.035343\n ],\n [\n 107.867457,\n 28.960508\n ],\n [\n 107.784921,\n 29.04842\n ],\n [\n 107.810791,\n 29.138348\n ],\n [\n 107.751044,\n 29.199997\n ],\n [\n 107.701769,\n 29.142006\n ],\n [\n 107.589052,\n 29.149845\n ],\n [\n 107.570574,\n 29.218276\n ],\n [\n 107.486806,\n 29.174402\n ],\n [\n 107.404271,\n 29.187984\n ],\n [\n 107.412894,\n 29.095485\n ],\n [\n 107.36485,\n 29.010753\n ],\n [\n 107.441227,\n 28.943755\n ],\n [\n 107.383945,\n 28.848417\n ],\n [\n 107.219489,\n 28.772923\n ],\n [\n 107.191156,\n 28.888763\n ],\n [\n 107.057497,\n 28.895049\n ],\n [\n 106.983584,\n 28.851561\n ],\n [\n 106.986664,\n 28.793899\n ],\n [\n 106.986664,\n 28.793899\n ],\n [\n 106.926302,\n 28.809104\n ],\n [\n 106.824056,\n 28.756139\n ],\n [\n 106.883186,\n 28.69265\n ],\n [\n 106.866556,\n 28.624397\n ],\n [\n 106.73844,\n 28.554522\n ],\n [\n 106.7446,\n 28.465667\n ],\n [\n 106.632499,\n 28.503531\n ],\n [\n 106.564745,\n 28.485127\n ],\n [\n 106.63681,\n 28.623346\n ],\n [\n 106.562897,\n 28.753516\n ],\n [\n 106.45326,\n 28.816968\n ],\n [\n 106.504999,\n 28.662204\n ],\n [\n 106.484057,\n 28.530344\n ],\n [\n 106.395978,\n 28.570287\n ],\n [\n 106.37442,\n 28.525613\n ],\n [\n 106.304203,\n 28.650653\n ],\n [\n 106.248152,\n 28.829024\n ],\n [\n 106.173008,\n 28.92019\n ],\n [\n 106.048588,\n 28.906573\n ],\n [\n 106.043661,\n 28.954226\n ],\n [\n 105.970364,\n 28.966267\n ],\n [\n 105.88906,\n 28.909716\n ],\n [\n 105.762176,\n 28.991391\n ],\n [\n 105.693807,\n 29.267351\n ],\n [\n 105.518264,\n 29.264219\n ],\n [\n 105.427721,\n 29.316924\n ],\n [\n 105.428337,\n 29.417562\n ],\n [\n 105.380294,\n 29.456643\n ],\n [\n 105.380294,\n 29.456643\n ],\n [\n 105.324859,\n 29.448828\n ],\n [\n 105.289751,\n 29.552979\n ],\n [\n 105.38399,\n 29.67002\n ],\n [\n 105.476996,\n 29.674699\n ],\n [\n 105.575547,\n 29.745374\n ],\n [\n 105.619894,\n 29.846624\n ],\n [\n 105.709206,\n 29.840396\n ],\n [\n 105.70243,\n 29.924957\n ],\n [\n 105.753553,\n 30.018254\n ],\n [\n 105.687648,\n 30.038974\n ],\n [\n 105.582938,\n 30.123884\n ],\n [\n 105.582938,\n 30.127507\n ],\n [\n 105.580474,\n 30.129577\n ],\n [\n 105.574315,\n 30.130611\n ],\n [\n 105.56138,\n 30.183898\n ],\n [\n 105.571235,\n 30.17976\n ],\n [\n 105.642684,\n 30.186484\n ],\n [\n 105.624822,\n 30.275917\n ],\n [\n 105.720292,\n 30.252662\n ],\n [\n 105.720292,\n 30.252662\n ],\n [\n 105.714749,\n 30.322927\n ],\n [\n 105.792357,\n 30.427199\n ],\n [\n 105.881053,\n 30.387465\n ],\n [\n 106.031958,\n 30.373529\n ],\n [\n 106.10587,\n 30.310531\n ],\n [\n 106.17116,\n 30.306399\n ],\n [\n 106.180399,\n 30.23302\n ],\n [\n 106.256776,\n 30.19631\n ],\n [\n 106.262935,\n 30.211306\n ],\n [\n 106.428623,\n 30.254729\n ],\n [\n 106.451412,\n 30.307949\n ],\n [\n 106.451412,\n 30.307949\n ],\n [\n 106.610941,\n 30.292451\n ],\n [\n 106.610941,\n 30.292451\n ],\n [\n 106.612789,\n 30.235605\n ],\n [\n 106.612789,\n 30.235605\n ],\n [\n 106.612173,\n 30.235605\n ],\n [\n 106.612173,\n 30.235605\n ],\n [\n 106.611557,\n 30.235605\n ],\n [\n 106.612173,\n 30.235605\n ],\n [\n 106.611557,\n 30.235605\n ],\n [\n 106.677462,\n 30.157\n ],\n [\n 106.726121,\n 30.033277\n ],\n [\n 106.825904,\n 30.031205\n ],\n [\n 106.825904,\n 30.031205\n ],\n [\n 106.913367,\n 30.025506\n ],\n [\n 106.974345,\n 30.082992\n ],\n [\n 106.976193,\n 30.083509\n ],\n [\n 106.980504,\n 30.085062\n ],\n [\n 106.981736,\n 30.085062\n ],\n [\n 107.053801,\n 30.043636\n ],\n [\n 107.054417,\n 30.041046\n ],\n [\n 107.055649,\n 30.040528\n ],\n [\n 107.058113,\n 30.043118\n ],\n [\n 107.221337,\n 30.213891\n ],\n [\n 107.359923,\n 30.456087\n ],\n [\n 107.516987,\n 30.644675\n ],\n [\n 107.424597,\n 30.740889\n ],\n [\n 107.514524,\n 30.854986\n ],\n [\n 107.645103,\n 30.821079\n ],\n [\n 107.739957,\n 30.884259\n ],\n [\n 107.763979,\n 30.816968\n ],\n [\n 107.85329,\n 30.793842\n ],\n [\n 107.994956,\n 30.90839\n ],\n [\n 107.943833,\n 30.989466\n ],\n [\n 108.053471,\n 31.040745\n ],\n [\n 108.009123,\n 31.10839\n ],\n [\n 108.083652,\n 31.185713\n ],\n [\n 108.095354,\n 31.268088\n ],\n [\n 108.185898,\n 31.337104\n ],\n [\n 108.153869,\n 31.371338\n ],\n [\n 108.216079,\n 31.410666\n ],\n [\n 108.191441,\n 31.492333\n ],\n [\n 108.34173,\n 31.509679\n ],\n [\n 108.391621,\n 31.593298\n ],\n [\n 108.517889,\n 31.665131\n ],\n [\n 108.535135,\n 31.757769\n ],\n [\n 108.343578,\n 31.860987\n ],\n [\n 108.259194,\n 31.966628\n ],\n [\n 108.373759,\n 32.077217\n ],\n [\n 108.447672,\n 32.07164\n ],\n [\n 108.369447,\n 32.173493\n ],\n [\n 108.509882,\n 32.201343\n ],\n [\n 108.67249,\n 32.104083\n ],\n [\n 108.734084,\n 32.106617\n ],\n [\n 108.902235,\n 31.984899\n ],\n [\n 108.988466,\n 31.979317\n ],\n [\n 109.164009,\n 31.877247\n ],\n [\n 109.195422,\n 31.817782\n ],\n [\n 109.273646,\n 31.801003\n ],\n [\n 109.281654,\n 31.717061\n ],\n [\n 109.585928,\n 31.726731\n ],\n [\n 109.731289,\n 31.700263\n ],\n [\n 109.76455,\n 31.602981\n ],\n [\n 109.719586,\n 31.555067\n ],\n [\n 109.848934,\n 31.552008\n ],\n [\n 109.946252,\n 31.506108\n ],\n [\n 110.054042,\n 31.410666\n ],\n [\n 110.140273,\n 31.390238\n ],\n [\n 110.189548,\n 31.129391\n ],\n [\n 110.119947,\n 31.088409\n ],\n [\n 110.135961,\n 30.986902\n ],\n [\n 110.172918,\n 30.978694\n ],\n [\n 110.082375,\n 30.799496\n ],\n [\n 110.008462,\n 30.883746\n ],\n [\n 109.893897,\n 30.899662\n ],\n [\n 109.780564,\n 30.848822\n ],\n [\n 109.590855,\n 30.693566\n ],\n [\n 109.435638,\n 30.59576\n ],\n [\n 109.35495,\n 30.487028\n ],\n [\n 109.36111,\n 30.550942\n ],\n [\n 109.299516,\n 30.630775\n ],\n [\n 109.143683,\n 30.521052\n ],\n [\n 109.103647,\n 30.565883\n ],\n [\n 109.106111,\n 30.57052\n ],\n [\n 109.106727,\n 30.572066\n ],\n [\n 109.108575,\n 30.576702\n ],\n [\n 109.102415,\n 30.580308\n ],\n [\n 109.100567,\n 30.580823\n ],\n [\n 109.09872,\n 30.579277\n ],\n [\n 109.09256,\n 30.578762\n ]\n ]\n ],\n [\n [\n [\n 105.574315,\n 30.130611\n ],\n [\n 105.580474,\n 30.129577\n ],\n [\n 105.582938,\n 30.127507\n ],\n [\n 105.582938,\n 30.123884\n ],\n [\n 105.574315,\n 30.130611\n ]\n ]\n ],\n [\n [\n [\n 109.09256,\n 30.578762\n ],\n [\n 109.09872,\n 30.579277\n ],\n [\n 109.106111,\n 30.57052\n ],\n [\n 109.103647,\n 30.565883\n ],\n [\n 109.09256,\n 30.578762\n ]\n ]\n ],\n [\n [\n [\n 109.102415,\n 30.580308\n ],\n [\n 109.108575,\n 30.576702\n ],\n [\n 109.106727,\n 30.572066\n ],\n [\n 109.100567,\n 30.580823\n ],\n [\n 109.102415,\n 30.580308\n ]\n ]\n ],\n [\n [\n [\n 107.053801,\n 30.043636\n ],\n [\n 107.058113,\n 30.043118\n ],\n [\n 107.055649,\n 30.040528\n ],\n [\n 107.054417,\n 30.041046\n ],\n [\n 107.053801,\n 30.043636\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 510000,\n \"name\": \"四川省\",\n \"center\": [\n 104.065735,\n 30.659462\n ],\n \"centroid\": [\n 102.693438,\n 30.674548\n ],\n \"childrenNum\": 21,\n \"level\": \"province\",\n \"subFeatureIndex\": 22,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 105.720292,\n 30.252662\n ],\n [\n 105.720292,\n 30.252662\n ],\n [\n 105.624822,\n 30.275917\n ],\n [\n 105.642684,\n 30.186484\n ],\n [\n 105.571235,\n 30.17976\n ],\n [\n 105.56138,\n 30.188035\n ],\n [\n 105.558916,\n 30.18545\n ],\n [\n 105.56138,\n 30.183898\n ],\n [\n 105.574315,\n 30.130611\n ],\n [\n 105.582938,\n 30.123884\n ],\n [\n 105.687648,\n 30.038974\n ],\n [\n 105.753553,\n 30.018254\n ],\n [\n 105.70243,\n 29.924957\n ],\n [\n 105.709206,\n 29.840396\n ],\n [\n 105.619894,\n 29.846624\n ],\n [\n 105.575547,\n 29.745374\n ],\n [\n 105.476996,\n 29.674699\n ],\n [\n 105.38399,\n 29.67002\n ],\n [\n 105.289751,\n 29.552979\n ],\n [\n 105.324859,\n 29.448828\n ],\n [\n 105.380294,\n 29.456643\n ],\n [\n 105.380294,\n 29.456643\n ],\n [\n 105.428337,\n 29.417562\n ],\n [\n 105.427721,\n 29.316924\n ],\n [\n 105.518264,\n 29.264219\n ],\n [\n 105.693807,\n 29.267351\n ],\n [\n 105.762176,\n 28.991391\n ],\n [\n 105.88906,\n 28.909716\n ],\n [\n 105.970364,\n 28.966267\n ],\n [\n 106.043661,\n 28.954226\n ],\n [\n 106.048588,\n 28.906573\n ],\n [\n 106.173008,\n 28.92019\n ],\n [\n 106.248152,\n 28.829024\n ],\n [\n 106.304203,\n 28.650653\n ],\n [\n 106.37442,\n 28.525613\n ],\n [\n 106.330688,\n 28.481971\n ],\n [\n 106.2925,\n 28.537177\n ],\n [\n 106.103407,\n 28.636476\n ],\n [\n 105.966668,\n 28.76086\n ],\n [\n 105.891524,\n 28.672179\n ],\n [\n 105.884748,\n 28.594981\n ],\n [\n 105.749242,\n 28.614943\n ],\n [\n 105.683952,\n 28.535601\n ],\n [\n 105.62359,\n 28.518253\n ],\n [\n 105.639604,\n 28.32408\n ],\n [\n 105.730147,\n 28.271925\n ],\n [\n 105.826234,\n 28.304064\n ],\n [\n 105.88906,\n 28.238722\n ],\n [\n 105.860111,\n 28.165955\n ],\n [\n 105.975907,\n 28.107917\n ],\n [\n 106.126812,\n 28.16701\n ],\n [\n 106.206885,\n 28.134302\n ],\n [\n 106.328225,\n 27.952643\n ],\n [\n 106.304819,\n 27.899249\n ],\n [\n 106.343007,\n 27.821489\n ],\n [\n 106.193334,\n 27.754265\n ],\n [\n 106.120653,\n 27.779677\n ],\n [\n 106.023335,\n 27.746851\n ],\n [\n 105.78435,\n 27.719312\n ],\n [\n 105.62359,\n 27.666333\n ],\n [\n 105.605112,\n 27.715605\n ],\n [\n 105.508409,\n 27.769089\n ],\n [\n 105.353809,\n 27.74897\n ],\n [\n 105.308229,\n 27.705011\n ],\n [\n 105.273736,\n 27.795028\n ],\n [\n 105.308229,\n 27.810376\n ],\n [\n 105.308229,\n 27.810376\n ],\n [\n 105.244171,\n 27.823077\n ],\n [\n 105.233084,\n 27.895547\n ],\n [\n 105.284823,\n 27.935729\n ],\n [\n 105.270657,\n 27.99703\n ],\n [\n 105.186273,\n 27.995445\n ],\n [\n 105.186889,\n 28.0546\n ],\n [\n 105.05939,\n 28.097889\n ],\n [\n 104.872144,\n 27.905594\n ],\n [\n 104.743413,\n 27.901892\n ],\n [\n 104.573413,\n 27.840537\n ],\n [\n 104.40095,\n 27.952114\n ],\n [\n 104.354139,\n 28.019744\n ],\n [\n 104.44653,\n 28.112666\n ],\n [\n 104.44961,\n 28.269817\n ],\n [\n 104.384936,\n 28.329874\n ],\n [\n 104.314103,\n 28.306698\n ],\n [\n 104.254357,\n 28.408844\n ],\n [\n 104.261748,\n 28.537177\n ],\n [\n 104.318415,\n 28.538229\n ],\n [\n 104.425588,\n 28.626497\n ],\n [\n 104.314719,\n 28.615468\n ],\n [\n 104.12501,\n 28.637526\n ],\n [\n 103.940844,\n 28.606013\n ],\n [\n 103.844757,\n 28.660104\n ],\n [\n 103.838598,\n 28.587101\n ],\n [\n 103.781931,\n 28.525613\n ],\n [\n 103.877402,\n 28.311966\n ],\n [\n 103.721569,\n 28.201817\n ],\n [\n 103.639649,\n 28.261912\n ],\n [\n 103.573128,\n 28.230815\n ],\n [\n 103.471498,\n 28.123221\n ],\n [\n 103.430846,\n 28.044039\n ],\n [\n 103.488128,\n 28.03242\n ],\n [\n 103.515846,\n 27.965326\n ],\n [\n 103.487512,\n 27.795028\n ],\n [\n 103.29226,\n 27.632943\n ],\n [\n 103.295955,\n 27.568785\n ],\n [\n 103.222043,\n 27.566133\n ],\n [\n 103.111789,\n 27.401054\n ],\n [\n 102.989833,\n 27.368114\n ],\n [\n 102.941174,\n 27.405303\n ],\n [\n 102.882044,\n 27.293168\n ],\n [\n 102.913457,\n 27.133538\n ],\n [\n 102.870957,\n 27.026992\n ],\n [\n 102.898674,\n 26.908073\n ],\n [\n 102.991681,\n 26.775675\n ],\n [\n 103.018783,\n 26.593911\n ],\n [\n 103.056971,\n 26.525943\n ],\n [\n 102.989833,\n 26.483108\n ],\n [\n 102.998457,\n 26.371661\n ],\n [\n 102.739762,\n 26.268691\n ],\n [\n 102.674473,\n 26.205363\n ],\n [\n 102.60056,\n 26.250448\n ],\n [\n 102.638748,\n 26.307852\n ],\n [\n 102.567915,\n 26.36362\n ],\n [\n 102.392372,\n 26.296588\n ],\n [\n 102.349257,\n 26.244545\n ],\n [\n 102.245163,\n 26.212341\n ],\n [\n 102.107808,\n 26.068391\n ],\n [\n 102.005562,\n 26.091499\n ],\n [\n 102.005562,\n 26.091499\n ],\n [\n 101.917483,\n 26.108156\n ],\n [\n 101.86328,\n 26.052266\n ],\n [\n 101.799223,\n 26.109231\n ],\n [\n 101.807846,\n 26.156501\n ],\n [\n 101.690202,\n 26.241861\n ],\n [\n 101.630455,\n 26.224687\n ],\n [\n 101.586724,\n 26.279422\n ],\n [\n 101.660636,\n 26.346999\n ],\n [\n 101.636615,\n 26.395245\n ],\n [\n 101.506652,\n 26.499708\n ],\n [\n 101.458608,\n 26.495424\n ],\n [\n 101.400094,\n 26.605146\n ],\n [\n 101.451833,\n 26.600867\n ],\n [\n 101.453065,\n 26.692848\n ],\n [\n 101.512195,\n 26.756443\n ],\n [\n 101.389623,\n 26.723314\n ],\n [\n 101.357594,\n 26.770868\n ],\n [\n 101.399478,\n 26.841893\n ],\n [\n 101.267667,\n 26.902737\n ],\n [\n 101.264587,\n 26.955549\n ],\n [\n 101.136472,\n 27.023794\n ],\n [\n 101.170349,\n 27.195821\n ],\n [\n 101.057016,\n 27.20061\n ],\n [\n 101.021907,\n 27.332508\n ],\n [\n 100.936908,\n 27.469026\n ],\n [\n 100.848212,\n 27.670573\n ],\n [\n 100.782307,\n 27.691767\n ],\n [\n 100.707162,\n 27.80085\n ],\n [\n 100.681293,\n 27.923041\n ],\n [\n 100.633866,\n 27.915111\n ],\n [\n 100.54517,\n 27.809318\n ],\n [\n 100.442924,\n 27.866459\n ],\n [\n 100.327744,\n 27.720372\n ],\n [\n 100.295099,\n 27.869633\n ],\n [\n 100.210715,\n 27.877037\n ],\n [\n 100.196549,\n 27.936257\n ],\n [\n 100.086296,\n 28.030836\n ],\n [\n 100.033941,\n 28.184942\n ],\n [\n 100.157129,\n 28.210254\n ],\n [\n 100.176223,\n 28.324607\n ],\n [\n 100.054267,\n 28.376737\n ],\n [\n 100.073977,\n 28.42621\n ],\n [\n 99.990209,\n 28.476712\n ],\n [\n 99.987129,\n 28.524561\n ],\n [\n 99.793724,\n 28.699473\n ],\n [\n 99.733362,\n 28.719415\n ],\n [\n 99.717964,\n 28.846321\n ],\n [\n 99.625573,\n 28.814871\n ],\n [\n 99.615718,\n 28.741975\n ],\n [\n 99.532566,\n 28.681628\n ],\n [\n 99.463581,\n 28.549266\n ],\n [\n 99.403219,\n 28.546638\n ],\n [\n 99.437095,\n 28.398318\n ],\n [\n 99.374886,\n 28.181778\n ],\n [\n 99.306516,\n 28.227652\n ],\n [\n 99.280647,\n 28.298269\n ],\n [\n 99.174705,\n 28.402003\n ],\n [\n 99.183944,\n 28.588677\n ],\n [\n 99.126662,\n 28.699473\n ],\n [\n 99.103872,\n 28.842128\n ],\n [\n 99.132206,\n 28.948467\n ],\n [\n 99.113727,\n 29.221409\n ],\n [\n 99.075539,\n 29.314316\n ],\n [\n 99.052133,\n 29.563908\n ],\n [\n 98.993003,\n 29.656502\n ],\n [\n 99.0238,\n 29.846105\n ],\n [\n 99.068148,\n 29.93118\n ],\n [\n 99.044742,\n 30.079885\n ],\n [\n 98.989308,\n 30.151826\n ],\n [\n 98.907388,\n 30.698196\n ],\n [\n 98.957895,\n 30.765056\n ],\n [\n 98.901844,\n 30.785105\n ],\n [\n 98.774345,\n 30.907877\n ],\n [\n 98.806374,\n 30.995621\n ],\n [\n 98.736772,\n 31.049459\n ],\n [\n 98.709671,\n 31.118635\n ],\n [\n 98.602498,\n 31.192367\n ],\n [\n 98.64007,\n 31.337615\n ],\n [\n 98.691809,\n 31.333016\n ],\n [\n 98.773113,\n 31.249163\n ],\n [\n 98.88583,\n 31.376446\n ],\n [\n 98.837787,\n 31.436705\n ],\n [\n 98.713367,\n 31.510189\n ],\n [\n 98.553839,\n 31.656473\n ],\n [\n 98.543983,\n 31.718588\n ],\n [\n 98.414636,\n 31.832525\n ],\n [\n 98.434962,\n 32.007734\n ],\n [\n 98.301919,\n 32.12334\n ],\n [\n 98.218768,\n 32.234752\n ],\n [\n 98.218768,\n 32.342489\n ],\n [\n 97.937283,\n 32.484425\n ],\n [\n 97.730944,\n 32.527315\n ],\n [\n 97.543698,\n 32.621602\n ],\n [\n 97.42359,\n 32.704713\n ],\n [\n 97.386018,\n 32.779196\n ],\n [\n 97.373699,\n 32.956094\n ],\n [\n 97.523988,\n 32.988721\n ],\n [\n 97.542466,\n 33.036385\n ],\n [\n 97.487648,\n 33.10658\n ],\n [\n 97.487648,\n 33.168205\n ],\n [\n 97.576343,\n 33.221779\n ],\n [\n 97.621306,\n 33.334327\n ],\n [\n 97.676125,\n 33.340825\n ],\n [\n 97.753733,\n 33.410277\n ],\n [\n 97.625618,\n 33.461705\n ],\n [\n 97.552321,\n 33.465698\n ],\n [\n 97.52522,\n 33.575937\n ],\n [\n 97.415583,\n 33.605343\n ],\n [\n 97.435293,\n 33.680558\n ],\n [\n 97.388481,\n 33.884452\n ],\n [\n 97.458698,\n 33.886935\n ],\n [\n 97.660111,\n 33.956444\n ],\n [\n 97.70261,\n 34.036805\n ],\n [\n 97.665654,\n 34.126997\n ],\n [\n 97.834421,\n 34.208186\n ],\n [\n 97.937283,\n 34.196804\n ],\n [\n 97.937283,\n 34.196804\n ],\n [\n 98.051848,\n 34.115604\n ],\n [\n 98.21076,\n 34.078444\n ],\n [\n 98.401702,\n 34.08786\n ],\n [\n 98.440506,\n 33.981255\n ],\n [\n 98.406629,\n 33.867065\n ],\n [\n 98.462064,\n 33.849178\n ],\n [\n 98.539056,\n 33.746752\n ],\n [\n 98.6567,\n 33.647193\n ],\n [\n 98.61728,\n 33.63723\n ],\n [\n 98.648077,\n 33.549014\n ],\n [\n 98.742316,\n 33.477677\n ],\n [\n 98.734309,\n 33.409278\n ],\n [\n 98.779272,\n 33.37181\n ],\n [\n 98.759562,\n 33.277321\n ],\n [\n 98.858728,\n 33.150674\n ],\n [\n 99.002242,\n 33.08252\n ],\n [\n 99.179633,\n 33.044912\n ],\n [\n 99.235067,\n 32.982197\n ],\n [\n 99.268328,\n 32.878744\n ],\n [\n 99.385973,\n 32.900349\n ],\n [\n 99.558436,\n 32.839039\n ],\n [\n 99.607711,\n 32.780705\n ],\n [\n 99.763543,\n 32.778693\n ],\n [\n 99.788181,\n 32.956596\n ],\n [\n 99.854086,\n 32.945048\n ],\n [\n 99.877492,\n 33.045915\n ],\n [\n 99.956332,\n 32.948061\n ],\n [\n 100.038252,\n 32.928979\n ],\n [\n 100.123252,\n 32.837028\n ],\n [\n 100.139266,\n 32.724346\n ],\n [\n 100.088143,\n 32.668959\n ],\n [\n 100.208252,\n 32.606482\n ],\n [\n 100.258759,\n 32.742466\n ],\n [\n 100.339447,\n 32.719313\n ],\n [\n 100.399809,\n 32.756556\n ],\n [\n 100.516837,\n 32.630168\n ],\n [\n 100.54517,\n 32.569681\n ],\n [\n 100.645568,\n 32.526306\n ],\n [\n 100.690532,\n 32.678025\n ],\n [\n 100.93198,\n 32.600433\n ],\n [\n 101.075494,\n 32.683061\n ],\n [\n 101.157414,\n 32.661404\n ],\n [\n 101.22332,\n 32.725856\n ],\n [\n 101.237486,\n 32.824962\n ],\n [\n 101.124153,\n 32.909893\n ],\n [\n 101.129081,\n 32.989725\n ],\n [\n 101.183899,\n 32.984204\n ],\n [\n 101.169733,\n 33.100566\n ],\n [\n 101.11553,\n 33.194746\n ],\n [\n 101.183283,\n 33.270317\n ],\n [\n 101.297232,\n 33.262313\n ],\n [\n 101.393935,\n 33.157687\n ],\n [\n 101.405022,\n 33.225783\n ],\n [\n 101.486326,\n 33.227285\n ],\n [\n 101.625528,\n 33.100566\n ],\n [\n 101.739477,\n 33.265815\n ],\n [\n 101.64955,\n 33.323328\n ],\n [\n 101.695745,\n 33.433748\n ],\n [\n 101.769658,\n 33.447728\n ],\n [\n 101.769042,\n 33.538541\n ],\n [\n 101.844186,\n 33.602353\n ],\n [\n 101.907012,\n 33.542032\n ],\n [\n 101.9452,\n 33.437742\n ],\n [\n 101.885454,\n 33.380804\n ],\n [\n 101.878063,\n 33.315829\n ],\n [\n 101.769658,\n 33.268816\n ],\n [\n 101.841723,\n 33.184731\n ],\n [\n 101.865744,\n 33.103072\n ],\n [\n 101.935345,\n 33.186734\n ],\n [\n 102.08933,\n 33.204759\n ],\n [\n 102.112736,\n 33.287324\n ],\n [\n 102.217446,\n 33.248303\n ],\n [\n 102.186649,\n 33.332327\n ],\n [\n 102.264873,\n 33.417269\n ],\n [\n 102.396684,\n 33.40678\n ],\n [\n 102.462589,\n 33.449724\n ],\n [\n 102.440416,\n 33.57494\n ],\n [\n 102.33817,\n 33.614313\n ],\n [\n 102.342481,\n 33.725357\n ],\n [\n 102.299981,\n 33.782566\n ],\n [\n 102.239619,\n 33.788036\n ],\n [\n 102.234076,\n 33.870046\n ],\n [\n 102.136142,\n 33.965377\n ],\n [\n 102.237772,\n 33.963392\n ],\n [\n 102.315996,\n 33.994154\n ],\n [\n 102.391756,\n 33.970836\n ],\n [\n 102.437336,\n 34.087364\n ],\n [\n 102.471213,\n 34.072993\n ],\n [\n 102.655994,\n 34.113623\n ],\n [\n 102.599328,\n 34.145321\n ],\n [\n 102.798276,\n 34.272982\n ],\n [\n 102.911609,\n 34.313022\n ],\n [\n 102.978747,\n 34.249246\n ],\n [\n 102.973203,\n 34.205217\n ],\n [\n 103.124108,\n 34.16166\n ],\n [\n 103.178927,\n 34.079931\n ],\n [\n 103.119797,\n 34.034822\n ],\n [\n 103.124108,\n 33.968354\n ],\n [\n 103.181391,\n 33.900842\n ],\n [\n 103.153057,\n 33.814884\n ],\n [\n 103.279325,\n 33.806433\n ],\n [\n 103.349542,\n 33.74327\n ],\n [\n 103.525085,\n 33.798975\n ],\n [\n 103.520157,\n 33.678566\n ],\n [\n 103.626099,\n 33.727347\n ],\n [\n 103.778236,\n 33.658648\n ],\n [\n 103.871243,\n 33.68255\n ],\n [\n 104.046169,\n 33.686533\n ],\n [\n 104.168741,\n 33.611821\n ],\n [\n 104.155191,\n 33.542531\n ],\n [\n 104.22048,\n 33.404782\n ],\n [\n 104.292545,\n 33.336326\n ],\n [\n 104.432979,\n 33.325828\n ],\n [\n 104.303632,\n 33.304328\n ],\n [\n 104.378161,\n 33.109086\n ],\n [\n 104.337509,\n 33.038392\n ],\n [\n 104.426204,\n 33.0108\n ],\n [\n 104.378161,\n 32.953081\n ],\n [\n 104.288234,\n 32.94304\n ],\n [\n 104.294393,\n 32.83552\n ],\n [\n 104.363994,\n 32.822448\n ],\n [\n 104.458849,\n 32.748504\n ],\n [\n 104.582653,\n 32.722333\n ],\n [\n 104.643015,\n 32.661908\n ],\n [\n 104.739717,\n 32.635711\n ],\n [\n 104.845659,\n 32.653848\n ],\n [\n 104.881999,\n 32.600938\n ],\n [\n 105.026745,\n 32.650322\n ],\n [\n 105.111128,\n 32.59388\n ],\n [\n 105.347033,\n 32.682558\n ],\n [\n 105.455439,\n 32.737433\n ],\n [\n 105.391381,\n 32.835017\n ],\n [\n 105.414171,\n 32.921948\n ],\n [\n 105.49917,\n 32.911902\n ],\n [\n 105.563844,\n 32.72485\n ],\n [\n 105.596489,\n 32.699175\n ],\n [\n 105.719061,\n 32.759575\n ],\n [\n 105.822538,\n 32.770141\n ],\n [\n 105.825002,\n 32.824962\n ],\n [\n 106.025798,\n 32.85814\n ],\n [\n 106.093552,\n 32.823956\n ],\n [\n 106.07261,\n 32.764103\n ],\n [\n 106.076305,\n 32.753537\n ],\n [\n 106.17424,\n 32.697664\n ],\n [\n 106.347935,\n 32.670974\n ],\n [\n 106.421231,\n 32.616562\n ],\n [\n 106.585687,\n 32.688097\n ],\n [\n 106.663296,\n 32.690615\n ],\n [\n 106.733513,\n 32.739446\n ],\n [\n 106.82344,\n 32.705217\n ],\n [\n 107.066736,\n 32.708741\n ],\n [\n 107.108004,\n 32.600938\n ],\n [\n 107.080286,\n 32.542448\n ],\n [\n 107.127098,\n 32.482406\n ],\n [\n 107.263836,\n 32.403129\n ],\n [\n 107.313727,\n 32.489976\n ],\n [\n 107.382097,\n 32.54043\n ],\n [\n 107.436299,\n 32.529837\n ],\n [\n 107.456625,\n 32.417778\n ],\n [\n 107.533002,\n 32.383426\n ],\n [\n 107.680211,\n 32.398078\n ],\n [\n 107.707929,\n 32.331873\n ],\n [\n 107.75474,\n 32.338445\n ],\n [\n 107.812022,\n 32.24791\n ],\n [\n 107.979558,\n 32.14614\n ],\n [\n 108.070717,\n 32.233234\n ],\n [\n 108.179122,\n 32.222099\n ],\n [\n 108.251187,\n 32.273208\n ],\n [\n 108.312781,\n 32.232222\n ],\n [\n 108.46923,\n 32.270173\n ],\n [\n 108.509882,\n 32.201343\n ],\n [\n 108.369447,\n 32.173493\n ],\n [\n 108.447672,\n 32.07164\n ],\n [\n 108.373759,\n 32.077217\n ],\n [\n 108.259194,\n 31.966628\n ],\n [\n 108.343578,\n 31.860987\n ],\n [\n 108.535135,\n 31.757769\n ],\n [\n 108.517889,\n 31.665131\n ],\n [\n 108.391621,\n 31.593298\n ],\n [\n 108.34173,\n 31.509679\n ],\n [\n 108.191441,\n 31.492333\n ],\n [\n 108.216079,\n 31.410666\n ],\n [\n 108.153869,\n 31.371338\n ],\n [\n 108.185898,\n 31.337104\n ],\n [\n 108.095354,\n 31.268088\n ],\n [\n 108.083652,\n 31.185713\n ],\n [\n 108.009123,\n 31.10839\n ],\n [\n 108.053471,\n 31.040745\n ],\n [\n 107.943833,\n 30.989466\n ],\n [\n 107.994956,\n 30.90839\n ],\n [\n 107.85329,\n 30.793842\n ],\n [\n 107.763979,\n 30.816968\n ],\n [\n 107.739957,\n 30.884259\n ],\n [\n 107.645103,\n 30.821079\n ],\n [\n 107.514524,\n 30.854986\n ],\n [\n 107.424597,\n 30.740889\n ],\n [\n 107.516987,\n 30.644675\n ],\n [\n 107.359923,\n 30.456087\n ],\n [\n 107.221337,\n 30.213891\n ],\n [\n 107.058113,\n 30.043118\n ],\n [\n 107.053801,\n 30.043636\n ],\n [\n 106.981736,\n 30.085062\n ],\n [\n 106.980504,\n 30.087651\n ],\n [\n 106.980504,\n 30.087651\n ],\n [\n 106.980504,\n 30.085062\n ],\n [\n 106.978041,\n 30.087133\n ],\n [\n 106.978041,\n 30.087651\n ],\n [\n 106.978041,\n 30.087133\n ],\n [\n 106.978041,\n 30.087651\n ],\n [\n 106.978041,\n 30.087133\n ],\n [\n 106.976193,\n 30.083509\n ],\n [\n 106.976193,\n 30.087651\n ],\n [\n 106.976193,\n 30.087651\n ],\n [\n 106.974345,\n 30.082992\n ],\n [\n 106.913367,\n 30.025506\n ],\n [\n 106.825904,\n 30.031205\n ],\n [\n 106.825904,\n 30.031205\n ],\n [\n 106.726121,\n 30.033277\n ],\n [\n 106.677462,\n 30.157\n ],\n [\n 106.611557,\n 30.235605\n ],\n [\n 106.612173,\n 30.235605\n ],\n [\n 106.611557,\n 30.235605\n ],\n [\n 106.612173,\n 30.235605\n ],\n [\n 106.612173,\n 30.235605\n ],\n [\n 106.612789,\n 30.235605\n ],\n [\n 106.612789,\n 30.235605\n ],\n [\n 106.610941,\n 30.292451\n ],\n [\n 106.610941,\n 30.292451\n ],\n [\n 106.451412,\n 30.307949\n ],\n [\n 106.451412,\n 30.307949\n ],\n [\n 106.428623,\n 30.254729\n ],\n [\n 106.262935,\n 30.211306\n ],\n [\n 106.261703,\n 30.205101\n ],\n [\n 106.260471,\n 30.204067\n ],\n [\n 106.256776,\n 30.19631\n ],\n [\n 106.180399,\n 30.23302\n ],\n [\n 106.17116,\n 30.306399\n ],\n [\n 106.10587,\n 30.310531\n ],\n [\n 106.031958,\n 30.373529\n ],\n [\n 105.881053,\n 30.387465\n ],\n [\n 105.792357,\n 30.427199\n ],\n [\n 105.714749,\n 30.322927\n ],\n [\n 105.720292,\n 30.252662\n ]\n ]\n ],\n [\n [\n [\n 106.262935,\n 30.211306\n ],\n [\n 106.256776,\n 30.19631\n ],\n [\n 106.260471,\n 30.204067\n ],\n [\n 106.261703,\n 30.205101\n ],\n [\n 106.262935,\n 30.211306\n ]\n ]\n ],\n [\n [\n [\n 105.571235,\n 30.17976\n ],\n [\n 105.56138,\n 30.183898\n ],\n [\n 105.558916,\n 30.18545\n ],\n [\n 105.56138,\n 30.188035\n ],\n [\n 105.571235,\n 30.17976\n ]\n ]\n ],\n [\n [\n [\n 106.981736,\n 30.085062\n ],\n [\n 106.980504,\n 30.085062\n ],\n [\n 106.980504,\n 30.087651\n ],\n [\n 106.981736,\n 30.085062\n ]\n ]\n ],\n [\n [\n [\n 106.980504,\n 30.085062\n ],\n [\n 106.976193,\n 30.083509\n ],\n [\n 106.978041,\n 30.087133\n ],\n [\n 106.980504,\n 30.085062\n ]\n ]\n ],\n [\n [\n [\n 106.976193,\n 30.083509\n ],\n [\n 106.974345,\n 30.082992\n ],\n [\n 106.976193,\n 30.087651\n ],\n [\n 106.976193,\n 30.083509\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 520000,\n \"name\": \"贵州省\",\n \"center\": [\n 106.713478,\n 26.578343\n ],\n \"centroid\": [\n 106.88108,\n 26.826362\n ],\n \"childrenNum\": 9,\n \"level\": \"province\",\n \"subFeatureIndex\": 23,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 109.52187,\n 26.748964\n ],\n [\n 109.454117,\n 26.761252\n ],\n [\n 109.35495,\n 26.693383\n ],\n [\n 109.407305,\n 26.532902\n ],\n [\n 109.326001,\n 26.427398\n ],\n [\n 109.285965,\n 26.296052\n ],\n [\n 109.340784,\n 26.264399\n ],\n [\n 109.466435,\n 26.314288\n ],\n [\n 109.439334,\n 26.238641\n ],\n [\n 109.486761,\n 26.148445\n ],\n [\n 109.486761,\n 26.148445\n ],\n [\n 109.449805,\n 26.101709\n ],\n [\n 109.48245,\n 26.029687\n ],\n [\n 109.408537,\n 25.967305\n ],\n [\n 109.435022,\n 25.933411\n ],\n [\n 109.339552,\n 25.834363\n ],\n [\n 109.3414,\n 25.732537\n ],\n [\n 109.147995,\n 25.7417\n ],\n [\n 109.143683,\n 25.795044\n ],\n [\n 108.989698,\n 25.778881\n ],\n [\n 108.896076,\n 25.71421\n ],\n [\n 108.953974,\n 25.686714\n ],\n [\n 108.953974,\n 25.686714\n ],\n [\n 109.000785,\n 25.73631\n ],\n [\n 109.07901,\n 25.720679\n ],\n [\n 109.030966,\n 25.629545\n ],\n [\n 109.088249,\n 25.550758\n ],\n [\n 109.025423,\n 25.512426\n ],\n [\n 108.949046,\n 25.557236\n ],\n [\n 108.781511,\n 25.554537\n ],\n [\n 108.763649,\n 25.637097\n ],\n [\n 108.68912,\n 25.623072\n ],\n [\n 108.6072,\n 25.491904\n ],\n [\n 108.625062,\n 25.308138\n ],\n [\n 108.471693,\n 25.458955\n ],\n [\n 108.418723,\n 25.443287\n ],\n [\n 108.348506,\n 25.536183\n ],\n [\n 108.142782,\n 25.390867\n ],\n [\n 108.152021,\n 25.324364\n ],\n [\n 108.115065,\n 25.210195\n ],\n [\n 108.001732,\n 25.196661\n ],\n [\n 107.841587,\n 25.115966\n ],\n [\n 107.741805,\n 25.239965\n ],\n [\n 107.700537,\n 25.193954\n ],\n [\n 107.659885,\n 25.316251\n ],\n [\n 107.599523,\n 25.250789\n ],\n [\n 107.472024,\n 25.213984\n ],\n [\n 107.481263,\n 25.300024\n ],\n [\n 107.432604,\n 25.289205\n ],\n [\n 107.420901,\n 25.393029\n ],\n [\n 107.318039,\n 25.401677\n ],\n [\n 107.336517,\n 25.461116\n ],\n [\n 107.228728,\n 25.604728\n ],\n [\n 107.064272,\n 25.559395\n ],\n [\n 107.066736,\n 25.509186\n ],\n [\n 106.963874,\n 25.437884\n ],\n [\n 107.012533,\n 25.353024\n ],\n [\n 107.013765,\n 25.275138\n ],\n [\n 106.912751,\n 25.243212\n ],\n [\n 106.900432,\n 25.194495\n ],\n [\n 106.732281,\n 25.162548\n ],\n [\n 106.684238,\n 25.178252\n ],\n [\n 106.590615,\n 25.087791\n ],\n [\n 106.304819,\n 24.973944\n ],\n [\n 106.215508,\n 24.982079\n ],\n [\n 106.146522,\n 24.948449\n ],\n [\n 106.206269,\n 24.851304\n ],\n [\n 106.173008,\n 24.760059\n ],\n [\n 106.045508,\n 24.681796\n ],\n [\n 106.023335,\n 24.632313\n ],\n [\n 105.942031,\n 24.724738\n ],\n [\n 105.827466,\n 24.702997\n ],\n [\n 105.70551,\n 24.768752\n ],\n [\n 105.500402,\n 24.807862\n ],\n [\n 105.445584,\n 24.918608\n ],\n [\n 105.365511,\n 24.943566\n ],\n [\n 105.265729,\n 24.930003\n ],\n [\n 105.198592,\n 24.995095\n ],\n [\n 105.09573,\n 24.928375\n ],\n [\n 105.077868,\n 24.918065\n ],\n [\n 105.03352,\n 24.787765\n ],\n [\n 104.899245,\n 24.752996\n ],\n [\n 104.841963,\n 24.676359\n ],\n [\n 104.743413,\n 24.621978\n ],\n [\n 104.63316,\n 24.65896\n ],\n [\n 104.529682,\n 24.73126\n ],\n [\n 104.539537,\n 24.813836\n ],\n [\n 104.713232,\n 24.996179\n ],\n [\n 104.667652,\n 25.05961\n ],\n [\n 104.750804,\n 25.215067\n ],\n [\n 104.822869,\n 25.17013\n ],\n [\n 104.816094,\n 25.262152\n ],\n [\n 104.639935,\n 25.298942\n ],\n [\n 104.646094,\n 25.356809\n ],\n [\n 104.543232,\n 25.400597\n ],\n [\n 104.556783,\n 25.524845\n ],\n [\n 104.434827,\n 25.47246\n ],\n [\n 104.420661,\n 25.585301\n ],\n [\n 104.332581,\n 25.598792\n ],\n [\n 104.309791,\n 25.648964\n ],\n [\n 104.328886,\n 25.760561\n ],\n [\n 104.373233,\n 25.731459\n ],\n [\n 104.441602,\n 25.869362\n ],\n [\n 104.414501,\n 25.909733\n ],\n [\n 104.499501,\n 26.070541\n ],\n [\n 104.592508,\n 26.317506\n ],\n [\n 104.683667,\n 26.377557\n ],\n [\n 104.554935,\n 26.590701\n ],\n [\n 104.487798,\n 26.579465\n ],\n [\n 104.421276,\n 26.712091\n ],\n [\n 104.354139,\n 26.621194\n ],\n [\n 104.120082,\n 26.636705\n ],\n [\n 104.052329,\n 26.507204\n ],\n [\n 103.865699,\n 26.512023\n ],\n [\n 103.764685,\n 26.584816\n ],\n [\n 103.773308,\n 26.716901\n ],\n [\n 103.705555,\n 26.794904\n ],\n [\n 103.779468,\n 26.874454\n ],\n [\n 103.77454,\n 26.951815\n ],\n [\n 103.675374,\n 27.051506\n ],\n [\n 103.638418,\n 27.013133\n ],\n [\n 103.624251,\n 27.112237\n ],\n [\n 103.711714,\n 27.14259\n ],\n [\n 103.903271,\n 27.347921\n ],\n [\n 103.932221,\n 27.444072\n ],\n [\n 104.015372,\n 27.429204\n ],\n [\n 104.01722,\n 27.383523\n ],\n [\n 104.113307,\n 27.338354\n ],\n [\n 104.174285,\n 27.262856\n ],\n [\n 104.363378,\n 27.467964\n ],\n [\n 104.497653,\n 27.411677\n ],\n [\n 104.546312,\n 27.330382\n ],\n [\n 104.609754,\n 27.306991\n ],\n [\n 104.808702,\n 27.35483\n ],\n [\n 104.871528,\n 27.291041\n ],\n [\n 105.067397,\n 27.418051\n ],\n [\n 105.184425,\n 27.393085\n ],\n [\n 105.260186,\n 27.514672\n ],\n [\n 105.232469,\n 27.546506\n ],\n [\n 105.305149,\n 27.612799\n ],\n [\n 105.308229,\n 27.705011\n ],\n [\n 105.353809,\n 27.74897\n ],\n [\n 105.508409,\n 27.769089\n ],\n [\n 105.605112,\n 27.715605\n ],\n [\n 105.62359,\n 27.666333\n ],\n [\n 105.78435,\n 27.719312\n ],\n [\n 106.023335,\n 27.746851\n ],\n [\n 106.120653,\n 27.779677\n ],\n [\n 106.193334,\n 27.754265\n ],\n [\n 106.343007,\n 27.821489\n ],\n [\n 106.304819,\n 27.899249\n ],\n [\n 106.328225,\n 27.952643\n ],\n [\n 106.206885,\n 28.134302\n ],\n [\n 106.126812,\n 28.16701\n ],\n [\n 105.975907,\n 28.107917\n ],\n [\n 105.860111,\n 28.165955\n ],\n [\n 105.88906,\n 28.238722\n ],\n [\n 105.826234,\n 28.304064\n ],\n [\n 105.730147,\n 28.271925\n ],\n [\n 105.639604,\n 28.32408\n ],\n [\n 105.62359,\n 28.518253\n ],\n [\n 105.683952,\n 28.535601\n ],\n [\n 105.749242,\n 28.614943\n ],\n [\n 105.884748,\n 28.594981\n ],\n [\n 105.891524,\n 28.672179\n ],\n [\n 105.966668,\n 28.76086\n ],\n [\n 106.103407,\n 28.636476\n ],\n [\n 106.2925,\n 28.537177\n ],\n [\n 106.330688,\n 28.481971\n ],\n [\n 106.37442,\n 28.525613\n ],\n [\n 106.395978,\n 28.570287\n ],\n [\n 106.484057,\n 28.530344\n ],\n [\n 106.504999,\n 28.662204\n ],\n [\n 106.45326,\n 28.816968\n ],\n [\n 106.562897,\n 28.753516\n ],\n [\n 106.63681,\n 28.623346\n ],\n [\n 106.564745,\n 28.485127\n ],\n [\n 106.632499,\n 28.503531\n ],\n [\n 106.7446,\n 28.465667\n ],\n [\n 106.73844,\n 28.554522\n ],\n [\n 106.866556,\n 28.624397\n ],\n [\n 106.883186,\n 28.69265\n ],\n [\n 106.824056,\n 28.756139\n ],\n [\n 106.926302,\n 28.809104\n ],\n [\n 106.986664,\n 28.793899\n ],\n [\n 106.986664,\n 28.793899\n ],\n [\n 106.983584,\n 28.851561\n ],\n [\n 107.057497,\n 28.895049\n ],\n [\n 107.191156,\n 28.888763\n ],\n [\n 107.219489,\n 28.772923\n ],\n [\n 107.383945,\n 28.848417\n ],\n [\n 107.441227,\n 28.943755\n ],\n [\n 107.36485,\n 29.010753\n ],\n [\n 107.412894,\n 29.095485\n ],\n [\n 107.404271,\n 29.187984\n ],\n [\n 107.486806,\n 29.174402\n ],\n [\n 107.570574,\n 29.218276\n ],\n [\n 107.589052,\n 29.149845\n ],\n [\n 107.701769,\n 29.142006\n ],\n [\n 107.751044,\n 29.199997\n ],\n [\n 107.810791,\n 29.138348\n ],\n [\n 107.784921,\n 29.04842\n ],\n [\n 107.867457,\n 28.960508\n ],\n [\n 107.930899,\n 29.035343\n ],\n [\n 108.024521,\n 29.038482\n ],\n [\n 108.068253,\n 29.086597\n ],\n [\n 108.256115,\n 29.040574\n ],\n [\n 108.268433,\n 29.089734\n ],\n [\n 108.350353,\n 28.933282\n ],\n [\n 108.352817,\n 28.815395\n ],\n [\n 108.385462,\n 28.772398\n ],\n [\n 108.332491,\n 28.679528\n ],\n [\n 108.471077,\n 28.627548\n ],\n [\n 108.565316,\n 28.662204\n ],\n [\n 108.636149,\n 28.621245\n ],\n [\n 108.577019,\n 28.534024\n ],\n [\n 108.611512,\n 28.324607\n ],\n [\n 108.668178,\n 28.334614\n ],\n [\n 108.688504,\n 28.422527\n ],\n [\n 108.640461,\n 28.457251\n ],\n [\n 108.710678,\n 28.500902\n ],\n [\n 108.779663,\n 28.425158\n ],\n [\n 108.764881,\n 28.306698\n ],\n [\n 108.726692,\n 28.282463\n ],\n [\n 108.772888,\n 28.21289\n ],\n [\n 108.922561,\n 28.217635\n ],\n [\n 109.006329,\n 28.163317\n ],\n [\n 109.026655,\n 28.220271\n ],\n [\n 109.086401,\n 28.184942\n ],\n [\n 109.081473,\n 28.249264\n ],\n [\n 109.152306,\n 28.349885\n ],\n [\n 109.191726,\n 28.470927\n ],\n [\n 109.274262,\n 28.494592\n ],\n [\n 109.27303,\n 28.310386\n ],\n [\n 109.388211,\n 28.268236\n ],\n [\n 109.340168,\n 28.190216\n ],\n [\n 109.298284,\n 28.036117\n ],\n [\n 109.378972,\n 28.032948\n ],\n [\n 109.30198,\n 27.956342\n ],\n [\n 109.345711,\n 27.840537\n ],\n [\n 109.332777,\n 27.782853\n ],\n [\n 109.470747,\n 27.68011\n ],\n [\n 109.461508,\n 27.567724\n ],\n [\n 109.303211,\n 27.475396\n ],\n [\n 109.300132,\n 27.423893\n ],\n [\n 109.202197,\n 27.449913\n ],\n [\n 109.142451,\n 27.418051\n ],\n [\n 109.040821,\n 27.276151\n ],\n [\n 108.907162,\n 27.2054\n ],\n [\n 108.878829,\n 27.106378\n ],\n [\n 108.791366,\n 27.084539\n ],\n [\n 108.87575,\n 26.999273\n ],\n [\n 109.07901,\n 27.115965\n ],\n [\n 109.164625,\n 27.065893\n ],\n [\n 109.267487,\n 27.128746\n ],\n [\n 109.415928,\n 27.15377\n ],\n [\n 109.472595,\n 27.135136\n ],\n [\n 109.454733,\n 27.069622\n ],\n [\n 109.520022,\n 27.058433\n ],\n [\n 109.555131,\n 26.947015\n ],\n [\n 109.486761,\n 26.895267\n ],\n [\n 109.500928,\n 26.828546\n ],\n [\n 109.481218,\n 26.838156\n ],\n [\n 109.473211,\n 26.828546\n ],\n [\n 109.504624,\n 26.805051\n ],\n [\n 109.52187,\n 26.748964\n ]\n ]\n ],\n [\n [\n [\n 109.529261,\n 26.740414\n ],\n [\n 109.528029,\n 26.744689\n ],\n [\n 109.548971,\n 26.737208\n ],\n [\n 109.548971,\n 26.737208\n ],\n [\n 109.529261,\n 26.740414\n ]\n ]\n ],\n [\n [\n [\n 109.500928,\n 26.828546\n ],\n [\n 109.504624,\n 26.805051\n ],\n [\n 109.473211,\n 26.828546\n ],\n [\n 109.481218,\n 26.838156\n ],\n [\n 109.500928,\n 26.828546\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 530000,\n \"name\": \"云南省\",\n \"center\": [\n 102.712251,\n 25.040609\n ],\n \"centroid\": [\n 101.485108,\n 25.008649\n ],\n \"childrenNum\": 16,\n \"level\": \"province\",\n \"subFeatureIndex\": 24,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 105.542902,\n 23.18449\n ],\n [\n 105.445584,\n 23.292797\n ],\n [\n 105.372903,\n 23.317525\n ],\n [\n 105.325475,\n 23.390034\n ],\n [\n 105.238012,\n 23.264217\n ],\n [\n 105.093266,\n 23.260919\n ],\n [\n 104.886311,\n 23.169088\n ],\n [\n 104.804391,\n 23.110218\n ],\n [\n 104.860441,\n 22.970917\n ],\n [\n 104.737869,\n 22.825957\n ],\n [\n 104.579573,\n 22.84636\n ],\n [\n 104.375697,\n 22.690228\n ],\n [\n 104.272219,\n 22.738245\n ],\n [\n 104.274067,\n 22.828163\n ],\n [\n 104.117618,\n 22.808861\n ],\n [\n 104.045553,\n 22.728312\n ],\n [\n 104.009213,\n 22.51789\n ],\n [\n 103.964249,\n 22.502966\n ],\n [\n 103.825047,\n 22.615685\n ],\n [\n 103.642113,\n 22.795071\n ],\n [\n 103.566969,\n 22.698508\n ],\n [\n 103.53494,\n 22.594143\n ],\n [\n 103.436389,\n 22.697404\n ],\n [\n 103.441317,\n 22.753144\n ],\n [\n 103.323057,\n 22.807758\n ],\n [\n 103.283021,\n 22.678635\n ],\n [\n 103.195557,\n 22.648268\n ],\n [\n 103.183854,\n 22.557679\n ],\n [\n 103.081608,\n 22.506835\n ],\n [\n 103.079761,\n 22.448784\n ],\n [\n 102.930703,\n 22.482512\n ],\n [\n 102.880196,\n 22.586961\n ],\n [\n 102.688639,\n 22.700164\n ],\n [\n 102.603024,\n 22.731623\n ],\n [\n 102.570379,\n 22.700164\n ],\n [\n 102.510633,\n 22.774661\n ],\n [\n 102.384365,\n 22.679739\n ],\n [\n 102.420706,\n 22.636119\n ],\n [\n 102.322771,\n 22.554364\n ],\n [\n 102.25625,\n 22.457631\n ],\n [\n 102.270416,\n 22.419472\n ],\n [\n 102.046214,\n 22.457631\n ],\n [\n 101.907628,\n 22.43717\n ],\n [\n 101.862665,\n 22.389048\n ],\n [\n 101.76473,\n 22.506282\n ],\n [\n 101.672339,\n 22.474772\n ],\n [\n 101.625528,\n 22.282789\n ],\n [\n 101.547304,\n 22.237936\n ],\n [\n 101.596579,\n 22.160933\n ],\n [\n 101.573789,\n 22.114933\n ],\n [\n 101.626144,\n 22.006247\n ],\n [\n 101.606434,\n 21.967965\n ],\n [\n 101.701288,\n 21.938553\n ],\n [\n 101.777049,\n 21.826954\n ],\n [\n 101.747484,\n 21.730276\n ],\n [\n 101.780129,\n 21.640763\n ],\n [\n 101.754875,\n 21.585137\n ],\n [\n 101.745636,\n 21.29721\n ],\n [\n 101.833715,\n 21.252606\n ],\n [\n 101.76473,\n 21.147733\n ],\n [\n 101.672339,\n 21.195158\n ],\n [\n 101.605818,\n 21.172285\n ],\n [\n 101.604586,\n 21.229741\n ],\n [\n 101.532521,\n 21.252606\n ],\n [\n 101.387775,\n 21.225837\n ],\n [\n 101.290457,\n 21.178422\n ],\n [\n 101.222088,\n 21.234203\n ],\n [\n 101.244877,\n 21.302227\n ],\n [\n 101.142631,\n 21.409218\n ],\n [\n 101.194986,\n 21.425372\n ],\n [\n 101.209153,\n 21.557316\n ],\n [\n 101.117378,\n 21.689141\n ],\n [\n 101.123537,\n 21.771956\n ],\n [\n 101.015132,\n 21.70693\n ],\n [\n 100.870386,\n 21.672461\n ],\n [\n 100.730568,\n 21.518914\n ],\n [\n 100.558105,\n 21.450434\n ],\n [\n 100.48296,\n 21.459343\n ],\n [\n 100.437381,\n 21.532829\n ],\n [\n 100.351765,\n 21.52949\n ],\n [\n 100.247056,\n 21.463798\n ],\n [\n 100.199628,\n 21.512791\n ],\n [\n 100.126948,\n 21.508338\n ],\n [\n 100.107853,\n 21.585137\n ],\n [\n 100.169447,\n 21.663564\n ],\n [\n 100.095535,\n 21.704151\n ],\n [\n 99.991441,\n 21.703595\n ],\n [\n 99.944014,\n 21.821955\n ],\n [\n 99.999448,\n 21.970184\n ],\n [\n 99.972347,\n 22.052837\n ],\n [\n 99.871333,\n 22.0667\n ],\n [\n 99.870101,\n 22.029544\n ],\n [\n 99.486987,\n 22.12879\n ],\n [\n 99.400139,\n 22.099966\n ],\n [\n 99.220901,\n 22.111053\n ],\n [\n 99.156227,\n 22.160933\n ],\n [\n 99.235683,\n 22.250673\n ],\n [\n 99.282495,\n 22.401219\n ],\n [\n 99.381661,\n 22.503519\n ],\n [\n 99.385973,\n 22.57094\n ],\n [\n 99.31514,\n 22.737693\n ],\n [\n 99.385973,\n 22.761972\n ],\n [\n 99.457421,\n 22.84636\n ],\n [\n 99.456806,\n 22.932901\n ],\n [\n 99.563363,\n 22.925737\n ],\n [\n 99.517168,\n 23.006719\n ],\n [\n 99.528255,\n 23.065635\n ],\n [\n 99.3484,\n 23.128927\n ],\n [\n 99.255393,\n 23.077746\n ],\n [\n 99.106336,\n 23.086552\n ],\n [\n 98.889525,\n 23.209238\n ],\n [\n 98.936953,\n 23.309833\n ],\n [\n 98.872279,\n 23.484456\n ],\n [\n 98.826084,\n 23.470187\n ],\n [\n 98.808221,\n 23.547549\n ],\n [\n 98.877823,\n 23.59197\n ],\n [\n 98.786048,\n 23.781551\n ],\n [\n 98.669019,\n 23.800713\n ],\n [\n 98.701664,\n 23.834103\n ],\n [\n 98.701048,\n 23.946251\n ],\n [\n 98.899996,\n 24.109102\n ],\n [\n 98.875975,\n 24.150056\n ],\n [\n 98.716446,\n 24.12767\n ],\n [\n 98.611737,\n 24.08507\n ],\n [\n 98.550759,\n 24.125485\n ],\n [\n 98.360434,\n 24.097087\n ],\n [\n 98.225543,\n 24.113471\n ],\n [\n 98.110978,\n 24.092171\n ],\n [\n 97.902175,\n 24.01404\n ],\n [\n 97.894168,\n 23.973589\n ],\n [\n 97.769748,\n 23.933126\n ],\n [\n 97.711234,\n 23.861465\n ],\n [\n 97.5283,\n 23.926563\n ],\n [\n 97.634241,\n 24.046828\n ],\n [\n 97.730944,\n 24.113471\n ],\n [\n 97.729712,\n 24.227013\n ],\n [\n 97.767284,\n 24.258656\n ],\n [\n 97.658879,\n 24.326279\n ],\n [\n 97.716161,\n 24.358987\n ],\n [\n 97.669966,\n 24.452703\n ],\n [\n 97.531995,\n 24.43146\n ],\n [\n 97.570799,\n 24.602396\n ],\n [\n 97.570183,\n 24.766579\n ],\n [\n 97.701379,\n 24.842617\n ],\n [\n 97.764204,\n 24.824155\n ],\n [\n 97.785762,\n 24.875733\n ],\n [\n 97.716777,\n 24.978283\n ],\n [\n 97.839349,\n 25.27081\n ],\n [\n 97.914494,\n 25.211278\n ],\n [\n 98.014892,\n 25.305433\n ],\n [\n 98.06971,\n 25.311924\n ],\n [\n 98.15779,\n 25.457334\n ],\n [\n 98.131304,\n 25.510266\n ],\n [\n 98.189818,\n 25.569111\n ],\n [\n 98.170724,\n 25.620374\n ],\n [\n 98.247717,\n 25.607965\n ],\n [\n 98.314854,\n 25.543201\n ],\n [\n 98.402317,\n 25.593936\n ],\n [\n 98.457752,\n 25.68294\n ],\n [\n 98.476846,\n 25.777265\n ],\n [\n 98.553839,\n 25.845672\n ],\n [\n 98.640686,\n 25.798815\n ],\n [\n 98.704744,\n 25.852133\n ],\n [\n 98.686881,\n 25.925877\n ],\n [\n 98.614201,\n 25.968919\n ],\n [\n 98.575396,\n 26.118364\n ],\n [\n 98.634527,\n 26.145759\n ],\n [\n 98.662244,\n 26.0872\n ],\n [\n 98.735541,\n 26.183351\n ],\n [\n 98.672715,\n 26.240251\n ],\n [\n 98.733693,\n 26.350753\n ],\n [\n 98.753403,\n 26.559129\n ],\n [\n 98.781736,\n 26.62066\n ],\n [\n 98.746012,\n 26.697125\n ],\n [\n 98.757098,\n 26.87819\n ],\n [\n 98.732461,\n 27.002472\n ],\n [\n 98.765722,\n 27.050973\n ],\n [\n 98.712135,\n 27.077081\n ],\n [\n 98.696121,\n 27.211253\n ],\n [\n 98.734309,\n 27.35111\n ],\n [\n 98.706591,\n 27.362269\n ],\n [\n 98.674563,\n 27.582044\n ],\n [\n 98.583404,\n 27.571437\n ],\n [\n 98.444201,\n 27.665274\n ],\n [\n 98.429419,\n 27.548628\n ],\n [\n 98.317318,\n 27.519448\n ],\n [\n 98.278514,\n 27.659974\n ],\n [\n 98.234166,\n 27.690707\n ],\n [\n 98.222463,\n 27.812493\n ],\n [\n 98.169492,\n 27.851118\n ],\n [\n 98.205217,\n 27.88973\n ],\n [\n 98.133152,\n 27.99069\n ],\n [\n 98.160253,\n 28.101056\n ],\n [\n 98.139311,\n 28.142216\n ],\n [\n 98.168876,\n 28.204454\n ],\n [\n 98.266195,\n 28.24083\n ],\n [\n 98.208913,\n 28.35831\n ],\n [\n 98.301303,\n 28.384633\n ],\n [\n 98.37768,\n 28.246101\n ],\n [\n 98.389383,\n 28.114777\n ],\n [\n 98.428803,\n 28.10475\n ],\n [\n 98.559382,\n 28.182833\n ],\n [\n 98.626519,\n 28.165427\n ],\n [\n 98.712135,\n 28.229233\n ],\n [\n 98.752787,\n 28.333561\n ],\n [\n 98.677026,\n 28.463563\n ],\n [\n 98.627751,\n 28.487756\n ],\n [\n 98.638222,\n 28.55242\n ],\n [\n 98.594491,\n 28.667979\n ],\n [\n 98.683802,\n 28.739877\n ],\n [\n 98.652389,\n 28.816968\n ],\n [\n 98.657932,\n 28.93014\n ],\n [\n 98.765722,\n 29.006044\n ],\n [\n 98.815613,\n 28.948991\n ],\n [\n 98.828547,\n 28.820113\n ],\n [\n 98.912931,\n 28.800715\n ],\n [\n 98.972677,\n 28.832693\n ],\n [\n 98.917243,\n 28.888239\n ],\n [\n 98.925866,\n 28.978306\n ],\n [\n 99.009018,\n 29.031158\n ],\n [\n 98.967134,\n 29.128418\n ],\n [\n 98.976373,\n 29.204698\n ],\n [\n 99.113727,\n 29.221409\n ],\n [\n 99.132206,\n 28.948467\n ],\n [\n 99.103872,\n 28.842128\n ],\n [\n 99.126662,\n 28.699473\n ],\n [\n 99.183944,\n 28.588677\n ],\n [\n 99.174705,\n 28.402003\n ],\n [\n 99.280647,\n 28.298269\n ],\n [\n 99.306516,\n 28.227652\n ],\n [\n 99.374886,\n 28.181778\n ],\n [\n 99.437095,\n 28.398318\n ],\n [\n 99.403219,\n 28.546638\n ],\n [\n 99.463581,\n 28.549266\n ],\n [\n 99.532566,\n 28.681628\n ],\n [\n 99.615718,\n 28.741975\n ],\n [\n 99.625573,\n 28.814871\n ],\n [\n 99.717964,\n 28.846321\n ],\n [\n 99.733362,\n 28.719415\n ],\n [\n 99.793724,\n 28.699473\n ],\n [\n 99.987129,\n 28.524561\n ],\n [\n 99.990209,\n 28.476712\n ],\n [\n 100.073977,\n 28.42621\n ],\n [\n 100.054267,\n 28.376737\n ],\n [\n 100.176223,\n 28.324607\n ],\n [\n 100.157129,\n 28.210254\n ],\n [\n 100.033941,\n 28.184942\n ],\n [\n 100.086296,\n 28.030836\n ],\n [\n 100.196549,\n 27.936257\n ],\n [\n 100.210715,\n 27.877037\n ],\n [\n 100.295099,\n 27.869633\n ],\n [\n 100.327744,\n 27.720372\n ],\n [\n 100.442924,\n 27.866459\n ],\n [\n 100.54517,\n 27.809318\n ],\n [\n 100.633866,\n 27.915111\n ],\n [\n 100.681293,\n 27.923041\n ],\n [\n 100.707162,\n 27.80085\n ],\n [\n 100.782307,\n 27.691767\n ],\n [\n 100.848212,\n 27.670573\n ],\n [\n 100.936908,\n 27.469026\n ],\n [\n 101.021907,\n 27.332508\n ],\n [\n 101.057016,\n 27.20061\n ],\n [\n 101.170349,\n 27.195821\n ],\n [\n 101.136472,\n 27.023794\n ],\n [\n 101.264587,\n 26.955549\n ],\n [\n 101.267667,\n 26.902737\n ],\n [\n 101.399478,\n 26.841893\n ],\n [\n 101.357594,\n 26.770868\n ],\n [\n 101.389623,\n 26.723314\n ],\n [\n 101.512195,\n 26.756443\n ],\n [\n 101.453065,\n 26.692848\n ],\n [\n 101.451833,\n 26.600867\n ],\n [\n 101.400094,\n 26.605146\n ],\n [\n 101.458608,\n 26.495424\n ],\n [\n 101.506652,\n 26.499708\n ],\n [\n 101.636615,\n 26.395245\n ],\n [\n 101.660636,\n 26.346999\n ],\n [\n 101.586724,\n 26.279422\n ],\n [\n 101.630455,\n 26.224687\n ],\n [\n 101.690202,\n 26.241861\n ],\n [\n 101.807846,\n 26.156501\n ],\n [\n 101.799223,\n 26.109231\n ],\n [\n 101.86328,\n 26.052266\n ],\n [\n 101.917483,\n 26.108156\n ],\n [\n 102.005562,\n 26.091499\n ],\n [\n 102.005562,\n 26.091499\n ],\n [\n 102.107808,\n 26.068391\n ],\n [\n 102.245163,\n 26.212341\n ],\n [\n 102.349257,\n 26.244545\n ],\n [\n 102.392372,\n 26.296588\n ],\n [\n 102.567915,\n 26.36362\n ],\n [\n 102.638748,\n 26.307852\n ],\n [\n 102.60056,\n 26.250448\n ],\n [\n 102.674473,\n 26.205363\n ],\n [\n 102.739762,\n 26.268691\n ],\n [\n 102.998457,\n 26.371661\n ],\n [\n 102.989833,\n 26.483108\n ],\n [\n 103.056971,\n 26.525943\n ],\n [\n 103.018783,\n 26.593911\n ],\n [\n 102.991681,\n 26.775675\n ],\n [\n 102.898674,\n 26.908073\n ],\n [\n 102.870957,\n 27.026992\n ],\n [\n 102.913457,\n 27.133538\n ],\n [\n 102.882044,\n 27.293168\n ],\n [\n 102.941174,\n 27.405303\n ],\n [\n 102.989833,\n 27.368114\n ],\n [\n 103.111789,\n 27.401054\n ],\n [\n 103.222043,\n 27.566133\n ],\n [\n 103.295955,\n 27.568785\n ],\n [\n 103.29226,\n 27.632943\n ],\n [\n 103.487512,\n 27.795028\n ],\n [\n 103.515846,\n 27.965326\n ],\n [\n 103.488128,\n 28.03242\n ],\n [\n 103.430846,\n 28.044039\n ],\n [\n 103.471498,\n 28.123221\n ],\n [\n 103.573128,\n 28.230815\n ],\n [\n 103.639649,\n 28.261912\n ],\n [\n 103.721569,\n 28.201817\n ],\n [\n 103.877402,\n 28.311966\n ],\n [\n 103.781931,\n 28.525613\n ],\n [\n 103.838598,\n 28.587101\n ],\n [\n 103.844757,\n 28.660104\n ],\n [\n 103.940844,\n 28.606013\n ],\n [\n 104.12501,\n 28.637526\n ],\n [\n 104.314719,\n 28.615468\n ],\n [\n 104.425588,\n 28.626497\n ],\n [\n 104.318415,\n 28.538229\n ],\n [\n 104.261748,\n 28.537177\n ],\n [\n 104.254357,\n 28.408844\n ],\n [\n 104.314103,\n 28.306698\n ],\n [\n 104.384936,\n 28.329874\n ],\n [\n 104.44961,\n 28.269817\n ],\n [\n 104.44653,\n 28.112666\n ],\n [\n 104.354139,\n 28.019744\n ],\n [\n 104.40095,\n 27.952114\n ],\n [\n 104.573413,\n 27.840537\n ],\n [\n 104.743413,\n 27.901892\n ],\n [\n 104.872144,\n 27.905594\n ],\n [\n 105.05939,\n 28.097889\n ],\n [\n 105.186889,\n 28.0546\n ],\n [\n 105.186273,\n 27.995445\n ],\n [\n 105.270657,\n 27.99703\n ],\n [\n 105.284823,\n 27.935729\n ],\n [\n 105.233084,\n 27.895547\n ],\n [\n 105.244171,\n 27.823077\n ],\n [\n 105.308229,\n 27.810376\n ],\n [\n 105.308229,\n 27.810376\n ],\n [\n 105.273736,\n 27.795028\n ],\n [\n 105.308229,\n 27.705011\n ],\n [\n 105.305149,\n 27.612799\n ],\n [\n 105.232469,\n 27.546506\n ],\n [\n 105.260186,\n 27.514672\n ],\n [\n 105.184425,\n 27.393085\n ],\n [\n 105.067397,\n 27.418051\n ],\n [\n 104.871528,\n 27.291041\n ],\n [\n 104.808702,\n 27.35483\n ],\n [\n 104.609754,\n 27.306991\n ],\n [\n 104.546312,\n 27.330382\n ],\n [\n 104.497653,\n 27.411677\n ],\n [\n 104.363378,\n 27.467964\n ],\n [\n 104.174285,\n 27.262856\n ],\n [\n 104.113307,\n 27.338354\n ],\n [\n 104.01722,\n 27.383523\n ],\n [\n 104.015372,\n 27.429204\n ],\n [\n 103.932221,\n 27.444072\n ],\n [\n 103.903271,\n 27.347921\n ],\n [\n 103.711714,\n 27.14259\n ],\n [\n 103.624251,\n 27.112237\n ],\n [\n 103.638418,\n 27.013133\n ],\n [\n 103.675374,\n 27.051506\n ],\n [\n 103.77454,\n 26.951815\n ],\n [\n 103.779468,\n 26.874454\n ],\n [\n 103.705555,\n 26.794904\n ],\n [\n 103.773308,\n 26.716901\n ],\n [\n 103.764685,\n 26.584816\n ],\n [\n 103.865699,\n 26.512023\n ],\n [\n 104.052329,\n 26.507204\n ],\n [\n 104.120082,\n 26.636705\n ],\n [\n 104.354139,\n 26.621194\n ],\n [\n 104.421276,\n 26.712091\n ],\n [\n 104.487798,\n 26.579465\n ],\n [\n 104.554935,\n 26.590701\n ],\n [\n 104.683667,\n 26.377557\n ],\n [\n 104.592508,\n 26.317506\n ],\n [\n 104.499501,\n 26.070541\n ],\n [\n 104.414501,\n 25.909733\n ],\n [\n 104.441602,\n 25.869362\n ],\n [\n 104.373233,\n 25.731459\n ],\n [\n 104.328886,\n 25.760561\n ],\n [\n 104.309791,\n 25.648964\n ],\n [\n 104.332581,\n 25.598792\n ],\n [\n 104.420661,\n 25.585301\n ],\n [\n 104.434827,\n 25.47246\n ],\n [\n 104.556783,\n 25.524845\n ],\n [\n 104.543232,\n 25.400597\n ],\n [\n 104.646094,\n 25.356809\n ],\n [\n 104.639935,\n 25.298942\n ],\n [\n 104.816094,\n 25.262152\n ],\n [\n 104.822869,\n 25.17013\n ],\n [\n 104.750804,\n 25.215067\n ],\n [\n 104.667652,\n 25.05961\n ],\n [\n 104.713232,\n 24.996179\n ],\n [\n 104.539537,\n 24.813836\n ],\n [\n 104.529682,\n 24.73126\n ],\n [\n 104.492109,\n 24.656241\n ],\n [\n 104.610986,\n 24.376973\n ],\n [\n 104.70892,\n 24.321372\n ],\n [\n 104.72863,\n 24.446167\n ],\n [\n 104.83642,\n 24.446712\n ],\n [\n 104.979933,\n 24.412937\n ],\n [\n 105.063085,\n 24.429281\n ],\n [\n 105.063085,\n 24.429281\n ],\n [\n 105.188121,\n 24.346995\n ],\n [\n 105.164715,\n 24.288109\n ],\n [\n 105.229389,\n 24.165888\n ],\n [\n 105.20044,\n 24.105279\n ],\n [\n 105.260186,\n 24.061033\n ],\n [\n 105.320548,\n 24.116202\n ],\n [\n 105.481924,\n 24.018958\n ],\n [\n 105.529967,\n 24.129308\n ],\n [\n 105.628518,\n 24.126577\n ],\n [\n 105.649459,\n 24.033167\n ],\n [\n 105.704278,\n 24.066497\n ],\n [\n 105.89214,\n 24.040271\n ],\n [\n 105.933407,\n 24.123847\n ],\n [\n 106.04982,\n 24.089986\n ],\n [\n 106.192102,\n 23.824798\n ],\n [\n 106.136667,\n 23.795238\n ],\n [\n 106.157609,\n 23.724048\n ],\n [\n 106.120653,\n 23.605129\n ],\n [\n 106.141595,\n 23.569487\n ],\n [\n 105.999929,\n 23.447683\n ],\n [\n 105.89214,\n 23.525058\n ],\n [\n 105.815763,\n 23.506953\n ],\n [\n 105.699966,\n 23.401566\n ],\n [\n 105.694423,\n 23.363122\n ],\n [\n 105.531815,\n 23.248275\n ],\n [\n 105.542902,\n 23.18449\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 540000,\n \"name\": \"西藏自治区\",\n \"center\": [\n 91.132212,\n 29.660361\n ],\n \"centroid\": [\n 88.388277,\n 31.56375\n ],\n \"childrenNum\": 7,\n \"level\": \"province\",\n \"subFeatureIndex\": 25,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 79.039649,\n 34.33427\n ],\n [\n 79.0107,\n 34.399956\n ],\n [\n 79.161605,\n 34.441416\n ],\n [\n 79.229358,\n 34.413778\n ],\n [\n 79.504683,\n 34.454737\n ],\n [\n 79.675914,\n 34.451284\n ],\n [\n 79.801566,\n 34.478909\n ],\n [\n 79.906892,\n 34.683837\n ],\n [\n 79.947544,\n 34.820993\n ],\n [\n 80.034391,\n 34.902\n ],\n [\n 80.031311,\n 35.034384\n ],\n [\n 80.118159,\n 35.066222\n ],\n [\n 80.23026,\n 35.147476\n ],\n [\n 80.257977,\n 35.20323\n ],\n [\n 80.362687,\n 35.209096\n ],\n [\n 80.268448,\n 35.294114\n ],\n [\n 80.321419,\n 35.386848\n ],\n [\n 80.412578,\n 35.433663\n ],\n [\n 80.516672,\n 35.392214\n ],\n [\n 80.65649,\n 35.394165\n ],\n [\n 80.689135,\n 35.33903\n ],\n [\n 80.844351,\n 35.345375\n ],\n [\n 81.026053,\n 35.312181\n ],\n [\n 81.031597,\n 35.380506\n ],\n [\n 81.09935,\n 35.407333\n ],\n [\n 81.219458,\n 35.319016\n ],\n [\n 81.362356,\n 35.354647\n ],\n [\n 81.494167,\n 35.292161\n ],\n [\n 81.513261,\n 35.235002\n ],\n [\n 81.675253,\n 35.233536\n ],\n [\n 81.736847,\n 35.262365\n ],\n [\n 81.927789,\n 35.271158\n ],\n [\n 82.05344,\n 35.350255\n ],\n [\n 82.033114,\n 35.450236\n ],\n [\n 82.328149,\n 35.559342\n ],\n [\n 82.336156,\n 35.651284\n ],\n [\n 82.424852,\n 35.713006\n ],\n [\n 82.628727,\n 35.692114\n ],\n [\n 82.731589,\n 35.63767\n ],\n [\n 82.788872,\n 35.684824\n ],\n [\n 82.960719,\n 35.671702\n ],\n [\n 82.998907,\n 35.484348\n ],\n [\n 83.067892,\n 35.462908\n ],\n [\n 83.127022,\n 35.398554\n ],\n [\n 83.242203,\n 35.420011\n ],\n [\n 83.451006,\n 35.38197\n ],\n [\n 83.622238,\n 35.335614\n ],\n [\n 83.677672,\n 35.360991\n ],\n [\n 83.885244,\n 35.367334\n ],\n [\n 84.005968,\n 35.422449\n ],\n [\n 84.095895,\n 35.362943\n ],\n [\n 84.1618,\n 35.359039\n ],\n [\n 84.335495,\n 35.414647\n ],\n [\n 84.45314,\n 35.473141\n ],\n [\n 84.448828,\n 35.55058\n ],\n [\n 84.729081,\n 35.613353\n ],\n [\n 85.053065,\n 35.751862\n ],\n [\n 85.159006,\n 35.745549\n ],\n [\n 85.271107,\n 35.788757\n ],\n [\n 85.372121,\n 35.701346\n ],\n [\n 85.613569,\n 35.652257\n ],\n [\n 85.65299,\n 35.731465\n ],\n [\n 85.811286,\n 35.779049\n ],\n [\n 85.949256,\n 35.779049\n ],\n [\n 86.060125,\n 35.846008\n ],\n [\n 86.132806,\n 35.979271\n ],\n [\n 86.199944,\n 36.032513\n ],\n [\n 86.187625,\n 36.131158\n ],\n [\n 86.392733,\n 36.206992\n ],\n [\n 86.515305,\n 36.205543\n ],\n [\n 86.701318,\n 36.245122\n ],\n [\n 86.746282,\n 36.291916\n ],\n [\n 86.862078,\n 36.300114\n ],\n [\n 86.887332,\n 36.262492\n ],\n [\n 86.996353,\n 36.308793\n ],\n [\n 87.149106,\n 36.29722\n ],\n [\n 87.193454,\n 36.349283\n ],\n [\n 87.306787,\n 36.363739\n ],\n [\n 87.361605,\n 36.419128\n ],\n [\n 87.460155,\n 36.409498\n ],\n [\n 87.470626,\n 36.354102\n ],\n [\n 87.570409,\n 36.342536\n ],\n [\n 87.731785,\n 36.384936\n ],\n [\n 87.949211,\n 36.401312\n ],\n [\n 87.983088,\n 36.437903\n ],\n [\n 88.134609,\n 36.427313\n ],\n [\n 88.241782,\n 36.468704\n ],\n [\n 88.365586,\n 36.457636\n ],\n [\n 88.470912,\n 36.482175\n ],\n [\n 88.573158,\n 36.461005\n ],\n [\n 88.623665,\n 36.389271\n ],\n [\n 88.783809,\n 36.291916\n ],\n [\n 88.802903,\n 36.337717\n ],\n [\n 88.926091,\n 36.364221\n ],\n [\n 88.964279,\n 36.318917\n ],\n [\n 89.10225,\n 36.281305\n ],\n [\n 89.127503,\n 36.249465\n ],\n [\n 89.232213,\n 36.295774\n ],\n [\n 89.287647,\n 36.235954\n ],\n [\n 89.375727,\n 36.228231\n ],\n [\n 89.490291,\n 36.150969\n ],\n [\n 89.711414,\n 36.092972\n ],\n [\n 89.638117,\n 36.04993\n ],\n [\n 89.476125,\n 36.021868\n ],\n [\n 89.418843,\n 36.04606\n ],\n [\n 89.429929,\n 35.916302\n ],\n [\n 89.549422,\n 35.858132\n ],\n [\n 89.801957,\n 35.847948\n ],\n [\n 89.747138,\n 35.751862\n ],\n [\n 89.765616,\n 35.599732\n ],\n [\n 89.700327,\n 35.537435\n ],\n [\n 89.744058,\n 35.479963\n ],\n [\n 89.68616,\n 35.414647\n ],\n [\n 89.497067,\n 35.361479\n ],\n [\n 89.532175,\n 35.285323\n ],\n [\n 89.449639,\n 35.226693\n ],\n [\n 89.513081,\n 35.139158\n ],\n [\n 89.593153,\n 35.104412\n ],\n [\n 89.560509,\n 34.938794\n ],\n [\n 89.654747,\n 34.883351\n ],\n [\n 89.707102,\n 34.919663\n ],\n [\n 89.821667,\n 34.902981\n ],\n [\n 89.867862,\n 34.810677\n ],\n [\n 89.799493,\n 34.74384\n ],\n [\n 89.732356,\n 34.732039\n ],\n [\n 89.72558,\n 34.660709\n ],\n [\n 89.798877,\n 34.628714\n ],\n [\n 89.823515,\n 34.455231\n ],\n [\n 89.801957,\n 34.390575\n ],\n [\n 89.872174,\n 34.335752\n ],\n [\n 89.825362,\n 34.293746\n ],\n [\n 89.818587,\n 34.174037\n ],\n [\n 89.655979,\n 34.096778\n ],\n [\n 89.635037,\n 34.0492\n ],\n [\n 89.691704,\n 33.957933\n ],\n [\n 89.795181,\n 33.865575\n ],\n [\n 89.837065,\n 33.869052\n ],\n [\n 89.933768,\n 33.796986\n ],\n [\n 89.907282,\n 33.74128\n ],\n [\n 90.008296,\n 33.688026\n ],\n [\n 89.984275,\n 33.61232\n ],\n [\n 90.01076,\n 33.553501\n ],\n [\n 90.080977,\n 33.530561\n ],\n [\n 90.092064,\n 33.469691\n ],\n [\n 90.246665,\n 33.42426\n ],\n [\n 90.332896,\n 33.310829\n ],\n [\n 90.405577,\n 33.260311\n ],\n [\n 90.486881,\n 33.266815\n ],\n [\n 90.70554,\n 33.135645\n ],\n [\n 90.805938,\n 33.114599\n ],\n [\n 91.001807,\n 33.116102\n ],\n [\n 91.001807,\n 33.116102\n ],\n [\n 91.134849,\n 33.073495\n ],\n [\n 91.262349,\n 33.141156\n ],\n [\n 91.436044,\n 33.065974\n ],\n [\n 91.49887,\n 33.109086\n ],\n [\n 91.58079,\n 33.039395\n ],\n [\n 91.785281,\n 32.944044\n ],\n [\n 91.896766,\n 32.907884\n ],\n [\n 91.955897,\n 32.820437\n ],\n [\n 92.145606,\n 32.885779\n ],\n [\n 92.227526,\n 32.820939\n ],\n [\n 92.198577,\n 32.755046\n ],\n [\n 92.255243,\n 32.720823\n ],\n [\n 92.355641,\n 32.764606\n ],\n [\n 92.63651,\n 32.720319\n ],\n [\n 92.686401,\n 32.765109\n ],\n [\n 92.877342,\n 32.697161\n ],\n [\n 93.019624,\n 32.737433\n ],\n [\n 93.069515,\n 32.626137\n ],\n [\n 93.239514,\n 32.662411\n ],\n [\n 93.385492,\n 32.525297\n ],\n [\n 93.4631,\n 32.556065\n ],\n [\n 93.516687,\n 32.475844\n ],\n [\n 93.618933,\n 32.522775\n ],\n [\n 93.654657,\n 32.57321\n ],\n [\n 93.820345,\n 32.549509\n ],\n [\n 93.861613,\n 32.466253\n ],\n [\n 93.958931,\n 32.484929\n ],\n [\n 94.136322,\n 32.433939\n ],\n [\n 94.196684,\n 32.516216\n ],\n [\n 94.371611,\n 32.524793\n ],\n [\n 94.395016,\n 32.594385\n ],\n [\n 94.53853,\n 32.599425\n ],\n [\n 94.614291,\n 32.673492\n ],\n [\n 94.772587,\n 32.555057\n ],\n [\n 94.80708,\n 32.486444\n ],\n [\n 94.889616,\n 32.472311\n ],\n [\n 94.912405,\n 32.415758\n ],\n [\n 94.985086,\n 32.421819\n ],\n [\n 95.081789,\n 32.384942\n ],\n [\n 95.218527,\n 32.397067\n ],\n [\n 95.261643,\n 32.348049\n ],\n [\n 95.096571,\n 32.322267\n ],\n [\n 95.10581,\n 32.259042\n ],\n [\n 95.241317,\n 32.32075\n ],\n [\n 95.26965,\n 32.194761\n ],\n [\n 95.312766,\n 32.148673\n ],\n [\n 95.406389,\n 32.182102\n ],\n [\n 95.454432,\n 32.062006\n ],\n [\n 95.360809,\n 31.959013\n ],\n [\n 95.439649,\n 31.831508\n ],\n [\n 95.546823,\n 31.739961\n ],\n [\n 95.618272,\n 31.783712\n ],\n [\n 95.779648,\n 31.74912\n ],\n [\n 95.825227,\n 31.681935\n ],\n [\n 95.89914,\n 31.817273\n ],\n [\n 95.982908,\n 31.816765\n ],\n [\n 96.041422,\n 31.734364\n ],\n [\n 96.135661,\n 31.702299\n ],\n [\n 96.160298,\n 31.600943\n ],\n [\n 96.204646,\n 31.598904\n ],\n [\n 96.252689,\n 31.69619\n ],\n [\n 96.176313,\n 31.777608\n ],\n [\n 96.253921,\n 31.929566\n ],\n [\n 96.389428,\n 31.919917\n ],\n [\n 96.468268,\n 31.769978\n ],\n [\n 96.576057,\n 31.712989\n ],\n [\n 96.616093,\n 31.736908\n ],\n [\n 96.775006,\n 31.673788\n ],\n [\n 96.840295,\n 31.720623\n ],\n [\n 96.760223,\n 31.856922\n ],\n [\n 96.81073,\n 31.894521\n ],\n [\n 96.722651,\n 32.013314\n ],\n [\n 96.894498,\n 32.013822\n ],\n [\n 97.008447,\n 32.067076\n ],\n [\n 97.130403,\n 32.04375\n ],\n [\n 97.308409,\n 32.074682\n ],\n [\n 97.264062,\n 32.183621\n ],\n [\n 97.299786,\n 32.294959\n ],\n [\n 97.371235,\n 32.273208\n ],\n [\n 97.424822,\n 32.323278\n ],\n [\n 97.387865,\n 32.427374\n ],\n [\n 97.341054,\n 32.441009\n ],\n [\n 97.388481,\n 32.501583\n ],\n [\n 97.334895,\n 32.514198\n ],\n [\n 97.448843,\n 32.586823\n ],\n [\n 97.472249,\n 32.54497\n ],\n [\n 97.670582,\n 32.517225\n ],\n [\n 97.730944,\n 32.527315\n ],\n [\n 97.937283,\n 32.484425\n ],\n [\n 98.218768,\n 32.342489\n ],\n [\n 98.218768,\n 32.234752\n ],\n [\n 98.301919,\n 32.12334\n ],\n [\n 98.434962,\n 32.007734\n ],\n [\n 98.414636,\n 31.832525\n ],\n [\n 98.543983,\n 31.718588\n ],\n [\n 98.553839,\n 31.656473\n ],\n [\n 98.713367,\n 31.510189\n ],\n [\n 98.837787,\n 31.436705\n ],\n [\n 98.88583,\n 31.376446\n ],\n [\n 98.773113,\n 31.249163\n ],\n [\n 98.691809,\n 31.333016\n ],\n [\n 98.64007,\n 31.337615\n ],\n [\n 98.602498,\n 31.192367\n ],\n [\n 98.709671,\n 31.118635\n ],\n [\n 98.736772,\n 31.049459\n ],\n [\n 98.806374,\n 30.995621\n ],\n [\n 98.774345,\n 30.907877\n ],\n [\n 98.901844,\n 30.785105\n ],\n [\n 98.957895,\n 30.765056\n ],\n [\n 98.907388,\n 30.698196\n ],\n [\n 98.989308,\n 30.151826\n ],\n [\n 99.044742,\n 30.079885\n ],\n [\n 99.068148,\n 29.93118\n ],\n [\n 99.0238,\n 29.846105\n ],\n [\n 98.993003,\n 29.656502\n ],\n [\n 99.052133,\n 29.563908\n ],\n [\n 99.075539,\n 29.314316\n ],\n [\n 99.113727,\n 29.221409\n ],\n [\n 98.976373,\n 29.204698\n ],\n [\n 98.967134,\n 29.128418\n ],\n [\n 99.009018,\n 29.031158\n ],\n [\n 98.925866,\n 28.978306\n ],\n [\n 98.917243,\n 28.888239\n ],\n [\n 98.972677,\n 28.832693\n ],\n [\n 98.912931,\n 28.800715\n ],\n [\n 98.828547,\n 28.820113\n ],\n [\n 98.815613,\n 28.948991\n ],\n [\n 98.765722,\n 29.006044\n ],\n [\n 98.657932,\n 28.93014\n ],\n [\n 98.652389,\n 28.816968\n ],\n [\n 98.683802,\n 28.739877\n ],\n [\n 98.594491,\n 28.667979\n ],\n [\n 98.638222,\n 28.55242\n ],\n [\n 98.627751,\n 28.487756\n ],\n [\n 98.677026,\n 28.463563\n ],\n [\n 98.752787,\n 28.333561\n ],\n [\n 98.712135,\n 28.229233\n ],\n [\n 98.626519,\n 28.165427\n ],\n [\n 98.559382,\n 28.182833\n ],\n [\n 98.428803,\n 28.10475\n ],\n [\n 98.389383,\n 28.114777\n ],\n [\n 98.37768,\n 28.246101\n ],\n [\n 98.301303,\n 28.384633\n ],\n [\n 98.208913,\n 28.35831\n ],\n [\n 98.266195,\n 28.24083\n ],\n [\n 98.168876,\n 28.204454\n ],\n [\n 98.139311,\n 28.142216\n ],\n [\n 98.090036,\n 28.195489\n ],\n [\n 98.03337,\n 28.187052\n ],\n [\n 98.020435,\n 28.25348\n ],\n [\n 97.907718,\n 28.363575\n ],\n [\n 97.801161,\n 28.326714\n ],\n [\n 97.738335,\n 28.396213\n ],\n [\n 97.737103,\n 28.465667\n ],\n [\n 97.68598,\n 28.51983\n ],\n [\n 97.569567,\n 28.541382\n ],\n [\n 97.506126,\n 28.471453\n ],\n [\n 97.485184,\n 28.386212\n ],\n [\n 97.518445,\n 28.327767\n ],\n [\n 97.460546,\n 28.268236\n ],\n [\n 97.42359,\n 28.297742\n ],\n [\n 97.350909,\n 28.23714\n ],\n [\n 97.321344,\n 28.054071\n ],\n [\n 97.413119,\n 28.013406\n ],\n [\n 97.386634,\n 27.882855\n ],\n [\n 97.303482,\n 27.913525\n ],\n [\n 97.062649,\n 27.742615\n ],\n [\n 97.049099,\n 27.814081\n ],\n [\n 96.972722,\n 27.861169\n ],\n [\n 96.849534,\n 27.874393\n ],\n [\n 96.784245,\n 27.9315\n ],\n [\n 96.690622,\n 27.948943\n ],\n [\n 96.572978,\n 28.058296\n ],\n [\n 96.499681,\n 28.067271\n ],\n [\n 96.46334,\n 28.143271\n ],\n [\n 96.398667,\n 28.118471\n ],\n [\n 96.297037,\n 28.141161\n ],\n [\n 96.275479,\n 28.228179\n ],\n [\n 95.989067,\n 28.198126\n ],\n [\n 95.874502,\n 28.297742\n ],\n [\n 95.674322,\n 28.254007\n ],\n [\n 95.371896,\n 28.110028\n ],\n [\n 95.28628,\n 27.939957\n ],\n [\n 95.015267,\n 27.828897\n ],\n [\n 94.88592,\n 27.743145\n ],\n [\n 94.524979,\n 27.596362\n ],\n [\n 94.277372,\n 27.580983\n ],\n [\n 93.970634,\n 27.305396\n ],\n [\n 93.849294,\n 27.168676\n ],\n [\n 93.841903,\n 27.045645\n ],\n [\n 93.56781,\n 26.937948\n ],\n [\n 93.232739,\n 26.907006\n ],\n [\n 93.111399,\n 26.880325\n ],\n [\n 92.909371,\n 26.914475\n ],\n [\n 92.802813,\n 26.895267\n ],\n [\n 92.682089,\n 26.948082\n ],\n [\n 92.57122,\n 26.946482\n ],\n [\n 92.404916,\n 26.902737\n ],\n [\n 92.109265,\n 26.854705\n ],\n [\n 92.124664,\n 26.959815\n ],\n [\n 92.043976,\n 27.052572\n ],\n [\n 92.032273,\n 27.168144\n ],\n [\n 92.125896,\n 27.27296\n ],\n [\n 92.010715,\n 27.474866\n ],\n [\n 91.839484,\n 27.489728\n ],\n [\n 91.753868,\n 27.462656\n ],\n [\n 91.585101,\n 27.54014\n ],\n [\n 91.570934,\n 27.650965\n ],\n [\n 91.642383,\n 27.766442\n ],\n [\n 91.611586,\n 27.891316\n ],\n [\n 91.486551,\n 27.937314\n ],\n [\n 91.464993,\n 28.002841\n ],\n [\n 91.309776,\n 28.057768\n ],\n [\n 91.251878,\n 27.970611\n ],\n [\n 91.162567,\n 27.968497\n ],\n [\n 91.113292,\n 27.846357\n ],\n [\n 90.96485,\n 27.900306\n ],\n [\n 90.96177,\n 27.9537\n ],\n [\n 90.896481,\n 27.9463\n ],\n [\n 90.802242,\n 28.040342\n ],\n [\n 90.701844,\n 28.076246\n ],\n [\n 90.591591,\n 28.021329\n ],\n [\n 90.513983,\n 28.061992\n ],\n [\n 90.384019,\n 28.060936\n ],\n [\n 90.296556,\n 28.15435\n ],\n [\n 90.231882,\n 28.144854\n ],\n [\n 90.124709,\n 28.190743\n ],\n [\n 90.03355,\n 28.13694\n ],\n [\n 89.976268,\n 28.189161\n ],\n [\n 89.906051,\n 28.180723\n ],\n [\n 89.789638,\n 28.24083\n ],\n [\n 89.720037,\n 28.170175\n ],\n [\n 89.605472,\n 28.161735\n ],\n [\n 89.461958,\n 28.031892\n ],\n [\n 89.375727,\n 27.875979\n ],\n [\n 89.238988,\n 27.796616\n ],\n [\n 89.184786,\n 27.673752\n ],\n [\n 89.131815,\n 27.633474\n ],\n [\n 89.163228,\n 27.574619\n ],\n [\n 89.095474,\n 27.471681\n ],\n [\n 89.182938,\n 27.373959\n ],\n [\n 89.077612,\n 27.287319\n ],\n [\n 89.057286,\n 27.234663\n ],\n [\n 88.975982,\n 27.217106\n ],\n [\n 88.911924,\n 27.274024\n ],\n [\n 88.920548,\n 27.325598\n ],\n [\n 88.809063,\n 27.405834\n ],\n [\n 88.770874,\n 27.567724\n ],\n [\n 88.852178,\n 27.671103\n ],\n [\n 88.888519,\n 27.846886\n ],\n [\n 88.842939,\n 28.006539\n ],\n [\n 88.764099,\n 28.068327\n ],\n [\n 88.67602,\n 28.068327\n ],\n [\n 88.645223,\n 28.111083\n ],\n [\n 88.565151,\n 28.083109\n ],\n [\n 88.554064,\n 28.027667\n ],\n [\n 88.478919,\n 28.034005\n ],\n [\n 88.401311,\n 27.976952\n ],\n [\n 88.254101,\n 27.939429\n ],\n [\n 88.156783,\n 27.957928\n ],\n [\n 88.111819,\n 27.864872\n ],\n [\n 87.826639,\n 27.927799\n ],\n [\n 87.727473,\n 27.802967\n ],\n [\n 87.590119,\n 27.848473\n ],\n [\n 87.45954,\n 27.82096\n ],\n [\n 87.420735,\n 27.859053\n ],\n [\n 87.364069,\n 27.824135\n ],\n [\n 87.280917,\n 27.845299\n ],\n [\n 87.227946,\n 27.813022\n ],\n [\n 87.118309,\n 27.840537\n ],\n [\n 87.035157,\n 27.9463\n ],\n [\n 86.935375,\n 27.955285\n ],\n [\n 86.864542,\n 28.022385\n ],\n [\n 86.756753,\n 28.032948\n ],\n [\n 86.700086,\n 28.101583\n ],\n [\n 86.647732,\n 28.069383\n ],\n [\n 86.568891,\n 28.103167\n ],\n [\n 86.514689,\n 27.954757\n ],\n [\n 86.450015,\n 27.908766\n ],\n [\n 86.231972,\n 27.97431\n ],\n [\n 86.19132,\n 28.16701\n ],\n [\n 86.082915,\n 28.01816\n ],\n [\n 86.125415,\n 27.923041\n ],\n [\n 86.053966,\n 27.900306\n ],\n [\n 85.949256,\n 27.937314\n ],\n [\n 85.980053,\n 27.984349\n ],\n [\n 85.901213,\n 28.053543\n ],\n [\n 85.854402,\n 28.172284\n ],\n [\n 85.753388,\n 28.227652\n ],\n [\n 85.720743,\n 28.371999\n ],\n [\n 85.682555,\n 28.375684\n ],\n [\n 85.650526,\n 28.283517\n ],\n [\n 85.526106,\n 28.324607\n ],\n [\n 85.415853,\n 28.321447\n ],\n [\n 85.272339,\n 28.282463\n ],\n [\n 85.209513,\n 28.338827\n ],\n [\n 85.113427,\n 28.34462\n ],\n [\n 85.108499,\n 28.461459\n ],\n [\n 85.189803,\n 28.545062\n ],\n [\n 85.195963,\n 28.623871\n ],\n [\n 85.126361,\n 28.675854\n ],\n [\n 85.05676,\n 28.674279\n ],\n [\n 84.981616,\n 28.586576\n ],\n [\n 84.857196,\n 28.56766\n ],\n [\n 84.698284,\n 28.633325\n ],\n [\n 84.650856,\n 28.714692\n ],\n [\n 84.483321,\n 28.735155\n ],\n [\n 84.408176,\n 28.854182\n ],\n [\n 84.234481,\n 28.889287\n ],\n [\n 84.248648,\n 29.030635\n ],\n [\n 84.194445,\n 29.044759\n ],\n [\n 84.20738,\n 29.118487\n ],\n [\n 84.116837,\n 29.286661\n ],\n [\n 84.002272,\n 29.291358\n ],\n [\n 83.917273,\n 29.324749\n ],\n [\n 83.727563,\n 29.244383\n ],\n [\n 83.656114,\n 29.167088\n ],\n [\n 83.548941,\n 29.201042\n ],\n [\n 83.266841,\n 29.571194\n ],\n [\n 83.12887,\n 29.62374\n ],\n [\n 83.088834,\n 29.605014\n ],\n [\n 82.9484,\n 29.704846\n ],\n [\n 82.830756,\n 29.687694\n ],\n [\n 82.703872,\n 29.847662\n ],\n [\n 82.6238,\n 29.834687\n ],\n [\n 82.560974,\n 29.955547\n ],\n [\n 82.498148,\n 29.947771\n ],\n [\n 82.412533,\n 30.012037\n ],\n [\n 82.246845,\n 30.071601\n ],\n [\n 82.17786,\n 30.067976\n ],\n [\n 82.207425,\n 30.143548\n ],\n [\n 82.114418,\n 30.226816\n ],\n [\n 82.104563,\n 30.346682\n ],\n [\n 81.99123,\n 30.322927\n ],\n [\n 81.872354,\n 30.373012\n ],\n [\n 81.759021,\n 30.385401\n ],\n [\n 81.63029,\n 30.446802\n ],\n [\n 81.566232,\n 30.428747\n ],\n [\n 81.555761,\n 30.369399\n ],\n [\n 81.406704,\n 30.40398\n ],\n [\n 81.427646,\n 30.305366\n ],\n [\n 81.393769,\n 30.199413\n ],\n [\n 81.335871,\n 30.150791\n ],\n [\n 81.269349,\n 30.153378\n ],\n [\n 81.293371,\n 30.094899\n ],\n [\n 81.225618,\n 30.005301\n ],\n [\n 81.131995,\n 30.016181\n ],\n [\n 81.034677,\n 30.246977\n ],\n [\n 80.81725,\n 30.321378\n ],\n [\n 80.719316,\n 30.414816\n ],\n [\n 80.633084,\n 30.458665\n ],\n [\n 80.549316,\n 30.448866\n ],\n [\n 80.322035,\n 30.564338\n ],\n [\n 80.214245,\n 30.585974\n ],\n [\n 80.124934,\n 30.558671\n ],\n [\n 80.04363,\n 30.603485\n ],\n [\n 79.970333,\n 30.685848\n ],\n [\n 79.961094,\n 30.771225\n ],\n [\n 79.890877,\n 30.854986\n ],\n [\n 79.835443,\n 30.850876\n ],\n [\n 79.75845,\n 30.93662\n ],\n [\n 79.668523,\n 30.980233\n ],\n [\n 79.59769,\n 30.925843\n ],\n [\n 79.505915,\n 31.027415\n ],\n [\n 79.427075,\n 31.018186\n ],\n [\n 79.421531,\n 31.067399\n ],\n [\n 79.316206,\n 31.017673\n ],\n [\n 79.33222,\n 30.96946\n ],\n [\n 79.227511,\n 30.94945\n ],\n [\n 79.181931,\n 31.015622\n ],\n [\n 79.0957,\n 30.993057\n ],\n [\n 79.010084,\n 31.044333\n ],\n [\n 78.997765,\n 31.159093\n ],\n [\n 78.865338,\n 31.313082\n ],\n [\n 78.841933,\n 31.288542\n ],\n [\n 78.755085,\n 31.3555\n ],\n [\n 78.792041,\n 31.436195\n ],\n [\n 78.729832,\n 31.478047\n ],\n [\n 78.740303,\n 31.532631\n ],\n [\n 78.845628,\n 31.610115\n ],\n [\n 78.763092,\n 31.668696\n ],\n [\n 78.706426,\n 31.778626\n ],\n [\n 78.654071,\n 31.821849\n ],\n [\n 78.739687,\n 31.885376\n ],\n [\n 78.762476,\n 31.946829\n ],\n [\n 78.599868,\n 32.024982\n ],\n [\n 78.519796,\n 32.123847\n ],\n [\n 78.469905,\n 32.127901\n ],\n [\n 78.430485,\n 32.211975\n ],\n [\n 78.511173,\n 32.308108\n ],\n [\n 78.458818,\n 32.379889\n ],\n [\n 78.472985,\n 32.435454\n ],\n [\n 78.395377,\n 32.530342\n ],\n [\n 78.518564,\n 32.605978\n ],\n [\n 78.628202,\n 32.630168\n ],\n [\n 78.741534,\n 32.703706\n ],\n [\n 78.781571,\n 32.607994\n ],\n [\n 78.760629,\n 32.56363\n ],\n [\n 78.81052,\n 32.436464\n ],\n [\n 78.970664,\n 32.331873\n ],\n [\n 79.005772,\n 32.375341\n ],\n [\n 79.103091,\n 32.369782\n ],\n [\n 79.135736,\n 32.472311\n ],\n [\n 79.252148,\n 32.51672\n ],\n [\n 79.308199,\n 32.596905\n ],\n [\n 79.27309,\n 32.678025\n ],\n [\n 79.301423,\n 32.728877\n ],\n [\n 79.224431,\n 32.784729\n ],\n [\n 79.255844,\n 32.942537\n ],\n [\n 79.162837,\n 33.011804\n ],\n [\n 79.139431,\n 33.117606\n ],\n [\n 79.162221,\n 33.166202\n ],\n [\n 79.072294,\n 33.228286\n ],\n [\n 79.022403,\n 33.323328\n ],\n [\n 78.84686,\n 33.421264\n ],\n [\n 78.74215,\n 33.553501\n ],\n [\n 78.755085,\n 33.623281\n ],\n [\n 78.692259,\n 33.676575\n ],\n [\n 78.779723,\n 33.732323\n ],\n [\n 78.758165,\n 33.791019\n ],\n [\n 78.744614,\n 33.980759\n ],\n [\n 78.656535,\n 34.030359\n ],\n [\n 78.661462,\n 34.086868\n ],\n [\n 78.750158,\n 34.092815\n ],\n [\n 78.793273,\n 34.132445\n ],\n [\n 78.9257,\n 34.155719\n ],\n [\n 78.981751,\n 34.318458\n ],\n [\n 79.039649,\n 34.33427\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 610000,\n \"name\": \"陕西省\",\n \"center\": [\n 108.948024,\n 34.263161\n ],\n \"centroid\": [\n 108.887567,\n 35.263665\n ],\n \"childrenNum\": 10,\n \"level\": \"province\",\n \"subFeatureIndex\": 26,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 107.288474,\n 37.00812\n ],\n [\n 107.288474,\n 37.00812\n ],\n [\n 107.268764,\n 37.099324\n ],\n [\n 107.336517,\n 37.165628\n ],\n [\n 107.257677,\n 37.337082\n ],\n [\n 107.284162,\n 37.482036\n ],\n [\n 107.342061,\n 37.515265\n ],\n [\n 107.348836,\n 37.608226\n ],\n [\n 107.484959,\n 37.706279\n ],\n [\n 107.499125,\n 37.7659\n ],\n [\n 107.620465,\n 37.775832\n ],\n [\n 107.65003,\n 37.864688\n ],\n [\n 107.982022,\n 37.787181\n ],\n [\n 108.025137,\n 37.649926\n ],\n [\n 108.134159,\n 37.621971\n ],\n [\n 108.219158,\n 37.661295\n ],\n [\n 108.304158,\n 37.638556\n ],\n [\n 108.440896,\n 37.654663\n ],\n [\n 108.532671,\n 37.690656\n ],\n [\n 108.611512,\n 37.65419\n ],\n [\n 108.777815,\n 37.683554\n ],\n [\n 108.799989,\n 37.783871\n ],\n [\n 108.798141,\n 37.93362\n ],\n [\n 108.82709,\n 37.989285\n ],\n [\n 108.797525,\n 38.047735\n ],\n [\n 108.871438,\n 38.027471\n ],\n [\n 108.938575,\n 37.920877\n ],\n [\n 109.017416,\n 37.969949\n ],\n [\n 109.069155,\n 38.091071\n ],\n [\n 108.963829,\n 38.155085\n ],\n [\n 108.938575,\n 38.207291\n ],\n [\n 109.051908,\n 38.432146\n ],\n [\n 109.178792,\n 38.520675\n ],\n [\n 109.276726,\n 38.623121\n ],\n [\n 109.367269,\n 38.627328\n ],\n [\n 109.338936,\n 38.70161\n ],\n [\n 109.404226,\n 38.720752\n ],\n [\n 109.511399,\n 38.833633\n ],\n [\n 109.549587,\n 38.805662\n ],\n [\n 109.624116,\n 38.854603\n ],\n [\n 109.683862,\n 38.935631\n ],\n [\n 109.665384,\n 38.981691\n ],\n [\n 109.961035,\n 39.191608\n ],\n [\n 110.217881,\n 39.28105\n ],\n [\n 110.146432,\n 39.455434\n ],\n [\n 110.243751,\n 39.42355\n ],\n [\n 110.39096,\n 39.31161\n ],\n [\n 110.434692,\n 39.381016\n ],\n [\n 110.528315,\n 39.380091\n ],\n [\n 110.604075,\n 39.277345\n ],\n [\n 110.702626,\n 39.27364\n ],\n [\n 110.740198,\n 39.351874\n ],\n [\n 110.892335,\n 39.509927\n ],\n [\n 111.134399,\n 39.586513\n ],\n [\n 111.148566,\n 39.531619\n ],\n [\n 111.064182,\n 39.400899\n ],\n [\n 111.125776,\n 39.366678\n ],\n [\n 111.247732,\n 39.302351\n ],\n [\n 111.163348,\n 39.152644\n ],\n [\n 111.138711,\n 39.064897\n ],\n [\n 110.980414,\n 38.970063\n ],\n [\n 111.009363,\n 38.847614\n ],\n [\n 110.880016,\n 38.618446\n ],\n [\n 110.920052,\n 38.581973\n ],\n [\n 110.874473,\n 38.453702\n ],\n [\n 110.77777,\n 38.44105\n ],\n [\n 110.746973,\n 38.366029\n ],\n [\n 110.661358,\n 38.308773\n ],\n [\n 110.57759,\n 38.297035\n ],\n [\n 110.565887,\n 38.215283\n ],\n [\n 110.509221,\n 38.192245\n ],\n [\n 110.501213,\n 38.031713\n ],\n [\n 110.522771,\n 37.954853\n ],\n [\n 110.59422,\n 37.921821\n ],\n [\n 110.663821,\n 37.803256\n ],\n [\n 110.758676,\n 37.744139\n ],\n [\n 110.706321,\n 37.705332\n ],\n [\n 110.796248,\n 37.66319\n ],\n [\n 110.795017,\n 37.566029\n ],\n [\n 110.745125,\n 37.450693\n ],\n [\n 110.644111,\n 37.435017\n ],\n [\n 110.630561,\n 37.373228\n ],\n [\n 110.695234,\n 37.34945\n ],\n [\n 110.690307,\n 37.287115\n ],\n [\n 110.53509,\n 37.137969\n ],\n [\n 110.444547,\n 37.007164\n ],\n [\n 110.382953,\n 37.021975\n ],\n [\n 110.425453,\n 36.960325\n ],\n [\n 110.416214,\n 36.790892\n ],\n [\n 110.447011,\n 36.737687\n ],\n [\n 110.394656,\n 36.676768\n ],\n [\n 110.496902,\n 36.582175\n ],\n [\n 110.503677,\n 36.487948\n ],\n [\n 110.45933,\n 36.330969\n ],\n [\n 110.474112,\n 36.248018\n ],\n [\n 110.447011,\n 36.164495\n ],\n [\n 110.511684,\n 35.879951\n ],\n [\n 110.549257,\n 35.877527\n ],\n [\n 110.57759,\n 35.701346\n ],\n [\n 110.609619,\n 35.632321\n ],\n [\n 110.525851,\n 35.44195\n ],\n [\n 110.477808,\n 35.413672\n ],\n [\n 110.45009,\n 35.327803\n ],\n [\n 110.39404,\n 35.271647\n ],\n [\n 110.325671,\n 35.014785\n ],\n [\n 110.257301,\n 34.93487\n ],\n [\n 110.232664,\n 34.803308\n ],\n [\n 110.241287,\n 34.682361\n ],\n [\n 110.310272,\n 34.608033\n ],\n [\n 110.379257,\n 34.600646\n ],\n [\n 110.360779,\n 34.516878\n ],\n [\n 110.403279,\n 34.43352\n ],\n [\n 110.403279,\n 34.43352\n ],\n [\n 110.503677,\n 34.337234\n ],\n [\n 110.426685,\n 34.275454\n ],\n [\n 110.43962,\n 34.24331\n ],\n [\n 110.642264,\n 34.16067\n ],\n [\n 110.590525,\n 34.096778\n ],\n [\n 110.669365,\n 33.939072\n ],\n [\n 110.587445,\n 33.887929\n ],\n [\n 110.782698,\n 33.795494\n ],\n [\n 110.877552,\n 33.635238\n ],\n [\n 111.00382,\n 33.578429\n ],\n [\n 111.02661,\n 33.478675\n ],\n [\n 111.022914,\n 33.475181\n ],\n [\n 111.022914,\n 33.474682\n ],\n [\n 111.02661,\n 33.474183\n ],\n [\n 110.996429,\n 33.435745\n ],\n [\n 111.025994,\n 33.330327\n ],\n [\n 110.984726,\n 33.255308\n ],\n [\n 110.824582,\n 33.158188\n ],\n [\n 110.745741,\n 33.147167\n ],\n [\n 110.702626,\n 33.097057\n ],\n [\n 110.59422,\n 33.168706\n ],\n [\n 110.54125,\n 33.255809\n ],\n [\n 110.468569,\n 33.181226\n ],\n [\n 110.218497,\n 33.163197\n ],\n [\n 110.164911,\n 33.209265\n ],\n [\n 110.031252,\n 33.191742\n ],\n [\n 109.852013,\n 33.247803\n ],\n [\n 109.732521,\n 33.231288\n ],\n [\n 109.619804,\n 33.27532\n ],\n [\n 109.537268,\n 33.2438\n ],\n [\n 109.438718,\n 33.152177\n ],\n [\n 109.576073,\n 33.110088\n ],\n [\n 109.688174,\n 33.116603\n ],\n [\n 109.794731,\n 33.066977\n ],\n [\n 109.76455,\n 32.909391\n ],\n [\n 109.988752,\n 32.886281\n ],\n [\n 110.10886,\n 32.82999\n ],\n [\n 110.159367,\n 32.767122\n ],\n [\n 110.156903,\n 32.683061\n ],\n [\n 110.206179,\n 32.633191\n ],\n [\n 110.153824,\n 32.593376\n ],\n [\n 110.085454,\n 32.613034\n ],\n [\n 110.017701,\n 32.546987\n ],\n [\n 109.910528,\n 32.592872\n ],\n [\n 109.816905,\n 32.577244\n ],\n [\n 109.726978,\n 32.608498\n ],\n [\n 109.631507,\n 32.599929\n ],\n [\n 109.637051,\n 32.540935\n ],\n [\n 109.575457,\n 32.506629\n ],\n [\n 109.502776,\n 32.389489\n ],\n [\n 109.495385,\n 32.300522\n ],\n [\n 109.592703,\n 32.219568\n ],\n [\n 109.621652,\n 32.106617\n ],\n [\n 109.590855,\n 32.012807\n ],\n [\n 109.631507,\n 31.962059\n ],\n [\n 109.584696,\n 31.900617\n ],\n [\n 109.638282,\n 31.811172\n ],\n [\n 109.585928,\n 31.726731\n ],\n [\n 109.281654,\n 31.717061\n ],\n [\n 109.273646,\n 31.801003\n ],\n [\n 109.195422,\n 31.817782\n ],\n [\n 109.164009,\n 31.877247\n ],\n [\n 108.988466,\n 31.979317\n ],\n [\n 108.902235,\n 31.984899\n ],\n [\n 108.734084,\n 32.106617\n ],\n [\n 108.67249,\n 32.104083\n ],\n [\n 108.509882,\n 32.201343\n ],\n [\n 108.46923,\n 32.270173\n ],\n [\n 108.312781,\n 32.232222\n ],\n [\n 108.251187,\n 32.273208\n ],\n [\n 108.179122,\n 32.222099\n ],\n [\n 108.070717,\n 32.233234\n ],\n [\n 107.979558,\n 32.14614\n ],\n [\n 107.812022,\n 32.24791\n ],\n [\n 107.75474,\n 32.338445\n ],\n [\n 107.707929,\n 32.331873\n ],\n [\n 107.680211,\n 32.398078\n ],\n [\n 107.533002,\n 32.383426\n ],\n [\n 107.456625,\n 32.417778\n ],\n [\n 107.436299,\n 32.529837\n ],\n [\n 107.382097,\n 32.54043\n ],\n [\n 107.313727,\n 32.489976\n ],\n [\n 107.263836,\n 32.403129\n ],\n [\n 107.127098,\n 32.482406\n ],\n [\n 107.080286,\n 32.542448\n ],\n [\n 107.108004,\n 32.600938\n ],\n [\n 107.066736,\n 32.708741\n ],\n [\n 106.82344,\n 32.705217\n ],\n [\n 106.733513,\n 32.739446\n ],\n [\n 106.663296,\n 32.690615\n ],\n [\n 106.585687,\n 32.688097\n ],\n [\n 106.421231,\n 32.616562\n ],\n [\n 106.347935,\n 32.670974\n ],\n [\n 106.17424,\n 32.697664\n ],\n [\n 106.076305,\n 32.753537\n ],\n [\n 106.076305,\n 32.758065\n ],\n [\n 106.076921,\n 32.764103\n ],\n [\n 106.07261,\n 32.764103\n ],\n [\n 106.093552,\n 32.823956\n ],\n [\n 106.025798,\n 32.85814\n ],\n [\n 105.825002,\n 32.824962\n ],\n [\n 105.822538,\n 32.770141\n ],\n [\n 105.719061,\n 32.759575\n ],\n [\n 105.596489,\n 32.699175\n ],\n [\n 105.563844,\n 32.72485\n ],\n [\n 105.49917,\n 32.911902\n ],\n [\n 105.590329,\n 32.876734\n ],\n [\n 105.735691,\n 32.905372\n ],\n [\n 105.917393,\n 32.993739\n ],\n [\n 105.930944,\n 33.177721\n ],\n [\n 105.965436,\n 33.204759\n ],\n [\n 105.862574,\n 33.234291\n ],\n [\n 105.74801,\n 33.298827\n ],\n [\n 105.723372,\n 33.390796\n ],\n [\n 105.82993,\n 33.382802\n ],\n [\n 105.842248,\n 33.490152\n ],\n [\n 105.956197,\n 33.612818\n ],\n [\n 106.129276,\n 33.604347\n ],\n [\n 106.187174,\n 33.54652\n ],\n [\n 106.303587,\n 33.604347\n ],\n [\n 106.447101,\n 33.613316\n ],\n [\n 106.456956,\n 33.533055\n ],\n [\n 106.54134,\n 33.513103\n ],\n [\n 106.58076,\n 33.575937\n ],\n [\n 106.539492,\n 33.691013\n ],\n [\n 106.480362,\n 33.715403\n ],\n [\n 106.461883,\n 33.789528\n ],\n [\n 106.493296,\n 33.846197\n ],\n [\n 106.41076,\n 33.906304\n ],\n [\n 106.474202,\n 33.970836\n ],\n [\n 106.501919,\n 34.104706\n ],\n [\n 106.585071,\n 34.149282\n ],\n [\n 106.526557,\n 34.291768\n ],\n [\n 106.663912,\n 34.24331\n ],\n [\n 106.717498,\n 34.369342\n ],\n [\n 106.624491,\n 34.410323\n ],\n [\n 106.610325,\n 34.454244\n ],\n [\n 106.455108,\n 34.531667\n ],\n [\n 106.334384,\n 34.517864\n ],\n [\n 106.314058,\n 34.578973\n ],\n [\n 106.419384,\n 34.643482\n ],\n [\n 106.505615,\n 34.74679\n ],\n [\n 106.575216,\n 34.769893\n ],\n [\n 106.493296,\n 34.941247\n ],\n [\n 106.494528,\n 35.005964\n ],\n [\n 106.494528,\n 35.005964\n ],\n [\n 106.5746,\n 35.089236\n ],\n [\n 106.710723,\n 35.100495\n ],\n [\n 106.838222,\n 35.079933\n ],\n [\n 106.901664,\n 35.094621\n ],\n [\n 107.08275,\n 35.024095\n ],\n [\n 107.089526,\n 34.976553\n ],\n [\n 107.189308,\n 34.893166\n ],\n [\n 107.252134,\n 34.880896\n ],\n [\n 107.286626,\n 34.931927\n ],\n [\n 107.523763,\n 34.909851\n ],\n [\n 107.561951,\n 34.966747\n ],\n [\n 107.634016,\n 34.950565\n ],\n [\n 107.804631,\n 34.95694\n ],\n [\n 107.863761,\n 34.996161\n ],\n [\n 107.757204,\n 35.076016\n ],\n [\n 107.686371,\n 35.217895\n ],\n [\n 107.651878,\n 35.239889\n ],\n [\n 107.745501,\n 35.311693\n ],\n [\n 107.867457,\n 35.256014\n ],\n [\n 108.049159,\n 35.254059\n ],\n [\n 108.174811,\n 35.305345\n ],\n [\n 108.2401,\n 35.256014\n ],\n [\n 108.352817,\n 35.285812\n ],\n [\n 108.48894,\n 35.275066\n ],\n [\n 108.614591,\n 35.32878\n ],\n [\n 108.631222,\n 35.418548\n ],\n [\n 108.618287,\n 35.556908\n ],\n [\n 108.539447,\n 35.605569\n ],\n [\n 108.517273,\n 35.715921\n ],\n [\n 108.524664,\n 35.839703\n ],\n [\n 108.498179,\n 35.876072\n ],\n [\n 108.588722,\n 35.950214\n ],\n [\n 108.656475,\n 35.952636\n ],\n [\n 108.712526,\n 36.13889\n ],\n [\n 108.646004,\n 36.25429\n ],\n [\n 108.651548,\n 36.384936\n ],\n [\n 108.618903,\n 36.434052\n ],\n [\n 108.510498,\n 36.474478\n ],\n [\n 108.495099,\n 36.422498\n ],\n [\n 108.407636,\n 36.458117\n ],\n [\n 108.340498,\n 36.55911\n ],\n [\n 108.262274,\n 36.549497\n ],\n [\n 108.194521,\n 36.625405\n ],\n [\n 108.163724,\n 36.563916\n ],\n [\n 108.007891,\n 36.61628\n ],\n [\n 108.004811,\n 36.683006\n ],\n [\n 107.939522,\n 36.655651\n ],\n [\n 107.907493,\n 36.751591\n ],\n [\n 107.720863,\n 36.802391\n ],\n [\n 107.540393,\n 36.828736\n ],\n [\n 107.478183,\n 36.908674\n ],\n [\n 107.310032,\n 36.912501\n ],\n [\n 107.288474,\n 37.00812\n ]\n ]\n ],\n [\n [\n [\n 106.076305,\n 32.753537\n ],\n [\n 106.07261,\n 32.764103\n ],\n [\n 106.076921,\n 32.764103\n ],\n [\n 106.076305,\n 32.758065\n ],\n [\n 106.076305,\n 32.753537\n ]\n ]\n ],\n [\n [\n [\n 111.022914,\n 33.474682\n ],\n [\n 111.022914,\n 33.475181\n ],\n [\n 111.02661,\n 33.478675\n ],\n [\n 111.02661,\n 33.474183\n ],\n [\n 111.022914,\n 33.474682\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 620000,\n \"name\": \"甘肃省\",\n \"center\": [\n 103.823557,\n 36.058039\n ],\n \"childrenNum\": 14,\n \"level\": \"province\",\n \"subFeatureIndex\": 27,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 106.494528,\n 35.005964\n ],\n [\n 106.494528,\n 35.005964\n ],\n [\n 106.493296,\n 34.941247\n ],\n [\n 106.575216,\n 34.769893\n ],\n [\n 106.505615,\n 34.74679\n ],\n [\n 106.419384,\n 34.643482\n ],\n [\n 106.314058,\n 34.578973\n ],\n [\n 106.334384,\n 34.517864\n ],\n [\n 106.455108,\n 34.531667\n ],\n [\n 106.610325,\n 34.454244\n ],\n [\n 106.624491,\n 34.410323\n ],\n [\n 106.717498,\n 34.369342\n ],\n [\n 106.663912,\n 34.24331\n ],\n [\n 106.526557,\n 34.291768\n ],\n [\n 106.585071,\n 34.149282\n ],\n [\n 106.501919,\n 34.104706\n ],\n [\n 106.474202,\n 33.970836\n ],\n [\n 106.41076,\n 33.906304\n ],\n [\n 106.493296,\n 33.846197\n ],\n [\n 106.461883,\n 33.789528\n ],\n [\n 106.480362,\n 33.715403\n ],\n [\n 106.539492,\n 33.691013\n ],\n [\n 106.58076,\n 33.575937\n ],\n [\n 106.54134,\n 33.513103\n ],\n [\n 106.456956,\n 33.533055\n ],\n [\n 106.447101,\n 33.613316\n ],\n [\n 106.303587,\n 33.604347\n ],\n [\n 106.187174,\n 33.54652\n ],\n [\n 106.129276,\n 33.604347\n ],\n [\n 105.956197,\n 33.612818\n ],\n [\n 105.842248,\n 33.490152\n ],\n [\n 105.82993,\n 33.382802\n ],\n [\n 105.723372,\n 33.390796\n ],\n [\n 105.74801,\n 33.298827\n ],\n [\n 105.862574,\n 33.234291\n ],\n [\n 105.965436,\n 33.204759\n ],\n [\n 105.930944,\n 33.177721\n ],\n [\n 105.917393,\n 32.993739\n ],\n [\n 105.735691,\n 32.905372\n ],\n [\n 105.590329,\n 32.876734\n ],\n [\n 105.49917,\n 32.911902\n ],\n [\n 105.414171,\n 32.921948\n ],\n [\n 105.391381,\n 32.835017\n ],\n [\n 105.455439,\n 32.737433\n ],\n [\n 105.347033,\n 32.682558\n ],\n [\n 105.111128,\n 32.59388\n ],\n [\n 105.026745,\n 32.650322\n ],\n [\n 104.881999,\n 32.600938\n ],\n [\n 104.845659,\n 32.653848\n ],\n [\n 104.739717,\n 32.635711\n ],\n [\n 104.643015,\n 32.661908\n ],\n [\n 104.582653,\n 32.722333\n ],\n [\n 104.458849,\n 32.748504\n ],\n [\n 104.363994,\n 32.822448\n ],\n [\n 104.294393,\n 32.83552\n ],\n [\n 104.288234,\n 32.94304\n ],\n [\n 104.378161,\n 32.953081\n ],\n [\n 104.426204,\n 33.0108\n ],\n [\n 104.337509,\n 33.038392\n ],\n [\n 104.378161,\n 33.109086\n ],\n [\n 104.303632,\n 33.304328\n ],\n [\n 104.432979,\n 33.325828\n ],\n [\n 104.292545,\n 33.336326\n ],\n [\n 104.22048,\n 33.404782\n ],\n [\n 104.155191,\n 33.542531\n ],\n [\n 104.168741,\n 33.611821\n ],\n [\n 104.046169,\n 33.686533\n ],\n [\n 103.871243,\n 33.68255\n ],\n [\n 103.778236,\n 33.658648\n ],\n [\n 103.626099,\n 33.727347\n ],\n [\n 103.520157,\n 33.678566\n ],\n [\n 103.525085,\n 33.798975\n ],\n [\n 103.349542,\n 33.74327\n ],\n [\n 103.279325,\n 33.806433\n ],\n [\n 103.153057,\n 33.814884\n ],\n [\n 103.181391,\n 33.900842\n ],\n [\n 103.124108,\n 33.968354\n ],\n [\n 103.119797,\n 34.034822\n ],\n [\n 103.178927,\n 34.079931\n ],\n [\n 103.124108,\n 34.16166\n ],\n [\n 102.973203,\n 34.205217\n ],\n [\n 102.978747,\n 34.249246\n ],\n [\n 102.911609,\n 34.313022\n ],\n [\n 102.798276,\n 34.272982\n ],\n [\n 102.599328,\n 34.145321\n ],\n [\n 102.655994,\n 34.113623\n ],\n [\n 102.471213,\n 34.072993\n ],\n [\n 102.437336,\n 34.087364\n ],\n [\n 102.391756,\n 33.970836\n ],\n [\n 102.315996,\n 33.994154\n ],\n [\n 102.237772,\n 33.963392\n ],\n [\n 102.136142,\n 33.965377\n ],\n [\n 102.234076,\n 33.870046\n ],\n [\n 102.239619,\n 33.788036\n ],\n [\n 102.299981,\n 33.782566\n ],\n [\n 102.342481,\n 33.725357\n ],\n [\n 102.33817,\n 33.614313\n ],\n [\n 102.440416,\n 33.57494\n ],\n [\n 102.462589,\n 33.449724\n ],\n [\n 102.396684,\n 33.40678\n ],\n [\n 102.264873,\n 33.417269\n ],\n [\n 102.186649,\n 33.332327\n ],\n [\n 102.217446,\n 33.248303\n ],\n [\n 102.112736,\n 33.287324\n ],\n [\n 102.08933,\n 33.204759\n ],\n [\n 101.935345,\n 33.186734\n ],\n [\n 101.865744,\n 33.103072\n ],\n [\n 101.841723,\n 33.184731\n ],\n [\n 101.769658,\n 33.268816\n ],\n [\n 101.878063,\n 33.315829\n ],\n [\n 101.885454,\n 33.380804\n ],\n [\n 101.9452,\n 33.437742\n ],\n [\n 101.907012,\n 33.542032\n ],\n [\n 101.844186,\n 33.602353\n ],\n [\n 101.769042,\n 33.538541\n ],\n [\n 101.735781,\n 33.49614\n ],\n [\n 101.622448,\n 33.502127\n ],\n [\n 101.582412,\n 33.675081\n ],\n [\n 101.501724,\n 33.70296\n ],\n [\n 101.385312,\n 33.644702\n ],\n [\n 101.238718,\n 33.685039\n ],\n [\n 101.166653,\n 33.660142\n ],\n [\n 101.191907,\n 33.786047\n ],\n [\n 101.153718,\n 33.844706\n ],\n [\n 100.999118,\n 33.889419\n ],\n [\n 100.806329,\n 34.155224\n ],\n [\n 100.764445,\n 34.178987\n ],\n [\n 100.821727,\n 34.317469\n ],\n [\n 100.895024,\n 34.375268\n ],\n [\n 100.986799,\n 34.374774\n ],\n [\n 101.054552,\n 34.322905\n ],\n [\n 101.235022,\n 34.325376\n ],\n [\n 101.331109,\n 34.245289\n ],\n [\n 101.530057,\n 34.21066\n ],\n [\n 101.622448,\n 34.178492\n ],\n [\n 101.736397,\n 34.079931\n ],\n [\n 101.84665,\n 34.150272\n ],\n [\n 101.955055,\n 34.10966\n ],\n [\n 101.965526,\n 34.167601\n ],\n [\n 102.062229,\n 34.227976\n ],\n [\n 102.067772,\n 34.293746\n ],\n [\n 102.149692,\n 34.271993\n ],\n [\n 102.189728,\n 34.355018\n ],\n [\n 102.237156,\n 34.343163\n ],\n [\n 102.237772,\n 34.343163\n ],\n [\n 102.237156,\n 34.343163\n ],\n [\n 102.237772,\n 34.343163\n ],\n [\n 102.210054,\n 34.399462\n ],\n [\n 102.210054,\n 34.399462\n ],\n [\n 102.155852,\n 34.507511\n ],\n [\n 102.003715,\n 34.538074\n ],\n [\n 101.919947,\n 34.621821\n ],\n [\n 101.917483,\n 34.875497\n ],\n [\n 102.048062,\n 34.910832\n ],\n [\n 102.094874,\n 34.986848\n ],\n [\n 102.218677,\n 35.058386\n ],\n [\n 102.29567,\n 35.071609\n ],\n [\n 102.310452,\n 35.128883\n ],\n [\n 102.402227,\n 35.191006\n ],\n [\n 102.370814,\n 35.262854\n ],\n [\n 102.279655,\n 35.304857\n ],\n [\n 102.317228,\n 35.433663\n ],\n [\n 102.407155,\n 35.408308\n ],\n [\n 102.447807,\n 35.437563\n ],\n [\n 102.504473,\n 35.583189\n ],\n [\n 102.742226,\n 35.495065\n ],\n [\n 102.808747,\n 35.560315\n ],\n [\n 102.686175,\n 35.772253\n ],\n [\n 102.78411,\n 35.862496\n ],\n [\n 102.955957,\n 35.861041\n ],\n [\n 102.971971,\n 35.995247\n ],\n [\n 102.882044,\n 36.082335\n ],\n [\n 102.941174,\n 36.105058\n ],\n [\n 102.98737,\n 36.193956\n ],\n [\n 103.068058,\n 36.203612\n ],\n [\n 103.024326,\n 36.257185\n ],\n [\n 102.830305,\n 36.358439\n ],\n [\n 102.832153,\n 36.357957\n ],\n [\n 102.831537,\n 36.360848\n ],\n [\n 102.830305,\n 36.362294\n ],\n [\n 102.769943,\n 36.472072\n ],\n [\n 102.761936,\n 36.568721\n ],\n [\n 102.606719,\n 36.682526\n ],\n [\n 102.704654,\n 36.792329\n ],\n [\n 102.587009,\n 36.869912\n ],\n [\n 102.56114,\n 36.919676\n ],\n [\n 102.450271,\n 36.968453\n ],\n [\n 102.506321,\n 37.019108\n ],\n [\n 102.488459,\n 37.079278\n ],\n [\n 102.642444,\n 37.099801\n ],\n [\n 102.599944,\n 37.174687\n ],\n [\n 102.457662,\n 37.24807\n ],\n [\n 102.428097,\n 37.308534\n ],\n [\n 102.19712,\n 37.420287\n ],\n [\n 102.102881,\n 37.48441\n ],\n [\n 102.130598,\n 37.544684\n ],\n [\n 102.035743,\n 37.627184\n ],\n [\n 102.036359,\n 37.684974\n ],\n [\n 101.946432,\n 37.728051\n ],\n [\n 101.815853,\n 37.65419\n ],\n [\n 101.791832,\n 37.695864\n ],\n [\n 101.659405,\n 37.733256\n ],\n [\n 101.597195,\n 37.828308\n ],\n [\n 101.459224,\n 37.866105\n ],\n [\n 101.362522,\n 37.791437\n ],\n [\n 101.150639,\n 37.876969\n ],\n [\n 100.887633,\n 38.050562\n ],\n [\n 100.93814,\n 38.160261\n ],\n [\n 100.825423,\n 38.158849\n ],\n [\n 100.74843,\n 38.239724\n ],\n [\n 100.619083,\n 38.265567\n ],\n [\n 100.546402,\n 38.246773\n ],\n [\n 100.474953,\n 38.289052\n ],\n [\n 100.318505,\n 38.329428\n ],\n [\n 100.261222,\n 38.366498\n ],\n [\n 100.24028,\n 38.441519\n ],\n [\n 100.064122,\n 38.518802\n ],\n [\n 100.001296,\n 38.466821\n ],\n [\n 100.093071,\n 38.4073\n ],\n [\n 100.157744,\n 38.309712\n ],\n [\n 100.182998,\n 38.221864\n ],\n [\n 100.126332,\n 38.231735\n ],\n [\n 99.937238,\n 38.34163\n ],\n [\n 99.826985,\n 38.370251\n ],\n [\n 99.65945,\n 38.449017\n ],\n [\n 99.555972,\n 38.520207\n ],\n [\n 99.50916,\n 38.608628\n ],\n [\n 99.450646,\n 38.60442\n ],\n [\n 99.361951,\n 38.718418\n ],\n [\n 99.222133,\n 38.788875\n ],\n [\n 99.068764,\n 38.896991\n ],\n [\n 99.1088,\n 38.946334\n ],\n [\n 98.951735,\n 38.987737\n ],\n [\n 98.816845,\n 39.085799\n ],\n [\n 98.743548,\n 39.086728\n ],\n [\n 98.584635,\n 38.930046\n ],\n [\n 98.457752,\n 38.952849\n ],\n [\n 98.383839,\n 39.029581\n ],\n [\n 98.280977,\n 39.027257\n ],\n [\n 98.251412,\n 38.891403\n ],\n [\n 98.094964,\n 38.786077\n ],\n [\n 98.009348,\n 38.859262\n ],\n [\n 97.828878,\n 38.930046\n ],\n [\n 97.701379,\n 38.963085\n ],\n [\n 97.679205,\n 39.010522\n ],\n [\n 97.371235,\n 39.14058\n ],\n [\n 97.220946,\n 39.192999\n ],\n [\n 96.962867,\n 39.198564\n ],\n [\n 97.012142,\n 39.141972\n ],\n [\n 96.969643,\n 39.097873\n ],\n [\n 96.940693,\n 38.907701\n ],\n [\n 96.983809,\n 38.869046\n ],\n [\n 97.009063,\n 38.702544\n ],\n [\n 97.057722,\n 38.672654\n ],\n [\n 97.055874,\n 38.5946\n ],\n [\n 96.975802,\n 38.559519\n ],\n [\n 96.7941,\n 38.60816\n ],\n [\n 96.780549,\n 38.504289\n ],\n [\n 96.6666,\n 38.483684\n ],\n [\n 96.698013,\n 38.422302\n ],\n [\n 96.626564,\n 38.356177\n ],\n [\n 96.665369,\n 38.230325\n ],\n [\n 96.46334,\n 38.27778\n ],\n [\n 96.335841,\n 38.246303\n ],\n [\n 96.313051,\n 38.162142\n ],\n [\n 96.221892,\n 38.148969\n ],\n [\n 96.109175,\n 38.187072\n ],\n [\n 96.063596,\n 38.172962\n ],\n [\n 95.856024,\n 38.284355\n ],\n [\n 95.83693,\n 38.343977\n ],\n [\n 95.702039,\n 38.400736\n ],\n [\n 95.51849,\n 38.295156\n ],\n [\n 95.320157,\n 38.32051\n ],\n [\n 95.261027,\n 38.301261\n ],\n [\n 95.121825,\n 38.417615\n ],\n [\n 94.973999,\n 38.430271\n ],\n [\n 94.810775,\n 38.385261\n ],\n [\n 94.67958,\n 38.387137\n ],\n [\n 94.527443,\n 38.36556\n ],\n [\n 94.511429,\n 38.445268\n ],\n [\n 94.370379,\n 38.762753\n ],\n [\n 93.885018,\n 38.720752\n ],\n [\n 93.800019,\n 38.750622\n ],\n [\n 93.769838,\n 38.821047\n ],\n [\n 93.884403,\n 38.826175\n ],\n [\n 93.729186,\n 38.92446\n ],\n [\n 93.453245,\n 38.915615\n ],\n [\n 93.274007,\n 38.89606\n ],\n [\n 93.179152,\n 38.923994\n ],\n [\n 93.198246,\n 39.045847\n ],\n [\n 93.131725,\n 39.108088\n ],\n [\n 93.142196,\n 39.160531\n ],\n [\n 92.978356,\n 39.143364\n ],\n [\n 92.938936,\n 39.169809\n ],\n [\n 92.866871,\n 39.138723\n ],\n [\n 92.489916,\n 39.09973\n ],\n [\n 92.41046,\n 39.038412\n ],\n [\n 92.366728,\n 39.059322\n ],\n [\n 92.339011,\n 39.236575\n ],\n [\n 92.52564,\n 39.368528\n ],\n [\n 92.639589,\n 39.514543\n ],\n [\n 92.745531,\n 39.868137\n ],\n [\n 92.796654,\n 40.15364\n ],\n [\n 92.906907,\n 40.310773\n ],\n [\n 92.928465,\n 40.572609\n ],\n [\n 93.506216,\n 40.648464\n ],\n [\n 93.760599,\n 40.664804\n ],\n [\n 93.820961,\n 40.793574\n ],\n [\n 93.809874,\n 40.879583\n ],\n [\n 94.01067,\n 41.114857\n ],\n [\n 94.184365,\n 41.268392\n ],\n [\n 94.534219,\n 41.50586\n ],\n [\n 94.750413,\n 41.538114\n ],\n [\n 94.861898,\n 41.668309\n ],\n [\n 95.135991,\n 41.772811\n ],\n [\n 95.29552,\n 41.569456\n ],\n [\n 95.39407,\n 41.693333\n ],\n [\n 95.57146,\n 41.796011\n ],\n [\n 95.677402,\n 41.830795\n ],\n [\n 95.855408,\n 41.849516\n ],\n [\n 96.038342,\n 41.924794\n ],\n [\n 96.117183,\n 41.985753\n ],\n [\n 96.13874,\n 42.054207\n ],\n [\n 96.077147,\n 42.149652\n ],\n [\n 96.178161,\n 42.217929\n ],\n [\n 96.040806,\n 42.3264\n ],\n [\n 96.06606,\n 42.414367\n ],\n [\n 95.978596,\n 42.436892\n ],\n [\n 96.02356,\n 42.54234\n ],\n [\n 96.103632,\n 42.604026\n ],\n [\n 96.386348,\n 42.727655\n ],\n [\n 96.742361,\n 42.757096\n ],\n [\n 96.968411,\n 42.756218\n ],\n [\n 97.172903,\n 42.795305\n ],\n [\n 97.307177,\n 42.565259\n ],\n [\n 97.84674,\n 41.656687\n ],\n [\n 97.613915,\n 41.477176\n ],\n [\n 97.629314,\n 41.440407\n ],\n [\n 97.971776,\n 41.097726\n ],\n [\n 98.25018,\n 40.939271\n ],\n [\n 98.333332,\n 40.918929\n ],\n [\n 98.344419,\n 40.568518\n ],\n [\n 98.627751,\n 40.677965\n ],\n [\n 98.569853,\n 40.746901\n ],\n [\n 98.668403,\n 40.772734\n ],\n [\n 98.689345,\n 40.691576\n ],\n [\n 98.801446,\n 40.609411\n ],\n [\n 98.790975,\n 40.705185\n ],\n [\n 98.984996,\n 40.782701\n ],\n [\n 99.041662,\n 40.693844\n ],\n [\n 99.102025,\n 40.676603\n ],\n [\n 99.172858,\n 40.747354\n ],\n [\n 99.174705,\n 40.858317\n ],\n [\n 99.565827,\n 40.846551\n ],\n [\n 99.673,\n 40.932943\n ],\n [\n 100.057346,\n 40.908077\n ],\n [\n 100.107853,\n 40.875511\n ],\n [\n 100.237201,\n 40.716977\n ],\n [\n 100.242744,\n 40.618495\n ],\n [\n 100.169447,\n 40.541242\n ],\n [\n 100.169447,\n 40.277458\n ],\n [\n 100.002528,\n 40.197528\n ],\n [\n 99.927383,\n 40.063947\n ],\n [\n 99.488218,\n 39.875943\n ],\n [\n 99.672384,\n 39.887881\n ],\n [\n 99.822058,\n 39.85987\n ],\n [\n 99.904593,\n 39.785886\n ],\n [\n 100.040716,\n 39.756913\n ],\n [\n 100.128179,\n 39.702155\n ],\n [\n 100.250135,\n 39.68512\n ],\n [\n 100.314193,\n 39.606799\n ],\n [\n 100.326512,\n 39.509003\n ],\n [\n 100.500823,\n 39.4813\n ],\n [\n 100.498975,\n 39.400437\n ],\n [\n 100.619699,\n 39.38749\n ],\n [\n 100.842053,\n 39.405523\n ],\n [\n 100.842669,\n 39.199955\n ],\n [\n 100.864227,\n 39.106695\n ],\n [\n 100.835278,\n 39.025863\n ],\n [\n 100.961545,\n 39.005873\n ],\n [\n 100.969553,\n 38.9468\n ],\n [\n 101.117378,\n 38.97518\n ],\n [\n 101.228863,\n 39.02075\n ],\n [\n 101.198682,\n 38.943077\n ],\n [\n 101.24303,\n 38.86066\n ],\n [\n 101.334189,\n 38.848545\n ],\n [\n 101.307087,\n 38.802865\n ],\n [\n 101.562702,\n 38.712816\n ],\n [\n 101.601506,\n 38.6549\n ],\n [\n 101.679115,\n 38.690869\n ],\n [\n 101.777049,\n 38.660507\n ],\n [\n 101.941505,\n 38.808926\n ],\n [\n 102.075164,\n 38.891403\n ],\n [\n 101.926106,\n 39.000758\n ],\n [\n 101.830636,\n 39.093229\n ],\n [\n 102.280887,\n 39.190217\n ],\n [\n 102.45335,\n 39.25511\n ],\n [\n 102.601792,\n 39.172129\n ],\n [\n 103.007696,\n 39.09973\n ],\n [\n 103.344615,\n 39.331514\n ],\n [\n 103.595302,\n 39.386565\n ],\n [\n 103.839214,\n 39.460516\n ],\n [\n 103.964865,\n 39.455434\n ],\n [\n 104.091133,\n 39.418466\n ],\n [\n 104.047401,\n 39.297721\n ],\n [\n 104.177364,\n 39.15218\n ],\n [\n 104.207546,\n 39.083941\n ],\n [\n 104.168125,\n 38.940285\n ],\n [\n 104.044322,\n 38.895128\n ],\n [\n 103.85954,\n 38.64462\n ],\n [\n 103.416063,\n 38.404956\n ],\n [\n 103.507838,\n 38.281068\n ],\n [\n 103.53494,\n 38.156497\n ],\n [\n 103.369868,\n 38.089658\n ],\n [\n 103.362477,\n 38.037368\n ],\n [\n 103.401897,\n 37.861854\n ],\n [\n 103.676606,\n 37.783871\n ],\n [\n 103.948235,\n 37.564606\n ],\n [\n 104.183524,\n 37.406981\n ],\n [\n 104.287002,\n 37.42789\n ],\n [\n 104.437907,\n 37.445943\n ],\n [\n 104.679971,\n 37.407931\n ],\n [\n 104.713848,\n 37.32947\n ],\n [\n 104.632544,\n 37.299015\n ],\n [\n 104.600515,\n 37.242831\n ],\n [\n 104.638087,\n 37.201857\n ],\n [\n 104.775442,\n 37.246641\n ],\n [\n 104.85613,\n 37.211864\n ],\n [\n 104.95468,\n 37.040125\n ],\n [\n 105.165331,\n 36.995218\n ],\n [\n 105.190585,\n 36.886185\n ],\n [\n 105.244787,\n 36.894798\n ],\n [\n 105.334714,\n 36.800953\n ],\n [\n 105.319932,\n 36.742961\n ],\n [\n 105.218302,\n 36.730494\n ],\n [\n 105.22015,\n 36.631167\n ],\n [\n 105.281744,\n 36.522575\n ],\n [\n 105.319932,\n 36.536038\n ],\n [\n 105.398156,\n 36.430683\n ],\n [\n 105.401236,\n 36.370002\n ],\n [\n 105.473301,\n 36.298185\n ],\n [\n 105.460366,\n 36.223887\n ],\n [\n 105.513337,\n 36.150003\n ],\n [\n 105.343954,\n 36.033965\n ],\n [\n 105.333483,\n 35.887707\n ],\n [\n 105.392613,\n 35.865405\n ],\n [\n 105.481924,\n 35.727094\n ],\n [\n 105.570003,\n 35.716407\n ],\n [\n 105.671017,\n 35.749434\n ],\n [\n 105.754785,\n 35.730494\n ],\n [\n 105.690727,\n 35.698431\n ],\n [\n 105.847176,\n 35.490681\n ],\n [\n 105.868734,\n 35.53987\n ],\n [\n 106.015943,\n 35.52234\n ],\n [\n 106.070762,\n 35.491655\n ],\n [\n 106.057827,\n 35.488245\n ],\n [\n 105.897683,\n 35.451698\n ],\n [\n 105.894603,\n 35.413672\n ],\n [\n 106.054132,\n 35.449261\n ],\n [\n 106.061523,\n 35.457547\n ],\n [\n 106.064603,\n 35.431225\n ],\n [\n 106.073226,\n 35.421474\n ],\n [\n 106.079385,\n 35.427325\n ],\n [\n 106.107102,\n 35.364894\n ],\n [\n 106.174856,\n 35.438538\n ],\n [\n 106.319601,\n 35.265296\n ],\n [\n 106.472354,\n 35.310716\n ],\n [\n 106.503767,\n 35.415135\n ],\n [\n 106.440941,\n 35.526723\n ],\n [\n 106.476666,\n 35.580756\n ],\n [\n 106.434782,\n 35.688712\n ],\n [\n 106.501304,\n 35.737779\n ],\n [\n 106.501304,\n 35.735836\n ],\n [\n 106.503767,\n 35.736322\n ],\n [\n 106.504383,\n 35.738265\n ],\n [\n 106.737208,\n 35.689198\n ],\n [\n 106.86594,\n 35.737779\n ],\n [\n 106.92199,\n 35.803316\n ],\n [\n 106.849925,\n 35.887707\n ],\n [\n 106.950939,\n 36.004444\n ],\n [\n 106.957715,\n 36.091522\n ],\n [\n 106.858548,\n 36.206992\n ],\n [\n 106.858548,\n 36.206992\n ],\n [\n 106.599238,\n 36.274552\n ],\n [\n 106.599238,\n 36.274552\n ],\n [\n 106.505615,\n 36.265869\n ],\n [\n 106.488369,\n 36.400348\n ],\n [\n 106.521014,\n 36.479289\n ],\n [\n 106.401521,\n 36.546133\n ],\n [\n 106.471738,\n 36.581214\n ],\n [\n 106.519782,\n 36.708912\n ],\n [\n 106.519782,\n 36.708912\n ],\n [\n 106.589383,\n 36.750153\n ],\n [\n 106.631883,\n 36.723301\n ],\n [\n 106.658368,\n 36.811972\n ],\n [\n 106.595542,\n 36.940243\n ],\n [\n 106.666991,\n 37.01672\n ],\n [\n 106.605397,\n 37.127475\n ],\n [\n 106.750143,\n 37.098847\n ],\n [\n 106.777244,\n 37.156569\n ],\n [\n 106.777244,\n 37.156569\n ],\n [\n 106.891193,\n 37.098369\n ],\n [\n 107.030395,\n 37.140831\n ],\n [\n 107.095685,\n 37.115548\n ],\n [\n 107.180685,\n 37.143692\n ],\n [\n 107.268764,\n 37.099324\n ],\n [\n 107.288474,\n 37.00812\n ],\n [\n 107.288474,\n 37.00812\n ],\n [\n 107.310032,\n 36.912501\n ],\n [\n 107.478183,\n 36.908674\n ],\n [\n 107.540393,\n 36.828736\n ],\n [\n 107.720863,\n 36.802391\n ],\n [\n 107.907493,\n 36.751591\n ],\n [\n 107.939522,\n 36.655651\n ],\n [\n 108.004811,\n 36.683006\n ],\n [\n 108.007891,\n 36.61628\n ],\n [\n 108.163724,\n 36.563916\n ],\n [\n 108.194521,\n 36.625405\n ],\n [\n 108.262274,\n 36.549497\n ],\n [\n 108.340498,\n 36.55911\n ],\n [\n 108.407636,\n 36.458117\n ],\n [\n 108.495099,\n 36.422498\n ],\n [\n 108.510498,\n 36.474478\n ],\n [\n 108.618903,\n 36.434052\n ],\n [\n 108.651548,\n 36.384936\n ],\n [\n 108.646004,\n 36.25429\n ],\n [\n 108.712526,\n 36.13889\n ],\n [\n 108.656475,\n 35.952636\n ],\n [\n 108.588722,\n 35.950214\n ],\n [\n 108.498179,\n 35.876072\n ],\n [\n 108.524664,\n 35.839703\n ],\n [\n 108.517273,\n 35.715921\n ],\n [\n 108.539447,\n 35.605569\n ],\n [\n 108.618287,\n 35.556908\n ],\n [\n 108.631222,\n 35.418548\n ],\n [\n 108.614591,\n 35.32878\n ],\n [\n 108.48894,\n 35.275066\n ],\n [\n 108.352817,\n 35.285812\n ],\n [\n 108.2401,\n 35.256014\n ],\n [\n 108.174811,\n 35.305345\n ],\n [\n 108.049159,\n 35.254059\n ],\n [\n 107.867457,\n 35.256014\n ],\n [\n 107.745501,\n 35.311693\n ],\n [\n 107.651878,\n 35.239889\n ],\n [\n 107.686371,\n 35.217895\n ],\n [\n 107.757204,\n 35.076016\n ],\n [\n 107.863761,\n 34.996161\n ],\n [\n 107.804631,\n 34.95694\n ],\n [\n 107.634016,\n 34.950565\n ],\n [\n 107.561951,\n 34.966747\n ],\n [\n 107.523763,\n 34.909851\n ],\n [\n 107.286626,\n 34.931927\n ],\n [\n 107.252134,\n 34.880896\n ],\n [\n 107.189308,\n 34.893166\n ],\n [\n 107.089526,\n 34.976553\n ],\n [\n 107.08275,\n 35.024095\n ],\n [\n 106.901664,\n 35.094621\n ],\n [\n 106.838222,\n 35.079933\n ],\n [\n 106.710723,\n 35.100495\n ],\n [\n 106.5746,\n 35.089236\n ],\n [\n 106.494528,\n 35.005964\n ]\n ]\n ],\n [\n [\n [\n 106.070762,\n 35.491655\n ],\n [\n 106.078153,\n 35.489707\n ],\n [\n 106.078153,\n 35.489707\n ],\n [\n 106.071994,\n 35.463395\n ],\n [\n 106.061523,\n 35.457547\n ],\n [\n 106.054132,\n 35.449261\n ],\n [\n 106.057827,\n 35.488245\n ],\n [\n 106.070762,\n 35.491655\n ]\n ]\n ],\n [\n [\n [\n 106.073226,\n 35.421474\n ],\n [\n 106.064603,\n 35.431225\n ],\n [\n 106.061523,\n 35.457547\n ],\n [\n 106.071994,\n 35.463395\n ],\n [\n 106.06953,\n 35.458034\n ],\n [\n 106.071378,\n 35.449261\n ],\n [\n 106.079385,\n 35.427325\n ],\n [\n 106.073226,\n 35.421474\n ]\n ]\n ],\n [\n [\n [\n 102.831537,\n 36.360848\n ],\n [\n 102.832153,\n 36.357957\n ],\n [\n 102.830305,\n 36.358439\n ],\n [\n 102.830305,\n 36.362294\n ],\n [\n 102.831537,\n 36.360848\n ]\n ]\n ],\n [\n [\n [\n 106.503767,\n 35.736322\n ],\n [\n 106.501304,\n 35.735836\n ],\n [\n 106.501304,\n 35.737779\n ],\n [\n 106.504383,\n 35.738265\n ],\n [\n 106.503767,\n 35.736322\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 630000,\n \"name\": \"青海省\",\n \"center\": [\n 101.778916,\n 36.623178\n ],\n \"centroid\": [\n 96.043531,\n 35.726402\n ],\n \"childrenNum\": 8,\n \"level\": \"province\",\n \"subFeatureIndex\": 28,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 91.001807,\n 33.116102\n ],\n [\n 91.001807,\n 33.116102\n ],\n [\n 90.805938,\n 33.114599\n ],\n [\n 90.70554,\n 33.135645\n ],\n [\n 90.486881,\n 33.266815\n ],\n [\n 90.405577,\n 33.260311\n ],\n [\n 90.332896,\n 33.310829\n ],\n [\n 90.246665,\n 33.42426\n ],\n [\n 90.092064,\n 33.469691\n ],\n [\n 90.080977,\n 33.530561\n ],\n [\n 90.01076,\n 33.553501\n ],\n [\n 89.984275,\n 33.61232\n ],\n [\n 90.008296,\n 33.688026\n ],\n [\n 89.907282,\n 33.74128\n ],\n [\n 89.933768,\n 33.796986\n ],\n [\n 89.837065,\n 33.869052\n ],\n [\n 89.795181,\n 33.865575\n ],\n [\n 89.691704,\n 33.957933\n ],\n [\n 89.635037,\n 34.0492\n ],\n [\n 89.655979,\n 34.096778\n ],\n [\n 89.818587,\n 34.174037\n ],\n [\n 89.825362,\n 34.293746\n ],\n [\n 89.872174,\n 34.335752\n ],\n [\n 89.801957,\n 34.390575\n ],\n [\n 89.823515,\n 34.455231\n ],\n [\n 89.798877,\n 34.628714\n ],\n [\n 89.72558,\n 34.660709\n ],\n [\n 89.732356,\n 34.732039\n ],\n [\n 89.799493,\n 34.74384\n ],\n [\n 89.867862,\n 34.810677\n ],\n [\n 89.821667,\n 34.902981\n ],\n [\n 89.707102,\n 34.919663\n ],\n [\n 89.654747,\n 34.883351\n ],\n [\n 89.560509,\n 34.938794\n ],\n [\n 89.593153,\n 35.104412\n ],\n [\n 89.513081,\n 35.139158\n ],\n [\n 89.449639,\n 35.226693\n ],\n [\n 89.532175,\n 35.285323\n ],\n [\n 89.497067,\n 35.361479\n ],\n [\n 89.68616,\n 35.414647\n ],\n [\n 89.744058,\n 35.479963\n ],\n [\n 89.700327,\n 35.537435\n ],\n [\n 89.765616,\n 35.599732\n ],\n [\n 89.747138,\n 35.751862\n ],\n [\n 89.801957,\n 35.847948\n ],\n [\n 89.549422,\n 35.858132\n ],\n [\n 89.429929,\n 35.916302\n ],\n [\n 89.418843,\n 36.04606\n ],\n [\n 89.476125,\n 36.021868\n ],\n [\n 89.638117,\n 36.04993\n ],\n [\n 89.711414,\n 36.092972\n ],\n [\n 89.941159,\n 36.067343\n ],\n [\n 89.937463,\n 36.130675\n ],\n [\n 89.999057,\n 36.169809\n ],\n [\n 90.028006,\n 36.25815\n ],\n [\n 90.145651,\n 36.238849\n ],\n [\n 90.128405,\n 36.208923\n ],\n [\n 90.234962,\n 36.161597\n ],\n [\n 90.430215,\n 36.133091\n ],\n [\n 90.526917,\n 36.148553\n ],\n [\n 90.66304,\n 36.134058\n ],\n [\n 90.776373,\n 36.086203\n ],\n [\n 90.841046,\n 36.01848\n ],\n [\n 90.922966,\n 36.029126\n ],\n [\n 90.979017,\n 36.106992\n ],\n [\n 91.09235,\n 36.088621\n ],\n [\n 91.124994,\n 36.115693\n ],\n [\n 91.07264,\n 36.299149\n ],\n [\n 91.026444,\n 36.323738\n ],\n [\n 91.05293,\n 36.432608\n ],\n [\n 91.035683,\n 36.529788\n ],\n [\n 90.7388,\n 36.58746\n ],\n [\n 90.720938,\n 36.708912\n ],\n [\n 90.735105,\n 36.827778\n ],\n [\n 90.853981,\n 36.915371\n ],\n [\n 90.983944,\n 36.913458\n ],\n [\n 91.181045,\n 37.025318\n ],\n [\n 91.303617,\n 37.01242\n ],\n [\n 91.280211,\n 37.163721\n ],\n [\n 91.1909,\n 37.205669\n ],\n [\n 91.192132,\n 37.27807\n ],\n [\n 91.134849,\n 37.32614\n ],\n [\n 91.099741,\n 37.447843\n ],\n [\n 91.057241,\n 37.483936\n ],\n [\n 90.958075,\n 37.477763\n ],\n [\n 90.863836,\n 37.534246\n ],\n [\n 90.882314,\n 37.575513\n ],\n [\n 90.776373,\n 37.6504\n ],\n [\n 90.519526,\n 37.73089\n ],\n [\n 90.516446,\n 38.207291\n ],\n [\n 90.530613,\n 38.32004\n ],\n [\n 90.361846,\n 38.300322\n ],\n [\n 90.352607,\n 38.233615\n ],\n [\n 90.280542,\n 38.238315\n ],\n [\n 90.137644,\n 38.340692\n ],\n [\n 90.111774,\n 38.477595\n ],\n [\n 90.315034,\n 38.501948\n ],\n [\n 90.424671,\n 38.492114\n ],\n [\n 90.463476,\n 38.556711\n ],\n [\n 90.610685,\n 38.596003\n ],\n [\n 90.619308,\n 38.664245\n ],\n [\n 90.831191,\n 38.667982\n ],\n [\n 91.307928,\n 38.751089\n ],\n [\n 91.446515,\n 38.813588\n ],\n [\n 91.87952,\n 38.884417\n ],\n [\n 91.966368,\n 38.930976\n ],\n [\n 92.173323,\n 38.960758\n ],\n [\n 92.263866,\n 39.002153\n ],\n [\n 92.38459,\n 39.000758\n ],\n [\n 92.41046,\n 39.038412\n ],\n [\n 92.489916,\n 39.09973\n ],\n [\n 92.866871,\n 39.138723\n ],\n [\n 92.938936,\n 39.169809\n ],\n [\n 92.978356,\n 39.143364\n ],\n [\n 93.142196,\n 39.160531\n ],\n [\n 93.131725,\n 39.108088\n ],\n [\n 93.198246,\n 39.045847\n ],\n [\n 93.179152,\n 38.923994\n ],\n [\n 93.274007,\n 38.89606\n ],\n [\n 93.453245,\n 38.915615\n ],\n [\n 93.729186,\n 38.92446\n ],\n [\n 93.884403,\n 38.826175\n ],\n [\n 93.769838,\n 38.821047\n ],\n [\n 93.800019,\n 38.750622\n ],\n [\n 93.885018,\n 38.720752\n ],\n [\n 94.370379,\n 38.762753\n ],\n [\n 94.511429,\n 38.445268\n ],\n [\n 94.527443,\n 38.36556\n ],\n [\n 94.67958,\n 38.387137\n ],\n [\n 94.810775,\n 38.385261\n ],\n [\n 94.973999,\n 38.430271\n ],\n [\n 95.121825,\n 38.417615\n ],\n [\n 95.261027,\n 38.301261\n ],\n [\n 95.320157,\n 38.32051\n ],\n [\n 95.51849,\n 38.295156\n ],\n [\n 95.702039,\n 38.400736\n ],\n [\n 95.83693,\n 38.343977\n ],\n [\n 95.856024,\n 38.284355\n ],\n [\n 96.063596,\n 38.172962\n ],\n [\n 96.109175,\n 38.187072\n ],\n [\n 96.221892,\n 38.148969\n ],\n [\n 96.313051,\n 38.162142\n ],\n [\n 96.335841,\n 38.246303\n ],\n [\n 96.46334,\n 38.27778\n ],\n [\n 96.665369,\n 38.230325\n ],\n [\n 96.626564,\n 38.356177\n ],\n [\n 96.698013,\n 38.422302\n ],\n [\n 96.6666,\n 38.483684\n ],\n [\n 96.780549,\n 38.504289\n ],\n [\n 96.7941,\n 38.60816\n ],\n [\n 96.975802,\n 38.559519\n ],\n [\n 97.055874,\n 38.5946\n ],\n [\n 97.057722,\n 38.672654\n ],\n [\n 97.009063,\n 38.702544\n ],\n [\n 96.983809,\n 38.869046\n ],\n [\n 96.940693,\n 38.907701\n ],\n [\n 96.969643,\n 39.097873\n ],\n [\n 97.012142,\n 39.141972\n ],\n [\n 96.962867,\n 39.198564\n ],\n [\n 97.220946,\n 39.192999\n ],\n [\n 97.371235,\n 39.14058\n ],\n [\n 97.679205,\n 39.010522\n ],\n [\n 97.701379,\n 38.963085\n ],\n [\n 97.828878,\n 38.930046\n ],\n [\n 98.009348,\n 38.859262\n ],\n [\n 98.094964,\n 38.786077\n ],\n [\n 98.251412,\n 38.891403\n ],\n [\n 98.280977,\n 39.027257\n ],\n [\n 98.383839,\n 39.029581\n ],\n [\n 98.457752,\n 38.952849\n ],\n [\n 98.584635,\n 38.930046\n ],\n [\n 98.743548,\n 39.086728\n ],\n [\n 98.816845,\n 39.085799\n ],\n [\n 98.951735,\n 38.987737\n ],\n [\n 99.1088,\n 38.946334\n ],\n [\n 99.068764,\n 38.896991\n ],\n [\n 99.222133,\n 38.788875\n ],\n [\n 99.361951,\n 38.718418\n ],\n [\n 99.450646,\n 38.60442\n ],\n [\n 99.50916,\n 38.608628\n ],\n [\n 99.555972,\n 38.520207\n ],\n [\n 99.65945,\n 38.449017\n ],\n [\n 99.826985,\n 38.370251\n ],\n [\n 99.937238,\n 38.34163\n ],\n [\n 100.126332,\n 38.231735\n ],\n [\n 100.182998,\n 38.221864\n ],\n [\n 100.157744,\n 38.309712\n ],\n [\n 100.093071,\n 38.4073\n ],\n [\n 100.001296,\n 38.466821\n ],\n [\n 100.064122,\n 38.518802\n ],\n [\n 100.24028,\n 38.441519\n ],\n [\n 100.261222,\n 38.366498\n ],\n [\n 100.318505,\n 38.329428\n ],\n [\n 100.474953,\n 38.289052\n ],\n [\n 100.546402,\n 38.246773\n ],\n [\n 100.619083,\n 38.265567\n ],\n [\n 100.74843,\n 38.239724\n ],\n [\n 100.825423,\n 38.158849\n ],\n [\n 100.93814,\n 38.160261\n ],\n [\n 100.887633,\n 38.050562\n ],\n [\n 101.150639,\n 37.876969\n ],\n [\n 101.362522,\n 37.791437\n ],\n [\n 101.459224,\n 37.866105\n ],\n [\n 101.597195,\n 37.828308\n ],\n [\n 101.659405,\n 37.733256\n ],\n [\n 101.791832,\n 37.695864\n ],\n [\n 101.815853,\n 37.65419\n ],\n [\n 101.946432,\n 37.728051\n ],\n [\n 102.036359,\n 37.684974\n ],\n [\n 102.035743,\n 37.627184\n ],\n [\n 102.130598,\n 37.544684\n ],\n [\n 102.102881,\n 37.48441\n ],\n [\n 102.19712,\n 37.420287\n ],\n [\n 102.428097,\n 37.308534\n ],\n [\n 102.457662,\n 37.24807\n ],\n [\n 102.599944,\n 37.174687\n ],\n [\n 102.642444,\n 37.099801\n ],\n [\n 102.488459,\n 37.079278\n ],\n [\n 102.506321,\n 37.019108\n ],\n [\n 102.450271,\n 36.968453\n ],\n [\n 102.56114,\n 36.919676\n ],\n [\n 102.587009,\n 36.869912\n ],\n [\n 102.704654,\n 36.792329\n ],\n [\n 102.606719,\n 36.682526\n ],\n [\n 102.761936,\n 36.568721\n ],\n [\n 102.769943,\n 36.472072\n ],\n [\n 102.830305,\n 36.362294\n ],\n [\n 102.830305,\n 36.358439\n ],\n [\n 103.024326,\n 36.257185\n ],\n [\n 103.068058,\n 36.203612\n ],\n [\n 102.98737,\n 36.193956\n ],\n [\n 102.941174,\n 36.105058\n ],\n [\n 102.882044,\n 36.082335\n ],\n [\n 102.971971,\n 35.995247\n ],\n [\n 102.955957,\n 35.861041\n ],\n [\n 102.78411,\n 35.862496\n ],\n [\n 102.686175,\n 35.772253\n ],\n [\n 102.808747,\n 35.560315\n ],\n [\n 102.742226,\n 35.495065\n ],\n [\n 102.504473,\n 35.583189\n ],\n [\n 102.447807,\n 35.437563\n ],\n [\n 102.407155,\n 35.408308\n ],\n [\n 102.317228,\n 35.433663\n ],\n [\n 102.279655,\n 35.304857\n ],\n [\n 102.370814,\n 35.262854\n ],\n [\n 102.402227,\n 35.191006\n ],\n [\n 102.310452,\n 35.128883\n ],\n [\n 102.29567,\n 35.071609\n ],\n [\n 102.218677,\n 35.058386\n ],\n [\n 102.094874,\n 34.986848\n ],\n [\n 102.048062,\n 34.910832\n ],\n [\n 101.917483,\n 34.875497\n ],\n [\n 101.919947,\n 34.621821\n ],\n [\n 102.003715,\n 34.538074\n ],\n [\n 102.155852,\n 34.507511\n ],\n [\n 102.210054,\n 34.399462\n ],\n [\n 102.210054,\n 34.399462\n ],\n [\n 102.237772,\n 34.343163\n ],\n [\n 102.237156,\n 34.343163\n ],\n [\n 102.237772,\n 34.343163\n ],\n [\n 102.237156,\n 34.343163\n ],\n [\n 102.189728,\n 34.355018\n ],\n [\n 102.149692,\n 34.271993\n ],\n [\n 102.067772,\n 34.293746\n ],\n [\n 102.062229,\n 34.227976\n ],\n [\n 101.965526,\n 34.167601\n ],\n [\n 101.955055,\n 34.10966\n ],\n [\n 101.84665,\n 34.150272\n ],\n [\n 101.736397,\n 34.079931\n ],\n [\n 101.622448,\n 34.178492\n ],\n [\n 101.530057,\n 34.21066\n ],\n [\n 101.331109,\n 34.245289\n ],\n [\n 101.235022,\n 34.325376\n ],\n [\n 101.054552,\n 34.322905\n ],\n [\n 100.986799,\n 34.374774\n ],\n [\n 100.895024,\n 34.375268\n ],\n [\n 100.821727,\n 34.317469\n ],\n [\n 100.764445,\n 34.178987\n ],\n [\n 100.806329,\n 34.155224\n ],\n [\n 100.999118,\n 33.889419\n ],\n [\n 101.153718,\n 33.844706\n ],\n [\n 101.191907,\n 33.786047\n ],\n [\n 101.166653,\n 33.660142\n ],\n [\n 101.238718,\n 33.685039\n ],\n [\n 101.385312,\n 33.644702\n ],\n [\n 101.501724,\n 33.70296\n ],\n [\n 101.582412,\n 33.675081\n ],\n [\n 101.622448,\n 33.502127\n ],\n [\n 101.735781,\n 33.49614\n ],\n [\n 101.769042,\n 33.538541\n ],\n [\n 101.769658,\n 33.447728\n ],\n [\n 101.695745,\n 33.433748\n ],\n [\n 101.64955,\n 33.323328\n ],\n [\n 101.739477,\n 33.265815\n ],\n [\n 101.625528,\n 33.100566\n ],\n [\n 101.486326,\n 33.227285\n ],\n [\n 101.405022,\n 33.225783\n ],\n [\n 101.393935,\n 33.157687\n ],\n [\n 101.297232,\n 33.262313\n ],\n [\n 101.183283,\n 33.270317\n ],\n [\n 101.11553,\n 33.194746\n ],\n [\n 101.169733,\n 33.100566\n ],\n [\n 101.183899,\n 32.984204\n ],\n [\n 101.129081,\n 32.989725\n ],\n [\n 101.124153,\n 32.909893\n ],\n [\n 101.237486,\n 32.824962\n ],\n [\n 101.22332,\n 32.725856\n ],\n [\n 101.157414,\n 32.661404\n ],\n [\n 101.075494,\n 32.683061\n ],\n [\n 100.93198,\n 32.600433\n ],\n [\n 100.690532,\n 32.678025\n ],\n [\n 100.645568,\n 32.526306\n ],\n [\n 100.54517,\n 32.569681\n ],\n [\n 100.516837,\n 32.630168\n ],\n [\n 100.399809,\n 32.756556\n ],\n [\n 100.339447,\n 32.719313\n ],\n [\n 100.258759,\n 32.742466\n ],\n [\n 100.208252,\n 32.606482\n ],\n [\n 100.088143,\n 32.668959\n ],\n [\n 100.139266,\n 32.724346\n ],\n [\n 100.123252,\n 32.837028\n ],\n [\n 100.038252,\n 32.928979\n ],\n [\n 99.956332,\n 32.948061\n ],\n [\n 99.877492,\n 33.045915\n ],\n [\n 99.854086,\n 32.945048\n ],\n [\n 99.788181,\n 32.956596\n ],\n [\n 99.763543,\n 32.778693\n ],\n [\n 99.607711,\n 32.780705\n ],\n [\n 99.558436,\n 32.839039\n ],\n [\n 99.385973,\n 32.900349\n ],\n [\n 99.268328,\n 32.878744\n ],\n [\n 99.235067,\n 32.982197\n ],\n [\n 99.179633,\n 33.044912\n ],\n [\n 99.002242,\n 33.08252\n ],\n [\n 98.858728,\n 33.150674\n ],\n [\n 98.759562,\n 33.277321\n ],\n [\n 98.779272,\n 33.37181\n ],\n [\n 98.734309,\n 33.409278\n ],\n [\n 98.742316,\n 33.477677\n ],\n [\n 98.648077,\n 33.549014\n ],\n [\n 98.61728,\n 33.63723\n ],\n [\n 98.6567,\n 33.647193\n ],\n [\n 98.539056,\n 33.746752\n ],\n [\n 98.462064,\n 33.849178\n ],\n [\n 98.406629,\n 33.867065\n ],\n [\n 98.440506,\n 33.981255\n ],\n [\n 98.401702,\n 34.08786\n ],\n [\n 98.21076,\n 34.078444\n ],\n [\n 98.051848,\n 34.115604\n ],\n [\n 97.937283,\n 34.196804\n ],\n [\n 97.937283,\n 34.196804\n ],\n [\n 97.834421,\n 34.208186\n ],\n [\n 97.665654,\n 34.126997\n ],\n [\n 97.70261,\n 34.036805\n ],\n [\n 97.660111,\n 33.956444\n ],\n [\n 97.458698,\n 33.886935\n ],\n [\n 97.388481,\n 33.884452\n ],\n [\n 97.435293,\n 33.680558\n ],\n [\n 97.415583,\n 33.605343\n ],\n [\n 97.52522,\n 33.575937\n ],\n [\n 97.552321,\n 33.465698\n ],\n [\n 97.625618,\n 33.461705\n ],\n [\n 97.753733,\n 33.410277\n ],\n [\n 97.676125,\n 33.340825\n ],\n [\n 97.621306,\n 33.334327\n ],\n [\n 97.576343,\n 33.221779\n ],\n [\n 97.487648,\n 33.168205\n ],\n [\n 97.487648,\n 33.10658\n ],\n [\n 97.542466,\n 33.036385\n ],\n [\n 97.523988,\n 32.988721\n ],\n [\n 97.373699,\n 32.956094\n ],\n [\n 97.386018,\n 32.779196\n ],\n [\n 97.42359,\n 32.704713\n ],\n [\n 97.543698,\n 32.621602\n ],\n [\n 97.730944,\n 32.527315\n ],\n [\n 97.670582,\n 32.517225\n ],\n [\n 97.472249,\n 32.54497\n ],\n [\n 97.448843,\n 32.586823\n ],\n [\n 97.334895,\n 32.514198\n ],\n [\n 97.388481,\n 32.501583\n ],\n [\n 97.341054,\n 32.441009\n ],\n [\n 97.387865,\n 32.427374\n ],\n [\n 97.424822,\n 32.323278\n ],\n [\n 97.371235,\n 32.273208\n ],\n [\n 97.299786,\n 32.294959\n ],\n [\n 97.264062,\n 32.183621\n ],\n [\n 97.308409,\n 32.074682\n ],\n [\n 97.130403,\n 32.04375\n ],\n [\n 97.008447,\n 32.067076\n ],\n [\n 96.894498,\n 32.013822\n ],\n [\n 96.722651,\n 32.013314\n ],\n [\n 96.81073,\n 31.894521\n ],\n [\n 96.760223,\n 31.856922\n ],\n [\n 96.840295,\n 31.720623\n ],\n [\n 96.775006,\n 31.673788\n ],\n [\n 96.616093,\n 31.736908\n ],\n [\n 96.576057,\n 31.712989\n ],\n [\n 96.468268,\n 31.769978\n ],\n [\n 96.389428,\n 31.919917\n ],\n [\n 96.253921,\n 31.929566\n ],\n [\n 96.176313,\n 31.777608\n ],\n [\n 96.252689,\n 31.69619\n ],\n [\n 96.204646,\n 31.598904\n ],\n [\n 96.160298,\n 31.600943\n ],\n [\n 96.135661,\n 31.702299\n ],\n [\n 96.041422,\n 31.734364\n ],\n [\n 95.982908,\n 31.816765\n ],\n [\n 95.89914,\n 31.817273\n ],\n [\n 95.825227,\n 31.681935\n ],\n [\n 95.779648,\n 31.74912\n ],\n [\n 95.618272,\n 31.783712\n ],\n [\n 95.546823,\n 31.739961\n ],\n [\n 95.439649,\n 31.831508\n ],\n [\n 95.360809,\n 31.959013\n ],\n [\n 95.454432,\n 32.062006\n ],\n [\n 95.406389,\n 32.182102\n ],\n [\n 95.312766,\n 32.148673\n ],\n [\n 95.26965,\n 32.194761\n ],\n [\n 95.241317,\n 32.32075\n ],\n [\n 95.10581,\n 32.259042\n ],\n [\n 95.096571,\n 32.322267\n ],\n [\n 95.261643,\n 32.348049\n ],\n [\n 95.218527,\n 32.397067\n ],\n [\n 95.081789,\n 32.384942\n ],\n [\n 94.985086,\n 32.421819\n ],\n [\n 94.912405,\n 32.415758\n ],\n [\n 94.889616,\n 32.472311\n ],\n [\n 94.80708,\n 32.486444\n ],\n [\n 94.772587,\n 32.555057\n ],\n [\n 94.614291,\n 32.673492\n ],\n [\n 94.53853,\n 32.599425\n ],\n [\n 94.395016,\n 32.594385\n ],\n [\n 94.371611,\n 32.524793\n ],\n [\n 94.196684,\n 32.516216\n ],\n [\n 94.136322,\n 32.433939\n ],\n [\n 93.958931,\n 32.484929\n ],\n [\n 93.861613,\n 32.466253\n ],\n [\n 93.820345,\n 32.549509\n ],\n [\n 93.654657,\n 32.57321\n ],\n [\n 93.618933,\n 32.522775\n ],\n [\n 93.516687,\n 32.475844\n ],\n [\n 93.4631,\n 32.556065\n ],\n [\n 93.385492,\n 32.525297\n ],\n [\n 93.239514,\n 32.662411\n ],\n [\n 93.069515,\n 32.626137\n ],\n [\n 93.019624,\n 32.737433\n ],\n [\n 92.877342,\n 32.697161\n ],\n [\n 92.686401,\n 32.765109\n ],\n [\n 92.63651,\n 32.720319\n ],\n [\n 92.355641,\n 32.764606\n ],\n [\n 92.255243,\n 32.720823\n ],\n [\n 92.198577,\n 32.755046\n ],\n [\n 92.227526,\n 32.820939\n ],\n [\n 92.145606,\n 32.885779\n ],\n [\n 91.955897,\n 32.820437\n ],\n [\n 91.896766,\n 32.907884\n ],\n [\n 91.785281,\n 32.944044\n ],\n [\n 91.58079,\n 33.039395\n ],\n [\n 91.49887,\n 33.109086\n ],\n [\n 91.436044,\n 33.065974\n ],\n [\n 91.262349,\n 33.141156\n ],\n [\n 91.134849,\n 33.073495\n ],\n [\n 91.001807,\n 33.116102\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 640000,\n \"name\": \"宁夏回族自治区\",\n \"center\": [\n 106.278179,\n 38.46637\n ],\n \"centroid\": [\n 106.169867,\n 37.291331\n ],\n \"childrenNum\": 5,\n \"level\": \"province\",\n \"subFeatureIndex\": 29,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 106.06953,\n 35.458034\n ],\n [\n 106.071994,\n 35.463395\n ],\n [\n 106.078153,\n 35.489707\n ],\n [\n 106.078153,\n 35.489707\n ],\n [\n 106.070762,\n 35.491655\n ],\n [\n 106.015943,\n 35.52234\n ],\n [\n 105.868734,\n 35.53987\n ],\n [\n 105.847176,\n 35.490681\n ],\n [\n 105.690727,\n 35.698431\n ],\n [\n 105.754785,\n 35.730494\n ],\n [\n 105.671017,\n 35.749434\n ],\n [\n 105.570003,\n 35.716407\n ],\n [\n 105.481924,\n 35.727094\n ],\n [\n 105.392613,\n 35.865405\n ],\n [\n 105.333483,\n 35.887707\n ],\n [\n 105.343954,\n 36.033965\n ],\n [\n 105.513337,\n 36.150003\n ],\n [\n 105.460366,\n 36.223887\n ],\n [\n 105.473301,\n 36.298185\n ],\n [\n 105.401236,\n 36.370002\n ],\n [\n 105.398156,\n 36.430683\n ],\n [\n 105.319932,\n 36.536038\n ],\n [\n 105.281744,\n 36.522575\n ],\n [\n 105.22015,\n 36.631167\n ],\n [\n 105.218302,\n 36.730494\n ],\n [\n 105.319932,\n 36.742961\n ],\n [\n 105.334714,\n 36.800953\n ],\n [\n 105.244787,\n 36.894798\n ],\n [\n 105.190585,\n 36.886185\n ],\n [\n 105.165331,\n 36.995218\n ],\n [\n 104.95468,\n 37.040125\n ],\n [\n 104.85613,\n 37.211864\n ],\n [\n 104.775442,\n 37.246641\n ],\n [\n 104.638087,\n 37.201857\n ],\n [\n 104.600515,\n 37.242831\n ],\n [\n 104.632544,\n 37.299015\n ],\n [\n 104.713848,\n 37.32947\n ],\n [\n 104.679971,\n 37.407931\n ],\n [\n 104.437907,\n 37.445943\n ],\n [\n 104.287002,\n 37.42789\n ],\n [\n 104.407726,\n 37.464467\n ],\n [\n 104.419429,\n 37.511943\n ],\n [\n 104.801311,\n 37.538516\n ],\n [\n 104.866601,\n 37.566503\n ],\n [\n 105.024281,\n 37.579781\n ],\n [\n 105.111128,\n 37.633818\n ],\n [\n 105.315004,\n 37.702018\n ],\n [\n 105.598952,\n 37.699178\n ],\n [\n 105.622974,\n 37.778669\n ],\n [\n 105.760944,\n 37.799947\n ],\n [\n 105.80406,\n 37.861854\n ],\n [\n 105.799749,\n 37.940227\n ],\n [\n 105.840401,\n 38.003902\n ],\n [\n 105.780655,\n 38.084949\n ],\n [\n 105.775111,\n 38.186601\n ],\n [\n 105.86627,\n 38.296565\n ],\n [\n 105.821307,\n 38.366967\n ],\n [\n 105.874277,\n 38.593197\n ],\n [\n 105.852719,\n 38.641349\n ],\n [\n 105.90569,\n 38.731488\n ],\n [\n 105.897683,\n 38.788875\n ],\n [\n 106.003625,\n 38.874636\n ],\n [\n 105.97098,\n 38.909097\n ],\n [\n 106.060907,\n 38.968667\n ],\n [\n 106.096631,\n 39.08487\n ],\n [\n 106.145907,\n 39.153108\n ],\n [\n 106.283877,\n 39.14522\n ],\n [\n 106.284493,\n 39.270397\n ],\n [\n 106.402753,\n 39.291701\n ],\n [\n 106.506231,\n 39.269934\n ],\n [\n 106.602318,\n 39.375466\n ],\n [\n 106.683622,\n 39.357426\n ],\n [\n 106.751375,\n 39.381478\n ],\n [\n 106.806809,\n 39.318554\n ],\n [\n 106.795723,\n 39.214327\n ],\n [\n 106.859164,\n 39.107623\n ],\n [\n 106.96757,\n 39.054676\n ],\n [\n 106.954019,\n 38.941215\n ],\n [\n 106.709491,\n 38.718885\n ],\n [\n 106.66268,\n 38.601614\n ],\n [\n 106.647897,\n 38.470569\n ],\n [\n 106.601702,\n 38.392295\n ],\n [\n 106.482825,\n 38.319571\n ],\n [\n 106.546883,\n 38.269794\n ],\n [\n 106.768621,\n 38.174843\n ],\n [\n 107.014997,\n 38.120261\n ],\n [\n 107.19054,\n 38.154144\n ],\n [\n 107.329742,\n 38.087774\n ],\n [\n 107.438147,\n 37.992586\n ],\n [\n 107.419669,\n 37.940699\n ],\n [\n 107.49235,\n 37.944945\n ],\n [\n 107.65003,\n 37.864688\n ],\n [\n 107.620465,\n 37.775832\n ],\n [\n 107.499125,\n 37.7659\n ],\n [\n 107.484959,\n 37.706279\n ],\n [\n 107.348836,\n 37.608226\n ],\n [\n 107.342061,\n 37.515265\n ],\n [\n 107.284162,\n 37.482036\n ],\n [\n 107.257677,\n 37.337082\n ],\n [\n 107.336517,\n 37.165628\n ],\n [\n 107.268764,\n 37.099324\n ],\n [\n 107.180685,\n 37.143692\n ],\n [\n 107.095685,\n 37.115548\n ],\n [\n 107.030395,\n 37.140831\n ],\n [\n 106.891193,\n 37.098369\n ],\n [\n 106.777244,\n 37.156569\n ],\n [\n 106.777244,\n 37.156569\n ],\n [\n 106.750143,\n 37.098847\n ],\n [\n 106.605397,\n 37.127475\n ],\n [\n 106.666991,\n 37.01672\n ],\n [\n 106.595542,\n 36.940243\n ],\n [\n 106.658368,\n 36.811972\n ],\n [\n 106.631883,\n 36.723301\n ],\n [\n 106.589383,\n 36.750153\n ],\n [\n 106.519782,\n 36.708912\n ],\n [\n 106.519782,\n 36.708912\n ],\n [\n 106.471738,\n 36.581214\n ],\n [\n 106.401521,\n 36.546133\n ],\n [\n 106.521014,\n 36.479289\n ],\n [\n 106.488369,\n 36.400348\n ],\n [\n 106.505615,\n 36.265869\n ],\n [\n 106.599238,\n 36.274552\n ],\n [\n 106.599238,\n 36.274552\n ],\n [\n 106.858548,\n 36.206992\n ],\n [\n 106.858548,\n 36.206992\n ],\n [\n 106.957715,\n 36.091522\n ],\n [\n 106.950939,\n 36.004444\n ],\n [\n 106.849925,\n 35.887707\n ],\n [\n 106.92199,\n 35.803316\n ],\n [\n 106.86594,\n 35.737779\n ],\n [\n 106.737208,\n 35.689198\n ],\n [\n 106.504383,\n 35.738265\n ],\n [\n 106.501304,\n 35.737779\n ],\n [\n 106.434782,\n 35.688712\n ],\n [\n 106.476666,\n 35.580756\n ],\n [\n 106.440941,\n 35.526723\n ],\n [\n 106.503767,\n 35.415135\n ],\n [\n 106.472354,\n 35.310716\n ],\n [\n 106.319601,\n 35.265296\n ],\n [\n 106.174856,\n 35.438538\n ],\n [\n 106.107102,\n 35.364894\n ],\n [\n 106.079385,\n 35.427325\n ],\n [\n 106.071378,\n 35.449261\n ],\n [\n 106.073226,\n 35.450236\n ],\n [\n 106.073842,\n 35.45511\n ],\n [\n 106.06953,\n 35.458034\n ]\n ]\n ],\n [\n [\n [\n 106.057827,\n 35.488245\n ],\n [\n 106.054132,\n 35.449261\n ],\n [\n 105.894603,\n 35.413672\n ],\n [\n 105.897683,\n 35.451698\n ],\n [\n 106.057827,\n 35.488245\n ]\n ]\n ],\n [\n [\n [\n 106.071378,\n 35.449261\n ],\n [\n 106.06953,\n 35.458034\n ],\n [\n 106.073842,\n 35.45511\n ],\n [\n 106.073226,\n 35.450236\n ],\n [\n 106.071378,\n 35.449261\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 650000,\n \"name\": \"新疆维吾尔自治区\",\n \"center\": [\n 87.617733,\n 43.792818\n ],\n \"centroid\": [\n 85.294712,\n 41.371801\n ],\n \"childrenNum\": 23,\n \"level\": \"province\",\n \"subFeatureIndex\": 30,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 79.039649,\n 34.33427\n ],\n [\n 78.958961,\n 34.386132\n ],\n [\n 78.878273,\n 34.391563\n ],\n [\n 78.742766,\n 34.454737\n ],\n [\n 78.708274,\n 34.522301\n ],\n [\n 78.634977,\n 34.538074\n ],\n [\n 78.58139,\n 34.505539\n ],\n [\n 78.542586,\n 34.574539\n ],\n [\n 78.436029,\n 34.543496\n ],\n [\n 78.427405,\n 34.594243\n ],\n [\n 78.280812,\n 34.623298\n ],\n [\n 78.267261,\n 34.705482\n ],\n [\n 78.213059,\n 34.717778\n ],\n [\n 78.237696,\n 34.882369\n ],\n [\n 78.182262,\n 34.936832\n ],\n [\n 78.201972,\n 34.974592\n ],\n [\n 78.123131,\n 35.036833\n ],\n [\n 78.124979,\n 35.108327\n ],\n [\n 78.062769,\n 35.11469\n ],\n [\n 78.01719,\n 35.22816\n ],\n [\n 78.013494,\n 35.36587\n ],\n [\n 78.136066,\n 35.49263\n ],\n [\n 78.009799,\n 35.491655\n ],\n [\n 77.914944,\n 35.464857\n ],\n [\n 77.816394,\n 35.518445\n ],\n [\n 77.690742,\n 35.448287\n ],\n [\n 77.518895,\n 35.481912\n ],\n [\n 77.396939,\n 35.467781\n ],\n [\n 77.307628,\n 35.540356\n ],\n [\n 77.195527,\n 35.519419\n ],\n [\n 77.072339,\n 35.590974\n ],\n [\n 76.967013,\n 35.591947\n ],\n [\n 76.83705,\n 35.66198\n ],\n [\n 76.76129,\n 35.65566\n ],\n [\n 76.69292,\n 35.747492\n ],\n [\n 76.593754,\n 35.772253\n ],\n [\n 76.566037,\n 35.819328\n ],\n [\n 76.59745,\n 35.895947\n ],\n [\n 76.54879,\n 35.919209\n ],\n [\n 76.365857,\n 35.82418\n ],\n [\n 76.298719,\n 35.841643\n ],\n [\n 76.147198,\n 35.833397\n ],\n [\n 76.16506,\n 35.909033\n ],\n [\n 76.104082,\n 36.018964\n ],\n [\n 75.961184,\n 36.051381\n ],\n [\n 75.942706,\n 36.137923\n ],\n [\n 76.016619,\n 36.165461\n ],\n [\n 76.011691,\n 36.229197\n ],\n [\n 76.060967,\n 36.225335\n ],\n [\n 75.989518,\n 36.340127\n ],\n [\n 76.035097,\n 36.409017\n ],\n [\n 75.945786,\n 36.588421\n ],\n [\n 75.871873,\n 36.66621\n ],\n [\n 75.724048,\n 36.750632\n ],\n [\n 75.537418,\n 36.773161\n ],\n [\n 75.536802,\n 36.730015\n ],\n [\n 75.458578,\n 36.720903\n ],\n [\n 75.425933,\n 36.778912\n ],\n [\n 75.413614,\n 36.954588\n ],\n [\n 75.244847,\n 36.963194\n ],\n [\n 75.130898,\n 37.010987\n ],\n [\n 75.032348,\n 37.01672\n ],\n [\n 74.893762,\n 36.939764\n ],\n [\n 74.84695,\n 37.056839\n ],\n [\n 74.739161,\n 37.028185\n ],\n [\n 74.70898,\n 37.084529\n ],\n [\n 74.56793,\n 37.032961\n ],\n [\n 74.498944,\n 37.072595\n ],\n [\n 74.465068,\n 37.147031\n ],\n [\n 74.511263,\n 37.239973\n ],\n [\n 74.665864,\n 37.235686\n ],\n [\n 74.727458,\n 37.282831\n ],\n [\n 74.816153,\n 37.216629\n ],\n [\n 74.911008,\n 37.23378\n ],\n [\n 74.927022,\n 37.277594\n ],\n [\n 75.125971,\n 37.322334\n ],\n [\n 75.153072,\n 37.414109\n ],\n [\n 75.069304,\n 37.513367\n ],\n [\n 75.035428,\n 37.501026\n ],\n [\n 74.940573,\n 37.558914\n ],\n [\n 74.891914,\n 37.668399\n ],\n [\n 75.006478,\n 37.771102\n ],\n [\n 74.917167,\n 37.844847\n ],\n [\n 74.911008,\n 37.967118\n ],\n [\n 74.821697,\n 38.102842\n ],\n [\n 74.789668,\n 38.324734\n ],\n [\n 74.868508,\n 38.404018\n ],\n [\n 74.862965,\n 38.484152\n ],\n [\n 74.792747,\n 38.536121\n ],\n [\n 74.717603,\n 38.542205\n ],\n [\n 74.639995,\n 38.599744\n ],\n [\n 74.506336,\n 38.63761\n ],\n [\n 74.229779,\n 38.656302\n ],\n [\n 74.147859,\n 38.676858\n ],\n [\n 74.068403,\n 38.585714\n ],\n [\n 74.090577,\n 38.542205\n ],\n [\n 73.926121,\n 38.536121\n ],\n [\n 73.89902,\n 38.579166\n ],\n [\n 73.799237,\n 38.610966\n ],\n [\n 73.757353,\n 38.719818\n ],\n [\n 73.769056,\n 38.775815\n ],\n [\n 73.699455,\n 38.857865\n ],\n [\n 73.767824,\n 38.941215\n ],\n [\n 73.826339,\n 38.917012\n ],\n [\n 73.820179,\n 39.041665\n ],\n [\n 73.743187,\n 39.029581\n ],\n [\n 73.719781,\n 39.108088\n ],\n [\n 73.639709,\n 39.220353\n ],\n [\n 73.542391,\n 39.269471\n ],\n [\n 73.554094,\n 39.350023\n ],\n [\n 73.502355,\n 39.383791\n ],\n [\n 73.592898,\n 39.412457\n ],\n [\n 73.61076,\n 39.466059\n ],\n [\n 73.745651,\n 39.461902\n ],\n [\n 73.868223,\n 39.482686\n ],\n [\n 73.953838,\n 39.600345\n ],\n [\n 73.905795,\n 39.742193\n ],\n [\n 73.841737,\n 39.756453\n ],\n [\n 73.845433,\n 39.831389\n ],\n [\n 73.907027,\n 39.873647\n ],\n [\n 73.910722,\n 39.934693\n ],\n [\n 73.980324,\n 40.004851\n ],\n [\n 73.943367,\n 40.015849\n ],\n [\n 74.023439,\n 40.085008\n ],\n [\n 74.26304,\n 40.125281\n ],\n [\n 74.356662,\n 40.089128\n ],\n [\n 74.442894,\n 40.137175\n ],\n [\n 74.577169,\n 40.260567\n ],\n [\n 74.673255,\n 40.278828\n ],\n [\n 74.697893,\n 40.344527\n ],\n [\n 74.908544,\n 40.339055\n ],\n [\n 74.795211,\n 40.443412\n ],\n [\n 74.819233,\n 40.505767\n ],\n [\n 74.891914,\n 40.507587\n ],\n [\n 74.973218,\n 40.460258\n ],\n [\n 75.102565,\n 40.439769\n ],\n [\n 75.13521,\n 40.463445\n ],\n [\n 75.242383,\n 40.448876\n ],\n [\n 75.355716,\n 40.538059\n ],\n [\n 75.432093,\n 40.563518\n ],\n [\n 75.550353,\n 40.648917\n ],\n [\n 75.636584,\n 40.624399\n ],\n [\n 75.646439,\n 40.516684\n ],\n [\n 75.733287,\n 40.474369\n ],\n [\n 75.669845,\n 40.363678\n ],\n [\n 75.709265,\n 40.28111\n ],\n [\n 75.831221,\n 40.327196\n ],\n [\n 75.921764,\n 40.291151\n ],\n [\n 75.986438,\n 40.381911\n ],\n [\n 76.176147,\n 40.381455\n ],\n [\n 76.279625,\n 40.439314\n ],\n [\n 76.333212,\n 40.343615\n ],\n [\n 76.442233,\n 40.391482\n ],\n [\n 76.539551,\n 40.4639\n ],\n [\n 76.556798,\n 40.542606\n ],\n [\n 76.657196,\n 40.620312\n ],\n [\n 76.676906,\n 40.696113\n ],\n [\n 76.646725,\n 40.760045\n ],\n [\n 76.731724,\n 40.818935\n ],\n [\n 76.761905,\n 40.954185\n ],\n [\n 76.85368,\n 40.976323\n ],\n [\n 76.885709,\n 41.027348\n ],\n [\n 77.002122,\n 41.073373\n ],\n [\n 77.091433,\n 41.062546\n ],\n [\n 77.169041,\n 41.009291\n ],\n [\n 77.296541,\n 41.004776\n ],\n [\n 77.363062,\n 41.040888\n ],\n [\n 77.476395,\n 40.999357\n ],\n [\n 77.591576,\n 40.992132\n ],\n [\n 77.829328,\n 41.059388\n ],\n [\n 77.814546,\n 41.134238\n ],\n [\n 77.905089,\n 41.185141\n ],\n [\n 77.972842,\n 41.172982\n ],\n [\n 78.129291,\n 41.228354\n ],\n [\n 78.162551,\n 41.382521\n ],\n [\n 78.324544,\n 41.384316\n ],\n [\n 78.458818,\n 41.41349\n ],\n [\n 78.580774,\n 41.481659\n ],\n [\n 78.650375,\n 41.467314\n ],\n [\n 78.739071,\n 41.555578\n ],\n [\n 78.825302,\n 41.560503\n ],\n [\n 78.959577,\n 41.652663\n ],\n [\n 79.021787,\n 41.657134\n ],\n [\n 79.138199,\n 41.722814\n ],\n [\n 79.21704,\n 41.725493\n ],\n [\n 79.326061,\n 41.809391\n ],\n [\n 79.361169,\n 41.796457\n ],\n [\n 79.462799,\n 41.848625\n ],\n [\n 79.550879,\n 41.833915\n ],\n [\n 79.640806,\n 41.884717\n ],\n [\n 79.776313,\n 41.892734\n ],\n [\n 79.852689,\n 42.015544\n ],\n [\n 79.918594,\n 42.041322\n ],\n [\n 80.14218,\n 42.034656\n ],\n [\n 80.193303,\n 42.081301\n ],\n [\n 80.139717,\n 42.151427\n ],\n [\n 80.168666,\n 42.200202\n ],\n [\n 80.28631,\n 42.232993\n ],\n [\n 80.283847,\n 42.320649\n ],\n [\n 80.229028,\n 42.358241\n ],\n [\n 80.206238,\n 42.428943\n ],\n [\n 80.265368,\n 42.502211\n ],\n [\n 80.164354,\n 42.627363\n ],\n [\n 80.228412,\n 42.692923\n ],\n [\n 80.261673,\n 42.825592\n ],\n [\n 80.417505,\n 42.838755\n ],\n [\n 80.500041,\n 42.879544\n ],\n [\n 80.602903,\n 42.89445\n ],\n [\n 80.487106,\n 42.94878\n ],\n [\n 80.378701,\n 43.031497\n ],\n [\n 80.593048,\n 43.133319\n ],\n [\n 80.79446,\n 43.137248\n ],\n [\n 80.777214,\n 43.30816\n ],\n [\n 80.69283,\n 43.32035\n ],\n [\n 80.761199,\n 43.446456\n ],\n [\n 80.75504,\n 43.49422\n ],\n [\n 80.522215,\n 43.816724\n ],\n [\n 80.511128,\n 43.906887\n ],\n [\n 80.453846,\n 43.989596\n ],\n [\n 80.449534,\n 44.077778\n ],\n [\n 80.3941,\n 44.127189\n ],\n [\n 80.413194,\n 44.264461\n ],\n [\n 80.350368,\n 44.484713\n ],\n [\n 80.411962,\n 44.605392\n ],\n [\n 80.313412,\n 44.704987\n ],\n [\n 80.200695,\n 44.75642\n ],\n [\n 80.169898,\n 44.844727\n ],\n [\n 79.999283,\n 44.793797\n ],\n [\n 79.969102,\n 44.877383\n ],\n [\n 79.887798,\n 44.909173\n ],\n [\n 80.144644,\n 45.058985\n ],\n [\n 80.24381,\n 45.031507\n ],\n [\n 80.328194,\n 45.069973\n ],\n [\n 80.404571,\n 45.049264\n ],\n [\n 80.493882,\n 45.126991\n ],\n [\n 80.599207,\n 45.10588\n ],\n [\n 80.731634,\n 45.156111\n ],\n [\n 80.897938,\n 45.127413\n ],\n [\n 80.93551,\n 45.16033\n ],\n [\n 81.024821,\n 45.162862\n ],\n [\n 81.111669,\n 45.218522\n ],\n [\n 81.170183,\n 45.210935\n ],\n [\n 81.44982,\n 45.265707\n ],\n [\n 81.575471,\n 45.307803\n ],\n [\n 81.634601,\n 45.357856\n ],\n [\n 81.78797,\n 45.383497\n ],\n [\n 81.921013,\n 45.233272\n ],\n [\n 82.052824,\n 45.25602\n ],\n [\n 82.109491,\n 45.211357\n ],\n [\n 82.294272,\n 45.247596\n ],\n [\n 82.487061,\n 45.181\n ],\n [\n 82.58746,\n 45.224001\n ],\n [\n 82.60101,\n 45.346083\n ],\n [\n 82.546808,\n 45.425925\n ],\n [\n 82.281954,\n 45.538772\n ],\n [\n 82.266555,\n 45.620015\n ],\n [\n 82.289961,\n 45.7166\n ],\n [\n 82.340468,\n 45.772552\n ],\n [\n 82.342932,\n 45.935076\n ],\n [\n 82.461808,\n 45.979999\n ],\n [\n 82.518474,\n 46.153938\n ],\n [\n 82.726662,\n 46.494818\n ],\n [\n 82.829524,\n 46.772551\n ],\n [\n 82.876335,\n 46.82375\n ],\n [\n 82.937929,\n 47.014193\n ],\n [\n 82.993364,\n 47.06557\n ],\n [\n 83.02724,\n 47.215341\n ],\n [\n 83.15474,\n 47.236063\n ],\n [\n 83.257602,\n 47.173057\n ],\n [\n 83.370318,\n 47.178751\n ],\n [\n 83.418978,\n 47.118934\n ],\n [\n 83.463325,\n 47.131961\n ],\n [\n 83.576042,\n 47.059049\n ],\n [\n 83.766367,\n 47.026838\n ],\n [\n 83.932671,\n 46.970117\n ],\n [\n 84.002888,\n 46.990527\n ],\n [\n 84.086656,\n 46.965217\n ],\n [\n 84.195061,\n 47.003586\n ],\n [\n 84.37122,\n 46.993384\n ],\n [\n 84.425422,\n 47.00889\n ],\n [\n 84.506726,\n 46.972975\n ],\n [\n 84.748175,\n 47.009706\n ],\n [\n 84.849189,\n 46.95705\n ],\n [\n 84.934188,\n 46.863857\n ],\n [\n 84.987159,\n 46.918239\n ],\n [\n 85.082014,\n 46.939895\n ],\n [\n 85.276651,\n 47.068831\n ],\n [\n 85.325926,\n 47.044781\n ],\n [\n 85.545816,\n 47.057826\n ],\n [\n 85.582772,\n 47.14295\n ],\n [\n 85.682555,\n 47.222655\n ],\n [\n 85.675163,\n 47.318063\n ],\n [\n 85.701649,\n 47.384138\n ],\n [\n 85.614801,\n 47.497853\n ],\n [\n 85.617881,\n 47.550781\n ],\n [\n 85.547048,\n 48.00833\n ],\n [\n 85.529186,\n 48.02714\n ],\n [\n 85.587084,\n 48.191738\n ],\n [\n 85.678243,\n 48.266272\n ],\n [\n 85.695489,\n 48.335129\n ],\n [\n 85.791576,\n 48.418986\n ],\n [\n 85.916612,\n 48.438043\n ],\n [\n 86.225813,\n 48.432485\n ],\n [\n 86.305269,\n 48.491999\n ],\n [\n 86.416138,\n 48.481688\n ],\n [\n 86.579978,\n 48.538768\n ],\n [\n 86.640956,\n 48.629012\n ],\n [\n 86.780774,\n 48.73133\n ],\n [\n 86.754289,\n 48.78458\n ],\n [\n 86.822042,\n 48.849193\n ],\n [\n 86.757985,\n 48.894844\n ],\n [\n 86.732731,\n 48.995444\n ],\n [\n 86.836209,\n 49.051159\n ],\n [\n 86.88918,\n 49.132656\n ],\n [\n 87.088128,\n 49.13383\n ],\n [\n 87.112766,\n 49.155748\n ],\n [\n 87.239033,\n 49.114644\n ],\n [\n 87.388707,\n 49.098193\n ],\n [\n 87.43675,\n 49.075073\n ],\n [\n 87.511894,\n 49.101718\n ],\n [\n 87.49896,\n 49.141268\n ],\n [\n 87.821096,\n 49.173745\n ],\n [\n 87.867291,\n 49.108769\n ],\n [\n 87.833415,\n 49.050374\n ],\n [\n 87.911639,\n 48.980132\n ],\n [\n 87.87653,\n 48.949099\n ],\n [\n 87.763198,\n 48.926697\n ],\n [\n 87.742256,\n 48.881074\n ],\n [\n 87.93874,\n 48.757765\n ],\n [\n 88.029283,\n 48.75027\n ],\n [\n 88.089645,\n 48.695009\n ],\n [\n 88.027436,\n 48.62743\n ],\n [\n 87.96153,\n 48.599344\n ],\n [\n 88.041602,\n 48.548275\n ],\n [\n 88.10874,\n 48.545898\n ],\n [\n 88.196819,\n 48.493982\n ],\n [\n 88.363123,\n 48.460267\n ],\n [\n 88.443811,\n 48.391579\n ],\n [\n 88.503557,\n 48.413029\n ],\n [\n 88.605803,\n 48.337914\n ],\n [\n 88.575006,\n 48.277423\n ],\n [\n 88.663085,\n 48.172189\n ],\n [\n 88.79736,\n 48.133869\n ],\n [\n 88.824461,\n 48.106708\n ],\n [\n 88.939026,\n 48.115497\n ],\n [\n 89.078228,\n 47.98711\n ],\n [\n 89.231597,\n 47.980301\n ],\n [\n 89.38127,\n 48.046344\n ],\n [\n 89.569132,\n 48.037943\n ],\n [\n 89.651052,\n 47.913774\n ],\n [\n 89.735435,\n 47.897329\n ],\n [\n 89.761921,\n 47.835916\n ],\n [\n 89.957789,\n 47.842743\n ],\n [\n 89.960253,\n 47.885694\n ],\n [\n 90.086521,\n 47.865628\n ],\n [\n 90.07605,\n 47.777646\n ],\n [\n 90.13518,\n 47.723337\n ],\n [\n 90.331665,\n 47.68146\n ],\n [\n 90.398186,\n 47.547551\n ],\n [\n 90.468403,\n 47.497853\n ],\n [\n 90.468403,\n 47.404795\n ],\n [\n 90.526301,\n 47.378871\n ],\n [\n 90.488113,\n 47.317252\n ],\n [\n 90.56141,\n 47.207212\n ],\n [\n 90.767134,\n 46.992568\n ],\n [\n 90.901408,\n 46.960725\n ],\n [\n 90.958075,\n 46.8794\n ],\n [\n 90.942676,\n 46.825797\n ],\n [\n 91.054161,\n 46.71761\n ],\n [\n 91.017821,\n 46.582483\n ],\n [\n 91.079415,\n 46.558626\n ],\n [\n 90.983328,\n 46.374823\n ],\n [\n 90.900177,\n 46.31204\n ],\n [\n 91.021517,\n 46.121185\n ],\n [\n 91.028292,\n 46.023224\n ],\n [\n 90.850285,\n 45.888035\n ],\n [\n 90.714779,\n 45.728714\n ],\n [\n 90.676591,\n 45.582339\n ],\n [\n 90.671047,\n 45.48762\n ],\n [\n 90.772677,\n 45.432223\n ],\n [\n 90.804706,\n 45.294756\n ],\n [\n 90.877387,\n 45.280865\n ],\n [\n 90.881698,\n 45.191964\n ],\n [\n 91.007966,\n 45.218522\n ],\n [\n 91.129922,\n 45.215993\n ],\n [\n 91.242023,\n 45.137544\n ],\n [\n 91.37753,\n 45.110947\n ],\n [\n 91.448978,\n 45.156533\n ],\n [\n 91.561695,\n 45.075466\n ],\n [\n 91.694738,\n 45.065325\n ],\n [\n 91.803144,\n 45.082649\n ],\n [\n 92.100026,\n 45.081381\n ],\n [\n 92.240461,\n 45.015859\n ],\n [\n 92.315605,\n 45.02897\n ],\n [\n 92.501003,\n 45.001054\n ],\n [\n 92.779407,\n 45.050532\n ],\n [\n 92.884117,\n 45.046727\n ],\n [\n 92.932776,\n 45.017551\n ],\n [\n 93.174225,\n 45.015436\n ],\n [\n 93.434767,\n 44.955343\n ],\n [\n 93.509296,\n 44.968044\n ],\n [\n 93.716251,\n 44.89434\n ],\n [\n 93.723642,\n 44.86551\n ],\n [\n 94.215162,\n 44.667978\n ],\n [\n 94.329727,\n 44.582811\n ],\n [\n 94.359292,\n 44.51544\n ],\n [\n 94.470777,\n 44.509466\n ],\n [\n 94.606283,\n 44.448418\n ],\n [\n 94.722696,\n 44.340681\n ],\n [\n 94.945666,\n 44.292734\n ],\n [\n 94.998637,\n 44.25332\n ],\n [\n 95.398381,\n 44.294447\n ],\n [\n 95.326932,\n 44.028756\n ],\n [\n 95.527113,\n 44.007243\n ],\n [\n 95.623199,\n 43.855567\n ],\n [\n 95.735916,\n 43.597437\n ],\n [\n 95.857872,\n 43.417779\n ],\n [\n 95.880046,\n 43.280289\n ],\n [\n 95.921314,\n 43.22974\n ],\n [\n 96.363558,\n 42.900586\n ],\n [\n 96.386348,\n 42.727655\n ],\n [\n 96.103632,\n 42.604026\n ],\n [\n 96.02356,\n 42.54234\n ],\n [\n 95.978596,\n 42.436892\n ],\n [\n 96.06606,\n 42.414367\n ],\n [\n 96.040806,\n 42.3264\n ],\n [\n 96.178161,\n 42.217929\n ],\n [\n 96.077147,\n 42.149652\n ],\n [\n 96.13874,\n 42.054207\n ],\n [\n 96.117183,\n 41.985753\n ],\n [\n 96.038342,\n 41.924794\n ],\n [\n 95.855408,\n 41.849516\n ],\n [\n 95.677402,\n 41.830795\n ],\n [\n 95.57146,\n 41.796011\n ],\n [\n 95.39407,\n 41.693333\n ],\n [\n 95.29552,\n 41.569456\n ],\n [\n 95.135991,\n 41.772811\n ],\n [\n 94.861898,\n 41.668309\n ],\n [\n 94.750413,\n 41.538114\n ],\n [\n 94.534219,\n 41.50586\n ],\n [\n 94.184365,\n 41.268392\n ],\n [\n 94.01067,\n 41.114857\n ],\n [\n 93.809874,\n 40.879583\n ],\n [\n 93.820961,\n 40.793574\n ],\n [\n 93.760599,\n 40.664804\n ],\n [\n 93.506216,\n 40.648464\n ],\n [\n 92.928465,\n 40.572609\n ],\n [\n 92.906907,\n 40.310773\n ],\n [\n 92.796654,\n 40.15364\n ],\n [\n 92.745531,\n 39.868137\n ],\n [\n 92.639589,\n 39.514543\n ],\n [\n 92.52564,\n 39.368528\n ],\n [\n 92.339011,\n 39.236575\n ],\n [\n 92.366728,\n 39.059322\n ],\n [\n 92.41046,\n 39.038412\n ],\n [\n 92.38459,\n 39.000758\n ],\n [\n 92.263866,\n 39.002153\n ],\n [\n 92.173323,\n 38.960758\n ],\n [\n 91.966368,\n 38.930976\n ],\n [\n 91.87952,\n 38.884417\n ],\n [\n 91.446515,\n 38.813588\n ],\n [\n 91.307928,\n 38.751089\n ],\n [\n 90.831191,\n 38.667982\n ],\n [\n 90.619308,\n 38.664245\n ],\n [\n 90.610685,\n 38.596003\n ],\n [\n 90.463476,\n 38.556711\n ],\n [\n 90.424671,\n 38.492114\n ],\n [\n 90.315034,\n 38.501948\n ],\n [\n 90.111774,\n 38.477595\n ],\n [\n 90.137644,\n 38.340692\n ],\n [\n 90.280542,\n 38.238315\n ],\n [\n 90.352607,\n 38.233615\n ],\n [\n 90.361846,\n 38.300322\n ],\n [\n 90.530613,\n 38.32004\n ],\n [\n 90.516446,\n 38.207291\n ],\n [\n 90.519526,\n 37.73089\n ],\n [\n 90.776373,\n 37.6504\n ],\n [\n 90.882314,\n 37.575513\n ],\n [\n 90.863836,\n 37.534246\n ],\n [\n 90.958075,\n 37.477763\n ],\n [\n 91.057241,\n 37.483936\n ],\n [\n 91.099741,\n 37.447843\n ],\n [\n 91.134849,\n 37.32614\n ],\n [\n 91.192132,\n 37.27807\n ],\n [\n 91.1909,\n 37.205669\n ],\n [\n 91.280211,\n 37.163721\n ],\n [\n 91.303617,\n 37.01242\n ],\n [\n 91.181045,\n 37.025318\n ],\n [\n 90.983944,\n 36.913458\n ],\n [\n 90.853981,\n 36.915371\n ],\n [\n 90.735105,\n 36.827778\n ],\n [\n 90.720938,\n 36.708912\n ],\n [\n 90.7388,\n 36.58746\n ],\n [\n 91.035683,\n 36.529788\n ],\n [\n 91.05293,\n 36.432608\n ],\n [\n 91.026444,\n 36.323738\n ],\n [\n 91.07264,\n 36.299149\n ],\n [\n 91.124994,\n 36.115693\n ],\n [\n 91.09235,\n 36.088621\n ],\n [\n 90.979017,\n 36.106992\n ],\n [\n 90.922966,\n 36.029126\n ],\n [\n 90.841046,\n 36.01848\n ],\n [\n 90.776373,\n 36.086203\n ],\n [\n 90.66304,\n 36.134058\n ],\n [\n 90.526917,\n 36.148553\n ],\n [\n 90.430215,\n 36.133091\n ],\n [\n 90.234962,\n 36.161597\n ],\n [\n 90.128405,\n 36.208923\n ],\n [\n 90.145651,\n 36.238849\n ],\n [\n 90.028006,\n 36.25815\n ],\n [\n 89.999057,\n 36.169809\n ],\n [\n 89.937463,\n 36.130675\n ],\n [\n 89.941159,\n 36.067343\n ],\n [\n 89.711414,\n 36.092972\n ],\n [\n 89.490291,\n 36.150969\n ],\n [\n 89.375727,\n 36.228231\n ],\n [\n 89.287647,\n 36.235954\n ],\n [\n 89.232213,\n 36.295774\n ],\n [\n 89.127503,\n 36.249465\n ],\n [\n 89.10225,\n 36.281305\n ],\n [\n 88.964279,\n 36.318917\n ],\n [\n 88.926091,\n 36.364221\n ],\n [\n 88.802903,\n 36.337717\n ],\n [\n 88.783809,\n 36.291916\n ],\n [\n 88.623665,\n 36.389271\n ],\n [\n 88.573158,\n 36.461005\n ],\n [\n 88.470912,\n 36.482175\n ],\n [\n 88.365586,\n 36.457636\n ],\n [\n 88.241782,\n 36.468704\n ],\n [\n 88.134609,\n 36.427313\n ],\n [\n 87.983088,\n 36.437903\n ],\n [\n 87.949211,\n 36.401312\n ],\n [\n 87.731785,\n 36.384936\n ],\n [\n 87.570409,\n 36.342536\n ],\n [\n 87.470626,\n 36.354102\n ],\n [\n 87.460155,\n 36.409498\n ],\n [\n 87.361605,\n 36.419128\n ],\n [\n 87.306787,\n 36.363739\n ],\n [\n 87.193454,\n 36.349283\n ],\n [\n 87.149106,\n 36.29722\n ],\n [\n 86.996353,\n 36.308793\n ],\n [\n 86.887332,\n 36.262492\n ],\n [\n 86.862078,\n 36.300114\n ],\n [\n 86.746282,\n 36.291916\n ],\n [\n 86.701318,\n 36.245122\n ],\n [\n 86.515305,\n 36.205543\n ],\n [\n 86.392733,\n 36.206992\n ],\n [\n 86.187625,\n 36.131158\n ],\n [\n 86.199944,\n 36.032513\n ],\n [\n 86.132806,\n 35.979271\n ],\n [\n 86.060125,\n 35.846008\n ],\n [\n 85.949256,\n 35.779049\n ],\n [\n 85.811286,\n 35.779049\n ],\n [\n 85.65299,\n 35.731465\n ],\n [\n 85.613569,\n 35.652257\n ],\n [\n 85.372121,\n 35.701346\n ],\n [\n 85.271107,\n 35.788757\n ],\n [\n 85.159006,\n 35.745549\n ],\n [\n 85.053065,\n 35.751862\n ],\n [\n 84.729081,\n 35.613353\n ],\n [\n 84.448828,\n 35.55058\n ],\n [\n 84.45314,\n 35.473141\n ],\n [\n 84.335495,\n 35.414647\n ],\n [\n 84.1618,\n 35.359039\n ],\n [\n 84.095895,\n 35.362943\n ],\n [\n 84.005968,\n 35.422449\n ],\n [\n 83.885244,\n 35.367334\n ],\n [\n 83.677672,\n 35.360991\n ],\n [\n 83.622238,\n 35.335614\n ],\n [\n 83.451006,\n 35.38197\n ],\n [\n 83.242203,\n 35.420011\n ],\n [\n 83.127022,\n 35.398554\n ],\n [\n 83.067892,\n 35.462908\n ],\n [\n 82.998907,\n 35.484348\n ],\n [\n 82.960719,\n 35.671702\n ],\n [\n 82.788872,\n 35.684824\n ],\n [\n 82.731589,\n 35.63767\n ],\n [\n 82.628727,\n 35.692114\n ],\n [\n 82.424852,\n 35.713006\n ],\n [\n 82.336156,\n 35.651284\n ],\n [\n 82.328149,\n 35.559342\n ],\n [\n 82.033114,\n 35.450236\n ],\n [\n 82.05344,\n 35.350255\n ],\n [\n 81.927789,\n 35.271158\n ],\n [\n 81.736847,\n 35.262365\n ],\n [\n 81.675253,\n 35.233536\n ],\n [\n 81.513261,\n 35.235002\n ],\n [\n 81.494167,\n 35.292161\n ],\n [\n 81.362356,\n 35.354647\n ],\n [\n 81.219458,\n 35.319016\n ],\n [\n 81.09935,\n 35.407333\n ],\n [\n 81.031597,\n 35.380506\n ],\n [\n 81.026053,\n 35.312181\n ],\n [\n 80.844351,\n 35.345375\n ],\n [\n 80.689135,\n 35.33903\n ],\n [\n 80.65649,\n 35.394165\n ],\n [\n 80.516672,\n 35.392214\n ],\n [\n 80.412578,\n 35.433663\n ],\n [\n 80.321419,\n 35.386848\n ],\n [\n 80.268448,\n 35.294114\n ],\n [\n 80.362687,\n 35.209096\n ],\n [\n 80.257977,\n 35.20323\n ],\n [\n 80.23026,\n 35.147476\n ],\n [\n 80.118159,\n 35.066222\n ],\n [\n 80.031311,\n 35.034384\n ],\n [\n 80.034391,\n 34.902\n ],\n [\n 79.947544,\n 34.820993\n ],\n [\n 79.906892,\n 34.683837\n ],\n [\n 79.801566,\n 34.478909\n ],\n [\n 79.675914,\n 34.451284\n ],\n [\n 79.504683,\n 34.454737\n ],\n [\n 79.229358,\n 34.413778\n ],\n [\n 79.161605,\n 34.441416\n ],\n [\n 79.0107,\n 34.399956\n ],\n [\n 79.039649,\n 34.33427\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 710000,\n \"name\": \"台湾省\",\n \"center\": [\n 121.509062,\n 25.044332\n ],\n \"centroid\": [\n 120.971486,\n 23.749452\n ],\n \"childrenNum\": 0,\n \"level\": \"province\",\n \"subFeatureIndex\": 31,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 120.443706,\n 22.441042\n ],\n [\n 120.297112,\n 22.531154\n ],\n [\n 120.20041,\n 22.721137\n ],\n [\n 120.131425,\n 23.002313\n ],\n [\n 120.018708,\n 23.073342\n ],\n [\n 120.108019,\n 23.34115\n ],\n [\n 120.12157,\n 23.504758\n ],\n [\n 120.095084,\n 23.587583\n ],\n [\n 120.102476,\n 23.70104\n ],\n [\n 120.175156,\n 23.807282\n ],\n [\n 120.245989,\n 23.84067\n ],\n [\n 120.278018,\n 23.927657\n ],\n [\n 120.68885,\n 24.600764\n ],\n [\n 120.82374,\n 24.68832\n ],\n [\n 120.89211,\n 24.767665\n ],\n [\n 120.914899,\n 24.864876\n ],\n [\n 121.024537,\n 25.040639\n ],\n [\n 121.209318,\n 25.127342\n ],\n [\n 121.371926,\n 25.15984\n ],\n [\n 121.444607,\n 25.27081\n ],\n [\n 121.53515,\n 25.307597\n ],\n [\n 121.62323,\n 25.294614\n ],\n [\n 121.745186,\n 25.162007\n ],\n [\n 121.917033,\n 25.137634\n ],\n [\n 121.947214,\n 25.031965\n ],\n [\n 122.012503,\n 25.001602\n ],\n [\n 121.844968,\n 24.836101\n ],\n [\n 121.841272,\n 24.733977\n ],\n [\n 121.892395,\n 24.618171\n ],\n [\n 121.88562,\n 24.529477\n ],\n [\n 121.809243,\n 24.338818\n ],\n [\n 121.643556,\n 24.097633\n ],\n [\n 121.65957,\n 24.006934\n ],\n [\n 121.621382,\n 23.920547\n ],\n [\n 121.522832,\n 23.538772\n ],\n [\n 121.479716,\n 23.32247\n ],\n [\n 121.415042,\n 23.196039\n ],\n [\n 121.430441,\n 23.137181\n ],\n [\n 121.370695,\n 23.084351\n ],\n [\n 121.324499,\n 22.945574\n ],\n [\n 121.170514,\n 22.723345\n ],\n [\n 121.03316,\n 22.650477\n ],\n [\n 120.914899,\n 22.302718\n ],\n [\n 120.907508,\n 22.033426\n ],\n [\n 120.86624,\n 21.98461\n ],\n [\n 120.873016,\n 21.897477\n ],\n [\n 120.701784,\n 21.926898\n ],\n [\n 120.651277,\n 22.033426\n ],\n [\n 120.640806,\n 22.241259\n ],\n [\n 120.569973,\n 22.361938\n ],\n [\n 120.443706,\n 22.441042\n ]\n ]\n ],\n [\n [\n [\n 119.646064,\n 23.55084\n ],\n [\n 119.609108,\n 23.503661\n ],\n [\n 119.566608,\n 23.584842\n ],\n [\n 119.678093,\n 23.600195\n ],\n [\n 119.646064,\n 23.55084\n ]\n ]\n ],\n [\n [\n [\n 123.491374,\n 25.747089\n ],\n [\n 123.496917,\n 25.739005\n ],\n [\n 123.495069,\n 25.737927\n ],\n [\n 123.494453,\n 25.737927\n ],\n [\n 123.492606,\n 25.737388\n ],\n [\n 123.480903,\n 25.737927\n ],\n [\n 123.480287,\n 25.737388\n ],\n [\n 123.46612,\n 25.732537\n ],\n [\n 123.465504,\n 25.732537\n ],\n [\n 123.491374,\n 25.747089\n ]\n ]\n ],\n [\n [\n [\n 123.549272,\n 25.724991\n ],\n [\n 123.549272,\n 25.724991\n ],\n [\n 123.546192,\n 25.729303\n ],\n [\n 123.546192,\n 25.728764\n ],\n [\n 123.549272,\n 25.724991\n ]\n ]\n ],\n [\n [\n [\n 123.690322,\n 25.923187\n ],\n [\n 123.691554,\n 25.921572\n ],\n [\n 123.690938,\n 25.917267\n ],\n [\n 123.690938,\n 25.916729\n ],\n [\n 123.690322,\n 25.923187\n ]\n ]\n ],\n [\n [\n [\n 123.559743,\n 25.718523\n ],\n [\n 123.559743,\n 25.717984\n ],\n [\n 123.548656,\n 25.720679\n ],\n [\n 123.549272,\n 25.720679\n ],\n [\n 123.559743,\n 25.718523\n ]\n ]\n ],\n [\n [\n [\n 121.510513,\n 22.087215\n ],\n [\n 121.573339,\n 22.086106\n ],\n [\n 121.594281,\n 21.995152\n ],\n [\n 121.510513,\n 22.087215\n ]\n ]\n ],\n [\n [\n [\n 123.559743,\n 25.718523\n ],\n [\n 123.560359,\n 25.718523\n ],\n [\n 123.560359,\n 25.717984\n ],\n [\n 123.559743,\n 25.717984\n ],\n [\n 123.559743,\n 25.718523\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 810000,\n \"name\": \"香港特别行政区\",\n \"center\": [\n 114.173355,\n 22.320048\n ],\n \"centroid\": [\n 114.134394,\n 22.377371\n ],\n \"childrenNum\": 18,\n \"level\": \"province\",\n \"subFeatureIndex\": 32,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 114.031778,\n 22.504071\n ],\n [\n 114.044096,\n 22.502413\n ],\n [\n 114.045944,\n 22.502413\n ],\n [\n 114.185762,\n 22.551601\n ],\n [\n 114.185762,\n 22.551601\n ],\n [\n 114.232574,\n 22.539997\n ],\n [\n 114.232574,\n 22.528944\n ],\n [\n 114.263371,\n 22.541654\n ],\n [\n 114.263987,\n 22.541654\n ],\n [\n 114.271994,\n 22.535023\n ],\n [\n 114.28924,\n 22.522864\n ],\n [\n 114.355762,\n 22.434958\n ],\n [\n 114.406269,\n 22.433299\n ],\n [\n 114.406269,\n 22.432746\n ],\n [\n 114.356994,\n 22.340356\n ],\n [\n 114.323733,\n 22.384622\n ],\n [\n 114.315726,\n 22.299951\n ],\n [\n 114.315726,\n 22.298843\n ],\n [\n 114.248588,\n 22.274484\n ],\n [\n 114.265835,\n 22.200825\n ],\n [\n 114.195002,\n 22.232951\n ],\n [\n 114.120473,\n 22.272269\n ],\n [\n 114.121089,\n 22.320985\n ],\n [\n 114.034857,\n 22.301058\n ],\n [\n 114.026234,\n 22.229628\n ],\n [\n 113.848844,\n 22.191961\n ],\n [\n 113.898119,\n 22.308808\n ],\n [\n 114.015763,\n 22.332054\n ],\n [\n 113.920293,\n 22.368024\n ],\n [\n 113.918445,\n 22.418366\n ],\n [\n 114.031778,\n 22.504071\n ]\n ]\n ],\n [\n [\n [\n 114.350834,\n 22.260087\n ],\n [\n 114.355146,\n 22.268393\n ],\n [\n 114.355762,\n 22.268393\n ],\n [\n 114.350834,\n 22.260087\n ]\n ]\n ],\n [\n [\n [\n 114.320037,\n 22.381303\n ],\n [\n 114.320037,\n 22.381856\n ],\n [\n 114.319421,\n 22.382409\n ],\n [\n 114.323733,\n 22.384622\n ],\n [\n 114.320037,\n 22.381303\n ]\n ]\n ],\n [\n [\n [\n 114.372392,\n 22.322645\n ],\n [\n 114.372392,\n 22.323752\n ],\n [\n 114.37424,\n 22.323199\n ],\n [\n 114.372392,\n 22.322645\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 820000,\n \"name\": \"澳门特别行政区\",\n \"center\": [\n 113.54909,\n 22.198951\n ],\n \"centroid\": [\n 113.56642,\n 22.159262\n ],\n \"childrenNum\": 8,\n \"level\": \"province\",\n \"subFeatureIndex\": 33,\n \"acroutes\": [\n 100000\n ],\n \"parent\": {\n \"adcode\": 100000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 113.558736,\n 22.213012\n ],\n [\n 113.6037,\n 22.132116\n ],\n [\n 113.553809,\n 22.107727\n ],\n [\n 113.558736,\n 22.213012\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 100000,\n \"name\": \"\",\n \"adchar\": \"JD\"\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 122.51865306,\n 23.46078502\n ],\n [\n 122.51742454,\n 23.45790762\n ],\n [\n 122.51536697,\n 23.45555069\n ],\n [\n 122.51268178,\n 23.45394494\n ],\n [\n 122.50963181,\n 23.45324755\n ],\n [\n 122.5065156,\n 23.45352678\n ],\n [\n 122.5036382,\n 23.45475531\n ],\n [\n 122.50128127,\n 23.45681287\n ],\n [\n 122.49967552,\n 23.45949807\n ],\n [\n 122.49897813,\n 23.46254804\n ],\n [\n 122.49925737,\n 23.46566424\n ],\n [\n 122.77921829,\n 24.57855302\n ],\n [\n 122.78044682,\n 24.58143041\n ],\n [\n 122.78250438,\n 24.58378734\n ],\n [\n 122.78518957,\n 24.5853931\n ],\n [\n 122.78823955,\n 24.58609049\n ],\n [\n 122.79135575,\n 24.58581125\n ],\n [\n 122.79423315,\n 24.58458272\n ],\n [\n 122.79659008,\n 24.58252516\n ],\n [\n 122.79819583,\n 24.57983997\n ],\n [\n 122.79889322,\n 24.57678999\n ],\n [\n 122.79861399,\n 24.57367379\n ],\n [\n 122.51865306,\n 23.46078502\n ]\n ]\n ],\n [\n [\n [\n 121.17202617,\n 20.8054593\n ],\n [\n 121.16966862,\n 20.80340244\n ],\n [\n 121.16679085,\n 20.80217478\n ],\n [\n 121.16367457,\n 20.80189649\n ],\n [\n 121.1606248,\n 20.8025948\n ],\n [\n 121.1579401,\n 20.80420136\n ],\n [\n 121.15588324,\n 20.80655891\n ],\n [\n 121.15465558,\n 20.80943668\n ],\n [\n 121.15437729,\n 20.81255297\n ],\n [\n 121.1550756,\n 20.81560273\n ],\n [\n 121.15668216,\n 20.81828744\n ],\n [\n 121.89404403,\n 21.70026162\n ],\n [\n 121.89640158,\n 21.70231847\n ],\n [\n 121.89927934,\n 21.70354613\n ],\n [\n 121.90239563,\n 21.70382443\n ],\n [\n 121.9054454,\n 21.70312611\n ],\n [\n 121.9081301,\n 21.70151955\n ],\n [\n 121.91018696,\n 21.699162\n ],\n [\n 121.91141462,\n 21.69628423\n ],\n [\n 121.91169291,\n 21.69316794\n ],\n [\n 121.9109946,\n 21.69011818\n ],\n [\n 121.90938804,\n 21.68743347\n ],\n [\n 121.17202617,\n 20.8054593\n ]\n ]\n ],\n [\n [\n [\n 119.47366172,\n 18.00707291\n ],\n [\n 119.47175735,\n 18.00459056\n ],\n [\n 119.46917909,\n 18.0028182\n ],\n [\n 119.46617933,\n 18.0019293\n ],\n [\n 119.4630517,\n 18.00201089\n ],\n [\n 119.46010237,\n 18.00305497\n ],\n [\n 119.45762002,\n 18.00495935\n ],\n [\n 119.45584765,\n 18.00753761\n ],\n [\n 119.45495876,\n 18.01053737\n ],\n [\n 119.45504035,\n 18.01366499\n ],\n [\n 119.45608443,\n 18.01661433\n ],\n [\n 120.00812005,\n 19.0335793\n ],\n [\n 120.01002443,\n 19.03606165\n ],\n [\n 120.01260269,\n 19.03783401\n ],\n [\n 120.01560245,\n 19.03872291\n ],\n [\n 120.01873007,\n 19.03864132\n ],\n [\n 120.02167941,\n 19.03759723\n ],\n [\n 120.02416175,\n 19.03569286\n ],\n [\n 120.02593412,\n 19.0331146\n ],\n [\n 120.02682302,\n 19.03011484\n ],\n [\n 120.02674143,\n 19.02698721\n ],\n [\n 120.02569734,\n 19.02403788\n ],\n [\n 119.47366172,\n 18.00707291\n ]\n ]\n ],\n [\n [\n [\n 119.0726757,\n 15.04098494\n ],\n [\n 119.0726746,\n 15.04083704\n ],\n [\n 119.07218171,\n 15.00751424\n ],\n [\n 119.07164663,\n 15.00443165\n ],\n [\n 119.07018516,\n 15.00166528\n ],\n [\n 119.06794036,\n 14.99948592\n ],\n [\n 119.06513198,\n 14.99810691\n ],\n [\n 119.06203491,\n 14.99766324\n ],\n [\n 119.05895232,\n 14.99819832\n ],\n [\n 119.05618595,\n 14.99965979\n ],\n [\n 119.05400659,\n 15.00190458\n ],\n [\n 119.05262758,\n 15.00471297\n ],\n [\n 119.0521839,\n 15.00781004\n ],\n [\n 119.0526757,\n 15.04105889\n ],\n [\n 119.0526757,\n 16.04388528\n ],\n [\n 119.05316513,\n 16.04697545\n ],\n [\n 119.05458553,\n 16.04976313\n ],\n [\n 119.05679784,\n 16.05197545\n ],\n [\n 119.05958553,\n 16.05339584\n ],\n [\n 119.0626757,\n 16.05388528\n ],\n [\n 119.06576587,\n 16.05339584\n ],\n [\n 119.06855355,\n 16.05197545\n ],\n [\n 119.07076587,\n 16.04976313\n ],\n [\n 119.07218626,\n 16.04697545\n ],\n [\n 119.0726757,\n 16.04388528\n ],\n [\n 119.0726757,\n 15.04098494\n ]\n ]\n ],\n [\n [\n [\n 118.68646749,\n 11.18959191\n ],\n [\n 118.85557939,\n 11.6136711\n ],\n [\n 118.9698053,\n 11.99151854\n ],\n [\n 118.97116801,\n 11.99433487\n ],\n [\n 118.97333431,\n 11.99659227\n ],\n [\n 118.97609216,\n 11.99806975\n ],\n [\n 118.9791716,\n 11.99862269\n ],\n [\n 118.98227119,\n 11.99819697\n ],\n [\n 118.98508753,\n 11.99683427\n ],\n [\n 118.98734492,\n 11.99466796\n ],\n [\n 118.9888224,\n 11.99191011\n ],\n [\n 118.98937534,\n 11.98883067\n ],\n [\n 118.98894963,\n 11.98573108\n ],\n [\n 118.87459939,\n 11.60747236\n ],\n [\n 118.87431591,\n 11.606662\n ],\n [\n 118.70476212,\n 11.18147468\n ],\n [\n 118.70409227,\n 11.18010771\n ],\n [\n 118.54242469,\n 10.9053354\n ],\n [\n 118.54043581,\n 10.90292022\n ],\n [\n 118.53779795,\n 10.90123786\n ],\n [\n 118.53476931,\n 10.90045298\n ],\n [\n 118.53164636,\n 10.90064241\n ],\n [\n 118.5287348,\n 10.90178762\n ],\n [\n 118.52631962,\n 10.9037765\n ],\n [\n 118.52463726,\n 10.90641436\n ],\n [\n 118.52385237,\n 10.909443\n ],\n [\n 118.52404181,\n 10.91256595\n ],\n [\n 118.52518702,\n 10.91547751\n ],\n [\n 118.68646749,\n 11.18959191\n ]\n ]\n ],\n [\n [\n [\n 115.54466883,\n 7.14672265\n ],\n [\n 115.54229721,\n 7.14468204\n ],\n [\n 115.53941108,\n 7.14347417\n ],\n [\n 115.53629295,\n 7.14321728\n ],\n [\n 115.53324806,\n 7.14393652\n ],\n [\n 115.53057445,\n 7.14556148\n ],\n [\n 115.52853383,\n 7.1479331\n ],\n [\n 115.52732596,\n 7.15081924\n ],\n [\n 115.52706908,\n 7.15393736\n ],\n [\n 115.52778832,\n 7.15698226\n ],\n [\n 115.52941328,\n 7.15965587\n ],\n [\n 116.23523025,\n 7.99221221\n ],\n [\n 116.23760187,\n 7.99425282\n ],\n [\n 116.240488,\n 7.99546069\n ],\n [\n 116.24360613,\n 7.99571758\n ],\n [\n 116.24665102,\n 7.99499834\n ],\n [\n 116.24932463,\n 7.99337338\n ],\n [\n 116.25136525,\n 7.99100176\n ],\n [\n 116.25257312,\n 7.98811563\n ],\n [\n 116.25283001,\n 7.9849975\n ],\n [\n 116.25211077,\n 7.98195261\n ],\n [\n 116.2504858,\n 7.979279\n ],\n [\n 115.54466883,\n 7.14672265\n ]\n ]\n ],\n [\n [\n [\n 112.30705249,\n 3.53487257\n ],\n [\n 112.51501594,\n 3.59753306\n ],\n [\n 112.84361424,\n 3.7506962\n ],\n [\n 112.84662187,\n 3.75155809\n ],\n [\n 112.84974864,\n 3.7514484\n ],\n [\n 112.85268847,\n 3.75037785\n ],\n [\n 112.8551536,\n 3.74845124\n ],\n [\n 112.85690272,\n 3.74585715\n ],\n [\n 112.85776462,\n 3.74284952\n ],\n [\n 112.85765492,\n 3.73972276\n ],\n [\n 112.85658437,\n 3.73678292\n ],\n [\n 112.85465776,\n 3.7343178\n ],\n [\n 112.85206367,\n 3.73256867\n ],\n [\n 112.52281386,\n 3.57910186\n ],\n [\n 112.52147408,\n 3.5785908\n ],\n [\n 112.31248917,\n 3.51562254\n ],\n [\n 112.31181658,\n 3.51544515\n ],\n [\n 111.79132585,\n 3.39736822\n ],\n [\n 111.78820398,\n 3.39716187\n ],\n [\n 111.78517113,\n 3.39793033\n ],\n [\n 111.78252419,\n 3.39959839\n ],\n [\n 111.78052226,\n 3.40200275\n ],\n [\n 111.77936129,\n 3.40490807\n ],\n [\n 111.77915495,\n 3.40802995\n ],\n [\n 111.77992341,\n 3.41106279\n ],\n [\n 111.78159146,\n 3.41370973\n ],\n [\n 111.78399583,\n 3.41571167\n ],\n [\n 111.78690114,\n 3.41687263\n ],\n [\n 112.30705249,\n 3.53487257\n ]\n ]\n ],\n [\n [\n [\n 108.26055972,\n 6.08912451\n ],\n [\n 108.26004031,\n 6.09098419\n ],\n [\n 108.23638164,\n 6.22427602\n ],\n [\n 108.23630689,\n 6.22476797\n ],\n [\n 108.19687578,\n 6.53630242\n ],\n [\n 108.19679674,\n 6.53760583\n ],\n [\n 108.1987683,\n 6.95072469\n ],\n [\n 108.19897125,\n 6.95268198\n ],\n [\n 108.22460147,\n 7.07791743\n ],\n [\n 108.22570055,\n 7.08084671\n ],\n [\n 108.22765103,\n 7.083293\n ],\n [\n 108.230262,\n 7.08501682\n ],\n [\n 108.23327786,\n 7.08584944\n ],\n [\n 108.23640341,\n 7.08570936\n ],\n [\n 108.2393327,\n 7.08461028\n ],\n [\n 108.24177899,\n 7.0826598\n ],\n [\n 108.24350281,\n 7.08004883\n ],\n [\n 108.24433543,\n 7.07703297\n ],\n [\n 108.24419535,\n 7.07390742\n ],\n [\n 108.21876335,\n 6.94964057\n ],\n [\n 108.21679964,\n 6.53816468\n ],\n [\n 108.25611734,\n 6.22752625\n ],\n [\n 108.279563,\n 6.09543449\n ],\n [\n 108.30878645,\n 6.01987736\n ],\n [\n 108.30944469,\n 6.0168187\n ],\n [\n 108.30912553,\n 6.01370633\n ],\n [\n 108.30786022,\n 6.01084492\n ],\n [\n 108.30577262,\n 6.00851455\n ],\n [\n 108.30306706,\n 6.00694335\n ],\n [\n 108.3000084,\n 6.00628511\n ],\n [\n 108.29689603,\n 6.00660426\n ],\n [\n 108.29403462,\n 6.00786957\n ],\n [\n 108.29170425,\n 6.00995718\n ],\n [\n 108.29013305,\n 6.01266273\n ],\n [\n 108.26055972,\n 6.08912451\n ]\n ]\n ],\n [\n [\n [\n 110.12822847,\n 11.36894451\n ],\n [\n 110.18898148,\n 11.48996382\n ],\n [\n 110.23982347,\n 11.61066468\n ],\n [\n 110.28485499,\n 11.78705054\n ],\n [\n 110.3083549,\n 11.94803461\n ],\n [\n 110.3142445,\n 12.14195265\n ],\n [\n 110.312278,\n 12.23998238\n ],\n [\n 110.31270536,\n 12.24308175\n ],\n [\n 110.31406956,\n 12.24589736\n ],\n [\n 110.31623706,\n 12.2481536\n ],\n [\n 110.3189957,\n 12.24962962\n ],\n [\n 110.32207543,\n 12.25018094\n ],\n [\n 110.32517479,\n 12.24975358\n ],\n [\n 110.3279904,\n 12.24838938\n ],\n [\n 110.33024665,\n 12.24622187\n ],\n [\n 110.33172267,\n 12.24346324\n ],\n [\n 110.33227398,\n 12.24038351\n ],\n [\n 110.33424553,\n 12.14210167\n ],\n [\n 110.33424294,\n 12.14159753\n ],\n [\n 110.32832827,\n 11.94685414\n ],\n [\n 110.32822801,\n 11.94571326\n ],\n [\n 110.30456934,\n 11.78364161\n ],\n [\n 110.30436343,\n 11.7826124\n ],\n [\n 110.25901765,\n 11.60499559\n ],\n [\n 110.25854422,\n 11.60358735\n ],\n [\n 110.20728377,\n 11.48189306\n ],\n [\n 110.20700505,\n 11.48128846\n ],\n [\n 110.14588682,\n 11.35954163\n ],\n [\n 110.14541497,\n 11.35870461\n ],\n [\n 110.07246741,\n 11.24270688\n ],\n [\n 110.07040803,\n 11.24035153\n ],\n [\n 110.0677216,\n 11.23874785\n ],\n [\n 110.06467109,\n 11.23805281\n ],\n [\n 110.0615551,\n 11.23833444\n ],\n [\n 110.05867865,\n 11.23956519\n ],\n [\n 110.05632331,\n 11.24162456\n ],\n [\n 110.05471962,\n 11.24431099\n ],\n [\n 110.05402458,\n 11.2473615\n ],\n [\n 110.05430621,\n 11.25047749\n ],\n [\n 110.05553696,\n 11.25335394\n ],\n [\n 110.12822847,\n 11.36894451\n ]\n ]\n ],\n [\n [\n [\n 109.82951587,\n 15.22896754\n ],\n [\n 109.77065019,\n 15.44468789\n ],\n [\n 109.67264555,\n 15.66561455\n ],\n [\n 109.57455994,\n 15.82609887\n ],\n [\n 109.51574449,\n 15.91095759\n ],\n [\n 109.29314007,\n 16.19491896\n ],\n [\n 109.29161878,\n 16.19765288\n ],\n [\n 109.29101677,\n 16.20072311\n ],\n [\n 109.29139298,\n 16.2038291\n ],\n [\n 109.29271057,\n 16.20666681\n ],\n [\n 109.29484059,\n 16.20895848\n ],\n [\n 109.29757451,\n 16.21047978\n ],\n [\n 109.30064474,\n 16.21108179\n ],\n [\n 109.30375073,\n 16.21070558\n ],\n [\n 109.30658844,\n 16.20938798\n ],\n [\n 109.30888011,\n 16.20725797\n ],\n [\n 109.53166592,\n 15.92306523\n ],\n [\n 109.53201478,\n 15.92259221\n ],\n [\n 109.59116145,\n 15.8372556\n ],\n [\n 109.59147511,\n 15.83677407\n ],\n [\n 109.6900529,\n 15.67548445\n ],\n [\n 109.69066131,\n 15.67432448\n ],\n [\n 109.7892391,\n 15.45210582\n ],\n [\n 109.78974541,\n 15.45068337\n ],\n [\n 109.84889209,\n 15.23393326\n ],\n [\n 109.84903675,\n 15.23333003\n ],\n [\n 109.8648092,\n 15.15722425\n ],\n [\n 109.86495704,\n 15.15409906\n ],\n [\n 109.86413191,\n 15.15108113\n ],\n [\n 109.86241457,\n 15.1484659\n ],\n [\n 109.85997314,\n 15.14650935\n ],\n [\n 109.85704658,\n 15.145403\n ],\n [\n 109.85392139,\n 15.14525516\n ],\n [\n 109.85090347,\n 15.14608029\n ],\n [\n 109.84828823,\n 15.14779763\n ],\n [\n 109.84633168,\n 15.15023907\n ],\n [\n 109.84522534,\n 15.15316562\n ],\n [\n 109.82951587,\n 15.22896754\n ]\n ]\n ]\n ]\n }\n }\n ]\n}', 'admin', '2020-05-19 16:42:27', 'admin', '2021-02-01 17:41:14', '0', NULL); +INSERT INTO `jimu_report_map` VALUES ('1235113459258056705', '内蒙古地图', '内蒙古地图', '{\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 150100,\n \"name\": \"呼和浩特市\",\n \"center\": [\n 111.670801,\n 40.818311\n ],\n \"centroid\": [\n 111.502117,\n 40.596287\n ],\n \"childrenNum\": 9,\n \"level\": \"city\",\n \"subFeatureIndex\": 0,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 111.438183,\n 39.640433\n ],\n [\n 111.440784,\n 39.672526\n ],\n [\n 111.365058,\n 39.721166\n ],\n [\n 111.371417,\n 39.791775\n ],\n [\n 111.417083,\n 39.829778\n ],\n [\n 111.41506,\n 39.864772\n ],\n [\n 111.445409,\n 39.899045\n ],\n [\n 111.426332,\n 39.949983\n ],\n [\n 111.420263,\n 40.02211\n ],\n [\n 111.360433,\n 40.10187\n ],\n [\n 111.314188,\n 40.150557\n ],\n [\n 111.248289,\n 40.164561\n ],\n [\n 111.190483,\n 40.216525\n ],\n [\n 111.115624,\n 40.255866\n ],\n [\n 111.05406,\n 40.264605\n ],\n [\n 111.032961,\n 40.296931\n ],\n [\n 111.033828,\n 40.315271\n ],\n [\n 111.114757,\n 40.331161\n ],\n [\n 111.106664,\n 40.38073\n ],\n [\n 111.083253,\n 40.425729\n ],\n [\n 111.028337,\n 40.429914\n ],\n [\n 111.019955,\n 40.459198\n ],\n [\n 110.966195,\n 40.471221\n ],\n [\n 110.959547,\n 40.496133\n ],\n [\n 110.9081,\n 40.481675\n ],\n [\n 110.889024,\n 40.511633\n ],\n [\n 110.843068,\n 40.534962\n ],\n [\n 110.880064,\n 40.586468\n ],\n [\n 110.831217,\n 40.586816\n ],\n [\n 110.802025,\n 40.612207\n ],\n [\n 110.788441,\n 40.687625\n ],\n [\n 110.797112,\n 40.759662\n ],\n [\n 110.783527,\n 40.79383\n ],\n [\n 110.733814,\n 40.785853\n ],\n [\n 110.713004,\n 40.810301\n ],\n [\n 110.735548,\n 40.827461\n ],\n [\n 110.744797,\n 40.919079\n ],\n [\n 110.712137,\n 40.939326\n ],\n [\n 110.644792,\n 40.920118\n ],\n [\n 110.62774,\n 40.988272\n ],\n [\n 110.660978,\n 41.008497\n ],\n [\n 110.675719,\n 41.049965\n ],\n [\n 110.648261,\n 41.109874\n ],\n [\n 110.656065,\n 41.166109\n ],\n [\n 110.62774,\n 41.166109\n ],\n [\n 110.612999,\n 41.208856\n ],\n [\n 110.556927,\n 41.232458\n ],\n [\n 110.550857,\n 41.288415\n ],\n [\n 110.576003,\n 41.332974\n ],\n [\n 110.634098,\n 41.311816\n ],\n [\n 110.647105,\n 41.33263\n ],\n [\n 110.742196,\n 41.385408\n ],\n [\n 110.762139,\n 41.373893\n ],\n [\n 110.828905,\n 41.383002\n ],\n [\n 110.820523,\n 41.358938\n ],\n [\n 110.875728,\n 41.356875\n ],\n [\n 110.89596,\n 41.334006\n ],\n [\n 110.947697,\n 41.31801\n ],\n [\n 110.967351,\n 41.347935\n ],\n [\n 111.010706,\n 41.334866\n ],\n [\n 111.032094,\n 41.300461\n ],\n [\n 111.093947,\n 41.286694\n ],\n [\n 111.102618,\n 41.308203\n ],\n [\n 111.162447,\n 41.28394\n ],\n [\n 111.235283,\n 41.240553\n ],\n [\n 111.279794,\n 41.290308\n ],\n [\n 111.355231,\n 41.313193\n ],\n [\n 111.425465,\n 41.31887\n ],\n [\n 111.525181,\n 41.331426\n ],\n [\n 111.582409,\n 41.306655\n ],\n [\n 111.702646,\n 41.29461\n ],\n [\n 111.730104,\n 41.310956\n ],\n [\n 111.804096,\n 41.259668\n ],\n [\n 111.840514,\n 41.252091\n ],\n [\n 111.877221,\n 41.129027\n ],\n [\n 111.921732,\n 41.095895\n ],\n [\n 112.027517,\n 41.048583\n ],\n [\n 112.010175,\n 41.014719\n ],\n [\n 112.037055,\n 40.96389\n ],\n [\n 112.09515,\n 40.943305\n ],\n [\n 112.125788,\n 40.955933\n ],\n [\n 112.150933,\n 40.879088\n ],\n [\n 112.176079,\n 40.85276\n ],\n [\n 112.17868,\n 40.811514\n ],\n [\n 112.15209,\n 40.764519\n ],\n [\n 112.098619,\n 40.74526\n ],\n [\n 112.130412,\n 40.697697\n ],\n [\n 112.115672,\n 40.658788\n ],\n [\n 112.045148,\n 40.655139\n ],\n [\n 112.087925,\n 40.618813\n ],\n [\n 112.098619,\n 40.583859\n ],\n [\n 112.059022,\n 40.584381\n ],\n [\n 112.052374,\n 40.55985\n ],\n [\n 112.113648,\n 40.508672\n ],\n [\n 112.13706,\n 40.508324\n ],\n [\n 112.183305,\n 40.466168\n ],\n [\n 112.22348,\n 40.452575\n ],\n [\n 112.2177,\n 40.42817\n ],\n [\n 112.264523,\n 40.38736\n ],\n [\n 112.236198,\n 40.353856\n ],\n [\n 112.272616,\n 40.357172\n ],\n [\n 112.289379,\n 40.281032\n ],\n [\n 112.31019,\n 40.25639\n ],\n [\n 112.285622,\n 40.198158\n ],\n [\n 112.233018,\n 40.170336\n ],\n [\n 112.223191,\n 40.128845\n ],\n [\n 112.183594,\n 40.083998\n ],\n [\n 112.174923,\n 40.05122\n ],\n [\n 112.076363,\n 39.919425\n ],\n [\n 112.042547,\n 39.886216\n ],\n [\n 112.035032,\n 39.854398\n ],\n [\n 111.970578,\n 39.79635\n ],\n [\n 111.956416,\n 39.687686\n ],\n [\n 111.925489,\n 39.667414\n ],\n [\n 111.92838,\n 39.610266\n ],\n [\n 111.878955,\n 39.605855\n ],\n [\n 111.842537,\n 39.620147\n ],\n [\n 111.787621,\n 39.589618\n ],\n [\n 111.722589,\n 39.606031\n ],\n [\n 111.646574,\n 39.644313\n ],\n [\n 111.616515,\n 39.633378\n ],\n [\n 111.502059,\n 39.663182\n ],\n [\n 111.438183,\n 39.640433\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 150200,\n \"name\": \"包头市\",\n \"center\": [\n 109.840405,\n 40.658168\n ],\n \"centroid\": [\n 110.265618,\n 41.560878\n ],\n \"childrenNum\": 9,\n \"level\": \"city\",\n \"subFeatureIndex\": 1,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 109.437509,\n 40.513722\n ],\n [\n 109.445602,\n 40.540184\n ],\n [\n 109.407739,\n 40.628027\n ],\n [\n 109.41641,\n 40.708463\n ],\n [\n 109.47913,\n 40.749945\n ],\n [\n 109.528554,\n 40.732592\n ],\n [\n 109.545607,\n 40.742831\n ],\n [\n 109.635496,\n 40.738666\n ],\n [\n 109.795908,\n 40.76157\n ],\n [\n 109.79822,\n 40.795911\n ],\n [\n 109.841575,\n 40.835606\n ],\n [\n 109.869322,\n 40.841324\n ],\n [\n 109.867299,\n 40.878049\n ],\n [\n 109.886953,\n 40.924271\n ],\n [\n 109.835216,\n 40.945727\n ],\n [\n 109.8251,\n 40.994496\n ],\n [\n 109.79822,\n 41.008151\n ],\n [\n 109.759779,\n 40.999509\n ],\n [\n 109.735211,\n 41.036318\n ],\n [\n 109.698794,\n 41.036663\n ],\n [\n 109.688099,\n 41.07725\n ],\n [\n 109.657462,\n 41.115914\n ],\n [\n 109.724806,\n 41.115224\n ],\n [\n 109.709488,\n 41.152486\n ],\n [\n 109.667578,\n 41.199723\n ],\n [\n 109.620466,\n 41.275506\n ],\n [\n 109.641565,\n 41.31801\n ],\n [\n 109.696192,\n 41.322998\n ],\n [\n 109.698794,\n 41.379393\n ],\n [\n 109.63116,\n 41.426637\n ],\n [\n 109.66411,\n 41.49907\n ],\n [\n 109.478263,\n 41.499584\n ],\n [\n 109.428838,\n 41.552055\n ],\n [\n 109.423636,\n 41.634448\n ],\n [\n 109.395022,\n 41.697926\n ],\n [\n 109.341551,\n 41.742546\n ],\n [\n 109.367853,\n 41.765784\n ],\n [\n 109.317272,\n 41.80865\n ],\n [\n 109.292127,\n 41.854557\n ],\n [\n 109.259177,\n 41.868374\n ],\n [\n 109.263513,\n 41.889521\n ],\n [\n 109.337216,\n 41.898727\n ],\n [\n 109.375079,\n 41.932985\n ],\n [\n 109.48809,\n 42.077312\n ],\n [\n 109.515548,\n 42.139333\n ],\n [\n 109.539248,\n 42.147315\n ],\n [\n 109.508611,\n 42.263702\n ],\n [\n 109.472482,\n 42.314363\n ],\n [\n 109.477396,\n 42.345181\n ],\n [\n 109.445313,\n 42.379198\n ],\n [\n 109.433463,\n 42.427737\n ],\n [\n 109.379414,\n 42.447345\n ],\n [\n 109.486934,\n 42.458668\n ],\n [\n 109.544162,\n 42.472354\n ],\n [\n 109.684053,\n 42.558961\n ],\n [\n 109.906029,\n 42.635844\n ],\n [\n 110.108351,\n 42.642752\n ],\n [\n 110.139566,\n 42.674755\n ],\n [\n 110.337552,\n 42.738039\n ],\n [\n 110.438135,\n 42.690414\n ],\n [\n 110.521954,\n 42.62607\n ],\n [\n 110.577159,\n 42.573637\n ],\n [\n 110.639012,\n 42.491779\n ],\n [\n 110.704911,\n 42.470833\n ],\n [\n 110.730057,\n 42.442613\n ],\n [\n 110.72312,\n 42.393916\n ],\n [\n 110.750867,\n 42.294883\n ],\n [\n 110.783238,\n 42.239967\n ],\n [\n 110.784683,\n 42.176347\n ],\n [\n 110.842201,\n 42.119969\n ],\n [\n 110.985849,\n 41.9352\n ],\n [\n 111.039609,\n 41.822818\n ],\n [\n 111.078917,\n 41.78611\n ],\n [\n 111.120827,\n 41.771421\n ],\n [\n 111.150886,\n 41.735026\n ],\n [\n 111.241353,\n 41.671242\n ],\n [\n 111.371128,\n 41.635646\n ],\n [\n 111.441362,\n 41.524282\n ],\n [\n 111.446565,\n 41.472646\n ],\n [\n 111.434136,\n 41.425264\n ],\n [\n 111.387313,\n 41.378705\n ],\n [\n 111.424887,\n 41.346903\n ],\n [\n 111.425465,\n 41.31887\n ],\n [\n 111.355231,\n 41.313193\n ],\n [\n 111.279794,\n 41.290308\n ],\n [\n 111.235283,\n 41.240553\n ],\n [\n 111.162447,\n 41.28394\n ],\n [\n 111.102618,\n 41.308203\n ],\n [\n 111.093947,\n 41.286694\n ],\n [\n 111.032094,\n 41.300461\n ],\n [\n 111.010706,\n 41.334866\n ],\n [\n 110.967351,\n 41.347935\n ],\n [\n 110.947697,\n 41.31801\n ],\n [\n 110.89596,\n 41.334006\n ],\n [\n 110.875728,\n 41.356875\n ],\n [\n 110.820523,\n 41.358938\n ],\n [\n 110.828905,\n 41.383002\n ],\n [\n 110.762139,\n 41.373893\n ],\n [\n 110.742196,\n 41.385408\n ],\n [\n 110.647105,\n 41.33263\n ],\n [\n 110.634098,\n 41.311816\n ],\n [\n 110.576003,\n 41.332974\n ],\n [\n 110.550857,\n 41.288415\n ],\n [\n 110.556927,\n 41.232458\n ],\n [\n 110.612999,\n 41.208856\n ],\n [\n 110.62774,\n 41.166109\n ],\n [\n 110.656065,\n 41.166109\n ],\n [\n 110.648261,\n 41.109874\n ],\n [\n 110.675719,\n 41.049965\n ],\n [\n 110.660978,\n 41.008497\n ],\n [\n 110.62774,\n 40.988272\n ],\n [\n 110.644792,\n 40.920118\n ],\n [\n 110.712137,\n 40.939326\n ],\n [\n 110.744797,\n 40.919079\n ],\n [\n 110.735548,\n 40.827461\n ],\n [\n 110.713004,\n 40.810301\n ],\n [\n 110.733814,\n 40.785853\n ],\n [\n 110.783527,\n 40.79383\n ],\n [\n 110.797112,\n 40.759662\n ],\n [\n 110.788441,\n 40.687625\n ],\n [\n 110.802025,\n 40.612207\n ],\n [\n 110.831217,\n 40.586816\n ],\n [\n 110.880064,\n 40.586468\n ],\n [\n 110.843068,\n 40.534962\n ],\n [\n 110.889024,\n 40.511633\n ],\n [\n 110.9081,\n 40.481675\n ],\n [\n 110.959547,\n 40.496133\n ],\n [\n 110.966195,\n 40.471221\n ],\n [\n 111.019955,\n 40.459198\n ],\n [\n 111.028337,\n 40.429914\n ],\n [\n 111.083253,\n 40.425729\n ],\n [\n 111.106664,\n 40.38073\n ],\n [\n 111.114757,\n 40.331161\n ],\n [\n 111.033828,\n 40.315271\n ],\n [\n 111.032961,\n 40.296931\n ],\n [\n 110.999144,\n 40.26111\n ],\n [\n 110.945963,\n 40.270373\n ],\n [\n 110.914458,\n 40.244678\n ],\n [\n 110.837287,\n 40.289943\n ],\n [\n 110.816477,\n 40.266178\n ],\n [\n 110.782371,\n 40.274042\n ],\n [\n 110.768787,\n 40.299726\n ],\n [\n 110.702021,\n 40.325399\n ],\n [\n 110.636699,\n 40.308634\n ],\n [\n 110.570222,\n 40.340589\n ],\n [\n 110.510971,\n 40.389279\n ],\n [\n 110.488137,\n 40.369563\n ],\n [\n 110.472241,\n 40.404978\n ],\n [\n 110.45172,\n 40.391896\n ],\n [\n 110.369057,\n 40.444383\n ],\n [\n 110.357495,\n 40.462509\n ],\n [\n 110.319054,\n 40.445777\n ],\n [\n 110.296799,\n 40.492823\n ],\n [\n 110.249398,\n 40.475054\n ],\n [\n 110.247953,\n 40.521209\n ],\n [\n 110.18321,\n 40.554282\n ],\n [\n 110.164712,\n 40.513722\n ],\n [\n 110.035804,\n 40.534266\n ],\n [\n 109.996207,\n 40.510588\n ],\n [\n 109.910075,\n 40.532003\n ],\n [\n 109.866143,\n 40.509891\n ],\n [\n 109.802267,\n 40.509717\n ],\n [\n 109.708621,\n 40.477494\n ],\n [\n 109.667,\n 40.500139\n ],\n [\n 109.635496,\n 40.546798\n ],\n [\n 109.580291,\n 40.553586\n ],\n [\n 109.519883,\n 40.514244\n ],\n [\n 109.437509,\n 40.513722\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 150300,\n \"name\": \"乌海市\",\n \"center\": [\n 106.825563,\n 39.673734\n ],\n \"centroid\": [\n 106.872209,\n 39.425058\n ],\n \"childrenNum\": 3,\n \"level\": \"city\",\n \"subFeatureIndex\": 2,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 106.967739,\n 39.052388\n ],\n [\n 106.933344,\n 39.076396\n ],\n [\n 106.881318,\n 39.090263\n ],\n [\n 106.853571,\n 39.116569\n ],\n [\n 106.825535,\n 39.193828\n ],\n [\n 106.796054,\n 39.214239\n ],\n [\n 106.806748,\n 39.318684\n ],\n [\n 106.781603,\n 39.371822\n ],\n [\n 106.750965,\n 39.381559\n ],\n [\n 106.73449,\n 39.437303\n ],\n [\n 106.635064,\n 39.476209\n ],\n [\n 106.611074,\n 39.543005\n ],\n [\n 106.637376,\n 39.573731\n ],\n [\n 106.755012,\n 39.626851\n ],\n [\n 106.795476,\n 39.689449\n ],\n [\n 106.757324,\n 39.710595\n ],\n [\n 106.766573,\n 39.763787\n ],\n [\n 106.754145,\n 39.850706\n ],\n [\n 106.768885,\n 39.86653\n ],\n [\n 106.778712,\n 39.811131\n ],\n [\n 106.86282,\n 39.842793\n ],\n [\n 106.871491,\n 39.865475\n ],\n [\n 106.933922,\n 39.914506\n ],\n [\n 106.963403,\n 39.902383\n ],\n [\n 106.965137,\n 39.859673\n ],\n [\n 106.9345,\n 39.858794\n ],\n [\n 106.875827,\n 39.795822\n ],\n [\n 106.899238,\n 39.755687\n ],\n [\n 106.91369,\n 39.682046\n ],\n [\n 106.875827,\n 39.672526\n ],\n [\n 106.911956,\n 39.627027\n ],\n [\n 106.931899,\n 39.576732\n ],\n [\n 106.935945,\n 39.517213\n ],\n [\n 106.965426,\n 39.420142\n ],\n [\n 106.952131,\n 39.409171\n ],\n [\n 106.943749,\n 39.299367\n ],\n [\n 107.034505,\n 39.251318\n ],\n [\n 107.060229,\n 39.222401\n ],\n [\n 107.136533,\n 39.27969\n ],\n [\n 107.139134,\n 39.226127\n ],\n [\n 107.11659,\n 39.205365\n ],\n [\n 107.103583,\n 39.136113\n ],\n [\n 107.087976,\n 39.113903\n ],\n [\n 107.077859,\n 39.045273\n ],\n [\n 107.06283,\n 39.061458\n ],\n [\n 107.033349,\n 39.036734\n ],\n [\n 106.967739,\n 39.052388\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 150400,\n \"name\": \"赤峰市\",\n \"center\": [\n 118.956806,\n 42.275317\n ],\n \"centroid\": [\n 118.878117,\n 43.240534\n ],\n \"childrenNum\": 12,\n \"level\": \"city\",\n \"subFeatureIndex\": 3,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 120.886032,\n 42.270651\n ],\n [\n 120.885743,\n 42.270482\n ],\n [\n 120.883719,\n 42.24268\n ],\n [\n 120.829382,\n 42.252514\n ],\n [\n 120.820711,\n 42.228096\n ],\n [\n 120.745273,\n 42.223517\n ],\n [\n 120.722151,\n 42.203669\n ],\n [\n 120.624748,\n 42.154447\n ],\n [\n 120.584283,\n 42.16718\n ],\n [\n 120.466647,\n 42.105357\n ],\n [\n 120.493527,\n 42.072552\n ],\n [\n 120.450751,\n 42.057248\n ],\n [\n 120.456531,\n 42.016251\n ],\n [\n 120.374447,\n 41.994466\n ],\n [\n 120.28687,\n 41.934859\n ],\n [\n 120.260279,\n 41.904183\n ],\n [\n 120.300455,\n 41.888157\n ],\n [\n 120.251608,\n 41.883894\n ],\n [\n 120.128192,\n 41.773471\n ],\n [\n 120.138308,\n 41.729215\n ],\n [\n 120.09611,\n 41.697071\n ],\n [\n 120.036858,\n 41.708016\n ],\n [\n 120.024719,\n 41.738615\n ],\n [\n 120.050443,\n 41.776033\n ],\n [\n 120.041772,\n 41.818721\n ],\n [\n 120.023274,\n 41.816502\n ],\n [\n 119.985122,\n 41.904694\n ],\n [\n 119.954484,\n 41.920375\n ],\n [\n 119.954484,\n 41.968246\n ],\n [\n 119.924425,\n 41.989189\n ],\n [\n 119.869798,\n 42.083432\n ],\n [\n 119.84552,\n 42.097199\n ],\n [\n 119.839739,\n 42.148674\n ],\n [\n 119.854769,\n 42.170236\n ],\n [\n 119.846676,\n 42.215205\n ],\n [\n 119.744648,\n 42.211643\n ],\n [\n 119.67239,\n 42.241663\n ],\n [\n 119.616896,\n 42.252683\n ],\n [\n 119.608514,\n 42.277091\n ],\n [\n 119.541459,\n 42.292172\n ],\n [\n 119.572096,\n 42.359399\n ],\n [\n 119.50244,\n 42.387995\n ],\n [\n 119.488277,\n 42.351444\n ],\n [\n 119.41573,\n 42.309621\n ],\n [\n 119.346652,\n 42.299965\n ],\n [\n 119.28451,\n 42.265227\n ],\n [\n 119.237976,\n 42.200954\n ],\n [\n 119.276417,\n 42.186021\n ],\n [\n 119.314859,\n 42.119799\n ],\n [\n 119.352433,\n 42.11827\n ],\n [\n 119.385093,\n 42.089551\n ],\n [\n 119.374399,\n 42.021016\n ],\n [\n 119.324686,\n 41.969268\n ],\n [\n 119.340871,\n 41.921568\n ],\n [\n 119.334513,\n 41.869398\n ],\n [\n 119.312835,\n 41.805747\n ],\n [\n 119.290002,\n 41.783378\n ],\n [\n 119.317749,\n 41.763222\n ],\n [\n 119.299829,\n 41.711435\n ],\n [\n 119.307922,\n 41.657554\n ],\n [\n 119.342606,\n 41.618012\n ],\n [\n 119.416019,\n 41.590096\n ],\n [\n 119.414863,\n 41.562339\n ],\n [\n 119.361971,\n 41.566451\n ],\n [\n 119.404458,\n 41.510734\n ],\n [\n 119.403302,\n 41.475221\n ],\n [\n 119.377867,\n 41.459774\n ],\n [\n 119.376422,\n 41.422172\n ],\n [\n 119.309945,\n 41.406026\n ],\n [\n 119.326131,\n 41.329362\n ],\n [\n 119.252139,\n 41.325578\n ],\n [\n 119.197801,\n 41.282907\n ],\n [\n 119.155024,\n 41.297708\n ],\n [\n 119.093172,\n 41.293578\n ],\n [\n 118.974669,\n 41.306483\n ],\n [\n 118.89085,\n 41.300805\n ],\n [\n 118.844894,\n 41.342432\n ],\n [\n 118.839691,\n 41.374237\n ],\n [\n 118.770035,\n 41.353093\n ],\n [\n 118.741999,\n 41.32403\n ],\n [\n 118.676967,\n 41.350514\n ],\n [\n 118.629855,\n 41.346387\n ],\n [\n 118.519156,\n 41.353781\n ],\n [\n 118.412503,\n 41.331942\n ],\n [\n 118.380132,\n 41.31216\n ],\n [\n 118.349206,\n 41.342776\n ],\n [\n 118.361056,\n 41.384892\n ],\n [\n 118.32695,\n 41.450848\n ],\n [\n 118.272034,\n 41.471273\n ],\n [\n 118.315678,\n 41.512449\n ],\n [\n 118.301515,\n 41.569707\n ],\n [\n 118.230414,\n 41.582215\n ],\n [\n 118.209893,\n 41.610649\n ],\n [\n 118.206713,\n 41.650708\n ],\n [\n 118.169139,\n 41.670729\n ],\n [\n 118.130698,\n 41.742375\n ],\n [\n 118.140236,\n 41.784061\n ],\n [\n 118.16596,\n 41.813259\n ],\n [\n 118.235905,\n 41.807625\n ],\n [\n 118.246889,\n 41.773984\n ],\n [\n 118.292266,\n 41.772788\n ],\n [\n 118.340246,\n 41.872468\n ],\n [\n 118.268855,\n 41.930088\n ],\n [\n 118.30614,\n 41.939971\n ],\n [\n 118.313944,\n 41.988167\n ],\n [\n 118.23764,\n 42.022887\n ],\n [\n 118.296891,\n 42.048405\n ],\n [\n 118.272323,\n 42.083262\n ],\n [\n 118.226656,\n 42.090231\n ],\n [\n 118.220298,\n 42.058609\n ],\n [\n 118.189082,\n 42.030544\n ],\n [\n 118.125206,\n 42.032926\n ],\n [\n 118.155266,\n 42.081222\n ],\n [\n 118.088789,\n 42.117081\n ],\n [\n 118.106419,\n 42.171934\n ],\n [\n 118.033584,\n 42.199088\n ],\n [\n 117.96913,\n 42.245562\n ],\n [\n 118.047457,\n 42.28065\n ],\n [\n 118.059885,\n 42.298271\n ],\n [\n 118.016242,\n 42.333329\n ],\n [\n 118.024335,\n 42.384781\n ],\n [\n 117.997744,\n 42.416747\n ],\n [\n 117.874038,\n 42.510185\n ],\n [\n 117.855829,\n 42.540063\n ],\n [\n 117.797734,\n 42.585274\n ],\n [\n 117.779814,\n 42.618655\n ],\n [\n 117.707267,\n 42.587972\n ],\n [\n 117.667381,\n 42.582407\n ],\n [\n 117.600326,\n 42.602978\n ],\n [\n 117.539918,\n 42.605507\n ],\n [\n 117.520264,\n 42.59185\n ],\n [\n 117.473441,\n 42.602472\n ],\n [\n 117.435289,\n 42.585442\n ],\n [\n 117.433266,\n 42.555755\n ],\n [\n 117.39627,\n 42.53635\n ],\n [\n 117.413034,\n 42.471171\n ],\n [\n 117.332105,\n 42.46154\n ],\n [\n 117.286727,\n 42.479787\n ],\n [\n 117.176028,\n 42.465596\n ],\n [\n 117.095389,\n 42.484178\n ],\n [\n 117.078625,\n 42.460189\n ],\n [\n 117.016772,\n 42.456471\n ],\n [\n 116.993939,\n 42.425708\n ],\n [\n 116.893645,\n 42.387826\n ],\n [\n 116.907807,\n 42.443965\n ],\n [\n 116.875725,\n 42.482996\n ],\n [\n 116.885552,\n 42.534662\n ],\n [\n 116.82052,\n 42.546981\n ],\n [\n 116.801444,\n 42.582913\n ],\n [\n 116.699127,\n 42.592019\n ],\n [\n 116.669357,\n 42.555755\n ],\n [\n 116.638141,\n 42.577179\n ],\n [\n 116.63554,\n 42.614609\n ],\n [\n 116.58785,\n 42.599775\n ],\n [\n 116.619354,\n 42.671387\n ],\n [\n 116.67427,\n 42.761586\n ],\n [\n 116.666177,\n 42.81655\n ],\n [\n 116.673981,\n 42.889758\n ],\n [\n 116.664732,\n 42.933038\n ],\n [\n 116.580624,\n 42.985336\n ],\n [\n 116.500852,\n 43.01532\n ],\n [\n 116.503742,\n 43.04914\n ],\n [\n 116.436109,\n 43.077922\n ],\n [\n 116.419345,\n 43.104015\n ],\n [\n 116.356336,\n 43.156835\n ],\n [\n 116.37021,\n 43.243323\n ],\n [\n 116.413853,\n 43.258003\n ],\n [\n 116.436398,\n 43.328188\n ],\n [\n 116.518194,\n 43.365664\n ],\n [\n 116.59681,\n 43.410605\n ],\n [\n 116.621956,\n 43.505039\n ],\n [\n 116.681207,\n 43.517165\n ],\n [\n 116.734967,\n 43.509026\n ],\n [\n 116.790461,\n 43.484436\n ],\n [\n 116.830636,\n 43.5067\n ],\n [\n 116.804912,\n 43.565147\n ],\n [\n 116.812138,\n 43.612593\n ],\n [\n 116.837284,\n 43.614086\n ],\n [\n 116.858383,\n 43.657351\n ],\n [\n 116.971683,\n 43.673422\n ],\n [\n 117.053768,\n 43.753384\n ],\n [\n 117.001164,\n 43.782495\n ],\n [\n 116.986135,\n 43.840343\n ],\n [\n 117.013304,\n 43.85075\n ],\n [\n 117.000008,\n 43.912328\n ],\n [\n 117.031802,\n 43.942845\n ],\n [\n 117.022264,\n 43.969721\n ],\n [\n 116.970816,\n 43.988674\n ],\n [\n 116.961567,\n 44.024752\n ],\n [\n 117.011281,\n 44.057681\n ],\n [\n 117.120823,\n 44.179195\n ],\n [\n 117.166201,\n 44.192662\n ],\n [\n 117.206666,\n 44.220081\n ],\n [\n 117.452631,\n 44.235017\n ],\n [\n 117.522866,\n 44.226811\n ],\n [\n 117.550613,\n 44.187736\n ],\n [\n 117.634721,\n 44.14847\n ],\n [\n 117.624894,\n 44.128745\n ],\n [\n 117.686746,\n 44.095033\n ],\n [\n 117.643392,\n 44.042207\n ],\n [\n 117.700331,\n 44.016353\n ],\n [\n 117.790219,\n 44.019482\n ],\n [\n 117.827793,\n 44.063113\n ],\n [\n 117.859876,\n 44.072987\n ],\n [\n 117.904098,\n 44.121182\n ],\n [\n 117.962193,\n 44.121182\n ],\n [\n 118.06162,\n 44.100461\n ],\n [\n 118.116825,\n 44.132362\n ],\n [\n 118.128675,\n 44.190692\n ],\n [\n 118.148907,\n 44.215157\n ],\n [\n 118.172608,\n 44.204321\n ],\n [\n 118.19284,\n 44.242565\n ],\n [\n 118.237351,\n 44.279144\n ],\n [\n 118.214228,\n 44.306195\n ],\n [\n 118.250935,\n 44.337493\n ],\n [\n 118.34198,\n 44.319961\n ],\n [\n 118.414816,\n 44.322419\n ],\n [\n 118.428111,\n 44.346174\n ],\n [\n 118.466552,\n 44.354036\n ],\n [\n 118.476957,\n 44.399383\n ],\n [\n 118.544591,\n 44.411165\n ],\n [\n 118.54777,\n 44.442243\n ],\n [\n 118.596038,\n 44.468728\n ],\n [\n 118.635635,\n 44.472814\n ],\n [\n 118.659336,\n 44.453361\n ],\n [\n 118.75067,\n 44.477554\n ],\n [\n 118.789111,\n 44.46317\n ],\n [\n 118.816569,\n 44.49128\n ],\n [\n 118.904723,\n 44.516436\n ],\n [\n 118.981606,\n 44.566064\n ],\n [\n 119.001549,\n 44.648248\n ],\n [\n 118.96831,\n 44.691087\n ],\n [\n 118.926112,\n 44.7046\n ],\n [\n 118.97149,\n 44.729827\n ],\n [\n 119.001549,\n 44.713879\n ],\n [\n 119.074674,\n 44.712739\n ],\n [\n 119.148377,\n 44.731617\n ],\n [\n 119.125832,\n 44.762199\n ],\n [\n 119.173233,\n 44.76041\n ],\n [\n 119.14751,\n 44.808692\n ],\n [\n 119.067448,\n 44.870895\n ],\n [\n 119.082188,\n 44.938381\n ],\n [\n 119.107334,\n 44.920543\n ],\n [\n 119.146642,\n 44.924922\n ],\n [\n 119.224681,\n 44.909676\n ],\n [\n 119.230172,\n 44.9353\n ],\n [\n 119.18624,\n 44.952971\n ],\n [\n 119.15329,\n 44.992993\n ],\n [\n 119.171788,\n 45.015989\n ],\n [\n 119.208495,\n 44.997366\n ],\n [\n 119.231907,\n 45.019065\n ],\n [\n 119.196934,\n 45.03234\n ],\n [\n 119.156759,\n 45.074409\n ],\n [\n 119.159071,\n 45.099959\n ],\n [\n 119.215432,\n 45.152802\n ],\n [\n 119.28769,\n 45.121943\n ],\n [\n 119.293181,\n 45.087347\n ],\n [\n 119.342027,\n 45.076026\n ],\n [\n 119.373243,\n 45.105456\n ],\n [\n 119.360814,\n 45.165884\n ],\n [\n 119.311101,\n 45.186551\n ],\n [\n 119.323818,\n 45.245925\n ],\n [\n 119.33827,\n 45.252214\n ],\n [\n 119.492324,\n 45.223829\n ],\n [\n 119.507642,\n 45.194622\n ],\n [\n 119.634816,\n 45.121619\n ],\n [\n 119.668633,\n 45.084436\n ],\n [\n 119.708519,\n 44.989429\n ],\n [\n 119.751874,\n 44.925895\n ],\n [\n 119.848988,\n 44.894751\n ],\n [\n 119.864307,\n 44.873329\n ],\n [\n 119.927604,\n 44.846379\n ],\n [\n 119.9409,\n 44.826401\n ],\n [\n 120.076166,\n 44.72641\n ],\n [\n 120.082236,\n 44.687668\n ],\n [\n 120.116342,\n 44.652484\n ],\n [\n 120.180796,\n 44.635373\n ],\n [\n 120.156517,\n 44.598853\n ],\n [\n 120.206519,\n 44.571938\n ],\n [\n 120.2123,\n 44.552355\n ],\n [\n 120.28687,\n 44.517253\n ],\n [\n 120.325022,\n 44.440444\n ],\n [\n 120.312016,\n 44.418363\n ],\n [\n 120.339185,\n 44.39071\n ],\n [\n 120.378493,\n 44.38629\n ],\n [\n 120.38832,\n 44.337656\n ],\n [\n 120.454508,\n 44.262416\n ],\n [\n 120.496707,\n 44.249292\n ],\n [\n 120.560872,\n 44.261432\n ],\n [\n 120.574456,\n 44.235017\n ],\n [\n 120.645847,\n 44.235017\n ],\n [\n 120.653651,\n 44.185765\n ],\n [\n 120.688912,\n 44.18248\n ],\n [\n 120.706543,\n 44.129238\n ],\n [\n 120.746141,\n 44.113783\n ],\n [\n 120.708856,\n 44.081543\n ],\n [\n 120.693537,\n 44.037268\n ],\n [\n 120.774466,\n 43.935588\n ],\n [\n 120.795854,\n 43.885756\n ],\n [\n 120.787472,\n 43.814401\n ],\n [\n 120.836029,\n 43.788613\n ],\n [\n 120.876783,\n 43.739485\n ],\n [\n 120.940659,\n 43.693961\n ],\n [\n 120.964359,\n 43.654037\n ],\n [\n 120.93141,\n 43.611101\n ],\n [\n 120.864354,\n 43.593188\n ],\n [\n 120.807993,\n 43.559504\n ],\n [\n 120.758569,\n 43.54307\n ],\n [\n 120.753366,\n 43.525967\n ],\n [\n 120.694404,\n 43.488424\n ],\n [\n 120.654807,\n 43.451024\n ],\n [\n 120.60018,\n 43.427241\n ],\n [\n 120.464046,\n 43.400787\n ],\n [\n 120.426761,\n 43.380149\n ],\n [\n 120.504222,\n 43.380315\n ],\n [\n 120.607406,\n 43.393798\n ],\n [\n 120.644402,\n 43.409607\n ],\n [\n 120.705387,\n 43.410439\n ],\n [\n 120.772153,\n 43.42824\n ],\n [\n 120.762904,\n 43.406112\n ],\n [\n 120.721284,\n 43.393964\n ],\n [\n 120.666368,\n 43.325022\n ],\n [\n 120.627927,\n 43.318523\n ],\n [\n 120.631973,\n 43.295856\n ],\n [\n 120.589486,\n 43.276849\n ],\n [\n 120.574745,\n 43.240486\n ],\n [\n 120.535148,\n 43.226803\n ],\n [\n 120.507979,\n 43.196254\n ],\n [\n 120.47474,\n 43.184899\n ],\n [\n 120.451907,\n 43.131434\n ],\n [\n 120.386008,\n 43.102008\n ],\n [\n 120.3467,\n 43.058512\n ],\n [\n 120.387164,\n 42.986342\n ],\n [\n 120.430519,\n 42.986174\n ],\n [\n 120.403061,\n 42.93723\n ],\n [\n 120.420403,\n 42.914757\n ],\n [\n 120.396413,\n 42.885563\n ],\n [\n 120.42416,\n 42.8671\n ],\n [\n 120.462023,\n 42.756541\n ],\n [\n 120.484856,\n 42.725926\n ],\n [\n 120.512892,\n 42.649154\n ],\n [\n 120.564918,\n 42.598089\n ],\n [\n 120.568386,\n 42.540569\n ],\n [\n 120.653073,\n 42.465089\n ],\n [\n 120.666079,\n 42.442275\n ],\n [\n 120.768685,\n 42.393916\n ],\n [\n 120.766951,\n 42.366168\n ],\n [\n 120.84181,\n 42.309282\n ],\n [\n 120.861175,\n 42.269465\n ],\n [\n 120.885743,\n 42.270482\n ],\n [\n 120.886032,\n 42.270651\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 150500,\n \"name\": \"通辽市\",\n \"center\": [\n 122.263119,\n 43.617429\n ],\n \"centroid\": [\n 121.569877,\n 43.834478\n ],\n \"childrenNum\": 8,\n \"level\": \"city\",\n \"subFeatureIndex\": 4,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 120.886032,\n 42.270651\n ],\n [\n 120.885743,\n 42.270482\n ],\n [\n 120.861175,\n 42.269465\n ],\n [\n 120.84181,\n 42.309282\n ],\n [\n 120.766951,\n 42.366168\n ],\n [\n 120.768685,\n 42.393916\n ],\n [\n 120.666079,\n 42.442275\n ],\n [\n 120.653073,\n 42.465089\n ],\n [\n 120.568386,\n 42.540569\n ],\n [\n 120.564918,\n 42.598089\n ],\n [\n 120.512892,\n 42.649154\n ],\n [\n 120.484856,\n 42.725926\n ],\n [\n 120.462023,\n 42.756541\n ],\n [\n 120.42416,\n 42.8671\n ],\n [\n 120.396413,\n 42.885563\n ],\n [\n 120.420403,\n 42.914757\n ],\n [\n 120.403061,\n 42.93723\n ],\n [\n 120.430519,\n 42.986174\n ],\n [\n 120.387164,\n 42.986342\n ],\n [\n 120.3467,\n 43.058512\n ],\n [\n 120.386008,\n 43.102008\n ],\n [\n 120.451907,\n 43.131434\n ],\n [\n 120.47474,\n 43.184899\n ],\n [\n 120.507979,\n 43.196254\n ],\n [\n 120.535148,\n 43.226803\n ],\n [\n 120.574745,\n 43.240486\n ],\n [\n 120.589486,\n 43.276849\n ],\n [\n 120.631973,\n 43.295856\n ],\n [\n 120.627927,\n 43.318523\n ],\n [\n 120.666368,\n 43.325022\n ],\n [\n 120.721284,\n 43.393964\n ],\n [\n 120.762904,\n 43.406112\n ],\n [\n 120.772153,\n 43.42824\n ],\n [\n 120.705387,\n 43.410439\n ],\n [\n 120.644402,\n 43.409607\n ],\n [\n 120.607406,\n 43.393798\n ],\n [\n 120.504222,\n 43.380315\n ],\n [\n 120.426761,\n 43.380149\n ],\n [\n 120.464046,\n 43.400787\n ],\n [\n 120.60018,\n 43.427241\n ],\n [\n 120.654807,\n 43.451024\n ],\n [\n 120.694404,\n 43.488424\n ],\n [\n 120.753366,\n 43.525967\n ],\n [\n 120.758569,\n 43.54307\n ],\n [\n 120.807993,\n 43.559504\n ],\n [\n 120.864354,\n 43.593188\n ],\n [\n 120.93141,\n 43.611101\n ],\n [\n 120.964359,\n 43.654037\n ],\n [\n 120.940659,\n 43.693961\n ],\n [\n 120.876783,\n 43.739485\n ],\n [\n 120.836029,\n 43.788613\n ],\n [\n 120.787472,\n 43.814401\n ],\n [\n 120.795854,\n 43.885756\n ],\n [\n 120.774466,\n 43.935588\n ],\n [\n 120.693537,\n 44.037268\n ],\n [\n 120.708856,\n 44.081543\n ],\n [\n 120.746141,\n 44.113783\n ],\n [\n 120.706543,\n 44.129238\n ],\n [\n 120.688912,\n 44.18248\n ],\n [\n 120.653651,\n 44.185765\n ],\n [\n 120.645847,\n 44.235017\n ],\n [\n 120.574456,\n 44.235017\n ],\n [\n 120.560872,\n 44.261432\n ],\n [\n 120.496707,\n 44.249292\n ],\n [\n 120.454508,\n 44.262416\n ],\n [\n 120.38832,\n 44.337656\n ],\n [\n 120.378493,\n 44.38629\n ],\n [\n 120.339185,\n 44.39071\n ],\n [\n 120.312016,\n 44.418363\n ],\n [\n 120.325022,\n 44.440444\n ],\n [\n 120.28687,\n 44.517253\n ],\n [\n 120.2123,\n 44.552355\n ],\n [\n 120.206519,\n 44.571938\n ],\n [\n 120.156517,\n 44.598853\n ],\n [\n 120.180796,\n 44.635373\n ],\n [\n 120.116342,\n 44.652484\n ],\n [\n 120.082236,\n 44.687668\n ],\n [\n 120.076166,\n 44.72641\n ],\n [\n 119.9409,\n 44.826401\n ],\n [\n 119.927604,\n 44.846379\n ],\n [\n 119.864307,\n 44.873329\n ],\n [\n 119.848988,\n 44.894751\n ],\n [\n 119.751874,\n 44.925895\n ],\n [\n 119.708519,\n 44.989429\n ],\n [\n 119.668633,\n 45.084436\n ],\n [\n 119.634816,\n 45.121619\n ],\n [\n 119.507642,\n 45.194622\n ],\n [\n 119.492324,\n 45.223829\n ],\n [\n 119.33827,\n 45.252214\n ],\n [\n 119.323818,\n 45.245925\n ],\n [\n 119.248381,\n 45.304111\n ],\n [\n 119.313413,\n 45.385244\n ],\n [\n 119.304742,\n 45.468029\n ],\n [\n 119.396943,\n 45.511863\n ],\n [\n 119.496081,\n 45.550691\n ],\n [\n 119.55909,\n 45.615933\n ],\n [\n 119.544927,\n 45.635956\n ],\n [\n 119.566027,\n 45.65565\n ],\n [\n 119.656493,\n 45.623463\n ],\n [\n 119.790893,\n 45.564323\n ],\n [\n 119.819507,\n 45.572821\n ],\n [\n 119.877602,\n 45.549088\n ],\n [\n 119.918355,\n 45.561918\n ],\n [\n 119.906794,\n 45.505603\n ],\n [\n 120.002464,\n 45.482162\n ],\n [\n 120.031656,\n 45.499342\n ],\n [\n 120.028765,\n 45.526306\n ],\n [\n 119.994082,\n 45.552937\n ],\n [\n 119.994082,\n 45.580837\n ],\n [\n 120.027031,\n 45.594942\n ],\n [\n 120.142644,\n 45.584204\n ],\n [\n 120.165766,\n 45.594782\n ],\n [\n 120.269239,\n 45.552135\n ],\n [\n 120.318375,\n 45.556626\n ],\n [\n 120.35855,\n 45.516838\n ],\n [\n 120.414044,\n 45.503516\n ],\n [\n 120.434854,\n 45.464495\n ],\n [\n 120.49584,\n 45.464173\n ],\n [\n 120.559716,\n 45.416604\n ],\n [\n 120.554224,\n 45.357569\n ],\n [\n 120.580526,\n 45.352901\n ],\n [\n 120.660298,\n 45.297666\n ],\n [\n 120.744406,\n 45.260115\n ],\n [\n 120.82678,\n 45.253504\n ],\n [\n 120.834873,\n 45.216084\n ],\n [\n 120.882274,\n 45.217537\n ],\n [\n 120.967827,\n 45.184129\n ],\n [\n 120.97303,\n 45.157002\n ],\n [\n 120.947884,\n 45.120973\n ],\n [\n 120.97303,\n 45.11871\n ],\n [\n 120.977076,\n 45.072953\n ],\n [\n 121.032859,\n 44.9985\n ],\n [\n 121.239806,\n 44.934165\n ],\n [\n 121.401663,\n 44.85125\n ],\n [\n 121.420161,\n 44.817953\n ],\n [\n 121.409178,\n 44.790815\n ],\n [\n 121.529993,\n 44.720389\n ],\n [\n 121.548491,\n 44.667472\n ],\n [\n 121.595603,\n 44.659164\n ],\n [\n 121.585198,\n 44.639774\n ],\n [\n 121.651097,\n 44.563126\n ],\n [\n 121.697631,\n 44.534562\n ],\n [\n 121.760062,\n 44.47739\n ],\n [\n 121.778271,\n 44.446494\n ],\n [\n 121.829429,\n 44.411328\n ],\n [\n 121.881166,\n 44.402983\n ],\n [\n 121.933769,\n 44.351252\n ],\n [\n 122.017877,\n 44.304392\n ],\n [\n 122.167596,\n 44.25569\n ],\n [\n 122.22598,\n 44.263564\n ],\n [\n 122.274537,\n 44.25405\n ],\n [\n 122.319337,\n 44.232883\n ],\n [\n 122.483218,\n 44.236986\n ],\n [\n 122.512988,\n 44.250276\n ],\n [\n 122.641896,\n 44.283408\n ],\n [\n 122.675423,\n 44.285703\n ],\n [\n 122.760687,\n 44.369756\n ],\n [\n 122.856068,\n 44.398238\n ],\n [\n 123.024862,\n 44.492914\n ],\n [\n 123.124867,\n 44.509577\n ],\n [\n 123.124,\n 44.457939\n ],\n [\n 123.142208,\n 44.428178\n ],\n [\n 123.114461,\n 44.402493\n ],\n [\n 123.127179,\n 44.368774\n ],\n [\n 123.196835,\n 44.345028\n ],\n [\n 123.277186,\n 44.252573\n ],\n [\n 123.287302,\n 44.213351\n ],\n [\n 123.32372,\n 44.179852\n ],\n [\n 123.38644,\n 44.161945\n ],\n [\n 123.3506,\n 44.092566\n ],\n [\n 123.328344,\n 44.083847\n ],\n [\n 123.332391,\n 44.028376\n ],\n [\n 123.400891,\n 43.979281\n ],\n [\n 123.375168,\n 43.965599\n ],\n [\n 123.428349,\n 43.927341\n ],\n [\n 123.443957,\n 43.877337\n ],\n [\n 123.468236,\n 43.853062\n ],\n [\n 123.463322,\n 43.819524\n ],\n [\n 123.49685,\n 43.785637\n ],\n [\n 123.482687,\n 43.737831\n ],\n [\n 123.517371,\n 43.71383\n ],\n [\n 123.537314,\n 43.649728\n ],\n [\n 123.511879,\n 43.62619\n ],\n [\n 123.510434,\n 43.592193\n ],\n [\n 123.421123,\n 43.59833\n ],\n [\n 123.46101,\n 43.568632\n ],\n [\n 123.452339,\n 43.545726\n ],\n [\n 123.352912,\n 43.567636\n ],\n [\n 123.304644,\n 43.550707\n ],\n [\n 123.32979,\n 43.518992\n ],\n [\n 123.315916,\n 43.49208\n ],\n [\n 123.375746,\n 43.476625\n ],\n [\n 123.419967,\n 43.410106\n ],\n [\n 123.441934,\n 43.43772\n ],\n [\n 123.486734,\n 43.44537\n ],\n [\n 123.519683,\n 43.402452\n ],\n [\n 123.545118,\n 43.415097\n ],\n [\n 123.608705,\n 43.36633\n ],\n [\n 123.703796,\n 43.370659\n ],\n [\n 123.712756,\n 43.347179\n ],\n [\n 123.696281,\n 43.281351\n ],\n [\n 123.664199,\n 43.26234\n ],\n [\n 123.676916,\n 43.224132\n ],\n [\n 123.646279,\n 43.213283\n ],\n [\n 123.667956,\n 43.18089\n ],\n [\n 123.636163,\n 43.141462\n ],\n [\n 123.626336,\n 43.079427\n ],\n [\n 123.572576,\n 43.004601\n ],\n [\n 123.537603,\n 43.007114\n ],\n [\n 123.471993,\n 43.042779\n ],\n [\n 123.321986,\n 43.000749\n ],\n [\n 123.258977,\n 42.993043\n ],\n [\n 123.184118,\n 42.925995\n ],\n [\n 123.188742,\n 42.895799\n ],\n [\n 123.169955,\n 42.859713\n ],\n [\n 123.227473,\n 42.83234\n ],\n [\n 123.115907,\n 42.800419\n ],\n [\n 123.058389,\n 42.769153\n ],\n [\n 122.980351,\n 42.777559\n ],\n [\n 122.945956,\n 42.753682\n ],\n [\n 122.928904,\n 42.772179\n ],\n [\n 122.887283,\n 42.770162\n ],\n [\n 122.850865,\n 42.714315\n ],\n [\n 122.732362,\n 42.786469\n ],\n [\n 122.625132,\n 42.773188\n ],\n [\n 122.58091,\n 42.789662\n ],\n [\n 122.563857,\n 42.825957\n ],\n [\n 122.436973,\n 42.842921\n ],\n [\n 122.358356,\n 42.835868\n ],\n [\n 122.349974,\n 42.82159\n ],\n [\n 122.374831,\n 42.774869\n ],\n [\n 122.46154,\n 42.758055\n ],\n [\n 122.399688,\n 42.712128\n ],\n [\n 122.398531,\n 42.68671\n ],\n [\n 122.341303,\n 42.671219\n ],\n [\n 122.259507,\n 42.696643\n ],\n [\n 122.203724,\n 42.732151\n ],\n [\n 122.19621,\n 42.690919\n ],\n [\n 122.133201,\n 42.689404\n ],\n [\n 122.060943,\n 42.723402\n ],\n [\n 122.018745,\n 42.699168\n ],\n [\n 121.940417,\n 42.688562\n ],\n [\n 121.916139,\n 42.65724\n ],\n [\n 121.921341,\n 42.606181\n ],\n [\n 121.869315,\n 42.527911\n ],\n [\n 121.828851,\n 42.531962\n ],\n [\n 121.747344,\n 42.484516\n ],\n [\n 121.711215,\n 42.443627\n ],\n [\n 121.666127,\n 42.437204\n ],\n [\n 121.637802,\n 42.480462\n ],\n [\n 121.605141,\n 42.493974\n ],\n [\n 121.607742,\n 42.516094\n ],\n [\n 121.570168,\n 42.486881\n ],\n [\n 121.506292,\n 42.482489\n ],\n [\n 121.478834,\n 42.496339\n ],\n [\n 121.433746,\n 42.475395\n ],\n [\n 121.385188,\n 42.473029\n ],\n [\n 121.304549,\n 42.435683\n ],\n [\n 121.284895,\n 42.387826\n ],\n [\n 121.218706,\n 42.371922\n ],\n [\n 121.121592,\n 42.280989\n ],\n [\n 121.087197,\n 42.278447\n ],\n [\n 121.069277,\n 42.252683\n ],\n [\n 121.028813,\n 42.24251\n ],\n [\n 120.936034,\n 42.279803\n ],\n [\n 120.886032,\n 42.270651\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 150600,\n \"name\": \"鄂尔多斯市\",\n \"center\": [\n 109.99029,\n 39.817179\n ],\n \"centroid\": [\n 108.63473,\n 39.427784\n ],\n \"childrenNum\": 9,\n \"level\": \"city\",\n \"subFeatureIndex\": 5,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 110.74104,\n 39.349509\n ],\n [\n 110.739595,\n 39.348977\n ],\n [\n 110.732947,\n 39.308406\n ],\n [\n 110.702888,\n 39.273839\n ],\n [\n 110.626294,\n 39.266747\n ],\n [\n 110.566754,\n 39.319924\n ],\n [\n 110.559239,\n 39.352165\n ],\n [\n 110.524266,\n 39.382799\n ],\n [\n 110.482646,\n 39.360666\n ],\n [\n 110.430042,\n 39.379258\n ],\n [\n 110.429175,\n 39.342069\n ],\n [\n 110.391023,\n 39.311773\n ],\n [\n 110.340443,\n 39.341715\n ],\n [\n 110.243328,\n 39.423681\n ],\n [\n 110.152572,\n 39.453929\n ],\n [\n 110.132051,\n 39.446855\n ],\n [\n 110.136676,\n 39.391827\n ],\n [\n 110.158931,\n 39.389526\n ],\n [\n 110.203153,\n 39.315317\n ],\n [\n 110.210957,\n 39.281463\n ],\n [\n 110.110663,\n 39.249721\n ],\n [\n 110.010947,\n 39.20856\n ],\n [\n 109.962679,\n 39.211932\n ],\n [\n 109.902849,\n 39.271889\n ],\n [\n 109.869033,\n 39.249721\n ],\n [\n 109.960367,\n 39.186727\n ],\n [\n 109.89389,\n 39.141265\n ],\n [\n 109.922215,\n 39.106972\n ],\n [\n 109.860073,\n 39.124387\n ],\n [\n 109.757467,\n 39.053455\n ],\n [\n 109.725384,\n 39.018407\n ],\n [\n 109.665266,\n 38.981739\n ],\n [\n 109.683764,\n 38.935611\n ],\n [\n 109.624513,\n 38.854502\n ],\n [\n 109.549653,\n 38.805791\n ],\n [\n 109.517282,\n 38.833808\n ],\n [\n 109.450805,\n 38.788833\n ],\n [\n 109.40167,\n 38.716314\n ],\n [\n 109.338661,\n 38.701479\n ],\n [\n 109.328834,\n 38.660534\n ],\n [\n 109.367564,\n 38.629766\n ],\n [\n 109.331435,\n 38.59791\n ],\n [\n 109.276808,\n 38.622966\n ],\n [\n 109.196747,\n 38.552607\n ],\n [\n 109.175936,\n 38.518746\n ],\n [\n 109.052231,\n 38.42855\n ],\n [\n 109.051364,\n 38.385295\n ],\n [\n 109.00772,\n 38.359078\n ],\n [\n 108.961764,\n 38.265087\n ],\n [\n 108.975927,\n 38.245122\n ],\n [\n 108.938931,\n 38.209497\n ],\n [\n 108.967545,\n 38.152784\n ],\n [\n 109.068995,\n 38.091161\n ],\n [\n 109.050786,\n 38.054919\n ],\n [\n 109.069573,\n 38.02299\n ],\n [\n 109.038068,\n 38.021546\n ],\n [\n 109.017547,\n 37.969924\n ],\n [\n 108.982574,\n 37.963784\n ],\n [\n 108.974193,\n 37.931815\n ],\n [\n 108.935751,\n 37.921698\n ],\n [\n 108.893842,\n 37.978229\n ],\n [\n 108.882859,\n 38.013787\n ],\n [\n 108.830544,\n 38.049869\n ],\n [\n 108.797595,\n 38.047885\n ],\n [\n 108.826787,\n 37.995198\n ],\n [\n 108.798173,\n 37.933622\n ],\n [\n 108.793259,\n 37.815925\n ],\n [\n 108.784588,\n 37.764701\n ],\n [\n 108.792103,\n 37.700214\n ],\n [\n 108.777651,\n 37.683539\n ],\n [\n 108.611169,\n 37.654169\n ],\n [\n 108.532553,\n 37.690608\n ],\n [\n 108.422432,\n 37.64891\n ],\n [\n 108.301039,\n 37.640749\n ],\n [\n 108.246412,\n 37.665774\n ],\n [\n 108.19352,\n 37.63821\n ],\n [\n 108.133979,\n 37.622066\n ],\n [\n 108.013164,\n 37.665592\n ],\n [\n 108.024436,\n 37.698764\n ],\n [\n 107.993221,\n 37.735363\n ],\n [\n 107.981949,\n 37.787331\n ],\n [\n 107.884834,\n 37.808325\n ],\n [\n 107.842636,\n 37.828951\n ],\n [\n 107.741186,\n 37.845412\n ],\n [\n 107.68338,\n 37.887722\n ],\n [\n 107.650141,\n 37.864581\n ],\n [\n 107.560541,\n 37.893687\n ],\n [\n 107.492619,\n 37.944821\n ],\n [\n 107.450132,\n 37.933261\n ],\n [\n 107.41169,\n 37.949156\n ],\n [\n 107.440015,\n 37.995017\n ],\n [\n 107.39377,\n 38.01505\n ],\n [\n 107.331629,\n 38.086474\n ],\n [\n 107.242318,\n 38.110626\n ],\n [\n 107.190293,\n 38.154045\n ],\n [\n 107.138845,\n 38.160709\n ],\n [\n 107.125839,\n 38.137113\n ],\n [\n 107.068899,\n 38.139095\n ],\n [\n 107.014851,\n 38.120357\n ],\n [\n 106.945194,\n 38.131708\n ],\n [\n 106.755879,\n 38.181236\n ],\n [\n 106.728132,\n 38.204098\n ],\n [\n 106.627838,\n 38.23253\n ],\n [\n 106.555291,\n 38.263828\n ],\n [\n 106.482455,\n 38.319556\n ],\n [\n 106.504711,\n 38.332852\n ],\n [\n 106.511358,\n 38.336804\n ],\n [\n 106.601825,\n 38.392476\n ],\n [\n 106.648648,\n 38.472676\n ],\n [\n 106.662522,\n 38.60149\n ],\n [\n 106.702697,\n 38.708271\n ],\n [\n 106.755879,\n 38.748474\n ],\n [\n 106.837386,\n 38.847545\n ],\n [\n 106.954443,\n 38.941134\n ],\n [\n 106.971496,\n 39.016983\n ],\n [\n 106.967739,\n 39.052388\n ],\n [\n 107.033349,\n 39.036734\n ],\n [\n 107.06283,\n 39.061458\n ],\n [\n 107.077859,\n 39.045273\n ],\n [\n 107.087976,\n 39.113903\n ],\n [\n 107.103583,\n 39.136113\n ],\n [\n 107.11659,\n 39.205365\n ],\n [\n 107.139134,\n 39.226127\n ],\n [\n 107.136533,\n 39.27969\n ],\n [\n 107.060229,\n 39.222401\n ],\n [\n 107.034505,\n 39.251318\n ],\n [\n 106.943749,\n 39.299367\n ],\n [\n 106.952131,\n 39.409171\n ],\n [\n 106.965426,\n 39.420142\n ],\n [\n 106.935945,\n 39.517213\n ],\n [\n 106.931899,\n 39.576732\n ],\n [\n 106.911956,\n 39.627027\n ],\n [\n 106.875827,\n 39.672526\n ],\n [\n 106.91369,\n 39.682046\n ],\n [\n 106.899238,\n 39.755687\n ],\n [\n 106.875827,\n 39.795822\n ],\n [\n 106.9345,\n 39.858794\n ],\n [\n 106.965137,\n 39.859673\n ],\n [\n 106.963403,\n 39.902383\n ],\n [\n 106.933922,\n 39.914506\n ],\n [\n 106.871491,\n 39.865475\n ],\n [\n 106.86282,\n 39.842793\n ],\n [\n 106.778712,\n 39.811131\n ],\n [\n 106.768885,\n 39.86653\n ],\n [\n 106.754145,\n 39.850706\n ],\n [\n 106.696049,\n 39.890258\n ],\n [\n 106.723796,\n 39.932422\n ],\n [\n 106.704142,\n 39.967364\n ],\n [\n 106.720039,\n 39.993163\n ],\n [\n 106.718016,\n 40.047363\n ],\n [\n 106.759347,\n 40.083647\n ],\n [\n 106.801546,\n 40.10187\n ],\n [\n 106.866578,\n 40.181012\n ],\n [\n 106.922939,\n 40.196934\n ],\n [\n 106.948663,\n 40.234887\n ],\n [\n 106.99722,\n 40.262333\n ],\n [\n 107.013116,\n 40.314572\n ],\n [\n 107.055026,\n 40.332733\n ],\n [\n 107.044043,\n 40.35403\n ],\n [\n 107.114277,\n 40.366945\n ],\n [\n 107.15214,\n 40.410907\n ],\n [\n 107.147227,\n 40.464251\n ],\n [\n 107.18509,\n 40.471744\n ],\n [\n 107.203877,\n 40.505712\n ],\n [\n 107.1611,\n 40.525388\n ],\n [\n 107.169193,\n 40.598295\n ],\n [\n 107.230757,\n 40.577423\n ],\n [\n 107.250989,\n 40.58299\n ],\n [\n 107.286829,\n 40.650969\n ],\n [\n 107.392325,\n 40.644887\n ],\n [\n 107.455334,\n 40.680677\n ],\n [\n 107.485104,\n 40.711067\n ],\n [\n 107.526725,\n 40.701344\n ],\n [\n 107.584531,\n 40.739707\n ],\n [\n 107.612567,\n 40.778049\n ],\n [\n 107.603896,\n 40.798685\n ],\n [\n 107.653609,\n 40.772845\n ],\n [\n 107.679622,\n 40.780824\n ],\n [\n 107.681067,\n 40.817235\n ],\n [\n 107.738874,\n 40.874758\n ],\n [\n 107.747545,\n 40.860728\n ],\n [\n 107.821247,\n 40.835779\n ],\n [\n 107.856509,\n 40.874585\n ],\n [\n 107.899575,\n 40.849295\n ],\n [\n 107.972122,\n 40.862287\n ],\n [\n 108.000447,\n 40.846003\n ],\n [\n 108.088601,\n 40.832314\n ],\n [\n 108.125308,\n 40.842711\n ],\n [\n 108.182247,\n 40.888092\n ],\n [\n 108.211439,\n 40.850681\n ],\n [\n 108.211728,\n 40.820875\n ],\n [\n 108.288033,\n 40.819661\n ],\n [\n 108.338902,\n 40.801633\n ],\n [\n 108.421565,\n 40.80666\n ],\n [\n 108.468388,\n 40.785159\n ],\n [\n 108.483129,\n 40.75463\n ],\n [\n 108.580243,\n 40.710893\n ],\n [\n 108.591804,\n 40.658962\n ],\n [\n 108.656547,\n 40.667128\n ],\n [\n 108.720134,\n 40.619161\n ],\n [\n 108.762622,\n 40.62681\n ],\n [\n 108.778229,\n 40.567158\n ],\n [\n 108.831122,\n 40.541577\n ],\n [\n 108.870141,\n 40.570464\n ],\n [\n 108.92737,\n 40.552194\n ],\n [\n 108.925635,\n 40.533048\n ],\n [\n 108.997604,\n 40.530088\n ],\n [\n 108.998182,\n 40.55724\n ],\n [\n 109.053387,\n 40.550801\n ],\n [\n 109.088938,\n 40.532699\n ],\n [\n 109.157149,\n 40.53357\n ],\n [\n 109.322475,\n 40.484636\n ],\n [\n 109.419879,\n 40.473312\n ],\n [\n 109.437509,\n 40.513722\n ],\n [\n 109.519883,\n 40.514244\n ],\n [\n 109.580291,\n 40.553586\n ],\n [\n 109.635496,\n 40.546798\n ],\n [\n 109.667,\n 40.500139\n ],\n [\n 109.708621,\n 40.477494\n ],\n [\n 109.802267,\n 40.509717\n ],\n [\n 109.866143,\n 40.509891\n ],\n [\n 109.910075,\n 40.532003\n ],\n [\n 109.996207,\n 40.510588\n ],\n [\n 110.035804,\n 40.534266\n ],\n [\n 110.164712,\n 40.513722\n ],\n [\n 110.18321,\n 40.554282\n ],\n [\n 110.247953,\n 40.521209\n ],\n [\n 110.249398,\n 40.475054\n ],\n [\n 110.296799,\n 40.492823\n ],\n [\n 110.319054,\n 40.445777\n ],\n [\n 110.357495,\n 40.462509\n ],\n [\n 110.369057,\n 40.444383\n ],\n [\n 110.45172,\n 40.391896\n ],\n [\n 110.472241,\n 40.404978\n ],\n [\n 110.488137,\n 40.369563\n ],\n [\n 110.510971,\n 40.389279\n ],\n [\n 110.570222,\n 40.340589\n ],\n [\n 110.636699,\n 40.308634\n ],\n [\n 110.702021,\n 40.325399\n ],\n [\n 110.768787,\n 40.299726\n ],\n [\n 110.782371,\n 40.274042\n ],\n [\n 110.816477,\n 40.266178\n ],\n [\n 110.837287,\n 40.289943\n ],\n [\n 110.914458,\n 40.244678\n ],\n [\n 110.945963,\n 40.270373\n ],\n [\n 110.999144,\n 40.26111\n ],\n [\n 111.032961,\n 40.296931\n ],\n [\n 111.05406,\n 40.264605\n ],\n [\n 111.115624,\n 40.255866\n ],\n [\n 111.190483,\n 40.216525\n ],\n [\n 111.248289,\n 40.164561\n ],\n [\n 111.314188,\n 40.150557\n ],\n [\n 111.360433,\n 40.10187\n ],\n [\n 111.420263,\n 40.02211\n ],\n [\n 111.426332,\n 39.949983\n ],\n [\n 111.445409,\n 39.899045\n ],\n [\n 111.41506,\n 39.864772\n ],\n [\n 111.417083,\n 39.829778\n ],\n [\n 111.371417,\n 39.791775\n ],\n [\n 111.365058,\n 39.721166\n ],\n [\n 111.440784,\n 39.672526\n ],\n [\n 111.438183,\n 39.640433\n ],\n [\n 111.426622,\n 39.50343\n ],\n [\n 111.364191,\n 39.467368\n ],\n [\n 111.352341,\n 39.426689\n ],\n [\n 111.289332,\n 39.417134\n ],\n [\n 111.21216,\n 39.425627\n ],\n [\n 111.145394,\n 39.409525\n ],\n [\n 111.108109,\n 39.356593\n ],\n [\n 111.097993,\n 39.401915\n ],\n [\n 111.064466,\n 39.400854\n ],\n [\n 111.058396,\n 39.447739\n ],\n [\n 111.108976,\n 39.474264\n ],\n [\n 111.106375,\n 39.498481\n ],\n [\n 111.148863,\n 39.53223\n ],\n [\n 111.154932,\n 39.568964\n ],\n [\n 111.134411,\n 39.586441\n ],\n [\n 111.100883,\n 39.559429\n ],\n [\n 111.043655,\n 39.554661\n ],\n [\n 111.041054,\n 39.567728\n ],\n [\n 110.959258,\n 39.51951\n ],\n [\n 110.890758,\n 39.508908\n ],\n [\n 110.808095,\n 39.411826\n ],\n [\n 110.74104,\n 39.349509\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 150700,\n \"name\": \"呼伦贝尔市\",\n \"center\": [\n 119.758168,\n 49.215333\n ],\n \"centroid\": [\n 120.886666,\n 49.619014\n ],\n \"childrenNum\": 14,\n \"level\": \"city\",\n \"subFeatureIndex\": 6,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 119.486254,\n 47.336721\n ],\n [\n 119.444633,\n 47.371014\n ],\n [\n 119.386827,\n 47.397532\n ],\n [\n 119.351565,\n 47.432095\n ],\n [\n 119.322084,\n 47.427136\n ],\n [\n 119.365728,\n 47.477472\n ],\n [\n 119.205316,\n 47.520335\n ],\n [\n 119.152134,\n 47.540594\n ],\n [\n 119.134214,\n 47.664452\n ],\n [\n 118.773214,\n 47.771085\n ],\n [\n 118.568002,\n 47.99213\n ],\n [\n 118.455858,\n 47.996268\n ],\n [\n 118.424354,\n 48.014811\n ],\n [\n 118.329841,\n 48.006077\n ],\n [\n 118.27637,\n 48.009295\n ],\n [\n 118.240241,\n 48.040544\n ],\n [\n 118.107576,\n 48.031049\n ],\n [\n 118.015375,\n 48.012053\n ],\n [\n 117.926353,\n 48.015883\n ],\n [\n 117.886756,\n 48.025228\n ],\n [\n 117.813342,\n 48.01619\n ],\n [\n 117.528935,\n 47.782937\n ],\n [\n 117.493674,\n 47.758461\n ],\n [\n 117.384131,\n 47.641154\n ],\n [\n 117.094811,\n 47.824013\n ],\n [\n 116.879193,\n 47.893936\n ],\n [\n 116.791328,\n 47.897622\n ],\n [\n 116.669935,\n 47.890557\n ],\n [\n 116.452872,\n 47.837544\n ],\n [\n 116.265869,\n 47.876733\n ],\n [\n 116.110949,\n 47.811709\n ],\n [\n 115.968167,\n 47.689897\n ],\n [\n 115.938975,\n 47.683113\n ],\n [\n 115.580577,\n 47.921725\n ],\n [\n 115.529418,\n 48.15527\n ],\n [\n 115.822785,\n 48.259372\n ],\n [\n 115.799373,\n 48.515059\n ],\n [\n 115.830299,\n 48.560101\n ],\n [\n 116.078288,\n 48.822421\n ],\n [\n 116.048518,\n 48.873516\n ],\n [\n 116.350845,\n 49.317592\n ],\n [\n 116.717914,\n 49.847284\n ],\n [\n 116.736701,\n 49.847579\n ],\n [\n 117.069087,\n 49.695514\n ],\n [\n 117.278056,\n 49.636364\n ],\n [\n 117.485003,\n 49.6331\n ],\n [\n 117.638189,\n 49.574914\n ],\n [\n 117.809585,\n 49.521268\n ],\n [\n 117.849471,\n 49.551442\n ],\n [\n 117.866524,\n 49.59214\n ],\n [\n 117.950921,\n 49.596\n ],\n [\n 117.980691,\n 49.621231\n ],\n [\n 118.082719,\n 49.616631\n ],\n [\n 118.118848,\n 49.666467\n ],\n [\n 118.154688,\n 49.66024\n ],\n [\n 118.185325,\n 49.687809\n ],\n [\n 118.205846,\n 49.684697\n ],\n [\n 118.220876,\n 49.730022\n ],\n [\n 118.282439,\n 49.74364\n ],\n [\n 118.315967,\n 49.767168\n ],\n [\n 118.388514,\n 49.785952\n ],\n [\n 118.402387,\n 49.811381\n ],\n [\n 118.385334,\n 49.826898\n ],\n [\n 118.469732,\n 49.825716\n ],\n [\n 118.496033,\n 49.84625\n ],\n [\n 118.485917,\n 49.866923\n ],\n [\n 118.523202,\n 49.881093\n ],\n [\n 118.572916,\n 49.930952\n ],\n [\n 118.617715,\n 49.927856\n ],\n [\n 118.651243,\n 49.950852\n ],\n [\n 118.741999,\n 49.946578\n ],\n [\n 118.763098,\n 49.959694\n ],\n [\n 118.96542,\n 49.98886\n ],\n [\n 119.050395,\n 49.980613\n ],\n [\n 119.091437,\n 49.985768\n ],\n [\n 119.123809,\n 50.018156\n ],\n [\n 119.188263,\n 50.054493\n ],\n [\n 119.189997,\n 50.085365\n ],\n [\n 119.234797,\n 50.074783\n ],\n [\n 119.290291,\n 50.121651\n ],\n [\n 119.309656,\n 50.161285\n ],\n [\n 119.34434,\n 50.163192\n ],\n [\n 119.359658,\n 50.197074\n ],\n [\n 119.318616,\n 50.220381\n ],\n [\n 119.340004,\n 50.243823\n ],\n [\n 119.347808,\n 50.298135\n ],\n [\n 119.386827,\n 50.321685\n ],\n [\n 119.358502,\n 50.358961\n ],\n [\n 119.277284,\n 50.365974\n ],\n [\n 119.237109,\n 50.346539\n ],\n [\n 119.23393,\n 50.365098\n ],\n [\n 119.195489,\n 50.349316\n ],\n [\n 119.155602,\n 50.364659\n ],\n [\n 119.176702,\n 50.378683\n ],\n [\n 119.126699,\n 50.391243\n ],\n [\n 119.164851,\n 50.422482\n ],\n [\n 119.206761,\n 50.410368\n ],\n [\n 119.239999,\n 50.459095\n ],\n [\n 119.264567,\n 50.469447\n ],\n [\n 119.238265,\n 50.505587\n ],\n [\n 119.262544,\n 50.510831\n ],\n [\n 119.26659,\n 50.56091\n ],\n [\n 119.299251,\n 50.583893\n ],\n [\n 119.282487,\n 50.604831\n ],\n [\n 119.361393,\n 50.632732\n ],\n [\n 119.394053,\n 50.667296\n ],\n [\n 119.387405,\n 50.682827\n ],\n [\n 119.433072,\n 50.684568\n ],\n [\n 119.496659,\n 50.745478\n ],\n [\n 119.515735,\n 50.814125\n ],\n [\n 119.498971,\n 50.827726\n ],\n [\n 119.491457,\n 50.878913\n ],\n [\n 119.569784,\n 50.933797\n ],\n [\n 119.598687,\n 50.984723\n ],\n [\n 119.629902,\n 51.008508\n ],\n [\n 119.683084,\n 51.018883\n ],\n [\n 119.725572,\n 51.049562\n ],\n [\n 119.722681,\n 51.076192\n ],\n [\n 119.764302,\n 51.092594\n ],\n [\n 119.785112,\n 51.163603\n ],\n [\n 119.760255,\n 51.213272\n ],\n [\n 119.786268,\n 51.225466\n ],\n [\n 119.82153,\n 51.21442\n ],\n [\n 119.797251,\n 51.247121\n ],\n [\n 119.827889,\n 51.263749\n ],\n [\n 119.810836,\n 51.278508\n ],\n [\n 119.879336,\n 51.2967\n ],\n [\n 119.883961,\n 51.336927\n ],\n [\n 119.922402,\n 51.345225\n ],\n [\n 119.945813,\n 51.365965\n ],\n [\n 119.912864,\n 51.375259\n ],\n [\n 119.922113,\n 51.396557\n ],\n [\n 119.971248,\n 51.400415\n ],\n [\n 119.982809,\n 51.444976\n ],\n [\n 120.002464,\n 51.459392\n ],\n [\n 119.987145,\n 51.506604\n ],\n [\n 120.017204,\n 51.521143\n ],\n [\n 120.052466,\n 51.560887\n ],\n [\n 120.035124,\n 51.585799\n ],\n [\n 120.06605,\n 51.639135\n ],\n [\n 120.102179,\n 51.650221\n ],\n [\n 120.094375,\n 51.682043\n ],\n [\n 120.172414,\n 51.679913\n ],\n [\n 120.226174,\n 51.717674\n ],\n [\n 120.293518,\n 51.750724\n ],\n [\n 120.311149,\n 51.781767\n ],\n [\n 120.363463,\n 51.789985\n ],\n [\n 120.406818,\n 51.81647\n ],\n [\n 120.400459,\n 51.833457\n ],\n [\n 120.459422,\n 51.845062\n ],\n [\n 120.496996,\n 51.88735\n ],\n [\n 120.533414,\n 51.87915\n ],\n [\n 120.547865,\n 51.907137\n ],\n [\n 120.660876,\n 51.929458\n ],\n [\n 120.661165,\n 51.955578\n ],\n [\n 120.701341,\n 51.980555\n ],\n [\n 120.71955,\n 52.010171\n ],\n [\n 120.686022,\n 52.034976\n ],\n [\n 120.698739,\n 52.056107\n ],\n [\n 120.769552,\n 52.114093\n ],\n [\n 120.763193,\n 52.142777\n ],\n [\n 120.785738,\n 52.165542\n ],\n [\n 120.747008,\n 52.20402\n ],\n [\n 120.758569,\n 52.256346\n ],\n [\n 120.717526,\n 52.260833\n ],\n [\n 120.696138,\n 52.289842\n ],\n [\n 120.628505,\n 52.322753\n ],\n [\n 120.624169,\n 52.361514\n ],\n [\n 120.649315,\n 52.363752\n ],\n [\n 120.648448,\n 52.389619\n ],\n [\n 120.690069,\n 52.430416\n ],\n [\n 120.683132,\n 52.466571\n ],\n [\n 120.706543,\n 52.490147\n ],\n [\n 120.692959,\n 52.518309\n ],\n [\n 120.73429,\n 52.536842\n ],\n [\n 120.629372,\n 52.570265\n ],\n [\n 120.596711,\n 52.592811\n ],\n [\n 120.561161,\n 52.595594\n ],\n [\n 120.4837,\n 52.630084\n ],\n [\n 120.437166,\n 52.639675\n ],\n [\n 120.396702,\n 52.616319\n ],\n [\n 120.286292,\n 52.622993\n ],\n [\n 120.185998,\n 52.579312\n ],\n [\n 120.080502,\n 52.585436\n ],\n [\n 120.049287,\n 52.598515\n ],\n [\n 120.035124,\n 52.646346\n ],\n [\n 120.070675,\n 52.707587\n ],\n [\n 120.031367,\n 52.772762\n ],\n [\n 120.099,\n 52.787309\n ],\n [\n 120.141198,\n 52.812927\n ],\n [\n 120.187732,\n 52.807943\n ],\n [\n 120.222416,\n 52.842819\n ],\n [\n 120.296986,\n 52.869926\n ],\n [\n 120.294963,\n 52.890659\n ],\n [\n 120.344676,\n 52.900884\n ],\n [\n 120.363174,\n 52.941345\n ],\n [\n 120.408263,\n 52.956387\n ],\n [\n 120.453063,\n 53.010028\n ],\n [\n 120.529078,\n 53.045981\n ],\n [\n 120.541507,\n 53.070346\n ],\n [\n 120.611163,\n 53.100336\n ],\n [\n 120.642089,\n 53.105149\n ],\n [\n 120.660009,\n 53.137038\n ],\n [\n 120.686889,\n 53.142396\n ],\n [\n 120.690936,\n 53.172611\n ],\n [\n 120.748164,\n 53.210349\n ],\n [\n 120.814063,\n 53.239692\n ],\n [\n 120.840076,\n 53.241063\n ],\n [\n 120.822734,\n 53.270112\n ],\n [\n 120.93112,\n 53.286957\n ],\n [\n 120.954821,\n 53.298594\n ],\n [\n 121.047022,\n 53.288874\n ],\n [\n 121.096735,\n 53.307354\n ],\n [\n 121.129396,\n 53.277371\n ],\n [\n 121.153674,\n 53.285314\n ],\n [\n 121.234603,\n 53.280932\n ],\n [\n 121.285473,\n 53.291338\n ],\n [\n 121.329405,\n 53.322816\n ],\n [\n 121.416115,\n 53.319395\n ],\n [\n 121.499356,\n 53.337178\n ],\n [\n 121.511495,\n 53.31748\n ],\n [\n 121.579706,\n 53.289285\n ],\n [\n 121.615257,\n 53.259016\n ],\n [\n 121.648207,\n 53.260797\n ],\n [\n 121.678844,\n 53.241337\n ],\n [\n 121.679133,\n 53.199511\n ],\n [\n 121.665259,\n 53.170551\n ],\n [\n 121.719597,\n 53.146243\n ],\n [\n 121.753125,\n 53.147342\n ],\n [\n 121.784629,\n 53.104599\n ],\n [\n 121.775669,\n 53.089746\n ],\n [\n 121.814978,\n 53.069108\n ],\n [\n 121.785496,\n 53.018571\n ],\n [\n 121.715551,\n 52.998037\n ],\n [\n 121.677399,\n 52.948108\n ],\n [\n 121.662369,\n 52.912487\n ],\n [\n 121.610344,\n 52.892317\n ],\n [\n 121.620171,\n 52.851119\n ],\n [\n 121.591268,\n 52.824693\n ],\n [\n 121.482014,\n 52.774286\n ],\n [\n 121.454845,\n 52.735333\n ],\n [\n 121.373049,\n 52.683157\n ],\n [\n 121.321023,\n 52.678852\n ],\n [\n 121.292698,\n 52.651765\n ],\n [\n 121.182289,\n 52.596289\n ],\n [\n 121.232002,\n 52.577642\n ],\n [\n 121.277091,\n 52.587662\n ],\n [\n 121.325648,\n 52.572631\n ],\n [\n 121.353106,\n 52.535728\n ],\n [\n 121.409756,\n 52.523466\n ],\n [\n 121.416404,\n 52.49935\n ],\n [\n 121.49502,\n 52.484847\n ],\n [\n 121.518721,\n 52.456663\n ],\n [\n 121.565255,\n 52.460292\n ],\n [\n 121.5904,\n 52.443123\n ],\n [\n 121.640114,\n 52.444379\n ],\n [\n 121.678844,\n 52.419801\n ],\n [\n 121.658612,\n 52.390318\n ],\n [\n 121.715551,\n 52.343047\n ],\n [\n 121.714106,\n 52.318133\n ],\n [\n 121.769311,\n 52.308191\n ],\n [\n 121.841279,\n 52.282697\n ],\n [\n 121.90082,\n 52.280595\n ],\n [\n 121.947643,\n 52.298387\n ],\n [\n 121.976835,\n 52.343747\n ],\n [\n 122.035508,\n 52.377596\n ],\n [\n 122.040422,\n 52.413096\n ],\n [\n 122.091291,\n 52.427204\n ],\n [\n 122.16933,\n 52.51357\n ],\n [\n 122.207771,\n 52.469222\n ],\n [\n 122.310377,\n 52.475222\n ],\n [\n 122.34217,\n 52.414074\n ],\n [\n 122.367027,\n 52.413794\n ],\n [\n 122.416451,\n 52.37424\n ],\n [\n 122.439863,\n 52.393672\n ],\n [\n 122.484085,\n 52.341508\n ],\n [\n 122.478304,\n 52.296286\n ],\n [\n 122.560678,\n 52.282557\n ],\n [\n 122.585824,\n 52.26644\n ],\n [\n 122.678892,\n 52.276671\n ],\n [\n 122.710685,\n 52.256206\n ],\n [\n 122.760976,\n 52.26686\n ],\n [\n 122.787278,\n 52.252701\n ],\n [\n 122.766179,\n 52.232646\n ],\n [\n 122.769358,\n 52.179729\n ],\n [\n 122.738143,\n 52.153458\n ],\n [\n 122.690742,\n 52.140387\n ],\n [\n 122.629178,\n 52.136592\n ],\n [\n 122.643919,\n 52.111702\n ],\n [\n 122.625132,\n 52.067513\n ],\n [\n 122.650567,\n 52.059064\n ],\n [\n 122.665018,\n 51.99875\n ],\n [\n 122.683805,\n 51.974489\n ],\n [\n 122.726293,\n 51.978862\n ],\n [\n 122.729472,\n 51.919288\n ],\n [\n 122.706061,\n 51.890177\n ],\n [\n 122.725715,\n 51.87816\n ],\n [\n 122.732651,\n 51.832608\n ],\n [\n 122.77196,\n 51.7795\n ],\n [\n 122.749993,\n 51.747746\n ],\n [\n 122.77485,\n 51.703907\n ],\n [\n 122.816181,\n 51.655195\n ],\n [\n 122.820806,\n 51.633165\n ],\n [\n 122.856357,\n 51.606714\n ],\n [\n 122.832656,\n 51.581672\n ],\n [\n 122.873988,\n 51.561172\n ],\n [\n 122.880057,\n 51.511023\n ],\n [\n 122.854623,\n 51.477655\n ],\n [\n 122.900289,\n 51.445261\n ],\n [\n 122.898555,\n 51.422558\n ],\n [\n 122.965899,\n 51.386981\n ],\n [\n 122.960119,\n 51.361675\n ],\n [\n 122.978039,\n 51.331489\n ],\n [\n 123.014457,\n 51.310018\n ],\n [\n 123.059257,\n 51.3219\n ],\n [\n 123.15377,\n 51.300853\n ],\n [\n 123.231519,\n 51.268621\n ],\n [\n 123.294239,\n 51.254145\n ],\n [\n 123.339617,\n 51.27249\n ],\n [\n 123.4402,\n 51.270914\n ],\n [\n 123.465345,\n 51.28739\n ],\n [\n 123.588472,\n 51.142484\n ],\n [\n 123.736456,\n 50.974052\n ],\n [\n 123.772007,\n 50.906507\n ],\n [\n 123.792817,\n 50.891773\n ],\n [\n 123.795419,\n 50.83033\n ],\n [\n 123.825767,\n 50.813835\n ],\n [\n 123.872301,\n 50.765185\n ],\n [\n 124.027511,\n 50.619074\n ],\n [\n 124.020574,\n 50.598143\n ],\n [\n 124.076646,\n 50.564111\n ],\n [\n 124.087051,\n 50.539953\n ],\n [\n 124.026355,\n 50.538352\n ],\n [\n 124.023464,\n 50.51855\n ],\n [\n 123.983578,\n 50.510249\n ],\n [\n 124.003521,\n 50.478922\n ],\n [\n 124.005255,\n 50.434592\n ],\n [\n 123.969994,\n 50.399274\n ],\n [\n 123.939934,\n 50.397376\n ],\n [\n 123.92028,\n 50.372987\n ],\n [\n 123.879527,\n 50.402486\n ],\n [\n 123.840508,\n 50.411536\n ],\n [\n 123.825767,\n 50.449471\n ],\n [\n 123.780389,\n 50.437072\n ],\n [\n 123.787326,\n 50.373717\n ],\n [\n 123.777788,\n 50.344493\n ],\n [\n 123.870278,\n 50.273988\n ],\n [\n 123.862763,\n 50.226389\n ],\n [\n 123.954097,\n 50.186956\n ],\n [\n 124.007568,\n 50.219355\n ],\n [\n 124.061905,\n 50.19898\n ],\n [\n 124.103526,\n 50.222139\n ],\n [\n 124.102659,\n 50.238696\n ],\n [\n 124.189368,\n 50.216864\n ],\n [\n 124.283014,\n 50.230785\n ],\n [\n 124.286483,\n 50.189596\n ],\n [\n 124.327525,\n 50.178449\n ],\n [\n 124.359607,\n 50.199127\n ],\n [\n 124.344289,\n 50.219062\n ],\n [\n 124.368567,\n 50.258176\n ],\n [\n 124.348624,\n 50.292429\n ],\n [\n 124.374059,\n 50.310862\n ],\n [\n 124.347757,\n 50.316566\n ],\n [\n 124.364232,\n 50.360861\n ],\n [\n 124.403829,\n 50.362468\n ],\n [\n 124.439958,\n 50.388615\n ],\n [\n 124.499499,\n 50.398106\n ],\n [\n 124.504701,\n 50.342592\n ],\n [\n 124.578693,\n 50.294623\n ],\n [\n 124.592278,\n 50.243676\n ],\n [\n 124.619735,\n 50.229613\n ],\n [\n 124.575514,\n 50.179623\n ],\n [\n 124.508169,\n 50.162606\n ],\n [\n 124.533315,\n 50.149398\n ],\n [\n 124.555282,\n 50.106229\n ],\n [\n 124.604995,\n 50.07052\n ],\n [\n 124.63939,\n 50.069931\n ],\n [\n 124.680721,\n 50.031693\n ],\n [\n 124.650373,\n 49.99475\n ],\n [\n 124.670894,\n 49.95041\n ],\n [\n 124.66598,\n 49.868104\n ],\n [\n 124.711069,\n 49.82276\n ],\n [\n 124.730723,\n 49.817441\n ],\n [\n 124.720318,\n 49.775008\n ],\n [\n 124.67494,\n 49.774712\n ],\n [\n 124.741418,\n 49.76125\n ],\n [\n 124.82408,\n 49.849942\n ],\n [\n 124.878707,\n 49.834876\n ],\n [\n 124.972642,\n 49.83458\n ],\n [\n 124.97033,\n 49.853339\n ],\n [\n 124.935357,\n 49.866627\n ],\n [\n 124.977267,\n 49.900719\n ],\n [\n 125.0449,\n 49.826898\n ],\n [\n 125.09577,\n 49.795859\n ],\n [\n 125.177855,\n 49.829409\n ],\n [\n 125.222943,\n 49.798964\n ],\n [\n 125.228146,\n 49.774564\n ],\n [\n 125.205313,\n 49.733575\n ],\n [\n 125.224967,\n 49.726468\n ],\n [\n 125.219764,\n 49.669135\n ],\n [\n 125.189994,\n 49.649861\n ],\n [\n 125.164559,\n 49.669431\n ],\n [\n 125.127274,\n 49.655051\n ],\n [\n 125.154154,\n 49.61678\n ],\n [\n 125.168317,\n 49.629985\n ],\n [\n 125.205313,\n 49.59407\n ],\n [\n 125.226412,\n 49.596\n ],\n [\n 125.235661,\n 49.540891\n ],\n [\n 125.212538,\n 49.541337\n ],\n [\n 125.228435,\n 49.48691\n ],\n [\n 125.263986,\n 49.46146\n ],\n [\n 125.257049,\n 49.393976\n ],\n [\n 125.258205,\n 49.314008\n ],\n [\n 125.214851,\n 49.280252\n ],\n [\n 125.233638,\n 49.255442\n ],\n [\n 125.219475,\n 49.189023\n ],\n [\n 125.185369,\n 49.18528\n ],\n [\n 125.160224,\n 49.146342\n ],\n [\n 125.117447,\n 49.125962\n ],\n [\n 125.039409,\n 49.151885\n ],\n [\n 125.039987,\n 49.176297\n ],\n [\n 124.982759,\n 49.16252\n ],\n [\n 124.906454,\n 49.183933\n ],\n [\n 124.860787,\n 49.166564\n ],\n [\n 124.847492,\n 49.129709\n ],\n [\n 124.80934,\n 49.115918\n ],\n [\n 124.828994,\n 49.071974\n ],\n [\n 124.808184,\n 49.020481\n ],\n [\n 124.765407,\n 48.981263\n ],\n [\n 124.744308,\n 48.920496\n ],\n [\n 124.711936,\n 48.921248\n ],\n [\n 124.714827,\n 48.886771\n ],\n [\n 124.697196,\n 48.841871\n ],\n [\n 124.65413,\n 48.834333\n ],\n [\n 124.653552,\n 48.777161\n ],\n [\n 124.613955,\n 48.751193\n ],\n [\n 124.624938,\n 48.700276\n ],\n [\n 124.601816,\n 48.632356\n ],\n [\n 124.578982,\n 48.596468\n ],\n [\n 124.518575,\n 48.554188\n ],\n [\n 124.548923,\n 48.531291\n ],\n [\n 124.534471,\n 48.51779\n ],\n [\n 124.553258,\n 48.46527\n ],\n [\n 124.508748,\n 48.448257\n ],\n [\n 124.526378,\n 48.421664\n ],\n [\n 124.52002,\n 48.374521\n ],\n [\n 124.5469,\n 48.357631\n ],\n [\n 124.541119,\n 48.335253\n ],\n [\n 124.57956,\n 48.297479\n ],\n [\n 124.55875,\n 48.268215\n ],\n [\n 124.578982,\n 48.262116\n ],\n [\n 124.547189,\n 48.200936\n ],\n [\n 124.512505,\n 48.16459\n ],\n [\n 124.531003,\n 48.148699\n ],\n [\n 124.488515,\n 48.126383\n ],\n [\n 124.463948,\n 48.097633\n ],\n [\n 124.416258,\n 48.087995\n ],\n [\n 124.430131,\n 48.121032\n ],\n [\n 124.472619,\n 48.134485\n ],\n [\n 124.476954,\n 48.164131\n ],\n [\n 124.410477,\n 48.190401\n ],\n [\n 124.428397,\n 48.230086\n ],\n [\n 124.404985,\n 48.264251\n ],\n [\n 124.365099,\n 48.284678\n ],\n [\n 124.35585,\n 48.314846\n ],\n [\n 124.318854,\n 48.347128\n ],\n [\n 124.33215,\n 48.379238\n ],\n [\n 124.306715,\n 48.399619\n ],\n [\n 124.330126,\n 48.435646\n ],\n [\n 124.302668,\n 48.456764\n ],\n [\n 124.31423,\n 48.50383\n ],\n [\n 124.259025,\n 48.536447\n ],\n [\n 124.24255,\n 48.522189\n ],\n [\n 124.083294,\n 48.438533\n ],\n [\n 123.979821,\n 48.363718\n ],\n [\n 123.866231,\n 48.27477\n ],\n [\n 123.746283,\n 48.197577\n ],\n [\n 123.705241,\n 48.152061\n ],\n [\n 123.61911,\n 48.077896\n ],\n [\n 123.537603,\n 48.021858\n ],\n [\n 123.300308,\n 47.953642\n ],\n [\n 123.254642,\n 47.874736\n ],\n [\n 123.221692,\n 47.832624\n ],\n [\n 123.165042,\n 47.783091\n ],\n [\n 123.031221,\n 47.741829\n ],\n [\n 122.980929,\n 47.717179\n ],\n [\n 122.857513,\n 47.678333\n ],\n [\n 122.765023,\n 47.61445\n ],\n [\n 122.593049,\n 47.547088\n ],\n [\n 122.543336,\n 47.495426\n ],\n [\n 122.506918,\n 47.401408\n ],\n [\n 122.418186,\n 47.350534\n ],\n [\n 122.308932,\n 47.304271\n ],\n [\n 122.256906,\n 47.260299\n ],\n [\n 122.209505,\n 47.236199\n ],\n [\n 122.146207,\n 47.222201\n ],\n [\n 122.084644,\n 47.180652\n ],\n [\n 122.042156,\n 47.204154\n ],\n [\n 121.840123,\n 47.265739\n ],\n [\n 121.760351,\n 47.280968\n ],\n [\n 121.674219,\n 47.249883\n ],\n [\n 121.639825,\n 47.203064\n ],\n [\n 121.648785,\n 47.179406\n ],\n [\n 121.588955,\n 47.1724\n ],\n [\n 121.551092,\n 47.197773\n ],\n [\n 121.488661,\n 47.183765\n ],\n [\n 121.437503,\n 47.184232\n ],\n [\n 121.368136,\n 47.135175\n ],\n [\n 121.329405,\n 47.136577\n ],\n [\n 121.246453,\n 47.112577\n ],\n [\n 121.172461,\n 47.141251\n ],\n [\n 121.098469,\n 47.151999\n ],\n [\n 121.018119,\n 47.129253\n ],\n [\n 120.976787,\n 47.09652\n ],\n [\n 120.945861,\n 47.099014\n ],\n [\n 120.876494,\n 47.149819\n ],\n [\n 120.823312,\n 47.145613\n ],\n [\n 120.773888,\n 47.176915\n ],\n [\n 120.739204,\n 47.217379\n ],\n [\n 120.623302,\n 47.244285\n ],\n [\n 120.624748,\n 47.300698\n ],\n [\n 120.708277,\n 47.337342\n ],\n [\n 120.733134,\n 47.357672\n ],\n [\n 120.732556,\n 47.384972\n ],\n [\n 120.703364,\n 47.408539\n ],\n [\n 120.725619,\n 47.441545\n ],\n [\n 120.643535,\n 47.506877\n ],\n [\n 120.593532,\n 47.488617\n ],\n [\n 120.582549,\n 47.505329\n ],\n [\n 120.604226,\n 47.532244\n ],\n [\n 120.581104,\n 47.548479\n ],\n [\n 120.525321,\n 47.544769\n ],\n [\n 120.52561,\n 47.574599\n ],\n [\n 120.385719,\n 47.620317\n ],\n [\n 120.344387,\n 47.602405\n ],\n [\n 120.265193,\n 47.65643\n ],\n [\n 120.230509,\n 47.623713\n ],\n [\n 120.200161,\n 47.632975\n ],\n [\n 120.188022,\n 47.615222\n ],\n [\n 120.11403,\n 47.597926\n ],\n [\n 120.023852,\n 47.554044\n ],\n [\n 119.958242,\n 47.581552\n ],\n [\n 119.904482,\n 47.5678\n ],\n [\n 119.853034,\n 47.520954\n ],\n [\n 119.814015,\n 47.49914\n ],\n [\n 119.814304,\n 47.474995\n ],\n [\n 119.764013,\n 47.436123\n ],\n [\n 119.657938,\n 47.410554\n ],\n [\n 119.616896,\n 47.361706\n ],\n [\n 119.486254,\n 47.336721\n ]\n ]\n ],\n [\n [\n [\n 125.177855,\n 49.829409\n ],\n [\n 125.09577,\n 49.795859\n ],\n [\n 125.0449,\n 49.826898\n ],\n [\n 124.977267,\n 49.900719\n ],\n [\n 124.935357,\n 49.866627\n ],\n [\n 124.97033,\n 49.853339\n ],\n [\n 124.972642,\n 49.83458\n ],\n [\n 124.878707,\n 49.834876\n ],\n [\n 124.82408,\n 49.849942\n ],\n [\n 124.741418,\n 49.76125\n ],\n [\n 124.67494,\n 49.774712\n ],\n [\n 124.720318,\n 49.775008\n ],\n [\n 124.730723,\n 49.817441\n ],\n [\n 124.711069,\n 49.82276\n ],\n [\n 124.66598,\n 49.868104\n ],\n [\n 124.670894,\n 49.95041\n ],\n [\n 124.650373,\n 49.99475\n ],\n [\n 124.680721,\n 50.031693\n ],\n [\n 124.63939,\n 50.069931\n ],\n [\n 124.604995,\n 50.07052\n ],\n [\n 124.555282,\n 50.106229\n ],\n [\n 124.533315,\n 50.149398\n ],\n [\n 124.508169,\n 50.162606\n ],\n [\n 124.575514,\n 50.179623\n ],\n [\n 124.619735,\n 50.229613\n ],\n [\n 124.592278,\n 50.243676\n ],\n [\n 124.578693,\n 50.294623\n ],\n [\n 124.504701,\n 50.342592\n ],\n [\n 124.499499,\n 50.398106\n ],\n [\n 124.439958,\n 50.388615\n ],\n [\n 124.416547,\n 50.449617\n ],\n [\n 124.444872,\n 50.476298\n ],\n [\n 124.43331,\n 50.546649\n ],\n [\n 124.393135,\n 50.547522\n ],\n [\n 124.315964,\n 50.532674\n ],\n [\n 124.266539,\n 50.556254\n ],\n [\n 124.183009,\n 50.557709\n ],\n [\n 124.110174,\n 50.569785\n ],\n [\n 124.076646,\n 50.564111\n ],\n [\n 124.020574,\n 50.598143\n ],\n [\n 124.027511,\n 50.619074\n ],\n [\n 123.872301,\n 50.765185\n ],\n [\n 123.825767,\n 50.813835\n ],\n [\n 123.795419,\n 50.83033\n ],\n [\n 123.792817,\n 50.891773\n ],\n [\n 123.772007,\n 50.906507\n ],\n [\n 123.736456,\n 50.974052\n ],\n [\n 123.588472,\n 51.142484\n ],\n [\n 123.465345,\n 51.28739\n ],\n [\n 123.582692,\n 51.294695\n ],\n [\n 123.582403,\n 51.306868\n ],\n [\n 123.661886,\n 51.31918\n ],\n [\n 123.660441,\n 51.342793\n ],\n [\n 123.711022,\n 51.398272\n ],\n [\n 123.794552,\n 51.361246\n ],\n [\n 123.842531,\n 51.367538\n ],\n [\n 123.88762,\n 51.320898\n ],\n [\n 123.926061,\n 51.30071\n ],\n [\n 123.994561,\n 51.322758\n ],\n [\n 124.071733,\n 51.320754\n ],\n [\n 124.090231,\n 51.341362\n ],\n [\n 124.128094,\n 51.347514\n ],\n [\n 124.192548,\n 51.339359\n ],\n [\n 124.239371,\n 51.344653\n ],\n [\n 124.271453,\n 51.308299\n ],\n [\n 124.311628,\n 51.289539\n ],\n [\n 124.339375,\n 51.293406\n ],\n [\n 124.406431,\n 51.27206\n ],\n [\n 124.430131,\n 51.301283\n ],\n [\n 124.426663,\n 51.331918\n ],\n [\n 124.443716,\n 51.358099\n ],\n [\n 124.49025,\n 51.380406\n ],\n [\n 124.55586,\n 51.375402\n ],\n [\n 124.587075,\n 51.363677\n ],\n [\n 124.624649,\n 51.328627\n ],\n [\n 124.693438,\n 51.332777\n ],\n [\n 124.751245,\n 51.356955\n ],\n [\n 124.783616,\n 51.392269\n ],\n [\n 124.864545,\n 51.379691\n ],\n [\n 124.885066,\n 51.408131\n ],\n [\n 124.942583,\n 51.447403\n ],\n [\n 124.917727,\n 51.474231\n ],\n [\n 124.92871,\n 51.498477\n ],\n [\n 124.983626,\n 51.508315\n ],\n [\n 125.004436,\n 51.529266\n ],\n [\n 125.047502,\n 51.529693\n ],\n [\n 125.072936,\n 51.553482\n ],\n [\n 125.05993,\n 51.596756\n ],\n [\n 125.098949,\n 51.658321\n ],\n [\n 125.12843,\n 51.659031\n ],\n [\n 125.130453,\n 51.635439\n ],\n [\n 125.17612,\n 51.639277\n ],\n [\n 125.289132,\n 51.633875\n ],\n [\n 125.316011,\n 51.609986\n ],\n [\n 125.351562,\n 51.623923\n ],\n [\n 125.379598,\n 51.586795\n ],\n [\n 125.424687,\n 51.563023\n ],\n [\n 125.524114,\n 51.49149\n ],\n [\n 125.625853,\n 51.379262\n ],\n [\n 125.669496,\n 51.343222\n ],\n [\n 125.695509,\n 51.337785\n ],\n [\n 125.711117,\n 51.302715\n ],\n [\n 125.76401,\n 51.261455\n ],\n [\n 125.75794,\n 51.227331\n ],\n [\n 125.817769,\n 51.227044\n ],\n [\n 125.851875,\n 51.212555\n ],\n [\n 125.868928,\n 51.140328\n ],\n [\n 125.908814,\n 51.139179\n ],\n [\n 125.946388,\n 51.108128\n ],\n [\n 125.990032,\n 51.119199\n ],\n [\n 125.976158,\n 51.084538\n ],\n [\n 126.009108,\n 51.057193\n ],\n [\n 126.057087,\n 51.045242\n ],\n [\n 126.033676,\n 51.010525\n ],\n [\n 126.072695,\n 50.979243\n ],\n [\n 126.044081,\n 50.928022\n ],\n [\n 126.021247,\n 50.927878\n ],\n [\n 125.995524,\n 50.897118\n ],\n [\n 125.996391,\n 50.871542\n ],\n [\n 125.958817,\n 50.900296\n ],\n [\n 125.945521,\n 50.855495\n ],\n [\n 125.906791,\n 50.855206\n ],\n [\n 125.920375,\n 50.831343\n ],\n [\n 125.878466,\n 50.816585\n ],\n [\n 125.889449,\n 50.804862\n ],\n [\n 125.838869,\n 50.794439\n ],\n [\n 125.840025,\n 50.756202\n ],\n [\n 125.805341,\n 50.772717\n ],\n [\n 125.758518,\n 50.747217\n ],\n [\n 125.794647,\n 50.739971\n ],\n [\n 125.782219,\n 50.724024\n ],\n [\n 125.825284,\n 50.70488\n ],\n [\n 125.787421,\n 50.678037\n ],\n [\n 125.792913,\n 50.644208\n ],\n [\n 125.829331,\n 50.561637\n ],\n [\n 125.752737,\n 50.506898\n ],\n [\n 125.740598,\n 50.523356\n ],\n [\n 125.654467,\n 50.471197\n ],\n [\n 125.632211,\n 50.443928\n ],\n [\n 125.59088,\n 50.452242\n ],\n [\n 125.561977,\n 50.438239\n ],\n [\n 125.574694,\n 50.401318\n ],\n [\n 125.536542,\n 50.420001\n ],\n [\n 125.513131,\n 50.409347\n ],\n [\n 125.537409,\n 50.379852\n ],\n [\n 125.522669,\n 50.367143\n ],\n [\n 125.530473,\n 50.331043\n ],\n [\n 125.466308,\n 50.297403\n ],\n [\n 125.466019,\n 50.266961\n ],\n [\n 125.442896,\n 50.26169\n ],\n [\n 125.464573,\n 50.229906\n ],\n [\n 125.388558,\n 50.178449\n ],\n [\n 125.33422,\n 50.164953\n ],\n [\n 125.375841,\n 50.137362\n ],\n [\n 125.313121,\n 50.139417\n ],\n [\n 125.27757,\n 50.12635\n ],\n [\n 125.257627,\n 50.100794\n ],\n [\n 125.289132,\n 50.091243\n ],\n [\n 125.278726,\n 50.071843\n ],\n [\n 125.337689,\n 50.05964\n ],\n [\n 125.316011,\n 50.045669\n ],\n [\n 125.285663,\n 50.058757\n ],\n [\n 125.256182,\n 50.039049\n ],\n [\n 125.286819,\n 50.034489\n ],\n [\n 125.296646,\n 50.009472\n ],\n [\n 125.242019,\n 49.987829\n ],\n [\n 125.231614,\n 49.957631\n ],\n [\n 125.189994,\n 49.959841\n ],\n [\n 125.225545,\n 49.924612\n ],\n [\n 125.212827,\n 49.907209\n ],\n [\n 125.24173,\n 49.866775\n ],\n [\n 125.2241,\n 49.835762\n ],\n [\n 125.177855,\n 49.829409\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 150800,\n \"name\": \"巴彦淖尔市\",\n \"center\": [\n 107.416959,\n 40.757402\n ],\n \"centroid\": [\n 107.572978,\n 41.453196\n ],\n \"childrenNum\": 7,\n \"level\": \"city\",\n \"subFeatureIndex\": 7,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 106.866578,\n 40.181012\n ],\n [\n 106.740271,\n 40.196234\n ],\n [\n 106.705587,\n 40.262158\n ],\n [\n 106.765706,\n 40.29466\n ],\n [\n 106.820044,\n 40.355252\n ],\n [\n 106.672349,\n 40.375845\n ],\n [\n 106.604426,\n 40.377764\n ],\n [\n 106.528122,\n 40.365375\n ],\n [\n 106.476386,\n 40.319113\n ],\n [\n 106.426961,\n 40.339542\n ],\n [\n 106.32002,\n 40.34024\n ],\n [\n 106.219148,\n 40.461289\n ],\n [\n 106.197182,\n 40.515637\n ],\n [\n 106.268283,\n 40.519294\n ],\n [\n 106.282446,\n 40.548539\n ],\n [\n 106.34979,\n 40.527999\n ],\n [\n 106.37956,\n 40.501009\n ],\n [\n 106.482455,\n 40.502925\n ],\n [\n 106.467137,\n 40.546276\n ],\n [\n 106.321754,\n 40.589425\n ],\n [\n 106.273197,\n 40.591165\n ],\n [\n 106.235334,\n 40.626636\n ],\n [\n 106.237935,\n 40.661221\n ],\n [\n 106.161631,\n 40.68502\n ],\n [\n 106.115097,\n 40.717838\n ],\n [\n 105.944279,\n 40.739534\n ],\n [\n 105.835604,\n 40.781864\n ],\n [\n 105.781266,\n 40.785333\n ],\n [\n 105.697447,\n 40.811168\n ],\n [\n 105.636461,\n 40.854492\n ],\n [\n 105.559001,\n 40.89017\n ],\n [\n 105.503507,\n 40.927559\n ],\n [\n 105.395409,\n 40.984987\n ],\n [\n 105.403213,\n 41.015756\n ],\n [\n 105.379224,\n 41.059464\n ],\n [\n 105.31766,\n 41.113153\n ],\n [\n 105.334424,\n 41.131442\n ],\n [\n 105.317082,\n 41.201446\n ],\n [\n 105.245691,\n 41.32403\n ],\n [\n 105.222858,\n 41.396748\n ],\n [\n 105.201759,\n 41.542456\n ],\n [\n 105.226326,\n 41.67877\n ],\n [\n 105.226615,\n 41.748186\n ],\n [\n 105.291647,\n 41.749894\n ],\n [\n 105.385293,\n 41.79721\n ],\n [\n 105.589638,\n 41.888498\n ],\n [\n 105.741669,\n 41.94934\n ],\n [\n 106.013069,\n 42.032075\n ],\n [\n 106.344877,\n 42.149523\n ],\n [\n 106.613097,\n 42.241832\n ],\n [\n 106.785938,\n 42.291494\n ],\n [\n 107.051269,\n 42.319275\n ],\n [\n 107.271799,\n 42.364138\n ],\n [\n 107.304171,\n 42.412689\n ],\n [\n 107.466317,\n 42.458837\n ],\n [\n 107.501868,\n 42.456809\n ],\n [\n 107.574415,\n 42.413027\n ],\n [\n 107.732804,\n 42.414887\n ],\n [\n 107.939172,\n 42.403726\n ],\n [\n 108.022413,\n 42.433316\n ],\n [\n 108.089179,\n 42.436359\n ],\n [\n 108.23803,\n 42.460358\n ],\n [\n 108.298438,\n 42.438387\n ],\n [\n 108.532842,\n 42.442951\n ],\n [\n 108.704816,\n 42.413365\n ],\n [\n 108.798751,\n 42.415225\n ],\n [\n 108.845574,\n 42.395776\n ],\n [\n 108.983153,\n 42.448866\n ],\n [\n 109.02564,\n 42.458499\n ],\n [\n 109.291549,\n 42.435852\n ],\n [\n 109.379414,\n 42.447345\n ],\n [\n 109.433463,\n 42.427737\n ],\n [\n 109.445313,\n 42.379198\n ],\n [\n 109.477396,\n 42.345181\n ],\n [\n 109.472482,\n 42.314363\n ],\n [\n 109.508611,\n 42.263702\n ],\n [\n 109.539248,\n 42.147315\n ],\n [\n 109.515548,\n 42.139333\n ],\n [\n 109.48809,\n 42.077312\n ],\n [\n 109.375079,\n 41.932985\n ],\n [\n 109.337216,\n 41.898727\n ],\n [\n 109.263513,\n 41.889521\n ],\n [\n 109.259177,\n 41.868374\n ],\n [\n 109.292127,\n 41.854557\n ],\n [\n 109.317272,\n 41.80865\n ],\n [\n 109.367853,\n 41.765784\n ],\n [\n 109.341551,\n 41.742546\n ],\n [\n 109.395022,\n 41.697926\n ],\n [\n 109.423636,\n 41.634448\n ],\n [\n 109.428838,\n 41.552055\n ],\n [\n 109.478263,\n 41.499584\n ],\n [\n 109.66411,\n 41.49907\n ],\n [\n 109.63116,\n 41.426637\n ],\n [\n 109.698794,\n 41.379393\n ],\n [\n 109.696192,\n 41.322998\n ],\n [\n 109.641565,\n 41.31801\n ],\n [\n 109.620466,\n 41.275506\n ],\n [\n 109.667578,\n 41.199723\n ],\n [\n 109.709488,\n 41.152486\n ],\n [\n 109.724806,\n 41.115224\n ],\n [\n 109.657462,\n 41.115914\n ],\n [\n 109.688099,\n 41.07725\n ],\n [\n 109.698794,\n 41.036663\n ],\n [\n 109.735211,\n 41.036318\n ],\n [\n 109.759779,\n 40.999509\n ],\n [\n 109.79822,\n 41.008151\n ],\n [\n 109.8251,\n 40.994496\n ],\n [\n 109.835216,\n 40.945727\n ],\n [\n 109.886953,\n 40.924271\n ],\n [\n 109.867299,\n 40.878049\n ],\n [\n 109.869322,\n 40.841324\n ],\n [\n 109.841575,\n 40.835606\n ],\n [\n 109.79822,\n 40.795911\n ],\n [\n 109.795908,\n 40.76157\n ],\n [\n 109.635496,\n 40.738666\n ],\n [\n 109.545607,\n 40.742831\n ],\n [\n 109.528554,\n 40.732592\n ],\n [\n 109.47913,\n 40.749945\n ],\n [\n 109.41641,\n 40.708463\n ],\n [\n 109.407739,\n 40.628027\n ],\n [\n 109.445602,\n 40.540184\n ],\n [\n 109.437509,\n 40.513722\n ],\n [\n 109.419879,\n 40.473312\n ],\n [\n 109.322475,\n 40.484636\n ],\n [\n 109.157149,\n 40.53357\n ],\n [\n 109.088938,\n 40.532699\n ],\n [\n 109.053387,\n 40.550801\n ],\n [\n 108.998182,\n 40.55724\n ],\n [\n 108.997604,\n 40.530088\n ],\n [\n 108.925635,\n 40.533048\n ],\n [\n 108.92737,\n 40.552194\n ],\n [\n 108.870141,\n 40.570464\n ],\n [\n 108.831122,\n 40.541577\n ],\n [\n 108.778229,\n 40.567158\n ],\n [\n 108.762622,\n 40.62681\n ],\n [\n 108.720134,\n 40.619161\n ],\n [\n 108.656547,\n 40.667128\n ],\n [\n 108.591804,\n 40.658962\n ],\n [\n 108.580243,\n 40.710893\n ],\n [\n 108.483129,\n 40.75463\n ],\n [\n 108.468388,\n 40.785159\n ],\n [\n 108.421565,\n 40.80666\n ],\n [\n 108.338902,\n 40.801633\n ],\n [\n 108.288033,\n 40.819661\n ],\n [\n 108.211728,\n 40.820875\n ],\n [\n 108.211439,\n 40.850681\n ],\n [\n 108.182247,\n 40.888092\n ],\n [\n 108.125308,\n 40.842711\n ],\n [\n 108.088601,\n 40.832314\n ],\n [\n 108.000447,\n 40.846003\n ],\n [\n 107.972122,\n 40.862287\n ],\n [\n 107.899575,\n 40.849295\n ],\n [\n 107.856509,\n 40.874585\n ],\n [\n 107.821247,\n 40.835779\n ],\n [\n 107.747545,\n 40.860728\n ],\n [\n 107.738874,\n 40.874758\n ],\n [\n 107.681067,\n 40.817235\n ],\n [\n 107.679622,\n 40.780824\n ],\n [\n 107.653609,\n 40.772845\n ],\n [\n 107.603896,\n 40.798685\n ],\n [\n 107.612567,\n 40.778049\n ],\n [\n 107.584531,\n 40.739707\n ],\n [\n 107.526725,\n 40.701344\n ],\n [\n 107.485104,\n 40.711067\n ],\n [\n 107.455334,\n 40.680677\n ],\n [\n 107.392325,\n 40.644887\n ],\n [\n 107.286829,\n 40.650969\n ],\n [\n 107.250989,\n 40.58299\n ],\n [\n 107.230757,\n 40.577423\n ],\n [\n 107.169193,\n 40.598295\n ],\n [\n 107.1611,\n 40.525388\n ],\n [\n 107.203877,\n 40.505712\n ],\n [\n 107.18509,\n 40.471744\n ],\n [\n 107.147227,\n 40.464251\n ],\n [\n 107.15214,\n 40.410907\n ],\n [\n 107.114277,\n 40.366945\n ],\n [\n 107.044043,\n 40.35403\n ],\n [\n 107.055026,\n 40.332733\n ],\n [\n 107.013116,\n 40.314572\n ],\n [\n 106.99722,\n 40.262333\n ],\n [\n 106.948663,\n 40.234887\n ],\n [\n 106.922939,\n 40.196934\n ],\n [\n 106.866578,\n 40.181012\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 150900,\n \"name\": \"乌兰察布市\",\n \"center\": [\n 113.114543,\n 41.034126\n ],\n \"centroid\": [\n 112.442779,\n 41.696758\n ],\n \"childrenNum\": 11,\n \"level\": \"city\",\n \"subFeatureIndex\": 8,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 114.807129,\n 42.149523\n ],\n [\n 114.755393,\n 42.115891\n ],\n [\n 114.67562,\n 42.120478\n ],\n [\n 114.624751,\n 42.112153\n ],\n [\n 114.565788,\n 42.133728\n ],\n [\n 114.510872,\n 42.110964\n ],\n [\n 114.502491,\n 42.067111\n ],\n [\n 114.466073,\n 42.038029\n ],\n [\n 114.509427,\n 41.972503\n ],\n [\n 114.421562,\n 41.942185\n ],\n [\n 114.352483,\n 41.953939\n ],\n [\n 114.346703,\n 41.928043\n ],\n [\n 114.200742,\n 41.789867\n ],\n [\n 114.206812,\n 41.738445\n ],\n [\n 114.237449,\n 41.69861\n ],\n [\n 114.215483,\n 41.685099\n ],\n [\n 114.259415,\n 41.62332\n ],\n [\n 114.228778,\n 41.620923\n ],\n [\n 114.221552,\n 41.582215\n ],\n [\n 114.23109,\n 41.513649\n ],\n [\n 114.101315,\n 41.537827\n ],\n [\n 114.032237,\n 41.529597\n ],\n [\n 113.92992,\n 41.484487\n ],\n [\n 113.92096,\n 41.456513\n ],\n [\n 113.871247,\n 41.413412\n ],\n [\n 113.948707,\n 41.392109\n ],\n [\n 113.926741,\n 41.326266\n ],\n [\n 113.899572,\n 41.316289\n ],\n [\n 113.951308,\n 41.282907\n ],\n [\n 113.97154,\n 41.23952\n ],\n [\n 113.992351,\n 41.269825\n ],\n [\n 114.01634,\n 41.232113\n ],\n [\n 113.996686,\n 41.192484\n ],\n [\n 113.961135,\n 41.171281\n ],\n [\n 113.920382,\n 41.171971\n ],\n [\n 113.877894,\n 41.115569\n ],\n [\n 113.820377,\n 41.10159\n ],\n [\n 113.868356,\n 41.068962\n ],\n [\n 113.975587,\n 40.976514\n ],\n [\n 113.991195,\n 40.940191\n ],\n [\n 114.057383,\n 40.925137\n ],\n [\n 114.041486,\n 40.917349\n ],\n [\n 114.055359,\n 40.86783\n ],\n [\n 114.073568,\n 40.857264\n ],\n [\n 114.044665,\n 40.8311\n ],\n [\n 114.134554,\n 40.737798\n ],\n [\n 114.093223,\n 40.731898\n ],\n [\n 114.06403,\n 40.707074\n ],\n [\n 114.070389,\n 40.660352\n ],\n [\n 114.041775,\n 40.608729\n ],\n [\n 114.076748,\n 40.575857\n ],\n [\n 114.062007,\n 40.52887\n ],\n [\n 114.011427,\n 40.515812\n ],\n [\n 113.948707,\n 40.517379\n ],\n [\n 113.890034,\n 40.466517\n ],\n [\n 113.851014,\n 40.460592\n ],\n [\n 113.794942,\n 40.517901\n ],\n [\n 113.763438,\n 40.474009\n ],\n [\n 113.680486,\n 40.444034\n ],\n [\n 113.55996,\n 40.348619\n ],\n [\n 113.387698,\n 40.319113\n ],\n [\n 113.316018,\n 40.320161\n ],\n [\n 113.251275,\n 40.413349\n ],\n [\n 113.11543,\n 40.381079\n ],\n [\n 113.039704,\n 40.370086\n ],\n [\n 112.892876,\n 40.326447\n ],\n [\n 112.848655,\n 40.20708\n ],\n [\n 112.750673,\n 40.168061\n ],\n [\n 112.728707,\n 40.168236\n ],\n [\n 112.629858,\n 40.235761\n ],\n [\n 112.509043,\n 40.270373\n ],\n [\n 112.45615,\n 40.300075\n ],\n [\n 112.418287,\n 40.295358\n ],\n [\n 112.345451,\n 40.25639\n ],\n [\n 112.31019,\n 40.25639\n ],\n [\n 112.289379,\n 40.281032\n ],\n [\n 112.272616,\n 40.357172\n ],\n [\n 112.236198,\n 40.353856\n ],\n [\n 112.264523,\n 40.38736\n ],\n [\n 112.2177,\n 40.42817\n ],\n [\n 112.22348,\n 40.452575\n ],\n [\n 112.183305,\n 40.466168\n ],\n [\n 112.13706,\n 40.508324\n ],\n [\n 112.113648,\n 40.508672\n ],\n [\n 112.052374,\n 40.55985\n ],\n [\n 112.059022,\n 40.584381\n ],\n [\n 112.098619,\n 40.583859\n ],\n [\n 112.087925,\n 40.618813\n ],\n [\n 112.045148,\n 40.655139\n ],\n [\n 112.115672,\n 40.658788\n ],\n [\n 112.130412,\n 40.697697\n ],\n [\n 112.098619,\n 40.74526\n ],\n [\n 112.15209,\n 40.764519\n ],\n [\n 112.17868,\n 40.811514\n ],\n [\n 112.176079,\n 40.85276\n ],\n [\n 112.150933,\n 40.879088\n ],\n [\n 112.125788,\n 40.955933\n ],\n [\n 112.09515,\n 40.943305\n ],\n [\n 112.037055,\n 40.96389\n ],\n [\n 112.010175,\n 41.014719\n ],\n [\n 112.027517,\n 41.048583\n ],\n [\n 111.921732,\n 41.095895\n ],\n [\n 111.877221,\n 41.129027\n ],\n [\n 111.840514,\n 41.252091\n ],\n [\n 111.804096,\n 41.259668\n ],\n [\n 111.730104,\n 41.310956\n ],\n [\n 111.702646,\n 41.29461\n ],\n [\n 111.582409,\n 41.306655\n ],\n [\n 111.525181,\n 41.331426\n ],\n [\n 111.425465,\n 41.31887\n ],\n [\n 111.424887,\n 41.346903\n ],\n [\n 111.387313,\n 41.378705\n ],\n [\n 111.434136,\n 41.425264\n ],\n [\n 111.446565,\n 41.472646\n ],\n [\n 111.441362,\n 41.524282\n ],\n [\n 111.371128,\n 41.635646\n ],\n [\n 111.241353,\n 41.671242\n ],\n [\n 111.150886,\n 41.735026\n ],\n [\n 111.120827,\n 41.771421\n ],\n [\n 111.078917,\n 41.78611\n ],\n [\n 111.039609,\n 41.822818\n ],\n [\n 110.985849,\n 41.9352\n ],\n [\n 110.842201,\n 42.119969\n ],\n [\n 110.784683,\n 42.176347\n ],\n [\n 110.783238,\n 42.239967\n ],\n [\n 110.750867,\n 42.294883\n ],\n [\n 110.72312,\n 42.393916\n ],\n [\n 110.730057,\n 42.442613\n ],\n [\n 110.704911,\n 42.470833\n ],\n [\n 110.639012,\n 42.491779\n ],\n [\n 110.577159,\n 42.573637\n ],\n [\n 110.521954,\n 42.62607\n ],\n [\n 110.438135,\n 42.690414\n ],\n [\n 110.337552,\n 42.738039\n ],\n [\n 110.437268,\n 42.781426\n ],\n [\n 110.46964,\n 42.839059\n ],\n [\n 110.631497,\n 42.936057\n ],\n [\n 110.689303,\n 43.021516\n ],\n [\n 110.68728,\n 43.036418\n ],\n [\n 110.736415,\n 43.089631\n ],\n [\n 110.769943,\n 43.099332\n ],\n [\n 110.820234,\n 43.148982\n ],\n [\n 111.020533,\n 43.33002\n ],\n [\n 111.069668,\n 43.358004\n ],\n [\n 111.150886,\n 43.380315\n ],\n [\n 111.21534,\n 43.279351\n ],\n [\n 111.380087,\n 43.18206\n ],\n [\n 111.506972,\n 43.179387\n ],\n [\n 111.618827,\n 43.054161\n ],\n [\n 111.658135,\n 43.024028\n ],\n [\n 111.75236,\n 42.987514\n ],\n [\n 111.855833,\n 42.839899\n ],\n [\n 111.858434,\n 42.81823\n ],\n [\n 111.934738,\n 42.707415\n ],\n [\n 112.026072,\n 42.602978\n ],\n [\n 112.028962,\n 42.584599\n ],\n [\n 112.180704,\n 42.534662\n ],\n [\n 112.178391,\n 42.511029\n ],\n [\n 112.254407,\n 42.482827\n ],\n [\n 112.398055,\n 42.387318\n ],\n [\n 112.612227,\n 42.341287\n ],\n [\n 112.654715,\n 42.315887\n ],\n [\n 112.636795,\n 42.280311\n ],\n [\n 112.689976,\n 42.254379\n ],\n [\n 112.737956,\n 42.144258\n ],\n [\n 112.790848,\n 42.138144\n ],\n [\n 112.856458,\n 42.115721\n ],\n [\n 112.938832,\n 42.019655\n ],\n [\n 112.965134,\n 41.9977\n ],\n [\n 113.041727,\n 41.986125\n ],\n [\n 113.086527,\n 41.932644\n ],\n [\n 113.127281,\n 41.953939\n ],\n [\n 113.17208,\n 41.950022\n ],\n [\n 113.148669,\n 41.978293\n ],\n [\n 113.22873,\n 42.01489\n ],\n [\n 113.313417,\n 42.105357\n ],\n [\n 113.372379,\n 42.143579\n ],\n [\n 113.572388,\n 42.13186\n ],\n [\n 113.632218,\n 42.104677\n ],\n [\n 113.709389,\n 42.129822\n ],\n [\n 113.743206,\n 42.083432\n ],\n [\n 113.782803,\n 42.067111\n ],\n [\n 113.895236,\n 42.058099\n ],\n [\n 113.914601,\n 41.978122\n ],\n [\n 113.988015,\n 41.952917\n ],\n [\n 114.019231,\n 41.991572\n ],\n [\n 114.058539,\n 41.949681\n ],\n [\n 114.069233,\n 41.999062\n ],\n [\n 114.105362,\n 41.98306\n ],\n [\n 114.065186,\n 42.043302\n ],\n [\n 114.093801,\n 42.065241\n ],\n [\n 114.100159,\n 42.125745\n ],\n [\n 114.131953,\n 42.116911\n ],\n [\n 114.213459,\n 42.125235\n ],\n [\n 114.257103,\n 42.175668\n ],\n [\n 114.320112,\n 42.189416\n ],\n [\n 114.375895,\n 42.1519\n ],\n [\n 114.377051,\n 42.110114\n ],\n [\n 114.44584,\n 42.098729\n ],\n [\n 114.479079,\n 42.115551\n ],\n [\n 114.465206,\n 42.170745\n ],\n [\n 114.437748,\n 42.171424\n ],\n [\n 114.404798,\n 42.200276\n ],\n [\n 114.519832,\n 42.229962\n ],\n [\n 114.575037,\n 42.296577\n ],\n [\n 114.689205,\n 42.26421\n ],\n [\n 114.669551,\n 42.248953\n ],\n [\n 114.68747,\n 42.221142\n ],\n [\n 114.675042,\n 42.19807\n ],\n [\n 114.758572,\n 42.218598\n ],\n [\n 114.809153,\n 42.200106\n ],\n [\n 114.790077,\n 42.187718\n ],\n [\n 114.807129,\n 42.149523\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 152200,\n \"name\": \"兴安盟\",\n \"center\": [\n 122.070317,\n 46.076268\n ],\n \"centroid\": [\n 121.340147,\n 46.24332\n ],\n \"childrenNum\": 6,\n \"level\": \"city\",\n \"subFeatureIndex\": 9,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 122.418186,\n 47.350534\n ],\n [\n 122.462696,\n 47.278482\n ],\n [\n 122.509808,\n 47.242886\n ],\n [\n 122.556342,\n 47.172556\n ],\n [\n 122.596229,\n 47.155115\n ],\n [\n 122.612414,\n 47.128474\n ],\n [\n 122.679759,\n 47.094181\n ],\n [\n 122.702014,\n 47.096676\n ],\n [\n 122.821962,\n 47.065638\n ],\n [\n 122.852021,\n 47.072346\n ],\n [\n 122.845952,\n 47.046757\n ],\n [\n 122.778318,\n 47.002883\n ],\n [\n 122.77485,\n 46.973979\n ],\n [\n 122.802308,\n 46.937396\n ],\n [\n 122.848842,\n 46.939586\n ],\n [\n 122.895376,\n 46.960224\n ],\n [\n 122.893642,\n 46.895155\n ],\n [\n 122.907226,\n 46.807907\n ],\n [\n 122.996537,\n 46.761641\n ],\n [\n 123.026596,\n 46.71879\n ],\n [\n 123.077176,\n 46.745007\n ],\n [\n 123.104056,\n 46.734647\n ],\n [\n 123.171112,\n 46.743908\n ],\n [\n 123.18643,\n 46.786739\n ],\n [\n 123.230941,\n 46.859928\n ],\n [\n 123.295684,\n 46.865253\n ],\n [\n 123.34164,\n 46.826872\n ],\n [\n 123.374589,\n 46.837684\n ],\n [\n 123.406672,\n 46.906423\n ],\n [\n 123.404649,\n 46.93552\n ],\n [\n 123.360427,\n 46.97101\n ],\n [\n 123.304066,\n 46.964914\n ],\n [\n 123.301754,\n 46.999759\n ],\n [\n 123.336437,\n 46.989136\n ],\n [\n 123.427482,\n 46.934425\n ],\n [\n 123.527776,\n 46.958036\n ],\n [\n 123.522284,\n 46.922225\n ],\n [\n 123.483843,\n 46.844734\n ],\n [\n 123.514192,\n 46.826089\n ],\n [\n 123.562749,\n 46.825932\n ],\n [\n 123.576911,\n 46.890616\n ],\n [\n 123.605525,\n 46.891242\n ],\n [\n 123.599167,\n 46.864939\n ],\n [\n 123.625758,\n 46.847711\n ],\n [\n 123.580091,\n 46.827969\n ],\n [\n 123.629226,\n 46.81355\n ],\n [\n 123.631827,\n 46.729466\n ],\n [\n 123.604658,\n 46.690046\n ],\n [\n 123.482109,\n 46.686904\n ],\n [\n 123.366497,\n 46.67779\n ],\n [\n 123.277475,\n 46.661602\n ],\n [\n 123.279209,\n 46.616941\n ],\n [\n 123.22834,\n 46.5883\n ],\n [\n 123.181517,\n 46.613637\n ],\n [\n 123.098565,\n 46.603094\n ],\n [\n 123.077755,\n 46.622132\n ],\n [\n 123.045672,\n 46.617255\n ],\n [\n 123.052898,\n 46.580115\n ],\n [\n 123.007231,\n 46.576966\n ],\n [\n 123.011566,\n 46.434928\n ],\n [\n 123.094807,\n 46.342192\n ],\n [\n 123.140474,\n 46.300274\n ],\n [\n 123.178626,\n 46.24803\n ],\n [\n 123.128624,\n 46.210478\n ],\n [\n 123.127757,\n 46.174646\n ],\n [\n 123.1029,\n 46.17195\n ],\n [\n 123.112438,\n 46.130061\n ],\n [\n 123.069951,\n 46.123552\n ],\n [\n 123.045672,\n 46.100052\n ],\n [\n 122.793059,\n 46.073205\n ],\n [\n 122.82861,\n 45.912329\n ],\n [\n 122.800285,\n 45.856685\n ],\n [\n 122.752305,\n 45.834827\n ],\n [\n 122.792481,\n 45.766165\n ],\n [\n 122.751149,\n 45.736119\n ],\n [\n 122.7419,\n 45.705097\n ],\n [\n 122.671377,\n 45.700619\n ],\n [\n 122.640739,\n 45.771118\n ],\n [\n 122.603454,\n 45.778147\n ],\n [\n 122.554897,\n 45.821421\n ],\n [\n 122.504317,\n 45.787731\n ],\n [\n 122.495935,\n 45.85828\n ],\n [\n 122.445933,\n 45.91695\n ],\n [\n 122.362114,\n 45.917428\n ],\n [\n 122.373097,\n 45.856047\n ],\n [\n 122.337546,\n 45.859875\n ],\n [\n 122.320782,\n 45.830518\n ],\n [\n 122.262687,\n 45.794918\n ],\n [\n 122.200834,\n 45.856845\n ],\n [\n 122.09158,\n 45.882043\n ],\n [\n 122.083488,\n 45.917269\n ],\n [\n 122.040133,\n 45.959001\n ],\n [\n 121.923653,\n 46.004838\n ],\n [\n 121.863824,\n 46.002611\n ],\n [\n 121.843303,\n 46.024403\n ],\n [\n 121.761796,\n 45.998952\n ],\n [\n 121.809197,\n 45.961548\n ],\n [\n 121.821047,\n 45.920615\n ],\n [\n 121.81729,\n 45.875665\n ],\n [\n 121.784918,\n 45.860194\n ],\n [\n 121.754281,\n 45.794918\n ],\n [\n 121.690116,\n 45.76281\n ],\n [\n 121.656878,\n 45.77016\n ],\n [\n 121.644449,\n 45.752423\n ],\n [\n 121.714106,\n 45.701738\n ],\n [\n 121.81122,\n 45.68702\n ],\n [\n 121.812376,\n 45.704777\n ],\n [\n 121.867003,\n 45.719811\n ],\n [\n 121.934058,\n 45.710535\n ],\n [\n 121.970187,\n 45.69278\n ],\n [\n 122.003426,\n 45.623302\n ],\n [\n 121.9962,\n 45.598949\n ],\n [\n 121.96643,\n 45.596064\n ],\n [\n 121.99331,\n 45.552937\n ],\n [\n 122.002559,\n 45.50785\n ],\n [\n 122.023369,\n 45.490191\n ],\n [\n 122.163549,\n 45.443768\n ],\n [\n 122.179735,\n 45.409369\n ],\n [\n 122.146785,\n 45.374465\n ],\n [\n 122.147363,\n 45.295572\n ],\n [\n 122.238986,\n 45.276234\n ],\n [\n 122.230026,\n 45.206887\n ],\n [\n 122.192741,\n 45.180739\n ],\n [\n 122.143317,\n 45.182999\n ],\n [\n 122.109789,\n 45.141979\n ],\n [\n 122.119327,\n 45.068586\n ],\n [\n 122.098806,\n 45.021493\n ],\n [\n 122.074528,\n 45.006597\n ],\n [\n 122.086667,\n 44.952971\n ],\n [\n 122.079152,\n 44.914218\n ],\n [\n 122.049671,\n 44.912758\n ],\n [\n 122.114992,\n 44.776671\n ],\n [\n 122.169041,\n 44.770167\n ],\n [\n 122.142739,\n 44.753742\n ],\n [\n 122.110656,\n 44.767891\n ],\n [\n 122.102853,\n 44.736336\n ],\n [\n 122.152566,\n 44.743819\n ],\n [\n 122.161526,\n 44.7282\n ],\n [\n 122.117304,\n 44.702158\n ],\n [\n 122.103142,\n 44.673988\n ],\n [\n 122.131756,\n 44.577485\n ],\n [\n 122.195921,\n 44.559863\n ],\n [\n 122.223957,\n 44.526235\n ],\n [\n 122.228003,\n 44.480168\n ],\n [\n 122.286098,\n 44.477717\n ],\n [\n 122.29448,\n 44.411001\n ],\n [\n 122.29159,\n 44.310292\n ],\n [\n 122.274537,\n 44.25405\n ],\n [\n 122.22598,\n 44.263564\n ],\n [\n 122.167596,\n 44.25569\n ],\n [\n 122.017877,\n 44.304392\n ],\n [\n 121.933769,\n 44.351252\n ],\n [\n 121.881166,\n 44.402983\n ],\n [\n 121.829429,\n 44.411328\n ],\n [\n 121.778271,\n 44.446494\n ],\n [\n 121.760062,\n 44.47739\n ],\n [\n 121.697631,\n 44.534562\n ],\n [\n 121.651097,\n 44.563126\n ],\n [\n 121.585198,\n 44.639774\n ],\n [\n 121.595603,\n 44.659164\n ],\n [\n 121.548491,\n 44.667472\n ],\n [\n 121.529993,\n 44.720389\n ],\n [\n 121.409178,\n 44.790815\n ],\n [\n 121.420161,\n 44.817953\n ],\n [\n 121.401663,\n 44.85125\n ],\n [\n 121.239806,\n 44.934165\n ],\n [\n 121.032859,\n 44.9985\n ],\n [\n 120.977076,\n 45.072953\n ],\n [\n 120.97303,\n 45.11871\n ],\n [\n 120.947884,\n 45.120973\n ],\n [\n 120.97303,\n 45.157002\n ],\n [\n 120.967827,\n 45.184129\n ],\n [\n 120.882274,\n 45.217537\n ],\n [\n 120.834873,\n 45.216084\n ],\n [\n 120.82678,\n 45.253504\n ],\n [\n 120.744406,\n 45.260115\n ],\n [\n 120.660298,\n 45.297666\n ],\n [\n 120.580526,\n 45.352901\n ],\n [\n 120.554224,\n 45.357569\n ],\n [\n 120.559716,\n 45.416604\n ],\n [\n 120.49584,\n 45.464173\n ],\n [\n 120.434854,\n 45.464495\n ],\n [\n 120.414044,\n 45.503516\n ],\n [\n 120.35855,\n 45.516838\n ],\n [\n 120.318375,\n 45.556626\n ],\n [\n 120.269239,\n 45.552135\n ],\n [\n 120.165766,\n 45.594782\n ],\n [\n 120.142644,\n 45.584204\n ],\n [\n 120.027031,\n 45.594942\n ],\n [\n 119.994082,\n 45.580837\n ],\n [\n 119.994082,\n 45.552937\n ],\n [\n 120.028765,\n 45.526306\n ],\n [\n 120.031656,\n 45.499342\n ],\n [\n 120.002464,\n 45.482162\n ],\n [\n 119.906794,\n 45.505603\n ],\n [\n 119.918355,\n 45.561918\n ],\n [\n 119.877602,\n 45.549088\n ],\n [\n 119.819507,\n 45.572821\n ],\n [\n 119.790893,\n 45.564323\n ],\n [\n 119.656493,\n 45.623463\n ],\n [\n 119.566027,\n 45.65565\n ],\n [\n 119.596086,\n 45.670057\n ],\n [\n 119.681639,\n 45.669417\n ],\n [\n 119.708808,\n 45.703178\n ],\n [\n 119.700426,\n 45.736439\n ],\n [\n 119.751585,\n 45.76297\n ],\n [\n 119.807946,\n 45.820463\n ],\n [\n 119.829912,\n 45.974603\n ],\n [\n 119.807657,\n 45.991314\n ],\n [\n 119.833669,\n 46.004838\n ],\n [\n 119.855058,\n 46.107992\n ],\n [\n 119.879336,\n 46.144344\n ],\n [\n 119.850433,\n 46.18321\n ],\n [\n 119.889452,\n 46.209686\n ],\n [\n 119.835693,\n 46.235357\n ],\n [\n 119.837716,\n 46.320683\n ],\n [\n 119.874134,\n 46.345512\n ],\n [\n 119.838294,\n 46.37586\n ],\n [\n 119.900147,\n 46.403507\n ],\n [\n 119.961421,\n 46.39561\n ],\n [\n 119.984544,\n 46.418667\n ],\n [\n 119.909396,\n 46.429088\n ],\n [\n 119.948704,\n 46.493617\n ],\n [\n 119.907083,\n 46.53775\n ],\n [\n 119.952461,\n 46.604196\n ],\n [\n 119.906794,\n 46.668518\n ],\n [\n 119.935119,\n 46.712822\n ],\n [\n 119.91691,\n 46.758346\n ],\n [\n 119.936275,\n 46.790189\n ],\n [\n 119.920379,\n 46.853193\n ],\n [\n 119.928761,\n 46.903762\n ],\n [\n 119.859682,\n 46.917062\n ],\n [\n 119.844942,\n 46.96507\n ],\n [\n 119.794939,\n 47.013035\n ],\n [\n 119.8065,\n 47.054872\n ],\n [\n 119.762857,\n 47.130968\n ],\n [\n 119.716034,\n 47.195595\n ],\n [\n 119.62181,\n 47.248484\n ],\n [\n 119.557356,\n 47.257656\n ],\n [\n 119.561113,\n 47.301164\n ],\n [\n 119.486254,\n 47.336721\n ],\n [\n 119.616896,\n 47.361706\n ],\n [\n 119.657938,\n 47.410554\n ],\n [\n 119.764013,\n 47.436123\n ],\n [\n 119.814304,\n 47.474995\n ],\n [\n 119.814015,\n 47.49914\n ],\n [\n 119.853034,\n 47.520954\n ],\n [\n 119.904482,\n 47.5678\n ],\n [\n 119.958242,\n 47.581552\n ],\n [\n 120.023852,\n 47.554044\n ],\n [\n 120.11403,\n 47.597926\n ],\n [\n 120.188022,\n 47.615222\n ],\n [\n 120.200161,\n 47.632975\n ],\n [\n 120.230509,\n 47.623713\n ],\n [\n 120.265193,\n 47.65643\n ],\n [\n 120.344387,\n 47.602405\n ],\n [\n 120.385719,\n 47.620317\n ],\n [\n 120.52561,\n 47.574599\n ],\n [\n 120.525321,\n 47.544769\n ],\n [\n 120.581104,\n 47.548479\n ],\n [\n 120.604226,\n 47.532244\n ],\n [\n 120.582549,\n 47.505329\n ],\n [\n 120.593532,\n 47.488617\n ],\n [\n 120.643535,\n 47.506877\n ],\n [\n 120.725619,\n 47.441545\n ],\n [\n 120.703364,\n 47.408539\n ],\n [\n 120.732556,\n 47.384972\n ],\n [\n 120.733134,\n 47.357672\n ],\n [\n 120.708277,\n 47.337342\n ],\n [\n 120.624748,\n 47.300698\n ],\n [\n 120.623302,\n 47.244285\n ],\n [\n 120.739204,\n 47.217379\n ],\n [\n 120.773888,\n 47.176915\n ],\n [\n 120.823312,\n 47.145613\n ],\n [\n 120.876494,\n 47.149819\n ],\n [\n 120.945861,\n 47.099014\n ],\n [\n 120.976787,\n 47.09652\n ],\n [\n 121.018119,\n 47.129253\n ],\n [\n 121.098469,\n 47.151999\n ],\n [\n 121.172461,\n 47.141251\n ],\n [\n 121.246453,\n 47.112577\n ],\n [\n 121.329405,\n 47.136577\n ],\n [\n 121.368136,\n 47.135175\n ],\n [\n 121.437503,\n 47.184232\n ],\n [\n 121.488661,\n 47.183765\n ],\n [\n 121.551092,\n 47.197773\n ],\n [\n 121.588955,\n 47.1724\n ],\n [\n 121.648785,\n 47.179406\n ],\n [\n 121.639825,\n 47.203064\n ],\n [\n 121.674219,\n 47.249883\n ],\n [\n 121.760351,\n 47.280968\n ],\n [\n 121.840123,\n 47.265739\n ],\n [\n 122.042156,\n 47.204154\n ],\n [\n 122.084644,\n 47.180652\n ],\n [\n 122.146207,\n 47.222201\n ],\n [\n 122.209505,\n 47.236199\n ],\n [\n 122.256906,\n 47.260299\n ],\n [\n 122.308932,\n 47.304271\n ],\n [\n 122.418186,\n 47.350534\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 152500,\n \"name\": \"锡林郭勒盟\",\n \"center\": [\n 116.090996,\n 43.944018\n ],\n \"centroid\": [\n 115.515195,\n 44.233018\n ],\n \"childrenNum\": 12,\n \"level\": \"city\",\n \"subFeatureIndex\": 10,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 116.893645,\n 42.387826\n ],\n [\n 116.884974,\n 42.353306\n ],\n [\n 116.918502,\n 42.229962\n ],\n [\n 116.903472,\n 42.190773\n ],\n [\n 116.789305,\n 42.200276\n ],\n [\n 116.825145,\n 42.155636\n ],\n [\n 116.85029,\n 42.156315\n ],\n [\n 116.890755,\n 42.092611\n ],\n [\n 116.879482,\n 42.018463\n ],\n [\n 116.832081,\n 42.00536\n ],\n [\n 116.814161,\n 41.981868\n ],\n [\n 116.766471,\n 41.990381\n ],\n [\n 116.727452,\n 41.951044\n ],\n [\n 116.652304,\n 41.943889\n ],\n [\n 116.640743,\n 41.930429\n ],\n [\n 116.566462,\n 41.928725\n ],\n [\n 116.533801,\n 41.938948\n ],\n [\n 116.514147,\n 41.970119\n ],\n [\n 116.482643,\n 41.975909\n ],\n [\n 116.427438,\n 41.938948\n ],\n [\n 116.386684,\n 41.952406\n ],\n [\n 116.414431,\n 41.986976\n ],\n [\n 116.373678,\n 42.009955\n ],\n [\n 116.327144,\n 42.0057\n ],\n [\n 116.298241,\n 41.968076\n ],\n [\n 116.233498,\n 41.941504\n ],\n [\n 116.19419,\n 41.861893\n ],\n [\n 116.123088,\n 41.861722\n ],\n [\n 116.106902,\n 41.831522\n ],\n [\n 116.128869,\n 41.806089\n ],\n [\n 116.098809,\n 41.776546\n ],\n [\n 116.016725,\n 41.777058\n ],\n [\n 115.995047,\n 41.828621\n ],\n [\n 115.946779,\n 41.885599\n ],\n [\n 115.916431,\n 41.945081\n ],\n [\n 115.853133,\n 41.927703\n ],\n [\n 115.837236,\n 41.937756\n ],\n [\n 115.724514,\n 41.868033\n ],\n [\n 115.688096,\n 41.867692\n ],\n [\n 115.653991,\n 41.828962\n ],\n [\n 115.574218,\n 41.805406\n ],\n [\n 115.51988,\n 41.767834\n ],\n [\n 115.429991,\n 41.728702\n ],\n [\n 115.347039,\n 41.71229\n ],\n [\n 115.319003,\n 41.691427\n ],\n [\n 115.362358,\n 41.668163\n ],\n [\n 115.345594,\n 41.635646\n ],\n [\n 115.377677,\n 41.602428\n ],\n [\n 115.310911,\n 41.592665\n ],\n [\n 115.290389,\n 41.622977\n ],\n [\n 115.264377,\n 41.613046\n ],\n [\n 115.257729,\n 41.581187\n ],\n [\n 115.204258,\n 41.571421\n ],\n [\n 115.195009,\n 41.602086\n ],\n [\n 115.087779,\n 41.622806\n ],\n [\n 115.055985,\n 41.602257\n ],\n [\n 115.025059,\n 41.615272\n ],\n [\n 114.8606,\n 41.601058\n ],\n [\n 114.895573,\n 41.636502\n ],\n [\n 114.902799,\n 41.689375\n ],\n [\n 114.896151,\n 41.767663\n ],\n [\n 114.867248,\n 41.803016\n ],\n [\n 114.922453,\n 41.825207\n ],\n [\n 114.939217,\n 41.846197\n ],\n [\n 114.921586,\n 41.875879\n ],\n [\n 114.916961,\n 41.981017\n ],\n [\n 114.901932,\n 42.015571\n ],\n [\n 114.860889,\n 42.054868\n ],\n [\n 114.856265,\n 42.109944\n ],\n [\n 114.807129,\n 42.149523\n ],\n [\n 114.790077,\n 42.187718\n ],\n [\n 114.809153,\n 42.200106\n ],\n [\n 114.758572,\n 42.218598\n ],\n [\n 114.675042,\n 42.19807\n ],\n [\n 114.68747,\n 42.221142\n ],\n [\n 114.669551,\n 42.248953\n ],\n [\n 114.689205,\n 42.26421\n ],\n [\n 114.575037,\n 42.296577\n ],\n [\n 114.519832,\n 42.229962\n ],\n [\n 114.404798,\n 42.200276\n ],\n [\n 114.437748,\n 42.171424\n ],\n [\n 114.465206,\n 42.170745\n ],\n [\n 114.479079,\n 42.115551\n ],\n [\n 114.44584,\n 42.098729\n ],\n [\n 114.377051,\n 42.110114\n ],\n [\n 114.375895,\n 42.1519\n ],\n [\n 114.320112,\n 42.189416\n ],\n [\n 114.257103,\n 42.175668\n ],\n [\n 114.213459,\n 42.125235\n ],\n [\n 114.131953,\n 42.116911\n ],\n [\n 114.100159,\n 42.125745\n ],\n [\n 114.093801,\n 42.065241\n ],\n [\n 114.065186,\n 42.043302\n ],\n [\n 114.105362,\n 41.98306\n ],\n [\n 114.069233,\n 41.999062\n ],\n [\n 114.058539,\n 41.949681\n ],\n [\n 114.019231,\n 41.991572\n ],\n [\n 113.988015,\n 41.952917\n ],\n [\n 113.914601,\n 41.978122\n ],\n [\n 113.895236,\n 42.058099\n ],\n [\n 113.782803,\n 42.067111\n ],\n [\n 113.743206,\n 42.083432\n ],\n [\n 113.709389,\n 42.129822\n ],\n [\n 113.632218,\n 42.104677\n ],\n [\n 113.572388,\n 42.13186\n ],\n [\n 113.372379,\n 42.143579\n ],\n [\n 113.313417,\n 42.105357\n ],\n [\n 113.22873,\n 42.01489\n ],\n [\n 113.148669,\n 41.978293\n ],\n [\n 113.17208,\n 41.950022\n ],\n [\n 113.127281,\n 41.953939\n ],\n [\n 113.086527,\n 41.932644\n ],\n [\n 113.041727,\n 41.986125\n ],\n [\n 112.965134,\n 41.9977\n ],\n [\n 112.938832,\n 42.019655\n ],\n [\n 112.856458,\n 42.115721\n ],\n [\n 112.790848,\n 42.138144\n ],\n [\n 112.737956,\n 42.144258\n ],\n [\n 112.689976,\n 42.254379\n ],\n [\n 112.636795,\n 42.280311\n ],\n [\n 112.654715,\n 42.315887\n ],\n [\n 112.612227,\n 42.341287\n ],\n [\n 112.398055,\n 42.387318\n ],\n [\n 112.254407,\n 42.482827\n ],\n [\n 112.178391,\n 42.511029\n ],\n [\n 112.180704,\n 42.534662\n ],\n [\n 112.028962,\n 42.584599\n ],\n [\n 112.026072,\n 42.602978\n ],\n [\n 111.934738,\n 42.707415\n ],\n [\n 111.858434,\n 42.81823\n ],\n [\n 111.855833,\n 42.839899\n ],\n [\n 111.75236,\n 42.987514\n ],\n [\n 111.658135,\n 43.024028\n ],\n [\n 111.618827,\n 43.054161\n ],\n [\n 111.506972,\n 43.179387\n ],\n [\n 111.380087,\n 43.18206\n ],\n [\n 111.21534,\n 43.279351\n ],\n [\n 111.150886,\n 43.380315\n ],\n [\n 111.183546,\n 43.396128\n ],\n [\n 111.354075,\n 43.436057\n ],\n [\n 111.40032,\n 43.472802\n ],\n [\n 111.456681,\n 43.494406\n ],\n [\n 111.564489,\n 43.490252\n ],\n [\n 111.643973,\n 43.543734\n ],\n [\n 111.794269,\n 43.671931\n ],\n [\n 111.891673,\n 43.674085\n ],\n [\n 111.950924,\n 43.693133\n ],\n [\n 111.970578,\n 43.748421\n ],\n [\n 111.959884,\n 43.82316\n ],\n [\n 111.870284,\n 43.940206\n ],\n [\n 111.77317,\n 44.010587\n ],\n [\n 111.702357,\n 44.033974\n ],\n [\n 111.663049,\n 44.061138\n ],\n [\n 111.559287,\n 44.17131\n ],\n [\n 111.541656,\n 44.20662\n ],\n [\n 111.534141,\n 44.262088\n ],\n [\n 111.506683,\n 44.294229\n ],\n [\n 111.428645,\n 44.31947\n ],\n [\n 111.415927,\n 44.357148\n ],\n [\n 111.4272,\n 44.39431\n ],\n [\n 111.478358,\n 44.488829\n ],\n [\n 111.514487,\n 44.507453\n ],\n [\n 111.530673,\n 44.550233\n ],\n [\n 111.569981,\n 44.57618\n ],\n [\n 111.560732,\n 44.646944\n ],\n [\n 111.624608,\n 44.778297\n ],\n [\n 111.692241,\n 44.86018\n ],\n [\n 111.764499,\n 44.969339\n ],\n [\n 111.903523,\n 45.052245\n ],\n [\n 112.002661,\n 45.090743\n ],\n [\n 112.071161,\n 45.096079\n ],\n [\n 112.113648,\n 45.073115\n ],\n [\n 112.39661,\n 45.064542\n ],\n [\n 112.438808,\n 45.071498\n ],\n [\n 112.540547,\n 45.001091\n ],\n [\n 112.599799,\n 44.930598\n ],\n [\n 112.712232,\n 44.879335\n ],\n [\n 112.850678,\n 44.840695\n ],\n [\n 112.937965,\n 44.840208\n ],\n [\n 113.03797,\n 44.822502\n ],\n [\n 113.129015,\n 44.796991\n ],\n [\n 113.504177,\n 44.777484\n ],\n [\n 113.540595,\n 44.759434\n ],\n [\n 113.631062,\n 44.745446\n ],\n [\n 113.71228,\n 44.788214\n ],\n [\n 113.798989,\n 44.849464\n ],\n [\n 113.861998,\n 44.863265\n ],\n [\n 113.907376,\n 44.915191\n ],\n [\n 114.065186,\n 44.931246\n ],\n [\n 114.116923,\n 44.956861\n ],\n [\n 114.190915,\n 45.03671\n ],\n [\n 114.313464,\n 45.107396\n ],\n [\n 114.347281,\n 45.119357\n ],\n [\n 114.409712,\n 45.179609\n ],\n [\n 114.459714,\n 45.213342\n ],\n [\n 114.519543,\n 45.283809\n ],\n [\n 114.539776,\n 45.326015\n ],\n [\n 114.551048,\n 45.387657\n ],\n [\n 114.744988,\n 45.438304\n ],\n [\n 114.920719,\n 45.386049\n ],\n [\n 114.974189,\n 45.37704\n ],\n [\n 115.16784,\n 45.396343\n ],\n [\n 115.36467,\n 45.392322\n ],\n [\n 115.530285,\n 45.428982\n ],\n [\n 115.699657,\n 45.459515\n ],\n [\n 115.863827,\n 45.572982\n ],\n [\n 115.936663,\n 45.632913\n ],\n [\n 116.026841,\n 45.661093\n ],\n [\n 116.035512,\n 45.6851\n ],\n [\n 116.115573,\n 45.679659\n ],\n [\n 116.174246,\n 45.68862\n ],\n [\n 116.217312,\n 45.722369\n ],\n [\n 116.223093,\n 45.747309\n ],\n [\n 116.260956,\n 45.775911\n ],\n [\n 116.286969,\n 45.775112\n ],\n [\n 116.288703,\n 45.838976\n ],\n [\n 116.243036,\n 45.876143\n ],\n [\n 116.27165,\n 45.966802\n ],\n [\n 116.414142,\n 46.134029\n ],\n [\n 116.439577,\n 46.137679\n ],\n [\n 116.536113,\n 46.232664\n ],\n [\n 116.573398,\n 46.258958\n ],\n [\n 116.585249,\n 46.292361\n ],\n [\n 116.673403,\n 46.325112\n ],\n [\n 116.745661,\n 46.327801\n ],\n [\n 116.813294,\n 46.355946\n ],\n [\n 116.82659,\n 46.380443\n ],\n [\n 117.097412,\n 46.357211\n ],\n [\n 117.247708,\n 46.367011\n ],\n [\n 117.371991,\n 46.360214\n ],\n [\n 117.375749,\n 46.416457\n ],\n [\n 117.392224,\n 46.463176\n ],\n [\n 117.447718,\n 46.528138\n ],\n [\n 117.419971,\n 46.582004\n ],\n [\n 117.495697,\n 46.600577\n ],\n [\n 117.595991,\n 46.603567\n ],\n [\n 117.630096,\n 46.591606\n ],\n [\n 117.641079,\n 46.558228\n ],\n [\n 117.703799,\n 46.516791\n ],\n [\n 117.769987,\n 46.537592\n ],\n [\n 117.813342,\n 46.530817\n ],\n [\n 117.870859,\n 46.54988\n ],\n [\n 117.868547,\n 46.575706\n ],\n [\n 117.914503,\n 46.607973\n ],\n [\n 117.982425,\n 46.614895\n ],\n [\n 117.993119,\n 46.63157\n ],\n [\n 118.04659,\n 46.631412\n ],\n [\n 118.124339,\n 46.678262\n ],\n [\n 118.19284,\n 46.682819\n ],\n [\n 118.238796,\n 46.709524\n ],\n [\n 118.316545,\n 46.739513\n ],\n [\n 118.410191,\n 46.72821\n ],\n [\n 118.446609,\n 46.704498\n ],\n [\n 118.585922,\n 46.693031\n ],\n [\n 118.638815,\n 46.721459\n ],\n [\n 118.676967,\n 46.698058\n ],\n [\n 118.787955,\n 46.687061\n ],\n [\n 118.788244,\n 46.717533\n ],\n [\n 118.845183,\n 46.771838\n ],\n [\n 118.91455,\n 46.774976\n ],\n [\n 118.912527,\n 46.733391\n ],\n [\n 118.950968,\n 46.722087\n ],\n [\n 119.011376,\n 46.745634\n ],\n [\n 119.040857,\n 46.708896\n ],\n [\n 119.123231,\n 46.642893\n ],\n [\n 119.152423,\n 46.658301\n ],\n [\n 119.262833,\n 46.648868\n ],\n [\n 119.313413,\n 46.610805\n ],\n [\n 119.357924,\n 46.6193\n ],\n [\n 119.37411,\n 46.603252\n ],\n [\n 119.431916,\n 46.638647\n ],\n [\n 119.491746,\n 46.62921\n ],\n [\n 119.558223,\n 46.633772\n ],\n [\n 119.598976,\n 46.618199\n ],\n [\n 119.656782,\n 46.625593\n ],\n [\n 119.677593,\n 46.58468\n ],\n [\n 119.739734,\n 46.615367\n ],\n [\n 119.783667,\n 46.625907\n ],\n [\n 119.813437,\n 46.668361\n ],\n [\n 119.804188,\n 46.681719\n ],\n [\n 119.906794,\n 46.668518\n ],\n [\n 119.952461,\n 46.604196\n ],\n [\n 119.907083,\n 46.53775\n ],\n [\n 119.948704,\n 46.493617\n ],\n [\n 119.909396,\n 46.429088\n ],\n [\n 119.984544,\n 46.418667\n ],\n [\n 119.961421,\n 46.39561\n ],\n [\n 119.900147,\n 46.403507\n ],\n [\n 119.838294,\n 46.37586\n ],\n [\n 119.874134,\n 46.345512\n ],\n [\n 119.837716,\n 46.320683\n ],\n [\n 119.835693,\n 46.235357\n ],\n [\n 119.889452,\n 46.209686\n ],\n [\n 119.850433,\n 46.18321\n ],\n [\n 119.879336,\n 46.144344\n ],\n [\n 119.855058,\n 46.107992\n ],\n [\n 119.833669,\n 46.004838\n ],\n [\n 119.807657,\n 45.991314\n ],\n [\n 119.829912,\n 45.974603\n ],\n [\n 119.807946,\n 45.820463\n ],\n [\n 119.751585,\n 45.76297\n ],\n [\n 119.700426,\n 45.736439\n ],\n [\n 119.708808,\n 45.703178\n ],\n [\n 119.681639,\n 45.669417\n ],\n [\n 119.596086,\n 45.670057\n ],\n [\n 119.566027,\n 45.65565\n ],\n [\n 119.544927,\n 45.635956\n ],\n [\n 119.55909,\n 45.615933\n ],\n [\n 119.496081,\n 45.550691\n ],\n [\n 119.396943,\n 45.511863\n ],\n [\n 119.304742,\n 45.468029\n ],\n [\n 119.313413,\n 45.385244\n ],\n [\n 119.248381,\n 45.304111\n ],\n [\n 119.323818,\n 45.245925\n ],\n [\n 119.311101,\n 45.186551\n ],\n [\n 119.360814,\n 45.165884\n ],\n [\n 119.373243,\n 45.105456\n ],\n [\n 119.342027,\n 45.076026\n ],\n [\n 119.293181,\n 45.087347\n ],\n [\n 119.28769,\n 45.121943\n ],\n [\n 119.215432,\n 45.152802\n ],\n [\n 119.159071,\n 45.099959\n ],\n [\n 119.156759,\n 45.074409\n ],\n [\n 119.196934,\n 45.03234\n ],\n [\n 119.231907,\n 45.019065\n ],\n [\n 119.208495,\n 44.997366\n ],\n [\n 119.171788,\n 45.015989\n ],\n [\n 119.15329,\n 44.992993\n ],\n [\n 119.18624,\n 44.952971\n ],\n [\n 119.230172,\n 44.9353\n ],\n [\n 119.224681,\n 44.909676\n ],\n [\n 119.146642,\n 44.924922\n ],\n [\n 119.107334,\n 44.920543\n ],\n [\n 119.082188,\n 44.938381\n ],\n [\n 119.067448,\n 44.870895\n ],\n [\n 119.14751,\n 44.808692\n ],\n [\n 119.173233,\n 44.76041\n ],\n [\n 119.125832,\n 44.762199\n ],\n [\n 119.148377,\n 44.731617\n ],\n [\n 119.074674,\n 44.712739\n ],\n [\n 119.001549,\n 44.713879\n ],\n [\n 118.97149,\n 44.729827\n ],\n [\n 118.926112,\n 44.7046\n ],\n [\n 118.96831,\n 44.691087\n ],\n [\n 119.001549,\n 44.648248\n ],\n [\n 118.981606,\n 44.566064\n ],\n [\n 118.904723,\n 44.516436\n ],\n [\n 118.816569,\n 44.49128\n ],\n [\n 118.789111,\n 44.46317\n ],\n [\n 118.75067,\n 44.477554\n ],\n [\n 118.659336,\n 44.453361\n ],\n [\n 118.635635,\n 44.472814\n ],\n [\n 118.596038,\n 44.468728\n ],\n [\n 118.54777,\n 44.442243\n ],\n [\n 118.544591,\n 44.411165\n ],\n [\n 118.476957,\n 44.399383\n ],\n [\n 118.466552,\n 44.354036\n ],\n [\n 118.428111,\n 44.346174\n ],\n [\n 118.414816,\n 44.322419\n ],\n [\n 118.34198,\n 44.319961\n ],\n [\n 118.250935,\n 44.337493\n ],\n [\n 118.214228,\n 44.306195\n ],\n [\n 118.237351,\n 44.279144\n ],\n [\n 118.19284,\n 44.242565\n ],\n [\n 118.172608,\n 44.204321\n ],\n [\n 118.148907,\n 44.215157\n ],\n [\n 118.128675,\n 44.190692\n ],\n [\n 118.116825,\n 44.132362\n ],\n [\n 118.06162,\n 44.100461\n ],\n [\n 117.962193,\n 44.121182\n ],\n [\n 117.904098,\n 44.121182\n ],\n [\n 117.859876,\n 44.072987\n ],\n [\n 117.827793,\n 44.063113\n ],\n [\n 117.790219,\n 44.019482\n ],\n [\n 117.700331,\n 44.016353\n ],\n [\n 117.643392,\n 44.042207\n ],\n [\n 117.686746,\n 44.095033\n ],\n [\n 117.624894,\n 44.128745\n ],\n [\n 117.634721,\n 44.14847\n ],\n [\n 117.550613,\n 44.187736\n ],\n [\n 117.522866,\n 44.226811\n ],\n [\n 117.452631,\n 44.235017\n ],\n [\n 117.206666,\n 44.220081\n ],\n [\n 117.166201,\n 44.192662\n ],\n [\n 117.120823,\n 44.179195\n ],\n [\n 117.011281,\n 44.057681\n ],\n [\n 116.961567,\n 44.024752\n ],\n [\n 116.970816,\n 43.988674\n ],\n [\n 117.022264,\n 43.969721\n ],\n [\n 117.031802,\n 43.942845\n ],\n [\n 117.000008,\n 43.912328\n ],\n [\n 117.013304,\n 43.85075\n ],\n [\n 116.986135,\n 43.840343\n ],\n [\n 117.001164,\n 43.782495\n ],\n [\n 117.053768,\n 43.753384\n ],\n [\n 116.971683,\n 43.673422\n ],\n [\n 116.858383,\n 43.657351\n ],\n [\n 116.837284,\n 43.614086\n ],\n [\n 116.812138,\n 43.612593\n ],\n [\n 116.804912,\n 43.565147\n ],\n [\n 116.830636,\n 43.5067\n ],\n [\n 116.790461,\n 43.484436\n ],\n [\n 116.734967,\n 43.509026\n ],\n [\n 116.681207,\n 43.517165\n ],\n [\n 116.621956,\n 43.505039\n ],\n [\n 116.59681,\n 43.410605\n ],\n [\n 116.518194,\n 43.365664\n ],\n [\n 116.436398,\n 43.328188\n ],\n [\n 116.413853,\n 43.258003\n ],\n [\n 116.37021,\n 43.243323\n ],\n [\n 116.356336,\n 43.156835\n ],\n [\n 116.419345,\n 43.104015\n ],\n [\n 116.436109,\n 43.077922\n ],\n [\n 116.503742,\n 43.04914\n ],\n [\n 116.500852,\n 43.01532\n ],\n [\n 116.580624,\n 42.985336\n ],\n [\n 116.664732,\n 42.933038\n ],\n [\n 116.673981,\n 42.889758\n ],\n [\n 116.666177,\n 42.81655\n ],\n [\n 116.67427,\n 42.761586\n ],\n [\n 116.619354,\n 42.671387\n ],\n [\n 116.58785,\n 42.599775\n ],\n [\n 116.63554,\n 42.614609\n ],\n [\n 116.638141,\n 42.577179\n ],\n [\n 116.669357,\n 42.555755\n ],\n [\n 116.699127,\n 42.592019\n ],\n [\n 116.801444,\n 42.582913\n ],\n [\n 116.82052,\n 42.546981\n ],\n [\n 116.885552,\n 42.534662\n ],\n [\n 116.875725,\n 42.482996\n ],\n [\n 116.907807,\n 42.443965\n ],\n [\n 116.893645,\n 42.387826\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 152900,\n \"name\": \"阿拉善盟\",\n \"center\": [\n 105.706422,\n 38.844814\n ],\n \"centroid\": [\n 102.422231,\n 40.532548\n ],\n \"childrenNum\": 3,\n \"level\": \"city\",\n \"subFeatureIndex\": 11,\n \"acroutes\": [\n 100000,\n 150000\n ],\n \"parent\": {\n \"adcode\": 150000\n }\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 105.226615,\n 41.748186\n ],\n [\n 105.226326,\n 41.67877\n ],\n [\n 105.201759,\n 41.542456\n ],\n [\n 105.222858,\n 41.396748\n ],\n [\n 105.245691,\n 41.32403\n ],\n [\n 105.317082,\n 41.201446\n ],\n [\n 105.334424,\n 41.131442\n ],\n [\n 105.31766,\n 41.113153\n ],\n [\n 105.379224,\n 41.059464\n ],\n [\n 105.403213,\n 41.015756\n ],\n [\n 105.395409,\n 40.984987\n ],\n [\n 105.503507,\n 40.927559\n ],\n [\n 105.559001,\n 40.89017\n ],\n [\n 105.636461,\n 40.854492\n ],\n [\n 105.697447,\n 40.811168\n ],\n [\n 105.781266,\n 40.785333\n ],\n [\n 105.835604,\n 40.781864\n ],\n [\n 105.944279,\n 40.739534\n ],\n [\n 106.115097,\n 40.717838\n ],\n [\n 106.161631,\n 40.68502\n ],\n [\n 106.237935,\n 40.661221\n ],\n [\n 106.235334,\n 40.626636\n ],\n [\n 106.273197,\n 40.591165\n ],\n [\n 106.321754,\n 40.589425\n ],\n [\n 106.467137,\n 40.546276\n ],\n [\n 106.482455,\n 40.502925\n ],\n [\n 106.37956,\n 40.501009\n ],\n [\n 106.34979,\n 40.527999\n ],\n [\n 106.282446,\n 40.548539\n ],\n [\n 106.268283,\n 40.519294\n ],\n [\n 106.197182,\n 40.515637\n ],\n [\n 106.219148,\n 40.461289\n ],\n [\n 106.32002,\n 40.34024\n ],\n [\n 106.426961,\n 40.339542\n ],\n [\n 106.476386,\n 40.319113\n ],\n [\n 106.528122,\n 40.365375\n ],\n [\n 106.604426,\n 40.377764\n ],\n [\n 106.672349,\n 40.375845\n ],\n [\n 106.820044,\n 40.355252\n ],\n [\n 106.765706,\n 40.29466\n ],\n [\n 106.705587,\n 40.262158\n ],\n [\n 106.740271,\n 40.196234\n ],\n [\n 106.866578,\n 40.181012\n ],\n [\n 106.801546,\n 40.10187\n ],\n [\n 106.759347,\n 40.083647\n ],\n [\n 106.718016,\n 40.047363\n ],\n [\n 106.720039,\n 39.993163\n ],\n [\n 106.704142,\n 39.967364\n ],\n [\n 106.723796,\n 39.932422\n ],\n [\n 106.696049,\n 39.890258\n ],\n [\n 106.754145,\n 39.850706\n ],\n [\n 106.766573,\n 39.763787\n ],\n [\n 106.757324,\n 39.710595\n ],\n [\n 106.795476,\n 39.689449\n ],\n [\n 106.755012,\n 39.626851\n ],\n [\n 106.637376,\n 39.573731\n ],\n [\n 106.611074,\n 39.543005\n ],\n [\n 106.635064,\n 39.476209\n ],\n [\n 106.73449,\n 39.437303\n ],\n [\n 106.750965,\n 39.381559\n ],\n [\n 106.680731,\n 39.355885\n ],\n [\n 106.602692,\n 39.375363\n ],\n [\n 106.555869,\n 39.322228\n ],\n [\n 106.525232,\n 39.308406\n ],\n [\n 106.506445,\n 39.270116\n ],\n [\n 106.402972,\n 39.291568\n ],\n [\n 106.279845,\n 39.262136\n ],\n [\n 106.295452,\n 39.167907\n ],\n [\n 106.250941,\n 39.131494\n ],\n [\n 106.146023,\n 39.153166\n ],\n [\n 106.098333,\n 39.087597\n ],\n [\n 106.078101,\n 39.026592\n ],\n [\n 106.089373,\n 39.015916\n ],\n [\n 106.060759,\n 38.968563\n ],\n [\n 106.018849,\n 38.951109\n ],\n [\n 105.973183,\n 38.911377\n ],\n [\n 106.002953,\n 38.875902\n ],\n [\n 105.935898,\n 38.810075\n ],\n [\n 105.898613,\n 38.789547\n ],\n [\n 105.905838,\n 38.731324\n ],\n [\n 105.893121,\n 38.691111\n ],\n [\n 105.852946,\n 38.641574\n ],\n [\n 105.875201,\n 38.591823\n ],\n [\n 105.856703,\n 38.572128\n ],\n [\n 105.862773,\n 38.526272\n ],\n [\n 105.83676,\n 38.475903\n ],\n [\n 105.835604,\n 38.390322\n ],\n [\n 105.82173,\n 38.368058\n ],\n [\n 105.865952,\n 38.29727\n ],\n [\n 105.84254,\n 38.241165\n ],\n [\n 105.797163,\n 38.217055\n ],\n [\n 105.775196,\n 38.186817\n ],\n [\n 105.76797,\n 38.121619\n ],\n [\n 105.782133,\n 38.082327\n ],\n [\n 105.839939,\n 38.007832\n ],\n [\n 105.799764,\n 37.940125\n ],\n [\n 105.808724,\n 37.87543\n ],\n [\n 105.760745,\n 37.799819\n ],\n [\n 105.677504,\n 37.771943\n ],\n [\n 105.62201,\n 37.777736\n ],\n [\n 105.616229,\n 37.722501\n ],\n [\n 105.598887,\n 37.699308\n ],\n [\n 105.467378,\n 37.694958\n ],\n [\n 105.403791,\n 37.709999\n ],\n [\n 105.31477,\n 37.702026\n ],\n [\n 105.221991,\n 37.677014\n ],\n [\n 105.111003,\n 37.633857\n ],\n [\n 105.028051,\n 37.581055\n ],\n [\n 104.866482,\n 37.566714\n ],\n [\n 104.806075,\n 37.539659\n ],\n [\n 104.623696,\n 37.522585\n ],\n [\n 104.41964,\n 37.511866\n ],\n [\n 104.407501,\n 37.464614\n ],\n [\n 104.322526,\n 37.448432\n ],\n [\n 104.23784,\n 37.411874\n ],\n [\n 104.183502,\n 37.40678\n ],\n [\n 104.074537,\n 37.475158\n ],\n [\n 103.93349,\n 37.574157\n ],\n [\n 103.871348,\n 37.605737\n ],\n [\n 103.841,\n 37.647459\n ],\n [\n 103.683189,\n 37.777918\n ],\n [\n 103.636077,\n 37.795476\n ],\n [\n 103.401962,\n 37.861869\n ],\n [\n 103.385487,\n 37.946989\n ],\n [\n 103.368145,\n 37.985631\n ],\n [\n 103.368723,\n 38.088997\n ],\n [\n 103.534916,\n 38.156747\n ],\n [\n 103.507747,\n 38.28091\n ],\n [\n 103.466416,\n 38.350996\n ],\n [\n 103.416413,\n 38.405041\n ],\n [\n 103.859787,\n 38.644436\n ],\n [\n 104.011528,\n 38.859139\n ],\n [\n 104.044478,\n 38.894979\n ],\n [\n 104.167894,\n 38.940421\n ],\n [\n 104.196219,\n 38.988149\n ],\n [\n 104.191017,\n 39.042249\n ],\n [\n 104.207202,\n 39.083685\n ],\n [\n 104.177432,\n 39.152101\n ],\n [\n 104.047657,\n 39.297772\n ],\n [\n 104.073381,\n 39.351811\n ],\n [\n 104.090145,\n 39.419788\n ],\n [\n 103.955745,\n 39.457112\n ],\n [\n 103.838977,\n 39.460295\n ],\n [\n 103.595324,\n 39.386693\n ],\n [\n 103.428842,\n 39.353582\n ],\n [\n 103.346468,\n 39.332504\n ],\n [\n 103.188079,\n 39.215481\n ],\n [\n 103.133163,\n 39.192763\n ],\n [\n 103.013215,\n 39.101107\n ],\n [\n 102.947027,\n 39.106794\n ],\n [\n 102.583426,\n 39.180691\n ],\n [\n 102.453651,\n 39.255219\n ],\n [\n 102.352201,\n 39.231272\n ],\n [\n 102.286591,\n 39.192585\n ],\n [\n 102.059701,\n 39.143575\n ],\n [\n 102.008254,\n 39.125809\n ],\n [\n 101.897555,\n 39.11106\n ],\n [\n 101.8305,\n 39.093463\n ],\n [\n 101.926169,\n 39.00061\n ],\n [\n 101.955072,\n 38.986012\n ],\n [\n 102.045828,\n 38.904604\n ],\n [\n 102.07502,\n 38.891592\n ],\n [\n 101.941488,\n 38.808826\n ],\n [\n 101.873854,\n 38.734004\n ],\n [\n 101.777029,\n 38.660534\n ],\n [\n 101.679047,\n 38.690932\n ],\n [\n 101.601876,\n 38.655169\n ],\n [\n 101.557654,\n 38.715063\n ],\n [\n 101.412272,\n 38.764192\n ],\n [\n 101.331343,\n 38.777228\n ],\n [\n 101.306197,\n 38.801865\n ],\n [\n 101.341459,\n 38.82221\n ],\n [\n 101.335389,\n 38.846831\n ],\n [\n 101.242032,\n 38.861279\n ],\n [\n 101.237697,\n 38.907278\n ],\n [\n 101.198678,\n 38.943271\n ],\n [\n 101.228737,\n 39.02072\n ],\n [\n 101.117171,\n 38.975151\n ],\n [\n 100.969187,\n 38.947012\n ],\n [\n 100.969476,\n 38.996694\n ],\n [\n 100.901843,\n 39.029973\n ],\n [\n 100.875541,\n 39.00239\n ],\n [\n 100.835077,\n 39.026059\n ],\n [\n 100.829296,\n 39.074973\n ],\n [\n 100.864269,\n 39.106972\n ],\n [\n 100.84288,\n 39.200218\n ],\n [\n 100.842013,\n 39.405809\n ],\n [\n 100.707903,\n 39.40457\n ],\n [\n 100.617436,\n 39.387401\n ],\n [\n 100.499222,\n 39.4005\n ],\n [\n 100.500668,\n 39.481336\n ],\n [\n 100.44315,\n 39.485578\n ],\n [\n 100.326382,\n 39.509085\n ],\n [\n 100.300947,\n 39.572318\n ],\n [\n 100.314242,\n 39.606914\n ],\n [\n 100.250078,\n 39.685042\n ],\n [\n 100.127817,\n 39.702137\n ],\n [\n 100.040819,\n 39.757096\n ],\n [\n 99.904396,\n 39.785791\n ],\n [\n 99.822022,\n 39.860025\n ],\n [\n 99.672593,\n 39.887974\n ],\n [\n 99.487903,\n 39.876022\n ],\n [\n 99.441079,\n 39.885865\n ],\n [\n 99.459577,\n 39.898166\n ],\n [\n 99.524609,\n 39.888149\n ],\n [\n 99.713925,\n 39.972103\n ],\n [\n 99.75121,\n 40.006849\n ],\n [\n 99.841388,\n 40.01334\n ],\n [\n 99.928386,\n 40.064894\n ],\n [\n 99.955844,\n 40.150907\n ],\n [\n 100.0018,\n 40.196934\n ],\n [\n 100.169727,\n 40.277537\n ],\n [\n 100.169727,\n 40.541403\n ],\n [\n 100.242563,\n 40.61864\n ],\n [\n 100.23736,\n 40.716796\n ],\n [\n 100.108163,\n 40.875624\n ],\n [\n 100.057005,\n 40.908002\n ],\n [\n 99.985903,\n 40.909733\n ],\n [\n 99.673171,\n 40.932924\n ],\n [\n 99.565941,\n 40.846696\n ],\n [\n 99.174882,\n 40.858303\n ],\n [\n 99.173148,\n 40.747343\n ],\n [\n 99.125747,\n 40.715234\n ],\n [\n 99.102046,\n 40.676335\n ],\n [\n 99.041638,\n 40.693703\n ],\n [\n 98.984988,\n 40.782905\n ],\n [\n 98.791049,\n 40.705337\n ],\n [\n 98.807234,\n 40.65931\n ],\n [\n 98.800298,\n 40.610294\n ],\n [\n 98.715611,\n 40.661742\n ],\n [\n 98.687864,\n 40.696829\n ],\n [\n 98.668499,\n 40.772845\n ],\n [\n 98.56994,\n 40.746822\n ],\n [\n 98.628035,\n 40.677898\n ],\n [\n 98.344206,\n 40.568376\n ],\n [\n 98.333223,\n 40.919079\n ],\n [\n 98.250271,\n 40.939153\n ],\n [\n 98.18495,\n 40.988099\n ],\n [\n 98.142463,\n 41.001756\n ],\n [\n 97.971934,\n 41.097966\n ],\n [\n 97.629432,\n 41.440547\n ],\n [\n 97.614114,\n 41.47728\n ],\n [\n 97.847073,\n 41.656527\n ],\n [\n 97.500814,\n 42.243867\n ],\n [\n 97.371328,\n 42.456978\n ],\n [\n 97.172763,\n 42.795209\n ],\n [\n 97.282595,\n 42.782098\n ],\n [\n 97.831754,\n 42.706069\n ],\n [\n 98.195355,\n 42.653366\n ],\n [\n 98.546528,\n 42.638203\n ],\n [\n 98.962733,\n 42.606855\n ],\n [\n 99.507557,\n 42.56807\n ],\n [\n 99.969139,\n 42.647806\n ],\n [\n 100.272622,\n 42.63635\n ],\n [\n 100.325515,\n 42.690077\n ],\n [\n 100.576683,\n 42.682838\n ],\n [\n 100.862824,\n 42.671219\n ],\n [\n 101.155034,\n 42.613935\n ],\n [\n 101.581644,\n 42.52521\n ],\n [\n 101.80362,\n 42.503769\n ],\n [\n 101.981952,\n 42.326556\n ],\n [\n 102.070395,\n 42.232166\n ],\n [\n 102.093807,\n 42.223686\n ],\n [\n 102.449026,\n 42.144088\n ],\n [\n 102.540938,\n 42.162257\n ],\n [\n 102.712045,\n 42.152749\n ],\n [\n 103.021886,\n 42.028162\n ],\n [\n 103.207444,\n 41.962796\n ],\n [\n 103.418437,\n 41.882359\n ],\n [\n 103.868747,\n 41.802503\n ],\n [\n 104.095636,\n 41.80865\n ],\n [\n 104.53005,\n 41.874855\n ],\n [\n 104.52427,\n 41.661832\n ],\n [\n 104.689017,\n 41.645232\n ],\n [\n 104.923133,\n 41.654131\n ],\n [\n 105.009553,\n 41.583243\n ],\n [\n 105.226615,\n 41.748186\n ]\n ]\n ]\n ]\n }\n }\n ]\n}', 'admin', '2020-05-19 16:42:33', 'jeecg', '2020-05-19 16:42:33', '0', NULL); +INSERT INTO `jimu_report_map` VALUES ('1262343644795432961', '河北省', '河北省', '{\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 130100,\n \"name\": \"石家庄市\",\n \"center\": [\n 114.502461,\n 38.045474\n ],\n \"centroid\": [\n 114.44505,\n 38.133023\n ],\n \"childrenNum\": 22,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 0,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 113.839548,\n 38.758413\n ],\n [\n 113.864664,\n 38.746006\n ],\n [\n 113.883245,\n 38.74667\n ],\n [\n 113.932324,\n 38.71362\n ],\n [\n 113.929697,\n 38.702467\n ],\n [\n 113.964617,\n 38.699811\n ],\n [\n 113.991655,\n 38.676769\n ],\n [\n 114.028624,\n 38.688524\n ],\n [\n 114.052139,\n 38.686399\n ],\n [\n 114.086097,\n 38.65837\n ],\n [\n 114.125053,\n 38.659632\n ],\n [\n 114.129153,\n 38.669596\n ],\n [\n 114.182205,\n 38.67657\n ],\n [\n 114.212831,\n 38.688192\n ],\n [\n 114.311502,\n 38.706517\n ],\n [\n 114.341167,\n 38.690184\n ],\n [\n 114.366411,\n 38.6862\n ],\n [\n 114.413504,\n 38.703928\n ],\n [\n 114.437787,\n 38.692773\n ],\n [\n 114.452652,\n 38.699413\n ],\n [\n 114.498463,\n 38.678297\n ],\n [\n 114.522106,\n 38.65372\n ],\n [\n 114.53633,\n 38.649268\n ],\n [\n 114.536907,\n 38.632324\n ],\n [\n 114.552284,\n 38.612983\n ],\n [\n 114.527616,\n 38.590644\n ],\n [\n 114.56324,\n 38.590644\n ],\n [\n 114.58432,\n 38.596429\n ],\n [\n 114.595724,\n 38.568897\n ],\n [\n 114.635257,\n 38.514801\n ],\n [\n 114.651851,\n 38.504682\n ],\n [\n 114.6737,\n 38.473452\n ],\n [\n 114.702084,\n 38.489102\n ],\n [\n 114.729442,\n 38.484574\n ],\n [\n 114.765259,\n 38.496626\n ],\n [\n 114.81075,\n 38.492365\n ],\n [\n 114.830868,\n 38.46033\n ],\n [\n 114.819143,\n 38.449871\n ],\n [\n 114.837852,\n 38.435745\n ],\n [\n 114.840992,\n 38.460797\n ],\n [\n 114.858163,\n 38.448605\n ],\n [\n 114.853998,\n 38.435879\n ],\n [\n 114.882254,\n 38.424149\n ],\n [\n 114.910381,\n 38.393751\n ],\n [\n 114.923388,\n 38.388217\n ],\n [\n 114.932871,\n 38.344194\n ],\n [\n 114.942994,\n 38.343193\n ],\n [\n 114.922875,\n 38.315631\n ],\n [\n 114.906986,\n 38.309624\n ],\n [\n 114.902565,\n 38.294936\n ],\n [\n 114.883343,\n 38.284854\n ],\n [\n 114.886162,\n 38.265286\n ],\n [\n 114.915059,\n 38.263348\n ],\n [\n 114.927681,\n 38.283385\n ],\n [\n 114.970096,\n 38.281114\n ],\n [\n 114.990087,\n 38.272165\n ],\n [\n 114.989062,\n 38.258138\n ],\n [\n 115.031862,\n 38.267089\n ],\n [\n 115.056465,\n 38.258472\n ],\n [\n 115.066204,\n 38.264684\n ],\n [\n 115.056722,\n 38.288326\n ],\n [\n 115.073765,\n 38.293134\n ],\n [\n 115.085874,\n 38.276773\n ],\n [\n 115.108107,\n 38.264551\n ],\n [\n 115.152317,\n 38.256802\n ],\n [\n 115.168591,\n 38.259608\n ],\n [\n 115.19422,\n 38.236759\n ],\n [\n 115.210174,\n 38.236491\n ],\n [\n 115.225871,\n 38.269894\n ],\n [\n 115.252205,\n 38.29093\n ],\n [\n 115.265788,\n 38.287658\n ],\n [\n 115.263994,\n 38.260543\n ],\n [\n 115.273605,\n 38.2403\n ],\n [\n 115.302758,\n 38.235289\n ],\n [\n 115.324734,\n 38.248184\n ],\n [\n 115.323645,\n 38.220586\n ],\n [\n 115.35094,\n 38.210493\n ],\n [\n 115.342418,\n 38.196254\n ],\n [\n 115.346903,\n 38.13967\n ],\n [\n 115.364843,\n 38.13793\n ],\n [\n 115.383232,\n 38.0886\n ],\n [\n 115.420522,\n 38.089671\n ],\n [\n 115.439871,\n 38.082038\n ],\n [\n 115.468063,\n 38.095161\n ],\n [\n 115.482992,\n 38.08398\n ],\n [\n 115.466782,\n 38.063554\n ],\n [\n 115.45134,\n 38.017323\n ],\n [\n 115.438205,\n 38.001102\n ],\n [\n 115.464219,\n 37.99299\n ],\n [\n 115.444997,\n 37.989168\n ],\n [\n 115.456017,\n 37.974551\n ],\n [\n 115.457555,\n 37.95074\n ],\n [\n 115.448585,\n 37.936584\n ],\n [\n 115.412769,\n 37.943293\n ],\n [\n 115.408668,\n 37.918936\n ],\n [\n 115.385795,\n 37.917191\n ],\n [\n 115.365484,\n 37.906318\n ],\n [\n 115.360294,\n 37.880068\n ],\n [\n 115.389831,\n 37.874629\n ],\n [\n 115.388614,\n 37.853003\n ],\n [\n 115.363049,\n 37.849845\n ],\n [\n 115.360166,\n 37.820215\n ],\n [\n 115.349722,\n 37.805765\n ],\n [\n 115.352349,\n 37.784052\n ],\n [\n 115.371635,\n 37.770335\n ],\n [\n 115.344468,\n 37.74814\n ],\n [\n 115.360294,\n 37.731994\n ],\n [\n 115.386179,\n 37.727082\n ],\n [\n 115.394316,\n 37.712143\n ],\n [\n 115.380989,\n 37.707432\n ],\n [\n 115.333768,\n 37.71322\n ],\n [\n 115.317046,\n 37.695383\n ],\n [\n 115.325567,\n 37.682458\n ],\n [\n 115.316853,\n 37.660102\n ],\n [\n 115.301412,\n 37.660169\n ],\n [\n 115.297376,\n 37.629587\n ],\n [\n 115.258356,\n 37.639625\n ],\n [\n 115.255088,\n 37.645621\n ],\n [\n 115.253807,\n 37.671415\n ],\n [\n 115.261431,\n 37.68818\n ],\n [\n 115.243235,\n 37.722641\n ],\n [\n 115.227281,\n 37.732599\n ],\n [\n 115.172564,\n 37.749351\n ],\n [\n 115.152765,\n 37.759507\n ],\n [\n 115.160262,\n 37.780287\n ],\n [\n 115.150523,\n 37.808521\n ],\n [\n 115.131173,\n 37.799783\n ],\n [\n 115.122972,\n 37.811479\n ],\n [\n 115.097471,\n 37.807849\n ],\n [\n 115.097215,\n 37.797498\n ],\n [\n 115.072099,\n 37.788893\n ],\n [\n 115.066653,\n 37.771007\n ],\n [\n 115.070049,\n 37.745651\n ],\n [\n 115.041024,\n 37.733541\n ],\n [\n 115.012512,\n 37.75157\n ],\n [\n 115.001748,\n 37.734685\n ],\n [\n 114.987524,\n 37.742691\n ],\n [\n 114.960165,\n 37.720084\n ],\n [\n 114.931846,\n 37.728899\n ],\n [\n 114.904038,\n 37.729302\n ],\n [\n 114.895965,\n 37.712547\n ],\n [\n 114.881357,\n 37.716113\n ],\n [\n 114.871041,\n 37.702114\n ],\n [\n 114.847783,\n 37.69673\n ],\n [\n 114.841504,\n 37.676129\n ],\n [\n 114.808571,\n 37.659832\n ],\n [\n 114.797423,\n 37.628239\n ],\n [\n 114.764618,\n 37.624399\n ],\n [\n 114.725983,\n 37.630665\n ],\n [\n 114.707338,\n 37.615774\n ],\n [\n 114.698816,\n 37.589353\n ],\n [\n 114.680171,\n 37.565283\n ],\n [\n 114.64679,\n 37.556247\n ],\n [\n 114.585217,\n 37.55301\n ],\n [\n 114.519927,\n 37.574656\n ],\n [\n 114.483471,\n 37.576814\n ],\n [\n 114.433495,\n 37.552537\n ],\n [\n 114.412095,\n 37.549907\n ],\n [\n 114.37269,\n 37.52967\n ],\n [\n 114.370192,\n 37.513612\n ],\n [\n 114.358274,\n 37.519212\n ],\n [\n 114.334632,\n 37.502949\n ],\n [\n 114.310861,\n 37.499979\n ],\n [\n 114.303621,\n 37.507808\n ],\n [\n 114.27293,\n 37.494445\n ],\n [\n 114.255439,\n 37.504096\n ],\n [\n 114.215009,\n 37.51125\n ],\n [\n 114.184575,\n 37.530817\n ],\n [\n 114.166123,\n 37.528186\n ],\n [\n 114.156191,\n 37.505244\n ],\n [\n 114.133766,\n 37.498899\n ],\n [\n 114.126526,\n 37.481957\n ],\n [\n 114.113263,\n 37.493837\n ],\n [\n 114.096477,\n 37.490935\n ],\n [\n 114.06899,\n 37.447384\n ],\n [\n 114.022666,\n 37.435496\n ],\n [\n 114.028304,\n 37.474598\n ],\n [\n 114.036762,\n 37.494175\n ],\n [\n 114.059635,\n 37.515906\n ],\n [\n 114.118325,\n 37.590634\n ],\n [\n 114.115378,\n 37.619884\n ],\n [\n 114.131139,\n 37.648315\n ],\n [\n 114.139725,\n 37.675927\n ],\n [\n 114.128256,\n 37.69821\n ],\n [\n 114.088275,\n 37.708845\n ],\n [\n 114.068029,\n 37.721564\n ],\n [\n 113.993769,\n 37.706893\n ],\n [\n 114.000817,\n 37.735358\n ],\n [\n 114.041182,\n 37.756817\n ],\n [\n 114.043873,\n 37.777463\n ],\n [\n 114.018821,\n 37.794876\n ],\n [\n 114.006648,\n 37.813495\n ],\n [\n 113.982557,\n 37.812823\n ],\n [\n 113.970191,\n 37.833923\n ],\n [\n 113.971536,\n 37.868786\n ],\n [\n 113.956864,\n 37.911419\n ],\n [\n 113.929185,\n 37.932022\n ],\n [\n 113.922842,\n 37.952082\n ],\n [\n 113.90125,\n 37.98481\n ],\n [\n 113.872353,\n 37.990375\n ],\n [\n 113.878376,\n 38.032402\n ],\n [\n 113.876261,\n 38.055047\n ],\n [\n 113.856015,\n 38.065898\n ],\n [\n 113.854733,\n 38.077082\n ],\n [\n 113.824235,\n 38.106676\n ],\n [\n 113.810075,\n 38.112566\n ],\n [\n 113.822505,\n 38.150442\n ],\n [\n 113.83359,\n 38.147431\n ],\n [\n 113.828848,\n 38.168971\n ],\n [\n 113.796876,\n 38.162884\n ],\n [\n 113.756575,\n 38.171713\n ],\n [\n 113.731139,\n 38.168369\n ],\n [\n 113.720631,\n 38.174656\n ],\n [\n 113.738507,\n 38.189501\n ],\n [\n 113.715057,\n 38.193713\n ],\n [\n 113.711725,\n 38.213702\n ],\n [\n 113.679112,\n 38.205413\n ],\n [\n 113.657072,\n 38.225599\n ],\n [\n 113.636761,\n 38.232682\n ],\n [\n 113.598894,\n 38.227136\n ],\n [\n 113.570318,\n 38.237427\n ],\n [\n 113.566282,\n 38.252393\n ],\n [\n 113.544818,\n 38.270495\n ],\n [\n 113.546035,\n 38.293067\n ],\n [\n 113.557248,\n 38.34346\n ],\n [\n 113.53431,\n 38.365208\n ],\n [\n 113.525468,\n 38.383016\n ],\n [\n 113.538026,\n 38.418017\n ],\n [\n 113.573202,\n 38.449205\n ],\n [\n 113.583517,\n 38.465992\n ],\n [\n 113.561348,\n 38.485773\n ],\n [\n 113.555518,\n 38.521058\n ],\n [\n 113.562053,\n 38.558321\n ],\n [\n 113.602803,\n 38.586854\n ],\n [\n 113.604212,\n 38.616107\n ],\n [\n 113.612862,\n 38.646013\n ],\n [\n 113.632596,\n 38.653122\n ],\n [\n 113.667067,\n 38.646943\n ],\n [\n 113.702114,\n 38.65166\n ],\n [\n 113.713839,\n 38.663684\n ],\n [\n 113.709995,\n 38.698284\n ],\n [\n 113.729024,\n 38.71196\n ],\n [\n 113.745363,\n 38.701538\n ],\n [\n 113.775669,\n 38.709836\n ],\n [\n 113.78041,\n 38.728355\n ],\n [\n 113.802899,\n 38.763321\n ],\n [\n 113.839548,\n 38.758413\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 130200,\n \"name\": \"唐山市\",\n \"center\": [\n 118.175393,\n 39.635113\n ],\n \"centroid\": [\n 118.343434,\n 39.717249\n ],\n \"childrenNum\": 14,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 1,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 119.319039,\n 39.429554\n ],\n [\n 119.317052,\n 39.410759\n ],\n [\n 119.272779,\n 39.363616\n ],\n [\n 119.239269,\n 39.352368\n ],\n [\n 119.185577,\n 39.342039\n ],\n [\n 119.121505,\n 39.281549\n ],\n [\n 119.096068,\n 39.241963\n ],\n [\n 119.038276,\n 39.21178\n ],\n [\n 119.023988,\n 39.186925\n ],\n [\n 118.977984,\n 39.163381\n ],\n [\n 118.926278,\n 39.123464\n ],\n [\n 118.890013,\n 39.118844\n ],\n [\n 118.896549,\n 39.139698\n ],\n [\n 118.952035,\n 39.175649\n ],\n [\n 118.920447,\n 39.171758\n ],\n [\n 118.897253,\n 39.151508\n ],\n [\n 118.876366,\n 39.14999\n ],\n [\n 118.857913,\n 39.162854\n ],\n [\n 118.814409,\n 39.138642\n ],\n [\n 118.760716,\n 39.133495\n ],\n [\n 118.719646,\n 39.136992\n ],\n [\n 118.692992,\n 39.148077\n ],\n [\n 118.637314,\n 39.157379\n ],\n [\n 118.59272,\n 39.142601\n ],\n [\n 118.578752,\n 39.130921\n ],\n [\n 118.588619,\n 39.107623\n ],\n [\n 118.560107,\n 39.09904\n ],\n [\n 118.551394,\n 39.088278\n ],\n [\n 118.532877,\n 39.091051\n ],\n [\n 118.570487,\n 38.999212\n ],\n [\n 118.604445,\n 38.971505\n ],\n [\n 118.539732,\n 38.909835\n ],\n [\n 118.525252,\n 38.90487\n ],\n [\n 118.491038,\n 38.909041\n ],\n [\n 118.406463,\n 38.960525\n ],\n [\n 118.378015,\n 38.97177\n ],\n [\n 118.371031,\n 38.984137\n ],\n [\n 118.373594,\n 39.012037\n ],\n [\n 118.309907,\n 39.011773\n ],\n [\n 118.290813,\n 39.022216\n ],\n [\n 118.267107,\n 39.021555\n ],\n [\n 118.225011,\n 39.034839\n ],\n [\n 118.182596,\n 39.094155\n ],\n [\n 118.16299,\n 39.136596\n ],\n [\n 118.121151,\n 39.186068\n ],\n [\n 118.07771,\n 39.202024\n ],\n [\n 118.07047,\n 39.214021\n ],\n [\n 118.037153,\n 39.220348\n ],\n [\n 118.037089,\n 39.230497\n ],\n [\n 118.064768,\n 39.231222\n ],\n [\n 118.064768,\n 39.256061\n ],\n [\n 118.036512,\n 39.265151\n ],\n [\n 118.024787,\n 39.292414\n ],\n [\n 118.016842,\n 39.284117\n ],\n [\n 117.97763,\n 39.300643\n ],\n [\n 117.972248,\n 39.314401\n ],\n [\n 117.891774,\n 39.32322\n ],\n [\n 117.888314,\n 39.332038\n ],\n [\n 117.84955,\n 39.327366\n ],\n [\n 117.842054,\n 39.336512\n ],\n [\n 117.862877,\n 39.362169\n ],\n [\n 117.837056,\n 39.350789\n ],\n [\n 117.803354,\n 39.362037\n ],\n [\n 117.805277,\n 39.373284\n ],\n [\n 117.852369,\n 39.38078\n ],\n [\n 117.859353,\n 39.403265\n ],\n [\n 117.871847,\n 39.411547\n ],\n [\n 117.87031,\n 39.45498\n ],\n [\n 117.878062,\n 39.467196\n ],\n [\n 117.898181,\n 39.472516\n ],\n [\n 117.898565,\n 39.509675\n ],\n [\n 117.912277,\n 39.516172\n ],\n [\n 117.905293,\n 39.53015\n ],\n [\n 117.933997,\n 39.574164\n ],\n [\n 117.892607,\n 39.591539\n ],\n [\n 117.868259,\n 39.596849\n ],\n [\n 117.851408,\n 39.589244\n ],\n [\n 117.826548,\n 39.590818\n ],\n [\n 117.801945,\n 39.601765\n ],\n [\n 117.76773,\n 39.599012\n ],\n [\n 117.747868,\n 39.589375\n ],\n [\n 117.753122,\n 39.576\n ],\n [\n 117.737745,\n 39.574033\n ],\n [\n 117.744857,\n 39.548585\n ],\n [\n 117.71596,\n 39.530084\n ],\n [\n 117.710194,\n 39.550422\n ],\n [\n 117.689563,\n 39.559539\n ],\n [\n 117.688794,\n 39.569246\n ],\n [\n 117.708913,\n 39.572918\n ],\n [\n 117.68495,\n 39.588916\n ],\n [\n 117.660795,\n 39.57541\n ],\n [\n 117.636191,\n 39.603731\n ],\n [\n 117.621967,\n 39.59167\n ],\n [\n 117.619084,\n 39.603207\n ],\n [\n 117.641189,\n 39.612645\n ],\n [\n 117.641957,\n 39.628438\n ],\n [\n 117.662012,\n 39.636365\n ],\n [\n 117.668355,\n 39.667085\n ],\n [\n 117.657014,\n 39.668657\n ],\n [\n 117.643944,\n 39.688692\n ],\n [\n 117.644777,\n 39.701849\n ],\n [\n 117.602425,\n 39.705384\n ],\n [\n 117.577629,\n 39.726913\n ],\n [\n 117.596082,\n 39.735222\n ],\n [\n 117.59589,\n 39.746147\n ],\n [\n 117.559305,\n 39.756088\n ],\n [\n 117.546106,\n 39.776164\n ],\n [\n 117.561419,\n 39.800024\n ],\n [\n 117.537264,\n 39.835178\n ],\n [\n 117.548092,\n 39.839882\n ],\n [\n 117.521374,\n 39.870641\n ],\n [\n 117.518811,\n 39.891271\n ],\n [\n 117.507406,\n 39.909023\n ],\n [\n 117.525539,\n 39.92964\n ],\n [\n 117.514967,\n 39.946665\n ],\n [\n 117.532907,\n 39.952469\n ],\n [\n 117.547323,\n 39.976855\n ],\n [\n 117.537777,\n 39.997452\n ],\n [\n 117.589226,\n 39.996866\n ],\n [\n 117.634589,\n 39.968901\n ],\n [\n 117.674698,\n 39.974834\n ],\n [\n 117.70667,\n 39.986046\n ],\n [\n 117.72775,\n 39.972422\n ],\n [\n 117.756326,\n 39.96512\n ],\n [\n 117.763566,\n 39.972748\n ],\n [\n 117.781826,\n 39.966293\n ],\n [\n 117.797075,\n 40.010225\n ],\n [\n 117.782467,\n 40.023516\n ],\n [\n 117.744152,\n 40.018434\n ],\n [\n 117.747932,\n 40.047421\n ],\n [\n 117.758312,\n 40.04436\n ],\n [\n 117.776188,\n 40.059272\n ],\n [\n 117.758184,\n 40.065978\n ],\n [\n 117.751648,\n 40.081993\n ],\n [\n 117.721983,\n 40.07991\n ],\n [\n 117.708272,\n 40.093643\n ],\n [\n 117.67489,\n 40.082123\n ],\n [\n 117.668099,\n 40.100931\n ],\n [\n 117.644841,\n 40.096181\n ],\n [\n 117.65317,\n 40.110757\n ],\n [\n 117.650159,\n 40.128191\n ],\n [\n 117.635999,\n 40.132094\n ],\n [\n 117.630232,\n 40.147833\n ],\n [\n 117.601208,\n 40.171239\n ],\n [\n 117.576412,\n 40.178584\n ],\n [\n 117.575451,\n 40.192817\n ],\n [\n 117.609409,\n 40.194897\n ],\n [\n 117.619532,\n 40.206398\n ],\n [\n 117.64625,\n 40.205163\n ],\n [\n 117.677069,\n 40.22095\n ],\n [\n 117.694112,\n 40.238161\n ],\n [\n 117.714551,\n 40.241668\n ],\n [\n 117.75152,\n 40.229718\n ],\n [\n 117.807775,\n 40.261926\n ],\n [\n 117.844104,\n 40.261406\n ],\n [\n 117.867554,\n 40.26965\n ],\n [\n 117.897989,\n 40.270429\n ],\n [\n 117.909457,\n 40.285876\n ],\n [\n 118.000888,\n 40.29256\n ],\n [\n 118.031643,\n 40.302358\n ],\n [\n 118.061564,\n 40.319095\n ],\n [\n 118.079312,\n 40.353528\n ],\n [\n 118.121856,\n 40.354695\n ],\n [\n 118.133837,\n 40.375113\n ],\n [\n 118.165232,\n 40.400449\n ],\n [\n 118.153123,\n 40.409519\n ],\n [\n 118.156967,\n 40.423768\n ],\n [\n 118.173818,\n 40.423056\n ],\n [\n 118.239684,\n 40.464686\n ],\n [\n 118.262942,\n 40.452063\n ],\n [\n 118.277935,\n 40.425711\n ],\n [\n 118.306575,\n 40.419558\n ],\n [\n 118.356295,\n 40.435295\n ],\n [\n 118.360011,\n 40.428819\n ],\n [\n 118.387305,\n 40.436719\n ],\n [\n 118.402683,\n 40.416838\n ],\n [\n 118.430746,\n 40.411851\n ],\n [\n 118.45599,\n 40.414053\n ],\n [\n 118.503211,\n 40.403365\n ],\n [\n 118.523458,\n 40.40628\n ],\n [\n 118.548062,\n 40.422667\n ],\n [\n 118.571512,\n 40.414636\n ],\n [\n 118.550881,\n 40.385482\n ],\n [\n 118.558377,\n 40.36928\n ],\n [\n 118.539989,\n 40.361048\n ],\n [\n 118.532364,\n 40.319419\n ],\n [\n 118.533325,\n 40.298854\n ],\n [\n 118.568949,\n 40.287564\n ],\n [\n 118.571384,\n 40.269845\n ],\n [\n 118.628472,\n 40.249915\n ],\n [\n 118.665634,\n 40.242577\n ],\n [\n 118.708562,\n 40.216078\n ],\n [\n 118.746108,\n 40.208087\n ],\n [\n 118.743609,\n 40.191777\n ],\n [\n 118.775581,\n 40.194182\n ],\n [\n 118.794482,\n 40.204838\n ],\n [\n 118.849135,\n 40.178974\n ],\n [\n 118.867652,\n 40.180599\n ],\n [\n 118.888924,\n 40.168768\n ],\n [\n 118.906736,\n 40.169679\n ],\n [\n 118.92474,\n 40.149653\n ],\n [\n 118.918269,\n 40.092211\n ],\n [\n 118.900521,\n 40.086549\n ],\n [\n 118.866307,\n 40.061942\n ],\n [\n 118.865602,\n 40.023777\n ],\n [\n 118.88508,\n 40.005403\n ],\n [\n 118.884247,\n 39.961794\n ],\n [\n 118.875149,\n 39.941121\n ],\n [\n 118.859643,\n 39.93362\n ],\n [\n 118.853556,\n 39.88409\n ],\n [\n 118.835232,\n 39.859018\n ],\n [\n 118.838179,\n 39.847981\n ],\n [\n 118.816843,\n 39.825836\n ],\n [\n 118.825429,\n 39.799436\n ],\n [\n 118.797942,\n 39.790415\n ],\n [\n 118.800185,\n 39.775706\n ],\n [\n 118.774428,\n 39.764198\n ],\n [\n 118.787242,\n 39.71592\n ],\n [\n 118.804157,\n 39.679985\n ],\n [\n 118.822225,\n 39.668984\n ],\n [\n 118.824596,\n 39.648681\n ],\n [\n 118.850097,\n 39.622737\n ],\n [\n 118.844586,\n 39.615004\n ],\n [\n 118.861309,\n 39.574754\n ],\n [\n 118.882261,\n 39.566557\n ],\n [\n 118.895139,\n 39.547011\n ],\n [\n 118.938452,\n 39.557572\n ],\n [\n 118.945243,\n 39.544781\n ],\n [\n 118.983302,\n 39.538942\n ],\n [\n 118.966067,\n 39.529494\n ],\n [\n 118.961453,\n 39.51591\n ],\n [\n 119.008098,\n 39.509347\n ],\n [\n 119.015658,\n 39.482103\n ],\n [\n 119.004894,\n 39.467459\n ],\n [\n 119.048399,\n 39.459052\n ],\n [\n 119.064545,\n 39.473763\n ],\n [\n 119.185769,\n 39.458986\n ],\n [\n 119.212295,\n 39.463453\n ],\n [\n 119.257401,\n 39.429752\n ],\n [\n 119.280403,\n 39.422852\n ],\n [\n 119.319039,\n 39.429554\n ]\n ]\n ],\n [\n [\n [\n 117.784581,\n 39.377032\n ],\n [\n 117.744601,\n 39.354604\n ],\n [\n 117.692318,\n 39.35171\n ],\n [\n 117.670918,\n 39.356446\n ],\n [\n 117.669316,\n 39.324141\n ],\n [\n 117.650799,\n 39.315191\n ],\n [\n 117.637536,\n 39.335986\n ],\n [\n 117.595249,\n 39.349144\n ],\n [\n 117.536239,\n 39.338026\n ],\n [\n 117.520862,\n 39.357236\n ],\n [\n 117.535342,\n 39.374007\n ],\n [\n 117.557895,\n 39.38558\n ],\n [\n 117.571158,\n 39.404646\n ],\n [\n 117.590636,\n 39.405435\n ],\n [\n 117.6014,\n 39.4195\n ],\n [\n 117.61415,\n 39.407078\n ],\n [\n 117.643495,\n 39.405829\n ],\n [\n 117.669124,\n 39.412008\n ],\n [\n 117.673224,\n 39.386698\n ],\n [\n 117.702313,\n 39.388934\n ],\n [\n 117.69975,\n 39.407604\n ],\n [\n 117.737296,\n 39.410562\n ],\n [\n 117.782147,\n 39.394785\n ],\n [\n 117.784581,\n 39.377032\n ]\n ]\n ],\n [\n [\n [\n 118.630522,\n 39.054726\n ],\n [\n 118.620847,\n 39.068268\n ],\n [\n 118.638852,\n 39.076061\n ],\n [\n 118.653652,\n 39.056973\n ],\n [\n 118.640005,\n 39.042306\n ],\n [\n 118.630522,\n 39.054726\n ]\n ]\n ],\n [\n [\n [\n 118.869446,\n 39.142733\n ],\n [\n 118.871753,\n 39.115082\n ],\n [\n 118.857465,\n 39.098842\n ],\n [\n 118.820495,\n 39.093693\n ],\n [\n 118.820239,\n 39.108745\n ],\n [\n 118.842664,\n 39.117788\n ],\n [\n 118.869446,\n 39.142733\n ]\n ]\n ],\n [\n [\n [\n 118.83914,\n 39.153817\n ],\n [\n 118.841511,\n 39.135475\n ],\n [\n 118.825749,\n 39.122672\n ],\n [\n 118.815177,\n 39.132373\n ],\n [\n 118.83914,\n 39.153817\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 130300,\n \"name\": \"秦皇岛市\",\n \"center\": [\n 119.586579,\n 39.942531\n ],\n \"centroid\": [\n 119.193332,\n 40.088346\n ],\n \"childrenNum\": 7,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 2,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 119.319039,\n 39.429554\n ],\n [\n 119.280403,\n 39.422852\n ],\n [\n 119.257401,\n 39.429752\n ],\n [\n 119.212295,\n 39.463453\n ],\n [\n 119.185769,\n 39.458986\n ],\n [\n 119.064545,\n 39.473763\n ],\n [\n 119.048399,\n 39.459052\n ],\n [\n 119.004894,\n 39.467459\n ],\n [\n 119.015658,\n 39.482103\n ],\n [\n 119.008098,\n 39.509347\n ],\n [\n 118.961453,\n 39.51591\n ],\n [\n 118.966067,\n 39.529494\n ],\n [\n 118.983302,\n 39.538942\n ],\n [\n 118.945243,\n 39.544781\n ],\n [\n 118.938452,\n 39.557572\n ],\n [\n 118.895139,\n 39.547011\n ],\n [\n 118.882261,\n 39.566557\n ],\n [\n 118.861309,\n 39.574754\n ],\n [\n 118.844586,\n 39.615004\n ],\n [\n 118.850097,\n 39.622737\n ],\n [\n 118.824596,\n 39.648681\n ],\n [\n 118.822225,\n 39.668984\n ],\n [\n 118.804157,\n 39.679985\n ],\n [\n 118.787242,\n 39.71592\n ],\n [\n 118.774428,\n 39.764198\n ],\n [\n 118.800185,\n 39.775706\n ],\n [\n 118.797942,\n 39.790415\n ],\n [\n 118.825429,\n 39.799436\n ],\n [\n 118.816843,\n 39.825836\n ],\n [\n 118.838179,\n 39.847981\n ],\n [\n 118.835232,\n 39.859018\n ],\n [\n 118.853556,\n 39.88409\n ],\n [\n 118.859643,\n 39.93362\n ],\n [\n 118.875149,\n 39.941121\n ],\n [\n 118.884247,\n 39.961794\n ],\n [\n 118.88508,\n 40.005403\n ],\n [\n 118.865602,\n 40.023777\n ],\n [\n 118.866307,\n 40.061942\n ],\n [\n 118.900521,\n 40.086549\n ],\n [\n 118.918269,\n 40.092211\n ],\n [\n 118.92474,\n 40.149653\n ],\n [\n 118.906736,\n 40.169679\n ],\n [\n 118.888924,\n 40.168768\n ],\n [\n 118.867652,\n 40.180599\n ],\n [\n 118.849135,\n 40.178974\n ],\n [\n 118.794482,\n 40.204838\n ],\n [\n 118.775581,\n 40.194182\n ],\n [\n 118.743609,\n 40.191777\n ],\n [\n 118.746108,\n 40.208087\n ],\n [\n 118.708562,\n 40.216078\n ],\n [\n 118.665634,\n 40.242577\n ],\n [\n 118.628472,\n 40.249915\n ],\n [\n 118.571384,\n 40.269845\n ],\n [\n 118.568949,\n 40.287564\n ],\n [\n 118.580098,\n 40.305861\n ],\n [\n 118.596949,\n 40.308456\n ],\n [\n 118.608225,\n 40.328305\n ],\n [\n 118.640197,\n 40.354566\n ],\n [\n 118.643785,\n 40.380946\n ],\n [\n 118.618349,\n 40.425193\n ],\n [\n 118.624179,\n 40.437626\n ],\n [\n 118.657176,\n 40.450574\n ],\n [\n 118.702795,\n 40.491411\n ],\n [\n 118.723491,\n 40.473746\n ],\n [\n 118.772954,\n 40.479765\n ],\n [\n 118.792112,\n 40.492382\n ],\n [\n 118.794867,\n 40.510753\n ],\n [\n 118.821328,\n 40.531964\n ],\n [\n 118.864,\n 40.527244\n ],\n [\n 118.886938,\n 40.542438\n ],\n [\n 118.919038,\n 40.53093\n ],\n [\n 118.966003,\n 40.536102\n ],\n [\n 118.952676,\n 40.558469\n ],\n [\n 118.983366,\n 40.56364\n ],\n [\n 118.998359,\n 40.578955\n ],\n [\n 119.013095,\n 40.577081\n ],\n [\n 119.063392,\n 40.606151\n ],\n [\n 119.086394,\n 40.588775\n ],\n [\n 119.105487,\n 40.603632\n ],\n [\n 119.158474,\n 40.614418\n ],\n [\n 119.162575,\n 40.600015\n ],\n [\n 119.178209,\n 40.609316\n ],\n [\n 119.230812,\n 40.603891\n ],\n [\n 119.232862,\n 40.589421\n ],\n [\n 119.220624,\n 40.569133\n ],\n [\n 119.25612,\n 40.543279\n ],\n [\n 119.302188,\n 40.530283\n ],\n [\n 119.338068,\n 40.531253\n ],\n [\n 119.361839,\n 40.537331\n ],\n [\n 119.441864,\n 40.539852\n ],\n [\n 119.477809,\n 40.533322\n ],\n [\n 119.491007,\n 40.536167\n ],\n [\n 119.503886,\n 40.553945\n ],\n [\n 119.520288,\n 40.547416\n ],\n [\n 119.534256,\n 40.554203\n ],\n [\n 119.571033,\n 40.540887\n ],\n [\n 119.568855,\n 40.520778\n ],\n [\n 119.555464,\n 40.516833\n ],\n [\n 119.553542,\n 40.501762\n ],\n [\n 119.604927,\n 40.454976\n ],\n [\n 119.593458,\n 40.435683\n ],\n [\n 119.600442,\n 40.406863\n ],\n [\n 119.586667,\n 40.375437\n ],\n [\n 119.599801,\n 40.356575\n ],\n [\n 119.598136,\n 40.334206\n ],\n [\n 119.621458,\n 40.30359\n ],\n [\n 119.642153,\n 40.291327\n ],\n [\n 119.651892,\n 40.272377\n ],\n [\n 119.633503,\n 40.249395\n ],\n [\n 119.625174,\n 40.224132\n ],\n [\n 119.671562,\n 40.23959\n ],\n [\n 119.676239,\n 40.224522\n ],\n [\n 119.716797,\n 40.196066\n ],\n [\n 119.745949,\n 40.207957\n ],\n [\n 119.755496,\n 40.153165\n ],\n [\n 119.76248,\n 40.144776\n ],\n [\n 119.736723,\n 40.104836\n ],\n [\n 119.771578,\n 40.082253\n ],\n [\n 119.76043,\n 40.065653\n ],\n [\n 119.770873,\n 40.048788\n ],\n [\n 119.795285,\n 40.040387\n ],\n [\n 119.817069,\n 40.052826\n ],\n [\n 119.835009,\n 40.050286\n ],\n [\n 119.854231,\n 40.03231\n ],\n [\n 119.841032,\n 40.011789\n ],\n [\n 119.872363,\n 39.960621\n ],\n [\n 119.862432,\n 39.951556\n ],\n [\n 119.835522,\n 39.964468\n ],\n [\n 119.836739,\n 39.985786\n ],\n [\n 119.816877,\n 39.978224\n ],\n [\n 119.787212,\n 39.950382\n ],\n [\n 119.726279,\n 39.941056\n ],\n [\n 119.683543,\n 39.921942\n ],\n [\n 119.674317,\n 39.933424\n ],\n [\n 119.666436,\n 39.92018\n ],\n [\n 119.637027,\n 39.923182\n ],\n [\n 119.612936,\n 39.898907\n ],\n [\n 119.587948,\n 39.909936\n ],\n [\n 119.559564,\n 39.901518\n ],\n [\n 119.541048,\n 39.888138\n ],\n [\n 119.520352,\n 39.838183\n ],\n [\n 119.537652,\n 39.831259\n ],\n [\n 119.53778,\n 39.810154\n ],\n [\n 119.506641,\n 39.816493\n ],\n [\n 119.464738,\n 39.809239\n ],\n [\n 119.396886,\n 39.761124\n ],\n [\n 119.395925,\n 39.74425\n ],\n [\n 119.3735,\n 39.739671\n ],\n [\n 119.358122,\n 39.721744\n ],\n [\n 119.334928,\n 39.656148\n ],\n [\n 119.31276,\n 39.605894\n ],\n [\n 119.270024,\n 39.498582\n ],\n [\n 119.304238,\n 39.459972\n ],\n [\n 119.319039,\n 39.429554\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 130400,\n \"name\": \"邯郸市\",\n \"center\": [\n 114.490686,\n 36.612273\n ],\n \"centroid\": [\n 114.548854,\n 36.553496\n ],\n \"childrenNum\": 18,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 3,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 113.794954,\n 36.994995\n ],\n [\n 113.828784,\n 37.012048\n ],\n [\n 113.859475,\n 37.015037\n ],\n [\n 113.883886,\n 37.010893\n ],\n [\n 113.901185,\n 36.99683\n ],\n [\n 113.941743,\n 36.983376\n ],\n [\n 113.984415,\n 36.941503\n ],\n [\n 113.991078,\n 36.914913\n ],\n [\n 114.028176,\n 36.881236\n ],\n [\n 114.063672,\n 36.879331\n ],\n [\n 114.090005,\n 36.861023\n ],\n [\n 114.081548,\n 36.845094\n ],\n [\n 114.100449,\n 36.839035\n ],\n [\n 114.182653,\n 36.843937\n ],\n [\n 114.225902,\n 36.843052\n ],\n [\n 114.252684,\n 36.856531\n ],\n [\n 114.299969,\n 36.845435\n ],\n [\n 114.304518,\n 36.857007\n ],\n [\n 114.336105,\n 36.846728\n ],\n [\n 114.353533,\n 36.852038\n ],\n [\n 114.421193,\n 36.839444\n ],\n [\n 114.462327,\n 36.847681\n ],\n [\n 114.478921,\n 36.833248\n ],\n [\n 114.507754,\n 36.827936\n ],\n [\n 114.555231,\n 36.845979\n ],\n [\n 114.551707,\n 36.884094\n ],\n [\n 114.56702,\n 36.891307\n ],\n [\n 114.64884,\n 36.89845\n ],\n [\n 114.671073,\n 36.917429\n ],\n [\n 114.707145,\n 36.918041\n ],\n [\n 114.718166,\n 36.938103\n ],\n [\n 114.734568,\n 36.942931\n ],\n [\n 114.74341,\n 36.932323\n ],\n [\n 114.772691,\n 36.928447\n ],\n [\n 114.787492,\n 36.91396\n ],\n [\n 114.838172,\n 36.950885\n ],\n [\n 114.836314,\n 36.958024\n ],\n [\n 114.862712,\n 36.969715\n ],\n [\n 114.892441,\n 36.969647\n ],\n [\n 114.949593,\n 36.948778\n ],\n [\n 114.985602,\n 36.950477\n ],\n [\n 115.02161,\n 36.961422\n ],\n [\n 115.0589,\n 36.957004\n ],\n [\n 115.096702,\n 36.964549\n ],\n [\n 115.111631,\n 36.958431\n ],\n [\n 115.125022,\n 36.936471\n ],\n [\n 115.106505,\n 36.923958\n ],\n [\n 115.125086,\n 36.90607\n ],\n [\n 115.143219,\n 36.899131\n ],\n [\n 115.16622,\n 36.901512\n ],\n [\n 115.170449,\n 36.881509\n ],\n [\n 115.158916,\n 36.852038\n ],\n [\n 115.176856,\n 36.854353\n ],\n [\n 115.200563,\n 36.868374\n ],\n [\n 115.283344,\n 36.862589\n ],\n [\n 115.325567,\n 36.869667\n ],\n [\n 115.307499,\n 36.837129\n ],\n [\n 115.323004,\n 36.815474\n ],\n [\n 115.335691,\n 36.775826\n ],\n [\n 115.349786,\n 36.786796\n ],\n [\n 115.362921,\n 36.771056\n ],\n [\n 115.390664,\n 36.76315\n ],\n [\n 115.423661,\n 36.766081\n ],\n [\n 115.463386,\n 36.752177\n ],\n [\n 115.478314,\n 36.754699\n ],\n [\n 115.450507,\n 36.713656\n ],\n [\n 115.446663,\n 36.694626\n ],\n [\n 115.420586,\n 36.686781\n ],\n [\n 115.406426,\n 36.663242\n ],\n [\n 115.386756,\n 36.656827\n ],\n [\n 115.388229,\n 36.647203\n ],\n [\n 115.366061,\n 36.621945\n ],\n [\n 115.355104,\n 36.627407\n ],\n [\n 115.334281,\n 36.58247\n ],\n [\n 115.33127,\n 36.550219\n ],\n [\n 115.307435,\n 36.527458\n ],\n [\n 115.288341,\n 36.528484\n ],\n [\n 115.296479,\n 36.508862\n ],\n [\n 115.272836,\n 36.497373\n ],\n [\n 115.291417,\n 36.460572\n ],\n [\n 115.300259,\n 36.465908\n ],\n [\n 115.317046,\n 36.454003\n ],\n [\n 115.312048,\n 36.433541\n ],\n [\n 115.29744,\n 36.413484\n ],\n [\n 115.339983,\n 36.398078\n ],\n [\n 115.349594,\n 36.363079\n ],\n [\n 115.368688,\n 36.342593\n ],\n [\n 115.359782,\n 36.318743\n ],\n [\n 115.366637,\n 36.30894\n ],\n [\n 115.394637,\n 36.322581\n ],\n [\n 115.422956,\n 36.32217\n ],\n [\n 115.417062,\n 36.29276\n ],\n [\n 115.436347,\n 36.27637\n ],\n [\n 115.462681,\n 36.276096\n ],\n [\n 115.465372,\n 36.250373\n ],\n [\n 115.47652,\n 36.246531\n ],\n [\n 115.475944,\n 36.193066\n ],\n [\n 115.483568,\n 36.148976\n ],\n [\n 115.469985,\n 36.152892\n ],\n [\n 115.463898,\n 36.171299\n ],\n [\n 115.451276,\n 36.16972\n ],\n [\n 115.449674,\n 36.150144\n ],\n [\n 115.431286,\n 36.149183\n ],\n [\n 115.415716,\n 36.137572\n ],\n [\n 115.404632,\n 36.15564\n ],\n [\n 115.39265,\n 36.12919\n ],\n [\n 115.377914,\n 36.128503\n ],\n [\n 115.369264,\n 36.102731\n ],\n [\n 115.341393,\n 36.087608\n ],\n [\n 115.313073,\n 36.088227\n ],\n [\n 115.297247,\n 36.109123\n ],\n [\n 115.302181,\n 36.127678\n ],\n [\n 115.279307,\n 36.137847\n ],\n [\n 115.260406,\n 36.171574\n ],\n [\n 115.242146,\n 36.191212\n ],\n [\n 115.20178,\n 36.212768\n ],\n [\n 115.189222,\n 36.195538\n ],\n [\n 115.170705,\n 36.191006\n ],\n [\n 115.142834,\n 36.209679\n ],\n [\n 115.110414,\n 36.199382\n ],\n [\n 115.104583,\n 36.172192\n ],\n [\n 115.06268,\n 36.178235\n ],\n [\n 115.048456,\n 36.162027\n ],\n [\n 115.045893,\n 36.112216\n ],\n [\n 114.998416,\n 36.069732\n ],\n [\n 114.954591,\n 36.067806\n ],\n [\n 114.920184,\n 36.048205\n ],\n [\n 114.914674,\n 36.051988\n ],\n [\n 114.926463,\n 36.089464\n ],\n [\n 114.90705,\n 36.117233\n ],\n [\n 114.912432,\n 36.140458\n ],\n [\n 114.879435,\n 36.147809\n ],\n [\n 114.858675,\n 36.144305\n ],\n [\n 114.857458,\n 36.127747\n ],\n [\n 114.825166,\n 36.123693\n ],\n [\n 114.77865,\n 36.133175\n ],\n [\n 114.771345,\n 36.124517\n ],\n [\n 114.73444,\n 36.155777\n ],\n [\n 114.720665,\n 36.140046\n ],\n [\n 114.692409,\n 36.146229\n ],\n [\n 114.691128,\n 36.138397\n ],\n [\n 114.655183,\n 36.140252\n ],\n [\n 114.630387,\n 36.124243\n ],\n [\n 114.610845,\n 36.128297\n ],\n [\n 114.58259,\n 36.121356\n ],\n [\n 114.586883,\n 36.140939\n ],\n [\n 114.55805,\n 36.150763\n ],\n [\n 114.53287,\n 36.171505\n ],\n [\n 114.480267,\n 36.177823\n ],\n [\n 114.466171,\n 36.197735\n ],\n [\n 114.417541,\n 36.205904\n ],\n [\n 114.408442,\n 36.224573\n ],\n [\n 114.39236,\n 36.221141\n ],\n [\n 114.356096,\n 36.230337\n ],\n [\n 114.345139,\n 36.255792\n ],\n [\n 114.328353,\n 36.248177\n ],\n [\n 114.290102,\n 36.247148\n ],\n [\n 114.256464,\n 36.264024\n ],\n [\n 114.235577,\n 36.252774\n ],\n [\n 114.223723,\n 36.270883\n ],\n [\n 114.211037,\n 36.273009\n ],\n [\n 114.203028,\n 36.24557\n ],\n [\n 114.168878,\n 36.243443\n ],\n [\n 114.17663,\n 36.263132\n ],\n [\n 114.130627,\n 36.279662\n ],\n [\n 114.12108,\n 36.272735\n ],\n [\n 114.092632,\n 36.27781\n ],\n [\n 114.085328,\n 36.270129\n ],\n [\n 114.060532,\n 36.276507\n ],\n [\n 114.04272,\n 36.297011\n ],\n [\n 114.061557,\n 36.317989\n ],\n [\n 114.055727,\n 36.329983\n ],\n [\n 114.026254,\n 36.325117\n ],\n [\n 114.032276,\n 36.347527\n ],\n [\n 114.023691,\n 36.354995\n ],\n [\n 114.010684,\n 36.342456\n ],\n [\n 113.985824,\n 36.357599\n ],\n [\n 113.979802,\n 36.344101\n ],\n [\n 113.994474,\n 36.344169\n ],\n [\n 113.993833,\n 36.314561\n ],\n [\n 113.983005,\n 36.317166\n ],\n [\n 113.964232,\n 36.352597\n ],\n [\n 113.952763,\n 36.358147\n ],\n [\n 113.957248,\n 36.33622\n ],\n [\n 113.934439,\n 36.336151\n ],\n [\n 113.93162,\n 36.319497\n ],\n [\n 113.911181,\n 36.314767\n ],\n [\n 113.901121,\n 36.336974\n ],\n [\n 113.881515,\n 36.353899\n ],\n [\n 113.85358,\n 36.35013\n ],\n [\n 113.855951,\n 36.329367\n ],\n [\n 113.818212,\n 36.331149\n ],\n [\n 113.797581,\n 36.347184\n ],\n [\n 113.764392,\n 36.355612\n ],\n [\n 113.755166,\n 36.365956\n ],\n [\n 113.73242,\n 36.357599\n ],\n [\n 113.729601,\n 36.381642\n ],\n [\n 113.708329,\n 36.423342\n ],\n [\n 113.670206,\n 36.425122\n ],\n [\n 113.6292,\n 36.454687\n ],\n [\n 113.587233,\n 36.460982\n ],\n [\n 113.582108,\n 36.482942\n ],\n [\n 113.554428,\n 36.494706\n ],\n [\n 113.559939,\n 36.52862\n ],\n [\n 113.547317,\n 36.534362\n ],\n [\n 113.588707,\n 36.548101\n ],\n [\n 113.58813,\n 36.562725\n ],\n [\n 113.569678,\n 36.585885\n ],\n [\n 113.539756,\n 36.594082\n ],\n [\n 113.545266,\n 36.616892\n ],\n [\n 113.535463,\n 36.62925\n ],\n [\n 113.486833,\n 36.635189\n ],\n [\n 113.47703,\n 36.655189\n ],\n [\n 113.502018,\n 36.681528\n ],\n [\n 113.507015,\n 36.704858\n ],\n [\n 113.477542,\n 36.697287\n ],\n [\n 113.465369,\n 36.70779\n ],\n [\n 113.47767,\n 36.726407\n ],\n [\n 113.499391,\n 36.740589\n ],\n [\n 113.536232,\n 36.732339\n ],\n [\n 113.549303,\n 36.752313\n ],\n [\n 113.569165,\n 36.758107\n ],\n [\n 113.599984,\n 36.752927\n ],\n [\n 113.65579,\n 36.785706\n ],\n [\n 113.68097,\n 36.790134\n ],\n [\n 113.673923,\n 36.807505\n ],\n [\n 113.68411,\n 36.824804\n ],\n [\n 113.676293,\n 36.855646\n ],\n [\n 113.696924,\n 36.882257\n ],\n [\n 113.710508,\n 36.88736\n ],\n [\n 113.731587,\n 36.87865\n ],\n [\n 113.731908,\n 36.859118\n ],\n [\n 113.742095,\n 36.851085\n ],\n [\n 113.772337,\n 36.871165\n ],\n [\n 113.786945,\n 36.870076\n ],\n [\n 113.79284,\n 36.894709\n ],\n [\n 113.761701,\n 36.956052\n ],\n [\n 113.777463,\n 36.96856\n ],\n [\n 113.794954,\n 36.994995\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 130500,\n \"name\": \"邢台市\",\n \"center\": [\n 114.508851,\n 37.0682\n ],\n \"centroid\": [\n 114.822689,\n 37.213818\n ],\n \"childrenNum\": 19,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 4,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 114.022666,\n 37.435496\n ],\n [\n 114.06899,\n 37.447384\n ],\n [\n 114.096477,\n 37.490935\n ],\n [\n 114.113263,\n 37.493837\n ],\n [\n 114.126526,\n 37.481957\n ],\n [\n 114.133766,\n 37.498899\n ],\n [\n 114.156191,\n 37.505244\n ],\n [\n 114.166123,\n 37.528186\n ],\n [\n 114.184575,\n 37.530817\n ],\n [\n 114.215009,\n 37.51125\n ],\n [\n 114.255439,\n 37.504096\n ],\n [\n 114.27293,\n 37.494445\n ],\n [\n 114.303621,\n 37.507808\n ],\n [\n 114.310861,\n 37.499979\n ],\n [\n 114.334632,\n 37.502949\n ],\n [\n 114.358274,\n 37.519212\n ],\n [\n 114.370192,\n 37.513612\n ],\n [\n 114.37269,\n 37.52967\n ],\n [\n 114.412095,\n 37.549907\n ],\n [\n 114.433495,\n 37.552537\n ],\n [\n 114.483471,\n 37.576814\n ],\n [\n 114.519927,\n 37.574656\n ],\n [\n 114.585217,\n 37.55301\n ],\n [\n 114.64679,\n 37.556247\n ],\n [\n 114.680171,\n 37.565283\n ],\n [\n 114.698816,\n 37.589353\n ],\n [\n 114.707338,\n 37.615774\n ],\n [\n 114.725983,\n 37.630665\n ],\n [\n 114.764618,\n 37.624399\n ],\n [\n 114.797423,\n 37.628239\n ],\n [\n 114.808571,\n 37.659832\n ],\n [\n 114.841504,\n 37.676129\n ],\n [\n 114.847783,\n 37.69673\n ],\n [\n 114.871041,\n 37.702114\n ],\n [\n 114.881357,\n 37.716113\n ],\n [\n 114.895965,\n 37.712547\n ],\n [\n 114.904038,\n 37.729302\n ],\n [\n 114.931846,\n 37.728899\n ],\n [\n 114.960165,\n 37.720084\n ],\n [\n 114.987524,\n 37.742691\n ],\n [\n 115.001748,\n 37.734685\n ],\n [\n 115.012512,\n 37.75157\n ],\n [\n 115.041024,\n 37.733541\n ],\n [\n 115.070049,\n 37.745651\n ],\n [\n 115.066653,\n 37.771007\n ],\n [\n 115.072099,\n 37.788893\n ],\n [\n 115.097215,\n 37.797498\n ],\n [\n 115.097471,\n 37.807849\n ],\n [\n 115.122972,\n 37.811479\n ],\n [\n 115.131173,\n 37.799783\n ],\n [\n 115.150523,\n 37.808521\n ],\n [\n 115.160262,\n 37.780287\n ],\n [\n 115.152765,\n 37.759507\n ],\n [\n 115.172564,\n 37.749351\n ],\n [\n 115.227281,\n 37.732599\n ],\n [\n 115.243235,\n 37.722641\n ],\n [\n 115.261431,\n 37.68818\n ],\n [\n 115.253807,\n 37.671415\n ],\n [\n 115.255088,\n 37.645621\n ],\n [\n 115.227858,\n 37.648921\n ],\n [\n 115.202934,\n 37.637133\n ],\n [\n 115.191593,\n 37.608833\n ],\n [\n 115.172756,\n 37.600543\n ],\n [\n 115.200563,\n 37.572498\n ],\n [\n 115.188325,\n 37.563125\n ],\n [\n 115.201908,\n 37.555977\n ],\n [\n 115.237276,\n 37.575465\n ],\n [\n 115.282575,\n 37.576005\n ],\n [\n 115.307179,\n 37.563935\n ],\n [\n 115.360871,\n 37.523935\n ],\n [\n 115.359461,\n 37.558675\n ],\n [\n 115.372147,\n 37.544106\n ],\n [\n 115.405785,\n 37.535944\n ],\n [\n 115.410078,\n 37.523261\n ],\n [\n 115.430965,\n 37.506796\n ],\n [\n 115.455313,\n 37.501802\n ],\n [\n 115.421675,\n 37.495727\n ],\n [\n 115.426096,\n 37.506256\n ],\n [\n 115.402069,\n 37.51017\n ],\n [\n 115.397968,\n 37.497347\n ],\n [\n 115.417638,\n 37.487762\n ],\n [\n 115.410719,\n 37.476421\n ],\n [\n 115.431478,\n 37.469602\n ],\n [\n 115.404183,\n 37.462039\n ],\n [\n 115.360038,\n 37.461431\n ],\n [\n 115.345109,\n 37.448195\n ],\n [\n 115.391049,\n 37.42793\n ],\n [\n 115.428595,\n 37.387926\n ],\n [\n 115.468768,\n 37.382788\n ],\n [\n 115.506634,\n 37.368997\n ],\n [\n 115.520089,\n 37.353648\n ],\n [\n 115.52938,\n 37.326864\n ],\n [\n 115.577177,\n 37.316107\n ],\n [\n 115.599218,\n 37.332884\n ],\n [\n 115.590632,\n 37.312453\n ],\n [\n 115.599859,\n 37.301965\n ],\n [\n 115.623437,\n 37.297905\n ],\n [\n 115.63292,\n 37.277058\n ],\n [\n 115.67258,\n 37.275839\n ],\n [\n 115.675784,\n 37.258914\n ],\n [\n 115.698465,\n 37.257153\n ],\n [\n 115.756322,\n 37.209876\n ],\n [\n 115.76997,\n 37.14155\n ],\n [\n 115.786564,\n 37.123916\n ],\n [\n 115.827378,\n 37.106006\n ],\n [\n 115.853904,\n 37.059245\n ],\n [\n 115.812385,\n 37.028961\n ],\n [\n 115.80963,\n 37.011436\n ],\n [\n 115.776441,\n 36.992073\n ],\n [\n 115.784322,\n 36.970735\n ],\n [\n 115.796816,\n 36.968763\n ],\n [\n 115.772789,\n 36.936811\n ],\n [\n 115.757796,\n 36.903008\n ],\n [\n 115.740561,\n 36.90641\n ],\n [\n 115.71128,\n 36.882393\n ],\n [\n 115.688598,\n 36.83958\n ],\n [\n 115.684177,\n 36.812954\n ],\n [\n 115.66502,\n 36.812477\n ],\n [\n 115.637405,\n 36.797492\n ],\n [\n 115.572116,\n 36.775349\n ],\n [\n 115.538734,\n 36.784139\n ],\n [\n 115.523613,\n 36.763832\n ],\n [\n 115.502918,\n 36.77017\n ],\n [\n 115.478314,\n 36.754699\n ],\n [\n 115.463386,\n 36.752177\n ],\n [\n 115.423661,\n 36.766081\n ],\n [\n 115.390664,\n 36.76315\n ],\n [\n 115.362921,\n 36.771056\n ],\n [\n 115.349786,\n 36.786796\n ],\n [\n 115.335691,\n 36.775826\n ],\n [\n 115.323004,\n 36.815474\n ],\n [\n 115.307499,\n 36.837129\n ],\n [\n 115.325567,\n 36.869667\n ],\n [\n 115.283344,\n 36.862589\n ],\n [\n 115.200563,\n 36.868374\n ],\n [\n 115.176856,\n 36.854353\n ],\n [\n 115.158916,\n 36.852038\n ],\n [\n 115.170449,\n 36.881509\n ],\n [\n 115.16622,\n 36.901512\n ],\n [\n 115.143219,\n 36.899131\n ],\n [\n 115.125086,\n 36.90607\n ],\n [\n 115.106505,\n 36.923958\n ],\n [\n 115.125022,\n 36.936471\n ],\n [\n 115.111631,\n 36.958431\n ],\n [\n 115.096702,\n 36.964549\n ],\n [\n 115.0589,\n 36.957004\n ],\n [\n 115.02161,\n 36.961422\n ],\n [\n 114.985602,\n 36.950477\n ],\n [\n 114.949593,\n 36.948778\n ],\n [\n 114.892441,\n 36.969647\n ],\n [\n 114.862712,\n 36.969715\n ],\n [\n 114.836314,\n 36.958024\n ],\n [\n 114.838172,\n 36.950885\n ],\n [\n 114.787492,\n 36.91396\n ],\n [\n 114.772691,\n 36.928447\n ],\n [\n 114.74341,\n 36.932323\n ],\n [\n 114.734568,\n 36.942931\n ],\n [\n 114.718166,\n 36.938103\n ],\n [\n 114.707145,\n 36.918041\n ],\n [\n 114.671073,\n 36.917429\n ],\n [\n 114.64884,\n 36.89845\n ],\n [\n 114.56702,\n 36.891307\n ],\n [\n 114.551707,\n 36.884094\n ],\n [\n 114.555231,\n 36.845979\n ],\n [\n 114.507754,\n 36.827936\n ],\n [\n 114.478921,\n 36.833248\n ],\n [\n 114.462327,\n 36.847681\n ],\n [\n 114.421193,\n 36.839444\n ],\n [\n 114.353533,\n 36.852038\n ],\n [\n 114.336105,\n 36.846728\n ],\n [\n 114.304518,\n 36.857007\n ],\n [\n 114.299969,\n 36.845435\n ],\n [\n 114.252684,\n 36.856531\n ],\n [\n 114.225902,\n 36.843052\n ],\n [\n 114.182653,\n 36.843937\n ],\n [\n 114.100449,\n 36.839035\n ],\n [\n 114.081548,\n 36.845094\n ],\n [\n 114.090005,\n 36.861023\n ],\n [\n 114.063672,\n 36.879331\n ],\n [\n 114.028176,\n 36.881236\n ],\n [\n 113.991078,\n 36.914913\n ],\n [\n 113.984415,\n 36.941503\n ],\n [\n 113.941743,\n 36.983376\n ],\n [\n 113.901185,\n 36.99683\n ],\n [\n 113.883886,\n 37.010893\n ],\n [\n 113.859475,\n 37.015037\n ],\n [\n 113.828784,\n 37.012048\n ],\n [\n 113.794954,\n 36.994995\n ],\n [\n 113.771888,\n 37.016803\n ],\n [\n 113.790149,\n 37.04295\n ],\n [\n 113.788227,\n 37.059788\n ],\n [\n 113.768749,\n 37.062504\n ],\n [\n 113.758177,\n 37.075672\n ],\n [\n 113.77349,\n 37.106956\n ],\n [\n 113.767339,\n 37.144601\n ],\n [\n 113.77317,\n 37.151857\n ],\n [\n 113.831924,\n 37.167518\n ],\n [\n 113.836601,\n 37.18948\n ],\n [\n 113.853067,\n 37.215093\n ],\n [\n 113.886449,\n 37.23914\n ],\n [\n 113.886897,\n 37.25993\n ],\n [\n 113.899007,\n 37.279495\n ],\n [\n 113.902147,\n 37.30995\n ],\n [\n 113.921176,\n 37.33072\n ],\n [\n 113.959811,\n 37.348982\n ],\n [\n 113.973907,\n 37.403133\n ],\n [\n 114.022666,\n 37.435496\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 130600,\n \"name\": \"保定市\",\n \"center\": [\n 115.482331,\n 38.867657\n ],\n \"centroid\": [\n 115.177664,\n 39.025148\n ],\n \"childrenNum\": 24,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 5,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 116.244678,\n 39.517354\n ],\n [\n 116.222766,\n 39.501995\n ],\n [\n 116.220843,\n 39.511644\n ],\n [\n 116.182144,\n 39.49635\n ],\n [\n 116.179901,\n 39.486568\n ],\n [\n 116.151325,\n 39.471005\n ],\n [\n 116.132104,\n 39.429423\n ],\n [\n 116.133001,\n 39.4055\n ],\n [\n 116.116791,\n 39.376243\n ],\n [\n 116.13582,\n 39.351842\n ],\n [\n 116.198226,\n 39.351315\n ],\n [\n 116.208734,\n 39.330195\n ],\n [\n 116.201109,\n 39.251911\n ],\n [\n 116.186116,\n 39.222457\n ],\n [\n 116.206555,\n 39.207429\n ],\n [\n 116.207837,\n 39.168526\n ],\n [\n 116.221804,\n 39.147813\n ],\n [\n 116.262426,\n 39.138114\n ],\n [\n 116.278957,\n 39.112045\n ],\n [\n 116.305354,\n 39.098116\n ],\n [\n 116.317592,\n 39.077911\n ],\n [\n 116.318617,\n 39.037416\n ],\n [\n 116.307148,\n 39.032196\n ],\n [\n 116.293757,\n 39.007344\n ],\n [\n 116.299588,\n 38.993658\n ],\n [\n 116.3215,\n 38.998088\n ],\n [\n 116.33534,\n 38.984004\n ],\n [\n 116.316182,\n 38.962708\n ],\n [\n 116.298755,\n 38.975076\n ],\n [\n 116.291386,\n 38.948683\n ],\n [\n 116.253007,\n 38.932074\n ],\n [\n 116.243653,\n 38.949345\n ],\n [\n 116.228083,\n 38.942199\n ],\n [\n 116.230262,\n 38.92453\n ],\n [\n 116.209503,\n 38.921618\n ],\n [\n 116.15203,\n 38.948352\n ],\n [\n 116.121083,\n 38.934391\n ],\n [\n 116.125633,\n 38.920823\n ],\n [\n 116.112754,\n 38.909703\n ],\n [\n 116.085524,\n 38.91063\n ],\n [\n 116.045543,\n 38.897786\n ],\n [\n 116.04157,\n 38.878451\n ],\n [\n 116.048746,\n 38.8607\n ],\n [\n 116.035548,\n 38.829492\n ],\n [\n 116.04093,\n 38.812259\n ],\n [\n 116.023054,\n 38.812524\n ],\n [\n 115.999731,\n 38.796812\n ],\n [\n 115.995118,\n 38.77798\n ],\n [\n 115.95187,\n 38.746736\n ],\n [\n 115.944053,\n 38.735456\n ],\n [\n 115.966286,\n 38.708973\n ],\n [\n 115.955009,\n 38.702932\n ],\n [\n 115.959879,\n 38.679891\n ],\n [\n 115.973526,\n 38.668467\n ],\n [\n 115.973398,\n 38.635514\n ],\n [\n 115.951101,\n 38.627938\n ],\n [\n 115.96321,\n 38.613182\n ],\n [\n 115.960583,\n 38.584394\n ],\n [\n 115.934058,\n 38.546678\n ],\n [\n 115.940721,\n 38.530508\n ],\n [\n 115.890809,\n 38.52585\n ],\n [\n 115.878507,\n 38.535566\n ],\n [\n 115.869345,\n 38.524652\n ],\n [\n 115.875047,\n 38.510141\n ],\n [\n 115.816101,\n 38.52545\n ],\n [\n 115.79137,\n 38.512005\n ],\n [\n 115.770418,\n 38.48817\n ],\n [\n 115.745686,\n 38.481311\n ],\n [\n 115.718584,\n 38.449205\n ],\n [\n 115.715957,\n 38.438411\n ],\n [\n 115.731462,\n 38.392618\n ],\n [\n 115.705321,\n 38.367543\n ],\n [\n 115.699811,\n 38.349932\n ],\n [\n 115.650155,\n 38.340791\n ],\n [\n 115.644965,\n 38.32611\n ],\n [\n 115.590504,\n 38.332784\n ],\n [\n 115.57942,\n 38.342859\n ],\n [\n 115.575768,\n 38.326377\n ],\n [\n 115.550908,\n 38.332917\n ],\n [\n 115.547704,\n 38.318168\n ],\n [\n 115.516437,\n 38.318168\n ],\n [\n 115.516822,\n 38.357337\n ],\n [\n 115.494781,\n 38.362006\n ],\n [\n 115.495101,\n 38.342993\n ],\n [\n 115.478122,\n 38.341658\n ],\n [\n 115.462104,\n 38.327311\n ],\n [\n 115.420906,\n 38.337922\n ],\n [\n 115.402453,\n 38.320103\n ],\n [\n 115.381822,\n 38.327578\n ],\n [\n 115.383104,\n 38.299076\n ],\n [\n 115.393611,\n 38.285588\n ],\n [\n 115.369072,\n 38.283451\n ],\n [\n 115.356194,\n 38.271764\n ],\n [\n 115.34953,\n 38.248117\n ],\n [\n 115.324734,\n 38.248184\n ],\n [\n 115.302758,\n 38.235289\n ],\n [\n 115.273605,\n 38.2403\n ],\n [\n 115.263994,\n 38.260543\n ],\n [\n 115.265788,\n 38.287658\n ],\n [\n 115.252205,\n 38.29093\n ],\n [\n 115.225871,\n 38.269894\n ],\n [\n 115.210174,\n 38.236491\n ],\n [\n 115.19422,\n 38.236759\n ],\n [\n 115.168591,\n 38.259608\n ],\n [\n 115.152317,\n 38.256802\n ],\n [\n 115.108107,\n 38.264551\n ],\n [\n 115.085874,\n 38.276773\n ],\n [\n 115.073765,\n 38.293134\n ],\n [\n 115.056722,\n 38.288326\n ],\n [\n 115.066204,\n 38.264684\n ],\n [\n 115.056465,\n 38.258472\n ],\n [\n 115.031862,\n 38.267089\n ],\n [\n 114.989062,\n 38.258138\n ],\n [\n 114.990087,\n 38.272165\n ],\n [\n 114.970096,\n 38.281114\n ],\n [\n 114.927681,\n 38.283385\n ],\n [\n 114.915059,\n 38.263348\n ],\n [\n 114.886162,\n 38.265286\n ],\n [\n 114.883343,\n 38.284854\n ],\n [\n 114.902565,\n 38.294936\n ],\n [\n 114.906986,\n 38.309624\n ],\n [\n 114.922875,\n 38.315631\n ],\n [\n 114.942994,\n 38.343193\n ],\n [\n 114.932871,\n 38.344194\n ],\n [\n 114.923388,\n 38.388217\n ],\n [\n 114.910381,\n 38.393751\n ],\n [\n 114.882254,\n 38.424149\n ],\n [\n 114.853998,\n 38.435879\n ],\n [\n 114.858163,\n 38.448605\n ],\n [\n 114.840992,\n 38.460797\n ],\n [\n 114.837852,\n 38.435745\n ],\n [\n 114.819143,\n 38.449871\n ],\n [\n 114.830868,\n 38.46033\n ],\n [\n 114.81075,\n 38.492365\n ],\n [\n 114.765259,\n 38.496626\n ],\n [\n 114.729442,\n 38.484574\n ],\n [\n 114.702084,\n 38.489102\n ],\n [\n 114.6737,\n 38.473452\n ],\n [\n 114.651851,\n 38.504682\n ],\n [\n 114.635257,\n 38.514801\n ],\n [\n 114.595724,\n 38.568897\n ],\n [\n 114.58432,\n 38.596429\n ],\n [\n 114.56324,\n 38.590644\n ],\n [\n 114.527616,\n 38.590644\n ],\n [\n 114.552284,\n 38.612983\n ],\n [\n 114.536907,\n 38.632324\n ],\n [\n 114.53633,\n 38.649268\n ],\n [\n 114.522106,\n 38.65372\n ],\n [\n 114.498463,\n 38.678297\n ],\n [\n 114.452652,\n 38.699413\n ],\n [\n 114.437787,\n 38.692773\n ],\n [\n 114.413504,\n 38.703928\n ],\n [\n 114.366411,\n 38.6862\n ],\n [\n 114.341167,\n 38.690184\n ],\n [\n 114.311502,\n 38.706517\n ],\n [\n 114.212831,\n 38.688192\n ],\n [\n 114.182205,\n 38.67657\n ],\n [\n 114.129153,\n 38.669596\n ],\n [\n 114.125053,\n 38.659632\n ],\n [\n 114.086097,\n 38.65837\n ],\n [\n 114.052139,\n 38.686399\n ],\n [\n 114.028624,\n 38.688524\n ],\n [\n 113.991655,\n 38.676769\n ],\n [\n 113.964617,\n 38.699811\n ],\n [\n 113.929697,\n 38.702467\n ],\n [\n 113.932324,\n 38.71362\n ],\n [\n 113.883245,\n 38.74667\n ],\n [\n 113.864664,\n 38.746006\n ],\n [\n 113.839548,\n 38.758413\n ],\n [\n 113.836537,\n 38.79595\n ],\n [\n 113.853644,\n 38.810138\n ],\n [\n 113.855566,\n 38.828962\n ],\n [\n 113.83564,\n 38.842547\n ],\n [\n 113.801297,\n 38.85487\n ],\n [\n 113.776181,\n 38.885669\n ],\n [\n 113.775156,\n 38.919103\n ],\n [\n 113.767532,\n 38.959665\n ],\n [\n 113.776758,\n 38.98698\n ],\n [\n 113.806808,\n 38.989691\n ],\n [\n 113.830514,\n 39.011773\n ],\n [\n 113.884399,\n 39.051688\n ],\n [\n 113.898046,\n 39.067607\n ],\n [\n 113.930274,\n 39.063446\n ],\n [\n 113.942896,\n 39.08742\n ],\n [\n 113.961733,\n 39.100823\n ],\n [\n 113.995115,\n 39.095475\n ],\n [\n 114.006456,\n 39.12287\n ],\n [\n 114.050793,\n 39.13587\n ],\n [\n 114.065274,\n 39.093494\n ],\n [\n 114.078793,\n 39.095343\n ],\n [\n 114.096797,\n 39.083722\n ],\n [\n 114.108714,\n 39.052282\n ],\n [\n 114.126654,\n 39.050895\n ],\n [\n 114.157217,\n 39.061134\n ],\n [\n 114.180923,\n 39.049111\n ],\n [\n 114.197005,\n 39.050432\n ],\n [\n 114.22635,\n 39.066485\n ],\n [\n 114.300097,\n 39.079231\n ],\n [\n 114.320215,\n 39.070712\n ],\n [\n 114.349176,\n 39.076788\n ],\n [\n 114.369679,\n 39.107557\n ],\n [\n 114.360773,\n 39.133957\n ],\n [\n 114.388196,\n 39.176968\n ],\n [\n 114.417989,\n 39.171626\n ],\n [\n 114.443618,\n 39.174132\n ],\n [\n 114.453165,\n 39.192662\n ],\n [\n 114.469695,\n 39.193321\n ],\n [\n 114.475974,\n 39.215867\n ],\n [\n 114.467389,\n 39.225884\n ],\n [\n 114.436314,\n 39.229641\n ],\n [\n 114.415939,\n 39.242885\n ],\n [\n 114.437018,\n 39.25942\n ],\n [\n 114.425101,\n 39.285105\n ],\n [\n 114.438236,\n 39.319139\n ],\n [\n 114.46662,\n 39.329669\n ],\n [\n 114.47969,\n 39.351118\n ],\n [\n 114.469503,\n 39.355196\n ],\n [\n 114.470913,\n 39.408787\n ],\n [\n 114.496798,\n 39.438556\n ],\n [\n 114.502308,\n 39.477112\n ],\n [\n 114.532678,\n 39.486174\n ],\n [\n 114.536586,\n 39.512891\n ],\n [\n 114.557345,\n 39.531987\n ],\n [\n 114.563432,\n 39.558162\n ],\n [\n 114.58432,\n 39.585835\n ],\n [\n 114.604887,\n 39.567869\n ],\n [\n 114.633527,\n 39.555866\n ],\n [\n 114.654991,\n 39.599209\n ],\n [\n 114.680748,\n 39.588064\n ],\n [\n 114.712079,\n 39.594358\n ],\n [\n 114.716756,\n 39.618674\n ],\n [\n 114.760645,\n 39.617036\n ],\n [\n 114.783775,\n 39.609499\n ],\n [\n 114.821642,\n 39.61022\n ],\n [\n 114.838429,\n 39.589179\n ],\n [\n 114.891032,\n 39.634728\n ],\n [\n 114.936331,\n 39.66368\n ],\n [\n 114.961895,\n 39.666103\n ],\n [\n 114.987396,\n 39.67802\n ],\n [\n 115.011487,\n 39.674746\n ],\n [\n 115.03199,\n 39.702373\n ],\n [\n 115.050058,\n 39.709245\n ],\n [\n 115.095293,\n 39.704795\n ],\n [\n 115.138734,\n 39.688627\n ],\n [\n 115.168847,\n 39.672651\n ],\n [\n 115.179163,\n 39.679592\n ],\n [\n 115.177625,\n 39.700475\n ],\n [\n 115.215043,\n 39.708067\n ],\n [\n 115.250859,\n 39.73882\n ],\n [\n 115.283216,\n 39.745165\n ],\n [\n 115.312945,\n 39.783551\n ],\n [\n 115.342867,\n 39.79205\n ],\n [\n 115.330052,\n 39.80656\n ],\n [\n 115.345237,\n 39.821851\n ],\n [\n 115.343251,\n 39.837857\n ],\n [\n 115.354848,\n 39.850528\n ],\n [\n 115.354848,\n 39.850528\n ],\n [\n 115.365676,\n 39.867507\n ],\n [\n 115.364523,\n 39.885331\n ],\n [\n 115.399891,\n 39.891336\n ],\n [\n 115.40162,\n 39.903802\n ],\n [\n 115.426801,\n 39.950056\n ],\n [\n 115.438462,\n 39.952534\n ],\n [\n 115.480685,\n 39.935838\n ],\n [\n 115.487285,\n 39.923834\n ],\n [\n 115.523037,\n 39.898907\n ],\n [\n 115.51003,\n 39.881479\n ],\n [\n 115.526625,\n 39.875538\n ],\n [\n 115.514323,\n 39.837726\n ],\n [\n 115.569168,\n 39.814206\n ],\n [\n 115.55488,\n 39.795579\n ],\n [\n 115.505289,\n 39.784597\n ],\n [\n 115.483761,\n 39.798717\n ],\n [\n 115.457171,\n 39.781982\n ],\n [\n 115.434105,\n 39.782309\n ],\n [\n 115.439871,\n 39.752099\n ],\n [\n 115.466717,\n 39.740456\n ],\n [\n 115.482351,\n 39.742483\n ],\n [\n 115.499266,\n 39.69622\n ],\n [\n 115.491065,\n 39.66846\n ],\n [\n 115.478507,\n 39.650319\n ],\n [\n 115.506698,\n 39.652153\n ],\n [\n 115.52246,\n 39.639969\n ],\n [\n 115.523421,\n 39.620378\n ],\n [\n 115.513041,\n 39.611727\n ],\n [\n 115.515925,\n 39.591211\n ],\n [\n 115.545974,\n 39.61874\n ],\n [\n 115.587044,\n 39.589965\n ],\n [\n 115.61844,\n 39.604059\n ],\n [\n 115.633176,\n 39.597701\n ],\n [\n 115.664507,\n 39.604649\n ],\n [\n 115.667134,\n 39.615594\n ],\n [\n 115.685331,\n 39.603666\n ],\n [\n 115.697889,\n 39.579344\n ],\n [\n 115.692058,\n 39.56577\n ],\n [\n 115.71711,\n 39.560392\n ],\n [\n 115.738574,\n 39.546289\n ],\n [\n 115.752542,\n 39.515385\n ],\n [\n 115.82033,\n 39.509741\n ],\n [\n 115.819241,\n 39.53074\n ],\n [\n 115.846023,\n 39.543272\n ],\n [\n 115.855506,\n 39.555014\n ],\n [\n 115.882992,\n 39.548126\n ],\n [\n 115.89004,\n 39.567869\n ],\n [\n 115.907852,\n 39.566885\n ],\n [\n 115.915605,\n 39.58295\n ],\n [\n 115.910223,\n 39.600847\n ],\n [\n 115.923742,\n 39.597308\n ],\n [\n 115.937966,\n 39.577442\n ],\n [\n 115.959558,\n 39.560851\n ],\n [\n 115.978139,\n 39.572852\n ],\n [\n 115.978459,\n 39.595669\n ],\n [\n 115.991018,\n 39.593768\n ],\n [\n 115.995182,\n 39.577049\n ],\n [\n 116.026193,\n 39.587409\n ],\n [\n 116.036188,\n 39.571672\n ],\n [\n 116.121468,\n 39.574951\n ],\n [\n 116.149595,\n 39.573049\n ],\n [\n 116.151774,\n 39.583409\n ],\n [\n 116.19688,\n 39.588982\n ],\n [\n 116.221164,\n 39.578951\n ],\n [\n 116.246152,\n 39.557178\n ],\n [\n 116.244678,\n 39.517354\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 130700,\n \"name\": \"张家口市\",\n \"center\": [\n 114.884091,\n 40.811901\n ],\n \"centroid\": [\n 115.038685,\n 40.874644\n ],\n \"childrenNum\": 16,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 6,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 114.563432,\n 39.558162\n ],\n [\n 114.568942,\n 39.573967\n ],\n [\n 114.557025,\n 39.581442\n ],\n [\n 114.515378,\n 39.564983\n ],\n [\n 114.495836,\n 39.608188\n ],\n [\n 114.474757,\n 39.613759\n ],\n [\n 114.431636,\n 39.614021\n ],\n [\n 114.408122,\n 39.651956\n ],\n [\n 114.408827,\n 39.782375\n ],\n [\n 114.390695,\n 39.818584\n ],\n [\n 114.406712,\n 39.83348\n ],\n [\n 114.395436,\n 39.867246\n ],\n [\n 114.349432,\n 39.862806\n ],\n [\n 114.328929,\n 39.865548\n ],\n [\n 114.286065,\n 39.858235\n ],\n [\n 114.276967,\n 39.874494\n ],\n [\n 114.224877,\n 39.851704\n ],\n [\n 114.19944,\n 39.87939\n ],\n [\n 114.229426,\n 39.899495\n ],\n [\n 114.211998,\n 39.918745\n ],\n [\n 114.174132,\n 39.897602\n ],\n [\n 114.102884,\n 39.912873\n ],\n [\n 114.089941,\n 39.910197\n ],\n [\n 114.067772,\n 39.922334\n ],\n [\n 114.047397,\n 39.916135\n ],\n [\n 114.02824,\n 39.959316\n ],\n [\n 114.029457,\n 39.985395\n ],\n [\n 114.021256,\n 39.991782\n ],\n [\n 113.960452,\n 40.000906\n ],\n [\n 113.932004,\n 40.009443\n ],\n [\n 113.914641,\n 40.005924\n ],\n [\n 113.922457,\n 40.026578\n ],\n [\n 113.954878,\n 40.030812\n ],\n [\n 113.975573,\n 40.051068\n ],\n [\n 113.981019,\n 40.073205\n ],\n [\n 113.973843,\n 40.097157\n ],\n [\n 113.989476,\n 40.112383\n ],\n [\n 114.019462,\n 40.102819\n ],\n [\n 114.043809,\n 40.056863\n ],\n [\n 114.091159,\n 40.075288\n ],\n [\n 114.101218,\n 40.10874\n ],\n [\n 114.089108,\n 40.121491\n ],\n [\n 114.068029,\n 40.179754\n ],\n [\n 114.097758,\n 40.193597\n ],\n [\n 114.123387,\n 40.188723\n ],\n [\n 114.123963,\n 40.178129\n ],\n [\n 114.145107,\n 40.177349\n ],\n [\n 114.180026,\n 40.191517\n ],\n [\n 114.235833,\n 40.198341\n ],\n [\n 114.240126,\n 40.221924\n ],\n [\n 114.255247,\n 40.236213\n ],\n [\n 114.293113,\n 40.230108\n ],\n [\n 114.335144,\n 40.245434\n ],\n [\n 114.362567,\n 40.250109\n ],\n [\n 114.406392,\n 40.246149\n ],\n [\n 114.469951,\n 40.268093\n ],\n [\n 114.510957,\n 40.303006\n ],\n [\n 114.526463,\n 40.32357\n ],\n [\n 114.530627,\n 40.3451\n ],\n [\n 114.499296,\n 40.354047\n ],\n [\n 114.470784,\n 40.349703\n ],\n [\n 114.446565,\n 40.372845\n ],\n [\n 114.390374,\n 40.351259\n ],\n [\n 114.382237,\n 40.362085\n ],\n [\n 114.344435,\n 40.36954\n ],\n [\n 114.314449,\n 40.369604\n ],\n [\n 114.28709,\n 40.423444\n ],\n [\n 114.299648,\n 40.440086\n ],\n [\n 114.275429,\n 40.458019\n ],\n [\n 114.267228,\n 40.474199\n ],\n [\n 114.282605,\n 40.495164\n ],\n [\n 114.285617,\n 40.525822\n ],\n [\n 114.296381,\n 40.535973\n ],\n [\n 114.293433,\n 40.551424\n ],\n [\n 114.273379,\n 40.553815\n ],\n [\n 114.282926,\n 40.590778\n ],\n [\n 114.258258,\n 40.610672\n ],\n [\n 114.236153,\n 40.606991\n ],\n [\n 114.209307,\n 40.629721\n ],\n [\n 114.216163,\n 40.63437\n ],\n [\n 114.200081,\n 40.662189\n ],\n [\n 114.18323,\n 40.671675\n ],\n [\n 114.147285,\n 40.73346\n ],\n [\n 114.134727,\n 40.737263\n ],\n [\n 114.104165,\n 40.768068\n ],\n [\n 114.104421,\n 40.797571\n ],\n [\n 114.081163,\n 40.790486\n ],\n [\n 114.044771,\n 40.831115\n ],\n [\n 114.069694,\n 40.846948\n ],\n [\n 114.073539,\n 40.857308\n ],\n [\n 114.052844,\n 40.870304\n ],\n [\n 114.052203,\n 40.893395\n ],\n [\n 114.041375,\n 40.917378\n ],\n [\n 114.057457,\n 40.925092\n ],\n [\n 114.011773,\n 40.935311\n ],\n [\n 114.000753,\n 40.947521\n ],\n [\n 113.991142,\n 40.940195\n ],\n [\n 113.97647,\n 40.961206\n ],\n [\n 113.972946,\n 40.982981\n ],\n [\n 113.922585,\n 41.024391\n ],\n [\n 113.90567,\n 41.034081\n ],\n [\n 113.868445,\n 41.068853\n ],\n [\n 113.823402,\n 41.093093\n ],\n [\n 113.820327,\n 41.101619\n ],\n [\n 113.863383,\n 41.106042\n ],\n [\n 113.877927,\n 41.115593\n ],\n [\n 113.920407,\n 41.172034\n ],\n [\n 113.973651,\n 41.174275\n ],\n [\n 113.996781,\n 41.192458\n ],\n [\n 114.000625,\n 41.224011\n ],\n [\n 114.016259,\n 41.232073\n ],\n [\n 114.007032,\n 41.250752\n ],\n [\n 113.985824,\n 41.270385\n ],\n [\n 113.976854,\n 41.266676\n ],\n [\n 113.971536,\n 41.239814\n ],\n [\n 113.952956,\n 41.254269\n ],\n [\n 113.951226,\n 41.282916\n ],\n [\n 113.936297,\n 41.294805\n ],\n [\n 113.922585,\n 41.291162\n ],\n [\n 113.89952,\n 41.316214\n ],\n [\n 113.926622,\n 41.326309\n ],\n [\n 113.923354,\n 41.33934\n ],\n [\n 113.937514,\n 41.356647\n ],\n [\n 113.93399,\n 41.376823\n ],\n [\n 113.943985,\n 41.390802\n ],\n [\n 113.918229,\n 41.40382\n ],\n [\n 113.8712,\n 41.413327\n ],\n [\n 113.884911,\n 41.438141\n ],\n [\n 113.92124,\n 41.457271\n ],\n [\n 113.930659,\n 41.485573\n ],\n [\n 113.952827,\n 41.483533\n ],\n [\n 113.977559,\n 41.506664\n ],\n [\n 114.032148,\n 41.529595\n ],\n [\n 114.083982,\n 41.528958\n ],\n [\n 114.101218,\n 41.537746\n ],\n [\n 114.231027,\n 41.513671\n ],\n [\n 114.231604,\n 41.547043\n ],\n [\n 114.221673,\n 41.582242\n ],\n [\n 114.237242,\n 41.59624\n ],\n [\n 114.227632,\n 41.620221\n ],\n [\n 114.259347,\n 41.6234\n ],\n [\n 114.215394,\n 41.685057\n ],\n [\n 114.219302,\n 41.700239\n ],\n [\n 114.237563,\n 41.698651\n ],\n [\n 114.232501,\n 41.717705\n ],\n [\n 114.206744,\n 41.738402\n ],\n [\n 114.215266,\n 41.756492\n ],\n [\n 114.200401,\n 41.778509\n ],\n [\n 114.202964,\n 41.793416\n ],\n [\n 114.243457,\n 41.832792\n ],\n [\n 114.287026,\n 41.868658\n ],\n [\n 114.330403,\n 41.916977\n ],\n [\n 114.326751,\n 41.9297\n ],\n [\n 114.343217,\n 41.926915\n ],\n [\n 114.348087,\n 41.947609\n ],\n [\n 114.374036,\n 41.956783\n ],\n [\n 114.421705,\n 41.942167\n ],\n [\n 114.476295,\n 41.953936\n ],\n [\n 114.487443,\n 41.96722\n ],\n [\n 114.510701,\n 41.973292\n ],\n [\n 114.501411,\n 41.99277\n ],\n [\n 114.484752,\n 41.999155\n ],\n [\n 114.485969,\n 42.015338\n ],\n [\n 114.46835,\n 42.025577\n ],\n [\n 114.466107,\n 42.037962\n ],\n [\n 114.479883,\n 42.064304\n ],\n [\n 114.5025,\n 42.067398\n ],\n [\n 114.500706,\n 42.085963\n ],\n [\n 114.510957,\n 42.110897\n ],\n [\n 114.560293,\n 42.132414\n ],\n [\n 114.585537,\n 42.131215\n ],\n [\n 114.624813,\n 42.112222\n ],\n [\n 114.647751,\n 42.109634\n ],\n [\n 114.675494,\n 42.120426\n ],\n [\n 114.704647,\n 42.121435\n ],\n [\n 114.710221,\n 42.115377\n ],\n [\n 114.754879,\n 42.115756\n ],\n [\n 114.78935,\n 42.130963\n ],\n [\n 114.793963,\n 42.149193\n ],\n [\n 114.828369,\n 42.147679\n ],\n [\n 114.823051,\n 42.140867\n ],\n [\n 114.861302,\n 42.101997\n ],\n [\n 114.860854,\n 42.05483\n ],\n [\n 114.889622,\n 42.030316\n ],\n [\n 114.89148,\n 42.012115\n ],\n [\n 114.901796,\n 42.015528\n ],\n [\n 114.916853,\n 41.981008\n ],\n [\n 114.915507,\n 41.958934\n ],\n [\n 114.933255,\n 41.943559\n ],\n [\n 114.916148,\n 41.936978\n ],\n [\n 114.925438,\n 41.899566\n ],\n [\n 114.92153,\n 41.875943\n ],\n [\n 114.939214,\n 41.846165\n ],\n [\n 114.922363,\n 41.825121\n ],\n [\n 114.8663,\n 41.804578\n ],\n [\n 114.896157,\n 41.76766\n ],\n [\n 114.895068,\n 41.736561\n ],\n [\n 114.902885,\n 41.689313\n ],\n [\n 114.895581,\n 41.636436\n ],\n [\n 114.860726,\n 41.600948\n ],\n [\n 114.877449,\n 41.590896\n ],\n [\n 114.89808,\n 41.607182\n ],\n [\n 114.938317,\n 41.613225\n ],\n [\n 114.977849,\n 41.611571\n ],\n [\n 115.025006,\n 41.61526\n ],\n [\n 115.055953,\n 41.602284\n ],\n [\n 115.087796,\n 41.613415\n ],\n [\n 115.099137,\n 41.623973\n ],\n [\n 115.113489,\n 41.615769\n ],\n [\n 115.142386,\n 41.616087\n ],\n [\n 115.167246,\n 41.605973\n ],\n [\n 115.195053,\n 41.602093\n ],\n [\n 115.205753,\n 41.591723\n ],\n [\n 115.204215,\n 41.571423\n ],\n [\n 115.257587,\n 41.581097\n ],\n [\n 115.266429,\n 41.592868\n ],\n [\n 115.26425,\n 41.611889\n ],\n [\n 115.273477,\n 41.622764\n ],\n [\n 115.290328,\n 41.622955\n ],\n [\n 115.311535,\n 41.592677\n ],\n [\n 115.365099,\n 41.595795\n ],\n [\n 115.377594,\n 41.602475\n ],\n [\n 115.345494,\n 41.635673\n ],\n [\n 115.360935,\n 41.661355\n ],\n [\n 115.355489,\n 41.672158\n ],\n [\n 115.336844,\n 41.675145\n ],\n [\n 115.319032,\n 41.691473\n ],\n [\n 115.347031,\n 41.712307\n ],\n [\n 115.366317,\n 41.712561\n ],\n [\n 115.430068,\n 41.728753\n ],\n [\n 115.488758,\n 41.760934\n ],\n [\n 115.519769,\n 41.767787\n ],\n [\n 115.548345,\n 41.783902\n ],\n [\n 115.574102,\n 41.805403\n ],\n [\n 115.598641,\n 41.808003\n ],\n [\n 115.630806,\n 41.824995\n ],\n [\n 115.653871,\n 41.829052\n ],\n [\n 115.659382,\n 41.848319\n ],\n [\n 115.68815,\n 41.867708\n ],\n [\n 115.724415,\n 41.868025\n ],\n [\n 115.727874,\n 41.888421\n ],\n [\n 115.756707,\n 41.886774\n ],\n [\n 115.795855,\n 41.911153\n ],\n [\n 115.810976,\n 41.912356\n ],\n [\n 115.815461,\n 41.928687\n ],\n [\n 115.828852,\n 41.936978\n ],\n [\n 115.853071,\n 41.927738\n ],\n [\n 115.916374,\n 41.945141\n ],\n [\n 115.946936,\n 41.885634\n ],\n [\n 115.978588,\n 41.840841\n ],\n [\n 115.994926,\n 41.828608\n ],\n [\n 116.016646,\n 41.77705\n ],\n [\n 116.03401,\n 41.782633\n ],\n [\n 116.083986,\n 41.781745\n ],\n [\n 116.081039,\n 41.776352\n ],\n [\n 116.056307,\n 41.733705\n ],\n [\n 116.014404,\n 41.715355\n ],\n [\n 115.972885,\n 41.680101\n ],\n [\n 115.909967,\n 41.642921\n ],\n [\n 115.929252,\n 41.596113\n ],\n [\n 115.924767,\n 41.568623\n ],\n [\n 115.958789,\n 41.550353\n ],\n [\n 115.97391,\n 41.529659\n ],\n [\n 115.982112,\n 41.485127\n ],\n [\n 115.97673,\n 41.470913\n ],\n [\n 116.000052,\n 41.454402\n ],\n [\n 116.004473,\n 41.432911\n ],\n [\n 116.03023,\n 41.416645\n ],\n [\n 116.036124,\n 41.397694\n ],\n [\n 116.07713,\n 41.384866\n ],\n [\n 116.08751,\n 41.376951\n ],\n [\n 116.141586,\n 41.373439\n ],\n [\n 116.17484,\n 41.356328\n ],\n [\n 116.203352,\n 41.326117\n ],\n [\n 116.209503,\n 41.307715\n ],\n [\n 116.191627,\n 41.288158\n ],\n [\n 116.198995,\n 41.259578\n ],\n [\n 116.213603,\n 41.233288\n ],\n [\n 116.235195,\n 41.211853\n ],\n [\n 116.221356,\n 41.185928\n ],\n [\n 116.22347,\n 41.174275\n ],\n [\n 116.245895,\n 41.16358\n ],\n [\n 116.233273,\n 41.130845\n ],\n [\n 116.245447,\n 41.114183\n ],\n [\n 116.268769,\n 41.102645\n ],\n [\n 116.277419,\n 41.083154\n ],\n [\n 116.296128,\n 41.062118\n ],\n [\n 116.264733,\n 41.038252\n ],\n [\n 116.29837,\n 40.986641\n ],\n [\n 116.333546,\n 40.984458\n ],\n [\n 116.341747,\n 40.964804\n ],\n [\n 116.365069,\n 40.943216\n ],\n [\n 116.334571,\n 40.921749\n ],\n [\n 116.334443,\n 40.904648\n ],\n [\n 116.399988,\n 40.84978\n ],\n [\n 116.40646,\n 40.833368\n ],\n [\n 116.43683,\n 40.820751\n ],\n [\n 116.456564,\n 40.798665\n ],\n [\n 116.465854,\n 40.774511\n ],\n [\n 116.453937,\n 40.765877\n ],\n [\n 116.416519,\n 40.769357\n ],\n [\n 116.414276,\n 40.777925\n ],\n [\n 116.379806,\n 40.77232\n ],\n [\n 116.317015,\n 40.772256\n ],\n [\n 116.307917,\n 40.752152\n ],\n [\n 116.290938,\n 40.763815\n ],\n [\n 116.273446,\n 40.762913\n ],\n [\n 116.269602,\n 40.777152\n ],\n [\n 116.247946,\n 40.791839\n ],\n [\n 116.235003,\n 40.783143\n ],\n [\n 116.218857,\n 40.742807\n ],\n [\n 116.191947,\n 40.724241\n ],\n [\n 116.171316,\n 40.695996\n ],\n [\n 116.162025,\n 40.662383\n ],\n [\n 116.136909,\n 40.667674\n ],\n [\n 116.112562,\n 40.648507\n ],\n [\n 116.121724,\n 40.62914\n ],\n [\n 116.099363,\n 40.630561\n ],\n [\n 116.062714,\n 40.610285\n ],\n [\n 116.030037,\n 40.597367\n ],\n [\n 116.0285,\n 40.607314\n ],\n [\n 116.005113,\n 40.584124\n ],\n [\n 115.981407,\n 40.579665\n ],\n [\n 115.971988,\n 40.602341\n ],\n [\n 115.907788,\n 40.617324\n ],\n [\n 115.885427,\n 40.595235\n ],\n [\n 115.846151,\n 40.593039\n ],\n [\n 115.827378,\n 40.587031\n ],\n [\n 115.819818,\n 40.559374\n ],\n [\n 115.792203,\n 40.561313\n ],\n [\n 115.755041,\n 40.540046\n ],\n [\n 115.736012,\n 40.503832\n ],\n [\n 115.782207,\n 40.492058\n ],\n [\n 115.769841,\n 40.468051\n ],\n [\n 115.770418,\n 40.444165\n ],\n [\n 115.796431,\n 40.426812\n ],\n [\n 115.846856,\n 40.375113\n ],\n [\n 115.861849,\n 40.373428\n ],\n [\n 115.864476,\n 40.359363\n ],\n [\n 115.918296,\n 40.353917\n ],\n [\n 115.922653,\n 40.325905\n ],\n [\n 115.943156,\n 40.311375\n ],\n [\n 115.93976,\n 40.304434\n ],\n [\n 115.968913,\n 40.264263\n ],\n [\n 115.960007,\n 40.256667\n ],\n [\n 115.930085,\n 40.254524\n ],\n [\n 115.911953,\n 40.23446\n ],\n [\n 115.898498,\n 40.234524\n ],\n [\n 115.883121,\n 40.216143\n ],\n [\n 115.886324,\n 40.206657\n ],\n [\n 115.870306,\n 40.186058\n ],\n [\n 115.855506,\n 40.188853\n ],\n [\n 115.844421,\n 40.168053\n ],\n [\n 115.847817,\n 40.147052\n ],\n [\n 115.806555,\n 40.15323\n ],\n [\n 115.773045,\n 40.176179\n ],\n [\n 115.754336,\n 40.163243\n ],\n [\n 115.754849,\n 40.145427\n ],\n [\n 115.734858,\n 40.129492\n ],\n [\n 115.715893,\n 40.133395\n ],\n [\n 115.644581,\n 40.12663\n ],\n [\n 115.641762,\n 40.115897\n ],\n [\n 115.59909,\n 40.119995\n ],\n [\n 115.590697,\n 40.096376\n ],\n [\n 115.575576,\n 40.100997\n ],\n [\n 115.553727,\n 40.091691\n ],\n [\n 115.555457,\n 40.082644\n ],\n [\n 115.528034,\n 40.07633\n ],\n [\n 115.478571,\n 40.036153\n ],\n [\n 115.454544,\n 40.029705\n ],\n [\n 115.442178,\n 40.010876\n ],\n [\n 115.450123,\n 39.99289\n ],\n [\n 115.428531,\n 39.984352\n ],\n [\n 115.426801,\n 39.950056\n ],\n [\n 115.40162,\n 39.903802\n ],\n [\n 115.399891,\n 39.891336\n ],\n [\n 115.364523,\n 39.885331\n ],\n [\n 115.365676,\n 39.867507\n ],\n [\n 115.354848,\n 39.850528\n ],\n [\n 115.354848,\n 39.850528\n ],\n [\n 115.343251,\n 39.837857\n ],\n [\n 115.345237,\n 39.821851\n ],\n [\n 115.330052,\n 39.80656\n ],\n [\n 115.342867,\n 39.79205\n ],\n [\n 115.312945,\n 39.783551\n ],\n [\n 115.283216,\n 39.745165\n ],\n [\n 115.250859,\n 39.73882\n ],\n [\n 115.215043,\n 39.708067\n ],\n [\n 115.177625,\n 39.700475\n ],\n [\n 115.179163,\n 39.679592\n ],\n [\n 115.168847,\n 39.672651\n ],\n [\n 115.138734,\n 39.688627\n ],\n [\n 115.095293,\n 39.704795\n ],\n [\n 115.050058,\n 39.709245\n ],\n [\n 115.03199,\n 39.702373\n ],\n [\n 115.011487,\n 39.674746\n ],\n [\n 114.987396,\n 39.67802\n ],\n [\n 114.961895,\n 39.666103\n ],\n [\n 114.936331,\n 39.66368\n ],\n [\n 114.891032,\n 39.634728\n ],\n [\n 114.838429,\n 39.589179\n ],\n [\n 114.821642,\n 39.61022\n ],\n [\n 114.783775,\n 39.609499\n ],\n [\n 114.760645,\n 39.617036\n ],\n [\n 114.716756,\n 39.618674\n ],\n [\n 114.712079,\n 39.594358\n ],\n [\n 114.680748,\n 39.588064\n ],\n [\n 114.654991,\n 39.599209\n ],\n [\n 114.633527,\n 39.555866\n ],\n [\n 114.604887,\n 39.567869\n ],\n [\n 114.58432,\n 39.585835\n ],\n [\n 114.563432,\n 39.558162\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 130800,\n \"name\": \"承德市\",\n \"center\": [\n 117.939152,\n 40.976204\n ],\n \"centroid\": [\n 117.55153,\n 41.356188\n ],\n \"childrenNum\": 11,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 7,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 119.158474,\n 40.614418\n ],\n [\n 119.105487,\n 40.603632\n ],\n [\n 119.086394,\n 40.588775\n ],\n [\n 119.063392,\n 40.606151\n ],\n [\n 119.013095,\n 40.577081\n ],\n [\n 118.998359,\n 40.578955\n ],\n [\n 118.983366,\n 40.56364\n ],\n [\n 118.952676,\n 40.558469\n ],\n [\n 118.966003,\n 40.536102\n ],\n [\n 118.919038,\n 40.53093\n ],\n [\n 118.886938,\n 40.542438\n ],\n [\n 118.864,\n 40.527244\n ],\n [\n 118.821328,\n 40.531964\n ],\n [\n 118.794867,\n 40.510753\n ],\n [\n 118.792112,\n 40.492382\n ],\n [\n 118.772954,\n 40.479765\n ],\n [\n 118.723491,\n 40.473746\n ],\n [\n 118.702795,\n 40.491411\n ],\n [\n 118.657176,\n 40.450574\n ],\n [\n 118.624179,\n 40.437626\n ],\n [\n 118.618349,\n 40.425193\n ],\n [\n 118.643785,\n 40.380946\n ],\n [\n 118.640197,\n 40.354566\n ],\n [\n 118.608225,\n 40.328305\n ],\n [\n 118.596949,\n 40.308456\n ],\n [\n 118.580098,\n 40.305861\n ],\n [\n 118.568949,\n 40.287564\n ],\n [\n 118.533325,\n 40.298854\n ],\n [\n 118.532364,\n 40.319419\n ],\n [\n 118.539989,\n 40.361048\n ],\n [\n 118.558377,\n 40.36928\n ],\n [\n 118.550881,\n 40.385482\n ],\n [\n 118.571512,\n 40.414636\n ],\n [\n 118.548062,\n 40.422667\n ],\n [\n 118.523458,\n 40.40628\n ],\n [\n 118.503211,\n 40.403365\n ],\n [\n 118.45599,\n 40.414053\n ],\n [\n 118.430746,\n 40.411851\n ],\n [\n 118.402683,\n 40.416838\n ],\n [\n 118.387305,\n 40.436719\n ],\n [\n 118.360011,\n 40.428819\n ],\n [\n 118.356295,\n 40.435295\n ],\n [\n 118.306575,\n 40.419558\n ],\n [\n 118.277935,\n 40.425711\n ],\n [\n 118.262942,\n 40.452063\n ],\n [\n 118.239684,\n 40.464686\n ],\n [\n 118.173818,\n 40.423056\n ],\n [\n 118.156967,\n 40.423768\n ],\n [\n 118.153123,\n 40.409519\n ],\n [\n 118.165232,\n 40.400449\n ],\n [\n 118.133837,\n 40.375113\n ],\n [\n 118.121856,\n 40.354695\n ],\n [\n 118.079312,\n 40.353528\n ],\n [\n 118.061564,\n 40.319095\n ],\n [\n 118.031643,\n 40.302358\n ],\n [\n 118.000888,\n 40.29256\n ],\n [\n 117.909457,\n 40.285876\n ],\n [\n 117.897989,\n 40.270429\n ],\n [\n 117.867554,\n 40.26965\n ],\n [\n 117.844104,\n 40.261406\n ],\n [\n 117.807775,\n 40.261926\n ],\n [\n 117.75152,\n 40.229718\n ],\n [\n 117.714551,\n 40.241668\n ],\n [\n 117.694112,\n 40.238161\n ],\n [\n 117.677069,\n 40.22095\n ],\n [\n 117.64625,\n 40.205163\n ],\n [\n 117.619532,\n 40.206398\n ],\n [\n 117.609409,\n 40.194897\n ],\n [\n 117.575451,\n 40.192817\n ],\n [\n 117.56238,\n 40.206073\n ],\n [\n 117.571671,\n 40.219261\n ],\n [\n 117.54617,\n 40.232901\n ],\n [\n 117.514326,\n 40.227705\n ],\n [\n 117.484084,\n 40.235304\n ],\n [\n 117.450062,\n 40.252512\n ],\n [\n 117.419115,\n 40.249785\n ],\n [\n 117.415335,\n 40.236862\n ],\n [\n 117.386375,\n 40.22712\n ],\n [\n 117.350943,\n 40.229978\n ],\n [\n 117.339859,\n 40.246213\n ],\n [\n 117.331465,\n 40.28977\n ],\n [\n 117.296354,\n 40.278088\n ],\n [\n 117.293342,\n 40.296713\n ],\n [\n 117.274377,\n 40.308521\n ],\n [\n 117.275018,\n 40.33239\n ],\n [\n 117.260217,\n 40.335762\n ],\n [\n 117.242277,\n 40.369993\n ],\n [\n 117.226195,\n 40.369021\n ],\n [\n 117.228502,\n 40.386389\n ],\n [\n 117.240675,\n 40.394424\n ],\n [\n 117.234076,\n 40.417162\n ],\n [\n 117.263357,\n 40.442352\n ],\n [\n 117.236511,\n 40.45653\n ],\n [\n 117.237215,\n 40.468763\n ],\n [\n 117.208575,\n 40.501115\n ],\n [\n 117.219019,\n 40.514375\n ],\n [\n 117.247147,\n 40.511788\n ],\n [\n 117.264126,\n 40.517285\n ],\n [\n 117.247403,\n 40.54024\n ],\n [\n 117.269444,\n 40.560473\n ],\n [\n 117.311859,\n 40.57805\n ],\n [\n 117.342742,\n 40.581604\n ],\n [\n 117.365936,\n 40.575982\n ],\n [\n 117.387464,\n 40.560861\n ],\n [\n 117.402072,\n 40.573139\n ],\n [\n 117.430008,\n 40.576112\n ],\n [\n 117.412708,\n 40.605118\n ],\n [\n 117.431545,\n 40.625589\n ],\n [\n 117.448909,\n 40.628366\n ],\n [\n 117.46198,\n 40.65309\n ],\n [\n 117.477997,\n 40.635338\n ],\n [\n 117.501256,\n 40.636759\n ],\n [\n 117.514583,\n 40.660511\n ],\n [\n 117.492862,\n 40.675417\n ],\n [\n 117.442245,\n 40.676643\n ],\n [\n 117.409248,\n 40.687288\n ],\n [\n 117.359208,\n 40.673869\n ],\n [\n 117.342678,\n 40.673611\n ],\n [\n 117.32115,\n 40.658317\n ],\n [\n 117.290395,\n 40.660189\n ],\n [\n 117.261371,\n 40.681159\n ],\n [\n 117.241636,\n 40.676643\n ],\n [\n 117.20236,\n 40.695609\n ],\n [\n 117.117785,\n 40.700059\n ],\n [\n 117.110673,\n 40.70825\n ],\n [\n 117.0771,\n 40.700059\n ],\n [\n 117.058327,\n 40.701543\n ],\n [\n 117.031032,\n 40.692126\n ],\n [\n 116.979967,\n 40.702833\n ],\n [\n 116.926531,\n 40.744869\n ],\n [\n 116.923391,\n 40.773738\n ],\n [\n 116.894623,\n 40.781597\n ],\n [\n 116.896353,\n 40.79712\n ],\n [\n 116.880207,\n 40.804332\n ],\n [\n 116.87617,\n 40.821202\n ],\n [\n 116.847723,\n 40.839354\n ],\n [\n 116.813636,\n 40.848428\n ],\n [\n 116.805051,\n 40.840706\n ],\n [\n 116.79512,\n 40.863614\n ],\n [\n 116.759496,\n 40.889858\n ],\n [\n 116.730471,\n 40.897768\n ],\n [\n 116.713236,\n 40.911978\n ],\n [\n 116.722334,\n 40.927406\n ],\n [\n 116.689465,\n 40.950669\n ],\n [\n 116.67774,\n 40.971227\n ],\n [\n 116.683058,\n 41.000511\n ],\n [\n 116.698884,\n 41.021246\n ],\n [\n 116.688632,\n 41.044669\n ],\n [\n 116.665182,\n 41.046658\n ],\n [\n 116.64769,\n 41.059296\n ],\n [\n 116.630839,\n 41.060771\n ],\n [\n 116.614116,\n 41.03607\n ],\n [\n 116.622958,\n 41.02086\n ],\n [\n 116.614309,\n 40.982916\n ],\n [\n 116.597778,\n 40.97476\n ],\n [\n 116.569715,\n 40.991265\n ],\n [\n 116.536333,\n 40.988889\n ],\n [\n 116.516791,\n 40.975274\n ],\n [\n 116.455539,\n 40.980476\n ],\n [\n 116.447466,\n 40.953818\n ],\n [\n 116.473607,\n 40.919757\n ],\n [\n 116.474184,\n 40.896032\n ],\n [\n 116.458678,\n 40.900597\n ],\n [\n 116.41402,\n 40.899762\n ],\n [\n 116.398771,\n 40.905934\n ],\n [\n 116.37641,\n 40.939681\n ],\n [\n 116.365069,\n 40.943216\n ],\n [\n 116.341747,\n 40.964804\n ],\n [\n 116.333546,\n 40.984458\n ],\n [\n 116.29837,\n 40.986641\n ],\n [\n 116.264733,\n 41.038252\n ],\n [\n 116.296128,\n 41.062118\n ],\n [\n 116.277419,\n 41.083154\n ],\n [\n 116.268769,\n 41.102645\n ],\n [\n 116.245447,\n 41.114183\n ],\n [\n 116.233273,\n 41.130845\n ],\n [\n 116.245895,\n 41.16358\n ],\n [\n 116.22347,\n 41.174275\n ],\n [\n 116.221356,\n 41.185928\n ],\n [\n 116.235195,\n 41.211853\n ],\n [\n 116.213603,\n 41.233288\n ],\n [\n 116.198995,\n 41.259578\n ],\n [\n 116.191627,\n 41.288158\n ],\n [\n 116.209503,\n 41.307715\n ],\n [\n 116.203352,\n 41.326117\n ],\n [\n 116.17484,\n 41.356328\n ],\n [\n 116.141586,\n 41.373439\n ],\n [\n 116.08751,\n 41.376951\n ],\n [\n 116.07713,\n 41.384866\n ],\n [\n 116.036124,\n 41.397694\n ],\n [\n 116.03023,\n 41.416645\n ],\n [\n 116.004473,\n 41.432911\n ],\n [\n 116.000052,\n 41.454402\n ],\n [\n 115.97673,\n 41.470913\n ],\n [\n 115.982112,\n 41.485127\n ],\n [\n 115.97391,\n 41.529659\n ],\n [\n 115.958789,\n 41.550353\n ],\n [\n 115.924767,\n 41.568623\n ],\n [\n 115.929252,\n 41.596113\n ],\n [\n 115.909967,\n 41.642921\n ],\n [\n 115.972885,\n 41.680101\n ],\n [\n 116.014404,\n 41.715355\n ],\n [\n 116.056307,\n 41.733705\n ],\n [\n 116.081039,\n 41.776352\n ],\n [\n 116.098658,\n 41.776479\n ],\n [\n 116.129221,\n 41.806607\n ],\n [\n 116.105706,\n 41.834757\n ],\n [\n 116.106667,\n 41.849587\n ],\n [\n 116.134731,\n 41.863844\n ],\n [\n 116.171124,\n 41.868912\n ],\n [\n 116.193164,\n 41.861816\n ],\n [\n 116.212578,\n 41.885128\n ],\n [\n 116.211361,\n 41.906848\n ],\n [\n 116.230518,\n 41.926282\n ],\n [\n 116.233401,\n 41.941408\n ],\n [\n 116.28421,\n 41.959376\n ],\n [\n 116.29837,\n 41.968106\n ],\n [\n 116.306507,\n 41.991379\n ],\n [\n 116.327267,\n 42.005667\n ],\n [\n 116.373719,\n 42.009965\n ],\n [\n 116.409087,\n 41.994034\n ],\n [\n 116.41402,\n 41.98221\n ],\n [\n 116.393133,\n 41.94299\n ],\n [\n 116.432088,\n 41.939383\n ],\n [\n 116.453873,\n 41.945964\n ],\n [\n 116.482641,\n 41.975886\n ],\n [\n 116.496416,\n 41.97968\n ],\n [\n 116.514164,\n 41.970067\n ],\n [\n 116.533706,\n 41.938876\n ],\n [\n 116.566383,\n 41.928751\n ],\n [\n 116.597073,\n 41.935586\n ],\n [\n 116.634812,\n 41.929953\n ],\n [\n 116.669154,\n 41.947735\n ],\n [\n 116.72746,\n 41.951089\n ],\n [\n 116.744631,\n 41.982146\n ],\n [\n 116.766479,\n 41.990304\n ],\n [\n 116.796209,\n 41.978099\n ],\n [\n 116.821133,\n 41.988723\n ],\n [\n 116.831961,\n 42.005351\n ],\n [\n 116.868161,\n 42.002885\n ],\n [\n 116.87963,\n 42.018372\n ],\n [\n 116.881681,\n 42.05224\n ],\n [\n 116.890651,\n 42.092655\n ],\n [\n 116.877324,\n 42.121057\n ],\n [\n 116.865022,\n 42.124085\n ],\n [\n 116.850221,\n 42.15632\n ],\n [\n 116.825169,\n 42.155563\n ],\n [\n 116.789225,\n 42.200261\n ],\n [\n 116.858166,\n 42.197236\n ],\n [\n 116.903401,\n 42.19087\n ],\n [\n 116.917433,\n 42.207698\n ],\n [\n 116.918522,\n 42.229875\n ],\n [\n 116.897442,\n 42.297618\n ],\n [\n 116.886806,\n 42.366608\n ],\n [\n 116.911858,\n 42.391431\n ],\n [\n 116.914421,\n 42.402677\n ],\n [\n 116.965102,\n 42.421583\n ],\n [\n 117.006685,\n 42.432948\n ],\n [\n 117.016744,\n 42.45649\n ],\n [\n 117.046922,\n 42.454105\n ],\n [\n 117.079535,\n 42.460632\n ],\n [\n 117.094912,\n 42.483661\n ],\n [\n 117.135726,\n 42.469167\n ],\n [\n 117.175963,\n 42.465527\n ],\n [\n 117.222287,\n 42.475442\n ],\n [\n 117.252208,\n 42.473685\n ],\n [\n 117.275466,\n 42.481905\n ],\n [\n 117.321406,\n 42.468791\n ],\n [\n 117.330056,\n 42.461887\n ],\n [\n 117.390732,\n 42.462076\n ],\n [\n 117.412836,\n 42.472493\n ],\n [\n 117.416296,\n 42.512326\n ],\n [\n 117.408415,\n 42.519976\n ],\n [\n 117.387015,\n 42.517405\n ],\n [\n 117.39637,\n 42.536339\n ],\n [\n 117.433147,\n 42.555769\n ],\n [\n 117.44436,\n 42.577447\n ],\n [\n 117.435197,\n 42.585403\n ],\n [\n 117.455957,\n 42.589411\n ],\n [\n 117.473512,\n 42.602437\n ],\n [\n 117.524898,\n 42.590727\n ],\n [\n 117.539955,\n 42.605443\n ],\n [\n 117.600311,\n 42.603001\n ],\n [\n 117.610883,\n 42.592355\n ],\n [\n 117.6442,\n 42.589787\n ],\n [\n 117.66733,\n 42.582459\n ],\n [\n 117.707247,\n 42.588033\n ],\n [\n 117.779904,\n 42.618591\n ],\n [\n 117.801496,\n 42.612706\n ],\n [\n 117.792334,\n 42.598367\n ],\n [\n 117.797588,\n 42.585277\n ],\n [\n 117.829624,\n 42.56498\n ],\n [\n 117.849614,\n 42.546619\n ],\n [\n 117.87409,\n 42.510194\n ],\n [\n 117.940148,\n 42.462766\n ],\n [\n 117.954564,\n 42.445003\n ],\n [\n 117.99762,\n 42.416684\n ],\n [\n 118.019405,\n 42.395201\n ],\n [\n 118.021263,\n 42.371636\n ],\n [\n 118.009153,\n 42.358248\n ],\n [\n 118.016265,\n 42.333286\n ],\n [\n 118.059962,\n 42.29831\n ],\n [\n 118.047468,\n 42.280563\n ],\n [\n 118.023249,\n 42.267155\n ],\n [\n 117.971095,\n 42.248014\n ],\n [\n 117.977438,\n 42.229875\n ],\n [\n 118.020366,\n 42.213432\n ],\n [\n 118.033629,\n 42.199127\n ],\n [\n 118.089051,\n 42.183874\n ],\n [\n 118.10635,\n 42.171958\n ],\n [\n 118.104172,\n 42.148878\n ],\n [\n 118.088859,\n 42.117144\n ],\n [\n 118.097765,\n 42.10509\n ],\n [\n 118.136528,\n 42.094486\n ],\n [\n 118.155173,\n 42.081164\n ],\n [\n 118.136913,\n 42.052871\n ],\n [\n 118.115256,\n 42.045859\n ],\n [\n 118.116538,\n 42.037204\n ],\n [\n 118.141846,\n 42.031327\n ],\n [\n 118.189067,\n 42.030569\n ],\n [\n 118.204188,\n 42.034866\n ],\n [\n 118.220206,\n 42.058619\n ],\n [\n 118.212581,\n 42.081101\n ],\n [\n 118.226613,\n 42.090256\n ],\n [\n 118.252498,\n 42.091014\n ],\n [\n 118.272232,\n 42.083311\n ],\n [\n 118.297284,\n 42.048765\n ],\n [\n 118.283061,\n 42.03158\n ],\n [\n 118.237634,\n 42.022859\n ],\n [\n 118.256278,\n 42.010724\n ],\n [\n 118.294722,\n 42.005224\n ],\n [\n 118.314007,\n 41.987774\n ],\n [\n 118.306255,\n 41.975127\n ],\n [\n 118.306511,\n 41.940269\n ],\n [\n 118.268901,\n 41.930143\n ],\n [\n 118.270182,\n 41.917357\n ],\n [\n 118.286649,\n 41.91109\n ],\n [\n 118.324515,\n 41.880187\n ],\n [\n 118.340213,\n 41.872459\n ],\n [\n 118.331755,\n 41.840651\n ],\n [\n 118.319838,\n 41.83146\n ],\n [\n 118.292287,\n 41.772863\n ],\n [\n 118.270823,\n 41.762203\n ],\n [\n 118.246988,\n 41.774005\n ],\n [\n 118.236032,\n 41.807559\n ],\n [\n 118.219117,\n 41.815358\n ],\n [\n 118.165873,\n 41.813265\n ],\n [\n 118.140372,\n 41.783965\n ],\n [\n 118.130698,\n 41.742275\n ],\n [\n 118.155173,\n 41.712624\n ],\n [\n 118.153699,\n 41.691156\n ],\n [\n 118.169013,\n 41.67076\n ],\n [\n 118.206879,\n 41.65074\n ],\n [\n 118.215208,\n 41.633002\n ],\n [\n 118.20989,\n 41.61774\n ],\n [\n 118.215337,\n 41.595668\n ],\n [\n 118.230522,\n 41.582178\n ],\n [\n 118.270823,\n 41.573524\n ],\n [\n 118.279152,\n 41.56544\n ],\n [\n 118.301577,\n 41.569641\n ],\n [\n 118.313302,\n 41.561494\n ],\n [\n 118.302923,\n 41.552709\n ],\n [\n 118.315801,\n 41.512525\n ],\n [\n 118.295426,\n 41.485127\n ],\n [\n 118.269605,\n 41.478881\n ],\n [\n 118.272168,\n 41.471296\n ],\n [\n 118.327078,\n 41.450831\n ],\n [\n 118.34867,\n 41.428318\n ],\n [\n 118.343993,\n 41.404139\n ],\n [\n 118.361741,\n 41.386717\n ],\n [\n 118.348286,\n 41.373886\n ],\n [\n 118.349119,\n 41.342789\n ],\n [\n 118.380193,\n 41.312124\n ],\n [\n 118.399607,\n 41.311102\n ],\n [\n 118.412422,\n 41.33193\n ],\n [\n 118.47329,\n 41.345663\n ],\n [\n 118.500841,\n 41.345791\n ],\n [\n 118.528135,\n 41.355051\n ],\n [\n 118.539796,\n 41.3509\n ],\n [\n 118.57997,\n 41.354029\n ],\n [\n 118.629946,\n 41.34643\n ],\n [\n 118.676974,\n 41.350453\n ],\n [\n 118.695171,\n 41.337999\n ],\n [\n 118.741879,\n 41.324073\n ],\n [\n 118.763343,\n 41.328928\n ],\n [\n 118.770007,\n 41.353071\n ],\n [\n 118.846124,\n 41.373823\n ],\n [\n 118.844907,\n 41.34247\n ],\n [\n 118.868421,\n 41.312636\n ],\n [\n 118.890718,\n 41.300749\n ],\n [\n 118.934671,\n 41.304584\n ],\n [\n 118.949536,\n 41.318003\n ],\n [\n 118.974716,\n 41.306565\n ],\n [\n 119.006752,\n 41.307076\n ],\n [\n 119.035136,\n 41.298768\n ],\n [\n 119.093121,\n 41.293655\n ],\n [\n 119.154951,\n 41.297682\n ],\n [\n 119.200698,\n 41.28234\n ],\n [\n 119.212103,\n 41.308099\n ],\n [\n 119.239461,\n 41.314489\n ],\n [\n 119.248367,\n 41.27665\n ],\n [\n 119.231004,\n 41.256444\n ],\n [\n 119.20954,\n 41.244483\n ],\n [\n 119.209796,\n 41.225803\n ],\n [\n 119.169623,\n 41.222923\n ],\n [\n 119.166483,\n 41.21294\n ],\n [\n 119.188909,\n 41.198156\n ],\n [\n 119.184295,\n 41.182727\n ],\n [\n 119.158603,\n 41.169664\n ],\n [\n 119.126374,\n 41.138662\n ],\n [\n 119.081204,\n 41.131422\n ],\n [\n 119.080627,\n 41.095978\n ],\n [\n 119.073771,\n 41.084244\n ],\n [\n 119.050834,\n 41.080333\n ],\n [\n 119.037507,\n 41.067378\n ],\n [\n 119.008354,\n 41.068596\n ],\n [\n 118.964657,\n 41.079307\n ],\n [\n 118.93685,\n 41.052624\n ],\n [\n 118.936209,\n 41.037482\n ],\n [\n 118.951971,\n 41.018421\n ],\n [\n 119.013544,\n 41.007637\n ],\n [\n 119.0204,\n 40.997878\n ],\n [\n 119.005086,\n 40.984265\n ],\n [\n 119.000601,\n 40.967052\n ],\n [\n 118.946461,\n 40.958122\n ],\n [\n 118.917052,\n 40.968594\n ],\n [\n 118.903468,\n 40.961784\n ],\n [\n 118.891743,\n 40.903362\n ],\n [\n 118.873034,\n 40.848042\n ],\n [\n 118.855094,\n 40.840577\n ],\n [\n 118.846252,\n 40.822103\n ],\n [\n 118.849135,\n 40.800919\n ],\n [\n 118.861501,\n 40.802658\n ],\n [\n 118.878544,\n 40.783207\n ],\n [\n 118.910965,\n 40.776766\n ],\n [\n 118.895459,\n 40.754021\n ],\n [\n 118.91167,\n 40.756083\n ],\n [\n 118.949344,\n 40.747834\n ],\n [\n 118.960813,\n 40.720566\n ],\n [\n 118.987723,\n 40.697931\n ],\n [\n 119.010725,\n 40.687868\n ],\n [\n 119.027063,\n 40.692448\n ],\n [\n 119.048719,\n 40.681482\n ],\n [\n 119.05423,\n 40.664964\n ],\n [\n 119.081588,\n 40.671869\n ],\n [\n 119.095107,\n 40.663351\n ],\n [\n 119.115098,\n 40.666513\n ],\n [\n 119.153349,\n 40.688707\n ],\n [\n 119.176222,\n 40.690191\n ],\n [\n 119.185833,\n 40.67574\n ],\n [\n 119.173211,\n 40.654316\n ],\n [\n 119.146557,\n 40.63579\n ],\n [\n 119.158474,\n 40.614418\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 130900,\n \"name\": \"沧州市\",\n \"center\": [\n 116.857461,\n 38.310582\n ],\n \"centroid\": [\n 116.771346,\n 38.27096\n ],\n \"childrenNum\": 16,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 8,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 116.335916,\n 37.581263\n ],\n [\n 116.3281,\n 37.605058\n ],\n [\n 116.375192,\n 37.617256\n ],\n [\n 116.374936,\n 37.63949\n ],\n [\n 116.36539,\n 37.648719\n ],\n [\n 116.378909,\n 37.659698\n ],\n [\n 116.386533,\n 37.696393\n ],\n [\n 116.424784,\n 37.735829\n ],\n [\n 116.434331,\n 37.734618\n ],\n [\n 116.438367,\n 37.758902\n ],\n [\n 116.451182,\n 37.7587\n ],\n [\n 116.460664,\n 37.778875\n ],\n [\n 116.47303,\n 37.777059\n ],\n [\n 116.466623,\n 37.805564\n ],\n [\n 116.481424,\n 37.830026\n ],\n [\n 116.473415,\n 37.865495\n ],\n [\n 116.51346,\n 37.863951\n ],\n [\n 116.515382,\n 37.892892\n ],\n [\n 116.53377,\n 37.907727\n ],\n [\n 116.565166,\n 37.980116\n ],\n [\n 116.563243,\n 38.01987\n ],\n [\n 116.496352,\n 38.013704\n ],\n [\n 116.483474,\n 38.02503\n ],\n [\n 116.479309,\n 38.011492\n ],\n [\n 116.417224,\n 38.009481\n ],\n [\n 116.3709,\n 38.018597\n ],\n [\n 116.343925,\n 38.017256\n ],\n [\n 116.329189,\n 38.008141\n ],\n [\n 116.306764,\n 37.979312\n ],\n [\n 116.278252,\n 37.962479\n ],\n [\n 116.266975,\n 37.981458\n ],\n [\n 116.266206,\n 37.961405\n ],\n [\n 116.256595,\n 37.965229\n ],\n [\n 116.226354,\n 37.95121\n ],\n [\n 116.209118,\n 37.966369\n ],\n [\n 116.188039,\n 37.968314\n ],\n [\n 116.170163,\n 37.959594\n ],\n [\n 116.170867,\n 37.933565\n ],\n [\n 116.153952,\n 37.914573\n ],\n [\n 116.091034,\n 37.910949\n ],\n [\n 116.093981,\n 37.922627\n ],\n [\n 116.120571,\n 37.948996\n ],\n [\n 116.100645,\n 37.948929\n ],\n [\n 116.071876,\n 37.980318\n ],\n [\n 116.062394,\n 38.005057\n ],\n [\n 116.044774,\n 38.023824\n ],\n [\n 116.049515,\n 38.038365\n ],\n [\n 116.070595,\n 38.041112\n ],\n [\n 116.05227,\n 38.052434\n ],\n [\n 116.055474,\n 38.071725\n ],\n [\n 116.031511,\n 38.082774\n ],\n [\n 116.031831,\n 38.100718\n ],\n [\n 116.048554,\n 38.11424\n ],\n [\n 116.055218,\n 38.131306\n ],\n [\n 116.049771,\n 38.146026\n ],\n [\n 115.986725,\n 38.125885\n ],\n [\n 115.968913,\n 38.138533\n ],\n [\n 115.938671,\n 38.144354\n ],\n [\n 115.935403,\n 38.167232\n ],\n [\n 115.900804,\n 38.158536\n ],\n [\n 115.887542,\n 38.171312\n ],\n [\n 115.899523,\n 38.20314\n ],\n [\n 115.871267,\n 38.217579\n ],\n [\n 115.856467,\n 38.240901\n ],\n [\n 115.864476,\n 38.255266\n ],\n [\n 115.837181,\n 38.272499\n ],\n [\n 115.833016,\n 38.298008\n ],\n [\n 115.850188,\n 38.309423\n ],\n [\n 115.841538,\n 38.346062\n ],\n [\n 115.804633,\n 38.345462\n ],\n [\n 115.783297,\n 38.358338\n ],\n [\n 115.738767,\n 38.369544\n ],\n [\n 115.734025,\n 38.359205\n ],\n [\n 115.705321,\n 38.367543\n ],\n [\n 115.731462,\n 38.392618\n ],\n [\n 115.715957,\n 38.438411\n ],\n [\n 115.718584,\n 38.449205\n ],\n [\n 115.745686,\n 38.481311\n ],\n [\n 115.770418,\n 38.48817\n ],\n [\n 115.79137,\n 38.512005\n ],\n [\n 115.816101,\n 38.52545\n ],\n [\n 115.875047,\n 38.510141\n ],\n [\n 115.869345,\n 38.524652\n ],\n [\n 115.878507,\n 38.535566\n ],\n [\n 115.890809,\n 38.52585\n ],\n [\n 115.940721,\n 38.530508\n ],\n [\n 115.934058,\n 38.546678\n ],\n [\n 115.960583,\n 38.584394\n ],\n [\n 115.96321,\n 38.613182\n ],\n [\n 115.951101,\n 38.627938\n ],\n [\n 115.973398,\n 38.635514\n ],\n [\n 115.973526,\n 38.668467\n ],\n [\n 115.959879,\n 38.679891\n ],\n [\n 115.955009,\n 38.702932\n ],\n [\n 115.966286,\n 38.708973\n ],\n [\n 115.944053,\n 38.735456\n ],\n [\n 115.95187,\n 38.746736\n ],\n [\n 115.995118,\n 38.77798\n ],\n [\n 115.999731,\n 38.796812\n ],\n [\n 116.023054,\n 38.812524\n ],\n [\n 116.04093,\n 38.812259\n ],\n [\n 116.035548,\n 38.829492\n ],\n [\n 116.048746,\n 38.8607\n ],\n [\n 116.04157,\n 38.878451\n ],\n [\n 116.045543,\n 38.897786\n ],\n [\n 116.085524,\n 38.91063\n ],\n [\n 116.112754,\n 38.909703\n ],\n [\n 116.125633,\n 38.920823\n ],\n [\n 116.121083,\n 38.934391\n ],\n [\n 116.15203,\n 38.948352\n ],\n [\n 116.209503,\n 38.921618\n ],\n [\n 116.20002,\n 38.915727\n ],\n [\n 116.202198,\n 38.887258\n ],\n [\n 116.212194,\n 38.870238\n ],\n [\n 116.23212,\n 38.871894\n ],\n [\n 116.248907,\n 38.85964\n ],\n [\n 116.247497,\n 38.848907\n ],\n [\n 116.278764,\n 38.836451\n ],\n [\n 116.271973,\n 38.816634\n ],\n [\n 116.338287,\n 38.80689\n ],\n [\n 116.390313,\n 38.789784\n ],\n [\n 116.42299,\n 38.770419\n ],\n [\n 116.435804,\n 38.733199\n ],\n [\n 116.406331,\n 38.703596\n ],\n [\n 116.370836,\n 38.692508\n ],\n [\n 116.366863,\n 38.67305\n ],\n [\n 116.381984,\n 38.619165\n ],\n [\n 116.41921,\n 38.599288\n ],\n [\n 116.425425,\n 38.587187\n ],\n [\n 116.454834,\n 38.580337\n ],\n [\n 116.455475,\n 38.557656\n ],\n [\n 116.432152,\n 38.552533\n ],\n [\n 116.431127,\n 38.539558\n ],\n [\n 116.452655,\n 38.534501\n ],\n [\n 116.449772,\n 38.518262\n ],\n [\n 116.465726,\n 38.494096\n ],\n [\n 116.519482,\n 38.48817\n ],\n [\n 116.559399,\n 38.496759\n ],\n [\n 116.569715,\n 38.470988\n ],\n [\n 116.589897,\n 38.483908\n ],\n [\n 116.610593,\n 38.479646\n ],\n [\n 116.627315,\n 38.501087\n ],\n [\n 116.621228,\n 38.514335\n ],\n [\n 116.647114,\n 38.50648\n ],\n [\n 116.668257,\n 38.530042\n ],\n [\n 116.672678,\n 38.546545\n ],\n [\n 116.652431,\n 38.551202\n ],\n [\n 116.643333,\n 38.564773\n ],\n [\n 116.671653,\n 38.566503\n ],\n [\n 116.662234,\n 38.581268\n ],\n [\n 116.680303,\n 38.592706\n ],\n [\n 116.680559,\n 38.605936\n ],\n [\n 116.702792,\n 38.619098\n ],\n [\n 116.71503,\n 38.609327\n ],\n [\n 116.733739,\n 38.614047\n ],\n [\n 116.738224,\n 38.631327\n ],\n [\n 116.763212,\n 38.633853\n ],\n [\n 116.77404,\n 38.652258\n ],\n [\n 116.758855,\n 38.732071\n ],\n [\n 116.766351,\n 38.741959\n ],\n [\n 116.796529,\n 38.74667\n ],\n [\n 116.859127,\n 38.741295\n ],\n [\n 116.867457,\n 38.745873\n ],\n [\n 116.866496,\n 38.717005\n ],\n [\n 116.87726,\n 38.680688\n ],\n [\n 116.994447,\n 38.695695\n ],\n [\n 117.014502,\n 38.690184\n ],\n [\n 117.015719,\n 38.700409\n ],\n [\n 117.042309,\n 38.706517\n ],\n [\n 117.039041,\n 38.688457\n ],\n [\n 117.06813,\n 38.680621\n ],\n [\n 117.051727,\n 38.643488\n ],\n [\n 117.064285,\n 38.635713\n ],\n [\n 117.071526,\n 38.607399\n ],\n [\n 117.086326,\n 38.606402\n ],\n [\n 117.098179,\n 38.586921\n ],\n [\n 117.13611,\n 38.598756\n ],\n [\n 117.151103,\n 38.617702\n ],\n [\n 117.186086,\n 38.616506\n ],\n [\n 117.23036,\n 38.641694\n ],\n [\n 117.23068,\n 38.624017\n ],\n [\n 117.255988,\n 38.613781\n ],\n [\n 117.259512,\n 38.603078\n ],\n [\n 117.238369,\n 38.581002\n ],\n [\n 117.253169,\n 38.556192\n ],\n [\n 117.292189,\n 38.562445\n ],\n [\n 117.305644,\n 38.556591\n ],\n [\n 117.358055,\n 38.57056\n ],\n [\n 117.368883,\n 38.582465\n ],\n [\n 117.369075,\n 38.564773\n ],\n [\n 117.391949,\n 38.572689\n ],\n [\n 117.432442,\n 38.601349\n ],\n [\n 117.478895,\n 38.617237\n ],\n [\n 117.541429,\n 38.60361\n ],\n [\n 117.557831,\n 38.613781\n ],\n [\n 117.63901,\n 38.626742\n ],\n [\n 117.645033,\n 38.593836\n ],\n [\n 117.638562,\n 38.570028\n ],\n [\n 117.643367,\n 38.54029\n ],\n [\n 117.68527,\n 38.539425\n ],\n [\n 117.685975,\n 38.532438\n ],\n [\n 117.645161,\n 38.527647\n ],\n [\n 117.647852,\n 38.508677\n ],\n [\n 117.678799,\n 38.477049\n ],\n [\n 117.710899,\n 38.467791\n ],\n [\n 117.725123,\n 38.457333\n ],\n [\n 117.730505,\n 38.424949\n ],\n [\n 117.781186,\n 38.373812\n ],\n [\n 117.804764,\n 38.367076\n ],\n [\n 117.846411,\n 38.36801\n ],\n [\n 117.937457,\n 38.38775\n ],\n [\n 117.958024,\n 38.376147\n ],\n [\n 117.948349,\n 38.346462\n ],\n [\n 117.916698,\n 38.32344\n ],\n [\n 117.895682,\n 38.301613\n ],\n [\n 117.860891,\n 38.274569\n ],\n [\n 117.8475,\n 38.25393\n ],\n [\n 117.808544,\n 38.228406\n ],\n [\n 117.789195,\n 38.180741\n ],\n [\n 117.801625,\n 38.173786\n ],\n [\n 117.766962,\n 38.15867\n ],\n [\n 117.76882,\n 38.131908\n ],\n [\n 117.743191,\n 38.123409\n ],\n [\n 117.729223,\n 38.093822\n ],\n [\n 117.704492,\n 38.076078\n ],\n [\n 117.679504,\n 38.07956\n ],\n [\n 117.666048,\n 38.072528\n ],\n [\n 117.616713,\n 38.069046\n ],\n [\n 117.58378,\n 38.070653\n ],\n [\n 117.556486,\n 38.05719\n ],\n [\n 117.56033,\n 38.040978\n ],\n [\n 117.527974,\n 37.996275\n ],\n [\n 117.512789,\n 37.943428\n ],\n [\n 117.481137,\n 37.914842\n ],\n [\n 117.438593,\n 37.853876\n ],\n [\n 117.406301,\n 37.843531\n ],\n [\n 117.381954,\n 37.854547\n ],\n [\n 117.34428,\n 37.862675\n ],\n [\n 117.320124,\n 37.861399\n ],\n [\n 117.271366,\n 37.839903\n ],\n [\n 117.208832,\n 37.843732\n ],\n [\n 117.185317,\n 37.849778\n ],\n [\n 117.150142,\n 37.839567\n ],\n [\n 117.093759,\n 37.849509\n ],\n [\n 117.074345,\n 37.848771\n ],\n [\n 117.027188,\n 37.832378\n ],\n [\n 116.976635,\n 37.841045\n ],\n [\n 116.947675,\n 37.840037\n ],\n [\n 116.919355,\n 37.845882\n ],\n [\n 116.883795,\n 37.844337\n ],\n [\n 116.84375,\n 37.834461\n ],\n [\n 116.812739,\n 37.843598\n ],\n [\n 116.788136,\n 37.843396\n ],\n [\n 116.786149,\n 37.82633\n ],\n [\n 116.753665,\n 37.792993\n ],\n [\n 116.753793,\n 37.770536\n ],\n [\n 116.744182,\n 37.757355\n ],\n [\n 116.723167,\n 37.766703\n ],\n [\n 116.724512,\n 37.744305\n ],\n [\n 116.699332,\n 37.730648\n ],\n [\n 116.67979,\n 37.728764\n ],\n [\n 116.663964,\n 37.687776\n ],\n [\n 116.641027,\n 37.682323\n ],\n [\n 116.640834,\n 37.666432\n ],\n [\n 116.604506,\n 37.62514\n ],\n [\n 116.574648,\n 37.609978\n ],\n [\n 116.545816,\n 37.582477\n ],\n [\n 116.538512,\n 37.568453\n ],\n [\n 116.517048,\n 37.557191\n ],\n [\n 116.486421,\n 37.524205\n ],\n [\n 116.456115,\n 37.513679\n ],\n [\n 116.434139,\n 37.473383\n ],\n [\n 116.402167,\n 37.509833\n ],\n [\n 116.368913,\n 37.526364\n ],\n [\n 116.376858,\n 37.546602\n ],\n [\n 116.367696,\n 37.566295\n ],\n [\n 116.343541,\n 37.566025\n ],\n [\n 116.335916,\n 37.581263\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 131000,\n \"name\": \"廊坊市\",\n \"center\": [\n 116.704441,\n 39.523927\n ],\n \"centroid\": [\n 116.540228,\n 39.111214\n ],\n \"childrenNum\": 10,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 9,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 116.209503,\n 38.921618\n ],\n [\n 116.230262,\n 38.92453\n ],\n [\n 116.228083,\n 38.942199\n ],\n [\n 116.243653,\n 38.949345\n ],\n [\n 116.253007,\n 38.932074\n ],\n [\n 116.291386,\n 38.948683\n ],\n [\n 116.298755,\n 38.975076\n ],\n [\n 116.316182,\n 38.962708\n ],\n [\n 116.33534,\n 38.984004\n ],\n [\n 116.3215,\n 38.998088\n ],\n [\n 116.299588,\n 38.993658\n ],\n [\n 116.293757,\n 39.007344\n ],\n [\n 116.307148,\n 39.032196\n ],\n [\n 116.318617,\n 39.037416\n ],\n [\n 116.317592,\n 39.077911\n ],\n [\n 116.305354,\n 39.098116\n ],\n [\n 116.278957,\n 39.112045\n ],\n [\n 116.262426,\n 39.138114\n ],\n [\n 116.221804,\n 39.147813\n ],\n [\n 116.207837,\n 39.168526\n ],\n [\n 116.206555,\n 39.207429\n ],\n [\n 116.186116,\n 39.222457\n ],\n [\n 116.201109,\n 39.251911\n ],\n [\n 116.208734,\n 39.330195\n ],\n [\n 116.198226,\n 39.351315\n ],\n [\n 116.13582,\n 39.351842\n ],\n [\n 116.116791,\n 39.376243\n ],\n [\n 116.133001,\n 39.4055\n ],\n [\n 116.132104,\n 39.429423\n ],\n [\n 116.151325,\n 39.471005\n ],\n [\n 116.179901,\n 39.486568\n ],\n [\n 116.182144,\n 39.49635\n ],\n [\n 116.220843,\n 39.511644\n ],\n [\n 116.222766,\n 39.501995\n ],\n [\n 116.244678,\n 39.517354\n ],\n [\n 116.257941,\n 39.500551\n ],\n [\n 116.279277,\n 39.491295\n ],\n [\n 116.306443,\n 39.488997\n ],\n [\n 116.320027,\n 39.46851\n ],\n [\n 116.350461,\n 39.453009\n ],\n [\n 116.408958,\n 39.45025\n ],\n [\n 116.434395,\n 39.442761\n ],\n [\n 116.454706,\n 39.453338\n ],\n [\n 116.444134,\n 39.482169\n ],\n [\n 116.412354,\n 39.482103\n ],\n [\n 116.418761,\n 39.506393\n ],\n [\n 116.402807,\n 39.5144\n ],\n [\n 116.402679,\n 39.526869\n ],\n [\n 116.424079,\n 39.522735\n ],\n [\n 116.424656,\n 39.509741\n ],\n [\n 116.443813,\n 39.509872\n ],\n [\n 116.440994,\n 39.527328\n ],\n [\n 116.464573,\n 39.527657\n ],\n [\n 116.478861,\n 39.539204\n ],\n [\n 116.470916,\n 39.55462\n ],\n [\n 116.508462,\n 39.551078\n ],\n [\n 116.519354,\n 39.566491\n ],\n [\n 116.524416,\n 39.596521\n ],\n [\n 116.541779,\n 39.593505\n ],\n [\n 116.566575,\n 39.604387\n ],\n [\n 116.565934,\n 39.619788\n ],\n [\n 116.607773,\n 39.619723\n ],\n [\n 116.620524,\n 39.601699\n ],\n [\n 116.646537,\n 39.599143\n ],\n [\n 116.662363,\n 39.605239\n ],\n [\n 116.705099,\n 39.587999\n ],\n [\n 116.727075,\n 39.593047\n ],\n [\n 116.7026,\n 39.610417\n ],\n [\n 116.700742,\n 39.621033\n ],\n [\n 116.748667,\n 39.619919\n ],\n [\n 116.790699,\n 39.596062\n ],\n [\n 116.789994,\n 39.610548\n ],\n [\n 116.812355,\n 39.615922\n ],\n [\n 116.797875,\n 39.594358\n ],\n [\n 116.81165,\n 39.576983\n ],\n [\n 116.787687,\n 39.554555\n ],\n [\n 116.806204,\n 39.528838\n ],\n [\n 116.819595,\n 39.52851\n ],\n [\n 116.826194,\n 39.513088\n ],\n [\n 116.813957,\n 39.510266\n ],\n [\n 116.820748,\n 39.482431\n ],\n [\n 116.785124,\n 39.465883\n ],\n [\n 116.807421,\n 39.445586\n ],\n [\n 116.815751,\n 39.451761\n ],\n [\n 116.832473,\n 39.435468\n ],\n [\n 116.855475,\n 39.443352\n ],\n [\n 116.875914,\n 39.434548\n ],\n [\n 116.834139,\n 39.402674\n ],\n [\n 116.837599,\n 39.374073\n ],\n [\n 116.818121,\n 39.373547\n ],\n [\n 116.829206,\n 39.338881\n ],\n [\n 116.849196,\n 39.339473\n ],\n [\n 116.870724,\n 39.357499\n ],\n [\n 116.875786,\n 39.33921\n ],\n [\n 116.889626,\n 39.338157\n ],\n [\n 116.884243,\n 39.305383\n ],\n [\n 116.867969,\n 39.302552\n ],\n [\n 116.878733,\n 39.255336\n ],\n [\n 116.892637,\n 39.223973\n ],\n [\n 116.874569,\n 39.230036\n ],\n [\n 116.875594,\n 39.21646\n ],\n [\n 116.855796,\n 39.215669\n ],\n [\n 116.863164,\n 39.201365\n ],\n [\n 116.870084,\n 39.153685\n ],\n [\n 116.909232,\n 39.150782\n ],\n [\n 116.924096,\n 39.119372\n ],\n [\n 116.91109,\n 39.111055\n ],\n [\n 116.881488,\n 39.071702\n ],\n [\n 116.869891,\n 39.069919\n ],\n [\n 116.860473,\n 39.050564\n ],\n [\n 116.80268,\n 39.050895\n ],\n [\n 116.787303,\n 39.061927\n ],\n [\n 116.773015,\n 39.046865\n ],\n [\n 116.756612,\n 39.0503\n ],\n [\n 116.754626,\n 39.003245\n ],\n [\n 116.728613,\n 38.975341\n ],\n [\n 116.716247,\n 38.938957\n ],\n [\n 116.70811,\n 38.931876\n ],\n [\n 116.708046,\n 38.897058\n ],\n [\n 116.722334,\n 38.897058\n ],\n [\n 116.723103,\n 38.852551\n ],\n [\n 116.74604,\n 38.851491\n ],\n [\n 116.75123,\n 38.831282\n ],\n [\n 116.73848,\n 38.807022\n ],\n [\n 116.737327,\n 38.784479\n ],\n [\n 116.751294,\n 38.780168\n ],\n [\n 116.746297,\n 38.754233\n ],\n [\n 116.766351,\n 38.741959\n ],\n [\n 116.758855,\n 38.732071\n ],\n [\n 116.77404,\n 38.652258\n ],\n [\n 116.763212,\n 38.633853\n ],\n [\n 116.738224,\n 38.631327\n ],\n [\n 116.733739,\n 38.614047\n ],\n [\n 116.71503,\n 38.609327\n ],\n [\n 116.702792,\n 38.619098\n ],\n [\n 116.680559,\n 38.605936\n ],\n [\n 116.680303,\n 38.592706\n ],\n [\n 116.662234,\n 38.581268\n ],\n [\n 116.671653,\n 38.566503\n ],\n [\n 116.643333,\n 38.564773\n ],\n [\n 116.652431,\n 38.551202\n ],\n [\n 116.672678,\n 38.546545\n ],\n [\n 116.668257,\n 38.530042\n ],\n [\n 116.647114,\n 38.50648\n ],\n [\n 116.621228,\n 38.514335\n ],\n [\n 116.627315,\n 38.501087\n ],\n [\n 116.610593,\n 38.479646\n ],\n [\n 116.589897,\n 38.483908\n ],\n [\n 116.569715,\n 38.470988\n ],\n [\n 116.559399,\n 38.496759\n ],\n [\n 116.519482,\n 38.48817\n ],\n [\n 116.465726,\n 38.494096\n ],\n [\n 116.449772,\n 38.518262\n ],\n [\n 116.452655,\n 38.534501\n ],\n [\n 116.431127,\n 38.539558\n ],\n [\n 116.432152,\n 38.552533\n ],\n [\n 116.455475,\n 38.557656\n ],\n [\n 116.454834,\n 38.580337\n ],\n [\n 116.425425,\n 38.587187\n ],\n [\n 116.41921,\n 38.599288\n ],\n [\n 116.381984,\n 38.619165\n ],\n [\n 116.366863,\n 38.67305\n ],\n [\n 116.370836,\n 38.692508\n ],\n [\n 116.406331,\n 38.703596\n ],\n [\n 116.435804,\n 38.733199\n ],\n [\n 116.42299,\n 38.770419\n ],\n [\n 116.390313,\n 38.789784\n ],\n [\n 116.338287,\n 38.80689\n ],\n [\n 116.271973,\n 38.816634\n ],\n [\n 116.278764,\n 38.836451\n ],\n [\n 116.247497,\n 38.848907\n ],\n [\n 116.248907,\n 38.85964\n ],\n [\n 116.23212,\n 38.871894\n ],\n [\n 116.212194,\n 38.870238\n ],\n [\n 116.202198,\n 38.887258\n ],\n [\n 116.20002,\n 38.915727\n ],\n [\n 116.209503,\n 38.921618\n ]\n ]\n ],\n [\n [\n [\n 117.209793,\n 40.082253\n ],\n [\n 117.222863,\n 40.065523\n ],\n [\n 117.1841,\n 40.062593\n ],\n [\n 117.187752,\n 40.026187\n ],\n [\n 117.198132,\n 39.99276\n ],\n [\n 117.178654,\n 39.977311\n ],\n [\n 117.175963,\n 39.959121\n ],\n [\n 117.151039,\n 39.944839\n ],\n [\n 117.156869,\n 39.938055\n ],\n [\n 117.137456,\n 39.921616\n ],\n [\n 117.158856,\n 39.909218\n ],\n [\n 117.149117,\n 39.896297\n ],\n [\n 117.166865,\n 39.868944\n ],\n [\n 117.227797,\n 39.852749\n ],\n [\n 117.247467,\n 39.861043\n ],\n [\n 117.259961,\n 39.843409\n ],\n [\n 117.252208,\n 39.834591\n ],\n [\n 117.192173,\n 39.833088\n ],\n [\n 117.195056,\n 39.82551\n ],\n [\n 117.156357,\n 39.817473\n ],\n [\n 117.15751,\n 39.796756\n ],\n [\n 117.178718,\n 39.795318\n ],\n [\n 117.18064,\n 39.78244\n ],\n [\n 117.205884,\n 39.763871\n ],\n [\n 117.161867,\n 39.747389\n ],\n [\n 117.153153,\n 39.722726\n ],\n [\n 117.169235,\n 39.717622\n ],\n [\n 117.170132,\n 39.673371\n ],\n [\n 117.159624,\n 39.666823\n ],\n [\n 117.177693,\n 39.645602\n ],\n [\n 117.157959,\n 39.636627\n ],\n [\n 117.152641,\n 39.623523\n ],\n [\n 117.127076,\n 39.61697\n ],\n [\n 117.057045,\n 39.644554\n ],\n [\n 117.015783,\n 39.654052\n ],\n [\n 117.004378,\n 39.644489\n ],\n [\n 116.974585,\n 39.636824\n ],\n [\n 116.963629,\n 39.643441\n ],\n [\n 116.944599,\n 39.695173\n ],\n [\n 116.950878,\n 39.706824\n ],\n [\n 116.91692,\n 39.706365\n ],\n [\n 116.912563,\n 39.689216\n ],\n [\n 116.893854,\n 39.695893\n ],\n [\n 116.88277,\n 39.718472\n ],\n [\n 116.916664,\n 39.731362\n ],\n [\n 116.901799,\n 39.763609\n ],\n [\n 116.920893,\n 39.769167\n ],\n [\n 116.924288,\n 39.781263\n ],\n [\n 116.949725,\n 39.778583\n ],\n [\n 116.952608,\n 39.789827\n ],\n [\n 116.928453,\n 39.813095\n ],\n [\n 116.92589,\n 39.835374\n ],\n [\n 116.902824,\n 39.848242\n ],\n [\n 116.907566,\n 39.834133\n ],\n [\n 116.885653,\n 39.844585\n ],\n [\n 116.866047,\n 39.843866\n ],\n [\n 116.827284,\n 39.87704\n ],\n [\n 116.804154,\n 39.877954\n ],\n [\n 116.784676,\n 39.891401\n ],\n [\n 116.780575,\n 39.94973\n ],\n [\n 116.757317,\n 39.961468\n ],\n [\n 116.775385,\n 39.99276\n ],\n [\n 116.770452,\n 40.011658\n ],\n [\n 116.781536,\n 40.034851\n ],\n [\n 116.819979,\n 40.028337\n ],\n [\n 116.822734,\n 40.046444\n ],\n [\n 116.857782,\n 40.051914\n ],\n [\n 116.867841,\n 40.041885\n ],\n [\n 116.928133,\n 40.05491\n ],\n [\n 116.960489,\n 40.051133\n ],\n [\n 116.972086,\n 40.037\n ],\n [\n 117.000662,\n 40.0299\n ],\n [\n 117.028533,\n 40.033939\n ],\n [\n 117.052048,\n 40.059402\n ],\n [\n 117.085173,\n 40.068583\n ],\n [\n 117.085621,\n 40.075158\n ],\n [\n 117.119515,\n 40.072424\n ],\n [\n 117.13925,\n 40.064025\n ],\n [\n 117.160073,\n 40.076199\n ],\n [\n 117.204347,\n 40.06982\n ],\n [\n 117.209793,\n 40.082253\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 131100,\n \"name\": \"衡水市\",\n \"center\": [\n 115.665993,\n 37.735097\n ],\n \"centroid\": [\n 115.828776,\n 37.764802\n ],\n \"childrenNum\": 11,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 130000\n },\n \"subFeatureIndex\": 10,\n \"acroutes\": [\n 100000,\n 130000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 115.705321,\n 38.367543\n ],\n [\n 115.734025,\n 38.359205\n ],\n [\n 115.738767,\n 38.369544\n ],\n [\n 115.783297,\n 38.358338\n ],\n [\n 115.804633,\n 38.345462\n ],\n [\n 115.841538,\n 38.346062\n ],\n [\n 115.850188,\n 38.309423\n ],\n [\n 115.833016,\n 38.298008\n ],\n [\n 115.837181,\n 38.272499\n ],\n [\n 115.864476,\n 38.255266\n ],\n [\n 115.856467,\n 38.240901\n ],\n [\n 115.871267,\n 38.217579\n ],\n [\n 115.899523,\n 38.20314\n ],\n [\n 115.887542,\n 38.171312\n ],\n [\n 115.900804,\n 38.158536\n ],\n [\n 115.935403,\n 38.167232\n ],\n [\n 115.938671,\n 38.144354\n ],\n [\n 115.968913,\n 38.138533\n ],\n [\n 115.986725,\n 38.125885\n ],\n [\n 116.049771,\n 38.146026\n ],\n [\n 116.055218,\n 38.131306\n ],\n [\n 116.048554,\n 38.11424\n ],\n [\n 116.031831,\n 38.100718\n ],\n [\n 116.031511,\n 38.082774\n ],\n [\n 116.055474,\n 38.071725\n ],\n [\n 116.05227,\n 38.052434\n ],\n [\n 116.070595,\n 38.041112\n ],\n [\n 116.049515,\n 38.038365\n ],\n [\n 116.044774,\n 38.023824\n ],\n [\n 116.062394,\n 38.005057\n ],\n [\n 116.071876,\n 37.980318\n ],\n [\n 116.100645,\n 37.948929\n ],\n [\n 116.120571,\n 37.948996\n ],\n [\n 116.093981,\n 37.922627\n ],\n [\n 116.091034,\n 37.910949\n ],\n [\n 116.153952,\n 37.914573\n ],\n [\n 116.170867,\n 37.933565\n ],\n [\n 116.170163,\n 37.959594\n ],\n [\n 116.188039,\n 37.968314\n ],\n [\n 116.209118,\n 37.966369\n ],\n [\n 116.226354,\n 37.95121\n ],\n [\n 116.256595,\n 37.965229\n ],\n [\n 116.266206,\n 37.961405\n ],\n [\n 116.266975,\n 37.981458\n ],\n [\n 116.278252,\n 37.962479\n ],\n [\n 116.306764,\n 37.979312\n ],\n [\n 116.329189,\n 38.008141\n ],\n [\n 116.343925,\n 38.017256\n ],\n [\n 116.3709,\n 38.018597\n ],\n [\n 116.417224,\n 38.009481\n ],\n [\n 116.479309,\n 38.011492\n ],\n [\n 116.483474,\n 38.02503\n ],\n [\n 116.496352,\n 38.013704\n ],\n [\n 116.563243,\n 38.01987\n ],\n [\n 116.565166,\n 37.980116\n ],\n [\n 116.53377,\n 37.907727\n ],\n [\n 116.515382,\n 37.892892\n ],\n [\n 116.51346,\n 37.863951\n ],\n [\n 116.473415,\n 37.865495\n ],\n [\n 116.481424,\n 37.830026\n ],\n [\n 116.466623,\n 37.805564\n ],\n [\n 116.47303,\n 37.777059\n ],\n [\n 116.460664,\n 37.778875\n ],\n [\n 116.451182,\n 37.7587\n ],\n [\n 116.438367,\n 37.758902\n ],\n [\n 116.434331,\n 37.734618\n ],\n [\n 116.424784,\n 37.735829\n ],\n [\n 116.386533,\n 37.696393\n ],\n [\n 116.378909,\n 37.659698\n ],\n [\n 116.36539,\n 37.648719\n ],\n [\n 116.374936,\n 37.63949\n ],\n [\n 116.375192,\n 37.617256\n ],\n [\n 116.3281,\n 37.605058\n ],\n [\n 116.335916,\n 37.581263\n ],\n [\n 116.287863,\n 37.5493\n ],\n [\n 116.291386,\n 37.5238\n ],\n [\n 116.278444,\n 37.524745\n ],\n [\n 116.290233,\n 37.484049\n ],\n [\n 116.271781,\n 37.478176\n ],\n [\n 116.276458,\n 37.466901\n ],\n [\n 116.241346,\n 37.491475\n ],\n [\n 116.224431,\n 37.479729\n ],\n [\n 116.229878,\n 37.459676\n ],\n [\n 116.243076,\n 37.448195\n ],\n [\n 116.227379,\n 37.424755\n ],\n [\n 116.263067,\n 37.42239\n ],\n [\n 116.285236,\n 37.40266\n ],\n [\n 116.236028,\n 37.361559\n ],\n [\n 116.195471,\n 37.365684\n ],\n [\n 116.168817,\n 37.38414\n ],\n [\n 116.106539,\n 37.368794\n ],\n [\n 116.08751,\n 37.373324\n ],\n [\n 116.056179,\n 37.369065\n ],\n [\n 116.05195,\n 37.357502\n ],\n [\n 116.024527,\n 37.359937\n ],\n [\n 116.00947,\n 37.343165\n ],\n [\n 115.975897,\n 37.334508\n ],\n [\n 115.98461,\n 37.316175\n ],\n [\n 115.968272,\n 37.287076\n ],\n [\n 115.976217,\n 37.276178\n ],\n [\n 115.964171,\n 37.250721\n ],\n [\n 115.969425,\n 37.239479\n ],\n [\n 115.953215,\n 37.223697\n ],\n [\n 115.940721,\n 37.227558\n ],\n [\n 115.912017,\n 37.207098\n ],\n [\n 115.904841,\n 37.189344\n ],\n [\n 115.911825,\n 37.176195\n ],\n [\n 115.879981,\n 37.151992\n ],\n [\n 115.885427,\n 37.128731\n ],\n [\n 115.864988,\n 37.070785\n ],\n [\n 115.853904,\n 37.059245\n ],\n [\n 115.827378,\n 37.106006\n ],\n [\n 115.786564,\n 37.123916\n ],\n [\n 115.76997,\n 37.14155\n ],\n [\n 115.756322,\n 37.209876\n ],\n [\n 115.698465,\n 37.257153\n ],\n [\n 115.675784,\n 37.258914\n ],\n [\n 115.67258,\n 37.275839\n ],\n [\n 115.63292,\n 37.277058\n ],\n [\n 115.623437,\n 37.297905\n ],\n [\n 115.599859,\n 37.301965\n ],\n [\n 115.590632,\n 37.312453\n ],\n [\n 115.599218,\n 37.332884\n ],\n [\n 115.577177,\n 37.316107\n ],\n [\n 115.52938,\n 37.326864\n ],\n [\n 115.520089,\n 37.353648\n ],\n [\n 115.506634,\n 37.368997\n ],\n [\n 115.468768,\n 37.382788\n ],\n [\n 115.428595,\n 37.387926\n ],\n [\n 115.391049,\n 37.42793\n ],\n [\n 115.345109,\n 37.448195\n ],\n [\n 115.360038,\n 37.461431\n ],\n [\n 115.404183,\n 37.462039\n ],\n [\n 115.431478,\n 37.469602\n ],\n [\n 115.410719,\n 37.476421\n ],\n [\n 115.417638,\n 37.487762\n ],\n [\n 115.397968,\n 37.497347\n ],\n [\n 115.402069,\n 37.51017\n ],\n [\n 115.426096,\n 37.506256\n ],\n [\n 115.421675,\n 37.495727\n ],\n [\n 115.455313,\n 37.501802\n ],\n [\n 115.430965,\n 37.506796\n ],\n [\n 115.410078,\n 37.523261\n ],\n [\n 115.405785,\n 37.535944\n ],\n [\n 115.372147,\n 37.544106\n ],\n [\n 115.359461,\n 37.558675\n ],\n [\n 115.360871,\n 37.523935\n ],\n [\n 115.307179,\n 37.563935\n ],\n [\n 115.282575,\n 37.576005\n ],\n [\n 115.237276,\n 37.575465\n ],\n [\n 115.201908,\n 37.555977\n ],\n [\n 115.188325,\n 37.563125\n ],\n [\n 115.200563,\n 37.572498\n ],\n [\n 115.172756,\n 37.600543\n ],\n [\n 115.191593,\n 37.608833\n ],\n [\n 115.202934,\n 37.637133\n ],\n [\n 115.227858,\n 37.648921\n ],\n [\n 115.255088,\n 37.645621\n ],\n [\n 115.258356,\n 37.639625\n ],\n [\n 115.297376,\n 37.629587\n ],\n [\n 115.301412,\n 37.660169\n ],\n [\n 115.316853,\n 37.660102\n ],\n [\n 115.325567,\n 37.682458\n ],\n [\n 115.317046,\n 37.695383\n ],\n [\n 115.333768,\n 37.71322\n ],\n [\n 115.380989,\n 37.707432\n ],\n [\n 115.394316,\n 37.712143\n ],\n [\n 115.386179,\n 37.727082\n ],\n [\n 115.360294,\n 37.731994\n ],\n [\n 115.344468,\n 37.74814\n ],\n [\n 115.371635,\n 37.770335\n ],\n [\n 115.352349,\n 37.784052\n ],\n [\n 115.349722,\n 37.805765\n ],\n [\n 115.360166,\n 37.820215\n ],\n [\n 115.363049,\n 37.849845\n ],\n [\n 115.388614,\n 37.853003\n ],\n [\n 115.389831,\n 37.874629\n ],\n [\n 115.360294,\n 37.880068\n ],\n [\n 115.365484,\n 37.906318\n ],\n [\n 115.385795,\n 37.917191\n ],\n [\n 115.408668,\n 37.918936\n ],\n [\n 115.412769,\n 37.943293\n ],\n [\n 115.448585,\n 37.936584\n ],\n [\n 115.457555,\n 37.95074\n ],\n [\n 115.456017,\n 37.974551\n ],\n [\n 115.444997,\n 37.989168\n ],\n [\n 115.464219,\n 37.99299\n ],\n [\n 115.438205,\n 38.001102\n ],\n [\n 115.45134,\n 38.017323\n ],\n [\n 115.466782,\n 38.063554\n ],\n [\n 115.482992,\n 38.08398\n ],\n [\n 115.468063,\n 38.095161\n ],\n [\n 115.439871,\n 38.082038\n ],\n [\n 115.420522,\n 38.089671\n ],\n [\n 115.383232,\n 38.0886\n ],\n [\n 115.364843,\n 38.13793\n ],\n [\n 115.346903,\n 38.13967\n ],\n [\n 115.342418,\n 38.196254\n ],\n [\n 115.35094,\n 38.210493\n ],\n [\n 115.323645,\n 38.220586\n ],\n [\n 115.324734,\n 38.248184\n ],\n [\n 115.34953,\n 38.248117\n ],\n [\n 115.356194,\n 38.271764\n ],\n [\n 115.369072,\n 38.283451\n ],\n [\n 115.393611,\n 38.285588\n ],\n [\n 115.383104,\n 38.299076\n ],\n [\n 115.381822,\n 38.327578\n ],\n [\n 115.402453,\n 38.320103\n ],\n [\n 115.420906,\n 38.337922\n ],\n [\n 115.462104,\n 38.327311\n ],\n [\n 115.478122,\n 38.341658\n ],\n [\n 115.495101,\n 38.342993\n ],\n [\n 115.494781,\n 38.362006\n ],\n [\n 115.516822,\n 38.357337\n ],\n [\n 115.516437,\n 38.318168\n ],\n [\n 115.547704,\n 38.318168\n ],\n [\n 115.550908,\n 38.332917\n ],\n [\n 115.575768,\n 38.326377\n ],\n [\n 115.57942,\n 38.342859\n ],\n [\n 115.590504,\n 38.332784\n ],\n [\n 115.644965,\n 38.32611\n ],\n [\n 115.650155,\n 38.340791\n ],\n [\n 115.699811,\n 38.349932\n ],\n [\n 115.705321,\n 38.367543\n ]\n ]\n ]\n ]\n }\n }\n ]\n}', 'admin', '2020-05-19 16:42:35', 'jeecg', '2020-05-19 16:42:35', '0', NULL); +INSERT INTO `jimu_report_map` VALUES ('1334703777051127809', '山东', 'shandong', '{\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 370100,\n \"name\": \"济南市\",\n \"center\": [\n 117.000923,\n 36.675807\n ],\n \"centroid\": [\n 117.221244,\n 36.639974\n ],\n \"childrenNum\": 12,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 0,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 117.273417,\n 37.532619\n ],\n [\n 117.275549,\n 37.526193\n ],\n [\n 117.284393,\n 37.522266\n ],\n [\n 117.286525,\n 37.510046\n ],\n [\n 117.307215,\n 37.507744\n ],\n [\n 117.317718,\n 37.499371\n ],\n [\n 117.312585,\n 37.487068\n ],\n [\n 117.285894,\n 37.479328\n ],\n [\n 117.283998,\n 37.471587\n ],\n [\n 117.304609,\n 37.466069\n ],\n [\n 117.307768,\n 37.46194\n ],\n [\n 117.295449,\n 37.4538\n ],\n [\n 117.309189,\n 37.447486\n ],\n [\n 117.353332,\n 37.450901\n ],\n [\n 117.369758,\n 37.436048\n ],\n [\n 117.368257,\n 37.419563\n ],\n [\n 117.360202,\n 37.405697\n ],\n [\n 117.368652,\n 37.396399\n ],\n [\n 117.401029,\n 37.379071\n ],\n [\n 117.415401,\n 37.364203\n ],\n [\n 117.41319,\n 37.342255\n ],\n [\n 117.409163,\n 37.329488\n ],\n [\n 117.411611,\n 37.308604\n ],\n [\n 117.417612,\n 37.296587\n ],\n [\n 117.430168,\n 37.285166\n ],\n [\n 117.432379,\n 37.272032\n ],\n [\n 117.43688,\n 37.27235\n ],\n [\n 117.438302,\n 37.25786\n ],\n [\n 117.443908,\n 37.250056\n ],\n [\n 117.431037,\n 37.254396\n ],\n [\n 117.424403,\n 37.243367\n ],\n [\n 117.429141,\n 37.239783\n ],\n [\n 117.408768,\n 37.239703\n ],\n [\n 117.402371,\n 37.224808\n ],\n [\n 117.404977,\n 37.21716\n ],\n [\n 117.417928,\n 37.20003\n ],\n [\n 117.436091,\n 37.184251\n ],\n [\n 117.442724,\n 37.170859\n ],\n [\n 117.444066,\n 37.156868\n ],\n [\n 117.4507,\n 37.153957\n ],\n [\n 117.4507,\n 37.143711\n ],\n [\n 117.455596,\n 37.11767\n ],\n [\n 117.459781,\n 37.109931\n ],\n [\n 117.442092,\n 37.093574\n ],\n [\n 117.409241,\n 37.089425\n ],\n [\n 117.391158,\n 37.083479\n ],\n [\n 117.365256,\n 37.069272\n ],\n [\n 117.336433,\n 37.073941\n ],\n [\n 117.339434,\n 37.056419\n ],\n [\n 117.33667,\n 37.046838\n ],\n [\n 117.326088,\n 37.036178\n ],\n [\n 117.315349,\n 37.030547\n ],\n [\n 117.317323,\n 37.020923\n ],\n [\n 117.328457,\n 37.011218\n ],\n [\n 117.35349,\n 37.003349\n ],\n [\n 117.365335,\n 36.99496\n ],\n [\n 117.378286,\n 36.956997\n ],\n [\n 117.391632,\n 36.952\n ],\n [\n 117.40403,\n 36.955038\n ],\n [\n 117.415322,\n 36.964311\n ],\n [\n 117.432853,\n 36.954878\n ],\n [\n 117.444461,\n 36.958116\n ],\n [\n 117.458754,\n 36.957676\n ],\n [\n 117.477628,\n 36.961154\n ],\n [\n 117.476522,\n 36.968348\n ],\n [\n 117.494527,\n 36.972344\n ],\n [\n 117.509847,\n 36.969267\n ],\n [\n 117.519875,\n 36.957117\n ],\n [\n 117.536854,\n 36.978498\n ],\n [\n 117.549094,\n 36.979817\n ],\n [\n 117.555253,\n 36.970785\n ],\n [\n 117.54933,\n 36.96507\n ],\n [\n 117.56544,\n 36.959954\n ],\n [\n 117.56465,\n 36.945084\n ],\n [\n 117.553674,\n 36.940727\n ],\n [\n 117.551305,\n 36.93385\n ],\n [\n 117.539538,\n 36.941486\n ],\n [\n 117.534248,\n 36.931611\n ],\n [\n 117.56923,\n 36.915736\n ],\n [\n 117.58376,\n 36.894176\n ],\n [\n 117.585024,\n 36.886815\n ],\n [\n 117.579891,\n 36.878093\n ],\n [\n 117.577364,\n 36.862847\n ],\n [\n 117.580523,\n 36.85136\n ],\n [\n 117.608556,\n 36.821815\n ],\n [\n 117.648119,\n 36.805436\n ],\n [\n 117.677811,\n 36.783245\n ],\n [\n 117.687603,\n 36.763853\n ],\n [\n 117.695974,\n 36.754115\n ],\n [\n 117.724165,\n 36.755998\n ],\n [\n 117.747303,\n 36.748584\n ],\n [\n 117.736642,\n 36.729423\n ],\n [\n 117.739959,\n 36.721004\n ],\n [\n 117.71848,\n 36.704724\n ],\n [\n 117.718006,\n 36.697826\n ],\n [\n 117.715637,\n 36.691208\n ],\n [\n 117.701265,\n 36.685191\n ],\n [\n 117.695184,\n 36.666978\n ],\n [\n 117.698027,\n 36.652974\n ],\n [\n 117.709003,\n 36.651569\n ],\n [\n 117.712241,\n 36.642258\n ],\n [\n 117.70853,\n 36.635154\n ],\n [\n 117.715321,\n 36.627527\n ],\n [\n 117.714926,\n 36.610545\n ],\n [\n 117.706555,\n 36.611549\n ],\n [\n 117.705055,\n 36.605807\n ],\n [\n 117.690525,\n 36.604883\n ],\n [\n 117.697869,\n 36.599422\n ],\n [\n 117.715163,\n 36.600546\n ],\n [\n 117.706792,\n 36.593559\n ],\n [\n 117.715321,\n 36.578537\n ],\n [\n 117.706792,\n 36.581469\n ],\n [\n 117.696132,\n 36.575042\n ],\n [\n 117.694315,\n 36.568896\n ],\n [\n 117.720849,\n 36.560057\n ],\n [\n 117.72377,\n 36.54732\n ],\n [\n 117.739406,\n 36.539925\n ],\n [\n 117.742486,\n 36.525737\n ],\n [\n 117.750777,\n 36.524652\n ],\n [\n 117.76586,\n 36.512994\n ],\n [\n 117.765544,\n 36.509496\n ],\n [\n 117.751646,\n 36.509979\n ],\n [\n 117.735853,\n 36.504993\n ],\n [\n 117.743118,\n 36.498439\n ],\n [\n 117.755673,\n 36.496228\n ],\n [\n 117.757332,\n 36.484485\n ],\n [\n 117.748566,\n 36.478694\n ],\n [\n 117.765544,\n 36.469845\n ],\n [\n 117.757016,\n 36.459144\n ],\n [\n 117.763491,\n 36.452868\n ],\n [\n 117.755752,\n 36.445303\n ],\n [\n 117.779838,\n 36.441239\n ],\n [\n 117.786471,\n 36.434277\n ],\n [\n 117.7965,\n 36.43963\n ],\n [\n 117.799343,\n 36.432265\n ],\n [\n 117.817268,\n 36.436129\n ],\n [\n 117.822717,\n 36.44305\n ],\n [\n 117.833062,\n 36.44301\n ],\n [\n 117.826823,\n 36.427114\n ],\n [\n 117.829508,\n 36.417776\n ],\n [\n 117.855094,\n 36.412945\n ],\n [\n 117.859279,\n 36.389433\n ],\n [\n 117.867492,\n 36.386373\n ],\n [\n 117.879732,\n 36.370626\n ],\n [\n 117.882101,\n 36.35673\n ],\n [\n 117.890314,\n 36.366035\n ],\n [\n 117.89521,\n 36.359227\n ],\n [\n 117.893472,\n 36.339446\n ],\n [\n 117.902633,\n 36.352057\n ],\n [\n 117.915346,\n 36.352903\n ],\n [\n 117.933904,\n 36.341219\n ],\n [\n 117.933509,\n 36.334369\n ],\n [\n 117.919611,\n 36.324738\n ],\n [\n 117.918347,\n 36.317725\n ],\n [\n 117.924823,\n 36.313171\n ],\n [\n 117.922533,\n 36.300514\n ],\n [\n 117.93114,\n 36.283742\n ],\n [\n 117.926797,\n 36.277532\n ],\n [\n 117.932719,\n 36.271846\n ],\n [\n 117.943696,\n 36.274064\n ],\n [\n 117.972993,\n 36.268378\n ],\n [\n 117.975362,\n 36.262328\n ],\n [\n 117.96707,\n 36.248251\n ],\n [\n 117.96328,\n 36.224971\n ],\n [\n 117.967781,\n 36.21464\n ],\n [\n 117.959332,\n 36.204308\n ],\n [\n 117.943933,\n 36.207981\n ],\n [\n 117.928534,\n 36.196558\n ],\n [\n 117.921664,\n 36.203662\n ],\n [\n 117.914636,\n 36.200837\n ],\n [\n 117.915899,\n 36.192562\n ],\n [\n 117.903027,\n 36.172092\n ],\n [\n 117.912109,\n 36.171648\n ],\n [\n 117.917873,\n 36.16337\n ],\n [\n 117.90666,\n 36.152708\n ],\n [\n 117.914162,\n 36.140631\n ],\n [\n 117.91203,\n 36.132753\n ],\n [\n 117.923875,\n 36.1174\n ],\n [\n 117.921111,\n 36.110005\n ],\n [\n 117.931535,\n 36.094203\n ],\n [\n 117.939984,\n 36.094324\n ],\n [\n 117.946618,\n 36.100387\n ],\n [\n 117.954041,\n 36.090201\n ],\n [\n 117.953172,\n 36.081833\n ],\n [\n 117.946223,\n 36.08151\n ],\n [\n 117.94188,\n 36.071807\n ],\n [\n 117.948829,\n 36.062589\n ],\n [\n 117.935799,\n 36.061214\n ],\n [\n 117.932798,\n 36.052196\n ],\n [\n 117.946855,\n 36.04253\n ],\n [\n 117.949855,\n 36.018259\n ],\n [\n 117.94338,\n 36.017288\n ],\n [\n 117.950803,\n 35.996489\n ],\n [\n 117.937536,\n 35.99653\n ],\n [\n 117.935088,\n 36.004421\n ],\n [\n 117.926165,\n 36.005068\n ],\n [\n 117.922848,\n 36.015467\n ],\n [\n 117.914557,\n 36.020039\n ],\n [\n 117.895052,\n 36.020363\n ],\n [\n 117.877047,\n 36.016357\n ],\n [\n 117.866386,\n 36.007415\n ],\n [\n 117.854462,\n 36.006889\n ],\n [\n 117.841827,\n 36.011947\n ],\n [\n 117.828719,\n 36.008022\n ],\n [\n 117.825244,\n 36.013363\n ],\n [\n 117.801159,\n 36.012959\n ],\n [\n 117.794763,\n 36.015143\n ],\n [\n 117.782286,\n 36.007294\n ],\n [\n 117.781022,\n 35.995437\n ],\n [\n 117.762307,\n 35.990621\n ],\n [\n 117.756621,\n 35.991916\n ],\n [\n 117.756542,\n 36.002236\n ],\n [\n 117.750304,\n 36.011947\n ],\n [\n 117.757016,\n 36.019392\n ],\n [\n 117.741696,\n 36.036058\n ],\n [\n 117.725824,\n 36.029667\n ],\n [\n 117.720454,\n 36.038243\n ],\n [\n 117.701186,\n 36.04528\n ],\n [\n 117.689972,\n 36.052358\n ],\n [\n 117.656569,\n 36.049729\n ],\n [\n 117.630588,\n 36.059879\n ],\n [\n 117.601844,\n 36.075648\n ],\n [\n 117.575943,\n 36.074516\n ],\n [\n 117.561649,\n 36.079327\n ],\n [\n 117.552884,\n 36.087978\n ],\n [\n 117.547672,\n 36.106166\n ],\n [\n 117.534879,\n 36.111419\n ],\n [\n 117.505898,\n 36.098245\n ],\n [\n 117.491052,\n 36.096587\n ],\n [\n 117.484893,\n 36.10075\n ],\n [\n 117.473758,\n 36.089797\n ],\n [\n 117.451963,\n 36.087412\n ],\n [\n 117.447067,\n 36.09206\n ],\n [\n 117.456148,\n 36.100467\n ],\n [\n 117.454885,\n 36.111177\n ],\n [\n 117.463571,\n 36.116875\n ],\n [\n 117.44683,\n 36.120834\n ],\n [\n 117.459623,\n 36.1498\n ],\n [\n 117.469178,\n 36.154687\n ],\n [\n 117.476601,\n 36.150123\n ],\n [\n 117.487972,\n 36.15921\n ],\n [\n 117.475653,\n 36.173102\n ],\n [\n 117.461202,\n 36.170194\n ],\n [\n 117.446988,\n 36.18691\n ],\n [\n 117.440434,\n 36.191189\n ],\n [\n 117.452437,\n 36.203138\n ],\n [\n 117.447778,\n 36.203541\n ],\n [\n 117.447383,\n 36.218313\n ],\n [\n 117.427878,\n 36.221662\n ],\n [\n 117.412716,\n 36.210927\n ],\n [\n 117.396607,\n 36.215972\n ],\n [\n 117.385235,\n 36.226989\n ],\n [\n 117.393132,\n 36.226747\n ],\n [\n 117.392895,\n 36.237439\n ],\n [\n 117.417217,\n 36.243652\n ],\n [\n 117.413901,\n 36.267934\n ],\n [\n 117.394553,\n 36.266522\n ],\n [\n 117.397791,\n 36.283782\n ],\n [\n 117.387604,\n 36.285556\n ],\n [\n 117.38792,\n 36.296361\n ],\n [\n 117.379707,\n 36.315146\n ],\n [\n 117.38871,\n 36.326148\n ],\n [\n 117.387762,\n 36.337915\n ],\n [\n 117.362729,\n 36.360234\n ],\n [\n 117.351753,\n 36.377997\n ],\n [\n 117.35041,\n 36.393379\n ],\n [\n 117.344962,\n 36.403968\n ],\n [\n 117.339434,\n 36.425786\n ],\n [\n 117.339118,\n 36.438181\n ],\n [\n 117.346936,\n 36.455724\n ],\n [\n 117.346383,\n 36.46373\n ],\n [\n 117.335328,\n 36.466345\n ],\n [\n 117.30682,\n 36.467029\n ],\n [\n 117.30682,\n 36.472097\n ],\n [\n 117.288184,\n 36.476039\n ],\n [\n 117.288973,\n 36.468718\n ],\n [\n 117.275786,\n 36.451218\n ],\n [\n 117.263862,\n 36.449206\n ],\n [\n 117.249726,\n 36.436732\n ],\n [\n 117.242145,\n 36.41528\n ],\n [\n 117.218297,\n 36.406182\n ],\n [\n 117.208742,\n 36.405297\n ],\n [\n 117.200924,\n 36.389755\n ],\n [\n 117.191685,\n 36.378762\n ],\n [\n 117.180945,\n 36.37256\n ],\n [\n 117.18292,\n 36.360798\n ],\n [\n 117.179603,\n 36.353144\n ],\n [\n 117.161361,\n 36.351895\n ],\n [\n 117.142567,\n 36.345731\n ],\n [\n 117.137039,\n 36.335135\n ],\n [\n 117.111691,\n 36.340413\n ],\n [\n 117.107347,\n 36.338882\n ],\n [\n 117.088711,\n 36.346013\n ],\n [\n 117.07734,\n 36.321957\n ],\n [\n 117.077655,\n 36.307205\n ],\n [\n 117.074102,\n 36.296724\n ],\n [\n 117.066995,\n 36.296885\n ],\n [\n 117.051201,\n 36.288741\n ],\n [\n 117.0482,\n 36.283701\n ],\n [\n 117.030275,\n 36.277532\n ],\n [\n 117.027353,\n 36.268983\n ],\n [\n 117.003347,\n 36.265353\n ],\n [\n 117.002794,\n 36.254503\n ],\n [\n 116.987632,\n 36.250711\n ],\n [\n 116.975471,\n 36.243208\n ],\n [\n 116.956835,\n 36.259787\n ],\n [\n 116.950201,\n 36.257327\n ],\n [\n 116.932828,\n 36.261925\n ],\n [\n 116.928722,\n 36.26991\n ],\n [\n 116.891133,\n 36.255471\n ],\n [\n 116.873129,\n 36.264062\n ],\n [\n 116.867759,\n 36.28108\n ],\n [\n 116.855519,\n 36.289709\n ],\n [\n 116.855756,\n 36.301642\n ],\n [\n 116.830644,\n 36.294587\n ],\n [\n 116.808612,\n 36.299022\n ],\n [\n 116.786659,\n 36.311357\n ],\n [\n 116.772761,\n 36.312002\n ],\n [\n 116.762574,\n 36.305391\n ],\n [\n 116.732961,\n 36.294144\n ],\n [\n 116.710376,\n 36.279185\n ],\n [\n 116.701058,\n 36.280153\n ],\n [\n 116.686528,\n 36.275435\n ],\n [\n 116.675709,\n 36.276645\n ],\n [\n 116.649018,\n 36.295797\n ],\n [\n 116.615536,\n 36.294587\n ],\n [\n 116.610403,\n 36.282451\n ],\n [\n 116.595794,\n 36.270999\n ],\n [\n 116.587502,\n 36.268862\n ],\n [\n 116.581264,\n 36.255471\n ],\n [\n 116.574393,\n 36.263457\n ],\n [\n 116.558837,\n 36.261037\n ],\n [\n 116.552361,\n 36.247767\n ],\n [\n 116.53641,\n 36.245588\n ],\n [\n 116.525591,\n 36.255229\n ],\n [\n 116.512325,\n 36.253414\n ],\n [\n 116.506402,\n 36.240344\n ],\n [\n 116.485239,\n 36.236067\n ],\n [\n 116.487529,\n 36.228441\n ],\n [\n 116.472604,\n 36.21464\n ],\n [\n 116.481922,\n 36.197002\n ],\n [\n 116.502059,\n 36.192764\n ],\n [\n 116.51035,\n 36.176857\n ],\n [\n 116.525986,\n 36.168297\n ],\n [\n 116.52188,\n 36.157151\n ],\n [\n 116.510192,\n 36.148346\n ],\n [\n 116.507192,\n 36.141277\n ],\n [\n 116.519748,\n 36.141196\n ],\n [\n 116.528513,\n 36.145276\n ],\n [\n 116.525275,\n 36.135298\n ],\n [\n 116.543122,\n 36.13958\n ],\n [\n 116.5586,\n 36.133804\n ],\n [\n 116.562153,\n 36.121643\n ],\n [\n 116.569024,\n 36.118774\n ],\n [\n 116.566891,\n 36.108752\n ],\n [\n 116.554651,\n 36.108187\n ],\n [\n 116.546597,\n 36.101195\n ],\n [\n 116.543359,\n 36.086604\n ],\n [\n 116.532303,\n 36.074274\n ],\n [\n 116.504112,\n 36.064732\n ],\n [\n 116.471182,\n 36.06457\n ],\n [\n 116.452072,\n 36.058019\n ],\n [\n 116.449387,\n 36.047302\n ],\n [\n 116.434541,\n 36.038607\n ],\n [\n 116.436121,\n 36.046534\n ],\n [\n 116.429566,\n 36.052439\n ],\n [\n 116.433357,\n 36.059839\n ],\n [\n 116.427829,\n 36.067441\n ],\n [\n 116.409508,\n 36.068007\n ],\n [\n 116.401059,\n 36.074031\n ],\n [\n 116.398058,\n 36.084582\n ],\n [\n 116.386845,\n 36.090807\n ],\n [\n 116.360233,\n 36.084744\n ],\n [\n 116.352731,\n 36.070797\n ],\n [\n 116.338753,\n 36.060082\n ],\n [\n 116.324855,\n 36.054178\n ],\n [\n 116.310404,\n 36.052196\n ],\n [\n 116.304718,\n 36.046251\n ],\n [\n 116.301244,\n 36.031123\n ],\n [\n 116.294689,\n 36.031407\n ],\n [\n 116.271552,\n 36.043824\n ],\n [\n 116.267998,\n 36.052964\n ],\n [\n 116.267287,\n 36.074233\n ],\n [\n 116.273368,\n 36.093758\n ],\n [\n 116.27171,\n 36.109843\n ],\n [\n 116.261444,\n 36.122693\n ],\n [\n 116.246677,\n 36.149436\n ],\n [\n 116.226066,\n 36.173748\n ],\n [\n 116.234911,\n 36.180935\n ],\n [\n 116.255047,\n 36.203703\n ],\n [\n 116.280159,\n 36.221945\n ],\n [\n 116.28624,\n 36.239174\n ],\n [\n 116.307166,\n 36.259464\n ],\n [\n 116.310799,\n 36.270515\n ],\n [\n 116.322644,\n 36.284669\n ],\n [\n 116.331251,\n 36.290677\n ],\n [\n 116.374526,\n 36.3039\n ],\n [\n 116.406745,\n 36.319015\n ],\n [\n 116.430593,\n 36.318007\n ],\n [\n 116.441411,\n 36.321755\n ],\n [\n 116.449071,\n 36.337149\n ],\n [\n 116.484607,\n 36.336948\n ],\n [\n 116.503717,\n 36.369982\n ],\n [\n 116.519984,\n 36.384158\n ],\n [\n 116.528592,\n 36.387259\n ],\n [\n 116.546202,\n 36.40892\n ],\n [\n 116.591213,\n 36.416286\n ],\n [\n 116.612377,\n 36.42333\n ],\n [\n 116.6198,\n 36.428522\n ],\n [\n 116.620905,\n 36.44144\n ],\n [\n 116.611429,\n 36.459104\n ],\n [\n 116.613009,\n 36.473425\n ],\n [\n 116.595636,\n 36.480383\n ],\n [\n 116.593267,\n 36.485973\n ],\n [\n 116.602032,\n 36.495223\n ],\n [\n 116.624301,\n 36.497233\n ],\n [\n 116.627223,\n 36.508853\n ],\n [\n 116.610087,\n 36.51609\n ],\n [\n 116.60835,\n 36.52011\n ],\n [\n 116.622801,\n 36.532651\n ],\n [\n 116.629592,\n 36.544587\n ],\n [\n 116.646728,\n 36.544105\n ],\n [\n 116.658968,\n 36.553026\n ],\n [\n 116.662916,\n 36.563111\n ],\n [\n 116.661258,\n 36.578376\n ],\n [\n 116.682421,\n 36.580586\n ],\n [\n 116.694345,\n 36.591149\n ],\n [\n 116.693319,\n 36.607895\n ],\n [\n 116.71314,\n 36.608858\n ],\n [\n 116.742042,\n 36.620381\n ],\n [\n 116.759494,\n 36.632746\n ],\n [\n 116.763126,\n 36.651971\n ],\n [\n 116.777262,\n 36.660718\n ],\n [\n 116.780736,\n 36.671552\n ],\n [\n 116.780657,\n 36.691048\n ],\n [\n 116.799689,\n 36.694417\n ],\n [\n 116.802768,\n 36.706729\n ],\n [\n 116.830881,\n 36.723851\n ],\n [\n 116.842489,\n 36.72786\n ],\n [\n 116.861757,\n 36.730345\n ],\n [\n 116.873997,\n 36.739846\n ],\n [\n 116.88679,\n 36.745538\n ],\n [\n 116.883868,\n 36.758243\n ],\n [\n 116.87076,\n 36.759164\n ],\n [\n 116.865548,\n 36.777877\n ],\n [\n 116.868233,\n 36.801872\n ],\n [\n 116.872813,\n 36.812004\n ],\n [\n 116.887975,\n 36.811404\n ],\n [\n 116.882447,\n 36.824058\n ],\n [\n 116.887106,\n 36.833427\n ],\n [\n 116.892476,\n 36.830023\n ],\n [\n 116.919404,\n 36.822776\n ],\n [\n 116.933223,\n 36.823697\n ],\n [\n 116.935908,\n 36.829743\n ],\n [\n 116.934724,\n 36.845116\n ],\n [\n 116.9442,\n 36.844916\n ],\n [\n 116.948069,\n 36.839231\n ],\n [\n 116.962836,\n 36.842674\n ],\n [\n 116.96181,\n 36.867529\n ],\n [\n 116.963152,\n 36.893896\n ],\n [\n 116.957466,\n 36.916495\n ],\n [\n 116.934408,\n 36.925973\n ],\n [\n 116.922563,\n 36.93453\n ],\n [\n 116.935434,\n 36.93457\n ],\n [\n 116.931881,\n 36.946204\n ],\n [\n 116.933381,\n 36.959595\n ],\n [\n 116.907717,\n 36.963272\n ],\n [\n 116.897767,\n 36.962712\n ],\n [\n 116.899188,\n 36.977499\n ],\n [\n 116.886158,\n 36.983573\n ],\n [\n 116.885764,\n 36.991444\n ],\n [\n 116.875024,\n 36.999274\n ],\n [\n 116.891607,\n 37.00271\n ],\n [\n 116.907796,\n 37.019046\n ],\n [\n 116.943173,\n 37.030907\n ],\n [\n 116.948701,\n 37.036537\n ],\n [\n 116.944279,\n 37.042327\n ],\n [\n 116.928643,\n 37.05103\n ],\n [\n 116.925247,\n 37.069831\n ],\n [\n 116.91972,\n 37.081364\n ],\n [\n 116.919009,\n 37.093056\n ],\n [\n 116.931486,\n 37.100477\n ],\n [\n 116.982578,\n 37.113601\n ],\n [\n 117.004531,\n 37.121219\n ],\n [\n 117.024273,\n 37.119664\n ],\n [\n 117.044884,\n 37.122615\n ],\n [\n 117.047411,\n 37.134739\n ],\n [\n 117.059809,\n 37.137251\n ],\n [\n 117.054676,\n 37.141717\n ],\n [\n 117.050648,\n 37.160894\n ],\n [\n 117.061783,\n 37.16496\n ],\n [\n 117.06352,\n 37.182656\n ],\n [\n 117.05744,\n 37.192141\n ],\n [\n 117.045358,\n 37.197161\n ],\n [\n 117.037382,\n 37.195169\n ],\n [\n 117.037777,\n 37.207361\n ],\n [\n 117.022299,\n 37.215089\n ],\n [\n 117.03596,\n 37.224091\n ],\n [\n 117.036592,\n 37.237393\n ],\n [\n 117.042673,\n 37.238867\n ],\n [\n 117.041251,\n 37.247667\n ],\n [\n 117.032328,\n 37.253241\n ],\n [\n 117.030275,\n 37.264229\n ],\n [\n 117.038961,\n 37.266538\n ],\n [\n 117.024273,\n 37.278918\n ],\n [\n 117.002241,\n 37.285962\n ],\n [\n 116.993397,\n 37.32201\n ],\n [\n 116.986684,\n 37.335335\n ],\n [\n 116.987158,\n 37.342692\n ],\n [\n 117.006663,\n 37.355138\n ],\n [\n 117.009664,\n 37.359671\n ],\n [\n 116.99924,\n 37.376964\n ],\n [\n 117.008164,\n 37.392464\n ],\n [\n 117.019693,\n 37.405419\n ],\n [\n 117.018193,\n 37.418967\n ],\n [\n 117.029406,\n 37.435174\n ],\n [\n 117.085631,\n 37.437517\n ],\n [\n 117.096845,\n 37.440099\n ],\n [\n 117.104978,\n 37.455309\n ],\n [\n 117.098819,\n 37.469721\n ],\n [\n 117.109795,\n 37.47901\n ],\n [\n 117.124878,\n 37.483853\n ],\n [\n 117.135618,\n 37.475239\n ],\n [\n 117.163809,\n 37.478971\n ],\n [\n 117.176049,\n 37.486116\n ],\n [\n 117.199345,\n 37.487148\n ],\n [\n 117.22114,\n 37.51318\n ],\n [\n 117.230063,\n 37.528891\n ],\n [\n 117.238197,\n 37.532897\n ],\n [\n 117.260861,\n 37.530081\n ],\n [\n 117.273417,\n 37.532619\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 370200,\n \"name\": \"青岛市\",\n \"center\": [\n 120.355173,\n 36.082982\n ],\n \"centroid\": [\n 120.150851,\n 36.451234\n ],\n \"childrenNum\": 10,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 1,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 120.850108,\n 36.612271\n ],\n [\n 120.86598,\n 36.605606\n ],\n [\n 120.884854,\n 36.60143\n ],\n [\n 120.891961,\n 36.58898\n ],\n [\n 120.893382,\n 36.57918\n ],\n [\n 120.91265,\n 36.568414\n ],\n [\n 120.923785,\n 36.572029\n ],\n [\n 120.936341,\n 36.56532\n ],\n [\n 120.962163,\n 36.562789\n ],\n [\n 120.969349,\n 36.559495\n ],\n [\n 120.983326,\n 36.545913\n ],\n [\n 120.983958,\n 36.540809\n ],\n [\n 120.962716,\n 36.519225\n ],\n [\n 120.954345,\n 36.507567\n ],\n [\n 120.95861,\n 36.498721\n ],\n [\n 120.954977,\n 36.489311\n ],\n [\n 120.967691,\n 36.47797\n ],\n [\n 120.963585,\n 36.464334\n ],\n [\n 120.952371,\n 36.459184\n ],\n [\n 120.947238,\n 36.449287\n ],\n [\n 120.938315,\n 36.44812\n ],\n [\n 120.934524,\n 36.454678\n ],\n [\n 120.920152,\n 36.455201\n ],\n [\n 120.907833,\n 36.445987\n ],\n [\n 120.917388,\n 36.435364\n ],\n [\n 120.91881,\n 36.425383\n ],\n [\n 120.925522,\n 36.419909\n ],\n [\n 120.935077,\n 36.421036\n ],\n [\n 120.927812,\n 36.410047\n ],\n [\n 120.918968,\n 36.419144\n ],\n [\n 120.903332,\n 36.406142\n ],\n [\n 120.891645,\n 36.389675\n ],\n [\n 120.895909,\n 36.376104\n ],\n [\n 120.872061,\n 36.367001\n ],\n [\n 120.87443,\n 36.373244\n ],\n [\n 120.854925,\n 36.381903\n ],\n [\n 120.851134,\n 36.406021\n ],\n [\n 120.859505,\n 36.412422\n ],\n [\n 120.858952,\n 36.424578\n ],\n [\n 120.838342,\n 36.436974\n ],\n [\n 120.842369,\n 36.441601\n ],\n [\n 120.843001,\n 36.457736\n ],\n [\n 120.83921,\n 36.464374\n ],\n [\n 120.828471,\n 36.466627\n ],\n [\n 120.759453,\n 36.462604\n ],\n [\n 120.756768,\n 36.458098\n ],\n [\n 120.761664,\n 36.443211\n ],\n [\n 120.760084,\n 36.434559\n ],\n [\n 120.751003,\n 36.431299\n ],\n [\n 120.736868,\n 36.432829\n ],\n [\n 120.726997,\n 36.422928\n ],\n [\n 120.72597,\n 36.413912\n ],\n [\n 120.71144,\n 36.408678\n ],\n [\n 120.694383,\n 36.390158\n ],\n [\n 120.700385,\n 36.37123\n ],\n [\n 120.709703,\n 36.368089\n ],\n [\n 120.716494,\n 36.360516\n ],\n [\n 120.72676,\n 36.359831\n ],\n [\n 120.729603,\n 36.349801\n ],\n [\n 120.739632,\n 36.3386\n ],\n [\n 120.744449,\n 36.328163\n ],\n [\n 120.73821,\n 36.32373\n ],\n [\n 120.707966,\n 36.328929\n ],\n [\n 120.692093,\n 36.325544\n ],\n [\n 120.663033,\n 36.33179\n ],\n [\n 120.656005,\n 36.322158\n ],\n [\n 120.66635,\n 36.309342\n ],\n [\n 120.665718,\n 36.29749\n ],\n [\n 120.656005,\n 36.28862\n ],\n [\n 120.65482,\n 36.27983\n ],\n [\n 120.659716,\n 36.27483\n ],\n [\n 120.677326,\n 36.281443\n ],\n [\n 120.686249,\n 36.279104\n ],\n [\n 120.685855,\n 36.260231\n ],\n [\n 120.689724,\n 36.251437\n ],\n [\n 120.681038,\n 36.238932\n ],\n [\n 120.689171,\n 36.230176\n ],\n [\n 120.696752,\n 36.204026\n ],\n [\n 120.693041,\n 36.190624\n ],\n [\n 120.697147,\n 36.168579\n ],\n [\n 120.707255,\n 36.165066\n ],\n [\n 120.707018,\n 36.159331\n ],\n [\n 120.698332,\n 36.158887\n ],\n [\n 120.704333,\n 36.152344\n ],\n [\n 120.705439,\n 36.139702\n ],\n [\n 120.716257,\n 36.142085\n ],\n [\n 120.719811,\n 36.13441\n ],\n [\n 120.71223,\n 36.126572\n ],\n [\n 120.695647,\n 36.123744\n ],\n [\n 120.672667,\n 36.129844\n ],\n [\n 120.650951,\n 36.117885\n ],\n [\n 120.632235,\n 36.113319\n ],\n [\n 120.621259,\n 36.119259\n ],\n [\n 120.612099,\n 36.117521\n ],\n [\n 120.607834,\n 36.107217\n ],\n [\n 120.599859,\n 36.101801\n ],\n [\n 120.579248,\n 36.103943\n ],\n [\n 120.580827,\n 36.111419\n ],\n [\n 120.573325,\n 36.114248\n ],\n [\n 120.567087,\n 36.105964\n ],\n [\n 120.547187,\n 36.10952\n ],\n [\n 120.552241,\n 36.097881\n ],\n [\n 120.547345,\n 36.092141\n ],\n [\n 120.526261,\n 36.093435\n ],\n [\n 120.497832,\n 36.08624\n ],\n [\n 120.479827,\n 36.091656\n ],\n [\n 120.467587,\n 36.087169\n ],\n [\n 120.449662,\n 36.07302\n ],\n [\n 120.441923,\n 36.063236\n ],\n [\n 120.437185,\n 36.0655\n ],\n [\n 120.42226,\n 36.054986\n ],\n [\n 120.415311,\n 36.057413\n ],\n [\n 120.404413,\n 36.051589\n ],\n [\n 120.38783,\n 36.051711\n ],\n [\n 120.389172,\n 36.059394\n ],\n [\n 120.37022,\n 36.053409\n ],\n [\n 120.371089,\n 36.044835\n ],\n [\n 120.365166,\n 36.041398\n ],\n [\n 120.35798,\n 36.04892\n ],\n [\n 120.345661,\n 36.043541\n ],\n [\n 120.337922,\n 36.044633\n ],\n [\n 120.342897,\n 36.05167\n ],\n [\n 120.337527,\n 36.054986\n ],\n [\n 120.324577,\n 36.051104\n ],\n [\n 120.324814,\n 36.059515\n ],\n [\n 120.315969,\n 36.059677\n ],\n [\n 120.307993,\n 36.050214\n ],\n [\n 120.296069,\n 36.052439\n ],\n [\n 120.297649,\n 36.045361\n ],\n [\n 120.286119,\n 36.047181\n ],\n [\n 120.290147,\n 36.060526\n ],\n [\n 120.30136,\n 36.071282\n ],\n [\n 120.311231,\n 36.087614\n ],\n [\n 120.312653,\n 36.100185\n ],\n [\n 120.317549,\n 36.108106\n ],\n [\n 120.326235,\n 36.111662\n ],\n [\n 120.333658,\n 36.134652\n ],\n [\n 120.347004,\n 36.155818\n ],\n [\n 120.356953,\n 36.166076\n ],\n [\n 120.358217,\n 36.174757\n ],\n [\n 120.369509,\n 36.177745\n ],\n [\n 120.35877,\n 36.200312\n ],\n [\n 120.336896,\n 36.213954\n ],\n [\n 120.319997,\n 36.232234\n ],\n [\n 120.297412,\n 36.225455\n ],\n [\n 120.293305,\n 36.219241\n ],\n [\n 120.29828,\n 36.203783\n ],\n [\n 120.313205,\n 36.196316\n ],\n [\n 120.310283,\n 36.185295\n ],\n [\n 120.291489,\n 36.185941\n ],\n [\n 120.28075,\n 36.17932\n ],\n [\n 120.276564,\n 36.185699\n ],\n [\n 120.262982,\n 36.182267\n ],\n [\n 120.260929,\n 36.198415\n ],\n [\n 120.244819,\n 36.199384\n ],\n [\n 120.235027,\n 36.189211\n ],\n [\n 120.224445,\n 36.19131\n ],\n [\n 120.217338,\n 36.211412\n ],\n [\n 120.20723,\n 36.211613\n ],\n [\n 120.181566,\n 36.203945\n ],\n [\n 120.164351,\n 36.188767\n ],\n [\n 120.140345,\n 36.173304\n ],\n [\n 120.142556,\n 36.143539\n ],\n [\n 120.128105,\n 36.129723\n ],\n [\n 120.1086,\n 36.12742\n ],\n [\n 120.116023,\n 36.114046\n ],\n [\n 120.116891,\n 36.102852\n ],\n [\n 120.152111,\n 36.095254\n ],\n [\n 120.161903,\n 36.082682\n ],\n [\n 120.173906,\n 36.077225\n ],\n [\n 120.181645,\n 36.066511\n ],\n [\n 120.19499,\n 36.064206\n ],\n [\n 120.231868,\n 36.063842\n ],\n [\n 120.241345,\n 36.060445\n ],\n [\n 120.24095,\n 36.047828\n ],\n [\n 120.230605,\n 36.044916\n ],\n [\n 120.23479,\n 36.030638\n ],\n [\n 120.223656,\n 36.022385\n ],\n [\n 120.223577,\n 36.016398\n ],\n [\n 120.19886,\n 35.99572\n ],\n [\n 120.213232,\n 35.998351\n ],\n [\n 120.244977,\n 36.020444\n ],\n [\n 120.25698,\n 36.024813\n ],\n [\n 120.265509,\n 36.014011\n ],\n [\n 120.256427,\n 36.005433\n ],\n [\n 120.248768,\n 35.992078\n ],\n [\n 120.247662,\n 35.982567\n ],\n [\n 120.254927,\n 35.980826\n ],\n [\n 120.265588,\n 36.001062\n ],\n [\n 120.271273,\n 35.99394\n ],\n [\n 120.278775,\n 35.996368\n ],\n [\n 120.27459,\n 36.004664\n ],\n [\n 120.289673,\n 36.017086\n ],\n [\n 120.309494,\n 36.014132\n ],\n [\n 120.316522,\n 36.002155\n ],\n [\n 120.305072,\n 35.97184\n ],\n [\n 120.284619,\n 35.965565\n ],\n [\n 120.261718,\n 35.965484\n ],\n [\n 120.251531,\n 35.95937\n ],\n [\n 120.246477,\n 35.947466\n ],\n [\n 120.233132,\n 35.941553\n ],\n [\n 120.222076,\n 35.924947\n ],\n [\n 120.209284,\n 35.917616\n ],\n [\n 120.204388,\n 35.910404\n ],\n [\n 120.202098,\n 35.89205\n ],\n [\n 120.185198,\n 35.88747\n ],\n [\n 120.169405,\n 35.888565\n ],\n [\n 120.172169,\n 35.904408\n ],\n [\n 120.184172,\n 35.915671\n ],\n [\n 120.194438,\n 35.93402\n ],\n [\n 120.210784,\n 35.938435\n ],\n [\n 120.207862,\n 35.947344\n ],\n [\n 120.179276,\n 35.936653\n ],\n [\n 120.167983,\n 35.918426\n ],\n [\n 120.15677,\n 35.909149\n ],\n [\n 120.147768,\n 35.907852\n ],\n [\n 120.141924,\n 35.919438\n ],\n [\n 120.142714,\n 35.909392\n ],\n [\n 120.135843,\n 35.905421\n ],\n [\n 120.12542,\n 35.906718\n ],\n [\n 120.123998,\n 35.895291\n ],\n [\n 120.118392,\n 35.888524\n ],\n [\n 120.102203,\n 35.881918\n ],\n [\n 120.084041,\n 35.880378\n ],\n [\n 120.07875,\n 35.885768\n ],\n [\n 120.062798,\n 35.87134\n ],\n [\n 120.036423,\n 35.824753\n ],\n [\n 120.033264,\n 35.806013\n ],\n [\n 120.041319,\n 35.799198\n ],\n [\n 120.049453,\n 35.782278\n ],\n [\n 120.043135,\n 35.776759\n ],\n [\n 120.03745,\n 35.763041\n ],\n [\n 120.037529,\n 35.753908\n ],\n [\n 120.031369,\n 35.752244\n ],\n [\n 120.020235,\n 35.722239\n ],\n [\n 120.011074,\n 35.713223\n ],\n [\n 120.001519,\n 35.720209\n ],\n [\n 119.981224,\n 35.715335\n ],\n [\n 119.986041,\n 35.729711\n ],\n [\n 119.978461,\n 35.739496\n ],\n [\n 119.967879,\n 35.74108\n ],\n [\n 119.969932,\n 35.749078\n ],\n [\n 119.959982,\n 35.759104\n ],\n [\n 119.937081,\n 35.763407\n ],\n [\n 119.924841,\n 35.758252\n ],\n [\n 119.920735,\n 35.737548\n ],\n [\n 119.930369,\n 35.728899\n ],\n [\n 119.949321,\n 35.729873\n ],\n [\n 119.953349,\n 35.72561\n ],\n [\n 119.952954,\n 35.713142\n ],\n [\n 119.94482,\n 35.705506\n ],\n [\n 119.923894,\n 35.696529\n ],\n [\n 119.910864,\n 35.674305\n ],\n [\n 119.912285,\n 35.660651\n ],\n [\n 119.927921,\n 35.65045\n ],\n [\n 119.925157,\n 35.63736\n ],\n [\n 119.902493,\n 35.63297\n ],\n [\n 119.894597,\n 35.628742\n ],\n [\n 119.877619,\n 35.610972\n ],\n [\n 119.868379,\n 35.608817\n ],\n [\n 119.851717,\n 35.622074\n ],\n [\n 119.844768,\n 35.623619\n ],\n [\n 119.831422,\n 35.618333\n ],\n [\n 119.829606,\n 35.643702\n ],\n [\n 119.824315,\n 35.646304\n ],\n [\n 119.818472,\n 35.63858\n ],\n [\n 119.800625,\n 35.626465\n ],\n [\n 119.802204,\n 35.620244\n ],\n [\n 119.792649,\n 35.615446\n ],\n [\n 119.802994,\n 35.609183\n ],\n [\n 119.800467,\n 35.59869\n ],\n [\n 119.792649,\n 35.59385\n ],\n [\n 119.800862,\n 35.581891\n ],\n [\n 119.786174,\n 35.576073\n ],\n [\n 119.780172,\n 35.58486\n ],\n [\n 119.76967,\n 35.577212\n ],\n [\n 119.762483,\n 35.578351\n ],\n [\n 119.752849,\n 35.588684\n ],\n [\n 119.751349,\n 35.617845\n ],\n [\n 119.729949,\n 35.618943\n ],\n [\n 119.717946,\n 35.615649\n ],\n [\n 119.682173,\n 35.590027\n ],\n [\n 119.662115,\n 35.589294\n ],\n [\n 119.651455,\n 35.588766\n ],\n [\n 119.634713,\n 35.598731\n ],\n [\n 119.614972,\n 35.606336\n ],\n [\n 119.609286,\n 35.59202\n ],\n [\n 119.600599,\n 35.590271\n ],\n [\n 119.592308,\n 35.600683\n ],\n [\n 119.57762,\n 35.586243\n ],\n [\n 119.556535,\n 35.592508\n ],\n [\n 119.538215,\n 35.589294\n ],\n [\n 119.536872,\n 35.606011\n ],\n [\n 119.518157,\n 35.615446\n ],\n [\n 119.517762,\n 35.625774\n ],\n [\n 119.524474,\n 35.632279\n ],\n [\n 119.528265,\n 35.674305\n ],\n [\n 119.519105,\n 35.68552\n ],\n [\n 119.51484,\n 35.697992\n ],\n [\n 119.518473,\n 35.700632\n ],\n [\n 119.521079,\n 35.716879\n ],\n [\n 119.517762,\n 35.723742\n ],\n [\n 119.525422,\n 35.730604\n ],\n [\n 119.527317,\n 35.723214\n ],\n [\n 119.545085,\n 35.726747\n ],\n [\n 119.560563,\n 35.721752\n ],\n [\n 119.566485,\n 35.714523\n ],\n [\n 119.576988,\n 35.71237\n ],\n [\n 119.588833,\n 35.715701\n ],\n [\n 119.601231,\n 35.709446\n ],\n [\n 119.614182,\n 35.716675\n ],\n [\n 119.624685,\n 35.712817\n ],\n [\n 119.627843,\n 35.722077\n ],\n [\n 119.605495,\n 35.747454\n ],\n [\n 119.591992,\n 35.753218\n ],\n [\n 119.596256,\n 35.773756\n ],\n [\n 119.611576,\n 35.776597\n ],\n [\n 119.617972,\n 35.789623\n ],\n [\n 119.60897,\n 35.799279\n ],\n [\n 119.612445,\n 35.812707\n ],\n [\n 119.622631,\n 35.816114\n ],\n [\n 119.629344,\n 35.833878\n ],\n [\n 119.649796,\n 35.845191\n ],\n [\n 119.664326,\n 35.841015\n ],\n [\n 119.676014,\n 35.842515\n ],\n [\n 119.68699,\n 35.861814\n ],\n [\n 119.704047,\n 35.863962\n ],\n [\n 119.71834,\n 35.853138\n ],\n [\n 119.725211,\n 35.856746\n ],\n [\n 119.72221,\n 35.865138\n ],\n [\n 119.736898,\n 35.86303\n ],\n [\n 119.738003,\n 35.873123\n ],\n [\n 119.727738,\n 35.902544\n ],\n [\n 119.721262,\n 35.906718\n ],\n [\n 119.716208,\n 35.927337\n ],\n [\n 119.701362,\n 35.923732\n ],\n [\n 119.701757,\n 35.944469\n ],\n [\n 119.690149,\n 35.963702\n ],\n [\n 119.684858,\n 35.982648\n ],\n [\n 119.689122,\n 36.000212\n ],\n [\n 119.681068,\n 36.012068\n ],\n [\n 119.706495,\n 36.028292\n ],\n [\n 119.717314,\n 36.044229\n ],\n [\n 119.704126,\n 36.055269\n ],\n [\n 119.695677,\n 36.053045\n ],\n [\n 119.675698,\n 36.064085\n ],\n [\n 119.666695,\n 36.062993\n ],\n [\n 119.633608,\n 36.067683\n ],\n [\n 119.632187,\n 36.091535\n ],\n [\n 119.657061,\n 36.100872\n ],\n [\n 119.657614,\n 36.108631\n ],\n [\n 119.643716,\n 36.127178\n ],\n [\n 119.651218,\n 36.130531\n ],\n [\n 119.649954,\n 36.137157\n ],\n [\n 119.660852,\n 36.154122\n ],\n [\n 119.671039,\n 36.177866\n ],\n [\n 119.681305,\n 36.18045\n ],\n [\n 119.691728,\n 36.176292\n ],\n [\n 119.723473,\n 36.175565\n ],\n [\n 119.732792,\n 36.172536\n ],\n [\n 119.733818,\n 36.163572\n ],\n [\n 119.748111,\n 36.158645\n ],\n [\n 119.772354,\n 36.167691\n ],\n [\n 119.782778,\n 36.165308\n ],\n [\n 119.792333,\n 36.171648\n ],\n [\n 119.813023,\n 36.167691\n ],\n [\n 119.81326,\n 36.175242\n ],\n [\n 119.821315,\n 36.171285\n ],\n [\n 119.82242,\n 36.177987\n ],\n [\n 119.831738,\n 36.180612\n ],\n [\n 119.823131,\n 36.19894\n ],\n [\n 119.828816,\n 36.210685\n ],\n [\n 119.819498,\n 36.211856\n ],\n [\n 119.808048,\n 36.232839\n ],\n [\n 119.82092,\n 36.244499\n ],\n [\n 119.820446,\n 36.257367\n ],\n [\n 119.82929,\n 36.258859\n ],\n [\n 119.83387,\n 36.278822\n ],\n [\n 119.848795,\n 36.292692\n ],\n [\n 119.854402,\n 36.302328\n ],\n [\n 119.862773,\n 36.302368\n ],\n [\n 119.865379,\n 36.308898\n ],\n [\n 119.891991,\n 36.318773\n ],\n [\n 119.896966,\n 36.334047\n ],\n [\n 119.895939,\n 36.34827\n ],\n [\n 119.904784,\n 36.369942\n ],\n [\n 119.90431,\n 36.38154\n ],\n [\n 119.909837,\n 36.384359\n ],\n [\n 119.93029,\n 36.385165\n ],\n [\n 119.936371,\n 36.380655\n ],\n [\n 119.945452,\n 36.384682\n ],\n [\n 119.941425,\n 36.39503\n ],\n [\n 119.926421,\n 36.403324\n ],\n [\n 119.925236,\n 36.419346\n ],\n [\n 119.933923,\n 36.42007\n ],\n [\n 119.935976,\n 36.427436\n ],\n [\n 119.949795,\n 36.446511\n ],\n [\n 119.953981,\n 36.444217\n ],\n [\n 119.968432,\n 36.450051\n ],\n [\n 119.994175,\n 36.450333\n ],\n [\n 119.996623,\n 36.446309\n ],\n [\n 120.011864,\n 36.454236\n ],\n [\n 120.012812,\n 36.467833\n ],\n [\n 120.006889,\n 36.468799\n ],\n [\n 120.004125,\n 36.477447\n ],\n [\n 120.010758,\n 36.484445\n ],\n [\n 120.004204,\n 36.489512\n ],\n [\n 120.010364,\n 36.509255\n ],\n [\n 119.997571,\n 36.504431\n ],\n [\n 119.974749,\n 36.515688\n ],\n [\n 119.971985,\n 36.522441\n ],\n [\n 119.951375,\n 36.519788\n ],\n [\n 119.936292,\n 36.511507\n ],\n [\n 119.936687,\n 36.496389\n ],\n [\n 119.923025,\n 36.495464\n ],\n [\n 119.920261,\n 36.522079\n ],\n [\n 119.917576,\n 36.525858\n ],\n [\n 119.826763,\n 36.54101\n ],\n [\n 119.798019,\n 36.551619\n ],\n [\n 119.784516,\n 36.554673\n ],\n [\n 119.755929,\n 36.565521\n ],\n [\n 119.74748,\n 36.571788\n ],\n [\n 119.72758,\n 36.562749\n ],\n [\n 119.730107,\n 36.581027\n ],\n [\n 119.701125,\n 36.602634\n ],\n [\n 119.681857,\n 36.606891\n ],\n [\n 119.670328,\n 36.616246\n ],\n [\n 119.651297,\n 36.623633\n ],\n [\n 119.625079,\n 36.638807\n ],\n [\n 119.617025,\n 36.652532\n ],\n [\n 119.61355,\n 36.66453\n ],\n [\n 119.607154,\n 36.667379\n ],\n [\n 119.596651,\n 36.689884\n ],\n [\n 119.587412,\n 36.696101\n ],\n [\n 119.579831,\n 36.711581\n ],\n [\n 119.567433,\n 36.713065\n ],\n [\n 119.561036,\n 36.720884\n ],\n [\n 119.547059,\n 36.725454\n ],\n [\n 119.534977,\n 36.743333\n ],\n [\n 119.530555,\n 36.765256\n ],\n [\n 119.532766,\n 36.78008\n ],\n [\n 119.539162,\n 36.787732\n ],\n [\n 119.539162,\n 36.799949\n ],\n [\n 119.550613,\n 36.80868\n ],\n [\n 119.563721,\n 36.802753\n ],\n [\n 119.56767,\n 36.805717\n ],\n [\n 119.597757,\n 36.857244\n ],\n [\n 119.599652,\n 36.878253\n ],\n [\n 119.599968,\n 36.920614\n ],\n [\n 119.5837,\n 36.950441\n ],\n [\n 119.598072,\n 36.989406\n ],\n [\n 119.604548,\n 36.996038\n ],\n [\n 119.60976,\n 37.013894\n ],\n [\n 119.619078,\n 37.017848\n ],\n [\n 119.61971,\n 37.012895\n ],\n [\n 119.629344,\n 37.01621\n ],\n [\n 119.66251,\n 37.008262\n ],\n [\n 119.681699,\n 36.998475\n ],\n [\n 119.716998,\n 37.007144\n ],\n [\n 119.722289,\n 36.993401\n ],\n [\n 119.731133,\n 36.988487\n ],\n [\n 119.743057,\n 36.992483\n ],\n [\n 119.750559,\n 36.990844\n ],\n [\n 119.769906,\n 36.996597\n ],\n [\n 119.771881,\n 37.006984\n ],\n [\n 119.804968,\n 37.013814\n ],\n [\n 119.820209,\n 36.999594\n ],\n [\n 119.829606,\n 37.002031\n ],\n [\n 119.85148,\n 37.002031\n ],\n [\n 119.900045,\n 36.997556\n ],\n [\n 119.902257,\n 36.9948\n ],\n [\n 119.923341,\n 36.993961\n ],\n [\n 119.939608,\n 37.004108\n ],\n [\n 119.949716,\n 37.006185\n ],\n [\n 119.961561,\n 37.013654\n ],\n [\n 119.975618,\n 37.011098\n ],\n [\n 119.980198,\n 37.018088\n ],\n [\n 119.993543,\n 37.012176\n ],\n [\n 120.002309,\n 37.013494\n ],\n [\n 120.024104,\n 36.999913\n ],\n [\n 120.035238,\n 36.998395\n ],\n [\n 120.049374,\n 37.020045\n ],\n [\n 120.09249,\n 37.017928\n ],\n [\n 120.101571,\n 37.014293\n ],\n [\n 120.123051,\n 37.01645\n ],\n [\n 120.138134,\n 37.022201\n ],\n [\n 120.142319,\n 37.015292\n ],\n [\n 120.159929,\n 37.013375\n ],\n [\n 120.167273,\n 37.017968\n ],\n [\n 120.166404,\n 37.025795\n ],\n [\n 120.173037,\n 37.034421\n ],\n [\n 120.180697,\n 37.032544\n ],\n [\n 120.189621,\n 37.038094\n ],\n [\n 120.193411,\n 37.034261\n ],\n [\n 120.205335,\n 37.038374\n ],\n [\n 120.21647,\n 37.056699\n ],\n [\n 120.214101,\n 37.07019\n ],\n [\n 120.220497,\n 37.08711\n ],\n [\n 120.229894,\n 37.089544\n ],\n [\n 120.231237,\n 37.106301\n ],\n [\n 120.236606,\n 37.125965\n ],\n [\n 120.245688,\n 37.118906\n ],\n [\n 120.264087,\n 37.114718\n ],\n [\n 120.280828,\n 37.13111\n ],\n [\n 120.303413,\n 37.130153\n ],\n [\n 120.300176,\n 37.119584\n ],\n [\n 120.315337,\n 37.113043\n ],\n [\n 120.320628,\n 37.10654\n ],\n [\n 120.331684,\n 37.111966\n ],\n [\n 120.336896,\n 37.104267\n ],\n [\n 120.336343,\n 37.092058\n ],\n [\n 120.34574,\n 37.087789\n ],\n [\n 120.348583,\n 37.077094\n ],\n [\n 120.357822,\n 37.084357\n ],\n [\n 120.362244,\n 37.100477\n ],\n [\n 120.369667,\n 37.104626\n ],\n [\n 120.388225,\n 37.104227\n ],\n [\n 120.398096,\n 37.096447\n ],\n [\n 120.408914,\n 37.09517\n ],\n [\n 120.412942,\n 37.103149\n ],\n [\n 120.407098,\n 37.112803\n ],\n [\n 120.415153,\n 37.110569\n ],\n [\n 120.439475,\n 37.116912\n ],\n [\n 120.440265,\n 37.122655\n ],\n [\n 120.462928,\n 37.115157\n ],\n [\n 120.478643,\n 37.124211\n ],\n [\n 120.493015,\n 37.126723\n ],\n [\n 120.493805,\n 37.1345\n ],\n [\n 120.505729,\n 37.143551\n ],\n [\n 120.506834,\n 37.148854\n ],\n [\n 120.517258,\n 37.148974\n ],\n [\n 120.527129,\n 37.143352\n ],\n [\n 120.527998,\n 37.136733\n ],\n [\n 120.542528,\n 37.128677\n ],\n [\n 120.547661,\n 37.113003\n ],\n [\n 120.536368,\n 37.081963\n ],\n [\n 120.539843,\n 37.060371\n ],\n [\n 120.533289,\n 37.053944\n ],\n [\n 120.541738,\n 37.044163\n ],\n [\n 120.549793,\n 37.041288\n ],\n [\n 120.558953,\n 37.047437\n ],\n [\n 120.570877,\n 37.046399\n ],\n [\n 120.58446,\n 37.058136\n ],\n [\n 120.586513,\n 37.048515\n ],\n [\n 120.606176,\n 37.047157\n ],\n [\n 120.613915,\n 37.023839\n ],\n [\n 120.601754,\n 37.012696\n ],\n [\n 120.606413,\n 37.001192\n ],\n [\n 120.593857,\n 36.991244\n ],\n [\n 120.582328,\n 37.001791\n ],\n [\n 120.575931,\n 36.999074\n ],\n [\n 120.574036,\n 36.987568\n ],\n [\n 120.568508,\n 36.983293\n ],\n [\n 120.566534,\n 36.96559\n ],\n [\n 120.560296,\n 36.960674\n ],\n [\n 120.563218,\n 36.95172\n ],\n [\n 120.571114,\n 36.948682\n ],\n [\n 120.574984,\n 36.927053\n ],\n [\n 120.592909,\n 36.912216\n ],\n [\n 120.617389,\n 36.911136\n ],\n [\n 120.622838,\n 36.907377\n ],\n [\n 120.622838,\n 36.890856\n ],\n [\n 120.592909,\n 36.882134\n ],\n [\n 120.576642,\n 36.879894\n ],\n [\n 120.57988,\n 36.858885\n ],\n [\n 120.588408,\n 36.859045\n ],\n [\n 120.595989,\n 36.852681\n ],\n [\n 120.58754,\n 36.843635\n ],\n [\n 120.589751,\n 36.838791\n ],\n [\n 120.609809,\n 36.832906\n ],\n [\n 120.612336,\n 36.829223\n ],\n [\n 120.601517,\n 36.804996\n ],\n [\n 120.590382,\n 36.801552\n ],\n [\n 120.563454,\n 36.802953\n ],\n [\n 120.56377,\n 36.795343\n ],\n [\n 120.5554,\n 36.778718\n ],\n [\n 120.540791,\n 36.7679\n ],\n [\n 120.544502,\n 36.76213\n ],\n [\n 120.546397,\n 36.744616\n ],\n [\n 120.560375,\n 36.742492\n ],\n [\n 120.562586,\n 36.736479\n ],\n [\n 120.584065,\n 36.735236\n ],\n [\n 120.58525,\n 36.728501\n ],\n [\n 120.596542,\n 36.708052\n ],\n [\n 120.586118,\n 36.698829\n ],\n [\n 120.589751,\n 36.694497\n ],\n [\n 120.616521,\n 36.689764\n ],\n [\n 120.619206,\n 36.681541\n ],\n [\n 120.631446,\n 36.673357\n ],\n [\n 120.625128,\n 36.671231\n ],\n [\n 120.627339,\n 36.659836\n ],\n [\n 120.642027,\n 36.666095\n ],\n [\n 120.652135,\n 36.663327\n ],\n [\n 120.648977,\n 36.655863\n ],\n [\n 120.660585,\n 36.647998\n ],\n [\n 120.657426,\n 36.626644\n ],\n [\n 120.644712,\n 36.626524\n ],\n [\n 120.643449,\n 36.613436\n ],\n [\n 120.635947,\n 36.597775\n ],\n [\n 120.637763,\n 36.574199\n ],\n [\n 120.664059,\n 36.583478\n ],\n [\n 120.665402,\n 36.587454\n ],\n [\n 120.679695,\n 36.589181\n ],\n [\n 120.702991,\n 36.598338\n ],\n [\n 120.699121,\n 36.60665\n ],\n [\n 120.70836,\n 36.612914\n ],\n [\n 120.708281,\n 36.621385\n ],\n [\n 120.725733,\n 36.624436\n ],\n [\n 120.751556,\n 36.615042\n ],\n [\n 120.757557,\n 36.606088\n ],\n [\n 120.765533,\n 36.607011\n ],\n [\n 120.777062,\n 36.600546\n ],\n [\n 120.779747,\n 36.591551\n ],\n [\n 120.786223,\n 36.589663\n ],\n [\n 120.850108,\n 36.612271\n ]\n ]\n ],\n [\n [\n [\n 120.584381,\n 36.096183\n ],\n [\n 120.587461,\n 36.099457\n ],\n [\n 120.595042,\n 36.090282\n ],\n [\n 120.579485,\n 36.091535\n ],\n [\n 120.584381,\n 36.096183\n ]\n ]\n ],\n [\n [\n [\n 120.990039,\n 36.413348\n ],\n [\n 120.981431,\n 36.417494\n ],\n [\n 120.963663,\n 36.41363\n ],\n [\n 120.950318,\n 36.414757\n ],\n [\n 120.948502,\n 36.421117\n ],\n [\n 120.9639,\n 36.424618\n ],\n [\n 120.969823,\n 36.431581\n ],\n [\n 120.978115,\n 36.428643\n ],\n [\n 120.990039,\n 36.413348\n ]\n ]\n ],\n [\n [\n [\n 121.004253,\n 36.488306\n ],\n [\n 120.988538,\n 36.485249\n ],\n [\n 120.989881,\n 36.492367\n ],\n [\n 121.004253,\n 36.488306\n ]\n ]\n ],\n [\n [\n [\n 120.877352,\n 35.89359\n ],\n [\n 120.888802,\n 35.897277\n ],\n [\n 120.875377,\n 35.888443\n ],\n [\n 120.877352,\n 35.89359\n ]\n ]\n ],\n [\n [\n [\n 119.73524,\n 35.595762\n ],\n [\n 119.738872,\n 35.599666\n ],\n [\n 119.743689,\n 35.591328\n ],\n [\n 119.741873,\n 35.583884\n ],\n [\n 119.73524,\n 35.595762\n ]\n ]\n ],\n [\n [\n [\n 120.158823,\n 35.76499\n ],\n [\n 120.17209,\n 35.785727\n ],\n [\n 120.180539,\n 35.788649\n ],\n [\n 120.184725,\n 35.766978\n ],\n [\n 120.192858,\n 35.757156\n ],\n [\n 120.187962,\n 35.748712\n ],\n [\n 120.173037,\n 35.741405\n ],\n [\n 120.158665,\n 35.744896\n ],\n [\n 120.155428,\n 35.751838\n ],\n [\n 120.158823,\n 35.76499\n ]\n ]\n ],\n [\n [\n [\n 120.775088,\n 36.237963\n ],\n [\n 120.777457,\n 36.222308\n ],\n [\n 120.76806,\n 36.230701\n ],\n [\n 120.775088,\n 36.237963\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 370300,\n \"name\": \"淄博市\",\n \"center\": [\n 118.047648,\n 36.814939\n ],\n \"centroid\": [\n 118.058672,\n 36.610968\n ],\n \"childrenNum\": 8,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 2,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 117.718006,\n 36.697826\n ],\n [\n 117.725666,\n 36.695219\n ],\n [\n 117.754173,\n 36.696944\n ],\n [\n 117.777942,\n 36.695219\n ],\n [\n 117.78197,\n 36.70304\n ],\n [\n 117.793025,\n 36.707451\n ],\n [\n 117.795157,\n 36.719761\n ],\n [\n 117.810161,\n 36.734394\n ],\n [\n 117.820743,\n 36.756359\n ],\n [\n 117.826429,\n 36.763011\n ],\n [\n 117.834404,\n 36.751871\n ],\n [\n 117.832983,\n 36.744816\n ],\n [\n 117.852488,\n 36.750708\n ],\n [\n 117.850672,\n 36.764735\n ],\n [\n 117.840327,\n 36.777516\n ],\n [\n 117.825639,\n 36.775834\n ],\n [\n 117.824297,\n 36.787933\n ],\n [\n 117.815531,\n 36.788573\n ],\n [\n 117.814662,\n 36.797306\n ],\n [\n 117.820901,\n 36.801511\n ],\n [\n 117.822085,\n 36.825139\n ],\n [\n 117.831877,\n 36.836629\n ],\n [\n 117.828008,\n 36.855883\n ],\n [\n 117.832825,\n 36.859966\n ],\n [\n 117.856594,\n 36.859926\n ],\n [\n 117.865597,\n 36.866529\n ],\n [\n 117.875152,\n 36.861246\n ],\n [\n 117.891103,\n 36.864408\n ],\n [\n 117.891814,\n 36.871811\n ],\n [\n 117.917005,\n 36.86973\n ],\n [\n 117.9189,\n 36.880094\n ],\n [\n 117.929719,\n 36.890216\n ],\n [\n 117.940616,\n 36.891616\n ],\n [\n 117.9403,\n 36.901177\n ],\n [\n 117.950645,\n 36.902137\n ],\n [\n 117.960674,\n 36.910376\n ],\n [\n 117.96178,\n 36.922494\n ],\n [\n 117.949145,\n 36.918375\n ],\n [\n 117.94338,\n 36.930012\n ],\n [\n 117.935404,\n 36.915736\n ],\n [\n 117.936115,\n 36.93489\n ],\n [\n 117.931772,\n 36.941886\n ],\n [\n 117.913372,\n 36.953679\n ],\n [\n 117.910292,\n 36.962592\n ],\n [\n 117.911951,\n 36.975141\n ],\n [\n 117.906581,\n 36.981695\n ],\n [\n 117.870493,\n 36.985451\n ],\n [\n 117.866623,\n 36.993282\n ],\n [\n 117.866386,\n 37.007024\n ],\n [\n 117.870493,\n 37.013375\n ],\n [\n 117.865992,\n 37.023719\n ],\n [\n 117.841827,\n 37.026354\n ],\n [\n 117.840327,\n 37.035539\n ],\n [\n 117.847355,\n 37.065959\n ],\n [\n 117.800369,\n 37.070789\n ],\n [\n 117.771783,\n 37.069032\n ],\n [\n 117.761991,\n 37.065839\n ],\n [\n 117.739801,\n 37.064921\n ],\n [\n 117.726692,\n 37.068753\n ],\n [\n 117.703002,\n 37.068673\n ],\n [\n 117.673942,\n 37.073143\n ],\n [\n 117.644645,\n 37.083878\n ],\n [\n 117.619375,\n 37.090103\n ],\n [\n 117.608477,\n 37.090622\n ],\n [\n 117.590946,\n 37.084996\n ],\n [\n 117.575074,\n 37.089185\n ],\n [\n 117.567888,\n 37.11029\n ],\n [\n 117.576969,\n 37.114758\n ],\n [\n 117.574442,\n 37.12106\n ],\n [\n 117.557464,\n 37.124211\n ],\n [\n 117.551305,\n 37.146781\n ],\n [\n 117.574284,\n 37.151366\n ],\n [\n 117.586366,\n 37.160216\n ],\n [\n 117.592052,\n 37.169624\n ],\n [\n 117.598212,\n 37.203058\n ],\n [\n 117.615348,\n 37.212699\n ],\n [\n 117.627193,\n 37.228074\n ],\n [\n 117.63043,\n 37.247269\n ],\n [\n 117.644329,\n 37.265862\n ],\n [\n 117.659491,\n 37.274101\n ],\n [\n 117.675995,\n 37.270121\n ],\n [\n 117.693447,\n 37.257661\n ],\n [\n 117.729851,\n 37.249101\n ],\n [\n 117.760333,\n 37.244959\n ],\n [\n 117.773678,\n 37.244959\n ],\n [\n 117.782128,\n 37.248702\n ],\n [\n 117.818848,\n 37.276012\n ],\n [\n 117.83859,\n 37.282659\n ],\n [\n 117.850909,\n 37.28246\n ],\n [\n 117.8776,\n 37.273027\n ],\n [\n 117.888497,\n 37.262319\n ],\n [\n 117.909266,\n 37.265065\n ],\n [\n 117.941327,\n 37.280549\n ],\n [\n 117.948829,\n 37.26829\n ],\n [\n 117.947013,\n 37.262159\n ],\n [\n 117.963833,\n 37.271753\n ],\n [\n 117.990603,\n 37.262358\n ],\n [\n 117.990761,\n 37.248981\n ],\n [\n 117.996446,\n 37.246273\n ],\n [\n 117.981048,\n 37.238429\n ],\n [\n 117.973862,\n 37.216483\n ],\n [\n 117.98089,\n 37.218674\n ],\n [\n 117.984364,\n 37.210349\n ],\n [\n 117.994393,\n 37.212699\n ],\n [\n 118.010898,\n 37.20756\n ],\n [\n 118.019584,\n 37.210309\n ],\n [\n 118.022348,\n 37.2221\n ],\n [\n 118.036799,\n 37.220905\n ],\n [\n 118.046275,\n 37.216324\n ],\n [\n 118.048012,\n 37.205568\n ],\n [\n 118.064122,\n 37.21007\n ],\n [\n 118.074072,\n 37.204094\n ],\n [\n 118.077941,\n 37.188953\n ],\n [\n 118.082995,\n 37.185605\n ],\n [\n 118.071545,\n 37.177675\n ],\n [\n 118.074467,\n 37.170341\n ],\n [\n 118.062385,\n 37.162528\n ],\n [\n 118.059858,\n 37.151087\n ],\n [\n 118.065069,\n 37.139564\n ],\n [\n 118.079679,\n 37.120781\n ],\n [\n 118.068623,\n 37.115875\n ],\n [\n 118.057252,\n 37.106141\n ],\n [\n 118.045485,\n 37.105982\n ],\n [\n 118.045959,\n 37.098202\n ],\n [\n 118.056857,\n 37.093654\n ],\n [\n 118.063016,\n 37.082841\n ],\n [\n 118.086075,\n 37.091899\n ],\n [\n 118.111187,\n 37.094652\n ],\n [\n 118.115925,\n 37.100636\n ],\n [\n 118.130455,\n 37.091101\n ],\n [\n 118.136062,\n 37.077773\n ],\n [\n 118.13622,\n 37.06536\n ],\n [\n 118.156909,\n 37.065281\n ],\n [\n 118.15762,\n 37.057776\n ],\n [\n 118.150829,\n 37.054743\n ],\n [\n 118.15146,\n 37.047038\n ],\n [\n 118.139615,\n 37.044363\n ],\n [\n 118.139299,\n 37.033103\n ],\n [\n 118.134008,\n 37.025955\n ],\n [\n 118.139299,\n 37.014693\n ],\n [\n 118.138983,\n 37.005985\n ],\n [\n 118.153198,\n 37.000512\n ],\n [\n 118.15146,\n 36.988527\n ],\n [\n 118.161331,\n 36.988567\n ],\n [\n 118.160936,\n 36.981934\n ],\n [\n 118.192918,\n 36.977739\n ],\n [\n 118.195209,\n 36.967348\n ],\n [\n 118.209739,\n 36.963152\n ],\n [\n 118.222531,\n 36.967109\n ],\n [\n 118.231376,\n 36.974822\n ],\n [\n 118.235087,\n 36.98557\n ],\n [\n 118.247327,\n 36.98613\n ],\n [\n 118.250802,\n 37.002949\n ],\n [\n 118.262568,\n 37.00271\n ],\n [\n 118.271412,\n 37.006744\n ],\n [\n 118.288785,\n 36.999993\n ],\n [\n 118.291628,\n 36.995878\n ],\n [\n 118.294629,\n 36.969666\n ],\n [\n 118.312476,\n 36.970905\n ],\n [\n 118.322347,\n 36.974502\n ],\n [\n 118.324637,\n 36.964751\n ],\n [\n 118.3443,\n 36.960714\n ],\n [\n 118.352276,\n 36.974582\n ],\n [\n 118.384652,\n 36.974382\n ],\n [\n 118.387574,\n 36.971305\n ],\n [\n 118.386548,\n 36.950481\n ],\n [\n 118.401788,\n 36.949802\n ],\n [\n 118.40321,\n 36.943125\n ],\n [\n 118.439061,\n 36.942206\n ],\n [\n 118.467411,\n 36.945484\n ],\n [\n 118.494339,\n 36.941846\n ],\n [\n 118.492365,\n 36.931611\n ],\n [\n 118.496708,\n 36.924733\n ],\n [\n 118.48968,\n 36.914096\n ],\n [\n 118.481862,\n 36.914136\n ],\n [\n 118.474913,\n 36.905297\n ],\n [\n 118.483046,\n 36.900777\n ],\n [\n 118.482809,\n 36.879214\n ],\n [\n 118.476966,\n 36.876893\n ],\n [\n 118.465042,\n 36.861366\n ],\n [\n 118.479967,\n 36.860166\n ],\n [\n 118.480993,\n 36.852641\n ],\n [\n 118.460462,\n 36.846597\n ],\n [\n 118.461488,\n 36.854322\n ],\n [\n 118.453828,\n 36.857564\n ],\n [\n 118.450038,\n 36.83747\n ],\n [\n 118.435508,\n 36.838391\n ],\n [\n 118.44072,\n 36.828142\n ],\n [\n 118.438666,\n 36.809682\n ],\n [\n 118.424531,\n 36.802673\n ],\n [\n 118.419872,\n 36.796304\n ],\n [\n 118.388522,\n 36.791217\n ],\n [\n 118.350222,\n 36.768301\n ],\n [\n 118.321636,\n 36.770905\n ],\n [\n 118.318161,\n 36.77972\n ],\n [\n 118.307501,\n 36.776234\n ],\n [\n 118.297788,\n 36.777677\n ],\n [\n 118.298183,\n 36.753914\n ],\n [\n 118.279546,\n 36.753033\n ],\n [\n 118.27157,\n 36.744015\n ],\n [\n 118.276151,\n 36.731749\n ],\n [\n 118.284363,\n 36.72337\n ],\n [\n 118.277019,\n 36.719801\n ],\n [\n 118.264147,\n 36.72373\n ],\n [\n 118.254276,\n 36.731789\n ],\n [\n 118.234219,\n 36.726457\n ],\n [\n 118.227743,\n 36.717957\n ],\n [\n 118.237614,\n 36.712704\n ],\n [\n 118.227585,\n 36.697625\n ],\n [\n 118.238246,\n 36.697305\n ],\n [\n 118.245037,\n 36.690647\n ],\n [\n 118.228059,\n 36.694016\n ],\n [\n 118.21653,\n 36.6811\n ],\n [\n 118.215819,\n 36.668262\n ],\n [\n 118.226796,\n 36.668382\n ],\n [\n 118.230191,\n 36.660357\n ],\n [\n 118.221189,\n 36.664169\n ],\n [\n 118.215898,\n 36.648921\n ],\n [\n 118.199631,\n 36.639047\n ],\n [\n 118.20658,\n 36.637482\n ],\n [\n 118.214793,\n 36.621144\n ],\n [\n 118.200657,\n 36.612071\n ],\n [\n 118.189523,\n 36.599141\n ],\n [\n 118.180363,\n 36.593599\n ],\n [\n 118.176967,\n 36.582996\n ],\n [\n 118.180678,\n 36.577412\n ],\n [\n 118.180915,\n 36.5607\n ],\n [\n 118.183916,\n 36.561142\n ],\n [\n 118.191892,\n 36.546074\n ],\n [\n 118.214556,\n 36.539322\n ],\n [\n 118.221663,\n 36.531887\n ],\n [\n 118.210844,\n 36.526099\n ],\n [\n 118.213766,\n 36.513075\n ],\n [\n 118.210528,\n 36.503466\n ],\n [\n 118.218346,\n 36.497354\n ],\n [\n 118.212818,\n 36.490075\n ],\n [\n 118.216135,\n 36.478573\n ],\n [\n 118.229638,\n 36.467793\n ],\n [\n 118.233508,\n 36.456609\n ],\n [\n 118.22719,\n 36.451379\n ],\n [\n 118.232797,\n 36.432869\n ],\n [\n 118.228533,\n 36.430736\n ],\n [\n 118.224427,\n 36.414234\n ],\n [\n 118.227427,\n 36.408034\n ],\n [\n 118.250407,\n 36.411214\n ],\n [\n 118.251592,\n 36.401995\n ],\n [\n 118.235403,\n 36.389634\n ],\n [\n 118.239825,\n 36.376748\n ],\n [\n 118.256093,\n 36.363175\n ],\n [\n 118.262726,\n 36.352218\n ],\n [\n 118.261857,\n 36.345852\n ],\n [\n 118.269912,\n 36.339849\n ],\n [\n 118.300157,\n 36.338116\n ],\n [\n 118.291075,\n 36.326189\n ],\n [\n 118.304105,\n 36.321393\n ],\n [\n 118.30908,\n 36.307125\n ],\n [\n 118.315477,\n 36.304464\n ],\n [\n 118.310107,\n 36.295716\n ],\n [\n 118.317609,\n 36.288903\n ],\n [\n 118.31366,\n 36.277371\n ],\n [\n 118.315003,\n 36.266361\n ],\n [\n 118.306948,\n 36.252123\n ],\n [\n 118.31524,\n 36.24938\n ],\n [\n 118.350775,\n 36.263538\n ],\n [\n 118.368385,\n 36.248412\n ],\n [\n 118.379756,\n 36.245265\n ],\n [\n 118.386548,\n 36.239053\n ],\n [\n 118.382046,\n 36.207335\n ],\n [\n 118.374387,\n 36.203097\n ],\n [\n 118.387653,\n 36.174555\n ],\n [\n 118.402262,\n 36.162926\n ],\n [\n 118.405263,\n 36.141641\n ],\n [\n 118.402183,\n 36.131622\n ],\n [\n 118.412844,\n 36.127218\n ],\n [\n 118.428953,\n 36.132672\n ],\n [\n 118.440956,\n 36.132511\n ],\n [\n 118.447116,\n 36.140913\n ],\n [\n 118.457303,\n 36.13247\n ],\n [\n 118.462594,\n 36.14059\n ],\n [\n 118.487863,\n 36.131784\n ],\n [\n 118.492601,\n 36.127057\n ],\n [\n 118.479493,\n 36.118814\n ],\n [\n 118.484468,\n 36.104064\n ],\n [\n 118.478545,\n 36.098245\n ],\n [\n 118.482099,\n 36.092546\n ],\n [\n 118.48044,\n 36.074071\n ],\n [\n 118.496866,\n 36.067683\n ],\n [\n 118.507842,\n 36.074961\n ],\n [\n 118.516608,\n 36.068573\n ],\n [\n 118.513449,\n 36.064085\n ],\n [\n 118.522214,\n 36.05349\n ],\n [\n 118.522609,\n 36.043622\n ],\n [\n 118.516845,\n 36.026107\n ],\n [\n 118.507447,\n 36.029789\n ],\n [\n 118.503341,\n 36.024246\n ],\n [\n 118.489206,\n 36.025784\n ],\n [\n 118.476097,\n 36.031407\n ],\n [\n 118.469859,\n 36.022992\n ],\n [\n 118.476571,\n 36.012797\n ],\n [\n 118.487074,\n 36.005797\n ],\n [\n 118.49268,\n 35.995437\n ],\n [\n 118.486521,\n 35.988759\n ],\n [\n 118.499393,\n 35.976212\n ],\n [\n 118.505157,\n 35.965808\n ],\n [\n 118.502157,\n 35.962488\n ],\n [\n 118.470964,\n 35.960868\n ],\n [\n 118.459356,\n 35.952689\n ],\n [\n 118.430612,\n 35.969694\n ],\n [\n 118.415213,\n 35.990783\n ],\n [\n 118.387021,\n 35.987586\n ],\n [\n 118.382283,\n 35.975078\n ],\n [\n 118.360725,\n 35.970908\n ],\n [\n 118.352828,\n 35.956698\n ],\n [\n 118.344774,\n 35.955888\n ],\n [\n 118.320136,\n 35.946575\n ],\n [\n 118.314134,\n 35.950827\n ],\n [\n 118.303552,\n 35.948923\n ],\n [\n 118.293523,\n 35.937503\n ],\n [\n 118.281362,\n 35.935964\n ],\n [\n 118.26928,\n 35.928512\n ],\n [\n 118.257593,\n 35.925717\n ],\n [\n 118.257119,\n 35.930699\n ],\n [\n 118.245906,\n 35.932157\n ],\n [\n 118.236904,\n 35.939245\n ],\n [\n 118.236351,\n 35.947749\n ],\n [\n 118.22569,\n 35.948235\n ],\n [\n 118.209897,\n 35.955767\n ],\n [\n 118.207054,\n 35.964391\n ],\n [\n 118.193787,\n 35.974026\n ],\n [\n 118.206106,\n 35.97864\n ],\n [\n 118.197578,\n 36.004947\n ],\n [\n 118.178388,\n 36.017005\n ],\n [\n 118.135588,\n 36.02364\n ],\n [\n 118.132666,\n 36.030436\n ],\n [\n 118.10937,\n 36.030031\n ],\n [\n 118.096104,\n 36.024246\n ],\n [\n 118.093261,\n 36.014618\n ],\n [\n 118.084338,\n 36.012149\n ],\n [\n 118.078415,\n 36.017652\n ],\n [\n 118.075888,\n 36.009034\n ],\n [\n 118.066807,\n 36.009155\n ],\n [\n 118.058989,\n 35.992968\n ],\n [\n 118.042248,\n 35.986371\n ],\n [\n 118.032693,\n 35.974268\n ],\n [\n 118.03293,\n 35.964998\n ],\n [\n 118.02298,\n 35.958965\n ],\n [\n 118.021084,\n 35.949004\n ],\n [\n 117.988471,\n 35.947709\n ],\n [\n 117.984443,\n 35.956293\n ],\n [\n 117.992577,\n 35.971273\n ],\n [\n 117.971414,\n 35.969937\n ],\n [\n 117.953962,\n 35.957913\n ],\n [\n 117.947013,\n 35.960382\n ],\n [\n 117.946065,\n 35.970949\n ],\n [\n 117.937221,\n 35.98119\n ],\n [\n 117.937536,\n 35.99653\n ],\n [\n 117.950803,\n 35.996489\n ],\n [\n 117.94338,\n 36.017288\n ],\n [\n 117.949855,\n 36.018259\n ],\n [\n 117.946855,\n 36.04253\n ],\n [\n 117.932798,\n 36.052196\n ],\n [\n 117.935799,\n 36.061214\n ],\n [\n 117.948829,\n 36.062589\n ],\n [\n 117.94188,\n 36.071807\n ],\n [\n 117.946223,\n 36.08151\n ],\n [\n 117.953172,\n 36.081833\n ],\n [\n 117.954041,\n 36.090201\n ],\n [\n 117.946618,\n 36.100387\n ],\n [\n 117.939984,\n 36.094324\n ],\n [\n 117.931535,\n 36.094203\n ],\n [\n 117.921111,\n 36.110005\n ],\n [\n 117.923875,\n 36.1174\n ],\n [\n 117.91203,\n 36.132753\n ],\n [\n 117.914162,\n 36.140631\n ],\n [\n 117.90666,\n 36.152708\n ],\n [\n 117.917873,\n 36.16337\n ],\n [\n 117.912109,\n 36.171648\n ],\n [\n 117.903027,\n 36.172092\n ],\n [\n 117.915899,\n 36.192562\n ],\n [\n 117.914636,\n 36.200837\n ],\n [\n 117.921664,\n 36.203662\n ],\n [\n 117.928534,\n 36.196558\n ],\n [\n 117.943933,\n 36.207981\n ],\n [\n 117.959332,\n 36.204308\n ],\n [\n 117.967781,\n 36.21464\n ],\n [\n 117.96328,\n 36.224971\n ],\n [\n 117.96707,\n 36.248251\n ],\n [\n 117.975362,\n 36.262328\n ],\n [\n 117.972993,\n 36.268378\n ],\n [\n 117.943696,\n 36.274064\n ],\n [\n 117.932719,\n 36.271846\n ],\n [\n 117.926797,\n 36.277532\n ],\n [\n 117.93114,\n 36.283742\n ],\n [\n 117.922533,\n 36.300514\n ],\n [\n 117.924823,\n 36.313171\n ],\n [\n 117.918347,\n 36.317725\n ],\n [\n 117.919611,\n 36.324738\n ],\n [\n 117.933509,\n 36.334369\n ],\n [\n 117.933904,\n 36.341219\n ],\n [\n 117.915346,\n 36.352903\n ],\n [\n 117.902633,\n 36.352057\n ],\n [\n 117.893472,\n 36.339446\n ],\n [\n 117.89521,\n 36.359227\n ],\n [\n 117.890314,\n 36.366035\n ],\n [\n 117.882101,\n 36.35673\n ],\n [\n 117.879732,\n 36.370626\n ],\n [\n 117.867492,\n 36.386373\n ],\n [\n 117.859279,\n 36.389433\n ],\n [\n 117.855094,\n 36.412945\n ],\n [\n 117.829508,\n 36.417776\n ],\n [\n 117.826823,\n 36.427114\n ],\n [\n 117.833062,\n 36.44301\n ],\n [\n 117.822717,\n 36.44305\n ],\n [\n 117.817268,\n 36.436129\n ],\n [\n 117.799343,\n 36.432265\n ],\n [\n 117.7965,\n 36.43963\n ],\n [\n 117.786471,\n 36.434277\n ],\n [\n 117.779838,\n 36.441239\n ],\n [\n 117.755752,\n 36.445303\n ],\n [\n 117.763491,\n 36.452868\n ],\n [\n 117.757016,\n 36.459144\n ],\n [\n 117.765544,\n 36.469845\n ],\n [\n 117.748566,\n 36.478694\n ],\n [\n 117.757332,\n 36.484485\n ],\n [\n 117.755673,\n 36.496228\n ],\n [\n 117.743118,\n 36.498439\n ],\n [\n 117.735853,\n 36.504993\n ],\n [\n 117.751646,\n 36.509979\n ],\n [\n 117.765544,\n 36.509496\n ],\n [\n 117.76586,\n 36.512994\n ],\n [\n 117.750777,\n 36.524652\n ],\n [\n 117.742486,\n 36.525737\n ],\n [\n 117.739406,\n 36.539925\n ],\n [\n 117.72377,\n 36.54732\n ],\n [\n 117.720849,\n 36.560057\n ],\n [\n 117.694315,\n 36.568896\n ],\n [\n 117.696132,\n 36.575042\n ],\n [\n 117.706792,\n 36.581469\n ],\n [\n 117.715321,\n 36.578537\n ],\n [\n 117.706792,\n 36.593559\n ],\n [\n 117.715163,\n 36.600546\n ],\n [\n 117.697869,\n 36.599422\n ],\n [\n 117.690525,\n 36.604883\n ],\n [\n 117.705055,\n 36.605807\n ],\n [\n 117.706555,\n 36.611549\n ],\n [\n 117.714926,\n 36.610545\n ],\n [\n 117.715321,\n 36.627527\n ],\n [\n 117.70853,\n 36.635154\n ],\n [\n 117.712241,\n 36.642258\n ],\n [\n 117.709003,\n 36.651569\n ],\n [\n 117.698027,\n 36.652974\n ],\n [\n 117.695184,\n 36.666978\n ],\n [\n 117.701265,\n 36.685191\n ],\n [\n 117.715637,\n 36.691208\n ],\n [\n 117.718006,\n 36.697826\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 370400,\n \"name\": \"枣庄市\",\n \"center\": [\n 117.557964,\n 34.856424\n ],\n \"centroid\": [\n 117.39817,\n 34.916234\n ],\n \"childrenNum\": 6,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 3,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 117.392342,\n 34.574909\n ],\n [\n 117.393922,\n 34.587676\n ],\n [\n 117.398976,\n 34.588335\n ],\n [\n 117.397949,\n 34.604393\n ],\n [\n 117.407978,\n 34.610651\n ],\n [\n 117.4109,\n 34.623454\n ],\n [\n 117.402687,\n 34.628434\n ],\n [\n 117.384051,\n 34.628228\n ],\n [\n 117.376707,\n 34.622301\n ],\n [\n 117.374022,\n 34.636172\n ],\n [\n 117.366915,\n 34.650246\n ],\n [\n 117.354201,\n 34.653538\n ],\n [\n 117.35657,\n 34.661643\n ],\n [\n 117.346067,\n 34.670982\n ],\n [\n 117.329247,\n 34.677359\n ],\n [\n 117.335485,\n 34.692454\n ],\n [\n 117.324272,\n 34.697307\n ],\n [\n 117.326167,\n 34.703434\n ],\n [\n 117.310611,\n 34.717333\n ],\n [\n 117.304609,\n 34.714866\n ],\n [\n 117.278787,\n 34.715647\n ],\n [\n 117.271443,\n 34.726501\n ],\n [\n 117.253675,\n 34.721444\n ],\n [\n 117.242067,\n 34.729995\n ],\n [\n 117.236697,\n 34.746355\n ],\n [\n 117.22422,\n 34.745533\n ],\n [\n 117.212927,\n 34.761027\n ],\n [\n 117.191369,\n 34.780914\n ],\n [\n 117.180551,\n 34.784201\n ],\n [\n 117.176523,\n 34.779065\n ],\n [\n 117.162467,\n 34.782105\n ],\n [\n 117.172733,\n 34.799194\n ],\n [\n 117.180314,\n 34.800221\n ],\n [\n 117.194686,\n 34.816239\n ],\n [\n 117.17755,\n 34.828722\n ],\n [\n 117.156623,\n 34.834306\n ],\n [\n 117.140593,\n 34.846499\n ],\n [\n 117.139013,\n 34.854052\n ],\n [\n 117.125826,\n 34.863451\n ],\n [\n 117.12093,\n 34.903581\n ],\n [\n 117.110111,\n 34.90514\n ],\n [\n 117.111059,\n 34.917774\n ],\n [\n 117.103399,\n 34.937459\n ],\n [\n 117.082551,\n 34.934917\n ],\n [\n 117.073707,\n 34.925485\n ],\n [\n 117.06123,\n 34.930406\n ],\n [\n 117.05815,\n 34.926961\n ],\n [\n 117.041093,\n 34.925157\n ],\n [\n 117.043462,\n 34.932825\n ],\n [\n 117.038487,\n 34.937869\n ],\n [\n 117.017719,\n 34.942503\n ],\n [\n 116.989448,\n 34.93873\n ],\n [\n 116.980367,\n 34.941027\n ],\n [\n 116.9671,\n 34.951072\n ],\n [\n 116.955334,\n 34.967142\n ],\n [\n 116.943015,\n 34.975627\n ],\n [\n 116.954466,\n 34.993331\n ],\n [\n 116.956993,\n 35.01054\n ],\n [\n 116.951702,\n 35.020618\n ],\n [\n 116.937172,\n 35.0275\n ],\n [\n 116.907875,\n 35.046995\n ],\n [\n 116.900767,\n 35.05977\n ],\n [\n 116.881183,\n 35.058133\n ],\n [\n 116.880473,\n 35.062595\n ],\n [\n 116.900373,\n 35.068737\n ],\n [\n 116.888212,\n 35.085193\n ],\n [\n 116.888922,\n 35.093829\n ],\n [\n 116.863179,\n 35.091496\n ],\n [\n 116.848649,\n 35.103774\n ],\n [\n 116.832065,\n 35.123783\n ],\n [\n 116.825748,\n 35.147631\n ],\n [\n 116.81793,\n 35.150699\n ],\n [\n 116.813192,\n 35.159573\n ],\n [\n 116.81564,\n 35.170777\n ],\n [\n 116.811218,\n 35.17736\n ],\n [\n 116.832776,\n 35.184392\n ],\n [\n 116.85394,\n 35.16861\n ],\n [\n 116.86618,\n 35.172617\n ],\n [\n 116.876603,\n 35.188031\n ],\n [\n 116.898398,\n 35.195757\n ],\n [\n 116.904716,\n 35.182471\n ],\n [\n 116.913718,\n 35.178791\n ],\n [\n 116.925721,\n 35.182266\n ],\n [\n 116.938277,\n 35.172168\n ],\n [\n 116.962047,\n 35.177319\n ],\n [\n 116.969706,\n 35.187377\n ],\n [\n 116.995687,\n 35.1978\n ],\n [\n 117.014639,\n 35.214844\n ],\n [\n 117.028774,\n 35.221219\n ],\n [\n 117.053333,\n 35.224202\n ],\n [\n 117.065336,\n 35.22792\n ],\n [\n 117.092896,\n 35.220361\n ],\n [\n 117.104899,\n 35.221464\n ],\n [\n 117.123536,\n 35.23078\n ],\n [\n 117.152675,\n 35.232047\n ],\n [\n 117.176681,\n 35.243159\n ],\n [\n 117.199108,\n 35.24749\n ],\n [\n 117.204873,\n 35.258518\n ],\n [\n 117.220824,\n 35.26489\n ],\n [\n 117.269231,\n 35.261296\n ],\n [\n 117.262203,\n 35.287472\n ],\n [\n 117.284472,\n 35.294331\n ],\n [\n 117.290079,\n 35.299394\n ],\n [\n 117.305794,\n 35.295229\n ],\n [\n 117.311163,\n 35.28588\n ],\n [\n 117.314085,\n 35.302129\n ],\n [\n 117.308557,\n 35.312579\n ],\n [\n 117.318034,\n 35.320252\n ],\n [\n 117.347568,\n 35.315109\n ],\n [\n 117.359571,\n 35.318375\n ],\n [\n 117.399528,\n 35.306374\n ],\n [\n 117.403635,\n 35.301394\n ],\n [\n 117.406004,\n 35.283348\n ],\n [\n 117.419191,\n 35.273997\n ],\n [\n 117.426456,\n 35.261786\n ],\n [\n 117.439486,\n 35.258927\n ],\n [\n 117.449752,\n 35.246795\n ],\n [\n 117.448331,\n 35.231842\n ],\n [\n 117.468073,\n 35.228369\n ],\n [\n 117.480628,\n 35.222771\n ],\n [\n 117.494843,\n 35.205893\n ],\n [\n 117.507162,\n 35.198986\n ],\n [\n 117.526825,\n 35.200621\n ],\n [\n 117.528009,\n 35.184351\n ],\n [\n 117.548462,\n 35.161741\n ],\n [\n 117.556043,\n 35.161291\n ],\n [\n 117.570336,\n 35.168365\n ],\n [\n 117.58376,\n 35.164317\n ],\n [\n 117.586208,\n 35.152989\n ],\n [\n 117.591025,\n 35.152539\n ],\n [\n 117.600344,\n 35.135524\n ],\n [\n 117.604371,\n 35.13401\n ],\n [\n 117.623007,\n 35.113063\n ],\n [\n 117.650725,\n 35.092724\n ],\n [\n 117.656885,\n 35.077497\n ],\n [\n 117.676469,\n 35.065543\n ],\n [\n 117.69321,\n 35.06018\n ],\n [\n 117.707345,\n 35.052318\n ],\n [\n 117.704423,\n 35.031227\n ],\n [\n 117.736247,\n 35.031514\n ],\n [\n 117.744618,\n 35.022748\n ],\n [\n 117.737985,\n 35.013203\n ],\n [\n 117.728035,\n 35.008041\n ],\n [\n 117.726534,\n 34.979561\n ],\n [\n 117.719506,\n 34.968331\n ],\n [\n 117.724323,\n 34.958329\n ],\n [\n 117.714689,\n 34.947833\n ],\n [\n 117.712004,\n 34.934999\n ],\n [\n 117.704265,\n 34.933605\n ],\n [\n 117.698501,\n 34.919989\n ],\n [\n 117.70466,\n 34.906699\n ],\n [\n 117.715163,\n 34.896238\n ],\n [\n 117.729298,\n 34.876994\n ],\n [\n 117.742407,\n 34.874163\n ],\n [\n 117.75291,\n 34.857623\n ],\n [\n 117.763175,\n 34.848839\n ],\n [\n 117.795315,\n 34.835907\n ],\n [\n 117.803686,\n 34.830734\n ],\n [\n 117.798632,\n 34.810653\n ],\n [\n 117.77739,\n 34.801248\n ],\n [\n 117.784023,\n 34.79484\n ],\n [\n 117.784576,\n 34.780667\n ],\n [\n 117.79958,\n 34.768875\n ],\n [\n 117.830614,\n 34.760246\n ],\n [\n 117.830061,\n 34.740888\n ],\n [\n 117.823665,\n 34.72868\n ],\n [\n 117.825244,\n 34.713139\n ],\n [\n 117.831719,\n 34.707793\n ],\n [\n 117.825639,\n 34.684392\n ],\n [\n 117.819243,\n 34.681842\n ],\n [\n 117.805818,\n 34.646254\n ],\n [\n 117.793657,\n 34.651768\n ],\n [\n 117.796026,\n 34.637736\n ],\n [\n 117.793657,\n 34.625594\n ],\n [\n 117.798553,\n 34.621848\n ],\n [\n 117.791446,\n 34.585082\n ],\n [\n 117.794605,\n 34.559751\n ],\n [\n 117.793499,\n 34.548463\n ],\n [\n 117.799185,\n 34.535155\n ],\n [\n 117.801712,\n 34.518753\n ],\n [\n 117.790498,\n 34.518918\n ],\n [\n 117.773994,\n 34.529056\n ],\n [\n 117.748645,\n 34.533383\n ],\n [\n 117.700712,\n 34.54525\n ],\n [\n 117.684523,\n 34.547351\n ],\n [\n 117.681996,\n 34.529551\n ],\n [\n 117.673389,\n 34.515827\n ],\n [\n 117.659096,\n 34.501071\n ],\n [\n 117.647014,\n 34.492908\n ],\n [\n 117.642039,\n 34.496825\n ],\n [\n 117.629246,\n 34.488538\n ],\n [\n 117.609662,\n 34.490476\n ],\n [\n 117.603187,\n 34.476828\n ],\n [\n 117.592289,\n 34.462518\n ],\n [\n 117.569783,\n 34.463054\n ],\n [\n 117.561334,\n 34.471962\n ],\n [\n 117.54783,\n 34.475179\n ],\n [\n 117.538275,\n 34.46722\n ],\n [\n 117.513005,\n 34.472581\n ],\n [\n 117.493263,\n 34.472663\n ],\n [\n 117.487341,\n 34.466354\n ],\n [\n 117.48663,\n 34.482065\n ],\n [\n 117.48205,\n 34.48594\n ],\n [\n 117.465467,\n 34.48458\n ],\n [\n 117.45141,\n 34.506264\n ],\n [\n 117.438223,\n 34.516445\n ],\n [\n 117.439486,\n 34.520031\n ],\n [\n 117.426772,\n 34.525224\n ],\n [\n 117.424482,\n 34.537009\n ],\n [\n 117.403793,\n 34.546898\n ],\n [\n 117.402529,\n 34.569431\n ],\n [\n 117.392342,\n 34.574909\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 370500,\n \"name\": \"东营市\",\n \"center\": [\n 118.66471,\n 37.434564\n ],\n \"centroid\": [\n 118.625299,\n 37.636119\n ],\n \"childrenNum\": 5,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 4,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 119.039928,\n 37.304466\n ],\n [\n 118.856959,\n 37.293842\n ],\n [\n 118.821897,\n 37.288788\n ],\n [\n 118.777991,\n 37.280112\n ],\n [\n 118.728399,\n 37.252764\n ],\n [\n 118.709684,\n 37.241256\n ],\n [\n 118.680624,\n 37.229269\n ],\n [\n 118.672332,\n 37.215129\n ],\n [\n 118.668779,\n 37.198436\n ],\n [\n 118.660408,\n 37.187877\n ],\n [\n 118.649274,\n 37.189112\n ],\n [\n 118.645483,\n 37.178153\n ],\n [\n 118.633638,\n 37.171178\n ],\n [\n 118.634191,\n 37.163366\n ],\n [\n 118.64572,\n 37.159579\n ],\n [\n 118.649195,\n 37.164243\n ],\n [\n 118.653617,\n 37.149692\n ],\n [\n 118.673754,\n 37.144309\n ],\n [\n 118.667041,\n 37.11392\n ],\n [\n 118.668384,\n 37.091539\n ],\n [\n 118.665146,\n 37.081763\n ],\n [\n 118.655512,\n 37.082681\n ],\n [\n 118.654091,\n 37.076935\n ],\n [\n 118.632138,\n 37.070429\n ],\n [\n 118.631901,\n 37.066757\n ],\n [\n 118.610895,\n 37.063005\n ],\n [\n 118.591469,\n 37.068474\n ],\n [\n 118.580414,\n 37.063325\n ],\n [\n 118.561303,\n 37.063325\n ],\n [\n 118.557592,\n 37.051469\n ],\n [\n 118.56004,\n 37.041408\n ],\n [\n 118.545431,\n 37.038494\n ],\n [\n 118.545826,\n 37.023519\n ],\n [\n 118.57149,\n 37.022081\n ],\n [\n 118.588389,\n 37.017409\n ],\n [\n 118.583572,\n 37.008422\n ],\n [\n 118.590206,\n 37.001351\n ],\n [\n 118.571174,\n 37.004148\n ],\n [\n 118.566199,\n 36.999034\n ],\n [\n 118.580493,\n 36.994999\n ],\n [\n 118.564146,\n 36.99416\n ],\n [\n 118.553959,\n 37.000233\n ],\n [\n 118.552301,\n 36.979657\n ],\n [\n 118.559803,\n 36.977059\n ],\n [\n 118.557434,\n 36.96539\n ],\n [\n 118.560751,\n 36.946564\n ],\n [\n 118.55467,\n 36.938368\n ],\n [\n 118.537771,\n 36.936769\n ],\n [\n 118.52711,\n 36.939687\n ],\n [\n 118.524583,\n 36.945284\n ],\n [\n 118.503183,\n 36.944285\n ],\n [\n 118.503736,\n 36.95156\n ],\n [\n 118.47665,\n 36.957077\n ],\n [\n 118.467411,\n 36.945484\n ],\n [\n 118.439061,\n 36.942206\n ],\n [\n 118.40321,\n 36.943125\n ],\n [\n 118.401788,\n 36.949802\n ],\n [\n 118.386548,\n 36.950481\n ],\n [\n 118.387574,\n 36.971305\n ],\n [\n 118.384652,\n 36.974382\n ],\n [\n 118.352276,\n 36.974582\n ],\n [\n 118.3443,\n 36.960714\n ],\n [\n 118.324637,\n 36.964751\n ],\n [\n 118.322347,\n 36.974502\n ],\n [\n 118.312476,\n 36.970905\n ],\n [\n 118.294629,\n 36.969666\n ],\n [\n 118.291628,\n 36.995878\n ],\n [\n 118.288785,\n 36.999993\n ],\n [\n 118.28997,\n 37.00946\n ],\n [\n 118.308212,\n 37.019885\n ],\n [\n 118.310186,\n 37.028231\n ],\n [\n 118.3259,\n 37.035459\n ],\n [\n 118.324558,\n 37.046279\n ],\n [\n 118.337588,\n 37.053904\n ],\n [\n 118.338535,\n 37.072265\n ],\n [\n 118.332928,\n 37.081923\n ],\n [\n 118.338851,\n 37.093894\n ],\n [\n 118.338298,\n 37.10311\n ],\n [\n 118.349354,\n 37.101753\n ],\n [\n 118.338219,\n 37.123134\n ],\n [\n 118.346116,\n 37.123931\n ],\n [\n 118.340667,\n 37.131748\n ],\n [\n 118.347616,\n 37.139803\n ],\n [\n 118.356224,\n 37.139325\n ],\n [\n 118.361594,\n 37.148495\n ],\n [\n 118.366569,\n 37.146781\n ],\n [\n 118.377545,\n 37.154157\n ],\n [\n 118.380467,\n 37.175164\n ],\n [\n 118.387574,\n 37.177834\n ],\n [\n 118.383389,\n 37.190587\n ],\n [\n 118.376598,\n 37.196962\n ],\n [\n 118.375966,\n 37.206126\n ],\n [\n 118.3642,\n 37.210189\n ],\n [\n 118.346669,\n 37.233252\n ],\n [\n 118.350459,\n 37.243765\n ],\n [\n 118.36033,\n 37.244561\n ],\n [\n 118.368385,\n 37.258576\n ],\n [\n 118.375729,\n 37.258497\n ],\n [\n 118.372096,\n 37.273703\n ],\n [\n 118.36262,\n 37.273783\n ],\n [\n 118.368069,\n 37.279594\n ],\n [\n 118.358277,\n 37.280669\n ],\n [\n 118.355197,\n 37.286997\n ],\n [\n 118.342168,\n 37.287076\n ],\n [\n 118.342168,\n 37.295075\n ],\n [\n 118.325584,\n 37.296866\n ],\n [\n 118.326058,\n 37.306535\n ],\n [\n 118.319741,\n 37.305978\n ],\n [\n 118.31524,\n 37.31477\n ],\n [\n 118.315398,\n 37.352514\n ],\n [\n 118.287285,\n 37.352434\n ],\n [\n 118.291865,\n 37.358518\n ],\n [\n 118.286495,\n 37.362772\n ],\n [\n 118.273624,\n 37.360029\n ],\n [\n 118.262015,\n 37.364283\n ],\n [\n 118.258541,\n 37.37911\n ],\n [\n 118.245827,\n 37.376646\n ],\n [\n 118.245353,\n 37.367781\n ],\n [\n 118.222768,\n 37.367861\n ],\n [\n 118.217951,\n 37.371478\n ],\n [\n 118.216925,\n 37.385191\n ],\n [\n 118.202,\n 37.382409\n ],\n [\n 118.161015,\n 37.362573\n ],\n [\n 118.156198,\n 37.364322\n ],\n [\n 118.154935,\n 37.377401\n ],\n [\n 118.141668,\n 37.376487\n ],\n [\n 118.135509,\n 37.384834\n ],\n [\n 118.144037,\n 37.392822\n ],\n [\n 118.16141,\n 37.389961\n ],\n [\n 118.160147,\n 37.399618\n ],\n [\n 118.165596,\n 37.4082\n ],\n [\n 118.163937,\n 37.416742\n ],\n [\n 118.14996,\n 37.438351\n ],\n [\n 118.136141,\n 37.441688\n ],\n [\n 118.114898,\n 37.439742\n ],\n [\n 118.118531,\n 37.456182\n ],\n [\n 118.125322,\n 37.45912\n ],\n [\n 118.112766,\n 37.463528\n ],\n [\n 118.120426,\n 37.480757\n ],\n [\n 118.128481,\n 37.483694\n ],\n [\n 118.127849,\n 37.491831\n ],\n [\n 118.135035,\n 37.496752\n ],\n [\n 118.134245,\n 37.507387\n ],\n [\n 118.139378,\n 37.507427\n ],\n [\n 118.136772,\n 37.516791\n ],\n [\n 118.142537,\n 37.518933\n ],\n [\n 118.150987,\n 37.530517\n ],\n [\n 118.156988,\n 37.530358\n ],\n [\n 118.159831,\n 37.539164\n ],\n [\n 118.173255,\n 37.546858\n ],\n [\n 118.176098,\n 37.557129\n ],\n [\n 118.173176,\n 37.563593\n ],\n [\n 118.141431,\n 37.556297\n ],\n [\n 118.134166,\n 37.558478\n ],\n [\n 118.13922,\n 37.571364\n ],\n [\n 118.131324,\n 37.571285\n ],\n [\n 118.127612,\n 37.578103\n ],\n [\n 118.134877,\n 37.590035\n ],\n [\n 118.148696,\n 37.594078\n ],\n [\n 118.146722,\n 37.599943\n ],\n [\n 118.154935,\n 37.605491\n ],\n [\n 118.157462,\n 37.62035\n ],\n [\n 118.154935,\n 37.628036\n ],\n [\n 118.163542,\n 37.63069\n ],\n [\n 118.165596,\n 37.644633\n ],\n [\n 118.172545,\n 37.644079\n ],\n [\n 118.177125,\n 37.657623\n ],\n [\n 118.195445,\n 37.661742\n ],\n [\n 118.200657,\n 37.667404\n ],\n [\n 118.207449,\n 37.661583\n ],\n [\n 118.22569,\n 37.663682\n ],\n [\n 118.239431,\n 37.65596\n ],\n [\n 118.246459,\n 37.658376\n ],\n [\n 118.260989,\n 37.654614\n ],\n [\n 118.2846,\n 37.662058\n ],\n [\n 118.293129,\n 37.670096\n ],\n [\n 118.294076,\n 37.678529\n ],\n [\n 118.305132,\n 37.683122\n ],\n [\n 118.3045,\n 37.690722\n ],\n [\n 118.316187,\n 37.714151\n ],\n [\n 118.319425,\n 37.712924\n ],\n [\n 118.31753,\n 37.728395\n ],\n [\n 118.337509,\n 37.729502\n ],\n [\n 118.341931,\n 37.74667\n ],\n [\n 118.353697,\n 37.750151\n ],\n [\n 118.353065,\n 37.75814\n ],\n [\n 118.340667,\n 37.763913\n ],\n [\n 118.340588,\n 37.774391\n ],\n [\n 118.348406,\n 37.790719\n ],\n [\n 118.36191,\n 37.792063\n ],\n [\n 118.352355,\n 37.814274\n ],\n [\n 118.356382,\n 37.820834\n ],\n [\n 118.344932,\n 37.824627\n ],\n [\n 118.346116,\n 37.832371\n ],\n [\n 118.334271,\n 37.832134\n ],\n [\n 118.340193,\n 37.838059\n ],\n [\n 118.328111,\n 37.865272\n ],\n [\n 118.313265,\n 37.861521\n ],\n [\n 118.301657,\n 37.870208\n ],\n [\n 118.286337,\n 37.8569\n ],\n [\n 118.269754,\n 37.853109\n ],\n [\n 118.258304,\n 37.844182\n ],\n [\n 118.258146,\n 37.854886\n ],\n [\n 118.247643,\n 37.871788\n ],\n [\n 118.248749,\n 37.858164\n ],\n [\n 118.239115,\n 37.868708\n ],\n [\n 118.236588,\n 37.884501\n ],\n [\n 118.243142,\n 37.895673\n ],\n [\n 118.235403,\n 37.905343\n ],\n [\n 118.232718,\n 37.922509\n ],\n [\n 118.225611,\n 37.923417\n ],\n [\n 118.226954,\n 37.939672\n ],\n [\n 118.224742,\n 37.950559\n ],\n [\n 118.215503,\n 37.949376\n ],\n [\n 118.213529,\n 37.95541\n ],\n [\n 118.223479,\n 37.959788\n ],\n [\n 118.220873,\n 37.98258\n ],\n [\n 118.22956,\n 37.986444\n ],\n [\n 118.2234,\n 38.00095\n ],\n [\n 118.40779,\n 38.026212\n ],\n [\n 118.419951,\n 38.025503\n ],\n [\n 118.419319,\n 38.053119\n ],\n [\n 118.410001,\n 38.053277\n ],\n [\n 118.227585,\n 38.037874\n ],\n [\n 118.230665,\n 38.056743\n ],\n [\n 118.226638,\n 38.079583\n ],\n [\n 118.235324,\n 38.082969\n ],\n [\n 118.245511,\n 38.103322\n ],\n [\n 118.241247,\n 38.112138\n ],\n [\n 118.227664,\n 38.119262\n ],\n [\n 118.236272,\n 38.125754\n ],\n [\n 118.245432,\n 38.144286\n ],\n [\n 118.274334,\n 38.138542\n ],\n [\n 118.330717,\n 38.125046\n ],\n [\n 118.360172,\n 38.120954\n ],\n [\n 118.38023,\n 38.119931\n ],\n [\n 118.39097,\n 38.123315\n ],\n [\n 118.404078,\n 38.120914\n ],\n [\n 118.420425,\n 38.107337\n ],\n [\n 118.43148,\n 38.106274\n ],\n [\n 118.449722,\n 38.124259\n ],\n [\n 118.461409,\n 38.126659\n ],\n [\n 118.483204,\n 38.123236\n ],\n [\n 118.504526,\n 38.113909\n ],\n [\n 118.513212,\n 38.10466\n ],\n [\n 118.517081,\n 38.088363\n ],\n [\n 118.526321,\n 38.071314\n ],\n [\n 118.534533,\n 38.063517\n ],\n [\n 118.552459,\n 38.055679\n ],\n [\n 118.565568,\n 38.060209\n ],\n [\n 118.597629,\n 38.078993\n ],\n [\n 118.603946,\n 38.101354\n ],\n [\n 118.607816,\n 38.12906\n ],\n [\n 118.62582,\n 38.138306\n ],\n [\n 118.726425,\n 38.154238\n ],\n [\n 118.777754,\n 38.156952\n ],\n [\n 118.811474,\n 38.15762\n ],\n [\n 118.853721,\n 38.154985\n ],\n [\n 118.877491,\n 38.149596\n ],\n [\n 118.908051,\n 38.139368\n ],\n [\n 118.931426,\n 38.127486\n ],\n [\n 118.958512,\n 38.110131\n ],\n [\n 118.974068,\n 38.09415\n ],\n [\n 118.985282,\n 38.062099\n ],\n [\n 118.996495,\n 38.013996\n ],\n [\n 119.00455,\n 37.992278\n ],\n [\n 119.045297,\n 37.967597\n ],\n [\n 119.110604,\n 37.921365\n ],\n [\n 119.120554,\n 37.897054\n ],\n [\n 119.122844,\n 37.866536\n ],\n [\n 119.128293,\n 37.855992\n ],\n [\n 119.126555,\n 37.845723\n ],\n [\n 119.119764,\n 37.839442\n ],\n [\n 119.121501,\n 37.827511\n ],\n [\n 119.128293,\n 37.814393\n ],\n [\n 119.15451,\n 37.80645\n ],\n [\n 119.180254,\n 37.809098\n ],\n [\n 119.204734,\n 37.815618\n ],\n [\n 119.217605,\n 37.810244\n ],\n [\n 119.219974,\n 37.793723\n ],\n [\n 119.21421,\n 37.769647\n ],\n [\n 119.215394,\n 37.76332\n ],\n [\n 119.225344,\n 37.752998\n ],\n [\n 119.275252,\n 37.739353\n ],\n [\n 119.278963,\n 37.729819\n ],\n [\n 119.275726,\n 37.717435\n ],\n [\n 119.26009,\n 37.702398\n ],\n [\n 119.247218,\n 37.698519\n ],\n [\n 119.22487,\n 37.697332\n ],\n [\n 119.196916,\n 37.699073\n ],\n [\n 119.138006,\n 37.705128\n ],\n [\n 119.107129,\n 37.703941\n ],\n [\n 119.080122,\n 37.696382\n ],\n [\n 119.047509,\n 37.679044\n ],\n [\n 119.020186,\n 37.657227\n ],\n [\n 118.997206,\n 37.632592\n ],\n [\n 118.972331,\n 37.594474\n ],\n [\n 118.9518,\n 37.556019\n ],\n [\n 118.939638,\n 37.527066\n ],\n [\n 118.942955,\n 37.497466\n ],\n [\n 118.958275,\n 37.454912\n ],\n [\n 118.973121,\n 37.404346\n ],\n [\n 118.977385,\n 37.382052\n ],\n [\n 118.982597,\n 37.378077\n ],\n [\n 119.003444,\n 37.383403\n ],\n [\n 119.012842,\n 37.376089\n ],\n [\n 119.009841,\n 37.370763\n ],\n [\n 118.985598,\n 37.365754\n ],\n [\n 118.981412,\n 37.35983\n ],\n [\n 118.98694,\n 37.339511\n ],\n [\n 119.001233,\n 37.318748\n ],\n [\n 119.010315,\n 37.313218\n ],\n [\n 119.039928,\n 37.304466\n ]\n ]\n ],\n [\n [\n [\n 118.410001,\n 38.053277\n ],\n [\n 118.40779,\n 38.026212\n ],\n [\n 118.2234,\n 38.00095\n ],\n [\n 118.227585,\n 38.037874\n ],\n [\n 118.410001,\n 38.053277\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 370600,\n \"name\": \"烟台市\",\n \"center\": [\n 121.391382,\n 37.539297\n ],\n \"centroid\": [\n 120.805129,\n 37.241857\n ],\n \"childrenNum\": 12,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 5,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 119.576514,\n 37.127561\n ],\n [\n 119.629423,\n 37.142116\n ],\n [\n 119.678541,\n 37.157984\n ],\n [\n 119.68628,\n 37.15611\n ],\n [\n 119.687069,\n 37.14395\n ],\n [\n 119.698598,\n 37.127002\n ],\n [\n 119.744795,\n 37.135257\n ],\n [\n 119.754034,\n 37.147459\n ],\n [\n 119.771091,\n 37.160456\n ],\n [\n 119.780488,\n 37.175204\n ],\n [\n 119.790517,\n 37.185008\n ],\n [\n 119.80789,\n 37.196404\n ],\n [\n 119.822104,\n 37.220068\n ],\n [\n 119.83008,\n 37.225724\n ],\n [\n 119.865063,\n 37.233969\n ],\n [\n 119.877066,\n 37.24046\n ],\n [\n 119.885989,\n 37.252286\n ],\n [\n 119.858982,\n 37.253719\n ],\n [\n 119.860956,\n 37.262557\n ],\n [\n 119.892149,\n 37.263911\n ],\n [\n 119.895781,\n 37.275495\n ],\n [\n 119.887332,\n 37.283972\n ],\n [\n 119.889227,\n 37.298457\n ],\n [\n 119.883383,\n 37.310871\n ],\n [\n 119.874697,\n 37.313099\n ],\n [\n 119.869406,\n 37.321016\n ],\n [\n 119.85306,\n 37.326226\n ],\n [\n 119.848085,\n 37.337323\n ],\n [\n 119.838214,\n 37.34309\n ],\n [\n 119.842715,\n 37.361341\n ],\n [\n 119.839714,\n 37.37112\n ],\n [\n 119.843978,\n 37.376725\n ],\n [\n 119.927131,\n 37.386702\n ],\n [\n 119.937397,\n 37.393339\n ],\n [\n 119.949874,\n 37.42004\n ],\n [\n 119.986357,\n 37.425681\n ],\n [\n 120.012654,\n 37.442919\n ],\n [\n 120.06493,\n 37.449114\n ],\n [\n 120.086252,\n 37.465275\n ],\n [\n 120.108758,\n 37.470515\n ],\n [\n 120.144372,\n 37.481908\n ],\n [\n 120.194517,\n 37.512982\n ],\n [\n 120.199492,\n 37.524646\n ],\n [\n 120.222313,\n 37.532857\n ],\n [\n 120.235975,\n 37.548128\n ],\n [\n 120.246793,\n 37.556614\n ],\n [\n 120.208178,\n 37.588648\n ],\n [\n 120.217575,\n 37.603787\n ],\n [\n 120.210152,\n 37.616745\n ],\n [\n 120.215048,\n 37.621143\n ],\n [\n 120.24861,\n 37.623876\n ],\n [\n 120.265667,\n 37.628868\n ],\n [\n 120.2723,\n 37.63683\n ],\n [\n 120.273563,\n 37.650891\n ],\n [\n 120.269299,\n 37.658495\n ],\n [\n 120.244661,\n 37.657703\n ],\n [\n 120.232895,\n 37.662138\n ],\n [\n 120.220339,\n 37.672036\n ],\n [\n 120.216154,\n 37.686605\n ],\n [\n 120.227209,\n 37.693611\n ],\n [\n 120.341555,\n 37.693215\n ],\n [\n 120.368246,\n 37.698005\n ],\n [\n 120.386408,\n 37.707701\n ],\n [\n 120.437817,\n 37.74141\n ],\n [\n 120.447924,\n 37.754659\n ],\n [\n 120.47201,\n 37.757626\n ],\n [\n 120.482354,\n 37.755015\n ],\n [\n 120.518443,\n 37.750586\n ],\n [\n 120.528235,\n 37.757151\n ],\n [\n 120.579959,\n 37.760868\n ],\n [\n 120.595357,\n 37.767551\n ],\n [\n 120.621654,\n 37.790877\n ],\n [\n 120.63421,\n 37.796371\n ],\n [\n 120.657031,\n 37.793051\n ],\n [\n 120.733393,\n 37.833556\n ],\n [\n 120.743185,\n 37.833082\n ],\n [\n 120.754241,\n 37.837506\n ],\n [\n 120.762611,\n 37.829961\n ],\n [\n 120.778563,\n 37.831146\n ],\n [\n 120.797278,\n 37.827709\n ],\n [\n 120.811887,\n 37.822098\n ],\n [\n 120.832972,\n 37.821624\n ],\n [\n 120.865112,\n 37.832963\n ],\n [\n 120.890381,\n 37.832963\n ],\n [\n 120.900489,\n 37.823679\n ],\n [\n 120.915019,\n 37.824034\n ],\n [\n 120.921653,\n 37.819885\n ],\n [\n 120.935788,\n 37.822375\n ],\n [\n 120.94637,\n 37.813405\n ],\n [\n 120.947712,\n 37.798624\n ],\n [\n 120.941158,\n 37.793367\n ],\n [\n 120.943448,\n 37.78554\n ],\n [\n 120.952924,\n 37.776882\n ],\n [\n 120.975588,\n 37.762371\n ],\n [\n 120.995724,\n 37.759049\n ],\n [\n 121.016098,\n 37.741766\n ],\n [\n 121.019573,\n 37.731085\n ],\n [\n 121.037735,\n 37.718583\n ],\n [\n 121.055108,\n 37.715734\n ],\n [\n 121.064584,\n 37.717119\n ],\n [\n 121.068375,\n 37.72519\n ],\n [\n 121.075482,\n 37.717791\n ],\n [\n 121.096329,\n 37.722698\n ],\n [\n 121.139841,\n 37.723054\n ],\n [\n 121.148527,\n 37.719651\n ],\n [\n 121.159583,\n 37.70687\n ],\n [\n 121.160057,\n 37.699034\n ],\n [\n 121.146079,\n 37.678846\n ],\n [\n 121.142684,\n 37.661267\n ],\n [\n 121.156582,\n 37.657386\n ],\n [\n 121.161715,\n 37.646336\n ],\n [\n 121.150107,\n 37.628987\n ],\n [\n 121.149554,\n 37.619875\n ],\n [\n 121.16977,\n 37.600617\n ],\n [\n 121.182483,\n 37.594276\n ],\n [\n 121.215887,\n 37.583098\n ],\n [\n 121.251264,\n 37.581116\n ],\n [\n 121.304963,\n 37.582979\n ],\n [\n 121.354791,\n 37.596178\n ],\n [\n 121.361583,\n 37.600855\n ],\n [\n 121.358266,\n 37.616467\n ],\n [\n 121.344289,\n 37.627759\n ],\n [\n 121.349264,\n 37.635206\n ],\n [\n 121.361898,\n 37.634216\n ],\n [\n 121.374849,\n 37.628749\n ],\n [\n 121.386142,\n 37.627798\n ],\n [\n 121.411174,\n 37.609494\n ],\n [\n 121.43676,\n 37.600815\n ],\n [\n 121.439603,\n 37.596218\n ],\n [\n 121.427047,\n 37.590788\n ],\n [\n 121.411016,\n 37.591263\n ],\n [\n 121.389774,\n 37.59705\n ],\n [\n 121.385905,\n 37.591303\n ],\n [\n 121.395934,\n 37.589876\n ],\n [\n 121.401066,\n 37.557804\n ],\n [\n 121.412438,\n 37.547652\n ],\n [\n 121.436444,\n 37.541227\n ],\n [\n 121.459819,\n 37.522623\n ],\n [\n 121.45666,\n 37.502665\n ],\n [\n 121.46045,\n 37.493855\n ],\n [\n 121.479245,\n 37.474961\n ],\n [\n 121.514938,\n 37.46186\n ],\n [\n 121.532074,\n 37.462456\n ],\n [\n 121.537207,\n 37.451219\n ],\n [\n 121.56532,\n 37.440377\n ],\n [\n 121.571558,\n 37.441449\n ],\n [\n 121.576059,\n 37.460391\n ],\n [\n 121.586562,\n 37.467299\n ],\n [\n 121.599118,\n 37.46992\n ],\n [\n 121.618939,\n 37.481948\n ],\n [\n 121.633469,\n 37.49318\n ],\n [\n 121.653843,\n 37.493061\n ],\n [\n 121.660239,\n 37.487187\n ],\n [\n 121.665767,\n 37.473453\n ],\n [\n 121.747893,\n 37.467458\n ],\n [\n 121.773084,\n 37.466505\n ],\n [\n 121.838943,\n 37.471468\n ],\n [\n 121.887587,\n 37.470039\n ],\n [\n 121.923992,\n 37.473096\n ],\n [\n 121.92944,\n 37.460868\n ],\n [\n 121.929519,\n 37.454713\n ],\n [\n 121.920438,\n 37.429931\n ],\n [\n 121.91878,\n 37.420755\n ],\n [\n 121.908435,\n 37.400969\n ],\n [\n 121.90038,\n 37.391232\n ],\n [\n 121.882454,\n 37.381694\n ],\n [\n 121.870293,\n 37.368894\n ],\n [\n 121.865239,\n 37.336727\n ],\n [\n 121.859396,\n 37.329249\n ],\n [\n 121.834047,\n 37.318311\n ],\n [\n 121.822281,\n 37.303988\n ],\n [\n 121.815253,\n 37.300447\n ],\n [\n 121.794879,\n 37.30375\n ],\n [\n 121.790615,\n 37.299532\n ],\n [\n 121.792431,\n 37.288469\n ],\n [\n 121.784692,\n 37.268409\n ],\n [\n 121.778296,\n 37.260487\n ],\n [\n 121.7749,\n 37.248225\n ],\n [\n 121.757211,\n 37.247667\n ],\n [\n 121.74813,\n 37.241575\n ],\n [\n 121.748525,\n 37.223255\n ],\n [\n 121.755632,\n 37.220506\n ],\n [\n 121.754527,\n 37.212022\n ],\n [\n 121.761634,\n 37.217997\n ],\n [\n 121.769057,\n 37.196364\n ],\n [\n 121.759738,\n 37.19222\n ],\n [\n 121.760686,\n 37.178831\n ],\n [\n 121.749315,\n 37.176439\n ],\n [\n 121.753895,\n 37.172493\n ],\n [\n 121.761002,\n 37.177954\n ],\n [\n 121.767872,\n 37.170979\n ],\n [\n 121.747656,\n 37.135776\n ],\n [\n 121.737706,\n 37.136175\n ],\n [\n 121.733995,\n 37.125607\n ],\n [\n 121.699328,\n 37.125926\n ],\n [\n 121.694037,\n 37.141239\n ],\n [\n 121.683455,\n 37.141917\n ],\n [\n 121.688983,\n 37.133503\n ],\n [\n 121.682271,\n 37.13127\n ],\n [\n 121.683692,\n 37.123014\n ],\n [\n 121.678007,\n 37.121658\n ],\n [\n 121.669162,\n 37.110649\n ],\n [\n 121.666714,\n 37.12082\n ],\n [\n 121.654316,\n 37.121897\n ],\n [\n 121.639865,\n 37.131908\n ],\n [\n 121.638839,\n 37.139524\n ],\n [\n 121.628889,\n 37.137969\n ],\n [\n 121.625414,\n 37.131908\n ],\n [\n 121.612147,\n 37.125846\n ],\n [\n 121.600539,\n 37.141079\n ],\n [\n 121.590747,\n 37.144269\n ],\n [\n 121.585377,\n 37.132306\n ],\n [\n 121.590352,\n 37.128518\n ],\n [\n 121.589168,\n 37.116712\n ],\n [\n 121.580323,\n 37.10674\n ],\n [\n 121.574954,\n 37.110091\n ],\n [\n 121.547868,\n 37.104945\n ],\n [\n 121.49946,\n 37.104426\n ],\n [\n 121.465425,\n 37.12086\n ],\n [\n 121.447578,\n 37.123333\n ],\n [\n 121.441656,\n 37.12106\n ],\n [\n 121.427363,\n 37.100796\n ],\n [\n 121.391432,\n 37.098282\n ],\n [\n 121.382746,\n 37.112125\n ],\n [\n 121.376823,\n 37.115915\n ],\n [\n 121.369795,\n 37.110889\n ],\n [\n 121.351475,\n 37.126962\n ],\n [\n 121.363715,\n 37.129236\n ],\n [\n 121.358187,\n 37.140282\n ],\n [\n 121.348316,\n 37.135975\n ],\n [\n 121.34113,\n 37.127002\n ],\n [\n 121.326916,\n 37.12768\n ],\n [\n 121.317992,\n 37.132825\n ],\n [\n 121.314044,\n 37.141079\n ],\n [\n 121.306542,\n 37.141996\n ],\n [\n 121.287827,\n 37.136055\n ],\n [\n 121.26153,\n 37.117989\n ],\n [\n 121.246368,\n 37.102631\n ],\n [\n 121.243131,\n 37.092138\n ],\n [\n 121.204279,\n 37.07897\n ],\n [\n 121.191407,\n 37.072026\n ],\n [\n 121.192512,\n 37.052108\n ],\n [\n 121.188011,\n 37.041169\n ],\n [\n 121.188564,\n 37.029948\n ],\n [\n 121.19496,\n 37.027273\n ],\n [\n 121.194565,\n 37.019485\n ],\n [\n 121.181299,\n 37.016131\n ],\n [\n 121.177587,\n 37.003748\n ],\n [\n 121.182404,\n 36.99456\n ],\n [\n 121.19038,\n 36.996558\n ],\n [\n 121.209096,\n 36.985371\n ],\n [\n 121.222915,\n 36.986649\n ],\n [\n 121.22639,\n 36.971065\n ],\n [\n 121.233734,\n 36.956917\n ],\n [\n 121.248501,\n 36.953679\n ],\n [\n 121.252607,\n 36.938088\n ],\n [\n 121.263189,\n 36.926093\n ],\n [\n 121.272191,\n 36.927532\n ],\n [\n 121.282615,\n 36.918535\n ],\n [\n 121.304173,\n 36.918335\n ],\n [\n 121.308358,\n 36.905177\n ],\n [\n 121.312938,\n 36.904097\n ],\n [\n 121.347605,\n 36.920574\n ],\n [\n 121.360951,\n 36.921494\n ],\n [\n 121.366557,\n 36.903617\n ],\n [\n 121.36482,\n 36.897417\n ],\n [\n 121.385431,\n 36.877333\n ],\n [\n 121.363873,\n 36.871651\n ],\n [\n 121.357397,\n 36.864048\n ],\n [\n 121.357239,\n 36.852401\n ],\n [\n 121.36174,\n 36.841273\n ],\n [\n 121.373428,\n 36.840593\n ],\n [\n 121.376665,\n 36.830384\n ],\n [\n 121.396802,\n 36.803834\n ],\n [\n 121.395855,\n 36.794342\n ],\n [\n 121.409121,\n 36.790176\n ],\n [\n 121.417334,\n 36.792739\n ],\n [\n 121.450184,\n 36.790056\n ],\n [\n 121.462424,\n 36.784888\n ],\n [\n 121.478218,\n 36.770825\n ],\n [\n 121.460687,\n 36.76245\n ],\n [\n 121.454291,\n 36.752351\n ],\n [\n 121.412596,\n 36.748103\n ],\n [\n 121.394038,\n 36.737962\n ],\n [\n 121.390406,\n 36.728742\n ],\n [\n 121.404304,\n 36.726457\n ],\n [\n 121.410385,\n 36.714709\n ],\n [\n 121.405489,\n 36.704443\n ],\n [\n 121.394354,\n 36.699029\n ],\n [\n 121.374691,\n 36.699791\n ],\n [\n 121.365531,\n 36.711461\n ],\n [\n 121.357792,\n 36.713105\n ],\n [\n 121.318308,\n 36.702117\n ],\n [\n 121.298724,\n 36.702318\n ],\n [\n 121.285536,\n 36.699871\n ],\n [\n 121.274876,\n 36.692652\n ],\n [\n 121.251896,\n 36.671351\n ],\n [\n 121.239261,\n 36.668342\n ],\n [\n 121.220941,\n 36.671271\n ],\n [\n 121.194881,\n 36.653295\n ],\n [\n 121.176877,\n 36.65482\n ],\n [\n 121.161399,\n 36.651288\n ],\n [\n 121.146079,\n 36.640372\n ],\n [\n 121.113939,\n 36.621907\n ],\n [\n 121.07793,\n 36.607614\n ],\n [\n 121.055582,\n 36.592675\n ],\n [\n 121.045237,\n 36.579581\n ],\n [\n 121.02897,\n 36.573194\n ],\n [\n 121.016019,\n 36.574721\n ],\n [\n 120.955609,\n 36.576087\n ],\n [\n 120.928681,\n 36.589783\n ],\n [\n 120.924495,\n 36.596892\n ],\n [\n 120.925917,\n 36.613837\n ],\n [\n 120.90578,\n 36.623473\n ],\n [\n 120.89504,\n 36.622188\n ],\n [\n 120.882011,\n 36.627086\n ],\n [\n 120.847107,\n 36.618615\n ],\n [\n 120.850108,\n 36.612271\n ],\n [\n 120.786223,\n 36.589663\n ],\n [\n 120.779747,\n 36.591551\n ],\n [\n 120.777062,\n 36.600546\n ],\n [\n 120.765533,\n 36.607011\n ],\n [\n 120.757557,\n 36.606088\n ],\n [\n 120.751556,\n 36.615042\n ],\n [\n 120.725733,\n 36.624436\n ],\n [\n 120.708281,\n 36.621385\n ],\n [\n 120.70836,\n 36.612914\n ],\n [\n 120.699121,\n 36.60665\n ],\n [\n 120.702991,\n 36.598338\n ],\n [\n 120.679695,\n 36.589181\n ],\n [\n 120.665402,\n 36.587454\n ],\n [\n 120.664059,\n 36.583478\n ],\n [\n 120.637763,\n 36.574199\n ],\n [\n 120.635947,\n 36.597775\n ],\n [\n 120.643449,\n 36.613436\n ],\n [\n 120.644712,\n 36.626524\n ],\n [\n 120.657426,\n 36.626644\n ],\n [\n 120.660585,\n 36.647998\n ],\n [\n 120.648977,\n 36.655863\n ],\n [\n 120.652135,\n 36.663327\n ],\n [\n 120.642027,\n 36.666095\n ],\n [\n 120.627339,\n 36.659836\n ],\n [\n 120.625128,\n 36.671231\n ],\n [\n 120.631446,\n 36.673357\n ],\n [\n 120.619206,\n 36.681541\n ],\n [\n 120.616521,\n 36.689764\n ],\n [\n 120.589751,\n 36.694497\n ],\n [\n 120.586118,\n 36.698829\n ],\n [\n 120.596542,\n 36.708052\n ],\n [\n 120.58525,\n 36.728501\n ],\n [\n 120.584065,\n 36.735236\n ],\n [\n 120.562586,\n 36.736479\n ],\n [\n 120.560375,\n 36.742492\n ],\n [\n 120.546397,\n 36.744616\n ],\n [\n 120.544502,\n 36.76213\n ],\n [\n 120.540791,\n 36.7679\n ],\n [\n 120.5554,\n 36.778718\n ],\n [\n 120.56377,\n 36.795343\n ],\n [\n 120.563454,\n 36.802953\n ],\n [\n 120.590382,\n 36.801552\n ],\n [\n 120.601517,\n 36.804996\n ],\n [\n 120.612336,\n 36.829223\n ],\n [\n 120.609809,\n 36.832906\n ],\n [\n 120.589751,\n 36.838791\n ],\n [\n 120.58754,\n 36.843635\n ],\n [\n 120.595989,\n 36.852681\n ],\n [\n 120.588408,\n 36.859045\n ],\n [\n 120.57988,\n 36.858885\n ],\n [\n 120.576642,\n 36.879894\n ],\n [\n 120.592909,\n 36.882134\n ],\n [\n 120.622838,\n 36.890856\n ],\n [\n 120.622838,\n 36.907377\n ],\n [\n 120.617389,\n 36.911136\n ],\n [\n 120.592909,\n 36.912216\n ],\n [\n 120.574984,\n 36.927053\n ],\n [\n 120.571114,\n 36.948682\n ],\n [\n 120.563218,\n 36.95172\n ],\n [\n 120.560296,\n 36.960674\n ],\n [\n 120.566534,\n 36.96559\n ],\n [\n 120.568508,\n 36.983293\n ],\n [\n 120.574036,\n 36.987568\n ],\n [\n 120.575931,\n 36.999074\n ],\n [\n 120.582328,\n 37.001791\n ],\n [\n 120.593857,\n 36.991244\n ],\n [\n 120.606413,\n 37.001192\n ],\n [\n 120.601754,\n 37.012696\n ],\n [\n 120.613915,\n 37.023839\n ],\n [\n 120.606176,\n 37.047157\n ],\n [\n 120.586513,\n 37.048515\n ],\n [\n 120.58446,\n 37.058136\n ],\n [\n 120.570877,\n 37.046399\n ],\n [\n 120.558953,\n 37.047437\n ],\n [\n 120.549793,\n 37.041288\n ],\n [\n 120.541738,\n 37.044163\n ],\n [\n 120.533289,\n 37.053944\n ],\n [\n 120.539843,\n 37.060371\n ],\n [\n 120.536368,\n 37.081963\n ],\n [\n 120.547661,\n 37.113003\n ],\n [\n 120.542528,\n 37.128677\n ],\n [\n 120.527998,\n 37.136733\n ],\n [\n 120.527129,\n 37.143352\n ],\n [\n 120.517258,\n 37.148974\n ],\n [\n 120.506834,\n 37.148854\n ],\n [\n 120.505729,\n 37.143551\n ],\n [\n 120.493805,\n 37.1345\n ],\n [\n 120.493015,\n 37.126723\n ],\n [\n 120.478643,\n 37.124211\n ],\n [\n 120.462928,\n 37.115157\n ],\n [\n 120.440265,\n 37.122655\n ],\n [\n 120.439475,\n 37.116912\n ],\n [\n 120.415153,\n 37.110569\n ],\n [\n 120.407098,\n 37.112803\n ],\n [\n 120.412942,\n 37.103149\n ],\n [\n 120.408914,\n 37.09517\n ],\n [\n 120.398096,\n 37.096447\n ],\n [\n 120.388225,\n 37.104227\n ],\n [\n 120.369667,\n 37.104626\n ],\n [\n 120.362244,\n 37.100477\n ],\n [\n 120.357822,\n 37.084357\n ],\n [\n 120.348583,\n 37.077094\n ],\n [\n 120.34574,\n 37.087789\n ],\n [\n 120.336343,\n 37.092058\n ],\n [\n 120.336896,\n 37.104267\n ],\n [\n 120.331684,\n 37.111966\n ],\n [\n 120.320628,\n 37.10654\n ],\n [\n 120.315337,\n 37.113043\n ],\n [\n 120.300176,\n 37.119584\n ],\n [\n 120.303413,\n 37.130153\n ],\n [\n 120.280828,\n 37.13111\n ],\n [\n 120.264087,\n 37.114718\n ],\n [\n 120.245688,\n 37.118906\n ],\n [\n 120.236606,\n 37.125965\n ],\n [\n 120.231237,\n 37.106301\n ],\n [\n 120.229894,\n 37.089544\n ],\n [\n 120.220497,\n 37.08711\n ],\n [\n 120.214101,\n 37.07019\n ],\n [\n 120.21647,\n 37.056699\n ],\n [\n 120.205335,\n 37.038374\n ],\n [\n 120.193411,\n 37.034261\n ],\n [\n 120.189621,\n 37.038094\n ],\n [\n 120.180697,\n 37.032544\n ],\n [\n 120.173037,\n 37.034421\n ],\n [\n 120.166404,\n 37.025795\n ],\n [\n 120.167273,\n 37.017968\n ],\n [\n 120.159929,\n 37.013375\n ],\n [\n 120.142319,\n 37.015292\n ],\n [\n 120.138134,\n 37.022201\n ],\n [\n 120.123051,\n 37.01645\n ],\n [\n 120.101571,\n 37.014293\n ],\n [\n 120.09249,\n 37.017928\n ],\n [\n 120.049374,\n 37.020045\n ],\n [\n 120.035238,\n 36.998395\n ],\n [\n 120.024104,\n 36.999913\n ],\n [\n 120.002309,\n 37.013494\n ],\n [\n 119.993543,\n 37.012176\n ],\n [\n 119.980198,\n 37.018088\n ],\n [\n 119.975618,\n 37.011098\n ],\n [\n 119.961561,\n 37.013654\n ],\n [\n 119.949716,\n 37.006185\n ],\n [\n 119.939608,\n 37.004108\n ],\n [\n 119.923341,\n 36.993961\n ],\n [\n 119.902257,\n 36.9948\n ],\n [\n 119.900045,\n 36.997556\n ],\n [\n 119.85148,\n 37.002031\n ],\n [\n 119.829606,\n 37.002031\n ],\n [\n 119.820209,\n 36.999594\n ],\n [\n 119.804968,\n 37.013814\n ],\n [\n 119.771881,\n 37.006984\n ],\n [\n 119.769906,\n 36.996597\n ],\n [\n 119.750559,\n 36.990844\n ],\n [\n 119.743057,\n 36.992483\n ],\n [\n 119.731133,\n 36.988487\n ],\n [\n 119.722289,\n 36.993401\n ],\n [\n 119.716998,\n 37.007144\n ],\n [\n 119.681699,\n 36.998475\n ],\n [\n 119.66251,\n 37.008262\n ],\n [\n 119.629344,\n 37.01621\n ],\n [\n 119.61971,\n 37.012895\n ],\n [\n 119.619078,\n 37.017848\n ],\n [\n 119.60976,\n 37.013894\n ],\n [\n 119.613155,\n 37.034101\n ],\n [\n 119.606048,\n 37.04037\n ],\n [\n 119.563406,\n 37.058495\n ],\n [\n 119.559615,\n 37.071786\n ],\n [\n 119.576198,\n 37.087509\n ],\n [\n 119.568696,\n 37.100157\n ],\n [\n 119.576514,\n 37.127561\n ]\n ]\n ],\n [\n [\n [\n 121.508621,\n 37.55253\n ],\n [\n 121.50712,\n 37.556892\n ],\n [\n 121.520308,\n 37.565139\n ],\n [\n 121.526625,\n 37.562522\n ],\n [\n 121.508621,\n 37.55253\n ]\n ]\n ],\n [\n [\n [\n 120.728339,\n 37.92393\n ],\n [\n 120.725733,\n 37.928586\n ],\n [\n 120.721548,\n 37.931308\n ],\n [\n 120.722101,\n 37.94551\n ],\n [\n 120.732446,\n 37.948192\n ],\n [\n 120.737736,\n 37.955174\n ],\n [\n 120.746423,\n 37.951466\n ],\n [\n 120.758031,\n 37.929454\n ],\n [\n 120.765375,\n 37.922904\n ],\n [\n 120.759058,\n 37.911776\n ],\n [\n 120.764901,\n 37.896186\n ],\n [\n 120.760558,\n 37.890581\n ],\n [\n 120.753056,\n 37.894883\n ],\n [\n 120.740974,\n 37.908777\n ],\n [\n 120.727708,\n 37.909448\n ],\n [\n 120.721627,\n 37.917182\n ],\n [\n 120.728339,\n 37.92393\n ]\n ]\n ],\n [\n [\n [\n 120.692409,\n 37.983842\n ],\n [\n 120.685539,\n 37.991332\n ],\n [\n 120.697147,\n 37.995117\n ],\n [\n 120.71602,\n 37.987311\n ],\n [\n 120.724707,\n 37.987429\n ],\n [\n 120.730787,\n 37.974142\n ],\n [\n 120.736631,\n 37.971146\n ],\n [\n 120.732525,\n 37.961484\n ],\n [\n 120.706465,\n 37.966808\n ],\n [\n 120.696278,\n 37.974024\n ],\n [\n 120.692409,\n 37.983842\n ]\n ]\n ],\n [\n [\n [\n 120.653004,\n 37.980017\n ],\n [\n 120.658611,\n 37.975483\n ],\n [\n 120.653952,\n 37.963969\n ],\n [\n 120.64416,\n 37.964757\n ],\n [\n 120.653004,\n 37.980017\n ]\n ]\n ],\n [\n [\n [\n 120.452584,\n 37.768856\n ],\n [\n 120.443976,\n 37.770991\n ],\n [\n 120.435526,\n 37.786608\n ],\n [\n 120.453136,\n 37.788387\n ],\n [\n 120.463323,\n 37.786054\n ],\n [\n 120.452584,\n 37.768856\n ]\n ]\n ],\n [\n [\n [\n 120.682775,\n 37.92831\n ],\n [\n 120.673536,\n 37.929178\n ],\n [\n 120.679379,\n 37.937147\n ],\n [\n 120.678511,\n 37.944642\n ],\n [\n 120.692804,\n 37.94693\n ],\n [\n 120.687829,\n 37.931308\n ],\n [\n 120.682775,\n 37.92831\n ]\n ]\n ],\n [\n [\n [\n 120.750687,\n 38.150304\n ],\n [\n 120.73821,\n 38.161711\n ],\n [\n 120.738052,\n 38.174688\n ],\n [\n 120.742554,\n 38.198986\n ],\n [\n 120.747607,\n 38.202759\n ],\n [\n 120.753688,\n 38.195291\n ],\n [\n 120.760321,\n 38.176615\n ],\n [\n 120.777694,\n 38.172565\n ],\n [\n 120.787328,\n 38.158682\n ],\n [\n 120.771456,\n 38.156558\n ],\n [\n 120.760479,\n 38.15939\n ],\n [\n 120.750687,\n 38.150304\n ]\n ]\n ],\n [\n [\n [\n 120.91881,\n 38.34511\n ],\n [\n 120.90657,\n 38.349778\n ],\n [\n 120.895277,\n 38.363232\n ],\n [\n 120.900015,\n 38.3719\n ],\n [\n 120.91494,\n 38.373429\n ],\n [\n 120.913993,\n 38.364566\n ],\n [\n 120.921021,\n 38.362997\n ],\n [\n 120.914151,\n 38.354682\n ],\n [\n 120.91881,\n 38.34511\n ]\n ]\n ],\n [\n [\n [\n 120.841342,\n 38.335655\n ],\n [\n 120.842843,\n 38.355898\n ],\n [\n 120.85682,\n 38.343188\n ],\n [\n 120.841342,\n 38.335655\n ]\n ]\n ],\n [\n [\n [\n 120.62655,\n 37.945786\n ],\n [\n 120.604913,\n 37.956712\n ],\n [\n 120.598279,\n 37.970633\n ],\n [\n 120.60207,\n 37.97848\n ],\n [\n 120.614152,\n 37.984512\n ],\n [\n 120.632472,\n 37.978913\n ],\n [\n 120.630972,\n 37.952018\n ],\n [\n 120.62655,\n 37.945786\n ]\n ]\n ],\n [\n [\n [\n 120.903332,\n 38.381742\n ],\n [\n 120.898515,\n 38.386487\n ],\n [\n 120.91573,\n 38.401933\n ],\n [\n 120.931997,\n 38.391231\n ],\n [\n 120.931918,\n 38.382291\n ],\n [\n 120.922126,\n 38.385271\n ],\n [\n 120.903332,\n 38.381742\n ]\n ]\n ],\n [\n [\n [\n 120.802253,\n 38.284041\n ],\n [\n 120.797041,\n 38.288282\n ],\n [\n 120.808492,\n 38.311913\n ],\n [\n 120.816546,\n 38.318075\n ],\n [\n 120.835262,\n 38.320077\n ],\n [\n 120.849871,\n 38.310343\n ],\n [\n 120.84308,\n 38.30057\n ],\n [\n 120.82389,\n 38.297939\n ],\n [\n 120.81552,\n 38.288714\n ],\n [\n 120.802253,\n 38.284041\n ]\n ]\n ],\n [\n [\n [\n 120.943843,\n 38.019907\n ],\n [\n 120.932708,\n 38.026882\n ],\n [\n 120.931287,\n 38.035353\n ],\n [\n 120.94787,\n 38.032398\n ],\n [\n 120.951108,\n 38.02436\n ],\n [\n 120.943843,\n 38.019907\n ]\n ]\n ],\n [\n [\n [\n 119.821394,\n 37.309121\n ],\n [\n 119.818867,\n 37.31656\n ],\n [\n 119.825895,\n 37.315168\n ],\n [\n 119.821394,\n 37.309121\n ]\n ]\n ],\n [\n [\n [\n 121.388668,\n 36.266442\n ],\n [\n 121.391432,\n 36.271926\n ],\n [\n 121.396644,\n 36.264183\n ],\n [\n 121.388668,\n 36.266442\n ]\n ]\n ],\n [\n [\n [\n 120.645818,\n 38.132011\n ],\n [\n 120.637763,\n 38.139171\n ],\n [\n 120.640922,\n 38.148141\n ],\n [\n 120.647318,\n 38.149557\n ],\n [\n 120.653715,\n 38.141532\n ],\n [\n 120.645818,\n 38.132011\n ]\n ]\n ],\n [\n [\n [\n 120.878141,\n 38.026961\n ],\n [\n 120.87672,\n 38.018213\n ],\n [\n 120.872693,\n 38.027552\n ],\n [\n 120.878141,\n 38.026961\n ]\n ]\n ],\n [\n [\n [\n 120.645423,\n 38.05501\n ],\n [\n 120.641238,\n 38.061233\n ],\n [\n 120.644791,\n 38.06966\n ],\n [\n 120.652056,\n 38.069109\n ],\n [\n 120.652767,\n 38.058988\n ],\n [\n 120.645423,\n 38.05501\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 370700,\n \"name\": \"潍坊市\",\n \"center\": [\n 119.107078,\n 36.70925\n ],\n \"centroid\": [\n 119.077723,\n 36.554349\n ],\n \"childrenNum\": 12,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 6,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 118.467411,\n 36.945484\n ],\n [\n 118.47665,\n 36.957077\n ],\n [\n 118.503736,\n 36.95156\n ],\n [\n 118.503183,\n 36.944285\n ],\n [\n 118.524583,\n 36.945284\n ],\n [\n 118.52711,\n 36.939687\n ],\n [\n 118.537771,\n 36.936769\n ],\n [\n 118.55467,\n 36.938368\n ],\n [\n 118.560751,\n 36.946564\n ],\n [\n 118.557434,\n 36.96539\n ],\n [\n 118.559803,\n 36.977059\n ],\n [\n 118.552301,\n 36.979657\n ],\n [\n 118.553959,\n 37.000233\n ],\n [\n 118.564146,\n 36.99416\n ],\n [\n 118.580493,\n 36.994999\n ],\n [\n 118.566199,\n 36.999034\n ],\n [\n 118.571174,\n 37.004148\n ],\n [\n 118.590206,\n 37.001351\n ],\n [\n 118.583572,\n 37.008422\n ],\n [\n 118.588389,\n 37.017409\n ],\n [\n 118.57149,\n 37.022081\n ],\n [\n 118.545826,\n 37.023519\n ],\n [\n 118.545431,\n 37.038494\n ],\n [\n 118.56004,\n 37.041408\n ],\n [\n 118.557592,\n 37.051469\n ],\n [\n 118.561303,\n 37.063325\n ],\n [\n 118.580414,\n 37.063325\n ],\n [\n 118.591469,\n 37.068474\n ],\n [\n 118.610895,\n 37.063005\n ],\n [\n 118.631901,\n 37.066757\n ],\n [\n 118.632138,\n 37.070429\n ],\n [\n 118.654091,\n 37.076935\n ],\n [\n 118.655512,\n 37.082681\n ],\n [\n 118.665146,\n 37.081763\n ],\n [\n 118.668384,\n 37.091539\n ],\n [\n 118.667041,\n 37.11392\n ],\n [\n 118.673754,\n 37.144309\n ],\n [\n 118.653617,\n 37.149692\n ],\n [\n 118.649195,\n 37.164243\n ],\n [\n 118.64572,\n 37.159579\n ],\n [\n 118.634191,\n 37.163366\n ],\n [\n 118.633638,\n 37.171178\n ],\n [\n 118.645483,\n 37.178153\n ],\n [\n 118.649274,\n 37.189112\n ],\n [\n 118.660408,\n 37.187877\n ],\n [\n 118.668779,\n 37.198436\n ],\n [\n 118.672332,\n 37.215129\n ],\n [\n 118.680624,\n 37.229269\n ],\n [\n 118.709684,\n 37.241256\n ],\n [\n 118.728399,\n 37.252764\n ],\n [\n 118.777991,\n 37.280112\n ],\n [\n 118.821897,\n 37.288788\n ],\n [\n 118.856959,\n 37.293842\n ],\n [\n 119.039928,\n 37.304466\n ],\n [\n 119.045376,\n 37.298935\n ],\n [\n 119.052089,\n 37.276848\n ],\n [\n 119.054142,\n 37.254953\n ],\n [\n 119.066935,\n 37.241814\n ],\n [\n 119.084465,\n 37.239424\n ],\n [\n 119.091336,\n 37.257581\n ],\n [\n 119.108393,\n 37.260328\n ],\n [\n 119.128214,\n 37.254874\n ],\n [\n 119.134294,\n 37.263314\n ],\n [\n 119.135479,\n 37.282102\n ],\n [\n 119.139032,\n 37.288191\n ],\n [\n 119.157748,\n 37.288191\n ],\n [\n 119.16983,\n 37.278599\n ],\n [\n 119.166513,\n 37.27438\n ],\n [\n 119.15759,\n 37.281226\n ],\n [\n 119.142586,\n 37.279475\n ],\n [\n 119.141559,\n 37.262557\n ],\n [\n 119.128451,\n 37.235721\n ],\n [\n 119.136979,\n 37.231181\n ],\n [\n 119.20426,\n 37.280112\n ],\n [\n 119.212788,\n 37.273305\n ],\n [\n 119.190993,\n 37.259452\n ],\n [\n 119.191941,\n 37.254117\n ],\n [\n 119.202365,\n 37.253759\n ],\n [\n 119.204418,\n 37.246313\n ],\n [\n 119.194231,\n 37.221741\n ],\n [\n 119.191941,\n 37.197639\n ],\n [\n 119.205365,\n 37.194292\n ],\n [\n 119.204102,\n 37.21007\n ],\n [\n 119.206945,\n 37.223175\n ],\n [\n 119.222106,\n 37.225007\n ],\n [\n 119.232767,\n 37.221821\n ],\n [\n 119.244533,\n 37.211424\n ],\n [\n 119.261432,\n 37.207998\n ],\n [\n 119.282201,\n 37.21242\n ],\n [\n 119.296336,\n 37.20505\n ],\n [\n 119.298389,\n 37.19736\n ],\n [\n 119.291519,\n 37.177635\n ],\n [\n 119.291756,\n 37.164801\n ],\n [\n 119.297126,\n 37.158781\n ],\n [\n 119.299337,\n 37.142594\n ],\n [\n 119.30826,\n 37.136733\n ],\n [\n 119.320421,\n 37.120501\n ],\n [\n 119.329582,\n 37.115715\n ],\n [\n 119.342296,\n 37.11735\n ],\n [\n 119.351298,\n 37.122894\n ],\n [\n 119.36567,\n 37.126045\n ],\n [\n 119.425528,\n 37.125447\n ],\n [\n 119.445585,\n 37.130831\n ],\n [\n 119.489729,\n 37.13446\n ],\n [\n 119.489965,\n 37.142355\n ],\n [\n 119.479068,\n 37.153399\n ],\n [\n 119.481832,\n 37.155791\n ],\n [\n 119.493282,\n 37.143591\n ],\n [\n 119.493282,\n 37.133383\n ],\n [\n 119.503153,\n 37.128279\n ],\n [\n 119.51942,\n 37.130312\n ],\n [\n 119.576514,\n 37.127561\n ],\n [\n 119.568696,\n 37.100157\n ],\n [\n 119.576198,\n 37.087509\n ],\n [\n 119.559615,\n 37.071786\n ],\n [\n 119.563406,\n 37.058495\n ],\n [\n 119.606048,\n 37.04037\n ],\n [\n 119.613155,\n 37.034101\n ],\n [\n 119.60976,\n 37.013894\n ],\n [\n 119.604548,\n 36.996038\n ],\n [\n 119.598072,\n 36.989406\n ],\n [\n 119.5837,\n 36.950441\n ],\n [\n 119.599968,\n 36.920614\n ],\n [\n 119.599652,\n 36.878253\n ],\n [\n 119.597757,\n 36.857244\n ],\n [\n 119.56767,\n 36.805717\n ],\n [\n 119.563721,\n 36.802753\n ],\n [\n 119.550613,\n 36.80868\n ],\n [\n 119.539162,\n 36.799949\n ],\n [\n 119.539162,\n 36.787732\n ],\n [\n 119.532766,\n 36.78008\n ],\n [\n 119.530555,\n 36.765256\n ],\n [\n 119.534977,\n 36.743333\n ],\n [\n 119.547059,\n 36.725454\n ],\n [\n 119.561036,\n 36.720884\n ],\n [\n 119.567433,\n 36.713065\n ],\n [\n 119.579831,\n 36.711581\n ],\n [\n 119.587412,\n 36.696101\n ],\n [\n 119.596651,\n 36.689884\n ],\n [\n 119.607154,\n 36.667379\n ],\n [\n 119.61355,\n 36.66453\n ],\n [\n 119.617025,\n 36.652532\n ],\n [\n 119.625079,\n 36.638807\n ],\n [\n 119.651297,\n 36.623633\n ],\n [\n 119.670328,\n 36.616246\n ],\n [\n 119.681857,\n 36.606891\n ],\n [\n 119.701125,\n 36.602634\n ],\n [\n 119.730107,\n 36.581027\n ],\n [\n 119.72758,\n 36.562749\n ],\n [\n 119.74748,\n 36.571788\n ],\n [\n 119.755929,\n 36.565521\n ],\n [\n 119.784516,\n 36.554673\n ],\n [\n 119.798019,\n 36.551619\n ],\n [\n 119.826763,\n 36.54101\n ],\n [\n 119.917576,\n 36.525858\n ],\n [\n 119.920261,\n 36.522079\n ],\n [\n 119.923025,\n 36.495464\n ],\n [\n 119.936687,\n 36.496389\n ],\n [\n 119.936292,\n 36.511507\n ],\n [\n 119.951375,\n 36.519788\n ],\n [\n 119.971985,\n 36.522441\n ],\n [\n 119.974749,\n 36.515688\n ],\n [\n 119.997571,\n 36.504431\n ],\n [\n 120.010364,\n 36.509255\n ],\n [\n 120.004204,\n 36.489512\n ],\n [\n 120.010758,\n 36.484445\n ],\n [\n 120.004125,\n 36.477447\n ],\n [\n 120.006889,\n 36.468799\n ],\n [\n 120.012812,\n 36.467833\n ],\n [\n 120.011864,\n 36.454236\n ],\n [\n 119.996623,\n 36.446309\n ],\n [\n 119.994175,\n 36.450333\n ],\n [\n 119.968432,\n 36.450051\n ],\n [\n 119.953981,\n 36.444217\n ],\n [\n 119.949795,\n 36.446511\n ],\n [\n 119.935976,\n 36.427436\n ],\n [\n 119.933923,\n 36.42007\n ],\n [\n 119.925236,\n 36.419346\n ],\n [\n 119.926421,\n 36.403324\n ],\n [\n 119.941425,\n 36.39503\n ],\n [\n 119.945452,\n 36.384682\n ],\n [\n 119.936371,\n 36.380655\n ],\n [\n 119.93029,\n 36.385165\n ],\n [\n 119.909837,\n 36.384359\n ],\n [\n 119.90431,\n 36.38154\n ],\n [\n 119.904784,\n 36.369942\n ],\n [\n 119.895939,\n 36.34827\n ],\n [\n 119.896966,\n 36.334047\n ],\n [\n 119.891991,\n 36.318773\n ],\n [\n 119.865379,\n 36.308898\n ],\n [\n 119.862773,\n 36.302368\n ],\n [\n 119.854402,\n 36.302328\n ],\n [\n 119.848795,\n 36.292692\n ],\n [\n 119.83387,\n 36.278822\n ],\n [\n 119.82929,\n 36.258859\n ],\n [\n 119.820446,\n 36.257367\n ],\n [\n 119.82092,\n 36.244499\n ],\n [\n 119.808048,\n 36.232839\n ],\n [\n 119.819498,\n 36.211856\n ],\n [\n 119.828816,\n 36.210685\n ],\n [\n 119.823131,\n 36.19894\n ],\n [\n 119.831738,\n 36.180612\n ],\n [\n 119.82242,\n 36.177987\n ],\n [\n 119.821315,\n 36.171285\n ],\n [\n 119.81326,\n 36.175242\n ],\n [\n 119.813023,\n 36.167691\n ],\n [\n 119.792333,\n 36.171648\n ],\n [\n 119.782778,\n 36.165308\n ],\n [\n 119.772354,\n 36.167691\n ],\n [\n 119.748111,\n 36.158645\n ],\n [\n 119.733818,\n 36.163572\n ],\n [\n 119.732792,\n 36.172536\n ],\n [\n 119.723473,\n 36.175565\n ],\n [\n 119.691728,\n 36.176292\n ],\n [\n 119.681305,\n 36.18045\n ],\n [\n 119.671039,\n 36.177866\n ],\n [\n 119.660852,\n 36.154122\n ],\n [\n 119.649954,\n 36.137157\n ],\n [\n 119.651218,\n 36.130531\n ],\n [\n 119.643716,\n 36.127178\n ],\n [\n 119.657614,\n 36.108631\n ],\n [\n 119.657061,\n 36.100872\n ],\n [\n 119.632187,\n 36.091535\n ],\n [\n 119.633608,\n 36.067683\n ],\n [\n 119.666695,\n 36.062993\n ],\n [\n 119.675698,\n 36.064085\n ],\n [\n 119.695677,\n 36.053045\n ],\n [\n 119.704126,\n 36.055269\n ],\n [\n 119.717314,\n 36.044229\n ],\n [\n 119.706495,\n 36.028292\n ],\n [\n 119.681068,\n 36.012068\n ],\n [\n 119.689122,\n 36.000212\n ],\n [\n 119.684858,\n 35.982648\n ],\n [\n 119.690149,\n 35.963702\n ],\n [\n 119.701757,\n 35.944469\n ],\n [\n 119.701362,\n 35.923732\n ],\n [\n 119.716208,\n 35.927337\n ],\n [\n 119.721262,\n 35.906718\n ],\n [\n 119.727738,\n 35.902544\n ],\n [\n 119.738003,\n 35.873123\n ],\n [\n 119.736898,\n 35.86303\n ],\n [\n 119.72221,\n 35.865138\n ],\n [\n 119.725211,\n 35.856746\n ],\n [\n 119.71834,\n 35.853138\n ],\n [\n 119.704047,\n 35.863962\n ],\n [\n 119.68699,\n 35.861814\n ],\n [\n 119.676014,\n 35.842515\n ],\n [\n 119.664326,\n 35.841015\n ],\n [\n 119.649796,\n 35.845191\n ],\n [\n 119.629344,\n 35.833878\n ],\n [\n 119.622631,\n 35.816114\n ],\n [\n 119.612445,\n 35.812707\n ],\n [\n 119.60897,\n 35.799279\n ],\n [\n 119.617972,\n 35.789623\n ],\n [\n 119.611576,\n 35.776597\n ],\n [\n 119.596256,\n 35.773756\n ],\n [\n 119.591992,\n 35.753218\n ],\n [\n 119.605495,\n 35.747454\n ],\n [\n 119.627843,\n 35.722077\n ],\n [\n 119.624685,\n 35.712817\n ],\n [\n 119.614182,\n 35.716675\n ],\n [\n 119.601231,\n 35.709446\n ],\n [\n 119.588833,\n 35.715701\n ],\n [\n 119.576988,\n 35.71237\n ],\n [\n 119.566485,\n 35.714523\n ],\n [\n 119.560563,\n 35.721752\n ],\n [\n 119.545085,\n 35.726747\n ],\n [\n 119.527317,\n 35.723214\n ],\n [\n 119.525422,\n 35.730604\n ],\n [\n 119.504101,\n 35.752325\n ],\n [\n 119.48807,\n 35.754599\n ],\n [\n 119.48657,\n 35.771646\n ],\n [\n 119.496599,\n 35.779235\n ],\n [\n 119.493282,\n 35.789866\n ],\n [\n 119.482385,\n 35.799725\n ],\n [\n 119.464696,\n 35.80861\n ],\n [\n 119.455693,\n 35.809056\n ],\n [\n 119.444322,\n 35.804026\n ],\n [\n 119.427739,\n 35.802078\n ],\n [\n 119.397731,\n 35.786823\n ],\n [\n 119.390466,\n 35.778707\n ],\n [\n 119.375857,\n 35.770712\n ],\n [\n 119.368829,\n 35.770834\n ],\n [\n 119.374041,\n 35.816154\n ],\n [\n 119.372382,\n 35.830025\n ],\n [\n 119.358247,\n 35.84511\n ],\n [\n 119.371435,\n 35.860476\n ],\n [\n 119.360695,\n 35.884066\n ],\n [\n 119.345533,\n 35.893792\n ],\n [\n 119.315999,\n 35.887552\n ],\n [\n 119.298153,\n 35.893022\n ],\n [\n 119.294441,\n 35.911336\n ],\n [\n 119.281964,\n 35.910202\n ],\n [\n 119.240427,\n 35.884269\n ],\n [\n 119.217053,\n 35.879527\n ],\n [\n 119.190598,\n 35.879446\n ],\n [\n 119.169119,\n 35.894846\n ],\n [\n 119.161854,\n 35.894481\n ],\n [\n 119.158221,\n 35.882486\n ],\n [\n 119.135637,\n 35.892982\n ],\n [\n 119.144718,\n 35.904449\n ],\n [\n 119.151746,\n 35.905502\n ],\n [\n 119.169672,\n 35.91721\n ],\n [\n 119.183412,\n 35.91875\n ],\n [\n 119.179385,\n 35.926163\n ],\n [\n 119.182623,\n 35.962285\n ],\n [\n 119.178595,\n 35.97107\n ],\n [\n 119.155063,\n 35.965767\n ],\n [\n 119.153246,\n 35.971192\n ],\n [\n 119.134373,\n 35.968601\n ],\n [\n 119.121817,\n 35.962731\n ],\n [\n 119.088888,\n 35.963176\n ],\n [\n 119.07878,\n 35.959289\n ],\n [\n 119.066619,\n 35.963986\n ],\n [\n 119.060538,\n 35.978195\n ],\n [\n 119.05201,\n 35.9803\n ],\n [\n 119.021054,\n 35.977426\n ],\n [\n 119.015606,\n 35.995923\n ],\n [\n 119.024924,\n 36.003571\n ],\n [\n 119.023739,\n 36.011219\n ],\n [\n 119.014105,\n 36.013404\n ],\n [\n 119.017659,\n 36.024044\n ],\n [\n 119.024134,\n 36.02631\n ],\n [\n 119.035584,\n 36.02275\n ],\n [\n 119.047903,\n 36.024813\n ],\n [\n 119.052089,\n 36.037838\n ],\n [\n 119.040322,\n 36.042934\n ],\n [\n 119.042534,\n 36.055512\n ],\n [\n 119.049641,\n 36.066632\n ],\n [\n 119.063539,\n 36.075042\n ],\n [\n 119.066935,\n 36.081631\n ],\n [\n 119.048851,\n 36.092707\n ],\n [\n 119.038506,\n 36.090444\n ],\n [\n 119.020344,\n 36.104307\n ],\n [\n 119.013868,\n 36.09881\n ],\n [\n 119.000523,\n 36.099497\n ],\n [\n 118.988756,\n 36.092343\n ],\n [\n 118.970278,\n 36.09873\n ],\n [\n 118.970041,\n 36.104671\n ],\n [\n 118.958512,\n 36.104145\n ],\n [\n 118.954642,\n 36.1115\n ],\n [\n 118.943271,\n 36.119582\n ],\n [\n 118.936322,\n 36.11344\n ],\n [\n 118.916185,\n 36.111702\n ],\n [\n 118.920765,\n 36.105721\n ],\n [\n 118.908288,\n 36.091292\n ],\n [\n 118.886493,\n 36.088584\n ],\n [\n 118.880886,\n 36.08438\n ],\n [\n 118.875911,\n 36.091535\n ],\n [\n 118.860513,\n 36.101316\n ],\n [\n 118.865961,\n 36.113682\n ],\n [\n 118.860197,\n 36.114733\n ],\n [\n 118.858302,\n 36.129966\n ],\n [\n 118.863908,\n 36.139298\n ],\n [\n 118.858302,\n 36.143256\n ],\n [\n 118.859802,\n 36.16232\n ],\n [\n 118.85459,\n 36.170194\n ],\n [\n 118.846614,\n 36.172092\n ],\n [\n 118.844561,\n 36.18473\n ],\n [\n 118.848746,\n 36.188606\n ],\n [\n 118.847009,\n 36.199263\n ],\n [\n 118.835796,\n 36.203138\n ],\n [\n 118.809026,\n 36.198738\n ],\n [\n 118.802076,\n 36.202855\n ],\n [\n 118.78573,\n 36.197487\n ],\n [\n 118.766383,\n 36.206649\n ],\n [\n 118.745535,\n 36.191754\n ],\n [\n 118.751142,\n 36.183115\n ],\n [\n 118.741824,\n 36.165551\n ],\n [\n 118.733532,\n 36.166802\n ],\n [\n 118.73298,\n 36.1519\n ],\n [\n 118.736454,\n 36.146528\n ],\n [\n 118.72603,\n 36.141035\n ],\n [\n 118.714659,\n 36.154485\n ],\n [\n 118.703761,\n 36.150446\n ],\n [\n 118.701235,\n 36.144509\n ],\n [\n 118.679913,\n 36.152062\n ],\n [\n 118.683388,\n 36.158564\n ],\n [\n 118.675491,\n 36.170194\n ],\n [\n 118.666015,\n 36.168983\n ],\n [\n 118.653143,\n 36.176695\n ],\n [\n 118.644299,\n 36.177018\n ],\n [\n 118.640824,\n 36.171042\n ],\n [\n 118.622109,\n 36.17718\n ],\n [\n 118.606236,\n 36.164218\n ],\n [\n 118.581914,\n 36.151456\n ],\n [\n 118.572201,\n 36.156424\n ],\n [\n 118.563988,\n 36.147094\n ],\n [\n 118.565015,\n 36.130087\n ],\n [\n 118.556881,\n 36.130935\n ],\n [\n 118.541719,\n 36.124996\n ],\n [\n 118.535797,\n 36.118531\n ],\n [\n 118.515502,\n 36.109884\n ],\n [\n 118.509974,\n 36.114612\n ],\n [\n 118.504762,\n 36.105802\n ],\n [\n 118.526716,\n 36.104671\n ],\n [\n 118.529479,\n 36.093879\n ],\n [\n 118.522925,\n 36.084784\n ],\n [\n 118.507842,\n 36.074961\n ],\n [\n 118.496866,\n 36.067683\n ],\n [\n 118.48044,\n 36.074071\n ],\n [\n 118.482099,\n 36.092546\n ],\n [\n 118.478545,\n 36.098245\n ],\n [\n 118.484468,\n 36.104064\n ],\n [\n 118.479493,\n 36.118814\n ],\n [\n 118.492601,\n 36.127057\n ],\n [\n 118.487863,\n 36.131784\n ],\n [\n 118.462594,\n 36.14059\n ],\n [\n 118.457303,\n 36.13247\n ],\n [\n 118.447116,\n 36.140913\n ],\n [\n 118.440956,\n 36.132511\n ],\n [\n 118.428953,\n 36.132672\n ],\n [\n 118.412844,\n 36.127218\n ],\n [\n 118.402183,\n 36.131622\n ],\n [\n 118.405263,\n 36.141641\n ],\n [\n 118.402262,\n 36.162926\n ],\n [\n 118.387653,\n 36.174555\n ],\n [\n 118.374387,\n 36.203097\n ],\n [\n 118.382046,\n 36.207335\n ],\n [\n 118.386548,\n 36.239053\n ],\n [\n 118.379756,\n 36.245265\n ],\n [\n 118.368385,\n 36.248412\n ],\n [\n 118.350775,\n 36.263538\n ],\n [\n 118.31524,\n 36.24938\n ],\n [\n 118.306948,\n 36.252123\n ],\n [\n 118.315003,\n 36.266361\n ],\n [\n 118.31366,\n 36.277371\n ],\n [\n 118.317609,\n 36.288903\n ],\n [\n 118.310107,\n 36.295716\n ],\n [\n 118.315477,\n 36.304464\n ],\n [\n 118.30908,\n 36.307125\n ],\n [\n 118.304105,\n 36.321393\n ],\n [\n 118.291075,\n 36.326189\n ],\n [\n 118.300157,\n 36.338116\n ],\n [\n 118.269912,\n 36.339849\n ],\n [\n 118.261857,\n 36.345852\n ],\n [\n 118.262726,\n 36.352218\n ],\n [\n 118.256093,\n 36.363175\n ],\n [\n 118.239825,\n 36.376748\n ],\n [\n 118.235403,\n 36.389634\n ],\n [\n 118.251592,\n 36.401995\n ],\n [\n 118.250407,\n 36.411214\n ],\n [\n 118.227427,\n 36.408034\n ],\n [\n 118.224427,\n 36.414234\n ],\n [\n 118.228533,\n 36.430736\n ],\n [\n 118.232797,\n 36.432869\n ],\n [\n 118.22719,\n 36.451379\n ],\n [\n 118.233508,\n 36.456609\n ],\n [\n 118.229638,\n 36.467793\n ],\n [\n 118.216135,\n 36.478573\n ],\n [\n 118.212818,\n 36.490075\n ],\n [\n 118.218346,\n 36.497354\n ],\n [\n 118.210528,\n 36.503466\n ],\n [\n 118.213766,\n 36.513075\n ],\n [\n 118.210844,\n 36.526099\n ],\n [\n 118.221663,\n 36.531887\n ],\n [\n 118.214556,\n 36.539322\n ],\n [\n 118.191892,\n 36.546074\n ],\n [\n 118.183916,\n 36.561142\n ],\n [\n 118.180915,\n 36.5607\n ],\n [\n 118.180678,\n 36.577412\n ],\n [\n 118.176967,\n 36.582996\n ],\n [\n 118.180363,\n 36.593599\n ],\n [\n 118.189523,\n 36.599141\n ],\n [\n 118.200657,\n 36.612071\n ],\n [\n 118.214793,\n 36.621144\n ],\n [\n 118.20658,\n 36.637482\n ],\n [\n 118.199631,\n 36.639047\n ],\n [\n 118.215898,\n 36.648921\n ],\n [\n 118.221189,\n 36.664169\n ],\n [\n 118.230191,\n 36.660357\n ],\n [\n 118.226796,\n 36.668382\n ],\n [\n 118.215819,\n 36.668262\n ],\n [\n 118.21653,\n 36.6811\n ],\n [\n 118.228059,\n 36.694016\n ],\n [\n 118.245037,\n 36.690647\n ],\n [\n 118.238246,\n 36.697305\n ],\n [\n 118.227585,\n 36.697625\n ],\n [\n 118.237614,\n 36.712704\n ],\n [\n 118.227743,\n 36.717957\n ],\n [\n 118.234219,\n 36.726457\n ],\n [\n 118.254276,\n 36.731789\n ],\n [\n 118.264147,\n 36.72373\n ],\n [\n 118.277019,\n 36.719801\n ],\n [\n 118.284363,\n 36.72337\n ],\n [\n 118.276151,\n 36.731749\n ],\n [\n 118.27157,\n 36.744015\n ],\n [\n 118.279546,\n 36.753033\n ],\n [\n 118.298183,\n 36.753914\n ],\n [\n 118.297788,\n 36.777677\n ],\n [\n 118.307501,\n 36.776234\n ],\n [\n 118.318161,\n 36.77972\n ],\n [\n 118.321636,\n 36.770905\n ],\n [\n 118.350222,\n 36.768301\n ],\n [\n 118.388522,\n 36.791217\n ],\n [\n 118.419872,\n 36.796304\n ],\n [\n 118.424531,\n 36.802673\n ],\n [\n 118.438666,\n 36.809682\n ],\n [\n 118.44072,\n 36.828142\n ],\n [\n 118.435508,\n 36.838391\n ],\n [\n 118.450038,\n 36.83747\n ],\n [\n 118.453828,\n 36.857564\n ],\n [\n 118.461488,\n 36.854322\n ],\n [\n 118.460462,\n 36.846597\n ],\n [\n 118.480993,\n 36.852641\n ],\n [\n 118.479967,\n 36.860166\n ],\n [\n 118.465042,\n 36.861366\n ],\n [\n 118.476966,\n 36.876893\n ],\n [\n 118.482809,\n 36.879214\n ],\n [\n 118.483046,\n 36.900777\n ],\n [\n 118.474913,\n 36.905297\n ],\n [\n 118.481862,\n 36.914136\n ],\n [\n 118.48968,\n 36.914096\n ],\n [\n 118.496708,\n 36.924733\n ],\n [\n 118.492365,\n 36.931611\n ],\n [\n 118.494339,\n 36.941846\n ],\n [\n 118.467411,\n 36.945484\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 370800,\n \"name\": \"济宁市\",\n \"center\": [\n 116.587245,\n 35.415393\n ],\n \"centroid\": [\n 116.74105,\n 35.371092\n ],\n \"childrenNum\": 11,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 7,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 117.392342,\n 34.574909\n ],\n [\n 117.363045,\n 34.589241\n ],\n [\n 117.357991,\n 34.582693\n ],\n [\n 117.344014,\n 34.582075\n ],\n [\n 117.325378,\n 34.570996\n ],\n [\n 117.333037,\n 34.56177\n ],\n [\n 117.32135,\n 34.565436\n ],\n [\n 117.294264,\n 34.554025\n ],\n [\n 117.30303,\n 34.548999\n ],\n [\n 117.302477,\n 34.541253\n ],\n [\n 117.285341,\n 34.533012\n ],\n [\n 117.268047,\n 34.532806\n ],\n [\n 117.27547,\n 34.520113\n ],\n [\n 117.269705,\n 34.511664\n ],\n [\n 117.274364,\n 34.503544\n ],\n [\n 117.259282,\n 34.49736\n ],\n [\n 117.267494,\n 34.480003\n ],\n [\n 117.263625,\n 34.472622\n ],\n [\n 117.256044,\n 34.476292\n ],\n [\n 117.252332,\n 34.486518\n ],\n [\n 117.242698,\n 34.478519\n ],\n [\n 117.255096,\n 34.472539\n ],\n [\n 117.255886,\n 34.462023\n ],\n [\n 117.24791,\n 34.451052\n ],\n [\n 117.234644,\n 34.454476\n ],\n [\n 117.222325,\n 34.450599\n ],\n [\n 117.222088,\n 34.445731\n ],\n [\n 117.200214,\n 34.441606\n ],\n [\n 117.199503,\n 34.43451\n ],\n [\n 117.166099,\n 34.434675\n ],\n [\n 117.159861,\n 34.453115\n ],\n [\n 117.156623,\n 34.48091\n ],\n [\n 117.145963,\n 34.503956\n ],\n [\n 117.139803,\n 34.522875\n ],\n [\n 117.140593,\n 34.538699\n ],\n [\n 117.151253,\n 34.559257\n ],\n [\n 117.147621,\n 34.570255\n ],\n [\n 117.133486,\n 34.58607\n ],\n [\n 117.123694,\n 34.604682\n ],\n [\n 117.115244,\n 34.628146\n ],\n [\n 117.103952,\n 34.64897\n ],\n [\n 117.095897,\n 34.64753\n ],\n [\n 117.081525,\n 34.638188\n ],\n [\n 117.072996,\n 34.639094\n ],\n [\n 117.062336,\n 34.657735\n ],\n [\n 117.061704,\n 34.675713\n ],\n [\n 117.072049,\n 34.694181\n ],\n [\n 117.07734,\n 34.696484\n ],\n [\n 117.069048,\n 34.708287\n ],\n [\n 117.070469,\n 34.713714\n ],\n [\n 117.061151,\n 34.723993\n ],\n [\n 117.043225,\n 34.736531\n ],\n [\n 117.021904,\n 34.759219\n ],\n [\n 116.995687,\n 34.758274\n ],\n [\n 116.989685,\n 34.765136\n ],\n [\n 116.978472,\n 34.763616\n ],\n [\n 116.976814,\n 34.771259\n ],\n [\n 116.96789,\n 34.772984\n ],\n [\n 116.965837,\n 34.785063\n ],\n [\n 116.951623,\n 34.794553\n ],\n [\n 116.951149,\n 34.810571\n ],\n [\n 116.971681,\n 34.811885\n ],\n [\n 116.979183,\n 34.814966\n ],\n [\n 116.966074,\n 34.844487\n ],\n [\n 116.92888,\n 34.842886\n ],\n [\n 116.930144,\n 34.859675\n ],\n [\n 116.936303,\n 34.865093\n ],\n [\n 116.951465,\n 34.864313\n ],\n [\n 116.976892,\n 34.868541\n ],\n [\n 116.966943,\n 34.875599\n ],\n [\n 116.945226,\n 34.876789\n ],\n [\n 116.945305,\n 34.873794\n ],\n [\n 116.922168,\n 34.871413\n ],\n [\n 116.922326,\n 34.894515\n ],\n [\n 116.89903,\n 34.904689\n ],\n [\n 116.876129,\n 34.912524\n ],\n [\n 116.858125,\n 34.928355\n ],\n [\n 116.822115,\n 34.929299\n ],\n [\n 116.815877,\n 34.965298\n ],\n [\n 116.80877,\n 34.968823\n ],\n [\n 116.812166,\n 34.927945\n ],\n [\n 116.803874,\n 34.928314\n ],\n [\n 116.803716,\n 34.970339\n ],\n [\n 116.789107,\n 34.975094\n ],\n [\n 116.789107,\n 34.959804\n ],\n [\n 116.781605,\n 34.961895\n ],\n [\n 116.785474,\n 34.9473\n ],\n [\n 116.796925,\n 34.944143\n ],\n [\n 116.797635,\n 34.938771\n ],\n [\n 116.786975,\n 34.940453\n ],\n [\n 116.78121,\n 34.916585\n ],\n [\n 116.756572,\n 34.917487\n ],\n [\n 116.74599,\n 34.915764\n ],\n [\n 116.74528,\n 34.920973\n ],\n [\n 116.720405,\n 34.926141\n ],\n [\n 116.706191,\n 34.933974\n ],\n [\n 116.696951,\n 34.932743\n ],\n [\n 116.677999,\n 34.939182\n ],\n [\n 116.675709,\n 34.933154\n ],\n [\n 116.658415,\n 34.933441\n ],\n [\n 116.657862,\n 34.929012\n ],\n [\n 116.640016,\n 34.932579\n ],\n [\n 116.631803,\n 34.94074\n ],\n [\n 116.622485,\n 34.940043\n ],\n [\n 116.613877,\n 34.922778\n ],\n [\n 116.5601,\n 34.909324\n ],\n [\n 116.546123,\n 34.909406\n ],\n [\n 116.523064,\n 34.903951\n ],\n [\n 116.502769,\n 34.906125\n ],\n [\n 116.500558,\n 34.90112\n ],\n [\n 116.480737,\n 34.897387\n ],\n [\n 116.455784,\n 34.900628\n ],\n [\n 116.445044,\n 34.895418\n ],\n [\n 116.445281,\n 34.888648\n ],\n [\n 116.436042,\n 34.883026\n ],\n [\n 116.409745,\n 34.852944\n ],\n [\n 116.373815,\n 34.86538\n ],\n [\n 116.339543,\n 34.867022\n ],\n [\n 116.325803,\n 34.874943\n ],\n [\n 116.299032,\n 34.877733\n ],\n [\n 116.286713,\n 34.88159\n ],\n [\n 116.266261,\n 34.89751\n ],\n [\n 116.226935,\n 34.911786\n ],\n [\n 116.213826,\n 34.913098\n ],\n [\n 116.201586,\n 34.919702\n ],\n [\n 116.192505,\n 34.939182\n ],\n [\n 116.162181,\n 34.94361\n ],\n [\n 116.155153,\n 34.947259\n ],\n [\n 116.162023,\n 34.957632\n ],\n [\n 116.171499,\n 34.964683\n ],\n [\n 116.170789,\n 34.974684\n ],\n [\n 116.139754,\n 34.995421\n ],\n [\n 116.115748,\n 35.025574\n ],\n [\n 116.114564,\n 35.039828\n ],\n [\n 116.119381,\n 35.053383\n ],\n [\n 116.141413,\n 35.055062\n ],\n [\n 116.140228,\n 35.06018\n ],\n [\n 116.15389,\n 35.088467\n ],\n [\n 116.141018,\n 35.09076\n ],\n [\n 116.154284,\n 35.113513\n ],\n [\n 116.181765,\n 35.11204\n ],\n [\n 116.204903,\n 35.145668\n ],\n [\n 116.214537,\n 35.155606\n ],\n [\n 116.223618,\n 35.173231\n ],\n [\n 116.221881,\n 35.181817\n ],\n [\n 116.213115,\n 35.196697\n ],\n [\n 116.228356,\n 35.194367\n ],\n [\n 116.234516,\n 35.200008\n ],\n [\n 116.234437,\n 35.208264\n ],\n [\n 116.248256,\n 35.195634\n ],\n [\n 116.269104,\n 35.191178\n ],\n [\n 116.284265,\n 35.22506\n ],\n [\n 116.285608,\n 35.242669\n ],\n [\n 116.269656,\n 35.269872\n ],\n [\n 116.265866,\n 35.271547\n ],\n [\n 116.237201,\n 35.261745\n ],\n [\n 116.223539,\n 35.260438\n ],\n [\n 116.215642,\n 35.29131\n ],\n [\n 116.199612,\n 35.304986\n ],\n [\n 116.193452,\n 35.337555\n ],\n [\n 116.201744,\n 35.345185\n ],\n [\n 116.215169,\n 35.350734\n ],\n [\n 116.22117,\n 35.358608\n ],\n [\n 116.223855,\n 35.371702\n ],\n [\n 116.215879,\n 35.393438\n ],\n [\n 116.212642,\n 35.409054\n ],\n [\n 116.215958,\n 35.419857\n ],\n [\n 116.215484,\n 35.435957\n ],\n [\n 116.204429,\n 35.436079\n ],\n [\n 116.20206,\n 35.458247\n ],\n [\n 116.206798,\n 35.465703\n ],\n [\n 116.19669,\n 35.46334\n ],\n [\n 116.188319,\n 35.467781\n ],\n [\n 116.188319,\n 35.477313\n ],\n [\n 116.177817,\n 35.466151\n ],\n [\n 116.178685,\n 35.450342\n ],\n [\n 116.167946,\n 35.452217\n ],\n [\n 116.15689,\n 35.446838\n ],\n [\n 116.160918,\n 35.471569\n ],\n [\n 116.15002,\n 35.469573\n ],\n [\n 116.129567,\n 35.475235\n ],\n [\n 116.128778,\n 35.489614\n ],\n [\n 116.121276,\n 35.497881\n ],\n [\n 116.12554,\n 35.516042\n ],\n [\n 116.123408,\n 35.540589\n ],\n [\n 116.115274,\n 35.566471\n ],\n [\n 116.114327,\n 35.577456\n ],\n [\n 116.125145,\n 35.587871\n ],\n [\n 116.125145,\n 35.59385\n ],\n [\n 116.116222,\n 35.606621\n ],\n [\n 116.115906,\n 35.618414\n ],\n [\n 116.134384,\n 35.638539\n ],\n [\n 116.127514,\n 35.649433\n ],\n [\n 116.121829,\n 35.67459\n ],\n [\n 116.103034,\n 35.687348\n ],\n [\n 116.089847,\n 35.699373\n ],\n [\n 116.079897,\n 35.712452\n ],\n [\n 116.071052,\n 35.719072\n ],\n [\n 116.041518,\n 35.733893\n ],\n [\n 116.026909,\n 35.749687\n ],\n [\n 116.017591,\n 35.756263\n ],\n [\n 115.970289,\n 35.782156\n ],\n [\n 115.945493,\n 35.791976\n ],\n [\n 115.922119,\n 35.799157\n ],\n [\n 115.925988,\n 35.804756\n ],\n [\n 115.911932,\n 35.811733\n ],\n [\n 115.898192,\n 35.805202\n ],\n [\n 115.883583,\n 35.808163\n ],\n [\n 115.877107,\n 35.820657\n ],\n [\n 115.875212,\n 35.835095\n ],\n [\n 115.876002,\n 35.867124\n ],\n [\n 115.876081,\n 35.875069\n ],\n [\n 115.882872,\n 35.879892\n ],\n [\n 115.883267,\n 35.895413\n ],\n [\n 115.88911,\n 35.897561\n ],\n [\n 115.884767,\n 35.909108\n ],\n [\n 115.872369,\n 35.909351\n ],\n [\n 115.875133,\n 35.920168\n ],\n [\n 115.907826,\n 35.926851\n ],\n [\n 115.909958,\n 35.935762\n ],\n [\n 115.906325,\n 35.9454\n ],\n [\n 115.911853,\n 35.960261\n ],\n [\n 115.957654,\n 35.967994\n ],\n [\n 115.985135,\n 35.974107\n ],\n [\n 116.00006,\n 35.974349\n ],\n [\n 116.036069,\n 35.96771\n ],\n [\n 116.048704,\n 35.970301\n ],\n [\n 116.0506,\n 35.981919\n ],\n [\n 116.061892,\n 35.97358\n ],\n [\n 116.065367,\n 35.964714\n ],\n [\n 116.060392,\n 35.956374\n ],\n [\n 116.048704,\n 35.948114\n ],\n [\n 116.05897,\n 35.936167\n ],\n [\n 116.07279,\n 35.940055\n ],\n [\n 116.074606,\n 35.927459\n ],\n [\n 116.086767,\n 35.923246\n ],\n [\n 116.081634,\n 35.914172\n ],\n [\n 116.09261,\n 35.904935\n ],\n [\n 116.126172,\n 35.891037\n ],\n [\n 116.142834,\n 35.895656\n ],\n [\n 116.154284,\n 35.886012\n ],\n [\n 116.161155,\n 35.900397\n ],\n [\n 116.166998,\n 35.90457\n ],\n [\n 116.185398,\n 35.900478\n ],\n [\n 116.190057,\n 35.892536\n ],\n [\n 116.20814,\n 35.886863\n ],\n [\n 116.214774,\n 35.889659\n ],\n [\n 116.218485,\n 35.879811\n ],\n [\n 116.221091,\n 35.892779\n ],\n [\n 116.233963,\n 35.888403\n ],\n [\n 116.230804,\n 35.860963\n ],\n [\n 116.233963,\n 35.851273\n ],\n [\n 116.245808,\n 35.834162\n ],\n [\n 116.250072,\n 35.823536\n ],\n [\n 116.274868,\n 35.803377\n ],\n [\n 116.277395,\n 35.806581\n ],\n [\n 116.304007,\n 35.799401\n ],\n [\n 116.297295,\n 35.795546\n ],\n [\n 116.301875,\n 35.777084\n ],\n [\n 116.309377,\n 35.77404\n ],\n [\n 116.32983,\n 35.787594\n ],\n [\n 116.336621,\n 35.796723\n ],\n [\n 116.355652,\n 35.800537\n ],\n [\n 116.362838,\n 35.795952\n ],\n [\n 116.377921,\n 35.796642\n ],\n [\n 116.385581,\n 35.801754\n ],\n [\n 116.400822,\n 35.794613\n ],\n [\n 116.421196,\n 35.799279\n ],\n [\n 116.428698,\n 35.796398\n ],\n [\n 116.436989,\n 35.807271\n ],\n [\n 116.459811,\n 35.81583\n ],\n [\n 116.459732,\n 35.828241\n ],\n [\n 116.468024,\n 35.836149\n ],\n [\n 116.475841,\n 35.83327\n ],\n [\n 116.486976,\n 35.84138\n ],\n [\n 116.507508,\n 35.84361\n ],\n [\n 116.515325,\n 35.841866\n ],\n [\n 116.520616,\n 35.853057\n ],\n [\n 116.525275,\n 35.847462\n ],\n [\n 116.53641,\n 35.847178\n ],\n [\n 116.549834,\n 35.857517\n ],\n [\n 116.55702,\n 35.890753\n ],\n [\n 116.566023,\n 35.899222\n ],\n [\n 116.595715,\n 35.905056\n ],\n [\n 116.599663,\n 35.916157\n ],\n [\n 116.618536,\n 35.935195\n ],\n [\n 116.62817,\n 35.938556\n ],\n [\n 116.665996,\n 35.940176\n ],\n [\n 116.676973,\n 35.925596\n ],\n [\n 116.672392,\n 35.92118\n ],\n [\n 116.666944,\n 35.898209\n ],\n [\n 116.647518,\n 35.884674\n ],\n [\n 116.62438,\n 35.878068\n ],\n [\n 116.614904,\n 35.865746\n ],\n [\n 116.617036,\n 35.855206\n ],\n [\n 116.641042,\n 35.836879\n ],\n [\n 116.656441,\n 35.828525\n ],\n [\n 116.676736,\n 35.822198\n ],\n [\n 116.686607,\n 35.814005\n ],\n [\n 116.687317,\n 35.798062\n ],\n [\n 116.670497,\n 35.761499\n ],\n [\n 116.662679,\n 35.758252\n ],\n [\n 116.636699,\n 35.764137\n ],\n [\n 116.619563,\n 35.756628\n ],\n [\n 116.614588,\n 35.74924\n ],\n [\n 116.612061,\n 35.71237\n ],\n [\n 116.615615,\n 35.705222\n ],\n [\n 116.627539,\n 35.705791\n ],\n [\n 116.648939,\n 35.713426\n ],\n [\n 116.664969,\n 35.716716\n ],\n [\n 116.68866,\n 35.724838\n ],\n [\n 116.698847,\n 35.72098\n ],\n [\n 116.705322,\n 35.70839\n ],\n [\n 116.733829,\n 35.703435\n ],\n [\n 116.743069,\n 35.703597\n ],\n [\n 116.743069,\n 35.703597\n ],\n [\n 116.762732,\n 35.708309\n ],\n [\n 116.770076,\n 35.703557\n ],\n [\n 116.77742,\n 35.690882\n ],\n [\n 116.795345,\n 35.682188\n ],\n [\n 116.8049,\n 35.686292\n ],\n [\n 116.811376,\n 35.706034\n ],\n [\n 116.8218,\n 35.705222\n ],\n [\n 116.8233,\n 35.696935\n ],\n [\n 116.836882,\n 35.697382\n ],\n [\n 116.861994,\n 35.679059\n ],\n [\n 116.879367,\n 35.685479\n ],\n [\n 116.88071,\n 35.696732\n ],\n [\n 116.897135,\n 35.701851\n ],\n [\n 116.909849,\n 35.699982\n ],\n [\n 116.91814,\n 35.706278\n ],\n [\n 116.930538,\n 35.709406\n ],\n [\n 116.931012,\n 35.713629\n ],\n [\n 116.949649,\n 35.715741\n ],\n [\n 116.954939,\n 35.719072\n ],\n [\n 116.952412,\n 35.737507\n ],\n [\n 116.946253,\n 35.744368\n ],\n [\n 116.952412,\n 35.7561\n ],\n [\n 116.974366,\n 35.760444\n ],\n [\n 116.993397,\n 35.794045\n ],\n [\n 116.991423,\n 35.805973\n ],\n [\n 117.009506,\n 35.807636\n ],\n [\n 117.0268,\n 35.799401\n ],\n [\n 117.049622,\n 35.801307\n ],\n [\n 117.070864,\n 35.790394\n ],\n [\n 117.083815,\n 35.80431\n ],\n [\n 117.097318,\n 35.802687\n ],\n [\n 117.103241,\n 35.790272\n ],\n [\n 117.131275,\n 35.786498\n ],\n [\n 117.137908,\n 35.783374\n ],\n [\n 117.135855,\n 35.774811\n ],\n [\n 117.128353,\n 35.769901\n ],\n [\n 117.135381,\n 35.767303\n ],\n [\n 117.143436,\n 35.771727\n ],\n [\n 117.163651,\n 35.775014\n ],\n [\n 117.175023,\n 35.780209\n ],\n [\n 117.200214,\n 35.775095\n ],\n [\n 117.21806,\n 35.778464\n ],\n [\n 117.226984,\n 35.773959\n ],\n [\n 117.260308,\n 35.771037\n ],\n [\n 117.297581,\n 35.788487\n ],\n [\n 117.306504,\n 35.798833\n ],\n [\n 117.318428,\n 35.793802\n ],\n [\n 117.341013,\n 35.793558\n ],\n [\n 117.343382,\n 35.784267\n ],\n [\n 117.350331,\n 35.782725\n ],\n [\n 117.364467,\n 35.770225\n ],\n [\n 117.379155,\n 35.775785\n ],\n [\n 117.391,\n 35.767141\n ],\n [\n 117.415559,\n 35.775177\n ],\n [\n 117.431195,\n 35.760971\n ],\n [\n 117.440197,\n 35.744571\n ],\n [\n 117.452832,\n 35.742298\n ],\n [\n 117.478733,\n 35.732675\n ],\n [\n 117.488683,\n 35.721102\n ],\n [\n 117.49121,\n 35.707903\n ],\n [\n 117.511031,\n 35.712411\n ],\n [\n 117.530931,\n 35.707131\n ],\n [\n 117.520586,\n 35.697626\n ],\n [\n 117.529431,\n 35.682879\n ],\n [\n 117.576022,\n 35.650206\n ],\n [\n 117.596948,\n 35.630449\n ],\n [\n 117.588893,\n 35.619878\n ],\n [\n 117.585577,\n 35.593972\n ],\n [\n 117.592763,\n 35.589701\n ],\n [\n 117.590394,\n 35.573551\n ],\n [\n 117.593473,\n 35.567448\n ],\n [\n 117.582418,\n 35.554141\n ],\n [\n 117.528641,\n 35.547182\n ],\n [\n 117.515058,\n 35.551008\n ],\n [\n 117.499502,\n 35.550845\n ],\n [\n 117.496264,\n 35.543031\n ],\n [\n 117.50424,\n 35.531675\n ],\n [\n 117.516401,\n 35.527319\n ],\n [\n 117.520033,\n 35.51991\n ],\n [\n 117.513795,\n 35.514576\n ],\n [\n 117.501634,\n 35.512947\n ],\n [\n 117.498396,\n 35.503093\n ],\n [\n 117.481734,\n 35.507898\n ],\n [\n 117.472416,\n 35.514372\n ],\n [\n 117.467441,\n 35.512255\n ],\n [\n 117.462703,\n 35.497922\n ],\n [\n 117.452279,\n 35.490306\n ],\n [\n 117.442171,\n 35.469247\n ],\n [\n 117.42851,\n 35.458614\n ],\n [\n 117.453779,\n 35.442396\n ],\n [\n 117.455833,\n 35.424953\n ],\n [\n 117.467441,\n 35.418186\n ],\n [\n 117.474785,\n 35.400941\n ],\n [\n 117.463334,\n 35.39038\n ],\n [\n 117.463887,\n 35.375617\n ],\n [\n 117.439644,\n 35.359668\n ],\n [\n 117.439012,\n 35.348939\n ],\n [\n 117.446988,\n 35.330292\n ],\n [\n 117.453937,\n 35.325027\n ],\n [\n 117.478891,\n 35.314375\n ],\n [\n 117.463098,\n 35.287472\n ],\n [\n 117.439565,\n 35.282368\n ],\n [\n 117.419191,\n 35.273997\n ],\n [\n 117.406004,\n 35.283348\n ],\n [\n 117.403635,\n 35.301394\n ],\n [\n 117.399528,\n 35.306374\n ],\n [\n 117.359571,\n 35.318375\n ],\n [\n 117.347568,\n 35.315109\n ],\n [\n 117.318034,\n 35.320252\n ],\n [\n 117.308557,\n 35.312579\n ],\n [\n 117.314085,\n 35.302129\n ],\n [\n 117.311163,\n 35.28588\n ],\n [\n 117.305794,\n 35.295229\n ],\n [\n 117.290079,\n 35.299394\n ],\n [\n 117.284472,\n 35.294331\n ],\n [\n 117.262203,\n 35.287472\n ],\n [\n 117.269231,\n 35.261296\n ],\n [\n 117.220824,\n 35.26489\n ],\n [\n 117.204873,\n 35.258518\n ],\n [\n 117.199108,\n 35.24749\n ],\n [\n 117.176681,\n 35.243159\n ],\n [\n 117.152675,\n 35.232047\n ],\n [\n 117.123536,\n 35.23078\n ],\n [\n 117.104899,\n 35.221464\n ],\n [\n 117.092896,\n 35.220361\n ],\n [\n 117.065336,\n 35.22792\n ],\n [\n 117.053333,\n 35.224202\n ],\n [\n 117.028774,\n 35.221219\n ],\n [\n 117.014639,\n 35.214844\n ],\n [\n 116.995687,\n 35.1978\n ],\n [\n 116.969706,\n 35.187377\n ],\n [\n 116.962047,\n 35.177319\n ],\n [\n 116.938277,\n 35.172168\n ],\n [\n 116.925721,\n 35.182266\n ],\n [\n 116.913718,\n 35.178791\n ],\n [\n 116.904716,\n 35.182471\n ],\n [\n 116.898398,\n 35.195757\n ],\n [\n 116.876603,\n 35.188031\n ],\n [\n 116.86618,\n 35.172617\n ],\n [\n 116.85394,\n 35.16861\n ],\n [\n 116.832776,\n 35.184392\n ],\n [\n 116.811218,\n 35.17736\n ],\n [\n 116.81564,\n 35.170777\n ],\n [\n 116.813192,\n 35.159573\n ],\n [\n 116.81793,\n 35.150699\n ],\n [\n 116.825748,\n 35.147631\n ],\n [\n 116.832065,\n 35.123783\n ],\n [\n 116.848649,\n 35.103774\n ],\n [\n 116.863179,\n 35.091496\n ],\n [\n 116.888922,\n 35.093829\n ],\n [\n 116.888212,\n 35.085193\n ],\n [\n 116.900373,\n 35.068737\n ],\n [\n 116.880473,\n 35.062595\n ],\n [\n 116.881183,\n 35.058133\n ],\n [\n 116.900767,\n 35.05977\n ],\n [\n 116.907875,\n 35.046995\n ],\n [\n 116.937172,\n 35.0275\n ],\n [\n 116.951702,\n 35.020618\n ],\n [\n 116.956993,\n 35.01054\n ],\n [\n 116.954466,\n 34.993331\n ],\n [\n 116.943015,\n 34.975627\n ],\n [\n 116.955334,\n 34.967142\n ],\n [\n 116.9671,\n 34.951072\n ],\n [\n 116.980367,\n 34.941027\n ],\n [\n 116.989448,\n 34.93873\n ],\n [\n 117.017719,\n 34.942503\n ],\n [\n 117.038487,\n 34.937869\n ],\n [\n 117.043462,\n 34.932825\n ],\n [\n 117.041093,\n 34.925157\n ],\n [\n 117.05815,\n 34.926961\n ],\n [\n 117.06123,\n 34.930406\n ],\n [\n 117.073707,\n 34.925485\n ],\n [\n 117.082551,\n 34.934917\n ],\n [\n 117.103399,\n 34.937459\n ],\n [\n 117.111059,\n 34.917774\n ],\n [\n 117.110111,\n 34.90514\n ],\n [\n 117.12093,\n 34.903581\n ],\n [\n 117.125826,\n 34.863451\n ],\n [\n 117.139013,\n 34.854052\n ],\n [\n 117.140593,\n 34.846499\n ],\n [\n 117.156623,\n 34.834306\n ],\n [\n 117.17755,\n 34.828722\n ],\n [\n 117.194686,\n 34.816239\n ],\n [\n 117.180314,\n 34.800221\n ],\n [\n 117.172733,\n 34.799194\n ],\n [\n 117.162467,\n 34.782105\n ],\n [\n 117.176523,\n 34.779065\n ],\n [\n 117.180551,\n 34.784201\n ],\n [\n 117.191369,\n 34.780914\n ],\n [\n 117.212927,\n 34.761027\n ],\n [\n 117.22422,\n 34.745533\n ],\n [\n 117.236697,\n 34.746355\n ],\n [\n 117.242067,\n 34.729995\n ],\n [\n 117.253675,\n 34.721444\n ],\n [\n 117.271443,\n 34.726501\n ],\n [\n 117.278787,\n 34.715647\n ],\n [\n 117.304609,\n 34.714866\n ],\n [\n 117.310611,\n 34.717333\n ],\n [\n 117.326167,\n 34.703434\n ],\n [\n 117.324272,\n 34.697307\n ],\n [\n 117.335485,\n 34.692454\n ],\n [\n 117.329247,\n 34.677359\n ],\n [\n 117.346067,\n 34.670982\n ],\n [\n 117.35657,\n 34.661643\n ],\n [\n 117.354201,\n 34.653538\n ],\n [\n 117.366915,\n 34.650246\n ],\n [\n 117.374022,\n 34.636172\n ],\n [\n 117.376707,\n 34.622301\n ],\n [\n 117.384051,\n 34.628228\n ],\n [\n 117.402687,\n 34.628434\n ],\n [\n 117.4109,\n 34.623454\n ],\n [\n 117.407978,\n 34.610651\n ],\n [\n 117.397949,\n 34.604393\n ],\n [\n 117.398976,\n 34.588335\n ],\n [\n 117.393922,\n 34.587676\n ],\n [\n 117.392342,\n 34.574909\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 370900,\n \"name\": \"泰安市\",\n \"center\": [\n 117.129063,\n 36.194968\n ],\n \"centroid\": [\n 117.030947,\n 36.002333\n ],\n \"childrenNum\": 6,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 8,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 117.596948,\n 35.630449\n ],\n [\n 117.576022,\n 35.650206\n ],\n [\n 117.529431,\n 35.682879\n ],\n [\n 117.520586,\n 35.697626\n ],\n [\n 117.530931,\n 35.707131\n ],\n [\n 117.511031,\n 35.712411\n ],\n [\n 117.49121,\n 35.707903\n ],\n [\n 117.488683,\n 35.721102\n ],\n [\n 117.478733,\n 35.732675\n ],\n [\n 117.452832,\n 35.742298\n ],\n [\n 117.440197,\n 35.744571\n ],\n [\n 117.431195,\n 35.760971\n ],\n [\n 117.415559,\n 35.775177\n ],\n [\n 117.391,\n 35.767141\n ],\n [\n 117.379155,\n 35.775785\n ],\n [\n 117.364467,\n 35.770225\n ],\n [\n 117.350331,\n 35.782725\n ],\n [\n 117.343382,\n 35.784267\n ],\n [\n 117.341013,\n 35.793558\n ],\n [\n 117.318428,\n 35.793802\n ],\n [\n 117.306504,\n 35.798833\n ],\n [\n 117.297581,\n 35.788487\n ],\n [\n 117.260308,\n 35.771037\n ],\n [\n 117.226984,\n 35.773959\n ],\n [\n 117.21806,\n 35.778464\n ],\n [\n 117.200214,\n 35.775095\n ],\n [\n 117.175023,\n 35.780209\n ],\n [\n 117.163651,\n 35.775014\n ],\n [\n 117.143436,\n 35.771727\n ],\n [\n 117.135381,\n 35.767303\n ],\n [\n 117.128353,\n 35.769901\n ],\n [\n 117.135855,\n 35.774811\n ],\n [\n 117.137908,\n 35.783374\n ],\n [\n 117.131275,\n 35.786498\n ],\n [\n 117.103241,\n 35.790272\n ],\n [\n 117.097318,\n 35.802687\n ],\n [\n 117.083815,\n 35.80431\n ],\n [\n 117.070864,\n 35.790394\n ],\n [\n 117.049622,\n 35.801307\n ],\n [\n 117.0268,\n 35.799401\n ],\n [\n 117.009506,\n 35.807636\n ],\n [\n 116.991423,\n 35.805973\n ],\n [\n 116.993397,\n 35.794045\n ],\n [\n 116.974366,\n 35.760444\n ],\n [\n 116.952412,\n 35.7561\n ],\n [\n 116.946253,\n 35.744368\n ],\n [\n 116.952412,\n 35.737507\n ],\n [\n 116.954939,\n 35.719072\n ],\n [\n 116.949649,\n 35.715741\n ],\n [\n 116.931012,\n 35.713629\n ],\n [\n 116.930538,\n 35.709406\n ],\n [\n 116.91814,\n 35.706278\n ],\n [\n 116.909849,\n 35.699982\n ],\n [\n 116.897135,\n 35.701851\n ],\n [\n 116.88071,\n 35.696732\n ],\n [\n 116.879367,\n 35.685479\n ],\n [\n 116.861994,\n 35.679059\n ],\n [\n 116.836882,\n 35.697382\n ],\n [\n 116.8233,\n 35.696935\n ],\n [\n 116.8218,\n 35.705222\n ],\n [\n 116.811376,\n 35.706034\n ],\n [\n 116.8049,\n 35.686292\n ],\n [\n 116.795345,\n 35.682188\n ],\n [\n 116.77742,\n 35.690882\n ],\n [\n 116.770076,\n 35.703557\n ],\n [\n 116.762732,\n 35.708309\n ],\n [\n 116.743069,\n 35.703597\n ],\n [\n 116.743069,\n 35.703597\n ],\n [\n 116.733829,\n 35.703435\n ],\n [\n 116.705322,\n 35.70839\n ],\n [\n 116.698847,\n 35.72098\n ],\n [\n 116.68866,\n 35.724838\n ],\n [\n 116.664969,\n 35.716716\n ],\n [\n 116.648939,\n 35.713426\n ],\n [\n 116.627539,\n 35.705791\n ],\n [\n 116.615615,\n 35.705222\n ],\n [\n 116.612061,\n 35.71237\n ],\n [\n 116.614588,\n 35.74924\n ],\n [\n 116.619563,\n 35.756628\n ],\n [\n 116.636699,\n 35.764137\n ],\n [\n 116.662679,\n 35.758252\n ],\n [\n 116.670497,\n 35.761499\n ],\n [\n 116.687317,\n 35.798062\n ],\n [\n 116.686607,\n 35.814005\n ],\n [\n 116.676736,\n 35.822198\n ],\n [\n 116.656441,\n 35.828525\n ],\n [\n 116.641042,\n 35.836879\n ],\n [\n 116.617036,\n 35.855206\n ],\n [\n 116.614904,\n 35.865746\n ],\n [\n 116.62438,\n 35.878068\n ],\n [\n 116.647518,\n 35.884674\n ],\n [\n 116.666944,\n 35.898209\n ],\n [\n 116.672392,\n 35.92118\n ],\n [\n 116.676973,\n 35.925596\n ],\n [\n 116.665996,\n 35.940176\n ],\n [\n 116.62817,\n 35.938556\n ],\n [\n 116.618536,\n 35.935195\n ],\n [\n 116.599663,\n 35.916157\n ],\n [\n 116.595715,\n 35.905056\n ],\n [\n 116.566023,\n 35.899222\n ],\n [\n 116.55702,\n 35.890753\n ],\n [\n 116.549834,\n 35.857517\n ],\n [\n 116.53641,\n 35.847178\n ],\n [\n 116.525275,\n 35.847462\n ],\n [\n 116.520616,\n 35.853057\n ],\n [\n 116.515325,\n 35.841866\n ],\n [\n 116.507508,\n 35.84361\n ],\n [\n 116.486976,\n 35.84138\n ],\n [\n 116.475841,\n 35.83327\n ],\n [\n 116.468024,\n 35.836149\n ],\n [\n 116.459732,\n 35.828241\n ],\n [\n 116.459811,\n 35.81583\n ],\n [\n 116.436989,\n 35.807271\n ],\n [\n 116.428698,\n 35.796398\n ],\n [\n 116.421196,\n 35.799279\n ],\n [\n 116.400822,\n 35.794613\n ],\n [\n 116.385581,\n 35.801754\n ],\n [\n 116.377921,\n 35.796642\n ],\n [\n 116.362838,\n 35.795952\n ],\n [\n 116.355652,\n 35.800537\n ],\n [\n 116.336621,\n 35.796723\n ],\n [\n 116.32983,\n 35.787594\n ],\n [\n 116.309377,\n 35.77404\n ],\n [\n 116.301875,\n 35.777084\n ],\n [\n 116.297295,\n 35.795546\n ],\n [\n 116.304007,\n 35.799401\n ],\n [\n 116.277395,\n 35.806581\n ],\n [\n 116.274868,\n 35.803377\n ],\n [\n 116.250072,\n 35.823536\n ],\n [\n 116.245808,\n 35.834162\n ],\n [\n 116.233963,\n 35.851273\n ],\n [\n 116.230804,\n 35.860963\n ],\n [\n 116.233963,\n 35.888403\n ],\n [\n 116.221091,\n 35.892779\n ],\n [\n 116.218485,\n 35.879811\n ],\n [\n 116.214774,\n 35.889659\n ],\n [\n 116.20814,\n 35.886863\n ],\n [\n 116.190057,\n 35.892536\n ],\n [\n 116.185398,\n 35.900478\n ],\n [\n 116.166998,\n 35.90457\n ],\n [\n 116.161155,\n 35.900397\n ],\n [\n 116.154284,\n 35.886012\n ],\n [\n 116.142834,\n 35.895656\n ],\n [\n 116.126172,\n 35.891037\n ],\n [\n 116.09261,\n 35.904935\n ],\n [\n 116.081634,\n 35.914172\n ],\n [\n 116.086767,\n 35.923246\n ],\n [\n 116.074606,\n 35.927459\n ],\n [\n 116.07279,\n 35.940055\n ],\n [\n 116.05897,\n 35.936167\n ],\n [\n 116.048704,\n 35.948114\n ],\n [\n 116.060392,\n 35.956374\n ],\n [\n 116.065367,\n 35.964714\n ],\n [\n 116.061892,\n 35.97358\n ],\n [\n 116.0506,\n 35.981919\n ],\n [\n 116.052574,\n 35.99912\n ],\n [\n 116.06284,\n 36.028899\n ],\n [\n 116.073658,\n 36.026148\n ],\n [\n 116.079502,\n 36.042611\n ],\n [\n 116.076106,\n 36.056887\n ],\n [\n 116.087162,\n 36.071403\n ],\n [\n 116.091742,\n 36.089474\n ],\n [\n 116.096875,\n 36.092182\n ],\n [\n 116.099323,\n 36.112066\n ],\n [\n 116.114011,\n 36.122047\n ],\n [\n 116.123882,\n 36.136429\n ],\n [\n 116.164313,\n 36.146084\n ],\n [\n 116.164392,\n 36.168862\n ],\n [\n 116.169446,\n 36.171325\n ],\n [\n 116.213036,\n 36.169831\n ],\n [\n 116.226066,\n 36.173748\n ],\n [\n 116.246677,\n 36.149436\n ],\n [\n 116.261444,\n 36.122693\n ],\n [\n 116.27171,\n 36.109843\n ],\n [\n 116.273368,\n 36.093758\n ],\n [\n 116.267287,\n 36.074233\n ],\n [\n 116.267998,\n 36.052964\n ],\n [\n 116.271552,\n 36.043824\n ],\n [\n 116.294689,\n 36.031407\n ],\n [\n 116.301244,\n 36.031123\n ],\n [\n 116.304718,\n 36.046251\n ],\n [\n 116.310404,\n 36.052196\n ],\n [\n 116.324855,\n 36.054178\n ],\n [\n 116.338753,\n 36.060082\n ],\n [\n 116.352731,\n 36.070797\n ],\n [\n 116.360233,\n 36.084744\n ],\n [\n 116.386845,\n 36.090807\n ],\n [\n 116.398058,\n 36.084582\n ],\n [\n 116.401059,\n 36.074031\n ],\n [\n 116.409508,\n 36.068007\n ],\n [\n 116.427829,\n 36.067441\n ],\n [\n 116.433357,\n 36.059839\n ],\n [\n 116.429566,\n 36.052439\n ],\n [\n 116.436121,\n 36.046534\n ],\n [\n 116.434541,\n 36.038607\n ],\n [\n 116.449387,\n 36.047302\n ],\n [\n 116.452072,\n 36.058019\n ],\n [\n 116.471182,\n 36.06457\n ],\n [\n 116.504112,\n 36.064732\n ],\n [\n 116.532303,\n 36.074274\n ],\n [\n 116.543359,\n 36.086604\n ],\n [\n 116.546597,\n 36.101195\n ],\n [\n 116.554651,\n 36.108187\n ],\n [\n 116.566891,\n 36.108752\n ],\n [\n 116.569024,\n 36.118774\n ],\n [\n 116.562153,\n 36.121643\n ],\n [\n 116.5586,\n 36.133804\n ],\n [\n 116.543122,\n 36.13958\n ],\n [\n 116.525275,\n 36.135298\n ],\n [\n 116.528513,\n 36.145276\n ],\n [\n 116.519748,\n 36.141196\n ],\n [\n 116.507192,\n 36.141277\n ],\n [\n 116.510192,\n 36.148346\n ],\n [\n 116.52188,\n 36.157151\n ],\n [\n 116.525986,\n 36.168297\n ],\n [\n 116.51035,\n 36.176857\n ],\n [\n 116.502059,\n 36.192764\n ],\n [\n 116.481922,\n 36.197002\n ],\n [\n 116.472604,\n 36.21464\n ],\n [\n 116.487529,\n 36.228441\n ],\n [\n 116.485239,\n 36.236067\n ],\n [\n 116.506402,\n 36.240344\n ],\n [\n 116.512325,\n 36.253414\n ],\n [\n 116.525591,\n 36.255229\n ],\n [\n 116.53641,\n 36.245588\n ],\n [\n 116.552361,\n 36.247767\n ],\n [\n 116.558837,\n 36.261037\n ],\n [\n 116.574393,\n 36.263457\n ],\n [\n 116.581264,\n 36.255471\n ],\n [\n 116.587502,\n 36.268862\n ],\n [\n 116.595794,\n 36.270999\n ],\n [\n 116.610403,\n 36.282451\n ],\n [\n 116.615536,\n 36.294587\n ],\n [\n 116.649018,\n 36.295797\n ],\n [\n 116.675709,\n 36.276645\n ],\n [\n 116.686528,\n 36.275435\n ],\n [\n 116.701058,\n 36.280153\n ],\n [\n 116.710376,\n 36.279185\n ],\n [\n 116.732961,\n 36.294144\n ],\n [\n 116.762574,\n 36.305391\n ],\n [\n 116.772761,\n 36.312002\n ],\n [\n 116.786659,\n 36.311357\n ],\n [\n 116.808612,\n 36.299022\n ],\n [\n 116.830644,\n 36.294587\n ],\n [\n 116.855756,\n 36.301642\n ],\n [\n 116.855519,\n 36.289709\n ],\n [\n 116.867759,\n 36.28108\n ],\n [\n 116.873129,\n 36.264062\n ],\n [\n 116.891133,\n 36.255471\n ],\n [\n 116.928722,\n 36.26991\n ],\n [\n 116.932828,\n 36.261925\n ],\n [\n 116.950201,\n 36.257327\n ],\n [\n 116.956835,\n 36.259787\n ],\n [\n 116.975471,\n 36.243208\n ],\n [\n 116.987632,\n 36.250711\n ],\n [\n 117.002794,\n 36.254503\n ],\n [\n 117.003347,\n 36.265353\n ],\n [\n 117.027353,\n 36.268983\n ],\n [\n 117.030275,\n 36.277532\n ],\n [\n 117.0482,\n 36.283701\n ],\n [\n 117.051201,\n 36.288741\n ],\n [\n 117.066995,\n 36.296885\n ],\n [\n 117.074102,\n 36.296724\n ],\n [\n 117.077655,\n 36.307205\n ],\n [\n 117.07734,\n 36.321957\n ],\n [\n 117.088711,\n 36.346013\n ],\n [\n 117.107347,\n 36.338882\n ],\n [\n 117.111691,\n 36.340413\n ],\n [\n 117.137039,\n 36.335135\n ],\n [\n 117.142567,\n 36.345731\n ],\n [\n 117.161361,\n 36.351895\n ],\n [\n 117.179603,\n 36.353144\n ],\n [\n 117.18292,\n 36.360798\n ],\n [\n 117.180945,\n 36.37256\n ],\n [\n 117.191685,\n 36.378762\n ],\n [\n 117.200924,\n 36.389755\n ],\n [\n 117.208742,\n 36.405297\n ],\n [\n 117.218297,\n 36.406182\n ],\n [\n 117.242145,\n 36.41528\n ],\n [\n 117.249726,\n 36.436732\n ],\n [\n 117.263862,\n 36.449206\n ],\n [\n 117.275786,\n 36.451218\n ],\n [\n 117.288973,\n 36.468718\n ],\n [\n 117.288184,\n 36.476039\n ],\n [\n 117.30682,\n 36.472097\n ],\n [\n 117.30682,\n 36.467029\n ],\n [\n 117.335328,\n 36.466345\n ],\n [\n 117.346383,\n 36.46373\n ],\n [\n 117.346936,\n 36.455724\n ],\n [\n 117.339118,\n 36.438181\n ],\n [\n 117.339434,\n 36.425786\n ],\n [\n 117.344962,\n 36.403968\n ],\n [\n 117.35041,\n 36.393379\n ],\n [\n 117.351753,\n 36.377997\n ],\n [\n 117.362729,\n 36.360234\n ],\n [\n 117.387762,\n 36.337915\n ],\n [\n 117.38871,\n 36.326148\n ],\n [\n 117.379707,\n 36.315146\n ],\n [\n 117.38792,\n 36.296361\n ],\n [\n 117.387604,\n 36.285556\n ],\n [\n 117.397791,\n 36.283782\n ],\n [\n 117.394553,\n 36.266522\n ],\n [\n 117.413901,\n 36.267934\n ],\n [\n 117.417217,\n 36.243652\n ],\n [\n 117.392895,\n 36.237439\n ],\n [\n 117.393132,\n 36.226747\n ],\n [\n 117.385235,\n 36.226989\n ],\n [\n 117.396607,\n 36.215972\n ],\n [\n 117.412716,\n 36.210927\n ],\n [\n 117.427878,\n 36.221662\n ],\n [\n 117.447383,\n 36.218313\n ],\n [\n 117.447778,\n 36.203541\n ],\n [\n 117.452437,\n 36.203138\n ],\n [\n 117.440434,\n 36.191189\n ],\n [\n 117.446988,\n 36.18691\n ],\n [\n 117.461202,\n 36.170194\n ],\n [\n 117.475653,\n 36.173102\n ],\n [\n 117.487972,\n 36.15921\n ],\n [\n 117.476601,\n 36.150123\n ],\n [\n 117.469178,\n 36.154687\n ],\n [\n 117.459623,\n 36.1498\n ],\n [\n 117.44683,\n 36.120834\n ],\n [\n 117.463571,\n 36.116875\n ],\n [\n 117.454885,\n 36.111177\n ],\n [\n 117.456148,\n 36.100467\n ],\n [\n 117.447067,\n 36.09206\n ],\n [\n 117.451963,\n 36.087412\n ],\n [\n 117.473758,\n 36.089797\n ],\n [\n 117.484893,\n 36.10075\n ],\n [\n 117.491052,\n 36.096587\n ],\n [\n 117.505898,\n 36.098245\n ],\n [\n 117.534879,\n 36.111419\n ],\n [\n 117.547672,\n 36.106166\n ],\n [\n 117.552884,\n 36.087978\n ],\n [\n 117.561649,\n 36.079327\n ],\n [\n 117.575943,\n 36.074516\n ],\n [\n 117.601844,\n 36.075648\n ],\n [\n 117.630588,\n 36.059879\n ],\n [\n 117.656569,\n 36.049729\n ],\n [\n 117.689972,\n 36.052358\n ],\n [\n 117.701186,\n 36.04528\n ],\n [\n 117.720454,\n 36.038243\n ],\n [\n 117.725824,\n 36.029667\n ],\n [\n 117.741696,\n 36.036058\n ],\n [\n 117.757016,\n 36.019392\n ],\n [\n 117.750304,\n 36.011947\n ],\n [\n 117.756542,\n 36.002236\n ],\n [\n 117.756621,\n 35.991916\n ],\n [\n 117.762307,\n 35.990621\n ],\n [\n 117.781022,\n 35.995437\n ],\n [\n 117.782286,\n 36.007294\n ],\n [\n 117.794763,\n 36.015143\n ],\n [\n 117.801159,\n 36.012959\n ],\n [\n 117.825244,\n 36.013363\n ],\n [\n 117.828719,\n 36.008022\n ],\n [\n 117.841827,\n 36.011947\n ],\n [\n 117.854462,\n 36.006889\n ],\n [\n 117.866386,\n 36.007415\n ],\n [\n 117.877047,\n 36.016357\n ],\n [\n 117.895052,\n 36.020363\n ],\n [\n 117.914557,\n 36.020039\n ],\n [\n 117.922848,\n 36.015467\n ],\n [\n 117.926165,\n 36.005068\n ],\n [\n 117.935088,\n 36.004421\n ],\n [\n 117.937536,\n 35.99653\n ],\n [\n 117.937221,\n 35.98119\n ],\n [\n 117.946065,\n 35.970949\n ],\n [\n 117.947013,\n 35.960382\n ],\n [\n 117.953962,\n 35.957913\n ],\n [\n 117.971414,\n 35.969937\n ],\n [\n 117.992577,\n 35.971273\n ],\n [\n 117.984443,\n 35.956293\n ],\n [\n 117.988471,\n 35.947709\n ],\n [\n 117.997394,\n 35.934587\n ],\n [\n 117.99921,\n 35.925393\n ],\n [\n 117.988234,\n 35.908703\n ],\n [\n 117.981364,\n 35.906191\n ],\n [\n 117.97931,\n 35.889699\n ],\n [\n 117.968097,\n 35.884066\n ],\n [\n 117.960516,\n 35.87057\n ],\n [\n 117.937615,\n 35.874826\n ],\n [\n 117.924586,\n 35.880946\n ],\n [\n 117.906265,\n 35.884634\n ],\n [\n 117.883364,\n 35.882648\n ],\n [\n 117.86686,\n 35.86984\n ],\n [\n 117.85541,\n 35.850219\n ],\n [\n 117.842143,\n 35.84507\n ],\n [\n 117.827376,\n 35.827754\n ],\n [\n 117.828403,\n 35.821792\n ],\n [\n 117.840959,\n 35.812058\n ],\n [\n 117.846092,\n 35.796398\n ],\n [\n 117.831167,\n 35.786661\n ],\n [\n 117.828482,\n 35.773837\n ],\n [\n 117.833694,\n 35.760484\n ],\n [\n 117.837405,\n 35.741445\n ],\n [\n 117.823033,\n 35.739496\n ],\n [\n 117.811504,\n 35.732919\n ],\n [\n 117.781733,\n 35.734096\n ],\n [\n 117.769019,\n 35.726625\n ],\n [\n 117.754173,\n 35.709609\n ],\n [\n 117.732615,\n 35.71237\n ],\n [\n 117.707424,\n 35.726016\n ],\n [\n 117.679154,\n 35.713305\n ],\n [\n 117.663913,\n 35.70969\n ],\n [\n 117.634616,\n 35.709324\n ],\n [\n 117.62585,\n 35.703841\n ],\n [\n 117.605319,\n 35.674834\n ],\n [\n 117.599001,\n 35.649149\n ],\n [\n 117.596948,\n 35.630449\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 371000,\n \"name\": \"威海市\",\n \"center\": [\n 122.116394,\n 37.509691\n ],\n \"centroid\": [\n 122.000809,\n 37.118689\n ],\n \"childrenNum\": 4,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 9,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 121.923992,\n 37.473096\n ],\n [\n 121.966002,\n 37.489648\n ],\n [\n 121.979111,\n 37.488378\n ],\n [\n 121.996958,\n 37.493974\n ],\n [\n 121.999485,\n 37.506236\n ],\n [\n 122.013225,\n 37.510006\n ],\n [\n 122.017253,\n 37.530914\n ],\n [\n 122.036284,\n 37.529446\n ],\n [\n 122.045207,\n 37.531628\n ],\n [\n 122.053736,\n 37.543448\n ],\n [\n 122.069924,\n 37.537062\n ],\n [\n 122.075215,\n 37.540473\n ],\n [\n 122.074583,\n 37.551816\n ],\n [\n 122.066529,\n 37.562364\n ],\n [\n 122.069529,\n 37.568747\n ],\n [\n 122.088797,\n 37.554116\n ],\n [\n 122.107434,\n 37.550309\n ],\n [\n 122.123148,\n 37.552926\n ],\n [\n 122.119437,\n 37.564227\n ],\n [\n 122.125833,\n 37.56732\n ],\n [\n 122.133572,\n 37.556455\n ],\n [\n 122.150471,\n 37.557129\n ],\n [\n 122.144154,\n 37.550388\n ],\n [\n 122.150708,\n 37.544281\n ],\n [\n 122.171398,\n 37.541147\n ],\n [\n 122.171714,\n 37.534285\n ],\n [\n 122.163106,\n 37.518973\n ],\n [\n 122.15442,\n 37.518219\n ],\n [\n 122.14755,\n 37.51199\n ],\n [\n 122.136336,\n 37.512307\n ],\n [\n 122.131993,\n 37.499371\n ],\n [\n 122.149524,\n 37.493418\n ],\n [\n 122.153946,\n 37.488616\n ],\n [\n 122.148892,\n 37.481948\n ],\n [\n 122.156947,\n 37.459438\n ],\n [\n 122.165712,\n 37.450027\n ],\n [\n 122.167213,\n 37.438073\n ],\n [\n 122.183717,\n 37.431282\n ],\n [\n 122.185849,\n 37.441688\n ],\n [\n 122.194456,\n 37.456222\n ],\n [\n 122.212461,\n 37.455666\n ],\n [\n 122.220595,\n 37.463289\n ],\n [\n 122.233151,\n 37.46051\n ],\n [\n 122.235046,\n 37.469205\n ],\n [\n 122.24089,\n 37.465354\n ],\n [\n 122.252656,\n 37.467855\n ],\n [\n 122.260316,\n 37.46047\n ],\n [\n 122.27682,\n 37.456778\n ],\n [\n 122.286138,\n 37.447287\n ],\n [\n 122.280373,\n 37.442641\n ],\n [\n 122.280216,\n 37.433863\n ],\n [\n 122.285664,\n 37.425403\n ],\n [\n 122.31046,\n 37.423059\n ],\n [\n 122.312355,\n 37.416663\n ],\n [\n 122.336993,\n 37.414438\n ],\n [\n 122.387375,\n 37.42\n ],\n [\n 122.393376,\n 37.415114\n ],\n [\n 122.416751,\n 37.414676\n ],\n [\n 122.437046,\n 37.420358\n ],\n [\n 122.464684,\n 37.42441\n ],\n [\n 122.480952,\n 37.433665\n ],\n [\n 122.489559,\n 37.431917\n ],\n [\n 122.487348,\n 37.420278\n ],\n [\n 122.495245,\n 37.413683\n ],\n [\n 122.513408,\n 37.410703\n ],\n [\n 122.553602,\n 37.406929\n ],\n [\n 122.580293,\n 37.410187\n ],\n [\n 122.595929,\n 37.421152\n ],\n [\n 122.606511,\n 37.424131\n ],\n [\n 122.626648,\n 37.424688\n ],\n [\n 122.643862,\n 37.428064\n ],\n [\n 122.649548,\n 37.419881\n ],\n [\n 122.656655,\n 37.428461\n ],\n [\n 122.665816,\n 37.424251\n ],\n [\n 122.659735,\n 37.421589\n ],\n [\n 122.666526,\n 37.414438\n ],\n [\n 122.675923,\n 37.413326\n ],\n [\n 122.669527,\n 37.42858\n ],\n [\n 122.684847,\n 37.4287\n ],\n [\n 122.688558,\n 37.422423\n ],\n [\n 122.704273,\n 37.414955\n ],\n [\n 122.706958,\n 37.404108\n ],\n [\n 122.715802,\n 37.396121\n ],\n [\n 122.697877,\n 37.384118\n ],\n [\n 122.69456,\n 37.376328\n ],\n [\n 122.680662,\n 37.37438\n ],\n [\n 122.675134,\n 37.383761\n ],\n [\n 122.655629,\n 37.388292\n ],\n [\n 122.641809,\n 37.385867\n ],\n [\n 122.626884,\n 37.36957\n ],\n [\n 122.611486,\n 37.366907\n ],\n [\n 122.594823,\n 37.347981\n ],\n [\n 122.59356,\n 37.336289\n ],\n [\n 122.611486,\n 37.339431\n ],\n [\n 122.610459,\n 37.331119\n ],\n [\n 122.594192,\n 37.319822\n ],\n [\n 122.573897,\n 37.296349\n ],\n [\n 122.581083,\n 37.286957\n ],\n [\n 122.57137,\n 37.279037\n ],\n [\n 122.577056,\n 37.271395\n ],\n [\n 122.567185,\n 37.261164\n ],\n [\n 122.584716,\n 37.258736\n ],\n [\n 122.592454,\n 37.261284\n ],\n [\n 122.590638,\n 37.248065\n ],\n [\n 122.60043,\n 37.242212\n ],\n [\n 122.60043,\n 37.22895\n ],\n [\n 122.604063,\n 37.221462\n ],\n [\n 122.623963,\n 37.212739\n ],\n [\n 122.628859,\n 37.203456\n ],\n [\n 122.624042,\n 37.191144\n ],\n [\n 122.606274,\n 37.193057\n ],\n [\n 122.596877,\n 37.181262\n ],\n [\n 122.57903,\n 37.183493\n ],\n [\n 122.573344,\n 37.17624\n ],\n [\n 122.587243,\n 37.163684\n ],\n [\n 122.586374,\n 37.153519\n ],\n [\n 122.581083,\n 37.147738\n ],\n [\n 122.559762,\n 37.147419\n ],\n [\n 122.533544,\n 37.153359\n ],\n [\n 122.501562,\n 37.148695\n ],\n [\n 122.493113,\n 37.142036\n ],\n [\n 122.484505,\n 37.128877\n ],\n [\n 122.481189,\n 37.117829\n ],\n [\n 122.477951,\n 37.091539\n ],\n [\n 122.481031,\n 37.071786\n ],\n [\n 122.480083,\n 37.06105\n ],\n [\n 122.45963,\n 37.04584\n ],\n [\n 122.461447,\n 37.039532\n ],\n [\n 122.487901,\n 37.034301\n ],\n [\n 122.498641,\n 37.034301\n ],\n [\n 122.524226,\n 37.04033\n ],\n [\n 122.548706,\n 37.05091\n ],\n [\n 122.575634,\n 37.054423\n ],\n [\n 122.585268,\n 37.042965\n ],\n [\n 122.583373,\n 37.037296\n ],\n [\n 122.555971,\n 37.02324\n ],\n [\n 122.544837,\n 37.004587\n ],\n [\n 122.545232,\n 36.990205\n ],\n [\n 122.556919,\n 36.978898\n ],\n [\n 122.557551,\n 36.968707\n ],\n [\n 122.545863,\n 36.956317\n ],\n [\n 122.546574,\n 36.923494\n ],\n [\n 122.542468,\n 36.913536\n ],\n [\n 122.532123,\n 36.901457\n ],\n [\n 122.516408,\n 36.890256\n ],\n [\n 122.497061,\n 36.886095\n ],\n [\n 122.484663,\n 36.891536\n ],\n [\n 122.485453,\n 36.903777\n ],\n [\n 122.492639,\n 36.912176\n ],\n [\n 122.483005,\n 36.914056\n ],\n [\n 122.434124,\n 36.914256\n ],\n [\n 122.428833,\n 36.908856\n ],\n [\n 122.446601,\n 36.898217\n ],\n [\n 122.454498,\n 36.878813\n ],\n [\n 122.464448,\n 36.879294\n ],\n [\n 122.457025,\n 36.86913\n ],\n [\n 122.445732,\n 36.873052\n ],\n [\n 122.416119,\n 36.859485\n ],\n [\n 122.403326,\n 36.860686\n ],\n [\n 122.392587,\n 36.866209\n ],\n [\n 122.3839,\n 36.865368\n ],\n [\n 122.386506,\n 36.860046\n ],\n [\n 122.378373,\n 36.844275\n ],\n [\n 122.350655,\n 36.835228\n ],\n [\n 122.342758,\n 36.828502\n ],\n [\n 122.335414,\n 36.83767\n ],\n [\n 122.32657,\n 36.830424\n ],\n [\n 122.298141,\n 36.83707\n ],\n [\n 122.280452,\n 36.835829\n ],\n [\n 122.263869,\n 36.841633\n ],\n [\n 122.250603,\n 36.839912\n ],\n [\n 122.245865,\n 36.835428\n ],\n [\n 122.220437,\n 36.848919\n ],\n [\n 122.196115,\n 36.842874\n ],\n [\n 122.174714,\n 36.842474\n ],\n [\n 122.17203,\n 36.852441\n ],\n [\n 122.181427,\n 36.856323\n ],\n [\n 122.188534,\n 36.866209\n ],\n [\n 122.175662,\n 36.894537\n ],\n [\n 122.164291,\n 36.892536\n ],\n [\n 122.155999,\n 36.883055\n ],\n [\n 122.119674,\n 36.892096\n ],\n [\n 122.117463,\n 36.895737\n ],\n [\n 122.127176,\n 36.918535\n ],\n [\n 122.14139,\n 36.938288\n ],\n [\n 122.136731,\n 36.944325\n ],\n [\n 122.12765,\n 36.945484\n ],\n [\n 122.112409,\n 36.939607\n ],\n [\n 122.106486,\n 36.941686\n ],\n [\n 122.0993,\n 36.93289\n ],\n [\n 122.100801,\n 36.921934\n ],\n [\n 122.09322,\n 36.914136\n ],\n [\n 122.073636,\n 36.914376\n ],\n [\n 122.051998,\n 36.904977\n ],\n [\n 122.05342,\n 36.895697\n ],\n [\n 122.046234,\n 36.891176\n ],\n [\n 122.042522,\n 36.872011\n ],\n [\n 122.037784,\n 36.875492\n ],\n [\n 122.03731,\n 36.895817\n ],\n [\n 122.025307,\n 36.908856\n ],\n [\n 122.022464,\n 36.942006\n ],\n [\n 122.013936,\n 36.959994\n ],\n [\n 121.994668,\n 36.953719\n ],\n [\n 121.98306,\n 36.958436\n ],\n [\n 121.977611,\n 36.947163\n ],\n [\n 121.964818,\n 36.938128\n ],\n [\n 121.927545,\n 36.932371\n ],\n [\n 121.897616,\n 36.921694\n ],\n [\n 121.870846,\n 36.915736\n ],\n [\n 121.862791,\n 36.909256\n ],\n [\n 121.829388,\n 36.898057\n ],\n [\n 121.816121,\n 36.891856\n ],\n [\n 121.790457,\n 36.884255\n ],\n [\n 121.767714,\n 36.874852\n ],\n [\n 121.76195,\n 36.866049\n ],\n [\n 121.763766,\n 36.85084\n ],\n [\n 121.757606,\n 36.841753\n ],\n [\n 121.73818,\n 36.835068\n ],\n [\n 121.726256,\n 36.82626\n ],\n [\n 121.718517,\n 36.829223\n ],\n [\n 121.70683,\n 36.822296\n ],\n [\n 121.670742,\n 36.817651\n ],\n [\n 121.64176,\n 36.805757\n ],\n [\n 121.628494,\n 36.797306\n ],\n [\n 121.628968,\n 36.783245\n ],\n [\n 121.634416,\n 36.766858\n ],\n [\n 121.653527,\n 36.72798\n ],\n [\n 121.651473,\n 36.723851\n ],\n [\n 121.620834,\n 36.737241\n ],\n [\n 121.606067,\n 36.738122\n ],\n [\n 121.599671,\n 36.745578\n ],\n [\n 121.60125,\n 36.763412\n ],\n [\n 121.586009,\n 36.756399\n ],\n [\n 121.570531,\n 36.766257\n ],\n [\n 121.556317,\n 36.764294\n ],\n [\n 121.574638,\n 36.745538\n ],\n [\n 121.574322,\n 36.737\n ],\n [\n 121.565477,\n 36.728822\n ],\n [\n 121.542024,\n 36.734595\n ],\n [\n 121.531995,\n 36.731027\n ],\n [\n 121.532153,\n 36.736198\n ],\n [\n 121.546051,\n 36.741971\n ],\n [\n 121.547394,\n 36.74642\n ],\n [\n 121.53239,\n 36.753273\n ],\n [\n 121.520466,\n 36.749386\n ],\n [\n 121.517702,\n 36.761088\n ],\n [\n 121.507594,\n 36.760928\n ],\n [\n 121.505857,\n 36.770665\n ],\n [\n 121.482245,\n 36.77355\n ],\n [\n 121.481061,\n 36.780401\n ],\n [\n 121.496302,\n 36.792379\n ],\n [\n 121.528205,\n 36.805637\n ],\n [\n 121.546051,\n 36.806558\n ],\n [\n 121.554027,\n 36.81709\n ],\n [\n 121.569979,\n 36.827501\n ],\n [\n 121.565083,\n 36.830504\n ],\n [\n 121.539339,\n 36.823417\n ],\n [\n 121.530179,\n 36.818772\n ],\n [\n 121.522914,\n 36.80824\n ],\n [\n 121.506962,\n 36.803834\n ],\n [\n 121.480271,\n 36.784487\n ],\n [\n 121.478218,\n 36.770825\n ],\n [\n 121.462424,\n 36.784888\n ],\n [\n 121.450184,\n 36.790056\n ],\n [\n 121.417334,\n 36.792739\n ],\n [\n 121.409121,\n 36.790176\n ],\n [\n 121.395855,\n 36.794342\n ],\n [\n 121.396802,\n 36.803834\n ],\n [\n 121.376665,\n 36.830384\n ],\n [\n 121.373428,\n 36.840593\n ],\n [\n 121.36174,\n 36.841273\n ],\n [\n 121.357239,\n 36.852401\n ],\n [\n 121.357397,\n 36.864048\n ],\n [\n 121.363873,\n 36.871651\n ],\n [\n 121.385431,\n 36.877333\n ],\n [\n 121.36482,\n 36.897417\n ],\n [\n 121.366557,\n 36.903617\n ],\n [\n 121.360951,\n 36.921494\n ],\n [\n 121.347605,\n 36.920574\n ],\n [\n 121.312938,\n 36.904097\n ],\n [\n 121.308358,\n 36.905177\n ],\n [\n 121.304173,\n 36.918335\n ],\n [\n 121.282615,\n 36.918535\n ],\n [\n 121.272191,\n 36.927532\n ],\n [\n 121.263189,\n 36.926093\n ],\n [\n 121.252607,\n 36.938088\n ],\n [\n 121.248501,\n 36.953679\n ],\n [\n 121.233734,\n 36.956917\n ],\n [\n 121.22639,\n 36.971065\n ],\n [\n 121.222915,\n 36.986649\n ],\n [\n 121.209096,\n 36.985371\n ],\n [\n 121.19038,\n 36.996558\n ],\n [\n 121.182404,\n 36.99456\n ],\n [\n 121.177587,\n 37.003748\n ],\n [\n 121.181299,\n 37.016131\n ],\n [\n 121.194565,\n 37.019485\n ],\n [\n 121.19496,\n 37.027273\n ],\n [\n 121.188564,\n 37.029948\n ],\n [\n 121.188011,\n 37.041169\n ],\n [\n 121.192512,\n 37.052108\n ],\n [\n 121.191407,\n 37.072026\n ],\n [\n 121.204279,\n 37.07897\n ],\n [\n 121.243131,\n 37.092138\n ],\n [\n 121.246368,\n 37.102631\n ],\n [\n 121.26153,\n 37.117989\n ],\n [\n 121.287827,\n 37.136055\n ],\n [\n 121.306542,\n 37.141996\n ],\n [\n 121.314044,\n 37.141079\n ],\n [\n 121.317992,\n 37.132825\n ],\n [\n 121.326916,\n 37.12768\n ],\n [\n 121.34113,\n 37.127002\n ],\n [\n 121.348316,\n 37.135975\n ],\n [\n 121.358187,\n 37.140282\n ],\n [\n 121.363715,\n 37.129236\n ],\n [\n 121.351475,\n 37.126962\n ],\n [\n 121.369795,\n 37.110889\n ],\n [\n 121.376823,\n 37.115915\n ],\n [\n 121.382746,\n 37.112125\n ],\n [\n 121.391432,\n 37.098282\n ],\n [\n 121.427363,\n 37.100796\n ],\n [\n 121.441656,\n 37.12106\n ],\n [\n 121.447578,\n 37.123333\n ],\n [\n 121.465425,\n 37.12086\n ],\n [\n 121.49946,\n 37.104426\n ],\n [\n 121.547868,\n 37.104945\n ],\n [\n 121.574954,\n 37.110091\n ],\n [\n 121.580323,\n 37.10674\n ],\n [\n 121.589168,\n 37.116712\n ],\n [\n 121.590352,\n 37.128518\n ],\n [\n 121.585377,\n 37.132306\n ],\n [\n 121.590747,\n 37.144269\n ],\n [\n 121.600539,\n 37.141079\n ],\n [\n 121.612147,\n 37.125846\n ],\n [\n 121.625414,\n 37.131908\n ],\n [\n 121.628889,\n 37.137969\n ],\n [\n 121.638839,\n 37.139524\n ],\n [\n 121.639865,\n 37.131908\n ],\n [\n 121.654316,\n 37.121897\n ],\n [\n 121.666714,\n 37.12082\n ],\n [\n 121.669162,\n 37.110649\n ],\n [\n 121.678007,\n 37.121658\n ],\n [\n 121.683692,\n 37.123014\n ],\n [\n 121.682271,\n 37.13127\n ],\n [\n 121.688983,\n 37.133503\n ],\n [\n 121.683455,\n 37.141917\n ],\n [\n 121.694037,\n 37.141239\n ],\n [\n 121.699328,\n 37.125926\n ],\n [\n 121.733995,\n 37.125607\n ],\n [\n 121.737706,\n 37.136175\n ],\n [\n 121.747656,\n 37.135776\n ],\n [\n 121.767872,\n 37.170979\n ],\n [\n 121.761002,\n 37.177954\n ],\n [\n 121.753895,\n 37.172493\n ],\n [\n 121.749315,\n 37.176439\n ],\n [\n 121.760686,\n 37.178831\n ],\n [\n 121.759738,\n 37.19222\n ],\n [\n 121.769057,\n 37.196364\n ],\n [\n 121.761634,\n 37.217997\n ],\n [\n 121.754527,\n 37.212022\n ],\n [\n 121.755632,\n 37.220506\n ],\n [\n 121.748525,\n 37.223255\n ],\n [\n 121.74813,\n 37.241575\n ],\n [\n 121.757211,\n 37.247667\n ],\n [\n 121.7749,\n 37.248225\n ],\n [\n 121.778296,\n 37.260487\n ],\n [\n 121.784692,\n 37.268409\n ],\n [\n 121.792431,\n 37.288469\n ],\n [\n 121.790615,\n 37.299532\n ],\n [\n 121.794879,\n 37.30375\n ],\n [\n 121.815253,\n 37.300447\n ],\n [\n 121.822281,\n 37.303988\n ],\n [\n 121.834047,\n 37.318311\n ],\n [\n 121.859396,\n 37.329249\n ],\n [\n 121.865239,\n 37.336727\n ],\n [\n 121.870293,\n 37.368894\n ],\n [\n 121.882454,\n 37.381694\n ],\n [\n 121.90038,\n 37.391232\n ],\n [\n 121.908435,\n 37.400969\n ],\n [\n 121.91878,\n 37.420755\n ],\n [\n 121.920438,\n 37.429931\n ],\n [\n 121.933941,\n 37.452529\n ],\n [\n 121.929519,\n 37.454713\n ],\n [\n 121.92944,\n 37.460868\n ],\n [\n 121.923992,\n 37.473096\n ]\n ]\n ],\n [\n [\n [\n 122.183559,\n 37.49957\n ],\n [\n 122.171951,\n 37.501792\n ],\n [\n 122.184901,\n 37.5156\n ],\n [\n 122.188218,\n 37.510165\n ],\n [\n 122.199747,\n 37.510323\n ],\n [\n 122.202748,\n 37.501951\n ],\n [\n 122.216173,\n 37.497824\n ],\n [\n 122.183559,\n 37.49957\n ]\n ]\n ],\n [\n [\n [\n 122.257631,\n 36.755638\n ],\n [\n 122.267028,\n 36.754195\n ],\n [\n 122.260316,\n 36.748704\n ],\n [\n 122.257631,\n 36.755638\n ]\n ]\n ],\n [\n [\n [\n 121.484614,\n 36.732871\n ],\n [\n 121.492274,\n 36.740207\n ],\n [\n 121.499776,\n 36.73712\n ],\n [\n 121.484614,\n 36.732871\n ]\n ]\n ],\n [\n [\n [\n 121.620834,\n 36.713827\n ],\n [\n 121.623124,\n 36.728702\n ],\n [\n 121.631179,\n 36.725855\n ],\n [\n 121.620834,\n 36.713827\n ]\n ]\n ],\n [\n [\n [\n 122.482215,\n 37.447089\n ],\n [\n 122.483479,\n 37.454991\n ],\n [\n 122.490586,\n 37.449829\n ],\n [\n 122.482215,\n 37.447089\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 371100,\n \"name\": \"日照市\",\n \"center\": [\n 119.461208,\n 35.428588\n ],\n \"centroid\": [\n 119.146499,\n 35.578656\n ],\n \"childrenNum\": 4,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 10,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 119.662115,\n 35.589294\n ],\n [\n 119.665748,\n 35.570255\n ],\n [\n 119.649875,\n 35.537658\n ],\n [\n 119.639215,\n 35.509446\n ],\n [\n 119.628712,\n 35.500854\n ],\n [\n 119.618999,\n 35.459469\n ],\n [\n 119.612997,\n 35.449813\n ],\n [\n 119.600205,\n 35.443537\n ],\n [\n 119.592545,\n 35.43339\n ],\n [\n 119.579673,\n 35.406527\n ],\n [\n 119.578804,\n 35.385568\n ],\n [\n 119.588991,\n 35.376106\n ],\n [\n 119.586938,\n 35.36387\n ],\n [\n 119.57912,\n 35.357629\n ],\n [\n 119.543743,\n 35.34796\n ],\n [\n 119.539794,\n 35.329802\n ],\n [\n 119.552745,\n 35.330006\n ],\n [\n 119.552113,\n 35.324456\n ],\n [\n 119.53861,\n 35.320456\n ],\n [\n 119.538452,\n 35.29674\n ],\n [\n 119.528502,\n 35.303721\n ],\n [\n 119.520447,\n 35.303803\n ],\n [\n 119.516025,\n 35.318089\n ],\n [\n 119.502442,\n 35.321721\n ],\n [\n 119.476541,\n 35.308334\n ],\n [\n 119.451113,\n 35.28539\n ],\n [\n 119.42458,\n 35.255332\n ],\n [\n 119.411313,\n 35.231638\n ],\n [\n 119.397652,\n 35.166893\n ],\n [\n 119.416604,\n 35.167465\n ],\n [\n 119.416999,\n 35.158183\n ],\n [\n 119.396073,\n 35.157815\n ],\n [\n 119.393546,\n 35.143582\n ],\n [\n 119.397731,\n 35.137692\n ],\n [\n 119.418973,\n 35.128283\n ],\n [\n 119.428292,\n 35.121205\n ],\n [\n 119.432398,\n 35.111385\n ],\n [\n 119.426633,\n 35.108234\n ],\n [\n 119.412893,\n 35.11073\n ],\n [\n 119.403259,\n 35.106802\n ],\n [\n 119.396467,\n 35.091701\n ],\n [\n 119.386518,\n 35.088918\n ],\n [\n 119.374041,\n 35.078685\n ],\n [\n 119.360379,\n 35.075655\n ],\n [\n 119.350508,\n 35.083883\n ],\n [\n 119.305812,\n 35.076679\n ],\n [\n 119.301785,\n 35.093174\n ],\n [\n 119.286702,\n 35.11515\n ],\n [\n 119.267276,\n 35.117154\n ],\n [\n 119.25551,\n 35.122637\n ],\n [\n 119.240743,\n 35.122923\n ],\n [\n 119.220685,\n 35.10717\n ],\n [\n 119.203233,\n 35.110894\n ],\n [\n 119.196679,\n 35.129919\n ],\n [\n 119.189967,\n 35.138101\n ],\n [\n 119.174252,\n 35.139042\n ],\n [\n 119.164223,\n 35.143173\n ],\n [\n 119.163433,\n 35.154134\n ],\n [\n 119.173146,\n 35.1617\n ],\n [\n 119.164855,\n 35.166525\n ],\n [\n 119.157274,\n 35.18243\n ],\n [\n 119.149219,\n 35.189298\n ],\n [\n 119.1354,\n 35.191669\n ],\n [\n 119.139032,\n 35.202338\n ],\n [\n 119.161301,\n 35.204136\n ],\n [\n 119.170225,\n 35.21231\n ],\n [\n 119.174568,\n 35.230331\n ],\n [\n 119.182149,\n 35.241852\n ],\n [\n 119.181991,\n 35.25231\n ],\n [\n 119.187519,\n 35.258192\n ],\n [\n 119.179543,\n 35.287595\n ],\n [\n 119.164065,\n 35.289554\n ],\n [\n 119.155931,\n 35.293882\n ],\n [\n 119.157669,\n 35.301721\n ],\n [\n 119.143218,\n 35.314048\n ],\n [\n 119.141322,\n 35.320823\n ],\n [\n 119.148193,\n 35.326741\n ],\n [\n 119.146455,\n 35.334862\n ],\n [\n 119.133741,\n 35.335596\n ],\n [\n 119.105708,\n 35.330659\n ],\n [\n 119.096153,\n 35.326864\n ],\n [\n 119.087229,\n 35.340575\n ],\n [\n 119.085571,\n 35.354243\n ],\n [\n 119.078385,\n 35.357506\n ],\n [\n 119.075542,\n 35.366113\n ],\n [\n 119.06575,\n 35.364563\n ],\n [\n 119.04893,\n 35.371498\n ],\n [\n 119.044587,\n 35.377004\n ],\n [\n 119.024371,\n 35.386873\n ],\n [\n 118.999654,\n 35.388953\n ],\n [\n 118.984413,\n 35.382224\n ],\n [\n 118.98852,\n 35.36697\n ],\n [\n 118.986861,\n 35.353141\n ],\n [\n 118.973042,\n 35.340167\n ],\n [\n 118.961828,\n 35.334168\n ],\n [\n 118.947219,\n 35.336943\n ],\n [\n 118.930478,\n 35.331271\n ],\n [\n 118.923213,\n 35.339187\n ],\n [\n 118.92195,\n 35.348408\n ],\n [\n 118.904814,\n 35.355507\n ],\n [\n 118.889573,\n 35.357261\n ],\n [\n 118.871015,\n 35.367215\n ],\n [\n 118.874174,\n 35.388464\n ],\n [\n 118.865725,\n 35.391685\n ],\n [\n 118.859644,\n 35.381694\n ],\n [\n 118.84314,\n 35.370804\n ],\n [\n 118.816764,\n 35.373292\n ],\n [\n 118.797575,\n 35.369417\n ],\n [\n 118.784151,\n 35.371049\n ],\n [\n 118.776412,\n 35.37627\n ],\n [\n 118.768989,\n 35.368031\n ],\n [\n 118.739455,\n 35.359505\n ],\n [\n 118.723898,\n 35.368479\n ],\n [\n 118.712527,\n 35.363544\n ],\n [\n 118.709605,\n 35.369825\n ],\n [\n 118.696891,\n 35.379818\n ],\n [\n 118.682914,\n 35.368642\n ],\n [\n 118.652274,\n 35.373578\n ],\n [\n 118.632059,\n 35.368438\n ],\n [\n 118.625425,\n 35.370315\n ],\n [\n 118.624952,\n 35.387036\n ],\n [\n 118.606157,\n 35.390747\n ],\n [\n 118.601419,\n 35.414517\n ],\n [\n 118.619029,\n 35.423118\n ],\n [\n 118.635691,\n 35.421039\n ],\n [\n 118.642246,\n 35.425156\n ],\n [\n 118.632611,\n 35.430903\n ],\n [\n 118.6289,\n 35.449324\n ],\n [\n 118.64801,\n 35.453276\n ],\n [\n 118.651011,\n 35.458614\n ],\n [\n 118.662066,\n 35.461547\n ],\n [\n 118.667831,\n 35.456821\n ],\n [\n 118.693575,\n 35.459103\n ],\n [\n 118.698234,\n 35.455436\n ],\n [\n 118.709131,\n 35.457677\n ],\n [\n 118.723898,\n 35.468758\n ],\n [\n 118.734322,\n 35.48607\n ],\n [\n 118.725004,\n 35.496578\n ],\n [\n 118.698865,\n 35.513558\n ],\n [\n 118.696575,\n 35.528622\n ],\n [\n 118.725083,\n 35.553205\n ],\n [\n 118.724056,\n 35.562972\n ],\n [\n 118.734875,\n 35.569767\n ],\n [\n 118.74056,\n 35.581484\n ],\n [\n 118.735822,\n 35.593443\n ],\n [\n 118.739692,\n 35.62496\n ],\n [\n 118.751458,\n 35.640409\n ],\n [\n 118.76662,\n 35.653539\n ],\n [\n 118.791416,\n 35.68296\n ],\n [\n 118.794101,\n 35.697504\n ],\n [\n 118.806499,\n 35.718056\n ],\n [\n 118.804209,\n 35.728655\n ],\n [\n 118.798918,\n 35.730117\n ],\n [\n 118.757223,\n 35.725935\n ],\n [\n 118.743482,\n 35.729346\n ],\n [\n 118.722161,\n 35.73101\n ],\n [\n 118.707078,\n 35.738075\n ],\n [\n 118.703288,\n 35.745221\n ],\n [\n 118.706525,\n 35.765152\n ],\n [\n 118.702182,\n 35.772295\n ],\n [\n 118.700603,\n 35.791367\n ],\n [\n 118.716712,\n 35.80723\n ],\n [\n 118.724609,\n 35.820454\n ],\n [\n 118.722082,\n 35.834932\n ],\n [\n 118.732822,\n 35.848111\n ],\n [\n 118.7498,\n 35.849489\n ],\n [\n 118.75438,\n 35.853544\n ],\n [\n 118.756038,\n 35.877379\n ],\n [\n 118.765198,\n 35.898331\n ],\n [\n 118.777281,\n 35.896791\n ],\n [\n 118.775148,\n 35.917251\n ],\n [\n 118.805709,\n 35.923854\n ],\n [\n 118.80413,\n 35.939731\n ],\n [\n 118.813922,\n 35.948761\n ],\n [\n 118.837217,\n 35.948883\n ],\n [\n 118.883571,\n 35.957305\n ],\n [\n 118.893047,\n 35.963257\n ],\n [\n 118.897312,\n 35.97605\n ],\n [\n 118.87986,\n 35.992321\n ],\n [\n 118.896048,\n 36.006404\n ],\n [\n 118.956853,\n 36.008427\n ],\n [\n 118.981886,\n 36.017409\n ],\n [\n 118.999022,\n 36.038404\n ],\n [\n 119.012526,\n 36.03533\n ],\n [\n 119.024134,\n 36.02631\n ],\n [\n 119.017659,\n 36.024044\n ],\n [\n 119.014105,\n 36.013404\n ],\n [\n 119.023739,\n 36.011219\n ],\n [\n 119.024924,\n 36.003571\n ],\n [\n 119.015606,\n 35.995923\n ],\n [\n 119.021054,\n 35.977426\n ],\n [\n 119.05201,\n 35.9803\n ],\n [\n 119.060538,\n 35.978195\n ],\n [\n 119.066619,\n 35.963986\n ],\n [\n 119.07878,\n 35.959289\n ],\n [\n 119.088888,\n 35.963176\n ],\n [\n 119.121817,\n 35.962731\n ],\n [\n 119.134373,\n 35.968601\n ],\n [\n 119.153246,\n 35.971192\n ],\n [\n 119.155063,\n 35.965767\n ],\n [\n 119.178595,\n 35.97107\n ],\n [\n 119.182623,\n 35.962285\n ],\n [\n 119.179385,\n 35.926163\n ],\n [\n 119.183412,\n 35.91875\n ],\n [\n 119.169672,\n 35.91721\n ],\n [\n 119.151746,\n 35.905502\n ],\n [\n 119.144718,\n 35.904449\n ],\n [\n 119.135637,\n 35.892982\n ],\n [\n 119.158221,\n 35.882486\n ],\n [\n 119.161854,\n 35.894481\n ],\n [\n 119.169119,\n 35.894846\n ],\n [\n 119.190598,\n 35.879446\n ],\n [\n 119.217053,\n 35.879527\n ],\n [\n 119.240427,\n 35.884269\n ],\n [\n 119.281964,\n 35.910202\n ],\n [\n 119.294441,\n 35.911336\n ],\n [\n 119.298153,\n 35.893022\n ],\n [\n 119.315999,\n 35.887552\n ],\n [\n 119.345533,\n 35.893792\n ],\n [\n 119.360695,\n 35.884066\n ],\n [\n 119.371435,\n 35.860476\n ],\n [\n 119.358247,\n 35.84511\n ],\n [\n 119.372382,\n 35.830025\n ],\n [\n 119.374041,\n 35.816154\n ],\n [\n 119.368829,\n 35.770834\n ],\n [\n 119.375857,\n 35.770712\n ],\n [\n 119.390466,\n 35.778707\n ],\n [\n 119.397731,\n 35.786823\n ],\n [\n 119.427739,\n 35.802078\n ],\n [\n 119.444322,\n 35.804026\n ],\n [\n 119.455693,\n 35.809056\n ],\n [\n 119.464696,\n 35.80861\n ],\n [\n 119.482385,\n 35.799725\n ],\n [\n 119.493282,\n 35.789866\n ],\n [\n 119.496599,\n 35.779235\n ],\n [\n 119.48657,\n 35.771646\n ],\n [\n 119.48807,\n 35.754599\n ],\n [\n 119.504101,\n 35.752325\n ],\n [\n 119.525422,\n 35.730604\n ],\n [\n 119.517762,\n 35.723742\n ],\n [\n 119.521079,\n 35.716879\n ],\n [\n 119.518473,\n 35.700632\n ],\n [\n 119.51484,\n 35.697992\n ],\n [\n 119.519105,\n 35.68552\n ],\n [\n 119.528265,\n 35.674305\n ],\n [\n 119.524474,\n 35.632279\n ],\n [\n 119.517762,\n 35.625774\n ],\n [\n 119.518157,\n 35.615446\n ],\n [\n 119.536872,\n 35.606011\n ],\n [\n 119.538215,\n 35.589294\n ],\n [\n 119.556535,\n 35.592508\n ],\n [\n 119.57762,\n 35.586243\n ],\n [\n 119.592308,\n 35.600683\n ],\n [\n 119.600599,\n 35.590271\n ],\n [\n 119.609286,\n 35.59202\n ],\n [\n 119.614972,\n 35.606336\n ],\n [\n 119.634713,\n 35.598731\n ],\n [\n 119.651455,\n 35.588766\n ],\n [\n 119.662115,\n 35.589294\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 371300,\n \"name\": \"临沂市\",\n \"center\": [\n 118.326443,\n 35.065282\n ],\n \"centroid\": [\n 118.286436,\n 35.311894\n ],\n \"childrenNum\": 12,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 11,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 117.419191,\n 35.273997\n ],\n [\n 117.439565,\n 35.282368\n ],\n [\n 117.463098,\n 35.287472\n ],\n [\n 117.478891,\n 35.314375\n ],\n [\n 117.453937,\n 35.325027\n ],\n [\n 117.446988,\n 35.330292\n ],\n [\n 117.439012,\n 35.348939\n ],\n [\n 117.439644,\n 35.359668\n ],\n [\n 117.463887,\n 35.375617\n ],\n [\n 117.463334,\n 35.39038\n ],\n [\n 117.474785,\n 35.400941\n ],\n [\n 117.467441,\n 35.418186\n ],\n [\n 117.455833,\n 35.424953\n ],\n [\n 117.453779,\n 35.442396\n ],\n [\n 117.42851,\n 35.458614\n ],\n [\n 117.442171,\n 35.469247\n ],\n [\n 117.452279,\n 35.490306\n ],\n [\n 117.462703,\n 35.497922\n ],\n [\n 117.467441,\n 35.512255\n ],\n [\n 117.472416,\n 35.514372\n ],\n [\n 117.481734,\n 35.507898\n ],\n [\n 117.498396,\n 35.503093\n ],\n [\n 117.501634,\n 35.512947\n ],\n [\n 117.513795,\n 35.514576\n ],\n [\n 117.520033,\n 35.51991\n ],\n [\n 117.516401,\n 35.527319\n ],\n [\n 117.50424,\n 35.531675\n ],\n [\n 117.496264,\n 35.543031\n ],\n [\n 117.499502,\n 35.550845\n ],\n [\n 117.515058,\n 35.551008\n ],\n [\n 117.528641,\n 35.547182\n ],\n [\n 117.582418,\n 35.554141\n ],\n [\n 117.593473,\n 35.567448\n ],\n [\n 117.590394,\n 35.573551\n ],\n [\n 117.592763,\n 35.589701\n ],\n [\n 117.585577,\n 35.593972\n ],\n [\n 117.588893,\n 35.619878\n ],\n [\n 117.596948,\n 35.630449\n ],\n [\n 117.599001,\n 35.649149\n ],\n [\n 117.605319,\n 35.674834\n ],\n [\n 117.62585,\n 35.703841\n ],\n [\n 117.634616,\n 35.709324\n ],\n [\n 117.663913,\n 35.70969\n ],\n [\n 117.679154,\n 35.713305\n ],\n [\n 117.707424,\n 35.726016\n ],\n [\n 117.732615,\n 35.71237\n ],\n [\n 117.754173,\n 35.709609\n ],\n [\n 117.769019,\n 35.726625\n ],\n [\n 117.781733,\n 35.734096\n ],\n [\n 117.811504,\n 35.732919\n ],\n [\n 117.823033,\n 35.739496\n ],\n [\n 117.837405,\n 35.741445\n ],\n [\n 117.833694,\n 35.760484\n ],\n [\n 117.828482,\n 35.773837\n ],\n [\n 117.831167,\n 35.786661\n ],\n [\n 117.846092,\n 35.796398\n ],\n [\n 117.840959,\n 35.812058\n ],\n [\n 117.828403,\n 35.821792\n ],\n [\n 117.827376,\n 35.827754\n ],\n [\n 117.842143,\n 35.84507\n ],\n [\n 117.85541,\n 35.850219\n ],\n [\n 117.86686,\n 35.86984\n ],\n [\n 117.883364,\n 35.882648\n ],\n [\n 117.906265,\n 35.884634\n ],\n [\n 117.924586,\n 35.880946\n ],\n [\n 117.937615,\n 35.874826\n ],\n [\n 117.960516,\n 35.87057\n ],\n [\n 117.968097,\n 35.884066\n ],\n [\n 117.97931,\n 35.889699\n ],\n [\n 117.981364,\n 35.906191\n ],\n [\n 117.988234,\n 35.908703\n ],\n [\n 117.99921,\n 35.925393\n ],\n [\n 117.997394,\n 35.934587\n ],\n [\n 117.988471,\n 35.947709\n ],\n [\n 118.021084,\n 35.949004\n ],\n [\n 118.02298,\n 35.958965\n ],\n [\n 118.03293,\n 35.964998\n ],\n [\n 118.032693,\n 35.974268\n ],\n [\n 118.042248,\n 35.986371\n ],\n [\n 118.058989,\n 35.992968\n ],\n [\n 118.066807,\n 36.009155\n ],\n [\n 118.075888,\n 36.009034\n ],\n [\n 118.078415,\n 36.017652\n ],\n [\n 118.084338,\n 36.012149\n ],\n [\n 118.093261,\n 36.014618\n ],\n [\n 118.096104,\n 36.024246\n ],\n [\n 118.10937,\n 36.030031\n ],\n [\n 118.132666,\n 36.030436\n ],\n [\n 118.135588,\n 36.02364\n ],\n [\n 118.178388,\n 36.017005\n ],\n [\n 118.197578,\n 36.004947\n ],\n [\n 118.206106,\n 35.97864\n ],\n [\n 118.193787,\n 35.974026\n ],\n [\n 118.207054,\n 35.964391\n ],\n [\n 118.209897,\n 35.955767\n ],\n [\n 118.22569,\n 35.948235\n ],\n [\n 118.236351,\n 35.947749\n ],\n [\n 118.236904,\n 35.939245\n ],\n [\n 118.245906,\n 35.932157\n ],\n [\n 118.257119,\n 35.930699\n ],\n [\n 118.257593,\n 35.925717\n ],\n [\n 118.26928,\n 35.928512\n ],\n [\n 118.281362,\n 35.935964\n ],\n [\n 118.293523,\n 35.937503\n ],\n [\n 118.303552,\n 35.948923\n ],\n [\n 118.314134,\n 35.950827\n ],\n [\n 118.320136,\n 35.946575\n ],\n [\n 118.344774,\n 35.955888\n ],\n [\n 118.352828,\n 35.956698\n ],\n [\n 118.360725,\n 35.970908\n ],\n [\n 118.382283,\n 35.975078\n ],\n [\n 118.387021,\n 35.987586\n ],\n [\n 118.415213,\n 35.990783\n ],\n [\n 118.430612,\n 35.969694\n ],\n [\n 118.459356,\n 35.952689\n ],\n [\n 118.470964,\n 35.960868\n ],\n [\n 118.502157,\n 35.962488\n ],\n [\n 118.505157,\n 35.965808\n ],\n [\n 118.499393,\n 35.976212\n ],\n [\n 118.486521,\n 35.988759\n ],\n [\n 118.49268,\n 35.995437\n ],\n [\n 118.487074,\n 36.005797\n ],\n [\n 118.476571,\n 36.012797\n ],\n [\n 118.469859,\n 36.022992\n ],\n [\n 118.476097,\n 36.031407\n ],\n [\n 118.489206,\n 36.025784\n ],\n [\n 118.503341,\n 36.024246\n ],\n [\n 118.507447,\n 36.029789\n ],\n [\n 118.516845,\n 36.026107\n ],\n [\n 118.522609,\n 36.043622\n ],\n [\n 118.522214,\n 36.05349\n ],\n [\n 118.513449,\n 36.064085\n ],\n [\n 118.516608,\n 36.068573\n ],\n [\n 118.507842,\n 36.074961\n ],\n [\n 118.522925,\n 36.084784\n ],\n [\n 118.529479,\n 36.093879\n ],\n [\n 118.526716,\n 36.104671\n ],\n [\n 118.504762,\n 36.105802\n ],\n [\n 118.509974,\n 36.114612\n ],\n [\n 118.515502,\n 36.109884\n ],\n [\n 118.535797,\n 36.118531\n ],\n [\n 118.541719,\n 36.124996\n ],\n [\n 118.556881,\n 36.130935\n ],\n [\n 118.565015,\n 36.130087\n ],\n [\n 118.563988,\n 36.147094\n ],\n [\n 118.572201,\n 36.156424\n ],\n [\n 118.581914,\n 36.151456\n ],\n [\n 118.606236,\n 36.164218\n ],\n [\n 118.622109,\n 36.17718\n ],\n [\n 118.640824,\n 36.171042\n ],\n [\n 118.644299,\n 36.177018\n ],\n [\n 118.653143,\n 36.176695\n ],\n [\n 118.666015,\n 36.168983\n ],\n [\n 118.675491,\n 36.170194\n ],\n [\n 118.683388,\n 36.158564\n ],\n [\n 118.679913,\n 36.152062\n ],\n [\n 118.701235,\n 36.144509\n ],\n [\n 118.703761,\n 36.150446\n ],\n [\n 118.714659,\n 36.154485\n ],\n [\n 118.72603,\n 36.141035\n ],\n [\n 118.736454,\n 36.146528\n ],\n [\n 118.73298,\n 36.1519\n ],\n [\n 118.733532,\n 36.166802\n ],\n [\n 118.741824,\n 36.165551\n ],\n [\n 118.751142,\n 36.183115\n ],\n [\n 118.745535,\n 36.191754\n ],\n [\n 118.766383,\n 36.206649\n ],\n [\n 118.78573,\n 36.197487\n ],\n [\n 118.802076,\n 36.202855\n ],\n [\n 118.809026,\n 36.198738\n ],\n [\n 118.835796,\n 36.203138\n ],\n [\n 118.847009,\n 36.199263\n ],\n [\n 118.848746,\n 36.188606\n ],\n [\n 118.844561,\n 36.18473\n ],\n [\n 118.846614,\n 36.172092\n ],\n [\n 118.85459,\n 36.170194\n ],\n [\n 118.859802,\n 36.16232\n ],\n [\n 118.858302,\n 36.143256\n ],\n [\n 118.863908,\n 36.139298\n ],\n [\n 118.858302,\n 36.129966\n ],\n [\n 118.860197,\n 36.114733\n ],\n [\n 118.865961,\n 36.113682\n ],\n [\n 118.860513,\n 36.101316\n ],\n [\n 118.875911,\n 36.091535\n ],\n [\n 118.880886,\n 36.08438\n ],\n [\n 118.886493,\n 36.088584\n ],\n [\n 118.908288,\n 36.091292\n ],\n [\n 118.920765,\n 36.105721\n ],\n [\n 118.916185,\n 36.111702\n ],\n [\n 118.936322,\n 36.11344\n ],\n [\n 118.943271,\n 36.119582\n ],\n [\n 118.954642,\n 36.1115\n ],\n [\n 118.958512,\n 36.104145\n ],\n [\n 118.970041,\n 36.104671\n ],\n [\n 118.970278,\n 36.09873\n ],\n [\n 118.988756,\n 36.092343\n ],\n [\n 119.000523,\n 36.099497\n ],\n [\n 119.013868,\n 36.09881\n ],\n [\n 119.020344,\n 36.104307\n ],\n [\n 119.038506,\n 36.090444\n ],\n [\n 119.048851,\n 36.092707\n ],\n [\n 119.066935,\n 36.081631\n ],\n [\n 119.063539,\n 36.075042\n ],\n [\n 119.049641,\n 36.066632\n ],\n [\n 119.042534,\n 36.055512\n ],\n [\n 119.040322,\n 36.042934\n ],\n [\n 119.052089,\n 36.037838\n ],\n [\n 119.047903,\n 36.024813\n ],\n [\n 119.035584,\n 36.02275\n ],\n [\n 119.024134,\n 36.02631\n ],\n [\n 119.012526,\n 36.03533\n ],\n [\n 118.999022,\n 36.038404\n ],\n [\n 118.981886,\n 36.017409\n ],\n [\n 118.956853,\n 36.008427\n ],\n [\n 118.896048,\n 36.006404\n ],\n [\n 118.87986,\n 35.992321\n ],\n [\n 118.897312,\n 35.97605\n ],\n [\n 118.893047,\n 35.963257\n ],\n [\n 118.883571,\n 35.957305\n ],\n [\n 118.837217,\n 35.948883\n ],\n [\n 118.813922,\n 35.948761\n ],\n [\n 118.80413,\n 35.939731\n ],\n [\n 118.805709,\n 35.923854\n ],\n [\n 118.775148,\n 35.917251\n ],\n [\n 118.777281,\n 35.896791\n ],\n [\n 118.765198,\n 35.898331\n ],\n [\n 118.756038,\n 35.877379\n ],\n [\n 118.75438,\n 35.853544\n ],\n [\n 118.7498,\n 35.849489\n ],\n [\n 118.732822,\n 35.848111\n ],\n [\n 118.722082,\n 35.834932\n ],\n [\n 118.724609,\n 35.820454\n ],\n [\n 118.716712,\n 35.80723\n ],\n [\n 118.700603,\n 35.791367\n ],\n [\n 118.702182,\n 35.772295\n ],\n [\n 118.706525,\n 35.765152\n ],\n [\n 118.703288,\n 35.745221\n ],\n [\n 118.707078,\n 35.738075\n ],\n [\n 118.722161,\n 35.73101\n ],\n [\n 118.743482,\n 35.729346\n ],\n [\n 118.757223,\n 35.725935\n ],\n [\n 118.798918,\n 35.730117\n ],\n [\n 118.804209,\n 35.728655\n ],\n [\n 118.806499,\n 35.718056\n ],\n [\n 118.794101,\n 35.697504\n ],\n [\n 118.791416,\n 35.68296\n ],\n [\n 118.76662,\n 35.653539\n ],\n [\n 118.751458,\n 35.640409\n ],\n [\n 118.739692,\n 35.62496\n ],\n [\n 118.735822,\n 35.593443\n ],\n [\n 118.74056,\n 35.581484\n ],\n [\n 118.734875,\n 35.569767\n ],\n [\n 118.724056,\n 35.562972\n ],\n [\n 118.725083,\n 35.553205\n ],\n [\n 118.696575,\n 35.528622\n ],\n [\n 118.698865,\n 35.513558\n ],\n [\n 118.725004,\n 35.496578\n ],\n [\n 118.734322,\n 35.48607\n ],\n [\n 118.723898,\n 35.468758\n ],\n [\n 118.709131,\n 35.457677\n ],\n [\n 118.698234,\n 35.455436\n ],\n [\n 118.693575,\n 35.459103\n ],\n [\n 118.667831,\n 35.456821\n ],\n [\n 118.662066,\n 35.461547\n ],\n [\n 118.651011,\n 35.458614\n ],\n [\n 118.64801,\n 35.453276\n ],\n [\n 118.6289,\n 35.449324\n ],\n [\n 118.632611,\n 35.430903\n ],\n [\n 118.642246,\n 35.425156\n ],\n [\n 118.635691,\n 35.421039\n ],\n [\n 118.619029,\n 35.423118\n ],\n [\n 118.601419,\n 35.414517\n ],\n [\n 118.606157,\n 35.390747\n ],\n [\n 118.624952,\n 35.387036\n ],\n [\n 118.625425,\n 35.370315\n ],\n [\n 118.632059,\n 35.368438\n ],\n [\n 118.652274,\n 35.373578\n ],\n [\n 118.682914,\n 35.368642\n ],\n [\n 118.696891,\n 35.379818\n ],\n [\n 118.709605,\n 35.369825\n ],\n [\n 118.712527,\n 35.363544\n ],\n [\n 118.723898,\n 35.368479\n ],\n [\n 118.739455,\n 35.359505\n ],\n [\n 118.768989,\n 35.368031\n ],\n [\n 118.776412,\n 35.37627\n ],\n [\n 118.784151,\n 35.371049\n ],\n [\n 118.797575,\n 35.369417\n ],\n [\n 118.816764,\n 35.373292\n ],\n [\n 118.84314,\n 35.370804\n ],\n [\n 118.859644,\n 35.381694\n ],\n [\n 118.865725,\n 35.391685\n ],\n [\n 118.874174,\n 35.388464\n ],\n [\n 118.871015,\n 35.367215\n ],\n [\n 118.889573,\n 35.357261\n ],\n [\n 118.904814,\n 35.355507\n ],\n [\n 118.92195,\n 35.348408\n ],\n [\n 118.923213,\n 35.339187\n ],\n [\n 118.930478,\n 35.331271\n ],\n [\n 118.947219,\n 35.336943\n ],\n [\n 118.961828,\n 35.334168\n ],\n [\n 118.973042,\n 35.340167\n ],\n [\n 118.986861,\n 35.353141\n ],\n [\n 118.98852,\n 35.36697\n ],\n [\n 118.984413,\n 35.382224\n ],\n [\n 118.999654,\n 35.388953\n ],\n [\n 119.024371,\n 35.386873\n ],\n [\n 119.044587,\n 35.377004\n ],\n [\n 119.04893,\n 35.371498\n ],\n [\n 119.06575,\n 35.364563\n ],\n [\n 119.075542,\n 35.366113\n ],\n [\n 119.078385,\n 35.357506\n ],\n [\n 119.085571,\n 35.354243\n ],\n [\n 119.087229,\n 35.340575\n ],\n [\n 119.096153,\n 35.326864\n ],\n [\n 119.105708,\n 35.330659\n ],\n [\n 119.133741,\n 35.335596\n ],\n [\n 119.146455,\n 35.334862\n ],\n [\n 119.148193,\n 35.326741\n ],\n [\n 119.141322,\n 35.320823\n ],\n [\n 119.143218,\n 35.314048\n ],\n [\n 119.157669,\n 35.301721\n ],\n [\n 119.155931,\n 35.293882\n ],\n [\n 119.164065,\n 35.289554\n ],\n [\n 119.179543,\n 35.287595\n ],\n [\n 119.187519,\n 35.258192\n ],\n [\n 119.181991,\n 35.25231\n ],\n [\n 119.182149,\n 35.241852\n ],\n [\n 119.174568,\n 35.230331\n ],\n [\n 119.170225,\n 35.21231\n ],\n [\n 119.161301,\n 35.204136\n ],\n [\n 119.139032,\n 35.202338\n ],\n [\n 119.1354,\n 35.191669\n ],\n [\n 119.149219,\n 35.189298\n ],\n [\n 119.157274,\n 35.18243\n ],\n [\n 119.164855,\n 35.166525\n ],\n [\n 119.173146,\n 35.1617\n ],\n [\n 119.163433,\n 35.154134\n ],\n [\n 119.164223,\n 35.143173\n ],\n [\n 119.174252,\n 35.139042\n ],\n [\n 119.189967,\n 35.138101\n ],\n [\n 119.196679,\n 35.129919\n ],\n [\n 119.203233,\n 35.110894\n ],\n [\n 119.171409,\n 35.10717\n ],\n [\n 119.159011,\n 35.100991\n ],\n [\n 119.138085,\n 35.096285\n ],\n [\n 119.129477,\n 35.076187\n ],\n [\n 119.120475,\n 35.070088\n ],\n [\n 119.120396,\n 35.05801\n ],\n [\n 119.114631,\n 35.05498\n ],\n [\n 119.073647,\n 35.056659\n ],\n [\n 119.061407,\n 35.051581\n ],\n [\n 119.037401,\n 35.051335\n ],\n [\n 119.00534,\n 35.05412\n ],\n [\n 118.992152,\n 35.048182\n ],\n [\n 118.965619,\n 35.046462\n ],\n [\n 118.945166,\n 35.040811\n ],\n [\n 118.928504,\n 35.050885\n ],\n [\n 118.911131,\n 35.047773\n ],\n [\n 118.903787,\n 35.041343\n ],\n [\n 118.885782,\n 35.034258\n ],\n [\n 118.86533,\n 35.029834\n ],\n [\n 118.862487,\n 35.025697\n ],\n [\n 118.865093,\n 34.993208\n ],\n [\n 118.859249,\n 34.962633\n ],\n [\n 118.86075,\n 34.943979\n ],\n [\n 118.829715,\n 34.911129\n ],\n [\n 118.805235,\n 34.873055\n ],\n [\n 118.802471,\n 34.845637\n ],\n [\n 118.768989,\n 34.846129\n ],\n [\n 118.768278,\n 34.838822\n ],\n [\n 118.78194,\n 34.82749\n ],\n [\n 118.776649,\n 34.818785\n ],\n [\n 118.779018,\n 34.809627\n ],\n [\n 118.773569,\n 34.795333\n ],\n [\n 118.756512,\n 34.789541\n ],\n [\n 118.73756,\n 34.792088\n ],\n [\n 118.728399,\n 34.786871\n ],\n [\n 118.740166,\n 34.781243\n ],\n [\n 118.738507,\n 34.766862\n ],\n [\n 118.727215,\n 34.768752\n ],\n [\n 118.716475,\n 34.763821\n ],\n [\n 118.719239,\n 34.745533\n ],\n [\n 118.730374,\n 34.745451\n ],\n [\n 118.740087,\n 34.736901\n ],\n [\n 118.759197,\n 34.740847\n ],\n [\n 118.768515,\n 34.738093\n ],\n [\n 118.78344,\n 34.722061\n ],\n [\n 118.758723,\n 34.703434\n ],\n [\n 118.739376,\n 34.69377\n ],\n [\n 118.720108,\n 34.694222\n ],\n [\n 118.704077,\n 34.688752\n ],\n [\n 118.690258,\n 34.678593\n ],\n [\n 118.681335,\n 34.678346\n ],\n [\n 118.664357,\n 34.693441\n ],\n [\n 118.650537,\n 34.695086\n ],\n [\n 118.633717,\n 34.687025\n ],\n [\n 118.604894,\n 34.696484\n ],\n [\n 118.60134,\n 34.714167\n ],\n [\n 118.570464,\n 34.712522\n ],\n [\n 118.558934,\n 34.706847\n ],\n [\n 118.546063,\n 34.70619\n ],\n [\n 118.53935,\n 34.711494\n ],\n [\n 118.525215,\n 34.712563\n ],\n [\n 118.522688,\n 34.692289\n ],\n [\n 118.508158,\n 34.687066\n ],\n [\n 118.500814,\n 34.675178\n ],\n [\n 118.484231,\n 34.6709\n ],\n [\n 118.468437,\n 34.674315\n ],\n [\n 118.460856,\n 34.65757\n ],\n [\n 118.466463,\n 34.643127\n ],\n [\n 118.474913,\n 34.637201\n ],\n [\n 118.473807,\n 34.623412\n ],\n [\n 118.46362,\n 34.625265\n ],\n [\n 118.452881,\n 34.617691\n ],\n [\n 118.439219,\n 34.626294\n ],\n [\n 118.42382,\n 34.591094\n ],\n [\n 118.428322,\n 34.563253\n ],\n [\n 118.440956,\n 34.52477\n ],\n [\n 118.439535,\n 34.507996\n ],\n [\n 118.430928,\n 34.489074\n ],\n [\n 118.421372,\n 34.483219\n ],\n [\n 118.41624,\n 34.473859\n ],\n [\n 118.411344,\n 34.446391\n ],\n [\n 118.405342,\n 34.437027\n ],\n [\n 118.404947,\n 34.427744\n ],\n [\n 118.395155,\n 34.427084\n ],\n [\n 118.379993,\n 34.415531\n ],\n [\n 118.353223,\n 34.41747\n ],\n [\n 118.352197,\n 34.422834\n ],\n [\n 118.320925,\n 34.421349\n ],\n [\n 118.290681,\n 34.424567\n ],\n [\n 118.28918,\n 34.412271\n ],\n [\n 118.279862,\n 34.412188\n ],\n [\n 118.277414,\n 34.404677\n ],\n [\n 118.242431,\n 34.405709\n ],\n [\n 118.230981,\n 34.398693\n ],\n [\n 118.220241,\n 34.405957\n ],\n [\n 118.217714,\n 34.379127\n ],\n [\n 118.204369,\n 34.377352\n ],\n [\n 118.189602,\n 34.380654\n ],\n [\n 118.183363,\n 34.390355\n ],\n [\n 118.179336,\n 34.379416\n ],\n [\n 118.170413,\n 34.381356\n ],\n [\n 118.177125,\n 34.408722\n ],\n [\n 118.178862,\n 34.425186\n ],\n [\n 118.177757,\n 34.453238\n ],\n [\n 118.139931,\n 34.475344\n ],\n [\n 118.132824,\n 34.483425\n ],\n [\n 118.141826,\n 34.497154\n ],\n [\n 118.164964,\n 34.504904\n ],\n [\n 118.16757,\n 34.519701\n ],\n [\n 118.184706,\n 34.544179\n ],\n [\n 118.163542,\n 34.551471\n ],\n [\n 118.153671,\n 34.549164\n ],\n [\n 118.140721,\n 34.554025\n ],\n [\n 118.137167,\n 34.563253\n ],\n [\n 118.126428,\n 34.55522\n ],\n [\n 118.100447,\n 34.564736\n ],\n [\n 118.078968,\n 34.569761\n ],\n [\n 118.082363,\n 34.579893\n ],\n [\n 118.102816,\n 34.593441\n ],\n [\n 118.11474,\n 34.614397\n ],\n [\n 118.113003,\n 34.621437\n ],\n [\n 118.100526,\n 34.626582\n ],\n [\n 118.094603,\n 34.636583\n ],\n [\n 118.102658,\n 34.647736\n ],\n [\n 118.084022,\n 34.655924\n ],\n [\n 118.077783,\n 34.653702\n ],\n [\n 118.05741,\n 34.655019\n ],\n [\n 118.053935,\n 34.650945\n ],\n [\n 118.02069,\n 34.660409\n ],\n [\n 118.018242,\n 34.647036\n ],\n [\n 118.007818,\n 34.64753\n ],\n [\n 118.007423,\n 34.65613\n ],\n [\n 117.99084,\n 34.661726\n ],\n [\n 117.991708,\n 34.670077\n ],\n [\n 117.96328,\n 34.678552\n ],\n [\n 117.951672,\n 34.678469\n ],\n [\n 117.939669,\n 34.664852\n ],\n [\n 117.90974,\n 34.67016\n ],\n [\n 117.903106,\n 34.644567\n ],\n [\n 117.880995,\n 34.645184\n ],\n [\n 117.877916,\n 34.650205\n ],\n [\n 117.863465,\n 34.645184\n ],\n [\n 117.849408,\n 34.647201\n ],\n [\n 117.847513,\n 34.652386\n ],\n [\n 117.834483,\n 34.647324\n ],\n [\n 117.831798,\n 34.653455\n ],\n [\n 117.820111,\n 34.646172\n ],\n [\n 117.805818,\n 34.646254\n ],\n [\n 117.819243,\n 34.681842\n ],\n [\n 117.825639,\n 34.684392\n ],\n [\n 117.831719,\n 34.707793\n ],\n [\n 117.825244,\n 34.713139\n ],\n [\n 117.823665,\n 34.72868\n ],\n [\n 117.830061,\n 34.740888\n ],\n [\n 117.830614,\n 34.760246\n ],\n [\n 117.79958,\n 34.768875\n ],\n [\n 117.784576,\n 34.780667\n ],\n [\n 117.784023,\n 34.79484\n ],\n [\n 117.77739,\n 34.801248\n ],\n [\n 117.798632,\n 34.810653\n ],\n [\n 117.803686,\n 34.830734\n ],\n [\n 117.795315,\n 34.835907\n ],\n [\n 117.763175,\n 34.848839\n ],\n [\n 117.75291,\n 34.857623\n ],\n [\n 117.742407,\n 34.874163\n ],\n [\n 117.729298,\n 34.876994\n ],\n [\n 117.715163,\n 34.896238\n ],\n [\n 117.70466,\n 34.906699\n ],\n [\n 117.698501,\n 34.919989\n ],\n [\n 117.704265,\n 34.933605\n ],\n [\n 117.712004,\n 34.934999\n ],\n [\n 117.714689,\n 34.947833\n ],\n [\n 117.724323,\n 34.958329\n ],\n [\n 117.719506,\n 34.968331\n ],\n [\n 117.726534,\n 34.979561\n ],\n [\n 117.728035,\n 35.008041\n ],\n [\n 117.737985,\n 35.013203\n ],\n [\n 117.744618,\n 35.022748\n ],\n [\n 117.736247,\n 35.031514\n ],\n [\n 117.704423,\n 35.031227\n ],\n [\n 117.707345,\n 35.052318\n ],\n [\n 117.69321,\n 35.06018\n ],\n [\n 117.676469,\n 35.065543\n ],\n [\n 117.656885,\n 35.077497\n ],\n [\n 117.650725,\n 35.092724\n ],\n [\n 117.623007,\n 35.113063\n ],\n [\n 117.604371,\n 35.13401\n ],\n [\n 117.600344,\n 35.135524\n ],\n [\n 117.591025,\n 35.152539\n ],\n [\n 117.586208,\n 35.152989\n ],\n [\n 117.58376,\n 35.164317\n ],\n [\n 117.570336,\n 35.168365\n ],\n [\n 117.556043,\n 35.161291\n ],\n [\n 117.548462,\n 35.161741\n ],\n [\n 117.528009,\n 35.184351\n ],\n [\n 117.526825,\n 35.200621\n ],\n [\n 117.507162,\n 35.198986\n ],\n [\n 117.494843,\n 35.205893\n ],\n [\n 117.480628,\n 35.222771\n ],\n [\n 117.468073,\n 35.228369\n ],\n [\n 117.448331,\n 35.231842\n ],\n [\n 117.449752,\n 35.246795\n ],\n [\n 117.439486,\n 35.258927\n ],\n [\n 117.426456,\n 35.261786\n ],\n [\n 117.419191,\n 35.273997\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 371400,\n \"name\": \"德州市\",\n \"center\": [\n 116.307428,\n 37.453968\n ],\n \"centroid\": [\n 116.653994,\n 37.251363\n ],\n \"childrenNum\": 11,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 12,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 115.768684,\n 36.921014\n ],\n [\n 115.761972,\n 36.924413\n ],\n [\n 115.762683,\n 36.939327\n ],\n [\n 115.772791,\n 36.936849\n ],\n [\n 115.788189,\n 36.9526\n ],\n [\n 115.796876,\n 36.968747\n ],\n [\n 115.791743,\n 36.975261\n ],\n [\n 115.784478,\n 36.970625\n ],\n [\n 115.786373,\n 36.983093\n ],\n [\n 115.776265,\n 36.990884\n ],\n [\n 115.790874,\n 37.005985\n ],\n [\n 115.808089,\n 37.010259\n ],\n [\n 115.813222,\n 37.019126\n ],\n [\n 115.812354,\n 37.02895\n ],\n [\n 115.825778,\n 37.032384\n ],\n [\n 115.831938,\n 37.045281\n ],\n [\n 115.85626,\n 37.06073\n ],\n [\n 115.855154,\n 37.071108\n ],\n [\n 115.865025,\n 37.070828\n ],\n [\n 115.868263,\n 37.084038\n ],\n [\n 115.879476,\n 37.105583\n ],\n [\n 115.885399,\n 37.128757\n ],\n [\n 115.879397,\n 37.138647\n ],\n [\n 115.87995,\n 37.152004\n ],\n [\n 115.892269,\n 37.157625\n ],\n [\n 115.912485,\n 37.178751\n ],\n [\n 115.904825,\n 37.189391\n ],\n [\n 115.9098,\n 37.206803\n ],\n [\n 115.920145,\n 37.214173\n ],\n [\n 115.920934,\n 37.223534\n ],\n [\n 115.926778,\n 37.219511\n ],\n [\n 115.941387,\n 37.227716\n ],\n [\n 115.953232,\n 37.223693\n ],\n [\n 115.969421,\n 37.239464\n ],\n [\n 115.971079,\n 37.245636\n ],\n [\n 115.963972,\n 37.250096\n ],\n [\n 115.972895,\n 37.257103\n ],\n [\n 115.966973,\n 37.265742\n ],\n [\n 115.975185,\n 37.268967\n ],\n [\n 115.976212,\n 37.276171\n ],\n [\n 115.96871,\n 37.28632\n ],\n [\n 115.970763,\n 37.295553\n ],\n [\n 115.981503,\n 37.30737\n ],\n [\n 115.984346,\n 37.319265\n ],\n [\n 115.975659,\n 37.317515\n ],\n [\n 115.972974,\n 37.324039\n ],\n [\n 115.984503,\n 37.326067\n ],\n [\n 115.975738,\n 37.337283\n ],\n [\n 115.986951,\n 37.341738\n ],\n [\n 116.009457,\n 37.343169\n ],\n [\n 116.000376,\n 37.350804\n ],\n [\n 116.013643,\n 37.349571\n ],\n [\n 116.024461,\n 37.359949\n ],\n [\n 116.031252,\n 37.356411\n ],\n [\n 116.051942,\n 37.357484\n ],\n [\n 116.056206,\n 37.369053\n ],\n [\n 116.072474,\n 37.368099\n ],\n [\n 116.087557,\n 37.373307\n ],\n [\n 116.106588,\n 37.368815\n ],\n [\n 116.116459,\n 37.374301\n ],\n [\n 116.126646,\n 37.373466\n ],\n [\n 116.168814,\n 37.384118\n ],\n [\n 116.18524,\n 37.369928\n ],\n [\n 116.195506,\n 37.365674\n ],\n [\n 116.234437,\n 37.361221\n ],\n [\n 116.251652,\n 37.376566\n ],\n [\n 116.261602,\n 37.389802\n ],\n [\n 116.270446,\n 37.389126\n ],\n [\n 116.273052,\n 37.398425\n ],\n [\n 116.282923,\n 37.401326\n ],\n [\n 116.270446,\n 37.413802\n ],\n [\n 116.275026,\n 37.418252\n ],\n [\n 116.263023,\n 37.422423\n ],\n [\n 116.270999,\n 37.426714\n ],\n [\n 116.250072,\n 37.425919\n ],\n [\n 116.247151,\n 37.422066\n ],\n [\n 116.231515,\n 37.424529\n ],\n [\n 116.22733,\n 37.434261\n ],\n [\n 116.243123,\n 37.448201\n ],\n [\n 116.243597,\n 37.455904\n ],\n [\n 116.229936,\n 37.459676\n ],\n [\n 116.224803,\n 37.479963\n ],\n [\n 116.235068,\n 37.479725\n ],\n [\n 116.241307,\n 37.491434\n ],\n [\n 116.258285,\n 37.482662\n ],\n [\n 116.256469,\n 37.478812\n ],\n [\n 116.276448,\n 37.466902\n ],\n [\n 116.271473,\n 37.478931\n ],\n [\n 116.290899,\n 37.484766\n ],\n [\n 116.286082,\n 37.491117\n ],\n [\n 116.292952,\n 37.497387\n ],\n [\n 116.284344,\n 37.500721\n ],\n [\n 116.297532,\n 37.508816\n ],\n [\n 116.280317,\n 37.510879\n ],\n [\n 116.283555,\n 37.517584\n ],\n [\n 116.278422,\n 37.524765\n ],\n [\n 116.291373,\n 37.523813\n ],\n [\n 116.286082,\n 37.532619\n ],\n [\n 116.291373,\n 37.545589\n ],\n [\n 116.287898,\n 37.549317\n ],\n [\n 116.299348,\n 37.55935\n ],\n [\n 116.299664,\n 37.56958\n ],\n [\n 116.304481,\n 37.564505\n ],\n [\n 116.334805,\n 37.574773\n ],\n [\n 116.319406,\n 37.580046\n ],\n [\n 116.33591,\n 37.581235\n ],\n [\n 116.344913,\n 37.570492\n ],\n [\n 116.343491,\n 37.566011\n ],\n [\n 116.367655,\n 37.566289\n ],\n [\n 116.375473,\n 37.560341\n ],\n [\n 116.376895,\n 37.546581\n ],\n [\n 116.367892,\n 37.533809\n ],\n [\n 116.368919,\n 37.526392\n ],\n [\n 116.382738,\n 37.523615\n ],\n [\n 116.388661,\n 37.516315\n ],\n [\n 116.402164,\n 37.509847\n ],\n [\n 116.414089,\n 37.490997\n ],\n [\n 116.434146,\n 37.473334\n ],\n [\n 116.438648,\n 37.477224\n ],\n [\n 116.446702,\n 37.500562\n ],\n [\n 116.46218,\n 37.517426\n ],\n [\n 116.482633,\n 37.52179\n ],\n [\n 116.49969,\n 37.537855\n ],\n [\n 116.507113,\n 37.541822\n ],\n [\n 116.51959,\n 37.559905\n ],\n [\n 116.538463,\n 37.56843\n ],\n [\n 116.545807,\n 37.582504\n ],\n [\n 116.563496,\n 37.596495\n ],\n [\n 116.556547,\n 37.596852\n ],\n [\n 116.580316,\n 37.613258\n ],\n [\n 116.60448,\n 37.625105\n ],\n [\n 116.630776,\n 37.652713\n ],\n [\n 116.640884,\n 37.666454\n ],\n [\n 116.636462,\n 37.675877\n ],\n [\n 116.641042,\n 37.68233\n ],\n [\n 116.646412,\n 37.676233\n ],\n [\n 116.653677,\n 37.67754\n ],\n [\n 116.664022,\n 37.687793\n ],\n [\n 116.675235,\n 37.720838\n ],\n [\n 116.679736,\n 37.72879\n ],\n [\n 116.69932,\n 37.73065\n ],\n [\n 116.698768,\n 37.738759\n ],\n [\n 116.709586,\n 37.735199\n ],\n [\n 116.724511,\n 37.744297\n ],\n [\n 116.718826,\n 37.762331\n ],\n [\n 116.723169,\n 37.766721\n ],\n [\n 116.73912,\n 37.756914\n ],\n [\n 116.744174,\n 37.757349\n ],\n [\n 116.753808,\n 37.770517\n ],\n [\n 116.75365,\n 37.793011\n ],\n [\n 116.74599,\n 37.795778\n ],\n [\n 116.758941,\n 37.801865\n ],\n [\n 116.766838,\n 37.81135\n ],\n [\n 116.786185,\n 37.826326\n ],\n [\n 116.788159,\n 37.843432\n ],\n [\n 116.794556,\n 37.846987\n ],\n [\n 116.811771,\n 37.847935\n ],\n [\n 116.812718,\n 37.84359\n ],\n [\n 116.828038,\n 37.840627\n ],\n [\n 116.843753,\n 37.834465\n ],\n [\n 116.879604,\n 37.843748\n ],\n [\n 116.919325,\n 37.84592\n ],\n [\n 116.950359,\n 37.839719\n ],\n [\n 116.976656,\n 37.841062\n ],\n [\n 117.008874,\n 37.833872\n ],\n [\n 117.027195,\n 37.832371\n ],\n [\n 117.040541,\n 37.839324\n ],\n [\n 117.074339,\n 37.848725\n ],\n [\n 117.093765,\n 37.849515\n ],\n [\n 117.150148,\n 37.8396\n ],\n [\n 117.163651,\n 37.839798\n ],\n [\n 117.185368,\n 37.849791\n ],\n [\n 117.208821,\n 37.843748\n ],\n [\n 117.259755,\n 37.838257\n ],\n [\n 117.271364,\n 37.839916\n ],\n [\n 117.284472,\n 37.84675\n ],\n [\n 117.302951,\n 37.852358\n ],\n [\n 117.320166,\n 37.861402\n ],\n [\n 117.344251,\n 37.862666\n ],\n [\n 117.364704,\n 37.854136\n ],\n [\n 117.381919,\n 37.854531\n ],\n [\n 117.40632,\n 37.843511\n ],\n [\n 117.423614,\n 37.847263\n ],\n [\n 117.438539,\n 37.853859\n ],\n [\n 117.466809,\n 37.890739\n ],\n [\n 117.481181,\n 37.914854\n ],\n [\n 117.49271,\n 37.927481\n ],\n [\n 117.512847,\n 37.943459\n ],\n [\n 117.520902,\n 37.966729\n ],\n [\n 117.524377,\n 37.989479\n ],\n [\n 117.541039,\n 38.011237\n ],\n [\n 117.54933,\n 38.010252\n ],\n [\n 117.563545,\n 37.998585\n ],\n [\n 117.570652,\n 37.957264\n ],\n [\n 117.567809,\n 37.946772\n ],\n [\n 117.529036,\n 37.932295\n ],\n [\n 117.539302,\n 37.913552\n ],\n [\n 117.542776,\n 37.890146\n ],\n [\n 117.547198,\n 37.883198\n ],\n [\n 117.568835,\n 37.882409\n ],\n [\n 117.580602,\n 37.875302\n ],\n [\n 117.581076,\n 37.858993\n ],\n [\n 117.595685,\n 37.853504\n ],\n [\n 117.606582,\n 37.845209\n ],\n [\n 117.605003,\n 37.838968\n ],\n [\n 117.59529,\n 37.834741\n ],\n [\n 117.588025,\n 37.82273\n ],\n [\n 117.56623,\n 37.812733\n ],\n [\n 117.568599,\n 37.804987\n ],\n [\n 117.559912,\n 37.800008\n ],\n [\n 117.546567,\n 37.776368\n ],\n [\n 117.547356,\n 37.767512\n ],\n [\n 117.526509,\n 37.762964\n ],\n [\n 117.522165,\n 37.755371\n ],\n [\n 117.531563,\n 37.748213\n ],\n [\n 117.544119,\n 37.747699\n ],\n [\n 117.547198,\n 37.737494\n ],\n [\n 117.542618,\n 37.726258\n ],\n [\n 117.556201,\n 37.716683\n ],\n [\n 117.539775,\n 37.713993\n ],\n [\n 117.543092,\n 37.703625\n ],\n [\n 117.531247,\n 37.688901\n ],\n [\n 117.506451,\n 37.686803\n ],\n [\n 117.50345,\n 37.680548\n ],\n [\n 117.488604,\n 37.677025\n ],\n [\n 117.477075,\n 37.654416\n ],\n [\n 117.465625,\n 37.655564\n ],\n [\n 117.451963,\n 37.669978\n ],\n [\n 117.444224,\n 37.671918\n ],\n [\n 117.428825,\n 37.665741\n ],\n [\n 117.415401,\n 37.669582\n ],\n [\n 117.407188,\n 37.678846\n ],\n [\n 117.392974,\n 37.660039\n ],\n [\n 117.373074,\n 37.648594\n ],\n [\n 117.363835,\n 37.649624\n ],\n [\n 117.357596,\n 37.658495\n ],\n [\n 117.358149,\n 37.672947\n ],\n [\n 117.363598,\n 37.679559\n ],\n [\n 117.36573,\n 37.698361\n ],\n [\n 117.352543,\n 37.707345\n ],\n [\n 117.344567,\n 37.693136\n ],\n [\n 117.347489,\n 37.683319\n ],\n [\n 117.329405,\n 37.673343\n ],\n [\n 117.318428,\n 37.662019\n ],\n [\n 117.312506,\n 37.64194\n ],\n [\n 117.304925,\n 37.640514\n ],\n [\n 117.312585,\n 37.633701\n ],\n [\n 117.317797,\n 37.615081\n ],\n [\n 117.314875,\n 37.600458\n ],\n [\n 117.308321,\n 37.589956\n ],\n [\n 117.288973,\n 37.577112\n ],\n [\n 117.280682,\n 37.56621\n ],\n [\n 117.277681,\n 37.545391\n ],\n [\n 117.273417,\n 37.532619\n ],\n [\n 117.260861,\n 37.530081\n ],\n [\n 117.238197,\n 37.532897\n ],\n [\n 117.230063,\n 37.528891\n ],\n [\n 117.22114,\n 37.51318\n ],\n [\n 117.199345,\n 37.487148\n ],\n [\n 117.176049,\n 37.486116\n ],\n [\n 117.163809,\n 37.478971\n ],\n [\n 117.135618,\n 37.475239\n ],\n [\n 117.124878,\n 37.483853\n ],\n [\n 117.109795,\n 37.47901\n ],\n [\n 117.098819,\n 37.469721\n ],\n [\n 117.104978,\n 37.455309\n ],\n [\n 117.096845,\n 37.440099\n ],\n [\n 117.085631,\n 37.437517\n ],\n [\n 117.029406,\n 37.435174\n ],\n [\n 117.018193,\n 37.418967\n ],\n [\n 117.019693,\n 37.405419\n ],\n [\n 117.008164,\n 37.392464\n ],\n [\n 116.99924,\n 37.376964\n ],\n [\n 117.009664,\n 37.359671\n ],\n [\n 117.006663,\n 37.355138\n ],\n [\n 116.987158,\n 37.342692\n ],\n [\n 116.986684,\n 37.335335\n ],\n [\n 116.993397,\n 37.32201\n ],\n [\n 117.002241,\n 37.285962\n ],\n [\n 117.024273,\n 37.278918\n ],\n [\n 117.038961,\n 37.266538\n ],\n [\n 117.030275,\n 37.264229\n ],\n [\n 117.032328,\n 37.253241\n ],\n [\n 117.041251,\n 37.247667\n ],\n [\n 117.042673,\n 37.238867\n ],\n [\n 117.036592,\n 37.237393\n ],\n [\n 117.03596,\n 37.224091\n ],\n [\n 117.022299,\n 37.215089\n ],\n [\n 117.037777,\n 37.207361\n ],\n [\n 117.037382,\n 37.195169\n ],\n [\n 117.045358,\n 37.197161\n ],\n [\n 117.05744,\n 37.192141\n ],\n [\n 117.06352,\n 37.182656\n ],\n [\n 117.061783,\n 37.16496\n ],\n [\n 117.050648,\n 37.160894\n ],\n [\n 117.054676,\n 37.141717\n ],\n [\n 117.059809,\n 37.137251\n ],\n [\n 117.047411,\n 37.134739\n ],\n [\n 117.044884,\n 37.122615\n ],\n [\n 117.024273,\n 37.119664\n ],\n [\n 117.004531,\n 37.121219\n ],\n [\n 116.982578,\n 37.113601\n ],\n [\n 116.931486,\n 37.100477\n ],\n [\n 116.919009,\n 37.093056\n ],\n [\n 116.91972,\n 37.081364\n ],\n [\n 116.925247,\n 37.069831\n ],\n [\n 116.928643,\n 37.05103\n ],\n [\n 116.944279,\n 37.042327\n ],\n [\n 116.948701,\n 37.036537\n ],\n [\n 116.943173,\n 37.030907\n ],\n [\n 116.907796,\n 37.019046\n ],\n [\n 116.891607,\n 37.00271\n ],\n [\n 116.875024,\n 36.999274\n ],\n [\n 116.885764,\n 36.991444\n ],\n [\n 116.886158,\n 36.983573\n ],\n [\n 116.899188,\n 36.977499\n ],\n [\n 116.897767,\n 36.962712\n ],\n [\n 116.907717,\n 36.963272\n ],\n [\n 116.933381,\n 36.959595\n ],\n [\n 116.931881,\n 36.946204\n ],\n [\n 116.935434,\n 36.93457\n ],\n [\n 116.922563,\n 36.93453\n ],\n [\n 116.934408,\n 36.925973\n ],\n [\n 116.957466,\n 36.916495\n ],\n [\n 116.963152,\n 36.893896\n ],\n [\n 116.96181,\n 36.867529\n ],\n [\n 116.962836,\n 36.842674\n ],\n [\n 116.948069,\n 36.839231\n ],\n [\n 116.9442,\n 36.844916\n ],\n [\n 116.934724,\n 36.845116\n ],\n [\n 116.935908,\n 36.829743\n ],\n [\n 116.933223,\n 36.823697\n ],\n [\n 116.919404,\n 36.822776\n ],\n [\n 116.892476,\n 36.830023\n ],\n [\n 116.887106,\n 36.833427\n ],\n [\n 116.882447,\n 36.824058\n ],\n [\n 116.887975,\n 36.811404\n ],\n [\n 116.872813,\n 36.812004\n ],\n [\n 116.868233,\n 36.801872\n ],\n [\n 116.865548,\n 36.777877\n ],\n [\n 116.87076,\n 36.759164\n ],\n [\n 116.883868,\n 36.758243\n ],\n [\n 116.88679,\n 36.745538\n ],\n [\n 116.873997,\n 36.739846\n ],\n [\n 116.861757,\n 36.730345\n ],\n [\n 116.842489,\n 36.72786\n ],\n [\n 116.830881,\n 36.723851\n ],\n [\n 116.802768,\n 36.706729\n ],\n [\n 116.799689,\n 36.694417\n ],\n [\n 116.780657,\n 36.691048\n ],\n [\n 116.780736,\n 36.671552\n ],\n [\n 116.777262,\n 36.660718\n ],\n [\n 116.763126,\n 36.651971\n ],\n [\n 116.759494,\n 36.632746\n ],\n [\n 116.742042,\n 36.620381\n ],\n [\n 116.71314,\n 36.608858\n ],\n [\n 116.693319,\n 36.607895\n ],\n [\n 116.694345,\n 36.591149\n ],\n [\n 116.682421,\n 36.580586\n ],\n [\n 116.661258,\n 36.578376\n ],\n [\n 116.662916,\n 36.563111\n ],\n [\n 116.658968,\n 36.553026\n ],\n [\n 116.646728,\n 36.544105\n ],\n [\n 116.629592,\n 36.544587\n ],\n [\n 116.622801,\n 36.532651\n ],\n [\n 116.60835,\n 36.52011\n ],\n [\n 116.610087,\n 36.51609\n ],\n [\n 116.627223,\n 36.508853\n ],\n [\n 116.624301,\n 36.497233\n ],\n [\n 116.602032,\n 36.495223\n ],\n [\n 116.593267,\n 36.485973\n ],\n [\n 116.595636,\n 36.480383\n ],\n [\n 116.613009,\n 36.473425\n ],\n [\n 116.611429,\n 36.459104\n ],\n [\n 116.620905,\n 36.44144\n ],\n [\n 116.6198,\n 36.428522\n ],\n [\n 116.612377,\n 36.42333\n ],\n [\n 116.591213,\n 36.416286\n ],\n [\n 116.546202,\n 36.40892\n ],\n [\n 116.549518,\n 36.417333\n ],\n [\n 116.535857,\n 36.41842\n ],\n [\n 116.539647,\n 36.427597\n ],\n [\n 116.527092,\n 36.424337\n ],\n [\n 116.511851,\n 36.430012\n ],\n [\n 116.512798,\n 36.441239\n ],\n [\n 116.507271,\n 36.447999\n ],\n [\n 116.489345,\n 36.454477\n ],\n [\n 116.481685,\n 36.448361\n ],\n [\n 116.461548,\n 36.449971\n ],\n [\n 116.455705,\n 36.46192\n ],\n [\n 116.459258,\n 36.47978\n ],\n [\n 116.445676,\n 36.488587\n ],\n [\n 116.443544,\n 36.498319\n ],\n [\n 116.431304,\n 36.500611\n ],\n [\n 116.412983,\n 36.519145\n ],\n [\n 116.400901,\n 36.524813\n ],\n [\n 116.399322,\n 36.540126\n ],\n [\n 116.403507,\n 36.564878\n ],\n [\n 116.410298,\n 36.593237\n ],\n [\n 116.411325,\n 36.615242\n ],\n [\n 116.406034,\n 36.631983\n ],\n [\n 116.41322,\n 36.643181\n ],\n [\n 116.411246,\n 36.676647\n ],\n [\n 116.40706,\n 36.689042\n ],\n [\n 116.407139,\n 36.704804\n ],\n [\n 116.397584,\n 36.715431\n ],\n [\n 116.393399,\n 36.731708\n ],\n [\n 116.401849,\n 36.74634\n ],\n [\n 116.405639,\n 36.761208\n ],\n [\n 116.396242,\n 36.792459\n ],\n [\n 116.376026,\n 36.797025\n ],\n [\n 116.391978,\n 36.802913\n ],\n [\n 116.397663,\n 36.809441\n ],\n [\n 116.409193,\n 36.807038\n ],\n [\n 116.408008,\n 36.815729\n ],\n [\n 116.399874,\n 36.823857\n ],\n [\n 116.409587,\n 36.83759\n ],\n [\n 116.407218,\n 36.846717\n ],\n [\n 116.415352,\n 36.855923\n ],\n [\n 116.412746,\n 36.861086\n ],\n [\n 116.429645,\n 36.865208\n ],\n [\n 116.434146,\n 36.876453\n ],\n [\n 116.419537,\n 36.877213\n ],\n [\n 116.415905,\n 36.881374\n ],\n [\n 116.422143,\n 36.890536\n ],\n [\n 116.417958,\n 36.894297\n ],\n [\n 116.421591,\n 36.905257\n ],\n [\n 116.433988,\n 36.908417\n ],\n [\n 116.447966,\n 36.899977\n ],\n [\n 116.452467,\n 36.906417\n ],\n [\n 116.449308,\n 36.915496\n ],\n [\n 116.439911,\n 36.916495\n ],\n [\n 116.444728,\n 36.923694\n ],\n [\n 116.443149,\n 36.932211\n ],\n [\n 116.461548,\n 36.940687\n ],\n [\n 116.470551,\n 36.940007\n ],\n [\n 116.471103,\n 36.947043\n ],\n [\n 116.458074,\n 36.955358\n ],\n [\n 116.442675,\n 36.954319\n ],\n [\n 116.434383,\n 36.968228\n ],\n [\n 116.405876,\n 36.969067\n ],\n [\n 116.379343,\n 36.966309\n ],\n [\n 116.370261,\n 36.963272\n ],\n [\n 116.366471,\n 36.971864\n ],\n [\n 116.341359,\n 36.980256\n ],\n [\n 116.340175,\n 36.971944\n ],\n [\n 116.324065,\n 36.972024\n ],\n [\n 116.317037,\n 36.981854\n ],\n [\n 116.304955,\n 36.990245\n ],\n [\n 116.30535,\n 36.994999\n ],\n [\n 116.290741,\n 36.995759\n ],\n [\n 116.26784,\n 37.010499\n ],\n [\n 116.254731,\n 37.008262\n ],\n [\n 116.247624,\n 37.019685\n ],\n [\n 116.250388,\n 37.025476\n ],\n [\n 116.232857,\n 37.032225\n ],\n [\n 116.225592,\n 37.025396\n ],\n [\n 116.222276,\n 37.010339\n ],\n [\n 116.235779,\n 37.010139\n ],\n [\n 116.229225,\n 36.996438\n ],\n [\n 116.211694,\n 36.990085\n ],\n [\n 116.212089,\n 36.982454\n ],\n [\n 116.219196,\n 36.979617\n ],\n [\n 116.210588,\n 36.970146\n ],\n [\n 116.211536,\n 36.963112\n ],\n [\n 116.191478,\n 36.963312\n ],\n [\n 116.18366,\n 36.959595\n ],\n [\n 116.172842,\n 36.947723\n ],\n [\n 116.173237,\n 36.929692\n ],\n [\n 116.164392,\n 36.916975\n ],\n [\n 116.146388,\n 36.910776\n ],\n [\n 116.123724,\n 36.890656\n ],\n [\n 116.114958,\n 36.897697\n ],\n [\n 116.097349,\n 36.891336\n ],\n [\n 116.098217,\n 36.883895\n ],\n [\n 116.082424,\n 36.883855\n ],\n [\n 116.075948,\n 36.889496\n ],\n [\n 116.061892,\n 36.888576\n ],\n [\n 116.050126,\n 36.894497\n ],\n [\n 116.005667,\n 36.884375\n ],\n [\n 115.947704,\n 36.888576\n ],\n [\n 115.920461,\n 36.892976\n ],\n [\n 115.894796,\n 36.905657\n ],\n [\n 115.885241,\n 36.907017\n ],\n [\n 115.881687,\n 36.917575\n ],\n [\n 115.875844,\n 36.916255\n ],\n [\n 115.868421,\n 36.901457\n ],\n [\n 115.853733,\n 36.904777\n ],\n [\n 115.85855,\n 36.908337\n ],\n [\n 115.85397,\n 36.916215\n ],\n [\n 115.848995,\n 36.912656\n ],\n [\n 115.832964,\n 36.918575\n ],\n [\n 115.83178,\n 36.910856\n ],\n [\n 115.823251,\n 36.913496\n ],\n [\n 115.81875,\n 36.908577\n ],\n [\n 115.813064,\n 36.913416\n ],\n [\n 115.791348,\n 36.914336\n ],\n [\n 115.779819,\n 36.904977\n ],\n [\n 115.780293,\n 36.912216\n ],\n [\n 115.768684,\n 36.921014\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 371500,\n \"name\": \"聊城市\",\n \"center\": [\n 115.980367,\n 36.456013\n ],\n \"centroid\": [\n 115.887733,\n 36.460089\n ],\n \"childrenNum\": 8,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 13,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 115.768684,\n 36.921014\n ],\n [\n 115.780293,\n 36.912216\n ],\n [\n 115.779819,\n 36.904977\n ],\n [\n 115.791348,\n 36.914336\n ],\n [\n 115.813064,\n 36.913416\n ],\n [\n 115.81875,\n 36.908577\n ],\n [\n 115.823251,\n 36.913496\n ],\n [\n 115.83178,\n 36.910856\n ],\n [\n 115.832964,\n 36.918575\n ],\n [\n 115.848995,\n 36.912656\n ],\n [\n 115.85397,\n 36.916215\n ],\n [\n 115.85855,\n 36.908337\n ],\n [\n 115.853733,\n 36.904777\n ],\n [\n 115.868421,\n 36.901457\n ],\n [\n 115.875844,\n 36.916255\n ],\n [\n 115.881687,\n 36.917575\n ],\n [\n 115.885241,\n 36.907017\n ],\n [\n 115.894796,\n 36.905657\n ],\n [\n 115.920461,\n 36.892976\n ],\n [\n 115.947704,\n 36.888576\n ],\n [\n 116.005667,\n 36.884375\n ],\n [\n 116.050126,\n 36.894497\n ],\n [\n 116.061892,\n 36.888576\n ],\n [\n 116.075948,\n 36.889496\n ],\n [\n 116.082424,\n 36.883855\n ],\n [\n 116.098217,\n 36.883895\n ],\n [\n 116.097349,\n 36.891336\n ],\n [\n 116.114958,\n 36.897697\n ],\n [\n 116.123724,\n 36.890656\n ],\n [\n 116.146388,\n 36.910776\n ],\n [\n 116.164392,\n 36.916975\n ],\n [\n 116.173237,\n 36.929692\n ],\n [\n 116.172842,\n 36.947723\n ],\n [\n 116.18366,\n 36.959595\n ],\n [\n 116.191478,\n 36.963312\n ],\n [\n 116.211536,\n 36.963112\n ],\n [\n 116.210588,\n 36.970146\n ],\n [\n 116.219196,\n 36.979617\n ],\n [\n 116.212089,\n 36.982454\n ],\n [\n 116.211694,\n 36.990085\n ],\n [\n 116.229225,\n 36.996438\n ],\n [\n 116.235779,\n 37.010139\n ],\n [\n 116.222276,\n 37.010339\n ],\n [\n 116.225592,\n 37.025396\n ],\n [\n 116.232857,\n 37.032225\n ],\n [\n 116.250388,\n 37.025476\n ],\n [\n 116.247624,\n 37.019685\n ],\n [\n 116.254731,\n 37.008262\n ],\n [\n 116.26784,\n 37.010499\n ],\n [\n 116.290741,\n 36.995759\n ],\n [\n 116.30535,\n 36.994999\n ],\n [\n 116.304955,\n 36.990245\n ],\n [\n 116.317037,\n 36.981854\n ],\n [\n 116.324065,\n 36.972024\n ],\n [\n 116.340175,\n 36.971944\n ],\n [\n 116.341359,\n 36.980256\n ],\n [\n 116.366471,\n 36.971864\n ],\n [\n 116.370261,\n 36.963272\n ],\n [\n 116.379343,\n 36.966309\n ],\n [\n 116.405876,\n 36.969067\n ],\n [\n 116.434383,\n 36.968228\n ],\n [\n 116.442675,\n 36.954319\n ],\n [\n 116.458074,\n 36.955358\n ],\n [\n 116.471103,\n 36.947043\n ],\n [\n 116.470551,\n 36.940007\n ],\n [\n 116.461548,\n 36.940687\n ],\n [\n 116.443149,\n 36.932211\n ],\n [\n 116.444728,\n 36.923694\n ],\n [\n 116.439911,\n 36.916495\n ],\n [\n 116.449308,\n 36.915496\n ],\n [\n 116.452467,\n 36.906417\n ],\n [\n 116.447966,\n 36.899977\n ],\n [\n 116.433988,\n 36.908417\n ],\n [\n 116.421591,\n 36.905257\n ],\n [\n 116.417958,\n 36.894297\n ],\n [\n 116.422143,\n 36.890536\n ],\n [\n 116.415905,\n 36.881374\n ],\n [\n 116.419537,\n 36.877213\n ],\n [\n 116.434146,\n 36.876453\n ],\n [\n 116.429645,\n 36.865208\n ],\n [\n 116.412746,\n 36.861086\n ],\n [\n 116.415352,\n 36.855923\n ],\n [\n 116.407218,\n 36.846717\n ],\n [\n 116.409587,\n 36.83759\n ],\n [\n 116.399874,\n 36.823857\n ],\n [\n 116.408008,\n 36.815729\n ],\n [\n 116.409193,\n 36.807038\n ],\n [\n 116.397663,\n 36.809441\n ],\n [\n 116.391978,\n 36.802913\n ],\n [\n 116.376026,\n 36.797025\n ],\n [\n 116.396242,\n 36.792459\n ],\n [\n 116.405639,\n 36.761208\n ],\n [\n 116.401849,\n 36.74634\n ],\n [\n 116.393399,\n 36.731708\n ],\n [\n 116.397584,\n 36.715431\n ],\n [\n 116.407139,\n 36.704804\n ],\n [\n 116.40706,\n 36.689042\n ],\n [\n 116.411246,\n 36.676647\n ],\n [\n 116.41322,\n 36.643181\n ],\n [\n 116.406034,\n 36.631983\n ],\n [\n 116.411325,\n 36.615242\n ],\n [\n 116.410298,\n 36.593237\n ],\n [\n 116.403507,\n 36.564878\n ],\n [\n 116.399322,\n 36.540126\n ],\n [\n 116.400901,\n 36.524813\n ],\n [\n 116.412983,\n 36.519145\n ],\n [\n 116.431304,\n 36.500611\n ],\n [\n 116.443544,\n 36.498319\n ],\n [\n 116.445676,\n 36.488587\n ],\n [\n 116.459258,\n 36.47978\n ],\n [\n 116.455705,\n 36.46192\n ],\n [\n 116.461548,\n 36.449971\n ],\n [\n 116.481685,\n 36.448361\n ],\n [\n 116.489345,\n 36.454477\n ],\n [\n 116.507271,\n 36.447999\n ],\n [\n 116.512798,\n 36.441239\n ],\n [\n 116.511851,\n 36.430012\n ],\n [\n 116.527092,\n 36.424337\n ],\n [\n 116.539647,\n 36.427597\n ],\n [\n 116.535857,\n 36.41842\n ],\n [\n 116.549518,\n 36.417333\n ],\n [\n 116.546202,\n 36.40892\n ],\n [\n 116.528592,\n 36.387259\n ],\n [\n 116.519984,\n 36.384158\n ],\n [\n 116.503717,\n 36.369982\n ],\n [\n 116.484607,\n 36.336948\n ],\n [\n 116.449071,\n 36.337149\n ],\n [\n 116.441411,\n 36.321755\n ],\n [\n 116.430593,\n 36.318007\n ],\n [\n 116.406745,\n 36.319015\n ],\n [\n 116.374526,\n 36.3039\n ],\n [\n 116.331251,\n 36.290677\n ],\n [\n 116.322644,\n 36.284669\n ],\n [\n 116.310799,\n 36.270515\n ],\n [\n 116.307166,\n 36.259464\n ],\n [\n 116.28624,\n 36.239174\n ],\n [\n 116.280159,\n 36.221945\n ],\n [\n 116.255047,\n 36.203703\n ],\n [\n 116.234911,\n 36.180935\n ],\n [\n 116.226066,\n 36.173748\n ],\n [\n 116.213036,\n 36.169831\n ],\n [\n 116.169446,\n 36.171325\n ],\n [\n 116.164392,\n 36.168862\n ],\n [\n 116.164313,\n 36.146084\n ],\n [\n 116.123882,\n 36.136429\n ],\n [\n 116.114011,\n 36.122047\n ],\n [\n 116.099323,\n 36.112066\n ],\n [\n 116.057391,\n 36.104913\n ],\n [\n 116.028804,\n 36.072292\n ],\n [\n 116.016406,\n 36.061375\n ],\n [\n 115.989794,\n 36.045442\n ],\n [\n 115.964051,\n 36.0416\n ],\n [\n 115.935859,\n 36.031447\n ],\n [\n 115.919276,\n 36.019675\n ],\n [\n 115.895981,\n 36.026188\n ],\n [\n 115.869447,\n 36.015346\n ],\n [\n 115.859655,\n 36.003693\n ],\n [\n 115.846231,\n 36.004987\n ],\n [\n 115.837465,\n 36.011016\n ],\n [\n 115.81725,\n 36.012756\n ],\n [\n 115.797508,\n 36.00697\n ],\n [\n 115.779819,\n 35.993778\n ],\n [\n 115.786689,\n 35.991228\n ],\n [\n 115.774528,\n 35.981878\n ],\n [\n 115.774686,\n 35.974511\n ],\n [\n 115.764341,\n 35.970989\n ],\n [\n 115.73307,\n 35.96682\n ],\n [\n 115.717908,\n 35.971394\n ],\n [\n 115.698719,\n 35.96605\n ],\n [\n 115.686953,\n 35.9552\n ],\n [\n 115.68411,\n 35.944388\n ],\n [\n 115.675423,\n 35.938435\n ],\n [\n 115.651812,\n 35.928917\n ],\n [\n 115.642415,\n 35.920046\n ],\n [\n 115.607353,\n 35.925839\n ],\n [\n 115.583742,\n 35.921707\n ],\n [\n 115.548206,\n 35.898006\n ],\n [\n 115.513302,\n 35.890348\n ],\n [\n 115.504932,\n 35.8991\n ],\n [\n 115.510775,\n 35.908014\n ],\n [\n 115.505406,\n 35.914415\n ],\n [\n 115.490717,\n 35.908379\n ],\n [\n 115.495377,\n 35.896021\n ],\n [\n 115.488033,\n 35.880784\n ],\n [\n 115.460078,\n 35.867732\n ],\n [\n 115.433861,\n 35.839069\n ],\n [\n 115.432834,\n 35.833878\n ],\n [\n 115.417909,\n 35.824996\n ],\n [\n 115.407564,\n 35.80865\n ],\n [\n 115.370923,\n 35.788852\n ],\n [\n 115.3635,\n 35.779925\n ],\n [\n 115.334993,\n 35.796723\n ],\n [\n 115.335704,\n 35.814329\n ],\n [\n 115.344074,\n 35.838744\n ],\n [\n 115.349602,\n 35.860963\n ],\n [\n 115.338152,\n 35.864692\n ],\n [\n 115.3436,\n 35.87215\n ],\n [\n 115.354893,\n 35.869273\n ],\n [\n 115.36429,\n 35.894035\n ],\n [\n 115.367449,\n 35.92033\n ],\n [\n 115.364132,\n 35.929484\n ],\n [\n 115.354182,\n 35.937503\n ],\n [\n 115.356472,\n 35.954633\n ],\n [\n 115.363105,\n 35.972002\n ],\n [\n 115.386322,\n 35.974471\n ],\n [\n 115.395956,\n 35.991673\n ],\n [\n 115.419646,\n 36.004745\n ],\n [\n 115.4431,\n 36.008872\n ],\n [\n 115.447522,\n 36.011826\n ],\n [\n 115.448865,\n 36.047383\n ],\n [\n 115.441599,\n 36.055755\n ],\n [\n 115.459604,\n 36.063357\n ],\n [\n 115.455103,\n 36.071282\n ],\n [\n 115.459762,\n 36.080378\n ],\n [\n 115.466395,\n 36.079691\n ],\n [\n 115.468843,\n 36.092222\n ],\n [\n 115.473976,\n 36.098123\n ],\n [\n 115.484242,\n 36.125845\n ],\n [\n 115.48519,\n 36.139702\n ],\n [\n 115.480689,\n 36.171729\n ],\n [\n 115.47595,\n 36.193046\n ],\n [\n 115.479109,\n 36.209555\n ],\n [\n 115.47595,\n 36.218878\n ],\n [\n 115.476503,\n 36.246516\n ],\n [\n 115.465369,\n 36.250389\n ],\n [\n 115.467817,\n 36.267894\n ],\n [\n 115.462684,\n 36.27612\n ],\n [\n 115.446101,\n 36.273782\n ],\n [\n 115.436388,\n 36.276362\n ],\n [\n 115.428491,\n 36.286201\n ],\n [\n 115.41704,\n 36.292773\n ],\n [\n 115.422963,\n 36.30261\n ],\n [\n 115.41941,\n 36.310914\n ],\n [\n 115.422963,\n 36.322199\n ],\n [\n 115.414987,\n 36.326551\n ],\n [\n 115.394614,\n 36.322602\n ],\n [\n 115.366659,\n 36.308938\n ],\n [\n 115.359789,\n 36.318733\n ],\n [\n 115.370449,\n 36.332757\n ],\n [\n 115.368712,\n 36.342629\n ],\n [\n 115.349602,\n 36.363094\n ],\n [\n 115.348575,\n 36.384641\n ],\n [\n 115.339968,\n 36.39809\n ],\n [\n 115.324885,\n 36.405095\n ],\n [\n 115.313514,\n 36.406625\n ],\n [\n 115.297404,\n 36.413469\n ],\n [\n 115.312092,\n 36.433593\n ],\n [\n 115.316909,\n 36.432587\n ],\n [\n 115.317067,\n 36.454035\n ],\n [\n 115.300247,\n 36.465902\n ],\n [\n 115.291403,\n 36.460592\n ],\n [\n 115.288876,\n 36.470006\n ],\n [\n 115.293693,\n 36.476079\n ],\n [\n 115.28469,\n 36.476441\n ],\n [\n 115.283506,\n 36.486416\n ],\n [\n 115.276083,\n 36.486938\n ],\n [\n 115.272845,\n 36.497394\n ],\n [\n 115.289744,\n 36.497796\n ],\n [\n 115.296536,\n 36.508853\n ],\n [\n 115.292587,\n 36.514401\n ],\n [\n 115.295193,\n 36.523205\n ],\n [\n 115.288323,\n 36.528511\n ],\n [\n 115.295035,\n 36.533254\n ],\n [\n 115.300484,\n 36.525938\n ],\n [\n 115.307433,\n 36.527426\n ],\n [\n 115.331281,\n 36.550213\n ],\n [\n 115.334282,\n 36.582473\n ],\n [\n 115.337836,\n 36.58898\n ],\n [\n 115.35055,\n 36.590065\n ],\n [\n 115.351576,\n 36.595004\n ],\n [\n 115.340363,\n 36.595245\n ],\n [\n 115.341468,\n 36.603478\n ],\n [\n 115.350707,\n 36.60665\n ],\n [\n 115.345022,\n 36.612392\n ],\n [\n 115.35513,\n 36.627407\n ],\n [\n 115.366027,\n 36.621947\n ],\n [\n 115.378504,\n 36.632866\n ],\n [\n 115.38798,\n 36.646432\n ],\n [\n 115.386322,\n 36.656305\n ],\n [\n 115.406459,\n 36.663246\n ],\n [\n 115.412144,\n 36.676486\n ],\n [\n 115.420594,\n 36.686756\n ],\n [\n 115.446653,\n 36.694617\n ],\n [\n 115.451391,\n 36.702197\n ],\n [\n 115.450523,\n 36.713626\n ],\n [\n 115.459762,\n 36.717395\n ],\n [\n 115.460947,\n 36.731869\n ],\n [\n 115.475477,\n 36.744215\n ],\n [\n 115.478398,\n 36.758804\n ],\n [\n 115.491428,\n 36.761609\n ],\n [\n 115.506511,\n 36.770465\n ],\n [\n 115.523568,\n 36.763853\n ],\n [\n 115.52878,\n 36.77395\n ],\n [\n 115.536835,\n 36.772628\n ],\n [\n 115.53873,\n 36.784127\n ],\n [\n 115.54947,\n 36.782885\n ],\n [\n 115.552628,\n 36.775874\n ],\n [\n 115.561315,\n 36.775753\n ],\n [\n 115.560525,\n 36.783806\n ],\n [\n 115.572133,\n 36.775353\n ],\n [\n 115.584689,\n 36.781042\n ],\n [\n 115.63744,\n 36.797506\n ],\n [\n 115.650469,\n 36.807519\n ],\n [\n 115.666184,\n 36.812485\n ],\n [\n 115.671554,\n 36.809281\n ],\n [\n 115.684189,\n 36.812966\n ],\n [\n 115.692243,\n 36.829343\n ],\n [\n 115.688532,\n 36.840312\n ],\n [\n 115.700772,\n 36.860726\n ],\n [\n 115.699982,\n 36.866929\n ],\n [\n 115.711275,\n 36.882374\n ],\n [\n 115.726121,\n 36.893616\n ],\n [\n 115.735202,\n 36.897017\n ],\n [\n 115.740572,\n 36.906417\n ],\n [\n 115.757787,\n 36.903017\n ],\n [\n 115.765131,\n 36.909096\n ],\n [\n 115.768684,\n 36.921014\n ]\n ]\n ],\n [\n [\n [\n 115.495377,\n 35.896021\n ],\n [\n 115.504932,\n 35.8991\n ],\n [\n 115.513302,\n 35.890348\n ],\n [\n 115.503431,\n 35.888686\n ],\n [\n 115.488033,\n 35.880784\n ],\n [\n 115.495377,\n 35.896021\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 371600,\n \"name\": \"滨州市\",\n \"center\": [\n 118.016974,\n 37.383542\n ],\n \"centroid\": [\n 117.847396,\n 37.542717\n ],\n \"childrenNum\": 7,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 14,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 117.273417,\n 37.532619\n ],\n [\n 117.277681,\n 37.545391\n ],\n [\n 117.280682,\n 37.56621\n ],\n [\n 117.288973,\n 37.577112\n ],\n [\n 117.308321,\n 37.589956\n ],\n [\n 117.314875,\n 37.600458\n ],\n [\n 117.317797,\n 37.615081\n ],\n [\n 117.312585,\n 37.633701\n ],\n [\n 117.304925,\n 37.640514\n ],\n [\n 117.312506,\n 37.64194\n ],\n [\n 117.318428,\n 37.662019\n ],\n [\n 117.329405,\n 37.673343\n ],\n [\n 117.347489,\n 37.683319\n ],\n [\n 117.344567,\n 37.693136\n ],\n [\n 117.352543,\n 37.707345\n ],\n [\n 117.36573,\n 37.698361\n ],\n [\n 117.363598,\n 37.679559\n ],\n [\n 117.358149,\n 37.672947\n ],\n [\n 117.357596,\n 37.658495\n ],\n [\n 117.363835,\n 37.649624\n ],\n [\n 117.373074,\n 37.648594\n ],\n [\n 117.392974,\n 37.660039\n ],\n [\n 117.407188,\n 37.678846\n ],\n [\n 117.415401,\n 37.669582\n ],\n [\n 117.428825,\n 37.665741\n ],\n [\n 117.444224,\n 37.671918\n ],\n [\n 117.451963,\n 37.669978\n ],\n [\n 117.465625,\n 37.655564\n ],\n [\n 117.477075,\n 37.654416\n ],\n [\n 117.488604,\n 37.677025\n ],\n [\n 117.50345,\n 37.680548\n ],\n [\n 117.506451,\n 37.686803\n ],\n [\n 117.531247,\n 37.688901\n ],\n [\n 117.543092,\n 37.703625\n ],\n [\n 117.539775,\n 37.713993\n ],\n [\n 117.556201,\n 37.716683\n ],\n [\n 117.542618,\n 37.726258\n ],\n [\n 117.547198,\n 37.737494\n ],\n [\n 117.544119,\n 37.747699\n ],\n [\n 117.531563,\n 37.748213\n ],\n [\n 117.522165,\n 37.755371\n ],\n [\n 117.526509,\n 37.762964\n ],\n [\n 117.547356,\n 37.767512\n ],\n [\n 117.546567,\n 37.776368\n ],\n [\n 117.559912,\n 37.800008\n ],\n [\n 117.568599,\n 37.804987\n ],\n [\n 117.56623,\n 37.812733\n ],\n [\n 117.588025,\n 37.82273\n ],\n [\n 117.59529,\n 37.834741\n ],\n [\n 117.605003,\n 37.838968\n ],\n [\n 117.606582,\n 37.845209\n ],\n [\n 117.595685,\n 37.853504\n ],\n [\n 117.581076,\n 37.858993\n ],\n [\n 117.580602,\n 37.875302\n ],\n [\n 117.568835,\n 37.882409\n ],\n [\n 117.547198,\n 37.883198\n ],\n [\n 117.542776,\n 37.890146\n ],\n [\n 117.539302,\n 37.913552\n ],\n [\n 117.529036,\n 37.932295\n ],\n [\n 117.567809,\n 37.946772\n ],\n [\n 117.570652,\n 37.957264\n ],\n [\n 117.563545,\n 37.998585\n ],\n [\n 117.54933,\n 38.010252\n ],\n [\n 117.541039,\n 38.011237\n ],\n [\n 117.545935,\n 38.026842\n ],\n [\n 117.560386,\n 38.040987\n ],\n [\n 117.556517,\n 38.057215\n ],\n [\n 117.564887,\n 38.063674\n ],\n [\n 117.57618,\n 38.065132\n ],\n [\n 117.58376,\n 38.070645\n ],\n [\n 117.605082,\n 38.073008\n ],\n [\n 117.616769,\n 38.06903\n ],\n [\n 117.644961,\n 38.072377\n ],\n [\n 117.666045,\n 38.072535\n ],\n [\n 117.679469,\n 38.079544\n ],\n [\n 117.704502,\n 38.07604\n ],\n [\n 117.729219,\n 38.093796\n ],\n [\n 117.730641,\n 38.108321\n ],\n [\n 117.743197,\n 38.123393\n ],\n [\n 117.768782,\n 38.131893\n ],\n [\n 117.772099,\n 38.138817\n ],\n [\n 117.766966,\n 38.158682\n ],\n [\n 117.771704,\n 38.166076\n ],\n [\n 117.79421,\n 38.167846\n ],\n [\n 117.801317,\n 38.175239\n ],\n [\n 117.789235,\n 38.180744\n ],\n [\n 117.796105,\n 38.1936\n ],\n [\n 117.797842,\n 38.207712\n ],\n [\n 117.805897,\n 38.217734\n ],\n [\n 117.808582,\n 38.228383\n ],\n [\n 117.823586,\n 38.235652\n ],\n [\n 117.847513,\n 38.25392\n ],\n [\n 117.860859,\n 38.274578\n ],\n [\n 117.895683,\n 38.301629\n ],\n [\n 117.893393,\n 38.287968\n ],\n [\n 117.89671,\n 38.279605\n ],\n [\n 117.935404,\n 38.255098\n ],\n [\n 117.997631,\n 38.211918\n ],\n [\n 118.018794,\n 38.202641\n ],\n [\n 118.033009,\n 38.205904\n ],\n [\n 118.04517,\n 38.214001\n ],\n [\n 118.112134,\n 38.210227\n ],\n [\n 118.177915,\n 38.186406\n ],\n [\n 118.216846,\n 38.146921\n ],\n [\n 118.245432,\n 38.144286\n ],\n [\n 118.236272,\n 38.125754\n ],\n [\n 118.227664,\n 38.119262\n ],\n [\n 118.241247,\n 38.112138\n ],\n [\n 118.245511,\n 38.103322\n ],\n [\n 118.235324,\n 38.082969\n ],\n [\n 118.226638,\n 38.079583\n ],\n [\n 118.230665,\n 38.056743\n ],\n [\n 118.227585,\n 38.037874\n ],\n [\n 118.2234,\n 38.00095\n ],\n [\n 118.22956,\n 37.986444\n ],\n [\n 118.220873,\n 37.98258\n ],\n [\n 118.223479,\n 37.959788\n ],\n [\n 118.213529,\n 37.95541\n ],\n [\n 118.215503,\n 37.949376\n ],\n [\n 118.224742,\n 37.950559\n ],\n [\n 118.226954,\n 37.939672\n ],\n [\n 118.225611,\n 37.923417\n ],\n [\n 118.232718,\n 37.922509\n ],\n [\n 118.235403,\n 37.905343\n ],\n [\n 118.243142,\n 37.895673\n ],\n [\n 118.236588,\n 37.884501\n ],\n [\n 118.239115,\n 37.868708\n ],\n [\n 118.248749,\n 37.858164\n ],\n [\n 118.247643,\n 37.871788\n ],\n [\n 118.258146,\n 37.854886\n ],\n [\n 118.258304,\n 37.844182\n ],\n [\n 118.269754,\n 37.853109\n ],\n [\n 118.286337,\n 37.8569\n ],\n [\n 118.301657,\n 37.870208\n ],\n [\n 118.313265,\n 37.861521\n ],\n [\n 118.328111,\n 37.865272\n ],\n [\n 118.340193,\n 37.838059\n ],\n [\n 118.334271,\n 37.832134\n ],\n [\n 118.346116,\n 37.832371\n ],\n [\n 118.344932,\n 37.824627\n ],\n [\n 118.356382,\n 37.820834\n ],\n [\n 118.352355,\n 37.814274\n ],\n [\n 118.36191,\n 37.792063\n ],\n [\n 118.348406,\n 37.790719\n ],\n [\n 118.340588,\n 37.774391\n ],\n [\n 118.340667,\n 37.763913\n ],\n [\n 118.353065,\n 37.75814\n ],\n [\n 118.353697,\n 37.750151\n ],\n [\n 118.341931,\n 37.74667\n ],\n [\n 118.337509,\n 37.729502\n ],\n [\n 118.31753,\n 37.728395\n ],\n [\n 118.319425,\n 37.712924\n ],\n [\n 118.316187,\n 37.714151\n ],\n [\n 118.3045,\n 37.690722\n ],\n [\n 118.305132,\n 37.683122\n ],\n [\n 118.294076,\n 37.678529\n ],\n [\n 118.293129,\n 37.670096\n ],\n [\n 118.2846,\n 37.662058\n ],\n [\n 118.260989,\n 37.654614\n ],\n [\n 118.246459,\n 37.658376\n ],\n [\n 118.239431,\n 37.65596\n ],\n [\n 118.22569,\n 37.663682\n ],\n [\n 118.207449,\n 37.661583\n ],\n [\n 118.200657,\n 37.667404\n ],\n [\n 118.195445,\n 37.661742\n ],\n [\n 118.177125,\n 37.657623\n ],\n [\n 118.172545,\n 37.644079\n ],\n [\n 118.165596,\n 37.644633\n ],\n [\n 118.163542,\n 37.63069\n ],\n [\n 118.154935,\n 37.628036\n ],\n [\n 118.157462,\n 37.62035\n ],\n [\n 118.154935,\n 37.605491\n ],\n [\n 118.146722,\n 37.599943\n ],\n [\n 118.148696,\n 37.594078\n ],\n [\n 118.134877,\n 37.590035\n ],\n [\n 118.127612,\n 37.578103\n ],\n [\n 118.131324,\n 37.571285\n ],\n [\n 118.13922,\n 37.571364\n ],\n [\n 118.134166,\n 37.558478\n ],\n [\n 118.141431,\n 37.556297\n ],\n [\n 118.173176,\n 37.563593\n ],\n [\n 118.176098,\n 37.557129\n ],\n [\n 118.173255,\n 37.546858\n ],\n [\n 118.159831,\n 37.539164\n ],\n [\n 118.156988,\n 37.530358\n ],\n [\n 118.150987,\n 37.530517\n ],\n [\n 118.142537,\n 37.518933\n ],\n [\n 118.136772,\n 37.516791\n ],\n [\n 118.139378,\n 37.507427\n ],\n [\n 118.134245,\n 37.507387\n ],\n [\n 118.135035,\n 37.496752\n ],\n [\n 118.127849,\n 37.491831\n ],\n [\n 118.128481,\n 37.483694\n ],\n [\n 118.120426,\n 37.480757\n ],\n [\n 118.112766,\n 37.463528\n ],\n [\n 118.125322,\n 37.45912\n ],\n [\n 118.118531,\n 37.456182\n ],\n [\n 118.114898,\n 37.439742\n ],\n [\n 118.136141,\n 37.441688\n ],\n [\n 118.14996,\n 37.438351\n ],\n [\n 118.163937,\n 37.416742\n ],\n [\n 118.165596,\n 37.4082\n ],\n [\n 118.160147,\n 37.399618\n ],\n [\n 118.16141,\n 37.389961\n ],\n [\n 118.144037,\n 37.392822\n ],\n [\n 118.135509,\n 37.384834\n ],\n [\n 118.141668,\n 37.376487\n ],\n [\n 118.154935,\n 37.377401\n ],\n [\n 118.156198,\n 37.364322\n ],\n [\n 118.161015,\n 37.362573\n ],\n [\n 118.202,\n 37.382409\n ],\n [\n 118.216925,\n 37.385191\n ],\n [\n 118.217951,\n 37.371478\n ],\n [\n 118.222768,\n 37.367861\n ],\n [\n 118.245353,\n 37.367781\n ],\n [\n 118.245827,\n 37.376646\n ],\n [\n 118.258541,\n 37.37911\n ],\n [\n 118.262015,\n 37.364283\n ],\n [\n 118.273624,\n 37.360029\n ],\n [\n 118.286495,\n 37.362772\n ],\n [\n 118.291865,\n 37.358518\n ],\n [\n 118.287285,\n 37.352434\n ],\n [\n 118.315398,\n 37.352514\n ],\n [\n 118.31524,\n 37.31477\n ],\n [\n 118.319741,\n 37.305978\n ],\n [\n 118.326058,\n 37.306535\n ],\n [\n 118.325584,\n 37.296866\n ],\n [\n 118.342168,\n 37.295075\n ],\n [\n 118.342168,\n 37.287076\n ],\n [\n 118.355197,\n 37.286997\n ],\n [\n 118.358277,\n 37.280669\n ],\n [\n 118.368069,\n 37.279594\n ],\n [\n 118.36262,\n 37.273783\n ],\n [\n 118.372096,\n 37.273703\n ],\n [\n 118.375729,\n 37.258497\n ],\n [\n 118.368385,\n 37.258576\n ],\n [\n 118.36033,\n 37.244561\n ],\n [\n 118.350459,\n 37.243765\n ],\n [\n 118.346669,\n 37.233252\n ],\n [\n 118.3642,\n 37.210189\n ],\n [\n 118.375966,\n 37.206126\n ],\n [\n 118.376598,\n 37.196962\n ],\n [\n 118.383389,\n 37.190587\n ],\n [\n 118.387574,\n 37.177834\n ],\n [\n 118.380467,\n 37.175164\n ],\n [\n 118.377545,\n 37.154157\n ],\n [\n 118.366569,\n 37.146781\n ],\n [\n 118.361594,\n 37.148495\n ],\n [\n 118.356224,\n 37.139325\n ],\n [\n 118.347616,\n 37.139803\n ],\n [\n 118.340667,\n 37.131748\n ],\n [\n 118.346116,\n 37.123931\n ],\n [\n 118.338219,\n 37.123134\n ],\n [\n 118.349354,\n 37.101753\n ],\n [\n 118.338298,\n 37.10311\n ],\n [\n 118.338851,\n 37.093894\n ],\n [\n 118.332928,\n 37.081923\n ],\n [\n 118.338535,\n 37.072265\n ],\n [\n 118.337588,\n 37.053904\n ],\n [\n 118.324558,\n 37.046279\n ],\n [\n 118.3259,\n 37.035459\n ],\n [\n 118.310186,\n 37.028231\n ],\n [\n 118.308212,\n 37.019885\n ],\n [\n 118.28997,\n 37.00946\n ],\n [\n 118.288785,\n 36.999993\n ],\n [\n 118.271412,\n 37.006744\n ],\n [\n 118.262568,\n 37.00271\n ],\n [\n 118.250802,\n 37.002949\n ],\n [\n 118.247327,\n 36.98613\n ],\n [\n 118.235087,\n 36.98557\n ],\n [\n 118.231376,\n 36.974822\n ],\n [\n 118.222531,\n 36.967109\n ],\n [\n 118.209739,\n 36.963152\n ],\n [\n 118.195209,\n 36.967348\n ],\n [\n 118.192918,\n 36.977739\n ],\n [\n 118.160936,\n 36.981934\n ],\n [\n 118.161331,\n 36.988567\n ],\n [\n 118.15146,\n 36.988527\n ],\n [\n 118.153198,\n 37.000512\n ],\n [\n 118.138983,\n 37.005985\n ],\n [\n 118.139299,\n 37.014693\n ],\n [\n 118.134008,\n 37.025955\n ],\n [\n 118.139299,\n 37.033103\n ],\n [\n 118.139615,\n 37.044363\n ],\n [\n 118.15146,\n 37.047038\n ],\n [\n 118.150829,\n 37.054743\n ],\n [\n 118.15762,\n 37.057776\n ],\n [\n 118.156909,\n 37.065281\n ],\n [\n 118.13622,\n 37.06536\n ],\n [\n 118.136062,\n 37.077773\n ],\n [\n 118.130455,\n 37.091101\n ],\n [\n 118.115925,\n 37.100636\n ],\n [\n 118.111187,\n 37.094652\n ],\n [\n 118.086075,\n 37.091899\n ],\n [\n 118.063016,\n 37.082841\n ],\n [\n 118.056857,\n 37.093654\n ],\n [\n 118.045959,\n 37.098202\n ],\n [\n 118.045485,\n 37.105982\n ],\n [\n 118.057252,\n 37.106141\n ],\n [\n 118.068623,\n 37.115875\n ],\n [\n 118.079679,\n 37.120781\n ],\n [\n 118.065069,\n 37.139564\n ],\n [\n 118.059858,\n 37.151087\n ],\n [\n 118.062385,\n 37.162528\n ],\n [\n 118.074467,\n 37.170341\n ],\n [\n 118.071545,\n 37.177675\n ],\n [\n 118.082995,\n 37.185605\n ],\n [\n 118.077941,\n 37.188953\n ],\n [\n 118.074072,\n 37.204094\n ],\n [\n 118.064122,\n 37.21007\n ],\n [\n 118.048012,\n 37.205568\n ],\n [\n 118.046275,\n 37.216324\n ],\n [\n 118.036799,\n 37.220905\n ],\n [\n 118.022348,\n 37.2221\n ],\n [\n 118.019584,\n 37.210309\n ],\n [\n 118.010898,\n 37.20756\n ],\n [\n 117.994393,\n 37.212699\n ],\n [\n 117.984364,\n 37.210349\n ],\n [\n 117.98089,\n 37.218674\n ],\n [\n 117.973862,\n 37.216483\n ],\n [\n 117.981048,\n 37.238429\n ],\n [\n 117.996446,\n 37.246273\n ],\n [\n 117.990761,\n 37.248981\n ],\n [\n 117.990603,\n 37.262358\n ],\n [\n 117.963833,\n 37.271753\n ],\n [\n 117.947013,\n 37.262159\n ],\n [\n 117.948829,\n 37.26829\n ],\n [\n 117.941327,\n 37.280549\n ],\n [\n 117.909266,\n 37.265065\n ],\n [\n 117.888497,\n 37.262319\n ],\n [\n 117.8776,\n 37.273027\n ],\n [\n 117.850909,\n 37.28246\n ],\n [\n 117.83859,\n 37.282659\n ],\n [\n 117.818848,\n 37.276012\n ],\n [\n 117.782128,\n 37.248702\n ],\n [\n 117.773678,\n 37.244959\n ],\n [\n 117.760333,\n 37.244959\n ],\n [\n 117.729851,\n 37.249101\n ],\n [\n 117.693447,\n 37.257661\n ],\n [\n 117.675995,\n 37.270121\n ],\n [\n 117.659491,\n 37.274101\n ],\n [\n 117.644329,\n 37.265862\n ],\n [\n 117.63043,\n 37.247269\n ],\n [\n 117.627193,\n 37.228074\n ],\n [\n 117.615348,\n 37.212699\n ],\n [\n 117.598212,\n 37.203058\n ],\n [\n 117.592052,\n 37.169624\n ],\n [\n 117.586366,\n 37.160216\n ],\n [\n 117.574284,\n 37.151366\n ],\n [\n 117.551305,\n 37.146781\n ],\n [\n 117.557464,\n 37.124211\n ],\n [\n 117.574442,\n 37.12106\n ],\n [\n 117.576969,\n 37.114758\n ],\n [\n 117.567888,\n 37.11029\n ],\n [\n 117.575074,\n 37.089185\n ],\n [\n 117.590946,\n 37.084996\n ],\n [\n 117.608477,\n 37.090622\n ],\n [\n 117.619375,\n 37.090103\n ],\n [\n 117.644645,\n 37.083878\n ],\n [\n 117.673942,\n 37.073143\n ],\n [\n 117.703002,\n 37.068673\n ],\n [\n 117.726692,\n 37.068753\n ],\n [\n 117.739801,\n 37.064921\n ],\n [\n 117.761991,\n 37.065839\n ],\n [\n 117.771783,\n 37.069032\n ],\n [\n 117.800369,\n 37.070789\n ],\n [\n 117.847355,\n 37.065959\n ],\n [\n 117.840327,\n 37.035539\n ],\n [\n 117.841827,\n 37.026354\n ],\n [\n 117.865992,\n 37.023719\n ],\n [\n 117.870493,\n 37.013375\n ],\n [\n 117.866386,\n 37.007024\n ],\n [\n 117.866623,\n 36.993282\n ],\n [\n 117.870493,\n 36.985451\n ],\n [\n 117.906581,\n 36.981695\n ],\n [\n 117.911951,\n 36.975141\n ],\n [\n 117.910292,\n 36.962592\n ],\n [\n 117.913372,\n 36.953679\n ],\n [\n 117.931772,\n 36.941886\n ],\n [\n 117.936115,\n 36.93489\n ],\n [\n 117.935404,\n 36.915736\n ],\n [\n 117.94338,\n 36.930012\n ],\n [\n 117.949145,\n 36.918375\n ],\n [\n 117.96178,\n 36.922494\n ],\n [\n 117.960674,\n 36.910376\n ],\n [\n 117.950645,\n 36.902137\n ],\n [\n 117.9403,\n 36.901177\n ],\n [\n 117.940616,\n 36.891616\n ],\n [\n 117.929719,\n 36.890216\n ],\n [\n 117.9189,\n 36.880094\n ],\n [\n 117.917005,\n 36.86973\n ],\n [\n 117.891814,\n 36.871811\n ],\n [\n 117.891103,\n 36.864408\n ],\n [\n 117.875152,\n 36.861246\n ],\n [\n 117.865597,\n 36.866529\n ],\n [\n 117.856594,\n 36.859926\n ],\n [\n 117.832825,\n 36.859966\n ],\n [\n 117.828008,\n 36.855883\n ],\n [\n 117.831877,\n 36.836629\n ],\n [\n 117.822085,\n 36.825139\n ],\n [\n 117.820901,\n 36.801511\n ],\n [\n 117.814662,\n 36.797306\n ],\n [\n 117.815531,\n 36.788573\n ],\n [\n 117.824297,\n 36.787933\n ],\n [\n 117.825639,\n 36.775834\n ],\n [\n 117.840327,\n 36.777516\n ],\n [\n 117.850672,\n 36.764735\n ],\n [\n 117.852488,\n 36.750708\n ],\n [\n 117.832983,\n 36.744816\n ],\n [\n 117.834404,\n 36.751871\n ],\n [\n 117.826429,\n 36.763011\n ],\n [\n 117.820743,\n 36.756359\n ],\n [\n 117.810161,\n 36.734394\n ],\n [\n 117.795157,\n 36.719761\n ],\n [\n 117.793025,\n 36.707451\n ],\n [\n 117.78197,\n 36.70304\n ],\n [\n 117.777942,\n 36.695219\n ],\n [\n 117.754173,\n 36.696944\n ],\n [\n 117.725666,\n 36.695219\n ],\n [\n 117.718006,\n 36.697826\n ],\n [\n 117.71848,\n 36.704724\n ],\n [\n 117.739959,\n 36.721004\n ],\n [\n 117.736642,\n 36.729423\n ],\n [\n 117.747303,\n 36.748584\n ],\n [\n 117.724165,\n 36.755998\n ],\n [\n 117.695974,\n 36.754115\n ],\n [\n 117.687603,\n 36.763853\n ],\n [\n 117.677811,\n 36.783245\n ],\n [\n 117.648119,\n 36.805436\n ],\n [\n 117.608556,\n 36.821815\n ],\n [\n 117.580523,\n 36.85136\n ],\n [\n 117.577364,\n 36.862847\n ],\n [\n 117.579891,\n 36.878093\n ],\n [\n 117.585024,\n 36.886815\n ],\n [\n 117.58376,\n 36.894176\n ],\n [\n 117.56923,\n 36.915736\n ],\n [\n 117.534248,\n 36.931611\n ],\n [\n 117.539538,\n 36.941486\n ],\n [\n 117.551305,\n 36.93385\n ],\n [\n 117.553674,\n 36.940727\n ],\n [\n 117.56465,\n 36.945084\n ],\n [\n 117.56544,\n 36.959954\n ],\n [\n 117.54933,\n 36.96507\n ],\n [\n 117.555253,\n 36.970785\n ],\n [\n 117.549094,\n 36.979817\n ],\n [\n 117.536854,\n 36.978498\n ],\n [\n 117.519875,\n 36.957117\n ],\n [\n 117.509847,\n 36.969267\n ],\n [\n 117.494527,\n 36.972344\n ],\n [\n 117.476522,\n 36.968348\n ],\n [\n 117.477628,\n 36.961154\n ],\n [\n 117.458754,\n 36.957676\n ],\n [\n 117.444461,\n 36.958116\n ],\n [\n 117.432853,\n 36.954878\n ],\n [\n 117.415322,\n 36.964311\n ],\n [\n 117.40403,\n 36.955038\n ],\n [\n 117.391632,\n 36.952\n ],\n [\n 117.378286,\n 36.956997\n ],\n [\n 117.365335,\n 36.99496\n ],\n [\n 117.35349,\n 37.003349\n ],\n [\n 117.328457,\n 37.011218\n ],\n [\n 117.317323,\n 37.020923\n ],\n [\n 117.315349,\n 37.030547\n ],\n [\n 117.326088,\n 37.036178\n ],\n [\n 117.33667,\n 37.046838\n ],\n [\n 117.339434,\n 37.056419\n ],\n [\n 117.336433,\n 37.073941\n ],\n [\n 117.365256,\n 37.069272\n ],\n [\n 117.391158,\n 37.083479\n ],\n [\n 117.409241,\n 37.089425\n ],\n [\n 117.442092,\n 37.093574\n ],\n [\n 117.459781,\n 37.109931\n ],\n [\n 117.455596,\n 37.11767\n ],\n [\n 117.4507,\n 37.143711\n ],\n [\n 117.4507,\n 37.153957\n ],\n [\n 117.444066,\n 37.156868\n ],\n [\n 117.442724,\n 37.170859\n ],\n [\n 117.436091,\n 37.184251\n ],\n [\n 117.417928,\n 37.20003\n ],\n [\n 117.404977,\n 37.21716\n ],\n [\n 117.402371,\n 37.224808\n ],\n [\n 117.408768,\n 37.239703\n ],\n [\n 117.429141,\n 37.239783\n ],\n [\n 117.424403,\n 37.243367\n ],\n [\n 117.431037,\n 37.254396\n ],\n [\n 117.443908,\n 37.250056\n ],\n [\n 117.438302,\n 37.25786\n ],\n [\n 117.43688,\n 37.27235\n ],\n [\n 117.432379,\n 37.272032\n ],\n [\n 117.430168,\n 37.285166\n ],\n [\n 117.417612,\n 37.296587\n ],\n [\n 117.411611,\n 37.308604\n ],\n [\n 117.409163,\n 37.329488\n ],\n [\n 117.41319,\n 37.342255\n ],\n [\n 117.415401,\n 37.364203\n ],\n [\n 117.401029,\n 37.379071\n ],\n [\n 117.368652,\n 37.396399\n ],\n [\n 117.360202,\n 37.405697\n ],\n [\n 117.368257,\n 37.419563\n ],\n [\n 117.369758,\n 37.436048\n ],\n [\n 117.353332,\n 37.450901\n ],\n [\n 117.309189,\n 37.447486\n ],\n [\n 117.295449,\n 37.4538\n ],\n [\n 117.307768,\n 37.46194\n ],\n [\n 117.304609,\n 37.466069\n ],\n [\n 117.283998,\n 37.471587\n ],\n [\n 117.285894,\n 37.479328\n ],\n [\n 117.312585,\n 37.487068\n ],\n [\n 117.317718,\n 37.499371\n ],\n [\n 117.307215,\n 37.507744\n ],\n [\n 117.286525,\n 37.510046\n ],\n [\n 117.284393,\n 37.522266\n ],\n [\n 117.275549,\n 37.526193\n ],\n [\n 117.273417,\n 37.532619\n ]\n ]\n ],\n [\n [\n [\n 118.40779,\n 38.026212\n ],\n [\n 118.410001,\n 38.053277\n ],\n [\n 118.419319,\n 38.053119\n ],\n [\n 118.419951,\n 38.025503\n ],\n [\n 118.40779,\n 38.026212\n ]\n ]\n ]\n ]\n }\n },\n {\n \"type\": \"Feature\",\n \"properties\": {\n \"adcode\": 371700,\n \"name\": \"菏泽市\",\n \"center\": [\n 115.469381,\n 35.246531\n ],\n \"centroid\": [\n 115.698013,\n 35.152536\n ],\n \"childrenNum\": 9,\n \"level\": \"city\",\n \"parent\": {\n \"adcode\": 370000\n },\n \"subFeatureIndex\": 15,\n \"acroutes\": [\n 100000,\n 370000\n ]\n },\n \"geometry\": {\n \"type\": \"MultiPolygon\",\n \"coordinates\": [\n [\n [\n [\n 116.409745,\n 34.852944\n ],\n [\n 116.40635,\n 34.82014\n ],\n [\n 116.403191,\n 34.756301\n ],\n [\n 116.371525,\n 34.750136\n ],\n [\n 116.365681,\n 34.742779\n ],\n [\n 116.36197,\n 34.723705\n ],\n [\n 116.382896,\n 34.716264\n ],\n [\n 116.39182,\n 34.710343\n ],\n [\n 116.392688,\n 34.703887\n ],\n [\n 116.385502,\n 34.694716\n ],\n [\n 116.385186,\n 34.686696\n ],\n [\n 116.378079,\n 34.684146\n ],\n [\n 116.378237,\n 34.66802\n ],\n [\n 116.364418,\n 34.651851\n ],\n [\n 116.37421,\n 34.639958\n ],\n [\n 116.356521,\n 34.629504\n ],\n [\n 116.331014,\n 34.624977\n ],\n [\n 116.325171,\n 34.620572\n ],\n [\n 116.323591,\n 34.607687\n ],\n [\n 116.318064,\n 34.601017\n ],\n [\n 116.301086,\n 34.607769\n ],\n [\n 116.286082,\n 34.608799\n ],\n [\n 116.278659,\n 34.602129\n ],\n [\n 116.277079,\n 34.586029\n ],\n [\n 116.256627,\n 34.580634\n ],\n [\n 116.249204,\n 34.571614\n ],\n [\n 116.240754,\n 34.552377\n ],\n [\n 116.23341,\n 34.555137\n ],\n [\n 116.216906,\n 34.575115\n ],\n [\n 116.199059,\n 34.577463\n ],\n [\n 116.190136,\n 34.570502\n ],\n [\n 116.156653,\n 34.553737\n ],\n [\n 116.146861,\n 34.553201\n ],\n [\n 116.134542,\n 34.55971\n ],\n [\n 116.124829,\n 34.572314\n ],\n [\n 116.11788,\n 34.589776\n ],\n [\n 116.101297,\n 34.605793\n ],\n [\n 116.082661,\n 34.608305\n ],\n [\n 116.055101,\n 34.595417\n ],\n [\n 116.03757,\n 34.593029\n ],\n [\n 116.023908,\n 34.601964\n ],\n [\n 116.010168,\n 34.615838\n ],\n [\n 116.001561,\n 34.619049\n ],\n [\n 115.991374,\n 34.615344\n ],\n [\n 115.98474,\n 34.607234\n ],\n [\n 115.98403,\n 34.589282\n ],\n [\n 115.969973,\n 34.582611\n ],\n [\n 115.946204,\n 34.581622\n ],\n [\n 115.858313,\n 34.569967\n ],\n [\n 115.849705,\n 34.565601\n ],\n [\n 115.838097,\n 34.567784\n ],\n [\n 115.838808,\n 34.560575\n ],\n [\n 115.827436,\n 34.558268\n ],\n [\n 115.802404,\n 34.572479\n ],\n [\n 115.795928,\n 34.578492\n ],\n [\n 115.762051,\n 34.587717\n ],\n [\n 115.718224,\n 34.591094\n ],\n [\n 115.711433,\n 34.59867\n ],\n [\n 115.699114,\n 34.598876\n ],\n [\n 115.697297,\n 34.569019\n ],\n [\n 115.684426,\n 34.555591\n ],\n [\n 115.669422,\n 34.55695\n ],\n [\n 115.643599,\n 34.567701\n ],\n [\n 115.639493,\n 34.571532\n ],\n [\n 115.621883,\n 34.574744\n ],\n [\n 115.610354,\n 34.572067\n ],\n [\n 115.593771,\n 34.573179\n ],\n [\n 115.576792,\n 34.570667\n ],\n [\n 115.561157,\n 34.572232\n ],\n [\n 115.55476,\n 34.56906\n ],\n [\n 115.52112,\n 34.578739\n ],\n [\n 115.494982,\n 34.604723\n ],\n [\n 115.486295,\n 34.616867\n ],\n [\n 115.479583,\n 34.632673\n ],\n [\n 115.46142,\n 34.637283\n ],\n [\n 115.458183,\n 34.656171\n ],\n [\n 115.444758,\n 34.674479\n ],\n [\n 115.447048,\n 34.698623\n ],\n [\n 115.444916,\n 34.710302\n ],\n [\n 115.433861,\n 34.725103\n ],\n [\n 115.445548,\n 34.752561\n ],\n [\n 115.436546,\n 34.776805\n ],\n [\n 115.43465,\n 34.790322\n ],\n [\n 115.426754,\n 34.805396\n ],\n [\n 115.413882,\n 34.80782\n ],\n [\n 115.416172,\n 34.813323\n ],\n [\n 115.408512,\n 34.82593\n ],\n [\n 115.393982,\n 34.831801\n ],\n [\n 115.379215,\n 34.828763\n ],\n [\n 115.356946,\n 34.837303\n ],\n [\n 115.345969,\n 34.846212\n ],\n [\n 115.329623,\n 34.851466\n ],\n [\n 115.317146,\n 34.859183\n ],\n [\n 115.302379,\n 34.858813\n ],\n [\n 115.289586,\n 34.851589\n ],\n [\n 115.274661,\n 34.85475\n ],\n [\n 115.256104,\n 34.845308\n ],\n [\n 115.243469,\n 34.850152\n ],\n [\n 115.239363,\n 34.874655\n ],\n [\n 115.240784,\n 34.883847\n ],\n [\n 115.249234,\n 34.894515\n ],\n [\n 115.252156,\n 34.906576\n ],\n [\n 115.239363,\n 34.911868\n ],\n [\n 115.204933,\n 34.914247\n ],\n [\n 115.202722,\n 34.925608\n ],\n [\n 115.211724,\n 34.943364\n ],\n [\n 115.222148,\n 34.945578\n ],\n [\n 115.219147,\n 34.960624\n ],\n [\n 115.208249,\n 34.958329\n ],\n [\n 115.201616,\n 34.95099\n ],\n [\n 115.175004,\n 34.962469\n ],\n [\n 115.15692,\n 34.958001\n ],\n [\n 115.157236,\n 34.966978\n ],\n [\n 115.146576,\n 34.980135\n ],\n [\n 115.131177,\n 34.983578\n ],\n [\n 115.132993,\n 34.999683\n ],\n [\n 115.128097,\n 35.004354\n ],\n [\n 115.106144,\n 35.000789\n ],\n [\n 115.074952,\n 35.000379\n ],\n [\n 115.051656,\n 34.985996\n ],\n [\n 115.0376,\n 34.981611\n ],\n [\n 115.028835,\n 34.971815\n ],\n [\n 115.016042,\n 34.977348\n ],\n [\n 115.008066,\n 34.988496\n ],\n [\n 114.970319,\n 34.990504\n ],\n [\n 114.946787,\n 34.988701\n ],\n [\n 114.934784,\n 34.980709\n ],\n [\n 114.923807,\n 34.968741\n ],\n [\n 114.913936,\n 34.977881\n ],\n [\n 114.907935,\n 34.989356\n ],\n [\n 114.889693,\n 34.993987\n ],\n [\n 114.880296,\n 35.003493\n ],\n [\n 114.884402,\n 35.021929\n ],\n [\n 114.869951,\n 35.024468\n ],\n [\n 114.859291,\n 35.002674\n ],\n [\n 114.827072,\n 35.01013\n ],\n [\n 114.846972,\n 35.023444\n ],\n [\n 114.855263,\n 35.036183\n ],\n [\n 114.85092,\n 35.041917\n ],\n [\n 114.834021,\n 35.042162\n ],\n [\n 114.819254,\n 35.051786\n ],\n [\n 114.83181,\n 35.074182\n ],\n [\n 114.861186,\n 35.082983\n ],\n [\n 114.876269,\n 35.091128\n ],\n [\n 114.882902,\n 35.098781\n ],\n [\n 114.883613,\n 35.109667\n ],\n [\n 114.872557,\n 35.125992\n ],\n [\n 114.860633,\n 35.137405\n ],\n [\n 114.841681,\n 35.151189\n ],\n [\n 114.841049,\n 35.159246\n ],\n [\n 114.850288,\n 35.172617\n ],\n [\n 114.86166,\n 35.182389\n ],\n [\n 114.876584,\n 35.189012\n ],\n [\n 114.909356,\n 35.19449\n ],\n [\n 114.928308,\n 35.194776\n ],\n [\n 114.932494,\n 35.198659\n ],\n [\n 114.92973,\n 35.248225\n ],\n [\n 114.954605,\n 35.255455\n ],\n [\n 114.957684,\n 35.261132\n ],\n [\n 114.975531,\n 35.261541\n ],\n [\n 114.975768,\n 35.270281\n ],\n [\n 114.963607,\n 35.273752\n ],\n [\n 114.987613,\n 35.30221\n ],\n [\n 115.004749,\n 35.317273\n ],\n [\n 115.014541,\n 35.318089\n ],\n [\n 115.0177,\n 35.340575\n ],\n [\n 115.02536,\n 35.346328\n ],\n [\n 115.035152,\n 35.368316\n ],\n [\n 115.043286,\n 35.376963\n ],\n [\n 115.057737,\n 35.378472\n ],\n [\n 115.075426,\n 35.375168\n ],\n [\n 115.088613,\n 35.39299\n ],\n [\n 115.084823,\n 35.410074\n ],\n [\n 115.091614,\n 35.416066\n ],\n [\n 115.105907,\n 35.403958\n ],\n [\n 115.114831,\n 35.404121\n ],\n [\n 115.117989,\n 35.41839\n ],\n [\n 115.117831,\n 35.400125\n ],\n [\n 115.126597,\n 35.408728\n ],\n [\n 115.126439,\n 35.418023\n ],\n [\n 115.136863,\n 35.421529\n ],\n [\n 115.16766,\n 35.426094\n ],\n [\n 115.189534,\n 35.425116\n ],\n [\n 115.197905,\n 35.420673\n ],\n [\n 115.209829,\n 35.423118\n ],\n [\n 115.23731,\n 35.423118\n ],\n [\n 115.257446,\n 35.43559\n ],\n [\n 115.272608,\n 35.448305\n ],\n [\n 115.270792,\n 35.456821\n ],\n [\n 115.286665,\n 35.464481\n ],\n [\n 115.307117,\n 35.480001\n ],\n [\n 115.357973,\n 35.498451\n ],\n [\n 115.357973,\n 35.506555\n ],\n [\n 115.350313,\n 35.529476\n ],\n [\n 115.35355,\n 35.540548\n ],\n [\n 115.360499,\n 35.543275\n ],\n [\n 115.345969,\n 35.546979\n ],\n [\n 115.345101,\n 35.553612\n ],\n [\n 115.357973,\n 35.554711\n ],\n [\n 115.359236,\n 35.565454\n ],\n [\n 115.369502,\n 35.559757\n ],\n [\n 115.370765,\n 35.571028\n ],\n [\n 115.383242,\n 35.568912\n ],\n [\n 115.383716,\n 35.57766\n ],\n [\n 115.389718,\n 35.577334\n ],\n [\n 115.394456,\n 35.586894\n ],\n [\n 115.411908,\n 35.603571\n ],\n [\n 115.416251,\n 35.623985\n ],\n [\n 115.439388,\n 35.643458\n ],\n [\n 115.452418,\n 35.660732\n ],\n [\n 115.461499,\n 35.680847\n ],\n [\n 115.485979,\n 35.710137\n ],\n [\n 115.511486,\n 35.727153\n ],\n [\n 115.524121,\n 35.726341\n ],\n [\n 115.533202,\n 35.734137\n ],\n [\n 115.552786,\n 35.73032\n ],\n [\n 115.562499,\n 35.738644\n ],\n [\n 115.583031,\n 35.730564\n ],\n [\n 115.588875,\n 35.738522\n ],\n [\n 115.619514,\n 35.739212\n ],\n [\n 115.643046,\n 35.743841\n ],\n [\n 115.665079,\n 35.751067\n ],\n [\n 115.693586,\n 35.754071\n ],\n [\n 115.698245,\n 35.768399\n ],\n [\n 115.696271,\n 35.788892\n ],\n [\n 115.704404,\n 35.788933\n ],\n [\n 115.706379,\n 35.805608\n ],\n [\n 115.717434,\n 35.802727\n ],\n [\n 115.720277,\n 35.817087\n ],\n [\n 115.727937,\n 35.815627\n ],\n [\n 115.734886,\n 35.832945\n ],\n [\n 115.753128,\n 35.832945\n ],\n [\n 115.752891,\n 35.838379\n ],\n [\n 115.763709,\n 35.838379\n ],\n [\n 115.773343,\n 35.854192\n ],\n [\n 115.816776,\n 35.844259\n ],\n [\n 115.821356,\n 35.852652\n ],\n [\n 115.841335,\n 35.850016\n ],\n [\n 115.840861,\n 35.857192\n ],\n [\n 115.859971,\n 35.857882\n ],\n [\n 115.865499,\n 35.868624\n ],\n [\n 115.872606,\n 35.872799\n ],\n [\n 115.871422,\n 35.858327\n ],\n [\n 115.876002,\n 35.867124\n ],\n [\n 115.875212,\n 35.835095\n ],\n [\n 115.877107,\n 35.820657\n ],\n [\n 115.883583,\n 35.808163\n ],\n [\n 115.898192,\n 35.805202\n ],\n [\n 115.911932,\n 35.811733\n ],\n [\n 115.925988,\n 35.804756\n ],\n [\n 115.922119,\n 35.799157\n ],\n [\n 115.945493,\n 35.791976\n ],\n [\n 115.970289,\n 35.782156\n ],\n [\n 116.017591,\n 35.756263\n ],\n [\n 116.026909,\n 35.749687\n ],\n [\n 116.041518,\n 35.733893\n ],\n [\n 116.071052,\n 35.719072\n ],\n [\n 116.079897,\n 35.712452\n ],\n [\n 116.089847,\n 35.699373\n ],\n [\n 116.103034,\n 35.687348\n ],\n [\n 116.121829,\n 35.67459\n ],\n [\n 116.127514,\n 35.649433\n ],\n [\n 116.134384,\n 35.638539\n ],\n [\n 116.115906,\n 35.618414\n ],\n [\n 116.116222,\n 35.606621\n ],\n [\n 116.125145,\n 35.59385\n ],\n [\n 116.125145,\n 35.587871\n ],\n [\n 116.114327,\n 35.577456\n ],\n [\n 116.115274,\n 35.566471\n ],\n [\n 116.123408,\n 35.540589\n ],\n [\n 116.12554,\n 35.516042\n ],\n [\n 116.121276,\n 35.497881\n ],\n [\n 116.128778,\n 35.489614\n ],\n [\n 116.129567,\n 35.475235\n ],\n [\n 116.15002,\n 35.469573\n ],\n [\n 116.160918,\n 35.471569\n ],\n [\n 116.15689,\n 35.446838\n ],\n [\n 116.167946,\n 35.452217\n ],\n [\n 116.178685,\n 35.450342\n ],\n [\n 116.177817,\n 35.466151\n ],\n [\n 116.188319,\n 35.477313\n ],\n [\n 116.188319,\n 35.467781\n ],\n [\n 116.19669,\n 35.46334\n ],\n [\n 116.206798,\n 35.465703\n ],\n [\n 116.20206,\n 35.458247\n ],\n [\n 116.204429,\n 35.436079\n ],\n [\n 116.215484,\n 35.435957\n ],\n [\n 116.215958,\n 35.419857\n ],\n [\n 116.212642,\n 35.409054\n ],\n [\n 116.215879,\n 35.393438\n ],\n [\n 116.223855,\n 35.371702\n ],\n [\n 116.22117,\n 35.358608\n ],\n [\n 116.215169,\n 35.350734\n ],\n [\n 116.201744,\n 35.345185\n ],\n [\n 116.193452,\n 35.337555\n ],\n [\n 116.199612,\n 35.304986\n ],\n [\n 116.215642,\n 35.29131\n ],\n [\n 116.223539,\n 35.260438\n ],\n [\n 116.237201,\n 35.261745\n ],\n [\n 116.265866,\n 35.271547\n ],\n [\n 116.269656,\n 35.269872\n ],\n [\n 116.285608,\n 35.242669\n ],\n [\n 116.284265,\n 35.22506\n ],\n [\n 116.269104,\n 35.191178\n ],\n [\n 116.248256,\n 35.195634\n ],\n [\n 116.234437,\n 35.208264\n ],\n [\n 116.234516,\n 35.200008\n ],\n [\n 116.228356,\n 35.194367\n ],\n [\n 116.213115,\n 35.196697\n ],\n [\n 116.221881,\n 35.181817\n ],\n [\n 116.223618,\n 35.173231\n ],\n [\n 116.214537,\n 35.155606\n ],\n [\n 116.204903,\n 35.145668\n ],\n [\n 116.181765,\n 35.11204\n ],\n [\n 116.154284,\n 35.113513\n ],\n [\n 116.141018,\n 35.09076\n ],\n [\n 116.15389,\n 35.088467\n ],\n [\n 116.140228,\n 35.06018\n ],\n [\n 116.141413,\n 35.055062\n ],\n [\n 116.119381,\n 35.053383\n ],\n [\n 116.114564,\n 35.039828\n ],\n [\n 116.115748,\n 35.025574\n ],\n [\n 116.139754,\n 34.995421\n ],\n [\n 116.170789,\n 34.974684\n ],\n [\n 116.171499,\n 34.964683\n ],\n [\n 116.162023,\n 34.957632\n ],\n [\n 116.155153,\n 34.947259\n ],\n [\n 116.162181,\n 34.94361\n ],\n [\n 116.192505,\n 34.939182\n ],\n [\n 116.201586,\n 34.919702\n ],\n [\n 116.213826,\n 34.913098\n ],\n [\n 116.226935,\n 34.911786\n ],\n [\n 116.266261,\n 34.89751\n ],\n [\n 116.286713,\n 34.88159\n ],\n [\n 116.299032,\n 34.877733\n ],\n [\n 116.325803,\n 34.874943\n ],\n [\n 116.339543,\n 34.867022\n ],\n [\n 116.373815,\n 34.86538\n ],\n [\n 116.409745,\n 34.852944\n ]\n ]\n ]\n ]\n }\n }\n ]\n}', 'admin', '2020-12-07 19:27:59', 'admin', '2021-02-01 17:41:17', '0', NULL); +INSERT INTO `jimu_report_map` VALUES ('1335896227857940481', '杭州', 'hangzhou', '{\"type\":\"FeatureCollection\",\"features\":[{\"type\":\"Feature\",\"properties\":{\"adcode\":330102,\"name\":\"上城区\",\"center\":[120.171465,30.250236],\"centroid\":[120.173932,30.226977],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":0,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.188063,30.257783],[120.187445,30.250124],[120.186613,30.246239],[120.19132,30.245676],[120.197999,30.242341],[120.19983,30.240158],[120.213307,30.230548],[120.196573,30.216571],[120.182858,30.207933],[120.177628,30.205626],[120.140166,30.19284],[120.138169,30.19512],[120.1371,30.1981],[120.137551,30.201012],[120.141545,30.204061],[120.141069,30.206464],[120.138431,30.207947],[120.139405,30.210474],[120.145253,30.209581],[120.147368,30.210268],[120.150173,30.212849],[120.160347,30.227486],[120.15923,30.231578],[120.154381,30.23442],[120.154666,30.241119],[120.160442,30.246843],[120.15797,30.24672],[120.159848,30.249493],[120.16251,30.251565],[120.15923,30.256397],[120.156948,30.258058],[120.164079,30.25836],[120.171804,30.258003],[120.188063,30.257783]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330103,\"name\":\"下城区\",\"center\":[120.172763,30.276271],\"centroid\":[120.180095,30.303745],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":1,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.199853,30.35099],[120.201042,30.348124],[120.20437,30.345738],[120.212285,30.34534],[120.212095,30.334149],[120.211168,30.332119],[120.205939,30.332202],[120.203157,30.329733],[120.202349,30.326236],[120.204417,30.325961],[120.202421,30.322176],[120.197833,30.322244],[120.196906,30.320118],[120.204322,30.320488],[120.207198,30.320118],[120.200186,30.312148],[120.197952,30.314329],[120.194838,30.312093],[120.190607,30.312642],[120.18987,30.308856],[120.188301,30.30876],[120.188253,30.304507],[120.193007,30.30474],[120.190892,30.300295],[120.186494,30.29714],[120.183975,30.285367],[120.184926,30.28121],[120.18899,30.274321],[120.188182,30.270849],[120.188658,30.267294],[120.188063,30.257783],[120.171804,30.258003],[120.164079,30.25836],[120.156948,30.258058],[120.156472,30.260295],[120.158469,30.259142],[120.154666,30.272688],[120.161892,30.273305],[120.160822,30.279096],[120.159681,30.280524],[120.154547,30.282637],[120.153073,30.284983],[120.154024,30.289895],[120.165553,30.293463],[120.166266,30.294807],[120.164816,30.30009],[120.157162,30.308197],[120.156972,30.309213],[120.169522,30.325399],[120.174348,30.331146],[120.17827,30.336604],[120.187041,30.347561],[120.195789,30.348892],[120.199853,30.35099]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330104,\"name\":\"江干区\",\"center\":[120.202633,30.266603],\"centroid\":[120.296023,30.310268],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":2,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.188063,30.257783],[120.188658,30.267294],[120.188182,30.270849],[120.18899,30.274321],[120.184926,30.28121],[120.183975,30.285367],[120.186494,30.29714],[120.190892,30.300295],[120.193007,30.30474],[120.188253,30.304507],[120.188301,30.30876],[120.18987,30.308856],[120.190607,30.312642],[120.194838,30.312093],[120.197952,30.314329],[120.200186,30.312148],[120.207198,30.320118],[120.204322,30.320488],[120.196906,30.320118],[120.197833,30.322244],[120.202421,30.322176],[120.204417,30.325961],[120.202349,30.326236],[120.203157,30.329733],[120.205939,30.332202],[120.211168,30.332119],[120.212095,30.334149],[120.212285,30.34534],[120.20437,30.345738],[120.201042,30.348124],[120.199853,30.35099],[120.204251,30.352662],[120.210407,30.357736],[120.211739,30.359971],[120.213093,30.36503],[120.211881,30.369198],[120.208957,30.374243],[120.208815,30.376478],[120.210502,30.37911],[120.221294,30.387156],[120.228592,30.393544],[120.232395,30.392529],[120.237577,30.390062],[120.240334,30.387622],[120.23791,30.380028],[120.23482,30.376683],[120.239978,30.372146],[120.2468,30.363947],[120.247109,30.362343],[120.244233,30.359902],[120.243567,30.358188],[120.243947,30.354116],[120.242236,30.348261],[120.239883,30.344997],[120.234772,30.340691],[120.236056,30.339786],[120.243543,30.344174],[120.246015,30.342871],[120.248012,30.338853],[120.252552,30.337043],[120.261466,30.337523],[120.260872,30.335452],[120.258471,30.334355],[120.264437,30.326578],[120.268051,30.328663],[120.266553,30.331338],[120.277868,30.337948],[120.279318,30.336686],[120.281885,30.328499],[120.276251,30.3233],[120.272591,30.320516],[120.275562,30.319857],[120.291964,30.317814],[120.291631,30.315331],[120.295767,30.314851],[120.299475,30.315605],[120.300212,30.32127],[120.300117,30.324987],[120.29358,30.325001],[120.296623,30.33596],[120.299618,30.341816],[120.301567,30.343927],[120.300759,30.347575],[120.307224,30.350619],[120.310766,30.350839],[120.316281,30.352539],[120.325717,30.353389],[120.328261,30.358655],[120.335986,30.361068],[120.341192,30.36588],[120.34433,30.368087],[120.347206,30.36928],[120.350629,30.372173],[120.355953,30.374065],[120.362847,30.374682],[120.371143,30.377286],[120.379486,30.380714],[120.383194,30.381235],[120.398312,30.384799],[120.400095,30.384264],[120.400903,30.377026],[120.399596,30.37327],[120.396197,30.370624],[120.388543,30.370117],[120.380817,30.356378],[120.38241,30.355761],[120.378084,30.344929],[120.384169,30.340005],[120.383955,30.339155],[120.395198,30.332215],[120.40309,30.325248],[120.406584,30.324878],[120.413739,30.318307],[120.408866,30.305413],[120.403423,30.293188],[120.396149,30.281141],[120.389779,30.272756],[120.37642,30.259773],[120.369027,30.254763],[120.364154,30.252801],[120.355098,30.250522],[120.350676,30.25011],[120.340859,30.252595],[120.336058,30.255697],[120.324149,30.267239],[120.320535,30.270218],[120.317731,30.27395],[120.311004,30.280359],[120.3043,30.28604],[120.298952,30.287878],[120.288136,30.288235],[120.278961,30.286822],[120.270594,30.284722],[120.269786,30.284105],[120.252838,30.276091],[120.248036,30.272468],[120.241665,30.26514],[120.221057,30.23766],[120.213307,30.230548],[120.19983,30.240158],[120.197999,30.242341],[120.19132,30.245676],[120.186613,30.246239],[120.187445,30.250124],[120.188063,30.257783]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330105,\"name\":\"拱墅区\",\"center\":[120.150053,30.314697],\"centroid\":[120.152502,30.339314],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":3,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.085779,30.331187],[120.090011,30.334931],[120.091746,30.333395],[120.096405,30.335685],[120.099019,30.338305],[120.097641,30.340581],[120.103702,30.3415],[120.106127,30.343283],[120.1081,30.342803],[120.108409,30.339978],[120.111737,30.33969],[120.114137,30.337262],[120.121387,30.337948],[120.123265,30.339224],[120.123764,30.33644],[120.124953,30.339498],[120.129446,30.342515],[120.129446,30.341144],[120.136957,30.343379],[120.133843,30.354568],[120.131537,30.357708],[120.130182,30.362754],[120.129279,30.371666],[120.129208,30.38203],[120.130943,30.383222],[120.1342,30.380947],[120.139073,30.380316],[120.138526,30.378095],[120.140736,30.376176],[120.146132,30.375683],[120.146204,30.377835],[120.149175,30.38033],[120.152741,30.380686],[120.153002,30.375861],[120.159254,30.375559],[120.159016,30.372543],[120.167882,30.371035],[120.170782,30.372475],[120.171044,30.37401],[120.168595,30.3746],[120.171828,30.37582],[120.173444,30.374942],[120.174348,30.371954],[120.177699,30.376807],[120.183832,30.381618],[120.186162,30.38802],[120.192485,30.396148],[120.19838,30.394174],[120.209908,30.392557],[120.212998,30.39109],[120.216778,30.387896],[120.221294,30.387156],[120.210502,30.37911],[120.208815,30.376478],[120.208957,30.374243],[120.211881,30.369198],[120.213093,30.36503],[120.211739,30.359971],[120.210407,30.357736],[120.204251,30.352662],[120.199853,30.35099],[120.195789,30.348892],[120.187041,30.347561],[120.17827,30.336604],[120.174348,30.331146],[120.169522,30.325399],[120.156972,30.309213],[120.157162,30.308197],[120.164816,30.30009],[120.166266,30.294807],[120.165553,30.293463],[120.154024,30.289895],[120.153073,30.284983],[120.154547,30.282637],[120.159681,30.280524],[120.160822,30.279096],[120.161892,30.273305],[120.154666,30.272688],[120.154024,30.27535],[120.150934,30.278506],[120.149294,30.28206],[120.146132,30.286589],[120.144112,30.291144],[120.141188,30.293902],[120.135198,30.292626],[120.132512,30.292791],[120.128709,30.294286],[120.118012,30.29264],[120.109241,30.291995],[120.104677,30.292461],[120.102205,30.298292],[120.102823,30.304672],[120.102038,30.312697],[120.095597,30.325481],[120.092007,30.326071],[120.088489,30.330529],[120.085779,30.331187]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330106,\"name\":\"西湖区\",\"center\":[120.147376,30.272934],\"centroid\":[120.083604,30.200677],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":4,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.140166,30.19284],[120.134128,30.190588],[120.129659,30.186852],[120.126664,30.182827],[120.12462,30.177346],[120.124596,30.167263],[120.125999,30.15946],[120.130373,30.151161],[120.138597,30.142078],[120.146132,30.137172],[120.160014,30.12637],[120.16831,30.121793],[120.177723,30.11712],[120.181835,30.111457],[120.182953,30.10846],[120.182168,30.104818],[120.177295,30.102604],[120.170354,30.101546],[120.162011,30.097985],[120.150459,30.091455],[120.146869,30.088664],[120.134818,30.097669],[120.130349,30.099305],[120.124739,30.092953],[120.123812,30.089461],[120.118131,30.083796],[120.115088,30.082229],[120.108955,30.08062],[120.09795,30.079603],[120.091579,30.078475],[120.084615,30.078269],[120.076747,30.080868],[120.067928,30.086794],[120.061748,30.091853],[120.059513,30.092788],[120.054902,30.09272],[120.052953,30.091661],[120.049125,30.086849],[120.044894,30.086368],[120.043635,30.092156],[120.041258,30.093091],[120.036361,30.092555],[120.030846,30.094768],[120.030442,30.098837],[120.025213,30.105519],[120.02324,30.10633],[120.019151,30.10567],[120.016465,30.108323],[120.017725,30.113189],[120.016417,30.115718],[120.01095,30.116254],[120.001822,30.114357],[120.000468,30.116034],[120.001941,30.119567],[120.003819,30.12659],[120.007004,30.130026],[120.008787,30.134204],[120.008858,30.136719],[120.011663,30.142779],[120.016417,30.148935],[120.017178,30.153167],[120.014825,30.15891],[120.018438,30.162963],[120.018913,30.165202],[120.017772,30.168417],[120.014397,30.173816],[120.016156,30.177072],[120.013494,30.181042],[120.011449,30.181852],[120.005459,30.182346],[119.998994,30.182305],[119.996332,30.181536],[120.0013,30.188006],[120.003439,30.191865],[120.009096,30.195615],[120.009263,30.200202],[120.006529,30.205379],[120.007171,30.208757],[120.013351,30.210254],[120.017487,30.211792],[120.018034,30.214319],[120.015704,30.213426],[120.009999,30.215637],[120.007123,30.2208],[120.010356,30.221184],[120.013755,30.2162],[120.015443,30.218067],[120.018367,30.216447],[120.020268,30.217985],[120.01889,30.219742],[120.016845,30.224823],[120.025046,30.228461],[120.030894,30.230479],[120.032153,30.229697],[120.038571,30.233019],[120.040639,30.232841],[120.041162,30.236122],[120.044538,30.238058],[120.0443,30.240474],[120.046178,30.242725],[120.052216,30.243494],[120.052691,30.245333],[120.055234,30.245388],[120.055306,30.251483],[120.058515,30.252801],[120.05773,30.257289],[120.057255,30.268351],[120.056494,30.273374],[120.052382,30.273237],[120.049815,30.274266],[120.049815,30.27594],[120.05281,30.282897],[120.056732,30.2884],[120.052263,30.289319],[120.051621,30.29054],[120.052953,30.293847],[120.054807,30.295246],[120.053784,30.298772],[120.051907,30.299513],[120.048008,30.30319],[120.042089,30.304096],[120.030799,30.299843],[120.028493,30.303835],[120.026116,30.305948],[120.026686,30.310996],[120.02179,30.311874],[120.020554,30.315674],[120.023881,30.316195],[120.023406,30.319967],[120.023572,30.326743],[120.021362,30.329088],[120.01782,30.329733],[120.01763,30.33238],[120.026425,30.333272],[120.027185,30.335905],[120.025545,30.342474],[120.025973,30.34523],[120.023881,30.348357],[120.029444,30.350016],[120.032795,30.351634],[120.038595,30.350948],[120.046511,30.35221],[120.046463,30.353759],[120.048674,30.353526],[120.050195,30.349865],[120.053951,30.351401],[120.060607,30.351497],[120.060868,30.353348],[120.063673,30.352128],[120.065361,30.352813],[120.06517,30.355309],[120.067334,30.355446],[120.069449,30.350702],[120.074655,30.34774],[120.0762,30.345285],[120.079742,30.341816],[120.081881,30.33563],[120.085779,30.331187],[120.088489,30.330529],[120.092007,30.326071],[120.095597,30.325481],[120.102038,30.312697],[120.102823,30.304672],[120.102205,30.298292],[120.104677,30.292461],[120.109241,30.291995],[120.118012,30.29264],[120.128709,30.294286],[120.132512,30.292791],[120.135198,30.292626],[120.141188,30.293902],[120.144112,30.291144],[120.146132,30.286589],[120.149294,30.28206],[120.150934,30.278506],[120.154024,30.27535],[120.154666,30.272688],[120.158469,30.259142],[120.156472,30.260295],[120.156948,30.258058],[120.15923,30.256397],[120.16251,30.251565],[120.159848,30.249493],[120.15797,30.24672],[120.160442,30.246843],[120.154666,30.241119],[120.154381,30.23442],[120.15923,30.231578],[120.160347,30.227486],[120.150173,30.212849],[120.147368,30.210268],[120.145253,30.209581],[120.139405,30.210474],[120.138431,30.207947],[120.141069,30.206464],[120.141545,30.204061],[120.137551,30.201012],[120.1371,30.1981],[120.138169,30.19512],[120.140166,30.19284]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330108,\"name\":\"滨江区\",\"center\":[120.21062,30.206615],\"centroid\":[120.185259,30.180456],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":5,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.221057,30.23766],[120.223957,30.2363],[120.226524,30.232896],[120.231896,30.230177],[120.234439,30.229793],[120.235224,30.228132],[120.234962,30.21366],[120.234463,30.21355],[120.234202,30.188788],[120.233488,30.182044],[120.224575,30.181879],[120.224646,30.179173],[120.222055,30.178885],[120.222293,30.173637],[120.224384,30.171247],[120.220557,30.170519],[120.219963,30.16703],[120.217943,30.164749],[120.216849,30.161314],[120.220534,30.162578],[120.224979,30.162716],[120.226167,30.16016],[120.223148,30.156684],[120.224598,30.153868],[120.221651,30.153758],[120.219892,30.150515],[120.216944,30.143081],[120.219464,30.139948],[120.214543,30.136911],[120.213307,30.137887],[120.211572,30.136375],[120.208743,30.137131],[120.208054,30.139302],[120.205273,30.143026],[120.204084,30.141061],[120.201375,30.139563],[120.197167,30.140759],[120.19189,30.147121],[120.186185,30.144428],[120.186661,30.146599],[120.184141,30.145362],[120.181717,30.147245],[120.180338,30.149814],[120.178864,30.149416],[120.175203,30.153881],[120.170473,30.15112],[120.168286,30.148646],[120.164816,30.150062],[120.16232,30.147382],[120.159087,30.148894],[120.154737,30.145953],[120.155902,30.144332],[120.152764,30.142751],[120.146132,30.137172],[120.138597,30.142078],[120.130373,30.151161],[120.125999,30.15946],[120.124596,30.167263],[120.12462,30.177346],[120.126664,30.182827],[120.129659,30.186852],[120.134128,30.190588],[120.140166,30.19284],[120.177628,30.205626],[120.182858,30.207933],[120.196573,30.216571],[120.213307,30.230548],[120.221057,30.23766]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330109,\"name\":\"萧山区\",\"center\":[120.27069,30.162932],\"centroid\":[120.388786,30.16844],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":6,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.146132,30.137172],[120.152764,30.142751],[120.155902,30.144332],[120.154737,30.145953],[120.159087,30.148894],[120.16232,30.147382],[120.164816,30.150062],[120.168286,30.148646],[120.170473,30.15112],[120.175203,30.153881],[120.178864,30.149416],[120.180338,30.149814],[120.181717,30.147245],[120.184141,30.145362],[120.186661,30.146599],[120.186185,30.144428],[120.19189,30.147121],[120.197167,30.140759],[120.201375,30.139563],[120.204084,30.141061],[120.205273,30.143026],[120.208054,30.139302],[120.208743,30.137131],[120.211572,30.136375],[120.213307,30.137887],[120.214543,30.136911],[120.219464,30.139948],[120.216944,30.143081],[120.219892,30.150515],[120.221651,30.153758],[120.224598,30.153868],[120.223148,30.156684],[120.226167,30.16016],[120.224979,30.162716],[120.220534,30.162578],[120.216849,30.161314],[120.217943,30.164749],[120.219963,30.16703],[120.220557,30.170519],[120.224384,30.171247],[120.222293,30.173637],[120.222055,30.178885],[120.224646,30.179173],[120.224575,30.181879],[120.233488,30.182044],[120.234202,30.188788],[120.234463,30.21355],[120.234962,30.21366],[120.235224,30.228132],[120.234439,30.229793],[120.231896,30.230177],[120.226524,30.232896],[120.223957,30.2363],[120.221057,30.23766],[120.241665,30.26514],[120.248036,30.272468],[120.252838,30.276091],[120.269786,30.284105],[120.270594,30.284722],[120.278961,30.286822],[120.288136,30.288235],[120.298952,30.287878],[120.3043,30.28604],[120.311004,30.280359],[120.317731,30.27395],[120.320535,30.270218],[120.324149,30.267239],[120.336058,30.255697],[120.340859,30.252595],[120.350676,30.25011],[120.355098,30.250522],[120.364154,30.252801],[120.369027,30.254763],[120.37642,30.259773],[120.389779,30.272756],[120.396149,30.281141],[120.403423,30.293188],[120.408866,30.305413],[120.413739,30.318307],[120.418945,30.326441],[120.419159,30.331077],[120.421108,30.334643],[120.433492,30.36141],[120.438436,30.37268],[120.443262,30.376903],[120.450227,30.380042],[120.460234,30.382688],[120.47616,30.385457],[120.497791,30.388924],[120.510152,30.389144],[120.567866,30.387869],[120.589188,30.388527],[120.619543,30.389007],[120.6339,30.389459],[120.642719,30.388582],[120.659002,30.385594],[120.662686,30.384661],[120.684935,30.379973],[120.69354,30.377835],[120.698199,30.375038],[120.702478,30.369431],[120.70388,30.365853],[120.704546,30.344462],[120.704142,30.330803],[120.705045,30.315605],[120.706043,30.30946],[120.710845,30.297538],[120.71403,30.293353],[120.71926,30.28818],[120.721946,30.286314],[120.705663,30.271412],[120.700529,30.267761],[120.693944,30.262052],[120.679088,30.244249],[120.669033,30.233129],[120.646831,30.21955],[120.642695,30.217257],[120.641911,30.214758],[120.624606,30.187868],[120.612768,30.166288],[120.609179,30.152851],[120.608181,30.15182],[120.601953,30.150735],[120.593491,30.146764],[120.590852,30.146283],[120.585932,30.147272],[120.583864,30.150405],[120.568342,30.151312],[120.563421,30.147946],[120.559808,30.148179],[120.558144,30.151463],[120.550918,30.15564],[120.540411,30.156547],[120.533779,30.157454],[120.529382,30.157522],[120.524889,30.155695],[120.518495,30.155393],[120.51058,30.157536],[120.506158,30.159776],[120.50245,30.165917],[120.4981,30.169187],[120.494891,30.170148],[120.484076,30.172209],[120.483719,30.170423],[120.480867,30.170134],[120.479203,30.168664],[120.47509,30.169818],[120.466153,30.169557],[120.463728,30.162207],[120.465012,30.155489],[120.464394,30.154115],[120.461042,30.153991],[120.459545,30.151546],[120.451177,30.150982],[120.45006,30.145665],[120.447636,30.143576],[120.446923,30.135454],[120.438484,30.133792],[120.429594,30.132445],[120.424008,30.133187],[120.422891,30.13588],[120.424127,30.1408],[120.426076,30.144277],[120.422201,30.146846],[120.423152,30.151065],[120.42194,30.151037],[120.421678,30.148193],[120.419396,30.152851],[120.417923,30.148509],[120.414476,30.148042],[120.414214,30.149114],[120.410887,30.149526],[120.41072,30.146118],[120.411362,30.132623],[120.40927,30.12938],[120.404944,30.129476],[120.405562,30.1361],[120.404231,30.137296],[120.399001,30.136348],[120.397433,30.137832],[120.397813,30.143191],[120.392631,30.146091],[120.390492,30.149347],[120.387806,30.156176],[120.384763,30.157303],[120.381958,30.155352],[120.379201,30.154981],[120.373163,30.155503],[120.36646,30.153881],[120.361872,30.152068],[120.358758,30.147836],[120.355074,30.151133],[120.352031,30.150694],[120.352055,30.146736],[120.353957,30.144222],[120.35341,30.142188],[120.339623,30.142119],[120.339124,30.138464],[120.334299,30.134616],[120.331351,30.129298],[120.327999,30.125202],[120.326217,30.1249],[120.323198,30.126755],[120.318016,30.125999],[120.316542,30.132376],[120.314688,30.136471],[120.31224,30.13742],[120.303397,30.133008],[120.298904,30.129545],[120.29831,30.126549],[120.303754,30.126686],[120.300307,30.118357],[120.295624,30.115457],[120.293651,30.111911],[120.286853,30.10677],[120.28885,30.101161],[120.294483,30.098274],[120.299285,30.097366],[120.304681,30.09969],[120.309482,30.106013],[120.313333,30.107072],[120.31823,30.102893],[120.325408,30.097793],[120.33128,30.09705],[120.333704,30.095483],[120.335677,30.090877],[120.335796,30.081363],[120.333776,30.074845],[120.337579,30.071998],[120.338601,30.070211],[120.337508,30.059333],[120.33437,30.056912],[120.332088,30.053487],[120.327096,30.05108],[120.324957,30.048632],[120.325551,30.044946],[120.33185,30.037903],[120.335582,30.036885],[120.340479,30.0376],[120.343617,30.034918],[120.346279,30.023609],[120.344805,30.021381],[120.345827,30.019716],[120.351271,30.017886],[120.353291,30.016317],[120.356904,30.011694],[120.357284,30.004718],[120.358164,30.00286],[120.362847,29.997741],[120.36085,29.99214],[120.36047,29.988589],[120.362657,29.985506],[120.362276,29.982726],[120.364297,29.978528],[120.362276,29.97433],[120.357213,29.973449],[120.346469,29.973779],[120.342095,29.963758],[120.342333,29.960412],[120.340526,29.956048],[120.333681,29.95189],[120.331517,29.949302],[120.326074,29.946231],[120.325194,29.938548],[120.321676,29.937033],[120.315258,29.928867],[120.313547,29.9276],[120.307058,29.929336],[120.299309,29.932544],[120.297122,29.932654],[120.291345,29.935684],[120.288968,29.932131],[120.287233,29.926815],[120.284167,29.922161],[120.282123,29.921059],[120.277844,29.920742],[120.274373,29.91953],[120.265269,29.924516],[120.264746,29.930961],[120.262298,29.934748],[120.260753,29.938865],[120.258899,29.941206],[120.255215,29.943643],[120.25279,29.941577],[120.250722,29.936703],[120.24573,29.935808],[120.241689,29.939044],[120.239788,29.939567],[120.232038,29.939732],[120.226524,29.940545],[120.224004,29.942073],[120.221009,29.942238],[120.214567,29.939484],[120.207246,29.93377],[120.20185,29.931856],[120.200424,29.92946],[120.204798,29.924061],[120.203157,29.921541],[120.197643,29.917354],[120.190155,29.906914],[120.187184,29.904724],[120.185092,29.904503],[120.180623,29.907368],[120.175822,29.90909],[120.176273,29.91358],[120.172993,29.916238],[120.166313,29.917271],[120.160276,29.909145],[120.159729,29.906211],[120.155046,29.906101],[120.151742,29.908084],[120.150031,29.905054],[120.14946,29.899324],[120.149888,29.895191],[120.148723,29.891637],[120.150268,29.887587],[120.148486,29.881277],[120.144754,29.874112],[120.141188,29.870199],[120.136719,29.866327],[120.133748,29.86284],[120.1313,29.858816],[120.122101,29.852876],[120.118369,29.852229],[120.11226,29.847171],[120.10993,29.845972],[120.104796,29.845531],[120.102466,29.846812],[120.102442,29.849445],[120.104059,29.8534],[120.099566,29.856694],[120.096666,29.862399],[120.088156,29.871232],[120.082095,29.876688],[120.078149,29.884115],[120.077222,29.88822],[120.078268,29.88975],[120.082523,29.891788],[120.084805,29.894585],[120.085827,29.897437],[120.085542,29.906859],[120.081097,29.912933],[120.084448,29.91734],[120.089606,29.916514],[120.092126,29.916955],[120.096975,29.920866],[120.098449,29.924309],[120.097546,29.931126],[120.101325,29.936896],[120.100826,29.938039],[120.091151,29.946851],[120.090676,29.949123],[120.096001,29.952703],[120.101801,29.958499],[120.102965,29.967282],[120.104962,29.973614],[120.104463,29.981377],[120.110239,29.983524],[120.114137,29.987667],[120.118535,29.988272],[120.120294,29.990791],[120.124858,29.993337],[120.126926,29.997768],[120.134105,30.01058],[120.135555,30.021271],[120.136981,30.024806],[120.137171,30.029278],[120.134532,30.043983],[120.131133,30.044327],[120.129873,30.045757],[120.126474,30.045936],[120.124478,30.04833],[120.12569,30.050241],[120.12897,30.052208],[120.130349,30.055509],[120.136386,30.058934],[120.136886,30.061547],[120.134081,30.064999],[120.1371,30.069674],[120.137718,30.072177],[120.135079,30.080689],[120.140808,30.083769],[120.146869,30.088664],[120.150459,30.091455],[120.162011,30.097985],[120.170354,30.101546],[120.177295,30.102604],[120.182168,30.104818],[120.182953,30.10846],[120.181835,30.111457],[120.177723,30.11712],[120.16831,30.121793],[120.160014,30.12637],[120.146132,30.137172]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330110,\"name\":\"余杭区\",\"center\":[120.301737,30.421187],\"centroid\":[119.990852,30.381676],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":7,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.221294,30.387156],[120.216778,30.387896],[120.212998,30.39109],[120.209908,30.392557],[120.19838,30.394174],[120.192485,30.396148],[120.186162,30.38802],[120.183832,30.381618],[120.177699,30.376807],[120.174348,30.371954],[120.173444,30.374942],[120.171828,30.37582],[120.168595,30.3746],[120.171044,30.37401],[120.170782,30.372475],[120.167882,30.371035],[120.159016,30.372543],[120.159254,30.375559],[120.153002,30.375861],[120.152741,30.380686],[120.149175,30.38033],[120.146204,30.377835],[120.146132,30.375683],[120.140736,30.376176],[120.138526,30.378095],[120.139073,30.380316],[120.1342,30.380947],[120.130943,30.383222],[120.129208,30.38203],[120.129279,30.371666],[120.130182,30.362754],[120.131537,30.357708],[120.133843,30.354568],[120.136957,30.343379],[120.129446,30.341144],[120.129446,30.342515],[120.124953,30.339498],[120.123764,30.33644],[120.123265,30.339224],[120.121387,30.337948],[120.114137,30.337262],[120.111737,30.33969],[120.108409,30.339978],[120.1081,30.342803],[120.106127,30.343283],[120.103702,30.3415],[120.097641,30.340581],[120.099019,30.338305],[120.096405,30.335685],[120.091746,30.333395],[120.090011,30.334931],[120.085779,30.331187],[120.081881,30.33563],[120.079742,30.341816],[120.0762,30.345285],[120.074655,30.34774],[120.069449,30.350702],[120.067334,30.355446],[120.06517,30.355309],[120.065361,30.352813],[120.063673,30.352128],[120.060868,30.353348],[120.060607,30.351497],[120.053951,30.351401],[120.050195,30.349865],[120.048674,30.353526],[120.046463,30.353759],[120.046511,30.35221],[120.038595,30.350948],[120.032795,30.351634],[120.029444,30.350016],[120.023881,30.348357],[120.025973,30.34523],[120.025545,30.342474],[120.027185,30.335905],[120.026425,30.333272],[120.01763,30.33238],[120.01782,30.329733],[120.021362,30.329088],[120.023572,30.326743],[120.023406,30.319967],[120.023881,30.316195],[120.020554,30.315674],[120.02179,30.311874],[120.026686,30.310996],[120.026116,30.305948],[120.028493,30.303835],[120.030799,30.299843],[120.042089,30.304096],[120.048008,30.30319],[120.051907,30.299513],[120.053784,30.298772],[120.054807,30.295246],[120.052953,30.293847],[120.051621,30.29054],[120.052263,30.289319],[120.056732,30.2884],[120.05281,30.282897],[120.049815,30.27594],[120.049815,30.274266],[120.052382,30.273237],[120.056494,30.273374],[120.057255,30.268351],[120.05773,30.257289],[120.058515,30.252801],[120.055306,30.251483],[120.055234,30.245388],[120.052691,30.245333],[120.052216,30.243494],[120.046178,30.242725],[120.0443,30.240474],[120.044538,30.238058],[120.041162,30.236122],[120.040639,30.232841],[120.038571,30.233019],[120.032153,30.229697],[120.030894,30.230479],[120.025046,30.228461],[120.016845,30.224823],[120.01889,30.219742],[120.020268,30.217985],[120.018367,30.216447],[120.015443,30.218067],[120.013755,30.2162],[120.010356,30.221184],[120.007123,30.2208],[120.009999,30.215637],[120.015704,30.213426],[120.018034,30.214319],[120.017487,30.211792],[120.013351,30.210254],[120.007171,30.208757],[120.006529,30.205379],[120.009263,30.200202],[120.009096,30.195615],[120.003439,30.191865],[120.0013,30.188006],[119.996332,30.181536],[119.987988,30.174901],[119.980168,30.17405],[119.974296,30.175107],[119.964669,30.172854],[119.963101,30.170464],[119.959274,30.168005],[119.955993,30.168733],[119.951168,30.168307],[119.945392,30.16501],[119.942016,30.160476],[119.938736,30.158704],[119.934338,30.160202],[119.933102,30.163952],[119.932841,30.169626],[119.935265,30.177896],[119.935028,30.178981],[119.929751,30.188129],[119.926613,30.189681],[119.92155,30.190904],[119.914514,30.191824],[119.909166,30.19089],[119.903936,30.187648],[119.901393,30.188843],[119.894975,30.193417],[119.887677,30.18975],[119.880499,30.187703],[119.871656,30.182662],[119.861981,30.180726],[119.85718,30.177951],[119.853472,30.174929],[119.850168,30.181357],[119.84905,30.188074],[119.845413,30.190437],[119.842656,30.191123],[119.839495,30.19387],[119.836095,30.197949],[119.836452,30.199378],[119.84161,30.20667],[119.843132,30.214442],[119.845057,30.217189],[119.844914,30.221047],[119.846412,30.222502],[119.849787,30.223093],[119.853876,30.225276],[119.856657,30.227843],[119.86298,30.237852],[119.86752,30.249795],[119.868304,30.252718],[119.864477,30.256232],[119.865,30.258922],[119.862837,30.260501],[119.863479,30.263218],[119.86569,30.265236],[119.86588,30.268392],[119.867282,30.26938],[119.864976,30.271068],[119.864715,30.273264],[119.859985,30.272825],[119.853686,30.273841],[119.846816,30.270245],[119.844225,30.272194],[119.839471,30.27148],[119.829083,30.268516],[119.828513,30.269216],[119.829273,30.278548],[119.827657,30.282074],[119.827871,30.283789],[119.830438,30.286328],[119.836761,30.289525],[119.837118,30.29382],[119.836286,30.29928],[119.833433,30.307127],[119.83108,30.307745],[119.826302,30.306743],[119.821001,30.304096],[119.808023,30.295342],[119.799893,30.297483],[119.799085,30.30175],[119.802365,30.307868],[119.803554,30.311462],[119.803839,30.316099],[119.80227,30.322614],[119.806549,30.325851],[119.807666,30.328992],[119.807262,30.334437],[119.804647,30.342392],[119.798895,30.344215],[119.795163,30.348988],[119.791764,30.356899],[119.788602,30.35971],[119.78033,30.365647],[119.774578,30.367471],[119.772771,30.3739],[119.771107,30.375998],[119.768825,30.376752],[119.757534,30.378561],[119.749904,30.381399],[119.749262,30.383757],[119.750237,30.385292],[119.753303,30.386553],[119.755585,30.388815],[119.749048,30.392543],[119.744722,30.393804],[119.742321,30.393338],[119.735571,30.395682],[119.726253,30.389624],[119.723258,30.388472],[119.718385,30.390199],[119.704027,30.399684],[119.696445,30.401918],[119.685011,30.406605],[119.681089,30.408729],[119.686033,30.417541],[119.693521,30.424488],[119.696397,30.42668],[119.707284,30.430023],[119.709209,30.434065],[119.707617,30.437422],[119.704764,30.440326],[119.704146,30.443203],[119.699749,30.448587],[119.694923,30.452738],[119.69528,30.4596],[119.694282,30.462942],[119.695375,30.464476],[119.699368,30.465339],[119.701722,30.467996],[119.702577,30.473255],[119.704408,30.476446],[119.708235,30.485156],[119.708877,30.487963],[119.704717,30.494563],[119.708568,30.498287],[119.709186,30.508829],[119.706785,30.515852],[119.706381,30.521423],[119.704883,30.525981],[119.700272,30.531142],[119.694995,30.542351],[119.692404,30.556145],[119.693735,30.558868],[119.701341,30.558307],[119.707118,30.561057],[119.711729,30.566516],[119.716911,30.564806],[119.721617,30.560934],[119.729058,30.551766],[119.743248,30.550165],[119.74843,30.550206],[119.752091,30.551232],[119.768944,30.551355],[119.770846,30.549658],[119.772034,30.546429],[119.770727,30.544048],[119.768588,30.537259],[119.767684,30.524722],[119.766876,30.520835],[119.761813,30.51885],[119.761837,30.517125],[119.766401,30.514072],[119.784062,30.511019],[119.790433,30.506899],[119.794188,30.505625],[119.798277,30.505927],[119.806905,30.507802],[119.815891,30.510663],[119.818363,30.510102],[119.823711,30.507145],[119.829582,30.502969],[119.832459,30.49878],[119.836024,30.496589],[119.841325,30.496384],[119.846032,30.498424],[119.847149,30.50197],[119.848765,30.503188],[119.851118,30.502025],[119.854113,30.493974],[119.860175,30.48621],[119.864763,30.482526],[119.867116,30.477775],[119.869612,30.47698],[119.874128,30.478281],[119.877812,30.477925],[119.880808,30.476213],[119.88038,30.474214],[119.874366,30.471174],[119.872821,30.467065],[119.872607,30.46249],[119.873676,30.460915],[119.877622,30.460038],[119.882115,30.460367],[119.888034,30.458313],[119.891005,30.456135],[119.894571,30.455327],[119.897613,30.456011],[119.90106,30.458874],[119.903033,30.459408],[119.907407,30.456696],[119.909308,30.456326],[119.91487,30.458984],[119.918816,30.4616],[119.92155,30.462531],[119.924925,30.462189],[119.929299,30.459367],[119.931415,30.456463],[119.93151,30.449299],[119.93498,30.446779],[119.939188,30.44619],[119.944179,30.447149],[119.95074,30.444231],[119.952333,30.441861],[119.952737,30.438751],[119.955874,30.433668],[119.959606,30.432339],[119.965026,30.431572],[119.970612,30.432914],[119.973369,30.437751],[119.982973,30.445286],[119.987109,30.446135],[119.990793,30.445272],[120.0037,30.444285],[120.005459,30.443505],[120.008407,30.438669],[120.011901,30.436011],[120.013827,30.4356],[120.027732,30.434832],[120.031108,30.435161],[120.041543,30.43338],[120.044134,30.431969],[120.046107,30.427434],[120.049815,30.427338],[120.057089,30.429242],[120.061938,30.429325],[120.064743,30.430092],[120.062342,30.435572],[120.065907,30.437353],[120.067952,30.441135],[120.068118,30.445943],[120.065075,30.449546],[120.062413,30.451587],[120.059252,30.459011],[120.06025,30.464956],[120.059489,30.473433],[120.060416,30.476145],[120.063839,30.479418],[120.06586,30.483581],[120.066454,30.489496],[120.068284,30.496603],[120.076081,30.495357],[120.08074,30.497151],[120.090034,30.495987],[120.093766,30.496589],[120.099233,30.495795],[120.099804,30.494125],[120.097047,30.489852],[120.096761,30.486758],[120.099542,30.483293],[120.107315,30.481226],[120.111237,30.476186],[120.115136,30.475871],[120.122623,30.479117],[120.129707,30.479897],[120.146013,30.482705],[120.147796,30.48087],[120.146655,30.474666],[120.147083,30.471283],[120.149817,30.467503],[120.160371,30.469914],[120.162463,30.473146],[120.165624,30.474159],[120.169784,30.473981],[120.172945,30.475022],[120.175061,30.47683],[120.173159,30.483266],[120.174419,30.484129],[120.178246,30.481499],[120.180219,30.481787],[120.180005,30.483964],[120.177699,30.486018],[120.177747,30.488606],[120.173801,30.49203],[120.177058,30.493782],[120.179149,30.491947],[120.1859,30.494631],[120.182287,30.496233],[120.182216,30.499629],[120.185092,30.502627],[120.194553,30.503668],[120.197001,30.505092],[120.195812,30.509459],[120.196573,30.512032],[120.200234,30.514921],[120.201755,30.514428],[120.2033,30.507816],[120.205416,30.505858],[120.208268,30.507939],[120.212523,30.509774],[120.220724,30.510253],[120.224598,30.50976],[120.233869,30.506392],[120.239288,30.505242],[120.251934,30.506543],[120.261228,30.505242],[120.2671,30.505817],[120.27744,30.504831],[120.282123,30.508692],[120.285831,30.507802],[120.286853,30.510992],[120.289277,30.513032],[120.296527,30.514798],[120.299808,30.517809],[120.299903,30.519822],[120.311598,30.520739],[120.314593,30.521861],[120.317707,30.521601],[120.319894,30.518494],[120.322295,30.509979],[120.322651,30.506488],[120.326145,30.500437],[120.325765,30.496945],[120.327667,30.491071],[120.327904,30.484197],[120.325789,30.480774],[120.326026,30.478596],[120.328332,30.473584],[120.329188,30.468421],[120.331327,30.468407],[120.335059,30.471352],[120.341382,30.472269],[120.340645,30.466038],[120.337246,30.464312],[120.336866,30.458121],[120.337864,30.451916],[120.339813,30.450149],[120.340978,30.441614],[120.339433,30.440011],[120.340336,30.433887],[120.335939,30.431243],[120.330757,30.427269],[120.332682,30.424666],[120.332967,30.417308],[120.324838,30.411963],[120.32151,30.407715],[120.322057,30.404741],[120.320512,30.40433],[120.31533,30.400657],[120.310481,30.400205],[120.306273,30.39745],[120.306677,30.395092],[120.308936,30.393338],[120.31571,30.394325],[120.318824,30.388801],[120.318372,30.38547],[120.319276,30.379329],[120.324386,30.378493],[120.332635,30.375271],[120.339409,30.373325],[120.342927,30.371611],[120.34433,30.368087],[120.341192,30.36588],[120.335986,30.361068],[120.328261,30.358655],[120.325717,30.353389],[120.316281,30.352539],[120.310766,30.350839],[120.307224,30.350619],[120.300759,30.347575],[120.301567,30.343927],[120.299618,30.341816],[120.296623,30.33596],[120.29358,30.325001],[120.300117,30.324987],[120.300212,30.32127],[120.299475,30.315605],[120.295767,30.314851],[120.291631,30.315331],[120.291964,30.317814],[120.275562,30.319857],[120.272591,30.320516],[120.276251,30.3233],[120.281885,30.328499],[120.279318,30.336686],[120.277868,30.337948],[120.266553,30.331338],[120.268051,30.328663],[120.264437,30.326578],[120.258471,30.334355],[120.260872,30.335452],[120.261466,30.337523],[120.252552,30.337043],[120.248012,30.338853],[120.246015,30.342871],[120.243543,30.344174],[120.236056,30.339786],[120.234772,30.340691],[120.239883,30.344997],[120.242236,30.348261],[120.243947,30.354116],[120.243567,30.358188],[120.244233,30.359902],[120.247109,30.362343],[120.2468,30.363947],[120.239978,30.372146],[120.23482,30.376683],[120.23791,30.380028],[120.240334,30.387622],[120.237577,30.390062],[120.232395,30.392529],[120.228592,30.393544],[120.221294,30.387156]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330111,\"name\":\"富阳区\",\"center\":[119.949869,30.049871],\"centroid\":[119.839625,29.995216],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":8,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[119.996332,30.181536],[119.998994,30.182305],[120.005459,30.182346],[120.011449,30.181852],[120.013494,30.181042],[120.016156,30.177072],[120.014397,30.173816],[120.017772,30.168417],[120.018913,30.165202],[120.018438,30.162963],[120.014825,30.15891],[120.017178,30.153167],[120.016417,30.148935],[120.011663,30.142779],[120.008858,30.136719],[120.008787,30.134204],[120.007004,30.130026],[120.003819,30.12659],[120.001941,30.119567],[120.000468,30.116034],[120.001822,30.114357],[120.01095,30.116254],[120.016417,30.115718],[120.017725,30.113189],[120.016465,30.108323],[120.019151,30.10567],[120.02324,30.10633],[120.025213,30.105519],[120.030442,30.098837],[120.030846,30.094768],[120.036361,30.092555],[120.041258,30.093091],[120.043635,30.092156],[120.044894,30.086368],[120.049125,30.086849],[120.052953,30.091661],[120.054902,30.09272],[120.059513,30.092788],[120.061748,30.091853],[120.067928,30.086794],[120.076747,30.080868],[120.084615,30.078269],[120.091579,30.078475],[120.09795,30.079603],[120.108955,30.08062],[120.115088,30.082229],[120.118131,30.083796],[120.123812,30.089461],[120.124739,30.092953],[120.130349,30.099305],[120.134818,30.097669],[120.146869,30.088664],[120.140808,30.083769],[120.135079,30.080689],[120.137718,30.072177],[120.1371,30.069674],[120.134081,30.064999],[120.136886,30.061547],[120.136386,30.058934],[120.130349,30.055509],[120.12897,30.052208],[120.12569,30.050241],[120.124478,30.04833],[120.126474,30.045936],[120.129873,30.045757],[120.131133,30.044327],[120.134532,30.043983],[120.137171,30.029278],[120.136981,30.024806],[120.135555,30.021271],[120.134105,30.01058],[120.126926,29.997768],[120.124858,29.993337],[120.120294,29.990791],[120.118535,29.988272],[120.114137,29.987667],[120.110239,29.983524],[120.104463,29.981377],[120.104962,29.973614],[120.102965,29.967282],[120.101801,29.958499],[120.096001,29.952703],[120.090676,29.949123],[120.091151,29.946851],[120.100826,29.938039],[120.101325,29.936896],[120.097546,29.931126],[120.098449,29.924309],[120.096975,29.920866],[120.092126,29.916955],[120.089606,29.916514],[120.084448,29.91734],[120.081097,29.912933],[120.085542,29.906859],[120.085827,29.897437],[120.084805,29.894585],[120.082523,29.891788],[120.078268,29.88975],[120.077222,29.88822],[120.078149,29.884115],[120.082095,29.876688],[120.088156,29.871232],[120.096666,29.862399],[120.099566,29.856694],[120.104059,29.8534],[120.102442,29.849445],[120.102466,29.846812],[120.104796,29.845531],[120.10993,29.845972],[120.102015,29.832905],[120.101111,29.830258],[120.102728,29.823972],[120.09871,29.819023],[120.095834,29.816596],[120.091888,29.816679],[120.085328,29.820967],[120.080384,29.826522],[120.077198,29.828149],[120.074275,29.827336],[120.065646,29.822042],[120.061961,29.821628],[120.054355,29.823559],[120.049553,29.823917],[120.038453,29.822828],[120.036076,29.816596],[120.03106,29.810254],[120.030038,29.806283],[120.032296,29.803898],[120.034649,29.799568],[120.036218,29.79346],[120.036622,29.78884],[120.035481,29.787213],[120.030062,29.782758],[120.029776,29.779324],[120.030038,29.770552],[120.02835,29.768938],[120.025522,29.769311],[120.021718,29.767049],[120.020292,29.764855],[120.015229,29.764235],[120.011497,29.761503],[120.011212,29.757324],[120.008977,29.75713],[120.003439,29.75513],[120.000087,29.754909],[119.991958,29.753157],[119.987845,29.754909],[119.986871,29.75673],[119.981214,29.757972],[119.979859,29.759641],[119.978718,29.76589],[119.977078,29.766469],[119.973132,29.765793],[119.968639,29.762897],[119.967165,29.759986],[119.962316,29.75571],[119.960272,29.755144],[119.94765,29.756179],[119.94456,29.755503],[119.93933,29.752675],[119.937024,29.750564],[119.933079,29.749046],[119.927184,29.744438],[119.924949,29.745252],[119.924331,29.748867],[119.923166,29.750357],[119.916416,29.752344],[119.913539,29.755861],[119.907692,29.754523],[119.904364,29.754606],[119.896448,29.761159],[119.892574,29.763117],[119.89053,29.763241],[119.883921,29.763421],[119.878003,29.764966],[119.872654,29.767255],[119.870301,29.769324],[119.866403,29.776552],[119.863313,29.778772],[119.860793,29.781862],[119.860222,29.786564],[119.865761,29.797404],[119.867021,29.801389],[119.868304,29.80245],[119.871822,29.801816],[119.875364,29.802423],[119.881568,29.80587],[119.884896,29.812088],[119.882971,29.819726],[119.882329,29.826729],[119.885371,29.830934],[119.886061,29.83489],[119.889103,29.838639],[119.888889,29.842622],[119.887059,29.845668],[119.885015,29.846137],[119.865642,29.837757],[119.859937,29.837591],[119.852568,29.841216],[119.843892,29.85103],[119.840659,29.855853],[119.836618,29.85945],[119.828537,29.864563],[119.827039,29.867277],[119.82528,29.874691],[119.821786,29.879458],[119.817792,29.880629],[119.813942,29.880229],[119.802841,29.876275],[119.794307,29.874677],[119.787295,29.875131],[119.777502,29.874222],[119.763952,29.871328],[119.756607,29.871949],[119.752186,29.870019],[119.744889,29.868393],[119.74042,29.868931],[119.736688,29.870901],[119.72718,29.8655],[119.712157,29.860291],[119.710731,29.860938],[119.705549,29.867897],[119.702863,29.870419],[119.699915,29.875421],[119.692261,29.880905],[119.685748,29.881993],[119.679045,29.885437],[119.675479,29.888702],[119.675384,29.893607],[119.676311,29.899035],[119.674243,29.905109],[119.675503,29.908842],[119.675146,29.912671],[119.676121,29.916665],[119.675432,29.920012],[119.673744,29.92205],[119.668087,29.92256],[119.66628,29.927876],[119.654228,29.930616],[119.643413,29.92789],[119.637874,29.925342],[119.635426,29.924943],[119.630957,29.926568],[119.626726,29.933054],[119.627677,29.938837],[119.626061,29.942968],[119.619619,29.946039],[119.617432,29.953831],[119.611632,29.95631],[119.611466,29.962587],[119.604192,29.962298],[119.60065,29.964955],[119.599081,29.970874],[119.596324,29.972141],[119.593115,29.972279],[119.587315,29.974068],[119.58218,29.973311],[119.575121,29.977179],[119.568322,29.98157],[119.565375,29.982492],[119.560526,29.981707],[119.557958,29.980427],[119.553395,29.976683],[119.547951,29.975293],[119.540392,29.980124],[119.539204,29.982547],[119.539441,29.985988],[119.541438,29.989649],[119.53937,29.993956],[119.542769,30.002874],[119.542508,30.006727],[119.535258,30.008736],[119.530932,30.012423],[119.52449,30.014831],[119.522541,30.0164],[119.514055,30.015464],[119.508873,30.011777],[119.507161,30.011447],[119.502407,30.017432],[119.500719,30.022454],[119.501385,30.025893],[119.504047,30.031974],[119.506805,30.036335],[119.509063,30.037958],[119.511369,30.041301],[119.510798,30.043845],[119.506424,30.051246],[119.50602,30.054863],[119.50892,30.06416],[119.508635,30.066457],[119.505212,30.070128],[119.502669,30.070967],[119.499816,30.073374],[119.494706,30.072947],[119.490902,30.073924],[119.485459,30.077403],[119.481679,30.079011],[119.47519,30.080043],[119.473217,30.079671],[119.467013,30.074034],[119.465634,30.074061],[119.463043,30.077306],[119.461118,30.083535],[119.459407,30.086945],[119.4576,30.088403],[119.454106,30.088801],[119.446975,30.086629],[119.440081,30.087193],[119.437229,30.089874],[119.436373,30.094411],[119.436944,30.097037],[119.440676,30.0998],[119.446523,30.10314],[119.454201,30.105725],[119.457077,30.107264],[119.459502,30.109794],[119.460785,30.112845],[119.461332,30.118343],[119.460738,30.120185],[119.458028,30.122426],[119.452466,30.123168],[119.447307,30.125655],[119.442577,30.13015],[119.441341,30.135784],[119.443766,30.139082],[119.445834,30.140072],[119.452062,30.139288],[119.455152,30.142215],[119.459502,30.143177],[119.463828,30.145527],[119.468368,30.143205],[119.479754,30.146805],[119.483676,30.141927],[119.486695,30.141982],[119.489785,30.144923],[119.492828,30.142628],[119.498651,30.141212],[119.499412,30.14337],[119.497819,30.146091],[119.503643,30.149086],[119.503429,30.156025],[119.505664,30.158567],[119.520449,30.158938],[119.526201,30.157412],[119.529434,30.158443],[119.530195,30.160147],[119.529315,30.166411],[119.535424,30.183967],[119.539774,30.185698],[119.546549,30.186275],[119.550518,30.189228],[119.556413,30.192346],[119.561595,30.194241],[119.571246,30.196947],[119.574907,30.19615],[119.577521,30.194557],[119.580231,30.191412],[119.582513,30.186852],[119.583226,30.182429],[119.580707,30.167332],[119.582109,30.1649],[119.586126,30.164103],[119.594589,30.159212],[119.605166,30.156698],[119.607948,30.153222],[119.610063,30.146544],[119.610301,30.138505],[119.611727,30.137461],[119.615673,30.137516],[119.61679,30.136238],[119.615934,30.132926],[119.616148,30.126961],[119.619191,30.123195],[119.623375,30.122055],[119.632954,30.122659],[119.64491,30.126961],[119.651733,30.130713],[119.655797,30.130081],[119.65991,30.123498],[119.662239,30.120927],[119.672246,30.116502],[119.673221,30.115581],[119.67498,30.110041],[119.67971,30.105106],[119.687578,30.099896],[119.691049,30.098356],[119.70039,30.09617],[119.701413,30.092087],[119.736165,30.084814],[119.73916,30.085625],[119.741228,30.089901],[119.744698,30.092073],[119.747432,30.091455],[119.751116,30.08733],[119.7553,30.085199],[119.76747,30.082133],[119.770822,30.082091],[119.777573,30.083054],[119.779237,30.08458],[119.780188,30.096363],[119.782113,30.099484],[119.783824,30.100034],[119.78827,30.098521],[119.790005,30.099346],[119.789791,30.105189],[119.791003,30.107361],[119.797136,30.110344],[119.80208,30.111691],[119.802532,30.117807],[119.804671,30.122302],[119.807809,30.124762],[119.81059,30.125807],[119.814512,30.130479],[119.821762,30.132582],[119.826136,30.133365],[119.828584,30.140608],[119.831199,30.14359],[119.829582,30.156464],[119.834455,30.160545],[119.840564,30.166453],[119.853472,30.174929],[119.85718,30.177951],[119.861981,30.180726],[119.871656,30.182662],[119.880499,30.187703],[119.887677,30.18975],[119.894975,30.193417],[119.901393,30.188843],[119.903936,30.187648],[119.909166,30.19089],[119.914514,30.191824],[119.92155,30.190904],[119.926613,30.189681],[119.929751,30.188129],[119.935028,30.178981],[119.935265,30.177896],[119.932841,30.169626],[119.933102,30.163952],[119.934338,30.160202],[119.938736,30.158704],[119.942016,30.160476],[119.945392,30.16501],[119.951168,30.168307],[119.955993,30.168733],[119.959274,30.168005],[119.963101,30.170464],[119.964669,30.172854],[119.974296,30.175107],[119.980168,30.17405],[119.987988,30.174901],[119.996332,30.181536]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330112,\"name\":\"临安区\",\"center\":[119.715101,30.231153],\"centroid\":[119.343878,30.201776],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":9,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[119.236369,29.950968],[119.235537,29.955332],[119.233184,29.957618],[119.228121,29.959614],[119.224769,29.959476],[119.217662,29.956282],[119.210673,29.958127],[119.208534,29.957989],[119.204279,29.961624],[119.197006,29.962436],[119.19363,29.963744],[119.184431,29.965588],[119.178251,29.964859],[119.173734,29.962766],[119.169741,29.964749],[119.161588,29.966318],[119.158616,29.970227],[119.153553,29.969291],[119.14937,29.970737],[119.14956,29.973366],[119.14811,29.974687],[119.142001,29.975637],[119.135512,29.980909],[119.132089,29.981721],[119.12182,29.978652],[119.12037,29.978872],[119.115901,29.98691],[119.113334,29.993447],[119.110196,29.997768],[119.11312,30.001498],[119.114546,30.009506],[119.11205,30.010965],[119.107986,30.011873],[119.097764,30.012616],[119.089896,30.013854],[119.085332,30.012754],[119.081458,30.009933],[119.077013,30.008763],[119.064414,30.008364],[119.058805,30.009217],[119.054051,30.008282],[119.051911,30.007098],[119.046824,30.011158],[119.039883,30.01058],[119.034963,30.013373],[119.031112,30.01845],[119.025122,30.021078],[119.024243,30.022454],[119.031683,30.031066],[119.032015,30.032662],[119.030138,30.035083],[119.026952,30.035],[119.021247,30.032744],[119.016161,30.032662],[119.004751,30.024311],[118.999355,30.021614],[118.988326,30.017996],[118.9864,30.025329],[118.987113,30.027283],[118.9864,30.031424],[118.982454,30.034643],[118.979721,30.032442],[118.975894,30.027943],[118.970664,30.026375],[118.969381,30.023458],[118.966457,30.022137],[118.96263,30.023444],[118.956093,30.021449],[118.95412,30.018766],[118.949199,30.016813],[118.940286,30.010249],[118.93634,30.010951],[118.932703,30.009575],[118.932109,30.008158],[118.927973,30.011584],[118.923789,30.009795],[118.917086,30.013056],[118.913211,30.012382],[118.909313,30.01391],[118.90501,30.012836],[118.898355,30.015547],[118.897404,30.01673],[118.89883,30.018766],[118.902586,30.029057],[118.901516,30.031314],[118.895597,30.032455],[118.892269,30.039017],[118.890582,30.041273],[118.891342,30.043034],[118.897333,30.049623],[118.897356,30.051864],[118.89391,30.054932],[118.88811,30.062372],[118.885067,30.064036],[118.878815,30.064655],[118.875464,30.07204],[118.87506,30.079039],[118.873729,30.081748],[118.872992,30.087028],[118.872611,30.095401],[118.868856,30.101463],[118.869117,30.107402],[118.871637,30.11301],[118.873895,30.115058],[118.878055,30.116735],[118.883855,30.116392],[118.88723,30.11745],[118.888609,30.122357],[118.888656,30.128432],[118.893387,30.133091],[118.895978,30.138794],[118.896952,30.1444],[118.896786,30.148083],[118.895098,30.148495],[118.890938,30.147451],[118.881026,30.146805],[118.874988,30.148193],[118.870543,30.151161],[118.865718,30.151491],[118.862081,30.148894],[118.8564,30.14822],[118.852145,30.149924],[118.846987,30.153881],[118.845703,30.156135],[118.846797,30.161053],[118.84808,30.163046],[118.852858,30.166549],[118.858349,30.168087],[118.864411,30.168994],[118.870282,30.171055],[118.873681,30.172923],[118.884259,30.176811],[118.891628,30.18041],[118.9028,30.183226],[118.904796,30.18655],[118.91081,30.187484],[118.912165,30.1885],[118.915707,30.194392],[118.920651,30.199021],[118.929232,30.201918],[118.92909,30.20667],[118.926142,30.212643],[118.923385,30.214511],[118.919368,30.215225],[118.911452,30.215321],[118.905201,30.216571],[118.90318,30.21793],[118.899876,30.223422],[118.896168,30.234557],[118.893529,30.23976],[118.892531,30.243247],[118.889726,30.24499],[118.882429,30.247475],[118.881549,30.251153],[118.882357,30.252348],[118.888965,30.253775],[118.889441,30.255724],[118.886541,30.260734],[118.885043,30.268379],[118.879861,30.278355],[118.878079,30.282719],[118.877199,30.288071],[118.877508,30.290815],[118.880574,30.294519],[118.881811,30.298512],[118.881549,30.304603],[118.879196,30.312189],[118.879885,30.314878],[118.889607,30.317018],[118.894124,30.319089],[118.899781,30.322587],[118.90841,30.330871],[118.911143,30.332229],[118.917894,30.332449],[118.9226,30.334753],[118.928282,30.339978],[118.933559,30.342131],[118.93634,30.345066],[118.937362,30.348713],[118.936435,30.350811],[118.94977,30.358778],[118.954191,30.360341],[118.955404,30.359189],[118.956592,30.352059],[118.959373,30.347287],[118.964056,30.350578],[118.969048,30.351332],[118.972708,30.347534],[118.975751,30.347164],[118.985735,30.34955],[118.988112,30.348672],[118.988539,30.346547],[118.987755,30.340705],[118.98804,30.333477],[118.989157,30.33238],[118.996312,30.330501],[119.004442,30.328938],[119.007152,30.327717],[119.010598,30.323561],[119.01376,30.321531],[119.018538,30.32042],[119.02158,30.315509],[119.024742,30.313657],[119.028783,30.312587],[119.037197,30.312066],[119.046872,30.313191],[119.048322,30.31267],[119.050414,30.309268],[119.050842,30.30673],[119.052672,30.305221],[119.05676,30.303876],[119.059874,30.303849],[119.062988,30.30496],[119.067077,30.308197],[119.069858,30.312135],[119.0734,30.31588],[119.08267,30.321627],[119.090253,30.324014],[119.0932,30.322957],[119.094959,30.320653],[119.102328,30.31758],[119.105466,30.314631],[119.111028,30.311298],[119.119467,30.310104],[119.125671,30.305371],[119.128499,30.304727],[119.151271,30.304603],[119.154599,30.302833],[119.156739,30.299541],[119.160875,30.298114],[119.163584,30.299664],[119.166294,30.298827],[119.170525,30.295342],[119.173996,30.294711],[119.179629,30.295384],[119.18821,30.291652],[119.19092,30.291954],[119.201046,30.291021],[119.203709,30.296262],[119.204065,30.299349],[119.205682,30.301558],[119.210602,30.299431],[119.212908,30.299239],[119.218019,30.301338],[119.222606,30.299623],[119.224032,30.296564],[119.223747,30.291281],[119.225482,30.288798],[119.229191,30.289662],[119.233731,30.293394],[119.238152,30.301365],[119.243072,30.313287],[119.245925,30.321613],[119.244095,30.324452],[119.239982,30.327031],[119.241575,30.33153],[119.247137,30.340814],[119.248849,30.341541],[119.252747,30.340334],[119.257121,30.337756],[119.261209,30.337249],[119.26506,30.338058],[119.270599,30.342062],[119.272334,30.34257],[119.275757,30.34091],[119.278158,30.341582],[119.289448,30.349646],[119.297507,30.35764],[119.300668,30.363686],[119.31077,30.366387],[119.326554,30.371762],[119.329074,30.371515],[119.336347,30.366264],[119.342647,30.363152],[119.343788,30.360684],[119.344881,30.354143],[119.349445,30.349152],[119.356077,30.349426],[119.368247,30.35295],[119.375616,30.354815],[119.381083,30.35812],[119.386146,30.363906],[119.391875,30.366305],[119.395845,30.36625],[119.399981,30.3678],[119.403047,30.373325],[119.407136,30.373325],[119.418141,30.376108],[119.421113,30.379727],[119.426556,30.383949],[119.430502,30.384058],[119.432784,30.386485],[119.434186,30.390254],[119.435708,30.391501],[119.441032,30.392461],[119.445739,30.399191],[119.448425,30.405235],[119.450231,30.410826],[119.451848,30.412169],[119.455865,30.411991],[119.467013,30.40814],[119.477329,30.40729],[119.483819,30.408318],[119.490403,30.408208],[119.498889,30.406865],[119.506092,30.404673],[119.513151,30.401671],[119.516907,30.402535],[119.522232,30.404673],[119.528626,30.408524],[119.533451,30.409414],[119.535733,30.411662],[119.536446,30.414403],[119.53483,30.420788],[119.535305,30.424049],[119.544386,30.431065],[119.54662,30.434805],[119.551731,30.439765],[119.565922,30.443381],[119.569107,30.44097],[119.571864,30.436915],[119.572839,30.431325],[119.579708,30.424748],[119.5818,30.423625],[119.591665,30.421638],[119.597893,30.422446],[119.602789,30.425886],[119.606569,30.427146],[119.613011,30.426023],[119.618026,30.427324],[119.623018,30.429763],[119.627653,30.433024],[119.633881,30.440217],[119.63709,30.441833],[119.642296,30.440217],[119.645101,30.437764],[119.645671,30.429845],[119.637161,30.428708],[119.632193,30.42716],[119.631052,30.423282],[119.634071,30.414992],[119.635878,30.406249],[119.635973,30.403617],[119.632383,30.399766],[119.640014,30.39793],[119.644411,30.395764],[119.649783,30.395449],[119.658151,30.397464],[119.661859,30.397409],[119.667397,30.399108],[119.677856,30.40618],[119.681089,30.408729],[119.685011,30.406605],[119.696445,30.401918],[119.704027,30.399684],[119.718385,30.390199],[119.723258,30.388472],[119.726253,30.389624],[119.735571,30.395682],[119.742321,30.393338],[119.744722,30.393804],[119.749048,30.392543],[119.755585,30.388815],[119.753303,30.386553],[119.750237,30.385292],[119.749262,30.383757],[119.749904,30.381399],[119.757534,30.378561],[119.768825,30.376752],[119.771107,30.375998],[119.772771,30.3739],[119.774578,30.367471],[119.78033,30.365647],[119.788602,30.35971],[119.791764,30.356899],[119.795163,30.348988],[119.798895,30.344215],[119.804647,30.342392],[119.807262,30.334437],[119.807666,30.328992],[119.806549,30.325851],[119.80227,30.322614],[119.803839,30.316099],[119.803554,30.311462],[119.802365,30.307868],[119.799085,30.30175],[119.799893,30.297483],[119.808023,30.295342],[119.821001,30.304096],[119.826302,30.306743],[119.83108,30.307745],[119.833433,30.307127],[119.836286,30.29928],[119.837118,30.29382],[119.836761,30.289525],[119.830438,30.286328],[119.827871,30.283789],[119.827657,30.282074],[119.829273,30.278548],[119.828513,30.269216],[119.829083,30.268516],[119.839471,30.27148],[119.844225,30.272194],[119.846816,30.270245],[119.853686,30.273841],[119.859985,30.272825],[119.864715,30.273264],[119.864976,30.271068],[119.867282,30.26938],[119.86588,30.268392],[119.86569,30.265236],[119.863479,30.263218],[119.862837,30.260501],[119.865,30.258922],[119.864477,30.256232],[119.868304,30.252718],[119.86752,30.249795],[119.86298,30.237852],[119.856657,30.227843],[119.853876,30.225276],[119.849787,30.223093],[119.846412,30.222502],[119.844914,30.221047],[119.845057,30.217189],[119.843132,30.214442],[119.84161,30.20667],[119.836452,30.199378],[119.836095,30.197949],[119.839495,30.19387],[119.842656,30.191123],[119.845413,30.190437],[119.84905,30.188074],[119.850168,30.181357],[119.853472,30.174929],[119.840564,30.166453],[119.834455,30.160545],[119.829582,30.156464],[119.831199,30.14359],[119.828584,30.140608],[119.826136,30.133365],[119.821762,30.132582],[119.814512,30.130479],[119.81059,30.125807],[119.807809,30.124762],[119.804671,30.122302],[119.802532,30.117807],[119.80208,30.111691],[119.797136,30.110344],[119.791003,30.107361],[119.789791,30.105189],[119.790005,30.099346],[119.78827,30.098521],[119.783824,30.100034],[119.782113,30.099484],[119.780188,30.096363],[119.779237,30.08458],[119.777573,30.083054],[119.770822,30.082091],[119.76747,30.082133],[119.7553,30.085199],[119.751116,30.08733],[119.747432,30.091455],[119.744698,30.092073],[119.741228,30.089901],[119.73916,30.085625],[119.736165,30.084814],[119.701413,30.092087],[119.70039,30.09617],[119.691049,30.098356],[119.687578,30.099896],[119.67971,30.105106],[119.67498,30.110041],[119.673221,30.115581],[119.672246,30.116502],[119.662239,30.120927],[119.65991,30.123498],[119.655797,30.130081],[119.651733,30.130713],[119.64491,30.126961],[119.632954,30.122659],[119.623375,30.122055],[119.619191,30.123195],[119.616148,30.126961],[119.615934,30.132926],[119.61679,30.136238],[119.615673,30.137516],[119.611727,30.137461],[119.610301,30.138505],[119.610063,30.146544],[119.607948,30.153222],[119.605166,30.156698],[119.594589,30.159212],[119.586126,30.164103],[119.582109,30.1649],[119.580707,30.167332],[119.583226,30.182429],[119.582513,30.186852],[119.580231,30.191412],[119.577521,30.194557],[119.574907,30.19615],[119.571246,30.196947],[119.561595,30.194241],[119.556413,30.192346],[119.550518,30.189228],[119.546549,30.186275],[119.539774,30.185698],[119.535424,30.183967],[119.529315,30.166411],[119.530195,30.160147],[119.529434,30.158443],[119.526201,30.157412],[119.520449,30.158938],[119.505664,30.158567],[119.503429,30.156025],[119.503643,30.149086],[119.497819,30.146091],[119.499412,30.14337],[119.498651,30.141212],[119.492828,30.142628],[119.489785,30.144923],[119.486695,30.141982],[119.483676,30.141927],[119.479754,30.146805],[119.468368,30.143205],[119.463828,30.145527],[119.459502,30.143177],[119.455152,30.142215],[119.452062,30.139288],[119.445834,30.140072],[119.443766,30.139082],[119.441341,30.135784],[119.442577,30.13015],[119.447307,30.125655],[119.452466,30.123168],[119.458028,30.122426],[119.460738,30.120185],[119.461332,30.118343],[119.460785,30.112845],[119.459502,30.109794],[119.457077,30.107264],[119.454201,30.105725],[119.446523,30.10314],[119.440676,30.0998],[119.436944,30.097037],[119.436373,30.094411],[119.437229,30.089874],[119.440081,30.087193],[119.43623,30.086038],[119.431785,30.082559],[119.429741,30.079314],[119.430597,30.074542],[119.433164,30.071531],[119.434044,30.068877],[119.43257,30.067405],[119.42299,30.06537],[119.420399,30.063514],[119.420304,30.062083],[119.427673,30.057173],[119.430169,30.053116],[119.430502,30.050021],[119.433497,30.044588],[119.433117,30.040407],[119.431476,30.037559],[119.430763,30.032813],[119.431096,30.029773],[119.430335,30.024683],[119.432308,30.015423],[119.433568,30.013166],[119.426603,30.000548],[119.426485,29.994741],[119.425058,29.991589],[119.420542,29.991837],[119.412817,29.99525],[119.405353,29.997245],[119.397176,29.995608],[119.38926,29.993186],[119.386978,29.989428],[119.381582,29.991438],[119.36858,29.998828],[119.358287,30.002268],[119.345071,30.004264],[119.338915,30.007195],[119.334374,30.007814],[119.321752,29.999805],[119.318543,29.996034],[119.314098,29.997493],[119.309487,29.993805],[119.30547,29.994204],[119.297958,30.001223],[119.29734,30.003342],[119.299384,30.007222],[119.296532,30.011103],[119.29444,30.012726],[119.290494,30.013744],[119.282603,30.009933],[119.278514,30.005571],[119.274901,30.002736],[119.270456,30.001016],[119.268364,30.001897],[119.265274,30.005557],[119.263135,30.005007],[119.260876,30.002846],[119.256217,30.000108],[119.250346,29.999599],[119.248373,29.998718],[119.246472,29.992291],[119.247922,29.98852],[119.253769,29.983964],[119.255148,29.981212],[119.252961,29.975775],[119.253817,29.968025],[119.255433,29.962078],[119.259569,29.95547],[119.259403,29.951395],[119.258048,29.9463],[119.258214,29.943794],[119.259854,29.940572],[119.25762,29.936799],[119.25472,29.935188],[119.24747,29.934376],[119.24476,29.935491],[119.241171,29.940641],[119.240434,29.943588],[119.237819,29.946906],[119.236369,29.950968]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330122,\"name\":\"桐庐县\",\"center\":[119.685045,29.797437],\"centroid\":[119.553936,29.830649],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":10,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[119.440081,30.087193],[119.446975,30.086629],[119.454106,30.088801],[119.4576,30.088403],[119.459407,30.086945],[119.461118,30.083535],[119.463043,30.077306],[119.465634,30.074061],[119.467013,30.074034],[119.473217,30.079671],[119.47519,30.080043],[119.481679,30.079011],[119.485459,30.077403],[119.490902,30.073924],[119.494706,30.072947],[119.499816,30.073374],[119.502669,30.070967],[119.505212,30.070128],[119.508635,30.066457],[119.50892,30.06416],[119.50602,30.054863],[119.506424,30.051246],[119.510798,30.043845],[119.511369,30.041301],[119.509063,30.037958],[119.506805,30.036335],[119.504047,30.031974],[119.501385,30.025893],[119.500719,30.022454],[119.502407,30.017432],[119.507161,30.011447],[119.508873,30.011777],[119.514055,30.015464],[119.522541,30.0164],[119.52449,30.014831],[119.530932,30.012423],[119.535258,30.008736],[119.542508,30.006727],[119.542769,30.002874],[119.53937,29.993956],[119.541438,29.989649],[119.539441,29.985988],[119.539204,29.982547],[119.540392,29.980124],[119.547951,29.975293],[119.553395,29.976683],[119.557958,29.980427],[119.560526,29.981707],[119.565375,29.982492],[119.568322,29.98157],[119.575121,29.977179],[119.58218,29.973311],[119.587315,29.974068],[119.593115,29.972279],[119.596324,29.972141],[119.599081,29.970874],[119.60065,29.964955],[119.604192,29.962298],[119.611466,29.962587],[119.611632,29.95631],[119.617432,29.953831],[119.619619,29.946039],[119.626061,29.942968],[119.627677,29.938837],[119.626726,29.933054],[119.630957,29.926568],[119.635426,29.924943],[119.637874,29.925342],[119.643413,29.92789],[119.654228,29.930616],[119.66628,29.927876],[119.668087,29.92256],[119.673744,29.92205],[119.675432,29.920012],[119.676121,29.916665],[119.675146,29.912671],[119.675503,29.908842],[119.674243,29.905109],[119.676311,29.899035],[119.675384,29.893607],[119.675479,29.888702],[119.679045,29.885437],[119.685748,29.881993],[119.692261,29.880905],[119.699915,29.875421],[119.702863,29.870419],[119.705549,29.867897],[119.710731,29.860938],[119.712157,29.860291],[119.72718,29.8655],[119.736688,29.870901],[119.74042,29.868931],[119.744889,29.868393],[119.752186,29.870019],[119.756607,29.871949],[119.763952,29.871328],[119.777502,29.874222],[119.787295,29.875131],[119.794307,29.874677],[119.802841,29.876275],[119.813942,29.880229],[119.817792,29.880629],[119.821786,29.879458],[119.82528,29.874691],[119.827039,29.867277],[119.828537,29.864563],[119.836618,29.85945],[119.840659,29.855853],[119.843892,29.85103],[119.852568,29.841216],[119.859937,29.837591],[119.865642,29.837757],[119.885015,29.846137],[119.887059,29.845668],[119.888889,29.842622],[119.889103,29.838639],[119.886061,29.83489],[119.885371,29.830934],[119.882329,29.826729],[119.882971,29.819726],[119.884896,29.812088],[119.881568,29.80587],[119.875364,29.802423],[119.871822,29.801816],[119.868304,29.80245],[119.867021,29.801389],[119.865761,29.797404],[119.860222,29.786564],[119.860793,29.781862],[119.863313,29.778772],[119.866403,29.776552],[119.870301,29.769324],[119.872654,29.767255],[119.878003,29.764966],[119.883921,29.763421],[119.89053,29.763241],[119.890221,29.758496],[119.888794,29.755972],[119.88908,29.753102],[119.890981,29.750426],[119.894476,29.748757],[119.900466,29.744645],[119.898612,29.740617],[119.901393,29.728612],[119.905648,29.72766],[119.911376,29.722582],[119.91247,29.720402],[119.911376,29.715944],[119.91178,29.71364],[119.915584,29.707967],[119.914252,29.705524],[119.919529,29.699562],[119.922525,29.697753],[119.928657,29.698858],[119.931676,29.696691],[119.933768,29.698582],[119.930084,29.701936],[119.930226,29.704503],[119.933578,29.706739],[119.937761,29.70747],[119.941517,29.705234],[119.94494,29.704903],[119.948149,29.703068],[119.951287,29.699299],[119.957942,29.698416],[119.960129,29.696967],[119.967403,29.694896],[119.973441,29.689941],[119.973797,29.678648],[119.973155,29.673098],[119.970778,29.670765],[119.966832,29.670958],[119.959083,29.672822],[119.948862,29.668017],[119.945653,29.667368],[119.940733,29.667506],[119.936169,29.666526],[119.924806,29.669895],[119.92281,29.668487],[119.921265,29.664027],[119.918246,29.664386],[119.914514,29.66625],[119.911709,29.666498],[119.908595,29.663074],[119.902344,29.661403],[119.895712,29.660644],[119.887178,29.662039],[119.883494,29.663433],[119.879286,29.667934],[119.875816,29.668984],[119.873058,29.668666],[119.869992,29.66995],[119.863384,29.669481],[119.859533,29.671345],[119.856538,29.671027],[119.852521,29.668887],[119.842157,29.675556],[119.837664,29.676453],[119.835454,29.678124],[119.836904,29.68076],[119.835359,29.682251],[119.824472,29.671856],[119.821738,29.671193],[119.817602,29.673057],[119.814132,29.671359],[119.810709,29.667493],[119.809972,29.665201],[119.805313,29.664952],[119.802484,29.663254],[119.79918,29.660078],[119.798253,29.656929],[119.796351,29.655687],[119.793214,29.656101],[119.79117,29.654969],[119.788151,29.645205],[119.781067,29.638618],[119.777525,29.628645],[119.776527,29.62685],[119.776218,29.620233],[119.779831,29.613285],[119.780069,29.609458],[119.779308,29.604001],[119.774364,29.599179],[119.76728,29.597659],[119.765307,29.596402],[119.762312,29.597811],[119.757843,29.598447],[119.750142,29.602978],[119.746434,29.606419],[119.742393,29.609195],[119.731126,29.613547],[119.728368,29.613506],[119.723899,29.610535],[119.718575,29.610439],[119.717315,29.608781],[119.715247,29.601804],[119.709376,29.595863],[119.708282,29.589673],[119.704075,29.587641],[119.701318,29.58959],[119.698322,29.593721],[119.695256,29.596719],[119.692998,29.602633],[119.695375,29.616034],[119.694876,29.619985],[119.693307,29.620965],[119.688363,29.62109],[119.679663,29.62685],[119.678593,29.634018],[119.676192,29.636325],[119.673031,29.636905],[119.670226,29.640979],[119.672104,29.648658],[119.674505,29.653809],[119.670844,29.657137],[119.667968,29.657316],[119.665305,29.653836],[119.658792,29.652013],[119.651043,29.651641],[119.64705,29.65229],[119.643579,29.653961],[119.636733,29.652939],[119.634689,29.653243],[119.62946,29.656239],[119.621972,29.65472],[119.616148,29.656805],[119.617479,29.662757],[119.616909,29.664648],[119.613581,29.669757],[119.612749,29.673029],[119.614128,29.684999],[119.610776,29.688229],[119.610895,29.695227],[119.602528,29.700859],[119.604144,29.708837],[119.603978,29.713419],[119.601815,29.716055],[119.596229,29.717352],[119.593448,29.723203],[119.59176,29.724818],[119.583726,29.729385],[119.581895,29.73111],[119.578306,29.738299],[119.577212,29.741569],[119.574099,29.745197],[119.571698,29.749847],[119.569131,29.751695],[119.560431,29.752316],[119.549472,29.749916],[119.544695,29.747432],[119.543696,29.746122],[119.540511,29.737319],[119.537064,29.736933],[119.531954,29.733925],[119.528269,29.733897],[119.522969,29.731013],[119.520187,29.728792],[119.50835,29.725273],[119.504879,29.722872],[119.50022,29.722679],[119.493802,29.721285],[119.492376,29.722334],[119.484556,29.731262],[119.478019,29.732338],[119.476379,29.733373],[119.472932,29.739361],[119.465753,29.741693],[119.458955,29.744935],[119.454938,29.741983],[119.451206,29.741555],[119.447094,29.743183],[119.44203,29.741651],[119.439867,29.742231],[119.434519,29.748384],[119.425938,29.753171],[119.425439,29.75582],[119.42261,29.758469],[119.417547,29.757048],[119.415431,29.750233],[119.411343,29.745266],[119.407088,29.7431],[119.398792,29.744328],[119.393563,29.748301],[119.392374,29.750357],[119.394323,29.759807],[119.391495,29.7624],[119.390924,29.764979],[119.388357,29.769628],[119.383579,29.770952],[119.380489,29.766993],[119.374142,29.760662],[119.373405,29.758758],[119.373857,29.754978],[119.370624,29.752688],[119.365823,29.750398],[119.36423,29.746397],[119.360332,29.741638],[119.358074,29.737968],[119.355768,29.73231],[119.354056,29.730185],[119.354508,29.725825],[119.352915,29.722334],[119.350015,29.719643],[119.34828,29.715116],[119.344168,29.717435],[119.341434,29.717366],[119.334184,29.714992],[119.327933,29.714316],[119.32218,29.716248],[119.31745,29.717173],[119.316547,29.719808],[119.31707,29.723617],[119.314431,29.724983],[119.308893,29.724721],[119.302451,29.725715],[119.298529,29.724831],[119.291184,29.725356],[119.287547,29.728198],[119.286881,29.730917],[119.28807,29.737954],[119.290233,29.740575],[119.292016,29.746218],[119.293299,29.760607],[119.294369,29.764028],[119.293989,29.768373],[119.294892,29.771766],[119.294369,29.775379],[119.286002,29.781793],[119.28246,29.786151],[119.273118,29.791612],[119.270765,29.795404],[119.272334,29.799624],[119.278609,29.804739],[119.279417,29.807938],[119.278823,29.813329],[119.27502,29.818527],[119.273903,29.828135],[119.274402,29.830175],[119.272215,29.83267],[119.267675,29.833759],[119.26594,29.833043],[119.257739,29.823503],[119.255409,29.821808],[119.251297,29.822235],[119.247209,29.824317],[119.241718,29.828397],[119.239079,29.831568],[119.233564,29.831568],[119.225506,29.834283],[119.222036,29.839177],[119.219017,29.839645],[119.213478,29.836213],[119.204232,29.833718],[119.196221,29.837123],[119.193939,29.83868],[119.189946,29.846495],[119.182933,29.852243],[119.182482,29.860497],[119.185382,29.865706],[119.188329,29.86776],[119.191419,29.873189],[119.191348,29.878741],[119.194581,29.884115],[119.198669,29.889612],[119.205705,29.896582],[119.207726,29.897271],[119.213692,29.896155],[119.219088,29.896541],[119.222368,29.897561],[119.225934,29.900302],[119.227669,29.902588],[119.228644,29.910605],[119.226766,29.912451],[119.227717,29.91617],[119.221703,29.917905],[119.218613,29.922298],[119.218328,29.927559],[119.222036,29.932916],[119.220277,29.936083],[119.216925,29.936662],[119.21141,29.935932],[119.208106,29.93629],[119.204113,29.937901],[119.197338,29.935119],[119.190968,29.936965],[119.18802,29.936689],[119.181127,29.941701],[119.180865,29.945144],[119.183242,29.949026],[119.190136,29.952042],[119.194462,29.953033],[119.205254,29.949192],[119.212076,29.946452],[119.217234,29.945529],[119.223509,29.946094],[119.226956,29.947787],[119.23114,29.951339],[119.236369,29.950968],[119.237819,29.946906],[119.240434,29.943588],[119.241171,29.940641],[119.24476,29.935491],[119.24747,29.934376],[119.25472,29.935188],[119.25762,29.936799],[119.259854,29.940572],[119.258214,29.943794],[119.258048,29.9463],[119.259403,29.951395],[119.259569,29.95547],[119.255433,29.962078],[119.253817,29.968025],[119.252961,29.975775],[119.255148,29.981212],[119.253769,29.983964],[119.247922,29.98852],[119.246472,29.992291],[119.248373,29.998718],[119.250346,29.999599],[119.256217,30.000108],[119.260876,30.002846],[119.263135,30.005007],[119.265274,30.005557],[119.268364,30.001897],[119.270456,30.001016],[119.274901,30.002736],[119.278514,30.005571],[119.282603,30.009933],[119.290494,30.013744],[119.29444,30.012726],[119.296532,30.011103],[119.299384,30.007222],[119.29734,30.003342],[119.297958,30.001223],[119.30547,29.994204],[119.309487,29.993805],[119.314098,29.997493],[119.318543,29.996034],[119.321752,29.999805],[119.334374,30.007814],[119.338915,30.007195],[119.345071,30.004264],[119.358287,30.002268],[119.36858,29.998828],[119.381582,29.991438],[119.386978,29.989428],[119.38926,29.993186],[119.397176,29.995608],[119.405353,29.997245],[119.412817,29.99525],[119.420542,29.991837],[119.425058,29.991589],[119.426485,29.994741],[119.426603,30.000548],[119.433568,30.013166],[119.432308,30.015423],[119.430335,30.024683],[119.431096,30.029773],[119.430763,30.032813],[119.431476,30.037559],[119.433117,30.040407],[119.433497,30.044588],[119.430502,30.050021],[119.430169,30.053116],[119.427673,30.057173],[119.420304,30.062083],[119.420399,30.063514],[119.42299,30.06537],[119.43257,30.067405],[119.434044,30.068877],[119.433164,30.071531],[119.430597,30.074542],[119.429741,30.079314],[119.431785,30.082559],[119.43623,30.086038],[119.440081,30.087193]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330127,\"name\":\"淳安县\",\"center\":[119.044276,29.604177],\"centroid\":[118.889354,29.608818],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":11,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[118.897404,30.01673],[118.898355,30.015547],[118.90501,30.012836],[118.909313,30.01391],[118.913211,30.012382],[118.917086,30.013056],[118.923789,30.009795],[118.927973,30.011584],[118.932109,30.008158],[118.932703,30.009575],[118.93634,30.010951],[118.940286,30.010249],[118.949199,30.016813],[118.95412,30.018766],[118.956093,30.021449],[118.96263,30.023444],[118.966457,30.022137],[118.969381,30.023458],[118.970664,30.026375],[118.975894,30.027943],[118.979721,30.032442],[118.982454,30.034643],[118.9864,30.031424],[118.987113,30.027283],[118.9864,30.025329],[118.988326,30.017996],[118.999355,30.021614],[119.004751,30.024311],[119.016161,30.032662],[119.021247,30.032744],[119.026952,30.035],[119.030138,30.035083],[119.032015,30.032662],[119.031683,30.031066],[119.024243,30.022454],[119.025122,30.021078],[119.031112,30.01845],[119.034963,30.013373],[119.039883,30.01058],[119.046824,30.011158],[119.051911,30.007098],[119.054051,30.008282],[119.058805,30.009217],[119.064414,30.008364],[119.077013,30.008763],[119.081458,30.009933],[119.085332,30.012754],[119.089896,30.013854],[119.097764,30.012616],[119.107986,30.011873],[119.11205,30.010965],[119.114546,30.009506],[119.11312,30.001498],[119.110196,29.997768],[119.113334,29.993447],[119.115901,29.98691],[119.12037,29.978872],[119.12182,29.978652],[119.132089,29.981721],[119.135512,29.980909],[119.142001,29.975637],[119.14811,29.974687],[119.14956,29.973366],[119.14937,29.970737],[119.153553,29.969291],[119.158616,29.970227],[119.161588,29.966318],[119.169741,29.964749],[119.173734,29.962766],[119.178251,29.964859],[119.184431,29.965588],[119.19363,29.963744],[119.197006,29.962436],[119.204279,29.961624],[119.208534,29.957989],[119.210673,29.958127],[119.217662,29.956282],[119.224769,29.959476],[119.228121,29.959614],[119.233184,29.957618],[119.235537,29.955332],[119.236369,29.950968],[119.23114,29.951339],[119.226956,29.947787],[119.223509,29.946094],[119.217234,29.945529],[119.212076,29.946452],[119.205254,29.949192],[119.194462,29.953033],[119.190136,29.952042],[119.183242,29.949026],[119.180865,29.945144],[119.181127,29.941701],[119.18802,29.936689],[119.190968,29.936965],[119.197338,29.935119],[119.204113,29.937901],[119.208106,29.93629],[119.21141,29.935932],[119.216925,29.936662],[119.220277,29.936083],[119.222036,29.932916],[119.218328,29.927559],[119.218613,29.922298],[119.221703,29.917905],[119.227717,29.91617],[119.226766,29.912451],[119.228644,29.910605],[119.227669,29.902588],[119.225934,29.900302],[119.222368,29.897561],[119.219088,29.896541],[119.213692,29.896155],[119.207726,29.897271],[119.205705,29.896582],[119.198669,29.889612],[119.194581,29.884115],[119.191348,29.878741],[119.191419,29.873189],[119.188329,29.86776],[119.185382,29.865706],[119.182482,29.860497],[119.182933,29.852243],[119.189946,29.846495],[119.193939,29.83868],[119.196221,29.837123],[119.204232,29.833718],[119.213478,29.836213],[119.219017,29.839645],[119.222036,29.839177],[119.225506,29.834283],[119.233564,29.831568],[119.239079,29.831568],[119.241718,29.828397],[119.247209,29.824317],[119.251297,29.822235],[119.255409,29.821808],[119.257739,29.823503],[119.26594,29.833043],[119.267675,29.833759],[119.272215,29.83267],[119.274402,29.830175],[119.273903,29.828135],[119.27502,29.818527],[119.278823,29.813329],[119.279417,29.807938],[119.278609,29.804739],[119.272334,29.799624],[119.270765,29.795404],[119.273118,29.791612],[119.28246,29.786151],[119.286002,29.781793],[119.294369,29.775379],[119.294892,29.771766],[119.293989,29.768373],[119.294369,29.764028],[119.293299,29.760607],[119.292016,29.746218],[119.290233,29.740575],[119.28807,29.737954],[119.286881,29.730917],[119.287547,29.728198],[119.291184,29.725356],[119.298529,29.724831],[119.302451,29.725715],[119.308893,29.724721],[119.314431,29.724983],[119.31707,29.723617],[119.316547,29.719808],[119.31745,29.717173],[119.32218,29.716248],[119.327933,29.714316],[119.334184,29.714992],[119.341434,29.717366],[119.344168,29.717435],[119.34828,29.715116],[119.345642,29.711224],[119.336942,29.702336],[119.33504,29.701715],[119.332924,29.702791],[119.330619,29.702115],[119.329763,29.699769],[119.323297,29.693171],[119.321657,29.688422],[119.320588,29.6792],[119.31852,29.676964],[119.315548,29.670309],[119.314621,29.669453],[119.309035,29.668017],[119.30673,29.661776],[119.306706,29.654154],[119.305517,29.651392],[119.303259,29.649735],[119.299194,29.649113],[119.293085,29.65066],[119.286572,29.647401],[119.277777,29.640758],[119.276969,29.63812],[119.274853,29.636228],[119.267508,29.633093],[119.263824,29.630745],[119.257382,29.628866],[119.254292,29.626629],[119.252913,29.623314],[119.251654,29.61747],[119.248849,29.614887],[119.251249,29.610826],[119.248231,29.605617],[119.246971,29.599483],[119.247304,29.59759],[119.243025,29.590087],[119.234967,29.582086],[119.237582,29.581202],[119.241955,29.577706],[119.243072,29.575246],[119.243667,29.56951],[119.24602,29.567893],[119.254078,29.566152],[119.255837,29.564784],[119.264371,29.564825],[119.274996,29.569856],[119.278229,29.572896],[119.282626,29.572896],[119.284457,29.571625],[119.285954,29.568474],[119.282531,29.565544],[119.279441,29.56148],[119.274449,29.560969],[119.268222,29.561895],[119.26613,29.559324],[119.267675,29.548832],[119.265702,29.546704],[119.249562,29.535851],[119.241575,29.533045],[119.230569,29.523961],[119.2295,29.522246],[119.230997,29.51955],[119.2295,29.517877],[119.226552,29.516964],[119.223795,29.519965],[119.216878,29.524279],[119.215499,29.526464],[119.210388,29.529409],[119.206276,29.529063],[119.202092,29.527252],[119.199145,29.524846],[119.199929,29.52226],[119.202401,29.51991],[119.204042,29.516632],[119.20542,29.510382],[119.206656,29.508142],[119.205919,29.504989],[119.201546,29.501739],[119.198646,29.495211],[119.193559,29.49149],[119.191705,29.483703],[119.192941,29.470796],[119.192608,29.465581],[119.190897,29.462606],[119.185929,29.460434],[119.179083,29.453931],[119.172023,29.454927],[119.167316,29.453668],[119.159139,29.452202],[119.156192,29.450721],[119.146303,29.447829],[119.141335,29.447373],[119.138459,29.449393],[119.132255,29.448549],[119.126883,29.450334],[119.122248,29.445975],[119.11728,29.445588],[119.114784,29.44639],[119.110719,29.443982],[119.106583,29.440025],[119.101948,29.436468],[119.099595,29.431085],[119.102399,29.426213],[119.102281,29.423002],[119.098881,29.417673],[119.096504,29.416358],[119.083597,29.414116],[119.078154,29.414462],[119.070428,29.413825],[119.067196,29.412552],[119.061633,29.408122],[119.059328,29.405603],[119.057878,29.402045],[119.057236,29.398086],[119.055405,29.395497],[119.052767,29.394459],[119.050865,29.391482],[119.04806,29.389987],[119.044637,29.386595],[119.039717,29.385889],[119.034725,29.382787],[119.030518,29.376404],[119.016874,29.372],[119.01124,29.368428],[119.007556,29.367444],[119.003206,29.368289],[118.99453,29.368372],[118.990607,29.365436],[118.98621,29.360146],[118.984308,29.358872],[118.98148,29.359218],[118.976036,29.364813],[118.972209,29.364689],[118.967431,29.362431],[118.962368,29.363899],[118.959611,29.362985],[118.958375,29.360922],[118.9574,29.355756],[118.95576,29.353637],[118.946704,29.349759],[118.94214,29.348374],[118.936102,29.345673],[118.92909,29.341808],[118.923195,29.342196],[118.919391,29.341614],[118.91314,29.336627],[118.908219,29.336156],[118.900446,29.332652],[118.893054,29.3288],[118.890629,29.324049],[118.886327,29.322372],[118.87834,29.326556],[118.873206,29.324492],[118.869545,29.322317],[118.863222,29.317495],[118.860679,29.314974],[118.857161,29.309182],[118.855734,29.303335],[118.849412,29.298346],[118.842684,29.297487],[118.838786,29.293191],[118.835078,29.290488],[118.828755,29.287453],[118.828636,29.285042],[118.826544,29.280288],[118.824476,29.279484],[118.819699,29.280343],[118.816894,29.281716],[118.812377,29.280801],[118.809525,29.278278],[118.80073,29.272942],[118.793622,29.267952],[118.786373,29.266732],[118.78478,29.259108],[118.781832,29.258068],[118.778267,29.252564],[118.77501,29.251011],[118.768188,29.251912],[118.766382,29.251164],[118.763886,29.248294],[118.762412,29.240322],[118.766691,29.235621],[118.767261,29.234137],[118.766239,29.229256],[118.767,29.223058],[118.765431,29.220589],[118.759298,29.218065],[118.757349,29.215985],[118.753023,29.213863],[118.743752,29.213655],[118.734173,29.207427],[118.73258,29.205416],[118.731701,29.201519],[118.72949,29.199674],[118.723333,29.198911],[118.718651,29.192807],[118.715442,29.189867],[118.708834,29.188757],[118.70137,29.192169],[118.693882,29.196955],[118.688748,29.20095],[118.684612,29.202531],[118.676577,29.200659],[118.670159,29.200506],[118.655374,29.196886],[118.651904,29.196414],[118.638307,29.192169],[118.628894,29.19235],[118.62685,29.195665],[118.628205,29.199063],[118.631984,29.202004],[118.633672,29.205624],[118.632317,29.214168],[118.631841,29.219618],[118.628109,29.220229],[118.624377,29.218883],[118.620123,29.219272],[118.618863,29.220714],[118.616486,29.226316],[118.613847,29.229464],[118.613063,29.231919],[118.607786,29.238228],[118.607596,29.239711],[118.614632,29.246325],[118.615464,29.250762],[118.611423,29.25768],[118.610091,29.262324],[118.606669,29.267134],[118.606669,29.268492],[118.609854,29.273108],[118.609497,29.277003],[118.610614,29.27947],[118.615511,29.278971],[118.619196,29.276809],[118.621145,29.278084],[118.623997,29.272346],[118.630582,29.265207],[118.634908,29.261852],[118.636928,29.263627],[118.636382,29.267078],[118.634147,29.27297],[118.629916,29.279886],[118.62452,29.284238],[118.619124,29.292928],[118.614394,29.296586],[118.617223,29.303127],[118.6138,29.307311],[118.604814,29.314614],[118.603483,29.316442],[118.60384,29.323564],[118.60094,29.327789],[118.596043,29.330823],[118.594593,29.330698],[118.589031,29.327872],[118.587533,29.328496],[118.587129,29.332056],[118.584253,29.333663],[118.579856,29.332153],[118.575149,29.336558],[118.571679,29.338317],[118.562266,29.338539],[118.551498,29.335713],[118.54237,29.33696],[118.541039,29.342528],[118.528559,29.345257],[118.523401,29.345368],[118.519099,29.344384],[118.518885,29.346448],[118.523995,29.355229],[118.524352,29.36142],[118.517482,29.363484],[118.509994,29.361642],[118.50574,29.359274],[118.502887,29.360991],[118.498989,29.361891],[118.494163,29.362057],[118.491596,29.365215],[118.488839,29.367237],[118.479164,29.366544],[118.473341,29.362764],[118.470132,29.360091],[118.464664,29.360312],[118.45625,29.365893],[118.448738,29.375241],[118.445957,29.37639],[118.441251,29.375919],[118.437685,29.377705],[118.430102,29.382455],[118.423637,29.387356],[118.422733,29.390471],[118.425847,29.395179],[118.4258,29.397643],[118.422139,29.400232],[118.418122,29.40163],[118.415293,29.403762],[118.409684,29.404495],[118.407021,29.405575],[118.405405,29.408136],[118.410825,29.413479],[118.413297,29.41813],[118.413154,29.420552],[118.40859,29.42339],[118.40203,29.425175],[118.395231,29.423473],[118.390263,29.423971],[118.386698,29.427652],[118.384154,29.433258],[118.378093,29.43388],[118.375169,29.435195],[118.372935,29.437824],[118.366374,29.450154],[118.363426,29.451067],[118.357341,29.451565],[118.35254,29.452797],[118.350686,29.454775],[118.350186,29.458746],[118.345741,29.465138],[118.345028,29.468251],[118.344957,29.475707],[118.347619,29.473978],[118.353609,29.47503],[118.35872,29.477063],[118.360479,29.479097],[118.362951,29.484159],[118.365708,29.48629],[118.371104,29.492154],[118.373505,29.496483],[118.379804,29.502555],[118.381444,29.504933],[118.383013,29.510133],[118.393044,29.507298],[118.402814,29.507464],[118.407473,29.508059],[118.41256,29.509677],[118.414984,29.509746],[118.420238,29.508031],[118.425491,29.504754],[118.430578,29.50373],[118.436544,29.505749],[118.439872,29.510036],[118.443105,29.50893],[118.448976,29.513397],[118.45045,29.512733],[118.45827,29.506358],[118.459815,29.50557],[118.464213,29.505888],[118.470393,29.507464],[118.479022,29.510935],[118.481969,29.512996],[118.489433,29.51684],[118.495162,29.518361],[118.496065,29.520642],[118.495162,29.525703],[118.4949,29.5314],[118.495875,29.533321],[118.497563,29.540331],[118.497848,29.544008],[118.494948,29.550602],[118.4949,29.553712],[118.498371,29.56137],[118.49868,29.567672],[118.499678,29.573615],[118.50177,29.576379],[118.50574,29.57725],[118.515462,29.583316],[118.521547,29.585956],[118.532172,29.588954],[118.535239,29.590612],[118.540896,29.599331],[118.542037,29.603821],[118.54855,29.611212],[118.549905,29.613395],[118.553447,29.612373],[118.555087,29.613409],[118.559746,29.620689],[118.567519,29.627292],[118.568065,29.633438],[118.569302,29.635496],[118.573865,29.638383],[118.584015,29.640523],[118.595544,29.644059],[118.602057,29.643672],[118.614228,29.650425],[118.620004,29.654112],[118.633482,29.648782],[118.636928,29.644832],[118.640945,29.641932],[118.642918,29.641656],[118.647316,29.643382],[118.653401,29.648685],[118.656872,29.654444],[118.659629,29.65646],[118.666712,29.663309],[118.672275,29.667009],[118.673915,29.669094],[118.674153,29.674009],[118.67508,29.675625],[118.681498,29.67978],[118.682353,29.68105],[118.682924,29.688326],[118.685467,29.69052],[118.691648,29.69393],[118.692884,29.699148],[118.700823,29.706463],[118.718698,29.709182],[118.72407,29.715958],[118.724641,29.72261],[118.726947,29.725825],[118.733626,29.730089],[118.737406,29.735029],[118.739711,29.736809],[118.744703,29.738768],[118.745559,29.740327],[118.74651,29.746287],[118.748673,29.750426],[118.749029,29.761145],[118.745535,29.76738],[118.747365,29.772428],[118.746628,29.775352],[118.744299,29.779641],[118.738356,29.784799],[118.736526,29.788454],[118.738618,29.807952],[118.739925,29.813288],[118.742278,29.816321],[118.74601,29.818168],[118.754972,29.816982],[118.759441,29.817162],[118.765906,29.82309],[118.765669,29.824524],[118.76013,29.828921],[118.753855,29.829541],[118.750955,29.831609],[118.75471,29.839232],[118.754164,29.843697],[118.755614,29.84542],[118.766952,29.848949],[118.770066,29.846826],[118.774178,29.845324],[118.778742,29.841906],[118.781975,29.842595],[118.786634,29.845227],[118.788916,29.851016],[118.798091,29.858816],[118.802608,29.860663],[118.807718,29.867649],[118.812972,29.87086],[118.81649,29.873946],[118.819057,29.874815],[118.823383,29.87881],[118.830134,29.882489],[118.84133,29.891306],[118.843968,29.89515],[118.845537,29.899103],[118.844848,29.905288],[118.844895,29.915261],[118.843112,29.920591],[118.8419,29.928151],[118.840141,29.929859],[118.838715,29.9345],[118.838976,29.938273],[118.841163,29.939925],[118.848294,29.941261],[118.857921,29.938011],[118.863911,29.936978],[118.867239,29.939484],[118.868951,29.943904],[118.87197,29.946892],[118.876248,29.945736],[118.880337,29.942982],[118.883688,29.939429],[118.887634,29.939223],[118.893553,29.937598],[118.89467,29.938066],[118.894005,29.943106],[118.892365,29.9482],[118.893006,29.957081],[118.891533,29.959889],[118.893173,29.969291],[118.896453,29.975761],[118.898093,29.977495],[118.899472,29.981446],[118.897214,29.987116],[118.893197,29.990956],[118.892079,29.994796],[118.893981,29.997411],[118.895098,30.001195],[118.894028,30.006713],[118.889845,30.010593],[118.890344,30.012024],[118.897404,30.01673]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":330182,\"name\":\"建德市\",\"center\":[119.279089,29.472284],\"centroid\":[119.372981,29.48107],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":330100},\"subFeatureIndex\":12,\"acroutes\":[100000,330000,330100]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[119.765307,29.596402],[119.766829,29.589341],[119.765236,29.587572],[119.765616,29.584712],[119.768421,29.582459],[119.769182,29.579544],[119.766187,29.570906],[119.761647,29.566525],[119.764832,29.563111],[119.765521,29.560015],[119.76419,29.557334],[119.758842,29.556034],[119.756417,29.553726],[119.750665,29.550726],[119.747266,29.550588],[119.741109,29.551901],[119.730412,29.548197],[119.724803,29.545128],[119.72264,29.542764],[119.724755,29.538188],[119.731862,29.532962],[119.734311,29.528385],[119.744033,29.520781],[119.745602,29.518389],[119.744936,29.516425],[119.740348,29.513341],[119.735404,29.510935],[119.726894,29.511557],[119.727536,29.509442],[119.72554,29.506925],[119.718836,29.505293],[119.717862,29.502652],[119.718337,29.496691],[119.719549,29.491158],[119.718741,29.48853],[119.716673,29.486331],[119.712632,29.484132],[119.706785,29.472374],[119.708449,29.467725],[119.707118,29.464225],[119.709518,29.458885],[119.71344,29.456187],[119.715817,29.449005],[119.71344,29.445006],[119.710659,29.442266],[119.709518,29.439111],[119.710636,29.436122],[119.709637,29.434185],[119.70726,29.433216],[119.700509,29.433008],[119.697372,29.434116],[119.693663,29.438765],[119.691168,29.438779],[119.689836,29.433327],[119.690312,29.42685],[119.688909,29.421756],[119.683442,29.418628],[119.678973,29.41777],[119.676311,29.41921],[119.673387,29.425023],[119.67006,29.425424],[119.664402,29.424068],[119.6601,29.426891],[119.655488,29.425922],[119.649094,29.428344],[119.646741,29.43323],[119.644459,29.434102],[119.642486,29.432953],[119.638659,29.428275],[119.633596,29.423348],[119.626631,29.42022],[119.62492,29.41777],[119.625633,29.415293],[119.625538,29.410476],[119.617361,29.399733],[119.612155,29.394763],[119.607068,29.393877],[119.605547,29.392742],[119.606236,29.388076],[119.613866,29.383244],[119.617598,29.38035],[119.618573,29.378467],[119.619643,29.372956],[119.619381,29.371059],[119.616291,29.368261],[119.614057,29.368275],[119.608518,29.370242],[119.604596,29.369632],[119.597988,29.372928],[119.592925,29.377705],[119.589454,29.378702],[119.582085,29.379132],[119.578425,29.378121],[119.574598,29.372762],[119.565898,29.371183],[119.560573,29.372083],[119.55677,29.371585],[119.551469,29.36732],[119.545408,29.367361],[119.540915,29.369799],[119.538847,29.371931],[119.536042,29.37315],[119.529838,29.370546],[119.523872,29.36599],[119.525773,29.36347],[119.526605,29.360021],[119.52506,29.35516],[119.522707,29.350022],[119.512082,29.336724],[119.510418,29.333469],[119.501979,29.335879],[119.50003,29.335713],[119.492329,29.331059],[119.485364,29.332541],[119.480206,29.33297],[119.477543,29.335048],[119.47771,29.341586],[119.476022,29.345216],[119.471482,29.349025],[119.469652,29.349662],[119.464565,29.349177],[119.461427,29.350908],[119.459834,29.356656],[119.454819,29.365284],[119.457576,29.370366],[119.453369,29.378827],[119.451824,29.385598],[119.453607,29.389253],[119.451348,29.397283],[119.448876,29.400688],[119.443148,29.404565],[119.440676,29.408745],[119.441674,29.413036],[119.438798,29.415749],[119.439416,29.421424],[119.438964,29.423597],[119.437134,29.424123],[119.427768,29.422158],[119.428553,29.419057],[119.432332,29.415154],[119.426746,29.405548],[119.421255,29.404758],[119.415883,29.403],[119.410725,29.402557],[119.409204,29.400716],[119.405614,29.399927],[119.404758,29.400688],[119.404901,29.405326],[119.403974,29.407223],[119.399933,29.411237],[119.393515,29.411251],[119.391709,29.416884],[119.389783,29.425826],[119.388547,29.429715],[119.382129,29.43186],[119.378112,29.429798],[119.375283,29.424538],[119.372455,29.421037],[119.370814,29.417715],[119.368319,29.415708],[119.362162,29.416746],[119.360237,29.416289],[119.355578,29.410794],[119.353201,29.409866],[119.346378,29.408731],[119.343906,29.409008],[119.338392,29.411707],[119.334897,29.40815],[119.334042,29.405354],[119.331094,29.400356],[119.32779,29.396923],[119.328646,29.39342],[119.333875,29.390734],[119.336038,29.385847],[119.339105,29.384296],[119.340151,29.382358],[119.339295,29.379145],[119.340198,29.377304],[119.336466,29.372499],[119.335016,29.366987],[119.336704,29.363373],[119.332806,29.353748],[119.334303,29.348983],[119.340008,29.348581],[119.34557,29.342265],[119.348447,29.336253],[119.348233,29.333441],[119.344287,29.324395],[119.347092,29.322719],[119.348779,29.319504],[119.347282,29.317163],[119.340531,29.315389],[119.324201,29.30799],[119.323131,29.305011],[119.328646,29.299274],[119.329026,29.294383],[119.328337,29.292789],[119.32577,29.292248],[119.324177,29.295408],[119.322632,29.29617],[119.322608,29.290488],[119.323345,29.288146],[119.322727,29.284931],[119.318306,29.2799],[119.312672,29.278639],[119.305066,29.279332],[119.298648,29.279276],[119.292562,29.281799],[119.288117,29.280995],[119.286026,29.279332],[119.286216,29.275257],[119.288094,29.268839],[119.287167,29.267453],[119.282317,29.264944],[119.282056,29.26127],[119.278657,29.260646],[119.275781,29.258636],[119.273475,29.25377],[119.270646,29.251649],[119.260924,29.247809],[119.257644,29.247989],[119.249205,29.250193],[119.244237,29.250997],[119.238746,29.250152],[119.237772,29.25072],[119.239293,29.258913],[119.236298,29.26346],[119.234016,29.270682],[119.231544,29.273274],[119.228786,29.27437],[119.227099,29.276837],[119.229,29.282575],[119.228739,29.284183],[119.225031,29.285153],[119.219397,29.2827],[119.214833,29.283753],[119.208178,29.284404],[119.205111,29.288257],[119.200286,29.290391],[119.198836,29.286026],[119.200737,29.280524],[119.200999,29.275811],[119.204255,29.274771],[119.203328,29.272318],[119.200405,29.272152],[119.19779,29.26992],[119.192299,29.263571],[119.191515,29.261741],[119.192228,29.258456],[119.195484,29.256446],[119.198622,29.257985],[119.200904,29.257472],[119.204303,29.252356],[119.210293,29.248724],[119.214786,29.246935],[119.212195,29.246076],[119.211268,29.244426],[119.211648,29.235413],[119.210269,29.230657],[119.213645,29.225207],[119.211838,29.222905],[119.209033,29.222059],[119.204469,29.223557],[119.203233,29.228383],[119.201736,29.229367],[119.196102,29.227883],[119.194153,29.22927],[119.190825,29.22848],[119.189518,29.227093],[119.189779,29.223709],[119.193963,29.220145],[119.194938,29.216304],[119.189518,29.205194],[119.181032,29.206304],[119.177704,29.207233],[119.175826,29.211893],[119.168053,29.219022],[119.165652,29.219202],[119.160257,29.220991],[119.156453,29.223806],[119.15372,29.227024],[119.151771,29.227897],[119.145709,29.222974],[119.141525,29.223377],[119.138126,29.220242],[119.131542,29.221116],[119.130163,29.2226],[119.129117,29.227079],[119.132588,29.235441],[119.126455,29.237119],[119.123508,29.236716],[119.106393,29.227509],[119.10045,29.228313],[119.094222,29.228258],[119.091893,29.230546],[119.08519,29.230601],[119.082908,29.228826],[119.081981,29.22658],[119.07775,29.224222],[119.075658,29.223987],[119.068384,29.226455],[119.062941,29.226275],[119.055144,29.222239],[119.050033,29.221546],[119.045588,29.221823],[119.037126,29.217205],[119.030589,29.215069],[119.01307,29.212379],[119.003253,29.207691],[119.001851,29.208551],[118.998903,29.216345],[118.995742,29.21708],[118.993127,29.219244],[118.991867,29.221837],[118.987137,29.226053],[118.985711,29.229728],[118.98583,29.235344],[118.984831,29.239476],[118.988254,29.243552],[118.982597,29.249736],[118.981408,29.254325],[118.979245,29.258955],[118.977344,29.258775],[118.970189,29.264944],[118.966837,29.269352],[118.963295,29.267674],[118.959492,29.271403],[118.958565,29.273801],[118.954881,29.277918],[118.952337,29.278763],[118.949651,29.281743],[118.949176,29.283919],[118.951268,29.286275],[118.961893,29.290211],[118.963533,29.291999],[118.962083,29.29617],[118.952622,29.298554],[118.948035,29.301117],[118.944113,29.306286],[118.927069,29.310374],[118.923456,29.31478],[118.916753,29.31816],[118.911262,29.324409],[118.908362,29.325143],[118.905414,29.327374],[118.903917,29.330186],[118.900446,29.332652],[118.908219,29.336156],[118.91314,29.336627],[118.919391,29.341614],[118.923195,29.342196],[118.92909,29.341808],[118.936102,29.345673],[118.94214,29.348374],[118.946704,29.349759],[118.95576,29.353637],[118.9574,29.355756],[118.958375,29.360922],[118.959611,29.362985],[118.962368,29.363899],[118.967431,29.362431],[118.972209,29.364689],[118.976036,29.364813],[118.98148,29.359218],[118.984308,29.358872],[118.98621,29.360146],[118.990607,29.365436],[118.99453,29.368372],[119.003206,29.368289],[119.007556,29.367444],[119.01124,29.368428],[119.016874,29.372],[119.030518,29.376404],[119.034725,29.382787],[119.039717,29.385889],[119.044637,29.386595],[119.04806,29.389987],[119.050865,29.391482],[119.052767,29.394459],[119.055405,29.395497],[119.057236,29.398086],[119.057878,29.402045],[119.059328,29.405603],[119.061633,29.408122],[119.067196,29.412552],[119.070428,29.413825],[119.078154,29.414462],[119.083597,29.414116],[119.096504,29.416358],[119.098881,29.417673],[119.102281,29.423002],[119.102399,29.426213],[119.099595,29.431085],[119.101948,29.436468],[119.106583,29.440025],[119.110719,29.443982],[119.114784,29.44639],[119.11728,29.445588],[119.122248,29.445975],[119.126883,29.450334],[119.132255,29.448549],[119.138459,29.449393],[119.141335,29.447373],[119.146303,29.447829],[119.156192,29.450721],[119.159139,29.452202],[119.167316,29.453668],[119.172023,29.454927],[119.179083,29.453931],[119.185929,29.460434],[119.190897,29.462606],[119.192608,29.465581],[119.192941,29.470796],[119.191705,29.483703],[119.193559,29.49149],[119.198646,29.495211],[119.201546,29.501739],[119.205919,29.504989],[119.206656,29.508142],[119.20542,29.510382],[119.204042,29.516632],[119.202401,29.51991],[119.199929,29.52226],[119.199145,29.524846],[119.202092,29.527252],[119.206276,29.529063],[119.210388,29.529409],[119.215499,29.526464],[119.216878,29.524279],[119.223795,29.519965],[119.226552,29.516964],[119.2295,29.517877],[119.230997,29.51955],[119.2295,29.522246],[119.230569,29.523961],[119.241575,29.533045],[119.249562,29.535851],[119.265702,29.546704],[119.267675,29.548832],[119.26613,29.559324],[119.268222,29.561895],[119.274449,29.560969],[119.279441,29.56148],[119.282531,29.565544],[119.285954,29.568474],[119.284457,29.571625],[119.282626,29.572896],[119.278229,29.572896],[119.274996,29.569856],[119.264371,29.564825],[119.255837,29.564784],[119.254078,29.566152],[119.24602,29.567893],[119.243667,29.56951],[119.243072,29.575246],[119.241955,29.577706],[119.237582,29.581202],[119.234967,29.582086],[119.243025,29.590087],[119.247304,29.59759],[119.246971,29.599483],[119.248231,29.605617],[119.251249,29.610826],[119.248849,29.614887],[119.251654,29.61747],[119.252913,29.623314],[119.254292,29.626629],[119.257382,29.628866],[119.263824,29.630745],[119.267508,29.633093],[119.274853,29.636228],[119.276969,29.63812],[119.277777,29.640758],[119.286572,29.647401],[119.293085,29.65066],[119.299194,29.649113],[119.303259,29.649735],[119.305517,29.651392],[119.306706,29.654154],[119.30673,29.661776],[119.309035,29.668017],[119.314621,29.669453],[119.315548,29.670309],[119.31852,29.676964],[119.320588,29.6792],[119.321657,29.688422],[119.323297,29.693171],[119.329763,29.699769],[119.330619,29.702115],[119.332924,29.702791],[119.33504,29.701715],[119.336942,29.702336],[119.345642,29.711224],[119.34828,29.715116],[119.350015,29.719643],[119.352915,29.722334],[119.354508,29.725825],[119.354056,29.730185],[119.355768,29.73231],[119.358074,29.737968],[119.360332,29.741638],[119.36423,29.746397],[119.365823,29.750398],[119.370624,29.752688],[119.373857,29.754978],[119.373405,29.758758],[119.374142,29.760662],[119.380489,29.766993],[119.383579,29.770952],[119.388357,29.769628],[119.390924,29.764979],[119.391495,29.7624],[119.394323,29.759807],[119.392374,29.750357],[119.393563,29.748301],[119.398792,29.744328],[119.407088,29.7431],[119.411343,29.745266],[119.415431,29.750233],[119.417547,29.757048],[119.42261,29.758469],[119.425439,29.75582],[119.425938,29.753171],[119.434519,29.748384],[119.439867,29.742231],[119.44203,29.741651],[119.447094,29.743183],[119.451206,29.741555],[119.454938,29.741983],[119.458955,29.744935],[119.465753,29.741693],[119.472932,29.739361],[119.476379,29.733373],[119.478019,29.732338],[119.484556,29.731262],[119.492376,29.722334],[119.493802,29.721285],[119.50022,29.722679],[119.504879,29.722872],[119.50835,29.725273],[119.520187,29.728792],[119.522969,29.731013],[119.528269,29.733897],[119.531954,29.733925],[119.537064,29.736933],[119.540511,29.737319],[119.543696,29.746122],[119.544695,29.747432],[119.549472,29.749916],[119.560431,29.752316],[119.569131,29.751695],[119.571698,29.749847],[119.574099,29.745197],[119.577212,29.741569],[119.578306,29.738299],[119.581895,29.73111],[119.583726,29.729385],[119.59176,29.724818],[119.593448,29.723203],[119.596229,29.717352],[119.601815,29.716055],[119.603978,29.713419],[119.604144,29.708837],[119.602528,29.700859],[119.610895,29.695227],[119.610776,29.688229],[119.614128,29.684999],[119.612749,29.673029],[119.613581,29.669757],[119.616909,29.664648],[119.617479,29.662757],[119.616148,29.656805],[119.621972,29.65472],[119.62946,29.656239],[119.634689,29.653243],[119.636733,29.652939],[119.643579,29.653961],[119.64705,29.65229],[119.651043,29.651641],[119.658792,29.652013],[119.665305,29.653836],[119.667968,29.657316],[119.670844,29.657137],[119.674505,29.653809],[119.672104,29.648658],[119.670226,29.640979],[119.673031,29.636905],[119.676192,29.636325],[119.678593,29.634018],[119.679663,29.62685],[119.688363,29.62109],[119.693307,29.620965],[119.694876,29.619985],[119.695375,29.616034],[119.692998,29.602633],[119.695256,29.596719],[119.698322,29.593721],[119.701318,29.58959],[119.704075,29.587641],[119.708282,29.589673],[119.709376,29.595863],[119.715247,29.601804],[119.717315,29.608781],[119.718575,29.610439],[119.723899,29.610535],[119.728368,29.613506],[119.731126,29.613547],[119.742393,29.609195],[119.746434,29.606419],[119.750142,29.602978],[119.757843,29.598447],[119.762312,29.597811],[119.765307,29.596402]]]]}}]}', 'admin', '2020-12-07 18:37:35', NULL, '2020-12-07 18:37:35', '0', NULL); +INSERT INTO `jimu_report_map` VALUES ('1335907956524433409', '上海', 'shanghai', '{\"type\":\"FeatureCollection\",\"features\":[{\"type\":\"Feature\",\"properties\":{\"adcode\":310101,\"name\":\"黄浦区\",\"center\":[121.490317,31.222771],\"centroid\":[121.483572,31.215946],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":0,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.475987,31.187885],[121.474944,31.189886],[121.470356,31.191431],[121.469605,31.196404],[121.46745,31.203065],[121.466449,31.204395],[121.462264,31.203173],[121.461555,31.210194],[121.460707,31.213488],[121.457689,31.220196],[121.456758,31.223898],[121.467464,31.223862],[121.467658,31.225634],[121.466129,31.234917],[121.462973,31.241396],[121.469563,31.239216],[121.474847,31.24142],[121.47892,31.240294],[121.482994,31.241923],[121.485969,31.244091],[121.487805,31.244186],[121.494826,31.24221],[121.493491,31.240163],[121.493491,31.23615],[121.495744,31.232977],[121.502014,31.228018],[121.506741,31.223119],[121.509397,31.218459],[121.509911,31.214506],[121.508368,31.210158],[121.501319,31.199747],[121.498066,31.195601],[121.494631,31.192857],[121.490752,31.191467],[121.475987,31.187885]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310104,\"name\":\"徐汇区\",\"center\":[121.43752,31.179973],\"centroid\":[121.439404,31.162992],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":1,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.412572,31.19112],[121.419719,31.190796],[121.422027,31.192294],[121.421638,31.19535],[121.423793,31.197314],[121.433025,31.20128],[121.437933,31.203976],[121.435235,31.21114],[121.43746,31.211535],[121.439462,31.214482],[121.44697,31.215812],[121.452184,31.217429],[121.457689,31.220196],[121.460707,31.213488],[121.461555,31.210194],[121.462264,31.203173],[121.466449,31.204395],[121.46745,31.203065],[121.469605,31.196404],[121.470356,31.191431],[121.474944,31.189886],[121.475987,31.187885],[121.468729,31.184122],[121.466254,31.18109],[121.464905,31.178022],[121.464905,31.17541],[121.468159,31.167092],[121.469369,31.162298],[121.468354,31.158091],[121.46574,31.155118],[121.460387,31.150276],[121.457453,31.146451],[121.457453,31.142232],[121.462431,31.134463],[121.468729,31.127868],[121.469674,31.124859],[121.469299,31.118731],[121.465211,31.1121],[121.463237,31.108586],[121.462862,31.101954],[121.455423,31.100755],[121.452629,31.101234],[121.451878,31.103849],[121.446275,31.105744],[121.447623,31.107423],[121.452364,31.108586],[121.450154,31.112819],[121.450807,31.115398],[121.446706,31.114282],[121.445788,31.114954],[121.441547,31.112568],[121.438002,31.1121],[121.435736,31.113539],[121.438836,31.119103],[121.43853,31.121729],[121.436445,31.129043],[121.421526,31.127137],[121.418398,31.131669],[121.41381,31.13728],[121.411293,31.14174],[121.404953,31.156689],[121.400977,31.155214],[121.401449,31.153776],[121.396931,31.152685],[121.395874,31.15585],[121.401867,31.157528],[121.404578,31.157588],[121.402645,31.162226],[121.394567,31.159601],[121.391508,31.168686],[121.394053,31.169489],[121.39269,31.173085],[121.395415,31.174595],[121.394442,31.177879],[121.398071,31.178226],[121.398349,31.179904],[121.400101,31.178813],[121.41146,31.182037],[121.415158,31.183391],[121.415256,31.187357],[121.41356,31.18683],[121.412572,31.19112]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310105,\"name\":\"长宁区\",\"center\":[121.4222,31.218123],\"centroid\":[121.380949,31.20737],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":2,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.439462,31.214482],[121.43746,31.211535],[121.435235,31.21114],[121.437933,31.203976],[121.433025,31.20128],[121.423793,31.197314],[121.421638,31.19535],[121.422027,31.192294],[121.419719,31.190796],[121.412572,31.19112],[121.391425,31.191911],[121.38001,31.190065],[121.365954,31.185572],[121.360253,31.185296],[121.358321,31.186015],[121.356958,31.182768],[121.353301,31.181629],[121.351424,31.183499],[121.341414,31.179436],[121.338341,31.180108],[121.331806,31.189622],[121.338049,31.192618],[121.33734,31.195817],[121.338925,31.196644],[121.338438,31.20666],[121.338508,31.212182],[121.339996,31.212278],[121.33937,31.216615],[121.342457,31.217789],[121.343096,31.223071],[121.345627,31.223526],[121.340997,31.224269],[121.341581,31.226293],[121.345362,31.227886],[121.345376,31.23039],[121.343513,31.234306],[121.338355,31.237528],[121.340872,31.239947],[121.345585,31.239887],[121.344612,31.243552],[121.346822,31.241037],[121.347281,31.243192],[121.348922,31.243863],[121.350131,31.241839],[121.348741,31.239372],[121.352856,31.238342],[121.354177,31.237121],[121.359071,31.229827],[121.362102,31.22597],[121.366065,31.226006],[121.366691,31.224065],[121.371404,31.222508],[121.373197,31.220089],[121.37691,31.220687],[121.388658,31.218639],[121.399712,31.218711],[121.400462,31.220807],[121.403799,31.22058],[121.408707,31.222364],[121.414157,31.223359],[121.415965,31.224473],[121.414853,31.228054],[121.415617,31.228581],[121.419941,31.225191],[121.423334,31.228114],[121.427519,31.229288],[121.427713,31.224221],[121.429034,31.223095],[121.434304,31.225886],[121.435416,31.225071],[121.436167,31.220675],[121.439462,31.214482]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310106,\"name\":\"静安区\",\"center\":[121.448224,31.229003],\"centroid\":[121.450659,31.270821],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":3,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.482994,31.241923],[121.47892,31.240294],[121.474847,31.24142],[121.469563,31.239216],[121.462973,31.241396],[121.466129,31.234917],[121.467658,31.225634],[121.467464,31.223862],[121.456758,31.223898],[121.457689,31.220196],[121.452184,31.217429],[121.44697,31.215812],[121.439462,31.214482],[121.436167,31.220675],[121.435416,31.225071],[121.434304,31.225886],[121.429034,31.223095],[121.427713,31.224221],[121.427519,31.229288],[121.427908,31.231144],[121.431009,31.235108],[121.435166,31.235252],[121.445774,31.241348],[121.449987,31.2433],[121.448318,31.245216],[121.450404,31.247743],[121.451461,31.251994],[121.44932,31.252928],[121.451044,31.256269],[121.442952,31.267117],[121.437098,31.269439],[121.432413,31.271942],[121.429841,31.274923],[121.425252,31.270661],[121.424571,31.27193],[121.424432,31.280238],[121.422833,31.28426],[121.423806,31.291011],[121.419691,31.291071],[121.418648,31.292256],[121.420039,31.296912],[121.42364,31.297259],[121.426935,31.298528],[121.426434,31.303207],[121.431287,31.303638],[121.432441,31.305912],[121.431676,31.309478],[121.432163,31.31168],[121.434623,31.312303],[121.432468,31.318669],[121.433595,31.32087],[121.436459,31.32087],[121.436765,31.319662],[121.44672,31.319817],[121.447887,31.317101],[121.4547,31.319243],[121.457133,31.321002],[121.465378,31.321397],[121.468145,31.32032],[121.468312,31.316036],[121.467672,31.306307],[121.463529,31.306008],[121.46453,31.297989],[121.462445,31.292747],[121.460081,31.289778],[121.461805,31.284691],[121.461457,31.278921],[121.462834,31.275389],[121.464627,31.274396],[121.469605,31.267799],[121.474124,31.263453],[121.480491,31.258568],[121.480589,31.255239],[121.479629,31.253383],[121.481673,31.250689],[121.479588,31.249815],[121.481228,31.247959],[121.482994,31.241923]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310107,\"name\":\"普陀区\",\"center\":[121.392499,31.241701],\"centroid\":[121.392058,31.257885],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":4,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.354177,31.237121],[121.356054,31.237803],[121.356068,31.240151],[121.360086,31.240498],[121.36067,31.238642],[121.363117,31.240091],[121.366718,31.246342],[121.368387,31.247384],[121.372349,31.243755],[121.3731,31.245683],[121.375686,31.244486],[121.377216,31.247719],[121.380886,31.257766],[121.377508,31.259478],[121.375158,31.25949],[121.374574,31.257059],[121.365884,31.257682],[121.366023,31.259358],[121.361783,31.259945],[121.358918,31.263609],[121.35985,31.266997],[121.362227,31.26756],[121.366996,31.266662],[121.367441,31.269631],[121.361268,31.27084],[121.358918,31.268793],[121.35732,31.271415],[121.344723,31.273917],[121.343541,31.271439],[121.338272,31.272839],[121.338883,31.275006],[121.336228,31.275461],[121.336061,31.280046],[121.335004,31.279711],[121.332738,31.286067],[121.328998,31.284595],[121.327316,31.285182],[121.326384,31.288928],[121.33353,31.291107],[121.332891,31.292998],[121.336506,31.294901],[121.338675,31.293225],[121.341011,31.293716],[121.340927,31.297439],[121.34685,31.297654],[121.346892,31.296349],[121.349659,31.297582],[121.348894,31.299246],[121.352954,31.301663],[121.354803,31.299808],[121.360309,31.302717],[121.363534,31.302741],[121.360295,31.294674],[121.358585,31.293465],[121.363785,31.292028],[121.363785,31.291334],[121.369666,31.28912],[121.370153,31.290329],[121.374838,31.289096],[121.376242,31.290592],[121.38154,31.289431],[121.381623,31.292711],[121.384765,31.294446],[121.388394,31.29526],[121.394762,31.294674],[121.393483,31.291274],[121.39789,31.29052],[121.399559,31.288904],[121.398446,31.287145],[121.400379,31.286115],[121.404453,31.286223],[121.400087,31.278071],[121.404564,31.276227],[121.406496,31.276862],[121.40544,31.273067],[121.41096,31.273175],[121.410598,31.270373],[121.41527,31.26914],[121.41577,31.265896],[121.419496,31.265237],[121.425252,31.270661],[121.429841,31.274923],[121.432413,31.271942],[121.437098,31.269439],[121.442952,31.267117],[121.451044,31.256269],[121.44932,31.252928],[121.451461,31.251994],[121.450404,31.247743],[121.448318,31.245216],[121.449987,31.2433],[121.445774,31.241348],[121.435166,31.235252],[121.431009,31.235108],[121.427908,31.231144],[121.427519,31.229288],[121.423334,31.228114],[121.419941,31.225191],[121.415617,31.228581],[121.414853,31.228054],[121.415965,31.224473],[121.414157,31.223359],[121.408707,31.222364],[121.403799,31.22058],[121.400462,31.220807],[121.399712,31.218711],[121.388658,31.218639],[121.37691,31.220687],[121.373197,31.220089],[121.371404,31.222508],[121.366691,31.224065],[121.366065,31.226006],[121.362102,31.22597],[121.359071,31.229827],[121.354177,31.237121]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310109,\"name\":\"虹口区\",\"center\":[121.491832,31.26097],\"centroid\":[121.485443,31.276649],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":5,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.485413,31.311573],[121.485664,31.303483],[121.490168,31.292603],[121.493644,31.293884],[121.500652,31.295488],[121.502709,31.289658],[121.498149,31.286259],[121.496049,31.282991],[121.496564,31.276407],[121.499915,31.275904],[121.506505,31.270589],[121.50631,31.266746],[121.508479,31.262639],[121.514569,31.256317],[121.517642,31.251862],[121.516001,31.251599],[121.516488,31.246953],[121.50688,31.246474],[121.500012,31.244989],[121.494826,31.24221],[121.487805,31.244186],[121.485969,31.244091],[121.482994,31.241923],[121.481228,31.247959],[121.479588,31.249815],[121.481673,31.250689],[121.479629,31.253383],[121.480589,31.255239],[121.480491,31.258568],[121.474124,31.263453],[121.469605,31.267799],[121.464627,31.274396],[121.462834,31.275389],[121.461457,31.278921],[121.461805,31.284691],[121.460081,31.289778],[121.462445,31.292747],[121.46453,31.297989],[121.463529,31.306008],[121.467672,31.306307],[121.468312,31.316036],[121.472956,31.315797],[121.479171,31.314696],[121.485372,31.314636],[121.485413,31.311573]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310110,\"name\":\"杨浦区\",\"center\":[121.522797,31.270755],\"centroid\":[121.529302,31.29835],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":6,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.516488,31.246953],[121.516001,31.251599],[121.517642,31.251862],[121.514569,31.256317],[121.508479,31.262639],[121.50631,31.266746],[121.506505,31.270589],[121.499915,31.275904],[121.496564,31.276407],[121.496049,31.282991],[121.498149,31.286259],[121.502709,31.289658],[121.500652,31.295488],[121.493644,31.293884],[121.490168,31.292603],[121.485664,31.303483],[121.485413,31.311573],[121.496717,31.311489],[121.496216,31.323347],[121.498928,31.325322],[121.497593,31.328109],[121.493575,31.330299],[121.50556,31.345732],[121.517628,31.340779],[121.520256,31.344033],[121.522883,31.342885],[121.525483,31.346797],[121.549398,31.337789],[121.555779,31.333948],[121.558574,31.331256],[121.560493,31.32781],[121.561883,31.321158],[121.561758,31.303339],[121.562523,31.29976],[121.565456,31.294135],[121.569141,31.285254],[121.56953,31.279567],[121.568515,31.275701],[121.563537,31.268805],[121.559074,31.264219],[121.541542,31.251826],[121.536384,31.249623],[121.527555,31.247252],[121.516488,31.246953]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310112,\"name\":\"闵行区\",\"center\":[121.375972,31.111658],\"centroid\":[121.418901,31.087213],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":7,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.35871,30.97786],[121.351258,30.975986],[121.34375,30.976599],[121.334406,30.980694],[121.329554,30.981318],[121.327371,30.980658],[121.3258,30.9833],[121.326898,30.989964],[121.326773,30.994479],[121.327482,30.995896],[121.330347,30.996905],[121.33823,31.006197],[121.339829,31.010267],[121.34425,31.013941],[121.34279,31.014817],[121.339898,31.013857],[121.333072,31.01334],[121.333725,31.015657],[121.333892,31.026917],[121.333308,31.030686],[121.334017,31.031922],[121.33367,31.040695],[121.335102,31.04564],[121.335338,31.060435],[121.341456,31.062763],[121.343444,31.059139],[121.35344,31.061287],[121.358195,31.064047],[121.357278,31.066758],[121.363743,31.068354],[121.364424,31.069878],[121.362116,31.072601],[121.364341,31.073705],[121.365481,31.077892],[121.368804,31.079127],[121.370625,31.078372],[121.372016,31.079871],[121.368289,31.088976],[121.362756,31.099771],[121.359085,31.098931],[121.35839,31.100791],[121.351341,31.099255],[121.348532,31.106655],[121.351675,31.107735],[121.352217,31.106487],[121.357014,31.110529],[121.356026,31.112532],[121.353774,31.111512],[121.35066,31.115554],[121.353065,31.117604],[121.349589,31.117748],[121.346753,31.121657],[121.347545,31.121969],[121.34489,31.12577],[121.346002,31.126202],[121.344014,31.129451],[121.344681,31.130338],[121.342095,31.134655],[121.33677,31.138971],[121.338814,31.14017],[121.336728,31.14355],[121.335477,31.143862],[121.333711,31.148765],[121.331292,31.149772],[121.331528,31.15205],[121.328775,31.156665],[121.327218,31.156856],[121.323854,31.162933],[121.318584,31.170256],[121.318042,31.173624],[121.316304,31.176836],[121.310784,31.18423],[121.30856,31.188388],[121.300565,31.197027],[121.297506,31.201412],[121.294837,31.203077],[121.292431,31.202514],[121.292126,31.200621],[121.287329,31.196332],[121.284034,31.194391],[121.277388,31.193576],[121.271701,31.198309],[121.266724,31.203257],[121.264777,31.203317],[121.263053,31.205701],[121.26468,31.206731],[121.263846,31.208912],[121.259397,31.212769],[121.261218,31.215081],[121.259675,31.218148],[121.25745,31.220208],[121.258215,31.222772],[121.256588,31.226329],[121.258006,31.226868],[121.257158,31.230701],[121.254155,31.23312],[121.252792,31.236965],[121.251082,31.238198],[121.249692,31.236534],[121.247912,31.240917],[121.241391,31.240222],[121.239932,31.241061],[121.241683,31.247348],[121.24591,31.248821],[121.247314,31.253287],[121.254183,31.258688],[121.254405,31.259634],[121.260217,31.258328],[121.263985,31.259155],[121.264444,31.256496],[121.271284,31.252258],[121.275302,31.253527],[121.280363,31.251886],[121.284228,31.251838],[121.28142,31.248174],[121.283742,31.245192],[121.287301,31.243276],[121.288538,31.238198],[121.29264,31.232761],[121.296922,31.231048],[121.302998,31.230605],[121.315386,31.227204],[121.322853,31.229623],[121.32612,31.229575],[121.333878,31.232006],[121.334935,31.235887],[121.338355,31.237528],[121.343513,31.234306],[121.345376,31.23039],[121.345362,31.227886],[121.341581,31.226293],[121.340997,31.224269],[121.345627,31.223526],[121.343096,31.223071],[121.342457,31.217789],[121.33937,31.216615],[121.339996,31.212278],[121.338508,31.212182],[121.338438,31.20666],[121.338925,31.196644],[121.33734,31.195817],[121.338049,31.192618],[121.331806,31.189622],[121.338341,31.180108],[121.341414,31.179436],[121.351424,31.183499],[121.353301,31.181629],[121.356958,31.182768],[121.358321,31.186015],[121.360253,31.185296],[121.365954,31.185572],[121.38001,31.190065],[121.391425,31.191911],[121.412572,31.19112],[121.41356,31.18683],[121.415256,31.187357],[121.415158,31.183391],[121.41146,31.182037],[121.400101,31.178813],[121.398349,31.179904],[121.398071,31.178226],[121.394442,31.177879],[121.395415,31.174595],[121.39269,31.173085],[121.394053,31.169489],[121.391508,31.168686],[121.394567,31.159601],[121.402645,31.162226],[121.404578,31.157588],[121.401867,31.157528],[121.395874,31.15585],[121.396931,31.152685],[121.401449,31.153776],[121.400977,31.155214],[121.404953,31.156689],[121.411293,31.14174],[121.41381,31.13728],[121.418398,31.131669],[121.421526,31.127137],[121.436445,31.129043],[121.43853,31.121729],[121.438836,31.119103],[121.435736,31.113539],[121.438002,31.1121],[121.441547,31.112568],[121.445788,31.114954],[121.446706,31.114282],[121.450807,31.115398],[121.450154,31.112819],[121.452364,31.108586],[121.447623,31.107423],[121.446275,31.105744],[121.451878,31.103849],[121.452629,31.101234],[121.455423,31.100755],[121.462862,31.101954],[121.463237,31.108586],[121.465211,31.1121],[121.470286,31.110937],[121.473984,31.112915],[121.474137,31.114354],[121.477321,31.110853],[121.481353,31.110697],[121.477446,31.117328],[121.481256,31.118024],[121.48191,31.120086],[121.485705,31.121933],[121.485969,31.124523],[121.490266,31.124283],[121.49281,31.118719],[121.498538,31.121501],[121.501583,31.114666],[121.505295,31.115494],[121.503863,31.118324],[121.50549,31.120002],[121.511343,31.12119],[121.513749,31.118012],[121.514513,31.115278],[121.521424,31.116309],[121.522869,31.115242],[121.525289,31.116741],[121.53142,31.11842],[121.532254,31.117208],[121.535341,31.117976],[121.537885,31.113983],[121.539526,31.115626],[121.542251,31.116153],[121.544225,31.111464],[121.547687,31.109653],[121.550426,31.11162],[121.549217,31.113419],[121.552317,31.113899],[121.553332,31.112688],[121.555279,31.114882],[121.556697,31.113083],[121.559867,31.111896],[121.557851,31.109797],[121.561396,31.106224],[121.561132,31.105264],[121.563649,31.101858],[121.562064,31.101258],[121.563315,31.098955],[121.566819,31.096569],[121.567264,31.09363],[121.564358,31.091891],[121.561855,31.091867],[121.561563,31.09357],[121.559088,31.091951],[121.551608,31.090128],[121.551539,31.088148],[121.548549,31.086889],[121.550565,31.082834],[121.553555,31.080303],[121.556405,31.081059],[121.557031,31.082702],[121.561563,31.08365],[121.563579,31.082486],[121.569766,31.081611],[121.571643,31.080063],[121.572658,31.081323],[121.575272,31.080063],[121.567639,31.0762],[121.56262,31.075121],[121.562675,31.074305],[121.557531,31.073357],[121.559033,31.072169],[121.555599,31.071689],[121.55279,31.069506],[121.556753,31.06737],[121.551789,31.065643],[121.551094,31.063795],[121.548549,31.063639],[121.547201,31.061647],[121.548383,31.056896],[121.543308,31.055696],[121.54328,31.054016],[121.540791,31.052528],[121.542307,31.049072],[121.541472,31.046396],[121.54588,31.047044],[121.547799,31.048544],[121.54955,31.047908],[121.550538,31.049396],[121.552693,31.0493],[121.554737,31.050824],[121.556127,31.047632],[121.557031,31.04798],[121.559811,31.044812],[121.562119,31.043635],[121.559464,31.041391],[121.559505,31.030278],[121.558254,31.029533],[121.558407,31.024528],[121.555765,31.022908],[121.552804,31.023268],[121.552262,31.020915],[121.554139,31.01861],[121.556516,31.01873],[121.556474,31.020255],[121.558699,31.020255],[121.56027,31.024132],[121.564302,31.021191],[121.569057,31.024396],[121.56839,31.025284],[121.572325,31.026677],[121.574758,31.020951],[121.574674,31.018634],[121.571018,31.016426],[121.569822,31.012452],[121.565859,31.011912],[121.568181,31.010063],[121.569725,31.010603],[121.571463,31.005633],[121.570253,31.004565],[121.570712,31.002295],[121.567959,31.000879],[121.570475,30.998345],[121.561494,30.995644],[121.555918,30.995152],[121.556224,30.993374],[121.553304,30.993026],[121.55279,30.98886],[121.549537,30.988307],[121.54613,30.99305],[121.543294,30.994203],[121.538233,30.993146],[121.537774,30.994683],[121.534507,30.995848],[121.531962,30.994815],[121.528612,30.99592],[121.522897,30.99981],[121.520325,30.999354],[121.520089,31.00256],[121.522105,31.002199],[121.520853,31.004445],[121.517002,31.007626],[121.510412,31.004553],[121.507881,31.004745],[121.503057,31.002716],[121.49883,30.999426],[121.498872,30.998213],[121.495924,30.998297],[121.491948,31.010039],[121.492879,31.012752],[121.489153,31.014949],[121.485872,31.014073],[121.476362,31.01334],[121.47144,31.011948],[121.465587,31.008755],[121.459942,31.007398],[121.448305,31.007458],[121.440811,31.005789],[121.436834,31.00406],[121.433636,31.001779],[121.431426,30.999174],[121.423973,30.994515],[121.413184,30.991069],[121.409333,30.990229],[121.394261,30.988247],[121.375227,30.982832],[121.35871,30.97786]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310113,\"name\":\"宝山区\",\"center\":[121.489934,31.398896],\"centroid\":[121.404861,31.392111],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":8,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.425252,31.270661],[121.419496,31.265237],[121.41577,31.265896],[121.41527,31.26914],[121.410598,31.270373],[121.41096,31.273175],[121.40544,31.273067],[121.406496,31.276862],[121.404564,31.276227],[121.400087,31.278071],[121.404453,31.286223],[121.400379,31.286115],[121.398446,31.287145],[121.399559,31.288904],[121.39789,31.29052],[121.393483,31.291274],[121.394762,31.294674],[121.388394,31.29526],[121.384765,31.294446],[121.381623,31.292711],[121.38154,31.289431],[121.376242,31.290592],[121.374838,31.289096],[121.370153,31.290329],[121.369666,31.28912],[121.363785,31.291334],[121.363785,31.292028],[121.358585,31.293465],[121.360295,31.294674],[121.363534,31.302741],[121.360309,31.302717],[121.354803,31.299808],[121.352954,31.301663],[121.348894,31.299246],[121.349659,31.297582],[121.346892,31.296349],[121.34685,31.297654],[121.340927,31.297439],[121.341011,31.293716],[121.338675,31.293225],[121.336506,31.294901],[121.33588,31.297044],[121.334198,31.296122],[121.331306,31.301436],[121.335686,31.303339],[121.338981,31.310101],[121.340357,31.311525],[121.343458,31.317185],[121.347698,31.316706],[121.347782,31.319542],[121.3492,31.321313],[121.345585,31.320835],[121.344848,31.323335],[121.347517,31.324077],[121.345932,31.32513],[121.342318,31.331005],[121.341692,31.33329],[121.342846,31.336066],[121.34628,31.336329],[121.344347,31.341928],[121.342401,31.341306],[121.338925,31.344775],[121.337521,31.344536],[121.336464,31.346821],[121.332502,31.347084],[121.332251,31.351307],[121.334643,31.3509],[121.337743,31.3534],[121.337118,31.356019],[121.341428,31.357802],[121.340329,31.360517],[121.338911,31.360995],[121.337576,31.364189],[121.335018,31.366963],[121.335991,31.370097],[121.333336,31.371281],[121.334003,31.37262],[121.331389,31.37433],[121.328734,31.377344],[121.331306,31.378456],[121.330527,31.381135],[121.326607,31.381063],[121.323061,31.388489],[121.320419,31.389123],[121.323339,31.393331],[121.323145,31.395866],[121.321476,31.397576],[121.317444,31.39742],[121.314747,31.398365],[121.315637,31.402729],[121.317375,31.403661],[121.314316,31.4072],[121.32847,31.411958],[121.330444,31.410308],[121.333141,31.410739],[121.332488,31.413117],[121.334101,31.413655],[121.33239,31.416943],[121.336561,31.419058],[121.336422,31.424999],[121.335143,31.429158],[121.336645,31.429493],[121.336603,31.432254],[121.333656,31.440118],[121.331236,31.439652],[121.328261,31.441098],[121.326106,31.448041],[121.327399,31.448829],[121.324132,31.455007],[121.319794,31.454876],[121.318654,31.456895],[121.320531,31.457289],[121.317778,31.460109],[121.317277,31.466262],[121.320058,31.466728],[121.320572,31.469058],[121.317958,31.468472],[121.31426,31.472474],[121.318807,31.475055],[121.315956,31.481219],[121.313342,31.480598],[121.310214,31.487311],[121.308629,31.488649],[121.31027,31.489735],[121.309171,31.492495],[121.306544,31.493307],[121.304667,31.495779],[121.300857,31.496747],[121.299926,31.499756],[121.302595,31.502599],[121.305876,31.503435],[121.305529,31.505333],[121.310353,31.505919],[121.311938,31.502909],[121.315345,31.501273],[121.316652,31.505775],[121.320169,31.505883],[121.321879,31.503399],[121.32003,31.502993],[121.319905,31.49972],[121.323701,31.499649],[121.323131,31.502288],[121.327218,31.504247],[121.329512,31.504247],[121.335838,31.508295],[121.343499,31.512057],[121.357751,31.508259],[121.362255,31.50679],[121.376298,31.501106],[121.405426,31.487215],[121.406288,31.485388],[121.403966,31.481494],[121.404328,31.479212],[121.409694,31.476321],[121.41869,31.470682],[121.434276,31.458496],[121.446024,31.450717],[121.463696,31.438277],[121.481339,31.427294],[121.49427,31.417851],[121.505991,31.407021],[121.507228,31.409722],[121.501319,31.411982],[121.502362,31.413404],[121.510801,31.409973],[121.517239,31.406303],[121.516585,31.405287],[121.509425,31.408288],[121.507353,31.405933],[121.521229,31.39479],[121.512372,31.385858],[121.507284,31.379102],[121.503835,31.373744],[121.50346,31.369403],[121.503835,31.36493],[121.508424,31.357251],[121.514903,31.352],[121.525483,31.346797],[121.522883,31.342885],[121.520256,31.344033],[121.517628,31.340779],[121.50556,31.345732],[121.493575,31.330299],[121.497593,31.328109],[121.498928,31.325322],[121.496216,31.323347],[121.496717,31.311489],[121.485413,31.311573],[121.485372,31.314636],[121.479171,31.314696],[121.472956,31.315797],[121.468312,31.316036],[121.468145,31.32032],[121.465378,31.321397],[121.457133,31.321002],[121.4547,31.319243],[121.447887,31.317101],[121.44672,31.319817],[121.436765,31.319662],[121.436459,31.32087],[121.433595,31.32087],[121.432468,31.318669],[121.434623,31.312303],[121.432163,31.31168],[121.431676,31.309478],[121.432441,31.305912],[121.431287,31.303638],[121.426434,31.303207],[121.426935,31.298528],[121.42364,31.297259],[121.420039,31.296912],[121.418648,31.292256],[121.419691,31.291071],[121.423806,31.291011],[121.422833,31.28426],[121.424432,31.280238],[121.424571,31.27193],[121.425252,31.270661]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310114,\"name\":\"嘉定区\",\"center\":[121.250333,31.383524],\"centroid\":[121.244394,31.358136],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":9,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.336506,31.294901],[121.332891,31.292998],[121.33353,31.291107],[121.326384,31.288928],[121.327316,31.285182],[121.328998,31.284595],[121.332738,31.286067],[121.335004,31.279711],[121.336061,31.280046],[121.336228,31.275461],[121.338883,31.275006],[121.338272,31.272839],[121.343541,31.271439],[121.344723,31.273917],[121.35732,31.271415],[121.358918,31.268793],[121.361268,31.27084],[121.367441,31.269631],[121.366996,31.266662],[121.362227,31.26756],[121.35985,31.266997],[121.358918,31.263609],[121.361783,31.259945],[121.366023,31.259358],[121.365884,31.257682],[121.374574,31.257059],[121.375158,31.25949],[121.377508,31.259478],[121.380886,31.257766],[121.377216,31.247719],[121.375686,31.244486],[121.3731,31.245683],[121.372349,31.243755],[121.368387,31.247384],[121.366718,31.246342],[121.363117,31.240091],[121.36067,31.238642],[121.360086,31.240498],[121.356068,31.240151],[121.356054,31.237803],[121.354177,31.237121],[121.352856,31.238342],[121.348741,31.239372],[121.350131,31.241839],[121.348922,31.243863],[121.347281,31.243192],[121.346822,31.241037],[121.344612,31.243552],[121.345585,31.239887],[121.340872,31.239947],[121.338355,31.237528],[121.334935,31.235887],[121.333878,31.232006],[121.32612,31.229575],[121.322853,31.229623],[121.315386,31.227204],[121.302998,31.230605],[121.296922,31.231048],[121.29264,31.232761],[121.288538,31.238198],[121.287301,31.243276],[121.283742,31.245192],[121.28142,31.248174],[121.284228,31.251838],[121.280363,31.251886],[121.275302,31.253527],[121.271284,31.252258],[121.264444,31.256496],[121.263985,31.259155],[121.260217,31.258328],[121.254405,31.259634],[121.254183,31.258688],[121.246758,31.258448],[121.246577,31.259801],[121.242253,31.25937],[121.237693,31.262088],[121.235177,31.262699],[121.229087,31.262711],[121.229198,31.261717],[121.223539,31.260532],[121.223859,31.259035],[121.220216,31.257406],[121.221273,31.256293],[121.214182,31.254353],[121.212625,31.259837],[121.209761,31.260831],[121.209816,31.258017],[121.208482,31.25749],[121.206368,31.260065],[121.202865,31.257131],[121.203143,31.255814],[121.199848,31.255239],[121.19608,31.253395],[121.19626,31.251228],[121.193368,31.251455],[121.193021,31.253623],[121.188377,31.25476],[121.186444,31.252329],[121.183928,31.252246],[121.181537,31.254413],[121.17934,31.253419],[121.178798,31.255862],[121.176768,31.254605],[121.174251,31.256856],[121.171415,31.254928],[121.16894,31.256197],[121.170386,31.259119],[121.168036,31.259622],[121.167661,31.263944],[121.162614,31.269176],[121.161057,31.26762],[121.157845,31.270541],[121.155537,31.266147],[121.151783,31.267632],[121.153924,31.272061],[121.153743,31.276646],[121.155481,31.278442],[121.155537,31.280765],[121.159402,31.281579],[121.161293,31.283985],[121.159305,31.28766],[121.156399,31.287408],[121.154967,31.290209],[121.153145,31.28997],[121.151282,31.291933],[121.152714,31.294075],[121.148933,31.298875],[121.150782,31.299018],[121.146903,31.305936],[121.143774,31.309706],[121.13895,31.305625],[121.139645,31.302992],[121.133778,31.30207],[121.129954,31.302597],[121.129134,31.307528],[121.129773,31.308306],[121.127966,31.311884],[121.128633,31.314265],[121.127076,31.316934],[121.127257,31.319315],[121.131637,31.32324],[121.131539,31.325441],[121.133305,31.325585],[121.132582,31.331962],[121.13115,31.332106],[121.130121,31.334702],[121.130816,31.341509],[121.130441,31.344213],[121.123948,31.342753],[121.117969,31.343447],[121.11733,31.34712],[121.120194,31.347562],[121.117246,31.351689],[121.111838,31.350517],[121.111157,31.351534],[121.10832,31.350649],[121.108418,31.354034],[121.107361,31.354763],[121.108251,31.360457],[121.106749,31.364535],[121.106958,31.366593],[121.10889,31.366509],[121.10928,31.364703],[121.112853,31.365133],[121.113173,31.36688],[121.120208,31.368674],[121.119082,31.370563],[121.11523,31.371137],[121.113757,31.37445],[121.118206,31.375837],[121.12328,31.37848],[121.124268,31.376722],[121.131247,31.379664],[121.131762,31.378815],[121.138408,31.381147],[121.137518,31.382785],[121.141049,31.384531],[121.141425,31.38355],[121.148432,31.385404],[121.148988,31.38691],[121.147097,31.3899],[121.14383,31.392327],[121.149475,31.394503],[121.147653,31.397325],[121.152742,31.398174],[121.149586,31.399381],[121.15049,31.402215],[121.153896,31.403685],[121.153104,31.405837],[121.157887,31.407893],[121.15886,31.410117],[121.154508,31.411575],[121.155523,31.413835],[121.153493,31.413679],[121.148905,31.415867],[121.149266,31.41913],[121.146208,31.419704],[121.146249,31.421078],[121.151157,31.421796],[121.155273,31.42574],[121.161362,31.425776],[121.162002,31.427951],[121.16431,31.427222],[121.16253,31.429565],[121.162711,31.432218],[121.158484,31.432254],[121.152492,31.433604],[121.14782,31.436186],[121.146569,31.439006],[121.147348,31.44393],[121.160917,31.449678],[121.163045,31.448865],[121.166048,31.450168],[121.16773,31.448315],[121.16983,31.450024],[121.174974,31.449295],[121.180814,31.451458],[121.186055,31.454362],[121.185457,31.457468],[121.186055,31.460814],[121.195051,31.467827],[121.202906,31.469356],[121.203421,31.472331],[121.206368,31.474995],[121.214377,31.479128],[121.21503,31.477528],[121.21364,31.475939],[121.219062,31.475222],[121.220731,31.47607],[121.225361,31.476022],[121.226209,31.477683],[121.230352,31.477432],[121.230839,31.481111],[121.22867,31.482127],[121.232994,31.487896],[121.235413,31.488099],[121.234746,31.492686],[121.237234,31.491957],[121.240877,31.493701],[121.241141,31.490906],[121.243797,31.487311],[121.244409,31.481183],[121.248176,31.481876],[121.245813,31.479881],[121.247064,31.477062],[121.249692,31.477623],[121.251221,31.479606],[121.253362,31.479809],[121.253627,31.483082],[121.255643,31.483632],[121.254794,31.477635],[121.261454,31.478854],[121.261732,31.480777],[121.265153,31.48313],[121.267433,31.483357],[121.267322,31.486224],[121.268879,31.487466],[121.272049,31.484337],[121.27622,31.485376],[121.276442,31.486654],[121.280321,31.488672],[121.279696,31.490404],[121.283686,31.489795],[121.285355,31.490679],[121.289387,31.489031],[121.29061,31.491694],[121.293488,31.489807],[121.298605,31.491515],[121.298563,31.493713],[121.300496,31.494537],[121.300857,31.496747],[121.304667,31.495779],[121.306544,31.493307],[121.309171,31.492495],[121.31027,31.489735],[121.308629,31.488649],[121.310214,31.487311],[121.313342,31.480598],[121.315956,31.481219],[121.318807,31.475055],[121.31426,31.472474],[121.317958,31.468472],[121.320572,31.469058],[121.320058,31.466728],[121.317277,31.466262],[121.317778,31.460109],[121.320531,31.457289],[121.318654,31.456895],[121.319794,31.454876],[121.324132,31.455007],[121.327399,31.448829],[121.326106,31.448041],[121.328261,31.441098],[121.331236,31.439652],[121.333656,31.440118],[121.336603,31.432254],[121.336645,31.429493],[121.335143,31.429158],[121.336422,31.424999],[121.336561,31.419058],[121.33239,31.416943],[121.334101,31.413655],[121.332488,31.413117],[121.333141,31.410739],[121.330444,31.410308],[121.32847,31.411958],[121.314316,31.4072],[121.317375,31.403661],[121.315637,31.402729],[121.314747,31.398365],[121.317444,31.39742],[121.321476,31.397576],[121.323145,31.395866],[121.323339,31.393331],[121.320419,31.389123],[121.323061,31.388489],[121.326607,31.381063],[121.330527,31.381135],[121.331306,31.378456],[121.328734,31.377344],[121.331389,31.37433],[121.334003,31.37262],[121.333336,31.371281],[121.335991,31.370097],[121.335018,31.366963],[121.337576,31.364189],[121.338911,31.360995],[121.340329,31.360517],[121.341428,31.357802],[121.337118,31.356019],[121.337743,31.3534],[121.334643,31.3509],[121.332251,31.351307],[121.332502,31.347084],[121.336464,31.346821],[121.337521,31.344536],[121.338925,31.344775],[121.342401,31.341306],[121.344347,31.341928],[121.34628,31.336329],[121.342846,31.336066],[121.341692,31.33329],[121.342318,31.331005],[121.345932,31.32513],[121.347517,31.324077],[121.344848,31.323335],[121.345585,31.320835],[121.3492,31.321313],[121.347782,31.319542],[121.347698,31.316706],[121.343458,31.317185],[121.340357,31.311525],[121.338981,31.310101],[121.335686,31.303339],[121.331306,31.301436],[121.334198,31.296122],[121.33588,31.297044],[121.336506,31.294901]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310115,\"name\":\"浦东新区\",\"center\":[121.567706,31.245944],\"centroid\":[121.742177,31.083823],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":10,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.570475,30.998345],[121.567959,31.000879],[121.570712,31.002295],[121.570253,31.004565],[121.571463,31.005633],[121.569725,31.010603],[121.568181,31.010063],[121.565859,31.011912],[121.569822,31.012452],[121.571018,31.016426],[121.574674,31.018634],[121.574758,31.020951],[121.572325,31.026677],[121.56839,31.025284],[121.569057,31.024396],[121.564302,31.021191],[121.56027,31.024132],[121.558699,31.020255],[121.556474,31.020255],[121.556516,31.01873],[121.554139,31.01861],[121.552262,31.020915],[121.552804,31.023268],[121.555765,31.022908],[121.558407,31.024528],[121.558254,31.029533],[121.559505,31.030278],[121.559464,31.041391],[121.562119,31.043635],[121.559811,31.044812],[121.557031,31.04798],[121.556127,31.047632],[121.554737,31.050824],[121.552693,31.0493],[121.550538,31.049396],[121.54955,31.047908],[121.547799,31.048544],[121.54588,31.047044],[121.541472,31.046396],[121.542307,31.049072],[121.540791,31.052528],[121.54328,31.054016],[121.543308,31.055696],[121.548383,31.056896],[121.547201,31.061647],[121.548549,31.063639],[121.551094,31.063795],[121.551789,31.065643],[121.556753,31.06737],[121.55279,31.069506],[121.555599,31.071689],[121.559033,31.072169],[121.557531,31.073357],[121.562675,31.074305],[121.56262,31.075121],[121.567639,31.0762],[121.575272,31.080063],[121.572658,31.081323],[121.571643,31.080063],[121.569766,31.081611],[121.563579,31.082486],[121.561563,31.08365],[121.557031,31.082702],[121.556405,31.081059],[121.553555,31.080303],[121.550565,31.082834],[121.548549,31.086889],[121.551539,31.088148],[121.551608,31.090128],[121.559088,31.091951],[121.561563,31.09357],[121.561855,31.091867],[121.564358,31.091891],[121.567264,31.09363],[121.566819,31.096569],[121.563315,31.098955],[121.562064,31.101258],[121.563649,31.101858],[121.561132,31.105264],[121.561396,31.106224],[121.557851,31.109797],[121.559867,31.111896],[121.556697,31.113083],[121.555279,31.114882],[121.553332,31.112688],[121.552317,31.113899],[121.549217,31.113419],[121.550426,31.11162],[121.547687,31.109653],[121.544225,31.111464],[121.542251,31.116153],[121.539526,31.115626],[121.537885,31.113983],[121.535341,31.117976],[121.532254,31.117208],[121.53142,31.11842],[121.525289,31.116741],[121.522869,31.115242],[121.521424,31.116309],[121.514513,31.115278],[121.513749,31.118012],[121.511343,31.12119],[121.50549,31.120002],[121.503863,31.118324],[121.505295,31.115494],[121.501583,31.114666],[121.498538,31.121501],[121.49281,31.118719],[121.490266,31.124283],[121.485969,31.124523],[121.485705,31.121933],[121.48191,31.120086],[121.481256,31.118024],[121.477446,31.117328],[121.481353,31.110697],[121.477321,31.110853],[121.474137,31.114354],[121.473984,31.112915],[121.470286,31.110937],[121.465211,31.1121],[121.469299,31.118731],[121.469674,31.124859],[121.468729,31.127868],[121.462431,31.134463],[121.457453,31.142232],[121.457453,31.146451],[121.460387,31.150276],[121.46574,31.155118],[121.468354,31.158091],[121.469369,31.162298],[121.468159,31.167092],[121.464905,31.17541],[121.464905,31.178022],[121.466254,31.18109],[121.468729,31.184122],[121.475987,31.187885],[121.490752,31.191467],[121.494631,31.192857],[121.498066,31.195601],[121.501319,31.199747],[121.508368,31.210158],[121.509911,31.214506],[121.509397,31.218459],[121.506741,31.223119],[121.502014,31.228018],[121.495744,31.232977],[121.493491,31.23615],[121.493491,31.240163],[121.494826,31.24221],[121.500012,31.244989],[121.50688,31.246474],[121.516488,31.246953],[121.527555,31.247252],[121.536384,31.249623],[121.541542,31.251826],[121.559074,31.264219],[121.563537,31.268805],[121.568515,31.275701],[121.56953,31.279567],[121.569141,31.285254],[121.565456,31.294135],[121.562523,31.29976],[121.561758,31.303339],[121.561883,31.321158],[121.560493,31.32781],[121.558574,31.331256],[121.555779,31.333948],[121.549398,31.337789],[121.525483,31.346797],[121.514903,31.352],[121.508424,31.357251],[121.503835,31.36493],[121.50346,31.369403],[121.503835,31.373744],[121.507284,31.379102],[121.512372,31.385858],[121.521229,31.39479],[121.538011,31.388489],[121.559811,31.38361],[121.593708,31.376411],[121.603038,31.372656],[121.610559,31.368195],[121.689448,31.322462],[121.712431,31.309407],[121.722511,31.303518],[121.729101,31.298288],[121.743742,31.283207],[121.809812,31.196907],[121.853358,31.155346],[121.884029,31.130638],[121.889465,31.121705],[121.94679,31.065883],[121.962682,31.047284],[121.977558,31.016101],[121.990934,30.968432],[121.996231,30.935458],[121.998497,30.899961],[121.996982,30.874898],[121.993951,30.863055],[121.985372,30.850694],[121.970732,30.839077],[121.954715,30.825811],[121.954326,30.821409],[121.955466,30.817138],[121.969703,30.789202],[121.943689,30.777096],[121.9246,30.8066],[121.915284,30.812892],[121.904467,30.814155],[121.793767,30.816862],[121.769338,30.85043],[121.768143,30.863272],[121.771605,30.875427],[121.772481,30.875703],[121.773134,30.880596],[121.776679,30.881005],[121.776012,30.886426],[121.778807,30.894588],[121.778987,30.899468],[121.778334,30.903807],[121.77896,30.910116],[121.780239,30.911811],[121.781115,30.917567],[121.777653,30.926723],[121.777806,30.931025],[121.77337,30.931553],[121.773023,30.933932],[121.769769,30.935278],[121.76799,30.93833],[121.766432,30.936539],[121.763846,30.936852],[121.764277,30.938522],[121.761469,30.938414],[121.761677,30.940132],[121.764542,30.941766],[121.760927,30.944613],[121.761024,30.947604],[121.759286,30.949154],[121.751987,30.952721],[121.749234,30.953046],[121.747857,30.951893],[121.743742,30.956589],[121.739988,30.956721],[121.73686,30.958703],[121.737916,30.960637],[121.733954,30.964469],[121.73191,30.967784],[121.712792,30.980934],[121.705507,30.984981],[121.699459,30.987419],[121.69298,30.98934],[121.688086,30.990145],[121.683595,30.989808],[121.674558,30.991802],[121.673348,30.989832],[121.669525,30.991609],[121.663115,30.992714],[121.654536,30.993254],[121.646695,30.99335],[121.62057,30.992678],[121.61772,30.995692],[121.614717,31.001251],[121.604066,31.001131],[121.595585,31.002043],[121.594682,31.000699],[121.584309,31.000819],[121.582933,30.999498],[121.576746,30.999474],[121.570475,30.998345]]],[[[121.943244,31.215465],[121.946595,31.224365],[121.951044,31.228821],[121.957259,31.230414],[121.969188,31.230282],[121.980659,31.22809],[121.989655,31.224521],[122.008563,31.220987],[122.011038,31.217405],[122.012609,31.210002],[122.012011,31.192043],[122.010593,31.188004],[121.999554,31.165079],[121.99573,31.1608],[121.975862,31.158834],[121.970773,31.157552],[121.965685,31.15754],[121.959637,31.159278],[121.952629,31.1672],[121.948027,31.176405],[121.944843,31.186878],[121.942619,31.198465],[121.941826,31.207678],[121.943244,31.215465]]],[[[121.882625,31.240857],[121.88991,31.242594],[121.897363,31.242115],[121.915451,31.236558],[121.923557,31.233863],[121.926727,31.229731],[121.927519,31.224017],[121.925448,31.205438],[121.922445,31.196859],[121.918788,31.194319],[121.913852,31.19384],[121.908777,31.195266],[121.901645,31.20146],[121.889271,31.214997],[121.885155,31.22052],[121.882541,31.225611],[121.880873,31.23633],[121.882625,31.240857]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310116,\"name\":\"金山区\",\"center\":[121.330736,30.724697],\"centroid\":[121.255144,30.818932],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":11,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.99673,30.950307],[121.002055,30.95104],[121.002653,30.947015],[121.00763,30.947628],[121.010175,30.950727],[121.015361,30.948169],[121.013345,30.946811],[121.011079,30.947184],[121.011607,30.943604],[121.013831,30.944168],[121.015291,30.940288],[121.017697,30.939219],[121.016932,30.941333],[121.019462,30.941165],[121.028041,30.94394],[121.02989,30.944457],[121.029612,30.941874],[121.031851,30.939771],[121.031503,30.936083],[121.028694,30.92754],[121.028319,30.922602],[121.025872,30.91675],[121.024885,30.911618],[121.025288,30.909059],[121.034659,30.90615],[121.034395,30.902737],[121.038788,30.902148],[121.040332,30.904504],[121.040874,30.900706],[121.04232,30.899408],[121.045184,30.901896],[121.053026,30.903374],[121.056529,30.90335],[121.067944,30.904504],[121.068973,30.902124],[121.072491,30.903182],[121.072421,30.904924],[121.080833,30.905946],[121.081806,30.904251],[121.083725,30.905285],[121.091664,30.90341],[121.094347,30.904804],[121.09425,30.902545],[121.097128,30.903206],[121.098782,30.906607],[121.096196,30.910332],[121.093805,30.909708],[121.089092,30.911979],[121.089022,30.915296],[121.091358,30.916185],[121.100395,30.926459],[121.104358,30.922758],[121.105122,30.920138],[121.110962,30.921749],[121.114591,30.921676],[121.121445,30.919958],[121.119346,30.911991],[121.117802,30.910705],[121.113506,30.903602],[121.110851,30.90103],[121.111087,30.899228],[121.113451,30.897425],[121.118164,30.901487],[121.122224,30.901114],[121.123545,30.902857],[121.130163,30.902593],[121.131706,30.899732],[121.134417,30.901812],[121.141258,30.901331],[121.14098,30.904984],[121.139673,30.907388],[121.14009,30.910332],[121.13742,30.913349],[121.139061,30.91961],[121.143246,30.918108],[121.142162,30.915596],[121.149836,30.912616],[121.152895,30.9102],[121.156649,30.909972],[121.156288,30.912616],[121.156746,30.918961],[121.158206,30.920295],[121.164616,30.919934],[121.16691,30.916978],[121.171262,30.914683],[121.174654,30.915115],[121.186472,30.915404],[121.187765,30.916593],[121.194828,30.917314],[121.207522,30.919886],[121.211026,30.92128],[121.218145,30.927684],[121.222997,30.930748],[121.227335,30.926783],[121.234495,30.928562],[121.234773,30.925978],[121.238166,30.924861],[121.240655,30.925149],[121.242935,30.91991],[121.244589,30.920307],[121.245507,30.917074],[121.243686,30.917855],[121.246619,30.9099],[121.255226,30.909551],[121.255893,30.907977],[121.258952,30.907208],[121.262122,30.908097],[121.262525,30.906835],[121.266932,30.906258],[121.266168,30.901715],[121.269046,30.901679],[121.270422,30.900165],[121.27298,30.900405],[121.274663,30.896078],[121.279098,30.897112],[121.27964,30.894456],[121.282073,30.894804],[121.28231,30.896571],[121.285257,30.896631],[121.285799,30.895429],[121.288413,30.896066],[121.288719,30.899961],[121.290151,30.900021],[121.291013,30.902677],[121.290068,30.909804],[121.288705,30.909912],[121.288844,30.916894],[121.294948,30.918504],[121.294809,30.914947],[121.296269,30.914959],[121.29848,30.909744],[121.301775,30.908458],[121.303443,30.909287],[121.303721,30.912099],[121.306502,30.912123],[121.306808,30.910212],[121.313829,30.910717],[121.314608,30.909143],[121.320127,30.91109],[121.321518,30.908986],[121.325939,30.908962],[121.327635,30.91014],[121.331097,30.907508],[121.334657,30.907737],[121.336631,30.906739],[121.340162,30.908554],[121.343819,30.909119],[121.347573,30.913145],[121.350604,30.911402],[121.351814,30.913217],[121.35668,30.908614],[121.358418,30.900598],[121.360476,30.897785],[121.361185,30.892977],[121.36327,30.886955],[121.367233,30.886667],[121.370166,30.883914],[121.371751,30.883698],[121.377535,30.879983],[121.382207,30.878961],[121.381498,30.876605],[121.382791,30.874489],[121.38286,30.869043],[121.381873,30.867324],[121.381929,30.863765],[121.384001,30.863488],[121.383472,30.859232],[121.384376,30.856238],[121.383722,30.851765],[121.384918,30.848073],[121.385446,30.843178],[121.379065,30.843238],[121.379259,30.840112],[121.383764,30.833906],[121.387588,30.832799],[121.387588,30.829864],[121.391717,30.829913],[121.392051,30.82782],[121.396986,30.827988],[121.397376,30.833292],[121.399712,30.834182],[121.404202,30.833797],[121.403632,30.829877],[121.400685,30.830105],[121.400991,30.827399],[121.404786,30.823081],[121.41235,30.821505],[121.414171,30.821757],[121.41552,30.819941],[121.415131,30.815803],[121.419288,30.81602],[121.420525,30.819797],[121.425989,30.81869],[121.437029,30.818101],[121.441645,30.806829],[121.445427,30.804868],[121.44672,30.805577],[121.451711,30.798323],[121.465072,30.776483],[121.478767,30.756347],[121.426365,30.730283],[121.406997,30.718086],[121.361894,30.67952],[121.35433,30.676991],[121.346642,30.675593],[121.326718,30.67593],[121.291041,30.678328],[121.274649,30.6774],[121.271604,30.69689],[121.270422,30.69807],[121.270672,30.701563],[121.268656,30.702129],[121.268031,30.706103],[121.266668,30.706296],[121.265862,30.709488],[121.268448,30.712149],[121.267057,30.715039],[121.270339,30.716894],[121.270102,30.72047],[121.272035,30.723252],[121.270339,30.725864],[121.271451,30.726948],[121.269755,30.730729],[121.271451,30.73227],[121.26817,30.734931],[121.266835,30.733498],[121.261343,30.738217],[121.256393,30.743948],[121.244756,30.749185],[121.243102,30.750533],[121.23729,30.752651],[121.232298,30.755817],[121.230686,30.763737],[121.229115,30.767974],[121.226918,30.770826],[121.226209,30.775087],[121.224624,30.776976],[121.2234,30.775977],[121.217992,30.784954],[121.213723,30.785929],[121.205534,30.785905],[121.200098,30.783294],[121.199166,30.780755],[121.20032,30.773618],[121.196956,30.773354],[121.191839,30.778853],[121.190963,30.781092],[121.189517,30.778974],[121.186361,30.779034],[121.185791,30.776651],[121.183441,30.775038],[121.179965,30.774376],[121.174668,30.772018],[121.170984,30.774677],[121.170789,30.777084],[121.168968,30.775953],[121.163434,30.775279],[121.160737,30.773221],[121.160681,30.776579],[121.155815,30.777205],[121.152687,30.778974],[121.144122,30.779479],[121.140618,30.776928],[121.1387,30.77842],[121.13603,30.777337],[121.131817,30.777313],[121.127521,30.778673],[121.12342,30.77895],[121.117219,30.786073],[121.120041,30.788552],[121.125255,30.788179],[121.126576,30.788998],[121.126047,30.79304],[121.128202,30.810221],[121.130218,30.815574],[121.132373,30.819279],[121.13742,30.825029],[121.13742,30.829985],[121.136239,30.827868],[121.134264,30.828505],[121.132916,30.831608],[121.134612,30.833028],[121.131609,30.83601],[121.129982,30.834892],[121.127688,30.83565],[121.120639,30.836335],[121.117747,30.835301],[121.119832,30.83773],[121.12025,30.843299],[121.123545,30.847267],[121.121153,30.850165],[121.120055,30.849119],[121.114744,30.851476],[121.113159,30.854049],[121.110906,30.851416],[121.104789,30.849335],[121.102272,30.850261],[121.097684,30.854927],[121.097712,30.857103],[121.080471,30.848746],[121.066999,30.84877],[121.06052,30.845187],[121.061674,30.843383],[121.060228,30.842793],[121.062049,30.83779],[121.056335,30.835602],[121.046755,30.831091],[121.048896,30.825186],[121.045101,30.825907],[121.043516,30.828157],[121.039956,30.827218],[121.04175,30.825378],[121.040276,30.82438],[121.039192,30.820867],[121.03769,30.820266],[121.03908,30.818582],[121.043752,30.820013],[121.044976,30.815526],[121.037912,30.81389],[121.036647,30.818449],[121.030057,30.828553],[121.014874,30.833954],[121.014402,30.835818],[121.010898,30.834615],[121.006935,30.830779],[121.003446,30.826304],[121.00054,30.829431],[120.994603,30.821493],[120.990918,30.822708],[120.992754,30.825691],[120.989153,30.828698],[120.992462,30.831572],[120.989125,30.832318],[120.989987,30.834724],[120.992865,30.838392],[120.995659,30.838572],[120.997759,30.84408],[120.9999,30.843335],[121.000985,30.845632],[121.003974,30.846101],[121.006463,30.850454],[121.008006,30.850574],[121.010133,30.853135],[121.013359,30.851692],[121.015013,30.853604],[121.010981,30.856033],[121.015403,30.86053],[121.016265,30.862851],[121.013971,30.86439],[121.01778,30.86938],[121.014819,30.871027],[121.01778,30.873359],[121.020463,30.87188],[121.019796,30.873996],[121.021896,30.875162],[121.019421,30.876665],[121.021465,30.878793],[121.0186,30.880716],[121.017474,30.882724],[121.011092,30.882219],[121.008298,30.882964],[121.00852,30.888121],[121.005017,30.888794],[120.993824,30.88966],[120.992907,30.893915],[120.99046,30.89579],[120.992656,30.899732],[120.992809,30.90216],[120.995715,30.903723],[120.998635,30.903386],[120.998704,30.905946],[121.00257,30.904852],[121.004516,30.906955],[121.004572,30.909299],[120.998982,30.909527],[120.999622,30.91395],[121.000025,30.934701],[121.000818,30.937729],[120.997481,30.941141],[120.995673,30.944336],[120.996813,30.944625],[120.99673,30.950307]]],[[[121.426671,30.682183],[121.428589,30.681749],[121.426796,30.680315],[121.426671,30.682183]]],[[[121.422458,30.691482],[121.426615,30.691277],[121.428909,30.689109],[121.425364,30.687374],[121.419482,30.689856],[121.419469,30.691626],[121.422458,30.691482]]],[[[121.406775,30.704995],[121.409291,30.704514],[121.406622,30.703093],[121.406775,30.704995]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310117,\"name\":\"松江区\",\"center\":[121.223543,31.03047],\"centroid\":[121.220231,31.015194],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":12,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.323854,31.162933],[121.327218,31.156856],[121.328775,31.156665],[121.331528,31.15205],[121.331292,31.149772],[121.333711,31.148765],[121.335477,31.143862],[121.336728,31.14355],[121.338814,31.14017],[121.33677,31.138971],[121.342095,31.134655],[121.344681,31.130338],[121.344014,31.129451],[121.346002,31.126202],[121.34489,31.12577],[121.347545,31.121969],[121.346753,31.121657],[121.349589,31.117748],[121.353065,31.117604],[121.35066,31.115554],[121.353774,31.111512],[121.356026,31.112532],[121.357014,31.110529],[121.352217,31.106487],[121.351675,31.107735],[121.348532,31.106655],[121.351341,31.099255],[121.35839,31.100791],[121.359085,31.098931],[121.362756,31.099771],[121.368289,31.088976],[121.372016,31.079871],[121.370625,31.078372],[121.368804,31.079127],[121.365481,31.077892],[121.364341,31.073705],[121.362116,31.072601],[121.364424,31.069878],[121.363743,31.068354],[121.357278,31.066758],[121.358195,31.064047],[121.35344,31.061287],[121.343444,31.059139],[121.341456,31.062763],[121.335338,31.060435],[121.335102,31.04564],[121.33367,31.040695],[121.334017,31.031922],[121.333308,31.030686],[121.333892,31.026917],[121.333725,31.015657],[121.333072,31.01334],[121.339898,31.013857],[121.34279,31.014817],[121.34425,31.013941],[121.339829,31.010267],[121.33823,31.006197],[121.330347,30.996905],[121.327482,30.995896],[121.326773,30.994479],[121.326898,30.989964],[121.3258,30.9833],[121.327371,30.980658],[121.329554,30.981318],[121.334406,30.980694],[121.34375,30.976599],[121.351258,30.975986],[121.35871,30.97786],[121.359961,30.976251],[121.361435,30.970438],[121.36099,30.965574],[121.362853,30.959544],[121.363117,30.956109],[121.362255,30.9517],[121.362478,30.948901],[121.365467,30.947232],[121.363868,30.945165],[121.361129,30.944048],[121.362408,30.939122],[121.362658,30.934761],[121.359336,30.935086],[121.357361,30.933632],[121.354706,30.933512],[121.355679,30.932058],[121.35116,30.930628],[121.352203,30.928213],[121.352161,30.923803],[121.355373,30.921388],[121.356054,30.919742],[121.355081,30.916341],[121.351814,30.913217],[121.350604,30.911402],[121.347573,30.913145],[121.343819,30.909119],[121.340162,30.908554],[121.336631,30.906739],[121.334657,30.907737],[121.331097,30.907508],[121.327635,30.91014],[121.325939,30.908962],[121.321518,30.908986],[121.320127,30.91109],[121.314608,30.909143],[121.313829,30.910717],[121.306808,30.910212],[121.306502,30.912123],[121.303721,30.912099],[121.303443,30.909287],[121.301775,30.908458],[121.29848,30.909744],[121.296269,30.914959],[121.294809,30.914947],[121.294948,30.918504],[121.288844,30.916894],[121.288705,30.909912],[121.290068,30.909804],[121.291013,30.902677],[121.290151,30.900021],[121.288719,30.899961],[121.288413,30.896066],[121.285799,30.895429],[121.285257,30.896631],[121.28231,30.896571],[121.282073,30.894804],[121.27964,30.894456],[121.279098,30.897112],[121.274663,30.896078],[121.27298,30.900405],[121.270422,30.900165],[121.269046,30.901679],[121.266168,30.901715],[121.266932,30.906258],[121.262525,30.906835],[121.262122,30.908097],[121.258952,30.907208],[121.255893,30.907977],[121.255226,30.909551],[121.246619,30.9099],[121.243686,30.917855],[121.245507,30.917074],[121.244589,30.920307],[121.242935,30.91991],[121.240655,30.925149],[121.238166,30.924861],[121.234773,30.925978],[121.234495,30.928562],[121.227335,30.926783],[121.222997,30.930748],[121.218145,30.927684],[121.211026,30.92128],[121.207522,30.919886],[121.194828,30.917314],[121.187765,30.916593],[121.186472,30.915404],[121.174654,30.915115],[121.171262,30.914683],[121.16691,30.916978],[121.164616,30.919934],[121.158206,30.920295],[121.156746,30.918961],[121.156288,30.912616],[121.156649,30.909972],[121.152895,30.9102],[121.149836,30.912616],[121.142162,30.915596],[121.143246,30.918108],[121.139061,30.91961],[121.13742,30.913349],[121.14009,30.910332],[121.139673,30.907388],[121.14098,30.904984],[121.141258,30.901331],[121.134417,30.901812],[121.131706,30.899732],[121.130163,30.902593],[121.123545,30.902857],[121.122224,30.901114],[121.118164,30.901487],[121.113451,30.897425],[121.111087,30.899228],[121.110851,30.90103],[121.113506,30.903602],[121.117802,30.910705],[121.119346,30.911991],[121.121445,30.919958],[121.114591,30.921676],[121.110962,30.921749],[121.105122,30.920138],[121.104358,30.922758],[121.100395,30.926459],[121.091358,30.916185],[121.089022,30.915296],[121.089092,30.911979],[121.093805,30.909708],[121.096196,30.910332],[121.098782,30.906607],[121.097128,30.903206],[121.09425,30.902545],[121.094347,30.904804],[121.091664,30.90341],[121.083725,30.905285],[121.081806,30.904251],[121.080833,30.905946],[121.072421,30.904924],[121.072491,30.903182],[121.068973,30.902124],[121.067944,30.904504],[121.056529,30.90335],[121.053026,30.903374],[121.045184,30.901896],[121.04232,30.899408],[121.040874,30.900706],[121.040332,30.904504],[121.038788,30.902148],[121.034395,30.902737],[121.034659,30.90615],[121.025288,30.909059],[121.024885,30.911618],[121.025872,30.91675],[121.028319,30.922602],[121.028694,30.92754],[121.031503,30.936083],[121.031851,30.939771],[121.029612,30.941874],[121.02989,30.944457],[121.028041,30.94394],[121.027902,30.945826],[121.033213,30.947111],[121.034659,30.952974],[121.036258,30.957094],[121.040401,30.956493],[121.043516,30.957514],[121.042626,30.960433],[121.045949,30.963448],[121.043112,30.969429],[121.0467,30.970246],[121.047409,30.969033],[121.051024,30.969369],[121.053262,30.964445],[121.05735,30.965346],[121.056891,30.96191],[121.059505,30.959184],[121.060339,30.956517],[121.065344,30.95516],[121.07231,30.955088],[121.076495,30.955809],[121.076634,30.957574],[121.079109,30.958283],[121.078539,30.960025],[121.080736,30.960181],[121.081236,30.962283],[121.088174,30.962151],[121.088035,30.964168],[121.093555,30.964673],[121.097489,30.965634],[121.095779,30.968408],[121.095557,30.974245],[121.099172,30.973068],[121.099686,30.980994],[121.099227,30.981979],[121.100145,30.994935],[121.104107,30.99508],[121.104205,31.007998],[121.10205,31.011756],[121.093026,31.020207],[121.085532,31.0255],[121.089509,31.027901],[121.091177,31.025933],[121.096405,31.026437],[121.096975,31.031454],[121.099936,31.031202],[121.100284,31.03341],[121.097767,31.038871],[121.095863,31.040479],[121.09311,31.040719],[121.09621,31.044812],[121.090259,31.048136],[121.089926,31.05194],[121.087159,31.052948],[121.085866,31.050224],[121.082404,31.054208],[121.080972,31.056896],[121.08442,31.058779],[121.086519,31.061167],[121.085935,31.062847],[121.088202,31.064671],[121.092929,31.064539],[121.094542,31.061899],[121.093012,31.058443],[121.094639,31.056332],[121.098337,31.05662],[121.101146,31.053644],[121.101813,31.05728],[121.10839,31.057939],[121.10864,31.05662],[121.118206,31.056068],[121.117997,31.058407],[121.120708,31.057268],[121.12588,31.057376],[121.127757,31.059751],[121.126395,31.059811],[121.126228,31.06665],[121.122238,31.067178],[121.121543,31.07019],[121.118386,31.075948],[121.117121,31.075624],[121.112603,31.077628],[121.107264,31.082115],[121.102912,31.080219],[121.100687,31.080939],[121.099408,31.085941],[121.10084,31.088688],[121.097601,31.093534],[121.099519,31.094158],[121.099853,31.096593],[121.097976,31.099339],[121.100618,31.098428],[121.103843,31.100539],[121.103551,31.102638],[121.108751,31.107159],[121.112589,31.111932],[121.114368,31.109797],[121.11612,31.110973],[121.117733,31.108874],[121.120959,31.107747],[121.125505,31.103369],[121.127688,31.103309],[121.130691,31.100527],[121.131942,31.10205],[121.133319,31.099075],[121.135766,31.09808],[121.141605,31.09868],[121.141897,31.096893],[121.144483,31.097456],[121.14586,31.093954],[121.149461,31.095297],[121.151157,31.091651],[121.152867,31.092035],[121.153465,31.09014],[121.155161,31.090475],[121.155384,31.093162],[121.156733,31.09315],[121.156788,31.098943],[121.154341,31.098884],[121.154397,31.101846],[121.159569,31.100539],[121.165492,31.101438],[121.1652,31.104269],[121.166799,31.104293],[121.166451,31.10831],[121.170567,31.107819],[121.170497,31.109054],[121.174487,31.108538],[121.172986,31.114091],[121.17521,31.115242],[121.174321,31.117868],[121.17642,31.119007],[121.178839,31.117149],[121.183817,31.118695],[121.183858,31.124295],[121.181815,31.124295],[121.181842,31.126957],[121.180341,31.127425],[121.179868,31.131873],[121.181662,31.131777],[121.181968,31.143478],[121.194717,31.138179],[121.199653,31.139582],[121.201627,31.140937],[121.200348,31.137832],[121.206174,31.138299],[121.208287,31.135686],[121.22055,31.138383],[121.227988,31.139091],[121.226765,31.134139],[121.223581,31.126442],[121.221732,31.119931],[121.221301,31.115074],[121.224095,31.115146],[121.233884,31.117316],[121.235816,31.118959],[121.236831,31.125698],[121.239848,31.126238],[121.244534,31.125398],[121.245326,31.129295],[121.239348,31.129955],[121.245479,31.130758],[121.246995,31.134163],[121.25378,31.13264],[121.258048,31.132353],[121.257965,31.127077],[121.261607,31.127173],[121.26062,31.132269],[121.263623,31.135422],[121.26557,31.134787],[121.265737,31.136393],[121.280989,31.133252],[121.287482,31.139954],[121.284173,31.142627],[121.281781,31.142016],[121.279293,31.145708],[121.277012,31.144174],[121.276415,31.145852],[121.278723,31.14825],[121.277763,31.152265],[121.28028,31.150539],[121.283825,31.150839],[121.28313,31.152158],[121.285438,31.153452],[121.287134,31.152313],[121.295435,31.15392],[121.301441,31.15549],[121.316221,31.160189],[121.318056,31.157564],[121.320934,31.158487],[121.322491,31.162394],[121.323854,31.162933]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310118,\"name\":\"青浦区\",\"center\":[121.113021,31.151209],\"centroid\":[121.085182,31.124658],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":13,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.323854,31.162933],[121.322491,31.162394],[121.320934,31.158487],[121.318056,31.157564],[121.316221,31.160189],[121.301441,31.15549],[121.295435,31.15392],[121.287134,31.152313],[121.285438,31.153452],[121.28313,31.152158],[121.283825,31.150839],[121.28028,31.150539],[121.277763,31.152265],[121.278723,31.14825],[121.276415,31.145852],[121.277012,31.144174],[121.279293,31.145708],[121.281781,31.142016],[121.284173,31.142627],[121.287482,31.139954],[121.280989,31.133252],[121.265737,31.136393],[121.26557,31.134787],[121.263623,31.135422],[121.26062,31.132269],[121.261607,31.127173],[121.257965,31.127077],[121.258048,31.132353],[121.25378,31.13264],[121.246995,31.134163],[121.245479,31.130758],[121.239348,31.129955],[121.245326,31.129295],[121.244534,31.125398],[121.239848,31.126238],[121.236831,31.125698],[121.235816,31.118959],[121.233884,31.117316],[121.224095,31.115146],[121.221301,31.115074],[121.221732,31.119931],[121.223581,31.126442],[121.226765,31.134139],[121.227988,31.139091],[121.22055,31.138383],[121.208287,31.135686],[121.206174,31.138299],[121.200348,31.137832],[121.201627,31.140937],[121.199653,31.139582],[121.194717,31.138179],[121.181968,31.143478],[121.181662,31.131777],[121.179868,31.131873],[121.180341,31.127425],[121.181842,31.126957],[121.181815,31.124295],[121.183858,31.124295],[121.183817,31.118695],[121.178839,31.117149],[121.17642,31.119007],[121.174321,31.117868],[121.17521,31.115242],[121.172986,31.114091],[121.174487,31.108538],[121.170497,31.109054],[121.170567,31.107819],[121.166451,31.10831],[121.166799,31.104293],[121.1652,31.104269],[121.165492,31.101438],[121.159569,31.100539],[121.154397,31.101846],[121.154341,31.098884],[121.156788,31.098943],[121.156733,31.09315],[121.155384,31.093162],[121.155161,31.090475],[121.153465,31.09014],[121.152867,31.092035],[121.151157,31.091651],[121.149461,31.095297],[121.14586,31.093954],[121.144483,31.097456],[121.141897,31.096893],[121.141605,31.09868],[121.135766,31.09808],[121.133319,31.099075],[121.131942,31.10205],[121.130691,31.100527],[121.127688,31.103309],[121.125505,31.103369],[121.120959,31.107747],[121.117733,31.108874],[121.11612,31.110973],[121.114368,31.109797],[121.112589,31.111932],[121.108751,31.107159],[121.103551,31.102638],[121.103843,31.100539],[121.100618,31.098428],[121.097976,31.099339],[121.099853,31.096593],[121.099519,31.094158],[121.097601,31.093534],[121.10084,31.088688],[121.099408,31.085941],[121.100687,31.080939],[121.102912,31.080219],[121.107264,31.082115],[121.112603,31.077628],[121.117121,31.075624],[121.118386,31.075948],[121.121543,31.07019],[121.122238,31.067178],[121.126228,31.06665],[121.126395,31.059811],[121.127757,31.059751],[121.12588,31.057376],[121.120708,31.057268],[121.117997,31.058407],[121.118206,31.056068],[121.10864,31.05662],[121.10839,31.057939],[121.101813,31.05728],[121.101146,31.053644],[121.098337,31.05662],[121.094639,31.056332],[121.093012,31.058443],[121.094542,31.061899],[121.092929,31.064539],[121.088202,31.064671],[121.085935,31.062847],[121.086519,31.061167],[121.08442,31.058779],[121.080972,31.056896],[121.082404,31.054208],[121.085866,31.050224],[121.087159,31.052948],[121.089926,31.05194],[121.090259,31.048136],[121.09621,31.044812],[121.09311,31.040719],[121.095863,31.040479],[121.097767,31.038871],[121.100284,31.03341],[121.099936,31.031202],[121.096975,31.031454],[121.096405,31.026437],[121.091177,31.025933],[121.089509,31.027901],[121.085532,31.0255],[121.093026,31.020207],[121.10205,31.011756],[121.104205,31.007998],[121.104107,30.99508],[121.100145,30.994935],[121.099227,30.981979],[121.099686,30.980994],[121.099172,30.973068],[121.095557,30.974245],[121.095779,30.968408],[121.097489,30.965634],[121.093555,30.964673],[121.088035,30.964168],[121.088174,30.962151],[121.081236,30.962283],[121.080736,30.960181],[121.078539,30.960025],[121.079109,30.958283],[121.076634,30.957574],[121.076495,30.955809],[121.07231,30.955088],[121.065344,30.95516],[121.060339,30.956517],[121.059505,30.959184],[121.056891,30.96191],[121.05735,30.965346],[121.053262,30.964445],[121.051024,30.969369],[121.047409,30.969033],[121.0467,30.970246],[121.043112,30.969429],[121.045949,30.963448],[121.042626,30.960433],[121.043516,30.957514],[121.040401,30.956493],[121.036258,30.957094],[121.034659,30.952974],[121.033213,30.947111],[121.027902,30.945826],[121.028041,30.94394],[121.019462,30.941165],[121.016932,30.941333],[121.017697,30.939219],[121.015291,30.940288],[121.013831,30.944168],[121.011607,30.943604],[121.011079,30.947184],[121.013345,30.946811],[121.015361,30.948169],[121.010175,30.950727],[121.00763,30.947628],[121.002653,30.947015],[121.002055,30.95104],[120.99673,30.950307],[120.995368,30.950367],[120.994797,30.954824],[120.992531,30.955028],[120.991683,30.958211],[120.994756,30.958703],[120.992601,30.962835],[120.993699,30.964024],[120.991433,30.968372],[120.993143,30.972119],[120.99737,30.972444],[121.000512,30.973933],[121.000567,30.977007],[121.002361,30.97762],[121.000832,30.980466],[120.999344,30.980106],[120.997133,30.989232],[120.994603,30.991922],[120.994839,30.99526],[120.990515,30.994551],[120.989834,30.996664],[120.992045,30.997109],[120.992086,31.003424],[120.991057,31.00747],[120.991933,31.008154],[120.989987,31.010495],[120.989514,31.014397],[120.983855,31.014445],[120.982993,31.016089],[120.970202,31.016149],[120.963209,31.016594],[120.964849,31.019751],[120.964293,31.020771],[120.960483,31.021659],[120.958301,31.028573],[120.952197,31.030254],[120.951085,31.029077],[120.949124,31.029953],[120.948735,31.025068],[120.951168,31.024012],[120.949972,31.017638],[120.936305,31.01711],[120.935749,31.015381],[120.940087,31.010027],[120.938085,31.009007],[120.933789,31.010027],[120.931383,31.01178],[120.92699,31.012068],[120.926155,31.010423],[120.918105,31.012788],[120.911014,31.010555],[120.909944,31.012644],[120.910055,31.016942],[120.901365,31.017494],[120.900559,31.020423],[120.901338,31.0255],[120.901977,31.037647],[120.899739,31.039603],[120.897027,31.04558],[120.897208,31.04822],[120.895442,31.050332],[120.894567,31.053896],[120.894622,31.058659],[120.895915,31.063075],[120.898863,31.070514],[120.899614,31.07836],[120.904619,31.078528],[120.90473,31.080495],[120.901671,31.084094],[120.902116,31.085653],[120.899294,31.086937],[120.896694,31.086649],[120.895415,31.090703],[120.892175,31.094194],[120.892842,31.096533],[120.891216,31.09718],[120.891021,31.094302],[120.887476,31.094074],[120.878077,31.095753],[120.878967,31.09838],[120.876005,31.097864],[120.876631,31.099939],[120.873169,31.100323],[120.872543,31.098884],[120.869818,31.098943],[120.869582,31.097216],[120.865744,31.097624],[120.863993,31.100299],[120.859766,31.100287],[120.856804,31.102829],[120.857917,31.108526],[120.860225,31.10933],[120.862241,31.112508],[120.865967,31.11475],[120.870597,31.119715],[120.871014,31.123804],[120.872349,31.127161],[120.876422,31.131489],[120.881289,31.134727],[120.89921,31.136057],[120.905397,31.134211],[120.916923,31.136189],[120.93034,31.141404],[120.952642,31.138251],[120.983911,31.131705],[120.991252,31.13318],[121.007269,31.13342],[121.018489,31.134103],[121.022813,31.138311],[121.022271,31.140457],[121.025677,31.140769],[121.02672,31.143766],[121.028375,31.143874],[121.028778,31.141249],[121.033088,31.142208],[121.036119,31.140325],[121.036258,31.137376],[121.038649,31.136909],[121.041819,31.138899],[121.044781,31.145528],[121.041541,31.146931],[121.041472,31.14982],[121.045254,31.151582],[121.04542,31.154028],[121.049133,31.154615],[121.050273,31.150719],[121.055834,31.150659],[121.057378,31.152781],[121.062564,31.153129],[121.064135,31.150839],[121.066067,31.150947],[121.06572,31.148597],[121.069126,31.148705],[121.067777,31.152289],[121.072046,31.153512],[121.073839,31.157072],[121.077023,31.158451],[121.07605,31.160536],[121.076787,31.162622],[121.0737,31.161711],[121.07313,31.163257],[121.077371,31.16454],[121.075466,31.170316],[121.072379,31.169609],[121.072532,31.172701],[121.075424,31.173444],[121.074229,31.176225],[121.071406,31.179472],[121.071225,31.181462],[121.075591,31.182852],[121.074993,31.184386],[121.069474,31.182888],[121.068751,31.184889],[121.071684,31.185955],[121.07035,31.188735],[121.070614,31.1913],[121.07256,31.191527],[121.072185,31.193169],[121.070113,31.193612],[121.069599,31.195314],[121.06679,31.194966],[121.066609,31.197183],[121.069209,31.196524],[121.067805,31.201005],[121.065608,31.211871],[121.062633,31.224664],[121.0628,31.226964],[121.064719,31.227275],[121.064649,31.230785],[121.06718,31.230917],[121.067388,31.232929],[121.06458,31.232965],[121.062605,31.234689],[121.061243,31.237827],[121.063898,31.238438],[121.063565,31.242222],[121.064343,31.246138],[121.061646,31.24524],[121.057669,31.246749],[121.060979,31.246486],[121.061952,31.257945],[121.063245,31.267907],[121.068695,31.268098],[121.072741,31.26914],[121.080416,31.270158],[121.082154,31.271535],[121.084545,31.275713],[121.081361,31.277257],[121.084698,31.2876],[121.087326,31.290664],[121.086909,31.291717],[121.090134,31.291909],[121.093096,31.28821],[121.095404,31.287001],[121.09881,31.276251],[121.105442,31.273654],[121.103829,31.27533],[121.106666,31.276706],[121.111115,31.281746],[121.114994,31.285265],[121.117719,31.285684],[121.131053,31.280106],[121.131678,31.281363],[121.138032,31.278753],[121.137601,31.277592],[121.140535,31.276491],[121.142885,31.277664],[121.142996,31.275473],[121.150392,31.275437],[121.153743,31.276646],[121.153924,31.272061],[121.151783,31.267632],[121.155537,31.266147],[121.157845,31.270541],[121.161057,31.26762],[121.162614,31.269176],[121.167661,31.263944],[121.168036,31.259622],[121.170386,31.259119],[121.16894,31.256197],[121.171415,31.254928],[121.174251,31.256856],[121.176768,31.254605],[121.178798,31.255862],[121.17934,31.253419],[121.181537,31.254413],[121.183928,31.252246],[121.186444,31.252329],[121.188377,31.25476],[121.193021,31.253623],[121.193368,31.251455],[121.19626,31.251228],[121.19608,31.253395],[121.199848,31.255239],[121.203143,31.255814],[121.202865,31.257131],[121.206368,31.260065],[121.208482,31.25749],[121.209816,31.258017],[121.209761,31.260831],[121.212625,31.259837],[121.214182,31.254353],[121.221273,31.256293],[121.220216,31.257406],[121.223859,31.259035],[121.223539,31.260532],[121.229198,31.261717],[121.229087,31.262711],[121.235177,31.262699],[121.237693,31.262088],[121.242253,31.25937],[121.246577,31.259801],[121.246758,31.258448],[121.254183,31.258688],[121.247314,31.253287],[121.24591,31.248821],[121.241683,31.247348],[121.239932,31.241061],[121.241391,31.240222],[121.247912,31.240917],[121.249692,31.236534],[121.251082,31.238198],[121.252792,31.236965],[121.254155,31.23312],[121.257158,31.230701],[121.258006,31.226868],[121.256588,31.226329],[121.258215,31.222772],[121.25745,31.220208],[121.259675,31.218148],[121.261218,31.215081],[121.259397,31.212769],[121.263846,31.208912],[121.26468,31.206731],[121.263053,31.205701],[121.264777,31.203317],[121.266724,31.203257],[121.271701,31.198309],[121.277388,31.193576],[121.284034,31.194391],[121.287329,31.196332],[121.292126,31.200621],[121.292431,31.202514],[121.294837,31.203077],[121.297506,31.201412],[121.300565,31.197027],[121.30856,31.188388],[121.310784,31.18423],[121.316304,31.176836],[121.318042,31.173624],[121.318584,31.170256],[121.323854,31.162933]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310120,\"name\":\"奉贤区\",\"center\":[121.458472,30.912345],\"centroid\":[121.56251,30.897998],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":14,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.570475,30.998345],[121.576746,30.999474],[121.582933,30.999498],[121.584309,31.000819],[121.594682,31.000699],[121.595585,31.002043],[121.604066,31.001131],[121.614717,31.001251],[121.61772,30.995692],[121.62057,30.992678],[121.646695,30.99335],[121.654536,30.993254],[121.663115,30.992714],[121.669525,30.991609],[121.673348,30.989832],[121.674558,30.991802],[121.683595,30.989808],[121.688086,30.990145],[121.69298,30.98934],[121.699459,30.987419],[121.705507,30.984981],[121.712792,30.980934],[121.73191,30.967784],[121.733954,30.964469],[121.737916,30.960637],[121.73686,30.958703],[121.739988,30.956721],[121.743742,30.956589],[121.747857,30.951893],[121.749234,30.953046],[121.751987,30.952721],[121.759286,30.949154],[121.761024,30.947604],[121.760927,30.944613],[121.764542,30.941766],[121.761677,30.940132],[121.761469,30.938414],[121.764277,30.938522],[121.763846,30.936852],[121.766432,30.936539],[121.76799,30.93833],[121.769769,30.935278],[121.773023,30.933932],[121.77337,30.931553],[121.777806,30.931025],[121.777653,30.926723],[121.781115,30.917567],[121.780239,30.911811],[121.77896,30.910116],[121.778334,30.903807],[121.778987,30.899468],[121.778807,30.894588],[121.776012,30.886426],[121.776679,30.881005],[121.773134,30.880596],[121.772481,30.875703],[121.771605,30.875427],[121.768143,30.863272],[121.769338,30.85043],[121.793767,30.816862],[121.77914,30.817222],[121.727071,30.817716],[121.68119,30.818401],[121.648419,30.8162],[121.601327,30.805084],[121.552832,30.789395],[121.517197,30.775387],[121.478767,30.756347],[121.465072,30.776483],[121.451711,30.798323],[121.44672,30.805577],[121.445427,30.804868],[121.441645,30.806829],[121.437029,30.818101],[121.425989,30.81869],[121.420525,30.819797],[121.419288,30.81602],[121.415131,30.815803],[121.41552,30.819941],[121.414171,30.821757],[121.41235,30.821505],[121.404786,30.823081],[121.400991,30.827399],[121.400685,30.830105],[121.403632,30.829877],[121.404202,30.833797],[121.399712,30.834182],[121.397376,30.833292],[121.396986,30.827988],[121.392051,30.82782],[121.391717,30.829913],[121.387588,30.829864],[121.387588,30.832799],[121.383764,30.833906],[121.379259,30.840112],[121.379065,30.843238],[121.385446,30.843178],[121.384918,30.848073],[121.383722,30.851765],[121.384376,30.856238],[121.383472,30.859232],[121.384001,30.863488],[121.381929,30.863765],[121.381873,30.867324],[121.38286,30.869043],[121.382791,30.874489],[121.381498,30.876605],[121.382207,30.878961],[121.377535,30.879983],[121.371751,30.883698],[121.370166,30.883914],[121.367233,30.886667],[121.36327,30.886955],[121.361185,30.892977],[121.360476,30.897785],[121.358418,30.900598],[121.35668,30.908614],[121.351814,30.913217],[121.355081,30.916341],[121.356054,30.919742],[121.355373,30.921388],[121.352161,30.923803],[121.352203,30.928213],[121.35116,30.930628],[121.355679,30.932058],[121.354706,30.933512],[121.357361,30.933632],[121.359336,30.935086],[121.362658,30.934761],[121.362408,30.939122],[121.361129,30.944048],[121.363868,30.945165],[121.365467,30.947232],[121.362478,30.948901],[121.362255,30.9517],[121.363117,30.956109],[121.362853,30.959544],[121.36099,30.965574],[121.361435,30.970438],[121.359961,30.976251],[121.35871,30.97786],[121.375227,30.982832],[121.394261,30.988247],[121.409333,30.990229],[121.413184,30.991069],[121.423973,30.994515],[121.431426,30.999174],[121.433636,31.001779],[121.436834,31.00406],[121.440811,31.005789],[121.448305,31.007458],[121.459942,31.007398],[121.465587,31.008755],[121.47144,31.011948],[121.476362,31.01334],[121.485872,31.014073],[121.489153,31.014949],[121.492879,31.012752],[121.491948,31.010039],[121.495924,30.998297],[121.498872,30.998213],[121.49883,30.999426],[121.503057,31.002716],[121.507881,31.004745],[121.510412,31.004553],[121.517002,31.007626],[121.520853,31.004445],[121.522105,31.002199],[121.520089,31.00256],[121.520325,30.999354],[121.522897,30.99981],[121.528612,30.99592],[121.531962,30.994815],[121.534507,30.995848],[121.537774,30.994683],[121.538233,30.993146],[121.543294,30.994203],[121.54613,30.99305],[121.549537,30.988307],[121.55279,30.98886],[121.553304,30.993026],[121.556224,30.993374],[121.555918,30.995152],[121.561494,30.995644],[121.570475,30.998345]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":310151,\"name\":\"崇明区\",\"center\":[121.397516,31.626946],\"centroid\":[121.568484,31.635916],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":310000},\"subFeatureIndex\":15,\"acroutes\":[100000,310000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[121.975181,31.617034],[121.98825,31.529597],[121.993867,31.51189],[121.995716,31.493104],[121.991698,31.476763],[121.981813,31.4641],[121.967284,31.456656],[121.934304,31.442364],[121.918051,31.434692],[121.901144,31.430126],[121.89055,31.428788],[121.882096,31.428656],[121.87299,31.429338],[121.857807,31.430043],[121.845377,31.431895],[121.834212,31.433975],[121.819183,31.438206],[121.763443,31.458233],[121.72988,31.471973],[121.682858,31.491061],[121.670609,31.494214],[121.638645,31.49972],[121.625784,31.501775],[121.617678,31.503673],[121.608794,31.50691],[121.547673,31.531125],[121.471176,31.57443],[121.43422,31.590336],[121.414797,31.591076],[121.403521,31.590002],[121.395457,31.585444],[121.37221,31.55321],[121.345585,31.571685],[121.289109,31.616283],[121.179868,31.720774],[121.145332,31.753927],[121.142064,31.755308],[121.118498,31.759084],[121.149225,31.787294],[121.181509,31.820411],[121.200334,31.835144],[121.225305,31.847043],[121.242073,31.853397],[121.252111,31.857727],[121.265584,31.864128],[121.281336,31.869041],[121.291166,31.870992],[121.3019,31.872716],[121.310367,31.872502],[121.315859,31.871479],[121.323061,31.868529],[121.369291,31.843283],[121.376381,31.838571],[121.385043,31.833525],[121.395388,31.821291],[121.399142,31.817483],[121.405468,31.809841],[121.411488,31.806341],[121.416312,31.79764],[121.410904,31.79558],[121.420915,31.779602],[121.425781,31.774267],[121.431481,31.769266],[121.445385,31.7643],[121.449751,31.761668],[121.455576,31.759346],[121.464141,31.757142],[121.476807,31.756142],[121.487749,31.753415],[121.498566,31.75326],[121.51304,31.743695],[121.514986,31.742873],[121.526693,31.740217],[121.528361,31.738347],[121.539429,31.735499],[121.540124,31.733307],[121.549509,31.726969],[121.551386,31.727386],[121.565025,31.716711],[121.578539,31.710527],[121.592262,31.706487],[121.593249,31.705379],[121.599659,31.703115],[121.60091,31.707],[121.602746,31.70694],[121.611755,31.704283],[121.627341,31.697776],[121.633278,31.696167],[121.642649,31.697454],[121.715267,31.673842],[121.817806,31.652025],[121.887616,31.63638],[121.975181,31.617034]]],[[[121.778862,31.310196],[121.770951,31.31168],[121.76425,31.315306],[121.76076,31.320344],[121.751166,31.337801],[121.744659,31.343675],[121.740766,31.346486],[121.727933,31.354799],[121.686682,31.376591],[121.641036,31.401115],[121.601425,31.421855],[121.590371,31.427545],[121.572255,31.436066],[121.558463,31.448793],[121.549773,31.457062],[121.54328,31.462403],[121.537413,31.466704],[121.529515,31.471172],[121.516849,31.477313],[121.510134,31.482581],[121.509105,31.485352],[121.509355,31.489795],[121.513457,31.493355],[121.516933,31.494298],[121.521132,31.493976],[121.549926,31.489747],[121.562356,31.486367],[121.567347,31.4835],[121.572811,31.469452],[121.575828,31.463813],[121.58303,31.456262],[121.585561,31.454672],[121.599812,31.450681],[121.606319,31.449403],[121.621752,31.444145],[121.673835,31.427748],[121.688294,31.425883],[121.697193,31.423995],[121.708316,31.419728],[121.723707,31.412364],[121.729296,31.410356],[121.737485,31.408814],[121.742185,31.407212],[121.753725,31.400362],[121.760857,31.395185],[121.76938,31.390749],[121.774135,31.386982],[121.780572,31.380154],[121.787886,31.37164],[121.790875,31.367059],[121.792377,31.363304],[121.793002,31.355074],[121.796005,31.345624],[121.796478,31.33542],[121.795866,31.329976],[121.794073,31.319542],[121.790986,31.314313],[121.7879,31.312003],[121.782004,31.310328],[121.778862,31.310196]]],[[[122.242018,31.419082],[122.245369,31.421318],[122.247149,31.419333],[122.243562,31.417839],[122.242018,31.419082]]],[[[121.801775,31.356976],[121.800566,31.363997],[121.797674,31.369642],[121.792808,31.377571],[121.793864,31.380477],[121.796756,31.381075],[121.803458,31.381219],[121.817445,31.380585],[121.824744,31.378588],[121.828401,31.376447],[121.831752,31.375526],[121.845586,31.374582],[121.852885,31.371376],[121.858516,31.369379],[121.870376,31.366007],[121.913074,31.350445],[121.951726,31.337274],[122.001556,31.329246],[122.04107,31.323814],[122.078012,31.323527],[122.116678,31.321229],[122.121975,31.315438],[122.122684,31.307205],[122.105207,31.262136],[122.097769,31.255658],[122.087285,31.257538],[122.072005,31.266829],[122.016447,31.282285],[121.975779,31.279998],[121.932261,31.283147],[121.900755,31.291167],[121.88959,31.292028],[121.865968,31.294937],[121.860782,31.294949],[121.856681,31.292818],[121.852885,31.292364],[121.840566,31.29544],[121.833601,31.299653],[121.832043,31.301711],[121.822617,31.307372],[121.81319,31.316228],[121.806642,31.324173],[121.80375,31.328445],[121.803152,31.332106],[121.802693,31.342789],[121.801775,31.356976]]],[[[121.627049,31.444993],[121.616872,31.446643],[121.613855,31.447885],[121.594153,31.458568],[121.58627,31.464076],[121.577886,31.472486],[121.57612,31.474768],[121.575814,31.478197],[121.577149,31.479343],[121.586896,31.479535],[121.595293,31.478292],[121.602134,31.476835],[121.608571,31.474446],[121.61366,31.471339],[121.625172,31.462212],[121.631609,31.456823],[121.635044,31.452988],[121.636295,31.449881],[121.634001,31.445937],[121.631512,31.445101],[121.627049,31.444993]]]]}}]}', 'admin', '2020-12-07 19:24:11', NULL, '2020-12-07 19:24:11', '0', NULL); +INSERT INTO `jimu_report_map` VALUES ('1336859680042913794', '北京', 'beijing', '{\"type\":\"FeatureCollection\",\"features\":[{\"type\":\"Feature\",\"properties\":{\"adcode\":110101,\"name\":\"东城区\",\"center\":[116.418757,39.917544],\"centroid\":[116.416739,39.912912],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":0,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.387658,39.96093],[116.389498,39.96314],[116.40788,39.962182],[116.407504,39.973995],[116.411101,39.97146],[116.411415,39.964928],[116.414196,39.962182],[116.424861,39.962279],[116.429002,39.957274],[116.429483,39.950155],[116.436698,39.949245],[116.435422,39.952121],[116.442239,39.9497],[116.440566,39.945295],[116.446338,39.946205],[116.443703,39.936663],[116.443682,39.928664],[116.434314,39.92868],[116.434983,39.913964],[116.436488,39.902042],[116.448722,39.903246],[116.446819,39.900042],[116.447154,39.894186],[116.450876,39.894088],[116.450939,39.890249],[116.444059,39.890038],[116.445648,39.879283],[116.44364,39.87284],[116.442574,39.87188],[116.423209,39.872824],[116.413652,39.871148],[116.41589,39.863645],[116.41246,39.858942],[116.406856,39.859967],[116.3955,39.858682],[116.394956,39.862734],[116.387888,39.867372],[116.380632,39.866054],[116.38059,39.871148],[116.399097,39.872205],[116.397612,39.898675],[116.396086,39.89944],[116.395563,39.907995],[116.392259,39.907881],[116.392175,39.92242],[116.399474,39.923574],[116.396692,39.928306],[116.396169,39.94006],[116.394266,39.940629],[116.393723,39.957371],[116.38678,39.957014],[116.387658,39.96093]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110102,\"name\":\"西城区\",\"center\":[116.366794,39.915309],\"centroid\":[116.365684,39.912236],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":1,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.380903,39.972712],[116.394099,39.972858],[116.394162,39.969397],[116.390084,39.968406],[116.387658,39.96093],[116.38678,39.957014],[116.393723,39.957371],[116.394266,39.940629],[116.396169,39.94006],[116.396692,39.928306],[116.399474,39.923574],[116.392175,39.92242],[116.392259,39.907881],[116.395563,39.907995],[116.396086,39.89944],[116.397612,39.898675],[116.399097,39.872205],[116.38059,39.871148],[116.35058,39.86869],[116.349472,39.873588],[116.344286,39.873653],[116.341567,39.876159],[116.335273,39.875183],[116.326636,39.876859],[116.321345,39.875004],[116.325799,39.896789],[116.337301,39.89739],[116.335356,39.898448],[116.334645,39.922664],[116.333056,39.938565],[116.327953,39.942369],[116.332889,39.944092],[116.341442,39.941979],[116.35171,39.94375],[116.351814,39.950854],[116.355265,39.951796],[116.35698,39.944466],[116.371974,39.948594],[116.370384,39.967902],[116.380401,39.968178],[116.380903,39.972712]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110105,\"name\":\"朝阳区\",\"center\":[116.486409,39.921489],\"centroid\":[116.513687,39.951064],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":2,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.595548,40.01751],[116.60132,40.013873],[116.61989,40.011794],[116.628129,40.007653],[116.625766,40.003122],[116.63273,39.999825],[116.637582,40.002359],[116.642684,39.996755],[116.643751,39.989608],[116.640321,39.990177],[116.639129,39.986879],[116.63365,39.986197],[116.634026,39.981696],[116.639819,39.982606],[116.641827,39.969575],[116.643081,39.952983],[116.645277,39.945977],[116.632228,39.950545],[116.630492,39.946156],[116.633441,39.940906],[116.629677,39.938727],[116.6293,39.931314],[116.624156,39.929981],[116.630576,39.921672],[116.620956,39.923103],[116.623006,39.913818],[116.620245,39.90767],[116.623361,39.904271],[116.621019,39.898854],[116.61531,39.895503],[116.615603,39.889794],[116.627585,39.890477],[116.628987,39.881594],[116.624323,39.881155],[116.62493,39.87725],[116.619994,39.868951],[116.626958,39.860683],[116.613449,39.850185],[116.604185,39.850071],[116.604666,39.846132],[116.608367,39.846539],[116.601905,39.840727],[116.60224,39.831675],[116.598977,39.831659],[116.599228,39.825585],[116.59147,39.826367],[116.591595,39.823875],[116.583732,39.824917],[116.587015,39.828223],[116.577479,39.827539],[116.577145,39.830682],[116.569386,39.833498],[116.558596,39.834687],[116.543664,39.835078],[116.542681,39.830209],[116.533187,39.832733],[116.538143,39.828207],[116.534944,39.82482],[116.525868,39.826904],[116.525366,39.829754],[116.516164,39.829835],[116.510602,39.827637],[116.510142,39.821449],[116.502801,39.819006],[116.505813,39.817866],[116.498201,39.8157],[116.495357,39.818795],[116.485632,39.816889],[116.485256,39.81272],[116.474256,39.809772],[116.468463,39.814511],[116.462775,39.815945],[116.452737,39.823012],[116.443912,39.82096],[116.44592,39.826692],[116.436677,39.827425],[116.43699,39.830649],[116.430068,39.830112],[116.425217,39.831903],[116.432055,39.832929],[116.436739,39.841329],[116.440587,39.839653],[116.442323,39.843674],[116.446694,39.84426],[116.445983,39.848329],[116.450479,39.848704],[116.451148,39.852008],[116.460308,39.848622],[116.467794,39.856012],[116.463319,39.856224],[116.456062,39.86122],[116.454222,39.859381],[116.448178,39.863645],[116.446359,39.860862],[116.442971,39.866087],[116.44364,39.87284],[116.445648,39.879283],[116.444059,39.890038],[116.450939,39.890249],[116.450876,39.894088],[116.447154,39.894186],[116.446819,39.900042],[116.448722,39.903246],[116.436488,39.902042],[116.434983,39.913964],[116.434314,39.92868],[116.443682,39.928664],[116.443703,39.936663],[116.446338,39.946205],[116.440566,39.945295],[116.442239,39.9497],[116.435422,39.952121],[116.436698,39.949245],[116.429483,39.950155],[116.429002,39.957274],[116.424861,39.962279],[116.414196,39.962182],[116.411415,39.964928],[116.411101,39.97146],[116.407504,39.973995],[116.40788,39.962182],[116.389498,39.96314],[116.387658,39.96093],[116.390084,39.968406],[116.394162,39.969397],[116.394099,39.972858],[116.380903,39.972712],[116.381196,39.977976],[116.376554,39.992971],[116.350873,40.0267],[116.378708,40.031181],[116.395103,40.032854],[116.390251,40.036587],[116.390649,40.041279],[116.39297,40.041733],[116.395333,40.036766],[116.405266,40.038974],[116.408884,40.043291],[116.406124,40.049768],[116.409595,40.055626],[116.415618,40.056],[116.433268,40.06228],[116.442867,40.061323],[116.451629,40.058759],[116.45142,40.06129],[116.459408,40.059992],[116.462127,40.06731],[116.458635,40.070377],[116.458823,40.075796],[116.462608,40.076786],[116.461855,40.080825],[116.466247,40.08235],[116.466832,40.090185],[116.471015,40.08939],[116.473545,40.085562],[116.482935,40.083745],[116.486657,40.081036],[116.49933,40.080387],[116.506775,40.074352],[116.513948,40.070426],[116.525993,40.071334],[116.534379,40.066791],[116.543183,40.059408],[116.547784,40.062718],[116.551757,40.059765],[116.552761,40.05488],[116.54655,40.048956],[116.550753,40.045499],[116.564242,40.039655],[116.570474,40.032431],[116.578797,40.033097],[116.577814,40.027512],[116.595548,40.01751]]],[[[116.603683,40.052949],[116.598517,40.052543],[116.601633,40.047658],[116.599417,40.047171],[116.599814,40.041408],[116.590006,40.043616],[116.591198,40.051796],[116.587957,40.05053],[116.590131,40.056162],[116.586597,40.074336],[116.58139,40.073817],[116.581411,40.067846],[116.578149,40.076461],[116.574322,40.096138],[116.574071,40.107815],[116.578316,40.102739],[116.580365,40.088352],[116.595903,40.090218],[116.598705,40.09351],[116.598392,40.103874],[116.602909,40.093883],[116.603473,40.086811],[116.608409,40.054912],[116.603683,40.052949]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110106,\"name\":\"丰台区\",\"center\":[116.286968,39.863642],\"centroid\":[116.250298,39.83569],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":3,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.167033,39.888752],[116.179099,39.882684],[116.19035,39.881529],[116.199426,39.883286],[116.20457,39.879885],[116.208126,39.874125],[116.212099,39.874679],[116.210907,39.878079],[116.219105,39.876713],[116.219523,39.881334],[116.222952,39.883986],[116.22772,39.883839],[116.227783,39.889078],[116.234642,39.88955],[116.233534,39.89212],[116.252899,39.896382],[116.259089,39.896658],[116.266199,39.896252],[116.294975,39.896496],[116.294995,39.886735],[116.29922,39.889566],[116.30656,39.890883],[116.30449,39.892478],[116.313189,39.896772],[116.325799,39.896789],[116.321345,39.875004],[116.326636,39.876859],[116.335273,39.875183],[116.341567,39.876159],[116.344286,39.873653],[116.349472,39.873588],[116.35058,39.86869],[116.38059,39.871148],[116.380632,39.866054],[116.387888,39.867372],[116.394956,39.862734],[116.3955,39.858682],[116.406856,39.859967],[116.41246,39.858942],[116.41589,39.863645],[116.413652,39.871148],[116.423209,39.872824],[116.442574,39.87188],[116.44364,39.87284],[116.442971,39.866087],[116.446359,39.860862],[116.448178,39.863645],[116.454222,39.859381],[116.456062,39.86122],[116.463319,39.856224],[116.467794,39.856012],[116.460308,39.848622],[116.451148,39.852008],[116.450479,39.848704],[116.445983,39.848329],[116.446694,39.84426],[116.442323,39.843674],[116.440587,39.839653],[116.436739,39.841329],[116.432055,39.832929],[116.425217,39.831903],[116.420072,39.826611],[116.415785,39.829428],[116.414426,39.824282],[116.418441,39.822915],[116.419759,39.815375],[116.41016,39.817052],[116.410013,39.811336],[116.415262,39.812525],[116.417772,39.81013],[116.422456,39.81044],[116.425719,39.805358],[116.429399,39.803583],[116.429274,39.794102],[116.421034,39.794134],[116.42024,39.787439],[116.396023,39.786738],[116.397905,39.781068],[116.398888,39.765864],[116.391903,39.765277],[116.390649,39.780465],[116.385609,39.778852],[116.379209,39.77939],[116.378478,39.785646],[116.367582,39.784962],[116.365742,39.794151],[116.368189,39.794819],[116.367039,39.79982],[116.356833,39.800471],[116.355704,39.805668],[116.341755,39.807589],[116.340124,39.802149],[116.328225,39.801416],[116.326824,39.798386],[116.322872,39.798386],[116.321784,39.783626],[116.317978,39.783447],[116.31068,39.772057],[116.307062,39.770085],[116.301541,39.774941],[116.295205,39.790958],[116.291148,39.793271],[116.296083,39.795568],[116.289182,39.795894],[116.287237,39.799103],[116.27423,39.796936],[116.262184,39.792782],[116.259298,39.797621],[116.251519,39.793059],[116.250933,39.801432],[116.25361,39.807231],[116.251644,39.81329],[116.244304,39.818567],[116.243007,39.825145],[116.23962,39.826872],[116.228306,39.827197],[116.227219,39.825048],[116.214127,39.824706],[116.214462,39.818974],[116.216762,39.816905],[116.207415,39.810814],[116.208063,39.806352],[116.201852,39.799657],[116.201852,39.788269],[116.200388,39.778151],[116.194449,39.778493],[116.194407,39.780579],[116.188008,39.781785],[116.183365,39.780204],[116.182989,39.783707],[116.16971,39.784278],[116.166113,39.775039],[116.159923,39.767494],[116.150554,39.766565],[116.143444,39.764381],[116.133427,39.766336],[116.12847,39.762409],[116.121465,39.761626],[116.117491,39.77336],[116.121486,39.779047],[116.124351,39.77675],[116.127467,39.779047],[116.132569,39.778624],[116.131503,39.783121],[116.125062,39.785353],[116.120754,39.784848],[116.119792,39.789654],[116.106366,39.788612],[116.107014,39.78532],[116.101368,39.78576],[116.094613,39.781557],[116.091581,39.784082],[116.091916,39.787927],[116.0856,39.795324],[116.087127,39.803289],[116.084826,39.811596],[116.086186,39.816401],[116.089594,39.816352],[116.088214,39.82692],[116.089741,39.829721],[116.085747,39.832163],[116.084366,39.828581],[116.078615,39.831593],[116.07619,39.837015],[116.068975,39.840792],[116.061488,39.841899],[116.05465,39.845953],[116.056553,39.85095],[116.070982,39.853717],[116.070188,39.860423],[116.067344,39.865761],[116.07046,39.868446],[116.078323,39.870318],[116.087169,39.866152],[116.095826,39.869032],[116.104149,39.868837],[116.105425,39.872547],[116.112242,39.873247],[116.119729,39.877477],[116.125898,39.877949],[116.13167,39.881268],[116.147605,39.885287],[116.150972,39.884051],[116.156137,39.889029],[116.163352,39.886881],[116.167033,39.888752]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110107,\"name\":\"石景山区\",\"center\":[116.195445,39.914601],\"centroid\":[116.176243,39.9332],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":4,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.259089,39.896658],[116.252899,39.896382],[116.233534,39.89212],[116.234642,39.88955],[116.227783,39.889078],[116.22772,39.883839],[116.222952,39.883986],[116.219523,39.881334],[116.219105,39.876713],[116.210907,39.878079],[116.212099,39.874679],[116.208126,39.874125],[116.20457,39.879885],[116.199426,39.883286],[116.19035,39.881529],[116.179099,39.882684],[116.167033,39.888752],[116.161094,39.896805],[116.153503,39.900985],[116.152792,39.906629],[116.146852,39.910077],[116.139282,39.922095],[116.13029,39.924518],[116.127341,39.926615],[116.127822,39.930338],[116.124769,39.934907],[116.119875,39.932761],[116.11195,39.942921],[116.114522,39.949196],[116.120545,39.951],[116.115254,39.957745],[116.120712,39.96119],[116.122971,39.967561],[116.116592,39.971932],[116.113455,39.981518],[116.118934,39.986115],[116.144678,39.989186],[116.151579,39.993442],[116.156117,39.989137],[116.158124,39.984133],[116.166845,39.987561],[116.169229,39.979357],[116.171487,39.977001],[116.178012,39.982216],[116.178911,39.988292],[116.186586,39.983906],[116.18531,39.977976],[116.185812,39.970274],[116.190685,39.968259],[116.190747,39.965367],[116.20112,39.961109],[116.212831,39.948952],[116.215466,39.94375],[116.216281,39.936386],[116.213186,39.933232],[116.216198,39.931233],[116.213061,39.928891],[116.215696,39.927103],[116.207707,39.9259],[116.206787,39.916663],[116.230899,39.919525],[116.232426,39.91694],[116.237696,39.918452],[116.250975,39.919834],[116.252983,39.915558],[116.252983,39.896951],[116.259089,39.896658]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110108,\"name\":\"海淀区\",\"center\":[116.310316,39.956074],\"centroid\":[116.233161,40.026971],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":5,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.259089,39.896658],[116.252983,39.896951],[116.252983,39.915558],[116.250975,39.919834],[116.237696,39.918452],[116.232426,39.91694],[116.230899,39.919525],[116.206787,39.916663],[116.207707,39.9259],[116.215696,39.927103],[116.213061,39.928891],[116.216198,39.931233],[116.213186,39.933232],[116.216281,39.936386],[116.215466,39.94375],[116.212831,39.948952],[116.20112,39.961109],[116.190747,39.965367],[116.190685,39.968259],[116.185812,39.970274],[116.18531,39.977976],[116.186586,39.983906],[116.178911,39.988292],[116.178012,39.982216],[116.171487,39.977001],[116.169229,39.979357],[116.166845,39.987561],[116.158124,39.984133],[116.156117,39.989137],[116.151579,39.993442],[116.154527,39.997275],[116.161658,39.999987],[116.172115,40.000637],[116.175335,40.006403],[116.164774,40.014328],[116.163938,40.016796],[116.157309,40.021034],[116.149278,40.022154],[116.140098,40.02873],[116.129558,40.0311],[116.123598,40.029655],[116.114522,40.033],[116.105488,40.032204],[116.098398,40.033811],[116.095073,40.031782],[116.084241,40.030905],[116.078176,40.032756],[116.075123,40.039915],[116.068055,40.051926],[116.071129,40.062037],[116.064981,40.067456],[116.064019,40.073022],[116.054587,40.07823],[116.051325,40.084345],[116.048878,40.085303],[116.051848,40.091661],[116.055905,40.09643],[116.061969,40.09956],[116.062931,40.10282],[116.069456,40.104912],[116.072676,40.109258],[116.073847,40.115436],[116.077883,40.115047],[116.08445,40.120252],[116.089783,40.119327],[116.096056,40.121257],[116.102246,40.115987],[116.105864,40.118014],[116.113309,40.115598],[116.127676,40.116393],[116.132214,40.115079],[116.132925,40.121354],[116.152708,40.121776],[116.169563,40.124564],[116.167409,40.128455],[116.17178,40.127936],[116.168622,40.135442],[116.167681,40.141844],[116.174122,40.143595],[116.180417,40.14729],[116.183094,40.153335],[116.182696,40.158099],[116.192065,40.155669],[116.194282,40.160076],[116.202166,40.160984],[116.203211,40.153773],[116.205658,40.150175],[116.206285,40.143092],[116.212224,40.140548],[116.215445,40.143174],[116.233785,40.136577],[116.247043,40.136204],[116.245036,40.118825],[116.241836,40.118403],[116.243363,40.113279],[116.240498,40.108009],[116.245956,40.10535],[116.252732,40.106517],[116.255868,40.104474],[116.25957,40.106907],[116.258022,40.11195],[116.263334,40.110588],[116.263899,40.10402],[116.258273,40.101522],[116.265237,40.094694],[116.27333,40.09557],[116.2731,40.092699],[116.279897,40.079754],[116.290353,40.083145],[116.302942,40.060803],[116.305995,40.063043],[116.309446,40.060609],[116.318292,40.061663],[116.325946,40.054799],[116.338828,40.058921],[116.340271,40.055091],[116.343366,40.055448],[116.342676,40.059635],[116.346963,40.06043],[116.34667,40.063659],[116.357293,40.066012],[116.363023,40.065931],[116.363149,40.068965],[116.372538,40.06843],[116.373354,40.065623],[116.381928,40.066402],[116.382848,40.061582],[116.379272,40.059002],[116.372267,40.05785],[116.372999,40.054344],[116.367394,40.053436],[116.36959,40.04696],[116.376114,40.045466],[116.376888,40.042756],[116.38519,40.042853],[116.390649,40.041279],[116.390251,40.036587],[116.395103,40.032854],[116.378708,40.031181],[116.350873,40.0267],[116.376554,39.992971],[116.381196,39.977976],[116.380903,39.972712],[116.380401,39.968178],[116.370384,39.967902],[116.371974,39.948594],[116.35698,39.944466],[116.355265,39.951796],[116.351814,39.950854],[116.35171,39.94375],[116.341442,39.941979],[116.332889,39.944092],[116.327953,39.942369],[116.333056,39.938565],[116.334645,39.922664],[116.335356,39.898448],[116.337301,39.89739],[116.325799,39.896789],[116.313189,39.896772],[116.30449,39.892478],[116.30656,39.890883],[116.29922,39.889566],[116.294995,39.886735],[116.294975,39.896496],[116.266199,39.896252],[116.259089,39.896658]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110109,\"name\":\"门头沟区\",\"center\":[116.105381,39.937183],\"centroid\":[115.791703,39.994114],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":6,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[115.853348,40.149332],[115.856547,40.147468],[115.865184,40.148635],[115.870768,40.144276],[115.874155,40.14387],[115.8816,40.139073],[115.900442,40.138716],[115.904457,40.136123],[115.906549,40.138181],[115.921438,40.134485],[115.933588,40.124824],[115.947913,40.107409],[115.943229,40.103339],[115.952681,40.10102],[115.956717,40.096041],[115.957449,40.100679],[115.962552,40.10235],[115.962092,40.094419],[115.960461,40.092456],[115.966588,40.084556],[115.968575,40.075488],[115.977232,40.079041],[115.979993,40.081669],[115.986434,40.083469],[115.99735,40.082074],[116.005129,40.079803],[116.007785,40.080614],[116.020856,40.074579],[116.030914,40.082188],[116.033926,40.079657],[116.037899,40.084524],[116.043775,40.083502],[116.048878,40.085303],[116.051325,40.084345],[116.054587,40.07823],[116.064019,40.073022],[116.064981,40.067456],[116.071129,40.062037],[116.068055,40.051926],[116.075123,40.039915],[116.078176,40.032756],[116.084241,40.030905],[116.095073,40.031782],[116.098398,40.033811],[116.105488,40.032204],[116.114522,40.033],[116.123598,40.029655],[116.129558,40.0311],[116.140098,40.02873],[116.149278,40.022154],[116.157309,40.021034],[116.163938,40.016796],[116.164774,40.014328],[116.175335,40.006403],[116.172115,40.000637],[116.161658,39.999987],[116.154527,39.997275],[116.151579,39.993442],[116.144678,39.989186],[116.118934,39.986115],[116.113455,39.981518],[116.116592,39.971932],[116.122971,39.967561],[116.120712,39.96119],[116.115254,39.957745],[116.120545,39.951],[116.114522,39.949196],[116.11195,39.942921],[116.119875,39.932761],[116.124769,39.934907],[116.127822,39.930338],[116.127341,39.926615],[116.13029,39.924518],[116.139282,39.922095],[116.146852,39.910077],[116.152792,39.906629],[116.153503,39.900985],[116.161094,39.896805],[116.167033,39.888752],[116.163352,39.886881],[116.156137,39.889029],[116.150972,39.884051],[116.147605,39.885287],[116.13167,39.881268],[116.125898,39.877949],[116.119729,39.877477],[116.112242,39.873247],[116.105425,39.872547],[116.104149,39.868837],[116.095826,39.869032],[116.087169,39.866152],[116.078323,39.870318],[116.07046,39.868446],[116.067344,39.865761],[116.070188,39.860423],[116.070982,39.853717],[116.056553,39.85095],[116.05465,39.845953],[116.045825,39.84732],[116.04181,39.844878],[116.033089,39.845904],[116.030308,39.843462],[116.021023,39.840662],[116.018367,39.841525],[116.016694,39.849225],[116.00789,39.849469],[115.991285,39.840222],[115.98428,39.849111],[115.98817,39.859837],[115.986789,39.864703],[115.992875,39.867356],[115.997245,39.875167],[115.990177,39.876338],[115.97627,39.870497],[115.976563,39.868251],[115.968742,39.867714],[115.967822,39.872059],[115.961318,39.867877],[115.954145,39.866786],[115.949837,39.871278],[115.92744,39.876192],[115.921856,39.884164],[115.935805,39.898236],[115.944965,39.901847],[115.945697,39.910972],[115.941159,39.917509],[115.935868,39.917753],[115.927858,39.914257],[115.903935,39.914029],[115.890112,39.917281],[115.87884,39.915964],[115.87311,39.912484],[115.868321,39.905572],[115.860897,39.901359],[115.845255,39.897049],[115.838772,39.900644],[115.835112,39.899586],[115.826914,39.910581],[115.8188,39.913948],[115.811084,39.913785],[115.806839,39.919656],[115.797344,39.92216],[115.792848,39.920859],[115.774257,39.920599],[115.769385,39.925233],[115.76148,39.920989],[115.749622,39.917655],[115.74889,39.9152],[115.731261,39.907865],[115.721621,39.906824],[115.719592,39.904612],[115.709178,39.905117],[115.691779,39.8997],[115.68929,39.896187],[115.682556,39.893047],[115.678144,39.886556],[115.671055,39.88597],[115.667541,39.883888],[115.654869,39.882505],[115.648867,39.875411],[115.644705,39.875964],[115.640021,39.871554],[115.630987,39.871977],[115.623103,39.866949],[115.621973,39.863271],[115.616369,39.857542],[115.613086,39.843755],[115.607586,39.84089],[115.604533,39.834443],[115.599325,39.829151],[115.596649,39.821498],[115.59117,39.818534],[115.587322,39.813762],[115.577367,39.812541],[115.569274,39.813274],[115.563461,39.816417],[115.548027,39.822703],[115.546396,39.825992],[115.534957,39.830714],[115.530482,39.829916],[115.526509,39.835241],[115.514505,39.83835],[115.510992,39.84509],[115.515948,39.847678],[115.522368,39.858779],[115.521929,39.868186],[115.527345,39.869862],[115.529185,39.875948],[115.526299,39.875655],[115.516659,39.880406],[115.51003,39.88148],[115.509026,39.884164],[115.523016,39.898919],[115.52013,39.902547],[115.50386,39.915818],[115.494994,39.917948],[115.487277,39.923835],[115.48069,39.93585],[115.472387,39.93876],[115.464462,39.940142],[115.456787,39.944271],[115.452312,39.948188],[115.447042,39.948806],[115.444595,39.951358],[115.438468,39.95256],[115.43577,39.950919],[115.42615,39.95035],[115.423745,39.955697],[115.426924,39.965302],[115.423411,39.969819],[115.427635,39.979471],[115.428513,39.984328],[115.436815,39.991427],[115.443905,39.994644],[115.450346,39.993247],[115.449196,40.001985],[115.442817,40.007345],[115.442169,40.010885],[115.452082,40.02079],[115.454528,40.029704],[115.460656,40.032172],[115.468414,40.031896],[115.478557,40.036165],[115.488992,40.043746],[115.488323,40.046132],[115.500954,40.052478],[115.510427,40.062913],[115.509695,40.065477],[115.514944,40.066937],[115.527324,40.076072],[115.537885,40.077775],[115.544263,40.07591],[115.552168,40.079252],[115.555472,40.082626],[115.553736,40.091661],[115.563419,40.097922],[115.567769,40.096543],[115.576196,40.100825],[115.578538,40.096365],[115.584038,40.094889],[115.590709,40.096397],[115.592403,40.110182],[115.594432,40.108982],[115.59485,40.116279],[115.599116,40.120008],[115.606979,40.120057],[115.616223,40.117138],[115.621388,40.118711],[115.625048,40.116295],[115.631468,40.117852],[115.635943,40.115793],[115.643722,40.117511],[115.641882,40.120819],[115.64458,40.126639],[115.654806,40.131276],[115.657734,40.128098],[115.678667,40.130935],[115.681197,40.13267],[115.68699,40.13053],[115.693096,40.131924],[115.697216,40.12672],[115.702172,40.128196],[115.712064,40.126899],[115.711039,40.128941],[115.704765,40.129655],[115.699746,40.132394],[115.708697,40.134291],[115.715891,40.133383],[115.724841,40.128812],[115.734126,40.129379],[115.741111,40.132216],[115.749246,40.137711],[115.75485,40.145459],[115.749539,40.152995],[115.754328,40.163252],[115.762212,40.16262],[115.768213,40.165553],[115.773023,40.176197],[115.787014,40.178708],[115.78693,40.170414],[115.789837,40.168939],[115.802091,40.156754],[115.806567,40.153254],[115.822272,40.152606],[115.829047,40.149981],[115.83576,40.145426],[115.834234,40.15024],[115.846384,40.147096],[115.853348,40.149332]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110111,\"name\":\"房山区\",\"center\":[116.139157,39.735535],\"centroid\":[115.853935,39.719211],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":7,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.05465,39.845953],[116.061488,39.841899],[116.068975,39.840792],[116.07619,39.837015],[116.078615,39.831593],[116.084366,39.828581],[116.085747,39.832163],[116.089741,39.829721],[116.088214,39.82692],[116.089594,39.816352],[116.086186,39.816401],[116.084826,39.811596],[116.087127,39.803289],[116.0856,39.795324],[116.091916,39.787927],[116.091581,39.784082],[116.094613,39.781557],[116.101368,39.78576],[116.107014,39.78532],[116.106366,39.788612],[116.119792,39.789654],[116.120754,39.784848],[116.125062,39.785353],[116.131503,39.783121],[116.132569,39.778624],[116.127467,39.779047],[116.124351,39.77675],[116.121486,39.779047],[116.117491,39.77336],[116.121465,39.761626],[116.12847,39.762409],[116.133427,39.766336],[116.143444,39.764381],[116.150554,39.766565],[116.159923,39.767494],[116.166113,39.775039],[116.16971,39.784278],[116.182989,39.783707],[116.183365,39.780204],[116.188008,39.781785],[116.194407,39.780579],[116.194449,39.778493],[116.200388,39.778151],[116.201852,39.788269],[116.201852,39.799657],[116.208063,39.806352],[116.207415,39.810814],[116.216762,39.816905],[116.214462,39.818974],[116.214127,39.824706],[116.227219,39.825048],[116.228306,39.827197],[116.23962,39.826872],[116.243007,39.825145],[116.244304,39.818567],[116.251644,39.81329],[116.25361,39.807231],[116.250933,39.801432],[116.251519,39.793059],[116.251602,39.782518],[116.253777,39.77952],[116.252481,39.771747],[116.254426,39.76324],[116.252481,39.758676],[116.251895,39.749092],[116.243948,39.741658],[116.248026,39.732641],[116.248466,39.728027],[116.245768,39.72408],[116.245036,39.718421],[116.236629,39.71286],[116.231945,39.706025],[116.23435,39.703823],[116.230941,39.692355],[116.221238,39.678453],[116.22565,39.67359],[116.221342,39.667486],[116.223162,39.664728],[116.216992,39.651572],[116.215487,39.64305],[116.218875,39.628011],[116.219502,39.618931],[116.21808,39.608102],[116.223141,39.597222],[116.222597,39.593938],[116.226089,39.591993],[116.225085,39.584085],[116.221175,39.578921],[116.208105,39.577728],[116.206243,39.583219],[116.201726,39.586373],[116.196394,39.586095],[116.196854,39.588987],[116.19058,39.587386],[116.190768,39.589396],[116.184432,39.590915],[116.177071,39.590016],[116.176924,39.585899],[116.165527,39.583562],[116.151788,39.583415],[116.149613,39.573087],[116.13878,39.571044],[116.138425,39.568887],[116.130373,39.567743],[116.130311,39.569459],[116.121528,39.570554],[116.121465,39.574917],[116.116634,39.574002],[116.11379,39.570668],[116.106282,39.570979],[116.105801,39.576568],[116.101368,39.580049],[116.102016,39.576143],[116.098817,39.575146],[116.039237,39.571943],[116.032964,39.572302],[116.032859,39.574607],[116.024766,39.575604],[116.02623,39.587402],[116.020667,39.585981],[116.014038,39.588072],[116.013703,39.583039],[116.010588,39.583023],[116.007618,39.577205],[115.995196,39.577075],[115.996953,39.583203],[115.990721,39.586471],[115.990993,39.593791],[115.978445,39.595686],[115.977086,39.590931],[115.978153,39.572842],[115.974576,39.570832],[115.968909,39.570995],[115.967592,39.564604],[115.963409,39.565503],[115.957554,39.560927],[115.954982,39.566092],[115.950423,39.56637],[115.949147,39.573299],[115.943083,39.574672],[115.943187,39.577385],[115.937938,39.577467],[115.938105,39.581699],[115.934969,39.581814],[115.934174,39.588072],[115.929991,39.589935],[115.930221,39.593382],[115.924178,39.59384],[115.923759,39.597287],[115.912488,39.599149],[115.910187,39.600832],[115.9068,39.590016],[115.909665,39.588284],[115.908744,39.58402],[115.915604,39.582958],[115.911777,39.574182],[115.91276,39.572842],[115.907866,39.566876],[115.896009,39.569916],[115.890028,39.567873],[115.893416,39.561875],[115.89306,39.556219],[115.888752,39.555614],[115.887686,39.55066],[115.883587,39.551102],[115.88296,39.54811],[115.873298,39.548829],[115.872315,39.546099],[115.866355,39.546361],[115.866041,39.549843],[115.862026,39.548551],[115.855481,39.554993],[115.851361,39.550448],[115.847555,39.550284],[115.846028,39.543287],[115.84216,39.54157],[115.828692,39.541309],[115.828399,39.535455],[115.824321,39.534212],[115.822753,39.530533],[115.819219,39.530762],[115.819804,39.524923],[115.824112,39.522405],[115.824447,39.518774],[115.819762,39.518528],[115.822146,39.514145],[115.829487,39.512885],[115.828692,39.507045],[115.821456,39.509499],[115.792681,39.510742],[115.785006,39.51035],[115.777917,39.513834],[115.776537,39.512722],[115.767419,39.515862],[115.770828,39.510971],[115.768736,39.508878],[115.765328,39.514848],[115.759451,39.513916],[115.752508,39.515453],[115.743934,39.526771],[115.741487,39.536289],[115.73879,39.539314],[115.739124,39.545363],[115.726765,39.548143],[115.726953,39.543908],[115.7216,39.543499],[115.72022,39.554747],[115.717104,39.560403],[115.710161,39.563019],[115.698722,39.563248],[115.692072,39.565781],[115.694393,39.56941],[115.698596,39.570586],[115.697906,39.579248],[115.693431,39.580327],[115.694226,39.587778],[115.689269,39.592941],[115.68929,39.599035],[115.685317,39.603675],[115.673271,39.608526],[115.667479,39.615256],[115.667583,39.609637],[115.665304,39.605325],[115.657273,39.600081],[115.650268,39.600996],[115.643576,39.598937],[115.641589,39.603332],[115.634688,39.603871],[115.632555,39.597695],[115.625947,39.599394],[115.618439,39.604067],[115.6125,39.601126],[115.605285,39.600032],[115.599785,39.600865],[115.598719,39.597761],[115.592445,39.59665],[115.586109,39.589412],[115.571867,39.591569],[115.573875,39.596552],[115.567267,39.599623],[115.564569,39.605619],[115.55451,39.609408],[115.551875,39.614064],[115.545978,39.618751],[115.539119,39.616285],[115.533263,39.611434],[115.533891,39.608608],[115.530586,39.602874],[115.524229,39.598937],[115.518311,39.597156],[115.518834,39.593072],[115.515948,39.591193],[115.512121,39.605129],[115.514358,39.613508],[115.523414,39.620384],[115.521699,39.622311],[115.520423,39.633416],[115.522452,39.639964],[115.515864,39.641237],[115.511493,39.644388],[115.506705,39.652127],[115.496771,39.652551],[115.494659,39.649237],[115.478515,39.650331],[115.477971,39.654216],[115.482593,39.66303],[115.491334,39.668694],[115.486733,39.673362],[115.489724,39.678012],[115.488783,39.681619],[115.494408,39.686481],[115.496395,39.685665],[115.499783,39.691278],[115.49926,39.696189],[115.492631,39.701719],[115.490247,39.701409],[115.493404,39.707494],[115.491229,39.714719],[115.488866,39.733163],[115.492108,39.73887],[115.482321,39.742473],[115.470568,39.742391],[115.46672,39.740451],[115.457728,39.744918],[115.439158,39.752678],[115.434411,39.763859],[115.435414,39.769938],[115.430918,39.772073],[115.427029,39.769775],[115.425209,39.77336],[115.431169,39.775756],[115.434076,39.782274],[115.443382,39.785646],[115.452751,39.781964],[115.45777,39.782143],[115.475859,39.791821],[115.483241,39.798679],[115.49238,39.796057],[115.497336,39.791088],[115.508712,39.784082],[115.513815,39.788693],[115.536275,39.792131],[115.539432,39.794754],[115.554866,39.795601],[115.56229,39.803713],[115.566577,39.804609],[115.566367,39.809788],[115.569274,39.813274],[115.577367,39.812541],[115.587322,39.813762],[115.59117,39.818534],[115.596649,39.821498],[115.599325,39.829151],[115.604533,39.834443],[115.607586,39.84089],[115.613086,39.843755],[115.616369,39.857542],[115.621973,39.863271],[115.623103,39.866949],[115.630987,39.871977],[115.640021,39.871554],[115.644705,39.875964],[115.648867,39.875411],[115.654869,39.882505],[115.667541,39.883888],[115.671055,39.88597],[115.678144,39.886556],[115.682556,39.893047],[115.68929,39.896187],[115.691779,39.8997],[115.709178,39.905117],[115.719592,39.904612],[115.721621,39.906824],[115.731261,39.907865],[115.74889,39.9152],[115.749622,39.917655],[115.76148,39.920989],[115.769385,39.925233],[115.774257,39.920599],[115.792848,39.920859],[115.797344,39.92216],[115.806839,39.919656],[115.811084,39.913785],[115.8188,39.913948],[115.826914,39.910581],[115.835112,39.899586],[115.838772,39.900644],[115.845255,39.897049],[115.860897,39.901359],[115.868321,39.905572],[115.87311,39.912484],[115.87884,39.915964],[115.890112,39.917281],[115.903935,39.914029],[115.927858,39.914257],[115.935868,39.917753],[115.941159,39.917509],[115.945697,39.910972],[115.944965,39.901847],[115.935805,39.898236],[115.921856,39.884164],[115.92744,39.876192],[115.949837,39.871278],[115.954145,39.866786],[115.961318,39.867877],[115.967822,39.872059],[115.968742,39.867714],[115.976563,39.868251],[115.97627,39.870497],[115.990177,39.876338],[115.997245,39.875167],[115.992875,39.867356],[115.986789,39.864703],[115.98817,39.859837],[115.98428,39.849111],[115.991285,39.840222],[116.00789,39.849469],[116.016694,39.849225],[116.018367,39.841525],[116.021023,39.840662],[116.030308,39.843462],[116.033089,39.845904],[116.04181,39.844878],[116.045825,39.84732],[116.05465,39.845953]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110112,\"name\":\"通州区\",\"center\":[116.658603,39.902486],\"centroid\":[116.73624,39.803923],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":8,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.534944,39.82482],[116.538143,39.828207],[116.533187,39.832733],[116.542681,39.830209],[116.543664,39.835078],[116.558596,39.834687],[116.569386,39.833498],[116.577145,39.830682],[116.577479,39.827539],[116.587015,39.828223],[116.583732,39.824917],[116.591595,39.823875],[116.59147,39.826367],[116.599228,39.825585],[116.598977,39.831659],[116.60224,39.831675],[116.601905,39.840727],[116.608367,39.846539],[116.604666,39.846132],[116.604185,39.850071],[116.613449,39.850185],[116.626958,39.860683],[116.619994,39.868951],[116.62493,39.87725],[116.624323,39.881155],[116.628987,39.881594],[116.627585,39.890477],[116.615603,39.889794],[116.61531,39.895503],[116.621019,39.898854],[116.623361,39.904271],[116.620245,39.90767],[116.623006,39.913818],[116.620956,39.923103],[116.630576,39.921672],[116.624156,39.929981],[116.6293,39.931314],[116.629677,39.938727],[116.633441,39.940906],[116.630492,39.946156],[116.632228,39.950545],[116.645277,39.945977],[116.643081,39.952983],[116.641827,39.969575],[116.639819,39.982606],[116.634026,39.981696],[116.63365,39.986197],[116.639129,39.986879],[116.640321,39.990177],[116.643751,39.989608],[116.642684,39.996755],[116.637582,40.002359],[116.63273,39.999825],[116.625766,40.003122],[116.628129,40.007653],[116.61989,40.011794],[116.60132,40.013873],[116.595548,40.01751],[116.600839,40.018858],[116.602762,40.028503],[116.610061,40.031214],[116.614055,40.03175],[116.614139,40.028178],[116.619388,40.026733],[116.620099,40.022512],[116.624239,40.023664],[116.627063,40.021505],[116.633504,40.023664],[116.636159,40.019703],[116.651195,40.025759],[116.651676,40.021911],[116.655629,40.018566],[116.660125,40.021651],[116.664705,40.019037],[116.668615,40.013938],[116.678465,40.015058],[116.683777,40.014458],[116.686286,40.00827],[116.688378,40.00918],[116.685575,40.016569],[116.697244,40.016098],[116.703936,40.020141],[116.708621,40.026587],[116.716337,40.023762],[116.717383,40.019605],[116.719725,40.022512],[116.724221,40.021278],[116.724828,40.024265],[116.732043,40.022219],[116.732335,40.025109],[116.737145,40.02761],[116.747058,40.025385],[116.747037,40.021976],[116.751763,40.019962],[116.75329,40.015919],[116.764791,40.016049],[116.771755,40.014474],[116.770459,40.011632],[116.775749,40.002943],[116.775373,39.992759],[116.766757,39.982281],[116.766443,39.976351],[116.759605,39.969933],[116.757326,39.961483],[116.762826,39.956006],[116.78058,39.949716],[116.782567,39.947554],[116.78332,39.936045],[116.782358,39.928273],[116.78217,39.910419],[116.78424,39.902221],[116.7847,39.89142],[116.787084,39.886833],[116.794738,39.881252],[116.804148,39.877933],[116.804253,39.88488],[116.808247,39.884913],[116.80831,39.889631],[116.812304,39.889712],[116.81312,39.881301],[116.817009,39.878649],[116.823681,39.879137],[116.827277,39.877071],[116.836897,39.864736],[116.839407,39.865777],[116.847249,39.858616],[116.85254,39.859056],[116.85829,39.84846],[116.865505,39.846913],[116.866049,39.843902],[116.871507,39.842062],[116.878638,39.842257],[116.878304,39.84522],[116.885665,39.844585],[116.897501,39.832587],[116.903357,39.830682],[116.907581,39.834117],[116.902896,39.841346],[116.902813,39.848248],[116.910383,39.850608],[116.917431,39.846913],[116.9259,39.835403],[116.92887,39.820912],[116.92818,39.814153],[116.92979,39.811368],[116.942881,39.801677],[116.934809,39.801139],[116.938301,39.793124],[116.950828,39.791528],[116.953797,39.78607],[116.948004,39.785369],[116.94974,39.778542],[116.945788,39.777369],[116.939284,39.781361],[116.933784,39.781801],[116.921718,39.780628],[116.91649,39.775935],[116.920902,39.769107],[116.910613,39.762278],[116.908292,39.766711],[116.901809,39.763615],[116.901558,39.755204],[116.907163,39.75597],[116.913185,39.745962],[116.914461,39.741755],[116.910718,39.740989],[116.912934,39.73569],[116.916364,39.73587],[116.916678,39.731353],[116.911533,39.731516],[116.90229,39.729413],[116.89976,39.726168],[116.887589,39.725515],[116.8828,39.71847],[116.887108,39.714311],[116.886376,39.707004],[116.893841,39.695879],[116.89336,39.693187],[116.887819,39.690952],[116.88991,39.687656],[116.902896,39.690576],[116.909024,39.682859],[116.905197,39.681651],[116.906661,39.677425],[116.891144,39.67408],[116.883239,39.675352],[116.87318,39.671387],[116.863979,39.670391],[116.860486,39.667258],[116.849946,39.667552],[116.85141,39.652845],[116.839135,39.647523],[116.840766,39.644241],[116.833572,39.644127],[116.834555,39.641841],[116.826901,39.638217],[116.82893,39.635163],[116.826357,39.633122],[116.838445,39.62223],[116.834116,39.621495],[116.835391,39.617004],[116.82504,39.613884],[116.823994,39.617183],[116.81954,39.618996],[116.809711,39.614521],[116.802078,39.6123],[116.790012,39.610535],[116.792835,39.602155],[116.789384,39.602596],[116.790702,39.596045],[116.785474,39.596209],[116.785055,39.593497],[116.778196,39.593382],[116.774892,39.599166],[116.774202,39.605439],[116.762616,39.613819],[116.748689,39.619943],[116.744004,39.616824],[116.737877,39.61537],[116.730516,39.619143],[116.730202,39.622932],[116.725518,39.624075],[116.721398,39.629415],[116.723489,39.639033],[116.716003,39.640356],[116.710419,39.639686],[116.70609,39.642903],[116.702891,39.649923],[116.702138,39.657644],[116.704857,39.667192],[116.703769,39.674145],[116.693543,39.674944],[116.692706,39.676789],[116.685554,39.676886],[116.680786,39.674896],[116.675203,39.676234],[116.668574,39.674602],[116.666022,39.679693],[116.669577,39.683642],[116.666566,39.687101],[116.65818,39.68857],[116.658097,39.686155],[116.651321,39.687868],[116.651509,39.694459],[116.647097,39.694786],[116.64626,39.700447],[116.647912,39.703579],[116.653098,39.703823],[116.652994,39.708619],[116.644587,39.709647],[116.638502,39.717166],[116.637623,39.723934],[116.631203,39.722971],[116.628129,39.727749],[116.621646,39.728076],[116.621876,39.725825],[116.616251,39.725581],[116.609141,39.719367],[116.604561,39.718731],[116.604017,39.714752],[116.598371,39.711963],[116.590194,39.711522],[116.590152,39.713349],[116.581202,39.712517],[116.579884,39.710234],[116.573464,39.709125],[116.573276,39.714507],[116.544961,39.715045],[116.535676,39.711881],[116.530552,39.713268],[116.53256,39.71529],[116.527332,39.716578],[116.52936,39.719808],[116.534609,39.718079],[116.536972,39.72152],[116.53783,39.728043],[116.531849,39.730016],[116.532413,39.73962],[116.537997,39.738071],[116.53624,39.740663],[116.527562,39.743304],[116.536408,39.753917],[116.540716,39.760502],[116.548119,39.765554],[116.561565,39.771111],[116.576957,39.771943],[116.594377,39.776685],[116.574677,39.798386],[116.565078,39.793988],[116.562423,39.796936],[116.555145,39.793548],[116.546634,39.803501],[116.538373,39.81513],[116.533375,39.819658],[116.539586,39.821563],[116.534944,39.82482]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110113,\"name\":\"顺义区\",\"center\":[116.653525,40.128936],\"centroid\":[116.726467,40.152366],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":9,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.771755,40.014474],[116.764791,40.016049],[116.75329,40.015919],[116.751763,40.019962],[116.747037,40.021976],[116.747058,40.025385],[116.737145,40.02761],[116.732335,40.025109],[116.732043,40.022219],[116.724828,40.024265],[116.724221,40.021278],[116.719725,40.022512],[116.717383,40.019605],[116.716337,40.023762],[116.708621,40.026587],[116.703936,40.020141],[116.697244,40.016098],[116.685575,40.016569],[116.688378,40.00918],[116.686286,40.00827],[116.683777,40.014458],[116.678465,40.015058],[116.668615,40.013938],[116.664705,40.019037],[116.660125,40.021651],[116.655629,40.018566],[116.651676,40.021911],[116.651195,40.025759],[116.636159,40.019703],[116.633504,40.023664],[116.627063,40.021505],[116.624239,40.023664],[116.620099,40.022512],[116.619388,40.026733],[116.614139,40.028178],[116.614055,40.03175],[116.610061,40.031214],[116.603683,40.052949],[116.608409,40.054912],[116.603473,40.086811],[116.602909,40.093883],[116.598392,40.103874],[116.598705,40.09351],[116.595903,40.090218],[116.580365,40.088352],[116.578316,40.102739],[116.574071,40.107815],[116.574322,40.096138],[116.578149,40.076461],[116.551757,40.059765],[116.547784,40.062718],[116.543183,40.059408],[116.534379,40.066791],[116.525993,40.071334],[116.513948,40.070426],[116.506775,40.074352],[116.49933,40.080387],[116.486657,40.081036],[116.482935,40.083745],[116.473545,40.085562],[116.471015,40.08939],[116.466832,40.090185],[116.466498,40.094954],[116.473357,40.097516],[116.480885,40.096965],[116.489292,40.101668],[116.492199,40.111561],[116.487222,40.124678],[116.484754,40.140078],[116.482307,40.140629],[116.480781,40.14742],[116.490777,40.148992],[116.492303,40.156981],[116.484629,40.160465],[116.477916,40.159979],[116.476912,40.163576],[116.480802,40.171937],[116.483332,40.171742],[116.485151,40.176764],[116.490129,40.181316],[116.487975,40.184686],[116.488016,40.191796],[116.484503,40.196493],[116.472249,40.205092],[116.473712,40.221203],[116.477979,40.225201],[116.483771,40.225185],[116.481094,40.238248],[116.482098,40.245385],[116.493705,40.251179],[116.501024,40.251599],[116.503011,40.25969],[116.505959,40.261356],[116.509201,40.258056],[116.523965,40.257522],[116.526181,40.261324],[116.535717,40.261373],[116.540088,40.267165],[116.53693,40.277178],[116.540904,40.274946],[116.546236,40.276224],[116.552176,40.27383],[116.566187,40.27802],[116.565371,40.273377],[116.570516,40.273102],[116.570202,40.268863],[116.58254,40.268362],[116.585238,40.266226],[116.588396,40.269462],[116.590842,40.264139],[116.599647,40.265385],[116.600755,40.258978],[116.604624,40.256146],[116.603787,40.251324],[116.61324,40.251761],[116.622044,40.250467],[116.6238,40.252667],[116.623654,40.26058],[116.63526,40.261454],[116.637038,40.25846],[116.641492,40.259463],[116.643081,40.25715],[116.648519,40.260143],[116.666901,40.262085],[116.669494,40.253153],[116.673321,40.246777],[116.668783,40.238539],[116.670247,40.234865],[116.676311,40.238604],[116.678131,40.234379],[116.684007,40.234282],[116.69072,40.240886],[116.697265,40.243216],[116.696554,40.248072],[116.704585,40.251551],[116.704668,40.257101],[116.710837,40.256227],[116.738421,40.284392],[116.738965,40.284101],[116.741098,40.283001],[116.738337,40.278764],[116.74298,40.279087],[116.752788,40.275512],[116.762658,40.269058],[116.768597,40.270109],[116.771651,40.266501],[116.773512,40.269527],[116.782964,40.273248],[116.784073,40.279443],[116.787795,40.281449],[116.788025,40.289439],[116.794487,40.287417],[116.800572,40.289196],[116.809607,40.28601],[116.811823,40.282387],[116.825123,40.285347],[116.82458,40.290991],[116.827215,40.298333],[116.830101,40.299206],[116.828992,40.304413],[116.838382,40.310185],[116.848984,40.311204],[116.854547,40.303152],[116.857182,40.2929],[116.859462,40.290878],[116.871319,40.290943],[116.871737,40.281481],[116.876338,40.274348],[116.874247,40.268281],[116.879893,40.264139],[116.881273,40.259221],[116.886104,40.255256],[116.886585,40.251907],[116.892252,40.245709],[116.894343,40.240028],[116.901746,40.23684],[116.893946,40.233457],[116.900701,40.228763],[116.906598,40.228682],[116.908606,40.222401],[116.913917,40.220118],[116.915507,40.222271],[116.922031,40.220134],[116.92544,40.225768],[116.931065,40.230624],[116.935206,40.229847],[116.940978,40.223922],[116.938029,40.210549],[116.929685,40.211585],[116.930898,40.207084],[116.939556,40.192347],[116.945913,40.193141],[116.94997,40.186354],[116.945809,40.186224],[116.945349,40.1813],[116.951371,40.174788],[116.962037,40.175549],[116.961242,40.171937],[116.968749,40.163495],[116.972054,40.156301],[116.977763,40.151374],[116.970025,40.140321],[116.967829,40.129849],[116.96578,40.127823],[116.971594,40.124224],[116.969189,40.118776],[116.971301,40.114009],[116.976069,40.111188],[116.973329,40.103712],[116.967976,40.101214],[116.975462,40.095051],[116.979938,40.093867],[116.981862,40.089828],[116.981192,40.08149],[116.986274,40.078359],[116.982844,40.070685],[116.980816,40.071188],[116.978599,40.064893],[116.973476,40.066304],[116.970652,40.063805],[116.962288,40.063529],[116.961932,40.051358],[116.945265,40.041425],[116.945014,40.048631],[116.937632,40.046911],[116.938824,40.050887],[116.931693,40.052024],[116.928096,40.054929],[116.924164,40.047463],[116.917974,40.044704],[116.914252,40.052592],[116.906431,40.051423],[116.90137,40.047723],[116.890265,40.04597],[116.88075,40.046164],[116.873619,40.041522],[116.867826,40.041863],[116.857809,40.051894],[116.850197,40.054977],[116.849486,40.051926],[116.831502,40.051196],[116.831732,40.048485],[116.822739,40.046473],[116.823158,40.039834],[116.820816,40.038779],[116.82,40.028357],[116.815295,40.030905],[116.803375,40.032155],[116.800259,40.028844],[116.789531,40.032318],[116.790221,40.034477],[116.781542,40.034818],[116.77782,40.032448],[116.777485,40.027204],[116.771755,40.014474]]],[[[116.578149,40.076461],[116.581411,40.067846],[116.58139,40.073817],[116.586597,40.074336],[116.590131,40.056162],[116.587957,40.05053],[116.591198,40.051796],[116.590006,40.043616],[116.599814,40.041408],[116.599417,40.047171],[116.601633,40.047658],[116.598517,40.052543],[116.603683,40.052949],[116.610061,40.031214],[116.602762,40.028503],[116.600839,40.018858],[116.595548,40.01751],[116.577814,40.027512],[116.578797,40.033097],[116.570474,40.032431],[116.564242,40.039655],[116.550753,40.045499],[116.54655,40.048956],[116.552761,40.05488],[116.551757,40.059765],[116.578149,40.076461]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110114,\"name\":\"昌平区\",\"center\":[116.235906,40.218085],\"centroid\":[116.210635,40.215461],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":10,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.466832,40.090185],[116.466247,40.08235],[116.461855,40.080825],[116.462608,40.076786],[116.458823,40.075796],[116.458635,40.070377],[116.462127,40.06731],[116.459408,40.059992],[116.45142,40.06129],[116.451629,40.058759],[116.442867,40.061323],[116.433268,40.06228],[116.415618,40.056],[116.409595,40.055626],[116.406124,40.049768],[116.408884,40.043291],[116.405266,40.038974],[116.395333,40.036766],[116.39297,40.041733],[116.390649,40.041279],[116.38519,40.042853],[116.376888,40.042756],[116.376114,40.045466],[116.36959,40.04696],[116.367394,40.053436],[116.372999,40.054344],[116.372267,40.05785],[116.379272,40.059002],[116.382848,40.061582],[116.381928,40.066402],[116.373354,40.065623],[116.372538,40.06843],[116.363149,40.068965],[116.363023,40.065931],[116.357293,40.066012],[116.34667,40.063659],[116.346963,40.06043],[116.342676,40.059635],[116.343366,40.055448],[116.340271,40.055091],[116.338828,40.058921],[116.325946,40.054799],[116.318292,40.061663],[116.309446,40.060609],[116.305995,40.063043],[116.302942,40.060803],[116.290353,40.083145],[116.279897,40.079754],[116.2731,40.092699],[116.27333,40.09557],[116.265237,40.094694],[116.258273,40.101522],[116.263899,40.10402],[116.263334,40.110588],[116.258022,40.11195],[116.25957,40.106907],[116.255868,40.104474],[116.252732,40.106517],[116.245956,40.10535],[116.240498,40.108009],[116.243363,40.113279],[116.241836,40.118403],[116.245036,40.118825],[116.247043,40.136204],[116.233785,40.136577],[116.215445,40.143174],[116.212224,40.140548],[116.206285,40.143092],[116.205658,40.150175],[116.203211,40.153773],[116.202166,40.160984],[116.194282,40.160076],[116.192065,40.155669],[116.182696,40.158099],[116.183094,40.153335],[116.180417,40.14729],[116.174122,40.143595],[116.167681,40.141844],[116.168622,40.135442],[116.17178,40.127936],[116.167409,40.128455],[116.169563,40.124564],[116.152708,40.121776],[116.132925,40.121354],[116.132214,40.115079],[116.127676,40.116393],[116.113309,40.115598],[116.105864,40.118014],[116.102246,40.115987],[116.096056,40.121257],[116.089783,40.119327],[116.08445,40.120252],[116.077883,40.115047],[116.073847,40.115436],[116.072676,40.109258],[116.069456,40.104912],[116.062931,40.10282],[116.061969,40.09956],[116.055905,40.09643],[116.051848,40.091661],[116.048878,40.085303],[116.043775,40.083502],[116.037899,40.084524],[116.033926,40.079657],[116.030914,40.082188],[116.020856,40.074579],[116.007785,40.080614],[116.005129,40.079803],[115.99735,40.082074],[115.986434,40.083469],[115.979993,40.081669],[115.977232,40.079041],[115.968575,40.075488],[115.966588,40.084556],[115.960461,40.092456],[115.962092,40.094419],[115.962552,40.10235],[115.957449,40.100679],[115.956717,40.096041],[115.952681,40.10102],[115.943229,40.103339],[115.947913,40.107409],[115.933588,40.124824],[115.921438,40.134485],[115.906549,40.138181],[115.904457,40.136123],[115.900442,40.138716],[115.8816,40.139073],[115.874155,40.14387],[115.870768,40.144276],[115.865184,40.148635],[115.856547,40.147468],[115.853348,40.149332],[115.853557,40.154162],[115.84676,40.163171],[115.844418,40.168016],[115.846865,40.169458],[115.854205,40.179939],[115.848099,40.183843],[115.855502,40.188865],[115.863072,40.186095],[115.870308,40.186079],[115.873695,40.192687],[115.87633,40.193918],[115.877313,40.200849],[115.886326,40.206663],[115.883169,40.209594],[115.885072,40.212039],[115.883106,40.216119],[115.891366,40.225379],[115.891994,40.228147],[115.898476,40.234509],[115.898079,40.236419],[115.906695,40.23412],[115.911965,40.234477],[115.916628,40.242391],[115.916984,40.247068],[115.935826,40.25558],[115.942706,40.253557],[115.950276,40.256163],[115.960001,40.256648],[115.965605,40.259415],[115.968888,40.264269],[115.967006,40.265612],[115.976396,40.270983],[115.981812,40.276903],[115.978822,40.281627],[115.981227,40.28525],[115.978675,40.289633],[115.982732,40.297977],[115.990323,40.299498],[115.987919,40.303799],[115.975538,40.308698],[115.976417,40.311511],[115.973259,40.318997],[115.979658,40.320532],[115.982711,40.324202],[115.993398,40.328986],[115.999065,40.325463],[116.007597,40.33314],[116.01684,40.33466],[116.026481,40.324283],[116.026167,40.320484],[116.031144,40.312352],[116.040095,40.312724],[116.042479,40.316846],[116.051116,40.315812],[116.056971,40.322181],[116.053353,40.326853],[116.061802,40.336809],[116.06841,40.336971],[116.073429,40.339831],[116.077716,40.339346],[116.083342,40.33571],[116.086353,40.330813],[116.098649,40.330005],[116.102978,40.331524],[116.110381,40.330813],[116.116634,40.323668],[116.116237,40.321955],[116.122385,40.312805],[116.132737,40.31198],[116.141959,40.316879],[116.138383,40.324671],[116.13809,40.330974],[116.143904,40.336082],[116.137651,40.336534],[116.137567,40.340769],[116.140809,40.343047],[116.138404,40.345229],[116.144782,40.348541],[116.147543,40.340655],[116.144719,40.336631],[116.152603,40.337714],[116.155677,40.344906],[116.1507,40.349252],[116.145514,40.351046],[116.148651,40.35696],[116.148233,40.361807],[116.159295,40.366265],[116.168789,40.366718],[116.170713,40.369351],[116.177154,40.370934],[116.180354,40.367687],[116.192985,40.372775],[116.209129,40.376232],[116.211451,40.381756],[116.222221,40.382111],[116.226989,40.38111],[116.23184,40.374988],[116.23665,40.377427],[116.241962,40.377508],[116.24353,40.379818],[116.247796,40.374471],[116.252104,40.376297],[116.25338,40.381239],[116.258336,40.383193],[116.261264,40.380561],[116.270863,40.382693],[116.282845,40.375263],[116.290729,40.383177],[116.289872,40.391672],[116.293762,40.392415],[116.295581,40.384437],[116.302691,40.387473],[116.313106,40.389459],[116.32078,40.386859],[116.32398,40.387295],[116.337364,40.379769],[116.34506,40.373163],[116.355369,40.37137],[116.360033,40.366815],[116.357356,40.364084],[116.352797,40.364391],[116.348866,40.356427],[116.355641,40.356814],[116.363923,40.359028],[116.369673,40.356362],[116.367101,40.350351],[116.364508,40.349107],[116.369903,40.342401],[116.368231,40.334805],[116.365909,40.331702],[116.376135,40.334352],[116.375069,40.337375],[116.384563,40.339055],[116.391422,40.338393],[116.396358,40.334853],[116.408633,40.334886],[116.408989,40.333205],[116.417061,40.329843],[116.424359,40.331265],[116.427914,40.329213],[116.43423,40.329116],[116.438245,40.333221],[116.443745,40.322682],[116.449182,40.32113],[116.455184,40.316345],[116.44822,40.305982],[116.443766,40.302457],[116.448011,40.300484],[116.45096,40.293045],[116.449412,40.286722],[116.45533,40.284845],[116.460308,40.28711],[116.469634,40.283001],[116.472081,40.280122],[116.478794,40.280025],[116.484001,40.2759],[116.484273,40.267634],[116.493245,40.262489],[116.501839,40.262974],[116.505959,40.261356],[116.503011,40.25969],[116.501024,40.251599],[116.493705,40.251179],[116.482098,40.245385],[116.481094,40.238248],[116.483771,40.225185],[116.477979,40.225201],[116.473712,40.221203],[116.472249,40.205092],[116.484503,40.196493],[116.488016,40.191796],[116.487975,40.184686],[116.490129,40.181316],[116.485151,40.176764],[116.483332,40.171742],[116.480802,40.171937],[116.476912,40.163576],[116.477916,40.159979],[116.484629,40.160465],[116.492303,40.156981],[116.490777,40.148992],[116.480781,40.14742],[116.482307,40.140629],[116.484754,40.140078],[116.487222,40.124678],[116.492199,40.111561],[116.489292,40.101668],[116.480885,40.096965],[116.473357,40.097516],[116.466498,40.094954],[116.466832,40.090185]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110115,\"name\":\"大兴区\",\"center\":[116.338033,39.728908],\"centroid\":[116.421058,39.649884],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":11,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.534944,39.82482],[116.539586,39.821563],[116.533375,39.819658],[116.538373,39.81513],[116.546634,39.803501],[116.555145,39.793548],[116.562423,39.796936],[116.565078,39.793988],[116.574677,39.798386],[116.594377,39.776685],[116.576957,39.771943],[116.561565,39.771111],[116.548119,39.765554],[116.540716,39.760502],[116.536408,39.753917],[116.527562,39.743304],[116.53624,39.740663],[116.537997,39.738071],[116.532413,39.73962],[116.531849,39.730016],[116.53783,39.728043],[116.536972,39.72152],[116.534609,39.718079],[116.52936,39.719808],[116.527332,39.716578],[116.53256,39.71529],[116.530552,39.713268],[116.535676,39.711881],[116.544961,39.715045],[116.573276,39.714507],[116.573464,39.709125],[116.579884,39.710234],[116.581202,39.712517],[116.590152,39.713349],[116.590194,39.711522],[116.598371,39.711963],[116.604017,39.714752],[116.604561,39.718731],[116.609141,39.719367],[116.616251,39.725581],[116.621876,39.725825],[116.621646,39.728076],[116.628129,39.727749],[116.631203,39.722971],[116.637623,39.723934],[116.638502,39.717166],[116.644587,39.709647],[116.652994,39.708619],[116.653098,39.703823],[116.647912,39.703579],[116.64626,39.700447],[116.647097,39.694786],[116.651509,39.694459],[116.651321,39.687868],[116.658097,39.686155],[116.65818,39.68857],[116.666566,39.687101],[116.669577,39.683642],[116.666022,39.679693],[116.668574,39.674602],[116.675203,39.676234],[116.680786,39.674896],[116.685554,39.676886],[116.692706,39.676789],[116.693543,39.674944],[116.703769,39.674145],[116.704857,39.667192],[116.702138,39.657644],[116.702891,39.649923],[116.70609,39.642903],[116.710419,39.639686],[116.716003,39.640356],[116.723489,39.639033],[116.721398,39.629415],[116.725518,39.624075],[116.721858,39.621756],[116.716149,39.62156],[116.70929,39.618114],[116.705338,39.621462],[116.700737,39.62107],[116.702577,39.610421],[116.718282,39.603021],[116.718324,39.601077],[116.724953,39.598006],[116.727065,39.593055],[116.705108,39.587974],[116.700695,39.590964],[116.699127,39.595457],[116.696408,39.595392],[116.694087,39.601355],[116.6889,39.598496],[116.669975,39.603381],[116.670037,39.604916],[116.662384,39.60521],[116.6568,39.602776],[116.657678,39.60075],[116.646532,39.599117],[116.645549,39.60209],[116.635595,39.604818],[116.635407,39.599934],[116.628338,39.599558],[116.620517,39.601665],[116.620182,39.606893],[116.616857,39.607301],[116.616648,39.614096],[116.613177,39.613802],[116.611755,39.618882],[116.607781,39.619698],[116.607886,39.624696],[116.602177,39.624533],[116.600128,39.619649],[116.593561,39.618588],[116.591993,39.621299],[116.579194,39.623487],[116.579382,39.619666],[116.565936,39.61978],[116.565978,39.616138],[116.569637,39.61176],[116.566103,39.61114],[116.566605,39.604361],[116.562276,39.601714],[116.557132,39.601502],[116.549436,39.596143],[116.544187,39.596519],[116.544124,39.603609],[116.540883,39.60142],[116.541803,39.59348],[116.530866,39.596715],[116.530615,39.598774],[116.524446,39.596535],[116.525052,39.593807],[116.521267,39.590229],[116.52317,39.586242],[116.519699,39.581863],[116.520389,39.577156],[116.52614,39.577271],[116.527248,39.57294],[116.520389,39.57191],[116.519385,39.566484],[116.511564,39.565503],[116.510581,39.560502],[116.50805,39.560256],[116.508448,39.551053],[116.489773,39.550268],[116.48948,39.553472],[116.473378,39.553096],[116.470952,39.5546],[116.475134,39.545756],[116.47802,39.543205],[116.478188,39.535487],[116.468819,39.534359],[116.464595,39.531628],[116.464553,39.527638],[116.453846,39.528652],[116.45372,39.526477],[116.440985,39.527311],[116.436802,39.526346],[116.439876,39.523353],[116.440378,39.516271],[116.442741,39.516189],[116.443829,39.509875],[116.433017,39.507438],[116.431699,39.51053],[116.424631,39.509728],[116.423125,39.516337],[116.424046,39.522732],[116.421473,39.525103],[116.411247,39.524678],[116.402652,39.526886],[116.40282,39.51439],[116.407253,39.512116],[116.40857,39.508011],[116.418734,39.506391],[116.422895,39.496608],[116.418504,39.496575],[116.415827,39.48823],[116.411582,39.485105],[116.412376,39.482077],[116.423544,39.485154],[116.427329,39.487788],[116.429964,39.481325],[116.425342,39.481259],[116.428333,39.476219],[116.433644,39.478183],[116.436258,39.482912],[116.444142,39.482192],[116.444059,39.47887],[116.448764,39.476284],[116.448638,39.465122],[116.453992,39.45751],[116.454682,39.453302],[116.450667,39.452648],[116.450353,39.448522],[116.437241,39.445951],[116.434397,39.442758],[116.425635,39.446885],[116.408947,39.450257],[116.399787,39.450044],[116.391903,39.452893],[116.388557,39.450732],[116.373563,39.452058],[116.367791,39.451633],[116.362187,39.454874],[116.351124,39.455529],[116.350162,39.45291],[116.334499,39.457019],[116.325611,39.462961],[116.325088,39.466153],[116.320048,39.468543],[116.319944,39.473436],[116.314779,39.476104],[116.312708,39.480556],[116.306957,39.485023],[116.305284,39.489179],[116.283201,39.493941],[116.279269,39.491306],[116.275631,39.495201],[116.269315,39.495495],[116.257939,39.500518],[116.25706,39.505491],[116.253861,39.510055],[116.245831,39.514897],[116.246709,39.520098],[116.24353,39.524236],[116.246479,39.525299],[116.248256,39.530271],[116.245601,39.53014],[116.246521,39.539788],[116.242505,39.552966],[116.246186,39.557167],[116.243007,39.55836],[116.240644,39.564098],[116.234684,39.563934],[116.236462,39.568396],[116.229373,39.565471],[116.225817,39.568151],[116.221175,39.578921],[116.225085,39.584085],[116.226089,39.591993],[116.222597,39.593938],[116.223141,39.597222],[116.21808,39.608102],[116.219502,39.618931],[116.218875,39.628011],[116.215487,39.64305],[116.216992,39.651572],[116.223162,39.664728],[116.221342,39.667486],[116.22565,39.67359],[116.221238,39.678453],[116.230941,39.692355],[116.23435,39.703823],[116.231945,39.706025],[116.236629,39.71286],[116.245036,39.718421],[116.245768,39.72408],[116.248466,39.728027],[116.248026,39.732641],[116.243948,39.741658],[116.251895,39.749092],[116.252481,39.758676],[116.254426,39.76324],[116.252481,39.771747],[116.253777,39.77952],[116.251602,39.782518],[116.251519,39.793059],[116.259298,39.797621],[116.262184,39.792782],[116.27423,39.796936],[116.287237,39.799103],[116.289182,39.795894],[116.296083,39.795568],[116.291148,39.793271],[116.295205,39.790958],[116.301541,39.774941],[116.307062,39.770085],[116.31068,39.772057],[116.317978,39.783447],[116.321784,39.783626],[116.322872,39.798386],[116.326824,39.798386],[116.328225,39.801416],[116.340124,39.802149],[116.341755,39.807589],[116.355704,39.805668],[116.356833,39.800471],[116.367039,39.79982],[116.368189,39.794819],[116.365742,39.794151],[116.367582,39.784962],[116.378478,39.785646],[116.379209,39.77939],[116.385609,39.778852],[116.390649,39.780465],[116.391903,39.765277],[116.398888,39.765864],[116.397905,39.781068],[116.396023,39.786738],[116.42024,39.787439],[116.421034,39.794134],[116.429274,39.794102],[116.429399,39.803583],[116.425719,39.805358],[116.422456,39.81044],[116.417772,39.81013],[116.415262,39.812525],[116.410013,39.811336],[116.41016,39.817052],[116.419759,39.815375],[116.418441,39.822915],[116.414426,39.824282],[116.415785,39.829428],[116.420072,39.826611],[116.425217,39.831903],[116.430068,39.830112],[116.43699,39.830649],[116.436677,39.827425],[116.44592,39.826692],[116.443912,39.82096],[116.452737,39.823012],[116.462775,39.815945],[116.468463,39.814511],[116.474256,39.809772],[116.485256,39.81272],[116.485632,39.816889],[116.495357,39.818795],[116.498201,39.8157],[116.505813,39.817866],[116.502801,39.819006],[116.510142,39.821449],[116.510602,39.827637],[116.516164,39.829835],[116.525366,39.829754],[116.525868,39.826904],[116.534944,39.82482]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110116,\"name\":\"怀柔区\",\"center\":[116.637122,40.324272],\"centroid\":[116.586079,40.63069],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":12,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.289872,40.391672],[116.286003,40.396032],[116.289746,40.402539],[116.287864,40.404719],[116.291608,40.408448],[116.288513,40.413437],[116.289433,40.418021],[116.291942,40.416617],[116.296648,40.420701],[116.294452,40.429304],[116.290667,40.435856],[116.289788,40.440907],[116.294368,40.449975],[116.293824,40.452831],[116.300955,40.458429],[116.306853,40.466092],[116.301646,40.468108],[116.294786,40.47535],[116.291691,40.485317],[116.29717,40.486768],[116.303779,40.485817],[116.31022,40.491702],[116.31321,40.491799],[116.323227,40.500151],[116.330567,40.500748],[116.336653,40.498636],[116.34232,40.500457],[116.348636,40.499071],[116.357042,40.501941],[116.365909,40.499635],[116.369632,40.500312],[116.377537,40.49683],[116.378603,40.491525],[116.376825,40.485736],[116.387344,40.482043],[116.38609,40.475802],[116.393702,40.47256],[116.4065,40.481995],[116.413673,40.481527],[116.416664,40.483011],[116.420971,40.480301],[116.433142,40.478189],[116.443201,40.481801],[116.455937,40.480914],[116.457903,40.488445],[116.465577,40.48701],[116.468212,40.48493],[116.483541,40.484994],[116.487347,40.481737],[116.492157,40.481027],[116.508322,40.483172],[116.511543,40.486929],[116.519092,40.491799],[116.519155,40.496604],[116.51194,40.501135],[116.506398,40.508212],[116.500459,40.510904],[116.497762,40.518093],[116.492073,40.518093],[116.488581,40.515853],[116.476306,40.514192],[116.470345,40.518963],[116.46587,40.518802],[116.460956,40.524363],[116.467125,40.530068],[116.470617,40.535418],[116.479651,40.541396],[116.484587,40.552867],[116.496277,40.555106],[116.499999,40.560921],[116.505144,40.562581],[116.509577,40.57276],[116.513153,40.572792],[116.517796,40.579749],[116.525136,40.583002],[116.531577,40.59131],[116.530929,40.595883],[116.535948,40.59944],[116.532915,40.606459],[116.535634,40.615698],[116.538938,40.619673],[116.539294,40.625612],[116.545003,40.627076],[116.551674,40.625209],[116.561231,40.628557],[116.568989,40.625483],[116.574092,40.631678],[116.573903,40.63628],[116.563886,40.636908],[116.55389,40.642877],[116.551151,40.642828],[116.550335,40.647606],[116.545023,40.650116],[116.544103,40.653767],[116.540046,40.656679],[116.529507,40.654588],[116.527039,40.6584],[116.518381,40.660925],[116.520096,40.66411],[116.517273,40.665734],[116.513488,40.672344],[116.505938,40.673067],[116.501568,40.671186],[116.492826,40.673984],[116.487138,40.674338],[116.483374,40.679403],[116.488811,40.69196],[116.496653,40.696879],[116.502676,40.697361],[116.501066,40.70228],[116.501923,40.706796],[116.506064,40.710879],[116.503115,40.715893],[116.504119,40.720135],[116.506858,40.720039],[116.510748,40.72645],[116.509493,40.73548],[116.513697,40.741456],[116.506461,40.743432],[116.501819,40.746581],[116.502906,40.756635],[116.50025,40.760811],[116.495482,40.759735],[116.491404,40.7633],[116.485193,40.765179],[116.4803,40.771586],[116.471517,40.771233],[116.465452,40.772742],[116.465849,40.774525],[116.460663,40.78244],[116.461416,40.78854],[116.457233,40.7983],[116.452152,40.798059],[116.450981,40.801927],[116.440002,40.809133],[116.439897,40.815038],[116.436823,40.820735],[116.422477,40.822772],[116.414991,40.829318],[116.406458,40.833361],[116.406145,40.837933],[116.399306,40.850492],[116.391778,40.854838],[116.389707,40.861814],[116.38174,40.863465],[116.374881,40.871531],[116.366599,40.876645],[116.365972,40.880188],[116.360514,40.884885],[116.353864,40.887786],[116.344683,40.894694],[116.342236,40.899887],[116.334436,40.90463],[116.33544,40.910495],[116.334122,40.920829],[116.338828,40.925732],[116.339894,40.929416],[116.35012,40.936048],[116.358925,40.93608],[116.364801,40.942999],[116.370343,40.943655],[116.379941,40.935775],[116.379732,40.933228],[116.384019,40.928535],[116.384877,40.922848],[116.39274,40.913123],[116.396316,40.911264],[116.398533,40.906024],[116.404764,40.905736],[116.413715,40.899758],[116.418922,40.902339],[116.430905,40.903364],[116.436614,40.89939],[116.448492,40.899919],[116.45073,40.901345],[116.458676,40.900592],[116.464344,40.896329],[116.474047,40.896008],[116.477581,40.901746],[116.473608,40.91974],[116.468422,40.925091],[116.467209,40.931322],[116.461541,40.932684],[116.462315,40.935231],[116.455372,40.945433],[116.454829,40.949533],[116.447446,40.95384],[116.453302,40.964584],[116.451713,40.968667],[116.455519,40.980481],[116.464135,40.984498],[116.474193,40.978608],[116.47894,40.979104],[116.485612,40.982465],[116.493726,40.977919],[116.496737,40.978432],[116.504516,40.975919],[116.51629,40.975198],[116.519573,40.981569],[116.524718,40.981073],[116.533417,40.985698],[116.535634,40.988675],[116.541991,40.99026],[116.547826,40.988003],[116.558617,40.988627],[116.561231,40.993461],[116.569177,40.991636],[116.574928,40.986307],[116.589692,40.976703],[116.597764,40.97475],[116.614515,40.983314],[116.617067,40.998725],[116.614892,41.003574],[116.619179,41.01423],[116.621897,41.015749],[116.62288,41.020693],[116.621228,41.028978],[116.617589,41.034704],[116.614118,41.036096],[116.613491,41.040782],[116.617736,41.048649],[116.61646,41.053382],[116.624093,41.054437],[116.630848,41.0608],[116.637937,41.060497],[116.641158,41.058322],[116.647431,41.059393],[116.653914,41.05626],[116.657009,41.051303],[116.665207,41.046682],[116.673279,41.046378],[116.67698,41.042732],[116.682878,41.041789],[116.688629,41.044651],[116.692246,41.040813],[116.691347,41.037503],[116.69509,41.033265],[116.695739,41.025396],[116.698855,41.021253],[116.693836,41.013686],[116.690866,41.012982],[116.69095,41.007254],[116.683066,41.000486],[116.682543,40.986259],[116.685304,40.982641],[116.681267,40.980737],[116.677921,40.975983],[116.677921,40.970972],[116.687248,40.962551],[116.689298,40.951118],[116.696178,40.94452],[116.702368,40.940628],[116.702786,40.936512],[116.70722,40.934029],[116.712197,40.934846],[116.713891,40.929416],[116.722318,40.92743],[116.717111,40.921695],[116.713347,40.910431],[116.716881,40.910175],[116.723678,40.906313],[116.726145,40.901185],[116.730432,40.897771],[116.739759,40.896665],[116.750257,40.891665],[116.759501,40.889854],[116.758539,40.881983],[116.762135,40.880765],[116.769392,40.882961],[116.772362,40.87852],[116.776795,40.878376],[116.797226,40.860034],[116.796996,40.854886],[116.802413,40.851198],[116.802496,40.842392],[116.805947,40.840836],[116.813622,40.848423],[116.820732,40.848263],[116.823471,40.842681],[116.828009,40.841109],[116.831815,40.842585],[116.837775,40.841542],[116.839741,40.839024],[116.84819,40.839313],[116.848587,40.837147],[116.855425,40.835447],[116.860633,40.830457],[116.861448,40.825356],[116.870378,40.821601],[116.876171,40.8212],[116.876735,40.818456],[116.882172,40.814172],[116.880207,40.804367],[116.886961,40.801076],[116.878575,40.797545],[116.873326,40.798781],[116.871277,40.794785],[116.862577,40.792858],[116.867471,40.784559],[116.858039,40.78305],[116.856806,40.77955],[116.851264,40.778924],[116.850448,40.775006],[116.834785,40.770221],[116.840076,40.760682],[116.831795,40.751303],[116.826211,40.749343],[116.818662,40.75042],[116.810527,40.749118],[116.802977,40.745986],[116.793629,40.748267],[116.783759,40.757631],[116.780727,40.751512],[116.782818,40.747817],[116.786352,40.736026],[116.790472,40.728973],[116.789091,40.712454],[116.786687,40.7103],[116.787105,40.704482],[116.783989,40.700496],[116.769246,40.70281],[116.762867,40.706427],[116.756155,40.705687],[116.754963,40.702891],[116.748668,40.700544],[116.747518,40.697072],[116.74252,40.69593],[116.735807,40.69167],[116.725581,40.689114],[116.725413,40.68466],[116.714915,40.680014],[116.713221,40.669867],[116.714309,40.666104],[116.709855,40.662598],[116.712636,40.653896],[116.711151,40.648218],[116.712197,40.641268],[116.70149,40.632917],[116.70195,40.628444],[116.705128,40.626947],[116.704689,40.620076],[116.701322,40.621379],[116.697955,40.618402],[116.702598,40.612785],[116.70655,40.610998],[116.707993,40.606507],[116.705609,40.60303],[116.711235,40.600213],[116.708495,40.595206],[116.711611,40.59189],[116.708955,40.590054],[116.714351,40.58028],[116.71456,40.570682],[116.710503,40.568685],[116.709855,40.565512],[116.699336,40.563563],[116.686349,40.564497],[116.679636,40.562001],[116.682397,40.556766],[116.66872,40.557507],[116.665771,40.552432],[116.67698,40.554462],[116.68225,40.548904],[116.690699,40.549468],[116.702138,40.545456],[116.701469,40.539913],[116.706948,40.532582],[116.712573,40.529955],[116.717216,40.524798],[116.712239,40.522058],[116.711402,40.516465],[116.701071,40.510549],[116.699106,40.50444],[116.698353,40.493266],[116.693376,40.490783],[116.694149,40.485462],[116.704334,40.479043],[116.69348,40.481704],[116.693397,40.476108],[116.695571,40.466721],[116.698667,40.468043],[116.706174,40.459929],[116.716902,40.457074],[116.719223,40.460397],[116.723594,40.458542],[116.7196,40.455735],[116.719265,40.448636],[116.725811,40.443085],[116.72098,40.440988],[116.716421,40.441714],[116.723552,40.435065],[116.722339,40.423832],[116.72556,40.418053],[116.73244,40.420604],[116.733235,40.418312],[116.741139,40.414631],[116.728801,40.40982],[116.724389,40.409191],[116.723427,40.405316],[116.718512,40.402055],[116.713242,40.40157],[116.713849,40.395806],[116.711716,40.386908],[116.716254,40.384114],[116.707115,40.377007],[116.706509,40.373809],[116.714079,40.368608],[116.719872,40.369044],[116.718094,40.361338],[116.726773,40.361193],[116.725769,40.355619],[116.729031,40.355619],[116.727484,40.346522],[116.723887,40.344033],[116.722967,40.339152],[116.731185,40.339023],[116.73129,40.335031],[116.744046,40.339136],[116.744653,40.333706],[116.751491,40.335742],[116.758559,40.333884],[116.759689,40.326853],[116.762846,40.326707],[116.768639,40.317816],[116.773324,40.315973],[116.762888,40.310428],[116.756845,40.302586],[116.754461,40.303686],[116.738965,40.284101],[116.738421,40.284392],[116.710837,40.256227],[116.704668,40.257101],[116.704585,40.251551],[116.696554,40.248072],[116.697265,40.243216],[116.69072,40.240886],[116.684007,40.234282],[116.678131,40.234379],[116.676311,40.238604],[116.670247,40.234865],[116.668783,40.238539],[116.673321,40.246777],[116.669494,40.253153],[116.666901,40.262085],[116.648519,40.260143],[116.643081,40.25715],[116.641492,40.259463],[116.637038,40.25846],[116.63526,40.261454],[116.623654,40.26058],[116.6238,40.252667],[116.622044,40.250467],[116.61324,40.251761],[116.603787,40.251324],[116.604624,40.256146],[116.600755,40.258978],[116.599647,40.265385],[116.590842,40.264139],[116.588396,40.269462],[116.585238,40.266226],[116.58254,40.268362],[116.570202,40.268863],[116.570516,40.273102],[116.565371,40.273377],[116.566187,40.27802],[116.552176,40.27383],[116.546236,40.276224],[116.540904,40.274946],[116.53693,40.277178],[116.540088,40.267165],[116.535717,40.261373],[116.526181,40.261324],[116.523965,40.257522],[116.509201,40.258056],[116.505959,40.261356],[116.501839,40.262974],[116.493245,40.262489],[116.484273,40.267634],[116.484001,40.2759],[116.478794,40.280025],[116.472081,40.280122],[116.469634,40.283001],[116.460308,40.28711],[116.45533,40.284845],[116.449412,40.286722],[116.45096,40.293045],[116.448011,40.300484],[116.443766,40.302457],[116.44822,40.305982],[116.455184,40.316345],[116.449182,40.32113],[116.443745,40.322682],[116.438245,40.333221],[116.43423,40.329116],[116.427914,40.329213],[116.424359,40.331265],[116.417061,40.329843],[116.408989,40.333205],[116.408633,40.334886],[116.396358,40.334853],[116.391422,40.338393],[116.384563,40.339055],[116.375069,40.337375],[116.376135,40.334352],[116.365909,40.331702],[116.368231,40.334805],[116.369903,40.342401],[116.364508,40.349107],[116.367101,40.350351],[116.369673,40.356362],[116.363923,40.359028],[116.355641,40.356814],[116.348866,40.356427],[116.352797,40.364391],[116.357356,40.364084],[116.360033,40.366815],[116.355369,40.37137],[116.34506,40.373163],[116.337364,40.379769],[116.32398,40.387295],[116.32078,40.386859],[116.313106,40.389459],[116.302691,40.387473],[116.295581,40.384437],[116.293762,40.392415],[116.289872,40.391672]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110117,\"name\":\"平谷区\",\"center\":[117.112335,40.144783],\"centroid\":[117.145392,40.208997],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":13,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.961932,40.051358],[116.962288,40.063529],[116.970652,40.063805],[116.973476,40.066304],[116.978599,40.064893],[116.980816,40.071188],[116.982844,40.070685],[116.986274,40.078359],[116.981192,40.08149],[116.981862,40.089828],[116.979938,40.093867],[116.975462,40.095051],[116.967976,40.101214],[116.973329,40.103712],[116.976069,40.111188],[116.971301,40.114009],[116.969189,40.118776],[116.971594,40.124224],[116.96578,40.127823],[116.967829,40.129849],[116.970025,40.140321],[116.977763,40.151374],[116.972054,40.156301],[116.968749,40.163495],[116.961242,40.171937],[116.962037,40.175549],[116.951371,40.174788],[116.945349,40.1813],[116.945809,40.186224],[116.94997,40.186354],[116.945913,40.193141],[116.939556,40.192347],[116.930898,40.207084],[116.929685,40.211585],[116.938029,40.210549],[116.940978,40.223922],[116.935206,40.229847],[116.936837,40.232259],[116.945641,40.233441],[116.946896,40.236095],[116.953567,40.236079],[116.956286,40.232615],[116.959924,40.23268],[116.974082,40.24456],[116.975881,40.249463],[116.969293,40.253962],[116.961786,40.252635],[116.954341,40.25715],[116.950953,40.261081],[116.960468,40.2704],[116.961995,40.273442],[116.970527,40.276531],[116.971343,40.281724],[116.983765,40.287886],[116.991042,40.287724],[116.990833,40.290603],[116.99834,40.29083],[117.004091,40.293918],[117.002,40.299675],[117.011306,40.307113],[117.007563,40.314599],[117.006998,40.319255],[117.01024,40.320726],[117.012686,40.32674],[117.020842,40.336179],[117.026133,40.338458],[117.032762,40.33752],[117.039266,40.340057],[117.048279,40.341528],[117.052817,40.337649],[117.060931,40.337795],[117.066933,40.342983],[117.072286,40.342999],[117.072705,40.345584],[117.085231,40.350432],[117.0946,40.358285],[117.100915,40.360546],[117.117457,40.353744],[117.125362,40.35641],[117.128122,40.358866],[117.142385,40.362824],[117.147466,40.369965],[117.155329,40.371402],[117.157609,40.374859],[117.16796,40.371467],[117.170491,40.374342],[117.179943,40.375021],[117.185799,40.377767],[117.199747,40.375861],[117.204536,40.373082],[117.211124,40.373825],[117.218527,40.377718],[117.223901,40.375538],[117.22618,40.369044],[117.237055,40.370627],[117.242283,40.369981],[117.247762,40.364101],[117.250188,40.358381],[117.254182,40.357105],[117.25437,40.351191],[117.257089,40.341463],[117.261125,40.338781],[117.259828,40.336195],[117.267127,40.335694],[117.274969,40.331944],[117.271288,40.325285],[117.271853,40.319853],[117.274697,40.314405],[117.274342,40.308552],[117.285739,40.302214],[117.293309,40.296748],[117.294647,40.290894],[117.292368,40.286236],[117.29632,40.2781],[117.304309,40.278181],[117.316835,40.281999],[117.316794,40.285104],[117.32336,40.284441],[117.331244,40.289665],[117.334005,40.285654],[117.337999,40.265903],[117.337622,40.263266],[117.342202,40.256502],[117.339881,40.246194],[117.343457,40.242909],[117.345464,40.234946],[117.348246,40.234574],[117.351613,40.229459],[117.355691,40.229556],[117.36027,40.23255],[117.373989,40.232777],[117.386829,40.227111],[117.390029,40.227969],[117.39373,40.221656],[117.377586,40.218612],[117.378443,40.21029],[117.385679,40.207894],[117.393145,40.203376],[117.379552,40.201319],[117.381455,40.194906],[117.384382,40.195278],[117.38409,40.187828],[117.388356,40.188249],[117.397704,40.192914],[117.4077,40.187504],[117.404751,40.183244],[117.401217,40.183617],[117.391618,40.177607],[117.393186,40.174901],[117.380597,40.17691],[117.381225,40.172455],[117.377021,40.176327],[117.372023,40.176538],[117.368844,40.17299],[117.364014,40.176683],[117.359413,40.173346],[117.353746,40.17367],[117.351111,40.171661],[117.357343,40.164273],[117.360626,40.156965],[117.351717,40.150564],[117.355272,40.148587],[117.350525,40.144827],[117.356883,40.145037],[117.35636,40.140904],[117.351404,40.139932],[117.349082,40.136528],[117.330617,40.133691],[117.33093,40.13575],[117.323276,40.14071],[117.318571,40.138522],[117.313761,40.139964],[117.307613,40.136982],[117.302991,40.125926],[117.297073,40.121273],[117.297094,40.118857],[117.285425,40.121322],[117.275659,40.113636],[117.276663,40.109307],[117.274362,40.105804],[117.269908,40.107198],[117.266834,40.112177],[117.260393,40.114155],[117.255541,40.113279],[117.249268,40.116474],[117.245357,40.113215],[117.238226,40.111755],[117.236009,40.108382],[117.229025,40.103533],[117.228606,40.100257],[117.224403,40.098619],[117.224487,40.094662],[117.211249,40.096608],[117.21104,40.090785],[117.213989,40.086243],[117.204285,40.079657],[117.203616,40.076704],[117.208175,40.076834],[117.205247,40.07028],[117.197572,40.067748],[117.198576,40.070101],[117.191842,40.072973],[117.189207,40.082853],[117.18538,40.083875],[117.181533,40.080095],[117.186426,40.076202],[117.183603,40.072081],[117.175593,40.071642],[117.172227,40.074157],[117.158466,40.077435],[117.160139,40.075553],[117.15625,40.069338],[117.139227,40.064049],[117.128896,40.06546],[117.119507,40.072421],[117.107775,40.071805],[117.103927,40.075585],[117.085608,40.075131],[117.085064,40.068592],[117.080986,40.065087],[117.081049,40.068819],[117.069652,40.06757],[117.070634,40.064179],[117.064382,40.062783],[117.061182,40.060105],[117.052022,40.059375],[117.053382,40.052884],[117.051437,40.051163],[117.038639,40.049378],[117.033159,40.04235],[117.027032,40.038828],[117.028517,40.033957],[117.023916,40.033746],[117.024836,40.03011],[117.020884,40.032448],[117.018061,40.030467],[117.011369,40.031246],[117.000683,40.029915],[117.00016,40.032253],[116.991837,40.036896],[116.985626,40.038828],[116.972095,40.036977],[116.969293,40.048583],[116.964902,40.047836],[116.961932,40.051358]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110118,\"name\":\"密云区\",\"center\":[116.843352,40.377362],\"centroid\":[116.994846,40.526834],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":14,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[116.886961,40.801076],[116.889073,40.798348],[116.896686,40.796438],[116.89495,40.790675],[116.895013,40.781733],[116.898589,40.77674],[116.904569,40.777286],[116.923391,40.773722],[116.923181,40.766897],[116.927908,40.757824],[116.923516,40.750596],[116.926548,40.744894],[116.940706,40.739786],[116.942714,40.729857],[116.946645,40.726916],[116.960134,40.721083],[116.96647,40.71525],[116.965111,40.709593],[116.969628,40.706362],[116.977533,40.705559],[116.979938,40.702826],[116.988177,40.703164],[116.990456,40.701203],[117.002481,40.697345],[117.005513,40.694853],[117.013418,40.694082],[117.018291,40.696011],[117.027848,40.694355],[117.031047,40.692136],[117.035585,40.694467],[117.036108,40.697265],[117.044494,40.700367],[117.054887,40.699804],[117.058338,40.70154],[117.076804,40.700029],[117.081153,40.702617],[117.086047,40.702055],[117.095144,40.705559],[117.110661,40.708243],[117.117792,40.700078],[117.128792,40.700913],[117.132493,40.698663],[117.142531,40.6972],[117.147571,40.698968],[117.159491,40.696332],[117.16474,40.699628],[117.169236,40.699097],[117.176639,40.693567],[117.180947,40.694082],[117.182453,40.697072],[117.193996,40.696268],[117.197802,40.694291],[117.202361,40.695577],[117.208405,40.694435],[117.210622,40.691976],[117.217335,40.69196],[117.218715,40.689484],[117.233207,40.683583],[117.234336,40.680577],[117.241635,40.676669],[117.256775,40.679467],[117.261397,40.681155],[117.267754,40.676669],[117.273401,40.670076],[117.278629,40.667551],[117.278608,40.664463],[117.290423,40.660185],[117.321164,40.658287],[117.331851,40.661504],[117.337622,40.664447],[117.336681,40.666956],[117.342411,40.673437],[117.359748,40.673919],[117.37058,40.679708],[117.378192,40.678808],[117.386996,40.684178],[117.397223,40.683776],[117.409226,40.687281],[117.414852,40.685947],[117.419348,40.68696],[117.426437,40.685304],[117.432711,40.681622],[117.437332,40.683599],[117.442226,40.676605],[117.453958,40.677618],[117.465188,40.673534],[117.471503,40.674338],[117.482399,40.679033],[117.484741,40.677087],[117.493357,40.67527],[117.502934,40.669674],[117.514583,40.660523],[117.513913,40.656196],[117.50283,40.653076],[117.505026,40.646142],[117.501972,40.644518],[117.500425,40.6362],[117.489948,40.636023],[117.486163,40.633496],[117.477986,40.635331],[117.475539,40.644421],[117.473093,40.644453],[117.467885,40.649521],[117.464309,40.648652],[117.462009,40.653076],[117.449106,40.651596],[117.456467,40.649167],[117.451448,40.646577],[117.45402,40.642844],[117.448876,40.62838],[117.442289,40.627977],[117.438002,40.625692],[117.431561,40.625596],[117.42857,40.631887],[117.428884,40.637632],[117.421188,40.635427],[117.42054,40.629232],[117.424701,40.621862],[117.422987,40.618305],[117.41918,40.617114],[117.412739,40.605123],[117.414747,40.600728],[117.421753,40.593178],[117.420623,40.590875],[117.423217,40.58144],[117.429804,40.579298],[117.429992,40.576126],[117.42123,40.569104],[117.413471,40.569893],[117.40358,40.574257],[117.400589,40.569345],[117.39465,40.567912],[117.389297,40.561244],[117.378422,40.56337],[117.375453,40.567799],[117.369221,40.57036],[117.365917,40.575965],[117.353014,40.578831],[117.350023,40.582197],[117.342767,40.581585],[117.334611,40.576464],[117.328442,40.575948],[117.325451,40.578155],[117.311837,40.578026],[117.299562,40.566801],[117.285592,40.565061],[117.279256,40.560342],[117.273191,40.561501],[117.268507,40.559842],[117.25964,40.552867],[117.24954,40.548179],[117.250606,40.542024],[117.247427,40.540236],[117.252007,40.53632],[117.255123,40.527973],[117.26146,40.51906],[117.264115,40.517271],[117.263133,40.513145],[117.255562,40.514934],[117.246821,40.511968],[117.239543,40.516723],[117.230405,40.511162],[117.219969,40.514321],[117.215013,40.513273],[117.212504,40.507906],[117.214449,40.506922],[117.208572,40.501102],[117.208426,40.498071],[117.212065,40.494685],[117.21792,40.494589],[117.22846,40.481301],[117.225783,40.47585],[117.230907,40.470463],[117.237243,40.468785],[117.233207,40.463204],[117.236532,40.456558],[117.243308,40.455428],[117.252154,40.450459],[117.252635,40.446038],[117.263342,40.442375],[117.257654,40.435372],[117.246737,40.426883],[117.243872,40.422848],[117.234085,40.417149],[117.237515,40.407786],[117.236616,40.400844],[117.240484,40.39763],[117.240694,40.394417],[117.23695,40.394078],[117.235382,40.389556],[117.229045,40.386843],[117.226661,40.378558],[117.223901,40.375538],[117.218527,40.377718],[117.211124,40.373825],[117.204536,40.373082],[117.199747,40.375861],[117.185799,40.377767],[117.179943,40.375021],[117.170491,40.374342],[117.16796,40.371467],[117.157609,40.374859],[117.155329,40.371402],[117.147466,40.369965],[117.142385,40.362824],[117.128122,40.358866],[117.125362,40.35641],[117.117457,40.353744],[117.100915,40.360546],[117.0946,40.358285],[117.085231,40.350432],[117.072705,40.345584],[117.072286,40.342999],[117.066933,40.342983],[117.060931,40.337795],[117.052817,40.337649],[117.048279,40.341528],[117.039266,40.340057],[117.032762,40.33752],[117.026133,40.338458],[117.020842,40.336179],[117.012686,40.32674],[117.01024,40.320726],[117.006998,40.319255],[117.007563,40.314599],[117.011306,40.307113],[117.002,40.299675],[117.004091,40.293918],[116.99834,40.29083],[116.990833,40.290603],[116.991042,40.287724],[116.983765,40.287886],[116.971343,40.281724],[116.970527,40.276531],[116.961995,40.273442],[116.960468,40.2704],[116.950953,40.261081],[116.954341,40.25715],[116.961786,40.252635],[116.969293,40.253962],[116.975881,40.249463],[116.974082,40.24456],[116.959924,40.23268],[116.956286,40.232615],[116.953567,40.236079],[116.946896,40.236095],[116.945641,40.233441],[116.936837,40.232259],[116.935206,40.229847],[116.931065,40.230624],[116.92544,40.225768],[116.922031,40.220134],[116.915507,40.222271],[116.913917,40.220118],[116.908606,40.222401],[116.906598,40.228682],[116.900701,40.228763],[116.893946,40.233457],[116.901746,40.23684],[116.894343,40.240028],[116.892252,40.245709],[116.886585,40.251907],[116.886104,40.255256],[116.881273,40.259221],[116.879893,40.264139],[116.874247,40.268281],[116.876338,40.274348],[116.871737,40.281481],[116.871319,40.290943],[116.859462,40.290878],[116.857182,40.2929],[116.854547,40.303152],[116.848984,40.311204],[116.838382,40.310185],[116.828992,40.304413],[116.830101,40.299206],[116.827215,40.298333],[116.82458,40.290991],[116.825123,40.285347],[116.811823,40.282387],[116.809607,40.28601],[116.800572,40.289196],[116.794487,40.287417],[116.788025,40.289439],[116.787795,40.281449],[116.784073,40.279443],[116.782964,40.273248],[116.773512,40.269527],[116.771651,40.266501],[116.768597,40.270109],[116.762658,40.269058],[116.752788,40.275512],[116.74298,40.279087],[116.738337,40.278764],[116.741098,40.283001],[116.738965,40.284101],[116.754461,40.303686],[116.756845,40.302586],[116.762888,40.310428],[116.773324,40.315973],[116.768639,40.317816],[116.762846,40.326707],[116.759689,40.326853],[116.758559,40.333884],[116.751491,40.335742],[116.744653,40.333706],[116.744046,40.339136],[116.73129,40.335031],[116.731185,40.339023],[116.722967,40.339152],[116.723887,40.344033],[116.727484,40.346522],[116.729031,40.355619],[116.725769,40.355619],[116.726773,40.361193],[116.718094,40.361338],[116.719872,40.369044],[116.714079,40.368608],[116.706509,40.373809],[116.707115,40.377007],[116.716254,40.384114],[116.711716,40.386908],[116.713849,40.395806],[116.713242,40.40157],[116.718512,40.402055],[116.723427,40.405316],[116.724389,40.409191],[116.728801,40.40982],[116.741139,40.414631],[116.733235,40.418312],[116.73244,40.420604],[116.72556,40.418053],[116.722339,40.423832],[116.723552,40.435065],[116.716421,40.441714],[116.72098,40.440988],[116.725811,40.443085],[116.719265,40.448636],[116.7196,40.455735],[116.723594,40.458542],[116.719223,40.460397],[116.716902,40.457074],[116.706174,40.459929],[116.698667,40.468043],[116.695571,40.466721],[116.693397,40.476108],[116.69348,40.481704],[116.704334,40.479043],[116.694149,40.485462],[116.693376,40.490783],[116.698353,40.493266],[116.699106,40.50444],[116.701071,40.510549],[116.711402,40.516465],[116.712239,40.522058],[116.717216,40.524798],[116.712573,40.529955],[116.706948,40.532582],[116.701469,40.539913],[116.702138,40.545456],[116.690699,40.549468],[116.68225,40.548904],[116.67698,40.554462],[116.665771,40.552432],[116.66872,40.557507],[116.682397,40.556766],[116.679636,40.562001],[116.686349,40.564497],[116.699336,40.563563],[116.709855,40.565512],[116.710503,40.568685],[116.71456,40.570682],[116.714351,40.58028],[116.708955,40.590054],[116.711611,40.59189],[116.708495,40.595206],[116.711235,40.600213],[116.705609,40.60303],[116.707993,40.606507],[116.70655,40.610998],[116.702598,40.612785],[116.697955,40.618402],[116.701322,40.621379],[116.704689,40.620076],[116.705128,40.626947],[116.70195,40.628444],[116.70149,40.632917],[116.712197,40.641268],[116.711151,40.648218],[116.712636,40.653896],[116.709855,40.662598],[116.714309,40.666104],[116.713221,40.669867],[116.714915,40.680014],[116.725413,40.68466],[116.725581,40.689114],[116.735807,40.69167],[116.74252,40.69593],[116.747518,40.697072],[116.748668,40.700544],[116.754963,40.702891],[116.756155,40.705687],[116.762867,40.706427],[116.769246,40.70281],[116.783989,40.700496],[116.787105,40.704482],[116.786687,40.7103],[116.789091,40.712454],[116.790472,40.728973],[116.786352,40.736026],[116.782818,40.747817],[116.780727,40.751512],[116.783759,40.757631],[116.793629,40.748267],[116.802977,40.745986],[116.810527,40.749118],[116.818662,40.75042],[116.826211,40.749343],[116.831795,40.751303],[116.840076,40.760682],[116.834785,40.770221],[116.850448,40.775006],[116.851264,40.778924],[116.856806,40.77955],[116.858039,40.78305],[116.867471,40.784559],[116.862577,40.792858],[116.871277,40.794785],[116.873326,40.798781],[116.878575,40.797545],[116.886961,40.801076]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":110119,\"name\":\"延庆区\",\"center\":[115.985006,40.465325],\"centroid\":[116.16401,40.540016],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":110000},\"subFeatureIndex\":15,\"acroutes\":[100000,110000]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[115.967006,40.265612],[115.961611,40.269219],[115.960231,40.274914],[115.955212,40.276984],[115.951698,40.282015],[115.950088,40.289228],[115.946115,40.289034],[115.945885,40.296199],[115.939757,40.304397],[115.943814,40.310945],[115.937185,40.313047],[115.935721,40.316717],[115.929239,40.32105],[115.926792,40.319611],[115.922672,40.325899],[115.92721,40.329601],[115.922881,40.332898],[115.921417,40.338668],[115.924094,40.341059],[115.920581,40.346473],[115.918301,40.35389],[115.909539,40.357622],[115.892997,40.355554],[115.890927,40.357897],[115.88526,40.357024],[115.883169,40.359545],[115.878066,40.359367],[115.876226,40.362146],[115.872754,40.359593],[115.864452,40.359335],[115.861901,40.363422],[115.861859,40.373422],[115.855962,40.37712],[115.846865,40.375085],[115.840633,40.381094],[115.837454,40.381255],[115.836555,40.38568],[115.796445,40.426834],[115.796884,40.432531],[115.78992,40.432483],[115.786679,40.437066],[115.77043,40.444166],[115.773546,40.44812],[115.77248,40.452831],[115.77547,40.45204],[115.7734,40.457397],[115.779527,40.464075],[115.772856,40.462301],[115.770367,40.46493],[115.771559,40.47285],[115.776683,40.477511],[115.776202,40.482704],[115.782204,40.492073],[115.774529,40.493911],[115.768088,40.498345],[115.744039,40.498249],[115.743077,40.494959],[115.73605,40.503988],[115.743098,40.513854],[115.743788,40.518464],[115.748702,40.526087],[115.755624,40.531019],[115.752968,40.536288],[115.75506,40.540042],[115.759577,40.538914],[115.763885,40.540574],[115.770179,40.548002],[115.773902,40.548582],[115.776327,40.552158],[115.784713,40.558376],[115.7922,40.561292],[115.79908,40.5577],[115.804915,40.55865],[115.815036,40.55741],[115.819804,40.559343],[115.82154,40.563305],[115.820662,40.568234],[115.827374,40.587027],[115.846175,40.593049],[115.854895,40.590151],[115.86623,40.593371],[115.867777,40.595786],[115.885406,40.595223],[115.888146,40.597026],[115.894733,40.606878],[115.897849,40.608101],[115.907803,40.617291],[115.920372,40.616632],[115.928297,40.612753],[115.935031,40.613316],[115.944672,40.611095],[115.948331,40.608809],[115.955107,40.609534],[115.967404,40.605896],[115.965877,40.601002],[115.971983,40.60237],[115.97512,40.590779],[115.982147,40.579008],[115.995238,40.579862],[115.996116,40.58392],[116.005109,40.584097],[116.025268,40.60654],[116.028509,40.607328],[116.030036,40.597364],[116.032357,40.599875],[116.04457,40.602032],[116.050907,40.606121],[116.058289,40.607006],[116.062722,40.610322],[116.069811,40.610258],[116.073492,40.612125],[116.076691,40.619883],[116.08583,40.623825],[116.088507,40.626626],[116.098879,40.630584],[116.1044,40.626996],[116.118349,40.627961],[116.122071,40.629989],[116.120419,40.633287],[116.112744,40.640946],[116.111531,40.646287],[116.113225,40.648845],[116.125229,40.654089],[116.13694,40.667648],[116.142858,40.666972],[116.151432,40.663338],[116.162683,40.662437],[116.167597,40.672633],[116.168413,40.67892],[116.171487,40.68167],[116.173683,40.689034],[116.171341,40.695979],[116.176213,40.700544],[116.177907,40.707889],[116.181128,40.712438],[116.184913,40.713675],[116.192274,40.724779],[116.197753,40.7269],[116.2057,40.733038],[116.204717,40.739946],[116.210551,40.741713],[116.213249,40.740139],[116.220359,40.744669],[116.220485,40.749183],[116.223308,40.753793],[116.23366,40.759896],[116.229979,40.762417],[116.231757,40.77149],[116.235625,40.775135],[116.235019,40.78313],[116.245224,40.78838],[116.247943,40.791831],[116.257834,40.787898],[116.261013,40.782938],[116.269587,40.777158],[116.26988,40.770703],[116.274167,40.766335],[116.273456,40.762883],[116.277366,40.76163],[116.281402,40.763926],[116.290918,40.763814],[116.29786,40.756812],[116.304762,40.755656],[116.30794,40.752122],[116.311119,40.75511],[116.30794,40.763734],[116.313168,40.770205],[116.31756,40.77218],[116.330149,40.77377],[116.33314,40.772694],[116.342947,40.773096],[116.353111,40.770221],[116.361204,40.772646],[116.367687,40.77088],[116.37097,40.772453],[116.379837,40.772325],[116.392635,40.778394],[116.403217,40.778635],[116.407838,40.780417],[116.4143,40.777912],[116.416496,40.76937],[116.424861,40.767443],[116.431846,40.768246],[116.437722,40.766865],[116.444414,40.76921],[116.45395,40.76587],[116.465452,40.772742],[116.471517,40.771233],[116.4803,40.771586],[116.485193,40.765179],[116.491404,40.7633],[116.495482,40.759735],[116.50025,40.760811],[116.502906,40.756635],[116.501819,40.746581],[116.506461,40.743432],[116.513697,40.741456],[116.509493,40.73548],[116.510748,40.72645],[116.506858,40.720039],[116.504119,40.720135],[116.503115,40.715893],[116.506064,40.710879],[116.501923,40.706796],[116.501066,40.70228],[116.502676,40.697361],[116.496653,40.696879],[116.488811,40.69196],[116.483374,40.679403],[116.487138,40.674338],[116.492826,40.673984],[116.501568,40.671186],[116.505938,40.673067],[116.513488,40.672344],[116.517273,40.665734],[116.520096,40.66411],[116.518381,40.660925],[116.527039,40.6584],[116.529507,40.654588],[116.540046,40.656679],[116.544103,40.653767],[116.545023,40.650116],[116.550335,40.647606],[116.551151,40.642828],[116.55389,40.642877],[116.563886,40.636908],[116.573903,40.63628],[116.574092,40.631678],[116.568989,40.625483],[116.561231,40.628557],[116.551674,40.625209],[116.545003,40.627076],[116.539294,40.625612],[116.538938,40.619673],[116.535634,40.615698],[116.532915,40.606459],[116.535948,40.59944],[116.530929,40.595883],[116.531577,40.59131],[116.525136,40.583002],[116.517796,40.579749],[116.513153,40.572792],[116.509577,40.57276],[116.505144,40.562581],[116.499999,40.560921],[116.496277,40.555106],[116.484587,40.552867],[116.479651,40.541396],[116.470617,40.535418],[116.467125,40.530068],[116.460956,40.524363],[116.46587,40.518802],[116.470345,40.518963],[116.476306,40.514192],[116.488581,40.515853],[116.492073,40.518093],[116.497762,40.518093],[116.500459,40.510904],[116.506398,40.508212],[116.51194,40.501135],[116.519155,40.496604],[116.519092,40.491799],[116.511543,40.486929],[116.508322,40.483172],[116.492157,40.481027],[116.487347,40.481737],[116.483541,40.484994],[116.468212,40.48493],[116.465577,40.48701],[116.457903,40.488445],[116.455937,40.480914],[116.443201,40.481801],[116.433142,40.478189],[116.420971,40.480301],[116.416664,40.483011],[116.413673,40.481527],[116.4065,40.481995],[116.393702,40.47256],[116.38609,40.475802],[116.387344,40.482043],[116.376825,40.485736],[116.378603,40.491525],[116.377537,40.49683],[116.369632,40.500312],[116.365909,40.499635],[116.357042,40.501941],[116.348636,40.499071],[116.34232,40.500457],[116.336653,40.498636],[116.330567,40.500748],[116.323227,40.500151],[116.31321,40.491799],[116.31022,40.491702],[116.303779,40.485817],[116.29717,40.486768],[116.291691,40.485317],[116.294786,40.47535],[116.301646,40.468108],[116.306853,40.466092],[116.300955,40.458429],[116.293824,40.452831],[116.294368,40.449975],[116.289788,40.440907],[116.290667,40.435856],[116.294452,40.429304],[116.296648,40.420701],[116.291942,40.416617],[116.289433,40.418021],[116.288513,40.413437],[116.291608,40.408448],[116.287864,40.404719],[116.289746,40.402539],[116.286003,40.396032],[116.289872,40.391672],[116.290729,40.383177],[116.282845,40.375263],[116.270863,40.382693],[116.261264,40.380561],[116.258336,40.383193],[116.25338,40.381239],[116.252104,40.376297],[116.247796,40.374471],[116.24353,40.379818],[116.241962,40.377508],[116.23665,40.377427],[116.23184,40.374988],[116.226989,40.38111],[116.222221,40.382111],[116.211451,40.381756],[116.209129,40.376232],[116.192985,40.372775],[116.180354,40.367687],[116.177154,40.370934],[116.170713,40.369351],[116.168789,40.366718],[116.159295,40.366265],[116.148233,40.361807],[116.148651,40.35696],[116.145514,40.351046],[116.1507,40.349252],[116.155677,40.344906],[116.152603,40.337714],[116.144719,40.336631],[116.147543,40.340655],[116.144782,40.348541],[116.138404,40.345229],[116.140809,40.343047],[116.137567,40.340769],[116.137651,40.336534],[116.143904,40.336082],[116.13809,40.330974],[116.138383,40.324671],[116.141959,40.316879],[116.132737,40.31198],[116.122385,40.312805],[116.116237,40.321955],[116.116634,40.323668],[116.110381,40.330813],[116.102978,40.331524],[116.098649,40.330005],[116.086353,40.330813],[116.083342,40.33571],[116.077716,40.339346],[116.073429,40.339831],[116.06841,40.336971],[116.061802,40.336809],[116.053353,40.326853],[116.056971,40.322181],[116.051116,40.315812],[116.042479,40.316846],[116.040095,40.312724],[116.031144,40.312352],[116.026167,40.320484],[116.026481,40.324283],[116.01684,40.33466],[116.007597,40.33314],[115.999065,40.325463],[115.993398,40.328986],[115.982711,40.324202],[115.979658,40.320532],[115.973259,40.318997],[115.976417,40.311511],[115.975538,40.308698],[115.987919,40.303799],[115.990323,40.299498],[115.982732,40.297977],[115.978675,40.289633],[115.981227,40.28525],[115.978822,40.281627],[115.981812,40.276903],[115.976396,40.270983],[115.967006,40.265612]]]]}}]}', 'admin', '2020-12-10 10:26:00', NULL, '2020-12-10 10:26:00', '0', NULL); +INSERT INTO `jimu_report_map` VALUES ('1338695077400154114', '无锡市', 'wuxi', '{\"type\":\"FeatureCollection\",\"features\":[{\"type\":\"Feature\",\"properties\":{\"adcode\":320205,\"name\":\"锡山区\",\"center\":[120.357298,31.585559],\"centroid\":[120.482864,31.624824],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":320200},\"subFeatureIndex\":0,\"acroutes\":[100000,320000,320200]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.581713,31.727632],[120.582451,31.721169],[120.58458,31.71792],[120.58509,31.714432],[120.589848,31.714115],[120.590836,31.712997],[120.596788,31.710822],[120.599079,31.710716],[120.600806,31.708849],[120.600231,31.706876],[120.595734,31.705608],[120.592802,31.700817],[120.587024,31.696166],[120.584917,31.69281],[120.578118,31.6937],[120.578367,31.689947],[120.575587,31.691824],[120.576836,31.689463],[120.572405,31.689692],[120.570059,31.688908],[120.568049,31.685199],[120.566235,31.685393],[120.566094,31.683112],[120.562858,31.680513],[120.564161,31.67891],[120.566626,31.678672],[120.566377,31.676143],[120.568766,31.668593],[120.568625,31.665174],[120.566789,31.659931],[120.558589,31.658504],[120.561066,31.655693],[120.571731,31.655781],[120.583429,31.651957],[120.586643,31.651816],[120.592128,31.650282],[120.595854,31.643761],[120.589587,31.636525],[120.595571,31.631395],[120.592107,31.62504],[120.6006,31.617115],[120.596266,31.613298],[120.591488,31.611499],[120.584482,31.613439],[120.577086,31.614162],[120.570026,31.609445],[120.567126,31.609172],[120.568343,31.606183],[120.566464,31.601933],[120.557058,31.600302],[120.553104,31.60561],[120.546251,31.604693],[120.54309,31.601739],[120.545078,31.585717],[120.547782,31.583283],[120.546848,31.579685],[120.548,31.576599],[120.550215,31.575011],[120.553072,31.575082],[120.563629,31.579597],[120.568256,31.576299],[120.573035,31.577472],[120.567419,31.583998],[120.570428,31.585665],[120.573838,31.585947],[120.584254,31.585144],[120.587045,31.583389],[120.594572,31.576008],[120.595962,31.571492],[120.597548,31.563862],[120.599264,31.54846],[120.60502,31.546078],[120.602805,31.541182],[120.602913,31.53827],[120.605118,31.535685],[120.60426,31.530867],[120.605759,31.525247],[120.602349,31.51899],[120.600035,31.51861],[120.598569,31.516166],[120.595636,31.517145],[120.593986,31.525502],[120.592758,31.52755],[120.589826,31.526967],[120.585775,31.524532],[120.576923,31.517498],[120.568549,31.512371],[120.559849,31.508964],[120.555201,31.507579],[120.551616,31.500632],[120.548499,31.497402],[120.548043,31.495089],[120.549086,31.489175],[120.553007,31.486738],[120.555244,31.480294],[120.555233,31.477866],[120.553441,31.477027],[120.551236,31.48213],[120.552062,31.483825],[120.547793,31.486244],[120.546197,31.487912],[120.542971,31.487612],[120.534999,31.487921],[120.533055,31.490675],[120.531024,31.495327],[120.528613,31.497887],[120.5253,31.499229],[120.525267,31.502583],[120.522389,31.504631],[120.519804,31.500888],[120.518295,31.501718],[120.519598,31.504604],[120.521118,31.504507],[120.521129,31.507402],[120.519196,31.508929],[120.518251,31.512759],[120.521542,31.512609],[120.523519,31.514524],[120.521455,31.515672],[120.52265,31.517869],[120.522606,31.521452],[120.528786,31.526588],[120.523888,31.529244],[120.518914,31.527453],[120.516959,31.529817],[120.513016,31.531547],[120.508096,31.534926],[120.506782,31.537476],[120.504544,31.538791],[120.505967,31.542099],[120.502774,31.544552],[120.504523,31.549493],[120.503295,31.552686],[120.498647,31.554697],[120.490707,31.557414],[120.486971,31.555941],[120.481334,31.554883],[120.481693,31.55954],[120.477033,31.558905],[120.47623,31.560511],[120.472819,31.561066],[120.473112,31.563986],[120.46614,31.564674],[120.466715,31.566791],[120.46085,31.565838],[120.457831,31.564171],[120.455116,31.568061],[120.45176,31.5665],[120.451477,31.568255],[120.448545,31.569631],[120.448968,31.571095],[120.444178,31.576475],[120.439237,31.574676],[120.434099,31.576466],[120.429288,31.577286],[120.422543,31.580823],[120.419404,31.581026],[120.415733,31.583425],[120.414267,31.580691],[120.399615,31.580197],[120.394522,31.57674],[120.394804,31.573635],[120.39374,31.573538],[120.39677,31.569516],[120.392588,31.567408],[120.388646,31.570919],[120.387321,31.573441],[120.385051,31.573776],[120.380435,31.575875],[120.37811,31.576025],[120.372028,31.573679],[120.369367,31.573397],[120.366913,31.57009],[120.362753,31.569031],[120.351881,31.568035],[120.348905,31.565847],[120.346135,31.569516],[120.348394,31.570857],[120.349557,31.574455],[120.345886,31.575858],[120.347135,31.581326],[120.34581,31.590876],[120.342334,31.598274],[120.340792,31.599958],[120.341096,31.60308],[120.349231,31.602762],[120.352848,31.603847],[120.352587,31.607479],[120.350013,31.610838],[120.340042,31.610486],[120.321741,31.613562],[120.31794,31.613792],[120.314432,31.612989],[120.314606,31.619072],[120.315779,31.632012],[120.317723,31.634551],[120.323903,31.636146],[120.329985,31.638737],[120.334123,31.637821],[120.334905,31.636199],[120.340683,31.635485],[120.343257,31.63664],[120.346668,31.636128],[120.345266,31.646017],[120.345288,31.65245],[120.357811,31.652714],[120.360461,31.655323],[120.362644,31.655349],[120.366326,31.653419],[120.368075,31.653499],[120.368716,31.655781],[120.374765,31.660962],[120.378751,31.665685],[120.382629,31.667377],[120.391176,31.674478],[120.390981,31.676689],[120.389373,31.677932],[120.383204,31.679491],[120.379349,31.682037],[120.378056,31.684407],[120.376981,31.690978],[120.3776,31.693383],[120.382857,31.694202],[120.384909,31.695171],[120.390307,31.699513],[120.394174,31.699231],[120.398106,31.697408],[120.399398,31.699998],[120.402982,31.699522],[120.411041,31.703538],[120.415375,31.704604],[120.41986,31.704498],[120.427376,31.70249],[120.430309,31.704604],[120.432948,31.705309],[120.44685,31.706084],[120.451173,31.707255],[120.452824,31.711456],[120.456701,31.710725],[120.458309,31.7132],[120.461339,31.714503],[120.46261,31.716132],[120.471907,31.712513],[120.485125,31.713728],[120.487297,31.715445],[120.491272,31.713719],[120.492163,31.711905],[120.491022,31.70965],[120.496312,31.710417],[120.498288,31.713402],[120.504827,31.713825],[120.507336,31.724119],[120.50853,31.724762],[120.518284,31.734896],[120.528504,31.725818],[120.535129,31.721653],[120.541755,31.723397],[120.546968,31.725977],[120.551953,31.726734],[120.562412,31.723062],[120.56806,31.722957],[120.576,31.726153],[120.580257,31.726329],[120.581713,31.727632]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":320206,\"name\":\"惠山区\",\"center\":[120.303543,31.681019],\"centroid\":[120.210639,31.65177],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":320200},\"subFeatureIndex\":1,\"acroutes\":[100000,320000,320200]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.074955,31.554424],[120.071827,31.554371],[120.069188,31.552492],[120.063899,31.555571],[120.058208,31.559523],[120.056155,31.563404],[120.05937,31.56904],[120.059457,31.57263],[120.055775,31.576669],[120.057067,31.5804],[120.061814,31.583072],[120.064692,31.586961],[120.068526,31.590127],[120.070622,31.590956],[120.07489,31.595364],[120.075585,31.607118],[120.084242,31.611808],[120.093962,31.618085],[120.10238,31.625877],[120.104476,31.628769],[120.116423,31.62995],[120.119486,31.630893],[120.121115,31.638147],[120.124482,31.648238],[120.125883,31.657843],[120.126024,31.673844],[120.126709,31.678725],[120.128533,31.684636],[120.143272,31.676073],[120.151037,31.682398],[120.151027,31.684829],[120.149365,31.686221],[120.143,31.688327],[120.143858,31.689965],[120.14527,31.697065],[120.147703,31.69821],[120.15359,31.699143],[120.153166,31.70212],[120.156837,31.703829],[120.155979,31.712601],[120.158912,31.713948],[120.159477,31.717206],[120.16141,31.718069],[120.158075,31.722393],[120.158108,31.725924],[120.155176,31.727086],[120.155979,31.729569],[120.157684,31.730696],[120.156131,31.737942],[120.154752,31.741429],[120.155968,31.742045],[120.156077,31.751509],[120.155241,31.752283],[120.155621,31.756843],[120.159998,31.759079],[120.169023,31.760962],[120.17239,31.75804],[120.178657,31.758401],[120.183121,31.753296],[120.183947,31.749915],[120.197056,31.752706],[120.201161,31.753269],[120.203779,31.740381],[120.202921,31.735372],[120.203942,31.728891],[120.206451,31.726065],[120.215357,31.724321],[120.220494,31.723969],[120.224991,31.724779],[120.228857,31.727306],[120.237361,31.728363],[120.248646,31.726928],[120.254446,31.724365],[120.256933,31.72013],[120.261104,31.721002],[120.264384,31.722692],[120.273714,31.724603],[120.276157,31.723168],[120.282435,31.70338],[120.283662,31.7019],[120.292558,31.69909],[120.298423,31.698932],[120.311336,31.700253],[120.319395,31.700746],[120.333862,31.698192],[120.336013,31.694396],[120.346624,31.691145],[120.349209,31.689128],[120.360135,31.687481],[120.366619,31.689137],[120.371322,31.691612],[120.3776,31.693383],[120.376981,31.690978],[120.378056,31.684407],[120.379349,31.682037],[120.383204,31.679491],[120.389373,31.677932],[120.390981,31.676689],[120.391176,31.674478],[120.382629,31.667377],[120.378751,31.665685],[120.374765,31.660962],[120.368716,31.655781],[120.368075,31.653499],[120.366326,31.653419],[120.362644,31.655349],[120.360461,31.655323],[120.357811,31.652714],[120.345288,31.65245],[120.345266,31.646017],[120.346668,31.636128],[120.343257,31.63664],[120.340683,31.635485],[120.334905,31.636199],[120.334123,31.637821],[120.329985,31.638737],[120.323903,31.636146],[120.317723,31.634551],[120.315779,31.632012],[120.314606,31.619072],[120.312553,31.618825],[120.305287,31.62288],[120.300258,31.624881],[120.290168,31.626538],[120.282935,31.626521],[120.283108,31.6292],[120.269728,31.630778],[120.266491,31.625578],[120.265481,31.621567],[120.262331,31.619583],[120.253012,31.626741],[120.248233,31.626627],[120.243878,31.625384],[120.246289,31.6208],[120.24516,31.618102],[120.241565,31.615969],[120.244106,31.608846],[120.246105,31.600523],[120.242531,31.59249],[120.240576,31.592331],[120.234787,31.594359],[120.228358,31.594553],[120.222156,31.592666],[120.215476,31.592578],[120.214043,31.590832],[120.220983,31.579562],[120.220266,31.576528],[120.217084,31.57681],[120.213684,31.574605],[120.197914,31.568634],[120.196947,31.566738],[120.199054,31.564974],[120.197371,31.561551],[120.194482,31.561269],[120.186336,31.565935],[120.184435,31.564991],[120.183697,31.560458],[120.181611,31.556991],[120.179157,31.555474],[120.176735,31.556585],[120.175323,31.561631],[120.173346,31.564118],[120.168144,31.5647],[120.165189,31.566844],[120.163061,31.573662],[120.16255,31.576987],[120.161551,31.59413],[120.153927,31.589501],[120.14956,31.587384],[120.135995,31.582146],[120.134018,31.582225],[120.132063,31.579227],[120.128913,31.577533],[120.122408,31.577128],[120.119301,31.575381],[120.118661,31.572859],[120.113762,31.572083],[120.111514,31.570733],[120.112882,31.568864],[120.102054,31.563545],[120.091562,31.559258],[120.085143,31.557194],[120.074955,31.554424]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":320211,\"name\":\"滨湖区\",\"center\":[120.266053,31.550228],\"centroid\":[120.196866,31.446924],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":320200},\"subFeatureIndex\":2,\"acroutes\":[100000,320000,320200]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.100153,31.335332],[120.100436,31.33939],[120.096145,31.352493],[120.093658,31.353138],[120.057252,31.356126],[120.044859,31.358805],[120.041905,31.361024],[120.040157,31.364498],[120.039711,31.378127],[120.044566,31.406228],[120.054786,31.434286],[120.060966,31.440424],[120.078757,31.450007],[120.087793,31.453416],[120.089987,31.45474],[120.091356,31.453186],[120.110069,31.461531],[120.105682,31.470493],[120.108733,31.480991],[120.111188,31.48514],[120.117607,31.493235],[120.123581,31.499202],[120.127501,31.501471],[120.129739,31.504701],[120.12319,31.511338],[120.12206,31.508479],[120.121984,31.505354],[120.118834,31.505504],[120.118378,31.51193],[120.120257,31.514983],[120.11626,31.516228],[120.117542,31.518037],[120.115771,31.519105],[120.111025,31.514039],[120.10743,31.511983],[120.102738,31.513545],[120.100501,31.516828],[120.103412,31.518557],[120.103955,31.521011],[120.10238,31.523146],[120.102358,31.527391],[120.103857,31.52815],[120.101587,31.529959],[120.102054,31.533523],[120.100729,31.533797],[120.10112,31.536841],[120.103151,31.538782],[120.101717,31.542002],[120.09948,31.542338],[120.096786,31.541138],[120.094169,31.541932],[120.095038,31.544173],[120.096732,31.543573],[120.099056,31.546299],[120.096949,31.547252],[120.097329,31.548743],[120.085339,31.550904],[120.082319,31.550286],[120.080191,31.55146],[120.081537,31.553418],[120.079561,31.555033],[120.074955,31.554424],[120.085143,31.557194],[120.091562,31.559258],[120.102054,31.563545],[120.112882,31.568864],[120.111514,31.570733],[120.113762,31.572083],[120.118661,31.572859],[120.119301,31.575381],[120.122408,31.577128],[120.128913,31.577533],[120.132063,31.579227],[120.134018,31.582225],[120.135995,31.582146],[120.14956,31.587384],[120.153927,31.589501],[120.161551,31.59413],[120.16255,31.576987],[120.163061,31.573662],[120.165189,31.566844],[120.168144,31.5647],[120.173346,31.564118],[120.175323,31.561631],[120.176735,31.556585],[120.179157,31.555474],[120.181611,31.556991],[120.183697,31.560458],[120.184435,31.564991],[120.186336,31.565935],[120.194482,31.561269],[120.197371,31.561551],[120.199054,31.564974],[120.196947,31.566738],[120.197914,31.568634],[120.213684,31.574605],[120.217084,31.57681],[120.220266,31.576528],[120.220983,31.579562],[120.214043,31.590832],[120.215476,31.592578],[120.222156,31.592666],[120.228358,31.594553],[120.234787,31.594359],[120.240576,31.592331],[120.242531,31.59249],[120.244454,31.587657],[120.250102,31.583045],[120.255489,31.580603],[120.25904,31.580259],[120.263189,31.578495],[120.269065,31.578856],[120.268011,31.580338],[120.271009,31.581229],[120.271954,31.579915],[120.27707,31.580497],[120.280643,31.577904],[120.279524,31.574755],[120.27985,31.570195],[120.283,31.565512],[120.289907,31.558191],[120.288267,31.554936],[120.285368,31.551451],[120.285096,31.549828],[120.287637,31.537626],[120.287855,31.535306],[120.291971,31.535262],[120.293046,31.532332],[120.297076,31.531432],[120.29675,31.528291],[120.295316,31.525847],[120.298227,31.523596],[120.303842,31.525114],[120.307937,31.524946],[120.310294,31.526605],[120.311532,31.521699],[120.310087,31.520269],[120.308241,31.520737],[120.307329,31.517401],[120.31126,31.514013],[120.313639,31.513227],[120.322121,31.513836],[120.323533,31.513077],[120.325695,31.516898],[120.330495,31.518805],[120.331679,31.522511],[120.334612,31.52657],[120.338055,31.529138],[120.347135,31.527338],[120.357453,31.518399],[120.362579,31.513439],[120.356269,31.509379],[120.351718,31.507879],[120.354031,31.500765],[120.354792,31.500879],[120.360429,31.491408],[120.359755,31.489907],[120.354998,31.488539],[120.357083,31.47384],[120.361221,31.471853],[120.359169,31.46795],[120.353293,31.461496],[120.355823,31.416459],[120.335546,31.407359],[120.308143,31.393266],[120.253121,31.366098],[120.209611,31.345668],[120.173715,31.30881],[120.110232,31.264001],[120.100153,31.335332]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":320213,\"name\":\"梁溪区\",\"center\":[120.296595,31.575706],\"centroid\":[120.299797,31.580629],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":320200},\"subFeatureIndex\":3,\"acroutes\":[100000,320000,320200]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.345886,31.575858],[120.342844,31.576228],[120.340346,31.575038],[120.336784,31.575187],[120.336762,31.573706],[120.334253,31.573812],[120.334156,31.576493],[120.332005,31.577992],[120.330593,31.576819],[120.332516,31.573873],[120.329844,31.574014],[120.330202,31.572427],[120.333015,31.571527],[120.333167,31.569746],[120.331332,31.568343],[120.326346,31.569349],[120.326879,31.570866],[120.329518,31.569657],[120.32967,31.574041],[120.327052,31.5742],[120.32702,31.575778],[120.323631,31.575461],[120.325673,31.573679],[120.323805,31.572321],[120.319189,31.578953],[120.321046,31.579553],[120.319015,31.581326],[120.317506,31.579624],[120.319091,31.577551],[120.316843,31.576475],[120.316571,31.578415],[120.315094,31.575919],[120.317017,31.574438],[120.313954,31.573891],[120.317332,31.572912],[120.317614,31.574755],[120.319656,31.573723],[120.31958,31.569993],[120.323718,31.569869],[120.320405,31.568687],[120.322491,31.567946],[120.323077,31.562248],[120.32122,31.559558],[120.323642,31.559911],[120.324391,31.556762],[120.334514,31.55677],[120.343073,31.545408],[120.33799,31.543652],[120.335502,31.538967],[120.346505,31.528573],[120.347135,31.527338],[120.338055,31.529138],[120.334612,31.52657],[120.331679,31.522511],[120.330495,31.518805],[120.325695,31.516898],[120.323533,31.513077],[120.322121,31.513836],[120.313639,31.513227],[120.31126,31.514013],[120.307329,31.517401],[120.308241,31.520737],[120.310087,31.520269],[120.311532,31.521699],[120.310294,31.526605],[120.307937,31.524946],[120.303842,31.525114],[120.298227,31.523596],[120.295316,31.525847],[120.29675,31.528291],[120.297076,31.531432],[120.293046,31.532332],[120.291971,31.535262],[120.287855,31.535306],[120.287637,31.537626],[120.285096,31.549828],[120.285368,31.551451],[120.288267,31.554936],[120.289907,31.558191],[120.283,31.565512],[120.27985,31.570195],[120.279524,31.574755],[120.280643,31.577904],[120.27707,31.580497],[120.271954,31.579915],[120.271009,31.581229],[120.268011,31.580338],[120.269065,31.578856],[120.263189,31.578495],[120.25904,31.580259],[120.255489,31.580603],[120.250102,31.583045],[120.244454,31.587657],[120.242531,31.59249],[120.246105,31.600523],[120.244106,31.608846],[120.241565,31.615969],[120.24516,31.618102],[120.246289,31.6208],[120.243878,31.625384],[120.248233,31.626627],[120.253012,31.626741],[120.262331,31.619583],[120.265481,31.621567],[120.266491,31.625578],[120.269728,31.630778],[120.283108,31.6292],[120.282935,31.626521],[120.290168,31.626538],[120.300258,31.624881],[120.305287,31.62288],[120.312553,31.618825],[120.314606,31.619072],[120.314432,31.612989],[120.31794,31.613792],[120.321741,31.613562],[120.340042,31.610486],[120.350013,31.610838],[120.352587,31.607479],[120.352848,31.603847],[120.349231,31.602762],[120.341096,31.60308],[120.340792,31.599958],[120.342334,31.598274],[120.34581,31.590876],[120.347135,31.581326],[120.345886,31.575858]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":320214,\"name\":\"新吴区\",\"center\":[120.352782,31.550966],\"centroid\":[120.429487,31.506686],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":320200},\"subFeatureIndex\":4,\"acroutes\":[100000,320000,320200]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.347135,31.527338],[120.346505,31.528573],[120.335502,31.538967],[120.33799,31.543652],[120.343073,31.545408],[120.334514,31.55677],[120.324391,31.556762],[120.323642,31.559911],[120.32122,31.559558],[120.323077,31.562248],[120.322491,31.567946],[120.320405,31.568687],[120.323718,31.569869],[120.31958,31.569993],[120.319656,31.573723],[120.317614,31.574755],[120.317332,31.572912],[120.313954,31.573891],[120.317017,31.574438],[120.315094,31.575919],[120.316571,31.578415],[120.316843,31.576475],[120.319091,31.577551],[120.317506,31.579624],[120.319015,31.581326],[120.321046,31.579553],[120.319189,31.578953],[120.323805,31.572321],[120.325673,31.573679],[120.323631,31.575461],[120.32702,31.575778],[120.327052,31.5742],[120.32967,31.574041],[120.329518,31.569657],[120.326879,31.570866],[120.326346,31.569349],[120.331332,31.568343],[120.333167,31.569746],[120.333015,31.571527],[120.330202,31.572427],[120.329844,31.574014],[120.332516,31.573873],[120.330593,31.576819],[120.332005,31.577992],[120.334156,31.576493],[120.334253,31.573812],[120.336762,31.573706],[120.336784,31.575187],[120.340346,31.575038],[120.342844,31.576228],[120.345886,31.575858],[120.349557,31.574455],[120.348394,31.570857],[120.346135,31.569516],[120.348905,31.565847],[120.351881,31.568035],[120.362753,31.569031],[120.366913,31.57009],[120.369367,31.573397],[120.372028,31.573679],[120.37811,31.576025],[120.380435,31.575875],[120.385051,31.573776],[120.387321,31.573441],[120.388646,31.570919],[120.392588,31.567408],[120.39677,31.569516],[120.39374,31.573538],[120.394804,31.573635],[120.394522,31.57674],[120.399615,31.580197],[120.414267,31.580691],[120.415733,31.583425],[120.419404,31.581026],[120.422543,31.580823],[120.429288,31.577286],[120.434099,31.576466],[120.439237,31.574676],[120.444178,31.576475],[120.448968,31.571095],[120.448545,31.569631],[120.451477,31.568255],[120.45176,31.5665],[120.455116,31.568061],[120.457831,31.564171],[120.46085,31.565838],[120.466715,31.566791],[120.46614,31.564674],[120.473112,31.563986],[120.472819,31.561066],[120.47623,31.560511],[120.477033,31.558905],[120.481693,31.55954],[120.481334,31.554883],[120.486971,31.555941],[120.490707,31.557414],[120.498647,31.554697],[120.503295,31.552686],[120.504523,31.549493],[120.502774,31.544552],[120.505967,31.542099],[120.504544,31.538791],[120.506782,31.537476],[120.508096,31.534926],[120.513016,31.531547],[120.516959,31.529817],[120.518914,31.527453],[120.523888,31.529244],[120.528786,31.526588],[120.522606,31.521452],[120.52265,31.517869],[120.521455,31.515672],[120.523519,31.514524],[120.521542,31.512609],[120.518251,31.512759],[120.519196,31.508929],[120.521129,31.507402],[120.521118,31.504507],[120.519598,31.504604],[120.518295,31.501718],[120.519804,31.500888],[120.522389,31.504631],[120.525267,31.502583],[120.5253,31.499229],[120.528613,31.497887],[120.531024,31.495327],[120.533055,31.490675],[120.534999,31.487921],[120.542971,31.487612],[120.546197,31.487912],[120.547793,31.486244],[120.552062,31.483825],[120.551236,31.48213],[120.553441,31.477027],[120.54636,31.473133],[120.543568,31.470264],[120.537312,31.468365],[120.53615,31.467094],[120.5311,31.466608],[120.526017,31.46833],[120.523845,31.468357],[120.516003,31.464427],[120.515981,31.460233],[120.517361,31.457831],[120.513852,31.456189],[120.512364,31.45708],[120.50853,31.45565],[120.505044,31.457964],[120.501406,31.457557],[120.495421,31.451093],[120.495758,31.447931],[120.487026,31.44862],[120.484799,31.447481],[120.485418,31.449901],[120.480552,31.449132],[120.474437,31.446571],[120.460177,31.445485],[120.438172,31.44877],[120.431721,31.448647],[120.437477,31.443047],[120.435001,31.442606],[120.430537,31.446395],[120.426584,31.445441],[120.422641,31.448991],[120.418818,31.448382],[120.355823,31.416459],[120.353293,31.461496],[120.359169,31.46795],[120.361221,31.471853],[120.357083,31.47384],[120.354998,31.488539],[120.359755,31.489907],[120.360429,31.491408],[120.354792,31.500879],[120.354031,31.500765],[120.351718,31.507879],[120.356269,31.509379],[120.362579,31.513439],[120.357453,31.518399],[120.347135,31.527338]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":320281,\"name\":\"江阴市\",\"center\":[120.275891,31.910984],\"centroid\":[120.303787,31.832204],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":320200},\"subFeatureIndex\":5,\"acroutes\":[100000,320000,320200]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.581713,31.727632],[120.580257,31.726329],[120.576,31.726153],[120.56806,31.722957],[120.562412,31.723062],[120.551953,31.726734],[120.546968,31.725977],[120.541755,31.723397],[120.535129,31.721653],[120.528504,31.725818],[120.518284,31.734896],[120.50853,31.724762],[120.507336,31.724119],[120.504827,31.713825],[120.498288,31.713402],[120.496312,31.710417],[120.491022,31.70965],[120.492163,31.711905],[120.491272,31.713719],[120.487297,31.715445],[120.485125,31.713728],[120.471907,31.712513],[120.46261,31.716132],[120.461339,31.714503],[120.458309,31.7132],[120.456701,31.710725],[120.452824,31.711456],[120.451173,31.707255],[120.44685,31.706084],[120.432948,31.705309],[120.430309,31.704604],[120.427376,31.70249],[120.41986,31.704498],[120.415375,31.704604],[120.411041,31.703538],[120.402982,31.699522],[120.399398,31.699998],[120.398106,31.697408],[120.394174,31.699231],[120.390307,31.699513],[120.384909,31.695171],[120.382857,31.694202],[120.3776,31.693383],[120.371322,31.691612],[120.366619,31.689137],[120.360135,31.687481],[120.349209,31.689128],[120.346624,31.691145],[120.336013,31.694396],[120.333862,31.698192],[120.319395,31.700746],[120.311336,31.700253],[120.298423,31.698932],[120.292558,31.69909],[120.283662,31.7019],[120.282435,31.70338],[120.276157,31.723168],[120.273714,31.724603],[120.264384,31.722692],[120.261104,31.721002],[120.256933,31.72013],[120.254446,31.724365],[120.248646,31.726928],[120.237361,31.728363],[120.228857,31.727306],[120.224991,31.724779],[120.220494,31.723969],[120.215357,31.724321],[120.206451,31.726065],[120.203942,31.728891],[120.202921,31.735372],[120.203779,31.740381],[120.201161,31.753269],[120.200043,31.757767],[120.196556,31.764774],[120.192527,31.767352],[120.186108,31.783633],[120.185098,31.787681],[120.181242,31.79399],[120.174248,31.801029],[120.176192,31.807267],[120.179244,31.812853],[120.177886,31.814137],[120.172217,31.814947],[120.17049,31.817251],[120.172043,31.823004],[120.165494,31.825564],[120.163919,31.830287],[120.164093,31.832697],[120.167079,31.835485],[120.16999,31.836065],[120.173194,31.838774],[120.172521,31.840867],[120.1768,31.844499],[120.180493,31.849002],[120.184251,31.856124],[120.185185,31.860415],[120.182719,31.864855],[120.175888,31.870209],[120.168795,31.870165],[120.158119,31.867835],[120.151657,31.864187],[120.146161,31.862481],[120.144228,31.858929],[120.122809,31.859342],[120.117401,31.855007],[120.114088,31.855342],[120.098665,31.855553],[120.085469,31.853055],[120.080299,31.84748],[120.060489,31.834517],[120.056405,31.833348],[120.056698,31.831976],[120.051887,31.829152],[120.047966,31.825713],[120.044979,31.821755],[120.032011,31.826074],[120.030251,31.831272],[120.028763,31.832116],[120.025277,31.831677],[120.02279,31.828669],[120.022225,31.826654],[120.019292,31.822802],[120.014557,31.824948],[120.011331,31.823849],[120.009811,31.826989],[120.006292,31.825317],[120.003359,31.828246],[120.003685,31.838598],[120.000709,31.837859],[120.001187,31.840559],[120.000459,31.845616],[119.997342,31.845941],[119.99681,31.848984],[119.992911,31.84945],[119.990152,31.852809],[119.990217,31.854867],[119.995029,31.855939],[120.003272,31.859158],[120.005097,31.862543],[120.007997,31.8638],[120.007997,31.866886],[120.010506,31.867809],[120.013199,31.871686],[120.010223,31.873814],[120.01069,31.875546],[120.014774,31.881787],[120.009018,31.882868],[120.008518,31.885496],[120.006324,31.889127],[120.002555,31.8891],[120.000188,31.892537],[119.997831,31.894348],[120.001915,31.901484],[120.000894,31.905571],[120.005477,31.911889],[120.014991,31.914754],[120.022409,31.919692],[120.014405,31.927073],[120.011342,31.929331],[120.007399,31.935929],[120.008192,31.94033],[120.007649,31.947999],[120.008779,31.951293],[120.010832,31.953805],[120.01485,31.955149],[120.022399,31.967752],[120.064909,31.955465],[120.134811,31.939381],[120.175247,31.933829],[120.205875,31.931519],[120.236601,31.932907],[120.262994,31.941841],[120.294165,31.954886],[120.353054,31.980635],[120.370703,31.99082],[120.368878,31.961086],[120.371594,31.954956],[120.373527,31.946435],[120.375341,31.941727],[120.385996,31.935621],[120.390307,31.932195],[120.391252,31.928602],[120.390481,31.925852],[120.381065,31.918884],[120.379349,31.914148],[120.379761,31.912188],[120.38265,31.910949],[120.385214,31.911722],[120.385138,31.909534],[120.38857,31.909218],[120.390905,31.907926],[120.392067,31.905307],[120.396411,31.908181],[120.39791,31.90616],[120.40131,31.90536],[120.402385,31.907381],[120.40774,31.905518],[120.424998,31.898399],[120.436847,31.895604],[120.449544,31.891948],[120.466498,31.889979],[120.466574,31.887791],[120.468822,31.879616],[120.471299,31.879203],[120.484593,31.87442],[120.490881,31.871335],[120.492261,31.86547],[120.496073,31.860881],[120.502057,31.85215],[120.503274,31.841711],[120.508292,31.84369],[120.514428,31.841527],[120.517393,31.837947],[120.521977,31.834183],[120.528808,31.831351],[120.531306,31.827851],[120.529319,31.821324],[120.530839,31.81704],[120.529959,31.814674],[120.523693,31.810531],[120.522541,31.80629],[120.523942,31.801293],[120.526516,31.795548],[120.531154,31.793207],[120.531556,31.787796],[120.544394,31.787136],[120.544502,31.789468],[120.546229,31.791922],[120.548923,31.792054],[120.555483,31.794069],[120.555852,31.786872],[120.558383,31.78571],[120.57071,31.793779],[120.580735,31.784795],[120.584243,31.782146],[120.58874,31.771603],[120.589402,31.766182],[120.588533,31.762556],[120.594833,31.760434],[120.597668,31.75503],[120.600024,31.744625],[120.598754,31.742802],[120.594822,31.741138],[120.593323,31.738171],[120.589435,31.73494],[120.585601,31.735407],[120.584352,31.734465],[120.581713,31.727632]]]]}},{\"type\":\"Feature\",\"properties\":{\"adcode\":320282,\"name\":\"宜兴市\",\"center\":[119.820538,31.364384],\"centroid\":[119.787423,31.352315],\"childrenNum\":0,\"level\":\"district\",\"parent\":{\"adcode\":320200},\"subFeatureIndex\":6,\"acroutes\":[100000,320000,320200]},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[120.100153,31.335332],[120.110232,31.264001],[119.920011,31.170918],[119.913103,31.169572],[119.900211,31.169182],[119.891305,31.16431],[119.885245,31.162875],[119.883463,31.161538],[119.878359,31.16082],[119.875242,31.162353],[119.86664,31.168314],[119.859406,31.168828],[119.856267,31.170121],[119.851304,31.167827],[119.8476,31.167579],[119.842148,31.168757],[119.837575,31.173673],[119.831808,31.172451],[119.82817,31.17447],[119.826464,31.173204],[119.823782,31.168226],[119.823445,31.165825],[119.82792,31.163363],[119.829744,31.161387],[119.829375,31.158269],[119.823304,31.154132],[119.813583,31.149614],[119.809858,31.148524],[119.806599,31.149392],[119.800995,31.156338],[119.798019,31.157436],[119.794066,31.156205],[119.791274,31.156612],[119.789233,31.159686],[119.789352,31.162158],[119.793392,31.168057],[119.792513,31.171459],[119.790492,31.173204],[119.786626,31.173762],[119.784606,31.176011],[119.779327,31.178784],[119.773039,31.178049],[119.765653,31.173779],[119.762286,31.173363],[119.755357,31.170777],[119.753163,31.171406],[119.747754,31.169661],[119.74467,31.169882],[119.74051,31.173416],[119.738609,31.173585],[119.732864,31.171494],[119.723708,31.169758],[119.715888,31.169572],[119.713107,31.167614],[119.710316,31.158862],[119.707937,31.154025],[119.703875,31.151899],[119.698727,31.153069],[119.693297,31.156958],[119.68275,31.160501],[119.679275,31.167118],[119.678048,31.16819],[119.672606,31.167995],[119.663733,31.165958],[119.66294,31.164798],[119.662516,31.159855],[119.660072,31.15896],[119.656401,31.155283],[119.649374,31.154105],[119.645768,31.150464],[119.641554,31.148116],[119.637775,31.140488],[119.638122,31.135526],[119.63078,31.131255],[119.621972,31.130032],[119.616052,31.130094],[119.613728,31.129181],[119.609775,31.123811],[119.602802,31.112139],[119.599782,31.10917],[119.592115,31.110056],[119.581992,31.108647],[119.576507,31.110269],[119.574096,31.113991],[119.571326,31.129013],[119.564039,31.135871],[119.560259,31.140718],[119.554188,31.143996],[119.545835,31.14785],[119.541382,31.152333],[119.534518,31.158109],[119.532596,31.159093],[119.536625,31.167889],[119.543022,31.17548],[119.546378,31.176038],[119.548963,31.177942],[119.552374,31.177969],[119.553579,31.179156],[119.553188,31.183168],[119.554296,31.191678],[119.552765,31.201083],[119.552971,31.208635],[119.552558,31.212389],[119.550745,31.21617],[119.553851,31.221048],[119.551233,31.224952],[119.544152,31.226864],[119.536115,31.233494],[119.534475,31.236761],[119.530793,31.237283],[119.529066,31.23931],[119.522593,31.242169],[119.528588,31.247506],[119.527122,31.25232],[119.531553,31.2564],[119.532183,31.258586],[119.530478,31.268965],[119.535669,31.272505],[119.535528,31.275964],[119.530956,31.277663],[119.530912,31.279946],[119.533041,31.285404],[119.531401,31.287864],[119.535094,31.290907],[119.533671,31.294269],[119.527187,31.29794],[119.523679,31.301142],[119.522929,31.310924],[119.51966,31.313418],[119.520029,31.318247],[119.52672,31.327152],[119.53051,31.330875],[119.530728,31.339293],[119.528523,31.344969],[119.527589,31.360334],[119.528164,31.36524],[119.530434,31.370826],[119.534833,31.378039],[119.535702,31.381733],[119.540687,31.390155],[119.541741,31.394715],[119.541111,31.398585],[119.539666,31.400732],[119.537364,31.40143],[119.535974,31.406078],[119.536484,31.408216],[119.546639,31.413243],[119.553351,31.411724],[119.553797,31.415399],[119.556034,31.415143],[119.553905,31.417263],[119.553004,31.421981],[119.554383,31.422051],[119.554818,31.426141],[119.554557,31.433888],[119.556914,31.433897],[119.567514,31.432369],[119.576703,31.430726],[119.578256,31.432228],[119.578343,31.434551],[119.582524,31.437501],[119.582589,31.444823],[119.583317,31.446059],[119.587868,31.445803],[119.589595,31.447658],[119.590029,31.45225],[119.588433,31.454873],[119.589519,31.458352],[119.59143,31.460878],[119.591745,31.463059],[119.588357,31.464577],[119.588335,31.466688],[119.58411,31.465822],[119.565146,31.464339],[119.563572,31.468507],[119.565179,31.471385],[119.571891,31.471103],[119.57301,31.472039],[119.57515,31.480797],[119.573118,31.482624],[119.571652,31.488566],[119.567981,31.490419],[119.566406,31.492812],[119.567025,31.494798],[119.567015,31.504719],[119.568883,31.506775],[119.574259,31.505805],[119.579266,31.503148],[119.583621,31.504542],[119.584783,31.507314],[119.58613,31.514171],[119.58852,31.520111],[119.59307,31.529279],[119.593603,31.532209],[119.595883,31.535306],[119.601227,31.539029],[119.605278,31.549219],[119.607863,31.55318],[119.613315,31.557899],[119.61779,31.559364],[119.627934,31.55992],[119.63078,31.563677],[119.637655,31.568211],[119.640653,31.569084],[119.644443,31.572956],[119.646789,31.577683],[119.642684,31.582357],[119.642488,31.588672],[119.640055,31.590797],[119.641131,31.592851],[119.641239,31.596176],[119.639382,31.600258],[119.644128,31.604711],[119.64982,31.60516],[119.657944,31.609304],[119.661148,31.610186],[119.666774,31.6106],[119.67303,31.609322],[119.674985,31.604226],[119.677885,31.603318],[119.684955,31.604023],[119.690342,31.595241],[119.694122,31.587966],[119.694567,31.584192],[119.698021,31.581414],[119.699791,31.576554],[119.707318,31.577472],[119.709968,31.575999],[119.710044,31.568555],[119.712694,31.560325],[119.712901,31.558305],[119.715247,31.555985],[119.721199,31.556867],[119.725619,31.561031],[119.727759,31.562125],[119.733265,31.563157],[119.737251,31.561481],[119.746114,31.560272],[119.74795,31.558773],[119.755976,31.557026],[119.763905,31.554442],[119.768553,31.553789],[119.778904,31.554689],[119.792176,31.553383],[119.804101,31.54989],[119.807403,31.548504],[119.820697,31.537247],[119.832351,31.529191],[119.84192,31.528467],[119.847796,31.5298],[119.852955,31.534282],[119.856202,31.538835],[119.860069,31.543052],[119.861882,31.546264],[119.864,31.546017],[119.87762,31.546925],[119.890121,31.546546],[119.897594,31.546749],[119.90247,31.547746],[119.911062,31.548257],[119.921369,31.549863],[119.935629,31.552712],[119.94157,31.547684],[119.942483,31.546325],[119.948359,31.543379],[119.958796,31.540264],[119.966171,31.537194],[119.971721,31.535967],[119.973795,31.528361],[119.973567,31.515857],[119.981539,31.511471],[119.989924,31.50373],[119.996115,31.497499],[119.996919,31.501338],[119.997157,31.508117],[120.005553,31.503316],[120.009083,31.504454],[120.015795,31.505443],[120.018489,31.50464],[120.022084,31.501736],[120.030979,31.500209],[120.036203,31.497878],[120.037626,31.494754],[120.045489,31.490252],[120.043361,31.486094],[120.046195,31.479782],[120.044251,31.46969],[120.037604,31.425894],[120.03453,31.418597],[120.027851,31.409047],[120.021074,31.383006],[120.020943,31.374203],[120.023702,31.364948],[120.032076,31.353377],[120.041764,31.34588],[120.060662,31.339143],[120.068743,31.336879],[120.089585,31.332449],[120.100153,31.335332]]]]}}]}', 'admin', '2020-12-15 11:59:13', NULL, '2020-12-15 11:59:13', '0', NULL); +INSERT INTO `jimu_report_map` VALUES ('570159017392984064', NULL, '100000', '{\n\"type\": \"FeatureCollection\",\n\"name\": \"100000_full\",\n\"features\": [\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"110000\", \"name\": \"北京市\", \"center\": [ 116.405285, 39.904989 ], \"centroid\": [ 116.41995, 40.18994 ], \"childrenNum\": 16, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 0, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 117.348611, 40.581141 ], [ 117.348611, 40.581141 ], [ 117.269771, 40.560684 ], [ 117.247597, 40.539766 ], [ 117.262995, 40.512927 ], [ 117.208793, 40.501552 ], [ 117.263611, 40.442367 ], [ 117.234046, 40.417312 ], [ 117.226039, 40.368997 ], [ 117.243285, 40.369453 ], [ 117.271618, 40.325211 ], [ 117.271618, 40.325211 ], [ 117.295024, 40.2782 ], [ 117.331365, 40.289613 ], [ 117.351075, 40.229786 ], [ 117.389879, 40.227958 ], [ 117.383719, 40.188195 ], [ 117.367089, 40.172649 ], [ 117.367089, 40.173106 ], [ 117.367089, 40.173106 ], [ 117.367089, 40.172649 ], [ 117.349227, 40.136513 ], [ 117.307343, 40.136971 ], [ 117.274082, 40.105852 ], [ 117.254988, 40.114548 ], [ 117.254988, 40.114548 ], [ 117.254988, 40.114548 ], [ 117.224191, 40.094865 ], [ 117.224191, 40.094865 ], [ 117.210024, 40.082045 ], [ 117.204481, 40.069681 ], [ 117.159517, 40.077008 ], [ 117.140423, 40.064185 ], [ 117.105315, 40.074261 ], [ 117.105315, 40.074261 ], [ 117.051728, 40.059605 ], [ 117.025243, 40.030283 ], [ 116.945171, 40.04128 ], [ 116.927924, 40.055024 ], [ 116.867562, 40.041739 ], [ 116.831222, 40.051359 ], [ 116.820135, 40.02845 ], [ 116.781331, 40.034866 ], [ 116.757925, 39.967934 ], [ 116.782563, 39.947749 ], [ 116.78441, 39.891294 ], [ 116.812128, 39.889916 ], [ 116.865714, 39.843982 ], [ 116.907598, 39.832494 ], [ 116.918069, 39.84628 ], [ 116.949482, 39.778703 ], [ 116.902055, 39.763523 ], [ 116.916837, 39.731314 ], [ 116.887272, 39.72533 ], [ 116.889736, 39.687576 ], [ 116.90575, 39.688037 ], [ 116.906366, 39.677444 ], [ 116.8497, 39.66777 ], [ 116.812128, 39.615695 ], [ 116.79057, 39.595868 ], [ 116.748686, 39.619844 ], [ 116.709266, 39.618 ], [ 116.726512, 39.595407 ], [ 116.726512, 39.595407 ], [ 116.724048, 39.59264 ], [ 116.723432, 39.59264 ], [ 116.724048, 39.59264 ], [ 116.723432, 39.59264 ], [ 116.664918, 39.605552 ], [ 116.620571, 39.601863 ], [ 116.592237, 39.621227 ], [ 116.592237, 39.621227 ], [ 116.524484, 39.596329 ], [ 116.50847, 39.551122 ], [ 116.473361, 39.552968 ], [ 116.478289, 39.535431 ], [ 116.437637, 39.526661 ], [ 116.443796, 39.510041 ], [ 116.401912, 39.528046 ], [ 116.411767, 39.482794 ], [ 116.444412, 39.482332 ], [ 116.454883, 39.453226 ], [ 116.434557, 39.442597 ], [ 116.361876, 39.455074 ], [ 116.361876, 39.455074 ], [ 116.337854, 39.455536 ], [ 116.307057, 39.488337 ], [ 116.257782, 39.500344 ], [ 116.240536, 39.564041 ], [ 116.198652, 39.589412 ], [ 116.151841, 39.583416 ], [ 116.130283, 39.567732 ], [ 116.09887, 39.575113 ], [ 116.036044, 39.571884 ], [ 116.026189, 39.587567 ], [ 115.995392, 39.576958 ], [ 115.978146, 39.595868 ], [ 115.957204, 39.560812 ], [ 115.910393, 39.600479 ], [ 115.910393, 39.600479 ], [ 115.91532, 39.582955 ], [ 115.91532, 39.582955 ], [ 115.867893, 39.546507 ], [ 115.867893, 39.546507 ], [ 115.828473, 39.541431 ], [ 115.821081, 39.522968 ], [ 115.821081, 39.522968 ], [ 115.806299, 39.510041 ], [ 115.806299, 39.510041 ], [ 115.752712, 39.515581 ], [ 115.738545, 39.539585 ], [ 115.738545, 39.540046 ], [ 115.738545, 39.539585 ], [ 115.738545, 39.540046 ], [ 115.724995, 39.5442 ], [ 115.724995, 39.5442 ], [ 115.722531, 39.543738 ], [ 115.721299, 39.543738 ], [ 115.722531, 39.543738 ], [ 115.722531, 39.5442 ], [ 115.721299, 39.543738 ], [ 115.722531, 39.5442 ], [ 115.720683, 39.551122 ], [ 115.720683, 39.551122 ], [ 115.718835, 39.553891 ], [ 115.718835, 39.553891 ], [ 115.716988, 39.56035 ], [ 115.716988, 39.56035 ], [ 115.699125, 39.570039 ], [ 115.699125, 39.570039 ], [ 115.698509, 39.577881 ], [ 115.698509, 39.577881 ], [ 115.667712, 39.615234 ], [ 115.633836, 39.599557 ], [ 115.633836, 39.599557 ], [ 115.587024, 39.589873 ], [ 115.545756, 39.618922 ], [ 115.518039, 39.597252 ], [ 115.522351, 39.640124 ], [ 115.478619, 39.650723 ], [ 115.478619, 39.650723 ], [ 115.491554, 39.670074 ], [ 115.486626, 39.741899 ], [ 115.439815, 39.752022 ], [ 115.443511, 39.785601 ], [ 115.483547, 39.798477 ], [ 115.483547, 39.798477 ], [ 115.50572, 39.784222 ], [ 115.552532, 39.794799 ], [ 115.567314, 39.816407 ], [ 115.514344, 39.837549 ], [ 115.526046, 39.87568 ], [ 115.515575, 39.892212 ], [ 115.515575, 39.892212 ], [ 115.522967, 39.899099 ], [ 115.481083, 39.935819 ], [ 115.426264, 39.950502 ], [ 115.428728, 39.984443 ], [ 115.450286, 39.992697 ], [ 115.454597, 40.029825 ], [ 115.485394, 40.040364 ], [ 115.527278, 40.076092 ], [ 115.59072, 40.096239 ], [ 115.599959, 40.119583 ], [ 115.75456, 40.145663 ], [ 115.75456, 40.145663 ], [ 115.773654, 40.176307 ], [ 115.806299, 40.15344 ], [ 115.847567, 40.147036 ], [ 115.855574, 40.188652 ], [ 115.870356, 40.185909 ], [ 115.89869, 40.234354 ], [ 115.968907, 40.264045 ], [ 115.95166, 40.281852 ], [ 115.917784, 40.354405 ], [ 115.864197, 40.359422 ], [ 115.771806, 40.443734 ], [ 115.781045, 40.49336 ], [ 115.736082, 40.503372 ], [ 115.755176, 40.540221 ], [ 115.784741, 40.55841 ], [ 115.819849, 40.55932 ], [ 115.827857, 40.587504 ], [ 115.885139, 40.595229 ], [ 115.907929, 40.617493 ], [ 115.971986, 40.6025 ], [ 115.982457, 40.578868 ], [ 116.005247, 40.583868 ], [ 116.09887, 40.630665 ], [ 116.133979, 40.666536 ], [ 116.162928, 40.662451 ], [ 116.171551, 40.695582 ], [ 116.204812, 40.740035 ], [ 116.22021, 40.744115 ], [ 116.247311, 40.791707 ], [ 116.273181, 40.762703 ], [ 116.311369, 40.754996 ], [ 116.316912, 40.772221 ], [ 116.453651, 40.765876 ], [ 116.46597, 40.774487 ], [ 116.438253, 40.81934 ], [ 116.334159, 40.90443 ], [ 116.339702, 40.929303 ], [ 116.370499, 40.94377 ], [ 116.398216, 40.90624 ], [ 116.477057, 40.899907 ], [ 116.447492, 40.953715 ], [ 116.455499, 40.980828 ], [ 116.519557, 40.98128 ], [ 116.519557, 40.98128 ], [ 116.5676, 40.992574 ], [ 116.598397, 40.974503 ], [ 116.623034, 41.021026 ], [ 116.615643, 41.053076 ], [ 116.647672, 41.059394 ], [ 116.688324, 41.044501 ], [ 116.698795, 41.021477 ], [ 116.677853, 40.970888 ], [ 116.722201, 40.927495 ], [ 116.713577, 40.909858 ], [ 116.759773, 40.889954 ], [ 116.81336, 40.848319 ], [ 116.848468, 40.839264 ], [ 116.924229, 40.773581 ], [ 116.926692, 40.745022 ], [ 116.964881, 40.709647 ], [ 117.012308, 40.693767 ], [ 117.11209, 40.707379 ], [ 117.117018, 40.70012 ], [ 117.208177, 40.694675 ], [ 117.278394, 40.664267 ], [ 117.319662, 40.657911 ], [ 117.342451, 40.673799 ], [ 117.408973, 40.686961 ], [ 117.493973, 40.675161 ], [ 117.514914, 40.660181 ], [ 117.501364, 40.636569 ], [ 117.467487, 40.649738 ], [ 117.467487, 40.649738 ], [ 117.412669, 40.605226 ], [ 117.429915, 40.576141 ], [ 117.389879, 40.561593 ], [ 117.348611, 40.581141 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"120000\", \"name\": \"天津市\", \"center\": [ 117.190182, 39.125596 ], \"centroid\": [ 117.347019, 39.28803 ], \"childrenNum\": 16, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 1, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 117.765602, 39.400527 ], [ 117.699696, 39.407463 ], [ 117.673211, 39.386652 ], [ 117.668899, 39.412087 ], [ 117.614081, 39.407001 ], [ 117.601146, 39.419485 ], [ 117.570965, 39.404689 ], [ 117.521074, 39.357043 ], [ 117.536472, 39.338068 ], [ 117.594987, 39.349176 ], [ 117.669515, 39.322792 ], [ 117.670747, 39.35658 ], [ 117.74466, 39.354729 ], [ 117.784696, 39.376938 ], [ 117.805022, 39.373237 ], [ 117.810565, 39.354729 ], [ 117.850601, 39.363984 ], [ 117.850601, 39.363984 ], [ 117.854297, 39.328348 ], [ 117.854913, 39.328348 ], [ 117.854297, 39.328348 ], [ 117.854913, 39.328348 ], [ 117.88879, 39.332051 ], [ 117.919587, 39.318162 ], [ 117.919587, 39.318162 ], [ 117.965782, 39.314921 ], [ 117.965782, 39.314921 ], [ 117.973173, 39.312143 ], [ 117.973173, 39.312143 ], [ 117.979333, 39.300566 ], [ 117.979333, 39.300566 ], [ 117.982412, 39.298714 ], [ 117.982412, 39.298714 ], [ 118.024296, 39.289451 ], [ 118.024296, 39.289451 ], [ 118.036615, 39.264898 ], [ 118.064948, 39.256094 ], [ 118.064948, 39.231065 ], [ 118.037231, 39.220402 ], [ 117.977485, 39.206028 ], [ 117.96455, 39.172631 ], [ 117.871543, 39.122506 ], [ 117.837667, 39.057011 ], [ 117.855529, 38.957492 ], [ 117.898029, 38.948649 ], [ 117.875855, 38.920252 ], [ 117.847522, 38.855502 ], [ 117.778536, 38.869016 ], [ 117.752051, 38.847579 ], [ 117.64611, 38.828933 ], [ 117.646725, 38.788827 ], [ 117.671363, 38.772032 ], [ 117.740964, 38.753833 ], [ 117.740964, 38.700141 ], [ 117.729261, 38.680055 ], [ 117.65658, 38.66043 ], [ 117.639334, 38.626776 ], [ 117.55803, 38.613683 ], [ 117.47919, 38.616489 ], [ 117.432379, 38.601524 ], [ 117.368937, 38.564566 ], [ 117.25314, 38.556143 ], [ 117.238358, 38.580943 ], [ 117.258684, 38.608072 ], [ 117.258684, 38.608072 ], [ 117.213104, 38.639866 ], [ 117.213104, 38.639866 ], [ 117.183539, 38.61836 ], [ 117.183539, 38.61836 ], [ 117.150894, 38.617892 ], [ 117.109626, 38.584685 ], [ 117.070822, 38.608072 ], [ 117.055424, 38.639398 ], [ 117.068358, 38.680522 ], [ 117.038793, 38.688464 ], [ 116.95133, 38.689398 ], [ 116.948866, 38.689398 ], [ 116.950714, 38.689398 ], [ 116.95133, 38.689398 ], [ 116.950714, 38.689398 ], [ 116.948866, 38.689398 ], [ 116.877417, 38.680522 ], [ 116.858939, 38.741231 ], [ 116.794265, 38.744498 ], [ 116.794265, 38.744498 ], [ 116.746222, 38.754299 ], [ 116.737599, 38.784629 ], [ 116.75115, 38.831264 ], [ 116.723432, 38.852706 ], [ 116.722201, 38.896968 ], [ 116.708034, 38.931892 ], [ 116.72836, 38.975174 ], [ 116.754845, 39.003084 ], [ 116.754229, 39.034701 ], [ 116.754229, 39.034701 ], [ 116.783179, 39.05097 ], [ 116.783179, 39.05097 ], [ 116.812744, 39.05097 ], [ 116.812744, 39.05097 ], [ 116.871874, 39.054688 ], [ 116.912526, 39.110898 ], [ 116.91191, 39.111362 ], [ 116.91191, 39.111362 ], [ 116.912526, 39.110898 ], [ 116.909446, 39.150822 ], [ 116.870026, 39.153607 ], [ 116.855859, 39.215766 ], [ 116.881729, 39.225966 ], [ 116.881729, 39.225966 ], [ 116.87249, 39.291304 ], [ 116.889736, 39.338068 ], [ 116.870642, 39.357506 ], [ 116.829374, 39.338994 ], [ 116.818287, 39.3737 ], [ 116.840461, 39.378326 ], [ 116.839845, 39.413474 ], [ 116.876185, 39.43474 ], [ 116.832454, 39.435664 ], [ 116.785026, 39.465702 ], [ 116.820751, 39.482332 ], [ 116.819519, 39.528507 ], [ 116.78749, 39.554352 ], [ 116.808432, 39.576497 ], [ 116.812128, 39.615695 ], [ 116.8497, 39.66777 ], [ 116.906366, 39.677444 ], [ 116.90575, 39.688037 ], [ 116.932236, 39.706456 ], [ 116.932236, 39.706456 ], [ 116.944555, 39.695405 ], [ 116.944555, 39.695405 ], [ 116.948866, 39.680668 ], [ 116.948866, 39.680668 ], [ 116.964265, 39.64335 ], [ 116.983359, 39.638742 ], [ 116.983359, 39.638742 ], [ 117.016004, 39.653949 ], [ 117.10901, 39.625375 ], [ 117.10901, 39.625375 ], [ 117.152742, 39.623532 ], [ 117.177996, 39.645194 ], [ 117.165061, 39.718886 ], [ 117.165061, 39.718886 ], [ 117.161981, 39.748801 ], [ 117.205713, 39.763984 ], [ 117.15767, 39.796638 ], [ 117.156438, 39.817326 ], [ 117.192162, 39.832953 ], [ 117.251908, 39.834332 ], [ 117.247597, 39.860981 ], [ 117.227887, 39.852712 ], [ 117.162597, 39.876598 ], [ 117.162597, 39.876598 ], [ 117.150894, 39.944996 ], [ 117.198322, 39.992697 ], [ 117.192162, 40.066475 ], [ 117.210024, 40.082045 ], [ 117.224191, 40.094865 ], [ 117.224191, 40.094865 ], [ 117.254988, 40.114548 ], [ 117.254988, 40.114548 ], [ 117.254988, 40.114548 ], [ 117.274082, 40.105852 ], [ 117.307343, 40.136971 ], [ 117.349227, 40.136513 ], [ 117.367089, 40.172649 ], [ 117.367089, 40.173106 ], [ 117.367089, 40.173106 ], [ 117.367089, 40.172649 ], [ 117.383719, 40.188195 ], [ 117.389879, 40.227958 ], [ 117.415748, 40.248973 ], [ 117.450241, 40.252627 ], [ 117.505059, 40.227044 ], [ 117.548791, 40.232527 ], [ 117.571581, 40.219276 ], [ 117.576508, 40.178593 ], [ 117.609769, 40.160301 ], [ 117.609769, 40.160301 ], [ 117.613465, 40.158014 ], [ 117.613465, 40.158014 ], [ 117.651653, 40.122786 ], [ 117.651653, 40.122786 ], [ 117.654117, 40.114548 ], [ 117.654117, 40.114548 ], [ 117.655965, 40.109514 ], [ 117.655965, 40.109514 ], [ 117.675059, 40.082045 ], [ 117.71879, 40.082045 ], [ 117.71879, 40.082045 ], [ 117.752667, 40.081588 ], [ 117.776073, 40.059605 ], [ 117.74774, 40.047236 ], [ 117.744044, 40.018368 ], [ 117.768681, 40.022034 ], [ 117.768681, 40.022034 ], [ 117.793319, 40.005534 ], [ 117.793319, 40.005534 ], [ 117.795167, 39.996823 ], [ 117.795167, 39.996823 ], [ 117.781616, 39.966558 ], [ 117.781616, 39.966558 ], [ 117.756363, 39.965181 ], [ 117.691073, 39.984902 ], [ 117.671363, 39.973896 ], [ 117.614697, 39.97252 ], [ 117.594987, 39.994531 ], [ 117.594987, 39.994531 ], [ 117.546327, 39.999116 ], [ 117.534625, 39.954631 ], [ 117.514914, 39.946832 ], [ 117.513067, 39.910576 ], [ 117.513067, 39.910576 ], [ 117.512451, 39.90874 ], [ 117.512451, 39.90874 ], [ 117.508139, 39.901854 ], [ 117.508139, 39.901854 ], [ 117.529081, 39.859144 ], [ 117.529081, 39.859144 ], [ 117.561726, 39.799856 ], [ 117.546327, 39.775943 ], [ 117.56111, 39.754782 ], [ 117.595603, 39.74604 ], [ 117.57774, 39.726711 ], [ 117.627015, 39.703693 ], [ 117.668899, 39.666849 ], [ 117.66274, 39.636437 ], [ 117.637486, 39.603246 ], [ 117.654117, 39.575113 ], [ 117.684914, 39.58895 ], [ 117.707088, 39.576036 ], [ 117.715711, 39.529892 ], [ 117.745276, 39.547892 ], [ 117.753899, 39.579726 ], [ 117.753899, 39.579726 ], [ 117.766834, 39.598635 ], [ 117.829659, 39.589873 ], [ 117.868464, 39.59679 ], [ 117.933753, 39.574191 ], [ 117.904804, 39.533585 ], [ 117.912195, 39.517428 ], [ 117.912195, 39.517428 ], [ 117.899877, 39.474479 ], [ 117.870311, 39.455074 ], [ 117.871543, 39.411625 ], [ 117.846906, 39.407926 ], [ 117.765602, 39.400527 ] ] ], [ [ [ 117.805022, 39.373237 ], [ 117.784696, 39.376938 ], [ 117.765602, 39.400527 ], [ 117.846906, 39.407926 ], [ 117.852449, 39.380639 ], [ 117.805022, 39.373237 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"130000\", \"name\": \"河北省\", \"center\": [ 114.502461, 38.045474 ], \"childrenNum\": 11, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 2, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 117.467487, 40.649738 ], [ 117.467487, 40.649738 ], [ 117.501364, 40.636569 ], [ 117.514914, 40.660181 ], [ 117.493973, 40.675161 ], [ 117.408973, 40.686961 ], [ 117.342451, 40.673799 ], [ 117.319662, 40.657911 ], [ 117.278394, 40.664267 ], [ 117.208177, 40.694675 ], [ 117.117018, 40.70012 ], [ 117.11209, 40.707379 ], [ 117.012308, 40.693767 ], [ 116.964881, 40.709647 ], [ 116.926692, 40.745022 ], [ 116.924229, 40.773581 ], [ 116.848468, 40.839264 ], [ 116.81336, 40.848319 ], [ 116.759773, 40.889954 ], [ 116.713577, 40.909858 ], [ 116.722201, 40.927495 ], [ 116.677853, 40.970888 ], [ 116.698795, 41.021477 ], [ 116.688324, 41.044501 ], [ 116.647672, 41.059394 ], [ 116.615643, 41.053076 ], [ 116.623034, 41.021026 ], [ 116.598397, 40.974503 ], [ 116.5676, 40.992574 ], [ 116.519557, 40.98128 ], [ 116.519557, 40.98128 ], [ 116.455499, 40.980828 ], [ 116.447492, 40.953715 ], [ 116.477057, 40.899907 ], [ 116.398216, 40.90624 ], [ 116.370499, 40.94377 ], [ 116.339702, 40.929303 ], [ 116.334159, 40.90443 ], [ 116.438253, 40.81934 ], [ 116.46597, 40.774487 ], [ 116.453651, 40.765876 ], [ 116.316912, 40.772221 ], [ 116.311369, 40.754996 ], [ 116.273181, 40.762703 ], [ 116.247311, 40.791707 ], [ 116.22021, 40.744115 ], [ 116.204812, 40.740035 ], [ 116.171551, 40.695582 ], [ 116.162928, 40.662451 ], [ 116.133979, 40.666536 ], [ 116.09887, 40.630665 ], [ 116.005247, 40.583868 ], [ 115.982457, 40.578868 ], [ 115.971986, 40.6025 ], [ 115.907929, 40.617493 ], [ 115.885139, 40.595229 ], [ 115.827857, 40.587504 ], [ 115.819849, 40.55932 ], [ 115.784741, 40.55841 ], [ 115.755176, 40.540221 ], [ 115.736082, 40.503372 ], [ 115.781045, 40.49336 ], [ 115.771806, 40.443734 ], [ 115.864197, 40.359422 ], [ 115.917784, 40.354405 ], [ 115.95166, 40.281852 ], [ 115.968907, 40.264045 ], [ 115.89869, 40.234354 ], [ 115.870356, 40.185909 ], [ 115.855574, 40.188652 ], [ 115.847567, 40.147036 ], [ 115.806299, 40.15344 ], [ 115.773654, 40.176307 ], [ 115.75456, 40.145663 ], [ 115.75456, 40.145663 ], [ 115.599959, 40.119583 ], [ 115.59072, 40.096239 ], [ 115.527278, 40.076092 ], [ 115.485394, 40.040364 ], [ 115.454597, 40.029825 ], [ 115.450286, 39.992697 ], [ 115.428728, 39.984443 ], [ 115.426264, 39.950502 ], [ 115.481083, 39.935819 ], [ 115.522967, 39.899099 ], [ 115.515575, 39.892212 ], [ 115.515575, 39.892212 ], [ 115.526046, 39.87568 ], [ 115.514344, 39.837549 ], [ 115.567314, 39.816407 ], [ 115.552532, 39.794799 ], [ 115.50572, 39.784222 ], [ 115.483547, 39.798477 ], [ 115.483547, 39.798477 ], [ 115.443511, 39.785601 ], [ 115.439815, 39.752022 ], [ 115.486626, 39.741899 ], [ 115.491554, 39.670074 ], [ 115.478619, 39.650723 ], [ 115.478619, 39.650723 ], [ 115.522351, 39.640124 ], [ 115.518039, 39.597252 ], [ 115.545756, 39.618922 ], [ 115.587024, 39.589873 ], [ 115.633836, 39.599557 ], [ 115.633836, 39.599557 ], [ 115.667712, 39.615234 ], [ 115.698509, 39.577881 ], [ 115.698509, 39.577881 ], [ 115.699125, 39.570039 ], [ 115.699125, 39.570039 ], [ 115.716988, 39.56035 ], [ 115.716988, 39.56035 ], [ 115.718835, 39.553891 ], [ 115.718835, 39.553891 ], [ 115.720683, 39.551122 ], [ 115.720683, 39.551122 ], [ 115.722531, 39.5442 ], [ 115.721299, 39.543738 ], [ 115.722531, 39.5442 ], [ 115.722531, 39.543738 ], [ 115.721299, 39.543738 ], [ 115.722531, 39.543738 ], [ 115.724995, 39.5442 ], [ 115.724995, 39.5442 ], [ 115.738545, 39.540046 ], [ 115.738545, 39.539585 ], [ 115.738545, 39.540046 ], [ 115.738545, 39.539585 ], [ 115.752712, 39.515581 ], [ 115.806299, 39.510041 ], [ 115.806299, 39.510041 ], [ 115.821081, 39.522968 ], [ 115.821081, 39.522968 ], [ 115.828473, 39.541431 ], [ 115.867893, 39.546507 ], [ 115.867893, 39.546507 ], [ 115.91532, 39.582955 ], [ 115.91532, 39.582955 ], [ 115.910393, 39.600479 ], [ 115.910393, 39.600479 ], [ 115.957204, 39.560812 ], [ 115.978146, 39.595868 ], [ 115.995392, 39.576958 ], [ 116.026189, 39.587567 ], [ 116.036044, 39.571884 ], [ 116.09887, 39.575113 ], [ 116.130283, 39.567732 ], [ 116.151841, 39.583416 ], [ 116.198652, 39.589412 ], [ 116.240536, 39.564041 ], [ 116.257782, 39.500344 ], [ 116.307057, 39.488337 ], [ 116.337854, 39.455536 ], [ 116.361876, 39.455074 ], [ 116.361876, 39.455074 ], [ 116.434557, 39.442597 ], [ 116.454883, 39.453226 ], [ 116.444412, 39.482332 ], [ 116.411767, 39.482794 ], [ 116.401912, 39.528046 ], [ 116.443796, 39.510041 ], [ 116.437637, 39.526661 ], [ 116.478289, 39.535431 ], [ 116.473361, 39.552968 ], [ 116.50847, 39.551122 ], [ 116.524484, 39.596329 ], [ 116.592237, 39.621227 ], [ 116.592237, 39.621227 ], [ 116.620571, 39.601863 ], [ 116.664918, 39.605552 ], [ 116.723432, 39.59264 ], [ 116.724048, 39.59264 ], [ 116.723432, 39.59264 ], [ 116.724048, 39.59264 ], [ 116.726512, 39.595407 ], [ 116.726512, 39.595407 ], [ 116.709266, 39.618 ], [ 116.748686, 39.619844 ], [ 116.79057, 39.595868 ], [ 116.812128, 39.615695 ], [ 116.808432, 39.576497 ], [ 116.78749, 39.554352 ], [ 116.819519, 39.528507 ], [ 116.820751, 39.482332 ], [ 116.785026, 39.465702 ], [ 116.832454, 39.435664 ], [ 116.876185, 39.43474 ], [ 116.839845, 39.413474 ], [ 116.840461, 39.378326 ], [ 116.818287, 39.3737 ], [ 116.829374, 39.338994 ], [ 116.870642, 39.357506 ], [ 116.889736, 39.338068 ], [ 116.87249, 39.291304 ], [ 116.881729, 39.225966 ], [ 116.881729, 39.225966 ], [ 116.855859, 39.215766 ], [ 116.870026, 39.153607 ], [ 116.909446, 39.150822 ], [ 116.912526, 39.110898 ], [ 116.91191, 39.111362 ], [ 116.91191, 39.111362 ], [ 116.912526, 39.110898 ], [ 116.871874, 39.054688 ], [ 116.812744, 39.05097 ], [ 116.812744, 39.05097 ], [ 116.783179, 39.05097 ], [ 116.783179, 39.05097 ], [ 116.754229, 39.034701 ], [ 116.754229, 39.034701 ], [ 116.754845, 39.003084 ], [ 116.72836, 38.975174 ], [ 116.708034, 38.931892 ], [ 116.722201, 38.896968 ], [ 116.723432, 38.852706 ], [ 116.75115, 38.831264 ], [ 116.737599, 38.784629 ], [ 116.746222, 38.754299 ], [ 116.794265, 38.744498 ], [ 116.794265, 38.744498 ], [ 116.858939, 38.741231 ], [ 116.877417, 38.680522 ], [ 116.948866, 38.689398 ], [ 116.950714, 38.689398 ], [ 116.95133, 38.689398 ], [ 116.950714, 38.689398 ], [ 116.948866, 38.689398 ], [ 116.95133, 38.689398 ], [ 117.038793, 38.688464 ], [ 117.068358, 38.680522 ], [ 117.055424, 38.639398 ], [ 117.070822, 38.608072 ], [ 117.109626, 38.584685 ], [ 117.150894, 38.617892 ], [ 117.183539, 38.61836 ], [ 117.183539, 38.61836 ], [ 117.213104, 38.639866 ], [ 117.213104, 38.639866 ], [ 117.258684, 38.608072 ], [ 117.258684, 38.608072 ], [ 117.238358, 38.580943 ], [ 117.25314, 38.556143 ], [ 117.368937, 38.564566 ], [ 117.432379, 38.601524 ], [ 117.47919, 38.616489 ], [ 117.55803, 38.613683 ], [ 117.639334, 38.626776 ], [ 117.638102, 38.54491 ], [ 117.68553, 38.539293 ], [ 117.644878, 38.52759 ], [ 117.678754, 38.477008 ], [ 117.72495, 38.457328 ], [ 117.730493, 38.424985 ], [ 117.781, 38.373862 ], [ 117.84629, 38.368232 ], [ 117.937449, 38.387936 ], [ 117.957775, 38.376208 ], [ 117.948536, 38.346644 ], [ 117.895565, 38.301572 ], [ 117.848754, 38.255062 ], [ 117.808718, 38.22827 ], [ 117.789007, 38.180772 ], [ 117.766834, 38.158658 ], [ 117.771145, 38.134655 ], [ 117.746508, 38.12524 ], [ 117.704624, 38.076262 ], [ 117.586979, 38.071551 ], [ 117.557414, 38.046105 ], [ 117.557414, 38.046105 ], [ 117.524154, 37.989527 ], [ 117.513067, 37.94329 ], [ 117.481038, 37.914967 ], [ 117.438538, 37.854035 ], [ 117.400966, 37.844584 ], [ 117.320278, 37.861596 ], [ 117.271618, 37.839858 ], [ 117.185387, 37.849783 ], [ 117.150278, 37.839385 ], [ 117.074518, 37.848837 ], [ 117.027091, 37.832296 ], [ 116.919301, 37.846002 ], [ 116.837997, 37.835132 ], [ 116.804736, 37.848837 ], [ 116.753613, 37.793054 ], [ 116.753613, 37.77035 ], [ 116.724664, 37.744327 ], [ 116.679085, 37.728708 ], [ 116.66307, 37.686096 ], [ 116.604556, 37.624975 ], [ 116.575607, 37.610754 ], [ 116.4826, 37.521573 ], [ 116.448108, 37.503059 ], [ 116.433941, 37.473142 ], [ 116.38097, 37.522522 ], [ 116.379738, 37.522047 ], [ 116.38097, 37.522522 ], [ 116.379738, 37.522047 ], [ 116.36742, 37.566177 ], [ 116.336007, 37.581355 ], [ 116.295355, 37.554316 ], [ 116.278724, 37.524895 ], [ 116.290427, 37.484065 ], [ 116.27626, 37.466967 ], [ 116.240536, 37.489764 ], [ 116.240536, 37.489764 ], [ 116.224522, 37.479791 ], [ 116.243, 37.447965 ], [ 116.226369, 37.428007 ], [ 116.2855, 37.404241 ], [ 116.236224, 37.361442 ], [ 116.193109, 37.365723 ], [ 116.169087, 37.384271 ], [ 116.106261, 37.368577 ], [ 116.085935, 37.373809 ], [ 116.024341, 37.360015 ], [ 115.975682, 37.337179 ], [ 115.969523, 37.239572 ], [ 115.909777, 37.20669 ], [ 115.91224, 37.177132 ], [ 115.879596, 37.150901 ], [ 115.888219, 37.112254 ], [ 115.85619, 37.060694 ], [ 115.776734, 36.992848 ], [ 115.79706, 36.968945 ], [ 115.75764, 36.902453 ], [ 115.71206, 36.883308 ], [ 115.688654, 36.838777 ], [ 115.686807, 36.810034 ], [ 115.524815, 36.763543 ], [ 115.479851, 36.760187 ], [ 115.451518, 36.702151 ], [ 115.420105, 36.686795 ], [ 115.365902, 36.621979 ], [ 115.355431, 36.627262 ], [ 115.33141, 36.550378 ], [ 115.272895, 36.497476 ], [ 115.291374, 36.460423 ], [ 115.317243, 36.454166 ], [ 115.297533, 36.413239 ], [ 115.340033, 36.398307 ], [ 115.368982, 36.342409 ], [ 115.366518, 36.30914 ], [ 115.423185, 36.32216 ], [ 115.417025, 36.292742 ], [ 115.462605, 36.276339 ], [ 115.466916, 36.258969 ], [ 115.466916, 36.258969 ], [ 115.474923, 36.248352 ], [ 115.483547, 36.148865 ], [ 115.465068, 36.170125 ], [ 115.450902, 36.152248 ], [ 115.376989, 36.128083 ], [ 115.365902, 36.099074 ], [ 115.312931, 36.088436 ], [ 115.30246, 36.127599 ], [ 115.279055, 36.13775 ], [ 115.242098, 36.19138 ], [ 115.202678, 36.208765 ], [ 115.202678, 36.208765 ], [ 115.202678, 36.209248 ], [ 115.202678, 36.209248 ], [ 115.201446, 36.210214 ], [ 115.201446, 36.210214 ], [ 115.1842, 36.193312 ], [ 115.12507, 36.209731 ], [ 115.104744, 36.172058 ], [ 115.06286, 36.178338 ], [ 115.048693, 36.161912 ], [ 115.04623, 36.112613 ], [ 114.998186, 36.069572 ], [ 114.914419, 36.052155 ], [ 114.926737, 36.089403 ], [ 114.912571, 36.140649 ], [ 114.858368, 36.144516 ], [ 114.857752, 36.127599 ], [ 114.771521, 36.124699 ], [ 114.734564, 36.15563 ], [ 114.720398, 36.140166 ], [ 114.640326, 36.137266 ], [ 114.588587, 36.118414 ], [ 114.586739, 36.141133 ], [ 114.533152, 36.171575 ], [ 114.480181, 36.177855 ], [ 114.466015, 36.197658 ], [ 114.417356, 36.205868 ], [ 114.408117, 36.224699 ], [ 114.356378, 36.230492 ], [ 114.345291, 36.255591 ], [ 114.299095, 36.245938 ], [ 114.257827, 36.263794 ], [ 114.241197, 36.251247 ], [ 114.2104, 36.272962 ], [ 114.203009, 36.245456 ], [ 114.170364, 36.245938 ], [ 114.170364, 36.245938 ], [ 114.175907, 36.264759 ], [ 114.129096, 36.280199 ], [ 114.080437, 36.269585 ], [ 114.04348, 36.303353 ], [ 114.056415, 36.329392 ], [ 114.002828, 36.334214 ], [ 113.981887, 36.31782 ], [ 113.962792, 36.353977 ], [ 113.911054, 36.314927 ], [ 113.882104, 36.353977 ], [ 113.84946, 36.347711 ], [ 113.856851, 36.329392 ], [ 113.813119, 36.332285 ], [ 113.755221, 36.366026 ], [ 113.731199, 36.363135 ], [ 113.708409, 36.423352 ], [ 113.670221, 36.425278 ], [ 113.635729, 36.451277 ], [ 113.587069, 36.460904 ], [ 113.554425, 36.494589 ], [ 113.559968, 36.528741 ], [ 113.588917, 36.547974 ], [ 113.569823, 36.585947 ], [ 113.539642, 36.594116 ], [ 113.54457, 36.62342 ], [ 113.486671, 36.635427 ], [ 113.476816, 36.655114 ], [ 113.506997, 36.705029 ], [ 113.465113, 36.707908 ], [ 113.499606, 36.740527 ], [ 113.535946, 36.732373 ], [ 113.549497, 36.752515 ], [ 113.600004, 36.752995 ], [ 113.680692, 36.789907 ], [ 113.676381, 36.855539 ], [ 113.696707, 36.882351 ], [ 113.731815, 36.878521 ], [ 113.731815, 36.858891 ], [ 113.773083, 36.85506 ], [ 113.792793, 36.894796 ], [ 113.76138, 36.956034 ], [ 113.791561, 36.98759 ], [ 113.771851, 37.016745 ], [ 113.788482, 37.059739 ], [ 113.758301, 37.075497 ], [ 113.773699, 37.107004 ], [ 113.773083, 37.151855 ], [ 113.832213, 37.167594 ], [ 113.853155, 37.215269 ], [ 113.886416, 37.239095 ], [ 113.90243, 37.310052 ], [ 113.962792, 37.355734 ], [ 113.973879, 37.40329 ], [ 114.014531, 37.42468 ], [ 114.036705, 37.494037 ], [ 114.118625, 37.59084 ], [ 114.115545, 37.619761 ], [ 114.139567, 37.675676 ], [ 114.12848, 37.698409 ], [ 114.068118, 37.721608 ], [ 113.993589, 37.706932 ], [ 113.996669, 37.730128 ], [ 114.044712, 37.761834 ], [ 114.006524, 37.813386 ], [ 113.976959, 37.816696 ], [ 113.959097, 37.906468 ], [ 113.936307, 37.922993 ], [ 113.901198, 37.984811 ], [ 113.872249, 37.990471 ], [ 113.876561, 38.055059 ], [ 113.811271, 38.117707 ], [ 113.831597, 38.16854 ], [ 113.797105, 38.162894 ], [ 113.720728, 38.174656 ], [ 113.711489, 38.213695 ], [ 113.678844, 38.20523 ], [ 113.64312, 38.232031 ], [ 113.598772, 38.22733 ], [ 113.570439, 38.237202 ], [ 113.54457, 38.270569 ], [ 113.557504, 38.343359 ], [ 113.525475, 38.383245 ], [ 113.537794, 38.417952 ], [ 113.583374, 38.459671 ], [ 113.5612, 38.485909 ], [ 113.561816, 38.558483 ], [ 113.603084, 38.587024 ], [ 113.612939, 38.645942 ], [ 113.70225, 38.651551 ], [ 113.720728, 38.713218 ], [ 113.775547, 38.709949 ], [ 113.802648, 38.763166 ], [ 113.839605, 38.7585 ], [ 113.836525, 38.795824 ], [ 113.855619, 38.828933 ], [ 113.795257, 38.860628 ], [ 113.776163, 38.885788 ], [ 113.76754, 38.959819 ], [ 113.776779, 38.986804 ], [ 113.80696, 38.989595 ], [ 113.898119, 39.067699 ], [ 113.930148, 39.063517 ], [ 113.961561, 39.100681 ], [ 113.994821, 39.095572 ], [ 114.006524, 39.122971 ], [ 114.050872, 39.135969 ], [ 114.064422, 39.094179 ], [ 114.082901, 39.09325 ], [ 114.082901, 39.09325 ], [ 114.10877, 39.052364 ], [ 114.157429, 39.061194 ], [ 114.180835, 39.049111 ], [ 114.252284, 39.073739 ], [ 114.345907, 39.075133 ], [ 114.369928, 39.107648 ], [ 114.360689, 39.134112 ], [ 114.388406, 39.176807 ], [ 114.443841, 39.174023 ], [ 114.47587, 39.21623 ], [ 114.416124, 39.242654 ], [ 114.437066, 39.259337 ], [ 114.430906, 39.307513 ], [ 114.466631, 39.329736 ], [ 114.469095, 39.400989 ], [ 114.496812, 39.438437 ], [ 114.501739, 39.476789 ], [ 114.532536, 39.486027 ], [ 114.568877, 39.573729 ], [ 114.51529, 39.564964 ], [ 114.49558, 39.608318 ], [ 114.431522, 39.613851 ], [ 114.408117, 39.652106 ], [ 114.409964, 39.761683 ], [ 114.41674, 39.775943 ], [ 114.390254, 39.819165 ], [ 114.406885, 39.833413 ], [ 114.395182, 39.867412 ], [ 114.285545, 39.858225 ], [ 114.286776, 39.871087 ], [ 114.215943, 39.8619 ], [ 114.204241, 39.885324 ], [ 114.229494, 39.899558 ], [ 114.212248, 39.918839 ], [ 114.17406, 39.897722 ], [ 114.067502, 39.922511 ], [ 114.047176, 39.916085 ], [ 114.028082, 39.959218 ], [ 114.029314, 39.985819 ], [ 113.910438, 40.015618 ], [ 113.959097, 40.033491 ], [ 113.989278, 40.11226 ], [ 114.018227, 40.103563 ], [ 114.045944, 40.056856 ], [ 114.086596, 40.071513 ], [ 114.101995, 40.099901 ], [ 114.073046, 40.168533 ], [ 114.073046, 40.168533 ], [ 114.097683, 40.193681 ], [ 114.135871, 40.175392 ], [ 114.180219, 40.191395 ], [ 114.235654, 40.198252 ], [ 114.255364, 40.236182 ], [ 114.292936, 40.230242 ], [ 114.362537, 40.249886 ], [ 114.406269, 40.246232 ], [ 114.46971, 40.268155 ], [ 114.510978, 40.302851 ], [ 114.530688, 40.345283 ], [ 114.481413, 40.34802 ], [ 114.438914, 40.371733 ], [ 114.390254, 40.351213 ], [ 114.381015, 40.36307 ], [ 114.31203, 40.372645 ], [ 114.286161, 40.425057 ], [ 114.299711, 40.44009 ], [ 114.267066, 40.474242 ], [ 114.282465, 40.494725 ], [ 114.293552, 40.55159 ], [ 114.273842, 40.552954 ], [ 114.283081, 40.590685 ], [ 114.236269, 40.607043 ], [ 114.183299, 40.67153 ], [ 114.162357, 40.71373 ], [ 114.134639, 40.737314 ], [ 114.103227, 40.770861 ], [ 114.104458, 40.797597 ], [ 114.080437, 40.790348 ], [ 114.044712, 40.830661 ], [ 114.073661, 40.857372 ], [ 114.055183, 40.867782 ], [ 114.041633, 40.917546 ], [ 114.057647, 40.925234 ], [ 113.994821, 40.938798 ], [ 113.973263, 40.983087 ], [ 113.868554, 41.06887 ], [ 113.819279, 41.09774 ], [ 113.877793, 41.115777 ], [ 113.920293, 41.172112 ], [ 113.960945, 41.171211 ], [ 113.996669, 41.19238 ], [ 114.016379, 41.231999 ], [ 113.992357, 41.269794 ], [ 113.971416, 41.239649 ], [ 113.95109, 41.282837 ], [ 113.914749, 41.294529 ], [ 113.899351, 41.316108 ], [ 113.92522, 41.325546 ], [ 113.94493, 41.392477 ], [ 113.871017, 41.413126 ], [ 113.877793, 41.431076 ], [ 113.919677, 41.454404 ], [ 113.933227, 41.487139 ], [ 113.953553, 41.483553 ], [ 113.976959, 41.505966 ], [ 114.032394, 41.529715 ], [ 114.101379, 41.537779 ], [ 114.230726, 41.513584 ], [ 114.221487, 41.582111 ], [ 114.226414, 41.616572 ], [ 114.259059, 41.623282 ], [ 114.215328, 41.68499 ], [ 114.237501, 41.698843 ], [ 114.206704, 41.7386 ], [ 114.215328, 41.75646 ], [ 114.200545, 41.789934 ], [ 114.282465, 41.863517 ], [ 114.343443, 41.926774 ], [ 114.352066, 41.953484 ], [ 114.419203, 41.942356 ], [ 114.478334, 41.951704 ], [ 114.511594, 41.981962 ], [ 114.467863, 42.025989 ], [ 114.480181, 42.064654 ], [ 114.502355, 42.06732 ], [ 114.510978, 42.110844 ], [ 114.560254, 42.132595 ], [ 114.647717, 42.109512 ], [ 114.675434, 42.12061 ], [ 114.75489, 42.115727 ], [ 114.789383, 42.130819 ], [ 114.79431, 42.149457 ], [ 114.825723, 42.139695 ], [ 114.86268, 42.097967 ], [ 114.860832, 42.054879 ], [ 114.9021, 42.015763 ], [ 114.915035, 41.960605 ], [ 114.923658, 41.871093 ], [ 114.939056, 41.846132 ], [ 114.922426, 41.825175 ], [ 114.868839, 41.813579 ], [ 114.89594, 41.76762 ], [ 114.902716, 41.695715 ], [ 114.895325, 41.636255 ], [ 114.860832, 41.60091 ], [ 115.016049, 41.615229 ], [ 115.056085, 41.602253 ], [ 115.0992, 41.62373 ], [ 115.195287, 41.602253 ], [ 115.20391, 41.571367 ], [ 115.256881, 41.580768 ], [ 115.26612, 41.616124 ], [ 115.290142, 41.622835 ], [ 115.310468, 41.592854 ], [ 115.377605, 41.603148 ], [ 115.345576, 41.635807 ], [ 115.360975, 41.661297 ], [ 115.319091, 41.691693 ], [ 115.346808, 41.712247 ], [ 115.42996, 41.728775 ], [ 115.488474, 41.760924 ], [ 115.519887, 41.76762 ], [ 115.57409, 41.80555 ], [ 115.654162, 41.829189 ], [ 115.688038, 41.867528 ], [ 115.726227, 41.870202 ], [ 115.811226, 41.912525 ], [ 115.834632, 41.93835 ], [ 115.85311, 41.927665 ], [ 115.916552, 41.945027 ], [ 115.954124, 41.874213 ], [ 115.994776, 41.828743 ], [ 116.007095, 41.797966 ], [ 116.007095, 41.79752 ], [ 116.007095, 41.797966 ], [ 116.007095, 41.79752 ], [ 116.034196, 41.782795 ], [ 116.09887, 41.776547 ], [ 116.129051, 41.805996 ], [ 116.106877, 41.831419 ], [ 116.122892, 41.861734 ], [ 116.194341, 41.861734 ], [ 116.212819, 41.885352 ], [ 116.223906, 41.932562 ], [ 116.298434, 41.96817 ], [ 116.310137, 41.997086 ], [ 116.373579, 42.009983 ], [ 116.414231, 41.982407 ], [ 116.393289, 41.942802 ], [ 116.453651, 41.945917 ], [ 116.4826, 41.975734 ], [ 116.510933, 41.974399 ], [ 116.553433, 41.928555 ], [ 116.597165, 41.935679 ], [ 116.639049, 41.929891 ], [ 116.66923, 41.947698 ], [ 116.727744, 41.951259 ], [ 116.748686, 41.984186 ], [ 116.796113, 41.977958 ], [ 116.879881, 42.018431 ], [ 116.890352, 42.092639 ], [ 116.850316, 42.156556 ], [ 116.825062, 42.155669 ], [ 116.789338, 42.200462 ], [ 116.903287, 42.190708 ], [ 116.918685, 42.229716 ], [ 116.897743, 42.297479 ], [ 116.886656, 42.366496 ], [ 116.910678, 42.394789 ], [ 116.910678, 42.394789 ], [ 116.910062, 42.395231 ], [ 116.910062, 42.395231 ], [ 116.921765, 42.403628 ], [ 116.921765, 42.403628 ], [ 116.936547, 42.410256 ], [ 116.936547, 42.410256 ], [ 116.944555, 42.415116 ], [ 116.944555, 42.415116 ], [ 116.97104, 42.427486 ], [ 116.97104, 42.427486 ], [ 116.974736, 42.426603 ], [ 116.974736, 42.426603 ], [ 116.99075, 42.425719 ], [ 116.99075, 42.425719 ], [ 117.005533, 42.43367 ], [ 117.005533, 42.43367 ], [ 117.009228, 42.44957 ], [ 117.009228, 42.44957 ], [ 117.01662, 42.456193 ], [ 117.01662, 42.456193 ], [ 117.080061, 42.463699 ], [ 117.080061, 42.463699 ], [ 117.09546, 42.484004 ], [ 117.135496, 42.468996 ], [ 117.188467, 42.468114 ], [ 117.188467, 42.468114 ], [ 117.275314, 42.481797 ], [ 117.275314, 42.481797 ], [ 117.332596, 42.46105 ], [ 117.332596, 42.46105 ], [ 117.390495, 42.461933 ], [ 117.413284, 42.471645 ], [ 117.410205, 42.519743 ], [ 117.387415, 42.517537 ], [ 117.387415, 42.517537 ], [ 117.434226, 42.557224 ], [ 117.435458, 42.585431 ], [ 117.475494, 42.602613 ], [ 117.530313, 42.590278 ], [ 117.537088, 42.603054 ], [ 117.60053, 42.603054 ], [ 117.667051, 42.582347 ], [ 117.708935, 42.588515 ], [ 117.779768, 42.61847 ], [ 117.801326, 42.612744 ], [ 117.797631, 42.585431 ], [ 117.856761, 42.539148 ], [ 117.874007, 42.510038 ], [ 117.997811, 42.416884 ], [ 118.024296, 42.385064 ], [ 118.008898, 42.346595 ], [ 118.060021, 42.298364 ], [ 118.047702, 42.280656 ], [ 117.974405, 42.25054 ], [ 117.977485, 42.229716 ], [ 118.033535, 42.199132 ], [ 118.106216, 42.172082 ], [ 118.089586, 42.12283 ], [ 118.097593, 42.105072 ], [ 118.155491, 42.081091 ], [ 118.116687, 42.037102 ], [ 118.194296, 42.031324 ], [ 118.220165, 42.058434 ], [ 118.212774, 42.081091 ], [ 118.239259, 42.092639 ], [ 118.27252, 42.083312 ], [ 118.296541, 42.057545 ], [ 118.286686, 42.033991 ], [ 118.239875, 42.024655 ], [ 118.291614, 42.007759 ], [ 118.313788, 41.98819 ], [ 118.306396, 41.940131 ], [ 118.268824, 41.930336 ], [ 118.340273, 41.87243 ], [ 118.335346, 41.845241 ], [ 118.29223, 41.772976 ], [ 118.247266, 41.773869 ], [ 118.236179, 41.80778 ], [ 118.178281, 41.814917 ], [ 118.140093, 41.784134 ], [ 118.132702, 41.733241 ], [ 118.155491, 41.712694 ], [ 118.159187, 41.67605 ], [ 118.206614, 41.650566 ], [ 118.215237, 41.59554 ], [ 118.302701, 41.55256 ], [ 118.315636, 41.512688 ], [ 118.271904, 41.471446 ], [ 118.327338, 41.450816 ], [ 118.348896, 41.428384 ], [ 118.361215, 41.384844 ], [ 118.348896, 41.342622 ], [ 118.380309, 41.312062 ], [ 118.412338, 41.331838 ], [ 118.528135, 41.355202 ], [ 118.629765, 41.346666 ], [ 118.677192, 41.35026 ], [ 118.741866, 41.324198 ], [ 118.770199, 41.352956 ], [ 118.843496, 41.374516 ], [ 118.844727, 41.342622 ], [ 118.890923, 41.300823 ], [ 118.949437, 41.317906 ], [ 118.980234, 41.305769 ], [ 119.092951, 41.293629 ], [ 119.168712, 41.294978 ], [ 119.197661, 41.282837 ], [ 119.211827, 41.308016 ], [ 119.239545, 41.31431 ], [ 119.2494, 41.279689 ], [ 119.209364, 41.244599 ], [ 119.204436, 41.222546 ], [ 119.169943, 41.222996 ], [ 119.189038, 41.198234 ], [ 119.126212, 41.138767 ], [ 119.081248, 41.131555 ], [ 119.080632, 41.095936 ], [ 119.037516, 41.067516 ], [ 118.964836, 41.079246 ], [ 118.937118, 41.052625 ], [ 118.951901, 41.018317 ], [ 119.013495, 41.007479 ], [ 119.00056, 40.967273 ], [ 118.977154, 40.959138 ], [ 118.977154, 40.959138 ], [ 118.916792, 40.969984 ], [ 118.90201, 40.960946 ], [ 118.873061, 40.847866 ], [ 118.845959, 40.822057 ], [ 118.878604, 40.783098 ], [ 118.907553, 40.775394 ], [ 118.895234, 40.75409 ], [ 118.950053, 40.747743 ], [ 118.96114, 40.72008 ], [ 119.011031, 40.687414 ], [ 119.028277, 40.692406 ], [ 119.054763, 40.664721 ], [ 119.115125, 40.666536 ], [ 119.165632, 40.69286 ], [ 119.184726, 40.680153 ], [ 119.14469, 40.632482 ], [ 119.162552, 40.600228 ], [ 119.177951, 40.609315 ], [ 119.230921, 40.603863 ], [ 119.22045, 40.569322 ], [ 119.256175, 40.543404 ], [ 119.30237, 40.530215 ], [ 119.429254, 40.540221 ], [ 119.477913, 40.533399 ], [ 119.503783, 40.553864 ], [ 119.559217, 40.547952 ], [ 119.572152, 40.523846 ], [ 119.553674, 40.502007 ], [ 119.604797, 40.455119 ], [ 119.586934, 40.375381 ], [ 119.598021, 40.334335 ], [ 119.651608, 40.271808 ], [ 119.639289, 40.231613 ], [ 119.639289, 40.231613 ], [ 119.671934, 40.23938 ], [ 119.716898, 40.195966 ], [ 119.745847, 40.207851 ], [ 119.760629, 40.136056 ], [ 119.736608, 40.104936 ], [ 119.772332, 40.08113 ], [ 119.783419, 40.046778 ], [ 119.783419, 40.046778 ], [ 119.787115, 40.041739 ], [ 119.787115, 40.041739 ], [ 119.81668, 40.050443 ], [ 119.81668, 40.050443 ], [ 119.854252, 40.033033 ], [ 119.845629, 40.000949 ], [ 119.845629, 40.000949 ], [ 119.854252, 39.98857 ], [ 119.872114, 39.960594 ], [ 119.842549, 39.956007 ], [ 119.820375, 39.979399 ], [ 119.787115, 39.950502 ], [ 119.726137, 39.940867 ], [ 119.681789, 39.922511 ], [ 119.642369, 39.925264 ], [ 119.620195, 39.904609 ], [ 119.588166, 39.910576 ], [ 119.540739, 39.888079 ], [ 119.520413, 39.840306 ], [ 119.536427, 39.809052 ], [ 119.474217, 39.813189 ], [ 119.366428, 39.734996 ], [ 119.269726, 39.498497 ], [ 119.316537, 39.437051 ], [ 119.317153, 39.4107 ], [ 119.272805, 39.363521 ], [ 119.185342, 39.342234 ], [ 119.121284, 39.281576 ], [ 119.096031, 39.24219 ], [ 119.038132, 39.211593 ], [ 119.023966, 39.187012 ], [ 118.97777, 39.163352 ], [ 118.926031, 39.123435 ], [ 118.890307, 39.118792 ], [ 118.896466, 39.139683 ], [ 118.951285, 39.178662 ], [ 118.920488, 39.171703 ], [ 118.897082, 39.151286 ], [ 118.857662, 39.162888 ], [ 118.814546, 39.138754 ], [ 118.76096, 39.133648 ], [ 118.637156, 39.157319 ], [ 118.578642, 39.130863 ], [ 118.588497, 39.107648 ], [ 118.533062, 39.090928 ], [ 118.570634, 38.999363 ], [ 118.604511, 38.971452 ], [ 118.539837, 38.910008 ], [ 118.491178, 38.909077 ], [ 118.377845, 38.971917 ], [ 118.366143, 39.016104 ], [ 118.319331, 39.009594 ], [ 118.225092, 39.034701 ], [ 118.1906, 39.080708 ], [ 118.162883, 39.136433 ], [ 118.12531, 39.182838 ], [ 118.065564, 39.218084 ], [ 118.056941, 39.219939 ], [ 118.037231, 39.220402 ], [ 118.064948, 39.231065 ], [ 118.064948, 39.256094 ], [ 118.036615, 39.264898 ], [ 118.024296, 39.289451 ], [ 118.024296, 39.289451 ], [ 117.982412, 39.298714 ], [ 117.982412, 39.298714 ], [ 117.979333, 39.300566 ], [ 117.979333, 39.300566 ], [ 117.973173, 39.312143 ], [ 117.973173, 39.312143 ], [ 117.965782, 39.314921 ], [ 117.965782, 39.314921 ], [ 117.919587, 39.318162 ], [ 117.919587, 39.318162 ], [ 117.88879, 39.332051 ], [ 117.854913, 39.328348 ], [ 117.854297, 39.328348 ], [ 117.854913, 39.328348 ], [ 117.854297, 39.328348 ], [ 117.850601, 39.363984 ], [ 117.850601, 39.363984 ], [ 117.810565, 39.354729 ], [ 117.805022, 39.373237 ], [ 117.852449, 39.380639 ], [ 117.846906, 39.407926 ], [ 117.871543, 39.411625 ], [ 117.870311, 39.455074 ], [ 117.899877, 39.474479 ], [ 117.912195, 39.517428 ], [ 117.912195, 39.517428 ], [ 117.904804, 39.533585 ], [ 117.933753, 39.574191 ], [ 117.868464, 39.59679 ], [ 117.829659, 39.589873 ], [ 117.766834, 39.598635 ], [ 117.753899, 39.579726 ], [ 117.753899, 39.579726 ], [ 117.745276, 39.547892 ], [ 117.715711, 39.529892 ], [ 117.707088, 39.576036 ], [ 117.684914, 39.58895 ], [ 117.654117, 39.575113 ], [ 117.637486, 39.603246 ], [ 117.66274, 39.636437 ], [ 117.668899, 39.666849 ], [ 117.627015, 39.703693 ], [ 117.57774, 39.726711 ], [ 117.595603, 39.74604 ], [ 117.56111, 39.754782 ], [ 117.546327, 39.775943 ], [ 117.561726, 39.799856 ], [ 117.529081, 39.859144 ], [ 117.529081, 39.859144 ], [ 117.508139, 39.901854 ], [ 117.508139, 39.901854 ], [ 117.512451, 39.90874 ], [ 117.512451, 39.90874 ], [ 117.513067, 39.910576 ], [ 117.513067, 39.910576 ], [ 117.514914, 39.946832 ], [ 117.534625, 39.954631 ], [ 117.546327, 39.999116 ], [ 117.594987, 39.994531 ], [ 117.594987, 39.994531 ], [ 117.614697, 39.97252 ], [ 117.671363, 39.973896 ], [ 117.691073, 39.984902 ], [ 117.756363, 39.965181 ], [ 117.781616, 39.966558 ], [ 117.781616, 39.966558 ], [ 117.795167, 39.996823 ], [ 117.795167, 39.996823 ], [ 117.793319, 40.005534 ], [ 117.793319, 40.005534 ], [ 117.768681, 40.022034 ], [ 117.768681, 40.022034 ], [ 117.744044, 40.018368 ], [ 117.74774, 40.047236 ], [ 117.776073, 40.059605 ], [ 117.752667, 40.081588 ], [ 117.71879, 40.082045 ], [ 117.71879, 40.082045 ], [ 117.675059, 40.082045 ], [ 117.655965, 40.109514 ], [ 117.655965, 40.109514 ], [ 117.654117, 40.114548 ], [ 117.654117, 40.114548 ], [ 117.651653, 40.122786 ], [ 117.651653, 40.122786 ], [ 117.613465, 40.158014 ], [ 117.613465, 40.158014 ], [ 117.609769, 40.160301 ], [ 117.609769, 40.160301 ], [ 117.576508, 40.178593 ], [ 117.571581, 40.219276 ], [ 117.548791, 40.232527 ], [ 117.505059, 40.227044 ], [ 117.450241, 40.252627 ], [ 117.415748, 40.248973 ], [ 117.389879, 40.227958 ], [ 117.351075, 40.229786 ], [ 117.331365, 40.289613 ], [ 117.295024, 40.2782 ], [ 117.271618, 40.325211 ], [ 117.271618, 40.325211 ], [ 117.243285, 40.369453 ], [ 117.226039, 40.368997 ], [ 117.234046, 40.417312 ], [ 117.263611, 40.442367 ], [ 117.208793, 40.501552 ], [ 117.262995, 40.512927 ], [ 117.247597, 40.539766 ], [ 117.269771, 40.560684 ], [ 117.348611, 40.581141 ], [ 117.348611, 40.581141 ], [ 117.389879, 40.561593 ], [ 117.429915, 40.576141 ], [ 117.412669, 40.605226 ], [ 117.467487, 40.649738 ] ] ], [ [ [ 117.210024, 40.082045 ], [ 117.192162, 40.066475 ], [ 117.198322, 39.992697 ], [ 117.150894, 39.944996 ], [ 117.162597, 39.876598 ], [ 117.162597, 39.876598 ], [ 117.227887, 39.852712 ], [ 117.247597, 39.860981 ], [ 117.251908, 39.834332 ], [ 117.192162, 39.832953 ], [ 117.156438, 39.817326 ], [ 117.15767, 39.796638 ], [ 117.205713, 39.763984 ], [ 117.161981, 39.748801 ], [ 117.165061, 39.718886 ], [ 117.165061, 39.718886 ], [ 117.177996, 39.645194 ], [ 117.152742, 39.623532 ], [ 117.10901, 39.625375 ], [ 117.10901, 39.625375 ], [ 117.016004, 39.653949 ], [ 116.983359, 39.638742 ], [ 116.983359, 39.638742 ], [ 116.964265, 39.64335 ], [ 116.948866, 39.680668 ], [ 116.948866, 39.680668 ], [ 116.944555, 39.695405 ], [ 116.944555, 39.695405 ], [ 116.932236, 39.706456 ], [ 116.932236, 39.706456 ], [ 116.90575, 39.688037 ], [ 116.889736, 39.687576 ], [ 116.887272, 39.72533 ], [ 116.916837, 39.731314 ], [ 116.902055, 39.763523 ], [ 116.949482, 39.778703 ], [ 116.918069, 39.84628 ], [ 116.907598, 39.832494 ], [ 116.865714, 39.843982 ], [ 116.812128, 39.889916 ], [ 116.78441, 39.891294 ], [ 116.782563, 39.947749 ], [ 116.757925, 39.967934 ], [ 116.781331, 40.034866 ], [ 116.820135, 40.02845 ], [ 116.831222, 40.051359 ], [ 116.867562, 40.041739 ], [ 116.927924, 40.055024 ], [ 116.945171, 40.04128 ], [ 117.025243, 40.030283 ], [ 117.051728, 40.059605 ], [ 117.105315, 40.074261 ], [ 117.105315, 40.074261 ], [ 117.140423, 40.064185 ], [ 117.159517, 40.077008 ], [ 117.204481, 40.069681 ], [ 117.210024, 40.082045 ] ] ], [ [ [ 117.784696, 39.376938 ], [ 117.74466, 39.354729 ], [ 117.670747, 39.35658 ], [ 117.669515, 39.322792 ], [ 117.594987, 39.349176 ], [ 117.536472, 39.338068 ], [ 117.521074, 39.357043 ], [ 117.570965, 39.404689 ], [ 117.601146, 39.419485 ], [ 117.614081, 39.407001 ], [ 117.668899, 39.412087 ], [ 117.673211, 39.386652 ], [ 117.699696, 39.407463 ], [ 117.765602, 39.400527 ], [ 117.784696, 39.376938 ] ] ], [ [ [ 118.869365, 39.142932 ], [ 118.857662, 39.098824 ], [ 118.82009, 39.108576 ], [ 118.869365, 39.142932 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"140000\", \"name\": \"山西省\", \"center\": [ 112.549248, 37.857014 ], \"centroid\": [ 112.304761, 37.618555 ], \"childrenNum\": 11, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 3, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 114.134639, 40.737314 ], [ 114.162357, 40.71373 ], [ 114.183299, 40.67153 ], [ 114.236269, 40.607043 ], [ 114.283081, 40.590685 ], [ 114.273842, 40.552954 ], [ 114.293552, 40.55159 ], [ 114.282465, 40.494725 ], [ 114.267066, 40.474242 ], [ 114.299711, 40.44009 ], [ 114.286161, 40.425057 ], [ 114.31203, 40.372645 ], [ 114.381015, 40.36307 ], [ 114.390254, 40.351213 ], [ 114.438914, 40.371733 ], [ 114.481413, 40.34802 ], [ 114.530688, 40.345283 ], [ 114.510978, 40.302851 ], [ 114.46971, 40.268155 ], [ 114.406269, 40.246232 ], [ 114.362537, 40.249886 ], [ 114.292936, 40.230242 ], [ 114.255364, 40.236182 ], [ 114.235654, 40.198252 ], [ 114.180219, 40.191395 ], [ 114.135871, 40.175392 ], [ 114.097683, 40.193681 ], [ 114.073046, 40.168533 ], [ 114.073046, 40.168533 ], [ 114.101995, 40.099901 ], [ 114.086596, 40.071513 ], [ 114.045944, 40.056856 ], [ 114.018227, 40.103563 ], [ 113.989278, 40.11226 ], [ 113.959097, 40.033491 ], [ 113.910438, 40.015618 ], [ 114.029314, 39.985819 ], [ 114.028082, 39.959218 ], [ 114.047176, 39.916085 ], [ 114.067502, 39.922511 ], [ 114.17406, 39.897722 ], [ 114.212248, 39.918839 ], [ 114.229494, 39.899558 ], [ 114.204241, 39.885324 ], [ 114.215943, 39.8619 ], [ 114.286776, 39.871087 ], [ 114.285545, 39.858225 ], [ 114.395182, 39.867412 ], [ 114.406885, 39.833413 ], [ 114.390254, 39.819165 ], [ 114.41674, 39.775943 ], [ 114.409964, 39.761683 ], [ 114.408117, 39.652106 ], [ 114.431522, 39.613851 ], [ 114.49558, 39.608318 ], [ 114.51529, 39.564964 ], [ 114.568877, 39.573729 ], [ 114.532536, 39.486027 ], [ 114.501739, 39.476789 ], [ 114.496812, 39.438437 ], [ 114.469095, 39.400989 ], [ 114.466631, 39.329736 ], [ 114.430906, 39.307513 ], [ 114.437066, 39.259337 ], [ 114.416124, 39.242654 ], [ 114.47587, 39.21623 ], [ 114.443841, 39.174023 ], [ 114.388406, 39.176807 ], [ 114.360689, 39.134112 ], [ 114.369928, 39.107648 ], [ 114.345907, 39.075133 ], [ 114.252284, 39.073739 ], [ 114.180835, 39.049111 ], [ 114.157429, 39.061194 ], [ 114.10877, 39.052364 ], [ 114.082901, 39.09325 ], [ 114.082901, 39.09325 ], [ 114.064422, 39.094179 ], [ 114.050872, 39.135969 ], [ 114.006524, 39.122971 ], [ 113.994821, 39.095572 ], [ 113.961561, 39.100681 ], [ 113.930148, 39.063517 ], [ 113.898119, 39.067699 ], [ 113.80696, 38.989595 ], [ 113.776779, 38.986804 ], [ 113.76754, 38.959819 ], [ 113.776163, 38.885788 ], [ 113.795257, 38.860628 ], [ 113.855619, 38.828933 ], [ 113.836525, 38.795824 ], [ 113.839605, 38.7585 ], [ 113.802648, 38.763166 ], [ 113.775547, 38.709949 ], [ 113.720728, 38.713218 ], [ 113.70225, 38.651551 ], [ 113.612939, 38.645942 ], [ 113.603084, 38.587024 ], [ 113.561816, 38.558483 ], [ 113.5612, 38.485909 ], [ 113.583374, 38.459671 ], [ 113.537794, 38.417952 ], [ 113.525475, 38.383245 ], [ 113.557504, 38.343359 ], [ 113.54457, 38.270569 ], [ 113.570439, 38.237202 ], [ 113.598772, 38.22733 ], [ 113.64312, 38.232031 ], [ 113.678844, 38.20523 ], [ 113.711489, 38.213695 ], [ 113.720728, 38.174656 ], [ 113.797105, 38.162894 ], [ 113.831597, 38.16854 ], [ 113.811271, 38.117707 ], [ 113.876561, 38.055059 ], [ 113.872249, 37.990471 ], [ 113.901198, 37.984811 ], [ 113.936307, 37.922993 ], [ 113.959097, 37.906468 ], [ 113.976959, 37.816696 ], [ 114.006524, 37.813386 ], [ 114.044712, 37.761834 ], [ 113.996669, 37.730128 ], [ 113.993589, 37.706932 ], [ 114.068118, 37.721608 ], [ 114.12848, 37.698409 ], [ 114.139567, 37.675676 ], [ 114.115545, 37.619761 ], [ 114.118625, 37.59084 ], [ 114.036705, 37.494037 ], [ 114.014531, 37.42468 ], [ 113.973879, 37.40329 ], [ 113.962792, 37.355734 ], [ 113.90243, 37.310052 ], [ 113.886416, 37.239095 ], [ 113.853155, 37.215269 ], [ 113.832213, 37.167594 ], [ 113.773083, 37.151855 ], [ 113.773699, 37.107004 ], [ 113.758301, 37.075497 ], [ 113.788482, 37.059739 ], [ 113.771851, 37.016745 ], [ 113.791561, 36.98759 ], [ 113.76138, 36.956034 ], [ 113.792793, 36.894796 ], [ 113.773083, 36.85506 ], [ 113.731815, 36.858891 ], [ 113.731815, 36.878521 ], [ 113.696707, 36.882351 ], [ 113.676381, 36.855539 ], [ 113.680692, 36.789907 ], [ 113.600004, 36.752995 ], [ 113.549497, 36.752515 ], [ 113.535946, 36.732373 ], [ 113.499606, 36.740527 ], [ 113.465113, 36.707908 ], [ 113.506997, 36.705029 ], [ 113.476816, 36.655114 ], [ 113.486671, 36.635427 ], [ 113.54457, 36.62342 ], [ 113.539642, 36.594116 ], [ 113.569823, 36.585947 ], [ 113.588917, 36.547974 ], [ 113.559968, 36.528741 ], [ 113.554425, 36.494589 ], [ 113.587069, 36.460904 ], [ 113.635729, 36.451277 ], [ 113.670221, 36.425278 ], [ 113.708409, 36.423352 ], [ 113.731199, 36.363135 ], [ 113.736127, 36.324571 ], [ 113.712105, 36.303353 ], [ 113.716417, 36.262347 ], [ 113.681924, 36.216491 ], [ 113.697939, 36.181719 ], [ 113.651127, 36.174473 ], [ 113.705946, 36.148865 ], [ 113.712721, 36.129533 ], [ 113.655439, 36.125182 ], [ 113.671453, 36.115514 ], [ 113.68562, 36.056026 ], [ 113.660366, 36.034735 ], [ 113.694859, 36.026991 ], [ 113.678844, 35.985841 ], [ 113.648663, 35.994073 ], [ 113.654207, 35.931586 ], [ 113.637576, 35.870019 ], [ 113.660982, 35.837035 ], [ 113.582758, 35.818111 ], [ 113.604932, 35.797727 ], [ 113.587685, 35.736542 ], [ 113.592613, 35.691838 ], [ 113.622794, 35.674825 ], [ 113.625258, 35.632518 ], [ 113.578446, 35.633491 ], [ 113.547649, 35.656835 ], [ 113.55812, 35.621816 ], [ 113.513773, 35.57364 ], [ 113.49899, 35.532254 ], [ 113.439244, 35.507412 ], [ 113.391817, 35.506925 ], [ 113.348085, 35.468429 ], [ 113.31236, 35.481101 ], [ 113.304353, 35.426989 ], [ 113.243375, 35.449418 ], [ 113.189789, 35.44893 ], [ 113.188557, 35.412357 ], [ 113.165151, 35.412845 ], [ 113.149137, 35.350878 ], [ 113.126347, 35.332327 ], [ 113.067217, 35.353806 ], [ 112.996384, 35.362104 ], [ 112.985913, 35.33965 ], [ 112.992072, 35.29619 ], [ 112.936022, 35.284466 ], [ 112.934174, 35.262968 ], [ 112.884283, 35.243909 ], [ 112.822073, 35.258082 ], [ 112.772798, 35.207732 ], [ 112.720443, 35.206265 ], [ 112.628052, 35.263457 ], [ 112.637291, 35.225822 ], [ 112.513487, 35.218489 ], [ 112.390915, 35.239021 ], [ 112.36751, 35.219956 ], [ 112.288053, 35.219956 ], [ 112.304684, 35.251728 ], [ 112.242474, 35.234622 ], [ 112.21722, 35.253195 ], [ 112.094033, 35.279092 ], [ 112.058924, 35.280069 ], [ 112.078634, 35.219467 ], [ 112.03983, 35.194039 ], [ 112.066315, 35.153437 ], [ 112.05646, 35.098615 ], [ 112.062004, 35.056005 ], [ 112.039214, 35.045717 ], [ 112.018888, 35.068742 ], [ 111.97762, 35.067272 ], [ 111.933272, 35.083435 ], [ 111.810084, 35.062374 ], [ 111.807005, 35.032977 ], [ 111.739251, 35.00406 ], [ 111.664107, 34.984449 ], [ 111.681969, 34.9511 ], [ 111.646861, 34.938836 ], [ 111.617911, 34.894671 ], [ 111.592042, 34.881416 ], [ 111.570484, 34.843114 ], [ 111.543999, 34.853428 ], [ 111.502731, 34.829851 ], [ 111.439289, 34.838202 ], [ 111.389398, 34.815113 ], [ 111.345666, 34.831816 ], [ 111.29208, 34.806759 ], [ 111.255123, 34.819535 ], [ 111.232949, 34.789559 ], [ 111.148566, 34.807742 ], [ 111.118385, 34.756623 ], [ 111.035233, 34.740887 ], [ 110.976103, 34.706456 ], [ 110.929907, 34.731543 ], [ 110.89911, 34.661673 ], [ 110.870777, 34.636072 ], [ 110.812263, 34.624746 ], [ 110.780234, 34.648874 ], [ 110.749437, 34.65232 ], [ 110.710017, 34.605045 ], [ 110.610851, 34.607508 ], [ 110.533242, 34.583368 ], [ 110.488279, 34.610956 ], [ 110.424837, 34.588295 ], [ 110.379257, 34.600612 ], [ 110.29549, 34.610956 ], [ 110.23636, 34.670533 ], [ 110.231432, 34.701044 ], [ 110.259149, 34.737937 ], [ 110.232664, 34.80332 ], [ 110.233896, 34.83722 ], [ 110.259149, 34.884853 ], [ 110.257301, 34.934912 ], [ 110.272084, 34.942761 ], [ 110.325671, 35.014844 ], [ 110.369402, 35.158329 ], [ 110.374946, 35.251728 ], [ 110.45009, 35.327933 ], [ 110.477808, 35.413821 ], [ 110.531394, 35.511309 ], [ 110.567735, 35.539559 ], [ 110.609619, 35.632031 ], [ 110.57759, 35.701559 ], [ 110.571431, 35.800639 ], [ 110.550489, 35.838005 ], [ 110.549257, 35.877778 ], [ 110.511684, 35.879718 ], [ 110.516612, 35.918501 ], [ 110.502445, 35.947575 ], [ 110.516612, 35.971796 ], [ 110.49259, 35.994073 ], [ 110.491974, 36.034735 ], [ 110.467953, 36.074893 ], [ 110.447011, 36.164328 ], [ 110.45625, 36.22663 ], [ 110.474112, 36.248352 ], [ 110.474112, 36.306729 ], [ 110.459946, 36.327946 ], [ 110.487047, 36.393972 ], [ 110.489511, 36.430094 ], [ 110.47288, 36.453203 ], [ 110.503677, 36.488335 ], [ 110.488895, 36.556628 ], [ 110.496902, 36.582102 ], [ 110.447627, 36.621018 ], [ 110.426685, 36.657514 ], [ 110.394656, 36.676716 ], [ 110.402663, 36.697352 ], [ 110.438388, 36.685835 ], [ 110.447011, 36.737649 ], [ 110.407591, 36.776007 ], [ 110.423605, 36.818179 ], [ 110.406975, 36.824886 ], [ 110.424221, 36.855539 ], [ 110.376178, 36.882351 ], [ 110.408823, 36.892403 ], [ 110.424221, 36.963685 ], [ 110.381721, 37.002408 ], [ 110.382953, 37.022001 ], [ 110.426685, 37.008621 ], [ 110.417446, 37.027257 ], [ 110.460561, 37.044932 ], [ 110.49567, 37.086956 ], [ 110.535706, 37.115118 ], [ 110.53509, 37.138021 ], [ 110.590525, 37.187145 ], [ 110.651503, 37.256722 ], [ 110.660126, 37.281011 ], [ 110.690307, 37.287201 ], [ 110.678604, 37.317668 ], [ 110.695234, 37.34955 ], [ 110.641648, 37.360015 ], [ 110.630561, 37.372858 ], [ 110.644111, 37.435135 ], [ 110.740198, 37.44939 ], [ 110.759292, 37.474567 ], [ 110.770995, 37.538184 ], [ 110.795017, 37.558586 ], [ 110.771611, 37.594634 ], [ 110.763604, 37.639668 ], [ 110.793169, 37.650567 ], [ 110.775306, 37.680886 ], [ 110.706321, 37.705511 ], [ 110.716792, 37.728708 ], [ 110.750669, 37.736281 ], [ 110.735886, 37.77035 ], [ 110.680452, 37.790216 ], [ 110.59422, 37.922049 ], [ 110.522771, 37.955088 ], [ 110.528315, 37.990471 ], [ 110.507989, 38.013107 ], [ 110.501829, 38.097929 ], [ 110.519692, 38.130889 ], [ 110.509221, 38.192061 ], [ 110.528315, 38.211814 ], [ 110.565887, 38.215105 ], [ 110.57759, 38.297345 ], [ 110.601612, 38.308147 ], [ 110.661358, 38.308617 ], [ 110.701394, 38.353215 ], [ 110.746973, 38.366355 ], [ 110.77777, 38.440924 ], [ 110.796864, 38.453579 ], [ 110.840596, 38.439986 ], [ 110.874473, 38.453579 ], [ 110.870777, 38.510265 ], [ 110.907733, 38.521035 ], [ 110.920052, 38.581878 ], [ 110.898494, 38.587024 ], [ 110.880632, 38.626776 ], [ 110.916357, 38.673981 ], [ 110.915125, 38.704345 ], [ 110.965016, 38.755699 ], [ 111.009363, 38.847579 ], [ 110.995813, 38.868084 ], [ 111.016755, 38.889981 ], [ 111.009979, 38.932823 ], [ 110.980414, 38.970056 ], [ 110.998276, 38.998433 ], [ 111.038313, 39.020289 ], [ 111.094363, 39.030053 ], [ 111.138095, 39.064447 ], [ 111.147334, 39.100681 ], [ 111.173819, 39.135041 ], [ 111.163348, 39.152678 ], [ 111.219399, 39.244044 ], [ 111.213239, 39.257021 ], [ 111.247732, 39.302419 ], [ 111.202152, 39.305197 ], [ 111.179363, 39.326959 ], [ 111.186138, 39.35149 ], [ 111.155341, 39.338531 ], [ 111.159037, 39.362596 ], [ 111.125776, 39.366297 ], [ 111.143022, 39.407926 ], [ 111.171971, 39.423183 ], [ 111.287152, 39.417173 ], [ 111.358601, 39.432428 ], [ 111.385086, 39.489722 ], [ 111.431282, 39.508656 ], [ 111.422043, 39.539123 ], [ 111.441137, 39.59679 ], [ 111.460847, 39.606935 ], [ 111.445448, 39.640124 ], [ 111.497187, 39.661781 ], [ 111.525521, 39.662242 ], [ 111.61668, 39.633211 ], [ 111.646245, 39.644272 ], [ 111.707839, 39.621227 ], [ 111.722621, 39.606013 ], [ 111.783599, 39.58895 ], [ 111.842729, 39.620305 ], [ 111.87907, 39.606013 ], [ 111.9382, 39.623071 ], [ 111.925265, 39.66731 ], [ 111.959758, 39.692642 ], [ 111.970229, 39.796638 ], [ 112.012729, 39.827438 ], [ 112.042294, 39.886243 ], [ 112.07617, 39.919298 ], [ 112.133453, 40.001866 ], [ 112.142076, 40.027076 ], [ 112.182112, 40.061437 ], [ 112.183344, 40.083877 ], [ 112.232003, 40.133311 ], [ 112.232619, 40.169905 ], [ 112.299756, 40.21105 ], [ 112.310227, 40.256281 ], [ 112.349031, 40.257194 ], [ 112.418017, 40.295091 ], [ 112.456205, 40.300112 ], [ 112.511639, 40.269068 ], [ 112.6299, 40.235725 ], [ 112.712436, 40.178593 ], [ 112.744464, 40.167161 ], [ 112.848558, 40.206937 ], [ 112.898449, 40.329317 ], [ 113.03334, 40.368997 ], [ 113.083231, 40.374925 ], [ 113.251382, 40.413211 ], [ 113.27602, 40.388601 ], [ 113.316672, 40.319736 ], [ 113.387505, 40.319279 ], [ 113.500222, 40.334335 ], [ 113.559968, 40.348476 ], [ 113.688699, 40.448288 ], [ 113.763228, 40.473787 ], [ 113.794641, 40.517932 ], [ 113.850691, 40.460583 ], [ 113.890112, 40.466503 ], [ 113.948626, 40.514747 ], [ 114.011452, 40.515657 ], [ 114.061959, 40.52885 ], [ 114.080437, 40.547952 ], [ 114.076741, 40.575686 ], [ 114.041633, 40.608861 ], [ 114.07243, 40.679246 ], [ 114.063806, 40.706925 ], [ 114.084748, 40.729605 ], [ 114.134639, 40.737314 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"150000\", \"name\": \"内蒙古自治区\", \"center\": [ 111.670801, 40.818311 ], \"centroid\": [ 114.077404, 44.331072 ], \"childrenNum\": 12, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 4, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"Polygon\", \"coordinates\": [ [ [ 111.125776, 39.366297 ], [ 111.087588, 39.376013 ], [ 111.098059, 39.401914 ], [ 111.064182, 39.400989 ], [ 111.058639, 39.447681 ], [ 111.10545, 39.472631 ], [ 111.10545, 39.497573 ], [ 111.148566, 39.531277 ], [ 111.154725, 39.569116 ], [ 111.136863, 39.587106 ], [ 111.101138, 39.559428 ], [ 111.017371, 39.552045 ], [ 110.958856, 39.519275 ], [ 110.891103, 39.509118 ], [ 110.869545, 39.494341 ], [ 110.782698, 39.38804 ], [ 110.73835, 39.348713 ], [ 110.731575, 39.30705 ], [ 110.702626, 39.273701 ], [ 110.626249, 39.266751 ], [ 110.596684, 39.282966 ], [ 110.566503, 39.320014 ], [ 110.559728, 39.351027 ], [ 110.524003, 39.382952 ], [ 110.482735, 39.360745 ], [ 110.434692, 39.381101 ], [ 110.429764, 39.341308 ], [ 110.385417, 39.310291 ], [ 110.257917, 39.407001 ], [ 110.243751, 39.423645 ], [ 110.152592, 39.45415 ], [ 110.12549, 39.432891 ], [ 110.136577, 39.39174 ], [ 110.161831, 39.387115 ], [ 110.184005, 39.355192 ], [ 110.217881, 39.281113 ], [ 110.109476, 39.249606 ], [ 110.041107, 39.21623 ], [ 109.962267, 39.212056 ], [ 109.90252, 39.271848 ], [ 109.871723, 39.243581 ], [ 109.961035, 39.191651 ], [ 109.893897, 39.141075 ], [ 109.92223, 39.107183 ], [ 109.890818, 39.103932 ], [ 109.851397, 39.122971 ], [ 109.793499, 39.074204 ], [ 109.762086, 39.057476 ], [ 109.72513, 39.018429 ], [ 109.665384, 38.981687 ], [ 109.685094, 38.968195 ], [ 109.672159, 38.928167 ], [ 109.624116, 38.85457 ], [ 109.549587, 38.805618 ], [ 109.511399, 38.833595 ], [ 109.444262, 38.782763 ], [ 109.404226, 38.720689 ], [ 109.338936, 38.701542 ], [ 109.329081, 38.66043 ], [ 109.367269, 38.627711 ], [ 109.331545, 38.597783 ], [ 109.276726, 38.623035 ], [ 109.196654, 38.552867 ], [ 109.175712, 38.518694 ], [ 109.128901, 38.480288 ], [ 109.054372, 38.433892 ], [ 109.051292, 38.385122 ], [ 109.007561, 38.359316 ], [ 108.961981, 38.26493 ], [ 108.976148, 38.245192 ], [ 108.938575, 38.207582 ], [ 108.964445, 38.154894 ], [ 109.069155, 38.091336 ], [ 109.050676, 38.055059 ], [ 109.06977, 38.023008 ], [ 109.037742, 38.021593 ], [ 109.018648, 37.971602 ], [ 108.982923, 37.964053 ], [ 108.9743, 37.931962 ], [ 108.93488, 37.922521 ], [ 108.893612, 37.978207 ], [ 108.883141, 38.01405 ], [ 108.830786, 38.049875 ], [ 108.797525, 38.04799 ], [ 108.82709, 37.989056 ], [ 108.798141, 37.93385 ], [ 108.791982, 37.872934 ], [ 108.799989, 37.784068 ], [ 108.784591, 37.764673 ], [ 108.791982, 37.700303 ], [ 108.777815, 37.683728 ], [ 108.720533, 37.683728 ], [ 108.699591, 37.669518 ], [ 108.628142, 37.651988 ], [ 108.532671, 37.690832 ], [ 108.485244, 37.678044 ], [ 108.422418, 37.648672 ], [ 108.301078, 37.640616 ], [ 108.293071, 37.656726 ], [ 108.24626, 37.665728 ], [ 108.205608, 37.655779 ], [ 108.193905, 37.638246 ], [ 108.134159, 37.622131 ], [ 108.055318, 37.652462 ], [ 108.025137, 37.649619 ], [ 108.012819, 37.66857 ], [ 108.025753, 37.696041 ], [ 107.993109, 37.735335 ], [ 107.982022, 37.787378 ], [ 107.884703, 37.808186 ], [ 107.842819, 37.828987 ], [ 107.732566, 37.84931 ], [ 107.684523, 37.888522 ], [ 107.65003, 37.86443 ], [ 107.560719, 37.893717 ], [ 107.49235, 37.944706 ], [ 107.448618, 37.933378 ], [ 107.411662, 37.948009 ], [ 107.440611, 37.995659 ], [ 107.3938, 38.014993 ], [ 107.33159, 38.086625 ], [ 107.240431, 38.111586 ], [ 107.19054, 38.153953 ], [ 107.138801, 38.161011 ], [ 107.119091, 38.134185 ], [ 107.071047, 38.138892 ], [ 107.051337, 38.122886 ], [ 107.010069, 38.120532 ], [ 106.942316, 38.132302 ], [ 106.858548, 38.156306 ], [ 106.779092, 38.171833 ], [ 106.737824, 38.197706 ], [ 106.654672, 38.22921 ], [ 106.627571, 38.232501 ], [ 106.555506, 38.263521 ], [ 106.482209, 38.319417 ], [ 106.599854, 38.389812 ], [ 106.647897, 38.470917 ], [ 106.66268, 38.601524 ], [ 106.709491, 38.718821 ], [ 106.756302, 38.748699 ], [ 106.837606, 38.847579 ], [ 106.954019, 38.941202 ], [ 106.971881, 39.026333 ], [ 106.96757, 39.054688 ], [ 106.933693, 39.076527 ], [ 106.878874, 39.091392 ], [ 106.859164, 39.107648 ], [ 106.825288, 39.19397 ], [ 106.795723, 39.214375 ], [ 106.790795, 39.241263 ], [ 106.806193, 39.277407 ], [ 106.806809, 39.318625 ], [ 106.781556, 39.371849 ], [ 106.751375, 39.381564 ], [ 106.683622, 39.357506 ], [ 106.643586, 39.357969 ], [ 106.602318, 39.37555 ], [ 106.556122, 39.322329 ], [ 106.525325, 39.308439 ], [ 106.511774, 39.272311 ], [ 106.402753, 39.291767 ], [ 106.280181, 39.262118 ], [ 106.29558, 39.167992 ], [ 106.285109, 39.146181 ], [ 106.251232, 39.131327 ], [ 106.192718, 39.142932 ], [ 106.170544, 39.163352 ], [ 106.145907, 39.153142 ], [ 106.096631, 39.084889 ], [ 106.078153, 39.026333 ], [ 106.087392, 39.006339 ], [ 106.060907, 38.96866 ], [ 106.021487, 38.953769 ], [ 105.97098, 38.909077 ], [ 105.992538, 38.857366 ], [ 105.909386, 38.791159 ], [ 105.908154, 38.737496 ], [ 105.88598, 38.716953 ], [ 105.894603, 38.696405 ], [ 105.852719, 38.641735 ], [ 105.874277, 38.593105 ], [ 105.856415, 38.569714 ], [ 105.863806, 38.53508 ], [ 105.836705, 38.476071 ], [ 105.850872, 38.443736 ], [ 105.827466, 38.432486 ], [ 105.835473, 38.387467 ], [ 105.821307, 38.366824 ], [ 105.86627, 38.296406 ], [ 105.842248, 38.240962 ], [ 105.802828, 38.220277 ], [ 105.775111, 38.186887 ], [ 105.76772, 38.121474 ], [ 105.780655, 38.084741 ], [ 105.840401, 38.004147 ], [ 105.799749, 37.939986 ], [ 105.80406, 37.862068 ], [ 105.760944, 37.799674 ], [ 105.677177, 37.771769 ], [ 105.622358, 37.777919 ], [ 105.616199, 37.722555 ], [ 105.598952, 37.699356 ], [ 105.467141, 37.695094 ], [ 105.4037, 37.710246 ], [ 105.315004, 37.702197 ], [ 105.221998, 37.677097 ], [ 105.187505, 37.657674 ], [ 105.111128, 37.633981 ], [ 105.027977, 37.580881 ], [ 104.866601, 37.566651 ], [ 104.805007, 37.539133 ], [ 104.623305, 37.522522 ], [ 104.433595, 37.515402 ], [ 104.419429, 37.511604 ], [ 104.407726, 37.464592 ], [ 104.322726, 37.44844 ], [ 104.287002, 37.428007 ], [ 104.237727, 37.411847 ], [ 104.183524, 37.406618 ], [ 104.089285, 37.465067 ], [ 103.935916, 37.572818 ], [ 103.874938, 37.604117 ], [ 103.841062, 37.64725 ], [ 103.683381, 37.777919 ], [ 103.627947, 37.797783 ], [ 103.40744, 37.860651 ], [ 103.362477, 38.037621 ], [ 103.368636, 38.08898 ], [ 103.53494, 38.156776 ], [ 103.507838, 38.280905 ], [ 103.465339, 38.353215 ], [ 103.416063, 38.404821 ], [ 103.85954, 38.64454 ], [ 104.011677, 38.85923 ], [ 104.044322, 38.895105 ], [ 104.173053, 38.94446 ], [ 104.196459, 38.9882 ], [ 104.190915, 39.042139 ], [ 104.207546, 39.083495 ], [ 104.171205, 39.160567 ], [ 104.047401, 39.297788 ], [ 104.073271, 39.351953 ], [ 104.089901, 39.419947 ], [ 103.955626, 39.456923 ], [ 103.85338, 39.461543 ], [ 103.728961, 39.430117 ], [ 103.595302, 39.386652 ], [ 103.428998, 39.353341 ], [ 103.344615, 39.331588 ], [ 103.259615, 39.263971 ], [ 103.188166, 39.215302 ], [ 103.133347, 39.192579 ], [ 103.007696, 39.099753 ], [ 102.883892, 39.120649 ], [ 102.616574, 39.171703 ], [ 102.579002, 39.183301 ], [ 102.45335, 39.255167 ], [ 102.3548, 39.231993 ], [ 102.276576, 39.188868 ], [ 102.050526, 39.141075 ], [ 102.012338, 39.127149 ], [ 101.902701, 39.111827 ], [ 101.833715, 39.08907 ], [ 101.926106, 39.000758 ], [ 101.955055, 38.985874 ], [ 102.045599, 38.904885 ], [ 102.075164, 38.891378 ], [ 101.941505, 38.808883 ], [ 101.873751, 38.733761 ], [ 101.777049, 38.66043 ], [ 101.672955, 38.6908 ], [ 101.601506, 38.65529 ], [ 101.562702, 38.713218 ], [ 101.412413, 38.764099 ], [ 101.331109, 38.777164 ], [ 101.307087, 38.80282 ], [ 101.34158, 38.822406 ], [ 101.33542, 38.847113 ], [ 101.24303, 38.860628 ], [ 101.237486, 38.907214 ], [ 101.198682, 38.943064 ], [ 101.228863, 39.020754 ], [ 101.117378, 38.975174 ], [ 100.969553, 38.946788 ], [ 100.961545, 39.005874 ], [ 100.901799, 39.030053 ], [ 100.875314, 39.002619 ], [ 100.835278, 39.025869 ], [ 100.829118, 39.075133 ], [ 100.864227, 39.106719 ], [ 100.842669, 39.199999 ], [ 100.842053, 39.405614 ], [ 100.707778, 39.404689 ], [ 100.606764, 39.387577 ], [ 100.498975, 39.400527 ], [ 100.500823, 39.481408 ], [ 100.44354, 39.485565 ], [ 100.326512, 39.509118 ], [ 100.301258, 39.572345 ], [ 100.314193, 39.606935 ], [ 100.250135, 39.685274 ], [ 100.128179, 39.702312 ], [ 100.040716, 39.757083 ], [ 99.958796, 39.769504 ], [ 99.904593, 39.785601 ], [ 99.822058, 39.860063 ], [ 99.672384, 39.888079 ], [ 99.469124, 39.875221 ], [ 99.440791, 39.885783 ], [ 99.459885, 39.898181 ], [ 99.491298, 39.884406 ], [ 99.533182, 39.891753 ], [ 99.714268, 39.972061 ], [ 99.751225, 40.006909 ], [ 99.841152, 40.013326 ], [ 99.927383, 40.063727 ], [ 99.955716, 40.150695 ], [ 100.007455, 40.20008 ], [ 100.169447, 40.277743 ], [ 100.169447, 40.541131 ], [ 100.242744, 40.618855 ], [ 100.237201, 40.716905 ], [ 100.224882, 40.727337 ], [ 100.107853, 40.875475 ], [ 100.057346, 40.908049 ], [ 99.985897, 40.909858 ], [ 99.673, 40.93292 ], [ 99.565827, 40.846961 ], [ 99.174705, 40.858278 ], [ 99.172858, 40.747289 ], [ 99.12543, 40.715091 ], [ 99.102025, 40.676522 ], [ 99.041662, 40.693767 ], [ 98.984996, 40.782644 ], [ 98.790975, 40.705564 ], [ 98.80699, 40.660181 ], [ 98.802678, 40.607043 ], [ 98.762642, 40.639748 ], [ 98.72199, 40.657911 ], [ 98.689345, 40.691952 ], [ 98.668403, 40.773128 ], [ 98.569853, 40.746836 ], [ 98.627751, 40.677884 ], [ 98.344419, 40.568413 ], [ 98.333332, 40.918903 ], [ 98.25018, 40.93925 ], [ 98.184891, 40.988056 ], [ 98.142391, 41.001607 ], [ 97.971776, 41.09774 ], [ 97.903407, 41.168057 ], [ 97.629314, 41.440498 ], [ 97.613915, 41.477276 ], [ 97.84674, 41.656379 ], [ 97.653335, 41.986856 ], [ 97.500582, 42.243894 ], [ 97.371235, 42.457076 ], [ 97.172903, 42.795257 ], [ 97.28254, 42.782081 ], [ 97.831958, 42.706047 ], [ 98.195362, 42.653251 ], [ 98.546447, 42.638284 ], [ 98.962822, 42.607018 ], [ 99.51224, 42.568244 ], [ 99.969267, 42.647969 ], [ 100.004376, 42.648849 ], [ 100.272309, 42.636523 ], [ 100.32528, 42.690213 ], [ 100.826655, 42.675255 ], [ 100.862995, 42.671295 ], [ 101.291689, 42.586312 ], [ 101.557775, 42.529887 ], [ 101.770274, 42.509597 ], [ 101.803534, 42.503861 ], [ 101.877447, 42.432345 ], [ 102.070236, 42.232374 ], [ 102.093642, 42.223512 ], [ 102.449039, 42.144133 ], [ 102.540814, 42.162323 ], [ 102.621502, 42.154338 ], [ 102.712045, 42.153007 ], [ 103.021862, 42.028212 ], [ 103.20726, 41.96283 ], [ 103.418527, 41.882233 ], [ 103.454868, 41.877332 ], [ 103.868779, 41.802427 ], [ 104.080046, 41.805104 ], [ 104.30856, 41.840782 ], [ 104.418813, 41.860397 ], [ 104.530298, 41.875104 ], [ 104.524138, 41.661745 ], [ 104.68921, 41.6452 ], [ 104.803775, 41.652355 ], [ 104.923267, 41.654143 ], [ 105.009498, 41.583007 ], [ 105.230621, 41.751103 ], [ 105.291599, 41.749763 ], [ 105.385221, 41.797073 ], [ 105.589713, 41.888471 ], [ 105.74185, 41.949033 ], [ 106.01348, 42.032213 ], [ 106.344855, 42.149457 ], [ 106.372572, 42.161436 ], [ 106.612789, 42.241679 ], [ 106.785867, 42.291281 ], [ 107.051337, 42.319166 ], [ 107.271844, 42.364285 ], [ 107.303872, 42.412465 ], [ 107.46648, 42.458842 ], [ 107.501589, 42.456635 ], [ 107.57427, 42.412907 ], [ 107.736262, 42.415116 ], [ 107.939522, 42.403628 ], [ 107.986949, 42.413349 ], [ 108.022058, 42.433229 ], [ 108.089195, 42.436321 ], [ 108.238252, 42.460167 ], [ 108.298614, 42.438529 ], [ 108.532671, 42.442945 ], [ 108.705134, 42.413349 ], [ 108.798757, 42.415116 ], [ 108.845569, 42.395673 ], [ 108.983539, 42.449128 ], [ 109.026039, 42.458401 ], [ 109.291509, 42.435879 ], [ 109.486761, 42.458842 ], [ 109.544044, 42.472528 ], [ 109.683862, 42.558988 ], [ 109.733753, 42.579262 ], [ 109.906216, 42.635643 ], [ 110.108244, 42.642687 ], [ 110.139657, 42.674815 ], [ 110.34846, 42.742098 ], [ 110.437156, 42.781203 ], [ 110.469801, 42.839156 ], [ 110.631177, 42.936061 ], [ 110.689691, 43.02144 ], [ 110.687227, 43.036314 ], [ 110.736502, 43.089657 ], [ 110.769763, 43.099272 ], [ 110.82027, 43.149067 ], [ 111.02045, 43.329998 ], [ 111.069725, 43.357852 ], [ 111.151029, 43.38004 ], [ 111.183674, 43.396132 ], [ 111.354289, 43.436125 ], [ 111.400485, 43.472618 ], [ 111.456535, 43.494329 ], [ 111.564325, 43.490422 ], [ 111.606209, 43.513863 ], [ 111.79407, 43.672068 ], [ 111.891388, 43.6738 ], [ 111.951135, 43.693275 ], [ 111.970845, 43.748205 ], [ 111.959758, 43.823382 ], [ 111.870447, 43.940279 ], [ 111.773128, 44.010479 ], [ 111.702295, 44.034147 ], [ 111.662875, 44.061247 ], [ 111.559397, 44.171238 ], [ 111.541535, 44.206855 ], [ 111.534144, 44.26217 ], [ 111.507042, 44.294305 ], [ 111.428818, 44.319573 ], [ 111.415883, 44.35724 ], [ 111.427586, 44.394455 ], [ 111.478709, 44.488884 ], [ 111.514434, 44.507666 ], [ 111.530448, 44.55033 ], [ 111.569868, 44.57634 ], [ 111.560629, 44.647062 ], [ 111.585267, 44.705789 ], [ 111.624687, 44.778477 ], [ 111.69244, 44.859983 ], [ 111.764505, 44.969325 ], [ 111.903707, 45.052252 ], [ 112.002874, 45.090713 ], [ 112.071243, 45.096206 ], [ 112.113743, 45.072965 ], [ 112.396459, 45.064512 ], [ 112.438959, 45.071697 ], [ 112.540589, 45.001072 ], [ 112.599719, 44.930783 ], [ 112.712436, 44.879494 ], [ 112.850406, 44.840466 ], [ 112.937869, 44.840042 ], [ 113.037652, 44.822641 ], [ 113.11526, 44.799714 ], [ 113.503918, 44.777628 ], [ 113.540874, 44.759358 ], [ 113.631417, 44.745333 ], [ 113.712105, 44.788247 ], [ 113.798953, 44.849377 ], [ 113.861778, 44.863377 ], [ 113.907358, 44.915104 ], [ 114.065038, 44.931206 ], [ 114.116777, 44.957045 ], [ 114.158045, 44.994301 ], [ 114.19069, 45.036607 ], [ 114.313262, 45.107189 ], [ 114.347139, 45.119436 ], [ 114.409348, 45.179371 ], [ 114.459855, 45.21353 ], [ 114.519602, 45.283893 ], [ 114.539928, 45.325985 ], [ 114.551014, 45.387383 ], [ 114.600906, 45.403773 ], [ 114.745035, 45.438217 ], [ 114.920578, 45.386122 ], [ 114.983404, 45.379397 ], [ 115.178041, 45.396209 ], [ 115.36467, 45.392427 ], [ 115.586408, 45.440317 ], [ 115.699741, 45.45963 ], [ 115.864197, 45.572853 ], [ 115.936878, 45.632727 ], [ 116.026805, 45.661177 ], [ 116.035428, 45.685013 ], [ 116.1155, 45.679577 ], [ 116.17463, 45.688775 ], [ 116.217746, 45.72221 ], [ 116.22329, 45.747273 ], [ 116.260862, 45.776082 ], [ 116.286731, 45.775247 ], [ 116.278108, 45.831152 ], [ 116.288579, 45.839074 ], [ 116.243, 45.876169 ], [ 116.271949, 45.966926 ], [ 116.414231, 46.133896 ], [ 116.439484, 46.137628 ], [ 116.536187, 46.23251 ], [ 116.573143, 46.258998 ], [ 116.585462, 46.292504 ], [ 116.673541, 46.325163 ], [ 116.745606, 46.327642 ], [ 116.81336, 46.355737 ], [ 116.834302, 46.384229 ], [ 116.876801, 46.375559 ], [ 117.097308, 46.356976 ], [ 117.247597, 46.366888 ], [ 117.372017, 46.36028 ], [ 117.383719, 46.394962 ], [ 117.375712, 46.416421 ], [ 117.392343, 46.463023 ], [ 117.447777, 46.528117 ], [ 117.42006, 46.582029 ], [ 117.49582, 46.600535 ], [ 117.596218, 46.603414 ], [ 117.622704, 46.596012 ], [ 117.641182, 46.558166 ], [ 117.704008, 46.516587 ], [ 117.748355, 46.521941 ], [ 117.769913, 46.537586 ], [ 117.813645, 46.530588 ], [ 117.870927, 46.549935 ], [ 117.868464, 46.575447 ], [ 117.914659, 46.607936 ], [ 117.982412, 46.614925 ], [ 117.992883, 46.631366 ], [ 118.04647, 46.631366 ], [ 118.124078, 46.678195 ], [ 118.192448, 46.682711 ], [ 118.238643, 46.709392 ], [ 118.274984, 46.715957 ], [ 118.316252, 46.73934 ], [ 118.41049, 46.728265 ], [ 118.446831, 46.704467 ], [ 118.586033, 46.692975 ], [ 118.639004, 46.721291 ], [ 118.677192, 46.6979 ], [ 118.788061, 46.687227 ], [ 118.788061, 46.717598 ], [ 118.845343, 46.771731 ], [ 118.914329, 46.77501 ], [ 118.912481, 46.733188 ], [ 118.951285, 46.722111 ], [ 119.011647, 46.745902 ], [ 119.073857, 46.676552 ], [ 119.123132, 46.642872 ], [ 119.152081, 46.658072 ], [ 119.20074, 46.648213 ], [ 119.26295, 46.649034 ], [ 119.325776, 46.608759 ], [ 119.357805, 46.619447 ], [ 119.374435, 46.603414 ], [ 119.431718, 46.638763 ], [ 119.491464, 46.629311 ], [ 119.557985, 46.633832 ], [ 119.598637, 46.618214 ], [ 119.656535, 46.625612 ], [ 119.682405, 46.605058 ], [ 119.677477, 46.584908 ], [ 119.739687, 46.615336 ], [ 119.783419, 46.626023 ], [ 119.8136, 46.66834 ], [ 119.804361, 46.68189 ], [ 119.859179, 46.669572 ], [ 119.911534, 46.669572 ], [ 119.93494, 46.712674 ], [ 119.917078, 46.758203 ], [ 119.936172, 46.790173 ], [ 119.920157, 46.853238 ], [ 119.926933, 46.903963 ], [ 119.859795, 46.917046 ], [ 119.845013, 46.964852 ], [ 119.795122, 47.013024 ], [ 119.79081, 47.04525 ], [ 119.806825, 47.055037 ], [ 119.763093, 47.13082 ], [ 119.716282, 47.195518 ], [ 119.627586, 47.247544 ], [ 119.56784, 47.248357 ], [ 119.559217, 47.303172 ], [ 119.450812, 47.353065 ], [ 119.437877, 47.378602 ], [ 119.386138, 47.397645 ], [ 119.365812, 47.423161 ], [ 119.32208, 47.42721 ], [ 119.365812, 47.47739 ], [ 119.205052, 47.520249 ], [ 119.152081, 47.540453 ], [ 119.134219, 47.664335 ], [ 118.773278, 47.771034 ], [ 118.568171, 47.992187 ], [ 118.441903, 47.995791 ], [ 118.422193, 48.01461 ], [ 118.37415, 48.016612 ], [ 118.351976, 48.006203 ], [ 118.284839, 48.011007 ], [ 118.238027, 48.031422 ], [ 118.238643, 48.041826 ], [ 118.150564, 48.036224 ], [ 118.124694, 48.047427 ], [ 118.107448, 48.031021 ], [ 118.052014, 48.01421 ], [ 117.96147, 48.011007 ], [ 117.886942, 48.025418 ], [ 117.813645, 48.016212 ], [ 117.529081, 47.782697 ], [ 117.519226, 47.761782 ], [ 117.493357, 47.758563 ], [ 117.384335, 47.641356 ], [ 117.094844, 47.8241 ], [ 116.879265, 47.893968 ], [ 116.791186, 47.89758 ], [ 116.669846, 47.890758 ], [ 116.453035, 47.837358 ], [ 116.26579, 47.876711 ], [ 116.130283, 47.823296 ], [ 116.111189, 47.811642 ], [ 115.968291, 47.689721 ], [ 115.939342, 47.683275 ], [ 115.580249, 47.921649 ], [ 115.539597, 48.104607 ], [ 115.545141, 48.134971 ], [ 115.529126, 48.155336 ], [ 115.81061, 48.257042 ], [ 115.822929, 48.259432 ], [ 115.799523, 48.514982 ], [ 115.83032, 48.560156 ], [ 116.069305, 48.811437 ], [ 116.077928, 48.822471 ], [ 116.048363, 48.873274 ], [ 116.428397, 49.430659 ], [ 116.717889, 49.847288 ], [ 116.736367, 49.847674 ], [ 117.068974, 49.695389 ], [ 117.278394, 49.636512 ], [ 117.485349, 49.633024 ], [ 117.638102, 49.574847 ], [ 117.809333, 49.521263 ], [ 117.849369, 49.551557 ], [ 117.866, 49.591532 ], [ 117.950999, 49.596187 ], [ 117.995963, 49.623332 ], [ 118.011362, 49.614803 ], [ 118.082811, 49.616741 ], [ 118.129622, 49.669446 ], [ 118.156723, 49.660149 ], [ 118.211542, 49.690744 ], [ 118.220781, 49.729831 ], [ 118.284223, 49.743755 ], [ 118.315636, 49.766953 ], [ 118.384005, 49.783958 ], [ 118.398787, 49.802502 ], [ 118.385853, 49.827217 ], [ 118.443751, 49.835709 ], [ 118.483787, 49.830691 ], [ 118.485019, 49.866194 ], [ 118.531214, 49.887791 ], [ 118.574946, 49.931342 ], [ 118.605127, 49.926719 ], [ 118.672264, 49.955991 ], [ 118.739402, 49.946364 ], [ 118.761576, 49.959456 ], [ 118.791757, 49.955606 ], [ 118.964836, 49.988708 ], [ 118.982082, 49.979087 ], [ 119.090487, 49.985629 ], [ 119.12498, 50.019095 ], [ 119.163168, 50.027554 ], [ 119.193965, 50.069826 ], [ 119.190269, 50.087877 ], [ 119.236465, 50.075204 ], [ 119.290052, 50.121655 ], [ 119.309762, 50.161161 ], [ 119.350414, 50.166145 ], [ 119.339327, 50.192206 ], [ 119.358421, 50.197953 ], [ 119.319001, 50.220933 ], [ 119.339943, 50.244668 ], [ 119.35103, 50.303953 ], [ 119.381827, 50.324208 ], [ 119.358421, 50.358965 ], [ 119.322696, 50.352474 ], [ 119.277117, 50.366218 ], [ 119.259871, 50.345218 ], [ 119.232153, 50.365455 ], [ 119.188422, 50.347509 ], [ 119.155777, 50.364691 ], [ 119.176719, 50.378814 ], [ 119.125596, 50.389118 ], [ 119.165016, 50.422683 ], [ 119.217371, 50.414675 ], [ 119.22353, 50.441363 ], [ 119.250631, 50.448604 ], [ 119.262334, 50.490124 ], [ 119.264182, 50.536933 ], [ 119.295595, 50.573814 ], [ 119.281428, 50.601551 ], [ 119.298059, 50.616743 ], [ 119.361501, 50.632689 ], [ 119.394145, 50.667219 ], [ 119.385522, 50.682769 ], [ 119.430486, 50.684286 ], [ 119.450196, 50.695281 ], [ 119.506862, 50.763846 ], [ 119.496391, 50.771795 ], [ 119.515485, 50.814165 ], [ 119.498855, 50.827776 ], [ 119.491464, 50.87878 ], [ 119.569688, 50.933879 ], [ 119.598637, 50.984767 ], [ 119.630666, 51.00925 ], [ 119.678093, 51.016404 ], [ 119.726753, 51.051028 ], [ 119.719361, 51.075099 ], [ 119.764325, 51.092017 ], [ 119.752622, 51.117193 ], [ 119.771716, 51.124331 ], [ 119.788346, 51.174636 ], [ 119.760629, 51.212516 ], [ 119.784035, 51.22601 ], [ 119.821607, 51.21439 ], [ 119.797586, 51.243622 ], [ 119.828383, 51.263099 ], [ 119.811136, 51.281071 ], [ 119.885049, 51.302777 ], [ 119.883817, 51.336813 ], [ 119.946643, 51.360736 ], [ 119.914614, 51.374187 ], [ 119.910918, 51.390994 ], [ 119.97128, 51.40033 ], [ 119.982983, 51.445112 ], [ 120.002693, 51.459283 ], [ 119.982367, 51.482396 ], [ 119.985447, 51.505125 ], [ 120.017476, 51.52114 ], [ 120.052584, 51.560967 ], [ 120.035954, 51.583657 ], [ 120.05936, 51.634203 ], [ 120.100628, 51.649058 ], [ 120.087077, 51.678013 ], [ 120.172693, 51.679868 ], [ 120.226279, 51.717703 ], [ 120.294649, 51.752171 ], [ 120.317438, 51.785873 ], [ 120.363634, 51.789945 ], [ 120.40675, 51.81659 ], [ 120.40059, 51.833605 ], [ 120.480046, 51.855049 ], [ 120.481278, 51.885719 ], [ 120.549032, 51.882394 ], [ 120.548416, 51.907877 ], [ 120.656821, 51.926333 ], [ 120.66298, 51.958061 ], [ 120.704864, 51.983501 ], [ 120.717799, 52.015556 ], [ 120.691929, 52.026973 ], [ 120.690698, 52.047221 ], [ 120.717183, 52.072978 ], [ 120.753523, 52.085483 ], [ 120.76769, 52.10938 ], [ 120.760299, 52.136937 ], [ 120.786784, 52.15787 ], [ 120.745516, 52.20594 ], [ 120.755371, 52.258355 ], [ 120.715951, 52.261286 ], [ 120.695625, 52.290214 ], [ 120.653741, 52.302658 ], [ 120.627256, 52.323878 ], [ 120.62356, 52.361172 ], [ 120.653741, 52.371038 ], [ 120.64943, 52.3904 ], [ 120.688234, 52.427637 ], [ 120.68269, 52.464479 ], [ 120.706712, 52.492909 ], [ 120.687002, 52.511489 ], [ 120.734429, 52.536977 ], [ 120.690698, 52.547532 ], [ 120.658669, 52.56718 ], [ 120.62664, 52.570818 ], [ 120.605082, 52.589364 ], [ 120.56135, 52.595544 ], [ 120.483742, 52.630066 ], [ 120.462184, 52.64532 ], [ 120.396895, 52.616261 ], [ 120.289721, 52.623527 ], [ 120.194866, 52.578819 ], [ 120.125265, 52.586819 ], [ 120.07599, 52.586092 ], [ 120.049505, 52.598453 ], [ 120.035338, 52.646409 ], [ 120.071063, 52.70628 ], [ 120.031642, 52.773674 ], [ 120.101244, 52.788877 ], [ 120.14128, 52.813119 ], [ 120.181316, 52.806969 ], [ 120.222584, 52.84277 ], [ 120.297112, 52.869872 ], [ 120.295265, 52.891542 ], [ 120.350699, 52.906343 ], [ 120.363018, 52.94134 ], [ 120.411061, 52.957927 ], [ 120.452945, 53.01017 ], [ 120.529321, 53.045803 ], [ 120.562582, 53.082845 ], [ 120.643886, 53.106923 ], [ 120.659901, 53.137091 ], [ 120.687002, 53.142476 ], [ 120.690698, 53.174771 ], [ 120.736277, 53.204892 ], [ 120.821893, 53.241797 ], [ 120.838523, 53.239648 ], [ 120.820661, 53.269007 ], [ 120.867472, 53.278669 ], [ 120.882871, 53.294411 ], [ 120.936457, 53.28833 ], [ 120.950624, 53.29763 ], [ 121.055334, 53.29155 ], [ 121.098449, 53.306929 ], [ 121.129246, 53.277238 ], [ 121.155732, 53.285468 ], [ 121.227797, 53.280459 ], [ 121.308485, 53.301565 ], [ 121.336818, 53.325877 ], [ 121.416274, 53.319443 ], [ 121.499426, 53.337314 ], [ 121.504969, 53.323018 ], [ 121.575802, 53.29155 ], [ 121.615222, 53.258984 ], [ 121.642324, 53.262564 ], [ 121.679896, 53.240722 ], [ 121.67928, 53.199515 ], [ 121.660186, 53.195213 ], [ 121.665114, 53.170467 ], [ 121.722396, 53.145706 ], [ 121.753193, 53.147501 ], [ 121.784606, 53.104408 ], [ 121.775367, 53.089674 ], [ 121.817867, 53.061631 ], [ 121.785838, 53.018451 ], [ 121.715621, 52.997926 ], [ 121.677432, 52.948192 ], [ 121.66265, 52.912478 ], [ 121.610295, 52.892264 ], [ 121.604136, 52.872401 ], [ 121.620766, 52.853251 ], [ 121.591201, 52.824693 ], [ 121.537614, 52.801542 ], [ 121.511129, 52.779104 ], [ 121.476636, 52.772225 ], [ 121.455078, 52.73528 ], [ 121.373158, 52.683067 ], [ 121.309717, 52.676173 ], [ 121.29247, 52.651855 ], [ 121.237036, 52.619167 ], [ 121.182217, 52.59918 ], [ 121.225333, 52.577364 ], [ 121.280151, 52.586819 ], [ 121.323883, 52.573727 ], [ 121.353448, 52.534793 ], [ 121.411963, 52.52205 ], [ 121.416274, 52.499468 ], [ 121.474172, 52.482706 ], [ 121.495114, 52.484892 ], [ 121.519136, 52.456821 ], [ 121.565331, 52.460468 ], [ 121.590585, 52.443326 ], [ 121.63986, 52.44442 ], [ 121.678664, 52.419973 ], [ 121.658338, 52.3904 ], [ 121.715621, 52.342894 ], [ 121.714389, 52.318025 ], [ 121.769207, 52.308147 ], [ 121.841272, 52.282526 ], [ 121.901018, 52.280695 ], [ 121.94783, 52.298266 ], [ 121.976779, 52.343626 ], [ 122.035909, 52.377615 ], [ 122.040837, 52.413038 ], [ 122.091344, 52.427272 ], [ 122.080873, 52.440407 ], [ 122.107358, 52.452445 ], [ 122.142467, 52.495096 ], [ 122.140003, 52.510032 ], [ 122.168952, 52.513674 ], [ 122.178191, 52.48963 ], [ 122.207756, 52.469218 ], [ 122.310618, 52.475416 ], [ 122.326016, 52.459374 ], [ 122.342031, 52.414133 ], [ 122.367284, 52.413768 ], [ 122.378987, 52.395512 ], [ 122.419023, 52.375057 ], [ 122.447356, 52.394052 ], [ 122.484313, 52.341432 ], [ 122.478153, 52.29607 ], [ 122.560689, 52.282526 ], [ 122.585943, 52.266413 ], [ 122.67895, 52.276667 ], [ 122.710979, 52.256157 ], [ 122.76087, 52.26678 ], [ 122.787355, 52.252494 ], [ 122.766413, 52.232705 ], [ 122.769493, 52.179893 ], [ 122.73808, 52.153464 ], [ 122.690653, 52.140243 ], [ 122.629059, 52.13657 ], [ 122.643841, 52.111585 ], [ 122.625363, 52.067459 ], [ 122.650616, 52.058997 ], [ 122.664783, 51.99861 ], [ 122.683877, 51.974654 ], [ 122.726377, 51.978709 ], [ 122.729457, 51.919321 ], [ 122.706051, 51.890151 ], [ 122.725761, 51.87833 ], [ 122.732536, 51.832495 ], [ 122.771957, 51.779579 ], [ 122.749167, 51.746613 ], [ 122.778732, 51.698048 ], [ 122.816304, 51.655371 ], [ 122.820616, 51.633088 ], [ 122.85634, 51.606707 ], [ 122.832935, 51.581797 ], [ 122.874202, 51.561339 ], [ 122.880362, 51.537894 ], [ 122.858804, 51.524864 ], [ 122.880362, 51.511085 ], [ 122.854492, 51.477551 ], [ 122.871123, 51.455181 ], [ 122.900072, 51.445112 ], [ 122.903768, 51.415262 ], [ 122.946267, 51.405183 ], [ 122.965977, 51.386886 ], [ 122.965977, 51.345786 ], [ 123.002934, 51.31213 ], [ 123.069455, 51.321108 ], [ 123.127969, 51.297913 ], [ 123.231447, 51.279199 ], [ 123.231447, 51.268716 ], [ 123.294273, 51.254111 ], [ 123.339853, 51.27246 ], [ 123.376809, 51.266844 ], [ 123.414381, 51.278825 ], [ 123.440251, 51.270963 ], [ 123.46304, 51.286686 ], [ 123.582533, 51.294545 ], [ 123.582533, 51.306893 ], [ 123.661989, 51.319237 ], [ 123.660141, 51.342795 ], [ 123.711264, 51.398089 ], [ 123.794416, 51.361109 ], [ 123.842459, 51.367462 ], [ 123.887423, 51.320734 ], [ 123.926227, 51.300532 ], [ 123.939777, 51.313253 ], [ 123.994596, 51.322604 ], [ 124.071588, 51.320734 ], [ 124.090067, 51.3413 ], [ 124.128255, 51.347281 ], [ 124.192313, 51.33943 ], [ 124.239124, 51.344664 ], [ 124.271769, 51.308389 ], [ 124.297638, 51.298661 ], [ 124.339522, 51.293422 ], [ 124.406659, 51.272086 ], [ 124.430065, 51.301281 ], [ 124.426985, 51.331953 ], [ 124.443616, 51.35812 ], [ 124.478108, 51.36223 ], [ 124.490427, 51.380537 ], [ 124.555717, 51.375307 ], [ 124.58713, 51.363725 ], [ 124.62655, 51.327465 ], [ 124.693687, 51.3327 ], [ 124.752817, 51.35812 ], [ 124.76452, 51.38726 ], [ 124.783614, 51.392115 ], [ 124.864302, 51.37979 ], [ 124.885244, 51.40817 ], [ 124.942527, 51.447349 ], [ 124.917889, 51.474196 ], [ 124.928976, 51.498419 ], [ 124.983795, 51.508478 ], [ 125.004737, 51.529332 ], [ 125.047236, 51.529704 ], [ 125.073106, 51.553526 ], [ 125.060171, 51.59667 ], [ 125.098975, 51.658341 ], [ 125.12854, 51.659083 ], [ 125.130388, 51.635317 ], [ 125.175968, 51.639403 ], [ 125.214772, 51.627888 ], [ 125.228938, 51.640517 ], [ 125.289301, 51.633831 ], [ 125.316402, 51.610052 ], [ 125.35151, 51.623801 ], [ 125.38046, 51.585516 ], [ 125.424807, 51.562827 ], [ 125.528285, 51.488359 ], [ 125.559082, 51.461521 ], [ 125.595422, 51.416755 ], [ 125.60035, 51.413396 ], [ 125.600966, 51.410409 ], [ 125.62314, 51.398089 ], [ 125.623756, 51.387633 ], [ 125.626219, 51.380163 ], [ 125.700132, 51.327465 ], [ 125.740784, 51.27583 ], [ 125.76111, 51.261976 ], [ 125.761726, 51.226385 ], [ 125.819008, 51.227134 ], [ 125.850421, 51.21364 ], [ 125.864588, 51.146487 ], [ 125.909551, 51.138977 ], [ 125.946508, 51.108176 ], [ 125.970529, 51.123955 ], [ 125.993935, 51.119072 ], [ 125.976073, 51.084498 ], [ 126.059225, 51.043503 ], [ 126.033971, 51.011132 ], [ 126.041978, 50.981753 ], [ 126.068464, 50.967434 ], [ 126.042594, 50.92558 ], [ 126.02042, 50.927466 ], [ 125.996399, 50.906715 ], [ 125.997631, 50.872738 ], [ 125.961906, 50.901054 ], [ 125.939732, 50.85423 ], [ 125.913247, 50.825885 ], [ 125.878138, 50.816812 ], [ 125.890457, 50.805845 ], [ 125.836255, 50.793363 ], [ 125.846726, 50.769524 ], [ 125.828863, 50.756654 ], [ 125.804226, 50.773309 ], [ 125.758646, 50.746809 ], [ 125.795603, 50.738856 ], [ 125.78082, 50.725598 ], [ 125.825784, 50.70362 ], [ 125.789443, 50.679735 ], [ 125.804226, 50.658874 ], [ 125.793139, 50.643316 ], [ 125.814697, 50.62092 ], [ 125.807921, 50.60383 ], [ 125.829479, 50.56165 ], [ 125.794987, 50.532748 ], [ 125.770349, 50.531227 ], [ 125.754335, 50.506874 ], [ 125.740784, 50.523237 ], [ 125.699516, 50.487078 ], [ 125.654553, 50.471082 ], [ 125.627451, 50.443268 ], [ 125.580024, 50.449366 ], [ 125.562162, 50.438314 ], [ 125.583104, 50.409717 ], [ 125.567089, 50.402852 ], [ 125.536292, 50.420014 ], [ 125.522126, 50.404759 ], [ 125.546763, 50.358965 ], [ 125.520278, 50.3498 ], [ 125.530749, 50.331085 ], [ 125.463611, 50.295925 ], [ 125.466075, 50.266861 ], [ 125.442053, 50.260357 ], [ 125.448829, 50.216338 ], [ 125.417416, 50.195654 ], [ 125.39093, 50.199868 ], [ 125.382923, 50.172278 ], [ 125.335496, 50.161161 ], [ 125.376148, 50.137385 ], [ 125.311474, 50.140453 ], [ 125.27883, 50.127411 ], [ 125.258504, 50.103618 ], [ 125.287453, 50.093636 ], [ 125.283757, 50.070211 ], [ 125.328105, 50.065985 ], [ 125.315786, 50.04562 ], [ 125.289916, 50.057917 ], [ 125.25296, 50.041393 ], [ 125.283757, 50.036012 ], [ 125.297924, 50.014481 ], [ 125.278214, 49.996402 ], [ 125.241873, 49.987938 ], [ 125.231402, 49.957531 ], [ 125.190134, 49.959841 ], [ 125.199373, 49.935194 ], [ 125.225859, 49.922481 ], [ 125.212924, 49.907452 ], [ 125.245569, 49.87198 ], [ 125.225243, 49.867351 ], [ 125.239409, 49.844587 ], [ 125.177815, 49.829533 ], [ 125.222779, 49.799026 ], [ 125.221547, 49.754969 ], [ 125.204301, 49.734086 ], [ 125.225243, 49.726349 ], [ 125.219699, 49.669058 ], [ 125.185207, 49.634574 ], [ 125.189518, 49.652401 ], [ 125.164881, 49.669446 ], [ 125.132236, 49.672157 ], [ 125.127308, 49.655113 ], [ 125.15441, 49.616741 ], [ 125.16796, 49.629923 ], [ 125.205533, 49.593859 ], [ 125.23017, 49.595411 ], [ 125.233866, 49.536801 ], [ 125.211076, 49.539908 ], [ 125.228323, 49.487063 ], [ 125.270822, 49.454395 ], [ 125.256656, 49.437275 ], [ 125.25604, 49.395227 ], [ 125.277598, 49.379644 ], [ 125.256656, 49.359769 ], [ 125.261583, 49.322336 ], [ 125.214772, 49.277066 ], [ 125.233866, 49.255587 ], [ 125.219699, 49.189139 ], [ 125.187671, 49.186792 ], [ 125.158721, 49.144921 ], [ 125.117453, 49.126127 ], [ 125.034302, 49.157056 ], [ 125.039845, 49.17623 ], [ 124.983179, 49.162535 ], [ 124.906802, 49.184054 ], [ 124.860607, 49.166448 ], [ 124.847672, 49.129651 ], [ 124.809484, 49.115943 ], [ 124.828578, 49.077933 ], [ 124.808252, 49.020666 ], [ 124.756513, 48.967262 ], [ 124.744194, 48.920487 ], [ 124.709086, 48.920487 ], [ 124.715861, 48.885475 ], [ 124.697383, 48.841775 ], [ 124.654267, 48.83429 ], [ 124.644412, 48.80789 ], [ 124.656115, 48.783842 ], [ 124.612383, 48.747945 ], [ 124.624702, 48.701755 ], [ 124.601912, 48.632587 ], [ 124.579122, 48.596582 ], [ 124.520608, 48.556195 ], [ 124.548941, 48.535593 ], [ 124.533543, 48.515379 ], [ 124.555717, 48.467784 ], [ 124.507674, 48.445558 ], [ 124.52492, 48.426897 ], [ 124.51876, 48.378027 ], [ 124.547094, 48.35775 ], [ 124.540934, 48.335476 ], [ 124.579738, 48.297269 ], [ 124.558796, 48.268197 ], [ 124.579122, 48.262221 ], [ 124.547094, 48.200829 ], [ 124.512601, 48.164518 ], [ 124.529847, 48.146951 ], [ 124.505826, 48.124985 ], [ 124.478108, 48.123387 ], [ 124.46579, 48.098213 ], [ 124.415899, 48.08782 ], [ 124.430065, 48.12099 ], [ 124.471333, 48.133373 ], [ 124.467637, 48.178886 ], [ 124.418978, 48.181679 ], [ 124.412819, 48.219175 ], [ 124.422058, 48.245884 ], [ 124.365392, 48.283731 ], [ 124.353689, 48.315978 ], [ 124.317964, 48.35099 ], [ 124.331515, 48.380015 ], [ 124.309957, 48.413393 ], [ 124.330283, 48.435633 ], [ 124.302566, 48.456673 ], [ 124.314269, 48.503881 ], [ 124.25945, 48.536385 ], [ 124.136878, 48.463023 ], [ 124.07898, 48.43603 ], [ 124.019234, 48.39313 ], [ 123.862785, 48.271782 ], [ 123.746373, 48.197638 ], [ 123.705105, 48.152142 ], [ 123.579453, 48.045427 ], [ 123.537569, 48.021816 ], [ 123.300432, 47.953723 ], [ 123.256085, 47.876711 ], [ 123.214201, 47.824502 ], [ 123.161846, 47.781892 ], [ 123.041122, 47.746492 ], [ 122.926557, 47.697777 ], [ 122.848949, 47.67441 ], [ 122.765181, 47.614333 ], [ 122.59395, 47.54732 ], [ 122.543443, 47.495589 ], [ 122.507103, 47.401291 ], [ 122.418407, 47.350632 ], [ 122.441197, 47.310476 ], [ 122.462755, 47.27841 ], [ 122.498479, 47.255262 ], [ 122.531124, 47.198771 ], [ 122.582863, 47.158092 ], [ 122.615508, 47.124306 ], [ 122.679566, 47.094164 ], [ 122.710363, 47.093349 ], [ 122.821232, 47.065636 ], [ 122.852645, 47.072158 ], [ 122.845869, 47.046881 ], [ 122.778116, 47.002822 ], [ 122.77442, 46.973837 ], [ 122.798442, 46.9575 ], [ 122.791051, 46.941567 ], [ 122.83971, 46.937072 ], [ 122.895144, 46.960359 ], [ 122.893913, 46.895376 ], [ 122.906847, 46.80738 ], [ 122.996774, 46.761483 ], [ 123.00355, 46.730726 ], [ 123.026339, 46.718829 ], [ 123.076846, 46.745082 ], [ 123.103332, 46.734828 ], [ 123.163694, 46.74016 ], [ 123.198802, 46.803283 ], [ 123.22344, 46.821305 ], [ 123.221592, 46.850373 ], [ 123.295505, 46.865105 ], [ 123.341084, 46.826628 ], [ 123.374345, 46.837683 ], [ 123.40699, 46.906416 ], [ 123.404526, 46.935438 ], [ 123.360179, 46.970978 ], [ 123.304128, 46.964852 ], [ 123.301664, 46.999965 ], [ 123.337389, 46.988943 ], [ 123.42362, 46.934212 ], [ 123.487678, 46.959951 ], [ 123.52833, 46.944836 ], [ 123.483366, 46.84587 ], [ 123.506772, 46.827038 ], [ 123.562823, 46.82581 ], [ 123.575757, 46.845461 ], [ 123.576989, 46.891286 ], [ 123.605322, 46.891286 ], [ 123.599163, 46.868378 ], [ 123.625648, 46.847508 ], [ 123.580069, 46.827447 ], [ 123.629344, 46.813524 ], [ 123.631808, 46.728675 ], [ 123.603475, 46.68928 ], [ 123.474743, 46.686817 ], [ 123.366338, 46.677784 ], [ 123.318295, 46.662179 ], [ 123.276411, 46.660947 ], [ 123.279491, 46.616981 ], [ 123.228368, 46.588198 ], [ 123.18094, 46.614103 ], [ 123.098404, 46.603002 ], [ 123.077462, 46.622324 ], [ 123.04605, 46.617803 ], [ 123.052825, 46.579972 ], [ 123.002318, 46.574624 ], [ 123.010325, 46.524823 ], [ 123.011557, 46.434984 ], [ 123.089781, 46.347888 ], [ 123.142136, 46.298293 ], [ 123.178476, 46.248239 ], [ 123.128585, 46.210565 ], [ 123.127354, 46.174523 ], [ 123.102716, 46.172037 ], [ 123.112571, 46.130163 ], [ 123.070071, 46.123527 ], [ 123.04605, 46.099878 ], [ 122.792898, 46.073313 ], [ 122.828623, 45.912406 ], [ 122.80029, 45.856583 ], [ 122.772572, 45.856583 ], [ 122.752246, 45.834905 ], [ 122.792283, 45.766063 ], [ 122.751015, 45.735996 ], [ 122.741775, 45.705077 ], [ 122.671558, 45.70048 ], [ 122.650001, 45.731401 ], [ 122.640761, 45.771072 ], [ 122.603189, 45.778169 ], [ 122.556378, 45.82156 ], [ 122.522501, 45.786933 ], [ 122.504639, 45.786933 ], [ 122.496016, 45.85825 ], [ 122.446125, 45.916986 ], [ 122.362357, 45.917403 ], [ 122.372828, 45.856166 ], [ 122.337719, 45.859917 ], [ 122.301379, 45.813218 ], [ 122.253952, 45.7982 ], [ 122.236705, 45.831569 ], [ 122.200981, 45.857 ], [ 122.091344, 45.882002 ], [ 122.085184, 45.912406 ], [ 122.040221, 45.959022 ], [ 121.92812, 45.988552 ], [ 121.923808, 46.004767 ], [ 121.864062, 46.002272 ], [ 121.843736, 46.024301 ], [ 121.819098, 46.023054 ], [ 121.761816, 45.998947 ], [ 121.809243, 45.961102 ], [ 121.821562, 45.918235 ], [ 121.805548, 45.900746 ], [ 121.817251, 45.875336 ], [ 121.769823, 45.84366 ], [ 121.766744, 45.830318 ], [ 121.754425, 45.794862 ], [ 121.697142, 45.76314 ], [ 121.657106, 45.770238 ], [ 121.644172, 45.752284 ], [ 121.666345, 45.727641 ], [ 121.713773, 45.701734 ], [ 121.811091, 45.687103 ], [ 121.812323, 45.704659 ], [ 121.867142, 45.719703 ], [ 121.934279, 45.71051 ], [ 121.970004, 45.692956 ], [ 122.003264, 45.623102 ], [ 121.995873, 45.59882 ], [ 121.966308, 45.596308 ], [ 121.993409, 45.552741 ], [ 122.002648, 45.507882 ], [ 122.064242, 45.472641 ], [ 122.168336, 45.439897 ], [ 122.180039, 45.409655 ], [ 122.146778, 45.374352 ], [ 122.147394, 45.295682 ], [ 122.239169, 45.276313 ], [ 122.22993, 45.206784 ], [ 122.192358, 45.180636 ], [ 122.143082, 45.183167 ], [ 122.109822, 45.142236 ], [ 122.119677, 45.068739 ], [ 122.098735, 45.02138 ], [ 122.074713, 45.006573 ], [ 122.087032, 44.95281 ], [ 122.079025, 44.914256 ], [ 122.04946, 44.912985 ], [ 122.098119, 44.81882 ], [ 122.099967, 44.7823 ], [ 122.168952, 44.770405 ], [ 122.142467, 44.753833 ], [ 122.110438, 44.767856 ], [ 122.10243, 44.736406 ], [ 122.152322, 44.744057 ], [ 122.161561, 44.728328 ], [ 122.117213, 44.701961 ], [ 122.103046, 44.67388 ], [ 122.113517, 44.615546 ], [ 122.13138, 44.577619 ], [ 122.196053, 44.559712 ], [ 122.224386, 44.526016 ], [ 122.228082, 44.480345 ], [ 122.28598, 44.477783 ], [ 122.294604, 44.41113 ], [ 122.291524, 44.310152 ], [ 122.271198, 44.255741 ], [ 122.319241, 44.233018 ], [ 122.483081, 44.236877 ], [ 122.515726, 44.251025 ], [ 122.641993, 44.283595 ], [ 122.675254, 44.285738 ], [ 122.702971, 44.319145 ], [ 122.76087, 44.369648 ], [ 122.85634, 44.398304 ], [ 123.025108, 44.493153 ], [ 123.06576, 44.505959 ], [ 123.12489, 44.5098 ], [ 123.137209, 44.486322 ], [ 123.125506, 44.455147 ], [ 123.142136, 44.428228 ], [ 123.114419, 44.40258 ], [ 123.128585, 44.367081 ], [ 123.196955, 44.34483 ], [ 123.277027, 44.25274 ], [ 123.286882, 44.211574 ], [ 123.323838, 44.179823 ], [ 123.386664, 44.161794 ], [ 123.362642, 44.133452 ], [ 123.350939, 44.092633 ], [ 123.32815, 44.084035 ], [ 123.331229, 44.028984 ], [ 123.365722, 44.013922 ], [ 123.400831, 43.979481 ], [ 123.37065, 43.970006 ], [ 123.397135, 43.954929 ], [ 123.467968, 43.853599 ], [ 123.461809, 43.822518 ], [ 123.498149, 43.771114 ], [ 123.48275, 43.737396 ], [ 123.520323, 43.708419 ], [ 123.518475, 43.682024 ], [ 123.536953, 43.633964 ], [ 123.510468, 43.624867 ], [ 123.5117, 43.592801 ], [ 123.421157, 43.598435 ], [ 123.434091, 43.575461 ], [ 123.461193, 43.568523 ], [ 123.452569, 43.545971 ], [ 123.360179, 43.567223 ], [ 123.304744, 43.550742 ], [ 123.329998, 43.519071 ], [ 123.315831, 43.492159 ], [ 123.36449, 43.483475 ], [ 123.382968, 43.469143 ], [ 123.419925, 43.410046 ], [ 123.442098, 43.437863 ], [ 123.486446, 43.44525 ], [ 123.519707, 43.402219 ], [ 123.54496, 43.415262 ], [ 123.608402, 43.366119 ], [ 123.703873, 43.37047 ], [ 123.698329, 43.272071 ], [ 123.664453, 43.264663 ], [ 123.676771, 43.223684 ], [ 123.645974, 43.208855 ], [ 123.666916, 43.179623 ], [ 123.636119, 43.141644 ], [ 123.631192, 43.088346 ], [ 123.580685, 43.036314 ], [ 123.572678, 43.003498 ], [ 123.536337, 43.007 ], [ 123.474743, 43.042438 ], [ 123.434707, 43.027565 ], [ 123.323222, 43.000872 ], [ 123.259165, 42.993431 ], [ 123.18402, 42.925983 ], [ 123.188947, 42.895739 ], [ 123.169853, 42.859777 ], [ 123.227752, 42.831695 ], [ 123.118114, 42.801405 ], [ 123.058368, 42.768903 ], [ 122.980144, 42.777689 ], [ 122.945651, 42.753524 ], [ 122.925941, 42.772417 ], [ 122.887137, 42.770221 ], [ 122.883442, 42.751766 ], [ 122.848949, 42.712203 ], [ 122.786123, 42.757479 ], [ 122.73808, 42.77066 ], [ 122.733152, 42.786034 ], [ 122.653696, 42.78252 ], [ 122.624747, 42.773296 ], [ 122.580399, 42.789987 ], [ 122.576088, 42.819405 ], [ 122.556378, 42.827745 ], [ 122.436886, 42.843105 ], [ 122.35127, 42.830378 ], [ 122.371596, 42.776371 ], [ 122.439349, 42.770221 ], [ 122.460907, 42.755282 ], [ 122.396234, 42.707366 ], [ 122.396234, 42.684054 ], [ 122.338951, 42.669975 ], [ 122.324785, 42.684934 ], [ 122.261343, 42.695931 ], [ 122.204676, 42.732867 ], [ 122.204676, 42.685374 ], [ 122.160945, 42.684934 ], [ 122.072865, 42.710444 ], [ 122.062394, 42.723635 ], [ 122.018663, 42.69901 ], [ 121.939207, 42.688453 ], [ 121.94167, 42.666014 ], [ 121.915801, 42.656332 ], [ 121.921344, 42.605697 ], [ 121.889931, 42.556784 ], [ 121.844352, 42.522389 ], [ 121.831417, 42.533856 ], [ 121.817867, 42.504303 ], [ 121.803084, 42.514891 ], [ 121.747649, 42.484887 ], [ 121.69899, 42.438529 ], [ 121.66573, 42.437204 ], [ 121.604136, 42.495037 ], [ 121.607831, 42.516214 ], [ 121.570875, 42.487093 ], [ 121.506201, 42.482239 ], [ 121.4791, 42.49636 ], [ 121.434752, 42.475176 ], [ 121.386093, 42.474294 ], [ 121.304789, 42.435879 ], [ 121.314644, 42.42837 ], [ 121.285079, 42.387717 ], [ 121.218558, 42.371802 ], [ 121.184681, 42.333324 ], [ 121.133558, 42.300135 ], [ 121.120623, 42.280656 ], [ 121.087978, 42.278885 ], [ 121.070732, 42.254083 ], [ 121.028848, 42.242565 ], [ 120.992508, 42.264714 ], [ 120.933994, 42.27977 ], [ 120.883487, 42.269585 ], [ 120.883487, 42.242565 ], [ 120.8299, 42.252755 ], [ 120.820661, 42.227943 ], [ 120.79048, 42.218636 ], [ 120.745516, 42.223512 ], [ 120.72211, 42.203565 ], [ 120.624792, 42.154338 ], [ 120.58414, 42.167203 ], [ 120.56751, 42.152119 ], [ 120.466496, 42.105516 ], [ 120.493597, 42.073539 ], [ 120.450481, 42.057101 ], [ 120.456641, 42.016208 ], [ 120.399358, 41.984631 ], [ 120.373489, 41.994862 ], [ 120.309431, 41.951704 ], [ 120.318054, 41.93746 ], [ 120.271859, 41.925439 ], [ 120.260156, 41.904062 ], [ 120.290337, 41.897381 ], [ 120.286641, 41.880005 ], [ 120.251533, 41.884016 ], [ 120.215808, 41.853265 ], [ 120.188707, 41.848361 ], [ 120.183164, 41.826513 ], [ 120.127113, 41.77253 ], [ 120.1382, 41.729221 ], [ 120.096316, 41.697056 ], [ 120.035954, 41.708226 ], [ 120.024867, 41.737707 ], [ 120.050737, 41.776101 ], [ 120.041498, 41.818932 ], [ 120.023019, 41.816701 ], [ 119.989759, 41.899163 ], [ 119.954034, 41.923212 ], [ 119.950954, 41.974399 ], [ 119.924469, 41.98908 ], [ 119.921389, 42.014429 ], [ 119.897368, 42.030879 ], [ 119.87581, 42.077982 ], [ 119.845629, 42.097079 ], [ 119.837622, 42.135257 ], [ 119.854868, 42.170308 ], [ 119.841933, 42.215534 ], [ 119.744615, 42.211545 ], [ 119.679941, 42.240793 ], [ 119.617115, 42.252755 ], [ 119.609108, 42.276671 ], [ 119.557985, 42.289068 ], [ 119.539507, 42.297922 ], [ 119.571536, 42.335536 ], [ 119.572152, 42.359421 ], [ 119.540123, 42.363401 ], [ 119.502551, 42.388159 ], [ 119.482841, 42.347037 ], [ 119.432949, 42.317396 ], [ 119.34795, 42.300578 ], [ 119.280197, 42.260728 ], [ 119.274037, 42.239021 ], [ 119.237697, 42.200905 ], [ 119.277733, 42.185387 ], [ 119.286972, 42.154781 ], [ 119.30853, 42.147239 ], [ 119.314689, 42.119723 ], [ 119.352261, 42.118391 ], [ 119.384906, 42.08953 ], [ 119.375667, 42.023322 ], [ 119.324544, 41.969505 ], [ 119.323928, 41.937014 ], [ 119.340559, 41.926774 ], [ 119.323312, 41.889807 ], [ 119.334399, 41.871539 ], [ 119.312841, 41.80555 ], [ 119.292515, 41.790827 ], [ 119.317769, 41.764049 ], [ 119.319001, 41.727435 ], [ 119.299907, 41.705545 ], [ 119.307914, 41.657273 ], [ 119.342406, 41.617914 ], [ 119.415703, 41.590169 ], [ 119.420015, 41.567785 ], [ 119.362116, 41.566442 ], [ 119.361501, 41.545841 ], [ 119.406464, 41.503276 ], [ 119.401537, 41.472343 ], [ 119.378131, 41.459787 ], [ 119.376283, 41.422102 ], [ 119.309762, 41.405944 ], [ 119.330704, 41.385293 ], [ 119.296211, 41.325097 ], [ 119.239545, 41.31431 ], [ 119.211827, 41.308016 ], [ 119.197661, 41.282837 ], [ 119.168712, 41.294978 ], [ 119.092951, 41.293629 ], [ 118.980234, 41.305769 ], [ 118.949437, 41.317906 ], [ 118.890923, 41.300823 ], [ 118.844727, 41.342622 ], [ 118.843496, 41.374516 ], [ 118.770199, 41.352956 ], [ 118.741866, 41.324198 ], [ 118.677192, 41.35026 ], [ 118.629765, 41.346666 ], [ 118.528135, 41.355202 ], [ 118.412338, 41.331838 ], [ 118.380309, 41.312062 ], [ 118.348896, 41.342622 ], [ 118.361215, 41.384844 ], [ 118.348896, 41.428384 ], [ 118.327338, 41.450816 ], [ 118.271904, 41.471446 ], [ 118.315636, 41.512688 ], [ 118.302701, 41.55256 ], [ 118.215237, 41.59554 ], [ 118.206614, 41.650566 ], [ 118.159187, 41.67605 ], [ 118.155491, 41.712694 ], [ 118.132702, 41.733241 ], [ 118.140093, 41.784134 ], [ 118.178281, 41.814917 ], [ 118.236179, 41.80778 ], [ 118.247266, 41.773869 ], [ 118.29223, 41.772976 ], [ 118.335346, 41.845241 ], [ 118.340273, 41.87243 ], [ 118.268824, 41.930336 ], [ 118.306396, 41.940131 ], [ 118.313788, 41.98819 ], [ 118.291614, 42.007759 ], [ 118.239875, 42.024655 ], [ 118.286686, 42.033991 ], [ 118.296541, 42.057545 ], [ 118.27252, 42.083312 ], [ 118.239259, 42.092639 ], [ 118.212774, 42.081091 ], [ 118.220165, 42.058434 ], [ 118.194296, 42.031324 ], [ 118.116687, 42.037102 ], [ 118.155491, 42.081091 ], [ 118.097593, 42.105072 ], [ 118.089586, 42.12283 ], [ 118.106216, 42.172082 ], [ 118.033535, 42.199132 ], [ 117.977485, 42.229716 ], [ 117.974405, 42.25054 ], [ 118.047702, 42.280656 ], [ 118.060021, 42.298364 ], [ 118.008898, 42.346595 ], [ 118.024296, 42.385064 ], [ 117.997811, 42.416884 ], [ 117.874007, 42.510038 ], [ 117.856761, 42.539148 ], [ 117.797631, 42.585431 ], [ 117.801326, 42.612744 ], [ 117.779768, 42.61847 ], [ 117.708935, 42.588515 ], [ 117.667051, 42.582347 ], [ 117.60053, 42.603054 ], [ 117.537088, 42.603054 ], [ 117.530313, 42.590278 ], [ 117.475494, 42.602613 ], [ 117.435458, 42.585431 ], [ 117.434226, 42.557224 ], [ 117.387415, 42.517537 ], [ 117.410205, 42.519743 ], [ 117.413284, 42.471645 ], [ 117.390495, 42.461933 ], [ 117.332596, 42.46105 ], [ 117.275314, 42.481797 ], [ 117.188467, 42.468114 ], [ 117.135496, 42.468996 ], [ 117.09546, 42.484004 ], [ 117.080061, 42.463699 ], [ 117.01662, 42.456193 ], [ 117.009228, 42.44957 ], [ 117.005533, 42.43367 ], [ 116.99075, 42.425719 ], [ 116.974736, 42.426603 ], [ 116.97104, 42.427486 ], [ 116.944555, 42.415116 ], [ 116.936547, 42.410256 ], [ 116.921765, 42.403628 ], [ 116.910062, 42.395231 ], [ 116.910678, 42.394789 ], [ 116.886656, 42.366496 ], [ 116.897743, 42.297479 ], [ 116.918685, 42.229716 ], [ 116.903287, 42.190708 ], [ 116.789338, 42.200462 ], [ 116.825062, 42.155669 ], [ 116.850316, 42.156556 ], [ 116.890352, 42.092639 ], [ 116.879881, 42.018431 ], [ 116.796113, 41.977958 ], [ 116.748686, 41.984186 ], [ 116.727744, 41.951259 ], [ 116.66923, 41.947698 ], [ 116.639049, 41.929891 ], [ 116.597165, 41.935679 ], [ 116.553433, 41.928555 ], [ 116.510933, 41.974399 ], [ 116.4826, 41.975734 ], [ 116.453651, 41.945917 ], [ 116.393289, 41.942802 ], [ 116.414231, 41.982407 ], [ 116.373579, 42.009983 ], [ 116.310137, 41.997086 ], [ 116.298434, 41.96817 ], [ 116.223906, 41.932562 ], [ 116.212819, 41.885352 ], [ 116.194341, 41.861734 ], [ 116.122892, 41.861734 ], [ 116.106877, 41.831419 ], [ 116.129051, 41.805996 ], [ 116.09887, 41.776547 ], [ 116.034196, 41.782795 ], [ 116.007095, 41.79752 ], [ 116.007095, 41.797966 ], [ 116.007095, 41.79752 ], [ 116.007095, 41.797966 ], [ 115.994776, 41.828743 ], [ 115.954124, 41.874213 ], [ 115.916552, 41.945027 ], [ 115.85311, 41.927665 ], [ 115.834632, 41.93835 ], [ 115.811226, 41.912525 ], [ 115.726227, 41.870202 ], [ 115.688038, 41.867528 ], [ 115.654162, 41.829189 ], [ 115.57409, 41.80555 ], [ 115.519887, 41.76762 ], [ 115.488474, 41.760924 ], [ 115.42996, 41.728775 ], [ 115.346808, 41.712247 ], [ 115.319091, 41.691693 ], [ 115.360975, 41.661297 ], [ 115.345576, 41.635807 ], [ 115.377605, 41.603148 ], [ 115.310468, 41.592854 ], [ 115.290142, 41.622835 ], [ 115.26612, 41.616124 ], [ 115.256881, 41.580768 ], [ 115.20391, 41.571367 ], [ 115.195287, 41.602253 ], [ 115.0992, 41.62373 ], [ 115.056085, 41.602253 ], [ 115.016049, 41.615229 ], [ 114.860832, 41.60091 ], [ 114.895325, 41.636255 ], [ 114.902716, 41.695715 ], [ 114.89594, 41.76762 ], [ 114.868839, 41.813579 ], [ 114.922426, 41.825175 ], [ 114.939056, 41.846132 ], [ 114.923658, 41.871093 ], [ 114.915035, 41.960605 ], [ 114.9021, 42.015763 ], [ 114.860832, 42.054879 ], [ 114.86268, 42.097967 ], [ 114.825723, 42.139695 ], [ 114.79431, 42.149457 ], [ 114.789383, 42.130819 ], [ 114.75489, 42.115727 ], [ 114.675434, 42.12061 ], [ 114.647717, 42.109512 ], [ 114.560254, 42.132595 ], [ 114.510978, 42.110844 ], [ 114.502355, 42.06732 ], [ 114.480181, 42.064654 ], [ 114.467863, 42.025989 ], [ 114.511594, 41.981962 ], [ 114.478334, 41.951704 ], [ 114.419203, 41.942356 ], [ 114.352066, 41.953484 ], [ 114.343443, 41.926774 ], [ 114.282465, 41.863517 ], [ 114.200545, 41.789934 ], [ 114.215328, 41.75646 ], [ 114.206704, 41.7386 ], [ 114.237501, 41.698843 ], [ 114.215328, 41.68499 ], [ 114.259059, 41.623282 ], [ 114.226414, 41.616572 ], [ 114.221487, 41.582111 ], [ 114.230726, 41.513584 ], [ 114.101379, 41.537779 ], [ 114.032394, 41.529715 ], [ 113.976959, 41.505966 ], [ 113.953553, 41.483553 ], [ 113.933227, 41.487139 ], [ 113.919677, 41.454404 ], [ 113.877793, 41.431076 ], [ 113.871017, 41.413126 ], [ 113.94493, 41.392477 ], [ 113.92522, 41.325546 ], [ 113.899351, 41.316108 ], [ 113.914749, 41.294529 ], [ 113.95109, 41.282837 ], [ 113.971416, 41.239649 ], [ 113.992357, 41.269794 ], [ 114.016379, 41.231999 ], [ 113.996669, 41.19238 ], [ 113.960945, 41.171211 ], [ 113.920293, 41.172112 ], [ 113.877793, 41.115777 ], [ 113.819279, 41.09774 ], [ 113.868554, 41.06887 ], [ 113.973263, 40.983087 ], [ 113.994821, 40.938798 ], [ 114.057647, 40.925234 ], [ 114.041633, 40.917546 ], [ 114.055183, 40.867782 ], [ 114.073661, 40.857372 ], [ 114.044712, 40.830661 ], [ 114.080437, 40.790348 ], [ 114.104458, 40.797597 ], [ 114.103227, 40.770861 ], [ 114.134639, 40.737314 ], [ 114.084748, 40.729605 ], [ 114.063806, 40.706925 ], [ 114.07243, 40.679246 ], [ 114.041633, 40.608861 ], [ 114.076741, 40.575686 ], [ 114.080437, 40.547952 ], [ 114.061959, 40.52885 ], [ 114.011452, 40.515657 ], [ 113.948626, 40.514747 ], [ 113.890112, 40.466503 ], [ 113.850691, 40.460583 ], [ 113.794641, 40.517932 ], [ 113.763228, 40.473787 ], [ 113.688699, 40.448288 ], [ 113.559968, 40.348476 ], [ 113.500222, 40.334335 ], [ 113.387505, 40.319279 ], [ 113.316672, 40.319736 ], [ 113.27602, 40.388601 ], [ 113.251382, 40.413211 ], [ 113.083231, 40.374925 ], [ 113.03334, 40.368997 ], [ 112.898449, 40.329317 ], [ 112.848558, 40.206937 ], [ 112.744464, 40.167161 ], [ 112.712436, 40.178593 ], [ 112.6299, 40.235725 ], [ 112.511639, 40.269068 ], [ 112.456205, 40.300112 ], [ 112.418017, 40.295091 ], [ 112.349031, 40.257194 ], [ 112.310227, 40.256281 ], [ 112.299756, 40.21105 ], [ 112.232619, 40.169905 ], [ 112.232003, 40.133311 ], [ 112.183344, 40.083877 ], [ 112.182112, 40.061437 ], [ 112.142076, 40.027076 ], [ 112.133453, 40.001866 ], [ 112.07617, 39.919298 ], [ 112.042294, 39.886243 ], [ 112.012729, 39.827438 ], [ 111.970229, 39.796638 ], [ 111.959758, 39.692642 ], [ 111.925265, 39.66731 ], [ 111.9382, 39.623071 ], [ 111.87907, 39.606013 ], [ 111.842729, 39.620305 ], [ 111.783599, 39.58895 ], [ 111.722621, 39.606013 ], [ 111.707839, 39.621227 ], [ 111.646245, 39.644272 ], [ 111.61668, 39.633211 ], [ 111.525521, 39.662242 ], [ 111.497187, 39.661781 ], [ 111.445448, 39.640124 ], [ 111.460847, 39.606935 ], [ 111.441137, 39.59679 ], [ 111.422043, 39.539123 ], [ 111.431282, 39.508656 ], [ 111.385086, 39.489722 ], [ 111.358601, 39.432428 ], [ 111.287152, 39.417173 ], [ 111.171971, 39.423183 ], [ 111.143022, 39.407926 ], [ 111.125776, 39.366297 ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"210000\", \"name\": \"辽宁省\", \"center\": [ 123.429096, 41.796767 ], \"centroid\": [ 122.605251, 41.299975 ], \"childrenNum\": 14, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 5, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 119.557985, 42.289068 ], [ 119.557985, 42.289068 ], [ 119.609108, 42.276671 ], [ 119.617115, 42.252755 ], [ 119.679941, 42.240793 ], [ 119.744615, 42.211545 ], [ 119.841933, 42.215534 ], [ 119.854868, 42.170308 ], [ 119.837622, 42.135257 ], [ 119.845629, 42.097079 ], [ 119.87581, 42.077982 ], [ 119.897368, 42.030879 ], [ 119.921389, 42.014429 ], [ 119.924469, 41.98908 ], [ 119.950954, 41.974399 ], [ 119.954034, 41.923212 ], [ 119.989759, 41.899163 ], [ 120.023019, 41.816701 ], [ 120.041498, 41.818932 ], [ 120.050737, 41.776101 ], [ 120.024867, 41.737707 ], [ 120.035954, 41.708226 ], [ 120.096316, 41.697056 ], [ 120.1382, 41.729221 ], [ 120.127113, 41.77253 ], [ 120.183164, 41.826513 ], [ 120.188707, 41.848361 ], [ 120.215808, 41.853265 ], [ 120.251533, 41.884016 ], [ 120.286641, 41.880005 ], [ 120.290337, 41.897381 ], [ 120.260156, 41.904062 ], [ 120.271859, 41.925439 ], [ 120.318054, 41.93746 ], [ 120.309431, 41.951704 ], [ 120.373489, 41.994862 ], [ 120.399358, 41.984631 ], [ 120.456641, 42.016208 ], [ 120.450481, 42.057101 ], [ 120.493597, 42.073539 ], [ 120.466496, 42.105516 ], [ 120.56751, 42.152119 ], [ 120.58414, 42.167203 ], [ 120.624792, 42.154338 ], [ 120.72211, 42.203565 ], [ 120.745516, 42.223512 ], [ 120.79048, 42.218636 ], [ 120.820661, 42.227943 ], [ 120.8299, 42.252755 ], [ 120.883487, 42.242565 ], [ 120.883487, 42.269585 ], [ 120.883487, 42.269585 ], [ 120.933994, 42.27977 ], [ 120.992508, 42.264714 ], [ 121.028848, 42.242565 ], [ 121.070732, 42.254083 ], [ 121.087978, 42.278885 ], [ 121.120623, 42.280656 ], [ 121.133558, 42.300135 ], [ 121.184681, 42.333324 ], [ 121.218558, 42.371802 ], [ 121.285079, 42.387717 ], [ 121.314644, 42.42837 ], [ 121.304789, 42.435879 ], [ 121.386093, 42.474294 ], [ 121.434752, 42.475176 ], [ 121.4791, 42.49636 ], [ 121.506201, 42.482239 ], [ 121.570875, 42.487093 ], [ 121.607831, 42.516214 ], [ 121.604136, 42.495037 ], [ 121.66573, 42.437204 ], [ 121.69899, 42.438529 ], [ 121.747649, 42.484887 ], [ 121.803084, 42.514891 ], [ 121.817867, 42.504303 ], [ 121.831417, 42.533856 ], [ 121.844352, 42.522389 ], [ 121.889931, 42.556784 ], [ 121.921344, 42.605697 ], [ 121.915801, 42.656332 ], [ 121.94167, 42.666014 ], [ 121.939207, 42.688453 ], [ 122.018663, 42.69901 ], [ 122.062394, 42.723635 ], [ 122.072865, 42.710444 ], [ 122.160945, 42.684934 ], [ 122.204676, 42.685374 ], [ 122.204676, 42.732867 ], [ 122.261343, 42.695931 ], [ 122.324785, 42.684934 ], [ 122.338951, 42.669975 ], [ 122.396234, 42.684054 ], [ 122.396234, 42.707366 ], [ 122.460907, 42.755282 ], [ 122.439349, 42.770221 ], [ 122.371596, 42.776371 ], [ 122.35127, 42.830378 ], [ 122.436886, 42.843105 ], [ 122.556378, 42.827745 ], [ 122.576088, 42.819405 ], [ 122.580399, 42.789987 ], [ 122.624747, 42.773296 ], [ 122.653696, 42.78252 ], [ 122.733152, 42.786034 ], [ 122.73808, 42.77066 ], [ 122.786123, 42.757479 ], [ 122.848949, 42.712203 ], [ 122.848949, 42.712203 ], [ 122.883442, 42.751766 ], [ 122.883442, 42.751766 ], [ 122.887137, 42.770221 ], [ 122.925941, 42.772417 ], [ 122.945651, 42.753524 ], [ 122.980144, 42.777689 ], [ 123.058368, 42.768903 ], [ 123.118114, 42.801405 ], [ 123.227752, 42.831695 ], [ 123.169853, 42.859777 ], [ 123.188947, 42.895739 ], [ 123.18402, 42.925983 ], [ 123.259165, 42.993431 ], [ 123.323222, 43.000872 ], [ 123.434707, 43.027565 ], [ 123.474743, 43.042438 ], [ 123.536337, 43.007 ], [ 123.572678, 43.003498 ], [ 123.580685, 43.036314 ], [ 123.631192, 43.088346 ], [ 123.636119, 43.141644 ], [ 123.666916, 43.179623 ], [ 123.645974, 43.208855 ], [ 123.676771, 43.223684 ], [ 123.664453, 43.264663 ], [ 123.698329, 43.272071 ], [ 123.703873, 43.37047 ], [ 123.710032, 43.417001 ], [ 123.749452, 43.439167 ], [ 123.747604, 43.472184 ], [ 123.79688, 43.489988 ], [ 123.857858, 43.459153 ], [ 123.857858, 43.459153 ], [ 123.852314, 43.406133 ], [ 123.881263, 43.392218 ], [ 123.881263, 43.392218 ], [ 123.896046, 43.361333 ], [ 123.964415, 43.34088 ], [ 124.032784, 43.280786 ], [ 124.099306, 43.292983 ], [ 124.117168, 43.2773 ], [ 124.114088, 43.247229 ], [ 124.168291, 43.244177 ], [ 124.215102, 43.255947 ], [ 124.228653, 43.235022 ], [ 124.27608, 43.233278 ], [ 124.287167, 43.207983 ], [ 124.273617, 43.17875 ], [ 124.366007, 43.121554 ], [ 124.425754, 43.076107 ], [ 124.333363, 42.997371 ], [ 124.369703, 42.972854 ], [ 124.42329, 42.975482 ], [ 124.442384, 42.958841 ], [ 124.431913, 42.930803 ], [ 124.38079, 42.912835 ], [ 124.371551, 42.880831 ], [ 124.435609, 42.880831 ], [ 124.466406, 42.847054 ], [ 124.586514, 42.905384 ], [ 124.607456, 42.937376 ], [ 124.632093, 42.949642 ], [ 124.635173, 42.972854 ], [ 124.658579, 42.972854 ], [ 124.677673, 43.002185 ], [ 124.686912, 43.051185 ], [ 124.719557, 43.069987 ], [ 124.755281, 43.074359 ], [ 124.785462, 43.117185 ], [ 124.882781, 43.13422 ], [ 124.88894, 43.074796 ], [ 124.840897, 43.032377 ], [ 124.869846, 42.988178 ], [ 124.87231, 42.962344 ], [ 124.84952, 42.882585 ], [ 124.856911, 42.824234 ], [ 124.874157, 42.789987 ], [ 124.897563, 42.787791 ], [ 124.92836, 42.819844 ], [ 124.975171, 42.802722 ], [ 124.996729, 42.745174 ], [ 124.968396, 42.722756 ], [ 124.99057, 42.677455 ], [ 125.014592, 42.666014 ], [ 125.010896, 42.63212 ], [ 125.038613, 42.615387 ], [ 125.097127, 42.622433 ], [ 125.082961, 42.591159 ], [ 125.089736, 42.567803 ], [ 125.066946, 42.534738 ], [ 125.090968, 42.515773 ], [ 125.068794, 42.499449 ], [ 125.105135, 42.490624 ], [ 125.150098, 42.458842 ], [ 125.140243, 42.44692 ], [ 125.186439, 42.427928 ], [ 125.185823, 42.38197 ], [ 125.203685, 42.366938 ], [ 125.167345, 42.351903 ], [ 125.175352, 42.308102 ], [ 125.224011, 42.30102 ], [ 125.264047, 42.312528 ], [ 125.299156, 42.289953 ], [ 125.27575, 42.266928 ], [ 125.27575, 42.231045 ], [ 125.312706, 42.219966 ], [ 125.280677, 42.175187 ], [ 125.312706, 42.197359 ], [ 125.305931, 42.146351 ], [ 125.357054, 42.145464 ], [ 125.368141, 42.182726 ], [ 125.41372, 42.156112 ], [ 125.458068, 42.160105 ], [ 125.458068, 42.160105 ], [ 125.490097, 42.136145 ], [ 125.446365, 42.098411 ], [ 125.414336, 42.101964 ], [ 125.416184, 42.063766 ], [ 125.363213, 42.017097 ], [ 125.369989, 42.002868 ], [ 125.29854, 41.974399 ], [ 125.291764, 41.958825 ], [ 125.35151, 41.92811 ], [ 125.307779, 41.924548 ], [ 125.294844, 41.822945 ], [ 125.319482, 41.776993 ], [ 125.319482, 41.776993 ], [ 125.323177, 41.771191 ], [ 125.323177, 41.771191 ], [ 125.336112, 41.768067 ], [ 125.336112, 41.768067 ], [ 125.332416, 41.711354 ], [ 125.317018, 41.676944 ], [ 125.344119, 41.672474 ], [ 125.412488, 41.691246 ], [ 125.446981, 41.67605 ], [ 125.461148, 41.642516 ], [ 125.450061, 41.597777 ], [ 125.479626, 41.544946 ], [ 125.507343, 41.534195 ], [ 125.493176, 41.509103 ], [ 125.533212, 41.479069 ], [ 125.534444, 41.428833 ], [ 125.547995, 41.401006 ], [ 125.581256, 41.396517 ], [ 125.589879, 41.359245 ], [ 125.610205, 41.365084 ], [ 125.637306, 41.34442 ], [ 125.62006, 41.318355 ], [ 125.642234, 41.296327 ], [ 125.646545, 41.264396 ], [ 125.685349, 41.273842 ], [ 125.695205, 41.244599 ], [ 125.749407, 41.245499 ], [ 125.758646, 41.232449 ], [ 125.73832, 41.178418 ], [ 125.791291, 41.167607 ], [ 125.759878, 41.132908 ], [ 125.734009, 41.125695 ], [ 125.712451, 41.095485 ], [ 125.739552, 41.08917 ], [ 125.726617, 41.055332 ], [ 125.684118, 41.021929 ], [ 125.674879, 40.974503 ], [ 125.650241, 40.970888 ], [ 125.635458, 40.94151 ], [ 125.589263, 40.931112 ], [ 125.584335, 40.891764 ], [ 125.652089, 40.91619 ], [ 125.687813, 40.897645 ], [ 125.707523, 40.866877 ], [ 125.648393, 40.826133 ], [ 125.641002, 40.798503 ], [ 125.67611, 40.788082 ], [ 125.685349, 40.769048 ], [ 125.61698, 40.763609 ], [ 125.585567, 40.788535 ], [ 125.551075, 40.761796 ], [ 125.544915, 40.729605 ], [ 125.49564, 40.728697 ], [ 125.459916, 40.707379 ], [ 125.453756, 40.676522 ], [ 125.418648, 40.673345 ], [ 125.422343, 40.635661 ], [ 125.375532, 40.658365 ], [ 125.329337, 40.643835 ], [ 125.305315, 40.661089 ], [ 125.279445, 40.655187 ], [ 125.262815, 40.620218 ], [ 125.181511, 40.611132 ], [ 125.113758, 40.569322 ], [ 125.076801, 40.562048 ], [ 125.015823, 40.533853 ], [ 125.004737, 40.496091 ], [ 125.042925, 40.483802 ], [ 125.044157, 40.466503 ], [ 124.985642, 40.475153 ], [ 124.945606, 40.45603 ], [ 124.913578, 40.481981 ], [ 124.834121, 40.423235 ], [ 124.739267, 40.371733 ], [ 124.722636, 40.321561 ], [ 124.62655, 40.291896 ], [ 124.513833, 40.22019 ], [ 124.490427, 40.18408 ], [ 124.457782, 40.177679 ], [ 124.428217, 40.144291 ], [ 124.346913, 40.079756 ], [ 124.336442, 40.049985 ], [ 124.372167, 40.021576 ], [ 124.349377, 39.989029 ], [ 124.288399, 39.962888 ], [ 124.286551, 39.931689 ], [ 124.241588, 39.928477 ], [ 124.216334, 39.89313 ], [ 124.214486, 39.865116 ], [ 124.173218, 39.841225 ], [ 124.151045, 39.74558 ], [ 124.099306, 39.777323 ], [ 124.103001, 39.823302 ], [ 124.002603, 39.800316 ], [ 123.95148, 39.817786 ], [ 123.812278, 39.831115 ], [ 123.795032, 39.822842 ], [ 123.687858, 39.808132 ], [ 123.674924, 39.826979 ], [ 123.645358, 39.823761 ], [ 123.642279, 39.796178 ], [ 123.612714, 39.775023 ], [ 123.579453, 39.781002 ], [ 123.546808, 39.756163 ], [ 123.536337, 39.788361 ], [ 123.484598, 39.763063 ], [ 123.477823, 39.74696 ], [ 123.392823, 39.723949 ], [ 123.388512, 39.74742 ], [ 123.350939, 39.750641 ], [ 123.274563, 39.753862 ], [ 123.270251, 39.714743 ], [ 123.286882, 39.704154 ], [ 123.253005, 39.689879 ], [ 123.215433, 39.696786 ], [ 123.212969, 39.665928 ], [ 123.166774, 39.674219 ], [ 123.146448, 39.647037 ], [ 123.103332, 39.676983 ], [ 123.010941, 39.655331 ], [ 123.021412, 39.64335 ], [ 122.978912, 39.616156 ], [ 122.972753, 39.594946 ], [ 122.941956, 39.604629 ], [ 122.860652, 39.604629 ], [ 122.847101, 39.581571 ], [ 122.808913, 39.559889 ], [ 122.682645, 39.514658 ], [ 122.649385, 39.516505 ], [ 122.637066, 39.488799 ], [ 122.581631, 39.464316 ], [ 122.532972, 39.419947 ], [ 122.489856, 39.403764 ], [ 122.412864, 39.411625 ], [ 122.366053, 39.370461 ], [ 122.30877, 39.346399 ], [ 122.274893, 39.322329 ], [ 122.242865, 39.267678 ], [ 122.160329, 39.238019 ], [ 122.117213, 39.213911 ], [ 122.123988, 39.172631 ], [ 122.167104, 39.158711 ], [ 122.127684, 39.144788 ], [ 122.088264, 39.112291 ], [ 122.048228, 39.101146 ], [ 122.071634, 39.074204 ], [ 122.061778, 39.060264 ], [ 122.013735, 39.073275 ], [ 121.963228, 39.030053 ], [ 121.913953, 39.0598 ], [ 121.929352, 39.024939 ], [ 121.864062, 39.037026 ], [ 121.855439, 39.025869 ], [ 121.905946, 38.997503 ], [ 121.920728, 38.969591 ], [ 121.863446, 38.942598 ], [ 121.804932, 38.970986 ], [ 121.790149, 39.022614 ], [ 121.756889, 39.025869 ], [ 121.73841, 38.998898 ], [ 121.671273, 39.010059 ], [ 121.66265, 38.966333 ], [ 121.618918, 38.950046 ], [ 121.655874, 38.946788 ], [ 121.719316, 38.920252 ], [ 121.708845, 38.872744 ], [ 121.675585, 38.86156 ], [ 121.618302, 38.862492 ], [ 121.564715, 38.874607 ], [ 121.509897, 38.817743 ], [ 121.399028, 38.812613 ], [ 121.359608, 38.822406 ], [ 121.302325, 38.78976 ], [ 121.259825, 38.786495 ], [ 121.198848, 38.721623 ], [ 121.13787, 38.723023 ], [ 121.112, 38.776231 ], [ 121.12863, 38.799089 ], [ 121.110768, 38.862026 ], [ 121.129862, 38.879266 ], [ 121.094138, 38.894173 ], [ 121.08921, 38.922115 ], [ 121.128014, 38.958888 ], [ 121.180369, 38.959819 ], [ 121.204391, 38.941202 ], [ 121.275224, 38.971917 ], [ 121.341129, 38.980757 ], [ 121.317108, 39.012384 ], [ 121.370695, 39.060264 ], [ 121.431057, 39.027263 ], [ 121.508049, 39.034237 ], [ 121.581962, 39.075598 ], [ 121.599208, 39.098824 ], [ 121.562252, 39.127149 ], [ 121.590585, 39.154999 ], [ 121.642324, 39.11972 ], [ 121.605983, 39.080708 ], [ 121.631853, 39.077921 ], [ 121.68236, 39.117863 ], [ 121.639244, 39.166136 ], [ 121.604136, 39.166136 ], [ 121.586889, 39.193506 ], [ 121.591201, 39.228748 ], [ 121.631237, 39.22643 ], [ 121.589353, 39.263044 ], [ 121.623846, 39.285745 ], [ 121.672505, 39.275554 ], [ 121.667577, 39.310754 ], [ 121.70207, 39.326496 ], [ 121.72486, 39.364447 ], [ 121.621382, 39.326033 ], [ 121.562252, 39.322792 ], [ 121.51544, 39.286672 ], [ 121.464933, 39.30103 ], [ 121.466781, 39.320014 ], [ 121.435984, 39.329736 ], [ 121.432904, 39.357506 ], [ 121.35468, 39.377863 ], [ 121.324499, 39.371386 ], [ 121.307869, 39.391277 ], [ 121.270296, 39.374162 ], [ 121.245659, 39.389427 ], [ 121.246891, 39.421334 ], [ 121.304173, 39.48187 ], [ 121.286927, 39.507271 ], [ 121.268449, 39.482794 ], [ 121.224717, 39.519275 ], [ 121.226565, 39.554814 ], [ 121.263521, 39.589873 ], [ 121.299246, 39.606013 ], [ 121.325731, 39.601402 ], [ 121.450151, 39.624914 ], [ 121.451999, 39.658095 ], [ 121.482796, 39.659478 ], [ 121.502506, 39.703233 ], [ 121.45939, 39.747881 ], [ 121.487107, 39.760303 ], [ 121.472325, 39.802155 ], [ 121.530223, 39.851334 ], [ 121.541926, 39.874302 ], [ 121.572107, 39.865116 ], [ 121.626925, 39.882569 ], [ 121.699606, 39.937196 ], [ 121.76428, 39.933525 ], [ 121.779062, 39.942702 ], [ 121.796309, 39.999116 ], [ 121.824642, 40.025701 ], [ 121.910257, 40.072887 ], [ 121.956453, 40.133311 ], [ 121.995257, 40.128277 ], [ 122.003264, 40.172191 ], [ 121.98109, 40.173106 ], [ 121.950293, 40.204194 ], [ 121.940438, 40.242121 ], [ 122.02667, 40.244862 ], [ 122.039605, 40.260391 ], [ 122.040221, 40.322017 ], [ 122.079641, 40.332967 ], [ 122.110438, 40.315629 ], [ 122.138155, 40.338897 ], [ 122.111054, 40.348932 ], [ 122.135691, 40.374925 ], [ 122.152322, 40.357597 ], [ 122.198517, 40.382219 ], [ 122.186814, 40.422779 ], [ 122.229314, 40.424146 ], [ 122.250872, 40.445555 ], [ 122.241633, 40.465137 ], [ 122.278589, 40.482891 ], [ 122.244712, 40.485167 ], [ 122.245944, 40.519752 ], [ 122.150474, 40.588413 ], [ 122.133843, 40.614313 ], [ 122.148626, 40.671983 ], [ 122.122141, 40.657457 ], [ 122.06609, 40.64883 ], [ 122.025438, 40.674253 ], [ 121.951525, 40.680607 ], [ 121.936127, 40.711462 ], [ 121.934279, 40.79805 ], [ 121.883772, 40.802127 ], [ 121.84312, 40.831567 ], [ 121.816019, 40.894931 ], [ 121.778446, 40.886787 ], [ 121.735331, 40.862351 ], [ 121.732251, 40.846961 ], [ 121.682976, 40.829755 ], [ 121.626309, 40.844244 ], [ 121.576418, 40.837906 ], [ 121.553013, 40.817528 ], [ 121.55486, 40.849677 ], [ 121.526527, 40.85194 ], [ 121.499426, 40.880001 ], [ 121.440296, 40.88181 ], [ 121.440912, 40.84017 ], [ 121.342977, 40.841528 ], [ 121.290622, 40.851488 ], [ 121.274608, 40.886335 ], [ 121.251202, 40.880453 ], [ 121.23642, 40.851035 ], [ 121.177906, 40.873665 ], [ 121.126167, 40.86914 ], [ 121.076892, 40.815716 ], [ 121.086747, 40.79805 ], [ 121.010986, 40.784457 ], [ 121.00729, 40.807563 ], [ 120.971566, 40.805751 ], [ 120.994356, 40.790801 ], [ 120.980189, 40.766329 ], [ 120.991276, 40.744115 ], [ 121.028848, 40.746382 ], [ 121.032544, 40.709193 ], [ 120.983269, 40.712822 ], [ 120.945081, 40.687868 ], [ 120.861313, 40.684692 ], [ 120.8299, 40.671076 ], [ 120.837291, 40.644289 ], [ 120.822509, 40.59432 ], [ 120.72827, 40.539311 ], [ 120.72211, 40.515657 ], [ 120.693777, 40.505647 ], [ 120.666676, 40.467413 ], [ 120.615553, 40.453298 ], [ 120.617401, 40.41959 ], [ 120.596459, 40.399084 ], [ 120.602618, 40.36079 ], [ 120.537329, 40.325211 ], [ 120.52193, 40.304676 ], [ 120.523778, 40.256737 ], [ 120.491749, 40.20008 ], [ 120.451097, 40.177679 ], [ 120.371641, 40.174478 ], [ 120.273091, 40.127362 ], [ 120.161606, 40.096239 ], [ 120.134504, 40.074719 ], [ 120.092005, 40.077466 ], [ 119.947259, 40.040364 ], [ 119.941715, 40.009659 ], [ 119.91831, 39.989946 ], [ 119.854252, 39.98857 ], [ 119.845629, 40.000949 ], [ 119.845629, 40.000949 ], [ 119.854252, 40.033033 ], [ 119.81668, 40.050443 ], [ 119.81668, 40.050443 ], [ 119.787115, 40.041739 ], [ 119.787115, 40.041739 ], [ 119.783419, 40.046778 ], [ 119.783419, 40.046778 ], [ 119.772332, 40.08113 ], [ 119.736608, 40.104936 ], [ 119.760629, 40.136056 ], [ 119.745847, 40.207851 ], [ 119.716898, 40.195966 ], [ 119.671934, 40.23938 ], [ 119.639289, 40.231613 ], [ 119.639289, 40.231613 ], [ 119.651608, 40.271808 ], [ 119.598021, 40.334335 ], [ 119.586934, 40.375381 ], [ 119.604797, 40.455119 ], [ 119.553674, 40.502007 ], [ 119.572152, 40.523846 ], [ 119.559217, 40.547952 ], [ 119.503783, 40.553864 ], [ 119.477913, 40.533399 ], [ 119.429254, 40.540221 ], [ 119.30237, 40.530215 ], [ 119.256175, 40.543404 ], [ 119.22045, 40.569322 ], [ 119.230921, 40.603863 ], [ 119.177951, 40.609315 ], [ 119.162552, 40.600228 ], [ 119.14469, 40.632482 ], [ 119.184726, 40.680153 ], [ 119.165632, 40.69286 ], [ 119.115125, 40.666536 ], [ 119.054763, 40.664721 ], [ 119.028277, 40.692406 ], [ 119.011031, 40.687414 ], [ 118.96114, 40.72008 ], [ 118.950053, 40.747743 ], [ 118.895234, 40.75409 ], [ 118.907553, 40.775394 ], [ 118.878604, 40.783098 ], [ 118.845959, 40.822057 ], [ 118.873061, 40.847866 ], [ 118.90201, 40.960946 ], [ 118.916792, 40.969984 ], [ 118.977154, 40.959138 ], [ 118.977154, 40.959138 ], [ 119.00056, 40.967273 ], [ 119.013495, 41.007479 ], [ 118.951901, 41.018317 ], [ 118.937118, 41.052625 ], [ 118.964836, 41.079246 ], [ 119.037516, 41.067516 ], [ 119.080632, 41.095936 ], [ 119.081248, 41.131555 ], [ 119.126212, 41.138767 ], [ 119.189038, 41.198234 ], [ 119.169943, 41.222996 ], [ 119.204436, 41.222546 ], [ 119.209364, 41.244599 ], [ 119.2494, 41.279689 ], [ 119.239545, 41.31431 ], [ 119.296211, 41.325097 ], [ 119.330704, 41.385293 ], [ 119.309762, 41.405944 ], [ 119.376283, 41.422102 ], [ 119.378131, 41.459787 ], [ 119.401537, 41.472343 ], [ 119.406464, 41.503276 ], [ 119.361501, 41.545841 ], [ 119.362116, 41.566442 ], [ 119.420015, 41.567785 ], [ 119.415703, 41.590169 ], [ 119.342406, 41.617914 ], [ 119.307914, 41.657273 ], [ 119.299907, 41.705545 ], [ 119.319001, 41.727435 ], [ 119.317769, 41.764049 ], [ 119.292515, 41.790827 ], [ 119.312841, 41.80555 ], [ 119.334399, 41.871539 ], [ 119.323312, 41.889807 ], [ 119.340559, 41.926774 ], [ 119.323928, 41.937014 ], [ 119.324544, 41.969505 ], [ 119.375667, 42.023322 ], [ 119.384906, 42.08953 ], [ 119.352261, 42.118391 ], [ 119.314689, 42.119723 ], [ 119.30853, 42.147239 ], [ 119.286972, 42.154781 ], [ 119.277733, 42.185387 ], [ 119.237697, 42.200905 ], [ 119.274037, 42.239021 ], [ 119.280197, 42.260728 ], [ 119.34795, 42.300578 ], [ 119.432949, 42.317396 ], [ 119.482841, 42.347037 ], [ 119.502551, 42.388159 ], [ 119.540123, 42.363401 ], [ 119.572152, 42.359421 ], [ 119.571536, 42.335536 ], [ 119.539507, 42.297922 ], [ 119.557985, 42.289068 ] ] ], [ [ [ 122.673406, 39.269531 ], [ 122.67895, 39.268605 ], [ 122.57732, 39.269994 ], [ 122.497248, 39.300566 ], [ 122.540979, 39.308439 ], [ 122.593334, 39.278334 ], [ 122.641993, 39.288061 ], [ 122.673406, 39.269531 ] ] ], [ [ [ 122.335256, 39.149894 ], [ 122.316161, 39.185157 ], [ 122.343263, 39.203246 ], [ 122.393154, 39.213448 ], [ 122.383299, 39.190723 ], [ 122.398697, 39.16196 ], [ 122.366053, 39.174951 ], [ 122.335256, 39.149894 ] ] ], [ [ [ 122.691884, 39.23292 ], [ 122.691268, 39.23431 ], [ 122.690037, 39.234774 ], [ 122.628443, 39.231993 ], [ 122.635834, 39.241727 ], [ 122.740544, 39.248679 ], [ 122.751631, 39.229675 ], [ 122.696812, 39.206492 ], [ 122.691884, 39.23292 ] ] ], [ [ [ 122.759022, 39.025404 ], [ 122.732536, 39.013779 ], [ 122.704819, 39.044463 ], [ 122.725145, 39.048181 ], [ 122.759022, 39.025404 ] ] ], [ [ [ 123.022644, 39.546507 ], [ 123.036194, 39.533123 ], [ 122.995542, 39.495264 ], [ 122.945035, 39.520198 ], [ 122.96105, 39.551122 ], [ 123.022644, 39.546507 ] ] ], [ [ [ 122.503407, 39.241263 ], [ 122.547755, 39.229211 ], [ 122.502175, 39.224112 ], [ 122.503407, 39.241263 ] ] ], [ [ [ 120.786784, 40.473787 ], [ 120.774465, 40.48016 ], [ 120.805262, 40.525666 ], [ 120.8299, 40.516112 ], [ 120.83298, 40.491995 ], [ 120.786784, 40.473787 ] ] ], [ [ [ 123.086702, 39.426881 ], [ 123.054057, 39.457847 ], [ 123.090397, 39.450915 ], [ 123.086702, 39.426881 ] ] ], [ [ [ 123.160614, 39.025404 ], [ 123.143984, 39.038885 ], [ 123.145832, 39.091857 ], [ 123.20065, 39.077921 ], [ 123.205578, 39.057011 ], [ 123.160614, 39.025404 ] ] ], [ [ [ 123.716807, 39.74512 ], [ 123.719887, 39.763063 ], [ 123.756843, 39.754322 ], [ 123.716807, 39.74512 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"220000\", \"name\": \"吉林省\", \"center\": [ 125.3245, 43.886841 ], \"centroid\": [ 126.171249, 43.70394 ], \"childrenNum\": 9, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 6, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 126.188572, 41.114875 ], [ 126.187956, 41.113072 ], [ 126.16763, 41.094583 ], [ 126.124514, 41.092327 ], [ 126.133753, 41.063906 ], [ 126.099877, 41.036376 ], [ 126.1085, 41.011995 ], [ 126.066, 40.997542 ], [ 126.08263, 40.976762 ], [ 126.051833, 40.96185 ], [ 126.041362, 40.928851 ], [ 126.008102, 40.936537 ], [ 125.959442, 40.88181 ], [ 125.921254, 40.882715 ], [ 125.875059, 40.908501 ], [ 125.860892, 40.888597 ], [ 125.817161, 40.866877 ], [ 125.778356, 40.897645 ], [ 125.707523, 40.866877 ], [ 125.687813, 40.897645 ], [ 125.652089, 40.91619 ], [ 125.584335, 40.891764 ], [ 125.589263, 40.931112 ], [ 125.635458, 40.94151 ], [ 125.650241, 40.970888 ], [ 125.674879, 40.974503 ], [ 125.684118, 41.021929 ], [ 125.726617, 41.055332 ], [ 125.739552, 41.08917 ], [ 125.712451, 41.095485 ], [ 125.734009, 41.125695 ], [ 125.759878, 41.132908 ], [ 125.791291, 41.167607 ], [ 125.73832, 41.178418 ], [ 125.758646, 41.232449 ], [ 125.749407, 41.245499 ], [ 125.695205, 41.244599 ], [ 125.685349, 41.273842 ], [ 125.646545, 41.264396 ], [ 125.642234, 41.296327 ], [ 125.62006, 41.318355 ], [ 125.637306, 41.34442 ], [ 125.610205, 41.365084 ], [ 125.589879, 41.359245 ], [ 125.581256, 41.396517 ], [ 125.547995, 41.401006 ], [ 125.534444, 41.428833 ], [ 125.533212, 41.479069 ], [ 125.493176, 41.509103 ], [ 125.507343, 41.534195 ], [ 125.479626, 41.544946 ], [ 125.450061, 41.597777 ], [ 125.461148, 41.642516 ], [ 125.446981, 41.67605 ], [ 125.412488, 41.691246 ], [ 125.344119, 41.672474 ], [ 125.317018, 41.676944 ], [ 125.332416, 41.711354 ], [ 125.336112, 41.768067 ], [ 125.336112, 41.768067 ], [ 125.323177, 41.771191 ], [ 125.323177, 41.771191 ], [ 125.319482, 41.776993 ], [ 125.319482, 41.776993 ], [ 125.294844, 41.822945 ], [ 125.307779, 41.924548 ], [ 125.35151, 41.92811 ], [ 125.291764, 41.958825 ], [ 125.29854, 41.974399 ], [ 125.369989, 42.002868 ], [ 125.363213, 42.017097 ], [ 125.416184, 42.063766 ], [ 125.414336, 42.101964 ], [ 125.446365, 42.098411 ], [ 125.490097, 42.136145 ], [ 125.458068, 42.160105 ], [ 125.458068, 42.160105 ], [ 125.41372, 42.156112 ], [ 125.368141, 42.182726 ], [ 125.357054, 42.145464 ], [ 125.305931, 42.146351 ], [ 125.312706, 42.197359 ], [ 125.280677, 42.175187 ], [ 125.312706, 42.219966 ], [ 125.27575, 42.231045 ], [ 125.27575, 42.266928 ], [ 125.299156, 42.289953 ], [ 125.264047, 42.312528 ], [ 125.224011, 42.30102 ], [ 125.175352, 42.308102 ], [ 125.167345, 42.351903 ], [ 125.203685, 42.366938 ], [ 125.185823, 42.38197 ], [ 125.186439, 42.427928 ], [ 125.140243, 42.44692 ], [ 125.150098, 42.458842 ], [ 125.105135, 42.490624 ], [ 125.068794, 42.499449 ], [ 125.090968, 42.515773 ], [ 125.066946, 42.534738 ], [ 125.089736, 42.567803 ], [ 125.082961, 42.591159 ], [ 125.097127, 42.622433 ], [ 125.038613, 42.615387 ], [ 125.010896, 42.63212 ], [ 125.014592, 42.666014 ], [ 124.99057, 42.677455 ], [ 124.968396, 42.722756 ], [ 124.996729, 42.745174 ], [ 124.975171, 42.802722 ], [ 124.92836, 42.819844 ], [ 124.897563, 42.787791 ], [ 124.874157, 42.789987 ], [ 124.856911, 42.824234 ], [ 124.84952, 42.882585 ], [ 124.87231, 42.962344 ], [ 124.869846, 42.988178 ], [ 124.840897, 43.032377 ], [ 124.88894, 43.074796 ], [ 124.882781, 43.13422 ], [ 124.785462, 43.117185 ], [ 124.755281, 43.074359 ], [ 124.719557, 43.069987 ], [ 124.686912, 43.051185 ], [ 124.677673, 43.002185 ], [ 124.658579, 42.972854 ], [ 124.635173, 42.972854 ], [ 124.632093, 42.949642 ], [ 124.607456, 42.937376 ], [ 124.586514, 42.905384 ], [ 124.466406, 42.847054 ], [ 124.435609, 42.880831 ], [ 124.371551, 42.880831 ], [ 124.38079, 42.912835 ], [ 124.431913, 42.930803 ], [ 124.442384, 42.958841 ], [ 124.42329, 42.975482 ], [ 124.369703, 42.972854 ], [ 124.333363, 42.997371 ], [ 124.425754, 43.076107 ], [ 124.366007, 43.121554 ], [ 124.273617, 43.17875 ], [ 124.287167, 43.207983 ], [ 124.27608, 43.233278 ], [ 124.228653, 43.235022 ], [ 124.215102, 43.255947 ], [ 124.168291, 43.244177 ], [ 124.114088, 43.247229 ], [ 124.117168, 43.2773 ], [ 124.099306, 43.292983 ], [ 124.032784, 43.280786 ], [ 123.964415, 43.34088 ], [ 123.896046, 43.361333 ], [ 123.881263, 43.392218 ], [ 123.881263, 43.392218 ], [ 123.852314, 43.406133 ], [ 123.857858, 43.459153 ], [ 123.857858, 43.459153 ], [ 123.79688, 43.489988 ], [ 123.747604, 43.472184 ], [ 123.749452, 43.439167 ], [ 123.710032, 43.417001 ], [ 123.703873, 43.37047 ], [ 123.608402, 43.366119 ], [ 123.54496, 43.415262 ], [ 123.519707, 43.402219 ], [ 123.486446, 43.44525 ], [ 123.442098, 43.437863 ], [ 123.419925, 43.410046 ], [ 123.382968, 43.469143 ], [ 123.36449, 43.483475 ], [ 123.315831, 43.492159 ], [ 123.329998, 43.519071 ], [ 123.304744, 43.550742 ], [ 123.360179, 43.567223 ], [ 123.452569, 43.545971 ], [ 123.452569, 43.545971 ], [ 123.461193, 43.568523 ], [ 123.434091, 43.575461 ], [ 123.421157, 43.598435 ], [ 123.5117, 43.592801 ], [ 123.510468, 43.624867 ], [ 123.536953, 43.633964 ], [ 123.518475, 43.682024 ], [ 123.520323, 43.708419 ], [ 123.48275, 43.737396 ], [ 123.498149, 43.771114 ], [ 123.461809, 43.822518 ], [ 123.467968, 43.853599 ], [ 123.397135, 43.954929 ], [ 123.37065, 43.970006 ], [ 123.400831, 43.979481 ], [ 123.365722, 44.013922 ], [ 123.331229, 44.028984 ], [ 123.32815, 44.084035 ], [ 123.350939, 44.092633 ], [ 123.362642, 44.133452 ], [ 123.386664, 44.161794 ], [ 123.323838, 44.179823 ], [ 123.286882, 44.211574 ], [ 123.277027, 44.25274 ], [ 123.196955, 44.34483 ], [ 123.128585, 44.367081 ], [ 123.114419, 44.40258 ], [ 123.142136, 44.428228 ], [ 123.125506, 44.455147 ], [ 123.137209, 44.486322 ], [ 123.12489, 44.5098 ], [ 123.06576, 44.505959 ], [ 123.025108, 44.493153 ], [ 122.85634, 44.398304 ], [ 122.76087, 44.369648 ], [ 122.702971, 44.319145 ], [ 122.675254, 44.285738 ], [ 122.641993, 44.283595 ], [ 122.515726, 44.251025 ], [ 122.483081, 44.236877 ], [ 122.319241, 44.233018 ], [ 122.271198, 44.255741 ], [ 122.291524, 44.310152 ], [ 122.294604, 44.41113 ], [ 122.28598, 44.477783 ], [ 122.228082, 44.480345 ], [ 122.224386, 44.526016 ], [ 122.196053, 44.559712 ], [ 122.13138, 44.577619 ], [ 122.113517, 44.615546 ], [ 122.103046, 44.67388 ], [ 122.117213, 44.701961 ], [ 122.161561, 44.728328 ], [ 122.152322, 44.744057 ], [ 122.10243, 44.736406 ], [ 122.110438, 44.767856 ], [ 122.142467, 44.753833 ], [ 122.168952, 44.770405 ], [ 122.099967, 44.7823 ], [ 122.098119, 44.81882 ], [ 122.04946, 44.912985 ], [ 122.079025, 44.914256 ], [ 122.087032, 44.95281 ], [ 122.074713, 45.006573 ], [ 122.098735, 45.02138 ], [ 122.119677, 45.068739 ], [ 122.109822, 45.142236 ], [ 122.143082, 45.183167 ], [ 122.192358, 45.180636 ], [ 122.22993, 45.206784 ], [ 122.239169, 45.276313 ], [ 122.147394, 45.295682 ], [ 122.146778, 45.374352 ], [ 122.180039, 45.409655 ], [ 122.168336, 45.439897 ], [ 122.064242, 45.472641 ], [ 122.002648, 45.507882 ], [ 121.993409, 45.552741 ], [ 121.966308, 45.596308 ], [ 121.995873, 45.59882 ], [ 122.003264, 45.623102 ], [ 121.970004, 45.692956 ], [ 121.934279, 45.71051 ], [ 121.867142, 45.719703 ], [ 121.812323, 45.704659 ], [ 121.811091, 45.687103 ], [ 121.713773, 45.701734 ], [ 121.666345, 45.727641 ], [ 121.644172, 45.752284 ], [ 121.657106, 45.770238 ], [ 121.697142, 45.76314 ], [ 121.754425, 45.794862 ], [ 121.766744, 45.830318 ], [ 121.766744, 45.830318 ], [ 121.769823, 45.84366 ], [ 121.817251, 45.875336 ], [ 121.805548, 45.900746 ], [ 121.821562, 45.918235 ], [ 121.809243, 45.961102 ], [ 121.761816, 45.998947 ], [ 121.819098, 46.023054 ], [ 121.843736, 46.024301 ], [ 121.864062, 46.002272 ], [ 121.923808, 46.004767 ], [ 121.92812, 45.988552 ], [ 122.040221, 45.959022 ], [ 122.085184, 45.912406 ], [ 122.091344, 45.882002 ], [ 122.200981, 45.857 ], [ 122.236705, 45.831569 ], [ 122.253952, 45.7982 ], [ 122.301379, 45.813218 ], [ 122.337719, 45.859917 ], [ 122.372828, 45.856166 ], [ 122.362357, 45.917403 ], [ 122.446125, 45.916986 ], [ 122.496016, 45.85825 ], [ 122.504639, 45.786933 ], [ 122.522501, 45.786933 ], [ 122.556378, 45.82156 ], [ 122.603189, 45.778169 ], [ 122.640761, 45.771072 ], [ 122.650001, 45.731401 ], [ 122.671558, 45.70048 ], [ 122.741775, 45.705077 ], [ 122.751015, 45.735996 ], [ 122.792283, 45.766063 ], [ 122.752246, 45.834905 ], [ 122.772572, 45.856583 ], [ 122.80029, 45.856583 ], [ 122.828623, 45.912406 ], [ 122.792898, 46.073313 ], [ 123.04605, 46.099878 ], [ 123.070071, 46.123527 ], [ 123.112571, 46.130163 ], [ 123.102716, 46.172037 ], [ 123.127354, 46.174523 ], [ 123.128585, 46.210565 ], [ 123.178476, 46.248239 ], [ 123.248078, 46.273065 ], [ 123.286266, 46.250308 ], [ 123.320758, 46.254447 ], [ 123.357099, 46.232096 ], [ 123.357099, 46.232096 ], [ 123.430396, 46.243687 ], [ 123.452569, 46.233338 ], [ 123.499381, 46.259826 ], [ 123.569598, 46.223816 ], [ 123.569598, 46.223816 ], [ 123.604706, 46.251964 ], [ 123.673692, 46.258585 ], [ 123.726047, 46.255688 ], [ 123.775938, 46.263136 ], [ 123.84985, 46.302428 ], [ 123.896046, 46.303668 ], [ 123.917604, 46.25693 ], [ 123.936082, 46.286715 ], [ 123.960103, 46.288369 ], [ 123.952096, 46.256516 ], [ 123.979814, 46.228784 ], [ 123.956408, 46.206009 ], [ 123.971806, 46.170379 ], [ 124.001987, 46.166649 ], [ 123.991516, 46.143019 ], [ 124.01677, 46.118549 ], [ 123.99398, 46.101123 ], [ 124.015538, 46.088257 ], [ 124.009995, 46.057534 ], [ 124.034016, 46.045074 ], [ 124.040176, 46.01973 ], [ 123.989053, 46.011833 ], [ 124.011842, 45.981899 ], [ 123.973654, 45.973997 ], [ 123.968727, 45.936551 ], [ 123.996444, 45.906993 ], [ 124.061118, 45.886168 ], [ 124.067277, 45.840325 ], [ 124.03648, 45.83824 ], [ 124.064197, 45.802372 ], [ 124.001987, 45.770655 ], [ 124.014922, 45.749779 ], [ 124.054342, 45.751449 ], [ 124.098074, 45.722628 ], [ 124.10177, 45.700898 ], [ 124.13503, 45.690448 ], [ 124.122096, 45.669123 ], [ 124.147349, 45.665359 ], [ 124.128255, 45.641933 ], [ 124.162132, 45.616404 ], [ 124.226805, 45.633564 ], [ 124.238508, 45.591702 ], [ 124.273001, 45.584163 ], [ 124.264377, 45.555256 ], [ 124.287783, 45.539329 ], [ 124.348761, 45.546874 ], [ 124.369087, 45.512915 ], [ 124.352457, 45.496557 ], [ 124.374015, 45.45795 ], [ 124.398652, 45.440737 ], [ 124.480572, 45.456271 ], [ 124.507058, 45.424778 ], [ 124.544014, 45.411756 ], [ 124.579738, 45.424358 ], [ 124.575427, 45.451234 ], [ 124.625318, 45.437377 ], [ 124.690607, 45.452493 ], [ 124.729412, 45.444096 ], [ 124.776223, 45.468024 ], [ 124.792853, 45.436958 ], [ 124.839665, 45.455852 ], [ 124.886476, 45.442836 ], [ 124.884628, 45.495299 ], [ 124.911114, 45.535976 ], [ 124.936983, 45.53388 ], [ 124.961005, 45.495299 ], [ 125.025678, 45.493201 ], [ 125.0497, 45.428558 ], [ 125.08912, 45.420998 ], [ 125.06633, 45.39915 ], [ 125.097127, 45.38276 ], [ 125.137779, 45.409655 ], [ 125.189518, 45.39915 ], [ 125.248649, 45.417637 ], [ 125.301619, 45.402092 ], [ 125.319482, 45.422678 ], [ 125.361981, 45.392847 ], [ 125.398322, 45.416797 ], [ 125.434662, 45.462988 ], [ 125.424807, 45.485649 ], [ 125.480242, 45.486488 ], [ 125.497488, 45.469283 ], [ 125.583104, 45.491942 ], [ 125.61698, 45.517947 ], [ 125.660096, 45.507043 ], [ 125.687813, 45.514173 ], [ 125.711835, 45.477677 ], [ 125.712451, 45.389485 ], [ 125.695205, 45.352066 ], [ 125.726001, 45.336503 ], [ 125.761726, 45.291472 ], [ 125.815929, 45.264942 ], [ 125.823936, 45.237978 ], [ 125.849805, 45.23882 ], [ 125.915095, 45.196664 ], [ 125.957595, 45.201303 ], [ 125.992703, 45.192447 ], [ 125.998247, 45.162072 ], [ 126.047522, 45.170933 ], [ 126.091869, 45.149411 ], [ 126.142992, 45.147723 ], [ 126.166398, 45.13337 ], [ 126.225528, 45.154054 ], [ 126.235383, 45.140125 ], [ 126.285274, 45.162494 ], [ 126.293282, 45.180214 ], [ 126.356107, 45.185698 ], [ 126.402919, 45.222805 ], [ 126.519331, 45.248091 ], [ 126.540273, 45.23882 ], [ 126.569222, 45.252725 ], [ 126.644983, 45.225334 ], [ 126.640055, 45.214373 ], [ 126.685635, 45.187807 ], [ 126.732446, 45.187385 ], [ 126.787265, 45.159118 ], [ 126.792808, 45.135481 ], [ 126.85625, 45.145613 ], [ 126.96404, 45.132104 ], [ 126.970815, 45.070852 ], [ 126.984981, 45.067893 ], [ 127.018242, 45.024341 ], [ 127.050271, 45.004034 ], [ 127.092771, 44.94688 ], [ 127.073061, 44.907051 ], [ 127.021938, 44.898997 ], [ 126.999764, 44.87398 ], [ 126.984366, 44.823914 ], [ 126.9973, 44.764882 ], [ 127.041032, 44.712169 ], [ 127.030561, 44.673454 ], [ 127.044112, 44.653874 ], [ 127.041648, 44.591258 ], [ 127.049655, 44.566961 ], [ 127.089691, 44.593816 ], [ 127.094619, 44.615972 ], [ 127.138966, 44.607451 ], [ 127.182082, 44.644507 ], [ 127.228893, 44.642804 ], [ 127.214111, 44.624917 ], [ 127.261538, 44.61299 ], [ 127.275705, 44.640249 ], [ 127.392733, 44.632158 ], [ 127.557189, 44.575488 ], [ 127.570124, 44.55033 ], [ 127.536247, 44.522176 ], [ 127.485124, 44.528576 ], [ 127.465414, 44.516628 ], [ 127.463566, 44.484615 ], [ 127.50853, 44.437202 ], [ 127.486356, 44.410275 ], [ 127.579363, 44.310581 ], [ 127.623711, 44.278025 ], [ 127.59045, 44.227872 ], [ 127.626174, 44.187977 ], [ 127.641573, 44.193555 ], [ 127.681609, 44.166946 ], [ 127.712406, 44.199133 ], [ 127.735811, 44.11412 ], [ 127.729036, 44.09908 ], [ 127.783239, 44.071997 ], [ 127.808492, 44.086615 ], [ 127.846065, 44.081886 ], [ 127.862695, 44.062967 ], [ 127.912586, 44.064687 ], [ 127.950158, 44.088334 ], [ 128.042549, 44.103807 ], [ 128.091208, 44.133022 ], [ 128.088129, 44.158359 ], [ 128.060411, 44.168663 ], [ 128.09244, 44.181539 ], [ 128.104143, 44.230017 ], [ 128.064107, 44.251454 ], [ 128.101679, 44.293449 ], [ 128.065339, 44.307155 ], [ 128.049941, 44.349965 ], [ 128.074578, 44.370075 ], [ 128.094904, 44.354673 ], [ 128.137404, 44.357668 ], [ 128.172512, 44.34697 ], [ 128.211317, 44.431647 ], [ 128.228563, 44.445748 ], [ 128.293237, 44.467961 ], [ 128.295084, 44.480772 ], [ 128.372693, 44.514495 ], [ 128.397946, 44.483761 ], [ 128.427511, 44.473512 ], [ 128.463236, 44.431647 ], [ 128.457076, 44.409848 ], [ 128.481714, 44.375637 ], [ 128.475555, 44.346114 ], [ 128.446605, 44.339694 ], [ 128.472475, 44.320001 ], [ 128.453997, 44.257884 ], [ 128.471859, 44.247596 ], [ 128.450301, 44.203423 ], [ 128.471859, 44.157501 ], [ 128.529141, 44.112401 ], [ 128.574721, 44.047914 ], [ 128.584576, 43.990246 ], [ 128.610445, 43.960529 ], [ 128.64001, 43.948035 ], [ 128.636315, 43.891132 ], [ 128.696061, 43.903207 ], [ 128.729938, 43.889838 ], [ 128.760734, 43.857482 ], [ 128.719467, 43.816905 ], [ 128.739177, 43.806972 ], [ 128.760119, 43.755554 ], [ 128.729322, 43.736964 ], [ 128.768126, 43.732207 ], [ 128.78722, 43.686784 ], [ 128.821097, 43.637429 ], [ 128.834647, 43.587599 ], [ 128.878379, 43.539898 ], [ 128.949828, 43.553779 ], [ 128.962763, 43.53903 ], [ 129.013886, 43.522976 ], [ 129.037907, 43.540332 ], [ 129.093958, 43.547706 ], [ 129.145081, 43.570258 ], [ 129.169102, 43.561585 ], [ 129.23008, 43.593234 ], [ 129.232544, 43.635263 ], [ 129.217146, 43.648689 ], [ 129.214066, 43.695006 ], [ 129.232544, 43.709284 ], [ 129.211602, 43.784509 ], [ 129.254718, 43.819496 ], [ 129.289826, 43.797038 ], [ 129.30892, 43.812155 ], [ 129.348341, 43.798333 ], [ 129.406855, 43.819496 ], [ 129.417942, 43.843672 ], [ 129.449971, 43.850578 ], [ 129.467833, 43.874741 ], [ 129.529427, 43.870427 ], [ 129.650767, 43.873016 ], [ 129.699426, 43.8838 ], [ 129.743158, 43.876035 ], [ 129.739462, 43.895876 ], [ 129.780114, 43.892857 ], [ 129.802904, 43.964837 ], [ 129.868193, 44.012631 ], [ 129.881128, 44.000148 ], [ 129.907614, 44.023821 ], [ 129.951345, 44.027263 ], [ 129.979062, 44.015644 ], [ 130.017867, 43.961821 ], [ 130.022794, 43.917866 ], [ 130.009243, 43.889407 ], [ 130.027722, 43.851872 ], [ 130.079461, 43.835039 ], [ 130.110873, 43.852735 ], [ 130.116417, 43.878192 ], [ 130.143518, 43.878624 ], [ 130.153373, 43.915711 ], [ 130.208192, 43.948466 ], [ 130.262395, 43.949328 ], [ 130.27225, 43.981634 ], [ 130.307358, 44.002731 ], [ 130.319061, 44.03974 ], [ 130.365256, 44.044042 ], [ 130.364025, 43.992399 ], [ 130.338155, 43.963975 ], [ 130.381887, 43.910106 ], [ 130.368336, 43.894151 ], [ 130.386198, 43.85403 ], [ 130.362793, 43.844967 ], [ 130.381887, 43.817768 ], [ 130.382503, 43.777164 ], [ 130.423155, 43.745179 ], [ 130.394206, 43.703227 ], [ 130.412684, 43.652586 ], [ 130.437937, 43.646091 ], [ 130.488444, 43.65605 ], [ 130.501995, 43.636563 ], [ 130.57098, 43.626167 ], [ 130.57098, 43.626167 ], [ 130.630726, 43.622268 ], [ 130.623335, 43.589767 ], [ 130.665835, 43.583698 ], [ 130.671378, 43.565054 ], [ 130.727429, 43.560284 ], [ 130.776704, 43.52341 ], [ 130.822899, 43.503446 ], [ 130.841378, 43.454374 ], [ 130.864167, 43.437863 ], [ 130.907283, 43.434387 ], [ 130.959638, 43.48608 ], [ 131.026775, 43.508655 ], [ 131.142572, 43.425695 ], [ 131.175217, 43.444816 ], [ 131.201086, 43.442209 ], [ 131.234963, 43.475224 ], [ 131.294093, 43.470012 ], [ 131.304564, 43.502144 ], [ 131.31873, 43.499539 ], [ 131.314419, 43.461325 ], [ 131.295941, 43.441774 ], [ 131.314419, 43.392653 ], [ 131.275615, 43.369165 ], [ 131.269455, 43.297775 ], [ 131.255289, 43.265099 ], [ 131.206014, 43.237202 ], [ 131.201086, 43.203185 ], [ 131.218948, 43.191405 ], [ 131.207861, 43.1316 ], [ 131.173985, 43.111506 ], [ 131.171521, 43.06955 ], [ 131.120398, 43.068238 ], [ 131.102536, 43.021002 ], [ 131.11855, 43.007875 ], [ 131.115471, 42.975482 ], [ 131.151195, 42.968475 ], [ 131.14442, 42.939566 ], [ 131.114855, 42.915027 ], [ 131.034167, 42.929051 ], [ 131.017536, 42.915027 ], [ 131.045869, 42.866796 ], [ 130.981812, 42.857145 ], [ 130.949783, 42.876884 ], [ 130.890653, 42.852758 ], [ 130.845073, 42.881269 ], [ 130.801957, 42.879515 ], [ 130.784095, 42.842227 ], [ 130.75453, 42.845738 ], [ 130.719422, 42.831695 ], [ 130.708335, 42.846615 ], [ 130.665835, 42.847932 ], [ 130.603625, 42.819405 ], [ 130.562357, 42.815015 ], [ 130.532792, 42.787352 ], [ 130.46627, 42.772417 ], [ 130.40714, 42.731548 ], [ 130.425003, 42.706926 ], [ 130.464423, 42.688453 ], [ 130.529096, 42.703408 ], [ 130.592538, 42.671295 ], [ 130.633806, 42.603494 ], [ 130.622719, 42.573092 ], [ 130.570364, 42.557224 ], [ 130.565437, 42.506509 ], [ 130.599929, 42.486211 ], [ 130.600545, 42.450453 ], [ 130.645509, 42.426603 ], [ 130.581451, 42.435437 ], [ 130.585763, 42.485328 ], [ 130.558661, 42.495919 ], [ 130.556198, 42.523712 ], [ 130.520473, 42.583228 ], [ 130.522937, 42.622433 ], [ 130.482285, 42.626837 ], [ 130.459495, 42.588075 ], [ 130.476125, 42.570007 ], [ 130.435474, 42.553257 ], [ 130.423771, 42.574855 ], [ 130.44656, 42.607459 ], [ 130.420691, 42.617148 ], [ 130.388046, 42.603054 ], [ 130.373264, 42.630799 ], [ 130.333228, 42.64973 ], [ 130.290112, 42.702968 ], [ 130.257467, 42.710884 ], [ 130.242069, 42.738582 ], [ 130.245148, 42.799209 ], [ 130.258083, 42.860655 ], [ 130.277793, 42.892232 ], [ 130.258083, 42.90626 ], [ 130.21004, 42.902315 ], [ 130.17062, 42.912397 ], [ 130.136127, 42.90363 ], [ 130.10225, 42.922916 ], [ 130.127504, 42.932556 ], [ 130.120729, 42.954461 ], [ 130.144134, 42.976357 ], [ 130.10841, 42.989929 ], [ 130.072685, 42.971541 ], [ 130.027106, 42.9676 ], [ 130.002468, 42.981174 ], [ 129.963664, 42.978547 ], [ 129.954425, 43.010938 ], [ 129.897143, 43.001748 ], [ 129.903918, 42.968475 ], [ 129.868193, 42.97373 ], [ 129.856491, 42.951833 ], [ 129.874969, 42.923792 ], [ 129.846636, 42.918533 ], [ 129.835549, 42.866796 ], [ 129.816454, 42.851003 ], [ 129.810911, 42.795257 ], [ 129.78381, 42.762752 ], [ 129.767179, 42.707806 ], [ 129.796744, 42.681854 ], [ 129.754245, 42.645768 ], [ 129.786889, 42.615387 ], [ 129.746237, 42.58455 ], [ 129.749933, 42.546644 ], [ 129.738846, 42.500332 ], [ 129.748701, 42.471204 ], [ 129.704354, 42.427045 ], [ 129.643991, 42.43102 ], [ 129.624281, 42.459284 ], [ 129.60026, 42.41114 ], [ 129.546057, 42.361632 ], [ 129.49863, 42.412023 ], [ 129.452434, 42.441179 ], [ 129.400695, 42.449128 ], [ 129.368051, 42.425719 ], [ 129.376058, 42.447803 ], [ 129.344029, 42.451777 ], [ 129.356348, 42.427045 ], [ 129.331094, 42.429695 ], [ 129.30892, 42.403628 ], [ 129.326167, 42.389927 ], [ 129.240551, 42.376223 ], [ 129.231312, 42.356325 ], [ 129.260261, 42.335536 ], [ 129.208522, 42.293052 ], [ 129.231312, 42.283755 ], [ 129.215914, 42.265157 ], [ 129.183269, 42.262056 ], [ 129.181421, 42.242122 ], [ 129.209138, 42.237692 ], [ 129.215914, 42.208442 ], [ 129.166639, 42.188047 ], [ 129.113668, 42.140583 ], [ 129.048378, 42.137476 ], [ 129.039139, 42.107736 ], [ 129.008958, 42.09175 ], [ 128.971386, 42.097079 ], [ 128.954755, 42.083756 ], [ 128.952908, 42.025545 ], [ 128.898089, 42.016653 ], [ 128.795227, 42.042436 ], [ 128.779213, 42.033546 ], [ 128.737945, 42.050435 ], [ 128.70222, 42.02021 ], [ 128.658489, 42.018876 ], [ 128.637547, 42.035324 ], [ 128.60675, 42.02999 ], [ 128.598127, 42.007315 ], [ 128.49896, 42.000644 ], [ 128.466316, 42.020654 ], [ 128.405338, 42.018876 ], [ 128.294468, 42.026434 ], [ 128.090593, 42.022877 ], [ 128.033926, 42.000199 ], [ 128.106607, 41.949923 ], [ 128.115846, 41.896935 ], [ 128.104143, 41.843457 ], [ 128.112766, 41.793504 ], [ 128.147875, 41.78101 ], [ 128.163889, 41.721628 ], [ 128.208853, 41.688565 ], [ 128.248889, 41.681414 ], [ 128.30186, 41.627756 ], [ 128.317874, 41.575844 ], [ 128.301244, 41.544498 ], [ 128.238418, 41.497898 ], [ 128.243345, 41.477276 ], [ 128.203925, 41.410882 ], [ 128.169433, 41.404149 ], [ 128.114614, 41.364186 ], [ 128.090593, 41.374516 ], [ 128.110919, 41.393375 ], [ 128.040085, 41.393375 ], [ 128.000049, 41.442741 ], [ 127.991426, 41.421204 ], [ 127.970484, 41.438704 ], [ 127.93168, 41.444984 ], [ 127.909506, 41.42973 ], [ 127.882405, 41.448124 ], [ 127.86947, 41.4037 ], [ 127.854688, 41.420755 ], [ 127.780159, 41.427038 ], [ 127.684073, 41.422999 ], [ 127.636645, 41.413575 ], [ 127.618783, 41.432871 ], [ 127.563964, 41.432871 ], [ 127.547334, 41.477276 ], [ 127.526392, 41.467859 ], [ 127.465414, 41.479069 ], [ 127.459255, 41.461581 ], [ 127.419835, 41.460235 ], [ 127.405668, 41.478621 ], [ 127.360088, 41.479518 ], [ 127.360704, 41.466065 ], [ 127.296031, 41.486243 ], [ 127.253531, 41.486691 ], [ 127.28864, 41.501932 ], [ 127.241212, 41.520754 ], [ 127.188241, 41.527475 ], [ 127.164836, 41.542706 ], [ 127.14143, 41.530163 ], [ 127.125416, 41.566442 ], [ 127.178386, 41.600015 ], [ 127.135887, 41.600463 ], [ 127.127263, 41.622388 ], [ 127.093387, 41.629993 ], [ 127.103242, 41.647883 ], [ 127.037952, 41.676944 ], [ 127.057662, 41.703758 ], [ 127.050887, 41.744852 ], [ 127.005923, 41.749317 ], [ 126.979438, 41.776993 ], [ 126.940018, 41.773423 ], [ 126.952953, 41.804212 ], [ 126.931395, 41.812687 ], [ 126.861178, 41.768067 ], [ 126.83962, 41.727435 ], [ 126.809439, 41.749317 ], [ 126.8002, 41.702865 ], [ 126.723207, 41.753335 ], [ 126.694874, 41.751103 ], [ 126.690562, 41.728328 ], [ 126.724439, 41.710907 ], [ 126.688099, 41.674262 ], [ 126.644983, 41.661297 ], [ 126.608027, 41.669345 ], [ 126.592628, 41.624624 ], [ 126.564295, 41.608965 ], [ 126.582773, 41.563307 ], [ 126.559983, 41.548081 ], [ 126.497158, 41.406842 ], [ 126.539041, 41.366881 ], [ 126.524259, 41.349362 ], [ 126.497158, 41.374965 ], [ 126.437411, 41.353405 ], [ 126.373354, 41.289133 ], [ 126.35426, 41.244599 ], [ 126.332086, 41.236949 ], [ 126.295129, 41.171661 ], [ 126.188572, 41.114875 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"230000\", \"name\": \"黑龙江省\", \"center\": [ 126.642464, 45.756967 ], \"centroid\": [ 127.693016, 48.04047 ], \"childrenNum\": 13, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 7, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 123.569598, 46.223816 ], [ 123.569598, 46.223816 ], [ 123.499381, 46.259826 ], [ 123.452569, 46.233338 ], [ 123.430396, 46.243687 ], [ 123.357099, 46.232096 ], [ 123.357099, 46.232096 ], [ 123.320758, 46.254447 ], [ 123.286266, 46.250308 ], [ 123.248078, 46.273065 ], [ 123.178476, 46.248239 ], [ 123.142136, 46.298293 ], [ 123.089781, 46.347888 ], [ 123.011557, 46.434984 ], [ 123.010325, 46.524823 ], [ 123.002318, 46.574624 ], [ 123.052825, 46.579972 ], [ 123.04605, 46.617803 ], [ 123.077462, 46.622324 ], [ 123.098404, 46.603002 ], [ 123.18094, 46.614103 ], [ 123.228368, 46.588198 ], [ 123.279491, 46.616981 ], [ 123.276411, 46.660947 ], [ 123.318295, 46.662179 ], [ 123.366338, 46.677784 ], [ 123.474743, 46.686817 ], [ 123.603475, 46.68928 ], [ 123.631808, 46.728675 ], [ 123.629344, 46.813524 ], [ 123.580069, 46.827447 ], [ 123.625648, 46.847508 ], [ 123.599163, 46.868378 ], [ 123.605322, 46.891286 ], [ 123.576989, 46.891286 ], [ 123.575757, 46.845461 ], [ 123.562823, 46.82581 ], [ 123.506772, 46.827038 ], [ 123.483366, 46.84587 ], [ 123.52833, 46.944836 ], [ 123.487678, 46.959951 ], [ 123.42362, 46.934212 ], [ 123.337389, 46.988943 ], [ 123.301664, 46.999965 ], [ 123.304128, 46.964852 ], [ 123.360179, 46.970978 ], [ 123.404526, 46.935438 ], [ 123.40699, 46.906416 ], [ 123.374345, 46.837683 ], [ 123.341084, 46.826628 ], [ 123.295505, 46.865105 ], [ 123.221592, 46.850373 ], [ 123.22344, 46.821305 ], [ 123.198802, 46.803283 ], [ 123.163694, 46.74016 ], [ 123.103332, 46.734828 ], [ 123.076846, 46.745082 ], [ 123.026339, 46.718829 ], [ 123.00355, 46.730726 ], [ 122.996774, 46.761483 ], [ 122.906847, 46.80738 ], [ 122.893913, 46.895376 ], [ 122.895144, 46.960359 ], [ 122.83971, 46.937072 ], [ 122.791051, 46.941567 ], [ 122.798442, 46.9575 ], [ 122.77442, 46.973837 ], [ 122.778116, 47.002822 ], [ 122.845869, 47.046881 ], [ 122.852645, 47.072158 ], [ 122.821232, 47.065636 ], [ 122.710363, 47.093349 ], [ 122.710363, 47.093349 ], [ 122.679566, 47.094164 ], [ 122.615508, 47.124306 ], [ 122.582863, 47.158092 ], [ 122.582863, 47.158092 ], [ 122.531124, 47.198771 ], [ 122.498479, 47.255262 ], [ 122.462755, 47.27841 ], [ 122.441197, 47.310476 ], [ 122.441197, 47.310476 ], [ 122.418407, 47.350632 ], [ 122.507103, 47.401291 ], [ 122.543443, 47.495589 ], [ 122.59395, 47.54732 ], [ 122.765181, 47.614333 ], [ 122.848949, 47.67441 ], [ 122.926557, 47.697777 ], [ 123.041122, 47.746492 ], [ 123.161846, 47.781892 ], [ 123.214201, 47.824502 ], [ 123.256085, 47.876711 ], [ 123.300432, 47.953723 ], [ 123.537569, 48.021816 ], [ 123.579453, 48.045427 ], [ 123.705105, 48.152142 ], [ 123.746373, 48.197638 ], [ 123.862785, 48.271782 ], [ 124.019234, 48.39313 ], [ 124.07898, 48.43603 ], [ 124.136878, 48.463023 ], [ 124.25945, 48.536385 ], [ 124.25945, 48.536385 ], [ 124.314269, 48.503881 ], [ 124.302566, 48.456673 ], [ 124.330283, 48.435633 ], [ 124.309957, 48.413393 ], [ 124.331515, 48.380015 ], [ 124.317964, 48.35099 ], [ 124.353689, 48.315978 ], [ 124.365392, 48.283731 ], [ 124.422058, 48.245884 ], [ 124.412819, 48.219175 ], [ 124.418978, 48.181679 ], [ 124.467637, 48.178886 ], [ 124.471333, 48.133373 ], [ 124.430065, 48.12099 ], [ 124.415899, 48.08782 ], [ 124.46579, 48.098213 ], [ 124.478108, 48.123387 ], [ 124.505826, 48.124985 ], [ 124.529847, 48.146951 ], [ 124.512601, 48.164518 ], [ 124.547094, 48.200829 ], [ 124.579122, 48.262221 ], [ 124.558796, 48.268197 ], [ 124.579738, 48.297269 ], [ 124.540934, 48.335476 ], [ 124.547094, 48.35775 ], [ 124.51876, 48.378027 ], [ 124.52492, 48.426897 ], [ 124.507674, 48.445558 ], [ 124.555717, 48.467784 ], [ 124.533543, 48.515379 ], [ 124.548941, 48.535593 ], [ 124.520608, 48.556195 ], [ 124.579122, 48.596582 ], [ 124.601912, 48.632587 ], [ 124.624702, 48.701755 ], [ 124.612383, 48.747945 ], [ 124.656115, 48.783842 ], [ 124.644412, 48.80789 ], [ 124.654267, 48.83429 ], [ 124.697383, 48.841775 ], [ 124.715861, 48.885475 ], [ 124.709086, 48.920487 ], [ 124.744194, 48.920487 ], [ 124.756513, 48.967262 ], [ 124.808252, 49.020666 ], [ 124.828578, 49.077933 ], [ 124.809484, 49.115943 ], [ 124.847672, 49.129651 ], [ 124.860607, 49.166448 ], [ 124.906802, 49.184054 ], [ 124.983179, 49.162535 ], [ 125.039845, 49.17623 ], [ 125.034302, 49.157056 ], [ 125.117453, 49.126127 ], [ 125.158721, 49.144921 ], [ 125.187671, 49.186792 ], [ 125.219699, 49.189139 ], [ 125.233866, 49.255587 ], [ 125.214772, 49.277066 ], [ 125.261583, 49.322336 ], [ 125.256656, 49.359769 ], [ 125.277598, 49.379644 ], [ 125.25604, 49.395227 ], [ 125.256656, 49.437275 ], [ 125.270822, 49.454395 ], [ 125.228323, 49.487063 ], [ 125.211076, 49.539908 ], [ 125.233866, 49.536801 ], [ 125.23017, 49.595411 ], [ 125.205533, 49.593859 ], [ 125.16796, 49.629923 ], [ 125.15441, 49.616741 ], [ 125.127308, 49.655113 ], [ 125.132236, 49.672157 ], [ 125.164881, 49.669446 ], [ 125.189518, 49.652401 ], [ 125.185207, 49.634574 ], [ 125.219699, 49.669058 ], [ 125.225243, 49.726349 ], [ 125.204301, 49.734086 ], [ 125.221547, 49.754969 ], [ 125.222779, 49.799026 ], [ 125.177815, 49.829533 ], [ 125.239409, 49.844587 ], [ 125.225243, 49.867351 ], [ 125.245569, 49.87198 ], [ 125.212924, 49.907452 ], [ 125.225859, 49.922481 ], [ 125.199373, 49.935194 ], [ 125.190134, 49.959841 ], [ 125.231402, 49.957531 ], [ 125.241873, 49.987938 ], [ 125.278214, 49.996402 ], [ 125.297924, 50.014481 ], [ 125.283757, 50.036012 ], [ 125.25296, 50.041393 ], [ 125.289916, 50.057917 ], [ 125.315786, 50.04562 ], [ 125.328105, 50.065985 ], [ 125.283757, 50.070211 ], [ 125.287453, 50.093636 ], [ 125.258504, 50.103618 ], [ 125.27883, 50.127411 ], [ 125.311474, 50.140453 ], [ 125.376148, 50.137385 ], [ 125.335496, 50.161161 ], [ 125.382923, 50.172278 ], [ 125.39093, 50.199868 ], [ 125.417416, 50.195654 ], [ 125.448829, 50.216338 ], [ 125.442053, 50.260357 ], [ 125.466075, 50.266861 ], [ 125.463611, 50.295925 ], [ 125.530749, 50.331085 ], [ 125.520278, 50.3498 ], [ 125.546763, 50.358965 ], [ 125.522126, 50.404759 ], [ 125.536292, 50.420014 ], [ 125.567089, 50.402852 ], [ 125.583104, 50.409717 ], [ 125.562162, 50.438314 ], [ 125.580024, 50.449366 ], [ 125.627451, 50.443268 ], [ 125.654553, 50.471082 ], [ 125.699516, 50.487078 ], [ 125.740784, 50.523237 ], [ 125.754335, 50.506874 ], [ 125.770349, 50.531227 ], [ 125.794987, 50.532748 ], [ 125.829479, 50.56165 ], [ 125.807921, 50.60383 ], [ 125.814697, 50.62092 ], [ 125.793139, 50.643316 ], [ 125.804226, 50.658874 ], [ 125.789443, 50.679735 ], [ 125.825784, 50.70362 ], [ 125.78082, 50.725598 ], [ 125.795603, 50.738856 ], [ 125.758646, 50.746809 ], [ 125.804226, 50.773309 ], [ 125.828863, 50.756654 ], [ 125.846726, 50.769524 ], [ 125.836255, 50.793363 ], [ 125.890457, 50.805845 ], [ 125.878138, 50.816812 ], [ 125.913247, 50.825885 ], [ 125.939732, 50.85423 ], [ 125.961906, 50.901054 ], [ 125.997631, 50.872738 ], [ 125.996399, 50.906715 ], [ 126.02042, 50.927466 ], [ 126.042594, 50.92558 ], [ 126.068464, 50.967434 ], [ 126.041978, 50.981753 ], [ 126.033971, 51.011132 ], [ 126.059225, 51.043503 ], [ 125.976073, 51.084498 ], [ 125.993935, 51.119072 ], [ 125.970529, 51.123955 ], [ 125.946508, 51.108176 ], [ 125.909551, 51.138977 ], [ 125.864588, 51.146487 ], [ 125.850421, 51.21364 ], [ 125.819008, 51.227134 ], [ 125.761726, 51.226385 ], [ 125.76111, 51.261976 ], [ 125.76111, 51.261976 ], [ 125.740784, 51.27583 ], [ 125.740784, 51.27583 ], [ 125.700132, 51.327465 ], [ 125.700132, 51.327465 ], [ 125.626219, 51.380163 ], [ 125.626219, 51.380163 ], [ 125.623756, 51.387633 ], [ 125.623756, 51.387633 ], [ 125.62314, 51.398089 ], [ 125.62314, 51.398089 ], [ 125.600966, 51.410409 ], [ 125.600966, 51.410409 ], [ 125.60035, 51.413396 ], [ 125.60035, 51.413396 ], [ 125.595422, 51.416755 ], [ 125.595422, 51.416755 ], [ 125.559082, 51.461521 ], [ 125.559082, 51.461521 ], [ 125.528285, 51.488359 ], [ 125.424807, 51.562827 ], [ 125.38046, 51.585516 ], [ 125.35151, 51.623801 ], [ 125.316402, 51.610052 ], [ 125.289301, 51.633831 ], [ 125.228938, 51.640517 ], [ 125.214772, 51.627888 ], [ 125.175968, 51.639403 ], [ 125.130388, 51.635317 ], [ 125.12854, 51.659083 ], [ 125.098975, 51.658341 ], [ 125.060171, 51.59667 ], [ 125.073106, 51.553526 ], [ 125.047236, 51.529704 ], [ 125.004737, 51.529332 ], [ 124.983795, 51.508478 ], [ 124.928976, 51.498419 ], [ 124.917889, 51.474196 ], [ 124.942527, 51.447349 ], [ 124.885244, 51.40817 ], [ 124.864302, 51.37979 ], [ 124.783614, 51.392115 ], [ 124.76452, 51.38726 ], [ 124.752817, 51.35812 ], [ 124.693687, 51.3327 ], [ 124.62655, 51.327465 ], [ 124.58713, 51.363725 ], [ 124.555717, 51.375307 ], [ 124.490427, 51.380537 ], [ 124.478108, 51.36223 ], [ 124.443616, 51.35812 ], [ 124.426985, 51.331953 ], [ 124.430065, 51.301281 ], [ 124.406659, 51.272086 ], [ 124.339522, 51.293422 ], [ 124.297638, 51.298661 ], [ 124.271769, 51.308389 ], [ 124.239124, 51.344664 ], [ 124.192313, 51.33943 ], [ 124.128255, 51.347281 ], [ 124.090067, 51.3413 ], [ 124.071588, 51.320734 ], [ 123.994596, 51.322604 ], [ 123.939777, 51.313253 ], [ 123.926227, 51.300532 ], [ 123.887423, 51.320734 ], [ 123.842459, 51.367462 ], [ 123.794416, 51.361109 ], [ 123.711264, 51.398089 ], [ 123.660141, 51.342795 ], [ 123.661989, 51.319237 ], [ 123.582533, 51.306893 ], [ 123.582533, 51.294545 ], [ 123.46304, 51.286686 ], [ 123.440251, 51.270963 ], [ 123.414381, 51.278825 ], [ 123.376809, 51.266844 ], [ 123.339853, 51.27246 ], [ 123.294273, 51.254111 ], [ 123.231447, 51.268716 ], [ 123.231447, 51.279199 ], [ 123.127969, 51.297913 ], [ 123.069455, 51.321108 ], [ 123.002934, 51.31213 ], [ 122.965977, 51.345786 ], [ 122.965977, 51.386886 ], [ 122.946267, 51.405183 ], [ 122.903768, 51.415262 ], [ 122.900072, 51.445112 ], [ 122.871123, 51.455181 ], [ 122.854492, 51.477551 ], [ 122.880362, 51.511085 ], [ 122.858804, 51.524864 ], [ 122.880362, 51.537894 ], [ 122.874202, 51.561339 ], [ 122.832935, 51.581797 ], [ 122.85634, 51.606707 ], [ 122.820616, 51.633088 ], [ 122.816304, 51.655371 ], [ 122.778732, 51.698048 ], [ 122.749167, 51.746613 ], [ 122.771957, 51.779579 ], [ 122.732536, 51.832495 ], [ 122.725761, 51.87833 ], [ 122.706051, 51.890151 ], [ 122.729457, 51.919321 ], [ 122.726377, 51.978709 ], [ 122.683877, 51.974654 ], [ 122.664783, 51.99861 ], [ 122.650616, 52.058997 ], [ 122.625363, 52.067459 ], [ 122.643841, 52.111585 ], [ 122.629059, 52.13657 ], [ 122.690653, 52.140243 ], [ 122.73808, 52.153464 ], [ 122.769493, 52.179893 ], [ 122.766413, 52.232705 ], [ 122.787355, 52.252494 ], [ 122.76087, 52.26678 ], [ 122.710979, 52.256157 ], [ 122.67895, 52.276667 ], [ 122.585943, 52.266413 ], [ 122.560689, 52.282526 ], [ 122.478153, 52.29607 ], [ 122.484313, 52.341432 ], [ 122.447356, 52.394052 ], [ 122.419023, 52.375057 ], [ 122.378987, 52.395512 ], [ 122.367284, 52.413768 ], [ 122.342031, 52.414133 ], [ 122.326016, 52.459374 ], [ 122.310618, 52.475416 ], [ 122.207756, 52.469218 ], [ 122.178191, 52.48963 ], [ 122.168952, 52.513674 ], [ 122.140003, 52.510032 ], [ 122.142467, 52.495096 ], [ 122.107358, 52.452445 ], [ 122.080873, 52.440407 ], [ 122.091344, 52.427272 ], [ 122.040837, 52.413038 ], [ 122.035909, 52.377615 ], [ 121.976779, 52.343626 ], [ 121.94783, 52.298266 ], [ 121.901018, 52.280695 ], [ 121.841272, 52.282526 ], [ 121.769207, 52.308147 ], [ 121.714389, 52.318025 ], [ 121.715621, 52.342894 ], [ 121.658338, 52.3904 ], [ 121.678664, 52.419973 ], [ 121.63986, 52.44442 ], [ 121.590585, 52.443326 ], [ 121.565331, 52.460468 ], [ 121.519136, 52.456821 ], [ 121.495114, 52.484892 ], [ 121.474172, 52.482706 ], [ 121.416274, 52.499468 ], [ 121.411963, 52.52205 ], [ 121.353448, 52.534793 ], [ 121.323883, 52.573727 ], [ 121.280151, 52.586819 ], [ 121.225333, 52.577364 ], [ 121.182217, 52.59918 ], [ 121.237036, 52.619167 ], [ 121.29247, 52.651855 ], [ 121.309717, 52.676173 ], [ 121.373158, 52.683067 ], [ 121.455078, 52.73528 ], [ 121.476636, 52.772225 ], [ 121.511129, 52.779104 ], [ 121.537614, 52.801542 ], [ 121.591201, 52.824693 ], [ 121.620766, 52.853251 ], [ 121.604136, 52.872401 ], [ 121.610295, 52.892264 ], [ 121.66265, 52.912478 ], [ 121.677432, 52.948192 ], [ 121.715621, 52.997926 ], [ 121.785838, 53.018451 ], [ 121.817867, 53.061631 ], [ 121.775367, 53.089674 ], [ 121.784606, 53.104408 ], [ 121.753193, 53.147501 ], [ 121.722396, 53.145706 ], [ 121.665114, 53.170467 ], [ 121.660186, 53.195213 ], [ 121.67928, 53.199515 ], [ 121.679896, 53.240722 ], [ 121.642324, 53.262564 ], [ 121.615222, 53.258984 ], [ 121.575802, 53.29155 ], [ 121.504969, 53.323018 ], [ 121.499426, 53.337314 ], [ 121.589969, 53.350891 ], [ 121.697758, 53.392666 ], [ 121.754425, 53.389454 ], [ 121.816019, 53.41336 ], [ 121.875765, 53.426556 ], [ 122.026054, 53.428339 ], [ 122.077177, 53.422277 ], [ 122.111054, 53.426913 ], [ 122.161561, 53.468614 ], [ 122.227466, 53.461845 ], [ 122.266886, 53.470039 ], [ 122.350038, 53.505647 ], [ 122.37406, 53.47467 ], [ 122.435038, 53.444739 ], [ 122.496016, 53.458638 ], [ 122.5379, 53.453293 ], [ 122.608117, 53.465408 ], [ 122.673406, 53.459351 ], [ 122.763949, 53.463626 ], [ 122.826775, 53.457213 ], [ 122.894528, 53.462914 ], [ 122.943804, 53.483929 ], [ 123.052209, 53.506715 ], [ 123.093477, 53.508138 ], [ 123.137209, 53.498172 ], [ 123.179092, 53.509918 ], [ 123.231447, 53.549404 ], [ 123.274563, 53.563269 ], [ 123.309672, 53.56078 ], [ 123.394055, 53.538024 ], [ 123.454417, 53.536602 ], [ 123.47228, 53.509206 ], [ 123.499381, 53.497816 ], [ 123.510468, 53.509206 ], [ 123.490758, 53.542648 ], [ 123.517243, 53.558292 ], [ 123.546808, 53.551537 ], [ 123.557895, 53.531978 ], [ 123.53141, 53.507071 ], [ 123.569598, 53.505291 ], [ 123.58746, 53.546915 ], [ 123.620721, 53.550115 ], [ 123.668764, 53.533756 ], [ 123.698329, 53.498528 ], [ 123.746373, 53.500308 ], [ 123.797495, 53.489983 ], [ 123.865249, 53.489627 ], [ 123.985973, 53.434401 ], [ 124.01369, 53.403371 ], [ 124.058038, 53.404085 ], [ 124.125791, 53.348033 ], [ 124.19416, 53.37339 ], [ 124.239124, 53.379817 ], [ 124.327819, 53.331954 ], [ 124.375863, 53.258984 ], [ 124.412203, 53.248601 ], [ 124.435609, 53.223886 ], [ 124.487348, 53.217436 ], [ 124.496587, 53.207759 ], [ 124.563108, 53.201666 ], [ 124.590209, 53.208476 ], [ 124.678905, 53.207043 ], [ 124.720789, 53.192344 ], [ 124.712165, 53.162574 ], [ 124.734339, 53.146783 ], [ 124.787926, 53.140681 ], [ 124.832889, 53.145347 ], [ 124.87231, 53.099018 ], [ 124.909266, 53.118059 ], [ 124.887708, 53.164368 ], [ 124.970244, 53.194137 ], [ 125.038613, 53.202741 ], [ 125.142091, 53.204175 ], [ 125.195062, 53.198439 ], [ 125.252344, 53.18051 ], [ 125.315786, 53.144989 ], [ 125.343503, 53.14463 ], [ 125.452524, 53.107641 ], [ 125.503647, 53.095424 ], [ 125.504263, 53.061271 ], [ 125.530749, 53.0512 ], [ 125.588647, 53.081047 ], [ 125.613901, 53.083564 ], [ 125.640386, 53.06199 ], [ 125.643466, 53.039686 ], [ 125.684118, 53.00801 ], [ 125.742632, 52.993964 ], [ 125.737088, 52.943504 ], [ 125.665023, 52.913561 ], [ 125.666871, 52.869872 ], [ 125.678574, 52.86084 ], [ 125.722306, 52.880347 ], [ 125.751255, 52.88143 ], [ 125.772197, 52.89804 ], [ 125.827631, 52.899123 ], [ 125.854117, 52.891542 ], [ 125.855349, 52.866259 ], [ 125.923718, 52.815651 ], [ 125.937269, 52.786705 ], [ 125.966834, 52.759914 ], [ 125.985312, 52.758465 ], [ 126.02042, 52.795753 ], [ 126.052449, 52.800095 ], [ 126.116507, 52.768243 ], [ 126.112195, 52.757016 ], [ 126.044442, 52.739628 ], [ 126.072775, 52.691048 ], [ 126.061688, 52.673271 ], [ 125.995783, 52.675085 ], [ 125.971145, 52.654033 ], [ 125.968682, 52.630429 ], [ 125.989008, 52.603178 ], [ 126.030891, 52.576273 ], [ 126.055529, 52.582455 ], [ 126.066616, 52.603905 ], [ 126.147304, 52.573 ], [ 126.213209, 52.525327 ], [ 126.192883, 52.492181 ], [ 126.205202, 52.466302 ], [ 126.268644, 52.475051 ], [ 126.326542, 52.424353 ], [ 126.353644, 52.389304 ], [ 126.348716, 52.357882 ], [ 126.320999, 52.342163 ], [ 126.327774, 52.310342 ], [ 126.4331, 52.298632 ], [ 126.436795, 52.277034 ], [ 126.401071, 52.279597 ], [ 126.357955, 52.264216 ], [ 126.312992, 52.235271 ], [ 126.306832, 52.205574 ], [ 126.34502, 52.192002 ], [ 126.403535, 52.185031 ], [ 126.457121, 52.165212 ], [ 126.499005, 52.16044 ], [ 126.556288, 52.136203 ], [ 126.563679, 52.119302 ], [ 126.514404, 52.037282 ], [ 126.487918, 52.041699 ], [ 126.450962, 52.027709 ], [ 126.447882, 52.009294 ], [ 126.468208, 51.982395 ], [ 126.462665, 51.948471 ], [ 126.510092, 51.922274 ], [ 126.555056, 51.874266 ], [ 126.580925, 51.824728 ], [ 126.622809, 51.777357 ], [ 126.658534, 51.762544 ], [ 126.6727, 51.73179 ], [ 126.724439, 51.7266 ], [ 126.734294, 51.711399 ], [ 126.723823, 51.679126 ], [ 126.741069, 51.642374 ], [ 126.67886, 51.602246 ], [ 126.69549, 51.57845 ], [ 126.837156, 51.536033 ], [ 126.843931, 51.521885 ], [ 126.812518, 51.493948 ], [ 126.784185, 51.448095 ], [ 126.791577, 51.432428 ], [ 126.835308, 51.413769 ], [ 126.908605, 51.407423 ], [ 126.930163, 51.359241 ], [ 126.904293, 51.340552 ], [ 126.837156, 51.345038 ], [ 126.813134, 51.311756 ], [ 126.820526, 51.281071 ], [ 126.863025, 51.248492 ], [ 126.908605, 51.246619 ], [ 126.92154, 51.259729 ], [ 126.908605, 51.283691 ], [ 126.877808, 51.300906 ], [ 126.887047, 51.321856 ], [ 126.970815, 51.332327 ], [ 126.98375, 51.318863 ], [ 126.976358, 51.291551 ], [ 126.926467, 51.246244 ], [ 126.899982, 51.200518 ], [ 126.917844, 51.138977 ], [ 126.922772, 51.061937 ], [ 126.985597, 51.029202 ], [ 127.052119, 50.962911 ], [ 127.113713, 50.93765 ], [ 127.143894, 50.910111 ], [ 127.236285, 50.781256 ], [ 127.295415, 50.755139 ], [ 127.305886, 50.733932 ], [ 127.28864, 50.699451 ], [ 127.294799, 50.663426 ], [ 127.370559, 50.581415 ], [ 127.36132, 50.547582 ], [ 127.323132, 50.52552 ], [ 127.293567, 50.46575 ], [ 127.30527, 50.45432 ], [ 127.3644, 50.438314 ], [ 127.369944, 50.403996 ], [ 127.332371, 50.340634 ], [ 127.371791, 50.29669 ], [ 127.44632, 50.270686 ], [ 127.603385, 50.239309 ], [ 127.60708, 50.178794 ], [ 127.58737, 50.137768 ], [ 127.501755, 50.056764 ], [ 127.495595, 49.994479 ], [ 127.543638, 49.944438 ], [ 127.547334, 49.928645 ], [ 127.529472, 49.864265 ], [ 127.531936, 49.826059 ], [ 127.583059, 49.786277 ], [ 127.653892, 49.780094 ], [ 127.674833, 49.764247 ], [ 127.677913, 49.697712 ], [ 127.705015, 49.665185 ], [ 127.782007, 49.630698 ], [ 127.815268, 49.593859 ], [ 127.897804, 49.579116 ], [ 127.949542, 49.596187 ], [ 128.001281, 49.592307 ], [ 128.070882, 49.556604 ], [ 128.122005, 49.55311 ], [ 128.185447, 49.53952 ], [ 128.243345, 49.563203 ], [ 128.287077, 49.566309 ], [ 128.343128, 49.544956 ], [ 128.389939, 49.58998 ], [ 128.500192, 49.593859 ], [ 128.537764, 49.604332 ], [ 128.619684, 49.593471 ], [ 128.656025, 49.577564 ], [ 128.715155, 49.564756 ], [ 128.744104, 49.595023 ], [ 128.802618, 49.58222 ], [ 128.813089, 49.558157 ], [ 128.763198, 49.515824 ], [ 128.76135, 49.482009 ], [ 128.792147, 49.473065 ], [ 128.871604, 49.492506 ], [ 128.932582, 49.46801 ], [ 129.013886, 49.457119 ], [ 129.061929, 49.374189 ], [ 129.084719, 49.359769 ], [ 129.143849, 49.357431 ], [ 129.180805, 49.386657 ], [ 129.215298, 49.399122 ], [ 129.266421, 49.396006 ], [ 129.320623, 49.3586 ], [ 129.358196, 49.355871 ], [ 129.379138, 49.367175 ], [ 129.374826, 49.414309 ], [ 129.390224, 49.432605 ], [ 129.448739, 49.441167 ], [ 129.51834, 49.423652 ], [ 129.546057, 49.395227 ], [ 129.562687, 49.299706 ], [ 129.604571, 49.279018 ], [ 129.696962, 49.298535 ], [ 129.730223, 49.288387 ], [ 129.761636, 49.25754 ], [ 129.753629, 49.208692 ], [ 129.784426, 49.184054 ], [ 129.847867, 49.181316 ], [ 129.864498, 49.158621 ], [ 129.855259, 49.133567 ], [ 129.866962, 49.113985 ], [ 129.913157, 49.1085 ], [ 129.934715, 49.078717 ], [ 129.9187, 49.060681 ], [ 129.937179, 49.040285 ], [ 130.020946, 49.021058 ], [ 130.059135, 48.979047 ], [ 130.113337, 48.956653 ], [ 130.219895, 48.893739 ], [ 130.237757, 48.868551 ], [ 130.279641, 48.866976 ], [ 130.412068, 48.905148 ], [ 130.471198, 48.905541 ], [ 130.501995, 48.865795 ], [ 130.559277, 48.861071 ], [ 130.609168, 48.881146 ], [ 130.680617, 48.881146 ], [ 130.689856, 48.849651 ], [ 130.622103, 48.783842 ], [ 130.576524, 48.688719 ], [ 130.538951, 48.635751 ], [ 130.538335, 48.612016 ], [ 130.605473, 48.594207 ], [ 130.615944, 48.575601 ], [ 130.620871, 48.49595 ], [ 130.647357, 48.484844 ], [ 130.711414, 48.511414 ], [ 130.767465, 48.507846 ], [ 130.776704, 48.480084 ], [ 130.745907, 48.449131 ], [ 130.747755, 48.404256 ], [ 130.785327, 48.357353 ], [ 130.81982, 48.341444 ], [ 130.845073, 48.296473 ], [ 130.817972, 48.265409 ], [ 130.787791, 48.256643 ], [ 130.769313, 48.231136 ], [ 130.765617, 48.18926 ], [ 130.673842, 48.12818 ], [ 130.666451, 48.105007 ], [ 130.699711, 48.044227 ], [ 130.737284, 48.034223 ], [ 130.770544, 47.998194 ], [ 130.870943, 47.943301 ], [ 130.891269, 47.927263 ], [ 130.961486, 47.828118 ], [ 130.966413, 47.733211 ], [ 130.983659, 47.713081 ], [ 131.029855, 47.694555 ], [ 131.115471, 47.689721 ], [ 131.183224, 47.702611 ], [ 131.236811, 47.733211 ], [ 131.273767, 47.738846 ], [ 131.359998, 47.730796 ], [ 131.456085, 47.747297 ], [ 131.543548, 47.736028 ], [ 131.559563, 47.724757 ], [ 131.568186, 47.682469 ], [ 131.59036, 47.660707 ], [ 131.641483, 47.663932 ], [ 131.690142, 47.707041 ], [ 131.741881, 47.706638 ], [ 131.825649, 47.677231 ], [ 131.900793, 47.685692 ], [ 131.976554, 47.673201 ], [ 132.000575, 47.712276 ], [ 132.086191, 47.703013 ], [ 132.157024, 47.70543 ], [ 132.19706, 47.714289 ], [ 132.242639, 47.70986 ], [ 132.272205, 47.718718 ], [ 132.288835, 47.742065 ], [ 132.325175, 47.762184 ], [ 132.371987, 47.765402 ], [ 132.469305, 47.726368 ], [ 132.558, 47.718316 ], [ 132.6005, 47.740858 ], [ 132.599268, 47.792347 ], [ 132.621442, 47.82852 ], [ 132.662094, 47.854227 ], [ 132.687348, 47.88514 ], [ 132.662094, 47.922451 ], [ 132.661478, 47.944905 ], [ 132.691043, 47.962941 ], [ 132.723072, 47.962941 ], [ 132.769268, 47.93849 ], [ 132.819159, 47.936887 ], [ 132.883216, 48.002599 ], [ 132.992238, 48.035424 ], [ 133.016259, 48.054228 ], [ 133.02673, 48.085421 ], [ 133.053216, 48.110202 ], [ 133.130208, 48.134971 ], [ 133.182563, 48.135769 ], [ 133.239845, 48.126583 ], [ 133.302055, 48.103009 ], [ 133.407997, 48.124585 ], [ 133.451728, 48.112999 ], [ 133.545967, 48.121389 ], [ 133.573068, 48.182078 ], [ 133.59709, 48.194846 ], [ 133.667307, 48.183275 ], [ 133.693177, 48.186866 ], [ 133.740604, 48.254651 ], [ 133.791111, 48.261026 ], [ 133.824372, 48.277359 ], [ 133.876111, 48.282536 ], [ 133.940784, 48.302047 ], [ 133.995603, 48.303639 ], [ 134.029479, 48.327519 ], [ 134.0689, 48.338659 ], [ 134.116327, 48.333089 ], [ 134.150819, 48.346217 ], [ 134.20379, 48.3824 ], [ 134.369478, 48.382797 ], [ 134.438463, 48.405448 ], [ 134.501905, 48.418954 ], [ 134.578281, 48.405448 ], [ 134.696542, 48.407037 ], [ 134.764295, 48.370076 ], [ 134.820961, 48.37604 ], [ 134.848679, 48.393925 ], [ 134.886867, 48.437618 ], [ 134.927519, 48.451513 ], [ 134.996504, 48.439603 ], [ 135.035924, 48.440795 ], [ 135.068569, 48.459451 ], [ 135.09567, 48.437618 ], [ 135.090743, 48.403461 ], [ 135.009439, 48.365703 ], [ 134.864077, 48.332293 ], [ 134.77107, 48.288908 ], [ 134.679295, 48.256245 ], [ 134.67252, 48.170505 ], [ 134.632484, 48.099412 ], [ 134.551796, 48.032622 ], [ 134.55426, 47.982173 ], [ 134.599839, 47.947711 ], [ 134.607846, 47.909214 ], [ 134.658969, 47.901191 ], [ 134.677448, 47.884738 ], [ 134.670056, 47.864667 ], [ 134.678679, 47.819278 ], [ 134.772918, 47.763391 ], [ 134.779694, 47.7159 ], [ 134.689766, 47.63813 ], [ 134.678064, 47.588507 ], [ 134.627556, 47.546512 ], [ 134.576434, 47.519036 ], [ 134.568426, 47.478199 ], [ 134.522847, 47.468086 ], [ 134.490202, 47.446235 ], [ 134.339297, 47.439759 ], [ 134.307268, 47.428829 ], [ 134.266616, 47.391974 ], [ 134.263536, 47.371307 ], [ 134.203174, 47.347389 ], [ 134.177305, 47.326299 ], [ 134.156979, 47.248357 ], [ 134.210566, 47.210155 ], [ 134.230276, 47.182097 ], [ 134.232739, 47.134892 ], [ 134.222268, 47.105164 ], [ 134.142812, 47.093349 ], [ 134.118175, 47.061968 ], [ 134.10216, 47.005678 ], [ 134.063972, 46.979962 ], [ 134.076291, 46.938298 ], [ 134.042414, 46.886787 ], [ 134.041182, 46.848326 ], [ 134.025168, 46.810657 ], [ 134.052885, 46.779928 ], [ 134.033175, 46.759023 ], [ 134.030711, 46.708981 ], [ 134.011001, 46.637941 ], [ 133.919842, 46.596012 ], [ 133.890893, 46.525235 ], [ 133.849625, 46.475389 ], [ 133.852089, 46.450242 ], [ 133.902596, 46.446119 ], [ 133.948791, 46.401153 ], [ 133.940784, 46.38134 ], [ 133.876726, 46.362345 ], [ 133.869335, 46.338386 ], [ 133.922922, 46.330948 ], [ 133.908139, 46.308216 ], [ 133.91861, 46.280924 ], [ 133.909987, 46.254447 ], [ 133.867487, 46.250722 ], [ 133.87919, 46.233752 ], [ 133.849625, 46.203939 ], [ 133.814517, 46.230854 ], [ 133.794807, 46.193583 ], [ 133.764626, 46.17328 ], [ 133.706111, 46.163333 ], [ 133.690713, 46.133896 ], [ 133.745531, 46.075389 ], [ 133.740604, 46.048812 ], [ 133.681474, 45.986473 ], [ 133.676546, 45.94321 ], [ 133.614952, 45.942794 ], [ 133.618032, 45.903662 ], [ 133.583539, 45.868669 ], [ 133.55459, 45.893249 ], [ 133.51209, 45.887001 ], [ 133.491764, 45.867002 ], [ 133.494228, 45.840325 ], [ 133.467743, 45.834905 ], [ 133.469591, 45.799451 ], [ 133.505315, 45.785681 ], [ 133.469591, 45.777751 ], [ 133.486837, 45.740173 ], [ 133.454192, 45.731819 ], [ 133.445569, 45.705077 ], [ 133.484989, 45.691702 ], [ 133.485605, 45.658667 ], [ 133.448649, 45.647372 ], [ 133.471438, 45.631053 ], [ 133.412924, 45.618079 ], [ 133.423395, 45.584163 ], [ 133.393214, 45.580393 ], [ 133.342707, 45.554836 ], [ 133.333468, 45.562379 ], [ 133.246005, 45.517528 ], [ 133.201657, 45.515431 ], [ 133.170244, 45.465506 ], [ 133.164701, 45.437377 ], [ 133.143759, 45.430658 ], [ 133.144991, 45.367205 ], [ 133.119121, 45.352908 ], [ 133.128976, 45.336924 ], [ 133.097563, 45.281788 ], [ 133.109266, 45.232077 ], [ 133.124665, 45.222805 ], [ 133.137599, 45.178105 ], [ 133.139447, 45.127459 ], [ 133.107418, 45.124504 ], [ 133.089556, 45.097473 ], [ 133.070462, 45.097051 ], [ 133.045824, 45.066203 ], [ 132.986078, 45.031109 ], [ 132.954049, 45.023072 ], [ 132.916477, 45.031109 ], [ 132.867202, 45.061976 ], [ 132.76434, 45.081417 ], [ 132.394161, 45.16376 ], [ 132.17427, 45.216903 ], [ 132.003655, 45.25441 ], [ 131.976554, 45.277156 ], [ 131.93159, 45.287683 ], [ 131.917423, 45.339448 ], [ 131.887858, 45.342393 ], [ 131.82996, 45.311677 ], [ 131.825649, 45.291472 ], [ 131.788692, 45.245984 ], [ 131.79362, 45.211844 ], [ 131.759127, 45.213952 ], [ 131.721555, 45.234606 ], [ 131.681519, 45.215217 ], [ 131.650722, 45.159962 ], [ 131.687678, 45.1511 ], [ 131.695685, 45.132104 ], [ 131.63286, 45.075078 ], [ 131.566338, 45.045487 ], [ 131.529382, 45.012073 ], [ 131.484418, 44.99557 ], [ 131.501664, 44.977793 ], [ 131.464708, 44.963397 ], [ 131.409889, 44.985836 ], [ 131.380324, 44.978216 ], [ 131.355071, 44.990068 ], [ 131.313803, 44.965938 ], [ 131.311955, 44.94688 ], [ 131.274999, 44.919766 ], [ 131.263296, 44.929935 ], [ 131.207861, 44.913833 ], [ 131.20355, 44.932901 ], [ 131.16105, 44.948151 ], [ 131.090217, 44.924427 ], [ 131.10192, 44.898997 ], [ 131.07913, 44.881614 ], [ 130.965181, 44.85065 ], [ 130.972573, 44.820094 ], [ 131.016304, 44.814575 ], [ 131.016304, 44.789521 ], [ 131.064348, 44.786973 ], [ 131.069275, 44.759783 ], [ 131.093297, 44.746183 ], [ 131.090833, 44.717272 ], [ 131.111775, 44.710042 ], [ 131.310723, 44.046623 ], [ 131.26576, 44.034578 ], [ 131.245434, 43.95579 ], [ 131.26268, 43.948897 ], [ 131.254057, 43.893289 ], [ 131.2171, 43.836334 ], [ 131.213405, 43.801357 ], [ 131.232499, 43.742585 ], [ 131.215869, 43.72745 ], [ 131.221412, 43.682024 ], [ 131.239274, 43.670337 ], [ 131.216485, 43.613169 ], [ 131.222028, 43.593234 ], [ 131.20047, 43.532089 ], [ 131.276847, 43.495632 ], [ 131.304564, 43.502144 ], [ 131.294093, 43.470012 ], [ 131.234963, 43.475224 ], [ 131.201086, 43.442209 ], [ 131.175217, 43.444816 ], [ 131.142572, 43.425695 ], [ 131.026775, 43.508655 ], [ 130.959638, 43.48608 ], [ 130.907283, 43.434387 ], [ 130.864167, 43.437863 ], [ 130.841378, 43.454374 ], [ 130.822899, 43.503446 ], [ 130.776704, 43.52341 ], [ 130.727429, 43.560284 ], [ 130.671378, 43.565054 ], [ 130.665835, 43.583698 ], [ 130.623335, 43.589767 ], [ 130.630726, 43.622268 ], [ 130.57098, 43.626167 ], [ 130.57098, 43.626167 ], [ 130.501995, 43.636563 ], [ 130.488444, 43.65605 ], [ 130.437937, 43.646091 ], [ 130.412684, 43.652586 ], [ 130.394206, 43.703227 ], [ 130.423155, 43.745179 ], [ 130.382503, 43.777164 ], [ 130.381887, 43.817768 ], [ 130.362793, 43.844967 ], [ 130.386198, 43.85403 ], [ 130.368336, 43.894151 ], [ 130.381887, 43.910106 ], [ 130.338155, 43.963975 ], [ 130.364025, 43.992399 ], [ 130.365256, 44.044042 ], [ 130.319061, 44.03974 ], [ 130.307358, 44.002731 ], [ 130.27225, 43.981634 ], [ 130.262395, 43.949328 ], [ 130.208192, 43.948466 ], [ 130.153373, 43.915711 ], [ 130.143518, 43.878624 ], [ 130.116417, 43.878192 ], [ 130.110873, 43.852735 ], [ 130.079461, 43.835039 ], [ 130.027722, 43.851872 ], [ 130.009243, 43.889407 ], [ 130.022794, 43.917866 ], [ 130.017867, 43.961821 ], [ 129.979062, 44.015644 ], [ 129.951345, 44.027263 ], [ 129.907614, 44.023821 ], [ 129.881128, 44.000148 ], [ 129.868193, 44.012631 ], [ 129.802904, 43.964837 ], [ 129.780114, 43.892857 ], [ 129.739462, 43.895876 ], [ 129.743158, 43.876035 ], [ 129.699426, 43.8838 ], [ 129.650767, 43.873016 ], [ 129.529427, 43.870427 ], [ 129.467833, 43.874741 ], [ 129.449971, 43.850578 ], [ 129.417942, 43.843672 ], [ 129.406855, 43.819496 ], [ 129.348341, 43.798333 ], [ 129.30892, 43.812155 ], [ 129.289826, 43.797038 ], [ 129.254718, 43.819496 ], [ 129.211602, 43.784509 ], [ 129.232544, 43.709284 ], [ 129.214066, 43.695006 ], [ 129.217146, 43.648689 ], [ 129.232544, 43.635263 ], [ 129.23008, 43.593234 ], [ 129.169102, 43.561585 ], [ 129.145081, 43.570258 ], [ 129.093958, 43.547706 ], [ 129.037907, 43.540332 ], [ 129.013886, 43.522976 ], [ 128.962763, 43.53903 ], [ 128.949828, 43.553779 ], [ 128.878379, 43.539898 ], [ 128.834647, 43.587599 ], [ 128.821097, 43.637429 ], [ 128.78722, 43.686784 ], [ 128.768126, 43.732207 ], [ 128.729322, 43.736964 ], [ 128.760119, 43.755554 ], [ 128.739177, 43.806972 ], [ 128.719467, 43.816905 ], [ 128.760734, 43.857482 ], [ 128.729938, 43.889838 ], [ 128.696061, 43.903207 ], [ 128.636315, 43.891132 ], [ 128.64001, 43.948035 ], [ 128.610445, 43.960529 ], [ 128.584576, 43.990246 ], [ 128.574721, 44.047914 ], [ 128.529141, 44.112401 ], [ 128.471859, 44.157501 ], [ 128.450301, 44.203423 ], [ 128.471859, 44.247596 ], [ 128.453997, 44.257884 ], [ 128.472475, 44.320001 ], [ 128.446605, 44.339694 ], [ 128.475555, 44.346114 ], [ 128.481714, 44.375637 ], [ 128.457076, 44.409848 ], [ 128.463236, 44.431647 ], [ 128.427511, 44.473512 ], [ 128.397946, 44.483761 ], [ 128.372693, 44.514495 ], [ 128.295084, 44.480772 ], [ 128.293237, 44.467961 ], [ 128.228563, 44.445748 ], [ 128.211317, 44.431647 ], [ 128.172512, 44.34697 ], [ 128.137404, 44.357668 ], [ 128.094904, 44.354673 ], [ 128.074578, 44.370075 ], [ 128.049941, 44.349965 ], [ 128.065339, 44.307155 ], [ 128.101679, 44.293449 ], [ 128.064107, 44.251454 ], [ 128.104143, 44.230017 ], [ 128.09244, 44.181539 ], [ 128.060411, 44.168663 ], [ 128.088129, 44.158359 ], [ 128.091208, 44.133022 ], [ 128.042549, 44.103807 ], [ 127.950158, 44.088334 ], [ 127.912586, 44.064687 ], [ 127.862695, 44.062967 ], [ 127.846065, 44.081886 ], [ 127.808492, 44.086615 ], [ 127.783239, 44.071997 ], [ 127.729036, 44.09908 ], [ 127.735811, 44.11412 ], [ 127.712406, 44.199133 ], [ 127.681609, 44.166946 ], [ 127.641573, 44.193555 ], [ 127.626174, 44.187977 ], [ 127.59045, 44.227872 ], [ 127.623711, 44.278025 ], [ 127.579363, 44.310581 ], [ 127.486356, 44.410275 ], [ 127.50853, 44.437202 ], [ 127.463566, 44.484615 ], [ 127.465414, 44.516628 ], [ 127.485124, 44.528576 ], [ 127.536247, 44.522176 ], [ 127.570124, 44.55033 ], [ 127.557189, 44.575488 ], [ 127.392733, 44.632158 ], [ 127.275705, 44.640249 ], [ 127.261538, 44.61299 ], [ 127.214111, 44.624917 ], [ 127.228893, 44.642804 ], [ 127.182082, 44.644507 ], [ 127.138966, 44.607451 ], [ 127.094619, 44.615972 ], [ 127.089691, 44.593816 ], [ 127.049655, 44.566961 ], [ 127.041648, 44.591258 ], [ 127.044112, 44.653874 ], [ 127.030561, 44.673454 ], [ 127.041032, 44.712169 ], [ 126.9973, 44.764882 ], [ 126.984366, 44.823914 ], [ 126.999764, 44.87398 ], [ 127.021938, 44.898997 ], [ 127.073061, 44.907051 ], [ 127.092771, 44.94688 ], [ 127.050271, 45.004034 ], [ 127.018242, 45.024341 ], [ 126.984981, 45.067893 ], [ 126.970815, 45.070852 ], [ 126.96404, 45.132104 ], [ 126.85625, 45.145613 ], [ 126.792808, 45.135481 ], [ 126.787265, 45.159118 ], [ 126.732446, 45.187385 ], [ 126.685635, 45.187807 ], [ 126.640055, 45.214373 ], [ 126.644983, 45.225334 ], [ 126.569222, 45.252725 ], [ 126.540273, 45.23882 ], [ 126.519331, 45.248091 ], [ 126.402919, 45.222805 ], [ 126.356107, 45.185698 ], [ 126.293282, 45.180214 ], [ 126.285274, 45.162494 ], [ 126.235383, 45.140125 ], [ 126.225528, 45.154054 ], [ 126.166398, 45.13337 ], [ 126.142992, 45.147723 ], [ 126.091869, 45.149411 ], [ 126.047522, 45.170933 ], [ 125.998247, 45.162072 ], [ 125.992703, 45.192447 ], [ 125.957595, 45.201303 ], [ 125.915095, 45.196664 ], [ 125.849805, 45.23882 ], [ 125.823936, 45.237978 ], [ 125.815929, 45.264942 ], [ 125.761726, 45.291472 ], [ 125.726001, 45.336503 ], [ 125.695205, 45.352066 ], [ 125.712451, 45.389485 ], [ 125.711835, 45.477677 ], [ 125.687813, 45.514173 ], [ 125.660096, 45.507043 ], [ 125.61698, 45.517947 ], [ 125.583104, 45.491942 ], [ 125.497488, 45.469283 ], [ 125.480242, 45.486488 ], [ 125.424807, 45.485649 ], [ 125.434662, 45.462988 ], [ 125.398322, 45.416797 ], [ 125.361981, 45.392847 ], [ 125.319482, 45.422678 ], [ 125.301619, 45.402092 ], [ 125.248649, 45.417637 ], [ 125.189518, 45.39915 ], [ 125.137779, 45.409655 ], [ 125.097127, 45.38276 ], [ 125.06633, 45.39915 ], [ 125.08912, 45.420998 ], [ 125.0497, 45.428558 ], [ 125.025678, 45.493201 ], [ 124.961005, 45.495299 ], [ 124.936983, 45.53388 ], [ 124.911114, 45.535976 ], [ 124.884628, 45.495299 ], [ 124.886476, 45.442836 ], [ 124.839665, 45.455852 ], [ 124.792853, 45.436958 ], [ 124.776223, 45.468024 ], [ 124.729412, 45.444096 ], [ 124.690607, 45.452493 ], [ 124.625318, 45.437377 ], [ 124.575427, 45.451234 ], [ 124.579738, 45.424358 ], [ 124.544014, 45.411756 ], [ 124.507058, 45.424778 ], [ 124.480572, 45.456271 ], [ 124.398652, 45.440737 ], [ 124.374015, 45.45795 ], [ 124.352457, 45.496557 ], [ 124.369087, 45.512915 ], [ 124.348761, 45.546874 ], [ 124.287783, 45.539329 ], [ 124.264377, 45.555256 ], [ 124.273001, 45.584163 ], [ 124.238508, 45.591702 ], [ 124.226805, 45.633564 ], [ 124.162132, 45.616404 ], [ 124.128255, 45.641933 ], [ 124.147349, 45.665359 ], [ 124.122096, 45.669123 ], [ 124.13503, 45.690448 ], [ 124.10177, 45.700898 ], [ 124.098074, 45.722628 ], [ 124.054342, 45.751449 ], [ 124.014922, 45.749779 ], [ 124.001987, 45.770655 ], [ 124.064197, 45.802372 ], [ 124.03648, 45.83824 ], [ 124.067277, 45.840325 ], [ 124.061118, 45.886168 ], [ 123.996444, 45.906993 ], [ 123.968727, 45.936551 ], [ 123.973654, 45.973997 ], [ 124.011842, 45.981899 ], [ 123.989053, 46.011833 ], [ 124.040176, 46.01973 ], [ 124.034016, 46.045074 ], [ 124.009995, 46.057534 ], [ 124.015538, 46.088257 ], [ 123.99398, 46.101123 ], [ 124.01677, 46.118549 ], [ 123.991516, 46.143019 ], [ 124.001987, 46.166649 ], [ 123.971806, 46.170379 ], [ 123.956408, 46.206009 ], [ 123.979814, 46.228784 ], [ 123.952096, 46.256516 ], [ 123.960103, 46.288369 ], [ 123.936082, 46.286715 ], [ 123.917604, 46.25693 ], [ 123.896046, 46.303668 ], [ 123.84985, 46.302428 ], [ 123.775938, 46.263136 ], [ 123.726047, 46.255688 ], [ 123.673692, 46.258585 ], [ 123.604706, 46.251964 ], [ 123.569598, 46.223816 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"310000\", \"name\": \"上海市\", \"center\": [ 121.472644, 31.231706 ], \"centroid\": [ 121.438734, 31.07256 ], \"childrenNum\": 16, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 8, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 120.901349, 31.017327 ], [ 120.890878, 31.094229 ], [ 120.859465, 31.100379 ], [ 120.881023, 31.134706 ], [ 120.930298, 31.141365 ], [ 121.018377, 31.134194 ], [ 121.076892, 31.158267 ], [ 121.060261, 31.245289 ], [ 121.090442, 31.291838 ], [ 121.138485, 31.276495 ], [ 121.160659, 31.283144 ], [ 121.129862, 31.302577 ], [ 121.130478, 31.343987 ], [ 121.113848, 31.37465 ], [ 121.143413, 31.392021 ], [ 121.174826, 31.44922 ], [ 121.240731, 31.493627 ], [ 121.247507, 31.476785 ], [ 121.301093, 31.49873 ], [ 121.301093, 31.49873 ], [ 121.343593, 31.511996 ], [ 121.404571, 31.479337 ], [ 121.520984, 31.394575 ], [ 121.599208, 31.37465 ], [ 121.722396, 31.3036 ], [ 121.809859, 31.196669 ], [ 121.946598, 31.066039 ], [ 121.977395, 31.016301 ], [ 121.990945, 30.96859 ], [ 121.994025, 30.862823 ], [ 121.954605, 30.825828 ], [ 121.970004, 30.789333 ], [ 121.943518, 30.776993 ], [ 121.904714, 30.814007 ], [ 121.681128, 30.818633 ], [ 121.601056, 30.805269 ], [ 121.517288, 30.775451 ], [ 121.426129, 30.730192 ], [ 121.362071, 30.679764 ], [ 121.274608, 30.677191 ], [ 121.272144, 30.723504 ], [ 121.232108, 30.755909 ], [ 121.21671, 30.785734 ], [ 121.174826, 30.771851 ], [ 121.123087, 30.77905 ], [ 121.13787, 30.826342 ], [ 121.097833, 30.857171 ], [ 121.060261, 30.845354 ], [ 121.038087, 30.814007 ], [ 120.991892, 30.837133 ], [ 121.020225, 30.872069 ], [ 120.993124, 30.889532 ], [ 121.000515, 30.938309 ], [ 120.989428, 31.01425 ], [ 120.949392, 31.030148 ], [ 120.940153, 31.010146 ], [ 120.901349, 31.017327 ] ] ], [ [ [ 121.974931, 31.61704 ], [ 121.995873, 31.493117 ], [ 121.981706, 31.464024 ], [ 121.890547, 31.428795 ], [ 121.819098, 31.437987 ], [ 121.682976, 31.491075 ], [ 121.625693, 31.501792 ], [ 121.547469, 31.531382 ], [ 121.434136, 31.590535 ], [ 121.395332, 31.585437 ], [ 121.371926, 31.553314 ], [ 121.289391, 31.61653 ], [ 121.145261, 31.75403 ], [ 121.118775, 31.759119 ], [ 121.200079, 31.834907 ], [ 121.265369, 31.863883 ], [ 121.323267, 31.868458 ], [ 121.384861, 31.833382 ], [ 121.431673, 31.769295 ], [ 121.49881, 31.753012 ], [ 121.599824, 31.703128 ], [ 121.64294, 31.697527 ], [ 121.715005, 31.673592 ], [ 121.974931, 31.61704 ] ] ], [ [ [ 121.779062, 31.310247 ], [ 121.727939, 31.35472 ], [ 121.572107, 31.435944 ], [ 121.509897, 31.4824 ], [ 121.520984, 31.494137 ], [ 121.567179, 31.48342 ], [ 121.585657, 31.454836 ], [ 121.742106, 31.407345 ], [ 121.792613, 31.363408 ], [ 121.793845, 31.31945 ], [ 121.779062, 31.310247 ] ] ], [ [ [ 121.801852, 31.356765 ], [ 121.792613, 31.377715 ], [ 121.845584, 31.37465 ], [ 121.951525, 31.337343 ], [ 122.040837, 31.324051 ], [ 122.116597, 31.320984 ], [ 122.122756, 31.307179 ], [ 122.097503, 31.255522 ], [ 122.016199, 31.282121 ], [ 121.932431, 31.283144 ], [ 121.840656, 31.295418 ], [ 121.8037, 31.328652 ], [ 121.801852, 31.356765 ] ] ], [ [ [ 121.626925, 31.445135 ], [ 121.579498, 31.479848 ], [ 121.631853, 31.456878 ], [ 121.626925, 31.445135 ] ] ], [ [ [ 121.943518, 31.215608 ], [ 121.950909, 31.228915 ], [ 122.008808, 31.221238 ], [ 121.995873, 31.160828 ], [ 121.959533, 31.159291 ], [ 121.943518, 31.215608 ] ] ], [ [ [ 121.88254, 31.240684 ], [ 121.923808, 31.234032 ], [ 121.909026, 31.195133 ], [ 121.88254, 31.240684 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"320000\", \"name\": \"江苏省\", \"center\": [ 118.767413, 32.041544 ], \"centroid\": [ 119.486395, 32.983908 ], \"childrenNum\": 13, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 9, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 117.311654, 34.561686 ], [ 117.311654, 34.561686 ], [ 117.32151, 34.566614 ], [ 117.32151, 34.566614 ], [ 117.325205, 34.573021 ], [ 117.325205, 34.573021 ], [ 117.362777, 34.589281 ], [ 117.402813, 34.569571 ], [ 117.402813, 34.550843 ], [ 117.465023, 34.484767 ], [ 117.53832, 34.467006 ], [ 117.592523, 34.462566 ], [ 117.609769, 34.490686 ], [ 117.659044, 34.501044 ], [ 117.684298, 34.547392 ], [ 117.801942, 34.518798 ], [ 117.791471, 34.583368 ], [ 117.793935, 34.651827 ], [ 117.902956, 34.644443 ], [ 117.909732, 34.670533 ], [ 117.951615, 34.678408 ], [ 118.053861, 34.650843 ], [ 118.084042, 34.655766 ], [ 118.114839, 34.614404 ], [ 118.079115, 34.569571 ], [ 118.185056, 34.543942 ], [ 118.16473, 34.50499 ], [ 118.132702, 34.483287 ], [ 118.177665, 34.45319 ], [ 118.179513, 34.379628 ], [ 118.217701, 34.379134 ], [ 118.220165, 34.405802 ], [ 118.277447, 34.404814 ], [ 118.290382, 34.424563 ], [ 118.379693, 34.415183 ], [ 118.404947, 34.427525 ], [ 118.416034, 34.473914 ], [ 118.439439, 34.507949 ], [ 118.424657, 34.595193 ], [ 118.439439, 34.626223 ], [ 118.473932, 34.623269 ], [ 118.460997, 34.656258 ], [ 118.545997, 34.705964 ], [ 118.601431, 34.714327 ], [ 118.607591, 34.694155 ], [ 118.664257, 34.693663 ], [ 118.690127, 34.678408 ], [ 118.739402, 34.693663 ], [ 118.783749, 34.723181 ], [ 118.764039, 34.740396 ], [ 118.719076, 34.745313 ], [ 118.739402, 34.792508 ], [ 118.772047, 34.794474 ], [ 118.80038, 34.843114 ], [ 118.805307, 34.87307 ], [ 118.860742, 34.944233 ], [ 118.86259, 35.025626 ], [ 118.928495, 35.051106 ], [ 118.942662, 35.040817 ], [ 119.027045, 35.055516 ], [ 119.114509, 35.055026 ], [ 119.137915, 35.096167 ], [ 119.217371, 35.106939 ], [ 119.250016, 35.124562 ], [ 119.286972, 35.115261 ], [ 119.306066, 35.076578 ], [ 119.292515, 35.068742 ], [ 119.307298, 35.032977 ], [ 119.291899, 35.028567 ], [ 119.285124, 35.068252 ], [ 119.238313, 35.048657 ], [ 119.211211, 34.981507 ], [ 119.214907, 34.925589 ], [ 119.202588, 34.890253 ], [ 119.217371, 34.827886 ], [ 119.238313, 34.799388 ], [ 119.272189, 34.797914 ], [ 119.312841, 34.774813 ], [ 119.378747, 34.764489 ], [ 119.440957, 34.769406 ], [ 119.439725, 34.785136 ], [ 119.497007, 34.754164 ], [ 119.494543, 34.754656 ], [ 119.381827, 34.752198 ], [ 119.456971, 34.748264 ], [ 119.525956, 34.73351 ], [ 119.465594, 34.672994 ], [ 119.569072, 34.615389 ], [ 119.610956, 34.592729 ], [ 119.641137, 34.569078 ], [ 119.781571, 34.515839 ], [ 119.811752, 34.485754 ], [ 119.962657, 34.459112 ], [ 120.103707, 34.391481 ], [ 120.311895, 34.306991 ], [ 120.314359, 34.255563 ], [ 120.347619, 34.179352 ], [ 120.367329, 34.091674 ], [ 120.48559, 33.859411 ], [ 120.500372, 33.818152 ], [ 120.534249, 33.782346 ], [ 120.583524, 33.668362 ], [ 120.651277, 33.57567 ], [ 120.717183, 33.436945 ], [ 120.741205, 33.337505 ], [ 120.769538, 33.307 ], [ 120.813885, 33.303499 ], [ 120.833595, 33.274984 ], [ 120.819429, 33.237951 ], [ 120.843451, 33.209915 ], [ 120.874247, 33.093672 ], [ 120.871784, 33.047032 ], [ 120.917979, 33.02596 ], [ 120.932762, 33.005887 ], [ 120.957399, 32.893395 ], [ 120.981421, 32.85972 ], [ 120.972182, 32.761134 ], [ 120.953088, 32.714318 ], [ 120.916131, 32.701225 ], [ 120.963559, 32.68259 ], [ 120.979573, 32.636236 ], [ 120.961711, 32.612042 ], [ 121.020225, 32.605489 ], [ 121.153268, 32.52933 ], [ 121.269681, 32.483402 ], [ 121.352216, 32.474315 ], [ 121.390405, 32.460682 ], [ 121.425513, 32.430885 ], [ 121.450151, 32.282256 ], [ 121.493882, 32.263533 ], [ 121.499426, 32.211394 ], [ 121.458774, 32.177462 ], [ 121.542542, 32.152132 ], [ 121.525295, 32.136423 ], [ 121.759352, 32.059362 ], [ 121.772287, 32.032984 ], [ 121.856055, 31.955328 ], [ 121.889315, 31.866425 ], [ 121.970004, 31.718911 ], [ 121.974931, 31.61704 ], [ 121.715005, 31.673592 ], [ 121.64294, 31.697527 ], [ 121.599824, 31.703128 ], [ 121.49881, 31.753012 ], [ 121.431673, 31.769295 ], [ 121.384861, 31.833382 ], [ 121.323267, 31.868458 ], [ 121.265369, 31.863883 ], [ 121.200079, 31.834907 ], [ 121.118775, 31.759119 ], [ 121.145261, 31.75403 ], [ 121.289391, 31.61653 ], [ 121.371926, 31.553314 ], [ 121.343593, 31.511996 ], [ 121.301093, 31.49873 ], [ 121.301093, 31.49873 ], [ 121.247507, 31.476785 ], [ 121.240731, 31.493627 ], [ 121.174826, 31.44922 ], [ 121.143413, 31.392021 ], [ 121.113848, 31.37465 ], [ 121.130478, 31.343987 ], [ 121.129862, 31.302577 ], [ 121.160659, 31.283144 ], [ 121.138485, 31.276495 ], [ 121.090442, 31.291838 ], [ 121.060261, 31.245289 ], [ 121.076892, 31.158267 ], [ 121.018377, 31.134194 ], [ 120.930298, 31.141365 ], [ 120.881023, 31.134706 ], [ 120.859465, 31.100379 ], [ 120.890878, 31.094229 ], [ 120.901349, 31.017327 ], [ 120.865624, 30.989627 ], [ 120.820661, 31.006556 ], [ 120.770154, 30.996809 ], [ 120.746132, 30.962432 ], [ 120.698089, 30.970643 ], [ 120.684538, 30.955247 ], [ 120.709176, 30.933176 ], [ 120.713487, 30.88491 ], [ 120.68269, 30.882342 ], [ 120.653741, 30.846896 ], [ 120.589068, 30.854603 ], [ 120.563814, 30.835592 ], [ 120.503452, 30.757967 ], [ 120.489285, 30.763624 ], [ 120.460336, 30.839702 ], [ 120.441858, 30.860768 ], [ 120.435083, 30.920855 ], [ 120.42338, 30.902884 ], [ 120.35809, 30.886964 ], [ 120.371025, 30.948575 ], [ 120.316206, 30.933689 ], [ 120.223816, 30.926502 ], [ 120.149903, 30.937283 ], [ 120.111099, 30.955761 ], [ 120.052584, 31.00553 ], [ 120.001461, 31.027071 ], [ 119.988527, 31.059375 ], [ 119.946027, 31.106016 ], [ 119.921389, 31.170045 ], [ 119.878274, 31.160828 ], [ 119.827151, 31.174142 ], [ 119.809904, 31.148536 ], [ 119.779723, 31.17875 ], [ 119.715666, 31.169533 ], [ 119.705811, 31.152634 ], [ 119.678093, 31.167997 ], [ 119.623891, 31.130096 ], [ 119.599869, 31.10909 ], [ 119.532732, 31.159291 ], [ 119.461283, 31.156219 ], [ 119.439109, 31.177214 ], [ 119.391682, 31.174142 ], [ 119.360269, 31.213049 ], [ 119.374435, 31.258591 ], [ 119.350414, 31.301043 ], [ 119.338095, 31.259103 ], [ 119.294363, 31.263195 ], [ 119.266646, 31.250405 ], [ 119.198277, 31.270357 ], [ 119.197661, 31.295418 ], [ 119.158241, 31.294907 ], [ 119.107118, 31.250917 ], [ 119.10527, 31.235055 ], [ 119.014727, 31.241707 ], [ 118.984546, 31.237102 ], [ 118.870597, 31.242219 ], [ 118.794836, 31.229426 ], [ 118.756648, 31.279564 ], [ 118.726467, 31.282121 ], [ 118.720924, 31.322518 ], [ 118.745561, 31.372606 ], [ 118.767735, 31.363919 ], [ 118.824401, 31.375672 ], [ 118.852119, 31.393553 ], [ 118.883532, 31.500261 ], [ 118.885995, 31.519139 ], [ 118.881684, 31.564023 ], [ 118.858894, 31.623665 ], [ 118.802844, 31.619078 ], [ 118.773894, 31.682759 ], [ 118.748025, 31.675629 ], [ 118.736322, 31.633347 ], [ 118.643315, 31.649651 ], [ 118.643315, 31.671555 ], [ 118.697518, 31.709747 ], [ 118.653786, 31.73011 ], [ 118.641467, 31.75861 ], [ 118.571866, 31.746397 ], [ 118.5577, 31.73011 ], [ 118.521975, 31.743343 ], [ 118.533678, 31.76726 ], [ 118.481939, 31.778453 ], [ 118.504729, 31.841516 ], [ 118.466541, 31.857784 ], [ 118.472084, 31.879639 ], [ 118.363679, 31.930443 ], [ 118.389548, 31.985281 ], [ 118.394476, 32.076098 ], [ 118.433896, 32.086746 ], [ 118.501033, 32.121726 ], [ 118.49549, 32.165304 ], [ 118.510888, 32.194176 ], [ 118.643931, 32.209875 ], [ 118.674728, 32.250375 ], [ 118.657482, 32.30148 ], [ 118.703061, 32.328792 ], [ 118.685199, 32.403604 ], [ 118.691359, 32.472295 ], [ 118.628533, 32.467751 ], [ 118.592192, 32.481383 ], [ 118.608823, 32.536899 ], [ 118.564475, 32.562122 ], [ 118.568787, 32.585825 ], [ 118.59712, 32.600951 ], [ 118.632844, 32.578261 ], [ 118.658714, 32.594397 ], [ 118.688895, 32.588346 ], [ 118.719076, 32.614059 ], [ 118.719076, 32.614059 ], [ 118.73509, 32.58885 ], [ 118.757264, 32.603976 ], [ 118.784981, 32.582295 ], [ 118.820706, 32.60448 ], [ 118.84288, 32.56767 ], [ 118.908169, 32.59238 ], [ 118.890923, 32.553042 ], [ 118.92172, 32.557078 ], [ 118.922336, 32.557078 ], [ 118.92172, 32.557078 ], [ 118.922336, 32.557078 ], [ 118.975923, 32.505108 ], [ 119.041212, 32.515201 ], [ 119.084944, 32.452602 ], [ 119.142226, 32.499556 ], [ 119.168096, 32.536394 ], [ 119.152697, 32.557582 ], [ 119.22045, 32.576748 ], [ 119.230921, 32.607001 ], [ 119.208748, 32.641276 ], [ 119.211827, 32.708275 ], [ 119.184726, 32.825529 ], [ 119.113277, 32.823014 ], [ 119.054763, 32.8748 ], [ 119.020886, 32.955685 ], [ 118.993169, 32.958196 ], [ 118.934039, 32.93861 ], [ 118.892771, 32.941121 ], [ 118.89585, 32.957694 ], [ 118.89585, 32.957694 ], [ 118.849039, 32.956689 ], [ 118.846575, 32.922034 ], [ 118.821322, 32.920527 ], [ 118.810235, 32.853687 ], [ 118.743097, 32.853184 ], [ 118.743097, 32.853184 ], [ 118.73817, 32.772708 ], [ 118.756648, 32.737477 ], [ 118.707373, 32.72036 ], [ 118.642699, 32.744525 ], [ 118.572482, 32.719856 ], [ 118.560163, 32.729926 ], [ 118.483787, 32.721367 ], [ 118.450526, 32.743518 ], [ 118.411106, 32.715828 ], [ 118.375382, 32.718849 ], [ 118.363063, 32.770695 ], [ 118.334114, 32.761637 ], [ 118.300237, 32.783275 ], [ 118.301469, 32.846145 ], [ 118.250346, 32.848157 ], [ 118.2331, 32.914498 ], [ 118.252194, 32.936601 ], [ 118.291614, 32.946143 ], [ 118.303933, 32.96874 ], [ 118.26944, 32.969242 ], [ 118.244803, 32.998359 ], [ 118.243571, 33.027967 ], [ 118.219549, 33.114227 ], [ 118.217085, 33.191888 ], [ 118.178281, 33.217926 ], [ 118.149332, 33.169348 ], [ 118.038463, 33.134776 ], [ 118.037231, 33.152314 ], [ 117.988572, 33.180869 ], [ 117.977485, 33.226437 ], [ 117.942376, 33.224936 ], [ 117.939297, 33.262475 ], [ 117.974405, 33.279487 ], [ 117.992883, 33.333005 ], [ 118.029224, 33.374995 ], [ 118.016905, 33.402978 ], [ 118.027376, 33.455421 ], [ 118.050782, 33.491863 ], [ 118.107448, 33.475391 ], [ 118.117919, 33.594615 ], [ 118.112376, 33.617045 ], [ 118.16781, 33.663381 ], [ 118.161035, 33.735576 ], [ 118.117919, 33.766427 ], [ 118.065564, 33.76593 ], [ 118.019985, 33.738562 ], [ 117.972557, 33.74951 ], [ 117.901724, 33.720146 ], [ 117.843826, 33.736074 ], [ 117.791471, 33.733585 ], [ 117.750203, 33.710688 ], [ 117.72495, 33.74951 ], [ 117.739732, 33.758467 ], [ 117.759442, 33.874318 ], [ 117.753899, 33.891211 ], [ 117.715095, 33.879287 ], [ 117.672595, 33.934916 ], [ 117.671363, 33.992494 ], [ 117.629479, 34.028708 ], [ 117.612849, 34.000433 ], [ 117.569117, 33.985051 ], [ 117.543248, 34.038627 ], [ 117.514914, 34.060941 ], [ 117.435458, 34.028212 ], [ 117.404045, 34.03218 ], [ 117.357234, 34.088205 ], [ 117.311654, 34.067882 ], [ 117.277162, 34.078787 ], [ 117.257452, 34.065899 ], [ 117.192162, 34.068873 ], [ 117.130568, 34.101586 ], [ 117.123793, 34.128342 ], [ 117.046801, 34.151622 ], [ 117.025243, 34.167469 ], [ 117.051112, 34.221425 ], [ 116.969192, 34.283753 ], [ 116.983359, 34.348011 ], [ 116.960569, 34.363821 ], [ 116.969192, 34.389012 ], [ 116.909446, 34.408271 ], [ 116.828142, 34.389012 ], [ 116.782563, 34.429993 ], [ 116.773939, 34.453683 ], [ 116.722816, 34.472434 ], [ 116.662454, 34.472927 ], [ 116.592237, 34.493646 ], [ 116.594085, 34.511894 ], [ 116.490607, 34.573513 ], [ 116.477057, 34.614896 ], [ 116.432709, 34.630163 ], [ 116.430245, 34.650843 ], [ 116.374195, 34.640011 ], [ 116.392057, 34.710391 ], [ 116.363724, 34.715311 ], [ 116.369267, 34.749247 ], [ 116.403144, 34.756131 ], [ 116.408071, 34.850972 ], [ 116.445028, 34.895652 ], [ 116.557745, 34.908905 ], [ 116.613795, 34.922645 ], [ 116.622418, 34.939818 ], [ 116.677853, 34.939327 ], [ 116.781331, 34.916757 ], [ 116.781947, 34.961891 ], [ 116.809048, 34.968757 ], [ 116.821983, 34.929515 ], [ 116.858323, 34.928533 ], [ 116.922381, 34.894671 ], [ 116.929156, 34.843114 ], [ 116.966113, 34.844588 ], [ 116.979047, 34.815113 ], [ 116.95133, 34.81069 ], [ 116.969192, 34.771864 ], [ 117.022163, 34.759081 ], [ 117.070206, 34.713835 ], [ 117.061583, 34.675947 ], [ 117.073286, 34.639026 ], [ 117.104083, 34.648874 ], [ 117.15151, 34.559222 ], [ 117.139191, 34.526687 ], [ 117.166293, 34.434435 ], [ 117.248213, 34.451216 ], [ 117.252524, 34.48674 ], [ 117.27285, 34.499565 ], [ 117.267307, 34.528659 ], [ 117.311654, 34.561686 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"330000\", \"name\": \"浙江省\", \"center\": [ 120.153576, 30.287459 ], \"centroid\": [ 120.109921, 29.181449 ], \"childrenNum\": 11, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 10, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 118.433896, 28.288335 ], [ 118.480091, 28.327325 ], [ 118.455454, 28.384204 ], [ 118.432048, 28.402104 ], [ 118.456686, 28.424738 ], [ 118.474548, 28.478934 ], [ 118.414802, 28.497344 ], [ 118.4302, 28.515225 ], [ 118.412338, 28.55676 ], [ 118.428352, 28.617193 ], [ 118.428352, 28.617193 ], [ 118.428352, 28.681267 ], [ 118.403099, 28.702791 ], [ 118.364295, 28.813491 ], [ 118.300237, 28.826075 ], [ 118.270056, 28.918836 ], [ 118.195527, 28.904167 ], [ 118.227556, 28.942406 ], [ 118.165346, 28.986912 ], [ 118.133933, 28.983771 ], [ 118.115455, 29.009944 ], [ 118.115455, 29.009944 ], [ 118.097593, 28.998952 ], [ 118.066796, 29.053898 ], [ 118.076035, 29.074822 ], [ 118.037847, 29.102017 ], [ 118.045238, 29.149068 ], [ 118.027992, 29.167882 ], [ 118.042159, 29.210202 ], [ 118.073571, 29.216993 ], [ 118.077883, 29.290614 ], [ 118.138861, 29.283828 ], [ 118.178281, 29.297921 ], [ 118.166578, 29.314099 ], [ 118.205382, 29.343839 ], [ 118.193064, 29.395472 ], [ 118.248498, 29.431443 ], [ 118.316252, 29.422581 ], [ 118.306396, 29.479384 ], [ 118.329802, 29.495012 ], [ 118.347664, 29.474174 ], [ 118.381541, 29.504909 ], [ 118.496106, 29.519492 ], [ 118.500417, 29.57572 ], [ 118.532446, 29.588731 ], [ 118.573714, 29.638159 ], [ 118.61991, 29.654282 ], [ 118.647011, 29.64336 ], [ 118.700598, 29.706277 ], [ 118.744945, 29.73902 ], [ 118.740634, 29.814859 ], [ 118.841032, 29.891159 ], [ 118.838568, 29.934733 ], [ 118.894619, 29.937845 ], [ 118.902626, 30.029078 ], [ 118.878604, 30.064822 ], [ 118.873677, 30.11505 ], [ 118.895234, 30.148694 ], [ 118.852119, 30.149729 ], [ 118.852735, 30.166805 ], [ 118.929727, 30.2025 ], [ 118.905089, 30.216464 ], [ 118.877988, 30.282637 ], [ 118.880452, 30.31519 ], [ 118.954365, 30.360126 ], [ 118.988857, 30.332237 ], [ 119.06277, 30.304856 ], [ 119.091719, 30.323972 ], [ 119.126828, 30.304856 ], [ 119.201356, 30.290905 ], [ 119.236465, 30.297106 ], [ 119.246936, 30.341018 ], [ 119.277117, 30.341018 ], [ 119.326392, 30.372002 ], [ 119.349182, 30.349281 ], [ 119.402768, 30.374584 ], [ 119.36766, 30.38491 ], [ 119.335015, 30.448389 ], [ 119.336247, 30.508734 ], [ 119.326392, 30.532964 ], [ 119.272189, 30.510281 ], [ 119.237081, 30.546881 ], [ 119.265414, 30.574709 ], [ 119.238929, 30.609225 ], [ 119.323312, 30.630341 ], [ 119.343022, 30.664322 ], [ 119.39045, 30.685941 ], [ 119.408312, 30.645274 ], [ 119.444652, 30.650422 ], [ 119.482841, 30.704467 ], [ 119.479761, 30.772365 ], [ 119.527188, 30.77905 ], [ 119.55429, 30.825828 ], [ 119.575847, 30.829939 ], [ 119.557369, 30.874124 ], [ 119.563529, 30.919315 ], [ 119.582007, 30.932149 ], [ 119.580159, 30.967051 ], [ 119.633746, 31.019379 ], [ 119.629434, 31.085517 ], [ 119.649144, 31.104991 ], [ 119.623891, 31.130096 ], [ 119.678093, 31.167997 ], [ 119.705811, 31.152634 ], [ 119.715666, 31.169533 ], [ 119.779723, 31.17875 ], [ 119.809904, 31.148536 ], [ 119.827151, 31.174142 ], [ 119.878274, 31.160828 ], [ 119.921389, 31.170045 ], [ 119.946027, 31.106016 ], [ 119.988527, 31.059375 ], [ 120.001461, 31.027071 ], [ 120.052584, 31.00553 ], [ 120.111099, 30.955761 ], [ 120.149903, 30.937283 ], [ 120.223816, 30.926502 ], [ 120.316206, 30.933689 ], [ 120.371025, 30.948575 ], [ 120.35809, 30.886964 ], [ 120.42338, 30.902884 ], [ 120.435083, 30.920855 ], [ 120.441858, 30.860768 ], [ 120.460336, 30.839702 ], [ 120.489285, 30.763624 ], [ 120.503452, 30.757967 ], [ 120.563814, 30.835592 ], [ 120.589068, 30.854603 ], [ 120.653741, 30.846896 ], [ 120.68269, 30.882342 ], [ 120.713487, 30.88491 ], [ 120.709176, 30.933176 ], [ 120.684538, 30.955247 ], [ 120.698089, 30.970643 ], [ 120.746132, 30.962432 ], [ 120.770154, 30.996809 ], [ 120.820661, 31.006556 ], [ 120.865624, 30.989627 ], [ 120.901349, 31.017327 ], [ 120.940153, 31.010146 ], [ 120.949392, 31.030148 ], [ 120.989428, 31.01425 ], [ 121.000515, 30.938309 ], [ 120.993124, 30.889532 ], [ 121.020225, 30.872069 ], [ 120.991892, 30.837133 ], [ 121.038087, 30.814007 ], [ 121.060261, 30.845354 ], [ 121.097833, 30.857171 ], [ 121.13787, 30.826342 ], [ 121.123087, 30.77905 ], [ 121.174826, 30.771851 ], [ 121.21671, 30.785734 ], [ 121.232108, 30.755909 ], [ 121.272144, 30.723504 ], [ 121.274608, 30.677191 ], [ 121.239499, 30.648878 ], [ 121.188992, 30.632916 ], [ 121.148956, 30.599953 ], [ 121.058413, 30.563888 ], [ 121.092906, 30.515952 ], [ 121.183449, 30.434458 ], [ 121.225333, 30.404526 ], [ 121.328195, 30.397299 ], [ 121.371926, 30.37097 ], [ 121.395332, 30.338435 ], [ 121.497578, 30.258861 ], [ 121.561636, 30.184395 ], [ 121.635548, 30.070002 ], [ 121.652795, 30.071037 ], [ 121.699606, 30.007832 ], [ 121.721164, 29.992802 ], [ 121.78399, 29.99332 ], [ 121.835113, 29.958068 ], [ 121.919497, 29.920729 ], [ 121.971235, 29.955476 ], [ 122.00388, 29.92021 ], [ 122.00696, 29.891678 ], [ 122.140003, 29.901535 ], [ 122.143082, 29.877668 ], [ 122.10243, 29.859504 ], [ 122.043916, 29.822647 ], [ 122.003264, 29.762401 ], [ 121.937359, 29.748373 ], [ 121.833265, 29.653242 ], [ 121.872685, 29.632437 ], [ 121.909641, 29.650122 ], [ 121.966308, 29.636078 ], [ 122.000185, 29.582486 ], [ 121.995257, 29.545007 ], [ 121.968772, 29.515846 ], [ 121.973083, 29.477821 ], [ 121.993409, 29.45229 ], [ 121.975547, 29.411113 ], [ 121.937975, 29.384 ], [ 121.936127, 29.348012 ], [ 121.958301, 29.334448 ], [ 121.94475, 29.28435 ], [ 122.000185, 29.278608 ], [ 122.002032, 29.260336 ], [ 121.966924, 29.249894 ], [ 121.971851, 29.193485 ], [ 121.948446, 29.193485 ], [ 121.986634, 29.154817 ], [ 121.988482, 29.110906 ], [ 121.970004, 29.092604 ], [ 121.966308, 29.052852 ], [ 121.884388, 29.105677 ], [ 121.85975, 29.086328 ], [ 121.811091, 29.10986 ], [ 121.780294, 29.10986 ], [ 121.767975, 29.166837 ], [ 121.750113, 29.136523 ], [ 121.715621, 29.125022 ], [ 121.608447, 29.168927 ], [ 121.616454, 29.143318 ], [ 121.660186, 29.118226 ], [ 121.658954, 29.058606 ], [ 121.712541, 29.028783 ], [ 121.711309, 28.985865 ], [ 121.743338, 28.954451 ], [ 121.772287, 28.898404 ], [ 121.774751, 28.863818 ], [ 121.687287, 28.863294 ], [ 121.704534, 28.804577 ], [ 121.689135, 28.719062 ], [ 121.646019, 28.682842 ], [ 121.540694, 28.655537 ], [ 121.557324, 28.645033 ], [ 121.596128, 28.575156 ], [ 121.634317, 28.562542 ], [ 121.646019, 28.511544 ], [ 121.671273, 28.472621 ], [ 121.692831, 28.407368 ], [ 121.658954, 28.392628 ], [ 121.634317, 28.347868 ], [ 121.660186, 28.355768 ], [ 121.669425, 28.33312 ], [ 121.627541, 28.251966 ], [ 121.580114, 28.240368 ], [ 121.571491, 28.279376 ], [ 121.538846, 28.299401 ], [ 121.488955, 28.301509 ], [ 121.45631, 28.250385 ], [ 121.402107, 28.197127 ], [ 121.373774, 28.133287 ], [ 121.328195, 28.134343 ], [ 121.299862, 28.067297 ], [ 121.261057, 28.034551 ], [ 121.176058, 28.022401 ], [ 121.140949, 28.031382 ], [ 121.121239, 28.12537 ], [ 121.108304, 28.139092 ], [ 121.059029, 28.096338 ], [ 121.015298, 27.981714 ], [ 120.991892, 27.95 ], [ 121.05595, 27.900294 ], [ 121.099681, 27.895005 ], [ 121.162507, 27.90717 ], [ 121.162507, 27.879136 ], [ 121.193304, 27.872259 ], [ 121.192072, 27.822518 ], [ 121.152652, 27.810344 ], [ 121.153268, 27.809815 ], [ 121.149572, 27.801875 ], [ 121.149572, 27.801345 ], [ 121.13479, 27.787051 ], [ 121.134174, 27.787051 ], [ 121.152036, 27.815638 ], [ 121.107688, 27.81352 ], [ 121.070116, 27.834162 ], [ 121.027616, 27.832574 ], [ 120.97403, 27.887071 ], [ 120.942001, 27.896592 ], [ 120.910588, 27.864852 ], [ 120.840371, 27.758986 ], [ 120.797871, 27.779638 ], [ 120.760915, 27.717671 ], [ 120.709176, 27.682699 ], [ 120.685154, 27.622797 ], [ 120.634647, 27.577186 ], [ 120.637111, 27.561271 ], [ 120.703016, 27.478475 ], [ 120.673451, 27.420055 ], [ 120.665444, 27.357884 ], [ 120.580444, 27.321203 ], [ 120.554575, 27.25206 ], [ 120.574901, 27.234501 ], [ 120.545952, 27.156785 ], [ 120.492365, 27.136016 ], [ 120.461568, 27.142407 ], [ 120.404286, 27.204166 ], [ 120.401822, 27.250996 ], [ 120.430155, 27.258976 ], [ 120.343924, 27.363199 ], [ 120.340844, 27.399867 ], [ 120.273091, 27.38924 ], [ 120.26262, 27.432804 ], [ 120.221352, 27.420055 ], [ 120.134504, 27.420055 ], [ 120.136968, 27.402523 ], [ 120.096316, 27.390302 ], [ 120.052584, 27.338747 ], [ 120.026099, 27.344063 ], [ 120.008237, 27.375423 ], [ 119.960194, 27.365857 ], [ 119.938636, 27.329709 ], [ 119.843165, 27.300464 ], [ 119.768636, 27.307909 ], [ 119.782187, 27.330241 ], [ 119.739687, 27.362668 ], [ 119.750774, 27.373829 ], [ 119.711354, 27.403054 ], [ 119.685485, 27.438646 ], [ 119.703347, 27.446613 ], [ 119.70889, 27.514042 ], [ 119.690412, 27.537394 ], [ 119.659615, 27.540578 ], [ 119.675014, 27.574534 ], [ 119.630666, 27.582491 ], [ 119.626354, 27.620676 ], [ 119.644217, 27.663619 ], [ 119.606028, 27.674749 ], [ 119.541971, 27.666799 ], [ 119.501319, 27.649837 ], [ 119.501935, 27.610601 ], [ 119.466826, 27.526249 ], [ 119.438493, 27.508734 ], [ 119.416935, 27.539517 ], [ 119.360269, 27.524657 ], [ 119.334399, 27.480067 ], [ 119.285124, 27.457766 ], [ 119.26911, 27.42218 ], [ 119.224146, 27.416868 ], [ 119.14777, 27.424836 ], [ 119.121284, 27.438115 ], [ 119.129907, 27.475289 ], [ 119.092335, 27.466262 ], [ 119.03998, 27.478475 ], [ 119.020886, 27.498118 ], [ 118.983314, 27.498649 ], [ 118.986393, 27.47582 ], [ 118.955597, 27.4498 ], [ 118.907553, 27.460952 ], [ 118.869365, 27.540047 ], [ 118.909401, 27.568168 ], [ 118.913713, 27.619616 ], [ 118.879836, 27.667859 ], [ 118.873677, 27.733563 ], [ 118.829329, 27.847921 ], [ 118.818242, 27.916689 ], [ 118.753568, 27.947885 ], [ 118.730163, 27.970615 ], [ 118.733858, 28.027684 ], [ 118.719076, 28.063601 ], [ 118.767735, 28.10584 ], [ 118.802228, 28.117453 ], [ 118.805923, 28.154923 ], [ 118.771431, 28.188687 ], [ 118.804075, 28.207675 ], [ 118.802228, 28.240368 ], [ 118.756032, 28.252493 ], [ 118.719692, 28.312047 ], [ 118.699366, 28.309939 ], [ 118.674728, 28.27147 ], [ 118.651322, 28.277267 ], [ 118.595272, 28.258292 ], [ 118.588497, 28.282538 ], [ 118.493026, 28.262509 ], [ 118.490562, 28.238259 ], [ 118.444367, 28.253548 ], [ 118.433896, 28.288335 ] ] ], [ [ [ 122.163408, 29.988137 ], [ 122.118445, 29.986582 ], [ 122.106742, 30.005759 ], [ 122.027902, 29.991247 ], [ 121.978011, 30.059125 ], [ 121.989714, 30.077252 ], [ 121.983554, 30.100554 ], [ 121.934895, 30.161631 ], [ 121.955221, 30.183878 ], [ 122.048844, 30.147141 ], [ 122.095655, 30.158008 ], [ 122.152938, 30.113497 ], [ 122.293988, 30.100554 ], [ 122.288444, 30.073109 ], [ 122.310002, 30.039958 ], [ 122.343879, 30.020269 ], [ 122.341415, 29.976733 ], [ 122.322321, 29.940438 ], [ 122.279205, 29.937326 ], [ 122.239785, 29.962735 ], [ 122.163408, 29.988137 ] ] ], [ [ [ 122.213915, 30.186464 ], [ 122.168336, 30.138343 ], [ 122.143698, 30.163183 ], [ 122.152938, 30.19112 ], [ 122.178807, 30.199396 ], [ 122.213915, 30.186464 ] ] ], [ [ [ 122.229314, 29.711995 ], [ 122.231162, 29.710435 ], [ 122.269966, 29.685482 ], [ 122.210836, 29.700559 ], [ 122.229314, 29.711995 ] ] ], [ [ [ 122.427646, 30.738422 ], [ 122.445509, 30.745109 ], [ 122.475074, 30.714243 ], [ 122.528045, 30.725047 ], [ 122.532972, 30.696748 ], [ 122.427031, 30.697777 ], [ 122.427646, 30.738422 ] ] ], [ [ [ 122.162793, 30.329654 ], [ 122.176343, 30.351863 ], [ 122.191126, 30.329654 ], [ 122.228082, 30.329654 ], [ 122.247176, 30.30124 ], [ 122.231778, 30.234562 ], [ 122.154169, 30.244903 ], [ 122.058083, 30.291938 ], [ 122.162793, 30.329654 ] ] ], [ [ [ 122.317393, 30.249556 ], [ 122.333408, 30.272817 ], [ 122.40732, 30.272817 ], [ 122.417175, 30.238699 ], [ 122.365437, 30.255242 ], [ 122.358661, 30.236113 ], [ 122.277973, 30.242835 ], [ 122.317393, 30.249556 ] ] ], [ [ [ 122.026054, 29.178333 ], [ 122.036525, 29.20759 ], [ 122.075945, 29.176243 ], [ 122.056851, 29.158476 ], [ 122.013119, 29.151681 ], [ 122.026054, 29.178333 ] ] ], [ [ [ 122.372212, 29.893234 ], [ 122.362973, 29.894272 ], [ 122.353734, 29.89946 ], [ 122.338951, 29.911911 ], [ 122.330944, 29.937845 ], [ 122.351886, 29.959105 ], [ 122.398081, 29.9394 ], [ 122.411632, 29.951846 ], [ 122.43319, 29.919173 ], [ 122.433806, 29.883376 ], [ 122.401777, 29.869884 ], [ 122.415944, 29.828877 ], [ 122.386379, 29.834069 ], [ 122.372212, 29.893234 ] ] ], [ [ [ 122.43011, 30.408655 ], [ 122.352502, 30.422074 ], [ 122.318625, 30.407106 ], [ 122.281669, 30.418461 ], [ 122.277973, 30.471603 ], [ 122.37406, 30.461802 ], [ 122.432574, 30.445294 ], [ 122.43011, 30.408655 ] ] ], [ [ [ 121.837577, 28.770484 ], [ 121.861598, 28.814016 ], [ 121.86283, 28.782024 ], [ 121.837577, 28.770484 ] ] ], [ [ [ 122.265038, 29.84549 ], [ 122.319241, 29.829397 ], [ 122.299531, 29.819532 ], [ 122.325401, 29.781621 ], [ 122.310002, 29.766557 ], [ 122.248408, 29.804473 ], [ 122.221307, 29.832512 ], [ 122.265038, 29.84549 ] ] ], [ [ [ 121.790765, 29.082144 ], [ 121.82033, 29.099402 ], [ 121.84312, 29.082144 ], [ 121.832649, 29.050236 ], [ 121.790765, 29.082144 ] ] ], [ [ [ 121.943518, 30.776993 ], [ 121.970004, 30.789333 ], [ 121.987866, 30.753338 ], [ 121.992793, 30.695204 ], [ 122.011271, 30.66947 ], [ 122.075329, 30.647848 ], [ 122.133227, 30.595317 ], [ 122.087032, 30.602014 ], [ 121.997105, 30.658659 ], [ 121.968156, 30.688514 ], [ 121.943518, 30.776993 ] ] ], [ [ [ 121.889315, 28.471569 ], [ 121.881924, 28.502603 ], [ 121.918881, 28.497344 ], [ 121.889315, 28.471569 ] ] ], [ [ [ 122.182503, 29.650642 ], [ 122.138155, 29.662083 ], [ 122.095655, 29.716673 ], [ 122.074097, 29.701599 ], [ 122.047612, 29.719791 ], [ 122.083952, 29.78318 ], [ 122.13138, 29.788893 ], [ 122.146778, 29.749412 ], [ 122.200365, 29.712515 ], [ 122.211452, 29.692241 ], [ 122.182503, 29.650642 ] ] ], [ [ [ 122.461523, 29.944068 ], [ 122.459059, 29.938882 ], [ 122.467067, 29.928509 ], [ 122.462755, 29.927991 ], [ 122.457827, 29.927472 ], [ 122.45598, 29.926435 ], [ 122.452284, 29.935252 ], [ 122.4529, 29.936807 ], [ 122.449204, 29.9394 ], [ 122.450436, 29.940956 ], [ 122.451052, 29.940956 ], [ 122.451668, 29.943031 ], [ 122.460291, 29.947179 ], [ 122.459675, 29.944586 ], [ 122.461523, 29.944068 ] ] ], [ [ [ 122.570544, 30.644244 ], [ 122.546523, 30.651967 ], [ 122.559457, 30.679764 ], [ 122.570544, 30.644244 ] ] ], [ [ [ 121.869605, 28.423685 ], [ 121.889931, 28.45105 ], [ 121.910873, 28.44 ], [ 121.869605, 28.423685 ] ] ], [ [ [ 122.391306, 29.970512 ], [ 122.3679, 29.980361 ], [ 122.378371, 30.023896 ], [ 122.411632, 30.025969 ], [ 122.391306, 29.970512 ] ] ], [ [ [ 122.065474, 30.179739 ], [ 122.025438, 30.161631 ], [ 122.017431, 30.186464 ], [ 122.055619, 30.200431 ], [ 122.065474, 30.179739 ] ] ], [ [ [ 121.850511, 29.977251 ], [ 121.844968, 29.982953 ], [ 121.84004, 30.047211 ], [ 121.848663, 30.101072 ], [ 121.88562, 30.094859 ], [ 121.924424, 30.052391 ], [ 121.933047, 29.994875 ], [ 121.874533, 29.964809 ], [ 121.850511, 29.977251 ] ] ], [ [ [ 121.066421, 27.478475 ], [ 121.067036, 27.478475 ], [ 121.107073, 27.443958 ], [ 121.066421, 27.461483 ], [ 121.066421, 27.478475 ] ] ], [ [ [ 121.952141, 29.187738 ], [ 121.976779, 29.191918 ], [ 121.979243, 29.160043 ], [ 121.952141, 29.187738 ] ] ], [ [ [ 122.038373, 29.759284 ], [ 122.02975, 29.716673 ], [ 122.011271, 29.746294 ], [ 122.038373, 29.759284 ] ] ], [ [ [ 121.957685, 30.287804 ], [ 121.921344, 30.30744 ], [ 121.94167, 30.33327 ], [ 121.989098, 30.339985 ], [ 122.0008, 30.308473 ], [ 121.957685, 30.287804 ] ] ], [ [ [ 121.940438, 30.114533 ], [ 121.962612, 30.106249 ], [ 121.945982, 30.064304 ], [ 121.910257, 30.089163 ], [ 121.940438, 30.114533 ] ] ], [ [ [ 122.155401, 29.970512 ], [ 122.154169, 29.97103 ], [ 122.152322, 29.97103 ], [ 122.163408, 29.988137 ], [ 122.196053, 29.960661 ], [ 122.155401, 29.970512 ] ] ], [ [ [ 122.287828, 29.723949 ], [ 122.251488, 29.731225 ], [ 122.2133, 29.771752 ], [ 122.241633, 29.784738 ], [ 122.258263, 29.753569 ], [ 122.301379, 29.748373 ], [ 122.287828, 29.723949 ] ] ], [ [ [ 121.134174, 27.787051 ], [ 121.13479, 27.787051 ], [ 121.134174, 27.785992 ], [ 121.134174, 27.787051 ] ] ], [ [ [ 122.264423, 30.269716 ], [ 122.300147, 30.271266 ], [ 122.315545, 30.250073 ], [ 122.253952, 30.237147 ], [ 122.264423, 30.269716 ] ] ], [ [ [ 122.282901, 29.860542 ], [ 122.301379, 29.883895 ], [ 122.343263, 29.882857 ], [ 122.343263, 29.860542 ], [ 122.30877, 29.849642 ], [ 122.282901, 29.860542 ] ] ], [ [ [ 122.781196, 30.694175 ], [ 122.757174, 30.713728 ], [ 122.778732, 30.729677 ], [ 122.799674, 30.716301 ], [ 122.781196, 30.694175 ] ] ], [ [ [ 121.098449, 27.937311 ], [ 121.038087, 27.948942 ], [ 121.0695, 27.984357 ], [ 121.120623, 27.986471 ], [ 121.152652, 27.961629 ], [ 121.098449, 27.937311 ] ] ], [ [ [ 121.185913, 27.963215 ], [ 121.17113, 27.978543 ], [ 121.197616, 28.000739 ], [ 121.237652, 27.988056 ], [ 121.185913, 27.963215 ] ] ], [ [ [ 122.454132, 29.956513 ], [ 122.455364, 29.955994 ], [ 122.458443, 29.951846 ], [ 122.459059, 29.950809 ], [ 122.447972, 29.947698 ], [ 122.446741, 29.951327 ], [ 122.445509, 29.952365 ], [ 122.447972, 29.955994 ], [ 122.454132, 29.956513 ] ] ], [ [ [ 122.836014, 30.698806 ], [ 122.807681, 30.714243 ], [ 122.831087, 30.728648 ], [ 122.836014, 30.698806 ] ] ], [ [ [ 122.200365, 29.969475 ], [ 122.239785, 29.960142 ], [ 122.273662, 29.93214 ], [ 122.233626, 29.946661 ], [ 122.200365, 29.969475 ] ] ], [ [ [ 122.029134, 29.954957 ], [ 122.058699, 29.955994 ], [ 122.043916, 29.930584 ], [ 122.029134, 29.954957 ] ] ], [ [ [ 121.044247, 27.979072 ], [ 121.073812, 28.007608 ], [ 121.089826, 27.998625 ], [ 121.044247, 27.979072 ] ] ], [ [ [ 122.471378, 29.927472 ], [ 122.47261, 29.927472 ], [ 122.473226, 29.925397 ], [ 122.470762, 29.925916 ], [ 122.471378, 29.927472 ] ] ], [ [ [ 122.152322, 29.97103 ], [ 122.154169, 29.97103 ], [ 122.155401, 29.970512 ], [ 122.152322, 29.97103 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"340000\", \"name\": \"安徽省\", \"center\": [ 117.283042, 31.86119 ], \"centroid\": [ 117.226862, 31.849273 ], \"childrenNum\": 16, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 11, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 116.599629, 34.014324 ], [ 116.599629, 34.014324 ], [ 116.576223, 34.068873 ], [ 116.576223, 34.068873 ], [ 116.52818, 34.122892 ], [ 116.536187, 34.151127 ], [ 116.565752, 34.16945 ], [ 116.542962, 34.203608 ], [ 116.545426, 34.241711 ], [ 116.582382, 34.266444 ], [ 116.562056, 34.285731 ], [ 116.516477, 34.296114 ], [ 116.456731, 34.268917 ], [ 116.409303, 34.273863 ], [ 116.409303, 34.273863 ], [ 116.372347, 34.26595 ], [ 116.363724, 34.316877 ], [ 116.301514, 34.342082 ], [ 116.255934, 34.376665 ], [ 116.213435, 34.382098 ], [ 116.215898, 34.403333 ], [ 116.178942, 34.430487 ], [ 116.162312, 34.459605 ], [ 116.178326, 34.496112 ], [ 116.204196, 34.508442 ], [ 116.191261, 34.535561 ], [ 116.196804, 34.575977 ], [ 116.247927, 34.551829 ], [ 116.286116, 34.608986 ], [ 116.32492, 34.601104 ], [ 116.334159, 34.620806 ], [ 116.374195, 34.640011 ], [ 116.430245, 34.650843 ], [ 116.432709, 34.630163 ], [ 116.477057, 34.614896 ], [ 116.490607, 34.573513 ], [ 116.594085, 34.511894 ], [ 116.592237, 34.493646 ], [ 116.662454, 34.472927 ], [ 116.722816, 34.472434 ], [ 116.773939, 34.453683 ], [ 116.782563, 34.429993 ], [ 116.828142, 34.389012 ], [ 116.909446, 34.408271 ], [ 116.969192, 34.389012 ], [ 116.960569, 34.363821 ], [ 116.983359, 34.348011 ], [ 116.969192, 34.283753 ], [ 117.051112, 34.221425 ], [ 117.025243, 34.167469 ], [ 117.046801, 34.151622 ], [ 117.123793, 34.128342 ], [ 117.130568, 34.101586 ], [ 117.192162, 34.068873 ], [ 117.257452, 34.065899 ], [ 117.277162, 34.078787 ], [ 117.311654, 34.067882 ], [ 117.357234, 34.088205 ], [ 117.404045, 34.03218 ], [ 117.435458, 34.028212 ], [ 117.514914, 34.060941 ], [ 117.543248, 34.038627 ], [ 117.569117, 33.985051 ], [ 117.612849, 34.000433 ], [ 117.629479, 34.028708 ], [ 117.671363, 33.992494 ], [ 117.672595, 33.934916 ], [ 117.715095, 33.879287 ], [ 117.753899, 33.891211 ], [ 117.759442, 33.874318 ], [ 117.739732, 33.758467 ], [ 117.72495, 33.74951 ], [ 117.750203, 33.710688 ], [ 117.791471, 33.733585 ], [ 117.843826, 33.736074 ], [ 117.901724, 33.720146 ], [ 117.972557, 33.74951 ], [ 118.019985, 33.738562 ], [ 118.065564, 33.76593 ], [ 118.117919, 33.766427 ], [ 118.161035, 33.735576 ], [ 118.16781, 33.663381 ], [ 118.112376, 33.617045 ], [ 118.117919, 33.594615 ], [ 118.107448, 33.475391 ], [ 118.050782, 33.491863 ], [ 118.027376, 33.455421 ], [ 118.016905, 33.402978 ], [ 118.029224, 33.374995 ], [ 117.992883, 33.333005 ], [ 117.974405, 33.279487 ], [ 117.939297, 33.262475 ], [ 117.942376, 33.224936 ], [ 117.977485, 33.226437 ], [ 117.988572, 33.180869 ], [ 118.037231, 33.152314 ], [ 118.038463, 33.134776 ], [ 118.149332, 33.169348 ], [ 118.178281, 33.217926 ], [ 118.217085, 33.191888 ], [ 118.219549, 33.114227 ], [ 118.243571, 33.027967 ], [ 118.244803, 32.998359 ], [ 118.26944, 32.969242 ], [ 118.303933, 32.96874 ], [ 118.291614, 32.946143 ], [ 118.252194, 32.936601 ], [ 118.2331, 32.914498 ], [ 118.250346, 32.848157 ], [ 118.301469, 32.846145 ], [ 118.300237, 32.783275 ], [ 118.334114, 32.761637 ], [ 118.363063, 32.770695 ], [ 118.375382, 32.718849 ], [ 118.411106, 32.715828 ], [ 118.450526, 32.743518 ], [ 118.483787, 32.721367 ], [ 118.560163, 32.729926 ], [ 118.572482, 32.719856 ], [ 118.642699, 32.744525 ], [ 118.707373, 32.72036 ], [ 118.756648, 32.737477 ], [ 118.73817, 32.772708 ], [ 118.743097, 32.853184 ], [ 118.743097, 32.853184 ], [ 118.810235, 32.853687 ], [ 118.821322, 32.920527 ], [ 118.846575, 32.922034 ], [ 118.849039, 32.956689 ], [ 118.89585, 32.957694 ], [ 118.89585, 32.957694 ], [ 118.892771, 32.941121 ], [ 118.934039, 32.93861 ], [ 118.993169, 32.958196 ], [ 119.020886, 32.955685 ], [ 119.054763, 32.8748 ], [ 119.113277, 32.823014 ], [ 119.184726, 32.825529 ], [ 119.211827, 32.708275 ], [ 119.208748, 32.641276 ], [ 119.230921, 32.607001 ], [ 119.22045, 32.576748 ], [ 119.152697, 32.557582 ], [ 119.168096, 32.536394 ], [ 119.142226, 32.499556 ], [ 119.084944, 32.452602 ], [ 119.041212, 32.515201 ], [ 118.975923, 32.505108 ], [ 118.922336, 32.557078 ], [ 118.92172, 32.557078 ], [ 118.922336, 32.557078 ], [ 118.92172, 32.557078 ], [ 118.890923, 32.553042 ], [ 118.908169, 32.59238 ], [ 118.84288, 32.56767 ], [ 118.820706, 32.60448 ], [ 118.784981, 32.582295 ], [ 118.757264, 32.603976 ], [ 118.73509, 32.58885 ], [ 118.719076, 32.614059 ], [ 118.719076, 32.614059 ], [ 118.688895, 32.588346 ], [ 118.658714, 32.594397 ], [ 118.632844, 32.578261 ], [ 118.59712, 32.600951 ], [ 118.568787, 32.585825 ], [ 118.564475, 32.562122 ], [ 118.608823, 32.536899 ], [ 118.592192, 32.481383 ], [ 118.628533, 32.467751 ], [ 118.691359, 32.472295 ], [ 118.685199, 32.403604 ], [ 118.703061, 32.328792 ], [ 118.657482, 32.30148 ], [ 118.674728, 32.250375 ], [ 118.643931, 32.209875 ], [ 118.510888, 32.194176 ], [ 118.49549, 32.165304 ], [ 118.501033, 32.121726 ], [ 118.433896, 32.086746 ], [ 118.394476, 32.076098 ], [ 118.389548, 31.985281 ], [ 118.363679, 31.930443 ], [ 118.472084, 31.879639 ], [ 118.466541, 31.857784 ], [ 118.504729, 31.841516 ], [ 118.481939, 31.778453 ], [ 118.533678, 31.76726 ], [ 118.521975, 31.743343 ], [ 118.5577, 31.73011 ], [ 118.571866, 31.746397 ], [ 118.641467, 31.75861 ], [ 118.653786, 31.73011 ], [ 118.697518, 31.709747 ], [ 118.643315, 31.671555 ], [ 118.643315, 31.649651 ], [ 118.736322, 31.633347 ], [ 118.748025, 31.675629 ], [ 118.773894, 31.682759 ], [ 118.802844, 31.619078 ], [ 118.858894, 31.623665 ], [ 118.881684, 31.564023 ], [ 118.885995, 31.519139 ], [ 118.868133, 31.520669 ], [ 118.857046, 31.506384 ], [ 118.883532, 31.500261 ], [ 118.852119, 31.393553 ], [ 118.824401, 31.375672 ], [ 118.767735, 31.363919 ], [ 118.745561, 31.372606 ], [ 118.720924, 31.322518 ], [ 118.726467, 31.282121 ], [ 118.756648, 31.279564 ], [ 118.794836, 31.229426 ], [ 118.870597, 31.242219 ], [ 118.984546, 31.237102 ], [ 119.014727, 31.241707 ], [ 119.10527, 31.235055 ], [ 119.107118, 31.250917 ], [ 119.158241, 31.294907 ], [ 119.197661, 31.295418 ], [ 119.198277, 31.270357 ], [ 119.266646, 31.250405 ], [ 119.294363, 31.263195 ], [ 119.338095, 31.259103 ], [ 119.350414, 31.301043 ], [ 119.374435, 31.258591 ], [ 119.360269, 31.213049 ], [ 119.391682, 31.174142 ], [ 119.439109, 31.177214 ], [ 119.461283, 31.156219 ], [ 119.532732, 31.159291 ], [ 119.599869, 31.10909 ], [ 119.623891, 31.130096 ], [ 119.649144, 31.104991 ], [ 119.629434, 31.085517 ], [ 119.633746, 31.019379 ], [ 119.580159, 30.967051 ], [ 119.582007, 30.932149 ], [ 119.563529, 30.919315 ], [ 119.557369, 30.874124 ], [ 119.575847, 30.829939 ], [ 119.55429, 30.825828 ], [ 119.527188, 30.77905 ], [ 119.479761, 30.772365 ], [ 119.482841, 30.704467 ], [ 119.444652, 30.650422 ], [ 119.408312, 30.645274 ], [ 119.39045, 30.685941 ], [ 119.343022, 30.664322 ], [ 119.323312, 30.630341 ], [ 119.238929, 30.609225 ], [ 119.265414, 30.574709 ], [ 119.237081, 30.546881 ], [ 119.272189, 30.510281 ], [ 119.326392, 30.532964 ], [ 119.336247, 30.508734 ], [ 119.335015, 30.448389 ], [ 119.36766, 30.38491 ], [ 119.402768, 30.374584 ], [ 119.349182, 30.349281 ], [ 119.326392, 30.372002 ], [ 119.277117, 30.341018 ], [ 119.246936, 30.341018 ], [ 119.236465, 30.297106 ], [ 119.201356, 30.290905 ], [ 119.126828, 30.304856 ], [ 119.091719, 30.323972 ], [ 119.06277, 30.304856 ], [ 118.988857, 30.332237 ], [ 118.954365, 30.360126 ], [ 118.880452, 30.31519 ], [ 118.877988, 30.282637 ], [ 118.905089, 30.216464 ], [ 118.929727, 30.2025 ], [ 118.852735, 30.166805 ], [ 118.852119, 30.149729 ], [ 118.895234, 30.148694 ], [ 118.873677, 30.11505 ], [ 118.878604, 30.064822 ], [ 118.902626, 30.029078 ], [ 118.894619, 29.937845 ], [ 118.838568, 29.934733 ], [ 118.841032, 29.891159 ], [ 118.740634, 29.814859 ], [ 118.744945, 29.73902 ], [ 118.700598, 29.706277 ], [ 118.647011, 29.64336 ], [ 118.61991, 29.654282 ], [ 118.573714, 29.638159 ], [ 118.532446, 29.588731 ], [ 118.500417, 29.57572 ], [ 118.496106, 29.519492 ], [ 118.381541, 29.504909 ], [ 118.347664, 29.474174 ], [ 118.329802, 29.495012 ], [ 118.306396, 29.479384 ], [ 118.316252, 29.422581 ], [ 118.248498, 29.431443 ], [ 118.193064, 29.395472 ], [ 118.136397, 29.418932 ], [ 118.127774, 29.47209 ], [ 118.143788, 29.489803 ], [ 118.095129, 29.534072 ], [ 118.050782, 29.542924 ], [ 118.042774, 29.566351 ], [ 118.00397, 29.578322 ], [ 117.933753, 29.549172 ], [ 117.872775, 29.54761 ], [ 117.795167, 29.570515 ], [ 117.729877, 29.550213 ], [ 117.690457, 29.555939 ], [ 117.678754, 29.595496 ], [ 117.647957, 29.614749 ], [ 117.608537, 29.591333 ], [ 117.543248, 29.588731 ], [ 117.523538, 29.630356 ], [ 117.530313, 29.654282 ], [ 117.490277, 29.660003 ], [ 117.453936, 29.688082 ], [ 117.455168, 29.749412 ], [ 117.408973, 29.802396 ], [ 117.415132, 29.85068 ], [ 117.382487, 29.840818 ], [ 117.359082, 29.812782 ], [ 117.338756, 29.848085 ], [ 117.29256, 29.822647 ], [ 117.25314, 29.834588 ], [ 117.261763, 29.880781 ], [ 117.246365, 29.915023 ], [ 117.2168, 29.926953 ], [ 117.171836, 29.920729 ], [ 117.129952, 29.89946 ], [ 117.127489, 29.86158 ], [ 117.073286, 29.831992 ], [ 117.123177, 29.798761 ], [ 117.136728, 29.775388 ], [ 117.108395, 29.75201 ], [ 117.112706, 29.711995 ], [ 117.041873, 29.680803 ], [ 116.996294, 29.683403 ], [ 116.974736, 29.657403 ], [ 116.939627, 29.648561 ], [ 116.873722, 29.609546 ], [ 116.849084, 29.57624 ], [ 116.780715, 29.569994 ], [ 116.760389, 29.599139 ], [ 116.721585, 29.564789 ], [ 116.716657, 29.590813 ], [ 116.651983, 29.637118 ], [ 116.680317, 29.681323 ], [ 116.704954, 29.688602 ], [ 116.706802, 29.6964 ], [ 116.70557, 29.69692 ], [ 116.698795, 29.707836 ], [ 116.673541, 29.709916 ], [ 116.762237, 29.802396 ], [ 116.780715, 29.792529 ], [ 116.882961, 29.893753 ], [ 116.900207, 29.949253 ], [ 116.868794, 29.980361 ], [ 116.83307, 29.95755 ], [ 116.830606, 30.004723 ], [ 116.802889, 29.99643 ], [ 116.783794, 30.030632 ], [ 116.747454, 30.057053 ], [ 116.720353, 30.053945 ], [ 116.666766, 30.076734 ], [ 116.620571, 30.073109 ], [ 116.585462, 30.045657 ], [ 116.552201, 29.909836 ], [ 116.525716, 29.897385 ], [ 116.467818, 29.896347 ], [ 116.342782, 29.835626 ], [ 116.280572, 29.788893 ], [ 116.250391, 29.785777 ], [ 116.227601, 29.816936 ], [ 116.172783, 29.828358 ], [ 116.13521, 29.819532 ], [ 116.128435, 29.897904 ], [ 116.073616, 29.969993 ], [ 116.091479, 30.036331 ], [ 116.078544, 30.062233 ], [ 116.088399, 30.110391 ], [ 116.055754, 30.180774 ], [ 116.065609, 30.204569 ], [ 115.997856, 30.252657 ], [ 115.985537, 30.290905 ], [ 115.903001, 30.31364 ], [ 115.91532, 30.337919 ], [ 115.885139, 30.379747 ], [ 115.921479, 30.416397 ], [ 115.894994, 30.452517 ], [ 115.910393, 30.519046 ], [ 115.887603, 30.542758 ], [ 115.876516, 30.582438 ], [ 115.848799, 30.602014 ], [ 115.819234, 30.597893 ], [ 115.81369, 30.637035 ], [ 115.762567, 30.685426 ], [ 115.782893, 30.751795 ], [ 115.851262, 30.756938 ], [ 115.863581, 30.815549 ], [ 115.848799, 30.828397 ], [ 115.865429, 30.864364 ], [ 115.932566, 30.889532 ], [ 115.976298, 30.931636 ], [ 116.03974, 30.957813 ], [ 116.071769, 30.956787 ], [ 116.058834, 31.012711 ], [ 116.015102, 31.011685 ], [ 116.006479, 31.034764 ], [ 115.938726, 31.04707 ], [ 115.939958, 31.071678 ], [ 115.887603, 31.10909 ], [ 115.867277, 31.147512 ], [ 115.837712, 31.127022 ], [ 115.797676, 31.128047 ], [ 115.778582, 31.112164 ], [ 115.700973, 31.201276 ], [ 115.655394, 31.211002 ], [ 115.603655, 31.17363 ], [ 115.585793, 31.143926 ], [ 115.540213, 31.194621 ], [ 115.539597, 31.231985 ], [ 115.507568, 31.267799 ], [ 115.473076, 31.265242 ], [ 115.443511, 31.344498 ], [ 115.40717, 31.337854 ], [ 115.372062, 31.349098 ], [ 115.393004, 31.389977 ], [ 115.373909, 31.405813 ], [ 115.389924, 31.450241 ], [ 115.371446, 31.495668 ], [ 115.415793, 31.525771 ], [ 115.439815, 31.588496 ], [ 115.485394, 31.608885 ], [ 115.476771, 31.643028 ], [ 115.495249, 31.673083 ], [ 115.534054, 31.698545 ], [ 115.553764, 31.69549 ], [ 115.676336, 31.778453 ], [ 115.731154, 31.76726 ], [ 115.767495, 31.78761 ], [ 115.808147, 31.770313 ], [ 115.808147, 31.770313 ], [ 115.851878, 31.786593 ], [ 115.886371, 31.776418 ], [ 115.914704, 31.814567 ], [ 115.893762, 31.832365 ], [ 115.894994, 31.8649 ], [ 115.920248, 31.920285 ], [ 115.909161, 31.94314 ], [ 115.928871, 32.003046 ], [ 115.922095, 32.049725 ], [ 115.941805, 32.166318 ], [ 115.912856, 32.227596 ], [ 115.899306, 32.390971 ], [ 115.865429, 32.458662 ], [ 115.883291, 32.487946 ], [ 115.845719, 32.501575 ], [ 115.8759, 32.542448 ], [ 115.910393, 32.567165 ], [ 115.891298, 32.576243 ], [ 115.861117, 32.537403 ], [ 115.789052, 32.468761 ], [ 115.771806, 32.505108 ], [ 115.742241, 32.476335 ], [ 115.704669, 32.495013 ], [ 115.667712, 32.409667 ], [ 115.657857, 32.428864 ], [ 115.626445, 32.40512 ], [ 115.604271, 32.425833 ], [ 115.57101, 32.419266 ], [ 115.522967, 32.441997 ], [ 115.509416, 32.466741 ], [ 115.510648, 32.467751 ], [ 115.510648, 32.468256 ], [ 115.510648, 32.468761 ], [ 115.5088, 32.468761 ], [ 115.497713, 32.492489 ], [ 115.409018, 32.549007 ], [ 115.411482, 32.575235 ], [ 115.304924, 32.553042 ], [ 115.30554, 32.583303 ], [ 115.267352, 32.578261 ], [ 115.24333, 32.593388 ], [ 115.20083, 32.591876 ], [ 115.182968, 32.666973 ], [ 115.179273, 32.726402 ], [ 115.189744, 32.770695 ], [ 115.211301, 32.785791 ], [ 115.189744, 32.812452 ], [ 115.197135, 32.856201 ], [ 115.155867, 32.864747 ], [ 115.139237, 32.897917 ], [ 115.029599, 32.906962 ], [ 115.035143, 32.932582 ], [ 115.009273, 32.940117 ], [ 114.943368, 32.935094 ], [ 114.916266, 32.971251 ], [ 114.883006, 32.990328 ], [ 114.891629, 33.020441 ], [ 114.925506, 33.016928 ], [ 114.913187, 33.083143 ], [ 114.897172, 33.086653 ], [ 114.902716, 33.129764 ], [ 114.932897, 33.153817 ], [ 114.966158, 33.147304 ], [ 114.990795, 33.102195 ], [ 115.041302, 33.086653 ], [ 115.168186, 33.088658 ], [ 115.194671, 33.120743 ], [ 115.245178, 33.135778 ], [ 115.289526, 33.131769 ], [ 115.303692, 33.149809 ], [ 115.300613, 33.204407 ], [ 115.340033, 33.260973 ], [ 115.335105, 33.297997 ], [ 115.361591, 33.298497 ], [ 115.365286, 33.336005 ], [ 115.341881, 33.370997 ], [ 115.313547, 33.376994 ], [ 115.328946, 33.403477 ], [ 115.316627, 33.44893 ], [ 115.345576, 33.449928 ], [ 115.345576, 33.502842 ], [ 115.366518, 33.5233 ], [ 115.394851, 33.506335 ], [ 115.422569, 33.557219 ], [ 115.463837, 33.567193 ], [ 115.561771, 33.563703 ], [ 115.564851, 33.576169 ], [ 115.639995, 33.585143 ], [ 115.601191, 33.658898 ], [ 115.601807, 33.718653 ], [ 115.563003, 33.772895 ], [ 115.576553, 33.787817 ], [ 115.614126, 33.775879 ], [ 115.631988, 33.869846 ], [ 115.547604, 33.874815 ], [ 115.577785, 33.950307 ], [ 115.579017, 33.974133 ], [ 115.60735, 34.030196 ], [ 115.642459, 34.03218 ], [ 115.658473, 34.061437 ], [ 115.705901, 34.059949 ], [ 115.736082, 34.076805 ], [ 115.809378, 34.062428 ], [ 115.846335, 34.028708 ], [ 115.852494, 34.003906 ], [ 115.877132, 34.002913 ], [ 115.876516, 34.028708 ], [ 115.904233, 34.009859 ], [ 115.95782, 34.007875 ], [ 116.00032, 33.965199 ], [ 115.982457, 33.917039 ], [ 116.05945, 33.860902 ], [ 116.055754, 33.804727 ], [ 116.074232, 33.781351 ], [ 116.100102, 33.782843 ], [ 116.132747, 33.751501 ], [ 116.155536, 33.709693 ], [ 116.2005, 33.72612 ], [ 116.263326, 33.730101 ], [ 116.316912, 33.771402 ], [ 116.393905, 33.782843 ], [ 116.408071, 33.805721 ], [ 116.437021, 33.801246 ], [ 116.437637, 33.846489 ], [ 116.486296, 33.869846 ], [ 116.558361, 33.881274 ], [ 116.566984, 33.9081 ], [ 116.631042, 33.887733 ], [ 116.64336, 33.896675 ], [ 116.641512, 33.978103 ], [ 116.599629, 34.014324 ] ] ], [ [ [ 118.868133, 31.520669 ], [ 118.885995, 31.519139 ], [ 118.883532, 31.500261 ], [ 118.857046, 31.506384 ], [ 118.868133, 31.520669 ] ] ], [ [ [ 116.698795, 29.707836 ], [ 116.70557, 29.69692 ], [ 116.706802, 29.6964 ], [ 116.704954, 29.688602 ], [ 116.680317, 29.681323 ], [ 116.653831, 29.694841 ], [ 116.673541, 29.709916 ], [ 116.698795, 29.707836 ] ] ], [ [ [ 115.5088, 32.468761 ], [ 115.510648, 32.468761 ], [ 115.510648, 32.468256 ], [ 115.510648, 32.467751 ], [ 115.509416, 32.466741 ], [ 115.5088, 32.468761 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"350000\", \"name\": \"福建省\", \"center\": [ 119.306239, 26.075302 ], \"centroid\": [ 118.006365, 26.069889 ], \"childrenNum\": 9, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 12, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 119.004872, 24.970009 ], [ 119.007335, 24.963499 ], [ 119.032589, 24.961871 ], [ 119.032589, 24.961328 ], [ 119.014111, 24.941252 ], [ 118.945741, 24.954275 ], [ 118.91864, 24.932569 ], [ 118.932807, 24.906518 ], [ 118.987009, 24.898375 ], [ 118.988857, 24.878831 ], [ 118.933423, 24.870687 ], [ 118.864437, 24.887518 ], [ 118.834256, 24.854397 ], [ 118.807771, 24.870687 ], [ 118.748641, 24.84245 ], [ 118.69875, 24.848967 ], [ 118.702445, 24.865258 ], [ 118.647627, 24.843536 ], [ 118.650707, 24.808774 ], [ 118.786213, 24.77672 ], [ 118.778822, 24.743569 ], [ 118.703677, 24.665278 ], [ 118.670417, 24.679962 ], [ 118.652554, 24.653857 ], [ 118.661178, 24.622306 ], [ 118.687047, 24.63373 ], [ 118.680272, 24.58204 ], [ 118.614366, 24.521617 ], [ 118.558316, 24.51236 ], [ 118.557084, 24.572788 ], [ 118.512736, 24.60816 ], [ 118.444367, 24.614689 ], [ 118.363679, 24.567889 ], [ 118.375382, 24.536317 ], [ 118.242955, 24.51236 ], [ 118.169042, 24.559725 ], [ 118.150564, 24.583673 ], [ 118.121615, 24.570067 ], [ 118.084042, 24.528695 ], [ 118.048934, 24.418122 ], [ 118.088354, 24.408858 ], [ 118.081579, 24.35653 ], [ 118.112376, 24.357075 ], [ 118.158571, 24.269814 ], [ 118.115455, 24.229435 ], [ 118.074803, 24.225615 ], [ 118.019369, 24.197232 ], [ 118.000275, 24.152462 ], [ 117.936217, 24.100029 ], [ 117.927594, 24.039922 ], [ 117.910347, 24.012045 ], [ 117.864768, 24.004938 ], [ 117.807486, 23.947521 ], [ 117.792703, 23.906494 ], [ 117.762522, 23.886796 ], [ 117.691073, 23.888985 ], [ 117.671979, 23.878041 ], [ 117.651653, 23.815093 ], [ 117.660276, 23.789357 ], [ 117.601762, 23.70171 ], [ 117.54448, 23.715956 ], [ 117.501364, 23.70445 ], [ 117.493357, 23.642514 ], [ 117.454552, 23.628259 ], [ 117.463791, 23.584937 ], [ 117.387415, 23.555317 ], [ 117.302415, 23.550379 ], [ 117.291328, 23.571225 ], [ 117.192778, 23.5619 ], [ 117.192778, 23.629356 ], [ 117.147199, 23.654027 ], [ 117.123793, 23.647448 ], [ 117.055424, 23.694038 ], [ 117.048032, 23.758687 ], [ 117.019083, 23.801952 ], [ 117.012308, 23.855054 ], [ 116.981511, 23.855602 ], [ 116.955642, 23.922359 ], [ 116.976583, 23.931659 ], [ 116.981511, 23.999471 ], [ 116.953178, 24.008218 ], [ 116.930388, 24.064514 ], [ 116.9347, 24.126794 ], [ 116.998757, 24.179217 ], [ 116.956257, 24.216883 ], [ 116.933468, 24.220157 ], [ 116.938395, 24.28127 ], [ 116.914374, 24.287817 ], [ 116.919301, 24.321087 ], [ 116.895895, 24.350533 ], [ 116.903903, 24.369614 ], [ 116.839229, 24.442097 ], [ 116.860787, 24.460075 ], [ 116.83307, 24.496568 ], [ 116.796729, 24.502014 ], [ 116.759157, 24.545572 ], [ 116.761005, 24.583128 ], [ 116.815207, 24.654944 ], [ 116.777635, 24.679418 ], [ 116.667382, 24.658752 ], [ 116.623034, 24.64189 ], [ 116.600861, 24.654401 ], [ 116.570679, 24.621762 ], [ 116.530027, 24.604895 ], [ 116.506622, 24.621218 ], [ 116.517709, 24.652225 ], [ 116.485064, 24.720196 ], [ 116.44626, 24.714216 ], [ 116.416079, 24.744113 ], [ 116.419158, 24.767482 ], [ 116.375427, 24.803885 ], [ 116.381586, 24.82507 ], [ 116.417927, 24.840821 ], [ 116.395137, 24.877746 ], [ 116.363724, 24.87123 ], [ 116.345862, 24.828872 ], [ 116.297202, 24.801712 ], [ 116.244232, 24.793563 ], [ 116.251007, 24.82507 ], [ 116.221442, 24.829959 ], [ 116.191877, 24.877203 ], [ 116.153073, 24.846795 ], [ 116.068073, 24.850053 ], [ 116.015102, 24.905975 ], [ 115.985537, 24.899461 ], [ 115.907929, 24.923343 ], [ 115.89253, 24.936911 ], [ 115.870356, 24.959701 ], [ 115.925175, 24.960786 ], [ 115.873436, 25.019911 ], [ 115.928255, 25.050276 ], [ 115.908545, 25.084428 ], [ 115.880212, 25.092016 ], [ 115.888219, 25.128866 ], [ 115.860501, 25.165704 ], [ 115.855574, 25.20957 ], [ 115.930719, 25.236099 ], [ 115.949813, 25.292386 ], [ 115.987385, 25.290221 ], [ 116.008327, 25.319437 ], [ 115.992928, 25.374063 ], [ 116.023109, 25.435691 ], [ 116.005247, 25.490264 ], [ 116.03666, 25.514571 ], [ 116.040356, 25.548052 ], [ 116.063145, 25.56317 ], [ 116.041588, 25.62416 ], [ 116.068689, 25.646282 ], [ 116.067457, 25.703995 ], [ 116.106877, 25.701299 ], [ 116.129667, 25.758985 ], [ 116.18079, 25.778926 ], [ 116.131515, 25.824185 ], [ 116.132131, 25.860273 ], [ 116.17771, 25.894195 ], [ 116.225138, 25.908731 ], [ 116.258398, 25.902809 ], [ 116.303362, 25.924341 ], [ 116.326152, 25.956631 ], [ 116.369883, 25.963088 ], [ 116.360028, 25.991601 ], [ 116.384666, 26.030864 ], [ 116.489375, 26.113649 ], [ 116.476441, 26.172745 ], [ 116.435789, 26.159854 ], [ 116.392057, 26.171133 ], [ 116.400064, 26.202819 ], [ 116.385282, 26.238253 ], [ 116.412999, 26.297822 ], [ 116.437021, 26.308016 ], [ 116.459194, 26.345026 ], [ 116.499846, 26.361651 ], [ 116.519557, 26.410437 ], [ 116.553433, 26.400253 ], [ 116.553433, 26.365404 ], [ 116.601476, 26.372911 ], [ 116.608252, 26.429732 ], [ 116.638433, 26.477418 ], [ 116.610716, 26.476882 ], [ 116.597165, 26.512768 ], [ 116.539267, 26.559349 ], [ 116.553433, 26.575942 ], [ 116.566368, 26.650315 ], [ 116.520172, 26.684543 ], [ 116.515245, 26.720898 ], [ 116.557745, 26.773806 ], [ 116.543578, 26.803723 ], [ 116.548506, 26.84004 ], [ 116.602092, 26.888623 ], [ 116.632889, 26.933984 ], [ 116.679085, 26.978259 ], [ 116.817671, 27.018252 ], [ 116.851548, 27.009188 ], [ 116.910062, 27.034779 ], [ 116.936547, 27.019319 ], [ 116.967344, 27.061962 ], [ 117.05296, 27.100327 ], [ 117.044953, 27.146667 ], [ 117.149662, 27.241419 ], [ 117.171836, 27.29036 ], [ 117.136728, 27.303123 ], [ 117.140423, 27.322798 ], [ 117.104699, 27.330773 ], [ 117.107163, 27.393491 ], [ 117.133032, 27.42218 ], [ 117.110242, 27.458828 ], [ 117.103467, 27.533149 ], [ 117.076982, 27.566046 ], [ 117.054808, 27.5427 ], [ 117.01662, 27.563393 ], [ 117.024627, 27.592569 ], [ 117.003685, 27.625449 ], [ 117.040641, 27.669979 ], [ 117.065279, 27.665739 ], [ 117.094228, 27.627569 ], [ 117.11209, 27.645596 ], [ 117.096076, 27.667329 ], [ 117.114554, 27.692238 ], [ 117.174916, 27.677399 ], [ 117.204481, 27.683759 ], [ 117.205097, 27.714492 ], [ 117.245133, 27.71926 ], [ 117.296256, 27.764282 ], [ 117.303031, 27.833103 ], [ 117.276546, 27.847921 ], [ 117.280242, 27.871201 ], [ 117.334444, 27.8876 ], [ 117.341836, 27.855858 ], [ 117.366473, 27.88231 ], [ 117.407741, 27.893948 ], [ 117.453936, 27.939955 ], [ 117.477958, 27.930966 ], [ 117.52169, 27.982243 ], [ 117.556182, 27.966387 ], [ 117.609769, 27.863265 ], [ 117.649805, 27.851625 ], [ 117.68245, 27.823577 ], [ 117.704624, 27.834162 ], [ 117.740348, 27.800286 ], [ 117.788392, 27.855858 ], [ 117.78716, 27.896063 ], [ 117.856145, 27.94577 ], [ 117.910963, 27.949471 ], [ 117.942992, 27.974315 ], [ 117.965166, 27.962687 ], [ 117.999043, 27.991227 ], [ 118.096977, 27.970615 ], [ 118.094513, 28.003909 ], [ 118.129006, 28.017118 ], [ 118.120999, 28.041946 ], [ 118.153644, 28.062016 ], [ 118.199839, 28.049869 ], [ 118.242339, 28.075746 ], [ 118.356288, 28.091586 ], [ 118.361215, 28.155978 ], [ 118.375382, 28.186577 ], [ 118.339041, 28.193962 ], [ 118.314404, 28.221913 ], [ 118.424041, 28.291497 ], [ 118.433896, 28.288335 ], [ 118.444367, 28.253548 ], [ 118.490562, 28.238259 ], [ 118.493026, 28.262509 ], [ 118.588497, 28.282538 ], [ 118.595272, 28.258292 ], [ 118.651322, 28.277267 ], [ 118.674728, 28.27147 ], [ 118.699366, 28.309939 ], [ 118.719692, 28.312047 ], [ 118.756032, 28.252493 ], [ 118.802228, 28.240368 ], [ 118.804075, 28.207675 ], [ 118.771431, 28.188687 ], [ 118.805923, 28.154923 ], [ 118.802228, 28.117453 ], [ 118.767735, 28.10584 ], [ 118.719076, 28.063601 ], [ 118.733858, 28.027684 ], [ 118.730163, 27.970615 ], [ 118.753568, 27.947885 ], [ 118.818242, 27.916689 ], [ 118.829329, 27.847921 ], [ 118.873677, 27.733563 ], [ 118.879836, 27.667859 ], [ 118.913713, 27.619616 ], [ 118.909401, 27.568168 ], [ 118.869365, 27.540047 ], [ 118.907553, 27.460952 ], [ 118.955597, 27.4498 ], [ 118.986393, 27.47582 ], [ 118.983314, 27.498649 ], [ 119.020886, 27.498118 ], [ 119.03998, 27.478475 ], [ 119.092335, 27.466262 ], [ 119.129907, 27.475289 ], [ 119.121284, 27.438115 ], [ 119.14777, 27.424836 ], [ 119.224146, 27.416868 ], [ 119.26911, 27.42218 ], [ 119.285124, 27.457766 ], [ 119.334399, 27.480067 ], [ 119.360269, 27.524657 ], [ 119.416935, 27.539517 ], [ 119.438493, 27.508734 ], [ 119.466826, 27.526249 ], [ 119.501935, 27.610601 ], [ 119.501319, 27.649837 ], [ 119.541971, 27.666799 ], [ 119.606028, 27.674749 ], [ 119.644217, 27.663619 ], [ 119.626354, 27.620676 ], [ 119.630666, 27.582491 ], [ 119.675014, 27.574534 ], [ 119.659615, 27.540578 ], [ 119.690412, 27.537394 ], [ 119.70889, 27.514042 ], [ 119.703347, 27.446613 ], [ 119.685485, 27.438646 ], [ 119.711354, 27.403054 ], [ 119.750774, 27.373829 ], [ 119.739687, 27.362668 ], [ 119.782187, 27.330241 ], [ 119.768636, 27.307909 ], [ 119.843165, 27.300464 ], [ 119.938636, 27.329709 ], [ 119.960194, 27.365857 ], [ 120.008237, 27.375423 ], [ 120.026099, 27.344063 ], [ 120.052584, 27.338747 ], [ 120.096316, 27.390302 ], [ 120.136968, 27.402523 ], [ 120.134504, 27.420055 ], [ 120.221352, 27.420055 ], [ 120.26262, 27.432804 ], [ 120.273091, 27.38924 ], [ 120.340844, 27.399867 ], [ 120.343924, 27.363199 ], [ 120.430155, 27.258976 ], [ 120.401822, 27.250996 ], [ 120.404286, 27.204166 ], [ 120.461568, 27.142407 ], [ 120.403054, 27.10086 ], [ 120.391967, 27.081146 ], [ 120.282946, 27.089671 ], [ 120.29588, 27.035845 ], [ 120.275554, 27.027315 ], [ 120.279866, 26.987326 ], [ 120.25954, 26.982526 ], [ 120.232439, 26.907303 ], [ 120.1807, 26.920644 ], [ 120.117258, 26.916909 ], [ 120.103707, 26.873143 ], [ 120.037802, 26.86033 ], [ 120.042729, 26.828292 ], [ 120.082765, 26.822417 ], [ 120.103707, 26.794642 ], [ 120.136352, 26.797847 ], [ 120.106787, 26.752966 ], [ 120.151135, 26.750829 ], [ 120.162222, 26.717691 ], [ 120.110483, 26.692563 ], [ 120.1382, 26.638012 ], [ 120.093852, 26.613938 ], [ 120.063671, 26.627848 ], [ 120.007621, 26.595744 ], [ 119.967585, 26.597885 ], [ 119.93802, 26.576478 ], [ 119.947875, 26.56042 ], [ 119.867187, 26.509019 ], [ 119.828383, 26.524013 ], [ 119.851788, 26.595209 ], [ 119.901679, 26.624638 ], [ 119.949107, 26.624638 ], [ 119.972512, 26.654594 ], [ 119.969433, 26.686681 ], [ 119.99407, 26.720363 ], [ 120.061824, 26.768997 ], [ 120.052584, 26.786629 ], [ 119.942947, 26.784492 ], [ 119.938636, 26.747088 ], [ 119.899216, 26.693098 ], [ 119.908455, 26.661547 ], [ 119.873962, 26.642827 ], [ 119.864107, 26.671174 ], [ 119.833926, 26.690959 ], [ 119.711354, 26.686681 ], [ 119.664543, 26.726243 ], [ 119.637441, 26.703256 ], [ 119.619579, 26.649246 ], [ 119.577695, 26.622498 ], [ 119.605412, 26.595744 ], [ 119.670086, 26.618218 ], [ 119.740303, 26.610727 ], [ 119.788346, 26.583435 ], [ 119.83639, 26.454381 ], [ 119.835774, 26.434019 ], [ 119.893672, 26.355752 ], [ 119.946027, 26.374519 ], [ 119.95465, 26.352534 ], [ 119.909687, 26.310161 ], [ 119.862875, 26.307479 ], [ 119.845013, 26.323036 ], [ 119.806825, 26.307479 ], [ 119.802513, 26.268846 ], [ 119.7711, 26.285481 ], [ 119.676246, 26.262943 ], [ 119.664543, 26.202282 ], [ 119.604181, 26.168985 ], [ 119.618963, 26.11956 ], [ 119.654688, 26.090002 ], [ 119.668854, 26.026024 ], [ 119.700267, 26.032477 ], [ 119.723673, 26.011503 ], [ 119.69534, 25.904424 ], [ 119.638057, 25.889888 ], [ 119.628202, 25.87212 ], [ 119.626354, 25.723406 ], [ 119.602949, 25.714779 ], [ 119.602949, 25.68512 ], [ 119.543819, 25.684581 ], [ 119.472986, 25.662466 ], [ 119.478529, 25.631715 ], [ 119.541355, 25.6247 ], [ 119.534579, 25.585303 ], [ 119.586934, 25.59232 ], [ 119.616499, 25.556691 ], [ 119.611572, 25.519972 ], [ 119.634362, 25.475137 ], [ 119.675014, 25.475137 ], [ 119.680557, 25.497827 ], [ 119.715666, 25.51187 ], [ 119.716898, 25.551292 ], [ 119.683637, 25.592859 ], [ 119.700267, 25.616606 ], [ 119.784651, 25.667321 ], [ 119.790194, 25.614447 ], [ 119.843165, 25.597717 ], [ 119.831462, 25.579905 ], [ 119.883817, 25.546432 ], [ 119.861027, 25.531313 ], [ 119.81668, 25.532393 ], [ 119.811136, 25.507009 ], [ 119.83331, 25.48162 ], [ 119.864107, 25.48 ], [ 119.866571, 25.455145 ], [ 119.804977, 25.457847 ], [ 119.764325, 25.433529 ], [ 119.773564, 25.395691 ], [ 119.688564, 25.441095 ], [ 119.682405, 25.445959 ], [ 119.675014, 25.468113 ], [ 119.622659, 25.434069 ], [ 119.670086, 25.435691 ], [ 119.656535, 25.396772 ], [ 119.665159, 25.3719 ], [ 119.649144, 25.342697 ], [ 119.597405, 25.334584 ], [ 119.582623, 25.374063 ], [ 119.59063, 25.398394 ], [ 119.577695, 25.445959 ], [ 119.555521, 25.429205 ], [ 119.578927, 25.400556 ], [ 119.548746, 25.365952 ], [ 119.486536, 25.369737 ], [ 119.507478, 25.396231 ], [ 119.48592, 25.418935 ], [ 119.491464, 25.443257 ], [ 119.463131, 25.448661 ], [ 119.438493, 25.412449 ], [ 119.45266, 25.493505 ], [ 119.400921, 25.493505 ], [ 119.359037, 25.521592 ], [ 119.343638, 25.472436 ], [ 119.353493, 25.411908 ], [ 119.288204, 25.410827 ], [ 119.26295, 25.428124 ], [ 119.275269, 25.476758 ], [ 119.256175, 25.488643 ], [ 119.219834, 25.468654 ], [ 119.232153, 25.442176 ], [ 119.191501, 25.424341 ], [ 119.151465, 25.426503 ], [ 119.14469, 25.388121 ], [ 119.218603, 25.368115 ], [ 119.240776, 25.316733 ], [ 119.247552, 25.333502 ], [ 119.299291, 25.328634 ], [ 119.333167, 25.287516 ], [ 119.380595, 25.250173 ], [ 119.331935, 25.230685 ], [ 119.294979, 25.237182 ], [ 119.314689, 25.190076 ], [ 119.26911, 25.159746 ], [ 119.231537, 25.188993 ], [ 119.190269, 25.175995 ], [ 119.131755, 25.223106 ], [ 119.108349, 25.193867 ], [ 119.137299, 25.15487 ], [ 119.165632, 25.145661 ], [ 119.146538, 25.056782 ], [ 119.119436, 25.012861 ], [ 119.107118, 25.075214 ], [ 119.134219, 25.106107 ], [ 119.075705, 25.099604 ], [ 119.06585, 25.102855 ], [ 119.028893, 25.139702 ], [ 119.032589, 25.17437 ], [ 119.054147, 25.168412 ], [ 119.074473, 25.211195 ], [ 119.055379, 25.219316 ], [ 118.990089, 25.20199 ], [ 118.975307, 25.237723 ], [ 118.996864, 25.266411 ], [ 118.956212, 25.272905 ], [ 118.91556, 25.256668 ], [ 118.940198, 25.21715 ], [ 118.942046, 25.211195 ], [ 118.985162, 25.19495 ], [ 118.985162, 25.168954 ], [ 118.951901, 25.15162 ], [ 118.974691, 25.115319 ], [ 118.892155, 25.092558 ], [ 118.945126, 25.028588 ], [ 118.974691, 25.024792 ], [ 119.016575, 25.058409 ], [ 119.023966, 25.04377 ], [ 118.989473, 24.973807 ], [ 119.004872, 24.970009 ] ] ], [ [ [ 118.412338, 24.514538 ], [ 118.451758, 24.506915 ], [ 118.477012, 24.437738 ], [ 118.457918, 24.412128 ], [ 118.405563, 24.427931 ], [ 118.353208, 24.415398 ], [ 118.329802, 24.382152 ], [ 118.282375, 24.413218 ], [ 118.31194, 24.424661 ], [ 118.298389, 24.477506 ], [ 118.318715, 24.486765 ], [ 118.374766, 24.458986 ], [ 118.412338, 24.514538 ] ] ], [ [ [ 119.471138, 25.197116 ], [ 119.444036, 25.20199 ], [ 119.44342, 25.238806 ], [ 119.473601, 25.259916 ], [ 119.501319, 25.21715 ], [ 119.540739, 25.20199 ], [ 119.566608, 25.210112 ], [ 119.549362, 25.161912 ], [ 119.52534, 25.157579 ], [ 119.507478, 25.183036 ], [ 119.471138, 25.197116 ] ] ], [ [ [ 119.580159, 25.627398 ], [ 119.580775, 25.650059 ], [ 119.611572, 25.669479 ], [ 119.580159, 25.627398 ] ] ], [ [ [ 119.976824, 26.191005 ], [ 119.970665, 26.217852 ], [ 119.998998, 26.235569 ], [ 120.016244, 26.217316 ], [ 119.976824, 26.191005 ] ] ], [ [ [ 118.230636, 24.401228 ], [ 118.233716, 24.445911 ], [ 118.273752, 24.441007 ], [ 118.230636, 24.401228 ] ] ], [ [ [ 119.906607, 26.68989 ], [ 119.950954, 26.692563 ], [ 119.926933, 26.664756 ], [ 119.906607, 26.68989 ] ] ], [ [ [ 118.204151, 24.504737 ], [ 118.19368, 24.463344 ], [ 118.143173, 24.420847 ], [ 118.084042, 24.435559 ], [ 118.068644, 24.463344 ], [ 118.093281, 24.540672 ], [ 118.14502, 24.560814 ], [ 118.191832, 24.536861 ], [ 118.204151, 24.504737 ] ] ], [ [ [ 119.929397, 26.134067 ], [ 119.919542, 26.172208 ], [ 119.960194, 26.146961 ], [ 119.929397, 26.134067 ] ] ], [ [ [ 119.642985, 26.129231 ], [ 119.606028, 26.15287 ], [ 119.62697, 26.173282 ], [ 119.665159, 26.155556 ], [ 119.642985, 26.129231 ] ] ], [ [ [ 120.034106, 26.488667 ], [ 120.035954, 26.515981 ], [ 120.071679, 26.521336 ], [ 120.066751, 26.498308 ], [ 120.034106, 26.488667 ] ] ], [ [ [ 119.662079, 25.646822 ], [ 119.716898, 25.664624 ], [ 119.718745, 25.634952 ], [ 119.673782, 25.632794 ], [ 119.662079, 25.646822 ] ] ], [ [ [ 119.760629, 26.613402 ], [ 119.796354, 26.630523 ], [ 119.818527, 26.616613 ], [ 119.776644, 26.600025 ], [ 119.760629, 26.613402 ] ] ], [ [ [ 120.135736, 26.550784 ], [ 120.117874, 26.568984 ], [ 120.153598, 26.604841 ], [ 120.167149, 26.571661 ], [ 120.135736, 26.550784 ] ] ], [ [ [ 120.360554, 26.916909 ], [ 120.319286, 26.944654 ], [ 120.327909, 26.963858 ], [ 120.363018, 26.967592 ], [ 120.394431, 26.933984 ], [ 120.360554, 26.916909 ] ] ], [ [ [ 119.668238, 26.628383 ], [ 119.651608, 26.657269 ], [ 119.673782, 26.680799 ], [ 119.712586, 26.6685 ], [ 119.748926, 26.681334 ], [ 119.758781, 26.659408 ], [ 119.720593, 26.635873 ], [ 119.668238, 26.628383 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"360000\", \"name\": \"江西省\", \"center\": [ 115.892151, 28.676493 ], \"centroid\": [ 115.732975, 27.636112 ], \"childrenNum\": 11, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 13, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 118.193064, 29.395472 ], [ 118.205382, 29.343839 ], [ 118.166578, 29.314099 ], [ 118.178281, 29.297921 ], [ 118.138861, 29.283828 ], [ 118.077883, 29.290614 ], [ 118.073571, 29.216993 ], [ 118.042159, 29.210202 ], [ 118.027992, 29.167882 ], [ 118.045238, 29.149068 ], [ 118.037847, 29.102017 ], [ 118.076035, 29.074822 ], [ 118.066796, 29.053898 ], [ 118.097593, 28.998952 ], [ 118.115455, 29.009944 ], [ 118.115455, 29.009944 ], [ 118.133933, 28.983771 ], [ 118.165346, 28.986912 ], [ 118.227556, 28.942406 ], [ 118.195527, 28.904167 ], [ 118.270056, 28.918836 ], [ 118.300237, 28.826075 ], [ 118.364295, 28.813491 ], [ 118.403099, 28.702791 ], [ 118.428352, 28.681267 ], [ 118.428352, 28.617193 ], [ 118.428352, 28.617193 ], [ 118.412338, 28.55676 ], [ 118.4302, 28.515225 ], [ 118.414802, 28.497344 ], [ 118.474548, 28.478934 ], [ 118.456686, 28.424738 ], [ 118.432048, 28.402104 ], [ 118.455454, 28.384204 ], [ 118.480091, 28.327325 ], [ 118.433896, 28.288335 ], [ 118.424041, 28.291497 ], [ 118.314404, 28.221913 ], [ 118.339041, 28.193962 ], [ 118.375382, 28.186577 ], [ 118.361215, 28.155978 ], [ 118.356288, 28.091586 ], [ 118.242339, 28.075746 ], [ 118.199839, 28.049869 ], [ 118.153644, 28.062016 ], [ 118.120999, 28.041946 ], [ 118.129006, 28.017118 ], [ 118.094513, 28.003909 ], [ 118.096977, 27.970615 ], [ 117.999043, 27.991227 ], [ 117.965166, 27.962687 ], [ 117.942992, 27.974315 ], [ 117.910963, 27.949471 ], [ 117.856145, 27.94577 ], [ 117.78716, 27.896063 ], [ 117.788392, 27.855858 ], [ 117.740348, 27.800286 ], [ 117.704624, 27.834162 ], [ 117.68245, 27.823577 ], [ 117.649805, 27.851625 ], [ 117.609769, 27.863265 ], [ 117.556182, 27.966387 ], [ 117.52169, 27.982243 ], [ 117.477958, 27.930966 ], [ 117.453936, 27.939955 ], [ 117.407741, 27.893948 ], [ 117.366473, 27.88231 ], [ 117.341836, 27.855858 ], [ 117.334444, 27.8876 ], [ 117.280242, 27.871201 ], [ 117.276546, 27.847921 ], [ 117.303031, 27.833103 ], [ 117.296256, 27.764282 ], [ 117.245133, 27.71926 ], [ 117.205097, 27.714492 ], [ 117.204481, 27.683759 ], [ 117.174916, 27.677399 ], [ 117.114554, 27.692238 ], [ 117.096076, 27.667329 ], [ 117.11209, 27.645596 ], [ 117.094228, 27.627569 ], [ 117.065279, 27.665739 ], [ 117.040641, 27.669979 ], [ 117.003685, 27.625449 ], [ 117.024627, 27.592569 ], [ 117.01662, 27.563393 ], [ 117.054808, 27.5427 ], [ 117.076982, 27.566046 ], [ 117.103467, 27.533149 ], [ 117.110242, 27.458828 ], [ 117.133032, 27.42218 ], [ 117.107163, 27.393491 ], [ 117.104699, 27.330773 ], [ 117.140423, 27.322798 ], [ 117.136728, 27.303123 ], [ 117.171836, 27.29036 ], [ 117.149662, 27.241419 ], [ 117.044953, 27.146667 ], [ 117.05296, 27.100327 ], [ 116.967344, 27.061962 ], [ 116.936547, 27.019319 ], [ 116.910062, 27.034779 ], [ 116.851548, 27.009188 ], [ 116.817671, 27.018252 ], [ 116.679085, 26.978259 ], [ 116.632889, 26.933984 ], [ 116.602092, 26.888623 ], [ 116.548506, 26.84004 ], [ 116.543578, 26.803723 ], [ 116.557745, 26.773806 ], [ 116.515245, 26.720898 ], [ 116.520172, 26.684543 ], [ 116.566368, 26.650315 ], [ 116.553433, 26.575942 ], [ 116.539267, 26.559349 ], [ 116.597165, 26.512768 ], [ 116.610716, 26.476882 ], [ 116.638433, 26.477418 ], [ 116.608252, 26.429732 ], [ 116.601476, 26.372911 ], [ 116.553433, 26.365404 ], [ 116.553433, 26.400253 ], [ 116.519557, 26.410437 ], [ 116.499846, 26.361651 ], [ 116.459194, 26.345026 ], [ 116.437021, 26.308016 ], [ 116.412999, 26.297822 ], [ 116.385282, 26.238253 ], [ 116.400064, 26.202819 ], [ 116.392057, 26.171133 ], [ 116.435789, 26.159854 ], [ 116.476441, 26.172745 ], [ 116.489375, 26.113649 ], [ 116.384666, 26.030864 ], [ 116.360028, 25.991601 ], [ 116.369883, 25.963088 ], [ 116.326152, 25.956631 ], [ 116.303362, 25.924341 ], [ 116.258398, 25.902809 ], [ 116.225138, 25.908731 ], [ 116.17771, 25.894195 ], [ 116.132131, 25.860273 ], [ 116.131515, 25.824185 ], [ 116.18079, 25.778926 ], [ 116.129667, 25.758985 ], [ 116.106877, 25.701299 ], [ 116.067457, 25.703995 ], [ 116.068689, 25.646282 ], [ 116.041588, 25.62416 ], [ 116.063145, 25.56317 ], [ 116.040356, 25.548052 ], [ 116.03666, 25.514571 ], [ 116.005247, 25.490264 ], [ 116.023109, 25.435691 ], [ 115.992928, 25.374063 ], [ 116.008327, 25.319437 ], [ 115.987385, 25.290221 ], [ 115.949813, 25.292386 ], [ 115.930719, 25.236099 ], [ 115.855574, 25.20957 ], [ 115.860501, 25.165704 ], [ 115.888219, 25.128866 ], [ 115.880212, 25.092016 ], [ 115.908545, 25.084428 ], [ 115.928255, 25.050276 ], [ 115.873436, 25.019911 ], [ 115.925175, 24.960786 ], [ 115.870356, 24.959701 ], [ 115.89253, 24.936911 ], [ 115.885139, 24.898918 ], [ 115.907313, 24.879917 ], [ 115.861733, 24.863629 ], [ 115.863581, 24.891318 ], [ 115.824161, 24.909232 ], [ 115.807531, 24.862543 ], [ 115.790284, 24.856027 ], [ 115.764415, 24.791933 ], [ 115.776734, 24.774546 ], [ 115.756408, 24.749004 ], [ 115.769342, 24.708236 ], [ 115.801371, 24.705517 ], [ 115.780429, 24.663103 ], [ 115.797676, 24.628834 ], [ 115.840791, 24.584217 ], [ 115.843871, 24.562446 ], [ 115.785357, 24.567345 ], [ 115.752712, 24.546116 ], [ 115.68927, 24.545027 ], [ 115.671408, 24.604895 ], [ 115.605503, 24.62557 ], [ 115.569778, 24.622306 ], [ 115.555611, 24.683768 ], [ 115.522967, 24.702799 ], [ 115.476771, 24.762591 ], [ 115.412714, 24.79302 ], [ 115.372678, 24.774546 ], [ 115.358511, 24.735416 ], [ 115.306772, 24.758787 ], [ 115.269816, 24.749548 ], [ 115.258729, 24.728894 ], [ 115.1842, 24.711498 ], [ 115.104744, 24.667997 ], [ 115.083802, 24.699537 ], [ 115.057317, 24.703343 ], [ 115.024672, 24.669085 ], [ 115.00373, 24.679418 ], [ 114.940288, 24.650049 ], [ 114.909491, 24.661471 ], [ 114.893477, 24.582584 ], [ 114.868839, 24.562446 ], [ 114.846665, 24.602719 ], [ 114.827571, 24.588026 ], [ 114.781376, 24.613057 ], [ 114.729637, 24.608704 ], [ 114.73826, 24.565168 ], [ 114.704999, 24.525973 ], [ 114.664963, 24.583673 ], [ 114.627391, 24.576598 ], [ 114.589819, 24.537406 ], [ 114.534384, 24.559181 ], [ 114.429058, 24.48622 ], [ 114.403189, 24.497657 ], [ 114.391486, 24.563535 ], [ 114.363769, 24.582584 ], [ 114.300943, 24.578775 ], [ 114.289856, 24.619042 ], [ 114.258443, 24.641346 ], [ 114.19069, 24.656576 ], [ 114.169132, 24.689749 ], [ 114.27261, 24.700624 ], [ 114.281849, 24.724001 ], [ 114.336052, 24.749004 ], [ 114.342211, 24.807145 ], [ 114.378551, 24.861457 ], [ 114.403189, 24.877746 ], [ 114.395798, 24.951019 ], [ 114.454928, 24.977062 ], [ 114.45616, 24.99659 ], [ 114.506051, 24.999844 ], [ 114.532536, 25.022623 ], [ 114.561485, 25.077382 ], [ 114.604601, 25.083886 ], [ 114.640326, 25.074129 ], [ 114.664963, 25.10123 ], [ 114.735796, 25.121822 ], [ 114.73518, 25.155954 ], [ 114.685905, 25.173287 ], [ 114.693912, 25.213902 ], [ 114.73518, 25.225813 ], [ 114.743188, 25.274528 ], [ 114.714238, 25.315651 ], [ 114.63663, 25.324306 ], [ 114.599674, 25.385959 ], [ 114.541159, 25.416773 ], [ 114.477718, 25.37136 ], [ 114.438914, 25.376226 ], [ 114.43029, 25.343779 ], [ 114.382863, 25.317274 ], [ 114.31511, 25.33837 ], [ 114.2954, 25.299961 ], [ 114.260291, 25.291845 ], [ 114.204857, 25.29942 ], [ 114.190074, 25.316733 ], [ 114.115545, 25.302125 ], [ 114.083517, 25.275611 ], [ 114.055799, 25.277775 ], [ 114.039785, 25.250714 ], [ 114.017611, 25.273987 ], [ 114.029314, 25.328093 ], [ 114.050256, 25.36433 ], [ 113.983118, 25.415152 ], [ 114.003444, 25.442716 ], [ 113.94493, 25.441635 ], [ 113.962792, 25.528072 ], [ 113.986198, 25.529153 ], [ 113.983118, 25.599336 ], [ 113.957249, 25.611749 ], [ 113.913517, 25.701299 ], [ 113.920293, 25.741197 ], [ 113.961561, 25.77731 ], [ 113.971416, 25.836036 ], [ 114.028082, 25.893119 ], [ 114.028082, 25.98138 ], [ 114.008372, 26.015806 ], [ 114.044096, 26.076564 ], [ 114.087828, 26.06635 ], [ 114.121089, 26.085702 ], [ 114.10569, 26.097526 ], [ 114.188842, 26.121172 ], [ 114.237501, 26.152333 ], [ 114.216559, 26.203355 ], [ 114.181451, 26.214631 ], [ 114.102611, 26.187783 ], [ 114.088444, 26.168448 ], [ 114.013299, 26.184023 ], [ 113.962792, 26.150722 ], [ 113.949242, 26.192616 ], [ 113.972647, 26.20604 ], [ 113.978807, 26.237716 ], [ 114.029314, 26.266163 ], [ 114.021307, 26.288701 ], [ 114.047792, 26.337518 ], [ 114.030546, 26.376664 ], [ 114.062575, 26.406149 ], [ 114.085364, 26.406149 ], [ 114.090292, 26.455988 ], [ 114.110002, 26.482775 ], [ 114.07243, 26.480096 ], [ 114.10877, 26.56952 ], [ 114.019459, 26.587182 ], [ 113.996669, 26.615543 ], [ 113.912901, 26.613938 ], [ 113.860546, 26.664221 ], [ 113.853771, 26.769532 ], [ 113.835909, 26.806394 ], [ 113.877177, 26.859262 ], [ 113.890112, 26.895562 ], [ 113.927068, 26.948922 ], [ 113.892575, 26.964925 ], [ 113.86301, 27.018252 ], [ 113.824206, 27.036378 ], [ 113.803264, 27.099261 ], [ 113.771851, 27.096598 ], [ 113.779242, 27.137081 ], [ 113.846996, 27.222262 ], [ 113.872865, 27.289828 ], [ 113.854387, 27.30525 ], [ 113.872865, 27.346721 ], [ 113.872865, 27.384988 ], [ 113.72812, 27.350442 ], [ 113.699786, 27.331836 ], [ 113.657902, 27.347253 ], [ 113.616635, 27.345658 ], [ 113.605548, 27.38924 ], [ 113.632033, 27.40518 ], [ 113.59754, 27.428554 ], [ 113.591381, 27.467855 ], [ 113.627105, 27.49971 ], [ 113.583374, 27.524657 ], [ 113.579062, 27.545354 ], [ 113.608627, 27.585143 ], [ 113.607395, 27.625449 ], [ 113.652359, 27.663619 ], [ 113.696707, 27.71979 ], [ 113.69917, 27.740979 ], [ 113.763228, 27.799228 ], [ 113.756453, 27.860091 ], [ 113.72812, 27.874904 ], [ 113.752141, 27.93361 ], [ 113.822974, 27.982243 ], [ 113.845148, 27.971672 ], [ 113.864242, 28.004966 ], [ 113.914133, 27.991227 ], [ 113.936307, 28.018703 ], [ 113.966488, 28.017646 ], [ 113.970184, 28.041418 ], [ 114.025618, 28.031382 ], [ 114.047176, 28.057263 ], [ 114.025002, 28.080499 ], [ 113.992357, 28.161255 ], [ 114.012068, 28.174972 ], [ 114.068734, 28.171806 ], [ 114.107538, 28.182885 ], [ 114.109386, 28.205038 ], [ 114.143879, 28.246694 ], [ 114.182067, 28.249858 ], [ 114.198081, 28.29097 ], [ 114.2529, 28.319423 ], [ 114.252284, 28.395787 ], [ 114.214712, 28.403157 ], [ 114.172212, 28.432632 ], [ 114.217175, 28.466308 ], [ 114.218407, 28.48472 ], [ 114.15435, 28.507337 ], [ 114.138335, 28.533629 ], [ 114.08598, 28.558337 ], [ 114.132176, 28.607211 ], [ 114.122321, 28.623497 ], [ 114.157429, 28.761566 ], [ 114.137719, 28.779926 ], [ 114.153734, 28.829221 ], [ 114.124784, 28.843376 ], [ 114.076741, 28.834464 ], [ 114.056415, 28.872204 ], [ 114.060111, 28.902596 ], [ 114.028082, 28.891069 ], [ 114.005292, 28.917788 ], [ 114.008988, 28.955498 ], [ 113.973879, 28.937692 ], [ 113.955401, 28.978536 ], [ 113.961561, 28.999476 ], [ 113.94185, 29.047097 ], [ 113.952321, 29.092604 ], [ 113.98743, 29.126068 ], [ 114.034857, 29.152204 ], [ 114.063191, 29.204978 ], [ 114.169748, 29.216993 ], [ 114.252284, 29.23475 ], [ 114.259059, 29.343839 ], [ 114.307102, 29.365225 ], [ 114.341595, 29.327665 ], [ 114.376088, 29.322969 ], [ 114.440145, 29.341752 ], [ 114.466015, 29.324013 ], [ 114.519602, 29.325578 ], [ 114.589819, 29.352707 ], [ 114.621847, 29.379828 ], [ 114.67297, 29.395993 ], [ 114.740724, 29.386607 ], [ 114.759818, 29.363139 ], [ 114.784455, 29.386086 ], [ 114.812173, 29.383478 ], [ 114.866375, 29.404335 ], [ 114.895325, 29.397557 ], [ 114.931049, 29.422581 ], [ 114.947063, 29.465317 ], [ 114.935977, 29.486678 ], [ 114.90518, 29.473132 ], [ 114.918114, 29.454374 ], [ 114.888549, 29.436134 ], [ 114.860216, 29.476258 ], [ 114.900868, 29.505951 ], [ 114.940288, 29.493971 ], [ 114.966773, 29.522096 ], [ 114.947679, 29.542924 ], [ 115.00065, 29.572076 ], [ 115.033295, 29.546568 ], [ 115.087498, 29.560104 ], [ 115.086266, 29.525741 ], [ 115.154019, 29.510117 ], [ 115.157099, 29.584568 ], [ 115.120142, 29.597578 ], [ 115.143548, 29.645961 ], [ 115.117679, 29.655843 ], [ 115.113367, 29.684963 ], [ 115.176809, 29.654803 ], [ 115.250722, 29.660003 ], [ 115.28583, 29.618391 ], [ 115.304924, 29.637118 ], [ 115.355431, 29.649602 ], [ 115.412714, 29.688602 ], [ 115.470612, 29.739539 ], [ 115.479235, 29.811224 ], [ 115.51188, 29.840299 ], [ 115.611662, 29.841337 ], [ 115.667712, 29.850161 ], [ 115.706517, 29.837703 ], [ 115.762567, 29.793048 ], [ 115.837096, 29.748373 ], [ 115.909777, 29.723949 ], [ 115.965827, 29.724469 ], [ 116.049595, 29.761881 ], [ 116.087167, 29.795125 ], [ 116.13521, 29.819532 ], [ 116.172783, 29.828358 ], [ 116.227601, 29.816936 ], [ 116.250391, 29.785777 ], [ 116.280572, 29.788893 ], [ 116.342782, 29.835626 ], [ 116.467818, 29.896347 ], [ 116.525716, 29.897385 ], [ 116.552201, 29.909836 ], [ 116.585462, 30.045657 ], [ 116.620571, 30.073109 ], [ 116.666766, 30.076734 ], [ 116.720353, 30.053945 ], [ 116.747454, 30.057053 ], [ 116.783794, 30.030632 ], [ 116.802889, 29.99643 ], [ 116.830606, 30.004723 ], [ 116.83307, 29.95755 ], [ 116.868794, 29.980361 ], [ 116.900207, 29.949253 ], [ 116.882961, 29.893753 ], [ 116.780715, 29.792529 ], [ 116.762237, 29.802396 ], [ 116.673541, 29.709916 ], [ 116.653831, 29.694841 ], [ 116.680317, 29.681323 ], [ 116.651983, 29.637118 ], [ 116.716657, 29.590813 ], [ 116.721585, 29.564789 ], [ 116.760389, 29.599139 ], [ 116.780715, 29.569994 ], [ 116.849084, 29.57624 ], [ 116.873722, 29.609546 ], [ 116.939627, 29.648561 ], [ 116.974736, 29.657403 ], [ 116.996294, 29.683403 ], [ 117.041873, 29.680803 ], [ 117.112706, 29.711995 ], [ 117.108395, 29.75201 ], [ 117.136728, 29.775388 ], [ 117.123177, 29.798761 ], [ 117.073286, 29.831992 ], [ 117.127489, 29.86158 ], [ 117.129952, 29.89946 ], [ 117.171836, 29.920729 ], [ 117.2168, 29.926953 ], [ 117.246365, 29.915023 ], [ 117.261763, 29.880781 ], [ 117.25314, 29.834588 ], [ 117.29256, 29.822647 ], [ 117.338756, 29.848085 ], [ 117.359082, 29.812782 ], [ 117.382487, 29.840818 ], [ 117.415132, 29.85068 ], [ 117.408973, 29.802396 ], [ 117.455168, 29.749412 ], [ 117.453936, 29.688082 ], [ 117.490277, 29.660003 ], [ 117.530313, 29.654282 ], [ 117.523538, 29.630356 ], [ 117.543248, 29.588731 ], [ 117.608537, 29.591333 ], [ 117.647957, 29.614749 ], [ 117.678754, 29.595496 ], [ 117.690457, 29.555939 ], [ 117.729877, 29.550213 ], [ 117.795167, 29.570515 ], [ 117.872775, 29.54761 ], [ 117.933753, 29.549172 ], [ 118.00397, 29.578322 ], [ 118.042774, 29.566351 ], [ 118.050782, 29.542924 ], [ 118.095129, 29.534072 ], [ 118.143788, 29.489803 ], [ 118.127774, 29.47209 ], [ 118.136397, 29.418932 ], [ 118.193064, 29.395472 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"370000\", \"name\": \"山东省\", \"center\": [ 117.000923, 36.675807 ], \"centroid\": [ 118.187667, 36.376018 ], \"childrenNum\": 16, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 14, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 116.374195, 34.640011 ], [ 116.334159, 34.620806 ], [ 116.32492, 34.601104 ], [ 116.286116, 34.608986 ], [ 116.247927, 34.551829 ], [ 116.196804, 34.575977 ], [ 116.156768, 34.5538 ], [ 116.134594, 34.559715 ], [ 116.101334, 34.60603 ], [ 116.037276, 34.593222 ], [ 115.991081, 34.615389 ], [ 115.984305, 34.589281 ], [ 115.838328, 34.5676 ], [ 115.827241, 34.558236 ], [ 115.787821, 34.580905 ], [ 115.697278, 34.594207 ], [ 115.685575, 34.556265 ], [ 115.622749, 34.574499 ], [ 115.553148, 34.568586 ], [ 115.515575, 34.582383 ], [ 115.461373, 34.637057 ], [ 115.433655, 34.725149 ], [ 115.449054, 34.74433 ], [ 115.42688, 34.805285 ], [ 115.317243, 34.859321 ], [ 115.256265, 34.845079 ], [ 115.239019, 34.87798 ], [ 115.251953, 34.906451 ], [ 115.205142, 34.914303 ], [ 115.219309, 34.96042 ], [ 115.157099, 34.957968 ], [ 115.12815, 35.00455 ], [ 115.075179, 35.000628 ], [ 115.028983, 34.9717 ], [ 115.008041, 34.988372 ], [ 114.950759, 34.989843 ], [ 114.923658, 34.968757 ], [ 114.880542, 35.00357 ], [ 114.824492, 35.012393 ], [ 114.852209, 35.041797 ], [ 114.818948, 35.051596 ], [ 114.835578, 35.076578 ], [ 114.883006, 35.098615 ], [ 114.841738, 35.15099 ], [ 114.861448, 35.182301 ], [ 114.932281, 35.198441 ], [ 114.929201, 35.244886 ], [ 114.957534, 35.261014 ], [ 115.04315, 35.376744 ], [ 115.073947, 35.374304 ], [ 115.091809, 35.416259 ], [ 115.117679, 35.400163 ], [ 115.126302, 35.41821 ], [ 115.172497, 35.426501 ], [ 115.237171, 35.423087 ], [ 115.307388, 35.480126 ], [ 115.356047, 35.490359 ], [ 115.34496, 35.55368 ], [ 115.383148, 35.568772 ], [ 115.48601, 35.710306 ], [ 115.52851, 35.733628 ], [ 115.622749, 35.739457 ], [ 115.693582, 35.754028 ], [ 115.696046, 35.788989 ], [ 115.73485, 35.833154 ], [ 115.773654, 35.854014 ], [ 115.81677, 35.844312 ], [ 115.859886, 35.857894 ], [ 115.882675, 35.879718 ], [ 115.873436, 35.918985 ], [ 115.907929, 35.92674 ], [ 115.911624, 35.960171 ], [ 115.984921, 35.974218 ], [ 116.048979, 35.970343 ], [ 116.063145, 36.028927 ], [ 116.099486, 36.112129 ], [ 116.057602, 36.104877 ], [ 115.989849, 36.045381 ], [ 115.89869, 36.026507 ], [ 115.859886, 36.003756 ], [ 115.817386, 36.012954 ], [ 115.779813, 35.993588 ], [ 115.774886, 35.974702 ], [ 115.699125, 35.966468 ], [ 115.648618, 35.922863 ], [ 115.583945, 35.921893 ], [ 115.513112, 35.890385 ], [ 115.505104, 35.899112 ], [ 115.495249, 35.896203 ], [ 115.487858, 35.880688 ], [ 115.460141, 35.867594 ], [ 115.407786, 35.80889 ], [ 115.363438, 35.779765 ], [ 115.335105, 35.796756 ], [ 115.364054, 35.894264 ], [ 115.353583, 35.938854 ], [ 115.362822, 35.971796 ], [ 115.447822, 36.01247 ], [ 115.449054, 36.047317 ], [ 115.484163, 36.125666 ], [ 115.483547, 36.148865 ], [ 115.474923, 36.248352 ], [ 115.466916, 36.258969 ], [ 115.466916, 36.258969 ], [ 115.462605, 36.276339 ], [ 115.417025, 36.292742 ], [ 115.423185, 36.32216 ], [ 115.366518, 36.30914 ], [ 115.368982, 36.342409 ], [ 115.340033, 36.398307 ], [ 115.297533, 36.413239 ], [ 115.317243, 36.454166 ], [ 115.291374, 36.460423 ], [ 115.272895, 36.497476 ], [ 115.33141, 36.550378 ], [ 115.355431, 36.627262 ], [ 115.365902, 36.621979 ], [ 115.420105, 36.686795 ], [ 115.451518, 36.702151 ], [ 115.479851, 36.760187 ], [ 115.524815, 36.763543 ], [ 115.686807, 36.810034 ], [ 115.688654, 36.838777 ], [ 115.71206, 36.883308 ], [ 115.75764, 36.902453 ], [ 115.79706, 36.968945 ], [ 115.776734, 36.992848 ], [ 115.85619, 37.060694 ], [ 115.888219, 37.112254 ], [ 115.879596, 37.150901 ], [ 115.91224, 37.177132 ], [ 115.909777, 37.20669 ], [ 115.969523, 37.239572 ], [ 115.975682, 37.337179 ], [ 116.024341, 37.360015 ], [ 116.085935, 37.373809 ], [ 116.106261, 37.368577 ], [ 116.169087, 37.384271 ], [ 116.193109, 37.365723 ], [ 116.236224, 37.361442 ], [ 116.2855, 37.404241 ], [ 116.226369, 37.428007 ], [ 116.243, 37.447965 ], [ 116.224522, 37.479791 ], [ 116.240536, 37.489764 ], [ 116.240536, 37.489764 ], [ 116.27626, 37.466967 ], [ 116.290427, 37.484065 ], [ 116.278724, 37.524895 ], [ 116.295355, 37.554316 ], [ 116.336007, 37.581355 ], [ 116.36742, 37.566177 ], [ 116.379738, 37.522047 ], [ 116.38097, 37.522522 ], [ 116.379738, 37.522047 ], [ 116.38097, 37.522522 ], [ 116.433941, 37.473142 ], [ 116.448108, 37.503059 ], [ 116.4826, 37.521573 ], [ 116.575607, 37.610754 ], [ 116.604556, 37.624975 ], [ 116.66307, 37.686096 ], [ 116.679085, 37.728708 ], [ 116.724664, 37.744327 ], [ 116.753613, 37.77035 ], [ 116.753613, 37.793054 ], [ 116.804736, 37.848837 ], [ 116.837997, 37.835132 ], [ 116.919301, 37.846002 ], [ 117.027091, 37.832296 ], [ 117.074518, 37.848837 ], [ 117.150278, 37.839385 ], [ 117.185387, 37.849783 ], [ 117.271618, 37.839858 ], [ 117.320278, 37.861596 ], [ 117.400966, 37.844584 ], [ 117.438538, 37.854035 ], [ 117.481038, 37.914967 ], [ 117.513067, 37.94329 ], [ 117.524154, 37.989527 ], [ 117.557414, 38.046105 ], [ 117.557414, 38.046105 ], [ 117.586979, 38.071551 ], [ 117.704624, 38.076262 ], [ 117.746508, 38.12524 ], [ 117.771145, 38.134655 ], [ 117.766834, 38.158658 ], [ 117.789007, 38.180772 ], [ 117.808718, 38.22827 ], [ 117.848754, 38.255062 ], [ 117.895565, 38.301572 ], [ 117.896797, 38.279495 ], [ 118.018753, 38.202409 ], [ 118.045238, 38.214165 ], [ 118.112376, 38.210403 ], [ 118.177665, 38.186417 ], [ 118.217085, 38.146893 ], [ 118.331034, 38.12524 ], [ 118.404331, 38.121003 ], [ 118.431432, 38.106406 ], [ 118.44991, 38.124299 ], [ 118.504729, 38.11394 ], [ 118.534294, 38.063541 ], [ 118.552156, 38.05553 ], [ 118.597736, 38.079088 ], [ 118.607591, 38.129006 ], [ 118.626069, 38.138421 ], [ 118.703677, 38.151129 ], [ 118.811467, 38.157717 ], [ 118.908169, 38.139362 ], [ 118.974075, 38.094162 ], [ 119.001792, 37.99613 ], [ 119.110813, 37.921577 ], [ 119.12806, 37.847892 ], [ 119.16132, 37.81906 ], [ 119.212443, 37.838913 ], [ 119.24016, 37.878131 ], [ 119.291899, 37.869627 ], [ 119.309146, 37.805349 ], [ 119.280197, 37.692726 ], [ 119.262334, 37.660517 ], [ 119.236465, 37.651988 ], [ 119.153313, 37.655305 ], [ 119.023966, 37.642037 ], [ 118.988857, 37.620709 ], [ 118.939582, 37.527268 ], [ 118.942662, 37.497361 ], [ 119.001176, 37.31862 ], [ 119.03998, 37.30434 ], [ 119.054147, 37.254816 ], [ 119.084328, 37.239572 ], [ 119.091103, 37.257674 ], [ 119.12806, 37.254816 ], [ 119.136683, 37.230995 ], [ 119.204436, 37.280058 ], [ 119.190885, 37.25958 ], [ 119.2069, 37.223371 ], [ 119.298675, 37.197156 ], [ 119.301138, 37.139452 ], [ 119.327624, 37.115595 ], [ 119.361501, 37.125616 ], [ 119.428022, 37.125616 ], [ 119.489616, 37.134681 ], [ 119.576463, 37.127524 ], [ 119.678709, 37.158056 ], [ 119.698419, 37.127047 ], [ 119.744615, 37.135158 ], [ 119.83023, 37.225754 ], [ 119.865339, 37.233854 ], [ 119.89244, 37.263866 ], [ 119.883201, 37.311004 ], [ 119.837006, 37.346695 ], [ 119.843781, 37.376662 ], [ 119.926933, 37.386649 ], [ 119.949723, 37.419927 ], [ 120.010085, 37.442263 ], [ 120.064903, 37.448915 ], [ 120.086461, 37.465067 ], [ 120.144359, 37.481691 ], [ 120.222584, 37.532963 ], [ 120.246605, 37.556689 ], [ 120.208417, 37.588469 ], [ 120.215192, 37.621183 ], [ 120.272475, 37.636824 ], [ 120.269395, 37.658622 ], [ 120.22012, 37.671886 ], [ 120.227511, 37.693673 ], [ 120.367945, 37.697935 ], [ 120.454793, 37.757576 ], [ 120.517619, 37.750005 ], [ 120.590915, 37.7642 ], [ 120.634031, 37.796364 ], [ 120.656821, 37.793054 ], [ 120.733197, 37.833714 ], [ 120.839139, 37.82426 ], [ 120.845298, 37.826623 ], [ 120.874863, 37.833241 ], [ 120.940769, 37.819533 ], [ 120.943233, 37.785486 ], [ 120.994356, 37.759468 ], [ 121.037471, 37.718767 ], [ 121.136022, 37.723501 ], [ 121.160043, 37.698882 ], [ 121.142797, 37.661464 ], [ 121.161891, 37.646302 ], [ 121.148956, 37.626397 ], [ 121.17421, 37.597479 ], [ 121.217326, 37.582778 ], [ 121.304789, 37.582778 ], [ 121.358376, 37.597479 ], [ 121.349137, 37.635403 ], [ 121.391021, 37.625449 ], [ 121.435368, 37.592737 ], [ 121.395948, 37.589891 ], [ 121.400876, 37.557638 ], [ 121.460006, 37.522522 ], [ 121.477252, 37.475992 ], [ 121.571491, 37.441313 ], [ 121.575802, 37.460317 ], [ 121.635548, 37.494037 ], [ 121.66573, 37.473617 ], [ 121.772903, 37.466492 ], [ 121.923808, 37.473142 ], [ 121.997721, 37.494512 ], [ 122.017431, 37.531065 ], [ 122.075329, 37.540556 ], [ 122.08888, 37.554316 ], [ 122.150474, 37.557163 ], [ 122.163408, 37.519199 ], [ 122.131996, 37.49926 ], [ 122.166488, 37.438937 ], [ 122.194205, 37.456041 ], [ 122.25272, 37.467917 ], [ 122.287212, 37.445114 ], [ 122.281053, 37.430858 ], [ 122.337103, 37.414223 ], [ 122.41656, 37.414699 ], [ 122.487393, 37.43466 ], [ 122.4954, 37.413748 ], [ 122.553914, 37.407093 ], [ 122.641377, 37.428482 ], [ 122.67587, 37.413273 ], [ 122.701739, 37.418501 ], [ 122.714058, 37.392355 ], [ 122.6925, 37.373809 ], [ 122.650616, 37.388551 ], [ 122.607501, 37.364296 ], [ 122.611196, 37.339558 ], [ 122.573624, 37.296247 ], [ 122.567465, 37.25958 ], [ 122.592718, 37.261485 ], [ 122.624131, 37.190959 ], [ 122.573624, 37.176178 ], [ 122.581015, 37.147562 ], [ 122.533588, 37.153286 ], [ 122.484313, 37.128956 ], [ 122.478769, 37.058784 ], [ 122.467067, 37.037289 ], [ 122.494168, 37.033945 ], [ 122.575472, 37.054485 ], [ 122.583479, 37.037289 ], [ 122.544675, 37.004797 ], [ 122.55761, 36.968467 ], [ 122.532356, 36.901496 ], [ 122.48924, 36.886659 ], [ 122.483081, 36.913938 ], [ 122.434422, 36.914416 ], [ 122.457212, 36.868946 ], [ 122.383915, 36.865595 ], [ 122.378371, 36.844525 ], [ 122.344495, 36.828239 ], [ 122.280437, 36.835904 ], [ 122.275509, 36.83734 ], [ 122.220691, 36.848835 ], [ 122.174495, 36.842609 ], [ 122.188662, 36.866073 ], [ 122.175727, 36.894317 ], [ 122.119677, 36.891924 ], [ 122.141235, 36.938337 ], [ 122.124604, 36.944077 ], [ 122.115981, 36.94025 ], [ 122.093191, 36.913938 ], [ 122.051923, 36.904846 ], [ 122.042684, 36.871819 ], [ 122.008808, 36.96225 ], [ 121.965076, 36.938337 ], [ 121.927504, 36.932597 ], [ 121.767975, 36.874691 ], [ 121.762432, 36.84644 ], [ 121.726092, 36.826323 ], [ 121.6762, 36.819137 ], [ 121.631853, 36.80093 ], [ 121.651563, 36.723739 ], [ 121.556092, 36.764502 ], [ 121.575186, 36.740047 ], [ 121.532071, 36.73621 ], [ 121.485259, 36.786073 ], [ 121.548701, 36.807638 ], [ 121.565331, 36.830635 ], [ 121.506817, 36.803805 ], [ 121.496962, 36.795179 ], [ 121.454462, 36.752515 ], [ 121.3941, 36.738129 ], [ 121.400876, 36.701191 ], [ 121.35776, 36.713186 ], [ 121.31218, 36.702151 ], [ 121.29863, 36.702151 ], [ 121.251818, 36.671436 ], [ 121.161275, 36.651273 ], [ 121.078123, 36.607568 ], [ 121.028848, 36.572971 ], [ 120.955551, 36.575855 ], [ 120.926602, 36.611892 ], [ 120.882255, 36.627262 ], [ 120.847146, 36.618617 ], [ 120.884718, 36.601323 ], [ 120.909972, 36.568645 ], [ 120.962327, 36.562877 ], [ 120.983269, 36.546051 ], [ 120.95432, 36.507578 ], [ 120.965407, 36.466199 ], [ 120.938305, 36.447908 ], [ 120.90874, 36.450315 ], [ 120.919827, 36.419018 ], [ 120.871784, 36.36699 ], [ 120.848994, 36.403124 ], [ 120.858849, 36.424797 ], [ 120.828668, 36.46668 ], [ 120.759683, 36.46283 ], [ 120.694393, 36.390118 ], [ 120.744284, 36.327946 ], [ 120.66298, 36.331803 ], [ 120.653741, 36.282129 ], [ 120.686386, 36.279234 ], [ 120.696857, 36.15563 ], [ 120.712255, 36.126632 ], [ 120.672835, 36.130016 ], [ 120.64327, 36.114547 ], [ 120.615553, 36.120348 ], [ 120.593995, 36.100525 ], [ 120.546568, 36.107778 ], [ 120.546568, 36.091821 ], [ 120.468959, 36.087952 ], [ 120.429539, 36.056994 ], [ 120.370409, 36.053607 ], [ 120.289721, 36.059413 ], [ 120.35809, 36.174956 ], [ 120.362402, 36.196209 ], [ 120.319902, 36.232423 ], [ 120.297112, 36.225664 ], [ 120.310047, 36.185101 ], [ 120.263236, 36.182202 ], [ 120.260772, 36.198624 ], [ 120.224432, 36.19138 ], [ 120.22012, 36.209248 ], [ 120.181316, 36.203936 ], [ 120.140664, 36.173507 ], [ 120.142512, 36.143549 ], [ 120.108635, 36.127599 ], [ 120.116642, 36.102943 ], [ 120.152367, 36.095206 ], [ 120.181316, 36.066669 ], [ 120.239214, 36.062316 ], [ 120.234902, 36.030863 ], [ 120.198562, 35.995525 ], [ 120.257076, 36.025055 ], [ 120.249069, 35.992136 ], [ 120.285409, 36.01247 ], [ 120.289721, 36.017311 ], [ 120.316206, 36.002304 ], [ 120.30512, 35.971796 ], [ 120.265699, 35.966468 ], [ 120.209033, 35.917531 ], [ 120.202258, 35.89184 ], [ 120.169613, 35.888446 ], [ 120.207801, 35.947575 ], [ 120.152983, 35.907353 ], [ 120.125265, 35.906868 ], [ 120.112331, 35.885052 ], [ 120.064287, 35.873414 ], [ 120.032258, 35.812288 ], [ 120.049505, 35.786562 ], [ 120.01378, 35.714193 ], [ 119.958346, 35.760342 ], [ 119.926317, 35.759856 ], [ 119.920157, 35.739943 ], [ 119.950339, 35.729741 ], [ 119.91215, 35.660725 ], [ 119.925085, 35.637382 ], [ 119.868419, 35.60868 ], [ 119.83023, 35.620357 ], [ 119.824071, 35.646136 ], [ 119.792658, 35.615492 ], [ 119.800665, 35.581915 ], [ 119.752622, 35.588729 ], [ 119.75139, 35.617924 ], [ 119.718129, 35.615492 ], [ 119.662079, 35.589215 ], [ 119.663311, 35.562931 ], [ 119.618963, 35.459655 ], [ 119.579543, 35.406504 ], [ 119.590014, 35.37284 ], [ 119.543819, 35.347949 ], [ 119.538275, 35.296678 ], [ 119.493312, 35.318655 ], [ 119.450812, 35.285443 ], [ 119.411392, 35.231689 ], [ 119.397841, 35.137777 ], [ 119.428022, 35.121136 ], [ 119.373819, 35.078538 ], [ 119.354109, 35.080007 ], [ 119.306066, 35.076578 ], [ 119.286972, 35.115261 ], [ 119.250016, 35.124562 ], [ 119.217371, 35.106939 ], [ 119.137915, 35.096167 ], [ 119.114509, 35.055026 ], [ 119.027045, 35.055516 ], [ 118.942662, 35.040817 ], [ 118.928495, 35.051106 ], [ 118.86259, 35.025626 ], [ 118.860742, 34.944233 ], [ 118.805307, 34.87307 ], [ 118.80038, 34.843114 ], [ 118.772047, 34.794474 ], [ 118.739402, 34.792508 ], [ 118.719076, 34.745313 ], [ 118.764039, 34.740396 ], [ 118.783749, 34.723181 ], [ 118.739402, 34.693663 ], [ 118.690127, 34.678408 ], [ 118.664257, 34.693663 ], [ 118.607591, 34.694155 ], [ 118.601431, 34.714327 ], [ 118.545997, 34.705964 ], [ 118.460997, 34.656258 ], [ 118.473932, 34.623269 ], [ 118.439439, 34.626223 ], [ 118.424657, 34.595193 ], [ 118.439439, 34.507949 ], [ 118.416034, 34.473914 ], [ 118.404947, 34.427525 ], [ 118.379693, 34.415183 ], [ 118.290382, 34.424563 ], [ 118.277447, 34.404814 ], [ 118.220165, 34.405802 ], [ 118.217701, 34.379134 ], [ 118.179513, 34.379628 ], [ 118.177665, 34.45319 ], [ 118.132702, 34.483287 ], [ 118.16473, 34.50499 ], [ 118.185056, 34.543942 ], [ 118.079115, 34.569571 ], [ 118.114839, 34.614404 ], [ 118.084042, 34.655766 ], [ 118.053861, 34.650843 ], [ 117.951615, 34.678408 ], [ 117.909732, 34.670533 ], [ 117.902956, 34.644443 ], [ 117.793935, 34.651827 ], [ 117.791471, 34.583368 ], [ 117.801942, 34.518798 ], [ 117.684298, 34.547392 ], [ 117.659044, 34.501044 ], [ 117.609769, 34.490686 ], [ 117.592523, 34.462566 ], [ 117.53832, 34.467006 ], [ 117.465023, 34.484767 ], [ 117.402813, 34.550843 ], [ 117.402813, 34.569571 ], [ 117.362777, 34.589281 ], [ 117.325205, 34.573021 ], [ 117.325205, 34.573021 ], [ 117.32151, 34.566614 ], [ 117.32151, 34.566614 ], [ 117.311654, 34.561686 ], [ 117.311654, 34.561686 ], [ 117.267307, 34.528659 ], [ 117.27285, 34.499565 ], [ 117.252524, 34.48674 ], [ 117.248213, 34.451216 ], [ 117.166293, 34.434435 ], [ 117.139191, 34.526687 ], [ 117.15151, 34.559222 ], [ 117.104083, 34.648874 ], [ 117.073286, 34.639026 ], [ 117.061583, 34.675947 ], [ 117.070206, 34.713835 ], [ 117.022163, 34.759081 ], [ 116.969192, 34.771864 ], [ 116.95133, 34.81069 ], [ 116.979047, 34.815113 ], [ 116.966113, 34.844588 ], [ 116.929156, 34.843114 ], [ 116.922381, 34.894671 ], [ 116.858323, 34.928533 ], [ 116.821983, 34.929515 ], [ 116.809048, 34.968757 ], [ 116.781947, 34.961891 ], [ 116.781331, 34.916757 ], [ 116.677853, 34.939327 ], [ 116.622418, 34.939818 ], [ 116.613795, 34.922645 ], [ 116.557745, 34.908905 ], [ 116.445028, 34.895652 ], [ 116.408071, 34.850972 ], [ 116.403144, 34.756131 ], [ 116.369267, 34.749247 ], [ 116.363724, 34.715311 ], [ 116.392057, 34.710391 ], [ 116.374195, 34.640011 ] ] ], [ [ [ 120.729502, 37.947065 ], [ 120.76461, 37.923937 ], [ 120.76461, 37.895134 ], [ 120.721495, 37.917328 ], [ 120.729502, 37.947065 ] ] ], [ [ [ 120.692545, 37.983867 ], [ 120.724574, 37.987641 ], [ 120.732581, 37.961694 ], [ 120.692545, 37.983867 ] ] ], [ [ [ 120.990044, 36.413239 ], [ 120.950624, 36.414684 ], [ 120.978341, 36.428649 ], [ 120.990044, 36.413239 ] ] ], [ [ [ 120.750444, 38.150188 ], [ 120.742436, 38.199116 ], [ 120.7874, 38.158658 ], [ 120.750444, 38.150188 ] ] ], [ [ [ 120.918595, 38.345236 ], [ 120.895189, 38.36307 ], [ 120.914899, 38.373393 ], [ 120.918595, 38.345236 ] ] ], [ [ [ 120.159142, 35.765198 ], [ 120.172077, 35.785591 ], [ 120.193019, 35.756942 ], [ 120.169613, 35.740428 ], [ 120.159142, 35.765198 ] ] ], [ [ [ 120.62664, 37.94565 ], [ 120.602002, 37.978678 ], [ 120.631567, 37.981037 ], [ 120.62664, 37.94565 ] ] ], [ [ [ 120.802183, 38.284193 ], [ 120.816349, 38.318008 ], [ 120.848378, 38.305799 ], [ 120.802183, 38.284193 ] ] ], [ [ [ 121.489571, 37.577086 ], [ 121.488955, 37.578035 ], [ 121.489571, 37.578509 ], [ 121.489571, 37.577561 ], [ 121.489571, 37.577086 ] ] ], [ [ [ 121.485875, 37.578509 ], [ 121.487723, 37.578509 ], [ 121.487723, 37.578035 ], [ 121.485875, 37.578509 ] ] ], [ [ [ 121.487723, 37.578509 ], [ 121.488339, 37.578509 ], [ 121.488955, 37.578509 ], [ 121.488955, 37.578035 ], [ 121.487723, 37.577561 ], [ 121.487723, 37.578509 ] ] ], [ [ [ 115.495249, 35.896203 ], [ 115.505104, 35.899112 ], [ 115.513112, 35.890385 ], [ 115.487858, 35.880688 ], [ 115.495249, 35.896203 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"410000\", \"name\": \"河南省\", \"center\": [ 113.665412, 34.757975 ], \"centroid\": [ 113.619748, 33.902617 ], \"childrenNum\": 18, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 15, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 115.5088, 32.468761 ], [ 115.509416, 32.466741 ], [ 115.522967, 32.441997 ], [ 115.57101, 32.419266 ], [ 115.604271, 32.425833 ], [ 115.626445, 32.40512 ], [ 115.657857, 32.428864 ], [ 115.667712, 32.409667 ], [ 115.704669, 32.495013 ], [ 115.742241, 32.476335 ], [ 115.771806, 32.505108 ], [ 115.789052, 32.468761 ], [ 115.861117, 32.537403 ], [ 115.891298, 32.576243 ], [ 115.910393, 32.567165 ], [ 115.8759, 32.542448 ], [ 115.845719, 32.501575 ], [ 115.883291, 32.487946 ], [ 115.865429, 32.458662 ], [ 115.899306, 32.390971 ], [ 115.912856, 32.227596 ], [ 115.941805, 32.166318 ], [ 115.922095, 32.049725 ], [ 115.928871, 32.003046 ], [ 115.909161, 31.94314 ], [ 115.920248, 31.920285 ], [ 115.894994, 31.8649 ], [ 115.893762, 31.832365 ], [ 115.914704, 31.814567 ], [ 115.886371, 31.776418 ], [ 115.851878, 31.786593 ], [ 115.808147, 31.770313 ], [ 115.808147, 31.770313 ], [ 115.767495, 31.78761 ], [ 115.731154, 31.76726 ], [ 115.676336, 31.778453 ], [ 115.553764, 31.69549 ], [ 115.534054, 31.698545 ], [ 115.495249, 31.673083 ], [ 115.476771, 31.643028 ], [ 115.485394, 31.608885 ], [ 115.439815, 31.588496 ], [ 115.415793, 31.525771 ], [ 115.371446, 31.495668 ], [ 115.389924, 31.450241 ], [ 115.373909, 31.405813 ], [ 115.338801, 31.40428 ], [ 115.301229, 31.383846 ], [ 115.250722, 31.392021 ], [ 115.252569, 31.421646 ], [ 115.211301, 31.442072 ], [ 115.218077, 31.515057 ], [ 115.235939, 31.555354 ], [ 115.212533, 31.555354 ], [ 115.16449, 31.604808 ], [ 115.12507, 31.599201 ], [ 115.106592, 31.567592 ], [ 115.114599, 31.530362 ], [ 115.096121, 31.508425 ], [ 115.022824, 31.527811 ], [ 114.995107, 31.471171 ], [ 114.962462, 31.494648 ], [ 114.884238, 31.469129 ], [ 114.870071, 31.479337 ], [ 114.830035, 31.45892 ], [ 114.789383, 31.480358 ], [ 114.778912, 31.520669 ], [ 114.696376, 31.525771 ], [ 114.641558, 31.582378 ], [ 114.61692, 31.585437 ], [ 114.572572, 31.553824 ], [ 114.560869, 31.560963 ], [ 114.547935, 31.623665 ], [ 114.57134, 31.660858 ], [ 114.586123, 31.762172 ], [ 114.549783, 31.766751 ], [ 114.530688, 31.742834 ], [ 114.443841, 31.728074 ], [ 114.403189, 31.746906 ], [ 114.350218, 31.755557 ], [ 114.292936, 31.752503 ], [ 114.235654, 31.833382 ], [ 114.191922, 31.852192 ], [ 114.134024, 31.843042 ], [ 114.119241, 31.805922 ], [ 114.089676, 31.781506 ], [ 114.017611, 31.770822 ], [ 113.988662, 31.749959 ], [ 113.952321, 31.793714 ], [ 113.957865, 31.852701 ], [ 113.914749, 31.877098 ], [ 113.893807, 31.847109 ], [ 113.854387, 31.843042 ], [ 113.830981, 31.87913 ], [ 113.832213, 31.918761 ], [ 113.805728, 31.929428 ], [ 113.817431, 31.964467 ], [ 113.757685, 31.98985 ], [ 113.791561, 32.036028 ], [ 113.728735, 32.083197 ], [ 113.722576, 32.12426 ], [ 113.750293, 32.11615 ], [ 113.782322, 32.184553 ], [ 113.752757, 32.215951 ], [ 113.73859, 32.255942 ], [ 113.749061, 32.272642 ], [ 113.758301, 32.27669 ], [ 113.768156, 32.284279 ], [ 113.768772, 32.30148 ], [ 113.753989, 32.328286 ], [ 113.76754, 32.370249 ], [ 113.735511, 32.410677 ], [ 113.700402, 32.420782 ], [ 113.650511, 32.412698 ], [ 113.624642, 32.36115 ], [ 113.511925, 32.316654 ], [ 113.428773, 32.270618 ], [ 113.376418, 32.298445 ], [ 113.353628, 32.294904 ], [ 113.317904, 32.327275 ], [ 113.333918, 32.336377 ], [ 113.2366, 32.407141 ], [ 113.211962, 32.431895 ], [ 113.158992, 32.410677 ], [ 113.155912, 32.380863 ], [ 113.118956, 32.375809 ], [ 113.107869, 32.398551 ], [ 113.078919, 32.394508 ], [ 113.025949, 32.425328 ], [ 113.000695, 32.41674 ], [ 112.992072, 32.378336 ], [ 112.912, 32.390971 ], [ 112.888594, 32.37682 ], [ 112.860877, 32.396024 ], [ 112.776493, 32.358623 ], [ 112.735841, 32.356095 ], [ 112.716747, 32.357612 ], [ 112.645298, 32.368227 ], [ 112.612037, 32.386928 ], [ 112.589248, 32.381369 ], [ 112.545516, 32.404109 ], [ 112.530733, 32.37682 ], [ 112.477147, 32.380863 ], [ 112.448814, 32.34295 ], [ 112.390915, 32.37126 ], [ 112.360118, 32.3657 ], [ 112.328089, 32.321712 ], [ 112.206133, 32.392992 ], [ 112.172873, 32.385412 ], [ 112.150083, 32.411688 ], [ 112.155626, 32.377326 ], [ 112.081098, 32.425833 ], [ 112.063851, 32.474315 ], [ 112.014576, 32.450077 ], [ 111.975772, 32.471791 ], [ 111.948671, 32.51722 ], [ 111.890157, 32.503089 ], [ 111.858128, 32.528826 ], [ 111.808853, 32.536899 ], [ 111.713382, 32.606497 ], [ 111.646245, 32.605993 ], [ 111.640701, 32.634724 ], [ 111.577875, 32.593388 ], [ 111.530448, 32.628172 ], [ 111.513202, 32.674026 ], [ 111.458383, 32.726402 ], [ 111.475629, 32.760127 ], [ 111.41342, 32.757108 ], [ 111.380159, 32.829049 ], [ 111.293311, 32.859217 ], [ 111.276065, 32.903445 ], [ 111.255123, 32.883846 ], [ 111.242804, 32.930573 ], [ 111.273601, 32.971753 ], [ 111.258819, 33.006389 ], [ 111.221862, 33.042517 ], [ 111.152877, 33.039507 ], [ 111.192913, 33.071609 ], [ 111.179363, 33.115229 ], [ 111.146102, 33.12375 ], [ 111.12824, 33.15532 ], [ 111.08882, 33.181871 ], [ 111.045704, 33.169849 ], [ 111.046936, 33.202905 ], [ 110.984726, 33.255469 ], [ 111.025994, 33.330504 ], [ 111.025994, 33.375495 ], [ 110.996429, 33.435946 ], [ 111.02661, 33.467903 ], [ 111.02661, 33.478386 ], [ 111.002588, 33.535772 ], [ 111.00382, 33.578662 ], [ 110.966864, 33.609071 ], [ 110.878784, 33.634486 ], [ 110.823966, 33.685793 ], [ 110.831973, 33.713675 ], [ 110.81719, 33.751003 ], [ 110.782082, 33.796272 ], [ 110.74143, 33.798759 ], [ 110.712481, 33.833564 ], [ 110.66259, 33.85295 ], [ 110.612083, 33.852453 ], [ 110.587445, 33.887733 ], [ 110.628713, 33.910086 ], [ 110.627481, 33.925482 ], [ 110.665669, 33.937895 ], [ 110.671213, 33.966192 ], [ 110.620706, 34.035652 ], [ 110.587445, 34.023252 ], [ 110.591757, 34.101586 ], [ 110.61393, 34.113478 ], [ 110.642264, 34.161032 ], [ 110.621938, 34.177372 ], [ 110.55788, 34.193214 ], [ 110.55172, 34.213012 ], [ 110.507989, 34.217466 ], [ 110.43962, 34.243196 ], [ 110.428533, 34.288203 ], [ 110.451938, 34.292653 ], [ 110.503677, 34.33714 ], [ 110.473496, 34.393457 ], [ 110.403279, 34.433448 ], [ 110.403279, 34.433448 ], [ 110.360779, 34.516825 ], [ 110.372482, 34.544435 ], [ 110.404511, 34.557743 ], [ 110.366939, 34.566614 ], [ 110.379257, 34.600612 ], [ 110.424837, 34.588295 ], [ 110.488279, 34.610956 ], [ 110.533242, 34.583368 ], [ 110.610851, 34.607508 ], [ 110.710017, 34.605045 ], [ 110.749437, 34.65232 ], [ 110.780234, 34.648874 ], [ 110.812263, 34.624746 ], [ 110.870777, 34.636072 ], [ 110.89911, 34.661673 ], [ 110.929907, 34.731543 ], [ 110.976103, 34.706456 ], [ 111.035233, 34.740887 ], [ 111.118385, 34.756623 ], [ 111.148566, 34.807742 ], [ 111.232949, 34.789559 ], [ 111.255123, 34.819535 ], [ 111.29208, 34.806759 ], [ 111.345666, 34.831816 ], [ 111.389398, 34.815113 ], [ 111.439289, 34.838202 ], [ 111.502731, 34.829851 ], [ 111.543999, 34.853428 ], [ 111.570484, 34.843114 ], [ 111.592042, 34.881416 ], [ 111.617911, 34.894671 ], [ 111.646861, 34.938836 ], [ 111.681969, 34.9511 ], [ 111.664107, 34.984449 ], [ 111.739251, 35.00406 ], [ 111.807005, 35.032977 ], [ 111.810084, 35.062374 ], [ 111.933272, 35.083435 ], [ 111.97762, 35.067272 ], [ 112.018888, 35.068742 ], [ 112.039214, 35.045717 ], [ 112.062004, 35.056005 ], [ 112.05646, 35.098615 ], [ 112.066315, 35.153437 ], [ 112.03983, 35.194039 ], [ 112.078634, 35.219467 ], [ 112.058924, 35.280069 ], [ 112.094033, 35.279092 ], [ 112.21722, 35.253195 ], [ 112.242474, 35.234622 ], [ 112.304684, 35.251728 ], [ 112.288053, 35.219956 ], [ 112.36751, 35.219956 ], [ 112.390915, 35.239021 ], [ 112.513487, 35.218489 ], [ 112.637291, 35.225822 ], [ 112.628052, 35.263457 ], [ 112.720443, 35.206265 ], [ 112.772798, 35.207732 ], [ 112.822073, 35.258082 ], [ 112.884283, 35.243909 ], [ 112.934174, 35.262968 ], [ 112.936022, 35.284466 ], [ 112.992072, 35.29619 ], [ 112.985913, 35.33965 ], [ 112.996384, 35.362104 ], [ 113.067217, 35.353806 ], [ 113.126347, 35.332327 ], [ 113.149137, 35.350878 ], [ 113.165151, 35.412845 ], [ 113.188557, 35.412357 ], [ 113.189789, 35.44893 ], [ 113.243375, 35.449418 ], [ 113.304353, 35.426989 ], [ 113.31236, 35.481101 ], [ 113.348085, 35.468429 ], [ 113.391817, 35.506925 ], [ 113.439244, 35.507412 ], [ 113.49899, 35.532254 ], [ 113.513773, 35.57364 ], [ 113.55812, 35.621816 ], [ 113.547649, 35.656835 ], [ 113.578446, 35.633491 ], [ 113.625258, 35.632518 ], [ 113.622794, 35.674825 ], [ 113.592613, 35.691838 ], [ 113.587685, 35.736542 ], [ 113.604932, 35.797727 ], [ 113.582758, 35.818111 ], [ 113.660982, 35.837035 ], [ 113.637576, 35.870019 ], [ 113.654207, 35.931586 ], [ 113.648663, 35.994073 ], [ 113.678844, 35.985841 ], [ 113.694859, 36.026991 ], [ 113.660366, 36.034735 ], [ 113.68562, 36.056026 ], [ 113.671453, 36.115514 ], [ 113.655439, 36.125182 ], [ 113.712721, 36.129533 ], [ 113.705946, 36.148865 ], [ 113.651127, 36.174473 ], [ 113.697939, 36.181719 ], [ 113.681924, 36.216491 ], [ 113.716417, 36.262347 ], [ 113.712105, 36.303353 ], [ 113.736127, 36.324571 ], [ 113.731199, 36.363135 ], [ 113.755221, 36.366026 ], [ 113.813119, 36.332285 ], [ 113.856851, 36.329392 ], [ 113.84946, 36.347711 ], [ 113.882104, 36.353977 ], [ 113.911054, 36.314927 ], [ 113.962792, 36.353977 ], [ 113.981887, 36.31782 ], [ 114.002828, 36.334214 ], [ 114.056415, 36.329392 ], [ 114.04348, 36.303353 ], [ 114.080437, 36.269585 ], [ 114.129096, 36.280199 ], [ 114.175907, 36.264759 ], [ 114.170364, 36.245938 ], [ 114.170364, 36.245938 ], [ 114.203009, 36.245456 ], [ 114.2104, 36.272962 ], [ 114.241197, 36.251247 ], [ 114.257827, 36.263794 ], [ 114.299095, 36.245938 ], [ 114.345291, 36.255591 ], [ 114.356378, 36.230492 ], [ 114.408117, 36.224699 ], [ 114.417356, 36.205868 ], [ 114.466015, 36.197658 ], [ 114.480181, 36.177855 ], [ 114.533152, 36.171575 ], [ 114.586739, 36.141133 ], [ 114.588587, 36.118414 ], [ 114.640326, 36.137266 ], [ 114.720398, 36.140166 ], [ 114.734564, 36.15563 ], [ 114.771521, 36.124699 ], [ 114.857752, 36.127599 ], [ 114.858368, 36.144516 ], [ 114.912571, 36.140649 ], [ 114.926737, 36.089403 ], [ 114.914419, 36.052155 ], [ 114.998186, 36.069572 ], [ 115.04623, 36.112613 ], [ 115.048693, 36.161912 ], [ 115.06286, 36.178338 ], [ 115.104744, 36.172058 ], [ 115.12507, 36.209731 ], [ 115.1842, 36.193312 ], [ 115.201446, 36.210214 ], [ 115.201446, 36.210214 ], [ 115.202678, 36.209248 ], [ 115.202678, 36.209248 ], [ 115.202678, 36.208765 ], [ 115.202678, 36.208765 ], [ 115.242098, 36.19138 ], [ 115.279055, 36.13775 ], [ 115.30246, 36.127599 ], [ 115.312931, 36.088436 ], [ 115.365902, 36.099074 ], [ 115.376989, 36.128083 ], [ 115.450902, 36.152248 ], [ 115.465068, 36.170125 ], [ 115.483547, 36.148865 ], [ 115.484163, 36.125666 ], [ 115.449054, 36.047317 ], [ 115.447822, 36.01247 ], [ 115.362822, 35.971796 ], [ 115.353583, 35.938854 ], [ 115.364054, 35.894264 ], [ 115.335105, 35.796756 ], [ 115.363438, 35.779765 ], [ 115.407786, 35.80889 ], [ 115.460141, 35.867594 ], [ 115.487858, 35.880688 ], [ 115.513112, 35.890385 ], [ 115.583945, 35.921893 ], [ 115.648618, 35.922863 ], [ 115.699125, 35.966468 ], [ 115.774886, 35.974702 ], [ 115.779813, 35.993588 ], [ 115.817386, 36.012954 ], [ 115.859886, 36.003756 ], [ 115.89869, 36.026507 ], [ 115.989849, 36.045381 ], [ 116.057602, 36.104877 ], [ 116.099486, 36.112129 ], [ 116.063145, 36.028927 ], [ 116.048979, 35.970343 ], [ 115.984921, 35.974218 ], [ 115.911624, 35.960171 ], [ 115.907929, 35.92674 ], [ 115.873436, 35.918985 ], [ 115.882675, 35.879718 ], [ 115.859886, 35.857894 ], [ 115.81677, 35.844312 ], [ 115.773654, 35.854014 ], [ 115.73485, 35.833154 ], [ 115.696046, 35.788989 ], [ 115.693582, 35.754028 ], [ 115.622749, 35.739457 ], [ 115.52851, 35.733628 ], [ 115.48601, 35.710306 ], [ 115.383148, 35.568772 ], [ 115.34496, 35.55368 ], [ 115.356047, 35.490359 ], [ 115.307388, 35.480126 ], [ 115.237171, 35.423087 ], [ 115.172497, 35.426501 ], [ 115.126302, 35.41821 ], [ 115.117679, 35.400163 ], [ 115.091809, 35.416259 ], [ 115.073947, 35.374304 ], [ 115.04315, 35.376744 ], [ 114.957534, 35.261014 ], [ 114.929201, 35.244886 ], [ 114.932281, 35.198441 ], [ 114.861448, 35.182301 ], [ 114.841738, 35.15099 ], [ 114.883006, 35.098615 ], [ 114.835578, 35.076578 ], [ 114.818948, 35.051596 ], [ 114.852209, 35.041797 ], [ 114.824492, 35.012393 ], [ 114.880542, 35.00357 ], [ 114.923658, 34.968757 ], [ 114.950759, 34.989843 ], [ 115.008041, 34.988372 ], [ 115.028983, 34.9717 ], [ 115.075179, 35.000628 ], [ 115.12815, 35.00455 ], [ 115.157099, 34.957968 ], [ 115.219309, 34.96042 ], [ 115.205142, 34.914303 ], [ 115.251953, 34.906451 ], [ 115.239019, 34.87798 ], [ 115.256265, 34.845079 ], [ 115.317243, 34.859321 ], [ 115.42688, 34.805285 ], [ 115.449054, 34.74433 ], [ 115.433655, 34.725149 ], [ 115.461373, 34.637057 ], [ 115.515575, 34.582383 ], [ 115.553148, 34.568586 ], [ 115.622749, 34.574499 ], [ 115.685575, 34.556265 ], [ 115.697278, 34.594207 ], [ 115.787821, 34.580905 ], [ 115.827241, 34.558236 ], [ 115.838328, 34.5676 ], [ 115.984305, 34.589281 ], [ 115.991081, 34.615389 ], [ 116.037276, 34.593222 ], [ 116.101334, 34.60603 ], [ 116.134594, 34.559715 ], [ 116.156768, 34.5538 ], [ 116.196804, 34.575977 ], [ 116.191261, 34.535561 ], [ 116.204196, 34.508442 ], [ 116.178326, 34.496112 ], [ 116.162312, 34.459605 ], [ 116.178942, 34.430487 ], [ 116.215898, 34.403333 ], [ 116.213435, 34.382098 ], [ 116.255934, 34.376665 ], [ 116.301514, 34.342082 ], [ 116.363724, 34.316877 ], [ 116.372347, 34.26595 ], [ 116.409303, 34.273863 ], [ 116.409303, 34.273863 ], [ 116.456731, 34.268917 ], [ 116.516477, 34.296114 ], [ 116.562056, 34.285731 ], [ 116.582382, 34.266444 ], [ 116.545426, 34.241711 ], [ 116.542962, 34.203608 ], [ 116.565752, 34.16945 ], [ 116.536187, 34.151127 ], [ 116.52818, 34.122892 ], [ 116.576223, 34.068873 ], [ 116.576223, 34.068873 ], [ 116.599629, 34.014324 ], [ 116.599629, 34.014324 ], [ 116.641512, 33.978103 ], [ 116.64336, 33.896675 ], [ 116.631042, 33.887733 ], [ 116.566984, 33.9081 ], [ 116.558361, 33.881274 ], [ 116.486296, 33.869846 ], [ 116.437637, 33.846489 ], [ 116.437021, 33.801246 ], [ 116.408071, 33.805721 ], [ 116.393905, 33.782843 ], [ 116.316912, 33.771402 ], [ 116.263326, 33.730101 ], [ 116.2005, 33.72612 ], [ 116.155536, 33.709693 ], [ 116.132747, 33.751501 ], [ 116.100102, 33.782843 ], [ 116.074232, 33.781351 ], [ 116.055754, 33.804727 ], [ 116.05945, 33.860902 ], [ 115.982457, 33.917039 ], [ 116.00032, 33.965199 ], [ 115.95782, 34.007875 ], [ 115.904233, 34.009859 ], [ 115.876516, 34.028708 ], [ 115.877132, 34.002913 ], [ 115.852494, 34.003906 ], [ 115.846335, 34.028708 ], [ 115.809378, 34.062428 ], [ 115.736082, 34.076805 ], [ 115.705901, 34.059949 ], [ 115.658473, 34.061437 ], [ 115.642459, 34.03218 ], [ 115.60735, 34.030196 ], [ 115.579017, 33.974133 ], [ 115.577785, 33.950307 ], [ 115.547604, 33.874815 ], [ 115.631988, 33.869846 ], [ 115.614126, 33.775879 ], [ 115.576553, 33.787817 ], [ 115.563003, 33.772895 ], [ 115.601807, 33.718653 ], [ 115.601191, 33.658898 ], [ 115.639995, 33.585143 ], [ 115.564851, 33.576169 ], [ 115.561771, 33.563703 ], [ 115.463837, 33.567193 ], [ 115.422569, 33.557219 ], [ 115.394851, 33.506335 ], [ 115.366518, 33.5233 ], [ 115.345576, 33.502842 ], [ 115.345576, 33.449928 ], [ 115.316627, 33.44893 ], [ 115.328946, 33.403477 ], [ 115.313547, 33.376994 ], [ 115.341881, 33.370997 ], [ 115.365286, 33.336005 ], [ 115.361591, 33.298497 ], [ 115.335105, 33.297997 ], [ 115.340033, 33.260973 ], [ 115.300613, 33.204407 ], [ 115.303692, 33.149809 ], [ 115.289526, 33.131769 ], [ 115.245178, 33.135778 ], [ 115.194671, 33.120743 ], [ 115.168186, 33.088658 ], [ 115.041302, 33.086653 ], [ 114.990795, 33.102195 ], [ 114.966158, 33.147304 ], [ 114.932897, 33.153817 ], [ 114.902716, 33.129764 ], [ 114.897172, 33.086653 ], [ 114.913187, 33.083143 ], [ 114.925506, 33.016928 ], [ 114.891629, 33.020441 ], [ 114.883006, 32.990328 ], [ 114.916266, 32.971251 ], [ 114.943368, 32.935094 ], [ 115.009273, 32.940117 ], [ 115.035143, 32.932582 ], [ 115.029599, 32.906962 ], [ 115.139237, 32.897917 ], [ 115.155867, 32.864747 ], [ 115.197135, 32.856201 ], [ 115.189744, 32.812452 ], [ 115.211301, 32.785791 ], [ 115.189744, 32.770695 ], [ 115.179273, 32.726402 ], [ 115.182968, 32.666973 ], [ 115.20083, 32.591876 ], [ 115.24333, 32.593388 ], [ 115.267352, 32.578261 ], [ 115.30554, 32.583303 ], [ 115.304924, 32.553042 ], [ 115.411482, 32.575235 ], [ 115.409018, 32.549007 ], [ 115.497713, 32.492489 ], [ 115.5088, 32.468761 ] ] ], [ [ [ 113.768156, 32.284279 ], [ 113.758301, 32.27669 ], [ 113.749061, 32.272642 ], [ 113.768772, 32.30148 ], [ 113.768156, 32.284279 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"420000\", \"name\": \"湖北省\", \"center\": [ 114.298572, 30.584355 ], \"centroid\": [ 112.271286, 30.987521 ], \"childrenNum\": 17, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 16, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 111.045704, 33.169849 ], [ 111.08882, 33.181871 ], [ 111.12824, 33.15532 ], [ 111.146102, 33.12375 ], [ 111.179363, 33.115229 ], [ 111.192913, 33.071609 ], [ 111.152877, 33.039507 ], [ 111.221862, 33.042517 ], [ 111.258819, 33.006389 ], [ 111.273601, 32.971753 ], [ 111.242804, 32.930573 ], [ 111.255123, 32.883846 ], [ 111.276065, 32.903445 ], [ 111.293311, 32.859217 ], [ 111.380159, 32.829049 ], [ 111.41342, 32.757108 ], [ 111.475629, 32.760127 ], [ 111.458383, 32.726402 ], [ 111.513202, 32.674026 ], [ 111.530448, 32.628172 ], [ 111.577875, 32.593388 ], [ 111.640701, 32.634724 ], [ 111.646245, 32.605993 ], [ 111.713382, 32.606497 ], [ 111.808853, 32.536899 ], [ 111.858128, 32.528826 ], [ 111.890157, 32.503089 ], [ 111.948671, 32.51722 ], [ 111.975772, 32.471791 ], [ 112.014576, 32.450077 ], [ 112.063851, 32.474315 ], [ 112.081098, 32.425833 ], [ 112.155626, 32.377326 ], [ 112.150083, 32.411688 ], [ 112.172873, 32.385412 ], [ 112.206133, 32.392992 ], [ 112.328089, 32.321712 ], [ 112.360118, 32.3657 ], [ 112.390915, 32.37126 ], [ 112.448814, 32.34295 ], [ 112.477147, 32.380863 ], [ 112.530733, 32.37682 ], [ 112.545516, 32.404109 ], [ 112.589248, 32.381369 ], [ 112.612037, 32.386928 ], [ 112.645298, 32.368227 ], [ 112.716747, 32.357612 ], [ 112.724138, 32.358623 ], [ 112.733993, 32.356601 ], [ 112.735841, 32.356095 ], [ 112.776493, 32.358623 ], [ 112.860877, 32.396024 ], [ 112.888594, 32.37682 ], [ 112.912, 32.390971 ], [ 112.992072, 32.378336 ], [ 113.000695, 32.41674 ], [ 113.025949, 32.425328 ], [ 113.078919, 32.394508 ], [ 113.107869, 32.398551 ], [ 113.118956, 32.375809 ], [ 113.155912, 32.380863 ], [ 113.158992, 32.410677 ], [ 113.211962, 32.431895 ], [ 113.2366, 32.407141 ], [ 113.333918, 32.336377 ], [ 113.317904, 32.327275 ], [ 113.353628, 32.294904 ], [ 113.376418, 32.298445 ], [ 113.428773, 32.270618 ], [ 113.511925, 32.316654 ], [ 113.624642, 32.36115 ], [ 113.650511, 32.412698 ], [ 113.700402, 32.420782 ], [ 113.735511, 32.410677 ], [ 113.76754, 32.370249 ], [ 113.753989, 32.328286 ], [ 113.768772, 32.30148 ], [ 113.749061, 32.272642 ], [ 113.73859, 32.255942 ], [ 113.752757, 32.215951 ], [ 113.782322, 32.184553 ], [ 113.750293, 32.11615 ], [ 113.722576, 32.12426 ], [ 113.728735, 32.083197 ], [ 113.791561, 32.036028 ], [ 113.757685, 31.98985 ], [ 113.817431, 31.964467 ], [ 113.805728, 31.929428 ], [ 113.832213, 31.918761 ], [ 113.830981, 31.87913 ], [ 113.854387, 31.843042 ], [ 113.893807, 31.847109 ], [ 113.914749, 31.877098 ], [ 113.957865, 31.852701 ], [ 113.952321, 31.793714 ], [ 113.988662, 31.749959 ], [ 114.017611, 31.770822 ], [ 114.089676, 31.781506 ], [ 114.119241, 31.805922 ], [ 114.134024, 31.843042 ], [ 114.191922, 31.852192 ], [ 114.235654, 31.833382 ], [ 114.292936, 31.752503 ], [ 114.350218, 31.755557 ], [ 114.403189, 31.746906 ], [ 114.443841, 31.728074 ], [ 114.530688, 31.742834 ], [ 114.549783, 31.766751 ], [ 114.586123, 31.762172 ], [ 114.57134, 31.660858 ], [ 114.547935, 31.623665 ], [ 114.560869, 31.560963 ], [ 114.572572, 31.553824 ], [ 114.61692, 31.585437 ], [ 114.641558, 31.582378 ], [ 114.696376, 31.525771 ], [ 114.778912, 31.520669 ], [ 114.789383, 31.480358 ], [ 114.830035, 31.45892 ], [ 114.870071, 31.479337 ], [ 114.884238, 31.469129 ], [ 114.962462, 31.494648 ], [ 114.995107, 31.471171 ], [ 115.022824, 31.527811 ], [ 115.096121, 31.508425 ], [ 115.114599, 31.530362 ], [ 115.106592, 31.567592 ], [ 115.12507, 31.599201 ], [ 115.16449, 31.604808 ], [ 115.212533, 31.555354 ], [ 115.235939, 31.555354 ], [ 115.218077, 31.515057 ], [ 115.211301, 31.442072 ], [ 115.252569, 31.421646 ], [ 115.250722, 31.392021 ], [ 115.301229, 31.383846 ], [ 115.338801, 31.40428 ], [ 115.373909, 31.405813 ], [ 115.393004, 31.389977 ], [ 115.372062, 31.349098 ], [ 115.40717, 31.337854 ], [ 115.443511, 31.344498 ], [ 115.473076, 31.265242 ], [ 115.507568, 31.267799 ], [ 115.539597, 31.231985 ], [ 115.540213, 31.194621 ], [ 115.585793, 31.143926 ], [ 115.603655, 31.17363 ], [ 115.655394, 31.211002 ], [ 115.700973, 31.201276 ], [ 115.778582, 31.112164 ], [ 115.797676, 31.128047 ], [ 115.837712, 31.127022 ], [ 115.867277, 31.147512 ], [ 115.887603, 31.10909 ], [ 115.939958, 31.071678 ], [ 115.938726, 31.04707 ], [ 116.006479, 31.034764 ], [ 116.015102, 31.011685 ], [ 116.058834, 31.012711 ], [ 116.071769, 30.956787 ], [ 116.03974, 30.957813 ], [ 115.976298, 30.931636 ], [ 115.932566, 30.889532 ], [ 115.865429, 30.864364 ], [ 115.848799, 30.828397 ], [ 115.863581, 30.815549 ], [ 115.851262, 30.756938 ], [ 115.782893, 30.751795 ], [ 115.762567, 30.685426 ], [ 115.81369, 30.637035 ], [ 115.819234, 30.597893 ], [ 115.848799, 30.602014 ], [ 115.876516, 30.582438 ], [ 115.887603, 30.542758 ], [ 115.910393, 30.519046 ], [ 115.894994, 30.452517 ], [ 115.921479, 30.416397 ], [ 115.885139, 30.379747 ], [ 115.91532, 30.337919 ], [ 115.903001, 30.31364 ], [ 115.985537, 30.290905 ], [ 115.997856, 30.252657 ], [ 116.065609, 30.204569 ], [ 116.055754, 30.180774 ], [ 116.088399, 30.110391 ], [ 116.078544, 30.062233 ], [ 116.091479, 30.036331 ], [ 116.073616, 29.969993 ], [ 116.128435, 29.897904 ], [ 116.13521, 29.819532 ], [ 116.087167, 29.795125 ], [ 116.049595, 29.761881 ], [ 115.965827, 29.724469 ], [ 115.909777, 29.723949 ], [ 115.837096, 29.748373 ], [ 115.762567, 29.793048 ], [ 115.706517, 29.837703 ], [ 115.667712, 29.850161 ], [ 115.611662, 29.841337 ], [ 115.51188, 29.840299 ], [ 115.479235, 29.811224 ], [ 115.470612, 29.739539 ], [ 115.412714, 29.688602 ], [ 115.355431, 29.649602 ], [ 115.304924, 29.637118 ], [ 115.28583, 29.618391 ], [ 115.250722, 29.660003 ], [ 115.176809, 29.654803 ], [ 115.113367, 29.684963 ], [ 115.117679, 29.655843 ], [ 115.143548, 29.645961 ], [ 115.120142, 29.597578 ], [ 115.157099, 29.584568 ], [ 115.154019, 29.510117 ], [ 115.086266, 29.525741 ], [ 115.087498, 29.560104 ], [ 115.033295, 29.546568 ], [ 115.00065, 29.572076 ], [ 114.947679, 29.542924 ], [ 114.966773, 29.522096 ], [ 114.940288, 29.493971 ], [ 114.900868, 29.505951 ], [ 114.860216, 29.476258 ], [ 114.888549, 29.436134 ], [ 114.918114, 29.454374 ], [ 114.90518, 29.473132 ], [ 114.935977, 29.486678 ], [ 114.947063, 29.465317 ], [ 114.931049, 29.422581 ], [ 114.895325, 29.397557 ], [ 114.866375, 29.404335 ], [ 114.812173, 29.383478 ], [ 114.784455, 29.386086 ], [ 114.759818, 29.363139 ], [ 114.740724, 29.386607 ], [ 114.67297, 29.395993 ], [ 114.621847, 29.379828 ], [ 114.589819, 29.352707 ], [ 114.519602, 29.325578 ], [ 114.466015, 29.324013 ], [ 114.440145, 29.341752 ], [ 114.376088, 29.322969 ], [ 114.341595, 29.327665 ], [ 114.307102, 29.365225 ], [ 114.259059, 29.343839 ], [ 114.252284, 29.23475 ], [ 114.169748, 29.216993 ], [ 114.063191, 29.204978 ], [ 114.034857, 29.152204 ], [ 113.98743, 29.126068 ], [ 113.952321, 29.092604 ], [ 113.94185, 29.047097 ], [ 113.898119, 29.029307 ], [ 113.876561, 29.038202 ], [ 113.882104, 29.065407 ], [ 113.852539, 29.058606 ], [ 113.816199, 29.105154 ], [ 113.775547, 29.095219 ], [ 113.749677, 29.060699 ], [ 113.722576, 29.104631 ], [ 113.696091, 29.077437 ], [ 113.690547, 29.114566 ], [ 113.66283, 29.16945 ], [ 113.691779, 29.19662 ], [ 113.693011, 29.226394 ], [ 113.651743, 29.225872 ], [ 113.609859, 29.25146 ], [ 113.632033, 29.316186 ], [ 113.660982, 29.333405 ], [ 113.674533, 29.388172 ], [ 113.731199, 29.393907 ], [ 113.755221, 29.446557 ], [ 113.677613, 29.513763 ], [ 113.630801, 29.523137 ], [ 113.710257, 29.555419 ], [ 113.73859, 29.579363 ], [ 113.704098, 29.634518 ], [ 113.680692, 29.64336 ], [ 113.663446, 29.684443 ], [ 113.606164, 29.666764 ], [ 113.547033, 29.675603 ], [ 113.540258, 29.699519 ], [ 113.558736, 29.727067 ], [ 113.550729, 29.768115 ], [ 113.575367, 29.809147 ], [ 113.571671, 29.849123 ], [ 113.37765, 29.703158 ], [ 113.277252, 29.594976 ], [ 113.222433, 29.543965 ], [ 113.181781, 29.485636 ], [ 113.145441, 29.449163 ], [ 113.099861, 29.459585 ], [ 113.078304, 29.438218 ], [ 113.057362, 29.522616 ], [ 113.034572, 29.523658 ], [ 112.950188, 29.473132 ], [ 112.912, 29.606944 ], [ 112.915696, 29.620992 ], [ 113.005007, 29.693801 ], [ 113.025949, 29.772791 ], [ 112.974826, 29.732784 ], [ 112.944645, 29.682883 ], [ 112.926782, 29.692241 ], [ 112.923703, 29.766557 ], [ 112.929246, 29.77383 ], [ 112.902145, 29.79149 ], [ 112.894138, 29.783699 ], [ 112.861493, 29.78318 ], [ 112.79374, 29.735902 ], [ 112.788812, 29.681323 ], [ 112.733378, 29.645441 ], [ 112.714283, 29.648561 ], [ 112.693957, 29.601741 ], [ 112.650842, 29.592374 ], [ 112.640371, 29.607985 ], [ 112.572001, 29.624113 ], [ 112.54182, 29.60122 ], [ 112.499321, 29.629316 ], [ 112.439574, 29.633997 ], [ 112.424792, 29.598619 ], [ 112.368741, 29.541362 ], [ 112.333017, 29.545007 ], [ 112.291133, 29.517409 ], [ 112.281278, 29.536676 ], [ 112.303452, 29.585609 ], [ 112.233851, 29.61631 ], [ 112.244322, 29.659483 ], [ 112.202438, 29.633997 ], [ 112.178416, 29.656883 ], [ 112.111279, 29.659483 ], [ 112.089721, 29.685482 ], [ 112.065699, 29.681323 ], [ 112.07617, 29.743696 ], [ 112.008417, 29.778505 ], [ 111.95483, 29.796683 ], [ 111.965917, 29.832512 ], [ 111.925881, 29.836665 ], [ 111.899396, 29.855871 ], [ 111.899396, 29.855871 ], [ 111.861207, 29.856909 ], [ 111.8107, 29.901017 ], [ 111.75773, 29.92021 ], [ 111.723853, 29.909317 ], [ 111.723853, 29.909317 ], [ 111.705375, 29.890121 ], [ 111.669034, 29.888565 ], [ 111.669034, 29.888565 ], [ 111.553854, 29.894272 ], [ 111.527368, 29.925916 ], [ 111.475629, 29.918654 ], [ 111.436825, 29.930065 ], [ 111.394325, 29.912948 ], [ 111.382623, 29.95029 ], [ 111.342587, 29.944586 ], [ 111.3315, 29.970512 ], [ 111.266826, 30.01146 ], [ 111.242188, 30.040476 ], [ 111.031537, 30.048765 ], [ 110.929907, 30.063268 ], [ 110.924364, 30.111426 ], [ 110.851067, 30.126439 ], [ 110.746973, 30.112979 ], [ 110.756212, 30.054463 ], [ 110.712481, 30.033223 ], [ 110.650887, 30.07777 ], [ 110.600996, 30.054463 ], [ 110.531394, 30.061197 ], [ 110.497518, 30.055499 ], [ 110.491358, 30.019751 ], [ 110.557264, 29.988137 ], [ 110.517228, 29.961179 ], [ 110.49875, 29.91243 ], [ 110.538786, 29.895828 ], [ 110.549873, 29.848085 ], [ 110.60038, 29.839779 ], [ 110.642879, 29.775907 ], [ 110.562807, 29.712515 ], [ 110.507373, 29.692241 ], [ 110.467337, 29.713034 ], [ 110.447011, 29.664684 ], [ 110.372482, 29.633477 ], [ 110.339221, 29.668324 ], [ 110.302265, 29.661563 ], [ 110.289946, 29.6964 ], [ 110.219729, 29.746814 ], [ 110.160599, 29.753569 ], [ 110.113788, 29.789932 ], [ 110.02386, 29.769674 ], [ 109.941325, 29.774349 ], [ 109.908064, 29.763959 ], [ 109.869876, 29.774869 ], [ 109.779333, 29.757725 ], [ 109.755311, 29.733304 ], [ 109.760238, 29.689122 ], [ 109.714659, 29.673524 ], [ 109.701108, 29.636078 ], [ 109.717739, 29.615269 ], [ 109.664768, 29.599659 ], [ 109.651833, 29.625674 ], [ 109.578536, 29.629836 ], [ 109.558826, 29.606944 ], [ 109.516326, 29.626194 ], [ 109.488609, 29.553336 ], [ 109.467051, 29.560104 ], [ 109.458428, 29.513242 ], [ 109.433791, 29.530948 ], [ 109.436254, 29.488761 ], [ 109.415928, 29.497617 ], [ 109.418392, 29.453332 ], [ 109.368501, 29.413719 ], [ 109.391291, 29.372005 ], [ 109.343863, 29.369398 ], [ 109.352487, 29.284872 ], [ 109.312451, 29.25146 ], [ 109.257632, 29.222738 ], [ 109.275494, 29.202366 ], [ 109.261328, 29.161089 ], [ 109.274262, 29.121885 ], [ 109.232378, 29.119271 ], [ 109.215748, 29.145409 ], [ 109.162777, 29.180946 ], [ 109.139372, 29.168927 ], [ 109.110422, 29.21647 ], [ 109.141835, 29.270256 ], [ 109.106727, 29.288526 ], [ 109.11227, 29.361053 ], [ 109.060531, 29.403292 ], [ 109.034662, 29.360531 ], [ 108.999553, 29.36366 ], [ 108.983539, 29.332883 ], [ 108.919481, 29.3261 ], [ 108.934264, 29.399643 ], [ 108.927488, 29.435612 ], [ 108.884373, 29.440824 ], [ 108.866511, 29.470527 ], [ 108.888684, 29.502305 ], [ 108.878213, 29.539279 ], [ 108.913322, 29.574679 ], [ 108.901003, 29.604863 ], [ 108.870206, 29.596537 ], [ 108.888068, 29.628795 ], [ 108.844337, 29.658443 ], [ 108.781511, 29.635558 ], [ 108.797525, 29.660003 ], [ 108.786438, 29.691721 ], [ 108.752562, 29.649082 ], [ 108.690968, 29.689642 ], [ 108.676801, 29.749412 ], [ 108.680497, 29.800319 ], [ 108.658939, 29.854833 ], [ 108.601041, 29.863656 ], [ 108.556077, 29.818493 ], [ 108.52528, 29.770713 ], [ 108.548686, 29.749412 ], [ 108.504954, 29.728626 ], [ 108.504338, 29.707836 ], [ 108.460606, 29.741098 ], [ 108.437201, 29.741098 ], [ 108.442744, 29.778505 ], [ 108.422418, 29.772791 ], [ 108.424266, 29.815897 ], [ 108.371295, 29.841337 ], [ 108.433505, 29.880262 ], [ 108.467998, 29.864175 ], [ 108.516041, 29.885451 ], [ 108.517889, 29.9394 ], [ 108.536367, 29.983472 ], [ 108.532055, 30.051873 ], [ 108.513577, 30.057571 ], [ 108.546222, 30.104178 ], [ 108.56778, 30.157491 ], [ 108.551766, 30.1637 ], [ 108.581947, 30.255759 ], [ 108.54499, 30.269716 ], [ 108.524048, 30.309506 ], [ 108.501258, 30.314673 ], [ 108.460606, 30.35961 ], [ 108.431041, 30.354446 ], [ 108.402092, 30.376649 ], [ 108.430425, 30.416397 ], [ 108.411331, 30.438586 ], [ 108.42673, 30.492233 ], [ 108.472925, 30.487076 ], [ 108.512961, 30.501515 ], [ 108.556077, 30.487592 ], [ 108.56778, 30.468508 ], [ 108.6497, 30.53915 ], [ 108.642925, 30.578831 ], [ 108.688504, 30.58759 ], [ 108.698975, 30.54482 ], [ 108.743939, 30.494812 ], [ 108.789518, 30.513374 ], [ 108.808612, 30.491202 ], [ 108.838793, 30.503062 ], [ 108.893612, 30.565434 ], [ 108.971836, 30.627766 ], [ 109.006329, 30.626736 ], [ 109.042669, 30.655571 ], [ 109.071002, 30.640125 ], [ 109.111654, 30.646303 ], [ 109.106111, 30.61077 ], [ 109.09256, 30.578831 ], [ 109.103647, 30.565949 ], [ 109.143683, 30.521108 ], [ 109.191726, 30.545851 ], [ 109.191726, 30.545851 ], [ 109.245313, 30.580892 ], [ 109.299516, 30.630341 ], [ 109.314298, 30.599953 ], [ 109.36111, 30.551004 ], [ 109.337088, 30.521623 ], [ 109.35495, 30.487076 ], [ 109.418392, 30.559766 ], [ 109.435638, 30.595832 ], [ 109.535421, 30.664837 ], [ 109.543428, 30.63961 ], [ 109.574225, 30.646818 ], [ 109.590855, 30.69366 ], [ 109.625348, 30.702923 ], [ 109.661072, 30.738936 ], [ 109.656761, 30.760538 ], [ 109.701724, 30.783677 ], [ 109.780564, 30.848437 ], [ 109.828608, 30.864364 ], [ 109.894513, 30.899803 ], [ 109.943788, 30.878746 ], [ 110.008462, 30.883369 ], [ 110.019549, 30.829425 ], [ 110.048498, 30.800642 ], [ 110.082375, 30.799614 ], [ 110.151976, 30.911613 ], [ 110.153824, 30.953708 ], [ 110.172918, 30.978853 ], [ 110.140889, 30.987062 ], [ 110.140273, 31.030661 ], [ 110.120563, 31.0322 ], [ 110.119947, 31.088592 ], [ 110.147048, 31.116776 ], [ 110.180309, 31.121899 ], [ 110.200019, 31.158779 ], [ 110.180309, 31.179774 ], [ 110.155671, 31.279564 ], [ 110.161831, 31.314338 ], [ 110.118715, 31.409899 ], [ 110.054042, 31.410921 ], [ 110.036795, 31.436966 ], [ 109.98752, 31.474744 ], [ 109.94502, 31.47066 ], [ 109.969658, 31.508935 ], [ 109.894513, 31.519139 ], [ 109.837847, 31.555354 ], [ 109.727594, 31.548214 ], [ 109.745456, 31.598182 ], [ 109.76455, 31.602769 ], [ 109.737449, 31.628761 ], [ 109.731289, 31.700582 ], [ 109.683246, 31.719929 ], [ 109.622268, 31.711783 ], [ 109.585928, 31.726546 ], [ 109.592087, 31.789136 ], [ 109.633971, 31.804396 ], [ 109.633971, 31.824738 ], [ 109.60379, 31.885737 ], [ 109.584696, 31.900472 ], [ 109.62042, 31.928412 ], [ 109.631507, 31.962436 ], [ 109.590855, 32.012688 ], [ 109.590855, 32.047696 ], [ 109.621652, 32.106519 ], [ 109.58716, 32.161251 ], [ 109.604406, 32.199241 ], [ 109.592703, 32.219495 ], [ 109.550203, 32.225065 ], [ 109.528645, 32.270112 ], [ 109.495385, 32.300468 ], [ 109.513247, 32.342444 ], [ 109.502776, 32.38895 ], [ 109.529877, 32.405625 ], [ 109.526797, 32.43341 ], [ 109.575457, 32.506622 ], [ 109.637051, 32.540935 ], [ 109.619804, 32.56767 ], [ 109.631507, 32.599943 ], [ 109.726978, 32.608513 ], [ 109.746072, 32.594901 ], [ 109.816905, 32.577252 ], [ 109.910528, 32.592884 ], [ 109.97089, 32.577756 ], [ 110.017701, 32.546989 ], [ 110.084223, 32.580782 ], [ 110.090382, 32.617083 ], [ 110.124259, 32.616579 ], [ 110.153824, 32.593388 ], [ 110.206179, 32.633212 ], [ 110.156903, 32.683093 ], [ 110.159367, 32.767173 ], [ 110.127338, 32.77774 ], [ 110.142121, 32.802895 ], [ 110.105164, 32.832569 ], [ 110.051578, 32.851676 ], [ 109.988752, 32.886359 ], [ 109.927158, 32.887364 ], [ 109.907448, 32.903947 ], [ 109.856941, 32.910479 ], [ 109.847702, 32.893395 ], [ 109.789804, 32.882339 ], [ 109.76455, 32.909474 ], [ 109.785492, 32.987316 ], [ 109.794731, 33.067095 ], [ 109.704188, 33.101694 ], [ 109.688174, 33.116733 ], [ 109.576073, 33.110216 ], [ 109.522486, 33.138785 ], [ 109.468283, 33.140288 ], [ 109.438718, 33.152314 ], [ 109.498464, 33.207412 ], [ 109.514479, 33.237951 ], [ 109.60687, 33.235949 ], [ 109.619804, 33.275484 ], [ 109.649985, 33.251465 ], [ 109.693101, 33.254468 ], [ 109.732521, 33.231443 ], [ 109.813209, 33.236449 ], [ 109.852013, 33.247961 ], [ 109.916687, 33.229942 ], [ 109.973353, 33.203907 ], [ 109.999223, 33.212419 ], [ 110.031252, 33.191888 ], [ 110.164911, 33.209415 ], [ 110.218497, 33.163336 ], [ 110.285635, 33.171352 ], [ 110.33799, 33.160331 ], [ 110.372482, 33.186379 ], [ 110.398352, 33.176862 ], [ 110.398352, 33.176862 ], [ 110.471032, 33.171352 ], [ 110.54125, 33.255469 ], [ 110.57759, 33.250464 ], [ 110.59422, 33.168346 ], [ 110.623785, 33.143796 ], [ 110.650887, 33.157324 ], [ 110.702626, 33.097182 ], [ 110.753133, 33.15031 ], [ 110.824582, 33.158327 ], [ 110.828893, 33.201403 ], [ 110.865234, 33.213921 ], [ 110.9219, 33.203907 ], [ 110.960704, 33.253967 ], [ 110.984726, 33.255469 ], [ 111.046936, 33.202905 ], [ 111.035849, 33.187881 ], [ 111.034001, 33.177864 ], [ 111.045704, 33.169849 ] ] ], [ [ [ 109.106111, 30.570587 ], [ 109.09872, 30.579346 ], [ 109.101183, 30.579346 ], [ 109.106111, 30.570587 ] ] ], [ [ [ 111.046936, 33.202905 ], [ 111.045704, 33.169849 ], [ 111.034001, 33.177864 ], [ 111.035849, 33.187881 ], [ 111.046936, 33.202905 ] ] ], [ [ [ 112.716747, 32.357612 ], [ 112.735841, 32.356095 ], [ 112.733993, 32.356601 ], [ 112.724138, 32.358623 ], [ 112.716747, 32.357612 ] ] ], [ [ [ 112.902145, 29.79149 ], [ 112.929246, 29.77383 ], [ 112.923703, 29.766557 ], [ 112.894138, 29.783699 ], [ 112.902145, 29.79149 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"430000\", \"name\": \"湖南省\", \"center\": [ 112.982279, 28.19409 ], \"centroid\": [ 111.711649, 27.629221 ], \"childrenNum\": 14, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 17, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 109.48245, 26.029788 ], [ 109.452885, 26.055598 ], [ 109.449805, 26.101826 ], [ 109.502776, 26.096451 ], [ 109.513863, 26.128157 ], [ 109.47629, 26.148035 ], [ 109.439334, 26.238789 ], [ 109.467051, 26.313917 ], [ 109.442414, 26.289774 ], [ 109.369733, 26.277432 ], [ 109.351255, 26.264016 ], [ 109.325385, 26.29031 ], [ 109.285965, 26.295676 ], [ 109.271183, 26.327863 ], [ 109.29582, 26.350389 ], [ 109.319842, 26.418477 ], [ 109.38082, 26.454381 ], [ 109.362342, 26.472061 ], [ 109.385747, 26.493487 ], [ 109.381436, 26.518659 ], [ 109.407305, 26.533116 ], [ 109.390675, 26.598955 ], [ 109.35495, 26.658873 ], [ 109.334008, 26.646036 ], [ 109.306291, 26.661012 ], [ 109.283501, 26.698445 ], [ 109.35495, 26.693098 ], [ 109.407305, 26.719829 ], [ 109.447957, 26.759913 ], [ 109.486761, 26.759913 ], [ 109.52187, 26.749226 ], [ 109.528645, 26.743881 ], [ 109.568065, 26.726243 ], [ 109.597015, 26.756173 ], [ 109.554515, 26.73533 ], [ 109.528645, 26.743881 ], [ 109.522486, 26.749226 ], [ 109.497232, 26.815474 ], [ 109.513247, 26.84004 ], [ 109.509551, 26.877947 ], [ 109.486761, 26.895562 ], [ 109.452885, 26.861932 ], [ 109.436254, 26.892359 ], [ 109.555131, 26.946788 ], [ 109.520022, 27.058764 ], [ 109.497848, 27.079548 ], [ 109.486761, 27.053968 ], [ 109.454733, 27.069423 ], [ 109.472595, 27.134951 ], [ 109.441182, 27.117907 ], [ 109.415312, 27.154123 ], [ 109.358646, 27.153058 ], [ 109.33524, 27.139212 ], [ 109.264407, 27.131755 ], [ 109.239154, 27.14933 ], [ 109.21698, 27.114711 ], [ 109.165857, 27.066758 ], [ 109.101183, 27.06889 ], [ 109.128901, 27.122701 ], [ 109.032814, 27.104056 ], [ 109.007561, 27.08008 ], [ 108.940423, 27.044907 ], [ 108.942887, 27.017186 ], [ 108.942887, 27.017186 ], [ 108.877597, 27.01612 ], [ 108.79075, 27.084343 ], [ 108.878829, 27.106187 ], [ 108.926873, 27.160512 ], [ 108.907778, 27.204699 ], [ 108.963213, 27.235565 ], [ 108.983539, 27.26802 ], [ 109.053756, 27.293551 ], [ 109.044517, 27.331304 ], [ 109.103647, 27.336621 ], [ 109.142451, 27.418461 ], [ 109.141835, 27.448207 ], [ 109.167089, 27.41793 ], [ 109.202197, 27.450331 ], [ 109.245313, 27.41793 ], [ 109.300132, 27.423774 ], [ 109.303211, 27.47582 ], [ 109.404841, 27.55066 ], [ 109.461508, 27.567637 ], [ 109.451037, 27.586204 ], [ 109.470131, 27.62863 ], [ 109.45658, 27.673689 ], [ 109.470747, 27.680049 ], [ 109.414081, 27.725087 ], [ 109.366653, 27.721909 ], [ 109.37774, 27.736741 ], [ 109.332777, 27.782815 ], [ 109.346943, 27.838396 ], [ 109.32169, 27.868027 ], [ 109.30198, 27.956343 ], [ 109.319842, 27.988585 ], [ 109.362342, 28.007608 ], [ 109.378972, 28.034551 ], [ 109.335856, 28.063073 ], [ 109.298284, 28.036136 ], [ 109.314298, 28.103729 ], [ 109.33832, 28.141731 ], [ 109.340168, 28.19027 ], [ 109.367885, 28.254602 ], [ 109.388211, 28.268307 ], [ 109.33524, 28.293605 ], [ 109.317994, 28.277795 ], [ 109.275494, 28.313101 ], [ 109.268719, 28.33786 ], [ 109.289045, 28.373673 ], [ 109.264407, 28.392628 ], [ 109.260712, 28.46473 ], [ 109.274262, 28.494714 ], [ 109.273646, 28.53836 ], [ 109.319842, 28.579886 ], [ 109.306907, 28.62087 ], [ 109.252089, 28.606685 ], [ 109.235458, 28.61982 ], [ 109.201581, 28.597753 ], [ 109.192958, 28.636104 ], [ 109.271183, 28.671816 ], [ 109.252704, 28.691767 ], [ 109.294588, 28.722211 ], [ 109.2989, 28.7474 ], [ 109.241002, 28.776779 ], [ 109.246545, 28.80143 ], [ 109.235458, 28.882161 ], [ 109.261328, 28.952356 ], [ 109.292741, 28.987436 ], [ 109.294588, 29.015177 ], [ 109.319842, 29.042388 ], [ 109.312451, 29.066453 ], [ 109.240386, 29.086328 ], [ 109.232378, 29.119271 ], [ 109.274262, 29.121885 ], [ 109.261328, 29.161089 ], [ 109.275494, 29.202366 ], [ 109.257632, 29.222738 ], [ 109.312451, 29.25146 ], [ 109.352487, 29.284872 ], [ 109.343863, 29.369398 ], [ 109.391291, 29.372005 ], [ 109.368501, 29.413719 ], [ 109.418392, 29.453332 ], [ 109.415928, 29.497617 ], [ 109.436254, 29.488761 ], [ 109.433791, 29.530948 ], [ 109.458428, 29.513242 ], [ 109.467051, 29.560104 ], [ 109.488609, 29.553336 ], [ 109.516326, 29.626194 ], [ 109.558826, 29.606944 ], [ 109.578536, 29.629836 ], [ 109.651833, 29.625674 ], [ 109.664768, 29.599659 ], [ 109.717739, 29.615269 ], [ 109.701108, 29.636078 ], [ 109.714659, 29.673524 ], [ 109.760238, 29.689122 ], [ 109.755311, 29.733304 ], [ 109.779333, 29.757725 ], [ 109.869876, 29.774869 ], [ 109.908064, 29.763959 ], [ 109.941325, 29.774349 ], [ 110.02386, 29.769674 ], [ 110.113788, 29.789932 ], [ 110.160599, 29.753569 ], [ 110.219729, 29.746814 ], [ 110.289946, 29.6964 ], [ 110.302265, 29.661563 ], [ 110.339221, 29.668324 ], [ 110.372482, 29.633477 ], [ 110.447011, 29.664684 ], [ 110.467337, 29.713034 ], [ 110.507373, 29.692241 ], [ 110.562807, 29.712515 ], [ 110.642879, 29.775907 ], [ 110.60038, 29.839779 ], [ 110.549873, 29.848085 ], [ 110.538786, 29.895828 ], [ 110.49875, 29.91243 ], [ 110.517228, 29.961179 ], [ 110.557264, 29.988137 ], [ 110.491358, 30.019751 ], [ 110.497518, 30.055499 ], [ 110.531394, 30.061197 ], [ 110.600996, 30.054463 ], [ 110.650887, 30.07777 ], [ 110.712481, 30.033223 ], [ 110.756212, 30.054463 ], [ 110.746973, 30.112979 ], [ 110.851067, 30.126439 ], [ 110.924364, 30.111426 ], [ 110.929907, 30.063268 ], [ 111.031537, 30.048765 ], [ 111.242188, 30.040476 ], [ 111.266826, 30.01146 ], [ 111.3315, 29.970512 ], [ 111.342587, 29.944586 ], [ 111.382623, 29.95029 ], [ 111.394325, 29.912948 ], [ 111.436825, 29.930065 ], [ 111.475629, 29.918654 ], [ 111.527368, 29.925916 ], [ 111.553854, 29.894272 ], [ 111.669034, 29.888565 ], [ 111.669034, 29.888565 ], [ 111.705375, 29.890121 ], [ 111.723853, 29.909317 ], [ 111.723853, 29.909317 ], [ 111.75773, 29.92021 ], [ 111.8107, 29.901017 ], [ 111.861207, 29.856909 ], [ 111.899396, 29.855871 ], [ 111.899396, 29.855871 ], [ 111.925881, 29.836665 ], [ 111.965917, 29.832512 ], [ 111.95483, 29.796683 ], [ 112.008417, 29.778505 ], [ 112.07617, 29.743696 ], [ 112.065699, 29.681323 ], [ 112.089721, 29.685482 ], [ 112.111279, 29.659483 ], [ 112.178416, 29.656883 ], [ 112.202438, 29.633997 ], [ 112.244322, 29.659483 ], [ 112.233851, 29.61631 ], [ 112.303452, 29.585609 ], [ 112.281278, 29.536676 ], [ 112.291133, 29.517409 ], [ 112.333017, 29.545007 ], [ 112.368741, 29.541362 ], [ 112.424792, 29.598619 ], [ 112.439574, 29.633997 ], [ 112.499321, 29.629316 ], [ 112.54182, 29.60122 ], [ 112.572001, 29.624113 ], [ 112.640371, 29.607985 ], [ 112.650842, 29.592374 ], [ 112.693957, 29.601741 ], [ 112.714283, 29.648561 ], [ 112.733378, 29.645441 ], [ 112.788812, 29.681323 ], [ 112.79374, 29.735902 ], [ 112.861493, 29.78318 ], [ 112.894138, 29.783699 ], [ 112.923703, 29.766557 ], [ 112.926782, 29.692241 ], [ 112.944645, 29.682883 ], [ 112.974826, 29.732784 ], [ 113.025949, 29.772791 ], [ 113.005007, 29.693801 ], [ 112.915696, 29.620992 ], [ 112.912, 29.606944 ], [ 112.950188, 29.473132 ], [ 113.034572, 29.523658 ], [ 113.057362, 29.522616 ], [ 113.078304, 29.438218 ], [ 113.099861, 29.459585 ], [ 113.145441, 29.449163 ], [ 113.181781, 29.485636 ], [ 113.222433, 29.543965 ], [ 113.277252, 29.594976 ], [ 113.37765, 29.703158 ], [ 113.571671, 29.849123 ], [ 113.575367, 29.809147 ], [ 113.550729, 29.768115 ], [ 113.558736, 29.727067 ], [ 113.540258, 29.699519 ], [ 113.547033, 29.675603 ], [ 113.606164, 29.666764 ], [ 113.663446, 29.684443 ], [ 113.680692, 29.64336 ], [ 113.704098, 29.634518 ], [ 113.73859, 29.579363 ], [ 113.710257, 29.555419 ], [ 113.630801, 29.523137 ], [ 113.677613, 29.513763 ], [ 113.755221, 29.446557 ], [ 113.731199, 29.393907 ], [ 113.674533, 29.388172 ], [ 113.660982, 29.333405 ], [ 113.632033, 29.316186 ], [ 113.609859, 29.25146 ], [ 113.651743, 29.225872 ], [ 113.693011, 29.226394 ], [ 113.691779, 29.19662 ], [ 113.66283, 29.16945 ], [ 113.690547, 29.114566 ], [ 113.696091, 29.077437 ], [ 113.722576, 29.104631 ], [ 113.749677, 29.060699 ], [ 113.775547, 29.095219 ], [ 113.816199, 29.105154 ], [ 113.852539, 29.058606 ], [ 113.882104, 29.065407 ], [ 113.876561, 29.038202 ], [ 113.898119, 29.029307 ], [ 113.94185, 29.047097 ], [ 113.961561, 28.999476 ], [ 113.955401, 28.978536 ], [ 113.973879, 28.937692 ], [ 114.008988, 28.955498 ], [ 114.005292, 28.917788 ], [ 114.028082, 28.891069 ], [ 114.060111, 28.902596 ], [ 114.056415, 28.872204 ], [ 114.076741, 28.834464 ], [ 114.124784, 28.843376 ], [ 114.153734, 28.829221 ], [ 114.137719, 28.779926 ], [ 114.157429, 28.761566 ], [ 114.122321, 28.623497 ], [ 114.132176, 28.607211 ], [ 114.08598, 28.558337 ], [ 114.138335, 28.533629 ], [ 114.15435, 28.507337 ], [ 114.218407, 28.48472 ], [ 114.217175, 28.466308 ], [ 114.172212, 28.432632 ], [ 114.214712, 28.403157 ], [ 114.252284, 28.395787 ], [ 114.2529, 28.319423 ], [ 114.198081, 28.29097 ], [ 114.182067, 28.249858 ], [ 114.143879, 28.246694 ], [ 114.109386, 28.205038 ], [ 114.107538, 28.182885 ], [ 114.068734, 28.171806 ], [ 114.012068, 28.174972 ], [ 113.992357, 28.161255 ], [ 114.025002, 28.080499 ], [ 114.047176, 28.057263 ], [ 114.025618, 28.031382 ], [ 113.970184, 28.041418 ], [ 113.966488, 28.017646 ], [ 113.936307, 28.018703 ], [ 113.914133, 27.991227 ], [ 113.864242, 28.004966 ], [ 113.845148, 27.971672 ], [ 113.822974, 27.982243 ], [ 113.752141, 27.93361 ], [ 113.72812, 27.874904 ], [ 113.756453, 27.860091 ], [ 113.763228, 27.799228 ], [ 113.69917, 27.740979 ], [ 113.696707, 27.71979 ], [ 113.652359, 27.663619 ], [ 113.607395, 27.625449 ], [ 113.608627, 27.585143 ], [ 113.579062, 27.545354 ], [ 113.583374, 27.524657 ], [ 113.627105, 27.49971 ], [ 113.591381, 27.467855 ], [ 113.59754, 27.428554 ], [ 113.632033, 27.40518 ], [ 113.605548, 27.38924 ], [ 113.616635, 27.345658 ], [ 113.657902, 27.347253 ], [ 113.699786, 27.331836 ], [ 113.72812, 27.350442 ], [ 113.872865, 27.384988 ], [ 113.872865, 27.346721 ], [ 113.854387, 27.30525 ], [ 113.872865, 27.289828 ], [ 113.846996, 27.222262 ], [ 113.779242, 27.137081 ], [ 113.771851, 27.096598 ], [ 113.803264, 27.099261 ], [ 113.824206, 27.036378 ], [ 113.86301, 27.018252 ], [ 113.892575, 26.964925 ], [ 113.927068, 26.948922 ], [ 113.890112, 26.895562 ], [ 113.877177, 26.859262 ], [ 113.835909, 26.806394 ], [ 113.853771, 26.769532 ], [ 113.860546, 26.664221 ], [ 113.912901, 26.613938 ], [ 113.996669, 26.615543 ], [ 114.019459, 26.587182 ], [ 114.10877, 26.56952 ], [ 114.07243, 26.480096 ], [ 114.110002, 26.482775 ], [ 114.090292, 26.455988 ], [ 114.085364, 26.406149 ], [ 114.062575, 26.406149 ], [ 114.030546, 26.376664 ], [ 114.047792, 26.337518 ], [ 114.021307, 26.288701 ], [ 114.029314, 26.266163 ], [ 113.978807, 26.237716 ], [ 113.972647, 26.20604 ], [ 113.949242, 26.192616 ], [ 113.962792, 26.150722 ], [ 114.013299, 26.184023 ], [ 114.088444, 26.168448 ], [ 114.102611, 26.187783 ], [ 114.181451, 26.214631 ], [ 114.216559, 26.203355 ], [ 114.237501, 26.152333 ], [ 114.188842, 26.121172 ], [ 114.10569, 26.097526 ], [ 114.121089, 26.085702 ], [ 114.087828, 26.06635 ], [ 114.044096, 26.076564 ], [ 114.008372, 26.015806 ], [ 114.028082, 25.98138 ], [ 114.028082, 25.893119 ], [ 113.971416, 25.836036 ], [ 113.961561, 25.77731 ], [ 113.920293, 25.741197 ], [ 113.913517, 25.701299 ], [ 113.957249, 25.611749 ], [ 113.983118, 25.599336 ], [ 113.986198, 25.529153 ], [ 113.962792, 25.528072 ], [ 113.94493, 25.441635 ], [ 113.887032, 25.436772 ], [ 113.877177, 25.380552 ], [ 113.839605, 25.363248 ], [ 113.814967, 25.328634 ], [ 113.76446, 25.333502 ], [ 113.753373, 25.362707 ], [ 113.686852, 25.351891 ], [ 113.680076, 25.334584 ], [ 113.611707, 25.327552 ], [ 113.584606, 25.306453 ], [ 113.579062, 25.34432 ], [ 113.535946, 25.368656 ], [ 113.479896, 25.375145 ], [ 113.449715, 25.359463 ], [ 113.407215, 25.401637 ], [ 113.373338, 25.402719 ], [ 113.341926, 25.448661 ], [ 113.314208, 25.442716 ], [ 113.311129, 25.490264 ], [ 113.248919, 25.514031 ], [ 113.226129, 25.50971 ], [ 113.176854, 25.471355 ], [ 113.11834, 25.44704 ], [ 113.130658, 25.427043 ], [ 113.096782, 25.412449 ], [ 113.078304, 25.382174 ], [ 113.013014, 25.352432 ], [ 112.969898, 25.350269 ], [ 112.93479, 25.325929 ], [ 112.924319, 25.296714 ], [ 112.891058, 25.339993 ], [ 112.854718, 25.337829 ], [ 112.867036, 25.249632 ], [ 112.897833, 25.238264 ], [ 112.958195, 25.254503 ], [ 112.992688, 25.247467 ], [ 113.034572, 25.198199 ], [ 112.97421, 25.168412 ], [ 112.96805, 25.141869 ], [ 113.018557, 25.083344 ], [ 112.979137, 25.03401 ], [ 113.009934, 24.977604 ], [ 113.011782, 24.946136 ], [ 112.984681, 24.921172 ], [ 112.904609, 24.921715 ], [ 112.873812, 24.896747 ], [ 112.780805, 24.896747 ], [ 112.778341, 24.947764 ], [ 112.743233, 24.959701 ], [ 112.742001, 24.99876 ], [ 112.714899, 25.025876 ], [ 112.712436, 25.083344 ], [ 112.660081, 25.132658 ], [ 112.628052, 25.140785 ], [ 112.562762, 25.124531 ], [ 112.458053, 25.152162 ], [ 112.44327, 25.185744 ], [ 112.414937, 25.14241 ], [ 112.365046, 25.191701 ], [ 112.315771, 25.175453 ], [ 112.302836, 25.157037 ], [ 112.256025, 25.159204 ], [ 112.246785, 25.185202 ], [ 112.19751, 25.187368 ], [ 112.174105, 25.128866 ], [ 112.177184, 25.106649 ], [ 112.151931, 25.055698 ], [ 112.155626, 25.026419 ], [ 112.12175, 24.989538 ], [ 112.119902, 24.963499 ], [ 112.175337, 24.927685 ], [ 112.167329, 24.859828 ], [ 112.149467, 24.837019 ], [ 112.124214, 24.841364 ], [ 112.03367, 24.771286 ], [ 112.024431, 24.740308 ], [ 111.951135, 24.769655 ], [ 111.929577, 24.75607 ], [ 111.875374, 24.756613 ], [ 111.868599, 24.771829 ], [ 111.814396, 24.770199 ], [ 111.783599, 24.785957 ], [ 111.708455, 24.788673 ], [ 111.666571, 24.760961 ], [ 111.637621, 24.715303 ], [ 111.641933, 24.684856 ], [ 111.588962, 24.690837 ], [ 111.570484, 24.64461 ], [ 111.526752, 24.637538 ], [ 111.499035, 24.667997 ], [ 111.451608, 24.665822 ], [ 111.431282, 24.687574 ], [ 111.461463, 24.728894 ], [ 111.479325, 24.797366 ], [ 111.449144, 24.857113 ], [ 111.447296, 24.892947 ], [ 111.470086, 24.92877 ], [ 111.434977, 24.951562 ], [ 111.43313, 24.979774 ], [ 111.460231, 24.992793 ], [ 111.467622, 25.02208 ], [ 111.416499, 25.047566 ], [ 111.435593, 25.093642 ], [ 111.375231, 25.128324 ], [ 111.36784, 25.108817 ], [ 111.321645, 25.105023 ], [ 111.274833, 25.151078 ], [ 111.221862, 25.106649 ], [ 111.200921, 25.074672 ], [ 111.139943, 25.042144 ], [ 111.101754, 25.035095 ], [ 111.100522, 24.945593 ], [ 111.009363, 24.921172 ], [ 110.968711, 24.975434 ], [ 110.951465, 25.04377 ], [ 110.98411, 25.101772 ], [ 110.998892, 25.161371 ], [ 111.112841, 25.21715 ], [ 111.103602, 25.285351 ], [ 111.138711, 25.303748 ], [ 111.184906, 25.367034 ], [ 111.210776, 25.363248 ], [ 111.257587, 25.395691 ], [ 111.26313, 25.42326 ], [ 111.300087, 25.44812 ], [ 111.32842, 25.521592 ], [ 111.324724, 25.564249 ], [ 111.343202, 25.602574 ], [ 111.309942, 25.645203 ], [ 111.30871, 25.720171 ], [ 111.399869, 25.744431 ], [ 111.442369, 25.77192 ], [ 111.43313, 25.84627 ], [ 111.4861, 25.859196 ], [ 111.460231, 25.885042 ], [ 111.383239, 25.881812 ], [ 111.376463, 25.906039 ], [ 111.346282, 25.906577 ], [ 111.297007, 25.874274 ], [ 111.29208, 25.854349 ], [ 111.251428, 25.864581 ], [ 111.230486, 25.916267 ], [ 111.189834, 25.953402 ], [ 111.235413, 26.048071 ], [ 111.267442, 26.058824 ], [ 111.244652, 26.078177 ], [ 111.26621, 26.095914 ], [ 111.258203, 26.151796 ], [ 111.274833, 26.183486 ], [ 111.271754, 26.217316 ], [ 111.293311, 26.222148 ], [ 111.277913, 26.272066 ], [ 111.228022, 26.261333 ], [ 111.204616, 26.276359 ], [ 111.208928, 26.30426 ], [ 111.090667, 26.308016 ], [ 111.008132, 26.336982 ], [ 111.008747, 26.35897 ], [ 110.974255, 26.385778 ], [ 110.94469, 26.373447 ], [ 110.944074, 26.326791 ], [ 110.926212, 26.320354 ], [ 110.939762, 26.286554 ], [ 110.836284, 26.255966 ], [ 110.759292, 26.248451 ], [ 110.73835, 26.271529 ], [ 110.742046, 26.313917 ], [ 110.711249, 26.29192 ], [ 110.673676, 26.317135 ], [ 110.643495, 26.308552 ], [ 110.612083, 26.333764 ], [ 110.584365, 26.296749 ], [ 110.552952, 26.283335 ], [ 110.546793, 26.233421 ], [ 110.495054, 26.166299 ], [ 110.477808, 26.179727 ], [ 110.437772, 26.153945 ], [ 110.373098, 26.088927 ], [ 110.325671, 25.975462 ], [ 110.257301, 25.961473 ], [ 110.24991, 26.010965 ], [ 110.181541, 26.060437 ], [ 110.168606, 26.028713 ], [ 110.100853, 26.020108 ], [ 110.065128, 26.050221 ], [ 110.100853, 26.132455 ], [ 110.099005, 26.168985 ], [ 110.03002, 26.166299 ], [ 109.970274, 26.195301 ], [ 109.904368, 26.135679 ], [ 109.898825, 26.095377 ], [ 109.864332, 26.027637 ], [ 109.814441, 26.041081 ], [ 109.782412, 25.996981 ], [ 109.806434, 25.973848 ], [ 109.826144, 25.911422 ], [ 109.811361, 25.877504 ], [ 109.779333, 25.866196 ], [ 109.768246, 25.890427 ], [ 109.685094, 25.880197 ], [ 109.67955, 25.921649 ], [ 109.693717, 25.959321 ], [ 109.710963, 25.954478 ], [ 109.730057, 25.989988 ], [ 109.649369, 26.016882 ], [ 109.635203, 26.047533 ], [ 109.588391, 26.019571 ], [ 109.560058, 26.021184 ], [ 109.513247, 25.998056 ], [ 109.48245, 26.029788 ] ] ], [ [ [ 109.528645, 26.743881 ], [ 109.52187, 26.749226 ], [ 109.522486, 26.749226 ], [ 109.528645, 26.743881 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"440000\", \"name\": \"广东省\", \"center\": [ 113.280637, 23.125178 ], \"centroid\": [ 113.429915, 23.334652 ], \"childrenNum\": 21, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 18, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 109.785492, 21.45673 ], [ 109.788572, 21.490702 ], [ 109.754695, 21.556396 ], [ 109.742992, 21.616497 ], [ 109.778101, 21.670455 ], [ 109.786108, 21.637638 ], [ 109.839695, 21.636525 ], [ 109.888354, 21.652101 ], [ 109.888354, 21.652101 ], [ 109.916071, 21.668787 ], [ 109.940093, 21.769419 ], [ 109.94502, 21.84443 ], [ 109.999839, 21.881643 ], [ 110.050962, 21.857205 ], [ 110.101469, 21.86998 ], [ 110.12857, 21.902744 ], [ 110.196323, 21.899968 ], [ 110.212338, 21.886085 ], [ 110.212338, 21.886085 ], [ 110.224041, 21.882198 ], [ 110.224041, 21.882198 ], [ 110.283787, 21.892194 ], [ 110.290562, 21.917736 ], [ 110.337374, 21.887751 ], [ 110.391576, 21.89386 ], [ 110.378642, 21.939942 ], [ 110.378642, 21.939942 ], [ 110.374946, 21.967695 ], [ 110.374946, 21.967695 ], [ 110.352772, 21.97602 ], [ 110.359547, 22.015973 ], [ 110.35154, 22.097508 ], [ 110.364475, 22.125785 ], [ 110.326287, 22.152393 ], [ 110.34846, 22.195621 ], [ 110.378026, 22.164587 ], [ 110.414366, 22.208365 ], [ 110.456866, 22.189526 ], [ 110.505525, 22.14297 ], [ 110.55788, 22.196175 ], [ 110.602843, 22.18343 ], [ 110.598532, 22.162924 ], [ 110.629329, 22.149068 ], [ 110.678604, 22.172901 ], [ 110.646575, 22.220554 ], [ 110.687843, 22.249914 ], [ 110.725415, 22.29588 ], [ 110.759292, 22.274837 ], [ 110.787009, 22.28259 ], [ 110.749437, 22.329653 ], [ 110.74143, 22.361757 ], [ 110.711249, 22.369506 ], [ 110.712481, 22.440879 ], [ 110.688459, 22.477935 ], [ 110.74143, 22.464109 ], [ 110.740198, 22.498947 ], [ 110.762988, 22.518298 ], [ 110.749437, 22.556991 ], [ 110.778386, 22.585174 ], [ 110.812263, 22.576333 ], [ 110.897878, 22.591805 ], [ 110.896031, 22.613352 ], [ 110.950233, 22.61059 ], [ 110.958856, 22.636553 ], [ 110.997045, 22.631582 ], [ 111.055559, 22.648705 ], [ 111.089435, 22.695643 ], [ 111.058023, 22.729871 ], [ 111.118385, 22.744773 ], [ 111.185522, 22.735942 ], [ 111.218167, 22.748085 ], [ 111.358601, 22.889301 ], [ 111.374615, 22.938361 ], [ 111.362913, 22.967568 ], [ 111.403565, 22.99126 ], [ 111.389398, 23.005583 ], [ 111.433746, 23.036428 ], [ 111.43313, 23.073322 ], [ 111.402333, 23.066165 ], [ 111.377695, 23.082132 ], [ 111.365992, 23.14488 ], [ 111.38447, 23.16744 ], [ 111.388782, 23.210349 ], [ 111.36476, 23.240047 ], [ 111.353058, 23.284582 ], [ 111.376463, 23.30437 ], [ 111.363528, 23.340641 ], [ 111.389398, 23.375804 ], [ 111.383239, 23.399423 ], [ 111.399869, 23.469159 ], [ 111.428818, 23.466414 ], [ 111.479941, 23.532822 ], [ 111.487332, 23.626615 ], [ 111.555702, 23.64087 ], [ 111.615448, 23.639225 ], [ 111.614832, 23.65896 ], [ 111.666571, 23.718696 ], [ 111.621607, 23.725819 ], [ 111.627766, 23.78881 ], [ 111.654868, 23.833159 ], [ 111.683201, 23.822758 ], [ 111.683201, 23.822758 ], [ 111.722621, 23.823305 ], [ 111.8107, 23.80688 ], [ 111.824867, 23.832612 ], [ 111.812548, 23.887343 ], [ 111.845809, 23.904305 ], [ 111.854432, 23.947521 ], [ 111.911714, 23.943693 ], [ 111.940664, 23.987989 ], [ 111.92157, 24.012045 ], [ 111.878454, 24.109862 ], [ 111.886461, 24.163929 ], [ 111.871062, 24.176487 ], [ 111.877222, 24.227252 ], [ 111.912946, 24.221795 ], [ 111.958526, 24.263813 ], [ 111.986243, 24.25672 ], [ 111.990555, 24.279634 ], [ 112.026279, 24.294908 ], [ 112.05954, 24.339628 ], [ 112.057692, 24.387057 ], [ 112.025047, 24.438828 ], [ 111.985011, 24.467701 ], [ 112.009649, 24.503103 ], [ 112.007185, 24.534684 ], [ 111.972077, 24.578775 ], [ 111.936968, 24.595645 ], [ 111.927729, 24.629378 ], [ 111.953598, 24.64733 ], [ 111.939432, 24.686487 ], [ 111.961606, 24.721283 ], [ 112.024431, 24.740308 ], [ 112.03367, 24.771286 ], [ 112.124214, 24.841364 ], [ 112.149467, 24.837019 ], [ 112.167329, 24.859828 ], [ 112.175337, 24.927685 ], [ 112.119902, 24.963499 ], [ 112.12175, 24.989538 ], [ 112.155626, 25.026419 ], [ 112.151931, 25.055698 ], [ 112.177184, 25.106649 ], [ 112.174105, 25.128866 ], [ 112.19751, 25.187368 ], [ 112.246785, 25.185202 ], [ 112.256025, 25.159204 ], [ 112.302836, 25.157037 ], [ 112.315771, 25.175453 ], [ 112.365046, 25.191701 ], [ 112.414937, 25.14241 ], [ 112.44327, 25.185744 ], [ 112.458053, 25.152162 ], [ 112.562762, 25.124531 ], [ 112.628052, 25.140785 ], [ 112.660081, 25.132658 ], [ 112.712436, 25.083344 ], [ 112.714899, 25.025876 ], [ 112.742001, 24.99876 ], [ 112.743233, 24.959701 ], [ 112.778341, 24.947764 ], [ 112.780805, 24.896747 ], [ 112.873812, 24.896747 ], [ 112.904609, 24.921715 ], [ 112.984681, 24.921172 ], [ 113.011782, 24.946136 ], [ 113.009934, 24.977604 ], [ 112.979137, 25.03401 ], [ 113.018557, 25.083344 ], [ 112.96805, 25.141869 ], [ 112.97421, 25.168412 ], [ 113.034572, 25.198199 ], [ 112.992688, 25.247467 ], [ 112.958195, 25.254503 ], [ 112.897833, 25.238264 ], [ 112.867036, 25.249632 ], [ 112.854718, 25.337829 ], [ 112.891058, 25.339993 ], [ 112.924319, 25.296714 ], [ 112.93479, 25.325929 ], [ 112.969898, 25.350269 ], [ 113.013014, 25.352432 ], [ 113.078304, 25.382174 ], [ 113.096782, 25.412449 ], [ 113.130658, 25.427043 ], [ 113.11834, 25.44704 ], [ 113.176854, 25.471355 ], [ 113.226129, 25.50971 ], [ 113.248919, 25.514031 ], [ 113.311129, 25.490264 ], [ 113.314208, 25.442716 ], [ 113.341926, 25.448661 ], [ 113.373338, 25.402719 ], [ 113.407215, 25.401637 ], [ 113.449715, 25.359463 ], [ 113.479896, 25.375145 ], [ 113.535946, 25.368656 ], [ 113.579062, 25.34432 ], [ 113.584606, 25.306453 ], [ 113.611707, 25.327552 ], [ 113.680076, 25.334584 ], [ 113.686852, 25.351891 ], [ 113.753373, 25.362707 ], [ 113.76446, 25.333502 ], [ 113.814967, 25.328634 ], [ 113.839605, 25.363248 ], [ 113.877177, 25.380552 ], [ 113.887032, 25.436772 ], [ 113.94493, 25.441635 ], [ 114.003444, 25.442716 ], [ 113.983118, 25.415152 ], [ 114.050256, 25.36433 ], [ 114.029314, 25.328093 ], [ 114.017611, 25.273987 ], [ 114.039785, 25.250714 ], [ 114.055799, 25.277775 ], [ 114.083517, 25.275611 ], [ 114.115545, 25.302125 ], [ 114.190074, 25.316733 ], [ 114.204857, 25.29942 ], [ 114.260291, 25.291845 ], [ 114.2954, 25.299961 ], [ 114.31511, 25.33837 ], [ 114.382863, 25.317274 ], [ 114.43029, 25.343779 ], [ 114.438914, 25.376226 ], [ 114.477718, 25.37136 ], [ 114.541159, 25.416773 ], [ 114.599674, 25.385959 ], [ 114.63663, 25.324306 ], [ 114.714238, 25.315651 ], [ 114.743188, 25.274528 ], [ 114.73518, 25.225813 ], [ 114.693912, 25.213902 ], [ 114.685905, 25.173287 ], [ 114.73518, 25.155954 ], [ 114.735796, 25.121822 ], [ 114.664963, 25.10123 ], [ 114.640326, 25.074129 ], [ 114.604601, 25.083886 ], [ 114.561485, 25.077382 ], [ 114.532536, 25.022623 ], [ 114.506051, 24.999844 ], [ 114.45616, 24.99659 ], [ 114.454928, 24.977062 ], [ 114.395798, 24.951019 ], [ 114.403189, 24.877746 ], [ 114.378551, 24.861457 ], [ 114.342211, 24.807145 ], [ 114.336052, 24.749004 ], [ 114.281849, 24.724001 ], [ 114.27261, 24.700624 ], [ 114.169132, 24.689749 ], [ 114.19069, 24.656576 ], [ 114.258443, 24.641346 ], [ 114.289856, 24.619042 ], [ 114.300943, 24.578775 ], [ 114.363769, 24.582584 ], [ 114.391486, 24.563535 ], [ 114.403189, 24.497657 ], [ 114.429058, 24.48622 ], [ 114.534384, 24.559181 ], [ 114.589819, 24.537406 ], [ 114.627391, 24.576598 ], [ 114.664963, 24.583673 ], [ 114.704999, 24.525973 ], [ 114.73826, 24.565168 ], [ 114.729637, 24.608704 ], [ 114.781376, 24.613057 ], [ 114.827571, 24.588026 ], [ 114.846665, 24.602719 ], [ 114.868839, 24.562446 ], [ 114.893477, 24.582584 ], [ 114.909491, 24.661471 ], [ 114.940288, 24.650049 ], [ 115.00373, 24.679418 ], [ 115.024672, 24.669085 ], [ 115.057317, 24.703343 ], [ 115.083802, 24.699537 ], [ 115.104744, 24.667997 ], [ 115.1842, 24.711498 ], [ 115.258729, 24.728894 ], [ 115.269816, 24.749548 ], [ 115.306772, 24.758787 ], [ 115.358511, 24.735416 ], [ 115.372678, 24.774546 ], [ 115.412714, 24.79302 ], [ 115.476771, 24.762591 ], [ 115.522967, 24.702799 ], [ 115.555611, 24.683768 ], [ 115.569778, 24.622306 ], [ 115.605503, 24.62557 ], [ 115.671408, 24.604895 ], [ 115.68927, 24.545027 ], [ 115.752712, 24.546116 ], [ 115.785357, 24.567345 ], [ 115.843871, 24.562446 ], [ 115.840791, 24.584217 ], [ 115.797676, 24.628834 ], [ 115.780429, 24.663103 ], [ 115.801371, 24.705517 ], [ 115.769342, 24.708236 ], [ 115.756408, 24.749004 ], [ 115.776734, 24.774546 ], [ 115.764415, 24.791933 ], [ 115.790284, 24.856027 ], [ 115.807531, 24.862543 ], [ 115.824161, 24.909232 ], [ 115.863581, 24.891318 ], [ 115.861733, 24.863629 ], [ 115.907313, 24.879917 ], [ 115.885139, 24.898918 ], [ 115.89253, 24.936911 ], [ 115.907929, 24.923343 ], [ 115.985537, 24.899461 ], [ 116.015102, 24.905975 ], [ 116.068073, 24.850053 ], [ 116.153073, 24.846795 ], [ 116.191877, 24.877203 ], [ 116.221442, 24.829959 ], [ 116.251007, 24.82507 ], [ 116.244232, 24.793563 ], [ 116.297202, 24.801712 ], [ 116.345862, 24.828872 ], [ 116.363724, 24.87123 ], [ 116.395137, 24.877746 ], [ 116.417927, 24.840821 ], [ 116.381586, 24.82507 ], [ 116.375427, 24.803885 ], [ 116.419158, 24.767482 ], [ 116.416079, 24.744113 ], [ 116.44626, 24.714216 ], [ 116.485064, 24.720196 ], [ 116.517709, 24.652225 ], [ 116.506622, 24.621218 ], [ 116.530027, 24.604895 ], [ 116.570679, 24.621762 ], [ 116.600861, 24.654401 ], [ 116.623034, 24.64189 ], [ 116.667382, 24.658752 ], [ 116.777635, 24.679418 ], [ 116.815207, 24.654944 ], [ 116.761005, 24.583128 ], [ 116.759157, 24.545572 ], [ 116.796729, 24.502014 ], [ 116.83307, 24.496568 ], [ 116.860787, 24.460075 ], [ 116.839229, 24.442097 ], [ 116.903903, 24.369614 ], [ 116.895895, 24.350533 ], [ 116.919301, 24.321087 ], [ 116.914374, 24.287817 ], [ 116.938395, 24.28127 ], [ 116.933468, 24.220157 ], [ 116.956257, 24.216883 ], [ 116.998757, 24.179217 ], [ 116.9347, 24.126794 ], [ 116.930388, 24.064514 ], [ 116.953178, 24.008218 ], [ 116.981511, 23.999471 ], [ 116.976583, 23.931659 ], [ 116.955642, 23.922359 ], [ 116.981511, 23.855602 ], [ 117.012308, 23.855054 ], [ 117.019083, 23.801952 ], [ 117.048032, 23.758687 ], [ 117.055424, 23.694038 ], [ 117.123793, 23.647448 ], [ 117.147199, 23.654027 ], [ 117.192778, 23.629356 ], [ 117.192778, 23.5619 ], [ 117.085605, 23.536663 ], [ 117.044953, 23.539955 ], [ 117.01046, 23.502641 ], [ 116.963649, 23.507031 ], [ 116.92854, 23.530079 ], [ 116.888504, 23.501543 ], [ 116.895895, 23.476295 ], [ 116.874953, 23.447748 ], [ 116.874338, 23.447199 ], [ 116.871258, 23.416449 ], [ 116.871874, 23.4159 ], [ 116.782563, 23.313714 ], [ 116.798577, 23.244996 ], [ 116.821367, 23.240597 ], [ 116.806584, 23.200998 ], [ 116.74499, 23.215299 ], [ 116.701259, 23.198248 ], [ 116.665534, 23.158086 ], [ 116.566368, 23.134424 ], [ 116.550969, 23.109656 ], [ 116.566368, 23.088738 ], [ 116.557129, 23.056253 ], [ 116.576839, 23.014397 ], [ 116.542346, 22.995667 ], [ 116.50539, 22.930645 ], [ 116.449955, 22.936707 ], [ 116.382818, 22.91907 ], [ 116.317528, 22.95269 ], [ 116.226985, 22.91466 ], [ 116.191261, 22.874965 ], [ 116.104413, 22.816505 ], [ 116.05637, 22.844635 ], [ 115.99724, 22.826985 ], [ 115.965211, 22.800506 ], [ 115.931334, 22.802713 ], [ 115.883291, 22.78561 ], [ 115.829089, 22.734838 ], [ 115.796444, 22.739254 ], [ 115.788437, 22.809885 ], [ 115.760103, 22.834707 ], [ 115.696046, 22.84298 ], [ 115.654162, 22.865591 ], [ 115.583945, 22.82864 ], [ 115.570394, 22.786713 ], [ 115.541445, 22.755259 ], [ 115.609198, 22.753052 ], [ 115.565467, 22.684048 ], [ 115.575322, 22.650914 ], [ 115.471844, 22.697852 ], [ 115.430576, 22.684048 ], [ 115.381301, 22.684048 ], [ 115.349272, 22.712206 ], [ 115.338185, 22.776781 ], [ 115.319091, 22.783402 ], [ 115.230396, 22.776781 ], [ 115.236555, 22.82533 ], [ 115.190359, 22.818711 ], [ 115.190975, 22.77347 ], [ 115.154635, 22.80161 ], [ 115.061628, 22.783402 ], [ 115.053621, 22.747533 ], [ 115.02344, 22.726007 ], [ 115.039454, 22.713862 ], [ 114.945216, 22.645391 ], [ 114.927969, 22.621639 ], [ 114.922426, 22.549253 ], [ 114.88547, 22.538751 ], [ 114.866375, 22.591805 ], [ 114.746267, 22.581859 ], [ 114.743803, 22.632687 ], [ 114.728405, 22.651466 ], [ 114.73518, 22.724351 ], [ 114.749963, 22.764089 ], [ 114.709927, 22.787817 ], [ 114.689601, 22.7674 ], [ 114.601521, 22.730975 ], [ 114.591666, 22.690122 ], [ 114.567029, 22.685705 ], [ 114.51529, 22.655332 ], [ 114.579964, 22.661407 ], [ 114.603369, 22.638763 ], [ 114.559022, 22.583517 ], [ 114.568261, 22.560859 ], [ 114.614456, 22.545384 ], [ 114.628623, 22.513875 ], [ 114.611377, 22.481806 ], [ 114.549167, 22.465769 ], [ 114.506667, 22.438667 ], [ 114.476486, 22.459132 ], [ 114.472174, 22.522168 ], [ 114.427211, 22.589042 ], [ 114.381631, 22.60175 ], [ 114.321885, 22.587385 ], [ 114.294784, 22.563623 ], [ 114.232574, 22.539857 ], [ 114.222719, 22.553122 ], [ 114.166052, 22.559201 ], [ 114.156813, 22.543726 ], [ 114.095219, 22.534329 ], [ 114.082285, 22.512216 ], [ 114.031778, 22.503923 ], [ 113.976343, 22.510558 ], [ 113.954785, 22.491206 ], [ 113.952937, 22.486783 ], [ 113.893807, 22.442539 ], [ 113.869786, 22.459685 ], [ 113.856851, 22.539857 ], [ 113.803264, 22.593463 ], [ 113.773083, 22.643182 ], [ 113.751525, 22.715518 ], [ 113.733663, 22.736494 ], [ 113.678228, 22.726007 ], [ 113.717033, 22.645391 ], [ 113.740438, 22.534329 ], [ 113.691779, 22.514981 ], [ 113.668373, 22.4807 ], [ 113.631417, 22.475723 ], [ 113.573519, 22.41156 ], [ 113.608627, 22.408793 ], [ 113.624642, 22.443092 ], [ 113.66591, 22.438667 ], [ 113.669605, 22.416539 ], [ 113.627721, 22.349027 ], [ 113.604932, 22.339617 ], [ 113.617866, 22.315259 ], [ 113.595693, 22.304186 ], [ 113.594461, 22.228864 ], [ 113.558736, 22.212244 ], [ 113.53841, 22.209473 ], [ 113.534715, 22.174009 ], [ 113.554425, 22.142416 ], [ 113.554425, 22.107489 ], [ 113.567359, 22.075327 ], [ 113.527939, 22.073663 ], [ 113.45957, 22.043711 ], [ 113.442324, 22.009315 ], [ 113.330223, 21.96159 ], [ 113.319752, 21.909407 ], [ 113.266781, 21.871646 ], [ 113.235368, 21.887751 ], [ 113.1516, 21.979905 ], [ 113.142977, 22.012089 ], [ 113.091854, 22.065344 ], [ 113.086927, 22.12634 ], [ 113.045659, 22.088636 ], [ 113.032108, 22.04593 ], [ 113.053666, 22.012089 ], [ 113.047507, 21.956595 ], [ 112.989608, 21.869424 ], [ 112.929862, 21.838875 ], [ 112.893522, 21.84443 ], [ 112.841167, 21.920512 ], [ 112.792508, 21.921067 ], [ 112.68595, 21.810541 ], [ 112.647146, 21.758302 ], [ 112.535661, 21.753856 ], [ 112.497473, 21.785535 ], [ 112.445734, 21.803317 ], [ 112.427256, 21.789981 ], [ 112.415553, 21.734956 ], [ 112.353343, 21.707157 ], [ 112.238778, 21.702153 ], [ 112.236315, 21.727173 ], [ 112.196894, 21.736624 ], [ 112.192583, 21.789425 ], [ 112.136532, 21.793871 ], [ 112.036134, 21.761637 ], [ 111.956062, 21.710494 ], [ 111.954214, 21.667674 ], [ 111.997946, 21.657107 ], [ 112.026895, 21.633744 ], [ 111.972692, 21.603144 ], [ 111.941896, 21.607039 ], [ 111.887693, 21.578659 ], [ 111.810084, 21.555283 ], [ 111.832258, 21.578659 ], [ 111.794686, 21.61149 ], [ 111.736788, 21.609821 ], [ 111.693672, 21.590345 ], [ 111.677658, 21.529677 ], [ 111.650556, 21.512418 ], [ 111.609904, 21.530234 ], [ 111.560629, 21.50518 ], [ 111.521825, 21.517429 ], [ 111.494724, 21.501282 ], [ 111.444217, 21.514088 ], [ 111.382623, 21.495714 ], [ 111.353058, 21.464528 ], [ 111.28592, 21.41885 ], [ 111.258819, 21.412165 ], [ 111.253275, 21.452831 ], [ 111.276065, 21.443362 ], [ 111.28284, 21.485691 ], [ 111.171355, 21.458401 ], [ 111.103602, 21.455616 ], [ 111.034617, 21.438906 ], [ 110.929291, 21.375945 ], [ 110.888639, 21.367585 ], [ 110.796248, 21.37483 ], [ 110.768531, 21.364799 ], [ 110.713097, 21.3124 ], [ 110.65951, 21.239902 ], [ 110.626249, 21.215915 ], [ 110.534474, 21.204198 ], [ 110.501213, 21.217588 ], [ 110.451322, 21.186343 ], [ 110.422373, 21.190807 ], [ 110.39096, 21.124949 ], [ 110.296722, 21.093684 ], [ 110.24991, 21.045098 ], [ 110.241903, 21.016051 ], [ 110.208642, 21.050684 ], [ 110.204947, 21.003202 ], [ 110.180925, 20.98197 ], [ 110.184005, 20.891979 ], [ 110.209874, 20.860106 ], [ 110.269004, 20.839972 ], [ 110.327519, 20.847802 ], [ 110.393424, 20.816479 ], [ 110.407591, 20.731987 ], [ 110.392192, 20.682724 ], [ 110.411286, 20.670966 ], [ 110.466105, 20.680485 ], [ 110.487047, 20.640167 ], [ 110.499982, 20.572386 ], [ 110.550489, 20.47262 ], [ 110.54125, 20.42047 ], [ 110.491358, 20.373912 ], [ 110.452554, 20.311064 ], [ 110.425453, 20.291419 ], [ 110.384185, 20.293103 ], [ 110.349076, 20.258859 ], [ 110.296722, 20.249314 ], [ 110.220345, 20.25156 ], [ 110.168606, 20.219553 ], [ 110.118099, 20.219553 ], [ 110.082375, 20.258859 ], [ 109.993679, 20.254368 ], [ 109.929006, 20.211691 ], [ 109.909296, 20.236961 ], [ 109.916071, 20.316677 ], [ 109.861252, 20.376717 ], [ 109.864948, 20.40196 ], [ 109.895745, 20.42776 ], [ 109.888354, 20.475423 ], [ 109.839695, 20.489439 ], [ 109.811977, 20.541566 ], [ 109.813825, 20.574627 ], [ 109.793499, 20.615522 ], [ 109.74484, 20.621124 ], [ 109.730057, 20.719673 ], [ 109.711579, 20.774519 ], [ 109.664768, 20.862343 ], [ 109.655529, 20.929435 ], [ 109.674007, 21.067997 ], [ 109.674623, 21.136671 ], [ 109.763934, 21.226514 ], [ 109.757775, 21.346963 ], [ 109.770709, 21.359783 ], [ 109.868644, 21.365913 ], [ 109.904368, 21.429992 ], [ 109.894513, 21.442248 ], [ 109.819369, 21.445033 ], [ 109.785492, 21.45673 ] ] ], [ [ [ 117.145351, 23.455983 ], [ 117.142887, 23.400522 ], [ 117.124409, 23.389537 ], [ 117.081909, 23.409309 ], [ 117.050496, 23.400522 ], [ 117.027091, 23.41535 ], [ 116.946402, 23.42194 ], [ 116.944555, 23.440061 ], [ 116.982743, 23.460924 ], [ 117.022779, 23.436767 ], [ 117.058503, 23.47355 ], [ 117.093612, 23.459277 ], [ 117.129336, 23.483431 ], [ 117.145351, 23.455983 ] ] ], [ [ [ 112.853486, 21.740515 ], [ 112.83316, 21.736624 ], [ 112.804826, 21.686583 ], [ 112.821457, 21.655994 ], [ 112.798667, 21.610933 ], [ 112.817145, 21.590345 ], [ 112.775261, 21.564189 ], [ 112.730914, 21.613715 ], [ 112.780189, 21.671568 ], [ 112.734609, 21.666562 ], [ 112.70566, 21.679354 ], [ 112.724138, 21.719945 ], [ 112.782653, 21.739959 ], [ 112.840551, 21.776644 ], [ 112.876275, 21.772753 ], [ 112.853486, 21.740515 ] ] ], [ [ [ 112.530733, 21.583667 ], [ 112.535045, 21.628737 ], [ 112.57077, 21.645982 ], [ 112.560299, 21.666562 ], [ 112.592327, 21.693256 ], [ 112.663776, 21.714386 ], [ 112.66624, 21.683803 ], [ 112.639139, 21.67268 ], [ 112.665624, 21.642644 ], [ 112.621277, 21.606482 ], [ 112.571385, 21.619835 ], [ 112.563378, 21.591458 ], [ 112.530733, 21.583667 ] ] ], [ [ [ 114.231342, 22.016528 ], [ 114.239965, 22.03539 ], [ 114.302791, 22.050368 ], [ 114.311414, 22.041493 ], [ 114.231342, 22.016528 ] ] ], [ [ [ 112.435263, 21.663781 ], [ 112.458669, 21.68992 ], [ 112.456205, 21.648763 ], [ 112.435263, 21.663781 ] ] ], [ [ [ 110.435308, 21.182995 ], [ 110.445163, 21.184669 ], [ 110.499366, 21.213125 ], [ 110.525235, 21.190249 ], [ 110.589293, 21.194713 ], [ 110.632409, 21.210893 ], [ 110.582517, 21.094801 ], [ 110.544945, 21.083633 ], [ 110.508605, 21.140579 ], [ 110.434076, 21.168485 ], [ 110.435308, 21.182995 ] ] ], [ [ [ 110.517844, 21.079166 ], [ 110.560344, 21.061295 ], [ 110.539402, 20.987557 ], [ 110.535706, 20.922727 ], [ 110.511684, 20.916578 ], [ 110.47288, 20.983087 ], [ 110.407591, 20.990351 ], [ 110.347845, 20.984763 ], [ 110.309656, 20.963529 ], [ 110.201251, 20.938378 ], [ 110.211106, 20.986999 ], [ 110.27578, 21.033369 ], [ 110.305961, 21.0881 ], [ 110.352772, 21.079724 ], [ 110.398352, 21.096476 ], [ 110.459946, 21.062971 ], [ 110.517844, 21.079166 ] ] ], [ [ [ 113.765076, 21.962145 ], [ 113.74167, 21.991559 ], [ 113.774315, 21.998218 ], [ 113.765076, 21.962145 ] ] ], [ [ [ 113.723192, 21.922177 ], [ 113.71888, 21.951599 ], [ 113.742902, 21.950489 ], [ 113.723192, 21.922177 ] ] ], [ [ [ 113.142977, 21.831653 ], [ 113.136818, 21.868869 ], [ 113.167615, 21.876644 ], [ 113.203955, 21.861093 ], [ 113.162071, 21.853873 ], [ 113.142977, 21.831653 ] ] ], [ [ [ 113.819894, 22.396068 ], [ 113.786634, 22.413773 ], [ 113.813735, 22.419858 ], [ 113.819894, 22.396068 ] ] ], [ [ [ 114.190074, 21.986564 ], [ 114.180835, 22.00987 ], [ 114.229494, 21.995443 ], [ 114.190074, 21.986564 ] ] ], [ [ [ 114.153734, 21.97491 ], [ 114.124169, 21.985455 ], [ 114.171596, 22.000437 ], [ 114.153734, 21.97491 ] ] ], [ [ [ 116.769628, 20.771721 ], [ 116.820135, 20.780674 ], [ 116.88604, 20.775638 ], [ 116.925461, 20.726949 ], [ 116.934084, 20.676565 ], [ 116.905135, 20.619443 ], [ 116.862635, 20.588633 ], [ 116.796113, 20.582471 ], [ 116.749302, 20.600958 ], [ 116.849084, 20.628405 ], [ 116.889736, 20.683284 ], [ 116.87249, 20.738143 ], [ 116.761005, 20.750456 ], [ 116.769628, 20.771721 ] ] ], [ [ [ 113.025333, 21.847762 ], [ 113.007471, 21.869424 ], [ 113.045659, 21.882753 ], [ 113.025333, 21.847762 ] ] ], [ [ [ 110.405127, 20.678245 ], [ 110.414366, 20.710157 ], [ 110.437772, 20.677685 ], [ 110.405127, 20.678245 ] ] ], [ [ [ 110.644727, 20.935584 ], [ 110.646575, 20.917137 ], [ 110.611467, 20.860106 ], [ 110.562807, 20.861224 ], [ 110.548641, 20.908752 ], [ 110.584365, 20.948998 ], [ 110.644727, 20.935584 ] ] ], [ [ [ 110.556648, 20.32734 ], [ 110.586213, 20.381205 ], [ 110.593604, 20.360447 ], [ 110.556648, 20.32734 ] ] ], [ [ [ 115.943037, 21.097592 ], [ 115.965211, 21.123832 ], [ 116.024341, 21.12439 ], [ 116.044051, 21.110434 ], [ 116.067457, 21.04063 ], [ 116.040356, 21.02052 ], [ 115.989233, 21.035603 ], [ 115.953508, 21.064088 ], [ 115.943037, 21.097592 ] ] ], [ [ [ 115.926407, 20.981411 ], [ 115.954124, 20.99985 ], [ 116.000936, 20.948439 ], [ 115.999088, 20.922727 ], [ 115.970139, 20.919373 ], [ 115.939342, 20.945644 ], [ 115.926407, 20.981411 ] ] ], [ [ [ 115.834632, 22.722695 ], [ 115.835248, 22.722695 ], [ 115.834632, 22.722143 ], [ 115.834632, 22.722695 ] ] ], [ [ [ 115.834632, 22.723247 ], [ 115.835248, 22.722695 ], [ 115.834632, 22.722695 ], [ 115.834632, 22.723247 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"450000\", \"name\": \"广西壮族自治区\", \"center\": [ 108.320004, 22.82402 ], \"centroid\": [ 108.7944, 23.833381 ], \"childrenNum\": 14, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 19, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 112.024431, 24.740308 ], [ 111.961606, 24.721283 ], [ 111.939432, 24.686487 ], [ 111.953598, 24.64733 ], [ 111.927729, 24.629378 ], [ 111.936968, 24.595645 ], [ 111.972077, 24.578775 ], [ 112.007185, 24.534684 ], [ 112.009649, 24.503103 ], [ 111.985011, 24.467701 ], [ 112.025047, 24.438828 ], [ 112.057692, 24.387057 ], [ 112.05954, 24.339628 ], [ 112.026279, 24.294908 ], [ 111.990555, 24.279634 ], [ 111.986243, 24.25672 ], [ 111.958526, 24.263813 ], [ 111.912946, 24.221795 ], [ 111.877222, 24.227252 ], [ 111.871062, 24.176487 ], [ 111.886461, 24.163929 ], [ 111.878454, 24.109862 ], [ 111.92157, 24.012045 ], [ 111.940664, 23.987989 ], [ 111.911714, 23.943693 ], [ 111.854432, 23.947521 ], [ 111.845809, 23.904305 ], [ 111.812548, 23.887343 ], [ 111.824867, 23.832612 ], [ 111.8107, 23.80688 ], [ 111.722621, 23.823305 ], [ 111.683201, 23.822758 ], [ 111.683201, 23.822758 ], [ 111.654868, 23.833159 ], [ 111.627766, 23.78881 ], [ 111.621607, 23.725819 ], [ 111.666571, 23.718696 ], [ 111.614832, 23.65896 ], [ 111.615448, 23.639225 ], [ 111.555702, 23.64087 ], [ 111.487332, 23.626615 ], [ 111.479941, 23.532822 ], [ 111.428818, 23.466414 ], [ 111.399869, 23.469159 ], [ 111.383239, 23.399423 ], [ 111.389398, 23.375804 ], [ 111.363528, 23.340641 ], [ 111.376463, 23.30437 ], [ 111.353058, 23.284582 ], [ 111.36476, 23.240047 ], [ 111.388782, 23.210349 ], [ 111.38447, 23.16744 ], [ 111.365992, 23.14488 ], [ 111.377695, 23.082132 ], [ 111.402333, 23.066165 ], [ 111.43313, 23.073322 ], [ 111.433746, 23.036428 ], [ 111.389398, 23.005583 ], [ 111.403565, 22.99126 ], [ 111.362913, 22.967568 ], [ 111.374615, 22.938361 ], [ 111.358601, 22.889301 ], [ 111.218167, 22.748085 ], [ 111.185522, 22.735942 ], [ 111.118385, 22.744773 ], [ 111.058023, 22.729871 ], [ 111.089435, 22.695643 ], [ 111.055559, 22.648705 ], [ 110.997045, 22.631582 ], [ 110.958856, 22.636553 ], [ 110.950233, 22.61059 ], [ 110.896031, 22.613352 ], [ 110.897878, 22.591805 ], [ 110.812263, 22.576333 ], [ 110.778386, 22.585174 ], [ 110.749437, 22.556991 ], [ 110.762988, 22.518298 ], [ 110.740198, 22.498947 ], [ 110.74143, 22.464109 ], [ 110.688459, 22.477935 ], [ 110.712481, 22.440879 ], [ 110.711249, 22.369506 ], [ 110.74143, 22.361757 ], [ 110.749437, 22.329653 ], [ 110.787009, 22.28259 ], [ 110.759292, 22.274837 ], [ 110.725415, 22.29588 ], [ 110.687843, 22.249914 ], [ 110.646575, 22.220554 ], [ 110.678604, 22.172901 ], [ 110.629329, 22.149068 ], [ 110.598532, 22.162924 ], [ 110.602843, 22.18343 ], [ 110.55788, 22.196175 ], [ 110.505525, 22.14297 ], [ 110.456866, 22.189526 ], [ 110.414366, 22.208365 ], [ 110.378026, 22.164587 ], [ 110.34846, 22.195621 ], [ 110.326287, 22.152393 ], [ 110.364475, 22.125785 ], [ 110.35154, 22.097508 ], [ 110.359547, 22.015973 ], [ 110.352772, 21.97602 ], [ 110.374946, 21.967695 ], [ 110.374946, 21.967695 ], [ 110.378642, 21.939942 ], [ 110.378642, 21.939942 ], [ 110.391576, 21.89386 ], [ 110.337374, 21.887751 ], [ 110.290562, 21.917736 ], [ 110.283787, 21.892194 ], [ 110.224041, 21.882198 ], [ 110.224041, 21.882198 ], [ 110.212338, 21.886085 ], [ 110.212338, 21.886085 ], [ 110.196323, 21.899968 ], [ 110.12857, 21.902744 ], [ 110.101469, 21.86998 ], [ 110.050962, 21.857205 ], [ 109.999839, 21.881643 ], [ 109.94502, 21.84443 ], [ 109.940093, 21.769419 ], [ 109.916071, 21.668787 ], [ 109.888354, 21.652101 ], [ 109.888354, 21.652101 ], [ 109.839695, 21.636525 ], [ 109.786108, 21.637638 ], [ 109.778101, 21.670455 ], [ 109.742992, 21.616497 ], [ 109.754695, 21.556396 ], [ 109.788572, 21.490702 ], [ 109.785492, 21.45673 ], [ 109.704188, 21.462857 ], [ 109.654913, 21.493487 ], [ 109.612413, 21.556953 ], [ 109.604406, 21.523553 ], [ 109.576689, 21.493487 ], [ 109.540964, 21.466199 ], [ 109.529877, 21.437234 ], [ 109.484914, 21.453388 ], [ 109.41716, 21.438906 ], [ 109.245929, 21.425536 ], [ 109.186183, 21.390991 ], [ 109.138756, 21.388762 ], [ 109.095024, 21.419407 ], [ 109.046365, 21.424421 ], [ 109.039589, 21.457844 ], [ 109.074698, 21.489589 ], [ 109.142451, 21.511861 ], [ 109.138756, 21.567528 ], [ 109.110422, 21.568085 ], [ 109.09872, 21.571424 ], [ 109.093792, 21.579215 ], [ 108.937959, 21.589789 ], [ 108.881293, 21.627068 ], [ 108.83325, 21.610933 ], [ 108.801837, 21.626512 ], [ 108.745786, 21.602587 ], [ 108.710062, 21.646538 ], [ 108.705134, 21.622061 ], [ 108.678033, 21.659331 ], [ 108.658939, 21.643757 ], [ 108.626294, 21.67991 ], [ 108.591802, 21.677129 ], [ 108.492635, 21.554727 ], [ 108.397781, 21.533017 ], [ 108.330027, 21.540254 ], [ 108.230245, 21.491259 ], [ 108.210535, 21.505737 ], [ 108.249955, 21.561406 ], [ 108.241332, 21.599805 ], [ 108.205608, 21.597579 ], [ 108.156332, 21.55083 ], [ 108.193905, 21.519656 ], [ 108.108289, 21.508521 ], [ 108.041768, 21.544151 ], [ 107.958, 21.534131 ], [ 107.929051, 21.585893 ], [ 107.893942, 21.596466 ], [ 107.892095, 21.622617 ], [ 107.863761, 21.650988 ], [ 107.837892, 21.640419 ], [ 107.807711, 21.655438 ], [ 107.712856, 21.616497 ], [ 107.603219, 21.597579 ], [ 107.584741, 21.614828 ], [ 107.547168, 21.58645 ], [ 107.486806, 21.59591 ], [ 107.500973, 21.613715 ], [ 107.477567, 21.659888 ], [ 107.431372, 21.642088 ], [ 107.388256, 21.594241 ], [ 107.363619, 21.602031 ], [ 107.356843, 21.667674 ], [ 107.310648, 21.733844 ], [ 107.271844, 21.727173 ], [ 107.242279, 21.703265 ], [ 107.199163, 21.718833 ], [ 107.194851, 21.736624 ], [ 107.148656, 21.758858 ], [ 107.093837, 21.803317 ], [ 107.018077, 21.81943 ], [ 107.018693, 21.859427 ], [ 107.058729, 21.887196 ], [ 107.05996, 21.914959 ], [ 106.999598, 21.947714 ], [ 106.974345, 21.923288 ], [ 106.935541, 21.933836 ], [ 106.926302, 21.967695 ], [ 106.859164, 21.986009 ], [ 106.802498, 21.98157 ], [ 106.790179, 22.004876 ], [ 106.73844, 22.008205 ], [ 106.698404, 21.959925 ], [ 106.683006, 21.999882 ], [ 106.706411, 22.021521 ], [ 106.71565, 22.089745 ], [ 106.691629, 22.13521 ], [ 106.706411, 22.160707 ], [ 106.673151, 22.182322 ], [ 106.7021, 22.207257 ], [ 106.688549, 22.260438 ], [ 106.670071, 22.283144 ], [ 106.663296, 22.33076 ], [ 106.562897, 22.345706 ], [ 106.588767, 22.374486 ], [ 106.560434, 22.455813 ], [ 106.588151, 22.472958 ], [ 106.585071, 22.517192 ], [ 106.61402, 22.602303 ], [ 106.652825, 22.57357 ], [ 106.711955, 22.575228 ], [ 106.756302, 22.68957 ], [ 106.780324, 22.708894 ], [ 106.768621, 22.739254 ], [ 106.820976, 22.768504 ], [ 106.838838, 22.803265 ], [ 106.813585, 22.817608 ], [ 106.808657, 22.817608 ], [ 106.804346, 22.816505 ], [ 106.801882, 22.815401 ], [ 106.776012, 22.813746 ], [ 106.709491, 22.866142 ], [ 106.716882, 22.881582 ], [ 106.674998, 22.891506 ], [ 106.657136, 22.863385 ], [ 106.631267, 22.88103 ], [ 106.606013, 22.925684 ], [ 106.562282, 22.923479 ], [ 106.525941, 22.946628 ], [ 106.504383, 22.91025 ], [ 106.41384, 22.877171 ], [ 106.37134, 22.878273 ], [ 106.366413, 22.857871 ], [ 106.286957, 22.867245 ], [ 106.258007, 22.889852 ], [ 106.270326, 22.907494 ], [ 106.206885, 22.978588 ], [ 106.153914, 22.988505 ], [ 106.106486, 22.980792 ], [ 106.08616, 22.996218 ], [ 106.019639, 22.990709 ], [ 105.994385, 22.93781 ], [ 105.959277, 22.948832 ], [ 105.893987, 22.936707 ], [ 105.879205, 22.916865 ], [ 105.839169, 22.987403 ], [ 105.805908, 22.994565 ], [ 105.780039, 23.022659 ], [ 105.74185, 23.030921 ], [ 105.724604, 23.06231 ], [ 105.648844, 23.078828 ], [ 105.625438, 23.064513 ], [ 105.574931, 23.066165 ], [ 105.558916, 23.177893 ], [ 105.542902, 23.184495 ], [ 105.526272, 23.234548 ], [ 105.560148, 23.257093 ], [ 105.593409, 23.312614 ], [ 105.649459, 23.346136 ], [ 105.699966, 23.327453 ], [ 105.694423, 23.363168 ], [ 105.637757, 23.404366 ], [ 105.699966, 23.40162 ], [ 105.758481, 23.459826 ], [ 105.805908, 23.467512 ], [ 105.815763, 23.507031 ], [ 105.852103, 23.526786 ], [ 105.89214, 23.52514 ], [ 105.913081, 23.499348 ], [ 105.935871, 23.508678 ], [ 105.986378, 23.489469 ], [ 105.999929, 23.447748 ], [ 106.039965, 23.484529 ], [ 106.071994, 23.495506 ], [ 106.08616, 23.524043 ], [ 106.141595, 23.569579 ], [ 106.120653, 23.605229 ], [ 106.149602, 23.665538 ], [ 106.157609, 23.724175 ], [ 106.136667, 23.795381 ], [ 106.192102, 23.824947 ], [ 106.173008, 23.861622 ], [ 106.192718, 23.879135 ], [ 106.157609, 23.891174 ], [ 106.128044, 23.956819 ], [ 106.091088, 23.998924 ], [ 106.096631, 24.018058 ], [ 106.053516, 24.051399 ], [ 106.04982, 24.089649 ], [ 106.011632, 24.099482 ], [ 105.998081, 24.120786 ], [ 105.963589, 24.110954 ], [ 105.919241, 24.122425 ], [ 105.901995, 24.099482 ], [ 105.908154, 24.069432 ], [ 105.89214, 24.040468 ], [ 105.859495, 24.056864 ], [ 105.841633, 24.03063 ], [ 105.796669, 24.023524 ], [ 105.802212, 24.051945 ], [ 105.765256, 24.073804 ], [ 105.739387, 24.059596 ], [ 105.704278, 24.0667 ], [ 105.649459, 24.032816 ], [ 105.628518, 24.126794 ], [ 105.594641, 24.137718 ], [ 105.533663, 24.130071 ], [ 105.493011, 24.016965 ], [ 105.406163, 24.043748 ], [ 105.395692, 24.065607 ], [ 105.334099, 24.094566 ], [ 105.320548, 24.116416 ], [ 105.273121, 24.092927 ], [ 105.292831, 24.074896 ], [ 105.260186, 24.061236 ], [ 105.20044, 24.105491 ], [ 105.182577, 24.167205 ], [ 105.229389, 24.165567 ], [ 105.24294, 24.208695 ], [ 105.215222, 24.214699 ], [ 105.164715, 24.288362 ], [ 105.196744, 24.326541 ], [ 105.188121, 24.347261 ], [ 105.138846, 24.376701 ], [ 105.111744, 24.37234 ], [ 105.106817, 24.414853 ], [ 105.042759, 24.442097 ], [ 104.979933, 24.412673 ], [ 104.930042, 24.411038 ], [ 104.914028, 24.426296 ], [ 104.83642, 24.446456 ], [ 104.784681, 24.443732 ], [ 104.765587, 24.45953 ], [ 104.74834, 24.435559 ], [ 104.715695, 24.441552 ], [ 104.703377, 24.419757 ], [ 104.721239, 24.340173 ], [ 104.70892, 24.321087 ], [ 104.641783, 24.367979 ], [ 104.610986, 24.377246 ], [ 104.63008, 24.397958 ], [ 104.616529, 24.421937 ], [ 104.575877, 24.424661 ], [ 104.550008, 24.518894 ], [ 104.520443, 24.535228 ], [ 104.489646, 24.653313 ], [ 104.529682, 24.731611 ], [ 104.595587, 24.709323 ], [ 104.628848, 24.660927 ], [ 104.703377, 24.645698 ], [ 104.729246, 24.617953 ], [ 104.771746, 24.659839 ], [ 104.841963, 24.676155 ], [ 104.865985, 24.730524 ], [ 104.899245, 24.752809 ], [ 105.03352, 24.787586 ], [ 105.026745, 24.815836 ], [ 105.039064, 24.872859 ], [ 105.077868, 24.918459 ], [ 105.082179, 24.915745 ], [ 105.096346, 24.928228 ], [ 105.09573, 24.92877 ], [ 105.131454, 24.959701 ], [ 105.157324, 24.958616 ], [ 105.178266, 24.985199 ], [ 105.212758, 24.995505 ], [ 105.251563, 24.967296 ], [ 105.267577, 24.929313 ], [ 105.334099, 24.9266 ], [ 105.365511, 24.943423 ], [ 105.428337, 24.930941 ], [ 105.457286, 24.87123 ], [ 105.493011, 24.833217 ], [ 105.497322, 24.809318 ], [ 105.573083, 24.797366 ], [ 105.607576, 24.803885 ], [ 105.617431, 24.78161 ], [ 105.70551, 24.768569 ], [ 105.767104, 24.719109 ], [ 105.827466, 24.702799 ], [ 105.863806, 24.729437 ], [ 105.942031, 24.725088 ], [ 105.961741, 24.677786 ], [ 106.024566, 24.633186 ], [ 106.047356, 24.684312 ], [ 106.113878, 24.714216 ], [ 106.150218, 24.762591 ], [ 106.173008, 24.760417 ], [ 106.206269, 24.851139 ], [ 106.197645, 24.885889 ], [ 106.145291, 24.954275 ], [ 106.191486, 24.95319 ], [ 106.215508, 24.981944 ], [ 106.253696, 24.971094 ], [ 106.304819, 24.973807 ], [ 106.332536, 24.988454 ], [ 106.442173, 25.019369 ], [ 106.450181, 25.033468 ], [ 106.519782, 25.054072 ], [ 106.551195, 25.082802 ], [ 106.590615, 25.08768 ], [ 106.63989, 25.132658 ], [ 106.644817, 25.164621 ], [ 106.691013, 25.179245 ], [ 106.732281, 25.162454 ], [ 106.764926, 25.183036 ], [ 106.787715, 25.17112 ], [ 106.853005, 25.186827 ], [ 106.888113, 25.181953 ], [ 106.904128, 25.231768 ], [ 106.933077, 25.250714 ], [ 106.975577, 25.232851 ], [ 107.013765, 25.275611 ], [ 107.012533, 25.352973 ], [ 106.987896, 25.358922 ], [ 106.963874, 25.437852 ], [ 106.996519, 25.442716 ], [ 107.015613, 25.495666 ], [ 107.066736, 25.50917 ], [ 107.064272, 25.559391 ], [ 107.185612, 25.578825 ], [ 107.205322, 25.607971 ], [ 107.228728, 25.604733 ], [ 107.232423, 25.556691 ], [ 107.263836, 25.543193 ], [ 107.336517, 25.461089 ], [ 107.308184, 25.432988 ], [ 107.318039, 25.401637 ], [ 107.358691, 25.393528 ], [ 107.375937, 25.411908 ], [ 107.420901, 25.392987 ], [ 107.409198, 25.347024 ], [ 107.432604, 25.289139 ], [ 107.481263, 25.299961 ], [ 107.489886, 25.276693 ], [ 107.472024, 25.213902 ], [ 107.512676, 25.209029 ], [ 107.576734, 25.256668 ], [ 107.599523, 25.250714 ], [ 107.632168, 25.310241 ], [ 107.659885, 25.316192 ], [ 107.661733, 25.258833 ], [ 107.696226, 25.219858 ], [ 107.700537, 25.194408 ], [ 107.741805, 25.24043 ], [ 107.762131, 25.229061 ], [ 107.760283, 25.188451 ], [ 107.789233, 25.15487 ], [ 107.762747, 25.125073 ], [ 107.839124, 25.115861 ], [ 107.872384, 25.141327 ], [ 107.928435, 25.155954 ], [ 108.001732, 25.196574 ], [ 108.080572, 25.193867 ], [ 108.115065, 25.210112 ], [ 108.143398, 25.269658 ], [ 108.152021, 25.324306 ], [ 108.142782, 25.390825 ], [ 108.193289, 25.405421 ], [ 108.162492, 25.444878 ], [ 108.192673, 25.458928 ], [ 108.251803, 25.430286 ], [ 108.241332, 25.46217 ], [ 108.280752, 25.48 ], [ 108.308469, 25.525912 ], [ 108.348506, 25.536173 ], [ 108.359592, 25.513491 ], [ 108.400244, 25.491344 ], [ 108.418723, 25.443257 ], [ 108.471693, 25.458928 ], [ 108.585642, 25.365952 ], [ 108.589338, 25.335125 ], [ 108.625062, 25.308076 ], [ 108.62999, 25.335666 ], [ 108.600425, 25.432448 ], [ 108.6072, 25.491885 ], [ 108.634917, 25.520512 ], [ 108.68912, 25.533473 ], [ 108.658323, 25.550212 ], [ 108.660787, 25.584763 ], [ 108.68604, 25.587462 ], [ 108.68912, 25.623081 ], [ 108.724844, 25.634952 ], [ 108.783975, 25.628477 ], [ 108.799989, 25.576666 ], [ 108.781511, 25.554531 ], [ 108.814772, 25.526992 ], [ 108.826474, 25.550212 ], [ 108.890532, 25.556151 ], [ 108.8893, 25.543193 ], [ 108.949046, 25.557231 ], [ 109.024807, 25.51241 ], [ 109.088249, 25.550752 ], [ 109.051908, 25.566949 ], [ 109.030966, 25.629556 ], [ 109.075314, 25.693749 ], [ 109.07901, 25.72071 ], [ 109.043285, 25.738502 ], [ 109.007561, 25.734728 ], [ 108.953974, 25.686738 ], [ 108.953974, 25.686738 ], [ 108.900387, 25.682423 ], [ 108.896076, 25.71424 ], [ 108.940423, 25.740119 ], [ 108.963829, 25.732572 ], [ 108.999553, 25.765453 ], [ 108.989698, 25.778926 ], [ 109.048213, 25.790781 ], [ 109.077778, 25.776771 ], [ 109.095024, 25.80533 ], [ 109.143683, 25.795092 ], [ 109.13198, 25.762758 ], [ 109.147995, 25.741736 ], [ 109.206509, 25.788087 ], [ 109.207125, 25.740119 ], [ 109.296436, 25.71424 ], [ 109.340168, 25.731493 ], [ 109.327849, 25.76168 ], [ 109.339552, 25.83442 ], [ 109.359262, 25.836036 ], [ 109.396834, 25.900117 ], [ 109.435022, 25.93349 ], [ 109.408537, 25.967392 ], [ 109.462124, 25.995367 ], [ 109.48245, 26.029788 ], [ 109.513247, 25.998056 ], [ 109.560058, 26.021184 ], [ 109.588391, 26.019571 ], [ 109.635203, 26.047533 ], [ 109.649369, 26.016882 ], [ 109.730057, 25.989988 ], [ 109.710963, 25.954478 ], [ 109.693717, 25.959321 ], [ 109.67955, 25.921649 ], [ 109.685094, 25.880197 ], [ 109.768246, 25.890427 ], [ 109.779333, 25.866196 ], [ 109.811361, 25.877504 ], [ 109.826144, 25.911422 ], [ 109.806434, 25.973848 ], [ 109.782412, 25.996981 ], [ 109.814441, 26.041081 ], [ 109.864332, 26.027637 ], [ 109.898825, 26.095377 ], [ 109.904368, 26.135679 ], [ 109.970274, 26.195301 ], [ 110.03002, 26.166299 ], [ 110.099005, 26.168985 ], [ 110.100853, 26.132455 ], [ 110.065128, 26.050221 ], [ 110.100853, 26.020108 ], [ 110.168606, 26.028713 ], [ 110.181541, 26.060437 ], [ 110.24991, 26.010965 ], [ 110.257301, 25.961473 ], [ 110.325671, 25.975462 ], [ 110.373098, 26.088927 ], [ 110.437772, 26.153945 ], [ 110.477808, 26.179727 ], [ 110.495054, 26.166299 ], [ 110.546793, 26.233421 ], [ 110.552952, 26.283335 ], [ 110.584365, 26.296749 ], [ 110.612083, 26.333764 ], [ 110.643495, 26.308552 ], [ 110.673676, 26.317135 ], [ 110.711249, 26.29192 ], [ 110.742046, 26.313917 ], [ 110.73835, 26.271529 ], [ 110.759292, 26.248451 ], [ 110.836284, 26.255966 ], [ 110.939762, 26.286554 ], [ 110.926212, 26.320354 ], [ 110.944074, 26.326791 ], [ 110.94469, 26.373447 ], [ 110.974255, 26.385778 ], [ 111.008747, 26.35897 ], [ 111.008132, 26.336982 ], [ 111.090667, 26.308016 ], [ 111.208928, 26.30426 ], [ 111.204616, 26.276359 ], [ 111.228022, 26.261333 ], [ 111.277913, 26.272066 ], [ 111.293311, 26.222148 ], [ 111.271754, 26.217316 ], [ 111.274833, 26.183486 ], [ 111.258203, 26.151796 ], [ 111.26621, 26.095914 ], [ 111.244652, 26.078177 ], [ 111.267442, 26.058824 ], [ 111.235413, 26.048071 ], [ 111.189834, 25.953402 ], [ 111.230486, 25.916267 ], [ 111.251428, 25.864581 ], [ 111.29208, 25.854349 ], [ 111.297007, 25.874274 ], [ 111.346282, 25.906577 ], [ 111.376463, 25.906039 ], [ 111.383239, 25.881812 ], [ 111.460231, 25.885042 ], [ 111.4861, 25.859196 ], [ 111.43313, 25.84627 ], [ 111.442369, 25.77192 ], [ 111.399869, 25.744431 ], [ 111.30871, 25.720171 ], [ 111.309942, 25.645203 ], [ 111.343202, 25.602574 ], [ 111.324724, 25.564249 ], [ 111.32842, 25.521592 ], [ 111.300087, 25.44812 ], [ 111.26313, 25.42326 ], [ 111.257587, 25.395691 ], [ 111.210776, 25.363248 ], [ 111.184906, 25.367034 ], [ 111.138711, 25.303748 ], [ 111.103602, 25.285351 ], [ 111.112841, 25.21715 ], [ 110.998892, 25.161371 ], [ 110.98411, 25.101772 ], [ 110.951465, 25.04377 ], [ 110.968711, 24.975434 ], [ 111.009363, 24.921172 ], [ 111.100522, 24.945593 ], [ 111.101754, 25.035095 ], [ 111.139943, 25.042144 ], [ 111.200921, 25.074672 ], [ 111.221862, 25.106649 ], [ 111.274833, 25.151078 ], [ 111.321645, 25.105023 ], [ 111.36784, 25.108817 ], [ 111.375231, 25.128324 ], [ 111.435593, 25.093642 ], [ 111.416499, 25.047566 ], [ 111.467622, 25.02208 ], [ 111.460231, 24.992793 ], [ 111.43313, 24.979774 ], [ 111.434977, 24.951562 ], [ 111.470086, 24.92877 ], [ 111.447296, 24.892947 ], [ 111.449144, 24.857113 ], [ 111.479325, 24.797366 ], [ 111.461463, 24.728894 ], [ 111.431282, 24.687574 ], [ 111.451608, 24.665822 ], [ 111.499035, 24.667997 ], [ 111.526752, 24.637538 ], [ 111.570484, 24.64461 ], [ 111.588962, 24.690837 ], [ 111.641933, 24.684856 ], [ 111.637621, 24.715303 ], [ 111.666571, 24.760961 ], [ 111.708455, 24.788673 ], [ 111.783599, 24.785957 ], [ 111.814396, 24.770199 ], [ 111.868599, 24.771829 ], [ 111.875374, 24.756613 ], [ 111.929577, 24.75607 ], [ 111.951135, 24.769655 ], [ 112.024431, 24.740308 ] ] ], [ [ [ 105.096346, 24.928228 ], [ 105.082179, 24.915745 ], [ 105.077868, 24.918459 ], [ 105.09573, 24.92877 ], [ 105.096346, 24.928228 ] ] ], [ [ [ 109.088249, 21.014934 ], [ 109.088865, 21.031134 ], [ 109.09256, 21.057386 ], [ 109.138756, 21.067439 ], [ 109.144299, 21.041189 ], [ 109.117814, 21.017727 ], [ 109.11227, 21.02499 ], [ 109.088249, 21.014934 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"460000\", \"name\": \"海南省\", \"center\": [ 110.33119, 20.031971 ], \"centroid\": [ 109.754859, 19.189767 ], \"childrenNum\": 19, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 20, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 110.106396, 20.026812 ], [ 110.144585, 20.074598 ], [ 110.243135, 20.077408 ], [ 110.28933, 20.056047 ], [ 110.318279, 20.108882 ], [ 110.387265, 20.113378 ], [ 110.495054, 20.077408 ], [ 110.526467, 20.07516 ], [ 110.562191, 20.110006 ], [ 110.655814, 20.134169 ], [ 110.687843, 20.163947 ], [ 110.717408, 20.148778 ], [ 110.744509, 20.074036 ], [ 110.778386, 20.068415 ], [ 110.808567, 20.035808 ], [ 110.871393, 20.01163 ], [ 110.940994, 20.028499 ], [ 110.966248, 20.018377 ], [ 111.013675, 19.850159 ], [ 111.043856, 19.763448 ], [ 111.071573, 19.628784 ], [ 111.061718, 19.612436 ], [ 111.008747, 19.60398 ], [ 110.920668, 19.552668 ], [ 110.888023, 19.518827 ], [ 110.844292, 19.449996 ], [ 110.787009, 19.399765 ], [ 110.729727, 19.378878 ], [ 110.706321, 19.320153 ], [ 110.676756, 19.286264 ], [ 110.619474, 19.152334 ], [ 110.585597, 18.88075 ], [ 110.590525, 18.838841 ], [ 110.578206, 18.784458 ], [ 110.499366, 18.751592 ], [ 110.499366, 18.651824 ], [ 110.367555, 18.631977 ], [ 110.329366, 18.642185 ], [ 110.246215, 18.609859 ], [ 110.214186, 18.578662 ], [ 110.116867, 18.506602 ], [ 110.090382, 18.399309 ], [ 110.070672, 18.376025 ], [ 110.022629, 18.360121 ], [ 109.919767, 18.375457 ], [ 109.785492, 18.339672 ], [ 109.749767, 18.193618 ], [ 109.726362, 18.177698 ], [ 109.661688, 18.175424 ], [ 109.584696, 18.143579 ], [ 109.527413, 18.169169 ], [ 109.467051, 18.173718 ], [ 109.441182, 18.199303 ], [ 109.355566, 18.215221 ], [ 109.287813, 18.264671 ], [ 109.17448, 18.260125 ], [ 109.138756, 18.268081 ], [ 109.108575, 18.323766 ], [ 109.006329, 18.323198 ], [ 108.944735, 18.314107 ], [ 108.905315, 18.389087 ], [ 108.881293, 18.416344 ], [ 108.776583, 18.441894 ], [ 108.68912, 18.447571 ], [ 108.644772, 18.486738 ], [ 108.641077, 18.565614 ], [ 108.663866, 18.67337 ], [ 108.65278, 18.740258 ], [ 108.593033, 18.809386 ], [ 108.595497, 18.872256 ], [ 108.637997, 18.924346 ], [ 108.630606, 19.003017 ], [ 108.598577, 19.055633 ], [ 108.591186, 19.141592 ], [ 108.609048, 19.276661 ], [ 108.644772, 19.349518 ], [ 108.694047, 19.387346 ], [ 108.765496, 19.400894 ], [ 108.806148, 19.450561 ], [ 108.855424, 19.469182 ], [ 108.92872, 19.524468 ], [ 108.993394, 19.587065 ], [ 109.048829, 19.619764 ], [ 109.093792, 19.68965 ], [ 109.147379, 19.704863 ], [ 109.169553, 19.736411 ], [ 109.159082, 19.79048 ], [ 109.231147, 19.863105 ], [ 109.255784, 19.867045 ], [ 109.25948, 19.898561 ], [ 109.300748, 19.917693 ], [ 109.349407, 19.898561 ], [ 109.411001, 19.895184 ], [ 109.498464, 19.873236 ], [ 109.526797, 19.943573 ], [ 109.585312, 19.98801 ], [ 109.657993, 20.01163 ], [ 109.712195, 20.017253 ], [ 109.76147, 19.981261 ], [ 109.814441, 19.993072 ], [ 109.855093, 19.984073 ], [ 109.898825, 19.994196 ], [ 109.965346, 19.993634 ], [ 109.997375, 19.980136 ], [ 110.042339, 19.991384 ], [ 110.106396, 20.026812 ] ] ], [ [ [ 112.203848648399557, 3.87222818584552 ], [ 112.219068, 3.908969 ], [ 112.260336, 3.917925 ], [ 112.292871092971765, 3.856691249764521 ], [ 112.239961526858096, 3.836535224578359 ], [ 112.203848648399557, 3.87222818584552 ] ] ], [ [ [ 113.266165, 8.125929 ], [ 113.293882, 8.176284 ], [ 113.353628, 8.237887 ], [ 113.354244, 8.304217 ], [ 113.386273, 8.289412 ], [ 113.386273, 8.238479 ], [ 113.349933, 8.172137 ], [ 113.288955, 8.119412 ], [ 113.343157, 8.193463 ], [ 113.311129, 8.177469 ], [ 113.266165, 8.125929 ] ] ], [ [ [ 111.463311, 17.077491 ], [ 111.452224, 17.092936 ], [ 111.542151, 17.11982 ], [ 111.559397, 17.087788 ], [ 111.4861, 17.058039 ], [ 111.536607, 17.104949 ], [ 111.463311, 17.077491 ] ] ], [ [ [ 111.99733, 3.848065 ], [ 112.007327402834477, 3.874747688993791 ], [ 112.033782185891312, 3.88524561877825 ], [ 112.057717465799882, 3.882306198438601 ], [ 112.073707, 3.865979 ], [ 112.064467, 3.830152 ], [ 112.040500860953372, 3.814279613435307 ], [ 112.015192, 3.823583 ], [ 111.99733, 3.848065 ] ] ], [ [ [ 117.69258625690604, 15.174719308985452 ], [ 117.715095, 15.222561 ], [ 117.72659954940768, 15.237286970500829 ], [ 117.748355, 15.230068 ], [ 117.782848, 15.187333 ], [ 117.839977191079839, 15.157922621330318 ], [ 117.845856031759141, 15.138186513335535 ], [ 117.841656859845358, 15.124749163211428 ], [ 117.832838598826413, 15.152043780651022 ], [ 117.777409529564466, 15.172619723028561 ], [ 117.74466, 15.217941 ], [ 117.720638, 15.195418 ], [ 117.72495, 15.131302 ], [ 117.827812, 15.111659 ], [ 117.826959758147112, 15.099974048920105 ], [ 117.726798, 15.105303 ], [ 117.70980286175255, 15.108372392747672 ], [ 117.69258625690604, 15.174719308985452 ] ] ], [ [ [ 112.241858, 3.942404 ], [ 112.243320864389119, 3.968809139862543 ], [ 112.254177, 3.97942 ], [ 112.270195564637334, 3.986445661900434 ], [ 112.290771507014881, 3.980566821221137 ], [ 112.292365, 3.946583 ], [ 112.265156558340792, 3.932696261404004 ], [ 112.241858, 3.942404 ] ] ], [ [ [ 111.734324, 16.19732 ], [ 111.790374, 16.220307 ], [ 111.789758, 16.250186 ], [ 111.716462, 16.249036 ], [ 111.782367, 16.273741 ], [ 111.813164, 16.261676 ], [ 111.81686, 16.224329 ], [ 111.779903, 16.19732 ], [ 111.734324, 16.19732 ] ] ], [ [ [ 113.896887, 7.607204 ], [ 113.921524, 7.639235 ], [ 114.029314, 7.670078 ], [ 114.095219, 7.721082 ], [ 114.211632, 7.786904 ], [ 114.268298, 7.870501 ], [ 114.414892, 7.952895 ], [ 114.47279, 7.968898 ], [ 114.511594, 7.966527 ], [ 114.540543, 7.945783 ], [ 114.555326, 7.891249 ], [ 114.540543, 7.862201 ], [ 114.464167, 7.814771 ], [ 114.419819, 7.765557 ], [ 114.407501, 7.683126 ], [ 114.368696, 7.638642 ], [ 114.289856, 7.617288 ], [ 114.157429, 7.561525 ], [ 114.058879, 7.537794 ], [ 113.98743, 7.536014 ], [ 113.919677, 7.566865 ], [ 113.896887, 7.607204 ] ] ], [ [ [ 111.649324, 16.255931 ], [ 111.681353, 16.262251 ], [ 111.598817, 16.198469 ], [ 111.606825, 16.177779 ], [ 111.690592, 16.211112 ], [ 111.611136, 16.156511 ], [ 111.56802, 16.162834 ], [ 111.577875, 16.208239 ], [ 111.649324, 16.255931 ] ] ], [ [ [ 113.976959, 8.872888 ], [ 113.989894, 8.878801 ], [ 114.041017, 8.843913 ], [ 114.060111, 8.816119 ], [ 114.035473, 8.783591 ], [ 114.013299, 8.836817 ], [ 113.976959, 8.872888 ] ] ], [ [ [ 113.956017, 8.840365 ], [ 113.977575, 8.841548 ], [ 114.012068, 8.798376 ], [ 113.975111, 8.793054 ], [ 113.956017, 8.840365 ] ] ], [ [ [ 112.216604, 8.866383 ], [ 112.180264, 8.862244 ], [ 112.206133, 8.88767 ], [ 112.216604, 8.866383 ] ] ], [ [ [ 111.739251, 16.452898 ], [ 111.765737, 16.495366 ], [ 111.759577, 16.545857 ], [ 111.786679, 16.520039 ], [ 111.766969, 16.470116 ], [ 111.739251, 16.452898 ] ] ], [ [ [ 111.97454, 16.323715 ], [ 112.002874, 16.350707 ], [ 112.047221, 16.360469 ], [ 112.074938, 16.349558 ], [ 112.07617, 16.323715 ], [ 112.002258, 16.306484 ], [ 111.97454, 16.323715 ] ] ], [ [ [ 113.792177, 7.373422 ], [ 113.829134, 7.383511 ], [ 113.828518, 7.362145 ], [ 113.792177, 7.373422 ] ] ], [ [ [ 114.194386, 8.764664 ], [ 114.222103, 8.784773 ], [ 114.248588, 8.724442 ], [ 114.201161, 8.727991 ], [ 114.194386, 8.764664 ] ] ], [ [ [ 112.232619, 16.996239 ], [ 112.266496, 16.993949 ], [ 112.292981, 16.96762 ], [ 112.222764, 16.960751 ], [ 112.207981, 16.987081 ], [ 112.232619, 16.996239 ] ] ], [ [ [ 114.617536, 9.965688 ], [ 114.685905, 9.979245 ], [ 114.672355, 9.927963 ], [ 114.642173, 9.917351 ], [ 114.617536, 9.965688 ] ] ], [ [ [ 115.837712, 9.709775 ], [ 115.870972, 9.778785 ], [ 115.901153, 9.795888 ], [ 115.925791, 9.781734 ], [ 115.901153, 9.67084 ], [ 115.867277, 9.650191 ], [ 115.861117, 9.694438 ], [ 115.837712, 9.709775 ] ] ], [ [ [ 114.689601, 10.345648 ], [ 114.717318, 10.380381 ], [ 114.747499, 10.37214 ], [ 114.725941, 10.319154 ], [ 114.702536, 10.312677 ], [ 114.689601, 10.345648 ] ] ], [ [ [ 113.769387, 7.636862 ], [ 113.831597, 7.644573 ], [ 113.814967, 7.603051 ], [ 113.773699, 7.601865 ], [ 113.769387, 7.636862 ] ] ], [ [ [ 109.463972, 7.344339 ], [ 109.536037, 7.448792 ], [ 109.653065, 7.559745 ], [ 109.72205, 7.575763 ], [ 109.816289, 7.572797 ], [ 109.904984, 7.55144 ], [ 109.948716, 7.522962 ], [ 109.938861, 7.504569 ], [ 109.791651, 7.524742 ], [ 109.709115, 7.511095 ], [ 109.654297, 7.479648 ], [ 109.571761, 7.373422 ], [ 109.513247, 7.320002 ], [ 109.463972, 7.315254 ], [ 109.463972, 7.344339 ] ] ], [ [ [ 116.273181, 8.879392 ], [ 116.305826, 8.917233 ], [ 116.332311, 8.901269 ], [ 116.294123, 8.858105 ], [ 116.273181, 8.879392 ] ] ], [ [ [ 112.476531, 16.001247 ], [ 112.448814, 16.005274 ], [ 112.462364, 16.043813 ], [ 112.588016, 16.070844 ], [ 112.612037, 16.039212 ], [ 112.570154, 16.011027 ], [ 112.476531, 16.001247 ] ] ], [ [ [ 112.537509, 8.846278 ], [ 112.598487, 8.859288 ], [ 112.639755, 8.818484 ], [ 112.57077, 8.815527 ], [ 112.537509, 8.846278 ] ] ], [ [ [ 114.469095, 10.836261 ], [ 114.55471, 10.900911 ], [ 114.587355, 10.909138 ], [ 114.593514, 10.856245 ], [ 114.565181, 10.836261 ], [ 114.513442, 10.848605 ], [ 114.475254, 10.814512 ], [ 114.469095, 10.836261 ] ] ], [ [ [ 112.409393, 16.294996 ], [ 112.509176, 16.317397 ], [ 112.536893, 16.312228 ], [ 112.531349, 16.285805 ], [ 112.475915, 16.288677 ], [ 112.411241, 16.2634 ], [ 112.383524, 16.265698 ], [ 112.409393, 16.294996 ] ] ], [ [ [ 112.349031, 16.912088 ], [ 112.30222, 16.963041 ], [ 112.334249, 16.962469 ], [ 112.360734, 16.925257 ], [ 112.349031, 16.912088 ] ] ], [ [ [ 111.500267, 16.45175 ], [ 111.538455, 16.461507 ], [ 111.545847, 16.43453 ], [ 111.49534, 16.4374 ], [ 111.500267, 16.45175 ] ] ], [ [ [ 115.500177, 9.897897 ], [ 115.518039, 9.933857 ], [ 115.581481, 9.917351 ], [ 115.585177, 9.896128 ], [ 115.54822, 9.869007 ], [ 115.500177, 9.897897 ] ] ], [ [ [ 116.48876, 10.395686 ], [ 116.526332, 10.426883 ], [ 116.542346, 10.41982 ], [ 116.514629, 10.34918 ], [ 116.637817, 10.365076 ], [ 116.644592, 10.335051 ], [ 116.566368, 10.304434 ], [ 116.511549, 10.297957 ], [ 116.467202, 10.309144 ], [ 116.461658, 10.34918 ], [ 116.48876, 10.395686 ] ] ], [ [ [ 114.669891, 8.210048 ], [ 114.726557, 8.21064 ], [ 114.74134, 8.189316 ], [ 114.691449, 8.18517 ], [ 114.669891, 8.210048 ] ] ], [ [ [ 114.507899, 8.120004 ], [ 114.595978, 8.15792 ], [ 114.624311, 8.149626 ], [ 114.595978, 8.120596 ], [ 114.530073, 8.103415 ], [ 114.507899, 8.120004 ] ] ], [ [ [ 115.16757, 8.386523 ], [ 115.202678, 8.395403 ], [ 115.299381, 8.370537 ], [ 115.315395, 8.356326 ], [ 115.285214, 8.314876 ], [ 115.235939, 8.321982 ], [ 115.18112, 8.345668 ], [ 115.16757, 8.386523 ] ] ], [ [ [ 113.895039, 8.00505 ], [ 113.940003, 8.018088 ], [ 113.969568, 7.974825 ], [ 113.9708, 7.944597 ], [ 113.904894, 7.963564 ], [ 113.895039, 8.00505 ] ] ], [ [ [ 115.436119, 9.393447 ], [ 115.456445, 9.417064 ], [ 115.469996, 9.3592 ], [ 115.450286, 9.345028 ], [ 115.436119, 9.393447 ] ] ], [ [ [ 113.638192, 8.976942 ], [ 113.644968, 8.989355 ], [ 113.719496, 9.020092 ], [ 113.730583, 9.004133 ], [ 113.654823, 8.962163 ], [ 113.638192, 8.976942 ] ] ], [ [ [ 116.457347, 9.174326 ], [ 116.500462, 9.164282 ], [ 116.477057, 9.137103 ], [ 116.457347, 9.174326 ] ] ], [ [ [ 114.910723, 10.863298 ], [ 114.934129, 10.902674 ], [ 114.959998, 10.902087 ], [ 114.931049, 10.841551 ], [ 114.910723, 10.863298 ] ] ], [ [ [ 113.939387, 8.875253 ], [ 113.916597, 8.837999 ], [ 113.893807, 8.862836 ], [ 113.912285, 8.888853 ], [ 113.939387, 8.875253 ] ] ], [ [ [ 114.696992, 11.004322 ], [ 114.710543, 11.039567 ], [ 114.766593, 11.110045 ], [ 114.799854, 11.10476 ], [ 114.793079, 11.07657 ], [ 114.710543, 11.001972 ], [ 114.696992, 11.004322 ] ] ], [ [ [ 111.572948, 16.470116 ], [ 111.592658, 16.490775 ], [ 111.614216, 16.44027 ], [ 111.578491, 16.447158 ], [ 111.572948, 16.470116 ] ] ], [ [ [ 114.62, 11.432264 ], [ 114.621232, 11.518479 ], [ 114.661884, 11.522584 ], [ 114.652644, 11.436957 ], [ 114.62, 11.432264 ] ] ], [ [ [ 109.936397, 7.848566 ], [ 109.953027, 7.888878 ], [ 110.0331, 7.944597 ], [ 110.078063, 7.949339 ], [ 110.082991, 7.896584 ], [ 110.050346, 7.846194 ], [ 109.988136, 7.8124 ], [ 109.936397, 7.823665 ], [ 109.936397, 7.848566 ] ] ], [ [ [ 116.727128, 11.501473 ], [ 116.738215, 11.514961 ], [ 116.772092, 11.445755 ], [ 116.765316, 11.430504 ], [ 116.727128, 11.501473 ] ] ], [ [ [ 111.761425, 16.061642 ], [ 111.829795, 16.070844 ], [ 111.828563, 16.049565 ], [ 111.791606, 16.028859 ], [ 111.761425, 16.061642 ] ] ], [ [ [ 113.845764, 10.018733 ], [ 113.856851, 10.12185 ], [ 113.872249, 10.123029 ], [ 113.865474, 10.00341 ], [ 113.845764, 10.018733 ] ] ], [ [ [ 111.690592, 16.587731 ], [ 111.717078, 16.59404 ], [ 111.724469, 16.560198 ], [ 111.690592, 16.587731 ] ] ], [ [ [ 112.507328, 16.466098 ], [ 112.499321, 16.493645 ], [ 112.575081, 16.537251 ], [ 112.586784, 16.525777 ], [ 112.507328, 16.466098 ] ] ], [ [ [ 114.791847, 8.160882 ], [ 114.818332, 8.141332 ], [ 114.812173, 8.110524 ], [ 114.777064, 8.114079 ], [ 114.791847, 8.160882 ] ] ], [ [ [ 116.557129, 9.745167 ], [ 116.593469, 9.723932 ], [ 116.566368, 9.718623 ], [ 116.557129, 9.745167 ] ] ], [ [ [ 116.832454, 10.476908 ], [ 116.868794, 10.495739 ], [ 116.855243, 10.468669 ], [ 116.832454, 10.476908 ] ] ], [ [ [ 114.703151, 16.170307 ], [ 114.704383, 16.199044 ], [ 114.802934, 16.215135 ], [ 114.816484, 16.198469 ], [ 114.703151, 16.170307 ] ] ], [ [ [ 115.28275, 10.191951 ], [ 115.28891, 10.211388 ], [ 115.333257, 10.200198 ], [ 115.288294, 10.172513 ], [ 115.28275, 10.191951 ] ] ], [ [ [ 115.97753, 9.321997 ], [ 115.999088, 9.293649 ], [ 115.976298, 9.268252 ], [ 115.943037, 9.269433 ], [ 115.926407, 9.311366 ], [ 115.97753, 9.321997 ] ] ], [ [ [ 113.660366, 9.231039 ], [ 113.697323, 9.225722 ], [ 113.676997, 9.202683 ], [ 113.660366, 9.231039 ] ] ], [ [ [ 114.665579, 7.590001 ], [ 114.703767, 7.614915 ], [ 114.72163, 7.59178 ], [ 114.671739, 7.563898 ], [ 114.665579, 7.590001 ] ] ], [ [ [ 117.770529, 10.773361 ], [ 117.775457, 10.809222 ], [ 117.801942, 10.839788 ], [ 117.831507, 10.838612 ], [ 117.835819, 10.803931 ], [ 117.798862, 10.753371 ], [ 117.770529, 10.773361 ] ] ], [ [ [ 114.242429, 10.242014 ], [ 114.265219, 10.275581 ], [ 114.312646, 10.300901 ], [ 114.326197, 10.284414 ], [ 114.263371, 10.239658 ], [ 114.242429, 10.242014 ] ] ], [ [ [ 114.688985, 11.469217 ], [ 114.720398, 11.49209 ], [ 114.737644, 11.463938 ], [ 114.722246, 11.429331 ], [ 114.688985, 11.469217 ] ] ], [ [ [ 116.638433, 10.503977 ], [ 116.699411, 10.517511 ], [ 116.70865, 10.492797 ], [ 116.653215, 10.491031 ], [ 116.638433, 10.503977 ] ] ], [ [ [ 110.459946, 8.116449 ], [ 110.461793, 8.128298 ], [ 110.568351, 8.17273 ], [ 110.599764, 8.156735 ], [ 110.554184, 8.093935 ], [ 110.471032, 8.072012 ], [ 110.459946, 8.116449 ] ] ], [ [ [ 111.463311, 8.52504 ], [ 111.509506, 8.550489 ], [ 111.497187, 8.523857 ], [ 111.463311, 8.52504 ] ] ], [ [ [ 114.493116, 10.717504 ], [ 114.539312, 10.793349 ], [ 114.562717, 10.778064 ], [ 114.513442, 10.722208 ], [ 114.493116, 10.717504 ] ] ], [ [ [ 113.221817, 8.073789 ], [ 113.269861, 8.120004 ], [ 113.283411, 8.111117 ], [ 113.235984, 8.068456 ], [ 113.221817, 8.073789 ] ] ], [ [ [ 115.258113, 8.509652 ], [ 115.296301, 8.510836 ], [ 115.271048, 8.477098 ], [ 115.258113, 8.509652 ] ] ], [ [ [ 111.539071, 7.54432 ], [ 111.566788, 7.606017 ], [ 111.612368, 7.592374 ], [ 111.583419, 7.543134 ], [ 111.542767, 7.524742 ], [ 111.539071, 7.54432 ] ] ], [ [ [ 117.258068, 10.320331 ], [ 117.274698, 10.358011 ], [ 117.299952, 10.343293 ], [ 117.299336, 10.313855 ], [ 117.258068, 10.320331 ] ] ], [ [ [ 114.074893, 10.929118 ], [ 114.096451, 10.947921 ], [ 114.110002, 10.918541 ], [ 114.064422, 10.904437 ], [ 114.074893, 10.929118 ] ] ], [ [ [ 114.212864, 16.040937 ], [ 114.268914, 16.059342 ], [ 114.306487, 16.057616 ], [ 114.31203, 16.034611 ], [ 114.212864, 16.040937 ] ] ], [ [ [ 110.609003, 8.010976 ], [ 110.622553, 8.041199 ], [ 110.641648, 8.031125 ], [ 110.642879, 7.989049 ], [ 110.609003, 8.010976 ] ] ], [ [ [ 115.509416, 8.490712 ], [ 115.514344, 8.519122 ], [ 115.558691, 8.523265 ], [ 115.569162, 8.49012 ], [ 115.55438, 8.461115 ], [ 115.521735, 8.460523 ], [ 115.509416, 8.490712 ] ] ], [ [ [ 111.657947, 8.672974 ], [ 111.697368, 8.67889 ], [ 111.717694, 8.6499 ], [ 111.665955, 8.622683 ], [ 111.657947, 8.672974 ] ] ], [ [ [ 110.460561, 7.799948 ], [ 110.485199, 7.827815 ], [ 110.511684, 7.805878 ], [ 110.487663, 7.783346 ], [ 110.460561, 7.799948 ] ] ], [ [ [ 112.345952, 8.926101 ], [ 112.384756, 8.946793 ], [ 112.392763, 8.919598 ], [ 112.345952, 8.926101 ] ] ], [ [ [ 116.469665, 9.810041 ], [ 116.490607, 9.821246 ], [ 116.50847, 9.79117 ], [ 116.47952, 9.785272 ], [ 116.469665, 9.810041 ] ] ], [ [ [ 111.925265, 8.070827 ], [ 111.95483, 8.106377 ], [ 112.013344, 8.093342 ], [ 112.018888, 8.065494 ], [ 111.994866, 8.047125 ], [ 111.949287, 8.05068 ], [ 111.925265, 8.070827 ] ] ], [ [ [ 114.457392, 15.599305 ], [ 114.491884, 15.59354 ], [ 114.466631, 15.576823 ], [ 114.457392, 15.599305 ] ] ], [ [ [ 114.985252, 11.078332 ], [ 115.021592, 11.085967 ], [ 115.013585, 11.063062 ], [ 114.985252, 11.078332 ] ] ], [ [ [ 114.10569, 16.004124 ], [ 114.132176, 16.007575 ], [ 114.110618, 15.978235 ], [ 114.10569, 16.004124 ] ] ], [ [ [ 116.045283, 10.095338 ], [ 116.070537, 10.12892 ], [ 116.09579, 10.09357 ], [ 116.067457, 10.065876 ], [ 116.045283, 10.095338 ] ] ], [ [ [ 117.266691, 10.69163 ], [ 117.293176, 10.735144 ], [ 117.369553, 10.7422 ], [ 117.418212, 10.702803 ], [ 117.404661, 10.671047 ], [ 117.348611, 10.672811 ], [ 117.266691, 10.69163 ] ] ], [ [ [ 114.854057, 7.244611 ], [ 114.869455, 7.198895 ], [ 114.819564, 7.192957 ], [ 114.854057, 7.244611 ] ] ], [ [ [ 112.823305, 8.910729 ], [ 112.873196, 8.908364 ], [ 112.859645, 8.889444 ], [ 112.823305, 8.910729 ] ] ], [ [ [ 111.670266, 7.651098 ], [ 111.691208, 7.711593 ], [ 111.726317, 7.729977 ], [ 111.749722, 7.703884 ], [ 111.707223, 7.648725 ], [ 111.670266, 7.651098 ] ] ], [ [ [ 112.207981, 8.835634 ], [ 112.241242, 8.852783 ], [ 112.235699, 8.827355 ], [ 112.207981, 8.835634 ] ] ], [ [ [ 112.527654, 5.79444 ], [ 112.562146, 5.820637 ], [ 112.562762, 5.75931 ], [ 112.531965, 5.766455 ], [ 112.527654, 5.79444 ] ] ], [ [ [ 114.599058, 8.846278 ], [ 114.61692, 8.881166 ], [ 114.665579, 8.900087 ], [ 114.68221, 8.881166 ], [ 114.645869, 8.844504 ], [ 114.599058, 8.846278 ] ] ], [ [ [ 114.868223, 7.983715 ], [ 114.883006, 8.011569 ], [ 114.914419, 8.00742 ], [ 114.907643, 7.951117 ], [ 114.868223, 7.983715 ] ] ], [ [ [ 112.945261, 8.410204 ], [ 112.949572, 8.432701 ], [ 112.985297, 8.429149 ], [ 112.945261, 8.410204 ] ] ], [ [ [ 113.600004, 6.961929 ], [ 113.62341, 6.942325 ], [ 113.580294, 6.920344 ], [ 113.600004, 6.961929 ] ] ], [ [ [ 117.347995, 10.090624 ], [ 117.373864, 10.106532 ], [ 117.385567, 10.063519 ], [ 117.354154, 10.06293 ], [ 117.347995, 10.090624 ] ] ], [ [ [ 112.993304, 19.472003 ], [ 112.980369, 19.496263 ], [ 112.993304, 19.52616 ], [ 113.029028, 19.52898 ], [ 113.048123, 19.506417 ], [ 113.038883, 19.480466 ], [ 112.993304, 19.472003 ] ] ], [ [ [ 114.448153, 16.034035 ], [ 114.465399, 16.067393 ], [ 114.521449, 16.056466 ], [ 114.485109, 16.034611 ], [ 114.448153, 16.034035 ] ] ], [ [ [ 113.832213, 19.158552 ], [ 113.799568, 19.19925 ], [ 113.80696, 19.222986 ], [ 113.875945, 19.237113 ], [ 113.920293, 19.223551 ], [ 113.914749, 19.172119 ], [ 113.874097, 19.151203 ], [ 113.832213, 19.158552 ] ] ], [ [ [ 112.650842, 5.106941 ], [ 112.678559, 5.121247 ], [ 112.719211, 5.075944 ], [ 112.682871, 5.048522 ], [ 112.655769, 5.055676 ], [ 112.650842, 5.106941 ] ] ], [ [ [ 111.638853, 7.907254 ], [ 111.651788, 7.932743 ], [ 111.713382, 7.927408 ], [ 111.712766, 7.887099 ], [ 111.665339, 7.887099 ], [ 111.638853, 7.907254 ] ] ], [ [ [ 112.244322, 8.874662 ], [ 112.288669, 8.885896 ], [ 112.281278, 8.855148 ], [ 112.244322, 8.874662 ] ] ], [ [ [ 112.89229, 7.844416 ], [ 112.93171, 7.867537 ], [ 112.929862, 7.827815 ], [ 112.89229, 7.844416 ] ] ], [ [ [ 112.583088, 5.56159 ], [ 112.616349, 5.568737 ], [ 112.642834, 5.489512 ], [ 112.614501, 5.465683 ], [ 112.606494, 5.51751 ], [ 112.583088, 5.56159 ] ] ], [ [ [ 116.695099, 16.345538 ], [ 116.717889, 16.373676 ], [ 116.747454, 16.360469 ], [ 116.738831, 16.303612 ], [ 116.708034, 16.299591 ], [ 116.695099, 16.345538 ] ] ], [ [ [ 112.523342, 5.656289 ], [ 112.528886, 5.687257 ], [ 112.56153, 5.677133 ], [ 112.565842, 5.63068 ], [ 112.5449, 5.616386 ], [ 112.523342, 5.656289 ] ] ], [ [ [ 112.907072, 4.993079 ], [ 112.910768, 5.038388 ], [ 112.952652, 5.047926 ], [ 112.943413, 4.991887 ], [ 112.907072, 4.993079 ] ] ], [ [ [ 115.361591, 13.948985 ], [ 115.377605, 13.968732 ], [ 115.423185, 13.977443 ], [ 115.438583, 13.943757 ], [ 115.397315, 13.92517 ], [ 115.361591, 13.948985 ] ] ], [ [ [ 113.860546, 15.477068 ], [ 113.890112, 15.490909 ], [ 113.893807, 15.463802 ], [ 113.860546, 15.477068 ] ] ], [ [ [ 113.596924, 10.240836 ], [ 113.638192, 10.243192 ], [ 113.617866, 10.22199 ], [ 113.596924, 10.240836 ] ] ], [ [ [ 112.557219, 5.109326 ], [ 112.601567, 5.120055 ], [ 112.610806, 5.091443 ], [ 112.568922, 5.071771 ], [ 112.557219, 5.109326 ] ] ], [ [ [ 112.350263, 5.621747 ], [ 112.385372, 5.643187 ], [ 112.385988, 5.615791 ], [ 112.350263, 5.621747 ] ] ], [ [ [ 112.226459, 16.759147 ], [ 112.211061, 16.795819 ], [ 112.262184, 16.778057 ], [ 112.254177, 16.751698 ], [ 112.226459, 16.759147 ] ] ], [ [ [ 112.233851, 15.69612 ], [ 112.20367, 15.71398 ], [ 112.240626, 15.741055 ], [ 112.25972, 15.734718 ], [ 112.233851, 15.69612 ] ] ], [ [ [ 112.612037, 5.367973 ], [ 112.62374, 5.401935 ], [ 112.690878, 5.406702 ], [ 112.685334, 5.371548 ], [ 112.640371, 5.347715 ], [ 112.612037, 5.367973 ] ] ], [ [ [ 112.472219, 5.73966 ], [ 112.498089, 5.775387 ], [ 112.496857, 5.736683 ], [ 112.472219, 5.73966 ] ] ], [ [ [ 113.217506, 6.306249 ], [ 113.243991, 6.325878 ], [ 113.230441, 6.285429 ], [ 113.217506, 6.306249 ] ] ], [ [ [ 116.152457, 9.579384 ], [ 116.187565, 9.595317 ], [ 116.189413, 9.565221 ], [ 116.152457, 9.579384 ] ] ], [ [ [ 114.948911, 7.508722 ], [ 115.013585, 7.525928 ], [ 115.012353, 7.484988 ], [ 114.960614, 7.484988 ], [ 114.948911, 7.508722 ] ] ], [ [ [ 111.553854, 7.807656 ], [ 111.603745, 7.861608 ], [ 111.619759, 7.840265 ], [ 111.585267, 7.771487 ], [ 111.553854, 7.807656 ] ] ], [ [ [ 113.938771, 15.8355 ], [ 113.9708, 15.83953 ], [ 113.973263, 15.805558 ], [ 113.938771, 15.8355 ] ] ], [ [ [ 114.926122, 16.036911 ], [ 114.910723, 16.001823 ], [ 114.895325, 16.036336 ], [ 114.926122, 16.036911 ] ] ], [ [ [ 116.749302, 9.056736 ], [ 116.740679, 9.028367 ], [ 116.70865, 9.024229 ], [ 116.699411, 9.049053 ], [ 116.749302, 9.056736 ] ] ], [ [ [ 112.64653, 16.385733 ], [ 112.660081, 16.426494 ], [ 112.681639, 16.400661 ], [ 112.64653, 16.385733 ] ] ], [ [ [ 111.203384, 19.92557 ], [ 111.204, 19.926132 ], [ 111.204, 19.92557 ], [ 111.203384, 19.925007 ], [ 111.203384, 19.92557 ] ] ], [ [ [ 115.758256, 10.461018 ], [ 115.801987, 10.463372 ], [ 115.776118, 10.434534 ], [ 115.758256, 10.461018 ] ] ], [ [ [ 112.671784, 16.331755 ], [ 112.677943, 16.35932 ], [ 112.701349, 16.331755 ], [ 112.671784, 16.331755 ] ] ], [ [ [ 115.782277, 10.541046 ], [ 115.805067, 10.524571 ], [ 115.795212, 10.499858 ], [ 115.782277, 10.541046 ] ] ], [ [ [ 112.512255, 9.544566 ], [ 112.567074, 9.554008 ], [ 112.568922, 9.516826 ], [ 112.50856, 9.525679 ], [ 112.512255, 9.544566 ] ] ], [ [ [ 117.21372, 10.735144 ], [ 117.206945, 10.707507 ], [ 117.187235, 10.741612 ], [ 117.21372, 10.735144 ] ] ], [ [ [ 114.610145, 15.649447 ], [ 114.610761, 15.615444 ], [ 114.581195, 15.625242 ], [ 114.610145, 15.649447 ] ] ], [ [ [ 117.299336, 11.077745 ], [ 117.304263, 11.027232 ], [ 117.284553, 11.02547 ], [ 117.264227, 11.063062 ], [ 117.299336, 11.077745 ] ] ], [ [ [ 117.691073, 11.048965 ], [ 117.690457, 11.016658 ], [ 117.655965, 11.024882 ], [ 117.653501, 11.046029 ], [ 117.691073, 11.048965 ] ] ], [ [ [ 114.166668, 9.38459 ], [ 114.194386, 9.391676 ], [ 114.195617, 9.350933 ], [ 114.175291, 9.342075 ], [ 114.166668, 9.38459 ] ] ], [ [ [ 114.714854, 9.736909 ], [ 114.704999, 9.700337 ], [ 114.680978, 9.707416 ], [ 114.693296, 9.741038 ], [ 114.714854, 9.736909 ] ] ], [ [ [ 112.554139, 5.97839 ], [ 112.575697, 5.971247 ], [ 112.553523, 5.942676 ], [ 112.554139, 5.97839 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"500000\", \"name\": \"重庆市\", \"center\": [ 106.504962, 29.533155 ], \"centroid\": [ 107.883899, 30.067297 ], \"childrenNum\": 38, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 21, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 106.37442, 28.525742 ], [ 106.33192, 28.55308 ], [ 106.346703, 28.583565 ], [ 106.304203, 28.64976 ], [ 106.305435, 28.704365 ], [ 106.27279, 28.741103 ], [ 106.267863, 28.779402 ], [ 106.245689, 28.817686 ], [ 106.264783, 28.845997 ], [ 106.206885, 28.904691 ], [ 106.173008, 28.920407 ], [ 106.14837, 28.901548 ], [ 106.101559, 28.898928 ], [ 106.070762, 28.919884 ], [ 106.049204, 28.906263 ], [ 106.040581, 28.955498 ], [ 106.001161, 28.973824 ], [ 105.969132, 28.965971 ], [ 105.910002, 28.920407 ], [ 105.852719, 28.927217 ], [ 105.830546, 28.944501 ], [ 105.797285, 28.936121 ], [ 105.801596, 28.958116 ], [ 105.762176, 28.9911 ], [ 105.766488, 29.013607 ], [ 105.74185, 29.039249 ], [ 105.757865, 29.069068 ], [ 105.728916, 29.1062 ], [ 105.752321, 29.129727 ], [ 105.728916, 29.134432 ], [ 105.703662, 29.176766 ], [ 105.712285, 29.219082 ], [ 105.695039, 29.287482 ], [ 105.647612, 29.253027 ], [ 105.631597, 29.280174 ], [ 105.557684, 29.278608 ], [ 105.521344, 29.264513 ], [ 105.513337, 29.283306 ], [ 105.459134, 29.288526 ], [ 105.465294, 29.322969 ], [ 105.42033, 29.31149 ], [ 105.418482, 29.352185 ], [ 105.441888, 29.400686 ], [ 105.426489, 29.419454 ], [ 105.372903, 29.421018 ], [ 105.387069, 29.455416 ], [ 105.387069, 29.455416 ], [ 105.334099, 29.441345 ], [ 105.337794, 29.459064 ], [ 105.305149, 29.53199 ], [ 105.296526, 29.571035 ], [ 105.332867, 29.592374 ], [ 105.347649, 29.621512 ], [ 105.38091, 29.628275 ], [ 105.419714, 29.688082 ], [ 105.476996, 29.674564 ], [ 105.481924, 29.718232 ], [ 105.529351, 29.707836 ], [ 105.574931, 29.744216 ], [ 105.582938, 29.819013 ], [ 105.610655, 29.837184 ], [ 105.707974, 29.840818 ], [ 105.738771, 29.891159 ], [ 105.717213, 29.893753 ], [ 105.70243, 29.924879 ], [ 105.730763, 29.95755 ], [ 105.723372, 29.975177 ], [ 105.753553, 30.018196 ], [ 105.719677, 30.042548 ], [ 105.687032, 30.038922 ], [ 105.676561, 30.06793 ], [ 105.638988, 30.076216 ], [ 105.642068, 30.101072 ], [ 105.582938, 30.12385 ], [ 105.582938, 30.127474 ], [ 105.580474, 30.129544 ], [ 105.574315, 30.130579 ], [ 105.596489, 30.159043 ], [ 105.536127, 30.152834 ], [ 105.550909, 30.179222 ], [ 105.56138, 30.183878 ], [ 105.642684, 30.186464 ], [ 105.662394, 30.210258 ], [ 105.619894, 30.234045 ], [ 105.624822, 30.275918 ], [ 105.670401, 30.254208 ], [ 105.720292, 30.252657 ], [ 105.720292, 30.252657 ], [ 105.714749, 30.322939 ], [ 105.754785, 30.342567 ], [ 105.760329, 30.384393 ], [ 105.792357, 30.427234 ], [ 105.825618, 30.436006 ], [ 105.84656, 30.410203 ], [ 105.900763, 30.405042 ], [ 105.943263, 30.372002 ], [ 106.031958, 30.373551 ], [ 106.07261, 30.333786 ], [ 106.132972, 30.30279 ], [ 106.132356, 30.323972 ], [ 106.168696, 30.303823 ], [ 106.180399, 30.233011 ], [ 106.232754, 30.185947 ], [ 106.260471, 30.19681 ], [ 106.264167, 30.20974 ], [ 106.296196, 30.205603 ], [ 106.306667, 30.238182 ], [ 106.334384, 30.225772 ], [ 106.349167, 30.24542 ], [ 106.401521, 30.242318 ], [ 106.428623, 30.254725 ], [ 106.43971, 30.308473 ], [ 106.49884, 30.295556 ], [ 106.545035, 30.296589 ], [ 106.560434, 30.31519 ], [ 106.611557, 30.292455 ], [ 106.642354, 30.246454 ], [ 106.612789, 30.235596 ], [ 106.612789, 30.235596 ], [ 106.612173, 30.235596 ], [ 106.612173, 30.235596 ], [ 106.611557, 30.235596 ], [ 106.612173, 30.235596 ], [ 106.611557, 30.235596 ], [ 106.631883, 30.186464 ], [ 106.677462, 30.156974 ], [ 106.672535, 30.122297 ], [ 106.700252, 30.111944 ], [ 106.699636, 30.074145 ], [ 106.724274, 30.058607 ], [ 106.732281, 30.027005 ], [ 106.785252, 30.01716 ], [ 106.825904, 30.03115 ], [ 106.825904, 30.03115 ], [ 106.83699, 30.049801 ], [ 106.862244, 30.033223 ], [ 106.913367, 30.025451 ], [ 106.94478, 30.037367 ], [ 106.976193, 30.083467 ], [ 106.981736, 30.08502 ], [ 107.02054, 30.036849 ], [ 107.053801, 30.043584 ], [ 107.054417, 30.040994 ], [ 107.055649, 30.040476 ], [ 107.058113, 30.043066 ], [ 107.084598, 30.063786 ], [ 107.080286, 30.094341 ], [ 107.103076, 30.090198 ], [ 107.221337, 30.213878 ], [ 107.257677, 30.267131 ], [ 107.288474, 30.337402 ], [ 107.338981, 30.386459 ], [ 107.368546, 30.468508 ], [ 107.408582, 30.521623 ], [ 107.443075, 30.53348 ], [ 107.427676, 30.547397 ], [ 107.485575, 30.598408 ], [ 107.516987, 30.644759 ], [ 107.477567, 30.664837 ], [ 107.458473, 30.704981 ], [ 107.424597, 30.74048 ], [ 107.454162, 30.771851 ], [ 107.454162, 30.771851 ], [ 107.498509, 30.809381 ], [ 107.483111, 30.838675 ], [ 107.515756, 30.854603 ], [ 107.57735, 30.847924 ], [ 107.645103, 30.821202 ], [ 107.693146, 30.875665 ], [ 107.739957, 30.884396 ], [ 107.760899, 30.862823 ], [ 107.763979, 30.817091 ], [ 107.788001, 30.81966 ], [ 107.851443, 30.792931 ], [ 107.956152, 30.882855 ], [ 107.994956, 30.908533 ], [ 107.948145, 30.918802 ], [ 107.942602, 30.989114 ], [ 107.983254, 30.983983 ], [ 108.00358, 31.025533 ], [ 108.060246, 31.052197 ], [ 108.026985, 31.061938 ], [ 108.009123, 31.109602 ], [ 108.025753, 31.116263 ], [ 108.089811, 31.204859 ], [ 108.07626, 31.231985 ], [ 108.031297, 31.217144 ], [ 108.038688, 31.252964 ], [ 108.095354, 31.268311 ], [ 108.185898, 31.336831 ], [ 108.153869, 31.371073 ], [ 108.216079, 31.41041 ], [ 108.224086, 31.464024 ], [ 108.193289, 31.467598 ], [ 108.191441, 31.492096 ], [ 108.233941, 31.506894 ], [ 108.254883, 31.49873 ], [ 108.344194, 31.512506 ], [ 108.34789, 31.545664 ], [ 108.386078, 31.544134 ], [ 108.390389, 31.591555 ], [ 108.442744, 31.633856 ], [ 108.468614, 31.636404 ], [ 108.519121, 31.665952 ], [ 108.546838, 31.665442 ], [ 108.514809, 31.693963 ], [ 108.50557, 31.734182 ], [ 108.535135, 31.757592 ], [ 108.462454, 31.780488 ], [ 108.455063, 31.814059 ], [ 108.429194, 31.809482 ], [ 108.391005, 31.829822 ], [ 108.386078, 31.854226 ], [ 108.343578, 31.860834 ], [ 108.259194, 31.967006 ], [ 108.307238, 31.997463 ], [ 108.351585, 31.971575 ], [ 108.370063, 31.988835 ], [ 108.329411, 32.020299 ], [ 108.362056, 32.035521 ], [ 108.344194, 32.067477 ], [ 108.372527, 32.077112 ], [ 108.42981, 32.061391 ], [ 108.452599, 32.090296 ], [ 108.399628, 32.147065 ], [ 108.379303, 32.153652 ], [ 108.379303, 32.153652 ], [ 108.379918, 32.154158 ], [ 108.379918, 32.154158 ], [ 108.370063, 32.172397 ], [ 108.399013, 32.194176 ], [ 108.480317, 32.182527 ], [ 108.509882, 32.201266 ], [ 108.543758, 32.177969 ], [ 108.585026, 32.17189 ], [ 108.676801, 32.10297 ], [ 108.734084, 32.106519 ], [ 108.75133, 32.076098 ], [ 108.78767, 32.04871 ], [ 108.837561, 32.039072 ], [ 108.902235, 31.984774 ], [ 108.986619, 31.980205 ], [ 109.085785, 31.929428 ], [ 109.123357, 31.892851 ], [ 109.191111, 31.85575 ], [ 109.195422, 31.817618 ], [ 109.27611, 31.79931 ], [ 109.279806, 31.776418 ], [ 109.253936, 31.759628 ], [ 109.282885, 31.743343 ], [ 109.281654, 31.716874 ], [ 109.381436, 31.705165 ], [ 109.446109, 31.722983 ], [ 109.502776, 31.716365 ], [ 109.549587, 31.73011 ], [ 109.585928, 31.726546 ], [ 109.622268, 31.711783 ], [ 109.683246, 31.719929 ], [ 109.731289, 31.700582 ], [ 109.737449, 31.628761 ], [ 109.76455, 31.602769 ], [ 109.745456, 31.598182 ], [ 109.727594, 31.548214 ], [ 109.837847, 31.555354 ], [ 109.894513, 31.519139 ], [ 109.969658, 31.508935 ], [ 109.94502, 31.47066 ], [ 109.98752, 31.474744 ], [ 110.036795, 31.436966 ], [ 110.054042, 31.410921 ], [ 110.118715, 31.409899 ], [ 110.161831, 31.314338 ], [ 110.155671, 31.279564 ], [ 110.180309, 31.179774 ], [ 110.200019, 31.158779 ], [ 110.180309, 31.121899 ], [ 110.147048, 31.116776 ], [ 110.119947, 31.088592 ], [ 110.120563, 31.0322 ], [ 110.140273, 31.030661 ], [ 110.140889, 30.987062 ], [ 110.172918, 30.978853 ], [ 110.153824, 30.953708 ], [ 110.151976, 30.911613 ], [ 110.082375, 30.799614 ], [ 110.048498, 30.800642 ], [ 110.019549, 30.829425 ], [ 110.008462, 30.883369 ], [ 109.943788, 30.878746 ], [ 109.894513, 30.899803 ], [ 109.828608, 30.864364 ], [ 109.780564, 30.848437 ], [ 109.701724, 30.783677 ], [ 109.656761, 30.760538 ], [ 109.661072, 30.738936 ], [ 109.625348, 30.702923 ], [ 109.590855, 30.69366 ], [ 109.574225, 30.646818 ], [ 109.543428, 30.63961 ], [ 109.535421, 30.664837 ], [ 109.435638, 30.595832 ], [ 109.418392, 30.559766 ], [ 109.35495, 30.487076 ], [ 109.337088, 30.521623 ], [ 109.36111, 30.551004 ], [ 109.314298, 30.599953 ], [ 109.299516, 30.630341 ], [ 109.245313, 30.580892 ], [ 109.191726, 30.545851 ], [ 109.191726, 30.545851 ], [ 109.143683, 30.521108 ], [ 109.103647, 30.565949 ], [ 109.106111, 30.570587 ], [ 109.101183, 30.579346 ], [ 109.102415, 30.580377 ], [ 109.105495, 30.585529 ], [ 109.106111, 30.61077 ], [ 109.111654, 30.646303 ], [ 109.071002, 30.640125 ], [ 109.042669, 30.655571 ], [ 109.006329, 30.626736 ], [ 108.971836, 30.627766 ], [ 108.893612, 30.565434 ], [ 108.838793, 30.503062 ], [ 108.808612, 30.491202 ], [ 108.789518, 30.513374 ], [ 108.743939, 30.494812 ], [ 108.698975, 30.54482 ], [ 108.688504, 30.58759 ], [ 108.642925, 30.578831 ], [ 108.6497, 30.53915 ], [ 108.56778, 30.468508 ], [ 108.556077, 30.487592 ], [ 108.512961, 30.501515 ], [ 108.472925, 30.487076 ], [ 108.42673, 30.492233 ], [ 108.411331, 30.438586 ], [ 108.430425, 30.416397 ], [ 108.402092, 30.376649 ], [ 108.431041, 30.354446 ], [ 108.460606, 30.35961 ], [ 108.501258, 30.314673 ], [ 108.524048, 30.309506 ], [ 108.54499, 30.269716 ], [ 108.581947, 30.255759 ], [ 108.551766, 30.1637 ], [ 108.56778, 30.157491 ], [ 108.546222, 30.104178 ], [ 108.513577, 30.057571 ], [ 108.532055, 30.051873 ], [ 108.536367, 29.983472 ], [ 108.517889, 29.9394 ], [ 108.516041, 29.885451 ], [ 108.467998, 29.864175 ], [ 108.433505, 29.880262 ], [ 108.371295, 29.841337 ], [ 108.424266, 29.815897 ], [ 108.422418, 29.772791 ], [ 108.442744, 29.778505 ], [ 108.437201, 29.741098 ], [ 108.460606, 29.741098 ], [ 108.504338, 29.707836 ], [ 108.504954, 29.728626 ], [ 108.548686, 29.749412 ], [ 108.52528, 29.770713 ], [ 108.556077, 29.818493 ], [ 108.601041, 29.863656 ], [ 108.658939, 29.854833 ], [ 108.680497, 29.800319 ], [ 108.676801, 29.749412 ], [ 108.690968, 29.689642 ], [ 108.752562, 29.649082 ], [ 108.786438, 29.691721 ], [ 108.797525, 29.660003 ], [ 108.781511, 29.635558 ], [ 108.844337, 29.658443 ], [ 108.888068, 29.628795 ], [ 108.870206, 29.596537 ], [ 108.901003, 29.604863 ], [ 108.913322, 29.574679 ], [ 108.878213, 29.539279 ], [ 108.888684, 29.502305 ], [ 108.866511, 29.470527 ], [ 108.884373, 29.440824 ], [ 108.927488, 29.435612 ], [ 108.934264, 29.399643 ], [ 108.919481, 29.3261 ], [ 108.983539, 29.332883 ], [ 108.999553, 29.36366 ], [ 109.034662, 29.360531 ], [ 109.060531, 29.403292 ], [ 109.11227, 29.361053 ], [ 109.106727, 29.288526 ], [ 109.141835, 29.270256 ], [ 109.110422, 29.21647 ], [ 109.139372, 29.168927 ], [ 109.162777, 29.180946 ], [ 109.215748, 29.145409 ], [ 109.232378, 29.119271 ], [ 109.240386, 29.086328 ], [ 109.312451, 29.066453 ], [ 109.319842, 29.042388 ], [ 109.294588, 29.015177 ], [ 109.292741, 28.987436 ], [ 109.261328, 28.952356 ], [ 109.235458, 28.882161 ], [ 109.246545, 28.80143 ], [ 109.241002, 28.776779 ], [ 109.2989, 28.7474 ], [ 109.294588, 28.722211 ], [ 109.252704, 28.691767 ], [ 109.271183, 28.671816 ], [ 109.192958, 28.636104 ], [ 109.201581, 28.597753 ], [ 109.235458, 28.61982 ], [ 109.252089, 28.606685 ], [ 109.306907, 28.62087 ], [ 109.319842, 28.579886 ], [ 109.273646, 28.53836 ], [ 109.274262, 28.494714 ], [ 109.23361, 28.474726 ], [ 109.191726, 28.471043 ], [ 109.153538, 28.417369 ], [ 109.152306, 28.349975 ], [ 109.117198, 28.277795 ], [ 109.081473, 28.247749 ], [ 109.101799, 28.202401 ], [ 109.086401, 28.184467 ], [ 109.026655, 28.220331 ], [ 109.005713, 28.162837 ], [ 108.929952, 28.19027 ], [ 108.923793, 28.217167 ], [ 108.89546, 28.219804 ], [ 108.855424, 28.199764 ], [ 108.821547, 28.245113 ], [ 108.772888, 28.212949 ], [ 108.738395, 28.228241 ], [ 108.726692, 28.282011 ], [ 108.761801, 28.304143 ], [ 108.783359, 28.380518 ], [ 108.759953, 28.389995 ], [ 108.780279, 28.42579 ], [ 108.746402, 28.45105 ], [ 108.709446, 28.501026 ], [ 108.700207, 28.48209 ], [ 108.657091, 28.47683 ], [ 108.640461, 28.456838 ], [ 108.688504, 28.422106 ], [ 108.697127, 28.401051 ], [ 108.656475, 28.359981 ], [ 108.667562, 28.334173 ], [ 108.611512, 28.324691 ], [ 108.580099, 28.343128 ], [ 108.576403, 28.38631 ], [ 108.609048, 28.407368 ], [ 108.609664, 28.43579 ], [ 108.586874, 28.463678 ], [ 108.573939, 28.531 ], [ 108.610896, 28.539412 ], [ 108.604736, 28.590922 ], [ 108.636149, 28.621396 ], [ 108.575787, 28.659738 ], [ 108.50249, 28.63768 ], [ 108.501258, 28.626649 ], [ 108.439049, 28.634003 ], [ 108.332491, 28.679166 ], [ 108.347274, 28.736381 ], [ 108.385462, 28.772058 ], [ 108.386078, 28.803003 ], [ 108.352817, 28.815589 ], [ 108.346658, 28.859625 ], [ 108.357745, 28.893165 ], [ 108.345426, 28.943453 ], [ 108.319556, 28.961258 ], [ 108.297999, 29.045527 ], [ 108.306622, 29.079006 ], [ 108.277673, 29.091558 ], [ 108.256115, 29.040295 ], [ 108.193289, 29.072207 ], [ 108.150173, 29.053375 ], [ 108.070717, 29.086328 ], [ 108.026369, 29.039772 ], [ 107.925971, 29.032446 ], [ 107.908725, 29.007327 ], [ 107.882855, 29.00628 ], [ 107.867457, 28.960211 ], [ 107.810175, 28.984295 ], [ 107.823725, 29.034016 ], [ 107.784921, 29.048143 ], [ 107.810791, 29.139137 ], [ 107.749197, 29.199754 ], [ 107.700537, 29.141228 ], [ 107.659885, 29.162656 ], [ 107.605683, 29.164747 ], [ 107.589052, 29.150113 ], [ 107.570574, 29.218037 ], [ 107.486806, 29.174153 ], [ 107.441227, 29.203934 ], [ 107.401807, 29.184603 ], [ 107.408582, 29.138091 ], [ 107.427676, 29.128682 ], [ 107.412278, 29.094696 ], [ 107.369778, 29.091558 ], [ 107.395647, 29.041341 ], [ 107.364235, 29.00942 ], [ 107.396879, 28.993718 ], [ 107.412894, 28.960211 ], [ 107.441227, 28.943977 ], [ 107.41351, 28.911502 ], [ 107.383945, 28.848618 ], [ 107.339597, 28.845997 ], [ 107.327894, 28.810869 ], [ 107.261373, 28.792514 ], [ 107.24659, 28.76209 ], [ 107.219489, 28.772582 ], [ 107.210866, 28.817686 ], [ 107.227496, 28.836037 ], [ 107.194851, 28.838134 ], [ 107.206554, 28.868535 ], [ 107.14188, 28.887925 ], [ 107.016229, 28.882685 ], [ 107.019308, 28.861722 ], [ 106.983584, 28.851239 ], [ 106.988512, 28.776254 ], [ 106.951555, 28.766812 ], [ 106.923222, 28.809821 ], [ 106.872099, 28.777304 ], [ 106.845614, 28.780975 ], [ 106.824056, 28.756319 ], [ 106.86594, 28.690192 ], [ 106.889345, 28.695966 ], [ 106.866556, 28.624548 ], [ 106.830831, 28.623497 ], [ 106.807425, 28.589346 ], [ 106.784636, 28.626649 ], [ 106.756918, 28.607211 ], [ 106.77786, 28.563068 ], [ 106.73844, 28.554657 ], [ 106.726121, 28.51838 ], [ 106.747063, 28.467361 ], [ 106.708259, 28.450524 ], [ 106.697788, 28.47683 ], [ 106.632499, 28.503655 ], [ 106.564745, 28.485247 ], [ 106.567825, 28.523638 ], [ 106.615252, 28.549401 ], [ 106.606629, 28.593024 ], [ 106.63681, 28.622972 ], [ 106.618332, 28.645033 ], [ 106.651593, 28.649235 ], [ 106.617716, 28.66709 ], [ 106.6171, 28.691242 ], [ 106.587535, 28.691767 ], [ 106.56105, 28.719062 ], [ 106.561666, 28.756319 ], [ 106.474202, 28.832891 ], [ 106.45326, 28.817162 ], [ 106.461883, 28.761041 ], [ 106.492064, 28.742153 ], [ 106.528405, 28.677591 ], [ 106.502535, 28.661313 ], [ 106.49268, 28.591448 ], [ 106.466811, 28.586193 ], [ 106.504999, 28.544669 ], [ 106.477282, 28.530474 ], [ 106.403369, 28.569901 ], [ 106.37442, 28.525742 ] ] ], [ [ [ 109.105495, 30.585529 ], [ 109.102415, 30.580377 ], [ 109.101183, 30.579346 ], [ 109.09872, 30.579346 ], [ 109.09256, 30.578831 ], [ 109.106111, 30.61077 ], [ 109.105495, 30.585529 ] ] ], [ [ [ 105.582938, 30.12385 ], [ 105.574315, 30.130579 ], [ 105.580474, 30.129544 ], [ 105.582938, 30.127474 ], [ 105.582938, 30.12385 ] ] ], [ [ [ 109.09872, 30.579346 ], [ 109.106111, 30.570587 ], [ 109.103647, 30.565949 ], [ 109.09256, 30.578831 ], [ 109.09872, 30.579346 ] ] ], [ [ [ 107.058113, 30.043066 ], [ 107.055649, 30.040476 ], [ 107.054417, 30.040994 ], [ 107.053801, 30.043584 ], [ 107.058113, 30.043066 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"510000\", \"name\": \"四川省\", \"center\": [ 104.065735, 30.659462 ], \"centroid\": [ 102.693453, 30.674545 ], \"childrenNum\": 21, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 22, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 101.167885, 27.198311 ], [ 101.167885, 27.198311 ], [ 101.119226, 27.208957 ], [ 101.071798, 27.194585 ], [ 101.042233, 27.22173 ], [ 101.026219, 27.270679 ], [ 101.021907, 27.332899 ], [ 100.95169, 27.426961 ], [ 100.936908, 27.469448 ], [ 100.901183, 27.453517 ], [ 100.91227, 27.521473 ], [ 100.854988, 27.623858 ], [ 100.827886, 27.615904 ], [ 100.848212, 27.672099 ], [ 100.782307, 27.691708 ], [ 100.775532, 27.743098 ], [ 100.757053, 27.770107 ], [ 100.707162, 27.800816 ], [ 100.719481, 27.858503 ], [ 100.681293, 27.923035 ], [ 100.634482, 27.915631 ], [ 100.609228, 27.859033 ], [ 100.54517, 27.809286 ], [ 100.511294, 27.827811 ], [ 100.504518, 27.852154 ], [ 100.442924, 27.86644 ], [ 100.412127, 27.816167 ], [ 100.350534, 27.755809 ], [ 100.327744, 27.72032 ], [ 100.311729, 27.724028 ], [ 100.304954, 27.788639 ], [ 100.28586, 27.80611 ], [ 100.30865, 27.830457 ], [ 100.30865, 27.861149 ], [ 100.210715, 27.87702 ], [ 100.170063, 27.907699 ], [ 100.196549, 27.936254 ], [ 100.120788, 28.018703 ], [ 100.088759, 28.029269 ], [ 100.05673, 28.097922 ], [ 100.021006, 28.147008 ], [ 100.033325, 28.184467 ], [ 100.062274, 28.193962 ], [ 100.091223, 28.181302 ], [ 100.102926, 28.201873 ], [ 100.153433, 28.208202 ], [ 100.188541, 28.252493 ], [ 100.147274, 28.288862 ], [ 100.176223, 28.325218 ], [ 100.136803, 28.349975 ], [ 100.057346, 28.368934 ], [ 100.073977, 28.426317 ], [ 99.990209, 28.47683 ], [ 99.985281, 28.529422 ], [ 99.91876, 28.599329 ], [ 99.875644, 28.611939 ], [ 99.873181, 28.631902 ], [ 99.834376, 28.628225 ], [ 99.834992, 28.660788 ], [ 99.79434, 28.699116 ], [ 99.755536, 28.701216 ], [ 99.722275, 28.757369 ], [ 99.717964, 28.846521 ], [ 99.676696, 28.810345 ], [ 99.625573, 28.81454 ], [ 99.609559, 28.784122 ], [ 99.614486, 28.740054 ], [ 99.553508, 28.710664 ], [ 99.53195, 28.677591 ], [ 99.540573, 28.623497 ], [ 99.504233, 28.619294 ], [ 99.466045, 28.579886 ], [ 99.463581, 28.549401 ], [ 99.403219, 28.546246 ], [ 99.396444, 28.491032 ], [ 99.426625, 28.454207 ], [ 99.404451, 28.44421 ], [ 99.437095, 28.398419 ], [ 99.392748, 28.318369 ], [ 99.412458, 28.295186 ], [ 99.374886, 28.18183 ], [ 99.306516, 28.227714 ], [ 99.28927, 28.286227 ], [ 99.237531, 28.317842 ], [ 99.229524, 28.350502 ], [ 99.200575, 28.365774 ], [ 99.16485, 28.425264 ], [ 99.187024, 28.44 ], [ 99.191952, 28.494714 ], [ 99.170394, 28.566221 ], [ 99.183944, 28.58882 ], [ 99.147604, 28.640831 ], [ 99.126662, 28.698066 ], [ 99.134053, 28.734806 ], [ 99.114343, 28.765763 ], [ 99.103872, 28.841803 ], [ 99.123582, 28.890021 ], [ 99.132206, 28.94869 ], [ 99.113727, 29.07273 ], [ 99.118039, 29.100971 ], [ 99.105104, 29.162656 ], [ 99.113727, 29.221171 ], [ 99.114343, 29.243628 ], [ 99.075539, 29.316186 ], [ 99.058909, 29.417368 ], [ 99.066916, 29.421018 ], [ 99.044742, 29.520013 ], [ 99.052133, 29.563748 ], [ 99.014561, 29.607464 ], [ 98.992387, 29.677163 ], [ 99.018873, 29.792009 ], [ 99.0238, 29.846009 ], [ 99.068148, 29.931621 ], [ 99.055213, 29.958587 ], [ 99.036735, 30.053945 ], [ 99.044742, 30.079842 ], [ 98.989308, 30.151799 ], [ 98.9813, 30.182843 ], [ 98.993003, 30.215429 ], [ 98.970829, 30.260928 ], [ 98.986844, 30.280569 ], [ 98.967134, 30.33482 ], [ 98.965286, 30.449937 ], [ 98.932025, 30.521623 ], [ 98.926482, 30.569556 ], [ 98.939417, 30.598923 ], [ 98.92217, 30.609225 ], [ 98.907388, 30.698292 ], [ 98.963438, 30.728134 ], [ 98.957895, 30.765166 ], [ 98.904924, 30.782649 ], [ 98.850105, 30.849465 ], [ 98.797135, 30.87926 ], [ 98.774345, 30.908019 ], [ 98.797135, 30.948575 ], [ 98.806374, 30.995783 ], [ 98.774961, 31.031174 ], [ 98.736772, 31.049121 ], [ 98.712135, 31.082954 ], [ 98.710287, 31.1178 ], [ 98.675179, 31.15417 ], [ 98.602498, 31.192062 ], [ 98.62344, 31.221238 ], [ 98.60373, 31.257568 ], [ 98.616048, 31.3036 ], [ 98.643766, 31.338876 ], [ 98.691809, 31.333253 ], [ 98.773113, 31.249382 ], [ 98.805758, 31.279052 ], [ 98.810685, 31.306668 ], [ 98.887062, 31.37465 ], [ 98.84333, 31.416028 ], [ 98.844562, 31.429817 ], [ 98.714599, 31.508935 ], [ 98.696736, 31.538523 ], [ 98.651157, 31.57881 ], [ 98.619128, 31.591555 ], [ 98.553839, 31.660349 ], [ 98.545831, 31.717383 ], [ 98.516882, 31.717383 ], [ 98.508875, 31.751995 ], [ 98.461448, 31.800327 ], [ 98.414636, 31.832365 ], [ 98.426339, 31.856767 ], [ 98.399238, 31.895899 ], [ 98.432498, 31.922825 ], [ 98.434962, 32.007613 ], [ 98.402933, 32.026896 ], [ 98.404781, 32.045159 ], [ 98.357354, 32.087253 ], [ 98.303151, 32.121726 ], [ 98.260035, 32.208862 ], [ 98.218768, 32.234683 ], [ 98.23047, 32.262521 ], [ 98.208913, 32.318171 ], [ 98.218768, 32.342444 ], [ 98.125145, 32.401077 ], [ 98.107283, 32.391476 ], [ 98.079565, 32.415224 ], [ 97.940363, 32.482393 ], [ 97.880001, 32.486431 ], [ 97.863986, 32.499051 ], [ 97.80732, 32.50006 ], [ 97.795617, 32.521257 ], [ 97.730944, 32.527312 ], [ 97.700763, 32.53488 ], [ 97.616995, 32.586329 ], [ 97.607756, 32.614059 ], [ 97.543698, 32.62162 ], [ 97.535075, 32.638252 ], [ 97.48272, 32.654377 ], [ 97.42359, 32.70475 ], [ 97.429133, 32.714318 ], [ 97.386018, 32.77925 ], [ 97.392793, 32.828546 ], [ 97.376163, 32.886359 ], [ 97.347829, 32.895907 ], [ 97.375547, 32.956689 ], [ 97.438372, 32.976271 ], [ 97.523988, 32.988822 ], [ 97.499966, 33.011408 ], [ 97.542466, 33.035995 ], [ 97.517213, 33.097683 ], [ 97.487032, 33.107209 ], [ 97.498119, 33.137783 ], [ 97.487648, 33.168346 ], [ 97.548626, 33.203907 ], [ 97.607756, 33.263976 ], [ 97.622538, 33.337005 ], [ 97.676125, 33.341004 ], [ 97.754349, 33.409972 ], [ 97.674893, 33.432949 ], [ 97.625618, 33.461412 ], [ 97.552321, 33.465906 ], [ 97.511669, 33.520805 ], [ 97.523372, 33.577166 ], [ 97.450075, 33.582152 ], [ 97.415583, 33.605582 ], [ 97.435293, 33.682307 ], [ 97.418046, 33.728608 ], [ 97.422974, 33.754984 ], [ 97.406344, 33.795278 ], [ 97.373083, 33.817655 ], [ 97.371851, 33.842015 ], [ 97.398336, 33.848477 ], [ 97.395257, 33.889224 ], [ 97.460546, 33.887236 ], [ 97.503662, 33.912073 ], [ 97.52214, 33.903133 ], [ 97.601596, 33.929951 ], [ 97.629314, 33.919523 ], [ 97.660111, 33.956264 ], [ 97.652719, 33.998448 ], [ 97.70261, 34.036644 ], [ 97.665654, 34.126855 ], [ 97.766668, 34.158555 ], [ 97.789458, 34.182818 ], [ 97.789458, 34.182818 ], [ 97.796849, 34.199154 ], [ 97.796849, 34.199154 ], [ 97.898479, 34.209548 ], [ 97.95453, 34.190739 ], [ 98.051848, 34.11546 ], [ 98.098043, 34.122892 ], [ 98.157174, 34.107532 ], [ 98.206449, 34.08424 ], [ 98.258188, 34.083249 ], [ 98.344419, 34.094648 ], [ 98.392462, 34.089196 ], [ 98.396774, 34.053008 ], [ 98.428187, 34.029204 ], [ 98.440506, 33.981577 ], [ 98.415252, 33.956761 ], [ 98.425723, 33.913066 ], [ 98.407245, 33.867362 ], [ 98.434962, 33.843009 ], [ 98.463295, 33.848477 ], [ 98.492861, 33.796272 ], [ 98.494092, 33.768915 ], [ 98.51873, 33.77389 ], [ 98.537824, 33.74752 ], [ 98.582788, 33.731595 ], [ 98.610505, 33.682805 ], [ 98.6567, 33.64744 ], [ 98.61728, 33.637476 ], [ 98.622824, 33.610067 ], [ 98.652389, 33.595114 ], [ 98.648077, 33.548741 ], [ 98.678258, 33.522801 ], [ 98.725686, 33.503341 ], [ 98.742316, 33.477887 ], [ 98.736157, 33.406975 ], [ 98.779888, 33.370497 ], [ 98.759562, 33.276985 ], [ 98.802062, 33.270481 ], [ 98.804526, 33.219428 ], [ 98.858728, 33.150811 ], [ 98.92217, 33.118738 ], [ 98.967134, 33.115229 ], [ 98.971445, 33.098185 ], [ 99.014561, 33.081137 ], [ 99.024416, 33.094675 ], [ 99.090322, 33.079131 ], [ 99.124814, 33.046028 ], [ 99.196263, 33.035493 ], [ 99.214741, 32.991332 ], [ 99.235067, 32.982296 ], [ 99.24677, 32.924043 ], [ 99.268944, 32.878318 ], [ 99.353944, 32.885354 ], [ 99.376118, 32.899927 ], [ 99.45311, 32.862233 ], [ 99.558436, 32.839106 ], [ 99.589233, 32.789312 ], [ 99.640355, 32.790822 ], [ 99.646515, 32.774721 ], [ 99.705029, 32.76516 ], [ 99.717964, 32.732443 ], [ 99.760464, 32.769689 ], [ 99.766623, 32.826032 ], [ 99.791877, 32.883344 ], [ 99.764159, 32.924545 ], [ 99.788181, 32.956689 ], [ 99.805427, 32.940619 ], [ 99.851007, 32.941623 ], [ 99.877492, 32.993339 ], [ 99.877492, 33.045527 ], [ 99.947709, 32.986814 ], [ 99.956332, 32.948152 ], [ 100.038252, 32.929066 ], [ 100.029629, 32.895907 ], [ 100.064738, 32.895907 ], [ 100.123252, 32.837095 ], [ 100.117093, 32.802392 ], [ 100.139266, 32.724388 ], [ 100.088143, 32.668988 ], [ 100.109701, 32.640268 ], [ 100.189773, 32.630692 ], [ 100.208252, 32.606497 ], [ 100.229809, 32.650346 ], [ 100.231041, 32.696189 ], [ 100.258759, 32.742511 ], [ 100.339447, 32.719353 ], [ 100.399193, 32.756101 ], [ 100.378251, 32.698707 ], [ 100.420135, 32.73194 ], [ 100.450932, 32.694678 ], [ 100.470026, 32.694678 ], [ 100.516837, 32.632204 ], [ 100.54517, 32.569687 ], [ 100.603069, 32.553547 ], [ 100.645568, 32.526303 ], [ 100.657887, 32.546484 ], [ 100.661583, 32.616075 ], [ 100.673286, 32.628172 ], [ 100.710242, 32.610026 ], [ 100.71209, 32.645307 ], [ 100.690532, 32.678056 ], [ 100.77122, 32.643795 ], [ 100.834046, 32.648835 ], [ 100.887633, 32.632708 ], [ 100.93198, 32.600447 ], [ 100.956618, 32.621116 ], [ 100.99727, 32.627668 ], [ 101.030531, 32.660424 ], [ 101.077342, 32.68259 ], [ 101.124769, 32.658408 ], [ 101.157414, 32.661431 ], [ 101.22332, 32.725898 ], [ 101.237486, 32.825026 ], [ 101.223935, 32.855698 ], [ 101.178356, 32.892892 ], [ 101.124153, 32.909976 ], [ 101.134624, 32.95217 ], [ 101.129081, 32.989324 ], [ 101.183899, 32.984304 ], [ 101.171581, 33.009902 ], [ 101.184515, 33.041514 ], [ 101.146327, 33.056563 ], [ 101.143863, 33.086151 ], [ 101.169733, 33.10019 ], [ 101.11553, 33.194893 ], [ 101.124769, 33.221431 ], [ 101.156798, 33.236449 ], [ 101.182668, 33.26948 ], [ 101.217776, 33.256469 ], [ 101.297232, 33.262475 ], [ 101.381616, 33.153316 ], [ 101.393935, 33.157826 ], [ 101.386543, 33.207412 ], [ 101.403174, 33.225436 ], [ 101.487557, 33.226938 ], [ 101.515275, 33.192889 ], [ 101.557775, 33.167344 ], [ 101.633535, 33.101193 ], [ 101.661252, 33.135778 ], [ 101.653861, 33.162835 ], [ 101.709912, 33.21292 ], [ 101.735781, 33.279987 ], [ 101.677883, 33.297497 ], [ 101.64955, 33.323004 ], [ 101.663716, 33.383991 ], [ 101.695745, 33.433948 ], [ 101.769042, 33.45592 ], [ 101.777665, 33.533776 ], [ 101.769042, 33.538765 ], [ 101.783208, 33.556721 ], [ 101.831252, 33.554726 ], [ 101.844186, 33.602591 ], [ 101.884222, 33.578163 ], [ 101.907012, 33.539264 ], [ 101.906396, 33.48188 ], [ 101.946432, 33.442937 ], [ 101.915635, 33.425957 ], [ 101.887302, 33.383991 ], [ 101.877447, 33.314502 ], [ 101.769658, 33.26898 ], [ 101.770274, 33.248962 ], [ 101.83002, 33.213921 ], [ 101.841723, 33.184876 ], [ 101.825708, 33.119239 ], [ 101.865744, 33.103198 ], [ 101.887302, 33.135778 ], [ 101.921795, 33.153817 ], [ 101.935345, 33.186879 ], [ 101.99386, 33.1999 ], [ 102.054838, 33.189884 ], [ 102.08933, 33.204908 ], [ 102.08933, 33.227439 ], [ 102.117047, 33.288492 ], [ 102.144765, 33.273983 ], [ 102.160163, 33.242956 ], [ 102.200815, 33.223434 ], [ 102.217446, 33.247961 ], [ 102.192192, 33.337005 ], [ 102.218062, 33.349503 ], [ 102.258098, 33.409472 ], [ 102.296286, 33.413969 ], [ 102.310452, 33.397982 ], [ 102.368967, 33.41247 ], [ 102.392988, 33.404477 ], [ 102.447807, 33.454922 ], [ 102.462589, 33.449429 ], [ 102.461358, 33.501345 ], [ 102.446575, 33.53228 ], [ 102.477988, 33.543254 ], [ 102.440416, 33.574673 ], [ 102.346793, 33.605582 ], [ 102.31538, 33.665374 ], [ 102.342481, 33.725622 ], [ 102.284583, 33.719151 ], [ 102.324619, 33.754486 ], [ 102.296286, 33.783838 ], [ 102.243315, 33.786823 ], [ 102.261177, 33.821136 ], [ 102.25317, 33.861399 ], [ 102.136142, 33.965199 ], [ 102.16817, 33.983066 ], [ 102.226069, 33.963214 ], [ 102.248858, 33.98654 ], [ 102.287047, 33.977607 ], [ 102.315996, 33.993983 ], [ 102.345561, 33.969666 ], [ 102.392372, 33.971651 ], [ 102.406539, 34.033172 ], [ 102.437336, 34.087214 ], [ 102.471213, 34.072839 ], [ 102.511865, 34.086222 ], [ 102.615958, 34.099604 ], [ 102.649219, 34.080275 ], [ 102.655994, 34.113478 ], [ 102.598712, 34.14766 ], [ 102.651067, 34.165983 ], [ 102.664002, 34.192719 ], [ 102.694799, 34.198659 ], [ 102.728675, 34.235774 ], [ 102.779798, 34.236764 ], [ 102.798276, 34.272874 ], [ 102.856791, 34.270895 ], [ 102.85987, 34.301058 ], [ 102.911609, 34.312923 ], [ 102.949181, 34.292159 ], [ 102.977515, 34.252595 ], [ 102.973203, 34.205588 ], [ 103.005848, 34.184798 ], [ 103.052043, 34.195194 ], [ 103.100087, 34.181828 ], [ 103.124108, 34.162022 ], [ 103.121644, 34.112487 ], [ 103.178927, 34.079779 ], [ 103.129652, 34.065899 ], [ 103.119797, 34.03466 ], [ 103.147514, 34.036644 ], [ 103.157369, 33.998944 ], [ 103.120413, 33.953286 ], [ 103.1315, 33.931937 ], [ 103.16476, 33.929454 ], [ 103.181391, 33.900649 ], [ 103.153673, 33.819147 ], [ 103.165376, 33.805721 ], [ 103.228202, 33.79478 ], [ 103.24976, 33.814175 ], [ 103.284868, 33.80224 ], [ 103.278709, 33.774387 ], [ 103.35447, 33.743539 ], [ 103.434542, 33.752993 ], [ 103.464723, 33.80224 ], [ 103.518309, 33.807213 ], [ 103.545411, 33.719649 ], [ 103.520157, 33.678323 ], [ 103.552186, 33.671351 ], [ 103.563889, 33.699735 ], [ 103.593454, 33.716164 ], [ 103.645809, 33.708697 ], [ 103.667983, 33.685793 ], [ 103.690772, 33.69376 ], [ 103.778236, 33.658898 ], [ 103.861388, 33.682307 ], [ 103.980264, 33.670852 ], [ 104.046169, 33.686291 ], [ 104.103452, 33.663381 ], [ 104.176749, 33.5996 ], [ 104.155191, 33.542755 ], [ 104.180444, 33.472895 ], [ 104.213089, 33.446932 ], [ 104.22048, 33.404477 ], [ 104.272219, 33.391486 ], [ 104.292545, 33.336505 ], [ 104.373849, 33.345004 ], [ 104.420045, 33.327004 ], [ 104.386168, 33.298497 ], [ 104.333813, 33.315502 ], [ 104.303632, 33.304499 ], [ 104.323958, 33.26898 ], [ 104.32827, 33.223934 ], [ 104.351059, 33.158828 ], [ 104.378161, 33.109214 ], [ 104.337509, 33.038002 ], [ 104.391711, 33.035493 ], [ 104.426204, 33.010906 ], [ 104.383704, 32.994343 ], [ 104.378161, 32.953174 ], [ 104.345516, 32.940117 ], [ 104.288234, 32.942628 ], [ 104.277147, 32.90244 ], [ 104.294393, 32.835586 ], [ 104.363994, 32.822511 ], [ 104.458849, 32.748551 ], [ 104.51182, 32.753585 ], [ 104.526602, 32.728416 ], [ 104.582653, 32.722374 ], [ 104.592508, 32.695685 ], [ 104.643015, 32.661935 ], [ 104.696601, 32.673522 ], [ 104.739717, 32.635228 ], [ 104.795768, 32.643292 ], [ 104.820405, 32.662943 ], [ 104.845659, 32.653873 ], [ 104.881999, 32.600951 ], [ 104.925115, 32.607505 ], [ 105.026745, 32.650346 ], [ 105.0791, 32.637244 ], [ 105.111128, 32.593893 ], [ 105.185041, 32.617587 ], [ 105.215222, 32.63674 ], [ 105.219534, 32.666469 ], [ 105.263265, 32.652362 ], [ 105.297758, 32.656897 ], [ 105.347033, 32.68259 ], [ 105.368591, 32.712807 ], [ 105.448663, 32.732946 ], [ 105.454207, 32.767173 ], [ 105.427721, 32.784281 ], [ 105.396308, 32.85067 ], [ 105.396308, 32.85067 ], [ 105.38091, 32.876307 ], [ 105.408011, 32.885857 ], [ 105.414171, 32.922034 ], [ 105.467757, 32.930071 ], [ 105.49917, 32.911986 ], [ 105.495475, 32.873292 ], [ 105.524424, 32.847654 ], [ 105.534279, 32.790822 ], [ 105.555221, 32.794343 ], [ 105.563844, 32.724891 ], [ 105.585402, 32.728919 ], [ 105.596489, 32.69921 ], [ 105.677793, 32.726402 ], [ 105.719061, 32.759624 ], [ 105.768952, 32.767676 ], [ 105.779423, 32.750061 ], [ 105.822538, 32.770192 ], [ 105.825002, 32.824523 ], [ 105.849024, 32.817985 ], [ 105.893371, 32.838603 ], [ 105.93156, 32.826032 ], [ 105.969132, 32.849162 ], [ 106.011632, 32.829552 ], [ 106.044277, 32.864747 ], [ 106.071378, 32.828546 ], [ 106.093552, 32.82402 ], [ 106.07261, 32.76365 ], [ 106.071378, 32.758114 ], [ 106.120037, 32.719856 ], [ 106.17424, 32.6977 ], [ 106.254928, 32.693671 ], [ 106.267863, 32.673522 ], [ 106.301123, 32.680071 ], [ 106.347935, 32.671003 ], [ 106.389203, 32.62666 ], [ 106.421231, 32.616579 ], [ 106.451412, 32.65992 ], [ 106.498224, 32.649338 ], [ 106.517934, 32.668485 ], [ 106.585687, 32.68813 ], [ 106.626955, 32.682086 ], [ 106.670071, 32.694678 ], [ 106.733513, 32.739491 ], [ 106.783404, 32.735967 ], [ 106.793259, 32.712807 ], [ 106.82344, 32.705254 ], [ 106.854853, 32.724388 ], [ 106.903512, 32.721367 ], [ 106.912751, 32.704247 ], [ 107.012533, 32.721367 ], [ 107.066736, 32.708779 ], [ 107.05996, 32.686115 ], [ 107.098765, 32.649338 ], [ 107.108004, 32.600951 ], [ 107.080286, 32.542448 ], [ 107.127098, 32.482393 ], [ 107.189924, 32.468256 ], [ 107.212097, 32.428864 ], [ 107.263836, 32.403099 ], [ 107.287858, 32.457147 ], [ 107.313727, 32.489965 ], [ 107.356843, 32.506622 ], [ 107.382097, 32.54043 ], [ 107.436299, 32.529835 ], [ 107.438763, 32.465732 ], [ 107.460937, 32.453612 ], [ 107.456625, 32.41775 ], [ 107.489886, 32.425328 ], [ 107.527458, 32.38238 ], [ 107.598291, 32.411688 ], [ 107.648183, 32.413709 ], [ 107.680827, 32.397035 ], [ 107.707929, 32.331826 ], [ 107.753508, 32.338399 ], [ 107.812022, 32.247844 ], [ 107.864377, 32.201266 ], [ 107.890247, 32.214432 ], [ 107.924739, 32.197215 ], [ 107.979558, 32.146051 ], [ 108.024521, 32.177462 ], [ 108.018362, 32.2119 ], [ 108.086731, 32.233165 ], [ 108.143398, 32.219495 ], [ 108.156948, 32.239239 ], [ 108.179738, 32.221521 ], [ 108.240716, 32.274666 ], [ 108.310933, 32.232152 ], [ 108.389773, 32.263533 ], [ 108.414411, 32.252399 ], [ 108.469846, 32.270618 ], [ 108.507418, 32.245819 ], [ 108.509882, 32.201266 ], [ 108.480317, 32.182527 ], [ 108.399013, 32.194176 ], [ 108.370063, 32.172397 ], [ 108.379918, 32.154158 ], [ 108.379918, 32.154158 ], [ 108.379303, 32.153652 ], [ 108.379303, 32.153652 ], [ 108.399628, 32.147065 ], [ 108.452599, 32.090296 ], [ 108.42981, 32.061391 ], [ 108.372527, 32.077112 ], [ 108.344194, 32.067477 ], [ 108.362056, 32.035521 ], [ 108.329411, 32.020299 ], [ 108.370063, 31.988835 ], [ 108.351585, 31.971575 ], [ 108.307238, 31.997463 ], [ 108.259194, 31.967006 ], [ 108.343578, 31.860834 ], [ 108.386078, 31.854226 ], [ 108.391005, 31.829822 ], [ 108.429194, 31.809482 ], [ 108.455063, 31.814059 ], [ 108.462454, 31.780488 ], [ 108.535135, 31.757592 ], [ 108.50557, 31.734182 ], [ 108.514809, 31.693963 ], [ 108.546838, 31.665442 ], [ 108.519121, 31.665952 ], [ 108.468614, 31.636404 ], [ 108.442744, 31.633856 ], [ 108.390389, 31.591555 ], [ 108.386078, 31.544134 ], [ 108.34789, 31.545664 ], [ 108.344194, 31.512506 ], [ 108.254883, 31.49873 ], [ 108.233941, 31.506894 ], [ 108.191441, 31.492096 ], [ 108.193289, 31.467598 ], [ 108.224086, 31.464024 ], [ 108.216079, 31.41041 ], [ 108.153869, 31.371073 ], [ 108.185898, 31.336831 ], [ 108.095354, 31.268311 ], [ 108.038688, 31.252964 ], [ 108.031297, 31.217144 ], [ 108.07626, 31.231985 ], [ 108.089811, 31.204859 ], [ 108.025753, 31.116263 ], [ 108.009123, 31.109602 ], [ 108.026985, 31.061938 ], [ 108.060246, 31.052197 ], [ 108.00358, 31.025533 ], [ 107.983254, 30.983983 ], [ 107.942602, 30.989114 ], [ 107.948145, 30.918802 ], [ 107.994956, 30.908533 ], [ 107.956152, 30.882855 ], [ 107.851443, 30.792931 ], [ 107.788001, 30.81966 ], [ 107.763979, 30.817091 ], [ 107.760899, 30.862823 ], [ 107.739957, 30.884396 ], [ 107.693146, 30.875665 ], [ 107.645103, 30.821202 ], [ 107.57735, 30.847924 ], [ 107.515756, 30.854603 ], [ 107.483111, 30.838675 ], [ 107.498509, 30.809381 ], [ 107.454162, 30.771851 ], [ 107.454162, 30.771851 ], [ 107.424597, 30.74048 ], [ 107.458473, 30.704981 ], [ 107.477567, 30.664837 ], [ 107.516987, 30.644759 ], [ 107.485575, 30.598408 ], [ 107.427676, 30.547397 ], [ 107.443075, 30.53348 ], [ 107.408582, 30.521623 ], [ 107.368546, 30.468508 ], [ 107.338981, 30.386459 ], [ 107.288474, 30.337402 ], [ 107.257677, 30.267131 ], [ 107.221337, 30.213878 ], [ 107.103076, 30.090198 ], [ 107.080286, 30.094341 ], [ 107.084598, 30.063786 ], [ 107.058113, 30.043066 ], [ 107.053801, 30.043584 ], [ 107.02054, 30.036849 ], [ 106.981736, 30.08502 ], [ 106.980504, 30.087609 ], [ 106.979888, 30.088127 ], [ 106.978656, 30.087609 ], [ 106.977425, 30.087609 ], [ 106.976809, 30.088127 ], [ 106.975577, 30.088127 ], [ 106.976193, 30.083467 ], [ 106.94478, 30.037367 ], [ 106.913367, 30.025451 ], [ 106.862244, 30.033223 ], [ 106.83699, 30.049801 ], [ 106.825904, 30.03115 ], [ 106.825904, 30.03115 ], [ 106.785252, 30.01716 ], [ 106.732281, 30.027005 ], [ 106.724274, 30.058607 ], [ 106.699636, 30.074145 ], [ 106.700252, 30.111944 ], [ 106.672535, 30.122297 ], [ 106.677462, 30.156974 ], [ 106.631883, 30.186464 ], [ 106.611557, 30.235596 ], [ 106.612173, 30.235596 ], [ 106.611557, 30.235596 ], [ 106.612173, 30.235596 ], [ 106.612173, 30.235596 ], [ 106.612789, 30.235596 ], [ 106.612789, 30.235596 ], [ 106.642354, 30.246454 ], [ 106.611557, 30.292455 ], [ 106.560434, 30.31519 ], [ 106.545035, 30.296589 ], [ 106.49884, 30.295556 ], [ 106.43971, 30.308473 ], [ 106.428623, 30.254725 ], [ 106.401521, 30.242318 ], [ 106.349167, 30.24542 ], [ 106.334384, 30.225772 ], [ 106.306667, 30.238182 ], [ 106.296196, 30.205603 ], [ 106.264167, 30.20974 ], [ 106.260471, 30.207672 ], [ 106.260471, 30.204051 ], [ 106.260471, 30.19681 ], [ 106.232754, 30.185947 ], [ 106.180399, 30.233011 ], [ 106.168696, 30.303823 ], [ 106.132356, 30.323972 ], [ 106.132972, 30.30279 ], [ 106.07261, 30.333786 ], [ 106.031958, 30.373551 ], [ 105.943263, 30.372002 ], [ 105.900763, 30.405042 ], [ 105.84656, 30.410203 ], [ 105.825618, 30.436006 ], [ 105.792357, 30.427234 ], [ 105.760329, 30.384393 ], [ 105.754785, 30.342567 ], [ 105.714749, 30.322939 ], [ 105.720292, 30.252657 ], [ 105.720292, 30.252657 ], [ 105.670401, 30.254208 ], [ 105.624822, 30.275918 ], [ 105.619894, 30.234045 ], [ 105.662394, 30.210258 ], [ 105.642684, 30.186464 ], [ 105.56138, 30.183878 ], [ 105.558916, 30.18543 ], [ 105.556453, 30.187499 ], [ 105.550909, 30.179222 ], [ 105.536127, 30.152834 ], [ 105.596489, 30.159043 ], [ 105.574315, 30.130579 ], [ 105.582938, 30.12385 ], [ 105.642068, 30.101072 ], [ 105.638988, 30.076216 ], [ 105.676561, 30.06793 ], [ 105.687032, 30.038922 ], [ 105.719677, 30.042548 ], [ 105.753553, 30.018196 ], [ 105.723372, 29.975177 ], [ 105.730763, 29.95755 ], [ 105.70243, 29.924879 ], [ 105.717213, 29.893753 ], [ 105.738771, 29.891159 ], [ 105.707974, 29.840818 ], [ 105.610655, 29.837184 ], [ 105.582938, 29.819013 ], [ 105.574931, 29.744216 ], [ 105.529351, 29.707836 ], [ 105.481924, 29.718232 ], [ 105.476996, 29.674564 ], [ 105.419714, 29.688082 ], [ 105.38091, 29.628275 ], [ 105.347649, 29.621512 ], [ 105.332867, 29.592374 ], [ 105.296526, 29.571035 ], [ 105.305149, 29.53199 ], [ 105.337794, 29.459064 ], [ 105.334099, 29.441345 ], [ 105.387069, 29.455416 ], [ 105.387069, 29.455416 ], [ 105.372903, 29.421018 ], [ 105.426489, 29.419454 ], [ 105.441888, 29.400686 ], [ 105.418482, 29.352185 ], [ 105.42033, 29.31149 ], [ 105.465294, 29.322969 ], [ 105.459134, 29.288526 ], [ 105.513337, 29.283306 ], [ 105.521344, 29.264513 ], [ 105.557684, 29.278608 ], [ 105.631597, 29.280174 ], [ 105.647612, 29.253027 ], [ 105.695039, 29.287482 ], [ 105.712285, 29.219082 ], [ 105.703662, 29.176766 ], [ 105.728916, 29.134432 ], [ 105.752321, 29.129727 ], [ 105.728916, 29.1062 ], [ 105.757865, 29.069068 ], [ 105.74185, 29.039249 ], [ 105.766488, 29.013607 ], [ 105.762176, 28.9911 ], [ 105.801596, 28.958116 ], [ 105.797285, 28.936121 ], [ 105.830546, 28.944501 ], [ 105.852719, 28.927217 ], [ 105.910002, 28.920407 ], [ 105.969132, 28.965971 ], [ 106.001161, 28.973824 ], [ 106.040581, 28.955498 ], [ 106.049204, 28.906263 ], [ 106.070762, 28.919884 ], [ 106.101559, 28.898928 ], [ 106.14837, 28.901548 ], [ 106.173008, 28.920407 ], [ 106.206885, 28.904691 ], [ 106.264783, 28.845997 ], [ 106.245689, 28.817686 ], [ 106.267863, 28.779402 ], [ 106.27279, 28.741103 ], [ 106.305435, 28.704365 ], [ 106.304203, 28.64976 ], [ 106.346703, 28.583565 ], [ 106.33192, 28.55308 ], [ 106.37442, 28.525742 ], [ 106.379348, 28.479986 ], [ 106.349167, 28.473674 ], [ 106.304819, 28.505233 ], [ 106.2925, 28.537309 ], [ 106.254928, 28.539412 ], [ 106.184711, 28.58882 ], [ 106.17116, 28.629275 ], [ 106.14837, 28.642932 ], [ 106.103407, 28.636104 ], [ 106.085544, 28.681792 ], [ 106.030726, 28.694917 ], [ 106.001161, 28.743727 ], [ 105.966668, 28.761041 ], [ 105.937719, 28.686517 ], [ 105.889676, 28.670765 ], [ 105.884748, 28.595126 ], [ 105.808372, 28.599855 ], [ 105.78435, 28.610889 ], [ 105.757249, 28.590397 ], [ 105.74493, 28.616668 ], [ 105.712901, 28.586718 ], [ 105.693191, 28.58882 ], [ 105.68272, 28.534154 ], [ 105.62359, 28.517854 ], [ 105.612503, 28.438947 ], [ 105.643916, 28.431053 ], [ 105.655003, 28.362615 ], [ 105.639604, 28.324164 ], [ 105.68888, 28.284119 ], [ 105.730147, 28.271997 ], [ 105.737539, 28.30309 ], [ 105.76464, 28.308359 ], [ 105.76464, 28.308359 ], [ 105.78743, 28.335753 ], [ 105.824386, 28.306251 ], [ 105.848408, 28.255656 ], [ 105.889676, 28.237732 ], [ 105.860727, 28.159672 ], [ 105.895219, 28.119565 ], [ 105.943878, 28.143314 ], [ 105.975907, 28.107952 ], [ 106.093552, 28.162837 ], [ 106.145291, 28.162837 ], [ 106.206885, 28.134343 ], [ 106.266631, 28.066769 ], [ 106.246305, 28.011835 ], [ 106.286341, 28.007079 ], [ 106.328225, 27.952643 ], [ 106.307899, 27.936782 ], [ 106.304819, 27.899237 ], [ 106.325145, 27.898708 ], [ 106.337464, 27.859033 ], [ 106.306667, 27.808756 ], [ 106.242609, 27.767459 ], [ 106.193334, 27.75422 ], [ 106.120653, 27.779638 ], [ 106.063987, 27.776991 ], [ 106.023335, 27.746805 ], [ 105.985146, 27.749983 ], [ 105.92848, 27.729855 ], [ 105.922937, 27.746805 ], [ 105.868118, 27.732504 ], [ 105.848408, 27.707074 ], [ 105.76772, 27.7182 ], [ 105.722756, 27.706015 ], [ 105.720292, 27.683759 ], [ 105.664242, 27.683759 ], [ 105.62359, 27.666269 ], [ 105.605112, 27.715552 ], [ 105.560148, 27.71979 ], [ 105.508409, 27.769048 ], [ 105.44004, 27.775402 ], [ 105.353809, 27.748924 ], [ 105.308229, 27.704955 ], [ 105.290367, 27.712373 ], [ 105.293447, 27.770637 ], [ 105.273736, 27.794992 ], [ 105.313157, 27.810874 ], [ 105.25957, 27.827811 ], [ 105.233084, 27.895534 ], [ 105.284823, 27.935725 ], [ 105.270657, 27.99704 ], [ 105.247867, 28.009193 ], [ 105.218302, 27.990698 ], [ 105.186273, 27.995454 ], [ 105.167795, 28.021345 ], [ 105.186889, 28.054623 ], [ 105.168411, 28.071522 ], [ 105.119752, 28.07205 ], [ 105.061853, 28.096866 ], [ 105.002107, 28.064129 ], [ 104.980549, 28.063073 ], [ 104.975006, 28.020816 ], [ 104.903557, 27.962158 ], [ 104.918339, 27.938897 ], [ 104.888158, 27.914574 ], [ 104.842579, 27.900294 ], [ 104.796999, 27.901352 ], [ 104.761891, 27.884426 ], [ 104.743413, 27.901881 ], [ 104.676275, 27.880723 ], [ 104.63316, 27.850567 ], [ 104.607906, 27.857974 ], [ 104.573413, 27.840512 ], [ 104.52537, 27.889187 ], [ 104.508124, 27.878078 ], [ 104.44961, 27.927794 ], [ 104.40095, 27.952114 ], [ 104.362762, 28.012891 ], [ 104.30856, 28.036136 ], [ 104.304248, 28.050926 ], [ 104.373233, 28.051454 ], [ 104.40095, 28.091586 ], [ 104.448994, 28.113758 ], [ 104.444682, 28.16231 ], [ 104.406494, 28.173389 ], [ 104.402182, 28.202928 ], [ 104.442834, 28.211366 ], [ 104.462544, 28.241422 ], [ 104.44961, 28.269889 ], [ 104.420045, 28.269889 ], [ 104.392943, 28.291497 ], [ 104.384936, 28.329959 ], [ 104.343052, 28.334173 ], [ 104.314103, 28.306778 ], [ 104.282074, 28.343128 ], [ 104.254357, 28.403683 ], [ 104.267908, 28.499448 ], [ 104.260516, 28.536257 ], [ 104.323342, 28.540989 ], [ 104.355987, 28.555183 ], [ 104.375697, 28.5946 ], [ 104.417581, 28.598279 ], [ 104.425588, 28.626649 ], [ 104.372617, 28.649235 ], [ 104.314719, 28.615617 ], [ 104.277147, 28.631902 ], [ 104.252509, 28.660788 ], [ 104.230951, 28.635579 ], [ 104.170589, 28.642932 ], [ 104.117618, 28.634003 ], [ 104.09606, 28.603533 ], [ 104.05972, 28.6277 ], [ 103.953779, 28.600906 ], [ 103.910047, 28.631377 ], [ 103.887873, 28.61982 ], [ 103.850917, 28.66709 ], [ 103.833054, 28.605109 ], [ 103.838598, 28.587244 ], [ 103.802873, 28.563068 ], [ 103.781931, 28.525216 ], [ 103.829975, 28.459995 ], [ 103.828743, 28.44 ], [ 103.860156, 28.383677 ], [ 103.85338, 28.356822 ], [ 103.877402, 28.316262 ], [ 103.828743, 28.285173 ], [ 103.770845, 28.233514 ], [ 103.740048, 28.23615 ], [ 103.701859, 28.198709 ], [ 103.692004, 28.232459 ], [ 103.643961, 28.260401 ], [ 103.573128, 28.230877 ], [ 103.533092, 28.168641 ], [ 103.470266, 28.122204 ], [ 103.430846, 28.044587 ], [ 103.459179, 28.021345 ], [ 103.486281, 28.033495 ], [ 103.515846, 27.965329 ], [ 103.55465, 27.978543 ], [ 103.502295, 27.910343 ], [ 103.509686, 27.843687 ], [ 103.487512, 27.794992 ], [ 103.461027, 27.779638 ], [ 103.393274, 27.709194 ], [ 103.369868, 27.708664 ], [ 103.349542, 27.678459 ], [ 103.29226, 27.632872 ], [ 103.2861, 27.561802 ], [ 103.232514, 27.56976 ], [ 103.19063, 27.523596 ], [ 103.144434, 27.450331 ], [ 103.141355, 27.420586 ], [ 103.080992, 27.396679 ], [ 103.055739, 27.40943 ], [ 102.989833, 27.367983 ], [ 102.941174, 27.405711 ], [ 102.899906, 27.317481 ], [ 102.883892, 27.299401 ], [ 102.883276, 27.258444 ], [ 102.904218, 27.227584 ], [ 102.913457, 27.133886 ], [ 102.870957, 27.026782 ], [ 102.894979, 27.001724 ], [ 102.896211, 26.91264 ], [ 102.949181, 26.843244 ], [ 102.966428, 26.837904 ], [ 102.991681, 26.775409 ], [ 102.983674, 26.76686 ], [ 103.008312, 26.710741 ], [ 103.005232, 26.679195 ], [ 103.026174, 26.664221 ], [ 103.035413, 26.556673 ], [ 103.052659, 26.555602 ], [ 103.052659, 26.514374 ], [ 103.030485, 26.485989 ], [ 102.989833, 26.482775 ], [ 102.988602, 26.413117 ], [ 102.998457, 26.371839 ], [ 102.975667, 26.340736 ], [ 102.893131, 26.338591 ], [ 102.878964, 26.364332 ], [ 102.833385, 26.306406 ], [ 102.785342, 26.298895 ], [ 102.739762, 26.268846 ], [ 102.709581, 26.210336 ], [ 102.659074, 26.221611 ], [ 102.60056, 26.250598 ], [ 102.638748, 26.307479 ], [ 102.629509, 26.336982 ], [ 102.570995, 26.362723 ], [ 102.542046, 26.338591 ], [ 102.440416, 26.300505 ], [ 102.392372, 26.296749 ], [ 102.349257, 26.244694 ], [ 102.245163, 26.212483 ], [ 102.242699, 26.190468 ], [ 102.174946, 26.146961 ], [ 102.152156, 26.10935 ], [ 102.107808, 26.068501 ], [ 102.080091, 26.065275 ], [ 102.020961, 26.096451 ], [ 101.954439, 26.084627 ], [ 101.929186, 26.105588 ], [ 101.899621, 26.099139 ], [ 101.857737, 26.049146 ], [ 101.835563, 26.04592 ], [ 101.839875, 26.082477 ], [ 101.796759, 26.114723 ], [ 101.807846, 26.156093 ], [ 101.773353, 26.168448 ], [ 101.737013, 26.219463 ], [ 101.690202, 26.241473 ], [ 101.630455, 26.224832 ], [ 101.586108, 26.279579 ], [ 101.597195, 26.303187 ], [ 101.64031, 26.318745 ], [ 101.660636, 26.346635 ], [ 101.635383, 26.357361 ], [ 101.637847, 26.388995 ], [ 101.565782, 26.454381 ], [ 101.530057, 26.467239 ], [ 101.506652, 26.499915 ], [ 101.458608, 26.49563 ], [ 101.422884, 26.53151 ], [ 101.395783, 26.591998 ], [ 101.402558, 26.604841 ], [ 101.461688, 26.606447 ], [ 101.461072, 26.640687 ], [ 101.481398, 26.673313 ], [ 101.453065, 26.692563 ], [ 101.513427, 26.768463 ], [ 101.466, 26.786629 ], [ 101.445674, 26.77434 ], [ 101.458608, 26.731054 ], [ 101.435819, 26.740675 ], [ 101.389623, 26.723036 ], [ 101.387159, 26.753501 ], [ 101.358826, 26.771669 ], [ 101.399478, 26.841642 ], [ 101.365602, 26.883819 ], [ 101.311399, 26.903034 ], [ 101.267667, 26.903034 ], [ 101.264587, 26.955323 ], [ 101.227015, 26.959057 ], [ 101.228863, 26.981992 ], [ 101.136472, 27.023584 ], [ 101.157414, 27.094999 ], [ 101.145095, 27.103523 ], [ 101.170349, 27.175421 ], [ 101.167885, 27.198311 ] ] ], [ [ [ 106.264167, 30.20974 ], [ 106.260471, 30.19681 ], [ 106.260471, 30.204051 ], [ 106.260471, 30.207672 ], [ 106.264167, 30.20974 ] ] ], [ [ [ 106.976809, 30.088127 ], [ 106.977425, 30.087609 ], [ 106.978656, 30.087609 ], [ 106.979888, 30.088127 ], [ 106.980504, 30.087609 ], [ 106.981736, 30.08502 ], [ 106.976193, 30.083467 ], [ 106.975577, 30.088127 ], [ 106.976809, 30.088127 ] ] ], [ [ [ 105.558916, 30.18543 ], [ 105.56138, 30.183878 ], [ 105.550909, 30.179222 ], [ 105.556453, 30.187499 ], [ 105.558916, 30.18543 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"520000\", \"name\": \"贵州省\", \"center\": [ 106.713478, 26.578343 ], \"centroid\": [ 106.880457, 26.826368 ], \"childrenNum\": 9, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 23, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 109.274262, 28.494714 ], [ 109.260712, 28.46473 ], [ 109.264407, 28.392628 ], [ 109.289045, 28.373673 ], [ 109.268719, 28.33786 ], [ 109.275494, 28.313101 ], [ 109.317994, 28.277795 ], [ 109.33524, 28.293605 ], [ 109.388211, 28.268307 ], [ 109.367885, 28.254602 ], [ 109.340168, 28.19027 ], [ 109.33832, 28.141731 ], [ 109.314298, 28.103729 ], [ 109.298284, 28.036136 ], [ 109.335856, 28.063073 ], [ 109.378972, 28.034551 ], [ 109.362342, 28.007608 ], [ 109.319842, 27.988585 ], [ 109.30198, 27.956343 ], [ 109.32169, 27.868027 ], [ 109.346943, 27.838396 ], [ 109.332777, 27.782815 ], [ 109.37774, 27.736741 ], [ 109.366653, 27.721909 ], [ 109.414081, 27.725087 ], [ 109.470747, 27.680049 ], [ 109.45658, 27.673689 ], [ 109.470131, 27.62863 ], [ 109.451037, 27.586204 ], [ 109.461508, 27.567637 ], [ 109.404841, 27.55066 ], [ 109.303211, 27.47582 ], [ 109.300132, 27.423774 ], [ 109.245313, 27.41793 ], [ 109.202197, 27.450331 ], [ 109.167089, 27.41793 ], [ 109.141835, 27.448207 ], [ 109.142451, 27.418461 ], [ 109.103647, 27.336621 ], [ 109.044517, 27.331304 ], [ 109.053756, 27.293551 ], [ 108.983539, 27.26802 ], [ 108.963213, 27.235565 ], [ 108.907778, 27.204699 ], [ 108.926873, 27.160512 ], [ 108.878829, 27.106187 ], [ 108.79075, 27.084343 ], [ 108.877597, 27.01612 ], [ 108.942887, 27.017186 ], [ 108.942887, 27.017186 ], [ 108.940423, 27.044907 ], [ 109.007561, 27.08008 ], [ 109.032814, 27.104056 ], [ 109.128901, 27.122701 ], [ 109.101183, 27.06889 ], [ 109.165857, 27.066758 ], [ 109.21698, 27.114711 ], [ 109.239154, 27.14933 ], [ 109.264407, 27.131755 ], [ 109.33524, 27.139212 ], [ 109.358646, 27.153058 ], [ 109.415312, 27.154123 ], [ 109.441182, 27.117907 ], [ 109.472595, 27.134951 ], [ 109.454733, 27.069423 ], [ 109.486761, 27.053968 ], [ 109.497848, 27.079548 ], [ 109.520022, 27.058764 ], [ 109.555131, 26.946788 ], [ 109.436254, 26.892359 ], [ 109.452885, 26.861932 ], [ 109.467051, 26.83203 ], [ 109.47629, 26.829894 ], [ 109.486761, 26.759913 ], [ 109.447957, 26.759913 ], [ 109.407305, 26.719829 ], [ 109.35495, 26.693098 ], [ 109.283501, 26.698445 ], [ 109.306291, 26.661012 ], [ 109.334008, 26.646036 ], [ 109.35495, 26.658873 ], [ 109.390675, 26.598955 ], [ 109.407305, 26.533116 ], [ 109.381436, 26.518659 ], [ 109.385747, 26.493487 ], [ 109.362342, 26.472061 ], [ 109.38082, 26.454381 ], [ 109.319842, 26.418477 ], [ 109.29582, 26.350389 ], [ 109.271183, 26.327863 ], [ 109.285965, 26.295676 ], [ 109.325385, 26.29031 ], [ 109.351255, 26.264016 ], [ 109.369733, 26.277432 ], [ 109.442414, 26.289774 ], [ 109.467051, 26.313917 ], [ 109.439334, 26.238789 ], [ 109.47629, 26.148035 ], [ 109.513863, 26.128157 ], [ 109.502776, 26.096451 ], [ 109.449805, 26.101826 ], [ 109.452885, 26.055598 ], [ 109.48245, 26.029788 ], [ 109.462124, 25.995367 ], [ 109.408537, 25.967392 ], [ 109.435022, 25.93349 ], [ 109.396834, 25.900117 ], [ 109.359262, 25.836036 ], [ 109.339552, 25.83442 ], [ 109.327849, 25.76168 ], [ 109.340168, 25.731493 ], [ 109.296436, 25.71424 ], [ 109.207125, 25.740119 ], [ 109.206509, 25.788087 ], [ 109.147995, 25.741736 ], [ 109.13198, 25.762758 ], [ 109.143683, 25.795092 ], [ 109.095024, 25.80533 ], [ 109.077778, 25.776771 ], [ 109.048213, 25.790781 ], [ 108.989698, 25.778926 ], [ 108.999553, 25.765453 ], [ 108.963829, 25.732572 ], [ 108.940423, 25.740119 ], [ 108.896076, 25.71424 ], [ 108.900387, 25.682423 ], [ 108.953974, 25.686738 ], [ 108.953974, 25.686738 ], [ 109.007561, 25.734728 ], [ 109.043285, 25.738502 ], [ 109.07901, 25.72071 ], [ 109.075314, 25.693749 ], [ 109.030966, 25.629556 ], [ 109.051908, 25.566949 ], [ 109.088249, 25.550752 ], [ 109.024807, 25.51241 ], [ 108.949046, 25.557231 ], [ 108.8893, 25.543193 ], [ 108.890532, 25.556151 ], [ 108.826474, 25.550212 ], [ 108.814772, 25.526992 ], [ 108.781511, 25.554531 ], [ 108.799989, 25.576666 ], [ 108.783975, 25.628477 ], [ 108.724844, 25.634952 ], [ 108.68912, 25.623081 ], [ 108.68604, 25.587462 ], [ 108.660787, 25.584763 ], [ 108.658323, 25.550212 ], [ 108.68912, 25.533473 ], [ 108.634917, 25.520512 ], [ 108.6072, 25.491885 ], [ 108.600425, 25.432448 ], [ 108.62999, 25.335666 ], [ 108.625062, 25.308076 ], [ 108.589338, 25.335125 ], [ 108.585642, 25.365952 ], [ 108.471693, 25.458928 ], [ 108.418723, 25.443257 ], [ 108.400244, 25.491344 ], [ 108.359592, 25.513491 ], [ 108.348506, 25.536173 ], [ 108.308469, 25.525912 ], [ 108.280752, 25.48 ], [ 108.241332, 25.46217 ], [ 108.251803, 25.430286 ], [ 108.192673, 25.458928 ], [ 108.162492, 25.444878 ], [ 108.193289, 25.405421 ], [ 108.142782, 25.390825 ], [ 108.152021, 25.324306 ], [ 108.143398, 25.269658 ], [ 108.115065, 25.210112 ], [ 108.080572, 25.193867 ], [ 108.001732, 25.196574 ], [ 107.928435, 25.155954 ], [ 107.872384, 25.141327 ], [ 107.839124, 25.115861 ], [ 107.762747, 25.125073 ], [ 107.789233, 25.15487 ], [ 107.760283, 25.188451 ], [ 107.762131, 25.229061 ], [ 107.741805, 25.24043 ], [ 107.700537, 25.194408 ], [ 107.696226, 25.219858 ], [ 107.661733, 25.258833 ], [ 107.659885, 25.316192 ], [ 107.632168, 25.310241 ], [ 107.599523, 25.250714 ], [ 107.576734, 25.256668 ], [ 107.512676, 25.209029 ], [ 107.472024, 25.213902 ], [ 107.489886, 25.276693 ], [ 107.481263, 25.299961 ], [ 107.432604, 25.289139 ], [ 107.409198, 25.347024 ], [ 107.420901, 25.392987 ], [ 107.375937, 25.411908 ], [ 107.358691, 25.393528 ], [ 107.318039, 25.401637 ], [ 107.308184, 25.432988 ], [ 107.336517, 25.461089 ], [ 107.263836, 25.543193 ], [ 107.232423, 25.556691 ], [ 107.228728, 25.604733 ], [ 107.205322, 25.607971 ], [ 107.185612, 25.578825 ], [ 107.064272, 25.559391 ], [ 107.066736, 25.50917 ], [ 107.015613, 25.495666 ], [ 106.996519, 25.442716 ], [ 106.963874, 25.437852 ], [ 106.987896, 25.358922 ], [ 107.012533, 25.352973 ], [ 107.013765, 25.275611 ], [ 106.975577, 25.232851 ], [ 106.933077, 25.250714 ], [ 106.904128, 25.231768 ], [ 106.888113, 25.181953 ], [ 106.853005, 25.186827 ], [ 106.787715, 25.17112 ], [ 106.764926, 25.183036 ], [ 106.732281, 25.162454 ], [ 106.691013, 25.179245 ], [ 106.644817, 25.164621 ], [ 106.63989, 25.132658 ], [ 106.590615, 25.08768 ], [ 106.551195, 25.082802 ], [ 106.519782, 25.054072 ], [ 106.450181, 25.033468 ], [ 106.442173, 25.019369 ], [ 106.332536, 24.988454 ], [ 106.304819, 24.973807 ], [ 106.253696, 24.971094 ], [ 106.215508, 24.981944 ], [ 106.191486, 24.95319 ], [ 106.145291, 24.954275 ], [ 106.197645, 24.885889 ], [ 106.206269, 24.851139 ], [ 106.173008, 24.760417 ], [ 106.150218, 24.762591 ], [ 106.113878, 24.714216 ], [ 106.047356, 24.684312 ], [ 106.024566, 24.633186 ], [ 105.961741, 24.677786 ], [ 105.942031, 24.725088 ], [ 105.863806, 24.729437 ], [ 105.827466, 24.702799 ], [ 105.767104, 24.719109 ], [ 105.70551, 24.768569 ], [ 105.617431, 24.78161 ], [ 105.607576, 24.803885 ], [ 105.573083, 24.797366 ], [ 105.497322, 24.809318 ], [ 105.493011, 24.833217 ], [ 105.457286, 24.87123 ], [ 105.428337, 24.930941 ], [ 105.365511, 24.943423 ], [ 105.334099, 24.9266 ], [ 105.267577, 24.929313 ], [ 105.251563, 24.967296 ], [ 105.212758, 24.995505 ], [ 105.178266, 24.985199 ], [ 105.157324, 24.958616 ], [ 105.131454, 24.959701 ], [ 105.09573, 24.92877 ], [ 105.077868, 24.918459 ], [ 105.039064, 24.872859 ], [ 105.026745, 24.815836 ], [ 105.03352, 24.787586 ], [ 104.899245, 24.752809 ], [ 104.865985, 24.730524 ], [ 104.841963, 24.676155 ], [ 104.771746, 24.659839 ], [ 104.729246, 24.617953 ], [ 104.703377, 24.645698 ], [ 104.628848, 24.660927 ], [ 104.595587, 24.709323 ], [ 104.529682, 24.731611 ], [ 104.542616, 24.75607 ], [ 104.539537, 24.813663 ], [ 104.586964, 24.872859 ], [ 104.635623, 24.903803 ], [ 104.663957, 24.964584 ], [ 104.713232, 24.996048 ], [ 104.684898, 25.054072 ], [ 104.619609, 25.060577 ], [ 104.685514, 25.078466 ], [ 104.695369, 25.122364 ], [ 104.732326, 25.167871 ], [ 104.724319, 25.195491 ], [ 104.753884, 25.214443 ], [ 104.801927, 25.163537 ], [ 104.822869, 25.170037 ], [ 104.806854, 25.224189 ], [ 104.826565, 25.235558 ], [ 104.816094, 25.262622 ], [ 104.736021, 25.268034 ], [ 104.689826, 25.296173 ], [ 104.639935, 25.295632 ], [ 104.646094, 25.356759 ], [ 104.615913, 25.364871 ], [ 104.566638, 25.402719 ], [ 104.543232, 25.400556 ], [ 104.556783, 25.524832 ], [ 104.524138, 25.526992 ], [ 104.483486, 25.494585 ], [ 104.44961, 25.495126 ], [ 104.434827, 25.472436 ], [ 104.418813, 25.499447 ], [ 104.436059, 25.520512 ], [ 104.428668, 25.576126 ], [ 104.389248, 25.595558 ], [ 104.332581, 25.598796 ], [ 104.310407, 25.647901 ], [ 104.328886, 25.760602 ], [ 104.370769, 25.730415 ], [ 104.397871, 25.76168 ], [ 104.42374, 25.841961 ], [ 104.441602, 25.868889 ], [ 104.414501, 25.909807 ], [ 104.438523, 25.92757 ], [ 104.470552, 26.009352 ], [ 104.460081, 26.085702 ], [ 104.499501, 26.070651 ], [ 104.52845, 26.114186 ], [ 104.518595, 26.165762 ], [ 104.548776, 26.226979 ], [ 104.542616, 26.253282 ], [ 104.592508, 26.317672 ], [ 104.659645, 26.335373 ], [ 104.684283, 26.3772 ], [ 104.664572, 26.397572 ], [ 104.665804, 26.434019 ], [ 104.631928, 26.451702 ], [ 104.638703, 26.477954 ], [ 104.598667, 26.520801 ], [ 104.57095, 26.524549 ], [ 104.579573, 26.568449 ], [ 104.556783, 26.590393 ], [ 104.488414, 26.579689 ], [ 104.459465, 26.602701 ], [ 104.468088, 26.644431 ], [ 104.424356, 26.709137 ], [ 104.398487, 26.686147 ], [ 104.353523, 26.620893 ], [ 104.313487, 26.612867 ], [ 104.274683, 26.633733 ], [ 104.268524, 26.617683 ], [ 104.222328, 26.620358 ], [ 104.160734, 26.646571 ], [ 104.121314, 26.638012 ], [ 104.068343, 26.573266 ], [ 104.067727, 26.51491 ], [ 104.008597, 26.511697 ], [ 103.953163, 26.521336 ], [ 103.865699, 26.512232 ], [ 103.819504, 26.529903 ], [ 103.815808, 26.55239 ], [ 103.763453, 26.585041 ], [ 103.748671, 26.623568 ], [ 103.759142, 26.689355 ], [ 103.773308, 26.716621 ], [ 103.725265, 26.742812 ], [ 103.705555, 26.794642 ], [ 103.722185, 26.851253 ], [ 103.779468, 26.87421 ], [ 103.763453, 26.905702 ], [ 103.775156, 26.951056 ], [ 103.753598, 26.963858 ], [ 103.73204, 27.018785 ], [ 103.704939, 27.049171 ], [ 103.675374, 27.051836 ], [ 103.623019, 27.007056 ], [ 103.623635, 27.035312 ], [ 103.601461, 27.061962 ], [ 103.614396, 27.079548 ], [ 103.659975, 27.065692 ], [ 103.652584, 27.092868 ], [ 103.620555, 27.096598 ], [ 103.63349, 27.12057 ], [ 103.696316, 27.126429 ], [ 103.748671, 27.210021 ], [ 103.801641, 27.250464 ], [ 103.80041, 27.26536 ], [ 103.865699, 27.28185 ], [ 103.874322, 27.331304 ], [ 103.903271, 27.347785 ], [ 103.905119, 27.38552 ], [ 103.932221, 27.443958 ], [ 103.956242, 27.425367 ], [ 104.015372, 27.429086 ], [ 104.01722, 27.383926 ], [ 104.084358, 27.330773 ], [ 104.113923, 27.338216 ], [ 104.173053, 27.263232 ], [ 104.210625, 27.297273 ], [ 104.248813, 27.291955 ], [ 104.247582, 27.336621 ], [ 104.295625, 27.37436 ], [ 104.30856, 27.407305 ], [ 104.363378, 27.467855 ], [ 104.467472, 27.414211 ], [ 104.497037, 27.414743 ], [ 104.539537, 27.327583 ], [ 104.570334, 27.331836 ], [ 104.611602, 27.306846 ], [ 104.7545, 27.345658 ], [ 104.77113, 27.317481 ], [ 104.824717, 27.3531 ], [ 104.856746, 27.332368 ], [ 104.851818, 27.299401 ], [ 104.871528, 27.290891 ], [ 104.913412, 27.327051 ], [ 105.01073, 27.379143 ], [ 105.068013, 27.418461 ], [ 105.120984, 27.418461 ], [ 105.184425, 27.392959 ], [ 105.182577, 27.367451 ], [ 105.233084, 27.436522 ], [ 105.234316, 27.489093 ], [ 105.260186, 27.514573 ], [ 105.232469, 27.546945 ], [ 105.25649, 27.582491 ], [ 105.304533, 27.611661 ], [ 105.29591, 27.631811 ], [ 105.308229, 27.704955 ], [ 105.353809, 27.748924 ], [ 105.44004, 27.775402 ], [ 105.508409, 27.769048 ], [ 105.560148, 27.71979 ], [ 105.605112, 27.715552 ], [ 105.62359, 27.666269 ], [ 105.664242, 27.683759 ], [ 105.720292, 27.683759 ], [ 105.722756, 27.706015 ], [ 105.76772, 27.7182 ], [ 105.848408, 27.707074 ], [ 105.868118, 27.732504 ], [ 105.922937, 27.746805 ], [ 105.92848, 27.729855 ], [ 105.985146, 27.749983 ], [ 106.023335, 27.746805 ], [ 106.063987, 27.776991 ], [ 106.120653, 27.779638 ], [ 106.193334, 27.75422 ], [ 106.242609, 27.767459 ], [ 106.306667, 27.808756 ], [ 106.337464, 27.859033 ], [ 106.325145, 27.898708 ], [ 106.304819, 27.899237 ], [ 106.307899, 27.936782 ], [ 106.328225, 27.952643 ], [ 106.286341, 28.007079 ], [ 106.246305, 28.011835 ], [ 106.266631, 28.066769 ], [ 106.206885, 28.134343 ], [ 106.145291, 28.162837 ], [ 106.093552, 28.162837 ], [ 105.975907, 28.107952 ], [ 105.943878, 28.143314 ], [ 105.895219, 28.119565 ], [ 105.860727, 28.159672 ], [ 105.889676, 28.237732 ], [ 105.848408, 28.255656 ], [ 105.824386, 28.306251 ], [ 105.78743, 28.335753 ], [ 105.76464, 28.308359 ], [ 105.76464, 28.308359 ], [ 105.737539, 28.30309 ], [ 105.730147, 28.271997 ], [ 105.68888, 28.284119 ], [ 105.639604, 28.324164 ], [ 105.655003, 28.362615 ], [ 105.643916, 28.431053 ], [ 105.612503, 28.438947 ], [ 105.62359, 28.517854 ], [ 105.68272, 28.534154 ], [ 105.693191, 28.58882 ], [ 105.712901, 28.586718 ], [ 105.74493, 28.616668 ], [ 105.757249, 28.590397 ], [ 105.78435, 28.610889 ], [ 105.808372, 28.599855 ], [ 105.884748, 28.595126 ], [ 105.889676, 28.670765 ], [ 105.937719, 28.686517 ], [ 105.966668, 28.761041 ], [ 106.001161, 28.743727 ], [ 106.030726, 28.694917 ], [ 106.085544, 28.681792 ], [ 106.103407, 28.636104 ], [ 106.14837, 28.642932 ], [ 106.17116, 28.629275 ], [ 106.184711, 28.58882 ], [ 106.254928, 28.539412 ], [ 106.2925, 28.537309 ], [ 106.304819, 28.505233 ], [ 106.349167, 28.473674 ], [ 106.379348, 28.479986 ], [ 106.37442, 28.525742 ], [ 106.403369, 28.569901 ], [ 106.477282, 28.530474 ], [ 106.504999, 28.544669 ], [ 106.466811, 28.586193 ], [ 106.49268, 28.591448 ], [ 106.502535, 28.661313 ], [ 106.528405, 28.677591 ], [ 106.492064, 28.742153 ], [ 106.461883, 28.761041 ], [ 106.45326, 28.817162 ], [ 106.474202, 28.832891 ], [ 106.561666, 28.756319 ], [ 106.56105, 28.719062 ], [ 106.587535, 28.691767 ], [ 106.6171, 28.691242 ], [ 106.617716, 28.66709 ], [ 106.651593, 28.649235 ], [ 106.618332, 28.645033 ], [ 106.63681, 28.622972 ], [ 106.606629, 28.593024 ], [ 106.615252, 28.549401 ], [ 106.567825, 28.523638 ], [ 106.564745, 28.485247 ], [ 106.632499, 28.503655 ], [ 106.697788, 28.47683 ], [ 106.708259, 28.450524 ], [ 106.747063, 28.467361 ], [ 106.726121, 28.51838 ], [ 106.73844, 28.554657 ], [ 106.77786, 28.563068 ], [ 106.756918, 28.607211 ], [ 106.784636, 28.626649 ], [ 106.807425, 28.589346 ], [ 106.830831, 28.623497 ], [ 106.866556, 28.624548 ], [ 106.889345, 28.695966 ], [ 106.86594, 28.690192 ], [ 106.824056, 28.756319 ], [ 106.845614, 28.780975 ], [ 106.872099, 28.777304 ], [ 106.923222, 28.809821 ], [ 106.951555, 28.766812 ], [ 106.988512, 28.776254 ], [ 106.983584, 28.851239 ], [ 107.019308, 28.861722 ], [ 107.016229, 28.882685 ], [ 107.14188, 28.887925 ], [ 107.206554, 28.868535 ], [ 107.194851, 28.838134 ], [ 107.227496, 28.836037 ], [ 107.210866, 28.817686 ], [ 107.219489, 28.772582 ], [ 107.24659, 28.76209 ], [ 107.261373, 28.792514 ], [ 107.327894, 28.810869 ], [ 107.339597, 28.845997 ], [ 107.383945, 28.848618 ], [ 107.41351, 28.911502 ], [ 107.441227, 28.943977 ], [ 107.412894, 28.960211 ], [ 107.396879, 28.993718 ], [ 107.364235, 29.00942 ], [ 107.395647, 29.041341 ], [ 107.369778, 29.091558 ], [ 107.412278, 29.094696 ], [ 107.427676, 29.128682 ], [ 107.408582, 29.138091 ], [ 107.401807, 29.184603 ], [ 107.441227, 29.203934 ], [ 107.486806, 29.174153 ], [ 107.570574, 29.218037 ], [ 107.589052, 29.150113 ], [ 107.605683, 29.164747 ], [ 107.659885, 29.162656 ], [ 107.700537, 29.141228 ], [ 107.749197, 29.199754 ], [ 107.810791, 29.139137 ], [ 107.784921, 29.048143 ], [ 107.823725, 29.034016 ], [ 107.810175, 28.984295 ], [ 107.867457, 28.960211 ], [ 107.882855, 29.00628 ], [ 107.908725, 29.007327 ], [ 107.925971, 29.032446 ], [ 108.026369, 29.039772 ], [ 108.070717, 29.086328 ], [ 108.150173, 29.053375 ], [ 108.193289, 29.072207 ], [ 108.256115, 29.040295 ], [ 108.277673, 29.091558 ], [ 108.306622, 29.079006 ], [ 108.297999, 29.045527 ], [ 108.319556, 28.961258 ], [ 108.345426, 28.943453 ], [ 108.357745, 28.893165 ], [ 108.346658, 28.859625 ], [ 108.352817, 28.815589 ], [ 108.386078, 28.803003 ], [ 108.385462, 28.772058 ], [ 108.347274, 28.736381 ], [ 108.332491, 28.679166 ], [ 108.439049, 28.634003 ], [ 108.501258, 28.626649 ], [ 108.50249, 28.63768 ], [ 108.575787, 28.659738 ], [ 108.636149, 28.621396 ], [ 108.604736, 28.590922 ], [ 108.610896, 28.539412 ], [ 108.573939, 28.531 ], [ 108.586874, 28.463678 ], [ 108.609664, 28.43579 ], [ 108.609048, 28.407368 ], [ 108.576403, 28.38631 ], [ 108.580099, 28.343128 ], [ 108.611512, 28.324691 ], [ 108.667562, 28.334173 ], [ 108.656475, 28.359981 ], [ 108.697127, 28.401051 ], [ 108.688504, 28.422106 ], [ 108.640461, 28.456838 ], [ 108.657091, 28.47683 ], [ 108.700207, 28.48209 ], [ 108.709446, 28.501026 ], [ 108.746402, 28.45105 ], [ 108.780279, 28.42579 ], [ 108.759953, 28.389995 ], [ 108.783359, 28.380518 ], [ 108.761801, 28.304143 ], [ 108.726692, 28.282011 ], [ 108.738395, 28.228241 ], [ 108.772888, 28.212949 ], [ 108.821547, 28.245113 ], [ 108.855424, 28.199764 ], [ 108.89546, 28.219804 ], [ 108.923793, 28.217167 ], [ 108.929952, 28.19027 ], [ 109.005713, 28.162837 ], [ 109.026655, 28.220331 ], [ 109.086401, 28.184467 ], [ 109.101799, 28.202401 ], [ 109.081473, 28.247749 ], [ 109.117198, 28.277795 ], [ 109.152306, 28.349975 ], [ 109.153538, 28.417369 ], [ 109.191726, 28.471043 ], [ 109.23361, 28.474726 ], [ 109.274262, 28.494714 ] ] ], [ [ [ 109.47629, 26.829894 ], [ 109.467051, 26.83203 ], [ 109.452885, 26.861932 ], [ 109.486761, 26.895562 ], [ 109.509551, 26.877947 ], [ 109.513247, 26.84004 ], [ 109.497232, 26.815474 ], [ 109.522486, 26.749226 ], [ 109.52187, 26.749226 ], [ 109.486761, 26.759913 ], [ 109.47629, 26.829894 ] ] ], [ [ [ 109.528645, 26.743881 ], [ 109.554515, 26.73533 ], [ 109.597015, 26.756173 ], [ 109.568065, 26.726243 ], [ 109.528645, 26.743881 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"530000\", \"name\": \"云南省\", \"center\": [ 102.712251, 25.040609 ], \"centroid\": [ 101.485106, 25.008644 ], \"childrenNum\": 16, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 24, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 105.308229, 27.704955 ], [ 105.29591, 27.631811 ], [ 105.304533, 27.611661 ], [ 105.25649, 27.582491 ], [ 105.232469, 27.546945 ], [ 105.260186, 27.514573 ], [ 105.234316, 27.489093 ], [ 105.233084, 27.436522 ], [ 105.182577, 27.367451 ], [ 105.184425, 27.392959 ], [ 105.120984, 27.418461 ], [ 105.068013, 27.418461 ], [ 105.01073, 27.379143 ], [ 104.913412, 27.327051 ], [ 104.871528, 27.290891 ], [ 104.851818, 27.299401 ], [ 104.856746, 27.332368 ], [ 104.824717, 27.3531 ], [ 104.77113, 27.317481 ], [ 104.7545, 27.345658 ], [ 104.611602, 27.306846 ], [ 104.570334, 27.331836 ], [ 104.539537, 27.327583 ], [ 104.497037, 27.414743 ], [ 104.467472, 27.414211 ], [ 104.363378, 27.467855 ], [ 104.30856, 27.407305 ], [ 104.295625, 27.37436 ], [ 104.247582, 27.336621 ], [ 104.248813, 27.291955 ], [ 104.210625, 27.297273 ], [ 104.173053, 27.263232 ], [ 104.113923, 27.338216 ], [ 104.084358, 27.330773 ], [ 104.01722, 27.383926 ], [ 104.015372, 27.429086 ], [ 103.956242, 27.425367 ], [ 103.932221, 27.443958 ], [ 103.905119, 27.38552 ], [ 103.903271, 27.347785 ], [ 103.874322, 27.331304 ], [ 103.865699, 27.28185 ], [ 103.80041, 27.26536 ], [ 103.801641, 27.250464 ], [ 103.748671, 27.210021 ], [ 103.696316, 27.126429 ], [ 103.63349, 27.12057 ], [ 103.620555, 27.096598 ], [ 103.652584, 27.092868 ], [ 103.659975, 27.065692 ], [ 103.614396, 27.079548 ], [ 103.601461, 27.061962 ], [ 103.623635, 27.035312 ], [ 103.623019, 27.007056 ], [ 103.675374, 27.051836 ], [ 103.704939, 27.049171 ], [ 103.73204, 27.018785 ], [ 103.753598, 26.963858 ], [ 103.775156, 26.951056 ], [ 103.763453, 26.905702 ], [ 103.779468, 26.87421 ], [ 103.722185, 26.851253 ], [ 103.705555, 26.794642 ], [ 103.725265, 26.742812 ], [ 103.773308, 26.716621 ], [ 103.759142, 26.689355 ], [ 103.748671, 26.623568 ], [ 103.763453, 26.585041 ], [ 103.815808, 26.55239 ], [ 103.819504, 26.529903 ], [ 103.865699, 26.512232 ], [ 103.953163, 26.521336 ], [ 104.008597, 26.511697 ], [ 104.067727, 26.51491 ], [ 104.068343, 26.573266 ], [ 104.121314, 26.638012 ], [ 104.160734, 26.646571 ], [ 104.222328, 26.620358 ], [ 104.268524, 26.617683 ], [ 104.274683, 26.633733 ], [ 104.313487, 26.612867 ], [ 104.353523, 26.620893 ], [ 104.398487, 26.686147 ], [ 104.424356, 26.709137 ], [ 104.468088, 26.644431 ], [ 104.459465, 26.602701 ], [ 104.488414, 26.579689 ], [ 104.556783, 26.590393 ], [ 104.579573, 26.568449 ], [ 104.57095, 26.524549 ], [ 104.598667, 26.520801 ], [ 104.638703, 26.477954 ], [ 104.631928, 26.451702 ], [ 104.665804, 26.434019 ], [ 104.664572, 26.397572 ], [ 104.684283, 26.3772 ], [ 104.659645, 26.335373 ], [ 104.592508, 26.317672 ], [ 104.542616, 26.253282 ], [ 104.548776, 26.226979 ], [ 104.518595, 26.165762 ], [ 104.52845, 26.114186 ], [ 104.499501, 26.070651 ], [ 104.460081, 26.085702 ], [ 104.470552, 26.009352 ], [ 104.438523, 25.92757 ], [ 104.414501, 25.909807 ], [ 104.441602, 25.868889 ], [ 104.42374, 25.841961 ], [ 104.397871, 25.76168 ], [ 104.370769, 25.730415 ], [ 104.328886, 25.760602 ], [ 104.310407, 25.647901 ], [ 104.332581, 25.598796 ], [ 104.389248, 25.595558 ], [ 104.428668, 25.576126 ], [ 104.436059, 25.520512 ], [ 104.418813, 25.499447 ], [ 104.434827, 25.472436 ], [ 104.44961, 25.495126 ], [ 104.483486, 25.494585 ], [ 104.524138, 25.526992 ], [ 104.556783, 25.524832 ], [ 104.543232, 25.400556 ], [ 104.566638, 25.402719 ], [ 104.615913, 25.364871 ], [ 104.646094, 25.356759 ], [ 104.639935, 25.295632 ], [ 104.689826, 25.296173 ], [ 104.736021, 25.268034 ], [ 104.816094, 25.262622 ], [ 104.826565, 25.235558 ], [ 104.806854, 25.224189 ], [ 104.822869, 25.170037 ], [ 104.801927, 25.163537 ], [ 104.753884, 25.214443 ], [ 104.724319, 25.195491 ], [ 104.732326, 25.167871 ], [ 104.695369, 25.122364 ], [ 104.685514, 25.078466 ], [ 104.619609, 25.060577 ], [ 104.684898, 25.054072 ], [ 104.713232, 24.996048 ], [ 104.663957, 24.964584 ], [ 104.635623, 24.903803 ], [ 104.586964, 24.872859 ], [ 104.539537, 24.813663 ], [ 104.542616, 24.75607 ], [ 104.529682, 24.731611 ], [ 104.489646, 24.653313 ], [ 104.520443, 24.535228 ], [ 104.550008, 24.518894 ], [ 104.575877, 24.424661 ], [ 104.616529, 24.421937 ], [ 104.63008, 24.397958 ], [ 104.610986, 24.377246 ], [ 104.641783, 24.367979 ], [ 104.70892, 24.321087 ], [ 104.721239, 24.340173 ], [ 104.703377, 24.419757 ], [ 104.715695, 24.441552 ], [ 104.74834, 24.435559 ], [ 104.765587, 24.45953 ], [ 104.784681, 24.443732 ], [ 104.83642, 24.446456 ], [ 104.914028, 24.426296 ], [ 104.930042, 24.411038 ], [ 104.979933, 24.412673 ], [ 105.042759, 24.442097 ], [ 105.106817, 24.414853 ], [ 105.111744, 24.37234 ], [ 105.138846, 24.376701 ], [ 105.188121, 24.347261 ], [ 105.196744, 24.326541 ], [ 105.164715, 24.288362 ], [ 105.215222, 24.214699 ], [ 105.24294, 24.208695 ], [ 105.229389, 24.165567 ], [ 105.182577, 24.167205 ], [ 105.20044, 24.105491 ], [ 105.260186, 24.061236 ], [ 105.292831, 24.074896 ], [ 105.273121, 24.092927 ], [ 105.320548, 24.116416 ], [ 105.334099, 24.094566 ], [ 105.395692, 24.065607 ], [ 105.406163, 24.043748 ], [ 105.493011, 24.016965 ], [ 105.533663, 24.130071 ], [ 105.594641, 24.137718 ], [ 105.628518, 24.126794 ], [ 105.649459, 24.032816 ], [ 105.704278, 24.0667 ], [ 105.739387, 24.059596 ], [ 105.765256, 24.073804 ], [ 105.802212, 24.051945 ], [ 105.796669, 24.023524 ], [ 105.841633, 24.03063 ], [ 105.859495, 24.056864 ], [ 105.89214, 24.040468 ], [ 105.908154, 24.069432 ], [ 105.901995, 24.099482 ], [ 105.919241, 24.122425 ], [ 105.963589, 24.110954 ], [ 105.998081, 24.120786 ], [ 106.011632, 24.099482 ], [ 106.04982, 24.089649 ], [ 106.053516, 24.051399 ], [ 106.096631, 24.018058 ], [ 106.091088, 23.998924 ], [ 106.128044, 23.956819 ], [ 106.157609, 23.891174 ], [ 106.192718, 23.879135 ], [ 106.173008, 23.861622 ], [ 106.192102, 23.824947 ], [ 106.136667, 23.795381 ], [ 106.157609, 23.724175 ], [ 106.149602, 23.665538 ], [ 106.120653, 23.605229 ], [ 106.141595, 23.569579 ], [ 106.08616, 23.524043 ], [ 106.071994, 23.495506 ], [ 106.039965, 23.484529 ], [ 105.999929, 23.447748 ], [ 105.986378, 23.489469 ], [ 105.935871, 23.508678 ], [ 105.913081, 23.499348 ], [ 105.89214, 23.52514 ], [ 105.852103, 23.526786 ], [ 105.815763, 23.507031 ], [ 105.805908, 23.467512 ], [ 105.758481, 23.459826 ], [ 105.699966, 23.40162 ], [ 105.637757, 23.404366 ], [ 105.694423, 23.363168 ], [ 105.699966, 23.327453 ], [ 105.649459, 23.346136 ], [ 105.593409, 23.312614 ], [ 105.560148, 23.257093 ], [ 105.526272, 23.234548 ], [ 105.542902, 23.184495 ], [ 105.50225, 23.202648 ], [ 105.445584, 23.292827 ], [ 105.416018, 23.283482 ], [ 105.372903, 23.317561 ], [ 105.353809, 23.362069 ], [ 105.325475, 23.390086 ], [ 105.260186, 23.31811 ], [ 105.238012, 23.26424 ], [ 105.181962, 23.279084 ], [ 105.122215, 23.247745 ], [ 105.093266, 23.260942 ], [ 104.958991, 23.188896 ], [ 104.949136, 23.152033 ], [ 104.912796, 23.175693 ], [ 104.882615, 23.163589 ], [ 104.874608, 23.123417 ], [ 104.804391, 23.110207 ], [ 104.821021, 23.032022 ], [ 104.860441, 22.970874 ], [ 104.846275, 22.926235 ], [ 104.772362, 22.893711 ], [ 104.760659, 22.862282 ], [ 104.732942, 22.852356 ], [ 104.737869, 22.825882 ], [ 104.674428, 22.817056 ], [ 104.596203, 22.846289 ], [ 104.527834, 22.814298 ], [ 104.498885, 22.774574 ], [ 104.422508, 22.734838 ], [ 104.375697, 22.690122 ], [ 104.323342, 22.728767 ], [ 104.272835, 22.73815 ], [ 104.256821, 22.77347 ], [ 104.274067, 22.828088 ], [ 104.261748, 22.841877 ], [ 104.224176, 22.826434 ], [ 104.117618, 22.808781 ], [ 104.089901, 22.768504 ], [ 104.045553, 22.728215 ], [ 104.04309, 22.67687 ], [ 104.022148, 22.593463 ], [ 104.009213, 22.575228 ], [ 104.009213, 22.517745 ], [ 103.964865, 22.502265 ], [ 103.894032, 22.564728 ], [ 103.875554, 22.565833 ], [ 103.863851, 22.584069 ], [ 103.825047, 22.615562 ], [ 103.766533, 22.688465 ], [ 103.669215, 22.766297 ], [ 103.642113, 22.794989 ], [ 103.567585, 22.701164 ], [ 103.580519, 22.66693 ], [ 103.529396, 22.59291 ], [ 103.50907, 22.601198 ], [ 103.457947, 22.658646 ], [ 103.436389, 22.6973 ], [ 103.441317, 22.753052 ], [ 103.375411, 22.794989 ], [ 103.323057, 22.807678 ], [ 103.321209, 22.777885 ], [ 103.288564, 22.732078 ], [ 103.283021, 22.678526 ], [ 103.220195, 22.643734 ], [ 103.195557, 22.648153 ], [ 103.161065, 22.590147 ], [ 103.183238, 22.558649 ], [ 103.119181, 22.518298 ], [ 103.085304, 22.509452 ], [ 103.071753, 22.445304 ], [ 103.030485, 22.441432 ], [ 102.986754, 22.477935 ], [ 102.930703, 22.482359 ], [ 102.892515, 22.533223 ], [ 102.880196, 22.586832 ], [ 102.82353, 22.623296 ], [ 102.80074, 22.620534 ], [ 102.688639, 22.70006 ], [ 102.657226, 22.687913 ], [ 102.607335, 22.730975 ], [ 102.569763, 22.701164 ], [ 102.551285, 22.743669 ], [ 102.498314, 22.777885 ], [ 102.45951, 22.762986 ], [ 102.43672, 22.699508 ], [ 102.384365, 22.679631 ], [ 102.404691, 22.629925 ], [ 102.356648, 22.563623 ], [ 102.322771, 22.554227 ], [ 102.25625, 22.457473 ], [ 102.270416, 22.419858 ], [ 102.179257, 22.430369 ], [ 102.145381, 22.397727 ], [ 102.131214, 22.430922 ], [ 102.046214, 22.458026 ], [ 101.978461, 22.427603 ], [ 101.907628, 22.437007 ], [ 101.901469, 22.384447 ], [ 101.862665, 22.389427 ], [ 101.823244, 22.42705 ], [ 101.824476, 22.45692 ], [ 101.774585, 22.506135 ], [ 101.715455, 22.477935 ], [ 101.672339, 22.47517 ], [ 101.648318, 22.400494 ], [ 101.671723, 22.372826 ], [ 101.625528, 22.28259 ], [ 101.56455, 22.269299 ], [ 101.547304, 22.238282 ], [ 101.596579, 22.161262 ], [ 101.602738, 22.131883 ], [ 101.573789, 22.115251 ], [ 101.626144, 22.005986 ], [ 101.606434, 21.967695 ], [ 101.666796, 21.934391 ], [ 101.701288, 21.938832 ], [ 101.700057, 21.897191 ], [ 101.735165, 21.875534 ], [ 101.740093, 21.845541 ], [ 101.771506, 21.833319 ], [ 101.747484, 21.729953 ], [ 101.76781, 21.716054 ], [ 101.780129, 21.640975 ], [ 101.807846, 21.644313 ], [ 101.828788, 21.617054 ], [ 101.804766, 21.577546 ], [ 101.754875, 21.58478 ], [ 101.755491, 21.538027 ], [ 101.772737, 21.512975 ], [ 101.741324, 21.482906 ], [ 101.749948, 21.409379 ], [ 101.730238, 21.336929 ], [ 101.745636, 21.297345 ], [ 101.791832, 21.285636 ], [ 101.833715, 21.252731 ], [ 101.834331, 21.204756 ], [ 101.794911, 21.208104 ], [ 101.76473, 21.147835 ], [ 101.703136, 21.14616 ], [ 101.672339, 21.194713 ], [ 101.605818, 21.172392 ], [ 101.588572, 21.191365 ], [ 101.601506, 21.233208 ], [ 101.532521, 21.252174 ], [ 101.439514, 21.227072 ], [ 101.387775, 21.225956 ], [ 101.290457, 21.17853 ], [ 101.222088, 21.234324 ], [ 101.246725, 21.275598 ], [ 101.244877, 21.302364 ], [ 101.183899, 21.334699 ], [ 101.142631, 21.409379 ], [ 101.194986, 21.424979 ], [ 101.193138, 21.473996 ], [ 101.225167, 21.499055 ], [ 101.210385, 21.509077 ], [ 101.209153, 21.55751 ], [ 101.146943, 21.560293 ], [ 101.169117, 21.590345 ], [ 101.153102, 21.669343 ], [ 101.116762, 21.691032 ], [ 101.111835, 21.746074 ], [ 101.123537, 21.771642 ], [ 101.089661, 21.773865 ], [ 101.015132, 21.707157 ], [ 100.940603, 21.697149 ], [ 100.870386, 21.67268 ], [ 100.847597, 21.634856 ], [ 100.804481, 21.609821 ], [ 100.789082, 21.570867 ], [ 100.753358, 21.555283 ], [ 100.730568, 21.518542 ], [ 100.691764, 21.510748 ], [ 100.579047, 21.451717 ], [ 100.526692, 21.471211 ], [ 100.48296, 21.458958 ], [ 100.437381, 21.533017 ], [ 100.350534, 21.52912 ], [ 100.298795, 21.477894 ], [ 100.235353, 21.466756 ], [ 100.206404, 21.509634 ], [ 100.180534, 21.514088 ], [ 100.168831, 21.482906 ], [ 100.131259, 21.504066 ], [ 100.123252, 21.565302 ], [ 100.107853, 21.585337 ], [ 100.169447, 21.663225 ], [ 100.131875, 21.699929 ], [ 100.094303, 21.702709 ], [ 100.049339, 21.669899 ], [ 99.991441, 21.703821 ], [ 99.944014, 21.821097 ], [ 99.960028, 21.907186 ], [ 99.982202, 21.919401 ], [ 100.000064, 21.973245 ], [ 99.965571, 22.014309 ], [ 99.972347, 22.053141 ], [ 99.871333, 22.067007 ], [ 99.870101, 22.029288 ], [ 99.762927, 22.068117 ], [ 99.696406, 22.067562 ], [ 99.648979, 22.100835 ], [ 99.581841, 22.103053 ], [ 99.578762, 22.098617 ], [ 99.562747, 22.113034 ], [ 99.516552, 22.099726 ], [ 99.486987, 22.128557 ], [ 99.400139, 22.100281 ], [ 99.35456, 22.095845 ], [ 99.294814, 22.109152 ], [ 99.219669, 22.110816 ], [ 99.156227, 22.159599 ], [ 99.188256, 22.162924 ], [ 99.175321, 22.185647 ], [ 99.207966, 22.232188 ], [ 99.235683, 22.250468 ], [ 99.233836, 22.296434 ], [ 99.278183, 22.34626 ], [ 99.251698, 22.393301 ], [ 99.297277, 22.41156 ], [ 99.382277, 22.493418 ], [ 99.359487, 22.535435 ], [ 99.385973, 22.57136 ], [ 99.339777, 22.708894 ], [ 99.31514, 22.737598 ], [ 99.326842, 22.751396 ], [ 99.385357, 22.761882 ], [ 99.401371, 22.826434 ], [ 99.462965, 22.844635 ], [ 99.43648, 22.913557 ], [ 99.446951, 22.934503 ], [ 99.531334, 22.897019 ], [ 99.563363, 22.925684 ], [ 99.533798, 22.961507 ], [ 99.517168, 23.006685 ], [ 99.528255, 23.065614 ], [ 99.477747, 23.083233 ], [ 99.440791, 23.079379 ], [ 99.380429, 23.099748 ], [ 99.3484, 23.12892 ], [ 99.281879, 23.101399 ], [ 99.255393, 23.077727 ], [ 99.187024, 23.100299 ], [ 99.106336, 23.086536 ], [ 99.048438, 23.11461 ], [ 99.057677, 23.164689 ], [ 99.002242, 23.160287 ], [ 98.906772, 23.185595 ], [ 98.889525, 23.209249 ], [ 98.928946, 23.26589 ], [ 98.936953, 23.309866 ], [ 98.906772, 23.331849 ], [ 98.872895, 23.329651 ], [ 98.920938, 23.360971 ], [ 98.912315, 23.426333 ], [ 98.874743, 23.483431 ], [ 98.826084, 23.470257 ], [ 98.80391, 23.540504 ], [ 98.844562, 23.578904 ], [ 98.882134, 23.595358 ], [ 98.882134, 23.620035 ], [ 98.847026, 23.632097 ], [ 98.835939, 23.683625 ], [ 98.811917, 23.703354 ], [ 98.824236, 23.727462 ], [ 98.784816, 23.781691 ], [ 98.696121, 23.784429 ], [ 98.669019, 23.800857 ], [ 98.701664, 23.834254 ], [ 98.68565, 23.90157 ], [ 98.701048, 23.946427 ], [ 98.673331, 23.960647 ], [ 98.701048, 23.981427 ], [ 98.727533, 23.970491 ], [ 98.773729, 24.022431 ], [ 98.807606, 24.025164 ], [ 98.895069, 24.098936 ], [ 98.876591, 24.15137 ], [ 98.841482, 24.126794 ], [ 98.818692, 24.133348 ], [ 98.71891, 24.127887 ], [ 98.681954, 24.100029 ], [ 98.646229, 24.106038 ], [ 98.593875, 24.08036 ], [ 98.547063, 24.128433 ], [ 98.487933, 24.123517 ], [ 98.48239, 24.122425 ], [ 98.37768, 24.114232 ], [ 98.343187, 24.098936 ], [ 98.219999, 24.113685 ], [ 98.19721, 24.09839 ], [ 98.132536, 24.09238 ], [ 98.125761, 24.092927 ], [ 98.123297, 24.092927 ], [ 98.096196, 24.08637 ], [ 98.091268, 24.085824 ], [ 97.995182, 24.04648 ], [ 97.984095, 24.031177 ], [ 97.902175, 24.014231 ], [ 97.896015, 23.974319 ], [ 97.863371, 23.978693 ], [ 97.8104, 23.943146 ], [ 97.795617, 23.951897 ], [ 97.763588, 23.907041 ], [ 97.72848, 23.895551 ], [ 97.718009, 23.867643 ], [ 97.684132, 23.876946 ], [ 97.647176, 23.840823 ], [ 97.640401, 23.866001 ], [ 97.633009, 23.879682 ], [ 97.5283, 23.926736 ], [ 97.529531, 23.943146 ], [ 97.572647, 23.983068 ], [ 97.628698, 24.004938 ], [ 97.637321, 24.04812 ], [ 97.730944, 24.113685 ], [ 97.753733, 24.168843 ], [ 97.72848, 24.183585 ], [ 97.729712, 24.227252 ], [ 97.767284, 24.258357 ], [ 97.721089, 24.295999 ], [ 97.665038, 24.296544 ], [ 97.662574, 24.339083 ], [ 97.716161, 24.358711 ], [ 97.679821, 24.401228 ], [ 97.669966, 24.452993 ], [ 97.588662, 24.435559 ], [ 97.530147, 24.443187 ], [ 97.554785, 24.490577 ], [ 97.570799, 24.602719 ], [ 97.569567, 24.708236 ], [ 97.547394, 24.739221 ], [ 97.569567, 24.765852 ], [ 97.652103, 24.790846 ], [ 97.680437, 24.827243 ], [ 97.765436, 24.823984 ], [ 97.797465, 24.845709 ], [ 97.785762, 24.876117 ], [ 97.729712, 24.908689 ], [ 97.716777, 24.978147 ], [ 97.727864, 25.042686 ], [ 97.719857, 25.080634 ], [ 97.743262, 25.078466 ], [ 97.796233, 25.155954 ], [ 97.839349, 25.27074 ], [ 97.875689, 25.25721 ], [ 97.904023, 25.216609 ], [ 97.940363, 25.214985 ], [ 98.0075, 25.279399 ], [ 98.006884, 25.298338 ], [ 98.06971, 25.311864 ], [ 98.099891, 25.354055 ], [ 98.101123, 25.388662 ], [ 98.137464, 25.381633 ], [ 98.15779, 25.457307 ], [ 98.131304, 25.51025 ], [ 98.163949, 25.524292 ], [ 98.189818, 25.569108 ], [ 98.170724, 25.620383 ], [ 98.247717, 25.607971 ], [ 98.314854, 25.543193 ], [ 98.326557, 25.566409 ], [ 98.402317, 25.593939 ], [ 98.409709, 25.664084 ], [ 98.457752, 25.682963 ], [ 98.461448, 25.735267 ], [ 98.476846, 25.77731 ], [ 98.529201, 25.840884 ], [ 98.553839, 25.845731 ], [ 98.640686, 25.798864 ], [ 98.677642, 25.816105 ], [ 98.705976, 25.855426 ], [ 98.686881, 25.925955 ], [ 98.637606, 25.971696 ], [ 98.614201, 25.968468 ], [ 98.602498, 26.054523 ], [ 98.575396, 26.118485 ], [ 98.632679, 26.145887 ], [ 98.656084, 26.139977 ], [ 98.661012, 26.087852 ], [ 98.720142, 26.127082 ], [ 98.712751, 26.156093 ], [ 98.735541, 26.185097 ], [ 98.713367, 26.231274 ], [ 98.672715, 26.239863 ], [ 98.681338, 26.308016 ], [ 98.733693, 26.350926 ], [ 98.750323, 26.424372 ], [ 98.741084, 26.432947 ], [ 98.757098, 26.491881 ], [ 98.753403, 26.559349 ], [ 98.773113, 26.578083 ], [ 98.781736, 26.620893 ], [ 98.762642, 26.660478 ], [ 98.770033, 26.690424 ], [ 98.746012, 26.696841 ], [ 98.762026, 26.798916 ], [ 98.730613, 26.851253 ], [ 98.757098, 26.877947 ], [ 98.732461, 27.002257 ], [ 98.762642, 27.018252 ], [ 98.765722, 27.05077 ], [ 98.712751, 27.075817 ], [ 98.713983, 27.139744 ], [ 98.696121, 27.211086 ], [ 98.723222, 27.221198 ], [ 98.717062, 27.271211 ], [ 98.734925, 27.287168 ], [ 98.741084, 27.330241 ], [ 98.706591, 27.362136 ], [ 98.702896, 27.412618 ], [ 98.686881, 27.425367 ], [ 98.704128, 27.463607 ], [ 98.685034, 27.484315 ], [ 98.706591, 27.553313 ], [ 98.662244, 27.586734 ], [ 98.650541, 27.567637 ], [ 98.583404, 27.571351 ], [ 98.587099, 27.587265 ], [ 98.554454, 27.646126 ], [ 98.53536, 27.620676 ], [ 98.474998, 27.634462 ], [ 98.444201, 27.665209 ], [ 98.430035, 27.653547 ], [ 98.429419, 27.549068 ], [ 98.388767, 27.515104 ], [ 98.337644, 27.508734 ], [ 98.317318, 27.51935 ], [ 98.310542, 27.583552 ], [ 98.283441, 27.654608 ], [ 98.234166, 27.690648 ], [ 98.215688, 27.810874 ], [ 98.169492, 27.851096 ], [ 98.205217, 27.889716 ], [ 98.187355, 27.939426 ], [ 98.143007, 27.948942 ], [ 98.133152, 27.990698 ], [ 98.160253, 28.101089 ], [ 98.139311, 28.142259 ], [ 98.17442, 28.163365 ], [ 98.169492, 28.206093 ], [ 98.21692, 28.212949 ], [ 98.266811, 28.242477 ], [ 98.231702, 28.314681 ], [ 98.207681, 28.330486 ], [ 98.208913, 28.358401 ], [ 98.301303, 28.384204 ], [ 98.317934, 28.324691 ], [ 98.353042, 28.293078 ], [ 98.37768, 28.246167 ], [ 98.370289, 28.18394 ], [ 98.389999, 28.16442 ], [ 98.389383, 28.114814 ], [ 98.428803, 28.104785 ], [ 98.464527, 28.151229 ], [ 98.494092, 28.141203 ], [ 98.559382, 28.182885 ], [ 98.625903, 28.165475 ], [ 98.649925, 28.200291 ], [ 98.712135, 28.229296 ], [ 98.710287, 28.288862 ], [ 98.746628, 28.321003 ], [ 98.740468, 28.348395 ], [ 98.693041, 28.43158 ], [ 98.673947, 28.478934 ], [ 98.625903, 28.489455 ], [ 98.619128, 28.50944 ], [ 98.637606, 28.552029 ], [ 98.594491, 28.667615 ], [ 98.666555, 28.712239 ], [ 98.683802, 28.740054 ], [ 98.652389, 28.817162 ], [ 98.668403, 28.843376 ], [ 98.643766, 28.895261 ], [ 98.6567, 28.910454 ], [ 98.624056, 28.95864 ], [ 98.655469, 28.976966 ], [ 98.70228, 28.9644 ], [ 98.757714, 29.004186 ], [ 98.786048, 28.998952 ], [ 98.821772, 28.920931 ], [ 98.827932, 28.821356 ], [ 98.852569, 28.798283 ], [ 98.912931, 28.800906 ], [ 98.922786, 28.823978 ], [ 98.972677, 28.832367 ], [ 98.973909, 28.864867 ], [ 98.917859, 28.886877 ], [ 98.925866, 28.978536 ], [ 99.013329, 29.036632 ], [ 98.991771, 29.105677 ], [ 98.967134, 29.128159 ], [ 98.960974, 29.165792 ], [ 98.9813, 29.204978 ], [ 99.024416, 29.188783 ], [ 99.037351, 29.20759 ], [ 99.113727, 29.221171 ], [ 99.105104, 29.162656 ], [ 99.118039, 29.100971 ], [ 99.113727, 29.07273 ], [ 99.132206, 28.94869 ], [ 99.123582, 28.890021 ], [ 99.103872, 28.841803 ], [ 99.114343, 28.765763 ], [ 99.134053, 28.734806 ], [ 99.126662, 28.698066 ], [ 99.147604, 28.640831 ], [ 99.183944, 28.58882 ], [ 99.170394, 28.566221 ], [ 99.191952, 28.494714 ], [ 99.187024, 28.44 ], [ 99.16485, 28.425264 ], [ 99.200575, 28.365774 ], [ 99.229524, 28.350502 ], [ 99.237531, 28.317842 ], [ 99.28927, 28.286227 ], [ 99.306516, 28.227714 ], [ 99.374886, 28.18183 ], [ 99.412458, 28.295186 ], [ 99.392748, 28.318369 ], [ 99.437095, 28.398419 ], [ 99.404451, 28.44421 ], [ 99.426625, 28.454207 ], [ 99.396444, 28.491032 ], [ 99.403219, 28.546246 ], [ 99.463581, 28.549401 ], [ 99.466045, 28.579886 ], [ 99.504233, 28.619294 ], [ 99.540573, 28.623497 ], [ 99.53195, 28.677591 ], [ 99.553508, 28.710664 ], [ 99.614486, 28.740054 ], [ 99.609559, 28.784122 ], [ 99.625573, 28.81454 ], [ 99.676696, 28.810345 ], [ 99.717964, 28.846521 ], [ 99.722275, 28.757369 ], [ 99.755536, 28.701216 ], [ 99.79434, 28.699116 ], [ 99.834992, 28.660788 ], [ 99.834376, 28.628225 ], [ 99.873181, 28.631902 ], [ 99.875644, 28.611939 ], [ 99.91876, 28.599329 ], [ 99.985281, 28.529422 ], [ 99.990209, 28.47683 ], [ 100.073977, 28.426317 ], [ 100.057346, 28.368934 ], [ 100.136803, 28.349975 ], [ 100.176223, 28.325218 ], [ 100.147274, 28.288862 ], [ 100.188541, 28.252493 ], [ 100.153433, 28.208202 ], [ 100.102926, 28.201873 ], [ 100.091223, 28.181302 ], [ 100.062274, 28.193962 ], [ 100.033325, 28.184467 ], [ 100.021006, 28.147008 ], [ 100.05673, 28.097922 ], [ 100.088759, 28.029269 ], [ 100.120788, 28.018703 ], [ 100.196549, 27.936254 ], [ 100.170063, 27.907699 ], [ 100.210715, 27.87702 ], [ 100.30865, 27.861149 ], [ 100.30865, 27.830457 ], [ 100.28586, 27.80611 ], [ 100.304954, 27.788639 ], [ 100.311729, 27.724028 ], [ 100.327744, 27.72032 ], [ 100.350534, 27.755809 ], [ 100.412127, 27.816167 ], [ 100.442924, 27.86644 ], [ 100.504518, 27.852154 ], [ 100.511294, 27.827811 ], [ 100.54517, 27.809286 ], [ 100.609228, 27.859033 ], [ 100.634482, 27.915631 ], [ 100.681293, 27.923035 ], [ 100.719481, 27.858503 ], [ 100.707162, 27.800816 ], [ 100.757053, 27.770107 ], [ 100.775532, 27.743098 ], [ 100.782307, 27.691708 ], [ 100.848212, 27.672099 ], [ 100.827886, 27.615904 ], [ 100.854988, 27.623858 ], [ 100.91227, 27.521473 ], [ 100.901183, 27.453517 ], [ 100.936908, 27.469448 ], [ 100.95169, 27.426961 ], [ 101.021907, 27.332899 ], [ 101.026219, 27.270679 ], [ 101.042233, 27.22173 ], [ 101.071798, 27.194585 ], [ 101.119226, 27.208957 ], [ 101.167885, 27.198311 ], [ 101.167885, 27.198311 ], [ 101.170349, 27.175421 ], [ 101.145095, 27.103523 ], [ 101.157414, 27.094999 ], [ 101.136472, 27.023584 ], [ 101.228863, 26.981992 ], [ 101.227015, 26.959057 ], [ 101.264587, 26.955323 ], [ 101.267667, 26.903034 ], [ 101.311399, 26.903034 ], [ 101.365602, 26.883819 ], [ 101.399478, 26.841642 ], [ 101.358826, 26.771669 ], [ 101.387159, 26.753501 ], [ 101.389623, 26.723036 ], [ 101.435819, 26.740675 ], [ 101.458608, 26.731054 ], [ 101.445674, 26.77434 ], [ 101.466, 26.786629 ], [ 101.513427, 26.768463 ], [ 101.453065, 26.692563 ], [ 101.481398, 26.673313 ], [ 101.461072, 26.640687 ], [ 101.461688, 26.606447 ], [ 101.402558, 26.604841 ], [ 101.395783, 26.591998 ], [ 101.422884, 26.53151 ], [ 101.458608, 26.49563 ], [ 101.506652, 26.499915 ], [ 101.530057, 26.467239 ], [ 101.565782, 26.454381 ], [ 101.637847, 26.388995 ], [ 101.635383, 26.357361 ], [ 101.660636, 26.346635 ], [ 101.64031, 26.318745 ], [ 101.597195, 26.303187 ], [ 101.586108, 26.279579 ], [ 101.630455, 26.224832 ], [ 101.690202, 26.241473 ], [ 101.737013, 26.219463 ], [ 101.773353, 26.168448 ], [ 101.807846, 26.156093 ], [ 101.796759, 26.114723 ], [ 101.839875, 26.082477 ], [ 101.835563, 26.04592 ], [ 101.857737, 26.049146 ], [ 101.899621, 26.099139 ], [ 101.929186, 26.105588 ], [ 101.954439, 26.084627 ], [ 102.020961, 26.096451 ], [ 102.080091, 26.065275 ], [ 102.107808, 26.068501 ], [ 102.152156, 26.10935 ], [ 102.174946, 26.146961 ], [ 102.242699, 26.190468 ], [ 102.245163, 26.212483 ], [ 102.349257, 26.244694 ], [ 102.392372, 26.296749 ], [ 102.440416, 26.300505 ], [ 102.542046, 26.338591 ], [ 102.570995, 26.362723 ], [ 102.629509, 26.336982 ], [ 102.638748, 26.307479 ], [ 102.60056, 26.250598 ], [ 102.659074, 26.221611 ], [ 102.709581, 26.210336 ], [ 102.739762, 26.268846 ], [ 102.785342, 26.298895 ], [ 102.833385, 26.306406 ], [ 102.878964, 26.364332 ], [ 102.893131, 26.338591 ], [ 102.975667, 26.340736 ], [ 102.998457, 26.371839 ], [ 102.988602, 26.413117 ], [ 102.989833, 26.482775 ], [ 103.030485, 26.485989 ], [ 103.052659, 26.514374 ], [ 103.052659, 26.555602 ], [ 103.035413, 26.556673 ], [ 103.026174, 26.664221 ], [ 103.005232, 26.679195 ], [ 103.008312, 26.710741 ], [ 102.983674, 26.76686 ], [ 102.991681, 26.775409 ], [ 102.966428, 26.837904 ], [ 102.949181, 26.843244 ], [ 102.896211, 26.91264 ], [ 102.894979, 27.001724 ], [ 102.870957, 27.026782 ], [ 102.913457, 27.133886 ], [ 102.904218, 27.227584 ], [ 102.883276, 27.258444 ], [ 102.883892, 27.299401 ], [ 102.899906, 27.317481 ], [ 102.941174, 27.405711 ], [ 102.989833, 27.367983 ], [ 103.055739, 27.40943 ], [ 103.080992, 27.396679 ], [ 103.141355, 27.420586 ], [ 103.144434, 27.450331 ], [ 103.19063, 27.523596 ], [ 103.232514, 27.56976 ], [ 103.2861, 27.561802 ], [ 103.29226, 27.632872 ], [ 103.349542, 27.678459 ], [ 103.369868, 27.708664 ], [ 103.393274, 27.709194 ], [ 103.461027, 27.779638 ], [ 103.487512, 27.794992 ], [ 103.509686, 27.843687 ], [ 103.502295, 27.910343 ], [ 103.55465, 27.978543 ], [ 103.515846, 27.965329 ], [ 103.486281, 28.033495 ], [ 103.459179, 28.021345 ], [ 103.430846, 28.044587 ], [ 103.470266, 28.122204 ], [ 103.533092, 28.168641 ], [ 103.573128, 28.230877 ], [ 103.643961, 28.260401 ], [ 103.692004, 28.232459 ], [ 103.701859, 28.198709 ], [ 103.740048, 28.23615 ], [ 103.770845, 28.233514 ], [ 103.828743, 28.285173 ], [ 103.877402, 28.316262 ], [ 103.85338, 28.356822 ], [ 103.860156, 28.383677 ], [ 103.828743, 28.44 ], [ 103.829975, 28.459995 ], [ 103.781931, 28.525216 ], [ 103.802873, 28.563068 ], [ 103.838598, 28.587244 ], [ 103.833054, 28.605109 ], [ 103.850917, 28.66709 ], [ 103.887873, 28.61982 ], [ 103.910047, 28.631377 ], [ 103.953779, 28.600906 ], [ 104.05972, 28.6277 ], [ 104.09606, 28.603533 ], [ 104.117618, 28.634003 ], [ 104.170589, 28.642932 ], [ 104.230951, 28.635579 ], [ 104.252509, 28.660788 ], [ 104.277147, 28.631902 ], [ 104.314719, 28.615617 ], [ 104.372617, 28.649235 ], [ 104.425588, 28.626649 ], [ 104.417581, 28.598279 ], [ 104.375697, 28.5946 ], [ 104.355987, 28.555183 ], [ 104.323342, 28.540989 ], [ 104.260516, 28.536257 ], [ 104.267908, 28.499448 ], [ 104.254357, 28.403683 ], [ 104.282074, 28.343128 ], [ 104.314103, 28.306778 ], [ 104.343052, 28.334173 ], [ 104.384936, 28.329959 ], [ 104.392943, 28.291497 ], [ 104.420045, 28.269889 ], [ 104.44961, 28.269889 ], [ 104.462544, 28.241422 ], [ 104.442834, 28.211366 ], [ 104.402182, 28.202928 ], [ 104.406494, 28.173389 ], [ 104.444682, 28.16231 ], [ 104.448994, 28.113758 ], [ 104.40095, 28.091586 ], [ 104.373233, 28.051454 ], [ 104.304248, 28.050926 ], [ 104.30856, 28.036136 ], [ 104.362762, 28.012891 ], [ 104.40095, 27.952114 ], [ 104.44961, 27.927794 ], [ 104.508124, 27.878078 ], [ 104.52537, 27.889187 ], [ 104.573413, 27.840512 ], [ 104.607906, 27.857974 ], [ 104.63316, 27.850567 ], [ 104.676275, 27.880723 ], [ 104.743413, 27.901881 ], [ 104.761891, 27.884426 ], [ 104.796999, 27.901352 ], [ 104.842579, 27.900294 ], [ 104.888158, 27.914574 ], [ 104.918339, 27.938897 ], [ 104.903557, 27.962158 ], [ 104.975006, 28.020816 ], [ 104.980549, 28.063073 ], [ 105.002107, 28.064129 ], [ 105.061853, 28.096866 ], [ 105.119752, 28.07205 ], [ 105.168411, 28.071522 ], [ 105.186889, 28.054623 ], [ 105.167795, 28.021345 ], [ 105.186273, 27.995454 ], [ 105.218302, 27.990698 ], [ 105.247867, 28.009193 ], [ 105.270657, 27.99704 ], [ 105.284823, 27.935725 ], [ 105.233084, 27.895534 ], [ 105.25957, 27.827811 ], [ 105.313157, 27.810874 ], [ 105.273736, 27.794992 ], [ 105.293447, 27.770637 ], [ 105.290367, 27.712373 ], [ 105.308229, 27.704955 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"540000\", \"name\": \"西藏自治区\", \"center\": [ 91.132212, 29.660361 ], \"centroid\": [ 88.388277, 31.56375 ], \"childrenNum\": 7, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 25, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 89.711414, 36.093272 ], [ 89.688624, 36.091337 ], [ 89.605472, 36.038123 ], [ 89.474893, 36.022151 ], [ 89.417611, 36.044897 ], [ 89.404676, 36.016827 ], [ 89.434857, 35.992136 ], [ 89.428082, 35.917531 ], [ 89.489676, 35.903475 ], [ 89.554965, 35.873414 ], [ 89.550654, 35.856924 ], [ 89.62395, 35.859349 ], [ 89.654747, 35.848193 ], [ 89.707718, 35.849163 ], [ 89.778551, 35.861775 ], [ 89.801957, 35.848193 ], [ 89.767464, 35.799183 ], [ 89.782863, 35.773453 ], [ 89.747138, 35.7516 ], [ 89.748986, 35.66267 ], [ 89.726196, 35.648082 ], [ 89.765616, 35.599922 ], [ 89.75145, 35.580942 ], [ 89.71203, 35.581915 ], [ 89.699711, 35.544916 ], [ 89.720037, 35.501566 ], [ 89.740979, 35.507412 ], [ 89.765, 35.482563 ], [ 89.739131, 35.468429 ], [ 89.685544, 35.416259 ], [ 89.658443, 35.425526 ], [ 89.619639, 35.412357 ], [ 89.58761, 35.383575 ], [ 89.497067, 35.361128 ], [ 89.516161, 35.330862 ], [ 89.494603, 35.298632 ], [ 89.531559, 35.276161 ], [ 89.48598, 35.256616 ], [ 89.450255, 35.223867 ], [ 89.46935, 35.214577 ], [ 89.519241, 35.133862 ], [ 89.579603, 35.118688 ], [ 89.593153, 35.104491 ], [ 89.59069, 35.057965 ], [ 89.560509, 34.938836 ], [ 89.578987, 34.895162 ], [ 89.670146, 34.887798 ], [ 89.707102, 34.919701 ], [ 89.747138, 34.903506 ], [ 89.78779, 34.921664 ], [ 89.821051, 34.902033 ], [ 89.814891, 34.86816 ], [ 89.838913, 34.865705 ], [ 89.867862, 34.81069 ], [ 89.825978, 34.796931 ], [ 89.799493, 34.743838 ], [ 89.732356, 34.732035 ], [ 89.72558, 34.660689 ], [ 89.74837, 34.641981 ], [ 89.798877, 34.628686 ], [ 89.777935, 34.574499 ], [ 89.814891, 34.548871 ], [ 89.823515, 34.455657 ], [ 89.819819, 34.420614 ], [ 89.799493, 34.39642 ], [ 89.820435, 34.369255 ], [ 89.858623, 34.359375 ], [ 89.86663, 34.324785 ], [ 89.825362, 34.293642 ], [ 89.838297, 34.263477 ], [ 89.816739, 34.16945 ], [ 89.789638, 34.150632 ], [ 89.760073, 34.152613 ], [ 89.756993, 34.124874 ], [ 89.71203, 34.131809 ], [ 89.655979, 34.097126 ], [ 89.656595, 34.057966 ], [ 89.635037, 34.049537 ], [ 89.684928, 33.990013 ], [ 89.688008, 33.959739 ], [ 89.718805, 33.946832 ], [ 89.73174, 33.921509 ], [ 89.795181, 33.865374 ], [ 89.837065, 33.868853 ], [ 89.899891, 33.80771 ], [ 89.942391, 33.801246 ], [ 89.902355, 33.758467 ], [ 89.907282, 33.741051 ], [ 89.983659, 33.725622 ], [ 89.981195, 33.70322 ], [ 90.008296, 33.687785 ], [ 89.984275, 33.612061 ], [ 90.01076, 33.553728 ], [ 90.083441, 33.525295 ], [ 90.088984, 33.478885 ], [ 90.107463, 33.460913 ], [ 90.22018, 33.437943 ], [ 90.246665, 33.423959 ], [ 90.332896, 33.310501 ], [ 90.363077, 33.279487 ], [ 90.405577, 33.260473 ], [ 90.490577, 33.264977 ], [ 90.562642, 33.229441 ], [ 90.627315, 33.180368 ], [ 90.704308, 33.135778 ], [ 90.740032, 33.142293 ], [ 90.803474, 33.114227 ], [ 90.88293, 33.120241 ], [ 90.902024, 33.083143 ], [ 90.927894, 33.120241 ], [ 91.001807, 33.11573 ], [ 91.037531, 33.098686 ], [ 91.072024, 33.113224 ], [ 91.147784, 33.07211 ], [ 91.161335, 33.108712 ], [ 91.18782, 33.106206 ], [ 91.226624, 33.141792 ], [ 91.261733, 33.141291 ], [ 91.311624, 33.108211 ], [ 91.370138, 33.100691 ], [ 91.436044, 33.066092 ], [ 91.49579, 33.109214 ], [ 91.535826, 33.10019 ], [ 91.55492, 33.060074 ], [ 91.583253, 33.0375 ], [ 91.664557, 33.012913 ], [ 91.685499, 32.989324 ], [ 91.752637, 32.969242 ], [ 91.799448, 32.942126 ], [ 91.839484, 32.948152 ], [ 91.857962, 32.90244 ], [ 91.896766, 32.907967 ], [ 91.955897, 32.8205 ], [ 92.018722, 32.829552 ], [ 92.038432, 32.860725 ], [ 92.101874, 32.860222 ], [ 92.145606, 32.885857 ], [ 92.205352, 32.866255 ], [ 92.227526, 32.821003 ], [ 92.193649, 32.801889 ], [ 92.211511, 32.788306 ], [ 92.198577, 32.754591 ], [ 92.255243, 32.720863 ], [ 92.310062, 32.751571 ], [ 92.343938, 32.738484 ], [ 92.355641, 32.764657 ], [ 92.411076, 32.748048 ], [ 92.459119, 32.76365 ], [ 92.484372, 32.745028 ], [ 92.56814, 32.73194 ], [ 92.574916, 32.741001 ], [ 92.634662, 32.720863 ], [ 92.667922, 32.73194 ], [ 92.686401, 32.76516 ], [ 92.756618, 32.743014 ], [ 92.789262, 32.719856 ], [ 92.822523, 32.729926 ], [ 92.866871, 32.698203 ], [ 92.933392, 32.719353 ], [ 92.964189, 32.714821 ], [ 93.00053, 32.741001 ], [ 93.019624, 32.737477 ], [ 93.023935, 32.703239 ], [ 93.069515, 32.626156 ], [ 93.087993, 32.63674 ], [ 93.159442, 32.644803 ], [ 93.176688, 32.6705 ], [ 93.210565, 32.655385 ], [ 93.239514, 32.662439 ], [ 93.260456, 32.62666 ], [ 93.300492, 32.619604 ], [ 93.308499, 32.580278 ], [ 93.33868, 32.5712 ], [ 93.385492, 32.525294 ], [ 93.411977, 32.558086 ], [ 93.4631, 32.556069 ], [ 93.476651, 32.504603 ], [ 93.501904, 32.503593 ], [ 93.516687, 32.47583 ], [ 93.618933, 32.522771 ], [ 93.651577, 32.571705 ], [ 93.721795, 32.578261 ], [ 93.75136, 32.56313 ], [ 93.820345, 32.549511 ], [ 93.851142, 32.50965 ], [ 93.861613, 32.466237 ], [ 93.90904, 32.463207 ], [ 93.960163, 32.484917 ], [ 93.978641, 32.459672 ], [ 94.03038, 32.448057 ], [ 94.049474, 32.469771 ], [ 94.091974, 32.463207 ], [ 94.137554, 32.433915 ], [ 94.176974, 32.454117 ], [ 94.196684, 32.51621 ], [ 94.250886, 32.51722 ], [ 94.292154, 32.502584 ], [ 94.294002, 32.519743 ], [ 94.350053, 32.533871 ], [ 94.371611, 32.524789 ], [ 94.395016, 32.594397 ], [ 94.435052, 32.562626 ], [ 94.463386, 32.572209 ], [ 94.459074, 32.599439 ], [ 94.522516, 32.595909 ], [ 94.591501, 32.640772 ], [ 94.614291, 32.673522 ], [ 94.638312, 32.645307 ], [ 94.737479, 32.587338 ], [ 94.762116, 32.526303 ], [ 94.78737, 32.522266 ], [ 94.80708, 32.486431 ], [ 94.852043, 32.463712 ], [ 94.889616, 32.472295 ], [ 94.912405, 32.41573 ], [ 94.944434, 32.404109 ], [ 94.988166, 32.422802 ], [ 95.057151, 32.395014 ], [ 95.075013, 32.376315 ], [ 95.075013, 32.376315 ], [ 95.081789, 32.384907 ], [ 95.153853, 32.386423 ], [ 95.218527, 32.397035 ], [ 95.228382, 32.363678 ], [ 95.261643, 32.348006 ], [ 95.193274, 32.332331 ], [ 95.096571, 32.322217 ], [ 95.079325, 32.279726 ], [ 95.10581, 32.258979 ], [ 95.20744, 32.297433 ], [ 95.214216, 32.321712 ], [ 95.241317, 32.3207 ], [ 95.239469, 32.287315 ], [ 95.270266, 32.194683 ], [ 95.270266, 32.194683 ], [ 95.31523, 32.148585 ], [ 95.366968, 32.151118 ], [ 95.367584, 32.178982 ], [ 95.406389, 32.182021 ], [ 95.440265, 32.157705 ], [ 95.454432, 32.061898 ], [ 95.421171, 32.033999 ], [ 95.454432, 32.007613 ], [ 95.395918, 32.001523 ], [ 95.360809, 31.95939 ], [ 95.3682, 31.92892 ], [ 95.408852, 31.918761 ], [ 95.406389, 31.896915 ], [ 95.456896, 31.801853 ], [ 95.480301, 31.795749 ], [ 95.511714, 31.750468 ], [ 95.546823, 31.73978 ], [ 95.580083, 31.76726 ], [ 95.634286, 31.782523 ], [ 95.779648, 31.748941 ], [ 95.823995, 31.68225 ], [ 95.853561, 31.714329 ], [ 95.846169, 31.736218 ], [ 95.89914, 31.81711 ], [ 95.983524, 31.816601 ], [ 95.989067, 31.78761 ], [ 96.064828, 31.720438 ], [ 96.135661, 31.70211 ], [ 96.148595, 31.686324 ], [ 96.156603, 31.602769 ], [ 96.207726, 31.598691 ], [ 96.221892, 31.647613 ], [ 96.245298, 31.657802 ], [ 96.252073, 31.697527 ], [ 96.222508, 31.733164 ], [ 96.231131, 31.749959 ], [ 96.178161, 31.775401 ], [ 96.183088, 31.835924 ], [ 96.202798, 31.841008 ], [ 96.214501, 31.876589 ], [ 96.188632, 31.904028 ], [ 96.220044, 31.905553 ], [ 96.253305, 31.929936 ], [ 96.288414, 31.919777 ], [ 96.389428, 31.919777 ], [ 96.407906, 31.845583 ], [ 96.435623, 31.796258 ], [ 96.468884, 31.769804 ], [ 96.519391, 31.74945 ], [ 96.56805, 31.711783 ], [ 96.615477, 31.737236 ], [ 96.661057, 31.705674 ], [ 96.691854, 31.722474 ], [ 96.722651, 31.686833 ], [ 96.778701, 31.675629 ], [ 96.790404, 31.698545 ], [ 96.840295, 31.720438 ], [ 96.799027, 31.792188 ], [ 96.765767, 31.819144 ], [ 96.760223, 31.860325 ], [ 96.794716, 31.869474 ], [ 96.81073, 31.894375 ], [ 96.776238, 31.935015 ], [ 96.753448, 31.944156 ], [ 96.742977, 32.001016 ], [ 96.722651, 32.013195 ], [ 96.824281, 32.007613 ], [ 96.868629, 31.964975 ], [ 96.863085, 31.996448 ], [ 96.894498, 32.013703 ], [ 96.941925, 31.986297 ], [ 96.965947, 32.008628 ], [ 96.935766, 32.048203 ], [ 97.006599, 32.067984 ], [ 97.028773, 32.04871 ], [ 97.127323, 32.044145 ], [ 97.169823, 32.032984 ], [ 97.188301, 32.055304 ], [ 97.214786, 32.042623 ], [ 97.233881, 32.063927 ], [ 97.201852, 32.090296 ], [ 97.219714, 32.109054 ], [ 97.258518, 32.072041 ], [ 97.308409, 32.076605 ], [ 97.293011, 32.096887 ], [ 97.313953, 32.130342 ], [ 97.271453, 32.139971 ], [ 97.264062, 32.182527 ], [ 97.299786, 32.294904 ], [ 97.32196, 32.303503 ], [ 97.371235, 32.273148 ], [ 97.415583, 32.296421 ], [ 97.424822, 32.322723 ], [ 97.387865, 32.427349 ], [ 97.341054, 32.440987 ], [ 97.388481, 32.501575 ], [ 97.334895, 32.514192 ], [ 97.332431, 32.542448 ], [ 97.3583, 32.563635 ], [ 97.374315, 32.546484 ], [ 97.411887, 32.575235 ], [ 97.448843, 32.586833 ], [ 97.463626, 32.55506 ], [ 97.50243, 32.530844 ], [ 97.540618, 32.536899 ], [ 97.670582, 32.51722 ], [ 97.684132, 32.530339 ], [ 97.730944, 32.527312 ], [ 97.795617, 32.521257 ], [ 97.80732, 32.50006 ], [ 97.863986, 32.499051 ], [ 97.880001, 32.486431 ], [ 97.940363, 32.482393 ], [ 98.079565, 32.415224 ], [ 98.107283, 32.391476 ], [ 98.125145, 32.401077 ], [ 98.218768, 32.342444 ], [ 98.208913, 32.318171 ], [ 98.23047, 32.262521 ], [ 98.218768, 32.234683 ], [ 98.260035, 32.208862 ], [ 98.303151, 32.121726 ], [ 98.357354, 32.087253 ], [ 98.404781, 32.045159 ], [ 98.402933, 32.026896 ], [ 98.434962, 32.007613 ], [ 98.432498, 31.922825 ], [ 98.399238, 31.895899 ], [ 98.426339, 31.856767 ], [ 98.414636, 31.832365 ], [ 98.461448, 31.800327 ], [ 98.508875, 31.751995 ], [ 98.516882, 31.717383 ], [ 98.545831, 31.717383 ], [ 98.553839, 31.660349 ], [ 98.619128, 31.591555 ], [ 98.651157, 31.57881 ], [ 98.696736, 31.538523 ], [ 98.714599, 31.508935 ], [ 98.844562, 31.429817 ], [ 98.84333, 31.416028 ], [ 98.887062, 31.37465 ], [ 98.810685, 31.306668 ], [ 98.805758, 31.279052 ], [ 98.773113, 31.249382 ], [ 98.691809, 31.333253 ], [ 98.643766, 31.338876 ], [ 98.616048, 31.3036 ], [ 98.60373, 31.257568 ], [ 98.62344, 31.221238 ], [ 98.602498, 31.192062 ], [ 98.675179, 31.15417 ], [ 98.710287, 31.1178 ], [ 98.712135, 31.082954 ], [ 98.736772, 31.049121 ], [ 98.774961, 31.031174 ], [ 98.806374, 30.995783 ], [ 98.797135, 30.948575 ], [ 98.774345, 30.908019 ], [ 98.797135, 30.87926 ], [ 98.850105, 30.849465 ], [ 98.904924, 30.782649 ], [ 98.957895, 30.765166 ], [ 98.963438, 30.728134 ], [ 98.907388, 30.698292 ], [ 98.92217, 30.609225 ], [ 98.939417, 30.598923 ], [ 98.926482, 30.569556 ], [ 98.932025, 30.521623 ], [ 98.965286, 30.449937 ], [ 98.967134, 30.33482 ], [ 98.986844, 30.280569 ], [ 98.970829, 30.260928 ], [ 98.993003, 30.215429 ], [ 98.9813, 30.182843 ], [ 98.989308, 30.151799 ], [ 99.044742, 30.079842 ], [ 99.036735, 30.053945 ], [ 99.055213, 29.958587 ], [ 99.068148, 29.931621 ], [ 99.0238, 29.846009 ], [ 99.018873, 29.792009 ], [ 98.992387, 29.677163 ], [ 99.014561, 29.607464 ], [ 99.052133, 29.563748 ], [ 99.044742, 29.520013 ], [ 99.066916, 29.421018 ], [ 99.058909, 29.417368 ], [ 99.075539, 29.316186 ], [ 99.114343, 29.243628 ], [ 99.113727, 29.221171 ], [ 99.037351, 29.20759 ], [ 99.024416, 29.188783 ], [ 98.9813, 29.204978 ], [ 98.960974, 29.165792 ], [ 98.967134, 29.128159 ], [ 98.991771, 29.105677 ], [ 99.013329, 29.036632 ], [ 98.925866, 28.978536 ], [ 98.917859, 28.886877 ], [ 98.973909, 28.864867 ], [ 98.972677, 28.832367 ], [ 98.922786, 28.823978 ], [ 98.912931, 28.800906 ], [ 98.852569, 28.798283 ], [ 98.827932, 28.821356 ], [ 98.821772, 28.920931 ], [ 98.786048, 28.998952 ], [ 98.757714, 29.004186 ], [ 98.70228, 28.9644 ], [ 98.655469, 28.976966 ], [ 98.624056, 28.95864 ], [ 98.6567, 28.910454 ], [ 98.643766, 28.895261 ], [ 98.668403, 28.843376 ], [ 98.652389, 28.817162 ], [ 98.683802, 28.740054 ], [ 98.666555, 28.712239 ], [ 98.594491, 28.667615 ], [ 98.637606, 28.552029 ], [ 98.619128, 28.50944 ], [ 98.625903, 28.489455 ], [ 98.673947, 28.478934 ], [ 98.693041, 28.43158 ], [ 98.740468, 28.348395 ], [ 98.746628, 28.321003 ], [ 98.710287, 28.288862 ], [ 98.712135, 28.229296 ], [ 98.649925, 28.200291 ], [ 98.625903, 28.165475 ], [ 98.559382, 28.182885 ], [ 98.494092, 28.141203 ], [ 98.464527, 28.151229 ], [ 98.428803, 28.104785 ], [ 98.389383, 28.114814 ], [ 98.389999, 28.16442 ], [ 98.370289, 28.18394 ], [ 98.37768, 28.246167 ], [ 98.353042, 28.293078 ], [ 98.317934, 28.324691 ], [ 98.301303, 28.384204 ], [ 98.208913, 28.358401 ], [ 98.207681, 28.330486 ], [ 98.231702, 28.314681 ], [ 98.266811, 28.242477 ], [ 98.21692, 28.212949 ], [ 98.169492, 28.206093 ], [ 98.17442, 28.163365 ], [ 98.139311, 28.142259 ], [ 98.097427, 28.166531 ], [ 98.090036, 28.195544 ], [ 98.056775, 28.202401 ], [ 98.03337, 28.187105 ], [ 98.008116, 28.214003 ], [ 98.020435, 28.253548 ], [ 97.907718, 28.363141 ], [ 97.871378, 28.361561 ], [ 97.842429, 28.326798 ], [ 97.801161, 28.326798 ], [ 97.769748, 28.3742 ], [ 97.738335, 28.396313 ], [ 97.737103, 28.465782 ], [ 97.68598, 28.519958 ], [ 97.634857, 28.532051 ], [ 97.60406, 28.515225 ], [ 97.569567, 28.541515 ], [ 97.521524, 28.495766 ], [ 97.507974, 28.46473 ], [ 97.521524, 28.444736 ], [ 97.499966, 28.428948 ], [ 97.485184, 28.38631 ], [ 97.488879, 28.347341 ], [ 97.518445, 28.327852 ], [ 97.469169, 28.30309 ], [ 97.461162, 28.26778 ], [ 97.422358, 28.297293 ], [ 97.402032, 28.279903 ], [ 97.398336, 28.238786 ], [ 97.349677, 28.235623 ], [ 97.362612, 28.199236 ], [ 97.352757, 28.149646 ], [ 97.326887, 28.132759 ], [ 97.340438, 28.104785 ], [ 97.305945, 28.071522 ], [ 97.320728, 28.054095 ], [ 97.375547, 28.062545 ], [ 97.378626, 28.031382 ], [ 97.413119, 28.01342 ], [ 97.379242, 27.970087 ], [ 97.372467, 27.907699 ], [ 97.386634, 27.882839 ], [ 97.324424, 27.880723 ], [ 97.303482, 27.913516 ], [ 97.253591, 27.891832 ], [ 97.167975, 27.811932 ], [ 97.103301, 27.780697 ], [ 97.097758, 27.740979 ], [ 97.062649, 27.742568 ], [ 97.049099, 27.81405 ], [ 97.008447, 27.807698 ], [ 96.972722, 27.861149 ], [ 96.908049, 27.884426 ], [ 96.849534, 27.874375 ], [ 96.810114, 27.890245 ], [ 96.784245, 27.931495 ], [ 96.711564, 27.9574 ], [ 96.690622, 27.948942 ], [ 96.635188, 27.994926 ], [ 96.623485, 28.024514 ], [ 96.538485, 28.075218 ], [ 96.499681, 28.067297 ], [ 96.46334, 28.143314 ], [ 96.426384, 28.161782 ], [ 96.395587, 28.143842 ], [ 96.398667, 28.118509 ], [ 96.367254, 28.118509 ], [ 96.298269, 28.140148 ], [ 96.275479, 28.228241 ], [ 96.194175, 28.212949 ], [ 96.098088, 28.212421 ], [ 96.074683, 28.193434 ], [ 95.989067, 28.198181 ], [ 95.936096, 28.240368 ], [ 95.907763, 28.241422 ], [ 95.899756, 28.278322 ], [ 95.874502, 28.29782 ], [ 95.832003, 28.295186 ], [ 95.787655, 28.270416 ], [ 95.740228, 28.275159 ], [ 95.674322, 28.254075 ], [ 95.528345, 28.182885 ], [ 95.437802, 28.161782 ], [ 95.39715, 28.142259 ], [ 95.371896, 28.110063 ], [ 95.352802, 28.04089 ], [ 95.32878, 28.017646 ], [ 95.28628, 27.939955 ], [ 95.067006, 27.840512 ], [ 95.015267, 27.82887 ], [ 94.947514, 27.792345 ], [ 94.88592, 27.743098 ], [ 94.836645, 27.728796 ], [ 94.78121, 27.699127 ], [ 94.722696, 27.683759 ], [ 94.660486, 27.650367 ], [ 94.524979, 27.596282 ], [ 94.478168, 27.602116 ], [ 94.443675, 27.585143 ], [ 94.399944, 27.589386 ], [ 94.353132, 27.578778 ], [ 94.277372, 27.58143 ], [ 94.220705, 27.536333 ], [ 94.147409, 27.458297 ], [ 94.056866, 27.375423 ], [ 93.970634, 27.30525 ], [ 93.849294, 27.168499 ], [ 93.841903, 27.045973 ], [ 93.817265, 27.025183 ], [ 93.747048, 27.015587 ], [ 93.625092, 26.955323 ], [ 93.56781, 26.938252 ], [ 93.232739, 26.906769 ], [ 93.111399, 26.880082 ], [ 93.050421, 26.883819 ], [ 92.909371, 26.914241 ], [ 92.802813, 26.895028 ], [ 92.682089, 26.947855 ], [ 92.64698, 26.952656 ], [ 92.549046, 26.941453 ], [ 92.496691, 26.921711 ], [ 92.404916, 26.9025 ], [ 92.28604, 26.892359 ], [ 92.197961, 26.86994 ], [ 92.109265, 26.854991 ], [ 92.124664, 26.960124 ], [ 92.076005, 27.041175 ], [ 92.043976, 27.052902 ], [ 92.02673, 27.108318 ], [ 92.032273, 27.167967 ], [ 92.061222, 27.190327 ], [ 92.071077, 27.237694 ], [ 92.091403, 27.264296 ], [ 92.125896, 27.273339 ], [ 92.064918, 27.391365 ], [ 92.021802, 27.444489 ], [ 92.010715, 27.474758 ], [ 91.946657, 27.464138 ], [ 91.839484, 27.489624 ], [ 91.753868, 27.462545 ], [ 91.71876, 27.467324 ], [ 91.663325, 27.507142 ], [ 91.626985, 27.509265 ], [ 91.585101, 27.540578 ], [ 91.564775, 27.58196 ], [ 91.582637, 27.598933 ], [ 91.562311, 27.627569 ], [ 91.570934, 27.650897 ], [ 91.622673, 27.692238 ], [ 91.642383, 27.7664 ], [ 91.610355, 27.819343 ], [ 91.544449, 27.820401 ], [ 91.561079, 27.855329 ], [ 91.618978, 27.856916 ], [ 91.611586, 27.891303 ], [ 91.552456, 27.90717 ], [ 91.486551, 27.937311 ], [ 91.490246, 27.971672 ], [ 91.464993, 28.002852 ], [ 91.309776, 28.057791 ], [ 91.251878, 27.970615 ], [ 91.216153, 27.989113 ], [ 91.162567, 27.968501 ], [ 91.147784, 27.927794 ], [ 91.155175, 27.894476 ], [ 91.113292, 27.846333 ], [ 91.025828, 27.857445 ], [ 90.96485, 27.900294 ], [ 90.976553, 27.935725 ], [ 90.96177, 27.9537 ], [ 90.896481, 27.946299 ], [ 90.853365, 27.969029 ], [ 90.806554, 28.015005 ], [ 90.802242, 28.040362 ], [ 90.741264, 28.053038 ], [ 90.701844, 28.076274 ], [ 90.591591, 28.021345 ], [ 90.569417, 28.044059 ], [ 90.513983, 28.062016 ], [ 90.47949, 28.044587 ], [ 90.43699, 28.063073 ], [ 90.384019, 28.06096 ], [ 90.367389, 28.088946 ], [ 90.297172, 28.153868 ], [ 90.231882, 28.144897 ], [ 90.189999, 28.161782 ], [ 90.166593, 28.187632 ], [ 90.124709, 28.190797 ], [ 90.103151, 28.141731 ], [ 90.07297, 28.155451 ], [ 90.03355, 28.136981 ], [ 90.017536, 28.162837 ], [ 89.976268, 28.189215 ], [ 89.901739, 28.18183 ], [ 89.869094, 28.221386 ], [ 89.789638, 28.240895 ], [ 89.779167, 28.197127 ], [ 89.720037, 28.170224 ], [ 89.605472, 28.161782 ], [ 89.541414, 28.088418 ], [ 89.511233, 28.086307 ], [ 89.461958, 28.03191 ], [ 89.44348, 27.968501 ], [ 89.375727, 27.875962 ], [ 89.295655, 27.84845 ], [ 89.238988, 27.796581 ], [ 89.184786, 27.673689 ], [ 89.131815, 27.633402 ], [ 89.128735, 27.611131 ], [ 89.163228, 27.574534 ], [ 89.109025, 27.537925 ], [ 89.095474, 27.471572 ], [ 89.132431, 27.441302 ], [ 89.182938, 27.373829 ], [ 89.152757, 27.319076 ], [ 89.077612, 27.287168 ], [ 89.067757, 27.240354 ], [ 88.984605, 27.208957 ], [ 88.942105, 27.261636 ], [ 88.911924, 27.272807 ], [ 88.920548, 27.325456 ], [ 88.901453, 27.327583 ], [ 88.867577, 27.3818 ], [ 88.838012, 27.37808 ], [ 88.809063, 27.405711 ], [ 88.783193, 27.467324 ], [ 88.797976, 27.521473 ], [ 88.770874, 27.563924 ], [ 88.813374, 27.606889 ], [ 88.816454, 27.641354 ], [ 88.852178, 27.671039 ], [ 88.850331, 27.710783 ], [ 88.870657, 27.743098 ], [ 88.863265, 27.811932 ], [ 88.888519, 27.846863 ], [ 88.864497, 27.921448 ], [ 88.846635, 27.921448 ], [ 88.842939, 28.006023 ], [ 88.812142, 28.018175 ], [ 88.764099, 28.068353 ], [ 88.67602, 28.068353 ], [ 88.645223, 28.111119 ], [ 88.620585, 28.091586 ], [ 88.565151, 28.083139 ], [ 88.554064, 28.027684 ], [ 88.498013, 28.04089 ], [ 88.469064, 28.009721 ], [ 88.43334, 28.002852 ], [ 88.401311, 27.976958 ], [ 88.357579, 27.986471 ], [ 88.254101, 27.939426 ], [ 88.242398, 27.967444 ], [ 88.203594, 27.943127 ], [ 88.156783, 27.957929 ], [ 88.120442, 27.915103 ], [ 88.137689, 27.878607 ], [ 88.111819, 27.864852 ], [ 88.090877, 27.885484 ], [ 88.037291, 27.901881 ], [ 87.982472, 27.884426 ], [ 87.930733, 27.909285 ], [ 87.826639, 27.927794 ], [ 87.782292, 27.890774 ], [ 87.77798, 27.860091 ], [ 87.727473, 27.802933 ], [ 87.668343, 27.809815 ], [ 87.670191, 27.832045 ], [ 87.598126, 27.814579 ], [ 87.58088, 27.859562 ], [ 87.45954, 27.820931 ], [ 87.418272, 27.825694 ], [ 87.421967, 27.856916 ], [ 87.364069, 27.824106 ], [ 87.317258, 27.826753 ], [ 87.280917, 27.845275 ], [ 87.249504, 27.839454 ], [ 87.227946, 27.812991 ], [ 87.173744, 27.818284 ], [ 87.118309, 27.840512 ], [ 87.080737, 27.910872 ], [ 87.035157, 27.946299 ], [ 86.935375, 27.955286 ], [ 86.926752, 27.985942 ], [ 86.885484, 27.995983 ], [ 86.864542, 28.022401 ], [ 86.827586, 28.012363 ], [ 86.756753, 28.032967 ], [ 86.768456, 28.06941 ], [ 86.74813, 28.089474 ], [ 86.700086, 28.101617 ], [ 86.662514, 28.092114 ], [ 86.647732, 28.06941 ], [ 86.611391, 28.069938 ], [ 86.60092, 28.097922 ], [ 86.568891, 28.103201 ], [ 86.55842, 28.047757 ], [ 86.537478, 28.044587 ], [ 86.513457, 27.996511 ], [ 86.514689, 27.954757 ], [ 86.475884, 27.944713 ], [ 86.450015, 27.908757 ], [ 86.414906, 27.904526 ], [ 86.393349, 27.926736 ], [ 86.308965, 27.950528 ], [ 86.27324, 27.976958 ], [ 86.231972, 27.974315 ], [ 86.206103, 28.084195 ], [ 86.223965, 28.092642 ], [ 86.19132, 28.167058 ], [ 86.140198, 28.114814 ], [ 86.128495, 28.086835 ], [ 86.086611, 28.090002 ], [ 86.082915, 28.018175 ], [ 86.125415, 27.923035 ], [ 86.053966, 27.900823 ], [ 86.002227, 27.90717 ], [ 85.949256, 27.937311 ], [ 85.980053, 27.984357 ], [ 85.901213, 28.053566 ], [ 85.898749, 28.101617 ], [ 85.871648, 28.124843 ], [ 85.854402, 28.172334 ], [ 85.791576, 28.195544 ], [ 85.753388, 28.227714 ], [ 85.720743, 28.372093 ], [ 85.682555, 28.375779 ], [ 85.650526, 28.283592 ], [ 85.601251, 28.254075 ], [ 85.602483, 28.295712 ], [ 85.520563, 28.326798 ], [ 85.458969, 28.332593 ], [ 85.415853, 28.321003 ], [ 85.379512, 28.274105 ], [ 85.349947, 28.298347 ], [ 85.272339, 28.282538 ], [ 85.209513, 28.338914 ], [ 85.179948, 28.324164 ], [ 85.113427, 28.344708 ], [ 85.129441, 28.377885 ], [ 85.108499, 28.461047 ], [ 85.160238, 28.49261 ], [ 85.189803, 28.544669 ], [ 85.18426, 28.587244 ], [ 85.195963, 28.624022 ], [ 85.155926, 28.643983 ], [ 85.126361, 28.676016 ], [ 85.05676, 28.674441 ], [ 84.995782, 28.611414 ], [ 84.981616, 28.586193 ], [ 84.896616, 28.587244 ], [ 84.857196, 28.567798 ], [ 84.773428, 28.610363 ], [ 84.698284, 28.633478 ], [ 84.699515, 28.671816 ], [ 84.669334, 28.680742 ], [ 84.650856, 28.714338 ], [ 84.620059, 28.732182 ], [ 84.557233, 28.74635 ], [ 84.483321, 28.735331 ], [ 84.445133, 28.764189 ], [ 84.434046, 28.823978 ], [ 84.404481, 28.828173 ], [ 84.408176, 28.85386 ], [ 84.340423, 28.866963 ], [ 84.330568, 28.859101 ], [ 84.268358, 28.895261 ], [ 84.234481, 28.889497 ], [ 84.228322, 28.949738 ], [ 84.248648, 29.030353 ], [ 84.224626, 29.049189 ], [ 84.194445, 29.045004 ], [ 84.192597, 29.084236 ], [ 84.20738, 29.118749 ], [ 84.176583, 29.133909 ], [ 84.17104, 29.19453 ], [ 84.197525, 29.210202 ], [ 84.203068, 29.239972 ], [ 84.130388, 29.239972 ], [ 84.116837, 29.286438 ], [ 84.052163, 29.296877 ], [ 84.002272, 29.291658 ], [ 83.986874, 29.325057 ], [ 83.949301, 29.312533 ], [ 83.911729, 29.323491 ], [ 83.851367, 29.294789 ], [ 83.82057, 29.294267 ], [ 83.800244, 29.249372 ], [ 83.727563, 29.244672 ], [ 83.667201, 29.200277 ], [ 83.656114, 29.16736 ], [ 83.596368, 29.174153 ], [ 83.57789, 29.203934 ], [ 83.548941, 29.201322 ], [ 83.492274, 29.280174 ], [ 83.463941, 29.285916 ], [ 83.450391, 29.332883 ], [ 83.423289, 29.361053 ], [ 83.415898, 29.420496 ], [ 83.383253, 29.42206 ], [ 83.325355, 29.502826 ], [ 83.27608, 29.505951 ], [ 83.266841, 29.571035 ], [ 83.217565, 29.60018 ], [ 83.164595, 29.595496 ], [ 83.159667, 29.61735 ], [ 83.12887, 29.623593 ], [ 83.088834, 29.604863 ], [ 83.011226, 29.667804 ], [ 82.966878, 29.658963 ], [ 82.9484, 29.704718 ], [ 82.885574, 29.689122 ], [ 82.830756, 29.687562 ], [ 82.816589, 29.717192 ], [ 82.774089, 29.726548 ], [ 82.757459, 29.761881 ], [ 82.691553, 29.766037 ], [ 82.737749, 29.80655 ], [ 82.703872, 29.847566 ], [ 82.6238, 29.834588 ], [ 82.64351, 29.868846 ], [ 82.609017, 29.886489 ], [ 82.560974, 29.955476 ], [ 82.498148, 29.947698 ], [ 82.474743, 29.973622 ], [ 82.431011, 29.989692 ], [ 82.412533, 30.011978 ], [ 82.368185, 30.014051 ], [ 82.333693, 30.045138 ], [ 82.311519, 30.035813 ], [ 82.246845, 30.071555 ], [ 82.17786, 30.06793 ], [ 82.183403, 30.12178 ], [ 82.207425, 30.143519 ], [ 82.188947, 30.18543 ], [ 82.142135, 30.200948 ], [ 82.114418, 30.226806 ], [ 82.11873, 30.279019 ], [ 82.132896, 30.30434 ], [ 82.104563, 30.346182 ], [ 82.060215, 30.332237 ], [ 82.022027, 30.339468 ], [ 81.99123, 30.322939 ], [ 81.954274, 30.355995 ], [ 81.939491, 30.344633 ], [ 81.872354, 30.373035 ], [ 81.759021, 30.385426 ], [ 81.723913, 30.407623 ], [ 81.63029, 30.446842 ], [ 81.613044, 30.412784 ], [ 81.566232, 30.428782 ], [ 81.555761, 30.369421 ], [ 81.494783, 30.381296 ], [ 81.454131, 30.412268 ], [ 81.418407, 30.420525 ], [ 81.406704, 30.40401 ], [ 81.432573, 30.379231 ], [ 81.406088, 30.369421 ], [ 81.399929, 30.319323 ], [ 81.427646, 30.305373 ], [ 81.406088, 30.291938 ], [ 81.419023, 30.270232 ], [ 81.397465, 30.240767 ], [ 81.393769, 30.199396 ], [ 81.335871, 30.149729 ], [ 81.269349, 30.153351 ], [ 81.293371, 30.094859 ], [ 81.2829, 30.061197 ], [ 81.247792, 30.032705 ], [ 81.256415, 30.011978 ], [ 81.225618, 30.005759 ], [ 81.131995, 30.016124 ], [ 81.09627, 30.052909 ], [ 81.110437, 30.085538 ], [ 81.085799, 30.100554 ], [ 81.082104, 30.151281 ], [ 81.038372, 30.205086 ], [ 81.034677, 30.246971 ], [ 80.996488, 30.267648 ], [ 80.933662, 30.266614 ], [ 80.910873, 30.30279 ], [ 80.81725, 30.321389 ], [ 80.719316, 30.414848 ], [ 80.692214, 30.416913 ], [ 80.633084, 30.458707 ], [ 80.585041, 30.463866 ], [ 80.549316, 30.448905 ], [ 80.504969, 30.483466 ], [ 80.446454, 30.495327 ], [ 80.43044, 30.515952 ], [ 80.357759, 30.520592 ], [ 80.322035, 30.564403 ], [ 80.261673, 30.566465 ], [ 80.214245, 30.586044 ], [ 80.143412, 30.55822 ], [ 80.04363, 30.603559 ], [ 80.014065, 30.661748 ], [ 79.970333, 30.685941 ], [ 79.955551, 30.738422 ], [ 79.961094, 30.771337 ], [ 79.900732, 30.7991 ], [ 79.913051, 30.833022 ], [ 79.890877, 30.855116 ], [ 79.835443, 30.851006 ], [ 79.75845, 30.936769 ], [ 79.729501, 30.941389 ], [ 79.668523, 30.980392 ], [ 79.660516, 30.956787 ], [ 79.59769, 30.925989 ], [ 79.550879, 30.957813 ], [ 79.505915, 31.027584 ], [ 79.427075, 31.018353 ], [ 79.424611, 31.061425 ], [ 79.404901, 31.071678 ], [ 79.35809, 31.031174 ], [ 79.316206, 31.01784 ], [ 79.33222, 30.969103 ], [ 79.227511, 30.949088 ], [ 79.205953, 31.0004 ], [ 79.181931, 31.015788 ], [ 79.096931, 30.992192 ], [ 79.059359, 31.028097 ], [ 79.010084, 31.043994 ], [ 78.97436, 31.115751 ], [ 78.997765, 31.158779 ], [ 78.930628, 31.220726 ], [ 78.923852, 31.246824 ], [ 78.884432, 31.277006 ], [ 78.865338, 31.312804 ], [ 78.859179, 31.289281 ], [ 78.795121, 31.301043 ], [ 78.755085, 31.355742 ], [ 78.760013, 31.392531 ], [ 78.792041, 31.435944 ], [ 78.755701, 31.478316 ], [ 78.729832, 31.478316 ], [ 78.740303, 31.532912 ], [ 78.779723, 31.545154 ], [ 78.833925, 31.584927 ], [ 78.845628, 31.609905 ], [ 78.806824, 31.64099 ], [ 78.798817, 31.675629 ], [ 78.763092, 31.668499 ], [ 78.706426, 31.778453 ], [ 78.654687, 31.819144 ], [ 78.665158, 31.851684 ], [ 78.739687, 31.885228 ], [ 78.768636, 31.92638 ], [ 78.762476, 31.947203 ], [ 78.705194, 31.988835 ], [ 78.60726, 32.023851 ], [ 78.609107, 32.052768 ], [ 78.527188, 32.11463 ], [ 78.509941, 32.147065 ], [ 78.469905, 32.127808 ], [ 78.429869, 32.194683 ], [ 78.430485, 32.212407 ], [ 78.475449, 32.236708 ], [ 78.508709, 32.297939 ], [ 78.480992, 32.329297 ], [ 78.483456, 32.357106 ], [ 78.458818, 32.379853 ], [ 78.472985, 32.435431 ], [ 78.426174, 32.502584 ], [ 78.395377, 32.530339 ], [ 78.424942, 32.565652 ], [ 78.500086, 32.580782 ], [ 78.518564, 32.605993 ], [ 78.577695, 32.615067 ], [ 78.588782, 32.637748 ], [ 78.628202, 32.630188 ], [ 78.675013, 32.658408 ], [ 78.6861, 32.680071 ], [ 78.741534, 32.703743 ], [ 78.74215, 32.654881 ], [ 78.781571, 32.608009 ], [ 78.760629, 32.563635 ], [ 78.782186, 32.480373 ], [ 78.81052, 32.436441 ], [ 78.87273, 32.40512 ], [ 78.904142, 32.374798 ], [ 78.970664, 32.331826 ], [ 79.005772, 32.375304 ], [ 79.067982, 32.380863 ], [ 79.103091, 32.369744 ], [ 79.124649, 32.416235 ], [ 79.135736, 32.472295 ], [ 79.180083, 32.492994 ], [ 79.190554, 32.511669 ], [ 79.252148, 32.516715 ], [ 79.272474, 32.561113 ], [ 79.308199, 32.596918 ], [ 79.299575, 32.637244 ], [ 79.27309, 32.678056 ], [ 79.301423, 32.728919 ], [ 79.275554, 32.778746 ], [ 79.225047, 32.784281 ], [ 79.237982, 32.846145 ], [ 79.227511, 32.89038 ], [ 79.255844, 32.942628 ], [ 79.204721, 32.964724 ], [ 79.162837, 33.01191 ], [ 79.139431, 33.117735 ], [ 79.162221, 33.165841 ], [ 79.152366, 33.184375 ], [ 79.10925, 33.200401 ], [ 79.072294, 33.22844 ], [ 79.083997, 33.245459 ], [ 79.041497, 33.268479 ], [ 79.022403, 33.323504 ], [ 78.9682, 33.334505 ], [ 78.949722, 33.376495 ], [ 78.896751, 33.41247 ], [ 78.84994, 33.419963 ], [ 78.816679, 33.480882 ], [ 78.74215, 33.55323 ], [ 78.755085, 33.623025 ], [ 78.713201, 33.623025 ], [ 78.684868, 33.654415 ], [ 78.692259, 33.676331 ], [ 78.779723, 33.73259 ], [ 78.758165, 33.790802 ], [ 78.766172, 33.823124 ], [ 78.756317, 33.8773 ], [ 78.762476, 33.90959 ], [ 78.734143, 33.918529 ], [ 78.744614, 33.980585 ], [ 78.736607, 33.999937 ], [ 78.656535, 34.030196 ], [ 78.661462, 34.086718 ], [ 78.737223, 34.089692 ], [ 78.801897, 34.137258 ], [ 78.828998, 34.125369 ], [ 78.878273, 34.163012 ], [ 78.910302, 34.143202 ], [ 78.9257, 34.155584 ], [ 78.941099, 34.212022 ], [ 78.958345, 34.230827 ], [ 78.981751, 34.31836 ], [ 79.019939, 34.313417 ], [ 79.039649, 34.33467 ], [ 79.048888, 34.348506 ], [ 79.0107, 34.399877 ], [ 79.039033, 34.421601 ], [ 79.072294, 34.412714 ], [ 79.161605, 34.441345 ], [ 79.179467, 34.422588 ], [ 79.241677, 34.415183 ], [ 79.274322, 34.435916 ], [ 79.326677, 34.44332 ], [ 79.363017, 34.428018 ], [ 79.435082, 34.447761 ], [ 79.504683, 34.45467 ], [ 79.545335, 34.476381 ], [ 79.58106, 34.456151 ], [ 79.675914, 34.451216 ], [ 79.699936, 34.477861 ], [ 79.735661, 34.471447 ], [ 79.801566, 34.478847 ], [ 79.861312, 34.528166 ], [ 79.84345, 34.55725 ], [ 79.88595, 34.642965 ], [ 79.866856, 34.671517 ], [ 79.906892, 34.683821 ], [ 79.898268, 34.732035 ], [ 79.947544, 34.821008 ], [ 79.926602, 34.849499 ], [ 79.961094, 34.862759 ], [ 79.996819, 34.856375 ], [ 80.003594, 34.895162 ], [ 80.034391, 34.902033 ], [ 80.041782, 34.943252 ], [ 80.02392, 34.971209 ], [ 80.04363, 35.022196 ], [ 80.031311, 35.034447 ], [ 80.078123, 35.076578 ], [ 80.118159, 35.066293 ], [ 80.23026, 35.147565 ], [ 80.223484, 35.177409 ], [ 80.257977, 35.203331 ], [ 80.362687, 35.20871 ], [ 80.267832, 35.295701 ], [ 80.286926, 35.35283 ], [ 80.321419, 35.38699 ], [ 80.375006, 35.387966 ], [ 80.432904, 35.449418 ], [ 80.444607, 35.417235 ], [ 80.514824, 35.391869 ], [ 80.532686, 35.404553 ], [ 80.56841, 35.391381 ], [ 80.599823, 35.409431 ], [ 80.65649, 35.393821 ], [ 80.690982, 35.364544 ], [ 80.689135, 35.339162 ], [ 80.759968, 35.334768 ], [ 80.844351, 35.345508 ], [ 80.894242, 35.324027 ], [ 80.924423, 35.330862 ], [ 80.963844, 35.310842 ], [ 81.026053, 35.31133 ], [ 81.002648, 35.334768 ], [ 81.030981, 35.337209 ], [ 81.031597, 35.380648 ], [ 81.054387, 35.402602 ], [ 81.09935, 35.40748 ], [ 81.103662, 35.386015 ], [ 81.142466, 35.365032 ], [ 81.191741, 35.36552 ], [ 81.219458, 35.319144 ], [ 81.26627, 35.322562 ], [ 81.285364, 35.345508 ], [ 81.314313, 35.337209 ], [ 81.363588, 35.354783 ], [ 81.385762, 35.335256 ], [ 81.441196, 35.333303 ], [ 81.447972, 35.318167 ], [ 81.504638, 35.279092 ], [ 81.513261, 35.23511 ], [ 81.68634, 35.235599 ], [ 81.736847, 35.26248 ], [ 81.804601, 35.270786 ], [ 81.853876, 35.25857 ], [ 81.927789, 35.271275 ], [ 81.955506, 35.307423 ], [ 81.99123, 35.30547 ], [ 82.030034, 35.321585 ], [ 82.05344, 35.35039 ], [ 82.029419, 35.426013 ], [ 82.034346, 35.451855 ], [ 82.071302, 35.450393 ], [ 82.086701, 35.467454 ], [ 82.164925, 35.495719 ], [ 82.189563, 35.513258 ], [ 82.234526, 35.520565 ], [ 82.263475, 35.547837 ], [ 82.2992, 35.544916 ], [ 82.328149, 35.559523 ], [ 82.350323, 35.611113 ], [ 82.336156, 35.651486 ], [ 82.392823, 35.656349 ], [ 82.424852, 35.712736 ], [ 82.468583, 35.717595 ], [ 82.501844, 35.701073 ], [ 82.546192, 35.708362 ], [ 82.628727, 35.692324 ], [ 82.652133, 35.67288 ], [ 82.731589, 35.637868 ], [ 82.780249, 35.666073 ], [ 82.795031, 35.688436 ], [ 82.873871, 35.688922 ], [ 82.894813, 35.673852 ], [ 82.967494, 35.667532 ], [ 82.956407, 35.636409 ], [ 82.981661, 35.599922 ], [ 82.971806, 35.548324 ], [ 82.998907, 35.484512 ], [ 83.067892, 35.46258 ], [ 83.088834, 35.425526 ], [ 83.127022, 35.398699 ], [ 83.178145, 35.38943 ], [ 83.251442, 35.417722 ], [ 83.280391, 35.401138 ], [ 83.333978, 35.397236 ], [ 83.405427, 35.380648 ], [ 83.449159, 35.382111 ], [ 83.502745, 35.360639 ], [ 83.540318, 35.364056 ], [ 83.54155, 35.341603 ], [ 83.599448, 35.351366 ], [ 83.622238, 35.335256 ], [ 83.677672, 35.361128 ], [ 83.785462, 35.36308 ], [ 83.79778, 35.354783 ], [ 83.885244, 35.367472 ], [ 83.906186, 35.40309 ], [ 84.005968, 35.422599 ], [ 84.077417, 35.400163 ], [ 84.095895, 35.362592 ], [ 84.140859, 35.379184 ], [ 84.160569, 35.359663 ], [ 84.200605, 35.381135 ], [ 84.274517, 35.404065 ], [ 84.333032, 35.413821 ], [ 84.424191, 35.466479 ], [ 84.45314, 35.473303 ], [ 84.475929, 35.516181 ], [ 84.448828, 35.550272 ], [ 84.513502, 35.564391 ], [ 84.570168, 35.588242 ], [ 84.628067, 35.595055 ], [ 84.704443, 35.616951 ], [ 84.729081, 35.613546 ], [ 84.798066, 35.647595 ], [ 84.920022, 35.696213 ], [ 84.973608, 35.709334 ], [ 84.99455, 35.737028 ], [ 85.053065, 35.752086 ], [ 85.146071, 35.742371 ], [ 85.271107, 35.788989 ], [ 85.341324, 35.753543 ], [ 85.373969, 35.700101 ], [ 85.518715, 35.680658 ], [ 85.566142, 35.6403 ], [ 85.612953, 35.651486 ], [ 85.65299, 35.731199 ], [ 85.691178, 35.751114 ], [ 85.811286, 35.778794 ], [ 85.835308, 35.771996 ], [ 85.903677, 35.78462 ], [ 85.949256, 35.778794 ], [ 86.035488, 35.846738 ], [ 86.05335, 35.842857 ], [ 86.090306, 35.876809 ], [ 86.093386, 35.906868 ], [ 86.129111, 35.941761 ], [ 86.150668, 36.00424 ], [ 86.173458, 36.008113 ], [ 86.199944, 36.047801 ], [ 86.182081, 36.064734 ], [ 86.187625, 36.130983 ], [ 86.248603, 36.141616 ], [ 86.2794, 36.170608 ], [ 86.35824, 36.168676 ], [ 86.392733, 36.206834 ], [ 86.454943, 36.221319 ], [ 86.515305, 36.205385 ], [ 86.531935, 36.227113 ], [ 86.599072, 36.222285 ], [ 86.69947, 36.24449 ], [ 86.746282, 36.291777 ], [ 86.836209, 36.291294 ], [ 86.86331, 36.299977 ], [ 86.887332, 36.262829 ], [ 86.931064, 36.265242 ], [ 86.943998, 36.284058 ], [ 86.996353, 36.308658 ], [ 87.051788, 36.2966 ], [ 87.08628, 36.310587 ], [ 87.149106, 36.297565 ], [ 87.161425, 36.325535 ], [ 87.193454, 36.349158 ], [ 87.292004, 36.358797 ], [ 87.348055, 36.393008 ], [ 87.363453, 36.420463 ], [ 87.386859, 36.412757 ], [ 87.426895, 36.42576 ], [ 87.460155, 36.409868 ], [ 87.470626, 36.354459 ], [ 87.570409, 36.342409 ], [ 87.6203, 36.360243 ], [ 87.731785, 36.384818 ], [ 87.767509, 36.3747 ], [ 87.826023, 36.391563 ], [ 87.838342, 36.383855 ], [ 87.919646, 36.39349 ], [ 87.95845, 36.408423 ], [ 87.983088, 36.437797 ], [ 88.006494, 36.430575 ], [ 88.092109, 36.43539 ], [ 88.134609, 36.427205 ], [ 88.182652, 36.452721 ], [ 88.222688, 36.447426 ], [ 88.241782, 36.468605 ], [ 88.282434, 36.470049 ], [ 88.366202, 36.458016 ], [ 88.356963, 36.477268 ], [ 88.41055, 36.473418 ], [ 88.470912, 36.48208 ], [ 88.498629, 36.446463 ], [ 88.573158, 36.461386 ], [ 88.618121, 36.428168 ], [ 88.623665, 36.389636 ], [ 88.690186, 36.367954 ], [ 88.766563, 36.292259 ], [ 88.783809, 36.291777 ], [ 88.802903, 36.33807 ], [ 88.838628, 36.353496 ], [ 88.870657, 36.348193 ], [ 88.926091, 36.36458 ], [ 88.964279, 36.318785 ], [ 89.013554, 36.315409 ], [ 89.054822, 36.291777 ], [ 89.10225, 36.281164 ], [ 89.126887, 36.254626 ], [ 89.198952, 36.260417 ], [ 89.232213, 36.295636 ], [ 89.292575, 36.231457 ], [ 89.335075, 36.23725 ], [ 89.375727, 36.228078 ], [ 89.490291, 36.151281 ], [ 89.594385, 36.126632 ], [ 89.614711, 36.109712 ], [ 89.711414, 36.093272 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"610000\", \"name\": \"陕西省\", \"center\": [ 108.948024, 34.263161 ], \"centroid\": [ 108.887304, 35.263625 ], \"childrenNum\": 10, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 26, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 110.398352, 33.176862 ], [ 110.398352, 33.176862 ], [ 110.372482, 33.186379 ], [ 110.33799, 33.160331 ], [ 110.285635, 33.171352 ], [ 110.218497, 33.163336 ], [ 110.164911, 33.209415 ], [ 110.031252, 33.191888 ], [ 109.999223, 33.212419 ], [ 109.973353, 33.203907 ], [ 109.916687, 33.229942 ], [ 109.852013, 33.247961 ], [ 109.813209, 33.236449 ], [ 109.732521, 33.231443 ], [ 109.693101, 33.254468 ], [ 109.649985, 33.251465 ], [ 109.619804, 33.275484 ], [ 109.60687, 33.235949 ], [ 109.514479, 33.237951 ], [ 109.498464, 33.207412 ], [ 109.438718, 33.152314 ], [ 109.468283, 33.140288 ], [ 109.522486, 33.138785 ], [ 109.576073, 33.110216 ], [ 109.688174, 33.116733 ], [ 109.704188, 33.101694 ], [ 109.794731, 33.067095 ], [ 109.785492, 32.987316 ], [ 109.76455, 32.909474 ], [ 109.789804, 32.882339 ], [ 109.847702, 32.893395 ], [ 109.856941, 32.910479 ], [ 109.907448, 32.903947 ], [ 109.927158, 32.887364 ], [ 109.988752, 32.886359 ], [ 110.051578, 32.851676 ], [ 110.105164, 32.832569 ], [ 110.142121, 32.802895 ], [ 110.127338, 32.77774 ], [ 110.159367, 32.767173 ], [ 110.156903, 32.683093 ], [ 110.206179, 32.633212 ], [ 110.153824, 32.593388 ], [ 110.124259, 32.616579 ], [ 110.090382, 32.617083 ], [ 110.084223, 32.580782 ], [ 110.017701, 32.546989 ], [ 109.97089, 32.577756 ], [ 109.910528, 32.592884 ], [ 109.816905, 32.577252 ], [ 109.746072, 32.594901 ], [ 109.726978, 32.608513 ], [ 109.631507, 32.599943 ], [ 109.619804, 32.56767 ], [ 109.637051, 32.540935 ], [ 109.575457, 32.506622 ], [ 109.526797, 32.43341 ], [ 109.529877, 32.405625 ], [ 109.502776, 32.38895 ], [ 109.513247, 32.342444 ], [ 109.495385, 32.300468 ], [ 109.528645, 32.270112 ], [ 109.550203, 32.225065 ], [ 109.592703, 32.219495 ], [ 109.604406, 32.199241 ], [ 109.58716, 32.161251 ], [ 109.621652, 32.106519 ], [ 109.590855, 32.047696 ], [ 109.590855, 32.012688 ], [ 109.631507, 31.962436 ], [ 109.62042, 31.928412 ], [ 109.584696, 31.900472 ], [ 109.60379, 31.885737 ], [ 109.633971, 31.824738 ], [ 109.633971, 31.804396 ], [ 109.592087, 31.789136 ], [ 109.585928, 31.726546 ], [ 109.549587, 31.73011 ], [ 109.502776, 31.716365 ], [ 109.446109, 31.722983 ], [ 109.381436, 31.705165 ], [ 109.281654, 31.716874 ], [ 109.282885, 31.743343 ], [ 109.253936, 31.759628 ], [ 109.279806, 31.776418 ], [ 109.27611, 31.79931 ], [ 109.195422, 31.817618 ], [ 109.191111, 31.85575 ], [ 109.123357, 31.892851 ], [ 109.085785, 31.929428 ], [ 108.986619, 31.980205 ], [ 108.902235, 31.984774 ], [ 108.837561, 32.039072 ], [ 108.78767, 32.04871 ], [ 108.75133, 32.076098 ], [ 108.734084, 32.106519 ], [ 108.676801, 32.10297 ], [ 108.585026, 32.17189 ], [ 108.543758, 32.177969 ], [ 108.509882, 32.201266 ], [ 108.507418, 32.245819 ], [ 108.469846, 32.270618 ], [ 108.414411, 32.252399 ], [ 108.389773, 32.263533 ], [ 108.310933, 32.232152 ], [ 108.240716, 32.274666 ], [ 108.179738, 32.221521 ], [ 108.156948, 32.239239 ], [ 108.143398, 32.219495 ], [ 108.086731, 32.233165 ], [ 108.018362, 32.2119 ], [ 108.024521, 32.177462 ], [ 107.979558, 32.146051 ], [ 107.924739, 32.197215 ], [ 107.890247, 32.214432 ], [ 107.864377, 32.201266 ], [ 107.812022, 32.247844 ], [ 107.753508, 32.338399 ], [ 107.707929, 32.331826 ], [ 107.680827, 32.397035 ], [ 107.648183, 32.413709 ], [ 107.598291, 32.411688 ], [ 107.527458, 32.38238 ], [ 107.489886, 32.425328 ], [ 107.456625, 32.41775 ], [ 107.460937, 32.453612 ], [ 107.438763, 32.465732 ], [ 107.436299, 32.529835 ], [ 107.382097, 32.54043 ], [ 107.356843, 32.506622 ], [ 107.313727, 32.489965 ], [ 107.287858, 32.457147 ], [ 107.263836, 32.403099 ], [ 107.212097, 32.428864 ], [ 107.189924, 32.468256 ], [ 107.127098, 32.482393 ], [ 107.080286, 32.542448 ], [ 107.108004, 32.600951 ], [ 107.098765, 32.649338 ], [ 107.05996, 32.686115 ], [ 107.066736, 32.708779 ], [ 107.012533, 32.721367 ], [ 106.912751, 32.704247 ], [ 106.903512, 32.721367 ], [ 106.854853, 32.724388 ], [ 106.82344, 32.705254 ], [ 106.793259, 32.712807 ], [ 106.783404, 32.735967 ], [ 106.733513, 32.739491 ], [ 106.670071, 32.694678 ], [ 106.626955, 32.682086 ], [ 106.585687, 32.68813 ], [ 106.517934, 32.668485 ], [ 106.498224, 32.649338 ], [ 106.451412, 32.65992 ], [ 106.421231, 32.616579 ], [ 106.389203, 32.62666 ], [ 106.347935, 32.671003 ], [ 106.301123, 32.680071 ], [ 106.267863, 32.673522 ], [ 106.254928, 32.693671 ], [ 106.17424, 32.6977 ], [ 106.120037, 32.719856 ], [ 106.071378, 32.758114 ], [ 106.076305, 32.759121 ], [ 106.076921, 32.76365 ], [ 106.07261, 32.76365 ], [ 106.093552, 32.82402 ], [ 106.071378, 32.828546 ], [ 106.044277, 32.864747 ], [ 106.011632, 32.829552 ], [ 105.969132, 32.849162 ], [ 105.93156, 32.826032 ], [ 105.893371, 32.838603 ], [ 105.849024, 32.817985 ], [ 105.825002, 32.824523 ], [ 105.822538, 32.770192 ], [ 105.779423, 32.750061 ], [ 105.768952, 32.767676 ], [ 105.719061, 32.759624 ], [ 105.677793, 32.726402 ], [ 105.596489, 32.69921 ], [ 105.585402, 32.728919 ], [ 105.563844, 32.724891 ], [ 105.555221, 32.794343 ], [ 105.534279, 32.790822 ], [ 105.524424, 32.847654 ], [ 105.495475, 32.873292 ], [ 105.49917, 32.911986 ], [ 105.528119, 32.919019 ], [ 105.565692, 32.906962 ], [ 105.590329, 32.87681 ], [ 105.638373, 32.879323 ], [ 105.656851, 32.895405 ], [ 105.735691, 32.905454 ], [ 105.82685, 32.950663 ], [ 105.861959, 32.939112 ], [ 105.917393, 32.993841 ], [ 105.926632, 33.042517 ], [ 105.914929, 33.066092 ], [ 105.934639, 33.112221 ], [ 105.923552, 33.147805 ], [ 105.897067, 33.146803 ], [ 105.93156, 33.178365 ], [ 105.968516, 33.154318 ], [ 105.965436, 33.204407 ], [ 105.917393, 33.237951 ], [ 105.862574, 33.234447 ], [ 105.799133, 33.258471 ], [ 105.791741, 33.278486 ], [ 105.752937, 33.291994 ], [ 105.755401, 33.329004 ], [ 105.709822, 33.382991 ], [ 105.827466, 33.379993 ], [ 105.837937, 33.410971 ], [ 105.831162, 33.451926 ], [ 105.842248, 33.489866 ], [ 105.871198, 33.511325 ], [ 105.902611, 33.556222 ], [ 105.940183, 33.570684 ], [ 105.971596, 33.613058 ], [ 106.047356, 33.610067 ], [ 106.086776, 33.617045 ], [ 106.117573, 33.602591 ], [ 106.108334, 33.569686 ], [ 106.187174, 33.546746 ], [ 106.237681, 33.564201 ], [ 106.303587, 33.604585 ], [ 106.35163, 33.587137 ], [ 106.384891, 33.612061 ], [ 106.447101, 33.613058 ], [ 106.456956, 33.532779 ], [ 106.540108, 33.512822 ], [ 106.58076, 33.576169 ], [ 106.575832, 33.631497 ], [ 106.534564, 33.695254 ], [ 106.482825, 33.707203 ], [ 106.488369, 33.757969 ], [ 106.461883, 33.789807 ], [ 106.491448, 33.834559 ], [ 106.475434, 33.875809 ], [ 106.428007, 33.866368 ], [ 106.41076, 33.909093 ], [ 106.474202, 33.970659 ], [ 106.471738, 34.024244 ], [ 106.505615, 34.056479 ], [ 106.501919, 34.105055 ], [ 106.560434, 34.109514 ], [ 106.585071, 34.149641 ], [ 106.55797, 34.229837 ], [ 106.5321, 34.254079 ], [ 106.496376, 34.238248 ], [ 106.526557, 34.292159 ], [ 106.577064, 34.280786 ], [ 106.589383, 34.253584 ], [ 106.63373, 34.260014 ], [ 106.652825, 34.24369 ], [ 106.68239, 34.256057 ], [ 106.705179, 34.299575 ], [ 106.691013, 34.337635 ], [ 106.717498, 34.369255 ], [ 106.638042, 34.391481 ], [ 106.610941, 34.454177 ], [ 106.558586, 34.48822 ], [ 106.513622, 34.498085 ], [ 106.514238, 34.511894 ], [ 106.455108, 34.531617 ], [ 106.334384, 34.517811 ], [ 106.341159, 34.568093 ], [ 106.314058, 34.578934 ], [ 106.419384, 34.643458 ], [ 106.471122, 34.634102 ], [ 106.442173, 34.675455 ], [ 106.456956, 34.703996 ], [ 106.487137, 34.715311 ], [ 106.505615, 34.746789 ], [ 106.539492, 34.745805 ], [ 106.575216, 34.769897 ], [ 106.550579, 34.82936 ], [ 106.556122, 34.861285 ], [ 106.527789, 34.876507 ], [ 106.493296, 34.941289 ], [ 106.484673, 34.983959 ], [ 106.494528, 35.006021 ], [ 106.494528, 35.006021 ], [ 106.52163, 35.027587 ], [ 106.541956, 35.083925 ], [ 106.577064, 35.089312 ], [ 106.615252, 35.071191 ], [ 106.706411, 35.081966 ], [ 106.710723, 35.100574 ], [ 106.838222, 35.080007 ], [ 106.901664, 35.094698 ], [ 106.950323, 35.066782 ], [ 106.990975, 35.068252 ], [ 107.012533, 35.029547 ], [ 107.08275, 35.024156 ], [ 107.089526, 34.976604 ], [ 107.119707, 34.950119 ], [ 107.162206, 34.944233 ], [ 107.189308, 34.893198 ], [ 107.252749, 34.880925 ], [ 107.286626, 34.931968 ], [ 107.350068, 34.93393 ], [ 107.369162, 34.917738 ], [ 107.400575, 34.932949 ], [ 107.455394, 34.916757 ], [ 107.523763, 34.909886 ], [ 107.564415, 34.968757 ], [ 107.619849, 34.964834 ], [ 107.638943, 34.935402 ], [ 107.675284, 34.9511 ], [ 107.741805, 34.953553 ], [ 107.842203, 34.979056 ], [ 107.863145, 34.999158 ], [ 107.846515, 35.024646 ], [ 107.814486, 35.024646 ], [ 107.773218, 35.060904 ], [ 107.773218, 35.060904 ], [ 107.769523, 35.064333 ], [ 107.769523, 35.064333 ], [ 107.727639, 35.120157 ], [ 107.715936, 35.168114 ], [ 107.686371, 35.218 ], [ 107.652494, 35.244886 ], [ 107.667277, 35.257104 ], [ 107.737494, 35.267366 ], [ 107.745501, 35.311819 ], [ 107.841587, 35.276649 ], [ 107.867457, 35.256127 ], [ 107.960464, 35.263457 ], [ 107.949993, 35.245375 ], [ 108.049159, 35.253683 ], [ 108.094739, 35.280069 ], [ 108.174811, 35.304981 ], [ 108.221622, 35.296678 ], [ 108.239484, 35.256127 ], [ 108.296767, 35.267855 ], [ 108.345426, 35.300586 ], [ 108.36144, 35.279581 ], [ 108.48894, 35.275184 ], [ 108.547454, 35.304981 ], [ 108.583178, 35.294724 ], [ 108.614591, 35.328909 ], [ 108.61028, 35.355271 ], [ 108.631222, 35.418698 ], [ 108.605968, 35.503028 ], [ 108.625678, 35.537124 ], [ 108.618287, 35.557088 ], [ 108.539447, 35.605761 ], [ 108.517889, 35.699615 ], [ 108.533903, 35.746257 ], [ 108.527744, 35.82442 ], [ 108.499411, 35.872444 ], [ 108.518505, 35.905414 ], [ 108.562852, 35.921409 ], [ 108.593649, 35.950967 ], [ 108.652164, 35.94806 ], [ 108.659555, 35.990683 ], [ 108.688504, 36.021183 ], [ 108.682345, 36.062316 ], [ 108.712526, 36.138716 ], [ 108.646004, 36.254143 ], [ 108.641693, 36.359279 ], [ 108.651548, 36.384818 ], [ 108.618903, 36.433946 ], [ 108.562852, 36.43876 ], [ 108.510498, 36.47438 ], [ 108.514809, 36.445501 ], [ 108.495099, 36.422389 ], [ 108.460606, 36.422871 ], [ 108.408252, 36.45946 ], [ 108.391621, 36.505654 ], [ 108.365136, 36.519603 ], [ 108.340498, 36.559032 ], [ 108.262274, 36.549417 ], [ 108.245644, 36.571048 ], [ 108.210535, 36.577296 ], [ 108.204992, 36.606607 ], [ 108.204992, 36.606607 ], [ 108.222854, 36.631105 ], [ 108.1976, 36.630144 ], [ 108.163724, 36.563839 ], [ 108.092891, 36.587388 ], [ 108.079956, 36.614294 ], [ 108.060862, 36.592194 ], [ 108.001732, 36.639269 ], [ 108.02329, 36.647912 ], [ 108.006659, 36.683435 ], [ 107.938906, 36.655594 ], [ 107.940754, 36.694953 ], [ 107.914268, 36.720861 ], [ 107.907493, 36.750118 ], [ 107.866841, 36.766899 ], [ 107.768291, 36.792783 ], [ 107.742421, 36.811951 ], [ 107.722095, 36.802367 ], [ 107.670356, 36.83303 ], [ 107.642023, 36.819137 ], [ 107.5909, 36.836382 ], [ 107.540393, 36.828718 ], [ 107.533618, 36.867031 ], [ 107.478183, 36.908196 ], [ 107.365466, 36.905324 ], [ 107.336517, 36.925899 ], [ 107.310032, 36.912502 ], [ 107.291554, 36.979463 ], [ 107.291554, 36.979463 ], [ 107.288474, 37.008143 ], [ 107.288474, 37.008143 ], [ 107.28601, 37.054963 ], [ 107.268764, 37.099367 ], [ 107.281083, 37.127047 ], [ 107.306952, 37.100799 ], [ 107.334669, 37.138975 ], [ 107.336517, 37.165687 ], [ 107.317423, 37.200017 ], [ 107.270612, 37.229089 ], [ 107.309416, 37.239095 ], [ 107.273075, 37.29101 ], [ 107.257677, 37.337179 ], [ 107.282931, 37.437036 ], [ 107.284162, 37.481691 ], [ 107.345756, 37.518725 ], [ 107.369162, 37.58752 ], [ 107.330358, 37.584201 ], [ 107.311264, 37.609806 ], [ 107.361155, 37.613125 ], [ 107.422133, 37.665254 ], [ 107.389488, 37.671413 ], [ 107.387024, 37.691305 ], [ 107.425828, 37.684201 ], [ 107.484959, 37.706458 ], [ 107.499125, 37.765619 ], [ 107.57119, 37.776499 ], [ 107.599523, 37.791162 ], [ 107.620465, 37.776026 ], [ 107.646335, 37.805349 ], [ 107.659269, 37.844112 ], [ 107.65003, 37.86443 ], [ 107.684523, 37.888522 ], [ 107.732566, 37.84931 ], [ 107.842819, 37.828987 ], [ 107.884703, 37.808186 ], [ 107.982022, 37.787378 ], [ 107.993109, 37.735335 ], [ 108.025753, 37.696041 ], [ 108.012819, 37.66857 ], [ 108.025137, 37.649619 ], [ 108.055318, 37.652462 ], [ 108.134159, 37.622131 ], [ 108.193905, 37.638246 ], [ 108.205608, 37.655779 ], [ 108.24626, 37.665728 ], [ 108.293071, 37.656726 ], [ 108.301078, 37.640616 ], [ 108.422418, 37.648672 ], [ 108.485244, 37.678044 ], [ 108.532671, 37.690832 ], [ 108.628142, 37.651988 ], [ 108.699591, 37.669518 ], [ 108.720533, 37.683728 ], [ 108.777815, 37.683728 ], [ 108.791982, 37.700303 ], [ 108.784591, 37.764673 ], [ 108.799989, 37.784068 ], [ 108.791982, 37.872934 ], [ 108.798141, 37.93385 ], [ 108.82709, 37.989056 ], [ 108.797525, 38.04799 ], [ 108.830786, 38.049875 ], [ 108.883141, 38.01405 ], [ 108.893612, 37.978207 ], [ 108.93488, 37.922521 ], [ 108.9743, 37.931962 ], [ 108.982923, 37.964053 ], [ 109.018648, 37.971602 ], [ 109.037742, 38.021593 ], [ 109.06977, 38.023008 ], [ 109.050676, 38.055059 ], [ 109.069155, 38.091336 ], [ 108.964445, 38.154894 ], [ 108.938575, 38.207582 ], [ 108.976148, 38.245192 ], [ 108.961981, 38.26493 ], [ 109.007561, 38.359316 ], [ 109.051292, 38.385122 ], [ 109.054372, 38.433892 ], [ 109.128901, 38.480288 ], [ 109.175712, 38.518694 ], [ 109.196654, 38.552867 ], [ 109.276726, 38.623035 ], [ 109.331545, 38.597783 ], [ 109.367269, 38.627711 ], [ 109.329081, 38.66043 ], [ 109.338936, 38.701542 ], [ 109.404226, 38.720689 ], [ 109.444262, 38.782763 ], [ 109.511399, 38.833595 ], [ 109.549587, 38.805618 ], [ 109.624116, 38.85457 ], [ 109.672159, 38.928167 ], [ 109.685094, 38.968195 ], [ 109.665384, 38.981687 ], [ 109.72513, 39.018429 ], [ 109.762086, 39.057476 ], [ 109.793499, 39.074204 ], [ 109.851397, 39.122971 ], [ 109.890818, 39.103932 ], [ 109.92223, 39.107183 ], [ 109.893897, 39.141075 ], [ 109.961035, 39.191651 ], [ 109.871723, 39.243581 ], [ 109.90252, 39.271848 ], [ 109.962267, 39.212056 ], [ 110.041107, 39.21623 ], [ 110.109476, 39.249606 ], [ 110.217881, 39.281113 ], [ 110.184005, 39.355192 ], [ 110.161831, 39.387115 ], [ 110.136577, 39.39174 ], [ 110.12549, 39.432891 ], [ 110.152592, 39.45415 ], [ 110.243751, 39.423645 ], [ 110.257917, 39.407001 ], [ 110.385417, 39.310291 ], [ 110.429764, 39.341308 ], [ 110.434692, 39.381101 ], [ 110.482735, 39.360745 ], [ 110.524003, 39.382952 ], [ 110.559728, 39.351027 ], [ 110.566503, 39.320014 ], [ 110.596684, 39.282966 ], [ 110.626249, 39.266751 ], [ 110.702626, 39.273701 ], [ 110.731575, 39.30705 ], [ 110.73835, 39.348713 ], [ 110.782698, 39.38804 ], [ 110.869545, 39.494341 ], [ 110.891103, 39.509118 ], [ 110.958856, 39.519275 ], [ 111.017371, 39.552045 ], [ 111.101138, 39.559428 ], [ 111.136863, 39.587106 ], [ 111.154725, 39.569116 ], [ 111.148566, 39.531277 ], [ 111.10545, 39.497573 ], [ 111.10545, 39.472631 ], [ 111.058639, 39.447681 ], [ 111.064182, 39.400989 ], [ 111.098059, 39.401914 ], [ 111.087588, 39.376013 ], [ 111.125776, 39.366297 ], [ 111.159037, 39.362596 ], [ 111.155341, 39.338531 ], [ 111.186138, 39.35149 ], [ 111.179363, 39.326959 ], [ 111.202152, 39.305197 ], [ 111.247732, 39.302419 ], [ 111.213239, 39.257021 ], [ 111.219399, 39.244044 ], [ 111.163348, 39.152678 ], [ 111.173819, 39.135041 ], [ 111.147334, 39.100681 ], [ 111.138095, 39.064447 ], [ 111.094363, 39.030053 ], [ 111.038313, 39.020289 ], [ 110.998276, 38.998433 ], [ 110.980414, 38.970056 ], [ 111.009979, 38.932823 ], [ 111.016755, 38.889981 ], [ 110.995813, 38.868084 ], [ 111.009363, 38.847579 ], [ 110.965016, 38.755699 ], [ 110.915125, 38.704345 ], [ 110.916357, 38.673981 ], [ 110.880632, 38.626776 ], [ 110.898494, 38.587024 ], [ 110.920052, 38.581878 ], [ 110.907733, 38.521035 ], [ 110.870777, 38.510265 ], [ 110.874473, 38.453579 ], [ 110.840596, 38.439986 ], [ 110.796864, 38.453579 ], [ 110.77777, 38.440924 ], [ 110.746973, 38.366355 ], [ 110.701394, 38.353215 ], [ 110.661358, 38.308617 ], [ 110.601612, 38.308147 ], [ 110.57759, 38.297345 ], [ 110.565887, 38.215105 ], [ 110.528315, 38.211814 ], [ 110.509221, 38.192061 ], [ 110.519692, 38.130889 ], [ 110.501829, 38.097929 ], [ 110.507989, 38.013107 ], [ 110.528315, 37.990471 ], [ 110.522771, 37.955088 ], [ 110.59422, 37.922049 ], [ 110.680452, 37.790216 ], [ 110.735886, 37.77035 ], [ 110.750669, 37.736281 ], [ 110.716792, 37.728708 ], [ 110.706321, 37.705511 ], [ 110.775306, 37.680886 ], [ 110.793169, 37.650567 ], [ 110.763604, 37.639668 ], [ 110.771611, 37.594634 ], [ 110.795017, 37.558586 ], [ 110.770995, 37.538184 ], [ 110.759292, 37.474567 ], [ 110.740198, 37.44939 ], [ 110.644111, 37.435135 ], [ 110.630561, 37.372858 ], [ 110.641648, 37.360015 ], [ 110.695234, 37.34955 ], [ 110.678604, 37.317668 ], [ 110.690307, 37.287201 ], [ 110.660126, 37.281011 ], [ 110.651503, 37.256722 ], [ 110.590525, 37.187145 ], [ 110.53509, 37.138021 ], [ 110.535706, 37.115118 ], [ 110.49567, 37.086956 ], [ 110.460561, 37.044932 ], [ 110.417446, 37.027257 ], [ 110.426685, 37.008621 ], [ 110.382953, 37.022001 ], [ 110.381721, 37.002408 ], [ 110.424221, 36.963685 ], [ 110.408823, 36.892403 ], [ 110.376178, 36.882351 ], [ 110.424221, 36.855539 ], [ 110.406975, 36.824886 ], [ 110.423605, 36.818179 ], [ 110.407591, 36.776007 ], [ 110.447011, 36.737649 ], [ 110.438388, 36.685835 ], [ 110.402663, 36.697352 ], [ 110.394656, 36.676716 ], [ 110.426685, 36.657514 ], [ 110.447627, 36.621018 ], [ 110.496902, 36.582102 ], [ 110.488895, 36.556628 ], [ 110.503677, 36.488335 ], [ 110.47288, 36.453203 ], [ 110.489511, 36.430094 ], [ 110.487047, 36.393972 ], [ 110.459946, 36.327946 ], [ 110.474112, 36.306729 ], [ 110.474112, 36.248352 ], [ 110.45625, 36.22663 ], [ 110.447011, 36.164328 ], [ 110.467953, 36.074893 ], [ 110.491974, 36.034735 ], [ 110.49259, 35.994073 ], [ 110.516612, 35.971796 ], [ 110.502445, 35.947575 ], [ 110.516612, 35.918501 ], [ 110.511684, 35.879718 ], [ 110.549257, 35.877778 ], [ 110.550489, 35.838005 ], [ 110.571431, 35.800639 ], [ 110.57759, 35.701559 ], [ 110.609619, 35.632031 ], [ 110.567735, 35.539559 ], [ 110.531394, 35.511309 ], [ 110.477808, 35.413821 ], [ 110.45009, 35.327933 ], [ 110.374946, 35.251728 ], [ 110.369402, 35.158329 ], [ 110.325671, 35.014844 ], [ 110.272084, 34.942761 ], [ 110.257301, 34.934912 ], [ 110.259149, 34.884853 ], [ 110.233896, 34.83722 ], [ 110.232664, 34.80332 ], [ 110.259149, 34.737937 ], [ 110.231432, 34.701044 ], [ 110.23636, 34.670533 ], [ 110.29549, 34.610956 ], [ 110.379257, 34.600612 ], [ 110.366939, 34.566614 ], [ 110.404511, 34.557743 ], [ 110.372482, 34.544435 ], [ 110.360779, 34.516825 ], [ 110.403279, 34.433448 ], [ 110.403279, 34.433448 ], [ 110.473496, 34.393457 ], [ 110.503677, 34.33714 ], [ 110.451938, 34.292653 ], [ 110.428533, 34.288203 ], [ 110.43962, 34.243196 ], [ 110.507989, 34.217466 ], [ 110.55172, 34.213012 ], [ 110.55788, 34.193214 ], [ 110.621938, 34.177372 ], [ 110.642264, 34.161032 ], [ 110.61393, 34.113478 ], [ 110.591757, 34.101586 ], [ 110.587445, 34.023252 ], [ 110.620706, 34.035652 ], [ 110.671213, 33.966192 ], [ 110.665669, 33.937895 ], [ 110.627481, 33.925482 ], [ 110.628713, 33.910086 ], [ 110.587445, 33.887733 ], [ 110.612083, 33.852453 ], [ 110.66259, 33.85295 ], [ 110.712481, 33.833564 ], [ 110.74143, 33.798759 ], [ 110.782082, 33.796272 ], [ 110.81719, 33.751003 ], [ 110.831973, 33.713675 ], [ 110.823966, 33.685793 ], [ 110.878784, 33.634486 ], [ 110.966864, 33.609071 ], [ 111.00382, 33.578662 ], [ 111.002588, 33.535772 ], [ 111.02661, 33.478386 ], [ 111.021682, 33.476389 ], [ 111.021066, 33.471397 ], [ 111.02661, 33.467903 ], [ 110.996429, 33.435946 ], [ 111.025994, 33.375495 ], [ 111.025994, 33.330504 ], [ 110.984726, 33.255469 ], [ 110.960704, 33.253967 ], [ 110.9219, 33.203907 ], [ 110.865234, 33.213921 ], [ 110.828893, 33.201403 ], [ 110.824582, 33.158327 ], [ 110.753133, 33.15031 ], [ 110.702626, 33.097182 ], [ 110.650887, 33.157324 ], [ 110.623785, 33.143796 ], [ 110.59422, 33.168346 ], [ 110.57759, 33.250464 ], [ 110.54125, 33.255469 ], [ 110.471032, 33.171352 ], [ 110.398352, 33.176862 ] ] ], [ [ [ 111.02661, 33.478386 ], [ 111.02661, 33.467903 ], [ 111.021066, 33.471397 ], [ 111.021682, 33.476389 ], [ 111.02661, 33.478386 ] ] ], [ [ [ 106.076921, 32.76365 ], [ 106.076305, 32.759121 ], [ 106.071378, 32.758114 ], [ 106.07261, 32.76365 ], [ 106.076921, 32.76365 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"620000\", \"name\": \"甘肃省\", \"center\": [ 103.823557, 36.058039 ], \"childrenNum\": 14, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 27, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 106.506231, 35.737514 ], [ 106.566593, 35.738971 ], [ 106.595542, 35.727312 ], [ 106.620796, 35.743829 ], [ 106.633115, 35.714679 ], [ 106.66268, 35.70739 ], [ 106.674998, 35.728284 ], [ 106.750759, 35.689408 ], [ 106.750759, 35.725369 ], [ 106.806193, 35.70982 ], [ 106.819128, 35.7448 ], [ 106.867171, 35.738485 ], [ 106.868403, 35.771996 ], [ 106.897353, 35.759856 ], [ 106.927534, 35.810346 ], [ 106.849925, 35.887476 ], [ 106.912751, 35.93207 ], [ 106.940468, 35.931101 ], [ 106.93862, 35.952905 ], [ 106.90228, 35.943699 ], [ 106.94786, 35.988262 ], [ 106.928149, 36.011502 ], [ 106.940468, 36.064734 ], [ 106.957715, 36.091337 ], [ 106.925686, 36.115997 ], [ 106.930613, 36.138716 ], [ 106.873947, 36.178338 ], [ 106.873947, 36.178338 ], [ 106.858548, 36.206834 ], [ 106.858548, 36.206834 ], [ 106.833295, 36.229044 ], [ 106.808657, 36.21118 ], [ 106.772933, 36.212628 ], [ 106.735976, 36.23725 ], [ 106.698404, 36.244008 ], [ 106.685469, 36.273445 ], [ 106.647897, 36.259451 ], [ 106.559202, 36.292259 ], [ 106.54134, 36.25366 ], [ 106.504383, 36.266207 ], [ 106.470507, 36.306246 ], [ 106.497608, 36.31348 ], [ 106.510543, 36.379037 ], [ 106.492064, 36.422389 ], [ 106.523477, 36.468605 ], [ 106.494528, 36.494589 ], [ 106.455724, 36.496995 ], [ 106.39721, 36.548455 ], [ 106.37134, 36.549417 ], [ 106.363949, 36.577296 ], [ 106.392282, 36.556628 ], [ 106.397826, 36.576816 ], [ 106.444637, 36.557109 ], [ 106.465579, 36.583063 ], [ 106.444637, 36.624861 ], [ 106.491448, 36.628703 ], [ 106.490833, 36.685835 ], [ 106.530869, 36.690154 ], [ 106.519782, 36.708868 ], [ 106.519782, 36.708868 ], [ 106.514238, 36.715584 ], [ 106.59431, 36.750118 ], [ 106.644817, 36.72278 ], [ 106.627571, 36.752995 ], [ 106.657752, 36.820575 ], [ 106.637426, 36.867031 ], [ 106.637426, 36.867031 ], [ 106.626955, 36.892403 ], [ 106.609709, 36.878521 ], [ 106.609709, 36.878521 ], [ 106.601702, 36.918244 ], [ 106.549347, 36.941685 ], [ 106.540108, 36.984244 ], [ 106.595542, 36.94025 ], [ 106.594926, 36.967988 ], [ 106.64297, 36.962729 ], [ 106.646665, 37.000496 ], [ 106.666991, 37.016745 ], [ 106.645433, 37.064992 ], [ 106.605397, 37.127524 ], [ 106.6171, 37.135158 ], [ 106.673151, 37.1113 ], [ 106.687933, 37.12991 ], [ 106.728585, 37.121321 ], [ 106.750143, 37.09889 ], [ 106.772933, 37.120367 ], [ 106.776012, 37.158056 ], [ 106.818512, 37.141838 ], [ 106.891193, 37.098413 ], [ 106.912135, 37.110345 ], [ 106.905976, 37.151378 ], [ 106.998367, 37.106527 ], [ 107.031011, 37.108436 ], [ 107.030395, 37.140883 ], [ 107.095685, 37.115595 ], [ 107.133873, 37.134681 ], [ 107.181916, 37.143269 ], [ 107.234887, 37.096503 ], [ 107.268764, 37.099367 ], [ 107.28601, 37.054963 ], [ 107.288474, 37.008143 ], [ 107.288474, 37.008143 ], [ 107.291554, 36.979463 ], [ 107.291554, 36.979463 ], [ 107.310032, 36.912502 ], [ 107.336517, 36.925899 ], [ 107.365466, 36.905324 ], [ 107.478183, 36.908196 ], [ 107.533618, 36.867031 ], [ 107.540393, 36.828718 ], [ 107.5909, 36.836382 ], [ 107.642023, 36.819137 ], [ 107.670356, 36.83303 ], [ 107.722095, 36.802367 ], [ 107.742421, 36.811951 ], [ 107.768291, 36.792783 ], [ 107.866841, 36.766899 ], [ 107.907493, 36.750118 ], [ 107.914268, 36.720861 ], [ 107.940754, 36.694953 ], [ 107.938906, 36.655594 ], [ 108.006659, 36.683435 ], [ 108.02329, 36.647912 ], [ 108.001732, 36.639269 ], [ 108.060862, 36.592194 ], [ 108.079956, 36.614294 ], [ 108.092891, 36.587388 ], [ 108.163724, 36.563839 ], [ 108.1976, 36.630144 ], [ 108.222854, 36.631105 ], [ 108.204992, 36.606607 ], [ 108.204992, 36.606607 ], [ 108.210535, 36.577296 ], [ 108.245644, 36.571048 ], [ 108.262274, 36.549417 ], [ 108.340498, 36.559032 ], [ 108.365136, 36.519603 ], [ 108.391621, 36.505654 ], [ 108.408252, 36.45946 ], [ 108.460606, 36.422871 ], [ 108.495099, 36.422389 ], [ 108.514809, 36.445501 ], [ 108.510498, 36.47438 ], [ 108.562852, 36.43876 ], [ 108.618903, 36.433946 ], [ 108.651548, 36.384818 ], [ 108.641693, 36.359279 ], [ 108.646004, 36.254143 ], [ 108.712526, 36.138716 ], [ 108.682345, 36.062316 ], [ 108.688504, 36.021183 ], [ 108.659555, 35.990683 ], [ 108.652164, 35.94806 ], [ 108.593649, 35.950967 ], [ 108.562852, 35.921409 ], [ 108.518505, 35.905414 ], [ 108.499411, 35.872444 ], [ 108.527744, 35.82442 ], [ 108.533903, 35.746257 ], [ 108.517889, 35.699615 ], [ 108.539447, 35.605761 ], [ 108.618287, 35.557088 ], [ 108.625678, 35.537124 ], [ 108.605968, 35.503028 ], [ 108.631222, 35.418698 ], [ 108.61028, 35.355271 ], [ 108.614591, 35.328909 ], [ 108.583178, 35.294724 ], [ 108.547454, 35.304981 ], [ 108.48894, 35.275184 ], [ 108.36144, 35.279581 ], [ 108.345426, 35.300586 ], [ 108.296767, 35.267855 ], [ 108.239484, 35.256127 ], [ 108.221622, 35.296678 ], [ 108.174811, 35.304981 ], [ 108.094739, 35.280069 ], [ 108.049159, 35.253683 ], [ 107.949993, 35.245375 ], [ 107.960464, 35.263457 ], [ 107.867457, 35.256127 ], [ 107.841587, 35.276649 ], [ 107.745501, 35.311819 ], [ 107.737494, 35.267366 ], [ 107.667277, 35.257104 ], [ 107.652494, 35.244886 ], [ 107.686371, 35.218 ], [ 107.715936, 35.168114 ], [ 107.727639, 35.120157 ], [ 107.769523, 35.064333 ], [ 107.769523, 35.064333 ], [ 107.773218, 35.060904 ], [ 107.773218, 35.060904 ], [ 107.814486, 35.024646 ], [ 107.846515, 35.024646 ], [ 107.863145, 34.999158 ], [ 107.842203, 34.979056 ], [ 107.741805, 34.953553 ], [ 107.675284, 34.9511 ], [ 107.638943, 34.935402 ], [ 107.619849, 34.964834 ], [ 107.564415, 34.968757 ], [ 107.523763, 34.909886 ], [ 107.455394, 34.916757 ], [ 107.400575, 34.932949 ], [ 107.369162, 34.917738 ], [ 107.350068, 34.93393 ], [ 107.286626, 34.931968 ], [ 107.252749, 34.880925 ], [ 107.189308, 34.893198 ], [ 107.162206, 34.944233 ], [ 107.119707, 34.950119 ], [ 107.089526, 34.976604 ], [ 107.08275, 35.024156 ], [ 107.012533, 35.029547 ], [ 106.990975, 35.068252 ], [ 106.950323, 35.066782 ], [ 106.901664, 35.094698 ], [ 106.838222, 35.080007 ], [ 106.710723, 35.100574 ], [ 106.706411, 35.081966 ], [ 106.615252, 35.071191 ], [ 106.577064, 35.089312 ], [ 106.541956, 35.083925 ], [ 106.52163, 35.027587 ], [ 106.494528, 35.006021 ], [ 106.494528, 35.006021 ], [ 106.484673, 34.983959 ], [ 106.493296, 34.941289 ], [ 106.527789, 34.876507 ], [ 106.556122, 34.861285 ], [ 106.550579, 34.82936 ], [ 106.575216, 34.769897 ], [ 106.539492, 34.745805 ], [ 106.505615, 34.746789 ], [ 106.487137, 34.715311 ], [ 106.456956, 34.703996 ], [ 106.442173, 34.675455 ], [ 106.471122, 34.634102 ], [ 106.419384, 34.643458 ], [ 106.314058, 34.578934 ], [ 106.341159, 34.568093 ], [ 106.334384, 34.517811 ], [ 106.455108, 34.531617 ], [ 106.514238, 34.511894 ], [ 106.513622, 34.498085 ], [ 106.558586, 34.48822 ], [ 106.610941, 34.454177 ], [ 106.638042, 34.391481 ], [ 106.717498, 34.369255 ], [ 106.691013, 34.337635 ], [ 106.705179, 34.299575 ], [ 106.68239, 34.256057 ], [ 106.652825, 34.24369 ], [ 106.63373, 34.260014 ], [ 106.589383, 34.253584 ], [ 106.577064, 34.280786 ], [ 106.526557, 34.292159 ], [ 106.496376, 34.238248 ], [ 106.5321, 34.254079 ], [ 106.55797, 34.229837 ], [ 106.585071, 34.149641 ], [ 106.560434, 34.109514 ], [ 106.501919, 34.105055 ], [ 106.505615, 34.056479 ], [ 106.471738, 34.024244 ], [ 106.474202, 33.970659 ], [ 106.41076, 33.909093 ], [ 106.428007, 33.866368 ], [ 106.475434, 33.875809 ], [ 106.491448, 33.834559 ], [ 106.461883, 33.789807 ], [ 106.488369, 33.757969 ], [ 106.482825, 33.707203 ], [ 106.534564, 33.695254 ], [ 106.575832, 33.631497 ], [ 106.58076, 33.576169 ], [ 106.540108, 33.512822 ], [ 106.456956, 33.532779 ], [ 106.447101, 33.613058 ], [ 106.384891, 33.612061 ], [ 106.35163, 33.587137 ], [ 106.303587, 33.604585 ], [ 106.237681, 33.564201 ], [ 106.187174, 33.546746 ], [ 106.108334, 33.569686 ], [ 106.117573, 33.602591 ], [ 106.086776, 33.617045 ], [ 106.047356, 33.610067 ], [ 105.971596, 33.613058 ], [ 105.940183, 33.570684 ], [ 105.902611, 33.556222 ], [ 105.871198, 33.511325 ], [ 105.842248, 33.489866 ], [ 105.831162, 33.451926 ], [ 105.837937, 33.410971 ], [ 105.827466, 33.379993 ], [ 105.709822, 33.382991 ], [ 105.755401, 33.329004 ], [ 105.752937, 33.291994 ], [ 105.791741, 33.278486 ], [ 105.799133, 33.258471 ], [ 105.862574, 33.234447 ], [ 105.917393, 33.237951 ], [ 105.965436, 33.204407 ], [ 105.968516, 33.154318 ], [ 105.93156, 33.178365 ], [ 105.897067, 33.146803 ], [ 105.923552, 33.147805 ], [ 105.934639, 33.112221 ], [ 105.914929, 33.066092 ], [ 105.926632, 33.042517 ], [ 105.917393, 32.993841 ], [ 105.861959, 32.939112 ], [ 105.82685, 32.950663 ], [ 105.735691, 32.905454 ], [ 105.656851, 32.895405 ], [ 105.638373, 32.879323 ], [ 105.590329, 32.87681 ], [ 105.565692, 32.906962 ], [ 105.528119, 32.919019 ], [ 105.49917, 32.911986 ], [ 105.467757, 32.930071 ], [ 105.414171, 32.922034 ], [ 105.408011, 32.885857 ], [ 105.38091, 32.876307 ], [ 105.396308, 32.85067 ], [ 105.396308, 32.85067 ], [ 105.427721, 32.784281 ], [ 105.454207, 32.767173 ], [ 105.448663, 32.732946 ], [ 105.368591, 32.712807 ], [ 105.347033, 32.68259 ], [ 105.297758, 32.656897 ], [ 105.263265, 32.652362 ], [ 105.219534, 32.666469 ], [ 105.215222, 32.63674 ], [ 105.185041, 32.617587 ], [ 105.111128, 32.593893 ], [ 105.0791, 32.637244 ], [ 105.026745, 32.650346 ], [ 104.925115, 32.607505 ], [ 104.881999, 32.600951 ], [ 104.845659, 32.653873 ], [ 104.820405, 32.662943 ], [ 104.795768, 32.643292 ], [ 104.739717, 32.635228 ], [ 104.696601, 32.673522 ], [ 104.643015, 32.661935 ], [ 104.592508, 32.695685 ], [ 104.582653, 32.722374 ], [ 104.526602, 32.728416 ], [ 104.51182, 32.753585 ], [ 104.458849, 32.748551 ], [ 104.363994, 32.822511 ], [ 104.294393, 32.835586 ], [ 104.277147, 32.90244 ], [ 104.288234, 32.942628 ], [ 104.345516, 32.940117 ], [ 104.378161, 32.953174 ], [ 104.383704, 32.994343 ], [ 104.426204, 33.010906 ], [ 104.391711, 33.035493 ], [ 104.337509, 33.038002 ], [ 104.378161, 33.109214 ], [ 104.351059, 33.158828 ], [ 104.32827, 33.223934 ], [ 104.323958, 33.26898 ], [ 104.303632, 33.304499 ], [ 104.333813, 33.315502 ], [ 104.386168, 33.298497 ], [ 104.420045, 33.327004 ], [ 104.373849, 33.345004 ], [ 104.292545, 33.336505 ], [ 104.272219, 33.391486 ], [ 104.22048, 33.404477 ], [ 104.213089, 33.446932 ], [ 104.180444, 33.472895 ], [ 104.155191, 33.542755 ], [ 104.176749, 33.5996 ], [ 104.103452, 33.663381 ], [ 104.046169, 33.686291 ], [ 103.980264, 33.670852 ], [ 103.861388, 33.682307 ], [ 103.778236, 33.658898 ], [ 103.690772, 33.69376 ], [ 103.667983, 33.685793 ], [ 103.645809, 33.708697 ], [ 103.593454, 33.716164 ], [ 103.563889, 33.699735 ], [ 103.552186, 33.671351 ], [ 103.520157, 33.678323 ], [ 103.545411, 33.719649 ], [ 103.518309, 33.807213 ], [ 103.464723, 33.80224 ], [ 103.434542, 33.752993 ], [ 103.35447, 33.743539 ], [ 103.278709, 33.774387 ], [ 103.284868, 33.80224 ], [ 103.24976, 33.814175 ], [ 103.228202, 33.79478 ], [ 103.165376, 33.805721 ], [ 103.153673, 33.819147 ], [ 103.181391, 33.900649 ], [ 103.16476, 33.929454 ], [ 103.1315, 33.931937 ], [ 103.120413, 33.953286 ], [ 103.157369, 33.998944 ], [ 103.147514, 34.036644 ], [ 103.119797, 34.03466 ], [ 103.129652, 34.065899 ], [ 103.178927, 34.079779 ], [ 103.121644, 34.112487 ], [ 103.124108, 34.162022 ], [ 103.100087, 34.181828 ], [ 103.052043, 34.195194 ], [ 103.005848, 34.184798 ], [ 102.973203, 34.205588 ], [ 102.977515, 34.252595 ], [ 102.949181, 34.292159 ], [ 102.911609, 34.312923 ], [ 102.85987, 34.301058 ], [ 102.856791, 34.270895 ], [ 102.798276, 34.272874 ], [ 102.779798, 34.236764 ], [ 102.728675, 34.235774 ], [ 102.694799, 34.198659 ], [ 102.664002, 34.192719 ], [ 102.651067, 34.165983 ], [ 102.598712, 34.14766 ], [ 102.655994, 34.113478 ], [ 102.649219, 34.080275 ], [ 102.615958, 34.099604 ], [ 102.511865, 34.086222 ], [ 102.471213, 34.072839 ], [ 102.437336, 34.087214 ], [ 102.406539, 34.033172 ], [ 102.392372, 33.971651 ], [ 102.345561, 33.969666 ], [ 102.315996, 33.993983 ], [ 102.287047, 33.977607 ], [ 102.248858, 33.98654 ], [ 102.226069, 33.963214 ], [ 102.16817, 33.983066 ], [ 102.136142, 33.965199 ], [ 102.25317, 33.861399 ], [ 102.261177, 33.821136 ], [ 102.243315, 33.786823 ], [ 102.296286, 33.783838 ], [ 102.324619, 33.754486 ], [ 102.284583, 33.719151 ], [ 102.342481, 33.725622 ], [ 102.31538, 33.665374 ], [ 102.346793, 33.605582 ], [ 102.440416, 33.574673 ], [ 102.477988, 33.543254 ], [ 102.446575, 33.53228 ], [ 102.461358, 33.501345 ], [ 102.462589, 33.449429 ], [ 102.447807, 33.454922 ], [ 102.392988, 33.404477 ], [ 102.368967, 33.41247 ], [ 102.310452, 33.397982 ], [ 102.296286, 33.413969 ], [ 102.258098, 33.409472 ], [ 102.218062, 33.349503 ], [ 102.192192, 33.337005 ], [ 102.217446, 33.247961 ], [ 102.200815, 33.223434 ], [ 102.160163, 33.242956 ], [ 102.144765, 33.273983 ], [ 102.117047, 33.288492 ], [ 102.08933, 33.227439 ], [ 102.08933, 33.204908 ], [ 102.054838, 33.189884 ], [ 101.99386, 33.1999 ], [ 101.935345, 33.186879 ], [ 101.921795, 33.153817 ], [ 101.887302, 33.135778 ], [ 101.865744, 33.103198 ], [ 101.825708, 33.119239 ], [ 101.841723, 33.184876 ], [ 101.83002, 33.213921 ], [ 101.770274, 33.248962 ], [ 101.769658, 33.26898 ], [ 101.877447, 33.314502 ], [ 101.887302, 33.383991 ], [ 101.915635, 33.425957 ], [ 101.946432, 33.442937 ], [ 101.906396, 33.48188 ], [ 101.907012, 33.539264 ], [ 101.884222, 33.578163 ], [ 101.844186, 33.602591 ], [ 101.831252, 33.554726 ], [ 101.783208, 33.556721 ], [ 101.769042, 33.538765 ], [ 101.748716, 33.505337 ], [ 101.718535, 33.494857 ], [ 101.622448, 33.502343 ], [ 101.611977, 33.565199 ], [ 101.616905, 33.598603 ], [ 101.585492, 33.645448 ], [ 101.58426, 33.674339 ], [ 101.501724, 33.702723 ], [ 101.428427, 33.680315 ], [ 101.424732, 33.655411 ], [ 101.385312, 33.644949 ], [ 101.302776, 33.657902 ], [ 101.23687, 33.685793 ], [ 101.217776, 33.669856 ], [ 101.166653, 33.659894 ], [ 101.177124, 33.685295 ], [ 101.162957, 33.719649 ], [ 101.186363, 33.741051 ], [ 101.190675, 33.791796 ], [ 101.153102, 33.823124 ], [ 101.153718, 33.8445 ], [ 101.054552, 33.863386 ], [ 101.023139, 33.896178 ], [ 100.994806, 33.891707 ], [ 100.965857, 33.946832 ], [ 100.927669, 33.975126 ], [ 100.93506, 33.990013 ], [ 100.880857, 34.036644 ], [ 100.870386, 34.083744 ], [ 100.848828, 34.089692 ], [ 100.806329, 34.155584 ], [ 100.764445, 34.178857 ], [ 100.809408, 34.247153 ], [ 100.798321, 34.260014 ], [ 100.821727, 34.317371 ], [ 100.868538, 34.332693 ], [ 100.895024, 34.375183 ], [ 100.951074, 34.38358 ], [ 100.986799, 34.374689 ], [ 101.054552, 34.322808 ], [ 101.098284, 34.329233 ], [ 101.178356, 34.320831 ], [ 101.193754, 34.336646 ], [ 101.235022, 34.325279 ], [ 101.228863, 34.298586 ], [ 101.268899, 34.278808 ], [ 101.325565, 34.268423 ], [ 101.327413, 34.24468 ], [ 101.369913, 34.248143 ], [ 101.417956, 34.227858 ], [ 101.482014, 34.218951 ], [ 101.492485, 34.195689 ], [ 101.53868, 34.212022 ], [ 101.6206, 34.178857 ], [ 101.674187, 34.110506 ], [ 101.703136, 34.119424 ], [ 101.718535, 34.083249 ], [ 101.736397, 34.080275 ], [ 101.764114, 34.122892 ], [ 101.788136, 34.131809 ], [ 101.836795, 34.124378 ], [ 101.851578, 34.153108 ], [ 101.874367, 34.130323 ], [ 101.897773, 34.133791 ], [ 101.955055, 34.109514 ], [ 101.965526, 34.167469 ], [ 102.003099, 34.162022 ], [ 102.030816, 34.190739 ], [ 102.01357, 34.218456 ], [ 102.062229, 34.227858 ], [ 102.067772, 34.293642 ], [ 102.149692, 34.271885 ], [ 102.186649, 34.352952 ], [ 102.237156, 34.34307 ], [ 102.237156, 34.34307 ], [ 102.259329, 34.355917 ], [ 102.205743, 34.407777 ], [ 102.169402, 34.457631 ], [ 102.155852, 34.507456 ], [ 102.139837, 34.50351 ], [ 102.093026, 34.536547 ], [ 102.001867, 34.538519 ], [ 101.97415, 34.548871 ], [ 101.956287, 34.582876 ], [ 101.934729, 34.58731 ], [ 101.919947, 34.621791 ], [ 101.917483, 34.705964 ], [ 101.923027, 34.835746 ], [ 101.916867, 34.873561 ], [ 101.985852, 34.90007 ], [ 102.068388, 34.887798 ], [ 102.048062, 34.910868 ], [ 102.094874, 34.986901 ], [ 102.133678, 35.014844 ], [ 102.157699, 35.010923 ], [ 102.176178, 35.032977 ], [ 102.211286, 35.034937 ], [ 102.218062, 35.057475 ], [ 102.252554, 35.048657 ], [ 102.29567, 35.071681 ], [ 102.310452, 35.128967 ], [ 102.346793, 35.164201 ], [ 102.404075, 35.179366 ], [ 102.365887, 35.235599 ], [ 102.370199, 35.263946 ], [ 102.3123, 35.282512 ], [ 102.280887, 35.303028 ], [ 102.311684, 35.31426 ], [ 102.317844, 35.343067 ], [ 102.287663, 35.36552 ], [ 102.293822, 35.424063 ], [ 102.314764, 35.434303 ], [ 102.408387, 35.409431 ], [ 102.447807, 35.437229 ], [ 102.437952, 35.455268 ], [ 102.49893, 35.545403 ], [ 102.503241, 35.585322 ], [ 102.531575, 35.580455 ], [ 102.570995, 35.548324 ], [ 102.695414, 35.528358 ], [ 102.743458, 35.494745 ], [ 102.782878, 35.527871 ], [ 102.729291, 35.523487 ], [ 102.746537, 35.545403 ], [ 102.808747, 35.560496 ], [ 102.763168, 35.612086 ], [ 102.7644, 35.653431 ], [ 102.744074, 35.657807 ], [ 102.707733, 35.70496 ], [ 102.686175, 35.771996 ], [ 102.715125, 35.815685 ], [ 102.739146, 35.821023 ], [ 102.787189, 35.862745 ], [ 102.81737, 35.850133 ], [ 102.914073, 35.845282 ], [ 102.94487, 35.829757 ], [ 102.954725, 35.858864 ], [ 102.942406, 35.92674 ], [ 102.971971, 35.995525 ], [ 102.951645, 36.021667 ], [ 102.968276, 36.044414 ], [ 102.932551, 36.048285 ], [ 102.882044, 36.082632 ], [ 102.941174, 36.104877 ], [ 102.948566, 36.150798 ], [ 102.965812, 36.151765 ], [ 102.986754, 36.193312 ], [ 103.048964, 36.199107 ], [ 103.066826, 36.216974 ], [ 103.021246, 36.232906 ], [ 103.024942, 36.256556 ], [ 102.922696, 36.298047 ], [ 102.896827, 36.331803 ], [ 102.845704, 36.331803 ], [ 102.836465, 36.344819 ], [ 102.838928, 36.345783 ], [ 102.831537, 36.365544 ], [ 102.829689, 36.365544 ], [ 102.771791, 36.47438 ], [ 102.793349, 36.497957 ], [ 102.753313, 36.525855 ], [ 102.734219, 36.562396 ], [ 102.761936, 36.568645 ], [ 102.714509, 36.599401 ], [ 102.724364, 36.613813 ], [ 102.684328, 36.619097 ], [ 102.630741, 36.650793 ], [ 102.601176, 36.710307 ], [ 102.612879, 36.738129 ], [ 102.639364, 36.732853 ], [ 102.692335, 36.775528 ], [ 102.720052, 36.767858 ], [ 102.639364, 36.852666 ], [ 102.587009, 36.869904 ], [ 102.56114, 36.91968 ], [ 102.526031, 36.928291 ], [ 102.499546, 36.954599 ], [ 102.450271, 36.968467 ], [ 102.506321, 37.019134 ], [ 102.488459, 37.078362 ], [ 102.583314, 37.104618 ], [ 102.642444, 37.099845 ], [ 102.599944, 37.174748 ], [ 102.578386, 37.17284 ], [ 102.533422, 37.217176 ], [ 102.490307, 37.223371 ], [ 102.457662, 37.248147 ], [ 102.45335, 37.271487 ], [ 102.419474, 37.294343 ], [ 102.428097, 37.308624 ], [ 102.368351, 37.327662 ], [ 102.29875, 37.370004 ], [ 102.299981, 37.391404 ], [ 102.19712, 37.420403 ], [ 102.176794, 37.458892 ], [ 102.125055, 37.48549 ], [ 102.103497, 37.482641 ], [ 102.131214, 37.54625 ], [ 102.102265, 37.582304 ], [ 102.035128, 37.627819 ], [ 102.048678, 37.651515 ], [ 102.036359, 37.685149 ], [ 101.998787, 37.724921 ], [ 101.946432, 37.728235 ], [ 101.873135, 37.686569 ], [ 101.854657, 37.664781 ], [ 101.815853, 37.654357 ], [ 101.791832, 37.696041 ], [ 101.659405, 37.733441 ], [ 101.670491, 37.754264 ], [ 101.598427, 37.827569 ], [ 101.551615, 37.835604 ], [ 101.459224, 37.86632 ], [ 101.382848, 37.822369 ], [ 101.362522, 37.791162 ], [ 101.276906, 37.83655 ], [ 101.202994, 37.84742 ], [ 101.159262, 37.86821 ], [ 101.152486, 37.891356 ], [ 101.114298, 37.92016 ], [ 101.103211, 37.946593 ], [ 101.077342, 37.941874 ], [ 100.964009, 38.011221 ], [ 100.91843, 37.999432 ], [ 100.895024, 38.013107 ], [ 100.888864, 38.056001 ], [ 100.922125, 38.084741 ], [ 100.91843, 38.129006 ], [ 100.93814, 38.16007 ], [ 100.913502, 38.17889 ], [ 100.860531, 38.148305 ], [ 100.825423, 38.158658 ], [ 100.752126, 38.238612 ], [ 100.71517, 38.253652 ], [ 100.619083, 38.26587 ], [ 100.595061, 38.242372 ], [ 100.545786, 38.247072 ], [ 100.516837, 38.272448 ], [ 100.474953, 38.288891 ], [ 100.459555, 38.2654 ], [ 100.432453, 38.275267 ], [ 100.424446, 38.307208 ], [ 100.396729, 38.293118 ], [ 100.318505, 38.329276 ], [ 100.331439, 38.337257 ], [ 100.301874, 38.388405 ], [ 100.259374, 38.366355 ], [ 100.24028, 38.441861 ], [ 100.163288, 38.461546 ], [ 100.113397, 38.497151 ], [ 100.086911, 38.492936 ], [ 100.064122, 38.518694 ], [ 100.025933, 38.507923 ], [ 100.001296, 38.467169 ], [ 100.022238, 38.432017 ], [ 100.093071, 38.407166 ], [ 100.136803, 38.33444 ], [ 100.163904, 38.328337 ], [ 100.159592, 38.291239 ], [ 100.182998, 38.222158 ], [ 100.126332, 38.231561 ], [ 100.117093, 38.253652 ], [ 100.071513, 38.284663 ], [ 100.049955, 38.283254 ], [ 100.001912, 38.315191 ], [ 99.960028, 38.320825 ], [ 99.826985, 38.370109 ], [ 99.758, 38.410449 ], [ 99.727203, 38.415607 ], [ 99.65945, 38.449361 ], [ 99.63974, 38.474666 ], [ 99.585537, 38.498556 ], [ 99.52887, 38.546314 ], [ 99.501769, 38.612281 ], [ 99.450646, 38.60433 ], [ 99.412458, 38.665571 ], [ 99.375502, 38.684727 ], [ 99.361951, 38.718354 ], [ 99.291118, 38.765966 ], [ 99.222133, 38.788827 ], [ 99.141445, 38.852706 ], [ 99.068764, 38.896968 ], [ 99.071843, 38.921184 ], [ 99.107568, 38.951907 ], [ 99.054597, 38.97657 ], [ 98.951735, 38.987735 ], [ 98.903076, 39.012384 ], [ 98.886446, 39.040744 ], [ 98.818076, 39.064911 ], [ 98.816845, 39.085818 ], [ 98.743548, 39.086747 ], [ 98.730613, 39.057011 ], [ 98.70536, 39.043533 ], [ 98.661628, 38.993782 ], [ 98.612353, 38.977035 ], [ 98.624056, 38.959353 ], [ 98.584635, 38.93003 ], [ 98.526737, 38.95563 ], [ 98.457752, 38.952838 ], [ 98.428187, 38.976104 ], [ 98.432498, 38.996107 ], [ 98.401086, 39.001688 ], [ 98.383839, 39.029588 ], [ 98.316702, 39.040744 ], [ 98.280977, 39.027263 ], [ 98.287753, 38.992386 ], [ 98.276666, 38.963541 ], [ 98.235398, 38.918855 ], [ 98.242173, 38.880664 ], [ 98.167645, 38.840121 ], [ 98.091884, 38.786495 ], [ 98.068478, 38.816344 ], [ 98.029058, 38.834061 ], [ 98.009348, 38.85923 ], [ 97.875689, 38.898365 ], [ 97.828878, 38.93003 ], [ 97.701379, 38.963076 ], [ 97.679205, 39.010524 ], [ 97.58127, 39.052364 ], [ 97.504894, 39.076527 ], [ 97.458698, 39.117863 ], [ 97.401416, 39.146645 ], [ 97.371235, 39.140611 ], [ 97.347213, 39.167528 ], [ 97.315185, 39.164744 ], [ 97.220946, 39.193042 ], [ 97.14149, 39.199999 ], [ 97.060186, 39.19768 ], [ 97.017686, 39.208347 ], [ 96.962251, 39.198144 ], [ 97.012142, 39.142004 ], [ 96.969643, 39.097895 ], [ 96.95794, 39.041674 ], [ 96.965331, 39.017034 ], [ 96.938846, 38.95563 ], [ 96.940693, 38.90768 ], [ 96.983809, 38.869016 ], [ 96.993664, 38.834993 ], [ 96.987505, 38.793025 ], [ 97.00044, 38.7613 ], [ 97.023229, 38.755699 ], [ 97.009063, 38.702477 ], [ 97.057722, 38.67258 ], [ 97.047251, 38.653888 ], [ 97.055874, 38.594508 ], [ 96.961019, 38.558015 ], [ 96.876636, 38.580475 ], [ 96.847071, 38.599186 ], [ 96.7941, 38.608072 ], [ 96.808882, 38.582346 ], [ 96.767614, 38.552399 ], [ 96.800259, 38.52759 ], [ 96.780549, 38.504177 ], [ 96.706637, 38.505582 ], [ 96.6666, 38.483567 ], [ 96.707868, 38.459203 ], [ 96.698013, 38.422172 ], [ 96.626564, 38.356031 ], [ 96.638883, 38.307208 ], [ 96.655514, 38.295936 ], [ 96.665369, 38.23015 ], [ 96.46334, 38.277616 ], [ 96.378341, 38.277146 ], [ 96.335841, 38.246132 ], [ 96.301964, 38.183124 ], [ 96.313051, 38.161952 ], [ 96.264392, 38.145952 ], [ 96.252689, 38.167599 ], [ 96.221892, 38.149246 ], [ 96.109175, 38.187358 ], [ 96.06606, 38.173245 ], [ 96.006929, 38.207582 ], [ 95.93856, 38.237202 ], [ 95.932401, 38.259291 ], [ 95.89606, 38.2903 ], [ 95.852945, 38.287481 ], [ 95.83693, 38.344298 ], [ 95.775952, 38.356031 ], [ 95.723597, 38.378554 ], [ 95.703887, 38.400131 ], [ 95.671858, 38.388405 ], [ 95.608417, 38.339134 ], [ 95.585011, 38.343359 ], [ 95.51849, 38.294997 ], [ 95.487693, 38.314721 ], [ 95.455664, 38.291709 ], [ 95.440881, 38.310965 ], [ 95.408236, 38.300163 ], [ 95.315846, 38.318947 ], [ 95.259179, 38.302981 ], [ 95.229614, 38.330685 ], [ 95.209904, 38.327868 ], [ 95.185266, 38.379492 ], [ 95.140919, 38.392158 ], [ 95.122441, 38.417014 ], [ 95.072549, 38.402476 ], [ 95.045448, 38.418889 ], [ 94.973999, 38.430142 ], [ 94.884072, 38.414669 ], [ 94.861282, 38.393565 ], [ 94.812623, 38.385591 ], [ 94.672805, 38.386998 ], [ 94.582878, 38.36917 ], [ 94.56132, 38.351807 ], [ 94.527443, 38.365416 ], [ 94.527443, 38.425922 ], [ 94.511429, 38.445142 ], [ 94.370379, 38.7627 ], [ 94.281067, 38.7599 ], [ 93.973098, 38.724891 ], [ 93.95154, 38.715086 ], [ 93.885018, 38.720689 ], [ 93.800019, 38.750566 ], [ 93.773533, 38.771099 ], [ 93.756287, 38.807484 ], [ 93.769838, 38.821007 ], [ 93.884403, 38.826136 ], [ 93.884403, 38.867618 ], [ 93.834511, 38.867618 ], [ 93.729186, 38.924443 ], [ 93.453245, 38.915596 ], [ 93.274007, 38.896036 ], [ 93.237666, 38.916062 ], [ 93.179152, 38.923977 ], [ 93.198246, 39.045857 ], [ 93.165601, 39.090928 ], [ 93.131725, 39.108112 ], [ 93.142196, 39.160567 ], [ 93.115094, 39.17959 ], [ 93.043029, 39.146645 ], [ 92.978356, 39.143396 ], [ 92.938936, 39.169848 ], [ 92.889045, 39.160103 ], [ 92.866871, 39.138754 ], [ 92.765857, 39.136898 ], [ 92.659299, 39.109969 ], [ 92.545966, 39.111362 ], [ 92.489916, 39.099753 ], [ 92.459119, 39.063982 ], [ 92.459119, 39.042604 ], [ 92.41046, 39.03842 ], [ 92.366728, 39.059335 ], [ 92.366112, 39.096037 ], [ 92.343938, 39.146181 ], [ 92.339011, 39.236628 ], [ 92.378431, 39.258411 ], [ 92.52564, 39.368611 ], [ 92.639589, 39.514196 ], [ 92.687632, 39.657174 ], [ 92.745531, 39.868331 ], [ 92.796654, 40.153897 ], [ 92.906907, 40.310609 ], [ 92.920458, 40.391792 ], [ 92.928465, 40.572504 ], [ 93.506216, 40.648376 ], [ 93.760599, 40.664721 ], [ 93.820961, 40.793519 ], [ 93.809874, 40.879548 ], [ 93.908424, 40.983539 ], [ 94.01067, 41.114875 ], [ 94.184365, 41.268444 ], [ 94.534219, 41.505966 ], [ 94.750413, 41.538227 ], [ 94.809543, 41.619256 ], [ 94.861898, 41.668451 ], [ 94.969072, 41.718948 ], [ 95.011572, 41.726541 ], [ 95.110738, 41.768513 ], [ 95.135991, 41.772976 ], [ 95.16494, 41.735474 ], [ 95.199433, 41.719395 ], [ 95.194505, 41.694821 ], [ 95.247476, 41.61344 ], [ 95.299831, 41.565994 ], [ 95.335556, 41.644305 ], [ 95.39407, 41.693481 ], [ 95.445193, 41.719841 ], [ 95.57146, 41.796181 ], [ 95.65646, 41.826067 ], [ 95.759322, 41.835878 ], [ 95.801206, 41.848361 ], [ 95.855408, 41.849699 ], [ 95.998306, 41.906289 ], [ 96.054973, 41.936124 ], [ 96.117183, 41.985966 ], [ 96.137509, 42.019765 ], [ 96.13874, 42.05399 ], [ 96.077147, 42.149457 ], [ 96.178161, 42.21775 ], [ 96.040806, 42.326688 ], [ 96.042038, 42.352787 ], [ 96.06606, 42.414674 ], [ 95.978596, 42.436762 ], [ 96.0174, 42.482239 ], [ 96.02356, 42.542675 ], [ 96.072219, 42.569566 ], [ 96.103632, 42.604375 ], [ 96.166458, 42.623314 ], [ 96.386348, 42.727592 ], [ 96.742361, 42.75704 ], [ 96.968411, 42.756161 ], [ 97.172903, 42.795257 ], [ 97.371235, 42.457076 ], [ 97.500582, 42.243894 ], [ 97.653335, 41.986856 ], [ 97.84674, 41.656379 ], [ 97.613915, 41.477276 ], [ 97.629314, 41.440498 ], [ 97.903407, 41.168057 ], [ 97.971776, 41.09774 ], [ 98.142391, 41.001607 ], [ 98.184891, 40.988056 ], [ 98.25018, 40.93925 ], [ 98.333332, 40.918903 ], [ 98.344419, 40.568413 ], [ 98.627751, 40.677884 ], [ 98.569853, 40.746836 ], [ 98.668403, 40.773128 ], [ 98.689345, 40.691952 ], [ 98.72199, 40.657911 ], [ 98.762642, 40.639748 ], [ 98.802678, 40.607043 ], [ 98.80699, 40.660181 ], [ 98.790975, 40.705564 ], [ 98.984996, 40.782644 ], [ 99.041662, 40.693767 ], [ 99.102025, 40.676522 ], [ 99.12543, 40.715091 ], [ 99.172858, 40.747289 ], [ 99.174705, 40.858278 ], [ 99.565827, 40.846961 ], [ 99.673, 40.93292 ], [ 99.985897, 40.909858 ], [ 100.057346, 40.908049 ], [ 100.107853, 40.875475 ], [ 100.224882, 40.727337 ], [ 100.237201, 40.716905 ], [ 100.242744, 40.618855 ], [ 100.169447, 40.541131 ], [ 100.169447, 40.277743 ], [ 100.007455, 40.20008 ], [ 99.955716, 40.150695 ], [ 99.927383, 40.063727 ], [ 99.841152, 40.013326 ], [ 99.751225, 40.006909 ], [ 99.714268, 39.972061 ], [ 99.533182, 39.891753 ], [ 99.491298, 39.884406 ], [ 99.459885, 39.898181 ], [ 99.440791, 39.885783 ], [ 99.469124, 39.875221 ], [ 99.672384, 39.888079 ], [ 99.822058, 39.860063 ], [ 99.904593, 39.785601 ], [ 99.958796, 39.769504 ], [ 100.040716, 39.757083 ], [ 100.128179, 39.702312 ], [ 100.250135, 39.685274 ], [ 100.314193, 39.606935 ], [ 100.301258, 39.572345 ], [ 100.326512, 39.509118 ], [ 100.44354, 39.485565 ], [ 100.500823, 39.481408 ], [ 100.498975, 39.400527 ], [ 100.606764, 39.387577 ], [ 100.707778, 39.404689 ], [ 100.842053, 39.405614 ], [ 100.842669, 39.199999 ], [ 100.864227, 39.106719 ], [ 100.829118, 39.075133 ], [ 100.835278, 39.025869 ], [ 100.875314, 39.002619 ], [ 100.901799, 39.030053 ], [ 100.961545, 39.005874 ], [ 100.969553, 38.946788 ], [ 101.117378, 38.975174 ], [ 101.228863, 39.020754 ], [ 101.198682, 38.943064 ], [ 101.237486, 38.907214 ], [ 101.24303, 38.860628 ], [ 101.33542, 38.847113 ], [ 101.34158, 38.822406 ], [ 101.307087, 38.80282 ], [ 101.331109, 38.777164 ], [ 101.412413, 38.764099 ], [ 101.562702, 38.713218 ], [ 101.601506, 38.65529 ], [ 101.672955, 38.6908 ], [ 101.777049, 38.66043 ], [ 101.873751, 38.733761 ], [ 101.941505, 38.808883 ], [ 102.075164, 38.891378 ], [ 102.045599, 38.904885 ], [ 101.955055, 38.985874 ], [ 101.926106, 39.000758 ], [ 101.833715, 39.08907 ], [ 101.902701, 39.111827 ], [ 102.012338, 39.127149 ], [ 102.050526, 39.141075 ], [ 102.276576, 39.188868 ], [ 102.3548, 39.231993 ], [ 102.45335, 39.255167 ], [ 102.579002, 39.183301 ], [ 102.616574, 39.171703 ], [ 102.883892, 39.120649 ], [ 103.007696, 39.099753 ], [ 103.133347, 39.192579 ], [ 103.188166, 39.215302 ], [ 103.259615, 39.263971 ], [ 103.344615, 39.331588 ], [ 103.428998, 39.353341 ], [ 103.595302, 39.386652 ], [ 103.728961, 39.430117 ], [ 103.85338, 39.461543 ], [ 103.955626, 39.456923 ], [ 104.089901, 39.419947 ], [ 104.073271, 39.351953 ], [ 104.047401, 39.297788 ], [ 104.171205, 39.160567 ], [ 104.207546, 39.083495 ], [ 104.190915, 39.042139 ], [ 104.196459, 38.9882 ], [ 104.173053, 38.94446 ], [ 104.044322, 38.895105 ], [ 104.011677, 38.85923 ], [ 103.85954, 38.64454 ], [ 103.416063, 38.404821 ], [ 103.465339, 38.353215 ], [ 103.507838, 38.280905 ], [ 103.53494, 38.156776 ], [ 103.368636, 38.08898 ], [ 103.362477, 38.037621 ], [ 103.40744, 37.860651 ], [ 103.627947, 37.797783 ], [ 103.683381, 37.777919 ], [ 103.841062, 37.64725 ], [ 103.874938, 37.604117 ], [ 103.935916, 37.572818 ], [ 104.089285, 37.465067 ], [ 104.183524, 37.406618 ], [ 104.237727, 37.411847 ], [ 104.287002, 37.428007 ], [ 104.298705, 37.414223 ], [ 104.365226, 37.418026 ], [ 104.437907, 37.445589 ], [ 104.448994, 37.42468 ], [ 104.499501, 37.421353 ], [ 104.521059, 37.43466 ], [ 104.679971, 37.408044 ], [ 104.662109, 37.367626 ], [ 104.713848, 37.329566 ], [ 104.673812, 37.317668 ], [ 104.651022, 37.290534 ], [ 104.624536, 37.298627 ], [ 104.600515, 37.242907 ], [ 104.638087, 37.201923 ], [ 104.717543, 37.208597 ], [ 104.776673, 37.246718 ], [ 104.85613, 37.211933 ], [ 104.864753, 37.17284 ], [ 104.888158, 37.15901 ], [ 104.914644, 37.097935 ], [ 104.954064, 37.077407 ], [ 104.95468, 37.040156 ], [ 105.004571, 37.035378 ], [ 105.03968, 37.007187 ], [ 105.05939, 37.022956 ], [ 105.128991, 36.996194 ], [ 105.165331, 36.99476 ], [ 105.185657, 36.942164 ], [ 105.178882, 36.892403 ], [ 105.244787, 36.894796 ], [ 105.279896, 36.86751 ], [ 105.303302, 36.820575 ], [ 105.334714, 36.80093 ], [ 105.340874, 36.764502 ], [ 105.319932, 36.742924 ], [ 105.275584, 36.752515 ], [ 105.272505, 36.739567 ], [ 105.218302, 36.730455 ], [ 105.201056, 36.700711 ], [ 105.225693, 36.664716 ], [ 105.22015, 36.631105 ], [ 105.261418, 36.602764 ], [ 105.2762, 36.563358 ], [ 105.252179, 36.553263 ], [ 105.281744, 36.522489 ], [ 105.322396, 36.535954 ], [ 105.362432, 36.496514 ], [ 105.363048, 36.443093 ], [ 105.398156, 36.430575 ], [ 105.401236, 36.369881 ], [ 105.425873, 36.330357 ], [ 105.455439, 36.321678 ], [ 105.476381, 36.293224 ], [ 105.45975, 36.268137 ], [ 105.460366, 36.223733 ], [ 105.478844, 36.213111 ], [ 105.515185, 36.147415 ], [ 105.491163, 36.101009 ], [ 105.430801, 36.10391 ], [ 105.406163, 36.074409 ], [ 105.343954, 36.033767 ], [ 105.324859, 35.941761 ], [ 105.350113, 35.875839 ], [ 105.39754, 35.857409 ], [ 105.371055, 35.844312 ], [ 105.38091, 35.792873 ], [ 105.408627, 35.822479 ], [ 105.428953, 35.819082 ], [ 105.432033, 35.787533 ], [ 105.457286, 35.771511 ], [ 105.481924, 35.727312 ], [ 105.595873, 35.715651 ], [ 105.667322, 35.749657 ], [ 105.70243, 35.733142 ], [ 105.759097, 35.724883 ], [ 105.740618, 35.698643 ], [ 105.723988, 35.725854 ], [ 105.690727, 35.698643 ], [ 105.722756, 35.673366 ], [ 105.713517, 35.650513 ], [ 105.759097, 35.634464 ], [ 105.762176, 35.602841 ], [ 105.800365, 35.564878 ], [ 105.816379, 35.575101 ], [ 105.847176, 35.490359 ], [ 105.868734, 35.540046 ], [ 105.900147, 35.54735 ], [ 106.017175, 35.519103 ], [ 106.023335, 35.49377 ], [ 106.047356, 35.498155 ], [ 106.048588, 35.488898 ], [ 105.897683, 35.451368 ], [ 105.894603, 35.413821 ], [ 106.002393, 35.438692 ], [ 106.034422, 35.469404 ], [ 106.054132, 35.45478 ], [ 106.071994, 35.463555 ], [ 106.06953, 35.458193 ], [ 106.071378, 35.449418 ], [ 106.073226, 35.447468 ], [ 106.067682, 35.436254 ], [ 106.073226, 35.420649 ], [ 106.083081, 35.421624 ], [ 106.113262, 35.361616 ], [ 106.129892, 35.393333 ], [ 106.173008, 35.437716 ], [ 106.196414, 35.409919 ], [ 106.237681, 35.409431 ], [ 106.241377, 35.358687 ], [ 106.319601, 35.265411 ], [ 106.363333, 35.238532 ], [ 106.368261, 35.273718 ], [ 106.415688, 35.276161 ], [ 106.472354, 35.310842 ], [ 106.501304, 35.364056 ], [ 106.503767, 35.415284 ], [ 106.483441, 35.450393 ], [ 106.490217, 35.480613 ], [ 106.465579, 35.481101 ], [ 106.440941, 35.52641 ], [ 106.460036, 35.578995 ], [ 106.47913, 35.575101 ], [ 106.460036, 35.643705 ], [ 106.434782, 35.688436 ], [ 106.49268, 35.732656 ], [ 106.498224, 35.732656 ], [ 106.504383, 35.736057 ], [ 106.506231, 35.737514 ] ] ], [ [ [ 106.047356, 35.498155 ], [ 106.078769, 35.509848 ], [ 106.071994, 35.463555 ], [ 106.054132, 35.45478 ], [ 106.048588, 35.488898 ], [ 106.047356, 35.498155 ] ] ], [ [ [ 102.831537, 36.365544 ], [ 102.838928, 36.345783 ], [ 102.836465, 36.344819 ], [ 102.829689, 36.365544 ], [ 102.831537, 36.365544 ] ] ], [ [ [ 106.073226, 35.447468 ], [ 106.083081, 35.421624 ], [ 106.073226, 35.420649 ], [ 106.067682, 35.436254 ], [ 106.073226, 35.447468 ] ] ], [ [ [ 106.504383, 35.736057 ], [ 106.498224, 35.732656 ], [ 106.49268, 35.732656 ], [ 106.506231, 35.737514 ], [ 106.504383, 35.736057 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"630000\", \"name\": \"青海省\", \"center\": [ 101.778916, 36.623178 ], \"centroid\": [ 96.043533, 35.726403 ], \"childrenNum\": 8, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 28, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 102.829689, 36.365544 ], [ 102.836465, 36.344819 ], [ 102.845704, 36.331803 ], [ 102.896827, 36.331803 ], [ 102.922696, 36.298047 ], [ 103.024942, 36.256556 ], [ 103.021246, 36.232906 ], [ 103.066826, 36.216974 ], [ 103.048964, 36.199107 ], [ 102.986754, 36.193312 ], [ 102.965812, 36.151765 ], [ 102.948566, 36.150798 ], [ 102.941174, 36.104877 ], [ 102.882044, 36.082632 ], [ 102.932551, 36.048285 ], [ 102.968276, 36.044414 ], [ 102.951645, 36.021667 ], [ 102.971971, 35.995525 ], [ 102.942406, 35.92674 ], [ 102.954725, 35.858864 ], [ 102.94487, 35.829757 ], [ 102.914073, 35.845282 ], [ 102.81737, 35.850133 ], [ 102.787189, 35.862745 ], [ 102.739146, 35.821023 ], [ 102.715125, 35.815685 ], [ 102.686175, 35.771996 ], [ 102.707733, 35.70496 ], [ 102.744074, 35.657807 ], [ 102.7644, 35.653431 ], [ 102.763168, 35.612086 ], [ 102.808747, 35.560496 ], [ 102.746537, 35.545403 ], [ 102.729291, 35.523487 ], [ 102.782878, 35.527871 ], [ 102.743458, 35.494745 ], [ 102.695414, 35.528358 ], [ 102.570995, 35.548324 ], [ 102.531575, 35.580455 ], [ 102.503241, 35.585322 ], [ 102.49893, 35.545403 ], [ 102.437952, 35.455268 ], [ 102.447807, 35.437229 ], [ 102.408387, 35.409431 ], [ 102.314764, 35.434303 ], [ 102.293822, 35.424063 ], [ 102.287663, 35.36552 ], [ 102.317844, 35.343067 ], [ 102.311684, 35.31426 ], [ 102.280887, 35.303028 ], [ 102.3123, 35.282512 ], [ 102.370199, 35.263946 ], [ 102.365887, 35.235599 ], [ 102.404075, 35.179366 ], [ 102.346793, 35.164201 ], [ 102.310452, 35.128967 ], [ 102.29567, 35.071681 ], [ 102.252554, 35.048657 ], [ 102.218062, 35.057475 ], [ 102.211286, 35.034937 ], [ 102.176178, 35.032977 ], [ 102.157699, 35.010923 ], [ 102.133678, 35.014844 ], [ 102.094874, 34.986901 ], [ 102.048062, 34.910868 ], [ 102.068388, 34.887798 ], [ 101.985852, 34.90007 ], [ 101.916867, 34.873561 ], [ 101.923027, 34.835746 ], [ 101.917483, 34.705964 ], [ 101.919947, 34.621791 ], [ 101.934729, 34.58731 ], [ 101.956287, 34.582876 ], [ 101.97415, 34.548871 ], [ 102.001867, 34.538519 ], [ 102.093026, 34.536547 ], [ 102.139837, 34.50351 ], [ 102.155852, 34.507456 ], [ 102.169402, 34.457631 ], [ 102.205743, 34.407777 ], [ 102.259329, 34.355917 ], [ 102.237156, 34.34307 ], [ 102.237156, 34.34307 ], [ 102.186649, 34.352952 ], [ 102.149692, 34.271885 ], [ 102.067772, 34.293642 ], [ 102.062229, 34.227858 ], [ 102.01357, 34.218456 ], [ 102.030816, 34.190739 ], [ 102.003099, 34.162022 ], [ 101.965526, 34.167469 ], [ 101.955055, 34.109514 ], [ 101.897773, 34.133791 ], [ 101.874367, 34.130323 ], [ 101.851578, 34.153108 ], [ 101.836795, 34.124378 ], [ 101.788136, 34.131809 ], [ 101.764114, 34.122892 ], [ 101.736397, 34.080275 ], [ 101.718535, 34.083249 ], [ 101.703136, 34.119424 ], [ 101.674187, 34.110506 ], [ 101.6206, 34.178857 ], [ 101.53868, 34.212022 ], [ 101.492485, 34.195689 ], [ 101.482014, 34.218951 ], [ 101.417956, 34.227858 ], [ 101.369913, 34.248143 ], [ 101.327413, 34.24468 ], [ 101.325565, 34.268423 ], [ 101.268899, 34.278808 ], [ 101.228863, 34.298586 ], [ 101.235022, 34.325279 ], [ 101.193754, 34.336646 ], [ 101.178356, 34.320831 ], [ 101.098284, 34.329233 ], [ 101.054552, 34.322808 ], [ 100.986799, 34.374689 ], [ 100.951074, 34.38358 ], [ 100.895024, 34.375183 ], [ 100.868538, 34.332693 ], [ 100.821727, 34.317371 ], [ 100.798321, 34.260014 ], [ 100.809408, 34.247153 ], [ 100.764445, 34.178857 ], [ 100.806329, 34.155584 ], [ 100.848828, 34.089692 ], [ 100.870386, 34.083744 ], [ 100.880857, 34.036644 ], [ 100.93506, 33.990013 ], [ 100.927669, 33.975126 ], [ 100.965857, 33.946832 ], [ 100.994806, 33.891707 ], [ 101.023139, 33.896178 ], [ 101.054552, 33.863386 ], [ 101.153718, 33.8445 ], [ 101.153102, 33.823124 ], [ 101.190675, 33.791796 ], [ 101.186363, 33.741051 ], [ 101.162957, 33.719649 ], [ 101.177124, 33.685295 ], [ 101.166653, 33.659894 ], [ 101.217776, 33.669856 ], [ 101.23687, 33.685793 ], [ 101.302776, 33.657902 ], [ 101.385312, 33.644949 ], [ 101.424732, 33.655411 ], [ 101.428427, 33.680315 ], [ 101.501724, 33.702723 ], [ 101.58426, 33.674339 ], [ 101.585492, 33.645448 ], [ 101.616905, 33.598603 ], [ 101.611977, 33.565199 ], [ 101.622448, 33.502343 ], [ 101.718535, 33.494857 ], [ 101.748716, 33.505337 ], [ 101.769042, 33.538765 ], [ 101.777665, 33.533776 ], [ 101.769042, 33.45592 ], [ 101.695745, 33.433948 ], [ 101.663716, 33.383991 ], [ 101.64955, 33.323004 ], [ 101.677883, 33.297497 ], [ 101.735781, 33.279987 ], [ 101.709912, 33.21292 ], [ 101.653861, 33.162835 ], [ 101.661252, 33.135778 ], [ 101.633535, 33.101193 ], [ 101.557775, 33.167344 ], [ 101.515275, 33.192889 ], [ 101.487557, 33.226938 ], [ 101.403174, 33.225436 ], [ 101.386543, 33.207412 ], [ 101.393935, 33.157826 ], [ 101.381616, 33.153316 ], [ 101.297232, 33.262475 ], [ 101.217776, 33.256469 ], [ 101.182668, 33.26948 ], [ 101.156798, 33.236449 ], [ 101.124769, 33.221431 ], [ 101.11553, 33.194893 ], [ 101.169733, 33.10019 ], [ 101.143863, 33.086151 ], [ 101.146327, 33.056563 ], [ 101.184515, 33.041514 ], [ 101.171581, 33.009902 ], [ 101.183899, 32.984304 ], [ 101.129081, 32.989324 ], [ 101.134624, 32.95217 ], [ 101.124153, 32.909976 ], [ 101.178356, 32.892892 ], [ 101.223935, 32.855698 ], [ 101.237486, 32.825026 ], [ 101.22332, 32.725898 ], [ 101.157414, 32.661431 ], [ 101.124769, 32.658408 ], [ 101.077342, 32.68259 ], [ 101.030531, 32.660424 ], [ 100.99727, 32.627668 ], [ 100.956618, 32.621116 ], [ 100.93198, 32.600447 ], [ 100.887633, 32.632708 ], [ 100.834046, 32.648835 ], [ 100.77122, 32.643795 ], [ 100.690532, 32.678056 ], [ 100.71209, 32.645307 ], [ 100.710242, 32.610026 ], [ 100.673286, 32.628172 ], [ 100.661583, 32.616075 ], [ 100.657887, 32.546484 ], [ 100.645568, 32.526303 ], [ 100.603069, 32.553547 ], [ 100.54517, 32.569687 ], [ 100.516837, 32.632204 ], [ 100.470026, 32.694678 ], [ 100.450932, 32.694678 ], [ 100.420135, 32.73194 ], [ 100.378251, 32.698707 ], [ 100.399193, 32.756101 ], [ 100.339447, 32.719353 ], [ 100.258759, 32.742511 ], [ 100.231041, 32.696189 ], [ 100.229809, 32.650346 ], [ 100.208252, 32.606497 ], [ 100.189773, 32.630692 ], [ 100.109701, 32.640268 ], [ 100.088143, 32.668988 ], [ 100.139266, 32.724388 ], [ 100.117093, 32.802392 ], [ 100.123252, 32.837095 ], [ 100.064738, 32.895907 ], [ 100.029629, 32.895907 ], [ 100.038252, 32.929066 ], [ 99.956332, 32.948152 ], [ 99.947709, 32.986814 ], [ 99.877492, 33.045527 ], [ 99.877492, 32.993339 ], [ 99.851007, 32.941623 ], [ 99.805427, 32.940619 ], [ 99.788181, 32.956689 ], [ 99.764159, 32.924545 ], [ 99.791877, 32.883344 ], [ 99.766623, 32.826032 ], [ 99.760464, 32.769689 ], [ 99.717964, 32.732443 ], [ 99.705029, 32.76516 ], [ 99.646515, 32.774721 ], [ 99.640355, 32.790822 ], [ 99.589233, 32.789312 ], [ 99.558436, 32.839106 ], [ 99.45311, 32.862233 ], [ 99.376118, 32.899927 ], [ 99.353944, 32.885354 ], [ 99.268944, 32.878318 ], [ 99.24677, 32.924043 ], [ 99.235067, 32.982296 ], [ 99.214741, 32.991332 ], [ 99.196263, 33.035493 ], [ 99.124814, 33.046028 ], [ 99.090322, 33.079131 ], [ 99.024416, 33.094675 ], [ 99.014561, 33.081137 ], [ 98.971445, 33.098185 ], [ 98.967134, 33.115229 ], [ 98.92217, 33.118738 ], [ 98.858728, 33.150811 ], [ 98.804526, 33.219428 ], [ 98.802062, 33.270481 ], [ 98.759562, 33.276985 ], [ 98.779888, 33.370497 ], [ 98.736157, 33.406975 ], [ 98.742316, 33.477887 ], [ 98.725686, 33.503341 ], [ 98.678258, 33.522801 ], [ 98.648077, 33.548741 ], [ 98.652389, 33.595114 ], [ 98.622824, 33.610067 ], [ 98.61728, 33.637476 ], [ 98.6567, 33.64744 ], [ 98.610505, 33.682805 ], [ 98.582788, 33.731595 ], [ 98.537824, 33.74752 ], [ 98.51873, 33.77389 ], [ 98.494092, 33.768915 ], [ 98.492861, 33.796272 ], [ 98.463295, 33.848477 ], [ 98.434962, 33.843009 ], [ 98.407245, 33.867362 ], [ 98.425723, 33.913066 ], [ 98.415252, 33.956761 ], [ 98.440506, 33.981577 ], [ 98.428187, 34.029204 ], [ 98.396774, 34.053008 ], [ 98.392462, 34.089196 ], [ 98.344419, 34.094648 ], [ 98.258188, 34.083249 ], [ 98.206449, 34.08424 ], [ 98.157174, 34.107532 ], [ 98.098043, 34.122892 ], [ 98.051848, 34.11546 ], [ 97.95453, 34.190739 ], [ 97.898479, 34.209548 ], [ 97.796849, 34.199154 ], [ 97.796849, 34.199154 ], [ 97.789458, 34.182818 ], [ 97.789458, 34.182818 ], [ 97.766668, 34.158555 ], [ 97.665654, 34.126855 ], [ 97.70261, 34.036644 ], [ 97.652719, 33.998448 ], [ 97.660111, 33.956264 ], [ 97.629314, 33.919523 ], [ 97.601596, 33.929951 ], [ 97.52214, 33.903133 ], [ 97.503662, 33.912073 ], [ 97.460546, 33.887236 ], [ 97.395257, 33.889224 ], [ 97.398336, 33.848477 ], [ 97.371851, 33.842015 ], [ 97.373083, 33.817655 ], [ 97.406344, 33.795278 ], [ 97.422974, 33.754984 ], [ 97.418046, 33.728608 ], [ 97.435293, 33.682307 ], [ 97.415583, 33.605582 ], [ 97.450075, 33.582152 ], [ 97.523372, 33.577166 ], [ 97.511669, 33.520805 ], [ 97.552321, 33.465906 ], [ 97.625618, 33.461412 ], [ 97.674893, 33.432949 ], [ 97.754349, 33.409972 ], [ 97.676125, 33.341004 ], [ 97.622538, 33.337005 ], [ 97.607756, 33.263976 ], [ 97.548626, 33.203907 ], [ 97.487648, 33.168346 ], [ 97.498119, 33.137783 ], [ 97.487032, 33.107209 ], [ 97.517213, 33.097683 ], [ 97.542466, 33.035995 ], [ 97.499966, 33.011408 ], [ 97.523988, 32.988822 ], [ 97.438372, 32.976271 ], [ 97.375547, 32.956689 ], [ 97.347829, 32.895907 ], [ 97.376163, 32.886359 ], [ 97.392793, 32.828546 ], [ 97.386018, 32.77925 ], [ 97.429133, 32.714318 ], [ 97.42359, 32.70475 ], [ 97.48272, 32.654377 ], [ 97.535075, 32.638252 ], [ 97.543698, 32.62162 ], [ 97.607756, 32.614059 ], [ 97.616995, 32.586329 ], [ 97.700763, 32.53488 ], [ 97.730944, 32.527312 ], [ 97.684132, 32.530339 ], [ 97.670582, 32.51722 ], [ 97.540618, 32.536899 ], [ 97.50243, 32.530844 ], [ 97.463626, 32.55506 ], [ 97.448843, 32.586833 ], [ 97.411887, 32.575235 ], [ 97.374315, 32.546484 ], [ 97.3583, 32.563635 ], [ 97.332431, 32.542448 ], [ 97.334895, 32.514192 ], [ 97.388481, 32.501575 ], [ 97.341054, 32.440987 ], [ 97.387865, 32.427349 ], [ 97.424822, 32.322723 ], [ 97.415583, 32.296421 ], [ 97.371235, 32.273148 ], [ 97.32196, 32.303503 ], [ 97.299786, 32.294904 ], [ 97.264062, 32.182527 ], [ 97.271453, 32.139971 ], [ 97.313953, 32.130342 ], [ 97.293011, 32.096887 ], [ 97.308409, 32.076605 ], [ 97.258518, 32.072041 ], [ 97.219714, 32.109054 ], [ 97.201852, 32.090296 ], [ 97.233881, 32.063927 ], [ 97.214786, 32.042623 ], [ 97.188301, 32.055304 ], [ 97.169823, 32.032984 ], [ 97.127323, 32.044145 ], [ 97.028773, 32.04871 ], [ 97.006599, 32.067984 ], [ 96.935766, 32.048203 ], [ 96.965947, 32.008628 ], [ 96.941925, 31.986297 ], [ 96.894498, 32.013703 ], [ 96.863085, 31.996448 ], [ 96.868629, 31.964975 ], [ 96.824281, 32.007613 ], [ 96.722651, 32.013195 ], [ 96.742977, 32.001016 ], [ 96.753448, 31.944156 ], [ 96.776238, 31.935015 ], [ 96.81073, 31.894375 ], [ 96.794716, 31.869474 ], [ 96.760223, 31.860325 ], [ 96.765767, 31.819144 ], [ 96.799027, 31.792188 ], [ 96.840295, 31.720438 ], [ 96.790404, 31.698545 ], [ 96.778701, 31.675629 ], [ 96.722651, 31.686833 ], [ 96.691854, 31.722474 ], [ 96.661057, 31.705674 ], [ 96.615477, 31.737236 ], [ 96.56805, 31.711783 ], [ 96.519391, 31.74945 ], [ 96.468884, 31.769804 ], [ 96.435623, 31.796258 ], [ 96.407906, 31.845583 ], [ 96.389428, 31.919777 ], [ 96.288414, 31.919777 ], [ 96.253305, 31.929936 ], [ 96.220044, 31.905553 ], [ 96.188632, 31.904028 ], [ 96.214501, 31.876589 ], [ 96.202798, 31.841008 ], [ 96.183088, 31.835924 ], [ 96.178161, 31.775401 ], [ 96.231131, 31.749959 ], [ 96.222508, 31.733164 ], [ 96.252073, 31.697527 ], [ 96.245298, 31.657802 ], [ 96.221892, 31.647613 ], [ 96.207726, 31.598691 ], [ 96.156603, 31.602769 ], [ 96.148595, 31.686324 ], [ 96.135661, 31.70211 ], [ 96.064828, 31.720438 ], [ 95.989067, 31.78761 ], [ 95.983524, 31.816601 ], [ 95.89914, 31.81711 ], [ 95.846169, 31.736218 ], [ 95.853561, 31.714329 ], [ 95.823995, 31.68225 ], [ 95.779648, 31.748941 ], [ 95.634286, 31.782523 ], [ 95.580083, 31.76726 ], [ 95.546823, 31.73978 ], [ 95.511714, 31.750468 ], [ 95.480301, 31.795749 ], [ 95.456896, 31.801853 ], [ 95.406389, 31.896915 ], [ 95.408852, 31.918761 ], [ 95.3682, 31.92892 ], [ 95.360809, 31.95939 ], [ 95.395918, 32.001523 ], [ 95.454432, 32.007613 ], [ 95.421171, 32.033999 ], [ 95.454432, 32.061898 ], [ 95.440265, 32.157705 ], [ 95.406389, 32.182021 ], [ 95.367584, 32.178982 ], [ 95.366968, 32.151118 ], [ 95.31523, 32.148585 ], [ 95.270266, 32.194683 ], [ 95.270266, 32.194683 ], [ 95.239469, 32.287315 ], [ 95.241317, 32.3207 ], [ 95.214216, 32.321712 ], [ 95.20744, 32.297433 ], [ 95.10581, 32.258979 ], [ 95.079325, 32.279726 ], [ 95.096571, 32.322217 ], [ 95.193274, 32.332331 ], [ 95.261643, 32.348006 ], [ 95.228382, 32.363678 ], [ 95.218527, 32.397035 ], [ 95.153853, 32.386423 ], [ 95.081789, 32.384907 ], [ 95.075013, 32.376315 ], [ 95.075013, 32.376315 ], [ 95.057151, 32.395014 ], [ 94.988166, 32.422802 ], [ 94.944434, 32.404109 ], [ 94.912405, 32.41573 ], [ 94.889616, 32.472295 ], [ 94.852043, 32.463712 ], [ 94.80708, 32.486431 ], [ 94.78737, 32.522266 ], [ 94.762116, 32.526303 ], [ 94.737479, 32.587338 ], [ 94.638312, 32.645307 ], [ 94.614291, 32.673522 ], [ 94.591501, 32.640772 ], [ 94.522516, 32.595909 ], [ 94.459074, 32.599439 ], [ 94.463386, 32.572209 ], [ 94.435052, 32.562626 ], [ 94.395016, 32.594397 ], [ 94.371611, 32.524789 ], [ 94.350053, 32.533871 ], [ 94.294002, 32.519743 ], [ 94.292154, 32.502584 ], [ 94.250886, 32.51722 ], [ 94.196684, 32.51621 ], [ 94.176974, 32.454117 ], [ 94.137554, 32.433915 ], [ 94.091974, 32.463207 ], [ 94.049474, 32.469771 ], [ 94.03038, 32.448057 ], [ 93.978641, 32.459672 ], [ 93.960163, 32.484917 ], [ 93.90904, 32.463207 ], [ 93.861613, 32.466237 ], [ 93.851142, 32.50965 ], [ 93.820345, 32.549511 ], [ 93.75136, 32.56313 ], [ 93.721795, 32.578261 ], [ 93.651577, 32.571705 ], [ 93.618933, 32.522771 ], [ 93.516687, 32.47583 ], [ 93.501904, 32.503593 ], [ 93.476651, 32.504603 ], [ 93.4631, 32.556069 ], [ 93.411977, 32.558086 ], [ 93.385492, 32.525294 ], [ 93.33868, 32.5712 ], [ 93.308499, 32.580278 ], [ 93.300492, 32.619604 ], [ 93.260456, 32.62666 ], [ 93.239514, 32.662439 ], [ 93.210565, 32.655385 ], [ 93.176688, 32.6705 ], [ 93.159442, 32.644803 ], [ 93.087993, 32.63674 ], [ 93.069515, 32.626156 ], [ 93.023935, 32.703239 ], [ 93.019624, 32.737477 ], [ 93.00053, 32.741001 ], [ 92.964189, 32.714821 ], [ 92.933392, 32.719353 ], [ 92.866871, 32.698203 ], [ 92.822523, 32.729926 ], [ 92.789262, 32.719856 ], [ 92.756618, 32.743014 ], [ 92.686401, 32.76516 ], [ 92.667922, 32.73194 ], [ 92.634662, 32.720863 ], [ 92.574916, 32.741001 ], [ 92.56814, 32.73194 ], [ 92.484372, 32.745028 ], [ 92.459119, 32.76365 ], [ 92.411076, 32.748048 ], [ 92.355641, 32.764657 ], [ 92.343938, 32.738484 ], [ 92.310062, 32.751571 ], [ 92.255243, 32.720863 ], [ 92.198577, 32.754591 ], [ 92.211511, 32.788306 ], [ 92.193649, 32.801889 ], [ 92.227526, 32.821003 ], [ 92.205352, 32.866255 ], [ 92.145606, 32.885857 ], [ 92.101874, 32.860222 ], [ 92.038432, 32.860725 ], [ 92.018722, 32.829552 ], [ 91.955897, 32.8205 ], [ 91.896766, 32.907967 ], [ 91.857962, 32.90244 ], [ 91.839484, 32.948152 ], [ 91.799448, 32.942126 ], [ 91.752637, 32.969242 ], [ 91.685499, 32.989324 ], [ 91.664557, 33.012913 ], [ 91.583253, 33.0375 ], [ 91.55492, 33.060074 ], [ 91.535826, 33.10019 ], [ 91.49579, 33.109214 ], [ 91.436044, 33.066092 ], [ 91.370138, 33.100691 ], [ 91.311624, 33.108211 ], [ 91.261733, 33.141291 ], [ 91.226624, 33.141792 ], [ 91.18782, 33.106206 ], [ 91.161335, 33.108712 ], [ 91.147784, 33.07211 ], [ 91.072024, 33.113224 ], [ 91.037531, 33.098686 ], [ 91.001807, 33.11573 ], [ 90.927894, 33.120241 ], [ 90.902024, 33.083143 ], [ 90.88293, 33.120241 ], [ 90.803474, 33.114227 ], [ 90.740032, 33.142293 ], [ 90.704308, 33.135778 ], [ 90.627315, 33.180368 ], [ 90.562642, 33.229441 ], [ 90.490577, 33.264977 ], [ 90.405577, 33.260473 ], [ 90.363077, 33.279487 ], [ 90.332896, 33.310501 ], [ 90.246665, 33.423959 ], [ 90.22018, 33.437943 ], [ 90.107463, 33.460913 ], [ 90.088984, 33.478885 ], [ 90.083441, 33.525295 ], [ 90.01076, 33.553728 ], [ 89.984275, 33.612061 ], [ 90.008296, 33.687785 ], [ 89.981195, 33.70322 ], [ 89.983659, 33.725622 ], [ 89.907282, 33.741051 ], [ 89.902355, 33.758467 ], [ 89.942391, 33.801246 ], [ 89.899891, 33.80771 ], [ 89.837065, 33.868853 ], [ 89.795181, 33.865374 ], [ 89.73174, 33.921509 ], [ 89.718805, 33.946832 ], [ 89.688008, 33.959739 ], [ 89.684928, 33.990013 ], [ 89.635037, 34.049537 ], [ 89.656595, 34.057966 ], [ 89.655979, 34.097126 ], [ 89.71203, 34.131809 ], [ 89.756993, 34.124874 ], [ 89.760073, 34.152613 ], [ 89.789638, 34.150632 ], [ 89.816739, 34.16945 ], [ 89.838297, 34.263477 ], [ 89.825362, 34.293642 ], [ 89.86663, 34.324785 ], [ 89.858623, 34.359375 ], [ 89.820435, 34.369255 ], [ 89.799493, 34.39642 ], [ 89.819819, 34.420614 ], [ 89.823515, 34.455657 ], [ 89.814891, 34.548871 ], [ 89.777935, 34.574499 ], [ 89.798877, 34.628686 ], [ 89.74837, 34.641981 ], [ 89.72558, 34.660689 ], [ 89.732356, 34.732035 ], [ 89.799493, 34.743838 ], [ 89.825978, 34.796931 ], [ 89.867862, 34.81069 ], [ 89.838913, 34.865705 ], [ 89.814891, 34.86816 ], [ 89.821051, 34.902033 ], [ 89.78779, 34.921664 ], [ 89.747138, 34.903506 ], [ 89.707102, 34.919701 ], [ 89.670146, 34.887798 ], [ 89.578987, 34.895162 ], [ 89.560509, 34.938836 ], [ 89.59069, 35.057965 ], [ 89.593153, 35.104491 ], [ 89.579603, 35.118688 ], [ 89.519241, 35.133862 ], [ 89.46935, 35.214577 ], [ 89.450255, 35.223867 ], [ 89.48598, 35.256616 ], [ 89.531559, 35.276161 ], [ 89.494603, 35.298632 ], [ 89.516161, 35.330862 ], [ 89.497067, 35.361128 ], [ 89.58761, 35.383575 ], [ 89.619639, 35.412357 ], [ 89.658443, 35.425526 ], [ 89.685544, 35.416259 ], [ 89.739131, 35.468429 ], [ 89.765, 35.482563 ], [ 89.740979, 35.507412 ], [ 89.720037, 35.501566 ], [ 89.699711, 35.544916 ], [ 89.71203, 35.581915 ], [ 89.75145, 35.580942 ], [ 89.765616, 35.599922 ], [ 89.726196, 35.648082 ], [ 89.748986, 35.66267 ], [ 89.747138, 35.7516 ], [ 89.782863, 35.773453 ], [ 89.767464, 35.799183 ], [ 89.801957, 35.848193 ], [ 89.778551, 35.861775 ], [ 89.707718, 35.849163 ], [ 89.654747, 35.848193 ], [ 89.62395, 35.859349 ], [ 89.550654, 35.856924 ], [ 89.554965, 35.873414 ], [ 89.489676, 35.903475 ], [ 89.428082, 35.917531 ], [ 89.434857, 35.992136 ], [ 89.404676, 36.016827 ], [ 89.417611, 36.044897 ], [ 89.474893, 36.022151 ], [ 89.605472, 36.038123 ], [ 89.688624, 36.091337 ], [ 89.711414, 36.093272 ], [ 89.766848, 36.073925 ], [ 89.819819, 36.080697 ], [ 89.914058, 36.079246 ], [ 89.941159, 36.067637 ], [ 89.944855, 36.140649 ], [ 89.997825, 36.168193 ], [ 90.019999, 36.213594 ], [ 90.028006, 36.258486 ], [ 90.003369, 36.278752 ], [ 90.043405, 36.276822 ], [ 90.058188, 36.255591 ], [ 90.145651, 36.239181 ], [ 90.130252, 36.2078 ], [ 90.198006, 36.187516 ], [ 90.23681, 36.160462 ], [ 90.325505, 36.159496 ], [ 90.424055, 36.133883 ], [ 90.478258, 36.13195 ], [ 90.534925, 36.147899 ], [ 90.613149, 36.126632 ], [ 90.659344, 36.13485 ], [ 90.776373, 36.086501 ], [ 90.815793, 36.035703 ], [ 90.850285, 36.016827 ], [ 90.922966, 36.028927 ], [ 90.979017, 36.106811 ], [ 91.081263, 36.088436 ], [ 91.124994, 36.115514 ], [ 91.09235, 36.163844 ], [ 91.096045, 36.219871 ], [ 91.051698, 36.238215 ], [ 91.07264, 36.299012 ], [ 91.026444, 36.323607 ], [ 91.051698, 36.433946 ], [ 91.028292, 36.443093 ], [ 91.039995, 36.474861 ], [ 91.035683, 36.529703 ], [ 91.011662, 36.539801 ], [ 90.905104, 36.560474 ], [ 90.831191, 36.55807 ], [ 90.810865, 36.585466 ], [ 90.741264, 36.585947 ], [ 90.72217, 36.620058 ], [ 90.730793, 36.655594 ], [ 90.706156, 36.658955 ], [ 90.720938, 36.708868 ], [ 90.754815, 36.721341 ], [ 90.727098, 36.755872 ], [ 90.732025, 36.825844 ], [ 90.758511, 36.825844 ], [ 90.853981, 36.915373 ], [ 90.924198, 36.921115 ], [ 90.983944, 36.913459 ], [ 91.036915, 36.929727 ], [ 91.051698, 36.96751 ], [ 91.126842, 36.978507 ], [ 91.133618, 37.007665 ], [ 91.181045, 37.025345 ], [ 91.216153, 37.010054 ], [ 91.303617, 37.012444 ], [ 91.291298, 37.042544 ], [ 91.303617, 37.083136 ], [ 91.286371, 37.105095 ], [ 91.280211, 37.163779 ], [ 91.1909, 37.205737 ], [ 91.194596, 37.273868 ], [ 91.134849, 37.324331 ], [ 91.136081, 37.355734 ], [ 91.113292, 37.387124 ], [ 91.099741, 37.447965 ], [ 91.073256, 37.475992 ], [ 91.019669, 37.493088 ], [ 90.958075, 37.477891 ], [ 90.911879, 37.519674 ], [ 90.865684, 37.53059 ], [ 90.882314, 37.575664 ], [ 90.854597, 37.604117 ], [ 90.820104, 37.613599 ], [ 90.777605, 37.648672 ], [ 90.643946, 37.696988 ], [ 90.586663, 37.703144 ], [ 90.579272, 37.720661 ], [ 90.519526, 37.730601 ], [ 90.516446, 38.207111 ], [ 90.531229, 38.319886 ], [ 90.401882, 38.311434 ], [ 90.361846, 38.300163 ], [ 90.352607, 38.233441 ], [ 90.280542, 38.238142 ], [ 90.137644, 38.340543 ], [ 90.179528, 38.396848 ], [ 90.129636, 38.400131 ], [ 90.111774, 38.418889 ], [ 90.111774, 38.477945 ], [ 90.130868, 38.494341 ], [ 90.248513, 38.491531 ], [ 90.315034, 38.501835 ], [ 90.353222, 38.482162 ], [ 90.427135, 38.493873 ], [ 90.465323, 38.521971 ], [ 90.463476, 38.556611 ], [ 90.525685, 38.561291 ], [ 90.560794, 38.593573 ], [ 90.608837, 38.594508 ], [ 90.606374, 38.610878 ], [ 90.645794, 38.635191 ], [ 90.619308, 38.664636 ], [ 90.65996, 38.674449 ], [ 90.724634, 38.658094 ], [ 90.899561, 38.679588 ], [ 90.970394, 38.697806 ], [ 90.992567, 38.695003 ], [ 91.188436, 38.73096 ], [ 91.242639, 38.752433 ], [ 91.298689, 38.746365 ], [ 91.446515, 38.813546 ], [ 91.501333, 38.815411 ], [ 91.681188, 38.852706 ], [ 91.694738, 38.86622 ], [ 91.806223, 38.872744 ], [ 91.87952, 38.884391 ], [ 91.880752, 38.899297 ], [ 91.966368, 38.930961 ], [ 92.10865, 38.963541 ], [ 92.173323, 38.960749 ], [ 92.197961, 38.983548 ], [ 92.263866, 39.002153 ], [ 92.380279, 38.999828 ], [ 92.416003, 39.010524 ], [ 92.41046, 39.03842 ], [ 92.459119, 39.042604 ], [ 92.459119, 39.063982 ], [ 92.489916, 39.099753 ], [ 92.545966, 39.111362 ], [ 92.659299, 39.109969 ], [ 92.765857, 39.136898 ], [ 92.866871, 39.138754 ], [ 92.889045, 39.160103 ], [ 92.938936, 39.169848 ], [ 92.978356, 39.143396 ], [ 93.043029, 39.146645 ], [ 93.115094, 39.17959 ], [ 93.142196, 39.160567 ], [ 93.131725, 39.108112 ], [ 93.165601, 39.090928 ], [ 93.198246, 39.045857 ], [ 93.179152, 38.923977 ], [ 93.237666, 38.916062 ], [ 93.274007, 38.896036 ], [ 93.453245, 38.915596 ], [ 93.729186, 38.924443 ], [ 93.834511, 38.867618 ], [ 93.884403, 38.867618 ], [ 93.884403, 38.826136 ], [ 93.769838, 38.821007 ], [ 93.756287, 38.807484 ], [ 93.773533, 38.771099 ], [ 93.800019, 38.750566 ], [ 93.885018, 38.720689 ], [ 93.95154, 38.715086 ], [ 93.973098, 38.724891 ], [ 94.281067, 38.7599 ], [ 94.370379, 38.7627 ], [ 94.511429, 38.445142 ], [ 94.527443, 38.425922 ], [ 94.527443, 38.365416 ], [ 94.56132, 38.351807 ], [ 94.582878, 38.36917 ], [ 94.672805, 38.386998 ], [ 94.812623, 38.385591 ], [ 94.861282, 38.393565 ], [ 94.884072, 38.414669 ], [ 94.973999, 38.430142 ], [ 95.045448, 38.418889 ], [ 95.072549, 38.402476 ], [ 95.122441, 38.417014 ], [ 95.140919, 38.392158 ], [ 95.185266, 38.379492 ], [ 95.209904, 38.327868 ], [ 95.229614, 38.330685 ], [ 95.259179, 38.302981 ], [ 95.315846, 38.318947 ], [ 95.408236, 38.300163 ], [ 95.440881, 38.310965 ], [ 95.455664, 38.291709 ], [ 95.487693, 38.314721 ], [ 95.51849, 38.294997 ], [ 95.585011, 38.343359 ], [ 95.608417, 38.339134 ], [ 95.671858, 38.388405 ], [ 95.703887, 38.400131 ], [ 95.723597, 38.378554 ], [ 95.775952, 38.356031 ], [ 95.83693, 38.344298 ], [ 95.852945, 38.287481 ], [ 95.89606, 38.2903 ], [ 95.932401, 38.259291 ], [ 95.93856, 38.237202 ], [ 96.006929, 38.207582 ], [ 96.06606, 38.173245 ], [ 96.109175, 38.187358 ], [ 96.221892, 38.149246 ], [ 96.252689, 38.167599 ], [ 96.264392, 38.145952 ], [ 96.313051, 38.161952 ], [ 96.301964, 38.183124 ], [ 96.335841, 38.246132 ], [ 96.378341, 38.277146 ], [ 96.46334, 38.277616 ], [ 96.665369, 38.23015 ], [ 96.655514, 38.295936 ], [ 96.638883, 38.307208 ], [ 96.626564, 38.356031 ], [ 96.698013, 38.422172 ], [ 96.707868, 38.459203 ], [ 96.6666, 38.483567 ], [ 96.706637, 38.505582 ], [ 96.780549, 38.504177 ], [ 96.800259, 38.52759 ], [ 96.767614, 38.552399 ], [ 96.808882, 38.582346 ], [ 96.7941, 38.608072 ], [ 96.847071, 38.599186 ], [ 96.876636, 38.580475 ], [ 96.961019, 38.558015 ], [ 97.055874, 38.594508 ], [ 97.047251, 38.653888 ], [ 97.057722, 38.67258 ], [ 97.009063, 38.702477 ], [ 97.023229, 38.755699 ], [ 97.00044, 38.7613 ], [ 96.987505, 38.793025 ], [ 96.993664, 38.834993 ], [ 96.983809, 38.869016 ], [ 96.940693, 38.90768 ], [ 96.938846, 38.95563 ], [ 96.965331, 39.017034 ], [ 96.95794, 39.041674 ], [ 96.969643, 39.097895 ], [ 97.012142, 39.142004 ], [ 96.962251, 39.198144 ], [ 97.017686, 39.208347 ], [ 97.060186, 39.19768 ], [ 97.14149, 39.199999 ], [ 97.220946, 39.193042 ], [ 97.315185, 39.164744 ], [ 97.347213, 39.167528 ], [ 97.371235, 39.140611 ], [ 97.401416, 39.146645 ], [ 97.458698, 39.117863 ], [ 97.504894, 39.076527 ], [ 97.58127, 39.052364 ], [ 97.679205, 39.010524 ], [ 97.701379, 38.963076 ], [ 97.828878, 38.93003 ], [ 97.875689, 38.898365 ], [ 98.009348, 38.85923 ], [ 98.029058, 38.834061 ], [ 98.068478, 38.816344 ], [ 98.091884, 38.786495 ], [ 98.167645, 38.840121 ], [ 98.242173, 38.880664 ], [ 98.235398, 38.918855 ], [ 98.276666, 38.963541 ], [ 98.287753, 38.992386 ], [ 98.280977, 39.027263 ], [ 98.316702, 39.040744 ], [ 98.383839, 39.029588 ], [ 98.401086, 39.001688 ], [ 98.432498, 38.996107 ], [ 98.428187, 38.976104 ], [ 98.457752, 38.952838 ], [ 98.526737, 38.95563 ], [ 98.584635, 38.93003 ], [ 98.624056, 38.959353 ], [ 98.612353, 38.977035 ], [ 98.661628, 38.993782 ], [ 98.70536, 39.043533 ], [ 98.730613, 39.057011 ], [ 98.743548, 39.086747 ], [ 98.816845, 39.085818 ], [ 98.818076, 39.064911 ], [ 98.886446, 39.040744 ], [ 98.903076, 39.012384 ], [ 98.951735, 38.987735 ], [ 99.054597, 38.97657 ], [ 99.107568, 38.951907 ], [ 99.071843, 38.921184 ], [ 99.068764, 38.896968 ], [ 99.141445, 38.852706 ], [ 99.222133, 38.788827 ], [ 99.291118, 38.765966 ], [ 99.361951, 38.718354 ], [ 99.375502, 38.684727 ], [ 99.412458, 38.665571 ], [ 99.450646, 38.60433 ], [ 99.501769, 38.612281 ], [ 99.52887, 38.546314 ], [ 99.585537, 38.498556 ], [ 99.63974, 38.474666 ], [ 99.65945, 38.449361 ], [ 99.727203, 38.415607 ], [ 99.758, 38.410449 ], [ 99.826985, 38.370109 ], [ 99.960028, 38.320825 ], [ 100.001912, 38.315191 ], [ 100.049955, 38.283254 ], [ 100.071513, 38.284663 ], [ 100.117093, 38.253652 ], [ 100.126332, 38.231561 ], [ 100.182998, 38.222158 ], [ 100.159592, 38.291239 ], [ 100.163904, 38.328337 ], [ 100.136803, 38.33444 ], [ 100.093071, 38.407166 ], [ 100.022238, 38.432017 ], [ 100.001296, 38.467169 ], [ 100.025933, 38.507923 ], [ 100.064122, 38.518694 ], [ 100.086911, 38.492936 ], [ 100.113397, 38.497151 ], [ 100.163288, 38.461546 ], [ 100.24028, 38.441861 ], [ 100.259374, 38.366355 ], [ 100.301874, 38.388405 ], [ 100.331439, 38.337257 ], [ 100.318505, 38.329276 ], [ 100.396729, 38.293118 ], [ 100.424446, 38.307208 ], [ 100.432453, 38.275267 ], [ 100.459555, 38.2654 ], [ 100.474953, 38.288891 ], [ 100.516837, 38.272448 ], [ 100.545786, 38.247072 ], [ 100.595061, 38.242372 ], [ 100.619083, 38.26587 ], [ 100.71517, 38.253652 ], [ 100.752126, 38.238612 ], [ 100.825423, 38.158658 ], [ 100.860531, 38.148305 ], [ 100.913502, 38.17889 ], [ 100.93814, 38.16007 ], [ 100.91843, 38.129006 ], [ 100.922125, 38.084741 ], [ 100.888864, 38.056001 ], [ 100.895024, 38.013107 ], [ 100.91843, 37.999432 ], [ 100.964009, 38.011221 ], [ 101.077342, 37.941874 ], [ 101.103211, 37.946593 ], [ 101.114298, 37.92016 ], [ 101.152486, 37.891356 ], [ 101.159262, 37.86821 ], [ 101.202994, 37.84742 ], [ 101.276906, 37.83655 ], [ 101.362522, 37.791162 ], [ 101.382848, 37.822369 ], [ 101.459224, 37.86632 ], [ 101.551615, 37.835604 ], [ 101.598427, 37.827569 ], [ 101.670491, 37.754264 ], [ 101.659405, 37.733441 ], [ 101.791832, 37.696041 ], [ 101.815853, 37.654357 ], [ 101.854657, 37.664781 ], [ 101.873135, 37.686569 ], [ 101.946432, 37.728235 ], [ 101.998787, 37.724921 ], [ 102.036359, 37.685149 ], [ 102.048678, 37.651515 ], [ 102.035128, 37.627819 ], [ 102.102265, 37.582304 ], [ 102.131214, 37.54625 ], [ 102.103497, 37.482641 ], [ 102.125055, 37.48549 ], [ 102.176794, 37.458892 ], [ 102.19712, 37.420403 ], [ 102.299981, 37.391404 ], [ 102.29875, 37.370004 ], [ 102.368351, 37.327662 ], [ 102.428097, 37.308624 ], [ 102.419474, 37.294343 ], [ 102.45335, 37.271487 ], [ 102.457662, 37.248147 ], [ 102.490307, 37.223371 ], [ 102.533422, 37.217176 ], [ 102.578386, 37.17284 ], [ 102.599944, 37.174748 ], [ 102.642444, 37.099845 ], [ 102.583314, 37.104618 ], [ 102.488459, 37.078362 ], [ 102.506321, 37.019134 ], [ 102.450271, 36.968467 ], [ 102.499546, 36.954599 ], [ 102.526031, 36.928291 ], [ 102.56114, 36.91968 ], [ 102.587009, 36.869904 ], [ 102.639364, 36.852666 ], [ 102.720052, 36.767858 ], [ 102.692335, 36.775528 ], [ 102.639364, 36.732853 ], [ 102.612879, 36.738129 ], [ 102.601176, 36.710307 ], [ 102.630741, 36.650793 ], [ 102.684328, 36.619097 ], [ 102.724364, 36.613813 ], [ 102.714509, 36.599401 ], [ 102.761936, 36.568645 ], [ 102.734219, 36.562396 ], [ 102.753313, 36.525855 ], [ 102.793349, 36.497957 ], [ 102.771791, 36.47438 ], [ 102.829689, 36.365544 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"640000\", \"name\": \"宁夏回族自治区\", \"center\": [ 106.278179, 38.46637 ], \"centroid\": [ 106.169867, 37.291331 ], \"childrenNum\": 5, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 29, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 107.268764, 37.099367 ], [ 107.234887, 37.096503 ], [ 107.181916, 37.143269 ], [ 107.133873, 37.134681 ], [ 107.095685, 37.115595 ], [ 107.030395, 37.140883 ], [ 107.031011, 37.108436 ], [ 106.998367, 37.106527 ], [ 106.905976, 37.151378 ], [ 106.912135, 37.110345 ], [ 106.891193, 37.098413 ], [ 106.818512, 37.141838 ], [ 106.776012, 37.158056 ], [ 106.772933, 37.120367 ], [ 106.750143, 37.09889 ], [ 106.728585, 37.121321 ], [ 106.687933, 37.12991 ], [ 106.673151, 37.1113 ], [ 106.6171, 37.135158 ], [ 106.605397, 37.127524 ], [ 106.645433, 37.064992 ], [ 106.666991, 37.016745 ], [ 106.646665, 37.000496 ], [ 106.64297, 36.962729 ], [ 106.594926, 36.967988 ], [ 106.595542, 36.94025 ], [ 106.540108, 36.984244 ], [ 106.549347, 36.941685 ], [ 106.601702, 36.918244 ], [ 106.609709, 36.878521 ], [ 106.609709, 36.878521 ], [ 106.626955, 36.892403 ], [ 106.637426, 36.867031 ], [ 106.637426, 36.867031 ], [ 106.657752, 36.820575 ], [ 106.627571, 36.752995 ], [ 106.644817, 36.72278 ], [ 106.59431, 36.750118 ], [ 106.514238, 36.715584 ], [ 106.519782, 36.708868 ], [ 106.519782, 36.708868 ], [ 106.530869, 36.690154 ], [ 106.490833, 36.685835 ], [ 106.491448, 36.628703 ], [ 106.444637, 36.624861 ], [ 106.465579, 36.583063 ], [ 106.444637, 36.557109 ], [ 106.397826, 36.576816 ], [ 106.392282, 36.556628 ], [ 106.363949, 36.577296 ], [ 106.37134, 36.549417 ], [ 106.39721, 36.548455 ], [ 106.455724, 36.496995 ], [ 106.494528, 36.494589 ], [ 106.523477, 36.468605 ], [ 106.492064, 36.422389 ], [ 106.510543, 36.379037 ], [ 106.497608, 36.31348 ], [ 106.470507, 36.306246 ], [ 106.504383, 36.266207 ], [ 106.54134, 36.25366 ], [ 106.559202, 36.292259 ], [ 106.647897, 36.259451 ], [ 106.685469, 36.273445 ], [ 106.698404, 36.244008 ], [ 106.735976, 36.23725 ], [ 106.772933, 36.212628 ], [ 106.808657, 36.21118 ], [ 106.833295, 36.229044 ], [ 106.858548, 36.206834 ], [ 106.858548, 36.206834 ], [ 106.873947, 36.178338 ], [ 106.873947, 36.178338 ], [ 106.930613, 36.138716 ], [ 106.925686, 36.115997 ], [ 106.957715, 36.091337 ], [ 106.940468, 36.064734 ], [ 106.928149, 36.011502 ], [ 106.94786, 35.988262 ], [ 106.90228, 35.943699 ], [ 106.93862, 35.952905 ], [ 106.940468, 35.931101 ], [ 106.912751, 35.93207 ], [ 106.849925, 35.887476 ], [ 106.927534, 35.810346 ], [ 106.897353, 35.759856 ], [ 106.868403, 35.771996 ], [ 106.867171, 35.738485 ], [ 106.819128, 35.7448 ], [ 106.806193, 35.70982 ], [ 106.750759, 35.725369 ], [ 106.750759, 35.689408 ], [ 106.674998, 35.728284 ], [ 106.66268, 35.70739 ], [ 106.633115, 35.714679 ], [ 106.620796, 35.743829 ], [ 106.595542, 35.727312 ], [ 106.566593, 35.738971 ], [ 106.506231, 35.737514 ], [ 106.49268, 35.732656 ], [ 106.434782, 35.688436 ], [ 106.460036, 35.643705 ], [ 106.47913, 35.575101 ], [ 106.460036, 35.578995 ], [ 106.440941, 35.52641 ], [ 106.465579, 35.481101 ], [ 106.490217, 35.480613 ], [ 106.483441, 35.450393 ], [ 106.503767, 35.415284 ], [ 106.501304, 35.364056 ], [ 106.472354, 35.310842 ], [ 106.415688, 35.276161 ], [ 106.368261, 35.273718 ], [ 106.363333, 35.238532 ], [ 106.319601, 35.265411 ], [ 106.241377, 35.358687 ], [ 106.237681, 35.409431 ], [ 106.196414, 35.409919 ], [ 106.173008, 35.437716 ], [ 106.129892, 35.393333 ], [ 106.113262, 35.361616 ], [ 106.083081, 35.421624 ], [ 106.073226, 35.447468 ], [ 106.071378, 35.449418 ], [ 106.073226, 35.450393 ], [ 106.073842, 35.45478 ], [ 106.06953, 35.458193 ], [ 106.071994, 35.463555 ], [ 106.078769, 35.509848 ], [ 106.047356, 35.498155 ], [ 106.023335, 35.49377 ], [ 106.017175, 35.519103 ], [ 105.900147, 35.54735 ], [ 105.868734, 35.540046 ], [ 105.847176, 35.490359 ], [ 105.816379, 35.575101 ], [ 105.800365, 35.564878 ], [ 105.762176, 35.602841 ], [ 105.759097, 35.634464 ], [ 105.713517, 35.650513 ], [ 105.722756, 35.673366 ], [ 105.690727, 35.698643 ], [ 105.723988, 35.725854 ], [ 105.740618, 35.698643 ], [ 105.759097, 35.724883 ], [ 105.70243, 35.733142 ], [ 105.667322, 35.749657 ], [ 105.595873, 35.715651 ], [ 105.481924, 35.727312 ], [ 105.457286, 35.771511 ], [ 105.432033, 35.787533 ], [ 105.428953, 35.819082 ], [ 105.408627, 35.822479 ], [ 105.38091, 35.792873 ], [ 105.371055, 35.844312 ], [ 105.39754, 35.857409 ], [ 105.350113, 35.875839 ], [ 105.324859, 35.941761 ], [ 105.343954, 36.033767 ], [ 105.406163, 36.074409 ], [ 105.430801, 36.10391 ], [ 105.491163, 36.101009 ], [ 105.515185, 36.147415 ], [ 105.478844, 36.213111 ], [ 105.460366, 36.223733 ], [ 105.45975, 36.268137 ], [ 105.476381, 36.293224 ], [ 105.455439, 36.321678 ], [ 105.425873, 36.330357 ], [ 105.401236, 36.369881 ], [ 105.398156, 36.430575 ], [ 105.363048, 36.443093 ], [ 105.362432, 36.496514 ], [ 105.322396, 36.535954 ], [ 105.281744, 36.522489 ], [ 105.252179, 36.553263 ], [ 105.2762, 36.563358 ], [ 105.261418, 36.602764 ], [ 105.22015, 36.631105 ], [ 105.225693, 36.664716 ], [ 105.201056, 36.700711 ], [ 105.218302, 36.730455 ], [ 105.272505, 36.739567 ], [ 105.275584, 36.752515 ], [ 105.319932, 36.742924 ], [ 105.340874, 36.764502 ], [ 105.334714, 36.80093 ], [ 105.303302, 36.820575 ], [ 105.279896, 36.86751 ], [ 105.244787, 36.894796 ], [ 105.178882, 36.892403 ], [ 105.185657, 36.942164 ], [ 105.165331, 36.99476 ], [ 105.128991, 36.996194 ], [ 105.05939, 37.022956 ], [ 105.03968, 37.007187 ], [ 105.004571, 37.035378 ], [ 104.95468, 37.040156 ], [ 104.954064, 37.077407 ], [ 104.914644, 37.097935 ], [ 104.888158, 37.15901 ], [ 104.864753, 37.17284 ], [ 104.85613, 37.211933 ], [ 104.776673, 37.246718 ], [ 104.717543, 37.208597 ], [ 104.638087, 37.201923 ], [ 104.600515, 37.242907 ], [ 104.624536, 37.298627 ], [ 104.651022, 37.290534 ], [ 104.673812, 37.317668 ], [ 104.713848, 37.329566 ], [ 104.662109, 37.367626 ], [ 104.679971, 37.408044 ], [ 104.521059, 37.43466 ], [ 104.499501, 37.421353 ], [ 104.448994, 37.42468 ], [ 104.437907, 37.445589 ], [ 104.365226, 37.418026 ], [ 104.298705, 37.414223 ], [ 104.287002, 37.428007 ], [ 104.322726, 37.44844 ], [ 104.407726, 37.464592 ], [ 104.419429, 37.511604 ], [ 104.433595, 37.515402 ], [ 104.623305, 37.522522 ], [ 104.805007, 37.539133 ], [ 104.866601, 37.566651 ], [ 105.027977, 37.580881 ], [ 105.111128, 37.633981 ], [ 105.187505, 37.657674 ], [ 105.221998, 37.677097 ], [ 105.315004, 37.702197 ], [ 105.4037, 37.710246 ], [ 105.467141, 37.695094 ], [ 105.598952, 37.699356 ], [ 105.616199, 37.722555 ], [ 105.622358, 37.777919 ], [ 105.677177, 37.771769 ], [ 105.760944, 37.799674 ], [ 105.80406, 37.862068 ], [ 105.799749, 37.939986 ], [ 105.840401, 38.004147 ], [ 105.780655, 38.084741 ], [ 105.76772, 38.121474 ], [ 105.775111, 38.186887 ], [ 105.802828, 38.220277 ], [ 105.842248, 38.240962 ], [ 105.86627, 38.296406 ], [ 105.821307, 38.366824 ], [ 105.835473, 38.387467 ], [ 105.827466, 38.432486 ], [ 105.850872, 38.443736 ], [ 105.836705, 38.476071 ], [ 105.863806, 38.53508 ], [ 105.856415, 38.569714 ], [ 105.874277, 38.593105 ], [ 105.852719, 38.641735 ], [ 105.894603, 38.696405 ], [ 105.88598, 38.716953 ], [ 105.908154, 38.737496 ], [ 105.909386, 38.791159 ], [ 105.992538, 38.857366 ], [ 105.97098, 38.909077 ], [ 106.021487, 38.953769 ], [ 106.060907, 38.96866 ], [ 106.087392, 39.006339 ], [ 106.078153, 39.026333 ], [ 106.096631, 39.084889 ], [ 106.145907, 39.153142 ], [ 106.170544, 39.163352 ], [ 106.192718, 39.142932 ], [ 106.251232, 39.131327 ], [ 106.285109, 39.146181 ], [ 106.29558, 39.167992 ], [ 106.280181, 39.262118 ], [ 106.402753, 39.291767 ], [ 106.511774, 39.272311 ], [ 106.525325, 39.308439 ], [ 106.556122, 39.322329 ], [ 106.602318, 39.37555 ], [ 106.643586, 39.357969 ], [ 106.683622, 39.357506 ], [ 106.751375, 39.381564 ], [ 106.781556, 39.371849 ], [ 106.806809, 39.318625 ], [ 106.806193, 39.277407 ], [ 106.790795, 39.241263 ], [ 106.795723, 39.214375 ], [ 106.825288, 39.19397 ], [ 106.859164, 39.107648 ], [ 106.878874, 39.091392 ], [ 106.933693, 39.076527 ], [ 106.96757, 39.054688 ], [ 106.971881, 39.026333 ], [ 106.954019, 38.941202 ], [ 106.837606, 38.847579 ], [ 106.756302, 38.748699 ], [ 106.709491, 38.718821 ], [ 106.66268, 38.601524 ], [ 106.647897, 38.470917 ], [ 106.599854, 38.389812 ], [ 106.482209, 38.319417 ], [ 106.555506, 38.263521 ], [ 106.627571, 38.232501 ], [ 106.654672, 38.22921 ], [ 106.737824, 38.197706 ], [ 106.779092, 38.171833 ], [ 106.858548, 38.156306 ], [ 106.942316, 38.132302 ], [ 107.010069, 38.120532 ], [ 107.051337, 38.122886 ], [ 107.071047, 38.138892 ], [ 107.119091, 38.134185 ], [ 107.138801, 38.161011 ], [ 107.19054, 38.153953 ], [ 107.240431, 38.111586 ], [ 107.33159, 38.086625 ], [ 107.3938, 38.014993 ], [ 107.440611, 37.995659 ], [ 107.411662, 37.948009 ], [ 107.448618, 37.933378 ], [ 107.49235, 37.944706 ], [ 107.560719, 37.893717 ], [ 107.65003, 37.86443 ], [ 107.659269, 37.844112 ], [ 107.646335, 37.805349 ], [ 107.620465, 37.776026 ], [ 107.599523, 37.791162 ], [ 107.57119, 37.776499 ], [ 107.499125, 37.765619 ], [ 107.484959, 37.706458 ], [ 107.425828, 37.684201 ], [ 107.387024, 37.691305 ], [ 107.389488, 37.671413 ], [ 107.422133, 37.665254 ], [ 107.361155, 37.613125 ], [ 107.311264, 37.609806 ], [ 107.330358, 37.584201 ], [ 107.369162, 37.58752 ], [ 107.345756, 37.518725 ], [ 107.284162, 37.481691 ], [ 107.282931, 37.437036 ], [ 107.257677, 37.337179 ], [ 107.273075, 37.29101 ], [ 107.309416, 37.239095 ], [ 107.270612, 37.229089 ], [ 107.317423, 37.200017 ], [ 107.336517, 37.165687 ], [ 107.334669, 37.138975 ], [ 107.306952, 37.100799 ], [ 107.281083, 37.127047 ], [ 107.268764, 37.099367 ] ] ], [ [ [ 106.048588, 35.488898 ], [ 106.054132, 35.45478 ], [ 106.034422, 35.469404 ], [ 106.002393, 35.438692 ], [ 105.894603, 35.413821 ], [ 105.897683, 35.451368 ], [ 106.048588, 35.488898 ] ] ], [ [ [ 106.073842, 35.45478 ], [ 106.073226, 35.450393 ], [ 106.071378, 35.449418 ], [ 106.06953, 35.458193 ], [ 106.073842, 35.45478 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"650000\", \"name\": \"新疆维吾尔自治区\", \"center\": [ 87.617733, 43.792818 ], \"centroid\": [ 85.294711, 41.371801 ], \"childrenNum\": 24, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 30, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 96.386348, 42.727592 ], [ 96.166458, 42.623314 ], [ 96.103632, 42.604375 ], [ 96.072219, 42.569566 ], [ 96.02356, 42.542675 ], [ 96.0174, 42.482239 ], [ 95.978596, 42.436762 ], [ 96.06606, 42.414674 ], [ 96.042038, 42.352787 ], [ 96.040806, 42.326688 ], [ 96.178161, 42.21775 ], [ 96.077147, 42.149457 ], [ 96.13874, 42.05399 ], [ 96.137509, 42.019765 ], [ 96.117183, 41.985966 ], [ 96.054973, 41.936124 ], [ 95.998306, 41.906289 ], [ 95.855408, 41.849699 ], [ 95.801206, 41.848361 ], [ 95.759322, 41.835878 ], [ 95.65646, 41.826067 ], [ 95.57146, 41.796181 ], [ 95.445193, 41.719841 ], [ 95.39407, 41.693481 ], [ 95.335556, 41.644305 ], [ 95.299831, 41.565994 ], [ 95.247476, 41.61344 ], [ 95.194505, 41.694821 ], [ 95.199433, 41.719395 ], [ 95.16494, 41.735474 ], [ 95.135991, 41.772976 ], [ 95.110738, 41.768513 ], [ 95.011572, 41.726541 ], [ 94.969072, 41.718948 ], [ 94.861898, 41.668451 ], [ 94.809543, 41.619256 ], [ 94.750413, 41.538227 ], [ 94.534219, 41.505966 ], [ 94.184365, 41.268444 ], [ 94.01067, 41.114875 ], [ 93.908424, 40.983539 ], [ 93.809874, 40.879548 ], [ 93.820961, 40.793519 ], [ 93.760599, 40.664721 ], [ 93.506216, 40.648376 ], [ 92.928465, 40.572504 ], [ 92.920458, 40.391792 ], [ 92.906907, 40.310609 ], [ 92.796654, 40.153897 ], [ 92.745531, 39.868331 ], [ 92.687632, 39.657174 ], [ 92.639589, 39.514196 ], [ 92.52564, 39.368611 ], [ 92.378431, 39.258411 ], [ 92.339011, 39.236628 ], [ 92.343938, 39.146181 ], [ 92.366112, 39.096037 ], [ 92.366728, 39.059335 ], [ 92.41046, 39.03842 ], [ 92.416003, 39.010524 ], [ 92.380279, 38.999828 ], [ 92.263866, 39.002153 ], [ 92.197961, 38.983548 ], [ 92.173323, 38.960749 ], [ 92.10865, 38.963541 ], [ 91.966368, 38.930961 ], [ 91.880752, 38.899297 ], [ 91.87952, 38.884391 ], [ 91.806223, 38.872744 ], [ 91.694738, 38.86622 ], [ 91.681188, 38.852706 ], [ 91.501333, 38.815411 ], [ 91.446515, 38.813546 ], [ 91.298689, 38.746365 ], [ 91.242639, 38.752433 ], [ 91.188436, 38.73096 ], [ 90.992567, 38.695003 ], [ 90.970394, 38.697806 ], [ 90.899561, 38.679588 ], [ 90.724634, 38.658094 ], [ 90.65996, 38.674449 ], [ 90.619308, 38.664636 ], [ 90.645794, 38.635191 ], [ 90.606374, 38.610878 ], [ 90.608837, 38.594508 ], [ 90.560794, 38.593573 ], [ 90.525685, 38.561291 ], [ 90.463476, 38.556611 ], [ 90.465323, 38.521971 ], [ 90.427135, 38.493873 ], [ 90.353222, 38.482162 ], [ 90.315034, 38.501835 ], [ 90.248513, 38.491531 ], [ 90.130868, 38.494341 ], [ 90.111774, 38.477945 ], [ 90.111774, 38.418889 ], [ 90.129636, 38.400131 ], [ 90.179528, 38.396848 ], [ 90.137644, 38.340543 ], [ 90.280542, 38.238142 ], [ 90.352607, 38.233441 ], [ 90.361846, 38.300163 ], [ 90.401882, 38.311434 ], [ 90.531229, 38.319886 ], [ 90.516446, 38.207111 ], [ 90.519526, 37.730601 ], [ 90.579272, 37.720661 ], [ 90.586663, 37.703144 ], [ 90.643946, 37.696988 ], [ 90.777605, 37.648672 ], [ 90.820104, 37.613599 ], [ 90.854597, 37.604117 ], [ 90.882314, 37.575664 ], [ 90.865684, 37.53059 ], [ 90.911879, 37.519674 ], [ 90.958075, 37.477891 ], [ 91.019669, 37.493088 ], [ 91.073256, 37.475992 ], [ 91.099741, 37.447965 ], [ 91.113292, 37.387124 ], [ 91.136081, 37.355734 ], [ 91.134849, 37.324331 ], [ 91.194596, 37.273868 ], [ 91.1909, 37.205737 ], [ 91.280211, 37.163779 ], [ 91.286371, 37.105095 ], [ 91.303617, 37.083136 ], [ 91.291298, 37.042544 ], [ 91.303617, 37.012444 ], [ 91.216153, 37.010054 ], [ 91.181045, 37.025345 ], [ 91.133618, 37.007665 ], [ 91.126842, 36.978507 ], [ 91.051698, 36.96751 ], [ 91.036915, 36.929727 ], [ 90.983944, 36.913459 ], [ 90.924198, 36.921115 ], [ 90.853981, 36.915373 ], [ 90.758511, 36.825844 ], [ 90.732025, 36.825844 ], [ 90.727098, 36.755872 ], [ 90.754815, 36.721341 ], [ 90.720938, 36.708868 ], [ 90.706156, 36.658955 ], [ 90.730793, 36.655594 ], [ 90.72217, 36.620058 ], [ 90.741264, 36.585947 ], [ 90.810865, 36.585466 ], [ 90.831191, 36.55807 ], [ 90.905104, 36.560474 ], [ 91.011662, 36.539801 ], [ 91.035683, 36.529703 ], [ 91.039995, 36.474861 ], [ 91.028292, 36.443093 ], [ 91.051698, 36.433946 ], [ 91.026444, 36.323607 ], [ 91.07264, 36.299012 ], [ 91.051698, 36.238215 ], [ 91.096045, 36.219871 ], [ 91.09235, 36.163844 ], [ 91.124994, 36.115514 ], [ 91.081263, 36.088436 ], [ 90.979017, 36.106811 ], [ 90.922966, 36.028927 ], [ 90.850285, 36.016827 ], [ 90.815793, 36.035703 ], [ 90.776373, 36.086501 ], [ 90.659344, 36.13485 ], [ 90.613149, 36.126632 ], [ 90.534925, 36.147899 ], [ 90.478258, 36.13195 ], [ 90.424055, 36.133883 ], [ 90.325505, 36.159496 ], [ 90.23681, 36.160462 ], [ 90.198006, 36.187516 ], [ 90.130252, 36.2078 ], [ 90.145651, 36.239181 ], [ 90.058188, 36.255591 ], [ 90.043405, 36.276822 ], [ 90.003369, 36.278752 ], [ 90.028006, 36.258486 ], [ 90.019999, 36.213594 ], [ 89.997825, 36.168193 ], [ 89.944855, 36.140649 ], [ 89.941159, 36.067637 ], [ 89.914058, 36.079246 ], [ 89.819819, 36.080697 ], [ 89.766848, 36.073925 ], [ 89.711414, 36.093272 ], [ 89.614711, 36.109712 ], [ 89.594385, 36.126632 ], [ 89.490291, 36.151281 ], [ 89.375727, 36.228078 ], [ 89.335075, 36.23725 ], [ 89.292575, 36.231457 ], [ 89.232213, 36.295636 ], [ 89.198952, 36.260417 ], [ 89.126887, 36.254626 ], [ 89.10225, 36.281164 ], [ 89.054822, 36.291777 ], [ 89.013554, 36.315409 ], [ 88.964279, 36.318785 ], [ 88.926091, 36.36458 ], [ 88.870657, 36.348193 ], [ 88.838628, 36.353496 ], [ 88.802903, 36.33807 ], [ 88.783809, 36.291777 ], [ 88.766563, 36.292259 ], [ 88.690186, 36.367954 ], [ 88.623665, 36.389636 ], [ 88.618121, 36.428168 ], [ 88.573158, 36.461386 ], [ 88.498629, 36.446463 ], [ 88.470912, 36.48208 ], [ 88.41055, 36.473418 ], [ 88.356963, 36.477268 ], [ 88.366202, 36.458016 ], [ 88.282434, 36.470049 ], [ 88.241782, 36.468605 ], [ 88.222688, 36.447426 ], [ 88.182652, 36.452721 ], [ 88.134609, 36.427205 ], [ 88.092109, 36.43539 ], [ 88.006494, 36.430575 ], [ 87.983088, 36.437797 ], [ 87.95845, 36.408423 ], [ 87.919646, 36.39349 ], [ 87.838342, 36.383855 ], [ 87.826023, 36.391563 ], [ 87.767509, 36.3747 ], [ 87.731785, 36.384818 ], [ 87.6203, 36.360243 ], [ 87.570409, 36.342409 ], [ 87.470626, 36.354459 ], [ 87.460155, 36.409868 ], [ 87.426895, 36.42576 ], [ 87.386859, 36.412757 ], [ 87.363453, 36.420463 ], [ 87.348055, 36.393008 ], [ 87.292004, 36.358797 ], [ 87.193454, 36.349158 ], [ 87.161425, 36.325535 ], [ 87.149106, 36.297565 ], [ 87.08628, 36.310587 ], [ 87.051788, 36.2966 ], [ 86.996353, 36.308658 ], [ 86.943998, 36.284058 ], [ 86.931064, 36.265242 ], [ 86.887332, 36.262829 ], [ 86.86331, 36.299977 ], [ 86.836209, 36.291294 ], [ 86.746282, 36.291777 ], [ 86.69947, 36.24449 ], [ 86.599072, 36.222285 ], [ 86.531935, 36.227113 ], [ 86.515305, 36.205385 ], [ 86.454943, 36.221319 ], [ 86.392733, 36.206834 ], [ 86.35824, 36.168676 ], [ 86.2794, 36.170608 ], [ 86.248603, 36.141616 ], [ 86.187625, 36.130983 ], [ 86.182081, 36.064734 ], [ 86.199944, 36.047801 ], [ 86.173458, 36.008113 ], [ 86.150668, 36.00424 ], [ 86.129111, 35.941761 ], [ 86.093386, 35.906868 ], [ 86.090306, 35.876809 ], [ 86.05335, 35.842857 ], [ 86.035488, 35.846738 ], [ 85.949256, 35.778794 ], [ 85.903677, 35.78462 ], [ 85.835308, 35.771996 ], [ 85.811286, 35.778794 ], [ 85.691178, 35.751114 ], [ 85.65299, 35.731199 ], [ 85.612953, 35.651486 ], [ 85.566142, 35.6403 ], [ 85.518715, 35.680658 ], [ 85.373969, 35.700101 ], [ 85.341324, 35.753543 ], [ 85.271107, 35.788989 ], [ 85.146071, 35.742371 ], [ 85.053065, 35.752086 ], [ 84.99455, 35.737028 ], [ 84.973608, 35.709334 ], [ 84.920022, 35.696213 ], [ 84.798066, 35.647595 ], [ 84.729081, 35.613546 ], [ 84.704443, 35.616951 ], [ 84.628067, 35.595055 ], [ 84.570168, 35.588242 ], [ 84.513502, 35.564391 ], [ 84.448828, 35.550272 ], [ 84.475929, 35.516181 ], [ 84.45314, 35.473303 ], [ 84.424191, 35.466479 ], [ 84.333032, 35.413821 ], [ 84.274517, 35.404065 ], [ 84.200605, 35.381135 ], [ 84.160569, 35.359663 ], [ 84.140859, 35.379184 ], [ 84.095895, 35.362592 ], [ 84.077417, 35.400163 ], [ 84.005968, 35.422599 ], [ 83.906186, 35.40309 ], [ 83.885244, 35.367472 ], [ 83.79778, 35.354783 ], [ 83.785462, 35.36308 ], [ 83.677672, 35.361128 ], [ 83.622238, 35.335256 ], [ 83.599448, 35.351366 ], [ 83.54155, 35.341603 ], [ 83.540318, 35.364056 ], [ 83.502745, 35.360639 ], [ 83.449159, 35.382111 ], [ 83.405427, 35.380648 ], [ 83.333978, 35.397236 ], [ 83.280391, 35.401138 ], [ 83.251442, 35.417722 ], [ 83.178145, 35.38943 ], [ 83.127022, 35.398699 ], [ 83.088834, 35.425526 ], [ 83.067892, 35.46258 ], [ 82.998907, 35.484512 ], [ 82.971806, 35.548324 ], [ 82.981661, 35.599922 ], [ 82.956407, 35.636409 ], [ 82.967494, 35.667532 ], [ 82.894813, 35.673852 ], [ 82.873871, 35.688922 ], [ 82.795031, 35.688436 ], [ 82.780249, 35.666073 ], [ 82.731589, 35.637868 ], [ 82.652133, 35.67288 ], [ 82.628727, 35.692324 ], [ 82.546192, 35.708362 ], [ 82.501844, 35.701073 ], [ 82.468583, 35.717595 ], [ 82.424852, 35.712736 ], [ 82.392823, 35.656349 ], [ 82.336156, 35.651486 ], [ 82.350323, 35.611113 ], [ 82.328149, 35.559523 ], [ 82.2992, 35.544916 ], [ 82.263475, 35.547837 ], [ 82.234526, 35.520565 ], [ 82.189563, 35.513258 ], [ 82.164925, 35.495719 ], [ 82.086701, 35.467454 ], [ 82.071302, 35.450393 ], [ 82.034346, 35.451855 ], [ 82.029419, 35.426013 ], [ 82.05344, 35.35039 ], [ 82.030034, 35.321585 ], [ 81.99123, 35.30547 ], [ 81.955506, 35.307423 ], [ 81.927789, 35.271275 ], [ 81.853876, 35.25857 ], [ 81.804601, 35.270786 ], [ 81.736847, 35.26248 ], [ 81.68634, 35.235599 ], [ 81.513261, 35.23511 ], [ 81.504638, 35.279092 ], [ 81.447972, 35.318167 ], [ 81.441196, 35.333303 ], [ 81.385762, 35.335256 ], [ 81.363588, 35.354783 ], [ 81.314313, 35.337209 ], [ 81.285364, 35.345508 ], [ 81.26627, 35.322562 ], [ 81.219458, 35.319144 ], [ 81.191741, 35.36552 ], [ 81.142466, 35.365032 ], [ 81.103662, 35.386015 ], [ 81.09935, 35.40748 ], [ 81.054387, 35.402602 ], [ 81.031597, 35.380648 ], [ 81.030981, 35.337209 ], [ 81.002648, 35.334768 ], [ 81.026053, 35.31133 ], [ 80.963844, 35.310842 ], [ 80.924423, 35.330862 ], [ 80.894242, 35.324027 ], [ 80.844351, 35.345508 ], [ 80.759968, 35.334768 ], [ 80.689135, 35.339162 ], [ 80.690982, 35.364544 ], [ 80.65649, 35.393821 ], [ 80.599823, 35.409431 ], [ 80.56841, 35.391381 ], [ 80.532686, 35.404553 ], [ 80.514824, 35.391869 ], [ 80.444607, 35.417235 ], [ 80.432904, 35.449418 ], [ 80.375006, 35.387966 ], [ 80.321419, 35.38699 ], [ 80.286926, 35.35283 ], [ 80.267832, 35.295701 ], [ 80.362687, 35.20871 ], [ 80.257977, 35.203331 ], [ 80.223484, 35.177409 ], [ 80.23026, 35.147565 ], [ 80.118159, 35.066293 ], [ 80.078123, 35.076578 ], [ 80.031311, 35.034447 ], [ 80.04363, 35.022196 ], [ 80.02392, 34.971209 ], [ 80.041782, 34.943252 ], [ 80.034391, 34.902033 ], [ 80.003594, 34.895162 ], [ 79.996819, 34.856375 ], [ 79.961094, 34.862759 ], [ 79.926602, 34.849499 ], [ 79.947544, 34.821008 ], [ 79.898268, 34.732035 ], [ 79.906892, 34.683821 ], [ 79.866856, 34.671517 ], [ 79.88595, 34.642965 ], [ 79.84345, 34.55725 ], [ 79.861312, 34.528166 ], [ 79.801566, 34.478847 ], [ 79.735661, 34.471447 ], [ 79.699936, 34.477861 ], [ 79.675914, 34.451216 ], [ 79.58106, 34.456151 ], [ 79.545335, 34.476381 ], [ 79.504683, 34.45467 ], [ 79.435082, 34.447761 ], [ 79.363017, 34.428018 ], [ 79.326677, 34.44332 ], [ 79.274322, 34.435916 ], [ 79.241677, 34.415183 ], [ 79.179467, 34.422588 ], [ 79.161605, 34.441345 ], [ 79.072294, 34.412714 ], [ 79.039033, 34.421601 ], [ 79.0107, 34.399877 ], [ 79.048888, 34.348506 ], [ 79.039649, 34.33467 ], [ 78.973128, 34.362833 ], [ 78.958961, 34.386049 ], [ 78.899831, 34.354929 ], [ 78.878273, 34.391481 ], [ 78.809288, 34.432955 ], [ 78.742766, 34.45467 ], [ 78.758781, 34.481807 ], [ 78.715049, 34.502031 ], [ 78.708274, 34.522249 ], [ 78.634977, 34.538026 ], [ 78.58139, 34.505483 ], [ 78.562912, 34.51288 ], [ 78.559832, 34.55725 ], [ 78.542586, 34.574499 ], [ 78.492695, 34.578441 ], [ 78.436029, 34.543942 ], [ 78.427405, 34.594207 ], [ 78.397224, 34.605538 ], [ 78.346101, 34.60406 ], [ 78.280812, 34.623269 ], [ 78.265413, 34.651335 ], [ 78.267261, 34.705472 ], [ 78.213059, 34.717771 ], [ 78.21429, 34.760556 ], [ 78.230921, 34.776288 ], [ 78.237696, 34.882398 ], [ 78.206283, 34.891726 ], [ 78.182262, 34.936874 ], [ 78.201972, 34.974642 ], [ 78.160704, 34.990823 ], [ 78.123131, 35.036897 ], [ 78.150849, 35.069721 ], [ 78.124979, 35.108407 ], [ 78.078784, 35.100084 ], [ 78.062769, 35.114772 ], [ 78.060306, 35.180344 ], [ 78.01719, 35.228267 ], [ 78.020885, 35.315237 ], [ 78.013494, 35.366008 ], [ 78.046755, 35.384063 ], [ 78.107117, 35.437229 ], [ 78.113892, 35.466967 ], [ 78.140378, 35.494745 ], [ 78.048603, 35.491334 ], [ 78.029509, 35.469404 ], [ 78.009799, 35.491821 ], [ 77.951284, 35.478664 ], [ 77.917408, 35.490847 ], [ 77.914944, 35.465017 ], [ 77.870596, 35.495232 ], [ 77.85643, 35.487436 ], [ 77.816394, 35.518616 ], [ 77.797299, 35.491334 ], [ 77.757879, 35.497181 ], [ 77.735706, 35.461605 ], [ 77.690742, 35.448443 ], [ 77.657481, 35.477689 ], [ 77.639619, 35.45478 ], [ 77.590344, 35.460143 ], [ 77.578025, 35.47574 ], [ 77.518895, 35.482075 ], [ 77.451758, 35.46063 ], [ 77.396939, 35.467942 ], [ 77.355055, 35.494257 ], [ 77.331649, 35.530793 ], [ 77.307628, 35.540533 ], [ 77.195527, 35.519103 ], [ 77.093281, 35.569746 ], [ 77.072339, 35.591162 ], [ 76.99781, 35.611113 ], [ 76.967013, 35.591649 ], [ 76.906651, 35.615005 ], [ 76.848753, 35.668018 ], [ 76.769297, 35.653917 ], [ 76.69292, 35.747714 ], [ 76.593754, 35.771996 ], [ 76.566037, 35.819082 ], [ 76.587595, 35.840431 ], [ 76.579587, 35.866625 ], [ 76.59745, 35.895718 ], [ 76.55803, 35.923347 ], [ 76.51553, 35.881173 ], [ 76.471798, 35.886021 ], [ 76.431762, 35.851589 ], [ 76.369552, 35.86323 ], [ 76.365857, 35.82442 ], [ 76.298719, 35.841401 ], [ 76.228502, 35.837035 ], [ 76.221727, 35.823449 ], [ 76.160133, 35.82442 ], [ 76.146582, 35.839946 ], [ 76.16506, 35.908807 ], [ 76.117017, 35.975186 ], [ 76.097307, 36.022635 ], [ 76.044336, 36.026991 ], [ 76.028322, 36.016827 ], [ 75.982742, 36.031347 ], [ 75.949482, 36.070056 ], [ 75.936547, 36.13485 ], [ 75.96796, 36.159013 ], [ 76.016619, 36.165294 ], [ 76.011691, 36.229044 ], [ 76.060967, 36.225182 ], [ 76.055423, 36.252695 ], [ 75.998757, 36.312034 ], [ 75.991365, 36.35205 ], [ 76.035097, 36.409386 ], [ 75.991981, 36.505654 ], [ 75.924228, 36.566242 ], [ 75.947018, 36.590752 ], [ 75.871257, 36.666636 ], [ 75.8072, 36.707908 ], [ 75.724048, 36.750597 ], [ 75.634121, 36.771693 ], [ 75.588541, 36.762584 ], [ 75.537418, 36.773131 ], [ 75.536802, 36.729975 ], [ 75.504773, 36.743404 ], [ 75.458578, 36.720861 ], [ 75.425933, 36.778883 ], [ 75.434556, 36.83303 ], [ 75.430245, 36.873255 ], [ 75.396368, 36.904367 ], [ 75.413614, 36.954599 ], [ 75.345861, 36.960816 ], [ 75.288579, 36.974682 ], [ 75.244847, 36.963207 ], [ 75.16847, 36.991892 ], [ 75.172166, 37.013877 ], [ 75.063145, 37.006231 ], [ 75.032348, 37.016745 ], [ 75.005862, 36.99476 ], [ 74.927638, 36.978029 ], [ 74.938725, 36.94312 ], [ 74.893762, 36.939772 ], [ 74.86974, 36.990458 ], [ 74.84387, 37.0134 ], [ 74.84695, 37.056873 ], [ 74.806914, 37.054485 ], [ 74.792747, 37.027257 ], [ 74.739161, 37.028212 ], [ 74.70898, 37.084569 ], [ 74.632603, 37.066425 ], [ 74.617205, 37.043499 ], [ 74.56793, 37.032512 ], [ 74.530357, 37.082182 ], [ 74.498944, 37.072155 ], [ 74.496481, 37.116072 ], [ 74.465068, 37.147085 ], [ 74.487858, 37.161871 ], [ 74.477387, 37.19954 ], [ 74.511263, 37.240048 ], [ 74.54514, 37.2491 ], [ 74.578401, 37.231472 ], [ 74.598727, 37.258151 ], [ 74.642458, 37.261485 ], [ 74.665864, 37.23576 ], [ 74.727458, 37.282916 ], [ 74.753943, 37.281011 ], [ 74.800139, 37.248147 ], [ 74.816153, 37.216699 ], [ 74.911008, 37.233378 ], [ 74.927022, 37.277678 ], [ 75.018181, 37.293867 ], [ 75.078543, 37.318144 ], [ 75.125971, 37.322427 ], [ 75.140137, 37.355258 ], [ 75.125971, 37.388075 ], [ 75.153072, 37.414223 ], [ 75.129666, 37.459367 ], [ 75.090862, 37.486915 ], [ 75.078543, 37.511129 ], [ 75.035428, 37.500685 ], [ 75.002167, 37.511604 ], [ 75.000935, 37.53059 ], [ 74.940573, 37.559061 ], [ 74.891914, 37.668097 ], [ 74.920863, 37.684675 ], [ 74.923327, 37.717347 ], [ 74.949196, 37.725395 ], [ 75.006478, 37.770823 ], [ 74.989848, 37.797783 ], [ 74.917167, 37.845057 ], [ 74.936877, 37.876241 ], [ 74.919015, 37.908357 ], [ 74.911008, 37.966884 ], [ 74.92579, 38.01735 ], [ 74.879595, 38.021122 ], [ 74.821697, 38.10311 ], [ 74.80445, 38.167128 ], [ 74.816769, 38.215576 ], [ 74.793363, 38.271039 ], [ 74.806914, 38.285602 ], [ 74.789668, 38.324581 ], [ 74.834015, 38.361193 ], [ 74.868508, 38.403883 ], [ 74.862965, 38.484035 ], [ 74.821697, 38.491062 ], [ 74.78474, 38.538357 ], [ 74.717603, 38.542102 ], [ 74.639995, 38.599653 ], [ 74.613509, 38.593105 ], [ 74.546988, 38.607604 ], [ 74.506336, 38.637528 ], [ 74.455829, 38.632853 ], [ 74.421952, 38.647812 ], [ 74.353583, 38.655757 ], [ 74.229779, 38.656224 ], [ 74.147859, 38.676785 ], [ 74.11275, 38.611345 ], [ 74.088113, 38.610878 ], [ 74.068403, 38.585621 ], [ 74.090577, 38.542102 ], [ 74.034526, 38.541634 ], [ 74.011736, 38.52478 ], [ 73.926121, 38.536016 ], [ 73.89902, 38.579071 ], [ 73.852208, 38.584217 ], [ 73.799237, 38.610878 ], [ 73.809092, 38.634256 ], [ 73.757353, 38.719755 ], [ 73.769056, 38.775765 ], [ 73.729636, 38.837324 ], [ 73.699455, 38.857832 ], [ 73.70931, 38.893241 ], [ 73.742571, 38.933754 ], [ 73.767824, 38.941202 ], [ 73.826339, 38.916993 ], [ 73.846665, 38.962145 ], [ 73.839889, 39.008199 ], [ 73.820179, 39.041674 ], [ 73.780143, 39.026798 ], [ 73.743187, 39.029588 ], [ 73.720397, 39.071881 ], [ 73.719781, 39.108112 ], [ 73.688368, 39.154999 ], [ 73.657571, 39.166136 ], [ 73.639709, 39.220402 ], [ 73.623079, 39.235237 ], [ 73.580579, 39.237555 ], [ 73.564564, 39.266288 ], [ 73.542391, 39.269531 ], [ 73.554709, 39.295935 ], [ 73.554094, 39.350102 ], [ 73.502355, 39.383877 ], [ 73.592898, 39.412087 ], [ 73.61076, 39.465702 ], [ 73.6471, 39.474479 ], [ 73.745651, 39.462005 ], [ 73.836194, 39.472169 ], [ 73.868223, 39.482794 ], [ 73.893476, 39.528046 ], [ 73.883621, 39.540969 ], [ 73.914418, 39.564041 ], [ 73.916266, 39.586644 ], [ 73.953838, 39.600018 ], [ 73.924273, 39.722108 ], [ 73.905795, 39.741899 ], [ 73.841737, 39.756163 ], [ 73.845433, 39.831115 ], [ 73.907027, 39.873843 ], [ 73.910722, 39.934443 ], [ 73.980324, 40.004617 ], [ 73.943367, 40.016076 ], [ 74.008041, 40.050901 ], [ 74.023439, 40.085251 ], [ 74.113366, 40.086624 ], [ 74.126301, 40.104479 ], [ 74.26304, 40.125074 ], [ 74.280902, 40.09807 ], [ 74.316626, 40.106767 ], [ 74.356662, 40.089371 ], [ 74.433039, 40.13148 ], [ 74.485394, 40.182251 ], [ 74.534669, 40.207851 ], [ 74.577169, 40.260391 ], [ 74.618437, 40.27957 ], [ 74.673255, 40.278656 ], [ 74.697893, 40.310153 ], [ 74.700357, 40.346195 ], [ 74.824776, 40.344371 ], [ 74.862965, 40.32658 ], [ 74.908544, 40.338897 ], [ 74.795211, 40.443278 ], [ 74.814921, 40.461039 ], [ 74.819233, 40.505647 ], [ 74.844486, 40.521117 ], [ 74.891914, 40.507467 ], [ 74.963363, 40.464681 ], [ 74.995392, 40.455119 ], [ 75.021877, 40.466958 ], [ 75.051442, 40.449654 ], [ 75.102565, 40.44009 ], [ 75.13521, 40.463315 ], [ 75.206659, 40.447833 ], [ 75.242383, 40.448743 ], [ 75.268869, 40.483802 ], [ 75.292274, 40.483802 ], [ 75.355716, 40.537947 ], [ 75.432093, 40.563412 ], [ 75.467817, 40.599773 ], [ 75.550353, 40.64883 ], [ 75.599628, 40.659727 ], [ 75.636584, 40.624306 ], [ 75.627345, 40.605226 ], [ 75.631041, 40.548862 ], [ 75.646439, 40.516567 ], [ 75.733287, 40.474242 ], [ 75.717272, 40.443278 ], [ 75.686475, 40.418223 ], [ 75.669845, 40.363982 ], [ 75.688323, 40.343915 ], [ 75.709265, 40.280939 ], [ 75.739446, 40.299199 ], [ 75.785642, 40.301025 ], [ 75.831221, 40.327492 ], [ 75.84046, 40.312434 ], [ 75.890351, 40.30924 ], [ 75.921764, 40.291439 ], [ 75.932235, 40.339353 ], [ 75.986438, 40.381763 ], [ 76.026474, 40.355317 ], [ 76.048648, 40.357141 ], [ 76.048648, 40.388601 ], [ 76.081293, 40.39635 ], [ 76.144118, 40.393615 ], [ 76.176147, 40.381307 ], [ 76.22419, 40.401819 ], [ 76.279625, 40.439179 ], [ 76.283321, 40.415034 ], [ 76.327668, 40.391336 ], [ 76.333212, 40.343459 ], [ 76.381871, 40.39088 ], [ 76.390494, 40.37766 ], [ 76.442233, 40.391336 ], [ 76.470566, 40.422779 ], [ 76.508754, 40.429613 ], [ 76.539551, 40.464226 ], [ 76.543247, 40.513837 ], [ 76.556798, 40.542495 ], [ 76.601145, 40.578868 ], [ 76.611, 40.601591 ], [ 76.657196, 40.620218 ], [ 76.654732, 40.652917 ], [ 76.676906, 40.696036 ], [ 76.646725, 40.73686 ], [ 76.646725, 40.759983 ], [ 76.693536, 40.779472 ], [ 76.731724, 40.818887 ], [ 76.741579, 40.912119 ], [ 76.761905, 40.954167 ], [ 76.817956, 40.975406 ], [ 76.85368, 40.97631 ], [ 76.885709, 41.027347 ], [ 76.940528, 41.028701 ], [ 77.002122, 41.073381 ], [ 77.023064, 41.059394 ], [ 77.091433, 41.062553 ], [ 77.108063, 41.038181 ], [ 77.169041, 41.009285 ], [ 77.236795, 41.027798 ], [ 77.296541, 41.004769 ], [ 77.363062, 41.04089 ], [ 77.415417, 41.038633 ], [ 77.473931, 41.022832 ], [ 77.476395, 40.999349 ], [ 77.540453, 41.006575 ], [ 77.591576, 40.992122 ], [ 77.597119, 41.005221 ], [ 77.654402, 41.016059 ], [ 77.684583, 41.00793 ], [ 77.737553, 41.032313 ], [ 77.780669, 41.022832 ], [ 77.796068, 41.049014 ], [ 77.829328, 41.059394 ], [ 77.807155, 41.091876 ], [ 77.814546, 41.13426 ], [ 77.836104, 41.153189 ], [ 77.905089, 41.185174 ], [ 77.972842, 41.173013 ], [ 78.094798, 41.224347 ], [ 78.129291, 41.228398 ], [ 78.136682, 41.279239 ], [ 78.165015, 41.340825 ], [ 78.149617, 41.368228 ], [ 78.163783, 41.383497 ], [ 78.235232, 41.399211 ], [ 78.324544, 41.384395 ], [ 78.338094, 41.397415 ], [ 78.385522, 41.394721 ], [ 78.391681, 41.408189 ], [ 78.454507, 41.412228 ], [ 78.527188, 41.440947 ], [ 78.580774, 41.481759 ], [ 78.650375, 41.467411 ], [ 78.675629, 41.50238 ], [ 78.707042, 41.522098 ], [ 78.696571, 41.54181 ], [ 78.739071, 41.555695 ], [ 78.825302, 41.560173 ], [ 78.86657, 41.593749 ], [ 78.891824, 41.597777 ], [ 78.957729, 41.65146 ], [ 78.99407, 41.664427 ], [ 79.021787, 41.657273 ], [ 79.043345, 41.681414 ], [ 79.10925, 41.697503 ], [ 79.138199, 41.722968 ], [ 79.21704, 41.725648 ], [ 79.271858, 41.767174 ], [ 79.276786, 41.78101 ], [ 79.326061, 41.809565 ], [ 79.356242, 41.795735 ], [ 79.415372, 41.836769 ], [ 79.457256, 41.847915 ], [ 79.500988, 41.835432 ], [ 79.550879, 41.834094 ], [ 79.616784, 41.856385 ], [ 79.640806, 41.884907 ], [ 79.724574, 41.896935 ], [ 79.776313, 41.89248 ], [ 79.822508, 41.963275 ], [ 79.854537, 41.984186 ], [ 79.852689, 42.015319 ], [ 79.923522, 42.042436 ], [ 80.089826, 42.047325 ], [ 80.14218, 42.03488 ], [ 80.193303, 42.081535 ], [ 80.16805, 42.096635 ], [ 80.139717, 42.151232 ], [ 80.163738, 42.152563 ], [ 80.168666, 42.200462 ], [ 80.233339, 42.210215 ], [ 80.28631, 42.233261 ], [ 80.29247, 42.259842 ], [ 80.272144, 42.281984 ], [ 80.283847, 42.320493 ], [ 80.229028, 42.358536 ], [ 80.239499, 42.389927 ], [ 80.206238, 42.431462 ], [ 80.225948, 42.485769 ], [ 80.265368, 42.502097 ], [ 80.221637, 42.533415 ], [ 80.180985, 42.590718 ], [ 80.163738, 42.629919 ], [ 80.179753, 42.670415 ], [ 80.228412, 42.692852 ], [ 80.225948, 42.713083 ], [ 80.259209, 42.790865 ], [ 80.262289, 42.828623 ], [ 80.280151, 42.838278 ], [ 80.338049, 42.831695 ], [ 80.407034, 42.834767 ], [ 80.450766, 42.861971 ], [ 80.503737, 42.882146 ], [ 80.602903, 42.894424 ], [ 80.5912, 42.923354 ], [ 80.487106, 42.948766 ], [ 80.397795, 42.996933 ], [ 80.378701, 43.031502 ], [ 80.416889, 43.05687 ], [ 80.482795, 43.06955 ], [ 80.556092, 43.104515 ], [ 80.593048, 43.133347 ], [ 80.650946, 43.147321 ], [ 80.706997, 43.143828 ], [ 80.73225, 43.131163 ], [ 80.752576, 43.148194 ], [ 80.79446, 43.137277 ], [ 80.804315, 43.178314 ], [ 80.789533, 43.201876 ], [ 80.788917, 43.242433 ], [ 80.769207, 43.265535 ], [ 80.777214, 43.308227 ], [ 80.69283, 43.32042 ], [ 80.686055, 43.333916 ], [ 80.735946, 43.389609 ], [ 80.746417, 43.439167 ], [ 80.761199, 43.446554 ], [ 80.75504, 43.494329 ], [ 80.522215, 43.816473 ], [ 80.511128, 43.906657 ], [ 80.475404, 43.938124 ], [ 80.485259, 43.95579 ], [ 80.457541, 43.981203 ], [ 80.458773, 44.047054 ], [ 80.449534, 44.078017 ], [ 80.3941, 44.127009 ], [ 80.407034, 44.149772 ], [ 80.400875, 44.198704 ], [ 80.413194, 44.264741 ], [ 80.399027, 44.30587 ], [ 80.383013, 44.401297 ], [ 80.350368, 44.484615 ], [ 80.411962, 44.605321 ], [ 80.400259, 44.628751 ], [ 80.313412, 44.704938 ], [ 80.238883, 44.7228 ], [ 80.200695, 44.756808 ], [ 80.178521, 44.796741 ], [ 80.18776, 44.825612 ], [ 80.169898, 44.84471 ], [ 80.115695, 44.815424 ], [ 80.087978, 44.817122 ], [ 79.999283, 44.793768 ], [ 79.991891, 44.830281 ], [ 79.953703, 44.849377 ], [ 79.969102, 44.877797 ], [ 79.887798, 44.90917 ], [ 79.944464, 44.937985 ], [ 79.951855, 44.957892 ], [ 79.98142, 44.964244 ], [ 80.056565, 45.011227 ], [ 80.060876, 45.026033 ], [ 80.111999, 45.052675 ], [ 80.136021, 45.041259 ], [ 80.144644, 45.059017 ], [ 80.195767, 45.030686 ], [ 80.24381, 45.031532 ], [ 80.291854, 45.06578 ], [ 80.328194, 45.070007 ], [ 80.358375, 45.040836 ], [ 80.404571, 45.049293 ], [ 80.443991, 45.077614 ], [ 80.445839, 45.097895 ], [ 80.493882, 45.127037 ], [ 80.519135, 45.108878 ], [ 80.599207, 45.105921 ], [ 80.686055, 45.129148 ], [ 80.731634, 45.156164 ], [ 80.816634, 45.152788 ], [ 80.862214, 45.127037 ], [ 80.897938, 45.127459 ], [ 80.93551, 45.160384 ], [ 80.966307, 45.168402 ], [ 81.024821, 45.162916 ], [ 81.080872, 45.182745 ], [ 81.111669, 45.218168 ], [ 81.170183, 45.211001 ], [ 81.175111, 45.227863 ], [ 81.236705, 45.247248 ], [ 81.284748, 45.23882 ], [ 81.327864, 45.260729 ], [ 81.382066, 45.257781 ], [ 81.398697, 45.275471 ], [ 81.437501, 45.28263 ], [ 81.462754, 45.264099 ], [ 81.52866, 45.285999 ], [ 81.536667, 45.304101 ], [ 81.575471, 45.30789 ], [ 81.582863, 45.336503 ], [ 81.645072, 45.359216 ], [ 81.677101, 45.35459 ], [ 81.78797, 45.3836 ], [ 81.832318, 45.319673 ], [ 81.879745, 45.284314 ], [ 81.921013, 45.233342 ], [ 81.993078, 45.237978 ], [ 82.052824, 45.255674 ], [ 82.09594, 45.249776 ], [ 82.091012, 45.222383 ], [ 82.109491, 45.211422 ], [ 82.206809, 45.236713 ], [ 82.294272, 45.247669 ], [ 82.344779, 45.219011 ], [ 82.487061, 45.181058 ], [ 82.562822, 45.204676 ], [ 82.58746, 45.224069 ], [ 82.60101, 45.346178 ], [ 82.546808, 45.426038 ], [ 82.448257, 45.461309 ], [ 82.281954, 45.53891 ], [ 82.266555, 45.620172 ], [ 82.288729, 45.655321 ], [ 82.289961, 45.71636 ], [ 82.340468, 45.772742 ], [ 82.349707, 45.822811 ], [ 82.336156, 45.882418 ], [ 82.342932, 45.935303 ], [ 82.401446, 45.972333 ], [ 82.461808, 45.97982 ], [ 82.518474, 46.153798 ], [ 82.609017, 46.294985 ], [ 82.726662, 46.494756 ], [ 82.774089, 46.600124 ], [ 82.788872, 46.677784 ], [ 82.829524, 46.772551 ], [ 82.878183, 46.797138 ], [ 82.876335, 46.823762 ], [ 82.923762, 46.932169 ], [ 82.937929, 47.014248 ], [ 82.993364, 47.065229 ], [ 83.031552, 47.168265 ], [ 83.02724, 47.21544 ], [ 83.108544, 47.221944 ], [ 83.15474, 47.236168 ], [ 83.17445, 47.218286 ], [ 83.207094, 47.213814 ], [ 83.221877, 47.186977 ], [ 83.257602, 47.173147 ], [ 83.306261, 47.179656 ], [ 83.324739, 47.167858 ], [ 83.370318, 47.178436 ], [ 83.418978, 47.119012 ], [ 83.463325, 47.132042 ], [ 83.53847, 47.083977 ], [ 83.566803, 47.080717 ], [ 83.576042, 47.059114 ], [ 83.700462, 47.032199 ], [ 83.69923, 47.015472 ], [ 83.766367, 47.026896 ], [ 83.88586, 46.982003 ], [ 83.932671, 46.970161 ], [ 83.951765, 46.98731 ], [ 84.002888, 46.990576 ], [ 84.038613, 46.973428 ], [ 84.086656, 46.965261 ], [ 84.150098, 46.977512 ], [ 84.195061, 47.003638 ], [ 84.2893, 46.994658 ], [ 84.336727, 47.00527 ], [ 84.37122, 46.993434 ], [ 84.425422, 47.008943 ], [ 84.506726, 46.97302 ], [ 84.563393, 46.991801 ], [ 84.668718, 46.995067 ], [ 84.699515, 47.008535 ], [ 84.748175, 47.009759 ], [ 84.781435, 46.979962 ], [ 84.849189, 46.957092 ], [ 84.867051, 46.927673 ], [ 84.934188, 46.863878 ], [ 84.95513, 46.861013 ], [ 84.979768, 46.883106 ], [ 84.987159, 46.918272 ], [ 85.082014, 46.939933 ], [ 85.102956, 46.968936 ], [ 85.175637, 46.997924 ], [ 85.213825, 47.041172 ], [ 85.276651, 47.068898 ], [ 85.325926, 47.044842 ], [ 85.355491, 47.054629 ], [ 85.441106, 47.063191 ], [ 85.545816, 47.057891 ], [ 85.547048, 47.096609 ], [ 85.582772, 47.142626 ], [ 85.641903, 47.18413 ], [ 85.682555, 47.222757 ], [ 85.682555, 47.249982 ], [ 85.701033, 47.28856 ], [ 85.675779, 47.321837 ], [ 85.701649, 47.384275 ], [ 85.685018, 47.428829 ], [ 85.614801, 47.498015 ], [ 85.617881, 47.550552 ], [ 85.547048, 48.008205 ], [ 85.531649, 48.046227 ], [ 85.551975, 48.081423 ], [ 85.55136, 48.127781 ], [ 85.576613, 48.15853 ], [ 85.587084, 48.191654 ], [ 85.622193, 48.202824 ], [ 85.633895, 48.232731 ], [ 85.678243, 48.266205 ], [ 85.695489, 48.302445 ], [ 85.695489, 48.335078 ], [ 85.758315, 48.403064 ], [ 85.791576, 48.418954 ], [ 85.916612, 48.438015 ], [ 86.053966, 48.441192 ], [ 86.225813, 48.432456 ], [ 86.270161, 48.452307 ], [ 86.305269, 48.491984 ], [ 86.38103, 48.49357 ], [ 86.416138, 48.481671 ], [ 86.579978, 48.538763 ], [ 86.594761, 48.576789 ], [ 86.635413, 48.612016 ], [ 86.640956, 48.629027 ], [ 86.693311, 48.64366 ], [ 86.70255, 48.666195 ], [ 86.771535, 48.717156 ], [ 86.780774, 48.731369 ], [ 86.754289, 48.78463 ], [ 86.770303, 48.810255 ], [ 86.818963, 48.831139 ], [ 86.821426, 48.850439 ], [ 86.782006, 48.887049 ], [ 86.757985, 48.894919 ], [ 86.730267, 48.959797 ], [ 86.732115, 48.994757 ], [ 86.772151, 49.02773 ], [ 86.836209, 49.051269 ], [ 86.84976, 49.066563 ], [ 86.854071, 49.109284 ], [ 86.887948, 49.132001 ], [ 86.953853, 49.131218 ], [ 87.000049, 49.142572 ], [ 87.088128, 49.133567 ], [ 87.112766, 49.15549 ], [ 87.211932, 49.140615 ], [ 87.239033, 49.114376 ], [ 87.304939, 49.112418 ], [ 87.388707, 49.097921 ], [ 87.43675, 49.075188 ], [ 87.511894, 49.10184 ], [ 87.49588, 49.132001 ], [ 87.517438, 49.145704 ], [ 87.563017, 49.142572 ], [ 87.602437, 49.152359 ], [ 87.67635, 49.15549 ], [ 87.700372, 49.175839 ], [ 87.762582, 49.172709 ], [ 87.793379, 49.18249 ], [ 87.821096, 49.173883 ], [ 87.82048, 49.148445 ], [ 87.845733, 49.146096 ], [ 87.867291, 49.108892 ], [ 87.844502, 49.090084 ], [ 87.858052, 49.07362 ], [ 87.835263, 49.054406 ], [ 87.883306, 49.023806 ], [ 87.883922, 48.993971 ], [ 87.911639, 48.979833 ], [ 87.871603, 48.963726 ], [ 87.87653, 48.949186 ], [ 87.814321, 48.945256 ], [ 87.793995, 48.927565 ], [ 87.760118, 48.925992 ], [ 87.742256, 48.881146 ], [ 87.78106, 48.872094 ], [ 87.792147, 48.849258 ], [ 87.829103, 48.825623 ], [ 87.803234, 48.824835 ], [ 87.826639, 48.800795 ], [ 87.872219, 48.799612 ], [ 87.93874, 48.757809 ], [ 87.96153, 48.773588 ], [ 88.029283, 48.750313 ], [ 88.064392, 48.712813 ], [ 88.090877, 48.71992 ], [ 88.089645, 48.69504 ], [ 88.02682, 48.65315 ], [ 88.010805, 48.618742 ], [ 87.96153, 48.599353 ], [ 87.973233, 48.575997 ], [ 88.041602, 48.548272 ], [ 88.10874, 48.545895 ], [ 88.130297, 48.521721 ], [ 88.151855, 48.526478 ], [ 88.196819, 48.493967 ], [ 88.229464, 48.498329 ], [ 88.318159, 48.478497 ], [ 88.363123, 48.460641 ], [ 88.360659, 48.433251 ], [ 88.438267, 48.393528 ], [ 88.462289, 48.392335 ], [ 88.503557, 48.412996 ], [ 88.523267, 48.403461 ], [ 88.535586, 48.368884 ], [ 88.573158, 48.369679 ], [ 88.573774, 48.351785 ], [ 88.605803, 48.337863 ], [ 88.575006, 48.277757 ], [ 88.594716, 48.259831 ], [ 88.601491, 48.221567 ], [ 88.638447, 48.183674 ], [ 88.668628, 48.171303 ], [ 88.700657, 48.180881 ], [ 88.721599, 48.160526 ], [ 88.79736, 48.133772 ], [ 88.824461, 48.107005 ], [ 88.939026, 48.115396 ], [ 88.953808, 48.090618 ], [ 89.027105, 48.051028 ], [ 89.044967, 48.009806 ], [ 89.078228, 47.98698 ], [ 89.156452, 47.996992 ], [ 89.231597, 47.98017 ], [ 89.282104, 47.994189 ], [ 89.308589, 48.021816 ], [ 89.359712, 48.026219 ], [ 89.38127, 48.046227 ], [ 89.498299, 48.02822 ], [ 89.569132, 48.037825 ], [ 89.599313, 48.015811 ], [ 89.595617, 47.973359 ], [ 89.645508, 47.947711 ], [ 89.651052, 47.913627 ], [ 89.735435, 47.89758 ], [ 89.761921, 47.835751 ], [ 89.86971, 47.834144 ], [ 89.957789, 47.842982 ], [ 89.960253, 47.885942 ], [ 90.040941, 47.874704 ], [ 90.066195, 47.883534 ], [ 90.086521, 47.86547 ], [ 90.070506, 47.820483 ], [ 90.07605, 47.777469 ], [ 90.13518, 47.723147 ], [ 90.180144, 47.72516 ], [ 90.216484, 47.70543 ], [ 90.331665, 47.681663 ], [ 90.384635, 47.644179 ], [ 90.346447, 47.637324 ], [ 90.376012, 47.603036 ], [ 90.398186, 47.547724 ], [ 90.468403, 47.497611 ], [ 90.474562, 47.462422 ], [ 90.459164, 47.43895 ], [ 90.468403, 47.404937 ], [ 90.507823, 47.400076 ], [ 90.526301, 47.379007 ], [ 90.488113, 47.317374 ], [ 90.521374, 47.2845 ], [ 90.56141, 47.206903 ], [ 90.579888, 47.198364 ], [ 90.653801, 47.111681 ], [ 90.691989, 47.080717 ], [ 90.767134, 46.992617 ], [ 90.830575, 46.995883 ], [ 90.901408, 46.960768 ], [ 90.92235, 46.938707 ], [ 90.929742, 46.893331 ], [ 90.958075, 46.879425 ], [ 90.942676, 46.82581 ], [ 90.992567, 46.790583 ], [ 90.992567, 46.769682 ], [ 91.019053, 46.766402 ], [ 91.054161, 46.717598 ], [ 91.036299, 46.670393 ], [ 91.017821, 46.58244 ], [ 91.068328, 46.579149 ], [ 91.079415, 46.558989 ], [ 91.060937, 46.516999 ], [ 91.038147, 46.500936 ], [ 91.025828, 46.444057 ], [ 90.996263, 46.419309 ], [ 90.983328, 46.374734 ], [ 90.900177, 46.31235 ], [ 90.955611, 46.233752 ], [ 90.94822, 46.219262 ], [ 90.98456, 46.160431 ], [ 91.021517, 46.121038 ], [ 91.014741, 46.06667 ], [ 91.028292, 46.023054 ], [ 90.890937, 45.921566 ], [ 90.799778, 45.834905 ], [ 90.714779, 45.728895 ], [ 90.676591, 45.582488 ], [ 90.671047, 45.487747 ], [ 90.723402, 45.464667 ], [ 90.772677, 45.432338 ], [ 90.773909, 45.405874 ], [ 90.813329, 45.32851 ], [ 90.804706, 45.29484 ], [ 90.831807, 45.300313 ], [ 90.877387, 45.280946 ], [ 90.897713, 45.249776 ], [ 90.866916, 45.209314 ], [ 90.881698, 45.192025 ], [ 90.96177, 45.201303 ], [ 91.007966, 45.218589 ], [ 91.050466, 45.208892 ], [ 91.129922, 45.21606 ], [ 91.17119, 45.199616 ], [ 91.195827, 45.159118 ], [ 91.230936, 45.153632 ], [ 91.242023, 45.13717 ], [ 91.33503, 45.129571 ], [ 91.37753, 45.11099 ], [ 91.429268, 45.156586 ], [ 91.448978, 45.156586 ], [ 91.500101, 45.103809 ], [ 91.561695, 45.075501 ], [ 91.694738, 45.065357 ], [ 91.803144, 45.082685 ], [ 91.885679, 45.078882 ], [ 92.056911, 45.086911 ], [ 92.100026, 45.081417 ], [ 92.240461, 45.015881 ], [ 92.315605, 45.028994 ], [ 92.348866, 45.014188 ], [ 92.414155, 45.018419 ], [ 92.501003, 45.001072 ], [ 92.547814, 45.018419 ], [ 92.683937, 45.02561 ], [ 92.779407, 45.050561 ], [ 92.847777, 45.038721 ], [ 92.884117, 45.046756 ], [ 92.922921, 45.03703 ], [ 92.932776, 45.017573 ], [ 93.002377, 45.009958 ], [ 93.062124, 45.018419 ], [ 93.100312, 45.007419 ], [ 93.174225, 45.015458 ], [ 93.252449, 44.991761 ], [ 93.314043, 44.980333 ], [ 93.314659, 44.995147 ], [ 93.376869, 44.985412 ], [ 93.434767, 44.955351 ], [ 93.509296, 44.968055 ], [ 93.613389, 44.926546 ], [ 93.716251, 44.894334 ], [ 93.723642, 44.865498 ], [ 94.066105, 44.732154 ], [ 94.152336, 44.684944 ], [ 94.215162, 44.667921 ], [ 94.227481, 44.645785 ], [ 94.279836, 44.603617 ], [ 94.329727, 44.582734 ], [ 94.359292, 44.515775 ], [ 94.390705, 44.521749 ], [ 94.470777, 44.509373 ], [ 94.557008, 44.462408 ], [ 94.606283, 44.448311 ], [ 94.673421, 44.397021 ], [ 94.722696, 44.34055 ], [ 94.768275, 44.34055 ], [ 94.826174, 44.320001 ], [ 94.945666, 44.292592 ], [ 94.998637, 44.253169 ], [ 95.1286, 44.269884 ], [ 95.238853, 44.277169 ], [ 95.41378, 44.298589 ], [ 95.43041, 44.281882 ], [ 95.4107, 44.245024 ], [ 95.376208, 44.227444 ], [ 95.355882, 44.166087 ], [ 95.35157, 44.090054 ], [ 95.326932, 44.028554 ], [ 95.377439, 44.025972 ], [ 95.426099, 44.009618 ], [ 95.527113, 44.007466 ], [ 95.623199, 43.855756 ], [ 95.645373, 43.787966 ], [ 95.705735, 43.67077 ], [ 95.735916, 43.597569 ], [ 95.857872, 43.417436 ], [ 95.880046, 43.28035 ], [ 95.921314, 43.229789 ], [ 96.363558, 42.900562 ], [ 96.386348, 42.727592 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"710000\", \"name\": \"台湾省\", \"center\": [ 121.509062, 25.044332 ], \"centroid\": [ 120.971485, 23.749452 ], \"childrenNum\": 0, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 31, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 120.443706, 22.441432 ], [ 120.297112, 22.531565 ], [ 120.274323, 22.560307 ], [ 120.20041, 22.721039 ], [ 120.149287, 22.896468 ], [ 120.133272, 23.000625 ], [ 120.029795, 23.048544 ], [ 120.018708, 23.073322 ], [ 120.081534, 23.291728 ], [ 120.108019, 23.341191 ], [ 120.12157, 23.504836 ], [ 120.095084, 23.58768 ], [ 120.102476, 23.701162 ], [ 120.175156, 23.807427 ], [ 120.245989, 23.840276 ], [ 120.278018, 23.92783 ], [ 120.316206, 23.984708 ], [ 120.391967, 24.118055 ], [ 120.451713, 24.182493 ], [ 120.470807, 24.242533 ], [ 120.520698, 24.311816 ], [ 120.546568, 24.370159 ], [ 120.589068, 24.43229 ], [ 120.642654, 24.490033 ], [ 120.68885, 24.600542 ], [ 120.762147, 24.658208 ], [ 120.82374, 24.688118 ], [ 120.89211, 24.767482 ], [ 120.914899, 24.864715 ], [ 120.961095, 24.940167 ], [ 121.009754, 24.993878 ], [ 121.024537, 25.040517 ], [ 121.102145, 25.075214 ], [ 121.132942, 25.078466 ], [ 121.209318, 25.12724 ], [ 121.319572, 25.140785 ], [ 121.371926, 25.159746 ], [ 121.413194, 25.238806 ], [ 121.444607, 25.27074 ], [ 121.53515, 25.307535 ], [ 121.585041, 25.309159 ], [ 121.62323, 25.29455 ], [ 121.655259, 25.242054 ], [ 121.700222, 25.226896 ], [ 121.707613, 25.191701 ], [ 121.745186, 25.161912 ], [ 121.782142, 25.160287 ], [ 121.841888, 25.135367 ], [ 121.917033, 25.138076 ], [ 121.947214, 25.031841 ], [ 121.98109, 25.030757 ], [ 122.012503, 25.001471 ], [ 121.933047, 24.938539 ], [ 121.844968, 24.836476 ], [ 121.841272, 24.734329 ], [ 121.86283, 24.671261 ], [ 121.892395, 24.617953 ], [ 121.88562, 24.529784 ], [ 121.867758, 24.47914 ], [ 121.82649, 24.423572 ], [ 121.809243, 24.339083 ], [ 121.689135, 24.174303 ], [ 121.678048, 24.133895 ], [ 121.643556, 24.097843 ], [ 121.63986, 24.064514 ], [ 121.65957, 24.007125 ], [ 121.621382, 23.920718 ], [ 121.587505, 23.760878 ], [ 121.522832, 23.538858 ], [ 121.5216, 23.483431 ], [ 121.497578, 23.419744 ], [ 121.479716, 23.322507 ], [ 121.440296, 23.271937 ], [ 121.415042, 23.196047 ], [ 121.430441, 23.137175 ], [ 121.409499, 23.1025 ], [ 121.370695, 23.084334 ], [ 121.35468, 23.00999 ], [ 121.324499, 22.945526 ], [ 121.276456, 22.877171 ], [ 121.237652, 22.836362 ], [ 121.21055, 22.770711 ], [ 121.170514, 22.723247 ], [ 121.078739, 22.669691 ], [ 121.03316, 22.650914 ], [ 121.014682, 22.584069 ], [ 120.981421, 22.528248 ], [ 120.914899, 22.302525 ], [ 120.903197, 22.12634 ], [ 120.912436, 22.086418 ], [ 120.907508, 22.033171 ], [ 120.86624, 21.984345 ], [ 120.873016, 21.897191 ], [ 120.854537, 21.883309 ], [ 120.781857, 21.923843 ], [ 120.743052, 21.915515 ], [ 120.701784, 21.927174 ], [ 120.667908, 21.983235 ], [ 120.651277, 22.033171 ], [ 120.661748, 22.067007 ], [ 120.659285, 22.154056 ], [ 120.640806, 22.241605 ], [ 120.569973, 22.361757 ], [ 120.517619, 22.408793 ], [ 120.443706, 22.441432 ] ] ], [ [ [ 124.541855565478286, 25.891845867343921 ], [ 124.530097884119826, 25.910742140955961 ], [ 124.518340202761223, 25.930898166142125 ], [ 124.541015731095655, 25.946015185031744 ], [ 124.566804, 25.941563 ], [ 124.584666, 25.908731 ], [ 124.568730265726629, 25.884707275090506 ], [ 124.541855565478286, 25.891845867343921 ] ] ], [ [ [ 123.445178, 25.726102 ], [ 123.438733103727387, 25.753273194189074 ], [ 123.468967141506624, 25.783087314776932 ], [ 123.513478363792743, 25.768810130270065 ], [ 123.510958860644465, 25.71464081258226 ], [ 123.468547224315259, 25.703722965606424 ], [ 123.445178, 25.726102 ] ] ], [ [ [ 119.646064, 23.550928 ], [ 119.609108, 23.503738 ], [ 119.578927, 23.502641 ], [ 119.562297, 23.530627 ], [ 119.566608, 23.584937 ], [ 119.601717, 23.575613 ], [ 119.61034, 23.604132 ], [ 119.678093, 23.600294 ], [ 119.691028, 23.547087 ], [ 119.646064, 23.550928 ] ] ], [ [ [ 123.652470954139019, 25.910742140955957 ], [ 123.675986316856211, 25.947274936605876 ], [ 123.705800437444026, 25.935517255247277 ], [ 123.71503861565435, 25.912421809721465 ], [ 123.696562259233758, 25.878828434411201 ], [ 123.66968755898553, 25.88680686104739 ], [ 123.652470954139019, 25.910742140955957 ] ] ], [ [ [ 119.506246, 23.625518 ], [ 119.52534, 23.62497 ], [ 119.519181, 23.559705 ], [ 119.47237, 23.556962 ], [ 119.506246, 23.577259 ], [ 119.506246, 23.625518 ] ] ], [ [ [ 119.497623, 23.38679 ], [ 119.516717, 23.349982 ], [ 119.495159, 23.349982 ], [ 119.497623, 23.38679 ] ] ], [ [ [ 119.557369, 23.666634 ], [ 119.586318, 23.675952 ], [ 119.615268, 23.661153 ], [ 119.608492, 23.620035 ], [ 119.557369, 23.666634 ] ] ], [ [ [ 122.066706, 25.6247 ], [ 122.092575, 25.639268 ], [ 122.087032, 25.61067 ], [ 122.066706, 25.6247 ] ] ], [ [ [ 121.468013, 22.67687 ], [ 121.514824, 22.676318 ], [ 121.513592, 22.631582 ], [ 121.474788, 22.643734 ], [ 121.468013, 22.67687 ] ] ], [ [ [ 121.510513, 22.086972 ], [ 121.575802, 22.0842 ], [ 121.575186, 22.037055 ], [ 121.604752, 22.022631 ], [ 121.594281, 21.995443 ], [ 121.533918, 22.022076 ], [ 121.507433, 22.048704 ], [ 121.510513, 22.086972 ] ] ], [ [ [ 122.097503, 25.499987 ], [ 122.122141, 25.495666 ], [ 122.110438, 25.465952 ], [ 122.097503, 25.499987 ] ] ], [ [ [ 119.421247, 23.216949 ], [ 119.453275, 23.216399 ], [ 119.436029, 23.186146 ], [ 119.421247, 23.216949 ] ] ], [ [ [ 120.355011, 22.327439 ], [ 120.383344, 22.355669 ], [ 120.395663, 22.342385 ], [ 120.355011, 22.327439 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"810000\", \"name\": \"香港特别行政区\", \"center\": [ 114.173355, 22.320048 ], \"centroid\": [ 114.134391, 22.37737 ], \"childrenNum\": 18, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 32, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 114.031778, 22.503923 ], [ 114.082285, 22.512216 ], [ 114.095219, 22.534329 ], [ 114.156813, 22.543726 ], [ 114.166052, 22.559201 ], [ 114.222719, 22.553122 ], [ 114.232574, 22.539857 ], [ 114.232574, 22.528801 ], [ 114.260291, 22.547595 ], [ 114.263371, 22.541515 ], [ 114.263987, 22.541515 ], [ 114.28924, 22.52272 ], [ 114.309566, 22.497288 ], [ 114.340979, 22.50337 ], [ 114.2529, 22.445304 ], [ 114.23319, 22.466875 ], [ 114.205473, 22.449729 ], [ 114.220255, 22.427603 ], [ 114.278769, 22.435901 ], [ 114.325581, 22.479041 ], [ 114.376088, 22.436454 ], [ 114.406269, 22.433688 ], [ 114.406269, 22.432582 ], [ 114.385327, 22.41156 ], [ 114.394566, 22.361757 ], [ 114.356994, 22.340171 ], [ 114.323733, 22.384447 ], [ 114.323733, 22.385001 ], [ 114.323117, 22.385554 ], [ 114.322501, 22.385554 ], [ 114.283081, 22.386661 ], [ 114.278153, 22.328546 ], [ 114.315726, 22.299756 ], [ 114.315726, 22.299203 ], [ 114.313262, 22.264315 ], [ 114.284929, 22.263761 ], [ 114.262139, 22.294773 ], [ 114.248588, 22.274837 ], [ 114.265835, 22.200608 ], [ 114.203009, 22.206703 ], [ 114.200545, 22.232188 ], [ 114.164821, 22.226648 ], [ 114.120473, 22.272068 ], [ 114.145726, 22.300864 ], [ 114.121089, 22.320795 ], [ 114.069966, 22.326885 ], [ 114.034857, 22.300864 ], [ 114.029314, 22.262653 ], [ 114.004676, 22.239389 ], [ 114.026234, 22.229418 ], [ 113.996669, 22.206149 ], [ 113.981271, 22.229972 ], [ 113.935691, 22.205041 ], [ 113.899351, 22.215568 ], [ 113.852539, 22.191188 ], [ 113.8433, 22.229418 ], [ 113.889496, 22.271514 ], [ 113.898119, 22.308615 ], [ 113.969568, 22.321349 ], [ 113.955401, 22.298649 ], [ 114.026234, 22.34792 ], [ 113.980039, 22.366185 ], [ 113.941235, 22.355116 ], [ 113.920293, 22.367845 ], [ 113.918445, 22.418199 ], [ 113.977575, 22.45692 ], [ 114.000981, 22.491206 ], [ 114.031778, 22.503923 ] ] ], [ [ [ 114.142647, 22.213906 ], [ 114.166668, 22.205041 ], [ 114.154965, 22.177888 ], [ 114.120473, 22.177888 ], [ 114.123553, 22.238836 ], [ 114.142647, 22.213906 ] ] ], [ [ [ 114.305871, 22.372273 ], [ 114.305255, 22.372826 ], [ 114.332972, 22.353455 ], [ 114.313878, 22.340724 ], [ 114.305871, 22.372273 ] ] ], [ [ [ 114.320037, 22.381127 ], [ 114.320037, 22.38168 ], [ 114.319421, 22.382234 ], [ 114.322501, 22.385554 ], [ 114.323117, 22.385554 ], [ 114.323733, 22.385001 ], [ 114.323733, 22.384447 ], [ 114.320037, 22.381127 ] ] ], [ [ [ 114.305871, 22.369506 ], [ 114.305255, 22.372826 ], [ 114.305871, 22.372273 ], [ 114.305871, 22.369506 ] ] ], [ [ [ 114.315726, 22.299203 ], [ 114.315726, 22.299756 ], [ 114.316342, 22.30031 ], [ 114.316958, 22.298649 ], [ 114.315726, 22.299203 ] ] ], [ [ [ 114.319421, 22.382234 ], [ 114.320037, 22.38168 ], [ 114.320037, 22.381127 ], [ 114.319421, 22.382234 ] ] ], [ [ [ 114.372392, 22.32301 ], [ 114.372392, 22.323564 ], [ 114.373008, 22.323564 ], [ 114.372392, 22.32301 ] ] ], [ [ [ 114.323733, 22.297541 ], [ 114.323733, 22.298095 ], [ 114.324349, 22.297541 ], [ 114.323733, 22.297541 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"820000\", \"name\": \"澳门特别行政区\", \"center\": [ 113.54909, 22.198951 ], \"centroid\": [ 113.566988, 22.159307 ], \"childrenNum\": 8, \"level\": \"province\", \"parent\": { \"adcode\": 100000 }, \"subFeatureIndex\": 33, \"acroutes\": [ 100000 ] }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 113.554425, 22.107489 ], [ 113.554425, 22.142416 ], [ 113.534715, 22.174009 ], [ 113.53841, 22.209473 ], [ 113.558736, 22.212244 ], [ 113.575983, 22.194513 ], [ 113.6037, 22.132438 ], [ 113.554425, 22.107489 ] ] ], [ [ [ 113.586453, 22.201162 ], [ 113.575983, 22.194513 ], [ 113.575983, 22.201162 ], [ 113.586453, 22.201162 ] ] ] ] } },\n{ \"type\": \"Feature\", \"properties\": { \"adcode\": \"100000\", \"name\": \"\", \"adchar\": \"JD\" }, \"geometry\": { \"type\": \"MultiPolygon\", \"coordinates\": [ [ [ [ 122.51865306, 23.46078502 ], [ 122.51742454, 23.45790762 ], [ 122.51536697, 23.45555069 ], [ 122.51268178, 23.45394494 ], [ 122.50963181, 23.45324755 ], [ 122.5065156, 23.45352678 ], [ 122.5036382, 23.45475531 ], [ 122.50128127, 23.45681287 ], [ 122.49967552, 23.45949807 ], [ 122.49897813, 23.46254804 ], [ 122.49925737, 23.46566424 ], [ 122.77921829, 24.57855302 ], [ 122.78044682, 24.58143041 ], [ 122.78250438, 24.58378734 ], [ 122.78518957, 24.5853931 ], [ 122.78823955, 24.58609049 ], [ 122.79135575, 24.58581125 ], [ 122.79423315, 24.58458272 ], [ 122.79659008, 24.58252516 ], [ 122.79819583, 24.57983997 ], [ 122.79889322, 24.57678999 ], [ 122.79861399, 24.57367379 ], [ 122.51865306, 23.46078502 ] ] ], [ [ [ 121.17202617, 20.8054593 ], [ 121.16966862, 20.80340244 ], [ 121.16679085, 20.80217478 ], [ 121.16367457, 20.80189649 ], [ 121.1606248, 20.8025948 ], [ 121.1579401, 20.80420136 ], [ 121.15588324, 20.80655891 ], [ 121.15465558, 20.80943668 ], [ 121.15437729, 20.81255297 ], [ 121.1550756, 20.81560273 ], [ 121.15668216, 20.81828744 ], [ 121.89404403, 21.70026162 ], [ 121.89640158, 21.70231847 ], [ 121.89927934, 21.70354613 ], [ 121.90239563, 21.70382443 ], [ 121.9054454, 21.70312611 ], [ 121.9081301, 21.70151955 ], [ 121.91018696, 21.699162 ], [ 121.91141462, 21.69628423 ], [ 121.91169291, 21.69316794 ], [ 121.9109946, 21.69011818 ], [ 121.90938804, 21.68743347 ], [ 121.17202617, 20.8054593 ] ] ], [ [ [ 119.47366172, 18.00707291 ], [ 119.47175735, 18.00459056 ], [ 119.46917909, 18.0028182 ], [ 119.46617933, 18.0019293 ], [ 119.4630517, 18.00201089 ], [ 119.46010237, 18.00305497 ], [ 119.45762002, 18.00495935 ], [ 119.45584765, 18.00753761 ], [ 119.45495876, 18.01053737 ], [ 119.45504035, 18.01366499 ], [ 119.45608443, 18.01661433 ], [ 120.00812005, 19.0335793 ], [ 120.01002443, 19.03606165 ], [ 120.01260269, 19.03783401 ], [ 120.01560245, 19.03872291 ], [ 120.01873007, 19.03864132 ], [ 120.02167941, 19.03759723 ], [ 120.02416175, 19.03569286 ], [ 120.02593412, 19.0331146 ], [ 120.02682302, 19.03011484 ], [ 120.02674143, 19.02698721 ], [ 120.02569734, 19.02403788 ], [ 119.47366172, 18.00707291 ] ] ], [ [ [ 119.0726757, 15.04098494 ], [ 119.0726746, 15.04083704 ], [ 119.07218171, 15.00751424 ], [ 119.07164663, 15.00443165 ], [ 119.07018516, 15.00166528 ], [ 119.06794036, 14.99948592 ], [ 119.06513198, 14.99810691 ], [ 119.06203491, 14.99766324 ], [ 119.05895232, 14.99819832 ], [ 119.05618595, 14.99965979 ], [ 119.05400659, 15.00190458 ], [ 119.05262758, 15.00471297 ], [ 119.0521839, 15.00781004 ], [ 119.0526757, 15.04105889 ], [ 119.0526757, 16.04388528 ], [ 119.05316513, 16.04697545 ], [ 119.05458553, 16.04976313 ], [ 119.05679784, 16.05197545 ], [ 119.05958553, 16.05339584 ], [ 119.0626757, 16.05388528 ], [ 119.06576587, 16.05339584 ], [ 119.06855355, 16.05197545 ], [ 119.07076587, 16.04976313 ], [ 119.07218626, 16.04697545 ], [ 119.0726757, 16.04388528 ], [ 119.0726757, 15.04098494 ] ] ], [ [ [ 118.68646749, 11.18959191 ], [ 118.85557939, 11.6136711 ], [ 118.9698053, 11.99151854 ], [ 118.97116801, 11.99433487 ], [ 118.97333431, 11.99659227 ], [ 118.97609216, 11.99806975 ], [ 118.9791716, 11.99862269 ], [ 118.98227119, 11.99819697 ], [ 118.98508753, 11.99683427 ], [ 118.98734492, 11.99466796 ], [ 118.9888224, 11.99191011 ], [ 118.98937534, 11.98883067 ], [ 118.98894963, 11.98573108 ], [ 118.87459939, 11.60747236 ], [ 118.87431591, 11.606662 ], [ 118.70476212, 11.18147468 ], [ 118.70409227, 11.18010771 ], [ 118.54242469, 10.9053354 ], [ 118.54043581, 10.90292022 ], [ 118.53779795, 10.90123786 ], [ 118.53476931, 10.90045298 ], [ 118.53164636, 10.90064241 ], [ 118.5287348, 10.90178762 ], [ 118.52631962, 10.9037765 ], [ 118.52463726, 10.90641436 ], [ 118.52385237, 10.909443 ], [ 118.52404181, 10.91256595 ], [ 118.52518702, 10.91547751 ], [ 118.68646749, 11.18959191 ] ] ], [ [ [ 115.54466883, 7.14672265 ], [ 115.54229721, 7.14468204 ], [ 115.53941108, 7.14347417 ], [ 115.53629295, 7.14321728 ], [ 115.53324806, 7.14393652 ], [ 115.53057445, 7.14556148 ], [ 115.52853383, 7.1479331 ], [ 115.52732596, 7.15081924 ], [ 115.52706908, 7.15393736 ], [ 115.52778832, 7.15698226 ], [ 115.52941328, 7.15965587 ], [ 116.23523025, 7.99221221 ], [ 116.23760187, 7.99425282 ], [ 116.240488, 7.99546069 ], [ 116.24360613, 7.99571758 ], [ 116.24665102, 7.99499834 ], [ 116.24932463, 7.99337338 ], [ 116.25136525, 7.99100176 ], [ 116.25257312, 7.98811563 ], [ 116.25283001, 7.9849975 ], [ 116.25211077, 7.98195261 ], [ 116.2504858, 7.979279 ], [ 115.54466883, 7.14672265 ] ] ], [ [ [ 112.30705249, 3.53487257 ], [ 112.51501594, 3.59753306 ], [ 112.84361424, 3.7506962 ], [ 112.84662187, 3.75155809 ], [ 112.84974864, 3.7514484 ], [ 112.85268847, 3.75037785 ], [ 112.8551536, 3.74845124 ], [ 112.85690272, 3.74585715 ], [ 112.85776462, 3.74284952 ], [ 112.85765492, 3.73972276 ], [ 112.85658437, 3.73678292 ], [ 112.85465776, 3.7343178 ], [ 112.85206367, 3.73256867 ], [ 112.52281386, 3.57910186 ], [ 112.52147408, 3.5785908 ], [ 112.31248917, 3.51562254 ], [ 112.31181658, 3.51544515 ], [ 111.79132585, 3.39736822 ], [ 111.78820398, 3.39716187 ], [ 111.78517113, 3.39793033 ], [ 111.78252419, 3.39959839 ], [ 111.78052226, 3.40200275 ], [ 111.77936129, 3.40490807 ], [ 111.77915495, 3.40802995 ], [ 111.77992341, 3.41106279 ], [ 111.78159146, 3.41370973 ], [ 111.78399583, 3.41571167 ], [ 111.78690114, 3.41687263 ], [ 112.30705249, 3.53487257 ] ] ], [ [ [ 108.26055972, 6.08912451 ], [ 108.26004031, 6.09098419 ], [ 108.23638164, 6.22427602 ], [ 108.23630689, 6.22476797 ], [ 108.19687578, 6.53630242 ], [ 108.19679674, 6.53760583 ], [ 108.1987683, 6.95072469 ], [ 108.19897125, 6.95268198 ], [ 108.22460147, 7.07791743 ], [ 108.22570055, 7.08084671 ], [ 108.22765103, 7.083293 ], [ 108.230262, 7.08501682 ], [ 108.23327786, 7.08584944 ], [ 108.23640341, 7.08570936 ], [ 108.2393327, 7.08461028 ], [ 108.24177899, 7.0826598 ], [ 108.24350281, 7.08004883 ], [ 108.24433543, 7.07703297 ], [ 108.24419535, 7.07390742 ], [ 108.21876335, 6.94964057 ], [ 108.21679964, 6.53816468 ], [ 108.25611734, 6.22752625 ], [ 108.279563, 6.09543449 ], [ 108.30878645, 6.01987736 ], [ 108.30944469, 6.0168187 ], [ 108.30912553, 6.01370633 ], [ 108.30786022, 6.01084492 ], [ 108.30577262, 6.00851455 ], [ 108.30306706, 6.00694335 ], [ 108.3000084, 6.00628511 ], [ 108.29689603, 6.00660426 ], [ 108.29403462, 6.00786957 ], [ 108.29170425, 6.00995718 ], [ 108.29013305, 6.01266273 ], [ 108.26055972, 6.08912451 ] ] ], [ [ [ 110.12822847, 11.36894451 ], [ 110.18898148, 11.48996382 ], [ 110.23982347, 11.61066468 ], [ 110.28485499, 11.78705054 ], [ 110.3083549, 11.94803461 ], [ 110.3142445, 12.14195265 ], [ 110.312278, 12.23998238 ], [ 110.31270536, 12.24308175 ], [ 110.31406956, 12.24589736 ], [ 110.31623706, 12.2481536 ], [ 110.3189957, 12.24962962 ], [ 110.32207543, 12.25018094 ], [ 110.32517479, 12.24975358 ], [ 110.3279904, 12.24838938 ], [ 110.33024665, 12.24622187 ], [ 110.33172267, 12.24346324 ], [ 110.33227398, 12.24038351 ], [ 110.33424553, 12.14210167 ], [ 110.33424294, 12.14159753 ], [ 110.32832827, 11.94685414 ], [ 110.32822801, 11.94571326 ], [ 110.30456934, 11.78364161 ], [ 110.30436343, 11.7826124 ], [ 110.25901765, 11.60499559 ], [ 110.25854422, 11.60358735 ], [ 110.20728377, 11.48189306 ], [ 110.20700505, 11.48128846 ], [ 110.14588682, 11.35954163 ], [ 110.14541497, 11.35870461 ], [ 110.07246741, 11.24270688 ], [ 110.07040803, 11.24035153 ], [ 110.0677216, 11.23874785 ], [ 110.06467109, 11.23805281 ], [ 110.0615551, 11.23833444 ], [ 110.05867865, 11.23956519 ], [ 110.05632331, 11.24162456 ], [ 110.05471962, 11.24431099 ], [ 110.05402458, 11.2473615 ], [ 110.05430621, 11.25047749 ], [ 110.05553696, 11.25335394 ], [ 110.12822847, 11.36894451 ] ] ], [ [ [ 109.82951587, 15.22896754 ], [ 109.77065019, 15.44468789 ], [ 109.67264555, 15.66561455 ], [ 109.57455994, 15.82609887 ], [ 109.51574449, 15.91095759 ], [ 109.29314007, 16.19491896 ], [ 109.29161878, 16.19765288 ], [ 109.29101677, 16.20072311 ], [ 109.29139298, 16.2038291 ], [ 109.29271057, 16.20666681 ], [ 109.29484059, 16.20895848 ], [ 109.29757451, 16.21047978 ], [ 109.30064474, 16.21108179 ], [ 109.30375073, 16.21070558 ], [ 109.30658844, 16.20938798 ], [ 109.30888011, 16.20725797 ], [ 109.53166592, 15.92306523 ], [ 109.53201478, 15.92259221 ], [ 109.59116145, 15.8372556 ], [ 109.59147511, 15.83677407 ], [ 109.6900529, 15.67548445 ], [ 109.69066131, 15.67432448 ], [ 109.7892391, 15.45210582 ], [ 109.78974541, 15.45068337 ], [ 109.84889209, 15.23393326 ], [ 109.84903675, 15.23333003 ], [ 109.8648092, 15.15722425 ], [ 109.86495704, 15.15409906 ], [ 109.86413191, 15.15108113 ], [ 109.86241457, 15.1484659 ], [ 109.85997314, 15.14650935 ], [ 109.85704658, 15.145403 ], [ 109.85392139, 15.14525516 ], [ 109.85090347, 15.14608029 ], [ 109.84828823, 15.14779763 ], [ 109.84633168, 15.15023907 ], [ 109.84522534, 15.15316562 ], [ 109.82951587, 15.22896754 ] ] ] ] } }\n]\n}\n', 'admin', '2021-06-30 10:15:13', NULL, NULL, '0', NULL); + +-- ---------------------------- +-- Table structure for jimu_report_share +-- ---------------------------- +DROP TABLE IF EXISTS `jimu_report_share`; +CREATE TABLE `jimu_report_share` ( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键', + `report_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '在线excel设计器id', + `preview_url` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预览地址', + `preview_lock` varchar(4) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '密码锁', + `last_update_time` datetime NULL DEFAULT NULL COMMENT '最后更新时间', + `term_of_validity` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '有效期(0:永久有效,1:1天,2:7天)', + `status` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '是否过期(0未过期,1已过期)', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '积木报表预览权限表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for rep_demo_dxtj +-- ---------------------------- +DROP TABLE IF EXISTS `rep_demo_dxtj`; +CREATE TABLE `rep_demo_dxtj` ( + `id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键', + `name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '姓名', + `gtime` datetime NULL DEFAULT NULL COMMENT '雇佣日期', + `update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '职务', + `jphone` varchar(125) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '家庭电话', + `birth` datetime NULL DEFAULT NULL COMMENT '出生日期', + `hukou` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '户口所在地', + `laddress` varchar(125) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系地址', + `jperson` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '紧急联系人', + `sex` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'xingbie', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of rep_demo_dxtj +-- ---------------------------- +INSERT INTO `rep_demo_dxtj` VALUES ('1338808084247613441', '张三', '2019-11-06 00:00:00', '1', '18034596970', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809169074982920', '张小哲', '2019-11-06 00:00:00', '2', '18034596971', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809448658898952', '闫妮', '2019-11-06 00:00:00', '2', '18034596972', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809620973490184', '陌生', '2019-11-06 00:00:00', '2', '18034596973', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809652606930952', '贺江', '2019-11-06 00:00:00', '2', '18034596974', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '2'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809685200867336', '村子明', '2019-11-06 00:00:00', '3', '18034596975', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '2'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809710203113481', '尚德', '2019-11-06 00:00:00', '4', '18034596977', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809749470187528', '郑恺', '2019-11-06 00:00:00', '4', '18034596978', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809774971555849', '未名园', '2019-11-06 00:00:00', '4', '18034596970', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809805199904777', '韩寒', '2019-11-06 00:00:00', '5', '18034596970', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809830017601544', '迪丽热拉', '2019-11-06 00:00:00', '6', '18034596970', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1338809864356368393', '张一山', '2019-11-06 00:00:00', '6', '18034596970', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157602480137', '张三', '2019-11-06 00:00:00', '1', '18034596970', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157602480146', '张大大', '2019-11-06 00:00:00', '2', '18034596971', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157606674439', '郭美美', '2019-11-06 00:00:00', '2', '18034596972', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157606674448', '莫愁', '2019-11-06 00:00:00', '2', '18034596973', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157606674457', '鲁与', '2019-11-06 00:00:00', '2', '18034596974', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '2'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157606674466', '高尚', '2019-11-06 00:00:00', '3', '18034596975', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '2'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157606674475', '尚北京', '2019-11-06 00:00:00', '4', '18034596977', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157606674484', '杨颖花', '2019-11-06 00:00:00', '4', '18034596978', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157606674493', '李丽', '2019-11-06 00:00:00', '4', '18034596970', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157606674502', '韩露露', '2019-11-06 00:00:00', '5', '18034596970', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157606674511', '李凯泽', '2019-11-06 00:00:00', '6', '18034596970', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); +INSERT INTO `rep_demo_dxtj` VALUES ('1339160157606674520', '王明阳', '2019-11-06 00:00:00', '6', '18034596970', '1988-12-15 00:00:00', '北京市朝阳区奥运村街道亚运村小区', '18034596972', '王亮', '1'); + +-- ---------------------------- +-- Table structure for rep_demo_employee +-- ---------------------------- +DROP TABLE IF EXISTS `rep_demo_employee`; +CREATE TABLE `rep_demo_employee` ( + `id` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '主键', + `num` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '编号', + `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '姓名', + `sex` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '性别', + `birthday` datetime NULL DEFAULT NULL COMMENT '出生日期', + `nation` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '民族', + `political` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '政治面貌', + `native_place` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '籍贯', + `height` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '身高', + `weight` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '体重', + `health` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '健康状况', + `id_card` varchar(80) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '身份证号', + `education` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '学历', + `school` varchar(80) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '毕业学校', + `major` varchar(80) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '专业', + `address` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系地址', + `zip_code` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '邮编', + `email` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Email', + `phone` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '手机号', + `foreign_language` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '外语语种', + `foreign_language_level` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '外语水平', + `computer_level` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '计算机水平', + `graduation_time` datetime NULL DEFAULT NULL COMMENT '毕业时间', + `arrival_time` datetime NULL DEFAULT NULL COMMENT '到职时间', + `positional_titles` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '职称', + `education_experience` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '教育经历', + `work_experience` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '工作经历', + `create_by` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建人', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '修改人', + `update_time` datetime NULL DEFAULT NULL COMMENT '修改时间', + `del_flag` tinyint(1) NULL DEFAULT NULL COMMENT '删除标识0-正常,1-已删除', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of rep_demo_employee +-- ---------------------------- +INSERT INTO `rep_demo_employee` VALUES ('1', '001', '张三', '男', '2000-02-04 13:36:19', '汉族', '团员', '北京', '170', '65', '良好', '110101200002044853', '大专', '北京科技', '计算机', '北京朝阳区', '1001', 'zhang@163.com', '18011111111', '英语', '三级', '三级', '2019-02-04 13:41:17', '2020-02-04 13:41:31', '项目经理', '2018年9月—2019年7月:北京语言文化大学比较文学研究所攻读博士学位,获得比较文学博士学位', '2019年5月---至今 XX公司     网络系统工程师  \n2019年5月---至今 XX公司     网络系统工程师', NULL, '2020-02-04 15:18:03', NULL, NULL, NULL); +INSERT INTO `rep_demo_employee` VALUES ('2', '002', '王红', '女', '2000-02-04 13:36:19', '汉族', '团员', '北京', '170', '65', '良好', '110101200002044853', '大专', '北京科技', '计算机', '北京朝阳区', '1001', 'zhang@163.com', '18011111111', '英语', '三级', '三级', '2019-02-04 13:41:17', '2020-02-04 13:41:31', '项目经理', '2018年9月—2019年7月:北京语言文化大学比较文学研究所攻读博士学位,获得比较文学博士学位', '2019年5月---至今 XX公司     网络系统工程师  \n2019年5月---至今 XX公司     网络系统工程师', NULL, '2020-02-04 18:39:27', NULL, NULL, NULL); + +-- ---------------------------- +-- Table structure for rep_demo_gongsi +-- ---------------------------- +DROP TABLE IF EXISTS `rep_demo_gongsi`; +CREATE TABLE `rep_demo_gongsi` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `gname` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '货品名称', + `gdata` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '返利', + `tdata` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '备注', + `didian` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `zhaiyao` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `num` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of rep_demo_gongsi +-- ---------------------------- +INSERT INTO `rep_demo_gongsi` VALUES (1, '北京天山海世界', '2020-02-30 11:12:25', '2020-02-25', '天山大厦', '1', '2399845661'); +INSERT INTO `rep_demo_gongsi` VALUES (2, 'dd天山海世界', '2020-02-30 11:12:25', '2020-02-25', '天山大厦', '1', '2399845661'); + +-- ---------------------------- +-- Table structure for rep_demo_jianpiao +-- ---------------------------- +DROP TABLE IF EXISTS `rep_demo_jianpiao`; +CREATE TABLE `rep_demo_jianpiao` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `bnum` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `ftime` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `sfkong` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `kaishi` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `jieshu` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `hezairen` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `jpnum` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `shihelv` varchar(125) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + `s_id` int(11) NOT NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 87 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of rep_demo_jianpiao +-- ---------------------------- +INSERT INTO `rep_demo_jianpiao` VALUES (1, 'K7725', '21:13', '否', '秦皇岛', '邯郸', '300', '258', '86', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (2, 'k99', '16:55', '否', '包头', '广州', '800', '700', '88', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (3, 'G6737', '05:34', '否', '北京西', '邯郸东', '500', '256', '51', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (4, 'K7705', '07:03', '否', '北京', '邯郸', '400', '200', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (5, 'G437', '06:27', '否', '北京西', '兰州西', '800', '586', '73', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (6, 'G673', '06:32', '否', '北京西', '邯郸东', '300', '289', '87', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (7, 'G507', '06:43', '否', '北京西', '邯郸东', '300', '200', '67', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (8, 'G89', '06:53', '否', '北京西', '成都东', '800', '500', '62', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (9, 'K7712', '09:43', '否', '北京西', '西安北', '400', '200', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (10, 'G405', '10:05', '否', '北京西', '昆明南', '300', '200', '67', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (11, 'G6701', '10:38', '否', '北京西', '石家庄', '300', '200', '67', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (12, 'G487', '10:52', '否', '北京西', '南昌西', '800', '700', '88', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (13, 'G607', '11:14', '否', '北京西', '太原南', '400', '200', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (14, 'G667', '11:19', '否', '北京西', '西安北', '400', '200', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (15, 'Z49', '11:28', '否', '北京西', '成都', '400', '200', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (16, 'Z49', '11:28', '否', '北京西', '上海', '300', '200', '80', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (17, 'Z49', '11:56', '否', '北京西', '上海', '200', '180', '95', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (18, 'Z49', '11:36', '否', '北京南', '大晒', '200', '180', '96', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (19, 'Z123', '12:00', '否', '北京南', '重庆', '1000', '1000', '100', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (20, 'G78', '13:56', '否', '北京东', '厦门北', '800', '700', '90', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (21, 'G56', '18:36', '否', '上海西', '深圳', '800', '700', '90', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (22, 'H78', '12:00', '否', '上海', '北京西', '800', '700', '90', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (23, 'H78', '12:00', '否', '上海', '北京西', '800', '700', '90', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (24, 'H78', '12:00', '否', '上海', '北京西', '800', '700', '90', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (25, 'H78', '12:00', '否', '北京西', '南昌', '800', '700', '90', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (26, 'G70', '7:23', '是', '北京西', '厦门', '500', '450', '95', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (27, 'G14', '9:50', '是', '北京西', '上海', '800', '700', '95', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (28, 'G90', '8:30', '是', '北京南', '武昌', '1000', '1000', '100', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (29, 'G25', '7:56', '是', '厦门北', '福州', '500', '100', '20', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (30, 'G50', '14:23', '否', '北京西', '深圳', '500', '100', '20', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (31, 'G10', '13:00', '否', '北京西', '深圳', '500', '100', '20', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (32, 'G10', '13:00', '否', '北京西', '深圳', '500', '100', '20', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (33, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (34, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (35, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (36, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (37, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (38, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (39, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (40, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (41, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (42, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (43, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (44, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (45, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (46, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (47, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (48, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (49, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (50, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (51, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (52, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (53, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (54, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (55, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (56, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (57, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (58, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (59, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (60, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (61, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (62, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (63, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (64, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (65, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (66, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (67, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (68, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (69, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (70, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (71, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (72, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (73, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (74, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (75, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (76, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (77, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (78, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (79, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (80, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (81, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (82, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (83, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (84, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (85, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); +INSERT INTO `rep_demo_jianpiao` VALUES (86, 'G10', '13:00', '否', '北京西', '深圳', '200', '100', '50', 1); + +-- ---------------------------- +-- Table structure for tmp_report_data_1 +-- ---------------------------- +DROP TABLE IF EXISTS `tmp_report_data_1`; +CREATE TABLE `tmp_report_data_1` ( + `monty` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '月份', + `main_income` decimal(10, 2) NULL DEFAULT NULL, + `total` decimal(10, 2) NULL DEFAULT NULL, + `his_lowest` decimal(10, 2) NULL DEFAULT NULL, + `his_average` decimal(10, 2) NULL DEFAULT NULL, + `his_highest` decimal(10, 2) NULL DEFAULT NULL +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of tmp_report_data_1 +-- ---------------------------- +INSERT INTO `tmp_report_data_1` VALUES ('1月', 483834.66, 483834.66, 57569.77, 216797.62, 483834.66); +INSERT INTO `tmp_report_data_1` VALUES ('2月', 11666578.65, 12150413.31, 22140.00, 4985361.57, 11666578.65); +INSERT INTO `tmp_report_data_1` VALUES ('3月', 27080982.08, 39231395.39, 73106.29, 16192642.30, 27080982.08); +INSERT INTO `tmp_report_data_1` VALUES ('4月', 0.00, 39231395.39, 73106.29, 8513415.34, 17428381.40); +INSERT INTO `tmp_report_data_1` VALUES ('5月', 0.00, 39231395.39, NULL, NULL, NULL); +INSERT INTO `tmp_report_data_1` VALUES ('6月', 0.00, 39231395.39, NULL, NULL, NULL); +INSERT INTO `tmp_report_data_1` VALUES ('7月', 0.00, 39231395.39, NULL, NULL, NULL); +INSERT INTO `tmp_report_data_1` VALUES ('8月', 0.00, 39231395.39, NULL, NULL, NULL); +INSERT INTO `tmp_report_data_1` VALUES ('9月', 0.00, 39231395.39, NULL, NULL, NULL); +INSERT INTO `tmp_report_data_1` VALUES ('10月', 0.00, 39231395.39, NULL, NULL, NULL); +INSERT INTO `tmp_report_data_1` VALUES ('11月', 0.00, 39231395.39, NULL, NULL, NULL); +INSERT INTO `tmp_report_data_1` VALUES ('12月', 0.00, 39231395.39, NULL, NULL, NULL); + +-- ---------------------------- +-- Table structure for tmp_report_data_income +-- ---------------------------- +DROP TABLE IF EXISTS `tmp_report_data_income`; +CREATE TABLE `tmp_report_data_income` ( + `biz_income` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + `bx_jj_yongjin` decimal(10, 2) NULL DEFAULT NULL, + `bx_zx_money` decimal(10, 2) NULL DEFAULT NULL, + `chengbao_gz_money` decimal(10, 2) NULL DEFAULT NULL, + `bx_gg_moeny` decimal(10, 2) NULL DEFAULT NULL, + `tb_zx_money` decimal(10, 2) NULL DEFAULT NULL, + `neikong_zx_money` decimal(10, 2) NULL DEFAULT NULL, + `total` decimal(10, 2) NULL DEFAULT NULL +) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Records of tmp_report_data_income +-- ---------------------------- +INSERT INTO `tmp_report_data_income` VALUES ('中国石油全资(集团所属)', 37134.58, 1099273.32, 0.00, 0.00, 0.00, 226415.09, 38460270.57); +INSERT INTO `tmp_report_data_income` VALUES ('中国石油全资(股份所属)', 227595.77, 0.00, 0.00, 0.00, 0.00, 0.00, 227595.77); +INSERT INTO `tmp_report_data_income` VALUES ('中石油控股或有控股权', 310628.11, 369298.64, 0.00, 0.00, 0.00, 0.00, 679926.75); +INSERT INTO `tmp_report_data_income` VALUES ('中石油参股', 72062.45, 0.00, 0.00, 0.00, 0.00, 0.00, 72062.75); +INSERT INTO `tmp_report_data_income` VALUES ('非中石油', 1486526.90, 212070.72, 0.00, 0.00, 0.00, 226415.09, 1698597.62); + +SET FOREIGN_KEY_CHECKS = 1; + diff --git a/db/Dockerfile b/db/Dockerfile index 9b88af324..4271704d7 100644 --- a/db/Dockerfile +++ b/db/Dockerfile @@ -1,4 +1,4 @@ -FROM mysql/mysql-server:8.0.27 +FROM mysql/mysql-server:8.0.29 MAINTAINER lengleng(wangiegie@gmail.com) @@ -25,3 +25,5 @@ COPY ./8pigxx_codegen.sql /docker-entrypoint-initdb.d COPY ./9pigxx_report.sql /docker-entrypoint-initdb.d COPY ./99pigxx_report_init.sql /docker-entrypoint-initdb.d + +COPY ./999pigxx_bi.sql /docker-entrypoint-initdb.d diff --git a/db/v4.2_v4.3_update.sql b/db/v4.2_v4.3_update.sql deleted file mode 100644 index 0fac2ee84..000000000 --- a/db/v4.2_v4.3_update.sql +++ /dev/null @@ -1,299 +0,0 @@ -USE pigxx_config; - -UPDATE `config_info` SET `data_id` = 'application-dev.yml', `group_id` = 'DEFAULT_GROUP', `content` = '# 配置文件加密根密码\njasypt:\n encryptor:\n password: pigx\n algorithm: PBEWithMD5AndDES\n iv-generator-classname: org.jasypt.iv.NoIvGenerator\n\nspring:\n mvc:\n pathmatch:\n matching-strategy: ant_path_matcher\n redis:\n host: pigx-redis\n servlet:\n multipart:\n max-file-size: 100MB\n max-request-size: 100MB\n cloud:\n sentinel:\n eager: true\n filter:\n enabled: false\n transport:\n dashboard: pigx-sentinel:5020\n\n# 端点对外暴露\nmanagement:\n endpoints:\n web:\n exposure:\n include: \'*\' \n endpoint:\n restart:\n enabled: true\n health:\n show-details: ALWAYS\n# feign 相关配置\nfeign:\n sentinel:\n enabled: true\n okhttp:\n enabled: true\n httpclient:\n enabled: false\n client:\n config:\n default:\n connectTimeout: 20000\n readTimeout: 20000\n compression:\n request:\n enabled: true\n response:\n enabled: true\n\n#开启灰度\ngray:\n rule:\n enabled: true\n\n# mybatis-plus 配置\nmybatis-plus:\n tenant-enable: ture\n mapper-locations: classpath:/mapper/*Mapper.xml\n global-config:\n capitalMode: true\n banner: false\n db-config:\n id-type: auto\n select-strategy: not_empty\n insert-strategy: not_empty\n update-strategy: not_empty\n type-handlers-package: com.pig4cloud.pigx.common.data.handler\n configuration:\n jdbc-type-for-null: \'null\'\n call-setters-on-nulls: true\n# swagger 全局配置\nknife4j:\n enable: true\nswagger:\n enabled: true\n title: PigX Swagger API\n license: Powered By PigX\n licenseUrl: https://pig4cloud.com/\n terms-of-service-url: https://pig4cloud.com/\n contact:\n email: wangiegie@gmail.com\n url: https://pig4cloud.com/about.html\n authorization:\n name: oauth2\n auth-regex: ^.*$\n authorization-scope-list:\n - scope: server\n description: server all\n token-url-list:\n - http://${GATEWAY_HOST:pigx-gateway}:${GATEWAY_PORT:9999}/auth/oauth/token\n\n# oauth2 资源服务器相关配置\nsecurity:\n oauth2:\n client:\n ignore-urls:\n - /css/**\n - /error\n - /actuator/**\n - /v2/api-docs\n resource:\n loadBalanced: true\n token-info-uri: http://pigx-auth/oauth/check_token', `md5` = '77d9d4800dc7537704e228f2a04dac55', `gmt_create` = '2019-04-18 02:10:20', `gmt_modified` = '2022-02-13 21:44:06', `src_user` = 'nacos', `src_ip` = '127.0.0.1', `app_name` = '', `tenant_id` = '', `c_desc` = '通用配置文件', `c_use` = 'null', `effect` = 'null', `type` = 'yaml', `c_schema` = 'null' WHERE `id` = 1; -UPDATE `config_info` SET `data_id` = 'pigx-codegen-dev.yml', `group_id` = 'DEFAULT_GROUP', `content` = '## spring security 配置\nsecurity:\n oauth2:\n client:\n client-id: ENC(gPFcUOmJm8WqM3k3eSqS0Q==)\n client-secret: ENC(gPFcUOmJm8WqM3k3eSqS0Q==)\n scope: server\n# 数据源\nspring:\n datasource:\n type: com.alibaba.druid.pool.DruidDataSource\n druid:\n driver-class-name: com.mysql.cj.jdbc.Driver\n username: ${MYSQL_USER:root}\n password: ${MYSQL_PWD:root}\n url: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_codegen}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true\n resources:\n static-locations: classpath:/static/,classpath:/views/\n\n# 租户表维护\npigx:\n tenant:\n column: tenant_id\n tables:\n - gen_datasource_conf\n - gen_form_conf', `md5` = 'ed93a557f5709d65bb45c14e80c7e9e1', `gmt_create` = '2019-04-18 02:12:10', `gmt_modified` = '2022-01-27 21:27:50', `src_user` = 'nacos', `src_ip` = '127.0.0.1', `app_name` = '', `tenant_id` = '', `c_desc` = '代码生成', `c_use` = 'null', `effect` = 'null', `type` = 'yaml', `c_schema` = 'null' WHERE `id` = 3; - --- PIGXX 数据源 - -USE pigxx; - -ALTER TABLE `sys_dept` -DROP COLUMN `sort`, - ADD COLUMN `sort_order` int NOT NULL DEFAULT '0' AFTER `name`, - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `sort_order`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - MODIFY COLUMN `dept_id` bigint NOT NULL FIRST, - MODIFY COLUMN `create_time` datetime NULL DEFAULT NULL AFTER `update_by`, - MODIFY COLUMN `update_time` datetime NULL DEFAULT NULL AFTER `create_time`, - MODIFY COLUMN `parent_id` bigint DEFAULT NULL AFTER `del_flag`, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `parent_id`; - -ALTER TABLE `sys_dept_relation` - MODIFY COLUMN `ancestor` bigint NOT NULL FIRST, - MODIFY COLUMN `descendant` bigint NOT NULL AFTER `ancestor`; - -ALTER TABLE `sys_dict` -DROP COLUMN `type`, - DROP COLUMN `system`, - ADD COLUMN `dict_type` varchar(100) CHARACTER SET utf8mb4 DEFAULT NULL AFTER `id`, - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `description`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - ADD COLUMN `system_flag` char(1) CHARACTER SET utf8mb4 DEFAULT '0' AFTER `remarks`, - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `create_time` datetime NULL DEFAULT NULL AFTER `update_by`, - MODIFY COLUMN `update_time` datetime NULL DEFAULT NULL AFTER `create_time`, - MODIFY COLUMN `tenant_id` bigint NOT NULL DEFAULT '0' AFTER `del_flag`; - -ALTER TABLE `sys_dict_item` -DROP COLUMN `sort`, - DROP COLUMN `value`, - DROP COLUMN `type`, - ADD COLUMN `item_value` varchar(100) CHARACTER SET utf8mb4 DEFAULT NULL AFTER `dict_id`, - ADD COLUMN `dict_type` varchar(100) CHARACTER SET utf8mb4 DEFAULT NULL AFTER `label`, - ADD COLUMN `sort_order` int NOT NULL DEFAULT '0' AFTER `description`, - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `sort_order`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `dict_id` bigint NOT NULL AFTER `id`, - MODIFY COLUMN `create_time` datetime NULL DEFAULT NULL AFTER `update_by`, - MODIFY COLUMN `update_time` datetime NULL DEFAULT NULL AFTER `create_time`, - MODIFY COLUMN `tenant_id` bigint NOT NULL DEFAULT '0' AFTER `del_flag`, -DROP INDEX `sys_dict_del_flag`, - ADD KEY `sys_dict_item_del_flag` (`del_flag`), -DROP INDEX `sys_dict_value`, - ADD KEY `sys_dict_value` (`item_value`); - -ALTER TABLE `sys_file` -DROP COLUMN `create_user`, - DROP COLUMN `update_user`, - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `file_size`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `create_time` datetime NULL DEFAULT NULL AFTER `update_by`, - MODIFY COLUMN `update_time` datetime NULL DEFAULT NULL AFTER `create_time`, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `del_flag`; - -ALTER TABLE `sys_log` -DROP COLUMN `type`, - ADD COLUMN `log_type` char(1) CHARACTER SET utf8mb4 DEFAULT '0' AFTER `id`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `service_id`, - MODIFY COLUMN `create_time` datetime NULL DEFAULT NULL AFTER `update_by`, - MODIFY COLUMN `update_time` datetime NULL DEFAULT NULL AFTER `create_time`, - MODIFY COLUMN `time` bigint DEFAULT NULL AFTER `params`, - MODIFY COLUMN `tenant_id` bigint DEFAULT '0' AFTER `exception`, -DROP INDEX `sys_log_create_by`, -DROP INDEX `sys_log_type`, - ADD KEY `sys_log_type` (`log_type`); - -ALTER TABLE `sys_menu` -DROP COLUMN `type`, - DROP COLUMN `sort`, - ADD COLUMN `sort_order` int DEFAULT '1' AFTER `icon`, - ADD COLUMN `menu_type` char(1) CHARACTER SET utf8mb4 DEFAULT '0' AFTER `keep_alive`, - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `menu_type`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_time`, - MODIFY COLUMN `menu_id` bigint NOT NULL FIRST, - MODIFY COLUMN `parent_id` bigint DEFAULT NULL AFTER `path`, - MODIFY COLUMN `tenant_id` bigint unsigned DEFAULT NULL AFTER `del_flag`; - -ALTER TABLE `sys_oauth_client_details` - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `del_flag`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - ADD COLUMN `create_time` datetime NULL DEFAULT NULL AFTER `update_by`, - ADD COLUMN `update_time` datetime NULL DEFAULT NULL AFTER `create_time`, - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint NOT NULL DEFAULT '0' AFTER `update_time`; - -ALTER TABLE `sys_public_param` -DROP COLUMN `system`, - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `validate_code`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - ADD COLUMN `system_flag` char(1) CHARACTER SET utf8mb4 DEFAULT '0' AFTER `public_type`, - MODIFY COLUMN `public_id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `del_flag`; - -ALTER TABLE `sys_role` - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `ds_scope`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - MODIFY COLUMN `role_id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `del_flag`; - -ALTER TABLE `sys_role_menu` - MODIFY COLUMN `role_id` bigint NOT NULL FIRST, - MODIFY COLUMN `menu_id` bigint NOT NULL AFTER `role_id`; - -ALTER TABLE `sys_route_conf` -DROP COLUMN `order`, - ADD COLUMN `sort_order` int DEFAULT '0' AFTER `uri`, - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `metadata`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `sys_social_details` - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `redirect_url`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint NOT NULL DEFAULT '0' AFTER `del_flag`; - -ALTER TABLE `sys_tenant` - ADD COLUMN `create_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `del_flag`, - ADD COLUMN `update_by` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `sys_user` ADD COLUMN `nickname` VARCHAR (64) CHARACTER - SET utf8mb4 DEFAULT NULL COMMENT '拓展字段:昵称' AFTER `username`, - ADD COLUMN `name` VARCHAR (64) CHARACTER -SET utf8mb4 DEFAULT NULL COMMENT '拓展字段:姓名' AFTER `nickname`, - ADD COLUMN `email` VARCHAR (128) CHARACTER -SET utf8mb4 DEFAULT NULL COMMENT '拓展字段:邮箱' AFTER `name`, - ADD COLUMN `create_by` VARCHAR (64) CHARACTER -SET utf8 NOT NULL DEFAULT ' ' AFTER `dept_id`, - ADD COLUMN `update_by` VARCHAR (64) CHARACTER -SET utf8 NOT NULL DEFAULT ' ' AFTER `create_by`, - MODIFY COLUMN `user_id` BIGINT NOT NULL FIRST, - MODIFY COLUMN `dept_id` BIGINT DEFAULT NULL AFTER `email`, - MODIFY COLUMN `tenant_id` BIGINT NOT NULL DEFAULT '0' AFTER `osc_id`; - -ALTER TABLE `sys_user_role` - MODIFY COLUMN `user_id` bigint NOT NULL FIRST, - MODIFY COLUMN `role_id` bigint NOT NULL AFTER `user_id`; - -INSERT INTO `sys_menu` VALUES (6800, '标签管理', NULL, '/mp/wx-account-tag/index', 6000, 'icon-huifu', 998, '0', '0', ' ', '2020-04-27 15:25:17', ' ', '2020-05-09 03:16:16', '0', 1); -INSERT INTO `sys_menu` VALUES (6801, '新增标签', 'mp_wx_account_tag_add', NULL, 6800, NULL, 1, '0', '1', ' ', '2019-03-29 15:43:54', ' ', '2020-03-24 08:58:39', '0', 1); -INSERT INTO `sys_menu` VALUES (6802, '编辑标签', 'mp_wx_account_tag_edit', NULL, 6800, NULL, 1, '0', '1', ' ', '2019-03-29 15:43:54', ' ', '2020-03-24 08:58:39', '0', 1); -INSERT INTO `sys_menu` VALUES (6803, '删除标签', 'mp_wx_account_tag_del', NULL, 6800, NULL, 1, '0', '1', ' ', '2019-03-29 15:43:54', ' ', '2020-03-24 08:58:39', '0', 1); -INSERT INTO `sys_menu` VALUES (6804, '同步标签', 'mp_wx_account_tag_sync', NULL, 6800, NULL, 1, '0', '1', ' ', '2019-03-29 15:43:54', ' ', '2022-02-17 15:44:24', '0', 1); -INSERT INTO `sys_oauth_client_details` VALUES (7, 'social', NULL, 'social', 'server', 'password,refresh_token,mobile', NULL, NULL, NULL, NULL, '{ \"enc_flag\":\"1\",\"captcha_flag\":\"0\"}', 'true', '0', ' ', ' ', NULL, NULL, 1); - --- pigxx_ac -USE pigxx_ac; -ALTER TABLE `oa_leave_bill` - MODIFY COLUMN `leave_id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `del_flag`; - --- pigxx_codegen -USE pigxx_codegen; -ALTER TABLE `gen_datasource_conf` -DROP COLUMN `update_date`, - DROP COLUMN `create_date`, - ADD COLUMN `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP AFTER `password`, - ADD COLUMN `update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP AFTER `create_time`, - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `del_flag`; - -ALTER TABLE `gen_form_conf` - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `del_flag`; - --- pigxx_job -USE pigxx_job; -ALTER TABLE `sys_job` - MODIFY COLUMN `job_id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT '1' AFTER `next_time`; - -ALTER TABLE `sys_job_log` - MODIFY COLUMN `job_log_id` bigint NOT NULL FIRST, - MODIFY COLUMN `job_id` bigint NOT NULL AFTER `job_log_id`, - MODIFY COLUMN `tenant_id` bigint NOT NULL DEFAULT '1' AFTER `create_time`; - --- pigxx_mp -USE pigxx_mp; - -ALTER TABLE `wx_account` - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP AFTER `qr_url`, - MODIFY COLUMN `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP AFTER `create_time`, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `del_flag`; - -ALTER TABLE `wx_account_fans` - ADD COLUMN `tag_ids` varchar(255) CHARACTER SET utf8mb4 DEFAULT NULL AFTER `city`, - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `wx_account_id` bigint DEFAULT NULL AFTER `remark`, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `del_flag`; - -CREATE TABLE IF NOT EXISTS `wx_account_tag` ( - `id` bigint NOT NULL, - `tag` varchar(100) CHARACTER SET utf8mb4 NOT NULL, - `create_by` varchar(64) CHARACTER SET utf8mb4 NOT NULL, - `update_by` varchar(64) CHARACTER SET utf8mb4 NOT NULL, - `create_time` datetime NOT NULL, - `update_time` datetime NOT NULL, - `del_flag` char(1) CHARACTER SET utf8mb4 NOT NULL, - `tenant_id` bigint NOT NULL, - `wx_account_id` bigint NOT NULL, - `wx_account_name` varchar(255) CHARACTER SET utf8mb4 NOT NULL, - `wx_account_appid` varchar(255) CHARACTER SET utf8mb4 NOT NULL, - `tag_id` bigint NOT NULL, - PRIMARY KEY (`id`) - ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; - -ALTER TABLE `wx_auto_reply` - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `update_time`; - -ALTER TABLE `wx_mp_menu` - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `wx_account_id` bigint DEFAULT NULL AFTER `menu`, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `pub_flag`; - -ALTER TABLE `wx_msg` - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `update_time`; - --- pigxx_pay -USE pigxx_pay; -ALTER TABLE `pay_channel` - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `update_time`; - -ALTER TABLE `pay_goods_order` - MODIFY COLUMN `goods_order_id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `update_time`; - -ALTER TABLE `pay_notify_record` - MODIFY COLUMN `id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `update_time`; - -ALTER TABLE `pay_refund_order` - MODIFY COLUMN `refund_order_id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `update_time`; - -ALTER TABLE `pay_sequence` - MODIFY COLUMN `name` varchar(32) NOT NULL AFTER `value`; - -ALTER TABLE `pay_trade_order` - MODIFY COLUMN `order_id` bigint NOT NULL FIRST, - MODIFY COLUMN `tenant_id` bigint DEFAULT NULL AFTER `del_flag`; - --- pigxx_report -USE pigxx_report; - -ALTER TABLE `gaea_dict` - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `gaea_dict_item` - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `gaea_file` - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `gaea_report` - ADD COLUMN `report_author` varchar(255) CHARACTER SET utf8 DEFAULT NULL AFTER `report_desc`, - ADD COLUMN `download_count` bigint DEFAULT NULL AFTER `report_author`, - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `gaea_report_dashboard` - MODIFY COLUMN `id` bigint NOT NULL FIRST, -DROP INDEX `UNIQUE_REPORT_CODE`, - ADD UNIQUE KEY `UNIQUE_DASHBOARD_REPORT_CODE` (`report_code`); - -ALTER TABLE `gaea_report_dashboard_widget` - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `gaea_report_data_set` - ADD COLUMN `set_type` varchar(10) CHARACTER SET utf8 DEFAULT NULL AFTER `version`, - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `gaea_report_data_set_param` - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `gaea_report_data_set_transform` - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `gaea_report_data_source` - MODIFY COLUMN `id` bigint NOT NULL FIRST; - -ALTER TABLE `gaea_report_share` - MODIFY COLUMN `id` bigint NOT NULL FIRST; diff --git a/docker-compose.yml b/docker-compose.yml index 37ecea8a3..5361d4d04 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,4 +1,4 @@ -# 使用说明 V4.2.0 +# 使用说明 V4.4.0 # 1. 使用docker-compose 宿主机不需要配置host来发现 # 2. 无需修改源码,根目录 docker-compose up 即可 # 3. 静静等待服务启动 @@ -27,21 +27,6 @@ services: ports: - 6379:6379 - pigx-minio: - container_name: pigx-minio - image: minio/minio:RELEASE.2021-12-27T07-23-18Z.fips - command: server /data --console-address ":9001" - ports: - - 9000:9000 - - 9001:9001 - volumes: - - ./data:/data - - ./config:/root/.minio - environment: - - MINIO_DOMAIN=pigx-minio - - MINIO_ROOT_USER=lengleng - - MINIO_ROOT_PASSWORD=lengleng - pigx-register: build: context: ./pigx-register @@ -125,15 +110,6 @@ services: image: pigx-oa-platform container_name: pigx-oa-platform - pigx-bi-platform: - build: - context: ./pigx-visual/pigx-bi-platform - restart: always - image: pigx-bi-platform - container_name: pigx-bi-platform - ports: - - 5006:5006 - pigx-report-platform: build: context: ./pigx-visual/pigx-report-platform @@ -143,6 +119,15 @@ services: ports: - 9095:9095 + pigx-jimu-platform: + build: + context: ./pigx-visual/pigx-jimu-platform + restart: always + image: pigx-jimu-platform + container_name: pigx-jimu-platform + ports: + - 5008:5008 + pigxx-job: build: context: ./pigx-visual/pigx-xxl-job-admin @@ -153,16 +138,6 @@ services: ports: - 9080:9080 - pigx-tx-manager: - build: - context: ./pigx-visual/pigx-tx-manager - restart: always - image: pigx-tx-manager - container_name: pigx-tx-manager - ports: - - 5004:5004 - - 9998:9998 - pigx-sentinel: build: context: ./pigx-visual/pigx-sentinel-dashboard diff --git a/pigx-auth/pom.xml b/pigx-auth/pom.xml index 27fa5ac9a..532137170 100644 --- a/pigx-auth/pom.xml +++ b/pigx-auth/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx - 4.3.0 + 4.4.0 pigx-auth diff --git a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/config/AuthorizationServerConfiguration.java b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/config/AuthorizationServerConfiguration.java index e675d14fd..fde86b55f 100644 --- a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/config/AuthorizationServerConfiguration.java +++ b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/config/AuthorizationServerConfiguration.java @@ -30,9 +30,6 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.HttpMethod; import org.springframework.security.authentication.AuthenticationManager; -import org.springframework.security.authentication.ProviderManager; -import org.springframework.security.core.userdetails.UserDetailsByNameServiceWrapper; -import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.oauth2.config.annotation.configurers.ClientDetailsServiceConfigurer; import org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerConfigurerAdapter; import org.springframework.security.oauth2.config.annotation.web.configuration.EnableAuthorizationServer; @@ -44,11 +41,9 @@ import org.springframework.security.oauth2.provider.TokenGranter; import org.springframework.security.oauth2.provider.code.AuthorizationCodeServices; import org.springframework.security.oauth2.provider.token.TokenEnhancer; import org.springframework.security.oauth2.provider.token.TokenStore; -import org.springframework.security.web.authentication.preauth.PreAuthenticatedAuthenticationProvider; import java.util.ArrayList; import java.util.Arrays; -import java.util.Collections; /** * @author lengleng @@ -63,8 +58,6 @@ public class AuthorizationServerConfiguration extends AuthorizationServerConfigu private final AuthenticationManager authenticationManagerBean; - private final UserDetailsService pigxUserDetailsService; - private final AuthorizationCodeServices authorizationCodeServices; private final AuthenticationManager authenticationManager; @@ -124,16 +117,7 @@ public class AuthorizationServerConfiguration extends AuthorizationServerConfigu tokenServices.setReuseRefreshToken(false); tokenServices.setClientDetailsService(pigxClientDetailsServiceImpl); tokenServices.setTokenEnhancer(tokenEnhancer); - addUserDetailsService(tokenServices, pigxUserDetailsService); return tokenServices; } - private void addUserDetailsService(PigxCustomTokenServices tokenServices, UserDetailsService userDetailsService) { - if (userDetailsService != null) { - PreAuthenticatedAuthenticationProvider provider = new PreAuthenticatedAuthenticationProvider(); - provider.setPreAuthenticatedUserDetailsService(new UserDetailsByNameServiceWrapper<>(userDetailsService)); - tokenServices.setAuthenticationManager(new ProviderManager(Collections.singletonList(provider))); - } - } - } diff --git a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/endpoint/PigxTokenEndpoint.java b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/endpoint/PigxTokenEndpoint.java index 8422580d8..64cf631b5 100644 --- a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/endpoint/PigxTokenEndpoint.java +++ b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/endpoint/PigxTokenEndpoint.java @@ -140,4 +140,15 @@ public class PigxTokenEndpoint { return dealService.queryToken(page); } + /** + * 查询token + * @param token + * @return + */ + @Inner + @GetMapping("/query-token") + public R queryToken(String token) { + return dealService.queryTokenInfo(token); + } + } diff --git a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationFailureLockEventHandler.java b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationFailureLockEventHandler.java new file mode 100644 index 000000000..c6336f901 --- /dev/null +++ b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationFailureLockEventHandler.java @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2018-2025, lengleng All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the pig4cloud.com developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: lengleng (wangiegie@gmail.com) + */ + +package com.pig4cloud.pigx.auth.handler; + +import com.pig4cloud.pigx.admin.api.feign.RemoteUserService; +import com.pig4cloud.pigx.common.core.constant.CacheConstants; +import com.pig4cloud.pigx.common.core.constant.SecurityConstants; +import com.pig4cloud.pigx.common.core.util.KeyStrResolver; +import com.pig4cloud.pigx.common.data.resolver.ParamResolver; +import com.pig4cloud.pigx.common.security.handler.AuthenticationFailureHandler; +import lombok.AllArgsConstructor; +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.scheduling.annotation.Async; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.stereotype.Component; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.concurrent.TimeUnit; + +/** + * @author lengleng + * @date 2022-04-11 + * + * 登录操作次数锁定功能 + */ +@Slf4j +@Component +@AllArgsConstructor +public class PigxAuthenticationFailureLockEventHandler implements AuthenticationFailureHandler { + + private final RedisTemplate redisTemplate; + + private final KeyStrResolver tenantKeyStrResolver; + + private final RemoteUserService userService; + + /** + * 密码错误超过 5 此自动锁定 + *

+ * @param authenticationException 登录的authentication 对象 + * @param authentication 登录的authenticationException 对象 + * @param request 请求 + * @param response 响应 + */ + @Async + @Override + @SneakyThrows + public void handle(AuthenticationException authenticationException, Authentication authentication, + HttpServletRequest request, HttpServletResponse response) { + // 只处理账号密码错误异常 + if (!(authenticationException instanceof BadCredentialsException)) { + return; + } + + String username = authentication.getName(); + String key = String.format("%s:%s:%s", CacheConstants.LOGIN_ERROR_TIMES, tenantKeyStrResolver.key(), username); + Long deltaTimes = ParamResolver.getLong("LOGIN_ERROR_TIMES", 5L); + Long times = redisTemplate.opsForValue().increment(key); + + // 自动过期时间 + Long deltaTime = ParamResolver.getLong("DELTA_TIME", 1L); + redisTemplate.expire(key, deltaTime, TimeUnit.HOURS); + + if (deltaTimes <= times) { + userService.lockUser(username, SecurityConstants.FROM_IN); + } + } + +} diff --git a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationFailureEventHandler.java b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationFailureLogEventHandler.java similarity index 96% rename from pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationFailureEventHandler.java rename to pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationFailureLogEventHandler.java index a43b85fa4..f27f52915 100644 --- a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationFailureEventHandler.java +++ b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationFailureLogEventHandler.java @@ -44,7 +44,7 @@ import javax.servlet.http.HttpServletResponse; @Slf4j @Component @AllArgsConstructor -public class PigxAuthenticationFailureEventHandler implements AuthenticationFailureHandler { +public class PigxAuthenticationFailureLogEventHandler implements AuthenticationFailureHandler { private final RemoteLogService logService; diff --git a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationSuccessLockEventHandler.java b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationSuccessLockEventHandler.java new file mode 100644 index 000000000..df9f86743 --- /dev/null +++ b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationSuccessLockEventHandler.java @@ -0,0 +1,64 @@ +/* + * Copyright (c) 2018-2025, lengleng All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the pig4cloud.com developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: lengleng (wangiegie@gmail.com) + */ + +package com.pig4cloud.pigx.auth.handler; + +import com.pig4cloud.pigx.common.core.constant.CacheConstants; +import com.pig4cloud.pigx.common.core.util.KeyStrResolver; +import com.pig4cloud.pigx.common.security.handler.AuthenticationSuccessHandler; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.scheduling.annotation.Async; +import org.springframework.security.core.Authentication; +import org.springframework.stereotype.Component; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * @author lengleng + * @date 2022-04-11 + * + * 登录操作次数锁定清楚功能 + */ +@Slf4j +@Component +@AllArgsConstructor +public class PigxAuthenticationSuccessLockEventHandler implements AuthenticationSuccessHandler { + + private final RedisTemplate redisTemplate; + + private final KeyStrResolver tenantKeyStrResolver; + + /** + * 处理登录成功方法 + *

+ * 获取到登录的authentication 对象 + * @param authentication 登录对象 + * @param request 请求 + * @param response 返回 + */ + @Async + @Override + public void handle(Authentication authentication, HttpServletRequest request, HttpServletResponse response) { + String username = authentication.getName(); + String key = String.format("%s:%s:%s", CacheConstants.LOGIN_ERROR_TIMES, tenantKeyStrResolver.key(), username); + redisTemplate.delete(key); + } + +} diff --git a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationSuccessEventHandler.java b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationSuccessLogEventHandler.java similarity index 94% rename from pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationSuccessEventHandler.java rename to pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationSuccessLogEventHandler.java index a59d44762..d4d804500 100644 --- a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationSuccessEventHandler.java +++ b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/handler/PigxAuthenticationSuccessLogEventHandler.java @@ -36,12 +36,14 @@ import javax.servlet.http.HttpServletResponse; /** * @author lengleng - * @date 2018/10/8 + * @date 2022-04-11 + * + * 登录成功日志记录 */ @Slf4j @Component @AllArgsConstructor -public class PigxAuthenticationSuccessEventHandler implements AuthenticationSuccessHandler { +public class PigxAuthenticationSuccessLogEventHandler implements AuthenticationSuccessHandler { private final RemoteLogService logService; diff --git a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/service/PigxTokenDealServiceImpl.java b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/service/PigxTokenDealServiceImpl.java index 37d26e785..e379d8ac1 100644 --- a/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/service/PigxTokenDealServiceImpl.java +++ b/pigx-auth/src/main/java/com/pig4cloud/pigx/auth/service/PigxTokenDealServiceImpl.java @@ -8,6 +8,7 @@ import com.pig4cloud.pigx.common.core.constant.CacheConstants; import com.pig4cloud.pigx.common.core.constant.SecurityConstants; import com.pig4cloud.pigx.common.core.util.KeyStrResolver; import com.pig4cloud.pigx.common.core.util.R; +import com.pig4cloud.pigx.common.core.util.RetOps; import com.pig4cloud.pigx.common.core.util.SpringContextHolder; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -26,6 +27,7 @@ import org.springframework.security.oauth2.provider.token.TokenStore; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.stream.Collectors; @@ -85,10 +87,16 @@ public class PigxTokenDealServiceImpl { * @return R */ public R queryTokenByUsername(Page page, String username) { - List oAuth2AccessTokenList = clientDetailsService - .listClientDetails(SecurityConstants.FROM_IN).getData().stream().map(SysOauthClientDetails::getClientId) + // @formatter:off + List oAuth2AccessTokenList = + RetOps.of(clientDetailsService.listClientDetails(SecurityConstants.FROM_IN)) + .getData() + .orElseGet(Collections::emptyList) + .stream().map(SysOauthClientDetails::getClientId) .flatMap(clientId -> tokenStore.findTokensByClientIdAndUserName(clientId, username).stream()).distinct() .collect(Collectors.toList()); + // @formatter:on + page.setRecords(oAuth2AccessTokenList); page.setTotal(oAuth2AccessTokenList.size()); return R.ok(page); @@ -150,4 +158,9 @@ public class PigxTokenDealServiceImpl { return result; } + public R queryTokenInfo(String token) { + OAuth2AccessToken oAuth2AccessToken = tokenStore.readAccessToken(token); + return R.ok(oAuth2AccessToken); + } + } diff --git a/pigx-auth/src/main/resources/bootstrap.yml b/pigx-auth/src/main/resources/application.yml similarity index 57% rename from pigx-auth/src/main/resources/bootstrap.yml rename to pigx-auth/src/main/resources/application.yml index f2c880673..ba232cd41 100644 --- a/pigx-auth/src/main/resources/bootstrap.yml +++ b/pigx-auth/src/main/resources/application.yml @@ -10,8 +10,7 @@ spring: server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ \ No newline at end of file + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml \ No newline at end of file diff --git a/pigx-auth/src/main/resources/logback-spring.xml b/pigx-auth/src/main/resources/logback-spring.xml index 998f18b5c..ef137181c 100644 --- a/pigx-auth/src/main/resources/logback-spring.xml +++ b/pigx-auth/src/main/resources/logback-spring.xml @@ -83,5 +83,6 @@ + diff --git a/pigx-auth/src/main/resources/templates/ftl/login.ftl b/pigx-auth/src/main/resources/templates/ftl/login.ftl index eb8ee73fa..5bf8c09a1 100755 --- a/pigx-auth/src/main/resources/templates/ftl/login.ftl +++ b/pigx-auth/src/main/resources/templates/ftl/login.ftl @@ -22,7 +22,7 @@ <#if tenantList??> @@ -32,7 +32,7 @@ <#if error??> - ${error} + ${error?html} diff --git a/pigx-common/pigx-common-bom/pom.xml b/pigx-common/pigx-common-bom/pom.xml index 21ecb9511..2ebf6a1de 100644 --- a/pigx-common/pigx-common-bom/pom.xml +++ b/pigx-common/pigx-common-bom/pom.xml @@ -6,7 +6,7 @@ group.springframework spring-cloud-dependencies-parent - 2021.0.1 + 2021.0.2 @@ -17,16 +17,17 @@ pigx 公共版本控制 - 4.3.0 + 4.4.0 3.5.1 3.4.1 - 1.2.8 - 5.7.21 - 8.0.27 + 1.2.9 + 5.8.0 + 8.0.29 21.3.0.0 8.4.1.jre8 + 8.1.2.79 1.5.22 - 4.2.0 + 4.3.0 2.8.0 3.0.3 1.13.1 @@ -35,10 +36,13 @@ 2.3.0 3.0.52.ALL 1.11.543 + 1.4.2 + 7.1 2.17.1 0.0.23 0.33.0 1.0.0 + 1.8.4 @@ -115,7 +119,7 @@ com.pig4cloud - pigx-common-transaction + pigx-common-seata ${pigx.version} @@ -143,6 +147,17 @@ pigx-upms-api ${pigx.version} + + org.ow2.asm + asm + ${asm.version} + + + + io.seata + seata-serializer-kryo + ${seata.version} + com.baomidou @@ -189,6 +204,12 @@ mssql-jdbc ${sqlserver.version} + + + com.dameng + DmJdbcDriver18 + ${dm.version} + com.alibaba @@ -212,6 +233,11 @@ weixin-java-mp ${mp.weixin.version} + + com.github.binarywang + weixin-java-cp + ${mp.weixin.version} + com.github.binarywang weixin-java-common @@ -267,6 +293,41 @@ pom import + + com.alibaba.csp + sentinel-core + ${sentinel.version} + pom + import + + + com.alibaba.csp + sentinel-web-servlet + ${sentinel.version} + pom + import + + + com.alibaba.csp + sentinel-transport-simple-http + ${sentinel.version} + pom + import + + + com.alibaba.csp + sentinel-parameter-flow-control + ${sentinel.version} + pom + import + + + com.alibaba.csp + sentinel-api-gateway-adapter-common + ${sentinel.version} + pom + import + diff --git a/pigx-common/pigx-common-core/pom.xml b/pigx-common/pigx-common-core/pom.xml index b2e1bd3a5..e97ae1a21 100644 --- a/pigx-common/pigx-common-core/pom.xml +++ b/pigx-common/pigx-common-core/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-core diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/CacheConstants.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/CacheConstants.java index a377086a6..50b2938ce 100644 --- a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/CacheConstants.java +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/CacheConstants.java @@ -95,4 +95,9 @@ public interface CacheConstants { */ String CLIENT_FLAG = "client_config_flag"; + /** + * 登录错误次数 + */ + String LOGIN_ERROR_TIMES = "login_error_times"; + } diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/CommonConstants.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/CommonConstants.java index 7926ece5a..987337d68 100644 --- a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/CommonConstants.java +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/CommonConstants.java @@ -70,6 +70,11 @@ public interface CommonConstants { */ String FRONT_END_PROJECT = "pigx-ui"; + /** + * 移动端工程名 + */ + String UNI_END_PROJECT = "pigx-app"; + /** * 后端工程名 */ diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/SecurityConstants.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/SecurityConstants.java index e7f4cda77..c03c01a49 100644 --- a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/SecurityConstants.java +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/SecurityConstants.java @@ -139,6 +139,31 @@ public interface SecurityConstants { */ String OSC_USER_INFO_URL = "https://www.oschina.net/action/openapi/user?access_token=%s&dataType=json"; + /** + * 钉钉获取 token + */ + String DING_OLD_GET_TOKEN = "https://oapi.dingtalk.com/gettoken"; + + /** + * 钉钉同步角色列表 + */ + String DING_OLD_ROLE_URL = "https://oapi.dingtalk.com/topapi/role/list"; + + /** + * 钉钉同步部门列表 + */ + String DING_OLD_DEPT_URL = "https://oapi.dingtalk.com/topapi/v2/department/listsub"; + + /** + * 钉钉部门用户id列表 + */ + String DING_DEPT_USERIDS_URL = "https://oapi.dingtalk.com/topapi/user/listid"; + + /** + * 钉钉用户详情 + */ + String DING_USER_INFO_URL = "https://oapi.dingtalk.com/topapi/v2/user/get"; + /** * {bcrypt} 加密的特征码 */ diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/enums/LoginTypeEnum.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/enums/LoginTypeEnum.java index 447626882..60b604054 100644 --- a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/enums/LoginTypeEnum.java +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/enums/LoginTypeEnum.java @@ -63,6 +63,15 @@ public enum LoginTypeEnum { */ OSC("OSC", "开源中国登录"), + /** + * 钉钉 + */ + DINGTALK("DINGTALK", "钉钉"), + + /** + * 企业微信 + */ + WEIXIN_CP("WEIXIN_CP", "企业微信"), /** * CAS 登录 */ diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/enums/StyleTypeEnum.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/enums/StyleTypeEnum.java index b92180589..90e9f516d 100644 --- a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/enums/StyleTypeEnum.java +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/constant/enums/StyleTypeEnum.java @@ -21,7 +21,12 @@ public enum StyleTypeEnum { /** * 前端类型-element 风格 */ - ELEMENT("1", "element 风格"); + ELEMENT("1", "element 风格"), + + /** + * 前端风格-uview 风格 + */ + UVIEW("2", "uview 风格"); /** * 类型 diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/exception/ErrorCodes.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/exception/ErrorCodes.java new file mode 100644 index 000000000..c6680897d --- /dev/null +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/exception/ErrorCodes.java @@ -0,0 +1,103 @@ +package com.pig4cloud.pigx.common.core.exception; + +/** + * 错误编码 + * + * @author lengleng + * @date 2022/3/30 + */ +public interface ErrorCodes { + + /** + * 系统编码错误 + */ + String SYS_PARAM_CONFIG_ERROR = "sys.param.config.error"; + + /** + * 系统内置参数不能删除 + */ + String SYS_PARAM_DELETE_SYSTEM = "sys.param.delete.system"; + + /** + * 用户已存在 + */ + String SYS_USER_USERNAME_EXISTING = "sys.user.username.existing"; + + /** + * 用户原密码错误,修改失败 + */ + String SYS_USER_UPDATE_PASSWORDERROR = "sys.user.update.passwordError"; + + /** + * 用户信息为空 + */ + String SYS_USER_USERINFO_EMPTY = "sys.user.userInfo.empty"; + + /** + * 获取当前用户信息失败 + */ + String SYS_USER_QUERY_ERROR = "sys.user.query.error"; + + String SYS_USER_IMPORT_SUCCEED = "sys.user.import.succeed"; + + /** + * 部门名称不存在 + */ + String SYS_DEPT_DEPTNAME_INEXISTENCE = "sys.dept.deptName.inexistence"; + + /** + * 岗位名称不存在 + */ + String SYS_POST_POSTNAME_INEXISTENCE = "sys.post.postName.inexistence"; + + /** + * 岗位名称或编码已经存在 + */ + String SYS_POST_NAMEORCODE_EXISTING = "sys.post.nameOrCode.existing"; + + /** + * 角色名称不存在 + */ + String SYS_ROLE_ROLENAME_INEXISTENCE = "sys.role.roleName.inexistence"; + + /** + * 角色名或角色编码已经存在 + */ + String SYS_ROLE_NAMEORCODE_EXISTING = "sys.role.nameOrCode.existing"; + + /** + * 菜单存在下级节点 删除失败 + */ + String SYS_MENU_DELETE_EXISTING = "sys.menu.delete.existing"; + + /** + * 系统内置字典不允许删除 + */ + String SYS_DICT_DELETE_SYSTEM = "sys.dict.delete.system"; + + /** + * 系统内置字典不能修改 + */ + String SYS_DICT_UPDATE_SYSTEM = "sys.dict.update.system"; + + /** + * 验证码发送频繁 + */ + String SYS_APP_SMS_OFTEN = "sys.app.sms.often"; + + /** + * 手机号未注册 + */ + String SYS_APP_PHONE_UNREGISTERED = "sys.app.phone.unregistered"; + + /** + * 企微调用接口错误 + */ + String SYS_CONNECT_CP_DEPT_SYNC_ERROR = "sys.connect.cp.dept.sync.error"; + + /** + * 企微调用接口错误 + */ + String SYS_CONNECT_CP_USER_SYNC_ERROR = "sys.connect.cp.user.sync.error"; + +} diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/factory/YamlPropertySourceFactory.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/factory/YamlPropertySourceFactory.java new file mode 100644 index 000000000..22f32b9b3 --- /dev/null +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/factory/YamlPropertySourceFactory.java @@ -0,0 +1,44 @@ +package com.pig4cloud.pigx.common.core.factory; + +import org.springframework.beans.factory.config.YamlPropertiesFactoryBean; +import org.springframework.core.env.PropertiesPropertySource; +import org.springframework.core.env.PropertySource; +import org.springframework.core.io.support.EncodedResource; +import org.springframework.core.io.support.PropertySourceFactory; +import org.springframework.lang.Nullable; + +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.Properties; + +/** + * @author lengleng + * @date 2022/3/29 + *

+ * 读取自定义 yaml 文件工厂类 + */ +public class YamlPropertySourceFactory implements PropertySourceFactory { + + @Override + public PropertySource createPropertySource(@Nullable String name, EncodedResource resource) throws IOException { + Properties propertiesFromYaml = loadYamlIntoProperties(resource); + String sourceName = name != null ? name : resource.getResource().getFilename(); + return new PropertiesPropertySource(sourceName, propertiesFromYaml); + } + + private Properties loadYamlIntoProperties(EncodedResource resource) throws FileNotFoundException { + try { + YamlPropertiesFactoryBean factory = new YamlPropertiesFactoryBean(); + factory.setResources(resource.getResource()); + factory.afterPropertiesSet(); + return factory.getObject(); + } + catch (IllegalStateException e) { + Throwable cause = e.getCause(); + if (cause instanceof FileNotFoundException) + throw (FileNotFoundException) e.getCause(); + throw e; + } + } + +} diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/MsgUtils.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/MsgUtils.java new file mode 100644 index 000000000..9ee192ce3 --- /dev/null +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/MsgUtils.java @@ -0,0 +1,37 @@ +package com.pig4cloud.pigx.common.core.util; + +import lombok.experimental.UtilityClass; +import org.springframework.context.MessageSource; + +import java.util.Locale; + +/** + * i18n 工具类 + * + * @author lengleng + * @date 2022/3/30 + */ +@UtilityClass +public class MsgUtils { + + /** + * 通过code 获取中文错误信息 + * @param code + * @return + */ + public String getMessage(String code) { + MessageSource messageSource = SpringContextHolder.getBean("messageSource"); + return messageSource.getMessage(code, null, Locale.CHINA); + } + + /** + * 通过code 和参数获取中文错误信息 + * @param code + * @return + */ + public String getMessage(String code, Object... objects) { + MessageSource messageSource = SpringContextHolder.getBean("messageSource"); + return messageSource.getMessage(code, objects, Locale.CHINA); + } + +} diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/R.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/R.java index cc5a6ef4d..0dee9033a 100644 --- a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/R.java +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/R.java @@ -86,7 +86,7 @@ public class R implements Serializable { return restResult(data, CommonConstants.FAIL, msg); } - private static R restResult(T data, int code, String msg) { + static R restResult(T data, int code, String msg) { R apiResult = new R<>(); apiResult.setCode(code); apiResult.setData(data); diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/RetOps.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/RetOps.java new file mode 100644 index 000000000..6e0b2962c --- /dev/null +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/RetOps.java @@ -0,0 +1,289 @@ +/* + * + * Copyright (c) 2018-2025, lengleng All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the pig4cloud.com developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: lengleng (wangiegie@gmail.com) + * + */ + +package com.pig4cloud.pigx.common.core.util; + +import cn.hutool.core.util.ObjectUtil; +import com.pig4cloud.pigx.common.core.constant.CommonConstants; + +import java.util.Arrays; +import java.util.Objects; +import java.util.Optional; +import java.util.function.Consumer; +import java.util.function.Function; +import java.util.function.Predicate; + +/** + * 简化{@code R} 的访问操作,例子

+ * R result = R.ok(0);
+ * // 使用场景1: 链式操作: 断言然后消费
+ * RetOps.of(result)
+ * 		.assertCode(-1,r -> new RuntimeException("error "+r.getCode()))
+ * 		.assertDataNotEmpty(r -> new IllegalStateException("oops!"))
+ * 		.useData(System.out::println);
+ *
+ * // 使用场景2: 读取原始值(data),这里返回的是Optional
+ * RetOps.of(result).getData().orElse(null);
+ *
+ * // 使用场景3: 类型转换
+ * R s = RetOps.of(result)
+ *        .assertDataNotNull(r -> new IllegalStateException("nani??"))
+ *        .map(i -> Integer.toHexString(i))
+ *        .peek();
+ * 
+ * + * @author CJ (power4j@outlook.com) + * @date 2022/5/12 + * @since 4.4 + */ +public class RetOps { + + /** 状态码为成功 */ + public static final Predicate> CODE_SUCCESS = r -> CommonConstants.SUCCESS == r.getCode(); + + /** 数据有值 */ + public static final Predicate> HAS_DATA = r -> ObjectUtil.isNotEmpty(r.getData()); + + /** 数据有值,并且包含元素 */ + public static final Predicate> HAS_ELEMENT = r -> ObjectUtil.isNotEmpty(r.getData()); + + /** 状态码为成功并且有值 */ + public static final Predicate> DATA_AVAILABLE = CODE_SUCCESS.and(HAS_DATA); + + private final R original; + + // ~ 初始化 + // =================================================================================================== + + RetOps(R original) { + this.original = original; + } + + public static RetOps of(R original) { + return new RetOps<>(Objects.requireNonNull(original)); + } + + // ~ 杂项方法 + // =================================================================================================== + + /** + * 观察原始值 + * @return R + */ + public R peek() { + return original; + } + + /** + * 读取{@code code}的值 + * @return 返回code的值 + */ + public int getCode() { + return original.getCode(); + } + + /** + * 读取{@code data}的值 + * @return 返回 Optional 包装的data + */ + public Optional getData() { + return Optional.of(original.getData()); + } + + /** + * 有条件地读取{@code data}的值 + * @param predicate 断言函数 + * @return 返回 Optional 包装的data,如果断言失败返回empty + */ + public Optional getDataIf(Predicate> predicate) { + return predicate.test(original) ? getData() : Optional.empty(); + } + + /** + * 读取{@code msg}的值 + * @return 返回Optional包装的 msg + */ + public Optional getMsg() { + return Optional.of(original.getMsg()); + } + + /** + * 对{@code code}的值进行相等性测试 + * @param value 基准值 + * @return 返回ture表示相等 + */ + public boolean codeEquals(int value) { + return original.getCode() == value; + } + + /** + * 对{@code code}的值进行相等性测试 + * @param value 基准值 + * @return 返回ture表示不相等 + */ + public boolean codeNotEquals(int value) { + return !codeEquals(value); + } + + /** + * 是否成功 + * @return 返回ture表示成功 + * @see CommonConstants#SUCCESS + */ + public boolean isSuccess() { + return codeEquals(CommonConstants.SUCCESS); + } + + /** + * 是否失败 + * @return 返回ture表示失败 + */ + public boolean notSuccess() { + return !isSuccess(); + } + + // ~ 链式操作 + // =================================================================================================== + + /** + * 断言{@code code}的值 + * @param expect 预期的值 + * @param func 用户函数,负责创建异常对象 + * @param 异常类型 + * @return 返回实例,以便于继续进行链式操作 + * @throws Ex 断言失败时抛出 + */ + public RetOps assertCode(int expect, Function, ? extends Ex> func) + throws Ex { + if (codeNotEquals(expect)) { + throw func.apply(original); + } + return this; + } + + /** + * 断言成功 + * @param func 用户函数,负责创建异常对象 + * @param 异常类型 + * @return 返回实例,以便于继续进行链式操作 + * @throws Ex 断言失败时抛出 + */ + public RetOps assertSuccess(Function, ? extends Ex> func) throws Ex { + return assertCode(CommonConstants.SUCCESS, func); + } + + /** + * 断言业务数据有值 + * @param func 用户函数,负责创建异常对象 + * @param 异常类型 + * @return 返回实例,以便于继续进行链式操作 + * @throws Ex 断言失败时抛出 + */ + public RetOps assertDataNotNull(Function, ? extends Ex> func) throws Ex { + if (Objects.isNull(original.getData())) { + throw func.apply(original); + } + return this; + } + + /** + * 断言业务数据有值,并且包含元素 + * @param func 用户函数,负责创建异常对象 + * @param 异常类型 + * @return 返回实例,以便于继续进行链式操作 + * @throws Ex 断言失败时抛出 + */ + public RetOps assertDataNotEmpty(Function, ? extends Ex> func) throws Ex { + if (ObjectUtil.isNotEmpty(original.getData())) { + throw func.apply(original); + } + return this; + } + + /** + * 对业务数据(data)转换 + * @param mapper 业务数据转换函数 + * @param 数据类型 + * @return 返回新实例,以便于继续进行链式操作 + */ + public RetOps map(Function mapper) { + R result = R.restResult(mapper.apply(original.getData()), original.getCode(), original.getMsg()); + return of(result); + } + + /** + * 对业务数据(data)转换 + * @param predicate 断言函数 + * @param mapper 业务数据转换函数 + * @param 数据类型 + * @return 返回新实例,以便于继续进行链式操作 + * @see RetOps#CODE_SUCCESS + * @see RetOps#HAS_DATA + * @see RetOps#HAS_ELEMENT + * @see RetOps#DATA_AVAILABLE + */ + public RetOps mapIf(Predicate> predicate, Function mapper) { + R result = R.restResult(mapper.apply(original.getData()), original.getCode(), original.getMsg()); + return of(result); + } + + // ~ 数据消费 + // =================================================================================================== + + /** + * 消费数据,注意此方法保证数据可用 + * @param consumer 消费函数 + */ + public void useData(Consumer consumer) { + consumer.accept(original.getData()); + } + + /** + * 条件消费(错误代码匹配某个值) + * @param consumer 消费函数 + * @param codes 错误代码集合,匹配任意一个则调用消费函数 + */ + public void useDataOnCode(Consumer consumer, int... codes) { + useDataIf(o -> Arrays.stream(codes).filter(c -> original.getCode() == c).findFirst().isPresent(), consumer); + } + + /** + * 条件消费(错误代码表示成功) + * @param consumer 消费函数 + */ + public void useDataIfSuccess(Consumer consumer) { + useDataIf(CODE_SUCCESS, consumer); + } + + /** + * 条件消费 + * @param predicate 断言函数 + * @param consumer 消费函数,断言函数返回{@code true}时被调用 + * @see RetOps#CODE_SUCCESS + * @see RetOps#HAS_DATA + * @see RetOps#HAS_ELEMENT + * @see RetOps#DATA_AVAILABLE + */ + public void useDataIf(Predicate> predicate, Consumer consumer) { + if (predicate.test(original)) { + consumer.accept(original.getData()); + } + } + +} diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/ValidGroup.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/ValidGroup.java new file mode 100644 index 000000000..23cf9fbd7 --- /dev/null +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/util/ValidGroup.java @@ -0,0 +1,31 @@ +package com.pig4cloud.pigx.common.core.util; + +/** + * 校验类型 + * + * @author lengleng + * @date 2022/4/26 + */ +public class ValidGroup { + + /** + * 插入组 + * + * @author lengleng + * @date 2022/4/26 + */ + public static interface Insert { + + } + + /** + * 编辑组 + * + * @author lengleng + * @date 2022/4/26 + */ + public static interface Update { + + } + +} diff --git a/pigx-common/pigx-common-core/src/main/resources/i18n/messages_zh_CN.properties b/pigx-common/pigx-common-core/src/main/resources/i18n/messages_zh_CN.properties index e69de29bb..d0d3430fc 100644 --- a/pigx-common/pigx-common-core/src/main/resources/i18n/messages_zh_CN.properties +++ b/pigx-common/pigx-common-core/src/main/resources/i18n/messages_zh_CN.properties @@ -0,0 +1,19 @@ +sys.user.update.passwordError=\u539F\u5BC6\u7801\u9519\u8BEF\uFF0C\u4FEE\u6539\u5931\u8D25 +sys.user.query.error=\u83B7\u53D6\u5F53\u524D\u7528\u6237\u4FE1\u606F\u5931\u8D25 +sys.user.import.succeed=\u7528\u6237\u5BFC\u5165\u6210\u529F\uFF0C\u9ED8\u8BA4\u5BC6\u7801\u4E3A\u624B\u673A\u53F7 +sys.user.username.existing={0} \u7528\u6237\u540D\u5DF2\u5B58\u5728 +sys.user.userInfo.empty={0} \u7528\u6237\u4FE1\u606F\u4E3A\u7A7A +sys.dept.deptName.inexistence={0} \u90E8\u95E8\u540D\u79F0\u4E0D\u5B58\u5728 +sys.post.postName.inexistence={0} \u5C97\u4F4D\u540D\u79F0\u4E0D\u5B58\u5728 +sys.post.nameOrCode.existing={0} {1} \u5C97\u4F4D\u540D\u6216\u5C97\u4F4D\u7F16\u7801\u5DF2\u7ECF\u5B58\u5728 +sys.role.roleName.inexistence={0} \u89D2\u8272\u540D\u79F0\u4E0D\u5B58\u5728 +sys.role.nameOrCode.existing={0} {1} \u89D2\u8272\u540D\u6216\u89D2\u8272\u7F16\u7801\u5DF2\u7ECF\u5B58\u5728 +sys.param.delete.system=\u7CFB\u7EDF\u5185\u7F6E\u53C2\u6570\u4E0D\u80FD\u5220\u9664 +sys.param.config.error={0} \u7CFB\u7EDF\u53C2\u6570\u914D\u7F6E\u9519\u8BEF +sys.menu.delete.existing=\u83DC\u5355\u542B\u6709\u4E0B\u7EA7\u4E0D\u80FD\u5220\u9664 +sys.app.sms.often=\u9A8C\u8BC1\u7801\u53D1\u9001\u8FC7\u9891\u7E41 +sys.app.phone.unregistered={0} \u624B\u673A\u53F7\u672A\u6CE8\u518C +sys.dict.delete.system=\u7CFB\u7EDF\u5185\u7F6E\u5B57\u5178\u9879\u76EE\u4E0D\u80FD\u5220\u9664 +sys.dict.update.system=\u7CFB\u7EDF\u5185\u7F6E\u5B57\u5178\u9879\u76EE\u4E0D\u80FD\u4FEE\u6539 +sys.connect.cp.dept.sync.error=\u83B7\u53D6\u4F01\u4E1A\u5FAE\u4FE1\u90E8\u95E8\u5217\u8868\u5931\u8D25 +sys.connect.cp.user.sync.error=\u83B7\u53D6\u4F01\u4E1A\u5FAE\u4FE1\u7528\u6237\u5217\u8868\u5931\u8D25 diff --git a/pigx-common/pigx-common-data/pom.xml b/pigx-common/pigx-common-data/pom.xml index 222533bf4..ee5adf9b4 100644 --- a/pigx-common/pigx-common-data/pom.xml +++ b/pigx-common/pigx-common-data/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-data diff --git a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/DataScope.java b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/DataScope.java index c5286e8cf..f8870aea6 100644 --- a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/DataScope.java +++ b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/DataScope.java @@ -56,4 +56,31 @@ public class DataScope extends HashMap { */ private DataScopeFuncEnum func = DataScopeFuncEnum.ALL; + /** + * of 获取实例 + */ + public static DataScope of() { + return new DataScope(); + } + + public DataScope scopeName(String scopeName) { + this.scopeName = scopeName; + return this; + } + + public DataScope deptIds(List deptIds) { + this.deptIds = deptIds; + return this; + } + + public DataScope only(boolean isOnly) { + this.isOnly = isOnly; + return this; + } + + public DataScope func(DataScopeFuncEnum func) { + this.func = func; + return this; + } + } diff --git a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/PigxDefaultDatascopeHandle.java b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/PigxDefaultDatascopeHandle.java index c85337407..f5f494da9 100644 --- a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/PigxDefaultDatascopeHandle.java +++ b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/PigxDefaultDatascopeHandle.java @@ -23,12 +23,14 @@ import com.pig4cloud.pigx.admin.api.entity.SysDeptRelation; import com.pig4cloud.pigx.admin.api.entity.SysRole; import com.pig4cloud.pigx.admin.api.feign.RemoteDataScopeService; import com.pig4cloud.pigx.common.core.constant.SecurityConstants; +import com.pig4cloud.pigx.common.core.util.RetOps; import com.pig4cloud.pigx.common.security.service.PigxUser; import com.pig4cloud.pigx.common.security.util.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.GrantedAuthority; import java.util.Arrays; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.stream.Collectors; @@ -59,8 +61,13 @@ public class PigxDefaultDatascopeHandle implements DataScopeHandle { if (CollectionUtil.isEmpty(roleIdList)) { return false; } - SysRole role = dataScopeService.getRoleList(roleIdList).getData().stream() + // @formatter:off + SysRole role = RetOps.of(dataScopeService.getRoleList(roleIdList)) + .getData() + .orElseGet(Collections::emptyList) + .stream() .min(Comparator.comparingInt(SysRole::getDsType)).orElse(null); + // @formatter:on // 角色有可能已经删除了 if (role == null) { return false; @@ -78,8 +85,13 @@ public class PigxDefaultDatascopeHandle implements DataScopeHandle { } // 查询本级及其下级 if (DataScopeTypeEnum.OWN_CHILD_LEVEL.getType() == dsType) { - List deptIdList = dataScopeService.getDescendantList(user.getDeptId()).getData().stream() + // @formatter:off + List deptIdList = RetOps.of(dataScopeService.getDescendantList(user.getDeptId())) + .getData() + .orElseGet(Collections::emptyList) + .stream() .map(SysDeptRelation::getDescendant).collect(Collectors.toList()); + // @formatter:on deptList.addAll(deptIdList); } // 只查询本级 diff --git a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectCountByScope.java b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectCountByScope.java index 603fdbbcf..4e8ceebd9 100644 --- a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectCountByScope.java +++ b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectCountByScope.java @@ -14,6 +14,10 @@ import org.apache.ibatis.mapping.SqlSource; */ public class SelectCountByScope extends AbstractMethod { + public SelectCountByScope() { + super("selectCountByScope"); + } + @Override public MappedStatement injectMappedStatement(Class mapperClass, Class modelClass, TableInfo tableInfo) { SqlMethod sqlMethod = SqlMethod.SELECT_LIST; @@ -23,7 +27,7 @@ public class SelectCountByScope extends AbstractMethod { this.sqlComment()); SqlSource sqlSource = languageDriver.createSqlSource(configuration, sql, modelClass); - return this.addSelectMappedStatementForOther(mapperClass, "selectCountByScope", sqlSource, Integer.class); + return this.addSelectMappedStatementForOther(mapperClass, sqlSource, Long.class); } } diff --git a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectListByScope.java b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectListByScope.java index 350fa1a30..b051afdf0 100644 --- a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectListByScope.java +++ b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectListByScope.java @@ -12,6 +12,10 @@ import org.apache.ibatis.mapping.SqlSource; */ public class SelectListByScope extends AbstractMethod { + public SelectListByScope() { + super("selectListByScope"); + } + @Override public MappedStatement injectMappedStatement(Class mapperClass, Class modelClass, TableInfo tableInfo) { SqlMethod sqlMethod = SqlMethod.SELECT_LIST; @@ -19,7 +23,7 @@ public class SelectListByScope extends AbstractMethod { tableInfo.getTableName(), this.sqlWhereEntityWrapper(true, tableInfo), this.sqlOrderBy(tableInfo), this.sqlComment()); SqlSource sqlSource = this.languageDriver.createSqlSource(this.configuration, sql, modelClass); - return this.addSelectMappedStatementForTable(mapperClass, "selectListByScope", sqlSource, tableInfo); + return this.addSelectMappedStatementForTable(mapperClass, sqlSource, tableInfo); } } diff --git a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectPageByScope.java b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectPageByScope.java index f6c43dacb..5cad05a6f 100644 --- a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectPageByScope.java +++ b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/datascope/SelectPageByScope.java @@ -12,6 +12,10 @@ import org.apache.ibatis.mapping.SqlSource; */ public class SelectPageByScope extends AbstractMethod { + public SelectPageByScope() { + super("selectPageByScope"); + } + @Override public MappedStatement injectMappedStatement(Class mapperClass, Class modelClass, TableInfo tableInfo) { SqlMethod sqlMethod = SqlMethod.SELECT_PAGE; @@ -19,7 +23,7 @@ public class SelectPageByScope extends AbstractMethod { tableInfo.getTableName(), this.sqlWhereEntityWrapper(true, tableInfo), this.sqlOrderBy(tableInfo), this.sqlComment()); SqlSource sqlSource = this.languageDriver.createSqlSource(this.configuration, sql, modelClass); - return this.addSelectMappedStatementForTable(mapperClass, "selectPageByScope", sqlSource, tableInfo); + return this.addSelectMappedStatementForTable(mapperClass, sqlSource, tableInfo); } } diff --git a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/mybatis/MybatisPlusConfiguration.java b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/mybatis/MybatisPlusConfiguration.java index 1ed1d96b7..539191488 100644 --- a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/mybatis/MybatisPlusConfiguration.java +++ b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/mybatis/MybatisPlusConfiguration.java @@ -29,6 +29,8 @@ import com.pig4cloud.pigx.common.data.datascope.PigxDefaultDatascopeHandle; import com.pig4cloud.pigx.common.data.resolver.SqlFilterArgumentResolver; import com.pig4cloud.pigx.common.data.tenant.PigxTenantHandler; import com.pig4cloud.pigx.common.security.service.PigxUser; +import org.apache.ibatis.mapping.DatabaseIdProvider; +import org.apache.ibatis.mapping.VendorDatabaseIdProvider; import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; @@ -42,6 +44,7 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import javax.sql.DataSource; import java.util.List; +import java.util.Properties; /** * @author lengleng @@ -133,4 +136,17 @@ public class MybatisPlusConfiguration implements WebMvcConfigurer { return new MybatisPlusMetaObjectHandler(); } + /** + * 数据库方言配置 + * @return + */ + @Bean + public DatabaseIdProvider databaseIdProvider() { + VendorDatabaseIdProvider databaseIdProvider = new VendorDatabaseIdProvider(); + Properties properties = new Properties(); + properties.setProperty("SQL Server", "mssql"); + databaseIdProvider.setProperties(properties); + return databaseIdProvider; + } + } diff --git a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/resolver/DictResolver.java b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/resolver/DictResolver.java new file mode 100644 index 000000000..fe9c48253 --- /dev/null +++ b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/resolver/DictResolver.java @@ -0,0 +1,99 @@ +package com.pig4cloud.pigx.common.data.resolver; + +import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.baomidou.mybatisplus.core.toolkit.StringPool; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import com.pig4cloud.pigx.admin.api.entity.SysDictItem; +import com.pig4cloud.pigx.admin.api.feign.RemoteDictService; +import com.pig4cloud.pigx.common.core.util.SpringContextHolder; +import lombok.experimental.UtilityClass; + +import java.util.List; + +/** + * @author fxz + * @date 2022/3/24 字典解析器 + */ +@UtilityClass +public class DictResolver { + + /** + * 根据字典类型获取所有字典项 + * @param type 字典类型 + * @return 字典数据项集合 + */ + public List getDictItemsByType(String type) { + Assert.isTrue(StringUtils.isNotBlank(type), "参数不合法"); + + RemoteDictService remoteDictService = SpringContextHolder.getBean(RemoteDictService.class); + + return remoteDictService.getDictByType(type).getData(); + } + + /** + * 根据字典类型以及字典项字典值获取字典标签 + * @param type 字典类型 + * @param itemValue 字典项字典值 + * @return 字典项标签值 + */ + public String getDictItemLabel(String type, String itemValue) { + Assert.isTrue(StringUtils.isNotBlank(type) && StringUtils.isNotBlank(itemValue), "参数不合法"); + + SysDictItem sysDictItem = getDictItemByItemValue(type, itemValue); + + return ObjectUtils.isNotEmpty(sysDictItem) ? sysDictItem.getLabel() : StringPool.EMPTY; + } + + /** + * 根据字典类型以及字典标签获取字典值 + * @param type 字典类型 + * @param itemLabel 字典数据标签 + * @return 字典数据项值 + */ + public String getDictItemValue(String type, String itemLabel) { + Assert.isTrue(StringUtils.isNotBlank(type) && StringUtils.isNotBlank(itemLabel), "参数不合法"); + + SysDictItem sysDictItem = getDictItemByItemLabel(type, itemLabel); + + return ObjectUtils.isNotEmpty(sysDictItem) ? sysDictItem.getItemValue() : StringPool.EMPTY; + } + + /** + * 根据字典类型以及字典值获取字典项 + * @param type 字典类型 + * @param itemValue 字典数据值 + * @return 字典数据项 + */ + public SysDictItem getDictItemByItemValue(String type, String itemValue) { + Assert.isTrue(StringUtils.isNotBlank(type) && StringUtils.isNotBlank(itemValue), "参数不合法"); + + List dictItemList = getDictItemsByType(type); + + if (CollectionUtils.isNotEmpty(dictItemList)) { + return dictItemList.stream().filter(item -> itemValue.equals(item.getItemValue())).findFirst().orElse(null); + } + + return null; + } + + /** + * 根据字典类型以及字典标签获取字典项 + * @param type 字典类型 + * @param itemLabel 字典数据项标签 + * @return 字典数据项 + */ + public SysDictItem getDictItemByItemLabel(String type, String itemLabel) { + Assert.isTrue(StringUtils.isNotBlank(type) && StringUtils.isNotBlank(itemLabel), "参数不合法"); + + List dictItemList = getDictItemsByType(type); + + if (CollectionUtils.isNotEmpty(dictItemList)) { + return dictItemList.stream().filter(item -> itemLabel.equals(item.getLabel())).findFirst().orElse(null); + } + + return null; + } + +} diff --git a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/resolver/SqlFilterArgumentResolver.java b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/resolver/SqlFilterArgumentResolver.java index 6acff2b88..39427caa2 100644 --- a/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/resolver/SqlFilterArgumentResolver.java +++ b/pigx-common/pigx-common-data/src/main/java/com/pig4cloud/pigx/common/data/resolver/SqlFilterArgumentResolver.java @@ -107,14 +107,7 @@ public class SqlFilterArgumentResolver implements HandlerMethodArgumentResolver * @return Predicate */ private Predicate sqlInjectPredicate() { - return sql -> { - for (String keyword : KEYWORDS) { - if (StrUtil.containsIgnoreCase(sql, keyword)) { - return false; - } - } - return true; - }; + return sql -> Arrays.stream(KEYWORDS).noneMatch(keyword -> StrUtil.containsIgnoreCase(sql, keyword)); } } diff --git a/pigx-common/pigx-common-datasource/pom.xml b/pigx-common/pigx-common-datasource/pom.xml index dc5260ff2..d2baac79a 100644 --- a/pigx-common/pigx-common-datasource/pom.xml +++ b/pigx-common/pigx-common-datasource/pom.xml @@ -5,7 +5,7 @@ pigx-common com.pig4cloud - 4.3.0 + 4.4.0 4.0.0 diff --git a/pigx-common/pigx-common-datasource/src/main/java/com/pig4cloud/pigx/common/datasource/util/DsJdbcUrlEnum.java b/pigx-common/pigx-common-datasource/src/main/java/com/pig4cloud/pigx/common/datasource/util/DsJdbcUrlEnum.java index eed30ee29..b6b677e21 100644 --- a/pigx-common/pigx-common-datasource/src/main/java/com/pig4cloud/pigx/common/datasource/util/DsJdbcUrlEnum.java +++ b/pigx-common/pigx-common-datasource/src/main/java/com/pig4cloud/pigx/common/datasource/util/DsJdbcUrlEnum.java @@ -42,7 +42,12 @@ public enum DsJdbcUrlEnum { /** * db2 */ - DB2("db2", "jdbc:db2://%s:%s/%s", "select 1 from sysibm.sysdummy1", "DB2 TYPE4 连接"); + DB2("db2", "jdbc:db2://%s:%s/%s", "select 1 from sysibm.sysdummy1", "DB2 TYPE4 连接"), + + /** + * 达梦 + */ + DM("dm", "jdbc:dm://%s:%s/%s", "select 1 from dual", "达梦连接"); private final String dbName; diff --git a/pigx-common/pigx-common-excel/pom.xml b/pigx-common/pigx-common-excel/pom.xml index b59a2a743..36383094c 100644 --- a/pigx-common/pigx-common-excel/pom.xml +++ b/pigx-common/pigx-common-excel/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-excel diff --git a/pigx-common/pigx-common-feign/pom.xml b/pigx-common/pigx-common-feign/pom.xml index b34d52bf6..8c36f1a64 100755 --- a/pigx-common/pigx-common-feign/pom.xml +++ b/pigx-common/pigx-common-feign/pom.xml @@ -5,7 +5,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 4.0.0 diff --git a/pigx-common/pigx-common-gateway/pom.xml b/pigx-common/pigx-common-gateway/pom.xml index 122679c46..faf2bacee 100644 --- a/pigx-common/pigx-common-gateway/pom.xml +++ b/pigx-common/pigx-common-gateway/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-gateway diff --git a/pigx-common/pigx-common-gateway/src/main/resources/META-INF/spring.factories b/pigx-common/pigx-common-gateway/src/main/resources/META-INF/spring.factories deleted file mode 100644 index 6b20e9c77..000000000 --- a/pigx-common/pigx-common-gateway/src/main/resources/META-INF/spring.factories +++ /dev/null @@ -1,2 +0,0 @@ -org.springframework.boot.diagnostics.FailureAnalyzer=\ -com.pig4cloud.pigx.common.gateway.exception.RouteCheckFailureAnalyzer \ No newline at end of file diff --git a/pigx-common/pigx-common-gray/pom.xml b/pigx-common/pigx-common-gray/pom.xml index 5ff1654a1..50d6e1dc8 100644 --- a/pigx-common/pigx-common-gray/pom.xml +++ b/pigx-common/pigx-common-gray/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-gray diff --git a/pigx-common/pigx-common-idempotent/pom.xml b/pigx-common/pigx-common-idempotent/pom.xml index a63652472..fd3661407 100644 --- a/pigx-common/pigx-common-idempotent/pom.xml +++ b/pigx-common/pigx-common-idempotent/pom.xml @@ -5,7 +5,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-idempotent diff --git a/pigx-common/pigx-common-job/pom.xml b/pigx-common/pigx-common-job/pom.xml index 4e52e4b81..72574bc91 100644 --- a/pigx-common/pigx-common-job/pom.xml +++ b/pigx-common/pigx-common-job/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-job diff --git a/pigx-common/pigx-common-job/src/main/java/com/pig4cloud/pigx/common/job/properties/XxlExecutorProperties.java b/pigx-common/pigx-common-job/src/main/java/com/pig4cloud/pigx/common/job/properties/XxlExecutorProperties.java index cb3824e45..eb2e2e6b4 100644 --- a/pigx-common/pigx-common-job/src/main/java/com/pig4cloud/pigx/common/job/properties/XxlExecutorProperties.java +++ b/pigx-common/pigx-common-job/src/main/java/com/pig4cloud/pigx/common/job/properties/XxlExecutorProperties.java @@ -28,9 +28,9 @@ public class XxlExecutorProperties { private String ip; /** - * 执行器端口号 [选填]:小于等于0则自动获取;默认端口为9999,单机部署多个执行器时,注意要配置不同执行器端口; + * 执行器端口号 [选填]:小于等于0则自动获取;默认端口为9099,单机部署多个执行器时,注意要配置不同执行器端口; */ - private Integer port = 0; + private Integer port = 9099; /** * 执行器通讯TOKEN [选填]:非空时启用; diff --git a/pigx-common/pigx-common-log/pom.xml b/pigx-common/pigx-common-log/pom.xml index f6b9ea910..dad0c7396 100644 --- a/pigx-common/pigx-common-log/pom.xml +++ b/pigx-common/pigx-common-log/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-log diff --git a/pigx-common/pigx-common-log/src/main/java/com/pig4cloud/pigx/common/log/aspect/SysLogAspect.java b/pigx-common/pigx-common-log/src/main/java/com/pig4cloud/pigx/common/log/aspect/SysLogAspect.java index 4756657ed..d2e3234bb 100644 --- a/pigx-common/pigx-common-log/src/main/java/com/pig4cloud/pigx/common/log/aspect/SysLogAspect.java +++ b/pigx-common/pigx-common-log/src/main/java/com/pig4cloud/pigx/common/log/aspect/SysLogAspect.java @@ -19,6 +19,7 @@ package com.pig4cloud.pigx.common.log.aspect; +import cn.hutool.core.util.StrUtil; import com.pig4cloud.pigx.admin.api.dto.SysLogDTO; import com.pig4cloud.pigx.common.core.util.KeyStrResolver; import com.pig4cloud.pigx.common.log.annotation.SysLog; @@ -31,7 +32,9 @@ import lombok.extern.slf4j.Slf4j; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.reflect.MethodSignature; import org.springframework.context.ApplicationEventPublisher; +import org.springframework.expression.EvaluationContext; /** * 操作日志使用spring event异步入库 @@ -54,8 +57,16 @@ public class SysLogAspect { String strMethodName = point.getSignature().getName(); log.debug("[类名]:{},[方法]:{}", strClassName, strMethodName); + String value = sysLog.value(); + if (StrUtil.contains(value, "#")) { + // 解析SPEL + MethodSignature signature = (MethodSignature) point.getSignature(); + EvaluationContext context = SysLogUtils.getContext(point.getArgs(), signature.getMethod()); + value = SysLogUtils.getValue(context, value, String.class); + } + SysLogDTO logDTO = SysLogUtils.getSysLog(); - logDTO.setTitle(sysLog.value()); + logDTO.setTitle(value); // 发送异步日志事件 Long startTime = System.currentTimeMillis(); Object obj; diff --git a/pigx-common/pigx-common-log/src/main/java/com/pig4cloud/pigx/common/log/util/SysLogUtils.java b/pigx-common/pigx-common-log/src/main/java/com/pig4cloud/pigx/common/log/util/SysLogUtils.java index c44af2f10..76f82e683 100644 --- a/pigx-common/pigx-common-log/src/main/java/com/pig4cloud/pigx/common/log/util/SysLogUtils.java +++ b/pigx-common/pigx-common-log/src/main/java/com/pig4cloud/pigx/common/log/util/SysLogUtils.java @@ -24,6 +24,11 @@ import cn.hutool.extra.servlet.ServletUtil; import cn.hutool.http.HttpUtil; import com.pig4cloud.pigx.admin.api.dto.SysLogDTO; import lombok.experimental.UtilityClass; +import org.springframework.core.LocalVariableTableParameterNameDiscoverer; +import org.springframework.expression.EvaluationContext; +import org.springframework.expression.Expression; +import org.springframework.expression.spel.standard.SpelExpressionParser; +import org.springframework.expression.spel.support.StandardEvaluationContext; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.oauth2.provider.OAuth2Authentication; @@ -31,6 +36,7 @@ import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import javax.servlet.http.HttpServletRequest; +import java.lang.reflect.Method; import java.util.Objects; /** @@ -94,4 +100,36 @@ public class SysLogUtils { return authentication.getName(); } + /** + * 获取spel 定义的参数值 + * @param context 参数容器 + * @param key key + * @param clazz 需要返回的类型 + * @param 返回泛型 + * @return 参数值 + */ + public T getValue(EvaluationContext context, String key, Class clazz) { + SpelExpressionParser spelExpressionParser = new SpelExpressionParser(); + Expression expression = spelExpressionParser.parseExpression(key); + return expression.getValue(context, clazz); + } + + /** + * 获取参数容器 + * @param arguments 方法的参数列表 + * @param signatureMethod 被执行的方法体 + * @return 装载参数的容器 + */ + public EvaluationContext getContext(Object[] arguments, Method signatureMethod) { + String[] parameterNames = new LocalVariableTableParameterNameDiscoverer().getParameterNames(signatureMethod); + EvaluationContext context = new StandardEvaluationContext(); + if (parameterNames == null) { + return context; + } + for (int i = 0; i < arguments.length; i++) { + context.setVariable(parameterNames[i], arguments[i]); + } + return context; + } + } diff --git a/pigx-common/pigx-common-oss/pom.xml b/pigx-common/pigx-common-oss/pom.xml index 102b7dc9c..d82d28de2 100755 --- a/pigx-common/pigx-common-oss/pom.xml +++ b/pigx-common/pigx-common-oss/pom.xml @@ -1,24 +1,28 @@ - 4.0.0 - - com.pig4cloud - pigx-common - 4.3.0 - + xmlns="http://maven.apache.org/POM/4.0.0" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + + com.pig4cloud + pigx-common + 4.4.0 + - pigx-common-oss - jar + pigx-common-oss + jar - pigx 文件系统依赖 + pigx 文件系统依赖 - - - com.amazonaws - aws-java-sdk-s3 - ${aws.version} - - + + + com.amazonaws + aws-java-sdk-s3 + ${aws.version} + + + cn.hutool + hutool-core + + diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/LoadBalanceInfo.java b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/FileAutoConfiguration.java old mode 100644 new mode 100755 similarity index 57% rename from pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/LoadBalanceInfo.java rename to pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/FileAutoConfiguration.java index db3ed3ff0..13a89d1ee --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/LoadBalanceInfo.java +++ b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/FileAutoConfiguration.java @@ -15,43 +15,22 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.manager.model; +package com.pig4cloud.pigx.common.file; + +import com.pig4cloud.pigx.common.file.core.FileProperties; +import com.pig4cloud.pigx.common.file.local.LocalFileAutoConfiguration; +import com.pig4cloud.pigx.common.file.oss.OssAutoConfiguration; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.annotation.Import; /** - * 负载均衡模块信息 + * aws 自动配置类 * - * @author LCN on 2017/12/5 + * @author lengleng + * @author 858695266 */ -public class LoadBalanceInfo { - - private String groupId; - - private String key; - - private String data; - - public String getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getKey() { - return key; - } - - public void setKey(String key) { - this.key = key; - } - - public String getData() { - return data; - } - - public void setData(String data) { - this.data = data; - } +@Import({ LocalFileAutoConfiguration.class, OssAutoConfiguration.class }) +@EnableConfigurationProperties({ FileProperties.class }) +public class FileAutoConfiguration { } diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/LoadBalanceService.java b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/core/FileProperties.java old mode 100644 new mode 100755 similarity index 56% rename from pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/LoadBalanceService.java rename to pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/core/FileProperties.java index 85b86e479..1b2b6768b --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/LoadBalanceService.java +++ b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/core/FileProperties.java @@ -15,21 +15,37 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.manager.manager.service; +package com.pig4cloud.pigx.common.file.core; -import com.pig4cloud.pigx.manager.model.LoadBalanceInfo; +import com.pig4cloud.pigx.common.file.local.LocalFileProperties; +import com.pig4cloud.pigx.common.file.oss.OssProperties; +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; /** - * @author LCN on 2017/12/5 + * 文件 配置信息 + * + * @author lengleng + *

+ * bucket 设置公共读权限 */ -public interface LoadBalanceService { +@Data +@ConfigurationProperties(prefix = "file") +public class FileProperties { - boolean put(LoadBalanceInfo loadBalanceInfo); + /** + * 默认的存储桶名称 + */ + private String bucketName = "local"; - LoadBalanceInfo get(String groupId, String key); + /** + * 本地文件配置信息 + */ + private LocalFileProperties local; - boolean remove(String groupId); - - String getLoadBalanceGroupName(String groupId); + /** + * oss 文件配置信息 + */ + private OssProperties oss; } diff --git a/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/core/FileTemplate.java b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/core/FileTemplate.java new file mode 100644 index 000000000..f789b7829 --- /dev/null +++ b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/core/FileTemplate.java @@ -0,0 +1,87 @@ +package com.pig4cloud.pigx.common.file.core; + +import com.amazonaws.services.s3.model.Bucket; +import com.amazonaws.services.s3.model.S3Object; +import com.amazonaws.services.s3.model.S3ObjectSummary; +import org.springframework.beans.factory.InitializingBean; + +import java.io.InputStream; +import java.util.List; + +/** + * 文件操作模板 + * + * @author lengleng + * @date 2022/4/19 + */ +public interface FileTemplate extends InitializingBean { + + /** + * 创建bucket + * @param bucketName bucket名称 + */ + void createBucket(String bucketName); + + /** + * 获取全部bucket + *

+ * + * API Documentation + */ + List getAllBuckets(); + + /** + * @param bucketName bucket名称 + * @see + */ + void removeBucket(String bucketName); + + /** + * 上传文件 + * @param bucketName bucket名称 + * @param objectName 文件名称 + * @param stream 文件流 + * @param contextType 文件类型 + * @throws Exception + */ + void putObject(String bucketName, String objectName, InputStream stream, String contextType) throws Exception; + + /** + * 上传文件 + * @param bucketName bucket名称 + * @param objectName 文件名称 + * @param stream 文件流 + * @param contextType 文件类型 + * @throws Exception + */ + void putObject(String bucketName, String objectName, InputStream stream) throws Exception; + + /** + * 获取文件 + * @param bucketName bucket名称 + * @param objectName 文件名称 + * @return 二进制流 API Documentation + */ + S3Object getObject(String bucketName, String objectName); + + void removeObject(String bucketName, String objectName) throws Exception; + + /** + * @throws Exception + */ + @Override + default void afterPropertiesSet() throws Exception { + } + + /** + * 根据文件前置查询文件 + * @param bucketName bucket名称 + * @param prefix 前缀 + * @param recursive 是否递归查询 + * @return S3ObjectSummary 列表 + * @see AWS + * API Documentation + */ + List getAllObjectsByPrefix(String bucketName, String prefix, boolean recursive); + +} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/RestConfig.java b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/local/LocalFileAutoConfiguration.java old mode 100644 new mode 100755 similarity index 53% rename from pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/RestConfig.java rename to pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/local/LocalFileAutoConfiguration.java index 548578b85..577b13a6c --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/RestConfig.java +++ b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/local/LocalFileAutoConfiguration.java @@ -15,25 +15,31 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.manager.config; +package com.pig4cloud.pigx.common.file.local; -import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import com.pig4cloud.pigx.common.file.core.FileProperties; +import com.pig4cloud.pigx.common.file.core.FileTemplate; +import lombok.AllArgsConstructor; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.client.RestTemplate; /** - * @author LCN on 2017/7/5. + * aws 自动配置类 + * + * @author lengleng + * @author 858695266 */ +@AllArgsConstructor +public class LocalFileAutoConfiguration { -@Configuration -@EnableAutoConfiguration -public class RestConfig { + private final FileProperties properties; @Bean - public RestTemplate getRestTemplate() { - RestTemplate restTemplate = new RestTemplate(); - return restTemplate; + @ConditionalOnMissingBean(LocalFileTemplate.class) + @ConditionalOnProperty(name = "file.local.enable", havingValue = "true", matchIfMissing = true) + public FileTemplate localFileTemplate() { + return new LocalFileTemplate(properties); } } diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCServiceImpl.java b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/local/LocalFileProperties.java old mode 100644 new mode 100755 similarity index 66% rename from pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCServiceImpl.java rename to pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/local/LocalFileProperties.java index d449b8fe6..b6c285b52 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCServiceImpl.java +++ b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/local/LocalFileProperties.java @@ -15,17 +15,30 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.manager.netty.service.impl; +package com.pig4cloud.pigx.common.file.local; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.stereotype.Service; +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; /** - * 补偿回调 + * 本地文件 配置信息 * - * @author LCN on 2017/11/11 + * @author lengleng + *

+ * bucket 设置公共读权限 */ -@Service(value = "c") -public class ActionCServiceImpl extends BaseSignalTaskService implements IActionService { +@Data +@ConfigurationProperties(prefix = "local") +public class LocalFileProperties { + + /** + * 是否开启 + */ + private boolean enable; + + /** + * 默认路径 + */ + private String basePath; } diff --git a/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/local/LocalFileTemplate.java b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/local/LocalFileTemplate.java new file mode 100644 index 000000000..f330c264e --- /dev/null +++ b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/local/LocalFileTemplate.java @@ -0,0 +1,137 @@ +package com.pig4cloud.pigx.common.file.local; + +import cn.hutool.core.io.FileUtil; +import com.amazonaws.services.s3.model.Bucket; +import com.amazonaws.services.s3.model.S3Object; +import com.amazonaws.services.s3.model.S3ObjectSummary; +import com.pig4cloud.pigx.common.file.core.FileProperties; +import com.pig4cloud.pigx.common.file.core.FileTemplate; +import lombok.RequiredArgsConstructor; +import lombok.SneakyThrows; + +import java.io.File; +import java.io.InputStream; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 本地文件读取模式 + * + * @author lengleng + * @date 2022/4/19 + */ +@RequiredArgsConstructor +public class LocalFileTemplate implements FileTemplate { + + private final FileProperties properties; + + /** + * 创建bucket + * @param bucketName bucket名称 + */ + @Override + public void createBucket(String bucketName) { + FileUtil.mkdir(properties.getLocal().getBasePath() + FileUtil.FILE_SEPARATOR + bucketName); + } + + /** + * 获取全部bucket + *

+ *

+ * API Documentation + */ + @Override + public List getAllBuckets() { + return Arrays.stream(FileUtil.ls(properties.getLocal().getBasePath())).filter(FileUtil::isDirectory) + .map(dir -> new Bucket(dir.getName())).collect(Collectors.toList()); + } + + /** + * @param bucketName bucket名称 + * @see + */ + @Override + public void removeBucket(String bucketName) { + FileUtil.del(properties.getLocal().getBasePath() + FileUtil.FILE_SEPARATOR + bucketName); + } + + /** + * 上传文件 + * @param bucketName bucket名称 + * @param objectName 文件名称 + * @param stream 文件流 + * @param contextType 文件类型 + */ + @Override + public void putObject(String bucketName, String objectName, InputStream stream, String contextType) { + // 当 Bucket 不存在时创建 + String dir = properties.getLocal().getBasePath() + FileUtil.FILE_SEPARATOR + bucketName; + if (!FileUtil.isDirectory(properties.getLocal().getBasePath() + FileUtil.FILE_SEPARATOR + bucketName)) { + createBucket(bucketName); + } + + // 写入文件 + File file = FileUtil.file(dir + FileUtil.FILE_SEPARATOR + objectName); + FileUtil.writeFromStream(stream, file); + } + + /** + * 获取文件 + * @param bucketName bucket名称 + * @param objectName 文件名称 + * @return 二进制流 API Documentation + */ + @Override + @SneakyThrows + public S3Object getObject(String bucketName, String objectName) { + String dir = properties.getLocal().getBasePath() + FileUtil.FILE_SEPARATOR + bucketName; + S3Object s3Object = new S3Object(); + s3Object.setObjectContent(FileUtil.getInputStream(dir + FileUtil.FILE_SEPARATOR + objectName)); + return s3Object; + } + + /** + * @param bucketName + * @param objectName + * @throws Exception + */ + @Override + public void removeObject(String bucketName, String objectName) throws Exception { + String dir = properties.getLocal().getBasePath() + FileUtil.FILE_SEPARATOR + bucketName; + FileUtil.del(dir + FileUtil.FILE_SEPARATOR + objectName); + } + + /** + * 上传文件 + * @param bucketName bucket名称 + * @param objectName 文件名称 + * @param stream 文件流 + * @throws Exception + */ + @Override + public void putObject(String bucketName, String objectName, InputStream stream) throws Exception { + putObject(bucketName, objectName, stream, null); + } + + /** + * 根据文件前置查询文件 + * @param bucketName bucket名称 + * @param prefix 前缀 + * @param recursive 是否递归查询 + * @return S3ObjectSummary 列表 + * @see AWS + * API Documentation + */ + @Override + public List getAllObjectsByPrefix(String bucketName, String prefix, boolean recursive) { + String dir = properties.getLocal().getBasePath() + FileUtil.FILE_SEPARATOR + bucketName; + + return Arrays.stream(FileUtil.ls(dir)).filter(file -> file.getName().startsWith(prefix)).map(file -> { + S3ObjectSummary summary = new S3ObjectSummary(); + summary.setKey(file.getName()); + return new S3ObjectSummary(); + }).collect(Collectors.toList()); + } + +} diff --git a/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/OssAutoConfiguration.java b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/OssAutoConfiguration.java similarity index 71% rename from pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/OssAutoConfiguration.java rename to pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/OssAutoConfiguration.java index 8df6256e7..47d9ba465 100755 --- a/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/OssAutoConfiguration.java +++ b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/OssAutoConfiguration.java @@ -15,15 +15,17 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.common.oss; +package com.pig4cloud.pigx.common.file.oss; -import com.pig4cloud.pigx.common.oss.http.OssEndpoint; -import com.pig4cloud.pigx.common.oss.service.OssTemplate; +import com.pig4cloud.pigx.common.file.core.FileProperties; +import com.pig4cloud.pigx.common.file.core.FileTemplate; +import com.pig4cloud.pigx.common.file.oss.http.OssEndpoint; +import com.pig4cloud.pigx.common.file.oss.service.OssTemplate; import lombok.AllArgsConstructor; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Primary; /** * aws 自动配置类 @@ -32,20 +34,20 @@ import org.springframework.context.annotation.Bean; * @author 858695266 */ @AllArgsConstructor -@EnableConfigurationProperties({ OssProperties.class }) public class OssAutoConfiguration { - private final OssProperties properties; + private final FileProperties properties; @Bean + @Primary @ConditionalOnMissingBean(OssTemplate.class) - @ConditionalOnProperty(name = "oss.enable", havingValue = "true", matchIfMissing = true) - public OssTemplate ossTemplate() { + @ConditionalOnProperty(name = "file.oss.enable", havingValue = "true") + public FileTemplate ossTemplate() { return new OssTemplate(properties); } @Bean - @ConditionalOnProperty(name = "oss.info", havingValue = "true") + @ConditionalOnProperty(name = "file.oss.info", havingValue = "true") public OssEndpoint ossEndpoint(OssTemplate template) { return new OssEndpoint(template); } diff --git a/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/OssProperties.java b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/OssProperties.java similarity index 94% rename from pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/OssProperties.java rename to pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/OssProperties.java index 4ebacb1c9..6539304ab 100755 --- a/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/OssProperties.java +++ b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/OssProperties.java @@ -15,7 +15,7 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.common.oss; +package com.pig4cloud.pigx.common.file.oss; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; @@ -72,11 +72,6 @@ public class OssProperties { */ private String secretKey; - /** - * 默认的存储桶名称 - */ - private String bucketName = "payerp"; - /** * 最大线程数,默认: 100 */ diff --git a/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/http/OssEndpoint.java b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/http/OssEndpoint.java similarity index 88% rename from pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/http/OssEndpoint.java rename to pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/http/OssEndpoint.java index f1e6d0b3c..9f51d9865 100755 --- a/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/http/OssEndpoint.java +++ b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/http/OssEndpoint.java @@ -15,18 +15,20 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.common.oss.http; +package com.pig4cloud.pigx.common.file.oss.http; import com.amazonaws.services.s3.model.Bucket; import com.amazonaws.services.s3.model.S3Object; import com.amazonaws.services.s3.model.S3ObjectSummary; -import com.pig4cloud.pigx.common.oss.service.OssTemplate; +import com.pig4cloud.pigx.common.file.oss.service.OssTemplate; import lombok.AllArgsConstructor; +import lombok.Cleanup; import lombok.SneakyThrows; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import java.io.InputStream; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -84,7 +86,9 @@ public class OssEndpoint { @PostMapping("/object/{bucketName}") public S3Object createObject(@RequestBody MultipartFile object, @PathVariable String bucketName) { String name = object.getOriginalFilename(); - template.putObject(bucketName, name, object.getInputStream(), object.getSize(), object.getContentType()); + @Cleanup + InputStream inputStream = object.getInputStream(); + template.putObject(bucketName, name, inputStream, object.getSize(), object.getContentType()); return template.getObjectInfo(bucketName, name); } @@ -93,7 +97,9 @@ public class OssEndpoint { @PostMapping("/object/{bucketName}/{objectName}") public S3Object createObject(@RequestBody MultipartFile object, @PathVariable String bucketName, @PathVariable String objectName) { - template.putObject(bucketName, objectName, object.getInputStream(), object.getSize(), object.getContentType()); + @Cleanup + InputStream inputStream = object.getInputStream(); + template.putObject(bucketName, objectName, inputStream, object.getSize(), object.getContentType()); return template.getObjectInfo(bucketName, objectName); } diff --git a/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/service/OssTemplate.java b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/service/OssTemplate.java similarity index 91% rename from pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/service/OssTemplate.java rename to pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/service/OssTemplate.java index fff705df7..44417c8b6 100755 --- a/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/oss/service/OssTemplate.java +++ b/pigx-common/pigx-common-oss/src/main/java/com/pig4cloud/pigx/common/file/oss/service/OssTemplate.java @@ -15,7 +15,7 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.common.oss.service; +package com.pig4cloud.pigx.common.file.oss.service; import com.amazonaws.ClientConfiguration; import com.amazonaws.auth.AWSCredentials; @@ -27,7 +27,8 @@ import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3Client; import com.amazonaws.services.s3.model.*; import com.amazonaws.util.IOUtils; -import com.pig4cloud.pigx.common.oss.OssProperties; +import com.pig4cloud.pigx.common.file.core.FileProperties; +import com.pig4cloud.pigx.common.file.core.FileTemplate; import lombok.Cleanup; import lombok.RequiredArgsConstructor; import lombok.SneakyThrows; @@ -47,9 +48,9 @@ import java.util.*; * @since 1.0 */ @RequiredArgsConstructor -public class OssTemplate implements InitializingBean { +public class OssTemplate implements InitializingBean, FileTemplate { - private final OssProperties ossProperties; + private final FileProperties properties; private AmazonS3 amazonS3; @@ -220,16 +221,16 @@ public class OssTemplate implements InitializingBean { @Override public void afterPropertiesSet() { ClientConfiguration clientConfiguration = new ClientConfiguration(); - clientConfiguration.setMaxConnections(ossProperties.getMaxConnections()); + clientConfiguration.setMaxConnections(properties.getOss().getMaxConnections()); AwsClientBuilder.EndpointConfiguration endpointConfiguration = new AwsClientBuilder.EndpointConfiguration( - ossProperties.getEndpoint(), ossProperties.getRegion()); - AWSCredentials awsCredentials = new BasicAWSCredentials(ossProperties.getAccessKey(), - ossProperties.getSecretKey()); + properties.getOss().getEndpoint(), properties.getOss().getRegion()); + AWSCredentials awsCredentials = new BasicAWSCredentials(properties.getOss().getAccessKey(), + properties.getOss().getSecretKey()); AWSCredentialsProvider awsCredentialsProvider = new AWSStaticCredentialsProvider(awsCredentials); this.amazonS3 = AmazonS3Client.builder().withEndpointConfiguration(endpointConfiguration) .withClientConfiguration(clientConfiguration).withCredentials(awsCredentialsProvider) - .disableChunkedEncoding().withPathStyleAccessEnabled(ossProperties.getPathStyleAccess()).build(); + .disableChunkedEncoding().withPathStyleAccessEnabled(properties.getOss().getPathStyleAccess()).build(); } } diff --git a/pigx-common/pigx-common-oss/src/main/resources/META-INF/spring.factories b/pigx-common/pigx-common-oss/src/main/resources/META-INF/spring.factories index 94331536e..1a08633f4 100755 --- a/pigx-common/pigx-common-oss/src/main/resources/META-INF/spring.factories +++ b/pigx-common/pigx-common-oss/src/main/resources/META-INF/spring.factories @@ -1,2 +1,2 @@ org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ - com.pig4cloud.pigx.common.oss.OssAutoConfiguration \ No newline at end of file + com.pig4cloud.pigx.common.file.FileAutoConfiguration diff --git a/pigx-common/pigx-common-seata/pom.xml b/pigx-common/pigx-common-seata/pom.xml new file mode 100644 index 000000000..2490a8989 --- /dev/null +++ b/pigx-common/pigx-common-seata/pom.xml @@ -0,0 +1,51 @@ + + + + + 4.0.0 + + com.pig4cloud + pigx-common + 4.4.0 + + + pigx-common-seata + jar + pigx 分布式事务处理模块 + + + + + com.pig4cloud + pigx-common-core + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-seata + + + + io.seata + seata-serializer-kryo + + + + \ No newline at end of file diff --git a/pigx-common/pigx-common-seata/src/main/java/com/pig4cloud/pigx/common/seata/config/SeataAutoConfiguration.java b/pigx-common/pigx-common-seata/src/main/java/com/pig4cloud/pigx/common/seata/config/SeataAutoConfiguration.java new file mode 100644 index 000000000..82acca7aa --- /dev/null +++ b/pigx-common/pigx-common-seata/src/main/java/com/pig4cloud/pigx/common/seata/config/SeataAutoConfiguration.java @@ -0,0 +1,19 @@ +package com.pig4cloud.pigx.common.seata.config; + +import com.pig4cloud.pigx.common.core.factory.YamlPropertySourceFactory; +import io.seata.spring.annotation.datasource.EnableAutoDataSourceProxy; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.PropertySource; + +/** + * Seata 配置类 + * + * @author lengleng + * @date 2022/3/29 + */ +@PropertySource(value = "classpath:seata-config.yml", factory = YamlPropertySourceFactory.class) +@EnableAutoDataSourceProxy +@Configuration(proxyBeanMethods = false) +public class SeataAutoConfiguration { + +} diff --git a/pigx-common/pigx-common-seata/src/main/java/io/seata/spring/util/SpringProxyUtils.java b/pigx-common/pigx-common-seata/src/main/java/io/seata/spring/util/SpringProxyUtils.java new file mode 100644 index 000000000..6b9ded757 --- /dev/null +++ b/pigx-common/pigx-common-seata/src/main/java/io/seata/spring/util/SpringProxyUtils.java @@ -0,0 +1,177 @@ +/** + * @author lengleng + * @date 2022/3/29 + */ +package io.seata.spring.util; + +import io.seata.common.util.CollectionUtils; +import io.seata.rm.tcc.remoting.parser.DubboUtil; +import org.springframework.aop.TargetSource; +import org.springframework.aop.framework.Advised; +import org.springframework.aop.framework.AdvisedSupport; +import org.springframework.aop.support.AopUtils; + +import java.lang.reflect.Field; +import java.lang.reflect.Proxy; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** + * Proxy tools base on spring 主要解决 v1.4.2 兼容性问题 https://github.com/seata/seata/issues/3709 + * + * @author zhangsen + */ +public class SpringProxyUtils { + + private SpringProxyUtils() { + } + + /** + * Find target class class. + * @param proxy the proxy + * @return the class + * @throws Exception the exception + */ + public static Class findTargetClass(Object proxy) throws Exception { + if (proxy == null) { + return null; + } + if (AopUtils.isAopProxy(proxy) && proxy instanceof Advised) { + // #issue 3709 + final TargetSource targetSource = ((Advised) proxy).getTargetSource(); + if (!targetSource.isStatic()) { + return targetSource.getTargetClass(); + } + return findTargetClass(targetSource.getTarget()); + } + return proxy.getClass(); + } + + public static Class[] findInterfaces(Object proxy) throws Exception { + if (AopUtils.isJdkDynamicProxy(proxy)) { + AdvisedSupport advised = getAdvisedSupport(proxy); + return getInterfacesByAdvised(advised); + } + else { + return new Class[] {}; + } + } + + private static Class[] getInterfacesByAdvised(AdvisedSupport advised) { + Class[] interfaces = advised.getProxiedInterfaces(); + if (interfaces.length > 0) { + return interfaces; + } + else { + throw new IllegalStateException("Find the jdk dynamic proxy class that does not implement the interface"); + } + } + + /** + * Gets advised support. + * @param proxy the proxy + * @return the advised support + * @throws Exception the exception + */ + public static AdvisedSupport getAdvisedSupport(Object proxy) throws Exception { + Field h; + if (AopUtils.isJdkDynamicProxy(proxy)) { + h = proxy.getClass().getSuperclass().getDeclaredField("h"); + } + else { + h = proxy.getClass().getDeclaredField("CGLIB$CALLBACK_0"); + } + h.setAccessible(true); + Object dynamicAdvisedInterceptor = h.get(proxy); + Field advised = dynamicAdvisedInterceptor.getClass().getDeclaredField("advised"); + advised.setAccessible(true); + return (AdvisedSupport) advised.get(dynamicAdvisedInterceptor); + } + + /** + * Is proxy boolean. + * @param bean the bean + * @return the boolean + */ + public static boolean isProxy(Object bean) { + if (bean == null) { + return false; + } + // check dubbo proxy ? + return DubboUtil.isDubboProxyName(bean.getClass().getName()) + || (Proxy.class.isAssignableFrom(bean.getClass()) || AopUtils.isAopProxy(bean)); + } + + /** + * Get the target class , get the interface of its agent if it is a Proxy + * @param proxy the proxy + * @return target interface + * @throws Exception the exception + */ + public static Class getTargetInterface(Object proxy) throws Exception { + if (proxy == null) { + throw new IllegalArgumentException("proxy can not be null"); + } + + // jdk proxy + if (Proxy.class.isAssignableFrom(proxy.getClass())) { + Proxy p = (Proxy) proxy; + return p.getClass().getInterfaces()[0]; + } + + return getTargetClass(proxy); + } + + /** + * Get the class type of the proxy target object, if hadn't a target object, return + * the interface of the proxy + * @param proxy the proxy + * @return target interface + * @throws Exception the exception + */ + protected static Class getTargetClass(Object proxy) throws Exception { + if (proxy == null) { + throw new IllegalArgumentException("proxy can not be null"); + } + // not proxy + if (!AopUtils.isAopProxy(proxy)) { + return proxy.getClass(); + } + AdvisedSupport advisedSupport = getAdvisedSupport(proxy); + Object target = advisedSupport.getTargetSource().getTarget(); + /* + * the Proxy of sofa:reference has no target + */ + if (target == null) { + if (CollectionUtils.isNotEmpty(advisedSupport.getProxiedInterfaces())) { + return advisedSupport.getProxiedInterfaces()[0]; + } + else { + return proxy.getClass(); + } + } + else { + return getTargetClass(target); + } + } + + /** + * get the all interfaces of bean, if the bean is null, then return empty array + * @param bean the bean + * @return target interface + */ + public static Class[] getAllInterfaces(Object bean) { + Set> interfaces = new HashSet<>(); + if (bean != null) { + Class clazz = bean.getClass(); + while (!Object.class.getName().equalsIgnoreCase(clazz.getName())) { + Class[] clazzInterfaces = clazz.getInterfaces(); + interfaces.addAll(Arrays.asList(clazzInterfaces)); + clazz = clazz.getSuperclass(); + } + } + return interfaces.toArray(new Class[0]); + } + +} diff --git a/pigx-common/pigx-common-seata/src/main/resources/META-INF/spring.factories b/pigx-common/pigx-common-seata/src/main/resources/META-INF/spring.factories new file mode 100644 index 000000000..68bbc5866 --- /dev/null +++ b/pigx-common/pigx-common-seata/src/main/resources/META-INF/spring.factories @@ -0,0 +1,5 @@ +org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ + com.pig4cloud.pigx.common.seata.config.SeataAutoConfiguration + + + diff --git a/pigx-common/pigx-common-seata/src/main/resources/seata-config.yml b/pigx-common/pigx-common-seata/src/main/resources/seata-config.yml new file mode 100644 index 000000000..183ff4911 --- /dev/null +++ b/pigx-common/pigx-common-seata/src/main/resources/seata-config.yml @@ -0,0 +1,56 @@ +seata: + enabled: true + tx-service-group: pigx_tx_group # 事务群组(可以每个应用独立取名,也可以使用相同的名字) + client: + rm-report-success-enable: true + rm-table-meta-check-enable: false # 自动刷新缓存中的表结构(默认false) + rm-report-retry-count: 5 # 一阶段结果上报TC重试次数(默认5) + rm-async-commit-buffer-limit: 10000 # 异步提交缓存队列长度(默认10000) + rm: + lock: + lock-retry-internal: 10 # 校验或占用全局锁重试间隔(默认10ms) + lock-retry-times: 30 # 校验或占用全局锁重试次数(默认30) + lock-retry-policy-branch-rollback-on-conflict: true # 分支事务与其它全局回滚事务冲突时锁策略(优先释放本地锁让回滚成功) + tm-commit-retry-count: 3 # 一阶段全局提交结果上报TC重试次数(默认1次,建议大于1) + tm-rollback-retry-count: 3 # 一阶段全局回滚结果上报TC重试次数(默认1次,建议大于1) + undo: + data-validation: true # 二阶段回滚镜像校验(默认true开启) + log-serialization: kryo # undo序列化方式(默认jackson 不支持 LocalDateTime) + log-table: undo_log # 自定义undo表名(默认undo_log) + log: + exceptionRate: 100 # 日志异常输出概率(默认100) + support: + spring: + datasource-autoproxy: true + service: + vgroup-mapping: + pigx_tx_group: default # TC 集群(必须与seata-server保持一致) + enable-degrade: false # 降级开关 + disable-global-transaction: false # 禁用全局事务(默认false) + grouplist: + default: pig-seata:8091 + transport: + shutdown: + wait: 3 + thread-factory: + boss-thread-prefix: NettyBoss + worker-thread-prefix: NettyServerNIOWorker + server-executor-thread-prefix: NettyServerBizHandler + share-boss-worker: false + client-selector-thread-prefix: NettyClientSelector + client-selector-thread-size: 1 + client-worker-thread-prefix: NettyClientWorkerThread + type: TCP + server: NIO + heartbeat: true + serialization: seata + compressor: none + enable-client-batch-send-request: true # 客户端事务消息请求是否批量合并发送(默认true) + registry: + file: + name: file.conf + type: file + config: + file: + name: file.conf + type: file diff --git a/pigx-common/pigx-common-security/pom.xml b/pigx-common/pigx-common-security/pom.xml index 0cdefa6ee..aebc21750 100644 --- a/pigx-common/pigx-common-security/pom.xml +++ b/pigx-common/pigx-common-security/pom.xml @@ -23,7 +23,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-security diff --git a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxLocalResourceServerTokenServices.java b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxLocalResourceServerTokenServices.java index 1744a6c43..cd69341de 100644 --- a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxLocalResourceServerTokenServices.java +++ b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxLocalResourceServerTokenServices.java @@ -4,14 +4,17 @@ import com.pig4cloud.pigx.common.core.util.SpringContextHolder; import com.pig4cloud.pigx.common.security.exception.UnauthorizedException; import com.pig4cloud.pigx.common.security.service.PigxUser; import com.pig4cloud.pigx.common.security.service.PigxUserDetailsService; +import com.pig4cloud.pigx.common.security.util.PigxSecurityMessageSourceUtil; import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Primary; import org.springframework.core.Ordered; +import org.springframework.security.authentication.AccountStatusException; import org.springframework.security.authentication.InternalAuthenticationServiceException; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.Authentication; import org.springframework.security.core.AuthenticationException; import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsChecker; import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.security.oauth2.common.OAuth2AccessToken; import org.springframework.security.oauth2.common.exceptions.InvalidTokenException; @@ -36,6 +39,8 @@ public class PigxLocalResourceServerTokenServices implements ResourceServerToken private final TokenStore tokenStore; + private final UserDetailsChecker preAuthenticationChecks; + @Override public OAuth2Authentication loadAuthentication(String accessToken) throws AuthenticationException, InvalidTokenException { @@ -68,11 +73,19 @@ public class PigxLocalResourceServerTokenServices implements ResourceServerToken UserDetails userDetails; try { userDetails = optional.get().loadUserByUser(pigUser); + + preAuthenticationChecks.check(userDetails); } catch (UsernameNotFoundException notFoundException) { throw new UnauthorizedException(String.format("%s username not found", pigUser.getUsername()), notFoundException); } + catch (AccountStatusException accountStatusException) { + throw new UnauthorizedException( + PigxSecurityMessageSourceUtil.getAccessor().getMessage( + "AbstractUserDetailsAuthenticationProvider.locked", accountStatusException.getMessage()), + accountStatusException); + } Authentication userAuthentication = new UsernamePasswordAuthenticationToken(userDetails, "N/A", userDetails.getAuthorities()); OAuth2Authentication authentication = new OAuth2Authentication(oAuth2Request, userAuthentication); diff --git a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxTokenStoreAutoConfiguration.java b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxSecurityCommonAutoConfiguration.java similarity index 79% rename from pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxTokenStoreAutoConfiguration.java rename to pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxSecurityCommonAutoConfiguration.java index bcdec8128..d44f78133 100644 --- a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxTokenStoreAutoConfiguration.java +++ b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxSecurityCommonAutoConfiguration.java @@ -7,19 +7,20 @@ import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisConnectionFactory; +import org.springframework.security.core.userdetails.UserDetailsChecker; import org.springframework.security.oauth2.provider.OAuth2Authentication; import org.springframework.security.oauth2.provider.token.DefaultAuthenticationKeyGenerator; import org.springframework.security.oauth2.provider.token.TokenStore; /** * @author lengleng - * @date 2020/9/29 + * @date 2022-04-28 *

- * redis token store 自动配置 + * 资源服务器 认证服务器 公用配置 */ @RequiredArgsConstructor @Configuration(proxyBeanMethods = false) -public class PigxTokenStoreAutoConfiguration { +public class PigxSecurityCommonAutoConfiguration { private final KeyStrResolver resolver; @@ -39,4 +40,13 @@ public class PigxTokenStoreAutoConfiguration { return tokenStore; } + /** + * 认证状态检查 + * @return UserDetailsChecker + */ + @Bean + public UserDetailsChecker preAuthenticationChecks() { + return new PigxPreAuthenticationChecks(); + } + } diff --git a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxWebResponseExceptionTranslator.java b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxWebResponseExceptionTranslator.java index a2a8755be..3b878e08c 100644 --- a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxWebResponseExceptionTranslator.java +++ b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxWebResponseExceptionTranslator.java @@ -18,7 +18,6 @@ package com.pig4cloud.pigx.common.security.component; import com.pig4cloud.pigx.common.security.exception.*; -import com.pig4cloud.pigx.common.security.util.PigxSecurityMessageSourceUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; @@ -33,8 +32,6 @@ import org.springframework.security.oauth2.provider.error.WebResponseExceptionTr import org.springframework.security.web.util.ThrowableAnalyzer; import org.springframework.web.HttpRequestMethodNotSupportedException; -import java.util.Locale; - /** * @author lengleng * @date 2020-06-20 OAutH Server 异常处理,重写oauth 默认实现 @@ -65,9 +62,7 @@ public class PigxWebResponseExceptionTranslator implements WebResponseExceptionT ase = (InvalidGrantException) throwableAnalyzer.getFirstThrowableOfType(InvalidGrantException.class, causeChain); if (ase != null) { - String msg = PigxSecurityMessageSourceUtil.getAccessor().getMessage( - "AbstractUserDetailsAuthenticationProvider.badCredentials", ase.getMessage(), Locale.CHINA); - return handleOAuth2Exception(new InvalidException(msg, ase)); + return handleOAuth2Exception(new InvalidException(ase.getLocalizedMessage(), ase)); } ase = (HttpRequestMethodNotSupportedException) throwableAnalyzer @@ -76,7 +71,7 @@ public class PigxWebResponseExceptionTranslator implements WebResponseExceptionT return handleOAuth2Exception(new MethodNotAllowedException(ase.getMessage(), ase)); } - // 处理不合法的令牌错误 427 返回 + // 处理不合法的令牌错误 424 返回 ase = (InvalidTokenException) throwableAnalyzer.getFirstThrowableOfType(InvalidTokenException.class, causeChain); if (ase != null) { diff --git a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/listener/AuthenticationFailureEventListener.java b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/listener/AuthenticationFailureEventListener.java index fe755e79d..d3c21c409 100644 --- a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/listener/AuthenticationFailureEventListener.java +++ b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/listener/AuthenticationFailureEventListener.java @@ -17,6 +17,7 @@ package com.pig4cloud.pigx.common.security.listener; +import cn.hutool.core.collection.CollUtil; import com.pig4cloud.pigx.common.security.handler.AuthenticationFailureHandler; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationListener; @@ -29,6 +30,7 @@ import org.springframework.web.context.request.ServletRequestAttributes; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.util.List; /** * @author lengleng @@ -37,7 +39,7 @@ import javax.servlet.http.HttpServletResponse; public class AuthenticationFailureEventListener implements ApplicationListener { @Autowired(required = false) - private AuthenticationFailureHandler failureHandler; + private List failureHandlerList; /** * Handle an application event. @@ -58,9 +60,10 @@ public class AuthenticationFailureEventListener implements ApplicationListener failureHandler.handle(authenticationException, authentication, + request, response)); } } diff --git a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/listener/AuthenticationSuccessEventListener.java b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/listener/AuthenticationSuccessEventListener.java index 5ba683725..4e949624c 100644 --- a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/listener/AuthenticationSuccessEventListener.java +++ b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/listener/AuthenticationSuccessEventListener.java @@ -29,6 +29,7 @@ import org.springframework.web.context.request.ServletRequestAttributes; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.util.List; /** * @author lengleng @@ -37,7 +38,7 @@ import javax.servlet.http.HttpServletResponse; public class AuthenticationSuccessEventListener implements ApplicationListener { @Autowired(required = false) - private AuthenticationSuccessHandler successHandler; + private List successHandlerList; /** * Handle an application event. @@ -46,13 +47,12 @@ public class AuthenticationSuccessEventListener implements ApplicationListener successHandler.handle(authentication, request, response)); } } diff --git a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxAppUserDetailsServiceImpl.java b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxAppUserDetailsServiceImpl.java index bfac04a19..5e916f155 100755 --- a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxAppUserDetailsServiceImpl.java +++ b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxAppUserDetailsServiceImpl.java @@ -18,14 +18,11 @@ package com.pig4cloud.pigx.common.security.service; import com.pig4cloud.pigx.admin.api.dto.UserInfo; import com.pig4cloud.pigx.admin.api.feign.RemoteUserService; -import com.pig4cloud.pigx.common.core.constant.CacheConstants; import com.pig4cloud.pigx.common.core.constant.SecurityConstants; import com.pig4cloud.pigx.common.core.util.R; import lombok.RequiredArgsConstructor; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; -import org.springframework.cache.Cache; -import org.springframework.cache.CacheManager; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; @@ -42,8 +39,6 @@ public class PigxAppUserDetailsServiceImpl implements PigxUserDetailsService { private final RemoteUserService remoteUserService; - private final CacheManager cacheManager; - /** * 手机号登录 * @param phone 手机号 @@ -52,18 +47,8 @@ public class PigxAppUserDetailsServiceImpl implements PigxUserDetailsService { @Override @SneakyThrows public UserDetails loadUserByUsername(String phone) { - Cache cache = cacheManager.getCache(CacheConstants.USER_DETAILS); - if (cache != null && cache.get(phone) != null) { - return (PigxUser) cache.get(phone).get(); - } - R result = remoteUserService.social(phone, SecurityConstants.FROM_IN); - - UserDetails userDetails = getUserDetails(result); - if (cache != null) { - cache.put(phone, userDetails); - } - return userDetails; + return getUserDetails(result); } /** diff --git a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxCustomTokenServices.java b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxCustomTokenServices.java index 34134c4aa..56a243f85 100644 --- a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxCustomTokenServices.java +++ b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxCustomTokenServices.java @@ -4,8 +4,6 @@ import cn.hutool.core.map.MapUtil; import com.pig4cloud.pigx.common.core.constant.CommonConstants; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.InitializingBean; -import org.springframework.security.authentication.AuthenticationManager; -import org.springframework.security.core.Authentication; import org.springframework.security.core.AuthenticationException; import org.springframework.security.oauth2.common.*; import org.springframework.security.oauth2.common.exceptions.InvalidGrantException; @@ -13,7 +11,6 @@ import org.springframework.security.oauth2.common.exceptions.InvalidScopeExcepti import org.springframework.security.oauth2.common.exceptions.InvalidTokenException; import org.springframework.security.oauth2.provider.*; import org.springframework.security.oauth2.provider.token.*; -import org.springframework.security.web.authentication.preauth.PreAuthenticatedAuthenticationToken; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; @@ -45,8 +42,6 @@ public class PigxCustomTokenServices implements AuthorizationServerTokenServices private TokenEnhancer accessTokenEnhancer; - private AuthenticationManager authenticationManager; - /** * Initialize these token services. If no random generator is set, one will be * created. @@ -121,17 +116,6 @@ public class PigxCustomTokenServices implements AuthorizationServerTokenServices } OAuth2Authentication authentication = tokenStore.readAuthenticationForRefreshToken(refreshToken); - if (this.authenticationManager != null && !authentication.isClientOnly()) { - // The client has already been authenticated, but the user authentication - // might be old now, so give it a - // chance to re-authenticate. - Authentication user = new PreAuthenticatedAuthenticationToken(authentication.getUserAuthentication(), "", - authentication.getAuthorities()); - user = authenticationManager.authenticate(user); - Object details = authentication.getDetails(); - authentication = new OAuth2Authentication(authentication.getOAuth2Request(), user); - authentication.setDetails(details); - } String clientId = authentication.getOAuth2Request().getClientId(); if (clientId == null || !clientId.equals(tokenRequest.getClientId())) { throw new InvalidGrantException("Wrong client for this refresh token: " + refreshTokenValue); @@ -394,15 +378,6 @@ public class PigxCustomTokenServices implements AuthorizationServerTokenServices this.tokenStore = tokenStore; } - /** - * An authentication manager that will be used (if provided) to check the user - * authentication when a token is refreshed. - * @param authenticationManager the authenticationManager to set - */ - public void setAuthenticationManager(AuthenticationManager authenticationManager) { - this.authenticationManager = authenticationManager; - } - /** * The client details service to use for looking up clients (if necessary). Optional * if the access token expiry is set globally via diff --git a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxUserDetailsService.java b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxUserDetailsService.java index ee78b9e5e..692644485 100644 --- a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxUserDetailsService.java +++ b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/service/PigxUserDetailsService.java @@ -22,6 +22,7 @@ import com.pig4cloud.pigx.admin.api.entity.SysUser; import com.pig4cloud.pigx.common.core.constant.CommonConstants; import com.pig4cloud.pigx.common.core.constant.SecurityConstants; import com.pig4cloud.pigx.common.core.util.R; +import com.pig4cloud.pigx.common.core.util.RetOps; import org.springframework.core.Ordered; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.authority.AuthorityUtils; @@ -62,13 +63,23 @@ public interface PigxUserDetailsService extends UserDetailsService, Ordered { * 构建userdetails * @param result 用户信息 * @return UserDetails + * @throws UsernameNotFoundException */ default UserDetails getUserDetails(R result) { - if (result == null || result.getData() == null) { - throw new UsernameNotFoundException("用户不存在"); - } + // @formatter:off + return RetOps.of(result) + .getData() + .map(this::convertUserDetails) + .orElseThrow(() -> new UsernameNotFoundException("用户不存在")); + // @formatter:on + } - UserInfo info = result.getData(); + /** + * UserInfo 转 UserDetails + * @param info + * @return 返回UserDetails对象 + */ + default UserDetails convertUserDetails(UserInfo info) { Set dbAuthsSet = new HashSet<>(); if (ArrayUtil.isNotEmpty(info.getRoles())) { // 获取角色 diff --git a/pigx-common/pigx-common-security/src/main/resources/META-INF/spring.factories b/pigx-common/pigx-common-security/src/main/resources/META-INF/spring.factories index 4bc46e709..9d9a8eda7 100644 --- a/pigx-common/pigx-common-security/src/main/resources/META-INF/spring.factories +++ b/pigx-common/pigx-common-security/src/main/resources/META-INF/spring.factories @@ -4,7 +4,7 @@ org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ com.pig4cloud.pigx.common.security.service.PigxDefaultUserDetailsServiceImpl,\ com.pig4cloud.pigx.common.security.service.PigxAppUserDetailsServiceImpl,\ com.pig4cloud.pigx.common.security.service.PigxClientDetailsServiceImpl,\ - com.pig4cloud.pigx.common.security.component.PigxTokenStoreAutoConfiguration,\ + com.pig4cloud.pigx.common.security.component.PigxSecurityCommonAutoConfiguration,\ com.pig4cloud.pigx.common.security.component.PigxSecurityMessageSourceConfiguration,\ com.pig4cloud.pigx.common.security.component.PigxTokenStoreCleanSchedule,\ com.pig4cloud.pigx.common.security.listener.AuthenticationFailureEventListener,\ diff --git a/pigx-common/pigx-common-sentinel/pom.xml b/pigx-common/pigx-common-sentinel/pom.xml index 4e5b1cda4..ba263373e 100755 --- a/pigx-common/pigx-common-sentinel/pom.xml +++ b/pigx-common/pigx-common-sentinel/pom.xml @@ -5,7 +5,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 4.0.0 diff --git a/pigx-common/pigx-common-sentinel/src/main/java/com/pig4cloud/pigx/common/sentinel/SentinelAutoConfiguration.java b/pigx-common/pigx-common-sentinel/src/main/java/com/pig4cloud/pigx/common/sentinel/SentinelAutoConfiguration.java index b59191515..42866075a 100755 --- a/pigx-common/pigx-common-sentinel/src/main/java/com/pig4cloud/pigx/common/sentinel/SentinelAutoConfiguration.java +++ b/pigx-common/pigx-common-sentinel/src/main/java/com/pig4cloud/pigx/common/sentinel/SentinelAutoConfiguration.java @@ -21,7 +21,6 @@ import com.alibaba.cloud.sentinel.feign.SentinelFeignAutoConfiguration; import com.alibaba.csp.sentinel.adapter.spring.webmvc.callback.BlockExceptionHandler; import com.alibaba.csp.sentinel.adapter.spring.webmvc.callback.RequestOriginParser; import com.pig4cloud.pigx.common.sentinel.feign.PigxSentinelFeign; -import com.pig4cloud.pigx.common.sentinel.feign.PigxSentinelFilterConfiguration; import com.pig4cloud.pigx.common.sentinel.handle.PigxUrlBlockHandler; import com.pig4cloud.pigx.common.sentinel.parser.PigxHeaderRequestOriginParser; import feign.Feign; @@ -30,7 +29,6 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Import; import org.springframework.context.annotation.Scope; /** @@ -40,7 +38,6 @@ import org.springframework.context.annotation.Scope; * sentinel 配置 */ @Configuration(proxyBeanMethods = false) -@Import(PigxSentinelFilterConfiguration.class) @AutoConfigureBefore(SentinelFeignAutoConfiguration.class) public class SentinelAutoConfiguration { diff --git a/pigx-common/pigx-common-sentinel/src/main/java/com/pig4cloud/pigx/common/sentinel/feign/PigxSentinelFilterConfiguration.java b/pigx-common/pigx-common-sentinel/src/main/java/com/pig4cloud/pigx/common/sentinel/feign/PigxSentinelFilterConfiguration.java deleted file mode 100644 index d03304420..000000000 --- a/pigx-common/pigx-common-sentinel/src/main/java/com/pig4cloud/pigx/common/sentinel/feign/PigxSentinelFilterConfiguration.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.pig4cloud.pigx.common.sentinel.feign; - -import com.alibaba.cloud.sentinel.SentinelProperties; -import com.alibaba.csp.sentinel.adapter.spring.webmvc.SentinelWebInterceptor; -import com.alibaba.csp.sentinel.adapter.spring.webmvc.callback.BlockExceptionHandler; -import com.alibaba.csp.sentinel.adapter.spring.webmvc.callback.DefaultBlockExceptionHandler; -import com.alibaba.csp.sentinel.adapter.spring.webmvc.callback.RequestOriginParser; -import com.alibaba.csp.sentinel.adapter.spring.webmvc.callback.UrlCleaner; -import com.alibaba.csp.sentinel.adapter.spring.webmvc.config.SentinelWebMvcConfig; -import lombok.RequiredArgsConstructor; -import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication; -import org.springframework.context.annotation.Bean; -import org.springframework.util.StringUtils; - -import java.util.Optional; - -/** - * @author lengleng - * @date 2021/12/4 - * - * 避免 spring cloud 2021 不兼容 的问题 - */ -@RequiredArgsConstructor -@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.SERVLET) -public class PigxSentinelFilterConfiguration { - - @Bean - public SentinelWebInterceptor sentinelWebInterceptor(SentinelWebMvcConfig sentinelWebMvcConfig) { - return new SentinelWebInterceptor(sentinelWebMvcConfig); - } - - @Bean - public SentinelWebMvcConfig sentinelWebMvcConfig(SentinelProperties properties, - Optional urlCleanerOptional, Optional blockExceptionHandlerOptional, - Optional requestOriginParserOptional) { - SentinelWebMvcConfig sentinelWebMvcConfig = new SentinelWebMvcConfig(); - sentinelWebMvcConfig.setHttpMethodSpecify(properties.getHttpMethodSpecify()); - sentinelWebMvcConfig.setWebContextUnify(properties.getWebContextUnify()); - - if (blockExceptionHandlerOptional.isPresent()) { - blockExceptionHandlerOptional.ifPresent(sentinelWebMvcConfig::setBlockExceptionHandler); - } - else { - if (StringUtils.hasText(properties.getBlockPage())) { - sentinelWebMvcConfig.setBlockExceptionHandler( - ((request, response, e) -> response.sendRedirect(properties.getBlockPage()))); - } - else { - sentinelWebMvcConfig.setBlockExceptionHandler(new DefaultBlockExceptionHandler()); - } - } - - urlCleanerOptional.ifPresent(sentinelWebMvcConfig::setUrlCleaner); - requestOriginParserOptional.ifPresent(sentinelWebMvcConfig::setOriginParser); - return sentinelWebMvcConfig; - } - -} diff --git a/pigx-common/pigx-common-sequence/pom.xml b/pigx-common/pigx-common-sequence/pom.xml index 7812a5377..a4c18443f 100755 --- a/pigx-common/pigx-common-sequence/pom.xml +++ b/pigx-common/pigx-common-sequence/pom.xml @@ -6,7 +6,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-sequence diff --git a/pigx-common/pigx-common-sequence/src/main/java/com/pig4cloud/pigx/common/sequence/range/impl/db/provider/DmSqlProvider.java b/pigx-common/pigx-common-sequence/src/main/java/com/pig4cloud/pigx/common/sequence/range/impl/db/provider/DmSqlProvider.java new file mode 100644 index 000000000..630f02561 --- /dev/null +++ b/pigx-common/pigx-common-sequence/src/main/java/com/pig4cloud/pigx/common/sequence/range/impl/db/provider/DmSqlProvider.java @@ -0,0 +1,42 @@ +package com.pig4cloud.pigx.common.sequence.range.impl.db.provider; + +import com.baomidou.mybatisplus.annotation.DbType; +import org.springframework.stereotype.Component; + +/** + * 数据源提供者 + * + * @author 达梦数据库支持 + * @date 2022-04-27 + * + * sql server + */ +@Component +public class DmSqlProvider implements SqlProvider { + + /** + * 获取表是否存在 + * @return + */ + @Override + public String getExistTableSql() { + return "select count(*) from user_tables where table_name =upper('#tableName')"; + } + + /** + * 获取建表语句 + * @return + */ + @Override + public String getCreateTableSql() { + return "CREATE TABLE #tableName (ID BIGINT IDENTITY (1,1) NOT NULL,VALUE BIGINT NOT NULL" + + ",NAME VARCHAR (32) NOT NULL,GMT_CREATE TIMESTAMP (0) NOT NULL,GMT_MODIFIED TIMESTAMP (0) NOT NULL" + + ",NOT CLUSTER PRIMARY KEY (ID),CONSTRAINT UK_NAME UNIQUE (NAME)) STORAGE (ON MAIN,CLUSTERBTR);"; + } + + @Override + public Boolean support(DbType dbType) { + return DbType.SQL_SERVER.equals(dbType); + } + +} diff --git a/pigx-common/pigx-common-sequence/src/main/java/com/pig4cloud/pigx/common/sequence/range/impl/db/provider/MssqlSqlProvider.java b/pigx-common/pigx-common-sequence/src/main/java/com/pig4cloud/pigx/common/sequence/range/impl/db/provider/MssqlSqlProvider.java new file mode 100644 index 000000000..cf8ad245b --- /dev/null +++ b/pigx-common/pigx-common-sequence/src/main/java/com/pig4cloud/pigx/common/sequence/range/impl/db/provider/MssqlSqlProvider.java @@ -0,0 +1,34 @@ +package com.pig4cloud.pigx.common.sequence.range.impl.db.provider; + +import com.baomidou.mybatisplus.annotation.DbType; +import org.springframework.stereotype.Component; + +/** + * 数据源提供者 + * + * @author hanyichao + * @date 2022-04-27 + * + * sql server + */ +@Component +public class MssqlSqlProvider implements SqlProvider { + + /** + * 获取建表语句 + * @return + */ + @Override + public String getCreateTableSql() { + return "IF NOT EXISTS (\n" + + "SELECT*FROM sys.all_objects WHERE object_id=OBJECT_ID(N'#tableName') AND type IN ('U')) \n" + + "CREATE TABLE #tableName (id bigint NOT NULL,VALUE bigint NOT NULL,name nvarchar (32) COLLATE " + + "Chinese_PRC_CI_AS NOT NULL,gmt_create datetime2 (7) NOT NULL,gmt_modified datetime2 (7) NOT NULL) GO"; + } + + @Override + public Boolean support(DbType dbType) { + return DbType.SQL_SERVER2005.equals(dbType); + } + +} diff --git a/pigx-common/pigx-common-swagger/pom.xml b/pigx-common/pigx-common-swagger/pom.xml index 32b3c5c19..96766e922 100644 --- a/pigx-common/pigx-common-swagger/pom.xml +++ b/pigx-common/pigx-common-swagger/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-swagger diff --git a/pigx-common/pigx-common-test/pom.xml b/pigx-common/pigx-common-test/pom.xml index 1055f8302..265ad1757 100755 --- a/pigx-common/pigx-common-test/pom.xml +++ b/pigx-common/pigx-common-test/pom.xml @@ -6,7 +6,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-test diff --git a/pigx-common/pigx-common-transaction/pom.xml b/pigx-common/pigx-common-transaction/pom.xml deleted file mode 100644 index a1f4e6f70..000000000 --- a/pigx-common/pigx-common-transaction/pom.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - 4.0.0 - - com.pig4cloud - pigx-common - 4.3.0 - - - pigx-common-transaction - jar - - pigx lcn transaction - - - - com.pig4cloud - pigx-common-core - - - - com.codingapi - tx-client - ${lcn.version} - - - org.slf4j - * - - - - - com.codingapi - tx-plugins-db - ${lcn.version} - - - org.slf4j - * - - - - - - org.springframework.cloud - spring-cloud-starter-openfeign - - - - diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/TransactionConfiguration.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/TransactionConfiguration.java deleted file mode 100755 index cdec744b7..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/TransactionConfiguration.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.common.transaction; - -import org.springframework.context.annotation.ComponentScan; -import org.springframework.context.annotation.Configuration; - -/** - * @author LCN on 2017/6/26. - * @author LCN - * @since 4.1.0 - */ - -@Configuration -@ComponentScan({ "com.codingapi.tx", "com.pig4cloud.pigx.common.transaction" }) -public class TransactionConfiguration { - -} diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/pack-info.md b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/pack-info.md deleted file mode 100644 index d48381f67..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/pack-info.md +++ /dev/null @@ -1,6 +0,0 @@ -由于LCN 暂未发布适配 2.0 版本 -当前包是根据TCN transaction-springcloud 模块修改而来 -解决LCN 不兼容 Spring Cloud Finchley 问题 - -关于LCN -https://github.com/codingapi/tx-lcn diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/rewrite/TxManagerHttpRequestServiceImpl.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/rewrite/TxManagerHttpRequestServiceImpl.java deleted file mode 100644 index 325594aac..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/rewrite/TxManagerHttpRequestServiceImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.common.transaction.rewrite; - -import com.codingapi.tx.netty.service.TxManagerHttpRequestService; -import com.lorne.core.framework.utils.http.HttpUtils; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; - -/** - * @author lengleng - * @date 2018/8/19 请求tx-manager接口实现 - */ -@Slf4j -@Service -public class TxManagerHttpRequestServiceImpl implements TxManagerHttpRequestService { - - @Override - public String httpGet(String url) { - String res = HttpUtils.get(url); - log.debug("请求接口 {},响应报文:{}", url, res); - return res; - } - - @Override - public String httpPost(String url, String params) { - String res = HttpUtils.post(url, params); - log.debug("请求接口 {},响应报文:{}", url, res); - return res; - } - -} diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/rewrite/TxManagerTxUrlServiceImpl.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/rewrite/TxManagerTxUrlServiceImpl.java deleted file mode 100644 index 84f2e1461..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/rewrite/TxManagerTxUrlServiceImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.common.transaction.rewrite; - -import com.codingapi.tx.config.service.TxManagerTxUrlService; -import com.pig4cloud.pigx.common.core.constant.ServiceNameConstants; -import lombok.AllArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.cloud.client.ServiceInstance; -import org.springframework.cloud.client.loadbalancer.LoadBalancerClient; -import org.springframework.stereotype.Service; - -/** - * @author lengleng - * @date 2018/8/19 使用服务发现重写 Txmanager 获取规则 - */ -@Slf4j -@Service -@AllArgsConstructor -public class TxManagerTxUrlServiceImpl implements TxManagerTxUrlService { - - private final LoadBalancerClient loadBalancerClient; - - @Override - public String getTxUrl() { - ServiceInstance serviceInstance = loadBalancerClient.choose(ServiceNameConstants.TX_MANAGER); - String host = serviceInstance.getHost(); - Integer port = serviceInstance.getPort(); - String url = String.format("http://%s:%s/tx/manager/", host, port); - log.info("tm.manager.url -> {}", url); - return url; - } - -} diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/RequestInterceptorConfiguration.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/RequestInterceptorConfiguration.java deleted file mode 100755 index c61f3d0a1..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/RequestInterceptorConfiguration.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.common.transaction.tx; - -import com.pig4cloud.pigx.common.transaction.tx.springcloud.feign.TransactionRestTemplateInterceptor; -import feign.RequestInterceptor; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -/** - * @author LCN on 2018/1/18 - * @author LCN - * @since 4.1.0 - */ -@Configuration -public class RequestInterceptorConfiguration { - - @Bean - public RequestInterceptor requestInterceptor() { - return new TransactionRestTemplateInterceptor(); - } - -} diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/init/ApplicationTxInitializer.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/init/ApplicationTxInitializer.java deleted file mode 100644 index 670a7ddd8..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/init/ApplicationTxInitializer.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.pig4cloud.pigx.common.transaction.tx.init; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.env.EnvironmentPostProcessor; -import org.springframework.core.Ordered; -import org.springframework.core.env.ConfigurableEnvironment; - -/** - * @author lengleng - * @date 22022-02-17 - *

- * 通过环境变量的形式注入 允许循环依赖 - */ -public class ApplicationTxInitializer implements EnvironmentPostProcessor, Ordered { - - @Override - public void postProcessEnvironment(ConfigurableEnvironment environment, SpringApplication application) { - System.setProperty("spring.main.allow-circular-references", "true"); - } - - @Override - public int getOrder() { - return Ordered.LOWEST_PRECEDENCE; - } - -} diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/feign/TransactionRestTemplateInterceptor.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/feign/TransactionRestTemplateInterceptor.java deleted file mode 100755 index 91985a294..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/feign/TransactionRestTemplateInterceptor.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.common.transaction.tx.springcloud.feign; - -import com.codingapi.tx.aop.bean.TxTransactionLocal; -import feign.RequestInterceptor; -import feign.RequestTemplate; -import lombok.extern.slf4j.Slf4j; - -/** - * @author LCN on 2017/6/26. - * @author LCN - * @since 4.1.0 - */ -@Slf4j -public class TransactionRestTemplateInterceptor implements RequestInterceptor { - - @Override - public void apply(RequestTemplate requestTemplate) { - - TxTransactionLocal txTransactionLocal = TxTransactionLocal.current(); - String groupId = txTransactionLocal == null ? null : txTransactionLocal.getGroupId(); - - log.info("LCN-SpringCloud TxGroup info -> groupId:" + groupId); - - if (txTransactionLocal != null) { - requestTemplate.header("tx-group", groupId); - } - } - -} diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/http/TransactionHttpRequestInterceptor.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/http/TransactionHttpRequestInterceptor.java deleted file mode 100755 index 5842f6d9d..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/http/TransactionHttpRequestInterceptor.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.common.transaction.tx.springcloud.http; - -import com.codingapi.tx.aop.bean.TxTransactionLocal; -import lombok.SneakyThrows; -import lombok.extern.slf4j.Slf4j; -import org.springframework.http.HttpRequest; -import org.springframework.http.client.ClientHttpRequestExecution; -import org.springframework.http.client.ClientHttpRequestInterceptor; -import org.springframework.http.client.ClientHttpResponse; - -/** - * @author LCN on 2017/7/3. - * @author LCN - * @since 4.1.0 - */ -@Slf4j -public class TransactionHttpRequestInterceptor implements ClientHttpRequestInterceptor { - - @Override - @SneakyThrows - public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution) { - - TxTransactionLocal txTransactionLocal = TxTransactionLocal.current(); - String groupId = txTransactionLocal == null ? null : txTransactionLocal.getGroupId(); - - log.info("LCN-SpringCloud TxGroup info -> groupId:" + groupId); - - if (txTransactionLocal != null) { - request.getHeaders().add("tx-group", groupId); - } - return execution.execute(request, body); - } - -} diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/interceptor/TransactionAspect.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/interceptor/TransactionAspect.java deleted file mode 100755 index 4636d0d39..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/interceptor/TransactionAspect.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.common.transaction.tx.springcloud.interceptor; - -import lombok.SneakyThrows; -import lombok.extern.slf4j.Slf4j; -import org.aspectj.lang.ProceedingJoinPoint; -import org.aspectj.lang.annotation.Around; -import org.aspectj.lang.annotation.Aspect; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.core.Ordered; -import org.springframework.stereotype.Component; - -/** - * LCN 事务拦截器 - * - * @author LCN on 2018/1/5 - * @author LCN - * @since 4.1.0 - */ - -@Slf4j -@Aspect -@Component -public class TransactionAspect implements Ordered { - - @Autowired - private TxManagerInterceptor txManagerInterceptor; - - @SneakyThrows - @Around("@annotation(com.codingapi.tx.annotation.TxTransaction)") - public Object transactionRunning(ProceedingJoinPoint point) { - log.debug("annotation-TransactionRunning-start---->"); - Object obj = txManagerInterceptor.around(point); - log.debug("annotation-TransactionRunning-end---->"); - return obj; - } - - @SneakyThrows - @Around("this(com.codingapi.tx.annotation.ITxTransaction) && execution( * *(..))") - public Object around(ProceedingJoinPoint point) { - log.debug("interface-ITransactionRunning-start---->"); - Object obj = txManagerInterceptor.around(point); - log.debug("interface-ITransactionRunning-end---->"); - return obj; - } - - @Override - public int getOrder() { - return HIGHEST_PRECEDENCE; - } - -} diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/interceptor/TxManagerInterceptor.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/interceptor/TxManagerInterceptor.java deleted file mode 100755 index c7a5ffd77..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/interceptor/TxManagerInterceptor.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.common.transaction.tx.springcloud.interceptor; - -import com.codingapi.tx.aop.service.AspectBeforeService; -import lombok.AllArgsConstructor; -import lombok.SneakyThrows; -import lombok.extern.slf4j.Slf4j; -import org.aspectj.lang.ProceedingJoinPoint; -import org.springframework.stereotype.Component; -import org.springframework.web.context.request.RequestAttributes; -import org.springframework.web.context.request.RequestContextHolder; -import org.springframework.web.context.request.ServletRequestAttributes; - -import javax.servlet.http.HttpServletRequest; - -/** - * @author LCN on 2017/6/7. - * @author LCN - * @since 4.1.0 - */ - -@Slf4j -@Component -@AllArgsConstructor -public class TxManagerInterceptor { - - private final AspectBeforeService aspectBeforeService; - - @SneakyThrows - public Object around(ProceedingJoinPoint point) { - RequestAttributes requestAttributes; - String groupId = null; - try { - requestAttributes = RequestContextHolder.currentRequestAttributes(); - HttpServletRequest request = ((ServletRequestAttributes) requestAttributes).getRequest(); - groupId = request.getHeader("tx-group"); - } - catch (IllegalStateException e) { - log.info("非web 环境调用 不包含请求上下文"); - } - return aspectBeforeService.around(groupId, point); - } - -} diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/listener/ServerListener.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/listener/ServerListener.java deleted file mode 100755 index 0df8fbeeb..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/listener/ServerListener.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.common.transaction.tx.springcloud.listener; - -import com.codingapi.tx.listener.service.InitService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.web.context.WebServerInitializedEvent; -import org.springframework.context.ApplicationListener; -import org.springframework.stereotype.Component; - -/** - * @author LCN - * @since 4.1.0 - */ -@Component -public class ServerListener implements ApplicationListener { - - private Logger logger = LoggerFactory.getLogger(ServerListener.class); - - private int serverPort; - - @Autowired - private InitService initService; - - @Override - public void onApplicationEvent(WebServerInitializedEvent event) { - logger.info("onApplicationEvent -> onApplicationEvent. " + event.getWebServer()); - this.serverPort = event.getWebServer().getPort(); - initService.start(); - } - - public int getPort() { - return this.serverPort; - } - -} diff --git a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/service/impl/ModelNameServiceImpl.java b/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/service/impl/ModelNameServiceImpl.java deleted file mode 100755 index 11c0d268b..000000000 --- a/pigx-common/pigx-common-transaction/src/main/java/com/pig4cloud/pigx/common/transaction/tx/springcloud/service/impl/ModelNameServiceImpl.java +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.common.transaction.tx.springcloud.service.impl; - -import com.codingapi.tx.listener.service.ModelNameService; -import com.lorne.core.framework.utils.encode.MD5Util; -import com.pig4cloud.pigx.common.transaction.tx.springcloud.listener.ServerListener; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Configuration; -import org.springframework.stereotype.Service; - -import java.net.InetAddress; -import java.net.UnknownHostException; - -/** - * @author LCN on 2017/7/12. - * @author LCN - * @since 4.1.0 - */ -@Service -@Configuration -public class ModelNameServiceImpl implements ModelNameService { - - @Value("${spring.application.name}") - private String modelName; - - @Autowired - private ServerListener serverListener; - - private String host = null; - - @Override - public String getModelName() { - return modelName; - } - - private String getIp() { - if (host == null) { - try { - host = InetAddress.getLocalHost().getHostAddress(); - } - catch (UnknownHostException e) { - e.printStackTrace(); - } - } - return host; - } - - private int getPort() { - int port = serverListener.getPort(); - int count = 0; - while (port == 0) { - try { - Thread.sleep(10); - } - catch (InterruptedException e) { - e.printStackTrace(); - } - port = serverListener.getPort(); - count++; - - if (count == 2000) { - throw new RuntimeException("get server port error."); - } - } - - return port; - } - - @Override - public String getUniqueKey() { - String address = getIp() + getPort(); - return MD5Util.md5(address.getBytes()); - } - - @Override - public String getIpAddress() { - String address = getIp() + ":" + getPort(); - return address; - } - -} diff --git a/pigx-common/pigx-common-transaction/src/main/resources/META-INF/spring.factories b/pigx-common/pigx-common-transaction/src/main/resources/META-INF/spring.factories deleted file mode 100644 index b4aa57cf6..000000000 --- a/pigx-common/pigx-common-transaction/src/main/resources/META-INF/spring.factories +++ /dev/null @@ -1,3 +0,0 @@ -org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.pig4cloud.pigx.common.transaction.TransactionConfiguration -org.springframework.boot.env.EnvironmentPostProcessor=\ - com.pig4cloud.pigx.common.transaction.tx.init.ApplicationTxInitializer diff --git a/pigx-common/pigx-common-websocket/pom.xml b/pigx-common/pigx-common-websocket/pom.xml index 07983b659..9ac5ac93f 100755 --- a/pigx-common/pigx-common-websocket/pom.xml +++ b/pigx-common/pigx-common-websocket/pom.xml @@ -6,7 +6,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-websocket diff --git a/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/config/WebSocketHandlerConfig.java b/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/config/WebSocketHandlerConfig.java index 4c7809709..7215097d8 100644 --- a/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/config/WebSocketHandlerConfig.java +++ b/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/config/WebSocketHandlerConfig.java @@ -14,7 +14,6 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.cloud.client.ServiceInstance; import org.springframework.context.annotation.Bean; import org.springframework.web.socket.WebSocketHandler; import org.springframework.web.socket.handler.TextWebSocketHandler; @@ -32,8 +31,8 @@ public class WebSocketHandlerConfig { @Bean @ConditionalOnMissingBean(SessionKeyGenerator.class) - public SessionKeyGenerator sessionKeyGenerator(ServiceInstance serviceInstance) { - return new PigxSessionKeyGenerator(serviceInstance); + public SessionKeyGenerator sessionKeyGenerator() { + return new PigxSessionKeyGenerator(); } @Bean diff --git a/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/custom/PigxSessionKeyGenerator.java b/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/custom/PigxSessionKeyGenerator.java index 33c5dfb26..3aefc40a0 100644 --- a/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/custom/PigxSessionKeyGenerator.java +++ b/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/custom/PigxSessionKeyGenerator.java @@ -3,7 +3,6 @@ package com.pig4cloud.pigx.common.websocket.custom; import com.pig4cloud.pigx.common.security.service.PigxUser; import com.pig4cloud.pigx.common.websocket.holder.SessionKeyGenerator; import lombok.RequiredArgsConstructor; -import org.springframework.cloud.client.ServiceInstance; import org.springframework.context.annotation.Configuration; import org.springframework.web.socket.WebSocketSession; @@ -15,8 +14,6 @@ import org.springframework.web.socket.WebSocketSession; @RequiredArgsConstructor public class PigxSessionKeyGenerator implements SessionKeyGenerator { - private final ServiceInstance instance; - /** * 获取当前session的唯一标识 * @param webSocketSession 当前session @@ -29,8 +26,8 @@ public class PigxSessionKeyGenerator implements SessionKeyGenerator { if (obj instanceof PigxUser) { PigxUser user = (PigxUser) obj; - // IP:port:userId 作为唯一区分 - return String.format("%s:%s:%s", instance.getHost(), instance.getPort(), user.getId()); + // userId 作为唯一区分 + return String.valueOf(user.getId()); } return null; diff --git a/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/distribute/RedisMessageDistributor.java b/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/distribute/RedisMessageDistributor.java index 3833c6716..7fcf30488 100644 --- a/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/distribute/RedisMessageDistributor.java +++ b/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/distribute/RedisMessageDistributor.java @@ -1,13 +1,11 @@ package com.pig4cloud.pigx.common.websocket.distribute; import cn.hutool.json.JSONUtil; -import com.pig4cloud.pigx.common.core.util.SpringContextHolder; import lombok.RequiredArgsConstructor; -import org.springframework.cloud.client.ServiceInstance; import org.springframework.data.redis.core.StringRedisTemplate; +import java.util.ArrayList; import java.util.List; -import java.util.stream.Collectors; /** * 消息分发器 @@ -27,10 +25,7 @@ public class RedisMessageDistributor implements MessageDistributor { @Override public void distribute(MessageDO messageDO) { // 包装 sessionKey 适配分布式多环境 - ServiceInstance instance = SpringContextHolder.getBean(ServiceInstance.class); - List sessionKeyList = messageDO.getSessionKeys().stream() - .map(key -> String.format("%s:%s:%s", instance.getHost(), instance.getPort(), key)) - .collect(Collectors.toList()); + List sessionKeyList = new ArrayList<>(messageDO.getSessionKeys()); messageDO.setSessionKeys(sessionKeyList); String str = JSONUtil.toJsonStr(messageDO); diff --git a/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/holder/WebSocketSessionHolder.java b/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/holder/WebSocketSessionHolder.java index e06cc3c17..f6802e9da 100644 --- a/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/holder/WebSocketSessionHolder.java +++ b/pigx-common/pigx-common-websocket/src/main/java/com/pig4cloud/pigx/common/websocket/holder/WebSocketSessionHolder.java @@ -18,7 +18,7 @@ public final class WebSocketSessionHolder { private WebSocketSessionHolder() { } - private static final Map USER_SESSION_MAP = new ConcurrentHashMap<>(); + private static final Map USER_SESSION_MAP = new ConcurrentHashMap<>(); /** * 添加一个 session @@ -26,7 +26,7 @@ public final class WebSocketSessionHolder { * @param session 待添加的 WebSocketSession */ public static void addSession(Object sessionKey, WebSocketSession session) { - USER_SESSION_MAP.put(sessionKey, session); + USER_SESSION_MAP.put(sessionKey.toString(), session); } /** @@ -34,7 +34,7 @@ public final class WebSocketSessionHolder { * @param sessionKey session唯一标识 */ public static void removeSession(Object sessionKey) { - USER_SESSION_MAP.remove(sessionKey); + USER_SESSION_MAP.remove(sessionKey.toString()); } /** @@ -43,7 +43,7 @@ public final class WebSocketSessionHolder { * @return WebSocketSession 该标识对应的 session */ public static WebSocketSession getSession(Object sessionKey) { - return USER_SESSION_MAP.get(sessionKey); + return USER_SESSION_MAP.get(sessionKey.toString()); } /** @@ -58,7 +58,7 @@ public final class WebSocketSessionHolder { * 获取所有在线的用户标识 * @return Set session唯一标识集合 */ - public static Set getSessionKeys() { + public static Set getSessionKeys() { return USER_SESSION_MAP.keySet(); } diff --git a/pigx-common/pigx-common-xss/pom.xml b/pigx-common/pigx-common-xss/pom.xml index b10d2c32a..f4d95e2d4 100755 --- a/pigx-common/pigx-common-xss/pom.xml +++ b/pigx-common/pigx-common-xss/pom.xml @@ -6,7 +6,7 @@ com.pig4cloud pigx-common - 4.3.0 + 4.4.0 pigx-common-xss diff --git a/pigx-common/pigx-common-xss/src/main/java/com/pig4cloud/pigx/common/xss/config/PigxXssProperties.java b/pigx-common/pigx-common-xss/src/main/java/com/pig4cloud/pigx/common/xss/config/PigxXssProperties.java index bd8db354f..c8d97fa61 100644 --- a/pigx-common/pigx-common-xss/src/main/java/com/pig4cloud/pigx/common/xss/config/PigxXssProperties.java +++ b/pigx-common/pigx-common-xss/src/main/java/com/pig4cloud/pigx/common/xss/config/PigxXssProperties.java @@ -19,7 +19,6 @@ package com.pig4cloud.pigx.common.xss.config; import lombok.Getter; import lombok.Setter; import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.cloud.context.config.annotation.RefreshScope; import java.util.ArrayList; import java.util.List; @@ -31,7 +30,6 @@ import java.util.List; */ @Getter @Setter -@RefreshScope @ConfigurationProperties(PigxXssProperties.PREFIX) public class PigxXssProperties { diff --git a/pigx-common/pom.xml b/pigx-common/pom.xml index 988088ed2..67972b8eb 100644 --- a/pigx-common/pom.xml +++ b/pigx-common/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx - 4.3.0 + 4.4.0 pigx-common @@ -45,12 +45,12 @@ pigx-common-job pigx-common-log pigx-common-oss + pigx-common-seata pigx-common-security pigx-common-sentinel pigx-common-sequence pigx-common-swagger pigx-common-test - pigx-common-transaction pigx-common-websocket pigx-common-xss diff --git a/pigx-gateway/pom.xml b/pigx-gateway/pom.xml index 9d84b5cef..a8b5a685c 100644 --- a/pigx-gateway/pom.xml +++ b/pigx-gateway/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx - 4.3.0 + 4.4.0 pigx-gateway diff --git a/pigx-gateway/src/main/resources/bootstrap.yml b/pigx-gateway/src/main/resources/application.yml similarity index 57% rename from pigx-gateway/src/main/resources/bootstrap.yml rename to pigx-gateway/src/main/resources/application.yml index afd6b6fa2..184492e17 100644 --- a/pigx-gateway/src/main/resources/bootstrap.yml +++ b/pigx-gateway/src/main/resources/application.yml @@ -10,8 +10,7 @@ spring: server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml \ No newline at end of file diff --git a/pigx-gateway/src/main/resources/logback-spring.xml b/pigx-gateway/src/main/resources/logback-spring.xml index 692482835..779ee5e25 100644 --- a/pigx-gateway/src/main/resources/logback-spring.xml +++ b/pigx-gateway/src/main/resources/logback-spring.xml @@ -83,5 +83,6 @@ + diff --git a/pigx-register/pom.xml b/pigx-register/pom.xml index 6aa71089c..92b841d37 100755 --- a/pigx-register/pom.xml +++ b/pigx-register/pom.xml @@ -18,7 +18,7 @@ com.pig4cloud pigx - 4.3.0 + 4.4.0 pigx-register diff --git a/pigx-register/src/main/resources/bootstrap.yml b/pigx-register/src/main/resources/application-dev.yml old mode 100755 new mode 100644 similarity index 100% rename from pigx-register/src/main/resources/bootstrap.yml rename to pigx-register/src/main/resources/application-dev.yml diff --git a/pigx-register/src/main/resources/application-prod.yml b/pigx-register/src/main/resources/application-prod.yml new file mode 100644 index 000000000..75fa88493 --- /dev/null +++ b/pigx-register/src/main/resources/application-prod.yml @@ -0,0 +1,51 @@ +server: + port: 8848 + tomcat: + basedir: logs + +db: + num: 1 + user: ${MYSQL_USER:root} + password: ${MYSQL_PWD:root} + url: + 0: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_config}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true + + +nacos: + core: + auth: + system.type: nacos + default.token.secret.key: SecretKey012345678901234567890123456789012345678901234567890123456789 + security: + ignore: + urls: /,/error,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/**,/v1/console/health/**,/actuator/**,/v1/console/server/** + +spring: + datasource: + platform: mysql #这个过期属性不能修改,nacos 代码对此有硬编码 + security: + enabled: true + boot: # 接入 spring boot admin + admin: + client: + url: http://pigx-monitor:5001 + username: pig + password: pig + instance: + prefer-ip: true + application: + name: @project.artifactId@ + +useAddressServer: true + +management: + endpoints: + web: + exposure: + include: '*' + metrics: + export: + influx: + enabled: false + elastic: + enabled: false diff --git a/pigx-register/src/main/resources/application-test.yml b/pigx-register/src/main/resources/application-test.yml new file mode 100644 index 000000000..75fa88493 --- /dev/null +++ b/pigx-register/src/main/resources/application-test.yml @@ -0,0 +1,51 @@ +server: + port: 8848 + tomcat: + basedir: logs + +db: + num: 1 + user: ${MYSQL_USER:root} + password: ${MYSQL_PWD:root} + url: + 0: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_config}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true + + +nacos: + core: + auth: + system.type: nacos + default.token.secret.key: SecretKey012345678901234567890123456789012345678901234567890123456789 + security: + ignore: + urls: /,/error,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/**,/v1/console/health/**,/actuator/**,/v1/console/server/** + +spring: + datasource: + platform: mysql #这个过期属性不能修改,nacos 代码对此有硬编码 + security: + enabled: true + boot: # 接入 spring boot admin + admin: + client: + url: http://pigx-monitor:5001 + username: pig + password: pig + instance: + prefer-ip: true + application: + name: @project.artifactId@ + +useAddressServer: true + +management: + endpoints: + web: + exposure: + include: '*' + metrics: + export: + influx: + enabled: false + elastic: + enabled: false diff --git a/pigx-register/src/main/resources/application.yml b/pigx-register/src/main/resources/application.yml new file mode 100644 index 000000000..0750e5573 --- /dev/null +++ b/pigx-register/src/main/resources/application.yml @@ -0,0 +1,3 @@ +spring: + profiles: + active: @profiles.active@ \ No newline at end of file diff --git a/pigx-upms/pigx-upms-api/pom.xml b/pigx-upms/pigx-upms-api/pom.xml index e35e4346c..826b3c11d 100644 --- a/pigx-upms/pigx-upms-api/pom.xml +++ b/pigx-upms/pigx-upms-api/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx-upms - 4.3.0 + 4.4.0 pigx-upms-api diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/dto/UserDTO.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/dto/UserDTO.java index ad89c754a..d1467fceb 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/dto/UserDTO.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/dto/UserDTO.java @@ -48,6 +48,11 @@ public class UserDTO extends SysUser { @ApiModelProperty(value = "部门id") private Long deptId; + /** + * 岗位ID + */ + private List post; + /** * 新密码 */ diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDept.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDept.java index 70c4a4b48..8e4f6cf97 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDept.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDept.java @@ -63,6 +63,20 @@ public class SysDept extends Model { @ApiModelProperty(value = "排序值") private Integer sortOrder; + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + /** * 创建时间 */ diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDict.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDict.java index 19c1552ae..4d8675365 100755 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDict.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDict.java @@ -83,6 +83,20 @@ public class SysDict extends Model { @ApiModelProperty(value = "备注信息") private String remarks; + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + /** * 删除标记 */ diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDictItem.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDictItem.java index d026ab3bd..bf8c33f22 100755 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDictItem.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysDictItem.java @@ -83,6 +83,20 @@ public class SysDictItem extends Model { @ApiModelProperty(value = "排序值,默认升序") private Integer sortOrder; + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + /** * 创建时间 */ diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysFile.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysFile.java index 2c9e907ee..3fd4f83ee 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysFile.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysFile.java @@ -79,8 +79,9 @@ public class SysFile extends Model { /** * 上传人 */ + @TableField(fill = FieldFill.INSERT) @ApiModelProperty(value = "创建者") - private String createUser; + private String createBy; /** * 上传时间 @@ -94,7 +95,7 @@ public class SysFile extends Model { */ @TableField(fill = FieldFill.INSERT) @ApiModelProperty(value = "更新者") - private String updateUser; + private String updateBy; /** * 更新时间 diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysMenu.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysMenu.java index 1fe8b8d7b..89d40dec5 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysMenu.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysMenu.java @@ -103,6 +103,20 @@ public class SysMenu extends Model { @ApiModelProperty(value = "路由缓冲") private String keepAlive; + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + /** * 创建时间 */ diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysOauthClientDetails.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysOauthClientDetails.java index db34455e7..9682740f8 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysOauthClientDetails.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysOauthClientDetails.java @@ -27,6 +27,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import javax.validation.constraints.NotBlank; +import java.time.LocalDateTime; /** *

@@ -124,4 +125,32 @@ public class SysOauthClientDetails extends Model { @ApiModelProperty(value = "删除标记,1:已删除,0:正常") private String delFlag; + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建时间") + private LocalDateTime createTime; + + /** + * 更新时间 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "更新时间") + private LocalDateTime updateTime; + } diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysPost.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysPost.java new file mode 100644 index 000000000..9a2efa3a0 --- /dev/null +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysPost.java @@ -0,0 +1,115 @@ +/* + * Copyright (c) 2018-2025, lengleng All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the pig4cloud.com developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: lengleng (wangiegie@gmail.com) + */ + +package com.pig4cloud.pigx.admin.api.entity; + +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.time.LocalDateTime; + +/** + * 岗位信息表 + * + * @author fxz + * @date 2022-03-26 12:50:43 + */ +@Data +@TableName("sys_post") +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "岗位信息表") +public class SysPost extends Model { + + private static final long serialVersionUID = 1L; + + /** + * 岗位ID + */ + @TableId(value = "post_id", type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "岗位ID") + private Long postId; + + /** + * 岗位编码 + */ + @NotBlank(message = "岗位编码不能为空") + @ApiModelProperty(value = "岗位编码") + private String postCode; + + /** + * 岗位名称 + */ + @NotBlank(message = "岗位名称不能为空") + @ApiModelProperty(value = "岗位名称") + private String postName; + + /** + * 岗位排序 + */ + @NotNull(message = "排序值不能为空") + @ApiModelProperty(value = "岗位排序") + private Integer postSort; + + /** + * 岗位描述 + */ + @ApiModelProperty(value = "岗位描述") + private String remark; + + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + + /** + * 是否删除 -1:已删除 0:正常 + */ + @TableLogic + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "是否删除 -1:已删除 0:正常") + private String delFlag; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间") + @TableField(fill = FieldFill.INSERT) + private LocalDateTime createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间") + @TableField(fill = FieldFill.UPDATE) + private LocalDateTime updateTime; + +} diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysPublicParam.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysPublicParam.java index 5d3e29ec2..a7793302f 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysPublicParam.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysPublicParam.java @@ -88,6 +88,20 @@ public class SysPublicParam extends Model { @ApiModelProperty(value = "类型[1-检索;2-原文...]", example = "1") private String publicType; + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + /** * 删除标记 */ diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysRole.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysRole.java index 09db7ea8f..99b2de188 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysRole.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysRole.java @@ -70,6 +70,20 @@ public class SysRole extends Model { @ApiModelProperty(value = "数据权限作用范围") private String dsScope; + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + /** * 创建时间 */ diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysSocialDetails.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysSocialDetails.java index 25d8368f5..1ad7dc16a 100755 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysSocialDetails.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysSocialDetails.java @@ -19,6 +19,8 @@ package com.pig4cloud.pigx.admin.api.entity; import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.extension.activerecord.Model; +import com.pig4cloud.pigx.common.core.sensitive.Sensitive; +import com.pig4cloud.pigx.common.core.util.ValidGroup; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -63,6 +65,7 @@ public class SysSocialDetails extends Model { /** * appid */ + @Sensitive(prefixNoMaskLen = 4, suffixNoMaskLen = 4) @NotBlank(message = "账号不能为空") @ApiModelProperty(value = "appId") private String appId; @@ -70,7 +73,8 @@ public class SysSocialDetails extends Model { /** * app_secret */ - @NotBlank(message = "密钥不能为空") + @Sensitive(prefixNoMaskLen = 9, suffixNoMaskLen = 9) + @NotBlank(message = "密钥不能为空", groups = { ValidGroup.Insert.class }) @ApiModelProperty(value = "app secret") private String appSecret; @@ -80,6 +84,26 @@ public class SysSocialDetails extends Model { @ApiModelProperty(value = "回调地址") private String redirectUrl; + /** + * 拓展字段 + */ + @ApiModelProperty(value = "拓展字段") + private String ext; + + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + /** * 创建时间 */ diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysTenant.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysTenant.java index e4a0a2a21..e9efe20eb 100755 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysTenant.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysTenant.java @@ -58,6 +58,12 @@ public class SysTenant extends Model { @ApiModelProperty(value = "租户编号") private String code; + /** + * 租户域名 + */ + @ApiModelProperty(value = "租户域名") + private String tenantDomain; + /** * 开始时间 */ @@ -76,6 +82,20 @@ public class SysTenant extends Model { @ApiModelProperty(value = "租户冻结标记,9:冻结,0:正常") private String status; + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + /** * 删除标记 */ diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysUser.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysUser.java index 21068de0f..42ac89bde 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysUser.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysUser.java @@ -68,6 +68,20 @@ public class SysUser implements Serializable { @ApiModelProperty(value = "随机盐") private String salt; + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @ApiModelProperty(value = "修改人") + private String updateBy; + /** * 创建时间 */ @@ -86,6 +100,7 @@ public class SysUser implements Serializable { * 0-正常,1-删除 */ @TableLogic + @TableField(fill = FieldFill.INSERT) @ApiModelProperty(value = "删除标记,1:已删除,0:正常") private String delFlag; diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysUserPost.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysUserPost.java new file mode 100644 index 000000000..a83dce85e --- /dev/null +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysUserPost.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2020 pig4cloud Authors. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.pig4cloud.pigx.admin.api.entity; + +import com.baomidou.mybatisplus.extension.activerecord.Model; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + *

+ * 用户岗位表 + *

+ * + * @author fxz + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class SysUserPost extends Model { + + private static final long serialVersionUID = 1L; + + /** + * 用户ID + */ + @ApiModelProperty(value = "用户id") + private Long userId; + + /** + * 岗位ID + */ + @ApiModelProperty(value = "岗位id") + private Long postId; + +} diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteDictService.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteDictService.java new file mode 100644 index 000000000..7dc90542e --- /dev/null +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteDictService.java @@ -0,0 +1,29 @@ +package com.pig4cloud.pigx.admin.api.feign; + +import com.pig4cloud.pigx.admin.api.entity.SysDictItem; +import com.pig4cloud.pigx.common.core.constant.ServiceNameConstants; +import com.pig4cloud.pigx.common.core.util.R; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; + +import java.util.List; + +/** + * @author lengleng + * @date 2020/5/12 + *

+ * 查询参数相关 + */ +@FeignClient(contextId = "remoteDictService", value = ServiceNameConstants.UPMS_SERVICE) +public interface RemoteDictService { + + /** + * 通过字典类型查找字典 + * @param type 字典类型 + * @return 同类型字典 + */ + @GetMapping("/dict/type/{type}") + R> getDictByType(@PathVariable("type") String type); + +} diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteTokenService.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteTokenService.java index 3af5f261a..f541adc2a 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteTokenService.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteTokenService.java @@ -23,10 +23,7 @@ import com.pig4cloud.pigx.common.core.constant.ServiceNameConstants; import com.pig4cloud.pigx.common.core.util.R; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.SpringQueryMap; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.*; import java.util.Map; @@ -58,4 +55,14 @@ public interface RemoteTokenService { @DeleteMapping("/token/{token}") R removeTokenById(@PathVariable("token") String token, @RequestHeader(SecurityConstants.FROM) String from); + /** + * 校验令牌获取用户信息 + * @param token + * @param from + * @return + */ + @GetMapping("/token/query-token") + R> queryToken(@RequestParam("token") String token, + @RequestHeader(SecurityConstants.FROM) String from); + } diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteUserService.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteUserService.java index b7fc90263..b437fd05c 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteUserService.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/feign/RemoteUserService.java @@ -27,6 +27,7 @@ import com.pig4cloud.pigx.common.core.util.R; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.RequestHeader; import java.util.List; @@ -64,4 +65,13 @@ public interface RemoteUserService { @GetMapping("/user/ancestor/{username}") R> ancestorUsers(@PathVariable("username") String username); + /** + * 锁定用户 + * @param username 用户名 + * @param from 调用标识 + * @return + */ + @PutMapping("/user/lock/{username}") + R lockUser(@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM) String from); + } diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/vo/PostExcelVO.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/vo/PostExcelVO.java new file mode 100644 index 000000000..3c0a5d961 --- /dev/null +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/vo/PostExcelVO.java @@ -0,0 +1,64 @@ +package com.pig4cloud.pigx.admin.api.vo; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + * 岗位excel 对应的实体 + * + * @author fxz + * @date 2022/3/21 + */ +@Data +@ColumnWidth(30) +public class PostExcelVO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty("岗位编号") + private Long postId; + + /** + * 岗位名称 + */ + @NotBlank(message = "岗位名称不能为空") + @ExcelProperty("岗位名称") + private String postName; + + /** + * 岗位标识 + */ + @NotBlank(message = "岗位标识不能为空") + @ExcelProperty("岗位标识") + private String postCode; + + /** + * 岗位排序 + */ + @NotNull(message = "岗位排序不能为空") + @ExcelProperty("岗位排序") + private Integer postSort; + + /** + * 岗位描述 + */ + @NotBlank(message = "岗位描述不能为空") + @ExcelProperty(value = "岗位描述") + private String remark; + + /** + * 创建时间 + */ + @ExcelProperty(value = "创建时间") + private LocalDateTime createTime; + +} diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/vo/RoleExcelVO.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/vo/RoleExcelVO.java new file mode 100644 index 000000000..423ca3ac8 --- /dev/null +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/vo/RoleExcelVO.java @@ -0,0 +1,56 @@ +package com.pig4cloud.pigx.admin.api.vo; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + * 角色excel 对应的实体 + * + * @author fxz + * @date 2022/3/21 + */ +@Data +@ColumnWidth(30) +public class RoleExcelVO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty("角色编号") + private Long roleId; + + /** + * 角色名称 + */ + @NotBlank(message = "角色名称不能为空") + @ExcelProperty("角色名称") + private String roleName; + + /** + * 角色标识 + */ + @NotBlank(message = "角色标识不能为空") + @ExcelProperty("角色标识") + private String roleCode; + + /** + * 角色描述 + */ + @NotBlank(message = "角色描述不能为空") + @ExcelProperty("角色描述") + private String roleDesc; + + /** + * 创建时间 + */ + @ExcelProperty(value = "创建时间") + private LocalDateTime createTime; + +} diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/vo/UserVO.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/vo/UserVO.java index fabdfa96a..6d6574395 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/vo/UserVO.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/vo/UserVO.java @@ -19,6 +19,7 @@ package com.pig4cloud.pigx.admin.api.vo; +import com.pig4cloud.pigx.admin.api.entity.SysPost; import com.pig4cloud.pigx.admin.api.entity.SysRole; import com.pig4cloud.pigx.common.core.sensitive.Sensitive; import com.pig4cloud.pigx.common.core.sensitive.SensitiveTypeEnum; @@ -137,6 +138,11 @@ public class UserVO implements Serializable { @ApiModelProperty(value = "拥有的角色列表") private List roleList; + /** + * 岗位列表 + */ + private List postList; + /** * 昵称 */ diff --git a/pigx-upms/pigx-upms-api/src/main/resources/META-INF/spring.factories b/pigx-upms/pigx-upms-api/src/main/resources/META-INF/spring.factories index b1b94cd3d..00df1d113 100755 --- a/pigx-upms/pigx-upms-api/src/main/resources/META-INF/spring.factories +++ b/pigx-upms/pigx-upms-api/src/main/resources/META-INF/spring.factories @@ -6,4 +6,5 @@ com.pig4cloud.pigx.common.feign.PigxFeignAutoConfiguration=\ com.pig4cloud.pigx.admin.api.feign.RemoteParamService,\ com.pig4cloud.pigx.admin.api.feign.RemoteTenantService,\ com.pig4cloud.pigx.admin.api.feign.RemoteTokenService,\ - com.pig4cloud.pigx.admin.api.feign.RemoteUserService + com.pig4cloud.pigx.admin.api.feign.RemoteUserService,\ + com.pig4cloud.pigx.admin.api.feign.RemoteDictService diff --git a/pigx-upms/pigx-upms-biz/pom.xml b/pigx-upms/pigx-upms-biz/pom.xml index a8e0d4cae..ed88466f2 100644 --- a/pigx-upms/pigx-upms-biz/pom.xml +++ b/pigx-upms/pigx-upms-biz/pom.xml @@ -19,159 +19,175 @@ --> - 4.0.0 - - com.pig4cloud - pigx-upms - 4.3.0 - + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + + com.pig4cloud + pigx-upms + 4.4.0 + - pigx-upms-biz - jar + pigx-upms-biz + jar - pigx 通用用户权限管理系统业务处理模块 + pigx 通用用户权限管理系统业务处理模块 - - - - mysql - mysql-connector-java - - - - com.oracle.database.jdbc - ojdbc8 - - - - org.postgresql - postgresql - - - - com.microsoft.sqlserver - mssql-jdbc - - - - com.pig4cloud - pigx-upms-api - - - - com.pig4cloud - pigx-common-log - - - com.pig4cloud - pigx-common-data - - - - com.pig4cloud - pigx-common-swagger - - - - com.pig4cloud - pigx-common-oss - - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-discovery - - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-config - - - - com.pig4cloud - pigx-common-security - - - - com.pig4cloud - pigx-common-xss - - - - com.pig4cloud - pigx-common-gateway - - - - com.pig4cloud - pigx-common-sentinel - - - - com.pig4cloud - pigx-common-gray - - - - com.baomidou - mybatis-plus-boot-starter - - - - com.alibaba - druid-spring-boot-starter - - - - org.jasig.cas.client - cas-client-core - ${cas.sdk.version} - - - - org.springframework.boot - spring-boot-starter-web - - - - org.springframework.boot - spring-boot-starter-undertow - - + + + + mysql + mysql-connector-java + + + + com.oracle.database.jdbc + ojdbc8 + + + + org.postgresql + postgresql + + + + com.microsoft.sqlserver + mssql-jdbc + + + + com.dameng + DmJdbcDriver18 + + + + com.pig4cloud + pigx-upms-api + + + + com.pig4cloud + pigx-common-log + + + com.pig4cloud + pigx-common-data + + + + com.pig4cloud + pigx-common-swagger + + + + com.pig4cloud + pigx-common-oss + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + com.pig4cloud + pigx-common-security + + + + com.pig4cloud + pigx-common-xss + + + + com.pig4cloud + pigx-common-gateway + + + + com.pig4cloud + pigx-common-sentinel + + + + com.pig4cloud + pigx-common-gray + + + + com.baomidou + mybatis-plus-boot-starter + + + + com.alibaba + druid-spring-boot-starter + + + + org.jasig.cas.client + cas-client-core + ${cas.sdk.version} + + + + com.aliyun + alibaba-dingtalk-service-sdk + ${dingtalk.old.version} + + + + com.github.binarywang + weixin-java-cp + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-undertow + + - - - - org.springframework.boot - spring-boot-maven-plugin - - - io.fabric8 - docker-maven-plugin - - false - - - - - - src/main/resources - true - - **/*.xlsx - **/*.xls - - - - src/main/resources - false - - **/*.xlsx - **/*.xls - - - - + + + + org.springframework.boot + spring-boot-maven-plugin + + + io.fabric8 + docker-maven-plugin + + false + + + + + + src/main/resources + true + + **/*.xlsx + **/*.xls + + + + src/main/resources + false + + **/*.xlsx + **/*.xls + + + + diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/ConnectController.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/ConnectController.java new file mode 100644 index 000000000..1d5d10896 --- /dev/null +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/ConnectController.java @@ -0,0 +1,73 @@ +package com.pig4cloud.pigx.admin.controller; + +import com.pig4cloud.pigx.admin.api.entity.SysDept; +import com.pig4cloud.pigx.admin.service.ConnectService; +import com.pig4cloud.pigx.admin.service.SysDeptService; +import com.pig4cloud.pigx.common.core.util.R; +import io.swagger.annotations.Api; +import lombok.RequiredArgsConstructor; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * 钉钉、微信 互联 + * + * @author lengleng + * @date 2022/4/22 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/connect") +@Api(value = "connect", tags = "开放互联") +public class ConnectController { + + private final ConnectService connectService; + + private final SysDeptService deptService; + + /** + * 同步钉钉用户 + * @return + */ + @PostMapping("/sync/ding/user") + @PreAuthorize("@pms.hasPermission('sys_connect_sync')") + public R syncUser() { + for (SysDept sysDept : deptService.list()) { + connectService.syncDingUser(sysDept.getDeptId()); + } + return R.ok(); + } + + /** + * 同步钉钉部门 + * @return + */ + @PostMapping("/sync/ding/dept") + @PreAuthorize("@pms.hasPermission('sys_connect_sync')") + public R syncDept() { + return R.ok(connectService.syncDingDept()); + } + + /** + * 同步企微用户 + * @return + */ + @PostMapping("/sync/cp/user") + @PreAuthorize("@pms.hasPermission('sys_connect_sync')") + public R syncCpUser() { + return connectService.syncCpUser(); + } + + /** + * 同步企微部门 + * @return + */ + @PostMapping("/sync/cp/dept") + @PreAuthorize("@pms.hasPermission('sys_connect_sync')") + public R syncCpDept() { + return connectService.syncCpDept(); + } + +} diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/RegisterController.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/RegisterController.java new file mode 100644 index 000000000..c674ec178 --- /dev/null +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/RegisterController.java @@ -0,0 +1,41 @@ +package com.pig4cloud.pigx.admin.controller; + +import com.pig4cloud.pigx.admin.api.dto.UserDTO; +import com.pig4cloud.pigx.admin.service.SysUserService; +import com.pig4cloud.pigx.common.core.util.R; +import com.pig4cloud.pigx.common.log.annotation.SysLog; +import com.pig4cloud.pigx.common.security.annotation.Inner; +import lombok.RequiredArgsConstructor; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @author lengleng + * @date 2022/3/30 + *

+ * 客户端注册功能 register.user = false + */ +@RestController +@RequestMapping("/register") +@RequiredArgsConstructor +@ConditionalOnProperty(name = "register.user", matchIfMissing = true) +public class RegisterController { + + private final SysUserService userService; + + /** + * 注册用户 + * @param userDto 用户信息 + * @return success/false + */ + @Inner(value = false) + @SysLog("注册用户") + @PostMapping("/user") + public R registerUser(@RequestBody UserDTO userDto) { + return userService.registerUser(userDto); + } + +} diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysDeptController.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysDeptController.java index 7d95f05e6..0a6551a34 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysDeptController.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysDeptController.java @@ -62,6 +62,14 @@ public class SysDeptController { return R.ok(sysDeptService.getById(id)); } + /** + * 查询全部部门 + */ + @GetMapping("/list") + public R list() { + return R.ok(sysDeptService.list()); + } + /** * 返回树形菜单集合 * @param deptName 部门名称 diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysDictController.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysDictController.java index 0a595e443..ef97d8eaf 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysDictController.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysDictController.java @@ -37,6 +37,7 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.List; /** *

@@ -83,7 +84,7 @@ public class SysDictController { */ @GetMapping("/type/{type}") @Cacheable(value = CacheConstants.DICT_DETAILS, key = "#type", unless = "#result.data.isEmpty()") - public R getDictByType(@PathVariable String type) { + public R> getDictByType(@PathVariable String type) { return R.ok(sysDictItemService.list(Wrappers.query().lambda().eq(SysDictItem::getDictType, type))); } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysPostController.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysPostController.java new file mode 100644 index 000000000..61d20916b --- /dev/null +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysPostController.java @@ -0,0 +1,148 @@ +/* + * Copyright (c) 2018-2025, lengleng All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the pig4cloud.com developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: lengleng (wangiegie@gmail.com) + */ + +package com.pig4cloud.pigx.admin.controller; + +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.pig4cloud.pigx.admin.api.entity.SysPost; +import com.pig4cloud.pigx.admin.api.vo.PostExcelVO; +import com.pig4cloud.pigx.admin.service.SysPostService; +import com.pig4cloud.pigx.common.core.util.R; +import com.pig4cloud.pigx.common.excel.annotation.RequestExcel; +import com.pig4cloud.pigx.common.excel.annotation.ResponseExcel; +import com.pig4cloud.pigx.common.log.annotation.SysLog; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 岗位信息表 + * + * @author fxz + * @date 2022-03-26 12:50:43 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/post") +@Api(value = "post", tags = "岗位信息表管理") +public class SysPostController { + + private final SysPostService sysPostService; + + /** + * 获取岗位列表 + * @return 岗位列表 + */ + @GetMapping("/list") + public R> listPosts() { + return R.ok(sysPostService.list(Wrappers.emptyWrapper())); + } + + /** + * 分页查询 + * @param page 分页对象 + * @param sysPost 岗位信息表 + * @return + */ + @ApiOperation(value = "分页查询", notes = "分页查询") + @GetMapping("/page") + @PreAuthorize("@pms.hasPermission('sys_post_view')") + public R getSysPostPage(Page page, SysPost sysPost) { + return R.ok(sysPostService.page(page, Wrappers.query(sysPost))); + } + + /** + * 通过id查询岗位信息表 + * @param postId id + * @return R + */ + @ApiOperation(value = "通过id查询", notes = "通过id查询") + @GetMapping("/{postId}") + @PreAuthorize("@pms.hasPermission('sys_post_view')") + public R getById(@PathVariable("postId") Long postId) { + return R.ok(sysPostService.getById(postId)); + } + + /** + * 新增岗位信息表 + * @param sysPost 岗位信息表 + * @return R + */ + @ApiOperation(value = "新增岗位信息表", notes = "新增岗位信息表") + @SysLog("新增岗位信息表") + @PostMapping + @PreAuthorize("@pms.hasPermission('sys_post_add')") + public R save(@RequestBody SysPost sysPost) { + return R.ok(sysPostService.save(sysPost)); + } + + /** + * 修改岗位信息表 + * @param sysPost 岗位信息表 + * @return R + */ + @ApiOperation(value = "修改岗位信息表", notes = "修改岗位信息表") + @SysLog("修改岗位信息表") + @PutMapping + @PreAuthorize("@pms.hasPermission('sys_post_edit')") + public R updateById(@RequestBody SysPost sysPost) { + return R.ok(sysPostService.updateById(sysPost)); + } + + /** + * 通过id删除岗位信息表 + * @param postId id + * @return R + */ + @ApiOperation(value = "通过id删除岗位信息表", notes = "通过id删除岗位信息表") + @SysLog("通过id删除岗位信息表") + @DeleteMapping("/{postId}") + @PreAuthorize("@pms.hasPermission('sys_post_del')") + public R removeById(@PathVariable Long postId) { + return R.ok(sysPostService.removeById(postId)); + } + + /** + * 导出excel 表格 + * @return excel 文件流 + */ + @ResponseExcel + @GetMapping("/export") + @PreAuthorize("@pms.hasPermission('sys_post_export')") + public List export() { + return sysPostService.listPost(); + } + + /** + * 导入岗位 + * @param excelVOList 岗位列表 + * @param bindingResult 错误信息列表 + * @return ok fail + */ + @PostMapping("/import") + @PreAuthorize("@pms.hasPermission('sys_post_export')") + public R importRole(@RequestExcel List excelVOList, BindingResult bindingResult) { + return sysPostService.importPost(excelVOList, bindingResult); + } + +} diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysRoleController.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysRoleController.java index 01ac623e6..ff94564e7 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysRoleController.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysRoleController.java @@ -24,15 +24,19 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.pig4cloud.pigx.admin.api.entity.SysRole; +import com.pig4cloud.pigx.admin.api.vo.RoleExcelVO; import com.pig4cloud.pigx.admin.api.vo.RoleVO; import com.pig4cloud.pigx.admin.service.SysRoleService; import com.pig4cloud.pigx.common.core.constant.CacheConstants; import com.pig4cloud.pigx.common.core.util.R; +import com.pig4cloud.pigx.common.excel.annotation.RequestExcel; +import com.pig4cloud.pigx.common.excel.annotation.ResponseExcel; import com.pig4cloud.pigx.common.log.annotation.SysLog; import io.swagger.annotations.Api; import lombok.AllArgsConstructor; import org.springframework.cache.annotation.CacheEvict; import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -151,4 +155,27 @@ public class SysRoleController { return R.ok(sysRoleService.findRolesByRoleIds(roleIdList, CollUtil.join(roleIdList, StrUtil.UNDERLINE))); } + /** + * 导出excel 表格 + * @return + */ + @ResponseExcel + @GetMapping("/export") + @PreAuthorize("@pms.hasPermission('sys_role_export')") + public List export() { + return sysRoleService.listRole(); + } + + /** + * 导入角色 + * @param excelVOList 角色列表 + * @param bindingResult 错误信息列表 + * @return ok fail + */ + @PostMapping("/import") + @PreAuthorize("@pms.hasPermission('sys_role_export')") + public R importRole(@RequestExcel List excelVOList, BindingResult bindingResult) { + return sysRoleService.importRole(excelVOList, bindingResult); + } + } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysSocialDetailsController.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysSocialDetailsController.java index 010f34a67..f424fbd2e 100755 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysSocialDetailsController.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysSocialDetailsController.java @@ -22,11 +22,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.pig4cloud.pigx.admin.api.entity.SysSocialDetails; import com.pig4cloud.pigx.admin.service.SysSocialDetailsService; import com.pig4cloud.pigx.common.core.util.R; +import com.pig4cloud.pigx.common.core.util.ValidGroup; import com.pig4cloud.pigx.common.log.annotation.SysLog; import com.pig4cloud.pigx.common.security.annotation.Inner; import io.swagger.annotations.Api; import lombok.AllArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -87,7 +89,7 @@ public class SysSocialDetailsController { @SysLog("修改三方信息") @PutMapping @PreAuthorize("@pms.hasPermission('sys_social_details_edit')") - public R updateById(@Valid @RequestBody SysSocialDetails sysSocialDetails) { + public R updateById(@Validated({ ValidGroup.Update.class }) @RequestBody SysSocialDetails sysSocialDetails) { sysSocialDetailsService.updateById(sysSocialDetails); return R.ok(Boolean.TRUE); } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysTenantController.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysTenantController.java index b626398c0..0cb15504b 100755 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysTenantController.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysTenantController.java @@ -61,23 +61,13 @@ public class SysTenantController { } /** - * 通过id查询租户 - * @param id id - * @return R - */ - @GetMapping("/{id}") - public R getById(@PathVariable("id") Long id) { - return R.ok(sysTenantService.getById(id)); - } - - /** - * 通过租户编码查询租户信息 - * @param code 租户Code + * 查询租户信息 + * @param tenant 查询条件 * @return 租户信息 */ - @GetMapping("/code/{code}") - public R getByTenantCode(@PathVariable String code) { - return R.ok(sysTenantService.list(Wrappers.lambdaQuery().eq(SysTenant::getCode, code))); + @GetMapping + public R getByObj(SysTenant tenant) { + return R.ok(sysTenantService.list(Wrappers.query(tenant))); } /** diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysUserController.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysUserController.java index 308250c44..86049758c 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysUserController.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/controller/SysUserController.java @@ -26,6 +26,8 @@ import com.pig4cloud.pigx.admin.api.dto.UserDTO; import com.pig4cloud.pigx.admin.api.entity.SysUser; import com.pig4cloud.pigx.admin.api.vo.UserExcelVO; import com.pig4cloud.pigx.admin.service.SysUserService; +import com.pig4cloud.pigx.common.core.exception.ErrorCodes; +import com.pig4cloud.pigx.common.core.util.MsgUtils; import com.pig4cloud.pigx.common.core.util.R; import com.pig4cloud.pigx.common.excel.annotation.RequestExcel; import com.pig4cloud.pigx.common.excel.annotation.ResponseExcel; @@ -64,7 +66,7 @@ public class SysUserController { public R info(@PathVariable String username) { SysUser user = userService.getOne(Wrappers.query().lambda().eq(SysUser::getUsername, username)); if (user == null) { - return R.failed(null, String.format("用户信息为空 %s", username)); + return R.failed(MsgUtils.getMessage(ErrorCodes.SYS_USER_USERINFO_EMPTY, username)); } return R.ok(userService.findUserInfo(user)); } @@ -78,7 +80,7 @@ public class SysUserController { String username = SecurityUtils.getUser().getUsername(); SysUser user = userService.getOne(Wrappers.query().lambda().eq(SysUser::getUsername, username)); if (user == null) { - return R.failed(null, "获取当前用户信息失败"); + return R.failed(MsgUtils.getMessage(ErrorCodes.SYS_USER_QUERY_ERROR)); } return R.ok(userService.findUserInfo(user)); } @@ -199,4 +201,15 @@ public class SysUserController { return userService.importUser(excelVOList, bindingResult); } + /** + * 锁定指定用户 + * @param username 用户名 + * @return R + */ + @Inner + @PutMapping("/lock/{username}") + public R lockUser(@PathVariable String username) { + return userService.lockUser(username); + } + } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/GiteeLoginHandler.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/GiteeLoginHandler.java index c6d05c05f..150f1f58f 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/GiteeLoginHandler.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/GiteeLoginHandler.java @@ -17,7 +17,6 @@ package com.pig4cloud.pigx.admin.handler; -import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.URLUtil; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONObject; @@ -36,7 +35,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import java.util.HashMap; -import java.util.List; /** * @author lengleng @@ -107,17 +105,6 @@ public class GiteeLoginHandler extends AbstractLoginHandler { */ @Override public Boolean bind(SysUser user, String identify) { - List userList = sysUserService - .list(Wrappers.query().lambda().eq(SysUser::getGiteeLogin, identify)); - - // 先把原有绑定关系去除,设置绑定为NULL - if (CollUtil.isNotEmpty(userList)) { - SysUser condition = new SysUser(); - condition.setGiteeLogin(identify); - sysUserService.update(condition, Wrappers.lambdaUpdate().set(SysUser::getGiteeLogin, null)); - log.info("码云账号 {} 更换账号绑定", identify); - } - user.setGiteeLogin(identify); sysUserService.updateById(user); return true; diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/MiniAppLoginHandler.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/MiniAppLoginHandler.java index 7485808b3..b29127eba 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/MiniAppLoginHandler.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/MiniAppLoginHandler.java @@ -17,7 +17,6 @@ package com.pig4cloud.pigx.admin.handler; -import cn.hutool.core.collection.CollUtil; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -33,8 +32,6 @@ import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; -import java.util.List; - /** * @author lengleng * @date 2019年11月02日 @@ -96,20 +93,9 @@ public class MiniAppLoginHandler extends AbstractLoginHandler { */ @Override public Boolean bind(SysUser user, String identify) { - List userList = sysUserService - .list(Wrappers.query().lambda().eq(SysUser::getMiniOpenid, identify)); - - // 先把原有绑定关系去除,设置绑定为NULL - if (CollUtil.isNotEmpty(userList)) { - SysUser condition = new SysUser(); - condition.setMiniOpenid(identify); - sysUserService.update(condition, Wrappers.lambdaUpdate().set(SysUser::getMiniOpenid, null)); - log.info("小程序账号 {} 更换账号绑定", identify); - } - user.setMiniOpenid(identify); sysUserService.updateById(user); - return null; + return true; } } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/OscChinaLoginHandler.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/OscChinaLoginHandler.java index e9e1ffe4a..4e450bb9f 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/OscChinaLoginHandler.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/OscChinaLoginHandler.java @@ -17,7 +17,6 @@ package com.pig4cloud.pigx.admin.handler; -import cn.hutool.core.collection.CollUtil; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; @@ -35,7 +34,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import java.util.HashMap; -import java.util.List; import java.util.Map; /** @@ -115,20 +113,9 @@ public class OscChinaLoginHandler extends AbstractLoginHandler { */ @Override public Boolean bind(SysUser user, String identify) { - List userList = sysUserService - .list(Wrappers.query().lambda().eq(SysUser::getOscId, identify)); - - // 先把原有绑定关系去除,设置绑定为NULL - if (CollUtil.isNotEmpty(userList)) { - SysUser condition = new SysUser(); - condition.setOscId(identify); - sysUserService.update(condition, Wrappers.lambdaUpdate().set(SysUser::getOscId, null)); - log.info("开源中国账号 {} 更换账号绑定", identify); - } - user.setOscId(identify); sysUserService.updateById(user); - return null; + return true; } } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/SmsLoginHandler.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/SmsLoginHandler.java index acb147f7b..19deb1898 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/SmsLoginHandler.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/SmsLoginHandler.java @@ -72,7 +72,7 @@ public class SmsLoginHandler extends AbstractLoginHandler { public Boolean bind(SysUser user, String identify) { user.setPhone(identify); sysUserService.updateById(user); - return null; + return true; } } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/TencentLoginHandler.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/TencentLoginHandler.java index ef227e30d..19ea6ec29 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/TencentLoginHandler.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/TencentLoginHandler.java @@ -17,7 +17,6 @@ package com.pig4cloud.pigx.admin.handler; -import cn.hutool.core.collection.CollUtil; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; @@ -34,8 +33,6 @@ import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; -import java.util.List; - /** * @author lengleng * @date 2018/11/18 @@ -102,20 +99,9 @@ public class TencentLoginHandler extends AbstractLoginHandler { */ @Override public Boolean bind(SysUser user, String identify) { - List userList = sysUserService - .list(Wrappers.query().lambda().eq(SysUser::getQqOpenid, identify)); - - // 先把原有绑定关系去除,设置绑定为NULL - if (CollUtil.isNotEmpty(userList)) { - SysUser condition = new SysUser(); - condition.setQqOpenid(identify); - sysUserService.update(condition, Wrappers.lambdaUpdate().set(SysUser::getQqOpenid, null)); - log.info("QQ账号 {} 更换账号绑定", identify); - } - user.setQqOpenid(identify); sysUserService.updateById(user); - return null; + return true; } } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/WeChatLoginHandler.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/WeChatLoginHandler.java index 077fac4ab..c661f0d42 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/WeChatLoginHandler.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/handler/WeChatLoginHandler.java @@ -17,7 +17,6 @@ package com.pig4cloud.pigx.admin.handler; -import cn.hutool.core.collection.CollUtil; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -33,8 +32,6 @@ import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; -import java.util.List; - /** * @author lengleng * @date 2018/11/18 @@ -94,20 +91,9 @@ public class WeChatLoginHandler extends AbstractLoginHandler { */ @Override public Boolean bind(SysUser user, String identify) { - List userList = sysUserService - .list(Wrappers.query().lambda().eq(SysUser::getWxOpenid, identify)); - - // 先把原有绑定关系去除,设置绑定为NULL - if (CollUtil.isNotEmpty(userList)) { - SysUser condition = new SysUser(); - condition.setWxOpenid(identify); - sysUserService.update(condition, Wrappers.lambdaUpdate().set(SysUser::getWxOpenid, null)); - log.info("微信账号 {} 更换账号绑定", identify); - } - user.setWxOpenid(identify); sysUserService.updateById(user); - return null; + return true; } } diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/ApiModelService.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/mapper/SysPostMapper.java similarity index 63% rename from pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/ApiModelService.java rename to pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/mapper/SysPostMapper.java index 4ab08af75..bd289ea09 100644 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/ApiModelService.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/mapper/SysPostMapper.java @@ -15,18 +15,28 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.manager.api.service; +package com.pig4cloud.pigx.admin.mapper; -import com.pig4cloud.pigx.manager.model.ModelInfo; +import com.pig4cloud.pigx.admin.api.entity.SysPost; +import com.pig4cloud.pigx.common.data.datascope.PigxBaseMapper; +import org.apache.ibatis.annotations.Mapper; import java.util.List; /** - * @author LCN on 2017/11/13 - * @author LCN + * 岗位信息表 + * + * @author fxz + * @date 2022-03-26 12:50:43 */ -public interface ApiModelService { +@Mapper +public interface SysPostMapper extends PigxBaseMapper { - List onlines(); + /** + * 通过用户ID,查询岗位信息 + * @param userId 用户id + * @return 岗位信息 + */ + List listPostsByUserId(Long userId); } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/mapper/SysUserPostMapper.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/mapper/SysUserPostMapper.java new file mode 100644 index 000000000..5fa646250 --- /dev/null +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/mapper/SysUserPostMapper.java @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2020 pig4cloud Authors. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.pig4cloud.pigx.admin.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.pig4cloud.pigx.admin.api.entity.SysUserPost; +import org.apache.ibatis.annotations.Mapper; + +/** + *

+ * 用户岗位 Mapper 接口 + *

+ * + * @author fxz + * @since 2022/3/19 + */ +@Mapper +public interface SysUserPostMapper extends BaseMapper { + +} diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/ConnectService.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/ConnectService.java new file mode 100644 index 000000000..b58df2517 --- /dev/null +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/ConnectService.java @@ -0,0 +1,35 @@ +package com.pig4cloud.pigx.admin.service; + +import com.pig4cloud.pigx.common.core.util.R; + +/** + * @author lengleng + * @date 2022/4/22 + *

+ * 互联平台 + */ +public interface ConnectService { + + /** + * 同步钉钉部门 + */ + Boolean syncDingDept(); + + /** + * 同步钉钉用户 + */ + R syncDingUser(Long deptId); + + /** + * 同步企微部门 + * @return + */ + R syncCpDept(); + + /** + * 同步企微用户 + * @return + */ + R syncCpUser(); + +} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/redis/RedisServerService.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysPostService.java similarity index 54% rename from pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/redis/RedisServerService.java rename to pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysPostService.java index ca32fec90..43b3f1440 100644 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/redis/RedisServerService.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysPostService.java @@ -15,35 +15,36 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.manager.redis; +package com.pig4cloud.pigx.admin.service; -import com.pig4cloud.pigx.manager.netty.model.TxGroup; +import com.baomidou.mybatisplus.extension.service.IService; +import com.pig4cloud.pigx.admin.api.entity.SysPost; +import com.pig4cloud.pigx.admin.api.vo.PostExcelVO; +import com.pig4cloud.pigx.common.core.util.R; +import org.springframework.validation.BindingResult; import java.util.List; /** - * @author LCN on 2017/11/11 + * 岗位信息表 + * + * @author fxz + * @date 2022-03-26 12:50:43 */ -public interface RedisServerService { +public interface SysPostService extends IService { - String loadNotifyJson(); + /** + * 导出excel 表格 + * @return + */ + List listPost(); - void saveTransaction(String key, String json); - - TxGroup getTxGroupByKey(String key); - - void saveCompensateMsg(String name, String json); - - List getKeys(String key); - - List getValuesByKeys(List keys); - - String getValueByKey(String key); - - void deleteKey(String key); - - void saveLoadBalance(String groupName, String key, String data); - - String getLoadBalance(String groupName, String key); + /** + * 导入岗位 + * @param excelVOList 岗位列表 + * @param bindingResult 错误信息列表 + * @return ok fail + */ + R importPost(List excelVOList, BindingResult bindingResult); } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysRoleMenuService.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysRoleMenuService.java index 636a91c0d..73c6eb53a 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysRoleMenuService.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysRoleMenuService.java @@ -34,11 +34,10 @@ public interface SysRoleMenuService extends IService { /** * 更新角色菜单 - * @param role - * @param roleId 角色 + * @param roleId 角色ID * @param menuIds 菜单ID拼成的字符串,每个id之间根据逗号分隔 * @return */ - Boolean saveRoleMenus(String role, Long roleId, String menuIds); + Boolean saveRoleMenus(Long roleId, String menuIds); } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysRoleService.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysRoleService.java index 16c26d60d..7f1055060 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysRoleService.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysRoleService.java @@ -21,7 +21,10 @@ package com.pig4cloud.pigx.admin.service; import com.baomidou.mybatisplus.extension.service.IService; import com.pig4cloud.pigx.admin.api.entity.SysRole; +import com.pig4cloud.pigx.admin.api.vo.RoleExcelVO; import com.pig4cloud.pigx.admin.api.vo.RoleVO; +import com.pig4cloud.pigx.common.core.util.R; +import org.springframework.validation.BindingResult; import java.util.List; @@ -64,4 +67,18 @@ public interface SysRoleService extends IService { */ Boolean updateRoleMenus(RoleVO roleVo); + /** + * 导入角色 + * @param excelVOList 角色列表 + * @param bindingResult 错误信息列表 + * @return ok fail + */ + R importRole(List excelVOList, BindingResult bindingResult); + + /** + * 查询全部的角色 + * @return list + */ + List listRole(); + } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysUserService.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysUserService.java index 4bcbcc1ff..8e9ae3add 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysUserService.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/SysUserService.java @@ -110,4 +110,18 @@ public interface SysUserService extends IService { */ R importUser(List excelVOList, BindingResult bindingResult); + /** + * 注册用户 + * @param userDto 用户信息 + * @return success/false + */ + R registerUser(UserDTO userDto); + + /** + * 锁定用户 + * @param username + * @return + */ + R lockUser(String username); + } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/ConnectServiceImpl.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/ConnectServiceImpl.java new file mode 100644 index 000000000..32cb0d014 --- /dev/null +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/ConnectServiceImpl.java @@ -0,0 +1,330 @@ +package com.pig4cloud.pigx.admin.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.convert.Convert; +import cn.hutool.core.util.StrUtil; +import cn.hutool.json.JSONArray; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.dingtalk.api.DefaultDingTalkClient; +import com.dingtalk.api.DingTalkClient; +import com.dingtalk.api.request.OapiGettokenRequest; +import com.dingtalk.api.request.OapiUserListidRequest; +import com.dingtalk.api.request.OapiV2DepartmentListsubRequest; +import com.dingtalk.api.request.OapiV2UserGetRequest; +import com.dingtalk.api.response.OapiGettokenResponse; +import com.dingtalk.api.response.OapiUserListidResponse; +import com.dingtalk.api.response.OapiV2DepartmentListsubResponse; +import com.dingtalk.api.response.OapiV2UserGetResponse; +import com.pig4cloud.pigx.admin.api.dto.UserDTO; +import com.pig4cloud.pigx.admin.api.entity.SysDept; +import com.pig4cloud.pigx.admin.api.entity.SysSocialDetails; +import com.pig4cloud.pigx.admin.api.entity.SysUser; +import com.pig4cloud.pigx.admin.mapper.SysSocialDetailsMapper; +import com.pig4cloud.pigx.admin.service.ConnectService; +import com.pig4cloud.pigx.admin.service.SysDeptService; +import com.pig4cloud.pigx.admin.service.SysUserService; +import com.pig4cloud.pigx.common.core.constant.SecurityConstants; +import com.pig4cloud.pigx.common.core.constant.enums.LoginTypeEnum; +import com.pig4cloud.pigx.common.core.exception.ErrorCodes; +import com.pig4cloud.pigx.common.core.util.MsgUtils; +import com.pig4cloud.pigx.common.core.util.R; +import lombok.RequiredArgsConstructor; +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +import me.chanjar.weixin.common.error.WxErrorException; +import me.chanjar.weixin.cp.api.WxCpService; +import me.chanjar.weixin.cp.api.impl.WxCpServiceImpl; +import me.chanjar.weixin.cp.bean.WxCpDepart; +import me.chanjar.weixin.cp.bean.WxCpUser; +import me.chanjar.weixin.cp.config.impl.WxCpDefaultConfigImpl; +import org.springframework.http.HttpMethod; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.LinkedList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 互联平台实现 + *

+ * 钉钉: https://open-dev.dingtalk.com/apiExplorer + * + * @author lengleng + * @date 2022/4/22 + */ +@SuppressWarnings("unchecked") +@Slf4j +@Service +@RequiredArgsConstructor +public class ConnectServiceImpl implements ConnectService { + + private final SysSocialDetailsMapper sysSocialDetailsMapper; + + private final SysDeptService sysDeptService; + + private final SysUserService sysUserService; + + /** + * 同步钉钉部门 + * @return Boolean + */ + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean syncDingDept() { + OapiV2DepartmentListsubRequest req = new OapiV2DepartmentListsubRequest(); + req.setDeptId(1L); + req.setLanguage("zh_CN"); + + // 数据库中现有的部门 + List deptList = sysDeptService.list(Wrappers.emptyWrapper()); + + // 查询根部门下的所有部门 + List insertDept = queryChildDept(req, getDingAccessToken(), deptList); + + // 去重 + List syncDept = insertDept.stream().distinct().collect(Collectors.toList()); + + // 保存部门以及部门关系 + if (CollectionUtils.isNotEmpty(syncDept)) { + syncDept.forEach(sysDeptService::saveDept); + } + + return Boolean.TRUE; + } + + /** + * 同步部门下的钉钉用户 + * @param deptId 部门ID + * @return R + */ + @SneakyThrows + @Override + @Transactional(rollbackFor = Exception.class) + public R syncDingUser(Long deptId) { + // 数据库中现有用户 + List users = sysUserService.list(Wrappers.emptyWrapper()); + + String token = getDingAccessToken(); + + // 查询部门下的用户id列表 + DingTalkClient client = new DefaultDingTalkClient(SecurityConstants.DING_DEPT_USERIDS_URL); + OapiUserListidRequest req = new OapiUserListidRequest(); + req.setDeptId(deptId); + OapiUserListidResponse rsp = client.execute(req, token); + + JSONObject jsonObject = JSONUtil.parseObj(rsp.getBody()); + JSONObject result = jsonObject.getJSONObject("result"); + + if (result == null) { + return R.ok(); + } + List useridList = result.get("userid_list", List.class); + + // 查询用户详情 + for (String userid : useridList) { + DingTalkClient userClient = new DefaultDingTalkClient(SecurityConstants.DING_USER_INFO_URL); + OapiV2UserGetRequest userGetRequest = new OapiV2UserGetRequest(); + userGetRequest.setUserid(userid); + OapiV2UserGetResponse userGetResponse = userClient.execute(userGetRequest, token); + JSONObject userResult = JSONUtil.parseObj(userGetResponse.getBody()); + JSONObject userObj = JSONUtil.parseObj(userResult.get("result")); + + boolean exist = users.stream().filter(user -> StrUtil.isNotBlank(user.getPhone())) + .anyMatch(user -> user.getPhone().equals(userObj.getStr("mobile"))); + + if (exist || StrUtil.isBlank(userObj.getStr("mobile"))) { + log.info("用户已存在或手机号不合法 {}", userid); + continue; + } + + // 用户部门信息 + JSONArray deptOrders = userObj.getJSONArray("dept_order_list"); + JSONObject deptInfo = (JSONObject) deptOrders.get(0); + + // 用户信息 + UserDTO userDTO = new UserDTO(); + userDTO.setDeptId(deptInfo.getLong("dept_id")); + userDTO.setAvatar(userObj.getStr("avatar")); + userDTO.setUsername(userObj.getStr("mobile")); + userDTO.setPhone(userObj.getStr("mobile")); + userDTO.setNickname(userObj.getStr("nickname")); + userDTO.setName(userObj.getStr("name")); + userDTO.setEmail(userObj.getStr("email")); + // 初始化密码为 手机号 + userDTO.setPassword(userObj.getStr("mobile")); + sysUserService.saveUser(userDTO); + } + + return R.ok(); + } + + /** + * 同步企微部门 + * @return R + */ + @Override + @Transactional(rollbackFor = Exception.class) + public R syncCpDept() { + WxCpService wxCpService = new WxCpServiceImpl(); + wxCpService.setWxCpConfigStorage(getCpConfig()); + + List departList; + try { + departList = wxCpService.getDepartmentService().list(null); + } + catch (WxErrorException e) { + log.error("获取企业微信部门列表失败", e); + return R.failed(MsgUtils.getMessage(ErrorCodes.SYS_CONNECT_CP_DEPT_SYNC_ERROR)); + } + + if (CollUtil.isEmpty(departList)) { + return R.ok(); + } + + // 数据库中现有的部门 + List deptList = sysDeptService.list(Wrappers.emptyWrapper()); + departList.stream() + .filter(depart -> deptList.stream().noneMatch(sysDept -> depart.getName().equals(sysDept.getName()))) + .map(dept -> { + SysDept sysDept = new SysDept(); + sysDept.setName(dept.getName()); + sysDept.setDeptId(dept.getId()); + sysDept.setParentId(dept.getParentId()); + sysDept.setSortOrder(dept.getOrder().intValue()); + return sysDept; + }).forEach(sysDeptService::saveDept); + return R.ok(); + } + + /** + * 同步企微用户 + * @return R + */ + @Override + public R syncCpUser() { + WxCpService wxCpService = new WxCpServiceImpl(); + wxCpService.setWxCpConfigStorage(getCpConfig()); + + List cpUserList; + try { + cpUserList = wxCpService.getUserService().listByDepartment(1L, true, 0); + } + catch (WxErrorException e) { + log.error("获取企业微信用户列表失败", e); + return R.failed(MsgUtils.getMessage(ErrorCodes.SYS_CONNECT_CP_USER_SYNC_ERROR)); + } + + if (CollUtil.isEmpty(cpUserList)) { + return R.ok(); + } + + // 系统原有用户 + List userList = sysUserService.list(Wrappers.emptyWrapper()); + + for (WxCpUser cpUser : cpUserList) { + boolean exist = userList.stream().filter(user -> StrUtil.isNotBlank(user.getPhone())) + .anyMatch(user -> user.getPhone().equals(cpUser.getMobile())); + if (exist || StrUtil.isBlank(cpUser.getMobile())) { + log.info("用户已存在或手机号不合法跳过 {}", cpUser); + continue; + } + + UserDTO user = new UserDTO(); + user.setUsername(cpUser.getMobile()); + user.setName(cpUser.getName()); + user.setDeptId(cpUser.getDepartIds()[0]); + user.setEmail(cpUser.getEmail()); + user.setPhone(cpUser.getMobile()); + user.setAvatar(cpUser.getAvatar()); + // 初始化密码为 手机号 + user.setPassword(cpUser.getMobile()); + sysUserService.saveUser(user); + } + + return R.ok(); + } + + private String getDingAccessToken() { + SysSocialDetails dingTalk = sysSocialDetailsMapper.selectOne(Wrappers.lambdaQuery() + .eq(SysSocialDetails::getType, LoginTypeEnum.DINGTALK.getType())); + + DingTalkClient client = new DefaultDingTalkClient(SecurityConstants.DING_OLD_GET_TOKEN); + OapiGettokenRequest request = new OapiGettokenRequest(); + request.setAppkey(dingTalk.getAppId()); + request.setAppsecret(dingTalk.getAppSecret()); + request.setHttpMethod(HttpMethod.GET.name()); + try { + OapiGettokenResponse response = client.execute(request); + return response.getAccessToken(); + } + catch (Exception e) { + log.error("调用钉钉异常", e); + } + return null; + } + + private WxCpDefaultConfigImpl getCpConfig() { + SysSocialDetails cp = sysSocialDetailsMapper.selectOne(Wrappers.lambdaQuery() + .eq(SysSocialDetails::getType, LoginTypeEnum.WEIXIN_CP.getType())); + + WxCpDefaultConfigImpl config = new WxCpDefaultConfigImpl(); + config.setCorpId(cp.getAppId()); // 设置微信企业号的appid + config.setCorpSecret(cp.getAppSecret()); // 设置微信企业号的app + // corpSecret + JSONObject ext = JSONUtil.parseObj(cp.getExt()); + config.setAgentId(ext.getInt("agentId")); // 设置微信企业号应用ID + config.setToken(ext.getStr("token")); // 设置微信企业号应用的token + config.setAesKey(ext.getStr("aesKey")); // 设置微信企业号应用的EncodingAESKey + + return config; + } + + /** + * 查询当前部门下的所有部门 + */ + @SneakyThrows + private List queryChildDept(OapiV2DepartmentListsubRequest req, String token, List deptList) { + List sysDepts = new LinkedList<>(); + + // 调用Api查询 + DingTalkClient client = new DefaultDingTalkClient(SecurityConstants.DING_OLD_DEPT_URL); + OapiV2DepartmentListsubResponse rsp = client.execute(req, token); + + JSONObject result = JSONUtil.parseObj(rsp.getBody()); + List resultList = result.get("result", List.class); + + if (CollUtil.isEmpty(resultList)) { + return sysDepts; + } + + // 过滤出数据库存在的部门 + List depts = resultList.stream() + .filter(dept -> deptList.stream().noneMatch(sysDept -> sysDept.getName().equals(dept.get("name")))) + .map(dept -> { + SysDept sysDept = new SysDept(); + sysDept.setName(Convert.toStr(dept.get("name"))); + sysDept.setDeptId(Convert.toLong(dept.get("dept_id"))); + sysDept.setParentId(Convert.toLong(dept.get("parent_id"))); + return sysDept; + }).collect(Collectors.toList()); + + // 递归查询下一级 + if (CollectionUtils.isNotEmpty(depts)) { + sysDepts.addAll(depts); + depts.forEach(dept -> { + OapiV2DepartmentListsubRequest request = new OapiV2DepartmentListsubRequest(); + request.setDeptId(dept.getDeptId()); + request.setLanguage("zh_CN"); + List childDept = queryChildDept(request, token, deptList); + sysDepts.addAll(childDept); + }); + } + + return sysDepts; + } + +} diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/MobileServiceImpl.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/MobileServiceImpl.java index 82dfdd456..cf85d076c 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/MobileServiceImpl.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/MobileServiceImpl.java @@ -27,6 +27,8 @@ import com.pig4cloud.pigx.admin.service.MobileService; import com.pig4cloud.pigx.common.core.constant.CacheConstants; import com.pig4cloud.pigx.common.core.constant.SecurityConstants; import com.pig4cloud.pigx.common.core.constant.enums.LoginTypeEnum; +import com.pig4cloud.pigx.common.core.exception.ErrorCodes; +import com.pig4cloud.pigx.common.core.util.MsgUtils; import com.pig4cloud.pigx.common.core.util.R; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -63,7 +65,7 @@ public class MobileServiceImpl implements MobileService { if (CollUtil.isEmpty(userList)) { log.info("手机号未注册:{}", mobile); - return R.ok(Boolean.FALSE, "手机号未注册"); + return R.ok(Boolean.FALSE, MsgUtils.getMessage(ErrorCodes.SYS_APP_PHONE_UNREGISTERED, mobile)); } Object codeObj = redisTemplate.opsForValue() @@ -71,7 +73,7 @@ public class MobileServiceImpl implements MobileService { if (codeObj != null) { log.info("手机号验证码未过期:{},{}", mobile, codeObj); - return R.ok(Boolean.FALSE, "验证码发送过频繁"); + return R.ok(Boolean.FALSE, MsgUtils.getMessage(ErrorCodes.SYS_APP_SMS_OFTEN)); } String code = RandomUtil.randomNumbers(Integer.parseInt(SecurityConstants.CODE_SIZE)); diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysDeptServiceImpl.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysDeptServiceImpl.java index ebf23594e..506766ac8 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysDeptServiceImpl.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysDeptServiceImpl.java @@ -127,7 +127,7 @@ public class SysDeptServiceImpl extends ServiceImpl impl // 查询数据权限内部门 List deptOwnIdList = deptMapper.selectListByScope( Wrappers.lambdaQuery().like(StrUtil.isNotBlank(deptName), SysDept::getName, deptName), - new DataScope()).stream().map(SysDept::getDeptId).collect(Collectors.toList()); + DataScope.of()).stream().map(SysDept::getDeptId).collect(Collectors.toList()); // 权限内部门 List> collect = deptAllList.stream() diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysDictItemServiceImpl.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysDictItemServiceImpl.java index 0ffb6dc69..c9a1a2da0 100755 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysDictItemServiceImpl.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysDictItemServiceImpl.java @@ -24,6 +24,8 @@ import com.pig4cloud.pigx.admin.service.SysDictItemService; import com.pig4cloud.pigx.admin.service.SysDictService; import com.pig4cloud.pigx.common.core.constant.CacheConstants; import com.pig4cloud.pigx.common.core.constant.enums.DictTypeEnum; +import com.pig4cloud.pigx.common.core.exception.ErrorCodes; +import com.pig4cloud.pigx.common.core.util.MsgUtils; import com.pig4cloud.pigx.common.core.util.R; import lombok.AllArgsConstructor; import org.springframework.cache.annotation.CacheEvict; @@ -54,7 +56,7 @@ public class SysDictItemServiceImpl extends ServiceImpl impl SysDict dict = this.getById(id); // 系统内置 if (DictTypeEnum.SYSTEM.getType().equals(dict.getSystemFlag())) { - return R.failed("系统内置字典不能删除"); + return R.failed(MsgUtils.getMessage(ErrorCodes.SYS_DICT_DELETE_SYSTEM)); } baseMapper.deleteById(id); @@ -74,7 +76,7 @@ public class SysDictServiceImpl extends ServiceImpl impl SysDict sysDict = this.getById(dict.getId()); // 系统内置 if (DictTypeEnum.SYSTEM.getType().equals(sysDict.getSystemFlag())) { - return R.failed("系统内置字典不能修改"); + return R.failed(MsgUtils.getMessage(ErrorCodes.SYS_DICT_UPDATE_SYSTEM)); } return R.ok(this.updateById(dict)); } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysFileServiceImpl.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysFileServiceImpl.java index 5d433c895..b68e85374 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysFileServiceImpl.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysFileServiceImpl.java @@ -26,9 +26,8 @@ import com.pig4cloud.pigx.admin.api.entity.SysFile; import com.pig4cloud.pigx.admin.mapper.SysFileMapper; import com.pig4cloud.pigx.admin.service.SysFileService; import com.pig4cloud.pigx.common.core.util.R; -import com.pig4cloud.pigx.common.oss.OssProperties; -import com.pig4cloud.pigx.common.oss.service.OssTemplate; -import com.pig4cloud.pigx.common.security.util.SecurityUtils; +import com.pig4cloud.pigx.common.file.core.FileProperties; +import com.pig4cloud.pigx.common.file.core.FileTemplate; import lombok.AllArgsConstructor; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; @@ -37,6 +36,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; +import java.io.InputStream; import java.util.HashMap; import java.util.Map; @@ -51,9 +51,9 @@ import java.util.Map; @AllArgsConstructor public class SysFileServiceImpl extends ServiceImpl implements SysFileService { - private final OssProperties ossProperties; + private final FileTemplate fileTemplate; - private final OssTemplate minioTemplate; + private final FileProperties properties; /** * 上传文件 @@ -64,13 +64,12 @@ public class SysFileServiceImpl extends ServiceImpl impl public R uploadFile(MultipartFile file) { String fileName = IdUtil.simpleUUID() + StrUtil.DOT + FileUtil.extName(file.getOriginalFilename()); Map resultMap = new HashMap<>(4); - resultMap.put("bucketName", ossProperties.getBucketName()); + resultMap.put("bucketName", properties.getBucketName()); resultMap.put("fileName", fileName); - resultMap.put("url", String.format("/admin/sys-file/%s/%s", ossProperties.getBucketName(), fileName)); + resultMap.put("url", String.format("/admin/sys-file/%s/%s", properties.getBucketName(), fileName)); - try { - minioTemplate.putObject(ossProperties.getBucketName(), fileName, file.getInputStream(), - file.getContentType()); + try (InputStream inputStream = file.getInputStream()) { + fileTemplate.putObject(properties.getBucketName(), fileName, inputStream, file.getContentType()); // 文件管理数据记录,收集管理追踪文件 fileLog(file, fileName); } @@ -89,7 +88,7 @@ public class SysFileServiceImpl extends ServiceImpl impl */ @Override public void getFile(String bucket, String fileName, HttpServletResponse response) { - try (S3Object s3Object = minioTemplate.getObject(bucket, fileName)) { + try (S3Object s3Object = fileTemplate.getObject(bucket, fileName)) { response.setContentType("application/octet-stream; charset=UTF-8"); IoUtil.copy(s3Object.getObjectContent(), response.getOutputStream()); } @@ -108,7 +107,7 @@ public class SysFileServiceImpl extends ServiceImpl impl @Transactional(rollbackFor = Exception.class) public Boolean deleteFile(Long id) { SysFile file = this.getById(id); - minioTemplate.removeObject(ossProperties.getBucketName(), file.getFileName()); + fileTemplate.removeObject(properties.getBucketName(), file.getFileName()); return this.removeById(id); } @@ -123,9 +122,7 @@ public class SysFileServiceImpl extends ServiceImpl impl sysFile.setOriginal(file.getOriginalFilename()); sysFile.setFileSize(file.getSize()); sysFile.setType(FileUtil.extName(file.getOriginalFilename())); - sysFile.setBucketName(ossProperties.getBucketName()); - sysFile.setCreateUser(SecurityUtils.getUser().getUsername()); - sysFile.setUpdateUser(SecurityUtils.getUser().getUsername()); + sysFile.setBucketName(properties.getBucketName()); this.save(sysFile); } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysMenuServiceImpl.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysMenuServiceImpl.java index 48317ffa1..792a2d8de 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysMenuServiceImpl.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysMenuServiceImpl.java @@ -34,6 +34,8 @@ import com.pig4cloud.pigx.admin.service.SysMenuService; import com.pig4cloud.pigx.common.core.constant.CacheConstants; import com.pig4cloud.pigx.common.core.constant.CommonConstants; import com.pig4cloud.pigx.common.core.constant.enums.MenuTypeEnum; +import com.pig4cloud.pigx.common.core.exception.ErrorCodes; +import com.pig4cloud.pigx.common.core.util.MsgUtils; import com.pig4cloud.pigx.common.core.util.R; import lombok.AllArgsConstructor; import org.springframework.beans.BeanUtils; @@ -78,7 +80,7 @@ public class SysMenuServiceImpl extends ServiceImpl impl // 查询父节点为当前节点的节点 List menuList = this.list(Wrappers.query().lambda().eq(SysMenu::getParentId, id)); if (CollUtil.isNotEmpty(menuList)) { - return R.failed("菜单含有下级不能删除"); + return R.failed(MsgUtils.getMessage(ErrorCodes.SYS_MENU_DELETE_EXISTING)); } sysRoleMenuMapper.delete(Wrappers.query().lambda().eq(SysRoleMenu::getMenuId, id)); diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysPostServiceImpl.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysPostServiceImpl.java new file mode 100644 index 000000000..c4c7027da --- /dev/null +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysPostServiceImpl.java @@ -0,0 +1,114 @@ +/* + * Copyright (c) 2018-2025, lengleng All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the pig4cloud.com developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: lengleng (wangiegie@gmail.com) + */ +package com.pig4cloud.pigx.admin.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.pig4cloud.pigx.admin.api.entity.SysPost; +import com.pig4cloud.pigx.admin.api.vo.PostExcelVO; +import com.pig4cloud.pigx.admin.mapper.SysPostMapper; +import com.pig4cloud.pigx.admin.service.SysPostService; +import com.pig4cloud.pigx.common.core.exception.ErrorCodes; +import com.pig4cloud.pigx.common.core.util.MsgUtils; +import com.pig4cloud.pigx.common.core.util.R; +import com.pig4cloud.pigx.common.excel.vo.ErrorMessage; +import org.springframework.stereotype.Service; +import org.springframework.validation.BindingResult; + +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; + +/** + * 岗位信息表 + * + * @author fxz + * @date 2022-03-26 12:50:43 + */ +@Service +public class SysPostServiceImpl extends ServiceImpl implements SysPostService { + + /** + * 导入岗位 + * @param excelVOList 岗位列表 + * @param bindingResult 错误信息列表 + * @return ok fail + */ + @Override + public R importPost(List excelVOList, BindingResult bindingResult) { + // 通用校验获取失败的数据 + List errorMessageList = (List) bindingResult.getTarget(); + + // 个性化校验逻辑 + List postList = this.list(); + + // 执行数据插入操作 组装 PostDto + for (int i = 0; i < excelVOList.size(); i++) { + PostExcelVO excel = excelVOList.get(i); + Set errorMsg = new HashSet<>(); + // 检验岗位名称或者岗位编码是否存在 + boolean existPost = postList.stream().anyMatch(post -> excel.getPostName().equals(post.getPostName()) + || excel.getPostCode().equals(post.getPostCode())); + + if (existPost) { + errorMsg.add(MsgUtils.getMessage(ErrorCodes.SYS_POST_NAMEORCODE_EXISTING, excel.getPostName(), + excel.getPostCode())); + } + + // 数据合法情况 + if (CollUtil.isEmpty(errorMsg)) { + insertExcelPost(excel); + } + else { + // 数据不合法 + errorMessageList.add(new ErrorMessage((long) (i + 2), errorMsg)); + } + } + if (CollUtil.isNotEmpty(errorMessageList)) { + return R.failed(errorMessageList); + } + return R.ok(); + } + + /** + * 导出excel 表格 + * @return + */ + @Override + public List listPost() { + List postList = this.list(Wrappers.emptyWrapper()); + // 转换成execl 对象输出 + return postList.stream().map(post -> { + PostExcelVO postExcelVO = new PostExcelVO(); + BeanUtil.copyProperties(post, postExcelVO); + return postExcelVO; + }).collect(Collectors.toList()); + } + + /** + * 插入excel Post + */ + private void insertExcelPost(PostExcelVO excel) { + SysPost sysPost = new SysPost(); + BeanUtil.copyProperties(excel, sysPost); + this.save(sysPost); + } + +} diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysPublicParamServiceImpl.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysPublicParamServiceImpl.java index 24070c101..b35d2d691 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysPublicParamServiceImpl.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysPublicParamServiceImpl.java @@ -24,6 +24,8 @@ import com.pig4cloud.pigx.admin.mapper.SysPublicParamMapper; import com.pig4cloud.pigx.admin.service.SysPublicParamService; import com.pig4cloud.pigx.common.core.constant.CacheConstants; import com.pig4cloud.pigx.common.core.constant.enums.DictTypeEnum; +import com.pig4cloud.pigx.common.core.exception.ErrorCodes; +import com.pig4cloud.pigx.common.core.util.MsgUtils; import com.pig4cloud.pigx.common.core.util.R; import lombok.AllArgsConstructor; import org.springframework.cache.annotation.CacheEvict; @@ -64,7 +66,7 @@ public class SysPublicParamServiceImpl extends ServiceImplquery().lambda().eq(SysRoleMenu::getRoleId, roleId)); if (StrUtil.isBlank(menuIds)) { return Boolean.TRUE; } - List roleMenuList = Arrays.stream(menuIds.split(",")).map(menuId -> { + List roleMenuList = Arrays.stream(menuIds.split(StrUtil.COMMA)).map(menuId -> { SysRoleMenu roleMenu = new SysRoleMenu(); roleMenu.setRoleId(roleId); roleMenu.setMenuId(Long.valueOf(menuId)); diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysRoleServiceImpl.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysRoleServiceImpl.java index abda10e42..155343a22 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysRoleServiceImpl.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysRoleServiceImpl.java @@ -19,21 +19,32 @@ package com.pig4cloud.pigx.admin.service.impl; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.pig4cloud.pigx.admin.api.entity.SysRole; import com.pig4cloud.pigx.admin.api.entity.SysRoleMenu; +import com.pig4cloud.pigx.admin.api.vo.RoleExcelVO; import com.pig4cloud.pigx.admin.api.vo.RoleVO; import com.pig4cloud.pigx.admin.mapper.SysRoleMapper; import com.pig4cloud.pigx.admin.service.SysRoleMenuService; import com.pig4cloud.pigx.admin.service.SysRoleService; import com.pig4cloud.pigx.common.core.constant.CacheConstants; +import com.pig4cloud.pigx.common.core.exception.ErrorCodes; +import com.pig4cloud.pigx.common.core.util.MsgUtils; +import com.pig4cloud.pigx.common.core.util.R; +import com.pig4cloud.pigx.common.excel.vo.ErrorMessage; import lombok.AllArgsConstructor; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.validation.BindingResult; +import java.util.HashSet; import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; /** *

@@ -90,8 +101,75 @@ public class SysRoleServiceImpl extends ServiceImpl impl */ @Override public Boolean updateRoleMenus(RoleVO roleVo) { - SysRole sysRole = baseMapper.selectById(roleVo.getRoleId()); - return roleMenuService.saveRoleMenus(sysRole.getRoleCode(), roleVo.getRoleId(), roleVo.getMenuIds()); + return roleMenuService.saveRoleMenus(roleVo.getRoleId(), roleVo.getMenuIds()); + } + + /** + * 导入角色 + * @param excelVOList 角色列表 + * @param bindingResult 错误信息列表 + * @return ok fail + */ + @Override + public R importRole(List excelVOList, BindingResult bindingResult) { + // 通用校验获取失败的数据 + List errorMessageList = (List) bindingResult.getTarget(); + + // 个性化校验逻辑 + List roleList = this.list(); + + // 执行数据插入操作 组装 RoleDto + for (int i = 0; i < excelVOList.size(); i++) { + RoleExcelVO excel = excelVOList.get(i); + Set errorMsg = new HashSet<>(); + // 检验角色名称或者角色编码是否存在 + boolean existRole = roleList.stream().anyMatch(sysRole -> excel.getRoleName().equals(sysRole.getRoleName()) + || excel.getRoleCode().equals(sysRole.getRoleCode())); + + if (existRole) { + errorMsg.add(MsgUtils.getMessage(ErrorCodes.SYS_ROLE_NAMEORCODE_EXISTING, excel.getRoleName(), + excel.getRoleCode())); + } + + // 数据合法情况 + if (CollUtil.isEmpty(errorMsg)) { + insertExcelRole(excel); + } + else { + // 数据不合法情况 + errorMessageList.add(new ErrorMessage((long) (i + 2), errorMsg)); + } + } + if (CollUtil.isNotEmpty(errorMessageList)) { + return R.failed(errorMessageList); + } + return R.ok(); + } + + /** + * 查询全部的角色 + * @return list + */ + @Override + public List listRole() { + List roleList = this.list(Wrappers.emptyWrapper()); + // 转换成execl 对象输出 + return roleList.stream().map(role -> { + RoleExcelVO roleExcelVO = new RoleExcelVO(); + BeanUtil.copyProperties(role, roleExcelVO); + return roleExcelVO; + }).collect(Collectors.toList()); + } + + /** + * 插入excel Role + */ + private void insertExcelRole(RoleExcelVO excel) { + SysRole sysRole = new SysRole(); + sysRole.setRoleName(excel.getRoleName()); + sysRole.setRoleDesc(excel.getRoleDesc()); + sysRole.setRoleCode(excel.getRoleCode()); + this.save(sysRole); } } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysUserServiceImpl.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysUserServiceImpl.java index 7fe0fe1bd..67a0d0fcf 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysUserServiceImpl.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/service/impl/SysUserServiceImpl.java @@ -32,11 +32,15 @@ import com.pig4cloud.pigx.admin.api.entity.*; import com.pig4cloud.pigx.admin.api.vo.UserExcelVO; import com.pig4cloud.pigx.admin.api.vo.UserVO; import com.pig4cloud.pigx.admin.mapper.SysUserMapper; +import com.pig4cloud.pigx.admin.mapper.SysUserPostMapper; import com.pig4cloud.pigx.admin.service.*; import com.pig4cloud.pigx.common.core.constant.CacheConstants; import com.pig4cloud.pigx.common.core.constant.CommonConstants; +import com.pig4cloud.pigx.common.core.exception.ErrorCodes; +import com.pig4cloud.pigx.common.core.util.MsgUtils; import com.pig4cloud.pigx.common.core.util.R; import com.pig4cloud.pigx.common.data.datascope.DataScope; +import com.pig4cloud.pigx.common.data.resolver.ParamResolver; import com.pig4cloud.pigx.common.excel.vo.ErrorMessage; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -49,10 +53,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.BindingResult; import java.time.LocalDateTime; -import java.util.HashSet; -import java.util.List; -import java.util.Optional; -import java.util.Set; +import java.util.*; import java.util.stream.Collectors; /** @@ -74,6 +75,8 @@ public class SysUserServiceImpl extends ServiceImpl impl private final SysUserRoleService sysUserRoleService; + private final SysUserPostMapper sysUserPostMapper; + /** * 保存用户信息 * @param userDto DTO 对象 @@ -87,6 +90,26 @@ public class SysUserServiceImpl extends ServiceImpl impl sysUser.setDelFlag(CommonConstants.STATUS_NORMAL); sysUser.setPassword(ENCODER.encode(userDto.getPassword())); baseMapper.insert(sysUser); + // 保存用户岗位信息 + Optional.ofNullable(userDto.getPost()).ifPresent(posts -> { + posts.stream().map(postId -> { + SysUserPost userPost = new SysUserPost(); + userPost.setUserId(sysUser.getUserId()); + userPost.setPostId(postId); + return userPost; + }).forEach(sysUserPostMapper::insert); + }); + + // 如果角色为空,赋默认角色 + if (CollUtil.isEmpty(userDto.getRole())) { + // 获取默认角色编码 + String defaultRole = ParamResolver.getStr("USER_DEFAULT_ROLE"); + // 默认角色 + SysRole sysRole = sysRoleService + .getOne(Wrappers.lambdaQuery().eq(SysRole::getRoleCode, defaultRole)); + userDto.setRole(Collections.singletonList(sysRole.getRoleId())); + } + List userRoleList = userDto.getRole().stream().map(roleId -> { SysUserRole userRole = new SysUserRole(); userRole.setUserId(sysUser.getUserId()); @@ -130,7 +153,7 @@ public class SysUserServiceImpl extends ServiceImpl impl */ @Override public IPage getUsersWithRolePage(Page page, UserDTO userDTO) { - return baseMapper.getUserVosPage(page, userDTO, new DataScope()); + return baseMapper.getUserVosPage(page, userDTO, DataScope.of()); } /** @@ -162,7 +185,7 @@ public class SysUserServiceImpl extends ServiceImpl impl UserVO userVO = baseMapper.getUserVoByUsername(userDto.getUsername()); if (!ENCODER.matches(userDto.getPassword(), userVO.getPassword())) { log.info("原密码错误,修改个人信息失败:{}", userDto.getUsername()); - return R.failed("原密码错误,修改个人信息失败"); + return R.failed(MsgUtils.getMessage(ErrorCodes.SYS_USER_UPDATE_PASSWORDERROR)); } SysUser sysUser = new SysUser(); @@ -199,6 +222,13 @@ public class SysUserServiceImpl extends ServiceImpl impl userRole.setRoleId(roleId); userRole.insert(); }); + sysUserPostMapper.delete(Wrappers.lambdaQuery().eq(SysUserPost::getUserId, userDto.getUserId())); + userDto.getPost().forEach(postId -> { + SysUserPost userPost = new SysUserPost(); + userPost.setUserId(sysUser.getUserId()); + userPost.setPostId(postId); + userPost.insert(); + }); return Boolean.TRUE; } @@ -228,7 +258,7 @@ public class SysUserServiceImpl extends ServiceImpl impl @Override public List listUser(UserDTO userDTO) { // 根据数据权限查询全部的用户信息 - List voList = baseMapper.selectVoListByScope(userDTO, new DataScope()); + List voList = baseMapper.selectVoListByScope(userDTO, DataScope.of()); // 转换成execl 对象输出 List userExcelVOList = voList.stream().map(userVO -> { UserExcelVO excelVO = new UserExcelVO(); @@ -266,14 +296,14 @@ public class SysUserServiceImpl extends ServiceImpl impl .anyMatch(sysUser -> excel.getUsername().equals(sysUser.getUsername())); if (exsitUserName) { - errorMsg.add(String.format("%s 用户名已存在", excel.getUsername())); + errorMsg.add(MsgUtils.getMessage(ErrorCodes.SYS_USER_USERNAME_EXISTING, excel.getUsername())); } // 判断输入的部门名称列表是否合法 Optional deptOptional = deptList.stream() .filter(dept -> excel.getDeptName().equals(dept.getName())).findFirst(); if (!deptOptional.isPresent()) { - errorMsg.add(String.format("%s 部门名称不存在", excel.getDeptName())); + errorMsg.add(MsgUtils.getMessage(ErrorCodes.SYS_DEPT_DEPTNAME_INEXISTENCE, excel.getDeptName())); } // 判断输入的角色名称列表是否合法 @@ -283,7 +313,7 @@ public class SysUserServiceImpl extends ServiceImpl impl .collect(Collectors.toList()); if (roleCollList.size() != roleNameList.size()) { - errorMsg.add(String.format("%s 角色名称不存在", excel.getRoleNameList())); + errorMsg.add(MsgUtils.getMessage(ErrorCodes.SYS_ROLE_ROLENAME_INEXISTENCE, excel.getRoleNameList())); } // 数据合法情况 @@ -300,7 +330,7 @@ public class SysUserServiceImpl extends ServiceImpl impl if (CollUtil.isNotEmpty(errorMessageList)) { return R.failed(errorMessageList); } - return R.ok(null, "用户导入成功,默认密码为手机号"); + return R.ok(null, MsgUtils.getMessage(ErrorCodes.SYS_USER_IMPORT_SUCCEED)); } /** @@ -324,4 +354,34 @@ public class SysUserServiceImpl extends ServiceImpl impl this.saveUser(userDTO); } + /** + * 注册用户 赋予用户默认角色 + * @param userDto 用户信息 + * @return success/false + */ + @Override + public R registerUser(UserDTO userDto) { + // 判断用户名是否存在 + SysUser sysUser = this.getOne(Wrappers.lambdaQuery().eq(SysUser::getUsername, userDto.getUsername())); + if (sysUser != null) { + String message = MsgUtils.getMessage(ErrorCodes.SYS_USER_USERNAME_EXISTING, userDto.getUsername()); + return R.failed(message); + } + return R.ok(saveUser(userDto)); + } + + /** + * 锁定用户 + * @param username 用户名 + * @return + */ + @Override + @CacheEvict(value = CacheConstants.USER_DETAILS, key = "#username") + public R lockUser(String username) { + SysUser sysUser = baseMapper.selectOne(Wrappers.lambdaQuery().eq(SysUser::getUsername, username)); + sysUser.setLockFlag(CommonConstants.STATUS_LOCK); + baseMapper.updateById(sysUser); + return R.ok(); + } + } diff --git a/pigx-upms/pigx-upms-biz/src/main/resources/bootstrap.yml b/pigx-upms/pigx-upms-biz/src/main/resources/application.yml similarity index 57% rename from pigx-upms/pigx-upms-biz/src/main/resources/bootstrap.yml rename to pigx-upms/pigx-upms-biz/src/main/resources/application.yml index 45d9e39ed..959c5409f 100644 --- a/pigx-upms/pigx-upms-biz/src/main/resources/bootstrap.yml +++ b/pigx-upms/pigx-upms-biz/src/main/resources/application.yml @@ -10,8 +10,10 @@ spring: server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml + + + diff --git a/pigx-upms/pigx-upms-biz/src/main/resources/file/post.xlsx b/pigx-upms/pigx-upms-biz/src/main/resources/file/post.xlsx new file mode 100644 index 000000000..4e98211b9 Binary files /dev/null and b/pigx-upms/pigx-upms-biz/src/main/resources/file/post.xlsx differ diff --git a/pigx-upms/pigx-upms-biz/src/main/resources/file/role.xlsx b/pigx-upms/pigx-upms-biz/src/main/resources/file/role.xlsx new file mode 100644 index 000000000..0c986e8bd Binary files /dev/null and b/pigx-upms/pigx-upms-biz/src/main/resources/file/role.xlsx differ diff --git a/pigx-upms/pigx-upms-biz/src/main/resources/logback-spring.xml b/pigx-upms/pigx-upms-biz/src/main/resources/logback-spring.xml index db4c129de..bacd3f9c6 100644 --- a/pigx-upms/pigx-upms-biz/src/main/resources/logback-spring.xml +++ b/pigx-upms/pigx-upms-biz/src/main/resources/logback-spring.xml @@ -63,5 +63,6 @@ + diff --git a/pigx-upms/pigx-upms-biz/src/main/resources/mapper/SysPostMapper.xml b/pigx-upms/pigx-upms-biz/src/main/resources/mapper/SysPostMapper.xml new file mode 100644 index 000000000..690de24e9 --- /dev/null +++ b/pigx-upms/pigx-upms-biz/src/main/resources/mapper/SysPostMapper.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/pigx-upms/pigx-upms-biz/src/main/resources/mapper/SysUserMapper.xml b/pigx-upms/pigx-upms-biz/src/main/resources/mapper/SysUserMapper.xml index 3ad50fda0..3e9bcf5da 100644 --- a/pigx-upms/pigx-upms-biz/src/main/resources/mapper/SysUserMapper.xml +++ b/pigx-upms/pigx-upms-biz/src/main/resources/mapper/SysUserMapper.xml @@ -20,60 +20,63 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - u.user_id, + + u.user_id, u.username, u.password, u.salt, @@ -93,13 +96,10 @@ r.role_desc, r.create_time rcreate_time, r.update_time rupdate_time - + - - u - . - user_id - , + + u.user_id, u.username, u.password, u.salt, @@ -110,6 +110,9 @@ u.del_flag, u.lock_flag, u.tenant_id, + u.nickname, + u.name, + u.email, u.create_time ucreate_time, u.update_time uupdate_time, r.role_id, @@ -120,99 +123,105 @@ r.update_time rupdate_time, d.name dept_name, d.dept_id - + - + - + - + - SELECT - u.user_id, - u.username, - u.password, - u.salt, - u.phone, - u.avatar, - u.wx_openid, - u.qq_openid, - u.dept_id, - u.create_time ucreate_time, - u.update_time uupdate_time, - u.del_flag, - u.lock_flag, - u.tenant_id, - u.nickname, - u.name, - u.email, - d.name dept_name - FROM - sys_user u - LEFT JOIN sys_dept d ON d.dept_id = u.dept_id - - u.del_flag = '0' - - - AND u.username LIKE #{usernameLike} - - - AND u.dept_id = #{query.deptId} - - - ORDER BY u.create_time DESC - + + ORDER BY u.create_time DESC + + + + diff --git a/pigx-upms/pom.xml b/pigx-upms/pom.xml index 7ee92e95c..58cb426b7 100644 --- a/pigx-upms/pom.xml +++ b/pigx-upms/pom.xml @@ -24,7 +24,7 @@ com.pig4cloud pigx - 4.3.0 + 4.4.0 pigx-upms diff --git a/pigx-visual/pigx-bi-platform/pom.xml b/pigx-visual/pigx-bi-platform/pom.xml deleted file mode 100755 index e5ff39c02..000000000 --- a/pigx-visual/pigx-bi-platform/pom.xml +++ /dev/null @@ -1,100 +0,0 @@ - - - 4.0.0 - - com.pig4cloud - pigx-visual - 4.3.0 - - - pigx-bi-platform - jar - - 基于 ureport 的报表系统 - - - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-discovery - - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-config - - - - com.pig4cloud - pigx-common-sentinel - - - - com.bstek.ureport - ureport2-console - ${ureport.version} - - - - org.springframework.boot - spring-boot-starter-web - - - - org.springframework.boot - spring-boot-starter-undertow - - - - javax.servlet - javax.servlet-api - - - - com.pig4cloud - pigx-common-oss - - - - org.springframework.boot - spring-boot-starter-security - - - - com.pig4cloud - pigx-common-feign - - - - mysql - mysql-connector-java - - - - com.oracle.database.jdbc - ojdbc8 - - - - org.postgresql - postgresql - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - io.fabric8 - docker-maven-plugin - - false - - - - - diff --git a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/config/UreportAutoConfiguration.java b/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/config/UreportAutoConfiguration.java deleted file mode 100755 index dd8fd416b..000000000 --- a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/config/UreportAutoConfiguration.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.pig4cloud.pigx.ureport.config; - -import com.bstek.ureport.console.UReportServlet; -import org.springframework.boot.web.servlet.ServletRegistrationBean; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.ImportResource; - -/** - * @author lengleng - * @date 2020/7/25 - *

- * ureport 配置类 - */ -@Configuration(proxyBeanMethods = false) -@ImportResource(UreportAutoConfiguration.CONTEXT) -public class UreportAutoConfiguration { - - static final String CONTEXT = "classpath:ureport-console-context.xml"; - - @Bean - public ServletRegistrationBean buildUreportServlet() { - return new ServletRegistrationBean<>(new UReportServlet(), "/ureport/*"); - } - -} diff --git a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/config/UreportExtConfig.java b/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/config/UreportExtConfig.java deleted file mode 100755 index 27cf097b2..000000000 --- a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/config/UreportExtConfig.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.pig4cloud.pigx.ureport.config; - -import com.bstek.ureport.UReportPropertyPlaceholderConfigurer; -import com.bstek.ureport.provider.report.ReportProvider; -import com.pig4cloud.pigx.common.oss.OssProperties; -import com.pig4cloud.pigx.common.oss.service.OssTemplate; -import com.pig4cloud.pigx.ureport.processor.UReportPropertyPlaceholderConfigurerPlus; -import com.pig4cloud.pigx.ureport.provider.DfsReportProvider; -import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Primary; -import org.springframework.web.servlet.LocaleResolver; -import org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver; - -import java.util.Locale; - -/** - * @author lengleng - * @date 2020/7/25 - *

- * 增强默认Ureport 行为 - */ -@ConditionalOnClass(OssTemplate.class) -@Configuration(proxyBeanMethods = false) -public class UreportExtConfig { - - @Bean - public ReportProvider dfsReportProvider(OssTemplate ossTemplate, OssProperties properties) { - return new DfsReportProvider(ossTemplate, properties); - } - - @Bean - public UReportPropertyPlaceholderConfigurer uReportPropertyPlaceholderConfigurerPlus() { - return new UReportPropertyPlaceholderConfigurerPlus(); - } - - @Bean - @Primary - public LocaleResolver localeResolver() { - - AcceptHeaderLocaleResolver lr = new AcceptHeaderLocaleResolver(); - - // 设置默认区域, - - lr.setDefaultLocale(Locale.CHINA); - - return lr; - - } - -} diff --git a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/config/WebSecurityConfigurer.java b/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/config/WebSecurityConfigurer.java deleted file mode 100755 index b640e7e77..000000000 --- a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/config/WebSecurityConfigurer.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.ureport.config; - -import lombok.SneakyThrows; -import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.annotation.web.builders.HttpSecurity; -import org.springframework.security.config.annotation.web.builders.WebSecurity; -import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; -import org.springframework.security.core.AuthenticationException; -import org.springframework.security.web.authentication.AuthenticationFailureHandler; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; - -/** - * WebSecurityConfigurer - * - * @author lengleng - * @date 2020-12-05 - */ -@Configuration -public class WebSecurityConfigurer extends WebSecurityConfigurerAdapter { - - @Override - @SneakyThrows - protected void configure(HttpSecurity http) { - http.headers().frameOptions().disable().and().formLogin().loginPage("/login.html").loginProcessingUrl("/login") - .failureHandler(new LoginFailureHandler()).and().authorizeRequests() - .antMatchers("/login.html", "/login", "/actuator/**").permitAll().anyRequest().authenticated().and() - .csrf().disable(); - } - - /** - * 不拦截静态资源 - * @param web - */ - @Override - public void configure(WebSecurity web) { - web.ignoring().antMatchers("/favicon.ico", "/css/**", "/error"); - } - - /** - * 登录失败处理器,携带错误信息重定向到首页 - */ - static class LoginFailureHandler implements AuthenticationFailureHandler { - - /** - * Called when an authentication attempt fails. - * @param request the request during which the authentication attempt occurred. - * @param response the response. - * @param exception the exception which was thrown to reject the authentication - */ - @Override - public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, - AuthenticationException exception) throws IOException { - response.sendRedirect("/login.html?error=" - + URLEncoder.encode(exception.getLocalizedMessage(), StandardCharsets.UTF_8.name())); - } - - } - -} diff --git a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/controller/PageController.java b/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/controller/PageController.java deleted file mode 100644 index 66ddeb6ae..000000000 --- a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/controller/PageController.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.pig4cloud.pigx.ureport.controller; - -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.GetMapping; - -/** - * @author lengleng - * @date 2020/12/5 - *

- * 页面跳转 - */ -@Controller -public class PageController { - - /** - * 表单设计URL - */ - private static final String REDIRECT_UREPORT_DESIGNER = "redirect:/ureport/designer"; - - /** - * 跳转至表单设计 - * @return - */ - @GetMapping - public String designer() { - return REDIRECT_UREPORT_DESIGNER; - } - -} diff --git a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/processor/UReportPropertyPlaceholderConfigurerPlus.java b/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/processor/UReportPropertyPlaceholderConfigurerPlus.java deleted file mode 100755 index e3d2fbd8b..000000000 --- a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/processor/UReportPropertyPlaceholderConfigurerPlus.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.pig4cloud.pigx.ureport.processor; - -import com.bstek.ureport.UReportPropertyPlaceholderConfigurer; - -import java.util.Properties; - -/** - * @author lengleng - * @date 2020/7/25 - *

- * 重写默认的 PropertyPlaceholder - */ -public class UReportPropertyPlaceholderConfigurerPlus extends UReportPropertyPlaceholderConfigurer { - - public UReportPropertyPlaceholderConfigurerPlus() { - Properties properties = new Properties(); - properties.setProperty("ureport.fileStoreDir", ""); - properties.setProperty("ureport.debug", "false"); - properties.setProperty("ureport.disableHttpSessionReportCache", "false"); - this.setProperties(properties); - } - -} diff --git a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/provider/DfsReportProvider.java b/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/provider/DfsReportProvider.java deleted file mode 100755 index 0e50f43f4..000000000 --- a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/provider/DfsReportProvider.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.pig4cloud.pigx.ureport.provider; - -import com.amazonaws.services.s3.model.S3Object; -import com.amazonaws.services.s3.model.S3ObjectSummary; -import com.bstek.ureport.provider.report.ReportFile; -import com.bstek.ureport.provider.report.ReportProvider; -import com.pig4cloud.pigx.common.oss.OssProperties; -import com.pig4cloud.pigx.common.oss.service.OssTemplate; -import lombok.Cleanup; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.io.IOUtils; - -import java.io.InputStream; -import java.util.List; -import java.util.stream.Collectors; - -/** - * @author lengleng - * @date 2020/7/25 - *

- * 基于OSS 的文件存储支持 - */ -@Slf4j -@RequiredArgsConstructor -public class DfsReportProvider implements ReportProvider { - - /** - * 保存文件增加默认前缀,方便查找 - */ - private static final String PREFIX = "oss_"; - - private final OssTemplate ossTemplate; - - private final OssProperties properties; - - @Override - public InputStream loadReport(String file) { - S3Object object = ossTemplate.getObject(properties.getBucketName(), file); - return object.getObjectContent(); - } - - @Override - public void deleteReport(String file) { - try { - ossTemplate.removeObject(properties.getBucketName(), file); - } - catch (Exception e) { - log.error("文件删除失败 ", e); - } - } - - @Override - public List getReportFiles() { - List objectSummaryList = ossTemplate.getAllObjectsByPrefix(properties.getBucketName(), PREFIX, - true); - - return objectSummaryList.stream() - .map(s3ObjectSummary -> new ReportFile(s3ObjectSummary.getKey().replaceAll(PREFIX, ""), - s3ObjectSummary.getLastModified())) - .collect(Collectors.toList()); - } - - @Override - public void saveReport(String file, String content) { - try { - @Cleanup - InputStream inputStream = IOUtils.toInputStream(content); - ossTemplate.putObject(properties.getBucketName(), file, inputStream); - } - catch (Exception e) { - log.error("文件上传失败", e); - } - } - - @Override - public String getName() { - return "分布式文件存储"; - } - - @Override - public boolean disabled() { - return false; - } - - @Override - public String getPrefix() { - return PREFIX; - } - -} diff --git a/pigx-visual/pigx-bi-platform/src/main/resources/META-INF/spring-configuration-metadata.json b/pigx-visual/pigx-bi-platform/src/main/resources/META-INF/spring-configuration-metadata.json deleted file mode 100755 index dd1990d0d..000000000 --- a/pigx-visual/pigx-bi-platform/src/main/resources/META-INF/spring-configuration-metadata.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "properties": [ - { - "name": "ureport.disableFileProvider", - "type": "java.lang.String", - "description": "是否开启本地文件系统 true/false" - }, - { - "name": "ureport.fileStoreDir", - "type": "java.lang.String", - "description": "本地文件保存路径" - }, - { - "name": "ureport.debug", - "type": "java.lang.String", - "description": "DEBUG模式 true/false" - }, - { - "name": "ureport.disableHttpSessionReportCache", - "type": "java.lang.String", - "description": "是否关闭 session cache" - } - ], - "hints": [] -} diff --git a/pigx-visual/pigx-bi-platform/src/main/resources/static/css/bootstrap.min.css b/pigx-visual/pigx-bi-platform/src/main/resources/static/css/bootstrap.min.css deleted file mode 100755 index ed3905e0e..000000000 --- a/pigx-visual/pigx-bi-platform/src/main/resources/static/css/bootstrap.min.css +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * Bootstrap v3.3.7 (http://getbootstrap.com) - * Copyright 2011-2016 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - *//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0;font-size:2em}mark{color:#000;background:#ff0}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{height:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid silver}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{color:#000!important;text-shadow:none!important;background:0 0!important;-webkit-box-shadow:none!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff2) format('woff2'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;max-width:100%;height:auto;padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{padding:.2em;background-color:#fcf8e3}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;margin-left:-5px;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=checkbox]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control: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)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control::-ms-expand{background-color:transparent;border:0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=time].form-control,input[type=datetime-local].form-control,input[type=month].form-control{line-height:34px}.input-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=time],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-top:4px\9;margin-left:-20px}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.checkbox-inline.disabled,.radio-inline.disabled,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio-inline{cursor:not-allowed}.checkbox.disabled label,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .radio label{cursor:not-allowed}.form-control-static{min-height:34px;padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-image:none;border:1px solid transparent;border-radius:4px}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none;opacity:.65}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}.btn-primary:hover{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:#122b40}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}.btn-success:hover{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#398439;border-color:#255625}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}.btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#269abc;border-color:#1b6d85}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#ec971f;border-color:#985f0d}.btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#d58512;border-color:#985f0d}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{font-weight:400;color:#337ab7;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#337ab7;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;cursor:default;background-color:#337ab7;border-color:#337ab7}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:middle;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron,.container-fluid .jumbotron{padding-right:15px;padding-left:15px;border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail a>img,.thumbnail>img{margin-right:auto;margin-left:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{overflow:hidden;zoom:1}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{color:#555;text-decoration:none;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{color:#777;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-right:15px;padding-left:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;filter:alpha(opacity=0);opacity:0;line-break:auto}.tooltip.in{filter:alpha(opacity=90);opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);line-break:auto}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>a>img,.carousel-inner>.item>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{left:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{left:0;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);background-color:rgba(0,0,0,0);filter:alpha(opacity=50);opacity:.5}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.carousel-control:focus,.carousel-control:hover{color:#fff;text-decoration:none;filter:alpha(opacity=90);outline:0;opacity:.9}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-10px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;font-family:serif;line-height:1}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000\9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{display:table;content:" "}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-md,.visible-sm,.visible-xs{display:none!important}.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}} -/*# sourceMappingURL=bootstrap.min.css.map */ \ No newline at end of file diff --git a/pigx-visual/pigx-bi-platform/src/main/resources/static/css/signin.css b/pigx-visual/pigx-bi-platform/src/main/resources/static/css/signin.css deleted file mode 100755 index 3f076188e..000000000 --- a/pigx-visual/pigx-bi-platform/src/main/resources/static/css/signin.css +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -.sign_body { - padding-top: 40px; - padding-bottom: 40px; - background-color: #eee; -} - -.form-signin { - max-width: 330px; - padding: 15px; - margin: 0 auto; -} -.form-margin-top { - margin-top: 50px; -} -.form-signin .form-signin-heading, -.form-signin .checkbox { - margin-bottom: 10px; -} -.form-signin .checkbox { - font-weight: normal; -} -.form-signin .form-control { - position: relative; - height: auto; - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; - padding: 10px; - font-size: 16px; -} -.form-signin .form-control:focus { - z-index: 2; -} -.form-signin input[type="email"] { - margin-bottom: -1px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} -.form-signin input[type="password"] { - margin-bottom: 10px; - border-top-left-radius: 0; - border-top-right-radius: 0; -} -footer{ - text-align: center; - position:absolute; - bottom:0; - width:100%; - height:100px; -} diff --git a/pigx-visual/pigx-bi-platform/src/main/resources/static/login.html b/pigx-visual/pigx-bi-platform/src/main/resources/static/login.html deleted file mode 100644 index b122937b8..000000000 --- a/pigx-visual/pigx-bi-platform/src/main/resources/static/login.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - PigX报表系统 - - - - - -

- -
- - - - diff --git a/pigx-visual/pigx-codegen/pom.xml b/pigx-visual/pigx-codegen/pom.xml index 53233a553..d57f72844 100755 --- a/pigx-visual/pigx-codegen/pom.xml +++ b/pigx-visual/pigx-codegen/pom.xml @@ -6,7 +6,7 @@ com.pig4cloud pigx-visual - 4.3.0 + 4.4.0 pigx-codegen @@ -15,7 +15,7 @@ 代码生成模块 - 0.0.1 + 0.0.2 11.5.0.0 1.10 @@ -71,6 +71,11 @@ jcc ${db2.version} + + + com.dameng + DmJdbcDriver18 + com.alibaba diff --git a/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/entity/GenConfig.java b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/entity/GenConfig.java index dd6bf91a9..8091a825f 100644 --- a/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/entity/GenConfig.java +++ b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/entity/GenConfig.java @@ -62,7 +62,7 @@ public class GenConfig { private String comments; /** - * 代码风格 0 - avue 1 - element + * 代码风格 0 - avue 1 - element 2 - uview */ private String style; diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/service/InitService.java b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/mapper/GeneratorDmMapper.java old mode 100644 new mode 100755 similarity index 77% rename from pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/service/InitService.java rename to pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/mapper/GeneratorDmMapper.java index 8d828b281..518d9fb32 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/service/InitService.java +++ b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/mapper/GeneratorDmMapper.java @@ -15,15 +15,17 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.manager.listener.service; +package com.pig4cloud.pigx.codegen.mapper; + +import org.apache.ibatis.annotations.Mapper; /** - * @author LCN on 2017/7/4. + * 支持 达梦 代码生成器 + * + * @author lengleng + * @date 2022-03-24 */ -public interface InitService { - - void start(); - - void close(); +@Mapper +public interface GeneratorDmMapper extends GeneratorMapper { } diff --git a/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/service/impl/GenFormConfServiceImpl.java b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/service/impl/GenFormConfServiceImpl.java index f2b545779..198f333cc 100755 --- a/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/service/impl/GenFormConfServiceImpl.java +++ b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/service/impl/GenFormConfServiceImpl.java @@ -70,7 +70,7 @@ public class GenFormConfServiceImpl extends ServiceImpl columns = mapper.selectTableColumn(tableName, dsName); // 设置velocity资源加载器 Properties prop = new Properties(); - prop.put("file.resource.loader.class", ClasspathResourceLoader.class.getName()); + prop.put("resource.loader.file.class", ClasspathResourceLoader.class.getName()); Velocity.init(prop); Template template = Velocity.getTemplate("template/avue/crud.js.vm", CharsetUtil.UTF_8); VelocityContext context = new VelocityContext(); diff --git a/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/util/GenUtils.java b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/util/GenUtils.java index 9daff609b..c0f191b79 100644 --- a/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/util/GenUtils.java +++ b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/util/GenUtils.java @@ -89,6 +89,14 @@ public class GenUtils { private final String AVUE_CRUD_JS_VM = "avue/crud.js.vm"; + private final String UVIEW_API_JS_VM = "uview/api.js.vm"; + + private final String UVIEW_FORM_VUE_VM = "uview/form.vue.vm"; + + private final String UVIEW_INDEX_VUE_VM = "uview/index.vue.vm"; + + private final String UVIEW_PAGE_JSON_VM = "uview/page.json.vm"; + /** * 配置 * @param config @@ -96,6 +104,24 @@ public class GenUtils { */ private List getTemplates(GenConfig config) { List templates = new ArrayList<>(); + + if (StyleTypeEnum.AVUE.getStyle().equals(config.getStyle())) { + templates.add("template/avue/index.vue.vm"); + templates.add("template/avue/crud.js.vm"); + templates.add("template/avue/api.js.vm"); + } + else if (StyleTypeEnum.ELEMENT.getStyle().equals(config.getStyle())) { + templates.add("template/element/index.vue.vm"); + templates.add("template/element/form.vue.vm"); + templates.add("template/avue/api.js.vm"); + } + else { + templates.add("template/uview/index.vue.vm"); + templates.add("template/uview/form.vue.vm"); + templates.add("template/uview/api.js.vm"); + templates.add("template/uview/page.json.vm"); + } + templates.add("template/Entity.java.vm"); templates.add("template/Mapper.java.vm"); templates.add("template/Mapper.xml.vm"); @@ -103,16 +129,6 @@ public class GenUtils { templates.add("template/ServiceImpl.java.vm"); templates.add("template/Controller.java.vm"); templates.add("template/menu.sql.vm"); - templates.add("template/avue/api.js.vm"); - - if (StyleTypeEnum.AVUE.getStyle().equals(config.getStyle())) { - templates.add("template/avue/index.vue.vm"); - templates.add("template/avue/crud.js.vm"); - } - else { - templates.add("template/element/index.vue.vm"); - templates.add("template/element/form.vue.vm"); - } return templates; } @@ -265,7 +281,7 @@ public class GenUtils { TableEntity tableEntity, Map map) throws IOException { // 设置velocity资源加载器 Properties prop = new Properties(); - prop.put("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); + prop.put("resource.loader.file.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); Velocity.init(prop); VelocityContext context = new VelocityContext(map); // 函数库 @@ -274,7 +290,7 @@ public class GenUtils { // 获取模板列表 List templates = getTemplates(genConfig); - Map resultMap = new HashMap<>(8); + Map resultMap = new LinkedHashMap<>(8); for (String template : templates) { // 如果是crud @@ -406,6 +422,26 @@ public class GenUtils { + className.toLowerCase() + "-form.vue"; } + if (template.contains(UVIEW_INDEX_VUE_VM)) { + return CommonConstants.UNI_END_PROJECT + File.separator + "pages" + File.separator + moduleName + + File.separator + className.toLowerCase() + File.separator + className.toLowerCase() + + "-index.vue"; + } + + if (template.contains(UVIEW_FORM_VUE_VM)) { + return CommonConstants.UNI_END_PROJECT + File.separator + "pages" + File.separator + moduleName + + File.separator + className.toLowerCase() + File.separator + className.toLowerCase() + "-form.vue"; + } + + if (template.contains(UVIEW_API_JS_VM)) { + return CommonConstants.UNI_END_PROJECT + File.separator + "common" + File.separator + + className.toLowerCase() + ".api.js"; + } + + if (template.contains(UVIEW_PAGE_JSON_VM)) { + return className.toLowerCase() + ".page.json"; + } + return null; } diff --git a/pigx-visual/pigx-codegen/src/main/resources/bootstrap.yml b/pigx-visual/pigx-codegen/src/main/resources/application.yml similarity index 57% rename from pigx-visual/pigx-codegen/src/main/resources/bootstrap.yml rename to pigx-visual/pigx-codegen/src/main/resources/application.yml index ee9135cb6..67d2202f2 100644 --- a/pigx-visual/pigx-codegen/src/main/resources/bootstrap.yml +++ b/pigx-visual/pigx-codegen/src/main/resources/application.yml @@ -10,8 +10,7 @@ spring: server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml diff --git a/pigx-visual/pigx-codegen/src/main/resources/generator.properties b/pigx-visual/pigx-codegen/src/main/resources/generator.properties index 63e7bdd95..9a43f7ebe 100755 --- a/pigx-visual/pigx-codegen/src/main/resources/generator.properties +++ b/pigx-visual/pigx-codegen/src/main/resources/generator.properties @@ -59,4 +59,12 @@ DATE=LocalDateTime DATETIME=LocalDateTime TIMESTAMP=LocalDateTime CLOB=String -BLOB=String \ No newline at end of file +BLOB=String + +# MSSQL \u7C7B\u578B +nvarchar=String +nchar=String +datetime2=LocalDateTime + +#\u8FBE\u68A6 +BIGINT=Long diff --git a/pigx-visual/pigx-codegen/src/main/resources/logback-spring.xml b/pigx-visual/pigx-codegen/src/main/resources/logback-spring.xml index 998f18b5c..ef137181c 100644 --- a/pigx-visual/pigx-codegen/src/main/resources/logback-spring.xml +++ b/pigx-visual/pigx-codegen/src/main/resources/logback-spring.xml @@ -83,5 +83,6 @@ + diff --git a/pigx-visual/pigx-codegen/src/main/resources/mapper/GeneratorDmMapper.xml b/pigx-visual/pigx-codegen/src/main/resources/mapper/GeneratorDmMapper.xml new file mode 100755 index 000000000..ccb301ca7 --- /dev/null +++ b/pigx-visual/pigx-codegen/src/main/resources/mapper/GeneratorDmMapper.xml @@ -0,0 +1,70 @@ + + + + + + + + + SELECT + 'dm' AS "dbType", + TEMP.COLUMN_NAME AS "columnName", + TEMP.data_type AS "columnType", + TEMP.data_type AS "dataType", + TEMP.comments AS "comments", + CASE + TEMP.constraint_type + WHEN 'P' THEN + 'PRI' + WHEN 'C' THEN + 'UNI' ELSE'' + END "COLUMNKEY" + FROM + ( + SELECT + col.column_id, + col.COLUMN_NAME, + col.data_type, + colc.comments, + uc.constraint_type, + ROW_NUMBER ( ) OVER ( + PARTITION BY col.COLUMN_NAME + ORDER BY + uc.constraint_type DESC + ) AS row_flg + FROM + user_tab_columns col + LEFT JOIN user_col_comments colc ON colc.TABLE_NAME = col.TABLE_NAME + AND colc.COLUMN_NAME = col. + COLUMN_NAME LEFT JOIN user_cons_columns ucc ON ucc.TABLE_NAME = col.TABLE_NAME + AND ucc.COLUMN_NAME = col. + COLUMN_NAME LEFT JOIN user_constraints uc ON uc.CONSTRAINT_NAME = ucc.CONSTRAINT_NAME + WHERE + col.TABLE_NAME = #{tableName} + ) TEMP + WHERE + TEMP.row_flg = 1 + ORDER BY + TEMP.column_id + + + + + + + diff --git a/pigx-visual/pigx-codegen/src/main/resources/template/Entity.java.vm b/pigx-visual/pigx-codegen/src/main/resources/template/Entity.java.vm index 64ba13d41..8305a6aa7 100755 --- a/pigx-visual/pigx-codegen/src/main/resources/template/Entity.java.vm +++ b/pigx-visual/pigx-codegen/src/main/resources/template/Entity.java.vm @@ -17,9 +17,8 @@ package ${package}.${moduleName}.entity; -#if($dbType != "mysql") + import com.baomidou.mybatisplus.annotation.IdType; -#end import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.extension.activerecord.Model; @@ -52,11 +51,7 @@ public class ${className} extends Model<${className}> { * $column.comments */ #if($column.columnName == $pk.columnName) -#if($dbType == "mysql") - @TableId -#else @TableId(type = IdType.ASSIGN_ID) -#end #end @ApiModelProperty(value="$column.comments"#if($column.hidden),hidden=$column.hidden#end) private $column.attrType $column.lowerAttrName; diff --git a/pigx-visual/pigx-codegen/src/main/resources/template/uview/api.js.vm b/pigx-visual/pigx-codegen/src/main/resources/template/uview/api.js.vm new file mode 100644 index 000000000..495dad858 --- /dev/null +++ b/pigx-visual/pigx-codegen/src/main/resources/template/uview/api.js.vm @@ -0,0 +1,18 @@ +// 以下内容请复制到http.api.js中 +pigx${className}: { + // 分页 + #[[fetchList: (params={}) => vm.$u.get]]#('/${moduleName}/${pathName}/page',params), + + // 新增 + #[[addObj: (obj={}) => vm.$u.post]]#('/${moduleName}/${pathName}', obj), + + // 修改 + #[[putObj: (obj={}) => vm.$u.put]]#('/${moduleName}/${pathName}',obj), + + // 删除 + #[[delObj: (params) => vm.$u.delete]]#('/${moduleName}/${pathName}/'+params.id), + + // 查询 + #[[getObj: (params) => vm.$u.get]]#('/${moduleName}/${pathName}/' + params.id) +} + diff --git a/pigx-visual/pigx-codegen/src/main/resources/template/uview/form.vue.vm b/pigx-visual/pigx-codegen/src/main/resources/template/uview/form.vue.vm new file mode 100644 index 000000000..b7ccaa5db --- /dev/null +++ b/pigx-visual/pigx-codegen/src/main/resources/template/uview/form.vue.vm @@ -0,0 +1,89 @@ + + + + diff --git a/pigx-visual/pigx-codegen/src/main/resources/template/uview/index.vue.vm b/pigx-visual/pigx-codegen/src/main/resources/template/uview/index.vue.vm new file mode 100644 index 000000000..b9fdfdf9e --- /dev/null +++ b/pigx-visual/pigx-codegen/src/main/resources/template/uview/index.vue.vm @@ -0,0 +1,104 @@ + + diff --git a/pigx-visual/pigx-codegen/src/main/resources/template/uview/page.json.vm b/pigx-visual/pigx-codegen/src/main/resources/template/uview/page.json.vm new file mode 100644 index 000000000..f496b639a --- /dev/null +++ b/pigx-visual/pigx-codegen/src/main/resources/template/uview/page.json.vm @@ -0,0 +1,17 @@ +// 以下内容请复制到pages.json +"pages": [ + + /**${comments}**/ + { + "path": "pages/${moduleName}/${pathName}/${pathName}-index", + "style": { + "navigationBarTitleText": "${comments}" + } + }, + { + "path": "pages/${moduleName}/${pathName}/${pathName}-form", + "style": { + "navigationBarTitleText": "${comments}详情" + } + } +} diff --git a/pigx-visual/pigx-daemon-elastic-job/pom.xml b/pigx-visual/pigx-daemon-elastic-job/pom.xml index bb2b9c613..ffbfcea8c 100644 --- a/pigx-visual/pigx-daemon-elastic-job/pom.xml +++ b/pigx-visual/pigx-daemon-elastic-job/pom.xml @@ -23,7 +23,7 @@ com.pig4cloud pigx-visual - 4.3.0 + 4.4.0 pigx-daemon-elastic-job diff --git a/pigx-visual/pigx-daemon-elastic-job/src/main/resources/bootstrap.yml b/pigx-visual/pigx-daemon-elastic-job/src/main/resources/application.yml similarity index 57% rename from pigx-visual/pigx-daemon-elastic-job/src/main/resources/bootstrap.yml rename to pigx-visual/pigx-daemon-elastic-job/src/main/resources/application.yml index ab6b0c5b0..513b466f0 100644 --- a/pigx-visual/pigx-daemon-elastic-job/src/main/resources/bootstrap.yml +++ b/pigx-visual/pigx-daemon-elastic-job/src/main/resources/application.yml @@ -10,8 +10,7 @@ spring: server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ \ No newline at end of file + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml \ No newline at end of file diff --git a/pigx-visual/pigx-daemon-elastic-job/src/main/resources/logback-spring.xml b/pigx-visual/pigx-daemon-elastic-job/src/main/resources/logback-spring.xml index 998f18b5c..ef137181c 100644 --- a/pigx-visual/pigx-daemon-elastic-job/src/main/resources/logback-spring.xml +++ b/pigx-visual/pigx-daemon-elastic-job/src/main/resources/logback-spring.xml @@ -83,5 +83,6 @@ + diff --git a/pigx-visual/pigx-daemon-quartz/pom.xml b/pigx-visual/pigx-daemon-quartz/pom.xml index 6bd4b1f11..cde93a809 100644 --- a/pigx-visual/pigx-daemon-quartz/pom.xml +++ b/pigx-visual/pigx-daemon-quartz/pom.xml @@ -5,7 +5,7 @@ com.pig4cloud pigx-visual - 4.3.0 + 4.4.0 4.0.0 @@ -44,6 +44,11 @@ mysql mysql-connector-java + + + com.microsoft.sqlserver + mssql-jdbc + com.oracle.database.jdbc diff --git a/pigx-visual/pigx-daemon-quartz/src/main/resources/bootstrap.yml b/pigx-visual/pigx-daemon-quartz/src/main/resources/application.yml similarity index 59% rename from pigx-visual/pigx-daemon-quartz/src/main/resources/bootstrap.yml rename to pigx-visual/pigx-daemon-quartz/src/main/resources/application.yml index 66c493c5f..14ab80f36 100644 --- a/pigx-visual/pigx-daemon-quartz/src/main/resources/bootstrap.yml +++ b/pigx-visual/pigx-daemon-quartz/src/main/resources/application.yml @@ -13,8 +13,7 @@ spring: server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml diff --git a/pigx-visual/pigx-daemon-quartz/src/main/resources/logback-spring.xml b/pigx-visual/pigx-daemon-quartz/src/main/resources/logback-spring.xml index 964ca8735..daf3fa0bd 100644 --- a/pigx-visual/pigx-daemon-quartz/src/main/resources/logback-spring.xml +++ b/pigx-visual/pigx-daemon-quartz/src/main/resources/logback-spring.xml @@ -66,5 +66,6 @@ + diff --git a/pigx-visual/pigx-tx-manager/Dockerfile b/pigx-visual/pigx-jimu-platform/Dockerfile similarity index 58% rename from pigx-visual/pigx-tx-manager/Dockerfile rename to pigx-visual/pigx-jimu-platform/Dockerfile index af12ebe1a..550f1b9a0 100644 --- a/pigx-visual/pigx-tx-manager/Dockerfile +++ b/pigx-visual/pigx-jimu-platform/Dockerfile @@ -7,13 +7,12 @@ ENV JAVA_OPTS="-Xms128m -Xmx256m -Djava.security.egd=file:/dev/./urandom" RUN ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone -RUN mkdir -p /pigx-tx-manager +RUN mkdir -p /pigx-jimu-platform -WORKDIR /pigx-tx-manager +WORKDIR /pigx-jimu-platform -EXPOSE 5004 -EXPOSE 9998 +EXPOSE 5008 -ADD ./target/pigx-tx-manager.jar ./ +ADD ./target/pigx-jimu-platform.jar ./ -CMD sleep 120;java $JAVA_OPTS -jar pigx-tx-manager.jar +CMD sleep 120;java $JAVA_OPTS -jar pigx-jimu-platform.jar diff --git a/pigx-visual/pigx-jimu-platform/pom.xml b/pigx-visual/pigx-jimu-platform/pom.xml new file mode 100755 index 000000000..eaa8b7163 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/pom.xml @@ -0,0 +1,94 @@ + + + 4.0.0 + + com.pig4cloud + pigx-visual + 4.4.0 + + + pigx-jimu-platform + jar + + 积木报表系统 + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + com.pig4cloud + pigx-common-sentinel + + + + com.pig4cloud + pigx-common-feign + + + + com.pig4cloud + pigx-upms-api + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-undertow + + + org.jeecgframework.jimureport + jimureport-spring-boot-starter + ${jimu.version} + + + + com.alibaba + druid-spring-boot-starter + + + + mysql + mysql-connector-java + + + + com.oracle.database.jdbc + ojdbc8 + + + + org.postgresql + postgresql + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + io.fabric8 + docker-maven-plugin + + false + + + + + diff --git a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/PigxBiApplication.java b/pigx-visual/pigx-jimu-platform/src/main/java/com/pig4cloud/pigx/bi/PigxJimuApplication.java similarity index 76% rename from pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/PigxBiApplication.java rename to pigx-visual/pigx-jimu-platform/src/main/java/com/pig4cloud/pigx/bi/PigxJimuApplication.java index a3c91c519..d56bf5be4 100755 --- a/pigx-visual/pigx-bi-platform/src/main/java/com/pig4cloud/pigx/ureport/PigxBiApplication.java +++ b/pigx-visual/pigx-jimu-platform/src/main/java/com/pig4cloud/pigx/bi/PigxJimuApplication.java @@ -15,28 +15,27 @@ * Author: lengleng (wangiegie@gmail.com) */ -package com.pig4cloud.pigx.ureport; +package com.pig4cloud.pigx.bi; import com.pig4cloud.pigx.common.feign.annotation.EnablePigxFeignClients; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; /** * @author lengleng - * @date 2020-10-15 报表模块 + * @date 2022-04-06 *

- * 此模块由于使用的是ureport 封装报表设计器,无法区分租户权限较大建议不提供具体租户使用。 - *

- * http://127.0.0.1:5006/ureport/designer */ @EnablePigxFeignClients @EnableDiscoveryClient -@SpringBootApplication -public class PigxBiApplication { +@SpringBootApplication(scanBasePackages = { "org.jeecg.modules.jmreport", "com.pig4cloud.pigx.bi" }, + exclude = MongoAutoConfiguration.class) +public class PigxJimuApplication { public static void main(String[] args) { - SpringApplication.run(PigxBiApplication.class, args); + SpringApplication.run(PigxJimuApplication.class, args); } } diff --git a/pigx-visual/pigx-jimu-platform/src/main/java/com/pig4cloud/pigx/bi/config/JimuReportTokenService.java b/pigx-visual/pigx-jimu-platform/src/main/java/com/pig4cloud/pigx/bi/config/JimuReportTokenService.java new file mode 100644 index 000000000..8d3065542 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/java/com/pig4cloud/pigx/bi/config/JimuReportTokenService.java @@ -0,0 +1,45 @@ +package com.pig4cloud.pigx.bi.config; + +import com.pig4cloud.pigx.admin.api.feign.RemoteTokenService; +import com.pig4cloud.pigx.common.core.constant.CommonConstants; +import com.pig4cloud.pigx.common.core.constant.SecurityConstants; +import com.pig4cloud.pigx.common.core.util.R; +import com.pig4cloud.pigx.common.core.util.RetOps; +import lombok.RequiredArgsConstructor; +import org.jeecg.modules.jmreport.api.JmReportTokenServiceI; +import org.springframework.stereotype.Component; + +import java.util.Map; + +/** + * @author lengleng + * @date 2022/4/6 + * + * 积木安全控制 + */ +@Component +@RequiredArgsConstructor +public class JimuReportTokenService implements JmReportTokenServiceI { + + private final RemoteTokenService tokenService; + + @Override + public String getUsername(String token) { + // @formatter:off + return RetOps.of(tokenService.queryToken(token, SecurityConstants.FROM_IN)) + .getDataIf(RetOps.CODE_SUCCESS) + .map(o -> (String)o.get("username")) + .orElse(null); + // @formatter:off + } + + @Override + public Boolean verifyToken(String token) { + R> result = tokenService.queryToken(token, SecurityConstants.FROM_IN); + if (CommonConstants.SUCCESS.equals(result.getCode())) { + return true; + } + return false; + } + +} diff --git a/pigx-visual/pigx-bi-platform/src/main/resources/bootstrap.yml b/pigx-visual/pigx-jimu-platform/src/main/resources/application.yml similarity index 57% rename from pigx-visual/pigx-bi-platform/src/main/resources/bootstrap.yml rename to pigx-visual/pigx-jimu-platform/src/main/resources/application.yml index 1975f75bd..10a58c711 100644 --- a/pigx-visual/pigx-bi-platform/src/main/resources/bootstrap.yml +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/application.yml @@ -1,5 +1,5 @@ server: - port: 5006 + port: 5008 spring: application: @@ -11,8 +11,7 @@ spring: service: @artifactId@ config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml diff --git a/pigx-visual/pigx-bi-platform/src/main/resources/logback-spring.xml b/pigx-visual/pigx-jimu-platform/src/main/resources/logback-spring.xml similarity index 99% rename from pigx-visual/pigx-bi-platform/src/main/resources/logback-spring.xml rename to pigx-visual/pigx-jimu-platform/src/main/resources/logback-spring.xml index 5b4213c6f..cb1ff1c12 100644 --- a/pigx-visual/pigx-bi-platform/src/main/resources/logback-spring.xml +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/logback-spring.xml @@ -79,5 +79,6 @@ + diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/authority.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/authority.ftl new file mode 100644 index 000000000..ae1e9f0d9 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/authority.ftl @@ -0,0 +1,43 @@ +<#assign CACHE_VERSION = "v=v=1.0.7"> + + + + + + 没有权限 + + + +

+
+ +
+
+ 您没有权限访问该页面 +
+
+ + diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/common/resource.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/common/resource.ftl new file mode 100644 index 000000000..23c2b00b2 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/common/resource.ftl @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/common/tj.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/common/tj.ftl new file mode 100644 index 000000000..5e8a76222 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/common/tj.ftl @@ -0,0 +1,11 @@ + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/demo.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/demo.ftl new file mode 100644 index 000000000..4a243cabc --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/demo.ftl @@ -0,0 +1,826 @@ + + + + + + 积木报表设计器 + + + + + + + +
+ + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/index.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/index.ftl new file mode 100644 index 000000000..2554410ac --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/index.ftl @@ -0,0 +1,1311 @@ +<#assign CACHE_VERSION = "v=1.0.7"> +<#assign config_id = "${id!''}"> + + + + + + 积木报表—免费可视化Web报表工具 + + + + <#include "./common/resource.ftl"> + + + + + + + + + + + + <#include "./template/index.ftl"> + + +
+ + +
Loading
+
+<#include "./modal.ftl"> +
+
+
+ + 收起 + + + + + + + + +
+
+ +
+
+ +
+
+
+
+
+
+
+
+ + 收起 + + + + + + +
+
+
+ 坐标 + +
+
+ 类型 +<#--

自定义表单式

--> + + 文本 + 数值 + 图片 + 条形码 + 二维码 + <#--图表--> + +
+
+ 值 + +
+ +
+ 宽度 + +
+ +
+ 高度 + +
+ + + + + +
+
+ 启用 +
+
+ 数据行倍数: + +
+
+
+ +
+ + + + +
+
+ 聚合方式 + + {{ item.label }} + +
+
+ 扩展方向 + + {{ item.label }} + +
+
+ 排序方式 + + {{ item.label }} + +
+
+ 高级配置 + + {{ item.label }} + +
+
+
+ + + + +
+ 分组依据 + + {{ item.label }} + +
+ +
+ 聚合方式 + + {{ item.label }} + +
+
+
+ + + + + + 添加链接 + + + + + + 图表联动 + 报表钻取 + 网络报表 + + + + + + + + + + + + + +
+ 小数位数 + +
+
+ 增强配置 +
+
+ + + + 新增 + + + + + + +
+ 横向偏移(px): + +
+ +
+ 纵向偏移(px): + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ 数据类型 + + SQL数据集 + Api数据集 + JSON数据集 + JavaBean数据集 + +
+ + +
+
+ Api类型 + + 静态数据 + 动态数据 + 接口请求 + +
+
+ 请自定义数据值: + 编辑 +
+
+

接口url:  

+ +
+
+
+ 绑定数据集: + + {{ item.title }} + +
+
+
+ + +
+
+ 绑定数据集: + + {{ item.title }} + +
+
+ 分类属性: + + {{ item.fieldText }} + +
+
+ 值属性: + + {{ item.fieldText }} + +
+ + + +
+ + +
+
+ 绑定数据集: + + {{ item.title }} + +
+
+ + +
+
+ 绑定数据集: + + {{ item.title }} + +
+
+ +
+

系列类型:

+
+ + 新增 + + +
+
+ + + 运行 +
+ + + +
+ 图片: + +
+ +
+ +
+
+ 上传 +
+ +
+
+ 图片宽度: + +
+
+ 图片高度: + +
+
+ +
+ 重复设置: + + 无重复 + 水平重复 + 垂直重复 + 双向重复 + +
+ + 取消背景图 + +
+ 表格边框: + + 显示 + 隐藏 + +
+ +
+
+ + + + + + + + + + +
+ +
+
+
+
+ + + + +
+ + + + + + + +<#include "./common/tj.ftl"> + + diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/list.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/list.ftl new file mode 100644 index 000000000..1f6d291e8 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/list.ftl @@ -0,0 +1,777 @@ +<#assign CACHE_VERSION = "v=v=1.0.7"> + + + + + + +在线设计 + <#include "./common/resource.ftl"> + + + + + + + +<#include "./template/list.ftl"> +
+
+<#--
--> +<#-- --> +<#-- 欢迎进入积木报表工作台 --> +<#--
--> + + + + + + + + 数据报表 + + + + 图形报表 + + + + 打印设计 + + + +
+
+ + +
+
+ +
+
+ + +
+
+ + 视图 + 列表 + +
+
+
+ + + +
+ + +
+ + +
+ + + +
+ +
+
+ + 新建报表 + + + + +
+
+ +
+
+ +
+
+ + +
+
+ + 视图 + 列表 + +
+
+
+ + +
+ + +
+ + +
+ + + +
+ +
+
+ + 新建报表 + + + + +
+
+
+
+
+ <#--分享弹窗--> + + <#-- Click me! + Welcome to ViewUI--> +
+ + <#include "./common/tj.ftl"> + + diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/modal.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/modal.ftl new file mode 100644 index 000000000..746023a6d --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/modal.ftl @@ -0,0 +1,172 @@ + diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/print.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/print.ftl new file mode 100644 index 000000000..5355c0acf --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/print.ftl @@ -0,0 +1,33 @@ + + + + + 打印页面 + + + + + + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/background_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/background_setting.ftl new file mode 100644 index 000000000..4617c4e04 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/background_setting.ftl @@ -0,0 +1,131 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/bar_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/bar_setting.ftl new file mode 100644 index 000000000..1553b9851 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/bar_setting.ftl @@ -0,0 +1,87 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/barcode.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/barcode.ftl new file mode 100644 index 000000000..7a875cee1 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/barcode.ftl @@ -0,0 +1,208 @@ + +<#--JsBarcode("#imgcode", "123", { +format: "CODE39",//选择要使用的条形码类型 +width:3,//设置条之间的宽度 +height:100,//高度 +displayValue:true,//是否在条形码下方显示文字 +text:"456",//覆盖显示的文本 +fontOptions:"bold italic",//使文字加粗体或变斜体 +font:"fantasy",//设置文本的字体 +textAlign:"left",//设置文本的水平对齐方式 +textPosition:"top",//设置文本的垂直位置 +textMargin:5,//设置条形码和文本之间的间距 +fontSize:15,//设置文本的大小 +background:"#eee",//设置条形码的背景 +lineColor:"#2196f3",//设置条和文本的颜色。 +margin:15//设置条形码周围的空白边距--> + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/cell_linkage.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/cell_linkage.ftl new file mode 100644 index 000000000..ba24ff133 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/cell_linkage.ftl @@ -0,0 +1,404 @@ + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/central_point_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/central_point_setting.ftl new file mode 100644 index 000000000..fea81364b --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/central_point_setting.ftl @@ -0,0 +1,60 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/chart_linkage.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/chart_linkage.ftl new file mode 100644 index 000000000..8fd1888ee --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/chart_linkage.ftl @@ -0,0 +1,375 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/data_dictionary.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/data_dictionary.ftl new file mode 100644 index 000000000..82eb06f2b --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/data_dictionary.ftl @@ -0,0 +1,685 @@ + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/data_source_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/data_source_setting.ftl new file mode 100644 index 000000000..eda44e087 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/data_source_setting.ftl @@ -0,0 +1,2360 @@ + + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/function_interpretation.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/function_interpretation.ftl new file mode 100644 index 000000000..bbaead002 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/function_interpretation.ftl @@ -0,0 +1,1103 @@ + + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/funnel_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/funnel_setting.ftl new file mode 100644 index 000000000..0a5c6ca0f --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/funnel_setting.ftl @@ -0,0 +1,87 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/gauge_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/gauge_setting.ftl new file mode 100644 index 000000000..5c4f8d6c7 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/gauge_setting.ftl @@ -0,0 +1,145 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/grid_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/grid_setting.ftl new file mode 100644 index 000000000..341e0b347 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/grid_setting.ftl @@ -0,0 +1,66 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/hyperlinks.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/hyperlinks.ftl new file mode 100644 index 000000000..4a13bb17e --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/hyperlinks.ftl @@ -0,0 +1,567 @@ + + + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/javabean_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/javabean_setting.ftl new file mode 100644 index 000000000..1049ebf10 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/javabean_setting.ftl @@ -0,0 +1,1129 @@ + + + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/jurisdiction.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/jurisdiction.ftl new file mode 100644 index 000000000..9abcba10d --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/jurisdiction.ftl @@ -0,0 +1,187 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/legend_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/legend_setting.ftl new file mode 100644 index 000000000..d3cf58cf5 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/legend_setting.ftl @@ -0,0 +1,108 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/line_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/line_setting.ftl new file mode 100644 index 000000000..0001c2340 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/line_setting.ftl @@ -0,0 +1,108 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/map_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/map_setting.ftl new file mode 100644 index 000000000..cbf0b39f9 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/map_setting.ftl @@ -0,0 +1,538 @@ + + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/margin_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/margin_setting.ftl new file mode 100644 index 000000000..11142d550 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/margin_setting.ftl @@ -0,0 +1,96 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/match_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/match_setting.ftl new file mode 100644 index 000000000..6d3e4a574 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/match_setting.ftl @@ -0,0 +1,376 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/pictorial_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/pictorial_setting.ftl new file mode 100644 index 000000000..d081f053a --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/pictorial_setting.ftl @@ -0,0 +1,146 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/pie_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/pie_setting.ftl new file mode 100644 index 000000000..4e8edb52d --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/pie_setting.ftl @@ -0,0 +1,91 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/primary_sub_report.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/primary_sub_report.ftl new file mode 100644 index 000000000..c31b9e1d4 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/primary_sub_report.ftl @@ -0,0 +1,312 @@ + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/print_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/print_setting.ftl new file mode 100644 index 000000000..d1ed279d5 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/print_setting.ftl @@ -0,0 +1,294 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/qrcode.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/qrcode.ftl new file mode 100644 index 000000000..e13a7a911 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/qrcode.ftl @@ -0,0 +1,88 @@ +<#--width: 150, +height: 150, // 高度 +text: this.qrcode // 二维码内容 +// render: 'canvas' // 设置渲染方式(有两种方式 table和canvas,默认是canvas) +// background: '#f0f' +// foreground: '#ff0'--> + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/radar_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/radar_setting.ftl new file mode 100644 index 000000000..0483373e9 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/radar_setting.ftl @@ -0,0 +1,73 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/scatter_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/scatter_setting.ftl new file mode 100644 index 000000000..46536e5d3 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/scatter_setting.ftl @@ -0,0 +1,68 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/select_input.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/select_input.ftl new file mode 100644 index 000000000..f383833af --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/select_input.ftl @@ -0,0 +1,105 @@ + + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/select_scroll_multiple.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/select_scroll_multiple.ftl new file mode 100644 index 000000000..8341ae5a1 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/select_scroll_multiple.ftl @@ -0,0 +1,491 @@ +<#--多选组件,用于远程搜索查询 +item:传递的参数,包含字典code,查询key +value:view组件传递的值 v-model +index:下标--> + + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/select_scroll_radio.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/select_scroll_radio.ftl new file mode 100644 index 000000000..9706ae0d5 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/select_scroll_radio.ftl @@ -0,0 +1,307 @@ +<#--单选组件,用于远程搜索查询 +item:传递的参数,包含字典code,查询key +value:view组件传递的值 v-model--> + + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/series_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/series_setting.ftl new file mode 100644 index 000000000..0c7dc2f0e --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/series_setting.ftl @@ -0,0 +1,114 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/sql_function_replace.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/sql_function_replace.ftl new file mode 100644 index 000000000..0b1ffa179 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/sql_function_replace.ftl @@ -0,0 +1,169 @@ + + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/title_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/title_setting.ftl new file mode 100644 index 000000000..66ddcfcb4 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/title_setting.ftl @@ -0,0 +1,103 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/tooltip_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/tooltip_setting.ftl new file mode 100644 index 000000000..6e104eb91 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/tooltip_setting.ftl @@ -0,0 +1,86 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/tree_select.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/tree_select.ftl new file mode 100644 index 000000000..dc7d78d8e --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/tree_select.ftl @@ -0,0 +1,346 @@ + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/view_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/view_setting.ftl new file mode 100644 index 000000000..cd4219a9c --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/view_setting.ftl @@ -0,0 +1,208 @@ + + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/xAxis_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/xAxis_setting.ftl new file mode 100644 index 000000000..d56cfb166 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/xAxis_setting.ftl @@ -0,0 +1,127 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/yAxis_setting.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/yAxis_setting.ftl new file mode 100644 index 000000000..2a5f5c286 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/components/yAxis_setting.ftl @@ -0,0 +1,161 @@ + + \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/index.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/index.ftl new file mode 100644 index 000000000..06dbee409 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/index.ftl @@ -0,0 +1,34 @@ +<#include "components/select_input.ftl"> +<#include "components/barcode.ftl"> +<#include "components/qrcode.ftl"> +<#include "components/title_setting.ftl"> +<#include "components/bar_setting.ftl"> +<#include "components/line_setting.ftl"> +<#include "components/pie_setting.ftl"> +<#include "components/margin_setting.ftl"> +<#include "components/funnel_setting.ftl"> +<#include "components/pictorial_setting.ftl"> +<#include "components/scatter_setting.ftl"> +<#include "components/map_setting.ftl"> +<#include "components/radar_setting.ftl"> +<#include "components/gauge_setting.ftl"> +<#include "components/xAxis_setting.ftl"> +<#include "components/yAxis_setting.ftl"> +<#include "components/series_setting.ftl"> +<#include "components/tooltip_setting.ftl"> +<#include "components/grid_setting.ftl"> +<#include "components/legend_setting.ftl"> +<#include "components/background_setting.ftl"> +<#include "components/match_setting.ftl"> +<#include "components/data_source_setting.ftl"> +<#include "components/javabean_setting.ftl"> +<#include "components/central_point_setting.ftl"> +<#include "components/function_interpretation.ftl"> +<#include "components/data_dictionary.ftl"> +<#include "components/hyperlinks.ftl"> +<#include "components/print_setting.ftl"> +<#include "components/view_setting.ftl"> +<#include "components/chart_linkage.ftl"> +<#include "components/cell_linkage.ftl"> +<#include "components/primary_sub_report.ftl"> +<#include "components/sql_function_replace.ftl"> \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/list.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/list.ftl new file mode 100644 index 000000000..3475babdf --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/list.ftl @@ -0,0 +1 @@ +<#include "components/jurisdiction.ftl"> \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/view.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/view.ftl new file mode 100644 index 000000000..360943bba --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/template/view.ftl @@ -0,0 +1,2 @@ +<#include "components/select_scroll_radio.ftl"> +<#include "components/select_scroll_multiple.ftl"> \ No newline at end of file diff --git a/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/view.ftl b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/view.ftl new file mode 100644 index 000000000..c5e826511 --- /dev/null +++ b/pigx-visual/pigx-jimu-platform/src/main/resources/templates/jmreport/desreport/view.ftl @@ -0,0 +1,305 @@ +<#assign CACHE_VERSION = "v=v=1.0.7"> +<#assign config_id = "${id!''}"> +<#assign shareView = "${shareView}"> + + + + + + + + +<#include "./common/resource.ftl"> +<#include "./template/components/tree_select.ftl"> +<#include "./template/view.ftl"> + + + + + + + + + +
+ +
+ + + 查 询 栏 +
+ + + + + 查询 + 重置 + + + +
+
+
+
+ + <#-- --> +
+ + + +
+ 确定 +
+
+ + + + + +
+
+ +
+ 确定 +
+
+ + + + + +
+
+
+<#--预览js--> + + + + + +<#include "./common/tj.ftl"> + + + + diff --git a/pigx-visual/pigx-monitor/pom.xml b/pigx-visual/pigx-monitor/pom.xml index b9a474ed9..aee6c035f 100644 --- a/pigx-visual/pigx-monitor/pom.xml +++ b/pigx-visual/pigx-monitor/pom.xml @@ -19,94 +19,89 @@ --> - 4.0.0 - - com.pig4cloud - pigx-visual - 4.3.0 - + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + + com.pig4cloud + pigx-visual + 4.4.0 + - pigx-monitor - jar + pigx-monitor + jar - pigx 监控模块,基于 spring boot admin + pigx 监控模块,基于 spring boot admin - - - com.pig4cloud - pigx-common-core - - - cn.hutool - hutool-http - - - org.springframework.boot - spring-boot-starter-data-redis - - - - de.codecentric - spring-boot-admin-starter-server - ${spring-boot-admin.version} - - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-discovery - - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-config - - - - com.pig4cloud - pigx-common-sentinel - - - - com.pig4cloud - pigx-common-feign - - - - org.springframework.boot - spring-boot-starter-web - - - - org.springframework.boot - spring-boot-starter-undertow - - - - com.alibaba - druid - - - - org.springframework.boot - spring-boot-starter-security - - + + + com.pig4cloud + pigx-common-core + + + cn.hutool + hutool-http + + + org.springframework.boot + spring-boot-starter-data-redis + + + + de.codecentric + spring-boot-admin-starter-server + ${spring-boot-admin.version} + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-undertow + + + + com.alibaba + druid + + + + com.alibaba + fastjson + + + + org.springframework.boot + spring-boot-starter-security + + - - - - org.springframework.boot - spring-boot-maven-plugin - - - io.fabric8 - docker-maven-plugin - - false - - - - + + + + org.springframework.boot + spring-boot-maven-plugin + + + io.fabric8 + docker-maven-plugin + + false + + + + diff --git a/pigx-visual/pigx-monitor/src/main/resources/bootstrap.yml b/pigx-visual/pigx-monitor/src/main/resources/application.yml similarity index 57% rename from pigx-visual/pigx-monitor/src/main/resources/bootstrap.yml rename to pigx-visual/pigx-monitor/src/main/resources/application.yml index 2641bc8fe..1f678a709 100644 --- a/pigx-visual/pigx-monitor/src/main/resources/bootstrap.yml +++ b/pigx-visual/pigx-monitor/src/main/resources/application.yml @@ -10,9 +10,8 @@ spring: server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml diff --git a/pigx-visual/pigx-monitor/src/main/resources/logback-spring.xml b/pigx-visual/pigx-monitor/src/main/resources/logback-spring.xml index 998f18b5c..ef137181c 100644 --- a/pigx-visual/pigx-monitor/src/main/resources/logback-spring.xml +++ b/pigx-visual/pigx-monitor/src/main/resources/logback-spring.xml @@ -83,5 +83,6 @@ + diff --git a/pigx-visual/pigx-mp-platform/pom.xml b/pigx-visual/pigx-mp-platform/pom.xml index 2ee9fd40a..bb5abd58f 100755 --- a/pigx-visual/pigx-mp-platform/pom.xml +++ b/pigx-visual/pigx-mp-platform/pom.xml @@ -6,7 +6,7 @@ com.pig4cloud pigx-visual - 4.3.0 + 4.4.0 pigx-mp-platform diff --git a/pigx-visual/pigx-mp-platform/src/main/java/com/pig4cloud/pigx/mp/config/WxMpInitConfigRunner.java b/pigx-visual/pigx-mp-platform/src/main/java/com/pig4cloud/pigx/mp/config/WxMpInitConfigRunner.java index 840769970..0cf2cb254 100755 --- a/pigx-visual/pigx-mp-platform/src/main/java/com/pig4cloud/pigx/mp/config/WxMpInitConfigRunner.java +++ b/pigx-visual/pigx-mp-platform/src/main/java/com/pig4cloud/pigx/mp/config/WxMpInitConfigRunner.java @@ -4,6 +4,7 @@ import com.google.common.collect.Maps; import com.pig4cloud.pigx.admin.api.feign.RemoteTenantService; import com.pig4cloud.pigx.common.core.constant.CacheConstants; import com.pig4cloud.pigx.common.core.constant.SecurityConstants; +import com.pig4cloud.pigx.common.core.util.RetOps; import com.pig4cloud.pigx.common.data.tenant.TenantBroker; import com.pig4cloud.pigx.mp.entity.WxAccount; import com.pig4cloud.pigx.mp.handler.*; @@ -23,6 +24,8 @@ import org.springframework.data.redis.listener.RedisMessageListenerContainer; import javax.annotation.PostConstruct; import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -85,8 +88,14 @@ public class WxMpInitConfigRunner { public void initServices() { // 获取全部租户 遍历所有租户对应的公众号列表 List accountList = new ArrayList<>(); - tenantService.list(SecurityConstants.FROM_IN).getData().forEach( - tenant -> TenantBroker.runAs(tenant.getId(), (id) -> accountList.addAll(accountService.list()))); + // @formatter:off + RetOps.of(tenantService.list(SecurityConstants.FROM_IN)) + .getData() + .orElseGet(Collections::emptyList) + .forEach( + tenant -> TenantBroker.runAs(tenant.getId(), (id) -> accountList.addAll(accountService.list())) + ); + // @formatter:on mpServices = accountList.stream().map(a -> { WxMpInRedisConfigStorage configStorage = new WxMpInRedisConfigStorage(redisTemplate); diff --git a/pigx-visual/pigx-mp-platform/src/main/java/com/pig4cloud/pigx/mp/controller/WxMaterialController.java b/pigx-visual/pigx-mp-platform/src/main/java/com/pig4cloud/pigx/mp/controller/WxMaterialController.java index 1d63352f3..826384d6c 100644 --- a/pigx-visual/pigx-mp-platform/src/main/java/com/pig4cloud/pigx/mp/controller/WxMaterialController.java +++ b/pigx-visual/pigx-mp-platform/src/main/java/com/pig4cloud/pigx/mp/controller/WxMaterialController.java @@ -11,8 +11,12 @@ import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import me.chanjar.weixin.common.api.WxConsts; import me.chanjar.weixin.common.error.WxErrorException; +import me.chanjar.weixin.mp.api.WxMpDraftService; import me.chanjar.weixin.mp.api.WxMpMaterialService; import me.chanjar.weixin.mp.api.WxMpService; +import me.chanjar.weixin.mp.bean.draft.WxMpAddDraft; +import me.chanjar.weixin.mp.bean.draft.WxMpDraftArticles; +import me.chanjar.weixin.mp.bean.draft.WxMpUpdateDraft; import me.chanjar.weixin.mp.bean.material.*; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; @@ -95,15 +99,14 @@ public class WxMaterialController { public R materialNewsUpload(@RequestBody JSONObject data) { try { JSONArray jSONArray = data.getJSONArray("articles"); - List articles = jSONArray.toList(WxMpNewsArticle.class); - WxMpMaterialNews news = new WxMpMaterialNews(); - news.setArticles(articles); + List articles = jSONArray.toList(WxMpDraftArticles.class); + WxMpAddDraft draft = new WxMpAddDraft(); + draft.setArticles(articles); String appId = data.getStr("appId"); WxMpService wxMpService = WxMpInitConfigRunner.getMpServices().get(appId); - WxMpMaterialService wxMpMaterialService = wxMpService.getMaterialService(); - WxMpMaterialUploadResult wxMpMaterialUploadResult = wxMpMaterialService.materialNewsUpload(news); - return R.ok(wxMpMaterialUploadResult); + WxMpDraftService draftService = wxMpService.getDraftService(); + return R.ok(draftService.addDraft(draft)); } catch (WxErrorException e) { log.warn("新增图文失败: {}", e.getMessage()); @@ -126,17 +129,18 @@ public class WxMaterialController { try { String mediaId = data.getStr("mediaId"); JSONArray jSONArray = data.getJSONArray("articles"); - List articles = jSONArray.toList(WxMpNewsArticle.class); + List articles = jSONArray.toList(WxMpDraftArticles.class); String appId = data.getStr("appId"); WxMpService wxMpService = WxMpInitConfigRunner.getMpServices().get(appId); - WxMpMaterialService wxMpMaterialService = wxMpService.getMaterialService(); - WxMpMaterialArticleUpdate wxMpMaterialArticleUpdate = new WxMpMaterialArticleUpdate(); - wxMpMaterialArticleUpdate.setMediaId(mediaId); + WxMpDraftService draftService = wxMpService.getDraftService(); + + WxMpUpdateDraft mpUpdateDraft = new WxMpUpdateDraft(); + mpUpdateDraft.setMediaId(mediaId); int index = 0; - for (WxMpNewsArticle article : articles) { - wxMpMaterialArticleUpdate.setIndex(index); - wxMpMaterialArticleUpdate.setArticles(article); - wxMpMaterialService.materialNewsUpdate(wxMpMaterialArticleUpdate); + for (WxMpDraftArticles article : articles) { + mpUpdateDraft.setIndex(index); + mpUpdateDraft.setArticles(article); + draftService.updateDraft(mpUpdateDraft); index++; } return R.ok(); @@ -201,10 +205,12 @@ public class WxMaterialController { try { WxMpService wxMpService = WxMpInitConfigRunner.getMpServices().get(appId); WxMpMaterialService wxMpMaterialService = wxMpService.getMaterialService(); + int count = (int) page.getSize(); int offset = (int) page.getCurrent() * count - count; if (WxConsts.MaterialType.NEWS.equals(type)) { - return R.ok(wxMpMaterialService.materialNewsBatchGet(offset, count)); + WxMpDraftService draftService = wxMpService.getDraftService(); + return R.ok(draftService.listDraft(offset, count)); } else { return R.ok(wxMpMaterialService.materialFileBatchGet(type, offset, count)); diff --git a/pigx-visual/pigx-mp-platform/src/main/resources/bootstrap.yml b/pigx-visual/pigx-mp-platform/src/main/resources/application.yml similarity index 57% rename from pigx-visual/pigx-mp-platform/src/main/resources/bootstrap.yml rename to pigx-visual/pigx-mp-platform/src/main/resources/application.yml index f26e3ca52..b60c628fc 100644 --- a/pigx-visual/pigx-mp-platform/src/main/resources/bootstrap.yml +++ b/pigx-visual/pigx-mp-platform/src/main/resources/application.yml @@ -10,8 +10,7 @@ spring: server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml diff --git a/pigx-visual/pigx-mp-platform/src/main/resources/logback-spring.xml b/pigx-visual/pigx-mp-platform/src/main/resources/logback-spring.xml index 998f18b5c..ef137181c 100644 --- a/pigx-visual/pigx-mp-platform/src/main/resources/logback-spring.xml +++ b/pigx-visual/pigx-mp-platform/src/main/resources/logback-spring.xml @@ -83,5 +83,6 @@ + diff --git a/pigx-visual/pigx-oa-platform/pom.xml b/pigx-visual/pigx-oa-platform/pom.xml index 316938c16..be3ac07d0 100644 --- a/pigx-visual/pigx-oa-platform/pom.xml +++ b/pigx-visual/pigx-oa-platform/pom.xml @@ -23,7 +23,7 @@ com.pig4cloud pigx-visual - 4.3.0 + 4.4.0 pigx-oa-platform @@ -97,6 +97,11 @@ mysql mysql-connector-java
+ + + com.microsoft.sqlserver + mssql-jdbc + com.oracle.database.jdbc diff --git a/pigx-visual/pigx-oa-platform/src/main/java/com/pig4cloud/pigx/act/config/ActivitiConfig.java b/pigx-visual/pigx-oa-platform/src/main/java/com/pig4cloud/pigx/act/config/ActivitiConfiguration.java similarity index 98% rename from pigx-visual/pigx-oa-platform/src/main/java/com/pig4cloud/pigx/act/config/ActivitiConfig.java rename to pigx-visual/pigx-oa-platform/src/main/java/com/pig4cloud/pigx/act/config/ActivitiConfiguration.java index 382a1490e..01b3eaae7 100644 --- a/pigx-visual/pigx-oa-platform/src/main/java/com/pig4cloud/pigx/act/config/ActivitiConfig.java +++ b/pigx-visual/pigx-oa-platform/src/main/java/com/pig4cloud/pigx/act/config/ActivitiConfiguration.java @@ -34,7 +34,7 @@ import javax.sql.DataSource; */ @Configuration @AllArgsConstructor -public class ActivitiConfig { +public class ActivitiConfiguration { private final DataSource dataSource; diff --git a/pigx-visual/pigx-oa-platform/src/main/resources/bootstrap.yml b/pigx-visual/pigx-oa-platform/src/main/resources/application.yml similarity index 57% rename from pigx-visual/pigx-oa-platform/src/main/resources/bootstrap.yml rename to pigx-visual/pigx-oa-platform/src/main/resources/application.yml index e20bf773f..b78e4df42 100644 --- a/pigx-visual/pigx-oa-platform/src/main/resources/bootstrap.yml +++ b/pigx-visual/pigx-oa-platform/src/main/resources/application.yml @@ -10,8 +10,7 @@ spring: server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml diff --git a/pigx-visual/pigx-oa-platform/src/main/resources/logback-spring.xml b/pigx-visual/pigx-oa-platform/src/main/resources/logback-spring.xml index 998f18b5c..ef137181c 100644 --- a/pigx-visual/pigx-oa-platform/src/main/resources/logback-spring.xml +++ b/pigx-visual/pigx-oa-platform/src/main/resources/logback-spring.xml @@ -83,5 +83,6 @@ + diff --git a/pigx-visual/pigx-pay-platform/pom.xml b/pigx-visual/pigx-pay-platform/pom.xml index 2469e6d74..a482be3b8 100755 --- a/pigx-visual/pigx-pay-platform/pom.xml +++ b/pigx-visual/pigx-pay-platform/pom.xml @@ -1,153 +1,159 @@ - 4.0.0 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 - - com.pig4cloud - pigx-visual - 4.3.0 - + + com.pig4cloud + pigx-visual + 4.4.0 + - pigx-pay-platform - jar + pigx-pay-platform + jar - 支付系统 - - 2.0.4 - + 支付系统 + + 2.0.4 + - - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-discovery - - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-config - - - - com.baomidou - mybatis-plus-boot-starter - - - mysql - mysql-connector-java - + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + com.baomidou + mybatis-plus-boot-starter + + + mysql + mysql-connector-java + - - com.oracle.database.jdbc - ojdbc8 - + + com.oracle.database.jdbc + ojdbc8 + - - - org.postgresql - postgresql - + + + org.postgresql + postgresql + - - - com.alibaba - druid-spring-boot-starter - - - - com.pig4cloud - pigx-common-data - - - com.pig4cloud - pigx-common-sequence - + + + com.dameng + DmJdbcDriver18 + - - cn.hutool - hutool-extra - - - - com.pig4cloud - pigx-common-gray - - - - com.pig4cloud - pigx-common-sentinel - - - - com.pig4cloud - pigx-upms-api - - - - com.pig4cloud - pigx-common-swagger - - - - com.pig4cloud - pigx-common-xss - - - com.pig4cloud - pigx-common-security - - - com.pig4cloud - pigx-common-log - - - - com.github.javen205 - IJPay-WxPay - - - com.github.javen205 - IJPay-AliPay - - - com.github.binarywang - weixin-java-mp - - - com.yungouos.pay - yungouos-pay-sdk - ${yungouos.version} - - - - org.springframework.boot - spring-boot-starter-web - - - - org.springframework.boot - spring-boot-starter-undertow - - - org.springframework.boot - spring-boot-starter-freemarker - - + + + com.alibaba + druid-spring-boot-starter + + + + com.pig4cloud + pigx-common-data + + + com.pig4cloud + pigx-common-sequence + - - - - org.springframework.boot - spring-boot-maven-plugin - - - io.fabric8 - docker-maven-plugin - - false - - - - + + cn.hutool + hutool-extra + + + + com.pig4cloud + pigx-common-gray + + + + com.pig4cloud + pigx-common-sentinel + + + + com.pig4cloud + pigx-upms-api + + + + com.pig4cloud + pigx-common-swagger + + + + com.pig4cloud + pigx-common-xss + + + com.pig4cloud + pigx-common-security + + + com.pig4cloud + pigx-common-log + + + + com.github.javen205 + IJPay-WxPay + + + com.github.javen205 + IJPay-AliPay + + + com.github.binarywang + weixin-java-mp + + + com.yungouos.pay + yungouos-pay-sdk + ${yungouos.version} + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-undertow + + + org.springframework.boot + spring-boot-starter-freemarker + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + io.fabric8 + docker-maven-plugin + + false + + + + diff --git a/pigx-visual/pigx-pay-platform/src/main/java/com/pig4cloud/pigx/pay/handler/impl/AlipayWapPayOrderHandler.java b/pigx-visual/pigx-pay-platform/src/main/java/com/pig4cloud/pigx/pay/handler/impl/AlipayWapPayOrderHandler.java index 8f4b6e482..4cc730289 100644 --- a/pigx-visual/pigx-pay-platform/src/main/java/com/pig4cloud/pigx/pay/handler/impl/AlipayWapPayOrderHandler.java +++ b/pigx-visual/pigx-pay-platform/src/main/java/com/pig4cloud/pigx/pay/handler/impl/AlipayWapPayOrderHandler.java @@ -84,7 +84,7 @@ public class AlipayWapPayOrderHandler extends AbstractPayOrderHandler { .setPrivateKey(params.getStr("privateKey")).setCharset(CharsetUtil.UTF_8) .setAliPayPublicKey(params.getStr("publicKey")).setServiceUrl(params.getStr("serviceUrl")) .setSignType("RSA2").build(); - AliPayApiConfigKit.putApiConfig(aliPayApiConfig); + AliPayApiConfigKit.setThreadLocalAliPayApiConfig(aliPayApiConfig); return channel; } diff --git a/pigx-visual/pigx-pay-platform/src/main/java/com/pig4cloud/pigx/pay/handler/impl/WeChatMpPayOrderHandler.java b/pigx-visual/pigx-pay-platform/src/main/java/com/pig4cloud/pigx/pay/handler/impl/WeChatMpPayOrderHandler.java index 9c75f6618..d3d7c322e 100644 --- a/pigx-visual/pigx-pay-platform/src/main/java/com/pig4cloud/pigx/pay/handler/impl/WeChatMpPayOrderHandler.java +++ b/pigx-visual/pigx-pay-platform/src/main/java/com/pig4cloud/pigx/pay/handler/impl/WeChatMpPayOrderHandler.java @@ -81,7 +81,7 @@ public class WeChatMpPayOrderHandler extends AbstractPayOrderHandler { WxPayApiConfig wx = WxPayApiConfig.builder().appId(channel.getAppId()).mchId(channel.getChannelMchId()) .partnerKey(params.getStr("partnerKey")).build(); - WxPayApiConfigKit.putApiConfig(wx); + WxPayApiConfigKit.setThreadLocalWxPayApiConfig(wx); return channel; } diff --git a/pigx-visual/pigx-pay-platform/src/main/resources/bootstrap.yml b/pigx-visual/pigx-pay-platform/src/main/resources/application.yml similarity index 57% rename from pigx-visual/pigx-pay-platform/src/main/resources/bootstrap.yml rename to pigx-visual/pigx-pay-platform/src/main/resources/application.yml index 189fc64ea..868829ec6 100644 --- a/pigx-visual/pigx-pay-platform/src/main/resources/bootstrap.yml +++ b/pigx-visual/pigx-pay-platform/src/main/resources/application.yml @@ -10,8 +10,7 @@ spring: server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} config: server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml diff --git a/pigx-visual/pigx-pay-platform/src/main/resources/logback-spring.xml b/pigx-visual/pigx-pay-platform/src/main/resources/logback-spring.xml index 964ca8735..721909512 100644 --- a/pigx-visual/pigx-pay-platform/src/main/resources/logback-spring.xml +++ b/pigx-visual/pigx-pay-platform/src/main/resources/logback-spring.xml @@ -65,6 +65,6 @@ - + diff --git a/pigx-visual/pigx-report-platform/pom.xml b/pigx-visual/pigx-report-platform/pom.xml index 24319e150..64b5eefe8 100644 --- a/pigx-visual/pigx-report-platform/pom.xml +++ b/pigx-visual/pigx-report-platform/pom.xml @@ -5,7 +5,7 @@ com.pig4cloud pigx-visual - 4.3.0 + 4.4.0 pigx-report-platform diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/controller/AccessAuthorityController.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/controller/AccessAuthorityController.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/controller/dto/AccessAuthorityDto.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/controller/dto/AccessAuthorityDto.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/controller/param/AccessAuthorityParam.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/controller/param/AccessAuthorityParam.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/dao/AccessAuthorityMapper.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/dao/AccessAuthorityMapper.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/dao/entity/AccessAuthority.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/dao/entity/AccessAuthority.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/service/AccessAuthorityService.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/service/AccessAuthorityService.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/service/impl/AccessAuthorityServiceImpl.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessauthority/service/impl/AccessAuthorityServiceImpl.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/controller/AccessRoleController.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/controller/AccessRoleController.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/controller/dto/AccessRoleDto.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/controller/dto/AccessRoleDto.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/controller/param/AccessRoleParam.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/controller/param/AccessRoleParam.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/dao/AccessRoleAuthorityMapper.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/dao/AccessRoleAuthorityMapper.java old mode 100755 new mode 100644 index bf810efa5..c649f0b39 --- a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/dao/AccessRoleAuthorityMapper.java +++ b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/dao/AccessRoleAuthorityMapper.java @@ -13,4 +13,4 @@ import org.apache.ibatis.annotations.Mapper; @Mapper public interface AccessRoleAuthorityMapper extends GaeaBaseMapper { -} \ No newline at end of file +} diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/dao/AccessRoleMapper.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/dao/AccessRoleMapper.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/dao/entity/AccessRole.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/dao/entity/AccessRole.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/service/AccessRoleService.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/service/AccessRoleService.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/service/impl/AccessRoleServiceImpl.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessrole/service/impl/AccessRoleServiceImpl.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/controller/AccessUserController.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/controller/AccessUserController.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/controller/dto/AccessUserDto.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/controller/dto/AccessUserDto.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/controller/param/AccessUserParam.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/controller/param/AccessUserParam.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/dao/AccessUserMapper.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/dao/AccessUserMapper.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/dao/AccessUserRoleMapper.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/dao/AccessUserRoleMapper.java old mode 100755 new mode 100644 index 088d8fac9..1cfdc9471 --- a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/dao/AccessUserRoleMapper.java +++ b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/dao/AccessUserRoleMapper.java @@ -13,4 +13,4 @@ import org.apache.ibatis.annotations.Mapper; @Mapper public interface AccessUserRoleMapper extends GaeaBaseMapper { -} \ No newline at end of file +} diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/dao/entity/AccessUser.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/dao/entity/AccessUser.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/dao/entity/AccessUserRole.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/dao/entity/AccessUserRole.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/service/AccessUserService.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/service/AccessUserService.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/service/impl/AccessUserServiceImpl.java b/pigx-visual/pigx-report-platform/src/main/java/com/anjiplus/template/gaea/business/modules/accessuser/service/impl/AccessUserServiceImpl.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-report-platform/src/main/resources/application.yml b/pigx-visual/pigx-report-platform/src/main/resources/application.yml new file mode 100644 index 000000000..dc1fa375f --- /dev/null +++ b/pigx-visual/pigx-report-platform/src/main/resources/application.yml @@ -0,0 +1,14 @@ +server: + port: 9095 + +spring: + application: + name: @artifactId@ + cloud: + nacos: + config: + server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} + config: + import: + - optional:nacos:application-@profiles.active@.yml + - optional:nacos:${spring.application.name}-@profiles.active@.yml diff --git a/pigx-visual/pigx-report-platform/src/main/resources/bootstrap.yml b/pigx-visual/pigx-report-platform/src/main/resources/bootstrap.yml deleted file mode 100644 index c5044af08..000000000 --- a/pigx-visual/pigx-report-platform/src/main/resources/bootstrap.yml +++ /dev/null @@ -1,15 +0,0 @@ -server: - port: 9095 - -spring: - application: - name: @artifactId@ - cloud: - nacos: - config: - server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ diff --git a/pigx-visual/pigx-report-platform/src/main/resources/logback-spring.xml b/pigx-visual/pigx-report-platform/src/main/resources/logback-spring.xml index 368c41323..e0c81dc15 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/logback-spring.xml +++ b/pigx-visual/pigx-report-platform/src/main/resources/logback-spring.xml @@ -61,6 +61,6 @@ - + diff --git a/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessAuthorityMapper.xml b/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessAuthorityMapper.xml old mode 100755 new mode 100644 index 139ba2669..3da5caf2c --- a/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessAuthorityMapper.xml +++ b/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessAuthorityMapper.xml @@ -24,4 +24,4 @@ id,parent_target,target,target_name,action,action_name,create_by,create_time,delete_flag,enable_flag,sort,update_by,update_time,version - \ No newline at end of file + diff --git a/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessRoleAuthorityMapper.xml b/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessRoleAuthorityMapper.xml old mode 100755 new mode 100644 index 68e177932..36894d44a --- a/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessRoleAuthorityMapper.xml +++ b/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessRoleAuthorityMapper.xml @@ -14,4 +14,4 @@ id,role_code,target,action - \ No newline at end of file + diff --git a/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessRoleMapper.xml b/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessRoleMapper.xml old mode 100755 new mode 100644 index 42421937a..bbedeee3c --- a/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessRoleMapper.xml +++ b/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessRoleMapper.xml @@ -23,4 +23,4 @@ - \ No newline at end of file + diff --git a/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessUserMapper.xml b/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessUserMapper.xml old mode 100755 new mode 100644 index 9cbb7dcde..c39cd6636 --- a/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessUserMapper.xml +++ b/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessUserMapper.xml @@ -33,4 +33,4 @@ select role_code from access_user_role where login_name=#{loginName} ) - \ No newline at end of file + diff --git a/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessUserRoleMapper.xml b/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessUserRoleMapper.xml old mode 100755 new mode 100644 index 9b7dd3908..0916b4d00 --- a/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessUserRoleMapper.xml +++ b/pigx-visual/pigx-report-platform/src/main/resources/mapper/AccessUserRoleMapper.xml @@ -12,4 +12,4 @@ id,login_name,role_code - \ No newline at end of file + diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/index.html b/pigx-visual/pigx-report-platform/src/main/resources/static/index.html index 3e151ce2f..98f7031dd 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/index.html +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/index.html @@ -1 +1 @@ -AJ-Report
\ No newline at end of file +AJ-Report
diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/app.64325dbe.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/app.64325dbe.css index 771a0e92f..91b4a03b8 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/app.64325dbe.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/app.64325dbe.css @@ -1 +1 @@ -::-webkit-scrollbar-track-piece{background:#f7f7f7;-webkit-border-radius:7px}::-webkit-scrollbar-thumb:horizontal,::-webkit-scrollbar-thumb:vertical{background-color:#dcdfe6;-webkit-border-radius:7px}a:focus,button:focus,input:focus,textarea:focus{outline:none}input:-webkit-autofill{box-shadow:inset 0 0 0 1000px #e5e9ee!important;-webkit-box-shadow:0 0 0 1000px #000 inset!important;border:0 solid #ccc!important;-webkit-text-fill-color:#fff}::-ms-clear,::-ms-reveal{display:none}.on-focus:focus{border:1px solid #5bc0de}.clearfix:after{content:"";width:100%}.mt10{margin-top:10px}.fr{float:right}.fl{float:left}.el-table td{padding:8px 0}.anji-card{margin-bottom:5px;padding:0;color:rgba(0,0,0,.65);font-size:14px;font-variant:tabular-nums;line-height:1.5;list-style:none;-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";position:relative;background:#fff;border-radius:2px;-webkit-transition:all .3s;transition:all .3s}.anji-card,.anji-card .card-head{-webkit-box-sizing:border-box;box-sizing:border-box}.anji-card .card-head{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:35px;padding:0 24px;color:rgba(0,0,0,.85);font-weight:500;font-size:16px;background:transparent;border-bottom:1px solid #e8e8e8;border-radius:2px 2px 0 0;zoom:1}.anji-card .card-head .main-card-header-button{position:absolute;right:20px}.anji-card .card-body{padding:24px;zoom:1}.el-form-item .el-form-item__label,.el-form-item__content,.el-input__icon{line-height:28px}.el-input--suffix .el-input__inner,.el-input .el-input__inner{height:28px;line-height:28px}.el-button{padding:7px 15px;font-size:12px;border-radius:3px}.el-dropdown-menu__item{min-width:80px;max-width:110px}.el-dropdown-menu__item .el-button--text{margin-left:0}.el-dropdown-menu__item:focus,.el-dropdown-menu__item:not(.is-disabled):hover{background:none!important}.el-table td{padding:6px 0}.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .28s;transition:opacity .28s}.fade-enter,.fade-leave-active{opacity:0}.fade-transform-enter-active,.fade-transform-leave-active{-webkit-transition:all .5s;transition:all .5s}.fade-transform-enter{opacity:0;-webkit-transform:translateX(-30px);transform:translateX(-30px)}.fade-transform-leave-to{opacity:0;-webkit-transform:translateX(30px);transform:translateX(30px)}.breadcrumb-enter-active,.breadcrumb-leave-active{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-enter,.breadcrumb-leave-active{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}.breadcrumb-move{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-leave-active{position:absolute}.el-upload input[type=file]{display:none!important}.el-upload__input{display:none}.el-table--border th.gutter:last-of-type{display:block!important;width:17px!important}.el-dialog{-webkit-transform:none;transform:none;left:0;position:relative;margin:0 auto}.el-dialog .el-dialog__header{background-color:#304da7;color:#fff}.el-dialog .el-dialog__header .el-dialog__headerbtn i,.el-dialog .el-dialog__header .el-dialog__title{color:#fff}.el-tooltip__popper{max-width:80%}.upload-container .el-upload{width:100%}.upload-container .el-upload .el-upload-dragger{width:100%;height:200px}.el-input-group{display:inline-table!important}.input-with-select .el-input-group__prepend .el-select{width:105px}.el-form--inline .el-form-item{width:45%;margin-right:25px}.el-form--inline .el-form-item .el-form-item__label{font-size:12px;line-height:17px;padding:0 0 5px}.el-form--inline .el-form-item .el-form-item__content .el-input .el-input__prefix{left:0;background-color:#f5f7fa;color:#909399;vertical-align:middle;display:table-cell;border:1px solid #dcdfe6;border-radius:4px;width:40px;height:98%;white-space:nowrap;border-top-right-radius:0;border-bottom-right-radius:0}#app .main-container{min-height:100%;-webkit-transition:margin-left .28s;transition:margin-left .28s;margin-left:180px;position:relative}#app .sidebar-container{-webkit-transition:width .28s;transition:width .28s;width:180px!important;height:100%;position:fixed;font-size:0;top:0;bottom:0;left:0;z-index:1001;overflow:hidden;-webkit-box-shadow:1px 1px 4px #e7eeff;box-shadow:1px 1px 4px #e7eeff}#app .sidebar-container .horizontal-collapse-transition{-webkit-transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out;transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out}#app .sidebar-container .el-scrollbar__bar.is-vertical{right:0}#app .sidebar-container .scrollbar-wrapper{overflow-x:hidden!important}#app .sidebar-container .scrollbar-wrapper .el-scrollbar__view{height:calc(100vh - 70px)}#app .sidebar-container .is-horizontal{display:none}#app .sidebar-container a{display:inline-block;width:100%;overflow:hidden}#app .sidebar-container .svg-icon{margin-right:16px}#app .sidebar-container .el-menu{border:none;height:100%;width:100%!important}#app .sidebar-container .is-active>.el-submenu__title{color:#333!important}#app .hideSidebar .sidebar-container{width:56px!important}#app .hideSidebar .sidebar-container .iconfont{font-size:24px;margin-left:5px}#app .hideSidebar .main-container{margin-left:56px}#app .hideSidebar .submenu-title-noDropdown{padding-left:10px!important;position:relative}#app .hideSidebar .submenu-title-noDropdown .el-tooltip{padding:0 10px!important}#app .hideSidebar .el-submenu{overflow:hidden}#app .hideSidebar .el-submenu>.el-submenu__title{padding-left:10px!important}#app .hideSidebar .el-submenu>.el-submenu__title .el-submenu__icon-arrow{display:none}#app .hideSidebar .el-menu--collapse .el-submenu>.el-submenu__title>span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}#app .sidebar-container .el-submenu .el-menu-item,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title{min-width:180px!important;background-color:#fff!important}#app .sidebar-container .el-submenu .el-menu-item:hover,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title:hover{color:#406be0!important;font-weight:700}#app .el-menu-item.is-active{border-right:3px solid #409eff}#app .el-menu--collapse .el-menu .el-submenu{min-width:180px!important}#app .mobile .main-container{margin-left:0}#app .mobile .sidebar-container{-webkit-transition:-webkit-transform .28s;transition:-webkit-transform .28s;transition:transform .28s;transition:transform .28s,-webkit-transform .28s;width:180px!important}#app .mobile.hideSidebar .sidebar-container{-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transform:translate3d(-180px,0,0);transform:translate3d(-180px,0,0)}#app .withoutAnimation .main-container,#app .withoutAnimation .sidebar-container{-webkit-transition:none;transition:none}.el-menu--vertical>.el-menu .svg-icon{margin-right:16px}body{height:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif}li,ol,ul{margin:0;padding:0}html{height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-overflow-style:none;scrollbar-width:none}html::-webkit-scrollbar{display:none}.el-image-viewer__close{color:#fff}label{font-weight:700}#app{height:100%}*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit}a,a:active,a:focus,a:hover,div:focus{outline:none}a,a:focus,a:hover{cursor:pointer;color:inherit;text-decoration:none}.clearfix:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.app-main{min-height:100%}.app-container{padding:20px;background:#fff}.filter-container{padding-bottom:10px}.filter-container .filter-item{display:inline-block;vertical-align:middle;margin-bottom:10px}.float-r{float:right}.float-l{float:left}.log .el-collapse{border-top:0;border-bottom:0}.log .el-collapse-item__header{height:40px;line-height:40px;cursor:pointer;border:1px solid #fff;background:rgba(145,163,177,.15);font-size:14px;color:#666;-webkit-transition:border-bottom-color .3s;transition:border-bottom-color .3s;outline:0;padding:0 20px}.log .el-collapse-item__wrap{will-change:height;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box;border-bottom:1px solid #fff;background:#263c7c}.log .el-collapse-item__content{font-size:14px;color:#fff;padding:20px}.log .el-collapse-item__arrow{margin-top:14px;float:right;margin-right:-77px}.log .icon-btn_style,.log .icon-btn_style:hover{background:none;border:0;padding:0}.my-dialog .el-dialog{background:#062b69;border:1px solid #5ddaf6}.my-dialog .el-dialog__header{border-bottom:1px solid #5ddaf6;text-align:center}.my-dialog .el-dialog__title{color:#5cdcf9}.my-dialog .el-input__inner{background:#091e43;border-color:#254e97}.my-dialog .el-date-editor .el-range__icon{color:#5cdcf9}.my-dialog input{background:#091e43}.my-dialog .el-date-editor .el-range-input{color:#5cdcf9}.my-dialog .form-handle .el-form-item__label{color:#5cdcf9;font-weight:500}.my-dialog .el-form-item{margin-bottom:10px}.my-dialog .el-select:hover .el-input__inner,.my-dialog .el-textarea__inner{background-color:#091e43;border-color:#254e97;border-bottom:1px solid #254e97}.my-dialog .el-button--blue{color:#fff;background-color:#224788;border-color:#224788}.my-dialog .el-button--green{color:#fff;background-color:#2092ad;border-color:#2092ad}.el-input--prefix .el-input__inner{padding-left:45px}.el-input-group__append,.el-input-group__prepend{color:#333}.preview-form{height:auto!important;overflow-y:auto!important}.x-spreadsheet-toolbar-btns{margin-left:30px!important}.ml10{margin-left:10px}.Customized .CodeMirror{font-family:monospace;height:190px!important;color:#000;direction:ltr}.jsoneditor-vue{height:100%}.printSet{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAALpQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqyRq8wAAAD10Uk5TAB2VubscD+RdXHWBIoJ2bm8muOru9vUG2dgu+T+lFjMYUVYEd1UDwL9QTXOoZnEy7czjMQkINtPSChF/lOVoZG8AAAABYktHRACIBR1IAAAACXBIWXMAAABIAAAASABGyWs+AAAA8ElEQVRIx+WVaQ/BQBCGi1LqZt2lFHUfdSvv//9bEtpEZHZpZCV4Pk72+TC7s/Mqyn8TCkdUkkg4Sp2PaeCixQghDgEJQtCBZIokDeiEkAGydHM5IPOmkC8UGSsBZUZSBkqMFQt5/3ylipeoVTyhDjTYUxpA3RMMoPn8XZuAIUtomWY7kHC7VplCR1UtuU1/kdC1ehz6XUqwB/w5HdqEMBJN9pgQJsB0RjIF5oQg/KL6zwkLYOk4mkhYOc4SWHuFjb+G+cKV1dav7PavCIfdXe3ouieRcHLd42NZ6jL+kBA4gQJnXOAUVaLcnD6TOS2LC62MgVSUf9P3AAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTA0LTIyVDE1OjMzOjQyKzA4OjAwhdQCLwAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMS0wNC0yMlQxNTozMzo0MiswODowMPSJupMAAABKdEVYdHN2ZzpiYXNlLXVyaQBmaWxlOi8vL2hvbWUvYWRtaW4vaWNvbi1mb250L3RtcC9pY29uX2VqcHUyYnEwOHUvYmlhbnp1MTQuc3ZnqKrOEwAAAABJRU5ErkJggg==)!important}.printSet,.qrCodes{background-size:19px;background-position:0 0;background-repeat:no-repeat;position:absolute;opacity:1!important}.qrCodes{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAdRQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXTHcCgAAAJt0Uk5TAAI2YmZSGBVGW11fYDkBBafvSFTwofGfmbH+2AMG46ygR3aJ3Bsj04V1d4DXHijKeZeSIkno7vj8z3/Z0IcdJ8xox0yVJT1EQhNPxjszVff2DQtQQA6WmNoSIYyusJ5kCG6qgxlrqRFvHEUyD86C/bRc1OsJDLc/IG2Gtn4uOHzm86g1dFOaCjxwakHB6kM62x/pkIii57tynQcsTZN4AAAAAWJLR0QAiAUdSAAAAAlwSFlzAAAASAAAAEgARslrPgAAAhRJREFUSMftlGlTE0EQhjsEgQQxQCDGQLhUDARBQECCRMLhCmJQTkEDBOVSESOiHCJyeAQvvNH+s6Z3yexMJVsbyi9U6fthp/LMPDWZ7tkF+HdjSDImsxxJUWBqmslsNqcfJWbMOMavt2Qin6xsgtYcAebyhhVtx+0sJxx5+QDOAixUWVEWFnNCCZ7kNzyFpwFK8QzPXFjG/SpHNz9ZgWcBKrGKZ2489/dCWrXdXlMrCufr6hsu2DWERiqGSxQ8xJo0hIs02SwLXoBLouDRFRLYoUX9S0zwEWvVENoiDWrvEIX8y5J0pVO/rN6D9sFLnW7RFrrwavc1Fn/P9RsAvTZbn8r6WzGdEwbyhIuJgwSHRHZzmN9w5NbtAMvomIXYeHBCZRN37sIhz/BkdZGc3EBgqt2vvI3TM7M03DNFHvd9Bn79gzmxIh6Z+vAhDQXz4wCPsJsXQvjY5PdnS0qSGxaeEJ2RbyIs4CLAU3zGCzGdXqJhGVeYsIoZovA8jlA7tcaEF+sWfWE/L7E3pkiKMFTvwI02VRjZ3KJhmz5Br16/iRUqqEBu/gwutmIV3+oLYeXQoR1ZeJewUEdniCu8JyEYI3xQyhpH6PwoSZ8MWkK/flnDQuMEoUy5NdHs4mcdoQu/fP3G8t3xw6IjOH8Kl7XHKNMQ7tEwlxPRf813CK12WrfD0QRN0blS+TlAb/PvWfifxPMHpTcZyy9xNPQAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjEtMDQtMjJUMTU6MzM6NDIrMDg6MDCF1AIvAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIxLTA0LTIyVDE1OjMzOjQyKzA4OjAw9Im6kwAAAEV0RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fZWpwdTJicTA4dS9pY28uc3ZnaHoxTAAAAABJRU5ErkJggg==)!important}.barCodes{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAANJQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1K5a2gAAAEV0Uk5TAAZfoLi7iwGDXgUg1fYJAvHTH9hpRUQjC12hap+zprmRxX0XzWiJ9SL6/BPkK8xDtIgHCIokKkKdnrC8dRTEYtlcIdGCHuOWwgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAAAEgAAABIAEbJaz4AAAEeSURBVEjH7ZVbU8IwEIUDRZAKlDa9YQuKF+pdEFBQQBD2//8lo23jZsZ2hwcfHDgPZ7rbfNl2JpPD2A6rUNRKB4nKlaR5mHZKWlVX1x/V4Ef1Rtw0mqhpWsr+NeC24yby5DZpx7E5mHhGEbif/8k+hxYqj8GmfjKAEFVtcCjAgbYCuBTg7gEJdDrCjJNT4X73TPj5xeVvQC+6ih+ub4Tdwp3we3gQ/gj9+I0XDfDAJ0YBcomqHIDtgb8HhjQwxOtHkUcB43oPAfLwZQMZpxUBz9/ACwFMpsKM16/pjbeZ8PniPRfI1j8AtrwqtW0v4yp93S9hhcqCCTyQgTJO2x8yUIIlrJXQskwqstaWOlJvhTIUR2kobmQohiud7bA+AabUTRCFwiQSAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTA1LTA2VDE2OjA2OjI2KzA4OjAwohqyKAAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMS0wNS0wNlQxNjowNjoyNiswODowMNNHCpQAAABNdEVYdHN2ZzpiYXNlLXVyaQBmaWxlOi8vL2hvbWUvYWRtaW4vaWNvbi1mb250L3RtcC9pY29uX2l5MnlydGhyZ3hzL3RpYW94aW5nbWEuc3Zn7lU3WwAAAABJRU5ErkJggg==)!important;background-size:19px;background-position:0 0;background-repeat:no-repeat;position:absolute;opacity:1!important}.collapse-input-style .el-input__inner,.collapse-input-style .el-textarea__inner{background:#263445!important;border:1px solid #3f5673;color:#a8e3ff}.collapse-input-style .el-slider__runway{height:2px;background-color:#5e6b82}.collapse-input-style .el-slider__bar{height:2px}.collapse-input-style .el-slider__button-wrapper{top:-17px}.collapse-input-style .el-slider__button{width:14px;height:14px}.collapse-input-style .el-switch__core{background-color:#5e6b82;border:1px solid #3f5673}.collapse-input-style .el-input-group__append,.collapse-input-style .el-input-group__prepend,.collapse-input-style .el-input-number__decrease,.collapse-input-style .el-input-number__increase{background:#5e6b82!important;border:1px solid #3f5673;color:#a8e3ff}.collapse-input-style .el-input-number.is-controls-right .el-input-number__increase{height:15px;border-bottom:1px solid #3f5673}.collapse-input-style .el-input-number.is-controls-right .el-input-number__decrease{border-left:1px solid #3f5673}.collapse-input-style .el-form-item__label{font-size:12px;color:#bfcbd9!important;font-weight:400!important}.table-danger,.table-info,.table-primary,.table-success,.table-warning{border-radius:3px;padding:2px 5px;border-width:1px;border-style:solid}.table-primary{background:rgba(32,182,249,.1);border-color:rgba(32,182,249,.2);color:#20b6f9}.table-success{background:rgba(0,226,68,.1);border-color:rgba(0,226,68,.2);color:#00e244}.table-info{background:hsla(0,0%,84.7%,.1);border-color:hsla(0,0%,84.7%,.2);color:#d8d8d8}.table-warning{background:rgba(255,216,40,.1);border-color:rgba(255,216,40,.2);color:#f1b900}.table-danger{background:rgba(249,32,32,.1);border-color:rgba(249,32,32,.2);color:#f92020}@font-face{font-family:iconfont;src:url(/static/fonts/iconfont.36da2e0.woff2) format("woff2"),url(/static/fonts/iconfont.1807587.woff) format("woff"),url(/static/fonts/iconfont.7f0b09e.ttf) format("truetype")}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.iconciyuntu:before{content:"\E7AF"}.icondaochu:before{content:"\E618"}.icondaoru:before{content:"\E608"}.iconduibitupu:before{content:"\E9CA"}.iconzhexian:before{content:"\E635"}.iconbianzu23:before{content:"\E621"}.iconduidietu:before{content:"\E61F"}.iconfill_folder:before{content:"\E645"}.iconzidianxiang:before{content:"\E7DF"}.iconAPIwangguan:before{content:"\E66B"}.icondatabase:before{content:"\E7B6"}.iconbaifenbi:before{content:"\E616"}.iconfolder-o:before{content:"\E70F"}.iconjinlingyingcaiwangtubiao01:before{content:"\E724"}.iconleft-copy:before{content:"\E6AF"}.iconfuzhi1:before{content:"\E626"}.iconzhongguoditu:before{content:"\E738"}.iconbiaoge:before{content:"\E625"}.icongexingzhuangban:before{content:"\E646"}.iconyibiaopan-chaobiao:before{content:"\E72E"}.iconnandinggeermeiguitu:before{content:"\E851"}.iconzhankai:before{content:"\E631"}.iconexcel:before{content:"\E650"}.iconbaocun:before{content:"\E737"}.iconguanbi:before{content:"\E6C5"}.iconpdf:before{content:"\E614"}.iconfuzhi:before{content:"\E61E"}.icon020kongxinbingtu:before{content:"\E78C"}.iconshijian:before{content:"\E662"}.iconsave:before{content:"\E6F6"}.icontupian:before{content:"\E612"}.iconzhuzhuangtu:before{content:"\E691"}.iconchaolianjie:before{content:"\E65F"}.iconziyuan:before{content:"\E605"}.iconshipin:before{content:"\ECC1"}.iconkuangjia:before{content:"\E66A"}.iconyulan:before{content:"\E728"}.iconhengxiangwenzi:before{content:"\E601"}.iconicon_tubiao_bingtu:before{content:"\E602"}.iconloudoutu:before{content:"\E6D5"}.icontubiaozhexiantu:before{content:"\E630"}.iconzhuxiantu:before{content:"\E607"}.icontupian1:before{content:"\E81D"}.iconyibiaopan:before{content:"\E706"}.icon1:before{content:"\E63B"}.iconxiazai:before{content:"\E639"}.icon11-04:before{content:"\E784"}.iconyouxiang:before{content:"\E769"}.iconbangdingshouji:before{content:"\E64D"}.iconshouji:before{content:"\E854"}.icon52-shouji:before{content:"\E871"}.iconhome:before{content:"\E610"}.iconhome2:before{content:"\E61A"}.iconKafka:before{content:"\E65A"}.iconshujujieruKafkajiqun:before{content:"\E64F"}.iconkafka:before{content:"\E6F2"}.iconelasticsearch-Elasticsearch:before{content:"\E853"}.iconapachekafka:before{content:"\EB3F"}.iconelasticsearch:before{content:"\EB85"}.iconwentifankui:before{content:"\E8D1"}.iconwentifankui1:before{content:"\E70E"}.iconwentifankui2:before{content:"\E643"}.iconalikafkaxiaoxiduilieKafka:before{content:"\E8A4"}.iconxiangmuchaxun-chakanshebei:before{content:"\E682"}.iconelasticsearchElasticsearch:before{content:"\E6A1"}.icon511tongji_shutu:before{content:"\E64A"}.iconfenxiang1:before{content:"\E615"}.iconfenxiang2:before{content:"\E60F"}.iconfenxiang_2:before{content:"\E600"}.iconNMStubiao-:before{content:"\E628"}.iconwanchenganquanshijian:before{content:"\E68A"}.iconeventbridgexiaoxishijianzongxian:before{content:"\E74D"}.iconshu:before{content:"\E629"}.iconshebeiguanji:before{content:"\E61D"}.iconhaofangtuo400iconfontduanxin:before{content:"\E6D8"}.iconnavicon-ywcs:before{content:"\E661"}.iconliebiao:before{content:"\E660"}.iconbianji:before{content:"\E60C"}.iconyoujian:before{content:"\E63A"}.iconshejiaodingding:before{content:"\E678"}.iconzidianguanli:before{content:"\E624"}.icontubiao:before{content:"\E73F"}.icondingding:before{content:"\E690"}.iconduanxin:before{content:"\E603"}.icondirectmailyoujiantuisong:before{content:"\E714"}.iconshebeisheshi:before{content:"\E61C"}.icontongzhi:before{content:"\E606"}.iconrizhi:before{content:"\E663"}.iconchufaqipeizhi-hui:before{content:"\E689"}.iconvcsshijuejisuanfuwu:before{content:"\E759"}.iconbar_icon_shebei:before{content:"\E60A"}.iconuser-before:before{content:"\E617"}.iconkemuweihutubiao:before{content:"\E60B"}.iconaccounting-subjects:before{content:"\E677"}.iconRectangleCopy:before{content:"\E6DD"}.iconchengbenshujuguanli:before{content:"\E6C7"}.iconjibenshuju:before{content:"\E71D"}.iconB-shengshiqu:before{content:"\E72D"}.iconzuzhijigou:before{content:"\E66E"}.iconanniu:before{content:"\E8C5"}.iconcaidan2:before{content:"\E61B"}.iconwenhao:before{content:"\E67F"}.iconlajitong:before{content:"\E636"}.iconzhongzhimima:before{content:"\E620"}.iconshezhi:before{content:"\E68F"}.iconzhongzhuan:before{content:"\E69B"}.iconadd:before{content:"\E6B9"}.iconminus:before{content:"\E6BA"}.iconpassword:before{content:"\E622"}.iconyonghu:before{content:"\E604"}.iconquanxian:before{content:"\E633"}.iconjiaose1:before{content:"\E64C"}.iconzidian:before{content:"\E716"}.iconcssz:before{content:"\E672"}.iconbianji1:before{content:"\E642"}.icondfzq-:before{content:"\E609"}.iconfenxiang:before{content:"\E641"}.iconshouquan1:before{content:"\E634"}.iconjiantou:before{content:"\E653"}.iconjiantou-copy-copy:before{content:"\E654"}.app-breadcrumb.el-breadcrumb[data-v-2b5df056]{display:inline-block;font-size:14px;line-height:50px;margin-left:10px;color:#fff}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-2b5df056]{color:#333;cursor:text}.hamburger[data-v-54298247]{display:inline-block;cursor:pointer;width:20px;height:19px;-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-transition:.38s;transition:.38s;-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.hamburger.is-active[data-v-54298247]{-webkit-transform:rotate(0deg);transform:rotate(0deg)}.navbar[data-v-1538a3b3]{height:50px;line-height:50px;border-radius:0!important;background:#fff!important}.navbar .hamburger-container[data-v-1538a3b3]{line-height:57px;height:49px;float:left;padding:0 10px;background:#fff}.navbar .screenfull[data-v-1538a3b3]{position:absolute;right:90px;top:16px;color:red}.navbar .avatar-container[data-v-1538a3b3]{height:50px;display:inline-block;position:absolute;right:35px}.navbar .avatar-container .avatar-wrapper[data-v-1538a3b3]{line-height:50px;cursor:pointer;margin-top:5px;position:relative}.navbar .avatar-container .avatar-wrapper .user-avatar[data-v-1538a3b3]{width:40px;height:40px;border-radius:10px;vertical-align:text-bottom}.navbar .avatar-container .avatar-wrapper .user-name[data-v-1538a3b3]{color:#333}.navbar .avatar-container .avatar-wrapper .el-icon-caret-bottom[data-v-1538a3b3]{color:#333;position:absolute;right:-20px;top:21px;font-size:12px}.navbar .avatar-container .avatar-wrapper .user[data-v-1538a3b3]{color:#333;font-size:16px}.password-box .password-tips[data-v-1538a3b3]{position:absolute;right:0;top:100%;line-height:1;font-size:13px;padding-top:4px}.el-popper[data-v-1538a3b3]{padding:0}.el-dropdown-menu__item--divided[data-v-1538a3b3]{margin-top:0}.el-submenu__title i[data-v-2b0b07e3]{color:#333;margin-right:5px}.el-menu-item i[data-v-2b0b07e3]{margin-right:5px}.admin-title[data-v-38cf134e]{text-align:center;width:100%;font-weight:500;color:#333;font-size:14px;background:#fff}.admin-title .con[data-v-38cf134e]{margin:auto}.admin-title .con img[data-v-38cf134e]{margin-top:10px}.admin-title .con .version[data-v-38cf134e]{display:inline-block;font-size:12px;color:#fff;background:#4fadfd;padding:2px;border-radius:10px}.admin-title[data-v-38cf134e]:hover{cursor:pointer}.app-main[data-v-7d0fa904]{height:calc(100vh - 50px);position:relative;overflow:auto;background:#f5f8fa}.app-wrapper[data-v-11b67c86]{position:relative;height:100%;width:100%}.app-wrapper[data-v-11b67c86]:after{content:"";display:table;clear:both}.app-wrapper.mobile.openSidebar[data-v-11b67c86]{position:fixed;top:0}.drawer-bg[data-v-11b67c86]{background:#000;opacity:.3;width:100%;top:0;height:100%;position:absolute;z-index:999}.filterInput[data-v-0b9e713f]{margin-bottom:20px}.input_tips[data-v-36f1f9f6]{position:absolute;margin-top:-8px}.input_tips .svg-icon[data-v-36f1f9f6]{font-size:20px;color:#470808}.table-add-row-button[data-v-563fdf1c]{width:100%;margin-top:0;margin-bottom:0;line-height:1.499;position:relative;display:inline-block;font-weight:400;white-space:nowrap;text-align:center;background-image:none;-webkit-box-shadow:0 2px 0 rgba(0,0,0,.015);box-shadow:0 2px 0 rgba(0,0,0,.015);cursor:pointer;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-user-select:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-ms-touch-action:manipulation;touch-action:manipulation;height:32px;padding:0 15px;font-size:14px;border-radius:4px;color:rgba(0,0,0,.65);background-color:#fff;border:1px solid #d9d9d9}.notfull-screen[data-v-283ef73e] .el-dialog__body{background-color:#f0f2f5;padding:5px;max-height:60vh;overflow:auto}.full-screen[data-v-283ef73e] .el-dialog__body{background-color:#f0f2f5;padding:5px;height:calc(100vh - 110px);overflow:auto}.contentmenu[data-v-15ce4a3d]{position:fixed;z-index:99999;list-style:none;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2);padding:0;background:#fff;cursor:pointer}.right-container .main_part[data-v-1b349198],.right-container[data-v-1b349198]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.right-container .main_part[data-v-1b349198]{background:#fff;border-radius:4px;padding:12px 20px;margin-top:4px;height:100%;position:relative}[data-v-1b349198] .button{-webkit-box-shadow:0 0 6px 0 rgba(0,0,0,.08);box-shadow:0 0 6px 0 rgba(0,0,0,.08);border-radius:6px}[data-v-1b349198] .el-table .cell,[data-v-1b349198] .el-table th>.cell{text-align:center}[data-v-1b349198] .elTable{margin:10px 0 50px}.el-table[data-v-1b349198] td,.el-table[data-v-1b349198] th{padding:0;height:36px}[data-v-1b349198] .el-table--striped .el-table__body tr.el-table__row--striped td{background:#f9fbfd}.screenFlex[data-v-1b349198]{display:-webkit-box;display:-ms-flexbox;display:flex}.searchFormFlex[data-v-1b349198]{-webkit-box-flex:1;-ms-flex:1;flex:1}.screenButtons[data-v-1b349198]{padding-left:20px}.style-btn[data-v-1b349198]{pointer-events:none}.page-container[data-v-1b349198]{height:100%;position:relative}.page-container .left-container[data-v-1b349198]{width:20%;position:absolute;top:0;left:0;background:#fff;border-radius:4px 0 0 4px;padding:20px 20px 0;overflow:hidden;overflow-y:auto;height:100%}.page-container .right-container[data-v-1b349198]{width:calc(80% - 5px);position:absolute;top:0;right:0;background:#fff;border-radius:0 4px 4px 0;padding:20px 20px 0;height:100%}.el-table .cell[data-v-1b349198],.el-table td div[data-v-1b349198]{overflow:hidden;text-overflow:ellipsis}.el-dropdown[data-v-1b349198]{font-size:12px;display:inline;color:#5887fb;cursor:pointer}.el-dropdown-menu--mini .el-dropdown-menu__item[data-v-1b349198]{min-width:80px;max-width:110px;float:right}.el-dropdown-menu--mini .el-dropdown-menu__item .el-button--text[data-v-1b349198]{float:right}.el-dropdown-menu--mini .el-dropdown-menu__item[data-v-1b349198]:hover{background:none!important}.el-dropdown-menu--mini .el-dropdown-menu__item .el-button--text[data-v-1b349198]:focus,.el-dropdown-menu--mini .el-dropdown-menu__item[data-v-1b349198] .el-button--text:hover{color:#799ffc!important;background-color:#ecf5ff!important;border-color:transparent}.el-dropdown-menu--mini .el-dropdown-menu__item .el-button--mini[data-v-1b349198]{float:right}.el-dropdown-menu--mini .el-dropdown-menu__item .el-button--text[data-v-1b349198]:focus,.el-dropdown-menu--mini .el-dropdown-menu__item .el-button--text[data-v-1b349198]:hover{color:#799ffc;border-color:transparent}.el-dropdown-menu--mini .el-dropdown-menu__item .el-button+.el-button[data-v-1b349198]{margin-left:0!important;float:right}.el-pagination.is-background .btn-next[data-v-1b349198],.el-pagination.is-background .el-pager li[data-v-1b349198],[data-v-1b349198] .el-pagination.is-background .btn-prev{margin:0 5px;background-color:#f4f4f5;color:#606266;min-width:30px;border-radius:2px}[data-v-1b349198] .el-pagination.is-background .el-pager li:not(.disabled).active{background-color:#5887fb;color:#fff;border-radius:4px}.page_bottom[data-v-1b349198]{width:100%;position:absolute;bottom:0}.pagination[data-v-1b349198]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:14px;margin-right:20px}.el-table[data-v-1b349198] .warning-row{color:red!important}.el-table[data-v-1b349198] .bgColor{background:#d9ecff}[data-v-1b349198] .edit_button{width:22px;height:22px;padding:0;margin:0 5px 0 0}[data-v-1b349198] .edit_button /deep/ i{font-size:30px}.el-form-item--mini.el-form-item[data-v-1b349198]{margin-bottom:12px}.el-table[data-v-1b349198] .success-row{background:#f9fbfd!important}.contextMenu[data-v-1b349198]{width:100px}.contextMenu .contextMenuItem[data-v-1b349198]{width:100%;font-size:12px;line-height:20px;padding:5px}.contextMenu[data-v-1b349198]:hover{background:#f9fbfd}.el-select[data-v-b32efa94]{width:100%}.el-select-dropdown__item.is-disabled[data-v-b32efa94],.el-select-dropdown__item.selected[data-v-b32efa94]{text-align:center}.uploadImage .el-upload--picture-card[data-v-94cf27d6]{width:60px;height:60px;line-height:65px}.uploadImage .el-upload-list__item[data-v-94cf27d6]{width:60px;height:60px}.hide_box .el-upload--picture-card[data-v-94cf27d6]{display:none}.el-upload-list__item[data-v-94cf27d6]{line-height:1.5}.el-upload-list--picture-card .el-upload-list__item-actions[data-v-94cf27d6]{text-align:left;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.iconFont[data-v-94cf27d6],.imgBox[data-v-94cf27d6]{width:100%!important;height:100%!important} \ No newline at end of file +::-webkit-scrollbar-track-piece{background:#f7f7f7;-webkit-border-radius:7px}::-webkit-scrollbar-thumb:horizontal,::-webkit-scrollbar-thumb:vertical{background-color:#dcdfe6;-webkit-border-radius:7px}a:focus,button:focus,input:focus,textarea:focus{outline:none}input:-webkit-autofill{box-shadow:inset 0 0 0 1000px #e5e9ee!important;-webkit-box-shadow:0 0 0 1000px #000 inset!important;border:0 solid #ccc!important;-webkit-text-fill-color:#fff}::-ms-clear,::-ms-reveal{display:none}.on-focus:focus{border:1px solid #5bc0de}.clearfix:after{content:"";width:100%}.mt10{margin-top:10px}.fr{float:right}.fl{float:left}.el-table td{padding:8px 0}.anji-card{margin-bottom:5px;padding:0;color:rgba(0,0,0,.65);font-size:14px;font-variant:tabular-nums;line-height:1.5;list-style:none;-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";position:relative;background:#fff;border-radius:2px;-webkit-transition:all .3s;transition:all .3s}.anji-card,.anji-card .card-head{-webkit-box-sizing:border-box;box-sizing:border-box}.anji-card .card-head{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:35px;padding:0 24px;color:rgba(0,0,0,.85);font-weight:500;font-size:16px;background:transparent;border-bottom:1px solid #e8e8e8;border-radius:2px 2px 0 0;zoom:1}.anji-card .card-head .main-card-header-button{position:absolute;right:20px}.anji-card .card-body{padding:24px;zoom:1}.el-form-item .el-form-item__label,.el-form-item__content,.el-input__icon{line-height:28px}.el-input--suffix .el-input__inner,.el-input .el-input__inner{height:28px;line-height:28px}.el-button{padding:7px 15px;font-size:12px;border-radius:3px}.el-dropdown-menu__item{min-width:80px;max-width:110px}.el-dropdown-menu__item .el-button--text{margin-left:0}.el-dropdown-menu__item:focus,.el-dropdown-menu__item:not(.is-disabled):hover{background:none!important}.el-table td{padding:6px 0}.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .28s;transition:opacity .28s}.fade-enter,.fade-leave-active{opacity:0}.fade-transform-enter-active,.fade-transform-leave-active{-webkit-transition:all .5s;transition:all .5s}.fade-transform-enter{opacity:0;-webkit-transform:translateX(-30px);transform:translateX(-30px)}.fade-transform-leave-to{opacity:0;-webkit-transform:translateX(30px);transform:translateX(30px)}.breadcrumb-enter-active,.breadcrumb-leave-active{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-enter,.breadcrumb-leave-active{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}.breadcrumb-move{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-leave-active{position:absolute}.el-upload input[type=file]{display:none!important}.el-upload__input{display:none}.el-table--border th.gutter:last-of-type{display:block!important;width:17px!important}.el-dialog{-webkit-transform:none;transform:none;left:0;position:relative;margin:0 auto}.el-dialog .el-dialog__header{background-color:#304da7;color:#fff}.el-dialog .el-dialog__header .el-dialog__headerbtn i,.el-dialog .el-dialog__header .el-dialog__title{color:#fff}.el-tooltip__popper{max-width:80%}.upload-container .el-upload{width:100%}.upload-container .el-upload .el-upload-dragger{width:100%;height:200px}.el-input-group{display:inline-table!important}.input-with-select .el-input-group__prepend .el-select{width:105px}.el-form--inline .el-form-item{width:45%;margin-right:25px}.el-form--inline .el-form-item .el-form-item__label{font-size:12px;line-height:17px;padding:0 0 5px}.el-form--inline .el-form-item .el-form-item__content .el-input .el-input__prefix{left:0;background-color:#f5f7fa;color:#909399;vertical-align:middle;display:table-cell;border:1px solid #dcdfe6;border-radius:4px;width:40px;height:98%;white-space:nowrap;border-top-right-radius:0;border-bottom-right-radius:0}#app .main-container{min-height:100%;-webkit-transition:margin-left .28s;transition:margin-left .28s;margin-left:180px;position:relative}#app .sidebar-container{-webkit-transition:width .28s;transition:width .28s;width:180px!important;height:100%;position:fixed;font-size:0;top:0;bottom:0;left:0;z-index:1001;overflow:hidden;-webkit-box-shadow:1px 1px 4px #e7eeff;box-shadow:1px 1px 4px #e7eeff}#app .sidebar-container .horizontal-collapse-transition{-webkit-transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out;transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out}#app .sidebar-container .el-scrollbar__bar.is-vertical{right:0}#app .sidebar-container .scrollbar-wrapper{overflow-x:hidden!important}#app .sidebar-container .scrollbar-wrapper .el-scrollbar__view{height:calc(100vh - 70px)}#app .sidebar-container .is-horizontal{display:none}#app .sidebar-container a{display:inline-block;width:100%;overflow:hidden}#app .sidebar-container .svg-icon{margin-right:16px}#app .sidebar-container .el-menu{border:none;height:100%;width:100%!important}#app .sidebar-container .is-active>.el-submenu__title{color:#333!important}#app .hideSidebar .sidebar-container{width:56px!important}#app .hideSidebar .sidebar-container .iconfont{font-size:24px;margin-left:5px}#app .hideSidebar .main-container{margin-left:56px}#app .hideSidebar .submenu-title-noDropdown{padding-left:10px!important;position:relative}#app .hideSidebar .submenu-title-noDropdown .el-tooltip{padding:0 10px!important}#app .hideSidebar .el-submenu{overflow:hidden}#app .hideSidebar .el-submenu>.el-submenu__title{padding-left:10px!important}#app .hideSidebar .el-submenu>.el-submenu__title .el-submenu__icon-arrow{display:none}#app .hideSidebar .el-menu--collapse .el-submenu>.el-submenu__title>span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}#app .sidebar-container .el-submenu .el-menu-item,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title{min-width:180px!important;background-color:#fff!important}#app .sidebar-container .el-submenu .el-menu-item:hover,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title:hover{color:#406be0!important;font-weight:700}#app .el-menu-item.is-active{border-right:3px solid #409eff}#app .el-menu--collapse .el-menu .el-submenu{min-width:180px!important}#app .mobile .main-container{margin-left:0}#app .mobile .sidebar-container{-webkit-transition:-webkit-transform .28s;transition:-webkit-transform .28s;transition:transform .28s;transition:transform .28s,-webkit-transform .28s;width:180px!important}#app .mobile.hideSidebar .sidebar-container{-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transform:translate3d(-180px,0,0);transform:translate3d(-180px,0,0)}#app .withoutAnimation .main-container,#app .withoutAnimation .sidebar-container{-webkit-transition:none;transition:none}.el-menu--vertical>.el-menu .svg-icon{margin-right:16px}body{height:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif}li,ol,ul{margin:0;padding:0}html{height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-overflow-style:none;scrollbar-width:none}html::-webkit-scrollbar{display:none}.el-image-viewer__close{color:#fff}label{font-weight:700}#app{height:100%}*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit}a,a:active,a:focus,a:hover,div:focus{outline:none}a,a:focus,a:hover{cursor:pointer;color:inherit;text-decoration:none}.clearfix:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.app-main{min-height:100%}.app-container{padding:20px;background:#fff}.filter-container{padding-bottom:10px}.filter-container .filter-item{display:inline-block;vertical-align:middle;margin-bottom:10px}.float-r{float:right}.float-l{float:left}.log .el-collapse{border-top:0;border-bottom:0}.log .el-collapse-item__header{height:40px;line-height:40px;cursor:pointer;border:1px solid #fff;background:rgba(145,163,177,.15);font-size:14px;color:#666;-webkit-transition:border-bottom-color .3s;transition:border-bottom-color .3s;outline:0;padding:0 20px}.log .el-collapse-item__wrap{will-change:height;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box;border-bottom:1px solid #fff;background:#263c7c}.log .el-collapse-item__content{font-size:14px;color:#fff;padding:20px}.log .el-collapse-item__arrow{margin-top:14px;float:right;margin-right:-77px}.log .icon-btn_style,.log .icon-btn_style:hover{background:none;border:0;padding:0}.my-dialog .el-dialog{background:#062b69;border:1px solid #5ddaf6}.my-dialog .el-dialog__header{border-bottom:1px solid #5ddaf6;text-align:center}.my-dialog .el-dialog__title{color:#5cdcf9}.my-dialog .el-input__inner{background:#091e43;border-color:#254e97}.my-dialog .el-date-editor .el-range__icon{color:#5cdcf9}.my-dialog input{background:#091e43}.my-dialog .el-date-editor .el-range-input{color:#5cdcf9}.my-dialog .form-handle .el-form-item__label{color:#5cdcf9;font-weight:500}.my-dialog .el-form-item{margin-bottom:10px}.my-dialog .el-select:hover .el-input__inner,.my-dialog .el-textarea__inner{background-color:#091e43;border-color:#254e97;border-bottom:1px solid #254e97}.my-dialog .el-button--blue{color:#fff;background-color:#224788;border-color:#224788}.my-dialog .el-button--green{color:#fff;background-color:#2092ad;border-color:#2092ad}.el-input--prefix .el-input__inner{padding-left:45px}.el-input-group__append,.el-input-group__prepend{color:#333}.preview-form{height:auto!important;overflow-y:auto!important}.x-spreadsheet-toolbar-btns{margin-left:30px!important}.ml10{margin-left:10px}.Customized .CodeMirror{font-family:monospace;height:190px!important;color:#000;direction:ltr}.jsoneditor-vue{height:100%}.printSet{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAALpQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqyRq8wAAAD10Uk5TAB2VubscD+RdXHWBIoJ2bm8muOru9vUG2dgu+T+lFjMYUVYEd1UDwL9QTXOoZnEy7czjMQkINtPSChF/lOVoZG8AAAABYktHRACIBR1IAAAACXBIWXMAAABIAAAASABGyWs+AAAA8ElEQVRIx+WVaQ/BQBCGi1LqZt2lFHUfdSvv//9bEtpEZHZpZCV4Pk72+TC7s/Mqyn8TCkdUkkg4Sp2PaeCixQghDgEJQtCBZIokDeiEkAGydHM5IPOmkC8UGSsBZUZSBkqMFQt5/3ylipeoVTyhDjTYUxpA3RMMoPn8XZuAIUtomWY7kHC7VplCR1UtuU1/kdC1ehz6XUqwB/w5HdqEMBJN9pgQJsB0RjIF5oQg/KL6zwkLYOk4mkhYOc4SWHuFjb+G+cKV1dav7PavCIfdXe3ouieRcHLd42NZ6jL+kBA4gQJnXOAUVaLcnD6TOS2LC62MgVSUf9P3AAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTA0LTIyVDE1OjMzOjQyKzA4OjAwhdQCLwAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMS0wNC0yMlQxNTozMzo0MiswODowMPSJupMAAABKdEVYdHN2ZzpiYXNlLXVyaQBmaWxlOi8vL2hvbWUvYWRtaW4vaWNvbi1mb250L3RtcC9pY29uX2VqcHUyYnEwOHUvYmlhbnp1MTQuc3ZnqKrOEwAAAABJRU5ErkJggg==)!important}.printSet,.qrCodes{background-size:19px;background-position:0 0;background-repeat:no-repeat;position:absolute;opacity:1!important}.qrCodes{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAdRQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXTHcCgAAAJt0Uk5TAAI2YmZSGBVGW11fYDkBBafvSFTwofGfmbH+2AMG46ygR3aJ3Bsj04V1d4DXHijKeZeSIkno7vj8z3/Z0IcdJ8xox0yVJT1EQhNPxjszVff2DQtQQA6WmNoSIYyusJ5kCG6qgxlrqRFvHEUyD86C/bRc1OsJDLc/IG2Gtn4uOHzm86g1dFOaCjxwakHB6kM62x/pkIii57tynQcsTZN4AAAAAWJLR0QAiAUdSAAAAAlwSFlzAAAASAAAAEgARslrPgAAAhRJREFUSMftlGlTE0EQhjsEgQQxQCDGQLhUDARBQECCRMLhCmJQTkEDBOVSESOiHCJyeAQvvNH+s6Z3yexMJVsbyi9U6fthp/LMPDWZ7tkF+HdjSDImsxxJUWBqmslsNqcfJWbMOMavt2Qin6xsgtYcAebyhhVtx+0sJxx5+QDOAixUWVEWFnNCCZ7kNzyFpwFK8QzPXFjG/SpHNz9ZgWcBKrGKZ2489/dCWrXdXlMrCufr6hsu2DWERiqGSxQ8xJo0hIs02SwLXoBLouDRFRLYoUX9S0zwEWvVENoiDWrvEIX8y5J0pVO/rN6D9sFLnW7RFrrwavc1Fn/P9RsAvTZbn8r6WzGdEwbyhIuJgwSHRHZzmN9w5NbtAMvomIXYeHBCZRN37sIhz/BkdZGc3EBgqt2vvI3TM7M03DNFHvd9Bn79gzmxIh6Z+vAhDQXz4wCPsJsXQvjY5PdnS0qSGxaeEJ2RbyIs4CLAU3zGCzGdXqJhGVeYsIoZovA8jlA7tcaEF+sWfWE/L7E3pkiKMFTvwI02VRjZ3KJhmz5Br16/iRUqqEBu/gwutmIV3+oLYeXQoR1ZeJewUEdniCu8JyEYI3xQyhpH6PwoSZ8MWkK/flnDQuMEoUy5NdHs4mcdoQu/fP3G8t3xw6IjOH8Kl7XHKNMQ7tEwlxPRf813CK12WrfD0QRN0blS+TlAb/PvWfifxPMHpTcZyy9xNPQAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjEtMDQtMjJUMTU6MzM6NDIrMDg6MDCF1AIvAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIxLTA0LTIyVDE1OjMzOjQyKzA4OjAw9Im6kwAAAEV0RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fZWpwdTJicTA4dS9pY28uc3ZnaHoxTAAAAABJRU5ErkJggg==)!important}.barCodes{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAANJQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1K5a2gAAAEV0Uk5TAAZfoLi7iwGDXgUg1fYJAvHTH9hpRUQjC12hap+zprmRxX0XzWiJ9SL6/BPkK8xDtIgHCIokKkKdnrC8dRTEYtlcIdGCHuOWwgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAAAEgAAABIAEbJaz4AAAEeSURBVEjH7ZVbU8IwEIUDRZAKlDa9YQuKF+pdEFBQQBD2//8lo23jZsZ2hwcfHDgPZ7rbfNl2JpPD2A6rUNRKB4nKlaR5mHZKWlVX1x/V4Ef1Rtw0mqhpWsr+NeC24yby5DZpx7E5mHhGEbif/8k+hxYqj8GmfjKAEFVtcCjAgbYCuBTg7gEJdDrCjJNT4X73TPj5xeVvQC+6ih+ub4Tdwp3we3gQ/gj9+I0XDfDAJ0YBcomqHIDtgb8HhjQwxOtHkUcB43oPAfLwZQMZpxUBz9/ACwFMpsKM16/pjbeZ8PniPRfI1j8AtrwqtW0v4yp93S9hhcqCCTyQgTJO2x8yUIIlrJXQskwqstaWOlJvhTIUR2kobmQohiud7bA+AabUTRCFwiQSAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTA1LTA2VDE2OjA2OjI2KzA4OjAwohqyKAAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMS0wNS0wNlQxNjowNjoyNiswODowMNNHCpQAAABNdEVYdHN2ZzpiYXNlLXVyaQBmaWxlOi8vL2hvbWUvYWRtaW4vaWNvbi1mb250L3RtcC9pY29uX2l5MnlydGhyZ3hzL3RpYW94aW5nbWEuc3Zn7lU3WwAAAABJRU5ErkJggg==)!important;background-size:19px;background-position:0 0;background-repeat:no-repeat;position:absolute;opacity:1!important}.collapse-input-style .el-input__inner,.collapse-input-style .el-textarea__inner{background:#263445!important;border:1px solid #3f5673;color:#a8e3ff}.collapse-input-style .el-slider__runway{height:2px;background-color:#5e6b82}.collapse-input-style .el-slider__bar{height:2px}.collapse-input-style .el-slider__button-wrapper{top:-17px}.collapse-input-style .el-slider__button{width:14px;height:14px}.collapse-input-style .el-switch__core{background-color:#5e6b82;border:1px solid #3f5673}.collapse-input-style .el-input-group__append,.collapse-input-style .el-input-group__prepend,.collapse-input-style .el-input-number__decrease,.collapse-input-style .el-input-number__increase{background:#5e6b82!important;border:1px solid #3f5673;color:#a8e3ff}.collapse-input-style .el-input-number.is-controls-right .el-input-number__increase{height:15px;border-bottom:1px solid #3f5673}.collapse-input-style .el-input-number.is-controls-right .el-input-number__decrease{border-left:1px solid #3f5673}.collapse-input-style .el-form-item__label{font-size:12px;color:#bfcbd9!important;font-weight:400!important}.table-danger,.table-info,.table-primary,.table-success,.table-warning{border-radius:3px;padding:2px 5px;border-width:1px;border-style:solid}.table-primary{background:rgba(32,182,249,.1);border-color:rgba(32,182,249,.2);color:#20b6f9}.table-success{background:rgba(0,226,68,.1);border-color:rgba(0,226,68,.2);color:#00e244}.table-info{background:hsla(0,0%,84.7%,.1);border-color:hsla(0,0%,84.7%,.2);color:#d8d8d8}.table-warning{background:rgba(255,216,40,.1);border-color:rgba(255,216,40,.2);color:#f1b900}.table-danger{background:rgba(249,32,32,.1);border-color:rgba(249,32,32,.2);color:#f92020}@font-face{font-family:iconfont;src:url(/static/fonts/iconfont.36da2e0.woff2) format("woff2"),url(/static/fonts/iconfont.1807587.woff) format("woff"),url(/static/fonts/iconfont.7f0b09e.ttf) format("truetype")}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.iconciyuntu:before{content:"\E7AF"}.icondaochu:before{content:"\E618"}.icondaoru:before{content:"\E608"}.iconduibitupu:before{content:"\E9CA"}.iconzhexian:before{content:"\E635"}.iconbianzu23:before{content:"\E621"}.iconduidietu:before{content:"\E61F"}.iconfill_folder:before{content:"\E645"}.iconzidianxiang:before{content:"\E7DF"}.iconAPIwangguan:before{content:"\E66B"}.icondatabase:before{content:"\E7B6"}.iconbaifenbi:before{content:"\E616"}.iconfolder-o:before{content:"\E70F"}.iconjinlingyingcaiwangtubiao01:before{content:"\E724"}.iconleft-copy:before{content:"\E6AF"}.iconfuzhi1:before{content:"\E626"}.iconzhongguoditu:before{content:"\E738"}.iconbiaoge:before{content:"\E625"}.icongexingzhuangban:before{content:"\E646"}.iconyibiaopan-chaobiao:before{content:"\E72E"}.iconnandinggeermeiguitu:before{content:"\E851"}.iconzhankai:before{content:"\E631"}.iconexcel:before{content:"\E650"}.iconbaocun:before{content:"\E737"}.iconguanbi:before{content:"\E6C5"}.iconpdf:before{content:"\E614"}.iconfuzhi:before{content:"\E61E"}.icon020kongxinbingtu:before{content:"\E78C"}.iconshijian:before{content:"\E662"}.iconsave:before{content:"\E6F6"}.icontupian:before{content:"\E612"}.iconzhuzhuangtu:before{content:"\E691"}.iconchaolianjie:before{content:"\E65F"}.iconziyuan:before{content:"\E605"}.iconshipin:before{content:"\ECC1"}.iconkuangjia:before{content:"\E66A"}.iconyulan:before{content:"\E728"}.iconhengxiangwenzi:before{content:"\E601"}.iconicon_tubiao_bingtu:before{content:"\E602"}.iconloudoutu:before{content:"\E6D5"}.icontubiaozhexiantu:before{content:"\E630"}.iconzhuxiantu:before{content:"\E607"}.icontupian1:before{content:"\E81D"}.iconyibiaopan:before{content:"\E706"}.icon1:before{content:"\E63B"}.iconxiazai:before{content:"\E639"}.icon11-04:before{content:"\E784"}.iconyouxiang:before{content:"\E769"}.iconbangdingshouji:before{content:"\E64D"}.iconshouji:before{content:"\E854"}.icon52-shouji:before{content:"\E871"}.iconhome:before{content:"\E610"}.iconhome2:before{content:"\E61A"}.iconKafka:before{content:"\E65A"}.iconshujujieruKafkajiqun:before{content:"\E64F"}.iconkafka:before{content:"\E6F2"}.iconelasticsearch-Elasticsearch:before{content:"\E853"}.iconapachekafka:before{content:"\EB3F"}.iconelasticsearch:before{content:"\EB85"}.iconwentifankui:before{content:"\E8D1"}.iconwentifankui1:before{content:"\E70E"}.iconwentifankui2:before{content:"\E643"}.iconalikafkaxiaoxiduilieKafka:before{content:"\E8A4"}.iconxiangmuchaxun-chakanshebei:before{content:"\E682"}.iconelasticsearchElasticsearch:before{content:"\E6A1"}.icon511tongji_shutu:before{content:"\E64A"}.iconfenxiang1:before{content:"\E615"}.iconfenxiang2:before{content:"\E60F"}.iconfenxiang_2:before{content:"\E600"}.iconNMStubiao-:before{content:"\E628"}.iconwanchenganquanshijian:before{content:"\E68A"}.iconeventbridgexiaoxishijianzongxian:before{content:"\E74D"}.iconshu:before{content:"\E629"}.iconshebeiguanji:before{content:"\E61D"}.iconhaofangtuo400iconfontduanxin:before{content:"\E6D8"}.iconnavicon-ywcs:before{content:"\E661"}.iconliebiao:before{content:"\E660"}.iconbianji:before{content:"\E60C"}.iconyoujian:before{content:"\E63A"}.iconshejiaodingding:before{content:"\E678"}.iconzidianguanli:before{content:"\E624"}.icontubiao:before{content:"\E73F"}.icondingding:before{content:"\E690"}.iconduanxin:before{content:"\E603"}.icondirectmailyoujiantuisong:before{content:"\E714"}.iconshebeisheshi:before{content:"\E61C"}.icontongzhi:before{content:"\E606"}.iconrizhi:before{content:"\E663"}.iconchufaqipeizhi-hui:before{content:"\E689"}.iconvcsshijuejisuanfuwu:before{content:"\E759"}.iconbar_icon_shebei:before{content:"\E60A"}.iconuser-before:before{content:"\E617"}.iconkemuweihutubiao:before{content:"\E60B"}.iconaccounting-subjects:before{content:"\E677"}.iconRectangleCopy:before{content:"\E6DD"}.iconchengbenshujuguanli:before{content:"\E6C7"}.iconjibenshuju:before{content:"\E71D"}.iconB-shengshiqu:before{content:"\E72D"}.iconzuzhijigou:before{content:"\E66E"}.iconanniu:before{content:"\E8C5"}.iconcaidan2:before{content:"\E61B"}.iconwenhao:before{content:"\E67F"}.iconlajitong:before{content:"\E636"}.iconzhongzhimima:before{content:"\E620"}.iconshezhi:before{content:"\E68F"}.iconzhongzhuan:before{content:"\E69B"}.iconadd:before{content:"\E6B9"}.iconminus:before{content:"\E6BA"}.iconpassword:before{content:"\E622"}.iconyonghu:before{content:"\E604"}.iconquanxian:before{content:"\E633"}.iconjiaose1:before{content:"\E64C"}.iconzidian:before{content:"\E716"}.iconcssz:before{content:"\E672"}.iconbianji1:before{content:"\E642"}.icondfzq-:before{content:"\E609"}.iconfenxiang:before{content:"\E641"}.iconshouquan1:before{content:"\E634"}.iconjiantou:before{content:"\E653"}.iconjiantou-copy-copy:before{content:"\E654"}.app-breadcrumb.el-breadcrumb[data-v-2b5df056]{display:inline-block;font-size:14px;line-height:50px;margin-left:10px;color:#fff}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-2b5df056]{color:#333;cursor:text}.hamburger[data-v-54298247]{display:inline-block;cursor:pointer;width:20px;height:19px;-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-transition:.38s;transition:.38s;-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.hamburger.is-active[data-v-54298247]{-webkit-transform:rotate(0deg);transform:rotate(0deg)}.navbar[data-v-1538a3b3]{height:50px;line-height:50px;border-radius:0!important;background:#fff!important}.navbar .hamburger-container[data-v-1538a3b3]{line-height:57px;height:49px;float:left;padding:0 10px;background:#fff}.navbar .screenfull[data-v-1538a3b3]{position:absolute;right:90px;top:16px;color:red}.navbar .avatar-container[data-v-1538a3b3]{height:50px;display:inline-block;position:absolute;right:35px}.navbar .avatar-container .avatar-wrapper[data-v-1538a3b3]{line-height:50px;cursor:pointer;margin-top:5px;position:relative}.navbar .avatar-container .avatar-wrapper .user-avatar[data-v-1538a3b3]{width:40px;height:40px;border-radius:10px;vertical-align:text-bottom}.navbar .avatar-container .avatar-wrapper .user-name[data-v-1538a3b3]{color:#333}.navbar .avatar-container .avatar-wrapper .el-icon-caret-bottom[data-v-1538a3b3]{color:#333;position:absolute;right:-20px;top:21px;font-size:12px}.navbar .avatar-container .avatar-wrapper .user[data-v-1538a3b3]{color:#333;font-size:16px}.password-box .password-tips[data-v-1538a3b3]{position:absolute;right:0;top:100%;line-height:1;font-size:13px;padding-top:4px}.el-popper[data-v-1538a3b3]{padding:0}.el-dropdown-menu__item--divided[data-v-1538a3b3]{margin-top:0}.el-submenu__title i[data-v-2b0b07e3]{color:#333;margin-right:5px}.el-menu-item i[data-v-2b0b07e3]{margin-right:5px}.admin-title[data-v-38cf134e]{text-align:center;width:100%;font-weight:500;color:#333;font-size:14px;background:#fff}.admin-title .con[data-v-38cf134e]{margin:auto}.admin-title .con img[data-v-38cf134e]{margin-top:10px}.admin-title .con .version[data-v-38cf134e]{display:inline-block;font-size:12px;color:#fff;background:#4fadfd;padding:2px;border-radius:10px}.admin-title[data-v-38cf134e]:hover{cursor:pointer}.app-main[data-v-7d0fa904]{height:calc(100vh - 50px);position:relative;overflow:auto;background:#f5f8fa}.app-wrapper[data-v-11b67c86]{position:relative;height:100%;width:100%}.app-wrapper[data-v-11b67c86]:after{content:"";display:table;clear:both}.app-wrapper.mobile.openSidebar[data-v-11b67c86]{position:fixed;top:0}.drawer-bg[data-v-11b67c86]{background:#000;opacity:.3;width:100%;top:0;height:100%;position:absolute;z-index:999}.filterInput[data-v-0b9e713f]{margin-bottom:20px}.input_tips[data-v-36f1f9f6]{position:absolute;margin-top:-8px}.input_tips .svg-icon[data-v-36f1f9f6]{font-size:20px;color:#470808}.table-add-row-button[data-v-563fdf1c]{width:100%;margin-top:0;margin-bottom:0;line-height:1.499;position:relative;display:inline-block;font-weight:400;white-space:nowrap;text-align:center;background-image:none;-webkit-box-shadow:0 2px 0 rgba(0,0,0,.015);box-shadow:0 2px 0 rgba(0,0,0,.015);cursor:pointer;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-user-select:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-ms-touch-action:manipulation;touch-action:manipulation;height:32px;padding:0 15px;font-size:14px;border-radius:4px;color:rgba(0,0,0,.65);background-color:#fff;border:1px solid #d9d9d9}.notfull-screen[data-v-283ef73e] .el-dialog__body{background-color:#f0f2f5;padding:5px;max-height:60vh;overflow:auto}.full-screen[data-v-283ef73e] .el-dialog__body{background-color:#f0f2f5;padding:5px;height:calc(100vh - 110px);overflow:auto}.contentmenu[data-v-15ce4a3d]{position:fixed;z-index:99999;list-style:none;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2);padding:0;background:#fff;cursor:pointer}.right-container .main_part[data-v-1b349198],.right-container[data-v-1b349198]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.right-container .main_part[data-v-1b349198]{background:#fff;border-radius:4px;padding:12px 20px;margin-top:4px;height:100%;position:relative}[data-v-1b349198] .button{-webkit-box-shadow:0 0 6px 0 rgba(0,0,0,.08);box-shadow:0 0 6px 0 rgba(0,0,0,.08);border-radius:6px}[data-v-1b349198] .el-table .cell,[data-v-1b349198] .el-table th>.cell{text-align:center}[data-v-1b349198] .elTable{margin:10px 0 50px}.el-table[data-v-1b349198] td,.el-table[data-v-1b349198] th{padding:0;height:36px}[data-v-1b349198] .el-table--striped .el-table__body tr.el-table__row--striped td{background:#f9fbfd}.screenFlex[data-v-1b349198]{display:-webkit-box;display:-ms-flexbox;display:flex}.searchFormFlex[data-v-1b349198]{-webkit-box-flex:1;-ms-flex:1;flex:1}.screenButtons[data-v-1b349198]{padding-left:20px}.style-btn[data-v-1b349198]{pointer-events:none}.page-container[data-v-1b349198]{height:100%;position:relative}.page-container .left-container[data-v-1b349198]{width:20%;position:absolute;top:0;left:0;background:#fff;border-radius:4px 0 0 4px;padding:20px 20px 0;overflow:hidden;overflow-y:auto;height:100%}.page-container .right-container[data-v-1b349198]{width:calc(80% - 5px);position:absolute;top:0;right:0;background:#fff;border-radius:0 4px 4px 0;padding:20px 20px 0;height:100%}.el-table .cell[data-v-1b349198],.el-table td div[data-v-1b349198]{overflow:hidden;text-overflow:ellipsis}.el-dropdown[data-v-1b349198]{font-size:12px;display:inline;color:#5887fb;cursor:pointer}.el-dropdown-menu--mini .el-dropdown-menu__item[data-v-1b349198]{min-width:80px;max-width:110px;float:right}.el-dropdown-menu--mini .el-dropdown-menu__item .el-button--text[data-v-1b349198]{float:right}.el-dropdown-menu--mini .el-dropdown-menu__item[data-v-1b349198]:hover{background:none!important}.el-dropdown-menu--mini .el-dropdown-menu__item .el-button--text[data-v-1b349198]:focus,.el-dropdown-menu--mini .el-dropdown-menu__item[data-v-1b349198] .el-button--text:hover{color:#799ffc!important;background-color:#ecf5ff!important;border-color:transparent}.el-dropdown-menu--mini .el-dropdown-menu__item .el-button--mini[data-v-1b349198]{float:right}.el-dropdown-menu--mini .el-dropdown-menu__item .el-button--text[data-v-1b349198]:focus,.el-dropdown-menu--mini .el-dropdown-menu__item .el-button--text[data-v-1b349198]:hover{color:#799ffc;border-color:transparent}.el-dropdown-menu--mini .el-dropdown-menu__item .el-button+.el-button[data-v-1b349198]{margin-left:0!important;float:right}.el-pagination.is-background .btn-next[data-v-1b349198],.el-pagination.is-background .el-pager li[data-v-1b349198],[data-v-1b349198] .el-pagination.is-background .btn-prev{margin:0 5px;background-color:#f4f4f5;color:#606266;min-width:30px;border-radius:2px}[data-v-1b349198] .el-pagination.is-background .el-pager li:not(.disabled).active{background-color:#5887fb;color:#fff;border-radius:4px}.page_bottom[data-v-1b349198]{width:100%;position:absolute;bottom:0}.pagination[data-v-1b349198]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:14px;margin-right:20px}.el-table[data-v-1b349198] .warning-row{color:red!important}.el-table[data-v-1b349198] .bgColor{background:#d9ecff}[data-v-1b349198] .edit_button{width:22px;height:22px;padding:0;margin:0 5px 0 0}[data-v-1b349198] .edit_button /deep/ i{font-size:30px}.el-form-item--mini.el-form-item[data-v-1b349198]{margin-bottom:12px}.el-table[data-v-1b349198] .success-row{background:#f9fbfd!important}.contextMenu[data-v-1b349198]{width:100px}.contextMenu .contextMenuItem[data-v-1b349198]{width:100%;font-size:12px;line-height:20px;padding:5px}.contextMenu[data-v-1b349198]:hover{background:#f9fbfd}.el-select[data-v-b32efa94]{width:100%}.el-select-dropdown__item.is-disabled[data-v-b32efa94],.el-select-dropdown__item.selected[data-v-b32efa94]{text-align:center}.uploadImage .el-upload--picture-card[data-v-94cf27d6]{width:60px;height:60px;line-height:65px}.uploadImage .el-upload-list__item[data-v-94cf27d6]{width:60px;height:60px}.hide_box .el-upload--picture-card[data-v-94cf27d6]{display:none}.el-upload-list__item[data-v-94cf27d6]{line-height:1.5}.el-upload-list--picture-card .el-upload-list__item-actions[data-v-94cf27d6]{text-align:left;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.iconFont[data-v-94cf27d6],.imgBox[data-v-94cf27d6]{width:100%!important;height:100%!important} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-0f7e.59e9fd0d.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-0f7e.59e9fd0d.css index db1677dc9..1c1123c1f 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-0f7e.59e9fd0d.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-0f7e.59e9fd0d.css @@ -1 +1 @@ -.el-upload[data-v-52313b6e]{display:inline-block;margin-right:20px} \ No newline at end of file +.el-upload[data-v-52313b6e]{display:inline-block;margin-right:20px} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-191b.77582ee8.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-191b.77582ee8.css index 6bab91e5b..5cc47f384 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-191b.77582ee8.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-191b.77582ee8.css @@ -1 +1 @@ -.app-breadcrumb.el-breadcrumb[data-v-23d4be90]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-23d4be90]{color:#97a8be;cursor:text} \ No newline at end of file +.app-breadcrumb.el-breadcrumb[data-v-23d4be90]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-23d4be90]{color:#97a8be;cursor:text} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-293b.1df1af58.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-293b.1df1af58.css index 69a60b9aa..71cf7ed6f 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-293b.1df1af58.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-293b.1df1af58.css @@ -1 +1 @@ -.imagebox[data-v-92e12b86],.text[data-v-6b04e136],.text[data-v-6da4b633],.text[data-v-ed2d4c6e],a[data-v-6ebd3276]{width:100%;height:100%;overflow:hidden}.imagebox img[data-v-92e12b86]{width:100%;height:100%}.startImg[data-v-92e12b86]{-webkit-animation:turn-data-v-92e12b86 1s linear infinite;animation:turn-data-v-92e12b86 1s linear infinite}@-webkit-keyframes turn-data-v-92e12b86{0%{-webkit-transform:rotate(0deg)}25%{-webkit-transform:rotate(90deg)}50%{-webkit-transform:rotate(180deg)}75%{-webkit-transform:rotate(270deg)}to{-webkit-transform:rotate(1turn)}}@keyframes turn-data-v-92e12b86{0%{-webkit-transform:rotate(0deg)}25%{-webkit-transform:rotate(90deg)}50%{-webkit-transform:rotate(180deg)}75%{-webkit-transform:rotate(270deg)}to{-webkit-transform:rotate(1turn)}}.slideBox[data-v-27e113c0]{width:450px;height:230px;overflow:hidden;position:relative}.slideBox .hd[data-v-27e113c0]{height:15px;overflow:hidden;position:absolute;right:5px;bottom:5px;z-index:1}.slideBox .hd ul[data-v-27e113c0]{overflow:hidden;zoom:1;float:left}.slideBox .hd ul li[data-v-27e113c0]{float:left;margin-right:2px;width:15px;height:15px;line-height:14px;text-align:center;background:#fff;cursor:pointer}.slideBox .hd ul li.on[data-v-27e113c0]{background:red;color:#fff}.slideBox .bd[data-v-27e113c0]{position:relative;height:100%;z-index:0}.slideBox .bd li[data-v-27e113c0]{zoom:1;vertical-align:middle}.slideBox .bd img[data-v-27e113c0]{width:450px;height:230px;display:block}.slideBox .next[data-v-27e113c0],.slideBox .prev[data-v-27e113c0]{position:absolute;left:3%;top:50%;margin-top:-25px;display:block;width:32px;height:40px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOsAAAAgCAMAAADE+3+QAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkYyNjE4RUVDRjgxMTFFMjk1ODhDQkIzNDg3MjdGNUEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkYyNjE4RUZDRjgxMTFFMjk1ODhDQkIzNDg3MjdGNUEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyRjI2MThFQ0NGODExMUUyOTU4OENCQjM0ODcyN0Y1QSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyRjI2MThFRENGODExMUUyOTU4OENCQjM0ODcyN0Y1QSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PmLDzTcAAAAJUExURcHBwf///////wCiYf4AAAADdFJOU///ANfKDUEAAACjSURBVHja5JnRDUQhDMNM9h/6STfCgeKPsIBjhGgpnHPy7wLyYLUicC5IPJGtJfi5ngsSL1Q7AYgsW8QTV7YJJ6psFU1M2S6YiLJlLPFk21CiydaRaOT+7mKxhYOERDcuCBy+cheiJHBqHEYGqZzPug6d4aG7aajmDPUSQz3iUO8/9KYbeqsPzWCGZmtDM9OhWfjSH8fY31UuSMkT2UqET4ABAHo9NyVXKF5RAAAAAElFTkSuQmCC) -110px 5px no-repeat;filter:alpha(opacity=50);opacity:.5}.slideBox .next[data-v-27e113c0]{left:auto;right:3%;background-position:8px 5px}.slideBox .next[data-v-27e113c0]:hover,.slideBox .prev[data-v-27e113c0]:hover{filter:alpha(opacity=100);opacity:1}.slideBox .nextStop[data-v-27e113c0],.slideBox .prevStop[data-v-27e113c0]{display:none}.container[data-v-2d27c298]{width:100%;height:100%}video[data-v-2d27c298]{width:100%;height:100%;display:block}iframe[data-v-537c80f2]{width:100%;height:100%;border:none}.echarts[data-v-0f247c08],.echarts[data-v-2dcc2436],.echarts[data-v-3fe2ff9e],.echarts[data-v-6d3f1fb2],.echarts[data-v-0800a9a0],.echarts[data-v-a83b2528],.echarts[data-v-b6bc8966],.echarts[data-v-c05cc2de]{width:100%;height:100%;overflow:hidden}.txtScroll-top[data-v-ff48be56]{overflow:hidden;position:relative}.title[data-v-ff48be56]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;width:100%}.title>div[data-v-ff48be56]{height:50px;line-height:50px;width:100%}.txtScroll-top .bd[data-v-ff48be56]{width:100%}.txtScroll-top .infoList li[data-v-ff48be56]{height:50px;line-height:50px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.txtScroll-top .infoList li>div[data-v-ff48be56]{width:100%}.echartMap[data-v-63da0746]{width:100%;height:100%}.echarts[data-v-63da0746],.echarts[data-v-6988e2c9]{width:100%;height:100%;overflow:hidden}.echartMap[data-v-82db8fb2]{width:100%;height:100%}.echarts[data-v-0a794445],.echarts[data-v-3ae5e8e1],.echarts[data-v-7b252c5b],.echarts[data-v-15a4a600],.echarts[data-v-38f574cf],.echarts[data-v-82db8fb2],.echarts[data-v-491b0d10],.echarts[data-v-72490f16]{width:100%;height:100%;overflow:hidden}.layout[data-v-76397015]{width:100%;height:100%;text-align:center}.bottom-text[data-v-76397015]{width:100%;color:#a0a0a0;position:fixed;bottom:16px;z-index:9999} \ No newline at end of file +.imagebox[data-v-92e12b86],.text[data-v-6b04e136],.text[data-v-6da4b633],.text[data-v-ed2d4c6e],a[data-v-6ebd3276]{width:100%;height:100%;overflow:hidden}.imagebox img[data-v-92e12b86]{width:100%;height:100%}.startImg[data-v-92e12b86]{-webkit-animation:turn-data-v-92e12b86 1s linear infinite;animation:turn-data-v-92e12b86 1s linear infinite}@-webkit-keyframes turn-data-v-92e12b86{0%{-webkit-transform:rotate(0deg)}25%{-webkit-transform:rotate(90deg)}50%{-webkit-transform:rotate(180deg)}75%{-webkit-transform:rotate(270deg)}to{-webkit-transform:rotate(1turn)}}@keyframes turn-data-v-92e12b86{0%{-webkit-transform:rotate(0deg)}25%{-webkit-transform:rotate(90deg)}50%{-webkit-transform:rotate(180deg)}75%{-webkit-transform:rotate(270deg)}to{-webkit-transform:rotate(1turn)}}.slideBox[data-v-27e113c0]{width:450px;height:230px;overflow:hidden;position:relative}.slideBox .hd[data-v-27e113c0]{height:15px;overflow:hidden;position:absolute;right:5px;bottom:5px;z-index:1}.slideBox .hd ul[data-v-27e113c0]{overflow:hidden;zoom:1;float:left}.slideBox .hd ul li[data-v-27e113c0]{float:left;margin-right:2px;width:15px;height:15px;line-height:14px;text-align:center;background:#fff;cursor:pointer}.slideBox .hd ul li.on[data-v-27e113c0]{background:red;color:#fff}.slideBox .bd[data-v-27e113c0]{position:relative;height:100%;z-index:0}.slideBox .bd li[data-v-27e113c0]{zoom:1;vertical-align:middle}.slideBox .bd img[data-v-27e113c0]{width:450px;height:230px;display:block}.slideBox .next[data-v-27e113c0],.slideBox .prev[data-v-27e113c0]{position:absolute;left:3%;top:50%;margin-top:-25px;display:block;width:32px;height:40px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOsAAAAgCAMAAADE+3+QAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkYyNjE4RUVDRjgxMTFFMjk1ODhDQkIzNDg3MjdGNUEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkYyNjE4RUZDRjgxMTFFMjk1ODhDQkIzNDg3MjdGNUEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyRjI2MThFQ0NGODExMUUyOTU4OENCQjM0ODcyN0Y1QSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyRjI2MThFRENGODExMUUyOTU4OENCQjM0ODcyN0Y1QSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PmLDzTcAAAAJUExURcHBwf///////wCiYf4AAAADdFJOU///ANfKDUEAAACjSURBVHja5JnRDUQhDMNM9h/6STfCgeKPsIBjhGgpnHPy7wLyYLUicC5IPJGtJfi5ngsSL1Q7AYgsW8QTV7YJJ6psFU1M2S6YiLJlLPFk21CiydaRaOT+7mKxhYOERDcuCBy+cheiJHBqHEYGqZzPug6d4aG7aajmDPUSQz3iUO8/9KYbeqsPzWCGZmtDM9OhWfjSH8fY31UuSMkT2UqET4ABAHo9NyVXKF5RAAAAAElFTkSuQmCC) -110px 5px no-repeat;filter:alpha(opacity=50);opacity:.5}.slideBox .next[data-v-27e113c0]{left:auto;right:3%;background-position:8px 5px}.slideBox .next[data-v-27e113c0]:hover,.slideBox .prev[data-v-27e113c0]:hover{filter:alpha(opacity=100);opacity:1}.slideBox .nextStop[data-v-27e113c0],.slideBox .prevStop[data-v-27e113c0]{display:none}.container[data-v-2d27c298]{width:100%;height:100%}video[data-v-2d27c298]{width:100%;height:100%;display:block}iframe[data-v-537c80f2]{width:100%;height:100%;border:none}.echarts[data-v-0f247c08],.echarts[data-v-2dcc2436],.echarts[data-v-3fe2ff9e],.echarts[data-v-6d3f1fb2],.echarts[data-v-0800a9a0],.echarts[data-v-a83b2528],.echarts[data-v-b6bc8966],.echarts[data-v-c05cc2de]{width:100%;height:100%;overflow:hidden}.txtScroll-top[data-v-ff48be56]{overflow:hidden;position:relative}.title[data-v-ff48be56]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;width:100%}.title>div[data-v-ff48be56]{height:50px;line-height:50px;width:100%}.txtScroll-top .bd[data-v-ff48be56]{width:100%}.txtScroll-top .infoList li[data-v-ff48be56]{height:50px;line-height:50px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.txtScroll-top .infoList li>div[data-v-ff48be56]{width:100%}.echartMap[data-v-63da0746]{width:100%;height:100%}.echarts[data-v-63da0746],.echarts[data-v-6988e2c9]{width:100%;height:100%;overflow:hidden}.echartMap[data-v-82db8fb2]{width:100%;height:100%}.echarts[data-v-0a794445],.echarts[data-v-3ae5e8e1],.echarts[data-v-7b252c5b],.echarts[data-v-15a4a600],.echarts[data-v-38f574cf],.echarts[data-v-82db8fb2],.echarts[data-v-491b0d10],.echarts[data-v-72490f16]{width:100%;height:100%;overflow:hidden}.layout[data-v-76397015]{width:100%;height:100%;text-align:center}.bottom-text[data-v-76397015]{width:100%;color:#a0a0a0;position:fixed;bottom:16px;z-index:9999} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-306e.a1ddaa4e.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-306e.a1ddaa4e.css index c8eff5b1e..febf8f5ee 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-306e.a1ddaa4e.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-306e.a1ddaa4e.css @@ -1 +1 @@ -.verifybox{position:relative;border-radius:2px;border:1px solid #e4e7eb;background-color:#fff;-webkit-box-shadow:0 0 10px rgba(0,0,0,.3);box-shadow:0 0 10px rgba(0,0,0,.3);left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.verifybox,.verifybox-top{-webkit-box-sizing:border-box;box-sizing:border-box}.verifybox-top{padding:0 15px;height:50px;line-height:50px;text-align:left;font-size:16px;color:#45494c;border-bottom:1px solid #e4e7eb}.verifybox-bottom{padding:15px;-webkit-box-sizing:border-box;box-sizing:border-box}.verifybox-close{position:absolute;top:13px;right:9px;width:24px;height:24px;text-align:center;cursor:pointer}.mask{position:fixed;top:0;left:0;z-index:1001;width:100%;height:100vh;background:rgba(0,0,0,.3);-webkit-transition:all .5s;transition:all .5s}.verify-tips{position:absolute;left:0;bottom:0;width:100%;height:30px;line-height:30px;color:#fff}.suc-bg{background-color:rgba(92,184,92,.5);filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7f5CB85C,endcolorstr=#7f5CB85C)}.err-bg{background-color:rgba(217,83,79,.5);filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7fD9534F,endcolorstr=#7fD9534F)}.tips-enter,.tips-leave-to{bottom:-30px}.tips-enter-active,.tips-leave-active{-webkit-transition:bottom .5s;transition:bottom .5s}.verify-code{font-size:20px;text-align:center;cursor:pointer;margin-bottom:5px;border:1px solid #ddd}.cerify-code-panel{height:100%;overflow:hidden}.verify-code-area{float:left}.verify-input-area{float:left;width:60%;padding-right:10px}.verify-change-area{line-height:30px;float:left}.varify-input-code{display:inline-block;width:100%;height:25px}.verify-change-code{color:#337ab7;cursor:pointer}.verify-btn{width:200px;height:30px;background-color:#337ab7;color:#fff;border:none;margin-top:10px}.verify-bar-area{position:relative;text-align:center;border:1px solid #ddd;-webkit-border-radius:4px}.verify-bar-area,.verify-bar-area .verify-move-block{background:#fff;-webkit-box-sizing:content-box;box-sizing:content-box}.verify-bar-area .verify-move-block{position:absolute;top:0;left:0;cursor:pointer;-webkit-box-shadow:0 0 2px #888;box-shadow:0 0 2px #888;-webkit-border-radius:1px}.verify-bar-area .verify-move-block:hover{background-color:#337ab7;color:#fff}.verify-bar-area .verify-left-bar{position:absolute;top:-1px;left:-1px;background:#f0fff0;cursor:pointer;border:1px solid #ddd}.verify-bar-area .verify-left-bar,.verify-img-panel{-webkit-box-sizing:content-box;box-sizing:content-box}.verify-img-panel{margin:0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;border-radius:3px;position:relative}.verify-img-panel .verify-refresh{width:25px;height:25px;text-align:center;padding:5px;cursor:pointer;position:absolute;top:0;right:0;z-index:2}.verify-img-panel .icon-refresh{font-size:20px;color:#fff}.verify-img-panel .verify-gap{background-color:#fff;position:relative;z-index:2;border:1px solid #fff}.verify-bar-area .verify-move-block .verify-sub-block{position:absolute;text-align:center;z-index:3}.verify-bar-area .verify-move-block .verify-icon{font-size:18px}.verify-bar-area .verify-msg{z-index:3}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-check:before{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAIlFJREFUeNrt3X1cVNW6B/BnbcS3xJd7fLmSeo+op/Qmyp4BFcQEwpd8Nyc9iZppgUfE49u1tCwlNcMySCM1S81jCoaioiJvKoYgswfUo5wSJ69SZFKCKSAws+4f2/GetFFRYG3g9/2Hz2xj+O2J4Zm19trrIQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKgjmOgAAADwOBhz83TzdPNs397qanW1ujJ2s8fNHjd7FBTkhuSG5IbculVdP1kSfeoAAPBwdFzHdXzgQN0S3RLdkpgY2SJbZMvNm9It6ZZ064cfGmQ2yGyQmZfX3KO5R3OPwkJdsi5Zl5yYKIfL4XL4mDHqs7AqGzhgBAIAoFFdI7pGdI1o1KjFlhZbWmxZv149OmXK4z3r4cPEiROfOFExKSbFVFDwqM+EEQgAgMY8y5/lz/LGjZu3bt66eev9+9Wjj1s4bAYNIkaMWHKyx3mP8x7nmzd/1GdyEP1CAQCASifrZJ3s6FjmWuZa5rprF3uLvcXeGjq0en5au3a8nJfz8k6d8lPyU/JTYmIq+wwYgQAAaIIk0WgaTaO/+IJm0SyaNWJEtf/IPMqjvJde0g/QD9APcHOrdGIhrxMAANzGmJwr58q569ZRLMVS7MSJNfajFVJIYYy/wF/gL7z0UmW/vUGNvk4AAHCHTqfT6XQrVtB4Gk/jg4KEBfmBfqAf+vSp7LdhBAIAUMPUwvH66+oj21eBSqmUStu3r+y3oYAAANQQtXDMmKE+WrlSdB4bvpwv58t/+62y34cCAgBQzeSt8lZ568SJFEiBFLh2reg8d2MD2UA28PTpyn4fCggAQDXRh+pD9aEjR1IABVDA5s20ntbTeklzf3eZF/NiXvv2Vfb7NHciAAC1nRwsB8vBvr5Wf6u/1X/nTubO3Jl7A+0tWvImb/LOyemc3zm/c/6ePZX9dmxlAgBQRfTd9N303Tw8rFusW6xbEhPZLDaLzXJyEp3rHjNoBs24dYt/wj/hn3h5mUwmk8mkKJV9GoxAAAAekz5AH6APeOYZ6znrOeu5Awc0WzgCKZACrVZ2hB1hR15++VELhw1GIAAAj0hdVdWli/ooNVX9WvnlsNUflHSk45wbuZEbg4LUwrFhw+M+LUYgAACV1CuoV1CvoCef5Kv4Kr4qIUE9qsHCcRsv4AW8YOHCqiocNtq7qAMAoFHqZoetW9MgGkSDDh+mhbSQFnbuLDrX/YWGmmJMMaaYsLCqfmZMYQEAPIBt23PLp5ZPLZ8mJ9MROkJHdDrRueyKpViKXbdO6aB0UDoEB1fXj8EUFgCAHX0v973c93KTJpbvLd9bvt+3T+uFg0/mk/nkL79UC0dISHX/PIxAAADuYuvLwQ/xQ/zQnj1sKBvKhj7/vOhc9vA4HsfjYmOd2jm1c2o3btxRdpQdZRUV1f1zMQIBALjNYDAYDAYHB9pEm2jTl19qvXBQGIVRWFKSWjgmTKipwmGDi+gAAERExJhZZ9aZdZGRNJ2m0/Tx40UnssuHfMgnPb2koKSgpGD0aIUpTGGlpTUdAwUEAOo9XbguXBf+/vu0lbbS1ldfFZ3HrgE0gAacPu0423G24+xhw5SOSkel440bouKggABAvaXjOq7j77xDetKTfv580Xns8iIv8srNlfKkPClv8OD0jukd0zv++qvoWLiIDgD1jrpnVXAwb86b8+Yffyw6jz18NV/NV+flWQZaBloGenufYqfYKXbxouhcNriIDgD1hi5Zl6xLnjyZL+AL+ILwcNF57OpLfanv1atsPpvP5vv7a61w2GAEAgB1nrpn1ejRPJNn8szoaM1ur05EREVF6ldfX0VRFEUxmUQnskejLyAAwOPT79fv1+9/7jn+E/+J/7Rjh7YLR3ExceLEhw9XTIpJMWm3cNho9IUEAHh08hB5iDykb1/+M/+Z/7x7N0VSJEU2aiQ61z30pCd9WZl1inWKdcoLL2R5ZnlmeR4/LjrWw8I1EACoM+S2clu5rasr+yv7K/vrgQO0jtbRumbNROe6G4/kkTzSYqFMyqTMgAC1cBw6JDpXZaGAAECt1zukd0jvkG7daBftol2HD1MERVBEq1aic93jdl8O9gv7hf0SGKhOVUVHi471qFBAAKDW0hfri/XFHTs6cAfuwBMS2Bw2h81p1050LruepWfp2fnzlaHKUGXopk2i4zwuFBAAqHVcw1zDXMPatrWSlayUkEBplEZp//VfonPZw86ys+zsm28qE5WJysQPPxSdp6qggABAraHuktuiRYOgBkENgg4dYt7Mm3k/9ZToXHZNpIk0MTzcWGosNZYuXy46TlXDfSAAoHnqfRxNm6qP4uPVr/37i85l11gaS2M3b1YWK4uVxa+8oh7kXHSsqoYRCABoVo+oHlE9oho2pME0mAbHxKhHNVw4IimSImNiXLJdsl2yp09XD9a9wmGDAgIAmmPry9G4f+P+jfv/4x8UT/EUP3iw6Fz3d/hwUXpRelH6Sy9FR0dHR0dbLKITVTfcSAgAGsPYhT4X+lzos2EDG8FGsBHjxolOZA9fxBfxRWlpFeYKc4V57NjckNyQ3JBbt0Tnqim4BgIAmiEvkhfJiz78kMWzeBY/Z47oPPbwpXwpX5qdbRlmGWYZ5uOjbnZYWCg6V03DFBYACKdbq1urW7tiheYLRypP5anffluRU5FTkTN4cH0tHDYYgQCAMOqeVX//O7vKrrKra9aIzmMPP86P8+NmM/fjftzP2zsrLSstK+3HH0XnEg0jEACocXJXuavcdepU1ol1Yp00fGNdP+pH/X78UUqSkqQkf38Ujt9DAQGAGqMP0YfoQ154gbbTdtq+cSMppJDCtDcTwokTLyiwvGh50fKiv79xuHG4cbjZLDqW1mjvfxwA1DluZjezm3nECMkgGSTD11+rRx0dRee6G8/gGTzj+nU+gA/gA/z81BGH0Sg6l1ZhBAIA1Ua9g9zHh/3MfmY/R0WpRzVYOE7yk/xkSYmUI+VIOSNHonA8HIxAAKDK6bvpu+m7eXhYt1i3WLckJrJZbBab5eQkOtcfKy9Xv44Zo7aQjYsTnai2cBAdAADqDn2APkAf8Mwz1gRrgjUhIYG9wF5gL7RsKTrXPQIpkAKtVlbMilnxpElKvBKvxO/eLTpWbYMRCAA8NnWqqksXddXSsWN0gk7QCWdn0bnuDao2dOJGbuTGoCCTyWQymTZsEB2rtsI1EAB4ZL2CegX1CnrySb6Kr+KrEhI0Wzhu4wW8gBcsXIjCUTWwFxYAVJral6N1axpEg2jQ4cO0kBbSws6dRee6v9BQU4wpxhQTFiY6SV2BKSwAeGge5z3Oe5xv3tzyreVby7dJSfQ2vU1v6/Wic9kVS7EUu26d0kHpoHQIDhYdp67BFBYAPFDfy30v973cpElFVkVWRdbevZovHJtpM23etk0tHCEhouPUVRiBAIBd6lSVoyMxYsRsq5SGDROdyx4ex+N4XGysUzundk7txo07yo6yo6yiQnSuugojEACwQ5L4dD6dT9+6VX2s3cJBYRRGYUlJauGYMAGFo2bUWAHps73P9j7b27Xr2bNnz549W7USfeIAYA9jslk2y+YNG9gmtoltmjBBdCJ7bA2dypVypVwZNUotHKWlonPVF1U+hfX7PW8CA9UtAnx9mQfzYB5Nmtz5Dz3IgzwKC+k1eo1ei4+naTSNpq1Zo5gUk2LKyBD9wgDUR/I5+Zx87oMP2CQ2iU2aO1d0HnvQ0EkbHruA9OK9eC/esmWD1AapDVK/+orm0ByaM2TIIz9hNEVT9IYNRfuL9hftDwmpby0iAUSQT8on5ZNLlrAZbAabsXSp6Dz28JV8JV/53XcVpypOVZzy9j694PSC0wt+/ll0rvrqkQuI15+8/uT1Jyen0smlk0snHz9Ox+gYHXN1rdp4KSnlE8onlE8YMUL9Rbl5U/QLBlCXqBfJQ0LUi+Th4aLz3N+lS+o2697e6kzFpUuiE9V3j3wNpHR26ezS2ZGR1VM4bHx8HHs59nLsdeBAj6geUT2imjUT9UIB1CVylBwlR738MulJT/qPPhKdxx6+hq/ha65ckWKlWCnW3x+FQ1sqPQJxN7gb3A29e1tbWVtZW5lMNdUQhifxJJ70zTdNujTp0qTL0KHf/PLNL9/88ttvYl42gNrJ7Te339x+GzuW5bAclhMVpU5ZOWhvU9UQCqGQa9es063TrdN9fLLKs8qzyk+dEh0Lfq/SIxBrf2t/a/+JE2u6kxjzY37Mz8ur9OXSl0tfTklRb2z6j/+o2ZcLoHZyi3aLdov285N2Sjulndu3a7ZwEBFRcTFP4Ak8YdQoFA5tq/wU1l/oL/QXLy9hiY/QETqi05U1L2te1vzgQdtFfGF5ADRMX6wv1hd7eqo9vWNjKZIiKbJRI9G57jGDZtCMW7fYUraULR01yrTNtM20LTVVdCy4v0qPINSLbrm56kW3Ll1EnwAtpaW01Ggse6PsjbI3Bg06c+bMmTNnrl0THQtApDtTza2tra2tU1LoJJ2kk9r7oMUzeSbPrKhg7syduRsMakOnPXtE54KHU+kRCF/Gl/FlGrr2cHtPHseVjisdVyYn39klFKAe6h3SO6R3SLduln9Y/mH5x8GDWi0ctr4cLJ7Fs/igIBSO2qnyU1i9qTf1zskRHfxu7G32Nnu7d2+1oCQmopBAfaL+vnfqJIVJYVJYUhLrx/qxfv/5n6Jz2cNSWApLCQlRhipDlaGbNonOA4+m8gWkM3WmzrGxooPbtYyW0bJevdQptuRk1zDXMNewtm1FxwKoDrYtgugNeoPeSExknsyTeXbsKDqXPewsO8vOvvmm8bzxvPH82rWi88DjqXQB6TK6y+guo3ftosW0mBafOyf6BO6vZ0/Hrxy/cvzq6FE3TzdPN0/tdkoDqAx1xNGiRfmI8hHlIw4epPfoPXqvWzfRueyaSBNpYni4sdRYaixdvlx0HKgaj7wMV5ZlWZZ1OsYYY+zYMfVo06aiT8genspTeeq331rmWuZa5vr5nfr01KenPv3hB9G5ACpD7T1ue5/Fx6tf+/cXncuusTSWxm7erCxWFiuLX3lFPci56FhQNR75TnS1p7Ci8Ml8Mp8cEKAeLS8XfUL2MG/mzbyfesphrMNYh7HJybZezqJzATyMrhFdI7pGNGrE5/F5fJ5tClm7hYNP49P4tB071MIxbdrtoygcdUyV3Qioy9Pl6fKef57n8Tye9/XXbCabyWY2biz6BO1aQAtowcWLFeMrxleMt+3mefGi6FgA/85gMBgMBgcH8wXzBfOFr75Sr+0ZDKJz3d/hw0VTiqYUTRk5Epuh1m1Vfie5foN+g37D0KFWV6ur1TUmRvOFxJM8yfN//9fhosNFh4s+Pif3ndx3ct/334uOBfD/fTk2bmQGZmAG2yd57bH15agwV5grzIMGYfPT+qHatiKRF8mL5EWDB1MohVLo7t339APRJNsmbb6+6rr0CxdEJ4L6SX3/fPihep/EnDmi89iDvhz1W7V1JDStMK0wrYiPV+8wHT1abSxVUiL6hO+vUyeextN4WkqKW5pbmlta166iE0H9oivVlepKly/XfOG4vSilIqcipyJn8GAUjvqp2lvaqtsvHz6sbss8ZAjNpJk088YN0Sduj20dPbvFbrFbKSm2O3tF54K6TU6UE+XE2bPJi7zIa9Ei0Xns4cf5cX7cbObP8ef4c76+aOhUv9XYbro2coAcIAd4e9Pf6G/0t7g4NovNYrOcnES/EPbwE/wEP/HTT9Z0a7o13c8ve0D2gOwBWr//BWoLW18OlsgSWeLnn9f0LtcPrR/1o34//siGsCFsiLe3cbhxuHG42Sw6FohV7SOQu9l22WTBLJgFP/88/5h/zD/W0N5ad7FtCSGRRBIlJ7uvdV/rvva//1t0LqjdbH056M/0Z/rzZ59ptnBw4sQLCqSnpaelpwcNQuGAf1fjBcRGndo6flzqLfWWeg8ZwjN4Bs+4fl30C2IPm8PmsDnt2llbWFtYW9g2bezZU3QuqF3U35tBg7Tel8P2frQ2tja2Nh46NDM4Mzgz+OxZ0blAW4QVEBtjU2NTY9O0NPIgD/Lw9eXhPJyH//qr6Fx2fUQf0Udt26pD+qQkua3cVm5bXS19oa6w9eVQf89jYrTal8O22IU5MAfmMGpUVlpWWlaa0Sg6F2iT5obM6lYNsqwWkoQENpvNZrM13HnQ1npzvXW9df2gQXjDwb+rLX05VLadJMaMUZexx8WJTgTaJnwEcjf1F9dkkhZJi6RFzz3H03k6T//lF9G57IqgCIpo1UrqJfWSeiUkuHd27+ze2d1ddCwQSx+qD9WHPvWUdaR1pHVkfLxmC0cgBVKg1cq6s+6s++TJKBxQGZobgdztzie4C9YL1gsJCepWDhru8+FBHuRRWEgZlEEZQ4ao13oyMkTHgpqh36/fr9/v4sIP8UP8UGoqnaATdEKDu0DfbujEjdzIjUFB6t52GzaIjgW1i+YLiI26aqV7d9aINWKNkpO13jBHVVTE2/A2vM2QIaZDpkOmQ+npohNB9bC1C2BJLIklpaay/qw/6+/iIjqXPczMzMy8cKHxmvGa8dr774vOA7WT5qaw7MlyynLKcsrJUQuHj496ND9fdK77a9GCXWVX2dVDh9wC3QLdAvv1E50Iqpat86U0X5ovzU9I0HrhUIWGonBAVag1BcRGnaP917/UR76+thucROe6vxYtJCYxiSUk6LiO6/jAgaITwePxOO9x3uN88+ZqB8yDB2k5LaflPXqIzmVXLMVS7Lp16vtnyRLRcaBuqDVTWPbYLlZyF+7CXZKS6EP6kD7UcJ8Pd3In95s3eQPegDcYOdK01rTWtDY5WXQseDh9L/e93PdykyZlT5Q9UfbEgQPMn/kzfw1/INhMm2nztm1KT6Wn0nPKFPWg1So6FtQNtb6A2Nj2rJLGSGOkMcnJbD6bz+Z36CA61/0VF1tft75ufX3kyCxDliHLkJQkOhH8MXWqytFRXcSxe7d6dNgw0bns4XE8jsfFxjq1c2rn1G7cuKPsKDvKKipE54K6pdZNYdmTHZEdkR1x/rxloGWgZaC3N1/FV/FVWu/r0bSp9J70nvTe3r26Ql2hrtDfX3Qi+COSxKfz6Xz61q3qY+0WDgqjMApLSlILx4QJKBxQnepMAbGxdRbk2TybZ/v42HYPFZ3r/po2pV20i3bt2yevkFfIK4YPF50IiIgY05l1Zp05MpJtYpvYpgkTRCeyy4d8yCc9vaSgpKCkYPRotXCUloqOBXVbnZnCskedeujUSX2UnKxOQXTpIjqXXXrSk76sjHVgHVgHg8H4lvEt41t794qOVd/I8+R58rxVq9gRdoQd+Z//EZ3n/s6ccdzjuMdxz8CB6R3TO6Z31PBWQFCn1LkRyN3UG/kuXWLH2XF23MdH7beQmys6l11GMpKxYUO1t3x0tO5fun/p/jVqlOhY9YW6lc5bb2m+cNz+PZZcJBfJZdAgFA4Qoc4XEBt108bLl6V8KV/K9/amxbSYFmu4r8ftQkJraA2tiYqSw+VwOXzMGNGx6ir5oHxQPvi3v6mPli0Tnccevpqv5qvz8irCK8Irwv39M6MzozOjf/pJdC6on+pNAbGxveEalDYobVDq68vf5e/ydzW8TfXtQsK2sq1s686dd/pIQJVQd1MOCGCX2WV2+eOPReexqy/1pb5Xr6qrC/39bdf6RMeC+q3eFRCbjJcyXsp46coVx2uO1xyv+fnxo/woP/rPf4rOdX+OjiyH5bCcqCh5q7xV3jpxouhEtdWdqcGf6Cf66YsvaD2tp/WSRt8PRUWUTumUPmTI72+kBRBLo2+YmmMrJBWRFZEVkX5+6tEzZ0TnsudOA6Kn6Wl6essW2ydo0blqC7dot2i3aD8/XsgLeeGOHcyduTP3Bg1E5/pjxcW8O+/Ou48YYdulWnQigH9X51dhVVbvY72P9T7Wpo3DbofdDrsTE+kYHaNj2m0YxSN5JI+0WNgNdoPdeOUVxVfxVXxt9yuAjboar08fCqZgCk5MpHW0jtY1ayY61z1ur8KzTrFOsU4ZNSrLM8szy/PQIdGxAP5IvR+B3C17QPaA7AFXr5YlliWWJQ4cSEtpKS3VboMo24iEN+PNeLPPP5ej5Cg56uWXRefSClvrYR7BI3jEgQNaLRy2DwKUSZmUGRCAwgG1AUYgD9CL9+K9eMuWDtcdrjtcj49nvsyX+Xp4iM5l1+0+D6SQQsrMmerUR2Sk6Fg1zS3NLc0trWtXpmd6pk9N1ez2/7b/X2NoDI159VVlqDJUGbppk+hYAA8DI5AHUFe7FBZamluaW5oPHkycOHENN4hSSCGFMfUP07p18gB5gDxg5kzRsWqKuktuhw7SJemSdCkhQbOFw+ZZepaenT8fhQNqI4xAKkmdEmnRgnzJl3wPHaIUSqGUvn1F57If+PYnXH/yJ//ZsxWDYlAMGl6u+ojuXLuKcYhxiDl6lFIplVK7dxedyx52lp1lZ99801hqLDWWLl8uOg/Ao3AQHaC2yc/Pz8/Pv3WrzZg2Y9qM2bFDWiOtkdZ4erIv2Zfsyz//WXS+ewNTPuUzRiVUQiVDhjhzZ+7Mr11Tz0PDI6mHZCvoUrwUL8UnJNAlukSXtLvoQRURoVxWLiuXFy0SnQTgcaCAPKIrCVcSriSUl7dp3aZ1m9a7djn80+GfDv+0dRzs3Fl0vnvYCome9KQfMqR9m/Zt2rcpKsrPzc/Nz619rXbVLUeaNqXn6Dl67sAB+p6+p+81PBIcS2Np7ObNyjZlm7JtxgzRcQCqAq6BPKbTC04vOL3g5k310fDh6lSRhhtE3b5GorbaXbNGDpAD5IDa80m4R1SPqB5RDRvy2Xw2n71rFyVREiV5e4vOZVckRVJkTIxLtku2S/b06epBzkXHAqgKGIFUEXVKqLzcucS5xLlk1y4+j8/j8/r0YSfYCXZCuz2yWQErYAV+fs6hzqHOoRZL/t78vfl7jx0TnetuBoPBYDA4ONzYd2PfjX3bt7MMlsEytL7J5OHDRa2LWhe1Hjfu+AfHPzj+QXm56EQAVQkX0avJndanTcqalDWJjWWD2WA2WPsNo9T7Ed5+2+Rh8jB5aGVTQcZks2yWzRs3MgMzMMO0aaIT2cMX8UV8UVpahbnCXGEeNOj3I1SAugUFpJp1jega0TWiUaMW+hb6FvroaJpFs2jWiBGicz0I/4J/wb9YtcrkanI1ub7+uqgc8jn5nHzugw/YJDaJTZo7V/TrYg9fypfypdnZlmGWYZZhPj625d+icwFUJ1wDqWa5IbkhuSG3bpXkleSV5I0bx2fymXym9htEsalsKpu6cKF8Wj4tn37vvZr++bJJNsmm0FDNF46VfCVf+d13FTkVORU5gwejcEB9ghFIDbNdBG6yqsmqJqt27lSPjh4tOtcDJVESJYWFKS2VlkrL6mu0pC7LDQlRO0eGh4s+7fu7dEm9sdTb29a4THQigJqEEUgNO/fiuRfPvVhWpv7hefFF2yod0bkeyI/8yG/BAvUP/OrVVf306rLcKVPUZcYffST6dO3qR/2o348/sqVsKVvq44PCAfUZVmEJoq7aslr7F/Yv7F/49dfXrl27du1a167qv/bsKTqfXYwYMU/P9lPbT20/tUWL/NT81PzUw4cf9enuNMjqQ32oz7ZtbCPbyDZqsC8HJ068oEDyl/wlfz8/Y4AxwBjw3XeiYwGIpL03aj0THR0dHR1tsbi4uLi4uEyeTJtpM23etk10rgdh8Syexc+ZI+fKuXLuJ5/cPvrQU6K6Ql2hrtDfX9op7ZR2bt9+p8+JxvAMnsEzrl+3NrY2tjYeOjQzODM4M1jDHSwBahCugWiM7X6HC/0v9L/Q/4sv1Fa2kyaJzvVA0RRN0Rs2KC6Ki+Jiu9Paar37P9MX64v1xZ6efC6fy+cePqxuX/7EE6Lj342f5Cf5yZISJjGJSc8/rzCFKezIEdG5ALQEBUSjbIXEbDabzWbbLq1TpojO9UCcOPHPPlOvDQQGqgetVneDu8Hd0Lu3tbW1tbV1SgqdpJN0smVL0XH/mO2GvzFj1O3w4+JEJwLQIs1NGYDq3Llz586d41y9VrJ3r3OKc4pzSqdOFEMxFOPmJjqfXYwYMVluP6/9vPbzOnZ0/sX5F+dfvvvOusS6xLokMZF9zj5nn7duLTrmPQIpkAKtVlbMilnxpElKvBKvxO/eLToWgJZhBFKrSJK6Cmr9evUPtW1vJQ273aKVjGQkY8OGouPc4/Z293wYH8aHBQaaRplGmUZt3Cg6FkBtgAJSKzEmvyO/I78TEcH2sX1sX3Cw6ES1FTMzMzMvXGi8ZrxmvPb++6LzANQmmMKqpfKP5B/JP3LokLOzs7Ozc6tW6tE+fUTnql1CQxWzYlbM774rOglAbYRlvLUa5+pF3r//nQ7SQTqo4RvwtGI8jafxn3yivm5LloiOA1CbYQqrjtGV6kp1pcuXkxd5kVft6fNR7W7fX6P0VHoqPW2r2e5dZgwADw8jkDpGaaw0VhovXsw38o18I6ZmeByP43Gxsc2eafZMs2emTlWPonAAVAUUkDrKJJtkk/zWW/QqvUqvaqWvRw0KozAKS0pyaufUzqndhAlH2VF2lFVUiI4FUJeggNRxSpASpAS9/ba6jHbpUtF5qh0nTjwjo6SgpKCkYPRotXCUloqOBVAXoYDUE+pWHO+8QyEUQiHiGkRVrzNnHGMdYx1jn39e3fX4xg3RiQDqMizjrWfy9+Tvyd/zzTdPlj5Z+mRpSQm1olbUSvutdu3yIi/yys2VHCVHydHX9+T0k9NPTr96VXQsgPoAq7DqOfmYfEw+Nn8+m8PmsDlhYaLzPCy+mq/mq/PyLAMtAy0Dvb3VToAXL4rOBVCfYAqrnjMNMA0wDVi9mubSXJo7b57oPA/Ul/pS36tX2Xw2n83390fhABAHIxD4HV2sLlYXGxREcRRHcZ98QgoppDx8n4/qVVSkfvX1VW8ENJlEJwKoz3ANBH4nf0f+jvwdRmN73p635/n5LIgFsaBhw8QWkuJi3p13592HDTPFm+JN8RkZol8nAMAIBB5AjpVj5dhXX2VX2BV25dNPaT2tp/U10HL29i6+TMd0TDd6tPE142vG1w4eFP16AMD/QwGBh6I7qDuoOzhtGl2my3R5w4bqKiQ8kkfySItFHfn89a9qY6roaNHnDwD3QgGBSpG7yl3lrlOn0nbaTts3bqyqXua2wiEtk5ZJy6ZONe437jfu//JL0ecLAPbhGghUSv6v+b/m/5qd3b5N+zbt22RksLFsLBvbvz+lURqlVb5FLU/lqTz122+l36TfpN8MBuMc4xzjnL17RZ8nADwYlvHCIzGtMK0wrYiPbza+2fhm47t3V48uWcJX8pV85Xff2fu+3//7kiXXP7v+2fXPevUy9jT2NPY8elT0eQHAw8MUFlQL1zDXMNewJ55o2L1h94bd27UryynLKcu5cuX0gtMLTi+4eVN0PgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAO/4PSBxbMqgmA24AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTctMTItMTVUMTU6NTc6MjcrMDg6MDCiEb4vAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE3LTEyLTE1VDE1OjU3OjI3KzA4OjAw00wGkwAAAE10RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fY2sxYnphMHpqOWpqZGN4ci9jaGVjay5zdmfbTpDYAAAAAElFTkSuQmCC")}.icon-check:before,.icon-close:before{content:" ";display:block;width:16px;height:16px;position:absolute;margin:auto;left:0;right:0;top:0;bottom:0;z-index:9999;background-size:contain}.icon-close:before{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAADwRJREFUeNrt3V1sU+cZwPHndTAjwZ0mbZPKR/hKm0GqtiJJGZ9CIvMCawJoUksvOpC2XjSi4kMECaa2SO0qFEEhgFCQSqWOVWqJEGJJuyYYWCG9QCIOhQvYlgGCIFmatrVSUhzixO8ujNM1gSZOfPye857/7wYlfPg5xj5/n/fExyIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABATizsWti1sCs/v6y0rLSsdMaMZ/Y8s+eZPZMnm54LQO6kn/fp/UB6v2B6LrdRpgcwZf7e+Xvn7505MxAIBAKBrVt1ja7RNdXVaqlaqpbOmTP0z+u9eq/ee/euFEqhFH7ySeCjwEeBj+rr299of6P9jb//3fT2AMhcWVlZWVnZ3Ln6uD6uj2/eLF3SJV1VVapW1ara6dOH/nn9hf5Cf3HzpupW3aq7qSl5LHkseay+/nLt5drLtbdvm96eXPNZQJQqn1Q+qXzS73+vN+gNesObb0q7tEv7xImZ/kv6kr6kL/X3q0PqkDpUXx/aFNoU2rRz53l1Xp1X/f2mtxTAcMv1cr1cT5jQfb37evf1ujrpkR7p2bxZ1agaVZOXl/E/WCM1UnP/vv5cf64/f+utjg87Puz4cPfu1G9qbXp7neaTgChVeqD0QOmBP/5RHVPH1LHf/CbrN1EplVLZ2iqt0iqtv/51NBqNRqP37pnecgDpI42CgtTz9OTJ1PO0sjLbt6PX6/V6/Z/+1LG5Y3PH5g0bHnzX2pBkXlyPKTtadrTs6Ouvq/fV++r9LVscu6EbckNuPPGEhCUs4UWLpsanxqfGT5yIxWKxWCyRMH0/AH40GI6whCXc3Cyn5bScDoeduj11RV1RV559dkrFlIopFX19sauxq7GrbW2m7wenBEwP4JT0OY7UV6+/nrMbjkhEIitWSIVUSEVLS0ljSWNJYyhk+v4A/GQwHHtkj+xpahp8XuaImqwmq8m7di2oXlC9oHr2bNP3h1OsDUhgfWB9YP2WLdIgDdLwgx/kfICzclbOLluW35Hfkd/x5z8PPqABOGbYEcd22S7bKypyPsiDc6v9df11/XWvvWb6fnGKtQHRj+nH9GOrV5ueY/CVz4MHNCEBsm9YOHJ8xPEo6og6oo64YD/k1PaZHiDbvruD/uYb0/MMUyEVUtHWFi+Pl8fLf/Wray9ee/Haiz09pscCvGjYUpWpI44RBE8FTwVPFRRcLLxYeLEwHjc9T7ZYdwSi2lSbavvxj03P8UgsbQHj5pqlqlFK9iZ7k70u3i+NkXUB6Tvcd7jv8H//a3qOEXGyHciY6ZPjYzXw0sBLAy95YL+UIeuWsNJK75feL71/545arBarxYWFpucZUVjCEj53LvWEqK7mfSTAt9x6jmNEi2WxLL59O3ooeih6aNYs0+Nkm3VHIIO6pEu6Pv3U9Bijxsl2YBjPhiOtUAql0EP7oQxZG5C8SXmT8ibt35++5IjpeUaNpS3As0tVabpBN+iGgQE5Lsfl+KFDpudxirUBuTT90vRL0//xj/S1qkzPkzFOtsOHvHZy/FFUsSpWxfv2pZai//Y30/M4xfpLmRR/VvxZ8Wd//Wvf7b7bfbd//vPBS454xU25KTdnz+YSKbCZ55eq0h5cE2/OB3M+mPPBb3977dq1a9eu2XstLGtPog+Vvp5/X1tfW19bU5N6V72r3v3FL0zPlTHeRwKLeOV9HCPaLbtl94UL8a/jX8e/fv55vzwvfROQNEICmEc47OC7gKQREiD3CIddfBuQNEICOI9w2Mn3AUkjJED2EQ67EZAhCAkwfoTDHwjIIxASIHOEw18IyAgICTAywuFPBGSUCAkwHOHwNwKSIUICEA6kEJAxIiTwI8KB/0dAxomQwA8IBx6GgGQJIYGNCAe+DwHJMkICGxAOjAYBcQghgRcRDmSCgDiMkMALCAfGgoDkCCGBGxEOjAcByTFCAjcgHMgGAmIIIYEJhAPZREAMIyTIBcIBJxAQlyAkcALhgJMIiMsQEmQD4UAuEBCXIiQYC8KBXCIgLkdIMBqEAyYQEI8gJHgYwgGTCIjHEBKIEA64AwHxKELiT4QDbkJAPI6Q+APhgBsREEsQEjsRDrgZAbEMIbED4YAXEBBLERJvIhzwEgJiOULiDYQDXkRAfIKQuBPhgJcREJ8hJO5AOGADAuJThMQMwgGbEBCfIyS5QThgIwICESEkTiEcsBkBwXcQkuwgHPADAoKHIiRjQzjgJwQE34uQjA7hgB8REIwKIXk4wgE/IyDICCFJIRwAAcEY+TUkhAP4FgHBuPglJIQDGI6AICtsDUl+XX5dfl0ySTiA4QgIsmrwlXpYwhJubpaIRCSyYoXpuTIWlrCEz50b/Nrr2xGRiESqq6PRaDQavXfP9FiwAwGBI6w5IvEqjjiQAwQEjiIkOUY4kEMEBDlBSBxGOGAAAUFOEZIsIxwwiIDACEIyToQDLkBAYBQhyRDhgIsQELgCIRkB4YALERC4CiEZgnDAxQgIXMn3ISEc8AACAlfzXUgIBzyEgMATrA8J4YAHERB4inUhIRzwsIDpAYBMJNYm1ibWKqUeV4+rx5X3XwCdkTNyxoLtgC/xwIUnWPN5HI/i8Ge2A04gIHA168MxFCGBhxAQuJLvwjEUIYEHEBC4iu/DMRQhgYsRELgC4RgBIYELERAYRTgyREjgIgQERhCOcSIkcAECgpwiHFlGSGAQAUFOEA6HERIYQEDgKMKRY4QEOURA4AjCYRghQQ7kmR4AdhkMR1jCEm5uliNyRI54MBxhCUv43DkpkiIpunVLbspNuTl7tumxRu2W3JJbM2cGC4IFwYKFC6fGp8anxk+ciMVisVgskTA9HuzAxRSRFcOOOCISkciKFabnylj66ril8dJ46Zo1wY3BjcGNVVV6m96mt505Y3q8jKX/HyqkQipaWkoaSxpLGkMh02PBDixhYVysWaoa4bLq1lxGnqUtZBEBwZj4JRxDERLgWwQEGfFrOIYiJAABwSgRjocjJPAzAoLvRThGh5DAjwgIHopwjA0hgZ8QEHwH4cgOQgI/ICAQEcLhFEICmxEQnyMcuUFIYCMC4lOEwwxCApsQEJ8hHO5ASGADAuIThMOdCAm8jIBYjnB4AyGBFxEQSxEObyIk8BICYhnCYQdCAi8gIJYgHHYiJHAzAuJxhMMfCAnciIB4FOHwJ0ICNyEgHkM4IEJI4A4ExCMIBx6GkMAkAuJyhAOjQUhgAgFxKcKBsSAkyCUC4jKEA9lASJALBMQlCAecQEjgJAJiGOFALhASOIGAGEI4YAIhQTYRkBwjHHADQoJsICA5QjjgRoQE4xEwPYDtbAtH4kriSuIKT1BbXCy8WHixMB6fuGzisonLVq/W2/Q2ve3MGdNzZeysnJWzy5blt+e357f/5S8ljSWNJY2hkOmxbMcRiENsDcfV7Ve3X93+zTemx4IzOCJBJghIlhEO2ICQYDQISJYQDtiIkOD7EJBxIhzwA0KChyEgY0Q44EeEBP+PgGSIcACEBCkEZJQIBzAcIfE3AjICwgGMjJD4EwF5BMIBZI6Q+AsBGYJwAONHSPyBgDxAOIDsIyR2831ACAfgPEJiJ98GhHAAuUdI7OK7gBAOwDxCYgffBIRwAO5DSLzN+oAs18v1cj1hQk95T3lP+aefpr77y1+anitje2SP7Dl7NhW+1auj0Wg0Gr13z/RYQDYMvsALS1jCzc0SkYhEVqwwPVfGKqVSKltbQ++E3gm9U1V1Xp1X51V/v+mxnGL9B0p1X+++3n29ri71FeEA3GjwcR2RiESqq1MhOXfO9FwZa5VWaa2s7DnYc7Dn4O7dpsdxmrUBKX+7/O3yt3/2M5krc2Xupk2m58lYeqkqmogmomvWEA74QfpxHtwY3BjcWFXl1U9I1Iv0Ir1o69b53fO753fPm2d6HqdYG5BkXjIvmbd1q3pOPaeemzDB9Dyjlj7i2Ck7ZeeqVZzjgB+lP2o3dU5kzRqvHZGoGlWjavLyAg2BhkDDa6+Znscp1gZEzVQz1cyqKtNzjBpLVcAwnl/aOi7H5biH9kMZsi4gCzoXdC7o/OEPZZ/sk33TppmeZ0QsVQEj8vbS1owZJY0ljSWNoZDpSbLNuoAMrBtYN7DuRz8yPceIWKoCMubVpa3Q/ND80HwP7JcyZF1ARIkS9e9/mx7jkTjiAMbNa0ckgUmBSYFJ//mP6Tmyzdr3gZTGS+Ol8Rs31FK1VC2dM8f0POkjjuCTwSeDT1ZXp19JmR4LsIFr30eyQ3bIjs7O6AvRF6IvFBebHifb7DsCeUA1qAbV0Nxseg7CATjPrSfb9VP6Kf2UC/ZDDrE2IMlkMplM7t8vNVIjNffv53yAIUtVhANwnluWtvRhfVgf7u1VL6uX1csHDpi+X5xibUAu116uvVx7+3bqqz/8IWc3nD7imBecF5y3ciUnx4HcM36yPSlJSb71VrQj2hHtuHPH9P3hlDzTAzgt1hRrijW1tU3ZMWXHlB1z5qgr6oq68uyzWb+h/bJf9re0BIuCRcGitWs54gDMi8VisVgskZganxqfGj9xInWtqvJyuSE35MYTT2T79vRJfVKfPHas4+mOpzuerq01vf1Osz4gabGWWEus5dSpaV9N+2raV4mE7JJdsmvJEmmXdmnP/J3q+pK+pC/190undErn3r1FkaJIUeR3vzv9yulXTr/S12d6ewF8Kx2S4gvFF4ovfPxxX29fb19vQYE+qo/qowsWqPfUe+q9QMYrMumlKlklq2TVm29+Nxxam95up1n7U1gjKSstKy0rnTFDr9Qr9cotW1SLalEtq1enfgy4qOjhf+vOHVkn62TdJ58M3B24O3C3vv7Lg18e/PJgZ6fp7QGQufQ18/QpfUqf2rw59d3nn0/9OmPGsL+wRJbIkn/+U7+qX9WvNjUFZgVmBWbV17cXtBe0F3R1md6eXPNtQB4l/fkEiTWJNYk1P/1p+n0lvF8D8I/BHwvWokX/5CehaCgaiv7rX6nLs/f2mp4PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtvsf2vlfs7i0WI4AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTctMTItMTVUMTU6NTc6MjcrMDg6MDCiEb4vAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE3LTEyLTE1VDE1OjU3OjI3KzA4OjAw00wGkwAAAE10RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fY2sxYnphMHpqOWpqZGN4ci9jbG9zZS5zdmdHkn2WAAAAAElFTkSuQmCC")}.icon-right:before{background-size:cover;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAJ4pJREFUeNrt3XtcVXW6P/Dn2VwCBxUzNbnkkXRSGzXW2huQRLyMIqKRJF7Q1CkrDS+VGp3Gy9g5YzI6qVsNfTmlqGmipQiIiJqAcnOvhaKRHidshoatpKaBogL7OX+s6Mz8flO5CfzutXne/+zXWhR8QOXZ3+93Pd8vAHuAEKW10lpp7dix0mXpsnR5/34pX8qX8r/7TpZlWZaJGl//9f6+fY3/X+PnEf2dMMYY/yJqYcbbxtvG2/7+lEM5lLN7NyyCRbBowICmfj56m96mt/PzDZGGSEPkxImWNpY2ljYVFaK/T8ZY6+MiOoCzMn1t+tr09a9/TQfpIB0sLITlsByW9+r1Sz8v5mEe5vn7Q3toD+0nT/Y77Xfa73ROTuWNyhuVNyorRX/fjLHWg0cgzUybcmrThvIoj/JUFcMwDMOeeKLFvmA8xEN8TQ2sh/Ww/rnnFFVRFfXwYdE/B8aY8zOIDuBsqDf1pt6vvdbihaPRBtgAG7y8wAQmMKWlyflyvpw/aZLonwNjzPlxAWlWiOiN3ugdH//Av7QFLGBxd4dzcA7O7dgh75H3yHvmzBH9E2GMOS+ewmomplhTrCn2qads5bZyW3lJieg8jWgADaABf/yjul5dr65fvPj7uyQ6F2NM/3gE0kxsb9vetr3do4foHP8vLMACLPj977W1mS1bwimcwsnVVXQuxpj+cQFpLt/Ct/BtmzaiY/y0adNqltYsrVmakqIVEg8P0YkYY/rFj/E2E5+zPmd9znbpAggI+PzzovP8qItwES727n23w90OdzuEhfl86fOlz5f79lmtVqvVeveu6HiMMf3gEUgzqVfqlXqluFi7qqsTnefnYCImYmJ4OOVSLuWeONF/Zv+Z/Wf6+orOxRjTD15Eb2ZSlVQlVWVkYCRGYuSoUaLz3C86QSfoRHk5lVAJlURElISWhJaE/vWvonMxxhwXj0CaGT1Lz9KzS5eCDDLI+nnaCQfiQBwYEID1WI/1J05oi+6SJDoXY8xx8RpIM7tccbnickVlZdekrkldk4gwAzMwY8gQ0bnuF2ZhFmZ5eWkd7pMn+1T4VPhUKIq2RvLll6LzMcYcB09htShE6YJ0Qbqwdi3GYRzG6bCxbxbMgll372ojqilTlEAlUAncu1d0LMaYeDyF1aKI1CfUJ9Qn5s6FuTAX5r71lt6mtiAJkiDpoYeojuqo7uOP5VQ5VU6dOVN0LMaYeDwCecCkFClFSpk+HcbBOBi3eTOa0IQm/TX20RbaQlsSE9V+aj+131tvic7DGHvwuIAIIp+Xz8vno6OpJ/Wknrt2YRAGYZCnp+hcdpsAE2DC++8rbypvKm82TtHZbKJjMcZaHhcQwYxnjWeNZ8PDaTpNp+mpqdrd9u1F52qa/fu9LF4WL8ukSTmYgzl4547oRIyxlsNrIIJZ+lr6Wvrm5GBv7I29Bw6EN+ANeOMf/xCdq2mefbbGWGOsMR48GHQx6GLQxXbtRCdijLUcfozXQVSWVpZWllZV+df51/nX7dtH8RRP8aNGwQk4ASc6dhSdzz7du9NVukpXR4zoFNMpplPM/v1Xsq9kX8m+dUt0MsZY8+ERiIMpTitOK067dMm1zrXOtS4sTLurqqJz2e04HIfjsuw623W26+yCgsD8wPzAfMfbrZgx1nRcQBxUUVxRXFHclSu1CbUJtQnh4dpd/R1V+0OHuxGNaMzLazw3RXQuxtgvx4voOtEnpU9KnxR3d88yzzLPsu3bIQ3SIG38eNG57BYEQRB04wZVUzVVP/OMukPdoe7IyxMdizFmPx6B6ETZ+LLxZePv3Qv4PODzgM/j4mg37abdGzeKzmW3YiiGYm9vHIyDcXB2tlwil8gl48aJjsUYsx+PQHROTpaT5eSEBDCDGcwrVojOYy9KoiRKamgAK1jBOmuWGq1Gq9GbN4vOxRj7eVxAnISUKWVKma++ihVYgRXr1sEm2ASbDPoZYTZu8bIJNsGmd95RUEEF//AH0bEYYz9OP79g2E9SI9VINfL996mWaql23DjaQBtog44a+RRQQEEEIxjBuHSptgml2ax9UEeFkLFWhEcgTko7z2PIECqiIiravx+DMRiD9drYt3MnEBDQ9OmKqqiK6vgnPjLWGvA7OyelKIqiKJ99pj31NHQovAavwWtVVaJzNU1cHKyCVbAqM/Ppjk93fLpj27aiEzHGeATSahjTjenG9IAAOkyH6XBWFpyEk3BSf419tISW0JJTp2wdbB1sHaKiTg86Pej0oG++EZ2LsdaIC0grozXyPfpow7SGaQ3TMjNxKS7FpTps7CMgoPPntYuICG1q6+9/Fx2LsdaEC0gr1Z/6U3/y9nZNcE1wTThwAI7CUTjauHWK3litVEEVVDFypFqlVqlVpaWiEzHWGvAaSCt1Bs/gGbxx46bfTb+bfsOHUxqlUZpej6rt2hVX4kpcefy4sYOxg7HD00+LTsRYa8AjEAYAALGxsbGxsS4u5XK5XC4nJcEe2AN7XnpJdK6muX1bex0/XnuYICNDdCLGnBEXEPZvIMokk0xLlzb2ZYhOZK/GDne8htfw2iuvKJFKpBL5wQeiczHmTPg8EPZvWZdZl1mXHT/uY/Yx+5ivX4cn4Ul4MiLih4Y/B4cZmIEZBgPchJtwc8wY33Lfct/y2trKO5V3Ku+cPCk6H2POwOF/ETDHoDUmxsVpV1u3aq9ubqJzNY3ZrE1tvf66ds1nuDPWFFxAmF0C9wTuCdwzbBj6oi/67tuHc3AOztFfYx9Npak0dft2TMZkTH7xRe5wZ8x+XEBYk5i6m7qbuptMtlG2UbZRGRlQCIVQ2KmT6Fx2i4RIiExPh0zIhMwJE7SRSeMiPGPsp3ABYb+INrXVq5d2lZWlvT72mOhcdiMgoKIi7WL0aG1EcvWq6FiMOTLuA2G/iPaOvbEjPCQEBsEgGKTDRj4EBAwOhkWwCBbl5BhvG28bb/v7i47FmCPjEQhrVn379u3bt2+HDm55bnlueWlpOAyH4TAdNvaFQiiE/u1v2Bk7Y+eICMtiy2LL4gsXRMdizJHwY7ysWVVVVVVVVd2545Ptk+2T/fHH2t3GvbZ+/WvR+e5bBVRAhbc3zaJZNCsu7lG3R90edcvLu6xcVi4rX38tOh5jjoCnsFiLaFyMDggICAgIiI6mPbSH9uivkQ/n4Tyc9/DDBjSgAbOzA/MD8wPzR44UnYsxR8BTWOwBQpTmS/Ol+StW4HE8jsfffFN0IrsZwQjGe/dgGkyDadOnK6FKqBK6a5foWIyJwFNY7IGyFlgLrAVHjnTd3nV71+03buDj+Dg+PmKEXjrcoRIqodLFBaqgCqpiYnzAB3ygpsZqtVqt1oIC0fEYe5C4gDAhrNus26zbiop8yZd86dIlqIEaqBk9Wvuoi+P/vbSCFayNBW/EiK5ZXbO6Znl6WpOsSdako0dFx2PsQXD8d3ysVZCWS8ul5aNH4yf4CX6ye7d2t00b0bmaJjnZy+Jl8bLMmJGDOZiD9fWiEzHWEriAMIciS7IkS8HB2lV6utaf8cgjonPZi+IpnuIPHHAf7j7cffjEiYX+hf6F/rW1onMx1pz4KSzmULQO8KKihjUNaxrWhIdTPuVTfkWF6Fz2wg24ATc888y9gnsF9woyM7XC2L696FyMNScuIMwhnR50etDpQWVltI7W0bqwMMqjPMrTXyMfJmIiJoaHUy7lUu6JE/1n9p/Zf6avr+hcjDUHnsJiuhBSEVIRUvHww3Xn6s7VnUtP17YcGTBAdC57USIlUuKlS7YDtgO2AxERp82nzafNFy+KzsVYU/AIhOmCtoZw/bpWQIYPh9WwGlYfOiQ6l70wARMwoXt3wzjDOMO4vDxtM0pJEp2LsabgAsJ0pXRh6cLShbdu1V6uvVx7OTqaUimVUvXXyIev4+v4epcuEA/xEJ+To62RjBghOhdj9uApLOYEELVfwCtXak9tzZ8vOpHdvu9wJ5lkkp9/Xn1ZfVl9OSVFdCzGforjN2wxdh+0TvDDh31W+KzwWXHnDtRDPdQPG/avDX8OrLHDfQbMgBkxMT6jfUb7jK6qsn5s/dj6scUiOh5j/47j/8NirAm0tYVp0+gUnaJTf/kLmtCEJldX0bnsRVtoC21JTFT7qf3Ufm+9JToPY/+MCwhzavJ5+bx8PjqaelJP6rlrFwZhEAZ5eorOZbcJMAEmvP++8qbypvLmnDnaTZtNdCzWunEBYa2C8azxrPFseDhNp+k0PTVVu6vDxr4oiIKoffu8lnkt81oWF6dtlXLnjuhYrHXip7BYq2Dpa+lr6ZuTg72xN/YeOBDegDfgjX/8Q3Quu2VABmSMHVtjrDHWGA8eDLoYdDHoYrt2omOx1okX0VmrUllaWVpZWlXlX+df51+3b5+2Z9WoUXACTsCJjh1F57NP9+50la7S1REjOsV0iukUs3//lewr2Veyb90SnYy1DjwCYa1ScVpxWnHapUuuda51rnVhYdpdVRWdy27H4Tgcl2XX2a6zXWcXFGgnJvboIToWax24gLBWrSiuKK4o7sqV2oTahNqE8HDt7uHDonPZCwfiQBwYEIBGNKIxL88Ua4o1xTaeRc9Yy+BFdMb+SZ+UPil9UtzdPcs8yzzLtm+HNEiDtPHjReeyWxAEQdCNG1RN1VT9zDPqDnWHuiMvT3Qs5lx4BMLYPykbXza+bPy9ewGfB3we8HlcHO2m3bR740bRuexWDMVQ7O2Ng3EwDs7OlkvkErlk3DjRsZhz4REIY/dBTpaT5eSEBDCDGcwrVojOYy9KoiRKamjQOvNnzVKj1Wg1evNm0bmYvnEBYcwOUqaUKWW++ipWYAVWrFsHm2ATbDLoZyQvgwwykZb7nXcUVFDBP/xBdCymT/r5i8+YA1Aj1Ug18v33qZZqqXbcONpAG2iDjhr5FFBAQdQ2b1y6VLogXZAumM3aB3VUCJlD4BEIY7+AtufWkCFUREVUtH8/BmMwBuu1sW/nTiAgoOnTtaOF6+pEJ2KOjd9xMPYLKIqiKMpnn2lPPQ0dCq/Ba/BaVZXoXE0TFwerYBWsysx8uuPTHZ/u2Lat6ETMsfEIhLFmZEw3phvTAwLoMB2mw1lZcBJOwkn9NfbRElpCS06dsnWwdbB1iIrSzqj/5hvRuZhj4QLCWAvQGvkefbRhWsO0hmmZmbgUl+JSHTb2ERDQ+fPaRUSENrX197+LjsUcAxcQxlpQf+pP/cnb2zXBNcE14cABOApH4Wjj1il6Y7VSBVVQxciRapVapVaVlopOxMTiNRDGWtAZPINn8MaNm343/W76DR9OaZRGaXv3is7VNF274kpciSuPHzd2MHYwdnj6adGJmFg8AmHsAYqNjY2NjXVxKZfL5XI5KQn2wB7Y89JLonM1ze3b2uv48drDBBkZohOxB4sLCGPCIMokk0xLlzb2ZYhOZK/GDne8htfw2iuvKJFKpBL5wQeic7EHg88DYUwg6zLrMuuy48d9zD5mH/P16/AkPAlPRkT80PDn4DADMzDDYICbcBNujhnjW+5b7lteW1t5p/JO5Z2TJ0XnYy3L4f+CMtaaaI2JcXHa1dat2qubm+hcTWM2a1Nbr7+uXfMZ7s6GCwhjDihwT+CewD3DhqEv+qLvvn04B+fgHP019tFUmkpTt2/HZEzG5Bdf5A5358IFhDEHZupu6m7qbjLZRtlG2UZlZEAhFEJhp06ic9ktEiIhMj0dMiETMidM0EYmjYvwTK+4gDCmA9rUVq9e2lVWlvb62GOic9mNgICKigwHDAcMB6KiTvmd8jvld+2a6FisabgPhDEd0N6xN3aEh4TAIBgEg3TYyIeAgMHBtmJbsa04NzfoYtDFoIt+fqJjsabhEQhjOtS3b9++fft26OCW55bnlpeWhsNwGA7TYWNfKIRC6N/+hp2xM3aOiLAstiy2LL5wQXQsdn/4MV7GdKiqqqqqqurOHZ9sn2yf7I8/1u427rX161+LznffKqACKry9aRbNollxcY+6Per2qFte3mXlsnJZ+fpr0fHYT+MpLMZ0rHExOiAgICAgIDqa9tAe2qO/Rj6ch/Nw3sMPG9CABszODswPzA/MHzlSdC7203gKizGngyjNl+ZL81eswON4HI+/+aboRHYzghGM9+7hLbyFt6ZNs+yw7LDsaBxpMUfBU1iMOSFrgbXAWnDkSNftXbd33X7jBj6Oj+PjI0bopcMdKqESKl1coBt0g27PPecDPuADNTVWq9VqtRYUiI7HNFxAGHNi1m3WbdZtRUW+5Eu+dOkS1EAN1IwerX3UxfH//VvBCtbGgjdiRNesrlldszw9rUnWJGvS0aOi47V2jv9OhDHWbKTl0nJp+ejR+Al+gp/s3q3dbdNGdC67xUAMxGzd6vW219teb7/0Ug7mYA7W14uO1dpwAWGsFZIlWZKl4GDtKj1d68945BHRuexFGZRBGamp7nXude51kyYV+hf6F/rX1orO1VrwU1iMtULanlRFRQ1rGtY0rAkPp3zKp/yKCtG57IVRGIVR0dH3Cu4V3CvIzNQKY/v2onO1FlxAGGvFTg86Pej0oLIyWkfraF1YGOVRHuXpr5EPEzERE8PDKZdyKffEif4z+8/sP9PXV3QuZ8dTWIyxHzyV+1TuU7mdOhm+NXxr+DYjA9/Bd/Adk0l0LnvRCTpBJ8rLaRgNo2FhYSX5Jfkl+ZWVonM5Gx6BMMZ+oI1Ivvnmzt07d+/cHTpUu3v4sOhc9sKBOBAHBgQYFhsWGxbv3dsnpU9KnxR3d9G5nA2PQBhjP6rxF69HqEeoR+jWrRiN0Rg9aZLoXE3z6qta535SkugkzoILCGPsPhkM0gXpgnRhzRqMwziMmzNHdKL7thAWwsKvvlImKhOVid27i47jLLiAMMbsJifLyXJyQgKchJNw8t139dLhjs/is/hsr16862/z4DUQxpjdlGnKNGVaYiJFURRFvfIKJVESJTU0iM71s76Bb+Cb3/xGdAxnwQWEMdZkarQarUZv3ky9qTf1Hj8eXoFX4BWbTXSuH0PP0rP07K9+JTqHs+ACwhhrstjY2NjYWBcX3ISbcFNUFGyCTbDJ4Li/VxbCQljIW540F8f9g2aMOSztjPY2bb7c8OWGLzccOIC7cBfueuEF0bl+ViqkQuqNG6JjOAtX0QEYY/rReJQuHaWjdFRHR+nKIINMVLerblfdLotFdBxnwQWEMfazgi4GXQy66OfXcLbhbMPZrCwYBsNgWJ8+onPdL/oT/Yn+lJ9f6l3qXepdVSU6j7PgAsIY+1HaVFWvXg0TGyY2TMzK0u4+9pjoXPYypBhSDCl//KPoHM6G10AYY/8fU3dTd1N3kwlCIARCcnO1u/orHPQcPUfPbdpkednysuXlzEzReZwNj0AYYz+Q3pbelt6OiLBdt123Xf/kEyiEQijU32OvFE/xFH/gwHc139V8VzNvnug8zsrhO0cZYy1Pm6qKi9Outm7VXt3cROeyF31Kn9Kn27bhWByLY2fM0M49qasTnctZ8RQWY62Ysaexp7Hn7NlaA+D27dpd/RUOjdmsdlO7qd2mT+fC8WC4iA7AGHvwftjL6jSchtPvvaeXvaz+7xvQHssld3In94QE9Zh6TD22eLHoWK0Nj0AYawUaO8blcrlcLt+0CcxgBvOKFaJz2YtO0Sk6VV+P5/E8np8xQ/1U/VT9dOVK0blaK/2842CM2a2HuYe5h/mhh9pvbb+1/dbt2wEBAWNjRedqmtu3tU7y2FjFT/FT/A4eFJ2oteMRCGNOSDsIysurXVy7uHZxaWm6LRxzYS7M/fZbLMdyLB8xgguHY+ERCGNOJHhn8M7gnV261I2pG1M3JjMTB+NgHBwYKDqX3QbAABhQWQn5kA/5I0dqi+Jnz4qOxf4Vj0AYcwJBY4LGBI3p3r3erd6t3i0vT7eFIwzCIOyLL7TCMWAAFw7HxiMQxnTMOMU4xTjlN78hb/Im76wsKIACKPDxEZ3LXrSEltCSU6dwGS7DZaNGaYXj6lXRudhP4050xnRIJplkGjyYjGQk4/792t327UXnshfNp/k0/8gRzxc8X/B8ISbm5LWT105eq64WnYvdH57CYkxH5PPyefl8dDQVUREVNe7tpL/CAdEQDdEffYSrcBWuGjWKC4c+8RQWYzogpUgpUsr06TAOxsG4zZvRhCY0uep0BsFsVhRFUZTXX9euHfcIXPbTuIAw5sB+6BjXaeNfY8e4dtTtO+8oqKCCf/iD6Fiseej0HQxjzgxRKpPKpLJVq+B5eB6ef+MN0YnsRUmUREkNDWAFK1hnzVJRRRU3bxadizUvHoEw5gC0xj93d4+rHlc9riYn4wf4AX4wcaLoXHabBbNg1t27WIqlWDp5ssVsMVvMn3wiOhZrGVxAGBOo38p+K/ut/NWv3ILdgt2C9+6F1+F1eH3kSNG57BYEQRB04wZVUzVVP/OMukPdoe7IyxMdi7UsLiCMCRBSEVIRUvHww3Xn6s7VnUtPh0WwCBYNGCA6V9NYrbZSW6mtNDKypK6krqTuzBnRidiDwY/xMvYABa4KXBW4qlu3ex3vdbzXMT9fr4WDTtAJOlFerl2FhXHhaJ14EZ2xB+Cp3Kdyn8rt0weDMRiDDx3CUAzFUH9/0bnstgyWwTKLpX59/fr69VFRpUqpUqpUVYmOxcTgKSzGWpAsyZIsBQdrV+np2q64jzwiOpfdhsNwGH7smMuLLi+6vDh2bHHP4p7FPb/7TnQsJhZPYTHWAqTl0nJp+ejRWsE4dky3hSMKoiBq3z6vd73e9Xo3KooLB/tnPAJhrBlJnaXOUucpU9Af/dH/ww+1uzo8YzwVUiF1wwbt/I25c7Wb3DHO/hWfic5YM5COSEekI/PmYSAGYuDGjdoZ4/rbaoS20Bbakpio9lR7qj0bGxiJROdijkl3f8EZcxyIUqlUKpW++y7+Dn+Hv0tIEJ3IXo0d42hFK1pnz1b7qf3Ufhs3is7F9IGnsBizQ2xsbGxsrItL+ZflX5Z/uXGjtrYxY4boXHb7vmOcbGQj29Sp6svqy+rLKSmiYzF94QLC2H3oYe5h7mF+6KH2Ie1D2ofs3Kn9Ao6JEZ3LbvEQD/E1NRADMRATE6N4K96Kd3a26FhMn7iAMPYT+lN/6k/e3q5GV6OrMS1NuztwoOhc9qLVtJpWX7liWGRYZFgUGWnJteRacktKROdi+sZrIIz9G7Isy7LctSscgANwoPHgpv79ReeyFyVSIiVeumTba9tr2xsRoeaquWruxYuiczHnwCMQxv6JVjgefxwICCgrS1vjePxx0bnsRTmUQznnzjUsaFjQsGDkyDMbz2w8s/Ef/xCdizkXbiRkDAACQwNDA0ONRgiBEAgpKNBt4UigBErIycFBOAgHDRzIhYO1JB6BsFZNmi3NlmYPHQprYA2s2bdP26uqXTvRuexFGZRBGamp7nXude51kyYV+hf6F/rX1orOxZwbr4GwVklaK62V1o4dC8EQDME7d2qFw8NDdC67xUAMxGzd2rZL2y5tu7z0Ug7mYA7W14uOxVoHHoGwVkUaJA2SBsXH4xScglPMZu2sboPupnJ/6Bjvp/ZT+731lug8rHXiAsJaBTlZTpaTExLADGYwr1ghOo/93wDIIBNBOIRD+IIFymRlsjL5vfdEx2Ktm+7eeTF2Pxo7xqW/Sn+V/pqUpNvCYQQjGO/dw9t4G2/HxXHhYI6ERyDMqfzQMX69/fX217dtgzRIg7Tx40XnspsJTGC6dcs21TbVNnXcuJLQktCS0EOHRMdi7J/xCIQ5hT4pfVL6pHh5tYtrF9cuLi1Nr4WD1tJaWnv9uo1sZKPhw7lwMEfGIxCma8E7g3cG7+zSpf7P9X+u//PBg9pdSRKdy26hEAqhf/sbdsbO2DkiwrLYstiy+MIF0bEY+yn8GC/TpaAxQWOCxnTvXu9W71bvlpWl3e3ZU3Quu/0efg+/Lytz6evS16VvRIR24t/XX4uOxdj94ALCdMU4xTjFOOU3v2mIbIhsiDx0CFbACljh6ys6l90ICKioyBBkCDIERUUV+xX7FftduyY6FmP24CkspgvGs8azxrPh4TSdptP01FTtbvv2onPZbR2sg3VpaW7+bv5u/hMmcMc40zNeRGcOzfhfxv8y/tczz9j62PrY+jTuiqu/wkGf0qf06bZtMBtmw+znnuPCwZwBj0CYQ9J2xZ02jU7RKTr1l7+gCU1o0t8Z4xqzWVEURVFee0275jPGmXPgEQhzKD90jMsgg7xli+4Kx/cd49SNulG3N9/UCse8edoHuXAw58IjEOYAEOW18lp57Z/+BNtgG2xbsEB0IntpI6X6esNgw2DD4Fde0U78+/BD0bkYa0n6eWfHnIrW+Ofu7hHqEeoRunUrREM0RE+aJDpX09y+jZVYiZWxsVrhaOxHYcy58RQWe6D6rey3st/KX/3K447HHY87+/djNEajHgvHXJgLc7/9FsuxHMtHjFD8FD/FjwsHa11cRAdgrUNIRUhFSMXDD9Ntuk23MzNxFa7CVUOHis5ltwEwAAZUVsJe2At7f/tb5ZJySblksYiOxZgIvAbCWpR2VKyPj+Gu4a7hbuOeTn37is5ltzAIg7AvvoBcyIXckSMVVVEV9e9/Fx2LMZF4Cou1iMDqwOrA6t698TP8DD8rLNTu6q9w0BJaQktOndIKx6BBXDgY+z88AmHNytjT2NPYMyiI2lJbapuRAQgI+MgjonPZbSWshJVHj3rEesR6xI4de/LayWsnr1VXi47FmCPhEQhrFsZ0Y7ox/be/tSXbkm3JR47otnBEQzREf/QRLIAFsCAykgsHYz+ORyDsF5E6S52lzlOmoD/6o39j34Obm+hc9qKdtJN2rlunPqE+oT7R2DFus4nOxZgj4xEIaxJZkiVZmjsX/xv/G/87OVm7q6PC0XjGuAUsYFm2TCscc+dqH+TCwdj94BEIswOiTDLJtHSpdlb30qWiE9mLkiiJkhoawApWsM6apUar0Wr05s2iczGmR1xA2E+KjY2NjY11cSmXy+VyOSkJ9sAe2PPSS6Jz2W0WzIJZd+9iKZZi6eTJFrPFbDF/8onoWIzpGRcQ9m/1MPcw9zA/9FA7j3Ye7Tw++gg34Sbc9NxzonPZLQiCIOjGDaqmaqp+5hl1h7pD3ZGXJzoWY86A10DYv+hP/ak/eXu3/7r91+2/zs7Wa+GgAiqggsuXDVcNVw1XhwzhwsFY8+OtTBgAAJhiTbGm2EcfhTbQBtpkZ+OH+CF+GBwsOpe96ASdoBPl5aSSSurQocp8Zb4yv6xMdC7GnBEXkFZO698ICKAqqqKqY8dwG27DbX36iM5lt8EwGAYrSn1ZfVl92dChZyaemXhmYkWF6FiMOTPezr2VkiRJkiRZpm/pW/r24EE4CSfhZOfOonM1zWefucx0meky89lnlZ5KT6Xnd9+JTsRYa8BrIK2MdlTskCFQDMVQfOwYrIE1sEaHhSMKoiBq3z4vi5fFyzJqVHHP4p7FXDgYe6D4KaxWQlorrZXWjh0LwRAMwTt3YjzGY7yHh+hcdkuFVEjdsEE7f4Mb/xgTiUcgTk7KlDKlzFdfRU/0RM+9e/VaOGgLbaEtiYla4Zg9W7vLhYMxkXgNxEnJyXKynJyQAItgESxasUJ0Hns1doyjFa1onT1b7af2U/tt3Cg6F2Ps//BTWE6isWPc44DHAY8D77+PC3EhLnzrLdG57PZ9x7i21ciUKepkdbI6uXGvLcaYI+E1EJ3rk9InpU+Ku7tnmWeZZ9n27ZAGaZA2frzoXHaLh3iIr6mBGIiBmJgYxVvxVryzs0XHYoz9OC4gOqUVDi8vz0TPRM/Exj2dRowQnctetJpW0+orVwyLDIsMiyIjLbmWXEtuSYnoXIyxn8drIDoTvDN4Z/DOLl3qE+sT6xMPHtTuSpLoXPaiREqkxEuXbHtte217IyLUXDVXzb14UXQuxtj946ewdELbo+o//qPukbpH6h7JzdXu6rBw5FAO5Zw717C3YW/D3rCw0+bT5tNmLhyM6RFPYTk403rTetP6J5+0dbB1sHXIyoL34D14z9dXdC57UQIlUEJODq7AFbgiOlpRFVVRb94UnYsx1nRcQByUNFIaKY0MCdEWxdPTMQRDMKRjR9G57EUZlEEZqanude517nWTJhX6F/oX+tfWis7FGPvleA3EwQSWB5YHlo8ZA92gG3TbvRuDMAiDPD1F57JbDMRAzNatbbu07dK2y0sv5WAO5mB9vehYjLHmwyMQByEfk4/Jx6ZOpcE0mAZ/8AGa0IQmV90V+MaOca3xT4d9KIyx+8YFRDDpiHREOjJvHqZgCqasXg0KKKCgfv5cZJBBJoJwCIfwBQuUycpkZfJ774mOxRhrebp7h+scEOUb8g35RmIiDINhMGzhQtGJ7GYEIxjv3cNbeAtvTZtmmWyZbJn88ceiYzHGHhwuIA9IOIVTOLm6Vv+5+s/Vf960SSscL7wgOpfdTGAC061btqm2qbap48aVhJaEloQeOiQ6FmPsweM+kBamnb/Rpk31N9XfVH+Tmoq7cBfu0l/hoLW0ltZev24jG9lo+HAuHIwx/cy168zTHZ/u+HTHtm3v/O7O7+787vBh+Aw+g89CQkTnsttCWAgLv/rKMNAw0DAwIuKU3ym/U37/8z+iYzHGxOMC0iIQ5Xw5X85PTYU5MAfmjBkjOlHTnD1re8j2kO2hkSNL8kvyS/IrK0UnYow5Di4gzcw4xTjFOGXiRPqCvqAvdu0SncduBARUVGQ4YDhgOBAVpY04rl0THYsx5nh4DaSZUSfqRJ3+8z9F57DbOlgH69LS3FLdUt1ShwzhwsEY+zlcQJqJMd2YbkwPCIBcyIXcfv1E57lvH8FH8NGWLV4DvAZ4DYiJ4a1GGGP3ix/jbSbUg3pQj759Reewj9ms9FJ6Kb1ee+3774JEJ2KM6QePQJoJlVIplXboIDrHj/q+Y1w7Y/yNNxRFURRl3rzv03PhYIzZjQtIMyEjGcnoeGsGdIpO0an6ejyP5/H8jBmWSkulpXL1atG5GGP65yI6gLN4rPyx8sfK6+qomqqpuvGdvUDfd4wbrAarwRoTY1lvWW9Zv2eP6FiMMefBI5BmUpxWnFacdukSLIElsOTMGVE5qJAKqfDaNfqKvqKvfvtby8uWly0vZ2aK/vkwxpwPF5BmRlfoCl1ZvlzMV7dawRd8wXfoUPWQekg9VFgo+ufBGHNe3EjYIhCly9Jl6fK+fRiFURgVHd1iXyoMwiDsiy9wOS7H5RERljaWNpY2FRWifwKMMefHI5AWQeT5pOeTnk8+/zy8C+/Cu7m5zf4lvv+8hgWGBYYFYWFcOBhjDxovoreQitqK2orae/d8Pvf53Ofzjz4CBAR0c6NiKqZiWcbNuBk3u7nd7+fT/r/aWqzHeqxftQpWwkpY+cILloWWhZaFNTWiv1/GWOvDU1gPWGBoYGhgqI+Py1cuX7l8NWEC7aW9tHfIELpO1+m6v3/jf4cP48P4cEUFvUPv0DvHjtF39B19l5LCmxoyxhzF/wKeYeMy/zPC/wAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNy0xMi0xNVQxNTo1NzoyNyswODowMKIRvi8AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTctMTItMTVUMTU6NTc6MjcrMDg6MDDTTAaTAAAATXRFWHRzdmc6YmFzZS11cmkAZmlsZTovLy9ob21lL2FkbWluL2ljb24tZm9udC90bXAvaWNvbl9jazFiemEwemo5ampkY3hyL3JpZ2h0LnN2Z7O3J80AAAAASUVORK5CYII=")}.icon-refresh:before,.icon-right:before{content:" ";display:block;width:16px;height:16px;position:absolute;margin:auto;left:0;right:0;top:0;bottom:0;z-index:9999;background-size:contain}.icon-refresh:before{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAMQpJREFUeNrt3XlcVHX3B/Bz7rCISi6IC+ijkpZpIswMyBLgluVuKm4pqWmEuG/hUpr5uFYoiuaSFrklZvroo+jPFRURZgYVxZ1K3HIXUBSGe35/XC9PWpYL8J2B8/6H1wwGn3sb5sz93u/3fAEYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOM/QUUHYCx59F0ddPVTVdXq5YXkxeTF1O3Ll7H63jdzY3eoDfojTp1UIta1FatCm/D2/C2kxPchttwu0oVyIRMyKxShVpSS2pZuTIkQzIklyuHv+Av+IudHURBFERJkvJbKlQo+IWhEAqhsgz2YA/2d+8WPP/oMXWkjtTx4UMMwAAMuH4d2kE7aHf9OoVQCIX8/jvuxJ2489o1WkJLaMmlS+AHfuB37hwmYAImnDtnNBlNRlNGhvJDiUSfX/ZygiiIgqhMmayJWROzJgYF4Xbcjtv9/akX9aJerq7QE3pCTwcHiIEYiMnMxNpYG2ufOYNTcApOOXDAcNZw1nA2KUn0cTwrLiBMKO+z3me9z9asKa+V18prtVr5tHxaPv3mmzgaR+Nod3cYCANhYMOGyr9+9VXla9myonMXFoqmaIp+8ADDMRzDz56FTtAJOh07RgmUQAkGA17Da3jNYMjrldcrr1dKyrGxx8YeG3vvnujc7I8QdbG6WF3skCFUjapRtYkTcSSOxJHVqr3Yz0tNVb6OH280Go1G43//K/oIn3rkogOwkgzR09bT1tPW3V3jrHHWOLdoIRtkg2zw84PTcBpO+/jgGByDY2rWFJ3U0tEiWkSL8vNxDa7BNSdOkAM5kMOuXTgYB+PgnTvz1uStyVuzbx8XmOKh0+q0Oq2tLW2hLbRl9WrsgB2wQ7duhf17aAWtoBWzZpncTe4m94gI0cf9JC4g7KU0oSbUhCpW1FTTVNNUa98eTGACU9u2uAf34J6WLWEuzIW5VauKzlni6UEP+txcZYju0CGoDtWh+pYt+QH5AfkB69cfxaN4FH/9VXTMkkJ3UXdRd3HBAuWKMTy8yH8hAQENH64MeUZFiT5+FRcQ9kwaN27cuHHjSpVsbW1tbW2DgxEREbt2Vb7bvLny1dZWdE721+gz+ow+S06W+kn9pH7r1+fdyruVd2vdOi4sz0f7rvZd7bs+Pvgv/Bf+KyEBjGAEIxb5+yjNp/k0PytLE6mJ1ES+9lpybHJscuzVq6LPBxcQ9hjlJqCNTbY+W5+tb98eFsEiWNS3LxyDY3CsXTvlsb296JzsJT2aHEBdqAt12bULMzADM5YsgQ/hQ/hw0yblk25enuiYlka7XLtcu3zTJozGaIzu2LG4fz85kzM5jxxpijPFmeLmzhV9PriAlHKefp5+nn4uLtgQG2LDQYOwDJbBMh99BIfgEBxycRGdjxUvOkSH6NDVq7gEl+CSFSvMx83Hzcejo49+c/Sbo99cuiQ6nyjKPY8qVchABjJcuYJe6IVeNjbFHqQNtIE2W7YYpxmnGad16CD6vEiiA7DipfwhNG6sS9Wl6lJ/+EF6KD2UHv76K6ZgCqZMmcKFo3RDX/RF3+rVYQWsgBXjx9uQDdlQero2XZuuTV+2zOui10Wvi6+9JjpncaMP6AP6ICBAWOFQc0RQBEXUqSP6fKj4CqSEKxizvY7X8fqkSaADHejati2usVtWwqhDX+2pPbXfsIFqU22qPW1aSl5KXkre0aOi4xUV3QPdA92Df/8b/MEf/CdMEJvmwgVlem/t2qLPC1+BlDAe8R7xHvENGypXGuvWFdzsAwCAdu24cLCXshgWw2JJUqetSv2l/lL/lBT19abfot+i3+LmJjpmYaMbdINu1K0rOgf4gi/4irsCehIXECvX5OMmHzf52NVVO087TzsvJkZzSnNKcyo1FRAQMDiYCwYrUurr69HrTa4iV5GrnDihu6O7o7sze7Y6e090zJeFC3ABLnjRhYGFiICALGe2IxcQK+OT4ZPhk+HgoNPpdDrdp5/agA3YwOnTGIMxGNO3r/oJUXROVjopK+rLlIGW0BJajh1rF2gXaBd4+rRut263bndIyKN/ZX0faHbADthRrpzoGCCDDDIXEPacPL/0/NLzy8DAXKdcp1ynlBTl2alT1Z5OovMx9pcSIRESnZ1hLIyFsd9/rxunG6cbt2+fOtQqOt4zQ0BAC3jj9gIvEHgT/0lcQCyUcqVRubJypfHdd9IZ6Yx0Zu9epWnf66+LzsfYC9kFu2BXQIDmjOaM5ozJpCMd6WjKFLU1iOh4Fo+vQNjfUWdN5Z7OPZ172mBQnv3gA76XwUoUdUGqHvSgnzwZpsJUmJqQoP9C/4X+C/6A9DTkTu7kzlcg7JHg4ODg4GCNRv0kpvwhHTiAn+An+IkFzPpgrDhMhskwWa+nS3SJLhmNWq1Wq9V+9JHoWJYGwzAMwzQa5ZH4e53CA5RW+vv6+/r7tWqlD0oflD5o9271k9jjLxDGShl1nxZERFy8WHtVe1V7deNGtWmn6HiWol5Uvah6UeKHsizmUqi00J3SndKd6tRJNskm2bR8OY7H8Ti+cmXRuUobSqIkSsrJUVYW37sHw2E4DH+Gwn0QDsLBihV5SLF4YDtsh+06dbLxt/G38U9OVu6VdOmi9OpS980oerSX9tJeRGyGzbCZ6LMCUPZh2YdlH6pDWQ8fisrBfwDFRNtH20fbZ8IELItlsey0afwG9ILCIAzCHj6kntSTep49C6thNaw+fRpDMARDTp/GbtgNu506BTNgBsy4cEFpQXHrltnb7G32vnXLYaLDRIeJt24l1kqslVgrJ+d5f/3jzSadneVj8jH5WNWqmmhNtCbaxYXqUT2q5+xMy2k5La9ZU9mBsHFj/Ba/xW8bNVKuNF9/HQxgAIOdnejTaXW8wAu87t3DbMzG7IEDDSsNKw0r164t6l+rzdJmabNMJqWAeHqKPg1mg9lgNlSqpHRTvnNHVA5+Aysij88qWbhQmQY4cKDoXJaODtABOpCeDtfgGlw7cADfw/fwvf37lfN34ICbm5ubm9vZs7GxsbGxsfn5ovM+L/V1kT83f27+3Pr1bZbYLLFZ4u5OJ+kknQwMpP20n/a3aMGz7Z4RAQF99ZVyRTJunPKkLBf2r9Fu0W7RbklJwck4GSd7eIg+bOW4nZ2V475xQ1QMHsIqZMoWra+8kt8zv2d+z9hY5dnWrUXnshjhEA7h2dlwAS7Aha1boTW0htYbN5pjzDHmmPj4ow5HHY46PL3rq9IDSPRBvLiCNumBEAiBaWnKs+rXtWuhLJSFsn/oknwOz+G5Fi0wHuMxvkUL6A29oXeHDkpBrVJF9PEIh4CAo0frknRJuqS6dW1r2NawrdGnz4teYVoLZYtjSVI2cBOXgwtIIVH/4M3VzdXN1bdsUXo7iL/UFev+faX99O7d0AJaQIvY2JwbOTdybmzYkDYlbUralOxsmAJTYIronJYnJSElISXh8mXl0cqV0AAaQIOVK9VZe+nn08+nn/f1LWhZQ0BAvXuX2sISBmEQ1qVLHuVRHu3Z4z7HfY77nI4dlS1+r1172R+P+ZiP+Tzk/CQuIC9JWejXoIHyyXrnTmgGzaCZq6voXMVN3fEOHdERHRcsKN+8fPPyzdet24f7cB8+eADTYBpME53S+j0+dHfggPpVmZUzblyF7yt8X+H7Nm0gEiIhMjQUVsJKWPnOO6XmnhsCAjZtalvHto5tnQMHlL/PNm2UK9fz50XHKyz2SfZJ9knip/GW/BdUEfFM8EzwTKhXT1otrZZW79tXavbReLT3tjLdctMmnIpTceqSJYb2hvaG9jt3io7HHlfwOh0qDZWGDh2q3IT+8MPS0gKHIimSIn//HbpBN+jWurXpmuma6dqxY8/7c3QjdSN1I48ehXiIh3h3d9HHJblJbpJbjRqit7blAvKcvDt4d/DuULeueb15vXn9vn3oh37oV6uW6FxFpWC6axZmYdaCBTZbbbbabP3qq8O9D/c+3Pv330XnY89H2RDKySn/Qv6F/AsffYRDcAgOGTWqpA99USIlUuLNm+iDPujTurVyRWJ65rsHllZAZHvZXrZ3dX18qLP48RDWM1IX/pkTzAnmhF27SmrhoGRKpmSzGebDfJi/Zk2+lC/lS599drTi0YpHK/76q+h87OUk10yumVzz5k3l0YwZDdc1XNdw3fz5DjkOOQ454eFUn+pT/YkTcSgOxaGOjqLzFhalcDg5KY9271b+ntu2NZQ1lDWUVffL+RvxEA/xljMEKLvL7rI7IiRAAvxz+iIjfAzN0qn7bdBb9Ba9tWdPiWsxogMd6IigA3SADuvWaS5rLmsuN2pkGm4abhoeEqLMM+fCUVKldU/rntY9O9v4gfED4wezZtEYGkNjGjSAYAiG4KVLCz5QlCgVKtBaWktrt29X7pE0b/6P/0kgBEIgkejkKvvR9qPtR4svaMIDWCp1Ixw7WztbO9uEBOUSv0ED0bkKjT/4g/+5c8rK6o8+Ui7p9+wRHYtZFrXtunRdui5dX7oUp+N0nO7nJzpXYVGHaKVvpW+lb7t2NXxk+Mjw0bZtT/47pdCo904aNxadW5l1V7u2Mi38wgVRMfgK5AnqSmPb8bbjbcevW1dSCof6SZKaUTNqNnu27VjbsbZj3d25cLC/cyTwSOCRwLQ0U1dTV1PXgAByJmdyHjlS+e79+6LzvSz0Rm/0dnAgIxnJuHGjsrPne++p31c6SAQEwAgYASMsYEfCR+Tecm+5N1+BWBztae1p7emoKOyNvbH30KGi8xQOkwnLYTksN3CgId4Qb4hXN6Ri7MUon8hffVV5tHSp8vUZhoIsXMGQ3VbYCluPH7eYledPUFqZ1K0reoiZC8gjavtotQuo6DwvTL2nYQADGL7+uryxvLG8MSJCWY9R0saymWVA1LvoXfQuI0bIF+WL8sXZs5UmlZazb0VJo3HRuGhc3NySNidtTtr8yy+icpT6ISx9qj5VnxoUpBSOBQtE53lRdJgO0+HMTPkr+Sv5q27dlLHRMWO4cLCiR2S4bLhsuBwZSV/T1/R1y5Z0iA7RIXHrE1jxKLUFRNlfoE4dpVvr+vXKs+L767+Y1FTNVc1VzVUvrxTHFMcUxw0bRCdipVPKmJQxKWPi45V7bTodTaAJNOEZpsmy55IXlBeUF1T4TSOfV6krIGovIRu9jd5G/8MPVruAahksg2U//qg88PFR5vefOSM6FmMA/+vl9SD/Qf6D/ObN6Uf6kX785hvRuUoKzWDNYM1g8QWk1I1Rnrc/b3/e/pNPlGaHb70lOs9z2wSbYFN0tLGmsaax5rBhypPiX0iM/RVlnUlurvIoLEz3ve573fe//gpREAVRM2eKzmet8lvlt8pvJX47g1JzBaIP1AfqAz09ldlIkyeLzvO8aAWtoBWzZimFY8gQ5VkuHMy6FCxYnEbTaFp4OIRCKITy6/h52bjauNq4ij9vJb6AKF1K7e3pHt2je99/by07wdEiWkSL8vPhM/gMPgsLM7mb3E3uERGiczFWGExtTG1MbRYuhMWwGBb37as8m5cnOpe1eOj90PuhNxeQIlehZ4WeFXqql8oWsIL0n6ifyE7BKTj1wQfGTsZOxk48dsxKJmUh6+rVFEIhFNKjR8EHJ/a3bNfYrrFdwwWkyHh+6fml55eBgbARNsJG9V6B5aOVtJJWDhtmCjGFmEJWrRKdh7HioPRe+/lnyIRMyBw9WnQeS2e7yXaT7SYuIIVOnWUl1ZfqS/WjopRLZPEbr/wT8iRP8pwyxRRvijfFR0eLzsOYCKZWplamVvPm0WbaTJvV6fXsSXmd8jrldRJ/pWbxb6zPKz09PT09/aOPYCpMhalNmojO848ezaoyLTMtMy37/HPRcRizBPI5+Zx8bvBg8AEf8Ll+XXQeS1PmtzK/lfmNr0AKjU+GT4ZPRuXKysYxX3whOs8/WgSLYNGGDY9Px2WMAahNHK9fV3b6DA8XncfSZEVkRWRFcAEpNHmYh3k4derjG8dYHppBM2jGmTOaSppKmkr9+yvPin8hMGaJlJY8sbE8pPW4SmMqjak0hoewXpq+j76Pvs+bb5ILuZBLaKjoPE8VDuEQnp0tl5HLyGXeey+pflL9pPqZmaJjMWYNzKvMq8yrwsOVfTBu3BCdR7RsXbYuWye+gFj9SnQ6SSfp5FdfWXr3TzKTmcwffqjuryA6D2N/5BXsFewVXL268qh6dfm8fF4+b2+PU3EqTnV0pMk0mSaXL6+8gf9Fz7gFsAAW2NjQEBpCQ/6wFe7H8DF8fOcOfoPf4DfPsKMfAgLev4+f4+f4+cOHT36belJP6rluHfwIP8KPgweLPm/F7lG3beMS4xLjEvHrZqy2nbtOq9PqtE2bKi+4xETReZ6G3qF36J3ISNN003TT9FGjROdhpZPSPLRiRRudjc5GFxKi/N107qxcGXt5QTREQ3T58qJzsn+gBz3oc3ONi42LjYvt7UXHsdohLNpKW2nr+PGiczzVRJgIE9PSMqtnVs+sbsE5WYmm3abdpt02eLDmoOag5uD580rhmDdP+W7z5lw4rExTaApN1d5i4lnskM/TFNzz+Iw+o886dhSd508erSSXt8vb5e0DB55bfG7xucV/vhRnrCjpZutm62ZHR8MkmASTSuFQT0mlAQ1oxA9dqazuCoReo9fotYgIMIIRjOL3BP6TztAZOkdFpSxOWZyy+NAh0XFY6aIM7Q4bVmrvEZRwVJfqUl3LuQKxmgKi36Lfot/i5kaTaBJN6tFDdJ4/GQtjYeyvv+bszdmbs/fTT0XHYaWLUjgqVFCGOHhBaollYUNYVlNA5GPyMfnYuHEWO9tqNsyG2aGhyv4H2dmi47DShcpTeSrfpw8kQRIkVawoOg8rIjLIIPMQ1jPzPut91vvsK6/gT/gT/qS2fbY0O3YoC5527BCdhJVO2AybYbOWLUXnYEWMgIC4gDwzcw9zD3OPnj2VR2XLis5T4LGNcHiWFRNMBzrQubmJjsGKFgZgAAbwENYzwxbYAluoLT8syFW4ClfXrFH2MzCZRMdhpRu1ptbU+g8L+FgJxlcg/8gj3iPeI75hQ9gDe2CPj4/oPAXCIAzCHj7UJGuSNcl8s5xZBpyEk3DS7duic7Ai1hyaQ3O+AvlHmhRNiibFAq88FsEiWLR8edLmpM1Jm3/5RXQcxgAAoA/0gT7nzomOwYrYHtgDe65eFR1DZXEFRJmOaGurbLBkQTfNH93zkDZJm6RNc+eKjsPYH+FwHI7DeRJHiXcQDsJBy+mlZ3EFRF4vr5fXv/sujsSROLJaNdF5CiyGxbB427bkmsk1k2ueOSM6DmN/ZH/C/oT9idhYZT+cmzdF52FFQ+or9ZX6xsaKzlGQR3SAPwXqJnWTullgi5JdsAt2qT2EGLMsB28evHnwZlYWtISW0HLyZNF5WFHYuDE5Njk2OfbIEdFJVBZWQBBhNIyG0W3aiE6iomk0jaadOGGsaKxorLhzp+g8jP0dU7wp3hQfHU0hFEIhP/wgOg97Sf7gD/7nzklukpvkFhYmOs6TLKaA6AP1gfpADw/4Gr6Gr11dRedRKbNboqOVR8+wnwFjFsA03DTcNLxfP+XRzJm0iBbRIvEbELFn1BJaQsv9+8255lxzbrNmypWH5dw8V1lMAVFaMLRtKzrG4/LylJWfljPmyNizk2VlndL48VKUFCVFeXjQJtpEm9asocN0mA7zjpjCPdogSpmeq+5r9P77xtnG2cbZzZod/eboN0e/uXRJdMynsZhuttqftD9pfzp4EKfjdJzu5yc6D0RCJETGxRkDjYHGQMsZUmOsMDRc13Bdw3V2duViy8WWi23Y0DzLPMs8q1YtTT9NP00/Z2c5W86Ws//ccw5H42gcXb48mMEM5r/YmTAKoiCqXDlaQStohZ3d8+bCnbgTd5Ypo3S1dnB40eOjZbSMlt27Bz2hJ/QshHUTs2E2zM7MxLfxbXz7+a/kcASOwBFEspPsJDtdvy6Nk8ZJ465exbbYFtsmJSmTc6xv8oPwAuKT4ZPhk1G5cu6V3Cu5V65dwzAMwzCNRnQumANzYM4HHxhbGFsYW8TEiI7DGGOWRnhXW/N483jz+Nat8SSexJPiCwdFUzRFP3hg42TjZOO0caPoPIwxZqmE3wMhLWlJazmtSjAcwzE8Li6pflL9pPo8RswYY08jvIDAG/AGvOHtLTqGSpm2+3//JzoHY4xZOmEFJIiCKIhsbJQuoh4eok+Eit6it+itPXtE52CMMUsn7B7I/e73u9/v/uabmI7pmP7isy0KzQgYASOuXUtxTHFMcTx1SnQcxhizdMKuQPL75PfJ7+PlJfoEqCiLsihr9+5Hj3jBIGOM/QNx90BOwAk4odOJPgEFJ2KptFRaunev6ByMMWYthBUQvIk38aZeL/oEqEgiiaTkZNE5GGPMWggrIDSLZtGs+vVFn4DH9zbnex+MMfasir2AqCvPsSk2xaavvCL6BMBxOA7H09OVnkH374uOwxhj1qLYC4j5ffP75vdr1xZ94AUOwkE4ePy46BiMMWZtir2AyF3lrnLXOnVEH7iKfMmXfE+cEJ2DMcasTfHfA2kEjaDRv/4l+sALTsCv0q/Sr6dPi87BGGPWptgLCLqjO7pb0BXISlpJKy1voxbGGLN0xX8F0gbaQBvLKSDSIGmQNOj6ddE5GGPM2hR/ASEgoBo1RB+4StnA6sYN0TkYY8zaFHsBoZk0k2ZWqiT6wFXZKdkp2SnXronOwRhj1qb4r0DKQBkoU6GC6ANX3L2b1j2te1r3QtjykjHGSpniLyB2YAd2llJAeOEgY4y9qOKfhbUcl+Nye3vRBw6+4Au+3HWXMcZeVLEVkODg4ODgYI0GjGAEI6LoA+cCwhhjL6fYCkhKQEpASoCNsA2sGGOMFa5iKyB21e2q21XnT/yMMVZSFFsBUWY75eWBDnSgs4BCcggOwSELGEpjjDErVcw30YnAG7zBW/y0WepDfahP5cqiczDGmLUq/mm8RjCCMSdH9IFjOIZjeJky/k7+Tv5Ojo6i8zDGmLUp/gISBEEQdOeO6ANXPajzoM6DOlWris7BGGPWpvgLyByYA3Nu3RJ94CpyJmdydnYWnYMxxqxN8ffC2k7bafvNm6IPvOAE+Ev+kj9fgTDG2PMq/pXoC3EhLrSc5oWyXtbL+po1RedgjDFrU/xDWJWhMlS+cEH0gauwMTbGxg0bis7BGGPWpvgLyApYASsyMkQfuIrKUlkq26iR6ByMMWZtir+AAACABV2BfIqf4qdcQBhj7HkVewGR58vz5fmnT4s+8AKJkAiJzs4e8R7xHvE8G4sxxp5VsReQepH1IutF/vILRVM0RT94IPoEFJyIddI6aV3jxqJzMMaYtdAU9y9MS0tLS0sjcnF0cXRx7N4dfoPf4Ldq1USfCGm7tF3afvbsZfNl82Xz/v2i8zDGmKUTdA8EAKpAFahiMok+ASoaQSNoRIsWonMwxpi1EFZA6Cf6iX46dEj0CSjI05k6U2c/P58MnwyfDAcH0XkYY8zSCdvgCQEBwXIKiNpcMdc31zfX19dXeXb3btG5GGPMUgm7AjGajCaj6cQJ5dHdu6JPRIEBMAAGNG8uOgZjjFk6cfdAAABAlpWvhw+LPhEFMiADMt55R3QMxhizdIILCAAYwAAGCxrKmopTcaqXl8cwj2Eew+rXF52HMcYslfgCchfuwt2DB0XHeJLGXeOuce/RQ3QOxhizVMILyN2YuzF3Y+Lj6TAdpsOZmaLzFFgIC2Hh+++LjsEYY5aq2BcSPunWtlvbbm3Lz3eRXCQXydMTzsAZOGMBvakQELBKlZpv1Xyr5lubNl1Ou5x2Oe3qVdGxGGPMUgi/AinQGlpD640bRcd4krxUXiov7d1bdA7GGLM0llNAhsAQGLJ1K+hBD/rcXNFxVHScjtPxDz90n+M+x31OuXKi8zDGmKUQPoSlunLlypUrVx4+dIl0iXSJ9PeH7bAdtterJzoXxmEcxjk4SD2lnlLPS5eurLqy6sqq5GTRuRhjRcfrotdFr4uvvVa9SvUq1av4+ro2c23m2qxBg2oPqz2s9tDRMcAnwCfA5/ff1d5+ovOKImwl+tPgcByOwzduJIkkkt59V3SeglzZmI3ZI0Yoj775RvmqrmNhjFmj4ODg4OBgjSb9fPr59PP9+9NMmkkzx46VO8md5E6vvaZ0zAAgICAAkEACCQDS09PT09Pv3tVO107XTl+7Vr4qX5WvfvXVkagjUUeizp4VfVzFBUUHeJIyVFS1qu0523O25zIylHUidnaic6kohEIopEsX03DTcNPwn38WnYcx9vx0Wp1Wp61ShSIogiLWr8dZOAtnBQW93E/Ny4NBMAgGzZgBS2AJLJk2Tem4kZcn+niLisUVEJUuRZeiS1m7FgbCQBhoOesxaBftol0HD5oqmiqaKr71lug8jLFnpwxNOTnJHeWOcscDB5TZlg0aFPovagNtoM2WLXer3q16t2q3bueGnRt2btjDh6KPv7BZzk30J3mAB3ioQ0WWA1tiS2zp76+7qLuou9i2reg8jLF/pg5VyWlympy2YUORFQ7VNtgG29q3f6XtK21faTt3rujjLyoWW0CMaEQj7tsHARAAASdPis7zJEqlVEqdPVt9YYrOwxh7uvT26e3T248ZA+NhPIwPDCyu34uzcTbODg319PP08/TT60Wfh8Jm8W98NSrWqFijoq0t3sf7eN+Cbqrvxt24u2rVW7du3bp169IlZRaZ0Sg6F2Psf7wWeC3wWtCokTIpZ80a5Z6qTfFNHroCV+AKIprRjGZJUt4nNm8WfV4Ki8VegajyLuVdyrv0/feUREmUlJMjOs+fzIW5MHfqVH8nfyd/J0dH0XEYYwBBFERBZGMj15HryHW++w4WwSJYZG8vNlXJu2dq8QUkNTU1NTX19m2IhEiIXLNGdJ4n4UgciSOrVXtw6cGlB5ciIkTnYYwBZK/OXp29etgwmAyTYbL4oSNKpmRKrl1bdI7CZvEFRCVfkC/IF2bOVP5HmM2i8/yJP/iD/9ix+kB9oD7Q01N0HMZKoybUhJpQnTqwH/bD/qlTRecpkAzJkIwWO+v1RVlNAVEX6OAMnIEzVq4Uneev2dqSjnSk++67husarmu4znLWrzBW8iHa7LfZb7N/0SLlDdtyWg/halyNqy9eFJ2jsFlNASmwATbAhmnTlAcWuEAnHuIh3t29TL0y9crU+/RT0XEYKw309fX19fXDw2EkjISRljPZpkAf6AN9jh0THaOwWV0BMRqNRqPx/HnqRb2o1w8/iM7zVB7gAR4REV51vep61fXyEh2HsZJI30ffR9/nzTflU/Ip+dTs2aLzPA2GYiiG7tghOkdhs7oCorLZZ7PPZp/lXomgF3qhl41N/on8E/knfvjB+6z3We+zr7wiOhdjJYHaHZvSKI3SYmPRG73R28FBdK4/CYMwCHv40DzPPM88b8MG0XEKm9UWkKTNSZuTNv/yC8RCLMSuWCE6z9NgAAZgwOuvmx3NjmbHmJhHz5a4m2mMFSebXja9bHotXVrkK8pfEt2je3Rv3bojgUcCjwRevy46T2Gz2gKiyvsp76e8nz79FIbBMBh2+7boPE+D7bAdtuvUSZukTdIm8b0Rxl6EvpK+kr7SuHHYCTthp169ROd5GlpEi2hRfj4NoAE0YMYM0XmKSon5JKzT6XQ6XViY8mjhQtF5nioUQiFUlukG3aAbnTqZJpgmmCZs2SI6FmOWTDtBO0E74Z13oDN0hs7//S+GYRiGWXALIQICWrZM6cY7aJDoOEWlxBQQhSRpN2k3aTclJuJUnIpTLf3m9d27+Aa+gW+89ZZhpWGlYeXx46ITMWZJ1FYksqPsKDvu3w9REAVRlSqJzvU0lEiJlHjzJjbFpti0QQOlgNy4ITpXUbH6IazHyTJ8Dp/D52Fh6iWk6ER/r0IFeofeoXd27dJ/of9C/8Xrr4tOxJglaPJxk4+bfOzqKq+QV8grtm619MJRYCtsha3jx5f0wqGy3EvAF3TlkRquNVxruDo74xk8g2e8vUXneqpESITEcuWoP/Wn/u3aVS1btWzVsuvX/2743fC7IStLdDzGipNPhk+GT0blyuAADuCwZ4+yolz81tb/hCbQBJqQkGB6z/Se6b2hQx89W+K3ui1xBUTlkumS6ZKZkAB+4Ad+ISFwES7CRcttdog7cSfurFRJ6i/1l/q/+67LWZezLmfXrVPK4f37ovMxVpSUHQIrVJCvydfka9u2QQzEQIzltwRSm7xiCIZgSLt2yt9ryZtt9TQlbAjrf5RLyLt35SA5SA4KCVFvXovO9Y/+Df+GfzdsqExP3L7dI94j3iPe2Vl0LMaKglo4oAW0gBZxcbAH9sAeHx/RuZ7ZQTgIBz/7TFngfOqU6DjFrcQWEFVKcEpwSvCuXeRDPuQzZ47oPM9Hq5UeSA+kBwcOeHfw7uDdoW5d0YkYKwwFhQMAALZvt7bCoW5t/er8V+e/Oj8yUnQeUUrYLKynU/cHyI7LjsuOi4+HSTAJJvn6is71rOgQHaJDV69KraRWUqu2bQ3xhnhDfEqK6FyMPQ9lun2NGsojdfq6Vis61zPzBm/wvnPHvNC80LzQ0/MoHsWj+OuvomOJUuKvQFT7cB/uQ7MZ8zEf8/v0ocN0mA5nZorO9azQF33Rt3p16kf9qF98vO6O7o7uzttvi87F2LPwzPLM8sx64w3lnuShQ8qzVlQ4HsEszMKssLDSXjhUJfYm+tNcXn159eXVt2/XqFejXo16GRl4GA/j4S5dROd6ZsmQDMl2dpAGaZDWo0eNcjXK1Sh3+/aV3678duW35GTR8Rj7Ix3pSEfNmuFaXItrd+yA9bAe1levLjrXi1m0yLjduN24fdYs0UksRakZwnoa5ZJaXbmurmS3VqtX53yS80nOJ6Ghad3Tuqd1z84WnYiVTrpVulW6VaNGKV2zZ81Sm4uKzvW81Om5D/If5D/Ib95c+bvKzRWdy1KUmiGspylvKG8obxg2DN6Bd+Cd7dtF53k5vXs72DjYONgcPlwwZMBYMVA2UCtfXpeiS9GlrF0LX8PX8PVXX1lr4QBf8AXfy5dxOk7H6d26ceH4a6W+gKj3RjT9Nf01/bt3p320j/ZZcUuRR9OApVgpVopNStJqtVqt9qOPlG9yF2BWuLTvat/Vvuvj44AO6IAmEwyEgTCwRw/RuV6Uuq4DEiABErp0UabnXrkiOpel4jeUJ6gtFGwCbAJsAg4fVj5JubqKzlU4DhzAztgZOw8caPjU8Knh09OnRSdi1qVgNmNMdkx2zOjRSouRL75QvmtrKzrfC3u0TkzuJfeSewUHpzimOKY4lrz9OwobF5CnUHcSlCvLleXKe/cqz5YtKzrXyyr4hPVoAZQ6jz02NjY2NtbSe4cxUTxDPUM9Q319sQN2wA4LF+JknIyTPTxE5yoseAWv4JVRowyXDZcNl0vvuo7nxQXkH+hO6U7pTnXqBO/D+/B+bKzyrBV/0noC7aW9tDclheIojuLGjlUXXorOxcTyuuh10euik1N+bn5ufu6sWTgTZ+LMAQPACEYwlqCh0P7QH/rPmGEcYhxiHDJhgug41qbkvBCKmH6Yfph+WNeudJAO0sE1a5RnS04hedyOHVgOy2G5iAhesFg6KLMRy5ZVNmYbOpRepVfp1XHjcDgOx+GVK4vOV9ioA3WgDgsWmKaYppimqM0P2fPiAvKclNlNXbpIzaRmUrO1a5VnS2AhUXuHLYbFsHjtWnm+PF+eP3lyil+KX4rfuXOi47GXUy+qXlS9KHv7ivMrzq84f9Ag+YR8Qj4xcaK6YFV0vqJCsRRLsd9+a3IzuZnc1I2eSn7X3KJS6mdhPa/Hb6699x6EQRiEPXwoOlehWwyLYbH06PXRu7d0XDouHT99Wrtau1q7+v/+zzPdM90zvUMH5fslaEijhFJ7T2l3andqdw4fXsGpglMFp/Pn6RV6hV6ZP7+kFw6IhViIXbJEKRzqrEQuHC+L//BfknLp37kz6EEP+h9/BAMYwGBnJzpXcaHP6XP6/MgRuA/34f68eZlXM69mXl2z5tywc8PODSuBhdVKKAWjaVNl5feAARAMwRDcp4/yXeufDPLMtsE22DZ3rrGqsaqx6qhRypNcOAoLF5BCohSSdu0gHMIhfO1aiIZoiC5fXnSuYjcMhsGw27fpOl2n6z//jANxIA5cu9ZtkNsgt0G7d/Nsr8Klv6+/r79fq5ZskA2yoUcPvIE38Eb//gXbApQ2j4ZeqQE1oAaffGIKNAWaAr/8UnSskooLSCHzCvYK9gr28MgfnD84f/DmzTgGx+CYmjVF5xKNIimSIn//Hd3QDd3WrwdXcAXX9etzYnNic2ITEnil79/TVtVW1VZ1d1dWRnfsCCfhJJzs3BmyIAuytNoSNzvqhdy/L++V98p7+/bldRzFo5S/4IqOp5+nn6efi4s0QZogTdi0CSbDZJis14vOZZnu36fRNJpGJyRIA6QB0oC9e+EW3IJbe/aUcyjnUM4hKUntGCA6aWFTF+Zl2mXaZdo1aiStllZLqwMDyZ/8yT8wEHfhLtwVGAhzYS7MrVpVdF5Lo25zoHld87rm9Y4dk39J/iX5F24qWly4gBQxdXokhVIohcbE4GJcjIu7dhWdy2p4gRd43btHs2gWzTpxQlnwdeKE0uTu5EnpXeld6d3jx/MG5Q3KG3TypNJm+7fflP+4+Me63ee4z3GfU66c3VG7o3ZH69bNn5o/NX9q3bo4GAfj4FdfhVbQClo1boxrcA2u8fBQJmE0agSLYBEssrcXfbqtS2oqEBBQ+/bKDqQXLohOVNpwASlWiLoFugW6Bf/+NxyDY3AsIoKHHgoXJVMyJZvNYAYzmG/cgFzIhdz/fcUojMKoa9cgBEIg5M6dZ/65QECg0WAwBmOwkxO0hJbQ0slJ+blVqkAe5EFelSqQCImQyFsQF5l20A7a/fyzpq+mr6Zvv35J9ZPqJ9W3nn19Shp+4xKkYEOoltASWn7/vfKsulMbYwwAgKIpmqIfPIBsyIbsiAhTK1MrU6t580TnYgouIIJ5xHvEe8Q7O2t2aHZodixfrkw7bN9edC7GRKJpNI2mnTiBE3EiTuzVSxmiSk0VnYs9jguIRUFU2q8PGoSIiKg2dStF8/ZZ6aQDHeiIIAIiIGLpUltbW1tb2xEjEmsl1kqslZMjOh77a1xALJQ6bRPSIR3SV63CIAzCoDffFJ2LsULlB37g99tvShv1jz9WWuXExYmOxZ4NtzKxUKZrpmuma8eOYSAGYqBWq8xCGjGCDtNhOsw3DZk1y8tTvkZF5QTkBOQEvPkmFw7rxFcgVkZdX4I9sAf2mDkTT+AJPNGnD8/mYpZvz578yPzI/MghQ44EHgk8EpiWJjoRezn8hmPl9Kn6VH1qUBD1o37Ub/585dnGjUXnYqXcoz3FoQt0gS7jxxtbGFsYW8TEiI7FChcPYVk5Q2NDY0PjffuUhQo6nTrUBT7gAz7Xr4vOx0oHdUU4jIJRMGr0aDgEh+BQ/fpcOEo2vgIpodQV0TaeNp42ngMHKiu4J0zglhisUIyAETDi2jWQQQb566+VvdHnzzcajUaj8f590fFY8eACUkp4n/U+6332lVfMn5g/MX8SGoou6IIuI0YonxRdXETnYxZuFIyCUZcugR3Ygd2sWeW7le9WvtvSpUqPsgcPRMdjYvAQVimhtnwwbTBtMG2YMycnMCcwJ7BuXWXr2g8/LNjXgzEAUDok7N+PNbAG1ggJuXvz7s27N1991RhsDDYGz5/PhYMB8BUIe4JnqGeoZ6ivLzbEhtgwLAyaQlNoGhyM4RiO4WXKiM7HChfNo3k079YtfA1fw9diYmQH2UF2WLJEaYd+8qTofMyycQFhf6sJNaEmVLGiTZxNnE1c166URVmU1bcv3sE7eCcg4PGtb5lly8tT2ubv26c0m/zuO8e+jn0d+/70E19RsBfBBYS9EHUnPPov/Zf+27mzsg6lc2eaTtNpemAgeqEXetnYiM5ZOt29C8tgGSyLi4McyIGcTZtyQ3NDc0Pj4lJTU1NTU2/fFp2QlQxcQFih8snwyfDJqFw51y3XLdft7bexMTbGxq1awTgYB+NatYI5MAfm1KkjOqfVerRlK1SBKlDl1Ck6Rsfo2O7dOAJH4Ij//CdnR86OnB379vEOj6w4cAFhxUq/Rb9Fv8XNTR4gD5AH+PmhCU1o8vGBTtAJOvn6Kv9KXQhpays6b7FT95RHQsLERGgADaBBYiJshI2w8fBhjMM4jEtMVLrT3r0rOi4r3biAMIui0+q0Oq2tLV2ki3TxjTfgS/gSvmzcGDMxEzMbNYIgCIKgWrXgB/gBfqhdW5k95uqKq3AVrnJ1tZid/fSgB31urrID4W+/QTWoBtXOnwc3cAO38+dhH+yDfenpShfa8+el8lJ5qfzJk8k1k2sm1zx7Vvkhxb+jImPPgwsIK1G8gr2CvYKrVzdfMl8yX6pZU1ouLZeWu7pCb+gNve3sKIIiKKJcOZgJM2GmnZ2UJWVJWXZ2NIkm0aRy5ZQFcYjkS77kW768ci8nK0uZrXT7Ni7ABbggKwuGwlAYmpmpdJHNytL8R/MfzX+ysiAO4iDuxo26H9T9oO4Hly/HxsbGxsbm54s+L4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYKzb/D4DEm9oGCaFQAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE3LTEyLTE1VDE1OjU3OjI3KzA4OjAwohG+LwAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNy0xMi0xNVQxNTo1NzoyNyswODowMNNMBpMAAABPdEVYdHN2ZzpiYXNlLXVyaQBmaWxlOi8vL2hvbWUvYWRtaW4vaWNvbi1mb250L3RtcC9pY29uX2NrMWJ6YTB6ajlqamRjeHIvcmVmcmVzaC5zdmejF0ikAAAAAElFTkSuQmCC")}.login_container .el-input input{color:#000;background:#fff}.login_container .el-input{display:inline-block;width:100%}.login_container .el-input input{-webkit-appearance:none;caret-color:rgba(0,0,0,.3);border:1px solid #fff}.login_container .el-input input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #eee inset!important;box-shadow:inset 0 0 0 1000px #eee!important;-webkit-text-fill-color:#666!important}.login_container .el-form-item{border-radius:5px;color:#454545}.verifybox{left:auto;right:30%;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.take,.verifybox{position:absolute}.take{top:0;left:0;z-index:-1}.login_container{height:100%;width:100%;overflow:hidden}.login_container .login_title{width:100%;height:60px;padding:10px 60px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.login_container .login_title img{width:10%;display:block}.login_container .login_contant{position:relative;width:100%;height:calc(100% - 60px)}.login_container .login_contant .login_img{display:block;width:100%;height:100%}.login_container .login_contant .login_form{position:absolute;top:50%;right:30%;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);min-width:400px;width:22%;height:460px;background-color:#fff;border-radius:11px;padding:30px;overflow:hidden}.login_container .login_contant .login_form .title_container{position:relative}.login_container .login_contant .login_form .title_container .title{font-size:24px;color:#1a1a1a}.login_container .login_contant .login_form .title_container .title .title_name{margin:0;font-size:18px}.login_container .login_contant .login_form .title_container .set_language{color:#fff;position:absolute;top:3px;font-size:18px;right:0;cursor:pointer}.login_container .login_contant .login_form .form_fields{position:relative;width:100%;overflow:hidden;padding:5px 16px;background:#fff;border:1px solid #e0e0e0;-webkit-box-shadow:0 0 14px 4px hsla(0,2%,90%,.5);box-shadow:0 0 14px 4px hsla(0,2%,90%,.5);border-radius:4px 10px 10px 4px}.login_container .login_contant .login_form .form_fields i{position:absolute;top:-50%;left:0;width:4px;height:50%;-webkit-transition:top .2s;transition:top .2s;background:#f5ab1b;border-radius:14px}.login_container .login_contant .login_form .form_fields b{position:absolute;top:50%;left:0;width:100%;height:1px;background:#e0e0e0;border-radius:2px;margin-top:-.5px}.login_container .login_contant .login_form .form_fields p{margin:0;padding:0;line-height:32px;height:32px;font-size:12px;color:#666}.login_container .login_contant .login_form .form_fields .show_pwd{position:absolute;right:10px;top:0;font-size:16px;color:#889aa4;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.login_container .login_contant .login_form .control{width:100%;height:70px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:14px;color:#919191}.login_container .login_contant .login_form .control,.login_container .login_contant .login_form .control .remember{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.login_container .login_contant .login_form .control .remember{width:36%}.login_container .login_contant .login_form .control .remember p{padding-left:8px}.login_container .login_contant .login_form .control .remember>input{position:relative;width:14px;height:14px}.login_container .login_contant .login_form .control .remember>input:checked:before{content:"\2713";background-color:#f5ab1b;position:absolute;top:0;left:0;padding-left:1.5px;width:100%;height:100%;border:1px solid #f5ab1b;border-radius:2px;font-size:12px;color:#fff;font-weight:700}.login_container .login_contant .login_form .login_btn{width:130px;height:40px;background:#f5ab1b;border:none;border-radius:10px;font-size:16px;color:#fff;text-align:center} \ No newline at end of file +.verifybox{position:relative;border-radius:2px;border:1px solid #e4e7eb;background-color:#fff;-webkit-box-shadow:0 0 10px rgba(0,0,0,.3);box-shadow:0 0 10px rgba(0,0,0,.3);left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.verifybox,.verifybox-top{-webkit-box-sizing:border-box;box-sizing:border-box}.verifybox-top{padding:0 15px;height:50px;line-height:50px;text-align:left;font-size:16px;color:#45494c;border-bottom:1px solid #e4e7eb}.verifybox-bottom{padding:15px;-webkit-box-sizing:border-box;box-sizing:border-box}.verifybox-close{position:absolute;top:13px;right:9px;width:24px;height:24px;text-align:center;cursor:pointer}.mask{position:fixed;top:0;left:0;z-index:1001;width:100%;height:100vh;background:rgba(0,0,0,.3);-webkit-transition:all .5s;transition:all .5s}.verify-tips{position:absolute;left:0;bottom:0;width:100%;height:30px;line-height:30px;color:#fff}.suc-bg{background-color:rgba(92,184,92,.5);filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7f5CB85C,endcolorstr=#7f5CB85C)}.err-bg{background-color:rgba(217,83,79,.5);filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7fD9534F,endcolorstr=#7fD9534F)}.tips-enter,.tips-leave-to{bottom:-30px}.tips-enter-active,.tips-leave-active{-webkit-transition:bottom .5s;transition:bottom .5s}.verify-code{font-size:20px;text-align:center;cursor:pointer;margin-bottom:5px;border:1px solid #ddd}.cerify-code-panel{height:100%;overflow:hidden}.verify-code-area{float:left}.verify-input-area{float:left;width:60%;padding-right:10px}.verify-change-area{line-height:30px;float:left}.varify-input-code{display:inline-block;width:100%;height:25px}.verify-change-code{color:#337ab7;cursor:pointer}.verify-btn{width:200px;height:30px;background-color:#337ab7;color:#fff;border:none;margin-top:10px}.verify-bar-area{position:relative;text-align:center;border:1px solid #ddd;-webkit-border-radius:4px}.verify-bar-area,.verify-bar-area .verify-move-block{background:#fff;-webkit-box-sizing:content-box;box-sizing:content-box}.verify-bar-area .verify-move-block{position:absolute;top:0;left:0;cursor:pointer;-webkit-box-shadow:0 0 2px #888;box-shadow:0 0 2px #888;-webkit-border-radius:1px}.verify-bar-area .verify-move-block:hover{background-color:#337ab7;color:#fff}.verify-bar-area .verify-left-bar{position:absolute;top:-1px;left:-1px;background:#f0fff0;cursor:pointer;border:1px solid #ddd}.verify-bar-area .verify-left-bar,.verify-img-panel{-webkit-box-sizing:content-box;box-sizing:content-box}.verify-img-panel{margin:0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;border-radius:3px;position:relative}.verify-img-panel .verify-refresh{width:25px;height:25px;text-align:center;padding:5px;cursor:pointer;position:absolute;top:0;right:0;z-index:2}.verify-img-panel .icon-refresh{font-size:20px;color:#fff}.verify-img-panel .verify-gap{background-color:#fff;position:relative;z-index:2;border:1px solid #fff}.verify-bar-area .verify-move-block .verify-sub-block{position:absolute;text-align:center;z-index:3}.verify-bar-area .verify-move-block .verify-icon{font-size:18px}.verify-bar-area .verify-msg{z-index:3}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-check:before{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAIlFJREFUeNrt3X1cVNW6B/BnbcS3xJd7fLmSeo+op/Qmyp4BFcQEwpd8Nyc9iZppgUfE49u1tCwlNcMySCM1S81jCoaioiJvKoYgswfUo5wSJ69SZFKCKSAws+4f2/GetFFRYG3g9/2Hz2xj+O2J4Zm19trrIQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKgjmOgAAADwOBhz83TzdPNs397qanW1ujJ2s8fNHjd7FBTkhuSG5IbculVdP1kSfeoAAPBwdFzHdXzgQN0S3RLdkpgY2SJbZMvNm9It6ZZ064cfGmQ2yGyQmZfX3KO5R3OPwkJdsi5Zl5yYKIfL4XL4mDHqs7AqGzhgBAIAoFFdI7pGdI1o1KjFlhZbWmxZv149OmXK4z3r4cPEiROfOFExKSbFVFDwqM+EEQgAgMY8y5/lz/LGjZu3bt66eev9+9Wjj1s4bAYNIkaMWHKyx3mP8x7nmzd/1GdyEP1CAQCASifrZJ3s6FjmWuZa5rprF3uLvcXeGjq0en5au3a8nJfz8k6d8lPyU/JTYmIq+wwYgQAAaIIk0WgaTaO/+IJm0SyaNWJEtf/IPMqjvJde0g/QD9APcHOrdGIhrxMAANzGmJwr58q569ZRLMVS7MSJNfajFVJIYYy/wF/gL7z0UmW/vUGNvk4AAHCHTqfT6XQrVtB4Gk/jg4KEBfmBfqAf+vSp7LdhBAIAUMPUwvH66+oj21eBSqmUStu3r+y3oYAAANQQtXDMmKE+WrlSdB4bvpwv58t/+62y34cCAgBQzeSt8lZ568SJFEiBFLh2reg8d2MD2UA28PTpyn4fCggAQDXRh+pD9aEjR1IABVDA5s20ntbTeklzf3eZF/NiXvv2Vfb7NHciAAC1nRwsB8vBvr5Wf6u/1X/nTubO3Jl7A+0tWvImb/LOyemc3zm/c/6ePZX9dmxlAgBQRfTd9N303Tw8rFusW6xbEhPZLDaLzXJyEp3rHjNoBs24dYt/wj/hn3h5mUwmk8mkKJV9GoxAAAAekz5AH6APeOYZ6znrOeu5Awc0WzgCKZACrVZ2hB1hR15++VELhw1GIAAAj0hdVdWli/ooNVX9WvnlsNUflHSk45wbuZEbg4LUwrFhw+M+LUYgAACV1CuoV1CvoCef5Kv4Kr4qIUE9qsHCcRsv4AW8YOHCqiocNtq7qAMAoFHqZoetW9MgGkSDDh+mhbSQFnbuLDrX/YWGmmJMMaaYsLCqfmZMYQEAPIBt23PLp5ZPLZ8mJ9MROkJHdDrRueyKpViKXbdO6aB0UDoEB1fXj8EUFgCAHX0v973c93KTJpbvLd9bvt+3T+uFg0/mk/nkL79UC0dISHX/PIxAAADuYuvLwQ/xQ/zQnj1sKBvKhj7/vOhc9vA4HsfjYmOd2jm1c2o3btxRdpQdZRUV1f1zMQIBALjNYDAYDAYHB9pEm2jTl19qvXBQGIVRWFKSWjgmTKipwmGDi+gAAERExJhZZ9aZdZGRNJ2m0/Tx40UnssuHfMgnPb2koKSgpGD0aIUpTGGlpTUdAwUEAOo9XbguXBf+/vu0lbbS1ldfFZ3HrgE0gAacPu0423G24+xhw5SOSkel440bouKggABAvaXjOq7j77xDetKTfv580Xns8iIv8srNlfKkPClv8OD0jukd0zv++qvoWLiIDgD1jrpnVXAwb86b8+Yffyw6jz18NV/NV+flWQZaBloGenufYqfYKXbxouhcNriIDgD1hi5Zl6xLnjyZL+AL+ILwcNF57OpLfanv1atsPpvP5vv7a61w2GAEAgB1nrpn1ejRPJNn8szoaM1ur05EREVF6ldfX0VRFEUxmUQnskejLyAAwOPT79fv1+9/7jn+E/+J/7Rjh7YLR3ExceLEhw9XTIpJMWm3cNho9IUEAHh08hB5iDykb1/+M/+Z/7x7N0VSJEU2aiQ61z30pCd9WZl1inWKdcoLL2R5ZnlmeR4/LjrWw8I1EACoM+S2clu5rasr+yv7K/vrgQO0jtbRumbNROe6G4/kkTzSYqFMyqTMgAC1cBw6JDpXZaGAAECt1zukd0jvkG7daBftol2HD1MERVBEq1aic93jdl8O9gv7hf0SGKhOVUVHi471qFBAAKDW0hfri/XFHTs6cAfuwBMS2Bw2h81p1050LruepWfp2fnzlaHKUGXopk2i4zwuFBAAqHVcw1zDXMPatrWSlayUkEBplEZp//VfonPZw86ys+zsm28qE5WJysQPPxSdp6qggABAraHuktuiRYOgBkENgg4dYt7Mm3k/9ZToXHZNpIk0MTzcWGosNZYuXy46TlXDfSAAoHnqfRxNm6qP4uPVr/37i85l11gaS2M3b1YWK4uVxa+8oh7kXHSsqoYRCABoVo+oHlE9oho2pME0mAbHxKhHNVw4IimSImNiXLJdsl2yp09XD9a9wmGDAgIAmmPry9G4f+P+jfv/4x8UT/EUP3iw6Fz3d/hwUXpRelH6Sy9FR0dHR0dbLKITVTfcSAgAGsPYhT4X+lzos2EDG8FGsBHjxolOZA9fxBfxRWlpFeYKc4V57NjckNyQ3JBbt0Tnqim4BgIAmiEvkhfJiz78kMWzeBY/Z47oPPbwpXwpX5qdbRlmGWYZ5uOjbnZYWCg6V03DFBYACKdbq1urW7tiheYLRypP5anffluRU5FTkTN4cH0tHDYYgQCAMOqeVX//O7vKrrKra9aIzmMPP86P8+NmM/fjftzP2zsrLSstK+3HH0XnEg0jEACocXJXuavcdepU1ol1Yp00fGNdP+pH/X78UUqSkqQkf38Ujt9DAQGAGqMP0YfoQ154gbbTdtq+cSMppJDCtDcTwokTLyiwvGh50fKiv79xuHG4cbjZLDqW1mjvfxwA1DluZjezm3nECMkgGSTD11+rRx0dRee6G8/gGTzj+nU+gA/gA/z81BGH0Sg6l1ZhBAIA1Ua9g9zHh/3MfmY/R0WpRzVYOE7yk/xkSYmUI+VIOSNHonA8HIxAAKDK6bvpu+m7eXhYt1i3WLckJrJZbBab5eQkOtcfKy9Xv44Zo7aQjYsTnai2cBAdAADqDn2APkAf8Mwz1gRrgjUhIYG9wF5gL7RsKTrXPQIpkAKtVlbMilnxpElKvBKvxO/eLTpWbYMRCAA8NnWqqksXddXSsWN0gk7QCWdn0bnuDao2dOJGbuTGoCCTyWQymTZsEB2rtsI1EAB4ZL2CegX1CnrySb6Kr+KrEhI0Wzhu4wW8gBcsXIjCUTWwFxYAVJral6N1axpEg2jQ4cO0kBbSws6dRee6v9BQU4wpxhQTFiY6SV2BKSwAeGge5z3Oe5xv3tzyreVby7dJSfQ2vU1v6/Wic9kVS7EUu26d0kHpoHQIDhYdp67BFBYAPFDfy30v973cpElFVkVWRdbevZovHJtpM23etk0tHCEhouPUVRiBAIBd6lSVoyMxYsRsq5SGDROdyx4ex+N4XGysUzundk7txo07yo6yo6yiQnSuugojEACwQ5L4dD6dT9+6VX2s3cJBYRRGYUlJauGYMAGFo2bUWAHps73P9j7b27Xr2bNnz549W7USfeIAYA9jslk2y+YNG9gmtoltmjBBdCJ7bA2dypVypVwZNUotHKWlonPVF1U+hfX7PW8CA9UtAnx9mQfzYB5Nmtz5Dz3IgzwKC+k1eo1ei4+naTSNpq1Zo5gUk2LKyBD9wgDUR/I5+Zx87oMP2CQ2iU2aO1d0HnvQ0EkbHruA9OK9eC/esmWD1AapDVK/+orm0ByaM2TIIz9hNEVT9IYNRfuL9hftDwmpby0iAUSQT8on5ZNLlrAZbAabsXSp6Dz28JV8JV/53XcVpypOVZzy9j694PSC0wt+/ll0rvrqkQuI15+8/uT1Jyen0smlk0snHz9Ox+gYHXN1rdp4KSnlE8onlE8YMUL9Rbl5U/QLBlCXqBfJQ0LUi+Th4aLz3N+lS+o2697e6kzFpUuiE9V3j3wNpHR26ezS2ZGR1VM4bHx8HHs59nLsdeBAj6geUT2imjUT9UIB1CVylBwlR738MulJT/qPPhKdxx6+hq/ha65ckWKlWCnW3x+FQ1sqPQJxN7gb3A29e1tbWVtZW5lMNdUQhifxJJ70zTdNujTp0qTL0KHf/PLNL9/88ttvYl42gNrJ7Te339x+GzuW5bAclhMVpU5ZOWhvU9UQCqGQa9es063TrdN9fLLKs8qzyk+dEh0Lfq/SIxBrf2t/a/+JE2u6kxjzY37Mz8ur9OXSl0tfTklRb2z6j/+o2ZcLoHZyi3aLdov285N2Sjulndu3a7ZwEBFRcTFP4Ak8YdQoFA5tq/wU1l/oL/QXLy9hiY/QETqi05U1L2te1vzgQdtFfGF5ADRMX6wv1hd7eqo9vWNjKZIiKbJRI9G57jGDZtCMW7fYUraULR01yrTNtM20LTVVdCy4v0qPINSLbrm56kW3Ll1EnwAtpaW01Ggse6PsjbI3Bg06c+bMmTNnrl0THQtApDtTza2tra2tU1LoJJ2kk9r7oMUzeSbPrKhg7syduRsMakOnPXtE54KHU+kRCF/Gl/FlGrr2cHtPHseVjisdVyYn39klFKAe6h3SO6R3SLduln9Y/mH5x8GDWi0ctr4cLJ7Fs/igIBSO2qnyU1i9qTf1zskRHfxu7G32Nnu7d2+1oCQmopBAfaL+vnfqJIVJYVJYUhLrx/qxfv/5n6Jz2cNSWApLCQlRhipDlaGbNonOA4+m8gWkM3WmzrGxooPbtYyW0bJevdQptuRk1zDXMNewtm1FxwKoDrYtgugNeoPeSExknsyTeXbsKDqXPewsO8vOvvmm8bzxvPH82rWi88DjqXQB6TK6y+guo3ftosW0mBafOyf6BO6vZ0/Hrxy/cvzq6FE3TzdPN0/tdkoDqAx1xNGiRfmI8hHlIw4epPfoPXqvWzfRueyaSBNpYni4sdRYaixdvlx0HKgaj7wMV5ZlWZZ1OsYYY+zYMfVo06aiT8genspTeeq331rmWuZa5vr5nfr01KenPv3hB9G5ACpD7T1ue5/Fx6tf+/cXncuusTSWxm7erCxWFiuLX3lFPci56FhQNR75TnS1p7Ci8Ml8Mp8cEKAeLS8XfUL2MG/mzbyfesphrMNYh7HJybZezqJzATyMrhFdI7pGNGrE5/F5fJ5tClm7hYNP49P4tB071MIxbdrtoygcdUyV3Qioy9Pl6fKef57n8Tye9/XXbCabyWY2biz6BO1aQAtowcWLFeMrxleMt+3mefGi6FgA/85gMBgMBgcH8wXzBfOFr75Sr+0ZDKJz3d/hw0VTiqYUTRk5Epuh1m1Vfie5foN+g37D0KFWV6ur1TUmRvOFxJM8yfN//9fhosNFh4s+Pif3ndx3ct/334uOBfD/fTk2bmQGZmAG2yd57bH15agwV5grzIMGYfPT+qHatiKRF8mL5EWDB1MohVLo7t339APRJNsmbb6+6rr0CxdEJ4L6SX3/fPihep/EnDmi89iDvhz1W7V1JDStMK0wrYiPV+8wHT1abSxVUiL6hO+vUyeextN4WkqKW5pbmlta166iE0H9oivVlepKly/XfOG4vSilIqcipyJn8GAUjvqp2lvaqtsvHz6sbss8ZAjNpJk088YN0Sduj20dPbvFbrFbKSm2O3tF54K6TU6UE+XE2bPJi7zIa9Ei0Xns4cf5cX7cbObP8ef4c76+aOhUv9XYbro2coAcIAd4e9Pf6G/0t7g4NovNYrOcnES/EPbwE/wEP/HTT9Z0a7o13c8ve0D2gOwBWr//BWoLW18OlsgSWeLnn9f0LtcPrR/1o34//siGsCFsiLe3cbhxuHG42Sw6FohV7SOQu9l22WTBLJgFP/88/5h/zD/W0N5ad7FtCSGRRBIlJ7uvdV/rvva//1t0LqjdbH056M/0Z/rzZ59ptnBw4sQLCqSnpaelpwcNQuGAf1fjBcRGndo6flzqLfWWeg8ZwjN4Bs+4fl30C2IPm8PmsDnt2llbWFtYW9g2bezZU3QuqF3U35tBg7Tel8P2frQ2tja2Nh46NDM4Mzgz+OxZ0blAW4QVEBtjU2NTY9O0NPIgD/Lw9eXhPJyH//qr6Fx2fUQf0Udt26pD+qQkua3cVm5bXS19oa6w9eVQf89jYrTal8O22IU5MAfmMGpUVlpWWlaa0Sg6F2iT5obM6lYNsqwWkoQENpvNZrM13HnQ1npzvXW9df2gQXjDwb+rLX05VLadJMaMUZexx8WJTgTaJnwEcjf1F9dkkhZJi6RFzz3H03k6T//lF9G57IqgCIpo1UrqJfWSeiUkuHd27+ze2d1ddCwQSx+qD9WHPvWUdaR1pHVkfLxmC0cgBVKg1cq6s+6s++TJKBxQGZobgdztzie4C9YL1gsJCepWDhru8+FBHuRRWEgZlEEZQ4ao13oyMkTHgpqh36/fr9/v4sIP8UP8UGoqnaATdEKDu0DfbujEjdzIjUFB6t52GzaIjgW1i+YLiI26aqV7d9aINWKNkpO13jBHVVTE2/A2vM2QIaZDpkOmQ+npohNB9bC1C2BJLIklpaay/qw/6+/iIjqXPczMzMy8cKHxmvGa8dr774vOA7WT5qaw7MlyynLKcsrJUQuHj496ND9fdK77a9GCXWVX2dVDh9wC3QLdAvv1E50Iqpat86U0X5ovzU9I0HrhUIWGonBAVag1BcRGnaP917/UR76+thucROe6vxYtJCYxiSUk6LiO6/jAgaITwePxOO9x3uN88+ZqB8yDB2k5LaflPXqIzmVXLMVS7Lp16vtnyRLRcaBuqDVTWPbYLlZyF+7CXZKS6EP6kD7UcJ8Pd3In95s3eQPegDcYOdK01rTWtDY5WXQseDh9L/e93PdykyZlT5Q9UfbEgQPMn/kzfw1/INhMm2nztm1KT6Wn0nPKFPWg1So6FtQNtb6A2Nj2rJLGSGOkMcnJbD6bz+Z36CA61/0VF1tft75ufX3kyCxDliHLkJQkOhH8MXWqytFRXcSxe7d6dNgw0bns4XE8jsfFxjq1c2rn1G7cuKPsKDvKKipE54K6pdZNYdmTHZEdkR1x/rxloGWgZaC3N1/FV/FVWu/r0bSp9J70nvTe3r26Ql2hrtDfX3Qi+COSxKfz6Xz61q3qY+0WDgqjMApLSlILx4QJKBxQnepMAbGxdRbk2TybZ/v42HYPFZ3r/po2pV20i3bt2yevkFfIK4YPF50IiIgY05l1Zp05MpJtYpvYpgkTRCeyy4d8yCc9vaSgpKCkYPRotXCUloqOBXVbnZnCskedeujUSX2UnKxOQXTpIjqXXXrSk76sjHVgHVgHg8H4lvEt41t794qOVd/I8+R58rxVq9gRdoQd+Z//EZ3n/s6ccdzjuMdxz8CB6R3TO6Z31PBWQFCn1LkRyN3UG/kuXWLH2XF23MdH7beQmys6l11GMpKxYUO1t3x0tO5fun/p/jVqlOhY9YW6lc5bb2m+cNz+PZZcJBfJZdAgFA4Qoc4XEBt108bLl6V8KV/K9/amxbSYFmu4r8ftQkJraA2tiYqSw+VwOXzMGNGx6ir5oHxQPvi3v6mPli0Tnccevpqv5qvz8irCK8Irwv39M6MzozOjf/pJdC6on+pNAbGxveEalDYobVDq68vf5e/ydzW8TfXtQsK2sq1s686dd/pIQJVQd1MOCGCX2WV2+eOPReexqy/1pb5Xr6qrC/39bdf6RMeC+q3eFRCbjJcyXsp46coVx2uO1xyv+fnxo/woP/rPf4rOdX+OjiyH5bCcqCh5q7xV3jpxouhEtdWdqcGf6Cf66YsvaD2tp/WSRt8PRUWUTumUPmTI72+kBRBLo2+YmmMrJBWRFZEVkX5+6tEzZ0TnsudOA6Kn6Wl6essW2ydo0blqC7dot2i3aD8/XsgLeeGOHcyduTP3Bg1E5/pjxcW8O+/Ou48YYdulWnQigH9X51dhVVbvY72P9T7Wpo3DbofdDrsTE+kYHaNj2m0YxSN5JI+0WNgNdoPdeOUVxVfxVXxt9yuAjboar08fCqZgCk5MpHW0jtY1ayY61z1ur8KzTrFOsU4ZNSrLM8szy/PQIdGxAP5IvR+B3C17QPaA7AFXr5YlliWWJQ4cSEtpKS3VboMo24iEN+PNeLPPP5ej5Cg56uWXRefSClvrYR7BI3jEgQNaLRy2DwKUSZmUGRCAwgG1AUYgD9CL9+K9eMuWDtcdrjtcj49nvsyX+Xp4iM5l1+0+D6SQQsrMmerUR2Sk6Fg1zS3NLc0trWtXpmd6pk9N1ez2/7b/X2NoDI159VVlqDJUGbppk+hYAA8DI5AHUFe7FBZamluaW5oPHkycOHENN4hSSCGFMfUP07p18gB5gDxg5kzRsWqKuktuhw7SJemSdCkhQbOFw+ZZepaenT8fhQNqI4xAKkmdEmnRgnzJl3wPHaIUSqGUvn1F57If+PYnXH/yJ//ZsxWDYlAMGl6u+ojuXLuKcYhxiDl6lFIplVK7dxedyx52lp1lZ99801hqLDWWLl8uOg/Ao3AQHaC2yc/Pz8/Pv3WrzZg2Y9qM2bFDWiOtkdZ4erIv2Zfsyz//WXS+ewNTPuUzRiVUQiVDhjhzZ+7Mr11Tz0PDI6mHZCvoUrwUL8UnJNAlukSXtLvoQRURoVxWLiuXFy0SnQTgcaCAPKIrCVcSriSUl7dp3aZ1m9a7djn80+GfDv+0dRzs3Fl0vnvYCome9KQfMqR9m/Zt2rcpKsrPzc/Nz619rXbVLUeaNqXn6Dl67sAB+p6+p+81PBIcS2Np7ObNyjZlm7JtxgzRcQCqAq6BPKbTC04vOL3g5k310fDh6lSRhhtE3b5GorbaXbNGDpAD5IDa80m4R1SPqB5RDRvy2Xw2n71rFyVREiV5e4vOZVckRVJkTIxLtku2S/b06epBzkXHAqgKGIFUEXVKqLzcucS5xLlk1y4+j8/j8/r0YSfYCXZCuz2yWQErYAV+fs6hzqHOoRZL/t78vfl7jx0TnetuBoPBYDA4ONzYd2PfjX3bt7MMlsEytL7J5OHDRa2LWhe1Hjfu+AfHPzj+QXm56EQAVQkX0avJndanTcqalDWJjWWD2WA2WPsNo9T7Ed5+2+Rh8jB5aGVTQcZks2yWzRs3MgMzMMO0aaIT2cMX8UV8UVpahbnCXGEeNOj3I1SAugUFpJp1jega0TWiUaMW+hb6FvroaJpFs2jWiBGicz0I/4J/wb9YtcrkanI1ub7+uqgc8jn5nHzugw/YJDaJTZo7V/TrYg9fypfypdnZlmGWYZZhPj625d+icwFUJ1wDqWa5IbkhuSG3bpXkleSV5I0bx2fymXym9htEsalsKpu6cKF8Wj4tn37vvZr++bJJNsmm0FDNF46VfCVf+d13FTkVORU5gwejcEB9ghFIDbNdBG6yqsmqJqt27lSPjh4tOtcDJVESJYWFKS2VlkrL6mu0pC7LDQlRO0eGh4s+7fu7dEm9sdTb29a4THQigJqEEUgNO/fiuRfPvVhWpv7hefFF2yod0bkeyI/8yG/BAvUP/OrVVf306rLcKVPUZcYffST6dO3qR/2o348/sqVsKVvq44PCAfUZVmEJoq7aslr7F/Yv7F/49dfXrl27du1a167qv/bsKTqfXYwYMU/P9lPbT20/tUWL/NT81PzUw4cf9enuNMjqQ32oz7ZtbCPbyDZqsC8HJ068oEDyl/wlfz8/Y4AxwBjw3XeiYwGIpL03aj0THR0dHR1tsbi4uLi4uEyeTJtpM23etk10rgdh8Syexc+ZI+fKuXLuJ5/cPvrQU6K6Ql2hrtDfX9op7ZR2bt9+p8+JxvAMnsEzrl+3NrY2tjYeOjQzODM4M1jDHSwBahCugWiM7X6HC/0v9L/Q/4sv1Fa2kyaJzvVA0RRN0Rs2KC6Ki+Jiu9Paar37P9MX64v1xZ6efC6fy+cePqxuX/7EE6Lj342f5Cf5yZISJjGJSc8/rzCFKezIEdG5ALQEBUSjbIXEbDabzWbbLq1TpojO9UCcOPHPPlOvDQQGqgetVneDu8Hd0Lu3tbW1tbV1SgqdpJN0smVL0XH/mO2GvzFj1O3w4+JEJwLQIs1NGYDq3Llz586d41y9VrJ3r3OKc4pzSqdOFEMxFOPmJjqfXYwYMVluP6/9vPbzOnZ0/sX5F+dfvvvOusS6xLokMZF9zj5nn7duLTrmPQIpkAKtVlbMilnxpElKvBKvxO/eLToWgJZhBFKrSJK6Cmr9evUPtW1vJQ273aKVjGQkY8OGouPc4/Z293wYH8aHBQaaRplGmUZt3Cg6FkBtgAJSKzEmvyO/I78TEcH2sX1sX3Cw6ES1FTMzMzMvXGi8ZrxmvPb++6LzANQmmMKqpfKP5B/JP3LokLOzs7Ozc6tW6tE+fUTnql1CQxWzYlbM774rOglAbYRlvLUa5+pF3r//nQ7SQTqo4RvwtGI8jafxn3yivm5LloiOA1CbYQqrjtGV6kp1pcuXkxd5kVft6fNR7W7fX6P0VHoqPW2r2e5dZgwADw8jkDpGaaw0VhovXsw38o18I6ZmeByP43Gxsc2eafZMs2emTlWPonAAVAUUkDrKJJtkk/zWW/QqvUqvaqWvRw0KozAKS0pyaufUzqndhAlH2VF2lFVUiI4FUJeggNRxSpASpAS9/ba6jHbpUtF5qh0nTjwjo6SgpKCkYPRotXCUloqOBVAXoYDUE+pWHO+8QyEUQiHiGkRVrzNnHGMdYx1jn39e3fX4xg3RiQDqMizjrWfy9+Tvyd/zzTdPlj5Z+mRpSQm1olbUSvutdu3yIi/yys2VHCVHydHX9+T0k9NPTr96VXQsgPoAq7DqOfmYfEw+Nn8+m8PmsDlhYaLzPCy+mq/mq/PyLAMtAy0Dvb3VToAXL4rOBVCfYAqrnjMNMA0wDVi9mubSXJo7b57oPA/Ul/pS36tX2Xw2n83390fhABAHIxD4HV2sLlYXGxREcRRHcZ98QgoppDx8n4/qVVSkfvX1VW8ENJlEJwKoz3ANBH4nf0f+jvwdRmN73p635/n5LIgFsaBhw8QWkuJi3p13592HDTPFm+JN8RkZol8nAMAIBB5AjpVj5dhXX2VX2BV25dNPaT2tp/U10HL29i6+TMd0TDd6tPE142vG1w4eFP16AMD/QwGBh6I7qDuoOzhtGl2my3R5w4bqKiQ8kkfySItFHfn89a9qY6roaNHnDwD3QgGBSpG7yl3lrlOn0nbaTts3bqyqXua2wiEtk5ZJy6ZONe437jfu//JL0ecLAPbhGghUSv6v+b/m/5qd3b5N+zbt22RksLFsLBvbvz+lURqlVb5FLU/lqTz122+l36TfpN8MBuMc4xzjnL17RZ8nADwYlvHCIzGtMK0wrYiPbza+2fhm47t3V48uWcJX8pV85Xff2fu+3//7kiXXP7v+2fXPevUy9jT2NPY8elT0eQHAw8MUFlQL1zDXMNewJ55o2L1h94bd27UryynLKcu5cuX0gtMLTi+4eVN0PgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAO/4PSBxbMqgmA24AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTctMTItMTVUMTU6NTc6MjcrMDg6MDCiEb4vAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE3LTEyLTE1VDE1OjU3OjI3KzA4OjAw00wGkwAAAE10RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fY2sxYnphMHpqOWpqZGN4ci9jaGVjay5zdmfbTpDYAAAAAElFTkSuQmCC")}.icon-check:before,.icon-close:before{content:" ";display:block;width:16px;height:16px;position:absolute;margin:auto;left:0;right:0;top:0;bottom:0;z-index:9999;background-size:contain}.icon-close:before{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAADwRJREFUeNrt3V1sU+cZwPHndTAjwZ0mbZPKR/hKm0GqtiJJGZ9CIvMCawJoUksvOpC2XjSi4kMECaa2SO0qFEEhgFCQSqWOVWqJEGJJuyYYWCG9QCIOhQvYlgGCIFmatrVSUhzixO8ujNM1gSZOfPye857/7wYlfPg5xj5/n/fExyIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABATizsWti1sCs/v6y0rLSsdMaMZ/Y8s+eZPZMnm54LQO6kn/fp/UB6v2B6LrdRpgcwZf7e+Xvn7505MxAIBAKBrVt1ja7RNdXVaqlaqpbOmTP0z+u9eq/ee/euFEqhFH7ySeCjwEeBj+rr299of6P9jb//3fT2AMhcWVlZWVnZ3Ln6uD6uj2/eLF3SJV1VVapW1ara6dOH/nn9hf5Cf3HzpupW3aq7qSl5LHkseay+/nLt5drLtbdvm96eXPNZQJQqn1Q+qXzS73+vN+gNesObb0q7tEv7xImZ/kv6kr6kL/X3q0PqkDpUXx/aFNoU2rRz53l1Xp1X/f2mtxTAcMv1cr1cT5jQfb37evf1ujrpkR7p2bxZ1agaVZOXl/E/WCM1UnP/vv5cf64/f+utjg87Puz4cPfu1G9qbXp7neaTgChVeqD0QOmBP/5RHVPH1LHf/CbrN1EplVLZ2iqt0iqtv/51NBqNRqP37pnecgDpI42CgtTz9OTJ1PO0sjLbt6PX6/V6/Z/+1LG5Y3PH5g0bHnzX2pBkXlyPKTtadrTs6Ouvq/fV++r9LVscu6EbckNuPPGEhCUs4UWLpsanxqfGT5yIxWKxWCyRMH0/AH40GI6whCXc3Cyn5bScDoeduj11RV1RV559dkrFlIopFX19sauxq7GrbW2m7wenBEwP4JT0OY7UV6+/nrMbjkhEIitWSIVUSEVLS0ljSWNJYyhk+v4A/GQwHHtkj+xpahp8XuaImqwmq8m7di2oXlC9oHr2bNP3h1OsDUhgfWB9YP2WLdIgDdLwgx/kfICzclbOLluW35Hfkd/x5z8PPqABOGbYEcd22S7bKypyPsiDc6v9df11/XWvvWb6fnGKtQHRj+nH9GOrV5ueY/CVz4MHNCEBsm9YOHJ8xPEo6og6oo64YD/k1PaZHiDbvruD/uYb0/MMUyEVUtHWFi+Pl8fLf/Wray9ee/Haiz09pscCvGjYUpWpI44RBE8FTwVPFRRcLLxYeLEwHjc9T7ZYdwSi2lSbavvxj03P8UgsbQHj5pqlqlFK9iZ7k70u3i+NkXUB6Tvcd7jv8H//a3qOEXGyHciY6ZPjYzXw0sBLAy95YL+UIeuWsNJK75feL71/545arBarxYWFpucZUVjCEj53LvWEqK7mfSTAt9x6jmNEi2WxLL59O3ooeih6aNYs0+Nkm3VHIIO6pEu6Pv3U9Bijxsl2YBjPhiOtUAql0EP7oQxZG5C8SXmT8ibt35++5IjpeUaNpS3As0tVabpBN+iGgQE5Lsfl+KFDpudxirUBuTT90vRL0//xj/S1qkzPkzFOtsOHvHZy/FFUsSpWxfv2pZai//Y30/M4xfpLmRR/VvxZ8Wd//Wvf7b7bfbd//vPBS454xU25KTdnz+YSKbCZ55eq0h5cE2/OB3M+mPPBb3977dq1a9eu2XstLGtPog+Vvp5/X1tfW19bU5N6V72r3v3FL0zPlTHeRwKLeOV9HCPaLbtl94UL8a/jX8e/fv55vzwvfROQNEICmEc47OC7gKQREiD3CIddfBuQNEICOI9w2Mn3AUkjJED2EQ67EZAhCAkwfoTDHwjIIxASIHOEw18IyAgICTAywuFPBGSUCAkwHOHwNwKSIUICEA6kEJAxIiTwI8KB/0dAxomQwA8IBx6GgGQJIYGNCAe+DwHJMkICGxAOjAYBcQghgRcRDmSCgDiMkMALCAfGgoDkCCGBGxEOjAcByTFCAjcgHMgGAmIIIYEJhAPZREAMIyTIBcIBJxAQlyAkcALhgJMIiMsQEmQD4UAuEBCXIiQYC8KBXCIgLkdIMBqEAyYQEI8gJHgYwgGTCIjHEBKIEA64AwHxKELiT4QDbkJAPI6Q+APhgBsREEsQEjsRDrgZAbEMIbED4YAXEBBLERJvIhzwEgJiOULiDYQDXkRAfIKQuBPhgJcREJ8hJO5AOGADAuJThMQMwgGbEBCfIyS5QThgIwICESEkTiEcsBkBwXcQkuwgHPADAoKHIiRjQzjgJwQE34uQjA7hgB8REIwKIXk4wgE/IyDICCFJIRwAAcEY+TUkhAP4FgHBuPglJIQDGI6AICtsDUl+XX5dfl0ySTiA4QgIsmrwlXpYwhJubpaIRCSyYoXpuTIWlrCEz50b/Nrr2xGRiESqq6PRaDQavXfP9FiwAwGBI6w5IvEqjjiQAwQEjiIkOUY4kEMEBDlBSBxGOGAAAUFOEZIsIxwwiIDACEIyToQDLkBAYBQhyRDhgIsQELgCIRkB4YALERC4CiEZgnDAxQgIXMn3ISEc8AACAlfzXUgIBzyEgMATrA8J4YAHERB4inUhIRzwsIDpAYBMJNYm1ibWKqUeV4+rx5X3XwCdkTNyxoLtgC/xwIUnWPN5HI/i8Ge2A04gIHA168MxFCGBhxAQuJLvwjEUIYEHEBC4iu/DMRQhgYsRELgC4RgBIYELERAYRTgyREjgIgQERhCOcSIkcAECgpwiHFlGSGAQAUFOEA6HERIYQEDgKMKRY4QEOURA4AjCYRghQQ7kmR4AdhkMR1jCEm5uliNyRI54MBxhCUv43DkpkiIpunVLbspNuTl7tumxRu2W3JJbM2cGC4IFwYKFC6fGp8anxk+ciMVisVgskTA9HuzAxRSRFcOOOCISkciKFabnylj66ril8dJ46Zo1wY3BjcGNVVV6m96mt505Y3q8jKX/HyqkQipaWkoaSxpLGkMh02PBDixhYVysWaoa4bLq1lxGnqUtZBEBwZj4JRxDERLgWwQEGfFrOIYiJAABwSgRjocjJPAzAoLvRThGh5DAjwgIHopwjA0hgZ8QEHwH4cgOQgI/ICAQEcLhFEICmxEQnyMcuUFIYCMC4lOEwwxCApsQEJ8hHO5ASGADAuIThMOdCAm8jIBYjnB4AyGBFxEQSxEObyIk8BICYhnCYQdCAi8gIJYgHHYiJHAzAuJxhMMfCAnciIB4FOHwJ0ICNyEgHkM4IEJI4A4ExCMIBx6GkMAkAuJyhAOjQUhgAgFxKcKBsSAkyCUC4jKEA9lASJALBMQlCAecQEjgJAJiGOFALhASOIGAGEI4YAIhQTYRkBwjHHADQoJsICA5QjjgRoQE4xEwPYDtbAtH4kriSuIKT1BbXCy8WHixMB6fuGzisonLVq/W2/Q2ve3MGdNzZeysnJWzy5blt+e357f/5S8ljSWNJY2hkOmxbMcRiENsDcfV7Ve3X93+zTemx4IzOCJBJghIlhEO2ICQYDQISJYQDtiIkOD7EJBxIhzwA0KChyEgY0Q44EeEBP+PgGSIcACEBCkEZJQIBzAcIfE3AjICwgGMjJD4EwF5BMIBZI6Q+AsBGYJwAONHSPyBgDxAOIDsIyR2831ACAfgPEJiJ98GhHAAuUdI7OK7gBAOwDxCYgffBIRwAO5DSLzN+oAs18v1cj1hQk95T3lP+aefpr77y1+anitje2SP7Dl7NhW+1auj0Wg0Gr13z/RYQDYMvsALS1jCzc0SkYhEVqwwPVfGKqVSKltbQ++E3gm9U1V1Xp1X51V/v+mxnGL9B0p1X+++3n29ri71FeEA3GjwcR2RiESqq1MhOXfO9FwZa5VWaa2s7DnYc7Dn4O7dpsdxmrUBKX+7/O3yt3/2M5krc2Xupk2m58lYeqkqmogmomvWEA74QfpxHtwY3BjcWFXl1U9I1Iv0Ir1o69b53fO753fPm2d6HqdYG5BkXjIvmbd1q3pOPaeemzDB9Dyjlj7i2Ck7ZeeqVZzjgB+lP2o3dU5kzRqvHZGoGlWjavLyAg2BhkDDa6+Znscp1gZEzVQz1cyqKtNzjBpLVcAwnl/aOi7H5biH9kMZsi4gCzoXdC7o/OEPZZ/sk33TppmeZ0QsVQEj8vbS1owZJY0ljSWNoZDpSbLNuoAMrBtYN7DuRz8yPceIWKoCMubVpa3Q/ND80HwP7JcyZF1ARIkS9e9/mx7jkTjiAMbNa0ckgUmBSYFJ//mP6Tmyzdr3gZTGS+Ol8Rs31FK1VC2dM8f0POkjjuCTwSeDT1ZXp19JmR4LsIFr30eyQ3bIjs7O6AvRF6IvFBebHifb7DsCeUA1qAbV0Nxseg7CATjPrSfb9VP6Kf2UC/ZDDrE2IMlkMplM7t8vNVIjNffv53yAIUtVhANwnluWtvRhfVgf7u1VL6uX1csHDpi+X5xibUAu116uvVx7+3bqqz/8IWc3nD7imBecF5y3ciUnx4HcM36yPSlJSb71VrQj2hHtuHPH9P3hlDzTAzgt1hRrijW1tU3ZMWXHlB1z5qgr6oq68uyzWb+h/bJf9re0BIuCRcGitWs54gDMi8VisVgskZganxqfGj9xInWtqvJyuSE35MYTT2T79vRJfVKfPHas4+mOpzuerq01vf1Osz4gabGWWEus5dSpaV9N+2raV4mE7JJdsmvJEmmXdmnP/J3q+pK+pC/190undErn3r1FkaJIUeR3vzv9yulXTr/S12d6ewF8Kx2S4gvFF4ovfPxxX29fb19vQYE+qo/qowsWqPfUe+q9QMYrMumlKlklq2TVm29+Nxxam95up1n7U1gjKSstKy0rnTFDr9Qr9cotW1SLalEtq1enfgy4qOjhf+vOHVkn62TdJ58M3B24O3C3vv7Lg18e/PJgZ6fp7QGQufQ18/QpfUqf2rw59d3nn0/9OmPGsL+wRJbIkn/+U7+qX9WvNjUFZgVmBWbV17cXtBe0F3R1md6eXPNtQB4l/fkEiTWJNYk1P/1p+n0lvF8D8I/BHwvWokX/5CehaCgaiv7rX6nLs/f2mp4PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtvsf2vlfs7i0WI4AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTctMTItMTVUMTU6NTc6MjcrMDg6MDCiEb4vAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE3LTEyLTE1VDE1OjU3OjI3KzA4OjAw00wGkwAAAE10RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fY2sxYnphMHpqOWpqZGN4ci9jbG9zZS5zdmdHkn2WAAAAAElFTkSuQmCC")}.icon-right:before{background-size:cover;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAJ4pJREFUeNrt3XtcVXW6P/Dn2VwCBxUzNbnkkXRSGzXW2huQRLyMIqKRJF7Q1CkrDS+VGp3Gy9g5YzI6qVsNfTmlqGmipQiIiJqAcnOvhaKRHidshoatpKaBogL7OX+s6Mz8flO5CfzutXne/+zXWhR8QOXZ3+93Pd8vAHuAEKW10lpp7dix0mXpsnR5/34pX8qX8r/7TpZlWZaJGl//9f6+fY3/X+PnEf2dMMYY/yJqYcbbxtvG2/7+lEM5lLN7NyyCRbBowICmfj56m96mt/PzDZGGSEPkxImWNpY2ljYVFaK/T8ZY6+MiOoCzMn1t+tr09a9/TQfpIB0sLITlsByW9+r1Sz8v5mEe5vn7Q3toD+0nT/Y77Xfa73ROTuWNyhuVNyorRX/fjLHWg0cgzUybcmrThvIoj/JUFcMwDMOeeKLFvmA8xEN8TQ2sh/Ww/rnnFFVRFfXwYdE/B8aY8zOIDuBsqDf1pt6vvdbihaPRBtgAG7y8wAQmMKWlyflyvpw/aZLonwNjzPlxAWlWiOiN3ugdH//Av7QFLGBxd4dzcA7O7dgh75H3yHvmzBH9E2GMOS+ewmomplhTrCn2qads5bZyW3lJieg8jWgADaABf/yjul5dr65fvPj7uyQ6F2NM/3gE0kxsb9vetr3do4foHP8vLMACLPj977W1mS1bwimcwsnVVXQuxpj+cQFpLt/Ct/BtmzaiY/y0adNqltYsrVmakqIVEg8P0YkYY/rFj/E2E5+zPmd9znbpAggI+PzzovP8qItwES727n23w90OdzuEhfl86fOlz5f79lmtVqvVeveu6HiMMf3gEUgzqVfqlXqluFi7qqsTnefnYCImYmJ4OOVSLuWeONF/Zv+Z/Wf6+orOxRjTD15Eb2ZSlVQlVWVkYCRGYuSoUaLz3C86QSfoRHk5lVAJlURElISWhJaE/vWvonMxxhwXj0CaGT1Lz9KzS5eCDDLI+nnaCQfiQBwYEID1WI/1J05oi+6SJDoXY8xx8RpIM7tccbnickVlZdekrkldk4gwAzMwY8gQ0bnuF2ZhFmZ5eWkd7pMn+1T4VPhUKIq2RvLll6LzMcYcB09htShE6YJ0Qbqwdi3GYRzG6bCxbxbMgll372ojqilTlEAlUAncu1d0LMaYeDyF1aKI1CfUJ9Qn5s6FuTAX5r71lt6mtiAJkiDpoYeojuqo7uOP5VQ5VU6dOVN0LMaYeDwCecCkFClFSpk+HcbBOBi3eTOa0IQm/TX20RbaQlsSE9V+aj+131tvic7DGHvwuIAIIp+Xz8vno6OpJ/Wknrt2YRAGYZCnp+hcdpsAE2DC++8rbypvKm82TtHZbKJjMcZaHhcQwYxnjWeNZ8PDaTpNp+mpqdrd9u1F52qa/fu9LF4WL8ukSTmYgzl4547oRIyxlsNrIIJZ+lr6Wvrm5GBv7I29Bw6EN+ANeOMf/xCdq2mefbbGWGOsMR48GHQx6GLQxXbtRCdijLUcfozXQVSWVpZWllZV+df51/nX7dtH8RRP8aNGwQk4ASc6dhSdzz7du9NVukpXR4zoFNMpplPM/v1Xsq9kX8m+dUt0MsZY8+ERiIMpTitOK067dMm1zrXOtS4sTLurqqJz2e04HIfjsuw623W26+yCgsD8wPzAfMfbrZgx1nRcQBxUUVxRXFHclSu1CbUJtQnh4dpd/R1V+0OHuxGNaMzLazw3RXQuxtgvx4voOtEnpU9KnxR3d88yzzLPsu3bIQ3SIG38eNG57BYEQRB04wZVUzVVP/OMukPdoe7IyxMdizFmPx6B6ETZ+LLxZePv3Qv4PODzgM/j4mg37abdGzeKzmW3YiiGYm9vHIyDcXB2tlwil8gl48aJjsUYsx+PQHROTpaT5eSEBDCDGcwrVojOYy9KoiRKamgAK1jBOmuWGq1Gq9GbN4vOxRj7eVxAnISUKWVKma++ihVYgRXr1sEm2ASbDPoZYTZu8bIJNsGmd95RUEEF//AH0bEYYz9OP79g2E9SI9VINfL996mWaql23DjaQBtog44a+RRQQEEEIxjBuHSptgml2ax9UEeFkLFWhEcgTko7z2PIECqiIiravx+DMRiD9drYt3MnEBDQ9OmKqqiK6vgnPjLWGvA7OyelKIqiKJ99pj31NHQovAavwWtVVaJzNU1cHKyCVbAqM/Ppjk93fLpj27aiEzHGeATSahjTjenG9IAAOkyH6XBWFpyEk3BSf419tISW0JJTp2wdbB1sHaKiTg86Pej0oG++EZ2LsdaIC0grozXyPfpow7SGaQ3TMjNxKS7FpTps7CMgoPPntYuICG1q6+9/Fx2LsdaEC0gr1Z/6U3/y9nZNcE1wTThwAI7CUTjauHWK3litVEEVVDFypFqlVqlVpaWiEzHWGvAaSCt1Bs/gGbxx46bfTb+bfsOHUxqlUZpej6rt2hVX4kpcefy4sYOxg7HD00+LTsRYa8AjEAYAALGxsbGxsS4u5XK5XC4nJcEe2AN7XnpJdK6muX1bex0/XnuYICNDdCLGnBEXEPZvIMokk0xLlzb2ZYhOZK/GDne8htfw2iuvKJFKpBL5wQeiczHmTPg8EPZvWZdZl1mXHT/uY/Yx+5ivX4cn4Ul4MiLih4Y/B4cZmIEZBgPchJtwc8wY33Lfct/y2trKO5V3Ku+cPCk6H2POwOF/ETDHoDUmxsVpV1u3aq9ubqJzNY3ZrE1tvf66ds1nuDPWFFxAmF0C9wTuCdwzbBj6oi/67tuHc3AOztFfYx9Npak0dft2TMZkTH7xRe5wZ8x+XEBYk5i6m7qbuptMtlG2UbZRGRlQCIVQ2KmT6Fx2i4RIiExPh0zIhMwJE7SRSeMiPGPsp3ABYb+INrXVq5d2lZWlvT72mOhcdiMgoKIi7WL0aG1EcvWq6FiMOTLuA2G/iPaOvbEjPCQEBsEgGKTDRj4EBAwOhkWwCBbl5BhvG28bb/v7i47FmCPjEQhrVn379u3bt2+HDm55bnlueWlpOAyH4TAdNvaFQiiE/u1v2Bk7Y+eICMtiy2LL4gsXRMdizJHwY7ysWVVVVVVVVd2545Ptk+2T/fHH2t3GvbZ+/WvR+e5bBVRAhbc3zaJZNCsu7lG3R90edcvLu6xcVi4rX38tOh5jjoCnsFiLaFyMDggICAgIiI6mPbSH9uivkQ/n4Tyc9/DDBjSgAbOzA/MD8wPzR44UnYsxR8BTWOwBQpTmS/Ol+StW4HE8jsfffFN0IrsZwQjGe/dgGkyDadOnK6FKqBK6a5foWIyJwFNY7IGyFlgLrAVHjnTd3nV71+03buDj+Dg+PmKEXjrcoRIqodLFBaqgCqpiYnzAB3ygpsZqtVqt1oIC0fEYe5C4gDAhrNus26zbiop8yZd86dIlqIEaqBk9Wvuoi+P/vbSCFayNBW/EiK5ZXbO6Znl6WpOsSdako0dFx2PsQXD8d3ysVZCWS8ul5aNH4yf4CX6ye7d2t00b0bmaJjnZy+Jl8bLMmJGDOZiD9fWiEzHWEriAMIciS7IkS8HB2lV6utaf8cgjonPZi+IpnuIPHHAf7j7cffjEiYX+hf6F/rW1onMx1pz4KSzmULQO8KKihjUNaxrWhIdTPuVTfkWF6Fz2wg24ATc888y9gnsF9woyM7XC2L696FyMNScuIMwhnR50etDpQWVltI7W0bqwMMqjPMrTXyMfJmIiJoaHUy7lUu6JE/1n9p/Zf6avr+hcjDUHnsJiuhBSEVIRUvHww3Xn6s7VnUtP17YcGTBAdC57USIlUuKlS7YDtgO2AxERp82nzafNFy+KzsVYU/AIhOmCtoZw/bpWQIYPh9WwGlYfOiQ6l70wARMwoXt3wzjDOMO4vDxtM0pJEp2LsabgAsJ0pXRh6cLShbdu1V6uvVx7OTqaUimVUvXXyIev4+v4epcuEA/xEJ+To62RjBghOhdj9uApLOYEELVfwCtXak9tzZ8vOpHdvu9wJ5lkkp9/Xn1ZfVl9OSVFdCzGforjN2wxdh+0TvDDh31W+KzwWXHnDtRDPdQPG/avDX8OrLHDfQbMgBkxMT6jfUb7jK6qsn5s/dj6scUiOh5j/47j/8NirAm0tYVp0+gUnaJTf/kLmtCEJldX0bnsRVtoC21JTFT7qf3Ufm+9JToPY/+MCwhzavJ5+bx8PjqaelJP6rlrFwZhEAZ5eorOZbcJMAEmvP++8qbypvLmnDnaTZtNdCzWunEBYa2C8azxrPFseDhNp+k0PTVVu6vDxr4oiIKoffu8lnkt81oWF6dtlXLnjuhYrHXip7BYq2Dpa+lr6ZuTg72xN/YeOBDegDfgjX/8Q3Quu2VABmSMHVtjrDHWGA8eDLoYdDHoYrt2omOx1okX0VmrUllaWVpZWlXlX+df51+3b5+2Z9WoUXACTsCJjh1F57NP9+50la7S1REjOsV0iukUs3//lewr2Veyb90SnYy1DjwCYa1ScVpxWnHapUuuda51rnVhYdpdVRWdy27H4Tgcl2XX2a6zXWcXFGgnJvboIToWax24gLBWrSiuKK4o7sqV2oTahNqE8HDt7uHDonPZCwfiQBwYEIBGNKIxL88Ua4o1xTaeRc9Yy+BFdMb+SZ+UPil9UtzdPcs8yzzLtm+HNEiDtPHjReeyWxAEQdCNG1RN1VT9zDPqDnWHuiMvT3Qs5lx4BMLYPykbXza+bPy9ewGfB3we8HlcHO2m3bR740bRuexWDMVQ7O2Ng3EwDs7OlkvkErlk3DjRsZhz4REIY/dBTpaT5eSEBDCDGcwrVojOYy9KoiRKamjQOvNnzVKj1Wg1evNm0bmYvnEBYcwOUqaUKWW++ipWYAVWrFsHm2ATbDLoZyQvgwwykZb7nXcUVFDBP/xBdCymT/r5i8+YA1Aj1Ug18v33qZZqqXbcONpAG2iDjhr5FFBAQdQ2b1y6VLogXZAumM3aB3VUCJlD4BEIY7+AtufWkCFUREVUtH8/BmMwBuu1sW/nTiAgoOnTtaOF6+pEJ2KOjd9xMPYLKIqiKMpnn2lPPQ0dCq/Ba/BaVZXoXE0TFwerYBWsysx8uuPTHZ/u2Lat6ETMsfEIhLFmZEw3phvTAwLoMB2mw1lZcBJOwkn9NfbRElpCS06dsnWwdbB1iIrSzqj/5hvRuZhj4QLCWAvQGvkefbRhWsO0hmmZmbgUl+JSHTb2ERDQ+fPaRUSENrX197+LjsUcAxcQxlpQf+pP/cnb2zXBNcE14cABOApH4Wjj1il6Y7VSBVVQxciRapVapVaVlopOxMTiNRDGWtAZPINn8MaNm343/W76DR9OaZRGaXv3is7VNF274kpciSuPHzd2MHYwdnj6adGJmFg8AmHsAYqNjY2NjXVxKZfL5XI5KQn2wB7Y89JLonM1ze3b2uv48drDBBkZohOxB4sLCGPCIMokk0xLlzb2ZYhOZK/GDne8htfw2iuvKJFKpBL5wQeic7EHg88DYUwg6zLrMuuy48d9zD5mH/P16/AkPAlPRkT80PDn4DADMzDDYICbcBNujhnjW+5b7lteW1t5p/JO5Z2TJ0XnYy3L4f+CMtaaaI2JcXHa1dat2qubm+hcTWM2a1Nbr7+uXfMZ7s6GCwhjDihwT+CewD3DhqEv+qLvvn04B+fgHP019tFUmkpTt2/HZEzG5Bdf5A5358IFhDEHZupu6m7qbjLZRtlG2UZlZEAhFEJhp06ic9ktEiIhMj0dMiETMidM0EYmjYvwTK+4gDCmA9rUVq9e2lVWlvb62GOic9mNgICKigwHDAcMB6KiTvmd8jvld+2a6FisabgPhDEd0N6xN3aEh4TAIBgEg3TYyIeAgMHBtmJbsa04NzfoYtDFoIt+fqJjsabhEQhjOtS3b9++fft26OCW55bnlpeWhsNwGA7TYWNfKIRC6N/+hp2xM3aOiLAstiy2LL5wQXQsdn/4MV7GdKiqqqqqqurOHZ9sn2yf7I8/1u427rX161+LznffKqACKry9aRbNollxcY+6Per2qFte3mXlsnJZ+fpr0fHYT+MpLMZ0rHExOiAgICAgIDqa9tAe2qO/Rj6ch/Nw3sMPG9CABszODswPzA/MHzlSdC7203gKizGngyjNl+ZL81eswON4HI+/+aboRHYzghGM9+7hLbyFt6ZNs+yw7LDsaBxpMUfBU1iMOSFrgbXAWnDkSNftXbd33X7jBj6Oj+PjI0bopcMdKqESKl1coBt0g27PPecDPuADNTVWq9VqtRYUiI7HNFxAGHNi1m3WbdZtRUW+5Eu+dOkS1EAN1IwerX3UxfH//VvBCtbGgjdiRNesrlldszw9rUnWJGvS0aOi47V2jv9OhDHWbKTl0nJp+ejR+Al+gp/s3q3dbdNGdC67xUAMxGzd6vW219teb7/0Ug7mYA7W14uO1dpwAWGsFZIlWZKl4GDtKj1d68945BHRuexFGZRBGamp7nXude51kyYV+hf6F/rX1orO1VrwU1iMtULanlRFRQ1rGtY0rAkPp3zKp/yKCtG57IVRGIVR0dH3Cu4V3CvIzNQKY/v2onO1FlxAGGvFTg86Pej0oLIyWkfraF1YGOVRHuXpr5EPEzERE8PDKZdyKffEif4z+8/sP9PXV3QuZ8dTWIyxHzyV+1TuU7mdOhm+NXxr+DYjA9/Bd/Adk0l0LnvRCTpBJ8rLaRgNo2FhYSX5Jfkl+ZWVonM5Gx6BMMZ+oI1Ivvnmzt07d+/cHTpUu3v4sOhc9sKBOBAHBgQYFhsWGxbv3dsnpU9KnxR3d9G5nA2PQBhjP6rxF69HqEeoR+jWrRiN0Rg9aZLoXE3z6qta535SkugkzoILCGPsPhkM0gXpgnRhzRqMwziMmzNHdKL7thAWwsKvvlImKhOVid27i47jLLiAMMbsJifLyXJyQgKchJNw8t139dLhjs/is/hsr16862/z4DUQxpjdlGnKNGVaYiJFURRFvfIKJVESJTU0iM71s76Bb+Cb3/xGdAxnwQWEMdZkarQarUZv3ky9qTf1Hj8eXoFX4BWbTXSuH0PP0rP07K9+JTqHs+ACwhhrstjY2NjYWBcX3ISbcFNUFGyCTbDJ4Li/VxbCQljIW540F8f9g2aMOSztjPY2bb7c8OWGLzccOIC7cBfueuEF0bl+ViqkQuqNG6JjOAtX0QEYY/rReJQuHaWjdFRHR+nKIINMVLerblfdLotFdBxnwQWEMfazgi4GXQy66OfXcLbhbMPZrCwYBsNgWJ8+onPdL/oT/Yn+lJ9f6l3qXepdVSU6j7PgAsIY+1HaVFWvXg0TGyY2TMzK0u4+9pjoXPYypBhSDCl//KPoHM6G10AYY/8fU3dTd1N3kwlCIARCcnO1u/orHPQcPUfPbdpkednysuXlzEzReZwNj0AYYz+Q3pbelt6OiLBdt123Xf/kEyiEQijU32OvFE/xFH/gwHc139V8VzNvnug8zsrhO0cZYy1Pm6qKi9Outm7VXt3cROeyF31Kn9Kn27bhWByLY2fM0M49qasTnctZ8RQWY62Ysaexp7Hn7NlaA+D27dpd/RUOjdmsdlO7qd2mT+fC8WC4iA7AGHvwftjL6jSchtPvvaeXvaz+7xvQHssld3In94QE9Zh6TD22eLHoWK0Nj0AYawUaO8blcrlcLt+0CcxgBvOKFaJz2YtO0Sk6VV+P5/E8np8xQ/1U/VT9dOVK0blaK/2842CM2a2HuYe5h/mhh9pvbb+1/dbt2wEBAWNjRedqmtu3tU7y2FjFT/FT/A4eFJ2oteMRCGNOSDsIysurXVy7uHZxaWm6LRxzYS7M/fZbLMdyLB8xgguHY+ERCGNOJHhn8M7gnV261I2pG1M3JjMTB+NgHBwYKDqX3QbAABhQWQn5kA/5I0dqi+Jnz4qOxf4Vj0AYcwJBY4LGBI3p3r3erd6t3i0vT7eFIwzCIOyLL7TCMWAAFw7HxiMQxnTMOMU4xTjlN78hb/Im76wsKIACKPDxEZ3LXrSEltCSU6dwGS7DZaNGaYXj6lXRudhP4050xnRIJplkGjyYjGQk4/792t327UXnshfNp/k0/8gRzxc8X/B8ISbm5LWT105eq64WnYvdH57CYkxH5PPyefl8dDQVUREVNe7tpL/CAdEQDdEffYSrcBWuGjWKC4c+8RQWYzogpUgpUsr06TAOxsG4zZvRhCY0uep0BsFsVhRFUZTXX9euHfcIXPbTuIAw5sB+6BjXaeNfY8e4dtTtO+8oqKCCf/iD6Fiseej0HQxjzgxRKpPKpLJVq+B5eB6ef+MN0YnsRUmUREkNDWAFK1hnzVJRRRU3bxadizUvHoEw5gC0xj93d4+rHlc9riYn4wf4AX4wcaLoXHabBbNg1t27WIqlWDp5ssVsMVvMn3wiOhZrGVxAGBOo38p+K/ut/NWv3ILdgt2C9+6F1+F1eH3kSNG57BYEQRB04wZVUzVVP/OMukPdoe7IyxMdi7UsLiCMCRBSEVIRUvHww3Xn6s7VnUtPh0WwCBYNGCA6V9NYrbZSW6mtNDKypK6krqTuzBnRidiDwY/xMvYABa4KXBW4qlu3ex3vdbzXMT9fr4WDTtAJOlFerl2FhXHhaJ14EZ2xB+Cp3Kdyn8rt0weDMRiDDx3CUAzFUH9/0bnstgyWwTKLpX59/fr69VFRpUqpUqpUVYmOxcTgKSzGWpAsyZIsBQdrV+np2q64jzwiOpfdhsNwGH7smMuLLi+6vDh2bHHP4p7FPb/7TnQsJhZPYTHWAqTl0nJp+ejRWsE4dky3hSMKoiBq3z6vd73e9Xo3KooLB/tnPAJhrBlJnaXOUucpU9Af/dH/ww+1uzo8YzwVUiF1wwbt/I25c7Wb3DHO/hWfic5YM5COSEekI/PmYSAGYuDGjdoZ4/rbaoS20Bbakpio9lR7qj0bGxiJROdijkl3f8EZcxyIUqlUKpW++y7+Dn+Hv0tIEJ3IXo0d42hFK1pnz1b7qf3Ufhs3is7F9IGnsBizQ2xsbGxsrItL+ZflX5Z/uXGjtrYxY4boXHb7vmOcbGQj29Sp6svqy+rLKSmiYzF94QLC2H3oYe5h7mF+6KH2Ie1D2ofs3Kn9Ao6JEZ3LbvEQD/E1NRADMRATE6N4K96Kd3a26FhMn7iAMPYT+lN/6k/e3q5GV6OrMS1NuztwoOhc9qLVtJpWX7liWGRYZFgUGWnJteRacktKROdi+sZrIIz9G7Isy7LctSscgANwoPHgpv79ReeyFyVSIiVeumTba9tr2xsRoeaquWruxYuiczHnwCMQxv6JVjgefxwICCgrS1vjePxx0bnsRTmUQznnzjUsaFjQsGDkyDMbz2w8s/Ef/xCdizkXbiRkDAACQwNDA0ONRgiBEAgpKNBt4UigBErIycFBOAgHDRzIhYO1JB6BsFZNmi3NlmYPHQprYA2s2bdP26uqXTvRuexFGZRBGamp7nXude51kyYV+hf6F/rX1orOxZwbr4GwVklaK62V1o4dC8EQDME7d2qFw8NDdC67xUAMxGzd2rZL2y5tu7z0Ug7mYA7W14uOxVoHHoGwVkUaJA2SBsXH4xScglPMZu2sboPupnJ/6Bjvp/ZT+731lug8rHXiAsJaBTlZTpaTExLADGYwr1ghOo/93wDIIBNBOIRD+IIFymRlsjL5vfdEx2Ktm+7eeTF2Pxo7xqW/Sn+V/pqUpNvCYQQjGO/dw9t4G2/HxXHhYI6ERyDMqfzQMX69/fX217dtgzRIg7Tx40XnspsJTGC6dcs21TbVNnXcuJLQktCS0EOHRMdi7J/xCIQ5hT4pfVL6pHh5tYtrF9cuLi1Nr4WD1tJaWnv9uo1sZKPhw7lwMEfGIxCma8E7g3cG7+zSpf7P9X+u//PBg9pdSRKdy26hEAqhf/sbdsbO2DkiwrLYstiy+MIF0bEY+yn8GC/TpaAxQWOCxnTvXu9W71bvlpWl3e3ZU3Quu/0efg+/Lytz6evS16VvRIR24t/XX4uOxdj94ALCdMU4xTjFOOU3v2mIbIhsiDx0CFbACljh6ys6l90ICKioyBBkCDIERUUV+xX7FftduyY6FmP24CkspgvGs8azxrPh4TSdptP01FTtbvv2onPZbR2sg3VpaW7+bv5u/hMmcMc40zNeRGcOzfhfxv8y/tczz9j62PrY+jTuiqu/wkGf0qf06bZtMBtmw+znnuPCwZwBj0CYQ9J2xZ02jU7RKTr1l7+gCU1o0t8Z4xqzWVEURVFee0275jPGmXPgEQhzKD90jMsgg7xli+4Kx/cd49SNulG3N9/UCse8edoHuXAw58IjEOYAEOW18lp57Z/+BNtgG2xbsEB0IntpI6X6esNgw2DD4Fde0U78+/BD0bkYa0n6eWfHnIrW+Ofu7hHqEeoRunUrREM0RE+aJDpX09y+jZVYiZWxsVrhaOxHYcy58RQWe6D6rey3st/KX/3K447HHY87+/djNEajHgvHXJgLc7/9FsuxHMtHjFD8FD/FjwsHa11cRAdgrUNIRUhFSMXDD9Ntuk23MzNxFa7CVUOHis5ltwEwAAZUVsJe2At7f/tb5ZJySblksYiOxZgIvAbCWpR2VKyPj+Gu4a7hbuOeTn37is5ltzAIg7AvvoBcyIXckSMVVVEV9e9/Fx2LMZF4Cou1iMDqwOrA6t698TP8DD8rLNTu6q9w0BJaQktOndIKx6BBXDgY+z88AmHNytjT2NPYMyiI2lJbapuRAQgI+MgjonPZbSWshJVHj3rEesR6xI4de/LayWsnr1VXi47FmCPhEQhrFsZ0Y7ox/be/tSXbkm3JR47otnBEQzREf/QRLIAFsCAykgsHYz+ORyDsF5E6S52lzlOmoD/6o39j34Obm+hc9qKdtJN2rlunPqE+oT7R2DFus4nOxZgj4xEIaxJZkiVZmjsX/xv/G/87OVm7q6PC0XjGuAUsYFm2TCscc+dqH+TCwdj94BEIswOiTDLJtHSpdlb30qWiE9mLkiiJkhoawApWsM6apUar0Wr05s2iczGmR1xA2E+KjY2NjY11cSmXy+VyOSkJ9sAe2PPSS6Jz2W0WzIJZd+9iKZZi6eTJFrPFbDF/8onoWIzpGRcQ9m/1MPcw9zA/9FA7j3Ye7Tw++gg34Sbc9NxzonPZLQiCIOjGDaqmaqp+5hl1h7pD3ZGXJzoWY86A10DYv+hP/ak/eXu3/7r91+2/zs7Wa+GgAiqggsuXDVcNVw1XhwzhwsFY8+OtTBgAAJhiTbGm2EcfhTbQBtpkZ+OH+CF+GBwsOpe96ASdoBPl5aSSSurQocp8Zb4yv6xMdC7GnBEXkFZO698ICKAqqqKqY8dwG27DbX36iM5lt8EwGAYrSn1ZfVl92dChZyaemXhmYkWF6FiMOTPezr2VkiRJkiRZpm/pW/r24EE4CSfhZOfOonM1zWefucx0meky89lnlZ5KT6Xnd9+JTsRYa8BrIK2MdlTskCFQDMVQfOwYrIE1sEaHhSMKoiBq3z4vi5fFyzJqVHHP4p7FXDgYe6D4KaxWQlorrZXWjh0LwRAMwTt3YjzGY7yHh+hcdkuFVEjdsEE7f4Mb/xgTiUcgTk7KlDKlzFdfRU/0RM+9e/VaOGgLbaEtiYla4Zg9W7vLhYMxkXgNxEnJyXKynJyQAItgESxasUJ0Hns1doyjFa1onT1b7af2U/tt3Cg6F2Ps//BTWE6isWPc44DHAY8D77+PC3EhLnzrLdG57PZ9x7i21ciUKepkdbI6uXGvLcaYI+E1EJ3rk9InpU+Ku7tnmWeZZ9n27ZAGaZA2frzoXHaLh3iIr6mBGIiBmJgYxVvxVryzs0XHYoz9OC4gOqUVDi8vz0TPRM/Exj2dRowQnctetJpW0+orVwyLDIsMiyIjLbmWXEtuSYnoXIyxn8drIDoTvDN4Z/DOLl3qE+sT6xMPHtTuSpLoXPaiREqkxEuXbHtte217IyLUXDVXzb14UXQuxtj946ewdELbo+o//qPukbpH6h7JzdXu6rBw5FAO5Zw717C3YW/D3rCw0+bT5tNmLhyM6RFPYTk403rTetP6J5+0dbB1sHXIyoL34D14z9dXdC57UQIlUEJODq7AFbgiOlpRFVVRb94UnYsx1nRcQByUNFIaKY0MCdEWxdPTMQRDMKRjR9G57EUZlEEZqanude517nWTJhX6F/oX+tfWis7FGPvleA3EwQSWB5YHlo8ZA92gG3TbvRuDMAiDPD1F57JbDMRAzNatbbu07dK2y0sv5WAO5mB9vehYjLHmwyMQByEfk4/Jx6ZOpcE0mAZ/8AGa0IQmV90V+MaOca3xT4d9KIyx+8YFRDDpiHREOjJvHqZgCqasXg0KKKCgfv5cZJBBJoJwCIfwBQuUycpkZfJ774mOxRhrebp7h+scEOUb8g35RmIiDINhMGzhQtGJ7GYEIxjv3cNbeAtvTZtmmWyZbJn88ceiYzHGHhwuIA9IOIVTOLm6Vv+5+s/Vf960SSscL7wgOpfdTGAC061btqm2qbap48aVhJaEloQeOiQ6FmPsweM+kBamnb/Rpk31N9XfVH+Tmoq7cBfu0l/hoLW0ltZev24jG9lo+HAuHIwx/cy168zTHZ/u+HTHtm3v/O7O7+787vBh+Aw+g89CQkTnsttCWAgLv/rKMNAw0DAwIuKU3ym/U37/8z+iYzHGxOMC0iIQ5Xw5X85PTYU5MAfmjBkjOlHTnD1re8j2kO2hkSNL8kvyS/IrK0UnYow5Di4gzcw4xTjFOGXiRPqCvqAvdu0SncduBARUVGQ4YDhgOBAVpY04rl0THYsx5nh4DaSZUSfqRJ3+8z9F57DbOlgH69LS3FLdUt1ShwzhwsEY+zlcQJqJMd2YbkwPCIBcyIXcfv1E57lvH8FH8NGWLV4DvAZ4DYiJ4a1GGGP3ix/jbSbUg3pQj759Reewj9ms9FJ6Kb1ee+3774JEJ2KM6QePQJoJlVIplXboIDrHj/q+Y1w7Y/yNNxRFURRl3rzv03PhYIzZjQtIMyEjGcnoeGsGdIpO0an6ejyP5/H8jBmWSkulpXL1atG5GGP65yI6gLN4rPyx8sfK6+qomqqpuvGdvUDfd4wbrAarwRoTY1lvWW9Zv2eP6FiMMefBI5BmUpxWnFacdukSLIElsOTMGVE5qJAKqfDaNfqKvqKvfvtby8uWly0vZ2aK/vkwxpwPF5BmRlfoCl1ZvlzMV7dawRd8wXfoUPWQekg9VFgo+ufBGHNe3EjYIhCly9Jl6fK+fRiFURgVHd1iXyoMwiDsiy9wOS7H5RERljaWNpY2FRWifwKMMefHI5AWQeT5pOeTnk8+/zy8C+/Cu7m5zf4lvv+8hgWGBYYFYWFcOBhjDxovoreQitqK2orae/d8Pvf53Ofzjz4CBAR0c6NiKqZiWcbNuBk3u7nd7+fT/r/aWqzHeqxftQpWwkpY+cILloWWhZaFNTWiv1/GWOvDU1gPWGBoYGhgqI+Py1cuX7l8NWEC7aW9tHfIELpO1+m6v3/jf4cP48P4cEUFvUPv0DvHjtF39B19l5LCmxoyxhzF/wKeYeMy/zPC/wAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNy0xMi0xNVQxNTo1NzoyNyswODowMKIRvi8AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTctMTItMTVUMTU6NTc6MjcrMDg6MDDTTAaTAAAATXRFWHRzdmc6YmFzZS11cmkAZmlsZTovLy9ob21lL2FkbWluL2ljb24tZm9udC90bXAvaWNvbl9jazFiemEwemo5ampkY3hyL3JpZ2h0LnN2Z7O3J80AAAAASUVORK5CYII=")}.icon-refresh:before,.icon-right:before{content:" ";display:block;width:16px;height:16px;position:absolute;margin:auto;left:0;right:0;top:0;bottom:0;z-index:9999;background-size:contain}.icon-refresh:before{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAMQpJREFUeNrt3XlcVHX3B/Bz7rCISi6IC+ijkpZpIswMyBLgluVuKm4pqWmEuG/hUpr5uFYoiuaSFrklZvroo+jPFRURZgYVxZ1K3HIXUBSGe35/XC9PWpYL8J2B8/6H1wwGn3sb5sz93u/3fAEYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOM/QUUHYCx59F0ddPVTVdXq5YXkxeTF1O3Ll7H63jdzY3eoDfojTp1UIta1FatCm/D2/C2kxPchttwu0oVyIRMyKxShVpSS2pZuTIkQzIklyuHv+Av+IudHURBFERJkvJbKlQo+IWhEAqhsgz2YA/2d+8WPP/oMXWkjtTx4UMMwAAMuH4d2kE7aHf9OoVQCIX8/jvuxJ2489o1WkJLaMmlS+AHfuB37hwmYAImnDtnNBlNRlNGhvJDiUSfX/ZygiiIgqhMmayJWROzJgYF4Xbcjtv9/akX9aJerq7QE3pCTwcHiIEYiMnMxNpYG2ufOYNTcApOOXDAcNZw1nA2KUn0cTwrLiBMKO+z3me9z9asKa+V18prtVr5tHxaPv3mmzgaR+Nod3cYCANhYMOGyr9+9VXla9myonMXFoqmaIp+8ADDMRzDz56FTtAJOh07RgmUQAkGA17Da3jNYMjrldcrr1dKyrGxx8YeG3vvnujc7I8QdbG6WF3skCFUjapRtYkTcSSOxJHVqr3Yz0tNVb6OH280Go1G43//K/oIn3rkogOwkgzR09bT1tPW3V3jrHHWOLdoIRtkg2zw84PTcBpO+/jgGByDY2rWFJ3U0tEiWkSL8vNxDa7BNSdOkAM5kMOuXTgYB+PgnTvz1uStyVuzbx8XmOKh0+q0Oq2tLW2hLbRl9WrsgB2wQ7duhf17aAWtoBWzZpncTe4m94gI0cf9JC4g7KU0oSbUhCpW1FTTVNNUa98eTGACU9u2uAf34J6WLWEuzIW5VauKzlni6UEP+txcZYju0CGoDtWh+pYt+QH5AfkB69cfxaN4FH/9VXTMkkJ3UXdRd3HBAuWKMTy8yH8hAQENH64MeUZFiT5+FRcQ9kwaN27cuHHjSpVsbW1tbW2DgxEREbt2Vb7bvLny1dZWdE721+gz+ow+S06W+kn9pH7r1+fdyruVd2vdOi4sz0f7rvZd7bs+Pvgv/Bf+KyEBjGAEIxb5+yjNp/k0PytLE6mJ1ES+9lpybHJscuzVq6LPBxcQ9hjlJqCNTbY+W5+tb98eFsEiWNS3LxyDY3CsXTvlsb296JzsJT2aHEBdqAt12bULMzADM5YsgQ/hQ/hw0yblk25enuiYlka7XLtcu3zTJozGaIzu2LG4fz85kzM5jxxpijPFmeLmzhV9PriAlHKefp5+nn4uLtgQG2LDQYOwDJbBMh99BIfgEBxycRGdjxUvOkSH6NDVq7gEl+CSFSvMx83Hzcejo49+c/Sbo99cuiQ6nyjKPY8qVchABjJcuYJe6IVeNjbFHqQNtIE2W7YYpxmnGad16CD6vEiiA7DipfwhNG6sS9Wl6lJ/+EF6KD2UHv76K6ZgCqZMmcKFo3RDX/RF3+rVYQWsgBXjx9uQDdlQero2XZuuTV+2zOui10Wvi6+9JjpncaMP6AP6ICBAWOFQc0RQBEXUqSP6fKj4CqSEKxizvY7X8fqkSaADHejati2usVtWwqhDX+2pPbXfsIFqU22qPW1aSl5KXkre0aOi4xUV3QPdA92Df/8b/MEf/CdMEJvmwgVlem/t2qLPC1+BlDAe8R7xHvENGypXGuvWFdzsAwCAdu24cLCXshgWw2JJUqetSv2l/lL/lBT19abfot+i3+LmJjpmYaMbdINu1K0rOgf4gi/4irsCehIXECvX5OMmHzf52NVVO087TzsvJkZzSnNKcyo1FRAQMDiYCwYrUurr69HrTa4iV5GrnDihu6O7o7sze7Y6e090zJeFC3ABLnjRhYGFiICALGe2IxcQK+OT4ZPhk+HgoNPpdDrdp5/agA3YwOnTGIMxGNO3r/oJUXROVjopK+rLlIGW0BJajh1rF2gXaBd4+rRut263bndIyKN/ZX0faHbADthRrpzoGCCDDDIXEPacPL/0/NLzy8DAXKdcp1ynlBTl2alT1Z5OovMx9pcSIRESnZ1hLIyFsd9/rxunG6cbt2+fOtQqOt4zQ0BAC3jj9gIvEHgT/0lcQCyUcqVRubJypfHdd9IZ6Yx0Zu9epWnf66+LzsfYC9kFu2BXQIDmjOaM5ozJpCMd6WjKFLU1iOh4Fo+vQNjfUWdN5Z7OPZ172mBQnv3gA76XwUoUdUGqHvSgnzwZpsJUmJqQoP9C/4X+C/6A9DTkTu7kzlcg7JHg4ODg4GCNRv0kpvwhHTiAn+An+IkFzPpgrDhMhskwWa+nS3SJLhmNWq1Wq9V+9JHoWJYGwzAMwzQa5ZH4e53CA5RW+vv6+/r7tWqlD0oflD5o9271k9jjLxDGShl1nxZERFy8WHtVe1V7deNGtWmn6HiWol5Uvah6UeKHsizmUqi00J3SndKd6tRJNskm2bR8OY7H8Ti+cmXRuUobSqIkSsrJUVYW37sHw2E4DH+Gwn0QDsLBihV5SLF4YDtsh+06dbLxt/G38U9OVu6VdOmi9OpS980oerSX9tJeRGyGzbCZ6LMCUPZh2YdlH6pDWQ8fisrBfwDFRNtH20fbZ8IELItlsey0afwG9ILCIAzCHj6kntSTep49C6thNaw+fRpDMARDTp/GbtgNu506BTNgBsy4cEFpQXHrltnb7G32vnXLYaLDRIeJt24l1kqslVgrJ+d5f/3jzSadneVj8jH5WNWqmmhNtCbaxYXqUT2q5+xMy2k5La9ZU9mBsHFj/Ba/xW8bNVKuNF9/HQxgAIOdnejTaXW8wAu87t3DbMzG7IEDDSsNKw0r164t6l+rzdJmabNMJqWAeHqKPg1mg9lgNlSqpHRTvnNHVA5+Aysij88qWbhQmQY4cKDoXJaODtABOpCeDtfgGlw7cADfw/fwvf37lfN34ICbm5ubm9vZs7GxsbGxsfn5ovM+L/V1kT83f27+3Pr1bZbYLLFZ4u5OJ+kknQwMpP20n/a3aMGz7Z4RAQF99ZVyRTJunPKkLBf2r9Fu0W7RbklJwck4GSd7eIg+bOW4nZ2V475xQ1QMHsIqZMoWra+8kt8zv2d+z9hY5dnWrUXnshjhEA7h2dlwAS7Aha1boTW0htYbN5pjzDHmmPj4ow5HHY46PL3rq9IDSPRBvLiCNumBEAiBaWnKs+rXtWuhLJSFsn/oknwOz+G5Fi0wHuMxvkUL6A29oXeHDkpBrVJF9PEIh4CAo0frknRJuqS6dW1r2NawrdGnz4teYVoLZYtjSVI2cBOXgwtIIVH/4M3VzdXN1bdsUXo7iL/UFev+faX99O7d0AJaQIvY2JwbOTdybmzYkDYlbUralOxsmAJTYIronJYnJSElISXh8mXl0cqV0AAaQIOVK9VZe+nn08+nn/f1LWhZQ0BAvXuX2sISBmEQ1qVLHuVRHu3Z4z7HfY77nI4dlS1+r1172R+P+ZiP+Tzk/CQuIC9JWejXoIHyyXrnTmgGzaCZq6voXMVN3fEOHdERHRcsKN+8fPPyzdet24f7cB8+eADTYBpME53S+j0+dHfggPpVmZUzblyF7yt8X+H7Nm0gEiIhMjQUVsJKWPnOO6XmnhsCAjZtalvHto5tnQMHlL/PNm2UK9fz50XHKyz2SfZJ9knip/GW/BdUEfFM8EzwTKhXT1otrZZW79tXavbReLT3tjLdctMmnIpTceqSJYb2hvaG9jt3io7HHlfwOh0qDZWGDh2q3IT+8MPS0gKHIimSIn//HbpBN+jWurXpmuma6dqxY8/7c3QjdSN1I48ehXiIh3h3d9HHJblJbpJbjRqit7blAvKcvDt4d/DuULeueb15vXn9vn3oh37oV6uW6FxFpWC6axZmYdaCBTZbbbbabP3qq8O9D/c+3Pv330XnY89H2RDKySn/Qv6F/AsffYRDcAgOGTWqpA99USIlUuLNm+iDPujTurVyRWJ65rsHllZAZHvZXrZ3dX18qLP48RDWM1IX/pkTzAnmhF27SmrhoGRKpmSzGebDfJi/Zk2+lC/lS599drTi0YpHK/76q+h87OUk10yumVzz5k3l0YwZDdc1XNdw3fz5DjkOOQ454eFUn+pT/YkTcSgOxaGOjqLzFhalcDg5KY9271b+ntu2NZQ1lDWUVffL+RvxEA/xljMEKLvL7rI7IiRAAvxz+iIjfAzN0qn7bdBb9Ba9tWdPiWsxogMd6IigA3SADuvWaS5rLmsuN2pkGm4abhoeEqLMM+fCUVKldU/rntY9O9v4gfED4wezZtEYGkNjGjSAYAiG4KVLCz5QlCgVKtBaWktrt29X7pE0b/6P/0kgBEIgkejkKvvR9qPtR4svaMIDWCp1Ixw7WztbO9uEBOUSv0ED0bkKjT/4g/+5c8rK6o8+Ui7p9+wRHYtZFrXtunRdui5dX7oUp+N0nO7nJzpXYVGHaKVvpW+lb7t2NXxk+Mjw0bZtT/47pdCo904aNxadW5l1V7u2Mi38wgVRMfgK5AnqSmPb8bbjbcevW1dSCof6SZKaUTNqNnu27VjbsbZj3d25cLC/cyTwSOCRwLQ0U1dTV1PXgAByJmdyHjlS+e79+6LzvSz0Rm/0dnAgIxnJuHGjsrPne++p31c6SAQEwAgYASMsYEfCR+Tecm+5N1+BWBztae1p7emoKOyNvbH30KGi8xQOkwnLYTksN3CgId4Qb4hXN6Ri7MUon8hffVV5tHSp8vUZhoIsXMGQ3VbYCluPH7eYledPUFqZ1K0reoiZC8gjavtotQuo6DwvTL2nYQADGL7+uryxvLG8MSJCWY9R0saymWVA1LvoXfQuI0bIF+WL8sXZs5UmlZazb0VJo3HRuGhc3NySNidtTtr8yy+icpT6ISx9qj5VnxoUpBSOBQtE53lRdJgO0+HMTPkr+Sv5q27dlLHRMWO4cLCiR2S4bLhsuBwZSV/T1/R1y5Z0iA7RIXHrE1jxKLUFRNlfoE4dpVvr+vXKs+L767+Y1FTNVc1VzVUvrxTHFMcUxw0bRCdipVPKmJQxKWPi45V7bTodTaAJNOEZpsmy55IXlBeUF1T4TSOfV6krIGovIRu9jd5G/8MPVruAahksg2U//qg88PFR5vefOSM6FmMA/+vl9SD/Qf6D/ObN6Uf6kX785hvRuUoKzWDNYM1g8QWk1I1Rnrc/b3/e/pNPlGaHb70lOs9z2wSbYFN0tLGmsaax5rBhypPiX0iM/RVlnUlurvIoLEz3ve573fe//gpREAVRM2eKzmet8lvlt8pvJX47g1JzBaIP1AfqAz09ldlIkyeLzvO8aAWtoBWzZimFY8gQ5VkuHMy6FCxYnEbTaFp4OIRCKITy6/h52bjauNq4ij9vJb6AKF1K7e3pHt2je99/by07wdEiWkSL8vPhM/gMPgsLM7mb3E3uERGiczFWGExtTG1MbRYuhMWwGBb37as8m5cnOpe1eOj90PuhNxeQIlehZ4WeFXqql8oWsIL0n6ifyE7BKTj1wQfGTsZOxk48dsxKJmUh6+rVFEIhFNKjR8EHJ/a3bNfYrrFdwwWkyHh+6fml55eBgbARNsJG9V6B5aOVtJJWDhtmCjGFmEJWrRKdh7HioPRe+/lnyIRMyBw9WnQeS2e7yXaT7SYuIIVOnWUl1ZfqS/WjopRLZPEbr/wT8iRP8pwyxRRvijfFR0eLzsOYCKZWplamVvPm0WbaTJvV6fXsSXmd8jrldRJ/pWbxb6zPKz09PT09/aOPYCpMhalNmojO848ezaoyLTMtMy37/HPRcRizBPI5+Zx8bvBg8AEf8Ll+XXQeS1PmtzK/lfmNr0AKjU+GT4ZPRuXKysYxX3whOs8/WgSLYNGGDY9Px2WMAahNHK9fV3b6DA8XncfSZEVkRWRFcAEpNHmYh3k4derjG8dYHppBM2jGmTOaSppKmkr9+yvPin8hMGaJlJY8sbE8pPW4SmMqjak0hoewXpq+j76Pvs+bb5ILuZBLaKjoPE8VDuEQnp0tl5HLyGXeey+pflL9pPqZmaJjMWYNzKvMq8yrwsOVfTBu3BCdR7RsXbYuWye+gFj9SnQ6SSfp5FdfWXr3TzKTmcwffqjuryA6D2N/5BXsFewVXL268qh6dfm8fF4+b2+PU3EqTnV0pMk0mSaXL6+8gf9Fz7gFsAAW2NjQEBpCQ/6wFe7H8DF8fOcOfoPf4DfPsKMfAgLev4+f4+f4+cOHT36belJP6rluHfwIP8KPgweLPm/F7lG3beMS4xLjEvHrZqy2nbtOq9PqtE2bKi+4xETReZ6G3qF36J3ISNN003TT9FGjROdhpZPSPLRiRRudjc5GFxKi/N107qxcGXt5QTREQ3T58qJzsn+gBz3oc3ONi42LjYvt7UXHsdohLNpKW2nr+PGiczzVRJgIE9PSMqtnVs+sbsE5WYmm3abdpt02eLDmoOag5uD580rhmDdP+W7z5lw4rExTaApN1d5i4lnskM/TFNzz+Iw+o886dhSd508erSSXt8vb5e0DB55bfG7xucV/vhRnrCjpZutm62ZHR8MkmASTSuFQT0mlAQ1oxA9dqazuCoReo9fotYgIMIIRjOL3BP6TztAZOkdFpSxOWZyy+NAh0XFY6aIM7Q4bVmrvEZRwVJfqUl3LuQKxmgKi36Lfot/i5kaTaBJN6tFDdJ4/GQtjYeyvv+bszdmbs/fTT0XHYaWLUjgqVFCGOHhBaollYUNYVlNA5GPyMfnYuHEWO9tqNsyG2aGhyv4H2dmi47DShcpTeSrfpw8kQRIkVawoOg8rIjLIIPMQ1jPzPut91vvsK6/gT/gT/qS2fbY0O3YoC5527BCdhJVO2AybYbOWLUXnYEWMgIC4gDwzcw9zD3OPnj2VR2XLis5T4LGNcHiWFRNMBzrQubmJjsGKFgZgAAbwENYzwxbYAluoLT8syFW4ClfXrFH2MzCZRMdhpRu1ptbU+g8L+FgJxlcg/8gj3iPeI75hQ9gDe2CPj4/oPAXCIAzCHj7UJGuSNcl8s5xZBpyEk3DS7duic7Ai1hyaQ3O+AvlHmhRNiibFAq88FsEiWLR8edLmpM1Jm3/5RXQcxgAAoA/0gT7nzomOwYrYHtgDe65eFR1DZXEFRJmOaGurbLBkQTfNH93zkDZJm6RNc+eKjsPYH+FwHI7DeRJHiXcQDsJBy+mlZ3EFRF4vr5fXv/sujsSROLJaNdF5CiyGxbB427bkmsk1k2ueOSM6DmN/ZH/C/oT9idhYZT+cmzdF52FFQ+or9ZX6xsaKzlGQR3SAPwXqJnWTullgi5JdsAt2qT2EGLMsB28evHnwZlYWtISW0HLyZNF5WFHYuDE5Njk2OfbIEdFJVBZWQBBhNIyG0W3aiE6iomk0jaadOGGsaKxorLhzp+g8jP0dU7wp3hQfHU0hFEIhP/wgOg97Sf7gD/7nzklukpvkFhYmOs6TLKaA6AP1gfpADw/4Gr6Gr11dRedRKbNboqOVR8+wnwFjFsA03DTcNLxfP+XRzJm0iBbRIvEbELFn1BJaQsv9+8255lxzbrNmypWH5dw8V1lMAVFaMLRtKzrG4/LylJWfljPmyNizk2VlndL48VKUFCVFeXjQJtpEm9asocN0mA7zjpjCPdogSpmeq+5r9P77xtnG2cbZzZod/eboN0e/uXRJdMynsZhuttqftD9pfzp4EKfjdJzu5yc6D0RCJETGxRkDjYHGQMsZUmOsMDRc13Bdw3V2duViy8WWi23Y0DzLPMs8q1YtTT9NP00/Z2c5W86Ws//ccw5H42gcXb48mMEM5r/YmTAKoiCqXDlaQStohZ3d8+bCnbgTd5Ypo3S1dnB40eOjZbSMlt27Bz2hJ/QshHUTs2E2zM7MxLfxbXz7+a/kcASOwBFEspPsJDtdvy6Nk8ZJ465exbbYFtsmJSmTc6xv8oPwAuKT4ZPhk1G5cu6V3Cu5V65dwzAMwzCNRnQumANzYM4HHxhbGFsYW8TEiI7DGGOWRnhXW/N483jz+Nat8SSexJPiCwdFUzRFP3hg42TjZOO0caPoPIwxZqmE3wMhLWlJazmtSjAcwzE8Li6pflL9pPo8RswYY08jvIDAG/AGvOHtLTqGSpm2+3//JzoHY4xZOmEFJIiCKIhsbJQuoh4eok+Eit6it+itPXtE52CMMUsn7B7I/e73u9/v/uabmI7pmP7isy0KzQgYASOuXUtxTHFMcTx1SnQcxhizdMKuQPL75PfJ7+PlJfoEqCiLsihr9+5Hj3jBIGOM/QNx90BOwAk4odOJPgEFJ2KptFRaunev6ByMMWYthBUQvIk38aZeL/oEqEgiiaTkZNE5GGPMWggrIDSLZtGs+vVFn4DH9zbnex+MMfasir2AqCvPsSk2xaavvCL6BMBxOA7H09OVnkH374uOwxhj1qLYC4j5ffP75vdr1xZ94AUOwkE4ePy46BiMMWZtir2AyF3lrnLXOnVEH7iKfMmXfE+cEJ2DMcasTfHfA2kEjaDRv/4l+sALTsCv0q/Sr6dPi87BGGPWptgLCLqjO7pb0BXISlpJKy1voxbGGLN0xX8F0gbaQBvLKSDSIGmQNOj6ddE5GGPM2hR/ASEgoBo1RB+4StnA6sYN0TkYY8zaFHsBoZk0k2ZWqiT6wFXZKdkp2SnXronOwRhj1qb4r0DKQBkoU6GC6ANX3L2b1j2te1r3QtjykjHGSpniLyB2YAd2llJAeOEgY4y9qOKfhbUcl+Nye3vRBw6+4Au+3HWXMcZeVLEVkODg4ODgYI0GjGAEI6LoA+cCwhhjL6fYCkhKQEpASoCNsA2sGGOMFa5iKyB21e2q21XnT/yMMVZSFFsBUWY75eWBDnSgs4BCcggOwSELGEpjjDErVcw30YnAG7zBW/y0WepDfahP5cqiczDGmLUq/mm8RjCCMSdH9IFjOIZjeJky/k7+Tv5Ojo6i8zDGmLUp/gISBEEQdOeO6ANXPajzoM6DOlWris7BGGPWpvgLyByYA3Nu3RJ94CpyJmdydnYWnYMxxqxN8ffC2k7bafvNm6IPvOAE+Ev+kj9fgTDG2PMq/pXoC3EhLrSc5oWyXtbL+po1RedgjDFrU/xDWJWhMlS+cEH0gauwMTbGxg0bis7BGGPWpvgLyApYASsyMkQfuIrKUlkq26iR6ByMMWZtir+AAACABV2BfIqf4qdcQBhj7HkVewGR58vz5fmnT4s+8AKJkAiJzs4e8R7xHvE8G4sxxp5VsReQepH1IutF/vILRVM0RT94IPoEFJyIddI6aV3jxqJzMMaYtdAU9y9MS0tLS0sjcnF0cXRx7N4dfoPf4Ldq1USfCGm7tF3afvbsZfNl82Xz/v2i8zDGmKUTdA8EAKpAFahiMok+ASoaQSNoRIsWonMwxpi1EFZA6Cf6iX46dEj0CSjI05k6U2c/P58MnwyfDAcH0XkYY8zSCdvgCQEBwXIKiNpcMdc31zfX19dXeXb3btG5GGPMUgm7AjGajCaj6cQJ5dHdu6JPRIEBMAAGNG8uOgZjjFk6cfdAAABAlpWvhw+LPhEFMiADMt55R3QMxhizdIILCAAYwAAGCxrKmopTcaqXl8cwj2Eew+rXF52HMcYslfgCchfuwt2DB0XHeJLGXeOuce/RQ3QOxhizVMILyN2YuzF3Y+Lj6TAdpsOZmaLzFFgIC2Hh+++LjsEYY5aq2BcSPunWtlvbbm3Lz3eRXCQXydMTzsAZOGMBvakQELBKlZpv1Xyr5lubNl1Ou5x2Oe3qVdGxGGPMUgi/AinQGlpD640bRcd4krxUXiov7d1bdA7GGLM0llNAhsAQGLJ1K+hBD/rcXNFxVHScjtPxDz90n+M+x31OuXKi8zDGmKUQPoSlunLlypUrVx4+dIl0iXSJ9PeH7bAdtterJzoXxmEcxjk4SD2lnlLPS5eurLqy6sqq5GTRuRhjRcfrotdFr4uvvVa9SvUq1av4+ro2c23m2qxBg2oPqz2s9tDRMcAnwCfA5/ff1d5+ovOKImwl+tPgcByOwzduJIkkkt59V3SeglzZmI3ZI0Yoj775RvmqrmNhjFmj4ODg4OBgjSb9fPr59PP9+9NMmkkzx46VO8md5E6vvaZ0zAAgICAAkEACCQDS09PT09Pv3tVO107XTl+7Vr4qX5WvfvXVkagjUUeizp4VfVzFBUUHeJIyVFS1qu0523O25zIylHUidnaic6kohEIopEsX03DTcNPwn38WnYcx9vx0Wp1Wp61ShSIogiLWr8dZOAtnBQW93E/Ny4NBMAgGzZgBS2AJLJk2Tem4kZcn+niLisUVEJUuRZeiS1m7FgbCQBhoOesxaBftol0HD5oqmiqaKr71lug8jLFnpwxNOTnJHeWOcscDB5TZlg0aFPovagNtoM2WLXer3q16t2q3bueGnRt2btjDh6KPv7BZzk30J3mAB3ioQ0WWA1tiS2zp76+7qLuou9i2reg8jLF/pg5VyWlympy2YUORFQ7VNtgG29q3f6XtK21faTt3rujjLyoWW0CMaEQj7tsHARAAASdPis7zJEqlVEqdPVt9YYrOwxh7uvT26e3T248ZA+NhPIwPDCyu34uzcTbODg319PP08/TT60Wfh8Jm8W98NSrWqFijoq0t3sf7eN+Cbqrvxt24u2rVW7du3bp169IlZRaZ0Sg6F2Psf7wWeC3wWtCokTIpZ80a5Z6qTfFNHroCV+AKIprRjGZJUt4nNm8WfV4Ki8VegajyLuVdyrv0/feUREmUlJMjOs+fzIW5MHfqVH8nfyd/J0dH0XEYYwBBFERBZGMj15HryHW++w4WwSJYZG8vNlXJu2dq8QUkNTU1NTX19m2IhEiIXLNGdJ4n4UgciSOrVXtw6cGlB5ciIkTnYYwBZK/OXp29etgwmAyTYbL4oSNKpmRKrl1bdI7CZvEFRCVfkC/IF2bOVP5HmM2i8/yJP/iD/9ix+kB9oD7Q01N0HMZKoybUhJpQnTqwH/bD/qlTRecpkAzJkIwWO+v1RVlNAVEX6OAMnIEzVq4Uneev2dqSjnSk++67husarmu4znLWrzBW8iHa7LfZb7N/0SLlDdtyWg/halyNqy9eFJ2jsFlNASmwATbAhmnTlAcWuEAnHuIh3t29TL0y9crU+/RT0XEYKw309fX19fXDw2EkjISRljPZpkAf6AN9jh0THaOwWV0BMRqNRqPx/HnqRb2o1w8/iM7zVB7gAR4REV51vep61fXyEh2HsZJI30ffR9/nzTflU/Ip+dTs2aLzPA2GYiiG7tghOkdhs7oCorLZZ7PPZp/lXomgF3qhl41N/on8E/knfvjB+6z3We+zr7wiOhdjJYHaHZvSKI3SYmPRG73R28FBdK4/CYMwCHv40DzPPM88b8MG0XEKm9UWkKTNSZuTNv/yC8RCLMSuWCE6z9NgAAZgwOuvmx3NjmbHmJhHz5a4m2mMFSebXja9bHotXVrkK8pfEt2je3Rv3bojgUcCjwRevy46T2Gz2gKiyvsp76e8nz79FIbBMBh2+7boPE+D7bAdtuvUSZukTdIm8b0Rxl6EvpK+kr7SuHHYCTthp169ROd5GlpEi2hRfj4NoAE0YMYM0XmKSon5JKzT6XQ6XViY8mjhQtF5nioUQiFUlukG3aAbnTqZJpgmmCZs2SI6FmOWTDtBO0E74Z13oDN0hs7//S+GYRiGWXALIQICWrZM6cY7aJDoOEWlxBQQhSRpN2k3aTclJuJUnIpTLf3m9d27+Aa+gW+89ZZhpWGlYeXx46ITMWZJ1FYksqPsKDvu3w9REAVRlSqJzvU0lEiJlHjzJjbFpti0QQOlgNy4ITpXUbH6IazHyTJ8Dp/D52Fh6iWk6ER/r0IFeofeoXd27dJ/of9C/8Xrr4tOxJglaPJxk4+bfOzqKq+QV8grtm619MJRYCtsha3jx5f0wqGy3EvAF3TlkRquNVxruDo74xk8g2e8vUXneqpESITEcuWoP/Wn/u3aVS1btWzVsuvX/2743fC7IStLdDzGipNPhk+GT0blyuAADuCwZ4+yolz81tb/hCbQBJqQkGB6z/Se6b2hQx89W+K3ui1xBUTlkumS6ZKZkAB+4Ad+ISFwES7CRcttdog7cSfurFRJ6i/1l/q/+67LWZezLmfXrVPK4f37ovMxVpSUHQIrVJCvydfka9u2QQzEQIzltwRSm7xiCIZgSLt2yt9ryZtt9TQlbAjrf5RLyLt35SA5SA4KCVFvXovO9Y/+Df+GfzdsqExP3L7dI94j3iPe2Vl0LMaKglo4oAW0gBZxcbAH9sAeHx/RuZ7ZQTgIBz/7TFngfOqU6DjFrcQWEFVKcEpwSvCuXeRDPuQzZ47oPM9Hq5UeSA+kBwcOeHfw7uDdoW5d0YkYKwwFhQMAALZvt7bCoW5t/er8V+e/Oj8yUnQeUUrYLKynU/cHyI7LjsuOi4+HSTAJJvn6is71rOgQHaJDV69KraRWUqu2bQ3xhnhDfEqK6FyMPQ9lun2NGsojdfq6Vis61zPzBm/wvnPHvNC80LzQ0/MoHsWj+OuvomOJUuKvQFT7cB/uQ7MZ8zEf8/v0ocN0mA5nZorO9azQF33Rt3p16kf9qF98vO6O7o7uzttvi87F2LPwzPLM8sx64w3lnuShQ8qzVlQ4HsEszMKssLDSXjhUJfYm+tNcXn159eXVt2/XqFejXo16GRl4GA/j4S5dROd6ZsmQDMl2dpAGaZDWo0eNcjXK1Sh3+/aV3678duW35GTR8Rj7Ix3pSEfNmuFaXItrd+yA9bAe1levLjrXi1m0yLjduN24fdYs0UksRakZwnoa5ZJaXbmurmS3VqtX53yS80nOJ6Ghad3Tuqd1z84WnYiVTrpVulW6VaNGKV2zZ81Sm4uKzvW81Om5D/If5D/Ib95c+bvKzRWdy1KUmiGspylvKG8obxg2DN6Bd+Cd7dtF53k5vXs72DjYONgcPlwwZMBYMVA2UCtfXpeiS9GlrF0LX8PX8PVXX1lr4QBf8AXfy5dxOk7H6d26ceH4a6W+gKj3RjT9Nf01/bt3p320j/ZZcUuRR9OApVgpVopNStJqtVqt9qOPlG9yF2BWuLTvat/Vvuvj44AO6IAmEwyEgTCwRw/RuV6Uuq4DEiABErp0UabnXrkiOpel4jeUJ6gtFGwCbAJsAg4fVj5JubqKzlU4DhzAztgZOw8caPjU8Knh09OnRSdi1qVgNmNMdkx2zOjRSouRL75QvmtrKzrfC3u0TkzuJfeSewUHpzimOKY4lrz9OwobF5CnUHcSlCvLleXKe/cqz5YtKzrXyyr4hPVoAZQ6jz02NjY2NtbSe4cxUTxDPUM9Q319sQN2wA4LF+JknIyTPTxE5yoseAWv4JVRowyXDZcNl0vvuo7nxQXkH+hO6U7pTnXqBO/D+/B+bKzyrBV/0noC7aW9tDclheIojuLGjlUXXorOxcTyuuh10euik1N+bn5ufu6sWTgTZ+LMAQPACEYwlqCh0P7QH/rPmGEcYhxiHDJhgug41qbkvBCKmH6Yfph+WNeudJAO0sE1a5RnS04hedyOHVgOy2G5iAhesFg6KLMRy5ZVNmYbOpRepVfp1XHjcDgOx+GVK4vOV9ioA3WgDgsWmKaYppimqM0P2fPiAvKclNlNXbpIzaRmUrO1a5VnS2AhUXuHLYbFsHjtWnm+PF+eP3lyil+KX4rfuXOi47GXUy+qXlS9KHv7ivMrzq84f9Ag+YR8Qj4xcaK6YFV0vqJCsRRLsd9+a3IzuZnc1I2eSn7X3KJS6mdhPa/Hb6699x6EQRiEPXwoOlehWwyLYbH06PXRu7d0XDouHT99Wrtau1q7+v/+zzPdM90zvUMH5fslaEijhFJ7T2l3andqdw4fXsGpglMFp/Pn6RV6hV6ZP7+kFw6IhViIXbJEKRzqrEQuHC+L//BfknLp37kz6EEP+h9/BAMYwGBnJzpXcaHP6XP6/MgRuA/34f68eZlXM69mXl2z5tywc8PODSuBhdVKKAWjaVNl5feAARAMwRDcp4/yXeufDPLMtsE22DZ3rrGqsaqx6qhRypNcOAoLF5BCohSSdu0gHMIhfO1aiIZoiC5fXnSuYjcMhsGw27fpOl2n6z//jANxIA5cu9ZtkNsgt0G7d/Nsr8Klv6+/r79fq5ZskA2yoUcPvIE38Eb//gXbApQ2j4ZeqQE1oAaffGIKNAWaAr/8UnSskooLSCHzCvYK9gr28MgfnD84f/DmzTgGx+CYmjVF5xKNIimSIn//Hd3QDd3WrwdXcAXX9etzYnNic2ITEnil79/TVtVW1VZ1d1dWRnfsCCfhJJzs3BmyIAuytNoSNzvqhdy/L++V98p7+/bldRzFo5S/4IqOp5+nn6efi4s0QZogTdi0CSbDZJis14vOZZnu36fRNJpGJyRIA6QB0oC9e+EW3IJbe/aUcyjnUM4hKUntGCA6aWFTF+Zl2mXaZdo1aiStllZLqwMDyZ/8yT8wEHfhLtwVGAhzYS7MrVpVdF5Lo25zoHld87rm9Y4dk39J/iX5F24qWly4gBQxdXokhVIohcbE4GJcjIu7dhWdy2p4gRd43btHs2gWzTpxQlnwdeKE0uTu5EnpXeld6d3jx/MG5Q3KG3TypNJm+7fflP+4+Me63ee4z3GfU66c3VG7o3ZH69bNn5o/NX9q3bo4GAfj4FdfhVbQClo1boxrcA2u8fBQJmE0agSLYBEssrcXfbqtS2oqEBBQ+/bKDqQXLohOVNpwASlWiLoFugW6Bf/+NxyDY3AsIoKHHgoXJVMyJZvNYAYzmG/cgFzIhdz/fcUojMKoa9cgBEIg5M6dZ/65QECg0WAwBmOwkxO0hJbQ0slJ+blVqkAe5EFelSqQCImQyFsQF5l20A7a/fyzpq+mr6Zvv35J9ZPqJ9W3nn19Shp+4xKkYEOoltASWn7/vfKsulMbYwwAgKIpmqIfPIBsyIbsiAhTK1MrU6t580TnYgouIIJ5xHvEe8Q7O2t2aHZodixfrkw7bN9edC7GRKJpNI2mnTiBE3EiTuzVSxmiSk0VnYs9jguIRUFU2q8PGoSIiKg2dStF8/ZZ6aQDHeiIIAIiIGLpUltbW1tb2xEjEmsl1kqslZMjOh77a1xALJQ6bRPSIR3SV63CIAzCoDffFJ2LsULlB37g99tvShv1jz9WWuXExYmOxZ4NtzKxUKZrpmuma8eOYSAGYqBWq8xCGjGCDtNhOsw3DZk1y8tTvkZF5QTkBOQEvPkmFw7rxFcgVkZdX4I9sAf2mDkTT+AJPNGnD8/mYpZvz578yPzI/MghQ44EHgk8EpiWJjoRezn8hmPl9Kn6VH1qUBD1o37Ub/585dnGjUXnYqXcoz3FoQt0gS7jxxtbGFsYW8TEiI7FChcPYVk5Q2NDY0PjffuUhQo6nTrUBT7gAz7Xr4vOx0oHdUU4jIJRMGr0aDgEh+BQ/fpcOEo2vgIpodQV0TaeNp42ngMHKiu4J0zglhisUIyAETDi2jWQQQb566+VvdHnzzcajUaj8f590fFY8eACUkp4n/U+6332lVfMn5g/MX8SGoou6IIuI0YonxRdXETnYxZuFIyCUZcugR3Ygd2sWeW7le9WvtvSpUqPsgcPRMdjYvAQVimhtnwwbTBtMG2YMycnMCcwJ7BuXWXr2g8/LNjXgzEAUDok7N+PNbAG1ggJuXvz7s27N1991RhsDDYGz5/PhYMB8BUIe4JnqGeoZ6ivLzbEhtgwLAyaQlNoGhyM4RiO4WXKiM7HChfNo3k079YtfA1fw9diYmQH2UF2WLJEaYd+8qTofMyycQFhf6sJNaEmVLGiTZxNnE1c166URVmU1bcv3sE7eCcg4PGtb5lly8tT2ubv26c0m/zuO8e+jn0d+/70E19RsBfBBYS9EHUnPPov/Zf+27mzsg6lc2eaTtNpemAgeqEXetnYiM5ZOt29C8tgGSyLi4McyIGcTZtyQ3NDc0Pj4lJTU1NTU2/fFp2QlQxcQFih8snwyfDJqFw51y3XLdft7bexMTbGxq1awTgYB+NatYI5MAfm1KkjOqfVerRlK1SBKlDl1Ck6Rsfo2O7dOAJH4Ij//CdnR86OnB379vEOj6w4cAFhxUq/Rb9Fv8XNTR4gD5AH+PmhCU1o8vGBTtAJOvn6Kv9KXQhpays6b7FT95RHQsLERGgADaBBYiJshI2w8fBhjMM4jEtMVLrT3r0rOi4r3biAMIui0+q0Oq2tLV2ki3TxjTfgS/gSvmzcGDMxEzMbNYIgCIKgWrXgB/gBfqhdW5k95uqKq3AVrnJ1tZid/fSgB31urrID4W+/QTWoBtXOnwc3cAO38+dhH+yDfenpShfa8+el8lJ5qfzJk8k1k2sm1zx7Vvkhxb+jImPPgwsIK1G8gr2CvYKrVzdfMl8yX6pZU1ouLZeWu7pCb+gNve3sKIIiKKJcOZgJM2GmnZ2UJWVJWXZ2NIkm0aRy5ZQFcYjkS77kW768ci8nK0uZrXT7Ni7ABbggKwuGwlAYmpmpdJHNytL8R/MfzX+ysiAO4iDuxo26H9T9oO4Hly/HxsbGxsbm54s+L4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYKzb/D4DEm9oGCaFQAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE3LTEyLTE1VDE1OjU3OjI3KzA4OjAwohG+LwAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNy0xMi0xNVQxNTo1NzoyNyswODowMNNMBpMAAABPdEVYdHN2ZzpiYXNlLXVyaQBmaWxlOi8vL2hvbWUvYWRtaW4vaWNvbi1mb250L3RtcC9pY29uX2NrMWJ6YTB6ajlqamRjeHIvcmVmcmVzaC5zdmejF0ikAAAAAElFTkSuQmCC")}.login_container .el-input input{color:#000;background:#fff}.login_container .el-input{display:inline-block;width:100%}.login_container .el-input input{-webkit-appearance:none;caret-color:rgba(0,0,0,.3);border:1px solid #fff}.login_container .el-input input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #eee inset!important;box-shadow:inset 0 0 0 1000px #eee!important;-webkit-text-fill-color:#666!important}.login_container .el-form-item{border-radius:5px;color:#454545}.verifybox{left:auto;right:30%;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.take,.verifybox{position:absolute}.take{top:0;left:0;z-index:-1}.login_container{height:100%;width:100%;overflow:hidden}.login_container .login_title{width:100%;height:60px;padding:10px 60px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.login_container .login_title img{width:10%;display:block}.login_container .login_contant{position:relative;width:100%;height:calc(100% - 60px)}.login_container .login_contant .login_img{display:block;width:100%;height:100%}.login_container .login_contant .login_form{position:absolute;top:50%;right:30%;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);min-width:400px;width:22%;height:460px;background-color:#fff;border-radius:11px;padding:30px;overflow:hidden}.login_container .login_contant .login_form .title_container{position:relative}.login_container .login_contant .login_form .title_container .title{font-size:24px;color:#1a1a1a}.login_container .login_contant .login_form .title_container .title .title_name{margin:0;font-size:18px}.login_container .login_contant .login_form .title_container .set_language{color:#fff;position:absolute;top:3px;font-size:18px;right:0;cursor:pointer}.login_container .login_contant .login_form .form_fields{position:relative;width:100%;overflow:hidden;padding:5px 16px;background:#fff;border:1px solid #e0e0e0;-webkit-box-shadow:0 0 14px 4px hsla(0,2%,90%,.5);box-shadow:0 0 14px 4px hsla(0,2%,90%,.5);border-radius:4px 10px 10px 4px}.login_container .login_contant .login_form .form_fields i{position:absolute;top:-50%;left:0;width:4px;height:50%;-webkit-transition:top .2s;transition:top .2s;background:#f5ab1b;border-radius:14px}.login_container .login_contant .login_form .form_fields b{position:absolute;top:50%;left:0;width:100%;height:1px;background:#e0e0e0;border-radius:2px;margin-top:-.5px}.login_container .login_contant .login_form .form_fields p{margin:0;padding:0;line-height:32px;height:32px;font-size:12px;color:#666}.login_container .login_contant .login_form .form_fields .show_pwd{position:absolute;right:10px;top:0;font-size:16px;color:#889aa4;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.login_container .login_contant .login_form .control{width:100%;height:70px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:14px;color:#919191}.login_container .login_contant .login_form .control,.login_container .login_contant .login_form .control .remember{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.login_container .login_contant .login_form .control .remember{width:36%}.login_container .login_contant .login_form .control .remember p{padding-left:8px}.login_container .login_contant .login_form .control .remember>input{position:relative;width:14px;height:14px}.login_container .login_contant .login_form .control .remember>input:checked:before{content:"\2713";background-color:#f5ab1b;position:absolute;top:0;left:0;padding-left:1.5px;width:100%;height:100%;border:1px solid #f5ab1b;border-radius:2px;font-size:12px;color:#fff;font-weight:700}.login_container .login_contant .login_form .login_btn{width:130px;height:40px;background:#f5ab1b;border:none;border-radius:10px;font-size:16px;color:#fff;text-align:center} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-5309.24c7554f.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-5309.24c7554f.css index 3bf62fef0..9a37537ea 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-5309.24c7554f.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-5309.24c7554f.css @@ -1 +1 @@ -@font-face{font-family:iconfont;src:url(/static/fonts/iconfont.ba04816.eot);src:url(/static/fonts/iconfont.ba04816.eot#iefix) format("embedded-opentype"),url("data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAACJQAAsAAAAAVKgAACH9AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCObgqBghDoEwE2AiQDgygLgVYABCAFhG0HimMbCkZ1hhxsHACQvM8iooIUIPv/vyU3hoisQDP7oxQspFSOEhyEI964SGdpHgbZQdChvkX9Xd97nQ+VaIq7d5noG8yfVj6tSWbtWNLPqLzFBpnESCbt5xn252+nSxLNW5sNpeTh+f39/481976wz7uPRtUHGDrbrw4ZrEQ+o9sQS7AOLVwR9wAYHufsX4sltIw2UGCOWN/DZAYtWnRGXhjMYFsLlBOm6ZgkU7ixOUVm3hSYSZmdcy3Ttndf4ESBU8/fv9PPcyR7254j2T+y/RCTRQgUIXDBiWYbMHXqvsls3dZt8yP9Sr8UeI/jYBECy2DQpVnHImNkw4UQi/rrnSeKbo3ABwpVbnt7MIAxZW53t9DyQ2dMry7DVAd+ALjBeSGPOIh9Xfq3yXEPE8N0ZWvf3u79xy5A2HKIRLDVxEQAD/zfm+lMLBjA+E0Di+KU9uanlEK1W7V0DFgDrXU7yJ4lXCBcov15demKDpPSOimby7C0sjnTlu3++0jcl/hgIbgcAnwn3BBuFBeEGwh8Vjk7ve+1wbkBaZxrn1Lq5im1jRnWZJnalH2IbiaZdvxjNFLYNjjuGFPLYXaXebSkr0ZxoxJ0Q5TYn78moVKvgrRuw7Z9FDmzmGDZtcsXT1M8rfKIsqS8oZTyYT6c9itRHs+EAy+Rv59+NScRhJKM+eKuC+vPAT8+K8geLvKTY47JsOvG/iMyFJATC6ijaZbsa6IgU/laM085SuVr48fXBUURyyJFWuHz/9qJHr369BswaMiwEaPGjJswaUpBkxmmzTTLbHPMNc98Cyy0yGJLLLXMciustAqEYARlstgcLo8vEIrEEqlMrlCqyA5ptDq9wWiiOkVz2mojOedguOBye+g6Dn+yRq069Ro0atKsRas27SqVq1KtQolSZUIm8j+eVMpcWg0li2DyBubHB6OHH1/08uOHPn780a+QhKGVCLQRhXZi0EEcOklAF0noJgU9pKGXDPSRhX5yMEAeShRgkCIMUYJhyjBCBYxSCWNUwTjVMEENTFILU9TBNPUwQwPM0ghzNME8zbBACyzSCku0wTLtsKIDVnXCmi5Y1w0bemBTL2zpg239sGMAdg3CniHYNwwHRuDQKBwZg2PjcGICTk3CmSk4Nw0XZuDSLFyZg2vzEGMBbizCrSW4swz3VuDBKjxagyfr8GwDsmzCiy3IsQ2vduDNLrzbgyj78OEAPh1CA0fw5Ri+ncCPU/h1BvWcQy0XUMclZLhKi1S3hrQYdRuAPLdQ4A6K3EOJByjzCBWeoIpnqOYFaniFJG8Q5x1SfECaT0jwBRG+IcoPxPiFIH8Q4h/CBNnZNvqzb/2Hgm+XX6shAPDIDn2nEKAqnKGBUOivZA4KW0gZvafr3BQtvdGQKGOXK+jxMuHo+RqAUxEBRoTkYwZwmLuk6nyIpr4UPapkojiXpKlDRMhw0F0ARQPDTMn9UPjbkHEt+m4NOCLsVWbo7ZitUp6Nl3YnrJ8iAvij7nsIRSkYT2AfwVuji87qVBm1Q5gVmYuFsYgqpu1Vy0P4b7e3HTaoWtKXAeiIq9rtbDfJnFEJ3yZ5C9vMFqQ4rUyz9jyEsVO+bind+meT82iX3uh7WLtf/mNHA48h7jF5ypzTlCQcv5ubeehZSly2XeCJ32vWw0QsABZSz1MRvFzCulXrUUotFpgPLHGctww3N2IaitXjWLBtPW/2mW0J9wozblPnTXu/syRwarVqYG2kKhiLdIG7JvyWsZA0S5cPgxEReXFY0nvhZ941sR0MJUHkFQ7CcX3kV73dn/vD9HnX4zD1iwl79nujL6+lfhIthTEg9FMWn8HG31mJYxBFRLi2SxRsAwoSjCwtLT6/QJHjxcxpyU90trhORYQlNEVoAbGpu2GbosgBG5OkOGMFEfxEaXYgF207EO8w4/rRVbtzcBw43CthsjtfCmL0OBzGXkRcHeMaT59lMFjZVw728rXpog0WMNByJpe9kcvkvWrDIJPwkHN5yI1nKJtnLIbJvJ8CpC0DZRiQThkg5CyOqcHwGnJsLMnghmXYs53/HpcMFoqT/eerkoBVBRRvYxNPHyNNQeQAMCbForbAXiTgZZUEjueAtXnoH7H9zuDi/f636fbH3VdPrdw7eOuDvyN3Drx9st7snrvX+5YNXiGOS91Vux7s+nvhzs3tVjXr8khMzBjJllUMimyapCU9KmwhxrSFdmeVw/5mgCsEvEiy8ZkC1iTTAU42MpStqBEbthqWYkhbLgMBaFuGFwUJmsImfqFKWJCxL1r8hd02vNVOgzRus/VWrCjy4oKdpn6SKxVsiIkZw6rhBYfJ0ioZ2Yyr7KrxWsTdUMmVwKlGtwrS1ultYU0lJS1djQX9BLXJhOoliVrLa2MGmSNLpp8EEYQaEbKMOzWImr1XRLBD/hlFJXG5xhnaCoujC6vDbSYgxnlndOSqiujC2Qxl22EM0UsdJhFI0OZT0U9VILjQS2YtDWPPEV0vq8QfBoKrSKAHyyJalTzpy92Iwf5WDXQ3S/2q3vzeMmwXM+YKRAR/h9PxHVkIvwFsEtzcp+DwLBJ4+XCgqUvB6/4bz4T/Pc73+xR8db87+loFX5KsNIk0O+CSUDQjKiH6L+5+++17E/2rKYc7xznuge8C/0LnW2+dDjxMwe4J6lXQf4PD6zuA0X/0TxRc2riGZNwIx/9/llacjXLVM+x//fV0X5b0Rg803Tl6ZlCLGA4ElEGzGAlFrfbrXd/hJgPp8rNuV+c1+a1er/vwe7Xu7jetCgFvHT04vKLIQFoyXtkoqm5Vf/VgZW/mmwgdUXO134d5bvrXE1+a/NVUpZ53p2sTjcnqVPtlUiRo7hHBzVpuzpDaVDNCmVqWW25HVLJeSgtSp3EcOaIllJZKSBcICf+RFv75kffh00vkrXbCrXV/bTPYWNHBp6fg1kF4dBb9z0c6O8Bb2Qg21xD9vXmtro0S8MjcP2KMGNpoenQ72E1bWkjTZVjZvmRt7mLW37vKQOMyw4vZDtO3GVuded3LdjpJXAzjlahVT9a3OoXav3vXV2/d/cOl/f7YnwY6uvl2oD7xP35241LkqBHnj92H97tjh/3xPw9eGF/Va1d0utVZdao7gzf6EvWmvRYH5rLnK+YqfX2EgUYrd2AoN80Jtw9ZarlGYyE1x52d4/fqIPUEru+NHhlOvi8J6agxKY/J4glz+UkpF7jsMZnv/i7HCrHXkhldR60gA2NqEQBm0U7RAJic1QK4pFWF9GUBqGRNBQJ8CNrihUe0miylfnEoCRxHOMClR93J2HOqhI00VPNASU9MpGFcaFgm58huxFU7jJuGt3PZ3tpDk8P1taRoP1P7aUlYIlwOG6QmCpuboJumMlQsukPbI2cFN+egEZ0/61w+XF2hXLC2Lmej40W+LYdoKBKfSVtT0swQMvpJseQMBxjI1KBqVyywFVhYMyxzwcmtM1CLYbGwWFElDpCgiiqMKEXPBlIPSwaVjUKzllM/IVLiJIlZj+jsgDuXL25S0BWnKLJORTFz2coISy7LOIkSFzhN1z68pJA0g1KqkGlkBBAUREHAtGEin+IneJbKmjRrpB/LAgto2GDJRzPoJg1fEUpAPpsztNSLYWdVoew0be76e8sCijlqVCgZ5PMKhFDDoyYb4+0bLAEVjahP/nmqqrOcsTFjGX++lJObZLTOHDQpSTQZU1S1o1/eiiYbVAELF8jkebSh/cISZioQkoInrF2ENKuGiibeiQ32kSLQjTJWs5YFMgsAFQEzw038skAXWVcEJVHAO7VZVZTUykJGxVtZ0Tl9W/opzIh4uUzZqVExcuaNHOSbxrI2Eg4uthqa52oFfWWW2Q4heSUpiH52C642GsGGhbsRFkecw7h2mgbYSvmpSEY1nXPsZg1+aV7KBf/+4iwlzyex258/q9mj2QIvHBd26NZn7uaVRmqL4OrxYcGbauMtOztwKOj3/cGAez3ZTR+lv9Hc7bQqtBMqbMacn7IsEMBh5YURAn2N5Rk7h07xS7obDn5diqFxQh6rCDk8xkjjTYkF+bAS8poqltS3pJYMhNWhBrUstOcnaBMgHJmVemgECca+aasAoYupWuHBignS9J4SwxIAP0341LMF4jSz5vc/7xPUziYygdfZwjnK5DHnAt/tfrNfpTkSEYau5xDqt9ZFyuB+v52hLC1sqE0AMwt2kkapL5b4qUpGJZ1z7CqGpv3Cz15svDXnOfox3+6FB4Mf/eNT77PwC//z+kusDbwCLURGGwlyqJxNTa0nZfoJ0bRzWMET6jFryDx0AnJCmX64NG/Quj4xeW1qYmh6anhSA7PHAwuXrgvl0bY5Q7MW2r8kWMbi9V8hsBZsCtA4rsnxRwjm4hTqYaWHBFMjXZSAtcQEAQ+eTUuG3QhyeHFzrujQftvWxv6x1eNeDPth7aUUwlIqbDO9d/L2ofCjkoiAwhlKXN9jUGNnpS3QEUNa4WYl1OeEFEDI9eEacreOypDOYV4Ny/oY9qoY6AEI8zOzwIORYbwvlvQ/HQdHIgOmYl9YT1nhKVmRLmMsR5UkjTam5TIel1mMOUGExd5CbDSTcRZ67+rFhgwIn9LsRk4bWNNK1F9nRCGOJXWqiAnRilfl2mAVHTsoWU4vApNEqosFOOBsz9+sTdTt6lRjbmYF/AU3vJ1wz98NtuV1ss5Bc8xY3bnMoJdOqZPm2m653wgTT00+cxhlwl2wpLBzWai+ZKGtZvPfcVmho0CCAM2oXxSolLg+brA5qgE4S7xUbShb1ticnbHa9TiEZdh1Nkil1WvX6sZwVyCjRiK9tOktC+zv1jxr3RrRSqHqD74YMOwk4qnoL7YZdR9qfiVlZyzlML9goAYBzJTtBA3ASvqpTkYFnXPsZoz6y96z83f7jk/sDLpf0hHYdXvXXTiad2e1q7qP9txeI316T4aZVefu9B4LaVfdK5a1BVttbXfU5mC7pjPo8IlLtpjO4DPhHfTZ2z0nx19ME+7uuh17Ex453Xc3+vjUC7ZLZyZYMy132mzohrrrVO+dqGOTApnr7z7kHw3IvrsS6V3fY5G2b6xaTMrdbqg3FJfpAxxKXFJmyU8rfG39hsnv1isdlMFQZ3ioC4xlq4qpp+QXdl/SnW/RK5yMUgnqddd6JWU4wP496D2vOq9FRxd5e72/ohCPAEKocl+TQKz1OUxMkoF0xTZFgVI2mXg1WEtaapSJPOLfwitO+aYRV1xBgyUbvU3ekV2REZ8L7SGiE1pJaNQilbIhalQhbWOerTULv14WN0VJRfLvHvps95YNy25Nu+WNZf+Qf5TvP+afrpge7N/2vff3bf7B0/0LfN+D3DzgO6wa9h2QDQY9llXyq2f9OgiNuVxjKAjlvnq4Fa1R7xGpgMzBrNAKUq5amVMgBIOJIiAAIRqsEUEERA7hJBgiELlskRauDA8YUnYhK4DoZpII7p9r1IgMZNQWDLFasJCbLSCPEzCPBY6ntt3IJ8aCAui+tKQlftx6xOLm3UYj2U9CeVmZHJ7WUtsZwhLkqeW1fm+F7n/AY16g8WoZpMx9j67AigwPadbUh/qZhsmetTqdKqga1/x73VXq+6vXpi8/uNjww5R/n4akT/GcV6Tz8sZuz50601Oa8T2mK2jFd5UUG8FGstI6IHCYFoBTYAwgLQLx6VdJnooVUbrxVVcuK1tb+nye9/VGtZ19yZ+BxyDltEDj6uq6R6/PGhm9ZuCI2+UKHE3/9z27Y/KI3Z68PBDE+KMqoiuZypC71diyfWvWsFTju19kwZ9gE64Jej6JIO0BdjKiih6ESUq/iTW0spnFlJM3+Q7pc4Q64uOcNqrNR7j6gmGwcQJZs4tqq2lH7mHg5BBCbeYXW4brrJsT1TecGRadbwbhKkF08Yvgp4P3P3D1zkfzc5Zdv/7t3ICh6TOGgr/Ly4Nvvz0c/OkLoq4woKfn0SPwYJ+zXKI4lB5vjO5SR8KqKpU4y74+N6v5webqKjYZoh3wSQvo+SGCdAQ4RO1gBuB4vQKN19trchPY8kJ6LAi7WRECd15dUHhrS/T9ApzO+jW5CjC5cjC5CjK5CjO5CtRPLnIQNhY84Mh+wi0vLZW7SdtNjrzjM+xzh7KlgVvBKmmjbCRUjWzCSoeCMRr1StxpjMKhxAtJsgLAm4eV+gajHvRPv9ULgebHfzyuf/ftNc/t0HHbWM9r33533aNKw4LdHnfvStvapNEz4SfVdzwl+9gQs2slZPhfUAiuan97rWTgRyLrECouLX5v27sh0YE+7xU/3umvLdfKcosIXTHsf+nrprCXXy0+Vj5TO/vMZtB54kATsWbc6oOLjz860Lpk51bf4uf/33x1YE7FWOXYnK2503deXWs2xtVf2ST71eof6PP+5PCf6nW+9duyS1IS4uo2H534a3+wuizq96U6cs1F4g5cEREV7Q0fFg/mXnmeNXVDL7xW/Jwgcm9MuVds/2t2eMylrN+rV56fV8IsB8UVwz3HnwqVrdpSEB2WeyOhN/yS+N+qa2/G8PKSbWt1rUllIDtkFpIfkdtKZpU0Fk0un7Xr2mIjM+KAk7Mia73fvMFOiYceOAcFQOEjMC85vtJ76e2psQ2hK6vzLysVv/eZ+z7qjGt8fv1386an13zQ5clxrZVrW71983PekhWVFszxeKuorKzoLY85BaVFsre8tlZLWVbaQ1axpmpJlcRk6q/axALWbnvxwqbYNAOik8YCML9ha2iwxZ+DqiCKexSYUOZ8p9wZv7PvV3x+EYgwRlIMhKI5kdXjFJwceAD1+2MIwV8gDmwtMcdcq12+pQTJ5S82ZVVMPfCf8r//+eA/f/+9/4P9+69fr/cC2b5Iu1Z2Le0Lg7hqStFULQg0QvnpmcEzTwefmRE848yD4QilFHuKm8UcRyjVCpbCYRo5plpiB6qqFYWmgIXNpq640FiMR1s2PmW6+9ZnMESl2MgWah/Oe1CWEGJvDki5womJVbgULRSgWhSjyDVGWiCthIMY81tYPon8/nustCuZOdB6Zb+/nxciHRIbmF1EptQHTakxydJfLace/Dic3Ji4f5lP5ptgQYHyfx9RHt8WztB/EqE14wtXdqQuBKuk809mLvPZv4pYTnxC++9YOLLj5T/vbjGbahK86/veuJHj+aZX/qIcL5dXLgis3k3NNY0jJnDK8uWr/gazqLkluUPEG/XCWjzNQ1ykUqbIVmp/889g83LBGiAKDxWs5GFjsERtIBxExzvGyLnFdhhajG6LEAgTHYVc3ixCFWBAJpaYKECZCIZCRNoJN2EnUXrL9lAEDOJA/lnFSzmH6rFQtlObGZXEvDHBu+KAo2cSI1zUdELR0qf6kIk+dALDatG43ilcPZFToFMEa8sbLgRi8TCGBC3u/YcQAlsDBKFALwiTq2zfMko8ZFAy337xhWVWVrf+n+n9jnDHxImm9bW4PfzseMJBAlLeYxCsdwg1zwACyGapSAfQQKuyVQEVrUorkl+/Ln9EEHODSjxfF/3zZL9mHXmXB7yN2NI+CMtqTAQLiFkQwwcOjyyJhj4BRRSAURrK33xTjqJrOYYltqM1HHRhkFdxTJE48CMAvoAn6QkgsAM1fia7v+U5OTT+Kw4J/rKg0508Y2UghwGGEDAAqoEVQJqHPAj949VEi4XOyJPl09NPq3BHVXcTOah0kDsBGI7L90tDubkvN2pWVXyaX36c/QySkv9QeqV6ZHko65rDawLS1gV47quT589qkt5aEZyjmyHTrp/v7bVLmuYxt6TRHw3PaV6epS+vnrYmIKJTiMhIygpV1m+gmjwy2QDPTI90j7kXPCjQ97m2z8s7ydu7L8czOmDJKqV32OJVERkHd5fVl8UtU0as7TtSOzeGlTD6mE0b7VOFKHbDQASAooCENSuqqrnQEA5HkazOne8zcn/dsuMtGoABvHZ857rakXvcXDm6FnQNyRVsHDl5XpNO5TjoaHA0OA8e9//zSD0AtIKesGAjXeaUSNMPJkQ1dEc3xJ+1SEG5897M8+upO+UtOIiemoCT1iLADEPoAtwN+sbf08lJUdeafnDLCOMzaQG5kQtaAfz1+uAgF7PxCovM2IzMPOLNmw72u1jMngEgipJSQCEFHq3UODopmthhoyuQUrFiDWR/CAsxFceov5CCUWhSMxkYJSE53uOkxgWUikXXA4UQM3NYQqDysQoVjHnTfh6SdkIlMjBSGGUG5EWTA9VgWtpa5kgYCXuPUIqGKjyThGQ/TwE3bx4jrBGLvRkKqyqKqlHyTNY1Cq1ZC7tc0GVRuaFbwCJ+cBvUOEfHgYJAAMDIIb95Fc+z8ezyVIQkc+ob53jMe9ngNSdNI6rcKhUIsruCgCpFPsh1XBBP8CdQj+OD9DVqynuLtGpdA8ybFV1xgeYTrPMggmLA4u+TGJgARqtGqWRpWlrqs/ljKru+pSV7Jchn3zIkw6v3QrMbNtUOPLYJg5c6nL69X8FK+Lm9BidOl8clzK1OmPOZVyRZulSikxRdRYPeO+BtBcV+q1y0LA6KmpkES80lCPst0kYGkR/YxQUGmyKX2w59GzNIX9KNiWa6umosZplQMzt58gyPljnIOeggfMngUgD25nxvSGw0JhrE1XsUYKmjtOQkxh/F8zxML8gfKiycDpxGAQrqveN+sWF2PWLx5IDRvSNsMzJhADkBCSPiQ/hQrRqDY0IgRtiNMx84AQKCM6REUp/+EYexbbKDPMThGDiwBpjy/0yUWVHBKNcJSZMJU7ixUGu4pUZTy+1loQjVcqIIQm3nDQiIAmIYhEYvOu98saDwik5SU9MBc3IrFtLpC9OOKoeqJM5mPHTh6P+V0GTBIegCY2Clqe1XDmUHYadatMrCxFyiAc6rAct8bie0rk7gQQJ7hHSNOm0RrC2kp0wprKit1VWMG6ej65Nki3x1votkJlWNjvZJNTWRPXR9qOwH0WG84t/0UaRVubFbZUQdiAFuF7TyVkBzWkIGeFFY69JUOmnxEc2S+AH1wyVO/OGfZMeArQF/JQ7124ZsPzr6T4PA3cjFA4hcic+GzeaHQNyuO+97SyAKkIFAwkNercYM7n0ZmsaxxvZRq6r4Wu+hvgzXtZddVykhe3b7wfqwEboyOvrolAgozY58zO7QZes02xfP8fQ8vw0x6BObGZmfXiq69JS8iBxJVaG3d5VuUogPbu6OVfmGfVUe7qVnb2T1wtSdGkcE+FDo/N40zvcniVJy4oSF1O9vrpjrWxge7DnJesHDF7T6LAISibVHT/5dV3mR1J+52EpQ4zr9wgnwk27pIJDk7BFLQ2OjIVHck6MAg0vfPFmCcfzHPI8yCgqGdLrpQLyTgbx9obsK+0T7VOHurVvlEP2EmnDJuMzgIIMYAULO5m8rHvIb+pMdKybZ5LAiXDgGNrCc6RO/oOwdZVOBTlr5EAZjC4Fsje3Fc0f8+f7SEhsY1WCIeYzwTSC+W1EQrl08L6gDQhQnLAJd8LmSWmTG7Dkr9JTX1+YBPcekF90Yv3xS7ZF1BolMb7JQ0vpy4AJldfnR+TE04UtuIbAE+9nJWykr+aoYOw2UNJ07Z5PwCdICJ8cghmcgdqIhwNJ2P+Uk5cRb4Py+Mk9cARQrQSMvp5HnOJXiTVRqPpQgUcvvJeC7oM73BUnLrOjJmJiXPEHJATAFnIIAl3OghBGIUSY9bYz3V40SylwSSfqhhGhjl3ri0w5KML/r/qzzzZsfPBj4wQR5IgcgUFfQPCVWLWY6/yIRjYxYX8i/KYTPtz7E1CGC+KZvFityPSimBsHHspyhHY4Ea9JTVlLZD/S3cXFoua08ipA2ZUl/6YTcciN018In//sI6ZPY34t++VZ2EKMXvbh+tWZgtCwUymgLeoEHDiSfcutLTGWGYH177hb9D1eSDoC6g7nt+hB9mal0zcqQ8+dCVq4pZctvNuZQrpd3KjideBrUncm5joMNWWzkTp07HxJu2Lm3p7b+9yXhP6X9FL7k9wW1Vm5nJbNzX0D1xaE/pv0YuviPytqjezuiHvjnJFjioyGWhCnycpOIqFmzPw935F/u7KGiefzHU7PJsJIxm+oLT7vuSxDvhJvm4GU9WsmJXFwT91wVz0WxqN/4InyKPED28Oa45TfEK4vofywig9ELs37TZzIS6AFW0asBfD+Bl0ZluWtLMF5aQJPOiB5dUaw0kSuj06yKkjiPuEpYgkQyAzq9NTpoagqOtUVJmbcmPuwai9Rk+jxaZTzF58ZSHszNJBzv974QWFRdsirDUVzZbJejLnPestqahDO4su66JTY1DQfc0PEtgYeLf+LO0PVAoKypqWLhaVqr/iFb1GUViByfHX3/7fvb2PvoWTo3W/a/V+Xg24gY4h2eoXLtG0v8J6/Q5G7/4/1fXs4MXclf/tr4v9BUxr8SWIOEK6nfoKEGKi/dFKG70Q9dS1sSqyTlHs/eHcr0uDPlhpncVXCXqDLPXarcSnelKRvfvEqTO3gpr8CkJzbupN4H7lDrIzGjmbLA5K7v3SVa/e4uVZ883JUOpKYWq4ymqZdX44QQscublFMr3Kszrq4L/6DVASY3Ry75j1OgGXldVLdzv5FxYtEg/NpzjH3eT3LNvzZbhsMg+TiJxzYWLsbxsyx72g4UrVyfVuOEELHLm2QPS61wf/dx5fvif9DqAFOE7uuw/3EK9OTzuqgSMN8CJ9LlRRt+7TmiSJ/jpSe55l8ogsNlluQjfU0e21i4DOr4WSKrPqlQlE+vsuVRUGm+/hVMTlQgRUyquPCfLBIhKf+ocWTNAUSYUMaFVNpY54MwipM0y4uyqpu264dxmpd124/zup/3+0EIRlDmNyA7zeHy+AKhSCyRyuQKpUr956J3Sac3GE1mi9Vmdzhdbo/Xd4mu7CdgT7jsIBHfNOnxK5LwGpg7Is2O1qchGwKJtOpx7UkHYDNqFLareKlGvW6jB2wxqHTEdjk7Be5A6lUS9ZsmUTRrgTrgs4kUIS66zKjoYP0eJdZv9oBrk6h1Wi+CQ7YPrTeMdFFwNAS8vxHbMDU4oEdA9uGO3CAHE3tOsF34nyjNUQecB6TjXuTg9CRvZ6qinGiE7PdBrJzfbN+OHZRCH9XKaNUE0bvSGKvADWWp1UQW30lsgHXsnAQccMkB0Mm6jIjXmOYSR8tIBa0TtscZhSXwRiR01h0pa+q/xjnzhCOxPb3zvCsK95kGEzJmqYuu75oc34nPZETBkHtIT9WQvc4F5XRKN3pvO5Y/BBGL5ozyoVk98es6kBqNubiJOhLw6hGcIPio7iEyAqVNzXS4aUEBKJlmLQRtCozmvHli7F653tyaWBGHzbaolSJOwZZ4V0tFTKACGXekU6Bqm7QAed+iww8VFkX58zAzHFucbafUNjil+sP34TuWxtYKfmG7SBJFHZlAEMLiog9RNjRveXWXDVCP7ECWFoMjFSqYBqRVLiHLawKexYYOm9Up8DYOiS+8LyU406BGKXjmLXDgnszuGReg5dDtPO8bmeVfeB/4ZIth3LFCerstGoCr/aDNrFJvUtISUq8D4aJz4P79C+bBzKI4cTZp+Ld4QTOPH5WMp3CILztqe8OmOVMfVdw1NR7DqGs8k5RtPlQ2hmWME41Ku0b3VBbyKBqcBcHh7OgJAAAA") format("woff2"),url(/static/fonts/iconfont.cf8ecfd.woff) format("woff"),url(/static/fonts/iconfont.111271f.ttf) format("truetype"),url(/static/img/iconfont.c6ec5b6.svg#iconfont) format("svg")}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.luckysheet-iconfont-lianjie:before{content:"\E7F8"}.luckysheet-iconfont-dayinquyu:before{content:"\E7F5"}.luckysheet-iconfont-dayinyemianpeizhi:before{content:"\E7F6"}.luckysheet-iconfont-dayinbiaoti:before{content:"\E7F7"}.luckysheet-iconfont-fenyeyulan:before{content:"\E7F2"}.luckysheet-iconfont-putong:before{content:"\E7F3"}.luckysheet-iconfont-yemianbuju:before{content:"\E7F4"}.luckysheet-iconfont-biaogesuoding:before{content:"\E7EE"}.luckysheet-iconfont-zhuandao1:before{content:"\E7F1"}.luckysheet-iconfont-youjiantou:before{content:"\E7ED"}.luckysheet-iconfont-caidan2:before{content:"\E7EF"}.luckysheet-iconfont-tihuan:before{content:"\E7F0"}.luckysheet-iconfont-dongjie1:before{content:"\E7E1"}.luckysheet-iconfont-jian1:before{content:"\E7E2"}.luckysheet-iconfont-jia1:before{content:"\E7E3"}.luckysheet-iconfont-yichu1:before{content:"\E7E4"}.luckysheet-iconfont-shengxu1:before{content:"\E7E5"}.luckysheet-iconfont-neikuangxian:before{content:"\E7E6"}.luckysheet-iconfont-qingchushaixuan:before{content:"\E7E7"}.luckysheet-iconfont-wenbenxiangshang:before{content:"\E7E8"}.luckysheet-iconfont-jiangxu1:before{content:"\E7E9"}.luckysheet-iconfont-neikuanghengxian:before{content:"\E7EA"}.luckysheet-iconfont-neikuangshuxian:before{content:"\E7EB"}.luckysheet-iconfont-zidingyipaixu:before{content:"\E7EC"}.luckysheet-iconfont-logo2:before{content:"\E7DF"}.luckysheet-iconfont-logo:before{content:"\E7E0"}.luckysheet-iconfont-wenbenqingxie1:before{content:"\E7DE"}.luckysheet-iconfont-jiacu:before{content:"\E7D9"}.luckysheet-iconfont-sousuo:before{content:"\E78A"}.luckysheet-iconfont-guanbi:before{content:"\E78B"}.luckysheet-iconfont-xiayige:before{content:"\E78C"}.luckysheet-iconfont-xiala:before{content:"\E78D"}.luckysheet-iconfont-wenbenyanse:before{content:"\E78E"}.luckysheet-iconfont-shangyige:before{content:"\E78F"}.luckysheet-iconfont-shujutoushi:before{content:"\E790"}.luckysheet-iconfont-tianchong:before{content:"\E791"}.luckysheet-iconfont-zengjiaxiaoshuwei:before{content:"\E792"}.luckysheet-iconfont-bianji2:before{content:"\E793"}.luckysheet-iconfont-jieping:before{content:"\E794"}.luckysheet-iconfont-jianxiaoxiaoshuwei:before{content:"\E796"}.luckysheet-iconfont-caidan:before{content:"\E797"}.luckysheet-iconfont-shujuku:before{content:"\E798"}.luckysheet-iconfont-wubiankuang:before{content:"\E799"}.luckysheet-iconfont-bianji:before{content:"\E79A"}.luckysheet-iconfont-qingchuyangshi:before{content:"\E79B"}.luckysheet-iconfont-shanchu:before{content:"\E79C"}.luckysheet-iconfont-wenbenjuzhongduiqi:before{content:"\E79D"}.luckysheet-iconfont-dayin:before{content:"\E79E"}.luckysheet-iconfont-wenbenfenge:before{content:"\E79F"}.luckysheet-iconfont-hanshu:before{content:"\E7A0"}.luckysheet-iconfont-jiangxu:before{content:"\E7A1"}.luckysheet-iconfont-dingbuduiqi:before{content:"\E7A2"}.luckysheet-iconfont-tupian:before{content:"\E7A3"}.luckysheet-iconfont-xiangxia90:before{content:"\E7A4"}.luckysheet-iconfont-shupaiwenzi:before{content:"\E7A5"}.luckysheet-iconfont-quanjiabiankuang:before{content:"\E7A6"}.luckysheet-iconfont-shengxu:before{content:"\E7A7"}.luckysheet-iconfont-caijian:before{content:"\E7A8"}.luckysheet-iconfont-jine:before{content:"\E7A9"}.luckysheet-iconfont-caidan1:before{content:"\E7AA"}.luckysheet-iconfont-quxiaohebing:before{content:"\E7AB"}.luckysheet-iconfont-wenbenxiahuaxian:before{content:"\E7AC"}.luckysheet-iconfont-shangbiankuang:before{content:"\E7AD"}.luckysheet-iconfont-dingwei:before{content:"\E7AE"}.luckysheet-iconfont-sizhoujiabiankuang:before{content:"\E7AF"}.luckysheet-iconfont-cebianlanshouqi:before{content:"\E7B0"}.luckysheet-iconfont-hebing:before{content:"\E7B1"}.luckysheet-iconfont-xiangshangqingxie:before{content:"\E7B2"}.luckysheet-iconfont-shuipingduiqi:before{content:"\E7B3"}.luckysheet-iconfont-wenbenshanchuxian:before{content:"\E7B4"}.luckysheet-iconfont-wenbenyouduiqi:before{content:"\E7B5"}.luckysheet-iconfont-qianjin:before{content:"\E7B6"}.luckysheet-iconfont-tubiao:before{content:"\E7B7"}.luckysheet-iconfont-youbiankuang:before{content:"\E7B8"}.luckysheet-iconfont-baifenhao:before{content:"\E7B9"}.luckysheet-iconfont-geshishua:before{content:"\E7BA"}.luckysheet-iconfont-baocun:before{content:"\E7BB"}.luckysheet-iconfont-shujuyanzheng:before{content:"\E7BC"}.luckysheet-iconfont-jieduan:before{content:"\E7BD"}.luckysheet-iconfont-geshitiaojian:before{content:"\E7BE"}.luckysheet-iconfont-zidonghuanhang:before{content:"\E7BF"}.luckysheet-iconfont-cebianlanzhankai:before{content:"\E7C0"}.luckysheet-iconfont-shaixuan2:before{content:"\E7C1"}.luckysheet-iconfont-xiangxiaqingxie:before{content:"\E7C2"}.luckysheet-iconfont-yichu:before{content:"\E7C3"}.luckysheet-iconfont-chuizhihebing:before{content:"\E7C4"}.luckysheet-iconfont-wenbenfensanduiqi:before{content:"\E7C5"}.luckysheet-iconfont-zuobiankuang:before{content:"\E7C6"}.luckysheet-iconfont-fenyechakan:before{content:"\E7C7"}.luckysheet-iconfont-yunhang:before{content:"\E7C8"}.luckysheet-iconfont-lie:before{content:"\E7C9"}.luckysheet-iconfont-quanping:before{content:"\E7CA"}.luckysheet-iconfont-shaixuan:before{content:"\E7CB"}.luckysheet-iconfont-gengxin:before{content:"\E7CC"}.luckysheet-iconfont-qingchu:before{content:"\E7CD"}.luckysheet-iconfont-hang:before{content:"\E7CE"}.luckysheet-iconfont-zhushi:before{content:"\E7CF"}.luckysheet-iconfont-jian:before{content:"\E7D0"}.luckysheet-iconfont-jisuan:before{content:"\E7D1"}.luckysheet-iconfont-jia:before{content:"\E7D2"}.luckysheet-iconfont-dibuduiqi:before{content:"\E7D3"}.luckysheet-iconfont-xiangshang90:before{content:"\E7D4"}.luckysheet-iconfont-wuxuanzhuang:before{content:"\E7D5"}.luckysheet-iconfont-xianshiyincangwangge:before{content:"\E7D6"}.luckysheet-iconfont-dongjie:before{content:"\E7D7"}.luckysheet-iconfont-wenbenzuoduiqi:before{content:"\E7D8"}.luckysheet-iconfont-houtui:before{content:"\E7DA"}.luckysheet-iconfont-shuipinghebing:before{content:"\E7DB"}.luckysheet-iconfont-xiabiankuang:before{content:"\E7DC"}.luckysheet-iconfont-shezhi:before{content:"\E7DD"}.download[data-v-50d7cabc]{width:100%;float:left}.download button[data-v-50d7cabc]{color:#444;width:90px;text-align:left}.download button .svg-icon[data-v-50d7cabc]{font-size:16px;margin-right:10px}.block[data-v-50d7cabc]{position:relative;z-index:10000;top:0;background:#fff;width:100%}.block h2[data-v-50d7cabc]{font-size:14px;line-height:30px}.block h4[data-v-50d7cabc]{font-size:12px}.block .search_input[data-v-50d7cabc]{font-size:12px;margin-bottom:10px}.block .search_input label[data-v-50d7cabc]{line-height:20px}.layout[data-v-50d7cabc]{display:block;position:relative;margin:0;padding:0}.layout-middle[data-v-50d7cabc]{display:block;position:absolute;left:200px;right:0;width:calc(100% - 200px);margin:0;padding:0}.layout-middle .excel-designer[data-v-50d7cabc]{display:block;position:relative;margin:0;padding:0}.layout-right[data-v-50d7cabc]{display:block;position:absolute;top:0;left:0;padding:20px;width:200px;min-height:99.98vh;border-left:1px solid;border-color:#e8eaec;background:#fff;border-radius:4px;font-size:14px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out} \ No newline at end of file +@font-face{font-family:iconfont;src:url(/static/fonts/iconfont.ba04816.eot);src:url(/static/fonts/iconfont.ba04816.eot#iefix) format("embedded-opentype"),url("data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAACJQAAsAAAAAVKgAACH9AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCObgqBghDoEwE2AiQDgygLgVYABCAFhG0HimMbCkZ1hhxsHACQvM8iooIUIPv/vyU3hoisQDP7oxQspFSOEhyEI964SGdpHgbZQdChvkX9Xd97nQ+VaIq7d5noG8yfVj6tSWbtWNLPqLzFBpnESCbt5xn252+nSxLNW5sNpeTh+f39/481976wz7uPRtUHGDrbrw4ZrEQ+o9sQS7AOLVwR9wAYHufsX4sltIw2UGCOWN/DZAYtWnRGXhjMYFsLlBOm6ZgkU7ixOUVm3hSYSZmdcy3Ttndf4ESBU8/fv9PPcyR7254j2T+y/RCTRQgUIXDBiWYbMHXqvsls3dZt8yP9Sr8UeI/jYBECy2DQpVnHImNkw4UQi/rrnSeKbo3ABwpVbnt7MIAxZW53t9DyQ2dMry7DVAd+ALjBeSGPOIh9Xfq3yXEPE8N0ZWvf3u79xy5A2HKIRLDVxEQAD/zfm+lMLBjA+E0Di+KU9uanlEK1W7V0DFgDrXU7yJ4lXCBcov15demKDpPSOimby7C0sjnTlu3++0jcl/hgIbgcAnwn3BBuFBeEGwh8Vjk7ve+1wbkBaZxrn1Lq5im1jRnWZJnalH2IbiaZdvxjNFLYNjjuGFPLYXaXebSkr0ZxoxJ0Q5TYn78moVKvgrRuw7Z9FDmzmGDZtcsXT1M8rfKIsqS8oZTyYT6c9itRHs+EAy+Rv59+NScRhJKM+eKuC+vPAT8+K8geLvKTY47JsOvG/iMyFJATC6ijaZbsa6IgU/laM085SuVr48fXBUURyyJFWuHz/9qJHr369BswaMiwEaPGjJswaUpBkxmmzTTLbHPMNc98Cyy0yGJLLLXMciustAqEYARlstgcLo8vEIrEEqlMrlCqyA5ptDq9wWiiOkVz2mojOedguOBye+g6Dn+yRq069Ro0atKsRas27SqVq1KtQolSZUIm8j+eVMpcWg0li2DyBubHB6OHH1/08uOHPn780a+QhKGVCLQRhXZi0EEcOklAF0noJgU9pKGXDPSRhX5yMEAeShRgkCIMUYJhyjBCBYxSCWNUwTjVMEENTFILU9TBNPUwQwPM0ghzNME8zbBACyzSCku0wTLtsKIDVnXCmi5Y1w0bemBTL2zpg239sGMAdg3CniHYNwwHRuDQKBwZg2PjcGICTk3CmSk4Nw0XZuDSLFyZg2vzEGMBbizCrSW4swz3VuDBKjxagyfr8GwDsmzCiy3IsQ2vduDNLrzbgyj78OEAPh1CA0fw5Ri+ncCPU/h1BvWcQy0XUMclZLhKi1S3hrQYdRuAPLdQ4A6K3EOJByjzCBWeoIpnqOYFaniFJG8Q5x1SfECaT0jwBRG+IcoPxPiFIH8Q4h/CBNnZNvqzb/2Hgm+XX6shAPDIDn2nEKAqnKGBUOivZA4KW0gZvafr3BQtvdGQKGOXK+jxMuHo+RqAUxEBRoTkYwZwmLuk6nyIpr4UPapkojiXpKlDRMhw0F0ARQPDTMn9UPjbkHEt+m4NOCLsVWbo7ZitUp6Nl3YnrJ8iAvij7nsIRSkYT2AfwVuji87qVBm1Q5gVmYuFsYgqpu1Vy0P4b7e3HTaoWtKXAeiIq9rtbDfJnFEJ3yZ5C9vMFqQ4rUyz9jyEsVO+bind+meT82iX3uh7WLtf/mNHA48h7jF5ypzTlCQcv5ubeehZSly2XeCJ32vWw0QsABZSz1MRvFzCulXrUUotFpgPLHGctww3N2IaitXjWLBtPW/2mW0J9wozblPnTXu/syRwarVqYG2kKhiLdIG7JvyWsZA0S5cPgxEReXFY0nvhZ941sR0MJUHkFQ7CcX3kV73dn/vD9HnX4zD1iwl79nujL6+lfhIthTEg9FMWn8HG31mJYxBFRLi2SxRsAwoSjCwtLT6/QJHjxcxpyU90trhORYQlNEVoAbGpu2GbosgBG5OkOGMFEfxEaXYgF207EO8w4/rRVbtzcBw43CthsjtfCmL0OBzGXkRcHeMaT59lMFjZVw728rXpog0WMNByJpe9kcvkvWrDIJPwkHN5yI1nKJtnLIbJvJ8CpC0DZRiQThkg5CyOqcHwGnJsLMnghmXYs53/HpcMFoqT/eerkoBVBRRvYxNPHyNNQeQAMCbForbAXiTgZZUEjueAtXnoH7H9zuDi/f636fbH3VdPrdw7eOuDvyN3Drx9st7snrvX+5YNXiGOS91Vux7s+nvhzs3tVjXr8khMzBjJllUMimyapCU9KmwhxrSFdmeVw/5mgCsEvEiy8ZkC1iTTAU42MpStqBEbthqWYkhbLgMBaFuGFwUJmsImfqFKWJCxL1r8hd02vNVOgzRus/VWrCjy4oKdpn6SKxVsiIkZw6rhBYfJ0ioZ2Yyr7KrxWsTdUMmVwKlGtwrS1ultYU0lJS1djQX9BLXJhOoliVrLa2MGmSNLpp8EEYQaEbKMOzWImr1XRLBD/hlFJXG5xhnaCoujC6vDbSYgxnlndOSqiujC2Qxl22EM0UsdJhFI0OZT0U9VILjQS2YtDWPPEV0vq8QfBoKrSKAHyyJalTzpy92Iwf5WDXQ3S/2q3vzeMmwXM+YKRAR/h9PxHVkIvwFsEtzcp+DwLBJ4+XCgqUvB6/4bz4T/Pc73+xR8db87+loFX5KsNIk0O+CSUDQjKiH6L+5+++17E/2rKYc7xznuge8C/0LnW2+dDjxMwe4J6lXQf4PD6zuA0X/0TxRc2riGZNwIx/9/llacjXLVM+x//fV0X5b0Rg803Tl6ZlCLGA4ElEGzGAlFrfbrXd/hJgPp8rNuV+c1+a1er/vwe7Xu7jetCgFvHT04vKLIQFoyXtkoqm5Vf/VgZW/mmwgdUXO134d5bvrXE1+a/NVUpZ53p2sTjcnqVPtlUiRo7hHBzVpuzpDaVDNCmVqWW25HVLJeSgtSp3EcOaIllJZKSBcICf+RFv75kffh00vkrXbCrXV/bTPYWNHBp6fg1kF4dBb9z0c6O8Bb2Qg21xD9vXmtro0S8MjcP2KMGNpoenQ72E1bWkjTZVjZvmRt7mLW37vKQOMyw4vZDtO3GVuded3LdjpJXAzjlahVT9a3OoXav3vXV2/d/cOl/f7YnwY6uvl2oD7xP35241LkqBHnj92H97tjh/3xPw9eGF/Va1d0utVZdao7gzf6EvWmvRYH5rLnK+YqfX2EgUYrd2AoN80Jtw9ZarlGYyE1x52d4/fqIPUEru+NHhlOvi8J6agxKY/J4glz+UkpF7jsMZnv/i7HCrHXkhldR60gA2NqEQBm0U7RAJic1QK4pFWF9GUBqGRNBQJ8CNrihUe0miylfnEoCRxHOMClR93J2HOqhI00VPNASU9MpGFcaFgm58huxFU7jJuGt3PZ3tpDk8P1taRoP1P7aUlYIlwOG6QmCpuboJumMlQsukPbI2cFN+egEZ0/61w+XF2hXLC2Lmej40W+LYdoKBKfSVtT0swQMvpJseQMBxjI1KBqVyywFVhYMyxzwcmtM1CLYbGwWFElDpCgiiqMKEXPBlIPSwaVjUKzllM/IVLiJIlZj+jsgDuXL25S0BWnKLJORTFz2coISy7LOIkSFzhN1z68pJA0g1KqkGlkBBAUREHAtGEin+IneJbKmjRrpB/LAgto2GDJRzPoJg1fEUpAPpsztNSLYWdVoew0be76e8sCijlqVCgZ5PMKhFDDoyYb4+0bLAEVjahP/nmqqrOcsTFjGX++lJObZLTOHDQpSTQZU1S1o1/eiiYbVAELF8jkebSh/cISZioQkoInrF2ENKuGiibeiQ32kSLQjTJWs5YFMgsAFQEzw038skAXWVcEJVHAO7VZVZTUykJGxVtZ0Tl9W/opzIh4uUzZqVExcuaNHOSbxrI2Eg4uthqa52oFfWWW2Q4heSUpiH52C642GsGGhbsRFkecw7h2mgbYSvmpSEY1nXPsZg1+aV7KBf/+4iwlzyex258/q9mj2QIvHBd26NZn7uaVRmqL4OrxYcGbauMtOztwKOj3/cGAez3ZTR+lv9Hc7bQqtBMqbMacn7IsEMBh5YURAn2N5Rk7h07xS7obDn5diqFxQh6rCDk8xkjjTYkF+bAS8poqltS3pJYMhNWhBrUstOcnaBMgHJmVemgECca+aasAoYupWuHBignS9J4SwxIAP0341LMF4jSz5vc/7xPUziYygdfZwjnK5DHnAt/tfrNfpTkSEYau5xDqt9ZFyuB+v52hLC1sqE0AMwt2kkapL5b4qUpGJZ1z7CqGpv3Cz15svDXnOfox3+6FB4Mf/eNT77PwC//z+kusDbwCLURGGwlyqJxNTa0nZfoJ0bRzWMET6jFryDx0AnJCmX64NG/Quj4xeW1qYmh6anhSA7PHAwuXrgvl0bY5Q7MW2r8kWMbi9V8hsBZsCtA4rsnxRwjm4hTqYaWHBFMjXZSAtcQEAQ+eTUuG3QhyeHFzrujQftvWxv6x1eNeDPth7aUUwlIqbDO9d/L2ofCjkoiAwhlKXN9jUGNnpS3QEUNa4WYl1OeEFEDI9eEacreOypDOYV4Ny/oY9qoY6AEI8zOzwIORYbwvlvQ/HQdHIgOmYl9YT1nhKVmRLmMsR5UkjTam5TIel1mMOUGExd5CbDSTcRZ67+rFhgwIn9LsRk4bWNNK1F9nRCGOJXWqiAnRilfl2mAVHTsoWU4vApNEqosFOOBsz9+sTdTt6lRjbmYF/AU3vJ1wz98NtuV1ss5Bc8xY3bnMoJdOqZPm2m653wgTT00+cxhlwl2wpLBzWai+ZKGtZvPfcVmho0CCAM2oXxSolLg+brA5qgE4S7xUbShb1ticnbHa9TiEZdh1Nkil1WvX6sZwVyCjRiK9tOktC+zv1jxr3RrRSqHqD74YMOwk4qnoL7YZdR9qfiVlZyzlML9goAYBzJTtBA3ASvqpTkYFnXPsZoz6y96z83f7jk/sDLpf0hHYdXvXXTiad2e1q7qP9txeI316T4aZVefu9B4LaVfdK5a1BVttbXfU5mC7pjPo8IlLtpjO4DPhHfTZ2z0nx19ME+7uuh17Ex453Xc3+vjUC7ZLZyZYMy132mzohrrrVO+dqGOTApnr7z7kHw3IvrsS6V3fY5G2b6xaTMrdbqg3FJfpAxxKXFJmyU8rfG39hsnv1isdlMFQZ3ioC4xlq4qpp+QXdl/SnW/RK5yMUgnqddd6JWU4wP496D2vOq9FRxd5e72/ohCPAEKocl+TQKz1OUxMkoF0xTZFgVI2mXg1WEtaapSJPOLfwitO+aYRV1xBgyUbvU3ekV2REZ8L7SGiE1pJaNQilbIhalQhbWOerTULv14WN0VJRfLvHvps95YNy25Nu+WNZf+Qf5TvP+afrpge7N/2vff3bf7B0/0LfN+D3DzgO6wa9h2QDQY9llXyq2f9OgiNuVxjKAjlvnq4Fa1R7xGpgMzBrNAKUq5amVMgBIOJIiAAIRqsEUEERA7hJBgiELlskRauDA8YUnYhK4DoZpII7p9r1IgMZNQWDLFasJCbLSCPEzCPBY6ntt3IJ8aCAui+tKQlftx6xOLm3UYj2U9CeVmZHJ7WUtsZwhLkqeW1fm+F7n/AY16g8WoZpMx9j67AigwPadbUh/qZhsmetTqdKqga1/x73VXq+6vXpi8/uNjww5R/n4akT/GcV6Tz8sZuz50601Oa8T2mK2jFd5UUG8FGstI6IHCYFoBTYAwgLQLx6VdJnooVUbrxVVcuK1tb+nye9/VGtZ19yZ+BxyDltEDj6uq6R6/PGhm9ZuCI2+UKHE3/9z27Y/KI3Z68PBDE+KMqoiuZypC71diyfWvWsFTju19kwZ9gE64Jej6JIO0BdjKiih6ESUq/iTW0spnFlJM3+Q7pc4Q64uOcNqrNR7j6gmGwcQJZs4tqq2lH7mHg5BBCbeYXW4brrJsT1TecGRadbwbhKkF08Yvgp4P3P3D1zkfzc5Zdv/7t3ICh6TOGgr/Ly4Nvvz0c/OkLoq4woKfn0SPwYJ+zXKI4lB5vjO5SR8KqKpU4y74+N6v5webqKjYZoh3wSQvo+SGCdAQ4RO1gBuB4vQKN19trchPY8kJ6LAi7WRECd15dUHhrS/T9ApzO+jW5CjC5cjC5CjK5CjO5CtRPLnIQNhY84Mh+wi0vLZW7SdtNjrzjM+xzh7KlgVvBKmmjbCRUjWzCSoeCMRr1StxpjMKhxAtJsgLAm4eV+gajHvRPv9ULgebHfzyuf/ftNc/t0HHbWM9r33533aNKw4LdHnfvStvapNEz4SfVdzwl+9gQs2slZPhfUAiuan97rWTgRyLrECouLX5v27sh0YE+7xU/3umvLdfKcosIXTHsf+nrprCXXy0+Vj5TO/vMZtB54kATsWbc6oOLjz860Lpk51bf4uf/33x1YE7FWOXYnK2503deXWs2xtVf2ST71eof6PP+5PCf6nW+9duyS1IS4uo2H534a3+wuizq96U6cs1F4g5cEREV7Q0fFg/mXnmeNXVDL7xW/Jwgcm9MuVds/2t2eMylrN+rV56fV8IsB8UVwz3HnwqVrdpSEB2WeyOhN/yS+N+qa2/G8PKSbWt1rUllIDtkFpIfkdtKZpU0Fk0un7Xr2mIjM+KAk7Mia73fvMFOiYceOAcFQOEjMC85vtJ76e2psQ2hK6vzLysVv/eZ+z7qjGt8fv1386an13zQ5clxrZVrW71983PekhWVFszxeKuorKzoLY85BaVFsre8tlZLWVbaQ1axpmpJlcRk6q/axALWbnvxwqbYNAOik8YCML9ha2iwxZ+DqiCKexSYUOZ8p9wZv7PvV3x+EYgwRlIMhKI5kdXjFJwceAD1+2MIwV8gDmwtMcdcq12+pQTJ5S82ZVVMPfCf8r//+eA/f/+9/4P9+69fr/cC2b5Iu1Z2Le0Lg7hqStFULQg0QvnpmcEzTwefmRE848yD4QilFHuKm8UcRyjVCpbCYRo5plpiB6qqFYWmgIXNpq640FiMR1s2PmW6+9ZnMESl2MgWah/Oe1CWEGJvDki5womJVbgULRSgWhSjyDVGWiCthIMY81tYPon8/nustCuZOdB6Zb+/nxciHRIbmF1EptQHTakxydJfLace/Dic3Ji4f5lP5ptgQYHyfx9RHt8WztB/EqE14wtXdqQuBKuk809mLvPZv4pYTnxC++9YOLLj5T/vbjGbahK86/veuJHj+aZX/qIcL5dXLgis3k3NNY0jJnDK8uWr/gazqLkluUPEG/XCWjzNQ1ykUqbIVmp/889g83LBGiAKDxWs5GFjsERtIBxExzvGyLnFdhhajG6LEAgTHYVc3ixCFWBAJpaYKECZCIZCRNoJN2EnUXrL9lAEDOJA/lnFSzmH6rFQtlObGZXEvDHBu+KAo2cSI1zUdELR0qf6kIk+dALDatG43ilcPZFToFMEa8sbLgRi8TCGBC3u/YcQAlsDBKFALwiTq2zfMko8ZFAy337xhWVWVrf+n+n9jnDHxImm9bW4PfzseMJBAlLeYxCsdwg1zwACyGapSAfQQKuyVQEVrUorkl+/Ln9EEHODSjxfF/3zZL9mHXmXB7yN2NI+CMtqTAQLiFkQwwcOjyyJhj4BRRSAURrK33xTjqJrOYYltqM1HHRhkFdxTJE48CMAvoAn6QkgsAM1fia7v+U5OTT+Kw4J/rKg0508Y2UghwGGEDAAqoEVQJqHPAj949VEi4XOyJPl09NPq3BHVXcTOah0kDsBGI7L90tDubkvN2pWVXyaX36c/QySkv9QeqV6ZHko65rDawLS1gV47quT589qkt5aEZyjmyHTrp/v7bVLmuYxt6TRHw3PaV6epS+vnrYmIKJTiMhIygpV1m+gmjwy2QDPTI90j7kXPCjQ97m2z8s7ydu7L8czOmDJKqV32OJVERkHd5fVl8UtU0as7TtSOzeGlTD6mE0b7VOFKHbDQASAooCENSuqqrnQEA5HkazOne8zcn/dsuMtGoABvHZ857rakXvcXDm6FnQNyRVsHDl5XpNO5TjoaHA0OA8e9//zSD0AtIKesGAjXeaUSNMPJkQ1dEc3xJ+1SEG5897M8+upO+UtOIiemoCT1iLADEPoAtwN+sbf08lJUdeafnDLCOMzaQG5kQtaAfz1+uAgF7PxCovM2IzMPOLNmw72u1jMngEgipJSQCEFHq3UODopmthhoyuQUrFiDWR/CAsxFceov5CCUWhSMxkYJSE53uOkxgWUikXXA4UQM3NYQqDysQoVjHnTfh6SdkIlMjBSGGUG5EWTA9VgWtpa5kgYCXuPUIqGKjyThGQ/TwE3bx4jrBGLvRkKqyqKqlHyTNY1Cq1ZC7tc0GVRuaFbwCJ+cBvUOEfHgYJAAMDIIb95Fc+z8ezyVIQkc+ob53jMe9ngNSdNI6rcKhUIsruCgCpFPsh1XBBP8CdQj+OD9DVqynuLtGpdA8ybFV1xgeYTrPMggmLA4u+TGJgARqtGqWRpWlrqs/ljKru+pSV7Jchn3zIkw6v3QrMbNtUOPLYJg5c6nL69X8FK+Lm9BidOl8clzK1OmPOZVyRZulSikxRdRYPeO+BtBcV+q1y0LA6KmpkES80lCPst0kYGkR/YxQUGmyKX2w59GzNIX9KNiWa6umosZplQMzt58gyPljnIOeggfMngUgD25nxvSGw0JhrE1XsUYKmjtOQkxh/F8zxML8gfKiycDpxGAQrqveN+sWF2PWLx5IDRvSNsMzJhADkBCSPiQ/hQrRqDY0IgRtiNMx84AQKCM6REUp/+EYexbbKDPMThGDiwBpjy/0yUWVHBKNcJSZMJU7ixUGu4pUZTy+1loQjVcqIIQm3nDQiIAmIYhEYvOu98saDwik5SU9MBc3IrFtLpC9OOKoeqJM5mPHTh6P+V0GTBIegCY2Clqe1XDmUHYadatMrCxFyiAc6rAct8bie0rk7gQQJ7hHSNOm0RrC2kp0wprKit1VWMG6ej65Nki3x1votkJlWNjvZJNTWRPXR9qOwH0WG84t/0UaRVubFbZUQdiAFuF7TyVkBzWkIGeFFY69JUOmnxEc2S+AH1wyVO/OGfZMeArQF/JQ7124ZsPzr6T4PA3cjFA4hcic+GzeaHQNyuO+97SyAKkIFAwkNercYM7n0ZmsaxxvZRq6r4Wu+hvgzXtZddVykhe3b7wfqwEboyOvrolAgozY58zO7QZes02xfP8fQ8vw0x6BObGZmfXiq69JS8iBxJVaG3d5VuUogPbu6OVfmGfVUe7qVnb2T1wtSdGkcE+FDo/N40zvcniVJy4oSF1O9vrpjrWxge7DnJesHDF7T6LAISibVHT/5dV3mR1J+52EpQ4zr9wgnwk27pIJDk7BFLQ2OjIVHck6MAg0vfPFmCcfzHPI8yCgqGdLrpQLyTgbx9obsK+0T7VOHurVvlEP2EmnDJuMzgIIMYAULO5m8rHvIb+pMdKybZ5LAiXDgGNrCc6RO/oOwdZVOBTlr5EAZjC4Fsje3Fc0f8+f7SEhsY1WCIeYzwTSC+W1EQrl08L6gDQhQnLAJd8LmSWmTG7Dkr9JTX1+YBPcekF90Yv3xS7ZF1BolMb7JQ0vpy4AJldfnR+TE04UtuIbAE+9nJWykr+aoYOw2UNJ07Z5PwCdICJ8cghmcgdqIhwNJ2P+Uk5cRb4Py+Mk9cARQrQSMvp5HnOJXiTVRqPpQgUcvvJeC7oM73BUnLrOjJmJiXPEHJATAFnIIAl3OghBGIUSY9bYz3V40SylwSSfqhhGhjl3ri0w5KML/r/qzzzZsfPBj4wQR5IgcgUFfQPCVWLWY6/yIRjYxYX8i/KYTPtz7E1CGC+KZvFityPSimBsHHspyhHY4Ea9JTVlLZD/S3cXFoua08ipA2ZUl/6YTcciN018In//sI6ZPY34t++VZ2EKMXvbh+tWZgtCwUymgLeoEHDiSfcutLTGWGYH177hb9D1eSDoC6g7nt+hB9mal0zcqQ8+dCVq4pZctvNuZQrpd3KjideBrUncm5joMNWWzkTp07HxJu2Lm3p7b+9yXhP6X9FL7k9wW1Vm5nJbNzX0D1xaE/pv0YuviPytqjezuiHvjnJFjioyGWhCnycpOIqFmzPw935F/u7KGiefzHU7PJsJIxm+oLT7vuSxDvhJvm4GU9WsmJXFwT91wVz0WxqN/4InyKPED28Oa45TfEK4vofywig9ELs37TZzIS6AFW0asBfD+Bl0ZluWtLMF5aQJPOiB5dUaw0kSuj06yKkjiPuEpYgkQyAzq9NTpoagqOtUVJmbcmPuwai9Rk+jxaZTzF58ZSHszNJBzv974QWFRdsirDUVzZbJejLnPestqahDO4su66JTY1DQfc0PEtgYeLf+LO0PVAoKypqWLhaVqr/iFb1GUViByfHX3/7fvb2PvoWTo3W/a/V+Xg24gY4h2eoXLtG0v8J6/Q5G7/4/1fXs4MXclf/tr4v9BUxr8SWIOEK6nfoKEGKi/dFKG70Q9dS1sSqyTlHs/eHcr0uDPlhpncVXCXqDLPXarcSnelKRvfvEqTO3gpr8CkJzbupN4H7lDrIzGjmbLA5K7v3SVa/e4uVZ883JUOpKYWq4ymqZdX44QQscublFMr3Kszrq4L/6DVASY3Ry75j1OgGXldVLdzv5FxYtEg/NpzjH3eT3LNvzZbhsMg+TiJxzYWLsbxsyx72g4UrVyfVuOEELHLm2QPS61wf/dx5fvif9DqAFOE7uuw/3EK9OTzuqgSMN8CJ9LlRRt+7TmiSJ/jpSe55l8ogsNlluQjfU0e21i4DOr4WSKrPqlQlE+vsuVRUGm+/hVMTlQgRUyquPCfLBIhKf+ocWTNAUSYUMaFVNpY54MwipM0y4uyqpu264dxmpd124/zup/3+0EIRlDmNyA7zeHy+AKhSCyRyuQKpUr956J3Sac3GE1mi9Vmdzhdbo/Xd4mu7CdgT7jsIBHfNOnxK5LwGpg7Is2O1qchGwKJtOpx7UkHYDNqFLareKlGvW6jB2wxqHTEdjk7Be5A6lUS9ZsmUTRrgTrgs4kUIS66zKjoYP0eJdZv9oBrk6h1Wi+CQ7YPrTeMdFFwNAS8vxHbMDU4oEdA9uGO3CAHE3tOsF34nyjNUQecB6TjXuTg9CRvZ6qinGiE7PdBrJzfbN+OHZRCH9XKaNUE0bvSGKvADWWp1UQW30lsgHXsnAQccMkB0Mm6jIjXmOYSR8tIBa0TtscZhSXwRiR01h0pa+q/xjnzhCOxPb3zvCsK95kGEzJmqYuu75oc34nPZETBkHtIT9WQvc4F5XRKN3pvO5Y/BBGL5ozyoVk98es6kBqNubiJOhLw6hGcIPio7iEyAqVNzXS4aUEBKJlmLQRtCozmvHli7F653tyaWBGHzbaolSJOwZZ4V0tFTKACGXekU6Bqm7QAed+iww8VFkX58zAzHFucbafUNjil+sP34TuWxtYKfmG7SBJFHZlAEMLiog9RNjRveXWXDVCP7ECWFoMjFSqYBqRVLiHLawKexYYOm9Up8DYOiS+8LyU406BGKXjmLXDgnszuGReg5dDtPO8bmeVfeB/4ZIth3LFCerstGoCr/aDNrFJvUtISUq8D4aJz4P79C+bBzKI4cTZp+Ld4QTOPH5WMp3CILztqe8OmOVMfVdw1NR7DqGs8k5RtPlQ2hmWME41Ku0b3VBbyKBqcBcHh7OgJAAAA") format("woff2"),url(/static/fonts/iconfont.cf8ecfd.woff) format("woff"),url(/static/fonts/iconfont.111271f.ttf) format("truetype"),url(/static/img/iconfont.c6ec5b6.svg#iconfont) format("svg")}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.luckysheet-iconfont-lianjie:before{content:"\E7F8"}.luckysheet-iconfont-dayinquyu:before{content:"\E7F5"}.luckysheet-iconfont-dayinyemianpeizhi:before{content:"\E7F6"}.luckysheet-iconfont-dayinbiaoti:before{content:"\E7F7"}.luckysheet-iconfont-fenyeyulan:before{content:"\E7F2"}.luckysheet-iconfont-putong:before{content:"\E7F3"}.luckysheet-iconfont-yemianbuju:before{content:"\E7F4"}.luckysheet-iconfont-biaogesuoding:before{content:"\E7EE"}.luckysheet-iconfont-zhuandao1:before{content:"\E7F1"}.luckysheet-iconfont-youjiantou:before{content:"\E7ED"}.luckysheet-iconfont-caidan2:before{content:"\E7EF"}.luckysheet-iconfont-tihuan:before{content:"\E7F0"}.luckysheet-iconfont-dongjie1:before{content:"\E7E1"}.luckysheet-iconfont-jian1:before{content:"\E7E2"}.luckysheet-iconfont-jia1:before{content:"\E7E3"}.luckysheet-iconfont-yichu1:before{content:"\E7E4"}.luckysheet-iconfont-shengxu1:before{content:"\E7E5"}.luckysheet-iconfont-neikuangxian:before{content:"\E7E6"}.luckysheet-iconfont-qingchushaixuan:before{content:"\E7E7"}.luckysheet-iconfont-wenbenxiangshang:before{content:"\E7E8"}.luckysheet-iconfont-jiangxu1:before{content:"\E7E9"}.luckysheet-iconfont-neikuanghengxian:before{content:"\E7EA"}.luckysheet-iconfont-neikuangshuxian:before{content:"\E7EB"}.luckysheet-iconfont-zidingyipaixu:before{content:"\E7EC"}.luckysheet-iconfont-logo2:before{content:"\E7DF"}.luckysheet-iconfont-logo:before{content:"\E7E0"}.luckysheet-iconfont-wenbenqingxie1:before{content:"\E7DE"}.luckysheet-iconfont-jiacu:before{content:"\E7D9"}.luckysheet-iconfont-sousuo:before{content:"\E78A"}.luckysheet-iconfont-guanbi:before{content:"\E78B"}.luckysheet-iconfont-xiayige:before{content:"\E78C"}.luckysheet-iconfont-xiala:before{content:"\E78D"}.luckysheet-iconfont-wenbenyanse:before{content:"\E78E"}.luckysheet-iconfont-shangyige:before{content:"\E78F"}.luckysheet-iconfont-shujutoushi:before{content:"\E790"}.luckysheet-iconfont-tianchong:before{content:"\E791"}.luckysheet-iconfont-zengjiaxiaoshuwei:before{content:"\E792"}.luckysheet-iconfont-bianji2:before{content:"\E793"}.luckysheet-iconfont-jieping:before{content:"\E794"}.luckysheet-iconfont-jianxiaoxiaoshuwei:before{content:"\E796"}.luckysheet-iconfont-caidan:before{content:"\E797"}.luckysheet-iconfont-shujuku:before{content:"\E798"}.luckysheet-iconfont-wubiankuang:before{content:"\E799"}.luckysheet-iconfont-bianji:before{content:"\E79A"}.luckysheet-iconfont-qingchuyangshi:before{content:"\E79B"}.luckysheet-iconfont-shanchu:before{content:"\E79C"}.luckysheet-iconfont-wenbenjuzhongduiqi:before{content:"\E79D"}.luckysheet-iconfont-dayin:before{content:"\E79E"}.luckysheet-iconfont-wenbenfenge:before{content:"\E79F"}.luckysheet-iconfont-hanshu:before{content:"\E7A0"}.luckysheet-iconfont-jiangxu:before{content:"\E7A1"}.luckysheet-iconfont-dingbuduiqi:before{content:"\E7A2"}.luckysheet-iconfont-tupian:before{content:"\E7A3"}.luckysheet-iconfont-xiangxia90:before{content:"\E7A4"}.luckysheet-iconfont-shupaiwenzi:before{content:"\E7A5"}.luckysheet-iconfont-quanjiabiankuang:before{content:"\E7A6"}.luckysheet-iconfont-shengxu:before{content:"\E7A7"}.luckysheet-iconfont-caijian:before{content:"\E7A8"}.luckysheet-iconfont-jine:before{content:"\E7A9"}.luckysheet-iconfont-caidan1:before{content:"\E7AA"}.luckysheet-iconfont-quxiaohebing:before{content:"\E7AB"}.luckysheet-iconfont-wenbenxiahuaxian:before{content:"\E7AC"}.luckysheet-iconfont-shangbiankuang:before{content:"\E7AD"}.luckysheet-iconfont-dingwei:before{content:"\E7AE"}.luckysheet-iconfont-sizhoujiabiankuang:before{content:"\E7AF"}.luckysheet-iconfont-cebianlanshouqi:before{content:"\E7B0"}.luckysheet-iconfont-hebing:before{content:"\E7B1"}.luckysheet-iconfont-xiangshangqingxie:before{content:"\E7B2"}.luckysheet-iconfont-shuipingduiqi:before{content:"\E7B3"}.luckysheet-iconfont-wenbenshanchuxian:before{content:"\E7B4"}.luckysheet-iconfont-wenbenyouduiqi:before{content:"\E7B5"}.luckysheet-iconfont-qianjin:before{content:"\E7B6"}.luckysheet-iconfont-tubiao:before{content:"\E7B7"}.luckysheet-iconfont-youbiankuang:before{content:"\E7B8"}.luckysheet-iconfont-baifenhao:before{content:"\E7B9"}.luckysheet-iconfont-geshishua:before{content:"\E7BA"}.luckysheet-iconfont-baocun:before{content:"\E7BB"}.luckysheet-iconfont-shujuyanzheng:before{content:"\E7BC"}.luckysheet-iconfont-jieduan:before{content:"\E7BD"}.luckysheet-iconfont-geshitiaojian:before{content:"\E7BE"}.luckysheet-iconfont-zidonghuanhang:before{content:"\E7BF"}.luckysheet-iconfont-cebianlanzhankai:before{content:"\E7C0"}.luckysheet-iconfont-shaixuan2:before{content:"\E7C1"}.luckysheet-iconfont-xiangxiaqingxie:before{content:"\E7C2"}.luckysheet-iconfont-yichu:before{content:"\E7C3"}.luckysheet-iconfont-chuizhihebing:before{content:"\E7C4"}.luckysheet-iconfont-wenbenfensanduiqi:before{content:"\E7C5"}.luckysheet-iconfont-zuobiankuang:before{content:"\E7C6"}.luckysheet-iconfont-fenyechakan:before{content:"\E7C7"}.luckysheet-iconfont-yunhang:before{content:"\E7C8"}.luckysheet-iconfont-lie:before{content:"\E7C9"}.luckysheet-iconfont-quanping:before{content:"\E7CA"}.luckysheet-iconfont-shaixuan:before{content:"\E7CB"}.luckysheet-iconfont-gengxin:before{content:"\E7CC"}.luckysheet-iconfont-qingchu:before{content:"\E7CD"}.luckysheet-iconfont-hang:before{content:"\E7CE"}.luckysheet-iconfont-zhushi:before{content:"\E7CF"}.luckysheet-iconfont-jian:before{content:"\E7D0"}.luckysheet-iconfont-jisuan:before{content:"\E7D1"}.luckysheet-iconfont-jia:before{content:"\E7D2"}.luckysheet-iconfont-dibuduiqi:before{content:"\E7D3"}.luckysheet-iconfont-xiangshang90:before{content:"\E7D4"}.luckysheet-iconfont-wuxuanzhuang:before{content:"\E7D5"}.luckysheet-iconfont-xianshiyincangwangge:before{content:"\E7D6"}.luckysheet-iconfont-dongjie:before{content:"\E7D7"}.luckysheet-iconfont-wenbenzuoduiqi:before{content:"\E7D8"}.luckysheet-iconfont-houtui:before{content:"\E7DA"}.luckysheet-iconfont-shuipinghebing:before{content:"\E7DB"}.luckysheet-iconfont-xiabiankuang:before{content:"\E7DC"}.luckysheet-iconfont-shezhi:before{content:"\E7DD"}.download[data-v-50d7cabc]{width:100%;float:left}.download button[data-v-50d7cabc]{color:#444;width:90px;text-align:left}.download button .svg-icon[data-v-50d7cabc]{font-size:16px;margin-right:10px}.block[data-v-50d7cabc]{position:relative;z-index:10000;top:0;background:#fff;width:100%}.block h2[data-v-50d7cabc]{font-size:14px;line-height:30px}.block h4[data-v-50d7cabc]{font-size:12px}.block .search_input[data-v-50d7cabc]{font-size:12px;margin-bottom:10px}.block .search_input label[data-v-50d7cabc]{line-height:20px}.layout[data-v-50d7cabc]{display:block;position:relative;margin:0;padding:0}.layout-middle[data-v-50d7cabc]{display:block;position:absolute;left:200px;right:0;width:calc(100% - 200px);margin:0;padding:0}.layout-middle .excel-designer[data-v-50d7cabc]{display:block;position:relative;margin:0;padding:0}.layout-right[data-v-50d7cabc]{display:block;position:absolute;top:0;left:0;padding:20px;width:200px;min-height:99.98vh;border-left:1px solid;border-color:#e8eaec;background:#fff;border-radius:4px;font-size:14px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-5ad2.ed5a813c.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-5ad2.ed5a813c.css index d8087c240..d8df0a18c 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-5ad2.ed5a813c.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-5ad2.ed5a813c.css @@ -1 +1 @@ -.imagebox[data-v-92e12b86],.text[data-v-6b04e136],.text[data-v-6da4b633],.text[data-v-ed2d4c6e],a[data-v-6ebd3276]{width:100%;height:100%;overflow:hidden}.imagebox img[data-v-92e12b86]{width:100%;height:100%}.startImg[data-v-92e12b86]{-webkit-animation:turn-data-v-92e12b86 1s linear infinite;animation:turn-data-v-92e12b86 1s linear infinite}@-webkit-keyframes turn-data-v-92e12b86{0%{-webkit-transform:rotate(0deg)}25%{-webkit-transform:rotate(90deg)}50%{-webkit-transform:rotate(180deg)}75%{-webkit-transform:rotate(270deg)}to{-webkit-transform:rotate(1turn)}}@keyframes turn-data-v-92e12b86{0%{-webkit-transform:rotate(0deg)}25%{-webkit-transform:rotate(90deg)}50%{-webkit-transform:rotate(180deg)}75%{-webkit-transform:rotate(270deg)}to{-webkit-transform:rotate(1turn)}}.slideBox[data-v-27e113c0]{width:450px;height:230px;overflow:hidden;position:relative}.slideBox .hd[data-v-27e113c0]{height:15px;overflow:hidden;position:absolute;right:5px;bottom:5px;z-index:1}.slideBox .hd ul[data-v-27e113c0]{overflow:hidden;zoom:1;float:left}.slideBox .hd ul li[data-v-27e113c0]{float:left;margin-right:2px;width:15px;height:15px;line-height:14px;text-align:center;background:#fff;cursor:pointer}.slideBox .hd ul li.on[data-v-27e113c0]{background:red;color:#fff}.slideBox .bd[data-v-27e113c0]{position:relative;height:100%;z-index:0}.slideBox .bd li[data-v-27e113c0]{zoom:1;vertical-align:middle}.slideBox .bd img[data-v-27e113c0]{width:450px;height:230px;display:block}.slideBox .next[data-v-27e113c0],.slideBox .prev[data-v-27e113c0]{position:absolute;left:3%;top:50%;margin-top:-25px;display:block;width:32px;height:40px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOsAAAAgCAMAAADE+3+QAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkYyNjE4RUVDRjgxMTFFMjk1ODhDQkIzNDg3MjdGNUEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkYyNjE4RUZDRjgxMTFFMjk1ODhDQkIzNDg3MjdGNUEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyRjI2MThFQ0NGODExMUUyOTU4OENCQjM0ODcyN0Y1QSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyRjI2MThFRENGODExMUUyOTU4OENCQjM0ODcyN0Y1QSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PmLDzTcAAAAJUExURcHBwf///////wCiYf4AAAADdFJOU///ANfKDUEAAACjSURBVHja5JnRDUQhDMNM9h/6STfCgeKPsIBjhGgpnHPy7wLyYLUicC5IPJGtJfi5ngsSL1Q7AYgsW8QTV7YJJ6psFU1M2S6YiLJlLPFk21CiydaRaOT+7mKxhYOERDcuCBy+cheiJHBqHEYGqZzPug6d4aG7aajmDPUSQz3iUO8/9KYbeqsPzWCGZmtDM9OhWfjSH8fY31UuSMkT2UqET4ABAHo9NyVXKF5RAAAAAElFTkSuQmCC) -110px 5px no-repeat;filter:alpha(opacity=50);opacity:.5}.slideBox .next[data-v-27e113c0]{left:auto;right:3%;background-position:8px 5px}.slideBox .next[data-v-27e113c0]:hover,.slideBox .prev[data-v-27e113c0]:hover{filter:alpha(opacity=100);opacity:1}.slideBox .nextStop[data-v-27e113c0],.slideBox .prevStop[data-v-27e113c0]{display:none}.container[data-v-2d27c298]{width:100%;height:100%}video[data-v-2d27c298]{width:100%;height:100%;display:block}iframe[data-v-537c80f2]{width:100%;height:100%;border:none}.echarts[data-v-0f247c08],.echarts[data-v-2dcc2436],.echarts[data-v-3fe2ff9e],.echarts[data-v-6d3f1fb2],.echarts[data-v-0800a9a0],.echarts[data-v-a83b2528],.echarts[data-v-b6bc8966],.echarts[data-v-c05cc2de]{width:100%;height:100%;overflow:hidden}.txtScroll-top[data-v-ff48be56]{overflow:hidden;position:relative}.title[data-v-ff48be56]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;width:100%}.title>div[data-v-ff48be56]{height:50px;line-height:50px;width:100%}.txtScroll-top .bd[data-v-ff48be56]{width:100%}.txtScroll-top .infoList li[data-v-ff48be56]{height:50px;line-height:50px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.txtScroll-top .infoList li>div[data-v-ff48be56]{width:100%}.echartMap[data-v-63da0746]{width:100%;height:100%}.echarts[data-v-63da0746],.echarts[data-v-6988e2c9]{width:100%;height:100%;overflow:hidden}.echartMap[data-v-82db8fb2]{width:100%;height:100%}.echarts[data-v-0a794445],.echarts[data-v-3ae5e8e1],.echarts[data-v-7b252c5b],.echarts[data-v-15a4a600],.echarts[data-v-38f574cf],.echarts[data-v-82db8fb2],.echarts[data-v-491b0d10],.echarts[data-v-72490f16]{width:100%;height:100%;overflow:hidden}.vue-draggalbe[data-v-7ff527a0]{position:absolute}.widget-active[data-v-7ff527a0]{cursor:move;border:1px dashed #09f;background-color:rgba(115,170,229,.5)}.avue-draggable[data-v-7ff527a0]{padding:0!important}[data-v-173d22f8] .el-color-picker--mini,[data-v-173d22f8] .el-color-picker--mini .el-color-picker__trigger{width:23px;height:23px}.app-breadcrumb.el-breadcrumb[data-v-23d4be90]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-23d4be90]{color:#97a8be;cursor:text}.color-box .title[data-v-c536ad68]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}[data-v-c536ad68] .el-table,[data-v-c536ad68] .el-table__expanded-cell,[data-v-c536ad68] .el-table th,[data-v-c536ad68] .el-table tr{background-color:transparent!important;color:#859094!important}[data-v-c536ad68] .el-table td,[data-v-c536ad68] .el-table th.is-leaf{border-bottom:none;line-height:26px}[data-v-c536ad68] .el-table tbody tr:hover>td{background-color:#263445!important}[data-v-c536ad68] .el-table:before{height:0}[data-v-c536ad68] .el-color-picker--mini,[data-v-c536ad68] .el-color-picker--mini .el-color-picker__trigger{width:23px;height:23px}[data-v-c536ad68] .el-dialog{background:#1b1e25}[data-v-c536ad68] .el-dialog .el-dialog__title{color:#fff}.color-box[data-v-c536ad68]{display:inline-block;width:20px;height:20px;border-radius:5px}.editor[data-v-c536ad68]{color:#409eff;cursor:pointer}[data-v-97db715e] ::-webkit-scrollbar-track-piece{background-color:transparent}[data-v-97db715e] .el-table__body-wrapper::-webkit-scrollbar{width:0;height:8px}[data-v-97db715e] .el-table__body-wrapper::-webkit-scrollbar-thumb{border-radius:5px;background-color:rgba(144,146,152,.3)}[data-v-97db715e] .el-table,[data-v-97db715e] .el-table__expanded-cell,[data-v-97db715e] .el-table th,[data-v-97db715e] .el-table tr{background-color:transparent!important;color:#859094!important;font-size:12px!important}[data-v-97db715e] .el-table td,[data-v-97db715e] .el-table th.is-leaf{border-bottom:none;line-height:26px}[data-v-97db715e] .el-table tbody tr:hover,[data-v-97db715e] .el-table tbody tr:hover>td{background-color:#263445!important}[data-v-97db715e] .el-table:before{height:0}.button-group .el-button[data-v-97db715e]{padding:0}.file[data-v-d60745ec]{position:absolute;width:100%;padding:100%;right:0;top:0;opacity:0}[data-v-d60745ec] .el-input-group__append,[data-v-d60745ec] .el-input-group__prepend{padding:0 10px!important;overflow:hidden}.iconfont[data-v-d60745ec]{font-size:12px}[data-v-4415959e] .el-form-item{margin-bottom:5px}[data-v-4415959e] .el-form-item__label{font-size:12px;color:#fff}.code-mirror[data-v-4415959e]{width:100%;height:100%!important}.el-collapse[data-v-4415959e]{border-top:none;border-bottom:none}[data-v-4415959e] .el-collapse-item__header{height:40px;line-height:40px;background:transparent;color:#bcc9d4;font-weight:300;font-size:12px;border-color:#282e3a}[data-v-4415959e] .el-collapse-item__wrap{background:transparent;border:none}[data-v-4415959e] .el-collapse-item__content{padding-bottom:0}.contentmenu[data-v-76c3e416]{width:160px;position:fixed;z-index:99999;list-style:none;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.1);box-shadow:0 2px 6px rgba(0,0,0,.1);padding:0;background:#27343e;color:#bcc9d4}.contentmenu .contentmenu__item[data-v-76c3e416]{z-index:10000;list-style:none;padding:8px 12px;cursor:pointer;position:relative;font-size:12px}.contentmenu .iconfont[data-v-76c3e416]{font-size:12px}.mr10[data-v-8c5c65fc]{margin-right:10px}.ml20[data-v-8c5c65fc]{margin-left:20px}.border-right[data-v-8c5c65fc]{border-right:1px solid #273b4d}.border-left[data-v-8c5c65fc]{border-left:1px solid #273b4d}.el-icon-arrow-down[data-v-8c5c65fc]{font-size:10px}.is-active[data-v-8c5c65fc]{background:#31455d!important;color:#bfcbd9!important}.layout[data-v-8c5c65fc]{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;overflow:hidden}.layout .layout-left[data-v-8c5c65fc],.layout[data-v-8c5c65fc]{height:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.layout .layout-left[data-v-8c5c65fc]{display:inline-block;border:0;background-color:#263445}.layout .layout-left .tools-item[data-v-8c5c65fc]{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;width:100%;height:48px;-ms-flex-align:center;align-items:center;-webkit-box-align:center;padding:0 6px;cursor:pointer;font-size:12px;margin-bottom:1px}.layout .layout-left .tools-item .tools-item-icon[data-v-8c5c65fc]{color:#409eff;margin-right:10px;width:53px;height:30px;line-height:30px;text-align:center;display:block;border:1px solid #3a4659;background:#282a30}.layout .layout-left-fold[data-v-8c5c65fc]{display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;font-size:12px;overflow:hidden;background-color:#242a30;cursor:pointer;padding-top:26%}.layout .layout-left-fold i[data-v-8c5c65fc]{font-size:18px;width:18px;height:23px;margin-left:0;color:#bfcbd9}.layout .layout-middle[data-v-8c5c65fc]{position:relative;height:100%;background-color:#242a30;box-sizing:border-box;-webkit-box-sizing:border-box;border:1px solid #242a30;-webkit-box-align:center;-ms-flex-align:center;align-items:center;vertical-align:middle;text-align:center}.layout .layout-middle .top-button[data-v-8c5c65fc]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;height:40px;line-height:40px;margin-left:9px}.layout .layout-middle .top-button .btn[data-v-8c5c65fc]{color:#788994;width:55px;text-align:center;display:block;cursor:pointer}.layout .layout-middle .top-button .btn .el-icon-arrow-down[data-v-8c5c65fc]{transform:rotate(0deg);-ms-transform:rotate(0deg);-moz-transform:rotate(0deg);-webkit-transform:rotate(0deg);-o-transform:rotate(0deg);-webkit-transition:all .4s ease-in-out;transition:all .4s ease-in-out}.layout .layout-middle .top-button .btn[data-v-8c5c65fc]:hover{background:#191d22}.layout .layout-middle .top-button .btn:hover .el-icon-arrow-down[data-v-8c5c65fc]{transform:rotate(180deg);-ms-transform:rotate(180deg);-moz-transform:rotate(180deg);-webkit-transform:rotate(180deg);-o-transform:rotate(180deg);-webkit-transition:all .4s ease-in-out;transition:all .4s ease-in-out}.layout .layout-middle .workbench-container[data-v-8c5c65fc]{position:relative;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0}.layout .layout-middle .workbench-container .vueRuler[data-v-8c5c65fc]{width:100%;padding:18px 0 0 18px}.layout .layout-middle .workbench-container .workbench[data-v-8c5c65fc]{background-color:#1e1e1e;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transform-origin:0 0;transform-origin:0 0;margin:0;padding:0}.layout .layout-middle .workbench-container .bg-grid[data-v-8c5c65fc]{position:absolute;top:0;left:0;width:100%;height:100%;background-size:30px 30px,30px 30px;background-image:linear-gradient(hsla(0,0%,100%,.1) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.1) 1px,transparent 0)}.layout .layout-middle .bottom-text[data-v-8c5c65fc]{width:100%;color:#a0a0a0;font-size:16px;position:absolute;bottom:20px}.layout .layout-right[data-v-8c5c65fc]{display:inline-block;height:100%}.layout[data-v-8c5c65fc] .el-tabs--border-card{border:0}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__header .el-tabs__nav .el-tabs__item{background-color:#242f3b;border:0}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__header .el-tabs__nav .el-tabs__item.is-active{background-color:#31455d}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content{background-color:#242a30;height:calc(100vh - 39px);overflow-x:hidden;overflow-y:auto}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content .el-tab-pane{color:#bfcbd9}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar{width:5px;height:14px}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-thumb,.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-track{border-radius:1px;border:0 solid transparent}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-track-piece{background:#29405c;-webkit-border-radius:7px}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-track{-webkit-box-shadow:1px 1px 5px rgba(116,148,170,.5) inset;box-shadow:inset 1px 1px 5px rgba(116,148,170,.5)}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-thumb{min-height:20px;background-clip:content-box;-webkit-box-shadow:0 0 0 5px rgba(116,148,170,.5) inset;box-shadow:inset 0 0 0 5px rgba(116,148,170,.5)}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-corner{background:transparent}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-thumb:horizontal,.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-thumb:vertical{background-color:#00113a;-webkit-border-radius:7px}li[data-v-8c5c65fc],ul[data-v-8c5c65fc]{list-style:none;margin:0;padding:0}.nav[data-v-8c5c65fc]{width:40px;padding:0;list-style:none;zoom:1}.nav[data-v-8c5c65fc]:after,.nav[data-v-8c5c65fc]:before{content:"";display:table}.nav[data-v-8c5c65fc]:after{clear:both}.nav>li[data-v-8c5c65fc]{width:55px;text-align:left;position:relative}.nav>li a[data-v-8c5c65fc]{float:left;padding:12px 30px;color:#999;font:700 12px;text-decoration:none}.nav>li[data-v-8c5c65fc]:hover{color:#788994}.nav>li ul[data-v-8c5c65fc]{visibility:hidden;position:absolute;z-index:1000;list-style:none;left:0;padding:0;background-color:#242a30;opacity:0;_margin:0;width:120px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.nav>li:hover>ul[data-v-8c5c65fc]{opacity:1;visibility:visible;margin:0}.nav>li:hover>ul li[data-v-8c5c65fc]:hover{background-color:#191d22}.nav ul li[data-v-8c5c65fc]{float:left;display:block;border:0;width:100%;font-size:12px}.nav ul a[data-v-8c5c65fc]{padding:10px;width:100%;display:block;float:none;height:120px;border:1px solid #30445c;background-color:#191d22;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.nav ul a[data-v-8c5c65fc]:hover{border:1px solid #3c5e88}.nav ul li:first-child>a[data-v-8c5c65fc]:hover:before{border-bottom-color:#04acec}.nav ul ul[data-v-8c5c65fc]{top:0;left:120px;width:400px;height:300px;overflow:auto;padding:10px;_margin:0}.nav ul ul li[data-v-8c5c65fc]{width:120px;height:120px;margin-right:3px;display:block;float:left}.nav .item[data-v-8c5c65fc]{padding:5px}[data-v-8c5c65fc] .vue-ruler-h,[data-v-8c5c65fc] .vue-ruler-v{opacity:.3} \ No newline at end of file +.imagebox[data-v-92e12b86],.text[data-v-6b04e136],.text[data-v-6da4b633],.text[data-v-ed2d4c6e],a[data-v-6ebd3276]{width:100%;height:100%;overflow:hidden}.imagebox img[data-v-92e12b86]{width:100%;height:100%}.startImg[data-v-92e12b86]{-webkit-animation:turn-data-v-92e12b86 1s linear infinite;animation:turn-data-v-92e12b86 1s linear infinite}@-webkit-keyframes turn-data-v-92e12b86{0%{-webkit-transform:rotate(0deg)}25%{-webkit-transform:rotate(90deg)}50%{-webkit-transform:rotate(180deg)}75%{-webkit-transform:rotate(270deg)}to{-webkit-transform:rotate(1turn)}}@keyframes turn-data-v-92e12b86{0%{-webkit-transform:rotate(0deg)}25%{-webkit-transform:rotate(90deg)}50%{-webkit-transform:rotate(180deg)}75%{-webkit-transform:rotate(270deg)}to{-webkit-transform:rotate(1turn)}}.slideBox[data-v-27e113c0]{width:450px;height:230px;overflow:hidden;position:relative}.slideBox .hd[data-v-27e113c0]{height:15px;overflow:hidden;position:absolute;right:5px;bottom:5px;z-index:1}.slideBox .hd ul[data-v-27e113c0]{overflow:hidden;zoom:1;float:left}.slideBox .hd ul li[data-v-27e113c0]{float:left;margin-right:2px;width:15px;height:15px;line-height:14px;text-align:center;background:#fff;cursor:pointer}.slideBox .hd ul li.on[data-v-27e113c0]{background:red;color:#fff}.slideBox .bd[data-v-27e113c0]{position:relative;height:100%;z-index:0}.slideBox .bd li[data-v-27e113c0]{zoom:1;vertical-align:middle}.slideBox .bd img[data-v-27e113c0]{width:450px;height:230px;display:block}.slideBox .next[data-v-27e113c0],.slideBox .prev[data-v-27e113c0]{position:absolute;left:3%;top:50%;margin-top:-25px;display:block;width:32px;height:40px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOsAAAAgCAMAAADE+3+QAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkYyNjE4RUVDRjgxMTFFMjk1ODhDQkIzNDg3MjdGNUEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkYyNjE4RUZDRjgxMTFFMjk1ODhDQkIzNDg3MjdGNUEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyRjI2MThFQ0NGODExMUUyOTU4OENCQjM0ODcyN0Y1QSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyRjI2MThFRENGODExMUUyOTU4OENCQjM0ODcyN0Y1QSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PmLDzTcAAAAJUExURcHBwf///////wCiYf4AAAADdFJOU///ANfKDUEAAACjSURBVHja5JnRDUQhDMNM9h/6STfCgeKPsIBjhGgpnHPy7wLyYLUicC5IPJGtJfi5ngsSL1Q7AYgsW8QTV7YJJ6psFU1M2S6YiLJlLPFk21CiydaRaOT+7mKxhYOERDcuCBy+cheiJHBqHEYGqZzPug6d4aG7aajmDPUSQz3iUO8/9KYbeqsPzWCGZmtDM9OhWfjSH8fY31UuSMkT2UqET4ABAHo9NyVXKF5RAAAAAElFTkSuQmCC) -110px 5px no-repeat;filter:alpha(opacity=50);opacity:.5}.slideBox .next[data-v-27e113c0]{left:auto;right:3%;background-position:8px 5px}.slideBox .next[data-v-27e113c0]:hover,.slideBox .prev[data-v-27e113c0]:hover{filter:alpha(opacity=100);opacity:1}.slideBox .nextStop[data-v-27e113c0],.slideBox .prevStop[data-v-27e113c0]{display:none}.container[data-v-2d27c298]{width:100%;height:100%}video[data-v-2d27c298]{width:100%;height:100%;display:block}iframe[data-v-537c80f2]{width:100%;height:100%;border:none}.echarts[data-v-0f247c08],.echarts[data-v-2dcc2436],.echarts[data-v-3fe2ff9e],.echarts[data-v-6d3f1fb2],.echarts[data-v-0800a9a0],.echarts[data-v-a83b2528],.echarts[data-v-b6bc8966],.echarts[data-v-c05cc2de]{width:100%;height:100%;overflow:hidden}.txtScroll-top[data-v-ff48be56]{overflow:hidden;position:relative}.title[data-v-ff48be56]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;width:100%}.title>div[data-v-ff48be56]{height:50px;line-height:50px;width:100%}.txtScroll-top .bd[data-v-ff48be56]{width:100%}.txtScroll-top .infoList li[data-v-ff48be56]{height:50px;line-height:50px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.txtScroll-top .infoList li>div[data-v-ff48be56]{width:100%}.echartMap[data-v-63da0746]{width:100%;height:100%}.echarts[data-v-63da0746],.echarts[data-v-6988e2c9]{width:100%;height:100%;overflow:hidden}.echartMap[data-v-82db8fb2]{width:100%;height:100%}.echarts[data-v-0a794445],.echarts[data-v-3ae5e8e1],.echarts[data-v-7b252c5b],.echarts[data-v-15a4a600],.echarts[data-v-38f574cf],.echarts[data-v-82db8fb2],.echarts[data-v-491b0d10],.echarts[data-v-72490f16]{width:100%;height:100%;overflow:hidden}.vue-draggalbe[data-v-7ff527a0]{position:absolute}.widget-active[data-v-7ff527a0]{cursor:move;border:1px dashed #09f;background-color:rgba(115,170,229,.5)}.avue-draggable[data-v-7ff527a0]{padding:0!important}[data-v-173d22f8] .el-color-picker--mini,[data-v-173d22f8] .el-color-picker--mini .el-color-picker__trigger{width:23px;height:23px}.app-breadcrumb.el-breadcrumb[data-v-23d4be90]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-23d4be90]{color:#97a8be;cursor:text}.color-box .title[data-v-c536ad68]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}[data-v-c536ad68] .el-table,[data-v-c536ad68] .el-table__expanded-cell,[data-v-c536ad68] .el-table th,[data-v-c536ad68] .el-table tr{background-color:transparent!important;color:#859094!important}[data-v-c536ad68] .el-table td,[data-v-c536ad68] .el-table th.is-leaf{border-bottom:none;line-height:26px}[data-v-c536ad68] .el-table tbody tr:hover>td{background-color:#263445!important}[data-v-c536ad68] .el-table:before{height:0}[data-v-c536ad68] .el-color-picker--mini,[data-v-c536ad68] .el-color-picker--mini .el-color-picker__trigger{width:23px;height:23px}[data-v-c536ad68] .el-dialog{background:#1b1e25}[data-v-c536ad68] .el-dialog .el-dialog__title{color:#fff}.color-box[data-v-c536ad68]{display:inline-block;width:20px;height:20px;border-radius:5px}.editor[data-v-c536ad68]{color:#409eff;cursor:pointer}[data-v-97db715e] ::-webkit-scrollbar-track-piece{background-color:transparent}[data-v-97db715e] .el-table__body-wrapper::-webkit-scrollbar{width:0;height:8px}[data-v-97db715e] .el-table__body-wrapper::-webkit-scrollbar-thumb{border-radius:5px;background-color:rgba(144,146,152,.3)}[data-v-97db715e] .el-table,[data-v-97db715e] .el-table__expanded-cell,[data-v-97db715e] .el-table th,[data-v-97db715e] .el-table tr{background-color:transparent!important;color:#859094!important;font-size:12px!important}[data-v-97db715e] .el-table td,[data-v-97db715e] .el-table th.is-leaf{border-bottom:none;line-height:26px}[data-v-97db715e] .el-table tbody tr:hover,[data-v-97db715e] .el-table tbody tr:hover>td{background-color:#263445!important}[data-v-97db715e] .el-table:before{height:0}.button-group .el-button[data-v-97db715e]{padding:0}.file[data-v-d60745ec]{position:absolute;width:100%;padding:100%;right:0;top:0;opacity:0}[data-v-d60745ec] .el-input-group__append,[data-v-d60745ec] .el-input-group__prepend{padding:0 10px!important;overflow:hidden}.iconfont[data-v-d60745ec]{font-size:12px}[data-v-4415959e] .el-form-item{margin-bottom:5px}[data-v-4415959e] .el-form-item__label{font-size:12px;color:#fff}.code-mirror[data-v-4415959e]{width:100%;height:100%!important}.el-collapse[data-v-4415959e]{border-top:none;border-bottom:none}[data-v-4415959e] .el-collapse-item__header{height:40px;line-height:40px;background:transparent;color:#bcc9d4;font-weight:300;font-size:12px;border-color:#282e3a}[data-v-4415959e] .el-collapse-item__wrap{background:transparent;border:none}[data-v-4415959e] .el-collapse-item__content{padding-bottom:0}.contentmenu[data-v-76c3e416]{width:160px;position:fixed;z-index:99999;list-style:none;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.1);box-shadow:0 2px 6px rgba(0,0,0,.1);padding:0;background:#27343e;color:#bcc9d4}.contentmenu .contentmenu__item[data-v-76c3e416]{z-index:10000;list-style:none;padding:8px 12px;cursor:pointer;position:relative;font-size:12px}.contentmenu .iconfont[data-v-76c3e416]{font-size:12px}.mr10[data-v-8c5c65fc]{margin-right:10px}.ml20[data-v-8c5c65fc]{margin-left:20px}.border-right[data-v-8c5c65fc]{border-right:1px solid #273b4d}.border-left[data-v-8c5c65fc]{border-left:1px solid #273b4d}.el-icon-arrow-down[data-v-8c5c65fc]{font-size:10px}.is-active[data-v-8c5c65fc]{background:#31455d!important;color:#bfcbd9!important}.layout[data-v-8c5c65fc]{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;overflow:hidden}.layout .layout-left[data-v-8c5c65fc],.layout[data-v-8c5c65fc]{height:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.layout .layout-left[data-v-8c5c65fc]{display:inline-block;border:0;background-color:#263445}.layout .layout-left .tools-item[data-v-8c5c65fc]{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;width:100%;height:48px;-ms-flex-align:center;align-items:center;-webkit-box-align:center;padding:0 6px;cursor:pointer;font-size:12px;margin-bottom:1px}.layout .layout-left .tools-item .tools-item-icon[data-v-8c5c65fc]{color:#409eff;margin-right:10px;width:53px;height:30px;line-height:30px;text-align:center;display:block;border:1px solid #3a4659;background:#282a30}.layout .layout-left-fold[data-v-8c5c65fc]{display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;font-size:12px;overflow:hidden;background-color:#242a30;cursor:pointer;padding-top:26%}.layout .layout-left-fold i[data-v-8c5c65fc]{font-size:18px;width:18px;height:23px;margin-left:0;color:#bfcbd9}.layout .layout-middle[data-v-8c5c65fc]{position:relative;height:100%;background-color:#242a30;box-sizing:border-box;-webkit-box-sizing:border-box;border:1px solid #242a30;-webkit-box-align:center;-ms-flex-align:center;align-items:center;vertical-align:middle;text-align:center}.layout .layout-middle .top-button[data-v-8c5c65fc]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;height:40px;line-height:40px;margin-left:9px}.layout .layout-middle .top-button .btn[data-v-8c5c65fc]{color:#788994;width:55px;text-align:center;display:block;cursor:pointer}.layout .layout-middle .top-button .btn .el-icon-arrow-down[data-v-8c5c65fc]{transform:rotate(0deg);-ms-transform:rotate(0deg);-moz-transform:rotate(0deg);-webkit-transform:rotate(0deg);-o-transform:rotate(0deg);-webkit-transition:all .4s ease-in-out;transition:all .4s ease-in-out}.layout .layout-middle .top-button .btn[data-v-8c5c65fc]:hover{background:#191d22}.layout .layout-middle .top-button .btn:hover .el-icon-arrow-down[data-v-8c5c65fc]{transform:rotate(180deg);-ms-transform:rotate(180deg);-moz-transform:rotate(180deg);-webkit-transform:rotate(180deg);-o-transform:rotate(180deg);-webkit-transition:all .4s ease-in-out;transition:all .4s ease-in-out}.layout .layout-middle .workbench-container[data-v-8c5c65fc]{position:relative;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0}.layout .layout-middle .workbench-container .vueRuler[data-v-8c5c65fc]{width:100%;padding:18px 0 0 18px}.layout .layout-middle .workbench-container .workbench[data-v-8c5c65fc]{background-color:#1e1e1e;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transform-origin:0 0;transform-origin:0 0;margin:0;padding:0}.layout .layout-middle .workbench-container .bg-grid[data-v-8c5c65fc]{position:absolute;top:0;left:0;width:100%;height:100%;background-size:30px 30px,30px 30px;background-image:linear-gradient(hsla(0,0%,100%,.1) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.1) 1px,transparent 0)}.layout .layout-middle .bottom-text[data-v-8c5c65fc]{width:100%;color:#a0a0a0;font-size:16px;position:absolute;bottom:20px}.layout .layout-right[data-v-8c5c65fc]{display:inline-block;height:100%}.layout[data-v-8c5c65fc] .el-tabs--border-card{border:0}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__header .el-tabs__nav .el-tabs__item{background-color:#242f3b;border:0}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__header .el-tabs__nav .el-tabs__item.is-active{background-color:#31455d}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content{background-color:#242a30;height:calc(100vh - 39px);overflow-x:hidden;overflow-y:auto}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content .el-tab-pane{color:#bfcbd9}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar{width:5px;height:14px}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-thumb,.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-track{border-radius:1px;border:0 solid transparent}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-track-piece{background:#29405c;-webkit-border-radius:7px}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-track{-webkit-box-shadow:1px 1px 5px rgba(116,148,170,.5) inset;box-shadow:inset 1px 1px 5px rgba(116,148,170,.5)}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-thumb{min-height:20px;background-clip:content-box;-webkit-box-shadow:0 0 0 5px rgba(116,148,170,.5) inset;box-shadow:inset 0 0 0 5px rgba(116,148,170,.5)}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-corner{background:transparent}.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-thumb:horizontal,.layout[data-v-8c5c65fc] .el-tabs--border-card .el-tabs__content::-webkit-scrollbar-thumb:vertical{background-color:#00113a;-webkit-border-radius:7px}li[data-v-8c5c65fc],ul[data-v-8c5c65fc]{list-style:none;margin:0;padding:0}.nav[data-v-8c5c65fc]{width:40px;padding:0;list-style:none;zoom:1}.nav[data-v-8c5c65fc]:after,.nav[data-v-8c5c65fc]:before{content:"";display:table}.nav[data-v-8c5c65fc]:after{clear:both}.nav>li[data-v-8c5c65fc]{width:55px;text-align:left;position:relative}.nav>li a[data-v-8c5c65fc]{float:left;padding:12px 30px;color:#999;font:700 12px;text-decoration:none}.nav>li[data-v-8c5c65fc]:hover{color:#788994}.nav>li ul[data-v-8c5c65fc]{visibility:hidden;position:absolute;z-index:1000;list-style:none;left:0;padding:0;background-color:#242a30;opacity:0;_margin:0;width:120px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.nav>li:hover>ul[data-v-8c5c65fc]{opacity:1;visibility:visible;margin:0}.nav>li:hover>ul li[data-v-8c5c65fc]:hover{background-color:#191d22}.nav ul li[data-v-8c5c65fc]{float:left;display:block;border:0;width:100%;font-size:12px}.nav ul a[data-v-8c5c65fc]{padding:10px;width:100%;display:block;float:none;height:120px;border:1px solid #30445c;background-color:#191d22;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.nav ul a[data-v-8c5c65fc]:hover{border:1px solid #3c5e88}.nav ul li:first-child>a[data-v-8c5c65fc]:hover:before{border-bottom-color:#04acec}.nav ul ul[data-v-8c5c65fc]{top:0;left:120px;width:400px;height:300px;overflow:auto;padding:10px;_margin:0}.nav ul ul li[data-v-8c5c65fc]{width:120px;height:120px;margin-right:3px;display:block;float:left}.nav .item[data-v-8c5c65fc]{padding:5px}[data-v-8c5c65fc] .vue-ruler-h,[data-v-8c5c65fc] .vue-ruler-v{opacity:.3} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-690c.f15e7b7e.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-690c.f15e7b7e.css index 8f2445eec..e8cb1aa76 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-690c.f15e7b7e.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-690c.f15e7b7e.css @@ -1 +1 @@ -.app-breadcrumb.el-breadcrumb[data-v-23d4be90]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-23d4be90]{color:#97a8be;cursor:text}.main-layout[data-v-42c0e4df]{padding:20px;position:relative;height:auto;background:#fff}.main-layout header[data-v-42c0e4df]{font-size:24px;text-align:center;line-height:80px}.main-layout .bg[data-v-42c0e4df]{width:100%;height:200px;position:relative;overflow:hidden;margin:10px 0;border:12px solid #fff}.main-layout .bg .bg-img[data-v-42c0e4df]{position:absolute;width:100%;height:100%;-webkit-filter:blur(6px);filter:blur(6px);z-index:2}.main-layout .content[data-v-42c0e4df]{width:100%;height:100%;position:absolute;color:#fff;left:0;top:0;z-index:3}.main-layout footer[data-v-42c0e4df]{width:100%;font-size:14px;padding:16px;line-height:30px;position:absolute;z-index:3;bottom:0}.main-layout footer .operation[data-v-42c0e4df]{float:right}.main-layout footer .operation .edit[data-v-42c0e4df],.main-layout footer .operation .view[data-v-42c0e4df]{color:#fff;font-size:14px} \ No newline at end of file +.app-breadcrumb.el-breadcrumb[data-v-23d4be90]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-23d4be90]{color:#97a8be;cursor:text}.main-layout[data-v-42c0e4df]{padding:20px;position:relative;height:auto;background:#fff}.main-layout header[data-v-42c0e4df]{font-size:24px;text-align:center;line-height:80px}.main-layout .bg[data-v-42c0e4df]{width:100%;height:200px;position:relative;overflow:hidden;margin:10px 0;border:12px solid #fff}.main-layout .bg .bg-img[data-v-42c0e4df]{position:absolute;width:100%;height:100%;-webkit-filter:blur(6px);filter:blur(6px);z-index:2}.main-layout .content[data-v-42c0e4df]{width:100%;height:100%;position:absolute;color:#fff;left:0;top:0;z-index:3}.main-layout footer[data-v-42c0e4df]{width:100%;font-size:14px;padding:16px;line-height:30px;position:absolute;z-index:3;bottom:0}.main-layout footer .operation[data-v-42c0e4df]{float:right}.main-layout footer .operation .edit[data-v-42c0e4df],.main-layout footer .operation .view[data-v-42c0e4df]{color:#fff;font-size:14px} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-7a76.77582ee8.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-7a76.77582ee8.css index 6bab91e5b..5cc47f384 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-7a76.77582ee8.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-7a76.77582ee8.css @@ -1 +1 @@ -.app-breadcrumb.el-breadcrumb[data-v-23d4be90]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-23d4be90]{color:#97a8be;cursor:text} \ No newline at end of file +.app-breadcrumb.el-breadcrumb[data-v-23d4be90]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-23d4be90]{color:#97a8be;cursor:text} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-943b.f10cfb64.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-943b.f10cfb64.css index 6e36713db..8c584fa83 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-943b.f10cfb64.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-943b.f10cfb64.css @@ -1 +1 @@ -.app-breadcrumb.el-breadcrumb[data-v-23d4be90]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-23d4be90]{color:#97a8be;cursor:text}.main[data-v-6f01286f] .view-lines *{font-family:Consolas,Courier New,monospace!important}.code-mirror-form[data-v-47b2c5a4] .el-form-item__content{height:200px;overflow:hidden}.my-editor[data-v-47b2c5a4]{height:400px}.my-editor div.jsoneditor[data-v-47b2c5a4]{height:400px!important}.title[data-v-47b2c5a4]{width:100%;display:inline-block;text-align:left}.addSwitch ul[data-v-47b2c5a4]{list-style:none;margin:0}.addSwitch ul li[data-v-47b2c5a4]{width:200px;height:60px;padding:10px;border:1px solid #aaa;float:left;margin-right:10px;text-align:center;line-height:40px;cursor:pointer}.addSwitch ul li.add[data-v-47b2c5a4],.addSwitch ul li[data-v-47b2c5a4]:hover{border:1px solid #3385ff;color:#3385ff}.filterWrapper[data-v-47b2c5a4]{position:relative}.filterTable[data-v-47b2c5a4]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;border:1px solid #dcdfe6;border-radius:4px;padding:5px 15px 25px}.filterWrapper .addFilter[data-v-47b2c5a4]{cursor:pointer;width:150px;height:50px;border-radius:3px;border:1px solid #67c23a;margin-top:20px;background:#e4f7da;padding-left:24px}.filterWrapper .addFilter i[data-v-47b2c5a4]{font-size:20px;color:#67c23a;margin-top:16px;margin-left:16px}.filterWrapper .addFilter span[data-v-47b2c5a4]{color:#67c23a;margin-left:5px;font-size:18px}.filterBox[data-v-47b2c5a4]{width:182px;position:relative;margin-top:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.filterBox .box[data-v-47b2c5a4]{width:150px;height:50px;text-align:center;position:relative;background:#e0e8ff;border-radius:3px;border:1px solid #b8caff;float:left;padding:5px 20px}.filterBox .box .reduceFilter[data-v-47b2c5a4]{width:10px;height:10px;position:absolute;right:4px;top:4px;cursor:pointer}.filterBox .box .editor[data-v-47b2c5a4]{width:12px;height:13px;position:absolute;left:-5px;top:5px;cursor:pointer}.filterBox .rightIcon[data-v-47b2c5a4]{width:45px;height:19px;position:absolute;right:10px;top:15px}.filterTextarea[data-v-47b2c5a4] .el-textarea__inner{min-height:300px!important}.filterBox .code-selected[data-v-47b2c5a4]{width:70%;margin-top:4px}.filterBox[data-v-47b2c5a4] .el-input--suffix .el-input__inner{background:#f4f7ff;border-radius:3px;border:1px solid #b8caff;color:#89a3ee}.font-icon-right[data-v-47b2c5a4]{line-height:35px;font-size:30px}.popover-box[data-v-47b2c5a4]{width:100%;height:220px;overflow-y:auto;padding:10px}[data-v-00111258] .el-dropdown{margin-right:20px} \ No newline at end of file +.app-breadcrumb.el-breadcrumb[data-v-23d4be90]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb.el-breadcrumb .no-redirect[data-v-23d4be90]{color:#97a8be;cursor:text}.main[data-v-6f01286f] .view-lines *{font-family:Consolas,Courier New,monospace!important}.code-mirror-form[data-v-47b2c5a4] .el-form-item__content{height:200px;overflow:hidden}.my-editor[data-v-47b2c5a4]{height:400px}.my-editor div.jsoneditor[data-v-47b2c5a4]{height:400px!important}.title[data-v-47b2c5a4]{width:100%;display:inline-block;text-align:left}.addSwitch ul[data-v-47b2c5a4]{list-style:none;margin:0}.addSwitch ul li[data-v-47b2c5a4]{width:200px;height:60px;padding:10px;border:1px solid #aaa;float:left;margin-right:10px;text-align:center;line-height:40px;cursor:pointer}.addSwitch ul li.add[data-v-47b2c5a4],.addSwitch ul li[data-v-47b2c5a4]:hover{border:1px solid #3385ff;color:#3385ff}.filterWrapper[data-v-47b2c5a4]{position:relative}.filterTable[data-v-47b2c5a4]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;border:1px solid #dcdfe6;border-radius:4px;padding:5px 15px 25px}.filterWrapper .addFilter[data-v-47b2c5a4]{cursor:pointer;width:150px;height:50px;border-radius:3px;border:1px solid #67c23a;margin-top:20px;background:#e4f7da;padding-left:24px}.filterWrapper .addFilter i[data-v-47b2c5a4]{font-size:20px;color:#67c23a;margin-top:16px;margin-left:16px}.filterWrapper .addFilter span[data-v-47b2c5a4]{color:#67c23a;margin-left:5px;font-size:18px}.filterBox[data-v-47b2c5a4]{width:182px;position:relative;margin-top:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.filterBox .box[data-v-47b2c5a4]{width:150px;height:50px;text-align:center;position:relative;background:#e0e8ff;border-radius:3px;border:1px solid #b8caff;float:left;padding:5px 20px}.filterBox .box .reduceFilter[data-v-47b2c5a4]{width:10px;height:10px;position:absolute;right:4px;top:4px;cursor:pointer}.filterBox .box .editor[data-v-47b2c5a4]{width:12px;height:13px;position:absolute;left:-5px;top:5px;cursor:pointer}.filterBox .rightIcon[data-v-47b2c5a4]{width:45px;height:19px;position:absolute;right:10px;top:15px}.filterTextarea[data-v-47b2c5a4] .el-textarea__inner{min-height:300px!important}.filterBox .code-selected[data-v-47b2c5a4]{width:70%;margin-top:4px}.filterBox[data-v-47b2c5a4] .el-input--suffix .el-input__inner{background:#f4f7ff;border-radius:3px;border:1px solid #b8caff;color:#89a3ee}.font-icon-right[data-v-47b2c5a4]{line-height:35px;font-size:30px}.popover-box[data-v-47b2c5a4]{width:100%;height:220px;overflow-y:auto;padding:10px}[data-v-00111258] .el-dropdown{margin-right:20px} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-a4f3.6b88857b.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-a4f3.6b88857b.css index 8926fe56e..591426e79 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-a4f3.6b88857b.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-a4f3.6b88857b.css @@ -1 +1 @@ -.index-container{width:100%;height:calc(100vh - 50px);overflow:hidden;background:#fff;background:linear-gradient(75deg,#e9f0fb,#e9f0fb)}.index-container .position{padding-left:10px;padding-right:10px;margin-bottom:0;position:absolute;top:67px}.index-container .center{width:100%;height:93vh;bottom:0;position:relative;max-width:1893px;background:url(/static/img/index-center.0fa8c10.png);background-size:100% 100%} \ No newline at end of file +.index-container{width:100%;height:calc(100vh - 50px);overflow:hidden;background:#fff;background:linear-gradient(75deg,#e9f0fb,#e9f0fb)}.index-container .position{padding-left:10px;padding-right:10px;margin-bottom:0;position:absolute;top:67px}.index-container .center{width:100%;height:93vh;bottom:0;position:relative;max-width:1893px;background:url(/static/img/index-center.0fa8c10.png);background-size:100% 100%} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-c4fe.f732aee9.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-c4fe.f732aee9.css index a4f9bfe09..7bacc4b71 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-c4fe.f732aee9.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-c4fe.f732aee9.css @@ -1 +1 @@ -[data-v-57fe9f5c] .el-color-picker--mini,[data-v-57fe9f5c] .el-color-picker--mini .el-color-picker__trigger{width:23px;height:23px}@font-face{font-family:iconfont;src:url(/static/fonts/iconfont.ba04816.eot);src:url(/static/fonts/iconfont.ba04816.eot#iefix) format("embedded-opentype"),url("data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAACJQAAsAAAAAVKgAACH9AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCObgqBghDoEwE2AiQDgygLgVYABCAFhG0HimMbCkZ1hhxsHACQvM8iooIUIPv/vyU3hoisQDP7oxQspFSOEhyEI964SGdpHgbZQdChvkX9Xd97nQ+VaIq7d5noG8yfVj6tSWbtWNLPqLzFBpnESCbt5xn252+nSxLNW5sNpeTh+f39/481976wz7uPRtUHGDrbrw4ZrEQ+o9sQS7AOLVwR9wAYHufsX4sltIw2UGCOWN/DZAYtWnRGXhjMYFsLlBOm6ZgkU7ixOUVm3hSYSZmdcy3Ttndf4ESBU8/fv9PPcyR7254j2T+y/RCTRQgUIXDBiWYbMHXqvsls3dZt8yP9Sr8UeI/jYBECy2DQpVnHImNkw4UQi/rrnSeKbo3ABwpVbnt7MIAxZW53t9DyQ2dMry7DVAd+ALjBeSGPOIh9Xfq3yXEPE8N0ZWvf3u79xy5A2HKIRLDVxEQAD/zfm+lMLBjA+E0Di+KU9uanlEK1W7V0DFgDrXU7yJ4lXCBcov15demKDpPSOimby7C0sjnTlu3++0jcl/hgIbgcAnwn3BBuFBeEGwh8Vjk7ve+1wbkBaZxrn1Lq5im1jRnWZJnalH2IbiaZdvxjNFLYNjjuGFPLYXaXebSkr0ZxoxJ0Q5TYn78moVKvgrRuw7Z9FDmzmGDZtcsXT1M8rfKIsqS8oZTyYT6c9itRHs+EAy+Rv59+NScRhJKM+eKuC+vPAT8+K8geLvKTY47JsOvG/iMyFJATC6ijaZbsa6IgU/laM085SuVr48fXBUURyyJFWuHz/9qJHr369BswaMiwEaPGjJswaUpBkxmmzTTLbHPMNc98Cyy0yGJLLLXMciustAqEYARlstgcLo8vEIrEEqlMrlCqyA5ptDq9wWiiOkVz2mojOedguOBye+g6Dn+yRq069Ro0atKsRas27SqVq1KtQolSZUIm8j+eVMpcWg0li2DyBubHB6OHH1/08uOHPn780a+QhKGVCLQRhXZi0EEcOklAF0noJgU9pKGXDPSRhX5yMEAeShRgkCIMUYJhyjBCBYxSCWNUwTjVMEENTFILU9TBNPUwQwPM0ghzNME8zbBACyzSCku0wTLtsKIDVnXCmi5Y1w0bemBTL2zpg239sGMAdg3CniHYNwwHRuDQKBwZg2PjcGICTk3CmSk4Nw0XZuDSLFyZg2vzEGMBbizCrSW4swz3VuDBKjxagyfr8GwDsmzCiy3IsQ2vduDNLrzbgyj78OEAPh1CA0fw5Ri+ncCPU/h1BvWcQy0XUMclZLhKi1S3hrQYdRuAPLdQ4A6K3EOJByjzCBWeoIpnqOYFaniFJG8Q5x1SfECaT0jwBRG+IcoPxPiFIH8Q4h/CBNnZNvqzb/2Hgm+XX6shAPDIDn2nEKAqnKGBUOivZA4KW0gZvafr3BQtvdGQKGOXK+jxMuHo+RqAUxEBRoTkYwZwmLuk6nyIpr4UPapkojiXpKlDRMhw0F0ARQPDTMn9UPjbkHEt+m4NOCLsVWbo7ZitUp6Nl3YnrJ8iAvij7nsIRSkYT2AfwVuji87qVBm1Q5gVmYuFsYgqpu1Vy0P4b7e3HTaoWtKXAeiIq9rtbDfJnFEJ3yZ5C9vMFqQ4rUyz9jyEsVO+bind+meT82iX3uh7WLtf/mNHA48h7jF5ypzTlCQcv5ubeehZSly2XeCJ32vWw0QsABZSz1MRvFzCulXrUUotFpgPLHGctww3N2IaitXjWLBtPW/2mW0J9wozblPnTXu/syRwarVqYG2kKhiLdIG7JvyWsZA0S5cPgxEReXFY0nvhZ941sR0MJUHkFQ7CcX3kV73dn/vD9HnX4zD1iwl79nujL6+lfhIthTEg9FMWn8HG31mJYxBFRLi2SxRsAwoSjCwtLT6/QJHjxcxpyU90trhORYQlNEVoAbGpu2GbosgBG5OkOGMFEfxEaXYgF207EO8w4/rRVbtzcBw43CthsjtfCmL0OBzGXkRcHeMaT59lMFjZVw728rXpog0WMNByJpe9kcvkvWrDIJPwkHN5yI1nKJtnLIbJvJ8CpC0DZRiQThkg5CyOqcHwGnJsLMnghmXYs53/HpcMFoqT/eerkoBVBRRvYxNPHyNNQeQAMCbForbAXiTgZZUEjueAtXnoH7H9zuDi/f636fbH3VdPrdw7eOuDvyN3Drx9st7snrvX+5YNXiGOS91Vux7s+nvhzs3tVjXr8khMzBjJllUMimyapCU9KmwhxrSFdmeVw/5mgCsEvEiy8ZkC1iTTAU42MpStqBEbthqWYkhbLgMBaFuGFwUJmsImfqFKWJCxL1r8hd02vNVOgzRus/VWrCjy4oKdpn6SKxVsiIkZw6rhBYfJ0ioZ2Yyr7KrxWsTdUMmVwKlGtwrS1ultYU0lJS1djQX9BLXJhOoliVrLa2MGmSNLpp8EEYQaEbKMOzWImr1XRLBD/hlFJXG5xhnaCoujC6vDbSYgxnlndOSqiujC2Qxl22EM0UsdJhFI0OZT0U9VILjQS2YtDWPPEV0vq8QfBoKrSKAHyyJalTzpy92Iwf5WDXQ3S/2q3vzeMmwXM+YKRAR/h9PxHVkIvwFsEtzcp+DwLBJ4+XCgqUvB6/4bz4T/Pc73+xR8db87+loFX5KsNIk0O+CSUDQjKiH6L+5+++17E/2rKYc7xznuge8C/0LnW2+dDjxMwe4J6lXQf4PD6zuA0X/0TxRc2riGZNwIx/9/llacjXLVM+x//fV0X5b0Rg803Tl6ZlCLGA4ElEGzGAlFrfbrXd/hJgPp8rNuV+c1+a1er/vwe7Xu7jetCgFvHT04vKLIQFoyXtkoqm5Vf/VgZW/mmwgdUXO134d5bvrXE1+a/NVUpZ53p2sTjcnqVPtlUiRo7hHBzVpuzpDaVDNCmVqWW25HVLJeSgtSp3EcOaIllJZKSBcICf+RFv75kffh00vkrXbCrXV/bTPYWNHBp6fg1kF4dBb9z0c6O8Bb2Qg21xD9vXmtro0S8MjcP2KMGNpoenQ72E1bWkjTZVjZvmRt7mLW37vKQOMyw4vZDtO3GVuded3LdjpJXAzjlahVT9a3OoXav3vXV2/d/cOl/f7YnwY6uvl2oD7xP35241LkqBHnj92H97tjh/3xPw9eGF/Va1d0utVZdao7gzf6EvWmvRYH5rLnK+YqfX2EgUYrd2AoN80Jtw9ZarlGYyE1x52d4/fqIPUEru+NHhlOvi8J6agxKY/J4glz+UkpF7jsMZnv/i7HCrHXkhldR60gA2NqEQBm0U7RAJic1QK4pFWF9GUBqGRNBQJ8CNrihUe0miylfnEoCRxHOMClR93J2HOqhI00VPNASU9MpGFcaFgm58huxFU7jJuGt3PZ3tpDk8P1taRoP1P7aUlYIlwOG6QmCpuboJumMlQsukPbI2cFN+egEZ0/61w+XF2hXLC2Lmej40W+LYdoKBKfSVtT0swQMvpJseQMBxjI1KBqVyywFVhYMyxzwcmtM1CLYbGwWFElDpCgiiqMKEXPBlIPSwaVjUKzllM/IVLiJIlZj+jsgDuXL25S0BWnKLJORTFz2coISy7LOIkSFzhN1z68pJA0g1KqkGlkBBAUREHAtGEin+IneJbKmjRrpB/LAgto2GDJRzPoJg1fEUpAPpsztNSLYWdVoew0be76e8sCijlqVCgZ5PMKhFDDoyYb4+0bLAEVjahP/nmqqrOcsTFjGX++lJObZLTOHDQpSTQZU1S1o1/eiiYbVAELF8jkebSh/cISZioQkoInrF2ENKuGiibeiQ32kSLQjTJWs5YFMgsAFQEzw038skAXWVcEJVHAO7VZVZTUykJGxVtZ0Tl9W/opzIh4uUzZqVExcuaNHOSbxrI2Eg4uthqa52oFfWWW2Q4heSUpiH52C642GsGGhbsRFkecw7h2mgbYSvmpSEY1nXPsZg1+aV7KBf/+4iwlzyex258/q9mj2QIvHBd26NZn7uaVRmqL4OrxYcGbauMtOztwKOj3/cGAez3ZTR+lv9Hc7bQqtBMqbMacn7IsEMBh5YURAn2N5Rk7h07xS7obDn5diqFxQh6rCDk8xkjjTYkF+bAS8poqltS3pJYMhNWhBrUstOcnaBMgHJmVemgECca+aasAoYupWuHBignS9J4SwxIAP0341LMF4jSz5vc/7xPUziYygdfZwjnK5DHnAt/tfrNfpTkSEYau5xDqt9ZFyuB+v52hLC1sqE0AMwt2kkapL5b4qUpGJZ1z7CqGpv3Cz15svDXnOfox3+6FB4Mf/eNT77PwC//z+kusDbwCLURGGwlyqJxNTa0nZfoJ0bRzWMET6jFryDx0AnJCmX64NG/Quj4xeW1qYmh6anhSA7PHAwuXrgvl0bY5Q7MW2r8kWMbi9V8hsBZsCtA4rsnxRwjm4hTqYaWHBFMjXZSAtcQEAQ+eTUuG3QhyeHFzrujQftvWxv6x1eNeDPth7aUUwlIqbDO9d/L2ofCjkoiAwhlKXN9jUGNnpS3QEUNa4WYl1OeEFEDI9eEacreOypDOYV4Ny/oY9qoY6AEI8zOzwIORYbwvlvQ/HQdHIgOmYl9YT1nhKVmRLmMsR5UkjTam5TIel1mMOUGExd5CbDSTcRZ67+rFhgwIn9LsRk4bWNNK1F9nRCGOJXWqiAnRilfl2mAVHTsoWU4vApNEqosFOOBsz9+sTdTt6lRjbmYF/AU3vJ1wz98NtuV1ss5Bc8xY3bnMoJdOqZPm2m653wgTT00+cxhlwl2wpLBzWai+ZKGtZvPfcVmho0CCAM2oXxSolLg+brA5qgE4S7xUbShb1ticnbHa9TiEZdh1Nkil1WvX6sZwVyCjRiK9tOktC+zv1jxr3RrRSqHqD74YMOwk4qnoL7YZdR9qfiVlZyzlML9goAYBzJTtBA3ASvqpTkYFnXPsZoz6y96z83f7jk/sDLpf0hHYdXvXXTiad2e1q7qP9txeI316T4aZVefu9B4LaVfdK5a1BVttbXfU5mC7pjPo8IlLtpjO4DPhHfTZ2z0nx19ME+7uuh17Ex453Xc3+vjUC7ZLZyZYMy132mzohrrrVO+dqGOTApnr7z7kHw3IvrsS6V3fY5G2b6xaTMrdbqg3FJfpAxxKXFJmyU8rfG39hsnv1isdlMFQZ3ioC4xlq4qpp+QXdl/SnW/RK5yMUgnqddd6JWU4wP496D2vOq9FRxd5e72/ohCPAEKocl+TQKz1OUxMkoF0xTZFgVI2mXg1WEtaapSJPOLfwitO+aYRV1xBgyUbvU3ekV2REZ8L7SGiE1pJaNQilbIhalQhbWOerTULv14WN0VJRfLvHvps95YNy25Nu+WNZf+Qf5TvP+afrpge7N/2vff3bf7B0/0LfN+D3DzgO6wa9h2QDQY9llXyq2f9OgiNuVxjKAjlvnq4Fa1R7xGpgMzBrNAKUq5amVMgBIOJIiAAIRqsEUEERA7hJBgiELlskRauDA8YUnYhK4DoZpII7p9r1IgMZNQWDLFasJCbLSCPEzCPBY6ntt3IJ8aCAui+tKQlftx6xOLm3UYj2U9CeVmZHJ7WUtsZwhLkqeW1fm+F7n/AY16g8WoZpMx9j67AigwPadbUh/qZhsmetTqdKqga1/x73VXq+6vXpi8/uNjww5R/n4akT/GcV6Tz8sZuz50601Oa8T2mK2jFd5UUG8FGstI6IHCYFoBTYAwgLQLx6VdJnooVUbrxVVcuK1tb+nye9/VGtZ19yZ+BxyDltEDj6uq6R6/PGhm9ZuCI2+UKHE3/9z27Y/KI3Z68PBDE+KMqoiuZypC71diyfWvWsFTju19kwZ9gE64Jej6JIO0BdjKiih6ESUq/iTW0spnFlJM3+Q7pc4Q64uOcNqrNR7j6gmGwcQJZs4tqq2lH7mHg5BBCbeYXW4brrJsT1TecGRadbwbhKkF08Yvgp4P3P3D1zkfzc5Zdv/7t3ICh6TOGgr/Ly4Nvvz0c/OkLoq4woKfn0SPwYJ+zXKI4lB5vjO5SR8KqKpU4y74+N6v5webqKjYZoh3wSQvo+SGCdAQ4RO1gBuB4vQKN19trchPY8kJ6LAi7WRECd15dUHhrS/T9ApzO+jW5CjC5cjC5CjK5CjO5CtRPLnIQNhY84Mh+wi0vLZW7SdtNjrzjM+xzh7KlgVvBKmmjbCRUjWzCSoeCMRr1StxpjMKhxAtJsgLAm4eV+gajHvRPv9ULgebHfzyuf/ftNc/t0HHbWM9r33533aNKw4LdHnfvStvapNEz4SfVdzwl+9gQs2slZPhfUAiuan97rWTgRyLrECouLX5v27sh0YE+7xU/3umvLdfKcosIXTHsf+nrprCXXy0+Vj5TO/vMZtB54kATsWbc6oOLjz860Lpk51bf4uf/33x1YE7FWOXYnK2503deXWs2xtVf2ST71eof6PP+5PCf6nW+9duyS1IS4uo2H534a3+wuizq96U6cs1F4g5cEREV7Q0fFg/mXnmeNXVDL7xW/Jwgcm9MuVds/2t2eMylrN+rV56fV8IsB8UVwz3HnwqVrdpSEB2WeyOhN/yS+N+qa2/G8PKSbWt1rUllIDtkFpIfkdtKZpU0Fk0un7Xr2mIjM+KAk7Mia73fvMFOiYceOAcFQOEjMC85vtJ76e2psQ2hK6vzLysVv/eZ+z7qjGt8fv1386an13zQ5clxrZVrW71983PekhWVFszxeKuorKzoLY85BaVFsre8tlZLWVbaQ1axpmpJlcRk6q/axALWbnvxwqbYNAOik8YCML9ha2iwxZ+DqiCKexSYUOZ8p9wZv7PvV3x+EYgwRlIMhKI5kdXjFJwceAD1+2MIwV8gDmwtMcdcq12+pQTJ5S82ZVVMPfCf8r//+eA/f/+9/4P9+69fr/cC2b5Iu1Z2Le0Lg7hqStFULQg0QvnpmcEzTwefmRE848yD4QilFHuKm8UcRyjVCpbCYRo5plpiB6qqFYWmgIXNpq640FiMR1s2PmW6+9ZnMESl2MgWah/Oe1CWEGJvDki5womJVbgULRSgWhSjyDVGWiCthIMY81tYPon8/nustCuZOdB6Zb+/nxciHRIbmF1EptQHTakxydJfLace/Dic3Ji4f5lP5ptgQYHyfx9RHt8WztB/EqE14wtXdqQuBKuk809mLvPZv4pYTnxC++9YOLLj5T/vbjGbahK86/veuJHj+aZX/qIcL5dXLgis3k3NNY0jJnDK8uWr/gazqLkluUPEG/XCWjzNQ1ykUqbIVmp/889g83LBGiAKDxWs5GFjsERtIBxExzvGyLnFdhhajG6LEAgTHYVc3ixCFWBAJpaYKECZCIZCRNoJN2EnUXrL9lAEDOJA/lnFSzmH6rFQtlObGZXEvDHBu+KAo2cSI1zUdELR0qf6kIk+dALDatG43ilcPZFToFMEa8sbLgRi8TCGBC3u/YcQAlsDBKFALwiTq2zfMko8ZFAy337xhWVWVrf+n+n9jnDHxImm9bW4PfzseMJBAlLeYxCsdwg1zwACyGapSAfQQKuyVQEVrUorkl+/Ln9EEHODSjxfF/3zZL9mHXmXB7yN2NI+CMtqTAQLiFkQwwcOjyyJhj4BRRSAURrK33xTjqJrOYYltqM1HHRhkFdxTJE48CMAvoAn6QkgsAM1fia7v+U5OTT+Kw4J/rKg0508Y2UghwGGEDAAqoEVQJqHPAj949VEi4XOyJPl09NPq3BHVXcTOah0kDsBGI7L90tDubkvN2pWVXyaX36c/QySkv9QeqV6ZHko65rDawLS1gV47quT589qkt5aEZyjmyHTrp/v7bVLmuYxt6TRHw3PaV6epS+vnrYmIKJTiMhIygpV1m+gmjwy2QDPTI90j7kXPCjQ97m2z8s7ydu7L8czOmDJKqV32OJVERkHd5fVl8UtU0as7TtSOzeGlTD6mE0b7VOFKHbDQASAooCENSuqqrnQEA5HkazOne8zcn/dsuMtGoABvHZ857rakXvcXDm6FnQNyRVsHDl5XpNO5TjoaHA0OA8e9//zSD0AtIKesGAjXeaUSNMPJkQ1dEc3xJ+1SEG5897M8+upO+UtOIiemoCT1iLADEPoAtwN+sbf08lJUdeafnDLCOMzaQG5kQtaAfz1+uAgF7PxCovM2IzMPOLNmw72u1jMngEgipJSQCEFHq3UODopmthhoyuQUrFiDWR/CAsxFceov5CCUWhSMxkYJSE53uOkxgWUikXXA4UQM3NYQqDysQoVjHnTfh6SdkIlMjBSGGUG5EWTA9VgWtpa5kgYCXuPUIqGKjyThGQ/TwE3bx4jrBGLvRkKqyqKqlHyTNY1Cq1ZC7tc0GVRuaFbwCJ+cBvUOEfHgYJAAMDIIb95Fc+z8ezyVIQkc+ob53jMe9ngNSdNI6rcKhUIsruCgCpFPsh1XBBP8CdQj+OD9DVqynuLtGpdA8ybFV1xgeYTrPMggmLA4u+TGJgARqtGqWRpWlrqs/ljKru+pSV7Jchn3zIkw6v3QrMbNtUOPLYJg5c6nL69X8FK+Lm9BidOl8clzK1OmPOZVyRZulSikxRdRYPeO+BtBcV+q1y0LA6KmpkES80lCPst0kYGkR/YxQUGmyKX2w59GzNIX9KNiWa6umosZplQMzt58gyPljnIOeggfMngUgD25nxvSGw0JhrE1XsUYKmjtOQkxh/F8zxML8gfKiycDpxGAQrqveN+sWF2PWLx5IDRvSNsMzJhADkBCSPiQ/hQrRqDY0IgRtiNMx84AQKCM6REUp/+EYexbbKDPMThGDiwBpjy/0yUWVHBKNcJSZMJU7ixUGu4pUZTy+1loQjVcqIIQm3nDQiIAmIYhEYvOu98saDwik5SU9MBc3IrFtLpC9OOKoeqJM5mPHTh6P+V0GTBIegCY2Clqe1XDmUHYadatMrCxFyiAc6rAct8bie0rk7gQQJ7hHSNOm0RrC2kp0wprKit1VWMG6ej65Nki3x1votkJlWNjvZJNTWRPXR9qOwH0WG84t/0UaRVubFbZUQdiAFuF7TyVkBzWkIGeFFY69JUOmnxEc2S+AH1wyVO/OGfZMeArQF/JQ7124ZsPzr6T4PA3cjFA4hcic+GzeaHQNyuO+97SyAKkIFAwkNercYM7n0ZmsaxxvZRq6r4Wu+hvgzXtZddVykhe3b7wfqwEboyOvrolAgozY58zO7QZes02xfP8fQ8vw0x6BObGZmfXiq69JS8iBxJVaG3d5VuUogPbu6OVfmGfVUe7qVnb2T1wtSdGkcE+FDo/N40zvcniVJy4oSF1O9vrpjrWxge7DnJesHDF7T6LAISibVHT/5dV3mR1J+52EpQ4zr9wgnwk27pIJDk7BFLQ2OjIVHck6MAg0vfPFmCcfzHPI8yCgqGdLrpQLyTgbx9obsK+0T7VOHurVvlEP2EmnDJuMzgIIMYAULO5m8rHvIb+pMdKybZ5LAiXDgGNrCc6RO/oOwdZVOBTlr5EAZjC4Fsje3Fc0f8+f7SEhsY1WCIeYzwTSC+W1EQrl08L6gDQhQnLAJd8LmSWmTG7Dkr9JTX1+YBPcekF90Yv3xS7ZF1BolMb7JQ0vpy4AJldfnR+TE04UtuIbAE+9nJWykr+aoYOw2UNJ07Z5PwCdICJ8cghmcgdqIhwNJ2P+Uk5cRb4Py+Mk9cARQrQSMvp5HnOJXiTVRqPpQgUcvvJeC7oM73BUnLrOjJmJiXPEHJATAFnIIAl3OghBGIUSY9bYz3V40SylwSSfqhhGhjl3ri0w5KML/r/qzzzZsfPBj4wQR5IgcgUFfQPCVWLWY6/yIRjYxYX8i/KYTPtz7E1CGC+KZvFityPSimBsHHspyhHY4Ea9JTVlLZD/S3cXFoua08ipA2ZUl/6YTcciN018In//sI6ZPY34t++VZ2EKMXvbh+tWZgtCwUymgLeoEHDiSfcutLTGWGYH177hb9D1eSDoC6g7nt+hB9mal0zcqQ8+dCVq4pZctvNuZQrpd3KjideBrUncm5joMNWWzkTp07HxJu2Lm3p7b+9yXhP6X9FL7k9wW1Vm5nJbNzX0D1xaE/pv0YuviPytqjezuiHvjnJFjioyGWhCnycpOIqFmzPw935F/u7KGiefzHU7PJsJIxm+oLT7vuSxDvhJvm4GU9WsmJXFwT91wVz0WxqN/4InyKPED28Oa45TfEK4vofywig9ELs37TZzIS6AFW0asBfD+Bl0ZluWtLMF5aQJPOiB5dUaw0kSuj06yKkjiPuEpYgkQyAzq9NTpoagqOtUVJmbcmPuwai9Rk+jxaZTzF58ZSHszNJBzv974QWFRdsirDUVzZbJejLnPestqahDO4su66JTY1DQfc0PEtgYeLf+LO0PVAoKypqWLhaVqr/iFb1GUViByfHX3/7fvb2PvoWTo3W/a/V+Xg24gY4h2eoXLtG0v8J6/Q5G7/4/1fXs4MXclf/tr4v9BUxr8SWIOEK6nfoKEGKi/dFKG70Q9dS1sSqyTlHs/eHcr0uDPlhpncVXCXqDLPXarcSnelKRvfvEqTO3gpr8CkJzbupN4H7lDrIzGjmbLA5K7v3SVa/e4uVZ883JUOpKYWq4ymqZdX44QQscublFMr3Kszrq4L/6DVASY3Ry75j1OgGXldVLdzv5FxYtEg/NpzjH3eT3LNvzZbhsMg+TiJxzYWLsbxsyx72g4UrVyfVuOEELHLm2QPS61wf/dx5fvif9DqAFOE7uuw/3EK9OTzuqgSMN8CJ9LlRRt+7TmiSJ/jpSe55l8ogsNlluQjfU0e21i4DOr4WSKrPqlQlE+vsuVRUGm+/hVMTlQgRUyquPCfLBIhKf+ocWTNAUSYUMaFVNpY54MwipM0y4uyqpu264dxmpd124/zup/3+0EIRlDmNyA7zeHy+AKhSCyRyuQKpUr956J3Sac3GE1mi9Vmdzhdbo/Xd4mu7CdgT7jsIBHfNOnxK5LwGpg7Is2O1qchGwKJtOpx7UkHYDNqFLareKlGvW6jB2wxqHTEdjk7Be5A6lUS9ZsmUTRrgTrgs4kUIS66zKjoYP0eJdZv9oBrk6h1Wi+CQ7YPrTeMdFFwNAS8vxHbMDU4oEdA9uGO3CAHE3tOsF34nyjNUQecB6TjXuTg9CRvZ6qinGiE7PdBrJzfbN+OHZRCH9XKaNUE0bvSGKvADWWp1UQW30lsgHXsnAQccMkB0Mm6jIjXmOYSR8tIBa0TtscZhSXwRiR01h0pa+q/xjnzhCOxPb3zvCsK95kGEzJmqYuu75oc34nPZETBkHtIT9WQvc4F5XRKN3pvO5Y/BBGL5ozyoVk98es6kBqNubiJOhLw6hGcIPio7iEyAqVNzXS4aUEBKJlmLQRtCozmvHli7F653tyaWBGHzbaolSJOwZZ4V0tFTKACGXekU6Bqm7QAed+iww8VFkX58zAzHFucbafUNjil+sP34TuWxtYKfmG7SBJFHZlAEMLiog9RNjRveXWXDVCP7ECWFoMjFSqYBqRVLiHLawKexYYOm9Up8DYOiS+8LyU406BGKXjmLXDgnszuGReg5dDtPO8bmeVfeB/4ZIth3LFCerstGoCr/aDNrFJvUtISUq8D4aJz4P79C+bBzKI4cTZp+Ld4QTOPH5WMp3CILztqe8OmOVMfVdw1NR7DqGs8k5RtPlQ2hmWME41Ku0b3VBbyKBqcBcHh7OgJAAAA") format("woff2"),url(/static/fonts/iconfont.cf8ecfd.woff) format("woff"),url(/static/fonts/iconfont.111271f.ttf) format("truetype"),url(/static/img/iconfont.c6ec5b6.svg#iconfont) format("svg")}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.luckysheet-iconfont-lianjie:before{content:"\E7F8"}.luckysheet-iconfont-dayinquyu:before{content:"\E7F5"}.luckysheet-iconfont-dayinyemianpeizhi:before{content:"\E7F6"}.luckysheet-iconfont-dayinbiaoti:before{content:"\E7F7"}.luckysheet-iconfont-fenyeyulan:before{content:"\E7F2"}.luckysheet-iconfont-putong:before{content:"\E7F3"}.luckysheet-iconfont-yemianbuju:before{content:"\E7F4"}.luckysheet-iconfont-biaogesuoding:before{content:"\E7EE"}.luckysheet-iconfont-zhuandao1:before{content:"\E7F1"}.luckysheet-iconfont-youjiantou:before{content:"\E7ED"}.luckysheet-iconfont-caidan2:before{content:"\E7EF"}.luckysheet-iconfont-tihuan:before{content:"\E7F0"}.luckysheet-iconfont-dongjie1:before{content:"\E7E1"}.luckysheet-iconfont-jian1:before{content:"\E7E2"}.luckysheet-iconfont-jia1:before{content:"\E7E3"}.luckysheet-iconfont-yichu1:before{content:"\E7E4"}.luckysheet-iconfont-shengxu1:before{content:"\E7E5"}.luckysheet-iconfont-neikuangxian:before{content:"\E7E6"}.luckysheet-iconfont-qingchushaixuan:before{content:"\E7E7"}.luckysheet-iconfont-wenbenxiangshang:before{content:"\E7E8"}.luckysheet-iconfont-jiangxu1:before{content:"\E7E9"}.luckysheet-iconfont-neikuanghengxian:before{content:"\E7EA"}.luckysheet-iconfont-neikuangshuxian:before{content:"\E7EB"}.luckysheet-iconfont-zidingyipaixu:before{content:"\E7EC"}.luckysheet-iconfont-logo2:before{content:"\E7DF"}.luckysheet-iconfont-logo:before{content:"\E7E0"}.luckysheet-iconfont-wenbenqingxie1:before{content:"\E7DE"}.luckysheet-iconfont-jiacu:before{content:"\E7D9"}.luckysheet-iconfont-sousuo:before{content:"\E78A"}.luckysheet-iconfont-guanbi:before{content:"\E78B"}.luckysheet-iconfont-xiayige:before{content:"\E78C"}.luckysheet-iconfont-xiala:before{content:"\E78D"}.luckysheet-iconfont-wenbenyanse:before{content:"\E78E"}.luckysheet-iconfont-shangyige:before{content:"\E78F"}.luckysheet-iconfont-shujutoushi:before{content:"\E790"}.luckysheet-iconfont-tianchong:before{content:"\E791"}.luckysheet-iconfont-zengjiaxiaoshuwei:before{content:"\E792"}.luckysheet-iconfont-bianji2:before{content:"\E793"}.luckysheet-iconfont-jieping:before{content:"\E794"}.luckysheet-iconfont-jianxiaoxiaoshuwei:before{content:"\E796"}.luckysheet-iconfont-caidan:before{content:"\E797"}.luckysheet-iconfont-shujuku:before{content:"\E798"}.luckysheet-iconfont-wubiankuang:before{content:"\E799"}.luckysheet-iconfont-bianji:before{content:"\E79A"}.luckysheet-iconfont-qingchuyangshi:before{content:"\E79B"}.luckysheet-iconfont-shanchu:before{content:"\E79C"}.luckysheet-iconfont-wenbenjuzhongduiqi:before{content:"\E79D"}.luckysheet-iconfont-dayin:before{content:"\E79E"}.luckysheet-iconfont-wenbenfenge:before{content:"\E79F"}.luckysheet-iconfont-hanshu:before{content:"\E7A0"}.luckysheet-iconfont-jiangxu:before{content:"\E7A1"}.luckysheet-iconfont-dingbuduiqi:before{content:"\E7A2"}.luckysheet-iconfont-tupian:before{content:"\E7A3"}.luckysheet-iconfont-xiangxia90:before{content:"\E7A4"}.luckysheet-iconfont-shupaiwenzi:before{content:"\E7A5"}.luckysheet-iconfont-quanjiabiankuang:before{content:"\E7A6"}.luckysheet-iconfont-shengxu:before{content:"\E7A7"}.luckysheet-iconfont-caijian:before{content:"\E7A8"}.luckysheet-iconfont-jine:before{content:"\E7A9"}.luckysheet-iconfont-caidan1:before{content:"\E7AA"}.luckysheet-iconfont-quxiaohebing:before{content:"\E7AB"}.luckysheet-iconfont-wenbenxiahuaxian:before{content:"\E7AC"}.luckysheet-iconfont-shangbiankuang:before{content:"\E7AD"}.luckysheet-iconfont-dingwei:before{content:"\E7AE"}.luckysheet-iconfont-sizhoujiabiankuang:before{content:"\E7AF"}.luckysheet-iconfont-cebianlanshouqi:before{content:"\E7B0"}.luckysheet-iconfont-hebing:before{content:"\E7B1"}.luckysheet-iconfont-xiangshangqingxie:before{content:"\E7B2"}.luckysheet-iconfont-shuipingduiqi:before{content:"\E7B3"}.luckysheet-iconfont-wenbenshanchuxian:before{content:"\E7B4"}.luckysheet-iconfont-wenbenyouduiqi:before{content:"\E7B5"}.luckysheet-iconfont-qianjin:before{content:"\E7B6"}.luckysheet-iconfont-tubiao:before{content:"\E7B7"}.luckysheet-iconfont-youbiankuang:before{content:"\E7B8"}.luckysheet-iconfont-baifenhao:before{content:"\E7B9"}.luckysheet-iconfont-geshishua:before{content:"\E7BA"}.luckysheet-iconfont-baocun:before{content:"\E7BB"}.luckysheet-iconfont-shujuyanzheng:before{content:"\E7BC"}.luckysheet-iconfont-jieduan:before{content:"\E7BD"}.luckysheet-iconfont-geshitiaojian:before{content:"\E7BE"}.luckysheet-iconfont-zidonghuanhang:before{content:"\E7BF"}.luckysheet-iconfont-cebianlanzhankai:before{content:"\E7C0"}.luckysheet-iconfont-shaixuan2:before{content:"\E7C1"}.luckysheet-iconfont-xiangxiaqingxie:before{content:"\E7C2"}.luckysheet-iconfont-yichu:before{content:"\E7C3"}.luckysheet-iconfont-chuizhihebing:before{content:"\E7C4"}.luckysheet-iconfont-wenbenfensanduiqi:before{content:"\E7C5"}.luckysheet-iconfont-zuobiankuang:before{content:"\E7C6"}.luckysheet-iconfont-fenyechakan:before{content:"\E7C7"}.luckysheet-iconfont-yunhang:before{content:"\E7C8"}.luckysheet-iconfont-lie:before{content:"\E7C9"}.luckysheet-iconfont-quanping:before{content:"\E7CA"}.luckysheet-iconfont-shaixuan:before{content:"\E7CB"}.luckysheet-iconfont-gengxin:before{content:"\E7CC"}.luckysheet-iconfont-qingchu:before{content:"\E7CD"}.luckysheet-iconfont-hang:before{content:"\E7CE"}.luckysheet-iconfont-zhushi:before{content:"\E7CF"}.luckysheet-iconfont-jian:before{content:"\E7D0"}.luckysheet-iconfont-jisuan:before{content:"\E7D1"}.luckysheet-iconfont-jia:before{content:"\E7D2"}.luckysheet-iconfont-dibuduiqi:before{content:"\E7D3"}.luckysheet-iconfont-xiangshang90:before{content:"\E7D4"}.luckysheet-iconfont-wuxuanzhuang:before{content:"\E7D5"}.luckysheet-iconfont-xianshiyincangwangge:before{content:"\E7D6"}.luckysheet-iconfont-dongjie:before{content:"\E7D7"}.luckysheet-iconfont-wenbenzuoduiqi:before{content:"\E7D8"}.luckysheet-iconfont-houtui:before{content:"\E7DA"}.luckysheet-iconfont-shuipinghebing:before{content:"\E7DB"}.luckysheet-iconfont-xiabiankuang:before{content:"\E7DC"}.luckysheet-iconfont-shezhi:before{content:"\E7DD"}.position[data-v-1682d268]{position:absolute;z-index:100}#barCode[data-v-1682d268],#qrCode[data-v-1682d268]{display:none}.yulancopy[data-v-1682d268]{font-size:16px}.baocun[data-v-1682d268]{font-size:17px}.el-collapse[data-v-1682d268]{position:relative;border-top:0 solid #e6ebf5;border-bottom:0 solid #e6ebf5}.el-collapse-item__header[data-v-1682d268]{border-bottom:0 solid #e6ebf5!important}.delect-all[data-v-1682d268]{position:absolute;top:10px;right:30px;color:#333}.push_btn[data-v-1682d268]{position:absolute;z-index:100;top:5px;left:3px}.push_btn .iconfont[data-v-1682d268]{color:#000}.add-collection[data-v-1682d268]{line-height:30px}.add-collection .el-button[data-v-1682d268]{font-size:16px!important;vertical-align:middle;margin-left:20px}.layout[data-v-1682d268]{display:block;position:relative;margin:0;padding:0;border:1px solid #d7dde4}.layout-left[data-v-1682d268]{display:block;position:absolute;padding:20px;width:230px;min-height:99.98vh;border-right:1px solid;border-color:#e8eaec;background:#fff;border-radius:4px;font-size:14px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;top:0;left:0}.layout-left .field-container[data-v-1682d268]{display:block;position:relative;width:100%;margin:0;cursor:pointer;line-height:30px}.layout-left .field-container .aRow[data-v-1682d268]{padding:0 10px}.layout-left .field-container .aRow .operation[data-v-1682d268]{float:right;display:none}.layout-left .field-container .aRow .operation .el-button--text[data-v-1682d268]{color:#333!important}.layout-left .field-container .aRow[data-v-1682d268]:hover{background:#f7fafd}.layout-left .field-container .aRow:hover .operation[data-v-1682d268]{display:block}.layout-middle[data-v-1682d268]{display:block;position:absolute;left:230px;right:230px;width:calc(100% - 460px);margin:0;padding:0}.layout-middle .excel-designer[data-v-1682d268]{display:block;position:relative;margin:0;padding:0}.layout-right[data-v-1682d268]{display:block;position:absolute;top:0;right:0;padding:20px;width:230px;min-height:99.98vh;border-left:1px solid;border-color:#e8eaec;background:#fff;border-radius:4px;font-size:14px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out} \ No newline at end of file +[data-v-57fe9f5c] .el-color-picker--mini,[data-v-57fe9f5c] .el-color-picker--mini .el-color-picker__trigger{width:23px;height:23px}@font-face{font-family:iconfont;src:url(/static/fonts/iconfont.ba04816.eot);src:url(/static/fonts/iconfont.ba04816.eot#iefix) format("embedded-opentype"),url("data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAACJQAAsAAAAAVKgAACH9AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCObgqBghDoEwE2AiQDgygLgVYABCAFhG0HimMbCkZ1hhxsHACQvM8iooIUIPv/vyU3hoisQDP7oxQspFSOEhyEI964SGdpHgbZQdChvkX9Xd97nQ+VaIq7d5noG8yfVj6tSWbtWNLPqLzFBpnESCbt5xn252+nSxLNW5sNpeTh+f39/481976wz7uPRtUHGDrbrw4ZrEQ+o9sQS7AOLVwR9wAYHufsX4sltIw2UGCOWN/DZAYtWnRGXhjMYFsLlBOm6ZgkU7ixOUVm3hSYSZmdcy3Ttndf4ESBU8/fv9PPcyR7254j2T+y/RCTRQgUIXDBiWYbMHXqvsls3dZt8yP9Sr8UeI/jYBECy2DQpVnHImNkw4UQi/rrnSeKbo3ABwpVbnt7MIAxZW53t9DyQ2dMry7DVAd+ALjBeSGPOIh9Xfq3yXEPE8N0ZWvf3u79xy5A2HKIRLDVxEQAD/zfm+lMLBjA+E0Di+KU9uanlEK1W7V0DFgDrXU7yJ4lXCBcov15demKDpPSOimby7C0sjnTlu3++0jcl/hgIbgcAnwn3BBuFBeEGwh8Vjk7ve+1wbkBaZxrn1Lq5im1jRnWZJnalH2IbiaZdvxjNFLYNjjuGFPLYXaXebSkr0ZxoxJ0Q5TYn78moVKvgrRuw7Z9FDmzmGDZtcsXT1M8rfKIsqS8oZTyYT6c9itRHs+EAy+Rv59+NScRhJKM+eKuC+vPAT8+K8geLvKTY47JsOvG/iMyFJATC6ijaZbsa6IgU/laM085SuVr48fXBUURyyJFWuHz/9qJHr369BswaMiwEaPGjJswaUpBkxmmzTTLbHPMNc98Cyy0yGJLLLXMciustAqEYARlstgcLo8vEIrEEqlMrlCqyA5ptDq9wWiiOkVz2mojOedguOBye+g6Dn+yRq069Ro0atKsRas27SqVq1KtQolSZUIm8j+eVMpcWg0li2DyBubHB6OHH1/08uOHPn780a+QhKGVCLQRhXZi0EEcOklAF0noJgU9pKGXDPSRhX5yMEAeShRgkCIMUYJhyjBCBYxSCWNUwTjVMEENTFILU9TBNPUwQwPM0ghzNME8zbBACyzSCku0wTLtsKIDVnXCmi5Y1w0bemBTL2zpg239sGMAdg3CniHYNwwHRuDQKBwZg2PjcGICTk3CmSk4Nw0XZuDSLFyZg2vzEGMBbizCrSW4swz3VuDBKjxagyfr8GwDsmzCiy3IsQ2vduDNLrzbgyj78OEAPh1CA0fw5Ri+ncCPU/h1BvWcQy0XUMclZLhKi1S3hrQYdRuAPLdQ4A6K3EOJByjzCBWeoIpnqOYFaniFJG8Q5x1SfECaT0jwBRG+IcoPxPiFIH8Q4h/CBNnZNvqzb/2Hgm+XX6shAPDIDn2nEKAqnKGBUOivZA4KW0gZvafr3BQtvdGQKGOXK+jxMuHo+RqAUxEBRoTkYwZwmLuk6nyIpr4UPapkojiXpKlDRMhw0F0ARQPDTMn9UPjbkHEt+m4NOCLsVWbo7ZitUp6Nl3YnrJ8iAvij7nsIRSkYT2AfwVuji87qVBm1Q5gVmYuFsYgqpu1Vy0P4b7e3HTaoWtKXAeiIq9rtbDfJnFEJ3yZ5C9vMFqQ4rUyz9jyEsVO+bind+meT82iX3uh7WLtf/mNHA48h7jF5ypzTlCQcv5ubeehZSly2XeCJ32vWw0QsABZSz1MRvFzCulXrUUotFpgPLHGctww3N2IaitXjWLBtPW/2mW0J9wozblPnTXu/syRwarVqYG2kKhiLdIG7JvyWsZA0S5cPgxEReXFY0nvhZ941sR0MJUHkFQ7CcX3kV73dn/vD9HnX4zD1iwl79nujL6+lfhIthTEg9FMWn8HG31mJYxBFRLi2SxRsAwoSjCwtLT6/QJHjxcxpyU90trhORYQlNEVoAbGpu2GbosgBG5OkOGMFEfxEaXYgF207EO8w4/rRVbtzcBw43CthsjtfCmL0OBzGXkRcHeMaT59lMFjZVw728rXpog0WMNByJpe9kcvkvWrDIJPwkHN5yI1nKJtnLIbJvJ8CpC0DZRiQThkg5CyOqcHwGnJsLMnghmXYs53/HpcMFoqT/eerkoBVBRRvYxNPHyNNQeQAMCbForbAXiTgZZUEjueAtXnoH7H9zuDi/f636fbH3VdPrdw7eOuDvyN3Drx9st7snrvX+5YNXiGOS91Vux7s+nvhzs3tVjXr8khMzBjJllUMimyapCU9KmwhxrSFdmeVw/5mgCsEvEiy8ZkC1iTTAU42MpStqBEbthqWYkhbLgMBaFuGFwUJmsImfqFKWJCxL1r8hd02vNVOgzRus/VWrCjy4oKdpn6SKxVsiIkZw6rhBYfJ0ioZ2Yyr7KrxWsTdUMmVwKlGtwrS1ultYU0lJS1djQX9BLXJhOoliVrLa2MGmSNLpp8EEYQaEbKMOzWImr1XRLBD/hlFJXG5xhnaCoujC6vDbSYgxnlndOSqiujC2Qxl22EM0UsdJhFI0OZT0U9VILjQS2YtDWPPEV0vq8QfBoKrSKAHyyJalTzpy92Iwf5WDXQ3S/2q3vzeMmwXM+YKRAR/h9PxHVkIvwFsEtzcp+DwLBJ4+XCgqUvB6/4bz4T/Pc73+xR8db87+loFX5KsNIk0O+CSUDQjKiH6L+5+++17E/2rKYc7xznuge8C/0LnW2+dDjxMwe4J6lXQf4PD6zuA0X/0TxRc2riGZNwIx/9/llacjXLVM+x//fV0X5b0Rg803Tl6ZlCLGA4ElEGzGAlFrfbrXd/hJgPp8rNuV+c1+a1er/vwe7Xu7jetCgFvHT04vKLIQFoyXtkoqm5Vf/VgZW/mmwgdUXO134d5bvrXE1+a/NVUpZ53p2sTjcnqVPtlUiRo7hHBzVpuzpDaVDNCmVqWW25HVLJeSgtSp3EcOaIllJZKSBcICf+RFv75kffh00vkrXbCrXV/bTPYWNHBp6fg1kF4dBb9z0c6O8Bb2Qg21xD9vXmtro0S8MjcP2KMGNpoenQ72E1bWkjTZVjZvmRt7mLW37vKQOMyw4vZDtO3GVuded3LdjpJXAzjlahVT9a3OoXav3vXV2/d/cOl/f7YnwY6uvl2oD7xP35241LkqBHnj92H97tjh/3xPw9eGF/Va1d0utVZdao7gzf6EvWmvRYH5rLnK+YqfX2EgUYrd2AoN80Jtw9ZarlGYyE1x52d4/fqIPUEru+NHhlOvi8J6agxKY/J4glz+UkpF7jsMZnv/i7HCrHXkhldR60gA2NqEQBm0U7RAJic1QK4pFWF9GUBqGRNBQJ8CNrihUe0miylfnEoCRxHOMClR93J2HOqhI00VPNASU9MpGFcaFgm58huxFU7jJuGt3PZ3tpDk8P1taRoP1P7aUlYIlwOG6QmCpuboJumMlQsukPbI2cFN+egEZ0/61w+XF2hXLC2Lmej40W+LYdoKBKfSVtT0swQMvpJseQMBxjI1KBqVyywFVhYMyxzwcmtM1CLYbGwWFElDpCgiiqMKEXPBlIPSwaVjUKzllM/IVLiJIlZj+jsgDuXL25S0BWnKLJORTFz2coISy7LOIkSFzhN1z68pJA0g1KqkGlkBBAUREHAtGEin+IneJbKmjRrpB/LAgto2GDJRzPoJg1fEUpAPpsztNSLYWdVoew0be76e8sCijlqVCgZ5PMKhFDDoyYb4+0bLAEVjahP/nmqqrOcsTFjGX++lJObZLTOHDQpSTQZU1S1o1/eiiYbVAELF8jkebSh/cISZioQkoInrF2ENKuGiibeiQ32kSLQjTJWs5YFMgsAFQEzw038skAXWVcEJVHAO7VZVZTUykJGxVtZ0Tl9W/opzIh4uUzZqVExcuaNHOSbxrI2Eg4uthqa52oFfWWW2Q4heSUpiH52C642GsGGhbsRFkecw7h2mgbYSvmpSEY1nXPsZg1+aV7KBf/+4iwlzyex258/q9mj2QIvHBd26NZn7uaVRmqL4OrxYcGbauMtOztwKOj3/cGAez3ZTR+lv9Hc7bQqtBMqbMacn7IsEMBh5YURAn2N5Rk7h07xS7obDn5diqFxQh6rCDk8xkjjTYkF+bAS8poqltS3pJYMhNWhBrUstOcnaBMgHJmVemgECca+aasAoYupWuHBignS9J4SwxIAP0341LMF4jSz5vc/7xPUziYygdfZwjnK5DHnAt/tfrNfpTkSEYau5xDqt9ZFyuB+v52hLC1sqE0AMwt2kkapL5b4qUpGJZ1z7CqGpv3Cz15svDXnOfox3+6FB4Mf/eNT77PwC//z+kusDbwCLURGGwlyqJxNTa0nZfoJ0bRzWMET6jFryDx0AnJCmX64NG/Quj4xeW1qYmh6anhSA7PHAwuXrgvl0bY5Q7MW2r8kWMbi9V8hsBZsCtA4rsnxRwjm4hTqYaWHBFMjXZSAtcQEAQ+eTUuG3QhyeHFzrujQftvWxv6x1eNeDPth7aUUwlIqbDO9d/L2ofCjkoiAwhlKXN9jUGNnpS3QEUNa4WYl1OeEFEDI9eEacreOypDOYV4Ny/oY9qoY6AEI8zOzwIORYbwvlvQ/HQdHIgOmYl9YT1nhKVmRLmMsR5UkjTam5TIel1mMOUGExd5CbDSTcRZ67+rFhgwIn9LsRk4bWNNK1F9nRCGOJXWqiAnRilfl2mAVHTsoWU4vApNEqosFOOBsz9+sTdTt6lRjbmYF/AU3vJ1wz98NtuV1ss5Bc8xY3bnMoJdOqZPm2m653wgTT00+cxhlwl2wpLBzWai+ZKGtZvPfcVmho0CCAM2oXxSolLg+brA5qgE4S7xUbShb1ticnbHa9TiEZdh1Nkil1WvX6sZwVyCjRiK9tOktC+zv1jxr3RrRSqHqD74YMOwk4qnoL7YZdR9qfiVlZyzlML9goAYBzJTtBA3ASvqpTkYFnXPsZoz6y96z83f7jk/sDLpf0hHYdXvXXTiad2e1q7qP9txeI316T4aZVefu9B4LaVfdK5a1BVttbXfU5mC7pjPo8IlLtpjO4DPhHfTZ2z0nx19ME+7uuh17Ex453Xc3+vjUC7ZLZyZYMy132mzohrrrVO+dqGOTApnr7z7kHw3IvrsS6V3fY5G2b6xaTMrdbqg3FJfpAxxKXFJmyU8rfG39hsnv1isdlMFQZ3ioC4xlq4qpp+QXdl/SnW/RK5yMUgnqddd6JWU4wP496D2vOq9FRxd5e72/ohCPAEKocl+TQKz1OUxMkoF0xTZFgVI2mXg1WEtaapSJPOLfwitO+aYRV1xBgyUbvU3ekV2REZ8L7SGiE1pJaNQilbIhalQhbWOerTULv14WN0VJRfLvHvps95YNy25Nu+WNZf+Qf5TvP+afrpge7N/2vff3bf7B0/0LfN+D3DzgO6wa9h2QDQY9llXyq2f9OgiNuVxjKAjlvnq4Fa1R7xGpgMzBrNAKUq5amVMgBIOJIiAAIRqsEUEERA7hJBgiELlskRauDA8YUnYhK4DoZpII7p9r1IgMZNQWDLFasJCbLSCPEzCPBY6ntt3IJ8aCAui+tKQlftx6xOLm3UYj2U9CeVmZHJ7WUtsZwhLkqeW1fm+F7n/AY16g8WoZpMx9j67AigwPadbUh/qZhsmetTqdKqga1/x73VXq+6vXpi8/uNjww5R/n4akT/GcV6Tz8sZuz50601Oa8T2mK2jFd5UUG8FGstI6IHCYFoBTYAwgLQLx6VdJnooVUbrxVVcuK1tb+nye9/VGtZ19yZ+BxyDltEDj6uq6R6/PGhm9ZuCI2+UKHE3/9z27Y/KI3Z68PBDE+KMqoiuZypC71diyfWvWsFTju19kwZ9gE64Jej6JIO0BdjKiih6ESUq/iTW0spnFlJM3+Q7pc4Q64uOcNqrNR7j6gmGwcQJZs4tqq2lH7mHg5BBCbeYXW4brrJsT1TecGRadbwbhKkF08Yvgp4P3P3D1zkfzc5Zdv/7t3ICh6TOGgr/Ly4Nvvz0c/OkLoq4woKfn0SPwYJ+zXKI4lB5vjO5SR8KqKpU4y74+N6v5webqKjYZoh3wSQvo+SGCdAQ4RO1gBuB4vQKN19trchPY8kJ6LAi7WRECd15dUHhrS/T9ApzO+jW5CjC5cjC5CjK5CjO5CtRPLnIQNhY84Mh+wi0vLZW7SdtNjrzjM+xzh7KlgVvBKmmjbCRUjWzCSoeCMRr1StxpjMKhxAtJsgLAm4eV+gajHvRPv9ULgebHfzyuf/ftNc/t0HHbWM9r33533aNKw4LdHnfvStvapNEz4SfVdzwl+9gQs2slZPhfUAiuan97rWTgRyLrECouLX5v27sh0YE+7xU/3umvLdfKcosIXTHsf+nrprCXXy0+Vj5TO/vMZtB54kATsWbc6oOLjz860Lpk51bf4uf/33x1YE7FWOXYnK2503deXWs2xtVf2ST71eof6PP+5PCf6nW+9duyS1IS4uo2H534a3+wuizq96U6cs1F4g5cEREV7Q0fFg/mXnmeNXVDL7xW/Jwgcm9MuVds/2t2eMylrN+rV56fV8IsB8UVwz3HnwqVrdpSEB2WeyOhN/yS+N+qa2/G8PKSbWt1rUllIDtkFpIfkdtKZpU0Fk0un7Xr2mIjM+KAk7Mia73fvMFOiYceOAcFQOEjMC85vtJ76e2psQ2hK6vzLysVv/eZ+z7qjGt8fv1386an13zQ5clxrZVrW71983PekhWVFszxeKuorKzoLY85BaVFsre8tlZLWVbaQ1axpmpJlcRk6q/axALWbnvxwqbYNAOik8YCML9ha2iwxZ+DqiCKexSYUOZ8p9wZv7PvV3x+EYgwRlIMhKI5kdXjFJwceAD1+2MIwV8gDmwtMcdcq12+pQTJ5S82ZVVMPfCf8r//+eA/f/+9/4P9+69fr/cC2b5Iu1Z2Le0Lg7hqStFULQg0QvnpmcEzTwefmRE848yD4QilFHuKm8UcRyjVCpbCYRo5plpiB6qqFYWmgIXNpq640FiMR1s2PmW6+9ZnMESl2MgWah/Oe1CWEGJvDki5womJVbgULRSgWhSjyDVGWiCthIMY81tYPon8/nustCuZOdB6Zb+/nxciHRIbmF1EptQHTakxydJfLace/Dic3Ji4f5lP5ptgQYHyfx9RHt8WztB/EqE14wtXdqQuBKuk809mLvPZv4pYTnxC++9YOLLj5T/vbjGbahK86/veuJHj+aZX/qIcL5dXLgis3k3NNY0jJnDK8uWr/gazqLkluUPEG/XCWjzNQ1ykUqbIVmp/889g83LBGiAKDxWs5GFjsERtIBxExzvGyLnFdhhajG6LEAgTHYVc3ixCFWBAJpaYKECZCIZCRNoJN2EnUXrL9lAEDOJA/lnFSzmH6rFQtlObGZXEvDHBu+KAo2cSI1zUdELR0qf6kIk+dALDatG43ilcPZFToFMEa8sbLgRi8TCGBC3u/YcQAlsDBKFALwiTq2zfMko8ZFAy337xhWVWVrf+n+n9jnDHxImm9bW4PfzseMJBAlLeYxCsdwg1zwACyGapSAfQQKuyVQEVrUorkl+/Ln9EEHODSjxfF/3zZL9mHXmXB7yN2NI+CMtqTAQLiFkQwwcOjyyJhj4BRRSAURrK33xTjqJrOYYltqM1HHRhkFdxTJE48CMAvoAn6QkgsAM1fia7v+U5OTT+Kw4J/rKg0508Y2UghwGGEDAAqoEVQJqHPAj949VEi4XOyJPl09NPq3BHVXcTOah0kDsBGI7L90tDubkvN2pWVXyaX36c/QySkv9QeqV6ZHko65rDawLS1gV47quT589qkt5aEZyjmyHTrp/v7bVLmuYxt6TRHw3PaV6epS+vnrYmIKJTiMhIygpV1m+gmjwy2QDPTI90j7kXPCjQ97m2z8s7ydu7L8czOmDJKqV32OJVERkHd5fVl8UtU0as7TtSOzeGlTD6mE0b7VOFKHbDQASAooCENSuqqrnQEA5HkazOne8zcn/dsuMtGoABvHZ857rakXvcXDm6FnQNyRVsHDl5XpNO5TjoaHA0OA8e9//zSD0AtIKesGAjXeaUSNMPJkQ1dEc3xJ+1SEG5897M8+upO+UtOIiemoCT1iLADEPoAtwN+sbf08lJUdeafnDLCOMzaQG5kQtaAfz1+uAgF7PxCovM2IzMPOLNmw72u1jMngEgipJSQCEFHq3UODopmthhoyuQUrFiDWR/CAsxFceov5CCUWhSMxkYJSE53uOkxgWUikXXA4UQM3NYQqDysQoVjHnTfh6SdkIlMjBSGGUG5EWTA9VgWtpa5kgYCXuPUIqGKjyThGQ/TwE3bx4jrBGLvRkKqyqKqlHyTNY1Cq1ZC7tc0GVRuaFbwCJ+cBvUOEfHgYJAAMDIIb95Fc+z8ezyVIQkc+ob53jMe9ngNSdNI6rcKhUIsruCgCpFPsh1XBBP8CdQj+OD9DVqynuLtGpdA8ybFV1xgeYTrPMggmLA4u+TGJgARqtGqWRpWlrqs/ljKru+pSV7Jchn3zIkw6v3QrMbNtUOPLYJg5c6nL69X8FK+Lm9BidOl8clzK1OmPOZVyRZulSikxRdRYPeO+BtBcV+q1y0LA6KmpkES80lCPst0kYGkR/YxQUGmyKX2w59GzNIX9KNiWa6umosZplQMzt58gyPljnIOeggfMngUgD25nxvSGw0JhrE1XsUYKmjtOQkxh/F8zxML8gfKiycDpxGAQrqveN+sWF2PWLx5IDRvSNsMzJhADkBCSPiQ/hQrRqDY0IgRtiNMx84AQKCM6REUp/+EYexbbKDPMThGDiwBpjy/0yUWVHBKNcJSZMJU7ixUGu4pUZTy+1loQjVcqIIQm3nDQiIAmIYhEYvOu98saDwik5SU9MBc3IrFtLpC9OOKoeqJM5mPHTh6P+V0GTBIegCY2Clqe1XDmUHYadatMrCxFyiAc6rAct8bie0rk7gQQJ7hHSNOm0RrC2kp0wprKit1VWMG6ej65Nki3x1votkJlWNjvZJNTWRPXR9qOwH0WG84t/0UaRVubFbZUQdiAFuF7TyVkBzWkIGeFFY69JUOmnxEc2S+AH1wyVO/OGfZMeArQF/JQ7124ZsPzr6T4PA3cjFA4hcic+GzeaHQNyuO+97SyAKkIFAwkNercYM7n0ZmsaxxvZRq6r4Wu+hvgzXtZddVykhe3b7wfqwEboyOvrolAgozY58zO7QZes02xfP8fQ8vw0x6BObGZmfXiq69JS8iBxJVaG3d5VuUogPbu6OVfmGfVUe7qVnb2T1wtSdGkcE+FDo/N40zvcniVJy4oSF1O9vrpjrWxge7DnJesHDF7T6LAISibVHT/5dV3mR1J+52EpQ4zr9wgnwk27pIJDk7BFLQ2OjIVHck6MAg0vfPFmCcfzHPI8yCgqGdLrpQLyTgbx9obsK+0T7VOHurVvlEP2EmnDJuMzgIIMYAULO5m8rHvIb+pMdKybZ5LAiXDgGNrCc6RO/oOwdZVOBTlr5EAZjC4Fsje3Fc0f8+f7SEhsY1WCIeYzwTSC+W1EQrl08L6gDQhQnLAJd8LmSWmTG7Dkr9JTX1+YBPcekF90Yv3xS7ZF1BolMb7JQ0vpy4AJldfnR+TE04UtuIbAE+9nJWykr+aoYOw2UNJ07Z5PwCdICJ8cghmcgdqIhwNJ2P+Uk5cRb4Py+Mk9cARQrQSMvp5HnOJXiTVRqPpQgUcvvJeC7oM73BUnLrOjJmJiXPEHJATAFnIIAl3OghBGIUSY9bYz3V40SylwSSfqhhGhjl3ri0w5KML/r/qzzzZsfPBj4wQR5IgcgUFfQPCVWLWY6/yIRjYxYX8i/KYTPtz7E1CGC+KZvFityPSimBsHHspyhHY4Ea9JTVlLZD/S3cXFoua08ipA2ZUl/6YTcciN018In//sI6ZPY34t++VZ2EKMXvbh+tWZgtCwUymgLeoEHDiSfcutLTGWGYH177hb9D1eSDoC6g7nt+hB9mal0zcqQ8+dCVq4pZctvNuZQrpd3KjideBrUncm5joMNWWzkTp07HxJu2Lm3p7b+9yXhP6X9FL7k9wW1Vm5nJbNzX0D1xaE/pv0YuviPytqjezuiHvjnJFjioyGWhCnycpOIqFmzPw935F/u7KGiefzHU7PJsJIxm+oLT7vuSxDvhJvm4GU9WsmJXFwT91wVz0WxqN/4InyKPED28Oa45TfEK4vofywig9ELs37TZzIS6AFW0asBfD+Bl0ZluWtLMF5aQJPOiB5dUaw0kSuj06yKkjiPuEpYgkQyAzq9NTpoagqOtUVJmbcmPuwai9Rk+jxaZTzF58ZSHszNJBzv974QWFRdsirDUVzZbJejLnPestqahDO4su66JTY1DQfc0PEtgYeLf+LO0PVAoKypqWLhaVqr/iFb1GUViByfHX3/7fvb2PvoWTo3W/a/V+Xg24gY4h2eoXLtG0v8J6/Q5G7/4/1fXs4MXclf/tr4v9BUxr8SWIOEK6nfoKEGKi/dFKG70Q9dS1sSqyTlHs/eHcr0uDPlhpncVXCXqDLPXarcSnelKRvfvEqTO3gpr8CkJzbupN4H7lDrIzGjmbLA5K7v3SVa/e4uVZ883JUOpKYWq4ymqZdX44QQscublFMr3Kszrq4L/6DVASY3Ry75j1OgGXldVLdzv5FxYtEg/NpzjH3eT3LNvzZbhsMg+TiJxzYWLsbxsyx72g4UrVyfVuOEELHLm2QPS61wf/dx5fvif9DqAFOE7uuw/3EK9OTzuqgSMN8CJ9LlRRt+7TmiSJ/jpSe55l8ogsNlluQjfU0e21i4DOr4WSKrPqlQlE+vsuVRUGm+/hVMTlQgRUyquPCfLBIhKf+ocWTNAUSYUMaFVNpY54MwipM0y4uyqpu264dxmpd124/zup/3+0EIRlDmNyA7zeHy+AKhSCyRyuQKpUr956J3Sac3GE1mi9Vmdzhdbo/Xd4mu7CdgT7jsIBHfNOnxK5LwGpg7Is2O1qchGwKJtOpx7UkHYDNqFLareKlGvW6jB2wxqHTEdjk7Be5A6lUS9ZsmUTRrgTrgs4kUIS66zKjoYP0eJdZv9oBrk6h1Wi+CQ7YPrTeMdFFwNAS8vxHbMDU4oEdA9uGO3CAHE3tOsF34nyjNUQecB6TjXuTg9CRvZ6qinGiE7PdBrJzfbN+OHZRCH9XKaNUE0bvSGKvADWWp1UQW30lsgHXsnAQccMkB0Mm6jIjXmOYSR8tIBa0TtscZhSXwRiR01h0pa+q/xjnzhCOxPb3zvCsK95kGEzJmqYuu75oc34nPZETBkHtIT9WQvc4F5XRKN3pvO5Y/BBGL5ozyoVk98es6kBqNubiJOhLw6hGcIPio7iEyAqVNzXS4aUEBKJlmLQRtCozmvHli7F653tyaWBGHzbaolSJOwZZ4V0tFTKACGXekU6Bqm7QAed+iww8VFkX58zAzHFucbafUNjil+sP34TuWxtYKfmG7SBJFHZlAEMLiog9RNjRveXWXDVCP7ECWFoMjFSqYBqRVLiHLawKexYYOm9Up8DYOiS+8LyU406BGKXjmLXDgnszuGReg5dDtPO8bmeVfeB/4ZIth3LFCerstGoCr/aDNrFJvUtISUq8D4aJz4P79C+bBzKI4cTZp+Ld4QTOPH5WMp3CILztqe8OmOVMfVdw1NR7DqGs8k5RtPlQ2hmWME41Ku0b3VBbyKBqcBcHh7OgJAAAA") format("woff2"),url(/static/fonts/iconfont.cf8ecfd.woff) format("woff"),url(/static/fonts/iconfont.111271f.ttf) format("truetype"),url(/static/img/iconfont.c6ec5b6.svg#iconfont) format("svg")}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.luckysheet-iconfont-lianjie:before{content:"\E7F8"}.luckysheet-iconfont-dayinquyu:before{content:"\E7F5"}.luckysheet-iconfont-dayinyemianpeizhi:before{content:"\E7F6"}.luckysheet-iconfont-dayinbiaoti:before{content:"\E7F7"}.luckysheet-iconfont-fenyeyulan:before{content:"\E7F2"}.luckysheet-iconfont-putong:before{content:"\E7F3"}.luckysheet-iconfont-yemianbuju:before{content:"\E7F4"}.luckysheet-iconfont-biaogesuoding:before{content:"\E7EE"}.luckysheet-iconfont-zhuandao1:before{content:"\E7F1"}.luckysheet-iconfont-youjiantou:before{content:"\E7ED"}.luckysheet-iconfont-caidan2:before{content:"\E7EF"}.luckysheet-iconfont-tihuan:before{content:"\E7F0"}.luckysheet-iconfont-dongjie1:before{content:"\E7E1"}.luckysheet-iconfont-jian1:before{content:"\E7E2"}.luckysheet-iconfont-jia1:before{content:"\E7E3"}.luckysheet-iconfont-yichu1:before{content:"\E7E4"}.luckysheet-iconfont-shengxu1:before{content:"\E7E5"}.luckysheet-iconfont-neikuangxian:before{content:"\E7E6"}.luckysheet-iconfont-qingchushaixuan:before{content:"\E7E7"}.luckysheet-iconfont-wenbenxiangshang:before{content:"\E7E8"}.luckysheet-iconfont-jiangxu1:before{content:"\E7E9"}.luckysheet-iconfont-neikuanghengxian:before{content:"\E7EA"}.luckysheet-iconfont-neikuangshuxian:before{content:"\E7EB"}.luckysheet-iconfont-zidingyipaixu:before{content:"\E7EC"}.luckysheet-iconfont-logo2:before{content:"\E7DF"}.luckysheet-iconfont-logo:before{content:"\E7E0"}.luckysheet-iconfont-wenbenqingxie1:before{content:"\E7DE"}.luckysheet-iconfont-jiacu:before{content:"\E7D9"}.luckysheet-iconfont-sousuo:before{content:"\E78A"}.luckysheet-iconfont-guanbi:before{content:"\E78B"}.luckysheet-iconfont-xiayige:before{content:"\E78C"}.luckysheet-iconfont-xiala:before{content:"\E78D"}.luckysheet-iconfont-wenbenyanse:before{content:"\E78E"}.luckysheet-iconfont-shangyige:before{content:"\E78F"}.luckysheet-iconfont-shujutoushi:before{content:"\E790"}.luckysheet-iconfont-tianchong:before{content:"\E791"}.luckysheet-iconfont-zengjiaxiaoshuwei:before{content:"\E792"}.luckysheet-iconfont-bianji2:before{content:"\E793"}.luckysheet-iconfont-jieping:before{content:"\E794"}.luckysheet-iconfont-jianxiaoxiaoshuwei:before{content:"\E796"}.luckysheet-iconfont-caidan:before{content:"\E797"}.luckysheet-iconfont-shujuku:before{content:"\E798"}.luckysheet-iconfont-wubiankuang:before{content:"\E799"}.luckysheet-iconfont-bianji:before{content:"\E79A"}.luckysheet-iconfont-qingchuyangshi:before{content:"\E79B"}.luckysheet-iconfont-shanchu:before{content:"\E79C"}.luckysheet-iconfont-wenbenjuzhongduiqi:before{content:"\E79D"}.luckysheet-iconfont-dayin:before{content:"\E79E"}.luckysheet-iconfont-wenbenfenge:before{content:"\E79F"}.luckysheet-iconfont-hanshu:before{content:"\E7A0"}.luckysheet-iconfont-jiangxu:before{content:"\E7A1"}.luckysheet-iconfont-dingbuduiqi:before{content:"\E7A2"}.luckysheet-iconfont-tupian:before{content:"\E7A3"}.luckysheet-iconfont-xiangxia90:before{content:"\E7A4"}.luckysheet-iconfont-shupaiwenzi:before{content:"\E7A5"}.luckysheet-iconfont-quanjiabiankuang:before{content:"\E7A6"}.luckysheet-iconfont-shengxu:before{content:"\E7A7"}.luckysheet-iconfont-caijian:before{content:"\E7A8"}.luckysheet-iconfont-jine:before{content:"\E7A9"}.luckysheet-iconfont-caidan1:before{content:"\E7AA"}.luckysheet-iconfont-quxiaohebing:before{content:"\E7AB"}.luckysheet-iconfont-wenbenxiahuaxian:before{content:"\E7AC"}.luckysheet-iconfont-shangbiankuang:before{content:"\E7AD"}.luckysheet-iconfont-dingwei:before{content:"\E7AE"}.luckysheet-iconfont-sizhoujiabiankuang:before{content:"\E7AF"}.luckysheet-iconfont-cebianlanshouqi:before{content:"\E7B0"}.luckysheet-iconfont-hebing:before{content:"\E7B1"}.luckysheet-iconfont-xiangshangqingxie:before{content:"\E7B2"}.luckysheet-iconfont-shuipingduiqi:before{content:"\E7B3"}.luckysheet-iconfont-wenbenshanchuxian:before{content:"\E7B4"}.luckysheet-iconfont-wenbenyouduiqi:before{content:"\E7B5"}.luckysheet-iconfont-qianjin:before{content:"\E7B6"}.luckysheet-iconfont-tubiao:before{content:"\E7B7"}.luckysheet-iconfont-youbiankuang:before{content:"\E7B8"}.luckysheet-iconfont-baifenhao:before{content:"\E7B9"}.luckysheet-iconfont-geshishua:before{content:"\E7BA"}.luckysheet-iconfont-baocun:before{content:"\E7BB"}.luckysheet-iconfont-shujuyanzheng:before{content:"\E7BC"}.luckysheet-iconfont-jieduan:before{content:"\E7BD"}.luckysheet-iconfont-geshitiaojian:before{content:"\E7BE"}.luckysheet-iconfont-zidonghuanhang:before{content:"\E7BF"}.luckysheet-iconfont-cebianlanzhankai:before{content:"\E7C0"}.luckysheet-iconfont-shaixuan2:before{content:"\E7C1"}.luckysheet-iconfont-xiangxiaqingxie:before{content:"\E7C2"}.luckysheet-iconfont-yichu:before{content:"\E7C3"}.luckysheet-iconfont-chuizhihebing:before{content:"\E7C4"}.luckysheet-iconfont-wenbenfensanduiqi:before{content:"\E7C5"}.luckysheet-iconfont-zuobiankuang:before{content:"\E7C6"}.luckysheet-iconfont-fenyechakan:before{content:"\E7C7"}.luckysheet-iconfont-yunhang:before{content:"\E7C8"}.luckysheet-iconfont-lie:before{content:"\E7C9"}.luckysheet-iconfont-quanping:before{content:"\E7CA"}.luckysheet-iconfont-shaixuan:before{content:"\E7CB"}.luckysheet-iconfont-gengxin:before{content:"\E7CC"}.luckysheet-iconfont-qingchu:before{content:"\E7CD"}.luckysheet-iconfont-hang:before{content:"\E7CE"}.luckysheet-iconfont-zhushi:before{content:"\E7CF"}.luckysheet-iconfont-jian:before{content:"\E7D0"}.luckysheet-iconfont-jisuan:before{content:"\E7D1"}.luckysheet-iconfont-jia:before{content:"\E7D2"}.luckysheet-iconfont-dibuduiqi:before{content:"\E7D3"}.luckysheet-iconfont-xiangshang90:before{content:"\E7D4"}.luckysheet-iconfont-wuxuanzhuang:before{content:"\E7D5"}.luckysheet-iconfont-xianshiyincangwangge:before{content:"\E7D6"}.luckysheet-iconfont-dongjie:before{content:"\E7D7"}.luckysheet-iconfont-wenbenzuoduiqi:before{content:"\E7D8"}.luckysheet-iconfont-houtui:before{content:"\E7DA"}.luckysheet-iconfont-shuipinghebing:before{content:"\E7DB"}.luckysheet-iconfont-xiabiankuang:before{content:"\E7DC"}.luckysheet-iconfont-shezhi:before{content:"\E7DD"}.position[data-v-1682d268]{position:absolute;z-index:100}#barCode[data-v-1682d268],#qrCode[data-v-1682d268]{display:none}.yulancopy[data-v-1682d268]{font-size:16px}.baocun[data-v-1682d268]{font-size:17px}.el-collapse[data-v-1682d268]{position:relative;border-top:0 solid #e6ebf5;border-bottom:0 solid #e6ebf5}.el-collapse-item__header[data-v-1682d268]{border-bottom:0 solid #e6ebf5!important}.delect-all[data-v-1682d268]{position:absolute;top:10px;right:30px;color:#333}.push_btn[data-v-1682d268]{position:absolute;z-index:100;top:5px;left:3px}.push_btn .iconfont[data-v-1682d268]{color:#000}.add-collection[data-v-1682d268]{line-height:30px}.add-collection .el-button[data-v-1682d268]{font-size:16px!important;vertical-align:middle;margin-left:20px}.layout[data-v-1682d268]{display:block;position:relative;margin:0;padding:0;border:1px solid #d7dde4}.layout-left[data-v-1682d268]{display:block;position:absolute;padding:20px;width:230px;min-height:99.98vh;border-right:1px solid;border-color:#e8eaec;background:#fff;border-radius:4px;font-size:14px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;top:0;left:0}.layout-left .field-container[data-v-1682d268]{display:block;position:relative;width:100%;margin:0;cursor:pointer;line-height:30px}.layout-left .field-container .aRow[data-v-1682d268]{padding:0 10px}.layout-left .field-container .aRow .operation[data-v-1682d268]{float:right;display:none}.layout-left .field-container .aRow .operation .el-button--text[data-v-1682d268]{color:#333!important}.layout-left .field-container .aRow[data-v-1682d268]:hover{background:#f7fafd}.layout-left .field-container .aRow:hover .operation[data-v-1682d268]{display:block}.layout-middle[data-v-1682d268]{display:block;position:absolute;left:230px;right:230px;width:calc(100% - 460px);margin:0;padding:0}.layout-middle .excel-designer[data-v-1682d268]{display:block;position:relative;margin:0;padding:0}.layout-right[data-v-1682d268]{display:block;position:absolute;top:0;right:0;padding:20px;width:230px;min-height:99.98vh;border-left:1px solid;border-color:#e8eaec;background:#fff;border-radius:4px;font-size:14px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-dd63.4ca639eb.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-dd63.4ca639eb.css index f2efa955b..17c783c32 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-dd63.4ca639eb.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-dd63.4ca639eb.css @@ -1 +1 @@ -.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,Ubuntu,Droid Sans,sans-serif}.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor-hover p{margin:0}.monaco-editor.hc-black{-ms-high-contrast-adjust:none}@media screen and (-ms-high-contrast:active){.monaco-editor.vs-dark .view-overlays .current-line,.monaco-editor.vs .view-overlays .current-line{border-color:windowtext!important;border-left:0;border-right:0}.monaco-editor.vs-dark .cursor,.monaco-editor.vs .cursor{background-color:windowtext!important}.monaco-editor.vs-dark .dnd-target,.monaco-editor.vs .dnd-target{border-color:windowtext!important}.monaco-editor.vs-dark .selected-text,.monaco-editor.vs .selected-text{background-color:highlight!important}.monaco-editor.vs-dark .view-line,.monaco-editor.vs .view-line{-ms-high-contrast-adjust:none}.monaco-editor.vs-dark .view-line span,.monaco-editor.vs .view-line span{color:windowtext!important}.monaco-editor.vs-dark .view-line span.inline-selected-text,.monaco-editor.vs .view-line span.inline-selected-text{color:highlighttext!important}.monaco-editor.vs-dark .view-overlays,.monaco-editor.vs .view-overlays{-ms-high-contrast-adjust:none}.monaco-editor.vs-dark .reference-decoration,.monaco-editor.vs-dark .selectionHighlight,.monaco-editor.vs-dark .wordHighlight,.monaco-editor.vs-dark .wordHighlightStrong,.monaco-editor.vs .reference-decoration,.monaco-editor.vs .selectionHighlight,.monaco-editor.vs .wordHighlight,.monaco-editor.vs .wordHighlightStrong{border:2px dotted highlight!important;background:transparent!important;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .rangeHighlight,.monaco-editor.vs .rangeHighlight{background:transparent!important;border:1px dotted activeborder!important;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .bracket-match,.monaco-editor.vs .bracket-match{border-color:windowtext!important;background:transparent!important}.monaco-editor.vs-dark .currentFindMatch,.monaco-editor.vs-dark .findMatch,.monaco-editor.vs .currentFindMatch,.monaco-editor.vs .findMatch{border:2px dotted activeborder!important;background:transparent!important;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .find-widget,.monaco-editor.vs .find-widget{border:1px solid windowtext}.monaco-editor.vs-dark .monaco-list .monaco-list-row,.monaco-editor.vs .monaco-list .monaco-list-row{-ms-high-contrast-adjust:none;color:windowtext!important}.monaco-editor.vs-dark .monaco-list .monaco-list-row.focused,.monaco-editor.vs .monaco-list .monaco-list-row.focused{color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-list .monaco-list-row:hover,.monaco-editor.vs .monaco-list .monaco-list-row:hover{background:transparent!important;border:1px solid highlight;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row,.monaco-editor.vs .monaco-tree .monaco-tree-row{-ms-high-contrast-adjust:none;color:windowtext!important}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row.focused,.monaco-editor.vs-dark .monaco-tree .monaco-tree-row.selected,.monaco-editor.vs .monaco-tree .monaco-tree-row.focused,.monaco-editor.vs .monaco-tree .monaco-tree-row.selected{color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row:hover,.monaco-editor.vs .monaco-tree .monaco-tree-row:hover{background:transparent!important;border:1px solid highlight;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar,.monaco-editor.vs .monaco-scrollable-element>.scrollbar{-ms-high-contrast-adjust:none;background:background!important;border:1px solid windowtext;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider{background:windowtext!important}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider.active,.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider:hover,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider.active,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider:hover{background:highlight!important}.monaco-editor.vs-dark .decorationsOverviewRuler,.monaco-editor.vs .decorationsOverviewRuler{opacity:0}.monaco-editor.vs-dark .minimap,.monaco-editor.vs .minimap{display:none}.monaco-editor.vs-dark .squiggly-d-error,.monaco-editor.vs .squiggly-d-error{background:transparent!important;border-bottom:4px double #e47777}.monaco-editor.vs-dark .squiggly-b-info,.monaco-editor.vs-dark .squiggly-c-warning,.monaco-editor.vs .squiggly-b-info,.monaco-editor.vs .squiggly-c-warning{border-bottom:4px double #71b771}.monaco-editor.vs-dark .squiggly-a-hint,.monaco-editor.vs .squiggly-a-hint{border-bottom:4px double #6c6c6c}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{-ms-high-contrast-adjust:none;color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .action-label,.monaco-editor.vs .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .action-label{-ms-high-contrast-adjust:none;background:transparent!important;border:1px solid highlight;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-diff-editor.vs-dark .diffOverviewRuler,.monaco-diff-editor.vs .diffOverviewRuler{display:none}.monaco-editor.vs-dark .line-delete,.monaco-editor.vs-dark .line-insert,.monaco-editor.vs .line-delete,.monaco-editor.vs .line-insert{background:transparent!important;border:1px solid highlight!important;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .char-delete,.monaco-editor.vs-dark .char-insert,.monaco-editor.vs .char-delete,.monaco-editor.vs .char-insert{background:transparent!important}}.monaco-aria-container{position:absolute;left:-999em}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent}.monaco-editor .inputarea.ime-input{z-index:10}.monaco-editor .margin-view-overlays .line-numbers{position:absolute;text-align:right;display:inline-block;vertical-align:middle;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:default;height:100%}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .margin-view-overlays .current-line,.monaco-editor .view-overlays .current-line{display:block;position:absolute;left:0;top:0;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute}.monaco-scrollable-element>.scrollbar>.up-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkuNDggOC45NjFsMS4yNi0xLjI2LTUuMDQtNS4wNC01LjQ2IDUuMDQgMS4yNiAxLjI2IDQuMi0zLjc4IDMuNzggMy43OHoiIGZpbGw9IiM0MjQyNDIiLz48L3N2Zz4=");cursor:pointer}.monaco-scrollable-element>.scrollbar>.down-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTEuNSAyLjY2MkwuMjQgMy45MjJsNS4wNCA1LjA0IDUuNDYtNS4wNC0xLjI2LTEuMjYtNC4yIDMuNzgtMy43OC0zLjc4eiIvPjwvc3ZnPg==");cursor:pointer}.monaco-scrollable-element>.scrollbar>.left-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTguNjQgMS40NDFMNy4zOC4xODFsLTUuMDQgNS4wNCA1LjA0IDUuNDYgMS4yNi0xLjI2LTMuNzgtNC4yIDMuNzgtMy43OHoiLz48L3N2Zz4=");cursor:pointer}.monaco-scrollable-element>.scrollbar>.right-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTIuNDY3IDkuNTQ4bDEuMjYgMS4yNiA1LjA0LTUuMDQtNS4wNC01LjQ2LTEuMjYgMS4yNiAzLjc4IDQuMi0zLjc4IDMuNzh6Ii8+PC9zdmc+");cursor:pointer}.hc-black .monaco-scrollable-element>.scrollbar>.up-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.up-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkuNDggOC45NjFsMS4yNi0xLjI2LTUuMDQtNS4wNC01LjQ2IDUuMDQgMS4yNiAxLjI2IDQuMi0zLjc4IDMuNzggMy43OHoiIGZpbGw9IiNFOEU4RTgiLz48L3N2Zz4=")}.hc-black .monaco-scrollable-element>.scrollbar>.down-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.down-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTEuNSAyLjY2MkwuMjQgMy45MjJsNS4wNCA1LjA0IDUuNDYtNS4wNC0xLjI2LTEuMjYtNC4yIDMuNzgtMy43OC0zLjc4eiIvPjwvc3ZnPg==")}.hc-black .monaco-scrollable-element>.scrollbar>.left-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.left-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTguNjQgMS40NDFMNy4zOC4xODFsLTUuMDQgNS4wNCA1LjA0IDUuNDYgMS4yNi0xLjI2LTMuNzgtNC4yIDMuNzgtMy43OHoiLz48L3N2Zz4=")}.hc-black .monaco-scrollable-element>.scrollbar>.right-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.right-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTIuNDY3IDkuNTQ4bDEuMjYgMS4yNiA1LjA0LTUuMDQtNS4wNC01LjQ2LTEuMjYgMS4yNiAzLjc4IDQuMi0zLjc4IDMuNzh6Ii8+PC9zdmc+")}.monaco-scrollable-element>.visible{opacity:1;background:transparent;-webkit-transition:opacity .1s linear;transition:opacity .1s linear}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{-webkit-transition:opacity .8s linear;transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;-webkit-box-shadow:#ddd 0 6px 6px -6px inset;box-shadow:inset 0 6px 6px -6px #ddd}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;-webkit-box-shadow:#ddd 6px 0 6px -6px inset;box-shadow:inset 6px 0 6px -6px #ddd}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{-webkit-box-shadow:#ddd 6px 6px 6px -6px inset;box-shadow:inset 6px 6px 6px -6px #ddd}.vs .monaco-scrollable-element>.scrollbar>.slider{background:hsla(0,0%,39.2%,.4)}.vs-dark .monaco-scrollable-element>.scrollbar>.slider{background:hsla(0,0%,47.5%,.4)}.hc-black .monaco-scrollable-element>.scrollbar>.slider{background:rgba(111,195,223,.6)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:hsla(0,0%,39.2%,.7)}.hc-black .monaco-scrollable-element>.scrollbar>.slider:hover{background:rgba(111,195,223,.8)}.monaco-scrollable-element>.scrollbar>.slider.active{background:rgba(0,0,0,.6)}.vs-dark .monaco-scrollable-element>.scrollbar>.slider.active{background:hsla(0,0%,74.9%,.4)}.hc-black .monaco-scrollable-element>.scrollbar>.slider.active{background:#6fc3df}.vs-dark .monaco-scrollable-element .shadow.top{-webkit-box-shadow:none;box-shadow:none}.vs-dark .monaco-scrollable-element .shadow.left{-webkit-box-shadow:#000 6px 0 6px -6px inset;box-shadow:inset 6px 0 6px -6px #000}.vs-dark .monaco-scrollable-element .shadow.top.left{-webkit-box-shadow:#000 6px 6px 6px -6px inset;box-shadow:inset 6px 6px 6px -6px #000}.hc-black .monaco-scrollable-element .shadow.left,.hc-black .monaco-scrollable-element .shadow.top,.hc-black .monaco-scrollable-element .shadow.top.left{-webkit-box-shadow:none;box-shadow:none}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .margin-view-overlays .cgmr{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.monaco-editor .lines-content .cigr,.monaco-editor .lines-content .cigra{position:absolute}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .view-lines{cursor:text;white-space:nowrap}.monaco-editor.hc-black.mac .view-lines,.monaco-editor.vs-dark.mac .view-lines{cursor:-webkit-image-set(url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAAL0lEQVQoz2NgCD3x//9/BhBYBWdhgFVAiVW4JBFKGIa4AqD0//9D3pt4I4tAdAMAHTQ/j5Zom30AAAAASUVORK5CYII=) 1x,url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAAAz0lEQVRIx2NgYGBY/R8I/vx5eelX3n82IJ9FxGf6tksvf/8FiTMQAcAGQMDvSwu09abffY8QYSAScNk45G198eX//yev73/4///701eh//kZSARckrNBRvz//+8+6ZohwCzjGNjdgQxkAg7B9WADeBjIBqtJCbhRA0YNoIkBSNmaPEMoNmA0FkYNoFKhapJ6FGyAH3nauaSmPfwI0v/3OukVi0CIZ+F25KrtYcx/CTIy0e+rC7R1Z4KMICVTQQ14feVXIbR695u14+Ir4gwAAD49E54wc1kWAAAAAElFTkSuQmCC) 2x) 5 8,text}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;-webkit-transition:opacity .1s linear;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover .minimap-slider.active,.monaco-editor .minimap.slider-mouseover:hover .minimap-slider{opacity:1}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;cursor:text;overflow:hidden}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{-webkit-transition:all 80ms;transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{-webkit-box-sizing:border-box;box-sizing:border-box;background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important;-webkit-box-sizing:border-box;box-sizing:border-box}@-webkit-keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@-webkit-keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@-webkit-keyframes monaco-cursor-expand{0%,20%{-webkit-transform:scaleY(1);transform:scaleY(1)}80%,to{-webkit-transform:scaleY(0);transform:scaleY(0)}}@keyframes monaco-cursor-expand{0%,20%{-webkit-transform:scaleY(1);transform:scaleY(1)}80%,to{-webkit-transform:scaleY(0);transform:scaleY(0)}}.cursor-smooth{-webkit-animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{-webkit-animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{-webkit-animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor.vs .diffOverview{background:rgba(0,0,0,.03)}.monaco-diff-editor.vs-dark .diffOverview{background:hsla(0,0%,100%,.01)}.monaco-diff-editor .diffViewport{-webkit-box-shadow:inset 0 0 1px 0 #b9b9b9;box-shadow:inset 0 0 1px 0 #b9b9b9;background:rgba(0,0,0,.1)}.monaco-diff-editor.hc-black .diffViewport,.monaco-diff-editor.vs-dark .diffViewport{background:hsla(0,0%,100%,.1)}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar{background:transparent}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:hsla(0,0%,67.1%,.4)}.modified-in-monaco-diff-editor.hc-black .slider.active{background:none}.monaco-diff-editor .delete-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-editor .insert-sign{font-size:11px!important;opacity:.7!important;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.monaco-diff-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-editor.hc-black .insert-sign{opacity:1}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .inline-deleted-margin-view-zone{text-align:right}.monaco-editor .diagonal-fill{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAChJREFUKFNjOH/+fAMDDgCSu3Dhwn9c8gwwBTgNGR4KQP4HhQOhsAIAZCBTkhtqePcAAAAASUVORK5CYII=")}.monaco-editor.vs-dark .diagonal-fill{opacity:.2}.monaco-editor.hc-black .diagonal-fill{background:none}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-sash{position:absolute;z-index:35;-ms-touch-action:none;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.vertical{cursor:ew-resize;top:0;width:4px;height:100%}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:4px}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash:not(.disabled).orthogonal-end:after,.monaco-sash:not(.disabled).orthogonal-start:before{content:" ";height:8px;width:8px;z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.orthogonal-start.vertical:before{left:-2px;top:-4px}.monaco-sash.orthogonal-end.vertical:after{left:-2px;bottom:-4px}.monaco-sash.orthogonal-start.horizontal:before{top:-2px;left:-4px}.monaco-sash.orthogonal-end.horizontal:after{top:-2px;right:-4px}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.touch.vertical{width:20px}.monaco-sash.touch.horizontal{height:20px}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:rgba(0,255,255,.2)}.monaco-sash.debug:not(.disabled).orthogonal-end:after,.monaco-sash.debug:not(.disabled).orthogonal-start:before{background:red}.monaco-diff-editor .diff-review-line-number{text-align:right;display:inline-block}.monaco-diff-editor .diff-review{position:absolute;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-diff-editor .diff-review-summary{padding-left:10px}.monaco-diff-editor .diff-review-shadow{position:absolute}.monaco-diff-editor .diff-review-row{white-space:pre}.monaco-diff-editor .diff-review-table{display:table;min-width:100%}.monaco-diff-editor .diff-review-row{display:table-row;width:100%}.monaco-diff-editor .diff-review-cell{display:table-cell}.monaco-diff-editor .diff-review-spacer{display:inline-block;width:10px}.monaco-diff-editor .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px}.monaco-diff-editor .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-action-bar{text-align:right;overflow:hidden;white-space:nowrap}.monaco-action-bar .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 auto;padding:0;width:100%;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar.reverse .actions-container{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.monaco-action-bar .action-item{cursor:pointer;display:inline-block;-webkit-transition:-webkit-transform 50ms ease;transition:-webkit-transform 50ms ease;transition:transform 50ms ease;transition:transform 50ms ease,-webkit-transform 50ms ease;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar.animated .action-item.active{-webkit-transform:scale(1.272019649);transform:scale(1.272019649)}.monaco-action-bar .action-item .codicon,.monaco-action-bar .action-item .icon{display:inline-block}.monaco-action-bar .action-label{font-size:11px;margin-right:4px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:hover{opacity:.4}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar.animated.vertical .action-item.active{-webkit-transform:translate(5px);transform:translate(5px)}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;-webkit-box-flex:1;-ms-flex:1;flex:1;max-width:170px;min-width:60px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-right:10px}.context-view .monaco-menu{min-width:130px}.context-view-block{position:fixed;left:0;top:0;z-index:-1;width:100%;height:100%}.monaco-menu .monaco-action-bar.vertical{margin-left:0;overflow:visible}.monaco-menu .monaco-action-bar.vertical .actions-container{display:block}.monaco-menu .monaco-action-bar.vertical .action-item{padding:0;-webkit-transform:none;transform:none;display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-menu .monaco-action-bar.vertical .action-item.active{-webkit-transform:none;transform:none}.monaco-menu .monaco-action-bar.vertical .action-menu-item{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;display:-webkit-box;display:-ms-flexbox;display:flex;height:2em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative}.monaco-menu .monaco-action-bar.vertical .action-label{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;text-decoration:none;padding:0 1em;background:none;font-size:12px;line-height:1}.monaco-menu .monaco-action-bar.vertical .keybinding,.monaco-menu .monaco-action-bar.vertical .submenu-indicator{display:inline-block;-webkit-box-flex:2;-ms-flex:2 1 auto;flex:2 1 auto;padding:0 1em;text-align:right;font-size:12px;line-height:1}.monaco-menu .monaco-action-bar.vertical .submenu-indicator{height:100%}.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon{font-size:16px!important;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon:before{margin-left:auto;margin-right:-20px}.monaco-menu .monaco-action-bar.vertical .action-item.disabled .keybinding,.monaco-menu .monaco-action-bar.vertical .action-item.disabled .submenu-indicator{opacity:.4}.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator){display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0}.monaco-menu .monaco-action-bar.vertical .action-item{position:static;overflow:visible}.monaco-menu .monaco-action-bar.vertical .action-item .monaco-submenu{position:absolute}.monaco-menu .monaco-action-bar.vertical .action-label.separator{padding:.5em 0 0;margin-bottom:.5em;width:100%}.monaco-menu .monaco-action-bar.vertical .action-label.separator.text{padding:.7em 1em .1em;font-weight:700;opacity:1}.monaco-menu .monaco-action-bar.vertical .action-label:hover{color:inherit}.monaco-menu .monaco-action-bar.vertical .menu-item-check{position:absolute;visibility:hidden;width:1em;height:100%}.monaco-menu .monaco-action-bar.vertical .action-menu-item.checked .menu-item-check{visibility:visible;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.context-view.monaco-menu-container{outline:0;border:none;-webkit-animation:fadeIn 83ms linear;animation:fadeIn 83ms linear}.context-view.monaco-menu-container .monaco-action-bar.vertical:focus,.context-view.monaco-menu-container .monaco-action-bar.vertical :focus,.context-view.monaco-menu-container :focus{outline:0}.monaco-menu .monaco-action-bar.vertical .action-item{border:thin solid transparent}.hc-black .context-view.monaco-menu-container{-webkit-box-shadow:none;box-shadow:none}.hc-black .monaco-menu .monaco-action-bar.vertical .action-item.focused{background:none}.menubar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:1;flex-shrink:1;-webkit-box-sizing:border-box;box-sizing:border-box;height:30px;overflow:hidden;-ms-flex-wrap:wrap;flex-wrap:wrap}.fullscreen .menubar:not(.compact){margin:0;padding:0 5px}.menubar>.menubar-menu-button{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;padding:0 8px;cursor:default;-webkit-app-region:no-drag;zoom:1;white-space:nowrap;outline:0}.menubar.compact{-ms-flex-negative:0;flex-shrink:0}.menubar.compact>.menubar-menu-button{width:100%;height:100%;padding:0}.menubar .menubar-menu-items-holder{position:absolute;left:0;opacity:1;z-index:2000}.menubar .menubar-menu-items-holder.monaco-menu-container{outline:0;border:none}.menubar .menubar-menu-items-holder.monaco-menu-container :focus{outline:0}.menubar .toolbar-toggle-more{width:20px;height:100%}.menubar.compact .toolbar-toggle-more{position:absolute;left:0;top:0;cursor:pointer;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.menubar .toolbar-toggle-more{padding:0;vertical-align:sub}.menubar.compact .toolbar-toggle-more:before{content:"\EB94"!important}.context-view{position:absolute;z-index:2500}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;-ms-touch-action:none;touch-action:none}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-multiple,.monaco-list.selection-single{outline:0!important}.monaco-list:focus .monaco-list-row.selected .codicon{color:inherit}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute}.monaco-list-type-filter{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:absolute;border-radius:2px;padding:0 3px;max-width:calc(100% - 10px);text-overflow:ellipsis;overflow:hidden;text-align:right;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:all-scroll;font-size:13px;line-height:18px;height:20px;z-index:1;top:4px}.monaco-list-type-filter.dragging{-webkit-transition:top .2s,left .2s;transition:top .2s,left .2s}.monaco-list-type-filter.ne{right:4px}.monaco-list-type-filter.nw{left:4px}.monaco-list-type-filter>.controls{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .2s;transition:width .2s;width:0}.monaco-list-type-filter.dragging>.controls,.monaco-list-type-filter:hover>.controls{width:36px}.monaco-list-type-filter>.controls>*{border:none;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;background:none;width:16px;height:16px;-ms-flex-negative:0;flex-shrink:0;margin:0;padding:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;cursor:pointer}.monaco-list-type-filter>.controls>.filter:checked:before{content:"\EB83"!important}.monaco-list-type-filter>.controls>.filter{margin-left:4px}.monaco-list-type-filter-message{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-list-type-filter{cursor:-webkit-grab;cursor:grab}.monaco-list-type-filter.dragging{cursor:-webkit-grabbing;cursor:grabbing}.monaco-tl-row{display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;border-left:1px solid transparent;-webkit-transition:border-color .1s linear;transition:border-color .1s linear}.monaco-tl-contents,.monaco-tl-twistie{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;-ms-flex-negative:0;flex-shrink:0;width:16px;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:inherit!important;-webkit-transform:translateX(3px);transform:translateX(3px)}.monaco-tl-contents{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden}.monaco-tl-twistie.collapsed:before{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.monaco-tl-twistie.codicon-loading:before{-webkit-animation:codicon-spin 1.25s linear infinite;animation:codicon-spin 1.25s linear infinite}.monaco-editor .bracket-match{-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-menu .monaco-action-bar.vertical .action-label.hover{background-color:#eee}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{-webkit-animation:fadeIn .15s ease-out;animation:fadeIn .15s ease-out}@-webkit-keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{-webkit-animation:fadeOut .1s ease-out;animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:1px 4px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;z-index:1000;border:8px solid transparent;position:absolute}.monaco-editor .codicon-lightbulb,.monaco-editor .lightbulb-glyph{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:16px;width:20px;padding-left:2px}.monaco-editor .codicon-lightbulb:hover,.monaco-editor .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis}.monaco-editor .codelens-decoration>a,.monaco-editor .codelens-decoration>span{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@-webkit-keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{-webkit-animation:fadein .1s linear;animation:fadein .1s linear}.monaco-editor.vs .dnd-target{border-right:2px dotted #000;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #aeafad;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines{cursor:default}.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines{cursor:copy}.monaco-custom-checkbox{margin-left:2px;float:left;cursor:pointer;overflow:hidden;opacity:.7;width:20px;height:20px;border:1px solid transparent;padding:1px;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-custom-checkbox.checked,.monaco-custom-checkbox:hover{opacity:1}.hc-black .monaco-custom-checkbox,.hc-black .monaco-custom-checkbox:hover{background:none}.monaco-custom-checkbox.monaco-simple-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-custom-checkbox.monaco-simple-checkbox.unchecked:not(.checked):before{visibility:hidden}.monaco-editor .find-widget{position:absolute;z-index:10;height:33px;overflow:hidden;line-height:19px;-webkit-transition:-webkit-transform .2s linear;transition:-webkit-transform .2s linear;transition:transform .2s linear;transition:transform .2s linear,-webkit-transform .2s linear;padding:0 4px;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform:translateY(calc(-100% - 10px));transform:translateY(calc(-100% - 10px))}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-editor .find-widget.visible{-webkit-transform:translateY(0);transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:4px 0 0 17px;font-size:12px;display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.wrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.wrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions,.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;-webkit-box-sizing:border-box;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button,.monaco-editor .find-widget .matchesCount{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:initial;-ms-flex:initial;flex:initial}.monaco-editor .find-widget .button{width:20px;height:20px;margin-left:3px;background-position:50%;background-repeat:no-repeat;cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.monaco-editor .find-widget .button:not(.disabled):hover{background-color:rgba(0,0,0,.1)}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{opacity:.3;cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;vertical-align:middle;-webkit-box-flex:1;-ms-flex:auto;flex:auto;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .findMatch{-webkit-animation-duration:0;animation-duration:0;-webkit-animation-name:inherit!important;animation-name:inherit!important}.monaco-editor .find-widget .monaco-sash{width:2px!important;margin-left:-4px}.monaco-editor.hc-black .find-widget .button:not(.disabled):hover,.monaco-editor.vs-dark .find-widget .button:not(.disabled):hover{background-color:hsla(0,0%,100%,.1)}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls{-webkit-animation:monaco-findInput-highlight-0 .1s linear 0s;animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls{-webkit-animation:monaco-findInput-highlight-1 .1s linear 0s;animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{-webkit-animation:monaco-findInput-highlight-dark-0 .1s linear 0s;animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{-webkit-animation:monaco-findInput-highlight-dark-1 .1s linear 0s;animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@-webkit-keyframes monaco-findInput-highlight-0{0%{background:rgba(253,255,0,.8)}to{background:transparent}}@keyframes monaco-findInput-highlight-0{0%{background:rgba(253,255,0,.8)}to{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-1{0%{background:rgba(253,255,0,.8)}99%{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:rgba(253,255,0,.8)}99%{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-dark-0{0%{background:hsla(0,0%,100%,.44)}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:hsla(0,0%,100%,.44)}to{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-dark-1{0%{background:hsla(0,0%,100%,.44)}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:hsla(0,0%,100%,.44)}99%{background:transparent}}.monaco-inputbox{position:relative;display:block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box;font-size:inherit}.monaco-inputbox.idle{border:1px solid transparent}.monaco-inputbox>.wrapper>.input,.monaco-inputbox>.wrapper>.mirror{padding:4px}.monaco-inputbox>.wrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.wrapper>.input{display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.wrapper>input{text-overflow:ellipsis}.monaco-inputbox>.wrapper>textarea.input{display:block;-ms-overflow-style:none;scrollbar-width:none;outline:none}.monaco-inputbox>.wrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.wrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.wrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;-webkit-box-sizing:border-box;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;min-height:34px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-editor .margin-view-overlays .codicon-chevron-down,.monaco-editor .margin-view-overlays .codicon-chevron-right{cursor:pointer;opacity:0;-webkit-transition:opacity .5s;transition:opacity .5s;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons,.monaco-editor .margin-view-overlays .codicon.codicon-chevron-right,.monaco-editor .margin-view-overlays:hover .codicon{opacity:1}.monaco-editor .inline-folded:after{color:grey;margin:.1em .2em 0;content:"\22EF";display:inline;line-height:1em;cursor:pointer}.monaco-editor .peekview-widget .head{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-editor .peekview-widget .head .peekview-title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:13px;margin-left:20px;cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-item{margin-left:4px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-label{width:16px;height:100%;margin:0;line-height:inherit;background-repeat:no-repeat;background-position:50%}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-label.codicon{margin:0}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;width:100%;height:100%}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-icon-label{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:0;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;-ms-flex-negative:0;flex-shrink:0}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;-webkit-box-flex:1;-ms-flex:1;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.italic>.monaco-icon-description-container>.label-description,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{font-style:italic}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;padding:0 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after,.monaco-tree.focused .selected .monaco-icon-label,.monaco-tree.focused .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description,.monaco-tree-row.focused.selected .label-description,.monaco-tree-row.selected .label-description{opacity:.8}.monaco-count-badge{padding:3px 5px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:auto}.monaco-split-view2>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.split-view-container>.split-view-view{white-space:normal;position:absolute}.monaco-split-view2>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer}.monaco-editor-hover{cursor:default;position:absolute;overflow:hidden;z-index:50;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;-webkit-box-sizing:initial;box-sizing:initial;-webkit-animation:fadein .1s linear;animation:fadein .1s linear;line-height:1.5em}.monaco-editor-hover.hidden{display:none}.monaco-editor-hover .hover-contents{padding:4px 8px}.monaco-editor-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:500px;word-wrap:break-word}.monaco-editor-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100vw}.monaco-editor-hover p,.monaco-editor-hover ul{margin:8px 0}.monaco-editor-hover code{font-family:var(--monaco-monospace-font)}.monaco-editor-hover hr{margin:4px -10px -6px;height:1px}.monaco-editor-hover p:first-child,.monaco-editor-hover ul:first-child{margin-top:0}.monaco-editor-hover p:last-child,.monaco-editor-hover ul:last-child{margin-bottom:0}.monaco-editor-hover ol,.monaco-editor-hover ul{padding-left:20px}.monaco-editor-hover li>p{margin-bottom:0}.monaco-editor-hover li>ul{margin-top:0}.monaco-editor-hover code{border-radius:3px;padding:0 .4em}.monaco-editor-hover .monaco-tokenized-source{white-space:pre-wrap;word-break:break-all}.monaco-editor-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-editor-hover .hover-row.status-bar .actions{display:-webkit-box;display:-ms-flexbox;display:flex;padding:0 8px}.monaco-editor-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-editor-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-editor-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-editor-hover .hover-contents a.code-link:before{content:"("}.monaco-editor-hover .hover-contents a.code-link:after{content:")"}.monaco-editor-hover .hover-contents a.code-link{color:inherit}.monaco-editor-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under}.colorpicker-widget{height:190px;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .colorpicker-hover:focus{outline:none}.colorpicker-header{display:-webkit-box;display:-ms-flexbox;display:flex;height:24px;position:relative;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=");background-size:9px 9px;-ms-interpolation-mode:nearest-neighbor;image-rendering:-webkit-optimize-contrast;image-rendering:-moz-crisp-edges;image-rendering:-o-pixelated;image-rendering:pixelated}.colorpicker-header .picked-color{width:216px;line-height:24px;cursor:pointer;color:#fff;-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.colorpicker-body{display:-webkit-box;display:-ms-flexbox;display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;-webkit-box-flex:1;-ms-flex:1;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid #fff;border-radius:100%;-webkit-box-shadow:0 0 2px rgba(0,0,0,.8);box-shadow:0 0 2px rgba(0,0,0,.8);position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .hue-strip{background:-webkit-gradient(linear,left top,left bottom,from(red),color-stop(17%,#ff0),color-stop(33%,#0f0),color-stop(50%,#0ff),color-stop(67%,#00f),color-stop(83%,#f0f),to(red));background:linear-gradient(180deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.colorpicker-body .hue-strip,.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:-webkit-grab;cursor:grab}.colorpicker-body .opacity-strip{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=");background-size:9px 9px;-ms-interpolation-mode:nearest-neighbor;image-rendering:-webkit-optimize-contrast;image-rendering:-moz-crisp-edges;image-rendering:-o-pixelated;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:-webkit-grabbing;cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid hsla(0,0%,100%,.71);-webkit-box-shadow:0 0 1px rgba(0,0,0,.85);box-shadow:0 0 1px rgba(0,0,0,.85)}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer}.monaco-editor .parameter-hints-widget{z-index:10;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;line-height:1.5em}.monaco-editor .parameter-hints-widget>.wrapper{max-width:440px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.visible{-webkit-transition:left .05s ease-in-out;transition:left .05s ease-in-out}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .body,.monaco-editor .parameter-hints-widget .monaco-scrollable-element{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:normal}.monaco-editor .parameter-hints-widget .docs .markdown-docs code{font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs code{border-radius:3px;padding:0 .4em}.monaco-editor .parameter-hints-widget .controls{display:none;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-width:22px;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:-webkit-box;display:-ms-flexbox;display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;opacity:.5;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{font-weight:700;text-decoration:underline}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .rename-box{z-index:100;color:inherit}.monaco-editor .rename-box.preview{padding:3px 3px 0}.monaco-editor .rename-box .rename-input{padding:3px;width:calc(100% - 6px)}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .snippet-placeholder{min-width:2px}.monaco-editor .finish-snippet-placeholder,.monaco-editor .snippet-placeholder{outline-style:solid;outline-width:1px}.monaco-editor .suggest-widget{z-index:40;width:430px}.monaco-editor .suggest-widget>.details,.monaco-editor .suggest-widget>.message,.monaco-editor .suggest-widget>.tree{width:100%;border-style:solid;border-width:1px;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.hc-black .suggest-widget>.details,.monaco-editor.hc-black .suggest-widget>.message,.monaco-editor.hc-black .suggest-widget>.tree{border-width:2px}.monaco-editor .suggest-widget.docs-side{width:660px}.monaco-editor .suggest-widget.docs-side>.details,.monaco-editor .suggest-widget.docs-side>.tree{width:50%;float:left}.monaco-editor .suggest-widget.docs-side.list-right>.details,.monaco-editor .suggest-widget.docs-side.list-right>.tree{float:right}.monaco-editor .suggest-widget>.details ol,.monaco-editor .suggest-widget>.details ul{padding-left:20px}.monaco-editor .suggest-widget>.details p code{font-family:var(--monaco-monospace-font)}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%}.monaco-editor .suggest-widget .monaco-list{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:-webkit-box;display:-ms-flexbox;display:flex;-mox-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;-ms-touch-action:none;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{-webkit-box-flex:1;-ms-flex:1;flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget>.suggest-status-bar{visibility:hidden;position:absolute;left:0;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%;font-size:80%;border-left-width:1px;border-left-style:solid;border-right-width:1px;border-right-style:solid;border-bottom-width:1px;border-bottom-style:solid;padding:1px 8px 1px 4px;-webkit-box-shadow:0 -.5px 3px #ddd;box-shadow:0 -.5px 3px #ddd}.monaco-editor .suggest-widget>.suggest-status-bar span{opacity:.7}.monaco-editor .suggest-widget.list-right.docs-side>.suggest-status-bar{left:auto;right:0}.monaco-editor .suggest-widget.docs-side>.suggest-status-bar{width:50%}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:2px;right:2px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:4px;opacity:.4;font-size:90%;text-overflow:ellipsis;overflow:hidden;line-height:17px;-ms-flex-item-align:center;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{margin-left:.8em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused>.contents>.main>.right.always-show-details>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right.always-show-details>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{-ms-flex-negative:1;flex-shrink:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{-ms-flex-negative:1;flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;-ms-flex-negative:0;flex-shrink:0;max-width:45%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-below .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right:not(.always-show-details)>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main>.right:not(.always-show-details)>.readMore{display:inline-block}.monaco-editor .suggest-widget.docs-below .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:50%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-widget .details{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;cursor:default}.monaco-editor .suggest-widget .details.no-docs{display:none}.monaco-editor .suggest-widget.docs-below .details{border-top-width:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element{-webkit-box-flex:1;-ms-flex:1;flex:1}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.type{-webkit-box-flex:2;-ms-flex:2;flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;word-break:break-all;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:normal;min-height:calc(1rem + 8px)}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-widget .details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-insert-unexpected{font-style:italic}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{visibility:visible}.monaco-editor .suggest-widget.with-status-bar>.tree{margin-bottom:18px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar span{min-height:18px}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused>.contents>.main>.right:not(.always-show-details)>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}@font-face{font-family:codicon;src:url(/static/fonts/codicon.a609dc0.ttf) format("truetype")}.codicon[class*=codicon-]{font:normal normal normal 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.codicon-add:before,.codicon-gist-new:before,.codicon-plus:before,.codicon-repo-create:before{content:"\EA60"}.codicon-light-bulb:before,.codicon-lightbulb:before{content:"\EA61"}.codicon-repo-delete:before,.codicon-repo:before{content:"\EA62"}.codicon-gist-fork:before,.codicon-repo-forked:before{content:"\EA63"}.codicon-git-pull-request-abandoned:before,.codicon-git-pull-request:before{content:"\EA64"}.codicon-keyboard:before,.codicon-record-keys:before{content:"\EA65"}.codicon-tag-add:before,.codicon-tag-remove:before,.codicon-tag:before{content:"\EA66"}.codicon-person-add:before,.codicon-person-filled:before,.codicon-person-follow:before,.codicon-person-outline:before,.codicon-person:before{content:"\EA67"}.codicon-git-branch-create:before,.codicon-git-branch-delete:before,.codicon-git-branch:before,.codicon-source-control:before{content:"\EA68"}.codicon-mirror-public:before,.codicon-mirror:before{content:"\EA69"}.codicon-star-add:before,.codicon-star-delete:before,.codicon-star-empty:before,.codicon-star:before{content:"\EA6A"}.codicon-comment-add:before,.codicon-comment:before{content:"\EA6B"}.codicon-alert:before,.codicon-warning:before{content:"\EA6C"}.codicon-search-save:before,.codicon-search:before{content:"\EA6D"}.codicon-log-out:before,.codicon-sign-out:before{content:"\EA6E"}.codicon-log-in:before,.codicon-sign-in:before{content:"\EA6F"}.codicon-eye-unwatch:before,.codicon-eye-watch:before,.codicon-eye:before{content:"\EA70"}.codicon-circle-filled:before,.codicon-close-dirty:before,.codicon-debug-breakpoint-disabled:before,.codicon-debug-breakpoint:before,.codicon-debug-hint:before,.codicon-primitive-dot:before{content:"\EA71"}.codicon-primitive-square:before{content:"\EA72"}.codicon-edit:before,.codicon-pencil:before{content:"\EA73"}.codicon-info:before,.codicon-issue-opened:before{content:"\EA74"}.codicon-gist-private:before,.codicon-git-fork-private:before,.codicon-lock:before,.codicon-mirror-private:before{content:"\EA75"}.codicon-close:before,.codicon-remove-close:before,.codicon-x:before{content:"\EA76"}.codicon-repo-sync:before,.codicon-sync:before{content:"\EA77"}.codicon-clone:before,.codicon-desktop-download:before{content:"\EA78"}.codicon-beaker:before,.codicon-microscope:before{content:"\EA79"}.codicon-device-desktop:before,.codicon-vm:before{content:"\EA7A"}.codicon-file-text:before,.codicon-file:before{content:"\EA7B"}.codicon-ellipsis:before,.codicon-kebab-horizontal:before,.codicon-more:before{content:"\EA7C"}.codicon-mail-reply:before,.codicon-reply:before{content:"\EA7D"}.codicon-organization-filled:before,.codicon-organization-outline:before,.codicon-organization:before{content:"\EA7E"}.codicon-file-add:before,.codicon-new-file:before{content:"\EA7F"}.codicon-file-directory-create:before,.codicon-new-folder:before{content:"\EA80"}.codicon-trash:before,.codicon-trashcan:before{content:"\EA81"}.codicon-clock:before,.codicon-history:before{content:"\EA82"}.codicon-file-directory:before,.codicon-folder:before,.codicon-symbol-folder:before{content:"\EA83"}.codicon-github:before,.codicon-logo-github:before,.codicon-mark-github:before{content:"\EA84"}.codicon-console:before,.codicon-repl:before,.codicon-terminal:before{content:"\EA85"}.codicon-symbol-event:before,.codicon-zap:before{content:"\EA86"}.codicon-error:before,.codicon-stop:before{content:"\EA87"}.codicon-symbol-variable:before,.codicon-variable:before{content:"\EA88"}.codicon-array:before,.codicon-symbol-array:before{content:"\EA8A"}.codicon-symbol-module:before,.codicon-symbol-namespace:before,.codicon-symbol-object:before,.codicon-symbol-package:before{content:"\EA8B"}.codicon-symbol-constructor:before,.codicon-symbol-function:before,.codicon-symbol-method:before{content:"\EA8C"}.codicon-symbol-boolean:before,.codicon-symbol-null:before{content:"\EA8F"}.codicon-symbol-number:before,.codicon-symbol-numeric:before{content:"\EA90"}.codicon-symbol-struct:before,.codicon-symbol-structure:before{content:"\EA91"}.codicon-symbol-parameter:before,.codicon-symbol-type-parameter:before{content:"\EA92"}.codicon-symbol-key:before,.codicon-symbol-text:before{content:"\EA93"}.codicon-go-to-file:before,.codicon-symbol-reference:before{content:"\EA94"}.codicon-symbol-enum:before,.codicon-symbol-value:before{content:"\EA95"}.codicon-symbol-ruler:before,.codicon-symbol-unit:before{content:"\EA96"}.codicon-activate-breakpoints:before{content:"\EA97"}.codicon-archive:before{content:"\EA98"}.codicon-arrow-both:before{content:"\EA99"}.codicon-arrow-down:before{content:"\EA9A"}.codicon-arrow-left:before{content:"\EA9B"}.codicon-arrow-right:before{content:"\EA9C"}.codicon-arrow-small-down:before{content:"\EA9D"}.codicon-arrow-small-left:before{content:"\EA9E"}.codicon-arrow-small-right:before{content:"\EA9F"}.codicon-arrow-small-up:before{content:"\EAA0"}.codicon-arrow-up:before{content:"\EAA1"}.codicon-bell:before{content:"\EAA2"}.codicon-bold:before{content:"\EAA3"}.codicon-book:before{content:"\EAA4"}.codicon-bookmark:before{content:"\EAA5"}.codicon-debug-breakpoint-conditional-unverified:before{content:"\EAA6"}.codicon-debug-breakpoint-conditional-disabled:before,.codicon-debug-breakpoint-conditional:before{content:"\EAA7"}.codicon-debug-breakpoint-data-unverified:before{content:"\EAA8"}.codicon-debug-breakpoint-data-disabled:before,.codicon-debug-breakpoint-data:before{content:"\EAA9"}.codicon-debug-breakpoint-log-unverified:before{content:"\EAAA"}.codicon-debug-breakpoint-log-disabled:before,.codicon-debug-breakpoint-log:before{content:"\EAAB"}.codicon-briefcase:before{content:"\EAAC"}.codicon-broadcast:before{content:"\EAAD"}.codicon-browser:before{content:"\EAAE"}.codicon-bug:before{content:"\EAAF"}.codicon-calendar:before{content:"\EAB0"}.codicon-case-sensitive:before{content:"\EAB1"}.codicon-check:before{content:"\EAB2"}.codicon-checklist:before{content:"\EAB3"}.codicon-chevron-down:before{content:"\EAB4"}.codicon-chevron-left:before{content:"\EAB5"}.codicon-chevron-right:before{content:"\EAB6"}.codicon-chevron-up:before{content:"\EAB7"}.codicon-chrome-close:before{content:"\EAB8"}.codicon-chrome-maximize:before{content:"\EAB9"}.codicon-chrome-minimize:before{content:"\EABA"}.codicon-chrome-restore:before{content:"\EABB"}.codicon-circle-outline:before,.codicon-debug-breakpoint-unverified:before{content:"\EABC"}.codicon-circle-slash:before{content:"\EABD"}.codicon-circuit-board:before{content:"\EABE"}.codicon-clear-all:before{content:"\EABF"}.codicon-clippy:before{content:"\EAC0"}.codicon-close-all:before{content:"\EAC1"}.codicon-cloud-download:before{content:"\EAC2"}.codicon-cloud-upload:before{content:"\EAC3"}.codicon-code:before{content:"\EAC4"}.codicon-collapse-all:before{content:"\EAC5"}.codicon-color-mode:before{content:"\EAC6"}.codicon-comment-discussion:before{content:"\EAC7"}.codicon-compare-changes:before{content:"\EAC8"}.codicon-credit-card:before{content:"\EAC9"}.codicon-dash:before{content:"\EACC"}.codicon-dashboard:before{content:"\EACD"}.codicon-database:before{content:"\EACE"}.codicon-debug-continue:before{content:"\EACF"}.codicon-debug-disconnect:before{content:"\EAD0"}.codicon-debug-pause:before{content:"\EAD1"}.codicon-debug-restart:before{content:"\EAD2"}.codicon-debug-start:before{content:"\EAD3"}.codicon-debug-step-into:before{content:"\EAD4"}.codicon-debug-step-out:before{content:"\EAD5"}.codicon-debug-step-over:before{content:"\EAD6"}.codicon-debug-stop:before{content:"\EAD7"}.codicon-debug:before{content:"\EAD8"}.codicon-device-camera-video:before{content:"\EAD9"}.codicon-device-camera:before{content:"\EADA"}.codicon-device-mobile:before{content:"\EADB"}.codicon-diff-added:before{content:"\EADC"}.codicon-diff-ignored:before{content:"\EADD"}.codicon-diff-modified:before{content:"\EADE"}.codicon-diff-removed:before{content:"\EADF"}.codicon-diff-renamed:before{content:"\EAE0"}.codicon-diff:before{content:"\EAE1"}.codicon-discard:before{content:"\EAE2"}.codicon-editor-layout:before{content:"\EAE3"}.codicon-empty-window:before{content:"\EAE4"}.codicon-exclude:before{content:"\EAE5"}.codicon-extensions:before{content:"\EAE6"}.codicon-eye-closed:before{content:"\EAE7"}.codicon-file-binary:before{content:"\EAE8"}.codicon-file-code:before{content:"\EAE9"}.codicon-file-media:before{content:"\EAEA"}.codicon-file-pdf:before{content:"\EAEB"}.codicon-file-submodule:before{content:"\EAEC"}.codicon-file-symlink-directory:before{content:"\EAED"}.codicon-file-symlink-file:before{content:"\EAEE"}.codicon-file-zip:before{content:"\EAEF"}.codicon-files:before{content:"\EAF0"}.codicon-filter:before{content:"\EAF1"}.codicon-flame:before{content:"\EAF2"}.codicon-fold-down:before{content:"\EAF3"}.codicon-fold-up:before{content:"\EAF4"}.codicon-fold:before{content:"\EAF5"}.codicon-folder-active:before{content:"\EAF6"}.codicon-folder-opened:before{content:"\EAF7"}.codicon-gear:before{content:"\EAF8"}.codicon-gift:before{content:"\EAF9"}.codicon-gist-secret:before{content:"\EAFA"}.codicon-gist:before{content:"\EAFB"}.codicon-git-commit:before{content:"\EAFC"}.codicon-git-compare:before{content:"\EAFD"}.codicon-git-merge:before{content:"\EAFE"}.codicon-github-action:before{content:"\EAFF"}.codicon-github-alt:before{content:"\EB00"}.codicon-globe:before{content:"\EB01"}.codicon-grabber:before{content:"\EB02"}.codicon-graph:before{content:"\EB03"}.codicon-gripper:before{content:"\EB04"}.codicon-heart:before{content:"\EB05"}.codicon-home:before{content:"\EB06"}.codicon-horizontal-rule:before{content:"\EB07"}.codicon-hubot:before{content:"\EB08"}.codicon-inbox:before{content:"\EB09"}.codicon-issue-closed:before{content:"\EB0A"}.codicon-issue-reopened:before{content:"\EB0B"}.codicon-issues:before{content:"\EB0C"}.codicon-italic:before{content:"\EB0D"}.codicon-jersey:before{content:"\EB0E"}.codicon-json:before{content:"\EB0F"}.codicon-kebab-vertical:before{content:"\EB10"}.codicon-key:before{content:"\EB11"}.codicon-law:before{content:"\EB12"}.codicon-lightbulb-autofix:before{content:"\EB13"}.codicon-link-external:before{content:"\EB14"}.codicon-link:before{content:"\EB15"}.codicon-list-ordered:before{content:"\EB16"}.codicon-list-unordered:before{content:"\EB17"}.codicon-live-share:before{content:"\EB18"}.codicon-loading:before{content:"\EB19"}.codicon-location:before{content:"\EB1A"}.codicon-mail-read:before{content:"\EB1B"}.codicon-mail:before{content:"\EB1C"}.codicon-markdown:before{content:"\EB1D"}.codicon-megaphone:before{content:"\EB1E"}.codicon-mention:before{content:"\EB1F"}.codicon-milestone:before{content:"\EB20"}.codicon-mortar-board:before{content:"\EB21"}.codicon-move:before{content:"\EB22"}.codicon-multiple-windows:before{content:"\EB23"}.codicon-mute:before{content:"\EB24"}.codicon-no-newline:before{content:"\EB25"}.codicon-note:before{content:"\EB26"}.codicon-octoface:before{content:"\EB27"}.codicon-open-preview:before{content:"\EB28"}.codicon-package:before{content:"\EB29"}.codicon-paintcan:before{content:"\EB2A"}.codicon-pin:before{content:"\EB2B"}.codicon-play:before{content:"\EB2C"}.codicon-plug:before{content:"\EB2D"}.codicon-preserve-case:before{content:"\EB2E"}.codicon-preview:before{content:"\EB2F"}.codicon-project:before{content:"\EB30"}.codicon-pulse:before{content:"\EB31"}.codicon-question:before{content:"\EB32"}.codicon-quote:before{content:"\EB33"}.codicon-radio-tower:before{content:"\EB34"}.codicon-reactions:before{content:"\EB35"}.codicon-references:before{content:"\EB36"}.codicon-refresh:before{content:"\EB37"}.codicon-regex:before{content:"\EB38"}.codicon-remote-explorer:before{content:"\EB39"}.codicon-remote:before{content:"\EB3A"}.codicon-remove:before{content:"\EB3B"}.codicon-replace-all:before{content:"\EB3C"}.codicon-replace:before{content:"\EB3D"}.codicon-repo-clone:before{content:"\EB3E"}.codicon-repo-force-push:before{content:"\EB3F"}.codicon-repo-pull:before{content:"\EB40"}.codicon-repo-push:before{content:"\EB41"}.codicon-report:before{content:"\EB42"}.codicon-request-changes:before{content:"\EB43"}.codicon-rocket:before{content:"\EB44"}.codicon-root-folder-opened:before{content:"\EB45"}.codicon-root-folder:before{content:"\EB46"}.codicon-rss:before{content:"\EB47"}.codicon-ruby:before{content:"\EB48"}.codicon-save-all:before{content:"\EB49"}.codicon-save-as:before{content:"\EB4A"}.codicon-save:before{content:"\EB4B"}.codicon-screen-full:before{content:"\EB4C"}.codicon-screen-normal:before{content:"\EB4D"}.codicon-search-stop:before{content:"\EB4E"}.codicon-server:before{content:"\EB50"}.codicon-settings-gear:before{content:"\EB51"}.codicon-settings:before{content:"\EB52"}.codicon-shield:before{content:"\EB53"}.codicon-smiley:before{content:"\EB54"}.codicon-sort-precedence:before{content:"\EB55"}.codicon-split-horizontal:before{content:"\EB56"}.codicon-split-vertical:before{content:"\EB57"}.codicon-squirrel:before{content:"\EB58"}.codicon-star-full:before{content:"\EB59"}.codicon-star-half:before{content:"\EB5A"}.codicon-symbol-class:before{content:"\EB5B"}.codicon-symbol-color:before{content:"\EB5C"}.codicon-symbol-constant:before{content:"\EB5D"}.codicon-symbol-enum-member:before{content:"\EB5E"}.codicon-symbol-field:before{content:"\EB5F"}.codicon-symbol-file:before{content:"\EB60"}.codicon-symbol-interface:before{content:"\EB61"}.codicon-symbol-keyword:before{content:"\EB62"}.codicon-symbol-misc:before{content:"\EB63"}.codicon-symbol-operator:before{content:"\EB64"}.codicon-symbol-property:before{content:"\EB65"}.codicon-symbol-snippet:before{content:"\EB66"}.codicon-tasklist:before{content:"\EB67"}.codicon-telescope:before{content:"\EB68"}.codicon-text-size:before{content:"\EB69"}.codicon-three-bars:before{content:"\EB6A"}.codicon-thumbsdown:before{content:"\EB6B"}.codicon-thumbsup:before{content:"\EB6C"}.codicon-tools:before{content:"\EB6D"}.codicon-triangle-down:before{content:"\EB6E"}.codicon-triangle-left:before{content:"\EB6F"}.codicon-triangle-right:before{content:"\EB70"}.codicon-triangle-up:before{content:"\EB71"}.codicon-twitter:before{content:"\EB72"}.codicon-unfold:before{content:"\EB73"}.codicon-unlock:before{content:"\EB74"}.codicon-unmute:before{content:"\EB75"}.codicon-unverified:before{content:"\EB76"}.codicon-verified:before{content:"\EB77"}.codicon-versions:before{content:"\EB78"}.codicon-vm-active:before{content:"\EB79"}.codicon-vm-outline:before{content:"\EB7A"}.codicon-vm-running:before{content:"\EB7B"}.codicon-watch:before{content:"\EB7C"}.codicon-whitespace:before{content:"\EB7D"}.codicon-whole-word:before{content:"\EB7E"}.codicon-window:before{content:"\EB7F"}.codicon-word-wrap:before{content:"\EB80"}.codicon-zoom-in:before{content:"\EB81"}.codicon-zoom-out:before{content:"\EB82"}.codicon-list-filter:before{content:"\EB83"}.codicon-list-flat:before{content:"\EB84"}.codicon-list-selection:before,.codicon-selection:before{content:"\EB85"}.codicon-list-tree:before{content:"\EB86"}.codicon-debug-breakpoint-function-unverified:before{content:"\EB87"}.codicon-debug-breakpoint-function-disabled:before,.codicon-debug-breakpoint-function:before{content:"\EB88"}.codicon-debug-stackframe-active:before{content:"\EB89"}.codicon-debug-stackframe-dot:before{content:"\EB8A"}.codicon-debug-stackframe-focused:before,.codicon-debug-stackframe:before{content:"\EB8B"}.codicon-debug-breakpoint-unsupported:before{content:"\EB8C"}.codicon-symbol-string:before{content:"\EB8D"}.codicon-debug-reverse-continue:before{content:"\EB8E"}.codicon-debug-step-back:before{content:"\EB8F"}.codicon-debug-restart-frame:before{content:"\EB90"}.codicon-debug-alternate:before{content:"\EB91"}.codicon-call-incoming:before{content:"\EB92"}.codicon-call-outgoing:before{content:"\EB93"}.codicon-menu:before{content:"\EB94"}.codicon-expand-all:before{content:"\EB95"}.codicon-feedback:before{content:"\EB96"}.codicon-group-by-ref-type:before{content:"\EB97"}.codicon-ungroup-by-ref-type:before{content:"\EB98"}.codicon-debug-alt:before{content:"\F101"}@-webkit-keyframes codicon-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes codicon-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.codicon-animation-spin{-webkit-animation:codicon-spin 1.5s linear infinite;animation:codicon-spin 1.5s linear infinite}.monaco-list .monaco-list-row.focused.selected .outline-element-decoration,.monaco-list .monaco-list-row.focused.selected .outline-element .monaco-highlighted-label{color:inherit!important}.monaco-list .outline-element{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.monaco-list .outline-element .monaco-highlighted-label{color:var(--outline-element-color)}.monaco-tree .monaco-tree-row.focused .outline-element .outline-element-detail{visibility:inherit}.monaco-list .outline-element .outline-element-decoration{opacity:.75;font-size:90%;font-weight:600;padding:0 12px 0 5px;margin-left:auto;text-align:center;color:var(--outline-element-color)}.monaco-list .outline-element .outline-element-decoration.bubble{font-family:codicon;font-size:14px;opacity:.4}.monaco-list .outline-element .outline-element-icon{margin-right:4px}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-editor .accessibilityHelpWidget{padding:10px;vertical-align:middle;overflow:scroll}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iIzQyNDI0MiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+") 50% no-repeat;border:4px solid #f6f6f6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iI0M1QzVDNSIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+") 50% no-repeat;border:4px solid #252526}.monaco-editor .tokens-inspect-widget{z-index:50;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;padding:10px}.tokens-inspect-separator{height:1px;border:0}.monaco-editor .tokens-inspect-widget .tm-token{font-family:monospace}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:monospace;text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:monospace}.monaco-keybinding{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border:1px solid hsla(0,0%,80%,.4);border-bottom-color:hsla(0,0%,73.3%,.4);border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 hsla(0,0%,73.3%,.4);box-shadow:inset 0 -1px 0 hsla(0,0%,73.3%,.4);background-color:hsla(0,0%,86.7%,.4);vertical-align:middle;color:#555;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.hc-black .monaco-keybinding>.monaco-keybinding-key,.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:hsla(0,0%,50.2%,.17);color:#ccc;border:1px solid rgba(51,51,51,.6);border-bottom-color:rgba(68,68,68,.6);-webkit-box-shadow:inset 0 -1px 0 rgba(68,68,68,.6);box-shadow:inset 0 -1px 0 rgba(68,68,68,.6)}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}.monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#0066bf}.vs-dark .monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.vs-dark .monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.hc-black .monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#f38518}.monaco-quick-open-widget{position:absolute;width:600px;z-index:2000;padding-bottom:6px;left:50%;margin-left:-300px}.monaco-quick-open-widget .monaco-progress-container{position:absolute;left:0;top:38px;z-index:1;height:2px}.monaco-quick-open-widget .monaco-progress-container .progress-bit{height:2px}.monaco-quick-open-widget .quick-open-input{width:588px;border:none;margin:6px}.monaco-quick-open-widget .quick-open-input .monaco-inputbox{width:100%;height:25px}.monaco-quick-open-widget .quick-open-result-count{position:absolute;left:-10000px}.monaco-quick-open-widget .quick-open-tree{line-height:22px}.monaco-quick-open-widget .quick-open-tree .monaco-tree-row>.content>.sub-content{overflow:hidden}.monaco-quick-open-widget.content-changing .quick-open-tree .monaco-scrollable-element .slider{display:none}.monaco-quick-open-widget .quick-open-tree .quick-open-entry{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .quick-open-entry-icon,.monaco-quick-open-widget .quick-open-tree .quick-open-entry>.quick-open-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .quick-open-entry-icon{overflow:hidden;width:16px;height:16px;margin-right:4px;vertical-align:middle;-ms-flex-negative:0;flex-shrink:0}.monaco-quick-open-widget .quick-open-tree .monaco-icon-label,.monaco-quick-open-widget .quick-open-tree .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{-webkit-box-flex:1;-ms-flex:1;flex:1}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .monaco-highlighted-label span{opacity:1}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .monaco-highlighted-label .codicon{vertical-align:sub}.monaco-quick-open-widget .quick-open-tree .quick-open-entry-meta{opacity:.7;line-height:normal}.monaco-quick-open-widget .quick-open-tree .content.has-group-label .quick-open-entry-keybinding{margin-right:8px}.monaco-quick-open-widget .quick-open-tree .quick-open-entry-keybinding .monaco-keybinding-key{vertical-align:text-bottom}.monaco-quick-open-widget .quick-open-tree .results-group{margin-right:18px}.monaco-quick-open-widget .quick-open-tree .focused .monaco-tree-row.focused>.content.has-actions>.results-group,.monaco-quick-open-widget .quick-open-tree .monaco-tree-row.focused>.content.has-actions>.results-group,.monaco-quick-open-widget .quick-open-tree .monaco-tree-row:hover:not(.highlighted)>.content.has-actions>.results-group{margin-right:0}.monaco-quick-open-widget .quick-open-tree .results-group-separator{border-top-width:1px;border-top-style:solid;-webkit-box-sizing:border-box;box-sizing:border-box;margin-left:-11px;padding-left:11px}.monaco-tree .monaco-tree-row>.content.actions{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-tree .monaco-tree-row>.content.actions>.sub-content{-webkit-box-flex:1;-ms-flex:1;flex:1}.monaco-tree .monaco-tree-row>.content.actions .action-item{margin:0}.monaco-tree .monaco-tree-row>.content.actions>.primary-action-bar{line-height:22px;display:none;padding:0 .8em 0 .4em}.monaco-tree .monaco-tree-row.focused>.content.has-actions>.primary-action-bar{width:0;display:block}.monaco-tree.focused .monaco-tree-row.focused>.content.has-actions>.primary-action-bar,.monaco-tree .monaco-tree-row:hover:not(.highlighted)>.content.has-actions>.primary-action-bar,.monaco-tree .monaco-tree-row>.content.has-actions.more>.primary-action-bar{width:inherit;display:block}.monaco-tree .monaco-tree-row>.content.actions>.primary-action-bar .action-label{margin-right:.4em;margin-top:4px;background-repeat:no-repeat;width:16px;height:16px}.monaco-quick-open-widget .quick-open-tree .monaco-highlighted-label .highlight{font-weight:700}.monaco-tree{height:100%;width:100%;white-space:nowrap;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none;position:relative}.monaco-tree>.monaco-scrollable-element{height:100%}.monaco-tree>.monaco-scrollable-element>.monaco-tree-wrapper{height:100%;width:100%;position:relative}.monaco-tree .monaco-tree-rows{position:absolute;width:100%;height:100%}.monaco-tree .monaco-tree-rows>.monaco-tree-row{-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;width:100%;-ms-touch-action:none;touch-action:none}.monaco-tree .monaco-tree-rows>.monaco-tree-row>.content{position:relative;height:100%}.monaco-tree-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute}.monaco-tree .monaco-tree-rows>.monaco-tree-row.scrolling{display:none}.monaco-tree.highlighted .monaco-tree-rows>.monaco-tree-row:not(.highlighted){opacity:.3}.monaco-progress-container{width:100%;height:5px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:5px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;-webkit-transition:width .1s linear;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{-webkit-animation-name:progress;animation-name:progress;-webkit-animation-duration:4s;animation-duration:4s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-transform:translateZ(0);transform:translateZ(0)}@-webkit-keyframes progress{0%{-webkit-transform:translateX(0) scaleX(1);transform:translateX(0) scaleX(1)}50%{-webkit-transform:translateX(2500%) scaleX(3);transform:translateX(2500%) scaleX(3)}to{-webkit-transform:translateX(4950%) scaleX(1);transform:translateX(4950%) scaleX(1)}}@keyframes progress{0%{-webkit-transform:translateX(0) scaleX(1);transform:translateX(0) scaleX(1)}50%{-webkit-transform:translateX(2500%) scaleX(3);transform:translateX(2500%) scaleX(3)}to{-webkit-transform:translateX(4950%) scaleX(1);transform:translateX(4950%) scaleX(1)}}.monaco-quick-open-widget{font-size:13px} \ No newline at end of file +.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,Ubuntu,Droid Sans,sans-serif}.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor-hover p{margin:0}.monaco-editor.hc-black{-ms-high-contrast-adjust:none}@media screen and (-ms-high-contrast:active){.monaco-editor.vs-dark .view-overlays .current-line,.monaco-editor.vs .view-overlays .current-line{border-color:windowtext!important;border-left:0;border-right:0}.monaco-editor.vs-dark .cursor,.monaco-editor.vs .cursor{background-color:windowtext!important}.monaco-editor.vs-dark .dnd-target,.monaco-editor.vs .dnd-target{border-color:windowtext!important}.monaco-editor.vs-dark .selected-text,.monaco-editor.vs .selected-text{background-color:highlight!important}.monaco-editor.vs-dark .view-line,.monaco-editor.vs .view-line{-ms-high-contrast-adjust:none}.monaco-editor.vs-dark .view-line span,.monaco-editor.vs .view-line span{color:windowtext!important}.monaco-editor.vs-dark .view-line span.inline-selected-text,.monaco-editor.vs .view-line span.inline-selected-text{color:highlighttext!important}.monaco-editor.vs-dark .view-overlays,.monaco-editor.vs .view-overlays{-ms-high-contrast-adjust:none}.monaco-editor.vs-dark .reference-decoration,.monaco-editor.vs-dark .selectionHighlight,.monaco-editor.vs-dark .wordHighlight,.monaco-editor.vs-dark .wordHighlightStrong,.monaco-editor.vs .reference-decoration,.monaco-editor.vs .selectionHighlight,.monaco-editor.vs .wordHighlight,.monaco-editor.vs .wordHighlightStrong{border:2px dotted highlight!important;background:transparent!important;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .rangeHighlight,.monaco-editor.vs .rangeHighlight{background:transparent!important;border:1px dotted activeborder!important;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .bracket-match,.monaco-editor.vs .bracket-match{border-color:windowtext!important;background:transparent!important}.monaco-editor.vs-dark .currentFindMatch,.monaco-editor.vs-dark .findMatch,.monaco-editor.vs .currentFindMatch,.monaco-editor.vs .findMatch{border:2px dotted activeborder!important;background:transparent!important;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .find-widget,.monaco-editor.vs .find-widget{border:1px solid windowtext}.monaco-editor.vs-dark .monaco-list .monaco-list-row,.monaco-editor.vs .monaco-list .monaco-list-row{-ms-high-contrast-adjust:none;color:windowtext!important}.monaco-editor.vs-dark .monaco-list .monaco-list-row.focused,.monaco-editor.vs .monaco-list .monaco-list-row.focused{color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-list .monaco-list-row:hover,.monaco-editor.vs .monaco-list .monaco-list-row:hover{background:transparent!important;border:1px solid highlight;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row,.monaco-editor.vs .monaco-tree .monaco-tree-row{-ms-high-contrast-adjust:none;color:windowtext!important}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row.focused,.monaco-editor.vs-dark .monaco-tree .monaco-tree-row.selected,.monaco-editor.vs .monaco-tree .monaco-tree-row.focused,.monaco-editor.vs .monaco-tree .monaco-tree-row.selected{color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row:hover,.monaco-editor.vs .monaco-tree .monaco-tree-row:hover{background:transparent!important;border:1px solid highlight;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar,.monaco-editor.vs .monaco-scrollable-element>.scrollbar{-ms-high-contrast-adjust:none;background:background!important;border:1px solid windowtext;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider{background:windowtext!important}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider.active,.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider:hover,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider.active,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider:hover{background:highlight!important}.monaco-editor.vs-dark .decorationsOverviewRuler,.monaco-editor.vs .decorationsOverviewRuler{opacity:0}.monaco-editor.vs-dark .minimap,.monaco-editor.vs .minimap{display:none}.monaco-editor.vs-dark .squiggly-d-error,.monaco-editor.vs .squiggly-d-error{background:transparent!important;border-bottom:4px double #e47777}.monaco-editor.vs-dark .squiggly-b-info,.monaco-editor.vs-dark .squiggly-c-warning,.monaco-editor.vs .squiggly-b-info,.monaco-editor.vs .squiggly-c-warning{border-bottom:4px double #71b771}.monaco-editor.vs-dark .squiggly-a-hint,.monaco-editor.vs .squiggly-a-hint{border-bottom:4px double #6c6c6c}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{-ms-high-contrast-adjust:none;color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .action-label,.monaco-editor.vs .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .action-label{-ms-high-contrast-adjust:none;background:transparent!important;border:1px solid highlight;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-diff-editor.vs-dark .diffOverviewRuler,.monaco-diff-editor.vs .diffOverviewRuler{display:none}.monaco-editor.vs-dark .line-delete,.monaco-editor.vs-dark .line-insert,.monaco-editor.vs .line-delete,.monaco-editor.vs .line-insert{background:transparent!important;border:1px solid highlight!important;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.vs-dark .char-delete,.monaco-editor.vs-dark .char-insert,.monaco-editor.vs .char-delete,.monaco-editor.vs .char-insert{background:transparent!important}}.monaco-aria-container{position:absolute;left:-999em}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent}.monaco-editor .inputarea.ime-input{z-index:10}.monaco-editor .margin-view-overlays .line-numbers{position:absolute;text-align:right;display:inline-block;vertical-align:middle;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:default;height:100%}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .margin-view-overlays .current-line,.monaco-editor .view-overlays .current-line{display:block;position:absolute;left:0;top:0;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute}.monaco-scrollable-element>.scrollbar>.up-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkuNDggOC45NjFsMS4yNi0xLjI2LTUuMDQtNS4wNC01LjQ2IDUuMDQgMS4yNiAxLjI2IDQuMi0zLjc4IDMuNzggMy43OHoiIGZpbGw9IiM0MjQyNDIiLz48L3N2Zz4=");cursor:pointer}.monaco-scrollable-element>.scrollbar>.down-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTEuNSAyLjY2MkwuMjQgMy45MjJsNS4wNCA1LjA0IDUuNDYtNS4wNC0xLjI2LTEuMjYtNC4yIDMuNzgtMy43OC0zLjc4eiIvPjwvc3ZnPg==");cursor:pointer}.monaco-scrollable-element>.scrollbar>.left-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTguNjQgMS40NDFMNy4zOC4xODFsLTUuMDQgNS4wNCA1LjA0IDUuNDYgMS4yNi0xLjI2LTMuNzgtNC4yIDMuNzgtMy43OHoiLz48L3N2Zz4=");cursor:pointer}.monaco-scrollable-element>.scrollbar>.right-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTIuNDY3IDkuNTQ4bDEuMjYgMS4yNiA1LjA0LTUuMDQtNS4wNC01LjQ2LTEuMjYgMS4yNiAzLjc4IDQuMi0zLjc4IDMuNzh6Ii8+PC9zdmc+");cursor:pointer}.hc-black .monaco-scrollable-element>.scrollbar>.up-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.up-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkuNDggOC45NjFsMS4yNi0xLjI2LTUuMDQtNS4wNC01LjQ2IDUuMDQgMS4yNiAxLjI2IDQuMi0zLjc4IDMuNzggMy43OHoiIGZpbGw9IiNFOEU4RTgiLz48L3N2Zz4=")}.hc-black .monaco-scrollable-element>.scrollbar>.down-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.down-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTEuNSAyLjY2MkwuMjQgMy45MjJsNS4wNCA1LjA0IDUuNDYtNS4wNC0xLjI2LTEuMjYtNC4yIDMuNzgtMy43OC0zLjc4eiIvPjwvc3ZnPg==")}.hc-black .monaco-scrollable-element>.scrollbar>.left-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.left-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTguNjQgMS40NDFMNy4zOC4xODFsLTUuMDQgNS4wNCA1LjA0IDUuNDYgMS4yNi0xLjI2LTMuNzgtNC4yIDMuNzgtMy43OHoiLz48L3N2Zz4=")}.hc-black .monaco-scrollable-element>.scrollbar>.right-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.right-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTIuNDY3IDkuNTQ4bDEuMjYgMS4yNiA1LjA0LTUuMDQtNS4wNC01LjQ2LTEuMjYgMS4yNiAzLjc4IDQuMi0zLjc4IDMuNzh6Ii8+PC9zdmc+")}.monaco-scrollable-element>.visible{opacity:1;background:transparent;-webkit-transition:opacity .1s linear;transition:opacity .1s linear}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{-webkit-transition:opacity .8s linear;transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;-webkit-box-shadow:#ddd 0 6px 6px -6px inset;box-shadow:inset 0 6px 6px -6px #ddd}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;-webkit-box-shadow:#ddd 6px 0 6px -6px inset;box-shadow:inset 6px 0 6px -6px #ddd}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{-webkit-box-shadow:#ddd 6px 6px 6px -6px inset;box-shadow:inset 6px 6px 6px -6px #ddd}.vs .monaco-scrollable-element>.scrollbar>.slider{background:hsla(0,0%,39.2%,.4)}.vs-dark .monaco-scrollable-element>.scrollbar>.slider{background:hsla(0,0%,47.5%,.4)}.hc-black .monaco-scrollable-element>.scrollbar>.slider{background:rgba(111,195,223,.6)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:hsla(0,0%,39.2%,.7)}.hc-black .monaco-scrollable-element>.scrollbar>.slider:hover{background:rgba(111,195,223,.8)}.monaco-scrollable-element>.scrollbar>.slider.active{background:rgba(0,0,0,.6)}.vs-dark .monaco-scrollable-element>.scrollbar>.slider.active{background:hsla(0,0%,74.9%,.4)}.hc-black .monaco-scrollable-element>.scrollbar>.slider.active{background:#6fc3df}.vs-dark .monaco-scrollable-element .shadow.top{-webkit-box-shadow:none;box-shadow:none}.vs-dark .monaco-scrollable-element .shadow.left{-webkit-box-shadow:#000 6px 0 6px -6px inset;box-shadow:inset 6px 0 6px -6px #000}.vs-dark .monaco-scrollable-element .shadow.top.left{-webkit-box-shadow:#000 6px 6px 6px -6px inset;box-shadow:inset 6px 6px 6px -6px #000}.hc-black .monaco-scrollable-element .shadow.left,.hc-black .monaco-scrollable-element .shadow.top,.hc-black .monaco-scrollable-element .shadow.top.left{-webkit-box-shadow:none;box-shadow:none}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .margin-view-overlays .cgmr{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.monaco-editor .lines-content .cigr,.monaco-editor .lines-content .cigra{position:absolute}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .view-lines{cursor:text;white-space:nowrap}.monaco-editor.hc-black.mac .view-lines,.monaco-editor.vs-dark.mac .view-lines{cursor:-webkit-image-set(url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAAL0lEQVQoz2NgCD3x//9/BhBYBWdhgFVAiVW4JBFKGIa4AqD0//9D3pt4I4tAdAMAHTQ/j5Zom30AAAAASUVORK5CYII=) 1x,url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAAAz0lEQVRIx2NgYGBY/R8I/vx5eelX3n82IJ9FxGf6tksvf/8FiTMQAcAGQMDvSwu09abffY8QYSAScNk45G198eX//yev73/4///701eh//kZSARckrNBRvz//+8+6ZohwCzjGNjdgQxkAg7B9WADeBjIBqtJCbhRA0YNoIkBSNmaPEMoNmA0FkYNoFKhapJ6FGyAH3nauaSmPfwI0v/3OukVi0CIZ+F25KrtYcx/CTIy0e+rC7R1Z4KMICVTQQ14feVXIbR695u14+Ir4gwAAD49E54wc1kWAAAAAElFTkSuQmCC) 2x) 5 8,text}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;-webkit-transition:opacity .1s linear;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover .minimap-slider.active,.monaco-editor .minimap.slider-mouseover:hover .minimap-slider{opacity:1}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;cursor:text;overflow:hidden}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{-webkit-transition:all 80ms;transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{-webkit-box-sizing:border-box;box-sizing:border-box;background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important;-webkit-box-sizing:border-box;box-sizing:border-box}@-webkit-keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@-webkit-keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@-webkit-keyframes monaco-cursor-expand{0%,20%{-webkit-transform:scaleY(1);transform:scaleY(1)}80%,to{-webkit-transform:scaleY(0);transform:scaleY(0)}}@keyframes monaco-cursor-expand{0%,20%{-webkit-transform:scaleY(1);transform:scaleY(1)}80%,to{-webkit-transform:scaleY(0);transform:scaleY(0)}}.cursor-smooth{-webkit-animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{-webkit-animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{-webkit-animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor.vs .diffOverview{background:rgba(0,0,0,.03)}.monaco-diff-editor.vs-dark .diffOverview{background:hsla(0,0%,100%,.01)}.monaco-diff-editor .diffViewport{-webkit-box-shadow:inset 0 0 1px 0 #b9b9b9;box-shadow:inset 0 0 1px 0 #b9b9b9;background:rgba(0,0,0,.1)}.monaco-diff-editor.hc-black .diffViewport,.monaco-diff-editor.vs-dark .diffViewport{background:hsla(0,0%,100%,.1)}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar{background:transparent}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:hsla(0,0%,67.1%,.4)}.modified-in-monaco-diff-editor.hc-black .slider.active{background:none}.monaco-diff-editor .delete-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-editor .insert-sign{font-size:11px!important;opacity:.7!important;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.monaco-diff-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-editor.hc-black .insert-sign{opacity:1}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .inline-deleted-margin-view-zone{text-align:right}.monaco-editor .diagonal-fill{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAChJREFUKFNjOH/+fAMDDgCSu3Dhwn9c8gwwBTgNGR4KQP4HhQOhsAIAZCBTkhtqePcAAAAASUVORK5CYII=")}.monaco-editor.vs-dark .diagonal-fill{opacity:.2}.monaco-editor.hc-black .diagonal-fill{background:none}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-sash{position:absolute;z-index:35;-ms-touch-action:none;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.vertical{cursor:ew-resize;top:0;width:4px;height:100%}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:4px}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash:not(.disabled).orthogonal-end:after,.monaco-sash:not(.disabled).orthogonal-start:before{content:" ";height:8px;width:8px;z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.orthogonal-start.vertical:before{left:-2px;top:-4px}.monaco-sash.orthogonal-end.vertical:after{left:-2px;bottom:-4px}.monaco-sash.orthogonal-start.horizontal:before{top:-2px;left:-4px}.monaco-sash.orthogonal-end.horizontal:after{top:-2px;right:-4px}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.touch.vertical{width:20px}.monaco-sash.touch.horizontal{height:20px}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:rgba(0,255,255,.2)}.monaco-sash.debug:not(.disabled).orthogonal-end:after,.monaco-sash.debug:not(.disabled).orthogonal-start:before{background:red}.monaco-diff-editor .diff-review-line-number{text-align:right;display:inline-block}.monaco-diff-editor .diff-review{position:absolute;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-diff-editor .diff-review-summary{padding-left:10px}.monaco-diff-editor .diff-review-shadow{position:absolute}.monaco-diff-editor .diff-review-row{white-space:pre}.monaco-diff-editor .diff-review-table{display:table;min-width:100%}.monaco-diff-editor .diff-review-row{display:table-row;width:100%}.monaco-diff-editor .diff-review-cell{display:table-cell}.monaco-diff-editor .diff-review-spacer{display:inline-block;width:10px}.monaco-diff-editor .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px}.monaco-diff-editor .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-action-bar{text-align:right;overflow:hidden;white-space:nowrap}.monaco-action-bar .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 auto;padding:0;width:100%;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar.reverse .actions-container{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.monaco-action-bar .action-item{cursor:pointer;display:inline-block;-webkit-transition:-webkit-transform 50ms ease;transition:-webkit-transform 50ms ease;transition:transform 50ms ease;transition:transform 50ms ease,-webkit-transform 50ms ease;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar.animated .action-item.active{-webkit-transform:scale(1.272019649);transform:scale(1.272019649)}.monaco-action-bar .action-item .codicon,.monaco-action-bar .action-item .icon{display:inline-block}.monaco-action-bar .action-label{font-size:11px;margin-right:4px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:hover{opacity:.4}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar.animated.vertical .action-item.active{-webkit-transform:translate(5px);transform:translate(5px)}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;-webkit-box-flex:1;-ms-flex:1;flex:1;max-width:170px;min-width:60px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-right:10px}.context-view .monaco-menu{min-width:130px}.context-view-block{position:fixed;left:0;top:0;z-index:-1;width:100%;height:100%}.monaco-menu .monaco-action-bar.vertical{margin-left:0;overflow:visible}.monaco-menu .monaco-action-bar.vertical .actions-container{display:block}.monaco-menu .monaco-action-bar.vertical .action-item{padding:0;-webkit-transform:none;transform:none;display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-menu .monaco-action-bar.vertical .action-item.active{-webkit-transform:none;transform:none}.monaco-menu .monaco-action-bar.vertical .action-menu-item{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;display:-webkit-box;display:-ms-flexbox;display:flex;height:2em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative}.monaco-menu .monaco-action-bar.vertical .action-label{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;text-decoration:none;padding:0 1em;background:none;font-size:12px;line-height:1}.monaco-menu .monaco-action-bar.vertical .keybinding,.monaco-menu .monaco-action-bar.vertical .submenu-indicator{display:inline-block;-webkit-box-flex:2;-ms-flex:2 1 auto;flex:2 1 auto;padding:0 1em;text-align:right;font-size:12px;line-height:1}.monaco-menu .monaco-action-bar.vertical .submenu-indicator{height:100%}.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon{font-size:16px!important;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon:before{margin-left:auto;margin-right:-20px}.monaco-menu .monaco-action-bar.vertical .action-item.disabled .keybinding,.monaco-menu .monaco-action-bar.vertical .action-item.disabled .submenu-indicator{opacity:.4}.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator){display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0}.monaco-menu .monaco-action-bar.vertical .action-item{position:static;overflow:visible}.monaco-menu .monaco-action-bar.vertical .action-item .monaco-submenu{position:absolute}.monaco-menu .monaco-action-bar.vertical .action-label.separator{padding:.5em 0 0;margin-bottom:.5em;width:100%}.monaco-menu .monaco-action-bar.vertical .action-label.separator.text{padding:.7em 1em .1em;font-weight:700;opacity:1}.monaco-menu .monaco-action-bar.vertical .action-label:hover{color:inherit}.monaco-menu .monaco-action-bar.vertical .menu-item-check{position:absolute;visibility:hidden;width:1em;height:100%}.monaco-menu .monaco-action-bar.vertical .action-menu-item.checked .menu-item-check{visibility:visible;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.context-view.monaco-menu-container{outline:0;border:none;-webkit-animation:fadeIn 83ms linear;animation:fadeIn 83ms linear}.context-view.monaco-menu-container .monaco-action-bar.vertical:focus,.context-view.monaco-menu-container .monaco-action-bar.vertical :focus,.context-view.monaco-menu-container :focus{outline:0}.monaco-menu .monaco-action-bar.vertical .action-item{border:thin solid transparent}.hc-black .context-view.monaco-menu-container{-webkit-box-shadow:none;box-shadow:none}.hc-black .monaco-menu .monaco-action-bar.vertical .action-item.focused{background:none}.menubar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:1;flex-shrink:1;-webkit-box-sizing:border-box;box-sizing:border-box;height:30px;overflow:hidden;-ms-flex-wrap:wrap;flex-wrap:wrap}.fullscreen .menubar:not(.compact){margin:0;padding:0 5px}.menubar>.menubar-menu-button{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;padding:0 8px;cursor:default;-webkit-app-region:no-drag;zoom:1;white-space:nowrap;outline:0}.menubar.compact{-ms-flex-negative:0;flex-shrink:0}.menubar.compact>.menubar-menu-button{width:100%;height:100%;padding:0}.menubar .menubar-menu-items-holder{position:absolute;left:0;opacity:1;z-index:2000}.menubar .menubar-menu-items-holder.monaco-menu-container{outline:0;border:none}.menubar .menubar-menu-items-holder.monaco-menu-container :focus{outline:0}.menubar .toolbar-toggle-more{width:20px;height:100%}.menubar.compact .toolbar-toggle-more{position:absolute;left:0;top:0;cursor:pointer;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.menubar .toolbar-toggle-more{padding:0;vertical-align:sub}.menubar.compact .toolbar-toggle-more:before{content:"\EB94"!important}.context-view{position:absolute;z-index:2500}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;-ms-touch-action:none;touch-action:none}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-multiple,.monaco-list.selection-single{outline:0!important}.monaco-list:focus .monaco-list-row.selected .codicon{color:inherit}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute}.monaco-list-type-filter{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:absolute;border-radius:2px;padding:0 3px;max-width:calc(100% - 10px);text-overflow:ellipsis;overflow:hidden;text-align:right;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:all-scroll;font-size:13px;line-height:18px;height:20px;z-index:1;top:4px}.monaco-list-type-filter.dragging{-webkit-transition:top .2s,left .2s;transition:top .2s,left .2s}.monaco-list-type-filter.ne{right:4px}.monaco-list-type-filter.nw{left:4px}.monaco-list-type-filter>.controls{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .2s;transition:width .2s;width:0}.monaco-list-type-filter.dragging>.controls,.monaco-list-type-filter:hover>.controls{width:36px}.monaco-list-type-filter>.controls>*{border:none;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;background:none;width:16px;height:16px;-ms-flex-negative:0;flex-shrink:0;margin:0;padding:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;cursor:pointer}.monaco-list-type-filter>.controls>.filter:checked:before{content:"\EB83"!important}.monaco-list-type-filter>.controls>.filter{margin-left:4px}.monaco-list-type-filter-message{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-list-type-filter{cursor:-webkit-grab;cursor:grab}.monaco-list-type-filter.dragging{cursor:-webkit-grabbing;cursor:grabbing}.monaco-tl-row{display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;border-left:1px solid transparent;-webkit-transition:border-color .1s linear;transition:border-color .1s linear}.monaco-tl-contents,.monaco-tl-twistie{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;-ms-flex-negative:0;flex-shrink:0;width:16px;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:inherit!important;-webkit-transform:translateX(3px);transform:translateX(3px)}.monaco-tl-contents{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden}.monaco-tl-twistie.collapsed:before{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.monaco-tl-twistie.codicon-loading:before{-webkit-animation:codicon-spin 1.25s linear infinite;animation:codicon-spin 1.25s linear infinite}.monaco-editor .bracket-match{-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-menu .monaco-action-bar.vertical .action-label.hover{background-color:#eee}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{-webkit-animation:fadeIn .15s ease-out;animation:fadeIn .15s ease-out}@-webkit-keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{-webkit-animation:fadeOut .1s ease-out;animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:1px 4px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;z-index:1000;border:8px solid transparent;position:absolute}.monaco-editor .codicon-lightbulb,.monaco-editor .lightbulb-glyph{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:16px;width:20px;padding-left:2px}.monaco-editor .codicon-lightbulb:hover,.monaco-editor .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis}.monaco-editor .codelens-decoration>a,.monaco-editor .codelens-decoration>span{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@-webkit-keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{-webkit-animation:fadein .1s linear;animation:fadein .1s linear}.monaco-editor.vs .dnd-target{border-right:2px dotted #000;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #aeafad;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines{cursor:default}.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines{cursor:copy}.monaco-custom-checkbox{margin-left:2px;float:left;cursor:pointer;overflow:hidden;opacity:.7;width:20px;height:20px;border:1px solid transparent;padding:1px;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-custom-checkbox.checked,.monaco-custom-checkbox:hover{opacity:1}.hc-black .monaco-custom-checkbox,.hc-black .monaco-custom-checkbox:hover{background:none}.monaco-custom-checkbox.monaco-simple-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-custom-checkbox.monaco-simple-checkbox.unchecked:not(.checked):before{visibility:hidden}.monaco-editor .find-widget{position:absolute;z-index:10;height:33px;overflow:hidden;line-height:19px;-webkit-transition:-webkit-transform .2s linear;transition:-webkit-transform .2s linear;transition:transform .2s linear;transition:transform .2s linear,-webkit-transform .2s linear;padding:0 4px;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform:translateY(calc(-100% - 10px));transform:translateY(calc(-100% - 10px))}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-editor .find-widget.visible{-webkit-transform:translateY(0);transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:4px 0 0 17px;font-size:12px;display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.wrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.wrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions,.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;-webkit-box-sizing:border-box;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button,.monaco-editor .find-widget .matchesCount{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:initial;-ms-flex:initial;flex:initial}.monaco-editor .find-widget .button{width:20px;height:20px;margin-left:3px;background-position:50%;background-repeat:no-repeat;cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.monaco-editor .find-widget .button:not(.disabled):hover{background-color:rgba(0,0,0,.1)}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{opacity:.3;cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;vertical-align:middle;-webkit-box-flex:1;-ms-flex:auto;flex:auto;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .findMatch{-webkit-animation-duration:0;animation-duration:0;-webkit-animation-name:inherit!important;animation-name:inherit!important}.monaco-editor .find-widget .monaco-sash{width:2px!important;margin-left:-4px}.monaco-editor.hc-black .find-widget .button:not(.disabled):hover,.monaco-editor.vs-dark .find-widget .button:not(.disabled):hover{background-color:hsla(0,0%,100%,.1)}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls{-webkit-animation:monaco-findInput-highlight-0 .1s linear 0s;animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls{-webkit-animation:monaco-findInput-highlight-1 .1s linear 0s;animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{-webkit-animation:monaco-findInput-highlight-dark-0 .1s linear 0s;animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{-webkit-animation:monaco-findInput-highlight-dark-1 .1s linear 0s;animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@-webkit-keyframes monaco-findInput-highlight-0{0%{background:rgba(253,255,0,.8)}to{background:transparent}}@keyframes monaco-findInput-highlight-0{0%{background:rgba(253,255,0,.8)}to{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-1{0%{background:rgba(253,255,0,.8)}99%{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:rgba(253,255,0,.8)}99%{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-dark-0{0%{background:hsla(0,0%,100%,.44)}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:hsla(0,0%,100%,.44)}to{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-dark-1{0%{background:hsla(0,0%,100%,.44)}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:hsla(0,0%,100%,.44)}99%{background:transparent}}.monaco-inputbox{position:relative;display:block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box;font-size:inherit}.monaco-inputbox.idle{border:1px solid transparent}.monaco-inputbox>.wrapper>.input,.monaco-inputbox>.wrapper>.mirror{padding:4px}.monaco-inputbox>.wrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.wrapper>.input{display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.wrapper>input{text-overflow:ellipsis}.monaco-inputbox>.wrapper>textarea.input{display:block;-ms-overflow-style:none;scrollbar-width:none;outline:none}.monaco-inputbox>.wrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.wrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.wrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;-webkit-box-sizing:border-box;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;min-height:34px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-editor .margin-view-overlays .codicon-chevron-down,.monaco-editor .margin-view-overlays .codicon-chevron-right{cursor:pointer;opacity:0;-webkit-transition:opacity .5s;transition:opacity .5s;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons,.monaco-editor .margin-view-overlays .codicon.codicon-chevron-right,.monaco-editor .margin-view-overlays:hover .codicon{opacity:1}.monaco-editor .inline-folded:after{color:grey;margin:.1em .2em 0;content:"\22EF";display:inline;line-height:1em;cursor:pointer}.monaco-editor .peekview-widget .head{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-editor .peekview-widget .head .peekview-title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:13px;margin-left:20px;cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-item{margin-left:4px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-label{width:16px;height:100%;margin:0;line-height:inherit;background-repeat:no-repeat;background-position:50%}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-label.codicon{margin:0}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;width:100%;height:100%}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-icon-label{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:0;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;-ms-flex-negative:0;flex-shrink:0}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;-webkit-box-flex:1;-ms-flex:1;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.italic>.monaco-icon-description-container>.label-description,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{font-style:italic}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;padding:0 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after,.monaco-tree.focused .selected .monaco-icon-label,.monaco-tree.focused .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description,.monaco-tree-row.focused.selected .label-description,.monaco-tree-row.selected .label-description{opacity:.8}.monaco-count-badge{padding:3px 5px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:auto}.monaco-split-view2>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.split-view-container>.split-view-view{white-space:normal;position:absolute}.monaco-split-view2>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer}.monaco-editor-hover{cursor:default;position:absolute;overflow:hidden;z-index:50;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;-webkit-box-sizing:initial;box-sizing:initial;-webkit-animation:fadein .1s linear;animation:fadein .1s linear;line-height:1.5em}.monaco-editor-hover.hidden{display:none}.monaco-editor-hover .hover-contents{padding:4px 8px}.monaco-editor-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:500px;word-wrap:break-word}.monaco-editor-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100vw}.monaco-editor-hover p,.monaco-editor-hover ul{margin:8px 0}.monaco-editor-hover code{font-family:var(--monaco-monospace-font)}.monaco-editor-hover hr{margin:4px -10px -6px;height:1px}.monaco-editor-hover p:first-child,.monaco-editor-hover ul:first-child{margin-top:0}.monaco-editor-hover p:last-child,.monaco-editor-hover ul:last-child{margin-bottom:0}.monaco-editor-hover ol,.monaco-editor-hover ul{padding-left:20px}.monaco-editor-hover li>p{margin-bottom:0}.monaco-editor-hover li>ul{margin-top:0}.monaco-editor-hover code{border-radius:3px;padding:0 .4em}.monaco-editor-hover .monaco-tokenized-source{white-space:pre-wrap;word-break:break-all}.monaco-editor-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-editor-hover .hover-row.status-bar .actions{display:-webkit-box;display:-ms-flexbox;display:flex;padding:0 8px}.monaco-editor-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-editor-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-editor-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-editor-hover .hover-contents a.code-link:before{content:"("}.monaco-editor-hover .hover-contents a.code-link:after{content:")"}.monaco-editor-hover .hover-contents a.code-link{color:inherit}.monaco-editor-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under}.colorpicker-widget{height:190px;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .colorpicker-hover:focus{outline:none}.colorpicker-header{display:-webkit-box;display:-ms-flexbox;display:flex;height:24px;position:relative;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=");background-size:9px 9px;-ms-interpolation-mode:nearest-neighbor;image-rendering:-webkit-optimize-contrast;image-rendering:-moz-crisp-edges;image-rendering:-o-pixelated;image-rendering:pixelated}.colorpicker-header .picked-color{width:216px;line-height:24px;cursor:pointer;color:#fff;-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.colorpicker-body{display:-webkit-box;display:-ms-flexbox;display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;-webkit-box-flex:1;-ms-flex:1;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid #fff;border-radius:100%;-webkit-box-shadow:0 0 2px rgba(0,0,0,.8);box-shadow:0 0 2px rgba(0,0,0,.8);position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .hue-strip{background:-webkit-gradient(linear,left top,left bottom,from(red),color-stop(17%,#ff0),color-stop(33%,#0f0),color-stop(50%,#0ff),color-stop(67%,#00f),color-stop(83%,#f0f),to(red));background:linear-gradient(180deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.colorpicker-body .hue-strip,.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:-webkit-grab;cursor:grab}.colorpicker-body .opacity-strip{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=");background-size:9px 9px;-ms-interpolation-mode:nearest-neighbor;image-rendering:-webkit-optimize-contrast;image-rendering:-moz-crisp-edges;image-rendering:-o-pixelated;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:-webkit-grabbing;cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid hsla(0,0%,100%,.71);-webkit-box-shadow:0 0 1px rgba(0,0,0,.85);box-shadow:0 0 1px rgba(0,0,0,.85)}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer}.monaco-editor .parameter-hints-widget{z-index:10;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;line-height:1.5em}.monaco-editor .parameter-hints-widget>.wrapper{max-width:440px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.visible{-webkit-transition:left .05s ease-in-out;transition:left .05s ease-in-out}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .body,.monaco-editor .parameter-hints-widget .monaco-scrollable-element{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:normal}.monaco-editor .parameter-hints-widget .docs .markdown-docs code{font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs code{border-radius:3px;padding:0 .4em}.monaco-editor .parameter-hints-widget .controls{display:none;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-width:22px;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:-webkit-box;display:-ms-flexbox;display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;opacity:.5;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{font-weight:700;text-decoration:underline}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .rename-box{z-index:100;color:inherit}.monaco-editor .rename-box.preview{padding:3px 3px 0}.monaco-editor .rename-box .rename-input{padding:3px;width:calc(100% - 6px)}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .snippet-placeholder{min-width:2px}.monaco-editor .finish-snippet-placeholder,.monaco-editor .snippet-placeholder{outline-style:solid;outline-width:1px}.monaco-editor .suggest-widget{z-index:40;width:430px}.monaco-editor .suggest-widget>.details,.monaco-editor .suggest-widget>.message,.monaco-editor .suggest-widget>.tree{width:100%;border-style:solid;border-width:1px;-webkit-box-sizing:border-box;box-sizing:border-box}.monaco-editor.hc-black .suggest-widget>.details,.monaco-editor.hc-black .suggest-widget>.message,.monaco-editor.hc-black .suggest-widget>.tree{border-width:2px}.monaco-editor .suggest-widget.docs-side{width:660px}.monaco-editor .suggest-widget.docs-side>.details,.monaco-editor .suggest-widget.docs-side>.tree{width:50%;float:left}.monaco-editor .suggest-widget.docs-side.list-right>.details,.monaco-editor .suggest-widget.docs-side.list-right>.tree{float:right}.monaco-editor .suggest-widget>.details ol,.monaco-editor .suggest-widget>.details ul{padding-left:20px}.monaco-editor .suggest-widget>.details p code{font-family:var(--monaco-monospace-font)}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%}.monaco-editor .suggest-widget .monaco-list{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:-webkit-box;display:-ms-flexbox;display:flex;-mox-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;-ms-touch-action:none;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{-webkit-box-flex:1;-ms-flex:1;flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget>.suggest-status-bar{visibility:hidden;position:absolute;left:0;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%;font-size:80%;border-left-width:1px;border-left-style:solid;border-right-width:1px;border-right-style:solid;border-bottom-width:1px;border-bottom-style:solid;padding:1px 8px 1px 4px;-webkit-box-shadow:0 -.5px 3px #ddd;box-shadow:0 -.5px 3px #ddd}.monaco-editor .suggest-widget>.suggest-status-bar span{opacity:.7}.monaco-editor .suggest-widget.list-right.docs-side>.suggest-status-bar{left:auto;right:0}.monaco-editor .suggest-widget.docs-side>.suggest-status-bar{width:50%}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:2px;right:2px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:4px;opacity:.4;font-size:90%;text-overflow:ellipsis;overflow:hidden;line-height:17px;-ms-flex-item-align:center;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{margin-left:.8em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused>.contents>.main>.right.always-show-details>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right.always-show-details>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{-ms-flex-negative:1;flex-shrink:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{-ms-flex-negative:1;flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;-ms-flex-negative:0;flex-shrink:0;max-width:45%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-below .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right:not(.always-show-details)>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main>.right:not(.always-show-details)>.readMore{display:inline-block}.monaco-editor .suggest-widget.docs-below .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:50%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-widget .details{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;cursor:default}.monaco-editor .suggest-widget .details.no-docs{display:none}.monaco-editor .suggest-widget.docs-below .details{border-top-width:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element{-webkit-box-flex:1;-ms-flex:1;flex:1}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.type{-webkit-box-flex:2;-ms-flex:2;flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;word-break:break-all;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:normal;min-height:calc(1rem + 8px)}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-widget .details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-insert-unexpected{font-style:italic}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{visibility:visible}.monaco-editor .suggest-widget.with-status-bar>.tree{margin-bottom:18px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar span{min-height:18px}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused>.contents>.main>.right:not(.always-show-details)>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}@font-face{font-family:codicon;src:url(/static/fonts/codicon.a609dc0.ttf) format("truetype")}.codicon[class*=codicon-]{font:normal normal normal 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.codicon-add:before,.codicon-gist-new:before,.codicon-plus:before,.codicon-repo-create:before{content:"\EA60"}.codicon-light-bulb:before,.codicon-lightbulb:before{content:"\EA61"}.codicon-repo-delete:before,.codicon-repo:before{content:"\EA62"}.codicon-gist-fork:before,.codicon-repo-forked:before{content:"\EA63"}.codicon-git-pull-request-abandoned:before,.codicon-git-pull-request:before{content:"\EA64"}.codicon-keyboard:before,.codicon-record-keys:before{content:"\EA65"}.codicon-tag-add:before,.codicon-tag-remove:before,.codicon-tag:before{content:"\EA66"}.codicon-person-add:before,.codicon-person-filled:before,.codicon-person-follow:before,.codicon-person-outline:before,.codicon-person:before{content:"\EA67"}.codicon-git-branch-create:before,.codicon-git-branch-delete:before,.codicon-git-branch:before,.codicon-source-control:before{content:"\EA68"}.codicon-mirror-public:before,.codicon-mirror:before{content:"\EA69"}.codicon-star-add:before,.codicon-star-delete:before,.codicon-star-empty:before,.codicon-star:before{content:"\EA6A"}.codicon-comment-add:before,.codicon-comment:before{content:"\EA6B"}.codicon-alert:before,.codicon-warning:before{content:"\EA6C"}.codicon-search-save:before,.codicon-search:before{content:"\EA6D"}.codicon-log-out:before,.codicon-sign-out:before{content:"\EA6E"}.codicon-log-in:before,.codicon-sign-in:before{content:"\EA6F"}.codicon-eye-unwatch:before,.codicon-eye-watch:before,.codicon-eye:before{content:"\EA70"}.codicon-circle-filled:before,.codicon-close-dirty:before,.codicon-debug-breakpoint-disabled:before,.codicon-debug-breakpoint:before,.codicon-debug-hint:before,.codicon-primitive-dot:before{content:"\EA71"}.codicon-primitive-square:before{content:"\EA72"}.codicon-edit:before,.codicon-pencil:before{content:"\EA73"}.codicon-info:before,.codicon-issue-opened:before{content:"\EA74"}.codicon-gist-private:before,.codicon-git-fork-private:before,.codicon-lock:before,.codicon-mirror-private:before{content:"\EA75"}.codicon-close:before,.codicon-remove-close:before,.codicon-x:before{content:"\EA76"}.codicon-repo-sync:before,.codicon-sync:before{content:"\EA77"}.codicon-clone:before,.codicon-desktop-download:before{content:"\EA78"}.codicon-beaker:before,.codicon-microscope:before{content:"\EA79"}.codicon-device-desktop:before,.codicon-vm:before{content:"\EA7A"}.codicon-file-text:before,.codicon-file:before{content:"\EA7B"}.codicon-ellipsis:before,.codicon-kebab-horizontal:before,.codicon-more:before{content:"\EA7C"}.codicon-mail-reply:before,.codicon-reply:before{content:"\EA7D"}.codicon-organization-filled:before,.codicon-organization-outline:before,.codicon-organization:before{content:"\EA7E"}.codicon-file-add:before,.codicon-new-file:before{content:"\EA7F"}.codicon-file-directory-create:before,.codicon-new-folder:before{content:"\EA80"}.codicon-trash:before,.codicon-trashcan:before{content:"\EA81"}.codicon-clock:before,.codicon-history:before{content:"\EA82"}.codicon-file-directory:before,.codicon-folder:before,.codicon-symbol-folder:before{content:"\EA83"}.codicon-github:before,.codicon-logo-github:before,.codicon-mark-github:before{content:"\EA84"}.codicon-console:before,.codicon-repl:before,.codicon-terminal:before{content:"\EA85"}.codicon-symbol-event:before,.codicon-zap:before{content:"\EA86"}.codicon-error:before,.codicon-stop:before{content:"\EA87"}.codicon-symbol-variable:before,.codicon-variable:before{content:"\EA88"}.codicon-array:before,.codicon-symbol-array:before{content:"\EA8A"}.codicon-symbol-module:before,.codicon-symbol-namespace:before,.codicon-symbol-object:before,.codicon-symbol-package:before{content:"\EA8B"}.codicon-symbol-constructor:before,.codicon-symbol-function:before,.codicon-symbol-method:before{content:"\EA8C"}.codicon-symbol-boolean:before,.codicon-symbol-null:before{content:"\EA8F"}.codicon-symbol-number:before,.codicon-symbol-numeric:before{content:"\EA90"}.codicon-symbol-struct:before,.codicon-symbol-structure:before{content:"\EA91"}.codicon-symbol-parameter:before,.codicon-symbol-type-parameter:before{content:"\EA92"}.codicon-symbol-key:before,.codicon-symbol-text:before{content:"\EA93"}.codicon-go-to-file:before,.codicon-symbol-reference:before{content:"\EA94"}.codicon-symbol-enum:before,.codicon-symbol-value:before{content:"\EA95"}.codicon-symbol-ruler:before,.codicon-symbol-unit:before{content:"\EA96"}.codicon-activate-breakpoints:before{content:"\EA97"}.codicon-archive:before{content:"\EA98"}.codicon-arrow-both:before{content:"\EA99"}.codicon-arrow-down:before{content:"\EA9A"}.codicon-arrow-left:before{content:"\EA9B"}.codicon-arrow-right:before{content:"\EA9C"}.codicon-arrow-small-down:before{content:"\EA9D"}.codicon-arrow-small-left:before{content:"\EA9E"}.codicon-arrow-small-right:before{content:"\EA9F"}.codicon-arrow-small-up:before{content:"\EAA0"}.codicon-arrow-up:before{content:"\EAA1"}.codicon-bell:before{content:"\EAA2"}.codicon-bold:before{content:"\EAA3"}.codicon-book:before{content:"\EAA4"}.codicon-bookmark:before{content:"\EAA5"}.codicon-debug-breakpoint-conditional-unverified:before{content:"\EAA6"}.codicon-debug-breakpoint-conditional-disabled:before,.codicon-debug-breakpoint-conditional:before{content:"\EAA7"}.codicon-debug-breakpoint-data-unverified:before{content:"\EAA8"}.codicon-debug-breakpoint-data-disabled:before,.codicon-debug-breakpoint-data:before{content:"\EAA9"}.codicon-debug-breakpoint-log-unverified:before{content:"\EAAA"}.codicon-debug-breakpoint-log-disabled:before,.codicon-debug-breakpoint-log:before{content:"\EAAB"}.codicon-briefcase:before{content:"\EAAC"}.codicon-broadcast:before{content:"\EAAD"}.codicon-browser:before{content:"\EAAE"}.codicon-bug:before{content:"\EAAF"}.codicon-calendar:before{content:"\EAB0"}.codicon-case-sensitive:before{content:"\EAB1"}.codicon-check:before{content:"\EAB2"}.codicon-checklist:before{content:"\EAB3"}.codicon-chevron-down:before{content:"\EAB4"}.codicon-chevron-left:before{content:"\EAB5"}.codicon-chevron-right:before{content:"\EAB6"}.codicon-chevron-up:before{content:"\EAB7"}.codicon-chrome-close:before{content:"\EAB8"}.codicon-chrome-maximize:before{content:"\EAB9"}.codicon-chrome-minimize:before{content:"\EABA"}.codicon-chrome-restore:before{content:"\EABB"}.codicon-circle-outline:before,.codicon-debug-breakpoint-unverified:before{content:"\EABC"}.codicon-circle-slash:before{content:"\EABD"}.codicon-circuit-board:before{content:"\EABE"}.codicon-clear-all:before{content:"\EABF"}.codicon-clippy:before{content:"\EAC0"}.codicon-close-all:before{content:"\EAC1"}.codicon-cloud-download:before{content:"\EAC2"}.codicon-cloud-upload:before{content:"\EAC3"}.codicon-code:before{content:"\EAC4"}.codicon-collapse-all:before{content:"\EAC5"}.codicon-color-mode:before{content:"\EAC6"}.codicon-comment-discussion:before{content:"\EAC7"}.codicon-compare-changes:before{content:"\EAC8"}.codicon-credit-card:before{content:"\EAC9"}.codicon-dash:before{content:"\EACC"}.codicon-dashboard:before{content:"\EACD"}.codicon-database:before{content:"\EACE"}.codicon-debug-continue:before{content:"\EACF"}.codicon-debug-disconnect:before{content:"\EAD0"}.codicon-debug-pause:before{content:"\EAD1"}.codicon-debug-restart:before{content:"\EAD2"}.codicon-debug-start:before{content:"\EAD3"}.codicon-debug-step-into:before{content:"\EAD4"}.codicon-debug-step-out:before{content:"\EAD5"}.codicon-debug-step-over:before{content:"\EAD6"}.codicon-debug-stop:before{content:"\EAD7"}.codicon-debug:before{content:"\EAD8"}.codicon-device-camera-video:before{content:"\EAD9"}.codicon-device-camera:before{content:"\EADA"}.codicon-device-mobile:before{content:"\EADB"}.codicon-diff-added:before{content:"\EADC"}.codicon-diff-ignored:before{content:"\EADD"}.codicon-diff-modified:before{content:"\EADE"}.codicon-diff-removed:before{content:"\EADF"}.codicon-diff-renamed:before{content:"\EAE0"}.codicon-diff:before{content:"\EAE1"}.codicon-discard:before{content:"\EAE2"}.codicon-editor-layout:before{content:"\EAE3"}.codicon-empty-window:before{content:"\EAE4"}.codicon-exclude:before{content:"\EAE5"}.codicon-extensions:before{content:"\EAE6"}.codicon-eye-closed:before{content:"\EAE7"}.codicon-file-binary:before{content:"\EAE8"}.codicon-file-code:before{content:"\EAE9"}.codicon-file-media:before{content:"\EAEA"}.codicon-file-pdf:before{content:"\EAEB"}.codicon-file-submodule:before{content:"\EAEC"}.codicon-file-symlink-directory:before{content:"\EAED"}.codicon-file-symlink-file:before{content:"\EAEE"}.codicon-file-zip:before{content:"\EAEF"}.codicon-files:before{content:"\EAF0"}.codicon-filter:before{content:"\EAF1"}.codicon-flame:before{content:"\EAF2"}.codicon-fold-down:before{content:"\EAF3"}.codicon-fold-up:before{content:"\EAF4"}.codicon-fold:before{content:"\EAF5"}.codicon-folder-active:before{content:"\EAF6"}.codicon-folder-opened:before{content:"\EAF7"}.codicon-gear:before{content:"\EAF8"}.codicon-gift:before{content:"\EAF9"}.codicon-gist-secret:before{content:"\EAFA"}.codicon-gist:before{content:"\EAFB"}.codicon-git-commit:before{content:"\EAFC"}.codicon-git-compare:before{content:"\EAFD"}.codicon-git-merge:before{content:"\EAFE"}.codicon-github-action:before{content:"\EAFF"}.codicon-github-alt:before{content:"\EB00"}.codicon-globe:before{content:"\EB01"}.codicon-grabber:before{content:"\EB02"}.codicon-graph:before{content:"\EB03"}.codicon-gripper:before{content:"\EB04"}.codicon-heart:before{content:"\EB05"}.codicon-home:before{content:"\EB06"}.codicon-horizontal-rule:before{content:"\EB07"}.codicon-hubot:before{content:"\EB08"}.codicon-inbox:before{content:"\EB09"}.codicon-issue-closed:before{content:"\EB0A"}.codicon-issue-reopened:before{content:"\EB0B"}.codicon-issues:before{content:"\EB0C"}.codicon-italic:before{content:"\EB0D"}.codicon-jersey:before{content:"\EB0E"}.codicon-json:before{content:"\EB0F"}.codicon-kebab-vertical:before{content:"\EB10"}.codicon-key:before{content:"\EB11"}.codicon-law:before{content:"\EB12"}.codicon-lightbulb-autofix:before{content:"\EB13"}.codicon-link-external:before{content:"\EB14"}.codicon-link:before{content:"\EB15"}.codicon-list-ordered:before{content:"\EB16"}.codicon-list-unordered:before{content:"\EB17"}.codicon-live-share:before{content:"\EB18"}.codicon-loading:before{content:"\EB19"}.codicon-location:before{content:"\EB1A"}.codicon-mail-read:before{content:"\EB1B"}.codicon-mail:before{content:"\EB1C"}.codicon-markdown:before{content:"\EB1D"}.codicon-megaphone:before{content:"\EB1E"}.codicon-mention:before{content:"\EB1F"}.codicon-milestone:before{content:"\EB20"}.codicon-mortar-board:before{content:"\EB21"}.codicon-move:before{content:"\EB22"}.codicon-multiple-windows:before{content:"\EB23"}.codicon-mute:before{content:"\EB24"}.codicon-no-newline:before{content:"\EB25"}.codicon-note:before{content:"\EB26"}.codicon-octoface:before{content:"\EB27"}.codicon-open-preview:before{content:"\EB28"}.codicon-package:before{content:"\EB29"}.codicon-paintcan:before{content:"\EB2A"}.codicon-pin:before{content:"\EB2B"}.codicon-play:before{content:"\EB2C"}.codicon-plug:before{content:"\EB2D"}.codicon-preserve-case:before{content:"\EB2E"}.codicon-preview:before{content:"\EB2F"}.codicon-project:before{content:"\EB30"}.codicon-pulse:before{content:"\EB31"}.codicon-question:before{content:"\EB32"}.codicon-quote:before{content:"\EB33"}.codicon-radio-tower:before{content:"\EB34"}.codicon-reactions:before{content:"\EB35"}.codicon-references:before{content:"\EB36"}.codicon-refresh:before{content:"\EB37"}.codicon-regex:before{content:"\EB38"}.codicon-remote-explorer:before{content:"\EB39"}.codicon-remote:before{content:"\EB3A"}.codicon-remove:before{content:"\EB3B"}.codicon-replace-all:before{content:"\EB3C"}.codicon-replace:before{content:"\EB3D"}.codicon-repo-clone:before{content:"\EB3E"}.codicon-repo-force-push:before{content:"\EB3F"}.codicon-repo-pull:before{content:"\EB40"}.codicon-repo-push:before{content:"\EB41"}.codicon-report:before{content:"\EB42"}.codicon-request-changes:before{content:"\EB43"}.codicon-rocket:before{content:"\EB44"}.codicon-root-folder-opened:before{content:"\EB45"}.codicon-root-folder:before{content:"\EB46"}.codicon-rss:before{content:"\EB47"}.codicon-ruby:before{content:"\EB48"}.codicon-save-all:before{content:"\EB49"}.codicon-save-as:before{content:"\EB4A"}.codicon-save:before{content:"\EB4B"}.codicon-screen-full:before{content:"\EB4C"}.codicon-screen-normal:before{content:"\EB4D"}.codicon-search-stop:before{content:"\EB4E"}.codicon-server:before{content:"\EB50"}.codicon-settings-gear:before{content:"\EB51"}.codicon-settings:before{content:"\EB52"}.codicon-shield:before{content:"\EB53"}.codicon-smiley:before{content:"\EB54"}.codicon-sort-precedence:before{content:"\EB55"}.codicon-split-horizontal:before{content:"\EB56"}.codicon-split-vertical:before{content:"\EB57"}.codicon-squirrel:before{content:"\EB58"}.codicon-star-full:before{content:"\EB59"}.codicon-star-half:before{content:"\EB5A"}.codicon-symbol-class:before{content:"\EB5B"}.codicon-symbol-color:before{content:"\EB5C"}.codicon-symbol-constant:before{content:"\EB5D"}.codicon-symbol-enum-member:before{content:"\EB5E"}.codicon-symbol-field:before{content:"\EB5F"}.codicon-symbol-file:before{content:"\EB60"}.codicon-symbol-interface:before{content:"\EB61"}.codicon-symbol-keyword:before{content:"\EB62"}.codicon-symbol-misc:before{content:"\EB63"}.codicon-symbol-operator:before{content:"\EB64"}.codicon-symbol-property:before{content:"\EB65"}.codicon-symbol-snippet:before{content:"\EB66"}.codicon-tasklist:before{content:"\EB67"}.codicon-telescope:before{content:"\EB68"}.codicon-text-size:before{content:"\EB69"}.codicon-three-bars:before{content:"\EB6A"}.codicon-thumbsdown:before{content:"\EB6B"}.codicon-thumbsup:before{content:"\EB6C"}.codicon-tools:before{content:"\EB6D"}.codicon-triangle-down:before{content:"\EB6E"}.codicon-triangle-left:before{content:"\EB6F"}.codicon-triangle-right:before{content:"\EB70"}.codicon-triangle-up:before{content:"\EB71"}.codicon-twitter:before{content:"\EB72"}.codicon-unfold:before{content:"\EB73"}.codicon-unlock:before{content:"\EB74"}.codicon-unmute:before{content:"\EB75"}.codicon-unverified:before{content:"\EB76"}.codicon-verified:before{content:"\EB77"}.codicon-versions:before{content:"\EB78"}.codicon-vm-active:before{content:"\EB79"}.codicon-vm-outline:before{content:"\EB7A"}.codicon-vm-running:before{content:"\EB7B"}.codicon-watch:before{content:"\EB7C"}.codicon-whitespace:before{content:"\EB7D"}.codicon-whole-word:before{content:"\EB7E"}.codicon-window:before{content:"\EB7F"}.codicon-word-wrap:before{content:"\EB80"}.codicon-zoom-in:before{content:"\EB81"}.codicon-zoom-out:before{content:"\EB82"}.codicon-list-filter:before{content:"\EB83"}.codicon-list-flat:before{content:"\EB84"}.codicon-list-selection:before,.codicon-selection:before{content:"\EB85"}.codicon-list-tree:before{content:"\EB86"}.codicon-debug-breakpoint-function-unverified:before{content:"\EB87"}.codicon-debug-breakpoint-function-disabled:before,.codicon-debug-breakpoint-function:before{content:"\EB88"}.codicon-debug-stackframe-active:before{content:"\EB89"}.codicon-debug-stackframe-dot:before{content:"\EB8A"}.codicon-debug-stackframe-focused:before,.codicon-debug-stackframe:before{content:"\EB8B"}.codicon-debug-breakpoint-unsupported:before{content:"\EB8C"}.codicon-symbol-string:before{content:"\EB8D"}.codicon-debug-reverse-continue:before{content:"\EB8E"}.codicon-debug-step-back:before{content:"\EB8F"}.codicon-debug-restart-frame:before{content:"\EB90"}.codicon-debug-alternate:before{content:"\EB91"}.codicon-call-incoming:before{content:"\EB92"}.codicon-call-outgoing:before{content:"\EB93"}.codicon-menu:before{content:"\EB94"}.codicon-expand-all:before{content:"\EB95"}.codicon-feedback:before{content:"\EB96"}.codicon-group-by-ref-type:before{content:"\EB97"}.codicon-ungroup-by-ref-type:before{content:"\EB98"}.codicon-debug-alt:before{content:"\F101"}@-webkit-keyframes codicon-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes codicon-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.codicon-animation-spin{-webkit-animation:codicon-spin 1.5s linear infinite;animation:codicon-spin 1.5s linear infinite}.monaco-list .monaco-list-row.focused.selected .outline-element-decoration,.monaco-list .monaco-list-row.focused.selected .outline-element .monaco-highlighted-label{color:inherit!important}.monaco-list .outline-element{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.monaco-list .outline-element .monaco-highlighted-label{color:var(--outline-element-color)}.monaco-tree .monaco-tree-row.focused .outline-element .outline-element-detail{visibility:inherit}.monaco-list .outline-element .outline-element-decoration{opacity:.75;font-size:90%;font-weight:600;padding:0 12px 0 5px;margin-left:auto;text-align:center;color:var(--outline-element-color)}.monaco-list .outline-element .outline-element-decoration.bubble{font-family:codicon;font-size:14px;opacity:.4}.monaco-list .outline-element .outline-element-icon{margin-right:4px}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-editor .accessibilityHelpWidget{padding:10px;vertical-align:middle;overflow:scroll}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iIzQyNDI0MiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+") 50% no-repeat;border:4px solid #f6f6f6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iI0M1QzVDNSIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+") 50% no-repeat;border:4px solid #252526}.monaco-editor .tokens-inspect-widget{z-index:50;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;padding:10px}.tokens-inspect-separator{height:1px;border:0}.monaco-editor .tokens-inspect-widget .tm-token{font-family:monospace}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:monospace;text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:monospace}.monaco-keybinding{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border:1px solid hsla(0,0%,80%,.4);border-bottom-color:hsla(0,0%,73.3%,.4);border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 hsla(0,0%,73.3%,.4);box-shadow:inset 0 -1px 0 hsla(0,0%,73.3%,.4);background-color:hsla(0,0%,86.7%,.4);vertical-align:middle;color:#555;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.hc-black .monaco-keybinding>.monaco-keybinding-key,.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:hsla(0,0%,50.2%,.17);color:#ccc;border:1px solid rgba(51,51,51,.6);border-bottom-color:rgba(68,68,68,.6);-webkit-box-shadow:inset 0 -1px 0 rgba(68,68,68,.6);box-shadow:inset 0 -1px 0 rgba(68,68,68,.6)}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}.monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#0066bf}.vs-dark .monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.vs-dark .monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.hc-black .monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#f38518}.monaco-quick-open-widget{position:absolute;width:600px;z-index:2000;padding-bottom:6px;left:50%;margin-left:-300px}.monaco-quick-open-widget .monaco-progress-container{position:absolute;left:0;top:38px;z-index:1;height:2px}.monaco-quick-open-widget .monaco-progress-container .progress-bit{height:2px}.monaco-quick-open-widget .quick-open-input{width:588px;border:none;margin:6px}.monaco-quick-open-widget .quick-open-input .monaco-inputbox{width:100%;height:25px}.monaco-quick-open-widget .quick-open-result-count{position:absolute;left:-10000px}.monaco-quick-open-widget .quick-open-tree{line-height:22px}.monaco-quick-open-widget .quick-open-tree .monaco-tree-row>.content>.sub-content{overflow:hidden}.monaco-quick-open-widget.content-changing .quick-open-tree .monaco-scrollable-element .slider{display:none}.monaco-quick-open-widget .quick-open-tree .quick-open-entry{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .quick-open-entry-icon,.monaco-quick-open-widget .quick-open-tree .quick-open-entry>.quick-open-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .quick-open-entry-icon{overflow:hidden;width:16px;height:16px;margin-right:4px;vertical-align:middle;-ms-flex-negative:0;flex-shrink:0}.monaco-quick-open-widget .quick-open-tree .monaco-icon-label,.monaco-quick-open-widget .quick-open-tree .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{-webkit-box-flex:1;-ms-flex:1;flex:1}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .monaco-highlighted-label span{opacity:1}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .monaco-highlighted-label .codicon{vertical-align:sub}.monaco-quick-open-widget .quick-open-tree .quick-open-entry-meta{opacity:.7;line-height:normal}.monaco-quick-open-widget .quick-open-tree .content.has-group-label .quick-open-entry-keybinding{margin-right:8px}.monaco-quick-open-widget .quick-open-tree .quick-open-entry-keybinding .monaco-keybinding-key{vertical-align:text-bottom}.monaco-quick-open-widget .quick-open-tree .results-group{margin-right:18px}.monaco-quick-open-widget .quick-open-tree .focused .monaco-tree-row.focused>.content.has-actions>.results-group,.monaco-quick-open-widget .quick-open-tree .monaco-tree-row.focused>.content.has-actions>.results-group,.monaco-quick-open-widget .quick-open-tree .monaco-tree-row:hover:not(.highlighted)>.content.has-actions>.results-group{margin-right:0}.monaco-quick-open-widget .quick-open-tree .results-group-separator{border-top-width:1px;border-top-style:solid;-webkit-box-sizing:border-box;box-sizing:border-box;margin-left:-11px;padding-left:11px}.monaco-tree .monaco-tree-row>.content.actions{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex}.monaco-tree .monaco-tree-row>.content.actions>.sub-content{-webkit-box-flex:1;-ms-flex:1;flex:1}.monaco-tree .monaco-tree-row>.content.actions .action-item{margin:0}.monaco-tree .monaco-tree-row>.content.actions>.primary-action-bar{line-height:22px;display:none;padding:0 .8em 0 .4em}.monaco-tree .monaco-tree-row.focused>.content.has-actions>.primary-action-bar{width:0;display:block}.monaco-tree.focused .monaco-tree-row.focused>.content.has-actions>.primary-action-bar,.monaco-tree .monaco-tree-row:hover:not(.highlighted)>.content.has-actions>.primary-action-bar,.monaco-tree .monaco-tree-row>.content.has-actions.more>.primary-action-bar{width:inherit;display:block}.monaco-tree .monaco-tree-row>.content.actions>.primary-action-bar .action-label{margin-right:.4em;margin-top:4px;background-repeat:no-repeat;width:16px;height:16px}.monaco-quick-open-widget .quick-open-tree .monaco-highlighted-label .highlight{font-weight:700}.monaco-tree{height:100%;width:100%;white-space:nowrap;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none;position:relative}.monaco-tree>.monaco-scrollable-element{height:100%}.monaco-tree>.monaco-scrollable-element>.monaco-tree-wrapper{height:100%;width:100%;position:relative}.monaco-tree .monaco-tree-rows{position:absolute;width:100%;height:100%}.monaco-tree .monaco-tree-rows>.monaco-tree-row{-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;width:100%;-ms-touch-action:none;touch-action:none}.monaco-tree .monaco-tree-rows>.monaco-tree-row>.content{position:relative;height:100%}.monaco-tree-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute}.monaco-tree .monaco-tree-rows>.monaco-tree-row.scrolling{display:none}.monaco-tree.highlighted .monaco-tree-rows>.monaco-tree-row:not(.highlighted){opacity:.3}.monaco-progress-container{width:100%;height:5px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:5px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;-webkit-transition:width .1s linear;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{-webkit-animation-name:progress;animation-name:progress;-webkit-animation-duration:4s;animation-duration:4s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-transform:translateZ(0);transform:translateZ(0)}@-webkit-keyframes progress{0%{-webkit-transform:translateX(0) scaleX(1);transform:translateX(0) scaleX(1)}50%{-webkit-transform:translateX(2500%) scaleX(3);transform:translateX(2500%) scaleX(3)}to{-webkit-transform:translateX(4950%) scaleX(1);transform:translateX(4950%) scaleX(1)}}@keyframes progress{0%{-webkit-transform:translateX(0) scaleX(1);transform:translateX(0) scaleX(1)}50%{-webkit-transform:translateX(2500%) scaleX(3);transform:translateX(2500%) scaleX(3)}to{-webkit-transform:translateX(4950%) scaleX(1);transform:translateX(4950%) scaleX(1)}}.monaco-quick-open-widget{font-size:13px} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-f259.672e16c3.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-f259.672e16c3.css index 11308ebfd..e4ead7a4f 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-f259.672e16c3.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-f259.672e16c3.css @@ -1 +1 @@ -.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor .CodeMirror-line::selection,.cm-fat-cursor .CodeMirror-line>span::selection,.cm-fat-cursor .CodeMirror-line>span>span::selection{background:transparent}.cm-fat-cursor .CodeMirror-line::-moz-selection,.cm-fat-cursor .CodeMirror-line>span::-moz-selection,.cm-fat-cursor .CodeMirror-line>span>span::-moz-selection{background:transparent}.cm-fat-cursor{caret-color:transparent}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-invalidchar,.cm-s-default .cm-error{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:rgba(255,150,0,.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative;z-index:0}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none;outline:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{-webkit-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}.CodeMirror-focused div.CodeMirror-cursors,div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:rgba(255,255,0,.4)}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:""}span.CodeMirror-selectedtext{background:none}.cm-s-cobalt.CodeMirror{background:#002240;color:#fff}.cm-s-cobalt div.CodeMirror-selected{background:#b36539}.cm-s-cobalt .CodeMirror-line::selection,.cm-s-cobalt .CodeMirror-line>span::selection,.cm-s-cobalt .CodeMirror-line>span>span::selection{background:rgba(179,101,57,.99)}.cm-s-cobalt .CodeMirror-line::-moz-selection,.cm-s-cobalt .CodeMirror-line>span::-moz-selection,.cm-s-cobalt .CodeMirror-line>span>span::-moz-selection{background:rgba(179,101,57,.99)}.cm-s-cobalt .CodeMirror-gutters{background:#002240;border-right:1px solid #aaa}.cm-s-cobalt .CodeMirror-guttermarker{color:#ffee80}.cm-s-cobalt .CodeMirror-guttermarker-subtle,.cm-s-cobalt .CodeMirror-linenumber{color:#d0d0d0}.cm-s-cobalt .CodeMirror-cursor{border-left:1px solid #fff}.cm-s-cobalt span.cm-comment{color:#08f}.cm-s-cobalt span.cm-atom{color:#845dc4}.cm-s-cobalt span.cm-attribute,.cm-s-cobalt span.cm-number{color:#ff80e1}.cm-s-cobalt span.cm-keyword{color:#ffee80}.cm-s-cobalt span.cm-string{color:#3ad900}.cm-s-cobalt span.cm-meta{color:#ff9d00}.cm-s-cobalt span.cm-tag,.cm-s-cobalt span.cm-variable-2{color:#9effff}.cm-s-cobalt .cm-type,.cm-s-cobalt span.cm-def,.cm-s-cobalt span.cm-variable-3{color:#fff}.cm-s-cobalt span.cm-bracket{color:#d8d8d8}.cm-s-cobalt span.cm-builtin,.cm-s-cobalt span.cm-special{color:#ff9e59}.cm-s-cobalt span.cm-link{color:#845dc4}.cm-s-cobalt span.cm-error{color:#9d1e15}.cm-s-cobalt .CodeMirror-activeline-background{background:#002d57}.cm-s-cobalt .CodeMirror-matchingbracket{outline:1px solid grey;color:#fff!important}div.jsoneditor .jsoneditor-search input{height:auto;border:inherit}div.jsoneditor .jsoneditor-search input:focus{border:none!important;-webkit-box-shadow:none!important;box-shadow:none!important}div.jsoneditor table{border-collapse:collapse;width:auto}div.jsoneditor td,div.jsoneditor th{padding:0;display:table-cell;text-align:left;vertical-align:inherit;border-radius:inherit}div.jsoneditor-field,div.jsoneditor-readonly,div.jsoneditor-value{border:1px solid transparent;min-height:16px;min-width:32px;padding:2px;margin:1px;word-wrap:break-word;float:left}div.jsoneditor-field p,div.jsoneditor-value p{margin:0}div.jsoneditor-value{word-break:break-word}div.jsoneditor-readonly{min-width:16px;color:grey}div.jsoneditor-empty{border-color:#d3d3d3;border-style:dashed;border-radius:2px}div.jsoneditor-field.jsoneditor-empty:after,div.jsoneditor-value.jsoneditor-empty:after{pointer-events:none;color:#d3d3d3;font-size:8pt}div.jsoneditor-field.jsoneditor-empty:after{content:"field"}div.jsoneditor-value.jsoneditor-empty:after{content:"value"}a.jsoneditor-value.jsoneditor-url,div.jsoneditor-value.jsoneditor-url{color:green;text-decoration:underline}a.jsoneditor-value.jsoneditor-url{display:inline-block;padding:2px;margin:2px}a.jsoneditor-value.jsoneditor-url:focus,a.jsoneditor-value.jsoneditor-url:hover{color:#ee422e}div.jsoneditor td.jsoneditor-separator{padding:3px 0;vertical-align:top;color:grey}div.jsoneditor-field.jsoneditor-highlight,div.jsoneditor-field[contenteditable=true]:focus,div.jsoneditor-field[contenteditable=true]:hover,div.jsoneditor-value.jsoneditor-highlight,div.jsoneditor-value[contenteditable=true]:focus,div.jsoneditor-value[contenteditable=true]:hover{background-color:#ffffab;border:1px solid #ff0;border-radius:2px}div.jsoneditor-field.jsoneditor-highlight-active,div.jsoneditor-field.jsoneditor-highlight-active:focus,div.jsoneditor-field.jsoneditor-highlight-active:hover,div.jsoneditor-value.jsoneditor-highlight-active,div.jsoneditor-value.jsoneditor-highlight-active:focus,div.jsoneditor-value.jsoneditor-highlight-active:hover{background-color:#fe0;border:1px solid #ffc700;border-radius:2px}div.jsoneditor-value.jsoneditor-string{color:green}div.jsoneditor-value.jsoneditor-array,div.jsoneditor-value.jsoneditor-object{min-width:16px;color:grey}div.jsoneditor-value.jsoneditor-number{color:#ee422e}div.jsoneditor-value.jsoneditor-boolean{color:#ff8c00}div.jsoneditor-value.jsoneditor-null{color:#004ed0}div.jsoneditor-value.jsoneditor-invalid{color:#000}div.jsoneditor-tree button{width:24px;height:24px;padding:0;margin:0;border:none;cursor:pointer;background:transparent url(/static/img/jsoneditor-icons.256e3ab.svg)}div.jsoneditor-mode-form tr.jsoneditor-expandable td.jsoneditor-tree,div.jsoneditor-mode-view tr.jsoneditor-expandable td.jsoneditor-tree{cursor:pointer}div.jsoneditor-tree button.jsoneditor-collapsed{background-position:0 -48px}div.jsoneditor-tree button.jsoneditor-expanded{background-position:0 -72px}div.jsoneditor-tree button.jsoneditor-contextmenu{background-position:-48px -72px}div.jsoneditor-tree button.jsoneditor-contextmenu.jsoneditor-selected,div.jsoneditor-tree button.jsoneditor-contextmenu:focus,div.jsoneditor-tree button.jsoneditor-contextmenu:hover,tr.jsoneditor-selected.jsoneditor-first button.jsoneditor-contextmenu{background-position:-48px -48px}div.jsoneditor-tree :focus{outline:none}div.jsoneditor-tree button:focus{background-color:#f5f5f5;outline:1px solid #e5e5e5}div.jsoneditor-tree button.jsoneditor-invisible{visibility:hidden;background:none}div.jsoneditor{color:#1a1a1a;border:1px solid #3883fa;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;overflow:hidden;position:relative;padding:0;line-height:100%}div.jsoneditor-tree table.jsoneditor-tree{border-collapse:collapse;border-spacing:0;width:100%;margin:0}div.jsoneditor-outer{position:static;width:100%;height:100%;margin:-35px 0 0;padding:35px 0 0;-webkit-box-sizing:border-box;box-sizing:border-box}.ace-jsoneditor,textarea.jsoneditor-text{min-height:150px}div.jsoneditor-tree{width:100%;height:100%;position:relative;overflow:auto}textarea.jsoneditor-text{width:100%;height:100%;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box;outline-width:0;border:none;background-color:#fff;resize:none}tr.jsoneditor-highlight,tr.jsoneditor-selected{background-color:#e6e6e6}tr.jsoneditor-selected button.jsoneditor-contextmenu,tr.jsoneditor-selected button.jsoneditor-dragarea{visibility:hidden}tr.jsoneditor-selected.jsoneditor-first button.jsoneditor-contextmenu,tr.jsoneditor-selected.jsoneditor-first button.jsoneditor-dragarea{visibility:visible}div.jsoneditor-tree button.jsoneditor-dragarea{background:url(/static/img/jsoneditor-icons.256e3ab.svg) -72px -72px;cursor:move}div.jsoneditor-tree button.jsoneditor-dragarea:focus,div.jsoneditor-tree button.jsoneditor-dragarea:hover,tr.jsoneditor-selected.jsoneditor-first button.jsoneditor-dragarea{background-position:-72px -48px}div.jsoneditor td,div.jsoneditor th,div.jsoneditor tr{padding:0;margin:0}div.jsoneditor td,div.jsoneditor td.jsoneditor-tree{vertical-align:top}.jsoneditor-schema-error,div.jsoneditor-field,div.jsoneditor-value,div.jsoneditor td,div.jsoneditor textarea,div.jsoneditor th{font-family:droid sans mono,consolas,monospace,courier new,courier,sans-serif;font-size:10pt;color:#1a1a1a}.jsoneditor-schema-error{cursor:default;display:inline-block;height:24px;line-height:24px;position:relative;text-align:center;width:24px}div.jsoneditor-tree .jsoneditor-schema-error{width:24px;height:24px;padding:0;margin:0 4px 0 0;background:url(/static/img/jsoneditor-icons.256e3ab.svg) -168px -48px}.jsoneditor-schema-error .jsoneditor-popover{background-color:#4c4c4c;border-radius:3px;-webkit-box-shadow:0 0 5px rgba(0,0,0,.4);box-shadow:0 0 5px rgba(0,0,0,.4);color:#fff;display:none;padding:7px 10px;position:absolute;width:200px;z-index:4}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-above{bottom:32px;left:-98px}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-below{top:32px;left:-98px}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-left{top:-7px;right:32px}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-right{top:-7px;left:32px}.jsoneditor-schema-error .jsoneditor-popover:before{border-right:7px solid transparent;border-left:7px solid transparent;content:"";display:block;left:50%;margin-left:-7px;position:absolute}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-above:before{border-top:7px solid #4c4c4c;bottom:-7px}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-below:before{border-bottom:7px solid #4c4c4c;top:-7px}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-left:before{border-left:7px solid #4c4c4c;right:-14px;left:inherit}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-left:before,.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-right:before{border-top:7px solid transparent;border-bottom:7px solid transparent;content:"";top:19px;margin-left:inherit;margin-top:-7px;position:absolute}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-right:before{border-right:7px solid #4c4c4c;left:-14px}.jsoneditor-schema-error:focus .jsoneditor-popover,.jsoneditor-schema-error:hover .jsoneditor-popover{display:block;-webkit-animation:fade-in .3s linear 1,move-up .3s linear 1;-moz-animation:fade-in .3s linear 1,move-up .3s linear 1;-ms-animation:fade-in .3s linear 1,move-up .3s linear 1}@-webkit-keyframes fade-in{0%{opacity:0}to{opacity:1}}.jsoneditor .jsoneditor-text-errors{width:100%;border-collapse:collapse;background-color:#ffef8b;border-top:1px solid gold}.jsoneditor .jsoneditor-text-errors td{padding:3px 6px;vertical-align:middle}.jsoneditor-text-errors .jsoneditor-schema-error{border:none;width:24px;height:24px;padding:0;margin:0 4px 0 0;background:url(/static/img/jsoneditor-icons.256e3ab.svg) -168px -48px}div.jsoneditor-contextmenu-root{position:relative;width:0;height:0}div.jsoneditor-contextmenu{position:absolute;z-index:99999}div.jsoneditor-contextmenu,div.jsoneditor-contextmenu li,div.jsoneditor-contextmenu ul{-webkit-box-sizing:content-box;box-sizing:content-box}div.jsoneditor-contextmenu ul{position:relative;left:0;top:0;width:124px;background:#fff;border:1px solid #d3d3d3;-webkit-box-shadow:2px 2px 12px hsla(0,0%,50.2%,.3);box-shadow:2px 2px 12px hsla(0,0%,50.2%,.3);list-style:none;margin:0;padding:0}div.jsoneditor-contextmenu ul li button{padding:0;margin:0;width:124px;height:24px;border:none;cursor:pointer;color:#4d4d4d;background:transparent;font-size:10pt;font-family:arial,sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box;line-height:26px;text-align:left}div.jsoneditor-contextmenu ul li button::-moz-focus-inner{padding:0;border:0}div.jsoneditor-contextmenu ul li button:focus,div.jsoneditor-contextmenu ul li button:hover{color:#1a1a1a;background-color:#f5f5f5;outline:none}div.jsoneditor-contextmenu ul li button.jsoneditor-default{width:92px}div.jsoneditor-contextmenu ul li button.jsoneditor-expand{float:right;width:32px;height:24px;border-left:1px solid #e5e5e5}div.jsoneditor-contextmenu div.jsoneditor-icon{float:left;width:24px;height:24px;border:none;padding:0;margin:0;background-image:url(/static/img/jsoneditor-icons.256e3ab.svg)}div.jsoneditor-contextmenu ul li button div.jsoneditor-expand{float:right;width:24px;height:24px;padding:0;margin:0 4px 0 0;background:url(/static/img/jsoneditor-icons.256e3ab.svg) 0 -72px;opacity:.4}div.jsoneditor-contextmenu ul li.jsoneditor-selected div.jsoneditor-expand,div.jsoneditor-contextmenu ul li button.jsoneditor-expand:focus div.jsoneditor-expand,div.jsoneditor-contextmenu ul li button.jsoneditor-expand:hover div.jsoneditor-expand,div.jsoneditor-contextmenu ul li button:focus div.jsoneditor-expand,div.jsoneditor-contextmenu ul li button:hover div.jsoneditor-expand{opacity:1}div.jsoneditor-contextmenu div.jsoneditor-separator{height:0;border-top:1px solid #e5e5e5;padding-top:5px;margin-top:5px}div.jsoneditor-contextmenu button.jsoneditor-remove>div.jsoneditor-icon{background-position:-24px -24px}div.jsoneditor-contextmenu button.jsoneditor-remove:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-remove:hover>div.jsoneditor-icon{background-position:-24px 0}div.jsoneditor-contextmenu button.jsoneditor-append>div.jsoneditor-icon{background-position:0 -24px}div.jsoneditor-contextmenu button.jsoneditor-append:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-append:hover>div.jsoneditor-icon{background-position:0 0}div.jsoneditor-contextmenu button.jsoneditor-insert>div.jsoneditor-icon{background-position:0 -24px}div.jsoneditor-contextmenu button.jsoneditor-insert:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-insert:hover>div.jsoneditor-icon{background-position:0 0}div.jsoneditor-contextmenu button.jsoneditor-duplicate>div.jsoneditor-icon{background-position:-48px -24px}div.jsoneditor-contextmenu button.jsoneditor-duplicate:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-duplicate:hover>div.jsoneditor-icon{background-position:-48px 0}div.jsoneditor-contextmenu button.jsoneditor-sort-asc>div.jsoneditor-icon{background-position:-168px -24px}div.jsoneditor-contextmenu button.jsoneditor-sort-asc:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-sort-asc:hover>div.jsoneditor-icon{background-position:-168px 0}div.jsoneditor-contextmenu button.jsoneditor-sort-desc>div.jsoneditor-icon{background-position:-192px -24px}div.jsoneditor-contextmenu button.jsoneditor-sort-desc:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-sort-desc:hover>div.jsoneditor-icon{background-position:-192px 0}div.jsoneditor-contextmenu ul li button.jsoneditor-selected,div.jsoneditor-contextmenu ul li button.jsoneditor-selected:focus,div.jsoneditor-contextmenu ul li button.jsoneditor-selected:hover{color:#fff;background-color:#ee422e}div.jsoneditor-contextmenu ul li{overflow:hidden}div.jsoneditor-contextmenu ul li ul{display:none;position:relative;left:-10px;top:0;border:none;-webkit-box-shadow:inset 0 0 10px hsla(0,0%,50.2%,.5);box-shadow:inset 0 0 10px hsla(0,0%,50.2%,.5);padding:0 10px;-webkit-transition:all .3s ease-out;transition:all .3s ease-out}div.jsoneditor-contextmenu ul li ul li button{padding-left:24px;-webkit-animation:all 1s ease-in-out;animation:all 1s ease-in-out}div.jsoneditor-contextmenu ul li ul li button:focus,div.jsoneditor-contextmenu ul li ul li button:hover{background-color:#f5f5f5}div.jsoneditor-contextmenu button.jsoneditor-type-string>div.jsoneditor-icon{background-position:-144px -24px}div.jsoneditor-contextmenu button.jsoneditor-type-string.jsoneditor-selected>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-string:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-string:hover>div.jsoneditor-icon{background-position:-144px 0}div.jsoneditor-contextmenu button.jsoneditor-type-auto>div.jsoneditor-icon{background-position:-120px -24px}div.jsoneditor-contextmenu button.jsoneditor-type-auto.jsoneditor-selected>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-auto:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-auto:hover>div.jsoneditor-icon{background-position:-120px 0}div.jsoneditor-contextmenu button.jsoneditor-type-object>div.jsoneditor-icon{background-position:-72px -24px}div.jsoneditor-contextmenu button.jsoneditor-type-object.jsoneditor-selected>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-object:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-object:hover>div.jsoneditor-icon{background-position:-72px 0}div.jsoneditor-contextmenu button.jsoneditor-type-array>div.jsoneditor-icon{background-position:-96px -24px}div.jsoneditor-contextmenu button.jsoneditor-type-array.jsoneditor-selected>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-array:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-array:hover>div.jsoneditor-icon{background-position:-96px 0}div.jsoneditor-contextmenu button.jsoneditor-type-modes>div.jsoneditor-icon{background-image:none;width:6px}div.jsoneditor-menu{width:100%;height:35px;padding:2px;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;background-color:#3883fa;border-bottom:1px solid #3883fa}div.jsoneditor-menu>button,div.jsoneditor-menu>div.jsoneditor-modes>button{width:26px;height:26px;margin:2px;padding:0;border-radius:2px;border:1px solid transparent;background:transparent url(/static/img/jsoneditor-icons.256e3ab.svg);color:#fff;opacity:.8;font-family:arial,sans-serif;font-size:10pt;float:left}div.jsoneditor-menu>button:hover,div.jsoneditor-menu>div.jsoneditor-modes>button:hover{background-color:hsla(0,0%,100%,.2);border:1px solid hsla(0,0%,100%,.4)}div.jsoneditor-menu>button:active,div.jsoneditor-menu>button:focus,div.jsoneditor-menu>div.jsoneditor-modes>button:active,div.jsoneditor-menu>div.jsoneditor-modes>button:focus{background-color:hsla(0,0%,100%,.3)}div.jsoneditor-menu>button:disabled,div.jsoneditor-menu>div.jsoneditor-modes>button:disabled{opacity:.5}div.jsoneditor-menu>button.jsoneditor-collapse-all{background-position:0 -96px}div.jsoneditor-menu>button.jsoneditor-expand-all{background-position:0 -120px}div.jsoneditor-menu>button.jsoneditor-undo{background-position:-24px -96px}div.jsoneditor-menu>button.jsoneditor-undo:disabled{background-position:-24px -120px}div.jsoneditor-menu>button.jsoneditor-redo{background-position:-48px -96px}div.jsoneditor-menu>button.jsoneditor-redo:disabled{background-position:-48px -120px}div.jsoneditor-menu>button.jsoneditor-compact{background-position:-72px -96px}div.jsoneditor-menu>button.jsoneditor-format{background-position:-72px -120px}div.jsoneditor-menu>div.jsoneditor-modes{display:inline-block;float:left}div.jsoneditor-menu>div.jsoneditor-modes>button{background-image:none;width:auto;padding-left:6px;padding-right:6px}div.jsoneditor-menu>button.jsoneditor-separator,div.jsoneditor-menu>div.jsoneditor-modes>button.jsoneditor-separator{margin-left:10px}div.jsoneditor-menu a{font-family:arial,sans-serif;font-size:10pt;color:#fff;opacity:.8;vertical-align:middle}div.jsoneditor-menu a:hover{opacity:1}div.jsoneditor-menu a.jsoneditor-poweredBy{font-size:8pt;position:absolute;right:0;top:0;padding:10px}table.jsoneditor-search div.jsoneditor-results,table.jsoneditor-search input{font-family:arial,sans-serif;font-size:10pt;color:#1a1a1a;background:transparent}table.jsoneditor-search div.jsoneditor-results{color:#fff;padding-right:5px;line-height:24px}table.jsoneditor-search{position:absolute;right:4px;top:4px;border-collapse:collapse;border-spacing:0}table.jsoneditor-search div.jsoneditor-frame{border:1px solid transparent;background-color:#fff;padding:0 2px;margin:0}table.jsoneditor-search div.jsoneditor-frame table{border-collapse:collapse}table.jsoneditor-search input{width:120px;border:none;outline:none;margin:1px;line-height:20px}table.jsoneditor-search button{width:16px;height:24px;padding:0;margin:0;border:none;background:url(/static/img/jsoneditor-icons.256e3ab.svg);vertical-align:top}table.jsoneditor-search button:hover{background-color:transparent}table.jsoneditor-search button.jsoneditor-refresh{width:18px;background-position:-99px -73px}table.jsoneditor-search button.jsoneditor-next{cursor:pointer;background-position:-124px -73px}table.jsoneditor-search button.jsoneditor-next:hover{background-position:-124px -49px}table.jsoneditor-search button.jsoneditor-previous{cursor:pointer;background-position:-148px -73px;margin-right:2px}table.jsoneditor-search button.jsoneditor-previous:hover{background-position:-148px -49px}.ace_line_group[data-v-6a8ba07e]{text-align:left}.json-editor-container[data-v-6a8ba07e]{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.json-editor-container .tree-mode[data-v-6a8ba07e]{width:50%}.json-editor-container .code-mode[data-v-6a8ba07e]{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.jsoneditor-btns[data-v-6a8ba07e]{text-align:center;margin-top:10px}.jsoneditor-vue .jsoneditor-outer[data-v-6a8ba07e]{min-height:150px}.jsoneditor-vue div.jsoneditor-tree[data-v-6a8ba07e]{min-height:350px}.json-save-btn[data-v-6a8ba07e]{background-color:#20a0ff;border:none;color:#fff;padding:5px 10px;border-radius:5px;cursor:pointer}.json-save-btn[data-v-6a8ba07e]:focus{outline:none}.json-save-btn[disabled][data-v-6a8ba07e]{background-color:#1d8ce0;cursor:not-allowed}code[data-v-6a8ba07e]{background-color:#f5f5f5} \ No newline at end of file +.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor .CodeMirror-line::selection,.cm-fat-cursor .CodeMirror-line>span::selection,.cm-fat-cursor .CodeMirror-line>span>span::selection{background:transparent}.cm-fat-cursor .CodeMirror-line::-moz-selection,.cm-fat-cursor .CodeMirror-line>span::-moz-selection,.cm-fat-cursor .CodeMirror-line>span>span::-moz-selection{background:transparent}.cm-fat-cursor{caret-color:transparent}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-invalidchar,.cm-s-default .cm-error{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:rgba(255,150,0,.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative;z-index:0}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none;outline:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{-webkit-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}.CodeMirror-focused div.CodeMirror-cursors,div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:rgba(255,255,0,.4)}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:""}span.CodeMirror-selectedtext{background:none}.cm-s-cobalt.CodeMirror{background:#002240;color:#fff}.cm-s-cobalt div.CodeMirror-selected{background:#b36539}.cm-s-cobalt .CodeMirror-line::selection,.cm-s-cobalt .CodeMirror-line>span::selection,.cm-s-cobalt .CodeMirror-line>span>span::selection{background:rgba(179,101,57,.99)}.cm-s-cobalt .CodeMirror-line::-moz-selection,.cm-s-cobalt .CodeMirror-line>span::-moz-selection,.cm-s-cobalt .CodeMirror-line>span>span::-moz-selection{background:rgba(179,101,57,.99)}.cm-s-cobalt .CodeMirror-gutters{background:#002240;border-right:1px solid #aaa}.cm-s-cobalt .CodeMirror-guttermarker{color:#ffee80}.cm-s-cobalt .CodeMirror-guttermarker-subtle,.cm-s-cobalt .CodeMirror-linenumber{color:#d0d0d0}.cm-s-cobalt .CodeMirror-cursor{border-left:1px solid #fff}.cm-s-cobalt span.cm-comment{color:#08f}.cm-s-cobalt span.cm-atom{color:#845dc4}.cm-s-cobalt span.cm-attribute,.cm-s-cobalt span.cm-number{color:#ff80e1}.cm-s-cobalt span.cm-keyword{color:#ffee80}.cm-s-cobalt span.cm-string{color:#3ad900}.cm-s-cobalt span.cm-meta{color:#ff9d00}.cm-s-cobalt span.cm-tag,.cm-s-cobalt span.cm-variable-2{color:#9effff}.cm-s-cobalt .cm-type,.cm-s-cobalt span.cm-def,.cm-s-cobalt span.cm-variable-3{color:#fff}.cm-s-cobalt span.cm-bracket{color:#d8d8d8}.cm-s-cobalt span.cm-builtin,.cm-s-cobalt span.cm-special{color:#ff9e59}.cm-s-cobalt span.cm-link{color:#845dc4}.cm-s-cobalt span.cm-error{color:#9d1e15}.cm-s-cobalt .CodeMirror-activeline-background{background:#002d57}.cm-s-cobalt .CodeMirror-matchingbracket{outline:1px solid grey;color:#fff!important}div.jsoneditor .jsoneditor-search input{height:auto;border:inherit}div.jsoneditor .jsoneditor-search input:focus{border:none!important;-webkit-box-shadow:none!important;box-shadow:none!important}div.jsoneditor table{border-collapse:collapse;width:auto}div.jsoneditor td,div.jsoneditor th{padding:0;display:table-cell;text-align:left;vertical-align:inherit;border-radius:inherit}div.jsoneditor-field,div.jsoneditor-readonly,div.jsoneditor-value{border:1px solid transparent;min-height:16px;min-width:32px;padding:2px;margin:1px;word-wrap:break-word;float:left}div.jsoneditor-field p,div.jsoneditor-value p{margin:0}div.jsoneditor-value{word-break:break-word}div.jsoneditor-readonly{min-width:16px;color:grey}div.jsoneditor-empty{border-color:#d3d3d3;border-style:dashed;border-radius:2px}div.jsoneditor-field.jsoneditor-empty:after,div.jsoneditor-value.jsoneditor-empty:after{pointer-events:none;color:#d3d3d3;font-size:8pt}div.jsoneditor-field.jsoneditor-empty:after{content:"field"}div.jsoneditor-value.jsoneditor-empty:after{content:"value"}a.jsoneditor-value.jsoneditor-url,div.jsoneditor-value.jsoneditor-url{color:green;text-decoration:underline}a.jsoneditor-value.jsoneditor-url{display:inline-block;padding:2px;margin:2px}a.jsoneditor-value.jsoneditor-url:focus,a.jsoneditor-value.jsoneditor-url:hover{color:#ee422e}div.jsoneditor td.jsoneditor-separator{padding:3px 0;vertical-align:top;color:grey}div.jsoneditor-field.jsoneditor-highlight,div.jsoneditor-field[contenteditable=true]:focus,div.jsoneditor-field[contenteditable=true]:hover,div.jsoneditor-value.jsoneditor-highlight,div.jsoneditor-value[contenteditable=true]:focus,div.jsoneditor-value[contenteditable=true]:hover{background-color:#ffffab;border:1px solid #ff0;border-radius:2px}div.jsoneditor-field.jsoneditor-highlight-active,div.jsoneditor-field.jsoneditor-highlight-active:focus,div.jsoneditor-field.jsoneditor-highlight-active:hover,div.jsoneditor-value.jsoneditor-highlight-active,div.jsoneditor-value.jsoneditor-highlight-active:focus,div.jsoneditor-value.jsoneditor-highlight-active:hover{background-color:#fe0;border:1px solid #ffc700;border-radius:2px}div.jsoneditor-value.jsoneditor-string{color:green}div.jsoneditor-value.jsoneditor-array,div.jsoneditor-value.jsoneditor-object{min-width:16px;color:grey}div.jsoneditor-value.jsoneditor-number{color:#ee422e}div.jsoneditor-value.jsoneditor-boolean{color:#ff8c00}div.jsoneditor-value.jsoneditor-null{color:#004ed0}div.jsoneditor-value.jsoneditor-invalid{color:#000}div.jsoneditor-tree button{width:24px;height:24px;padding:0;margin:0;border:none;cursor:pointer;background:transparent url(/static/img/jsoneditor-icons.256e3ab.svg)}div.jsoneditor-mode-form tr.jsoneditor-expandable td.jsoneditor-tree,div.jsoneditor-mode-view tr.jsoneditor-expandable td.jsoneditor-tree{cursor:pointer}div.jsoneditor-tree button.jsoneditor-collapsed{background-position:0 -48px}div.jsoneditor-tree button.jsoneditor-expanded{background-position:0 -72px}div.jsoneditor-tree button.jsoneditor-contextmenu{background-position:-48px -72px}div.jsoneditor-tree button.jsoneditor-contextmenu.jsoneditor-selected,div.jsoneditor-tree button.jsoneditor-contextmenu:focus,div.jsoneditor-tree button.jsoneditor-contextmenu:hover,tr.jsoneditor-selected.jsoneditor-first button.jsoneditor-contextmenu{background-position:-48px -48px}div.jsoneditor-tree :focus{outline:none}div.jsoneditor-tree button:focus{background-color:#f5f5f5;outline:1px solid #e5e5e5}div.jsoneditor-tree button.jsoneditor-invisible{visibility:hidden;background:none}div.jsoneditor{color:#1a1a1a;border:1px solid #3883fa;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;overflow:hidden;position:relative;padding:0;line-height:100%}div.jsoneditor-tree table.jsoneditor-tree{border-collapse:collapse;border-spacing:0;width:100%;margin:0}div.jsoneditor-outer{position:static;width:100%;height:100%;margin:-35px 0 0;padding:35px 0 0;-webkit-box-sizing:border-box;box-sizing:border-box}.ace-jsoneditor,textarea.jsoneditor-text{min-height:150px}div.jsoneditor-tree{width:100%;height:100%;position:relative;overflow:auto}textarea.jsoneditor-text{width:100%;height:100%;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box;outline-width:0;border:none;background-color:#fff;resize:none}tr.jsoneditor-highlight,tr.jsoneditor-selected{background-color:#e6e6e6}tr.jsoneditor-selected button.jsoneditor-contextmenu,tr.jsoneditor-selected button.jsoneditor-dragarea{visibility:hidden}tr.jsoneditor-selected.jsoneditor-first button.jsoneditor-contextmenu,tr.jsoneditor-selected.jsoneditor-first button.jsoneditor-dragarea{visibility:visible}div.jsoneditor-tree button.jsoneditor-dragarea{background:url(/static/img/jsoneditor-icons.256e3ab.svg) -72px -72px;cursor:move}div.jsoneditor-tree button.jsoneditor-dragarea:focus,div.jsoneditor-tree button.jsoneditor-dragarea:hover,tr.jsoneditor-selected.jsoneditor-first button.jsoneditor-dragarea{background-position:-72px -48px}div.jsoneditor td,div.jsoneditor th,div.jsoneditor tr{padding:0;margin:0}div.jsoneditor td,div.jsoneditor td.jsoneditor-tree{vertical-align:top}.jsoneditor-schema-error,div.jsoneditor-field,div.jsoneditor-value,div.jsoneditor td,div.jsoneditor textarea,div.jsoneditor th{font-family:droid sans mono,consolas,monospace,courier new,courier,sans-serif;font-size:10pt;color:#1a1a1a}.jsoneditor-schema-error{cursor:default;display:inline-block;height:24px;line-height:24px;position:relative;text-align:center;width:24px}div.jsoneditor-tree .jsoneditor-schema-error{width:24px;height:24px;padding:0;margin:0 4px 0 0;background:url(/static/img/jsoneditor-icons.256e3ab.svg) -168px -48px}.jsoneditor-schema-error .jsoneditor-popover{background-color:#4c4c4c;border-radius:3px;-webkit-box-shadow:0 0 5px rgba(0,0,0,.4);box-shadow:0 0 5px rgba(0,0,0,.4);color:#fff;display:none;padding:7px 10px;position:absolute;width:200px;z-index:4}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-above{bottom:32px;left:-98px}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-below{top:32px;left:-98px}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-left{top:-7px;right:32px}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-right{top:-7px;left:32px}.jsoneditor-schema-error .jsoneditor-popover:before{border-right:7px solid transparent;border-left:7px solid transparent;content:"";display:block;left:50%;margin-left:-7px;position:absolute}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-above:before{border-top:7px solid #4c4c4c;bottom:-7px}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-below:before{border-bottom:7px solid #4c4c4c;top:-7px}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-left:before{border-left:7px solid #4c4c4c;right:-14px;left:inherit}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-left:before,.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-right:before{border-top:7px solid transparent;border-bottom:7px solid transparent;content:"";top:19px;margin-left:inherit;margin-top:-7px;position:absolute}.jsoneditor-schema-error .jsoneditor-popover.jsoneditor-right:before{border-right:7px solid #4c4c4c;left:-14px}.jsoneditor-schema-error:focus .jsoneditor-popover,.jsoneditor-schema-error:hover .jsoneditor-popover{display:block;-webkit-animation:fade-in .3s linear 1,move-up .3s linear 1;-moz-animation:fade-in .3s linear 1,move-up .3s linear 1;-ms-animation:fade-in .3s linear 1,move-up .3s linear 1}@-webkit-keyframes fade-in{0%{opacity:0}to{opacity:1}}.jsoneditor .jsoneditor-text-errors{width:100%;border-collapse:collapse;background-color:#ffef8b;border-top:1px solid gold}.jsoneditor .jsoneditor-text-errors td{padding:3px 6px;vertical-align:middle}.jsoneditor-text-errors .jsoneditor-schema-error{border:none;width:24px;height:24px;padding:0;margin:0 4px 0 0;background:url(/static/img/jsoneditor-icons.256e3ab.svg) -168px -48px}div.jsoneditor-contextmenu-root{position:relative;width:0;height:0}div.jsoneditor-contextmenu{position:absolute;z-index:99999}div.jsoneditor-contextmenu,div.jsoneditor-contextmenu li,div.jsoneditor-contextmenu ul{-webkit-box-sizing:content-box;box-sizing:content-box}div.jsoneditor-contextmenu ul{position:relative;left:0;top:0;width:124px;background:#fff;border:1px solid #d3d3d3;-webkit-box-shadow:2px 2px 12px hsla(0,0%,50.2%,.3);box-shadow:2px 2px 12px hsla(0,0%,50.2%,.3);list-style:none;margin:0;padding:0}div.jsoneditor-contextmenu ul li button{padding:0;margin:0;width:124px;height:24px;border:none;cursor:pointer;color:#4d4d4d;background:transparent;font-size:10pt;font-family:arial,sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box;line-height:26px;text-align:left}div.jsoneditor-contextmenu ul li button::-moz-focus-inner{padding:0;border:0}div.jsoneditor-contextmenu ul li button:focus,div.jsoneditor-contextmenu ul li button:hover{color:#1a1a1a;background-color:#f5f5f5;outline:none}div.jsoneditor-contextmenu ul li button.jsoneditor-default{width:92px}div.jsoneditor-contextmenu ul li button.jsoneditor-expand{float:right;width:32px;height:24px;border-left:1px solid #e5e5e5}div.jsoneditor-contextmenu div.jsoneditor-icon{float:left;width:24px;height:24px;border:none;padding:0;margin:0;background-image:url(/static/img/jsoneditor-icons.256e3ab.svg)}div.jsoneditor-contextmenu ul li button div.jsoneditor-expand{float:right;width:24px;height:24px;padding:0;margin:0 4px 0 0;background:url(/static/img/jsoneditor-icons.256e3ab.svg) 0 -72px;opacity:.4}div.jsoneditor-contextmenu ul li.jsoneditor-selected div.jsoneditor-expand,div.jsoneditor-contextmenu ul li button.jsoneditor-expand:focus div.jsoneditor-expand,div.jsoneditor-contextmenu ul li button.jsoneditor-expand:hover div.jsoneditor-expand,div.jsoneditor-contextmenu ul li button:focus div.jsoneditor-expand,div.jsoneditor-contextmenu ul li button:hover div.jsoneditor-expand{opacity:1}div.jsoneditor-contextmenu div.jsoneditor-separator{height:0;border-top:1px solid #e5e5e5;padding-top:5px;margin-top:5px}div.jsoneditor-contextmenu button.jsoneditor-remove>div.jsoneditor-icon{background-position:-24px -24px}div.jsoneditor-contextmenu button.jsoneditor-remove:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-remove:hover>div.jsoneditor-icon{background-position:-24px 0}div.jsoneditor-contextmenu button.jsoneditor-append>div.jsoneditor-icon{background-position:0 -24px}div.jsoneditor-contextmenu button.jsoneditor-append:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-append:hover>div.jsoneditor-icon{background-position:0 0}div.jsoneditor-contextmenu button.jsoneditor-insert>div.jsoneditor-icon{background-position:0 -24px}div.jsoneditor-contextmenu button.jsoneditor-insert:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-insert:hover>div.jsoneditor-icon{background-position:0 0}div.jsoneditor-contextmenu button.jsoneditor-duplicate>div.jsoneditor-icon{background-position:-48px -24px}div.jsoneditor-contextmenu button.jsoneditor-duplicate:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-duplicate:hover>div.jsoneditor-icon{background-position:-48px 0}div.jsoneditor-contextmenu button.jsoneditor-sort-asc>div.jsoneditor-icon{background-position:-168px -24px}div.jsoneditor-contextmenu button.jsoneditor-sort-asc:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-sort-asc:hover>div.jsoneditor-icon{background-position:-168px 0}div.jsoneditor-contextmenu button.jsoneditor-sort-desc>div.jsoneditor-icon{background-position:-192px -24px}div.jsoneditor-contextmenu button.jsoneditor-sort-desc:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-sort-desc:hover>div.jsoneditor-icon{background-position:-192px 0}div.jsoneditor-contextmenu ul li button.jsoneditor-selected,div.jsoneditor-contextmenu ul li button.jsoneditor-selected:focus,div.jsoneditor-contextmenu ul li button.jsoneditor-selected:hover{color:#fff;background-color:#ee422e}div.jsoneditor-contextmenu ul li{overflow:hidden}div.jsoneditor-contextmenu ul li ul{display:none;position:relative;left:-10px;top:0;border:none;-webkit-box-shadow:inset 0 0 10px hsla(0,0%,50.2%,.5);box-shadow:inset 0 0 10px hsla(0,0%,50.2%,.5);padding:0 10px;-webkit-transition:all .3s ease-out;transition:all .3s ease-out}div.jsoneditor-contextmenu ul li ul li button{padding-left:24px;-webkit-animation:all 1s ease-in-out;animation:all 1s ease-in-out}div.jsoneditor-contextmenu ul li ul li button:focus,div.jsoneditor-contextmenu ul li ul li button:hover{background-color:#f5f5f5}div.jsoneditor-contextmenu button.jsoneditor-type-string>div.jsoneditor-icon{background-position:-144px -24px}div.jsoneditor-contextmenu button.jsoneditor-type-string.jsoneditor-selected>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-string:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-string:hover>div.jsoneditor-icon{background-position:-144px 0}div.jsoneditor-contextmenu button.jsoneditor-type-auto>div.jsoneditor-icon{background-position:-120px -24px}div.jsoneditor-contextmenu button.jsoneditor-type-auto.jsoneditor-selected>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-auto:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-auto:hover>div.jsoneditor-icon{background-position:-120px 0}div.jsoneditor-contextmenu button.jsoneditor-type-object>div.jsoneditor-icon{background-position:-72px -24px}div.jsoneditor-contextmenu button.jsoneditor-type-object.jsoneditor-selected>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-object:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-object:hover>div.jsoneditor-icon{background-position:-72px 0}div.jsoneditor-contextmenu button.jsoneditor-type-array>div.jsoneditor-icon{background-position:-96px -24px}div.jsoneditor-contextmenu button.jsoneditor-type-array.jsoneditor-selected>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-array:focus>div.jsoneditor-icon,div.jsoneditor-contextmenu button.jsoneditor-type-array:hover>div.jsoneditor-icon{background-position:-96px 0}div.jsoneditor-contextmenu button.jsoneditor-type-modes>div.jsoneditor-icon{background-image:none;width:6px}div.jsoneditor-menu{width:100%;height:35px;padding:2px;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;background-color:#3883fa;border-bottom:1px solid #3883fa}div.jsoneditor-menu>button,div.jsoneditor-menu>div.jsoneditor-modes>button{width:26px;height:26px;margin:2px;padding:0;border-radius:2px;border:1px solid transparent;background:transparent url(/static/img/jsoneditor-icons.256e3ab.svg);color:#fff;opacity:.8;font-family:arial,sans-serif;font-size:10pt;float:left}div.jsoneditor-menu>button:hover,div.jsoneditor-menu>div.jsoneditor-modes>button:hover{background-color:hsla(0,0%,100%,.2);border:1px solid hsla(0,0%,100%,.4)}div.jsoneditor-menu>button:active,div.jsoneditor-menu>button:focus,div.jsoneditor-menu>div.jsoneditor-modes>button:active,div.jsoneditor-menu>div.jsoneditor-modes>button:focus{background-color:hsla(0,0%,100%,.3)}div.jsoneditor-menu>button:disabled,div.jsoneditor-menu>div.jsoneditor-modes>button:disabled{opacity:.5}div.jsoneditor-menu>button.jsoneditor-collapse-all{background-position:0 -96px}div.jsoneditor-menu>button.jsoneditor-expand-all{background-position:0 -120px}div.jsoneditor-menu>button.jsoneditor-undo{background-position:-24px -96px}div.jsoneditor-menu>button.jsoneditor-undo:disabled{background-position:-24px -120px}div.jsoneditor-menu>button.jsoneditor-redo{background-position:-48px -96px}div.jsoneditor-menu>button.jsoneditor-redo:disabled{background-position:-48px -120px}div.jsoneditor-menu>button.jsoneditor-compact{background-position:-72px -96px}div.jsoneditor-menu>button.jsoneditor-format{background-position:-72px -120px}div.jsoneditor-menu>div.jsoneditor-modes{display:inline-block;float:left}div.jsoneditor-menu>div.jsoneditor-modes>button{background-image:none;width:auto;padding-left:6px;padding-right:6px}div.jsoneditor-menu>button.jsoneditor-separator,div.jsoneditor-menu>div.jsoneditor-modes>button.jsoneditor-separator{margin-left:10px}div.jsoneditor-menu a{font-family:arial,sans-serif;font-size:10pt;color:#fff;opacity:.8;vertical-align:middle}div.jsoneditor-menu a:hover{opacity:1}div.jsoneditor-menu a.jsoneditor-poweredBy{font-size:8pt;position:absolute;right:0;top:0;padding:10px}table.jsoneditor-search div.jsoneditor-results,table.jsoneditor-search input{font-family:arial,sans-serif;font-size:10pt;color:#1a1a1a;background:transparent}table.jsoneditor-search div.jsoneditor-results{color:#fff;padding-right:5px;line-height:24px}table.jsoneditor-search{position:absolute;right:4px;top:4px;border-collapse:collapse;border-spacing:0}table.jsoneditor-search div.jsoneditor-frame{border:1px solid transparent;background-color:#fff;padding:0 2px;margin:0}table.jsoneditor-search div.jsoneditor-frame table{border-collapse:collapse}table.jsoneditor-search input{width:120px;border:none;outline:none;margin:1px;line-height:20px}table.jsoneditor-search button{width:16px;height:24px;padding:0;margin:0;border:none;background:url(/static/img/jsoneditor-icons.256e3ab.svg);vertical-align:top}table.jsoneditor-search button:hover{background-color:transparent}table.jsoneditor-search button.jsoneditor-refresh{width:18px;background-position:-99px -73px}table.jsoneditor-search button.jsoneditor-next{cursor:pointer;background-position:-124px -73px}table.jsoneditor-search button.jsoneditor-next:hover{background-position:-124px -49px}table.jsoneditor-search button.jsoneditor-previous{cursor:pointer;background-position:-148px -73px;margin-right:2px}table.jsoneditor-search button.jsoneditor-previous:hover{background-position:-148px -49px}.ace_line_group[data-v-6a8ba07e]{text-align:left}.json-editor-container[data-v-6a8ba07e]{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.json-editor-container .tree-mode[data-v-6a8ba07e]{width:50%}.json-editor-container .code-mode[data-v-6a8ba07e]{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.jsoneditor-btns[data-v-6a8ba07e]{text-align:center;margin-top:10px}.jsoneditor-vue .jsoneditor-outer[data-v-6a8ba07e]{min-height:150px}.jsoneditor-vue div.jsoneditor-tree[data-v-6a8ba07e]{min-height:350px}.json-save-btn[data-v-6a8ba07e]{background-color:#20a0ff;border:none;color:#fff;padding:5px 10px;border-radius:5px;cursor:pointer}.json-save-btn[data-v-6a8ba07e]:focus{outline:none}.json-save-btn[disabled][data-v-6a8ba07e]{background-color:#1d8ce0;cursor:not-allowed}code[data-v-6a8ba07e]{background-color:#f5f5f5} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-fd33.278be50e.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-fd33.278be50e.css index 8ee6d889b..dde9f3f1e 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-fd33.278be50e.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-fd33.278be50e.css @@ -1 +1 @@ -.wscn-http404-container[data-v-0e9cfd02]{-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);position:absolute;top:40%;left:50%}.wscn-http404[data-v-0e9cfd02]{position:relative;width:1200px;padding:0 50px;overflow:hidden}.wscn-http404 .pic-404[data-v-0e9cfd02]{position:relative;float:left;width:600px;overflow:hidden}.wscn-http404 .pic-404__parent[data-v-0e9cfd02]{width:100%}.wscn-http404 .pic-404__child[data-v-0e9cfd02]{position:absolute}.wscn-http404 .pic-404__child.left[data-v-0e9cfd02]{width:80px;top:17px;left:220px;opacity:0;-webkit-animation-name:cloudLeft-data-v-0e9cfd02;animation-name:cloudLeft-data-v-0e9cfd02;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-delay:1s;animation-delay:1s}.wscn-http404 .pic-404__child.mid[data-v-0e9cfd02]{width:46px;top:10px;left:420px;opacity:0;-webkit-animation-name:cloudMid-data-v-0e9cfd02;animation-name:cloudMid-data-v-0e9cfd02;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-delay:1.2s;animation-delay:1.2s}.wscn-http404 .pic-404__child.right[data-v-0e9cfd02]{width:62px;top:100px;left:500px;opacity:0;-webkit-animation-name:cloudRight-data-v-0e9cfd02;animation-name:cloudRight-data-v-0e9cfd02;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-delay:1s;animation-delay:1s}@-webkit-keyframes cloudLeft-data-v-0e9cfd02{0%{top:17px;left:220px;opacity:0}20%{top:33px;left:188px;opacity:1}80%{top:81px;left:92px;opacity:1}to{top:97px;left:60px;opacity:0}}@keyframes cloudLeft-data-v-0e9cfd02{0%{top:17px;left:220px;opacity:0}20%{top:33px;left:188px;opacity:1}80%{top:81px;left:92px;opacity:1}to{top:97px;left:60px;opacity:0}}@-webkit-keyframes cloudMid-data-v-0e9cfd02{0%{top:10px;left:420px;opacity:0}20%{top:40px;left:360px;opacity:1}70%{top:130px;left:180px;opacity:1}to{top:160px;left:120px;opacity:0}}@keyframes cloudMid-data-v-0e9cfd02{0%{top:10px;left:420px;opacity:0}20%{top:40px;left:360px;opacity:1}70%{top:130px;left:180px;opacity:1}to{top:160px;left:120px;opacity:0}}@-webkit-keyframes cloudRight-data-v-0e9cfd02{0%{top:100px;left:500px;opacity:0}20%{top:120px;left:460px;opacity:1}80%{top:180px;left:340px;opacity:1}to{top:200px;left:300px;opacity:0}}@keyframes cloudRight-data-v-0e9cfd02{0%{top:100px;left:500px;opacity:0}20%{top:120px;left:460px;opacity:1}80%{top:180px;left:340px;opacity:1}to{top:200px;left:300px;opacity:0}}.wscn-http404 .bullshit[data-v-0e9cfd02]{position:relative;float:left;width:300px;padding:30px 0;overflow:hidden}.wscn-http404 .bullshit__oops[data-v-0e9cfd02]{font-size:32px;line-height:40px;color:#1482f0;margin-bottom:20px;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.wscn-http404 .bullshit__headline[data-v-0e9cfd02],.wscn-http404 .bullshit__oops[data-v-0e9cfd02]{font-weight:700;opacity:0;-webkit-animation-name:slideUp-data-v-0e9cfd02;animation-name:slideUp-data-v-0e9cfd02;-webkit-animation-duration:.5s;animation-duration:.5s}.wscn-http404 .bullshit__headline[data-v-0e9cfd02]{font-size:20px;line-height:24px;color:#222;margin-bottom:10px;-webkit-animation-delay:.1s;animation-delay:.1s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.wscn-http404 .bullshit__info[data-v-0e9cfd02]{font-size:13px;line-height:21px;color:grey;margin-bottom:30px;-webkit-animation-delay:.2s;animation-delay:.2s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.wscn-http404 .bullshit__info[data-v-0e9cfd02],.wscn-http404 .bullshit__return-home[data-v-0e9cfd02]{opacity:0;-webkit-animation-name:slideUp-data-v-0e9cfd02;animation-name:slideUp-data-v-0e9cfd02;-webkit-animation-duration:.5s;animation-duration:.5s}.wscn-http404 .bullshit__return-home[data-v-0e9cfd02]{display:block;float:left;width:110px;height:36px;background:#1482f0;border-radius:100px;text-align:center;color:#fff;font-size:14px;line-height:36px;cursor:pointer;-webkit-animation-delay:.3s;animation-delay:.3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@-webkit-keyframes slideUp-data-v-0e9cfd02{0%{-webkit-transform:translateY(60px);transform:translateY(60px);opacity:0}to{-webkit-transform:translateY(0);transform:translateY(0);opacity:1}}@keyframes slideUp-data-v-0e9cfd02{0%{-webkit-transform:translateY(60px);transform:translateY(60px);opacity:0}to{-webkit-transform:translateY(0);transform:translateY(0);opacity:1}} \ No newline at end of file +.wscn-http404-container[data-v-0e9cfd02]{-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);position:absolute;top:40%;left:50%}.wscn-http404[data-v-0e9cfd02]{position:relative;width:1200px;padding:0 50px;overflow:hidden}.wscn-http404 .pic-404[data-v-0e9cfd02]{position:relative;float:left;width:600px;overflow:hidden}.wscn-http404 .pic-404__parent[data-v-0e9cfd02]{width:100%}.wscn-http404 .pic-404__child[data-v-0e9cfd02]{position:absolute}.wscn-http404 .pic-404__child.left[data-v-0e9cfd02]{width:80px;top:17px;left:220px;opacity:0;-webkit-animation-name:cloudLeft-data-v-0e9cfd02;animation-name:cloudLeft-data-v-0e9cfd02;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-delay:1s;animation-delay:1s}.wscn-http404 .pic-404__child.mid[data-v-0e9cfd02]{width:46px;top:10px;left:420px;opacity:0;-webkit-animation-name:cloudMid-data-v-0e9cfd02;animation-name:cloudMid-data-v-0e9cfd02;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-delay:1.2s;animation-delay:1.2s}.wscn-http404 .pic-404__child.right[data-v-0e9cfd02]{width:62px;top:100px;left:500px;opacity:0;-webkit-animation-name:cloudRight-data-v-0e9cfd02;animation-name:cloudRight-data-v-0e9cfd02;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-delay:1s;animation-delay:1s}@-webkit-keyframes cloudLeft-data-v-0e9cfd02{0%{top:17px;left:220px;opacity:0}20%{top:33px;left:188px;opacity:1}80%{top:81px;left:92px;opacity:1}to{top:97px;left:60px;opacity:0}}@keyframes cloudLeft-data-v-0e9cfd02{0%{top:17px;left:220px;opacity:0}20%{top:33px;left:188px;opacity:1}80%{top:81px;left:92px;opacity:1}to{top:97px;left:60px;opacity:0}}@-webkit-keyframes cloudMid-data-v-0e9cfd02{0%{top:10px;left:420px;opacity:0}20%{top:40px;left:360px;opacity:1}70%{top:130px;left:180px;opacity:1}to{top:160px;left:120px;opacity:0}}@keyframes cloudMid-data-v-0e9cfd02{0%{top:10px;left:420px;opacity:0}20%{top:40px;left:360px;opacity:1}70%{top:130px;left:180px;opacity:1}to{top:160px;left:120px;opacity:0}}@-webkit-keyframes cloudRight-data-v-0e9cfd02{0%{top:100px;left:500px;opacity:0}20%{top:120px;left:460px;opacity:1}80%{top:180px;left:340px;opacity:1}to{top:200px;left:300px;opacity:0}}@keyframes cloudRight-data-v-0e9cfd02{0%{top:100px;left:500px;opacity:0}20%{top:120px;left:460px;opacity:1}80%{top:180px;left:340px;opacity:1}to{top:200px;left:300px;opacity:0}}.wscn-http404 .bullshit[data-v-0e9cfd02]{position:relative;float:left;width:300px;padding:30px 0;overflow:hidden}.wscn-http404 .bullshit__oops[data-v-0e9cfd02]{font-size:32px;line-height:40px;color:#1482f0;margin-bottom:20px;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.wscn-http404 .bullshit__headline[data-v-0e9cfd02],.wscn-http404 .bullshit__oops[data-v-0e9cfd02]{font-weight:700;opacity:0;-webkit-animation-name:slideUp-data-v-0e9cfd02;animation-name:slideUp-data-v-0e9cfd02;-webkit-animation-duration:.5s;animation-duration:.5s}.wscn-http404 .bullshit__headline[data-v-0e9cfd02]{font-size:20px;line-height:24px;color:#222;margin-bottom:10px;-webkit-animation-delay:.1s;animation-delay:.1s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.wscn-http404 .bullshit__info[data-v-0e9cfd02]{font-size:13px;line-height:21px;color:grey;margin-bottom:30px;-webkit-animation-delay:.2s;animation-delay:.2s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.wscn-http404 .bullshit__info[data-v-0e9cfd02],.wscn-http404 .bullshit__return-home[data-v-0e9cfd02]{opacity:0;-webkit-animation-name:slideUp-data-v-0e9cfd02;animation-name:slideUp-data-v-0e9cfd02;-webkit-animation-duration:.5s;animation-duration:.5s}.wscn-http404 .bullshit__return-home[data-v-0e9cfd02]{display:block;float:left;width:110px;height:36px;background:#1482f0;border-radius:100px;text-align:center;color:#fff;font-size:14px;line-height:36px;cursor:pointer;-webkit-animation-delay:.3s;animation-delay:.3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@-webkit-keyframes slideUp-data-v-0e9cfd02{0%{-webkit-transform:translateY(60px);transform:translateY(60px);opacity:0}to{-webkit-transform:translateY(0);transform:translateY(0);opacity:1}}@keyframes slideUp-data-v-0e9cfd02{0%{-webkit-transform:translateY(60px);transform:translateY(60px);opacity:0}to{-webkit-transform:translateY(0);transform:translateY(0);opacity:1}} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-libs.7f32c9ff.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-libs.7f32c9ff.css index 77ab35fb6..3b975925d 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-libs.7f32c9ff.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/css/chunk-libs.7f32c9ff.css @@ -1,2 +1,2 @@ @charset "UTF-8";.el-pagination--small .arrow.disabled,.el-table--hidden,.el-table .el-table__cell.is-hidden>*,.el-table .hidden-columns{visibility:hidden}.el-dropdown .el-dropdown-selfdefine:focus:active,.el-dropdown .el-dropdown-selfdefine:focus:not(.focusing),.el-message__closeBtn:focus,.el-message__content:focus,.el-popover:focus,.el-popover:focus:active,.el-popover__reference:focus:hover,.el-popover__reference:focus:not(.focusing),.el-rate:active,.el-rate:focus,.el-tooltip:focus:hover,.el-tooltip:focus:not(.focusing),.el-upload-list__item.is-success:active,.el-upload-list__item.is-success:not(.focusing):focus{outline-width:0}.el-input__suffix,.el-tree.is-dragging .el-tree-node__content *{pointer-events:none}@font-face{font-family:element-icons;src:url(/static/fonts/element-icons.535877f.woff) format("woff"),url(/static/fonts/element-icons.732389d.ttf) format("truetype");font-weight:400;font-display:"auto";font-style:normal}[class*=" el-icon-"],[class^=el-icon-]{font-family:element-icons!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;vertical-align:baseline;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.el-icon-ice-cream-round:before{content:"\E6A0"}.el-icon-ice-cream-square:before{content:"\E6A3"}.el-icon-lollipop:before{content:"\E6A4"}.el-icon-potato-strips:before{content:"\E6A5"}.el-icon-milk-tea:before{content:"\E6A6"}.el-icon-ice-drink:before{content:"\E6A7"}.el-icon-ice-tea:before{content:"\E6A9"}.el-icon-coffee:before{content:"\E6AA"}.el-icon-orange:before{content:"\E6AB"}.el-icon-pear:before{content:"\E6AC"}.el-icon-apple:before{content:"\E6AD"}.el-icon-cherry:before{content:"\E6AE"}.el-icon-watermelon:before{content:"\E6AF"}.el-icon-grape:before{content:"\E6B0"}.el-icon-refrigerator:before{content:"\E6B1"}.el-icon-goblet-square-full:before{content:"\E6B2"}.el-icon-goblet-square:before{content:"\E6B3"}.el-icon-goblet-full:before{content:"\E6B4"}.el-icon-goblet:before{content:"\E6B5"}.el-icon-cold-drink:before{content:"\E6B6"}.el-icon-coffee-cup:before{content:"\E6B8"}.el-icon-water-cup:before{content:"\E6B9"}.el-icon-hot-water:before{content:"\E6BA"}.el-icon-ice-cream:before{content:"\E6BB"}.el-icon-dessert:before{content:"\E6BC"}.el-icon-sugar:before{content:"\E6BD"}.el-icon-tableware:before{content:"\E6BE"}.el-icon-burger:before{content:"\E6BF"}.el-icon-knife-fork:before{content:"\E6C1"}.el-icon-fork-spoon:before{content:"\E6C2"}.el-icon-chicken:before{content:"\E6C3"}.el-icon-food:before{content:"\E6C4"}.el-icon-dish-1:before{content:"\E6C5"}.el-icon-dish:before{content:"\E6C6"}.el-icon-moon-night:before{content:"\E6EE"}.el-icon-moon:before{content:"\E6F0"}.el-icon-cloudy-and-sunny:before{content:"\E6F1"}.el-icon-partly-cloudy:before{content:"\E6F2"}.el-icon-cloudy:before{content:"\E6F3"}.el-icon-sunny:before{content:"\E6F6"}.el-icon-sunset:before{content:"\E6F7"}.el-icon-sunrise-1:before{content:"\E6F8"}.el-icon-sunrise:before{content:"\E6F9"}.el-icon-heavy-rain:before{content:"\E6FA"}.el-icon-lightning:before{content:"\E6FB"}.el-icon-light-rain:before{content:"\E6FC"}.el-icon-wind-power:before{content:"\E6FD"}.el-icon-baseball:before{content:"\E712"}.el-icon-soccer:before{content:"\E713"}.el-icon-football:before{content:"\E715"}.el-icon-basketball:before{content:"\E716"}.el-icon-ship:before{content:"\E73F"}.el-icon-truck:before{content:"\E740"}.el-icon-bicycle:before{content:"\E741"}.el-icon-mobile-phone:before{content:"\E6D3"}.el-icon-service:before{content:"\E6D4"}.el-icon-key:before{content:"\E6E2"}.el-icon-unlock:before{content:"\E6E4"}.el-icon-lock:before{content:"\E6E5"}.el-icon-watch:before{content:"\E6FE"}.el-icon-watch-1:before{content:"\E6FF"}.el-icon-timer:before{content:"\E702"}.el-icon-alarm-clock:before{content:"\E703"}.el-icon-map-location:before{content:"\E704"}.el-icon-delete-location:before{content:"\E705"}.el-icon-add-location:before{content:"\E706"}.el-icon-location-information:before{content:"\E707"}.el-icon-location-outline:before{content:"\E708"}.el-icon-location:before{content:"\E79E"}.el-icon-place:before{content:"\E709"}.el-icon-discover:before{content:"\E70A"}.el-icon-first-aid-kit:before{content:"\E70B"}.el-icon-trophy-1:before{content:"\E70C"}.el-icon-trophy:before{content:"\E70D"}.el-icon-medal:before{content:"\E70E"}.el-icon-medal-1:before{content:"\E70F"}.el-icon-stopwatch:before{content:"\E710"}.el-icon-mic:before{content:"\E711"}.el-icon-copy-document:before{content:"\E718"}.el-icon-full-screen:before{content:"\E719"}.el-icon-switch-button:before{content:"\E71B"}.el-icon-aim:before{content:"\E71C"}.el-icon-crop:before{content:"\E71D"}.el-icon-odometer:before{content:"\E71E"}.el-icon-time:before{content:"\E71F"}.el-icon-bangzhu:before{content:"\E724"}.el-icon-close-notification:before{content:"\E726"}.el-icon-microphone:before{content:"\E727"}.el-icon-turn-off-microphone:before{content:"\E728"}.el-icon-position:before{content:"\E729"}.el-icon-postcard:before{content:"\E72A"}.el-icon-message:before{content:"\E72B"}.el-icon-chat-line-square:before{content:"\E72D"}.el-icon-chat-dot-square:before{content:"\E72E"}.el-icon-chat-dot-round:before{content:"\E72F"}.el-icon-chat-square:before{content:"\E730"}.el-icon-chat-line-round:before{content:"\E731"}.el-icon-chat-round:before{content:"\E732"}.el-icon-set-up:before{content:"\E733"}.el-icon-turn-off:before{content:"\E734"}.el-icon-open:before{content:"\E735"}.el-icon-connection:before{content:"\E736"}.el-icon-link:before{content:"\E737"}.el-icon-cpu:before{content:"\E738"}.el-icon-thumb:before{content:"\E739"}.el-icon-female:before{content:"\E73A"}.el-icon-male:before{content:"\E73B"}.el-icon-guide:before{content:"\E73C"}.el-icon-news:before{content:"\E73E"}.el-icon-price-tag:before{content:"\E744"}.el-icon-discount:before{content:"\E745"}.el-icon-wallet:before{content:"\E747"}.el-icon-coin:before{content:"\E748"}.el-icon-money:before{content:"\E749"}.el-icon-bank-card:before{content:"\E74A"}.el-icon-box:before{content:"\E74B"}.el-icon-present:before{content:"\E74C"}.el-icon-sell:before{content:"\E6D5"}.el-icon-sold-out:before{content:"\E6D6"}.el-icon-shopping-bag-2:before{content:"\E74D"}.el-icon-shopping-bag-1:before{content:"\E74E"}.el-icon-shopping-cart-2:before{content:"\E74F"}.el-icon-shopping-cart-1:before{content:"\E750"}.el-icon-shopping-cart-full:before{content:"\E751"}.el-icon-smoking:before{content:"\E752"}.el-icon-no-smoking:before{content:"\E753"}.el-icon-house:before{content:"\E754"}.el-icon-table-lamp:before{content:"\E755"}.el-icon-school:before{content:"\E756"}.el-icon-office-building:before{content:"\E757"}.el-icon-toilet-paper:before{content:"\E758"}.el-icon-notebook-2:before{content:"\E759"}.el-icon-notebook-1:before{content:"\E75A"}.el-icon-files:before{content:"\E75B"}.el-icon-collection:before{content:"\E75C"}.el-icon-receiving:before{content:"\E75D"}.el-icon-suitcase-1:before{content:"\E760"}.el-icon-suitcase:before{content:"\E761"}.el-icon-film:before{content:"\E763"}.el-icon-collection-tag:before{content:"\E765"}.el-icon-data-analysis:before{content:"\E766"}.el-icon-pie-chart:before{content:"\E767"}.el-icon-data-board:before{content:"\E768"}.el-icon-data-line:before{content:"\E76D"}.el-icon-reading:before{content:"\E769"}.el-icon-magic-stick:before{content:"\E76A"}.el-icon-coordinate:before{content:"\E76B"}.el-icon-mouse:before{content:"\E76C"}.el-icon-brush:before{content:"\E76E"}.el-icon-headset:before{content:"\E76F"}.el-icon-umbrella:before{content:"\E770"}.el-icon-scissors:before{content:"\E771"}.el-icon-mobile:before{content:"\E773"}.el-icon-attract:before{content:"\E774"}.el-icon-monitor:before{content:"\E775"}.el-icon-search:before{content:"\E778"}.el-icon-takeaway-box:before{content:"\E77A"}.el-icon-paperclip:before{content:"\E77D"}.el-icon-printer:before{content:"\E77E"}.el-icon-document-add:before{content:"\E782"}.el-icon-document:before{content:"\E785"}.el-icon-document-checked:before{content:"\E786"}.el-icon-document-copy:before{content:"\E787"}.el-icon-document-delete:before{content:"\E788"}.el-icon-document-remove:before{content:"\E789"}.el-icon-tickets:before{content:"\E78B"}.el-icon-folder-checked:before{content:"\E77F"}.el-icon-folder-delete:before{content:"\E780"}.el-icon-folder-remove:before{content:"\E781"}.el-icon-folder-add:before{content:"\E783"}.el-icon-folder-opened:before{content:"\E784"}.el-icon-folder:before{content:"\E78A"}.el-icon-edit-outline:before{content:"\E764"}.el-icon-edit:before{content:"\E78C"}.el-icon-date:before{content:"\E78E"}.el-icon-c-scale-to-original:before{content:"\E7C6"}.el-icon-view:before{content:"\E6CE"}.el-icon-loading:before{content:"\E6CF"}.el-icon-rank:before{content:"\E6D1"}.el-icon-sort-down:before{content:"\E7C4"}.el-icon-sort-up:before{content:"\E7C5"}.el-icon-sort:before{content:"\E6D2"}.el-icon-finished:before{content:"\E6CD"}.el-icon-refresh-left:before{content:"\E6C7"}.el-icon-refresh-right:before{content:"\E6C8"}.el-icon-refresh:before{content:"\E6D0"}.el-icon-video-play:before{content:"\E7C0"}.el-icon-video-pause:before{content:"\E7C1"}.el-icon-d-arrow-right:before{content:"\E6DC"}.el-icon-d-arrow-left:before{content:"\E6DD"}.el-icon-arrow-up:before{content:"\E6E1"}.el-icon-arrow-down:before{content:"\E6DF"}.el-icon-arrow-right:before{content:"\E6E0"}.el-icon-arrow-left:before{content:"\E6DE"}.el-icon-top-right:before{content:"\E6E7"}.el-icon-top-left:before{content:"\E6E8"}.el-icon-top:before{content:"\E6E6"}.el-icon-bottom:before{content:"\E6EB"}.el-icon-right:before{content:"\E6E9"}.el-icon-back:before{content:"\E6EA"}.el-icon-bottom-right:before{content:"\E6EC"}.el-icon-bottom-left:before{content:"\E6ED"}.el-icon-caret-top:before{content:"\E78F"}.el-icon-caret-bottom:before{content:"\E790"}.el-icon-caret-right:before{content:"\E791"}.el-icon-caret-left:before{content:"\E792"}.el-icon-d-caret:before{content:"\E79A"}.el-icon-share:before{content:"\E793"}.el-icon-menu:before{content:"\E798"}.el-icon-s-grid:before{content:"\E7A6"}.el-icon-s-check:before{content:"\E7A7"}.el-icon-s-data:before{content:"\E7A8"}.el-icon-s-opportunity:before{content:"\E7AA"}.el-icon-s-custom:before{content:"\E7AB"}.el-icon-s-claim:before{content:"\E7AD"}.el-icon-s-finance:before{content:"\E7AE"}.el-icon-s-comment:before{content:"\E7AF"}.el-icon-s-flag:before{content:"\E7B0"}.el-icon-s-marketing:before{content:"\E7B1"}.el-icon-s-shop:before{content:"\E7B4"}.el-icon-s-open:before{content:"\E7B5"}.el-icon-s-management:before{content:"\E7B6"}.el-icon-s-ticket:before{content:"\E7B7"}.el-icon-s-release:before{content:"\E7B8"}.el-icon-s-home:before{content:"\E7B9"}.el-icon-s-promotion:before{content:"\E7BA"}.el-icon-s-operation:before{content:"\E7BB"}.el-icon-s-unfold:before{content:"\E7BC"}.el-icon-s-fold:before{content:"\E7A9"}.el-icon-s-platform:before{content:"\E7BD"}.el-icon-s-order:before{content:"\E7BE"}.el-icon-s-cooperation:before{content:"\E7BF"}.el-icon-bell:before{content:"\E725"}.el-icon-message-solid:before{content:"\E799"}.el-icon-video-camera:before{content:"\E772"}.el-icon-video-camera-solid:before{content:"\E796"}.el-icon-camera:before{content:"\E779"}.el-icon-camera-solid:before{content:"\E79B"}.el-icon-download:before{content:"\E77C"}.el-icon-upload2:before{content:"\E77B"}.el-icon-upload:before{content:"\E7C3"}.el-icon-picture-outline-round:before{content:"\E75F"}.el-icon-picture-outline:before{content:"\E75E"}.el-icon-picture:before{content:"\E79F"}.el-icon-close:before{content:"\E6DB"}.el-icon-check:before{content:"\E6DA"}.el-icon-plus:before{content:"\E6D9"}.el-icon-minus:before{content:"\E6D8"}.el-icon-help:before{content:"\E73D"}.el-icon-s-help:before{content:"\E7B3"}.el-icon-circle-close:before{content:"\E78D"}.el-icon-circle-check:before{content:"\E720"}.el-icon-circle-plus-outline:before{content:"\E723"}.el-icon-remove-outline:before{content:"\E722"}.el-icon-zoom-out:before{content:"\E776"}.el-icon-zoom-in:before{content:"\E777"}.el-icon-error:before{content:"\E79D"}.el-icon-success:before{content:"\E79C"}.el-icon-circle-plus:before{content:"\E7A0"}.el-icon-remove:before{content:"\E7A2"}.el-icon-info:before{content:"\E7A1"}.el-icon-question:before{content:"\E7A4"}.el-icon-warning-outline:before{content:"\E6C9"}.el-icon-warning:before{content:"\E7A3"}.el-icon-goods:before{content:"\E7C2"}.el-icon-s-goods:before{content:"\E7B2"}.el-icon-star-off:before{content:"\E717"}.el-icon-star-on:before{content:"\E797"}.el-icon-more-outline:before{content:"\E6CC"}.el-icon-more:before{content:"\E794"}.el-icon-phone-outline:before{content:"\E6CB"}.el-icon-phone:before{content:"\E795"}.el-icon-user:before{content:"\E6E3"}.el-icon-user-solid:before{content:"\E7A5"}.el-icon-setting:before{content:"\E6CA"}.el-icon-s-tools:before{content:"\E7AC"}.el-icon-delete:before{content:"\E6D7"}.el-icon-delete-solid:before{content:"\E7C9"}.el-icon-eleme:before{content:"\E7C7"}.el-icon-platform-eleme:before{content:"\E7CA"}.el-icon-loading{-webkit-animation:rotating 2s linear infinite;animation:rotating 2s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@-webkit-keyframes rotating{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotating{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.el-pagination{white-space:nowrap;padding:2px 5px;color:#303133;font-weight:700}.el-pagination:after,.el-pagination:before{display:table;content:""}.el-pagination:after{clear:both}.el-pagination button,.el-pagination span:not([class*=suffix]){display:inline-block;font-size:13px;min-width:35.5px;height:28px;line-height:28px;vertical-align:top;-webkit-box-sizing:border-box;box-sizing:border-box}.el-pagination .el-input__inner{text-align:center;-moz-appearance:textfield;line-height:normal}.el-pagination .el-input__suffix{right:0;-webkit-transform:scale(.8);transform:scale(.8)}.el-pagination .el-select .el-input{width:100px;margin:0 5px}.el-pagination .el-select .el-input .el-input__inner{padding-right:25px;border-radius:3px}.el-pagination button{border:none;padding:0 6px;background:0 0}.el-pagination button:focus{outline:0}.el-pagination button:hover{color:#409eff}.el-pagination button:disabled{color:#c0c4cc;background-color:#fff;cursor:not-allowed}.el-pagination .btn-next,.el-pagination .btn-prev{background:50% no-repeat #fff;background-size:16px;cursor:pointer;margin:0;color:#303133}.el-pagination .btn-next .el-icon,.el-pagination .btn-prev .el-icon{display:block;font-size:12px;font-weight:700}.el-pagination .btn-prev{padding-right:12px}.el-pagination .btn-next{padding-left:12px}.el-pagination .el-pager li.disabled{color:#c0c4cc;cursor:not-allowed}.el-pager li,.el-pager li.btn-quicknext:hover,.el-pager li.btn-quickprev:hover{cursor:pointer}.el-pagination--small .btn-next,.el-pagination--small .btn-prev,.el-pagination--small .el-pager li,.el-pagination--small .el-pager li.btn-quicknext,.el-pagination--small .el-pager li.btn-quickprev,.el-pagination--small .el-pager li:last-child{border-color:transparent;font-size:12px;line-height:22px;height:22px;min-width:22px}.el-pagination--small .more:before,.el-pagination--small li.more:before{line-height:24px}.el-pagination--small button,.el-pagination--small span:not([class*=suffix]){height:22px;line-height:22px}.el-pagination--small .el-pagination__editor,.el-pagination--small .el-pagination__editor.el-input .el-input__inner{height:22px}.el-pagination__sizes{margin:0 10px 0 0;font-weight:400;color:#606266}.el-pagination__sizes .el-input .el-input__inner{font-size:13px;padding-left:8px}.el-pagination__sizes .el-input .el-input__inner:hover{border-color:#409eff}.el-pagination__total{margin-right:10px;font-weight:400;color:#606266}.el-pagination__jump{margin-left:24px;font-weight:400;color:#606266}.el-pagination__jump .el-input__inner{padding:0 3px}.el-pagination__rightwrapper{float:right}.el-pagination__editor{line-height:18px;padding:0 2px;height:28px;text-align:center;margin:0 2px;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:3px}.el-pager,.el-pagination.is-background .btn-next,.el-pagination.is-background .btn-prev{padding:0}.el-pagination__editor.el-input{width:50px}.el-pagination__editor.el-input .el-input__inner{height:28px}.el-pagination__editor .el-input__inner::-webkit-inner-spin-button,.el-pagination__editor .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-pagination.is-background .btn-next,.el-pagination.is-background .btn-prev,.el-pagination.is-background .el-pager li{margin:0 5px;background-color:#f4f4f5;color:#606266;min-width:30px;border-radius:2px}.el-pagination.is-background .btn-next.disabled,.el-pagination.is-background .btn-next:disabled,.el-pagination.is-background .btn-prev.disabled,.el-pagination.is-background .btn-prev:disabled,.el-pagination.is-background .el-pager li.disabled{color:#c0c4cc}.el-pagination.is-background .el-pager li:not(.disabled):hover{color:#409eff}.el-pagination.is-background .el-pager li:not(.disabled).active{background-color:#409eff;color:#fff}.el-dialog,.el-pager li{background:#fff;-webkit-box-sizing:border-box}.el-pagination.is-background.el-pagination--small .btn-next,.el-pagination.is-background.el-pagination--small .btn-prev,.el-pagination.is-background.el-pagination--small .el-pager li{margin:0 3px;min-width:22px}.el-pager,.el-pager li{vertical-align:top;margin:0;display:inline-block}.el-pager{-ms-user-select:none;user-select:none;list-style:none;font-size:0}.el-date-table,.el-pager,.el-table th.el-table__cell{-webkit-user-select:none;-moz-user-select:none}.el-pager .more:before{line-height:30px}.el-pager li{padding:0 4px;font-size:13px;min-width:35.5px;height:28px;line-height:28px;-webkit-box-sizing:border-box;box-sizing:border-box;text-align:center}.el-menu--collapse .el-menu .el-submenu,.el-menu--popup{min-width:200px}.el-pager li.btn-quicknext,.el-pager li.btn-quickprev{line-height:28px;color:#303133}.el-pager li.btn-quicknext.disabled,.el-pager li.btn-quickprev.disabled{color:#c0c4cc}.el-pager li.active+li{border-left:0}.el-pager li:hover{color:#409eff}.el-pager li.active{color:#409eff;cursor:default}@-webkit-keyframes v-modal-in{0%{opacity:0}}@-webkit-keyframes v-modal-out{to{opacity:0}}.el-dialog{position:relative;margin:0 auto 50px;border-radius:2px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.3);box-shadow:0 1px 3px rgba(0,0,0,.3);-webkit-box-sizing:border-box;box-sizing:border-box;width:50%}.el-dialog.is-fullscreen{width:100%;margin-top:0;margin-bottom:0;height:100%;overflow:auto}.el-dialog__wrapper{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;margin:0}.el-dialog__header{padding:20px 20px 10px}.el-dialog__headerbtn{position:absolute;top:20px;right:20px;padding:0;background:0 0;border:none;outline:0;cursor:pointer;font-size:16px}.el-dialog__headerbtn .el-dialog__close{color:#909399}.el-dialog__headerbtn:focus .el-dialog__close,.el-dialog__headerbtn:hover .el-dialog__close{color:#409eff}.el-dialog__title{line-height:24px;font-size:18px;color:#303133}.el-dialog__body{padding:30px 20px;color:#606266;font-size:14px;word-break:break-all}.el-dialog__footer{padding:10px 20px 20px;text-align:right;-webkit-box-sizing:border-box;box-sizing:border-box}.el-dialog--center{text-align:center}.el-dialog--center .el-dialog__body{text-align:initial;padding:25px 25px 30px}.el-dialog--center .el-dialog__footer{text-align:inherit}.dialog-fade-enter-active{-webkit-animation:dialog-fade-in .3s;animation:dialog-fade-in .3s}.dialog-fade-leave-active{-webkit-animation:dialog-fade-out .3s;animation:dialog-fade-out .3s}@-webkit-keyframes dialog-fade-in{0%{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}to{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes dialog-fade-in{0%{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}to{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@-webkit-keyframes dialog-fade-out{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}to{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}}@keyframes dialog-fade-out{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}to{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}}.el-autocomplete{position:relative;display:inline-block}.el-autocomplete-suggestion{margin:5px 0;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);border-radius:4px;border:1px solid #e4e7ed;-webkit-box-sizing:border-box;box-sizing:border-box;background-color:#fff}.el-dropdown-menu,.el-menu--collapse .el-submenu .el-menu{z-index:10;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-autocomplete-suggestion__wrap{max-height:280px;padding:10px 0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-autocomplete-suggestion__list{margin:0;padding:0}.el-autocomplete-suggestion li{padding:0 20px;margin:0;line-height:34px;cursor:pointer;color:#606266;font-size:14px;list-style:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.el-autocomplete-suggestion li.highlighted,.el-autocomplete-suggestion li:hover{background-color:#f5f7fa}.el-autocomplete-suggestion li.divider{margin-top:6px;border-top:1px solid #000}.el-autocomplete-suggestion li.divider:last-child{margin-bottom:-6px}.el-autocomplete-suggestion.is-loading li{text-align:center;height:100px;line-height:100px;font-size:20px;color:#999}.el-autocomplete-suggestion.is-loading li:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-autocomplete-suggestion.is-loading li:hover{background-color:#fff}.el-autocomplete-suggestion.is-loading .el-icon-loading{vertical-align:middle}.el-dropdown{display:inline-block;position:relative;color:#606266;font-size:14px}.el-dropdown .el-button-group{display:block}.el-dropdown .el-button-group .el-button{float:none}.el-dropdown .el-dropdown__caret-button{padding-left:5px;padding-right:5px;position:relative;border-left:none}.el-dropdown .el-dropdown__caret-button:before{content:"";position:absolute;display:block;width:1px;top:5px;bottom:5px;left:0;background:hsla(0,0%,100%,.5)}.el-dropdown .el-dropdown__caret-button.el-button--default:before{background:rgba(220,223,230,.5)}.el-dropdown .el-dropdown__caret-button:hover:not(.is-disabled):before{top:0;bottom:0}.el-dropdown .el-dropdown__caret-button .el-dropdown__icon{padding-left:0}.el-dropdown__icon{font-size:12px;margin:0 3px}.el-dropdown [disabled]{cursor:not-allowed;color:#bbb}.el-dropdown-menu{position:absolute;top:0;left:0;padding:10px 0;margin:5px 0;background-color:#fff;border:1px solid #ebeef5;border-radius:4px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-dropdown-menu__item{list-style:none;line-height:36px;padding:0 20px;margin:0;font-size:14px;color:#606266;cursor:pointer;outline:0}.el-dropdown-menu__item:focus,.el-dropdown-menu__item:not(.is-disabled):hover{background-color:#ecf5ff;color:#66b1ff}.el-dropdown-menu__item i{margin-right:5px}.el-dropdown-menu__item--divided{position:relative;margin-top:6px;border-top:1px solid #ebeef5}.el-dropdown-menu__item--divided:before{content:"";height:6px;display:block;margin:0 -20px;background-color:#fff}.el-dropdown-menu__item.is-disabled{cursor:default;color:#bbb;pointer-events:none}.el-dropdown-menu--medium{padding:6px 0}.el-dropdown-menu--medium .el-dropdown-menu__item{line-height:30px;padding:0 17px;font-size:14px}.el-dropdown-menu--medium .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:6px}.el-dropdown-menu--medium .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:6px;margin:0 -17px}.el-dropdown-menu--small{padding:6px 0}.el-dropdown-menu--small .el-dropdown-menu__item{line-height:27px;padding:0 15px;font-size:13px}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:4px}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:4px;margin:0 -15px}.el-dropdown-menu--mini{padding:3px 0}.el-dropdown-menu--mini .el-dropdown-menu__item{line-height:24px;padding:0 10px;font-size:12px}.el-dropdown-menu--mini .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:3px}.el-dropdown-menu--mini .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:3px;margin:0 -10px}.el-menu{border-right:1px solid #e6e6e6;list-style:none;position:relative;margin:0;padding-left:0}.el-menu,.el-menu--horizontal>.el-menu-item:not(.is-disabled):focus,.el-menu--horizontal>.el-menu-item:not(.is-disabled):hover,.el-menu--horizontal>.el-submenu .el-submenu__title:hover{background-color:#fff}.el-menu:after,.el-menu:before{display:table;content:""}.el-menu:after{clear:both}.el-menu.el-menu--horizontal{border-bottom:1px solid #e6e6e6}.el-menu--horizontal{border-right:none}.el-menu--horizontal>.el-menu-item{float:left;height:60px;line-height:60px;margin:0;border-bottom:2px solid transparent;color:#909399}.el-menu--horizontal>.el-menu-item a,.el-menu--horizontal>.el-menu-item a:hover{color:inherit}.el-menu--horizontal>.el-submenu{float:left}.el-menu--horizontal>.el-submenu:focus,.el-menu--horizontal>.el-submenu:hover{outline:0}.el-menu--horizontal>.el-submenu:focus .el-submenu__title,.el-menu--horizontal>.el-submenu:hover .el-submenu__title{color:#303133}.el-menu--horizontal>.el-submenu.is-active .el-submenu__title{border-bottom:2px solid #409eff;color:#303133}.el-menu--horizontal>.el-submenu .el-submenu__title{height:60px;line-height:60px;border-bottom:2px solid transparent;color:#909399}.el-menu--horizontal>.el-submenu .el-submenu__icon-arrow{position:static;vertical-align:middle;margin-left:8px;margin-top:-3px}.el-menu--horizontal .el-menu .el-menu-item,.el-menu--horizontal .el-menu .el-submenu__title{background-color:#fff;float:none;height:36px;line-height:36px;padding:0 10px;color:#909399}.el-menu--horizontal .el-menu .el-menu-item.is-active,.el-menu--horizontal .el-menu .el-submenu.is-active>.el-submenu__title{color:#303133}.el-menu--horizontal .el-menu-item:not(.is-disabled):focus,.el-menu--horizontal .el-menu-item:not(.is-disabled):hover{outline:0;color:#303133}.el-menu--horizontal>.el-menu-item.is-active{border-bottom:2px solid #409eff;color:#303133}.el-menu--collapse{width:64px}.el-menu--collapse>.el-menu-item [class^=el-icon-],.el-menu--collapse>.el-submenu>.el-submenu__title [class^=el-icon-]{margin:0;vertical-align:middle;width:24px;text-align:center}.el-menu--collapse>.el-menu-item .el-submenu__icon-arrow,.el-menu--collapse>.el-submenu>.el-submenu__title .el-submenu__icon-arrow{display:none}.el-menu--collapse>.el-menu-item span,.el-menu--collapse>.el-submenu>.el-submenu__title span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}.el-menu--collapse>.el-menu-item.is-active i{color:inherit}.el-menu--collapse .el-submenu{position:relative}.el-menu--collapse .el-submenu .el-menu{position:absolute;margin-left:5px;top:0;left:100%;border:1px solid #e4e7ed;border-radius:2px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-menu-item,.el-submenu__title{height:56px;line-height:56px;position:relative;-webkit-box-sizing:border-box;white-space:nowrap;list-style:none}.el-menu--collapse .el-submenu.is-opened>.el-submenu__title .el-submenu__icon-arrow{-webkit-transform:none;transform:none}.el-menu--popup{z-index:100;border:none;padding:5px 0;border-radius:2px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-menu--popup-bottom-start{margin-top:5px}.el-menu--popup-right-start{margin-left:5px;margin-right:5px}.el-menu-item{font-size:14px;color:#303133;padding:0 20px;cursor:pointer;-webkit-transition:border-color .3s,background-color .3s,color .3s;transition:border-color .3s,background-color .3s,color .3s;-webkit-box-sizing:border-box;box-sizing:border-box}.el-menu-item *{vertical-align:middle}.el-menu-item i{color:#909399}.el-menu-item:focus,.el-menu-item:hover{outline:0;background-color:#ecf5ff}.el-menu-item.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-menu-item [class^=el-icon-]{margin-right:5px;width:24px;text-align:center;font-size:18px;vertical-align:middle}.el-menu-item.is-active{color:#409eff}.el-menu-item.is-active i{color:inherit}.el-submenu{list-style:none;margin:0;padding-left:0}.el-submenu__title{font-size:14px;color:#303133;padding:0 20px;cursor:pointer;-webkit-transition:border-color .3s,background-color .3s,color .3s;transition:border-color .3s,background-color .3s,color .3s;-webkit-box-sizing:border-box;box-sizing:border-box}.el-submenu__title *{vertical-align:middle}.el-submenu__title i{color:#909399}.el-submenu__title:focus,.el-submenu__title:hover{outline:0;background-color:#ecf5ff}.el-submenu__title.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-submenu__title:hover{background-color:#ecf5ff}.el-submenu .el-menu{border:none}.el-submenu .el-menu-item{height:50px;line-height:50px;padding:0 45px;min-width:200px}.el-submenu__icon-arrow{position:absolute;top:50%;right:20px;margin-top:-7px;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;font-size:12px}.el-submenu.is-active .el-submenu__title{border-bottom-color:#409eff}.el-submenu.is-opened>.el-submenu__title .el-submenu__icon-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.el-submenu.is-disabled .el-menu-item,.el-submenu.is-disabled .el-submenu__title{opacity:.25;cursor:not-allowed;background:0 0!important}.el-submenu [class^=el-icon-]{vertical-align:middle;margin-right:5px;width:24px;text-align:center;font-size:18px}.el-menu-item-group>ul{padding:0}.el-menu-item-group__title{padding:7px 0 7px 20px;line-height:normal;font-size:12px;color:#909399}.el-radio-button__inner,.el-radio-group{display:inline-block;line-height:1;vertical-align:middle}.horizontal-collapse-transition .el-submenu__title .el-submenu__icon-arrow{-webkit-transition:.2s;transition:.2s;opacity:0}.el-radio-group{font-size:0}.el-radio-button{position:relative;display:inline-block;outline:0}.el-radio-button__inner{white-space:nowrap;background:#fff;border:1px solid #dcdfe6;font-weight:500;border-left:0;color:#606266;-webkit-appearance:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;margin:0;position:relative;cursor:pointer;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);padding:12px 20px;font-size:14px;border-radius:0}.el-radio-button__inner.is-round{padding:12px 20px}.el-radio-button__inner:hover{color:#409eff}.el-radio-button__inner [class*=el-icon-]{line-height:.9}.el-radio-button__inner [class*=el-icon-]+span{margin-left:5px}.el-radio-button:first-child .el-radio-button__inner{border-left:1px solid #dcdfe6;border-radius:4px 0 0 4px;-webkit-box-shadow:none!important;box-shadow:none!important}.el-radio-button__orig-radio{opacity:0;outline:0;position:absolute;z-index:-1}.el-radio-button__orig-radio:checked+.el-radio-button__inner{color:#fff;background-color:#409eff;border-color:#409eff;-webkit-box-shadow:-1px 0 0 0 #409eff;box-shadow:-1px 0 0 0 #409eff}.el-radio-button__orig-radio:disabled+.el-radio-button__inner{color:#c0c4cc;cursor:not-allowed;background-image:none;background-color:#fff;border-color:#ebeef5;-webkit-box-shadow:none;box-shadow:none}.el-radio-button__orig-radio:disabled:checked+.el-radio-button__inner{background-color:#f2f6fc}.el-radio-button:last-child .el-radio-button__inner{border-radius:0 4px 4px 0}.el-popover,.el-radio-button:first-child:last-child .el-radio-button__inner{border-radius:4px}.el-radio-button--medium .el-radio-button__inner{padding:10px 20px;font-size:14px;border-radius:0}.el-radio-button--medium .el-radio-button__inner.is-round{padding:10px 20px}.el-radio-button--small .el-radio-button__inner{padding:9px 15px;font-size:12px;border-radius:0}.el-radio-button--small .el-radio-button__inner.is-round{padding:9px 15px}.el-radio-button--mini .el-radio-button__inner{padding:7px 15px;font-size:12px;border-radius:0}.el-radio-button--mini .el-radio-button__inner.is-round{padding:7px 15px}.el-radio-button:focus:not(.is-focus):not(:active):not(.is-disabled){-webkit-box-shadow:0 0 2px 2px #409eff;box-shadow:0 0 2px 2px #409eff}.el-switch{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;font-size:14px;line-height:20px;height:20px;vertical-align:middle}.el-switch__core,.el-switch__label{display:inline-block;cursor:pointer}.el-switch.is-disabled .el-switch__core,.el-switch.is-disabled .el-switch__label{cursor:not-allowed}.el-switch__label{-webkit-transition:.2s;transition:.2s;height:20px;font-size:14px;font-weight:500;vertical-align:middle;color:#303133}.el-switch__label.is-active{color:#409eff}.el-switch__label--left{margin-right:10px}.el-switch__label--right{margin-left:10px}.el-switch__label *{line-height:1;font-size:14px;display:inline-block}.el-switch__input{position:absolute;width:0;height:0;opacity:0;margin:0}.el-switch__core{margin:0;position:relative;width:40px;height:20px;border:1px solid #dcdfe6;outline:0;border-radius:10px;-webkit-box-sizing:border-box;box-sizing:border-box;background:#dcdfe6;-webkit-transition:border-color .3s,background-color .3s;transition:border-color .3s,background-color .3s;vertical-align:middle}.el-switch__core:after{content:"";position:absolute;top:1px;left:1px;border-radius:100%;-webkit-transition:all .3s;transition:all .3s;width:16px;height:16px;background-color:#fff}.el-switch.is-checked .el-switch__core{border-color:#409eff;background-color:#409eff}.el-switch.is-checked .el-switch__core:after{left:100%;margin-left:-17px}.el-switch.is-disabled{opacity:.6}.el-switch--wide .el-switch__label.el-switch__label--left span{left:10px}.el-switch--wide .el-switch__label.el-switch__label--right span{right:10px}.el-switch .label-fade-enter,.el-switch .label-fade-leave-active{opacity:0}.el-select-dropdown{position:absolute;z-index:1001;border:1px solid #e4e7ed;border-radius:4px;background-color:#fff;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);-webkit-box-sizing:border-box;box-sizing:border-box;margin:5px 0}.el-select-dropdown.is-multiple .el-select-dropdown__item{padding-right:40px}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected{color:#409eff;background-color:#fff}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.hover{background-color:#f5f7fa}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected:after{position:absolute;right:20px;font-family:element-icons;content:"\E6DA";font-size:12px;font-weight:700;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.el-select-dropdown .el-scrollbar.is-empty .el-select-dropdown__list{padding:0}.el-select-dropdown__empty{padding:10px 0;margin:0;text-align:center;color:#999;font-size:14px}.el-select-dropdown__wrap{max-height:274px}.el-select-dropdown__list{list-style:none;padding:6px 0;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-select-dropdown__item{font-size:14px;padding:0 20px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#606266;height:34px;line-height:34px;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer}.el-select-dropdown__item.is-disabled{color:#c0c4cc;cursor:not-allowed}.el-select-dropdown__item.is-disabled:hover{background-color:#fff}.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{background-color:#f5f7fa}.el-select-dropdown__item.selected{color:#409eff;font-weight:700}.el-select-group{margin:0;padding:0}.el-select-group__wrap{position:relative;list-style:none;margin:0;padding:0}.el-select-group__wrap:not(:last-of-type){padding-bottom:24px}.el-select-group__wrap:not(:last-of-type):after{content:"";position:absolute;display:block;left:20px;right:20px;bottom:12px;height:1px;background:#e4e7ed}.el-select-group__title{padding-left:20px;font-size:12px;color:#909399;line-height:30px}.el-select-group .el-select-dropdown__item{padding-left:20px}.el-select{display:inline-block;position:relative}.el-select .el-select__tags>span{display:contents}.el-select:hover .el-input__inner{border-color:#c0c4cc}.el-select .el-input__inner{cursor:pointer;padding-right:35px}.el-select .el-input__inner:focus{border-color:#409eff}.el-select .el-input .el-select__caret{color:#c0c4cc;font-size:14px;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;-webkit-transform:rotate(180deg);transform:rotate(180deg);cursor:pointer}.el-select .el-input .el-select__caret.is-reverse{-webkit-transform:rotate(0);transform:rotate(0)}.el-select .el-input .el-select__caret.is-show-close{font-size:14px;text-align:center;-webkit-transform:rotate(180deg);transform:rotate(180deg);border-radius:100%;color:#c0c4cc;-webkit-transition:color .2s cubic-bezier(.645,.045,.355,1);transition:color .2s cubic-bezier(.645,.045,.355,1)}.el-select .el-input .el-select__caret.is-show-close:hover{color:#909399}.el-select .el-input.is-disabled .el-input__inner{cursor:not-allowed}.el-select .el-input.is-disabled .el-input__inner:hover{border-color:#e4e7ed}.el-select .el-input.is-focus .el-input__inner{border-color:#409eff}.el-select>.el-input{display:block}.el-select__input{border:none;outline:0;padding:0;margin-left:15px;color:#666;font-size:14px;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:28px;background-color:transparent}.el-select__input.is-mini{height:14px}.el-select__close{cursor:pointer;position:absolute;top:8px;z-index:1000;right:25px;color:#c0c4cc;line-height:18px;font-size:14px}.el-select__close:hover{color:#909399}.el-select__tags{position:absolute;line-height:normal;white-space:normal;z-index:1;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-wrap:wrap;flex-wrap:wrap}.el-select__tags-text{overflow:hidden;text-overflow:ellipsis}.el-select .el-tag{-webkit-box-sizing:border-box;box-sizing:border-box;border-color:transparent;margin:2px 0 2px 6px;background-color:#f0f2f5;display:-webkit-box;display:-ms-flexbox;display:flex;max-width:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-select .el-tag__close.el-icon-close{background-color:#c0c4cc;top:0;color:#fff;-ms-flex-negative:0;flex-shrink:0}.el-select .el-tag__close.el-icon-close:hover{background-color:#909399}.el-table,.el-table__expanded-cell{background-color:#fff}.el-select .el-tag__close.el-icon-close:before{display:block;-webkit-transform:translateY(.5px);transform:translateY(.5px)}.el-table{position:relative;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%;max-width:100%;font-size:14px;color:#606266}.el-table--mini,.el-table--small,.el-table__expand-icon{font-size:12px}.el-table__empty-block{min-height:60px;text-align:center;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-table__empty-text{line-height:60px;width:50%;color:#909399}.el-table__expand-column .cell{padding:0;text-align:center}.el-table__expand-icon{position:relative;cursor:pointer;color:#666;-webkit-transition:-webkit-transform .2s ease-in-out;transition:-webkit-transform .2s ease-in-out;transition:transform .2s ease-in-out;transition:transform .2s ease-in-out,-webkit-transform .2s ease-in-out;height:20px}.el-table__expand-icon--expanded{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.el-table__expand-icon>.el-icon{position:absolute;left:50%;top:50%;margin-left:-5px;margin-top:-5px}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:transparent!important}.el-table__placeholder{display:inline-block;width:20px}.el-table__append-wrapper{overflow:hidden}.el-table--fit{border-right:0;border-bottom:0}.el-table--fit .el-table__cell.gutter{border-right-width:1px}.el-table--scrollable-x .el-table__body-wrapper{overflow-x:auto}.el-table--scrollable-y .el-table__body-wrapper{overflow-y:auto}.el-table thead{color:#909399;font-weight:500}.el-table thead.is-group th.el-table__cell{background:#f5f7fa}.el-table .el-table__cell{padding:12px 0;min-width:0;-webkit-box-sizing:border-box;box-sizing:border-box;text-overflow:ellipsis;vertical-align:middle;position:relative;text-align:left}.el-table .el-table__cell.is-center{text-align:center}.el-table .el-table__cell.is-right{text-align:right}.el-table .el-table__cell.gutter{width:15px;border-right-width:0;border-bottom-width:0;padding:0}.el-table--medium .el-table__cell{padding:10px 0}.el-table--small .el-table__cell{padding:8px 0}.el-table--mini .el-table__cell{padding:6px 0}.el-table--border .el-table__cell:first-child .cell,.el-table .cell{padding-left:10px}.el-table tr{background-color:#fff}.el-table tr input[type=checkbox]{margin:0}.el-table td.el-table__cell,.el-table th.el-table__cell.is-leaf{border-bottom:1px solid #ebeef5}.el-table th.el-table__cell.is-sortable{cursor:pointer}.el-table th.el-table__cell{overflow:hidden;-ms-user-select:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:#fff}.el-table th.el-table__cell>.cell{display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;vertical-align:middle;padding-left:10px;padding-right:10px;width:100%}.el-table th.el-table__cell>.cell.highlight{color:#409eff}.el-table th.el-table__cell.required>div:before{display:inline-block;content:"";width:8px;height:8px;border-radius:50%;background:#ff4d51;margin-right:5px;vertical-align:middle}.el-table td.el-table__cell div{-webkit-box-sizing:border-box;box-sizing:border-box}.el-table td.el-table__cell.gutter{width:0}.el-table .cell{-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:normal;word-break:break-all;line-height:23px;padding-right:10px}.el-table .cell.el-tooltip{white-space:nowrap;min-width:50px}.el-table--border,.el-table--group{border:1px solid #ebeef5}.el-table--border:after,.el-table--group:after,.el-table:before{content:"";position:absolute;background-color:#ebeef5;z-index:1}.el-table--border:after,.el-table--group:after{top:0;right:0;width:1px;height:100%}.el-table:before{left:0;bottom:0;width:100%;height:1px}.el-table--border{border-right:none;border-bottom:none}.el-table--border.el-loading-parent--relative{border-color:transparent}.el-table--border .el-table__cell,.el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed{border-right:1px solid #ebeef5}.el-table--border th.el-table__cell,.el-table--border th.el-table__cell.gutter:last-of-type,.el-table__fixed-right-patch{border-bottom:1px solid #ebeef5}.el-table__fixed,.el-table__fixed-right{position:absolute;top:0;left:0;overflow-x:hidden;overflow-y:hidden;-webkit-box-shadow:0 0 10px rgba(0,0,0,.12);box-shadow:0 0 10px rgba(0,0,0,.12)}.el-table__fixed-right:before,.el-table__fixed:before{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background-color:#ebeef5;z-index:4}.el-table__fixed-right-patch{position:absolute;top:-1px;right:0;background-color:#fff}.el-table__fixed-right{top:0;left:auto;right:0}.el-table__fixed-right .el-table__fixed-body-wrapper,.el-table__fixed-right .el-table__fixed-footer-wrapper,.el-table__fixed-right .el-table__fixed-header-wrapper{left:auto;right:0}.el-table__fixed-header-wrapper{position:absolute;left:0;top:0;z-index:3}.el-table__fixed-footer-wrapper{position:absolute;left:0;bottom:0;z-index:3}.el-table__fixed-footer-wrapper tbody td.el-table__cell{border-top:1px solid #ebeef5;background-color:#f5f7fa;color:#606266}.el-table__fixed-body-wrapper{position:absolute;left:0;top:37px;overflow:hidden;z-index:3}.el-table__body-wrapper,.el-table__footer-wrapper,.el-table__header-wrapper{width:100%}.el-table__footer-wrapper{margin-top:-1px}.el-table__footer-wrapper td.el-table__cell{border-top:1px solid #ebeef5}.el-table__body,.el-table__footer,.el-table__header{table-layout:fixed;border-collapse:separate}.el-table__footer-wrapper,.el-table__header-wrapper{overflow:hidden}.el-table__footer-wrapper tbody td.el-table__cell,.el-table__header-wrapper tbody td.el-table__cell{background-color:#f5f7fa;color:#606266}.el-table__body-wrapper{overflow:hidden;position:relative}.el-table__body-wrapper.is-scrolling-left~.el-table__fixed,.el-table__body-wrapper.is-scrolling-none~.el-table__fixed,.el-table__body-wrapper.is-scrolling-none~.el-table__fixed-right,.el-table__body-wrapper.is-scrolling-right~.el-table__fixed-right{-webkit-box-shadow:none;box-shadow:none}.el-picker-panel,.el-table-filter{-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-table__body-wrapper .el-table--border.is-scrolling-right~.el-table__fixed-right{border-left:1px solid #ebeef5}.el-table .caret-wrapper{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:34px;width:24px;vertical-align:middle;cursor:pointer;overflow:initial;position:relative}.el-table .sort-caret{width:0;height:0;border:5px solid transparent;position:absolute;left:7px}.el-table .sort-caret.ascending{border-bottom-color:#c0c4cc;top:5px}.el-table .sort-caret.descending{border-top-color:#c0c4cc;bottom:7px}.el-table .ascending .sort-caret.ascending{border-bottom-color:#409eff}.el-table .descending .sort-caret.descending{border-top-color:#409eff}.el-table .hidden-columns{position:absolute;z-index:-1}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:#fafafa}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td.el-table__cell{background-color:#ecf5ff}.el-table__body tr.hover-row.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.el-table__body tr.hover-row>td.el-table__cell{background-color:#f5f7fa}.el-table__body tr.current-row>td.el-table__cell{background-color:#ecf5ff}.el-table__column-resize-proxy{position:absolute;left:200px;top:0;bottom:0;width:0;border-left:1px solid #ebeef5;z-index:10}.el-table__column-filter-trigger{display:inline-block;line-height:34px;cursor:pointer}.el-table__column-filter-trigger i{color:#909399;font-size:12px;-webkit-transform:scale(.75);transform:scale(.75)}.el-table--enable-row-transition .el-table__body td.el-table__cell{-webkit-transition:background-color .25s ease;transition:background-color .25s ease}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:#f5f7fa}.el-table--fluid-height .el-table__fixed,.el-table--fluid-height .el-table__fixed-right{bottom:0;overflow:hidden}.el-table [class*=el-table__row--level] .el-table__expand-icon{display:inline-block;width:20px;line-height:20px;height:20px;text-align:center;margin-right:3px}.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{border:1px solid #ebeef5;border-radius:2px;background-color:#fff;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);-webkit-box-sizing:border-box;box-sizing:border-box;margin:2px 0}.el-date-table td,.el-date-table td div{height:30px;-webkit-box-sizing:border-box}.el-table-filter__list{padding:5px 0;margin:0;list-style:none;min-width:100px}.el-table-filter__list-item{line-height:36px;padding:0 10px;cursor:pointer;font-size:14px}.el-table-filter__list-item:hover{background-color:#ecf5ff;color:#66b1ff}.el-table-filter__list-item.is-active{background-color:#409eff;color:#fff}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid #ebeef5;padding:8px}.el-table-filter__bottom button{background:0 0;border:none;color:#606266;cursor:pointer;font-size:13px;padding:0 3px}.el-date-table.is-week-mode .el-date-table__row.current div,.el-date-table.is-week-mode .el-date-table__row:hover div,.el-date-table td.in-range div,.el-date-table td.in-range div:hover{background-color:#f2f6fc}.el-table-filter__bottom button:hover{color:#409eff}.el-table-filter__bottom button:focus{outline:0}.el-table-filter__bottom button.is-disabled{color:#c0c4cc;cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{display:block;margin-right:5px;margin-bottom:8px;margin-left:5px}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0}.el-date-table{font-size:12px;-ms-user-select:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-date-table.is-week-mode .el-date-table__row:hover td.available:hover{color:#606266}.el-date-table.is-week-mode .el-date-table__row:hover td:first-child div{margin-left:5px;border-top-left-radius:15px;border-bottom-left-radius:15px}.el-date-table.is-week-mode .el-date-table__row:hover td:last-child div{margin-right:5px;border-top-right-radius:15px;border-bottom-right-radius:15px}.el-date-table td{width:32px;padding:4px 0;text-align:center;cursor:pointer;position:relative}.el-date-table td,.el-date-table td div{-webkit-box-sizing:border-box;box-sizing:border-box}.el-date-table td div{padding:3px 0}.el-date-table td span{width:24px;height:24px;display:block;margin:0 auto;line-height:24px;position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);border-radius:50%}.el-date-table td.next-month,.el-date-table td.prev-month{color:#c0c4cc}.el-date-table td.today{position:relative}.el-date-table td.today span{color:#409eff;font-weight:700}.el-date-table td.today.end-date span,.el-date-table td.today.start-date span{color:#fff}.el-date-table td.available:hover{color:#409eff}.el-date-table td.current:not(.disabled) span{color:#fff;background-color:#409eff}.el-date-table td.end-date div,.el-date-table td.start-date div{color:#fff}.el-date-table td.end-date span,.el-date-table td.start-date span{background-color:#409eff}.el-date-table td.start-date div{margin-left:5px;border-top-left-radius:15px;border-bottom-left-radius:15px}.el-date-table td.end-date div{margin-right:5px;border-top-right-radius:15px;border-bottom-right-radius:15px}.el-date-table td.disabled div{background-color:#f5f7fa;opacity:1;cursor:not-allowed;color:#c0c4cc}.el-date-table td.selected div{margin-left:5px;margin-right:5px;background-color:#f2f6fc;border-radius:15px}.el-date-table td.selected div:hover{background-color:#f2f6fc}.el-date-table td.selected span{background-color:#409eff;color:#fff;border-radius:15px}.el-date-table td.week{font-size:80%;color:#606266}.el-month-table,.el-year-table{font-size:12px;border-collapse:collapse}.el-date-table th{padding:5px;color:#606266;font-weight:400;border-bottom:1px solid #ebeef5}.el-month-table{margin:-1px}.el-month-table td{text-align:center;padding:8px 0;cursor:pointer}.el-month-table td div{height:48px;padding:6px 0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-month-table td.today .cell{color:#409eff;font-weight:700}.el-month-table td.today.end-date .cell,.el-month-table td.today.start-date .cell{color:#fff}.el-month-table td.disabled .cell{background-color:#f5f7fa;cursor:not-allowed;color:#c0c4cc}.el-month-table td.disabled .cell:hover{color:#c0c4cc}.el-month-table td .cell{width:60px;height:36px;display:block;line-height:36px;color:#606266;margin:0 auto;border-radius:18px}.el-month-table td .cell:hover{color:#409eff}.el-month-table td.in-range div,.el-month-table td.in-range div:hover{background-color:#f2f6fc}.el-month-table td.end-date div,.el-month-table td.start-date div{color:#fff}.el-month-table td.end-date .cell,.el-month-table td.start-date .cell{color:#fff;background-color:#409eff}.el-month-table td.start-date div{border-top-left-radius:24px;border-bottom-left-radius:24px}.el-month-table td.end-date div{border-top-right-radius:24px;border-bottom-right-radius:24px}.el-month-table td.current:not(.disabled) .cell{color:#409eff}.el-year-table{margin:-1px}.el-year-table .el-icon{color:#303133}.el-year-table td{text-align:center;padding:20px 3px;cursor:pointer}.el-year-table td.today .cell{color:#409eff;font-weight:700}.el-year-table td.disabled .cell{background-color:#f5f7fa;cursor:not-allowed;color:#c0c4cc}.el-year-table td.disabled .cell:hover{color:#c0c4cc}.el-year-table td .cell{width:48px;height:32px;display:block;line-height:32px;color:#606266;margin:0 auto}.el-year-table td .cell:hover,.el-year-table td.current:not(.disabled) .cell{color:#409eff}.el-date-range-picker{width:646px}.el-date-range-picker.has-sidebar{width:756px}.el-date-range-picker table{table-layout:fixed;width:100%}.el-date-range-picker .el-picker-panel__body{min-width:513px}.el-date-range-picker .el-picker-panel__content{margin:0}.el-date-range-picker__header{position:relative;text-align:center;height:28px}.el-date-range-picker__header [class*=arrow-left]{float:left}.el-date-range-picker__header [class*=arrow-right]{float:right}.el-date-range-picker__header div{font-size:16px;font-weight:500;margin-right:50px}.el-date-range-picker__content{float:left;width:50%;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:16px}.el-date-range-picker__content.is-left{border-right:1px solid #e4e4e4}.el-date-range-picker__content .el-date-range-picker__header div{margin-left:50px;margin-right:50px}.el-date-range-picker__editors-wrap{-webkit-box-sizing:border-box;box-sizing:border-box;display:table-cell}.el-date-range-picker__editors-wrap.is-right{text-align:right}.el-date-range-picker__time-header{position:relative;border-bottom:1px solid #e4e4e4;font-size:12px;padding:8px 5px 5px;display:table;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.el-date-range-picker__time-header>.el-icon-arrow-right{font-size:20px;vertical-align:middle;display:table-cell;color:#303133}.el-date-range-picker__time-picker-wrap{position:relative;display:table-cell;padding:0 5px}.el-date-range-picker__time-picker-wrap .el-picker-panel{position:absolute;top:13px;right:0;z-index:1;background:#fff}.el-date-picker{width:322px}.el-date-picker.has-sidebar.has-time{width:434px}.el-date-picker.has-sidebar{width:438px}.el-date-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-picker .el-picker-panel__content{width:292px}.el-date-picker table{table-layout:fixed;width:100%}.el-date-picker__editor-wrap{position:relative;display:table-cell;padding:0 5px}.el-date-picker__time-header{position:relative;border-bottom:1px solid #e4e4e4;font-size:12px;padding:8px 5px 5px;display:table;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.el-date-picker__header{margin:12px;text-align:center}.el-date-picker__header--bordered{margin-bottom:0;padding-bottom:12px;border-bottom:1px solid #ebeef5}.el-date-picker__header--bordered+.el-picker-panel__content{margin-top:0}.el-date-picker__header-label{font-size:16px;font-weight:500;padding:0 5px;line-height:22px;text-align:center;cursor:pointer;color:#606266}.el-date-picker__header-label.active,.el-date-picker__header-label:hover{color:#409eff}.el-date-picker__prev-btn{float:left}.el-date-picker__next-btn{float:right}.el-date-picker__time-wrap{padding:10px;text-align:center}.el-date-picker__time-label{float:left;cursor:pointer;line-height:30px;margin-left:10px}.time-select{margin:5px 0;min-width:0}.time-select .el-picker-panel__content{max-height:200px;margin:0}.time-select-item{padding:8px 10px;font-size:14px;line-height:20px}.time-select-item.selected:not(.disabled){color:#409eff;font-weight:700}.time-select-item.disabled{color:#e4e7ed;cursor:not-allowed}.time-select-item:hover{background-color:#f5f7fa;font-weight:700;cursor:pointer}.el-date-editor{position:relative;display:inline-block;text-align:left}.el-date-editor.el-input,.el-date-editor.el-input__inner{width:220px}.el-date-editor--monthrange.el-input,.el-date-editor--monthrange.el-input__inner{width:300px}.el-date-editor--daterange.el-input,.el-date-editor--daterange.el-input__inner,.el-date-editor--timerange.el-input,.el-date-editor--timerange.el-input__inner{width:350px}.el-date-editor--datetimerange.el-input,.el-date-editor--datetimerange.el-input__inner{width:400px}.el-date-editor--dates .el-input__inner{text-overflow:ellipsis;white-space:nowrap}.el-date-editor .el-icon-circle-close{cursor:pointer}.el-date-editor .el-range__icon{font-size:14px;margin-left:-5px;color:#c0c4cc;float:left;line-height:32px}.el-date-editor .el-range-input,.el-date-editor .el-range-separator{height:100%;margin:0;text-align:center;display:inline-block;font-size:14px}.el-date-editor .el-range-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;outline:0;padding:0;width:39%;color:#606266}.el-date-editor .el-range-input::-webkit-input-placeholder{color:#c0c4cc}.el-date-editor .el-range-input:-ms-input-placeholder{color:#c0c4cc}.el-date-editor .el-range-input::-ms-input-placeholder{color:#c0c4cc}.el-date-editor .el-range-input::-moz-placeholder{color:#c0c4cc}.el-date-editor .el-range-input::placeholder{color:#c0c4cc}.el-date-editor .el-range-separator{padding:0 5px;line-height:32px;width:5%;color:#303133}.el-date-editor .el-range__close-icon{font-size:14px;color:#c0c4cc;width:25px;display:inline-block;float:right;line-height:32px}.el-range-editor.el-input__inner{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:3px 10px}.el-range-editor .el-range-input{line-height:1}.el-range-editor.is-active,.el-range-editor.is-active:hover{border-color:#409eff}.el-range-editor--medium.el-input__inner{height:36px}.el-range-editor--medium .el-range-separator{line-height:28px;font-size:14px}.el-range-editor--medium .el-range-input{font-size:14px}.el-range-editor--medium .el-range__close-icon,.el-range-editor--medium .el-range__icon{line-height:28px}.el-range-editor--small.el-input__inner{height:32px}.el-range-editor--small .el-range-separator{line-height:24px;font-size:13px}.el-range-editor--small .el-range-input{font-size:13px}.el-range-editor--small .el-range__close-icon,.el-range-editor--small .el-range__icon{line-height:24px}.el-range-editor--mini.el-input__inner{height:28px}.el-range-editor--mini .el-range-separator{line-height:20px;font-size:12px}.el-range-editor--mini .el-range-input{font-size:12px}.el-range-editor--mini .el-range__close-icon,.el-range-editor--mini .el-range__icon{line-height:20px}.el-range-editor.is-disabled{background-color:#f5f7fa;border-color:#e4e7ed;color:#c0c4cc;cursor:not-allowed}.el-range-editor.is-disabled:focus,.el-range-editor.is-disabled:hover{border-color:#e4e7ed}.el-range-editor.is-disabled input{background-color:#f5f7fa;color:#c0c4cc;cursor:not-allowed}.el-range-editor.is-disabled input::-webkit-input-placeholder{color:#c0c4cc}.el-range-editor.is-disabled input:-ms-input-placeholder{color:#c0c4cc}.el-range-editor.is-disabled input::-ms-input-placeholder{color:#c0c4cc}.el-range-editor.is-disabled input::-moz-placeholder{color:#c0c4cc}.el-range-editor.is-disabled input::placeholder{color:#c0c4cc}.el-range-editor.is-disabled .el-range-separator{color:#c0c4cc}.el-picker-panel{color:#606266;border:1px solid #e4e7ed;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);background:#fff;border-radius:4px;line-height:30px;margin:5px 0}.el-picker-panel,.el-popover,.el-time-panel{-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-picker-panel__body-wrapper:after,.el-picker-panel__body:after{content:"";display:table;clear:both}.el-picker-panel__content{position:relative;margin:15px}.el-picker-panel__footer{border-top:1px solid #e4e4e4;padding:4px;text-align:right;background-color:#fff;position:relative;font-size:0}.el-picker-panel__shortcut{display:block;width:100%;border:0;background-color:transparent;line-height:28px;font-size:14px;color:#606266;padding-left:12px;text-align:left;outline:0;cursor:pointer}.el-picker-panel__shortcut:hover{color:#409eff}.el-picker-panel__shortcut.active{background-color:#e6f1fe;color:#409eff}.el-picker-panel__btn{border:1px solid #dcdcdc;color:#333;line-height:24px;border-radius:2px;padding:0 20px;cursor:pointer;background-color:transparent;outline:0;font-size:12px}.el-picker-panel__btn[disabled]{color:#ccc;cursor:not-allowed}.el-picker-panel__icon-btn{font-size:12px;color:#303133;border:0;background:0 0;cursor:pointer;outline:0;margin-top:8px}.el-picker-panel__icon-btn:hover{color:#409eff}.el-picker-panel__icon-btn.is-disabled{color:#bbb}.el-picker-panel__icon-btn.is-disabled:hover{cursor:not-allowed}.el-picker-panel__link-btn{vertical-align:middle}.el-picker-panel [slot=sidebar],.el-picker-panel__sidebar{position:absolute;top:0;bottom:0;width:110px;border-right:1px solid #e4e4e4;-webkit-box-sizing:border-box;box-sizing:border-box;padding-top:6px;background-color:#fff;overflow:auto}.el-picker-panel [slot=sidebar]+.el-picker-panel__body,.el-picker-panel__sidebar+.el-picker-panel__body{margin-left:110px}.el-time-spinner.has-seconds .el-time-spinner__wrapper{width:33.3%}.el-time-spinner__wrapper{max-height:190px;overflow:auto;display:inline-block;width:50%;vertical-align:top;position:relative}.el-time-spinner__wrapper .el-scrollbar__wrap:not(.el-scrollbar__wrap--hidden-default){padding-bottom:15px}.el-time-spinner__input.el-input .el-input__inner,.el-time-spinner__list{padding:0;text-align:center}.el-time-spinner__wrapper.is-arrow{-webkit-box-sizing:border-box;box-sizing:border-box;text-align:center;overflow:hidden}.el-time-spinner__wrapper.is-arrow .el-time-spinner__list{-webkit-transform:translateY(-32px);transform:translateY(-32px)}.el-time-spinner__wrapper.is-arrow .el-time-spinner__item:hover:not(.disabled):not(.active){background:#fff;cursor:default}.el-time-spinner__arrow{font-size:12px;color:#909399;position:absolute;left:0;width:100%;z-index:1;text-align:center;height:30px;line-height:30px;cursor:pointer}.el-time-spinner__arrow:hover{color:#409eff}.el-time-spinner__arrow.el-icon-arrow-up{top:10px}.el-time-spinner__arrow.el-icon-arrow-down{bottom:10px}.el-time-spinner__input.el-input{width:70%}.el-time-spinner__list{margin:0;list-style:none}.el-time-spinner__list:after,.el-time-spinner__list:before{content:"";display:block;width:100%;height:80px}.el-time-spinner__item{height:32px;line-height:32px;font-size:12px;color:#606266}.el-time-spinner__item:hover:not(.disabled):not(.active){background:#f5f7fa;cursor:pointer}.el-time-spinner__item.active:not(.disabled){color:#303133;font-weight:700}.el-time-spinner__item.disabled{color:#c0c4cc;cursor:not-allowed}.el-time-panel{margin:5px 0;border:1px solid #e4e7ed;background-color:#fff;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);border-radius:2px;position:absolute;width:180px;left:0;z-index:1000;user-select:none;-webkit-box-sizing:content-box;box-sizing:content-box}.el-slider__button,.el-slider__button-wrapper,.el-time-panel{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.el-time-panel__content{font-size:0;position:relative;overflow:hidden}.el-time-panel__content:after,.el-time-panel__content:before{content:"";top:50%;position:absolute;margin-top:-15px;height:32px;z-index:-1;left:0;right:0;-webkit-box-sizing:border-box;box-sizing:border-box;padding-top:6px;text-align:left;border-top:1px solid #e4e7ed;border-bottom:1px solid #e4e7ed}.el-time-panel__content:after{left:50%;margin-left:12%;margin-right:12%}.el-time-panel__content:before{padding-left:50%;margin-right:12%;margin-left:12%}.el-time-panel__content.has-seconds:after{left:66.66667%}.el-time-panel__content.has-seconds:before{padding-left:33.33333%}.el-time-panel__footer{border-top:1px solid #e4e4e4;padding:4px;height:36px;line-height:25px;text-align:right;-webkit-box-sizing:border-box;box-sizing:border-box}.el-time-panel__btn{border:none;line-height:28px;padding:0 5px;margin:0 5px;cursor:pointer;background-color:transparent;outline:0;font-size:12px;color:#303133}.el-time-panel__btn.confirm{font-weight:800;color:#409eff}.el-time-range-picker{width:354px;overflow:visible}.el-time-range-picker__content{position:relative;text-align:center;padding:10px}.el-time-range-picker__cell{-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:4px 7px 7px;width:50%;display:inline-block}.el-time-range-picker__header{margin-bottom:5px;text-align:center;font-size:14px}.el-time-range-picker__body{border-radius:2px;border:1px solid #e4e7ed}.el-popover{position:absolute;background:#fff;min-width:150px;border:1px solid #ebeef5;padding:12px;z-index:2000;color:#606266;line-height:1.4;text-align:justify;font-size:14px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);word-break:break-all}.el-popover--plain{padding:18px 20px}.el-popover__title{color:#303133;font-size:16px;line-height:1;margin-bottom:12px}.v-modal-enter{-webkit-animation:v-modal-in .2s ease;animation:v-modal-in .2s ease}.v-modal-leave{-webkit-animation:v-modal-out .2s ease forwards;animation:v-modal-out .2s ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{position:fixed;left:0;top:0;width:100%;height:100%;opacity:.5;background:#000}.el-popup-parent--hidden{overflow:hidden}.el-message-box{display:inline-block;width:420px;padding-bottom:10px;vertical-align:middle;background-color:#fff;border-radius:4px;border:1px solid #ebeef5;font-size:18px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);text-align:left;overflow:hidden;-webkit-backface-visibility:hidden;backface-visibility:hidden}.el-message-box__wrapper{position:fixed;top:0;bottom:0;left:0;right:0;text-align:center}.el-message-box__wrapper:after{content:"";display:inline-block;height:100%;width:0;vertical-align:middle}.el-message-box__header{position:relative;padding:15px 15px 10px}.el-message-box__title{padding-left:0;margin-bottom:0;font-size:18px;line-height:1;color:#303133}.el-message-box__headerbtn{position:absolute;top:15px;right:15px;padding:0;border:none;outline:0;background:0 0;font-size:16px;cursor:pointer}.el-form-item.is-error .el-input__inner,.el-form-item.is-error .el-input__inner:focus,.el-form-item.is-error .el-textarea__inner,.el-form-item.is-error .el-textarea__inner:focus,.el-message-box__input input.invalid,.el-message-box__input input.invalid:focus{border-color:#f56c6c}.el-message-box__headerbtn .el-message-box__close{color:#909399}.el-message-box__headerbtn:focus .el-message-box__close,.el-message-box__headerbtn:hover .el-message-box__close{color:#409eff}.el-message-box__content{padding:10px 15px;color:#606266;font-size:14px}.el-message-box__container{position:relative}.el-message-box__input{padding-top:15px}.el-message-box__status{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);font-size:24px!important}.el-message-box__status:before{padding-left:1px}.el-message-box__status+.el-message-box__message{padding-left:36px;padding-right:12px}.el-message-box__status.el-icon-success{color:#67c23a}.el-message-box__status.el-icon-info{color:#909399}.el-message-box__status.el-icon-warning{color:#e6a23c}.el-message-box__status.el-icon-error{color:#f56c6c}.el-message-box__message{margin:0}.el-message-box__message p{margin:0;line-height:24px}.el-message-box__errormsg{color:#f56c6c;font-size:12px;min-height:18px;margin-top:2px}.el-message-box__btns{padding:5px 15px 0;text-align:right}.el-message-box__btns button:nth-child(2){margin-left:10px}.el-message-box__btns-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.el-message-box--center{padding-bottom:30px}.el-message-box--center .el-message-box__header{padding-top:30px}.el-message-box--center .el-message-box__title{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-message-box--center .el-message-box__status{position:relative;top:auto;padding-right:5px;text-align:center;-webkit-transform:translateY(-1px);transform:translateY(-1px)}.el-message-box--center .el-message-box__message{margin-left:0}.el-message-box--center .el-message-box__btns,.el-message-box--center .el-message-box__content{text-align:center}.el-message-box--center .el-message-box__content{padding-left:27px;padding-right:27px}.msgbox-fade-enter-active{-webkit-animation:msgbox-fade-in .3s;animation:msgbox-fade-in .3s}.msgbox-fade-leave-active{-webkit-animation:msgbox-fade-out .3s;animation:msgbox-fade-out .3s}@-webkit-keyframes msgbox-fade-in{0%{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}to{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes msgbox-fade-in{0%{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}to{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@-webkit-keyframes msgbox-fade-out{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}to{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}}@keyframes msgbox-fade-out{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}to{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}}.el-breadcrumb{font-size:14px;line-height:1}.el-breadcrumb:after,.el-breadcrumb:before{display:table;content:""}.el-breadcrumb:after{clear:both}.el-breadcrumb__separator{margin:0 9px;font-weight:700;color:#c0c4cc}.el-breadcrumb__separator[class*=icon]{margin:0 6px;font-weight:400}.el-breadcrumb__item{float:left}.el-breadcrumb__inner{color:#606266}.el-breadcrumb__inner.is-link,.el-breadcrumb__inner a{font-weight:700;text-decoration:none;-webkit-transition:color .2s cubic-bezier(.645,.045,.355,1);transition:color .2s cubic-bezier(.645,.045,.355,1);color:#303133}.el-breadcrumb__inner.is-link:hover,.el-breadcrumb__inner a:hover{color:#409eff;cursor:pointer}.el-breadcrumb__item:last-child .el-breadcrumb__inner,.el-breadcrumb__item:last-child .el-breadcrumb__inner:hover,.el-breadcrumb__item:last-child .el-breadcrumb__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover{font-weight:400;color:#606266;cursor:text}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none}.el-form--label-left .el-form-item__label{text-align:left}.el-form--label-top .el-form-item__label{float:none;display:inline-block;text-align:left;padding:0 0 10px}.el-form--inline .el-form-item{display:inline-block;margin-right:10px;vertical-align:top}.el-form--inline .el-form-item__label{float:none;display:inline-block}.el-form--inline .el-form-item__content{display:inline-block;vertical-align:top}.el-form--inline.el-form--label-top .el-form-item__content{display:block}.el-form-item{margin-bottom:22px}.el-form-item:after,.el-form-item:before{display:table;content:""}.el-form-item:after{clear:both}.el-form-item .el-form-item{margin-bottom:0}.el-form-item--mini.el-form-item,.el-form-item--small.el-form-item{margin-bottom:18px}.el-form-item .el-input__validateIcon{display:none}.el-form-item--medium .el-form-item__content,.el-form-item--medium .el-form-item__label{line-height:36px}.el-form-item--small .el-form-item__content,.el-form-item--small .el-form-item__label{line-height:32px}.el-form-item--small .el-form-item__error{padding-top:2px}.el-form-item--mini .el-form-item__content,.el-form-item--mini .el-form-item__label{line-height:28px}.el-form-item--mini .el-form-item__error{padding-top:1px}.el-form-item__label-wrap{float:left}.el-form-item__label-wrap .el-form-item__label{display:inline-block;float:none}.el-form-item__label{text-align:right;vertical-align:middle;float:left;font-size:14px;color:#606266;line-height:40px;padding:0 12px 0 0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-form-item__content{line-height:40px;position:relative;font-size:14px}.el-form-item__content:after,.el-form-item__content:before{display:table;content:""}.el-form-item__content:after{clear:both}.el-form-item__content .el-input-group{vertical-align:top}.el-form-item__error{color:#f56c6c;font-size:12px;line-height:1;padding-top:4px;position:absolute;top:100%;left:0}.el-form-item__error--inline{position:relative;top:auto;left:auto;display:inline-block;margin-left:10px}.el-form-item.is-required:not(.is-no-asterisk) .el-form-item__label-wrap>.el-form-item__label:before,.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before{content:"*";color:#f56c6c;margin-right:4px}.el-form-item.is-error .el-input-group__append .el-input__inner,.el-form-item.is-error .el-input-group__prepend .el-input__inner{border-color:transparent}.el-form-item.is-error .el-input__validateIcon{color:#f56c6c}.el-form-item--feedback .el-input__validateIcon{display:inline-block}.el-tabs__header{padding:0;position:relative;margin:0 0 15px}.el-tabs__active-bar{position:absolute;bottom:0;left:0;height:2px;background-color:#409eff;z-index:1;-webkit-transition:-webkit-transform .3s cubic-bezier(.645,.045,.355,1);transition:-webkit-transform .3s cubic-bezier(.645,.045,.355,1);transition:transform .3s cubic-bezier(.645,.045,.355,1);transition:transform .3s cubic-bezier(.645,.045,.355,1),-webkit-transform .3s cubic-bezier(.645,.045,.355,1);list-style:none}.el-tabs__new-tab{float:right;border:1px solid #d3dce6;height:18px;width:18px;line-height:18px;margin:12px 0 9px 10px;border-radius:3px;text-align:center;font-size:12px;color:#d3dce6;cursor:pointer;-webkit-transition:all .15s;transition:all .15s}.el-collapse-item__arrow,.el-tabs__nav{-webkit-transition:-webkit-transform .3s}.el-tabs__new-tab .el-icon-plus{-webkit-transform:scale(.8);transform:scale(.8)}.el-tabs__new-tab:hover{color:#409eff}.el-tabs__nav-wrap{overflow:hidden;margin-bottom:-1px;position:relative}.el-tabs__nav-wrap:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background-color:#e4e7ed;z-index:1}.el-tabs--border-card>.el-tabs__header .el-tabs__nav-wrap:after,.el-tabs--card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs__nav-wrap.is-scrollable{padding:0 20px;-webkit-box-sizing:border-box;box-sizing:border-box}.el-tabs__nav-scroll{overflow:hidden}.el-tabs__nav-next,.el-tabs__nav-prev{position:absolute;cursor:pointer;line-height:44px;font-size:12px;color:#909399}.el-tabs__nav-next{right:0}.el-tabs__nav-prev{left:0}.el-tabs__nav{white-space:nowrap;position:relative;transition:-webkit-transform .3s;-webkit-transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;float:left;z-index:2}.el-tabs__nav.is-stretch{min-width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.el-tabs__nav.is-stretch>*{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center}.el-tabs__item{padding:0 20px;height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;line-height:40px;display:inline-block;list-style:none;font-size:14px;font-weight:500;color:#303133;position:relative}.el-tabs__item:focus,.el-tabs__item:focus:active{outline:0}.el-tabs__item:focus.is-active.is-focus:not(:active){-webkit-box-shadow:0 0 2px 2px #409eff inset;box-shadow:inset 0 0 2px 2px #409eff;border-radius:3px}.el-tabs__item .el-icon-close{border-radius:50%;text-align:center;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);margin-left:5px}.el-tabs__item .el-icon-close:before{-webkit-transform:scale(.9);transform:scale(.9);display:inline-block}.el-tabs__item .el-icon-close:hover{background-color:#c0c4cc;color:#fff}.el-tabs__item.is-active{color:#409eff}.el-tabs__item:hover{color:#409eff;cursor:pointer}.el-tabs__item.is-disabled{color:#c0c4cc;cursor:default}.el-tabs__content{overflow:hidden;position:relative}.el-tabs--card>.el-tabs__header{border-bottom:1px solid #e4e7ed}.el-tabs--card>.el-tabs__header .el-tabs__nav{border:1px solid #e4e7ed;border-bottom:none;border-radius:4px 4px 0 0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-tabs--card>.el-tabs__header .el-tabs__active-bar{display:none}.el-tabs--card>.el-tabs__header .el-tabs__item .el-icon-close{position:relative;font-size:12px;width:0;height:14px;vertical-align:middle;line-height:15px;overflow:hidden;top:-1px;right:-2px;-webkit-transform-origin:100% 50%;transform-origin:100% 50%}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable .el-icon-close,.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover .el-icon-close{width:14px}.el-tabs--card>.el-tabs__header .el-tabs__item{border-bottom:1px solid transparent;border-left:1px solid #e4e7ed;-webkit-transition:color .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1);transition:color .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1)}.el-tabs--card>.el-tabs__header .el-tabs__item:first-child{border-left:none}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover{padding-left:13px;padding-right:13px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{border-bottom-color:#fff}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable{padding-left:20px;padding-right:20px}.el-tabs--border-card{background:#fff;border:1px solid #dcdfe6;-webkit-box-shadow:0 2px 4px 0 rgba(0,0,0,.12),0 0 6px 0 rgba(0,0,0,.04);box-shadow:0 2px 4px 0 rgba(0,0,0,.12),0 0 6px 0 rgba(0,0,0,.04)}.el-tabs--border-card>.el-tabs__content{padding:15px}.el-tabs--border-card>.el-tabs__header{background-color:#f5f7fa;border-bottom:1px solid #e4e7ed;margin:0}.el-tabs--border-card>.el-tabs__header .el-tabs__item{-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);border:1px solid transparent;margin-top:-1px;color:#909399}.el-tabs--border-card>.el-tabs__header .el-tabs__item+.el-tabs__item,.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{color:#409eff;background-color:#fff;border-right-color:#dcdfe6;border-left-color:#dcdfe6}.el-tabs--border-card>.el-tabs__header .el-tabs__item:not(.is-disabled):hover{color:#409eff}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-disabled{color:#c0c4cc}.el-tabs--border-card>.el-tabs__header .is-scrollable .el-tabs__item:first-child{margin-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:nth-child(2),.el-tabs--bottom .el-tabs__item.is-top:nth-child(2),.el-tabs--top .el-tabs__item.is-bottom:nth-child(2),.el-tabs--top .el-tabs__item.is-top:nth-child(2){padding-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:last-child,.el-tabs--bottom .el-tabs__item.is-top:last-child,.el-tabs--top .el-tabs__item.is-bottom:last-child,.el-tabs--top .el-tabs__item.is-top:last-child{padding-right:0}.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom .el-tabs--left>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom .el-tabs--right>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--left>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--right>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:20px}.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom .el-tabs--left>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom .el-tabs--right>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top .el-tabs--left>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top .el-tabs--right>.el-tabs__header .el-tabs__item:last-child{padding-right:20px}.el-tabs--bottom .el-tabs__header.is-bottom{margin-bottom:0;margin-top:10px}.el-tabs--bottom.el-tabs--border-card .el-tabs__header.is-bottom{border-bottom:0;border-top:1px solid #dcdfe6}.el-tabs--bottom.el-tabs--border-card .el-tabs__nav-wrap.is-bottom{margin-top:-1px;margin-bottom:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom:not(.is-active){border:1px solid transparent}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom{margin:0 -1px -1px}.el-tabs--left,.el-tabs--right{overflow:hidden}.el-tabs--left .el-tabs__header.is-left,.el-tabs--left .el-tabs__header.is-right,.el-tabs--left .el-tabs__nav-scroll,.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__header.is-left,.el-tabs--right .el-tabs__header.is-right,.el-tabs--right .el-tabs__nav-scroll,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{height:100%}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__active-bar.is-right,.el-tabs--right .el-tabs__active-bar.is-left,.el-tabs--right .el-tabs__active-bar.is-right{top:0;bottom:auto;width:2px;height:auto}.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{margin-bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{height:30px;line-height:30px;width:100%;text-align:center;cursor:pointer}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{left:auto;top:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{right:auto;bottom:0}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__nav-wrap.is-left:after{right:0;left:auto}.el-tabs--left .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--left .el-tabs__nav-wrap.is-right.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-right.is-scrollable{padding:30px 0}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__nav-wrap.is-right:after,.el-tabs--right .el-tabs__nav-wrap.is-left:after,.el-tabs--right .el-tabs__nav-wrap.is-right:after{height:100%;width:2px;bottom:auto;top:0}.el-tabs--left .el-tabs__nav.is-left,.el-tabs--left .el-tabs__nav.is-right,.el-tabs--right .el-tabs__nav.is-left,.el-tabs--right .el-tabs__nav.is-right{float:none}.el-tabs--left .el-tabs__item.is-left,.el-tabs--left .el-tabs__item.is-right,.el-tabs--right .el-tabs__item.is-left,.el-tabs--right .el-tabs__item.is-right{display:block}.el-tabs--left.el-tabs--card .el-tabs__active-bar.is-left,.el-tabs--right.el-tabs--card .el-tabs__active-bar.is-right{display:none}.el-tabs--left .el-tabs__header.is-left{float:left;margin-bottom:0;margin-right:10px}.el-tabs--left .el-tabs__nav-wrap.is-left{margin-right:-1px}.el-tabs--left .el-tabs__item.is-left{text-align:right}.el-tabs--left.el-tabs--card .el-tabs__item.is-left{border:1px solid #e4e7ed;border-bottom:none;border-left:none;text-align:left}.el-tabs--left.el-tabs--card .el-tabs__item.is-left:first-child{border-right:1px solid #e4e7ed;border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active{border:none;border-top:1px solid #e4e7ed;border-right:1px solid #fff}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:first-child{border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:last-child{border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__nav{border-radius:4px 0 0 4px;border-bottom:1px solid #e4e7ed;border-right:none}.el-tabs--left.el-tabs--card .el-tabs__new-tab{float:none}.el-tabs--left.el-tabs--border-card .el-tabs__header.is-left{border-right:1px solid #dfe4ed}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left{border:1px solid transparent;margin:-1px 0 -1px -1px}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left.is-active{border-color:#d1dbe5 transparent}.el-tabs--right .el-tabs__header.is-right{float:right;margin-bottom:0;margin-left:10px}.el-tabs--right .el-tabs__nav-wrap.is-right{margin-left:-1px}.el-tabs--right .el-tabs__nav-wrap.is-right:after{left:0;right:auto}.el-tabs--right .el-tabs__active-bar.is-right{left:0}.el-tabs--right.el-tabs--card .el-tabs__item.is-right{border-bottom:none;border-top:1px solid #e4e7ed}.el-tabs--right.el-tabs--card .el-tabs__item.is-right:first-child{border-left:1px solid #e4e7ed;border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active{border:none;border-top:1px solid #e4e7ed;border-left:1px solid #fff}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:first-child{border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:last-child{border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__nav{border-radius:0 4px 4px 0;border-bottom:1px solid #e4e7ed;border-left:none}.el-tabs--right.el-tabs--border-card .el-tabs__header.is-right{border-left:1px solid #dfe4ed}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right{border:1px solid transparent;margin:-1px -1px -1px 0}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right.is-active{border-color:#d1dbe5 transparent}.slideInLeft-transition,.slideInRight-transition{display:inline-block}.slideInRight-enter{-webkit-animation:slideInRight-enter .3s;animation:slideInRight-enter .3s}.slideInRight-leave{position:absolute;left:0;right:0;-webkit-animation:slideInRight-leave .3s;animation:slideInRight-leave .3s}.slideInLeft-enter{-webkit-animation:slideInLeft-enter .3s;animation:slideInLeft-enter .3s}.slideInLeft-leave{position:absolute;left:0;right:0;-webkit-animation:slideInLeft-leave .3s;animation:slideInLeft-leave .3s}@-webkit-keyframes slideInRight-enter{0%{opacity:0;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(100%);transform:translateX(100%)}to{opacity:1;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInRight-enter{0%{opacity:0;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(100%);transform:translateX(100%)}to{opacity:1;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes slideInRight-leave{0%{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0);opacity:1}to{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(100%);transform:translateX(100%);opacity:0}}@keyframes slideInRight-leave{0%{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0);opacity:1}to{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(100%);transform:translateX(100%);opacity:0}}@-webkit-keyframes slideInLeft-enter{0%{opacity:0;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}to{opacity:1;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInLeft-enter{0%{opacity:0;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}to{opacity:1;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes slideInLeft-leave{0%{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0);opacity:1}to{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(-100%);transform:translateX(-100%);opacity:0}}@keyframes slideInLeft-leave{0%{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0);opacity:1}to{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(-100%);transform:translateX(-100%);opacity:0}}.el-tree{position:relative;cursor:default;background:#fff;color:#606266}.el-tree__empty-block{position:relative;min-height:60px;text-align:center;width:100%;height:100%}.el-tree__empty-text{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#909399;font-size:14px}.el-tree__drop-indicator{position:absolute;left:0;right:0;height:1px;background-color:#409eff}.el-tree-node{white-space:nowrap;outline:0}.el-tree-node:focus>.el-tree-node__content{background-color:#f5f7fa}.el-tree-node.is-drop-inner>.el-tree-node__content .el-tree-node__label{background-color:#409eff;color:#fff}.el-tree-node__content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:26px;cursor:pointer}.el-tree-node__content>.el-tree-node__expand-icon{padding:6px}.el-tree-node__content>label.el-checkbox{margin-right:8px}.el-tree-node__content:hover{background-color:#f5f7fa}.el-tree.is-dragging .el-tree-node__content{cursor:move}.el-tree.is-dragging.is-drop-not-allow .el-tree-node__content{cursor:not-allowed}.el-tree-node__expand-icon{cursor:pointer;color:#c0c4cc;font-size:12px;-webkit-transform:rotate(0);transform:rotate(0);-webkit-transition:-webkit-transform .3s ease-in-out;transition:-webkit-transform .3s ease-in-out;transition:transform .3s ease-in-out;transition:transform .3s ease-in-out,-webkit-transform .3s ease-in-out}.el-tree-node__expand-icon.expanded{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.el-tree-node__expand-icon.is-leaf{color:transparent;cursor:default}.el-tree-node__label{font-size:14px}.el-tree-node__loading-icon{margin-right:8px;font-size:14px;color:#c0c4cc}.el-tree-node>.el-tree-node__children{overflow:hidden;background-color:transparent}.el-tree-node.is-expanded>.el-tree-node__children{display:block}.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:#f0f7ff}.el-alert{width:100%;padding:8px 16px;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:4px;position:relative;background-color:#fff;overflow:hidden;opacity:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:opacity .2s;transition:opacity .2s}.el-alert.is-light .el-alert__closebtn{color:#c0c4cc}.el-alert.is-dark .el-alert__closebtn,.el-alert.is-dark .el-alert__description{color:#fff}.el-alert.is-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-alert--success.is-light{background-color:#f0f9eb;color:#67c23a}.el-alert--success.is-light .el-alert__description{color:#67c23a}.el-alert--success.is-dark{background-color:#67c23a;color:#fff}.el-alert--info.is-light{background-color:#f4f4f5;color:#909399}.el-alert--info.is-dark{background-color:#909399;color:#fff}.el-alert--info .el-alert__description{color:#909399}.el-alert--warning.is-light{background-color:#fdf6ec;color:#e6a23c}.el-alert--warning.is-light .el-alert__description{color:#e6a23c}.el-alert--warning.is-dark{background-color:#e6a23c;color:#fff}.el-alert--error.is-light{background-color:#fef0f0;color:#f56c6c}.el-alert--error.is-light .el-alert__description{color:#f56c6c}.el-alert--error.is-dark{background-color:#f56c6c;color:#fff}.el-alert__content{display:table-cell;padding:0 8px}.el-alert__icon{font-size:16px;width:16px}.el-alert__icon.is-big{font-size:28px;width:28px}.el-alert__title{font-size:13px;line-height:18px}.el-alert__title.is-bold{font-weight:700}.el-alert .el-alert__description{font-size:12px;margin:5px 0 0}.el-alert__closebtn{font-size:12px;opacity:1;position:absolute;top:12px;right:15px;cursor:pointer}.el-alert-fade-enter,.el-alert-fade-leave-active,.el-loading-fade-enter,.el-loading-fade-leave-active,.el-notification-fade-leave-active{opacity:0}.el-alert__closebtn.is-customed{font-style:normal;font-size:13px;top:9px}.el-notification{display:-webkit-box;display:-ms-flexbox;display:flex;width:330px;padding:14px 26px 14px 13px;border-radius:8px;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #ebeef5;position:fixed;background-color:#fff;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);-webkit-transition:opacity .3s,left .3s,right .3s,top .4s,bottom .3s,-webkit-transform .3s;transition:opacity .3s,left .3s,right .3s,top .4s,bottom .3s,-webkit-transform .3s;transition:opacity .3s,transform .3s,left .3s,right .3s,top .4s,bottom .3s;transition:opacity .3s,transform .3s,left .3s,right .3s,top .4s,bottom .3s,-webkit-transform .3s;overflow:hidden}.el-notification.right{right:16px}.el-notification.left{left:16px}.el-notification__group{margin-left:13px;margin-right:8px}.el-notification__title{font-weight:700;font-size:16px;color:#303133;margin:0}.el-notification__content{font-size:14px;line-height:21px;margin:6px 0 0;color:#606266;text-align:justify}.el-notification__content p{margin:0}.el-notification__icon{height:24px;width:24px;font-size:24px}.el-notification__closeBtn{position:absolute;top:18px;right:15px;cursor:pointer;color:#909399;font-size:16px}.el-notification__closeBtn:hover{color:#606266}.el-notification .el-icon-success{color:#67c23a}.el-notification .el-icon-error{color:#f56c6c}.el-notification .el-icon-info{color:#909399}.el-notification .el-icon-warning{color:#e6a23c}.el-notification-fade-enter.right{right:0;-webkit-transform:translateX(100%);transform:translateX(100%)}.el-notification-fade-enter.left{left:0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.el-input-number{position:relative;display:inline-block;width:180px;line-height:38px}.el-input-number .el-input{display:block}.el-input-number .el-input__inner{-webkit-appearance:none;padding-left:50px;padding-right:50px;text-align:center}.el-input-number__decrease,.el-input-number__increase{position:absolute;z-index:1;top:1px;width:40px;height:auto;text-align:center;background:#f5f7fa;color:#606266;cursor:pointer;font-size:13px}.el-input-number__decrease:hover,.el-input-number__increase:hover{color:#409eff}.el-input-number__decrease:hover:not(.is-disabled)~.el-input .el-input__inner:not(.is-disabled),.el-input-number__increase:hover:not(.is-disabled)~.el-input .el-input__inner:not(.is-disabled){border-color:#409eff}.el-input-number__decrease.is-disabled,.el-input-number__increase.is-disabled{color:#c0c4cc;cursor:not-allowed}.el-input-number__increase{right:1px;border-radius:0 4px 4px 0;border-left:1px solid #dcdfe6}.el-input-number__decrease{left:1px;border-radius:4px 0 0 4px;border-right:1px solid #dcdfe6}.el-input-number.is-disabled .el-input-number__decrease,.el-input-number.is-disabled .el-input-number__increase{border-color:#e4e7ed;color:#e4e7ed}.el-input-number.is-disabled .el-input-number__decrease:hover,.el-input-number.is-disabled .el-input-number__increase:hover{color:#e4e7ed;cursor:not-allowed}.el-input-number--medium{width:200px;line-height:34px}.el-input-number--medium .el-input-number__decrease,.el-input-number--medium .el-input-number__increase{width:36px;font-size:14px}.el-input-number--medium .el-input__inner{padding-left:43px;padding-right:43px}.el-input-number--small{width:130px;line-height:30px}.el-input-number--small .el-input-number__decrease,.el-input-number--small .el-input-number__increase{width:32px;font-size:13px}.el-input-number--small .el-input-number__decrease [class*=el-icon],.el-input-number--small .el-input-number__increase [class*=el-icon]{-webkit-transform:scale(.9);transform:scale(.9)}.el-input-number--small .el-input__inner{padding-left:39px;padding-right:39px}.el-input-number--mini{width:130px;line-height:26px}.el-input-number--mini .el-input-number__decrease,.el-input-number--mini .el-input-number__increase{width:28px;font-size:12px}.el-input-number--mini .el-input-number__decrease [class*=el-icon],.el-input-number--mini .el-input-number__increase [class*=el-icon]{-webkit-transform:scale(.8);transform:scale(.8)}.el-input-number--mini .el-input__inner{padding-left:35px;padding-right:35px}.el-input-number.is-without-controls .el-input__inner{padding-left:15px;padding-right:15px}.el-input-number.is-controls-right .el-input__inner{padding-left:15px;padding-right:50px}.el-input-number.is-controls-right .el-input-number__decrease,.el-input-number.is-controls-right .el-input-number__increase{height:auto;line-height:19px}.el-input-number.is-controls-right .el-input-number__decrease [class*=el-icon],.el-input-number.is-controls-right .el-input-number__increase [class*=el-icon]{-webkit-transform:scale(.8);transform:scale(.8)}.el-input-number.is-controls-right .el-input-number__increase{border-radius:0 4px 0 0;border-bottom:1px solid #dcdfe6}.el-input-number.is-controls-right .el-input-number__decrease{right:1px;bottom:1px;top:auto;left:auto;border-right:none;border-left:1px solid #dcdfe6;border-radius:0 0 4px}.el-input-number.is-controls-right[class*=medium] [class*=decrease],.el-input-number.is-controls-right[class*=medium] [class*=increase]{line-height:17px}.el-input-number.is-controls-right[class*=small] [class*=decrease],.el-input-number.is-controls-right[class*=small] [class*=increase]{line-height:15px}.el-input-number.is-controls-right[class*=mini] [class*=decrease],.el-input-number.is-controls-right[class*=mini] [class*=increase]{line-height:13px}.el-tooltip__popper{position:absolute;border-radius:4px;padding:10px;z-index:2000;font-size:12px;line-height:1.2;min-width:10px;word-wrap:break-word}.el-tooltip__popper .popper__arrow,.el-tooltip__popper .popper__arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.el-tooltip__popper .popper__arrow{border-width:6px}.el-tooltip__popper .popper__arrow:after{content:" ";border-width:5px}.el-progress-bar__inner:after,.el-row:after,.el-row:before,.el-slider:after,.el-slider:before,.el-slider__button-wrapper:after,.el-upload-cover:after{content:""}.el-tooltip__popper[x-placement^=top]{margin-bottom:12px}.el-tooltip__popper[x-placement^=top] .popper__arrow{bottom:-6px;border-top-color:#303133;border-bottom-width:0}.el-tooltip__popper[x-placement^=top] .popper__arrow:after{bottom:1px;margin-left:-5px;border-top-color:#303133;border-bottom-width:0}.el-tooltip__popper[x-placement^=bottom]{margin-top:12px}.el-tooltip__popper[x-placement^=bottom] .popper__arrow{top:-6px;border-top-width:0;border-bottom-color:#303133}.el-tooltip__popper[x-placement^=bottom] .popper__arrow:after{top:1px;margin-left:-5px;border-top-width:0;border-bottom-color:#303133}.el-tooltip__popper[x-placement^=right]{margin-left:12px}.el-tooltip__popper[x-placement^=right] .popper__arrow{left:-6px;border-right-color:#303133;border-left-width:0}.el-tooltip__popper[x-placement^=right] .popper__arrow:after{bottom:-5px;left:1px;border-right-color:#303133;border-left-width:0}.el-tooltip__popper[x-placement^=left]{margin-right:12px}.el-tooltip__popper[x-placement^=left] .popper__arrow{right:-6px;border-right-width:0;border-left-color:#303133}.el-tooltip__popper[x-placement^=left] .popper__arrow:after{right:1px;bottom:-5px;margin-left:-5px;border-right-width:0;border-left-color:#303133}.el-tooltip__popper.is-dark{background:#303133;color:#fff}.el-tooltip__popper.is-light{background:#fff;border:1px solid #303133}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow{border-top-color:#303133}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow:after{border-top-color:#fff}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow{border-bottom-color:#303133}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow:after{border-bottom-color:#fff}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow{border-left-color:#303133}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow:after{border-left-color:#fff}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow{border-right-color:#303133}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow:after{border-right-color:#fff}.el-slider:after,.el-slider:before{display:table}.el-slider__button-wrapper .el-tooltip,.el-slider__button-wrapper:after{vertical-align:middle;display:inline-block}.el-slider:after{clear:both}.el-slider__runway{width:100%;height:6px;margin:16px 0;background-color:#e4e7ed;border-radius:3px;position:relative;cursor:pointer;vertical-align:middle}.el-slider__runway.show-input{margin-right:160px;width:auto}.el-slider__runway.disabled{cursor:default}.el-slider__runway.disabled .el-slider__bar{background-color:#c0c4cc}.el-slider__runway.disabled .el-slider__button{border-color:#c0c4cc}.el-slider__runway.disabled .el-slider__button-wrapper.dragging,.el-slider__runway.disabled .el-slider__button-wrapper.hover,.el-slider__runway.disabled .el-slider__button-wrapper:hover{cursor:not-allowed}.el-slider__runway.disabled .el-slider__button.dragging,.el-slider__runway.disabled .el-slider__button.hover,.el-slider__runway.disabled .el-slider__button:hover{-webkit-transform:scale(1);transform:scale(1);cursor:not-allowed}.el-slider__button-wrapper,.el-slider__stop{-webkit-transform:translateX(-50%);position:absolute}.el-slider__input{float:right;margin-top:3px;width:130px}.el-slider__input.el-input-number--mini{margin-top:5px}.el-slider__input.el-input-number--medium{margin-top:0}.el-slider__input.el-input-number--large{margin-top:-2px}.el-slider__bar{height:6px;background-color:#409eff;border-top-left-radius:3px;border-bottom-left-radius:3px;position:absolute}.el-slider__button-wrapper{height:36px;width:36px;z-index:1001;top:-15px;-webkit-transform:translateX(-50%);transform:translateX(-50%);background-color:transparent;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:normal}.el-slider__button-wrapper:after{height:100%}.el-slider__button-wrapper.hover,.el-slider__button-wrapper:hover{cursor:-webkit-grab;cursor:grab}.el-slider__button-wrapper.dragging{cursor:-webkit-grabbing;cursor:grabbing}.el-slider__button{width:16px;height:16px;border:2px solid #409eff;background-color:#fff;border-radius:50%;-webkit-transition:.2s;transition:.2s;user-select:none}.el-image-viewer__btn,.el-slider__button,.el-step__icon-inner{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.el-slider__button.dragging,.el-slider__button.hover,.el-slider__button:hover{-webkit-transform:scale(1.2);transform:scale(1.2)}.el-slider__button.hover,.el-slider__button:hover{cursor:-webkit-grab;cursor:grab}.el-slider__button.dragging{cursor:-webkit-grabbing;cursor:grabbing}.el-slider__stop{height:6px;width:6px;border-radius:100%;background-color:#fff;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.el-slider__marks{top:0;left:12px;width:18px;height:100%}.el-slider__marks-text{position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);font-size:14px;color:#909399;margin-top:15px}.el-slider.is-vertical{position:relative}.el-slider.is-vertical .el-slider__runway{width:6px;height:100%;margin:0 16px}.el-slider.is-vertical .el-slider__bar{width:6px;height:auto;border-radius:0 0 3px 3px}.el-slider.is-vertical .el-slider__button-wrapper{top:auto;left:-15px}.el-slider.is-vertical .el-slider__button-wrapper,.el-slider.is-vertical .el-slider__stop{-webkit-transform:translateY(50%);transform:translateY(50%)}.el-slider.is-vertical.el-slider--with-input{padding-bottom:58px}.el-slider.is-vertical.el-slider--with-input .el-slider__input{overflow:visible;float:none;position:absolute;bottom:22px;width:36px;margin-top:15px}.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input__inner{text-align:center;padding-left:5px;padding-right:5px}.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input-number__decrease,.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input-number__increase{top:32px;margin-top:-1px;border:1px solid #dcdfe6;line-height:20px;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition:border-color .2s cubic-bezier(.645,.045,.355,1);transition:border-color .2s cubic-bezier(.645,.045,.355,1)}.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input-number__decrease{width:18px;right:18px;border-bottom-left-radius:4px}.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input-number__increase{width:19px;border-bottom-right-radius:4px}.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input-number__increase~.el-input .el-input__inner{border-bottom-left-radius:0;border-bottom-right-radius:0}.el-slider.is-vertical.el-slider--with-input .el-slider__input:hover .el-input-number__decrease,.el-slider.is-vertical.el-slider--with-input .el-slider__input:hover .el-input-number__increase{border-color:#c0c4cc}.el-slider.is-vertical.el-slider--with-input .el-slider__input:active .el-input-number__decrease,.el-slider.is-vertical.el-slider--with-input .el-slider__input:active .el-input-number__increase{border-color:#409eff}.el-slider.is-vertical .el-slider__marks-text{margin-top:0;left:15px;-webkit-transform:translateY(50%);transform:translateY(50%)}.el-loading-parent--relative{position:relative!important}.el-loading-parent--hidden{overflow:hidden!important}.el-loading-mask{position:absolute;z-index:2000;background-color:hsla(0,0%,100%,.9);margin:0;top:0;right:0;bottom:0;left:0;-webkit-transition:opacity .3s;transition:opacity .3s}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:-25px}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{height:50px;width:50px}.el-loading-spinner{top:50%;margin-top:-21px;width:100%;text-align:center;position:absolute}.el-col-pull-0,.el-col-pull-1,.el-col-pull-2,.el-col-pull-3,.el-col-pull-4,.el-col-pull-5,.el-col-pull-6,.el-col-pull-7,.el-col-pull-8,.el-col-pull-9,.el-col-pull-10,.el-col-pull-11,.el-col-pull-13,.el-col-pull-14,.el-col-pull-15,.el-col-pull-16,.el-col-pull-17,.el-col-pull-18,.el-col-pull-19,.el-col-pull-20,.el-col-pull-21,.el-col-pull-22,.el-col-pull-23,.el-col-pull-24,.el-col-push-0,.el-col-push-1,.el-col-push-2,.el-col-push-3,.el-col-push-4,.el-col-push-5,.el-col-push-6,.el-col-push-7,.el-col-push-8,.el-col-push-9,.el-col-push-10,.el-col-push-11,.el-col-push-12,.el-col-push-13,.el-col-push-14,.el-col-push-15,.el-col-push-16,.el-col-push-17,.el-col-push-18,.el-col-push-19,.el-col-push-20,.el-col-push-21,.el-col-push-22,.el-col-push-23,.el-col-push-24,.el-row{position:relative}.el-loading-spinner .el-loading-text{color:#409eff;margin:3px 0;font-size:14px}.el-loading-spinner .circular{height:42px;width:42px;-webkit-animation:loading-rotate 2s linear infinite;animation:loading-rotate 2s linear infinite}.el-loading-spinner .path{-webkit-animation:loading-dash 1.5s ease-in-out infinite;animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:#409eff;stroke-linecap:round}.el-loading-spinner i{color:#409eff}@-webkit-keyframes loading-rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes loading-rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}}.el-row{-webkit-box-sizing:border-box;box-sizing:border-box}.el-row:after,.el-row:before{display:table}.el-row:after{clear:both}.el-row--flex{display:-webkit-box;display:-ms-flexbox;display:flex}.el-col-0,.el-row--flex:after,.el-row--flex:before{display:none}.el-row--flex.is-justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-row--flex.is-justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.el-row--flex.is-justify-space-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-row--flex.is-justify-space-around{-ms-flex-pack:distribute;justify-content:space-around}.el-row--flex.is-align-top{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.el-row--flex.is-align-middle{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-row--flex.is-align-bottom{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}[class*=el-col-]{float:left;-webkit-box-sizing:border-box;box-sizing:border-box}.el-upload--picture-card,.el-upload-dragger{-webkit-box-sizing:border-box;cursor:pointer}.el-col-0{width:0}.el-col-offset-0{margin-left:0}.el-col-pull-0{right:0}.el-col-push-0{left:0}.el-col-1{width:4.16667%}.el-col-offset-1{margin-left:4.16667%}.el-col-pull-1{right:4.16667%}.el-col-push-1{left:4.16667%}.el-col-2{width:8.33333%}.el-col-offset-2{margin-left:8.33333%}.el-col-pull-2{right:8.33333%}.el-col-push-2{left:8.33333%}.el-col-3{width:12.5%}.el-col-offset-3{margin-left:12.5%}.el-col-pull-3{right:12.5%}.el-col-push-3{left:12.5%}.el-col-4{width:16.66667%}.el-col-offset-4{margin-left:16.66667%}.el-col-pull-4{right:16.66667%}.el-col-push-4{left:16.66667%}.el-col-5{width:20.83333%}.el-col-offset-5{margin-left:20.83333%}.el-col-pull-5{right:20.83333%}.el-col-push-5{left:20.83333%}.el-col-6{width:25%}.el-col-offset-6{margin-left:25%}.el-col-pull-6{right:25%}.el-col-push-6{left:25%}.el-col-7{width:29.16667%}.el-col-offset-7{margin-left:29.16667%}.el-col-pull-7{right:29.16667%}.el-col-push-7{left:29.16667%}.el-col-8{width:33.33333%}.el-col-offset-8{margin-left:33.33333%}.el-col-pull-8{right:33.33333%}.el-col-push-8{left:33.33333%}.el-col-9{width:37.5%}.el-col-offset-9{margin-left:37.5%}.el-col-pull-9{right:37.5%}.el-col-push-9{left:37.5%}.el-col-10{width:41.66667%}.el-col-offset-10{margin-left:41.66667%}.el-col-pull-10{right:41.66667%}.el-col-push-10{left:41.66667%}.el-col-11{width:45.83333%}.el-col-offset-11{margin-left:45.83333%}.el-col-pull-11{right:45.83333%}.el-col-push-11{left:45.83333%}.el-col-12{width:50%}.el-col-offset-12{margin-left:50%}.el-col-pull-12{position:relative;right:50%}.el-col-push-12{left:50%}.el-col-13{width:54.16667%}.el-col-offset-13{margin-left:54.16667%}.el-col-pull-13{right:54.16667%}.el-col-push-13{left:54.16667%}.el-col-14{width:58.33333%}.el-col-offset-14{margin-left:58.33333%}.el-col-pull-14{right:58.33333%}.el-col-push-14{left:58.33333%}.el-col-15{width:62.5%}.el-col-offset-15{margin-left:62.5%}.el-col-pull-15{right:62.5%}.el-col-push-15{left:62.5%}.el-col-16{width:66.66667%}.el-col-offset-16{margin-left:66.66667%}.el-col-pull-16{right:66.66667%}.el-col-push-16{left:66.66667%}.el-col-17{width:70.83333%}.el-col-offset-17{margin-left:70.83333%}.el-col-pull-17{right:70.83333%}.el-col-push-17{left:70.83333%}.el-col-18{width:75%}.el-col-offset-18{margin-left:75%}.el-col-pull-18{right:75%}.el-col-push-18{left:75%}.el-col-19{width:79.16667%}.el-col-offset-19{margin-left:79.16667%}.el-col-pull-19{right:79.16667%}.el-col-push-19{left:79.16667%}.el-col-20{width:83.33333%}.el-col-offset-20{margin-left:83.33333%}.el-col-pull-20{right:83.33333%}.el-col-push-20{left:83.33333%}.el-col-21{width:87.5%}.el-col-offset-21{margin-left:87.5%}.el-col-pull-21{right:87.5%}.el-col-push-21{left:87.5%}.el-col-22{width:91.66667%}.el-col-offset-22{margin-left:91.66667%}.el-col-pull-22{right:91.66667%}.el-col-push-22{left:91.66667%}.el-col-23{width:95.83333%}.el-col-offset-23{margin-left:95.83333%}.el-col-pull-23{right:95.83333%}.el-col-push-23{left:95.83333%}.el-col-24{width:100%}.el-col-offset-24{margin-left:100%}.el-col-pull-24{right:100%}.el-col-push-24{left:100%}@media only screen and (max-width:767px){.el-col-xs-0{display:none;width:0}.el-col-xs-offset-0{margin-left:0}.el-col-xs-pull-0{position:relative;right:0}.el-col-xs-push-0{position:relative;left:0}.el-col-xs-1{width:4.16667%}.el-col-xs-offset-1{margin-left:4.16667%}.el-col-xs-pull-1{position:relative;right:4.16667%}.el-col-xs-push-1{position:relative;left:4.16667%}.el-col-xs-2{width:8.33333%}.el-col-xs-offset-2{margin-left:8.33333%}.el-col-xs-pull-2{position:relative;right:8.33333%}.el-col-xs-push-2{position:relative;left:8.33333%}.el-col-xs-3{width:12.5%}.el-col-xs-offset-3{margin-left:12.5%}.el-col-xs-pull-3{position:relative;right:12.5%}.el-col-xs-push-3{position:relative;left:12.5%}.el-col-xs-4{width:16.66667%}.el-col-xs-offset-4{margin-left:16.66667%}.el-col-xs-pull-4{position:relative;right:16.66667%}.el-col-xs-push-4{position:relative;left:16.66667%}.el-col-xs-5{width:20.83333%}.el-col-xs-offset-5{margin-left:20.83333%}.el-col-xs-pull-5{position:relative;right:20.83333%}.el-col-xs-push-5{position:relative;left:20.83333%}.el-col-xs-6{width:25%}.el-col-xs-offset-6{margin-left:25%}.el-col-xs-pull-6{position:relative;right:25%}.el-col-xs-push-6{position:relative;left:25%}.el-col-xs-7{width:29.16667%}.el-col-xs-offset-7{margin-left:29.16667%}.el-col-xs-pull-7{position:relative;right:29.16667%}.el-col-xs-push-7{position:relative;left:29.16667%}.el-col-xs-8{width:33.33333%}.el-col-xs-offset-8{margin-left:33.33333%}.el-col-xs-pull-8{position:relative;right:33.33333%}.el-col-xs-push-8{position:relative;left:33.33333%}.el-col-xs-9{width:37.5%}.el-col-xs-offset-9{margin-left:37.5%}.el-col-xs-pull-9{position:relative;right:37.5%}.el-col-xs-push-9{position:relative;left:37.5%}.el-col-xs-10{width:41.66667%}.el-col-xs-offset-10{margin-left:41.66667%}.el-col-xs-pull-10{position:relative;right:41.66667%}.el-col-xs-push-10{position:relative;left:41.66667%}.el-col-xs-11{width:45.83333%}.el-col-xs-offset-11{margin-left:45.83333%}.el-col-xs-pull-11{position:relative;right:45.83333%}.el-col-xs-push-11{position:relative;left:45.83333%}.el-col-xs-12{width:50%}.el-col-xs-offset-12{margin-left:50%}.el-col-xs-pull-12{position:relative;right:50%}.el-col-xs-push-12{position:relative;left:50%}.el-col-xs-13{width:54.16667%}.el-col-xs-offset-13{margin-left:54.16667%}.el-col-xs-pull-13{position:relative;right:54.16667%}.el-col-xs-push-13{position:relative;left:54.16667%}.el-col-xs-14{width:58.33333%}.el-col-xs-offset-14{margin-left:58.33333%}.el-col-xs-pull-14{position:relative;right:58.33333%}.el-col-xs-push-14{position:relative;left:58.33333%}.el-col-xs-15{width:62.5%}.el-col-xs-offset-15{margin-left:62.5%}.el-col-xs-pull-15{position:relative;right:62.5%}.el-col-xs-push-15{position:relative;left:62.5%}.el-col-xs-16{width:66.66667%}.el-col-xs-offset-16{margin-left:66.66667%}.el-col-xs-pull-16{position:relative;right:66.66667%}.el-col-xs-push-16{position:relative;left:66.66667%}.el-col-xs-17{width:70.83333%}.el-col-xs-offset-17{margin-left:70.83333%}.el-col-xs-pull-17{position:relative;right:70.83333%}.el-col-xs-push-17{position:relative;left:70.83333%}.el-col-xs-18{width:75%}.el-col-xs-offset-18{margin-left:75%}.el-col-xs-pull-18{position:relative;right:75%}.el-col-xs-push-18{position:relative;left:75%}.el-col-xs-19{width:79.16667%}.el-col-xs-offset-19{margin-left:79.16667%}.el-col-xs-pull-19{position:relative;right:79.16667%}.el-col-xs-push-19{position:relative;left:79.16667%}.el-col-xs-20{width:83.33333%}.el-col-xs-offset-20{margin-left:83.33333%}.el-col-xs-pull-20{position:relative;right:83.33333%}.el-col-xs-push-20{position:relative;left:83.33333%}.el-col-xs-21{width:87.5%}.el-col-xs-offset-21{margin-left:87.5%}.el-col-xs-pull-21{position:relative;right:87.5%}.el-col-xs-push-21{position:relative;left:87.5%}.el-col-xs-22{width:91.66667%}.el-col-xs-offset-22{margin-left:91.66667%}.el-col-xs-pull-22{position:relative;right:91.66667%}.el-col-xs-push-22{position:relative;left:91.66667%}.el-col-xs-23{width:95.83333%}.el-col-xs-offset-23{margin-left:95.83333%}.el-col-xs-pull-23{position:relative;right:95.83333%}.el-col-xs-push-23{position:relative;left:95.83333%}.el-col-xs-24{width:100%}.el-col-xs-offset-24{margin-left:100%}.el-col-xs-pull-24{position:relative;right:100%}.el-col-xs-push-24{position:relative;left:100%}}@media only screen and (min-width:768px){.el-col-sm-0{display:none;width:0}.el-col-sm-offset-0{margin-left:0}.el-col-sm-pull-0{position:relative;right:0}.el-col-sm-push-0{position:relative;left:0}.el-col-sm-1{width:4.16667%}.el-col-sm-offset-1{margin-left:4.16667%}.el-col-sm-pull-1{position:relative;right:4.16667%}.el-col-sm-push-1{position:relative;left:4.16667%}.el-col-sm-2{width:8.33333%}.el-col-sm-offset-2{margin-left:8.33333%}.el-col-sm-pull-2{position:relative;right:8.33333%}.el-col-sm-push-2{position:relative;left:8.33333%}.el-col-sm-3{width:12.5%}.el-col-sm-offset-3{margin-left:12.5%}.el-col-sm-pull-3{position:relative;right:12.5%}.el-col-sm-push-3{position:relative;left:12.5%}.el-col-sm-4{width:16.66667%}.el-col-sm-offset-4{margin-left:16.66667%}.el-col-sm-pull-4{position:relative;right:16.66667%}.el-col-sm-push-4{position:relative;left:16.66667%}.el-col-sm-5{width:20.83333%}.el-col-sm-offset-5{margin-left:20.83333%}.el-col-sm-pull-5{position:relative;right:20.83333%}.el-col-sm-push-5{position:relative;left:20.83333%}.el-col-sm-6{width:25%}.el-col-sm-offset-6{margin-left:25%}.el-col-sm-pull-6{position:relative;right:25%}.el-col-sm-push-6{position:relative;left:25%}.el-col-sm-7{width:29.16667%}.el-col-sm-offset-7{margin-left:29.16667%}.el-col-sm-pull-7{position:relative;right:29.16667%}.el-col-sm-push-7{position:relative;left:29.16667%}.el-col-sm-8{width:33.33333%}.el-col-sm-offset-8{margin-left:33.33333%}.el-col-sm-pull-8{position:relative;right:33.33333%}.el-col-sm-push-8{position:relative;left:33.33333%}.el-col-sm-9{width:37.5%}.el-col-sm-offset-9{margin-left:37.5%}.el-col-sm-pull-9{position:relative;right:37.5%}.el-col-sm-push-9{position:relative;left:37.5%}.el-col-sm-10{width:41.66667%}.el-col-sm-offset-10{margin-left:41.66667%}.el-col-sm-pull-10{position:relative;right:41.66667%}.el-col-sm-push-10{position:relative;left:41.66667%}.el-col-sm-11{width:45.83333%}.el-col-sm-offset-11{margin-left:45.83333%}.el-col-sm-pull-11{position:relative;right:45.83333%}.el-col-sm-push-11{position:relative;left:45.83333%}.el-col-sm-12{width:50%}.el-col-sm-offset-12{margin-left:50%}.el-col-sm-pull-12{position:relative;right:50%}.el-col-sm-push-12{position:relative;left:50%}.el-col-sm-13{width:54.16667%}.el-col-sm-offset-13{margin-left:54.16667%}.el-col-sm-pull-13{position:relative;right:54.16667%}.el-col-sm-push-13{position:relative;left:54.16667%}.el-col-sm-14{width:58.33333%}.el-col-sm-offset-14{margin-left:58.33333%}.el-col-sm-pull-14{position:relative;right:58.33333%}.el-col-sm-push-14{position:relative;left:58.33333%}.el-col-sm-15{width:62.5%}.el-col-sm-offset-15{margin-left:62.5%}.el-col-sm-pull-15{position:relative;right:62.5%}.el-col-sm-push-15{position:relative;left:62.5%}.el-col-sm-16{width:66.66667%}.el-col-sm-offset-16{margin-left:66.66667%}.el-col-sm-pull-16{position:relative;right:66.66667%}.el-col-sm-push-16{position:relative;left:66.66667%}.el-col-sm-17{width:70.83333%}.el-col-sm-offset-17{margin-left:70.83333%}.el-col-sm-pull-17{position:relative;right:70.83333%}.el-col-sm-push-17{position:relative;left:70.83333%}.el-col-sm-18{width:75%}.el-col-sm-offset-18{margin-left:75%}.el-col-sm-pull-18{position:relative;right:75%}.el-col-sm-push-18{position:relative;left:75%}.el-col-sm-19{width:79.16667%}.el-col-sm-offset-19{margin-left:79.16667%}.el-col-sm-pull-19{position:relative;right:79.16667%}.el-col-sm-push-19{position:relative;left:79.16667%}.el-col-sm-20{width:83.33333%}.el-col-sm-offset-20{margin-left:83.33333%}.el-col-sm-pull-20{position:relative;right:83.33333%}.el-col-sm-push-20{position:relative;left:83.33333%}.el-col-sm-21{width:87.5%}.el-col-sm-offset-21{margin-left:87.5%}.el-col-sm-pull-21{position:relative;right:87.5%}.el-col-sm-push-21{position:relative;left:87.5%}.el-col-sm-22{width:91.66667%}.el-col-sm-offset-22{margin-left:91.66667%}.el-col-sm-pull-22{position:relative;right:91.66667%}.el-col-sm-push-22{position:relative;left:91.66667%}.el-col-sm-23{width:95.83333%}.el-col-sm-offset-23{margin-left:95.83333%}.el-col-sm-pull-23{position:relative;right:95.83333%}.el-col-sm-push-23{position:relative;left:95.83333%}.el-col-sm-24{width:100%}.el-col-sm-offset-24{margin-left:100%}.el-col-sm-pull-24{position:relative;right:100%}.el-col-sm-push-24{position:relative;left:100%}}@media only screen and (min-width:992px){.el-col-md-0{display:none;width:0}.el-col-md-offset-0{margin-left:0}.el-col-md-pull-0{position:relative;right:0}.el-col-md-push-0{position:relative;left:0}.el-col-md-1{width:4.16667%}.el-col-md-offset-1{margin-left:4.16667%}.el-col-md-pull-1{position:relative;right:4.16667%}.el-col-md-push-1{position:relative;left:4.16667%}.el-col-md-2{width:8.33333%}.el-col-md-offset-2{margin-left:8.33333%}.el-col-md-pull-2{position:relative;right:8.33333%}.el-col-md-push-2{position:relative;left:8.33333%}.el-col-md-3{width:12.5%}.el-col-md-offset-3{margin-left:12.5%}.el-col-md-pull-3{position:relative;right:12.5%}.el-col-md-push-3{position:relative;left:12.5%}.el-col-md-4{width:16.66667%}.el-col-md-offset-4{margin-left:16.66667%}.el-col-md-pull-4{position:relative;right:16.66667%}.el-col-md-push-4{position:relative;left:16.66667%}.el-col-md-5{width:20.83333%}.el-col-md-offset-5{margin-left:20.83333%}.el-col-md-pull-5{position:relative;right:20.83333%}.el-col-md-push-5{position:relative;left:20.83333%}.el-col-md-6{width:25%}.el-col-md-offset-6{margin-left:25%}.el-col-md-pull-6{position:relative;right:25%}.el-col-md-push-6{position:relative;left:25%}.el-col-md-7{width:29.16667%}.el-col-md-offset-7{margin-left:29.16667%}.el-col-md-pull-7{position:relative;right:29.16667%}.el-col-md-push-7{position:relative;left:29.16667%}.el-col-md-8{width:33.33333%}.el-col-md-offset-8{margin-left:33.33333%}.el-col-md-pull-8{position:relative;right:33.33333%}.el-col-md-push-8{position:relative;left:33.33333%}.el-col-md-9{width:37.5%}.el-col-md-offset-9{margin-left:37.5%}.el-col-md-pull-9{position:relative;right:37.5%}.el-col-md-push-9{position:relative;left:37.5%}.el-col-md-10{width:41.66667%}.el-col-md-offset-10{margin-left:41.66667%}.el-col-md-pull-10{position:relative;right:41.66667%}.el-col-md-push-10{position:relative;left:41.66667%}.el-col-md-11{width:45.83333%}.el-col-md-offset-11{margin-left:45.83333%}.el-col-md-pull-11{position:relative;right:45.83333%}.el-col-md-push-11{position:relative;left:45.83333%}.el-col-md-12{width:50%}.el-col-md-offset-12{margin-left:50%}.el-col-md-pull-12{position:relative;right:50%}.el-col-md-push-12{position:relative;left:50%}.el-col-md-13{width:54.16667%}.el-col-md-offset-13{margin-left:54.16667%}.el-col-md-pull-13{position:relative;right:54.16667%}.el-col-md-push-13{position:relative;left:54.16667%}.el-col-md-14{width:58.33333%}.el-col-md-offset-14{margin-left:58.33333%}.el-col-md-pull-14{position:relative;right:58.33333%}.el-col-md-push-14{position:relative;left:58.33333%}.el-col-md-15{width:62.5%}.el-col-md-offset-15{margin-left:62.5%}.el-col-md-pull-15{position:relative;right:62.5%}.el-col-md-push-15{position:relative;left:62.5%}.el-col-md-16{width:66.66667%}.el-col-md-offset-16{margin-left:66.66667%}.el-col-md-pull-16{position:relative;right:66.66667%}.el-col-md-push-16{position:relative;left:66.66667%}.el-col-md-17{width:70.83333%}.el-col-md-offset-17{margin-left:70.83333%}.el-col-md-pull-17{position:relative;right:70.83333%}.el-col-md-push-17{position:relative;left:70.83333%}.el-col-md-18{width:75%}.el-col-md-offset-18{margin-left:75%}.el-col-md-pull-18{position:relative;right:75%}.el-col-md-push-18{position:relative;left:75%}.el-col-md-19{width:79.16667%}.el-col-md-offset-19{margin-left:79.16667%}.el-col-md-pull-19{position:relative;right:79.16667%}.el-col-md-push-19{position:relative;left:79.16667%}.el-col-md-20{width:83.33333%}.el-col-md-offset-20{margin-left:83.33333%}.el-col-md-pull-20{position:relative;right:83.33333%}.el-col-md-push-20{position:relative;left:83.33333%}.el-col-md-21{width:87.5%}.el-col-md-offset-21{margin-left:87.5%}.el-col-md-pull-21{position:relative;right:87.5%}.el-col-md-push-21{position:relative;left:87.5%}.el-col-md-22{width:91.66667%}.el-col-md-offset-22{margin-left:91.66667%}.el-col-md-pull-22{position:relative;right:91.66667%}.el-col-md-push-22{position:relative;left:91.66667%}.el-col-md-23{width:95.83333%}.el-col-md-offset-23{margin-left:95.83333%}.el-col-md-pull-23{position:relative;right:95.83333%}.el-col-md-push-23{position:relative;left:95.83333%}.el-col-md-24{width:100%}.el-col-md-offset-24{margin-left:100%}.el-col-md-pull-24{position:relative;right:100%}.el-col-md-push-24{position:relative;left:100%}}@media only screen and (min-width:1200px){.el-col-lg-0{display:none;width:0}.el-col-lg-offset-0{margin-left:0}.el-col-lg-pull-0{position:relative;right:0}.el-col-lg-push-0{position:relative;left:0}.el-col-lg-1{width:4.16667%}.el-col-lg-offset-1{margin-left:4.16667%}.el-col-lg-pull-1{position:relative;right:4.16667%}.el-col-lg-push-1{position:relative;left:4.16667%}.el-col-lg-2{width:8.33333%}.el-col-lg-offset-2{margin-left:8.33333%}.el-col-lg-pull-2{position:relative;right:8.33333%}.el-col-lg-push-2{position:relative;left:8.33333%}.el-col-lg-3{width:12.5%}.el-col-lg-offset-3{margin-left:12.5%}.el-col-lg-pull-3{position:relative;right:12.5%}.el-col-lg-push-3{position:relative;left:12.5%}.el-col-lg-4{width:16.66667%}.el-col-lg-offset-4{margin-left:16.66667%}.el-col-lg-pull-4{position:relative;right:16.66667%}.el-col-lg-push-4{position:relative;left:16.66667%}.el-col-lg-5{width:20.83333%}.el-col-lg-offset-5{margin-left:20.83333%}.el-col-lg-pull-5{position:relative;right:20.83333%}.el-col-lg-push-5{position:relative;left:20.83333%}.el-col-lg-6{width:25%}.el-col-lg-offset-6{margin-left:25%}.el-col-lg-pull-6{position:relative;right:25%}.el-col-lg-push-6{position:relative;left:25%}.el-col-lg-7{width:29.16667%}.el-col-lg-offset-7{margin-left:29.16667%}.el-col-lg-pull-7{position:relative;right:29.16667%}.el-col-lg-push-7{position:relative;left:29.16667%}.el-col-lg-8{width:33.33333%}.el-col-lg-offset-8{margin-left:33.33333%}.el-col-lg-pull-8{position:relative;right:33.33333%}.el-col-lg-push-8{position:relative;left:33.33333%}.el-col-lg-9{width:37.5%}.el-col-lg-offset-9{margin-left:37.5%}.el-col-lg-pull-9{position:relative;right:37.5%}.el-col-lg-push-9{position:relative;left:37.5%}.el-col-lg-10{width:41.66667%}.el-col-lg-offset-10{margin-left:41.66667%}.el-col-lg-pull-10{position:relative;right:41.66667%}.el-col-lg-push-10{position:relative;left:41.66667%}.el-col-lg-11{width:45.83333%}.el-col-lg-offset-11{margin-left:45.83333%}.el-col-lg-pull-11{position:relative;right:45.83333%}.el-col-lg-push-11{position:relative;left:45.83333%}.el-col-lg-12{width:50%}.el-col-lg-offset-12{margin-left:50%}.el-col-lg-pull-12{position:relative;right:50%}.el-col-lg-push-12{position:relative;left:50%}.el-col-lg-13{width:54.16667%}.el-col-lg-offset-13{margin-left:54.16667%}.el-col-lg-pull-13{position:relative;right:54.16667%}.el-col-lg-push-13{position:relative;left:54.16667%}.el-col-lg-14{width:58.33333%}.el-col-lg-offset-14{margin-left:58.33333%}.el-col-lg-pull-14{position:relative;right:58.33333%}.el-col-lg-push-14{position:relative;left:58.33333%}.el-col-lg-15{width:62.5%}.el-col-lg-offset-15{margin-left:62.5%}.el-col-lg-pull-15{position:relative;right:62.5%}.el-col-lg-push-15{position:relative;left:62.5%}.el-col-lg-16{width:66.66667%}.el-col-lg-offset-16{margin-left:66.66667%}.el-col-lg-pull-16{position:relative;right:66.66667%}.el-col-lg-push-16{position:relative;left:66.66667%}.el-col-lg-17{width:70.83333%}.el-col-lg-offset-17{margin-left:70.83333%}.el-col-lg-pull-17{position:relative;right:70.83333%}.el-col-lg-push-17{position:relative;left:70.83333%}.el-col-lg-18{width:75%}.el-col-lg-offset-18{margin-left:75%}.el-col-lg-pull-18{position:relative;right:75%}.el-col-lg-push-18{position:relative;left:75%}.el-col-lg-19{width:79.16667%}.el-col-lg-offset-19{margin-left:79.16667%}.el-col-lg-pull-19{position:relative;right:79.16667%}.el-col-lg-push-19{position:relative;left:79.16667%}.el-col-lg-20{width:83.33333%}.el-col-lg-offset-20{margin-left:83.33333%}.el-col-lg-pull-20{position:relative;right:83.33333%}.el-col-lg-push-20{position:relative;left:83.33333%}.el-col-lg-21{width:87.5%}.el-col-lg-offset-21{margin-left:87.5%}.el-col-lg-pull-21{position:relative;right:87.5%}.el-col-lg-push-21{position:relative;left:87.5%}.el-col-lg-22{width:91.66667%}.el-col-lg-offset-22{margin-left:91.66667%}.el-col-lg-pull-22{position:relative;right:91.66667%}.el-col-lg-push-22{position:relative;left:91.66667%}.el-col-lg-23{width:95.83333%}.el-col-lg-offset-23{margin-left:95.83333%}.el-col-lg-pull-23{position:relative;right:95.83333%}.el-col-lg-push-23{position:relative;left:95.83333%}.el-col-lg-24{width:100%}.el-col-lg-offset-24{margin-left:100%}.el-col-lg-pull-24{position:relative;right:100%}.el-col-lg-push-24{position:relative;left:100%}}@media only screen and (min-width:1920px){.el-col-xl-0{display:none;width:0}.el-col-xl-offset-0{margin-left:0}.el-col-xl-pull-0{position:relative;right:0}.el-col-xl-push-0{position:relative;left:0}.el-col-xl-1{width:4.16667%}.el-col-xl-offset-1{margin-left:4.16667%}.el-col-xl-pull-1{position:relative;right:4.16667%}.el-col-xl-push-1{position:relative;left:4.16667%}.el-col-xl-2{width:8.33333%}.el-col-xl-offset-2{margin-left:8.33333%}.el-col-xl-pull-2{position:relative;right:8.33333%}.el-col-xl-push-2{position:relative;left:8.33333%}.el-col-xl-3{width:12.5%}.el-col-xl-offset-3{margin-left:12.5%}.el-col-xl-pull-3{position:relative;right:12.5%}.el-col-xl-push-3{position:relative;left:12.5%}.el-col-xl-4{width:16.66667%}.el-col-xl-offset-4{margin-left:16.66667%}.el-col-xl-pull-4{position:relative;right:16.66667%}.el-col-xl-push-4{position:relative;left:16.66667%}.el-col-xl-5{width:20.83333%}.el-col-xl-offset-5{margin-left:20.83333%}.el-col-xl-pull-5{position:relative;right:20.83333%}.el-col-xl-push-5{position:relative;left:20.83333%}.el-col-xl-6{width:25%}.el-col-xl-offset-6{margin-left:25%}.el-col-xl-pull-6{position:relative;right:25%}.el-col-xl-push-6{position:relative;left:25%}.el-col-xl-7{width:29.16667%}.el-col-xl-offset-7{margin-left:29.16667%}.el-col-xl-pull-7{position:relative;right:29.16667%}.el-col-xl-push-7{position:relative;left:29.16667%}.el-col-xl-8{width:33.33333%}.el-col-xl-offset-8{margin-left:33.33333%}.el-col-xl-pull-8{position:relative;right:33.33333%}.el-col-xl-push-8{position:relative;left:33.33333%}.el-col-xl-9{width:37.5%}.el-col-xl-offset-9{margin-left:37.5%}.el-col-xl-pull-9{position:relative;right:37.5%}.el-col-xl-push-9{position:relative;left:37.5%}.el-col-xl-10{width:41.66667%}.el-col-xl-offset-10{margin-left:41.66667%}.el-col-xl-pull-10{position:relative;right:41.66667%}.el-col-xl-push-10{position:relative;left:41.66667%}.el-col-xl-11{width:45.83333%}.el-col-xl-offset-11{margin-left:45.83333%}.el-col-xl-pull-11{position:relative;right:45.83333%}.el-col-xl-push-11{position:relative;left:45.83333%}.el-col-xl-12{width:50%}.el-col-xl-offset-12{margin-left:50%}.el-col-xl-pull-12{position:relative;right:50%}.el-col-xl-push-12{position:relative;left:50%}.el-col-xl-13{width:54.16667%}.el-col-xl-offset-13{margin-left:54.16667%}.el-col-xl-pull-13{position:relative;right:54.16667%}.el-col-xl-push-13{position:relative;left:54.16667%}.el-col-xl-14{width:58.33333%}.el-col-xl-offset-14{margin-left:58.33333%}.el-col-xl-pull-14{position:relative;right:58.33333%}.el-col-xl-push-14{position:relative;left:58.33333%}.el-col-xl-15{width:62.5%}.el-col-xl-offset-15{margin-left:62.5%}.el-col-xl-pull-15{position:relative;right:62.5%}.el-col-xl-push-15{position:relative;left:62.5%}.el-col-xl-16{width:66.66667%}.el-col-xl-offset-16{margin-left:66.66667%}.el-col-xl-pull-16{position:relative;right:66.66667%}.el-col-xl-push-16{position:relative;left:66.66667%}.el-col-xl-17{width:70.83333%}.el-col-xl-offset-17{margin-left:70.83333%}.el-col-xl-pull-17{position:relative;right:70.83333%}.el-col-xl-push-17{position:relative;left:70.83333%}.el-col-xl-18{width:75%}.el-col-xl-offset-18{margin-left:75%}.el-col-xl-pull-18{position:relative;right:75%}.el-col-xl-push-18{position:relative;left:75%}.el-col-xl-19{width:79.16667%}.el-col-xl-offset-19{margin-left:79.16667%}.el-col-xl-pull-19{position:relative;right:79.16667%}.el-col-xl-push-19{position:relative;left:79.16667%}.el-col-xl-20{width:83.33333%}.el-col-xl-offset-20{margin-left:83.33333%}.el-col-xl-pull-20{position:relative;right:83.33333%}.el-col-xl-push-20{position:relative;left:83.33333%}.el-col-xl-21{width:87.5%}.el-col-xl-offset-21{margin-left:87.5%}.el-col-xl-pull-21{position:relative;right:87.5%}.el-col-xl-push-21{position:relative;left:87.5%}.el-col-xl-22{width:91.66667%}.el-col-xl-offset-22{margin-left:91.66667%}.el-col-xl-pull-22{position:relative;right:91.66667%}.el-col-xl-push-22{position:relative;left:91.66667%}.el-col-xl-23{width:95.83333%}.el-col-xl-offset-23{margin-left:95.83333%}.el-col-xl-pull-23{position:relative;right:95.83333%}.el-col-xl-push-23{position:relative;left:95.83333%}.el-col-xl-24{width:100%}.el-col-xl-offset-24{margin-left:100%}.el-col-xl-pull-24{position:relative;right:100%}.el-col-xl-push-24{position:relative;left:100%}}@-webkit-keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}.el-upload{display:inline-block;text-align:center;cursor:pointer;outline:0}.el-upload__input{display:none}.el-upload__tip{font-size:12px;color:#606266;margin-top:7px}.el-upload iframe{position:absolute;z-index:-1;top:0;left:0;opacity:0;filter:alpha(opacity=0)}.el-upload--picture-card{background-color:#fbfdff;border:1px dashed #c0ccda;border-radius:6px;-webkit-box-sizing:border-box;box-sizing:border-box;width:148px;height:148px;line-height:146px;vertical-align:top}.el-upload--picture-card i{font-size:28px;color:#8c939d}.el-upload--picture-card:hover,.el-upload:focus{border-color:#409eff;color:#409eff}.el-upload:focus .el-upload-dragger{border-color:#409eff}.el-upload-dragger{background-color:#fff;border:1px dashed #d9d9d9;border-radius:6px;-webkit-box-sizing:border-box;box-sizing:border-box;width:360px;height:180px;text-align:center;position:relative;overflow:hidden}.el-upload-dragger .el-icon-upload{font-size:67px;color:#c0c4cc;margin:40px 0 16px;line-height:50px}.el-upload-dragger+.el-upload__tip{text-align:center}.el-upload-dragger~.el-upload__files{border-top:1px solid #dcdfe6;margin-top:7px;padding-top:5px}.el-upload-dragger .el-upload__text{color:#606266;font-size:14px;text-align:center}.el-upload-dragger .el-upload__text em{color:#409eff;font-style:normal}.el-upload-dragger:hover{border-color:#409eff}.el-upload-dragger.is-dragover{background-color:rgba(32,159,255,.06);border:2px dashed #409eff}.el-upload-list{margin:0;padding:0;list-style:none}.el-upload-list__item{-webkit-transition:all .5s cubic-bezier(.55,0,.1,1);transition:all .5s cubic-bezier(.55,0,.1,1);font-size:14px;color:#606266;line-height:1.8;margin-top:5px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:4px;width:100%}.el-upload-list__item .el-progress{position:absolute;top:20px;width:100%}.el-upload-list__item .el-progress__text{position:absolute;right:0;top:-13px}.el-upload-list__item .el-progress-bar{margin-right:0;padding-right:0}.el-upload-list__item:first-child{margin-top:10px}.el-upload-list__item .el-icon-upload-success{color:#67c23a}.el-upload-list__item .el-icon-close{display:none;position:absolute;top:5px;right:5px;cursor:pointer;opacity:.75;color:#606266}.el-upload-list__item .el-icon-close:hover{opacity:1}.el-upload-list__item .el-icon-close-tip{display:none;position:absolute;top:5px;right:5px;font-size:12px;cursor:pointer;opacity:1;color:#409eff}.el-upload-list__item:hover{background-color:#f5f7fa}.el-upload-list__item:hover .el-icon-close{display:inline-block}.el-upload-list__item:hover .el-progress__text{display:none}.el-upload-list__item.is-success .el-upload-list__item-status-label{display:block}.el-upload-list__item.is-success .el-upload-list__item-name:focus,.el-upload-list__item.is-success .el-upload-list__item-name:hover{color:#409eff;cursor:pointer}.el-upload-list__item.is-success:focus:not(:hover) .el-icon-close-tip{display:inline-block}.el-upload-list__item.is-success:active .el-icon-close-tip,.el-upload-list__item.is-success:focus .el-upload-list__item-status-label,.el-upload-list__item.is-success:hover .el-upload-list__item-status-label,.el-upload-list__item.is-success:not(.focusing):focus .el-icon-close-tip{display:none}.el-upload-list.is-disabled .el-upload-list__item:hover .el-upload-list__item-status-label{display:block}.el-upload-list__item-name{color:#606266;display:block;margin-right:40px;overflow:hidden;padding-left:4px;text-overflow:ellipsis;-webkit-transition:color .3s;transition:color .3s;white-space:nowrap}.el-upload-list__item-name [class^=el-icon]{height:100%;margin-right:7px;color:#909399;line-height:inherit}.el-upload-list__item-status-label{position:absolute;right:5px;top:0;line-height:inherit;display:none}.el-upload-list__item-delete{position:absolute;right:10px;top:0;font-size:12px;color:#606266;display:none}.el-upload-list__item-delete:hover{color:#409eff}.el-upload-list--picture-card{margin:0;display:inline;vertical-align:top}.el-upload-list--picture-card .el-upload-list__item{overflow:hidden;background-color:#fff;border:1px solid #c0ccda;border-radius:6px;-webkit-box-sizing:border-box;box-sizing:border-box;width:148px;height:148px;margin:0 8px 8px 0;display:inline-block}.el-upload-list--picture-card .el-upload-list__item .el-icon-check,.el-upload-list--picture-card .el-upload-list__item .el-icon-circle-check{color:#fff}.el-upload-list--picture-card .el-upload-list__item .el-icon-close,.el-upload-list--picture-card .el-upload-list__item:hover .el-upload-list__item-status-label{display:none}.el-upload-list--picture-card .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture-card .el-upload-list__item-name{display:none}.el-upload-list--picture-card .el-upload-list__item-thumbnail{width:100%;height:100%}.el-upload-list--picture-card .el-upload-list__item-status-label{position:absolute;right:-15px;top:-6px;width:40px;height:24px;background:#13ce66;text-align:center;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-box-shadow:0 0 1pc 1px rgba(0,0,0,.2);box-shadow:0 0 1pc 1px rgba(0,0,0,.2)}.el-upload-list--picture-card .el-upload-list__item-status-label i{font-size:12px;margin-top:11px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.el-upload-list--picture-card .el-upload-list__item-actions{position:absolute;width:100%;height:100%;left:0;top:0;cursor:default;text-align:center;color:#fff;opacity:0;font-size:20px;background-color:rgba(0,0,0,.5);-webkit-transition:opacity .3s;transition:opacity .3s}.el-upload-list--picture-card .el-upload-list__item-actions:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-upload-list--picture-card .el-upload-list__item-actions span{display:none;cursor:pointer}.el-upload-list--picture-card .el-upload-list__item-actions span+span{margin-left:15px}.el-upload-list--picture-card .el-upload-list__item-actions .el-upload-list__item-delete{position:static;font-size:inherit;color:inherit}.el-upload-list--picture-card .el-upload-list__item-actions:hover{opacity:1}.el-upload-list--picture-card .el-upload-list__item-actions:hover span{display:inline-block}.el-upload-list--picture-card .el-progress{top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);bottom:auto;width:126px}.el-upload-list--picture-card .el-progress .el-progress__text{top:50%}.el-upload-list--picture .el-upload-list__item{overflow:hidden;z-index:0;background-color:#fff;border:1px solid #c0ccda;border-radius:6px;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:10px;padding:10px 10px 10px 90px;height:92px}.el-upload-list--picture .el-upload-list__item .el-icon-check,.el-upload-list--picture .el-upload-list__item .el-icon-circle-check{color:#fff}.el-upload-list--picture .el-upload-list__item:hover .el-upload-list__item-status-label{background:0 0;-webkit-box-shadow:none;box-shadow:none;top:-2px;right:-12px}.el-upload-list--picture .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture .el-upload-list__item.is-success .el-upload-list__item-name{line-height:70px;margin-top:0}.el-upload-list--picture .el-upload-list__item.is-success .el-upload-list__item-name i{display:none}.el-upload-list--picture .el-upload-list__item-thumbnail{vertical-align:middle;display:inline-block;width:70px;height:70px;float:left;position:relative;z-index:1;margin-left:-80px;background-color:#fff}.el-upload-list--picture .el-upload-list__item-name{display:block;margin-top:20px}.el-upload-list--picture .el-upload-list__item-name i{font-size:70px;line-height:1;position:absolute;left:9px;top:10px}.el-upload-list--picture .el-upload-list__item-status-label{position:absolute;right:-17px;top:-7px;width:46px;height:26px;background:#13ce66;text-align:center;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-box-shadow:0 1px 1px #ccc;box-shadow:0 1px 1px #ccc}.el-upload-list--picture .el-upload-list__item-status-label i{font-size:12px;margin-top:12px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.el-upload-list--picture .el-progress{position:relative;top:-7px}.el-upload-cover{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;z-index:10;cursor:default}.el-upload-cover:after{display:inline-block;height:100%;vertical-align:middle}.el-upload-cover img{display:block;width:100%;height:100%}.el-upload-cover__label{position:absolute;right:-15px;top:-6px;width:40px;height:24px;background:#13ce66;text-align:center;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-box-shadow:0 0 1pc 1px rgba(0,0,0,.2);box-shadow:0 0 1pc 1px rgba(0,0,0,.2)}.el-upload-cover__label i{font-size:12px;margin-top:11px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);color:#fff}.el-upload-cover__progress{display:inline-block;vertical-align:middle;position:static;width:243px}.el-upload-cover__progress+.el-upload__inner{opacity:0}.el-upload-cover__content{position:absolute;top:0;left:0;width:100%;height:100%}.el-upload-cover__interact{position:absolute;bottom:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.72);text-align:center}.el-upload-cover__interact .btn{display:inline-block;color:#fff;font-size:14px;cursor:pointer;vertical-align:middle;-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);margin-top:60px}.el-upload-cover__interact .btn span{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.el-upload-cover__interact .btn:not(:first-child){margin-left:35px}.el-upload-cover__interact .btn:hover{-webkit-transform:translateY(-13px);transform:translateY(-13px)}.el-upload-cover__interact .btn:hover span{opacity:1}.el-upload-cover__interact .btn i{color:#fff;display:block;font-size:24px;line-height:inherit;margin:0 auto 5px}.el-upload-cover__title{position:absolute;bottom:0;left:0;background-color:#fff;height:36px;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400;text-align:left;padding:0 10px;margin:0;line-height:36px;font-size:14px;color:#303133}.el-upload-cover+.el-upload__inner{opacity:0;position:relative;z-index:1}.el-progress{position:relative;line-height:1}.el-progress__text{font-size:14px;color:#606266;display:inline-block;vertical-align:middle;margin-left:10px;line-height:1}.el-progress__text i{vertical-align:middle;display:block}.el-progress--circle,.el-progress--dashboard{display:inline-block}.el-progress--circle .el-progress__text,.el-progress--dashboard .el-progress__text{position:absolute;top:50%;left:0;width:100%;text-align:center;margin:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.el-progress--circle .el-progress__text i,.el-progress--dashboard .el-progress__text i{vertical-align:middle;display:inline-block}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{padding-right:0;margin-right:0;display:block}.el-progress-bar,.el-progress-bar__inner:after,.el-progress-bar__innerText,.el-spinner{display:inline-block;vertical-align:middle}.el-progress--text-inside .el-progress-bar{padding-right:0;margin-right:0}.el-progress.is-success .el-progress-bar__inner{background-color:#67c23a}.el-progress.is-success .el-progress__text{color:#67c23a}.el-progress.is-warning .el-progress-bar__inner{background-color:#e6a23c}.el-progress.is-warning .el-progress__text{color:#e6a23c}.el-progress.is-exception .el-progress-bar__inner{background-color:#f56c6c}.el-progress.is-exception .el-progress__text{color:#f56c6c}.el-progress-bar{padding-right:50px;width:100%;margin-right:-55px;-webkit-box-sizing:border-box;box-sizing:border-box}.el-progress-bar__outer{height:6px;border-radius:100px;background-color:#ebeef5;overflow:hidden;position:relative;vertical-align:middle}.el-progress-bar__inner{position:absolute;left:0;top:0;height:100%;background-color:#409eff;text-align:right;border-radius:100px;line-height:1;white-space:nowrap;-webkit-transition:width .6s ease;transition:width .6s ease}.el-card,.el-message{border-radius:4px;overflow:hidden}.el-progress-bar__inner:after{height:100%}.el-progress-bar__innerText{color:#fff;font-size:12px;margin:0 5px}@keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}.el-time-spinner{width:100%;white-space:nowrap}.el-spinner-inner{-webkit-animation:rotate 2s linear infinite;animation:rotate 2s linear infinite;width:50px;height:50px}.el-spinner-inner .path{stroke:#ececec;stroke-linecap:round;-webkit-animation:dash 1.5s ease-in-out infinite;animation:dash 1.5s ease-in-out infinite}@-webkit-keyframes rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.el-message{min-width:380px;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #ebeef5;position:fixed;left:50%;top:20px;-webkit-transform:translateX(-50%);transform:translateX(-50%);background-color:#edf2fc;-webkit-transition:opacity .3s,top .4s,-webkit-transform .4s;transition:opacity .3s,top .4s,-webkit-transform .4s;transition:opacity .3s,transform .4s,top .4s;transition:opacity .3s,transform .4s,top .4s,-webkit-transform .4s;padding:15px 15px 15px 20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-message.is-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-message.is-closable .el-message__content{padding-right:16px}.el-message p{margin:0}.el-message--info .el-message__content{color:#909399}.el-message--success{background-color:#f0f9eb;border-color:#e1f3d8}.el-message--success .el-message__content{color:#67c23a}.el-message--warning{background-color:#fdf6ec;border-color:#faecd8}.el-message--warning .el-message__content{color:#e6a23c}.el-message--error{background-color:#fef0f0;border-color:#fde2e2}.el-message--error .el-message__content{color:#f56c6c}.el-message__icon{margin-right:10px}.el-message__content{padding:0;font-size:14px;line-height:1}.el-message__closeBtn{position:absolute;top:50%;right:15px;-webkit-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:#c0c4cc;font-size:16px}.el-message__closeBtn:hover{color:#909399}.el-message .el-icon-success{color:#67c23a}.el-message .el-icon-error{color:#f56c6c}.el-message .el-icon-info{color:#909399}.el-message .el-icon-warning{color:#e6a23c}.el-message-fade-enter,.el-message-fade-leave-active{opacity:0;-webkit-transform:translate(-50%,-100%);transform:translate(-50%,-100%)}.el-badge{position:relative;vertical-align:middle;display:inline-block}.el-badge__content{background-color:#f56c6c;border-radius:10px;color:#fff;display:inline-block;font-size:12px;height:18px;line-height:18px;padding:0 6px;text-align:center;white-space:nowrap;border:1px solid #fff}.el-badge__content.is-fixed{position:absolute;top:0;right:10px;-webkit-transform:translateY(-50%) translateX(100%);transform:translateY(-50%) translateX(100%)}.el-rate__icon,.el-rate__item{position:relative;display:inline-block}.el-badge__content.is-fixed.is-dot{right:5px}.el-badge__content.is-dot{height:8px;width:8px;padding:0;right:0;border-radius:50%}.el-badge__content--primary{background-color:#409eff}.el-badge__content--success{background-color:#67c23a}.el-badge__content--warning{background-color:#e6a23c}.el-badge__content--info{background-color:#909399}.el-badge__content--danger{background-color:#f56c6c}.el-card{border:1px solid #ebeef5;background-color:#fff;color:#303133;-webkit-transition:.3s;transition:.3s}.el-card.is-always-shadow,.el-card.is-hover-shadow:focus,.el-card.is-hover-shadow:hover{-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-card__header{padding:18px 20px;border-bottom:1px solid #ebeef5;-webkit-box-sizing:border-box;box-sizing:border-box}.el-card__body{padding:20px}.el-rate{height:20px;line-height:1}.el-rate__item{font-size:0;vertical-align:middle}.el-rate__icon{font-size:18px;margin-right:6px;color:#c0c4cc;-webkit-transition:.3s;transition:.3s}.el-rate__decimal,.el-rate__icon .path2{position:absolute;top:0;left:0}.el-rate__icon.hover{-webkit-transform:scale(1.15);transform:scale(1.15)}.el-rate__decimal{display:inline-block;overflow:hidden}.el-step.is-vertical,.el-steps{display:-webkit-box;display:-ms-flexbox}.el-rate__text{font-size:14px;vertical-align:middle}.el-steps{display:-webkit-box;display:-ms-flexbox;display:flex}.el-steps--simple{padding:13px 8%;border-radius:4px;background:#f5f7fa}.el-steps--horizontal{white-space:nowrap}.el-steps--vertical{height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column}.el-step{position:relative;-ms-flex-negative:1;flex-shrink:1}.el-step:last-of-type .el-step__line{display:none}.el-step:last-of-type.is-flex{-ms-flex-preferred-size:auto!important;flex-basis:auto!important;-ms-flex-negative:0;flex-shrink:0;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0}.el-step:last-of-type .el-step__description,.el-step:last-of-type .el-step__main{padding-right:0}.el-step__head{position:relative;width:100%}.el-step__head.is-process{color:#303133;border-color:#303133}.el-step__head.is-wait{color:#c0c4cc;border-color:#c0c4cc}.el-step__head.is-success{color:#67c23a;border-color:#67c23a}.el-step__head.is-error{color:#f56c6c;border-color:#f56c6c}.el-step__head.is-finish{color:#409eff;border-color:#409eff}.el-step__icon{position:relative;z-index:1;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:24px;height:24px;font-size:14px;-webkit-box-sizing:border-box;box-sizing:border-box;background:#fff;-webkit-transition:.15s ease-out;transition:.15s ease-out}.el-step__icon.is-text{border-radius:50%;border:2px solid;border-color:inherit}.el-step__icon.is-icon{width:40px}.el-step__icon-inner{display:inline-block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-align:center;font-weight:700;line-height:1;color:inherit}.el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:25px;font-weight:400}.el-step__icon-inner.is-status{-webkit-transform:translateY(1px);transform:translateY(1px)}.el-step__line{position:absolute;border-color:inherit;background-color:#c0c4cc}.el-step__line-inner{display:block;border:1px solid;border-color:inherit;-webkit-transition:.15s ease-out;transition:.15s ease-out;-webkit-box-sizing:border-box;box-sizing:border-box;width:0;height:0}.el-step__main{white-space:normal;text-align:left}.el-step__title{font-size:16px;line-height:38px}.el-step__title.is-process{font-weight:700;color:#303133}.el-step__title.is-wait{color:#c0c4cc}.el-step__title.is-success{color:#67c23a}.el-step__title.is-error{color:#f56c6c}.el-step__title.is-finish{color:#409eff}.el-step__description{padding-right:10%;margin-top:-5px;font-size:12px;line-height:20px;font-weight:400}.el-step__description.is-process{color:#303133}.el-step__description.is-wait{color:#c0c4cc}.el-step__description.is-success{color:#67c23a}.el-step__description.is-error{color:#f56c6c}.el-step__description.is-finish{color:#409eff}.el-step.is-horizontal{display:inline-block}.el-step.is-horizontal .el-step__line{height:2px;top:11px;left:0;right:0}.el-step.is-vertical{display:-webkit-box;display:-ms-flexbox;display:flex}.el-step.is-vertical .el-step__head{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;width:24px}.el-step.is-vertical .el-step__main{padding-left:10px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.el-step.is-vertical .el-step__title{line-height:24px;padding-bottom:8px}.el-step.is-vertical .el-step__line{width:2px;top:0;bottom:0;left:11px}.el-step.is-vertical .el-step__icon.is-icon{width:24px}.el-step.is-center .el-step__head,.el-step.is-center .el-step__main{text-align:center}.el-step.is-center .el-step__description{padding-left:20%;padding-right:20%}.el-step.is-center .el-step__line{left:50%;right:-50%}.el-step.is-simple{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-step.is-simple .el-step__head{width:auto;font-size:0;padding-right:10px}.el-step.is-simple .el-step__icon{background:0 0;width:16px;height:16px;font-size:12px}.el-step.is-simple .el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:18px}.el-step.is-simple .el-step__icon-inner.is-status{-webkit-transform:scale(.8) translateY(1px);transform:scale(.8) translateY(1px)}.el-step.is-simple .el-step__main{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.el-step.is-simple .el-step__title{font-size:16px;line-height:20px}.el-step.is-simple:not(:last-of-type) .el-step__title{max-width:50%;word-break:break-all}.el-step.is-simple .el-step__arrow{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-step.is-simple .el-step__arrow:after,.el-step.is-simple .el-step__arrow:before{content:"";display:inline-block;position:absolute;height:15px;width:1px;background:#c0c4cc}.el-step.is-simple .el-step__arrow:before{-webkit-transform:rotate(-45deg) translateY(-4px);transform:rotate(-45deg) translateY(-4px);-webkit-transform-origin:0 0;transform-origin:0 0}.el-step.is-simple .el-step__arrow:after{-webkit-transform:rotate(45deg) translateY(4px);transform:rotate(45deg) translateY(4px);-webkit-transform-origin:100% 100%;transform-origin:100% 100%}.el-step.is-simple:last-of-type .el-step__arrow{display:none}.el-carousel{position:relative}.el-carousel--horizontal{overflow-x:hidden}.el-carousel--vertical{overflow-y:hidden}.el-carousel__container{position:relative;height:300px}.el-carousel__arrow{border:none;outline:0;padding:0;margin:0;height:36px;width:36px;cursor:pointer;-webkit-transition:.3s;transition:.3s;border-radius:50%;background-color:rgba(31,45,61,.11);color:#fff;position:absolute;top:50%;z-index:10;-webkit-transform:translateY(-50%);transform:translateY(-50%);text-align:center;font-size:12px}.el-carousel__arrow--left{left:16px}.el-carousel__arrow--right{right:16px}.el-carousel__arrow:hover{background-color:rgba(31,45,61,.23)}.el-carousel__arrow i{cursor:pointer}.el-carousel__indicators{position:absolute;list-style:none;margin:0;padding:0;z-index:2}.el-carousel__indicators--horizontal{bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.el-carousel__indicators--vertical{right:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.el-carousel__indicators--outside{bottom:26px;text-align:center;position:static;-webkit-transform:none;transform:none}.el-carousel__indicators--outside .el-carousel__indicator:hover button{opacity:.64}.el-carousel__indicators--outside button{background-color:#c0c4cc;opacity:.24}.el-carousel__indicators--labels{left:0;right:0;-webkit-transform:none;transform:none;text-align:center}.el-carousel__indicators--labels .el-carousel__button{height:auto;width:auto;padding:2px 18px;font-size:12px}.el-carousel__indicators--labels .el-carousel__indicator{padding:6px 4px}.el-carousel__indicator{background-color:transparent;cursor:pointer}.el-carousel__indicator:hover button{opacity:.72}.el-carousel__indicator--horizontal{display:inline-block;padding:12px 4px}.el-carousel__indicator--vertical{padding:4px 12px}.el-carousel__indicator--vertical .el-carousel__button{width:2px;height:15px}.el-carousel__indicator.is-active button{opacity:1}.el-carousel__button{display:block;opacity:.48;width:30px;height:2px;background-color:#fff;border:none;outline:0;padding:0;margin:0;cursor:pointer;-webkit-transition:.3s;transition:.3s}.el-carousel__item,.el-carousel__mask{height:100%;top:0;left:0;position:absolute}.carousel-arrow-left-enter,.carousel-arrow-left-leave-active{-webkit-transform:translateY(-50%) translateX(-10px);transform:translateY(-50%) translateX(-10px);opacity:0}.carousel-arrow-right-enter,.carousel-arrow-right-leave-active{-webkit-transform:translateY(-50%) translateX(10px);transform:translateY(-50%) translateX(10px);opacity:0}.el-carousel__item{width:100%;display:inline-block;overflow:hidden;z-index:0}.el-carousel__item.is-active{z-index:2}.el-carousel__item--card,.el-carousel__item.is-animating{-webkit-transition:-webkit-transform .4s ease-in-out;transition:-webkit-transform .4s ease-in-out;transition:transform .4s ease-in-out;transition:transform .4s ease-in-out,-webkit-transform .4s ease-in-out}.el-carousel__item--card{width:50%}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:1}.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask,.el-carousel__item--card.is-in-stage:hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:2}.el-carousel__mask{width:100%;background-color:#fff;opacity:.24;-webkit-transition:.2s;transition:.2s}.el-fade-in-enter,.el-fade-in-leave-active,.el-fade-in-linear-enter,.el-fade-in-linear-leave,.el-fade-in-linear-leave-active,.fade-in-linear-enter,.fade-in-linear-leave,.fade-in-linear-leave-active{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active,.fade-in-linear-enter-active,.fade-in-linear-leave-active{-webkit-transition:opacity .2s linear;transition:opacity .2s linear}.el-fade-in-enter-active,.el-fade-in-leave-active,.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{-webkit-transition:all .3s cubic-bezier(.55,0,.1,1);transition:all .3s cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter,.el-zoom-in-center-leave-active{opacity:0;-webkit-transform:scaleX(0);transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);-webkit-transform-origin:center top;transform-origin:center top}.el-zoom-in-top-enter,.el-zoom-in-top-leave-active{opacity:0;-webkit-transform:scaleY(0);transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);-webkit-transform-origin:center bottom;transform-origin:center bottom}.el-zoom-in-bottom-enter,.el-zoom-in-bottom-leave-active{opacity:0;-webkit-transform:scaleY(0);transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);-webkit-transform-origin:top left;transform-origin:top left}.el-zoom-in-left-enter,.el-zoom-in-left-leave-active{opacity:0;-webkit-transform:scale(.45);transform:scale(.45)}.collapse-transition{-webkit-transition:height .3s ease-in-out,padding-top .3s ease-in-out,padding-bottom .3s ease-in-out;transition:height .3s ease-in-out,padding-top .3s ease-in-out,padding-bottom .3s ease-in-out}.horizontal-collapse-transition{-webkit-transition:width .3s ease-in-out,padding-left .3s ease-in-out,padding-right .3s ease-in-out;transition:width .3s ease-in-out,padding-left .3s ease-in-out,padding-right .3s ease-in-out}.el-list-enter-active,.el-list-leave-active{-webkit-transition:all 1s;transition:all 1s}.el-list-enter,.el-list-leave-active{opacity:0;-webkit-transform:translateY(-30px);transform:translateY(-30px)}.el-opacity-transition{-webkit-transition:opacity .3s cubic-bezier(.55,0,.1,1);transition:opacity .3s cubic-bezier(.55,0,.1,1)}.el-collapse{border-top:1px solid #ebeef5;border-bottom:1px solid #ebeef5}.el-collapse-item.is-disabled .el-collapse-item__header{color:#bbb;cursor:not-allowed}.el-collapse-item__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:48px;line-height:48px;background-color:#fff;color:#303133;cursor:pointer;border-bottom:1px solid #ebeef5;font-size:13px;font-weight:500;-webkit-transition:border-bottom-color .3s;transition:border-bottom-color .3s;outline:0}.el-collapse-item__arrow{margin:0 8px 0 auto;transition:-webkit-transform .3s;-webkit-transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;font-weight:300}.el-collapse-item__arrow.is-active{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.el-collapse-item__header.focusing:focus:not(:hover){color:#409eff}.el-collapse-item__header.is-active{border-bottom-color:transparent}.el-collapse-item__wrap{will-change:height;background-color:#fff;overflow:hidden;box-sizing:border-box;border-bottom:1px solid #ebeef5}.el-cascader__tags,.el-collapse-item__wrap,.el-tag{-webkit-box-sizing:border-box}.el-collapse-item__content{padding-bottom:25px;font-size:13px;color:#303133;line-height:1.769230769230769}.el-collapse-item:last-child{margin-bottom:-1px}.el-popper .popper__arrow,.el-popper .popper__arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.el-popper .popper__arrow{border-width:6px;-webkit-filter:drop-shadow(0 2px 12px rgba(0,0,0,.03));filter:drop-shadow(0 2px 12px rgba(0,0,0,.03))}.el-popper .popper__arrow:after{content:" ";border-width:6px}.el-popper[x-placement^=top]{margin-bottom:12px}.el-popper[x-placement^=top] .popper__arrow{bottom:-6px;left:50%;margin-right:3px;border-top-color:#ebeef5;border-bottom-width:0}.el-popper[x-placement^=top] .popper__arrow:after{bottom:1px;margin-left:-6px;border-top-color:#fff;border-bottom-width:0}.el-popper[x-placement^=bottom]{margin-top:12px}.el-popper[x-placement^=bottom] .popper__arrow{top:-6px;left:50%;margin-right:3px;border-top-width:0;border-bottom-color:#ebeef5}.el-popper[x-placement^=bottom] .popper__arrow:after{top:1px;margin-left:-6px;border-top-width:0;border-bottom-color:#fff}.el-popper[x-placement^=right]{margin-left:12px}.el-popper[x-placement^=right] .popper__arrow{top:50%;left:-6px;margin-bottom:3px;border-right-color:#ebeef5;border-left-width:0}.el-popper[x-placement^=right] .popper__arrow:after{bottom:-6px;left:1px;border-right-color:#fff;border-left-width:0}.el-popper[x-placement^=left]{margin-right:12px}.el-popper[x-placement^=left] .popper__arrow{top:50%;right:-6px;margin-bottom:3px;border-right-width:0;border-left-color:#ebeef5}.el-popper[x-placement^=left] .popper__arrow:after{right:1px;bottom:-6px;margin-left:-6px;border-right-width:0;border-left-color:#fff}.el-tag{background-color:#ecf5ff;display:inline-block;height:32px;padding:0 10px;line-height:30px;font-size:12px;color:#409eff;border:1px solid #d9ecff;border-radius:4px;-webkit-box-sizing:border-box;box-sizing:border-box;white-space:nowrap}.el-tag.is-hit{border-color:#409eff}.el-tag .el-tag__close{color:#409eff}.el-tag .el-tag__close:hover{color:#fff;background-color:#409eff}.el-tag.el-tag--info{background-color:#f4f4f5;border-color:#e9e9eb;color:#909399}.el-tag.el-tag--info.is-hit{border-color:#909399}.el-tag.el-tag--info .el-tag__close{color:#909399}.el-tag.el-tag--info .el-tag__close:hover{color:#fff;background-color:#909399}.el-tag.el-tag--success{background-color:#f0f9eb;border-color:#e1f3d8;color:#67c23a}.el-tag.el-tag--success.is-hit{border-color:#67c23a}.el-tag.el-tag--success .el-tag__close{color:#67c23a}.el-tag.el-tag--success .el-tag__close:hover{color:#fff;background-color:#67c23a}.el-tag.el-tag--warning{background-color:#fdf6ec;border-color:#faecd8;color:#e6a23c}.el-tag.el-tag--warning.is-hit{border-color:#e6a23c}.el-tag.el-tag--warning .el-tag__close{color:#e6a23c}.el-tag.el-tag--warning .el-tag__close:hover{color:#fff;background-color:#e6a23c}.el-tag.el-tag--danger{background-color:#fef0f0;border-color:#fde2e2;color:#f56c6c}.el-tag.el-tag--danger.is-hit{border-color:#f56c6c}.el-tag.el-tag--danger .el-tag__close{color:#f56c6c}.el-tag.el-tag--danger .el-tag__close:hover{color:#fff;background-color:#f56c6c}.el-tag .el-icon-close{border-radius:50%;text-align:center;position:relative;cursor:pointer;font-size:12px;height:16px;width:16px;line-height:16px;vertical-align:middle;top:-1px;right:-5px}.el-tag .el-icon-close:before{display:block}.el-tag--dark{background-color:#409eff;color:#fff}.el-tag--dark,.el-tag--dark.is-hit{border-color:#409eff}.el-tag--dark .el-tag__close{color:#fff}.el-tag--dark .el-tag__close:hover{color:#fff;background-color:#66b1ff}.el-tag--dark.el-tag--info{background-color:#909399;border-color:#909399;color:#fff}.el-tag--dark.el-tag--info.is-hit{border-color:#909399}.el-tag--dark.el-tag--info .el-tag__close{color:#fff}.el-tag--dark.el-tag--info .el-tag__close:hover{color:#fff;background-color:#a6a9ad}.el-tag--dark.el-tag--success{background-color:#67c23a;border-color:#67c23a;color:#fff}.el-tag--dark.el-tag--success.is-hit{border-color:#67c23a}.el-tag--dark.el-tag--success .el-tag__close{color:#fff}.el-tag--dark.el-tag--success .el-tag__close:hover{color:#fff;background-color:#85ce61}.el-tag--dark.el-tag--warning{background-color:#e6a23c;border-color:#e6a23c;color:#fff}.el-tag--dark.el-tag--warning.is-hit{border-color:#e6a23c}.el-tag--dark.el-tag--warning .el-tag__close{color:#fff}.el-tag--dark.el-tag--warning .el-tag__close:hover{color:#fff;background-color:#ebb563}.el-tag--dark.el-tag--danger{background-color:#f56c6c;border-color:#f56c6c;color:#fff}.el-tag--dark.el-tag--danger.is-hit{border-color:#f56c6c}.el-tag--dark.el-tag--danger .el-tag__close{color:#fff}.el-tag--dark.el-tag--danger .el-tag__close:hover{color:#fff;background-color:#f78989}.el-tag--plain{background-color:#fff;border-color:#b3d8ff;color:#409eff}.el-tag--plain.is-hit{border-color:#409eff}.el-tag--plain .el-tag__close{color:#409eff}.el-tag--plain .el-tag__close:hover{color:#fff;background-color:#409eff}.el-tag--plain.el-tag--info{background-color:#fff;border-color:#d3d4d6;color:#909399}.el-tag--plain.el-tag--info.is-hit{border-color:#909399}.el-tag--plain.el-tag--info .el-tag__close{color:#909399}.el-tag--plain.el-tag--info .el-tag__close:hover{color:#fff;background-color:#909399}.el-tag--plain.el-tag--success{background-color:#fff;border-color:#c2e7b0;color:#67c23a}.el-tag--plain.el-tag--success.is-hit{border-color:#67c23a}.el-tag--plain.el-tag--success .el-tag__close{color:#67c23a}.el-tag--plain.el-tag--success .el-tag__close:hover{color:#fff;background-color:#67c23a}.el-tag--plain.el-tag--warning{background-color:#fff;border-color:#f5dab1;color:#e6a23c}.el-tag--plain.el-tag--warning.is-hit{border-color:#e6a23c}.el-tag--plain.el-tag--warning .el-tag__close{color:#e6a23c}.el-tag--plain.el-tag--warning .el-tag__close:hover{color:#fff;background-color:#e6a23c}.el-tag--plain.el-tag--danger{background-color:#fff;border-color:#fbc4c4;color:#f56c6c}.el-tag--plain.el-tag--danger.is-hit{border-color:#f56c6c}.el-tag--plain.el-tag--danger .el-tag__close{color:#f56c6c}.el-tag--plain.el-tag--danger .el-tag__close:hover{color:#fff;background-color:#f56c6c}.el-tag--medium{height:28px;line-height:26px}.el-tag--medium .el-icon-close{-webkit-transform:scale(.8);transform:scale(.8)}.el-tag--small{height:24px;padding:0 8px;line-height:22px}.el-tag--small .el-icon-close{-webkit-transform:scale(.8);transform:scale(.8)}.el-tag--mini{height:20px;padding:0 5px;line-height:19px}.el-tag--mini .el-icon-close{margin-left:-3px;-webkit-transform:scale(.7);transform:scale(.7)}.el-cascader{display:inline-block;position:relative;font-size:14px;line-height:40px}.el-cascader:not(.is-disabled):hover .el-input__inner{cursor:pointer;border-color:#c0c4cc}.el-cascader .el-input .el-input__inner:focus,.el-cascader .el-input.is-focus .el-input__inner{border-color:#409eff}.el-cascader .el-input{cursor:pointer}.el-cascader .el-input .el-input__inner{text-overflow:ellipsis}.el-cascader .el-input .el-icon-arrow-down{-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;font-size:14px}.el-cascader .el-input .el-icon-arrow-down.is-reverse{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.el-cascader .el-input .el-icon-circle-close:hover{color:#909399}.el-cascader--medium{font-size:14px;line-height:36px}.el-cascader--small{font-size:13px;line-height:32px}.el-cascader--mini{font-size:12px;line-height:28px}.el-cascader.is-disabled .el-cascader__label{z-index:2;color:#c0c4cc}.el-cascader__dropdown{margin:5px 0;font-size:14px;background:#fff;border:1px solid #e4e7ed;border-radius:4px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-cascader__tags{position:absolute;left:0;right:30px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;line-height:normal;text-align:left;-webkit-box-sizing:border-box;box-sizing:border-box}.el-cascader__tags .el-tag{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;max-width:100%;margin:2px 0 2px 6px;text-overflow:ellipsis;background:#f0f2f5}.el-cascader__tags .el-tag:not(.is-hit){border-color:transparent}.el-cascader__tags .el-tag>span{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden;text-overflow:ellipsis}.el-cascader__tags .el-tag .el-icon-close{-webkit-box-flex:0;-ms-flex:none;flex:none;background-color:#c0c4cc;color:#fff}.el-cascader__tags .el-tag .el-icon-close:hover{background-color:#909399}.el-cascader__suggestion-panel{border-radius:4px}.el-cascader__suggestion-list{max-height:204px;margin:0;padding:6px 0;font-size:14px;color:#606266;text-align:center}.el-cascader__suggestion-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:34px;padding:0 15px;text-align:left;outline:0;cursor:pointer}.el-cascader__suggestion-item:focus,.el-cascader__suggestion-item:hover{background:#f5f7fa}.el-cascader__suggestion-item.is-checked{color:#409eff;font-weight:700}.el-cascader__suggestion-item>span{margin-right:10px}.el-cascader__empty-text{margin:10px 0;color:#c0c4cc}.el-cascader__search-input{-webkit-box-flex:1;-ms-flex:1;flex:1;height:24px;min-width:60px;margin:2px 0 2px 15px;padding:0;color:#606266;border:none;outline:0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-cascader__search-input::-webkit-input-placeholder{color:#c0c4cc}.el-cascader__search-input:-ms-input-placeholder{color:#c0c4cc}.el-cascader__search-input::-ms-input-placeholder{color:#c0c4cc}.el-cascader__search-input::-moz-placeholder{color:#c0c4cc}.el-cascader__search-input::placeholder{color:#c0c4cc}.el-color-predefine{font-size:12px;margin-top:8px;width:280px}.el-color-predefine,.el-color-predefine__colors{display:-webkit-box;display:-ms-flexbox;display:flex}.el-color-predefine__colors{-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-wrap:wrap;flex-wrap:wrap}.el-color-predefine__color-selector{margin:0 0 8px 8px;width:20px;height:20px;border-radius:4px;cursor:pointer}.el-color-predefine__color-selector:nth-child(10n+1){margin-left:0}.el-color-predefine__color-selector.selected{-webkit-box-shadow:0 0 3px 2px #409eff;box-shadow:0 0 3px 2px #409eff}.el-color-predefine__color-selector>div{display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;border-radius:3px}.el-color-predefine__color-selector.is-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-hue-slider{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;width:280px;height:12px;background-color:red;padding:0 2px}.el-color-hue-slider__bar{position:relative;background:-webkit-gradient(linear,left top,right top,color-stop(0,red),color-stop(17%,#ff0),color-stop(33%,#0f0),color-stop(50%,#0ff),color-stop(67%,#00f),color-stop(83%,#f0f),to(red));background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red);height:100%}.el-color-hue-slider__thumb{position:absolute;cursor:pointer;-webkit-box-sizing:border-box;box-sizing:border-box;left:0;top:0;width:4px;height:100%;border-radius:1px;background:#fff;border:1px solid #f0f0f0;-webkit-box-shadow:0 0 2px rgba(0,0,0,.6);box-shadow:0 0 2px rgba(0,0,0,.6);z-index:1}.el-color-hue-slider.is-vertical{width:12px;height:180px;padding:2px 0}.el-color-hue-slider.is-vertical .el-color-hue-slider__bar{background:-webkit-gradient(linear,left top,left bottom,color-stop(0,red),color-stop(17%,#ff0),color-stop(33%,#0f0),color-stop(50%,#0ff),color-stop(67%,#00f),color-stop(83%,#f0f),to(red));background:linear-gradient(180deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.el-color-hue-slider.is-vertical .el-color-hue-slider__thumb{left:0;top:0;width:100%;height:4px}.el-color-svpanel{position:relative;width:280px;height:180px}.el-color-svpanel__black,.el-color-svpanel__white{position:absolute;top:0;left:0;right:0;bottom:0}.el-color-svpanel__white{background:-webkit-gradient(linear,left top,right top,from(#fff),to(hsla(0,0%,100%,0)));background:linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.el-color-svpanel__black{background:-webkit-gradient(linear,left bottom,left top,from(#000),to(transparent));background:linear-gradient(0deg,#000,transparent)}.el-color-svpanel__cursor{position:absolute}.el-color-svpanel__cursor>div{cursor:head;width:4px;height:4px;-webkit-box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px rgba(0,0,0,.3),0 0 1px 2px rgba(0,0,0,.4);box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px rgba(0,0,0,.3),0 0 1px 2px rgba(0,0,0,.4);border-radius:50%;-webkit-transform:translate(-2px,-2px);transform:translate(-2px,-2px)}.el-color-alpha-slider{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;width:280px;height:12px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-alpha-slider__bar{position:relative;background:-webkit-gradient(linear,left top,right top,color-stop(0,hsla(0,0%,100%,0)),to(#fff));background:linear-gradient(90deg,hsla(0,0%,100%,0) 0,#fff);height:100%}.el-color-alpha-slider__thumb{position:absolute;cursor:pointer;-webkit-box-sizing:border-box;box-sizing:border-box;left:0;top:0;width:4px;height:100%;border-radius:1px;background:#fff;border:1px solid #f0f0f0;-webkit-box-shadow:0 0 2px rgba(0,0,0,.6);box-shadow:0 0 2px rgba(0,0,0,.6);z-index:1}.el-color-alpha-slider.is-vertical{width:20px;height:180px}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__bar{background:-webkit-gradient(linear,left top,left bottom,color-stop(0,hsla(0,0%,100%,0)),to(#fff));background:linear-gradient(180deg,hsla(0,0%,100%,0) 0,#fff)}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__thumb{left:0;top:0;width:100%;height:4px}.el-color-dropdown{width:300px}.el-color-dropdown__main-wrapper{margin-bottom:6px}.el-color-dropdown__main-wrapper:after{content:"";display:table;clear:both}.el-color-dropdown__btns{margin-top:6px;text-align:right}.el-color-dropdown__value{float:left;line-height:26px;font-size:12px;color:#000;width:160px}.el-color-dropdown__btn{border:1px solid #dcdcdc;color:#333;line-height:24px;border-radius:2px;padding:0 20px;cursor:pointer;background-color:transparent;outline:0;font-size:12px}.el-color-dropdown__btn[disabled]{color:#ccc;cursor:not-allowed}.el-color-dropdown__btn:hover{color:#409eff;border-color:#409eff}.el-color-dropdown__link-btn{cursor:pointer;color:#409eff;text-decoration:none;padding:15px;font-size:12px}.el-color-dropdown__link-btn:hover{color:tint(#409eff,20%)}.el-color-picker{display:inline-block;position:relative;line-height:normal;height:40px}.el-color-picker.is-disabled .el-color-picker__trigger{cursor:not-allowed}.el-color-picker--medium{height:36px}.el-color-picker--medium .el-color-picker__trigger{height:36px;width:36px}.el-color-picker--medium .el-color-picker__mask{height:34px;width:34px}.el-color-picker--small{height:32px}.el-color-picker--small .el-color-picker__trigger{height:32px;width:32px}.el-color-picker--small .el-color-picker__mask{height:30px;width:30px}.el-color-picker--small .el-color-picker__empty,.el-color-picker--small .el-color-picker__icon{-webkit-transform:translate3d(-50%,-50%,0) scale(.8);transform:translate3d(-50%,-50%,0) scale(.8)}.el-color-picker--mini{height:28px}.el-color-picker--mini .el-color-picker__trigger{height:28px;width:28px}.el-color-picker--mini .el-color-picker__mask{height:26px;width:26px}.el-color-picker--mini .el-color-picker__empty,.el-color-picker--mini .el-color-picker__icon{-webkit-transform:translate3d(-50%,-50%,0) scale(.8);transform:translate3d(-50%,-50%,0) scale(.8)}.el-color-picker__mask{height:38px;width:38px;border-radius:4px;position:absolute;top:1px;left:1px;z-index:1;cursor:not-allowed;background-color:hsla(0,0%,100%,.7)}.el-color-picker__trigger{display:inline-block;height:40px;width:40px;padding:4px;border:1px solid #e6e6e6;border-radius:4px;font-size:0;cursor:pointer}.el-color-picker__color,.el-color-picker__trigger{-webkit-box-sizing:border-box;box-sizing:border-box;position:relative}.el-color-picker__color{display:block;border:1px solid #999;border-radius:2px;width:100%;height:100%;text-align:center}.el-color-picker__color.is-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-picker__color-inner{position:absolute;left:0;top:0;right:0;bottom:0}.el-color-picker__empty,.el-color-picker__icon{top:50%;left:50%;font-size:12px;position:absolute}.el-color-picker__empty{color:#999}.el-color-picker__empty,.el-color-picker__icon{-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}.el-color-picker__icon{display:inline-block;width:100%;color:#fff;text-align:center}.el-color-picker__panel{position:absolute;z-index:10;padding:6px;-webkit-box-sizing:content-box;box-sizing:content-box;background-color:#fff;border:1px solid #ebeef5;border-radius:4px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-textarea{position:relative;display:inline-block;width:100%;vertical-align:bottom;font-size:14px}.el-textarea__inner{display:block;resize:vertical;padding:5px 15px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;font-size:inherit;color:#606266;background-color:#fff;background-image:none;border:1px solid #dcdfe6;border-radius:4px;-webkit-transition:border-color .2s cubic-bezier(.645,.045,.355,1);transition:border-color .2s cubic-bezier(.645,.045,.355,1)}.el-textarea__inner::-webkit-input-placeholder{color:#c0c4cc}.el-textarea__inner:-ms-input-placeholder{color:#c0c4cc}.el-textarea__inner::-ms-input-placeholder{color:#c0c4cc}.el-textarea__inner::-moz-placeholder{color:#c0c4cc}.el-textarea__inner::placeholder{color:#c0c4cc}.el-textarea__inner:hover{border-color:#c0c4cc}.el-textarea__inner:focus{outline:0;border-color:#409eff}.el-textarea .el-input__count{color:#909399;background:#fff;position:absolute;font-size:12px;bottom:5px;right:10px}.el-textarea.is-disabled .el-textarea__inner{background-color:#f5f7fa;border-color:#e4e7ed;color:#c0c4cc;cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::-webkit-input-placeholder{color:#c0c4cc}.el-textarea.is-disabled .el-textarea__inner:-ms-input-placeholder{color:#c0c4cc}.el-textarea.is-disabled .el-textarea__inner::-ms-input-placeholder{color:#c0c4cc}.el-textarea.is-disabled .el-textarea__inner::-moz-placeholder{color:#c0c4cc}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:#c0c4cc}.el-textarea.is-exceed .el-textarea__inner{border-color:#f56c6c}.el-textarea.is-exceed .el-input__count{color:#f56c6c}.el-input{position:relative;font-size:14px;display:inline-block;width:100%}.el-input::-webkit-scrollbar{z-index:11;width:6px}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{border-radius:5px;width:6px;background:#b4bccc}.el-input::-webkit-scrollbar-corner,.el-input::-webkit-scrollbar-track{background:#fff}.el-input::-webkit-scrollbar-track-piece{background:#fff;width:6px}.el-input .el-input__clear{color:#c0c4cc;font-size:14px;cursor:pointer;-webkit-transition:color .2s cubic-bezier(.645,.045,.355,1);transition:color .2s cubic-bezier(.645,.045,.355,1)}.el-input .el-input__clear:hover{color:#909399}.el-input .el-input__count{height:100%;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#909399;font-size:12px}.el-input .el-input__count .el-input__count-inner{background:#fff;line-height:normal;display:inline-block;padding:0 5px}.el-input__inner{-webkit-appearance:none;background-color:#fff;background-image:none;border-radius:4px;border:1px solid #dcdfe6;-webkit-box-sizing:border-box;box-sizing:border-box;color:#606266;display:inline-block;font-size:inherit;height:40px;line-height:40px;outline:0;padding:0 15px;-webkit-transition:border-color .2s cubic-bezier(.645,.045,.355,1);transition:border-color .2s cubic-bezier(.645,.045,.355,1);width:100%}.el-input__prefix,.el-input__suffix{position:absolute;top:0;-webkit-transition:all .3s;height:100%;color:#c0c4cc;text-align:center}.el-input__inner::-ms-reveal{display:none}.el-input__inner::-webkit-input-placeholder{color:#c0c4cc}.el-input__inner:-ms-input-placeholder{color:#c0c4cc}.el-input__inner::-ms-input-placeholder{color:#c0c4cc}.el-input__inner::-moz-placeholder{color:#c0c4cc}.el-input__inner::placeholder{color:#c0c4cc}.el-input__inner:hover{border-color:#c0c4cc}.el-input.is-active .el-input__inner,.el-input__inner:focus{border-color:#409eff;outline:0}.el-input__suffix{right:5px;-webkit-transition:all .3s;transition:all .3s}.el-input__suffix-inner{pointer-events:all}.el-input__prefix{left:5px}.el-input__icon,.el-input__prefix{-webkit-transition:all .3s;transition:all .3s}.el-input__icon{height:100%;width:25px;text-align:center;line-height:40px}.el-input__icon:after{content:"";height:100%;width:0;display:inline-block;vertical-align:middle}.el-input__validateIcon{pointer-events:none}.el-input.is-disabled .el-input__inner{background-color:#f5f7fa;border-color:#e4e7ed;color:#c0c4cc;cursor:not-allowed}.el-input.is-disabled .el-input__inner::-webkit-input-placeholder{color:#c0c4cc}.el-input.is-disabled .el-input__inner:-ms-input-placeholder{color:#c0c4cc}.el-input.is-disabled .el-input__inner::-ms-input-placeholder{color:#c0c4cc}.el-input.is-disabled .el-input__inner::-moz-placeholder{color:#c0c4cc}.el-input.is-disabled .el-input__inner::placeholder{color:#c0c4cc}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-link,.el-transfer-panel__filter .el-icon-circle-close{cursor:pointer}.el-input.is-exceed .el-input__inner{border-color:#f56c6c}.el-input.is-exceed .el-input__suffix .el-input__count{color:#f56c6c}.el-input--suffix .el-input__inner{padding-right:30px}.el-input--prefix .el-input__inner{padding-left:30px}.el-input--medium{font-size:14px}.el-input--medium .el-input__inner{height:36px;line-height:36px}.el-input--medium .el-input__icon{line-height:36px}.el-input--small{font-size:13px}.el-input--small .el-input__inner{height:32px;line-height:32px}.el-input--small .el-input__icon{line-height:32px}.el-input--mini{font-size:12px}.el-input--mini .el-input__inner{height:28px;line-height:28px}.el-input--mini .el-input__icon{line-height:28px}.el-input-group{line-height:normal;display:inline-table;width:100%;border-collapse:separate;border-spacing:0}.el-input-group>.el-input__inner{vertical-align:middle;display:table-cell}.el-input-group__append,.el-input-group__prepend{background-color:#f5f7fa;color:#909399;vertical-align:middle;display:table-cell;position:relative;border:1px solid #dcdfe6;border-radius:4px;padding:0 20px;width:1px;white-space:nowrap}.el-input-group--prepend .el-input__inner,.el-input-group__append{border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--append .el-input__inner,.el-input-group__prepend{border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:0}.el-input-group__append .el-button,.el-input-group__append .el-select,.el-input-group__prepend .el-button,.el-input-group__prepend .el-select{display:inline-block;margin:-10px -20px}.el-input-group__append button.el-button,.el-input-group__append div.el-select .el-input__inner,.el-input-group__append div.el-select:hover .el-input__inner,.el-input-group__prepend button.el-button,.el-input-group__prepend div.el-select .el-input__inner,.el-input-group__prepend div.el-select:hover .el-input__inner{border-color:transparent;background-color:transparent;color:inherit;border-top:0;border-bottom:0}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{border-right:0}.el-input-group__append{border-left:0}.el-input-group--append .el-select .el-input.is-focus .el-input__inner,.el-input-group--prepend .el-select .el-input.is-focus .el-input__inner{border-color:transparent}.el-input__inner::-ms-clear{display:none;width:0;height:0}.el-transfer{font-size:14px}.el-transfer__buttons{display:inline-block;vertical-align:middle;padding:0 30px}.el-transfer__button{display:block;margin:0 auto;padding:10px;border-radius:50%;color:#fff;background-color:#409eff;font-size:0}.el-transfer-panel__item+.el-transfer-panel__item,.el-transfer__button [class*=el-icon-]+span{margin-left:0}.el-transfer__button.is-with-texts{border-radius:4px}.el-transfer__button.is-disabled,.el-transfer__button.is-disabled:hover{border:1px solid #dcdfe6;background-color:#f5f7fa;color:#c0c4cc}.el-transfer__button:first-child{margin-bottom:10px}.el-transfer__button:nth-child(2){margin:0}.el-transfer__button i,.el-transfer__button span{font-size:14px}.el-transfer-panel{border:1px solid #ebeef5;border-radius:4px;overflow:hidden;background:#fff;display:inline-block;vertical-align:middle;width:200px;max-height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative}.el-transfer-panel__body{height:246px}.el-transfer-panel__body.is-with-footer{padding-bottom:40px}.el-transfer-panel__list{margin:0;padding:6px 0;list-style:none;height:246px;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box}.el-transfer-panel__list.is-filterable{height:194px;padding-top:0}.el-transfer-panel__item{height:30px;line-height:30px;padding-left:15px;display:block!important}.el-transfer-panel__item.el-checkbox{color:#606266}.el-transfer-panel__item:hover{color:#409eff}.el-transfer-panel__item.el-checkbox .el-checkbox__label{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;-webkit-box-sizing:border-box;box-sizing:border-box;padding-left:24px;line-height:30px}.el-transfer-panel__item .el-checkbox__input{position:absolute;top:8px}.el-transfer-panel__filter{text-align:center;margin:15px;-webkit-box-sizing:border-box;box-sizing:border-box;display:block;width:auto}.el-transfer-panel__filter .el-input__inner{height:32px;width:100%;font-size:12px;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:16px;padding-right:10px;padding-left:30px}.el-transfer-panel__filter .el-input__icon{margin-left:5px}.el-transfer-panel .el-transfer-panel__header{height:40px;line-height:40px;background:#f5f7fa;margin:0;padding-left:15px;border-bottom:1px solid #ebeef5;-webkit-box-sizing:border-box;box-sizing:border-box;color:#000}.el-transfer-panel .el-transfer-panel__header .el-checkbox{display:block;line-height:40px}.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label{font-size:16px;color:#303133;font-weight:400}.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label span{position:absolute;right:15px;color:#909399;font-size:12px;font-weight:400}.el-divider__text,.el-link{font-weight:500;font-size:14px}.el-transfer-panel .el-transfer-panel__footer{height:40px;background:#fff;margin:0;padding:0;border-top:1px solid #ebeef5;position:absolute;bottom:0;left:0;width:100%;z-index:1}.el-transfer-panel .el-transfer-panel__footer:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-container,.el-timeline-item__node{display:-webkit-box;display:-ms-flexbox}.el-transfer-panel .el-transfer-panel__footer .el-checkbox{padding-left:20px;color:#606266}.el-transfer-panel .el-transfer-panel__empty{margin:0;height:30px;line-height:30px;padding:6px 15px 0;color:#909399;text-align:center}.el-transfer-panel .el-checkbox__label{padding-left:8px}.el-transfer-panel .el-checkbox__inner{height:14px;width:14px;border-radius:3px}.el-transfer-panel .el-checkbox__inner:after{height:6px;width:3px;left:4px}.el-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;box-sizing:border-box;min-width:0}.el-aside,.el-container,.el-header{-webkit-box-sizing:border-box}.el-container.is-vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.el-header{padding:0 20px}.el-aside,.el-header{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0}.el-aside{overflow:auto}.el-footer,.el-main{-webkit-box-sizing:border-box}.el-main{display:block;-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;overflow:auto;padding:20px}.el-footer,.el-main{-webkit-box-sizing:border-box;box-sizing:border-box}.el-footer{padding:0 20px;-ms-flex-negative:0;flex-shrink:0}.el-timeline{margin:0;font-size:14px;list-style:none}.el-timeline .el-timeline-item:last-child .el-timeline-item__tail{display:none}.el-timeline-item{position:relative;padding-bottom:20px}.el-timeline-item__wrapper{position:relative;padding-left:28px;top:-3px}.el-timeline-item__tail{position:absolute;left:4px;height:100%;border-left:2px solid #e4e7ed}.el-timeline-item__icon{color:#fff;font-size:13px}.el-timeline-item__node{position:absolute;background-color:#e4e7ed;border-radius:50%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-image__error,.el-timeline-item__dot{display:-webkit-box;display:-ms-flexbox}.el-timeline-item__node--normal{left:-1px;width:12px;height:12px}.el-timeline-item__node--large{left:-2px;width:14px;height:14px}.el-timeline-item__node--primary{background-color:#409eff}.el-timeline-item__node--success{background-color:#67c23a}.el-timeline-item__node--warning{background-color:#e6a23c}.el-timeline-item__node--danger{background-color:#f56c6c}.el-timeline-item__node--info{background-color:#909399}.el-timeline-item__dot{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-timeline-item__content{color:#303133}.el-timeline-item__timestamp{color:#909399;line-height:1;font-size:13px}.el-timeline-item__timestamp.is-top{margin-bottom:8px;padding-top:4px}.el-timeline-item__timestamp.is-bottom{margin-top:8px}.el-link{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;vertical-align:middle;position:relative;text-decoration:none;outline:0;padding:0}.el-drawer,.el-empty,.el-result{-webkit-box-orient:vertical;-webkit-box-direction:normal}.el-link.is-underline:hover:after{content:"";position:absolute;left:0;right:0;height:0;bottom:0;border-bottom:1px solid #409eff}.el-link.el-link--default:after,.el-link.el-link--primary.is-underline:hover:after,.el-link.el-link--primary:after{border-color:#409eff}.el-link.is-disabled{cursor:not-allowed}.el-link [class*=el-icon-]+span{margin-left:5px}.el-link.el-link--default{color:#606266}.el-link.el-link--default:hover{color:#409eff}.el-link.el-link--default.is-disabled{color:#c0c4cc}.el-link.el-link--primary{color:#409eff}.el-link.el-link--primary:hover{color:#66b1ff}.el-link.el-link--primary.is-disabled{color:#a0cfff}.el-link.el-link--danger.is-underline:hover:after,.el-link.el-link--danger:after{border-color:#f56c6c}.el-link.el-link--danger{color:#f56c6c}.el-link.el-link--danger:hover{color:#f78989}.el-link.el-link--danger.is-disabled{color:#fab6b6}.el-link.el-link--success.is-underline:hover:after,.el-link.el-link--success:after{border-color:#67c23a}.el-link.el-link--success{color:#67c23a}.el-link.el-link--success:hover{color:#85ce61}.el-link.el-link--success.is-disabled{color:#b3e19d}.el-link.el-link--warning.is-underline:hover:after,.el-link.el-link--warning:after{border-color:#e6a23c}.el-link.el-link--warning{color:#e6a23c}.el-link.el-link--warning:hover{color:#ebb563}.el-link.el-link--warning.is-disabled{color:#f3d19e}.el-link.el-link--info.is-underline:hover:after,.el-link.el-link--info:after{border-color:#909399}.el-link.el-link--info{color:#909399}.el-link.el-link--info:hover{color:#a6a9ad}.el-link.el-link--info.is-disabled{color:#c8c9cc}.el-divider{background-color:#dcdfe6;position:relative}.el-divider--horizontal{display:block;height:1px;width:100%;margin:24px 0}.el-divider--vertical{display:inline-block;width:1px;height:1em;margin:0 8px;vertical-align:middle;position:relative}.el-divider__text{position:absolute;background-color:#fff;padding:0 20px;color:#303133}.el-image__error,.el-image__placeholder{background:#f5f7fa}.el-divider__text.is-left{left:20px;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.el-divider__text.is-center{left:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.el-divider__text.is-right{right:20px;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.el-image__error,.el-image__inner,.el-image__placeholder{width:100%;height:100%}.el-image{position:relative;display:inline-block;overflow:hidden}.el-image__inner{vertical-align:top}.el-image__inner--center{position:relative;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);display:block}.el-image__error{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:14px;color:#c0c4cc;vertical-align:middle}.el-image__preview{cursor:pointer}.el-image-viewer__wrapper{position:fixed;top:0;right:0;bottom:0;left:0}.el-image-viewer__btn{position:absolute;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:50%;opacity:.8;cursor:pointer;-webkit-box-sizing:border-box;box-sizing:border-box;user-select:none}.el-button,.el-checkbox,.el-image-viewer__btn{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.el-image-viewer__close{top:40px;right:40px;width:40px;height:40px;font-size:24px;color:#fff;background-color:#606266}.el-image-viewer__canvas{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-image-viewer__actions{left:50%;bottom:30px;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:282px;height:44px;padding:0 23px;background-color:#606266;border-color:#fff;border-radius:22px}.el-image-viewer__actions__inner{width:100%;height:100%;text-align:justify;cursor:default;font-size:23px;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-pack:distribute;justify-content:space-around}.el-image-viewer__next,.el-image-viewer__prev{top:50%;width:44px;height:44px;font-size:24px;color:#fff;background-color:#606266;border-color:#fff}.el-image-viewer__prev{left:40px}.el-image-viewer__next,.el-image-viewer__prev{-webkit-transform:translateY(-50%);transform:translateY(-50%)}.el-image-viewer__next{right:40px;text-indent:2px}.el-image-viewer__mask{position:absolute;width:100%;height:100%;top:0;left:0;opacity:.5;background:#000}.viewer-fade-enter-active{-webkit-animation:viewer-fade-in .3s;animation:viewer-fade-in .3s}.viewer-fade-leave-active{-webkit-animation:viewer-fade-out .3s;animation:viewer-fade-out .3s}@-webkit-keyframes viewer-fade-in{0%{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}to{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes viewer-fade-in{0%{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}to{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@-webkit-keyframes viewer-fade-out{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}to{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}}@keyframes viewer-fade-out{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}to{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}}.el-button{display:inline-block;line-height:1;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #dcdfe6;color:#606266;-webkit-appearance:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;margin:0;-webkit-transition:.1s;transition:.1s;font-weight:500;padding:12px 20px;font-size:14px;border-radius:4px}.el-button+.el-button{margin-left:10px}.el-button:focus,.el-button:hover{color:#409eff;border-color:#c6e2ff;background-color:#ecf5ff}.el-button:active{color:#3a8ee6;border-color:#3a8ee6;outline:0}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon-]+span{margin-left:5px}.el-button.is-plain:focus,.el-button.is-plain:hover{background:#fff;border-color:#409eff;color:#409eff}.el-button.is-active,.el-button.is-plain:active{color:#3a8ee6;border-color:#3a8ee6}.el-button.is-plain:active{background:#fff;outline:0}.el-button.is-disabled,.el-button.is-disabled:focus,.el-button.is-disabled:hover{color:#c0c4cc;cursor:not-allowed;background-image:none;background-color:#fff;border-color:#ebeef5}.el-button.is-disabled.el-button--text{background-color:transparent}.el-button.is-disabled.is-plain,.el-button.is-disabled.is-plain:focus,.el-button.is-disabled.is-plain:hover{background-color:#fff;border-color:#ebeef5;color:#c0c4cc}.el-button.is-loading{position:relative;pointer-events:none}.el-button.is-loading:before{pointer-events:none;content:"";position:absolute;left:-1px;top:-1px;right:-1px;bottom:-1px;border-radius:inherit;background-color:hsla(0,0%,100%,.35)}.el-button.is-round{border-radius:20px;padding:12px 23px}.el-button.is-circle{border-radius:50%;padding:12px}.el-button--primary{color:#fff;background-color:#409eff;border-color:#409eff}.el-button--primary:focus,.el-button--primary:hover{background:#66b1ff;border-color:#66b1ff;color:#fff}.el-button--primary.is-active,.el-button--primary:active{background:#3a8ee6;border-color:#3a8ee6;color:#fff}.el-button--primary:active{outline:0}.el-button--primary.is-disabled,.el-button--primary.is-disabled:active,.el-button--primary.is-disabled:focus,.el-button--primary.is-disabled:hover{color:#fff;background-color:#a0cfff;border-color:#a0cfff}.el-button--primary.is-plain{color:#409eff;background:#ecf5ff;border-color:#b3d8ff}.el-button--primary.is-plain:focus,.el-button--primary.is-plain:hover{background:#409eff;border-color:#409eff;color:#fff}.el-button--primary.is-plain:active{background:#3a8ee6;border-color:#3a8ee6;color:#fff;outline:0}.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:hover{color:#8cc5ff;background-color:#ecf5ff;border-color:#d9ecff}.el-button--success{color:#fff;background-color:#67c23a;border-color:#67c23a}.el-button--success:focus,.el-button--success:hover{background:#85ce61;border-color:#85ce61;color:#fff}.el-button--success.is-active,.el-button--success:active{background:#5daf34;border-color:#5daf34;color:#fff}.el-button--success:active{outline:0}.el-button--success.is-disabled,.el-button--success.is-disabled:active,.el-button--success.is-disabled:focus,.el-button--success.is-disabled:hover{color:#fff;background-color:#b3e19d;border-color:#b3e19d}.el-button--success.is-plain{color:#67c23a;background:#f0f9eb;border-color:#c2e7b0}.el-button--success.is-plain:focus,.el-button--success.is-plain:hover{background:#67c23a;border-color:#67c23a;color:#fff}.el-button--success.is-plain:active{background:#5daf34;border-color:#5daf34;color:#fff;outline:0}.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:hover{color:#a4da89;background-color:#f0f9eb;border-color:#e1f3d8}.el-button--warning{color:#fff;background-color:#e6a23c;border-color:#e6a23c}.el-button--warning:focus,.el-button--warning:hover{background:#ebb563;border-color:#ebb563;color:#fff}.el-button--warning.is-active,.el-button--warning:active{background:#cf9236;border-color:#cf9236;color:#fff}.el-button--warning:active{outline:0}.el-button--warning.is-disabled,.el-button--warning.is-disabled:active,.el-button--warning.is-disabled:focus,.el-button--warning.is-disabled:hover{color:#fff;background-color:#f3d19e;border-color:#f3d19e}.el-button--warning.is-plain{color:#e6a23c;background:#fdf6ec;border-color:#f5dab1}.el-button--warning.is-plain:focus,.el-button--warning.is-plain:hover{background:#e6a23c;border-color:#e6a23c;color:#fff}.el-button--warning.is-plain:active{background:#cf9236;border-color:#cf9236;color:#fff;outline:0}.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:hover{color:#f0c78a;background-color:#fdf6ec;border-color:#faecd8}.el-button--danger{color:#fff;background-color:#f56c6c;border-color:#f56c6c}.el-button--danger:focus,.el-button--danger:hover{background:#f78989;border-color:#f78989;color:#fff}.el-button--danger.is-active,.el-button--danger:active{background:#dd6161;border-color:#dd6161;color:#fff}.el-button--danger:active{outline:0}.el-button--danger.is-disabled,.el-button--danger.is-disabled:active,.el-button--danger.is-disabled:focus,.el-button--danger.is-disabled:hover{color:#fff;background-color:#fab6b6;border-color:#fab6b6}.el-button--danger.is-plain{color:#f56c6c;background:#fef0f0;border-color:#fbc4c4}.el-button--danger.is-plain:focus,.el-button--danger.is-plain:hover{background:#f56c6c;border-color:#f56c6c;color:#fff}.el-button--danger.is-plain:active{background:#dd6161;border-color:#dd6161;color:#fff;outline:0}.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:hover{color:#f9a7a7;background-color:#fef0f0;border-color:#fde2e2}.el-button--info{color:#fff;background-color:#909399;border-color:#909399}.el-button--info:focus,.el-button--info:hover{background:#a6a9ad;border-color:#a6a9ad;color:#fff}.el-button--info.is-active,.el-button--info:active{background:#82848a;border-color:#82848a;color:#fff}.el-button--info:active{outline:0}.el-button--info.is-disabled,.el-button--info.is-disabled:active,.el-button--info.is-disabled:focus,.el-button--info.is-disabled:hover{color:#fff;background-color:#c8c9cc;border-color:#c8c9cc}.el-button--info.is-plain{color:#909399;background:#f4f4f5;border-color:#d3d4d6}.el-button--info.is-plain:focus,.el-button--info.is-plain:hover{background:#909399;border-color:#909399;color:#fff}.el-button--info.is-plain:active{background:#82848a;border-color:#82848a;color:#fff;outline:0}.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:hover{color:#bcbec2;background-color:#f4f4f5;border-color:#e9e9eb}.el-button--text,.el-button--text.is-disabled,.el-button--text.is-disabled:focus,.el-button--text.is-disabled:hover,.el-button--text:active{border-color:transparent}.el-button--medium{padding:10px 20px;font-size:14px;border-radius:4px}.el-button--mini,.el-button--small{font-size:12px;border-radius:3px}.el-button--medium.is-round{padding:10px 20px}.el-button--medium.is-circle{padding:10px}.el-button--small,.el-button--small.is-round{padding:9px 15px}.el-button--small.is-circle{padding:9px}.el-button--mini,.el-button--mini.is-round{padding:7px 15px}.el-button--mini.is-circle{padding:7px}.el-button--text{color:#409eff;background:0 0;padding-left:0;padding-right:0}.el-button--text:focus,.el-button--text:hover{color:#66b1ff;border-color:transparent;background-color:transparent}.el-button--text:active{color:#3a8ee6;background-color:transparent}.el-button-group{display:inline-block;vertical-align:middle}.el-button-group:after,.el-button-group:before{display:table;content:""}.el-button-group:after{clear:both}.el-button-group>.el-button{float:left;position:relative}.el-button-group>.el-button+.el-button{margin-left:0}.el-button-group>.el-button.is-disabled{z-index:1}.el-button-group>.el-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.el-button-group>.el-button:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.el-button-group>.el-button:first-child:last-child{border-radius:4px}.el-button-group>.el-button:first-child:last-child.is-round{border-radius:20px}.el-button-group>.el-button:first-child:last-child.is-circle{border-radius:50%}.el-button-group>.el-button:not(:first-child):not(:last-child){border-radius:0}.el-button-group>.el-button:not(:last-child){margin-right:-1px}.el-button-group>.el-button.is-active,.el-button-group>.el-button:not(.is-disabled):active,.el-button-group>.el-button:not(.is-disabled):focus,.el-button-group>.el-button:not(.is-disabled):hover{z-index:1}.el-button-group>.el-dropdown>.el-button{border-top-left-radius:0;border-bottom-left-radius:0;border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--primary:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--primary:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--primary:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-calendar{background-color:#fff}.el-calendar__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:12px 20px;border-bottom:1px solid #ebeef5}.el-backtop,.el-page-header{display:-webkit-box;display:-ms-flexbox}.el-calendar__title{color:#000;-ms-flex-item-align:center;align-self:center}.el-calendar__body{padding:12px 20px 35px}.el-calendar-table{table-layout:fixed;width:100%}.el-calendar-table thead th{padding:12px 0;color:#606266;font-weight:400}.el-calendar-table:not(.is-range) td.next,.el-calendar-table:not(.is-range) td.prev{color:#c0c4cc}.el-backtop,.el-calendar-table td.is-today{color:#409eff}.el-calendar-table td{border-bottom:1px solid #ebeef5;border-right:1px solid #ebeef5;vertical-align:top;-webkit-transition:background-color .2s ease;transition:background-color .2s ease}.el-calendar-table td.is-selected{background-color:#f2f8fe}.el-calendar-table tr:first-child td{border-top:1px solid #ebeef5}.el-calendar-table tr td:first-child{border-left:1px solid #ebeef5}.el-calendar-table tr.el-calendar-table__row--hide-border td{border-top:none}.el-calendar-table .el-calendar-day{-webkit-box-sizing:border-box;box-sizing:border-box;padding:8px;height:85px}.el-calendar-table .el-calendar-day:hover{cursor:pointer;background-color:#f2f8fe}.el-backtop{position:fixed;background-color:#fff;width:40px;height:40px;border-radius:50%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:20px;-webkit-box-shadow:0 0 6px rgba(0,0,0,.12);box-shadow:0 0 6px rgba(0,0,0,.12);cursor:pointer;z-index:5}.el-backtop:hover{background-color:#f2f6fc}.el-page-header{line-height:24px}.el-page-header,.el-page-header__left{display:-webkit-box;display:-ms-flexbox;display:flex}.el-page-header__left{cursor:pointer;margin-right:40px;position:relative}.el-page-header__left:after{content:"";position:absolute;width:1px;height:16px;right:-20px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);background-color:#dcdfe6}.el-checkbox,.el-checkbox__input{display:inline-block;position:relative;white-space:nowrap}.el-page-header__left .el-icon-back{font-size:18px;margin-right:6px;-ms-flex-item-align:center;align-self:center}.el-page-header__title{font-size:14px;font-weight:500}.el-page-header__content{font-size:18px;color:#303133}.el-checkbox{color:#606266;font-weight:500;font-size:14px;cursor:pointer;user-select:none;margin-right:30px}.el-checkbox,.el-checkbox-button__inner,.el-empty__image img,.el-radio{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.el-checkbox.is-bordered{padding:9px 20px 9px 10px;border-radius:4px;border:1px solid #dcdfe6;-webkit-box-sizing:border-box;box-sizing:border-box;line-height:normal;height:40px}.el-checkbox.is-bordered.is-checked{border-color:#409eff}.el-checkbox.is-bordered.is-disabled{border-color:#ebeef5;cursor:not-allowed}.el-checkbox.is-bordered+.el-checkbox.is-bordered{margin-left:10px}.el-checkbox.is-bordered.el-checkbox--medium{padding:7px 20px 7px 10px;border-radius:4px;height:36px}.el-checkbox.is-bordered.el-checkbox--medium .el-checkbox__label{line-height:17px;font-size:14px}.el-checkbox.is-bordered.el-checkbox--medium .el-checkbox__inner{height:14px;width:14px}.el-checkbox.is-bordered.el-checkbox--small{padding:5px 15px 5px 10px;border-radius:3px;height:32px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{line-height:15px;font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{height:12px;width:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox.is-bordered.el-checkbox--mini{padding:3px 15px 3px 10px;border-radius:3px;height:28px}.el-checkbox.is-bordered.el-checkbox--mini .el-checkbox__label{line-height:12px;font-size:12px}.el-checkbox.is-bordered.el-checkbox--mini .el-checkbox__inner{height:12px;width:12px}.el-checkbox.is-bordered.el-checkbox--mini .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox__input{cursor:pointer;outline:0;line-height:1;vertical-align:middle}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:#edf2fc;border-color:#dcdfe6;cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{cursor:not-allowed;border-color:#c0c4cc}.el-checkbox__input.is-disabled .el-checkbox__inner+.el-checkbox__label{cursor:not-allowed}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:#f2f6fc;border-color:#dcdfe6}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:#c0c4cc}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:#f2f6fc;border-color:#dcdfe6}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:#c0c4cc;border-color:#c0c4cc}.el-checkbox__input.is-checked .el-checkbox__inner,.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:#409eff;border-color:#409eff}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:#c0c4cc;cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner:after{-webkit-transform:rotate(45deg) scaleY(1);transform:rotate(45deg) scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:#409eff}.el-checkbox__input.is-focus .el-checkbox__inner{border-color:#409eff}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{content:"";position:absolute;display:block;background-color:#fff;height:2px;-webkit-transform:scale(.5);transform:scale(.5);left:0;right:0;top:5px}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{display:inline-block;position:relative;border:1px solid #dcdfe6;border-radius:2px;-webkit-box-sizing:border-box;box-sizing:border-box;width:14px;height:14px;background-color:#fff;z-index:1;-webkit-transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46);transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.el-checkbox__inner:hover{border-color:#409eff}.el-checkbox__inner:after{-webkit-box-sizing:content-box;box-sizing:content-box;content:"";border:1px solid #fff;border-left:0;border-top:0;height:7px;left:4px;position:absolute;top:1px;-webkit-transform:rotate(45deg) scaleY(0);transform:rotate(45deg) scaleY(0);width:3px;-webkit-transition:-webkit-transform .15s ease-in .05s;transition:-webkit-transform .15s ease-in .05s;transition:transform .15s ease-in .05s;transition:transform .15s ease-in .05s,-webkit-transform .15s ease-in .05s;-webkit-transform-origin:center;transform-origin:center}.el-checkbox__original{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.el-checkbox-button,.el-checkbox-button__inner{display:inline-block;position:relative}.el-checkbox__label{display:inline-block;padding-left:10px;line-height:19px;font-size:14px}.el-checkbox:last-of-type{margin-right:0}.el-checkbox-button__inner{line-height:1;font-weight:500;white-space:nowrap;vertical-align:middle;cursor:pointer;background:#fff;border:1px solid #dcdfe6;border-left:0;color:#606266;-webkit-appearance:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;margin:0;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);padding:12px 20px;font-size:14px;border-radius:0}.el-checkbox-button__inner.is-round{padding:12px 20px}.el-checkbox-button__inner:hover{color:#409eff}.el-checkbox-button__inner [class*=el-icon-]{line-height:.9}.el-radio,.el-radio__input{line-height:1;white-space:nowrap;outline:0}.el-checkbox-button__inner [class*=el-icon-]+span{margin-left:5px}.el-checkbox-button__original{opacity:0;outline:0;position:absolute;margin:0;z-index:-1}.el-radio,.el-radio__inner,.el-radio__input{position:relative;display:inline-block}.el-checkbox-button.is-checked .el-checkbox-button__inner{color:#fff;background-color:#409eff;border-color:#409eff;-webkit-box-shadow:-1px 0 0 0 #8cc5ff;box-shadow:-1px 0 0 0 #8cc5ff}.el-checkbox-button.is-checked:first-child .el-checkbox-button__inner{border-left-color:#409eff}.el-checkbox-button.is-disabled .el-checkbox-button__inner{color:#c0c4cc;cursor:not-allowed;background-image:none;background-color:#fff;border-color:#ebeef5;-webkit-box-shadow:none;box-shadow:none}.el-checkbox-button.is-disabled:first-child .el-checkbox-button__inner{border-left-color:#ebeef5}.el-checkbox-button:first-child .el-checkbox-button__inner{border-left:1px solid #dcdfe6;border-radius:4px 0 0 4px;-webkit-box-shadow:none!important;box-shadow:none!important}.el-checkbox-button.is-focus .el-checkbox-button__inner{border-color:#409eff}.el-checkbox-button:last-child .el-checkbox-button__inner{border-radius:0 4px 4px 0}.el-checkbox-button--medium .el-checkbox-button__inner{padding:10px 20px;font-size:14px;border-radius:0}.el-checkbox-button--medium .el-checkbox-button__inner.is-round{padding:10px 20px}.el-checkbox-button--small .el-checkbox-button__inner{padding:9px 15px;font-size:12px;border-radius:0}.el-checkbox-button--small .el-checkbox-button__inner.is-round{padding:9px 15px}.el-checkbox-button--mini .el-checkbox-button__inner{padding:7px 15px;font-size:12px;border-radius:0}.el-checkbox-button--mini .el-checkbox-button__inner.is-round{padding:7px 15px}.el-checkbox-group{font-size:0}.el-radio,.el-radio--medium.is-bordered .el-radio__label{font-size:14px}.el-radio{color:#606266;font-weight:500;cursor:pointer;margin-right:30px}.el-cascader-node>.el-radio,.el-radio:last-child{margin-right:0}.el-radio.is-bordered{padding:12px 20px 0 10px;border-radius:4px;border:1px solid #dcdfe6;-webkit-box-sizing:border-box;box-sizing:border-box;height:40px}.el-radio.is-bordered.is-checked{border-color:#409eff}.el-radio.is-bordered.is-disabled{cursor:not-allowed;border-color:#ebeef5}.el-radio__input.is-disabled .el-radio__inner,.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:#f5f7fa;border-color:#e4e7ed}.el-radio.is-bordered+.el-radio.is-bordered{margin-left:10px}.el-radio--medium.is-bordered{padding:10px 20px 0 10px;border-radius:4px;height:36px}.el-radio--mini.is-bordered .el-radio__label,.el-radio--small.is-bordered .el-radio__label{font-size:12px}.el-radio--medium.is-bordered .el-radio__inner{height:14px;width:14px}.el-radio--small.is-bordered{padding:8px 15px 0 10px;border-radius:3px;height:32px}.el-radio--small.is-bordered .el-radio__inner{height:12px;width:12px}.el-radio--mini.is-bordered{padding:6px 15px 0 10px;border-radius:3px;height:28px}.el-radio--mini.is-bordered .el-radio__inner{height:12px;width:12px}.el-radio__input{cursor:pointer;vertical-align:middle}.el-radio__input.is-disabled .el-radio__inner{cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner:after{cursor:not-allowed;background-color:#f5f7fa}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:#c0c4cc}.el-radio__input.is-disabled+span.el-radio__label{color:#c0c4cc;cursor:not-allowed}.el-radio__input.is-checked .el-radio__inner{border-color:#409eff;background:#409eff}.el-radio__input.is-checked .el-radio__inner:after{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1)}.el-radio__input.is-checked+.el-radio__label{color:#409eff}.el-radio__input.is-focus .el-radio__inner{border-color:#409eff}.el-radio__inner{border:1px solid #dcdfe6;border-radius:100%;width:14px;height:14px;background-color:#fff;cursor:pointer;-webkit-box-sizing:border-box;box-sizing:border-box}.el-radio__inner:hover{border-color:#409eff}.el-radio__inner:after{width:4px;height:4px;border-radius:100%;background-color:#fff;content:"";position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);-webkit-transition:-webkit-transform .15s ease-in;transition:-webkit-transform .15s ease-in;transition:transform .15s ease-in;transition:transform .15s ease-in,-webkit-transform .15s ease-in}.el-radio__original{opacity:0;outline:0;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.el-radio:focus:not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner{-webkit-box-shadow:0 0 2px 2px #409eff;box-shadow:0 0 2px 2px #409eff}.el-radio__label{font-size:14px;padding-left:10px}.el-scrollbar{overflow:hidden;position:relative}.el-scrollbar:active>.el-scrollbar__bar,.el-scrollbar:focus>.el-scrollbar__bar,.el-scrollbar:hover>.el-scrollbar__bar{opacity:1;-webkit-transition:opacity .34s ease-out;transition:opacity .34s ease-out}.el-scrollbar__wrap{overflow:scroll;height:100%}.el-scrollbar__wrap--hidden-default{scrollbar-width:none}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{width:0;height:0}.el-scrollbar__thumb{position:relative;display:block;width:0;height:0;cursor:pointer;border-radius:inherit;background-color:rgba(144,147,153,.3);-webkit-transition:background-color .3s;transition:background-color .3s}.el-scrollbar__thumb:hover{background-color:rgba(144,147,153,.5)}.el-scrollbar__bar{position:absolute;right:2px;bottom:2px;z-index:1;border-radius:4px;opacity:0;-webkit-transition:opacity .12s ease-out;transition:opacity .12s ease-out}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-cascader-panel{display:-webkit-box;display:-ms-flexbox;display:flex;border-radius:4px;font-size:14px}.el-cascader-panel.is-bordered{border:1px solid #e4e7ed;border-radius:4px}.el-cascader-menu{min-width:180px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#606266;border-right:1px solid #e4e7ed}.el-cascader-menu:last-child{border-right:none}.el-cascader-menu:last-child .el-cascader-node{padding-right:20px}.el-cascader-menu__wrap{height:204px}.el-cascader-menu__list{position:relative;min-height:100%;margin:0;padding:6px 0;list-style:none;-webkit-box-sizing:border-box;box-sizing:border-box}.el-avatar,.el-drawer{-webkit-box-sizing:border-box;overflow:hidden}.el-cascader-menu__hover-zone{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.el-cascader-menu__empty-text{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);text-align:center;color:#c0c4cc}.el-cascader-node{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 30px 0 20px;height:34px;line-height:34px;outline:0}.el-cascader-node.is-selectable.in-active-path{color:#606266}.el-cascader-node.in-active-path,.el-cascader-node.is-active,.el-cascader-node.is-selectable.in-checked-path{color:#409eff;font-weight:700}.el-cascader-node:not(.is-disabled){cursor:pointer}.el-cascader-node:not(.is-disabled):focus,.el-cascader-node:not(.is-disabled):hover{background:#f5f7fa}.el-cascader-node.is-disabled{color:#c0c4cc;cursor:not-allowed}.el-cascader-node__prefix{position:absolute;left:10px}.el-cascader-node__postfix{position:absolute;right:10px}.el-cascader-node__label{-webkit-box-flex:1;-ms-flex:1;flex:1;padding:0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.el-cascader-node>.el-radio .el-radio__label{padding-left:0}.el-avatar{display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;text-align:center;color:#fff;background:#c0c4cc;width:40px;height:40px;line-height:40px;font-size:14px}.el-avatar>img{display:block;height:100%;vertical-align:middle}.el-drawer,.el-drawer__header{display:-webkit-box;display:-ms-flexbox}.el-empty__image img,.el-empty__image svg{vertical-align:top;height:100%;width:100%}.el-avatar--circle{border-radius:50%}.el-avatar--square{border-radius:4px}.el-avatar--icon{font-size:18px}.el-avatar--large{width:40px;height:40px;line-height:40px}.el-avatar--medium{width:36px;height:36px;line-height:36px}.el-avatar--small{width:28px;height:28px;line-height:28px}.el-drawer.ltr,.el-drawer.rtl,.el-drawer__container{top:0;bottom:0;height:100%}@-webkit-keyframes el-drawer-fade-in{0%{opacity:0}to{opacity:1}}@keyframes el-drawer-fade-in{0%{opacity:0}to{opacity:1}}@-webkit-keyframes rtl-drawer-in{0%{-webkit-transform:translate(100%);transform:translate(100%)}to{-webkit-transform:translate(0);transform:translate(0)}}@keyframes rtl-drawer-in{0%{-webkit-transform:translate(100%);transform:translate(100%)}to{-webkit-transform:translate(0);transform:translate(0)}}@-webkit-keyframes rtl-drawer-out{0%{-webkit-transform:translate(0);transform:translate(0)}to{-webkit-transform:translate(100%);transform:translate(100%)}}@keyframes rtl-drawer-out{0%{-webkit-transform:translate(0);transform:translate(0)}to{-webkit-transform:translate(100%);transform:translate(100%)}}@-webkit-keyframes ltr-drawer-in{0%{-webkit-transform:translate(-100%);transform:translate(-100%)}to{-webkit-transform:translate(0);transform:translate(0)}}@keyframes ltr-drawer-in{0%{-webkit-transform:translate(-100%);transform:translate(-100%)}to{-webkit-transform:translate(0);transform:translate(0)}}@-webkit-keyframes ltr-drawer-out{0%{-webkit-transform:translate(0);transform:translate(0)}to{-webkit-transform:translate(-100%);transform:translate(-100%)}}@keyframes ltr-drawer-out{0%{-webkit-transform:translate(0);transform:translate(0)}to{-webkit-transform:translate(-100%);transform:translate(-100%)}}@-webkit-keyframes ttb-drawer-in{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}to{-webkit-transform:translate(0);transform:translate(0)}}@keyframes ttb-drawer-in{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}to{-webkit-transform:translate(0);transform:translate(0)}}@-webkit-keyframes ttb-drawer-out{0%{-webkit-transform:translate(0);transform:translate(0)}to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@keyframes ttb-drawer-out{0%{-webkit-transform:translate(0);transform:translate(0)}to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@-webkit-keyframes btt-drawer-in{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translate(0);transform:translate(0)}}@keyframes btt-drawer-in{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translate(0);transform:translate(0)}}@-webkit-keyframes btt-drawer-out{0%{-webkit-transform:translate(0);transform:translate(0)}to{-webkit-transform:translateY(100%);transform:translateY(100%)}}@keyframes btt-drawer-out{0%{-webkit-transform:translate(0);transform:translate(0)}to{-webkit-transform:translateY(100%);transform:translateY(100%)}}.el-drawer{position:absolute;box-sizing:border-box;background-color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12);box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12);outline:0}.el-drawer,.el-drawer__body>*,.el-empty{-webkit-box-sizing:border-box}.el-drawer.rtl{-webkit-animation:rtl-drawer-out .3s;animation:rtl-drawer-out .3s;right:0}.el-drawer__open .el-drawer.rtl{-webkit-animation:rtl-drawer-in .3s 1ms;animation:rtl-drawer-in .3s 1ms}.el-drawer.ltr{-webkit-animation:ltr-drawer-out .3s;animation:ltr-drawer-out .3s;left:0}.el-drawer__open .el-drawer.ltr{-webkit-animation:ltr-drawer-in .3s 1ms;animation:ltr-drawer-in .3s 1ms}.el-drawer.ttb{-webkit-animation:ttb-drawer-out .3s;animation:ttb-drawer-out .3s;top:0}.el-drawer__open .el-drawer.ttb{-webkit-animation:ttb-drawer-in .3s 1ms;animation:ttb-drawer-in .3s 1ms}.el-drawer.btt{-webkit-animation:btt-drawer-out .3s;animation:btt-drawer-out .3s;bottom:0}.el-drawer__open .el-drawer.btt{-webkit-animation:btt-drawer-in .3s 1ms;animation:btt-drawer-in .3s 1ms}.el-drawer__wrapper{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;margin:0}.el-drawer__header{-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#72767b;display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:32px;padding:20px 20px 0}.el-drawer__header>:first-child,.el-drawer__title{-webkit-box-flex:1;-ms-flex:1;flex:1}.el-drawer__title{margin:0;line-height:inherit;font-size:1rem}.el-drawer__close-btn{border:none;cursor:pointer;font-size:20px;color:inherit;background-color:transparent}.el-drawer__body{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:auto}.el-drawer__body>*{-webkit-box-sizing:border-box;box-sizing:border-box}.el-drawer.btt,.el-drawer.ttb,.el-drawer__container{width:100%;left:0;right:0}.el-drawer__container{position:relative}.el-drawer-fade-enter-active{-webkit-animation:el-drawer-fade-in .3s;animation:el-drawer-fade-in .3s}.el-drawer-fade-leave-active{animation:el-drawer-fade-in .3s reverse}.el-popconfirm__main{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-popconfirm__icon{margin-right:5px}.el-popconfirm__action{text-align:right;margin:0}@-webkit-keyframes el-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}@keyframes el-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.el-skeleton{width:100%}.el-skeleton__first-line,.el-skeleton__paragraph{height:16px;margin-top:16px;background:#f2f2f2}.el-skeleton.is-animated .el-skeleton__item{background:-webkit-gradient(linear,left top,right top,color-stop(25%,#f2f2f2),color-stop(37%,#e6e6e6),color-stop(63%,#f2f2f2));background:linear-gradient(90deg,#f2f2f2 25%,#e6e6e6 37%,#f2f2f2 63%);background-size:400% 100%;-webkit-animation:el-skeleton-loading 1.4s ease infinite;animation:el-skeleton-loading 1.4s ease infinite}.el-skeleton__item{background:#f2f2f2;display:inline-block;height:16px;border-radius:4px;width:100%}.el-empty,.el-skeleton__image{display:-webkit-box;display:-ms-flexbox}.el-skeleton__circle{border-radius:50%;width:36px;height:36px;line-height:36px}.el-skeleton__circle--lg{width:40px;height:40px;line-height:40px}.el-skeleton__circle--md{width:28px;height:28px;line-height:28px}.el-skeleton__button{height:40px;width:64px;border-radius:4px}.el-skeleton__p{width:100%}.el-skeleton__p.is-last{width:61%}.el-skeleton__p.is-first{width:33%}.el-skeleton__text{width:100%;height:13px}.el-skeleton__caption{height:12px}.el-skeleton__h1{height:20px}.el-skeleton__h3{height:18px}.el-skeleton__h5{height:16px}.el-skeleton__image{width:unset;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:0}.el-skeleton__image svg{fill:#dcdde0;width:22%;height:22%}.el-empty{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;padding:40px 0}.el-empty__image{width:160px}.el-empty__image img{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-o-object-fit:contain;object-fit:contain}.el-empty__image svg{fill:#dcdde0}.el-empty__description{margin-top:20px}.el-empty__description p{margin:0;font-size:14px;color:#909399}.el-empty__bottom,.el-result__title{margin-top:20px}.el-descriptions{-webkit-box-sizing:border-box;box-sizing:border-box;font-size:14px;color:#303133}.el-descriptions__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:20px}.el-descriptions__title{font-size:16px;font-weight:700}.el-descriptions--mini,.el-descriptions--small{font-size:12px}.el-descriptions__body{color:#606266;background-color:#fff}.el-descriptions__body .el-descriptions__table{border-collapse:collapse;width:100%;table-layout:fixed}.el-descriptions__body .el-descriptions__table .el-descriptions-item__cell{-webkit-box-sizing:border-box;box-sizing:border-box;text-align:left;font-weight:400;line-height:1.5}.el-descriptions__body .el-descriptions__table .el-descriptions-item__cell.is-left{text-align:left}.el-descriptions__body .el-descriptions__table .el-descriptions-item__cell.is-center{text-align:center}.el-descriptions__body .el-descriptions__table .el-descriptions-item__cell.is-right{text-align:right}.el-descriptions .is-bordered{table-layout:auto}.el-descriptions .is-bordered .el-descriptions-item__cell{border:1px solid #ebeef5;padding:12px 10px}.el-descriptions :not(.is-bordered) .el-descriptions-item__cell{padding-bottom:12px}.el-descriptions--medium.is-bordered .el-descriptions-item__cell{padding:10px}.el-descriptions--medium:not(.is-bordered) .el-descriptions-item__cell{padding-bottom:10px}.el-descriptions--small.is-bordered .el-descriptions-item__cell{padding:8px 10px}.el-descriptions--small:not(.is-bordered) .el-descriptions-item__cell{padding-bottom:8px}.el-descriptions--mini.is-bordered .el-descriptions-item__cell{padding:6px 10px}.el-descriptions--mini:not(.is-bordered) .el-descriptions-item__cell{padding-bottom:6px}.el-descriptions-item__container{display:-webkit-box;display:-ms-flexbox;display:flex}.el-descriptions-item__label.has-colon:after{content:":";position:relative;top:-.5px}.el-descriptions-item__label.is-bordered-label{font-weight:700;color:#909399;background:#fafafa}.el-descriptions-item__label:not(.is-bordered-label){margin-right:10px}.el-result{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;padding:40px 30px}.el-result__icon svg{width:64px;height:64px}.el-result__title p{margin:0;font-size:20px;color:#303133;line-height:1.3}.el-result__subtitle{margin-top:10px}.el-result__subtitle p{margin:0;font-size:14px;color:#606266;line-height:1.3}.el-result__extra{margin-top:30px}.el-result .icon-success{fill:#67c23a}.el-result .icon-error{fill:#f56c6c}.el-result .icon-info{fill:#909399}.el-result .icon-warning{fill:#e6a23c} -/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:inherit;font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}[hidden],template{display:none}.echarts{width:600px;height:400px}.avue-article__body,.avue-comment__body{font-family:Segoe UI,Lucida Grande,Helvetica,Arial,Microsoft YaHei,FreeSans,Arimo,Droid Sans,wenquanyi micro hei,Hiragino Sans GB,Hiragino Sans GB W3,FontAwesome,sans-serif}.avue-avatar,.avue-card__item{font-variant:tabular-nums;list-style:none}.avue-affix{position:fixed;z-index:10}.avue-sign{padding:5px}.avue-sign__canvas{border:1px solid #ccc}.avue-carousel--fullscreen{height:100%}.avue-carousel--fullscreen .el-carousel,.avue-carousel--fullscreen .el-carousel__container{height:90%}.avue-carousel__item{position:relative;width:100%;height:100%}.avue-carousel__item a{width:100%;height:100%;display:block}.avue-carousel__img{height:100%;background-size:cover;background-position:50%}.avue-carousel__title{z-index:1024;position:absolute;left:0;bottom:0;width:100%;height:50px;line-height:50px;font-size:16px;text-align:center;color:#fff;background-color:rgba(0,0,0,.6)}.avue-article__title{margin-bottom:15px;font-size:32px;line-height:32px;font-weight:400}.avue-article__meta{display:block;margin-bottom:20px;font-size:12px;color:#999}.avue-article__lead{color:#666;font-size:14px;line-height:22px;border:1px solid #dedede;border-radius:2px;background:#f9f9f9;padding:10px}.avue-article__body{padding-top:10px;background:#fff;color:#333;font-size:14px}.avue-article blockquote{margin:0;font-family:Georgia,Times New Roman,Times,Kai,Kaiti SC,KaiTi,BiauKai,FontAwesome,serif;padding:1px 0 1px 15px;border-left:4px solid #ddd}.avue-avatar{font-size:14px;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;display:inline-block;text-align:center;background:#ccc;color:#fff;white-space:nowrap;position:relative;overflow:hidden;vertical-align:middle;width:32px;height:32px;line-height:32px;border-radius:50%}.avue-avatar__images{width:100%;height:100%}.avue-avatar__icon{font-size:18px}.avue-avatar__string{position:absolute;left:50%;-webkit-transform-origin:0 center;transform-origin:0 center}.avue-avatar--lg{width:40px;height:40px;line-height:40px;border-radius:50%;font-size:24px}.avue-avatar--sm{width:24px;height:24px;line-height:24px;border-radius:50%;font-size:14px}.avue-avatar--square{border-radius:4px}.avue-skeleton__avatar{width:40px;height:40px;line-height:40px;display:inline-block;border-radius:50%;background:#f2f2f2}.avue-skeleton__header{display:table-cell;vertical-align:top;padding-right:16px}.avue-skeleton__content{display:table-cell;vertical-align:top;width:100%}.avue-skeleton__title{margin-top:16px;height:16px;width:40%;background:#f2f2f2}.avue-skeleton__item{padding-top:16px;padding-bottom:16px;border-bottom:1px solid #e8e8e8}.avue-skeleton__item:last-child{border-bottom:none}.avue-skeleton__li{margin-bottom:10px;height:16px;background:#f2f2f2;list-style:none;width:100%}.avue-skeleton__li:last-child{width:50%}.avue-skeleton__loading{background:-webkit-gradient(linear,left top,right top,color-stop(25%,#f2f2f2),color-stop(37%,#e6e6e6),color-stop(63%,#f2f2f2));background:linear-gradient(90deg,#f2f2f2 25%,#e6e6e6 37%,#f2f2f2 63%);-webkit-animation:avue-skeleton-loading 1.4s ease infinite;animation:avue-skeleton-loading 1.4s ease infinite;background-size:400% 100%}@-webkit-keyframes avue-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}@keyframes avue-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.avue-crud{margin:0 auto;width:100%}.avue-crud .el-card+.el-card{margin-top:8px}.avue-crud--card .el-card{border:none}.avue-crud--card .el-card__body{padding:0}.avue-crud--card .el-card+.el-card{margin-top:0}.avue-crud .el-table .el-form-item{margin-bottom:0;display:inline-block;width:100%}.avue-crud .el-table .el-form-item__label{position:absolute;left:2px}.avue-crud .el-table .el-form-item__content{line-height:inherit;font-size:inherit}.avue-crud .el-table .el-form-item__error{width:100%;text-align:left;position:relative}.avue-crud .el-dropdown+.el-button{margin-left:10px}.avue-crud .el-checkbox:last-of-type{margin-right:0}.avue-crud .el-range-editor--mini{height:28px}.avue-crud__img{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-crud__img img,.avue-crud__img video{height:40px;margin-left:5px;-o-object-fit:contain;object-fit:contain}.avue-crud__column .el-checkbox{margin-bottom:10px;cursor:move}.avue-crud__menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;position:relative;width:100%;min-height:40px;height:auto;overflow:hidden;margin-bottom:5px;background-color:#fff}.avue-crud__search .el-form-item--medium.el-form-item{margin-bottom:22px}.avue-crud__search .el-form-item--mini.el-form-item,.avue-crud__search .el-form-item--small.el-form-item{margin-bottom:14px}.avue-crud .el-table--mini .avue-crud__color{width:20px;height:20px}.avue-crud .el-table--mini .avue-crud__icon{font-size:20px}.avue-crud .el-table--small .avue-crud__color{width:30px;height:30px}.avue-crud .el-table--small .avue-crud__icon{font-size:30px}.avue-crud th{word-break:break-word;color:rgba(0,0,0,.85);background-color:#fafafa}.avue-crud table td{line-height:26px}.avue-crud--indeterminate .is-indeterminate .el-checkbox__inner{background-color:#fff;border-color:#dcdfe6}.avue-crud .el-table th{word-break:break-word;color:rgba(0,0,0,.85);background-color:#fafafa}.avue-crud__color{margin:0 auto;width:40px;height:40px;border-radius:5px;display:block}.avue-crud__icon{font-size:45px}.avue-crud__icon--small{font-size:20px;width:20px;height:20px}.avue-crud__ghost{cursor:move;opacity:.4}.avue-crud__pagination{position:relative;padding:25px 0 20px 20px;text-align:right}.avue-crud__pagination .el-pagination{display:inline-block}.avue-crud__tip,.avue-crud__title{display:-ms-flexbox;-webkit-box-align:center}.avue-crud__form{padding:0 8px}.avue-crud__empty{padding:60px 0}.avue-crud__header{margin-bottom:10px}.avue-crud__header>.el-button{padding:12px 25px}.avue-crud__title{font-weight:700;margin-bottom:20px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:22px}.avue-crud__tip,.avue-crud__title{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center}.avue-crud__tip{margin:0 0 8px;font-size:12px}.avue-crud__tip-name{margin-right:10px}.avue-crud__tip-count{font-size:16px;font-weight:600}.avue-crud__tip .el-button{margin-bottom:0}.avue-crud__filter-item{margin-bottom:12px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-crud__filter-menu{padding:0 5px;margin-bottom:20px}.avue-crud__filter-label{margin:0 5px;width:120px!important}.avue-crud__filter-symbol{margin:0 5px;width:80px!important}.avue-crud__filter-value{margin:0 5px;width:150px!important}.avue-crud__filter-value .el-date-editor.el-input,.avue-crud__filter-value .el-date-editor.el-input__inner{width:100%}.avue-crud__filter-icon{margin-left:10px}.avue-crud__dialog__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.avue-crud__dialog__menu{padding-right:20px}.avue-crud__dialog__menu i{color:#909399;font-size:15px}.avue-crud__dialog__menu i:hover{color:#409eff}.avue-crud__dialog .el-dialog__body{padding:20px 20px 5px 10px}.avue-crud__dialog .el-scrollbar__wrap{overflow-x:hidden}.avue-crud__dialog .avue-form__menu{padding-top:15px}.avue-card__item{margin-bottom:16px;border:1px solid #e8e8e8;background-color:#fff;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0,0,0,.65);font-size:14px;line-height:1.5;-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";cursor:pointer;height:200px}.avue-card__item:hover{border-color:rgba(0,0,0,.09);-webkit-box-shadow:0 2px 8px rgba(0,0,0,.09);box-shadow:0 2px 8px rgba(0,0,0,.09)}.avue-chat,.avue-data-pay .item{-webkit-box-shadow:1px 2px 10px #eee}.avue-card__item--add{border:1px dashed #d9d9d9;width:100%;color:rgba(0,0,0,.45);background-color:#fff;border-radius:2px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:16px}.avue-card__item--add i{margin-right:10px}.avue-card__item--add:hover{color:#40a9ff;background-color:#fff;border-color:#40a9ff}.avue-card__body{display:-webkit-box;display:-ms-flexbox;display:flex;padding:24px}.avue-card__detail{-webkit-box-flex:1;-ms-flex:1;flex:1}.avue-card__avatar{width:48px;height:48px;border-radius:48px;overflow:hidden;margin-right:12px}.avue-card__avatar img{width:100%;height:100%}.avue-card__title{color:rgba(0,0,0,.85);margin-bottom:12px;font-size:16px}.avue-card__title:hover{color:#1890ff}.avue-card__info,.avue-card__menu{display:-webkit-box;color:rgba(0,0,0,.45)}.avue-card__info{-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;height:64px}.avue-card__menu{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-pack:distribute;justify-content:space-around;height:50px;background:#f7f9fa;text-align:center;line-height:50px}.avue-card__menu:hover{color:#1890ff}.avue-comment{margin-bottom:30px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.avue-comment--reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.avue-comment--reverse .avue-comment__main:after,.avue-comment--reverse .avue-comment__main:before{left:auto;right:-8px;border-width:8px 0 8px 8px}.avue-comment--reverse .avue-comment__main:before{border-left-color:#dedede}.avue-comment--reverse .avue-comment__main:after{border-left-color:#f8f8f8;margin-right:1px;margin-left:auto}.avue-comment__avatar{width:48px;height:48px;border-radius:50%;border:1px solid transparent;-webkit-box-sizing:border-box;box-sizing:border-box;vertical-align:middle}.avue-comment__header{padding:5px 15px;background:#f8f8f8;border-bottom:1px solid #eee;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.avue-comment__author{font-weight:700;font-size:14px;color:#999}.avue-comment__main{-webkit-box-flex:1;-ms-flex:1;flex:1;margin:0 20px;position:relative;border:1px solid #dedede;border-radius:2px}.avue-comment__main:after,.avue-comment__main:before{position:absolute;top:10px;left:-8px;right:100%;width:0;height:0;display:block;content:" ";border-color:transparent;border-style:solid solid outset;border-width:8px 8px 8px 0;pointer-events:none}.avue-comment__main:before{border-right-color:#dedede;z-index:1}.avue-comment__main:after{border-right-color:#f8f8f8;margin-left:1px;z-index:2}.avue-comment__body{padding:15px;overflow:hidden;background:#fff;color:#333;font-size:14px}.avue-comment blockquote{margin:0;font-family:Georgia,Times New Roman,Times,Kai,Kaiti SC,KaiTi,BiauKai,FontAwesome,serif;padding:1px 0 1px 15px;border-left:4px solid #ddd}.avue-chat{-webkit-box-shadow:1px 2px 10px #eee;box-shadow:1px 2px 10px #eee;position:relative;background-color:#fcfcfc}.avue-chat li,.avue-chat ul{padding:0;margin:0}.avue-chat li{list-style:none;cursor:pointer}.avue-chat .web__content{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.avue-chat .web__main{height:calc(100% - 200px);padding:15px 15px 20px;overflow-x:hidden;overflow-y:auto;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-chat .web__logo{background-color:#409eff;display:-webkit-box;display:-ms-flexbox;display:flex;padding:15px 12px;margin:0 auto;vertical-align:middle}.avue-chat .web__logo-img{margin-top:3px;width:35px;height:35px;border-radius:100%;-webkit-box-shadow:0 3px 3px 0 rgba(0,0,0,.1);box-shadow:0 3px 3px 0 rgba(0,0,0,.1)}.avue-chat .web__logo-info{margin-left:10px}.avue-chat .web__logo-name{position:relative;margin-top:5px;font-size:13px}.avue-chat .web__logo-dept{margin-top:1px;font-size:12px}.avue-chat .web__logo-dept,.avue-chat .web__logo-name{color:#fff;margin:0;padding:0;width:175px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.avue-chat .web__main-item{position:relative;font-size:0;margin-bottom:10px;padding-left:60px;min-height:68px}.avue-chat .web__main-text,.avue-chat .web__main-user{display:inline-block;vertical-align:top;font-size:14px}.avue-chat .web__main-user{position:absolute;left:3px}.avue-chat .web__main-user img{width:40px;height:40px;border-radius:100%}.avue-chat .web__main-user cite{position:absolute;left:60px;top:-2px;width:500px;line-height:24px;font-size:12px;white-space:nowrap;color:#999;text-align:left;font-style:normal}.avue-chat .web__main-user cite i{padding-left:15px;font-style:normal}.avue-chat .web__main-text{position:relative;line-height:22px;margin-top:25px;padding:8px 15px;background-color:#f3f3f3;border-radius:3px;border:1px solid #f0f0f0;color:#000;word-break:break-all}.avue-chat .web__main-arrow{top:6px;left:-8px;border-color:transparent #ebeef5 transparent transparent;border-width:8px 8px 8px 0}.avue-chat .web__main-arrow,.avue-chat .web__main-arrow:after{position:absolute;display:block;width:0;height:0;border-style:solid}.avue-chat .web__main-arrow:after{content:" ";top:-7px;left:1px;border-color:transparent #fff transparent transparent;border-width:7px 7px 7px 0}.avue-chat .web__main-item--mine .web__main-text .web__main-arrow{left:auto;right:-5px;border-color:transparent transparent transparent #409eff;border-style:solid;border-width:8px 0 8px 8px}.avue-chat .web__main-item--mine .web__main-text .web__main-arrow:after{left:auto;right:-2px;border-color:transparent transparent transparent #409eff;border-style:solid;border-width:7px 0 7px 7px}.avue-chat .web__main-list{margin:10px 0}.avue-chat .web__main-list li{height:30px;color:#409eff;line-height:30px}.avue-chat .web__main-item--mine{text-align:right;padding-left:0;padding-right:60px}.avue-chat .web__main-item--mine .web__main-user{left:auto;right:3px}.avue-chat .web__main-item--mine .web__main-user cite{left:auto;right:60px;text-align:right}.avue-chat .web__main-item--mine .web__main-user cite i{padding-left:0;padding-right:15px}.avue-chat .web__main-item--mine .web__main-text{margin-left:0;text-align:left;background-color:#409eff;color:#fff}.avue-chat .web__footer{-webkit-box-shadow:0 -1px 0 0 rgba(0,0,0,.04),0 -2px 0 0 rgba(0,0,0,.01);box-shadow:0 -1px 0 0 rgba(0,0,0,.04),0 -2px 0 0 rgba(0,0,0,.01);position:absolute;left:0;bottom:0;width:100%;background-color:#fff}.avue-chat .web__msg{padding:10px;height:auto;overflow:hidden}.avue-chat .web__msg--file,.avue-chat .web__msg--img,.avue-chat .web__msg--video{position:relative;max-width:250px;min-width:200px;width:100%;margin:10px 0;border:1px solid #eee;overflow:hidden;border-radius:5px;cursor:pointer;display:block}.avue-chat .web__msg--file span,.avue-image-preview__box,.avue-img--center{display:-webkit-box;display:-ms-flexbox;-webkit-box-align:center}.avue-chat .web__msg--file{height:140px;background-color:#fff}.avue-chat .web__msg--file span{-webkit-box-sizing:border-box;box-sizing:border-box;padding:3px 5px;color:#333;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;width:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:calc(100% - 80px);overflow:hidden;font-size:13px;text-align:center}.avue-chat .web__msg--file h2{margin:0;width:100%;text-align:center;line-height:80px;background-color:#409eff;color:#fff}.avue-chat .web__msg--map{height:160px}.avue-chat .web__msg-input{display:block;width:100%;height:60px;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;resize:none;outline:0;background-color:#fff;border:0;word-break:break-all;font-size:13px;line-height:17px;-webkit-appearance:none}.avue-chat .web__msg-input,.avue-chat .web__tools,.avue-form,.avue-form__menu{-webkit-box-sizing:border-box}.avue-chat .web__msg-submit{float:right;display:block;outline:0;cursor:pointer;text-align:center}.avue-chat .web__tools{padding:8px 10px 0;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-chat .web__tools i{margin-right:12px;font-size:20px;color:#888a91}.avue-chat .web__tools i:hover{color:#76b1f9}.avue-draggable{padding:10px;position:absolute;cursor:move;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.avue-draggable__focus{opacity:0;position:absolute!important;top:0;left:0;z-index:-1024}.avue-draggable__mask{width:100%;height:100%;border:0;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.avue-draggable--active{cursor:move;border:1px dashed #09f;background-color:rgba(115,170,229,.5)}.avue-draggable--move{opacity:.6;background-color:rgba(115,170,229,.5)}.avue-draggable--click{cursor:pointer}.avue-draggable__line--left{position:absolute;border-top:1px dashed #09f;width:10000px;height:0;top:0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.avue-draggable__line--top{position:absolute;border-left:1px dashed #09f;width:0;height:10000px;left:0;-webkit-transform:translateY(-100%);transform:translateY(-100%)}.avue-draggable__line--label{top:-5px;left:-8px;position:absolute;padding:5px;-webkit-transform:translate(-100%,-100%);transform:translate(-100%,-100%);color:#09f;font-size:18px;white-space:nowrap;cursor:move}.avue-draggable__menu,.avue-image-preview .el-image-viewer__close i,.avue-image-preview__file a{color:#fff}.avue-draggable__menu{position:absolute;top:0;left:0;background-color:#409eff;font-size:25px;z-index:9999;cursor:pointer}.avue-draggable__range{position:absolute;width:10px;height:10px;border-radius:100%;z-index:9999;background-color:#09f}.avue-draggable__range--left,.avue-draggable__range--right{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.avue-draggable__range--left:hover,.avue-draggable__range--right:hover{cursor:ew-resize}.avue-draggable__range--left{left:-6px}.avue-draggable__range--right{right:-6px}.avue-draggable__range--bottom,.avue-draggable__range--top{left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.avue-draggable__range--bottom:hover,.avue-draggable__range--top:hover{cursor:ns-resize}.avue-draggable__range--top{top:-6px}.avue-draggable__range--bottom{bottom:-6px}.avue-draggable__range--bottom-right:hover,.avue-draggable__range--top-left:hover{cursor:nwse-resize}.avue-draggable__range--bottom-left:hover,.avue-draggable__range--top-right:hover{cursor:nesw-resize}.avue-draggable__range--top-right{top:-6px;right:-6px}.avue-draggable__range--top-left{top:-6px;left:-6px}.avue-draggable__range--bottom-right{bottom:-6px;right:-6px}.avue-draggable__range--bottom-left{bottom:-6px;left:-6px}.avue-img--center{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-img--fullscreen .el-dialog__body{height:100%}.avue-image-preview{position:fixed;top:0;left:0;width:100%;height:100%;-webkit-transition:all .5s;transition:all .5s;z-index:9998}.avue-image-preview .el-image-viewer__btn{z-index:1024}.avue-image-preview img{-webkit-transition:all .5s;transition:all .5s;cursor:pointer}.avue-image-preview__file{text-align:center}.avue-image-preview__file i{font-size:80px}.avue-image-preview__mask{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5)}.avue-image-preview__box{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-image-preview__box .el-carousel{width:90%;height:100%}.avue-image-preview__box .el-carousel__container{height:100%}.avue-image-preview__box .el-carousel__item{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-input-tree .el-tag__close{display:none!important}.avue-input-tree__desc{float:right;color:#8492a6;font-size:13px}.avue-input-table__crud .avue-crud__pagination{padding:10px 0 2px 10px;margin:0}.amap-icon img,.amap-marker-content img{width:25px;height:34px}.avue-input-map__marker{position:absolute;top:-20px;right:-118px;color:#fff;padding:4px 10px;-webkit-box-shadow:1px 1px 1px rgba(10,10,10,.2);box-shadow:1px 1px 1px rgba(10,10,10,.2);white-space:nowrap;font-size:12px;background-color:#25a5f7;border-radius:3px}.avue-input-map__content-input{margin-bottom:10px}.avue-input-map__content-box{position:relative}.avue-input-map__content-container{width:100%;height:450px}.avue-input-map__content-result{display:block!important;position:absolute;top:0;right:-8px;width:250px;height:450px;overflow-y:auto}.avue-input-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:distribute;justify-content:space-around}.avue-input-icon__item{text-align:center;width:60px;padding:10px 20px 0;-webkit-transition:all .2s;transition:all .2s}.avue-input-icon__item p{font-size:12px;margin-top:5px}.avue-input-icon__item--active,.avue-input-icon__item:hover{-webkit-transform:scale(1.4);transform:scale(1.4)}.avue-input-icon__item--active{color:#409eff}.avue-input-icon__list{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.avue-input-icon__icon{font-size:32px!important}.avue-input-icon__icon-symbol{width:32px;height:32px;margin:0 auto;fill:currentColor;overflow:hidden}.avue-upload--upload .el-upload,.avue-upload--upload .el-upload__tip{display:none}.avue-upload--upload .el-upload--picture-img{display:inline-block}.avue-upload--upload .el-upload-list{margin-top:-6px}.avue-upload--list .el-upload{border:1px dashed #d9d9d9;border-radius:6px;cursor:pointer;position:relative;overflow:hidden}.avue-upload--list .el-upload:hover{border-color:#409eff}.avue-upload__dialog .el-dialog__header{display:none}.avue-upload__dialog .el-dialog__body{padding:10px}.avue-upload__dialog .el-dialog__body,.avue-upload__menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-upload__menu{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:1024}.avue-form,.avue-form__group .el-col{position:relative}.avue-upload__menu i{color:#fff;margin:0 8px;font-size:20px}.avue-upload__icon{font-size:28px;color:#8c939d;width:178px;height:178px;line-height:178px;text-align:center}.avue-upload__avatar{width:178px;height:178px;display:block}.avue-form{margin:0 auto;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-form__item--top{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.avue-form__item--top .el-form-item__label{width:100%!important;text-align:left!important}.avue-form__item--top .el-form-item__content{margin-left:0!important}.avue-form__item--left .el-form-item__label{text-align:left!important}.avue-empty,.avue-flow__node-body,.avue-form__menu--center{text-align:center}.avue-form__menu{padding:5px 10px 0;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-form__menu--center .el-button{margin:0 5px}.avue-form__menu--left{text-align:left}.avue-form__menu--right{text-align:right}.avue-form__tabs{padding:0 10px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-form__group{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-ms-flex-wrap:wrap;flex-wrap:wrap;height:auto}.avue-form__group--flex{display:-webkit-box;display:-ms-flexbox;display:flex}.avue-form__line{display:inline-block;height:100%}.avue-form__row--block{width:100%;display:block}.avue-flow__node,.avue-flow__node-body{display:-webkit-box;display:-ms-flexbox}.avue-form__row--cursor{cursor:pointer}.avue-form__option{position:absolute;right:0;top:-10px;z-index:999}.avue-flow,.avue-flow__node,.avue-tree{position:relative}.avue-form__option i{color:#666}.avue-form__option i+i{margin-left:10px}.el-drawer .avue-form{padding:0 20px}.avue-flow .avue-draggable{padding:0}.avue-flow__node{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:200px;height:80px;border-radius:5px;-webkit-box-shadow:"#66a6e0 0px 0px 12px 0px";box-shadow:"#66a6e0 0px 0px 12px 0px";border:1px solid #eee;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.avue-flow__node--active{border-width:2px;border-color:#f56c6c}.avue-flow__node-drag{margin:0 5px;display:inline-block}.avue-flow__node-header{-webkit-box-flex:1;-ms-flex:1;flex:1;background-color:#66a6e0}.avue-flow__node-body{-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-flex:1.5;-ms-flex:1.5;flex:1.5;background:#fff}.avue-date__group,.avue-flow__node-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center}.avue-date__group{-ms-flex-align:center}.avue-date__radio .el-radio-button:last-child .el-radio-button__inner{border-radius:0;border-right:0}.avue-date__date{width:300px}.avue-date__date .el-date-editor{border-top-left-radius:0;border-bottom-left-radius:0}.avue-empty{margin:0 8px;font-size:14px;line-height:22px}.avue-checkbox .el-checkbox+.el-checkbox,.avue-crud .avue-crud__left .el-button+.el-button,.avue-crud .avue-crud__right .el-button+.el-button,.avue-form .avue-crud__left .el-button+.el-button,.avue-form .avue-crud__right .el-button+.el-button,.avue-radio .el-radio+.el-radio{margin-left:0}.avue-checkbox .el-checkbox,.avue-radio .el-radio{margin-right:10px}.avue-empty__image{height:100px;margin-bottom:8px}.avue-empty__image img{height:100%;vertical-align:middle;border-style:none}.avue-empty__desc{color:rgba(0,0,0,.65)}.avue-select .sortable-ghost{opacity:.8;color:#fff!important;background:#409eff!important}.avue-select .el-tag{cursor:pointer}.avue-select__desc{float:right;color:#8492a6;font-size:13px}.el-select-dropdown .avue-select__check{-webkit-box-sizing:border-box;box-sizing:border-box;text-align:right;width:100%;padding:3px 20px 3px 0}.avue-group{width:100%}.avue-group .el-collapse,.avue-group .el-collapse-item__wrap{border-color:#fff}.avue-group .el-collapse-item__header{height:inherit;border:none;border-bottom:1px solid #eee;margin-bottom:20px}.avue-group .el-collapse-item__content,.avue-group .van-collapse-item__content{padding-bottom:0}.avue-group .van-collapse-item__content{padding:0 2px}.avue-group--arrow .el-collapse-item__arrow,.avue-group--arrow .van-icon-arrow,.avue-group .van-hairline--top-bottom:after,.avue-group .van-hairline-unset--top-bottom:after{display:none}.avue-group .van-collapse-item__title{padding:0 10px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.avue-group .van-collapse-item__title:after{left:0!important}.avue-group--none{margin:0!important;border:none!important}.avue-group--header .el-collapse-item__header,.avue-group--header .van-collapse-item__title{display:none}.avue-group--collapse .el-collapse-item__arrow,.avue-group--collapse .el-collapse-item__header{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.avue-group__header,.avue-tree__filter{display:-webkit-box;display:-ms-flexbox}.avue-group__item{margin-bottom:10px;background-color:#fff;border-bottom:1px solid #eee;border-radius:5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-group__item:last-child{border-bottom:none}.avue-group__header{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:50px;line-height:50px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-group__icon{margin-right:8px;font-size:20px;color:rgba(0,0,0,.85)}.avue-group__title{font-size:16px;font-weight:500;color:rgba(0,0,0,.85)}.avue-tree__menu{width:200px;position:fixed;z-index:1024;-ms-flex-wrap:wrap;flex-wrap:wrap;background-color:#fff}.avue-tree__item,.avue-video{position:relative;overflow:hidden}.avue-tree__dialog .el-dialog__body{padding:30px 20px 0}.avue-tree__item{height:34px;line-height:34px;outline:0;padding:0 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;color:#666}.avue-tree__item:hover{cursor:pointer;color:#409eff}.avue-tree__filter{margin-bottom:5px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.avue-tree__content{padding:5px 0;height:calc(100% - 32px)}.avue-title p{font-weight:700;font-size:18px;margin:5px 10px}.avue-search{padding:0 20px}.avue-search__item{padding:20px 0 10px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;border-bottom:1px dashed #e8e8e8}.avue-search__item:last-child{border-bottom:none}.avue-search__tags{padding:0 12px;margin-right:24px;margin-bottom:12px;font-size:14px;color:rgba(0,0,0,.65);cursor:pointer;white-space:nowrap;display:inline-block}.avue-search__tags:hover{color:#1890ff}.avue-search__tags--active{color:#fff;background-color:#1890ff;border-radius:5px}.avue-search__tags--active:hover{opacity:.85;color:#fff}.avue-search__title{margin:0;padding:0 20px;width:120px;font-size:14px;text-align:right;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-search__content{width:calc(100% - 190px);display:inline-block}.avue-search__content .el-tag{margin-right:10px;margin-bottom:10px}.avue-video{width:500px}.avue-video__border span{position:absolute;width:30px;height:30px;border-width:4px;color:#0073eb;border-style:solid}.avue-video__border span:first-child{left:15px;top:15px;border-right:0;border-bottom:0}.avue-video__border span:nth-child(2){right:15px;top:15px;border-left:0;border-bottom:0}.avue-video__border span:nth-child(3){bottom:15px;left:15px;border-right:0;border-top:0}.avue-video__border span:nth-child(4){bottom:15px;right:15px;border-left:0;border-top:0}.avue-video__img{width:100px;position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.avue-video__main{width:100%}.avue-dynamic__item{margin-bottom:10px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.avue-dynamic__header{padding-left:40px}.avue-dynamic__row{position:relative;border-top:1px dashed #eee;padding-top:13px}.avue-dynamic__row:first-child{border-top:0}.avue-dynamic__menu{position:absolute;right:0;z-index:1024}.avue-dynamic__input{margin-right:8px;width:100%}.avue-dynamic__button{margin-bottom:0!important}.avue-verify__item{padding:5px 10px;display:inline-block;margin:0 4px;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #e1e1e1;font-size:64px;text-align:center}.avue-text-ellipsis__more{padding:0 2px}.avue-login .el-form-item{margin-bottom:18px}.avue-login .el-input-group__append{padding:0;overflow:hidden}.avue-login__send{min-width:150px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-login__send:hover{color:#c0c4cc!important;border-color:#ebeef5!important;background-color:#f5f7fa!important}.avue-login__submit{width:100%}.avue-keyboard--default .akeyboard-keyboard{height:100%;width:100%;background:#f0f0f0;border-radius:5px;padding:9px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--default .akeyboard-keyboard-innerKeys{text-align:center}.avue-keyboard--default .akeyboard-keyboard-keys{height:40px;min-width:40px;padding:0 10px;border-radius:5px;background:#fff;display:inline-block;line-height:40px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.avue-keyboard--default .akeyboard-keyboard-keys:hover,.avue-keyboard--default .keyboard-keyboard-keys-focus{background:#1e9fff;color:#fff}.avue-keyboard--default .akeyboard-keyboard-keys-Delete,.avue-keyboard--default .akeyboard-keyboard-keys-Tab{width:80px}.avue-keyboard--default .akeyboard-keyboard-keys-Caps{width:77px}.avue-keyboard--default .akeyboard-keyboard-keys-Enter{width:90px}.avue-keyboard--default .akeyboard-keyboard-keys-Shift{width:106px}.avue-keyboard--default .akeyboard-keyboard-keys-Space{width:350px}.avue-keyboard--default .akeyboard-keyboard-fixedBottomCenter{width:100%!important;height:auto!important;position:fixed;bottom:0;left:0;border-radius:0!important}.avue-keyboard--default .akeyboard-numberKeyboard{height:100%;width:100%;background:#f0f0f0;border-radius:5px;padding:10px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--default .akeyboard-numberKeyboard-keys-Enter{height:40px;width:100px}.avue-keyboard--default .akeyboard-mobileKeyboard{height:100%;width:100%;background:#f0f0f0;border-radius:5px;padding:11px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--default .akeyboard-mobileKeyboard-keys,.avue-keyboard--green .akeyboard-keyboard-keys{padding:0 10px;-moz-user-select:none;-ms-user-select:none;text-align:center;cursor:pointer;display:inline-block}.avue-keyboard--default .akeyboard-mobileKeyboard-keys{height:25px;min-width:25px;border-radius:3px;background:#fff;line-height:25px;-webkit-box-sizing:border-box;box-sizing:border-box;margin:3px 2px 2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:10px}.avue-keyboard--default .akeyboard-mobileKeyboard-keys:hover{background:#1e9fff!important;color:#fff}.avue-keyboard--default .akeyboard-mobileKeyboard-keys-⇦,.avue-keyboard--default .akeyboard-mobileKeyboard-keys-⇧{width:25px;background-color:#999faf}.avue-keyboard--default .akeyboard-mobileKeyboard-keys-Space{height:28px;width:100px;line-height:28px;margin-left:55px}.avue-keyboard--default .akeyboard-mobileKeyboard-keys-Enter{height:28px;width:55px;line-height:28px;background:#1e9fff!important;color:#fff}.avue-keyboard--default .akeyboard-mobileKeyboard-keys-focus{background:#1e9fff!important;color:#fff}.avue-keyboard--green .akeyboard-keyboard{height:100%;width:100%;background:#030;border-radius:5px;padding:9px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--green .akeyboard-keyboard-innerKeys{text-align:center}.avue-keyboard--green .akeyboard-keyboard-keys{height:40px;min-width:40px;border-radius:5px;background:#cc9;line-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;margin:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.avue-keyboard--green .akeyboard-keyboard-keys:hover,.avue-keyboard--green .keyboard-keyboard-keys-focus{background:#693;color:#fff}.avue-keyboard--green .akeyboard-keyboard-keys-Delete,.avue-keyboard--green .akeyboard-keyboard-keys-Tab{width:80px}.avue-keyboard--green .akeyboard-keyboard-keys-Caps{width:77px}.avue-keyboard--green .akeyboard-keyboard-keys-Enter{width:90px}.avue-keyboard--green .akeyboard-keyboard-keys-Shift{width:106px}.avue-keyboard--green .akeyboard-keyboard-keys-Space{width:350px}.avue-keyboard--green .akeyboard-keyboard-fixedBottomCenter{width:100%!important;height:auto!important;position:fixed;bottom:0;left:0;border-radius:0!important}.avue-keyboard--green .akeyboard-numberKeyboard{height:100%;width:100%;background:#030;border-radius:5px;padding:10px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--green .akeyboard-numberKeyboard-keys-Enter{height:40px;width:100px}.avue-keyboard--green .akeyboard-mobileKeyboard{height:100%;width:100%;background:#030;border-radius:5px;padding:11px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--green .akeyboard-mobileKeyboard-keys{height:25px;min-width:25px;padding:0 10px;border-radius:3px;background:#cc9;display:inline-block;line-height:25px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:3px 2px 2px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:10px}.avue-keyboard--green .akeyboard-mobileKeyboard-keys:hover{background:#693!important;color:#fff}.avue-keyboard--green .akeyboard-mobileKeyboard-keys-⇦,.avue-keyboard--green .akeyboard-mobileKeyboard-keys-⇧{width:25px;background-color:#999faf}.avue-keyboard--green .akeyboard-mobileKeyboard-keys-Space{height:28px;width:100px;line-height:28px;margin-left:55px}.avue-keyboard--green .akeyboard-mobileKeyboard-keys-Enter{height:28px;width:55px;line-height:28px;background:#693!important;color:#fff}.avue-keyboard--green .akeyboard-mobileKeyboard-keys-focus{background:#693!important;color:#fff}.avue-keyboard--dark .akeyboard-keyboard{height:100%;width:100%;background:#000;color:#fff;border-radius:5px;padding:9px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--dark .akeyboard-keyboard-innerKeys{text-align:center}.avue-keyboard--dark .akeyboard-keyboard-keys{height:40px;min-width:40px;padding:0 10px;border-radius:5px;background:#393d49;color:#fff;display:inline-block;line-height:40px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.avue-keyboard--dark .akeyboard-keyboard-keys:hover,.avue-keyboard--dark .keyboard-keyboard-keys-focus{background:#1e9fff}.avue-keyboard--dark .akeyboard-keyboard-keys-Delete,.avue-keyboard--dark .akeyboard-keyboard-keys-Tab{width:80px}.avue-keyboard--dark .akeyboard-keyboard-keys-Caps{width:77px}.avue-keyboard--dark .akeyboard-keyboard-keys-Enter{width:90px}.avue-keyboard--dark .akeyboard-keyboard-keys-Shift{width:106px}.avue-keyboard--dark .akeyboard-keyboard-keys-Space{width:350px}.avue-keyboard--dark .akeyboard-keyboard-fixedBottomCenter{width:100%!important;height:auto!important;position:fixed;bottom:0;left:0;border-radius:0!important}.avue-keyboard--dark .akeyboard-numberKeyboard{height:100%;width:100%;background:#000;border-radius:5px;padding:10px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--dark .akeyboard-numberKeyboard-keys-Enter{height:40px;width:100px}.avue-keyboard--dark .akeyboard-mobileKeyboard{height:100%;width:100%;background:#000;border-radius:5px;padding:11px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys{height:25px;min-width:25px;padding:0 10px;border-radius:3px;background:#393d49;color:#fff;display:inline-block;line-height:25px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:3px 2px 2px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:10px}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys:hover{background:#1e9fff!important;color:#fff}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys-⇦,.avue-keyboard--dark .akeyboard-mobileKeyboard-keys-⇧{width:25px;background-color:#999faf}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys-Space{height:28px;width:100px;line-height:28px;margin-left:55px}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys-Enter{height:28px;width:55px;line-height:28px;background:#1e9fff!important;color:#fff}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys-focus{background:#1e9fff!important;color:#fff}.avue-keyboard--classic .akeyboard-keyboard{height:100%;width:100%;background:#2f4056;border-radius:5px;padding:9px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--classic .akeyboard-keyboard-innerKeys{text-align:center}.avue-keyboard--classic .akeyboard-keyboard-keys{height:40px;min-width:40px;padding:0 10px;border-radius:5px;background:#fff;display:inline-block;line-height:40px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.avue-keyboard--classic .akeyboard-keyboard-keys:hover,.avue-keyboard--classic .keyboard-keyboard-keys-focus{background:#c2c2c2;color:#fff}.avue-keyboard--classic .akeyboard-keyboard-keys-Delete,.avue-keyboard--classic .akeyboard-keyboard-keys-Tab{width:80px}.avue-keyboard--classic .akeyboard-keyboard-keys-Caps{width:77px}.avue-keyboard--classic .akeyboard-keyboard-keys-Enter{width:90px}.avue-keyboard--classic .akeyboard-keyboard-keys-Shift{width:106px}.avue-keyboard--classic .akeyboard-keyboard-keys-Space{width:350px}.avue-keyboard--classic .akeyboard-keyboard-fixedBottomCenter{width:100%!important;height:auto!important;position:fixed;bottom:0;left:0;border-radius:0!important}.avue-keyboard--classic .akeyboard-numberKeyboard{height:100%;width:100%;background:#2f4056;border-radius:5px;padding:10px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--classic .akeyboard-numberKeyboard-keys-Enter{height:40px;width:100px}.avue-keyboard--classic .akeyboard-mobileKeyboard{height:100%;width:100%;background:#2f4056;border-radius:5px;padding:11px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys{height:25px;min-width:25px;padding:0 10px;border-radius:3px;background:#fff;display:inline-block;line-height:25px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:3px 2px 2px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:10px}.avue-array__input,.avue-notice__item{display:-webkit-box;display:-ms-flexbox}.avue-data-operatext .item,.avue-data-operatext .item-row,.avue-data-tabs .item,.data-box .item,.data-card .item-text{-webkit-box-sizing:border-box}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys:hover{background:#c2c2c2!important;color:#fff}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys-⇦,.avue-keyboard--classic .akeyboard-mobileKeyboard-keys-⇧{width:25px;background-color:#999faf}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys-Space{height:28px;width:100px;line-height:28px;margin-left:55px}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys-Enter{height:28px;width:55px;line-height:28px;background:#c2c2c2!important;color:#fff}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys-focus{background:#c2c2c2!important;color:#fff}.avue-notice__item{padding:12px 24px;border-bottom:1px solid #e8eaec;cursor:pointer;-webkit-transition:background-color .2s ease-in-out;transition:background-color .2s ease-in-out;text-align:left;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.avue-notice__content{-webkit-box-flex:1;-ms-flex:1;flex:1}.avue-notice__img{width:38px;height:38px;border-radius:100%;margin-top:5px;margin-right:10px;overflow:hidden}.avue-notice__img img{width:100%;height:100%}.avue-notice__name{line-height:25px}.avue-notice__title{font-size:14px;font-weight:400;line-height:22px;color:#515a6e;margin-bottom:4px}.avue-notice__tag{float:right;margin-top:2px}.avue-notice__subtitle{font-size:12px;color:#808695}.avue-notice__more{cursor:pointer;color:#2d8cf0;text-align:center;padding:10px 0}.avue-array__item{margin-bottom:5px}.avue-array__input{display:-webkit-box;display:-ms-flexbox;display:flex}.avue-array__input .el-input{-webkit-box-flex:1;-ms-flex:auto;flex:auto}.avue-array__input .el-button{margin-left:5px}.avue-data-tabs .item{position:relative;margin:15px;padding:12px;height:160px;border-radius:4px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;color:#fff}.avue-data-tabs .item a{color:#fff}.avue-data-tabs .item-header{position:relative}.avue-data-tabs .item-header>p{color:#fff;margin:0;font-size:14px}.avue-data-tabs .item-header>span{position:absolute;right:0;top:0;padding:2px 8px;border-radius:4px;font-size:12px;background:hsla(0,0%,100%,.3)}.avue-data-tabs .item-body .h2{color:#fff;margin:0;font-size:32px;line-height:60px;font-weight:700}.avue-data-tabs .item-footer{padding-top:8px;line-height:20px}.avue-data-tabs .item-footer>span{font-size:10px}.avue-data-tabs .item-footer>p{color:#fff;margin:0;font-size:12px}.avue-data-tabs .item-tip{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute;width:80px;height:80px;bottom:10px;right:10px;border:2px solid #fff;border-radius:100%;font-size:48px;-webkit-transform:rotate(-40deg);transform:rotate(-40deg);opacity:.1}.avue-data-cardText .item{padding:20px 25px;margin:10px 20px;background:#f8f8f8;border-radius:6px;-webkit-box-shadow:2px 2px 20px #ccc;box-shadow:2px 2px 20px #ccc}.avue-data-cardText .item-header{position:relative}.avue-data-cardText .item-header i{font-size:26px;color:#009688}.avue-data-cardText .item-header a{font-size:16px;margin-left:6px;position:absolute;bottom:4px}.avue-data-cardText .item-content{margin-top:8PX;font-size:14px;line-height:22px;color:#333}.avue-data-cardText .item-footer{position:relative}.avue-data-cardText .item-footer span:first-child{color:#777;font-size:12px;text-overflow:ellipsis;word-break:break-all}.avue-data-cardText .item-footer span:nth-child(2){color:#ccc;font-size:12px;line-height:24px;position:absolute;right:0}.data-box .item{position:relative;margin:0 auto 10px;width:96%;height:100px;overflow:hidden;border-radius:5px;-webkit-box-sizing:border-box;box-sizing:border-box}.data-box .item:hover .item-text{top:0}.data-box .item-icon,.data-box .item a{display:-webkit-box;display:-ms-flexbox;display:flex}.data-box .item-icon{width:100px;height:100px;color:#fff;text-align:center;line-height:100px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.data-box .item-icon i{font-size:48px!important}.data-box .item-info{border-radius:0 5px 5px 0;border:1px solid #eee;border-left:none;background-color:#fff;-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.data-box .item-info .title{font-size:30px;line-height:40px;text-align:center}.data-box .item-info .info{color:#999;font-size:14px;text-align:center}.data-progress .item{margin:10px}.data-progress .item-header{margin-bottom:10px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.data-progress .item-count{line-height:26px;font-size:26px;color:#666}.data-progress .item-title{color:#999;font-size:14px}.data-icons .item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:90%;margin:10px 15px}.data-icons .item-icon{margin-top:3px;margin-right:0!important;text-align:center}.data-icons .item-icon>i{font-size:46px!important}.data-icons .item-info{text-align:center;padding:10px 0}.data-icons .item-info>span{display:block;padding:5px 0;color:#999;font-size:12px}.data-icons .item-info .count{font-size:20px;line-height:25px}.data-icons .item--easy{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.data-icons .item--easy>.item-icon{margin:0}.data-icons .item--easy>.item-info{margin-top:-15px}.data-icons .item--easy>.item-info>span{font-size:14px}.data-card .item{position:relative;margin:0 auto 50px;width:230px;height:340px;overflow:hidden;border-radius:5px;border:1px solid #fff}.data-card .item:hover .item-text{top:0}.data-card .item-img{width:100%;border-radius:5px 5px 0 0}.data-card .item-text{position:absolute;top:150px;padding:20px 15px;width:100%;height:340px;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:0 0 5px 5px;opacity:.9;-webkit-transition:top .4s;transition:top .4s}.data-card .item-text>p{font-size:12px;line-height:25px;text-indent:2em}.avue-data-display .item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:5px 0;text-align:center}.avue-data-display .count{display:block;margin:8px 0 15px;font-weight:700;font-size:32px;color:#15a0ff}.avue-data-display .title{line-height:32px;color:#999}.avue-data-display .splitLine{display:block;margin:0 auto;width:24px;height:1px;background:#9b9b9b}.avue-data-imgtext .item{position:relative;height:340px;width:240px;margin:10px auto 50px;border-radius:5px;-webkit-box-shadow:2px 2px 20px #ccc;box-shadow:2px 2px 20px #ccc}.avue-data-imgtext .item-header img{width:100%;height:170px;background:red;border-radius:5px 5px 0 0}.avue-data-imgtext .item-content{padding:10px 15px;color:#333!important}.avue-data-imgtext .item-content span{font-size:20px}.avue-data-imgtext .item-content:hover span{color:#1890ff}.avue-data-imgtext .item-content p{font-size:14px;height:60px;margin:6px 0;overflow:hidden}.avue-data-imgtext .item-footer{padding:10px 15px;position:relative}.avue-data-imgtext .item-footer img{height:20px;width:20px;border-radius:50%}.avue-data-imgtext .item-footer div{display:inline-block}.avue-data-imgtext .item-footer div li,.avue-data-imgtext .item-footer div ul{padding:0;margin:0 0 0 -8px;list-style:none;display:inline-block;border:2px solid #fff;border-radius:50%}.avue-data-imgtext .item-footer div:first-child{font-size:14px;color:#ccc!important}.avue-data-imgtext .item-footer div:nth-child(2){position:absolute;right:15px}.avue-data-operatext .item{margin:5px 10px;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;border-radius:3px;background:#fff;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1)}.avue-data-operatext .item a{color:#333}.avue-data-operatext .item-header{padding:20px 20px 60px;border-top-right-radius:3px;border-top-left-radius:3px;color:#fff;background-position:50%}.avue-data-operatext .item-title{margin-top:0;margin-bottom:5px;font-size:25px;font-weight:300;text-shadow:0 1px 1px rgba(0,0,0,.2);display:block}.avue-data-operatext .item-subtitle{font-size:14px;font-weight:400}.avue-data-operatext .item-content{border-top:1px solid #f4f4f4;padding:10px 10px 20px;background-color:#fff;border-radius:0 0 3px 3px}.avue-data-operatext .item-img{margin:-60px auto 5px;width:90px;height:90px;border-radius:100%;overflow:hidden;border:4px solid #fff}.avue-data-operatext .item-img img{width:100%;height:100%}.avue-data-operatext .item-list{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.avue-data-operatext .item-row{-webkit-box-sizing:border-box;box-sizing:border-box;width:33.33%;text-align:center}.avue-data-operatext .item-label{margin-bottom:5px;display:block;font-weight:600;font-size:16px}.avue-data-operatext .item-value{display:block;font-weight:300;text-transform:uppercase}.avue-data-rotate .item{margin:5px 10px;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;color:#fff;border-radius:3px}.avue-data-rotate .item-box{padding:10px 20px}.avue-data-rotate .item-count{margin-bottom:5px;font-size:38px;white-space:nowrap;font-weight:300;display:block}.avue-data-rotate .item-title{font-size:15px}.avue-data-rotate .item-icon{-webkit-transition:all .3s linear;transition:all .3s linear;position:absolute;top:20px;right:20px;font-size:65px;color:rgba(0,0,0,.15)}.avue-data-rotate .item-icon:hover{font-size:70px}.avue-data-rotate .item-more{position:relative;text-align:center;padding:3px 0;color:#fff;color:hsla(0,0%,100%,.8);display:block;z-index:10;font-size:14px;letter-spacing:2px;background:rgba(0,0,0,.1);text-decoration:none}.avue-data-pay .item{margin:0 auto;padding-bottom:16px;width:80%;position:relative;border-radius:4px;background-color:#fff;min-height:670px;-webkit-box-shadow:1px 2px 10px #eee;box-shadow:1px 2px 10px #eee}.avue-data-pay .top{width:100%;height:6px;position:absolute;top:0;left:0;border-radius:4px 4px 0 0}.avue-data-pay .header{margin-bottom:40px;text-align:center}.avue-data-pay .title{text-align:center;padding:20px 0 10px;font-size:20px;font-weight:200}.avue-data-pay .money span{margin-right:5px;font-size:14px}.avue-data-pay .money .b{margin-right:2px;font-size:20px;font-weight:700}.data-price .item .body:before,.el-select-dropdown .el-tree-node__label,.el-select-dropdown__item.selected{font-weight:400}.avue-data-pay .money s{margin-right:3px;font-size:12px}.avue-data-pay .money em{font-size:14px;font-style:normal}.avue-data-pay .img{width:50px}.avue-data-pay .line{width:60%;height:1px;background:hsla(0,0%,58.8%,.1);margin:20px auto}.avue-data-pay .btn{display:block;width:120px;height:32px;line-height:32px;margin:0 auto;text-align:center;border-radius:32px;color:#fff;cursor:pointer;-webkit-transition:opacity .2s ease-in-out;transition:opacity .2s ease-in-out}.avue-data-pay .list-item{list-style:none;padding-left:20px;margin-bottom:12px;color:#666;font-size:14px}.avue-data-pay .list-item a{color:#666}.avue-data-pay .list-item-icon{color:#515a6e;margin-right:8px}.avue-data-pay .list-item--link{font-size:12px;color:#2d8cf0}.avue-data-pay .list-item--no,.avue-data-pay .list-item--no+span{color:#c5c8ce}.data-price .item{margin:0 20px;text-align:center;-webkit-box-shadow:2px 3px 15px #eee;box-shadow:2px 3px 15px #eee}.data-price .item:hover{border:1px solid #00a680}.data-price .item:hover .body{color:#fff;background-color:#00a680}.data-price .item:hover .body:after{border-top-color:#00a680}.data-price .item:hover .list{color:#00a680}.data-price .item:hover .price{color:#fff}.data-price .item .title{height:80px;line-height:80px;font-size:18px;color:#333}.data-price .item .body,.data-price .item .price{margin:0 0 50px;line-height:120px;height:120px;color:#6b6b6b}.data-price .item .price{padding:0 8px;font-size:42px}.data-price .item .append{font-size:16px}.data-price .item .body{position:relative;padding:0;background-color:#f4f4f4;font-size:42px}.data-price .item .body:before{content:"\A5";font-size:16px}.data-price .item .body:after{content:"";position:absolute;display:block;width:0;height:0;bottom:-15px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);border-color:#f4f4f4 transparent transparent;border-style:solid;border-width:20px 30px 0}.data-price .item .list{padding-bottom:30px;color:#666;font-size:14px}.avue-data-panel .item{padding:0 30px;margin:0 20px;cursor:pointer;height:108px;font-size:12px;position:relative;overflow:hidden;color:#666;background:#fff;-webkit-box-shadow:4px 4px 40px rgba(0,0,0,.05);box-shadow:4px 4px 40px rgba(0,0,0,.05);border-color:rgba(0,0,0,.05);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.avue--detail .avue-checkbox__all,.avue--detail .el-form-item.is-required:not(.is-no-asterisk) .el-form-item__label-wrap>.el-form-item__label:before,.avue--detail .el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before,.avue--detail .el-input-number__decrease,.avue--detail .el-input-number__increase,.avue--detail .el-input__prefix,.avue--detail .el-input__suffix,.avue-canvas{display:none}.avue-data-panel .item-icon{font-size:52px}.avue-data-panel .item-info{text-align:center}.avue-data-panel .item-title{line-height:18px;color:rgba(0,0,0,.45);font-size:16px;margin-bottom:12px}.avue-data-panel .item-count{font-size:20px}[class^=avue-data-] a,[class^=data-] a{text-decoration:none}body{font-family:Chinese Quote,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol}*{outline:0}.avue-ghost{opacity:.5;background:#c8ebfb}.avue--disabled{color:#ccc}.avue--detail .hover-row td{background-color:#fff!important}.avue--detail .avue-group__header{padding-left:10px}.avue--detail .el-collapse-item__header{margin-bottom:0}.avue--detail .el-input.is-disabled .el-input__inner,.avue--detail .el-range-editor.is-disabled,.avue--detail .el-range-editor.is-disabled input,.avue--detail .el-textarea.is-disabled .el-textarea__inner{color:#606266;background-color:#fff;padding-left:0}.avue--detail .el-input-group__append,.avue--detail .el-input-group__prepend{background-color:transparent;border:none}.avue--detail .el-input__inner,.avue--detail .el-textarea__inner{border:none}.avue--detail .el-input__inner::-webkit-input-placeholder,.avue--detail .el-textarea__inner::-webkit-input-placeholder{color:transparent!important}.avue--detail .el-input__inner::-moz-placeholder,.avue--detail .el-textarea__inner::-moz-placeholder{color:transparent!important}.avue--detail .el-input__inner::-ms-input-placeholder,.avue--detail .el-textarea__inner::-ms-input-placeholder{color:transparent!important}.avue--detail .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:#409eff;border-color:#409eff}.avue--detail .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:#fff}.avue--detail .el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:#409eff;border-color:#409eff}.avue--detail .el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:#fff}.avue--detail .el-checkbox__input.is-disabled+span.el-checkbox__label,.avue--detail .el-radio__input.is-disabled+span.el-radio__label{color:#606266}.avue--detail .el-row{border-top:1px solid #ebeef5;border-left:1px solid #ebeef5}.avue--detail .el-col{padding:0!important;border-bottom:1px solid #ebeef5;border-right:1px solid #ebeef5}.avue--detail .el-form-item--mini.el-form-item,.avue--detail .el-form-item--small.el-form-item{margin:0;background:#fafafa}.avue--detail .el-form-item__content,.avue--detail .el-form-item__label{padding:2px 0}.avue--detail .el-form-item__label{padding-right:20px;color:#909399;-webkit-box-sizing:border-box;box-sizing:border-box}.avue--detail .el-tag{margin-left:0!important;margin-right:6px!important}.avue--detail .el-form-item__content{border-left:1px solid #ebeef5;padding-left:20px;-webkit-box-sizing:border-box;box-sizing:border-box;background-color:#fff}.avue--detail__column .el-form-item{background-color:#fff}.avue--detail__column .el-form-item__label{padding-right:12px}.avue--detail__column .el-form-item__content{padding-left:0;border-left:none}.avue-grid{position:absolute;width:100%;background-size:20px 20px,20px 20px;background-image:linear-gradient(rgba(0,0,0,.1) 1px,transparent 0),linear-gradient(90deg,rgba(0,0,0,.1) 1px,transparent 0)}.avue-grid,.avue-mask{top:0;left:0;height:100%}.avue-mask{position:fixed;bottom:0;right:0;background-color:rgba(55,55,55,.6);z-index:1000}.avue--card{-webkit-box-shadow:2px 1px 8px rgba(0,0,0,.15);box-shadow:2px 1px 8px rgba(0,0,0,.15);border-radius:5px}.avue-dialog{overflow:visible;top:15%}.avue-dialog .el-dialog{min-height:180px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0!important;position:absolute;top:0;left:50%;-webkit-transform:translate(-50%);transform:translate(-50%);border-radius:2px;max-height:calc(100% - 100px);max-width:calc(100% - 100px)}.avue-dialog .el-dialog__header{padding:16px 24px;min-height:20px;border-bottom:1px solid #f0f0f0}.avue-dialog .el-dialog__title,.avue-dialog .el-drawer__header{color:rgba(0,0,0,.85);font-weight:500;word-wrap:break-word}.avue-dialog .el-dialog__body{margin-bottom:50px}.avue-dialog .el-dialog .el-dialog__body{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden;overflow-y:auto}.avue-dialog .el-drawer{position:absolute;right:0;top:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.avue-dialog .el-drawer__header{margin:0;min-height:20px;padding:16px 10px 16px 24px;border-bottom:1px solid #f0f0f0}.avue-dialog .el-drawer,.avue-dialog .el-drawer__body{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:auto}.avue-dialog .el-drawer__body{padding:30px 10px 60px 30px}.avue-dialog__footer{display:block;padding:10px 16px;-webkit-box-sizing:border-box;box-sizing:border-box;border-top:1px solid #f0f0f0;width:100%;position:absolute;left:0;bottom:0;background-color:#fff;text-align:right}.avue-dialog__footer--left{text-align:left}.avue-dialog__footer--center{text-align:center}.avue-dialog--fullscreen .el-dialog{left:0;top:0;-webkit-transform:translate(0);transform:translate(0);width:100%!important;height:100%;max-width:100%;max-height:100%}.avue-crud .el-tooltip__popper,.avue-form .el-tooltip__popper,.el-tooltip__popper{max-width:60%}.avue-dialog--top .el-dialog{top:15%}.avue-dialog--none .el-dialog__body{margin-bottom:0}.avue-queue--block{display:inline-block}.avue-opacity{opacity:0}.avue-opacity--active{opacity:1}.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .3s;transition:opacity .3s}.fade-enter,.fade-leave-to{opacity:0}.avue-crud .avue-input-number,.avue-crud .el-cascader,.avue-crud .el-date-editor.el-input,.avue-crud .el-date-editor.el-input__inner,.avue-crud .el-select,.avue-form .avue-input-number,.avue-form .el-cascader,.avue-form .el-date-editor.el-input,.avue-form .el-date-editor.el-input__inner,.avue-form .el-select{width:100%!important}.avue-crud .el-input-number .el-input__inner,.avue-form .el-input-number .el-input__inner{text-align:left}.avue-crud .avue-crud__left .el-button,.avue-crud .avue-crud__right .el-button,.avue-form .avue-crud__left .el-button,.avue-form .avue-crud__right .el-button{margin-right:5px;margin-bottom:0}.avue-crud .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content,.avue-form .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{color:#409eff}.avue-crud .el-tree-node__label,.avue-form .el-tree-node__label{margin-left:8px}.avue-crud .el-input__inner,.avue-form .el-input__inner{height:38px;line-height:38px}.avue-crud .el-range-editor--small,.avue-form .el-range-editor--small{height:32px;line-height:32px}.avue-crud .el-range-editor--mini,.avue-form .el-range-editor--mini{height:28px;line-height:28px}.avue-crud .el-input--small input,.avue-form .el-input--small input{height:32px;line-height:32px}.avue-crud .el-input--mini input,.avue-form .el-input--mini input{height:28px;line-height:28px}.avue-crud .el-table--medium td,.avue-form .el-table--medium td{padding:7px 0!important}.avue-crud .el-dropdown-menu__item,.avue-form .el-dropdown-menu__item{line-height:25px}.avue-crud .el-table-filter__list,.avue-form .el-table-filter__list{width:100%;height:300px;overflow-y:auto}.el-form-item--mini .el-color-picker--mini,.el-form-item--mini .el-color-picker--mini .el-color-picker__trigger{width:23px;height:23px}.el-dropdown-menu .el-button--text{width:100%!important}.el-pagination__editor.el-input .el-input__inner{line-height:28px}.el-drawer__body{height:100%}.el-checkbox:last-of-type{margin-right:8px}.el-table colgroup.gutter,.el-table th.gutter{display:table-cell!important}.el-input-number .el-input__suffix{display:none}.el-input-number__decrease,.el-input-number__increase{background-color:transparent}.el-tree-node.is-current>.el-tree-node__content{color:#409eff;background-color:#f5f7fa}.el-select-dropdown .el-scrollbar .el-scrollbar__view .el-select-dropdown__item{height:auto;padding:0}.el-select-dropdown .el-scrollbar .el-scrollbar__view .el-select-dropdown__item>span{padding:0 20px}.el-select-dropdown ul li>>>.el-tree .el-tree-node__content{height:auto;padding:0 20px}.el-select-dropdown .el-tree>>>.is-current .el-tree-node__label{color:#409eff;font-weight:700}.el-select-dropdown .el-tree>>>.is-current .el-tree-node__children .el-tree-node__label{color:#606266;font-weight:400}.el-form-item.is-error .avue-dynamic{border:1px solid #f56c6c;border-radius:3px}.el-dropdown-menu__item{padding-top:3px!important;padding-bottom:3px!important}.avue-theme--dark body{background:#000}.avue-theme--dark .el-pagination.is-background .btn-next,.avue-theme--dark .el-pagination.is-background .btn-prev,.avue-theme--dark .el-pagination.is-background .el-pager li{background-color:#151518;color:#525256;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #313135}.avue-theme--dark .el-pagination.is-background .el-pager li:not(.disabled).active{background-color:#151518;border-color:#409eff}.avue-theme--dark .el-cascader-menu{border-right:1px solid #313135}.avue-theme--dark .el-select-dropdown.is-multiple .el-select-dropdown__item.selected,.avue-theme--dark .el-select-dropdown.is-multiple .el-select-dropdown__item.selected.hover{background-color:#151518}.avue-theme--dark .el-cascader__dropdown,.avue-theme--dark .el-input__inner,.avue-theme--dark .el-range-input,.avue-theme--dark .el-select-dropdown{background-color:#151518;color:#999;border:1px solid #313135}.avue-theme--dark .el-cascader__dropdown:hover,.avue-theme--dark .el-input__inner:hover,.avue-theme--dark .el-range-input:hover,.avue-theme--dark .el-select-dropdown:hover{border-color:#409eff}.avue-theme--dark .el-cascader__dropdown::-webkit-input-placeholder,.avue-theme--dark .el-input__inner::-webkit-input-placeholder,.avue-theme--dark .el-range-input::-webkit-input-placeholder,.avue-theme--dark .el-select-dropdown::-webkit-input-placeholder{color:#525256}.avue-theme--dark .el-cascader__dropdown:-moz-placeholder,.avue-theme--dark .el-cascader__dropdown::-moz-placeholder,.avue-theme--dark .el-input__inner:-moz-placeholder,.avue-theme--dark .el-input__inner::-moz-placeholder,.avue-theme--dark .el-range-input:-moz-placeholder,.avue-theme--dark .el-range-input::-moz-placeholder,.avue-theme--dark .el-select-dropdown:-moz-placeholder,.avue-theme--dark .el-select-dropdown::-moz-placeholder{color:#525256}.avue-theme--dark .el-cascader__dropdown:-ms-input-placeholder,.avue-theme--dark .el-input__inner:-ms-input-placeholder,.avue-theme--dark .el-range-input:-ms-input-placeholder,.avue-theme--dark .el-select-dropdown:-ms-input-placeholder{color:#525256}.avue-theme--dark .el-form-item__label{color:#9a9a9f}.avue-theme--dark .el-switch__core{background:#151518;border-color:#151518}.avue-theme--dark .avue-group__item{background-color:#000}.avue-theme--dark .el-table--border,.avue-theme--dark .el-table--group{border-color:#313135}.avue-theme--dark .el-table__body tr.current-row>td,.avue-theme--dark .el-table__body tr.hover-row>td{background-color:#151518}.avue-theme--dark .el-table--border td,.avue-theme--dark .el-table--border th,.avue-theme--dark .el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed{border-color:#999}.avue-theme--dark .avue-crud .el-table th,.avue-theme--dark .el-table,.avue-theme--dark .el-table__fixed-footer-wrapper tbody td,.avue-theme--dark .el-table__footer-wrapper tbody td,.avue-theme--dark .el-table__header-wrapper tbody td,.avue-theme--dark .el-table th,.avue-theme--dark .el-table tr{background-color:#151518;color:#999;border-color:#999}@media screen and (max-width:992px){.el-dialog__footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-button+.el-button{margin-left:0}.avue-upload__avatar,.avue-upload__icon,.el-upload--picture-card,.el-upload-list--picture-card .el-upload-list__item{width:100px;height:100px;line-height:100px}.avue-crud .el-form-item,.avue-crud__title .avue-date__radio,.avue-crud__title .avue-date__radio .el-radio-group .el-radio-button__inner,.avue-crud__title .avue-date__radio .el-radio-group label{width:100%}.avue-tip{display:none}.avue-crud__menu,.avue-crud__title{display:block!important}.avue-crud .el-form-item__label{-webkit-box-flex:1;-ms-flex:1;flex:1}.avue-crud .el-form-item__content{-webkit-box-flex:5;-ms-flex:5;flex:5}.avue-crud__searchMenu{text-align:center}.avue-crud__title p{margin-bottom:20px}.avue-crud__title .avue-date__group{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-crud__title .avue-date__date{display:none}.avue-crud__title .avue-date__radio .el-radio-group{display:-webkit-box;display:-ms-flexbox;display:flex}.avue-crud__title .avue-date__radio .el-radio-button:last-child .el-radio-button__inner{border-radius:0 4px 4px 0;border-right:1px solid #dcdfe6}}#nprogress{pointer-events:none}#nprogress .bar{background:#29d;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;-webkit-box-shadow:0 0 10px #29d,0 0 5px #29d;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;-webkit-transform:rotate(3deg) translateY(-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border-color:#29d transparent transparent #29d;border-style:solid;border-width:2px;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}} \ No newline at end of file +/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:inherit;font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}[hidden],template{display:none}.echarts{width:600px;height:400px}.avue-article__body,.avue-comment__body{font-family:Segoe UI,Lucida Grande,Helvetica,Arial,Microsoft YaHei,FreeSans,Arimo,Droid Sans,wenquanyi micro hei,Hiragino Sans GB,Hiragino Sans GB W3,FontAwesome,sans-serif}.avue-avatar,.avue-card__item{font-variant:tabular-nums;list-style:none}.avue-affix{position:fixed;z-index:10}.avue-sign{padding:5px}.avue-sign__canvas{border:1px solid #ccc}.avue-carousel--fullscreen{height:100%}.avue-carousel--fullscreen .el-carousel,.avue-carousel--fullscreen .el-carousel__container{height:90%}.avue-carousel__item{position:relative;width:100%;height:100%}.avue-carousel__item a{width:100%;height:100%;display:block}.avue-carousel__img{height:100%;background-size:cover;background-position:50%}.avue-carousel__title{z-index:1024;position:absolute;left:0;bottom:0;width:100%;height:50px;line-height:50px;font-size:16px;text-align:center;color:#fff;background-color:rgba(0,0,0,.6)}.avue-article__title{margin-bottom:15px;font-size:32px;line-height:32px;font-weight:400}.avue-article__meta{display:block;margin-bottom:20px;font-size:12px;color:#999}.avue-article__lead{color:#666;font-size:14px;line-height:22px;border:1px solid #dedede;border-radius:2px;background:#f9f9f9;padding:10px}.avue-article__body{padding-top:10px;background:#fff;color:#333;font-size:14px}.avue-article blockquote{margin:0;font-family:Georgia,Times New Roman,Times,Kai,Kaiti SC,KaiTi,BiauKai,FontAwesome,serif;padding:1px 0 1px 15px;border-left:4px solid #ddd}.avue-avatar{font-size:14px;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;display:inline-block;text-align:center;background:#ccc;color:#fff;white-space:nowrap;position:relative;overflow:hidden;vertical-align:middle;width:32px;height:32px;line-height:32px;border-radius:50%}.avue-avatar__images{width:100%;height:100%}.avue-avatar__icon{font-size:18px}.avue-avatar__string{position:absolute;left:50%;-webkit-transform-origin:0 center;transform-origin:0 center}.avue-avatar--lg{width:40px;height:40px;line-height:40px;border-radius:50%;font-size:24px}.avue-avatar--sm{width:24px;height:24px;line-height:24px;border-radius:50%;font-size:14px}.avue-avatar--square{border-radius:4px}.avue-skeleton__avatar{width:40px;height:40px;line-height:40px;display:inline-block;border-radius:50%;background:#f2f2f2}.avue-skeleton__header{display:table-cell;vertical-align:top;padding-right:16px}.avue-skeleton__content{display:table-cell;vertical-align:top;width:100%}.avue-skeleton__title{margin-top:16px;height:16px;width:40%;background:#f2f2f2}.avue-skeleton__item{padding-top:16px;padding-bottom:16px;border-bottom:1px solid #e8e8e8}.avue-skeleton__item:last-child{border-bottom:none}.avue-skeleton__li{margin-bottom:10px;height:16px;background:#f2f2f2;list-style:none;width:100%}.avue-skeleton__li:last-child{width:50%}.avue-skeleton__loading{background:-webkit-gradient(linear,left top,right top,color-stop(25%,#f2f2f2),color-stop(37%,#e6e6e6),color-stop(63%,#f2f2f2));background:linear-gradient(90deg,#f2f2f2 25%,#e6e6e6 37%,#f2f2f2 63%);-webkit-animation:avue-skeleton-loading 1.4s ease infinite;animation:avue-skeleton-loading 1.4s ease infinite;background-size:400% 100%}@-webkit-keyframes avue-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}@keyframes avue-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.avue-crud{margin:0 auto;width:100%}.avue-crud .el-card+.el-card{margin-top:8px}.avue-crud--card .el-card{border:none}.avue-crud--card .el-card__body{padding:0}.avue-crud--card .el-card+.el-card{margin-top:0}.avue-crud .el-table .el-form-item{margin-bottom:0;display:inline-block;width:100%}.avue-crud .el-table .el-form-item__label{position:absolute;left:2px}.avue-crud .el-table .el-form-item__content{line-height:inherit;font-size:inherit}.avue-crud .el-table .el-form-item__error{width:100%;text-align:left;position:relative}.avue-crud .el-dropdown+.el-button{margin-left:10px}.avue-crud .el-checkbox:last-of-type{margin-right:0}.avue-crud .el-range-editor--mini{height:28px}.avue-crud__img{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-crud__img img,.avue-crud__img video{height:40px;margin-left:5px;-o-object-fit:contain;object-fit:contain}.avue-crud__column .el-checkbox{margin-bottom:10px;cursor:move}.avue-crud__menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;position:relative;width:100%;min-height:40px;height:auto;overflow:hidden;margin-bottom:5px;background-color:#fff}.avue-crud__search .el-form-item--medium.el-form-item{margin-bottom:22px}.avue-crud__search .el-form-item--mini.el-form-item,.avue-crud__search .el-form-item--small.el-form-item{margin-bottom:14px}.avue-crud .el-table--mini .avue-crud__color{width:20px;height:20px}.avue-crud .el-table--mini .avue-crud__icon{font-size:20px}.avue-crud .el-table--small .avue-crud__color{width:30px;height:30px}.avue-crud .el-table--small .avue-crud__icon{font-size:30px}.avue-crud th{word-break:break-word;color:rgba(0,0,0,.85);background-color:#fafafa}.avue-crud table td{line-height:26px}.avue-crud--indeterminate .is-indeterminate .el-checkbox__inner{background-color:#fff;border-color:#dcdfe6}.avue-crud .el-table th{word-break:break-word;color:rgba(0,0,0,.85);background-color:#fafafa}.avue-crud__color{margin:0 auto;width:40px;height:40px;border-radius:5px;display:block}.avue-crud__icon{font-size:45px}.avue-crud__icon--small{font-size:20px;width:20px;height:20px}.avue-crud__ghost{cursor:move;opacity:.4}.avue-crud__pagination{position:relative;padding:25px 0 20px 20px;text-align:right}.avue-crud__pagination .el-pagination{display:inline-block}.avue-crud__tip,.avue-crud__title{display:-ms-flexbox;-webkit-box-align:center}.avue-crud__form{padding:0 8px}.avue-crud__empty{padding:60px 0}.avue-crud__header{margin-bottom:10px}.avue-crud__header>.el-button{padding:12px 25px}.avue-crud__title{font-weight:700;margin-bottom:20px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:22px}.avue-crud__tip,.avue-crud__title{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center}.avue-crud__tip{margin:0 0 8px;font-size:12px}.avue-crud__tip-name{margin-right:10px}.avue-crud__tip-count{font-size:16px;font-weight:600}.avue-crud__tip .el-button{margin-bottom:0}.avue-crud__filter-item{margin-bottom:12px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-crud__filter-menu{padding:0 5px;margin-bottom:20px}.avue-crud__filter-label{margin:0 5px;width:120px!important}.avue-crud__filter-symbol{margin:0 5px;width:80px!important}.avue-crud__filter-value{margin:0 5px;width:150px!important}.avue-crud__filter-value .el-date-editor.el-input,.avue-crud__filter-value .el-date-editor.el-input__inner{width:100%}.avue-crud__filter-icon{margin-left:10px}.avue-crud__dialog__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.avue-crud__dialog__menu{padding-right:20px}.avue-crud__dialog__menu i{color:#909399;font-size:15px}.avue-crud__dialog__menu i:hover{color:#409eff}.avue-crud__dialog .el-dialog__body{padding:20px 20px 5px 10px}.avue-crud__dialog .el-scrollbar__wrap{overflow-x:hidden}.avue-crud__dialog .avue-form__menu{padding-top:15px}.avue-card__item{margin-bottom:16px;border:1px solid #e8e8e8;background-color:#fff;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0,0,0,.65);font-size:14px;line-height:1.5;-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";cursor:pointer;height:200px}.avue-card__item:hover{border-color:rgba(0,0,0,.09);-webkit-box-shadow:0 2px 8px rgba(0,0,0,.09);box-shadow:0 2px 8px rgba(0,0,0,.09)}.avue-chat,.avue-data-pay .item{-webkit-box-shadow:1px 2px 10px #eee}.avue-card__item--add{border:1px dashed #d9d9d9;width:100%;color:rgba(0,0,0,.45);background-color:#fff;border-radius:2px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:16px}.avue-card__item--add i{margin-right:10px}.avue-card__item--add:hover{color:#40a9ff;background-color:#fff;border-color:#40a9ff}.avue-card__body{display:-webkit-box;display:-ms-flexbox;display:flex;padding:24px}.avue-card__detail{-webkit-box-flex:1;-ms-flex:1;flex:1}.avue-card__avatar{width:48px;height:48px;border-radius:48px;overflow:hidden;margin-right:12px}.avue-card__avatar img{width:100%;height:100%}.avue-card__title{color:rgba(0,0,0,.85);margin-bottom:12px;font-size:16px}.avue-card__title:hover{color:#1890ff}.avue-card__info,.avue-card__menu{display:-webkit-box;color:rgba(0,0,0,.45)}.avue-card__info{-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;height:64px}.avue-card__menu{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-pack:distribute;justify-content:space-around;height:50px;background:#f7f9fa;text-align:center;line-height:50px}.avue-card__menu:hover{color:#1890ff}.avue-comment{margin-bottom:30px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.avue-comment--reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.avue-comment--reverse .avue-comment__main:after,.avue-comment--reverse .avue-comment__main:before{left:auto;right:-8px;border-width:8px 0 8px 8px}.avue-comment--reverse .avue-comment__main:before{border-left-color:#dedede}.avue-comment--reverse .avue-comment__main:after{border-left-color:#f8f8f8;margin-right:1px;margin-left:auto}.avue-comment__avatar{width:48px;height:48px;border-radius:50%;border:1px solid transparent;-webkit-box-sizing:border-box;box-sizing:border-box;vertical-align:middle}.avue-comment__header{padding:5px 15px;background:#f8f8f8;border-bottom:1px solid #eee;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.avue-comment__author{font-weight:700;font-size:14px;color:#999}.avue-comment__main{-webkit-box-flex:1;-ms-flex:1;flex:1;margin:0 20px;position:relative;border:1px solid #dedede;border-radius:2px}.avue-comment__main:after,.avue-comment__main:before{position:absolute;top:10px;left:-8px;right:100%;width:0;height:0;display:block;content:" ";border-color:transparent;border-style:solid solid outset;border-width:8px 8px 8px 0;pointer-events:none}.avue-comment__main:before{border-right-color:#dedede;z-index:1}.avue-comment__main:after{border-right-color:#f8f8f8;margin-left:1px;z-index:2}.avue-comment__body{padding:15px;overflow:hidden;background:#fff;color:#333;font-size:14px}.avue-comment blockquote{margin:0;font-family:Georgia,Times New Roman,Times,Kai,Kaiti SC,KaiTi,BiauKai,FontAwesome,serif;padding:1px 0 1px 15px;border-left:4px solid #ddd}.avue-chat{-webkit-box-shadow:1px 2px 10px #eee;box-shadow:1px 2px 10px #eee;position:relative;background-color:#fcfcfc}.avue-chat li,.avue-chat ul{padding:0;margin:0}.avue-chat li{list-style:none;cursor:pointer}.avue-chat .web__content{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.avue-chat .web__main{height:calc(100% - 200px);padding:15px 15px 20px;overflow-x:hidden;overflow-y:auto;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-chat .web__logo{background-color:#409eff;display:-webkit-box;display:-ms-flexbox;display:flex;padding:15px 12px;margin:0 auto;vertical-align:middle}.avue-chat .web__logo-img{margin-top:3px;width:35px;height:35px;border-radius:100%;-webkit-box-shadow:0 3px 3px 0 rgba(0,0,0,.1);box-shadow:0 3px 3px 0 rgba(0,0,0,.1)}.avue-chat .web__logo-info{margin-left:10px}.avue-chat .web__logo-name{position:relative;margin-top:5px;font-size:13px}.avue-chat .web__logo-dept{margin-top:1px;font-size:12px}.avue-chat .web__logo-dept,.avue-chat .web__logo-name{color:#fff;margin:0;padding:0;width:175px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.avue-chat .web__main-item{position:relative;font-size:0;margin-bottom:10px;padding-left:60px;min-height:68px}.avue-chat .web__main-text,.avue-chat .web__main-user{display:inline-block;vertical-align:top;font-size:14px}.avue-chat .web__main-user{position:absolute;left:3px}.avue-chat .web__main-user img{width:40px;height:40px;border-radius:100%}.avue-chat .web__main-user cite{position:absolute;left:60px;top:-2px;width:500px;line-height:24px;font-size:12px;white-space:nowrap;color:#999;text-align:left;font-style:normal}.avue-chat .web__main-user cite i{padding-left:15px;font-style:normal}.avue-chat .web__main-text{position:relative;line-height:22px;margin-top:25px;padding:8px 15px;background-color:#f3f3f3;border-radius:3px;border:1px solid #f0f0f0;color:#000;word-break:break-all}.avue-chat .web__main-arrow{top:6px;left:-8px;border-color:transparent #ebeef5 transparent transparent;border-width:8px 8px 8px 0}.avue-chat .web__main-arrow,.avue-chat .web__main-arrow:after{position:absolute;display:block;width:0;height:0;border-style:solid}.avue-chat .web__main-arrow:after{content:" ";top:-7px;left:1px;border-color:transparent #fff transparent transparent;border-width:7px 7px 7px 0}.avue-chat .web__main-item--mine .web__main-text .web__main-arrow{left:auto;right:-5px;border-color:transparent transparent transparent #409eff;border-style:solid;border-width:8px 0 8px 8px}.avue-chat .web__main-item--mine .web__main-text .web__main-arrow:after{left:auto;right:-2px;border-color:transparent transparent transparent #409eff;border-style:solid;border-width:7px 0 7px 7px}.avue-chat .web__main-list{margin:10px 0}.avue-chat .web__main-list li{height:30px;color:#409eff;line-height:30px}.avue-chat .web__main-item--mine{text-align:right;padding-left:0;padding-right:60px}.avue-chat .web__main-item--mine .web__main-user{left:auto;right:3px}.avue-chat .web__main-item--mine .web__main-user cite{left:auto;right:60px;text-align:right}.avue-chat .web__main-item--mine .web__main-user cite i{padding-left:0;padding-right:15px}.avue-chat .web__main-item--mine .web__main-text{margin-left:0;text-align:left;background-color:#409eff;color:#fff}.avue-chat .web__footer{-webkit-box-shadow:0 -1px 0 0 rgba(0,0,0,.04),0 -2px 0 0 rgba(0,0,0,.01);box-shadow:0 -1px 0 0 rgba(0,0,0,.04),0 -2px 0 0 rgba(0,0,0,.01);position:absolute;left:0;bottom:0;width:100%;background-color:#fff}.avue-chat .web__msg{padding:10px;height:auto;overflow:hidden}.avue-chat .web__msg--file,.avue-chat .web__msg--img,.avue-chat .web__msg--video{position:relative;max-width:250px;min-width:200px;width:100%;margin:10px 0;border:1px solid #eee;overflow:hidden;border-radius:5px;cursor:pointer;display:block}.avue-chat .web__msg--file span,.avue-image-preview__box,.avue-img--center{display:-webkit-box;display:-ms-flexbox;-webkit-box-align:center}.avue-chat .web__msg--file{height:140px;background-color:#fff}.avue-chat .web__msg--file span{-webkit-box-sizing:border-box;box-sizing:border-box;padding:3px 5px;color:#333;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;width:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:calc(100% - 80px);overflow:hidden;font-size:13px;text-align:center}.avue-chat .web__msg--file h2{margin:0;width:100%;text-align:center;line-height:80px;background-color:#409eff;color:#fff}.avue-chat .web__msg--map{height:160px}.avue-chat .web__msg-input{display:block;width:100%;height:60px;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;resize:none;outline:0;background-color:#fff;border:0;word-break:break-all;font-size:13px;line-height:17px;-webkit-appearance:none}.avue-chat .web__msg-input,.avue-chat .web__tools,.avue-form,.avue-form__menu{-webkit-box-sizing:border-box}.avue-chat .web__msg-submit{float:right;display:block;outline:0;cursor:pointer;text-align:center}.avue-chat .web__tools{padding:8px 10px 0;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-chat .web__tools i{margin-right:12px;font-size:20px;color:#888a91}.avue-chat .web__tools i:hover{color:#76b1f9}.avue-draggable{padding:10px;position:absolute;cursor:move;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.avue-draggable__focus{opacity:0;position:absolute!important;top:0;left:0;z-index:-1024}.avue-draggable__mask{width:100%;height:100%;border:0;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.avue-draggable--active{cursor:move;border:1px dashed #09f;background-color:rgba(115,170,229,.5)}.avue-draggable--move{opacity:.6;background-color:rgba(115,170,229,.5)}.avue-draggable--click{cursor:pointer}.avue-draggable__line--left{position:absolute;border-top:1px dashed #09f;width:10000px;height:0;top:0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.avue-draggable__line--top{position:absolute;border-left:1px dashed #09f;width:0;height:10000px;left:0;-webkit-transform:translateY(-100%);transform:translateY(-100%)}.avue-draggable__line--label{top:-5px;left:-8px;position:absolute;padding:5px;-webkit-transform:translate(-100%,-100%);transform:translate(-100%,-100%);color:#09f;font-size:18px;white-space:nowrap;cursor:move}.avue-draggable__menu,.avue-image-preview .el-image-viewer__close i,.avue-image-preview__file a{color:#fff}.avue-draggable__menu{position:absolute;top:0;left:0;background-color:#409eff;font-size:25px;z-index:9999;cursor:pointer}.avue-draggable__range{position:absolute;width:10px;height:10px;border-radius:100%;z-index:9999;background-color:#09f}.avue-draggable__range--left,.avue-draggable__range--right{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.avue-draggable__range--left:hover,.avue-draggable__range--right:hover{cursor:ew-resize}.avue-draggable__range--left{left:-6px}.avue-draggable__range--right{right:-6px}.avue-draggable__range--bottom,.avue-draggable__range--top{left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.avue-draggable__range--bottom:hover,.avue-draggable__range--top:hover{cursor:ns-resize}.avue-draggable__range--top{top:-6px}.avue-draggable__range--bottom{bottom:-6px}.avue-draggable__range--bottom-right:hover,.avue-draggable__range--top-left:hover{cursor:nwse-resize}.avue-draggable__range--bottom-left:hover,.avue-draggable__range--top-right:hover{cursor:nesw-resize}.avue-draggable__range--top-right{top:-6px;right:-6px}.avue-draggable__range--top-left{top:-6px;left:-6px}.avue-draggable__range--bottom-right{bottom:-6px;right:-6px}.avue-draggable__range--bottom-left{bottom:-6px;left:-6px}.avue-img--center{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-img--fullscreen .el-dialog__body{height:100%}.avue-image-preview{position:fixed;top:0;left:0;width:100%;height:100%;-webkit-transition:all .5s;transition:all .5s;z-index:9998}.avue-image-preview .el-image-viewer__btn{z-index:1024}.avue-image-preview img{-webkit-transition:all .5s;transition:all .5s;cursor:pointer}.avue-image-preview__file{text-align:center}.avue-image-preview__file i{font-size:80px}.avue-image-preview__mask{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5)}.avue-image-preview__box{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-image-preview__box .el-carousel{width:90%;height:100%}.avue-image-preview__box .el-carousel__container{height:100%}.avue-image-preview__box .el-carousel__item{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-input-tree .el-tag__close{display:none!important}.avue-input-tree__desc{float:right;color:#8492a6;font-size:13px}.avue-input-table__crud .avue-crud__pagination{padding:10px 0 2px 10px;margin:0}.amap-icon img,.amap-marker-content img{width:25px;height:34px}.avue-input-map__marker{position:absolute;top:-20px;right:-118px;color:#fff;padding:4px 10px;-webkit-box-shadow:1px 1px 1px rgba(10,10,10,.2);box-shadow:1px 1px 1px rgba(10,10,10,.2);white-space:nowrap;font-size:12px;background-color:#25a5f7;border-radius:3px}.avue-input-map__content-input{margin-bottom:10px}.avue-input-map__content-box{position:relative}.avue-input-map__content-container{width:100%;height:450px}.avue-input-map__content-result{display:block!important;position:absolute;top:0;right:-8px;width:250px;height:450px;overflow-y:auto}.avue-input-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:distribute;justify-content:space-around}.avue-input-icon__item{text-align:center;width:60px;padding:10px 20px 0;-webkit-transition:all .2s;transition:all .2s}.avue-input-icon__item p{font-size:12px;margin-top:5px}.avue-input-icon__item--active,.avue-input-icon__item:hover{-webkit-transform:scale(1.4);transform:scale(1.4)}.avue-input-icon__item--active{color:#409eff}.avue-input-icon__list{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.avue-input-icon__icon{font-size:32px!important}.avue-input-icon__icon-symbol{width:32px;height:32px;margin:0 auto;fill:currentColor;overflow:hidden}.avue-upload--upload .el-upload,.avue-upload--upload .el-upload__tip{display:none}.avue-upload--upload .el-upload--picture-img{display:inline-block}.avue-upload--upload .el-upload-list{margin-top:-6px}.avue-upload--list .el-upload{border:1px dashed #d9d9d9;border-radius:6px;cursor:pointer;position:relative;overflow:hidden}.avue-upload--list .el-upload:hover{border-color:#409eff}.avue-upload__dialog .el-dialog__header{display:none}.avue-upload__dialog .el-dialog__body{padding:10px}.avue-upload__dialog .el-dialog__body,.avue-upload__menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-upload__menu{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:1024}.avue-form,.avue-form__group .el-col{position:relative}.avue-upload__menu i{color:#fff;margin:0 8px;font-size:20px}.avue-upload__icon{font-size:28px;color:#8c939d;width:178px;height:178px;line-height:178px;text-align:center}.avue-upload__avatar{width:178px;height:178px;display:block}.avue-form{margin:0 auto;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-form__item--top{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.avue-form__item--top .el-form-item__label{width:100%!important;text-align:left!important}.avue-form__item--top .el-form-item__content{margin-left:0!important}.avue-form__item--left .el-form-item__label{text-align:left!important}.avue-empty,.avue-flow__node-body,.avue-form__menu--center{text-align:center}.avue-form__menu{padding:5px 10px 0;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-form__menu--center .el-button{margin:0 5px}.avue-form__menu--left{text-align:left}.avue-form__menu--right{text-align:right}.avue-form__tabs{padding:0 10px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-form__group{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-ms-flex-wrap:wrap;flex-wrap:wrap;height:auto}.avue-form__group--flex{display:-webkit-box;display:-ms-flexbox;display:flex}.avue-form__line{display:inline-block;height:100%}.avue-form__row--block{width:100%;display:block}.avue-flow__node,.avue-flow__node-body{display:-webkit-box;display:-ms-flexbox}.avue-form__row--cursor{cursor:pointer}.avue-form__option{position:absolute;right:0;top:-10px;z-index:999}.avue-flow,.avue-flow__node,.avue-tree{position:relative}.avue-form__option i{color:#666}.avue-form__option i+i{margin-left:10px}.el-drawer .avue-form{padding:0 20px}.avue-flow .avue-draggable{padding:0}.avue-flow__node{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:200px;height:80px;border-radius:5px;-webkit-box-shadow:"#66a6e0 0px 0px 12px 0px";box-shadow:"#66a6e0 0px 0px 12px 0px";border:1px solid #eee;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.avue-flow__node--active{border-width:2px;border-color:#f56c6c}.avue-flow__node-drag{margin:0 5px;display:inline-block}.avue-flow__node-header{-webkit-box-flex:1;-ms-flex:1;flex:1;background-color:#66a6e0}.avue-flow__node-body{-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-flex:1.5;-ms-flex:1.5;flex:1.5;background:#fff}.avue-date__group,.avue-flow__node-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center}.avue-date__group{-ms-flex-align:center}.avue-date__radio .el-radio-button:last-child .el-radio-button__inner{border-radius:0;border-right:0}.avue-date__date{width:300px}.avue-date__date .el-date-editor{border-top-left-radius:0;border-bottom-left-radius:0}.avue-empty{margin:0 8px;font-size:14px;line-height:22px}.avue-checkbox .el-checkbox+.el-checkbox,.avue-crud .avue-crud__left .el-button+.el-button,.avue-crud .avue-crud__right .el-button+.el-button,.avue-form .avue-crud__left .el-button+.el-button,.avue-form .avue-crud__right .el-button+.el-button,.avue-radio .el-radio+.el-radio{margin-left:0}.avue-checkbox .el-checkbox,.avue-radio .el-radio{margin-right:10px}.avue-empty__image{height:100px;margin-bottom:8px}.avue-empty__image img{height:100%;vertical-align:middle;border-style:none}.avue-empty__desc{color:rgba(0,0,0,.65)}.avue-select .sortable-ghost{opacity:.8;color:#fff!important;background:#409eff!important}.avue-select .el-tag{cursor:pointer}.avue-select__desc{float:right;color:#8492a6;font-size:13px}.el-select-dropdown .avue-select__check{-webkit-box-sizing:border-box;box-sizing:border-box;text-align:right;width:100%;padding:3px 20px 3px 0}.avue-group{width:100%}.avue-group .el-collapse,.avue-group .el-collapse-item__wrap{border-color:#fff}.avue-group .el-collapse-item__header{height:inherit;border:none;border-bottom:1px solid #eee;margin-bottom:20px}.avue-group .el-collapse-item__content,.avue-group .van-collapse-item__content{padding-bottom:0}.avue-group .van-collapse-item__content{padding:0 2px}.avue-group--arrow .el-collapse-item__arrow,.avue-group--arrow .van-icon-arrow,.avue-group .van-hairline--top-bottom:after,.avue-group .van-hairline-unset--top-bottom:after{display:none}.avue-group .van-collapse-item__title{padding:0 10px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.avue-group .van-collapse-item__title:after{left:0!important}.avue-group--none{margin:0!important;border:none!important}.avue-group--header .el-collapse-item__header,.avue-group--header .van-collapse-item__title{display:none}.avue-group--collapse .el-collapse-item__arrow,.avue-group--collapse .el-collapse-item__header{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.avue-group__header,.avue-tree__filter{display:-webkit-box;display:-ms-flexbox}.avue-group__item{margin-bottom:10px;background-color:#fff;border-bottom:1px solid #eee;border-radius:5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-group__item:last-child{border-bottom:none}.avue-group__header{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:50px;line-height:50px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-group__icon{margin-right:8px;font-size:20px;color:rgba(0,0,0,.85)}.avue-group__title{font-size:16px;font-weight:500;color:rgba(0,0,0,.85)}.avue-tree__menu{width:200px;position:fixed;z-index:1024;-ms-flex-wrap:wrap;flex-wrap:wrap;background-color:#fff}.avue-tree__item,.avue-video{position:relative;overflow:hidden}.avue-tree__dialog .el-dialog__body{padding:30px 20px 0}.avue-tree__item{height:34px;line-height:34px;outline:0;padding:0 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;color:#666}.avue-tree__item:hover{cursor:pointer;color:#409eff}.avue-tree__filter{margin-bottom:5px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.avue-tree__content{padding:5px 0;height:calc(100% - 32px)}.avue-title p{font-weight:700;font-size:18px;margin:5px 10px}.avue-search{padding:0 20px}.avue-search__item{padding:20px 0 10px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;border-bottom:1px dashed #e8e8e8}.avue-search__item:last-child{border-bottom:none}.avue-search__tags{padding:0 12px;margin-right:24px;margin-bottom:12px;font-size:14px;color:rgba(0,0,0,.65);cursor:pointer;white-space:nowrap;display:inline-block}.avue-search__tags:hover{color:#1890ff}.avue-search__tags--active{color:#fff;background-color:#1890ff;border-radius:5px}.avue-search__tags--active:hover{opacity:.85;color:#fff}.avue-search__title{margin:0;padding:0 20px;width:120px;font-size:14px;text-align:right;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-search__content{width:calc(100% - 190px);display:inline-block}.avue-search__content .el-tag{margin-right:10px;margin-bottom:10px}.avue-video{width:500px}.avue-video__border span{position:absolute;width:30px;height:30px;border-width:4px;color:#0073eb;border-style:solid}.avue-video__border span:first-child{left:15px;top:15px;border-right:0;border-bottom:0}.avue-video__border span:nth-child(2){right:15px;top:15px;border-left:0;border-bottom:0}.avue-video__border span:nth-child(3){bottom:15px;left:15px;border-right:0;border-top:0}.avue-video__border span:nth-child(4){bottom:15px;right:15px;border-left:0;border-top:0}.avue-video__img{width:100px;position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.avue-video__main{width:100%}.avue-dynamic__item{margin-bottom:10px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.avue-dynamic__header{padding-left:40px}.avue-dynamic__row{position:relative;border-top:1px dashed #eee;padding-top:13px}.avue-dynamic__row:first-child{border-top:0}.avue-dynamic__menu{position:absolute;right:0;z-index:1024}.avue-dynamic__input{margin-right:8px;width:100%}.avue-dynamic__button{margin-bottom:0!important}.avue-verify__item{padding:5px 10px;display:inline-block;margin:0 4px;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #e1e1e1;font-size:64px;text-align:center}.avue-text-ellipsis__more{padding:0 2px}.avue-login .el-form-item{margin-bottom:18px}.avue-login .el-input-group__append{padding:0;overflow:hidden}.avue-login__send{min-width:150px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-login__send:hover{color:#c0c4cc!important;border-color:#ebeef5!important;background-color:#f5f7fa!important}.avue-login__submit{width:100%}.avue-keyboard--default .akeyboard-keyboard{height:100%;width:100%;background:#f0f0f0;border-radius:5px;padding:9px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--default .akeyboard-keyboard-innerKeys{text-align:center}.avue-keyboard--default .akeyboard-keyboard-keys{height:40px;min-width:40px;padding:0 10px;border-radius:5px;background:#fff;display:inline-block;line-height:40px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.avue-keyboard--default .akeyboard-keyboard-keys:hover,.avue-keyboard--default .keyboard-keyboard-keys-focus{background:#1e9fff;color:#fff}.avue-keyboard--default .akeyboard-keyboard-keys-Delete,.avue-keyboard--default .akeyboard-keyboard-keys-Tab{width:80px}.avue-keyboard--default .akeyboard-keyboard-keys-Caps{width:77px}.avue-keyboard--default .akeyboard-keyboard-keys-Enter{width:90px}.avue-keyboard--default .akeyboard-keyboard-keys-Shift{width:106px}.avue-keyboard--default .akeyboard-keyboard-keys-Space{width:350px}.avue-keyboard--default .akeyboard-keyboard-fixedBottomCenter{width:100%!important;height:auto!important;position:fixed;bottom:0;left:0;border-radius:0!important}.avue-keyboard--default .akeyboard-numberKeyboard{height:100%;width:100%;background:#f0f0f0;border-radius:5px;padding:10px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--default .akeyboard-numberKeyboard-keys-Enter{height:40px;width:100px}.avue-keyboard--default .akeyboard-mobileKeyboard{height:100%;width:100%;background:#f0f0f0;border-radius:5px;padding:11px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--default .akeyboard-mobileKeyboard-keys,.avue-keyboard--green .akeyboard-keyboard-keys{padding:0 10px;-moz-user-select:none;-ms-user-select:none;text-align:center;cursor:pointer;display:inline-block}.avue-keyboard--default .akeyboard-mobileKeyboard-keys{height:25px;min-width:25px;border-radius:3px;background:#fff;line-height:25px;-webkit-box-sizing:border-box;box-sizing:border-box;margin:3px 2px 2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:10px}.avue-keyboard--default .akeyboard-mobileKeyboard-keys:hover{background:#1e9fff!important;color:#fff}.avue-keyboard--default .akeyboard-mobileKeyboard-keys-⇦,.avue-keyboard--default .akeyboard-mobileKeyboard-keys-⇧{width:25px;background-color:#999faf}.avue-keyboard--default .akeyboard-mobileKeyboard-keys-Space{height:28px;width:100px;line-height:28px;margin-left:55px}.avue-keyboard--default .akeyboard-mobileKeyboard-keys-Enter{height:28px;width:55px;line-height:28px;background:#1e9fff!important;color:#fff}.avue-keyboard--default .akeyboard-mobileKeyboard-keys-focus{background:#1e9fff!important;color:#fff}.avue-keyboard--green .akeyboard-keyboard{height:100%;width:100%;background:#030;border-radius:5px;padding:9px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--green .akeyboard-keyboard-innerKeys{text-align:center}.avue-keyboard--green .akeyboard-keyboard-keys{height:40px;min-width:40px;border-radius:5px;background:#cc9;line-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;margin:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.avue-keyboard--green .akeyboard-keyboard-keys:hover,.avue-keyboard--green .keyboard-keyboard-keys-focus{background:#693;color:#fff}.avue-keyboard--green .akeyboard-keyboard-keys-Delete,.avue-keyboard--green .akeyboard-keyboard-keys-Tab{width:80px}.avue-keyboard--green .akeyboard-keyboard-keys-Caps{width:77px}.avue-keyboard--green .akeyboard-keyboard-keys-Enter{width:90px}.avue-keyboard--green .akeyboard-keyboard-keys-Shift{width:106px}.avue-keyboard--green .akeyboard-keyboard-keys-Space{width:350px}.avue-keyboard--green .akeyboard-keyboard-fixedBottomCenter{width:100%!important;height:auto!important;position:fixed;bottom:0;left:0;border-radius:0!important}.avue-keyboard--green .akeyboard-numberKeyboard{height:100%;width:100%;background:#030;border-radius:5px;padding:10px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--green .akeyboard-numberKeyboard-keys-Enter{height:40px;width:100px}.avue-keyboard--green .akeyboard-mobileKeyboard{height:100%;width:100%;background:#030;border-radius:5px;padding:11px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--green .akeyboard-mobileKeyboard-keys{height:25px;min-width:25px;padding:0 10px;border-radius:3px;background:#cc9;display:inline-block;line-height:25px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:3px 2px 2px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:10px}.avue-keyboard--green .akeyboard-mobileKeyboard-keys:hover{background:#693!important;color:#fff}.avue-keyboard--green .akeyboard-mobileKeyboard-keys-⇦,.avue-keyboard--green .akeyboard-mobileKeyboard-keys-⇧{width:25px;background-color:#999faf}.avue-keyboard--green .akeyboard-mobileKeyboard-keys-Space{height:28px;width:100px;line-height:28px;margin-left:55px}.avue-keyboard--green .akeyboard-mobileKeyboard-keys-Enter{height:28px;width:55px;line-height:28px;background:#693!important;color:#fff}.avue-keyboard--green .akeyboard-mobileKeyboard-keys-focus{background:#693!important;color:#fff}.avue-keyboard--dark .akeyboard-keyboard{height:100%;width:100%;background:#000;color:#fff;border-radius:5px;padding:9px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--dark .akeyboard-keyboard-innerKeys{text-align:center}.avue-keyboard--dark .akeyboard-keyboard-keys{height:40px;min-width:40px;padding:0 10px;border-radius:5px;background:#393d49;color:#fff;display:inline-block;line-height:40px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.avue-keyboard--dark .akeyboard-keyboard-keys:hover,.avue-keyboard--dark .keyboard-keyboard-keys-focus{background:#1e9fff}.avue-keyboard--dark .akeyboard-keyboard-keys-Delete,.avue-keyboard--dark .akeyboard-keyboard-keys-Tab{width:80px}.avue-keyboard--dark .akeyboard-keyboard-keys-Caps{width:77px}.avue-keyboard--dark .akeyboard-keyboard-keys-Enter{width:90px}.avue-keyboard--dark .akeyboard-keyboard-keys-Shift{width:106px}.avue-keyboard--dark .akeyboard-keyboard-keys-Space{width:350px}.avue-keyboard--dark .akeyboard-keyboard-fixedBottomCenter{width:100%!important;height:auto!important;position:fixed;bottom:0;left:0;border-radius:0!important}.avue-keyboard--dark .akeyboard-numberKeyboard{height:100%;width:100%;background:#000;border-radius:5px;padding:10px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--dark .akeyboard-numberKeyboard-keys-Enter{height:40px;width:100px}.avue-keyboard--dark .akeyboard-mobileKeyboard{height:100%;width:100%;background:#000;border-radius:5px;padding:11px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys{height:25px;min-width:25px;padding:0 10px;border-radius:3px;background:#393d49;color:#fff;display:inline-block;line-height:25px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:3px 2px 2px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:10px}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys:hover{background:#1e9fff!important;color:#fff}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys-⇦,.avue-keyboard--dark .akeyboard-mobileKeyboard-keys-⇧{width:25px;background-color:#999faf}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys-Space{height:28px;width:100px;line-height:28px;margin-left:55px}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys-Enter{height:28px;width:55px;line-height:28px;background:#1e9fff!important;color:#fff}.avue-keyboard--dark .akeyboard-mobileKeyboard-keys-focus{background:#1e9fff!important;color:#fff}.avue-keyboard--classic .akeyboard-keyboard{height:100%;width:100%;background:#2f4056;border-radius:5px;padding:9px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--classic .akeyboard-keyboard-innerKeys{text-align:center}.avue-keyboard--classic .akeyboard-keyboard-keys{height:40px;min-width:40px;padding:0 10px;border-radius:5px;background:#fff;display:inline-block;line-height:40px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.avue-keyboard--classic .akeyboard-keyboard-keys:hover,.avue-keyboard--classic .keyboard-keyboard-keys-focus{background:#c2c2c2;color:#fff}.avue-keyboard--classic .akeyboard-keyboard-keys-Delete,.avue-keyboard--classic .akeyboard-keyboard-keys-Tab{width:80px}.avue-keyboard--classic .akeyboard-keyboard-keys-Caps{width:77px}.avue-keyboard--classic .akeyboard-keyboard-keys-Enter{width:90px}.avue-keyboard--classic .akeyboard-keyboard-keys-Shift{width:106px}.avue-keyboard--classic .akeyboard-keyboard-keys-Space{width:350px}.avue-keyboard--classic .akeyboard-keyboard-fixedBottomCenter{width:100%!important;height:auto!important;position:fixed;bottom:0;left:0;border-radius:0!important}.avue-keyboard--classic .akeyboard-numberKeyboard{height:100%;width:100%;background:#2f4056;border-radius:5px;padding:10px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--classic .akeyboard-numberKeyboard-keys-Enter{height:40px;width:100px}.avue-keyboard--classic .akeyboard-mobileKeyboard{height:100%;width:100%;background:#2f4056;border-radius:5px;padding:11px 5px 5px;-webkit-box-sizing:border-box;box-sizing:border-box}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys{height:25px;min-width:25px;padding:0 10px;border-radius:3px;background:#fff;display:inline-block;line-height:25px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:3px 2px 2px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:10px}.avue-array__input,.avue-notice__item{display:-webkit-box;display:-ms-flexbox}.avue-data-operatext .item,.avue-data-operatext .item-row,.avue-data-tabs .item,.data-box .item,.data-card .item-text{-webkit-box-sizing:border-box}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys:hover{background:#c2c2c2!important;color:#fff}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys-⇦,.avue-keyboard--classic .akeyboard-mobileKeyboard-keys-⇧{width:25px;background-color:#999faf}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys-Space{height:28px;width:100px;line-height:28px;margin-left:55px}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys-Enter{height:28px;width:55px;line-height:28px;background:#c2c2c2!important;color:#fff}.avue-keyboard--classic .akeyboard-mobileKeyboard-keys-focus{background:#c2c2c2!important;color:#fff}.avue-notice__item{padding:12px 24px;border-bottom:1px solid #e8eaec;cursor:pointer;-webkit-transition:background-color .2s ease-in-out;transition:background-color .2s ease-in-out;text-align:left;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.avue-notice__content{-webkit-box-flex:1;-ms-flex:1;flex:1}.avue-notice__img{width:38px;height:38px;border-radius:100%;margin-top:5px;margin-right:10px;overflow:hidden}.avue-notice__img img{width:100%;height:100%}.avue-notice__name{line-height:25px}.avue-notice__title{font-size:14px;font-weight:400;line-height:22px;color:#515a6e;margin-bottom:4px}.avue-notice__tag{float:right;margin-top:2px}.avue-notice__subtitle{font-size:12px;color:#808695}.avue-notice__more{cursor:pointer;color:#2d8cf0;text-align:center;padding:10px 0}.avue-array__item{margin-bottom:5px}.avue-array__input{display:-webkit-box;display:-ms-flexbox;display:flex}.avue-array__input .el-input{-webkit-box-flex:1;-ms-flex:auto;flex:auto}.avue-array__input .el-button{margin-left:5px}.avue-data-tabs .item{position:relative;margin:15px;padding:12px;height:160px;border-radius:4px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;color:#fff}.avue-data-tabs .item a{color:#fff}.avue-data-tabs .item-header{position:relative}.avue-data-tabs .item-header>p{color:#fff;margin:0;font-size:14px}.avue-data-tabs .item-header>span{position:absolute;right:0;top:0;padding:2px 8px;border-radius:4px;font-size:12px;background:hsla(0,0%,100%,.3)}.avue-data-tabs .item-body .h2{color:#fff;margin:0;font-size:32px;line-height:60px;font-weight:700}.avue-data-tabs .item-footer{padding-top:8px;line-height:20px}.avue-data-tabs .item-footer>span{font-size:10px}.avue-data-tabs .item-footer>p{color:#fff;margin:0;font-size:12px}.avue-data-tabs .item-tip{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute;width:80px;height:80px;bottom:10px;right:10px;border:2px solid #fff;border-radius:100%;font-size:48px;-webkit-transform:rotate(-40deg);transform:rotate(-40deg);opacity:.1}.avue-data-cardText .item{padding:20px 25px;margin:10px 20px;background:#f8f8f8;border-radius:6px;-webkit-box-shadow:2px 2px 20px #ccc;box-shadow:2px 2px 20px #ccc}.avue-data-cardText .item-header{position:relative}.avue-data-cardText .item-header i{font-size:26px;color:#009688}.avue-data-cardText .item-header a{font-size:16px;margin-left:6px;position:absolute;bottom:4px}.avue-data-cardText .item-content{margin-top:8PX;font-size:14px;line-height:22px;color:#333}.avue-data-cardText .item-footer{position:relative}.avue-data-cardText .item-footer span:first-child{color:#777;font-size:12px;text-overflow:ellipsis;word-break:break-all}.avue-data-cardText .item-footer span:nth-child(2){color:#ccc;font-size:12px;line-height:24px;position:absolute;right:0}.data-box .item{position:relative;margin:0 auto 10px;width:96%;height:100px;overflow:hidden;border-radius:5px;-webkit-box-sizing:border-box;box-sizing:border-box}.data-box .item:hover .item-text{top:0}.data-box .item-icon,.data-box .item a{display:-webkit-box;display:-ms-flexbox;display:flex}.data-box .item-icon{width:100px;height:100px;color:#fff;text-align:center;line-height:100px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.data-box .item-icon i{font-size:48px!important}.data-box .item-info{border-radius:0 5px 5px 0;border:1px solid #eee;border-left:none;background-color:#fff;-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.data-box .item-info .title{font-size:30px;line-height:40px;text-align:center}.data-box .item-info .info{color:#999;font-size:14px;text-align:center}.data-progress .item{margin:10px}.data-progress .item-header{margin-bottom:10px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.data-progress .item-count{line-height:26px;font-size:26px;color:#666}.data-progress .item-title{color:#999;font-size:14px}.data-icons .item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:90%;margin:10px 15px}.data-icons .item-icon{margin-top:3px;margin-right:0!important;text-align:center}.data-icons .item-icon>i{font-size:46px!important}.data-icons .item-info{text-align:center;padding:10px 0}.data-icons .item-info>span{display:block;padding:5px 0;color:#999;font-size:12px}.data-icons .item-info .count{font-size:20px;line-height:25px}.data-icons .item--easy{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.data-icons .item--easy>.item-icon{margin:0}.data-icons .item--easy>.item-info{margin-top:-15px}.data-icons .item--easy>.item-info>span{font-size:14px}.data-card .item{position:relative;margin:0 auto 50px;width:230px;height:340px;overflow:hidden;border-radius:5px;border:1px solid #fff}.data-card .item:hover .item-text{top:0}.data-card .item-img{width:100%;border-radius:5px 5px 0 0}.data-card .item-text{position:absolute;top:150px;padding:20px 15px;width:100%;height:340px;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:0 0 5px 5px;opacity:.9;-webkit-transition:top .4s;transition:top .4s}.data-card .item-text>p{font-size:12px;line-height:25px;text-indent:2em}.avue-data-display .item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:5px 0;text-align:center}.avue-data-display .count{display:block;margin:8px 0 15px;font-weight:700;font-size:32px;color:#15a0ff}.avue-data-display .title{line-height:32px;color:#999}.avue-data-display .splitLine{display:block;margin:0 auto;width:24px;height:1px;background:#9b9b9b}.avue-data-imgtext .item{position:relative;height:340px;width:240px;margin:10px auto 50px;border-radius:5px;-webkit-box-shadow:2px 2px 20px #ccc;box-shadow:2px 2px 20px #ccc}.avue-data-imgtext .item-header img{width:100%;height:170px;background:red;border-radius:5px 5px 0 0}.avue-data-imgtext .item-content{padding:10px 15px;color:#333!important}.avue-data-imgtext .item-content span{font-size:20px}.avue-data-imgtext .item-content:hover span{color:#1890ff}.avue-data-imgtext .item-content p{font-size:14px;height:60px;margin:6px 0;overflow:hidden}.avue-data-imgtext .item-footer{padding:10px 15px;position:relative}.avue-data-imgtext .item-footer img{height:20px;width:20px;border-radius:50%}.avue-data-imgtext .item-footer div{display:inline-block}.avue-data-imgtext .item-footer div li,.avue-data-imgtext .item-footer div ul{padding:0;margin:0 0 0 -8px;list-style:none;display:inline-block;border:2px solid #fff;border-radius:50%}.avue-data-imgtext .item-footer div:first-child{font-size:14px;color:#ccc!important}.avue-data-imgtext .item-footer div:nth-child(2){position:absolute;right:15px}.avue-data-operatext .item{margin:5px 10px;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;border-radius:3px;background:#fff;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1)}.avue-data-operatext .item a{color:#333}.avue-data-operatext .item-header{padding:20px 20px 60px;border-top-right-radius:3px;border-top-left-radius:3px;color:#fff;background-position:50%}.avue-data-operatext .item-title{margin-top:0;margin-bottom:5px;font-size:25px;font-weight:300;text-shadow:0 1px 1px rgba(0,0,0,.2);display:block}.avue-data-operatext .item-subtitle{font-size:14px;font-weight:400}.avue-data-operatext .item-content{border-top:1px solid #f4f4f4;padding:10px 10px 20px;background-color:#fff;border-radius:0 0 3px 3px}.avue-data-operatext .item-img{margin:-60px auto 5px;width:90px;height:90px;border-radius:100%;overflow:hidden;border:4px solid #fff}.avue-data-operatext .item-img img{width:100%;height:100%}.avue-data-operatext .item-list{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.avue-data-operatext .item-row{-webkit-box-sizing:border-box;box-sizing:border-box;width:33.33%;text-align:center}.avue-data-operatext .item-label{margin-bottom:5px;display:block;font-weight:600;font-size:16px}.avue-data-operatext .item-value{display:block;font-weight:300;text-transform:uppercase}.avue-data-rotate .item{margin:5px 10px;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;color:#fff;border-radius:3px}.avue-data-rotate .item-box{padding:10px 20px}.avue-data-rotate .item-count{margin-bottom:5px;font-size:38px;white-space:nowrap;font-weight:300;display:block}.avue-data-rotate .item-title{font-size:15px}.avue-data-rotate .item-icon{-webkit-transition:all .3s linear;transition:all .3s linear;position:absolute;top:20px;right:20px;font-size:65px;color:rgba(0,0,0,.15)}.avue-data-rotate .item-icon:hover{font-size:70px}.avue-data-rotate .item-more{position:relative;text-align:center;padding:3px 0;color:#fff;color:hsla(0,0%,100%,.8);display:block;z-index:10;font-size:14px;letter-spacing:2px;background:rgba(0,0,0,.1);text-decoration:none}.avue-data-pay .item{margin:0 auto;padding-bottom:16px;width:80%;position:relative;border-radius:4px;background-color:#fff;min-height:670px;-webkit-box-shadow:1px 2px 10px #eee;box-shadow:1px 2px 10px #eee}.avue-data-pay .top{width:100%;height:6px;position:absolute;top:0;left:0;border-radius:4px 4px 0 0}.avue-data-pay .header{margin-bottom:40px;text-align:center}.avue-data-pay .title{text-align:center;padding:20px 0 10px;font-size:20px;font-weight:200}.avue-data-pay .money span{margin-right:5px;font-size:14px}.avue-data-pay .money .b{margin-right:2px;font-size:20px;font-weight:700}.data-price .item .body:before,.el-select-dropdown .el-tree-node__label,.el-select-dropdown__item.selected{font-weight:400}.avue-data-pay .money s{margin-right:3px;font-size:12px}.avue-data-pay .money em{font-size:14px;font-style:normal}.avue-data-pay .img{width:50px}.avue-data-pay .line{width:60%;height:1px;background:hsla(0,0%,58.8%,.1);margin:20px auto}.avue-data-pay .btn{display:block;width:120px;height:32px;line-height:32px;margin:0 auto;text-align:center;border-radius:32px;color:#fff;cursor:pointer;-webkit-transition:opacity .2s ease-in-out;transition:opacity .2s ease-in-out}.avue-data-pay .list-item{list-style:none;padding-left:20px;margin-bottom:12px;color:#666;font-size:14px}.avue-data-pay .list-item a{color:#666}.avue-data-pay .list-item-icon{color:#515a6e;margin-right:8px}.avue-data-pay .list-item--link{font-size:12px;color:#2d8cf0}.avue-data-pay .list-item--no,.avue-data-pay .list-item--no+span{color:#c5c8ce}.data-price .item{margin:0 20px;text-align:center;-webkit-box-shadow:2px 3px 15px #eee;box-shadow:2px 3px 15px #eee}.data-price .item:hover{border:1px solid #00a680}.data-price .item:hover .body{color:#fff;background-color:#00a680}.data-price .item:hover .body:after{border-top-color:#00a680}.data-price .item:hover .list{color:#00a680}.data-price .item:hover .price{color:#fff}.data-price .item .title{height:80px;line-height:80px;font-size:18px;color:#333}.data-price .item .body,.data-price .item .price{margin:0 0 50px;line-height:120px;height:120px;color:#6b6b6b}.data-price .item .price{padding:0 8px;font-size:42px}.data-price .item .append{font-size:16px}.data-price .item .body{position:relative;padding:0;background-color:#f4f4f4;font-size:42px}.data-price .item .body:before{content:"\A5";font-size:16px}.data-price .item .body:after{content:"";position:absolute;display:block;width:0;height:0;bottom:-15px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);border-color:#f4f4f4 transparent transparent;border-style:solid;border-width:20px 30px 0}.data-price .item .list{padding-bottom:30px;color:#666;font-size:14px}.avue-data-panel .item{padding:0 30px;margin:0 20px;cursor:pointer;height:108px;font-size:12px;position:relative;overflow:hidden;color:#666;background:#fff;-webkit-box-shadow:4px 4px 40px rgba(0,0,0,.05);box-shadow:4px 4px 40px rgba(0,0,0,.05);border-color:rgba(0,0,0,.05);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.avue--detail .avue-checkbox__all,.avue--detail .el-form-item.is-required:not(.is-no-asterisk) .el-form-item__label-wrap>.el-form-item__label:before,.avue--detail .el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before,.avue--detail .el-input-number__decrease,.avue--detail .el-input-number__increase,.avue--detail .el-input__prefix,.avue--detail .el-input__suffix,.avue-canvas{display:none}.avue-data-panel .item-icon{font-size:52px}.avue-data-panel .item-info{text-align:center}.avue-data-panel .item-title{line-height:18px;color:rgba(0,0,0,.45);font-size:16px;margin-bottom:12px}.avue-data-panel .item-count{font-size:20px}[class^=avue-data-] a,[class^=data-] a{text-decoration:none}body{font-family:Chinese Quote,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol}*{outline:0}.avue-ghost{opacity:.5;background:#c8ebfb}.avue--disabled{color:#ccc}.avue--detail .hover-row td{background-color:#fff!important}.avue--detail .avue-group__header{padding-left:10px}.avue--detail .el-collapse-item__header{margin-bottom:0}.avue--detail .el-input.is-disabled .el-input__inner,.avue--detail .el-range-editor.is-disabled,.avue--detail .el-range-editor.is-disabled input,.avue--detail .el-textarea.is-disabled .el-textarea__inner{color:#606266;background-color:#fff;padding-left:0}.avue--detail .el-input-group__append,.avue--detail .el-input-group__prepend{background-color:transparent;border:none}.avue--detail .el-input__inner,.avue--detail .el-textarea__inner{border:none}.avue--detail .el-input__inner::-webkit-input-placeholder,.avue--detail .el-textarea__inner::-webkit-input-placeholder{color:transparent!important}.avue--detail .el-input__inner::-moz-placeholder,.avue--detail .el-textarea__inner::-moz-placeholder{color:transparent!important}.avue--detail .el-input__inner::-ms-input-placeholder,.avue--detail .el-textarea__inner::-ms-input-placeholder{color:transparent!important}.avue--detail .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:#409eff;border-color:#409eff}.avue--detail .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:#fff}.avue--detail .el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:#409eff;border-color:#409eff}.avue--detail .el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:#fff}.avue--detail .el-checkbox__input.is-disabled+span.el-checkbox__label,.avue--detail .el-radio__input.is-disabled+span.el-radio__label{color:#606266}.avue--detail .el-row{border-top:1px solid #ebeef5;border-left:1px solid #ebeef5}.avue--detail .el-col{padding:0!important;border-bottom:1px solid #ebeef5;border-right:1px solid #ebeef5}.avue--detail .el-form-item--mini.el-form-item,.avue--detail .el-form-item--small.el-form-item{margin:0;background:#fafafa}.avue--detail .el-form-item__content,.avue--detail .el-form-item__label{padding:2px 0}.avue--detail .el-form-item__label{padding-right:20px;color:#909399;-webkit-box-sizing:border-box;box-sizing:border-box}.avue--detail .el-tag{margin-left:0!important;margin-right:6px!important}.avue--detail .el-form-item__content{border-left:1px solid #ebeef5;padding-left:20px;-webkit-box-sizing:border-box;box-sizing:border-box;background-color:#fff}.avue--detail__column .el-form-item{background-color:#fff}.avue--detail__column .el-form-item__label{padding-right:12px}.avue--detail__column .el-form-item__content{padding-left:0;border-left:none}.avue-grid{position:absolute;width:100%;background-size:20px 20px,20px 20px;background-image:linear-gradient(rgba(0,0,0,.1) 1px,transparent 0),linear-gradient(90deg,rgba(0,0,0,.1) 1px,transparent 0)}.avue-grid,.avue-mask{top:0;left:0;height:100%}.avue-mask{position:fixed;bottom:0;right:0;background-color:rgba(55,55,55,.6);z-index:1000}.avue--card{-webkit-box-shadow:2px 1px 8px rgba(0,0,0,.15);box-shadow:2px 1px 8px rgba(0,0,0,.15);border-radius:5px}.avue-dialog{overflow:visible;top:15%}.avue-dialog .el-dialog{min-height:180px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0!important;position:absolute;top:0;left:50%;-webkit-transform:translate(-50%);transform:translate(-50%);border-radius:2px;max-height:calc(100% - 100px);max-width:calc(100% - 100px)}.avue-dialog .el-dialog__header{padding:16px 24px;min-height:20px;border-bottom:1px solid #f0f0f0}.avue-dialog .el-dialog__title,.avue-dialog .el-drawer__header{color:rgba(0,0,0,.85);font-weight:500;word-wrap:break-word}.avue-dialog .el-dialog__body{margin-bottom:50px}.avue-dialog .el-dialog .el-dialog__body{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden;overflow-y:auto}.avue-dialog .el-drawer{position:absolute;right:0;top:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.avue-dialog .el-drawer__header{margin:0;min-height:20px;padding:16px 10px 16px 24px;border-bottom:1px solid #f0f0f0}.avue-dialog .el-drawer,.avue-dialog .el-drawer__body{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:auto}.avue-dialog .el-drawer__body{padding:30px 10px 60px 30px}.avue-dialog__footer{display:block;padding:10px 16px;-webkit-box-sizing:border-box;box-sizing:border-box;border-top:1px solid #f0f0f0;width:100%;position:absolute;left:0;bottom:0;background-color:#fff;text-align:right}.avue-dialog__footer--left{text-align:left}.avue-dialog__footer--center{text-align:center}.avue-dialog--fullscreen .el-dialog{left:0;top:0;-webkit-transform:translate(0);transform:translate(0);width:100%!important;height:100%;max-width:100%;max-height:100%}.avue-crud .el-tooltip__popper,.avue-form .el-tooltip__popper,.el-tooltip__popper{max-width:60%}.avue-dialog--top .el-dialog{top:15%}.avue-dialog--none .el-dialog__body{margin-bottom:0}.avue-queue--block{display:inline-block}.avue-opacity{opacity:0}.avue-opacity--active{opacity:1}.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .3s;transition:opacity .3s}.fade-enter,.fade-leave-to{opacity:0}.avue-crud .avue-input-number,.avue-crud .el-cascader,.avue-crud .el-date-editor.el-input,.avue-crud .el-date-editor.el-input__inner,.avue-crud .el-select,.avue-form .avue-input-number,.avue-form .el-cascader,.avue-form .el-date-editor.el-input,.avue-form .el-date-editor.el-input__inner,.avue-form .el-select{width:100%!important}.avue-crud .el-input-number .el-input__inner,.avue-form .el-input-number .el-input__inner{text-align:left}.avue-crud .avue-crud__left .el-button,.avue-crud .avue-crud__right .el-button,.avue-form .avue-crud__left .el-button,.avue-form .avue-crud__right .el-button{margin-right:5px;margin-bottom:0}.avue-crud .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content,.avue-form .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{color:#409eff}.avue-crud .el-tree-node__label,.avue-form .el-tree-node__label{margin-left:8px}.avue-crud .el-input__inner,.avue-form .el-input__inner{height:38px;line-height:38px}.avue-crud .el-range-editor--small,.avue-form .el-range-editor--small{height:32px;line-height:32px}.avue-crud .el-range-editor--mini,.avue-form .el-range-editor--mini{height:28px;line-height:28px}.avue-crud .el-input--small input,.avue-form .el-input--small input{height:32px;line-height:32px}.avue-crud .el-input--mini input,.avue-form .el-input--mini input{height:28px;line-height:28px}.avue-crud .el-table--medium td,.avue-form .el-table--medium td{padding:7px 0!important}.avue-crud .el-dropdown-menu__item,.avue-form .el-dropdown-menu__item{line-height:25px}.avue-crud .el-table-filter__list,.avue-form .el-table-filter__list{width:100%;height:300px;overflow-y:auto}.el-form-item--mini .el-color-picker--mini,.el-form-item--mini .el-color-picker--mini .el-color-picker__trigger{width:23px;height:23px}.el-dropdown-menu .el-button--text{width:100%!important}.el-pagination__editor.el-input .el-input__inner{line-height:28px}.el-drawer__body{height:100%}.el-checkbox:last-of-type{margin-right:8px}.el-table colgroup.gutter,.el-table th.gutter{display:table-cell!important}.el-input-number .el-input__suffix{display:none}.el-input-number__decrease,.el-input-number__increase{background-color:transparent}.el-tree-node.is-current>.el-tree-node__content{color:#409eff;background-color:#f5f7fa}.el-select-dropdown .el-scrollbar .el-scrollbar__view .el-select-dropdown__item{height:auto;padding:0}.el-select-dropdown .el-scrollbar .el-scrollbar__view .el-select-dropdown__item>span{padding:0 20px}.el-select-dropdown ul li>>>.el-tree .el-tree-node__content{height:auto;padding:0 20px}.el-select-dropdown .el-tree>>>.is-current .el-tree-node__label{color:#409eff;font-weight:700}.el-select-dropdown .el-tree>>>.is-current .el-tree-node__children .el-tree-node__label{color:#606266;font-weight:400}.el-form-item.is-error .avue-dynamic{border:1px solid #f56c6c;border-radius:3px}.el-dropdown-menu__item{padding-top:3px!important;padding-bottom:3px!important}.avue-theme--dark body{background:#000}.avue-theme--dark .el-pagination.is-background .btn-next,.avue-theme--dark .el-pagination.is-background .btn-prev,.avue-theme--dark .el-pagination.is-background .el-pager li{background-color:#151518;color:#525256;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #313135}.avue-theme--dark .el-pagination.is-background .el-pager li:not(.disabled).active{background-color:#151518;border-color:#409eff}.avue-theme--dark .el-cascader-menu{border-right:1px solid #313135}.avue-theme--dark .el-select-dropdown.is-multiple .el-select-dropdown__item.selected,.avue-theme--dark .el-select-dropdown.is-multiple .el-select-dropdown__item.selected.hover{background-color:#151518}.avue-theme--dark .el-cascader__dropdown,.avue-theme--dark .el-input__inner,.avue-theme--dark .el-range-input,.avue-theme--dark .el-select-dropdown{background-color:#151518;color:#999;border:1px solid #313135}.avue-theme--dark .el-cascader__dropdown:hover,.avue-theme--dark .el-input__inner:hover,.avue-theme--dark .el-range-input:hover,.avue-theme--dark .el-select-dropdown:hover{border-color:#409eff}.avue-theme--dark .el-cascader__dropdown::-webkit-input-placeholder,.avue-theme--dark .el-input__inner::-webkit-input-placeholder,.avue-theme--dark .el-range-input::-webkit-input-placeholder,.avue-theme--dark .el-select-dropdown::-webkit-input-placeholder{color:#525256}.avue-theme--dark .el-cascader__dropdown:-moz-placeholder,.avue-theme--dark .el-cascader__dropdown::-moz-placeholder,.avue-theme--dark .el-input__inner:-moz-placeholder,.avue-theme--dark .el-input__inner::-moz-placeholder,.avue-theme--dark .el-range-input:-moz-placeholder,.avue-theme--dark .el-range-input::-moz-placeholder,.avue-theme--dark .el-select-dropdown:-moz-placeholder,.avue-theme--dark .el-select-dropdown::-moz-placeholder{color:#525256}.avue-theme--dark .el-cascader__dropdown:-ms-input-placeholder,.avue-theme--dark .el-input__inner:-ms-input-placeholder,.avue-theme--dark .el-range-input:-ms-input-placeholder,.avue-theme--dark .el-select-dropdown:-ms-input-placeholder{color:#525256}.avue-theme--dark .el-form-item__label{color:#9a9a9f}.avue-theme--dark .el-switch__core{background:#151518;border-color:#151518}.avue-theme--dark .avue-group__item{background-color:#000}.avue-theme--dark .el-table--border,.avue-theme--dark .el-table--group{border-color:#313135}.avue-theme--dark .el-table__body tr.current-row>td,.avue-theme--dark .el-table__body tr.hover-row>td{background-color:#151518}.avue-theme--dark .el-table--border td,.avue-theme--dark .el-table--border th,.avue-theme--dark .el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed{border-color:#999}.avue-theme--dark .avue-crud .el-table th,.avue-theme--dark .el-table,.avue-theme--dark .el-table__fixed-footer-wrapper tbody td,.avue-theme--dark .el-table__footer-wrapper tbody td,.avue-theme--dark .el-table__header-wrapper tbody td,.avue-theme--dark .el-table th,.avue-theme--dark .el-table tr{background-color:#151518;color:#999;border-color:#999}@media screen and (max-width:992px){.el-dialog__footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-button+.el-button{margin-left:0}.avue-upload__avatar,.avue-upload__icon,.el-upload--picture-card,.el-upload-list--picture-card .el-upload-list__item{width:100px;height:100px;line-height:100px}.avue-crud .el-form-item,.avue-crud__title .avue-date__radio,.avue-crud__title .avue-date__radio .el-radio-group .el-radio-button__inner,.avue-crud__title .avue-date__radio .el-radio-group label{width:100%}.avue-tip{display:none}.avue-crud__menu,.avue-crud__title{display:block!important}.avue-crud .el-form-item__label{-webkit-box-flex:1;-ms-flex:1;flex:1}.avue-crud .el-form-item__content{-webkit-box-flex:5;-ms-flex:5;flex:5}.avue-crud__searchMenu{text-align:center}.avue-crud__title p{margin-bottom:20px}.avue-crud__title .avue-date__group{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.avue-crud__title .avue-date__date{display:none}.avue-crud__title .avue-date__radio .el-radio-group{display:-webkit-box;display:-ms-flexbox;display:flex}.avue-crud__title .avue-date__radio .el-radio-button:last-child .el-radio-button__inner{border-radius:0 4px 4px 0;border-right:1px solid #dcdfe6}}#nprogress{pointer-events:none}#nprogress .bar{background:#29d;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;-webkit-box-shadow:0 0 10px #29d,0 0 5px #29d;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;-webkit-transform:rotate(3deg) translateY(-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border-color:#29d transparent transparent #29d;border-style:solid;border-width:2px;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/fonts/iconfont.36da2e0.woff2 b/pigx-visual/pigx-report-platform/src/main/resources/static/static/fonts/iconfont.36da2e0.woff2 index bba1797f1..6cef45873 100644 Binary files a/pigx-visual/pigx-report-platform/src/main/resources/static/static/fonts/iconfont.36da2e0.woff2 and b/pigx-visual/pigx-report-platform/src/main/resources/static/static/fonts/iconfont.36da2e0.woff2 differ diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/img/iconfont.c6ec5b6.svg b/pigx-visual/pigx-report-platform/src/main/resources/static/static/img/iconfont.c6ec5b6.svg index 3964a24c6..8742cf6c9 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/img/iconfont.c6ec5b6.svg +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/img/iconfont.c6ec5b6.svg @@ -19,337 +19,337 @@ Created by iconfont descent="-128" /> - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/1kog.eca4caaa.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/1kog.eca4caaa.js index 47f41cf31..3b29a903f 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/1kog.eca4caaa.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/1kog.eca4caaa.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["1kog"],{"1kog":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return r});var o={wordPattern:/(#?-?\d*\.\d\w*%?)|((::|[@#.!:])?[\w-?]+%?)|::|[@#.!:]/g,comments:{blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},r={defaultToken:"",tokenPostfix:".css",ws:"[ \t\n\r\f]*",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.bracket"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@selector"}],selector:[{include:"@comments"},{include:"@import"},{include:"@strings"},["[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",{token:"keyword",next:"@keyframedeclaration"}],["[@](page|content|font-face|-moz-document)",{token:"keyword"}],["[@](charset|namespace)",{token:"keyword",next:"@declarationbody"}],["(url-prefix)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],["(url)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],{include:"@selectorname"},["[\\*]","tag"],["[>\\+,]","delimiter"],["\\[",{token:"delimiter.bracket",next:"@selectorattribute"}],["{",{token:"delimiter.bracket",next:"@selectorbody"}]],selectorbody:[{include:"@comments"},["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))","attribute.name","@rulevalue"],["}",{token:"delimiter.bracket",next:"@pop"}]],selectorname:[["(\\.|#(?=[^{])|%|(@identifier)|:)+","tag"]],selectorattribute:[{include:"@term"},["]",{token:"delimiter.bracket",next:"@pop"}]],term:[{include:"@comments"},["(url-prefix)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],["(url)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],{include:"@functioninvocation"},{include:"@numbers"},{include:"@name"},["([<>=\\+\\-\\*\\/\\^\\|\\~,])","delimiter"],[",","delimiter"]],rulevalue:[{include:"@comments"},{include:"@strings"},{include:"@term"},["!important","keyword"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],warndebug:[["[@](warn|debug)",{token:"keyword",next:"@declarationbody"}]],import:[["[@](import)",{token:"keyword",next:"@declarationbody"}]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],parenthizedterm:[{include:"@term"},["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],declarationbody:[{include:"@term"},[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[/[^*/]+/,"comment"],[/./,"comment"]],name:[["@identifier","attribute.value"]],numbers:[["-?(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"attribute.value.number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","attribute.value.hex"]],units:[["(em|ex|ch|rem|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","attribute.value.unit","@pop"]],keyframedeclaration:[["@identifier","attribute.value"],["{",{token:"delimiter.bracket",switchTo:"@keyframebody"}]],keyframebody:[{include:"@term"},["{",{token:"delimiter.bracket",next:"@selectorbody"}],["}",{token:"delimiter.bracket",next:"@pop"}]],functioninvocation:[["@identifier\\(",{token:"attribute.value",next:"@functionarguments"}]],functionarguments:[["\\$@identifier@ws:","attribute.name"],["[,]","delimiter"],{include:"@term"},["\\)",{token:"attribute.value",next:"@pop"}]],strings:[['~?"',{token:"string",next:"@stringenddoublequote"}],["~?'",{token:"string",next:"@stringendquote"}]],stringenddoublequote:[["\\\\.","string"],['"',{token:"string",next:"@pop"}],[/[^\\"]+/,"string"],[".","string"]],stringendquote:[["\\\\.","string"],["'",{token:"string",next:"@pop"}],[/[^\\']+/,"string"],[".","string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["1kog"],{"1kog":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return r});var o={wordPattern:/(#?-?\d*\.\d\w*%?)|((::|[@#.!:])?[\w-?]+%?)|::|[@#.!:]/g,comments:{blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},r={defaultToken:"",tokenPostfix:".css",ws:"[ \t\n\r\f]*",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.bracket"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@selector"}],selector:[{include:"@comments"},{include:"@import"},{include:"@strings"},["[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",{token:"keyword",next:"@keyframedeclaration"}],["[@](page|content|font-face|-moz-document)",{token:"keyword"}],["[@](charset|namespace)",{token:"keyword",next:"@declarationbody"}],["(url-prefix)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],["(url)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],{include:"@selectorname"},["[\\*]","tag"],["[>\\+,]","delimiter"],["\\[",{token:"delimiter.bracket",next:"@selectorattribute"}],["{",{token:"delimiter.bracket",next:"@selectorbody"}]],selectorbody:[{include:"@comments"},["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))","attribute.name","@rulevalue"],["}",{token:"delimiter.bracket",next:"@pop"}]],selectorname:[["(\\.|#(?=[^{])|%|(@identifier)|:)+","tag"]],selectorattribute:[{include:"@term"},["]",{token:"delimiter.bracket",next:"@pop"}]],term:[{include:"@comments"},["(url-prefix)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],["(url)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],{include:"@functioninvocation"},{include:"@numbers"},{include:"@name"},["([<>=\\+\\-\\*\\/\\^\\|\\~,])","delimiter"],[",","delimiter"]],rulevalue:[{include:"@comments"},{include:"@strings"},{include:"@term"},["!important","keyword"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],warndebug:[["[@](warn|debug)",{token:"keyword",next:"@declarationbody"}]],import:[["[@](import)",{token:"keyword",next:"@declarationbody"}]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],parenthizedterm:[{include:"@term"},["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],declarationbody:[{include:"@term"},[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[/[^*/]+/,"comment"],[/./,"comment"]],name:[["@identifier","attribute.value"]],numbers:[["-?(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"attribute.value.number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","attribute.value.hex"]],units:[["(em|ex|ch|rem|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","attribute.value.unit","@pop"]],keyframedeclaration:[["@identifier","attribute.value"],["{",{token:"delimiter.bracket",switchTo:"@keyframebody"}]],keyframebody:[{include:"@term"},["{",{token:"delimiter.bracket",next:"@selectorbody"}],["}",{token:"delimiter.bracket",next:"@pop"}]],functioninvocation:[["@identifier\\(",{token:"attribute.value",next:"@functionarguments"}]],functionarguments:[["\\$@identifier@ws:","attribute.name"],["[,]","delimiter"],{include:"@term"},["\\)",{token:"attribute.value",next:"@pop"}]],strings:[['~?"',{token:"string",next:"@stringenddoublequote"}],["~?'",{token:"string",next:"@stringendquote"}]],stringenddoublequote:[["\\\\.","string"],['"',{token:"string",next:"@pop"}],[/[^\\"]+/,"string"],[".","string"]],stringendquote:[["\\\\.","string"],["'",{token:"string",next:"@pop"}],[/[^\\']+/,"string"],[".","string"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/4171.3273b2a2.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/4171.3273b2a2.js index 2d6577ab8..636dfeeb6 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/4171.3273b2a2.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/4171.3273b2a2.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["4171"],{4171:function(e,o,r){"use strict";r.r(o),r.d(o,"conf",function(){return t}),r.d(o,"language",function(){return n});var t={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},n={defaultToken:"",tokenPostfix:".r",roxygen:["@param","@return","@name","@rdname","@examples","@include","@docType","@S3method","@TODO","@aliases","@alias","@assignee","@author","@callGraphDepth","@callGraph","@callGraphPrimitives","@concept","@exportClass","@exportMethod","@exportPattern","@export","@formals","@format","@importClassesFrom","@importFrom","@importMethodsFrom","@import","@keywords","@method","@nord","@note","@references","@seealso","@setClass","@slot","@source","@title","@usage"],constants:["NULL","FALSE","TRUE","NA","Inf","NaN ","NA_integer_","NA_real_","NA_complex_","NA_character_ ","T","F","LETTERS","letters","month.abb","month.name","pi","R.version.string"],keywords:["break","next","return","if","else","for","in","repeat","while","array","category","character","complex","double","function","integer","list","logical","matrix","numeric","vector","data.frame","factor","library","require","attach","detach","source"],special:["\\n","\\r","\\t","\\b","\\a","\\f","\\v","\\'",'\\"',"\\\\"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@numbers"},{include:"@strings"},[/[{}\[\]()]/,"@brackets"],{include:"@operators"},[/#'/,"comment.doc","@roxygen"],[/(^#.*$)/,"comment"],[/\s+/,"white"],[/[,:;]/,"delimiter"],[/@[a-zA-Z]\w*/,"tag"],[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@constants":"constant","@default":"identifier"}}]],roxygen:[[/@\w+/,{cases:{"@roxygen":"tag","@eos":{token:"comment.doc",next:"@pop"},"@default":"comment.doc"}}],[/\s+/,{cases:{"@eos":{token:"comment.doc",next:"@pop"},"@default":"comment.doc"}}],[/.*/,{token:"comment.doc",next:"@pop"}]],numbers:[[/0[xX][0-9a-fA-F]+/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?/,"number"]],operators:[[/<{1,2}-/,"operator"],[/->{1,2}/,"operator"],[/%[^%\s]+%/,"operator"],[/\*\*/,"operator"],[/%%/,"operator"],[/&&/,"operator"],[/\|\|/,"operator"],[/<>/,"operator"],[/[-+=&|!<>^~*/:$]/,"operator"]],strings:[[/'/,"string.escape","@stringBody"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/\\./,{cases:{"@special":"string","@default":"error-token"}}],[/'/,"string.escape","@popall"],[/./,"string"]],dblStringBody:[[/\\./,{cases:{"@special":"string","@default":"error-token"}}],[/"/,"string.escape","@popall"],[/./,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["4171"],{4171:function(e,o,r){"use strict";r.r(o),r.d(o,"conf",function(){return t}),r.d(o,"language",function(){return n});var t={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},n={defaultToken:"",tokenPostfix:".r",roxygen:["@param","@return","@name","@rdname","@examples","@include","@docType","@S3method","@TODO","@aliases","@alias","@assignee","@author","@callGraphDepth","@callGraph","@callGraphPrimitives","@concept","@exportClass","@exportMethod","@exportPattern","@export","@formals","@format","@importClassesFrom","@importFrom","@importMethodsFrom","@import","@keywords","@method","@nord","@note","@references","@seealso","@setClass","@slot","@source","@title","@usage"],constants:["NULL","FALSE","TRUE","NA","Inf","NaN ","NA_integer_","NA_real_","NA_complex_","NA_character_ ","T","F","LETTERS","letters","month.abb","month.name","pi","R.version.string"],keywords:["break","next","return","if","else","for","in","repeat","while","array","category","character","complex","double","function","integer","list","logical","matrix","numeric","vector","data.frame","factor","library","require","attach","detach","source"],special:["\\n","\\r","\\t","\\b","\\a","\\f","\\v","\\'",'\\"',"\\\\"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@numbers"},{include:"@strings"},[/[{}\[\]()]/,"@brackets"],{include:"@operators"},[/#'/,"comment.doc","@roxygen"],[/(^#.*$)/,"comment"],[/\s+/,"white"],[/[,:;]/,"delimiter"],[/@[a-zA-Z]\w*/,"tag"],[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@constants":"constant","@default":"identifier"}}]],roxygen:[[/@\w+/,{cases:{"@roxygen":"tag","@eos":{token:"comment.doc",next:"@pop"},"@default":"comment.doc"}}],[/\s+/,{cases:{"@eos":{token:"comment.doc",next:"@pop"},"@default":"comment.doc"}}],[/.*/,{token:"comment.doc",next:"@pop"}]],numbers:[[/0[xX][0-9a-fA-F]+/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?/,"number"]],operators:[[/<{1,2}-/,"operator"],[/->{1,2}/,"operator"],[/%[^%\s]+%/,"operator"],[/\*\*/,"operator"],[/%%/,"operator"],[/&&/,"operator"],[/\|\|/,"operator"],[/<>/,"operator"],[/[-+=&|!<>^~*/:$]/,"operator"]],strings:[[/'/,"string.escape","@stringBody"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/\\./,{cases:{"@special":"string","@default":"error-token"}}],[/'/,"string.escape","@popall"],[/./,"string"]],dblStringBody:[[/\\./,{cases:{"@special":"string","@default":"error-token"}}],[/"/,"string.escape","@popall"],[/./,"string"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/4o0w.57c1bba1.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/4o0w.57c1bba1.js index 8f07185dd..fab111202 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/4o0w.57c1bba1.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/4o0w.57c1bba1.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["4o0w"],{"4o0w":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return s});var o={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\$\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"'",close:"'",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",tokenPostfix:".cs",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["extern","alias","using","bool","decimal","sbyte","byte","short","ushort","int","uint","long","ulong","char","float","double","object","dynamic","string","assembly","is","as","ref","out","this","base","new","typeof","void","checked","unchecked","default","delegate","var","const","if","else","switch","case","while","do","for","foreach","in","break","continue","goto","return","throw","try","catch","finally","lock","yield","from","let","where","join","on","equals","into","orderby","ascending","descending","select","group","by","namespace","partial","class","field","event","method","param","property","public","protected","internal","private","abstract","sealed","static","struct","readonly","volatile","virtual","override","params","get","set","add","remove","operator","true","false","implicit","explicit","interface","enum","null","async","await","fixed","sizeof","stackalloc","unsafe","nameof","when"],namespaceFollows:["namespace","using"],parenFollows:["if","for","while","switch","foreach","using","catch","when"],operators:["=","??","||","&&","|","^","&","==","!=","<=",">=","<<","+","-","*","/","%","!","~","++","--","+=","-=","*=","/=","%=","&=","|=","^=","<<=",">>=",">>","=>"],symbols:/[=>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/[0-9_]*\.[0-9_]+([eE][\-+]?\d+)?[fFdD]?/,"number.float"],[/0[xX][0-9a-fA-F_]+/,"number.hex"],[/0[bB][01_]+/,"number.hex"],[/[0-9_]+/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",next:"@string"}],[/\$\@"/,{token:"string.quote",next:"@litinterpstring"}],[/\@"/,{token:"string.quote",next:"@litstring"}],[/\$"/,{token:"string.quote",next:"@interpolatedstring"}],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],qualified:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/\./,"delimiter"],["","","@pop"]],namespace:[{include:"@whitespace"},[/[A-Z]\w*/,"namespace"],[/[\.=]/,"delimiter"],["","","@pop"]],comment:[[/[^\/*]+/,"comment"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",next:"@pop"}]],litstring:[[/[^"]+/,"string"],[/""/,"string.escape"],[/"/,{token:"string.quote",next:"@pop"}]],litinterpstring:[[/[^"{]+/,"string"],[/""/,"string.escape"],[/{{/,"string.escape"],[/}}/,"string.escape"],[/{/,{token:"string.quote",next:"root.litinterpstring"}],[/"/,{token:"string.quote",next:"@pop"}]],interpolatedstring:[[/[^\\"{]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/{{/,"string.escape"],[/}}/,"string.escape"],[/{/,{token:"string.quote",next:"root.interpolatedstring"}],[/"/,{token:"string.quote",next:"@pop"}]],whitespace:[[/^[ \t\v\f]*#((r)|(load))(?=\s)/,"directive.csx"],[/^[ \t\v\f]*#\w.*$/,"namespace.cpp"],[/[ \t\v\f\r\n]+/,""],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["4o0w"],{"4o0w":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return s});var o={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\$\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"'",close:"'",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",tokenPostfix:".cs",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["extern","alias","using","bool","decimal","sbyte","byte","short","ushort","int","uint","long","ulong","char","float","double","object","dynamic","string","assembly","is","as","ref","out","this","base","new","typeof","void","checked","unchecked","default","delegate","var","const","if","else","switch","case","while","do","for","foreach","in","break","continue","goto","return","throw","try","catch","finally","lock","yield","from","let","where","join","on","equals","into","orderby","ascending","descending","select","group","by","namespace","partial","class","field","event","method","param","property","public","protected","internal","private","abstract","sealed","static","struct","readonly","volatile","virtual","override","params","get","set","add","remove","operator","true","false","implicit","explicit","interface","enum","null","async","await","fixed","sizeof","stackalloc","unsafe","nameof","when"],namespaceFollows:["namespace","using"],parenFollows:["if","for","while","switch","foreach","using","catch","when"],operators:["=","??","||","&&","|","^","&","==","!=","<=",">=","<<","+","-","*","/","%","!","~","++","--","+=","-=","*=","/=","%=","&=","|=","^=","<<=",">>=",">>","=>"],symbols:/[=>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/[0-9_]*\.[0-9_]+([eE][\-+]?\d+)?[fFdD]?/,"number.float"],[/0[xX][0-9a-fA-F_]+/,"number.hex"],[/0[bB][01_]+/,"number.hex"],[/[0-9_]+/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",next:"@string"}],[/\$\@"/,{token:"string.quote",next:"@litinterpstring"}],[/\@"/,{token:"string.quote",next:"@litstring"}],[/\$"/,{token:"string.quote",next:"@interpolatedstring"}],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],qualified:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/\./,"delimiter"],["","","@pop"]],namespace:[{include:"@whitespace"},[/[A-Z]\w*/,"namespace"],[/[\.=]/,"delimiter"],["","","@pop"]],comment:[[/[^\/*]+/,"comment"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",next:"@pop"}]],litstring:[[/[^"]+/,"string"],[/""/,"string.escape"],[/"/,{token:"string.quote",next:"@pop"}]],litinterpstring:[[/[^"{]+/,"string"],[/""/,"string.escape"],[/{{/,"string.escape"],[/}}/,"string.escape"],[/{/,{token:"string.quote",next:"root.litinterpstring"}],[/"/,{token:"string.quote",next:"@pop"}]],interpolatedstring:[[/[^\\"{]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/{{/,"string.escape"],[/}}/,"string.escape"],[/{/,{token:"string.quote",next:"root.interpolatedstring"}],[/"/,{token:"string.quote",next:"@pop"}]],whitespace:[[/^[ \t\v\f]*#((r)|(load))(?=\s)/,"directive.csx"],[/^[ \t\v\f]*#\w.*$/,"namespace.cpp"],[/[ \t\v\f\r\n]+/,""],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/5I7.d3dc27e3.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/5I7.d3dc27e3.js index 90ff0fac1..643d3d810 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/5I7.d3dc27e3.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/5I7.d3dc27e3.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["/5I7"],{"/5I7":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return i}),n.d(t,"language",function(){return o});var i={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},o={tokenPostfix:".pats",defaultToken:"invalid",keywords:["abstype","abst0ype","absprop","absview","absvtype","absviewtype","absvt0ype","absviewt0ype","as","and","assume","begin","classdec","datasort","datatype","dataprop","dataview","datavtype","dataviewtype","do","end","extern","extype","extvar","exception","fn","fnx","fun","prfn","prfun","praxi","castfn","if","then","else","ifcase","in","infix","infixl","infixr","prefix","postfix","implmnt","implement","primplmnt","primplement","import","let","local","macdef","macrodef","nonfix","symelim","symintr","overload","of","op","rec","sif","scase","sortdef","sta","stacst","stadef","static","staload","dynload","try","tkindef","typedef","propdef","viewdef","vtypedef","viewtypedef","prval","var","prvar","when","where","with","withtype","withprop","withview","withvtype","withviewtype"],keywords_dlr:["$delay","$ldelay","$arrpsz","$arrptrsize","$d2ctype","$effmask","$effmask_ntm","$effmask_exn","$effmask_ref","$effmask_wrt","$effmask_all","$extern","$extkind","$extype","$extype_struct","$extval","$extfcall","$extmcall","$literal","$myfilename","$mylocation","$myfunction","$lst","$lst_t","$lst_vt","$list","$list_t","$list_vt","$rec","$rec_t","$rec_vt","$record","$record_t","$record_vt","$tup","$tup_t","$tup_vt","$tuple","$tuple_t","$tuple_vt","$break","$continue","$raise","$showtype","$vcopyenv_v","$vcopyenv_vt","$tempenver","$solver_assert","$solver_verify"],keywords_srp:["#if","#ifdef","#ifndef","#then","#elif","#elifdef","#elifndef","#else","#endif","#error","#prerr","#print","#assert","#undef","#define","#include","#require","#pragma","#codegen2","#codegen3"],irregular_keyword_list:["val+","val-","val","case+","case-","case","addr@","addr","fold@","free@","fix@","fix","lam@","lam","llam@","llam","viewt@ype+","viewt@ype-","viewt@ype","viewtype+","viewtype-","viewtype","view+","view-","view@","view","type+","type-","type","vtype+","vtype-","vtype","vt@ype+","vt@ype-","vt@ype","viewt@ype+","viewt@ype-","viewt@ype","viewtype+","viewtype-","viewtype","prop+","prop-","prop","type+","type-","type","t@ype","t@ype+","t@ype-","abst@ype","abstype","absviewt@ype","absvt@ype","for*","for","while*","while"],keywords_types:["bool","double","byte","int","short","char","void","unit","long","float","string","strptr"],keywords_effects:["0","fun","clo","prf","funclo","cloptr","cloref","ref","ntm","1"],operators:["@","!","|","`",":","$",".","=","#","~","..","...","=>","=<>","=/=>","=>>","=/=>>","<",">","><",".<",">.",".<>.","->","-<>"],brackets:[{open:",(",close:")",token:"delimiter.parenthesis"},{open:"`(",close:")",token:"delimiter.parenthesis"},{open:"%(",close:")",token:"delimiter.parenthesis"},{open:"'(",close:")",token:"delimiter.parenthesis"},{open:"'{",close:"}",token:"delimiter.parenthesis"},{open:"@(",close:")",token:"delimiter.parenthesis"},{open:"@{",close:"}",token:"delimiter.brace"},{open:"@[",close:"]",token:"delimiter.square"},{open:"#[",close:"]",token:"delimiter.square"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],symbols:/[=>]/,digit:/[0-9]/,digitseq0:/@digit*/,xdigit:/[0-9A-Za-z]/,xdigitseq0:/@xdigit*/,INTSP:/[lLuU]/,FLOATSP:/[fFlL]/,fexponent:/[eE][+-]?[0-9]+/,fexponent_bin:/[pP][+-]?[0-9]+/,deciexp:/\.[0-9]*@fexponent?/,hexiexp:/\.[0-9a-zA-Z]*@fexponent_bin?/,irregular_keywords:/val[+-]?|case[+-]?|addr\@?|fold\@|free\@|fix\@?|lam\@?|llam\@?|prop[+-]?|type[+-]?|view[+-@]?|viewt@?ype[+-]?|t@?ype[+-]?|v(iew)?t@?ype[+-]?|abst@?ype|absv(iew)?t@?ype|for\*?|while\*?/,ESCHAR:/[ntvbrfa\\\?'"\(\[\{]/,start:"root",tokenizer:{root:[{regex:/[ \t\r\n]+/,action:{token:""}},{regex:/\(\*\)/,action:{token:"invalid"}},{regex:/\(\*/,action:{token:"comment",next:"lexing_COMMENT_block_ml"}},{regex:/\(/,action:"@brackets"},{regex:/\)/,action:"@brackets"},{regex:/\[/,action:"@brackets"},{regex:/\]/,action:"@brackets"},{regex:/\{/,action:"@brackets"},{regex:/\}/,action:"@brackets"},{regex:/,\(/,action:"@brackets"},{regex:/,/,action:{token:"delimiter.comma"}},{regex:/;/,action:{token:"delimiter.semicolon"}},{regex:/@\(/,action:"@brackets"},{regex:/@\[/,action:"@brackets"},{regex:/@\{/,action:"@brackets"},{regex:/:/,action:{token:"@rematch",next:"@pop"}}],lexing_EXTCODE:[{regex:/^%}/,action:{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}},{regex:/[^%]+/,action:""}],lexing_DQUOTE:[{regex:/"/,action:{token:"string.quote",next:"@pop"}},{regex:/(\{\$)(@IDENTFST@IDENTRST*)(\})/,action:[{token:"string.escape"},{token:"identifier"},{token:"string.escape"}]},{regex:/\\$/,action:{token:"string.escape"}},{regex:/\\(@ESCHAR|[xX]@xdigit+|@digit+)/,action:{token:"string.escape"}},{regex:/[^\\"]+/,action:{token:"string"}}]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["/5I7"],{"/5I7":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return i}),n.d(t,"language",function(){return o});var i={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},o={tokenPostfix:".pats",defaultToken:"invalid",keywords:["abstype","abst0ype","absprop","absview","absvtype","absviewtype","absvt0ype","absviewt0ype","as","and","assume","begin","classdec","datasort","datatype","dataprop","dataview","datavtype","dataviewtype","do","end","extern","extype","extvar","exception","fn","fnx","fun","prfn","prfun","praxi","castfn","if","then","else","ifcase","in","infix","infixl","infixr","prefix","postfix","implmnt","implement","primplmnt","primplement","import","let","local","macdef","macrodef","nonfix","symelim","symintr","overload","of","op","rec","sif","scase","sortdef","sta","stacst","stadef","static","staload","dynload","try","tkindef","typedef","propdef","viewdef","vtypedef","viewtypedef","prval","var","prvar","when","where","with","withtype","withprop","withview","withvtype","withviewtype"],keywords_dlr:["$delay","$ldelay","$arrpsz","$arrptrsize","$d2ctype","$effmask","$effmask_ntm","$effmask_exn","$effmask_ref","$effmask_wrt","$effmask_all","$extern","$extkind","$extype","$extype_struct","$extval","$extfcall","$extmcall","$literal","$myfilename","$mylocation","$myfunction","$lst","$lst_t","$lst_vt","$list","$list_t","$list_vt","$rec","$rec_t","$rec_vt","$record","$record_t","$record_vt","$tup","$tup_t","$tup_vt","$tuple","$tuple_t","$tuple_vt","$break","$continue","$raise","$showtype","$vcopyenv_v","$vcopyenv_vt","$tempenver","$solver_assert","$solver_verify"],keywords_srp:["#if","#ifdef","#ifndef","#then","#elif","#elifdef","#elifndef","#else","#endif","#error","#prerr","#print","#assert","#undef","#define","#include","#require","#pragma","#codegen2","#codegen3"],irregular_keyword_list:["val+","val-","val","case+","case-","case","addr@","addr","fold@","free@","fix@","fix","lam@","lam","llam@","llam","viewt@ype+","viewt@ype-","viewt@ype","viewtype+","viewtype-","viewtype","view+","view-","view@","view","type+","type-","type","vtype+","vtype-","vtype","vt@ype+","vt@ype-","vt@ype","viewt@ype+","viewt@ype-","viewt@ype","viewtype+","viewtype-","viewtype","prop+","prop-","prop","type+","type-","type","t@ype","t@ype+","t@ype-","abst@ype","abstype","absviewt@ype","absvt@ype","for*","for","while*","while"],keywords_types:["bool","double","byte","int","short","char","void","unit","long","float","string","strptr"],keywords_effects:["0","fun","clo","prf","funclo","cloptr","cloref","ref","ntm","1"],operators:["@","!","|","`",":","$",".","=","#","~","..","...","=>","=<>","=/=>","=>>","=/=>>","<",">","><",".<",">.",".<>.","->","-<>"],brackets:[{open:",(",close:")",token:"delimiter.parenthesis"},{open:"`(",close:")",token:"delimiter.parenthesis"},{open:"%(",close:")",token:"delimiter.parenthesis"},{open:"'(",close:")",token:"delimiter.parenthesis"},{open:"'{",close:"}",token:"delimiter.parenthesis"},{open:"@(",close:")",token:"delimiter.parenthesis"},{open:"@{",close:"}",token:"delimiter.brace"},{open:"@[",close:"]",token:"delimiter.square"},{open:"#[",close:"]",token:"delimiter.square"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],symbols:/[=>]/,digit:/[0-9]/,digitseq0:/@digit*/,xdigit:/[0-9A-Za-z]/,xdigitseq0:/@xdigit*/,INTSP:/[lLuU]/,FLOATSP:/[fFlL]/,fexponent:/[eE][+-]?[0-9]+/,fexponent_bin:/[pP][+-]?[0-9]+/,deciexp:/\.[0-9]*@fexponent?/,hexiexp:/\.[0-9a-zA-Z]*@fexponent_bin?/,irregular_keywords:/val[+-]?|case[+-]?|addr\@?|fold\@|free\@|fix\@?|lam\@?|llam\@?|prop[+-]?|type[+-]?|view[+-@]?|viewt@?ype[+-]?|t@?ype[+-]?|v(iew)?t@?ype[+-]?|abst@?ype|absv(iew)?t@?ype|for\*?|while\*?/,ESCHAR:/[ntvbrfa\\\?'"\(\[\{]/,start:"root",tokenizer:{root:[{regex:/[ \t\r\n]+/,action:{token:""}},{regex:/\(\*\)/,action:{token:"invalid"}},{regex:/\(\*/,action:{token:"comment",next:"lexing_COMMENT_block_ml"}},{regex:/\(/,action:"@brackets"},{regex:/\)/,action:"@brackets"},{regex:/\[/,action:"@brackets"},{regex:/\]/,action:"@brackets"},{regex:/\{/,action:"@brackets"},{regex:/\}/,action:"@brackets"},{regex:/,\(/,action:"@brackets"},{regex:/,/,action:{token:"delimiter.comma"}},{regex:/;/,action:{token:"delimiter.semicolon"}},{regex:/@\(/,action:"@brackets"},{regex:/@\[/,action:"@brackets"},{regex:/@\{/,action:"@brackets"},{regex:/:/,action:{token:"@rematch",next:"@pop"}}],lexing_EXTCODE:[{regex:/^%}/,action:{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}},{regex:/[^%]+/,action:""}],lexing_DQUOTE:[{regex:/"/,action:{token:"string.quote",next:"@pop"}},{regex:/(\{\$)(@IDENTFST@IDENTRST*)(\})/,action:[{token:"string.escape"},{token:"identifier"},{token:"string.escape"}]},{regex:/\\$/,action:{token:"string.escape"}},{regex:/\\(@ESCHAR|[xX]@xdigit+|@digit+)/,action:{token:"string.escape"}},{regex:/[^\\"]+/,action:{token:"string"}}]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/6trW.2905fae9.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/6trW.2905fae9.js index e01c87a0c..8816b7ebf 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/6trW.2905fae9.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/6trW.2905fae9.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["6trW"],{"6trW":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return a}),n.d(t,"language",function(){return o});var a={comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["<",">"]],autoClosingPairs:[{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'}],surroundingPairs:[{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'}]},o={defaultToken:"",tokenPostfix:".xml",ignoreCase:!0,qualifiedName:/(?:[\w\.\-]+:)?[\w\.\-]+/,tokenizer:{root:[[/[^<&]+/,""],{include:"@whitespace"},[/(<)(@qualifiedName)/,[{token:"delimiter"},{token:"tag",next:"@tag"}]],[/(<\/)(@qualifiedName)(\s*)(>)/,[{token:"delimiter"},{token:"tag"},"",{token:"delimiter"}]],[/(<\?)(@qualifiedName)/,[{token:"delimiter"},{token:"metatag",next:"@tag"}]],[/(<\!)(@qualifiedName)/,[{token:"delimiter"},{token:"metatag",next:"@tag"}]],[/<\!\[CDATA\[/,{token:"delimiter.cdata",next:"@cdata"}],[/&\w+;/,"string.escape"]],cdata:[[/[^\]]+/,""],[/\]\]>/,{token:"delimiter.cdata",next:"@pop"}],[/\]/,""]],tag:[[/[ \t\r\n]+/,""],[/(@qualifiedName)(\s*=\s*)("[^"]*"|'[^']*')/,["attribute.name","","attribute.value"]],[/(@qualifiedName)(\s*=\s*)("[^">?\/]*|'[^'>?\/]*)(?=[\?\/]\>)/,["attribute.name","","attribute.value"]],[/(@qualifiedName)(\s*=\s*)("[^">]*|'[^'>]*)/,["attribute.name","","attribute.value"]],[/@qualifiedName/,"attribute.name"],[/\?>/,{token:"delimiter",next:"@pop"}],[/(\/)(>)/,[{token:"tag"},{token:"delimiter",next:"@pop"}]],[/>/,{token:"delimiter",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,""],[//,{token:"comment",next:"@pop"}],[//,{token:"comment",next:"@pop"}],[//,"comment","@pop"],[/[^-]+/,"comment.content"],[/./,"comment.content"]],otherTag:[[/\/?>/,"delimiter","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter","tag",{token:"delimiter",next:"@pop"}]]],scriptAfterType:[[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/>/,{token:"delimiter",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]],style:[[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter","tag",{token:"delimiter",next:"@pop"}]]],styleAfterType:[[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/>/,{token:"delimiter",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["IuD6"],{IuD6:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return r}),n.d(t,"language",function(){return d});var i="undefined"==typeof monaco?self.monaco:monaco,o=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+o.join("|")+"))([_:\\w][_:\\w-.\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/([_:\w][_:\w-.\d]*)\s*>$/i,action:{indentAction:i.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+o.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:i.languages.IndentAction.Indent}}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#endregion\\b.*--\x3e")}}},d={defaultToken:"",tokenPostfix:".html",ignoreCase:!0,tokenizer:{root:[[/)/,["delimiter","tag","","delimiter"]],[/(<)(script)/,["delimiter",{token:"tag",next:"@script"}]],[/(<)(style)/,["delimiter",{token:"tag",next:"@style"}]],[/(<)((?:[\w\-]+:)?[\w\-]+)/,["delimiter",{token:"tag",next:"@otherTag"}]],[/(<\/)((?:[\w\-]+:)?[\w\-]+)/,["delimiter",{token:"tag",next:"@otherTag"}]],[/]+/,"metatag.content"],[/>/,"metatag","@pop"]],comment:[[/-->/,"comment","@pop"],[/[^-]+/,"comment.content"],[/./,"comment.content"]],otherTag:[[/\/?>/,"delimiter","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter","tag",{token:"delimiter",next:"@pop"}]]],scriptAfterType:[[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/>/,{token:"delimiter",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]],style:[[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter","tag",{token:"delimiter",next:"@pop"}]]],styleAfterType:[[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/>/,{token:"delimiter",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/LqO4.b9fee23e.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/LqO4.b9fee23e.js index 7c2dba944..d6dda6cc4 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/LqO4.b9fee23e.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/LqO4.b9fee23e.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["LqO4"],{LqO4:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return o}),t.d(n,"language",function(){return i});var o={comments:{lineComment:"*"},brackets:[["[","]"],["(",")"]]},i={defaultToken:"invalid",ignoreCase:!0,tokenPostfix:".abap",keywords:["abstract","add","add-corresponding","adjacent","alias","aliases","all","append","appending","ascending","as","assert","assign","assigned","assigning","association","authority-check","back","begin","binary","block","bound","break-point","by","byte","class","call","cast","changing","check","class-data","class-method","class-methods","clear","close","cnt","collect","commit","cond","character","corresponding","communication","component","compute","concatenate","condense","constants","conv","count","controls","convert","create","currency","data","descending","default","define","deferred","delete","describe","detail","display","divide","divide-corresponding","display-mode","duplicates","deleting","editor-call","end","endexec","endfunction","ending","endmodule","end-of-definition","end-of-page","end-of-selection","end-test-injection","end-test-seam","exit-command","endclass","endmethod","endform","endinterface","endprovide","endselect","endtry","endwhile","enum","event","events","exec","exit","export","exporting","extract","exception","exceptions","field-symbols","field-groups","field","first","fetch","fields","format","frame","free","from","function","find","for","found","function-pool","generate","get","handle","hide","hashed","include","import","importing","index","infotypes","initial","initialization","id","is","in","interface","interfaces","init","input","insert","instance","into","key","left-justified","leave","like","line","line-count","line-size","load","local","log-point","length","left","leading","lower","matchcode","method","mesh","message","message-id","methods","modify","module","move","move-corresponding","multiply","multiply-corresponding","match","new","new-line","new-page","new-section","next","no","no-gap","no-gaps","no-sign","no-zero","non-unique","number","occurrence","object","obligatory","of","output","overlay","optional","others","occurrences","occurs","offset","options","pack","parameters","perform","places","position","print-control","private","program","protected","provide","public","put","radiobutton","raising","ranges","receive","receiving","redefinition","reduce","reference","refresh","regex","reject","results","requested","ref","replace","report","reserve","restore","result","return","returning","right-justified","rollback","read","read-only","rp-provide-from-last","run","scan","screen","scroll","search","select","select-options","selection-screen","stamp","source","subkey","separated","set","shift","single","skip","sort","sorted","split","standard","stamp","starting","start-of-selection","sum","subtract-corresponding","statics","step","stop","structure","submatches","submit","subtract","summary","supplied","suppress","section","syntax-check","syntax-trace","system-call","switch","tables","table","task","testing","test-seam","test-injection","then","time","times","title","titlebar","to","top-of-page","trailing","transfer","transformation","translate","transporting","types","type","type-pool","type-pools","unassign","unique","uline","unpack","update","upper","using","value","when","while","window","write","where","with","work","at","case","catch","continue","do","elseif","else","endat","endcase","enddo","endif","endloop","endon","if","loop","on","raise","try","abs","sign","ceil","floor","trunc","frac","acos","asin","atan","cos","sin","tan","cosh","sinh","tanh","exp","log","log10","sqrt","strlen","xstrlen","charlen","lines","numofchar","dbmaxlen","round","rescale","nmax","nmin","cmax","cmin","boolc","boolx","xsdbool","contains","contains_any_of","contains_any_not_of","matches","line_exists","ipow","char_off","count","count_any_of","count_any_not_of","distance","condense","concat_lines_of","escape","find","find_end","find_any_of","find_any_not_of","insert","match","repeat","replace","reverse","segment","shift_left","shift_right","substring","substring_after","substring_from","substring_before","substring_to","to_upper","to_lower","to_mixed","from_mixed","translate","bit-set","line_index","definition","implementation","public","inheriting","final"],typeKeywords:["abap_bool","string","xstring","any","clike","csequence","numeric","xsequence","c","n","i","p","f","d","t","x"],operators:["+","-","/","*","=","<",">","<=",">=","<>","><","=<","=>","EQ","NE","GE","LE","CS","CN","CA","CO","CP","NS","NA","NP"],symbols:/[=>","<=",">=","<>","><","=<","=>","EQ","NE","GE","LE","CS","CN","CA","CO","CP","NS","NA","NP"],symbols:/[=>"}],keywords:["abstract","amp","array","auto","bool","break","case","catch","char","class","const","constexpr","const_cast","continue","cpu","decltype","default","delegate","delete","do","double","dynamic_cast","each","else","enum","event","explicit","export","extern","false","final","finally","float","for","friend","gcnew","generic","goto","if","in","initonly","inline","int","interface","interior_ptr","internal","literal","long","mutable","namespace","new","noexcept","nullptr","__nullptr","operator","override","partial","pascal","pin_ptr","private","property","protected","public","ref","register","reinterpret_cast","restrict","return","safe_cast","sealed","short","signed","sizeof","static","static_assert","static_cast","struct","switch","template","this","thread_local","throw","tile_static","true","try","typedef","typeid","typename","union","unsigned","using","virtual","void","volatile","wchar_t","where","while","_asm","_based","_cdecl","_declspec","_fastcall","_if_exists","_if_not_exists","_inline","_multiple_inheritance","_pascal","_single_inheritance","_stdcall","_virtual_inheritance","_w64","__abstract","__alignof","__asm","__assume","__based","__box","__builtin_alignof","__cdecl","__clrcall","__declspec","__delegate","__event","__except","__fastcall","__finally","__forceinline","__gc","__hook","__identifier","__if_exists","__if_not_exists","__inline","__int128","__int16","__int32","__int64","__int8","__interface","__leave","__m128","__m128d","__m128i","__m256","__m256d","__m256i","__m64","__multiple_inheritance","__newslot","__nogc","__noop","__nounwind","__novtordisp","__pascal","__pin","__pragma","__property","__ptr32","__ptr64","__raise","__restrict","__resume","__sealed","__single_inheritance","__stdcall","__super","__thiscall","__try","__try_cast","__typeof","__unaligned","__unhook","__uuidof","__value","__virtual_inheritance","__w64","__wchar_t"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],raw:[[/(.*)(\))(?:([^ ()\\\t]*))(\")/,{cases:{"$3==$S2":["string.raw","string.raw.end","string.raw.end",{token:"string.raw.end",next:"@pop"}],"@default":["string.raw","string.raw","string.raw","string.raw"]}}],[/.*/,"string.raw"]],include:[[/(\s*)(<)([^<>]*)(>)/,["","keyword.directive.include.begin","string.include.identifier",{token:"keyword.directive.include.end",next:"@pop"}]],[/(\s*)(")([^"]*)(")/,["","keyword.directive.include.begin","string.include.identifier",{token:"keyword.directive.include.end",next:"@pop"}]]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["MQtB"],{MQtB:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return i}),n.d(t,"language",function(){return r});var i={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"[",close:"]"},{open:"{",close:"}"},{open:"(",close:")"},{open:"'",close:"'",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#pragma\\s+region\\b"),end:new RegExp("^\\s*#pragma\\s+endregion\\b")}}},r={defaultToken:"",tokenPostfix:".cpp",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["abstract","amp","array","auto","bool","break","case","catch","char","class","const","constexpr","const_cast","continue","cpu","decltype","default","delegate","delete","do","double","dynamic_cast","each","else","enum","event","explicit","export","extern","false","final","finally","float","for","friend","gcnew","generic","goto","if","in","initonly","inline","int","interface","interior_ptr","internal","literal","long","mutable","namespace","new","noexcept","nullptr","__nullptr","operator","override","partial","pascal","pin_ptr","private","property","protected","public","ref","register","reinterpret_cast","restrict","return","safe_cast","sealed","short","signed","sizeof","static","static_assert","static_cast","struct","switch","template","this","thread_local","throw","tile_static","true","try","typedef","typeid","typename","union","unsigned","using","virtual","void","volatile","wchar_t","where","while","_asm","_based","_cdecl","_declspec","_fastcall","_if_exists","_if_not_exists","_inline","_multiple_inheritance","_pascal","_single_inheritance","_stdcall","_virtual_inheritance","_w64","__abstract","__alignof","__asm","__assume","__based","__box","__builtin_alignof","__cdecl","__clrcall","__declspec","__delegate","__event","__except","__fastcall","__finally","__forceinline","__gc","__hook","__identifier","__if_exists","__if_not_exists","__inline","__int128","__int16","__int32","__int64","__int8","__interface","__leave","__m128","__m128d","__m128i","__m256","__m256d","__m256i","__m64","__multiple_inheritance","__newslot","__nogc","__noop","__nounwind","__novtordisp","__pascal","__pin","__pragma","__property","__ptr32","__ptr64","__raise","__restrict","__resume","__sealed","__single_inheritance","__stdcall","__super","__thiscall","__try","__try_cast","__typeof","__unaligned","__unhook","__uuidof","__value","__virtual_inheritance","__w64","__wchar_t"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],raw:[[/(.*)(\))(?:([^ ()\\\t]*))(\")/,{cases:{"$3==$S2":["string.raw","string.raw.end","string.raw.end",{token:"string.raw.end",next:"@pop"}],"@default":["string.raw","string.raw","string.raw","string.raw"]}}],[/.*/,"string.raw"]],include:[[/(\s*)(<)([^<>]*)(>)/,["","keyword.directive.include.begin","string.include.identifier",{token:"keyword.directive.include.end",next:"@pop"}]],[/(\s*)(")([^"]*)(")/,["","keyword.directive.include.begin","string.include.identifier",{token:"keyword.directive.include.end",next:"@pop"}]]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/MiWS.e0cf387d.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/MiWS.e0cf387d.js index e5d4da92d..9d3813224 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/MiWS.e0cf387d.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/MiWS.e0cf387d.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["MiWS"],{MiWS:function(e,t,i){"use strict";i.r(t);var r=i("cLjf"),a=i.n(r),n=i("hDQ3"),d=i.n(n),s=i("t3Un");function u(e){return Object(s.a)({url:"/gaeaDict/pageList",method:"GET",params:e})}function c(e){return Object(s.a)({url:"/gaeaDict",method:"POST",data:e})}function l(e){return Object(s.a)({url:"/gaeaDict",method:"PUT",data:e})}function o(e){return Object(s.a)({url:"/gaeaDict/"+e.id,method:"get",params:{accessKey:e.accessKey}})}function p(e){return Object(s.a)({url:"/gaeaDict/delete/batch",method:"POST",data:e})}function m(e){return Object(s.a)({url:"/gaeaDict/freshDict",method:"POST",data:e})}var f={name:"Dict",components:{anjiCrud:i("sYqA").default},data:function(){var e=this;return{crudOption:{title:"数据字典",labelWidth:"120px",queryFormFields:[{inputType:"input",label:"字典名称",field:"dictName"},{inputType:"input",label:"字典编码",field:"dictCode"}],queryFormChange:function(t,i,r){t.project&&e.$store.commit("user/SET_PROJECT",t.project)},buttons:{query:{api:u,permission:"dictManage:query"},queryByPrimarykey:{api:o,permission:"dictManage:query"},add:{api:c,permission:"dictManage:insert"},delete:{api:p,permission:"dictManage:delete"},edit:{api:l,permission:"dictManage:update"},customButton:{operationWidth:160}},columns:[{label:"",field:"id",primaryKey:!0,tableHide:!0,editHide:!0},{label:"字典名称",placeholder:"",field:"dictName",editField:"dictName",inputType:"input",rules:[{required:!0,message:"字典名称不能为空",trigger:"blur"},{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:!1},{label:"字典编码",placeholder:"",field:"dictCode",editField:"dictCode",inputType:"input",rules:[{required:!0,message:"字典编码不能为空",trigger:"blur"},{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:"disableOnEdit"},{label:"描述",placeholder:"",field:"remark",editField:"remark",inputType:"input",rules:[{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:!1},{label:"创建时间",placeholder:"",field:"createTime",editField:"createTime",inputType:"input",disabled:!1,editHide:!0},{label:"创建人",placeholder:"",field:"createBy",editField:"createBy",inputType:"input",disabled:!1,editHide:!0},{label:"更新时间",placeholder:"",field:"updateTime",editField:"updateTime",inputType:"input",disabled:!1,editHide:!0},{label:"更新人",placeholder:"",field:"updateBy",editField:"updateBy",inputType:"input",disabled:!1,editHide:!0}]}}},methods:{dictRefresh:function(){var e=this;return d()(a.a.mark(function t(){var i,r,n;return a.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return i=e.$refs.listPage.checkRecords,r=[],i.length>0&&(r=i.map(function(e){return e.dictCode})),t.next=5,m(r);case 5:if(n=t.sent,"200"==n.code){t.next=9;break}return t.abrupt("return");case 9:e.$message.success("刷新成功");case 10:case"end":return t.stop()}},t,e)}))()},itemRefresh:function(e){var t=this;return d()(a.a.mark(function i(){var r,n,d;return a.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return r=e.msg,n=[],r.length>0&&(n=r.map(function(e){return e.dictCode})),i.next=5,m(n);case 5:if(d=i.sent,"200"==d.code){i.next=9;break}return i.abrupt("return");case 9:t.$message.success("刷新成功");case 10:case"end":return i.stop()}},i,t)}))()},editItem:function(e){this.$router.push({path:"/system/dictItem",query:{dictCode:e.msg.dictCode,project:this.$store.state.user.project}})}}},b=i("ZrdR"),g=Object(b.a)(f,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("anji-crud",{ref:"listPage",attrs:{option:e.crudOption},scopedSlots:e._u([{key:"buttonLeftOnTable",fn:function(){return[i("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"dictManage:fresh",expression:"'dictManage:fresh'"}],attrs:{type:"primary",icon:"el-icon-edit"},on:{click:e.dictRefresh}},[e._v("刷新字典项\n ")])]},proxy:!0},{key:"rowButtonInMore",fn:function(t){return[i("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"dictItemManage:query",expression:"'dictItemManage:query'"}],attrs:{type:"text"},on:{click:function(i){return e.editItem(t)}}},[e._v("编辑字典项")]),e._v(" "),i("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"dictManage:fresh",expression:"'dictManage:fresh'"}],attrs:{type:"text"},on:{click:function(i){return e.itemRefresh(t)}}},[e._v("刷新字典项")])]}}])})},[],!1,null,null,null);g.options.__file="index.vue";t.default=g.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["MiWS"],{MiWS:function(e,t,i){"use strict";i.r(t);var r=i("cLjf"),a=i.n(r),n=i("hDQ3"),d=i.n(n),s=i("t3Un");function u(e){return Object(s.a)({url:"/gaeaDict/pageList",method:"GET",params:e})}function c(e){return Object(s.a)({url:"/gaeaDict",method:"POST",data:e})}function l(e){return Object(s.a)({url:"/gaeaDict",method:"PUT",data:e})}function o(e){return Object(s.a)({url:"/gaeaDict/"+e.id,method:"get",params:{accessKey:e.accessKey}})}function p(e){return Object(s.a)({url:"/gaeaDict/delete/batch",method:"POST",data:e})}function m(e){return Object(s.a)({url:"/gaeaDict/freshDict",method:"POST",data:e})}var f={name:"Dict",components:{anjiCrud:i("sYqA").default},data:function(){var e=this;return{crudOption:{title:"数据字典",labelWidth:"120px",queryFormFields:[{inputType:"input",label:"字典名称",field:"dictName"},{inputType:"input",label:"字典编码",field:"dictCode"}],queryFormChange:function(t,i,r){t.project&&e.$store.commit("user/SET_PROJECT",t.project)},buttons:{query:{api:u,permission:"dictManage:query"},queryByPrimarykey:{api:o,permission:"dictManage:query"},add:{api:c,permission:"dictManage:insert"},delete:{api:p,permission:"dictManage:delete"},edit:{api:l,permission:"dictManage:update"},customButton:{operationWidth:160}},columns:[{label:"",field:"id",primaryKey:!0,tableHide:!0,editHide:!0},{label:"字典名称",placeholder:"",field:"dictName",editField:"dictName",inputType:"input",rules:[{required:!0,message:"字典名称不能为空",trigger:"blur"},{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:!1},{label:"字典编码",placeholder:"",field:"dictCode",editField:"dictCode",inputType:"input",rules:[{required:!0,message:"字典编码不能为空",trigger:"blur"},{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:"disableOnEdit"},{label:"描述",placeholder:"",field:"remark",editField:"remark",inputType:"input",rules:[{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:!1},{label:"创建时间",placeholder:"",field:"createTime",editField:"createTime",inputType:"input",disabled:!1,editHide:!0},{label:"创建人",placeholder:"",field:"createBy",editField:"createBy",inputType:"input",disabled:!1,editHide:!0},{label:"更新时间",placeholder:"",field:"updateTime",editField:"updateTime",inputType:"input",disabled:!1,editHide:!0},{label:"更新人",placeholder:"",field:"updateBy",editField:"updateBy",inputType:"input",disabled:!1,editHide:!0}]}}},methods:{dictRefresh:function(){var e=this;return d()(a.a.mark(function t(){var i,r,n;return a.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return i=e.$refs.listPage.checkRecords,r=[],i.length>0&&(r=i.map(function(e){return e.dictCode})),t.next=5,m(r);case 5:if(n=t.sent,"200"==n.code){t.next=9;break}return t.abrupt("return");case 9:e.$message.success("刷新成功");case 10:case"end":return t.stop()}},t,e)}))()},itemRefresh:function(e){var t=this;return d()(a.a.mark(function i(){var r,n,d;return a.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return r=e.msg,n=[],r.length>0&&(n=r.map(function(e){return e.dictCode})),i.next=5,m(n);case 5:if(d=i.sent,"200"==d.code){i.next=9;break}return i.abrupt("return");case 9:t.$message.success("刷新成功");case 10:case"end":return i.stop()}},i,t)}))()},editItem:function(e){this.$router.push({path:"/system/dictItem",query:{dictCode:e.msg.dictCode,project:this.$store.state.user.project}})}}},b=i("ZrdR"),g=Object(b.a)(f,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("anji-crud",{ref:"listPage",attrs:{option:e.crudOption},scopedSlots:e._u([{key:"buttonLeftOnTable",fn:function(){return[i("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"dictManage:fresh",expression:"'dictManage:fresh'"}],attrs:{type:"primary",icon:"el-icon-edit"},on:{click:e.dictRefresh}},[e._v("刷新字典项\n ")])]},proxy:!0},{key:"rowButtonInMore",fn:function(t){return[i("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"dictItemManage:query",expression:"'dictItemManage:query'"}],attrs:{type:"text"},on:{click:function(i){return e.editItem(t)}}},[e._v("编辑字典项")]),e._v(" "),i("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"dictManage:fresh",expression:"'dictManage:fresh'"}],attrs:{type:"text"},on:{click:function(i){return e.itemRefresh(t)}}},[e._v("刷新字典项")])]}}])})},[],!1,null,null,null);g.options.__file="index.vue";t.default=g.exports}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Npd3.952bed4f.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Npd3.952bed4f.js index 1af6dca11..264a81194 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Npd3.952bed4f.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Npd3.952bed4f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["Npd3"],{Npd3:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return t}),o.d(n,"language",function(){return s});var t={comments:{lineComment:"--",blockComment:["--[[","]]"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".lua",keywords:["and","break","do","else","elseif","end","false","for","function","goto","if","in","local","nil","not","or","repeat","return","then","true","until","while"],brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],operators:["+","-","*","/","%","^","#","==","~=","<=",">=","<",">","=",";",":",",",".","..","..."],symbols:/[=>=","<",">","=",";",":",",",".","..","..."],symbols:/[=>`?!+*\\\/]/,operatorstart:/[\/=\-+!*%<>&|^~?\u00A1-\u00A7\u00A9\u00AB\u00AC\u00AE\u00B0-\u00B1\u00B6\u00BB\u00BF\u00D7\u00F7\u2016-\u2017\u2020-\u2027\u2030-\u203E\u2041-\u2053\u2055-\u205E\u2190-\u23FF\u2500-\u2775\u2794-\u2BFF\u2E00-\u2E7F\u3001-\u3003\u3008-\u3030]/,operatorend:/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE00-\uFE0F\uFE20-\uFE2F\uE0100-\uE01EF]/,operators:/(@operatorstart)((@operatorstart)|(@operatorend))*/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},{include:"@attribute"},{include:"@literal"},{include:"@keyword"},{include:"@invokedmethod"},{include:"@symbol"}],whitespace:[[/\s+/,"white"],[/"""/,"string.quote","@endDblDocString"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string.quote","@popall"],[/"/,"string"]],symbol:[[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/[.]/,"delimiter"],[/@operators/,"operator"],[/@symbols/,"operator"]],comment:[[/\/\/\/.*$/,"comment.doc"],[/\/\*\*/,"comment.doc","@commentdocbody"],[/\/\/.*$/,"comment"],[/\/\*/,"comment","@commentbody"]],commentdocbody:[[/\/\*/,"comment","@commentbody"],[/\*\//,"comment.doc","@pop"],[/\:[a-zA-Z]+\:/,"comment.doc.param"],[/./,"comment.doc"]],commentbody:[[/\/\*/,"comment","@commentbody"],[/\*\//,"comment","@pop"],[/./,"comment"]],attribute:[[/\@@identifier/,{cases:{"@attributes":"keyword.control","@default":""}}]],literal:[[/"/,{token:"string.quote",next:"@stringlit"}],[/0[b]([01]_?)+/,"number.binary"],[/0[o]([0-7]_?)+/,"number.octal"],[/0[x]([0-9a-fA-F]_?)+([pP][\-+](\d_?)+)?/,"number.hex"],[/(\d_?)*\.(\d_?)+([eE][\-+]?(\d_?)+)?/,"number.float"],[/(\d_?)+/,"number"]],stringlit:[[/\\\(/,{token:"operator",next:"@interpolatedexpression"}],[/@escapes/,"string"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",next:"@pop"}],[/./,"string"]],interpolatedexpression:[[/\(/,{token:"operator",next:"@interpolatedexpression"}],[/\)/,{token:"operator",next:"@pop"}],{include:"@literal"},{include:"@keyword"},{include:"@symbol"}],keyword:[[/`/,{token:"operator",next:"@escapedkeyword"}],[/@identifier/,{cases:{"@keywords":"keyword","[A-Z][a-zA-Z0-9$]*":"type.identifier","@default":"identifier"}}]],escapedkeyword:[[/`/,{token:"operator",next:"@pop"}],[/./,"identifier"]],invokedmethod:[[/([.])(@identifier)/,{cases:{$2:["delimeter","type.identifier"],"@default":""}}]]}}}}]); \ No newline at end of file +var n={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},i={defaultToken:"",tokenPostfix:".swift",identifier:/[a-zA-Z_][\w$]*/,attributes:["@autoclosure","@noescape","@noreturn","@NSApplicationMain","@NSCopying","@NSManaged","@objc","@UIApplicationMain","@noreturn","@availability","@IBAction","@IBDesignable","@IBInspectable","@IBOutlet"],accessmodifiers:["public","private","internal"],keywords:["__COLUMN__","__FILE__","__FUNCTION__","__LINE__","as","as!","as?","associativity","break","case","catch","class","continue","convenience","default","deinit","didSet","do","dynamic","dynamicType","else","enum","extension","fallthrough","final","for","func","get","guard","if","import","in","infix","init","inout","internal","is","lazy","left","let","mutating","nil","none","nonmutating","operator","optional","override","postfix","precedence","prefix","private","protocol","Protocol","public","repeat","required","return","right","self","Self","set","static","struct","subscript","super","switch","throw","throws","try","try!","Type","typealias","unowned","var","weak","where","while","willSet","FALSE","TRUE"],symbols:/[=(){}\[\].,:;@#\_&\-<>`?!+*\\\/]/,operatorstart:/[\/=\-+!*%<>&|^~?\u00A1-\u00A7\u00A9\u00AB\u00AC\u00AE\u00B0-\u00B1\u00B6\u00BB\u00BF\u00D7\u00F7\u2016-\u2017\u2020-\u2027\u2030-\u203E\u2041-\u2053\u2055-\u205E\u2190-\u23FF\u2500-\u2775\u2794-\u2BFF\u2E00-\u2E7F\u3001-\u3003\u3008-\u3030]/,operatorend:/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE00-\uFE0F\uFE20-\uFE2F\uE0100-\uE01EF]/,operators:/(@operatorstart)((@operatorstart)|(@operatorend))*/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},{include:"@attribute"},{include:"@literal"},{include:"@keyword"},{include:"@invokedmethod"},{include:"@symbol"}],whitespace:[[/\s+/,"white"],[/"""/,"string.quote","@endDblDocString"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string.quote","@popall"],[/"/,"string"]],symbol:[[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/[.]/,"delimiter"],[/@operators/,"operator"],[/@symbols/,"operator"]],comment:[[/\/\/\/.*$/,"comment.doc"],[/\/\*\*/,"comment.doc","@commentdocbody"],[/\/\/.*$/,"comment"],[/\/\*/,"comment","@commentbody"]],commentdocbody:[[/\/\*/,"comment","@commentbody"],[/\*\//,"comment.doc","@pop"],[/\:[a-zA-Z]+\:/,"comment.doc.param"],[/./,"comment.doc"]],commentbody:[[/\/\*/,"comment","@commentbody"],[/\*\//,"comment","@pop"],[/./,"comment"]],attribute:[[/\@@identifier/,{cases:{"@attributes":"keyword.control","@default":""}}]],literal:[[/"/,{token:"string.quote",next:"@stringlit"}],[/0[b]([01]_?)+/,"number.binary"],[/0[o]([0-7]_?)+/,"number.octal"],[/0[x]([0-9a-fA-F]_?)+([pP][\-+](\d_?)+)?/,"number.hex"],[/(\d_?)*\.(\d_?)+([eE][\-+]?(\d_?)+)?/,"number.float"],[/(\d_?)+/,"number"]],stringlit:[[/\\\(/,{token:"operator",next:"@interpolatedexpression"}],[/@escapes/,"string"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",next:"@pop"}],[/./,"string"]],interpolatedexpression:[[/\(/,{token:"operator",next:"@interpolatedexpression"}],[/\)/,{token:"operator",next:"@pop"}],{include:"@literal"},{include:"@keyword"},{include:"@symbol"}],keyword:[[/`/,{token:"operator",next:"@escapedkeyword"}],[/@identifier/,{cases:{"@keywords":"keyword","[A-Z][a-zA-Z0-9$]*":"type.identifier","@default":"identifier"}}]],escapedkeyword:[[/`/,{token:"operator",next:"@pop"}],[/./,"identifier"]],invokedmethod:[[/([.])(@identifier)/,{cases:{$2:["delimeter","type.identifier"],"@default":""}}]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Qit9.5eced9a7.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Qit9.5eced9a7.js index 42c31e71c..84d21c0c9 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Qit9.5eced9a7.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Qit9.5eced9a7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["Qit9"],{Qit9:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return t}),o.d(n,"language",function(){return s});var t={comments:{lineComment:";",blockComment:["#|","|#"]},brackets:[["(",")"],["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".scheme",brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],keywords:["case","do","let","loop","if","else","when","cons","car","cdr","cond","lambda","lambda*","syntax-rules","format","set!","quote","eval","append","list","list?","member?","load"],constants:["#t","#f"],operators:["eq?","eqv?","equal?","and","or","not","null?"],tokenizer:{root:[[/#[xXoObB][0-9a-fA-F]+/,"number.hex"],[/[+-]?\d+(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?/,"number.float"],[/(?:\b(?:(define|define-syntax|define-macro))\b)(\s+)((?:\w|\-|\!|\?)*)/,["keyword","white","variable"]],{include:"@whitespace"},{include:"@strings"},[/[a-zA-Z_#][a-zA-Z0-9_\-\?\!\*]*/,{cases:{"@keywords":"keyword","@constants":"constant","@operators":"operators","@default":"identifier"}}]],comment:[[/[^\|#]+/,"comment"],[/#\|/,"comment","@push"],[/\|#/,"comment","@pop"],[/[\|#]/,"comment"]],whitespace:[[/[ \t\r\n]+/,"white"],[/#\|/,"comment","@comment"],[/;.*$/,"comment"]],strings:[[/"$/,"string","@popall"],[/"(?=.)/,"string","@multiLineString"]],multiLineString:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string.escape"],[/"/,"string","@popall"],[/\\$/,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["Qit9"],{Qit9:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return t}),o.d(n,"language",function(){return s});var t={comments:{lineComment:";",blockComment:["#|","|#"]},brackets:[["(",")"],["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".scheme",brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],keywords:["case","do","let","loop","if","else","when","cons","car","cdr","cond","lambda","lambda*","syntax-rules","format","set!","quote","eval","append","list","list?","member?","load"],constants:["#t","#f"],operators:["eq?","eqv?","equal?","and","or","not","null?"],tokenizer:{root:[[/#[xXoObB][0-9a-fA-F]+/,"number.hex"],[/[+-]?\d+(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?/,"number.float"],[/(?:\b(?:(define|define-syntax|define-macro))\b)(\s+)((?:\w|\-|\!|\?)*)/,["keyword","white","variable"]],{include:"@whitespace"},{include:"@strings"},[/[a-zA-Z_#][a-zA-Z0-9_\-\?\!\*]*/,{cases:{"@keywords":"keyword","@constants":"constant","@operators":"operators","@default":"identifier"}}]],comment:[[/[^\|#]+/,"comment"],[/#\|/,"comment","@push"],[/\|#/,"comment","@pop"],[/[\|#]/,"comment"]],whitespace:[[/[ \t\r\n]+/,"white"],[/#\|/,"comment","@comment"],[/;.*$/,"comment"]],strings:[[/"$/,"string","@popall"],[/"(?=.)/,"string","@multiLineString"]],multiLineString:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string.escape"],[/"/,"string","@popall"],[/\\$/,"string"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/S7HC.4afe44ae.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/S7HC.4afe44ae.js index 05fd43f65..0ffd07382 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/S7HC.4afe44ae.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/S7HC.4afe44ae.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["S7HC"],{S7HC:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return i}),n.d(t,"language",function(){return m});var a="undefined"==typeof monaco?self.monaco:monaco,r=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["{{!--","--}}"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{{","}}"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+r.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:a.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+r.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:a.languages.IndentAction.Indent}}]},m={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.root"}],[/)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],handlebarsInSimpleState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3"}],{include:"handlebarsRoot"}],handlebarsInEmbeddedState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],{include:"handlebarsRoot"}],handlebarsRoot:[[/"[^"]*"/,"string.handlebars"],[/[#/][^\s}]+/,"keyword.helper.handlebars"],[/else\b/,"keyword.helper.handlebars"],[/[\s]+/],[/[^}]/,"variable.parameter.handlebars"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["S7HC"],{S7HC:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return i}),n.d(t,"language",function(){return m});var a="undefined"==typeof monaco?self.monaco:monaco,r=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["{{!--","--}}"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{{","}}"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+r.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:a.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+r.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:a.languages.IndentAction.Indent}}]},m={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.root"}],[/)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],handlebarsInSimpleState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3"}],{include:"handlebarsRoot"}],handlebarsInEmbeddedState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],{include:"handlebarsRoot"}],handlebarsRoot:[[/"[^"]*"/,"string.handlebars"],[/[#/][^\s}]+/,"keyword.helper.handlebars"],[/else\b/,"keyword.helper.handlebars"],[/[\s]+/],[/[^}]/,"variable.parameter.handlebars"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/VxcK.80929451.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/VxcK.80929451.js index 113d59a2c..bce392f36 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/VxcK.80929451.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/VxcK.80929451.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["VxcK"],{VxcK:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return r}),t.d(n,"language",function(){return i});var o="undefined"==typeof monaco?self.monaco:monaco,r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:o.languages.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:o.languages.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:o.languages.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:o.languages.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},i={defaultToken:"invalid",tokenPostfix:".ts",keywords:["abstract","as","break","case","catch","class","continue","const","constructor","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","infer","instanceof","interface","is","keyof","let","module","namespace","never","new","null","package","private","protected","public","readonly","require","global","return","set","static","super","switch","symbol","this","throw","true","try","type","typeof","unique","var","void","while","with","yield","async","await","of"],typeKeywords:["any","boolean","number","object","string","undefined"],operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<",">",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([gimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["VxcK"],{VxcK:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return r}),t.d(n,"language",function(){return i});var o="undefined"==typeof monaco?self.monaco:monaco,r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:o.languages.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:o.languages.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:o.languages.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:o.languages.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},i={defaultToken:"invalid",tokenPostfix:".ts",keywords:["abstract","as","break","case","catch","class","continue","const","constructor","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","infer","instanceof","interface","is","keyof","let","module","namespace","never","new","null","package","private","protected","public","readonly","require","global","return","set","static","super","switch","symbol","this","throw","true","try","type","typeof","unique","var","void","while","with","yield","async","await","of"],typeKeywords:["any","boolean","number","object","string","undefined"],operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<",">",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([gimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/X3yt.c109bd78.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/X3yt.c109bd78.js index f9b6df08f..eac260a06 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/X3yt.c109bd78.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/X3yt.c109bd78.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["X3yt"],{X3yt:function(_,e,E){"use strict";E.r(e),E.d(e,"conf",function(){return t}),E.d(e,"language",function(){return T});var t={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},T={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["A","ABORT","ABS","ABSENT","ABSOLUTE","ACCESS","ACCORDING","ACTION","ADA","ADD","ADMIN","AFTER","AGGREGATE","ALL","ALLOCATE","ALSO","ALTER","ALWAYS","ANALYSE","ANALYZE","AND","ANY","ARE","ARRAY","ARRAY_AGG","ARRAY_MAX_CARDINALITY","AS","ASC","ASENSITIVE","ASSERTION","ASSIGNMENT","ASYMMETRIC","AT","ATOMIC","ATTRIBUTE","ATTRIBUTES","AUTHORIZATION","AVG","BACKWARD","BASE64","BEFORE","BEGIN","BEGIN_FRAME","BEGIN_PARTITION","BERNOULLI","BETWEEN","BIGINT","BINARY","BIT","BIT_LENGTH","BLOB","BLOCKED","BOM","BOOLEAN","BOTH","BREADTH","BY","C","CACHE","CALL","CALLED","CARDINALITY","CASCADE","CASCADED","CASE","CAST","CATALOG","CATALOG_NAME","CEIL","CEILING","CHAIN","CHAR","CHARACTER","CHARACTERISTICS","CHARACTERS","CHARACTER_LENGTH","CHARACTER_SET_CATALOG","CHARACTER_SET_NAME","CHARACTER_SET_SCHEMA","CHAR_LENGTH","CHECK","CHECKPOINT","CLASS","CLASS_ORIGIN","CLOB","CLOSE","CLUSTER","COALESCE","COBOL","COLLATE","COLLATION","COLLATION_CATALOG","COLLATION_NAME","COLLATION_SCHEMA","COLLECT","COLUMN","COLUMNS","COLUMN_NAME","COMMAND_FUNCTION","COMMAND_FUNCTION_CODE","COMMENT","COMMENTS","COMMIT","COMMITTED","CONCURRENTLY","CONDITION","CONDITION_NUMBER","CONFIGURATION","CONFLICT","CONNECT","CONNECTION","CONNECTION_NAME","CONSTRAINT","CONSTRAINTS","CONSTRAINT_CATALOG","CONSTRAINT_NAME","CONSTRAINT_SCHEMA","CONSTRUCTOR","CONTAINS","CONTENT","CONTINUE","CONTROL","CONVERSION","CONVERT","COPY","CORR","CORRESPONDING","COST","COUNT","COVAR_POP","COVAR_SAMP","CREATE","CROSS","CSV","CUBE","CUME_DIST","CURRENT","CURRENT_CATALOG","CURRENT_DATE","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_ROW","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CURSOR_NAME","CYCLE","DATA","DATABASE","DATALINK","DATE","DATETIME_INTERVAL_CODE","DATETIME_INTERVAL_PRECISION","DAY","DB","DEALLOCATE","DEC","DECIMAL","DECLARE","DEFAULT","DEFAULTS","DEFERRABLE","DEFERRED","DEFINED","DEFINER","DEGREE","DELETE","DELIMITER","DELIMITERS","DENSE_RANK","DEPENDS","DEPTH","DEREF","DERIVED","DESC","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DICTIONARY","DISABLE","DISCARD","DISCONNECT","DISPATCH","DISTINCT","DLNEWCOPY","DLPREVIOUSCOPY","DLURLCOMPLETE","DLURLCOMPLETEONLY","DLURLCOMPLETEWRITE","DLURLPATH","DLURLPATHONLY","DLURLPATHWRITE","DLURLSCHEME","DLURLSERVER","DLVALUE","DO","DOCUMENT","DOMAIN","DOUBLE","DROP","DYNAMIC","DYNAMIC_FUNCTION","DYNAMIC_FUNCTION_CODE","EACH","ELEMENT","ELSE","EMPTY","ENABLE","ENCODING","ENCRYPTED","END","END-EXEC","END_FRAME","END_PARTITION","ENFORCED","ENUM","EQUALS","ESCAPE","EVENT","EVERY","EXCEPT","EXCEPTION","EXCLUDE","EXCLUDING","EXCLUSIVE","EXEC","EXECUTE","EXISTS","EXP","EXPLAIN","EXPRESSION","EXTENSION","EXTERNAL","EXTRACT","FALSE","FAMILY","FETCH","FILE","FILTER","FINAL","FIRST","FIRST_VALUE","FLAG","FLOAT","FLOOR","FOLLOWING","FOR","FORCE","FOREIGN","FORTRAN","FORWARD","FOUND","FRAME_ROW","FREE","FREEZE","FROM","FS","FULL","FUNCTION","FUNCTIONS","FUSION","G","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRANTED","GREATEST","GROUP","GROUPING","GROUPS","HANDLER","HAVING","HEADER","HEX","HIERARCHY","HOLD","HOUR","ID","IDENTITY","IF","IGNORE","ILIKE","IMMEDIATE","IMMEDIATELY","IMMUTABLE","IMPLEMENTATION","IMPLICIT","IMPORT","IN","INCLUDING","INCREMENT","INDENT","INDEX","INDEXES","INDICATOR","INHERIT","INHERITS","INITIALLY","INLINE","INNER","INOUT","INPUT","INSENSITIVE","INSERT","INSTANCE","INSTANTIABLE","INSTEAD","INT","INTEGER","INTEGRITY","INTERSECT","INTERSECTION","INTERVAL","INTO","INVOKER","IS","ISNULL","ISOLATION","JOIN","K","KEY","KEY_MEMBER","KEY_TYPE","LABEL","LAG","LANGUAGE","LARGE","LAST","LAST_VALUE","LATERAL","LEAD","LEADING","LEAKPROOF","LEAST","LEFT","LENGTH","LEVEL","LIBRARY","LIKE","LIKE_REGEX","LIMIT","LINK","LISTEN","LN","LOAD","LOCAL","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKED","LOGGED","LOWER","M","MAP","MAPPING","MATCH","MATCHED","MATERIALIZED","MAX","MAXVALUE","MAX_CARDINALITY","MEMBER","MERGE","MESSAGE_LENGTH","MESSAGE_OCTET_LENGTH","MESSAGE_TEXT","METHOD","MIN","MINUTE","MINVALUE","MOD","MODE","MODIFIES","MODULE","MONTH","MORE","MOVE","MULTISET","MUMPS","NAME","NAMES","NAMESPACE","NATIONAL","NATURAL","NCHAR","NCLOB","NESTING","NEW","NEXT","NFC","NFD","NFKC","NFKD","NIL","NO","NONE","NORMALIZE","NORMALIZED","NOT","NOTHING","NOTIFY","NOTNULL","NOWAIT","NTH_VALUE","NTILE","NULL","NULLABLE","NULLIF","NULLS","NUMBER","NUMERIC","OBJECT","OCCURRENCES_REGEX","OCTETS","OCTET_LENGTH","OF","OFF","OFFSET","OIDS","OLD","ON","ONLY","OPEN","OPERATOR","OPTION","OPTIONS","OR","ORDER","ORDERING","ORDINALITY","OTHERS","OUT","OUTER","OUTPUT","OVER","OVERLAPS","OVERLAY","OVERRIDING","OWNED","OWNER","P","PAD","PARALLEL","PARAMETER","PARAMETER_MODE","PARAMETER_NAME","PARAMETER_ORDINAL_POSITION","PARAMETER_SPECIFIC_CATALOG","PARAMETER_SPECIFIC_NAME","PARAMETER_SPECIFIC_SCHEMA","PARSER","PARTIAL","PARTITION","PASCAL","PASSING","PASSTHROUGH","PASSWORD","PATH","PERCENT","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","PERIOD","PERMISSION","PLACING","PLANS","PLI","POLICY","PORTION","POSITION","POSITION_REGEX","POWER","PRECEDES","PRECEDING","PRECISION","PREPARE","PREPARED","PRESERVE","PRIMARY","PRIOR","PRIVILEGES","PROCEDURAL","PROCEDURE","PROGRAM","PUBLIC","QUOTE","RANGE","RANK","READ","READS","REAL","REASSIGN","RECHECK","RECOVERY","RECURSIVE","REF","REFERENCES","REFERENCING","REFRESH","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REINDEX","RELATIVE","RELEASE","RENAME","REPEATABLE","REPLACE","REPLICA","REQUIRING","RESET","RESPECT","RESTART","RESTORE","RESTRICT","RESULT","RETURN","RETURNED_CARDINALITY","RETURNED_LENGTH","RETURNED_OCTET_LENGTH","RETURNED_SQLSTATE","RETURNING","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROLLUP","ROUTINE","ROUTINE_CATALOG","ROUTINE_NAME","ROUTINE_SCHEMA","ROW","ROWS","ROW_COUNT","ROW_NUMBER","RULE","SAVEPOINT","SCALE","SCHEMA","SCHEMA_NAME","SCOPE","SCOPE_CATALOG","SCOPE_NAME","SCOPE_SCHEMA","SCROLL","SEARCH","SECOND","SECTION","SECURITY","SELECT","SELECTIVE","SELF","SENSITIVE","SEQUENCE","SEQUENCES","SERIALIZABLE","SERVER","SERVER_NAME","SESSION","SESSION_USER","SET","SETOF","SETS","SHARE","SHOW","SIMILAR","SIMPLE","SIZE","SKIP","SMALLINT","SNAPSHOT","SOME","SOURCE","SPACE","SPECIFIC","SPECIFICTYPE","SPECIFIC_NAME","SQL","SQLCODE","SQLERROR","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQRT","STABLE","STANDALONE","START","STATE","STATEMENT","STATIC","STATISTICS","STDDEV_POP","STDDEV_SAMP","STDIN","STDOUT","STORAGE","STRICT","STRIP","STRUCTURE","STYLE","SUBCLASS_ORIGIN","SUBMULTISET","SUBSTRING","SUBSTRING_REGEX","SUCCEEDS","SUM","SYMMETRIC","SYSID","SYSTEM","SYSTEM_TIME","SYSTEM_USER","T","TABLE","TABLES","TABLESAMPLE","TABLESPACE","TABLE_NAME","TEMP","TEMPLATE","TEMPORARY","TEXT","THEN","TIES","TIME","TIMESTAMP","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TOKEN","TOP_LEVEL_COUNT","TRAILING","TRANSACTION","TRANSACTIONS_COMMITTED","TRANSACTIONS_ROLLED_BACK","TRANSACTION_ACTIVE","TRANSFORM","TRANSFORMS","TRANSLATE","TRANSLATE_REGEX","TRANSLATION","TREAT","TRIGGER","TRIGGER_CATALOG","TRIGGER_NAME","TRIGGER_SCHEMA","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRUSTED","TYPE","TYPES","UESCAPE","UNBOUNDED","UNCOMMITTED","UNDER","UNENCRYPTED","UNION","UNIQUE","UNKNOWN","UNLINK","UNLISTEN","UNLOGGED","UNNAMED","UNNEST","UNTIL","UNTYPED","UPDATE","UPPER","URI","USAGE","USER","USER_DEFINED_TYPE_CATALOG","USER_DEFINED_TYPE_CODE","USER_DEFINED_TYPE_NAME","USER_DEFINED_TYPE_SCHEMA","USING","VACUUM","VALID","VALIDATE","VALIDATOR","VALUE","VALUES","VALUE_OF","VARBINARY","VARCHAR","VARIADIC","VARYING","VAR_POP","VAR_SAMP","VERBOSE","VERSION","VERSIONING","VIEW","VIEWS","VOLATILE","WHEN","WHENEVER","WHERE","WHITESPACE","WIDTH_BUCKET","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","XML","XMLAGG","XMLATTRIBUTES","XMLBINARY","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDECLARATION","XMLDOCUMENT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLITERATE","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSCHEMA","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","YEAR","YES","ZONE"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["abbrev","abs","acos","acosd","age","any","area","array_agg","array_append","array_cat","array_dims","array_fill","array_length","array_lower","array_ndims","array_position","array_positions","array_prepend","array_remove","array_replace","array_to_json","array_to_string","array_to_tsvector","array_upper","ascii","asin","asind","atan","atan2","atan2d","atand","avg","bit","bit_and","bit_length","bit_or","bool_and","bool_or","bound_box","box","brin_summarize_new_values","broadcast","btrim","cardinality","cbrt","ceil","ceiling","center","char_length","character_length","chr","circle","clock_timestamp","coalesce","col_description","concat","concat_ws","convert","convert_from","convert_to","corr","cos","cosd","cot","cotd","count","covar_pop","covar_samp","cume_dist","current_catalog","current_database","current_date","current_query","current_role","current_schema","current_schemas","current_setting","current_time","current_timestamp","current_user","currval","cursor_to_xml","date_part","date_trunc","decode","degrees","dense_rank","diameter","div","encode","enum_first","enum_last","enum_range","every","exp","extract","family","first_value","floor","format","format_type","generate_series","generate_subscripts","get_bit","get_byte","get_current_ts_config","gin_clean_pending_list","greatest","grouping","has_any_column_privilege","has_column_privilege","has_database_privilege","has_foreign_data_wrapper_privilege","has_function_privilege","has_language_privilege","has_schema_privilege","has_sequence_privilege","has_server_privilege","has_table_privilege","has_tablespace_privilege","has_type_privilege","height","host","hostmask","inet_client_addr","inet_client_port","inet_merge","inet_same_family","inet_server_addr","inet_server_port","initcap","isclosed","isempty","isfinite","isopen","json_agg","json_object","json_object_agg","json_populate_record","json_populate_recordset","json_to_record","json_to_recordset","jsonb_agg","jsonb_object_agg","justify_days","justify_hours","justify_interval","lag","last_value","lastval","lead","least","left","length","line","ln","localtime","localtimestamp","log","lower","lower_inc","lower_inf","lpad","lseg","ltrim","make_date","make_interval","make_time","make_timestamp","make_timestamptz","masklen","max","md5","min","mod","mode","netmask","network","nextval","now","npoints","nth_value","ntile","nullif","num_nonnulls","num_nulls","numnode","obj_description","octet_length","overlay","parse_ident","path","pclose","percent_rank","percentile_cont","percentile_disc","pg_advisory_lock","pg_advisory_lock_shared","pg_advisory_unlock","pg_advisory_unlock_all","pg_advisory_unlock_shared","pg_advisory_xact_lock","pg_advisory_xact_lock_shared","pg_backend_pid","pg_backup_start_time","pg_blocking_pids","pg_cancel_backend","pg_client_encoding","pg_collation_is_visible","pg_column_size","pg_conf_load_time","pg_control_checkpoint","pg_control_init","pg_control_recovery","pg_control_system","pg_conversion_is_visible","pg_create_logical_replication_slot","pg_create_physical_replication_slot","pg_create_restore_point","pg_current_xlog_flush_location","pg_current_xlog_insert_location","pg_current_xlog_location","pg_database_size","pg_describe_object","pg_drop_replication_slot","pg_export_snapshot","pg_filenode_relation","pg_function_is_visible","pg_get_constraintdef","pg_get_expr","pg_get_function_arguments","pg_get_function_identity_arguments","pg_get_function_result","pg_get_functiondef","pg_get_indexdef","pg_get_keywords","pg_get_object_address","pg_get_owned_sequence","pg_get_ruledef","pg_get_serial_sequence","pg_get_triggerdef","pg_get_userbyid","pg_get_viewdef","pg_has_role","pg_identify_object","pg_identify_object_as_address","pg_index_column_has_property","pg_index_has_property","pg_indexam_has_property","pg_indexes_size","pg_is_in_backup","pg_is_in_recovery","pg_is_other_temp_schema","pg_is_xlog_replay_paused","pg_last_committed_xact","pg_last_xact_replay_timestamp","pg_last_xlog_receive_location","pg_last_xlog_replay_location","pg_listening_channels","pg_logical_emit_message","pg_logical_slot_get_binary_changes","pg_logical_slot_get_changes","pg_logical_slot_peek_binary_changes","pg_logical_slot_peek_changes","pg_ls_dir","pg_my_temp_schema","pg_notification_queue_usage","pg_opclass_is_visible","pg_operator_is_visible","pg_opfamily_is_visible","pg_options_to_table","pg_postmaster_start_time","pg_read_binary_file","pg_read_file","pg_relation_filenode","pg_relation_filepath","pg_relation_size","pg_reload_conf","pg_replication_origin_create","pg_replication_origin_drop","pg_replication_origin_oid","pg_replication_origin_progress","pg_replication_origin_session_is_setup","pg_replication_origin_session_progress","pg_replication_origin_session_reset","pg_replication_origin_session_setup","pg_replication_origin_xact_reset","pg_replication_origin_xact_setup","pg_rotate_logfile","pg_size_bytes","pg_size_pretty","pg_sleep","pg_sleep_for","pg_sleep_until","pg_start_backup","pg_stat_file","pg_stop_backup","pg_switch_xlog","pg_table_is_visible","pg_table_size","pg_tablespace_databases","pg_tablespace_location","pg_tablespace_size","pg_terminate_backend","pg_total_relation_size","pg_trigger_depth","pg_try_advisory_lock","pg_try_advisory_lock_shared","pg_try_advisory_xact_lock","pg_try_advisory_xact_lock_shared","pg_ts_config_is_visible","pg_ts_dict_is_visible","pg_ts_parser_is_visible","pg_ts_template_is_visible","pg_type_is_visible","pg_typeof","pg_xact_commit_timestamp","pg_xlog_location_diff","pg_xlog_replay_pause","pg_xlog_replay_resume","pg_xlogfile_name","pg_xlogfile_name_offset","phraseto_tsquery","pi","plainto_tsquery","point","polygon","popen","position","power","pqserverversion","query_to_xml","querytree","quote_ident","quote_literal","quote_nullable","radians","radius","random","range_merge","rank","regexp_matches","regexp_replace","regexp_split_to_array","regexp_split_to_table","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","repeat","replace","reverse","right","round","row_number","row_security_active","row_to_json","rpad","rtrim","scale","session_user","set_bit","set_byte","set_config","set_masklen","setseed","setval","setweight","shobj_description","sign","sin","sind","split_part","sprintf","sqrt","statement_timestamp","stddev","stddev_pop","stddev_samp","string_agg","string_to_array","strip","strpos","substr","substring","sum","table_to_xml","table_to_xml_and_xmlschema","tan","tand","text","timeofday","timezone","to_ascii","to_char","to_date","to_hex","to_json","to_number","to_regclass","to_regnamespace","to_regoper","to_regoperator","to_regproc","to_regprocedure","to_regrole","to_regtype","to_timestamp","to_tsquery","to_tsvector","transaction_timestamp","translate","trim","trunc","ts_debug","ts_delete","ts_filter","ts_headline","ts_lexize","ts_parse","ts_rank","ts_rank_cd","ts_rewrite","ts_stat","ts_token_type","tsquery_phrase","tsvector_to_array","tsvector_update_trigger","tsvector_update_trigger_column","txid_current","txid_current_snapshot","txid_snapshot_xip","txid_snapshot_xmax","txid_snapshot_xmin","txid_visible_in_snapshot","unnest","upper","upper_inc","upper_inf","user","var_pop","var_samp","variance","version","width","width_bucket","xml_is_well_formed","xml_is_well_formed_content","xml_is_well_formed_document","xmlagg","xmlcomment","xmlconcat","xmlelement","xmlexists","xmlforest","xmlparse","xmlpi","xmlroot","xmlserialize","xpath","xpath_exists"],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["X3yt"],{X3yt:function(_,e,E){"use strict";E.r(e),E.d(e,"conf",function(){return t}),E.d(e,"language",function(){return T});var t={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},T={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["A","ABORT","ABS","ABSENT","ABSOLUTE","ACCESS","ACCORDING","ACTION","ADA","ADD","ADMIN","AFTER","AGGREGATE","ALL","ALLOCATE","ALSO","ALTER","ALWAYS","ANALYSE","ANALYZE","AND","ANY","ARE","ARRAY","ARRAY_AGG","ARRAY_MAX_CARDINALITY","AS","ASC","ASENSITIVE","ASSERTION","ASSIGNMENT","ASYMMETRIC","AT","ATOMIC","ATTRIBUTE","ATTRIBUTES","AUTHORIZATION","AVG","BACKWARD","BASE64","BEFORE","BEGIN","BEGIN_FRAME","BEGIN_PARTITION","BERNOULLI","BETWEEN","BIGINT","BINARY","BIT","BIT_LENGTH","BLOB","BLOCKED","BOM","BOOLEAN","BOTH","BREADTH","BY","C","CACHE","CALL","CALLED","CARDINALITY","CASCADE","CASCADED","CASE","CAST","CATALOG","CATALOG_NAME","CEIL","CEILING","CHAIN","CHAR","CHARACTER","CHARACTERISTICS","CHARACTERS","CHARACTER_LENGTH","CHARACTER_SET_CATALOG","CHARACTER_SET_NAME","CHARACTER_SET_SCHEMA","CHAR_LENGTH","CHECK","CHECKPOINT","CLASS","CLASS_ORIGIN","CLOB","CLOSE","CLUSTER","COALESCE","COBOL","COLLATE","COLLATION","COLLATION_CATALOG","COLLATION_NAME","COLLATION_SCHEMA","COLLECT","COLUMN","COLUMNS","COLUMN_NAME","COMMAND_FUNCTION","COMMAND_FUNCTION_CODE","COMMENT","COMMENTS","COMMIT","COMMITTED","CONCURRENTLY","CONDITION","CONDITION_NUMBER","CONFIGURATION","CONFLICT","CONNECT","CONNECTION","CONNECTION_NAME","CONSTRAINT","CONSTRAINTS","CONSTRAINT_CATALOG","CONSTRAINT_NAME","CONSTRAINT_SCHEMA","CONSTRUCTOR","CONTAINS","CONTENT","CONTINUE","CONTROL","CONVERSION","CONVERT","COPY","CORR","CORRESPONDING","COST","COUNT","COVAR_POP","COVAR_SAMP","CREATE","CROSS","CSV","CUBE","CUME_DIST","CURRENT","CURRENT_CATALOG","CURRENT_DATE","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_ROW","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CURSOR_NAME","CYCLE","DATA","DATABASE","DATALINK","DATE","DATETIME_INTERVAL_CODE","DATETIME_INTERVAL_PRECISION","DAY","DB","DEALLOCATE","DEC","DECIMAL","DECLARE","DEFAULT","DEFAULTS","DEFERRABLE","DEFERRED","DEFINED","DEFINER","DEGREE","DELETE","DELIMITER","DELIMITERS","DENSE_RANK","DEPENDS","DEPTH","DEREF","DERIVED","DESC","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DICTIONARY","DISABLE","DISCARD","DISCONNECT","DISPATCH","DISTINCT","DLNEWCOPY","DLPREVIOUSCOPY","DLURLCOMPLETE","DLURLCOMPLETEONLY","DLURLCOMPLETEWRITE","DLURLPATH","DLURLPATHONLY","DLURLPATHWRITE","DLURLSCHEME","DLURLSERVER","DLVALUE","DO","DOCUMENT","DOMAIN","DOUBLE","DROP","DYNAMIC","DYNAMIC_FUNCTION","DYNAMIC_FUNCTION_CODE","EACH","ELEMENT","ELSE","EMPTY","ENABLE","ENCODING","ENCRYPTED","END","END-EXEC","END_FRAME","END_PARTITION","ENFORCED","ENUM","EQUALS","ESCAPE","EVENT","EVERY","EXCEPT","EXCEPTION","EXCLUDE","EXCLUDING","EXCLUSIVE","EXEC","EXECUTE","EXISTS","EXP","EXPLAIN","EXPRESSION","EXTENSION","EXTERNAL","EXTRACT","FALSE","FAMILY","FETCH","FILE","FILTER","FINAL","FIRST","FIRST_VALUE","FLAG","FLOAT","FLOOR","FOLLOWING","FOR","FORCE","FOREIGN","FORTRAN","FORWARD","FOUND","FRAME_ROW","FREE","FREEZE","FROM","FS","FULL","FUNCTION","FUNCTIONS","FUSION","G","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRANTED","GREATEST","GROUP","GROUPING","GROUPS","HANDLER","HAVING","HEADER","HEX","HIERARCHY","HOLD","HOUR","ID","IDENTITY","IF","IGNORE","ILIKE","IMMEDIATE","IMMEDIATELY","IMMUTABLE","IMPLEMENTATION","IMPLICIT","IMPORT","IN","INCLUDING","INCREMENT","INDENT","INDEX","INDEXES","INDICATOR","INHERIT","INHERITS","INITIALLY","INLINE","INNER","INOUT","INPUT","INSENSITIVE","INSERT","INSTANCE","INSTANTIABLE","INSTEAD","INT","INTEGER","INTEGRITY","INTERSECT","INTERSECTION","INTERVAL","INTO","INVOKER","IS","ISNULL","ISOLATION","JOIN","K","KEY","KEY_MEMBER","KEY_TYPE","LABEL","LAG","LANGUAGE","LARGE","LAST","LAST_VALUE","LATERAL","LEAD","LEADING","LEAKPROOF","LEAST","LEFT","LENGTH","LEVEL","LIBRARY","LIKE","LIKE_REGEX","LIMIT","LINK","LISTEN","LN","LOAD","LOCAL","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKED","LOGGED","LOWER","M","MAP","MAPPING","MATCH","MATCHED","MATERIALIZED","MAX","MAXVALUE","MAX_CARDINALITY","MEMBER","MERGE","MESSAGE_LENGTH","MESSAGE_OCTET_LENGTH","MESSAGE_TEXT","METHOD","MIN","MINUTE","MINVALUE","MOD","MODE","MODIFIES","MODULE","MONTH","MORE","MOVE","MULTISET","MUMPS","NAME","NAMES","NAMESPACE","NATIONAL","NATURAL","NCHAR","NCLOB","NESTING","NEW","NEXT","NFC","NFD","NFKC","NFKD","NIL","NO","NONE","NORMALIZE","NORMALIZED","NOT","NOTHING","NOTIFY","NOTNULL","NOWAIT","NTH_VALUE","NTILE","NULL","NULLABLE","NULLIF","NULLS","NUMBER","NUMERIC","OBJECT","OCCURRENCES_REGEX","OCTETS","OCTET_LENGTH","OF","OFF","OFFSET","OIDS","OLD","ON","ONLY","OPEN","OPERATOR","OPTION","OPTIONS","OR","ORDER","ORDERING","ORDINALITY","OTHERS","OUT","OUTER","OUTPUT","OVER","OVERLAPS","OVERLAY","OVERRIDING","OWNED","OWNER","P","PAD","PARALLEL","PARAMETER","PARAMETER_MODE","PARAMETER_NAME","PARAMETER_ORDINAL_POSITION","PARAMETER_SPECIFIC_CATALOG","PARAMETER_SPECIFIC_NAME","PARAMETER_SPECIFIC_SCHEMA","PARSER","PARTIAL","PARTITION","PASCAL","PASSING","PASSTHROUGH","PASSWORD","PATH","PERCENT","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","PERIOD","PERMISSION","PLACING","PLANS","PLI","POLICY","PORTION","POSITION","POSITION_REGEX","POWER","PRECEDES","PRECEDING","PRECISION","PREPARE","PREPARED","PRESERVE","PRIMARY","PRIOR","PRIVILEGES","PROCEDURAL","PROCEDURE","PROGRAM","PUBLIC","QUOTE","RANGE","RANK","READ","READS","REAL","REASSIGN","RECHECK","RECOVERY","RECURSIVE","REF","REFERENCES","REFERENCING","REFRESH","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REINDEX","RELATIVE","RELEASE","RENAME","REPEATABLE","REPLACE","REPLICA","REQUIRING","RESET","RESPECT","RESTART","RESTORE","RESTRICT","RESULT","RETURN","RETURNED_CARDINALITY","RETURNED_LENGTH","RETURNED_OCTET_LENGTH","RETURNED_SQLSTATE","RETURNING","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROLLUP","ROUTINE","ROUTINE_CATALOG","ROUTINE_NAME","ROUTINE_SCHEMA","ROW","ROWS","ROW_COUNT","ROW_NUMBER","RULE","SAVEPOINT","SCALE","SCHEMA","SCHEMA_NAME","SCOPE","SCOPE_CATALOG","SCOPE_NAME","SCOPE_SCHEMA","SCROLL","SEARCH","SECOND","SECTION","SECURITY","SELECT","SELECTIVE","SELF","SENSITIVE","SEQUENCE","SEQUENCES","SERIALIZABLE","SERVER","SERVER_NAME","SESSION","SESSION_USER","SET","SETOF","SETS","SHARE","SHOW","SIMILAR","SIMPLE","SIZE","SKIP","SMALLINT","SNAPSHOT","SOME","SOURCE","SPACE","SPECIFIC","SPECIFICTYPE","SPECIFIC_NAME","SQL","SQLCODE","SQLERROR","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQRT","STABLE","STANDALONE","START","STATE","STATEMENT","STATIC","STATISTICS","STDDEV_POP","STDDEV_SAMP","STDIN","STDOUT","STORAGE","STRICT","STRIP","STRUCTURE","STYLE","SUBCLASS_ORIGIN","SUBMULTISET","SUBSTRING","SUBSTRING_REGEX","SUCCEEDS","SUM","SYMMETRIC","SYSID","SYSTEM","SYSTEM_TIME","SYSTEM_USER","T","TABLE","TABLES","TABLESAMPLE","TABLESPACE","TABLE_NAME","TEMP","TEMPLATE","TEMPORARY","TEXT","THEN","TIES","TIME","TIMESTAMP","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TOKEN","TOP_LEVEL_COUNT","TRAILING","TRANSACTION","TRANSACTIONS_COMMITTED","TRANSACTIONS_ROLLED_BACK","TRANSACTION_ACTIVE","TRANSFORM","TRANSFORMS","TRANSLATE","TRANSLATE_REGEX","TRANSLATION","TREAT","TRIGGER","TRIGGER_CATALOG","TRIGGER_NAME","TRIGGER_SCHEMA","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRUSTED","TYPE","TYPES","UESCAPE","UNBOUNDED","UNCOMMITTED","UNDER","UNENCRYPTED","UNION","UNIQUE","UNKNOWN","UNLINK","UNLISTEN","UNLOGGED","UNNAMED","UNNEST","UNTIL","UNTYPED","UPDATE","UPPER","URI","USAGE","USER","USER_DEFINED_TYPE_CATALOG","USER_DEFINED_TYPE_CODE","USER_DEFINED_TYPE_NAME","USER_DEFINED_TYPE_SCHEMA","USING","VACUUM","VALID","VALIDATE","VALIDATOR","VALUE","VALUES","VALUE_OF","VARBINARY","VARCHAR","VARIADIC","VARYING","VAR_POP","VAR_SAMP","VERBOSE","VERSION","VERSIONING","VIEW","VIEWS","VOLATILE","WHEN","WHENEVER","WHERE","WHITESPACE","WIDTH_BUCKET","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","XML","XMLAGG","XMLATTRIBUTES","XMLBINARY","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDECLARATION","XMLDOCUMENT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLITERATE","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSCHEMA","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","YEAR","YES","ZONE"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["abbrev","abs","acos","acosd","age","any","area","array_agg","array_append","array_cat","array_dims","array_fill","array_length","array_lower","array_ndims","array_position","array_positions","array_prepend","array_remove","array_replace","array_to_json","array_to_string","array_to_tsvector","array_upper","ascii","asin","asind","atan","atan2","atan2d","atand","avg","bit","bit_and","bit_length","bit_or","bool_and","bool_or","bound_box","box","brin_summarize_new_values","broadcast","btrim","cardinality","cbrt","ceil","ceiling","center","char_length","character_length","chr","circle","clock_timestamp","coalesce","col_description","concat","concat_ws","convert","convert_from","convert_to","corr","cos","cosd","cot","cotd","count","covar_pop","covar_samp","cume_dist","current_catalog","current_database","current_date","current_query","current_role","current_schema","current_schemas","current_setting","current_time","current_timestamp","current_user","currval","cursor_to_xml","date_part","date_trunc","decode","degrees","dense_rank","diameter","div","encode","enum_first","enum_last","enum_range","every","exp","extract","family","first_value","floor","format","format_type","generate_series","generate_subscripts","get_bit","get_byte","get_current_ts_config","gin_clean_pending_list","greatest","grouping","has_any_column_privilege","has_column_privilege","has_database_privilege","has_foreign_data_wrapper_privilege","has_function_privilege","has_language_privilege","has_schema_privilege","has_sequence_privilege","has_server_privilege","has_table_privilege","has_tablespace_privilege","has_type_privilege","height","host","hostmask","inet_client_addr","inet_client_port","inet_merge","inet_same_family","inet_server_addr","inet_server_port","initcap","isclosed","isempty","isfinite","isopen","json_agg","json_object","json_object_agg","json_populate_record","json_populate_recordset","json_to_record","json_to_recordset","jsonb_agg","jsonb_object_agg","justify_days","justify_hours","justify_interval","lag","last_value","lastval","lead","least","left","length","line","ln","localtime","localtimestamp","log","lower","lower_inc","lower_inf","lpad","lseg","ltrim","make_date","make_interval","make_time","make_timestamp","make_timestamptz","masklen","max","md5","min","mod","mode","netmask","network","nextval","now","npoints","nth_value","ntile","nullif","num_nonnulls","num_nulls","numnode","obj_description","octet_length","overlay","parse_ident","path","pclose","percent_rank","percentile_cont","percentile_disc","pg_advisory_lock","pg_advisory_lock_shared","pg_advisory_unlock","pg_advisory_unlock_all","pg_advisory_unlock_shared","pg_advisory_xact_lock","pg_advisory_xact_lock_shared","pg_backend_pid","pg_backup_start_time","pg_blocking_pids","pg_cancel_backend","pg_client_encoding","pg_collation_is_visible","pg_column_size","pg_conf_load_time","pg_control_checkpoint","pg_control_init","pg_control_recovery","pg_control_system","pg_conversion_is_visible","pg_create_logical_replication_slot","pg_create_physical_replication_slot","pg_create_restore_point","pg_current_xlog_flush_location","pg_current_xlog_insert_location","pg_current_xlog_location","pg_database_size","pg_describe_object","pg_drop_replication_slot","pg_export_snapshot","pg_filenode_relation","pg_function_is_visible","pg_get_constraintdef","pg_get_expr","pg_get_function_arguments","pg_get_function_identity_arguments","pg_get_function_result","pg_get_functiondef","pg_get_indexdef","pg_get_keywords","pg_get_object_address","pg_get_owned_sequence","pg_get_ruledef","pg_get_serial_sequence","pg_get_triggerdef","pg_get_userbyid","pg_get_viewdef","pg_has_role","pg_identify_object","pg_identify_object_as_address","pg_index_column_has_property","pg_index_has_property","pg_indexam_has_property","pg_indexes_size","pg_is_in_backup","pg_is_in_recovery","pg_is_other_temp_schema","pg_is_xlog_replay_paused","pg_last_committed_xact","pg_last_xact_replay_timestamp","pg_last_xlog_receive_location","pg_last_xlog_replay_location","pg_listening_channels","pg_logical_emit_message","pg_logical_slot_get_binary_changes","pg_logical_slot_get_changes","pg_logical_slot_peek_binary_changes","pg_logical_slot_peek_changes","pg_ls_dir","pg_my_temp_schema","pg_notification_queue_usage","pg_opclass_is_visible","pg_operator_is_visible","pg_opfamily_is_visible","pg_options_to_table","pg_postmaster_start_time","pg_read_binary_file","pg_read_file","pg_relation_filenode","pg_relation_filepath","pg_relation_size","pg_reload_conf","pg_replication_origin_create","pg_replication_origin_drop","pg_replication_origin_oid","pg_replication_origin_progress","pg_replication_origin_session_is_setup","pg_replication_origin_session_progress","pg_replication_origin_session_reset","pg_replication_origin_session_setup","pg_replication_origin_xact_reset","pg_replication_origin_xact_setup","pg_rotate_logfile","pg_size_bytes","pg_size_pretty","pg_sleep","pg_sleep_for","pg_sleep_until","pg_start_backup","pg_stat_file","pg_stop_backup","pg_switch_xlog","pg_table_is_visible","pg_table_size","pg_tablespace_databases","pg_tablespace_location","pg_tablespace_size","pg_terminate_backend","pg_total_relation_size","pg_trigger_depth","pg_try_advisory_lock","pg_try_advisory_lock_shared","pg_try_advisory_xact_lock","pg_try_advisory_xact_lock_shared","pg_ts_config_is_visible","pg_ts_dict_is_visible","pg_ts_parser_is_visible","pg_ts_template_is_visible","pg_type_is_visible","pg_typeof","pg_xact_commit_timestamp","pg_xlog_location_diff","pg_xlog_replay_pause","pg_xlog_replay_resume","pg_xlogfile_name","pg_xlogfile_name_offset","phraseto_tsquery","pi","plainto_tsquery","point","polygon","popen","position","power","pqserverversion","query_to_xml","querytree","quote_ident","quote_literal","quote_nullable","radians","radius","random","range_merge","rank","regexp_matches","regexp_replace","regexp_split_to_array","regexp_split_to_table","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","repeat","replace","reverse","right","round","row_number","row_security_active","row_to_json","rpad","rtrim","scale","session_user","set_bit","set_byte","set_config","set_masklen","setseed","setval","setweight","shobj_description","sign","sin","sind","split_part","sprintf","sqrt","statement_timestamp","stddev","stddev_pop","stddev_samp","string_agg","string_to_array","strip","strpos","substr","substring","sum","table_to_xml","table_to_xml_and_xmlschema","tan","tand","text","timeofday","timezone","to_ascii","to_char","to_date","to_hex","to_json","to_number","to_regclass","to_regnamespace","to_regoper","to_regoperator","to_regproc","to_regprocedure","to_regrole","to_regtype","to_timestamp","to_tsquery","to_tsvector","transaction_timestamp","translate","trim","trunc","ts_debug","ts_delete","ts_filter","ts_headline","ts_lexize","ts_parse","ts_rank","ts_rank_cd","ts_rewrite","ts_stat","ts_token_type","tsquery_phrase","tsvector_to_array","tsvector_update_trigger","tsvector_update_trigger_column","txid_current","txid_current_snapshot","txid_snapshot_xip","txid_snapshot_xmax","txid_snapshot_xmin","txid_visible_in_snapshot","unnest","upper","upper_inc","upper_inf","user","var_pop","var_samp","variance","version","width","width_bucket","xml_is_well_formed","xml_is_well_formed_content","xml_is_well_formed_document","xmlagg","xmlcomment","xmlconcat","xmlelement","xmlexists","xmlforest","xmlparse","xmlpi","xmlroot","xmlserialize","xpath","xpath_exists"],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/X66W.280403ab.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/X66W.280403ab.js index ea5da3adb..c25024d89 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/X66W.280403ab.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/X66W.280403ab.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["X66W"],{X66W:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return t}),o.d(n,"language",function(){return r});var t={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["var","end_var"],["var_input","end_var"],["var_output","end_var"],["var_in_out","end_var"],["var_temp","end_var"],["var_global","end_var"],["var_access","end_var"],["var_external","end_var"],["type","end_type"],["struct","end_struct"],["program","end_program"],["function","end_function"],["function_block","end_function_block"],["action","end_action"],["step","end_step"],["initial_step","end_step"],["transaction","end_transaction"],["configuration","end_configuration"],["tcp","end_tcp"],["recource","end_recource"],["channel","end_channel"],["library","end_library"],["folder","end_folder"],["binaries","end_binaries"],["includes","end_includes"],["sources","end_sources"]],autoClosingPairs:[{open:"[",close:"]"},{open:"{",close:"}"},{open:"(",close:")"},{open:"/*",close:"*/"},{open:"'",close:"'",notIn:["string_sq"]},{open:'"',close:'"',notIn:["string_dq"]},{open:"var_input",close:"end_var"},{open:"var_output",close:"end_var"},{open:"var_in_out",close:"end_var"},{open:"var_temp",close:"end_var"},{open:"var_global",close:"end_var"},{open:"var_access",close:"end_var"},{open:"var_external",close:"end_var"},{open:"type",close:"end_type"},{open:"struct",close:"end_struct"},{open:"program",close:"end_program"},{open:"function",close:"end_function"},{open:"function_block",close:"end_function_block"},{open:"action",close:"end_action"},{open:"step",close:"end_step"},{open:"initial_step",close:"end_step"},{open:"transaction",close:"end_transaction"},{open:"configuration",close:"end_configuration"},{open:"tcp",close:"end_tcp"},{open:"recource",close:"end_recource"},{open:"channel",close:"end_channel"},{open:"library",close:"end_library"},{open:"folder",close:"end_folder"},{open:"binaries",close:"end_binaries"},{open:"includes",close:"end_includes"},{open:"sources",close:"end_sources"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"var",close:"end_var"},{open:"var_input",close:"end_var"},{open:"var_output",close:"end_var"},{open:"var_in_out",close:"end_var"},{open:"var_temp",close:"end_var"},{open:"var_global",close:"end_var"},{open:"var_access",close:"end_var"},{open:"var_external",close:"end_var"},{open:"type",close:"end_type"},{open:"struct",close:"end_struct"},{open:"program",close:"end_program"},{open:"function",close:"end_function"},{open:"function_block",close:"end_function_block"},{open:"action",close:"end_action"},{open:"step",close:"end_step"},{open:"initial_step",close:"end_step"},{open:"transaction",close:"end_transaction"},{open:"configuration",close:"end_configuration"},{open:"tcp",close:"end_tcp"},{open:"recource",close:"end_recource"},{open:"channel",close:"end_channel"},{open:"library",close:"end_library"},{open:"folder",close:"end_folder"},{open:"binaries",close:"end_binaries"},{open:"includes",close:"end_includes"},{open:"sources",close:"end_sources"}],folding:{markers:{start:new RegExp("^\\s*#pragma\\s+region\\b"),end:new RegExp("^\\s*#pragma\\s+endregion\\b")}}},r={defaultToken:"",tokenPostfix:".st",ignoreCase:!0,brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["if","end_if","elsif","else","case","of","to","__try","__catch","__finally","do","with","by","while","repeat","end_while","end_repeat","end_case","for","end_for","task","retain","non_retain","constant","with","at","exit","return","interval","priority","address","port","on_channel","then","iec","file","uses","version","packagetype","displayname","copyright","summary","vendor","common_source","from","extends"],constant:["false","true","null"],defineKeywords:["var","var_input","var_output","var_in_out","var_temp","var_global","var_access","var_external","end_var","type","end_type","struct","end_struct","program","end_program","function","end_function","function_block","end_function_block","interface","end_interface","method","end_method","property","end_property","namespace","end_namespace","configuration","end_configuration","tcp","end_tcp","resource","end_resource","channel","end_channel","library","end_library","folder","end_folder","binaries","end_binaries","includes","end_includes","sources","end_sources","action","end_action","step","initial_step","end_step","transaction","end_transaction"],typeKeywords:["int","sint","dint","lint","usint","uint","udint","ulint","real","lreal","time","date","time_of_day","date_and_time","string","bool","byte","word","dword","array","pointer","lword"],operators:["=",">","<",":",":=","<=",">=","<>","&","+","-","*","**","MOD","^","or","and","not","xor","abs","acos","asin","atan","cos","exp","expt","ln","log","sin","sqrt","tan","sel","max","min","limit","mux","shl","shr","rol","ror","indexof","sizeof","adr","adrinst","bitadr","is_valid","ref","ref_to"],builtinVariables:[],builtinFunctions:["sr","rs","tp","ton","tof","eq","ge","le","lt","ne","round","trunc","ctd","сtu","ctud","r_trig","f_trig","move","concat","delete","find","insert","left","len","replace","right","rtc"],symbols:/[=>","<",":",":=","<=",">=","<>","&","+","-","*","**","MOD","^","or","and","not","xor","abs","acos","asin","atan","cos","exp","expt","ln","log","sin","sqrt","tan","sel","max","min","limit","mux","shl","shr","rol","ror","indexof","sizeof","adr","adrinst","bitadr","is_valid","ref","ref_to"],builtinVariables:[],builtinFunctions:["sr","rs","tp","ton","tof","eq","ge","le","lt","ne","round","trunc","ctd","сtu","ctud","r_trig","f_trig","move","concat","delete","find","insert","left","len","replace","right","rtc"],symbols:/[=>"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".cameligo",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["abs","begin","Bytes","Crypto","Current","else","end","failwith","false","fun","if","in","let","let%entry","let%init","List","list","Map","map","match","match%nat","mod","not","operation","Operation","of","Set","set","sender","source","String","then","true","type","with"],typeKeywords:["int","unit","string","tz"],operators:["=",">","<","<=",">=","<>",":",":=","and","mod","or","+","-","*","/","@","&","^","%","->","<-"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\(\*]+/,"comment"],[/\*\)/,"comment","@pop"],[/\(\*/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["XfA5"],{XfA5:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return o}),t.d(n,"language",function(){return s});var o={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".cameligo",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["abs","begin","Bytes","Crypto","Current","else","end","failwith","false","fun","if","in","let","let%entry","let%init","List","list","Map","map","match","match%nat","mod","not","operation","Operation","of","Set","set","sender","source","String","then","true","type","with"],typeKeywords:["int","unit","string","tz"],operators:["=",">","<","<=",">=","<>",":",":=","and","mod","or","+","-","*","/","@","&","^","%","->","<-"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\(\*]+/,"comment"],[/\*\)/,"comment","@pop"],[/\(\*/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Y8uL.5091ff0d.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Y8uL.5091ff0d.js index 129b59449..22c5fcf44 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Y8uL.5091ff0d.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Y8uL.5091ff0d.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["Y8uL"],{Y8uL:function(e,_,t){"use strict";t.r(_),t.d(_,"conf",function(){return r}),t.d(_,"language",function(){return i});var r={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},i={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["AES128","AES256","ALL","ALLOWOVERWRITE","ANALYSE","ANALYZE","AND","ANY","ARRAY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BLANKSASNULL","BOTH","BYTEDICT","BZIP2","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","CREDENTIALS","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURRENT_USER_ID","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DELTA","DELTA32K","DESC","DISABLE","DISTINCT","DO","ELSE","EMPTYASNULL","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","END","EXCEPT","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GRANT","GROUP","GZIP","HAVING","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTERSECT","INTO","IS","ISNULL","JOIN","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","LZO","LZOP","MINUS","MOSTLY13","MOSTLY32","MOSTLY8","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","OR","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RAW","READRATIO","RECOVER","REFERENCES","RESPECT","REJECTLOG","RESORT","RESTORE","RIGHT","SELECT","SESSION_USER","SIMILAR","SNAPSHOT","SOME","SYSDATE","SYSTEM","TABLE","TAG","TDES","TEXT255","TEXT32K","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","TRUNCATECOLUMNS","UNION","UNIQUE","USER","USING","VERBOSE","WALLET","WHEN","WHERE","WITH","WITHOUT"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["current_schema","current_schemas","has_database_privilege","has_schema_privilege","has_table_privilege","age","current_time","current_timestamp","localtime","isfinite","now","ascii","get_bit","get_byte","set_bit","set_byte","to_ascii","approximate percentile_disc","avg","count","listagg","max","median","min","percentile_cont","stddev_samp","stddev_pop","sum","var_samp","var_pop","bit_and","bit_or","bool_and","bool_or","cume_dist","first_value","lag","last_value","lead","nth_value","ratio_to_report","dense_rank","ntile","percent_rank","rank","row_number","case","coalesce","decode","greatest","least","nvl","nvl2","nullif","add_months","at time zone","convert_timezone","current_date","date_cmp","date_cmp_timestamp","date_cmp_timestamptz","date_part_year","dateadd","datediff","date_part","date_trunc","extract","getdate","interval_cmp","last_day","months_between","next_day","sysdate","timeofday","timestamp_cmp","timestamp_cmp_date","timestamp_cmp_timestamptz","timestamptz_cmp","timestamptz_cmp_date","timestamptz_cmp_timestamp","timezone","to_timestamp","trunc","abs","acos","asin","atan","atan2","cbrt","ceil","ceiling","checksum","cos","cot","degrees","dexp","dlog1","dlog10","exp","floor","ln","log","mod","pi","power","radians","random","round","sin","sign","sqrt","tan","to_hex","bpcharcmp","btrim","bttext_pattern_cmp","char_length","character_length","charindex","chr","concat","crc32","func_sha1","initcap","left and rights","len","length","lower","lpad and rpads","ltrim","md5","octet_length","position","quote_ident","quote_literal","regexp_count","regexp_instr","regexp_replace","regexp_substr","repeat","replace","replicate","reverse","rtrim","split_part","strpos","strtol","substring","textlen","translate","trim","upper","cast","convert","to_char","to_date","to_number","json_array_length","json_extract_array_element_text","json_extract_path_text","current_setting","pg_cancel_backend","pg_terminate_backend","set_config","current_database","current_user","current_user_id","pg_backend_pid","pg_last_copy_count","pg_last_copy_id","pg_last_query_id","pg_last_unload_count","session_user","slice_num","user","version","abbrev","acosd","any","area","array_agg","array_append","array_cat","array_dims","array_fill","array_length","array_lower","array_ndims","array_position","array_positions","array_prepend","array_remove","array_replace","array_to_json","array_to_string","array_to_tsvector","array_upper","asind","atan2d","atand","bit","bit_length","bound_box","box","brin_summarize_new_values","broadcast","cardinality","center","circle","clock_timestamp","col_description","concat_ws","convert_from","convert_to","corr","cosd","cotd","covar_pop","covar_samp","current_catalog","current_query","current_role","currval","cursor_to_xml","diameter","div","encode","enum_first","enum_last","enum_range","every","family","format","format_type","generate_series","generate_subscripts","get_current_ts_config","gin_clean_pending_list","grouping","has_any_column_privilege","has_column_privilege","has_foreign_data_wrapper_privilege","has_function_privilege","has_language_privilege","has_sequence_privilege","has_server_privilege","has_tablespace_privilege","has_type_privilege","height","host","hostmask","inet_client_addr","inet_client_port","inet_merge","inet_same_family","inet_server_addr","inet_server_port","isclosed","isempty","isopen","json_agg","json_object","json_object_agg","json_populate_record","json_populate_recordset","json_to_record","json_to_recordset","jsonb_agg","jsonb_object_agg","justify_days","justify_hours","justify_interval","lastval","left","line","localtimestamp","lower_inc","lower_inf","lpad","lseg","make_date","make_interval","make_time","make_timestamp","make_timestamptz","masklen","mode","netmask","network","nextval","npoints","num_nonnulls","num_nulls","numnode","obj_description","overlay","parse_ident","path","pclose","percentile_disc","pg_advisory_lock","pg_advisory_lock_shared","pg_advisory_unlock","pg_advisory_unlock_all","pg_advisory_unlock_shared","pg_advisory_xact_lock","pg_advisory_xact_lock_shared","pg_backup_start_time","pg_blocking_pids","pg_client_encoding","pg_collation_is_visible","pg_column_size","pg_conf_load_time","pg_control_checkpoint","pg_control_init","pg_control_recovery","pg_control_system","pg_conversion_is_visible","pg_create_logical_replication_slot","pg_create_physical_replication_slot","pg_create_restore_point","pg_current_xlog_flush_location","pg_current_xlog_insert_location","pg_current_xlog_location","pg_database_size","pg_describe_object","pg_drop_replication_slot","pg_export_snapshot","pg_filenode_relation","pg_function_is_visible","pg_get_constraintdef","pg_get_expr","pg_get_function_arguments","pg_get_function_identity_arguments","pg_get_function_result","pg_get_functiondef","pg_get_indexdef","pg_get_keywords","pg_get_object_address","pg_get_owned_sequence","pg_get_ruledef","pg_get_serial_sequence","pg_get_triggerdef","pg_get_userbyid","pg_get_viewdef","pg_has_role","pg_identify_object","pg_identify_object_as_address","pg_index_column_has_property","pg_index_has_property","pg_indexam_has_property","pg_indexes_size","pg_is_in_backup","pg_is_in_recovery","pg_is_other_temp_schema","pg_is_xlog_replay_paused","pg_last_committed_xact","pg_last_xact_replay_timestamp","pg_last_xlog_receive_location","pg_last_xlog_replay_location","pg_listening_channels","pg_logical_emit_message","pg_logical_slot_get_binary_changes","pg_logical_slot_get_changes","pg_logical_slot_peek_binary_changes","pg_logical_slot_peek_changes","pg_ls_dir","pg_my_temp_schema","pg_notification_queue_usage","pg_opclass_is_visible","pg_operator_is_visible","pg_opfamily_is_visible","pg_options_to_table","pg_postmaster_start_time","pg_read_binary_file","pg_read_file","pg_relation_filenode","pg_relation_filepath","pg_relation_size","pg_reload_conf","pg_replication_origin_create","pg_replication_origin_drop","pg_replication_origin_oid","pg_replication_origin_progress","pg_replication_origin_session_is_setup","pg_replication_origin_session_progress","pg_replication_origin_session_reset","pg_replication_origin_session_setup","pg_replication_origin_xact_reset","pg_replication_origin_xact_setup","pg_rotate_logfile","pg_size_bytes","pg_size_pretty","pg_sleep","pg_sleep_for","pg_sleep_until","pg_start_backup","pg_stat_file","pg_stop_backup","pg_switch_xlog","pg_table_is_visible","pg_table_size","pg_tablespace_databases","pg_tablespace_location","pg_tablespace_size","pg_total_relation_size","pg_trigger_depth","pg_try_advisory_lock","pg_try_advisory_lock_shared","pg_try_advisory_xact_lock","pg_try_advisory_xact_lock_shared","pg_ts_config_is_visible","pg_ts_dict_is_visible","pg_ts_parser_is_visible","pg_ts_template_is_visible","pg_type_is_visible","pg_typeof","pg_xact_commit_timestamp","pg_xlog_location_diff","pg_xlog_replay_pause","pg_xlog_replay_resume","pg_xlogfile_name","pg_xlogfile_name_offset","phraseto_tsquery","plainto_tsquery","point","polygon","popen","pqserverversion","query_to_xml","querytree","quote_nullable","radius","range_merge","regexp_matches","regexp_split_to_array","regexp_split_to_table","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","right","row_security_active","row_to_json","rpad","scale","set_masklen","setseed","setval","setweight","shobj_description","sind","sprintf","statement_timestamp","stddev","string_agg","string_to_array","strip","substr","table_to_xml","table_to_xml_and_xmlschema","tand","text","to_json","to_regclass","to_regnamespace","to_regoper","to_regoperator","to_regproc","to_regprocedure","to_regrole","to_regtype","to_tsquery","to_tsvector","transaction_timestamp","ts_debug","ts_delete","ts_filter","ts_headline","ts_lexize","ts_parse","ts_rank","ts_rank_cd","ts_rewrite","ts_stat","ts_token_type","tsquery_phrase","tsvector_to_array","tsvector_update_trigger","tsvector_update_trigger_column","txid_current","txid_current_snapshot","txid_snapshot_xip","txid_snapshot_xmax","txid_snapshot_xmin","txid_visible_in_snapshot","unnest","upper_inc","upper_inf","variance","width","width_bucket","xml_is_well_formed","xml_is_well_formed_content","xml_is_well_formed_document","xmlagg","xmlcomment","xmlconcat","xmlelement","xmlexists","xmlforest","xmlparse","xmlpi","xmlroot","xmlserialize","xpath","xpath_exists"],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["Y8uL"],{Y8uL:function(e,_,t){"use strict";t.r(_),t.d(_,"conf",function(){return r}),t.d(_,"language",function(){return i});var r={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},i={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["AES128","AES256","ALL","ALLOWOVERWRITE","ANALYSE","ANALYZE","AND","ANY","ARRAY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BLANKSASNULL","BOTH","BYTEDICT","BZIP2","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","CREDENTIALS","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURRENT_USER_ID","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DELTA","DELTA32K","DESC","DISABLE","DISTINCT","DO","ELSE","EMPTYASNULL","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","END","EXCEPT","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GRANT","GROUP","GZIP","HAVING","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTERSECT","INTO","IS","ISNULL","JOIN","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","LZO","LZOP","MINUS","MOSTLY13","MOSTLY32","MOSTLY8","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","OR","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RAW","READRATIO","RECOVER","REFERENCES","RESPECT","REJECTLOG","RESORT","RESTORE","RIGHT","SELECT","SESSION_USER","SIMILAR","SNAPSHOT","SOME","SYSDATE","SYSTEM","TABLE","TAG","TDES","TEXT255","TEXT32K","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","TRUNCATECOLUMNS","UNION","UNIQUE","USER","USING","VERBOSE","WALLET","WHEN","WHERE","WITH","WITHOUT"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["current_schema","current_schemas","has_database_privilege","has_schema_privilege","has_table_privilege","age","current_time","current_timestamp","localtime","isfinite","now","ascii","get_bit","get_byte","set_bit","set_byte","to_ascii","approximate percentile_disc","avg","count","listagg","max","median","min","percentile_cont","stddev_samp","stddev_pop","sum","var_samp","var_pop","bit_and","bit_or","bool_and","bool_or","cume_dist","first_value","lag","last_value","lead","nth_value","ratio_to_report","dense_rank","ntile","percent_rank","rank","row_number","case","coalesce","decode","greatest","least","nvl","nvl2","nullif","add_months","at time zone","convert_timezone","current_date","date_cmp","date_cmp_timestamp","date_cmp_timestamptz","date_part_year","dateadd","datediff","date_part","date_trunc","extract","getdate","interval_cmp","last_day","months_between","next_day","sysdate","timeofday","timestamp_cmp","timestamp_cmp_date","timestamp_cmp_timestamptz","timestamptz_cmp","timestamptz_cmp_date","timestamptz_cmp_timestamp","timezone","to_timestamp","trunc","abs","acos","asin","atan","atan2","cbrt","ceil","ceiling","checksum","cos","cot","degrees","dexp","dlog1","dlog10","exp","floor","ln","log","mod","pi","power","radians","random","round","sin","sign","sqrt","tan","to_hex","bpcharcmp","btrim","bttext_pattern_cmp","char_length","character_length","charindex","chr","concat","crc32","func_sha1","initcap","left and rights","len","length","lower","lpad and rpads","ltrim","md5","octet_length","position","quote_ident","quote_literal","regexp_count","regexp_instr","regexp_replace","regexp_substr","repeat","replace","replicate","reverse","rtrim","split_part","strpos","strtol","substring","textlen","translate","trim","upper","cast","convert","to_char","to_date","to_number","json_array_length","json_extract_array_element_text","json_extract_path_text","current_setting","pg_cancel_backend","pg_terminate_backend","set_config","current_database","current_user","current_user_id","pg_backend_pid","pg_last_copy_count","pg_last_copy_id","pg_last_query_id","pg_last_unload_count","session_user","slice_num","user","version","abbrev","acosd","any","area","array_agg","array_append","array_cat","array_dims","array_fill","array_length","array_lower","array_ndims","array_position","array_positions","array_prepend","array_remove","array_replace","array_to_json","array_to_string","array_to_tsvector","array_upper","asind","atan2d","atand","bit","bit_length","bound_box","box","brin_summarize_new_values","broadcast","cardinality","center","circle","clock_timestamp","col_description","concat_ws","convert_from","convert_to","corr","cosd","cotd","covar_pop","covar_samp","current_catalog","current_query","current_role","currval","cursor_to_xml","diameter","div","encode","enum_first","enum_last","enum_range","every","family","format","format_type","generate_series","generate_subscripts","get_current_ts_config","gin_clean_pending_list","grouping","has_any_column_privilege","has_column_privilege","has_foreign_data_wrapper_privilege","has_function_privilege","has_language_privilege","has_sequence_privilege","has_server_privilege","has_tablespace_privilege","has_type_privilege","height","host","hostmask","inet_client_addr","inet_client_port","inet_merge","inet_same_family","inet_server_addr","inet_server_port","isclosed","isempty","isopen","json_agg","json_object","json_object_agg","json_populate_record","json_populate_recordset","json_to_record","json_to_recordset","jsonb_agg","jsonb_object_agg","justify_days","justify_hours","justify_interval","lastval","left","line","localtimestamp","lower_inc","lower_inf","lpad","lseg","make_date","make_interval","make_time","make_timestamp","make_timestamptz","masklen","mode","netmask","network","nextval","npoints","num_nonnulls","num_nulls","numnode","obj_description","overlay","parse_ident","path","pclose","percentile_disc","pg_advisory_lock","pg_advisory_lock_shared","pg_advisory_unlock","pg_advisory_unlock_all","pg_advisory_unlock_shared","pg_advisory_xact_lock","pg_advisory_xact_lock_shared","pg_backup_start_time","pg_blocking_pids","pg_client_encoding","pg_collation_is_visible","pg_column_size","pg_conf_load_time","pg_control_checkpoint","pg_control_init","pg_control_recovery","pg_control_system","pg_conversion_is_visible","pg_create_logical_replication_slot","pg_create_physical_replication_slot","pg_create_restore_point","pg_current_xlog_flush_location","pg_current_xlog_insert_location","pg_current_xlog_location","pg_database_size","pg_describe_object","pg_drop_replication_slot","pg_export_snapshot","pg_filenode_relation","pg_function_is_visible","pg_get_constraintdef","pg_get_expr","pg_get_function_arguments","pg_get_function_identity_arguments","pg_get_function_result","pg_get_functiondef","pg_get_indexdef","pg_get_keywords","pg_get_object_address","pg_get_owned_sequence","pg_get_ruledef","pg_get_serial_sequence","pg_get_triggerdef","pg_get_userbyid","pg_get_viewdef","pg_has_role","pg_identify_object","pg_identify_object_as_address","pg_index_column_has_property","pg_index_has_property","pg_indexam_has_property","pg_indexes_size","pg_is_in_backup","pg_is_in_recovery","pg_is_other_temp_schema","pg_is_xlog_replay_paused","pg_last_committed_xact","pg_last_xact_replay_timestamp","pg_last_xlog_receive_location","pg_last_xlog_replay_location","pg_listening_channels","pg_logical_emit_message","pg_logical_slot_get_binary_changes","pg_logical_slot_get_changes","pg_logical_slot_peek_binary_changes","pg_logical_slot_peek_changes","pg_ls_dir","pg_my_temp_schema","pg_notification_queue_usage","pg_opclass_is_visible","pg_operator_is_visible","pg_opfamily_is_visible","pg_options_to_table","pg_postmaster_start_time","pg_read_binary_file","pg_read_file","pg_relation_filenode","pg_relation_filepath","pg_relation_size","pg_reload_conf","pg_replication_origin_create","pg_replication_origin_drop","pg_replication_origin_oid","pg_replication_origin_progress","pg_replication_origin_session_is_setup","pg_replication_origin_session_progress","pg_replication_origin_session_reset","pg_replication_origin_session_setup","pg_replication_origin_xact_reset","pg_replication_origin_xact_setup","pg_rotate_logfile","pg_size_bytes","pg_size_pretty","pg_sleep","pg_sleep_for","pg_sleep_until","pg_start_backup","pg_stat_file","pg_stop_backup","pg_switch_xlog","pg_table_is_visible","pg_table_size","pg_tablespace_databases","pg_tablespace_location","pg_tablespace_size","pg_total_relation_size","pg_trigger_depth","pg_try_advisory_lock","pg_try_advisory_lock_shared","pg_try_advisory_xact_lock","pg_try_advisory_xact_lock_shared","pg_ts_config_is_visible","pg_ts_dict_is_visible","pg_ts_parser_is_visible","pg_ts_template_is_visible","pg_type_is_visible","pg_typeof","pg_xact_commit_timestamp","pg_xlog_location_diff","pg_xlog_replay_pause","pg_xlog_replay_resume","pg_xlogfile_name","pg_xlogfile_name_offset","phraseto_tsquery","plainto_tsquery","point","polygon","popen","pqserverversion","query_to_xml","querytree","quote_nullable","radius","range_merge","regexp_matches","regexp_split_to_array","regexp_split_to_table","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","right","row_security_active","row_to_json","rpad","scale","set_masklen","setseed","setval","setweight","shobj_description","sind","sprintf","statement_timestamp","stddev","string_agg","string_to_array","strip","substr","table_to_xml","table_to_xml_and_xmlschema","tand","text","to_json","to_regclass","to_regnamespace","to_regoper","to_regoperator","to_regproc","to_regprocedure","to_regrole","to_regtype","to_tsquery","to_tsvector","transaction_timestamp","ts_debug","ts_delete","ts_filter","ts_headline","ts_lexize","ts_parse","ts_rank","ts_rank_cd","ts_rewrite","ts_stat","ts_token_type","tsquery_phrase","tsvector_to_array","tsvector_update_trigger","tsvector_update_trigger_column","txid_current","txid_current_snapshot","txid_snapshot_xip","txid_snapshot_xmax","txid_snapshot_xmin","txid_visible_in_snapshot","unnest","upper_inc","upper_inf","variance","width","width_bucket","xml_is_well_formed","xml_is_well_formed_content","xml_is_well_formed_document","xmlagg","xmlcomment","xmlconcat","xmlelement","xmlexists","xmlforest","xmlparse","xmlpi","xmlroot","xmlserialize","xpath","xpath_exists"],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/YTGY.8046dd46.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/YTGY.8046dd46.js index e55420924..782b47730 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/YTGY.8046dd46.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/YTGY.8046dd46.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["YTGY"],{YTGY:function(t,e,i){"use strict";i.r(e),i.d(e,"conf",function(){return r}),i.d(e,"language",function(){return m});var r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["{#","#}"]},brackets:[["{#","#}"],["{%","%}"],["{{","}}"],["(",")"],["[","]"],["\x3c!--","--\x3e"],["<",">"]],autoClosingPairs:[{open:"{# ",close:" #}"},{open:"{% ",close:" %}"},{open:"{{ ",close:" }}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}]},m={defaultToken:"",tokenPostfix:"",ignoreCase:!0,keywords:["apply","autoescape","block","deprecated","do","embed","extends","flush","for","from","if","import","include","macro","sandbox","set","use","verbatim","with","endapply","endautoescape","endblock","endembed","endfor","endif","endmacro","endsandbox","endset","endwith","true","false"],tokenizer:{root:[[/\s+/],[/{#/,"comment.twig","@commentState"],[/{%[-~]?/,"delimiter.twig","@blockState"],[/{{[-~]?/,"delimiter.twig","@variableState"],[/)/,["delimiter.html","tag.html","","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)((?:[\w\-]+:)?[\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)((?:[\w\-]+:)?[\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/|>=|<=/,"operators.twig"],[/(starts with|ends with|matches)(\s+)/,["operators.twig",""]],[/(in)(\s+)/,["operators.twig",""]],[/(is)(\s+)/,["operators.twig",""]],[/\||~|:|\.{1,2}|\?{1,2}/,"operators.twig"],[/[^\W\d][\w]*/,{cases:{"@keywords":"keyword.twig","@default":"variable.twig"}}],[/\d+(\.\d+)?/,"number.twig"],[/\(|\)|\[|\]|{|}|,/,"delimiter.twig"],[/"([^#"\\]*(?:\\.[^#"\\]*)*)"|\'([^\'\\]*(?:\\.[^\'\\]*)*)\'/,"string.twig"],[/"/,"string.twig","@stringState"],[/=>/,"operators.twig"],[/=/,"operators.twig"]],doctype:[[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/]],script:[[/type/,"attribute.name.html","@scriptAfterType"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/=/,"delimiter.html","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value.html",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value.html",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]],style:[[/type/,"attribute.name.html","@styleAfterType"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/=/,"delimiter.html","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value.html",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value.html",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["YTGY"],{YTGY:function(t,e,i){"use strict";i.r(e),i.d(e,"conf",function(){return r}),i.d(e,"language",function(){return m});var r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["{#","#}"]},brackets:[["{#","#}"],["{%","%}"],["{{","}}"],["(",")"],["[","]"],["\x3c!--","--\x3e"],["<",">"]],autoClosingPairs:[{open:"{# ",close:" #}"},{open:"{% ",close:" %}"},{open:"{{ ",close:" }}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}]},m={defaultToken:"",tokenPostfix:"",ignoreCase:!0,keywords:["apply","autoescape","block","deprecated","do","embed","extends","flush","for","from","if","import","include","macro","sandbox","set","use","verbatim","with","endapply","endautoescape","endblock","endembed","endfor","endif","endmacro","endsandbox","endset","endwith","true","false"],tokenizer:{root:[[/\s+/],[/{#/,"comment.twig","@commentState"],[/{%[-~]?/,"delimiter.twig","@blockState"],[/{{[-~]?/,"delimiter.twig","@variableState"],[/)/,["delimiter.html","tag.html","","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)((?:[\w\-]+:)?[\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)((?:[\w\-]+:)?[\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/|>=|<=/,"operators.twig"],[/(starts with|ends with|matches)(\s+)/,["operators.twig",""]],[/(in)(\s+)/,["operators.twig",""]],[/(is)(\s+)/,["operators.twig",""]],[/\||~|:|\.{1,2}|\?{1,2}/,"operators.twig"],[/[^\W\d][\w]*/,{cases:{"@keywords":"keyword.twig","@default":"variable.twig"}}],[/\d+(\.\d+)?/,"number.twig"],[/\(|\)|\[|\]|{|}|,/,"delimiter.twig"],[/"([^#"\\]*(?:\\.[^#"\\]*)*)"|\'([^\'\\]*(?:\\.[^\'\\]*)*)\'/,"string.twig"],[/"/,"string.twig","@stringState"],[/=>/,"operators.twig"],[/=/,"operators.twig"]],doctype:[[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/]],script:[[/type/,"attribute.name.html","@scriptAfterType"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/=/,"delimiter.html","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value.html",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value.html",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]],style:[[/type/,"attribute.name.html","@styleAfterType"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/=/,"delimiter.html","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value.html",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value.html",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/YinO.27c92f4d.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/YinO.27c92f4d.js index fd11e599b..ebc0db2ec 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/YinO.27c92f4d.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/YinO.27c92f4d.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["YinO"],{YinO:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",function(){return i}),s.d(n,"language",function(){return t});var i={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">",notIn:["string"]}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"`",close:"`"}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#?region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#?endregion\\b.*--\x3e")}}},t={defaultToken:"",tokenPostfix:".rst",control:/[\\`*_\[\]{}()#+\-\.!]/,escapes:/\\(?:@control)/,empty:["area","base","basefont","br","col","frame","hr","img","input","isindex","link","meta","param"],alphanumerics:/[A-Za-z0-9]/,alphanumericsplus:/[A-Za-z0-9-_+:.]/,simpleRefNameWithoutBq:/(?:@alphanumerics@alphanumericsplus*@alphanumerics)+|(?:@alphanumerics+)/,simpleRefName:/(?:`@simpleRefNameWithoutBq`|@simpleRefNameWithoutBq)/,phrase:/@simpleRefName(?:\s@simpleRefName)*/,citationName:/[A-Za-z][A-Za-z0-9-_.]*/,blockLiteralStart:/(?:[!"#$%&'()*+,-./:;<=>?@\[\]^_`{|}~]|[\s])/,precedingChars:/(?:[ -:/'"<([{])/,followingChars:/(?:[ -.,:;!?/'")\]}>]|$)/,punctuation:/(=|-|~|`|#|"|\^|\+|\*|:|\.|'|_|\+)/,tokenizer:{root:[[/^(@punctuation{3,}$){1,1}?/,"keyword"],[/^\s*([\*\-+‣•]|[a-zA-Z0-9]+\.|\([a-zA-Z0-9]+\)|[a-zA-Z0-9]+\))\s/,"keyword"],[/([ ]::)\s*$/,"keyword","@blankLineOfLiteralBlocks"],[/(::)\s*$/,"keyword","@blankLineOfLiteralBlocks"],{include:"@tables"},{include:"@explicitMarkupBlocks"},{include:"@inlineMarkup"}],explicitMarkupBlocks:[{include:"@citations"},{include:"@footnotes"},[/^(\.\.\s)(@simpleRefName)(::\s)(.*)$/,[{token:"",next:"subsequentLines"},"keyword","",""]],[/^(\.\.)(\s+)(_)(@simpleRefName)(:)(\s+)(.*)/,[{token:"",next:"hyperlinks"},"","","string.link","","","string.link"]],[/^((?:(?:\.\.)(?:\s+))?)(__)(:)(\s+)(.*)/,[{token:"",next:"subsequentLines"},"","","","string.link"]],[/^(__\s+)(.+)/,["","string.link"]],[/^(\.\.)( \|)([^| ]+[^|]*[^| ]*)(\| )(@simpleRefName)(:: .*)/,[{token:"",next:"subsequentLines"},"","string.link","","keyword",""],"@rawBlocks"],[/(\|)([^| ]+[^|]*[^| ]*)(\|_{0,2})/,["","string.link",""]],[/^(\.\.)([ ].*)$/,[{token:"",next:"@comments"},"comment"]]],inlineMarkup:[{include:"@citationsReference"},{include:"@footnotesReference"},[/(@simpleRefName)(_{1,2})/,["string.link",""]],[/(`)([^<`]+\s+)(<)(.*)(>)(`)(_)/,["","string.link","","string.link","","",""]],[/\*\*([^\\*]|\*(?!\*))+\*\*/,"strong"],[/\*[^*]+\*/,"emphasis"],[/(``)((?:[^`]|\`(?!`))+)(``)/,["","keyword",""]],[/(__\s+)(.+)/,["","keyword"]],[/(:)((?:@simpleRefNameWithoutBq)?)(:`)([^`]+)(`)/,["","keyword","","",""]],[/(`)([^`]+)(`:)((?:@simpleRefNameWithoutBq)?)(:)/,["","","","keyword",""]],[/(`)([^`]+)(`)/,""],[/(_`)(@phrase)(`)/,["","string.link",""]]],citations:[[/^(\.\.\s+\[)((?:@citationName))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]]],citationsReference:[[/(\[)(@citationName)(\]_)/,["","string.link",""]]],footnotes:[[/^(\.\.\s+\[)((?:[0-9]+))(\]\s+.*)/,[{token:"",next:"@subsequentLines"},"string.link",""]],[/^(\.\.\s+\[)((?:#@simpleRefName?))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]],[/^(\.\.\s+\[)((?:\*))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]]],footnotesReference:[[/(\[)([0-9]+)(\])(_)/,["","string.link","",""]],[/(\[)(#@simpleRefName?)(\])(_)/,["","string.link","",""]],[/(\[)(\*)(\])(_)/,["","string.link","",""]]],blankLineOfLiteralBlocks:[[/^$/,"","@subsequentLinesOfLiteralBlocks"],[/^.*$/,"","@pop"]],subsequentLinesOfLiteralBlocks:[[/(@blockLiteralStart+)(.*)/,["keyword",""]],[/^(?!blockLiteralStart)/,"","@popall"]],subsequentLines:[[/^[\s]+.*/,""],[/^(?!\s)/,"","@pop"]],hyperlinks:[[/^[\s]+.*/,"string.link"],[/^(?!\s)/,"","@pop"]],comments:[[/^[\s]+.*/,"comment"],[/^(?!\s)/,"","@pop"]],tables:[[/\+-[+-]+/,"keyword"],[/\+=[+=]+/,"keyword"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["YinO"],{YinO:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",function(){return i}),s.d(n,"language",function(){return t});var i={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">",notIn:["string"]}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"`",close:"`"}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#?region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#?endregion\\b.*--\x3e")}}},t={defaultToken:"",tokenPostfix:".rst",control:/[\\`*_\[\]{}()#+\-\.!]/,escapes:/\\(?:@control)/,empty:["area","base","basefont","br","col","frame","hr","img","input","isindex","link","meta","param"],alphanumerics:/[A-Za-z0-9]/,alphanumericsplus:/[A-Za-z0-9-_+:.]/,simpleRefNameWithoutBq:/(?:@alphanumerics@alphanumericsplus*@alphanumerics)+|(?:@alphanumerics+)/,simpleRefName:/(?:`@simpleRefNameWithoutBq`|@simpleRefNameWithoutBq)/,phrase:/@simpleRefName(?:\s@simpleRefName)*/,citationName:/[A-Za-z][A-Za-z0-9-_.]*/,blockLiteralStart:/(?:[!"#$%&'()*+,-./:;<=>?@\[\]^_`{|}~]|[\s])/,precedingChars:/(?:[ -:/'"<([{])/,followingChars:/(?:[ -.,:;!?/'")\]}>]|$)/,punctuation:/(=|-|~|`|#|"|\^|\+|\*|:|\.|'|_|\+)/,tokenizer:{root:[[/^(@punctuation{3,}$){1,1}?/,"keyword"],[/^\s*([\*\-+‣•]|[a-zA-Z0-9]+\.|\([a-zA-Z0-9]+\)|[a-zA-Z0-9]+\))\s/,"keyword"],[/([ ]::)\s*$/,"keyword","@blankLineOfLiteralBlocks"],[/(::)\s*$/,"keyword","@blankLineOfLiteralBlocks"],{include:"@tables"},{include:"@explicitMarkupBlocks"},{include:"@inlineMarkup"}],explicitMarkupBlocks:[{include:"@citations"},{include:"@footnotes"},[/^(\.\.\s)(@simpleRefName)(::\s)(.*)$/,[{token:"",next:"subsequentLines"},"keyword","",""]],[/^(\.\.)(\s+)(_)(@simpleRefName)(:)(\s+)(.*)/,[{token:"",next:"hyperlinks"},"","","string.link","","","string.link"]],[/^((?:(?:\.\.)(?:\s+))?)(__)(:)(\s+)(.*)/,[{token:"",next:"subsequentLines"},"","","","string.link"]],[/^(__\s+)(.+)/,["","string.link"]],[/^(\.\.)( \|)([^| ]+[^|]*[^| ]*)(\| )(@simpleRefName)(:: .*)/,[{token:"",next:"subsequentLines"},"","string.link","","keyword",""],"@rawBlocks"],[/(\|)([^| ]+[^|]*[^| ]*)(\|_{0,2})/,["","string.link",""]],[/^(\.\.)([ ].*)$/,[{token:"",next:"@comments"},"comment"]]],inlineMarkup:[{include:"@citationsReference"},{include:"@footnotesReference"},[/(@simpleRefName)(_{1,2})/,["string.link",""]],[/(`)([^<`]+\s+)(<)(.*)(>)(`)(_)/,["","string.link","","string.link","","",""]],[/\*\*([^\\*]|\*(?!\*))+\*\*/,"strong"],[/\*[^*]+\*/,"emphasis"],[/(``)((?:[^`]|\`(?!`))+)(``)/,["","keyword",""]],[/(__\s+)(.+)/,["","keyword"]],[/(:)((?:@simpleRefNameWithoutBq)?)(:`)([^`]+)(`)/,["","keyword","","",""]],[/(`)([^`]+)(`:)((?:@simpleRefNameWithoutBq)?)(:)/,["","","","keyword",""]],[/(`)([^`]+)(`)/,""],[/(_`)(@phrase)(`)/,["","string.link",""]]],citations:[[/^(\.\.\s+\[)((?:@citationName))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]]],citationsReference:[[/(\[)(@citationName)(\]_)/,["","string.link",""]]],footnotes:[[/^(\.\.\s+\[)((?:[0-9]+))(\]\s+.*)/,[{token:"",next:"@subsequentLines"},"string.link",""]],[/^(\.\.\s+\[)((?:#@simpleRefName?))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]],[/^(\.\.\s+\[)((?:\*))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]]],footnotesReference:[[/(\[)([0-9]+)(\])(_)/,["","string.link","",""]],[/(\[)(#@simpleRefName?)(\])(_)/,["","string.link","",""]],[/(\[)(\*)(\])(_)/,["","string.link","",""]]],blankLineOfLiteralBlocks:[[/^$/,"","@subsequentLinesOfLiteralBlocks"],[/^.*$/,"","@pop"]],subsequentLinesOfLiteralBlocks:[[/(@blockLiteralStart+)(.*)/,["keyword",""]],[/^(?!blockLiteralStart)/,"","@popall"]],subsequentLines:[[/^[\s]+.*/,""],[/^(?!\s)/,"","@pop"]],hyperlinks:[[/^[\s]+.*/,"string.link"],[/^(?!\s)/,"","@pop"]],comments:[[/^[\s]+.*/,"comment"],[/^(?!\s)/,"","@pop"]],tables:[[/\+-[+-]+/,"keyword"],[/\+=[+=]+/,"keyword"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Ywaa.a09d1ff7.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Ywaa.a09d1ff7.js index bd07aef7a..19de289c3 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Ywaa.a09d1ff7.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/Ywaa.a09d1ff7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["Ywaa"],{Ywaa:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",function(){return i}),o.d(t,"language",function(){return a});var r="undefined"==typeof monaco?self.monaco:monaco,n=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+n.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:r.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+n.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:r.languages.IndentAction.Indent}}]},a={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/@@/],[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.root"}],[/)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],razorInSimpleState:[[/@\*/,"comment.cs","@razorBlockCommentTopLevel"],[/@[{(]/,"metatag.cs","@razorRootTopLevel"],[/(@)(\s*[\w]+)/,["metatag.cs",{token:"identifier.cs",switchTo:"@$S2.$S3"}]],[/[})]/,{token:"metatag.cs",switchTo:"@$S2.$S3"}],[/\*@/,{token:"comment.cs",switchTo:"@$S2.$S3"}]],razorInEmbeddedState:[[/@\*/,"comment.cs","@razorBlockCommentTopLevel"],[/@[{(]/,"metatag.cs","@razorRootTopLevel"],[/(@)(\s*[\w]+)/,["metatag.cs",{token:"identifier.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}]],[/[})]/,{token:"metatag.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],[/\*@/,{token:"comment.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}]],razorBlockCommentTopLevel:[[/\*@/,"@rematch","@pop"],[/[^*]+/,"comment.cs"],[/./,"comment.cs"]],razorBlockComment:[[/\*@/,"comment.cs","@pop"],[/[^*]+/,"comment.cs"],[/./,"comment.cs"]],razorRootTopLevel:[[/\{/,"delimiter.bracket.cs","@razorRoot"],[/\(/,"delimiter.parenthesis.cs","@razorRoot"],[/[})]/,"@rematch","@pop"],{include:"razorCommon"}],razorRoot:[[/\{/,"delimiter.bracket.cs","@razorRoot"],[/\(/,"delimiter.parenthesis.cs","@razorRoot"],[/\}/,"delimiter.bracket.cs","@pop"],[/\)/,"delimiter.parenthesis.cs","@pop"],{include:"razorCommon"}],razorCommon:[[/[a-zA-Z_]\w*/,{cases:{"@razorKeywords":{token:"keyword.cs"},"@default":"identifier.cs"}}],[/[\[\]]/,"delimiter.array.cs"],[/[ \t\r\n]+/],[/\/\/.*$/,"comment.cs"],[/@\*/,"comment.cs","@razorBlockComment"],[/"([^"]*)"/,"string.cs"],[/'([^']*)'/,"string.cs"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(\w+)(>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<\/)(\w+)(>)/,["delimiter.html","tag.html","delimiter.html"]],[/[\+\-\*\%\&\|\^\~\!\=\<\>\/\?\;\:\.\,]/,"delimiter.cs"],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float.cs"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float.cs"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex.cs"],[/0[0-7']*[0-7]/,"number.octal.cs"],[/0[bB][0-1']*[0-1]/,"number.binary.cs"],[/\d[\d']*/,"number.cs"],[/\d/,"number.cs"]]},razorKeywords:["abstract","as","async","await","base","bool","break","by","byte","case","catch","char","checked","class","const","continue","decimal","default","delegate","do","double","descending","explicit","event","extern","else","enum","false","finally","fixed","float","for","foreach","from","goto","group","if","implicit","in","int","interface","internal","into","is","lock","long","nameof","new","null","namespace","object","operator","out","override","orderby","params","private","protected","public","readonly","ref","return","switch","struct","sbyte","sealed","short","sizeof","stackalloc","static","string","select","this","throw","true","try","typeof","uint","ulong","unchecked","unsafe","ushort","using","var","virtual","volatile","void","when","while","where","yield","model","inject"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["Ywaa"],{Ywaa:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",function(){return i}),o.d(t,"language",function(){return a});var r="undefined"==typeof monaco?self.monaco:monaco,n=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+n.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:r.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+n.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:r.languages.IndentAction.Indent}}]},a={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/@@/],[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.root"}],[/)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],razorInSimpleState:[[/@\*/,"comment.cs","@razorBlockCommentTopLevel"],[/@[{(]/,"metatag.cs","@razorRootTopLevel"],[/(@)(\s*[\w]+)/,["metatag.cs",{token:"identifier.cs",switchTo:"@$S2.$S3"}]],[/[})]/,{token:"metatag.cs",switchTo:"@$S2.$S3"}],[/\*@/,{token:"comment.cs",switchTo:"@$S2.$S3"}]],razorInEmbeddedState:[[/@\*/,"comment.cs","@razorBlockCommentTopLevel"],[/@[{(]/,"metatag.cs","@razorRootTopLevel"],[/(@)(\s*[\w]+)/,["metatag.cs",{token:"identifier.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}]],[/[})]/,{token:"metatag.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],[/\*@/,{token:"comment.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}]],razorBlockCommentTopLevel:[[/\*@/,"@rematch","@pop"],[/[^*]+/,"comment.cs"],[/./,"comment.cs"]],razorBlockComment:[[/\*@/,"comment.cs","@pop"],[/[^*]+/,"comment.cs"],[/./,"comment.cs"]],razorRootTopLevel:[[/\{/,"delimiter.bracket.cs","@razorRoot"],[/\(/,"delimiter.parenthesis.cs","@razorRoot"],[/[})]/,"@rematch","@pop"],{include:"razorCommon"}],razorRoot:[[/\{/,"delimiter.bracket.cs","@razorRoot"],[/\(/,"delimiter.parenthesis.cs","@razorRoot"],[/\}/,"delimiter.bracket.cs","@pop"],[/\)/,"delimiter.parenthesis.cs","@pop"],{include:"razorCommon"}],razorCommon:[[/[a-zA-Z_]\w*/,{cases:{"@razorKeywords":{token:"keyword.cs"},"@default":"identifier.cs"}}],[/[\[\]]/,"delimiter.array.cs"],[/[ \t\r\n]+/],[/\/\/.*$/,"comment.cs"],[/@\*/,"comment.cs","@razorBlockComment"],[/"([^"]*)"/,"string.cs"],[/'([^']*)'/,"string.cs"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(\w+)(>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<\/)(\w+)(>)/,["delimiter.html","tag.html","delimiter.html"]],[/[\+\-\*\%\&\|\^\~\!\=\<\>\/\?\;\:\.\,]/,"delimiter.cs"],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float.cs"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float.cs"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex.cs"],[/0[0-7']*[0-7]/,"number.octal.cs"],[/0[bB][0-1']*[0-1]/,"number.binary.cs"],[/\d[\d']*/,"number.cs"],[/\d/,"number.cs"]]},razorKeywords:["abstract","as","async","await","base","bool","break","by","byte","case","catch","char","checked","class","const","continue","decimal","default","delegate","do","double","descending","explicit","event","extern","else","enum","false","finally","fixed","float","for","foreach","from","goto","group","if","implicit","in","int","interface","internal","into","is","lock","long","nameof","new","null","namespace","object","operator","out","override","orderby","params","private","protected","public","readonly","ref","return","switch","struct","sbyte","sealed","short","sizeof","stackalloc","static","string","select","this","throw","true","try","typeof","uint","ulong","unchecked","unsafe","ushort","using","var","virtual","volatile","void","when","while","where","yield","model","inject"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/ZGv0.9262951e.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/ZGv0.9262951e.js index 967628a36..6bc5b6ab1 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/ZGv0.9262951e.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/ZGv0.9262951e.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["ZGv0"],{ZGv0:function(t,r,e){"use strict";e.r(r),e.d(r,"conf",function(){return s}),e.d(r,"language",function(){return n});var s={brackets:[],autoClosingPairs:[],surroundingPairs:[]},n={keywords:[],typeKeywords:[],tokenPostfix:".csp",operators:[],symbols:/[=>"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},f={defaultToken:"",tokenPostfix:".sol",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["pragma","solidity","contract","library","using","struct","function","modifier","constructor","address","string","bool","Int","Uint","Byte","Fixed","Ufixed","int","int8","int16","int24","int32","int40","int48","int56","int64","int72","int80","int88","int96","int104","int112","int120","int128","int136","int144","int152","int160","int168","int176","int184","int192","int200","int208","int216","int224","int232","int240","int248","int256","uint","uint8","uint16","uint24","uint32","uint40","uint48","uint56","uint64","uint72","uint80","uint88","uint96","uint104","uint112","uint120","uint128","uint136","uint144","uint152","uint160","uint168","uint176","uint184","uint192","uint200","uint208","uint216","uint224","uint232","uint240","uint248","uint256","byte","bytes","bytes1","bytes2","bytes3","bytes4","bytes5","bytes6","bytes7","bytes8","bytes9","bytes10","bytes11","bytes12","bytes13","bytes14","bytes15","bytes16","bytes17","bytes18","bytes19","bytes20","bytes21","bytes22","bytes23","bytes24","bytes25","bytes26","bytes27","bytes28","bytes29","bytes30","bytes31","bytes32","fixed","fixed0x8","fixed0x16","fixed0x24","fixed0x32","fixed0x40","fixed0x48","fixed0x56","fixed0x64","fixed0x72","fixed0x80","fixed0x88","fixed0x96","fixed0x104","fixed0x112","fixed0x120","fixed0x128","fixed0x136","fixed0x144","fixed0x152","fixed0x160","fixed0x168","fixed0x176","fixed0x184","fixed0x192","fixed0x200","fixed0x208","fixed0x216","fixed0x224","fixed0x232","fixed0x240","fixed0x248","fixed0x256","fixed8x8","fixed8x16","fixed8x24","fixed8x32","fixed8x40","fixed8x48","fixed8x56","fixed8x64","fixed8x72","fixed8x80","fixed8x88","fixed8x96","fixed8x104","fixed8x112","fixed8x120","fixed8x128","fixed8x136","fixed8x144","fixed8x152","fixed8x160","fixed8x168","fixed8x176","fixed8x184","fixed8x192","fixed8x200","fixed8x208","fixed8x216","fixed8x224","fixed8x232","fixed8x240","fixed8x248","fixed16x8","fixed16x16","fixed16x24","fixed16x32","fixed16x40","fixed16x48","fixed16x56","fixed16x64","fixed16x72","fixed16x80","fixed16x88","fixed16x96","fixed16x104","fixed16x112","fixed16x120","fixed16x128","fixed16x136","fixed16x144","fixed16x152","fixed16x160","fixed16x168","fixed16x176","fixed16x184","fixed16x192","fixed16x200","fixed16x208","fixed16x216","fixed16x224","fixed16x232","fixed16x240","fixed24x8","fixed24x16","fixed24x24","fixed24x32","fixed24x40","fixed24x48","fixed24x56","fixed24x64","fixed24x72","fixed24x80","fixed24x88","fixed24x96","fixed24x104","fixed24x112","fixed24x120","fixed24x128","fixed24x136","fixed24x144","fixed24x152","fixed24x160","fixed24x168","fixed24x176","fixed24x184","fixed24x192","fixed24x200","fixed24x208","fixed24x216","fixed24x224","fixed24x232","fixed32x8","fixed32x16","fixed32x24","fixed32x32","fixed32x40","fixed32x48","fixed32x56","fixed32x64","fixed32x72","fixed32x80","fixed32x88","fixed32x96","fixed32x104","fixed32x112","fixed32x120","fixed32x128","fixed32x136","fixed32x144","fixed32x152","fixed32x160","fixed32x168","fixed32x176","fixed32x184","fixed32x192","fixed32x200","fixed32x208","fixed32x216","fixed32x224","fixed40x8","fixed40x16","fixed40x24","fixed40x32","fixed40x40","fixed40x48","fixed40x56","fixed40x64","fixed40x72","fixed40x80","fixed40x88","fixed40x96","fixed40x104","fixed40x112","fixed40x120","fixed40x128","fixed40x136","fixed40x144","fixed40x152","fixed40x160","fixed40x168","fixed40x176","fixed40x184","fixed40x192","fixed40x200","fixed40x208","fixed40x216","fixed48x8","fixed48x16","fixed48x24","fixed48x32","fixed48x40","fixed48x48","fixed48x56","fixed48x64","fixed48x72","fixed48x80","fixed48x88","fixed48x96","fixed48x104","fixed48x112","fixed48x120","fixed48x128","fixed48x136","fixed48x144","fixed48x152","fixed48x160","fixed48x168","fixed48x176","fixed48x184","fixed48x192","fixed48x200","fixed48x208","fixed56x8","fixed56x16","fixed56x24","fixed56x32","fixed56x40","fixed56x48","fixed56x56","fixed56x64","fixed56x72","fixed56x80","fixed56x88","fixed56x96","fixed56x104","fixed56x112","fixed56x120","fixed56x128","fixed56x136","fixed56x144","fixed56x152","fixed56x160","fixed56x168","fixed56x176","fixed56x184","fixed56x192","fixed56x200","fixed64x8","fixed64x16","fixed64x24","fixed64x32","fixed64x40","fixed64x48","fixed64x56","fixed64x64","fixed64x72","fixed64x80","fixed64x88","fixed64x96","fixed64x104","fixed64x112","fixed64x120","fixed64x128","fixed64x136","fixed64x144","fixed64x152","fixed64x160","fixed64x168","fixed64x176","fixed64x184","fixed64x192","fixed72x8","fixed72x16","fixed72x24","fixed72x32","fixed72x40","fixed72x48","fixed72x56","fixed72x64","fixed72x72","fixed72x80","fixed72x88","fixed72x96","fixed72x104","fixed72x112","fixed72x120","fixed72x128","fixed72x136","fixed72x144","fixed72x152","fixed72x160","fixed72x168","fixed72x176","fixed72x184","fixed80x8","fixed80x16","fixed80x24","fixed80x32","fixed80x40","fixed80x48","fixed80x56","fixed80x64","fixed80x72","fixed80x80","fixed80x88","fixed80x96","fixed80x104","fixed80x112","fixed80x120","fixed80x128","fixed80x136","fixed80x144","fixed80x152","fixed80x160","fixed80x168","fixed80x176","fixed88x8","fixed88x16","fixed88x24","fixed88x32","fixed88x40","fixed88x48","fixed88x56","fixed88x64","fixed88x72","fixed88x80","fixed88x88","fixed88x96","fixed88x104","fixed88x112","fixed88x120","fixed88x128","fixed88x136","fixed88x144","fixed88x152","fixed88x160","fixed88x168","fixed96x8","fixed96x16","fixed96x24","fixed96x32","fixed96x40","fixed96x48","fixed96x56","fixed96x64","fixed96x72","fixed96x80","fixed96x88","fixed96x96","fixed96x104","fixed96x112","fixed96x120","fixed96x128","fixed96x136","fixed96x144","fixed96x152","fixed96x160","fixed104x8","fixed104x16","fixed104x24","fixed104x32","fixed104x40","fixed104x48","fixed104x56","fixed104x64","fixed104x72","fixed104x80","fixed104x88","fixed104x96","fixed104x104","fixed104x112","fixed104x120","fixed104x128","fixed104x136","fixed104x144","fixed104x152","fixed112x8","fixed112x16","fixed112x24","fixed112x32","fixed112x40","fixed112x48","fixed112x56","fixed112x64","fixed112x72","fixed112x80","fixed112x88","fixed112x96","fixed112x104","fixed112x112","fixed112x120","fixed112x128","fixed112x136","fixed112x144","fixed120x8","fixed120x16","fixed120x24","fixed120x32","fixed120x40","fixed120x48","fixed120x56","fixed120x64","fixed120x72","fixed120x80","fixed120x88","fixed120x96","fixed120x104","fixed120x112","fixed120x120","fixed120x128","fixed120x136","fixed128x8","fixed128x16","fixed128x24","fixed128x32","fixed128x40","fixed128x48","fixed128x56","fixed128x64","fixed128x72","fixed128x80","fixed128x88","fixed128x96","fixed128x104","fixed128x112","fixed128x120","fixed128x128","fixed136x8","fixed136x16","fixed136x24","fixed136x32","fixed136x40","fixed136x48","fixed136x56","fixed136x64","fixed136x72","fixed136x80","fixed136x88","fixed136x96","fixed136x104","fixed136x112","fixed136x120","fixed144x8","fixed144x16","fixed144x24","fixed144x32","fixed144x40","fixed144x48","fixed144x56","fixed144x64","fixed144x72","fixed144x80","fixed144x88","fixed144x96","fixed144x104","fixed144x112","fixed152x8","fixed152x16","fixed152x24","fixed152x32","fixed152x40","fixed152x48","fixed152x56","fixed152x64","fixed152x72","fixed152x80","fixed152x88","fixed152x96","fixed152x104","fixed160x8","fixed160x16","fixed160x24","fixed160x32","fixed160x40","fixed160x48","fixed160x56","fixed160x64","fixed160x72","fixed160x80","fixed160x88","fixed160x96","fixed168x8","fixed168x16","fixed168x24","fixed168x32","fixed168x40","fixed168x48","fixed168x56","fixed168x64","fixed168x72","fixed168x80","fixed168x88","fixed176x8","fixed176x16","fixed176x24","fixed176x32","fixed176x40","fixed176x48","fixed176x56","fixed176x64","fixed176x72","fixed176x80","fixed184x8","fixed184x16","fixed184x24","fixed184x32","fixed184x40","fixed184x48","fixed184x56","fixed184x64","fixed184x72","fixed192x8","fixed192x16","fixed192x24","fixed192x32","fixed192x40","fixed192x48","fixed192x56","fixed192x64","fixed200x8","fixed200x16","fixed200x24","fixed200x32","fixed200x40","fixed200x48","fixed200x56","fixed208x8","fixed208x16","fixed208x24","fixed208x32","fixed208x40","fixed208x48","fixed216x8","fixed216x16","fixed216x24","fixed216x32","fixed216x40","fixed224x8","fixed224x16","fixed224x24","fixed224x32","fixed232x8","fixed232x16","fixed232x24","fixed240x8","fixed240x16","fixed248x8","ufixed","ufixed0x8","ufixed0x16","ufixed0x24","ufixed0x32","ufixed0x40","ufixed0x48","ufixed0x56","ufixed0x64","ufixed0x72","ufixed0x80","ufixed0x88","ufixed0x96","ufixed0x104","ufixed0x112","ufixed0x120","ufixed0x128","ufixed0x136","ufixed0x144","ufixed0x152","ufixed0x160","ufixed0x168","ufixed0x176","ufixed0x184","ufixed0x192","ufixed0x200","ufixed0x208","ufixed0x216","ufixed0x224","ufixed0x232","ufixed0x240","ufixed0x248","ufixed0x256","ufixed8x8","ufixed8x16","ufixed8x24","ufixed8x32","ufixed8x40","ufixed8x48","ufixed8x56","ufixed8x64","ufixed8x72","ufixed8x80","ufixed8x88","ufixed8x96","ufixed8x104","ufixed8x112","ufixed8x120","ufixed8x128","ufixed8x136","ufixed8x144","ufixed8x152","ufixed8x160","ufixed8x168","ufixed8x176","ufixed8x184","ufixed8x192","ufixed8x200","ufixed8x208","ufixed8x216","ufixed8x224","ufixed8x232","ufixed8x240","ufixed8x248","ufixed16x8","ufixed16x16","ufixed16x24","ufixed16x32","ufixed16x40","ufixed16x48","ufixed16x56","ufixed16x64","ufixed16x72","ufixed16x80","ufixed16x88","ufixed16x96","ufixed16x104","ufixed16x112","ufixed16x120","ufixed16x128","ufixed16x136","ufixed16x144","ufixed16x152","ufixed16x160","ufixed16x168","ufixed16x176","ufixed16x184","ufixed16x192","ufixed16x200","ufixed16x208","ufixed16x216","ufixed16x224","ufixed16x232","ufixed16x240","ufixed24x8","ufixed24x16","ufixed24x24","ufixed24x32","ufixed24x40","ufixed24x48","ufixed24x56","ufixed24x64","ufixed24x72","ufixed24x80","ufixed24x88","ufixed24x96","ufixed24x104","ufixed24x112","ufixed24x120","ufixed24x128","ufixed24x136","ufixed24x144","ufixed24x152","ufixed24x160","ufixed24x168","ufixed24x176","ufixed24x184","ufixed24x192","ufixed24x200","ufixed24x208","ufixed24x216","ufixed24x224","ufixed24x232","ufixed32x8","ufixed32x16","ufixed32x24","ufixed32x32","ufixed32x40","ufixed32x48","ufixed32x56","ufixed32x64","ufixed32x72","ufixed32x80","ufixed32x88","ufixed32x96","ufixed32x104","ufixed32x112","ufixed32x120","ufixed32x128","ufixed32x136","ufixed32x144","ufixed32x152","ufixed32x160","ufixed32x168","ufixed32x176","ufixed32x184","ufixed32x192","ufixed32x200","ufixed32x208","ufixed32x216","ufixed32x224","ufixed40x8","ufixed40x16","ufixed40x24","ufixed40x32","ufixed40x40","ufixed40x48","ufixed40x56","ufixed40x64","ufixed40x72","ufixed40x80","ufixed40x88","ufixed40x96","ufixed40x104","ufixed40x112","ufixed40x120","ufixed40x128","ufixed40x136","ufixed40x144","ufixed40x152","ufixed40x160","ufixed40x168","ufixed40x176","ufixed40x184","ufixed40x192","ufixed40x200","ufixed40x208","ufixed40x216","ufixed48x8","ufixed48x16","ufixed48x24","ufixed48x32","ufixed48x40","ufixed48x48","ufixed48x56","ufixed48x64","ufixed48x72","ufixed48x80","ufixed48x88","ufixed48x96","ufixed48x104","ufixed48x112","ufixed48x120","ufixed48x128","ufixed48x136","ufixed48x144","ufixed48x152","ufixed48x160","ufixed48x168","ufixed48x176","ufixed48x184","ufixed48x192","ufixed48x200","ufixed48x208","ufixed56x8","ufixed56x16","ufixed56x24","ufixed56x32","ufixed56x40","ufixed56x48","ufixed56x56","ufixed56x64","ufixed56x72","ufixed56x80","ufixed56x88","ufixed56x96","ufixed56x104","ufixed56x112","ufixed56x120","ufixed56x128","ufixed56x136","ufixed56x144","ufixed56x152","ufixed56x160","ufixed56x168","ufixed56x176","ufixed56x184","ufixed56x192","ufixed56x200","ufixed64x8","ufixed64x16","ufixed64x24","ufixed64x32","ufixed64x40","ufixed64x48","ufixed64x56","ufixed64x64","ufixed64x72","ufixed64x80","ufixed64x88","ufixed64x96","ufixed64x104","ufixed64x112","ufixed64x120","ufixed64x128","ufixed64x136","ufixed64x144","ufixed64x152","ufixed64x160","ufixed64x168","ufixed64x176","ufixed64x184","ufixed64x192","ufixed72x8","ufixed72x16","ufixed72x24","ufixed72x32","ufixed72x40","ufixed72x48","ufixed72x56","ufixed72x64","ufixed72x72","ufixed72x80","ufixed72x88","ufixed72x96","ufixed72x104","ufixed72x112","ufixed72x120","ufixed72x128","ufixed72x136","ufixed72x144","ufixed72x152","ufixed72x160","ufixed72x168","ufixed72x176","ufixed72x184","ufixed80x8","ufixed80x16","ufixed80x24","ufixed80x32","ufixed80x40","ufixed80x48","ufixed80x56","ufixed80x64","ufixed80x72","ufixed80x80","ufixed80x88","ufixed80x96","ufixed80x104","ufixed80x112","ufixed80x120","ufixed80x128","ufixed80x136","ufixed80x144","ufixed80x152","ufixed80x160","ufixed80x168","ufixed80x176","ufixed88x8","ufixed88x16","ufixed88x24","ufixed88x32","ufixed88x40","ufixed88x48","ufixed88x56","ufixed88x64","ufixed88x72","ufixed88x80","ufixed88x88","ufixed88x96","ufixed88x104","ufixed88x112","ufixed88x120","ufixed88x128","ufixed88x136","ufixed88x144","ufixed88x152","ufixed88x160","ufixed88x168","ufixed96x8","ufixed96x16","ufixed96x24","ufixed96x32","ufixed96x40","ufixed96x48","ufixed96x56","ufixed96x64","ufixed96x72","ufixed96x80","ufixed96x88","ufixed96x96","ufixed96x104","ufixed96x112","ufixed96x120","ufixed96x128","ufixed96x136","ufixed96x144","ufixed96x152","ufixed96x160","ufixed104x8","ufixed104x16","ufixed104x24","ufixed104x32","ufixed104x40","ufixed104x48","ufixed104x56","ufixed104x64","ufixed104x72","ufixed104x80","ufixed104x88","ufixed104x96","ufixed104x104","ufixed104x112","ufixed104x120","ufixed104x128","ufixed104x136","ufixed104x144","ufixed104x152","ufixed112x8","ufixed112x16","ufixed112x24","ufixed112x32","ufixed112x40","ufixed112x48","ufixed112x56","ufixed112x64","ufixed112x72","ufixed112x80","ufixed112x88","ufixed112x96","ufixed112x104","ufixed112x112","ufixed112x120","ufixed112x128","ufixed112x136","ufixed112x144","ufixed120x8","ufixed120x16","ufixed120x24","ufixed120x32","ufixed120x40","ufixed120x48","ufixed120x56","ufixed120x64","ufixed120x72","ufixed120x80","ufixed120x88","ufixed120x96","ufixed120x104","ufixed120x112","ufixed120x120","ufixed120x128","ufixed120x136","ufixed128x8","ufixed128x16","ufixed128x24","ufixed128x32","ufixed128x40","ufixed128x48","ufixed128x56","ufixed128x64","ufixed128x72","ufixed128x80","ufixed128x88","ufixed128x96","ufixed128x104","ufixed128x112","ufixed128x120","ufixed128x128","ufixed136x8","ufixed136x16","ufixed136x24","ufixed136x32","ufixed136x40","ufixed136x48","ufixed136x56","ufixed136x64","ufixed136x72","ufixed136x80","ufixed136x88","ufixed136x96","ufixed136x104","ufixed136x112","ufixed136x120","ufixed144x8","ufixed144x16","ufixed144x24","ufixed144x32","ufixed144x40","ufixed144x48","ufixed144x56","ufixed144x64","ufixed144x72","ufixed144x80","ufixed144x88","ufixed144x96","ufixed144x104","ufixed144x112","ufixed152x8","ufixed152x16","ufixed152x24","ufixed152x32","ufixed152x40","ufixed152x48","ufixed152x56","ufixed152x64","ufixed152x72","ufixed152x80","ufixed152x88","ufixed152x96","ufixed152x104","ufixed160x8","ufixed160x16","ufixed160x24","ufixed160x32","ufixed160x40","ufixed160x48","ufixed160x56","ufixed160x64","ufixed160x72","ufixed160x80","ufixed160x88","ufixed160x96","ufixed168x8","ufixed168x16","ufixed168x24","ufixed168x32","ufixed168x40","ufixed168x48","ufixed168x56","ufixed168x64","ufixed168x72","ufixed168x80","ufixed168x88","ufixed176x8","ufixed176x16","ufixed176x24","ufixed176x32","ufixed176x40","ufixed176x48","ufixed176x56","ufixed176x64","ufixed176x72","ufixed176x80","ufixed184x8","ufixed184x16","ufixed184x24","ufixed184x32","ufixed184x40","ufixed184x48","ufixed184x56","ufixed184x64","ufixed184x72","ufixed192x8","ufixed192x16","ufixed192x24","ufixed192x32","ufixed192x40","ufixed192x48","ufixed192x56","ufixed192x64","ufixed200x8","ufixed200x16","ufixed200x24","ufixed200x32","ufixed200x40","ufixed200x48","ufixed200x56","ufixed208x8","ufixed208x16","ufixed208x24","ufixed208x32","ufixed208x40","ufixed208x48","ufixed216x8","ufixed216x16","ufixed216x24","ufixed216x32","ufixed216x40","ufixed224x8","ufixed224x16","ufixed224x24","ufixed224x32","ufixed232x8","ufixed232x16","ufixed232x24","ufixed240x8","ufixed240x16","ufixed248x8","event","enum","let","mapping","private","public","external","inherited","payable","true","false","var","import","constant","if","else","for","else","for","while","do","break","continue","throw","returns","return","suicide","new","is","this","super"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["ZcQk"],{ZcQk:function(x,e,i){"use strict";i.r(e),i.d(e,"conf",function(){return d}),i.d(e,"language",function(){return f});var d={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},f={defaultToken:"",tokenPostfix:".sol",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["pragma","solidity","contract","library","using","struct","function","modifier","constructor","address","string","bool","Int","Uint","Byte","Fixed","Ufixed","int","int8","int16","int24","int32","int40","int48","int56","int64","int72","int80","int88","int96","int104","int112","int120","int128","int136","int144","int152","int160","int168","int176","int184","int192","int200","int208","int216","int224","int232","int240","int248","int256","uint","uint8","uint16","uint24","uint32","uint40","uint48","uint56","uint64","uint72","uint80","uint88","uint96","uint104","uint112","uint120","uint128","uint136","uint144","uint152","uint160","uint168","uint176","uint184","uint192","uint200","uint208","uint216","uint224","uint232","uint240","uint248","uint256","byte","bytes","bytes1","bytes2","bytes3","bytes4","bytes5","bytes6","bytes7","bytes8","bytes9","bytes10","bytes11","bytes12","bytes13","bytes14","bytes15","bytes16","bytes17","bytes18","bytes19","bytes20","bytes21","bytes22","bytes23","bytes24","bytes25","bytes26","bytes27","bytes28","bytes29","bytes30","bytes31","bytes32","fixed","fixed0x8","fixed0x16","fixed0x24","fixed0x32","fixed0x40","fixed0x48","fixed0x56","fixed0x64","fixed0x72","fixed0x80","fixed0x88","fixed0x96","fixed0x104","fixed0x112","fixed0x120","fixed0x128","fixed0x136","fixed0x144","fixed0x152","fixed0x160","fixed0x168","fixed0x176","fixed0x184","fixed0x192","fixed0x200","fixed0x208","fixed0x216","fixed0x224","fixed0x232","fixed0x240","fixed0x248","fixed0x256","fixed8x8","fixed8x16","fixed8x24","fixed8x32","fixed8x40","fixed8x48","fixed8x56","fixed8x64","fixed8x72","fixed8x80","fixed8x88","fixed8x96","fixed8x104","fixed8x112","fixed8x120","fixed8x128","fixed8x136","fixed8x144","fixed8x152","fixed8x160","fixed8x168","fixed8x176","fixed8x184","fixed8x192","fixed8x200","fixed8x208","fixed8x216","fixed8x224","fixed8x232","fixed8x240","fixed8x248","fixed16x8","fixed16x16","fixed16x24","fixed16x32","fixed16x40","fixed16x48","fixed16x56","fixed16x64","fixed16x72","fixed16x80","fixed16x88","fixed16x96","fixed16x104","fixed16x112","fixed16x120","fixed16x128","fixed16x136","fixed16x144","fixed16x152","fixed16x160","fixed16x168","fixed16x176","fixed16x184","fixed16x192","fixed16x200","fixed16x208","fixed16x216","fixed16x224","fixed16x232","fixed16x240","fixed24x8","fixed24x16","fixed24x24","fixed24x32","fixed24x40","fixed24x48","fixed24x56","fixed24x64","fixed24x72","fixed24x80","fixed24x88","fixed24x96","fixed24x104","fixed24x112","fixed24x120","fixed24x128","fixed24x136","fixed24x144","fixed24x152","fixed24x160","fixed24x168","fixed24x176","fixed24x184","fixed24x192","fixed24x200","fixed24x208","fixed24x216","fixed24x224","fixed24x232","fixed32x8","fixed32x16","fixed32x24","fixed32x32","fixed32x40","fixed32x48","fixed32x56","fixed32x64","fixed32x72","fixed32x80","fixed32x88","fixed32x96","fixed32x104","fixed32x112","fixed32x120","fixed32x128","fixed32x136","fixed32x144","fixed32x152","fixed32x160","fixed32x168","fixed32x176","fixed32x184","fixed32x192","fixed32x200","fixed32x208","fixed32x216","fixed32x224","fixed40x8","fixed40x16","fixed40x24","fixed40x32","fixed40x40","fixed40x48","fixed40x56","fixed40x64","fixed40x72","fixed40x80","fixed40x88","fixed40x96","fixed40x104","fixed40x112","fixed40x120","fixed40x128","fixed40x136","fixed40x144","fixed40x152","fixed40x160","fixed40x168","fixed40x176","fixed40x184","fixed40x192","fixed40x200","fixed40x208","fixed40x216","fixed48x8","fixed48x16","fixed48x24","fixed48x32","fixed48x40","fixed48x48","fixed48x56","fixed48x64","fixed48x72","fixed48x80","fixed48x88","fixed48x96","fixed48x104","fixed48x112","fixed48x120","fixed48x128","fixed48x136","fixed48x144","fixed48x152","fixed48x160","fixed48x168","fixed48x176","fixed48x184","fixed48x192","fixed48x200","fixed48x208","fixed56x8","fixed56x16","fixed56x24","fixed56x32","fixed56x40","fixed56x48","fixed56x56","fixed56x64","fixed56x72","fixed56x80","fixed56x88","fixed56x96","fixed56x104","fixed56x112","fixed56x120","fixed56x128","fixed56x136","fixed56x144","fixed56x152","fixed56x160","fixed56x168","fixed56x176","fixed56x184","fixed56x192","fixed56x200","fixed64x8","fixed64x16","fixed64x24","fixed64x32","fixed64x40","fixed64x48","fixed64x56","fixed64x64","fixed64x72","fixed64x80","fixed64x88","fixed64x96","fixed64x104","fixed64x112","fixed64x120","fixed64x128","fixed64x136","fixed64x144","fixed64x152","fixed64x160","fixed64x168","fixed64x176","fixed64x184","fixed64x192","fixed72x8","fixed72x16","fixed72x24","fixed72x32","fixed72x40","fixed72x48","fixed72x56","fixed72x64","fixed72x72","fixed72x80","fixed72x88","fixed72x96","fixed72x104","fixed72x112","fixed72x120","fixed72x128","fixed72x136","fixed72x144","fixed72x152","fixed72x160","fixed72x168","fixed72x176","fixed72x184","fixed80x8","fixed80x16","fixed80x24","fixed80x32","fixed80x40","fixed80x48","fixed80x56","fixed80x64","fixed80x72","fixed80x80","fixed80x88","fixed80x96","fixed80x104","fixed80x112","fixed80x120","fixed80x128","fixed80x136","fixed80x144","fixed80x152","fixed80x160","fixed80x168","fixed80x176","fixed88x8","fixed88x16","fixed88x24","fixed88x32","fixed88x40","fixed88x48","fixed88x56","fixed88x64","fixed88x72","fixed88x80","fixed88x88","fixed88x96","fixed88x104","fixed88x112","fixed88x120","fixed88x128","fixed88x136","fixed88x144","fixed88x152","fixed88x160","fixed88x168","fixed96x8","fixed96x16","fixed96x24","fixed96x32","fixed96x40","fixed96x48","fixed96x56","fixed96x64","fixed96x72","fixed96x80","fixed96x88","fixed96x96","fixed96x104","fixed96x112","fixed96x120","fixed96x128","fixed96x136","fixed96x144","fixed96x152","fixed96x160","fixed104x8","fixed104x16","fixed104x24","fixed104x32","fixed104x40","fixed104x48","fixed104x56","fixed104x64","fixed104x72","fixed104x80","fixed104x88","fixed104x96","fixed104x104","fixed104x112","fixed104x120","fixed104x128","fixed104x136","fixed104x144","fixed104x152","fixed112x8","fixed112x16","fixed112x24","fixed112x32","fixed112x40","fixed112x48","fixed112x56","fixed112x64","fixed112x72","fixed112x80","fixed112x88","fixed112x96","fixed112x104","fixed112x112","fixed112x120","fixed112x128","fixed112x136","fixed112x144","fixed120x8","fixed120x16","fixed120x24","fixed120x32","fixed120x40","fixed120x48","fixed120x56","fixed120x64","fixed120x72","fixed120x80","fixed120x88","fixed120x96","fixed120x104","fixed120x112","fixed120x120","fixed120x128","fixed120x136","fixed128x8","fixed128x16","fixed128x24","fixed128x32","fixed128x40","fixed128x48","fixed128x56","fixed128x64","fixed128x72","fixed128x80","fixed128x88","fixed128x96","fixed128x104","fixed128x112","fixed128x120","fixed128x128","fixed136x8","fixed136x16","fixed136x24","fixed136x32","fixed136x40","fixed136x48","fixed136x56","fixed136x64","fixed136x72","fixed136x80","fixed136x88","fixed136x96","fixed136x104","fixed136x112","fixed136x120","fixed144x8","fixed144x16","fixed144x24","fixed144x32","fixed144x40","fixed144x48","fixed144x56","fixed144x64","fixed144x72","fixed144x80","fixed144x88","fixed144x96","fixed144x104","fixed144x112","fixed152x8","fixed152x16","fixed152x24","fixed152x32","fixed152x40","fixed152x48","fixed152x56","fixed152x64","fixed152x72","fixed152x80","fixed152x88","fixed152x96","fixed152x104","fixed160x8","fixed160x16","fixed160x24","fixed160x32","fixed160x40","fixed160x48","fixed160x56","fixed160x64","fixed160x72","fixed160x80","fixed160x88","fixed160x96","fixed168x8","fixed168x16","fixed168x24","fixed168x32","fixed168x40","fixed168x48","fixed168x56","fixed168x64","fixed168x72","fixed168x80","fixed168x88","fixed176x8","fixed176x16","fixed176x24","fixed176x32","fixed176x40","fixed176x48","fixed176x56","fixed176x64","fixed176x72","fixed176x80","fixed184x8","fixed184x16","fixed184x24","fixed184x32","fixed184x40","fixed184x48","fixed184x56","fixed184x64","fixed184x72","fixed192x8","fixed192x16","fixed192x24","fixed192x32","fixed192x40","fixed192x48","fixed192x56","fixed192x64","fixed200x8","fixed200x16","fixed200x24","fixed200x32","fixed200x40","fixed200x48","fixed200x56","fixed208x8","fixed208x16","fixed208x24","fixed208x32","fixed208x40","fixed208x48","fixed216x8","fixed216x16","fixed216x24","fixed216x32","fixed216x40","fixed224x8","fixed224x16","fixed224x24","fixed224x32","fixed232x8","fixed232x16","fixed232x24","fixed240x8","fixed240x16","fixed248x8","ufixed","ufixed0x8","ufixed0x16","ufixed0x24","ufixed0x32","ufixed0x40","ufixed0x48","ufixed0x56","ufixed0x64","ufixed0x72","ufixed0x80","ufixed0x88","ufixed0x96","ufixed0x104","ufixed0x112","ufixed0x120","ufixed0x128","ufixed0x136","ufixed0x144","ufixed0x152","ufixed0x160","ufixed0x168","ufixed0x176","ufixed0x184","ufixed0x192","ufixed0x200","ufixed0x208","ufixed0x216","ufixed0x224","ufixed0x232","ufixed0x240","ufixed0x248","ufixed0x256","ufixed8x8","ufixed8x16","ufixed8x24","ufixed8x32","ufixed8x40","ufixed8x48","ufixed8x56","ufixed8x64","ufixed8x72","ufixed8x80","ufixed8x88","ufixed8x96","ufixed8x104","ufixed8x112","ufixed8x120","ufixed8x128","ufixed8x136","ufixed8x144","ufixed8x152","ufixed8x160","ufixed8x168","ufixed8x176","ufixed8x184","ufixed8x192","ufixed8x200","ufixed8x208","ufixed8x216","ufixed8x224","ufixed8x232","ufixed8x240","ufixed8x248","ufixed16x8","ufixed16x16","ufixed16x24","ufixed16x32","ufixed16x40","ufixed16x48","ufixed16x56","ufixed16x64","ufixed16x72","ufixed16x80","ufixed16x88","ufixed16x96","ufixed16x104","ufixed16x112","ufixed16x120","ufixed16x128","ufixed16x136","ufixed16x144","ufixed16x152","ufixed16x160","ufixed16x168","ufixed16x176","ufixed16x184","ufixed16x192","ufixed16x200","ufixed16x208","ufixed16x216","ufixed16x224","ufixed16x232","ufixed16x240","ufixed24x8","ufixed24x16","ufixed24x24","ufixed24x32","ufixed24x40","ufixed24x48","ufixed24x56","ufixed24x64","ufixed24x72","ufixed24x80","ufixed24x88","ufixed24x96","ufixed24x104","ufixed24x112","ufixed24x120","ufixed24x128","ufixed24x136","ufixed24x144","ufixed24x152","ufixed24x160","ufixed24x168","ufixed24x176","ufixed24x184","ufixed24x192","ufixed24x200","ufixed24x208","ufixed24x216","ufixed24x224","ufixed24x232","ufixed32x8","ufixed32x16","ufixed32x24","ufixed32x32","ufixed32x40","ufixed32x48","ufixed32x56","ufixed32x64","ufixed32x72","ufixed32x80","ufixed32x88","ufixed32x96","ufixed32x104","ufixed32x112","ufixed32x120","ufixed32x128","ufixed32x136","ufixed32x144","ufixed32x152","ufixed32x160","ufixed32x168","ufixed32x176","ufixed32x184","ufixed32x192","ufixed32x200","ufixed32x208","ufixed32x216","ufixed32x224","ufixed40x8","ufixed40x16","ufixed40x24","ufixed40x32","ufixed40x40","ufixed40x48","ufixed40x56","ufixed40x64","ufixed40x72","ufixed40x80","ufixed40x88","ufixed40x96","ufixed40x104","ufixed40x112","ufixed40x120","ufixed40x128","ufixed40x136","ufixed40x144","ufixed40x152","ufixed40x160","ufixed40x168","ufixed40x176","ufixed40x184","ufixed40x192","ufixed40x200","ufixed40x208","ufixed40x216","ufixed48x8","ufixed48x16","ufixed48x24","ufixed48x32","ufixed48x40","ufixed48x48","ufixed48x56","ufixed48x64","ufixed48x72","ufixed48x80","ufixed48x88","ufixed48x96","ufixed48x104","ufixed48x112","ufixed48x120","ufixed48x128","ufixed48x136","ufixed48x144","ufixed48x152","ufixed48x160","ufixed48x168","ufixed48x176","ufixed48x184","ufixed48x192","ufixed48x200","ufixed48x208","ufixed56x8","ufixed56x16","ufixed56x24","ufixed56x32","ufixed56x40","ufixed56x48","ufixed56x56","ufixed56x64","ufixed56x72","ufixed56x80","ufixed56x88","ufixed56x96","ufixed56x104","ufixed56x112","ufixed56x120","ufixed56x128","ufixed56x136","ufixed56x144","ufixed56x152","ufixed56x160","ufixed56x168","ufixed56x176","ufixed56x184","ufixed56x192","ufixed56x200","ufixed64x8","ufixed64x16","ufixed64x24","ufixed64x32","ufixed64x40","ufixed64x48","ufixed64x56","ufixed64x64","ufixed64x72","ufixed64x80","ufixed64x88","ufixed64x96","ufixed64x104","ufixed64x112","ufixed64x120","ufixed64x128","ufixed64x136","ufixed64x144","ufixed64x152","ufixed64x160","ufixed64x168","ufixed64x176","ufixed64x184","ufixed64x192","ufixed72x8","ufixed72x16","ufixed72x24","ufixed72x32","ufixed72x40","ufixed72x48","ufixed72x56","ufixed72x64","ufixed72x72","ufixed72x80","ufixed72x88","ufixed72x96","ufixed72x104","ufixed72x112","ufixed72x120","ufixed72x128","ufixed72x136","ufixed72x144","ufixed72x152","ufixed72x160","ufixed72x168","ufixed72x176","ufixed72x184","ufixed80x8","ufixed80x16","ufixed80x24","ufixed80x32","ufixed80x40","ufixed80x48","ufixed80x56","ufixed80x64","ufixed80x72","ufixed80x80","ufixed80x88","ufixed80x96","ufixed80x104","ufixed80x112","ufixed80x120","ufixed80x128","ufixed80x136","ufixed80x144","ufixed80x152","ufixed80x160","ufixed80x168","ufixed80x176","ufixed88x8","ufixed88x16","ufixed88x24","ufixed88x32","ufixed88x40","ufixed88x48","ufixed88x56","ufixed88x64","ufixed88x72","ufixed88x80","ufixed88x88","ufixed88x96","ufixed88x104","ufixed88x112","ufixed88x120","ufixed88x128","ufixed88x136","ufixed88x144","ufixed88x152","ufixed88x160","ufixed88x168","ufixed96x8","ufixed96x16","ufixed96x24","ufixed96x32","ufixed96x40","ufixed96x48","ufixed96x56","ufixed96x64","ufixed96x72","ufixed96x80","ufixed96x88","ufixed96x96","ufixed96x104","ufixed96x112","ufixed96x120","ufixed96x128","ufixed96x136","ufixed96x144","ufixed96x152","ufixed96x160","ufixed104x8","ufixed104x16","ufixed104x24","ufixed104x32","ufixed104x40","ufixed104x48","ufixed104x56","ufixed104x64","ufixed104x72","ufixed104x80","ufixed104x88","ufixed104x96","ufixed104x104","ufixed104x112","ufixed104x120","ufixed104x128","ufixed104x136","ufixed104x144","ufixed104x152","ufixed112x8","ufixed112x16","ufixed112x24","ufixed112x32","ufixed112x40","ufixed112x48","ufixed112x56","ufixed112x64","ufixed112x72","ufixed112x80","ufixed112x88","ufixed112x96","ufixed112x104","ufixed112x112","ufixed112x120","ufixed112x128","ufixed112x136","ufixed112x144","ufixed120x8","ufixed120x16","ufixed120x24","ufixed120x32","ufixed120x40","ufixed120x48","ufixed120x56","ufixed120x64","ufixed120x72","ufixed120x80","ufixed120x88","ufixed120x96","ufixed120x104","ufixed120x112","ufixed120x120","ufixed120x128","ufixed120x136","ufixed128x8","ufixed128x16","ufixed128x24","ufixed128x32","ufixed128x40","ufixed128x48","ufixed128x56","ufixed128x64","ufixed128x72","ufixed128x80","ufixed128x88","ufixed128x96","ufixed128x104","ufixed128x112","ufixed128x120","ufixed128x128","ufixed136x8","ufixed136x16","ufixed136x24","ufixed136x32","ufixed136x40","ufixed136x48","ufixed136x56","ufixed136x64","ufixed136x72","ufixed136x80","ufixed136x88","ufixed136x96","ufixed136x104","ufixed136x112","ufixed136x120","ufixed144x8","ufixed144x16","ufixed144x24","ufixed144x32","ufixed144x40","ufixed144x48","ufixed144x56","ufixed144x64","ufixed144x72","ufixed144x80","ufixed144x88","ufixed144x96","ufixed144x104","ufixed144x112","ufixed152x8","ufixed152x16","ufixed152x24","ufixed152x32","ufixed152x40","ufixed152x48","ufixed152x56","ufixed152x64","ufixed152x72","ufixed152x80","ufixed152x88","ufixed152x96","ufixed152x104","ufixed160x8","ufixed160x16","ufixed160x24","ufixed160x32","ufixed160x40","ufixed160x48","ufixed160x56","ufixed160x64","ufixed160x72","ufixed160x80","ufixed160x88","ufixed160x96","ufixed168x8","ufixed168x16","ufixed168x24","ufixed168x32","ufixed168x40","ufixed168x48","ufixed168x56","ufixed168x64","ufixed168x72","ufixed168x80","ufixed168x88","ufixed176x8","ufixed176x16","ufixed176x24","ufixed176x32","ufixed176x40","ufixed176x48","ufixed176x56","ufixed176x64","ufixed176x72","ufixed176x80","ufixed184x8","ufixed184x16","ufixed184x24","ufixed184x32","ufixed184x40","ufixed184x48","ufixed184x56","ufixed184x64","ufixed184x72","ufixed192x8","ufixed192x16","ufixed192x24","ufixed192x32","ufixed192x40","ufixed192x48","ufixed192x56","ufixed192x64","ufixed200x8","ufixed200x16","ufixed200x24","ufixed200x32","ufixed200x40","ufixed200x48","ufixed200x56","ufixed208x8","ufixed208x16","ufixed208x24","ufixed208x32","ufixed208x40","ufixed208x48","ufixed216x8","ufixed216x16","ufixed216x24","ufixed216x32","ufixed216x40","ufixed224x8","ufixed224x16","ufixed224x24","ufixed224x32","ufixed232x8","ufixed232x16","ufixed232x24","ufixed240x8","ufixed240x16","ufixed248x8","event","enum","let","mapping","private","public","external","inherited","payable","true","false","var","import","constant","if","else","for","else","for","while","do","break","continue","throw","returns","return","suicide","new","is","this","super"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/ZvTB.b59b3ef3.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/ZvTB.b59b3ef3.js index 8853aab25..2a68bd988 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/ZvTB.b59b3ef3.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/ZvTB.b59b3ef3.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["ZvTB"],{ZvTB:function(E,T,A){"use strict";A.r(T),A.d(T,"conf",function(){return N}),A.d(T,"language",function(){return R});var N={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["[","]"],["(",")"],["{","}"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]}]},R={defaultToken:"",tokenPostfix:".msdax",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"{",close:"}",token:"delimiter.brackets"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["VAR","RETURN","NOT","EVALUATE","DATATABLE","ORDER","BY","START","AT","DEFINE","MEASURE","ASC","DESC","IN","BOOLEAN","DOUBLE","INTEGER","DATETIME","CURRENCY","STRING"],functions:["CLOSINGBALANCEMONTH","CLOSINGBALANCEQUARTER","CLOSINGBALANCEYEAR","DATEADD","DATESBETWEEN","DATESINPERIOD","DATESMTD","DATESQTD","DATESYTD","ENDOFMONTH","ENDOFQUARTER","ENDOFYEAR","FIRSTDATE","FIRSTNONBLANK","LASTDATE","LASTNONBLANK","NEXTDAY","NEXTMONTH","NEXTQUARTER","NEXTYEAR","OPENINGBALANCEMONTH","OPENINGBALANCEQUARTER","OPENINGBALANCEYEAR","PARALLELPERIOD","PREVIOUSDAY","PREVIOUSMONTH","PREVIOUSQUARTER","PREVIOUSYEAR","SAMEPERIODLASTYEAR","STARTOFMONTH","STARTOFQUARTER","STARTOFYEAR","TOTALMTD","TOTALQTD","TOTALYTD","ADDCOLUMNS","ADDMISSINGITEMS","ALL","ALLEXCEPT","ALLNOBLANKROW","ALLSELECTED","CALCULATE","CALCULATETABLE","CALENDAR","CALENDARAUTO","CROSSFILTER","CROSSJOIN","CURRENTGROUP","DATATABLE","DETAILROWS","DISTINCT","EARLIER","EARLIEST","EXCEPT","FILTER","FILTERS","GENERATE","GENERATEALL","GROUPBY","IGNORE","INTERSECT","ISONORAFTER","KEEPFILTERS","LOOKUPVALUE","NATURALINNERJOIN","NATURALLEFTOUTERJOIN","RELATED","RELATEDTABLE","ROLLUP","ROLLUPADDISSUBTOTAL","ROLLUPGROUP","ROLLUPISSUBTOTAL","ROW","SAMPLE","SELECTCOLUMNS","SUBSTITUTEWITHINDEX","SUMMARIZE","SUMMARIZECOLUMNS","TOPN","TREATAS","UNION","USERELATIONSHIP","VALUES","SUM","SUMX","PATH","PATHCONTAINS","PATHITEM","PATHITEMREVERSE","PATHLENGTH","AVERAGE","AVERAGEA","AVERAGEX","COUNT","COUNTA","COUNTAX","COUNTBLANK","COUNTROWS","COUNTX","DISTINCTCOUNT","DIVIDE","GEOMEAN","GEOMEANX","MAX","MAXA","MAXX","MEDIAN","MEDIANX","MIN","MINA","MINX","PERCENTILE.EXC","PERCENTILE.INC","PERCENTILEX.EXC","PERCENTILEX.INC","PRODUCT","PRODUCTX","RANK.EQ","RANKX","STDEV.P","STDEV.S","STDEVX.P","STDEVX.S","VAR.P","VAR.S","VARX.P","VARX.S","XIRR","XNPV","DATE","DATEDIFF","DATEVALUE","DAY","EDATE","EOMONTH","HOUR","MINUTE","MONTH","NOW","SECOND","TIME","TIMEVALUE","TODAY","WEEKDAY","WEEKNUM","YEAR","YEARFRAC","CONTAINS","CONTAINSROW","CUSTOMDATA","ERROR","HASONEFILTER","HASONEVALUE","ISBLANK","ISCROSSFILTERED","ISEMPTY","ISERROR","ISEVEN","ISFILTERED","ISLOGICAL","ISNONTEXT","ISNUMBER","ISODD","ISSUBTOTAL","ISTEXT","USERNAME","USERPRINCIPALNAME","AND","FALSE","IF","IFERROR","NOT","OR","SWITCH","TRUE","ABS","ACOS","ACOSH","ACOT","ACOTH","ASIN","ASINH","ATAN","ATANH","BETA.DIST","BETA.INV","CEILING","CHISQ.DIST","CHISQ.DIST.RT","CHISQ.INV","CHISQ.INV.RT","COMBIN","COMBINA","CONFIDENCE.NORM","CONFIDENCE.T","COS","COSH","COT","COTH","CURRENCY","DEGREES","EVEN","EXP","EXPON.DIST","FACT","FLOOR","GCD","INT","ISO.CEILING","LCM","LN","LOG","LOG10","MOD","MROUND","ODD","PERMUT","PI","POISSON.DIST","POWER","QUOTIENT","RADIANS","RAND","RANDBETWEEN","ROUND","ROUNDDOWN","ROUNDUP","SIGN","SIN","SINH","SQRT","SQRTPI","TAN","TANH","TRUNC","BLANK","CONCATENATE","CONCATENATEX","EXACT","FIND","FIXED","FORMAT","LEFT","LEN","LOWER","MID","REPLACE","REPT","RIGHT","SEARCH","SUBSTITUTE","TRIM","UNICHAR","UNICODE","UPPER","VALUE"],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},[/[;,.]/,"delimiter"],[/[({})]/,"@brackets"],[/[a-z_][a-zA-Z0-9_]*/,{cases:{"@keywords":"keyword","@functions":"keyword","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/\/\/+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/N"/,{token:"string",next:"@string"}],[/"/,{token:"string",next:"@string"}]],string:[[/[^"]+/,"string"],[/""/,"string"],[/"/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/\[/,{token:"identifier.quote",next:"@bracketedIdentifier"}],[/'/,{token:"identifier.quote",next:"@quotedIdentifier"}]],bracketedIdentifier:[[/[^\]]+/,"identifier"],[/]]/,"identifier"],[/]/,{token:"identifier.quote",next:"@pop"}]],quotedIdentifier:[[/[^']+/,"identifier"],[/''/,"identifier"],[/'/,{token:"identifier.quote",next:"@pop"}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["ZvTB"],{ZvTB:function(E,T,A){"use strict";A.r(T),A.d(T,"conf",function(){return N}),A.d(T,"language",function(){return R});var N={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["[","]"],["(",")"],["{","}"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]}]},R={defaultToken:"",tokenPostfix:".msdax",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"{",close:"}",token:"delimiter.brackets"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["VAR","RETURN","NOT","EVALUATE","DATATABLE","ORDER","BY","START","AT","DEFINE","MEASURE","ASC","DESC","IN","BOOLEAN","DOUBLE","INTEGER","DATETIME","CURRENCY","STRING"],functions:["CLOSINGBALANCEMONTH","CLOSINGBALANCEQUARTER","CLOSINGBALANCEYEAR","DATEADD","DATESBETWEEN","DATESINPERIOD","DATESMTD","DATESQTD","DATESYTD","ENDOFMONTH","ENDOFQUARTER","ENDOFYEAR","FIRSTDATE","FIRSTNONBLANK","LASTDATE","LASTNONBLANK","NEXTDAY","NEXTMONTH","NEXTQUARTER","NEXTYEAR","OPENINGBALANCEMONTH","OPENINGBALANCEQUARTER","OPENINGBALANCEYEAR","PARALLELPERIOD","PREVIOUSDAY","PREVIOUSMONTH","PREVIOUSQUARTER","PREVIOUSYEAR","SAMEPERIODLASTYEAR","STARTOFMONTH","STARTOFQUARTER","STARTOFYEAR","TOTALMTD","TOTALQTD","TOTALYTD","ADDCOLUMNS","ADDMISSINGITEMS","ALL","ALLEXCEPT","ALLNOBLANKROW","ALLSELECTED","CALCULATE","CALCULATETABLE","CALENDAR","CALENDARAUTO","CROSSFILTER","CROSSJOIN","CURRENTGROUP","DATATABLE","DETAILROWS","DISTINCT","EARLIER","EARLIEST","EXCEPT","FILTER","FILTERS","GENERATE","GENERATEALL","GROUPBY","IGNORE","INTERSECT","ISONORAFTER","KEEPFILTERS","LOOKUPVALUE","NATURALINNERJOIN","NATURALLEFTOUTERJOIN","RELATED","RELATEDTABLE","ROLLUP","ROLLUPADDISSUBTOTAL","ROLLUPGROUP","ROLLUPISSUBTOTAL","ROW","SAMPLE","SELECTCOLUMNS","SUBSTITUTEWITHINDEX","SUMMARIZE","SUMMARIZECOLUMNS","TOPN","TREATAS","UNION","USERELATIONSHIP","VALUES","SUM","SUMX","PATH","PATHCONTAINS","PATHITEM","PATHITEMREVERSE","PATHLENGTH","AVERAGE","AVERAGEA","AVERAGEX","COUNT","COUNTA","COUNTAX","COUNTBLANK","COUNTROWS","COUNTX","DISTINCTCOUNT","DIVIDE","GEOMEAN","GEOMEANX","MAX","MAXA","MAXX","MEDIAN","MEDIANX","MIN","MINA","MINX","PERCENTILE.EXC","PERCENTILE.INC","PERCENTILEX.EXC","PERCENTILEX.INC","PRODUCT","PRODUCTX","RANK.EQ","RANKX","STDEV.P","STDEV.S","STDEVX.P","STDEVX.S","VAR.P","VAR.S","VARX.P","VARX.S","XIRR","XNPV","DATE","DATEDIFF","DATEVALUE","DAY","EDATE","EOMONTH","HOUR","MINUTE","MONTH","NOW","SECOND","TIME","TIMEVALUE","TODAY","WEEKDAY","WEEKNUM","YEAR","YEARFRAC","CONTAINS","CONTAINSROW","CUSTOMDATA","ERROR","HASONEFILTER","HASONEVALUE","ISBLANK","ISCROSSFILTERED","ISEMPTY","ISERROR","ISEVEN","ISFILTERED","ISLOGICAL","ISNONTEXT","ISNUMBER","ISODD","ISSUBTOTAL","ISTEXT","USERNAME","USERPRINCIPALNAME","AND","FALSE","IF","IFERROR","NOT","OR","SWITCH","TRUE","ABS","ACOS","ACOSH","ACOT","ACOTH","ASIN","ASINH","ATAN","ATANH","BETA.DIST","BETA.INV","CEILING","CHISQ.DIST","CHISQ.DIST.RT","CHISQ.INV","CHISQ.INV.RT","COMBIN","COMBINA","CONFIDENCE.NORM","CONFIDENCE.T","COS","COSH","COT","COTH","CURRENCY","DEGREES","EVEN","EXP","EXPON.DIST","FACT","FLOOR","GCD","INT","ISO.CEILING","LCM","LN","LOG","LOG10","MOD","MROUND","ODD","PERMUT","PI","POISSON.DIST","POWER","QUOTIENT","RADIANS","RAND","RANDBETWEEN","ROUND","ROUNDDOWN","ROUNDUP","SIGN","SIN","SINH","SQRT","SQRTPI","TAN","TANH","TRUNC","BLANK","CONCATENATE","CONCATENATEX","EXACT","FIND","FIXED","FORMAT","LEFT","LEN","LOWER","MID","REPLACE","REPT","RIGHT","SEARCH","SUBSTITUTE","TRIM","UNICHAR","UNICODE","UPPER","VALUE"],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},[/[;,.]/,"delimiter"],[/[({})]/,"@brackets"],[/[a-z_][a-zA-Z0-9_]*/,{cases:{"@keywords":"keyword","@functions":"keyword","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/\/\/+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/N"/,{token:"string",next:"@string"}],[/"/,{token:"string",next:"@string"}]],string:[[/[^"]+/,"string"],[/""/,"string"],[/"/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/\[/,{token:"identifier.quote",next:"@bracketedIdentifier"}],[/'/,{token:"identifier.quote",next:"@quotedIdentifier"}]],bracketedIdentifier:[[/[^\]]+/,"identifier"],[/]]/,"identifier"],[/]/,{token:"identifier.quote",next:"@pop"}]],quotedIdentifier:[[/[^']+/,"identifier"],[/''/,"identifier"],[/'/,{token:"identifier.quote",next:"@pop"}]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/aME4.0269686c.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/aME4.0269686c.js index 773a16221..3772db621 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/aME4.0269686c.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/aME4.0269686c.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["aME4"],{aME4:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return o}),t.d(n,"language",function(){return s});var o={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"""',close:'"""',notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"""',close:'"""'},{open:'"',close:'"'}],folding:{offSide:!0}},s={defaultToken:"invalid",tokenPostfix:".gql",keywords:["null","true","false","query","mutation","subscription","extend","schema","directive","scalar","type","interface","union","enum","input","implements","fragment","on"],typeKeywords:["Int","Float","String","Boolean","ID"],directiveLocations:["SCHEMA","SCALAR","OBJECT","FIELD_DEFINITION","ARGUMENT_DEFINITION","INTERFACE","UNION","ENUM","ENUM_VALUE","INPUT_OBJECT","INPUT_FIELD_DEFINITION","QUERY","MUTATION","SUBSCRIPTION","FIELD","FRAGMENT_DEFINITION","FRAGMENT_SPREAD","INLINE_FRAGMENT","VARIABLE_DEFINITION"],operators:["=","!","?",":","&","|"],symbols:/[=!?:&|]+/,escapes:/\\(?:["\\\/bfnrt]|u[0-9A-Fa-f]{4})/,tokenizer:{root:[[/[a-z_][\w$]*/,{cases:{"@keywords":"keyword","@default":"key.identifier"}}],[/[$][\w$]*/,{cases:{"@keywords":"keyword","@default":"argument.identifier"}}],[/[A-Z][\w\$]*/,{cases:{"@typeKeywords":"keyword","@default":"type.identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,{token:"annotation",log:"annotation token: $0"}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"""/,{token:"string",next:"@mlstring",nextEmbedded:"markdown"}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}]],mlstring:[[/[^"]+/,"string"],['"""',{token:"string",next:"@pop",nextEmbedded:"@pop"}]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,""],[/#.*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["aME4"],{aME4:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return o}),t.d(n,"language",function(){return s});var o={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"""',close:'"""',notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"""',close:'"""'},{open:'"',close:'"'}],folding:{offSide:!0}},s={defaultToken:"invalid",tokenPostfix:".gql",keywords:["null","true","false","query","mutation","subscription","extend","schema","directive","scalar","type","interface","union","enum","input","implements","fragment","on"],typeKeywords:["Int","Float","String","Boolean","ID"],directiveLocations:["SCHEMA","SCALAR","OBJECT","FIELD_DEFINITION","ARGUMENT_DEFINITION","INTERFACE","UNION","ENUM","ENUM_VALUE","INPUT_OBJECT","INPUT_FIELD_DEFINITION","QUERY","MUTATION","SUBSCRIPTION","FIELD","FRAGMENT_DEFINITION","FRAGMENT_SPREAD","INLINE_FRAGMENT","VARIABLE_DEFINITION"],operators:["=","!","?",":","&","|"],symbols:/[=!?:&|]+/,escapes:/\\(?:["\\\/bfnrt]|u[0-9A-Fa-f]{4})/,tokenizer:{root:[[/[a-z_][\w$]*/,{cases:{"@keywords":"keyword","@default":"key.identifier"}}],[/[$][\w$]*/,{cases:{"@keywords":"keyword","@default":"argument.identifier"}}],[/[A-Z][\w\$]*/,{cases:{"@typeKeywords":"keyword","@default":"type.identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,{token:"annotation",log:"annotation token: $0"}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"""/,{token:"string",next:"@mlstring",nextEmbedded:"markdown"}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}]],mlstring:[[/[^"]+/,"string"],['"""',{token:"string",next:"@pop",nextEmbedded:"@pop"}]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,""],[/#.*$/,"comment"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/app.5fdec7f6.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/app.5fdec7f6.js index e48a24e9b..67a7289b4 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/app.5fdec7f6.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/app.5fdec7f6.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["app"],{"/mUW":function(e,t,n){"use strict";var i=n("3Jjm");n.n(i).a},"3Jjm":function(e,t,n){},"7Qib":function(e,t,n){"use strict";n.d(t,"c",function(){return i}),n.d(t,"a",function(){return l}),n.d(t,"b",function(){return s});n("EPZ6"),n("Q2cO");function i(e){return/^(https?:|mailto:|tel:)/.test(e)}var r=n("6Cps"),o=r.enc.Utf8.parse("1234123412ABCDEF"),a=r.enc.Utf8.parse("ABCDEF1234123412");function l(e){var t=r.enc.Hex.parse(e),n=r.enc.Base64.stringify(t),i=r.AES.decrypt(n,o,{iv:a,mode:r.mode.CBC,padding:r.pad.Pkcs7}).toString(r.enc.Utf8).toString(),l=i.substr(-32);return i.split(l)[0]}function s(e){var t=r.enc.Utf8.parse(e+function(){var e=(new Date).getTime();return window.performance&&"function"==typeof window.performance.now&&(e+=performance.now()),"xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g,function(t){var n=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"==t?n:3&n|8).toString(16)})}());return r.AES.encrypt(t,o,{iv:a,mode:r.mode.CBC,padding:r.pad.Pkcs7}).ciphertext.toString().toUpperCase()}},"8q53":function(e,t,n){"use strict";var i=n("wihr");n.n(i).a},B3E3:function(e,t,n){"use strict";var i=n("uYT1");n.n(i).a},Bq29:function(e,t,n){},HK11:function(e,t,n){"use strict";var i=n("Bq29");n.n(i).a},HiAn:function(e,t,n){},INx1:function(e,t,n){},Itw0:function(e,t,n){},"JeH/":function(e,t,n){"use strict";var i=n("fcOe");n.n(i).a},L48I:function(e,t,n){"use strict";var i=n("lnxG");n.n(i).a},N4Kv:function(e,t,n){"use strict";var i=n("hk9y");n.n(i).a},PAdZ:function(e,t,n){},Q2AE:function(e,t,n){"use strict";var i=n("AmEZ"),r=n("8t5x"),o={},a={state:{cacheViews:[]},mutations:{ADD_CACHEVIEW:function(e,t){e.cacheViews.includes(t.name)||t.meta&&t.meta.keepAlive&&e.cacheViews.push(t.name)}},actions:{addCachedView:function(e,t){(0,e.commit)("ADD_CACHEVIEW",t)}}},l={sidebar:function(e){return e.app.sidebar},device:function(e){return e.app.device},token:function(e){return e.user.token},accessUser:function(e){return e.user.accessUser},cacheViews:function(e){return e.cacheView.cacheViews}},s={},u=n("jJIE"),c=n.n(u),d={state:{sidebar:{opened:!+c.a.get("sidebarStatus"),withoutAnimation:!1},device:"desktop"},mutations:{TOGGLE_SIDEBAR:function(e){e.sidebar.opened?c.a.set("sidebarStatus",1):c.a.set("sidebarStatus",0),e.sidebar.opened=!e.sidebar.opened,e.sidebar.withoutAnimation=!1},CLOSE_SIDEBAR:function(e,t){c.a.set("sidebarStatus",1),e.sidebar.opened=!1,e.sidebar.withoutAnimation=t},TOGGLE_DEVICE:function(e,t){e.device=t}},actions:{ToggleSideBar:function(e){(0,e.commit)("TOGGLE_SIDEBAR")},CloseSideBar:function(e,t){(0,e.commit)("CLOSE_SIDEBAR",t.withoutAnimation)},ToggleDevice:function(e,t){(0,e.commit)("TOGGLE_DEVICE",t)}}},f=n("Asgo"),p=n.n(f),h=n("dVUk"),m=n("X4fA"),b={state:{token:"",accessUser:{}},mutations:{SET_TOKEN:function(e,t){e.token=t,Object(m.j)(t)},SET_ACCESSUSER:function(e,t){e.accessUser=t,Object(m.h)(t)}},actions:{Login:function(e,t){var n=e.commit,i={userName:t.userName.trim(),password:t.password.trim(),captchaVerification:t.captchaVerification.trim()};return new p.a(function(e,t){Object(h.a)(i).then(function(i){var r=i.repCode,o=i.repData;"0000"===r?(n("SET_TOKEN",o.token),n("SET_ACCESSUSER",o.accessUser),e(i)):t(i.repMsg)}).catch(function(e){t(e)})})},LogOut:function(e){var t=e.commit,n=e.state;return new p.a(function(e,i){Object(h.b)(n.token).then(function(){t("SET_TOKEN",""),t("SET_ACCESSUSER",{}),Object(m.c)(),Object(m.b)(),Object(m.a)(),e()}).catch(function(e){i(e)})})},FedLogOut:function(e){var t=e.commit;return new p.a(function(e){t("SET_TOKEN",""),t("SET_ACCESSUSER",{}),Object(m.c)(),Object(m.b)(),Object(m.a)(),e()})}}},v={state:{id:0,val:"",title:""},mutations:{setCategory:function(e,t){e.id=0,e.val=t.value,e.title=t.label}}};i.default.use(r.a);var g=new r.a.Store({modules:{app:d,user:b,cacheView:a,help:v},state:{},plugins:[function(e){}],actions:o,mutations:s,getters:l});t.a=g},RXVF:function(e,t,n){"use strict";var i=n("gaEW");n.n(i).a},Rt0g:function(e,t,n){"use strict";var i=n("ZU+s");n.n(i).a},S0BH:function(e,t,n){"use strict";var i=n("PAdZ");n.n(i).a},SiB1:function(e,t,n){"use strict";var i=n("INx1");n.n(i).a},UbsL:function(e,t,n){},VGgK:function(e,t,n){},Vtdi:function(e,t,n){"use strict";n.r(t);var i={};n.r(i),n.d(i,"basecode",function(){return le}),n.d(i,"getDataByCode",function(){return se}),n.d(i,"fixed",function(){return ue}),n.d(i,"formatTimestamp",function(){return ce}),n.d(i,"formatDate",function(){return de});var r=n("EPZ6"),o=n.n(r),a=n("AmEZ"),l=n("VCIm"),s=n.n(l),u=(n("6bc2"),n("A7+3")),c=n.n(u),d=(n("qpO2"),n("HiAn"),n("aGE4"),n("vjVy"),n("sm2R")),f={name:"App",provide:function(){return{reload:this.reload}},data:function(){return{isRouterAlive:!1}},watch:{$route:function(e,t){"/login"==e.path&&this.queryDictName()}},computed:{},created:function(){this.queryDictName()},methods:{queryDictName:function(){var e=this;Object(d.b)(function(){e.isRouterAlive=!0})},reload:function(){this.isRouterAlive=!1,this.$nextTick(function(){this.isRouterAlive=!0})}}},p=n("ZrdR"),h=Object(p.a)(f,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{attrs:{id:"app"}},[this.isRouterAlive?t("router-view"):this._e()],1)},[],!1,null,null,null);h.options.__file="App.vue";var m=h.exports,b=n("uOVN"),v=n("bS4n"),g=n.n(v),y=n("cLjf"),w=n.n(y),C=n("hDQ3"),x=n.n(C),F=n("8t5x"),S=n("wu4H"),k=n.n(S),_={data:function(){return{levelList:null}},watch:{$route:function(){this.getBreadcrumb()}},computed:{levelListArr:function(){return this.levelList.filter(function(e){return e.meta&&e.meta.title})}},created:function(){this.getBreadcrumb()},methods:{getBreadcrumb:function(){var e=this.$route.params,t=this.$route.matched.filter(function(t){if(t.name){var n=k.a.compile(t.path);return t.path=n(e),!0}});this.levelList=t}}},j=(n("/mUW"),Object(p.a)(_,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("el-breadcrumb",{staticClass:"app-breadcrumb",attrs:{separator:"/"}},[n("transition-group",{attrs:{name:"breadcrumb"}},e._l(e.levelListArr,function(t,i){return n("el-breadcrumb-item",{key:t.path},["noredirect"===t.redirect||i==e.levelListArr.length-1?n("span",{staticClass:"no-redirect"},[e._v(e._s(t.meta.title))]):n("router-link",{staticClass:"no-redirect",attrs:{to:t.redirect||t.path}},[e._v(e._s(t.meta.title))])],1)}),1)],1)},[],!1,null,"2b5df056",null));j.options.__file="index.vue";var O=j.exports,T={name:"Hamburger",props:{isActive:{type:Boolean,default:!1},toggleClick:{type:Function,default:null}}},q=(n("S0BH"),Object(p.a)(T,function(){var e=this.$createElement,t=this._self._c||e;return t("div",[t("svg",{staticClass:"hamburger",class:{"is-active":this.isActive},attrs:{t:"1492500959545",viewBox:"0 0 1024 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg","p-id":"1691","xmlns:xlink":"http://www.w3.org/1999/xlink",width:"64",height:"64"},on:{click:this.toggleClick}},[t("path",{attrs:{d:"M966.8023 568.849776 57.196677 568.849776c-31.397081 0-56.850799-25.452695-56.850799-56.850799l0 0c0-31.397081 25.452695-56.849776 56.850799-56.849776l909.605623 0c31.397081 0 56.849776 25.452695 56.849776 56.849776l0 0C1023.653099 543.397081 998.200404 568.849776 966.8023 568.849776z","p-id":"1692",fill:"#333"}}),this._v(" "),t("path",{attrs:{d:"M966.8023 881.527125 57.196677 881.527125c-31.397081 0-56.850799-25.452695-56.850799-56.849776l0 0c0-31.397081 25.452695-56.849776 56.850799-56.849776l909.605623 0c31.397081 0 56.849776 25.452695 56.849776 56.849776l0 0C1023.653099 856.07443 998.200404 881.527125 966.8023 881.527125z","p-id":"1693",fill:"#333"}}),this._v(" "),t("path",{attrs:{d:"M966.8023 256.17345 57.196677 256.17345c-31.397081 0-56.850799-25.452695-56.850799-56.849776l0 0c0-31.397081 25.452695-56.850799 56.850799-56.850799l909.605623 0c31.397081 0 56.849776 25.452695 56.849776 56.850799l0 0C1023.653099 230.720755 998.200404 256.17345 966.8023 256.17345z","p-id":"1694",fill:"#333"}})])])},[],!1,null,"54298247",null));q.options.__file="index.vue";var D=q.exports,E=n("XS0u"),B=n("dVUk"),P=n("sxct"),A={data:function(){var e=this;return{wordVisible:!1,form:{oldPassword:"",password:"",confirmPassword:""},rules:{oldPassword:[{required:!0,validator:function(e,t,n){t.length<6||t.length>30?n(new Error("请输入原密码")):n()},trigger:"blur"}],password:[{required:!0,message:"请选择新密码",trigger:"blur"}],confirmPassword:[{required:!0,validator:function(t,n,i){""===n?i(new Error("请再次输入密码")):n!==e.form.password?i(new Error("两次输入密码不一致!")):n.length<6||n.length>20?i(new Error("密码长度需要再6-20之间!")):i()},trigger:"blur"}]}}},components:{Breadcrumb:O,Hamburger:D},computed:g()({},Object(F.c)(["sidebar"])),created:function(){},methods:{toggleSideBar:function(){this.$store.dispatch("ToggleSideBar")},logout:function(){var e=this;this.$confirm("确定要退出吗","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(function(){sessionStorage.clear(),localStorage.clear(),e.$router.push("/login")})},updatePassword:function(){var e=this;this.wordVisible=!0,this.$nextTick(function(){e.$refs.form&&e.$refs.form.resetFields()})},confrimUpdate:function(){var e=this;this.$refs.form.validate(function(){var t=x()(w.a.mark(function t(n){var i,r,o,a,l,s;return w.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(!n){t.next=16;break}return i=e.form,r=i.oldPassword,o=i.password,a=i.confirmPassword,l={oldPassword:Object(P.a)(r),password:Object(P.a)(o),confirmPassword:Object(P.a)(a)},t.next=5,Object(B.c)(l);case 5:if(s=t.sent,"200"==s.code){t.next=9;break}return t.abrupt("return");case 9:e.wordVisible=!1,e.$message.success("修改密码成功,请重新登录"),sessionStorage.clear(),localStorage.clear(),e.$router.push("/login"),t.next=17;break;case 16:return t.abrupt("return",!1);case 17:case"end":return t.stop()}},t,e)}));return function(e){return t.apply(this,arguments)}}())},helpCenter:function(){var e=Object(E.b)("helpCategory");this.$router.push({path:"/helpCenList/list",query:{id:0,val:e[0].value,title:e[0].label}})}}},$=(n("JeH/"),Object(p.a)(A,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("el-menu",{staticClass:"navbar",attrs:{mode:"horizontal"}},[n("hamburger",{staticClass:"hamburger-container",attrs:{"toggle-click":e.toggleSideBar,"is-active":e.sidebar.opened}}),e._v(" "),n("breadcrumb")],1),e._v(" "),n("el-dialog",{staticClass:"password-box",attrs:{title:"修改密码",visible:e.wordVisible,width:"40%","close-on-click-modal":!1,top:"20vh"},on:{"update:visible":function(t){e.wordVisible=t}}},[n("el-form",{ref:"form",attrs:{model:e.form,"label-width":"100px",rules:e.rules,"close-on-click-modal":!1}},[n("el-form-item",{attrs:{label:"原密码",prop:"oldPassword"}},[n("el-input",{attrs:{type:"password",autocomplete:"off"},model:{value:e.form.oldPassword,callback:function(t){e.$set(e.form,"oldPassword","string"==typeof t?t.trim():t)},expression:"form.oldPassword"}})],1),e._v(" "),n("el-form-item",{attrs:{label:"新密码",prop:"password"}},[n("el-input",{attrs:{type:"password",autocomplete:"off"},model:{value:e.form.password,callback:function(t){e.$set(e.form,"password","string"==typeof t?t.trim():t)},expression:"form.password"}})],1),e._v(" "),n("el-form-item",{attrs:{label:"确认新密码",prop:"confirmPassword"}},[n("el-input",{attrs:{type:"password",autocomplete:"off"},model:{value:e.form.confirmPassword,callback:function(t){e.$set(e.form,"confirmPassword","string"==typeof t?t.trim():t)},expression:"form.confirmPassword"}})],1)],1),e._v(" "),n("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[n("el-button",{on:{click:function(t){e.wordVisible=!1}}},[e._v("取 消")]),e._v(" "),n("el-button",{attrs:{type:"primary"},on:{click:e.confrimUpdate}},[e._v("确 定")])],1)],1)],1)},[],!1,null,"1538a3b3",null));$.options.__file="Navbar.vue";var I=$.exports,N=n("YmYf"),R=n.n(N),M=n("7Qib"),U={name:"MenuItem",functional:!0,props:{icon:{type:String,default:""},title:{type:String,default:""}},render:function(e,t){var n=t.props,i=n.icon,r=n.title,o=[];return i&&o.push(e("i",{class:"iconfont "+i})),r&&o.push(e("span",{slot:"title"},[r])),o}},L=Object(p.a)(U,void 0,void 0,!1,null,null,null);L.options.__file="Item.vue";var V=L.exports,z={props:{to:{type:String,required:!0}},methods:{isExternalLink:function(e){return Object(M.c)(e)},linkProps:function(e){return this.isExternalLink(e)?{is:"a",href:e,target:"_blank",rel:"noopener"}:{is:"router-link",to:e}}}},Q=Object(p.a)(z,function(){var e=this.$createElement;return(this._self._c||e)("component",this._b({},"component",this.linkProps(this.to),!1),[this._t("default")],2)},[],!1,null,null,null);Q.options.__file="Link.vue";var H={name:"SidebarItem",components:{Item:V,AppLink:Q.exports},props:{item:{type:Object,required:!0},isNest:{type:Boolean,default:!1},basePath:{type:String,default:""}},data:function(){return{onlyOneChild:null}},computed:{},methods:{hasOneShowingChild:function(e,t){var n=this,i=e.filter(function(e){return!e.hidden&&(n.onlyOneChild=e,!0)});return 1===i.length||0===i.length&&(this.onlyOneChild=g()({},t,{path:"",noShowingChildren:!0}),!0)},resolvePath:function(e){return this.isExternalLink(e)?e:R.a.resolve(this.basePath,e)},isExternalLink:function(e){return Object(M.c)(e)}}},J=(n("L48I"),Object(p.a)(H,function(){var e=this,t=e.$createElement,n=e._self._c||t;return!e.item.hidden&&e.item.children?n("div",{staticClass:"menu-wrapper"},[!e.hasOneShowingChild(e.item.children,e.item)||e.onlyOneChild.children&&!e.onlyOneChild.noShowingChildren||e.item.alwaysShow?[e.hasPermission(e.item.meta.permission)?n("el-submenu",{attrs:{index:e.resolvePath(e.item.path)}},[n("template",{slot:"title"},[n("item",{attrs:{icon:e.item.meta.icon,title:e.item.meta.title}})],1),e._v(" "),e._l(e.item.children,function(t){return[e.hasPermission(t.meta.permission)&&1!=t.hidden?[t.children&&t.children.length>0?n("sidebar-item",{key:t.path,staticClass:"nest-menu",attrs:{"is-nest":!0,item:t,"base-path":e.resolvePath(t.path)}}):e._e(),e._v(" "),n("app-link",{key:t.name,attrs:{to:e.resolvePath(t.path)}},[n("el-menu-item",{attrs:{index:e.resolvePath(t.path)}},[t.meta?n("item",{attrs:{icon:t.meta.icon,title:t.meta.title}}):e._e()],1)],1)]:e._e()]})],2):e._e()]:[n("app-link",{attrs:{to:e.resolvePath(e.onlyOneChild.path)}},[n("el-menu-item",{class:{"submenu-title-noDropdown":!e.isNest},attrs:{index:e.resolvePath(e.onlyOneChild.path)}},[e.onlyOneChild.meta?n("item",{attrs:{icon:e.onlyOneChild.meta.icon||e.item.meta.icon,title:e.onlyOneChild.meta.title}}):e._e()],1)],1)]],2):e._e()},[],!1,null,"2b0b07e3",null));J.options.__file="SidebarItem.vue";var W={components:{SidebarItem:J.exports},computed:g()({},Object(F.c)(["sidebar"]),{routes:function(){return this.$router.options.routes},isCollapse:function(){return!this.sidebar.opened}}),methods:{goBigScreen:function(){var e=this.$router.resolve({path:"/report/bigScreen"});window.open(e.href,"_blank")}}},K=(n("rQpy"),Object(p.a)(W,function(){var e=this.$createElement,t=this._self._c||e;return t("el-scrollbar",{attrs:{"wrap-class":"scrollbar-wrapper"}},[t("div",{staticClass:"admin-title",on:{click:this.goBigScreen}}),this._v(" "),t("el-menu",{attrs:{"show-timeout":200,"default-active":this.$route.path,collapse:this.isCollapse,mode:"vertical"}},this._l(this.routes,function(e){return t("sidebar-item",{key:e.path,attrs:{item:e,"base-path":e.path}})}),1)],1)},[],!1,null,"38cf134e",null));K.options.__file="index.vue";var G=K.exports,X={name:"AppMain",computed:g()({},Object(F.c)(["cacheViews"]),{key:function(){return void 0!==this.$route.name?this.$route.name+ +new Date:this.$route+ +new Date}})},Z=(n("SiB1"),Object(p.a)(X,function(){var e=this.$createElement,t=this._self._c||e;return t("section",{staticClass:"app-main"},[t("transition",{attrs:{name:"fade-transform",mode:"out-in"}},[t("keep-alive",{attrs:{include:this.cacheViews}},[t("router-view")],1)],1)],1)},[],!1,null,"7d0fa904",null));Z.options.__file="AppMain.vue";var Y=Z.exports,ee=n("Q2AE"),te=document.body,ne={name:"Layout",components:{Navbar:I,Sidebar:G,AppMain:Y},watch:{$route:{handler:function(e,t){"realTimeLog"!=e.name&&"deviceInfo"!=e.name&&Object(E.a)("deviceInfo"),"helpCenter"!=e.name&&"helpCenterEdit"!=e.name&&Object(E.a)("helpCenterDetail"),this.addCachedView(e)},immediate:!0}},mixins:[{watch:{$route:function(e){"mobile"===this.device&&this.sidebar.opened&&ee.a.dispatch("CloseSideBar",{withoutAnimation:!1})}},beforeMount:function(){window.addEventListener("resize",this.resizeHandler)},mounted:function(){this.isMobile()&&(ee.a.dispatch("ToggleDevice","mobile"),ee.a.dispatch("CloseSideBar",{withoutAnimation:!0}))},methods:{isMobile:function(){return te.getBoundingClientRect().width-3<1024},resizeHandler:function(){if(!document.hidden){var e=this.isMobile();ee.a.dispatch("ToggleDevice",e?"mobile":"desktop"),e&&ee.a.dispatch("CloseSideBar",{withoutAnimation:!0})}}}}],computed:{sidebar:function(){return this.$store.state.app.sidebar},device:function(){return this.$store.state.app.device},classObj:function(){return{hideSidebar:!this.sidebar.opened,openSidebar:this.sidebar.opened,withoutAnimation:this.sidebar.withoutAnimation,mobile:"mobile"===this.device}}},methods:g()({},Object(F.b)(["addCachedView"]),{handleClickOutside:function(){this.$store.dispatch("CloseSideBar",{withoutAnimation:!1})}})},ie=(n("8q53"),Object(p.a)(ne,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"app-wrapper",class:e.classObj},["mobile"===e.device&&e.sidebar.opened?n("div",{staticClass:"drawer-bg",on:{click:e.handleClickOutside}}):e._e(),e._v(" "),n("sidebar",{staticClass:"sidebar-container"}),e._v(" "),n("div",{staticClass:"main-container"},[n("navbar"),e._v(" "),n("app-main")],1)],1)},[],!1,null,"11b67c86",null));ie.options.__file="Layout.vue";var re=ie.exports;a.default.use(b.a);var oe=[{path:"/login",component:function(){return n.e("chunk-306e").then(n.bind(null,"3Xui"))},hidden:!0},{path:"/aj/**",component:function(){return n.e("chunk-2592").then(n.bind(null,"TiKq"))},hidden:!0},{path:"/index",component:re,name:"index",meta:{title:"首页",icon:"iconhome2"},children:[{path:"",component:function(){return n.e("chunk-a4f3").then(n.bind(null,"er4n"))},meta:{title:"首页",icon:"iconhome2",keepAlive:!0,requireAuth:!0}}]},{path:"/report",name:"report",component:re,meta:{title:"报表设计",icon:"iconnavicon-ywcs",requireAuth:!0,permission:"datasourceManage|resultsetManage|reportManage|bigScreenManage"},children:[{path:"datasource",name:"datasource",component:function(){return n.e("chunk-191b").then(n.bind(null,"ZjmF"))},meta:{title:"数据源",icon:"icondatabase",keepAlive:!0,requireAuth:!0,permission:"datasourceManage"}},{path:"resultset",name:"resultset",component:function(){return Promise.all([n.e("chunk-f259"),n.e("chunk-dd63"),n.e("chunk-943b")]).then(n.bind(null,"Zzv2"))},meta:{title:"数据集",icon:"iconAPIwangguan",keepAlive:!0,requireAuth:!0,permission:"resultsetManage"}},{path:"report",name:"reportIndex",component:function(){return n.e("chunk-7a76").then(n.bind(null,"0MlO"))},meta:{title:"报表管理",icon:"iconnavicon-ywcs",keepAlive:!0,requireAuth:!0,permission:"reportManage"}},{path:"bigscreen",name:"bigscreen",component:function(){return n.e("chunk-690c").then(n.bind(null,"b//P"))},meta:{title:"大屏报表",icon:"iconchufaqipeizhi-hui",keepAlive:!0,requireAuth:!0,permission:"bigScreenManage"}}]},{path:"/system",name:"system",component:re,meta:{title:"系统设置",icon:"iconshezhi",requireAuth:!0,permission:"fileManage|dictManage|dictItemManage"},children:[{path:"file",name:"file",component:function(){return n.e("chunk-0f7e").then(n.bind(null,"lAHl"))},meta:{title:"文件管理",icon:"iconfill_folder",keepAlive:!0,requireAuth:!0,permission:"fileManage"}},{path:"dict",name:"dict",component:function(){return n.e("MiWS").then(n.bind(null,"MiWS"))},meta:{title:"数据字典",icon:"iconzidian",keepAlive:!0,requireAuth:!0,permission:"dictManage"}},{path:"dictItem",name:"dictItem",component:function(){return n.e("gJ75").then(n.bind(null,"gJ75"))},hidden:!0,meta:{title:"字典项",icon:"iconzidianxiang",keepAlive:!0,requireAuth:!0,permission:"dictItemManage"}}]},{path:"/bigscreen/viewer",component:function(){return Promise.all([n.e("chunk-6b46"),n.e("chunk-293b")]).then(n.bind(null,"OnRN"))},hidden:!0,meta:{requireAuth:!0}},{path:"/bigscreen/designer",component:function(){return Promise.all([n.e("chunk-f259"),n.e("chunk-f079"),n.e("chunk-6b46"),n.e("chunk-25ff"),n.e("chunk-5ad2")]).then(n.bind(null,"VZcz"))},hidden:!0,meta:{requireAuth:!0}},{path:"/excelreport/viewer",component:function(){return n.e("chunk-5309").then(n.bind(null,"+N4U"))},hidden:!0,meta:{requireAuth:!0}},{path:"/excelreport/designer",component:function(){return Promise.all([n.e("chunk-f079"),n.e("chunk-c4fe")]).then(n.bind(null,"Xvat"))},hidden:!0,meta:{requireAuth:!0}},{path:"/404",component:function(){return n.e("chunk-fd33").then(n.bind(null,"jNvO"))},hidden:!0},{path:"*",redirect:"/index",hidden:!0}],ae=new b.a({scrollBehavior:function(){return{y:0}},routes:oe});function le(e,t){if(void 0===e||null===e)return"";if(void 0===t||null===t)return e;for(var n=Object(E.b)("queryForCodeSelect")[t],i=e,r=0;rr?1:0}},getObjectType:function(e){var t=Object.prototype.toString;return e instanceof Element?"element":{"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regExp","[object Undefined]":"undefined","[object Null]":"null","[object Object]":"object"}[t.call(e)]},isNumber:function(e){return"number"==this.getObjectType(e)},isString:function(e){return"string"==this.getObjectType(e)},isArray:function(e){return"array"==this.getObjectType(e)},hasOwn:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},isNotBlank:function(e){return!this.isBlank(e)}},be()(fe,"isBlank",function(e){if(this.isNull(e))return!0;if("string"==typeof e)return""==e.trim();if("object"===(void 0===e?"undefined":Se()(e))){for(var t in e)return!1;return!0}return!1}),be()(fe,"isNotNull",function(e){return!this.isNull(e)}),be()(fe,"isNull",function(e){if(e&&0===parseInt(e))return!1;if(e instanceof Date||"boolean"==typeof e||"number"==typeof e)return!1;if(!(e instanceof Array)){if(e instanceof Object){for(var t in e=this.deepClone(e),["$parent"].forEach(function(t){delete e[t]}),e)return!1;return!0}return"null"===e||null==e||"undefined"===e||void 0===e||""===e}return 0===e.length}),be()(fe,"deepClone",function(e){var t=this,n=this.getObjectType(e),i=void 0;if("array"===n)i=[];else{if("object"!==n)return e;i={}}if("array"===n)for(var r=function(n,r){e[n]=(e[n],e[n]),e[n]&&delete e[n].$parent,i.push(t.deepClone(e[n]))},o=0,a=e.length;o=0?n[i]=e[i]:n[i]=this.urlEncode(e[i]));return n}),be()(fe,"getDictItemByCode",function(e,t){var n=Object(E.b)("gaeaDict");if(!n.hasOwnProperty(e))return null;for(var i=n[e],r=0;r0&&(this.option,this.label),this.url):null!=this.dictCode&&""!=this.dictCode.trim()?"/meta/gaeaDict/select/"+this.dictCode:null}},watch:{dictCode:function(e){e&&this.queryData()},localOptions:function(e){this.options=e},value:{handler:function(e){"string"==typeof e&&null!=this.url&&""!=this.url.trim()&&this.remoteQuery(e),null!=this.multiple?this.value?this.selectValue=this.value:this.selectValue=[]:null!=this.value&&void 0!=this.value?this.selectValue=this.value+"":this.selectValue=""},immediate:!0},url:function(){var e=this;setTimeout(function(){e.queryData()},500)}},created:function(){null!=this.multiple?this.selectValue=this.value:null!=this.value&&(this.selectValue=this.value+"")},mounted:function(){null!=this.requestUrl?this.queryData():this.options=this.localOptions},methods:{isDisabledOption:function(e){if(null==e||null==this.disabledOptions||0==this.disabledOptions.length)return!1;var t=e[this.option];return this.disabledOptions.indexOf(t)>=0},change:function(e){var t=this;""===e&&(e=""),this.$emit("input",e);var n=this.options.find(function(n){return n[t.option]==e});this.$emit("change",e,n)},getItemLabel:function(e,t){if(t.indexOf("${")<0&&t.indexOf(!1))return e[t];for(var n=t.match(/\$\{[a-zA-Z0-9]*\}/g),i=t,r=0;r=1?n("el-option",{attrs:{value:"",disabled:""}},[e._v("输入关键词搜索更多")]):e._e()],2)],1)},[],!1,null,"b32efa94",null));Me.options.__file="anji-select.vue";var Ue=Me.exports,Le={props:{upLoadUrl:{type:String,default:function(){return""}},viewUrl:{type:String,default:function(){return""}},limit:{type:Number,default:function(){return 3}},value:{type:Array,default:function(){return[]}},uploadType:{type:String,default:function(){return"img"}}},data:function(){return{imageUploadUrl:"",dialogVisibleImageUpload:!1,fileList:[],modeString:""}},computed:{requestUrl:function(){return null!=this.upLoadUrl&&""!=this.upLoadUrl.trim()?Object({NODE_ENV:"production",BASE_API:"./"}).VUE_APP_BASE_API+this.upLoadUrl:Object({NODE_ENV:"production",BASE_API:"./"}).VUE_APP_BASE_API+"/meta/file/upload"},headers:function(){return{}}},watch:{value:{handler:function(e){this.echoUpload(e)},immediate:!0}},mounted:function(){},methods:{typeImgShow:function(e){if(e.fileType){var t=e.fileType.toLowerCase();return"jpg"==t||"png"==t||"gif"==t||"icon"==t}},typePdfShow:function(e){if(e.fileType)return"pdf"==e.fileType.toLowerCase()},typeExcelShow:function(e){if(e.fileType){var t=e.fileType.toLowerCase();return"xlsx"==t||"xls"==t||"csv"==t}},handleRemove:function(e){var t=[];this.fileList.forEach(function(n){n.fileId!=e.fileId&&t.push(n)}),this.fileList=t,this.change()},handlePictureCardPreview:function(e){this.imageUploadUrl=e.url,this.dialogVisibleImageUpload=!0},handleDownload:function(e){window.open(e.url)},handleSuccess:function(e,t,n){console.log(n),200==e.code?(this.fileList.push({url:t.response.data.urlPath,fileId:t.response.data.fileId,fileType:t.response.data.fileType}),this.change()):this.$message.error("上传失败")},change:function(){var e=this.fileList;this.$emit("input",e),this.$emit("change",e)},handleBeforeUpload:function(e){var t=e.name.split(".")[e.name.split(".").length-1].toLowerCase();return!(["png","jpg","gif","icon","pdf","xlsx","xls","csv","mp4","avi"].indexOf(t)<0)||(this.$message.warning("请上传正确的格式文件"),!1)},echoUpload:function(e){var t=this;if(e&&e.length>0){for(var n=[],i=0;i=e.limit?"hide_box":"",attrs:{headers:e.headers,limit:e.limit,action:e.requestUrl,"list-type":"picture-card","file-list":e.fileList,"on-preview":e.handlePictureCardPreview,"on-remove":e.handleRemove,"on-success":e.handleSuccess,"show-file-list":!0,"before-upload":e.handleBeforeUpload},scopedSlots:e._u([{key:"file",fn:function(t){var i=t.file;return n("div",{staticClass:"imgBox"},[e.typeImgShow(i)?n("img",{staticClass:"el-upload-list__item-thumbnail",attrs:{src:i.url,alt:""}}):e.typePdfShow(i)?n("svg-icon",{staticClass:"iconFont",attrs:{"icon-class":"PDF"}}):e.typeExcelShow(i)?n("svg-icon",{staticClass:"iconFont",attrs:{"icon-class":"Excel"}}):e._e(),e._v(" "),n("span",{staticClass:"el-upload-list__item-actions"},[e.typeImgShow(i)?n("span",{staticClass:"el-upload-list__item-preview",on:{click:function(t){return e.handlePictureCardPreview(i)}}},[n("i",{staticClass:"el-icon-zoom-in"})]):e._e(),e._v(" "),n("span",{staticClass:"el-upload-list__item-delete",on:{click:function(t){return e.handleDownload(i)}}},[n("i",{staticClass:"el-icon-download"})]),e._v(" "),n("span",{staticClass:"el-upload-list__item-delete",on:{click:function(t){return e.handleRemove(i)}}},[n("i",{staticClass:"el-icon-delete"})])])],1)}}])},[n("i",{staticClass:"el-icon-plus",attrs:{slot:"default"},slot:"default"})]),e._v(" "),n("el-dialog",{attrs:{visible:e.dialogVisibleImageUpload,modal:!1},on:{"update:visible":function(t){e.dialogVisibleImageUpload=t}}},[n("img",{attrs:{width:"100%",src:e.imageUploadUrl,alt:""}})])],1)},[],!1,null,"94cf27d6",null));Ve.options.__file="anji-upload.vue";var ze=Ve.exports,Qe=n("OLzz"),He=n.n(Qe);n("cOfl");ae.beforeEach(function(e,t,n){He.a.start(),n()}),ae.afterEach(function(){He.a.done()});var Je={inserted:function(e,t,n){var i=t.value;0==Object(pe.g)(i)&&e.parentNode&&e.parentNode.removeChild(e)}},We=function(e){e.directive("permission",Je)};window.Vue&&(window.permission=Je,Vue.use(We)),Je.install=We;var Ke=Je,Ge=n("WnWJ"),Xe=n.n(Ge);n("up9U");a.default.component("v-chart",$e.a),a.default.component("anji-upload",ze),a.default.component("anji-crud",Ie.default),a.default.component("anji-select",Ue),a.default.use(Ke),a.default.use(Xe.a),a.default.use(s.a,{zhLocale:c.a}),o()(i).forEach(function(e){a.default.filter(e,i[e])}),a.default.mixin(Ae),a.default.prototype.$pageSizeAll=[10,50,100,200,500],a.default.config.productionTip=!1,new a.default({el:"#app",router:ae,store:ee.a,render:function(e){return e(m)}})},X4fA:function(e,t,n){"use strict";n.d(t,"f",function(){return l}),n.d(t,"e",function(){return s}),n.d(t,"j",function(){return u}),n.d(t,"i",function(){return c}),n.d(t,"c",function(){return d}),n.d(t,"b",function(){return f}),n.d(t,"d",function(){return p}),n.d(t,"h",function(){return h}),n.d(t,"a",function(){return m}),n.d(t,"g",function(){return b});var i=n("XS0u"),r="token",o="shareToken",a="gaeaUser";function l(){return Object(i.b)(r)}function s(){return null==Object(i.b)(o)?"":Object(i.b)(o)}function u(e){return Object(i.c)(r,e)}function c(e){return Object(i.c)(o,e)}function d(){return Object(i.a)(r)}function f(){return Object(i.a)(o)}function p(){return Object(i.b)(a)}function h(e){return Object(i.c)(a,e)}function m(){return Object(i.a)(a)}function b(e){return!0}},XS0u:function(e,t,n){"use strict";n.d(t,"c",function(){return l}),n.d(t,"b",function(){return s}),n.d(t,"a",function(){return u});var i=n("omC7"),r=n.n(i),o=n("Q2cO"),a=n.n(o);n("jJIE");function l(e,t){if(void 0!==t&&null!=t){var n=t;"object"==(void 0===t?"undefined":a()(t))&&(n=r()(t)),localStorage.setItem(e,n)}}function s(e){var t=localStorage.getItem(e);try{return JSON.parse(t)}catch(e){return t}}function u(e){localStorage.removeItem(e)}},"ZU+s":function(e,t,n){},ZXUr:function(e,t,n){"use strict";var i=n("Itw0");n.n(i).a},aGE4:function(e,t,n){},"ba/L":function(e,t,n){"use strict";n.d(t,"e",function(){return u}),n.d(t,"b",function(){return c}),n.d(t,"f",function(){return d}),n.d(t,"a",function(){return f}),n.d(t,"d",function(){return p}),n.d(t,"c",function(){return h});var i=n("Asgo"),r=n.n(i),o=n("t3Un"),a=n("X4fA"),l=n("f0Pt"),s=n.n(l);function u(e){return Object(o.a)({url:"reportDashboard",method:"post",data:e})}function c(e){return Object(o.a)({url:"reportDashboard/"+e,headers:{"Share-Token":Object(a.e)(),Authorization:Object(a.f)()},method:"get"})}function d(e){return Object(o.a)({url:"dataSet/queryAllDataSet",method:"get"})}function f(e){return Object(o.a)({url:"dataSet/detailBysetId/"+e,method:"get"})}function p(e){return Object(o.a)({url:"reportDashboard/getData",method:"post",headers:{"Share-Token":Object(a.e)(),Authorization:Object(a.f)()},data:e})}function h(e){return new r.a(function(t){s()({method:"get",url:".//reportDashboard/export",headers:{Authorization:Object(a.f)()},params:e,responseType:"blob"}).then(function(e){t(e.data)}).catch(function(e){t("error")})})}},dVUk:function(e,t,n){"use strict";n.d(t,"a",function(){return r}),n.d(t,"b",function(){return o}),n.d(t,"c",function(){return a});var i=n("t3Un");function r(e){return Object(i.a)({url:"accessUser/login",method:"post",data:e})}function o(){return Object(i.a)({url:"accessUser/logout",method:"post"})}function a(e){return Object(i.a)({url:"/accessUser/updatePassword",method:"post",data:e})}},fcOe:function(e,t,n){},gaEW:function(e,t,n){},hk9y:function(e,t,n){},lnxG:function(e,t,n){},oveC:function(e,t,n){},rQpy:function(e,t,n){"use strict";var i=n("UbsL");n.n(i).a},sYqA:function(e,t,n){"use strict";n.r(t);var i=n("cLjf"),r=n.n(i),o=n("hDQ3"),a=n.n(o),l=n("t3Un"),s={components:{},props:{url:{type:[String],default:function(){return""}},id:{type:[String],default:function(){return"id"}},label:{type:[String],default:function(){return""}},value:{type:[String],default:function(){return""}},labelName:String,enableFilter:Boolean,isOpen:Boolean},data:function(){return{filterText:"",treeData:[]}},computed:{},watch:{filterText:function(e){this.$refs.table_tree.filter(e)}},mounted:function(){this.queryData()},methods:{filterNode:function(e,t){return!e||-1!==t.label.indexOf(e)},queryData:function(){var e=this;this.isBlank(this.url)||Object(l.a)({url:this.url,method:"GET"}).then(function(t){"200"==t.code&&(e.treeData="[object Array]"==Object.prototype.toString.call(t.data)?t.data:t.data.tree||t.data.menuTree)})},nodeClick:function(e){this.$emit("input",e.id),this.$emit("node-click",e.id)},checkedEvent:function(e,t){var n=t.checkedKeys.toString();this.$emit("input",n)}}},u=(n("RXVF"),n("ZrdR")),c=Object(u.a)(s,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[e.enableFilter?n("el-input",{staticClass:"filterInput",attrs:{placeholder:"搜索"},model:{value:e.filterText,callback:function(t){e.filterText=t},expression:"filterText"}}):e._e(),e._v(" "),n("div",{staticClass:"title"},[e._v(e._s(e.labelName))]),e._v(" "),n("el-tree",{ref:"table_tree",attrs:{data:e.treeData,"node-key":"id","default-expand-all":e.isOpen,"expand-on-click-node":!1,"filter-node-method":e.filterNode},on:{"node-click":e.nodeClick,check:e.checkedEvent}})],1)},[],!1,null,"0b9e713f",null);c.options.__file="anji-tree.vue";var d=c.exports,f=n("Q2cO"),p=n.n(f),h=n("omC7"),m=n.n(h),b={components:{},props:{modelType:String,showDialog:Boolean,option:{type:[Object],default:function(){return{title:"",labelWidth:"",queryFormFields:[],buttons:{query:{},edit:{},delete:{},add:{}},columns:[],formChange:function(e,t,n,i){}}}},relateData:{type:[Object],default:function(){return{}}},value:{type:[Object],default:function(){return{}}}},data:function(){return{cardRowColNum:this.option.rowColForm||2,editForm:{}}},computed:{primaryKeyFieldName:function(){var e=this.option.columns.find(function(e){return 1==e.primaryKey});return null!=e?e.field:null},joinColumn:function(){var e=this.option.joinColumn;return this.isBlank(e)&&(console.warn("在joinEntity中查找joinColumn属性失败,会导致查询详情和删除失败"),e=""),e},formFields:function(){var e=this;if(null==this.option.columns)return[];var t=this.deepClone(this.option.columns);return t=t.map(function(t){return e.isBlank(t.editField)&&(t.editField=t.field),e.isBlank(t.group)&&(t.group="其它"),t})},cardRowColSpan:function(){return 24/this.cardRowColNum},columnGroups:function(){return this.isBlank(this.formFields)?[]:this.formFields.map(function(e){return e.group}).filter(function(e,t,n){return n.indexOf(e)==t})},groupFormFields:function(){if(this.showDialog){var e={};return this.columnGroups.forEach(function(t,n,i){e[t]=[]}),this.formFields.forEach(function(t,n,i){e[t.group].push(t)}),e}return[]},groupModel:function(){return this.columnGroups.length>1}},created:function(){this.$watch(function(){return this.value},function(e,t){this.editForm=e,this.formChange()}),this.$watch(function(){return this.relateData[this.joinColumn]},function(e,t){if(this.isBlank(this.relateData))return this.cardRowColNum=2,void(this.editForm={});this.isNotBlank(e)&&this.queryDetail()})},mounted:function(){this.isNotBlank(this.value)&&(this.editForm=this.value,this.formChange()),this.isNotBlank(this.relateData)&&this.isNotBlank(this.relateData[this.joinColumn])&&this.queryDetail()},methods:{fieldIsHide:function(e){if("boolean"==typeof e)return e;if("string"==typeof e){if("add"==this.modelType)return e.indexOf("hideOnAdd")>=0;if("view"==this.modelType)return e.indexOf("hideOnView")>=0;if("edit"==this.modelType)return e.indexOf("hideOnEdit")>=0}return!1},fieldIsDisable:function(e){if("boolean"==typeof e)return e;if("string"==typeof e){if("add"==this.modelType)return e.indexOf("disableOnAdd")>=0;if("view"==this.modelType)return e.indexOf("disableOnView")>=0;if("edit"==this.modelType)return e.indexOf("disableOnEdit")>=0}return!1},handleSetRowColNum:function(e){this.cardRowColNum=e,this.$emit("changeRowColNum",e)},queryDetail:function(){var e=this;return a()(r.a.mark(function t(){var n,i,o;return r.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.relateData,t.next=3,e.option.buttons.queryByPrimarykey.api(n);case 3:if(i=t.sent,o=i.data,"200"==i.code){t.next=8;break}return t.abrupt("return");case 8:e.editForm=o,e.formChange();case 10:case"end":return t.stop()}},t,e)}))()},validate:function(e){var t=this;this.$refs.editForm.validate(function(){var n=a()(r.a.mark(function n(i,o){return r.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:null!=e&&e(i);case 1:case"end":return t.stop()}},n,t)}));return function(e,t){return n.apply(this,arguments)}}())},handleSave:function(e){var t=this;this.$refs.editForm.validate(function(){var n=a()(r.a.mark(function n(i,o){var a,l,s,u,c,d;return r.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!i){n.next=20;break}if("add"!=t.modelType){n.next=11;break}return"function"==typeof t.option.beforeInsert&&t.option.beforeInsert(t.relateData,t.editForm),n.next=5,t.option.buttons.add.api(t.editForm);case 5:a=n.sent,l=a.code,s=a.message,"200"==l?null!=e&&e():console.log("提交表单调用新增接口失败:"+s),n.next=18;break;case 11:return"function"==typeof t.option.beforeUpdate&&t.option.beforeUpdate(t.relateData,t.editForm),n.next=14,t.option.buttons.edit.api(t.editForm);case 14:u=n.sent,c=u.code,d=u.message,"200"==c?null!=e&&e():console.log("提交表单调用更新接口失败:"+d);case 18:n.next=21;break;case 20:console.log("表单校验失败");case 21:case"end":return n.stop()}},n,t)}));return function(e,t){return n.apply(this,arguments)}}())},formChange:function(e,t,n){this.$emit("input",this.editForm),"function"==typeof this.option.formChange&&this.option.formChange(this.editForm,e,t,n)}}},v=(n("wTyl"),Object(u.a)(b,function(){var e=this,t=e.$createElement,n=e._self._c||t;return null==e.option.hide||0==e.option.hide?n("div",{staticClass:"anji-card"},[n("div",{staticClass:"card-head"},[e._v("\n "+e._s(e.option.title)+"\n "),n("div",{staticClass:"main-card-header-button"},[n("el-button",{attrs:{type:"text"},on:{click:function(t){return e.handleSetRowColNum(4)}}},[e._v("||||")]),e._v(" "),n("el-button",{attrs:{type:"text"},on:{click:function(t){return e.handleSetRowColNum(3)}}},[e._v("|||")]),e._v(" "),n("el-button",{attrs:{type:"text"},on:{click:function(t){return e.handleSetRowColNum(2)}}},[e._v("||")])],1)]),e._v(" "),n("div",{staticClass:"card-body"},[n("el-form",{ref:"editForm",attrs:{model:e.editForm,"label-width":e.option.labelWidth||"100px"}},[e._l(e.columnGroups,function(t){return[e.groupModel?n("el-divider",{key:t,attrs:{"content-position":"left"}},[e._v(e._s(t))]):e._e(),e._v(" "),n("el-row",{key:t,staticClass:"form_table"},[e._l(e.groupFormFields[t],function(t){return[0==e.fieldIsHide(t.editHide)?n("el-col",{key:t.editField,attrs:{span:null==t.rowColSpan?e.cardRowColSpan:t.rowColSpan}},[n("el-form-item",{attrs:{label:t.label,rules:t.rules,prop:t.editField,disabled:t.disabled}},[""!=t.tips&&null!=t.tips?n("span",{staticClass:"input_tips",style:{"margin-left":"-13px"}},[n("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:t.tips,placement:"top-start"}},[n("svg-icon",{attrs:{"icon-class":"tishi-yiwen"}})],1)],1):e._e(),e._v(" "),"input"==t.inputType?n("el-input",{attrs:{placeholder:t.placeholder||"请输入",clearable:!1!==t.clearable,disabled:e.fieldIsDisable(t.disabled)},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"switch"==t.inputType?n("el-switch",{attrs:{disabled:e.fieldIsDisable(t.disabled),"active-value":1,"inactive-value":0,"inactive-color":"#ccc","active-color":"#5887fb"},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"input-number"==t.inputType?n("el-input-number",{attrs:{min:t.inputNumberOption.min,max:t.inputNumberOption.max,placeholder:t.placeholder||"请输入",clearable:!1!==t.clearable,disabled:e.fieldIsDisable(t.disabled)},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-input"==t.inputType?n("anji-input",{attrs:{unit:t.anjiInput.unit,"default-unit":t.anjiInput.defaultUnit,placeholder:t.placeholder||"请输入",clearable:!1!==t.clearable,disabled:e.fieldIsDisable(t.disabled)},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-select"==t.inputType?n("anji-select",{attrs:{"allow-create":t.anjiSelectOption.allowCreate,multiple:t.anjiSelectOption.multiple,disabled:e.fieldIsDisable(t.disabled),"dict-code":t.anjiSelectOption.dictCode,placeholder:t.placeholder,url:t.anjiSelectOption.url,method:t.anjiSelectOption.method,"query-param":t.anjiSelectOption.queryParam,"merge-label":t.anjiSelectOption.mergeLabel,option:t.anjiSelectOption.option,label:t.anjiSelectOption.label,"remote-filter":t.anjiSelectOption.remoteFilter,"disabled-options":t.anjiSelectOption.disabledOptions,"select-keyword":t.anjiSelectOption.selectKeyword},on:{change:function(n,i){return e.formChange(t.editField,n,i)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):t.inputType.indexOf("date")>=0?n("el-date-picker",{staticStyle:{width:"100%"},attrs:{placeholder:t.placeholder||"请选择",type:t.inputType,format:t.format,"value-format":t.valueFormat,disabled:e.fieldIsDisable(t.disabled),clearable:!1!==t.clearable},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,n)},expression:"editForm[item.editField]"}}):"checkbox"==t.inputType?n("anji-checkbox",{attrs:{"dict-code":t.anjiCheckbox.dictCode,url:t.anjiCheckbox.url,label:t.anjiCheckbox.label,disabled:e.fieldIsDisable(t.disabled)},on:{change:function(n,i){return e.formChange(t.editField,n,i)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-cascader"==t.inputType?n("anji-cascader",{attrs:{disabled:e.fieldIsDisable(t.disabled),"single-display":t.anjiCascader.singleDisplay,url:t.anjiCascader.url},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-upload"==t.inputType?n("anji-upload",{attrs:{"up-load-url":t.anjiUpload.upLoadUrl,"view-url":t.anjiUpload.viewUrl,"upload-type":t.anjiUpload.uploadType,limit:t.anjiUpload.limit},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-autocomplete"==t.inputType?n("anji-autocomplete",{attrs:{disabled:e.fieldIsDisable(t.disabled),label:t.anjiAutocomplete.label,option:t.anjiAutocomplete.option,"appoint-value":t.anjiAutocomplete.appointValue,url:t.anjiAutocomplete.url},on:{change:function(n,i){return e.formChange(t.editField,n,i)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"textarea"==t.inputType?n("el-input",{attrs:{placeholder:t.placeholder||"请输入",clearable:!1!==t.clearable,disabled:e.fieldIsDisable(t.disabled),type:"textarea",rows:2},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-country"==t.inputType?n("anji-fourlevel",{on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):n("el-input",{attrs:{placeholder:"组件不支持此类型表单请至组件内部自行扩展",disabled:""}})],1)],1):e._e()]})],2)]})],2)],1)]):e._e()},[],!1,null,"36f1f9f6",null));v.options.__file="edit-form.vue";var g=v.exports,y={components:{},props:{modelType:String,option:{type:[Object],default:function(){return{title:"",labelWidth:"",queryFormFields:[],buttons:{query:{},edit:{},delete:{},add:{}},columns:[]}}},relateData:{type:[Object],default:function(){return{}}},value:{type:[Array],default:function(){return[]}},valueNew:{type:[Array],default:function(){return[]}}},data:function(){return{checkRecords:[],form:{records:[],total:0},saveButtonStatus:[],rowIdList:[]}},computed:{primaryKeyFieldName:function(){var e=this.option.columns.find(function(e){return 1==e.primaryKey});return null!=e?e.field:null},joinColumn:function(){var e=this.option.joinColumn;return this.isBlank(e)&&(console.warn("在columns中查找关联字段失败,会导致查询详情和删除失败,孙子关联表忽略该错误"),e=""),e},formRecordsUndelete:function(){return null==this.form.records?[]:this.form.records.filter(function(e){return null==e.deletedFlag||0==e.deletedFlag})}},watch:{},created:function(){this.isNotBlank(this.joinColumn)&&this.$watch(function(){return this.relateData[this.joinColumn]},function(e,t){this.isNotBlank(e)?this.handleQueryPageList(e):(this.checkRecords=[],this.form.records=[],this.form.total=0,this.saveButtonStatus=[])})},mounted:function(){this.isNotBlank(this.relateData)&&this.isNotBlank(this.relateData[this.joinColumn])&&this.handleQueryPageList()},methods:{fieldIsHide:function(e){if("boolean"==typeof e)return e;if("string"==typeof e){if("add"==this.modelType)return e.indexOf("hideOnAdd")>=0;if("view"==this.modelType)return e.indexOf("hideOnView")>=0;if("edit"==this.modelType)return e.indexOf("hideOnEdit")>=0}return!1},getRowEditButton:function(e){return"inEditing"==this.saveButtonStatus[e]?"btn_savetemp":"inAdding"==this.saveButtonStatus[e]?"btn_savetemp":"inShow"==this.saveButtonStatus[e]?"btn_edit":"not_permission"},tableRowClassAdapter:function(e){var t=e.row,n=e.rowIndex;t.index=n},handleQueryPageList:function(e){var t=this;return a()(r.a.mark(function n(){var i;return r.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:t.isBlank(e)&&(e=t.relateData[t.joinColumn]),(i={})[t.joinColumn]=e,t.queryPageList(i);case 4:case"end":return n.stop()}},n,t)}))()},queryPageList:function(e){var t=this;return a()(r.a.mark(function n(){var i,o,a;return r.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return t.isNotBlank(t.option.buttons.query.order)&&(e.sort=t.option.buttons.query.sort,e.order=t.option.buttons.query.order),n.next=3,t.option.buttons.query.api(e);case 3:if(i=n.sent,o=i.data,"200"==i.code){n.next=8;break}return n.abrupt("return");case 8:for(t.form.records=o.records,t.form.total=o.total,t.$emit("input",t.form.records),a=0;a=0?n("el-date-picker",{staticStyle:{width:"100%"},attrs:{placeholder:t.placeholder||"请选择",type:t.inputType,clearable:!1!==t.clearable,disabled:"inShow"==e.saveButtonStatus[i.$index]||t.disabled},on:{change:function(n){return e.tableRowChange(i.$index,t.field,n)}},model:{value:i.row[t.field],callback:function(n){e.$set(i.row,t.field,n)},expression:"scope.row[item.field]"}}):n("el-input",{attrs:{placeholder:"组件不支持此类型表单请至组件内部自行扩展",disabled:""}})],1)]}}],null,!0)}):e._e()]}),e._v(" "),n("el-table-column",{attrs:{fixed:"right",label:"操作",width:"100"},scopedSlots:e._u([{key:"default",fn:function(t){return[n("el-button",{attrs:{type:"text",size:"small"},on:{click:function(n){return e.handleAddOrUpdate(t.row,t.$index)}}},[e._v(e._s(e.getRowEditButton(t.$index)))]),e._v(" "),n("el-button",{attrs:{type:"text",size:"small"},on:{click:function(n){return e.handleDelete(t.row,t.$index)}}},[e._v("删除")])]}}],null,!1,1921872996)})],2)],1),e._v(" "),"view"!=e.modelType?n("button",{staticClass:"table-add-row-button",on:{click:e.handleAdd}},[n("i",{staticClass:"el-icon-plus"}),e._v(" "),n("span",[e._v("新增")])]):e._e()],1)]):e._e()},[],!1,null,"563fdf1c",null));w.options.__file="edit-table.vue";var C={name:"EditDialog",components:{EditForm:g,EditTable:w.exports},props:{visible:{type:[Boolean],default:function(){return!1}},rowData:{type:[Object],default:function(){return{}}},handleDetailData:{type:Function,default:function(e){return e}},submitDetailData:{type:Function,default:function(e,t){return e}},modelType:String,option:{require:!0,type:Object,default:function(){return{title:"",labelWidth:"",queryFormFields:[],buttons:{query:{},edit:{},delete:{},add:{}},columns:[]}}}},data:function(){return{showDialog:!1,dialogFullScreen:!1,cardRowColNum:2,saveForm:{},countForValidJoinForm:0}},computed:{dialogWidth:function(){return 2==this.cardRowColNum?"60%":3==this.cardRowColNum?"70%":4==this.cardRowColNum?"80%":"60%"},joinEntitys:function(){return this.isBlank(this.option.joinEntitys)?[]:this.option.joinEntitys},countJoinEntityOneToOne:function(){var e=this.joinEntitys.filter(function(e){return"OneToOne"==e.joinType});return null==e?0:e.length}},watch:{visible:function(e,t){this.showDialog=e,this.initDefaultSaveForm()},rowData:function(e,t){null!=e&&this.queryByPrimarykey(e)}},mounted:function(){this.initDefaultSaveForm()},methods:{getSaveForm:function(){return this.saveForm},setSaveForm:function(e){this.saveForm=e},initDefaultSaveForm:function(){var e=this,t={};this.option.columns.forEach(function(n){var i=n.editField;e.isBlank(i)&&(i=n.field);var r=n.defaultValue;e.isNotBlank(r)&&(t[i]=r)}),this.saveForm=this.deepClone(t),console.log("编辑框默认值:"+m()(this.saveForm))},handleCloseDialog:function(e){this.initDefaultSaveForm(),this.showDialog=!1,this.dialogFullScreen=!1,this.cardRowColNum=2,this.countForValidJoinForm=0,this.$emit("closeEvent",e)},handleTopCloseDialog:function(){this.initDefaultSaveForm(),this.showDialog=!1,this.dialogFullScreen=!1,this.cardRowColNum=2,this.countForValidJoinForm=0},handleSetRowColNum:function(e){this.cardRowColNum=e},getComponentByJoinType:function(e,t){return"OneToOne"==e?"EditForm":"OneToMany"==e?"EditTable":""},queryByPrimarykey:function(e){var t=this;return a()(r.a.mark(function n(){var i,o;return r.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,t.option.buttons.queryByPrimarykey.api(e);case 2:if(i=n.sent,o=i.data,"200"==i.code){n.next=7;break}return n.abrupt("return");case 7:t.showDialog=!0,t.saveForm=t.handleDetailData(o);case 9:case"end":return n.stop()}},n,t)}))()},handleValidateAndSave:function(){var e=this;this.countForValidJoinForm=0,this.$refs.mainForm.validate(function(t){if(0!=t)if(console.log("主表单校验完成"),null!=e.joinEntitys&&0!=e.joinEntitys.length)for(var n=function(t){console.log("开始校验子表单-"+t+" 校验");var n=e.joinEntitys[t];if(console.log(n),null!=e.$refs["joinForm"+t]&&1!=n.hide&&null!=e.saveForm[n.fieldNameInMainEntityOnSave]&&0!=e.saveForm[n.fieldNameInMainEntityOnSave].length)return e.checkedChildrenValidate(e.saveForm[n.fieldNameInMainEntityOnSave],n.columns)?(e.countForValidJoinForm++,console.log("已经校验的子表单:"+e.countForValidJoinForm+" 共:"+e.joinEntitys.length),e.countForValidJoinForm==e.joinEntitys.length&&(console.log("子表单校验完成,提交主表单"),e.handleSave()),"continue"):{v:void 0};console.warn("子表单校验失败");var i=e.$refs["joinForm"+t];"[object Array]"==toString.call(i)&&(i=i[0]),i.validate(function(n){n?(e.countForValidJoinForm++,console.log("已经校验的子表单:"+e.countForValidJoinForm+" 共:"+e.joinEntitys.length),e.countForValidJoinForm==e.joinEntitys.length&&(console.log("子表单校验完成,提交主表单"),e.handleSave())):console.warn("子表单"+t+"校验失败:")})},i=0;i0?e.forEach(function(e){t.records.forEach(function(t){e.id==t.id&&(t.dblClickFlag=!0,t.bgColor=!0)})}):this.records.forEach(function(e){e.dblClickFlag=!1,e.bgColor=!1}),this.isShowRowContextMenu=!1,this.checkRecords=e},handleSelectionDblclick:function(e){e.dblClickFlag=!e.dblClickFlag,e.bgColor=e.dblClickFlag,this.$refs.tables.toggleRowSelection(e,e.dblClickFlag)},rowContextMenu:function(e,t,n){var i=this;n.preventDefault(),this.option.contextMenu.forEach(function(e){"all"==e.flag?e.disabled=!(i.checkRecords.length>1):e.disabled=i.checkRecords.length>1}),this.contextMenuConfigStyle={left:n.clientX+"px",top:n.clientY+"px",display:"block"},this.contextMenuRow=e,this.isShowRowContextMenu=!0},handleContextMenuItem:function(e){"all"==e.flag?e.click({selection:this.checkRecords}):e.click({msg:this.contextMenuRow})},handleCurrentChange:function(e){this.queryParams.pageNumber=e,this.handleQueryPageList()},handleSizeChange:function(e){this.queryParams.pageNumber=1,this.queryParams.pageSize=e,this.handleQueryPageList()},fieldLabel:function(e){var t="",n=this.getSettingByName("unit_conversion"),i={};for(var r in n)e.anjiInput&&-1!=r.toLowerCase().indexOf(e.anjiInput.unit.toLowerCase())&&(i[r]=n[r]);for(var o in i)-1!=o.toLowerCase().indexOf("text")&&(t=i[o]);return null==e?"":"anji-input"==e.inputType&&null!=e.anjiInput?void 0==e.anjiInput.defaultUnit?e.label+"("+t+")":e.label+"("+e.anjiInput.defaultUnit+")":e.label},fieldValueByAnjiInput:function(e,t){var n=this.getSettingByName("unit_conversion"),i="",r="",o=[],a={};for(var l in n)t.anjiInput&&-1!=l.toLowerCase().indexOf(t.anjiInput.unit.toLowerCase())&&(a[l]=n[l]);for(var s in a)-1!=s.toLowerCase().indexOf("conversion")&&-1==s.toLowerCase().indexOf("conversiontext")&&-1==s.toLowerCase().indexOf("conversionradiogroup")&&(i=a[s]),-1!=s.toLowerCase().indexOf("keeppoint")&&(r=a[s]),Array.isArray(a[s])&&(o=a[s]);return null==t?e:"anji-input"!=t.inputType||null==t.anjiInput?e:void 0==t.anjiInput.defaultUnit?(e/i).toFixed(r||2):(e/o.find(function(e){return e.label==t.anjiInput.defaultUnit}).value).toFixed(r||2)},fieldValueByRowRenderer:function(e,t){return null==t||"function"!=typeof t.fieldTableRowRenderer?e[t.field]:t.fieldTableRowRenderer(e)},getMainEntity:function(){return this.$refs.edit.getSaveForm()},setMainEntity:function(e){this.$refs.edit.setSaveForm(e)},switchChange:function(e,t){var n=this;return a()(r.a.mark(function i(){return r.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:Object(l.a)({url:t.url,method:"put",headers:{noPrompt:!1},data:[e.id]}).then(function(e){n.handleQueryPageList()});case 1:case"end":return i.stop()}},i,n)}))()},queryFormChange:function(e,t){"function"==typeof this.option.queryFormChange&&this.option.queryFormChange(this.queryParams,e,t)},tableRowClassName:function(e){var t=e.row,n=e.rowIndex;return!t.urgentFlag&&!t.tableRow||t.bgColor?(t.urgentFlag||t.tableRow)&&t.bgColor?"warning-row bgColor":t.urgentFlag&&t.tableRow||!t.bgColor?(n+1)%2==0?"success-row":void 0:"bgColor":"warning-row"}}},j=(n("B3E3"),Object(u.a)(_,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{class:[e.hasTreeFieldInQueryForm?"page-container":"app-container"]},[e.hasTreeFieldInQueryForm?n("div",{staticClass:"left-container"},[n("AnjiTree",{ref:"queryFormTree",attrs:{"is-open":e.queryFormTreeField.anjiTreeOption.isOpen,"enable-filter":e.queryFormTreeField.anjiTreeOption.enableFilter,"label-name":e.queryFormTreeField.label,url:e.queryFormTreeField.anjiTreeOption.url},on:{"node-click":e.handleTreeNodeCheck},model:{value:e.queryParams[e.queryFormTreeField.field],callback:function(t){e.$set(e.queryParams,e.queryFormTreeField.field,"string"==typeof t?t.trim():t)},expression:"queryParams[queryFormTreeField.field]"}})],1):e._e(),e._v(" "),n("div",{staticClass:"right-container"},[n("div",{staticClass:"top_part"},[0==e.queryFormTreeHide?n("el-form",{ref:"formSearch",staticStyle:{"border-bottom":"1px solid #dbdde3","margin-bottom":"10px"},attrs:{model:e.queryParams,"label-width":"100px"}},[n("div",{staticClass:"screenFlex"},[n("div",{staticClass:"searchFormFlex"},[n("el-row",[e._l(e.queryFormFieldExcludeTree,function(t,i){return[i<3||e.queryParams.showMoreSearch?n("el-col",{key:t.field,attrs:{span:8}},[n("el-form-item",{attrs:{label:t.label,rules:t.rules,prop:t.field}},["input"==t.inputType||"input-number"==t.inputType?n("el-input",{attrs:{placeholder:t.placeholder||"请输入",clearable:!1!==t.clearable,disabled:t.disabled},on:{change:function(n){return e.queryFormChange(t.field,n)}},model:{value:e.queryParams[t.field],callback:function(n){e.$set(e.queryParams,t.field,"string"==typeof n?n.trim():n)},expression:"queryParams[item.field]"}}):"switch"==t.inputType?n("el-switch",{attrs:{disabled:t.disabled,"active-value":t.switchOption.disableValue,"inactive-value":t.switchOption.enableValue,"active-color":"#5887fb","inactive-color":"#ccc"},on:{change:function(n){return e.queryFormChange(t.field,n)}},model:{value:e.queryParams[t.field],callback:function(n){e.$set(e.queryParams,t.field,"string"==typeof n?n.trim():n)},expression:"queryParams[item.field]"}}):"anji-select"==t.inputType?n("anji-select",{attrs:{multiple:t.anjiSelectOption.multiple,"dict-code":t.anjiSelectOption.dictCode,url:t.anjiSelectOption.url,method:t.anjiSelectOption.method,"query-param":t.anjiSelectOption.queryParam,option:t.anjiSelectOption.option,label:t.anjiSelectOption.label,"disabled-options":t.anjiSelectOption.disabledOptions,disabled:t.disabled,"merge-label":t.anjiSelectOption.mergeLabel,"local-options":t.anjiSelectOption.localOptions},on:{change:function(n){return e.queryFormChange(t.field,n)}},model:{value:e.queryParams[t.field],callback:function(n){e.$set(e.queryParams,t.field,"string"==typeof n?n.trim():n)},expression:"queryParams[item.field]"}}):t.inputType.indexOf("date")>=0?n("el-date-picker",{staticStyle:{width:"100%"},attrs:{placeholder:t.placeholder||"请选择",type:t.inputType,format:t.format,"value-format":t.valueFormat,clearable:!1!==t.clearable},on:{change:function(n){return e.queryFormChange(t.field,n)}},model:{value:e.queryParams[t.field],callback:function(n){e.$set(e.queryParams,t.field,n)},expression:"queryParams[item.field]"}}):"anji-cascader"==t.inputType?n("anji-cascader",{attrs:{disabled:t.disabled,"single-display":t.anjiCascader.singleDisplay,url:t.anjiCascader.url},on:{change:function(n){return e.queryFormChange(t.field,n,null)}},model:{value:e.queryParams[t.field],callback:function(n){e.$set(e.queryParams,t.field,"string"==typeof n?n.trim():n)},expression:"queryParams[item.field]"}}):n("el-input",{attrs:{placeholder:"组件不支持此类型表单请至组件内部自行扩展",disabled:""}})],1)],1):e._e()]})],2)],1),e._v(" "),n("div",{staticClass:"screenButtons"},[e.queryFormFieldExcludeTree.length>3?n("el-button",{staticClass:"button",attrs:{size:"mini",plain:""},on:{click:e.handleToggleMoreSearch}},[n("i",{class:e.queryParams.showMoreSearch?"el-icon-arrow-up":"el-icon-arrow-down"}),e._v("\n "+e._s(1==e.queryParams.showMoreSearch?"展开":"收起")+"\n ")]):e._e(),e._v(" "),n("el-button",{staticClass:"button",attrs:{size:"mini",plain:""},on:{click:function(t){return e.handleResetForm()}}},[e._v("重置")]),e._v(" "),n("el-button",{staticClass:"button",attrs:{size:"mini",type:"primary"},on:{click:function(t){return e.handleQueryForm("query")}}},[e._v("查询")])],1)])]):e._e(),e._v(" "),n("div",{staticStyle:{"padding-bottom":"8px"}},[e._t("buttonLeftOnTable",null,{selection:e.checkRecords}),e._v(" "),void 0==e.option.buttons.add.isShow||e.option.buttons.add.isShow?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:e.option.buttons.add.permission,expression:"option.buttons.add.permission"}],staticClass:"button",attrs:{plain:"",icon:"el-icon-plus"},on:{click:function(t){return e.handleOpenEditView("add")}}},[e._v("新增")]):e._e(),e._v(" "),void 0==e.option.buttons.delete.isShow||e.option.buttons.delete.isShow?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:e.option.buttons.delete.permission,expression:"option.buttons.delete.permission"}],staticClass:"button",attrs:{plain:"",disabled:e.disableBatchDelete,type:"danger",icon:"el-icon-delete"},on:{click:function(t){return e.handleDeleteBatch()}}},[e._v("删除")]):e._e(),e._v(" "),e._t("buttonRightOnTable",null,{selection:e.checkRecords})],2)],1),e._v(" "),n("div",{staticClass:"main_part"},[n("div",{staticClass:"page_main"},[n("el-table",{ref:"tables",staticClass:"elTable",attrs:{align:"center",data:e.records,"row-class-name":e.tableRowClassName,border:""},on:{"selection-change":e.handleSelectionChange,"sort-change":e.handleSortChange,"row-dblclick":e.handleSelectionDblclick,"row-contextmenu":e.rowContextMenu}},[n("el-table-column",{attrs:{fixed:"",type:"selection",width:"50",align:"center"}}),e._v(" "),e.tableExpandColumns.length>0?n("el-table-column",{attrs:{type:"expand"},scopedSlots:e._u([{key:"default",fn:function(t){return e._l(e.tableExpandColumns,function(i){return n("p",{key:i.field,staticClass:"table-expand-item"},[n("span",{staticClass:"titel"},[e._v(" "+e._s(i.label)+": ")]),e._v(" "),n("span",[e._v(e._s(t.row[i.field]))])])})}}],null,!1,3354752618)}):e._e(),e._v(" "),n("el-table-column",{attrs:{label:"序号","min-width":"50",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[e._v("\n "+e._s(e.queryParams.pageSize*(e.queryParams.pageNumber-1)+t.$index+1)+"\n ")]}}])}),e._v(" "),e._l(e.option.columns,function(t,i){return[1!=t.tableHide&&"expand"!=t.columnType?n("el-table-column",{key:i,attrs:{prop:t.field,label:e.fieldLabel(t),"min-width":t.minWidth||110,sortable:t.sortable,"show-overflow-tooltip":!0,align:"center"},scopedSlots:e._u([{key:"default",fn:function(i){return["imgPreview"==t.columnType?n("div",[n("el-image",{staticStyle:{width:"25%",height:"50%"},attrs:{fit:"contain",src:i.row[t.field],"preview-src-list":[i.row[t.field]]}})],1):n("div",["switch"!=t.inputType||t.colorStyle?"anji-input"==t.inputType?n("span",[e._v(e._s(e.fieldValueByAnjiInput(i.row[t.field],t)))]):t.mergeColumn?n("span",[e._v(e._s(i.row[t.field])+"("+e._s(i.row[t.mergeColumn])+")")]):t.colorStyle?n("span",{class:t.colorStyle[i.row[t.editField]]},[e._v(e._s(e.fieldValueByRowRenderer(i.row,t)))]):n("span",[e._v(e._s(e.fieldValueByRowRenderer(i.row,t)))]):n("span",[n("el-switch",{attrs:{"active-value":1,"inactive-value":0,"active-color":"#5887fb","inactive-color":"#ccc"},on:{change:function(n){return e.switchChange(i.row,t.switchOption)}},model:{value:i.row[t.field],callback:function(n){e.$set(i.row,t.field,"string"==typeof n?n.trim():n)},expression:"scope.row[item.field]"}})],1)])]}}],null,!0)}):e._e()]}),e._v(" "),n("el-table-column",{attrs:{align:"center",fixed:"right",label:"操作",width:e.option.buttons.customButton&&e.option.buttons.customButton.operationWidth?e.option.buttons.customButton.operationWidth:100},scopedSlots:e._u([{key:"default",fn:function(t){return[e._t("rowButton",null,{msg:t.row}),e._v(" "),void 0==e.option.buttons.edit.isShow||e.option.buttons.edit.isShow?n("el-button",{attrs:{type:"text",size:"small"},on:{click:function(n){return e.handleOpenEditView("edit",t.row)}}},[e._v("编辑")]):e._e(),e._v(" "),0==e.hasCustomButtonInRowMore&&void 0==e.option.buttons.delete.isShow||e.option.buttons.edit.isShow?n("el-button",{attrs:{type:"text",size:"small"},on:{click:function(n){return e.handleDeleteBatch(t.row)}}},[e._v("删除")]):e._e(),e._v(" "),e.hasCustomButtonInRowMore?n("el-dropdown",{attrs:{trigger:"click"}},[n("span",{staticClass:"el-dropdown-link"},[e._v("更多"),n("i",{staticClass:"el-icon-caret-bottom el-icon--right"})]),e._v(" "),n("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[n("el-dropdown-item",{staticClass:"clearfix"},[e._t("rowButtonInMore",null,{msg:t.row}),e._v(" "),void 0==e.option.buttons.delete.isShow||e.option.buttons.edit.isShow?n("el-button",{attrs:{type:"text",size:"small"},on:{click:function(n){return e.handleDeleteBatch(t.row)}}},[e._v("删除")]):e._e()],2)],1)],1):e._e()]}}],null,!0)})],2),e._v(" "),n("div",{staticClass:"page_bottom"},[n("div",{staticClass:"pagination"},[n("div",[e._t("tableSelectionBtn",null,{selection:e.checkRecords})],2),e._v(" "),n("el-pagination",{directives:[{name:"show",rawName:"v-show",value:e.total>0,expression:"total > 0"}],attrs:{background:"","current-page":e.queryParams.pageNumber,"page-sizes":e.$pageSizeAll,"page-size":e.queryParams.pageSize,layout:"total, prev, pager, next, jumper, sizes",total:e.total},on:{"update:currentPage":function(t){return e.$set(e.queryParams,"pageNumber",t)},"update:current-page":function(t){return e.$set(e.queryParams,"pageNumber",t)},"size-change":e.handleSizeChange,"current-change":e.handleCurrentChange}})],1)])],1)]),e._v(" "),n("EditDialog",{ref:"edit",attrs:{"submit-detail-data":e.option.submitDetailData,"handle-detail-data":e.option.handleDetailData,option:e.option,"model-type":e.editDialogModelType,visible:e.editDialogOpen,"row-data":e.editDialogRowData},on:{closeEvent:e.editDialogClosedEvent},scopedSlots:e._u([{key:"customCard",fn:function(){return[e._t("cardInEditPage")]},proxy:!0},{key:"editBtn",fn:function(t){return[e._t("editBtnPage",null,{rowData:t})]}}],null,!0)})],1),e._v(" "),e._t("pageSection"),e._v(" "),n("anji-contextMenu",{attrs:{visible:e.isShowRowContextMenu,"style-obj":e.contextMenuConfigStyle},on:{"update:visible":function(t){e.isShowRowContextMenu=t}}},e._l(e.option.contextMenu,function(t,i){return n("div",{key:i,staticClass:"contextMenu"},[n("el-button",{staticClass:"contextMenuItem",attrs:{type:"text",disabled:t.disabled},on:{click:function(n){return e.handleContextMenuItem(t)}}},[e._v(e._s(t.label))])],1)}),0)],2)},[],!1,null,"1b349198",null));j.options.__file="anji-crud.vue";t.default=j.exports},sdkc:function(e,t,n){"use strict";var i=n("VGgK");n.n(i).a},sm2R:function(e,t,n){"use strict";n.d(t,"a",function(){return o}),n.d(t,"b",function(){return a});var i=n("t3Un"),r=n("XS0u");function o(e){return Object(i.a)({url:"/gaeaDict/select/"+e,method:"get"})}function a(e){Object(i.a)({url:"/gaeaDict/all",method:"GET"}).then(function(t){200==t.code?(Object(r.c)("gaeaDict",t.data),null!=e&&e()):console.error("初始化数据字典到local storage失败: "+t.message)})}},sxct:function(e,t,n){"use strict";n.d(t,"a",function(){return r});var i=n("iX2V");function r(e){return i(e+"gaea")}},t3Un:function(e,t,n){"use strict";var i=n("Asgo"),r=n.n(i),o=n("f0Pt"),a=n.n(o),l=n("VCIm"),s=(n("Q2AE"),n("X4fA")),u=a.a.create({baseURL:"./",timeout:2e4});u.interceptors.request.use(function(e){return e.headers.Authorization=null==Object(s.f)()||void 0==Object(s.f)()?"":Object(s.f)(),e},function(e){r.a.reject(e)}),u.interceptors.response.use(function(e){var t=e.data;if("50008"!=t.code&&"50012"!=t.code&&"50014"!=t.code)return"200"!==t.code?(Object(l.Message)({message:t.message,type:"error",duration:5e3}),e.data):e.data;l.MessageBox.confirm("你已被登出,可以取消继续留在该页面,或者重新登录","重新登录",{confirmButtonText:"重新登录",cancelButtonText:"取消",type:"warning"}).then(function(){sessionStorage.clear(),localStorage.clear(),window.location.href="/"})},function(e){return Object(l.Message)({message:e.message,type:"error",duration:5e3}),r.a.reject(e)}),t.a=u},uYT1:function(e,t,n){},vjVy:function(e,t,n){},wTyl:function(e,t,n){"use strict";var i=n("oveC");n.n(i).a},wihr:function(e,t,n){}},[["Vtdi","runtime","chunk-libs"]]]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["app"],{"/mUW":function(e,t,n){"use strict";var i=n("3Jjm");n.n(i).a},"3Jjm":function(e,t,n){},"7Qib":function(e,t,n){"use strict";n.d(t,"c",function(){return i}),n.d(t,"a",function(){return l}),n.d(t,"b",function(){return s});n("EPZ6"),n("Q2cO");function i(e){return/^(https?:|mailto:|tel:)/.test(e)}var r=n("6Cps"),o=r.enc.Utf8.parse("1234123412ABCDEF"),a=r.enc.Utf8.parse("ABCDEF1234123412");function l(e){var t=r.enc.Hex.parse(e),n=r.enc.Base64.stringify(t),i=r.AES.decrypt(n,o,{iv:a,mode:r.mode.CBC,padding:r.pad.Pkcs7}).toString(r.enc.Utf8).toString(),l=i.substr(-32);return i.split(l)[0]}function s(e){var t=r.enc.Utf8.parse(e+function(){var e=(new Date).getTime();return window.performance&&"function"==typeof window.performance.now&&(e+=performance.now()),"xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g,function(t){var n=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"==t?n:3&n|8).toString(16)})}());return r.AES.encrypt(t,o,{iv:a,mode:r.mode.CBC,padding:r.pad.Pkcs7}).ciphertext.toString().toUpperCase()}},"8q53":function(e,t,n){"use strict";var i=n("wihr");n.n(i).a},B3E3:function(e,t,n){"use strict";var i=n("uYT1");n.n(i).a},Bq29:function(e,t,n){},HK11:function(e,t,n){"use strict";var i=n("Bq29");n.n(i).a},HiAn:function(e,t,n){},INx1:function(e,t,n){},Itw0:function(e,t,n){},"JeH/":function(e,t,n){"use strict";var i=n("fcOe");n.n(i).a},L48I:function(e,t,n){"use strict";var i=n("lnxG");n.n(i).a},N4Kv:function(e,t,n){"use strict";var i=n("hk9y");n.n(i).a},PAdZ:function(e,t,n){},Q2AE:function(e,t,n){"use strict";var i=n("AmEZ"),r=n("8t5x"),o={},a={state:{cacheViews:[]},mutations:{ADD_CACHEVIEW:function(e,t){e.cacheViews.includes(t.name)||t.meta&&t.meta.keepAlive&&e.cacheViews.push(t.name)}},actions:{addCachedView:function(e,t){(0,e.commit)("ADD_CACHEVIEW",t)}}},l={sidebar:function(e){return e.app.sidebar},device:function(e){return e.app.device},token:function(e){return e.user.token},accessUser:function(e){return e.user.accessUser},cacheViews:function(e){return e.cacheView.cacheViews}},s={},u=n("jJIE"),c=n.n(u),d={state:{sidebar:{opened:!+c.a.get("sidebarStatus"),withoutAnimation:!1},device:"desktop"},mutations:{TOGGLE_SIDEBAR:function(e){e.sidebar.opened?c.a.set("sidebarStatus",1):c.a.set("sidebarStatus",0),e.sidebar.opened=!e.sidebar.opened,e.sidebar.withoutAnimation=!1},CLOSE_SIDEBAR:function(e,t){c.a.set("sidebarStatus",1),e.sidebar.opened=!1,e.sidebar.withoutAnimation=t},TOGGLE_DEVICE:function(e,t){e.device=t}},actions:{ToggleSideBar:function(e){(0,e.commit)("TOGGLE_SIDEBAR")},CloseSideBar:function(e,t){(0,e.commit)("CLOSE_SIDEBAR",t.withoutAnimation)},ToggleDevice:function(e,t){(0,e.commit)("TOGGLE_DEVICE",t)}}},f=n("Asgo"),p=n.n(f),h=n("dVUk"),m=n("X4fA"),b={state:{token:"",accessUser:{}},mutations:{SET_TOKEN:function(e,t){e.token=t,Object(m.j)(t)},SET_ACCESSUSER:function(e,t){e.accessUser=t,Object(m.h)(t)}},actions:{Login:function(e,t){var n=e.commit,i={userName:t.userName.trim(),password:t.password.trim(),captchaVerification:t.captchaVerification.trim()};return new p.a(function(e,t){Object(h.a)(i).then(function(i){var r=i.repCode,o=i.repData;"0000"===r?(n("SET_TOKEN",o.token),n("SET_ACCESSUSER",o.accessUser),e(i)):t(i.repMsg)}).catch(function(e){t(e)})})},LogOut:function(e){var t=e.commit,n=e.state;return new p.a(function(e,i){Object(h.b)(n.token).then(function(){t("SET_TOKEN",""),t("SET_ACCESSUSER",{}),Object(m.c)(),Object(m.b)(),Object(m.a)(),e()}).catch(function(e){i(e)})})},FedLogOut:function(e){var t=e.commit;return new p.a(function(e){t("SET_TOKEN",""),t("SET_ACCESSUSER",{}),Object(m.c)(),Object(m.b)(),Object(m.a)(),e()})}}},v={state:{id:0,val:"",title:""},mutations:{setCategory:function(e,t){e.id=0,e.val=t.value,e.title=t.label}}};i.default.use(r.a);var g=new r.a.Store({modules:{app:d,user:b,cacheView:a,help:v},state:{},plugins:[function(e){}],actions:o,mutations:s,getters:l});t.a=g},RXVF:function(e,t,n){"use strict";var i=n("gaEW");n.n(i).a},Rt0g:function(e,t,n){"use strict";var i=n("ZU+s");n.n(i).a},S0BH:function(e,t,n){"use strict";var i=n("PAdZ");n.n(i).a},SiB1:function(e,t,n){"use strict";var i=n("INx1");n.n(i).a},UbsL:function(e,t,n){},VGgK:function(e,t,n){},Vtdi:function(e,t,n){"use strict";n.r(t);var i={};n.r(i),n.d(i,"basecode",function(){return le}),n.d(i,"getDataByCode",function(){return se}),n.d(i,"fixed",function(){return ue}),n.d(i,"formatTimestamp",function(){return ce}),n.d(i,"formatDate",function(){return de});var r=n("EPZ6"),o=n.n(r),a=n("AmEZ"),l=n("VCIm"),s=n.n(l),u=(n("6bc2"),n("A7+3")),c=n.n(u),d=(n("qpO2"),n("HiAn"),n("aGE4"),n("vjVy"),n("sm2R")),f={name:"App",provide:function(){return{reload:this.reload}},data:function(){return{isRouterAlive:!1}},watch:{$route:function(e,t){"/login"==e.path&&this.queryDictName()}},computed:{},created:function(){this.queryDictName()},methods:{queryDictName:function(){var e=this;Object(d.b)(function(){e.isRouterAlive=!0})},reload:function(){this.isRouterAlive=!1,this.$nextTick(function(){this.isRouterAlive=!0})}}},p=n("ZrdR"),h=Object(p.a)(f,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{attrs:{id:"app"}},[this.isRouterAlive?t("router-view"):this._e()],1)},[],!1,null,null,null);h.options.__file="App.vue";var m=h.exports,b=n("uOVN"),v=n("bS4n"),g=n.n(v),y=n("cLjf"),w=n.n(y),C=n("hDQ3"),x=n.n(C),F=n("8t5x"),S=n("wu4H"),k=n.n(S),_={data:function(){return{levelList:null}},watch:{$route:function(){this.getBreadcrumb()}},computed:{levelListArr:function(){return this.levelList.filter(function(e){return e.meta&&e.meta.title})}},created:function(){this.getBreadcrumb()},methods:{getBreadcrumb:function(){var e=this.$route.params,t=this.$route.matched.filter(function(t){if(t.name){var n=k.a.compile(t.path);return t.path=n(e),!0}});this.levelList=t}}},j=(n("/mUW"),Object(p.a)(_,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("el-breadcrumb",{staticClass:"app-breadcrumb",attrs:{separator:"/"}},[n("transition-group",{attrs:{name:"breadcrumb"}},e._l(e.levelListArr,function(t,i){return n("el-breadcrumb-item",{key:t.path},["noredirect"===t.redirect||i==e.levelListArr.length-1?n("span",{staticClass:"no-redirect"},[e._v(e._s(t.meta.title))]):n("router-link",{staticClass:"no-redirect",attrs:{to:t.redirect||t.path}},[e._v(e._s(t.meta.title))])],1)}),1)],1)},[],!1,null,"2b5df056",null));j.options.__file="index.vue";var O=j.exports,T={name:"Hamburger",props:{isActive:{type:Boolean,default:!1},toggleClick:{type:Function,default:null}}},q=(n("S0BH"),Object(p.a)(T,function(){var e=this.$createElement,t=this._self._c||e;return t("div",[t("svg",{staticClass:"hamburger",class:{"is-active":this.isActive},attrs:{t:"1492500959545",viewBox:"0 0 1024 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg","p-id":"1691","xmlns:xlink":"http://www.w3.org/1999/xlink",width:"64",height:"64"},on:{click:this.toggleClick}},[t("path",{attrs:{d:"M966.8023 568.849776 57.196677 568.849776c-31.397081 0-56.850799-25.452695-56.850799-56.850799l0 0c0-31.397081 25.452695-56.849776 56.850799-56.849776l909.605623 0c31.397081 0 56.849776 25.452695 56.849776 56.849776l0 0C1023.653099 543.397081 998.200404 568.849776 966.8023 568.849776z","p-id":"1692",fill:"#333"}}),this._v(" "),t("path",{attrs:{d:"M966.8023 881.527125 57.196677 881.527125c-31.397081 0-56.850799-25.452695-56.850799-56.849776l0 0c0-31.397081 25.452695-56.849776 56.850799-56.849776l909.605623 0c31.397081 0 56.849776 25.452695 56.849776 56.849776l0 0C1023.653099 856.07443 998.200404 881.527125 966.8023 881.527125z","p-id":"1693",fill:"#333"}}),this._v(" "),t("path",{attrs:{d:"M966.8023 256.17345 57.196677 256.17345c-31.397081 0-56.850799-25.452695-56.850799-56.849776l0 0c0-31.397081 25.452695-56.850799 56.850799-56.850799l909.605623 0c31.397081 0 56.849776 25.452695 56.849776 56.850799l0 0C1023.653099 230.720755 998.200404 256.17345 966.8023 256.17345z","p-id":"1694",fill:"#333"}})])])},[],!1,null,"54298247",null));q.options.__file="index.vue";var D=q.exports,E=n("XS0u"),B=n("dVUk"),P=n("sxct"),A={data:function(){var e=this;return{wordVisible:!1,form:{oldPassword:"",password:"",confirmPassword:""},rules:{oldPassword:[{required:!0,validator:function(e,t,n){t.length<6||t.length>30?n(new Error("请输入原密码")):n()},trigger:"blur"}],password:[{required:!0,message:"请选择新密码",trigger:"blur"}],confirmPassword:[{required:!0,validator:function(t,n,i){""===n?i(new Error("请再次输入密码")):n!==e.form.password?i(new Error("两次输入密码不一致!")):n.length<6||n.length>20?i(new Error("密码长度需要再6-20之间!")):i()},trigger:"blur"}]}}},components:{Breadcrumb:O,Hamburger:D},computed:g()({},Object(F.c)(["sidebar"])),created:function(){},methods:{toggleSideBar:function(){this.$store.dispatch("ToggleSideBar")},logout:function(){var e=this;this.$confirm("确定要退出吗","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(function(){sessionStorage.clear(),localStorage.clear(),e.$router.push("/login")})},updatePassword:function(){var e=this;this.wordVisible=!0,this.$nextTick(function(){e.$refs.form&&e.$refs.form.resetFields()})},confrimUpdate:function(){var e=this;this.$refs.form.validate(function(){var t=x()(w.a.mark(function t(n){var i,r,o,a,l,s;return w.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(!n){t.next=16;break}return i=e.form,r=i.oldPassword,o=i.password,a=i.confirmPassword,l={oldPassword:Object(P.a)(r),password:Object(P.a)(o),confirmPassword:Object(P.a)(a)},t.next=5,Object(B.c)(l);case 5:if(s=t.sent,"200"==s.code){t.next=9;break}return t.abrupt("return");case 9:e.wordVisible=!1,e.$message.success("修改密码成功,请重新登录"),sessionStorage.clear(),localStorage.clear(),e.$router.push("/login"),t.next=17;break;case 16:return t.abrupt("return",!1);case 17:case"end":return t.stop()}},t,e)}));return function(e){return t.apply(this,arguments)}}())},helpCenter:function(){var e=Object(E.b)("helpCategory");this.$router.push({path:"/helpCenList/list",query:{id:0,val:e[0].value,title:e[0].label}})}}},$=(n("JeH/"),Object(p.a)(A,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("el-menu",{staticClass:"navbar",attrs:{mode:"horizontal"}},[n("hamburger",{staticClass:"hamburger-container",attrs:{"toggle-click":e.toggleSideBar,"is-active":e.sidebar.opened}}),e._v(" "),n("breadcrumb")],1),e._v(" "),n("el-dialog",{staticClass:"password-box",attrs:{title:"修改密码",visible:e.wordVisible,width:"40%","close-on-click-modal":!1,top:"20vh"},on:{"update:visible":function(t){e.wordVisible=t}}},[n("el-form",{ref:"form",attrs:{model:e.form,"label-width":"100px",rules:e.rules,"close-on-click-modal":!1}},[n("el-form-item",{attrs:{label:"原密码",prop:"oldPassword"}},[n("el-input",{attrs:{type:"password",autocomplete:"off"},model:{value:e.form.oldPassword,callback:function(t){e.$set(e.form,"oldPassword","string"==typeof t?t.trim():t)},expression:"form.oldPassword"}})],1),e._v(" "),n("el-form-item",{attrs:{label:"新密码",prop:"password"}},[n("el-input",{attrs:{type:"password",autocomplete:"off"},model:{value:e.form.password,callback:function(t){e.$set(e.form,"password","string"==typeof t?t.trim():t)},expression:"form.password"}})],1),e._v(" "),n("el-form-item",{attrs:{label:"确认新密码",prop:"confirmPassword"}},[n("el-input",{attrs:{type:"password",autocomplete:"off"},model:{value:e.form.confirmPassword,callback:function(t){e.$set(e.form,"confirmPassword","string"==typeof t?t.trim():t)},expression:"form.confirmPassword"}})],1)],1),e._v(" "),n("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[n("el-button",{on:{click:function(t){e.wordVisible=!1}}},[e._v("取 消")]),e._v(" "),n("el-button",{attrs:{type:"primary"},on:{click:e.confrimUpdate}},[e._v("确 定")])],1)],1)],1)},[],!1,null,"1538a3b3",null));$.options.__file="Navbar.vue";var I=$.exports,N=n("YmYf"),R=n.n(N),M=n("7Qib"),U={name:"MenuItem",functional:!0,props:{icon:{type:String,default:""},title:{type:String,default:""}},render:function(e,t){var n=t.props,i=n.icon,r=n.title,o=[];return i&&o.push(e("i",{class:"iconfont "+i})),r&&o.push(e("span",{slot:"title"},[r])),o}},L=Object(p.a)(U,void 0,void 0,!1,null,null,null);L.options.__file="Item.vue";var V=L.exports,z={props:{to:{type:String,required:!0}},methods:{isExternalLink:function(e){return Object(M.c)(e)},linkProps:function(e){return this.isExternalLink(e)?{is:"a",href:e,target:"_blank",rel:"noopener"}:{is:"router-link",to:e}}}},Q=Object(p.a)(z,function(){var e=this.$createElement;return(this._self._c||e)("component",this._b({},"component",this.linkProps(this.to),!1),[this._t("default")],2)},[],!1,null,null,null);Q.options.__file="Link.vue";var H={name:"SidebarItem",components:{Item:V,AppLink:Q.exports},props:{item:{type:Object,required:!0},isNest:{type:Boolean,default:!1},basePath:{type:String,default:""}},data:function(){return{onlyOneChild:null}},computed:{},methods:{hasOneShowingChild:function(e,t){var n=this,i=e.filter(function(e){return!e.hidden&&(n.onlyOneChild=e,!0)});return 1===i.length||0===i.length&&(this.onlyOneChild=g()({},t,{path:"",noShowingChildren:!0}),!0)},resolvePath:function(e){return this.isExternalLink(e)?e:R.a.resolve(this.basePath,e)},isExternalLink:function(e){return Object(M.c)(e)}}},J=(n("L48I"),Object(p.a)(H,function(){var e=this,t=e.$createElement,n=e._self._c||t;return!e.item.hidden&&e.item.children?n("div",{staticClass:"menu-wrapper"},[!e.hasOneShowingChild(e.item.children,e.item)||e.onlyOneChild.children&&!e.onlyOneChild.noShowingChildren||e.item.alwaysShow?[e.hasPermission(e.item.meta.permission)?n("el-submenu",{attrs:{index:e.resolvePath(e.item.path)}},[n("template",{slot:"title"},[n("item",{attrs:{icon:e.item.meta.icon,title:e.item.meta.title}})],1),e._v(" "),e._l(e.item.children,function(t){return[e.hasPermission(t.meta.permission)&&1!=t.hidden?[t.children&&t.children.length>0?n("sidebar-item",{key:t.path,staticClass:"nest-menu",attrs:{"is-nest":!0,item:t,"base-path":e.resolvePath(t.path)}}):e._e(),e._v(" "),n("app-link",{key:t.name,attrs:{to:e.resolvePath(t.path)}},[n("el-menu-item",{attrs:{index:e.resolvePath(t.path)}},[t.meta?n("item",{attrs:{icon:t.meta.icon,title:t.meta.title}}):e._e()],1)],1)]:e._e()]})],2):e._e()]:[n("app-link",{attrs:{to:e.resolvePath(e.onlyOneChild.path)}},[n("el-menu-item",{class:{"submenu-title-noDropdown":!e.isNest},attrs:{index:e.resolvePath(e.onlyOneChild.path)}},[e.onlyOneChild.meta?n("item",{attrs:{icon:e.onlyOneChild.meta.icon||e.item.meta.icon,title:e.onlyOneChild.meta.title}}):e._e()],1)],1)]],2):e._e()},[],!1,null,"2b0b07e3",null));J.options.__file="SidebarItem.vue";var W={components:{SidebarItem:J.exports},computed:g()({},Object(F.c)(["sidebar"]),{routes:function(){return this.$router.options.routes},isCollapse:function(){return!this.sidebar.opened}}),methods:{goBigScreen:function(){var e=this.$router.resolve({path:"/report/bigScreen"});window.open(e.href,"_blank")}}},K=(n("rQpy"),Object(p.a)(W,function(){var e=this.$createElement,t=this._self._c||e;return t("el-scrollbar",{attrs:{"wrap-class":"scrollbar-wrapper"}},[t("div",{staticClass:"admin-title",on:{click:this.goBigScreen}}),this._v(" "),t("el-menu",{attrs:{"show-timeout":200,"default-active":this.$route.path,collapse:this.isCollapse,mode:"vertical"}},this._l(this.routes,function(e){return t("sidebar-item",{key:e.path,attrs:{item:e,"base-path":e.path}})}),1)],1)},[],!1,null,"38cf134e",null));K.options.__file="index.vue";var G=K.exports,X={name:"AppMain",computed:g()({},Object(F.c)(["cacheViews"]),{key:function(){return void 0!==this.$route.name?this.$route.name+ +new Date:this.$route+ +new Date}})},Z=(n("SiB1"),Object(p.a)(X,function(){var e=this.$createElement,t=this._self._c||e;return t("section",{staticClass:"app-main"},[t("transition",{attrs:{name:"fade-transform",mode:"out-in"}},[t("keep-alive",{attrs:{include:this.cacheViews}},[t("router-view")],1)],1)],1)},[],!1,null,"7d0fa904",null));Z.options.__file="AppMain.vue";var Y=Z.exports,ee=n("Q2AE"),te=document.body,ne={name:"Layout",components:{Navbar:I,Sidebar:G,AppMain:Y},watch:{$route:{handler:function(e,t){"realTimeLog"!=e.name&&"deviceInfo"!=e.name&&Object(E.a)("deviceInfo"),"helpCenter"!=e.name&&"helpCenterEdit"!=e.name&&Object(E.a)("helpCenterDetail"),this.addCachedView(e)},immediate:!0}},mixins:[{watch:{$route:function(e){"mobile"===this.device&&this.sidebar.opened&&ee.a.dispatch("CloseSideBar",{withoutAnimation:!1})}},beforeMount:function(){window.addEventListener("resize",this.resizeHandler)},mounted:function(){this.isMobile()&&(ee.a.dispatch("ToggleDevice","mobile"),ee.a.dispatch("CloseSideBar",{withoutAnimation:!0}))},methods:{isMobile:function(){return te.getBoundingClientRect().width-3<1024},resizeHandler:function(){if(!document.hidden){var e=this.isMobile();ee.a.dispatch("ToggleDevice",e?"mobile":"desktop"),e&&ee.a.dispatch("CloseSideBar",{withoutAnimation:!0})}}}}],computed:{sidebar:function(){return this.$store.state.app.sidebar},device:function(){return this.$store.state.app.device},classObj:function(){return{hideSidebar:!this.sidebar.opened,openSidebar:this.sidebar.opened,withoutAnimation:this.sidebar.withoutAnimation,mobile:"mobile"===this.device}}},methods:g()({},Object(F.b)(["addCachedView"]),{handleClickOutside:function(){this.$store.dispatch("CloseSideBar",{withoutAnimation:!1})}})},ie=(n("8q53"),Object(p.a)(ne,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"app-wrapper",class:e.classObj},["mobile"===e.device&&e.sidebar.opened?n("div",{staticClass:"drawer-bg",on:{click:e.handleClickOutside}}):e._e(),e._v(" "),n("sidebar",{staticClass:"sidebar-container"}),e._v(" "),n("div",{staticClass:"main-container"},[n("navbar"),e._v(" "),n("app-main")],1)],1)},[],!1,null,"11b67c86",null));ie.options.__file="Layout.vue";var re=ie.exports;a.default.use(b.a);var oe=[{path:"/login",component:function(){return n.e("chunk-306e").then(n.bind(null,"3Xui"))},hidden:!0},{path:"/aj/**",component:function(){return n.e("chunk-2592").then(n.bind(null,"TiKq"))},hidden:!0},{path:"/index",component:re,name:"index",meta:{title:"首页",icon:"iconhome2"},children:[{path:"",component:function(){return n.e("chunk-a4f3").then(n.bind(null,"er4n"))},meta:{title:"首页",icon:"iconhome2",keepAlive:!0,requireAuth:!0}}]},{path:"/report",name:"report",component:re,meta:{title:"报表设计",icon:"iconnavicon-ywcs",requireAuth:!0,permission:"datasourceManage|resultsetManage|reportManage|bigScreenManage"},children:[{path:"datasource",name:"datasource",component:function(){return n.e("chunk-191b").then(n.bind(null,"ZjmF"))},meta:{title:"数据源",icon:"icondatabase",keepAlive:!0,requireAuth:!0,permission:"datasourceManage"}},{path:"resultset",name:"resultset",component:function(){return Promise.all([n.e("chunk-f259"),n.e("chunk-dd63"),n.e("chunk-943b")]).then(n.bind(null,"Zzv2"))},meta:{title:"数据集",icon:"iconAPIwangguan",keepAlive:!0,requireAuth:!0,permission:"resultsetManage"}},{path:"report",name:"reportIndex",component:function(){return n.e("chunk-7a76").then(n.bind(null,"0MlO"))},meta:{title:"报表管理",icon:"iconnavicon-ywcs",keepAlive:!0,requireAuth:!0,permission:"reportManage"}},{path:"bigscreen",name:"bigscreen",component:function(){return n.e("chunk-690c").then(n.bind(null,"b//P"))},meta:{title:"大屏报表",icon:"iconchufaqipeizhi-hui",keepAlive:!0,requireAuth:!0,permission:"bigScreenManage"}}]},{path:"/system",name:"system",component:re,meta:{title:"系统设置",icon:"iconshezhi",requireAuth:!0,permission:"fileManage|dictManage|dictItemManage"},children:[{path:"file",name:"file",component:function(){return n.e("chunk-0f7e").then(n.bind(null,"lAHl"))},meta:{title:"文件管理",icon:"iconfill_folder",keepAlive:!0,requireAuth:!0,permission:"fileManage"}},{path:"dict",name:"dict",component:function(){return n.e("MiWS").then(n.bind(null,"MiWS"))},meta:{title:"数据字典",icon:"iconzidian",keepAlive:!0,requireAuth:!0,permission:"dictManage"}},{path:"dictItem",name:"dictItem",component:function(){return n.e("gJ75").then(n.bind(null,"gJ75"))},hidden:!0,meta:{title:"字典项",icon:"iconzidianxiang",keepAlive:!0,requireAuth:!0,permission:"dictItemManage"}}]},{path:"/bigscreen/viewer",component:function(){return Promise.all([n.e("chunk-6b46"),n.e("chunk-293b")]).then(n.bind(null,"OnRN"))},hidden:!0,meta:{requireAuth:!0}},{path:"/bigscreen/designer",component:function(){return Promise.all([n.e("chunk-f259"),n.e("chunk-f079"),n.e("chunk-6b46"),n.e("chunk-25ff"),n.e("chunk-5ad2")]).then(n.bind(null,"VZcz"))},hidden:!0,meta:{requireAuth:!0}},{path:"/excelreport/viewer",component:function(){return n.e("chunk-5309").then(n.bind(null,"+N4U"))},hidden:!0,meta:{requireAuth:!0}},{path:"/excelreport/designer",component:function(){return Promise.all([n.e("chunk-f079"),n.e("chunk-c4fe")]).then(n.bind(null,"Xvat"))},hidden:!0,meta:{requireAuth:!0}},{path:"/404",component:function(){return n.e("chunk-fd33").then(n.bind(null,"jNvO"))},hidden:!0},{path:"*",redirect:"/index",hidden:!0}],ae=new b.a({scrollBehavior:function(){return{y:0}},routes:oe});function le(e,t){if(void 0===e||null===e)return"";if(void 0===t||null===t)return e;for(var n=Object(E.b)("queryForCodeSelect")[t],i=e,r=0;rr?1:0}},getObjectType:function(e){var t=Object.prototype.toString;return e instanceof Element?"element":{"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regExp","[object Undefined]":"undefined","[object Null]":"null","[object Object]":"object"}[t.call(e)]},isNumber:function(e){return"number"==this.getObjectType(e)},isString:function(e){return"string"==this.getObjectType(e)},isArray:function(e){return"array"==this.getObjectType(e)},hasOwn:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},isNotBlank:function(e){return!this.isBlank(e)}},be()(fe,"isBlank",function(e){if(this.isNull(e))return!0;if("string"==typeof e)return""==e.trim();if("object"===(void 0===e?"undefined":Se()(e))){for(var t in e)return!1;return!0}return!1}),be()(fe,"isNotNull",function(e){return!this.isNull(e)}),be()(fe,"isNull",function(e){if(e&&0===parseInt(e))return!1;if(e instanceof Date||"boolean"==typeof e||"number"==typeof e)return!1;if(!(e instanceof Array)){if(e instanceof Object){for(var t in e=this.deepClone(e),["$parent"].forEach(function(t){delete e[t]}),e)return!1;return!0}return"null"===e||null==e||"undefined"===e||void 0===e||""===e}return 0===e.length}),be()(fe,"deepClone",function(e){var t=this,n=this.getObjectType(e),i=void 0;if("array"===n)i=[];else{if("object"!==n)return e;i={}}if("array"===n)for(var r=function(n,r){e[n]=(e[n],e[n]),e[n]&&delete e[n].$parent,i.push(t.deepClone(e[n]))},o=0,a=e.length;o=0?n[i]=e[i]:n[i]=this.urlEncode(e[i]));return n}),be()(fe,"getDictItemByCode",function(e,t){var n=Object(E.b)("gaeaDict");if(!n.hasOwnProperty(e))return null;for(var i=n[e],r=0;r0&&(this.option,this.label),this.url):null!=this.dictCode&&""!=this.dictCode.trim()?"/meta/gaeaDict/select/"+this.dictCode:null}},watch:{dictCode:function(e){e&&this.queryData()},localOptions:function(e){this.options=e},value:{handler:function(e){"string"==typeof e&&null!=this.url&&""!=this.url.trim()&&this.remoteQuery(e),null!=this.multiple?this.value?this.selectValue=this.value:this.selectValue=[]:null!=this.value&&void 0!=this.value?this.selectValue=this.value+"":this.selectValue=""},immediate:!0},url:function(){var e=this;setTimeout(function(){e.queryData()},500)}},created:function(){null!=this.multiple?this.selectValue=this.value:null!=this.value&&(this.selectValue=this.value+"")},mounted:function(){null!=this.requestUrl?this.queryData():this.options=this.localOptions},methods:{isDisabledOption:function(e){if(null==e||null==this.disabledOptions||0==this.disabledOptions.length)return!1;var t=e[this.option];return this.disabledOptions.indexOf(t)>=0},change:function(e){var t=this;""===e&&(e=""),this.$emit("input",e);var n=this.options.find(function(n){return n[t.option]==e});this.$emit("change",e,n)},getItemLabel:function(e,t){if(t.indexOf("${")<0&&t.indexOf(!1))return e[t];for(var n=t.match(/\$\{[a-zA-Z0-9]*\}/g),i=t,r=0;r=1?n("el-option",{attrs:{value:"",disabled:""}},[e._v("输入关键词搜索更多")]):e._e()],2)],1)},[],!1,null,"b32efa94",null));Me.options.__file="anji-select.vue";var Ue=Me.exports,Le={props:{upLoadUrl:{type:String,default:function(){return""}},viewUrl:{type:String,default:function(){return""}},limit:{type:Number,default:function(){return 3}},value:{type:Array,default:function(){return[]}},uploadType:{type:String,default:function(){return"img"}}},data:function(){return{imageUploadUrl:"",dialogVisibleImageUpload:!1,fileList:[],modeString:""}},computed:{requestUrl:function(){return null!=this.upLoadUrl&&""!=this.upLoadUrl.trim()?Object({NODE_ENV:"production",BASE_API:"./"}).VUE_APP_BASE_API+this.upLoadUrl:Object({NODE_ENV:"production",BASE_API:"./"}).VUE_APP_BASE_API+"/meta/file/upload"},headers:function(){return{}}},watch:{value:{handler:function(e){this.echoUpload(e)},immediate:!0}},mounted:function(){},methods:{typeImgShow:function(e){if(e.fileType){var t=e.fileType.toLowerCase();return"jpg"==t||"png"==t||"gif"==t||"icon"==t}},typePdfShow:function(e){if(e.fileType)return"pdf"==e.fileType.toLowerCase()},typeExcelShow:function(e){if(e.fileType){var t=e.fileType.toLowerCase();return"xlsx"==t||"xls"==t||"csv"==t}},handleRemove:function(e){var t=[];this.fileList.forEach(function(n){n.fileId!=e.fileId&&t.push(n)}),this.fileList=t,this.change()},handlePictureCardPreview:function(e){this.imageUploadUrl=e.url,this.dialogVisibleImageUpload=!0},handleDownload:function(e){window.open(e.url)},handleSuccess:function(e,t,n){console.log(n),200==e.code?(this.fileList.push({url:t.response.data.urlPath,fileId:t.response.data.fileId,fileType:t.response.data.fileType}),this.change()):this.$message.error("上传失败")},change:function(){var e=this.fileList;this.$emit("input",e),this.$emit("change",e)},handleBeforeUpload:function(e){var t=e.name.split(".")[e.name.split(".").length-1].toLowerCase();return!(["png","jpg","gif","icon","pdf","xlsx","xls","csv","mp4","avi"].indexOf(t)<0)||(this.$message.warning("请上传正确的格式文件"),!1)},echoUpload:function(e){var t=this;if(e&&e.length>0){for(var n=[],i=0;i=e.limit?"hide_box":"",attrs:{headers:e.headers,limit:e.limit,action:e.requestUrl,"list-type":"picture-card","file-list":e.fileList,"on-preview":e.handlePictureCardPreview,"on-remove":e.handleRemove,"on-success":e.handleSuccess,"show-file-list":!0,"before-upload":e.handleBeforeUpload},scopedSlots:e._u([{key:"file",fn:function(t){var i=t.file;return n("div",{staticClass:"imgBox"},[e.typeImgShow(i)?n("img",{staticClass:"el-upload-list__item-thumbnail",attrs:{src:i.url,alt:""}}):e.typePdfShow(i)?n("svg-icon",{staticClass:"iconFont",attrs:{"icon-class":"PDF"}}):e.typeExcelShow(i)?n("svg-icon",{staticClass:"iconFont",attrs:{"icon-class":"Excel"}}):e._e(),e._v(" "),n("span",{staticClass:"el-upload-list__item-actions"},[e.typeImgShow(i)?n("span",{staticClass:"el-upload-list__item-preview",on:{click:function(t){return e.handlePictureCardPreview(i)}}},[n("i",{staticClass:"el-icon-zoom-in"})]):e._e(),e._v(" "),n("span",{staticClass:"el-upload-list__item-delete",on:{click:function(t){return e.handleDownload(i)}}},[n("i",{staticClass:"el-icon-download"})]),e._v(" "),n("span",{staticClass:"el-upload-list__item-delete",on:{click:function(t){return e.handleRemove(i)}}},[n("i",{staticClass:"el-icon-delete"})])])],1)}}])},[n("i",{staticClass:"el-icon-plus",attrs:{slot:"default"},slot:"default"})]),e._v(" "),n("el-dialog",{attrs:{visible:e.dialogVisibleImageUpload,modal:!1},on:{"update:visible":function(t){e.dialogVisibleImageUpload=t}}},[n("img",{attrs:{width:"100%",src:e.imageUploadUrl,alt:""}})])],1)},[],!1,null,"94cf27d6",null));Ve.options.__file="anji-upload.vue";var ze=Ve.exports,Qe=n("OLzz"),He=n.n(Qe);n("cOfl");ae.beforeEach(function(e,t,n){He.a.start(),n()}),ae.afterEach(function(){He.a.done()});var Je={inserted:function(e,t,n){var i=t.value;0==Object(pe.g)(i)&&e.parentNode&&e.parentNode.removeChild(e)}},We=function(e){e.directive("permission",Je)};window.Vue&&(window.permission=Je,Vue.use(We)),Je.install=We;var Ke=Je,Ge=n("WnWJ"),Xe=n.n(Ge);n("up9U");a.default.component("v-chart",$e.a),a.default.component("anji-upload",ze),a.default.component("anji-crud",Ie.default),a.default.component("anji-select",Ue),a.default.use(Ke),a.default.use(Xe.a),a.default.use(s.a,{zhLocale:c.a}),o()(i).forEach(function(e){a.default.filter(e,i[e])}),a.default.mixin(Ae),a.default.prototype.$pageSizeAll=[10,50,100,200,500],a.default.config.productionTip=!1,new a.default({el:"#app",router:ae,store:ee.a,render:function(e){return e(m)}})},X4fA:function(e,t,n){"use strict";n.d(t,"f",function(){return l}),n.d(t,"e",function(){return s}),n.d(t,"j",function(){return u}),n.d(t,"i",function(){return c}),n.d(t,"c",function(){return d}),n.d(t,"b",function(){return f}),n.d(t,"d",function(){return p}),n.d(t,"h",function(){return h}),n.d(t,"a",function(){return m}),n.d(t,"g",function(){return b});var i=n("XS0u"),r="token",o="shareToken",a="gaeaUser";function l(){return Object(i.b)(r)}function s(){return null==Object(i.b)(o)?"":Object(i.b)(o)}function u(e){return Object(i.c)(r,e)}function c(e){return Object(i.c)(o,e)}function d(){return Object(i.a)(r)}function f(){return Object(i.a)(o)}function p(){return Object(i.b)(a)}function h(e){return Object(i.c)(a,e)}function m(){return Object(i.a)(a)}function b(e){return!0}},XS0u:function(e,t,n){"use strict";n.d(t,"c",function(){return l}),n.d(t,"b",function(){return s}),n.d(t,"a",function(){return u});var i=n("omC7"),r=n.n(i),o=n("Q2cO"),a=n.n(o);n("jJIE");function l(e,t){if(void 0!==t&&null!=t){var n=t;"object"==(void 0===t?"undefined":a()(t))&&(n=r()(t)),localStorage.setItem(e,n)}}function s(e){var t=localStorage.getItem(e);try{return JSON.parse(t)}catch(e){return t}}function u(e){localStorage.removeItem(e)}},"ZU+s":function(e,t,n){},ZXUr:function(e,t,n){"use strict";var i=n("Itw0");n.n(i).a},aGE4:function(e,t,n){},"ba/L":function(e,t,n){"use strict";n.d(t,"e",function(){return u}),n.d(t,"b",function(){return c}),n.d(t,"f",function(){return d}),n.d(t,"a",function(){return f}),n.d(t,"d",function(){return p}),n.d(t,"c",function(){return h});var i=n("Asgo"),r=n.n(i),o=n("t3Un"),a=n("X4fA"),l=n("f0Pt"),s=n.n(l);function u(e){return Object(o.a)({url:"reportDashboard",method:"post",data:e})}function c(e){return Object(o.a)({url:"reportDashboard/"+e,headers:{"Share-Token":Object(a.e)(),Authorization:Object(a.f)()},method:"get"})}function d(e){return Object(o.a)({url:"dataSet/queryAllDataSet",method:"get"})}function f(e){return Object(o.a)({url:"dataSet/detailBysetId/"+e,method:"get"})}function p(e){return Object(o.a)({url:"reportDashboard/getData",method:"post",headers:{"Share-Token":Object(a.e)(),Authorization:Object(a.f)()},data:e})}function h(e){return new r.a(function(t){s()({method:"get",url:".//reportDashboard/export",headers:{Authorization:Object(a.f)()},params:e,responseType:"blob"}).then(function(e){t(e.data)}).catch(function(e){t("error")})})}},dVUk:function(e,t,n){"use strict";n.d(t,"a",function(){return r}),n.d(t,"b",function(){return o}),n.d(t,"c",function(){return a});var i=n("t3Un");function r(e){return Object(i.a)({url:"accessUser/login",method:"post",data:e})}function o(){return Object(i.a)({url:"accessUser/logout",method:"post"})}function a(e){return Object(i.a)({url:"/accessUser/updatePassword",method:"post",data:e})}},fcOe:function(e,t,n){},gaEW:function(e,t,n){},hk9y:function(e,t,n){},lnxG:function(e,t,n){},oveC:function(e,t,n){},rQpy:function(e,t,n){"use strict";var i=n("UbsL");n.n(i).a},sYqA:function(e,t,n){"use strict";n.r(t);var i=n("cLjf"),r=n.n(i),o=n("hDQ3"),a=n.n(o),l=n("t3Un"),s={components:{},props:{url:{type:[String],default:function(){return""}},id:{type:[String],default:function(){return"id"}},label:{type:[String],default:function(){return""}},value:{type:[String],default:function(){return""}},labelName:String,enableFilter:Boolean,isOpen:Boolean},data:function(){return{filterText:"",treeData:[]}},computed:{},watch:{filterText:function(e){this.$refs.table_tree.filter(e)}},mounted:function(){this.queryData()},methods:{filterNode:function(e,t){return!e||-1!==t.label.indexOf(e)},queryData:function(){var e=this;this.isBlank(this.url)||Object(l.a)({url:this.url,method:"GET"}).then(function(t){"200"==t.code&&(e.treeData="[object Array]"==Object.prototype.toString.call(t.data)?t.data:t.data.tree||t.data.menuTree)})},nodeClick:function(e){this.$emit("input",e.id),this.$emit("node-click",e.id)},checkedEvent:function(e,t){var n=t.checkedKeys.toString();this.$emit("input",n)}}},u=(n("RXVF"),n("ZrdR")),c=Object(u.a)(s,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[e.enableFilter?n("el-input",{staticClass:"filterInput",attrs:{placeholder:"搜索"},model:{value:e.filterText,callback:function(t){e.filterText=t},expression:"filterText"}}):e._e(),e._v(" "),n("div",{staticClass:"title"},[e._v(e._s(e.labelName))]),e._v(" "),n("el-tree",{ref:"table_tree",attrs:{data:e.treeData,"node-key":"id","default-expand-all":e.isOpen,"expand-on-click-node":!1,"filter-node-method":e.filterNode},on:{"node-click":e.nodeClick,check:e.checkedEvent}})],1)},[],!1,null,"0b9e713f",null);c.options.__file="anji-tree.vue";var d=c.exports,f=n("Q2cO"),p=n.n(f),h=n("omC7"),m=n.n(h),b={components:{},props:{modelType:String,showDialog:Boolean,option:{type:[Object],default:function(){return{title:"",labelWidth:"",queryFormFields:[],buttons:{query:{},edit:{},delete:{},add:{}},columns:[],formChange:function(e,t,n,i){}}}},relateData:{type:[Object],default:function(){return{}}},value:{type:[Object],default:function(){return{}}}},data:function(){return{cardRowColNum:this.option.rowColForm||2,editForm:{}}},computed:{primaryKeyFieldName:function(){var e=this.option.columns.find(function(e){return 1==e.primaryKey});return null!=e?e.field:null},joinColumn:function(){var e=this.option.joinColumn;return this.isBlank(e)&&(console.warn("在joinEntity中查找joinColumn属性失败,会导致查询详情和删除失败"),e=""),e},formFields:function(){var e=this;if(null==this.option.columns)return[];var t=this.deepClone(this.option.columns);return t=t.map(function(t){return e.isBlank(t.editField)&&(t.editField=t.field),e.isBlank(t.group)&&(t.group="其它"),t})},cardRowColSpan:function(){return 24/this.cardRowColNum},columnGroups:function(){return this.isBlank(this.formFields)?[]:this.formFields.map(function(e){return e.group}).filter(function(e,t,n){return n.indexOf(e)==t})},groupFormFields:function(){if(this.showDialog){var e={};return this.columnGroups.forEach(function(t,n,i){e[t]=[]}),this.formFields.forEach(function(t,n,i){e[t.group].push(t)}),e}return[]},groupModel:function(){return this.columnGroups.length>1}},created:function(){this.$watch(function(){return this.value},function(e,t){this.editForm=e,this.formChange()}),this.$watch(function(){return this.relateData[this.joinColumn]},function(e,t){if(this.isBlank(this.relateData))return this.cardRowColNum=2,void(this.editForm={});this.isNotBlank(e)&&this.queryDetail()})},mounted:function(){this.isNotBlank(this.value)&&(this.editForm=this.value,this.formChange()),this.isNotBlank(this.relateData)&&this.isNotBlank(this.relateData[this.joinColumn])&&this.queryDetail()},methods:{fieldIsHide:function(e){if("boolean"==typeof e)return e;if("string"==typeof e){if("add"==this.modelType)return e.indexOf("hideOnAdd")>=0;if("view"==this.modelType)return e.indexOf("hideOnView")>=0;if("edit"==this.modelType)return e.indexOf("hideOnEdit")>=0}return!1},fieldIsDisable:function(e){if("boolean"==typeof e)return e;if("string"==typeof e){if("add"==this.modelType)return e.indexOf("disableOnAdd")>=0;if("view"==this.modelType)return e.indexOf("disableOnView")>=0;if("edit"==this.modelType)return e.indexOf("disableOnEdit")>=0}return!1},handleSetRowColNum:function(e){this.cardRowColNum=e,this.$emit("changeRowColNum",e)},queryDetail:function(){var e=this;return a()(r.a.mark(function t(){var n,i,o;return r.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.relateData,t.next=3,e.option.buttons.queryByPrimarykey.api(n);case 3:if(i=t.sent,o=i.data,"200"==i.code){t.next=8;break}return t.abrupt("return");case 8:e.editForm=o,e.formChange();case 10:case"end":return t.stop()}},t,e)}))()},validate:function(e){var t=this;this.$refs.editForm.validate(function(){var n=a()(r.a.mark(function n(i,o){return r.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:null!=e&&e(i);case 1:case"end":return t.stop()}},n,t)}));return function(e,t){return n.apply(this,arguments)}}())},handleSave:function(e){var t=this;this.$refs.editForm.validate(function(){var n=a()(r.a.mark(function n(i,o){var a,l,s,u,c,d;return r.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!i){n.next=20;break}if("add"!=t.modelType){n.next=11;break}return"function"==typeof t.option.beforeInsert&&t.option.beforeInsert(t.relateData,t.editForm),n.next=5,t.option.buttons.add.api(t.editForm);case 5:a=n.sent,l=a.code,s=a.message,"200"==l?null!=e&&e():console.log("提交表单调用新增接口失败:"+s),n.next=18;break;case 11:return"function"==typeof t.option.beforeUpdate&&t.option.beforeUpdate(t.relateData,t.editForm),n.next=14,t.option.buttons.edit.api(t.editForm);case 14:u=n.sent,c=u.code,d=u.message,"200"==c?null!=e&&e():console.log("提交表单调用更新接口失败:"+d);case 18:n.next=21;break;case 20:console.log("表单校验失败");case 21:case"end":return n.stop()}},n,t)}));return function(e,t){return n.apply(this,arguments)}}())},formChange:function(e,t,n){this.$emit("input",this.editForm),"function"==typeof this.option.formChange&&this.option.formChange(this.editForm,e,t,n)}}},v=(n("wTyl"),Object(u.a)(b,function(){var e=this,t=e.$createElement,n=e._self._c||t;return null==e.option.hide||0==e.option.hide?n("div",{staticClass:"anji-card"},[n("div",{staticClass:"card-head"},[e._v("\n "+e._s(e.option.title)+"\n "),n("div",{staticClass:"main-card-header-button"},[n("el-button",{attrs:{type:"text"},on:{click:function(t){return e.handleSetRowColNum(4)}}},[e._v("||||")]),e._v(" "),n("el-button",{attrs:{type:"text"},on:{click:function(t){return e.handleSetRowColNum(3)}}},[e._v("|||")]),e._v(" "),n("el-button",{attrs:{type:"text"},on:{click:function(t){return e.handleSetRowColNum(2)}}},[e._v("||")])],1)]),e._v(" "),n("div",{staticClass:"card-body"},[n("el-form",{ref:"editForm",attrs:{model:e.editForm,"label-width":e.option.labelWidth||"100px"}},[e._l(e.columnGroups,function(t){return[e.groupModel?n("el-divider",{key:t,attrs:{"content-position":"left"}},[e._v(e._s(t))]):e._e(),e._v(" "),n("el-row",{key:t,staticClass:"form_table"},[e._l(e.groupFormFields[t],function(t){return[0==e.fieldIsHide(t.editHide)?n("el-col",{key:t.editField,attrs:{span:null==t.rowColSpan?e.cardRowColSpan:t.rowColSpan}},[n("el-form-item",{attrs:{label:t.label,rules:t.rules,prop:t.editField,disabled:t.disabled}},[""!=t.tips&&null!=t.tips?n("span",{staticClass:"input_tips",style:{"margin-left":"-13px"}},[n("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:t.tips,placement:"top-start"}},[n("svg-icon",{attrs:{"icon-class":"tishi-yiwen"}})],1)],1):e._e(),e._v(" "),"input"==t.inputType?n("el-input",{attrs:{placeholder:t.placeholder||"请输入",clearable:!1!==t.clearable,disabled:e.fieldIsDisable(t.disabled)},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"switch"==t.inputType?n("el-switch",{attrs:{disabled:e.fieldIsDisable(t.disabled),"active-value":1,"inactive-value":0,"inactive-color":"#ccc","active-color":"#5887fb"},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"input-number"==t.inputType?n("el-input-number",{attrs:{min:t.inputNumberOption.min,max:t.inputNumberOption.max,placeholder:t.placeholder||"请输入",clearable:!1!==t.clearable,disabled:e.fieldIsDisable(t.disabled)},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-input"==t.inputType?n("anji-input",{attrs:{unit:t.anjiInput.unit,"default-unit":t.anjiInput.defaultUnit,placeholder:t.placeholder||"请输入",clearable:!1!==t.clearable,disabled:e.fieldIsDisable(t.disabled)},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-select"==t.inputType?n("anji-select",{attrs:{"allow-create":t.anjiSelectOption.allowCreate,multiple:t.anjiSelectOption.multiple,disabled:e.fieldIsDisable(t.disabled),"dict-code":t.anjiSelectOption.dictCode,placeholder:t.placeholder,url:t.anjiSelectOption.url,method:t.anjiSelectOption.method,"query-param":t.anjiSelectOption.queryParam,"merge-label":t.anjiSelectOption.mergeLabel,option:t.anjiSelectOption.option,label:t.anjiSelectOption.label,"remote-filter":t.anjiSelectOption.remoteFilter,"disabled-options":t.anjiSelectOption.disabledOptions,"select-keyword":t.anjiSelectOption.selectKeyword},on:{change:function(n,i){return e.formChange(t.editField,n,i)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):t.inputType.indexOf("date")>=0?n("el-date-picker",{staticStyle:{width:"100%"},attrs:{placeholder:t.placeholder||"请选择",type:t.inputType,format:t.format,"value-format":t.valueFormat,disabled:e.fieldIsDisable(t.disabled),clearable:!1!==t.clearable},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,n)},expression:"editForm[item.editField]"}}):"checkbox"==t.inputType?n("anji-checkbox",{attrs:{"dict-code":t.anjiCheckbox.dictCode,url:t.anjiCheckbox.url,label:t.anjiCheckbox.label,disabled:e.fieldIsDisable(t.disabled)},on:{change:function(n,i){return e.formChange(t.editField,n,i)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-cascader"==t.inputType?n("anji-cascader",{attrs:{disabled:e.fieldIsDisable(t.disabled),"single-display":t.anjiCascader.singleDisplay,url:t.anjiCascader.url},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-upload"==t.inputType?n("anji-upload",{attrs:{"up-load-url":t.anjiUpload.upLoadUrl,"view-url":t.anjiUpload.viewUrl,"upload-type":t.anjiUpload.uploadType,limit:t.anjiUpload.limit},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-autocomplete"==t.inputType?n("anji-autocomplete",{attrs:{disabled:e.fieldIsDisable(t.disabled),label:t.anjiAutocomplete.label,option:t.anjiAutocomplete.option,"appoint-value":t.anjiAutocomplete.appointValue,url:t.anjiAutocomplete.url},on:{change:function(n,i){return e.formChange(t.editField,n,i)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"textarea"==t.inputType?n("el-input",{attrs:{placeholder:t.placeholder||"请输入",clearable:!1!==t.clearable,disabled:e.fieldIsDisable(t.disabled),type:"textarea",rows:2},on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):"anji-country"==t.inputType?n("anji-fourlevel",{on:{change:function(n){return e.formChange(t.editField,n,null)}},model:{value:e.editForm[t.editField],callback:function(n){e.$set(e.editForm,t.editField,"string"==typeof n?n.trim():n)},expression:"editForm[item.editField]"}}):n("el-input",{attrs:{placeholder:"组件不支持此类型表单请至组件内部自行扩展",disabled:""}})],1)],1):e._e()]})],2)]})],2)],1)]):e._e()},[],!1,null,"36f1f9f6",null));v.options.__file="edit-form.vue";var g=v.exports,y={components:{},props:{modelType:String,option:{type:[Object],default:function(){return{title:"",labelWidth:"",queryFormFields:[],buttons:{query:{},edit:{},delete:{},add:{}},columns:[]}}},relateData:{type:[Object],default:function(){return{}}},value:{type:[Array],default:function(){return[]}},valueNew:{type:[Array],default:function(){return[]}}},data:function(){return{checkRecords:[],form:{records:[],total:0},saveButtonStatus:[],rowIdList:[]}},computed:{primaryKeyFieldName:function(){var e=this.option.columns.find(function(e){return 1==e.primaryKey});return null!=e?e.field:null},joinColumn:function(){var e=this.option.joinColumn;return this.isBlank(e)&&(console.warn("在columns中查找关联字段失败,会导致查询详情和删除失败,孙子关联表忽略该错误"),e=""),e},formRecordsUndelete:function(){return null==this.form.records?[]:this.form.records.filter(function(e){return null==e.deletedFlag||0==e.deletedFlag})}},watch:{},created:function(){this.isNotBlank(this.joinColumn)&&this.$watch(function(){return this.relateData[this.joinColumn]},function(e,t){this.isNotBlank(e)?this.handleQueryPageList(e):(this.checkRecords=[],this.form.records=[],this.form.total=0,this.saveButtonStatus=[])})},mounted:function(){this.isNotBlank(this.relateData)&&this.isNotBlank(this.relateData[this.joinColumn])&&this.handleQueryPageList()},methods:{fieldIsHide:function(e){if("boolean"==typeof e)return e;if("string"==typeof e){if("add"==this.modelType)return e.indexOf("hideOnAdd")>=0;if("view"==this.modelType)return e.indexOf("hideOnView")>=0;if("edit"==this.modelType)return e.indexOf("hideOnEdit")>=0}return!1},getRowEditButton:function(e){return"inEditing"==this.saveButtonStatus[e]?"btn_savetemp":"inAdding"==this.saveButtonStatus[e]?"btn_savetemp":"inShow"==this.saveButtonStatus[e]?"btn_edit":"not_permission"},tableRowClassAdapter:function(e){var t=e.row,n=e.rowIndex;t.index=n},handleQueryPageList:function(e){var t=this;return a()(r.a.mark(function n(){var i;return r.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:t.isBlank(e)&&(e=t.relateData[t.joinColumn]),(i={})[t.joinColumn]=e,t.queryPageList(i);case 4:case"end":return n.stop()}},n,t)}))()},queryPageList:function(e){var t=this;return a()(r.a.mark(function n(){var i,o,a;return r.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return t.isNotBlank(t.option.buttons.query.order)&&(e.sort=t.option.buttons.query.sort,e.order=t.option.buttons.query.order),n.next=3,t.option.buttons.query.api(e);case 3:if(i=n.sent,o=i.data,"200"==i.code){n.next=8;break}return n.abrupt("return");case 8:for(t.form.records=o.records,t.form.total=o.total,t.$emit("input",t.form.records),a=0;a=0?n("el-date-picker",{staticStyle:{width:"100%"},attrs:{placeholder:t.placeholder||"请选择",type:t.inputType,clearable:!1!==t.clearable,disabled:"inShow"==e.saveButtonStatus[i.$index]||t.disabled},on:{change:function(n){return e.tableRowChange(i.$index,t.field,n)}},model:{value:i.row[t.field],callback:function(n){e.$set(i.row,t.field,n)},expression:"scope.row[item.field]"}}):n("el-input",{attrs:{placeholder:"组件不支持此类型表单请至组件内部自行扩展",disabled:""}})],1)]}}],null,!0)}):e._e()]}),e._v(" "),n("el-table-column",{attrs:{fixed:"right",label:"操作",width:"100"},scopedSlots:e._u([{key:"default",fn:function(t){return[n("el-button",{attrs:{type:"text",size:"small"},on:{click:function(n){return e.handleAddOrUpdate(t.row,t.$index)}}},[e._v(e._s(e.getRowEditButton(t.$index)))]),e._v(" "),n("el-button",{attrs:{type:"text",size:"small"},on:{click:function(n){return e.handleDelete(t.row,t.$index)}}},[e._v("删除")])]}}],null,!1,1921872996)})],2)],1),e._v(" "),"view"!=e.modelType?n("button",{staticClass:"table-add-row-button",on:{click:e.handleAdd}},[n("i",{staticClass:"el-icon-plus"}),e._v(" "),n("span",[e._v("新增")])]):e._e()],1)]):e._e()},[],!1,null,"563fdf1c",null));w.options.__file="edit-table.vue";var C={name:"EditDialog",components:{EditForm:g,EditTable:w.exports},props:{visible:{type:[Boolean],default:function(){return!1}},rowData:{type:[Object],default:function(){return{}}},handleDetailData:{type:Function,default:function(e){return e}},submitDetailData:{type:Function,default:function(e,t){return e}},modelType:String,option:{require:!0,type:Object,default:function(){return{title:"",labelWidth:"",queryFormFields:[],buttons:{query:{},edit:{},delete:{},add:{}},columns:[]}}}},data:function(){return{showDialog:!1,dialogFullScreen:!1,cardRowColNum:2,saveForm:{},countForValidJoinForm:0}},computed:{dialogWidth:function(){return 2==this.cardRowColNum?"60%":3==this.cardRowColNum?"70%":4==this.cardRowColNum?"80%":"60%"},joinEntitys:function(){return this.isBlank(this.option.joinEntitys)?[]:this.option.joinEntitys},countJoinEntityOneToOne:function(){var e=this.joinEntitys.filter(function(e){return"OneToOne"==e.joinType});return null==e?0:e.length}},watch:{visible:function(e,t){this.showDialog=e,this.initDefaultSaveForm()},rowData:function(e,t){null!=e&&this.queryByPrimarykey(e)}},mounted:function(){this.initDefaultSaveForm()},methods:{getSaveForm:function(){return this.saveForm},setSaveForm:function(e){this.saveForm=e},initDefaultSaveForm:function(){var e=this,t={};this.option.columns.forEach(function(n){var i=n.editField;e.isBlank(i)&&(i=n.field);var r=n.defaultValue;e.isNotBlank(r)&&(t[i]=r)}),this.saveForm=this.deepClone(t),console.log("编辑框默认值:"+m()(this.saveForm))},handleCloseDialog:function(e){this.initDefaultSaveForm(),this.showDialog=!1,this.dialogFullScreen=!1,this.cardRowColNum=2,this.countForValidJoinForm=0,this.$emit("closeEvent",e)},handleTopCloseDialog:function(){this.initDefaultSaveForm(),this.showDialog=!1,this.dialogFullScreen=!1,this.cardRowColNum=2,this.countForValidJoinForm=0},handleSetRowColNum:function(e){this.cardRowColNum=e},getComponentByJoinType:function(e,t){return"OneToOne"==e?"EditForm":"OneToMany"==e?"EditTable":""},queryByPrimarykey:function(e){var t=this;return a()(r.a.mark(function n(){var i,o;return r.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,t.option.buttons.queryByPrimarykey.api(e);case 2:if(i=n.sent,o=i.data,"200"==i.code){n.next=7;break}return n.abrupt("return");case 7:t.showDialog=!0,t.saveForm=t.handleDetailData(o);case 9:case"end":return n.stop()}},n,t)}))()},handleValidateAndSave:function(){var e=this;this.countForValidJoinForm=0,this.$refs.mainForm.validate(function(t){if(0!=t)if(console.log("主表单校验完成"),null!=e.joinEntitys&&0!=e.joinEntitys.length)for(var n=function(t){console.log("开始校验子表单-"+t+" 校验");var n=e.joinEntitys[t];if(console.log(n),null!=e.$refs["joinForm"+t]&&1!=n.hide&&null!=e.saveForm[n.fieldNameInMainEntityOnSave]&&0!=e.saveForm[n.fieldNameInMainEntityOnSave].length)return e.checkedChildrenValidate(e.saveForm[n.fieldNameInMainEntityOnSave],n.columns)?(e.countForValidJoinForm++,console.log("已经校验的子表单:"+e.countForValidJoinForm+" 共:"+e.joinEntitys.length),e.countForValidJoinForm==e.joinEntitys.length&&(console.log("子表单校验完成,提交主表单"),e.handleSave()),"continue"):{v:void 0};console.warn("子表单校验失败");var i=e.$refs["joinForm"+t];"[object Array]"==toString.call(i)&&(i=i[0]),i.validate(function(n){n?(e.countForValidJoinForm++,console.log("已经校验的子表单:"+e.countForValidJoinForm+" 共:"+e.joinEntitys.length),e.countForValidJoinForm==e.joinEntitys.length&&(console.log("子表单校验完成,提交主表单"),e.handleSave())):console.warn("子表单"+t+"校验失败:")})},i=0;i0?e.forEach(function(e){t.records.forEach(function(t){e.id==t.id&&(t.dblClickFlag=!0,t.bgColor=!0)})}):this.records.forEach(function(e){e.dblClickFlag=!1,e.bgColor=!1}),this.isShowRowContextMenu=!1,this.checkRecords=e},handleSelectionDblclick:function(e){e.dblClickFlag=!e.dblClickFlag,e.bgColor=e.dblClickFlag,this.$refs.tables.toggleRowSelection(e,e.dblClickFlag)},rowContextMenu:function(e,t,n){var i=this;n.preventDefault(),this.option.contextMenu.forEach(function(e){"all"==e.flag?e.disabled=!(i.checkRecords.length>1):e.disabled=i.checkRecords.length>1}),this.contextMenuConfigStyle={left:n.clientX+"px",top:n.clientY+"px",display:"block"},this.contextMenuRow=e,this.isShowRowContextMenu=!0},handleContextMenuItem:function(e){"all"==e.flag?e.click({selection:this.checkRecords}):e.click({msg:this.contextMenuRow})},handleCurrentChange:function(e){this.queryParams.pageNumber=e,this.handleQueryPageList()},handleSizeChange:function(e){this.queryParams.pageNumber=1,this.queryParams.pageSize=e,this.handleQueryPageList()},fieldLabel:function(e){var t="",n=this.getSettingByName("unit_conversion"),i={};for(var r in n)e.anjiInput&&-1!=r.toLowerCase().indexOf(e.anjiInput.unit.toLowerCase())&&(i[r]=n[r]);for(var o in i)-1!=o.toLowerCase().indexOf("text")&&(t=i[o]);return null==e?"":"anji-input"==e.inputType&&null!=e.anjiInput?void 0==e.anjiInput.defaultUnit?e.label+"("+t+")":e.label+"("+e.anjiInput.defaultUnit+")":e.label},fieldValueByAnjiInput:function(e,t){var n=this.getSettingByName("unit_conversion"),i="",r="",o=[],a={};for(var l in n)t.anjiInput&&-1!=l.toLowerCase().indexOf(t.anjiInput.unit.toLowerCase())&&(a[l]=n[l]);for(var s in a)-1!=s.toLowerCase().indexOf("conversion")&&-1==s.toLowerCase().indexOf("conversiontext")&&-1==s.toLowerCase().indexOf("conversionradiogroup")&&(i=a[s]),-1!=s.toLowerCase().indexOf("keeppoint")&&(r=a[s]),Array.isArray(a[s])&&(o=a[s]);return null==t?e:"anji-input"!=t.inputType||null==t.anjiInput?e:void 0==t.anjiInput.defaultUnit?(e/i).toFixed(r||2):(e/o.find(function(e){return e.label==t.anjiInput.defaultUnit}).value).toFixed(r||2)},fieldValueByRowRenderer:function(e,t){return null==t||"function"!=typeof t.fieldTableRowRenderer?e[t.field]:t.fieldTableRowRenderer(e)},getMainEntity:function(){return this.$refs.edit.getSaveForm()},setMainEntity:function(e){this.$refs.edit.setSaveForm(e)},switchChange:function(e,t){var n=this;return a()(r.a.mark(function i(){return r.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:Object(l.a)({url:t.url,method:"put",headers:{noPrompt:!1},data:[e.id]}).then(function(e){n.handleQueryPageList()});case 1:case"end":return i.stop()}},i,n)}))()},queryFormChange:function(e,t){"function"==typeof this.option.queryFormChange&&this.option.queryFormChange(this.queryParams,e,t)},tableRowClassName:function(e){var t=e.row,n=e.rowIndex;return!t.urgentFlag&&!t.tableRow||t.bgColor?(t.urgentFlag||t.tableRow)&&t.bgColor?"warning-row bgColor":t.urgentFlag&&t.tableRow||!t.bgColor?(n+1)%2==0?"success-row":void 0:"bgColor":"warning-row"}}},j=(n("B3E3"),Object(u.a)(_,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{class:[e.hasTreeFieldInQueryForm?"page-container":"app-container"]},[e.hasTreeFieldInQueryForm?n("div",{staticClass:"left-container"},[n("AnjiTree",{ref:"queryFormTree",attrs:{"is-open":e.queryFormTreeField.anjiTreeOption.isOpen,"enable-filter":e.queryFormTreeField.anjiTreeOption.enableFilter,"label-name":e.queryFormTreeField.label,url:e.queryFormTreeField.anjiTreeOption.url},on:{"node-click":e.handleTreeNodeCheck},model:{value:e.queryParams[e.queryFormTreeField.field],callback:function(t){e.$set(e.queryParams,e.queryFormTreeField.field,"string"==typeof t?t.trim():t)},expression:"queryParams[queryFormTreeField.field]"}})],1):e._e(),e._v(" "),n("div",{staticClass:"right-container"},[n("div",{staticClass:"top_part"},[0==e.queryFormTreeHide?n("el-form",{ref:"formSearch",staticStyle:{"border-bottom":"1px solid #dbdde3","margin-bottom":"10px"},attrs:{model:e.queryParams,"label-width":"100px"}},[n("div",{staticClass:"screenFlex"},[n("div",{staticClass:"searchFormFlex"},[n("el-row",[e._l(e.queryFormFieldExcludeTree,function(t,i){return[i<3||e.queryParams.showMoreSearch?n("el-col",{key:t.field,attrs:{span:8}},[n("el-form-item",{attrs:{label:t.label,rules:t.rules,prop:t.field}},["input"==t.inputType||"input-number"==t.inputType?n("el-input",{attrs:{placeholder:t.placeholder||"请输入",clearable:!1!==t.clearable,disabled:t.disabled},on:{change:function(n){return e.queryFormChange(t.field,n)}},model:{value:e.queryParams[t.field],callback:function(n){e.$set(e.queryParams,t.field,"string"==typeof n?n.trim():n)},expression:"queryParams[item.field]"}}):"switch"==t.inputType?n("el-switch",{attrs:{disabled:t.disabled,"active-value":t.switchOption.disableValue,"inactive-value":t.switchOption.enableValue,"active-color":"#5887fb","inactive-color":"#ccc"},on:{change:function(n){return e.queryFormChange(t.field,n)}},model:{value:e.queryParams[t.field],callback:function(n){e.$set(e.queryParams,t.field,"string"==typeof n?n.trim():n)},expression:"queryParams[item.field]"}}):"anji-select"==t.inputType?n("anji-select",{attrs:{multiple:t.anjiSelectOption.multiple,"dict-code":t.anjiSelectOption.dictCode,url:t.anjiSelectOption.url,method:t.anjiSelectOption.method,"query-param":t.anjiSelectOption.queryParam,option:t.anjiSelectOption.option,label:t.anjiSelectOption.label,"disabled-options":t.anjiSelectOption.disabledOptions,disabled:t.disabled,"merge-label":t.anjiSelectOption.mergeLabel,"local-options":t.anjiSelectOption.localOptions},on:{change:function(n){return e.queryFormChange(t.field,n)}},model:{value:e.queryParams[t.field],callback:function(n){e.$set(e.queryParams,t.field,"string"==typeof n?n.trim():n)},expression:"queryParams[item.field]"}}):t.inputType.indexOf("date")>=0?n("el-date-picker",{staticStyle:{width:"100%"},attrs:{placeholder:t.placeholder||"请选择",type:t.inputType,format:t.format,"value-format":t.valueFormat,clearable:!1!==t.clearable},on:{change:function(n){return e.queryFormChange(t.field,n)}},model:{value:e.queryParams[t.field],callback:function(n){e.$set(e.queryParams,t.field,n)},expression:"queryParams[item.field]"}}):"anji-cascader"==t.inputType?n("anji-cascader",{attrs:{disabled:t.disabled,"single-display":t.anjiCascader.singleDisplay,url:t.anjiCascader.url},on:{change:function(n){return e.queryFormChange(t.field,n,null)}},model:{value:e.queryParams[t.field],callback:function(n){e.$set(e.queryParams,t.field,"string"==typeof n?n.trim():n)},expression:"queryParams[item.field]"}}):n("el-input",{attrs:{placeholder:"组件不支持此类型表单请至组件内部自行扩展",disabled:""}})],1)],1):e._e()]})],2)],1),e._v(" "),n("div",{staticClass:"screenButtons"},[e.queryFormFieldExcludeTree.length>3?n("el-button",{staticClass:"button",attrs:{size:"mini",plain:""},on:{click:e.handleToggleMoreSearch}},[n("i",{class:e.queryParams.showMoreSearch?"el-icon-arrow-up":"el-icon-arrow-down"}),e._v("\n "+e._s(1==e.queryParams.showMoreSearch?"展开":"收起")+"\n ")]):e._e(),e._v(" "),n("el-button",{staticClass:"button",attrs:{size:"mini",plain:""},on:{click:function(t){return e.handleResetForm()}}},[e._v("重置")]),e._v(" "),n("el-button",{staticClass:"button",attrs:{size:"mini",type:"primary"},on:{click:function(t){return e.handleQueryForm("query")}}},[e._v("查询")])],1)])]):e._e(),e._v(" "),n("div",{staticStyle:{"padding-bottom":"8px"}},[e._t("buttonLeftOnTable",null,{selection:e.checkRecords}),e._v(" "),void 0==e.option.buttons.add.isShow||e.option.buttons.add.isShow?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:e.option.buttons.add.permission,expression:"option.buttons.add.permission"}],staticClass:"button",attrs:{plain:"",icon:"el-icon-plus"},on:{click:function(t){return e.handleOpenEditView("add")}}},[e._v("新增")]):e._e(),e._v(" "),void 0==e.option.buttons.delete.isShow||e.option.buttons.delete.isShow?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:e.option.buttons.delete.permission,expression:"option.buttons.delete.permission"}],staticClass:"button",attrs:{plain:"",disabled:e.disableBatchDelete,type:"danger",icon:"el-icon-delete"},on:{click:function(t){return e.handleDeleteBatch()}}},[e._v("删除")]):e._e(),e._v(" "),e._t("buttonRightOnTable",null,{selection:e.checkRecords})],2)],1),e._v(" "),n("div",{staticClass:"main_part"},[n("div",{staticClass:"page_main"},[n("el-table",{ref:"tables",staticClass:"elTable",attrs:{align:"center",data:e.records,"row-class-name":e.tableRowClassName,border:""},on:{"selection-change":e.handleSelectionChange,"sort-change":e.handleSortChange,"row-dblclick":e.handleSelectionDblclick,"row-contextmenu":e.rowContextMenu}},[n("el-table-column",{attrs:{fixed:"",type:"selection",width:"50",align:"center"}}),e._v(" "),e.tableExpandColumns.length>0?n("el-table-column",{attrs:{type:"expand"},scopedSlots:e._u([{key:"default",fn:function(t){return e._l(e.tableExpandColumns,function(i){return n("p",{key:i.field,staticClass:"table-expand-item"},[n("span",{staticClass:"titel"},[e._v(" "+e._s(i.label)+": ")]),e._v(" "),n("span",[e._v(e._s(t.row[i.field]))])])})}}],null,!1,3354752618)}):e._e(),e._v(" "),n("el-table-column",{attrs:{label:"序号","min-width":"50",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[e._v("\n "+e._s(e.queryParams.pageSize*(e.queryParams.pageNumber-1)+t.$index+1)+"\n ")]}}])}),e._v(" "),e._l(e.option.columns,function(t,i){return[1!=t.tableHide&&"expand"!=t.columnType?n("el-table-column",{key:i,attrs:{prop:t.field,label:e.fieldLabel(t),"min-width":t.minWidth||110,sortable:t.sortable,"show-overflow-tooltip":!0,align:"center"},scopedSlots:e._u([{key:"default",fn:function(i){return["imgPreview"==t.columnType?n("div",[n("el-image",{staticStyle:{width:"25%",height:"50%"},attrs:{fit:"contain",src:i.row[t.field],"preview-src-list":[i.row[t.field]]}})],1):n("div",["switch"!=t.inputType||t.colorStyle?"anji-input"==t.inputType?n("span",[e._v(e._s(e.fieldValueByAnjiInput(i.row[t.field],t)))]):t.mergeColumn?n("span",[e._v(e._s(i.row[t.field])+"("+e._s(i.row[t.mergeColumn])+")")]):t.colorStyle?n("span",{class:t.colorStyle[i.row[t.editField]]},[e._v(e._s(e.fieldValueByRowRenderer(i.row,t)))]):n("span",[e._v(e._s(e.fieldValueByRowRenderer(i.row,t)))]):n("span",[n("el-switch",{attrs:{"active-value":1,"inactive-value":0,"active-color":"#5887fb","inactive-color":"#ccc"},on:{change:function(n){return e.switchChange(i.row,t.switchOption)}},model:{value:i.row[t.field],callback:function(n){e.$set(i.row,t.field,"string"==typeof n?n.trim():n)},expression:"scope.row[item.field]"}})],1)])]}}],null,!0)}):e._e()]}),e._v(" "),n("el-table-column",{attrs:{align:"center",fixed:"right",label:"操作",width:e.option.buttons.customButton&&e.option.buttons.customButton.operationWidth?e.option.buttons.customButton.operationWidth:100},scopedSlots:e._u([{key:"default",fn:function(t){return[e._t("rowButton",null,{msg:t.row}),e._v(" "),void 0==e.option.buttons.edit.isShow||e.option.buttons.edit.isShow?n("el-button",{attrs:{type:"text",size:"small"},on:{click:function(n){return e.handleOpenEditView("edit",t.row)}}},[e._v("编辑")]):e._e(),e._v(" "),0==e.hasCustomButtonInRowMore&&void 0==e.option.buttons.delete.isShow||e.option.buttons.edit.isShow?n("el-button",{attrs:{type:"text",size:"small"},on:{click:function(n){return e.handleDeleteBatch(t.row)}}},[e._v("删除")]):e._e(),e._v(" "),e.hasCustomButtonInRowMore?n("el-dropdown",{attrs:{trigger:"click"}},[n("span",{staticClass:"el-dropdown-link"},[e._v("更多"),n("i",{staticClass:"el-icon-caret-bottom el-icon--right"})]),e._v(" "),n("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[n("el-dropdown-item",{staticClass:"clearfix"},[e._t("rowButtonInMore",null,{msg:t.row}),e._v(" "),void 0==e.option.buttons.delete.isShow||e.option.buttons.edit.isShow?n("el-button",{attrs:{type:"text",size:"small"},on:{click:function(n){return e.handleDeleteBatch(t.row)}}},[e._v("删除")]):e._e()],2)],1)],1):e._e()]}}],null,!0)})],2),e._v(" "),n("div",{staticClass:"page_bottom"},[n("div",{staticClass:"pagination"},[n("div",[e._t("tableSelectionBtn",null,{selection:e.checkRecords})],2),e._v(" "),n("el-pagination",{directives:[{name:"show",rawName:"v-show",value:e.total>0,expression:"total > 0"}],attrs:{background:"","current-page":e.queryParams.pageNumber,"page-sizes":e.$pageSizeAll,"page-size":e.queryParams.pageSize,layout:"total, prev, pager, next, jumper, sizes",total:e.total},on:{"update:currentPage":function(t){return e.$set(e.queryParams,"pageNumber",t)},"update:current-page":function(t){return e.$set(e.queryParams,"pageNumber",t)},"size-change":e.handleSizeChange,"current-change":e.handleCurrentChange}})],1)])],1)]),e._v(" "),n("EditDialog",{ref:"edit",attrs:{"submit-detail-data":e.option.submitDetailData,"handle-detail-data":e.option.handleDetailData,option:e.option,"model-type":e.editDialogModelType,visible:e.editDialogOpen,"row-data":e.editDialogRowData},on:{closeEvent:e.editDialogClosedEvent},scopedSlots:e._u([{key:"customCard",fn:function(){return[e._t("cardInEditPage")]},proxy:!0},{key:"editBtn",fn:function(t){return[e._t("editBtnPage",null,{rowData:t})]}}],null,!0)})],1),e._v(" "),e._t("pageSection"),e._v(" "),n("anji-contextMenu",{attrs:{visible:e.isShowRowContextMenu,"style-obj":e.contextMenuConfigStyle},on:{"update:visible":function(t){e.isShowRowContextMenu=t}}},e._l(e.option.contextMenu,function(t,i){return n("div",{key:i,staticClass:"contextMenu"},[n("el-button",{staticClass:"contextMenuItem",attrs:{type:"text",disabled:t.disabled},on:{click:function(n){return e.handleContextMenuItem(t)}}},[e._v(e._s(t.label))])],1)}),0)],2)},[],!1,null,"1b349198",null));j.options.__file="anji-crud.vue";t.default=j.exports},sdkc:function(e,t,n){"use strict";var i=n("VGgK");n.n(i).a},sm2R:function(e,t,n){"use strict";n.d(t,"a",function(){return o}),n.d(t,"b",function(){return a});var i=n("t3Un"),r=n("XS0u");function o(e){return Object(i.a)({url:"/gaeaDict/select/"+e,method:"get"})}function a(e){Object(i.a)({url:"/gaeaDict/all",method:"GET"}).then(function(t){200==t.code?(Object(r.c)("gaeaDict",t.data),null!=e&&e()):console.error("初始化数据字典到local storage失败: "+t.message)})}},sxct:function(e,t,n){"use strict";n.d(t,"a",function(){return r});var i=n("iX2V");function r(e){return i(e+"gaea")}},t3Un:function(e,t,n){"use strict";var i=n("Asgo"),r=n.n(i),o=n("f0Pt"),a=n.n(o),l=n("VCIm"),s=(n("Q2AE"),n("X4fA")),u=a.a.create({baseURL:"./",timeout:2e4});u.interceptors.request.use(function(e){return e.headers.Authorization=null==Object(s.f)()||void 0==Object(s.f)()?"":Object(s.f)(),e},function(e){r.a.reject(e)}),u.interceptors.response.use(function(e){var t=e.data;if("50008"!=t.code&&"50012"!=t.code&&"50014"!=t.code)return"200"!==t.code?(Object(l.Message)({message:t.message,type:"error",duration:5e3}),e.data):e.data;l.MessageBox.confirm("你已被登出,可以取消继续留在该页面,或者重新登录","重新登录",{confirmButtonText:"重新登录",cancelButtonText:"取消",type:"warning"}).then(function(){sessionStorage.clear(),localStorage.clear(),window.location.href="/"})},function(e){return Object(l.Message)({message:e.message,type:"error",duration:5e3}),r.a.reject(e)}),t.a=u},uYT1:function(e,t,n){},vjVy:function(e,t,n){},wTyl:function(e,t,n){"use strict";var i=n("oveC");n.n(i).a},wihr:function(e,t,n){}},[["Vtdi","runtime","chunk-libs"]]]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/axYn.1f6a10b1.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/axYn.1f6a10b1.js index 2b84bfdec..098771bc7 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/axYn.1f6a10b1.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/axYn.1f6a10b1.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["axYn"],{axYn:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return t}),o.d(n,"language",function(){return r});var t={comments:{lineComment:"'"},brackets:[["(",")"],["[","]"],["If","EndIf"],["While","EndWhile"],["For","EndFor"],["Sub","EndSub"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]}]},r={defaultToken:"",tokenPostfix:".sb",ignoreCase:!0,brackets:[{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"keyword.tag-if",open:"If",close:"EndIf"},{token:"keyword.tag-while",open:"While",close:"EndWhile"},{token:"keyword.tag-for",open:"For",close:"EndFor"},{token:"keyword.tag-sub",open:"Sub",close:"EndSub"}],keywords:["Else","ElseIf","EndFor","EndIf","EndSub","EndWhile","For","Goto","If","Step","Sub","Then","To","While"],tagwords:["If","Sub","While","For"],operators:[">","<","<>","<=",">=","And","Or","+","-","*","/","="],identifier:/[a-zA-Z_][\w]*/,symbols:/[=><:+\-*\/%\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/(@identifier)(?=[.])/,"type"],[/@identifier/,{cases:{"@keywords":{token:"keyword.$0"},"@operators":"operator","@default":"variable.name"}}],[/([.])(@identifier)/,{cases:{$2:["delimiter","type.member"],"@default":""}}],[/\d*\.\d+/,"number.float"],[/\d+/,"number"],[/[()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":"delimiter"}}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"]],whitespace:[[/[ \t\r\n]+/,""],[/(\').*$/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"C?/,"string","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["axYn"],{axYn:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return t}),o.d(n,"language",function(){return r});var t={comments:{lineComment:"'"},brackets:[["(",")"],["[","]"],["If","EndIf"],["While","EndWhile"],["For","EndFor"],["Sub","EndSub"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]}]},r={defaultToken:"",tokenPostfix:".sb",ignoreCase:!0,brackets:[{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"keyword.tag-if",open:"If",close:"EndIf"},{token:"keyword.tag-while",open:"While",close:"EndWhile"},{token:"keyword.tag-for",open:"For",close:"EndFor"},{token:"keyword.tag-sub",open:"Sub",close:"EndSub"}],keywords:["Else","ElseIf","EndFor","EndIf","EndSub","EndWhile","For","Goto","If","Step","Sub","Then","To","While"],tagwords:["If","Sub","While","For"],operators:[">","<","<>","<=",">=","And","Or","+","-","*","/","="],identifier:/[a-zA-Z_][\w]*/,symbols:/[=><:+\-*\/%\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/(@identifier)(?=[.])/,"type"],[/@identifier/,{cases:{"@keywords":{token:"keyword.$0"},"@operators":"operator","@default":"variable.name"}}],[/([.])(@identifier)/,{cases:{$2:["delimiter","type.member"],"@default":""}}],[/\d*\.\d+/,"number.float"],[/\d+/,"number"],[/[()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":"delimiter"}}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"]],whitespace:[[/[ \t\r\n]+/,""],[/(\').*$/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"C?/,"string","@pop"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/buUZ.f8cd38c8.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/buUZ.f8cd38c8.js index 57a5483f6..19c368c53 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/buUZ.f8cd38c8.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/buUZ.f8cd38c8.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["buUZ"],{buUZ:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",function(){return o}),s.d(n,"language",function(){return t});var o={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},t={defaultToken:"",tokenPostfix:".ini",escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^\[[^\]]*\]/,"metatag"],[/(^\w+)(\s*)(\=)/,["key","","delimiter"]],{include:"@whitespace"},[/\d+/,"number"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,""],[/^\s*[#;].*$/,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["buUZ"],{buUZ:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",function(){return o}),s.d(n,"language",function(){return t});var o={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},t={defaultToken:"",tokenPostfix:".ini",escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^\[[^\]]*\]/,"metatag"],[/(^\w+)(\s*)(\=)/,["key","","delimiter"]],{include:"@whitespace"},[/\d+/,"number"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,""],[/^\s*[#;].*$/,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/bzgp.abf1ce97.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/bzgp.abf1ce97.js index 8a00afaae..bc0993244 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/bzgp.abf1ce97.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/bzgp.abf1ce97.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["bzgp"],{bzgp:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return s});var o={comments:{lineComment:"#"}},s={defaultToken:"keyword",ignoreCase:!0,tokenPostfix:".azcli",str:/[^#\s]/,tokenizer:{root:[{include:"@comment"},[/\s-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":{token:"key.identifier",next:"@type"}}}],[/^-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":{token:"key.identifier",next:"@type"}}}]],type:[{include:"@comment"},[/-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":"key.identifier"}}],[/@str+\s*/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}]],comment:[[/#.*$/,{cases:{"@eos":{token:"comment",next:"@popall"}}}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["bzgp"],{bzgp:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return s});var o={comments:{lineComment:"#"}},s={defaultToken:"keyword",ignoreCase:!0,tokenPostfix:".azcli",str:/[^#\s]/,tokenizer:{root:[{include:"@comment"},[/\s-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":{token:"key.identifier",next:"@type"}}}],[/^-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":{token:"key.identifier",next:"@type"}}}]],type:[{include:"@comment"},[/-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":"key.identifier"}}],[/@str+\s*/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}]],comment:[[/#.*$/,{cases:{"@eos":{token:"comment",next:"@popall"}}}]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-0f7e.2361843c.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-0f7e.2361843c.js index 1f913c8a0..417b9f114 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-0f7e.2361843c.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-0f7e.2361843c.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-0f7e"],{GE2C:function(e,t,i){"use strict";var l=i("yBWt");i.n(l).a},lAHl:function(e,t,i){"use strict";i.r(t);var l=i("t3Un");function n(e){return Object(l.a)({url:"/file/pageList",method:"GET",params:e})}function a(e){return Object(l.a)({url:"/file",method:"post",data:e})}function r(e){return Object(l.a)({url:"/file/delete/batch",method:"POST",data:e})}function u(e){return Object(l.a)({url:"/file",method:"put",data:e})}function o(e){return Object(l.a)({url:"/file/"+e.id,method:"get",params:e})}var d=i("X4fA"),s={name:"File",components:{anjiCrud:i("sYqA").default},data:function(){return{selectedList:[],uploadUrl:".//file/upload",crudOption:{title:"文件管理",labelWidth:"120px",queryFormFields:[{inputType:"input",label:"文件路径",field:"filePath"}],buttons:{query:{api:n,permission:"fileManage:query",sort:"create_time",order:"DESC"},queryByPrimarykey:{api:o,permission:"fileManage:query"},add:{api:a,permission:"fileManage:upload",isShow:!1},delete:{api:r,permission:"fileManage:delete"},edit:{api:u,permission:"fileManage:update",isShow:!1},customButton:{operationWidth:160}},columns:[{label:"",field:"id",primaryKey:!0,tableHide:!0,editHide:!0},{label:"图片缩略图",field:"urlPath",columnType:"imgPreview",editHide:!0,placeholder:"",disabled:!1},{label:"文件标识",placeholder:"",field:"fileId",editField:"fileId",tableHide:!0,inputType:"input",rules:[{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:!1},{label:"文件类型",placeholder:"",field:"fileType",editField:"fileType",inputType:"input",rules:[{min:1,max:1024,message:"不超过1024个字符",trigger:"blur"}],disabled:!1},{label:"文件路径",placeholder:"",field:"filePath",editField:"filePath",inputType:"input",rules:[{min:1,max:1024,message:"不超过1024个字符",trigger:"blur"}],disabled:!1},{label:"url路径",placeholder:"",field:"urlPath",editField:"urlPath",inputType:"input",rules:[{min:1,max:1024,message:"不超过1024个字符",trigger:"blur"}],disabled:!1},{label:"内容说明",placeholder:"",field:"fileInstruction",editField:"fileInstruction",inputType:"input",rules:[{min:1,max:1024,message:"不超过1024个字符",trigger:"blur"}],disabled:!1},{label:"创建人",field:"createByView",columnType:"expand",inputType:"input",disabled:!0},{label:"创建时间",field:"createTime",columnType:"expand",inputType:"input",disabled:!0}]}}},computed:{headers:function(){return{Authorization:Object(d.f)()}}},methods:{handleUpload:function(e,t,i){this.$refs.listPage.handleQueryForm(),this.$refs.upload.clearFiles()},handleError:function(){this.$message({message:"上传失败!",type:"error"})},downloadFile:function(e){window.open(e.urlPath)},customButtom:function(e){this.downloadFile(e.msg)},copyUrlPath:function(e){this.copyToClip(e.msg.urlPath),this.$message({message:"已将url路径复制至剪切板!",type:"success"})},copyToClip:function(e,t){var i=document.createElement("input");i.setAttribute("value",e),document.body.appendChild(i),i.select(),document.execCommand("copy"),document.body.removeChild(i)}}},p=(i("GE2C"),i("ZrdR")),c=Object(p.a)(s,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("anji-crud",{ref:"listPage",attrs:{option:e.crudOption},scopedSlots:e._u([{key:"buttonLeftOnTable",fn:function(){return[i("el-upload",{ref:"upload",staticClass:"el-upload",attrs:{action:e.uploadUrl,headers:e.headers,"on-success":e.handleUpload,"on-error":e.handleError,"show-file-list":!1,limit:1}},[i("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"fileManage:upload",expression:"'fileManage:upload'"}],attrs:{type:"primary",icon:"el-icon"}},[e._v("文件上传")])],1)]},proxy:!0},{key:"edit",fn:function(t){return[i("el-button",{attrs:{type:"text"},on:{click:function(i){return e.copyUrlPath(t)}}},[e._v("复制url")])]}},{key:"rowButton",fn:function(t){return[i("el-button",{attrs:{type:"text"},on:{click:function(i){return e.customButtom(t)}}},[e._v("下载")])]}}])})},[],!1,null,"52313b6e",null);c.options.__file="index.vue";t.default=c.exports},yBWt:function(e,t,i){}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-0f7e"],{GE2C:function(e,t,i){"use strict";var l=i("yBWt");i.n(l).a},lAHl:function(e,t,i){"use strict";i.r(t);var l=i("t3Un");function n(e){return Object(l.a)({url:"/file/pageList",method:"GET",params:e})}function a(e){return Object(l.a)({url:"/file",method:"post",data:e})}function r(e){return Object(l.a)({url:"/file/delete/batch",method:"POST",data:e})}function u(e){return Object(l.a)({url:"/file",method:"put",data:e})}function o(e){return Object(l.a)({url:"/file/"+e.id,method:"get",params:e})}var d=i("X4fA"),s={name:"File",components:{anjiCrud:i("sYqA").default},data:function(){return{selectedList:[],uploadUrl:".//file/upload",crudOption:{title:"文件管理",labelWidth:"120px",queryFormFields:[{inputType:"input",label:"文件路径",field:"filePath"}],buttons:{query:{api:n,permission:"fileManage:query",sort:"create_time",order:"DESC"},queryByPrimarykey:{api:o,permission:"fileManage:query"},add:{api:a,permission:"fileManage:upload",isShow:!1},delete:{api:r,permission:"fileManage:delete"},edit:{api:u,permission:"fileManage:update",isShow:!1},customButton:{operationWidth:160}},columns:[{label:"",field:"id",primaryKey:!0,tableHide:!0,editHide:!0},{label:"图片缩略图",field:"urlPath",columnType:"imgPreview",editHide:!0,placeholder:"",disabled:!1},{label:"文件标识",placeholder:"",field:"fileId",editField:"fileId",tableHide:!0,inputType:"input",rules:[{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:!1},{label:"文件类型",placeholder:"",field:"fileType",editField:"fileType",inputType:"input",rules:[{min:1,max:1024,message:"不超过1024个字符",trigger:"blur"}],disabled:!1},{label:"文件路径",placeholder:"",field:"filePath",editField:"filePath",inputType:"input",rules:[{min:1,max:1024,message:"不超过1024个字符",trigger:"blur"}],disabled:!1},{label:"url路径",placeholder:"",field:"urlPath",editField:"urlPath",inputType:"input",rules:[{min:1,max:1024,message:"不超过1024个字符",trigger:"blur"}],disabled:!1},{label:"内容说明",placeholder:"",field:"fileInstruction",editField:"fileInstruction",inputType:"input",rules:[{min:1,max:1024,message:"不超过1024个字符",trigger:"blur"}],disabled:!1},{label:"创建人",field:"createByView",columnType:"expand",inputType:"input",disabled:!0},{label:"创建时间",field:"createTime",columnType:"expand",inputType:"input",disabled:!0}]}}},computed:{headers:function(){return{Authorization:Object(d.f)()}}},methods:{handleUpload:function(e,t,i){this.$refs.listPage.handleQueryForm(),this.$refs.upload.clearFiles()},handleError:function(){this.$message({message:"上传失败!",type:"error"})},downloadFile:function(e){window.open(e.urlPath)},customButtom:function(e){this.downloadFile(e.msg)},copyUrlPath:function(e){this.copyToClip(e.msg.urlPath),this.$message({message:"已将url路径复制至剪切板!",type:"success"})},copyToClip:function(e,t){var i=document.createElement("input");i.setAttribute("value",e),document.body.appendChild(i),i.select(),document.execCommand("copy"),document.body.removeChild(i)}}},p=(i("GE2C"),i("ZrdR")),c=Object(p.a)(s,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("anji-crud",{ref:"listPage",attrs:{option:e.crudOption},scopedSlots:e._u([{key:"buttonLeftOnTable",fn:function(){return[i("el-upload",{ref:"upload",staticClass:"el-upload",attrs:{action:e.uploadUrl,headers:e.headers,"on-success":e.handleUpload,"on-error":e.handleError,"show-file-list":!1,limit:1}},[i("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"fileManage:upload",expression:"'fileManage:upload'"}],attrs:{type:"primary",icon:"el-icon"}},[e._v("文件上传")])],1)]},proxy:!0},{key:"edit",fn:function(t){return[i("el-button",{attrs:{type:"text"},on:{click:function(i){return e.copyUrlPath(t)}}},[e._v("复制url")])]}},{key:"rowButton",fn:function(t){return[i("el-button",{attrs:{type:"text"},on:{click:function(i){return e.customButtom(t)}}},[e._v("下载")])]}}])})},[],!1,null,"52313b6e",null);c.options.__file="index.vue";t.default=c.exports},yBWt:function(e,t,i){}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-1911.a65b1232.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-1911.a65b1232.js index 5c5146714..a36a8e064 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-1911.a65b1232.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-1911.a65b1232.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-1911","VxcK"],{VxcK:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return i}),t.d(n,"language",function(){return r});var o="undefined"==typeof monaco?self.monaco:monaco,i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:o.languages.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:o.languages.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:o.languages.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:o.languages.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},r={defaultToken:"invalid",tokenPostfix:".ts",keywords:["abstract","as","break","case","catch","class","continue","const","constructor","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","infer","instanceof","interface","is","keyof","let","module","namespace","never","new","null","package","private","protected","public","readonly","require","global","return","set","static","super","switch","symbol","this","throw","true","try","type","typeof","unique","var","void","while","with","yield","async","await","of"],typeKeywords:["any","boolean","number","object","string","undefined"],operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<",">",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([gimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}}},dstw:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return i}),t.d(n,"language",function(){return r});var o=t("VxcK"),i=("undefined"==typeof monaco?self.monaco:monaco,o.conf),r={defaultToken:"invalid",tokenPostfix:".js",keywords:["break","case","catch","class","continue","const","constructor","debugger","default","delete","do","else","export","extends","false","finally","for","from","function","get","if","import","in","instanceof","let","new","null","return","set","super","switch","symbol","this","throw","true","try","typeof","undefined","var","void","while","with","yield","async","await","of"],typeKeywords:[],operators:o.language.operators,symbols:o.language.symbols,escapes:o.language.escapes,digits:o.language.digits,octaldigits:o.language.octaldigits,binarydigits:o.language.binarydigits,hexdigits:o.language.hexdigits,regexpctl:o.language.regexpctl,regexpesc:o.language.regexpesc,tokenizer:o.language.tokenizer}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-1911","VxcK"],{VxcK:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return i}),t.d(n,"language",function(){return r});var o="undefined"==typeof monaco?self.monaco:monaco,i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:o.languages.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:o.languages.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:o.languages.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:o.languages.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},r={defaultToken:"invalid",tokenPostfix:".ts",keywords:["abstract","as","break","case","catch","class","continue","const","constructor","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","infer","instanceof","interface","is","keyof","let","module","namespace","never","new","null","package","private","protected","public","readonly","require","global","return","set","static","super","switch","symbol","this","throw","true","try","type","typeof","unique","var","void","while","with","yield","async","await","of"],typeKeywords:["any","boolean","number","object","string","undefined"],operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<",">",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([gimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}}},dstw:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return i}),t.d(n,"language",function(){return r});var o=t("VxcK"),i=("undefined"==typeof monaco?self.monaco:monaco,o.conf),r={defaultToken:"invalid",tokenPostfix:".js",keywords:["break","case","catch","class","continue","const","constructor","debugger","default","delete","do","else","export","extends","false","finally","for","from","function","get","if","import","in","instanceof","let","new","null","return","set","super","switch","symbol","this","throw","true","try","typeof","undefined","var","void","while","with","yield","async","await","of"],typeKeywords:[],operators:o.language.operators,symbols:o.language.symbols,escapes:o.language.escapes,digits:o.language.digits,octaldigits:o.language.octaldigits,binarydigits:o.language.binarydigits,hexdigits:o.language.hexdigits,regexpctl:o.language.regexpctl,regexpesc:o.language.regexpesc,tokenizer:o.language.tokenizer}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-191b.585be6a2.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-191b.585be6a2.js index 04fa535d9..627f3d0ae 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-191b.585be6a2.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-191b.585be6a2.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-191b"],{CJ5O:function(e,t,r){"use strict";var a=r("cLjf"),i=r.n(a),o=r("hDQ3"),n=r.n(o),s=r("sm2R"),l={name:"GetDictionary",props:{dictKey:String,updataDict:String,value:String},data:function(){return{dictionary:"",dictionaryOptions:[]}},watch:{dictKey:{immediate:!0,handler:function(){this.getSystem()}},value:{handler:function(e){this.dictionary=e},deep:!0}},created:function(){this.getSystem()},mounted:function(){this.dictionary=this.value},methods:{getSystem:function(){var e=this;return n()(i.a.mark(function t(){var r,a,o;return i.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(s.a)(e.dictKey);case 2:if(r=t.sent,a=r.code,o=r.data,"200"==a){t.next=7;break}return t.abrupt("return");case 7:e.dictionaryOptions=o;case 8:case"end":return t.stop()}},t,e)}))()},selectChange:function(e){this.$emit("input",e)}}},u=(r("rVG9"),r("ZrdR")),c=Object(u.a)(l,function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("el-select",{attrs:{placeholder:"请选择",clearable:"",size:"mini"},on:{change:e.selectChange},model:{value:e.dictionary,callback:function(t){e.dictionary=t},expression:"dictionary"}},e._l(e.dictionaryOptions,function(e){return r("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)},[],!1,null,"23d4be90",null);c.options.__file="index.vue";t.a=c.exports},Yfch:function(e,t,r){"use strict";function a(e,t,r){""==t||void 0==t||null==t?r():/^[_a-zA-Z0-9]+$/.test(t)?r():r(new Error("英文字母、数字或下划线"))}r.d(t,"a",function(){return a})},ZjmF:function(e,t,r){"use strict";r.r(t);var a=r("t3Un");function i(e){return Object(a.a)({url:"dataSource/pageList",method:"GET",params:e})}function o(e){return Object(a.a)({url:"dataSource",method:"post",data:e})}function n(e){return Object(a.a)({url:"dataSource/delete/batch",method:"post",data:e})}function s(e){return Object(a.a)({url:"dataSource",method:"put",data:e})}function l(e){return Object(a.a)({url:"dataSource/"+e.id,method:"get",params:{accessKey:e.accessKey}})}function u(e){return Object(a.a)({url:"/dataSource/testConnection",method:"post",data:e})}var c=r("omC7"),d=r.n(c),p=r("cLjf"),m=r.n(p),f=r("hDQ3"),g=r.n(f),b=r("sm2R"),y=r("CJ5O"),h=r("Yfch"),v={name:"Support",components:{Dictionary:y.a},props:{visib:{required:!0,type:Boolean,default:!1},dataSource:{required:!1,type:Object,default:function(){return""}}},data:function(){return{dictionaryOptions:[],selectedList:[],clickType:"",formData:{},list:null,totalCount:0,totalPage:0,listLoading:!0,dialogFormVisible:!1,basicDialog:!1,params:{sourceName:"",sourceCode:"",sourceType:"",pageNumber:1,pageSize:10,order:"DESC",sort:"update_time"},dialogForm:{sourceName:"",sourceCode:"",sourceType:"",sourceDesc:"",sourceConfig:""},dataLink:[],rules:{sourceType:[{required:!0,message:"数据集名称必选",trigger:"change"}],sourceCode:[{required:!0,message:"数据集编码必填",trigger:"blur"},{validator:h.a,trigger:"blur"}],sourceName:[{required:!0,message:"数据源名称必选",trigger:"blur"}]},value:"",updataDisabled:!1,testReplyCode:null}},methods:{setDataSource:function(){var e=this;return g()(m.a.mark(function t(){var r,a,i,o,n;return m.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(e.dialogForm={sourceName:"",sourceCode:"",sourceType:"",sourceDesc:"",sourceConfig:""},!e.dataSource.id){t.next=14;break}return t.next=4,l(e.dataSource);case 4:if(r=t.sent,a=r.code,i=r.data,"200"==a){t.next=9;break}return t.abrupt("return");case 9:e.dialogForm=i,o=e.dialogForm,n=[],e.dictionaryOptions.map(function(e){if(e.id==o.sourceType){n=JSON.parse(e.extend);for(var t=JSON.parse(o.sourceConfig),r=0;r")):null:e.match("--")?r(f("comment","--\x3e")):e.match("DOCTYPE",!0,!0)?(e.eatWhile(/[\w\._\-]/),r(function e(t){return function(r,n){for(var i;null!=(i=r.next());){if("<"==i)return n.tokenize=e(t+1),n.tokenize(r,n);if(">"==i){if(1==t){n.tokenize=d;break}return n.tokenize=e(t-1),n.tokenize(r,n)}}return"meta"}}(1))):null:e.eat("?")?(e.eatWhile(/[\w\._\-]/),t.tokenize=f("meta","?>"),"meta"):(o=e.eat("/")?"closeTag":"openTag",t.tokenize=p,"tag bracket"):"&"==n?(e.eat("#")?e.eat("x")?e.eatWhile(/[a-fA-F\d]/)&&e.eat(";"):e.eatWhile(/[\d]/)&&e.eat(";"):e.eatWhile(/[\w\.\-:]/)&&e.eat(";"))?"atom":"error":(e.eatWhile(/[^&<]/),null)}function p(e,t){var r=e.next();if(">"==r||"/"==r&&e.eat(">"))return t.tokenize=d,o=">"==r?"endTag":"selfcloseTag","tag bracket";if("="==r)return o="equals",null;if("<"==r){t.tokenize=d,t.state=b,t.tagName=t.tagStart=null;var n=t.tokenize(e,t);return n?n+" tag error":"tag error"}return/[\'\"]/.test(r)?(t.tokenize=function(e){var t=function(t,r){for(;!t.eol();)if(t.next()==e){r.tokenize=p;break}return"string"};return t.isInAttribute=!0,t}(r),t.stringStartCol=e.column(),t.tokenize(e,t)):(e.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function f(e,t){return function(r,n){for(;!r.eol();){if(r.match(t)){n.tokenize=d;break}r.next()}return e}}function h(e){return e&&e.toLowerCase()}function m(e){e.context&&(e.context=e.context.prev)}function g(e,t){for(var r;;){if(!e.context)return;if(r=e.context.tagName,!l.contextGrabbers.hasOwnProperty(h(r))||!l.contextGrabbers[h(r)].hasOwnProperty(h(t)))return;m(e)}}function b(e,t,r){return"openTag"==e?(r.tagStart=t.column(),v):"closeTag"==e?k:b}function v(e,t,r){return"word"==e?(r.tagName=t.current(),a="tag",x):l.allowMissingTagName&&"endTag"==e?(a="tag bracket",x(e,0,r)):(a="error",v)}function k(e,t,r){if("word"==e){var n=t.current();return r.context&&r.context.tagName!=n&&l.implicitlyClosed.hasOwnProperty(h(r.context.tagName))&&m(r),r.context&&r.context.tagName==n||!1===l.matchClosing?(a="tag",y):(a="tag error",w)}return l.allowMissingTagName&&"endTag"==e?(a="tag bracket",y(e,0,r)):(a="error",w)}function y(e,t,r){return"endTag"!=e?(a="error",y):(m(r),b)}function w(e,t,r){return a="error",y(e,0,r)}function x(e,t,r){if("word"==e)return a="attribute",A;if("endTag"==e||"selfcloseTag"==e){var n=r.tagName,i=r.tagStart;return r.tagName=r.tagStart=null,"selfcloseTag"==e||l.autoSelfClosers.hasOwnProperty(h(n))?g(r,n):(g(r,n),r.context=new function(e,t,r){this.prev=e.context,this.tagName=t||"",this.indent=e.indented,this.startOfLine=r,(l.doNotIndent.hasOwnProperty(t)||e.context&&e.context.noIndent)&&(this.noIndent=!0)}(r,n,i==r.indented)),b}return a="error",x}function A(e,t,r){return"equals"==e?S:(l.allowMissing||(a="error"),x(e,0,r))}function S(e,t,r){return"string"==e?z:"word"==e&&l.allowUnquoted?(a="string",x):(a="error",x(e,0,r))}function z(e,t,r){return"string"==e?z:x(e,0,r)}return d.isInText=!0,{startState:function(e){var t={tokenize:d,state:b,indented:e||0,tagName:null,tagStart:null,context:null};return null!=e&&(t.baseIndent=e),t},token:function(e,t){if(!t.tagName&&e.sol()&&(t.indented=e.indentation()),e.eatSpace())return null;o=null;var r=t.tokenize(e,t);return(r||o)&&"comment"!=r&&(a=null,t.state=t.state(o||r,e,t),a&&(r="error"==a?r+" error":a)),r},indent:function(t,r,n){var i=t.context;if(t.tokenize.isInAttribute)return t.tagStart==t.indented?t.stringStartCol+1:t.indented+s;if(i&&i.noIndent)return e.Pass;if(t.tokenize!=p&&t.tokenize!=d)return n?n.match(/^(\s*)/)[0].length:0;if(t.tagName)return!1!==l.multilineTagIndentPastTag?t.tagStart+t.tagName.length+2:t.tagStart+s*(l.multilineTagIndentFactor||1);if(l.alignCDATA&&/$/,blockCommentStart:"\x3c!--",blockCommentEnd:"--\x3e",configuration:l.htmlMode?"html":"xml",helperType:l.htmlMode?"html":"xml",skipAttribute:function(e){e.state==S&&(e.state=x)},xmlCurrentTag:function(e){return e.tagName?{name:e.tagName,close:"closeTag"==e.type}:null},xmlCurrentContext:function(e){for(var t=[],r=e.context;r;r=r.prev)t.push(r.tagName);return t.reverse()}}}),e.defineMIME("text/xml","xml"),e.defineMIME("application/xml","xml"),e.mimeModes.hasOwnProperty("text/html")||e.defineMIME("text/html",{name:"xml",htmlMode:!0})}(r("xhvv"))},"9YiL":function(e,t,r){!function(e){"use strict";e.multiplexingMode=function(t){var r=Array.prototype.slice.call(arguments,1);function n(e,t,r,n){if("string"==typeof t){var i=e.indexOf(t,r);return n&&i>-1?i+t.length:i}var o=t.exec(r?e.slice(r):e);return o?o.index+r+(n?o[0].length:0):-1}return{startState:function(){return{outer:e.startState(t),innerActive:null,inner:null,startingInner:!1}},copyState:function(r){return{outer:e.copyState(t,r.outer),innerActive:r.innerActive,inner:r.innerActive&&e.copyState(r.innerActive.mode,r.inner),startingInner:r.startingInner}},token:function(i,o){if(o.innerActive){var a=o.innerActive,s=i.string;if(!a.close&&i.sol())return o.innerActive=o.inner=null,this.token(i,o);var l=a.close&&!o.startingInner?n(s,a.close,i.pos,a.parseDelimiters):-1;if(l==i.pos&&!a.parseDelimiters)return i.match(a.close),o.innerActive=o.inner=null,a.delimStyle&&a.delimStyle+" "+a.delimStyle+"-close";l>-1&&(i.string=s.slice(0,l));var c=a.mode.token(i,o.inner);return l>-1?i.string=s:i.pos>i.start&&(o.startingInner=!1),l==i.pos&&a.parseDelimiters&&(o.innerActive=o.inner=null),a.innerStyle&&(c=c?c+" "+a.innerStyle:a.innerStyle),c}for(var u=1/0,s=i.string,d=0;d]=?|\?:|\~)/,O=h(u),N=m(d),R=new RegExp(/^\-(moz|ms|o|webkit)-/i),I=m(p),$="",_={};y.length=0?n:k,e.context=new W(r,t.indentation()+n,e.context),r}function U(e,t){var r=e.context.indent-k;return t=t||!1,e.context=e.context.prev,t&&(e.context.indent=r),e.context.type}function Z(e,t,r,n){for(var i=n||1;i>0;i--)r.context=r.context.prev;return function(e,t,r){return _[r.context.type](e,t,r)}(e,t,r)}function H(e){return e.toLowerCase()in w}function G(e){return(e=e.toLowerCase())in A||e in E}function K(e){return e.toLowerCase()in N}function V(e){return e.toLowerCase().match(R)}function Y(e){var t=e.toLowerCase(),r="variable-2";return H(e)?r="tag":K(e)?r="block-keyword":G(e)?r="property":t in z||t in I?r="atom":"return"==t||t in C?r="keyword":e.match(/^[A-Z]/)&&(r="string"),r}function J(e,t){return te(t)&&("{"==e||"]"==e||"hash"==e||"qualifier"==e)||"block-mixin"==e}function Q(e,t){return"{"==e&&t.match(/^\s*\$?[\w-]+/i,!1)}function X(e,t){return":"==e&&t.match(/^[a-z-]+/,!1)}function ee(e){return e.sol()||e.string.match(new RegExp("^\\s*"+function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}(e.current())))}function te(e){return e.eol()||e.match(/^\s*$/,!1)}function re(e){var t=/^\s*[-_]*[a-z0-9]+[\w-]*/i,r="string"==typeof e?e.match(t):e.string.match(t);return r?r[0].replace(/^\s*/,""):""}return _.block=function(e,t,r){if("comment"==e&&ee(t)||","==e&&te(t)||"mixin"==e)return D(r,t,"block",0);if(Q(e,t))return D(r,t,"interpolation");if(te(t)&&"]"==e&&!/^\s*(\.|#|:|\[|\*|&)/.test(t.string)&&!H(re(t)))return D(r,t,"block",0);if(J(e,t))return D(r,t,"block");if("}"==e&&te(t))return D(r,t,"block",0);if("variable-name"==e)return t.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/)||K(re(t))?D(r,t,"variableName"):D(r,t,"variableName",0);if("="==e)return te(t)||K(re(t))?D(r,t,"block"):D(r,t,"block",0);if("*"==e&&(te(t)||t.match(/\s*(,|\.|#|\[|:|{)/,!1)))return v="tag",D(r,t,"block");if(X(e,t))return D(r,t,"pseudo");if(/@(font-face|media|supports|(-moz-)?document)/.test(e))return D(r,t,te(t)?"block":"atBlock");if(/@(-(moz|ms|o|webkit)-)?keyframes$/.test(e))return D(r,t,"keyframes");if(/@extends?/.test(e))return D(r,t,"extend",0);if(e&&"@"==e.charAt(0))return t.indentation()>0&&G(t.current().slice(1))?(v="variable-2","block"):/(@import|@require|@charset)/.test(e)?D(r,t,"block",0):D(r,t,"block");if("reference"==e&&te(t))return D(r,t,"block");if("("==e)return D(r,t,"parens");if("vendor-prefixes"==e)return D(r,t,"vendorPrefixes");if("word"==e){var n=t.current();if("property"==(v=Y(n)))return ee(t)?D(r,t,"block",0):(v="atom","block");if("tag"==v){if(/embed|menu|pre|progress|sub|table/.test(n)&&G(re(t)))return v="atom","block";if(t.string.match(new RegExp("\\[\\s*"+n+"|"+n+"\\s*\\]")))return v="atom","block";if(x.test(n)&&(ee(t)&&t.string.match(/=/)||!ee(t)&&!t.string.match(/^(\s*\.|#|\&|\[|\/|>|\*)/)&&!H(re(t))))return v="variable-2",K(re(t))?"block":D(r,t,"block",0);if(te(t))return D(r,t,"block")}if("block-keyword"==v)return v="keyword",t.current(/(if|unless)/)&&!ee(t)?"block":D(r,t,"block");if("return"==n)return D(r,t,"block",0);if("variable-2"==v&&t.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/))return D(r,t,"block")}return r.context.type},_.parens=function(e,t,r){if("("==e)return D(r,t,"parens");if(")"==e)return"parens"==r.context.prev.type?U(r):t.string.match(/^[a-z][\w-]*\(/i)&&te(t)||K(re(t))||/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(re(t))||!t.string.match(/^-?[a-z][\w-\.\[\]\'\"]*\s*=/)&&H(re(t))?D(r,t,"block"):t.string.match(/^[\$-]?[a-z][\w-\.\[\]\'\"]*\s*=/)||t.string.match(/^\s*(\(|\)|[0-9])/)||t.string.match(/^\s+[a-z][\w-]*\(/i)||t.string.match(/^\s+[\$-]?[a-z]/i)?D(r,t,"block",0):te(t)?D(r,t,"block"):D(r,t,"block",0);if(e&&"@"==e.charAt(0)&&G(t.current().slice(1))&&(v="variable-2"),"word"==e){var n=t.current();"tag"==(v=Y(n))&&x.test(n)&&(v="variable-2"),"property"!=v&&"to"!=n||(v="atom")}return"variable-name"==e?D(r,t,"variableName"):X(e,t)?D(r,t,"pseudo"):r.context.type},_.vendorPrefixes=function(e,t,r){return"word"==e?(v="property",D(r,t,"block",0)):U(r)},_.pseudo=function(e,t,r){return G(re(t.string))?Z(e,t,r):(t.match(/^[a-z-]+/),v="variable-3",te(t)?D(r,t,"block"):U(r))},_.atBlock=function(e,t,r){if("("==e)return D(r,t,"atBlock_parens");if(J(e,t))return D(r,t,"block");if(Q(e,t))return D(r,t,"interpolation");if("word"==e){var n=t.current().toLowerCase();if("tag"==(v=/^(only|not|and|or)$/.test(n)?"keyword":M.hasOwnProperty(n)?"tag":L.hasOwnProperty(n)?"attribute":j.hasOwnProperty(n)?"property":S.hasOwnProperty(n)?"string-2":Y(t.current()))&&te(t))return D(r,t,"block")}return"operator"==e&&/^(not|and|or)$/.test(t.current())&&(v="keyword"),r.context.type},_.atBlock_parens=function(e,t,r){if("{"==e||"}"==e)return r.context.type;if(")"==e)return te(t)?D(r,t,"block"):D(r,t,"atBlock");if("word"==e){var n=t.current().toLowerCase();return v=Y(n),/^(max|min)/.test(n)&&(v="property"),"tag"==v&&(v=x.test(n)?"variable-2":"atom"),r.context.type}return _.atBlock(e,t,r)},_.keyframes=function(e,t,r){return"0"==t.indentation()&&("}"==e&&ee(t)||"]"==e||"hash"==e||"qualifier"==e||H(t.current()))?Z(e,t,r):"{"==e?D(r,t,"keyframes"):"}"==e?ee(t)?U(r,!0):D(r,t,"keyframes"):"unit"==e&&/^[0-9]+\%$/.test(t.current())?D(r,t,"keyframes"):"word"==e&&"block-keyword"==(v=Y(t.current()))?(v="keyword",D(r,t,"keyframes")):/@(font-face|media|supports|(-moz-)?document)/.test(e)?D(r,t,te(t)?"block":"atBlock"):"mixin"==e?D(r,t,"block",0):r.context.type},_.interpolation=function(e,t,r){return"{"==e&&U(r)&&D(r,t,"block"),"}"==e?t.string.match(/^\s*(\.|#|:|\[|\*|&|>|~|\+|\/)/i)||t.string.match(/^\s*[a-z]/i)&&H(re(t))?D(r,t,"block"):!t.string.match(/^(\{|\s*\&)/)||t.match(/\s*[\w-]/,!1)?D(r,t,"block",0):D(r,t,"block"):"variable-name"==e?D(r,t,"variableName",0):("word"==e&&"tag"==(v=Y(t.current()))&&(v="atom"),r.context.type)},_.extend=function(e,t,r){return"["==e||"="==e?"extend":"]"==e?U(r):"word"==e?(v=Y(t.current()),"extend"):U(r)},_.variableName=function(e,t,r){return"string"==e||"["==e||"]"==e||t.current().match(/^(\.|\$)/)?(t.current().match(/^\.[\w-]+/i)&&(v="variable-2"),"variableName"):Z(e,t,r)},{startState:function(e){return{tokenize:null,state:"block",context:new W("block",e||0,null)}},token:function(e,t){return!t.tokenize&&e.eatSpace()?null:((g=(t.tokenize||function(e,t){if($=e.string.match(/(^[\w-]+\s*=\s*$)|(^\s*[\w-]+\s*=\s*[\w-])|(^\s*(\.|#|@|\$|\&|\[|\d|\+|::?|\{|\>|~|\/)?\s*[\w-]*([a-z0-9-]|\*|\/\*)(\(|,)?)/),t.context.line.firstWord=$?$[0].replace(/^\s*/,""):"",t.context.line.indent=e.indentation(),f=e.peek(),e.match("//"))return e.skipToEnd(),["comment","comment"];if(e.match("/*"))return t.tokenize=B,B(e,t);if('"'==f||"'"==f)return e.next(),t.tokenize=F(f),t.tokenize(e,t);if("@"==f)return e.next(),e.eatWhile(/[\w\\-]/),["def",e.current()];if("#"==f){if(e.next(),e.match(/^[0-9a-f]{3}([0-9a-f]([0-9a-f]{2}){0,2})?\b(?!-)/i))return["atom","atom"];if(e.match(/^[a-z][\w-]*/i))return["builtin","hash"]}return e.match(R)?["meta","vendor-prefixes"]:e.match(/^-?[0-9]?\.?[0-9]/)?(e.eatWhile(/[a-z%]/i),["number","unit"]):"!"==f?(e.next(),[e.match(/^(important|optional)/i)?"keyword":"operator","important"]):"."==f&&e.match(/^\.[a-z][\w-]*/i)?["qualifier","qualifier"]:e.match(T)?("("==e.peek()&&(t.tokenize=q),["property","word"]):e.match(/^[a-z][\w-]*\(/i)?(e.backUp(1),["keyword","mixin"]):e.match(/^(\+|-)[a-z][\w-]*\(/i)?(e.backUp(1),["keyword","block-mixin"]):e.string.match(/^\s*&/)&&e.match(/^[-_]+[a-z][\w-]*/)?["qualifier","qualifier"]:e.match(/^(\/|&)(-|_|:|\.|#|[a-z])/)?(e.backUp(1),["variable-3","reference"]):e.match(/^&{1}\s*$/)?["variable-3","reference"]:e.match(O)?["operator","operator"]:e.match(/^\$?[-_]*[a-z0-9]+[\w-]*/i)?e.match(/^(\.|\[)[\w-\'\"\]]+/i,!1)&&!H(e.current())?(e.match("."),["variable-2","variable-name"]):["variable-2","word"]:e.match(P)?["operator",e.current()]:/[:;,{}\[\]\(\)]/.test(f)?(e.next(),[null,f]):(e.next(),[null,null])})(e,t))&&"object"==typeof g&&(b=g[1],g=g[0]),v=g,t.state=_[t.state](b,e,t),v)},indent:function(e,t,r){var n=e.context,i=t&&t.charAt(0),o=n.indent,a=re(t),s=r.match(/^\s*/)[0].replace(/\t/g,y).length,l=e.context.prev?e.context.prev.line.firstWord:"",c=e.context.prev?e.context.prev.line.indent:s;return n.prev&&("}"==i&&("block"==n.type||"atBlock"==n.type||"keyframes"==n.type)||")"==i&&("parens"==n.type||"atBlock_parens"==n.type)||"{"==i&&"at"==n.type)?o=n.indent-k:/(\})/.test(i)||(/@|\$|\d/.test(i)||/^\{/.test(t)||/^\s*\/(\/|\*)/.test(t)||/^\s*\/\*/.test(l)||/^\s*[\w-\.\[\]\'\"]+\s*(\?|:|\+)?=/i.test(t)||/^(\+|-)?[a-z][\w-]*\(/i.test(t)||/^return/.test(t)||K(a)?o=s:/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(i)||H(a)?o=/\,\s*$/.test(l)?c:/^\s+/.test(r)&&(/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(l)||H(l))?s<=c?c:c+k:s:/,\s*$/.test(r)||!V(a)&&!G(a)||(o=K(l)?s<=c?c:c+k:/^\{/.test(l)?s<=c?s:c+k:V(l)||G(l)?s>=c?c:s:/^(\.|#|:|\[|\*|&|@|\+|\-|>|~|\/)/.test(l)||/=\s*$/.test(l)||H(l)||/^\$[\w-\.\[\]\'\"]/.test(l)?c+k:s)),o},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:"//",fold:"indent"}});var t=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","bgsound","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","nobr","noframes","noscript","object","ol","optgroup","option","output","p","param","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","track","u","ul","var","video"],r=["domain","regexp","url-prefix","url"],n=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],i=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid","dynamic-range","video-dynamic-range"],o=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode","font-smoothing","osx-font-smoothing"],a=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],s=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],l=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],c=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","compact","condensed","conic-gradient","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","flex","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","high","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","matrix","matrix3d","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeating-conic-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scale","scale3d","scaleX","scaleY","scaleZ","scroll","scrollbar","scroll-position","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","spell-out","square","square-button","standard","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","symbolic","symbols","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","x-large","x-small","xor","xx-large","xx-small","bicubic","optimizespeed","grayscale","row","row-reverse","wrap","wrap-reverse","column-reverse","flex-start","flex-end","space-between","space-around","unset"],u=["in","and","or","not","is not","is a","is","isnt","defined","if unless"],d=["for","if","else","unless","from","to"],p=["null","true","false","href","title","type","not-allowed","readonly","disabled"],f=t.concat(r,n,i,o,a,l,c,s,u,d,p,["@font-face","@keyframes","@media","@viewport","@page","@host","@supports","@block","@css"]);function h(e){return e=e.sort(function(e,t){return t>e}),new RegExp("^(("+e.join(")|(")+"))\\b")}function m(e){for(var t={},r=0;r|[#\/]([A-Za-z_]\w*)/,token:"keyword"},{regex:/(?:else|this)\b/,token:"keyword"},{regex:/\d+/i,token:"number"},{regex:/=|~|@|true|false/,token:"atom"},{regex:/(?:\.\.\/)*(?:[A-Za-z_][\w\.]*)+/,token:"variable-2"}],dash_comment:[{regex:/--\}\}/,pop:!0,token:"comment"},{regex:/./,token:"comment"}],comment:[{regex:/\}\}/,pop:!0,token:"comment"},{regex:/./,token:"comment"}],meta:{blockCommentStart:"{{--",blockCommentEnd:"--}}"}}),e.defineMode("handlebars",function(t,r){var n=e.getMode(t,"handlebars-tags");return r&&r.base?e.multiplexingMode(e.getMode(t,r.base),{open:"{{",close:/\}\}\}?/,mode:n,parseDelimiters:!0}):n}),e.defineMIME("text/x-handlebars-template","handlebars")}(r("xhvv"),r("pQAd"),r("9YiL"))},aDsr:function(e,t,r){!function(e){"use strict";e.defineMode("coffeescript",function(e,t){var r="error";function n(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var i=/^(?:->|=>|\+[+=]?|-[\-=]?|\*[\*=]?|\/[\/=]?|[=!]=|<[><]?=?|>>?=?|%=?|&=?|\|=?|\^=?|\~|!|\?|(or|and|\|\||&&|\?)=)/,o=/^(?:[()\[\]{},:`=;]|\.\.?\.?)/,a=/^[_A-Za-z$][_A-Za-z$0-9]*/,s=/^@[_A-Za-z$][_A-Za-z$0-9]*/,l=n(["and","or","not","is","isnt","in","instanceof","typeof"]),c=["for","while","loop","if","unless","else","switch","try","catch","finally","class"],u=n(c.concat(["break","by","continue","debugger","delete","do","in","of","new","return","then","this","@","throw","when","until","extends"]));c=n(c);var d=/^('{3}|\"{3}|['\"])/,p=/^(\/{3}|\/)/,f=n(["Infinity","NaN","undefined","null","true","false","on","off","yes","no"]);function h(e,t){if(e.sol()){null===t.scope.align&&(t.scope.align=!1);var n=t.scope.offset;if(e.eatSpace()){var c=e.indentation();return c>n&&"coffee"==t.scope.type?"indent":c0&&v(e,t)}if(e.eatSpace())return null;var h=e.peek();if(e.match("####"))return e.skipToEnd(),"comment";if(e.match("###"))return t.tokenize=g,t.tokenize(e,t);if("#"===h)return e.skipToEnd(),"comment";if(e.match(/^-?[0-9\.]/,!1)){var b=!1;if(e.match(/^-?\d*\.\d+(e[\+\-]?\d+)?/i)&&(b=!0),e.match(/^-?\d+\.\d*/)&&(b=!0),e.match(/^-?\.\d+/)&&(b=!0),b)return"."==e.peek()&&e.backUp(1),"number";var k=!1;if(e.match(/^-?0x[0-9a-f]+/i)&&(k=!0),e.match(/^-?[1-9]\d*(e[\+\-]?\d+)?/)&&(k=!0),e.match(/^-?0(?![\dx])/i)&&(k=!0),k)return"number"}if(e.match(d))return t.tokenize=m(e.current(),!1,"string"),t.tokenize(e,t);if(e.match(p)){if("/"!=e.current()||e.match(/^.*\//,!1))return t.tokenize=m(e.current(),!0,"string-2"),t.tokenize(e,t);e.backUp(1)}return e.match(i)||e.match(l)?"operator":e.match(o)?"punctuation":e.match(f)?"atom":e.match(s)||t.prop&&e.match(a)?"property":e.match(u)?"keyword":e.match(a)?"variable":(e.next(),r)}function m(e,n,i){return function(o,a){for(;!o.eol();)if(o.eatWhile(/[^'"\/\\]/),o.eat("\\")){if(o.next(),n&&o.eol())return i}else{if(o.match(e))return a.tokenize=h,i;o.eat(/['"\/]/)}return n&&(t.singleLineStringErrors?i=r:a.tokenize=h),i}}function g(e,t){for(;!e.eol();){if(e.eatWhile(/[^#]/),e.match("###")){t.tokenize=h;break}e.eatWhile("#")}return"comment"}function b(t,r,n){n=n||"coffee";for(var i=0,o=!1,a=null,s=r.scope;s;s=s.prev)if("coffee"===s.type||"}"==s.type){i=s.offset+e.indentUnit;break}"coffee"!==n?(o=null,a=t.column()+t.current().length):r.scope.align&&(r.scope.align=!1),r.scope={offset:i,type:n,prev:r.scope,align:o,alignOffset:a}}function v(e,t){if(t.scope.prev){if("coffee"===t.scope.type){for(var r=e.indentation(),n=!1,i=t.scope;i;i=i.prev)if(r===i.offset){n=!0;break}if(!n)return!0;for(;t.scope.prev&&t.scope.offset!==r;)t.scope=t.scope.prev;return!1}return t.scope=t.scope.prev,!1}}var k={startState:function(e){return{tokenize:h,scope:{offset:e||0,type:"coffee",prev:null,align:!1},prop:!1,dedent:0}},token:function(e,t){var n=null===t.scope.align&&t.scope;n&&e.sol()&&(n.align=!1);var i=function(e,t){var n=t.tokenize(e,t),i=e.current();"return"===i&&(t.dedent=!0),(("->"===i||"=>"===i)&&e.eol()||"indent"===n)&&b(e,t);var o="[({".indexOf(i);if(-1!==o&&b(e,t,"])}".slice(o,o+1)),c.exec(i)&&b(e,t),"then"==i&&v(e,t),"dedent"===n&&v(e,t))return r;if(-1!==(o="])}".indexOf(i))){for(;"coffee"==t.scope.type&&t.scope.prev;)t.scope=t.scope.prev;t.scope.type==i&&(t.scope=t.scope.prev)}return t.dedent&&e.eol()&&("coffee"==t.scope.type&&t.scope.prev&&(t.scope=t.scope.prev),t.dedent=!1),n}(e,t);return i&&"comment"!=i&&(n&&(n.align=!0),t.prop="punctuation"==i&&"."==e.current()),i},indent:function(e,t){if(e.tokenize!=h)return 0;var r=e.scope,n=t&&"])}".indexOf(t.charAt(0))>-1;if(n)for(;"coffee"==r.type&&r.prev;)r=r.prev;var i=n&&r.type===t.charAt(0);return r.align?r.alignOffset-(i?1:0):(i?r.prev:r).offset},lineComment:"#",fold:"indent"};return k}),e.defineMIME("application/vnd.coffeescript","coffeescript"),e.defineMIME("text/x-coffeescript","coffeescript"),e.defineMIME("text/coffeescript","coffeescript")}(r("xhvv"))},"g+yg":function(e,t,r){!function(e){"use strict";var t={script:[["lang",/(javascript|babel)/i,"javascript"],["type",/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i,"javascript"],["type",/./,"text/plain"],[null,null,"javascript"]],style:[["lang",/^css$/i,"css"],["type",/^(text\/)?(x-)?(stylesheet|css)$/i,"css"],["type",/./,"text/plain"],[null,null,"css"]]},r={};function n(e,t){var n=e.match(function(e){var t=r[e];return t||(r[e]=new RegExp("\\s+"+e+"\\s*=\\s*('|\")?([^'\"]+)('|\")?\\s*"))}(t));return n?/^\s*(.*?)\s*$/.exec(n[2])[1]:""}function i(e,t){return new RegExp((t?"^":"")+"","i")}function o(e,t){for(var r in e)for(var n=t[r]||(t[r]=[]),i=e[r],o=i.length-1;o>=0;o--)n.unshift(i[o])}e.defineMode("htmlmixed",function(r,a){var s=e.getMode(r,{name:"xml",htmlMode:!0,multilineTagIndentFactor:a.multilineTagIndentFactor,multilineTagIndentPastTag:a.multilineTagIndentPastTag,allowMissingTagName:a.allowMissingTagName}),l={},c=a&&a.tags,u=a&&a.scriptTypes;if(o(t,l),c&&o(c,l),u)for(var d=u.length-1;d>=0;d--)l.script.unshift(["type",u[d].matches,u[d].mode]);function p(t,o){var a,c=s.token(t,o.htmlState),u=/\btag\b/.test(c);if(u&&!/[<>\s\/]/.test(t.current())&&(a=o.htmlState.tagName&&o.htmlState.tagName.toLowerCase())&&l.hasOwnProperty(a))o.inTag=a+" ";else if(o.inTag&&u&&/>$/.test(t.current())){var d=/^([\S]+) (.*)/.exec(o.inTag);o.inTag=null;var f=">"==t.current()&&function(e,t){for(var r=0;r-1?e.backUp(n.length-i):n.match(/<\/?$/)&&(e.backUp(n.length),e.match(t,!1)||e.match(n)),r}(e,g,t.localMode.token(e,t.localState))},o.localMode=h,o.localState=e.startState(h,s.indent(o.htmlState,"",""))}else o.inTag&&(o.inTag+=t.current(),t.eol()&&(o.inTag+=" "));return c}return{startState:function(){var t=e.startState(s);return{token:p,inTag:null,localMode:null,localState:null,htmlState:t}},copyState:function(t){var r;return t.localState&&(r=e.copyState(t.localMode,t.localState)),{token:t.token,inTag:t.inTag,localMode:t.localMode,localState:r,htmlState:e.copyState(s,t.htmlState)}},token:function(e,t){return t.token(e,t)},indent:function(t,r,n){return!t.localMode||/^\s*<\//.test(r)?s.indent(t.htmlState,r,n):t.localMode.indent?t.localMode.indent(t.localState,r,n):e.Pass},innerMode:function(e){return{state:e.localState||e.htmlState,mode:e.localMode||s}}}},"xml","javascript","css"),e.defineMIME("text/html","htmlmixed")}(r("xhvv"),r("5RLT"),r("opU+"),r("idG/"))},"idG/":function(e,t,r){!function(e){"use strict";function t(e){for(var t={},r=0;r0;i--)r.context=r.context.prev;return T(e,t,r)}function L(e){var t=e.current().toLowerCase();o=b.hasOwnProperty(t)?"atom":g.hasOwnProperty(t)?"keyword":"variable"}var E={top:function(e,t,r){if("{"==e)return C(r,t,"block");if("}"==e&&r.context.prev)return M(r);if(y&&/@component/i.test(e))return C(r,t,"atComponentBlock");if(/^@(-moz-)?document$/i.test(e))return C(r,t,"documentTypes");if(/^@(media|supports|(-moz-)?document|import)$/i.test(e))return C(r,t,"atBlock");if(/^@(font-face|counter-style)/i.test(e))return r.stateArg=e,"restricted_atBlock_before";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/i.test(e))return"keyframes";if(e&&"@"==e.charAt(0))return C(r,t,"at");if("hash"==e)o="builtin";else if("word"==e)o="tag";else{if("variable-definition"==e)return"maybeprop";if("interpolation"==e)return C(r,t,"interpolation");if(":"==e)return"pseudo";if(v&&"("==e)return C(r,t,"parens")}return r.context.type},block:function(e,t,r){if("word"==e){var n=t.current().toLowerCase();return p.hasOwnProperty(n)?(o="property","maybeprop"):f.hasOwnProperty(n)?(o=w?"string-2":"property","maybeprop"):v?(o=t.match(/^\s*:(?:\s|$)/,!1)?"property":"tag","block"):(o+=" error","maybeprop")}return"meta"==e?"block":v||"hash"!=e&&"qualifier"!=e?E.top(e,t,r):(o="error","block")},maybeprop:function(e,t,r){return":"==e?C(r,t,"prop"):T(e,t,r)},prop:function(e,t,r){if(";"==e)return M(r);if("{"==e&&v)return C(r,t,"propBlock");if("}"==e||"{"==e)return j(e,t,r);if("("==e)return C(r,t,"parens");if("hash"!=e||/^#([0-9a-fA-f]{3,4}|[0-9a-fA-f]{6}|[0-9a-fA-f]{8})$/.test(t.current())){if("word"==e)L(t);else if("interpolation"==e)return C(r,t,"interpolation")}else o+=" error";return"prop"},propBlock:function(e,t,r){return"}"==e?M(r):"word"==e?(o="property","maybeprop"):r.context.type},parens:function(e,t,r){return"{"==e||"}"==e?j(e,t,r):")"==e?M(r):"("==e?C(r,t,"parens"):"interpolation"==e?C(r,t,"interpolation"):("word"==e&&L(t),"parens")},pseudo:function(e,t,r){return"meta"==e?"pseudo":"word"==e?(o="variable-3",r.context.type):T(e,t,r)},documentTypes:function(e,t,r){return"word"==e&&l.hasOwnProperty(t.current())?(o="tag",r.context.type):E.atBlock(e,t,r)},atBlock:function(e,t,r){if("("==e)return C(r,t,"atBlock_parens");if("}"==e||";"==e)return j(e,t,r);if("{"==e)return M(r)&&C(r,t,v?"block":"top");if("interpolation"==e)return C(r,t,"interpolation");if("word"==e){var n=t.current().toLowerCase();o="only"==n||"not"==n||"and"==n||"or"==n?"keyword":c.hasOwnProperty(n)?"attribute":u.hasOwnProperty(n)?"property":d.hasOwnProperty(n)?"keyword":p.hasOwnProperty(n)?"property":f.hasOwnProperty(n)?w?"string-2":"property":b.hasOwnProperty(n)?"atom":g.hasOwnProperty(n)?"keyword":"error"}return r.context.type},atComponentBlock:function(e,t,r){return"}"==e?j(e,t,r):"{"==e?M(r)&&C(r,t,v?"block":"top",!1):("word"==e&&(o="error"),r.context.type)},atBlock_parens:function(e,t,r){return")"==e?M(r):"{"==e||"}"==e?j(e,t,r,2):E.atBlock(e,t,r)},restricted_atBlock_before:function(e,t,r){return"{"==e?C(r,t,"restricted_atBlock"):"word"==e&&"@counter-style"==r.stateArg?(o="variable","restricted_atBlock_before"):T(e,t,r)},restricted_atBlock:function(e,t,r){return"}"==e?(r.stateArg=null,M(r)):"word"==e?(o="@font-face"==r.stateArg&&!h.hasOwnProperty(t.current().toLowerCase())||"@counter-style"==r.stateArg&&!m.hasOwnProperty(t.current().toLowerCase())?"error":"property","maybeprop"):"restricted_atBlock"},keyframes:function(e,t,r){return"word"==e?(o="variable","keyframes"):"{"==e?C(r,t,"top"):T(e,t,r)},at:function(e,t,r){return";"==e?M(r):"{"==e||"}"==e?j(e,t,r):("word"==e?o="tag":"hash"==e&&(o="builtin"),"at")},interpolation:function(e,t,r){return"}"==e?M(r):"{"==e||";"==e?j(e,t,r):("word"==e?o="variable":"variable"!=e&&"("!=e&&")"!=e&&(o="error"),"interpolation")}};return{startState:function(e){return{tokenize:null,state:n?"block":"top",stateArg:null,context:new z(n?"block":"top",e||0,null)}},token:function(e,t){if(!t.tokenize&&e.eatSpace())return null;var r=(t.tokenize||function(e,t){var r=e.next();if(s[r]){var n=s[r](e,t);if(!1!==n)return n}return"@"==r?(e.eatWhile(/[\w\\\-]/),x("def",e.current())):"="==r||("~"==r||"|"==r)&&e.eat("=")?x(null,"compare"):'"'==r||"'"==r?(t.tokenize=A(r),t.tokenize(e,t)):"#"==r?(e.eatWhile(/[\w\\\-]/),x("atom","hash")):"!"==r?(e.match(/^\s*\w*/),x("keyword","important")):/\d/.test(r)||"."==r&&e.eat(/\d/)?(e.eatWhile(/[\w.%]/),x("number","unit")):"-"!==r?/[,+>*\/]/.test(r)?x(null,"select-op"):"."==r&&e.match(/^-?[_a-z][_a-z0-9-]*/i)?x("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(r)?x(null,r):e.match(/^[\w-.]+(?=\()/)?(/^(url(-prefix)?|domain|regexp)$/i.test(e.current())&&(t.tokenize=S),x("variable callee","variable")):/[\w\\\-]/.test(r)?(e.eatWhile(/[\w\\\-]/),x("property","word")):x(null,null):/[\d.]/.test(e.peek())?(e.eatWhile(/[\w.%]/),x("number","unit")):e.match(/^-[\w\\\-]*/)?(e.eatWhile(/[\w\\\-]/),e.match(/^\s*:/,!1)?x("variable-2","variable-definition"):x("variable-2","variable")):e.match(/^\w+-/)?x("meta","meta"):void 0})(e,t);return r&&"object"==typeof r&&(i=r[1],r=r[0]),o=r,"comment"!=i&&(t.state=E[t.state](i,e,t)),o},indent:function(e,t){var r=e.context,n=t&&t.charAt(0),i=r.indent;return"prop"!=r.type||"}"!=n&&")"!=n||(r=r.prev),r.prev&&("}"!=n||"block"!=r.type&&"top"!=r.type&&"interpolation"!=r.type&&"restricted_atBlock"!=r.type?(")"!=n||"parens"!=r.type&&"atBlock_parens"!=r.type)&&("{"!=n||"at"!=r.type&&"atBlock"!=r.type)||(i=Math.max(0,r.indent-a)):(r=r.prev,i=r.indent)),i},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:k,fold:"brace"}});var r=["domain","regexp","url","url-prefix"],n=t(r),i=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],o=t(i),a=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid","orientation","device-pixel-ratio","min-device-pixel-ratio","max-device-pixel-ratio","pointer","any-pointer","hover","any-hover","prefers-color-scheme","dynamic-range","video-dynamic-range"],s=t(a),l=["landscape","portrait","none","coarse","fine","on-demand","hover","interlace","progressive","dark","light","standard","high"],c=t(l),u=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","all","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","binding","bleed","block-size","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-content","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-gap","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-gap","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","inset","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","left","letter-spacing","line-break","line-height","line-height-step","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","place-content","place-items","place-self","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotate","rotation","rotation-point","row-gap","ruby-align","ruby-overhang","ruby-position","ruby-span","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-type","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-orientation","text-outline","text-overflow","text-rendering","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","touch-action","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-select","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","paint-order","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],d=t(u),p=["accent-color","aspect-ratio","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","content-visibility","margin-block","margin-block-end","margin-block-start","margin-inline","margin-inline-end","margin-inline-start","overflow-anchor","overscroll-behavior","padding-block","padding-block-end","padding-block-start","padding-inline","padding-inline-end","padding-inline-start","scroll-snap-stop","scrollbar-3d-light-color","scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-track-color","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","shape-inside","zoom"],f=t(p),h=t(["font-display","font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"]),m=t(["additive-symbols","fallback","negative","pad","prefix","range","speak-as","suffix","symbols","system"]),g=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],b=t(g),v=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","blur","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","brightness","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","conic-gradient","contain","content","contents","content-box","context-menu","continuous","contrast","copy","counter","counters","cover","crop","cross","crosshair","cubic-bezier","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","devanagari","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","drop-shadow","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","georgian","grayscale","graytext","grid","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hard-light","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","hue","hue-rotate","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","luminosity","malayalam","manipulation","match","matrix","matrix3d","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","multiple_mask_images","multiply","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","opacity","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeating-conic-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturate","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","self-start","self-end","semi-condensed","semi-expanded","separate","sepia","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","somali","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","square-button","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"],k=t(v),y=r.concat(i).concat(a).concat(l).concat(u).concat(p).concat(g).concat(v);function w(e,t){for(var r,n=!1;null!=(r=e.next());){if(n&&"/"==r){t.tokenize=null;break}n="*"==r}return["comment","comment"]}e.registerHelper("hintWords","css",y),e.defineMIME("text/css",{documentTypes:n,mediaTypes:o,mediaFeatures:s,mediaValueKeywords:c,propertyKeywords:d,nonStandardPropertyKeywords:f,fontProperties:h,counterDescriptors:m,colorKeywords:b,valueKeywords:k,tokenHooks:{"/":function(e,t){return!!e.eat("*")&&(t.tokenize=w,w(e,t))}},name:"css"}),e.defineMIME("text/x-scss",{mediaTypes:o,mediaFeatures:s,mediaValueKeywords:c,propertyKeywords:d,nonStandardPropertyKeywords:f,colorKeywords:b,valueKeywords:k,fontProperties:h,allowNested:!0,lineComment:"//",tokenHooks:{"/":function(e,t){return e.eat("/")?(e.skipToEnd(),["comment","comment"]):e.eat("*")?(t.tokenize=w,w(e,t)):["operator","operator"]},":":function(e){return!!e.match(/^\s*\{/,!1)&&[null,null]},$:function(e){return e.match(/^[\w-]+/),e.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"]},"#":function(e){return!!e.eat("{")&&[null,"interpolation"]}},name:"css",helperType:"scss"}),e.defineMIME("text/x-less",{mediaTypes:o,mediaFeatures:s,mediaValueKeywords:c,propertyKeywords:d,nonStandardPropertyKeywords:f,colorKeywords:b,valueKeywords:k,fontProperties:h,allowNested:!0,lineComment:"//",tokenHooks:{"/":function(e,t){return e.eat("/")?(e.skipToEnd(),["comment","comment"]):e.eat("*")?(t.tokenize=w,w(e,t)):["operator","operator"]},"@":function(e){return e.eat("{")?[null,"interpolation"]:!e.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/i,!1)&&(e.eatWhile(/[\w\\\-]/),e.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"])},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"}),e.defineMIME("text/x-gss",{documentTypes:n,mediaTypes:o,mediaFeatures:s,propertyKeywords:d,nonStandardPropertyKeywords:f,fontProperties:h,counterDescriptors:m,colorKeywords:b,valueKeywords:k,supportsAtComponent:!0,tokenHooks:{"/":function(e,t){return!!e.eat("*")&&(t.tokenize=w,w(e,t))}},name:"css",helperType:"gss"})}(r("xhvv"))},jTqD:function(e,t,r){!function(e){"use strict";e.defineMode("shell",function(){var t={};function r(e,r){for(var n=0;n1&&e.eat("$");var r=e.next();return/['"({]/.test(r)?(t.tokens[0]=a(r,"("==r?"quote":"{"==r?"def":"string"),c(e,t)):(/\d/.test(r)||e.eatWhile(/\w/),t.tokens.shift(),"def")};function c(e,r){return(r.tokens[0]||function(e,r){if(e.eatSpace())return null;var n=e.sol(),i=e.next();if("\\"===i)return e.next(),null;if("'"===i||'"'===i||"`"===i)return r.tokens.unshift(a(i,"`"===i?"quote":"string")),c(e,r);if("#"===i)return n&&e.eat("!")?(e.skipToEnd(),"meta"):(e.skipToEnd(),"comment");if("$"===i)return r.tokens.unshift(l),c(e,r);if("+"===i||"="===i)return"operator";if("-"===i)return e.eat("-"),e.eatWhile(/\w/),"attribute";if("<"==i){if(e.match("<<"))return"operator";var o=e.match(/^<-?\s*['"]?([^'"]*)['"]?/);if(o)return r.tokens.unshift(function(e){return function(t,r){return t.sol()&&t.string==e&&r.tokens.shift(),t.skipToEnd(),"string-2"}}(o[1])),"string-2"}if(/\d/.test(i)&&(e.eatWhile(/\d/),e.eol()||!/\w/.test(e.peek())))return"number";e.eatWhile(/[\w-]/);var s=e.current();return"="===e.peek()&&/\w+/.test(s)?"def":t.hasOwnProperty(s)?t[s]:null})(e,r)}return{startState:function(){return{tokens:[]}},token:function(e,t){return c(e,t)},closeBrackets:"()[]{}''\"\"``",lineComment:"#",fold:"brace"}}),e.defineMIME("text/x-sh","shell"),e.defineMIME("application/x-sh","shell")}(r("xhvv"))},kefc:function(e,t,r){!function(e){"use strict";(function(e){var t={script:[["lang",/coffee(script)?/,"coffeescript"],["type",/^(?:text|application)\/(?:x-)?coffee(?:script)?$/,"coffeescript"],["lang",/^babel$/,"javascript"],["type",/^text\/babel$/,"javascript"],["type",/^text\/ecmascript-\d+$/,"javascript"]],style:[["lang",/^stylus$/i,"stylus"],["lang",/^sass$/i,"sass"],["lang",/^less$/i,"text/x-less"],["lang",/^scss$/i,"text/x-scss"],["type",/^(text\/)?(x-)?styl(us)?$/i,"stylus"],["type",/^text\/sass/i,"sass"],["type",/^(text\/)?(x-)?scss$/i,"text/x-scss"],["type",/^(text\/)?(x-)?less$/i,"text/x-less"]],template:[["lang",/^vue-template$/i,"vue"],["lang",/^pug$/i,"pug"],["lang",/^handlebars$/i,"handlebars"],["type",/^(text\/)?(x-)?pug$/i,"pug"],["type",/^text\/x-handlebars-template$/i,"handlebars"],[null,null,"vue-template"]]};e.defineMode("vue-template",function(t,r){return e.overlayMode(e.getMode(t,r.backdrop||"text/html"),{token:function(e){if(e.match(/^\{\{.*?\}\}/))return"meta mustache";for(;e.next()&&!e.match("{{",!1););return null}})}),e.defineMode("vue",function(r){return e.getMode(r,{name:"htmlmixed",tags:t})},"htmlmixed","xml","javascript","coffeescript","css","sass","stylus","pug","handlebars"),e.defineMIME("script/x-vue","vue"),e.defineMIME("text/x-vue","vue")})(r("xhvv"),r("ONUW"),r("5RLT"),r("opU+"),r("aDsr"),r("idG/"),r("vu3f"),r("Na/5"),r("u51R"),r("YAw8"))}()},pQAd:function(e,t,r){!function(e){"use strict";function t(e,t){if(!e.hasOwnProperty(t))throw new Error("Undefined state "+t+" in simple mode")}function r(e,t){if(!e)return/(?:)/;var r="";return e instanceof RegExp?(e.ignoreCase&&(r="i"),e.unicode&&(r+="u"),e=e.source):e=String(e),new RegExp((!1===t?"":"^")+"(?:"+e+")",r)}function n(e,n){(e.next||e.push)&&t(n,e.next||e.push),this.regex=r(e.regex),this.token=function(e){if(!e)return null;if(e.apply)return e;if("string"==typeof e)return e.replace(/\./g," ");for(var t=[],r=0;r2&&u.token&&"string"!=typeof u.token){for(var f=2;f-1)return e.Pass;var a=n.indent.length-1,s=t[n.state];e:for(;;){for(var l=0;lr.indentOf||r.innerModeForLine&&!t.sol()||n)return r.innerMode?(r.innerState||(r.innerState=r.innerMode.startState?e.startState(r.innerMode,t.indentation()):{}),t.hideFirstChars(r.indentOf+2,function(){return r.innerMode.token(t,r.innerState)||!0})):(t.skipToEnd(),r.indentToken);t.sol()&&(r.indentOf=1/0,r.indentToken=null,r.innerMode=null,r.innerState=null)}return l.prototype.copy=function(){var t=new l;return t.javaScriptLine=this.javaScriptLine,t.javaScriptLineExcludesColon=this.javaScriptLineExcludesColon,t.javaScriptArguments=this.javaScriptArguments,t.javaScriptArgumentsDepth=this.javaScriptArgumentsDepth,t.isInterpolating=this.isInterpolating,t.interpolationNesting=this.interpolationNesting,t.jsState=e.copyState(s,this.jsState),t.innerMode=this.innerMode,this.innerMode&&this.innerState&&(t.innerState=e.copyState(this.innerMode,this.innerState)),t.restOfLine=this.restOfLine,t.isIncludeFiltered=this.isIncludeFiltered,t.isEach=this.isEach,t.lastTag=this.lastTag,t.scriptType=this.scriptType,t.isAttrs=this.isAttrs,t.attrsNest=this.attrsNest.slice(),t.inAttributeName=this.inAttributeName,t.attributeIsType=this.attributeIsType,t.attrValue=this.attrValue,t.indentOf=this.indentOf,t.indentToken=this.indentToken,t.innerModeForLine=this.innerModeForLine,t},{startState:function(){return new l},copyState:function(e){return e.copy()},token:function(t,l){var f=p(t,l)||function(e,t){if(e.sol()&&(t.restOfLine=""),t.restOfLine){e.skipToEnd();var r=t.restOfLine;return t.restOfLine="",r}}(t,l)||function(e,t){if(t.isInterpolating){if("}"===e.peek()){if(t.interpolationNesting--,t.interpolationNesting<0)return e.next(),t.isInterpolating=!1,"punctuation"}else"{"===e.peek()&&t.interpolationNesting++;return s.token(e,t.jsState)||!0}}(t,l)||function(e,t){if(t.isIncludeFiltered){var r=u(e,t);return t.isIncludeFiltered=!1,t.restOfLine="string",r}}(t,l)||function(e,t){if(t.isEach){if(e.match(/^ in\b/))return t.javaScriptLine=!0,t.isEach=!1,r;if(e.sol()||e.eol())t.isEach=!1;else if(e.next()){for(;!e.match(/^ in\b/,!1)&&e.next(););return"variable"}}}(t,l)||function t(r,n){if(n.isAttrs){if(a[r.peek()]&&n.attrsNest.push(a[r.peek()]),n.attrsNest[n.attrsNest.length-1]===r.peek())n.attrsNest.pop();else if(r.eat(")"))return n.isAttrs=!1,"punctuation";if(n.inAttributeName&&r.match(/^[^=,\)!]+/))return"="!==r.peek()&&"!"!==r.peek()||(n.inAttributeName=!1,n.jsState=e.startState(s),"script"===n.lastTag&&"type"===r.current().trim().toLowerCase()?n.attributeIsType=!0:n.attributeIsType=!1),"attribute";var i=s.token(r,n.jsState);if(n.attributeIsType&&"string"===i&&(n.scriptType=r.current().toString()),0===n.attrsNest.length&&("string"===i||"variable"===i||"keyword"===i))try{return Function("","var x "+n.attrValue.replace(/,\s*$/,"").replace(/^!/,"")),n.inAttributeName=!0,n.attrValue="",r.backUp(r.current().length),t(r,n)}catch(e){}return n.attrValue+=r.current(),i||!0}}(t,l)||function(e,t){if(e.sol()&&(t.javaScriptLine=!1,t.javaScriptLineExcludesColon=!1),t.javaScriptLine){if(t.javaScriptLineExcludesColon&&":"===e.peek())return t.javaScriptLine=!1,void(t.javaScriptLineExcludesColon=!1);var r=s.token(e,t.jsState);return e.eol()&&(t.javaScriptLine=!1),r||!0}}(t,l)||function(e,t){if(t.javaScriptArguments){if(0===t.javaScriptArgumentsDepth&&"("!==e.peek())return void(t.javaScriptArguments=!1);if("("===e.peek()?t.javaScriptArgumentsDepth++:")"===e.peek()&&t.javaScriptArgumentsDepth--,0===t.javaScriptArgumentsDepth)return void(t.javaScriptArguments=!1);var r=s.token(e,t.jsState);return r||!0}}(t,l)||function(e,t){if(t.mixinCallAfter)return t.mixinCallAfter=!1,e.match(/^\( *[-\w]+ *=/,!1)||(t.javaScriptArguments=!0,t.javaScriptArgumentsDepth=0),!0}(t,l)||function(e){if(e.match(/^yield\b/))return"keyword"}(t)||function(e){if(e.match(/^(?:doctype) *([^\n]+)?/))return n}(t)||c(t,l)||function(e,t){if(e.match(/^case\b/))return t.javaScriptLine=!0,r}(t,l)||function(e,t){if(e.match(/^when\b/))return t.javaScriptLine=!0,t.javaScriptLineExcludesColon=!0,r}(t,l)||function(e){if(e.match(/^default\b/))return r}(t)||function(e,t){if(e.match(/^extends?\b/))return t.restOfLine="string",r}(t,l)||function(e,t){if(e.match(/^append\b/))return t.restOfLine="variable",r}(t,l)||function(e,t){if(e.match(/^prepend\b/))return t.restOfLine="variable",r}(t,l)||function(e,t){if(e.match(/^block\b *(?:(prepend|append)\b)?/))return t.restOfLine="variable",r}(t,l)||function(e,t){if(e.match(/^include\b/))return t.restOfLine="string",r}(t,l)||function(e,t){if(e.match(/^include:([a-zA-Z0-9\-]+)/,!1)&&e.match("include"))return t.isIncludeFiltered=!0,r}(t,l)||function(e,t){if(e.match(/^mixin\b/))return t.javaScriptLine=!0,r}(t,l)||function(e,t){return e.match(/^\+([-\w]+)/)?(e.match(/^\( *[-\w]+ *=/,!1)||(t.javaScriptArguments=!0,t.javaScriptArgumentsDepth=0),"variable"):e.match("+#{",!1)?(e.next(),t.mixinCallAfter=!0,c(e,t)):void 0}(t,l)||function(e,t){if(e.match(/^(if|unless|else if|else)\b/))return t.javaScriptLine=!0,r}(t,l)||function(e,t){if(e.match(/^(- *)?(each|for)\b/))return t.isEach=!0,r}(t,l)||function(e,t){if(e.match(/^while\b/))return t.javaScriptLine=!0,r}(t,l)||function(e,t){var r;if(r=e.match(/^(\w(?:[-:\w]*\w)?)\/?/))return t.lastTag=r[1].toLowerCase(),"script"===t.lastTag&&(t.scriptType="application/javascript"),"tag"}(t,l)||u(t,l)||function(e,t){if(e.match(/^(!?=|-)/))return t.javaScriptLine=!0,"punctuation"}(t,l)||function(e){if(e.match(/^#([\w-]+)/))return i}(t)||function(e){if(e.match(/^\.([\w-]+)/))return o}(t)||function(e,t){if("("==e.peek())return e.next(),t.isAttrs=!0,t.attrsNest=[],t.inAttributeName=!0,t.attrValue="",t.attributeIsType=!1,"punctuation"}(t,l)||function(e,t){if(e.match(/^&attributes\b/))return t.javaScriptArguments=!0,t.javaScriptArgumentsDepth=0,"keyword"}(t,l)||function(e){if(e.sol()&&e.eatSpace())return"indent"}(t)||function(e,t){return e.match(/^(?:\| ?| )([^\n]+)/)?"string":e.match(/^(<[^\n]*)/,!1)?(d(e,t,"htmlmixed"),t.innerModeForLine=!0,p(e,t,!0)):void 0}(t,l)||function(e,t){if(e.match(/^ *\/\/(-)?([^\n]*)/))return t.indentOf=e.indentation(),t.indentToken="comment","comment"}(t,l)||function(e){if(e.match(/^: */))return"colon"}(t)||function(e,t){if(e.eat(".")){var r=null;return"script"===t.lastTag&&-1!=t.scriptType.toLowerCase().indexOf("javascript")?r=t.scriptType.toLowerCase().replace(/"|'/g,""):"style"===t.lastTag&&(r="css"),d(e,t,r),"dot"}}(t,l)||function(e){return e.next(),null}(t);return!0===f?null:f}}},"javascript","css","htmlmixed"),e.defineMIME("text/x-pug","pug"),e.defineMIME("text/x-jade","pug")}(r("xhvv"),r("opU+"),r("idG/"),r("g+yg"))},ue2F:function(e,t,r){e.exports=function(e){function t(n){if(r[n])return r[n].exports;var i=r[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var r={};return t.m=e,t.c=r,t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=1)}([function(e,t,r){"use strict";var n=r(9);t.a={name:"VRuler",components:{},props:{position:{type:String,default:"relative",validator:function(e){return-1!==["absolute","fixed","relative","static","inherit"].indexOf(e)}},isHotKey:{type:Boolean,default:!0},isScaleRevise:{type:Boolean,default:!1},value:{type:Array,default:function(){return[]}},contentLayout:{type:Object,default:function(){return{top:0,left:0}}},parent:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},stepLength:{type:Number,default:50,validator:function(e){return e%10==0}}},data:function(){return{size:17,left_top:18,windowWidth:0,windowHeight:0,xScale:[],yScale:[],topSpacing:0,leftSpacing:0,isDrag:!1,dragFlag:"",horizontalDottedLeft:-999,verticalDottedTop:-999,rulerWidth:0,rulerHeight:0,dragLineId:"",keyCode:{r:82},rulerToggle:!0}},computed:{wrapperStyle:function(){return{width:this.windowWidth+"px",height:this.windowHeight+"px",position:this.position}},contentStyle:function(){return{left:this.contentLayout.left+"px",top:this.contentLayout.top+"px",padding:this.left_top+"px 0px 0px "+this.left_top+"px"}},lineList:function(){var e=this,t=0,r=0;return this.value.map(function(n){var i="h"===n.type;return function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}({id:n.type+"_"+(i?t++:r++),type:n.type,title:n.site.toFixed(2)+"px"},i?"top":"left",n.site/(e.stepLength/50)+e.size)})}},watch:{visible:{handler:function(e){this.rulerToggle=e},immediate:!0}},mounted:function(){Object(n.b)(document,"mousemove",this.dottedLineMove),Object(n.b)(document,"mouseup",this.dottedLineUp),Object(n.b)(document,"keyup",this.keyboard),this.init(),Object(n.b)(window,"resize",this.windowResize)},beforeDestroy:function(){Object(n.a)(document,"mousemove",this.dottedLineMove),Object(n.a)(document,"mouseup",this.dottedLineUp),Object(n.a)(document,"keyup",this.keyboard),Object(n.a)(window,"resize",this.windowResize)},methods:{init:function(){this.box(),this.scaleCalc()},windowResize:function(){this.xScale=[],this.yScale=[],this.init()},getLineStyle:function(e){var t=e.type,r=e.top,n=e.left;return"h"===t?{top:r+"px"}:{left:n+"px"}},handleDragLine:function(e){var t=e.type,r=e.id;return"h"===t?this.dragHorizontalLine(r):this.dragVerticalLine(r)},box:function(){if(this.isScaleRevise){var e=this.$refs.content,t=e.offsetLeft,r=e.offsetTop;this.getCalcRevise(this.xScale,t),this.getCalcRevise(this.yScale,r)}if(this.parent){var n=window.getComputedStyle(this.$el.parentNode,null);this.windowWidth=parseInt(n.getPropertyValue("width"),10),this.windowHeight=parseInt(n.getPropertyValue("height"),10)}else this.windowWidth=document.documentElement.clientWidth-this.leftSpacing,this.windowHeight=document.documentElement.clientHeight-this.topSpacing;this.rulerWidth=this.$refs.verticalRuler.clientWidth,this.rulerHeight=this.$refs.horizontalRuler.clientHeight,this.setSpacing()},setSpacing:function(){this.topSpacing=this.$refs.horizontalRuler.getBoundingClientRect().y,this.leftSpacing=this.$refs.verticalRuler.getBoundingClientRect().x},scaleCalc:function(){this.getCalc(this.xScale,this.windowWidth),this.getCalc(this.yScale,this.windowHeight)},getCalc:function(e,t){for(var r=0;rr.parts.length&&(n.parts.length=r.parts.length)}else{for(var a=[],i=0;i","<","==",">=","<=","\\+","-","\\!=","/","\\*","%","and","or","not",";","\\{","\\}",":"]),u=/^::?[a-zA-Z_][\w\-]*/;function d(e){return!e.peek()||e.match(/\s+$/,!1)}function p(e,t){var r=e.peek();return")"===r?(e.next(),t.tokenizer=v,"operator"):"("===r?(e.next(),e.eatSpace(),"operator"):"'"===r||'"'===r?(t.tokenizer=h(e.next()),"string"):(t.tokenizer=h(")",!1),"string")}function f(e,t){return function(r,n){return r.sol()&&r.indentation()<=e?(n.tokenizer=v,v(r,n)):(t&&r.skipTo("*/")?(r.next(),r.next(),n.tokenizer=v):r.skipToEnd(),"comment")}}function h(e,t){return null==t&&(t=!0),function r(n,i){var o=n.next(),a=n.peek(),s=n.string.charAt(n.pos-2),l="\\"!==o&&a===e||o===e&&"\\"!==s;return l?(o!==e&&t&&n.next(),d(n)&&(i.cursorHalf=0),i.tokenizer=v,"string"):"#"===o&&"{"===a?(i.tokenizer=m(r),n.next(),"operator"):"string"}}function m(e){return function(t,r){return"}"===t.peek()?(t.next(),r.tokenizer=e,"operator"):v(t,r)}}function g(e){if(0==e.indentCount){e.indentCount++;var r=e.scopes[0].offset,n=r+t.indentUnit;e.scopes.unshift({offset:n})}}function b(e){1!=e.scopes.length&&e.scopes.shift()}function v(e,t){var n=e.peek();if(e.match("/*"))return t.tokenizer=f(e.indentation(),!0),t.tokenizer(e,t);if(e.match("//"))return t.tokenizer=f(e.indentation(),!1),t.tokenizer(e,t);if(e.match("#{"))return t.tokenizer=m(v),"operator";if('"'===n||"'"===n)return e.next(),t.tokenizer=h(n),"string";if(t.cursorHalf){if("#"===n&&(e.next(),e.match(/[0-9a-fA-F]{6}|[0-9a-fA-F]{3}/)))return d(e)&&(t.cursorHalf=0),"number";if(e.match(/^-?[0-9\.]+/))return d(e)&&(t.cursorHalf=0),"number";if(e.match(/^(px|em|in)\b/))return d(e)&&(t.cursorHalf=0),"unit";if(e.match(l))return d(e)&&(t.cursorHalf=0),"keyword";if(e.match(/^url/)&&"("===e.peek())return t.tokenizer=p,d(e)&&(t.cursorHalf=0),"atom";if("$"===n)return e.next(),e.eatWhile(/[\w-]/),d(e)&&(t.cursorHalf=0),"variable-2";if("!"===n)return e.next(),t.cursorHalf=0,e.match(/^[\w]+/)?"keyword":"operator";if(e.match(c))return d(e)&&(t.cursorHalf=0),"operator";if(e.eatWhile(/[\w-]/))return d(e)&&(t.cursorHalf=0),r=e.current().toLowerCase(),a.hasOwnProperty(r)?"atom":o.hasOwnProperty(r)?"keyword":i.hasOwnProperty(r)?(t.prevProp=e.current().toLowerCase(),"property"):"tag";if(d(e))return t.cursorHalf=0,null}else{if("-"===n&&e.match(/^-\w+-/))return"meta";if("."===n){if(e.next(),e.match(/^[\w-]+/))return g(t),"qualifier";if("#"===e.peek())return g(t),"tag"}if("#"===n){if(e.next(),e.match(/^[\w-]+/))return g(t),"builtin";if("#"===e.peek())return g(t),"tag"}if("$"===n)return e.next(),e.eatWhile(/[\w-]/),"variable-2";if(e.match(/^-?[0-9\.]+/))return"number";if(e.match(/^(px|em|in)\b/))return"unit";if(e.match(l))return"keyword";if(e.match(/^url/)&&"("===e.peek())return t.tokenizer=p,"atom";if("="===n&&e.match(/^=[\w-]+/))return g(t),"meta";if("+"===n&&e.match(/^\+[\w-]+/))return"variable-3";if("@"===n&&e.match("@extend")&&(e.match(/\s*[\w]/)||b(t)),e.match(/^@(else if|if|media|else|for|each|while|mixin|function)/))return g(t),"def";if("@"===n)return e.next(),e.eatWhile(/[\w-]/),"def";if(e.eatWhile(/[\w-]/)){if(e.match(/ *: *[\w-\+\$#!\("']/,!1)){r=e.current().toLowerCase();var k=t.prevProp+"-"+r;return i.hasOwnProperty(k)?"property":i.hasOwnProperty(r)?(t.prevProp=r,"property"):s.hasOwnProperty(r)?"property":"tag"}return e.match(/ *:/,!1)?(g(t),t.cursorHalf=1,t.prevProp=e.current().toLowerCase(),"property"):e.match(/ *,/,!1)?"tag":(g(t),"tag")}if(":"===n)return e.match(u)?"variable-3":(e.next(),t.cursorHalf=1,"operator")}return e.match(c)?"operator":(e.next(),null)}return{startState:function(){return{tokenizer:v,scopes:[{offset:0,type:"sass"}],indentCount:0,cursorHalf:0,definedVars:[],definedMixins:[]}},token:function(e,r){var n=function(e,r){e.sol()&&(r.indentCount=0);var n=r.tokenizer(e,r),i=e.current();if("@return"!==i&&"}"!==i||b(r),null!==n){for(var o=e.pos-i.length,a=o+t.indentUnit*r.indentCount,s=[],l=0;l")):null:e.match("--")?r(f("comment","--\x3e")):e.match("DOCTYPE",!0,!0)?(e.eatWhile(/[\w\._\-]/),r(function e(t){return function(r,n){for(var i;null!=(i=r.next());){if("<"==i)return n.tokenize=e(t+1),n.tokenize(r,n);if(">"==i){if(1==t){n.tokenize=d;break}return n.tokenize=e(t-1),n.tokenize(r,n)}}return"meta"}}(1))):null:e.eat("?")?(e.eatWhile(/[\w\._\-]/),t.tokenize=f("meta","?>"),"meta"):(o=e.eat("/")?"closeTag":"openTag",t.tokenize=p,"tag bracket"):"&"==n?(e.eat("#")?e.eat("x")?e.eatWhile(/[a-fA-F\d]/)&&e.eat(";"):e.eatWhile(/[\d]/)&&e.eat(";"):e.eatWhile(/[\w\.\-:]/)&&e.eat(";"))?"atom":"error":(e.eatWhile(/[^&<]/),null)}function p(e,t){var r=e.next();if(">"==r||"/"==r&&e.eat(">"))return t.tokenize=d,o=">"==r?"endTag":"selfcloseTag","tag bracket";if("="==r)return o="equals",null;if("<"==r){t.tokenize=d,t.state=b,t.tagName=t.tagStart=null;var n=t.tokenize(e,t);return n?n+" tag error":"tag error"}return/[\'\"]/.test(r)?(t.tokenize=function(e){var t=function(t,r){for(;!t.eol();)if(t.next()==e){r.tokenize=p;break}return"string"};return t.isInAttribute=!0,t}(r),t.stringStartCol=e.column(),t.tokenize(e,t)):(e.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function f(e,t){return function(r,n){for(;!r.eol();){if(r.match(t)){n.tokenize=d;break}r.next()}return e}}function h(e){return e&&e.toLowerCase()}function m(e){e.context&&(e.context=e.context.prev)}function g(e,t){for(var r;;){if(!e.context)return;if(r=e.context.tagName,!l.contextGrabbers.hasOwnProperty(h(r))||!l.contextGrabbers[h(r)].hasOwnProperty(h(t)))return;m(e)}}function b(e,t,r){return"openTag"==e?(r.tagStart=t.column(),v):"closeTag"==e?k:b}function v(e,t,r){return"word"==e?(r.tagName=t.current(),a="tag",x):l.allowMissingTagName&&"endTag"==e?(a="tag bracket",x(e,0,r)):(a="error",v)}function k(e,t,r){if("word"==e){var n=t.current();return r.context&&r.context.tagName!=n&&l.implicitlyClosed.hasOwnProperty(h(r.context.tagName))&&m(r),r.context&&r.context.tagName==n||!1===l.matchClosing?(a="tag",y):(a="tag error",w)}return l.allowMissingTagName&&"endTag"==e?(a="tag bracket",y(e,0,r)):(a="error",w)}function y(e,t,r){return"endTag"!=e?(a="error",y):(m(r),b)}function w(e,t,r){return a="error",y(e,0,r)}function x(e,t,r){if("word"==e)return a="attribute",A;if("endTag"==e||"selfcloseTag"==e){var n=r.tagName,i=r.tagStart;return r.tagName=r.tagStart=null,"selfcloseTag"==e||l.autoSelfClosers.hasOwnProperty(h(n))?g(r,n):(g(r,n),r.context=new function(e,t,r){this.prev=e.context,this.tagName=t||"",this.indent=e.indented,this.startOfLine=r,(l.doNotIndent.hasOwnProperty(t)||e.context&&e.context.noIndent)&&(this.noIndent=!0)}(r,n,i==r.indented)),b}return a="error",x}function A(e,t,r){return"equals"==e?S:(l.allowMissing||(a="error"),x(e,0,r))}function S(e,t,r){return"string"==e?z:"word"==e&&l.allowUnquoted?(a="string",x):(a="error",x(e,0,r))}function z(e,t,r){return"string"==e?z:x(e,0,r)}return d.isInText=!0,{startState:function(e){var t={tokenize:d,state:b,indented:e||0,tagName:null,tagStart:null,context:null};return null!=e&&(t.baseIndent=e),t},token:function(e,t){if(!t.tagName&&e.sol()&&(t.indented=e.indentation()),e.eatSpace())return null;o=null;var r=t.tokenize(e,t);return(r||o)&&"comment"!=r&&(a=null,t.state=t.state(o||r,e,t),a&&(r="error"==a?r+" error":a)),r},indent:function(t,r,n){var i=t.context;if(t.tokenize.isInAttribute)return t.tagStart==t.indented?t.stringStartCol+1:t.indented+s;if(i&&i.noIndent)return e.Pass;if(t.tokenize!=p&&t.tokenize!=d)return n?n.match(/^(\s*)/)[0].length:0;if(t.tagName)return!1!==l.multilineTagIndentPastTag?t.tagStart+t.tagName.length+2:t.tagStart+s*(l.multilineTagIndentFactor||1);if(l.alignCDATA&&/$/,blockCommentStart:"\x3c!--",blockCommentEnd:"--\x3e",configuration:l.htmlMode?"html":"xml",helperType:l.htmlMode?"html":"xml",skipAttribute:function(e){e.state==S&&(e.state=x)},xmlCurrentTag:function(e){return e.tagName?{name:e.tagName,close:"closeTag"==e.type}:null},xmlCurrentContext:function(e){for(var t=[],r=e.context;r;r=r.prev)t.push(r.tagName);return t.reverse()}}}),e.defineMIME("text/xml","xml"),e.defineMIME("application/xml","xml"),e.mimeModes.hasOwnProperty("text/html")||e.defineMIME("text/html",{name:"xml",htmlMode:!0})}(r("xhvv"))},"9YiL":function(e,t,r){!function(e){"use strict";e.multiplexingMode=function(t){var r=Array.prototype.slice.call(arguments,1);function n(e,t,r,n){if("string"==typeof t){var i=e.indexOf(t,r);return n&&i>-1?i+t.length:i}var o=t.exec(r?e.slice(r):e);return o?o.index+r+(n?o[0].length:0):-1}return{startState:function(){return{outer:e.startState(t),innerActive:null,inner:null,startingInner:!1}},copyState:function(r){return{outer:e.copyState(t,r.outer),innerActive:r.innerActive,inner:r.innerActive&&e.copyState(r.innerActive.mode,r.inner),startingInner:r.startingInner}},token:function(i,o){if(o.innerActive){var a=o.innerActive,s=i.string;if(!a.close&&i.sol())return o.innerActive=o.inner=null,this.token(i,o);var l=a.close&&!o.startingInner?n(s,a.close,i.pos,a.parseDelimiters):-1;if(l==i.pos&&!a.parseDelimiters)return i.match(a.close),o.innerActive=o.inner=null,a.delimStyle&&a.delimStyle+" "+a.delimStyle+"-close";l>-1&&(i.string=s.slice(0,l));var c=a.mode.token(i,o.inner);return l>-1?i.string=s:i.pos>i.start&&(o.startingInner=!1),l==i.pos&&a.parseDelimiters&&(o.innerActive=o.inner=null),a.innerStyle&&(c=c?c+" "+a.innerStyle:a.innerStyle),c}for(var u=1/0,s=i.string,d=0;d]=?|\?:|\~)/,O=h(u),N=m(d),R=new RegExp(/^\-(moz|ms|o|webkit)-/i),I=m(p),$="",_={};y.length=0?n:k,e.context=new W(r,t.indentation()+n,e.context),r}function U(e,t){var r=e.context.indent-k;return t=t||!1,e.context=e.context.prev,t&&(e.context.indent=r),e.context.type}function Z(e,t,r,n){for(var i=n||1;i>0;i--)r.context=r.context.prev;return function(e,t,r){return _[r.context.type](e,t,r)}(e,t,r)}function H(e){return e.toLowerCase()in w}function G(e){return(e=e.toLowerCase())in A||e in E}function K(e){return e.toLowerCase()in N}function V(e){return e.toLowerCase().match(R)}function Y(e){var t=e.toLowerCase(),r="variable-2";return H(e)?r="tag":K(e)?r="block-keyword":G(e)?r="property":t in z||t in I?r="atom":"return"==t||t in C?r="keyword":e.match(/^[A-Z]/)&&(r="string"),r}function J(e,t){return te(t)&&("{"==e||"]"==e||"hash"==e||"qualifier"==e)||"block-mixin"==e}function Q(e,t){return"{"==e&&t.match(/^\s*\$?[\w-]+/i,!1)}function X(e,t){return":"==e&&t.match(/^[a-z-]+/,!1)}function ee(e){return e.sol()||e.string.match(new RegExp("^\\s*"+function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}(e.current())))}function te(e){return e.eol()||e.match(/^\s*$/,!1)}function re(e){var t=/^\s*[-_]*[a-z0-9]+[\w-]*/i,r="string"==typeof e?e.match(t):e.string.match(t);return r?r[0].replace(/^\s*/,""):""}return _.block=function(e,t,r){if("comment"==e&&ee(t)||","==e&&te(t)||"mixin"==e)return D(r,t,"block",0);if(Q(e,t))return D(r,t,"interpolation");if(te(t)&&"]"==e&&!/^\s*(\.|#|:|\[|\*|&)/.test(t.string)&&!H(re(t)))return D(r,t,"block",0);if(J(e,t))return D(r,t,"block");if("}"==e&&te(t))return D(r,t,"block",0);if("variable-name"==e)return t.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/)||K(re(t))?D(r,t,"variableName"):D(r,t,"variableName",0);if("="==e)return te(t)||K(re(t))?D(r,t,"block"):D(r,t,"block",0);if("*"==e&&(te(t)||t.match(/\s*(,|\.|#|\[|:|{)/,!1)))return v="tag",D(r,t,"block");if(X(e,t))return D(r,t,"pseudo");if(/@(font-face|media|supports|(-moz-)?document)/.test(e))return D(r,t,te(t)?"block":"atBlock");if(/@(-(moz|ms|o|webkit)-)?keyframes$/.test(e))return D(r,t,"keyframes");if(/@extends?/.test(e))return D(r,t,"extend",0);if(e&&"@"==e.charAt(0))return t.indentation()>0&&G(t.current().slice(1))?(v="variable-2","block"):/(@import|@require|@charset)/.test(e)?D(r,t,"block",0):D(r,t,"block");if("reference"==e&&te(t))return D(r,t,"block");if("("==e)return D(r,t,"parens");if("vendor-prefixes"==e)return D(r,t,"vendorPrefixes");if("word"==e){var n=t.current();if("property"==(v=Y(n)))return ee(t)?D(r,t,"block",0):(v="atom","block");if("tag"==v){if(/embed|menu|pre|progress|sub|table/.test(n)&&G(re(t)))return v="atom","block";if(t.string.match(new RegExp("\\[\\s*"+n+"|"+n+"\\s*\\]")))return v="atom","block";if(x.test(n)&&(ee(t)&&t.string.match(/=/)||!ee(t)&&!t.string.match(/^(\s*\.|#|\&|\[|\/|>|\*)/)&&!H(re(t))))return v="variable-2",K(re(t))?"block":D(r,t,"block",0);if(te(t))return D(r,t,"block")}if("block-keyword"==v)return v="keyword",t.current(/(if|unless)/)&&!ee(t)?"block":D(r,t,"block");if("return"==n)return D(r,t,"block",0);if("variable-2"==v&&t.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/))return D(r,t,"block")}return r.context.type},_.parens=function(e,t,r){if("("==e)return D(r,t,"parens");if(")"==e)return"parens"==r.context.prev.type?U(r):t.string.match(/^[a-z][\w-]*\(/i)&&te(t)||K(re(t))||/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(re(t))||!t.string.match(/^-?[a-z][\w-\.\[\]\'\"]*\s*=/)&&H(re(t))?D(r,t,"block"):t.string.match(/^[\$-]?[a-z][\w-\.\[\]\'\"]*\s*=/)||t.string.match(/^\s*(\(|\)|[0-9])/)||t.string.match(/^\s+[a-z][\w-]*\(/i)||t.string.match(/^\s+[\$-]?[a-z]/i)?D(r,t,"block",0):te(t)?D(r,t,"block"):D(r,t,"block",0);if(e&&"@"==e.charAt(0)&&G(t.current().slice(1))&&(v="variable-2"),"word"==e){var n=t.current();"tag"==(v=Y(n))&&x.test(n)&&(v="variable-2"),"property"!=v&&"to"!=n||(v="atom")}return"variable-name"==e?D(r,t,"variableName"):X(e,t)?D(r,t,"pseudo"):r.context.type},_.vendorPrefixes=function(e,t,r){return"word"==e?(v="property",D(r,t,"block",0)):U(r)},_.pseudo=function(e,t,r){return G(re(t.string))?Z(e,t,r):(t.match(/^[a-z-]+/),v="variable-3",te(t)?D(r,t,"block"):U(r))},_.atBlock=function(e,t,r){if("("==e)return D(r,t,"atBlock_parens");if(J(e,t))return D(r,t,"block");if(Q(e,t))return D(r,t,"interpolation");if("word"==e){var n=t.current().toLowerCase();if("tag"==(v=/^(only|not|and|or)$/.test(n)?"keyword":M.hasOwnProperty(n)?"tag":L.hasOwnProperty(n)?"attribute":j.hasOwnProperty(n)?"property":S.hasOwnProperty(n)?"string-2":Y(t.current()))&&te(t))return D(r,t,"block")}return"operator"==e&&/^(not|and|or)$/.test(t.current())&&(v="keyword"),r.context.type},_.atBlock_parens=function(e,t,r){if("{"==e||"}"==e)return r.context.type;if(")"==e)return te(t)?D(r,t,"block"):D(r,t,"atBlock");if("word"==e){var n=t.current().toLowerCase();return v=Y(n),/^(max|min)/.test(n)&&(v="property"),"tag"==v&&(v=x.test(n)?"variable-2":"atom"),r.context.type}return _.atBlock(e,t,r)},_.keyframes=function(e,t,r){return"0"==t.indentation()&&("}"==e&&ee(t)||"]"==e||"hash"==e||"qualifier"==e||H(t.current()))?Z(e,t,r):"{"==e?D(r,t,"keyframes"):"}"==e?ee(t)?U(r,!0):D(r,t,"keyframes"):"unit"==e&&/^[0-9]+\%$/.test(t.current())?D(r,t,"keyframes"):"word"==e&&"block-keyword"==(v=Y(t.current()))?(v="keyword",D(r,t,"keyframes")):/@(font-face|media|supports|(-moz-)?document)/.test(e)?D(r,t,te(t)?"block":"atBlock"):"mixin"==e?D(r,t,"block",0):r.context.type},_.interpolation=function(e,t,r){return"{"==e&&U(r)&&D(r,t,"block"),"}"==e?t.string.match(/^\s*(\.|#|:|\[|\*|&|>|~|\+|\/)/i)||t.string.match(/^\s*[a-z]/i)&&H(re(t))?D(r,t,"block"):!t.string.match(/^(\{|\s*\&)/)||t.match(/\s*[\w-]/,!1)?D(r,t,"block",0):D(r,t,"block"):"variable-name"==e?D(r,t,"variableName",0):("word"==e&&"tag"==(v=Y(t.current()))&&(v="atom"),r.context.type)},_.extend=function(e,t,r){return"["==e||"="==e?"extend":"]"==e?U(r):"word"==e?(v=Y(t.current()),"extend"):U(r)},_.variableName=function(e,t,r){return"string"==e||"["==e||"]"==e||t.current().match(/^(\.|\$)/)?(t.current().match(/^\.[\w-]+/i)&&(v="variable-2"),"variableName"):Z(e,t,r)},{startState:function(e){return{tokenize:null,state:"block",context:new W("block",e||0,null)}},token:function(e,t){return!t.tokenize&&e.eatSpace()?null:((g=(t.tokenize||function(e,t){if($=e.string.match(/(^[\w-]+\s*=\s*$)|(^\s*[\w-]+\s*=\s*[\w-])|(^\s*(\.|#|@|\$|\&|\[|\d|\+|::?|\{|\>|~|\/)?\s*[\w-]*([a-z0-9-]|\*|\/\*)(\(|,)?)/),t.context.line.firstWord=$?$[0].replace(/^\s*/,""):"",t.context.line.indent=e.indentation(),f=e.peek(),e.match("//"))return e.skipToEnd(),["comment","comment"];if(e.match("/*"))return t.tokenize=B,B(e,t);if('"'==f||"'"==f)return e.next(),t.tokenize=F(f),t.tokenize(e,t);if("@"==f)return e.next(),e.eatWhile(/[\w\\-]/),["def",e.current()];if("#"==f){if(e.next(),e.match(/^[0-9a-f]{3}([0-9a-f]([0-9a-f]{2}){0,2})?\b(?!-)/i))return["atom","atom"];if(e.match(/^[a-z][\w-]*/i))return["builtin","hash"]}return e.match(R)?["meta","vendor-prefixes"]:e.match(/^-?[0-9]?\.?[0-9]/)?(e.eatWhile(/[a-z%]/i),["number","unit"]):"!"==f?(e.next(),[e.match(/^(important|optional)/i)?"keyword":"operator","important"]):"."==f&&e.match(/^\.[a-z][\w-]*/i)?["qualifier","qualifier"]:e.match(T)?("("==e.peek()&&(t.tokenize=q),["property","word"]):e.match(/^[a-z][\w-]*\(/i)?(e.backUp(1),["keyword","mixin"]):e.match(/^(\+|-)[a-z][\w-]*\(/i)?(e.backUp(1),["keyword","block-mixin"]):e.string.match(/^\s*&/)&&e.match(/^[-_]+[a-z][\w-]*/)?["qualifier","qualifier"]:e.match(/^(\/|&)(-|_|:|\.|#|[a-z])/)?(e.backUp(1),["variable-3","reference"]):e.match(/^&{1}\s*$/)?["variable-3","reference"]:e.match(O)?["operator","operator"]:e.match(/^\$?[-_]*[a-z0-9]+[\w-]*/i)?e.match(/^(\.|\[)[\w-\'\"\]]+/i,!1)&&!H(e.current())?(e.match("."),["variable-2","variable-name"]):["variable-2","word"]:e.match(P)?["operator",e.current()]:/[:;,{}\[\]\(\)]/.test(f)?(e.next(),[null,f]):(e.next(),[null,null])})(e,t))&&"object"==typeof g&&(b=g[1],g=g[0]),v=g,t.state=_[t.state](b,e,t),v)},indent:function(e,t,r){var n=e.context,i=t&&t.charAt(0),o=n.indent,a=re(t),s=r.match(/^\s*/)[0].replace(/\t/g,y).length,l=e.context.prev?e.context.prev.line.firstWord:"",c=e.context.prev?e.context.prev.line.indent:s;return n.prev&&("}"==i&&("block"==n.type||"atBlock"==n.type||"keyframes"==n.type)||")"==i&&("parens"==n.type||"atBlock_parens"==n.type)||"{"==i&&"at"==n.type)?o=n.indent-k:/(\})/.test(i)||(/@|\$|\d/.test(i)||/^\{/.test(t)||/^\s*\/(\/|\*)/.test(t)||/^\s*\/\*/.test(l)||/^\s*[\w-\.\[\]\'\"]+\s*(\?|:|\+)?=/i.test(t)||/^(\+|-)?[a-z][\w-]*\(/i.test(t)||/^return/.test(t)||K(a)?o=s:/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(i)||H(a)?o=/\,\s*$/.test(l)?c:/^\s+/.test(r)&&(/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(l)||H(l))?s<=c?c:c+k:s:/,\s*$/.test(r)||!V(a)&&!G(a)||(o=K(l)?s<=c?c:c+k:/^\{/.test(l)?s<=c?s:c+k:V(l)||G(l)?s>=c?c:s:/^(\.|#|:|\[|\*|&|@|\+|\-|>|~|\/)/.test(l)||/=\s*$/.test(l)||H(l)||/^\$[\w-\.\[\]\'\"]/.test(l)?c+k:s)),o},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:"//",fold:"indent"}});var t=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","bgsound","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","nobr","noframes","noscript","object","ol","optgroup","option","output","p","param","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","track","u","ul","var","video"],r=["domain","regexp","url-prefix","url"],n=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],i=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid","dynamic-range","video-dynamic-range"],o=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode","font-smoothing","osx-font-smoothing"],a=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],s=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],l=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],c=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","compact","condensed","conic-gradient","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","flex","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","high","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","matrix","matrix3d","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeating-conic-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scale","scale3d","scaleX","scaleY","scaleZ","scroll","scrollbar","scroll-position","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","spell-out","square","square-button","standard","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","symbolic","symbols","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","x-large","x-small","xor","xx-large","xx-small","bicubic","optimizespeed","grayscale","row","row-reverse","wrap","wrap-reverse","column-reverse","flex-start","flex-end","space-between","space-around","unset"],u=["in","and","or","not","is not","is a","is","isnt","defined","if unless"],d=["for","if","else","unless","from","to"],p=["null","true","false","href","title","type","not-allowed","readonly","disabled"],f=t.concat(r,n,i,o,a,l,c,s,u,d,p,["@font-face","@keyframes","@media","@viewport","@page","@host","@supports","@block","@css"]);function h(e){return e=e.sort(function(e,t){return t>e}),new RegExp("^(("+e.join(")|(")+"))\\b")}function m(e){for(var t={},r=0;r|[#\/]([A-Za-z_]\w*)/,token:"keyword"},{regex:/(?:else|this)\b/,token:"keyword"},{regex:/\d+/i,token:"number"},{regex:/=|~|@|true|false/,token:"atom"},{regex:/(?:\.\.\/)*(?:[A-Za-z_][\w\.]*)+/,token:"variable-2"}],dash_comment:[{regex:/--\}\}/,pop:!0,token:"comment"},{regex:/./,token:"comment"}],comment:[{regex:/\}\}/,pop:!0,token:"comment"},{regex:/./,token:"comment"}],meta:{blockCommentStart:"{{--",blockCommentEnd:"--}}"}}),e.defineMode("handlebars",function(t,r){var n=e.getMode(t,"handlebars-tags");return r&&r.base?e.multiplexingMode(e.getMode(t,r.base),{open:"{{",close:/\}\}\}?/,mode:n,parseDelimiters:!0}):n}),e.defineMIME("text/x-handlebars-template","handlebars")}(r("xhvv"),r("pQAd"),r("9YiL"))},aDsr:function(e,t,r){!function(e){"use strict";e.defineMode("coffeescript",function(e,t){var r="error";function n(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var i=/^(?:->|=>|\+[+=]?|-[\-=]?|\*[\*=]?|\/[\/=]?|[=!]=|<[><]?=?|>>?=?|%=?|&=?|\|=?|\^=?|\~|!|\?|(or|and|\|\||&&|\?)=)/,o=/^(?:[()\[\]{},:`=;]|\.\.?\.?)/,a=/^[_A-Za-z$][_A-Za-z$0-9]*/,s=/^@[_A-Za-z$][_A-Za-z$0-9]*/,l=n(["and","or","not","is","isnt","in","instanceof","typeof"]),c=["for","while","loop","if","unless","else","switch","try","catch","finally","class"],u=n(c.concat(["break","by","continue","debugger","delete","do","in","of","new","return","then","this","@","throw","when","until","extends"]));c=n(c);var d=/^('{3}|\"{3}|['\"])/,p=/^(\/{3}|\/)/,f=n(["Infinity","NaN","undefined","null","true","false","on","off","yes","no"]);function h(e,t){if(e.sol()){null===t.scope.align&&(t.scope.align=!1);var n=t.scope.offset;if(e.eatSpace()){var c=e.indentation();return c>n&&"coffee"==t.scope.type?"indent":c0&&v(e,t)}if(e.eatSpace())return null;var h=e.peek();if(e.match("####"))return e.skipToEnd(),"comment";if(e.match("###"))return t.tokenize=g,t.tokenize(e,t);if("#"===h)return e.skipToEnd(),"comment";if(e.match(/^-?[0-9\.]/,!1)){var b=!1;if(e.match(/^-?\d*\.\d+(e[\+\-]?\d+)?/i)&&(b=!0),e.match(/^-?\d+\.\d*/)&&(b=!0),e.match(/^-?\.\d+/)&&(b=!0),b)return"."==e.peek()&&e.backUp(1),"number";var k=!1;if(e.match(/^-?0x[0-9a-f]+/i)&&(k=!0),e.match(/^-?[1-9]\d*(e[\+\-]?\d+)?/)&&(k=!0),e.match(/^-?0(?![\dx])/i)&&(k=!0),k)return"number"}if(e.match(d))return t.tokenize=m(e.current(),!1,"string"),t.tokenize(e,t);if(e.match(p)){if("/"!=e.current()||e.match(/^.*\//,!1))return t.tokenize=m(e.current(),!0,"string-2"),t.tokenize(e,t);e.backUp(1)}return e.match(i)||e.match(l)?"operator":e.match(o)?"punctuation":e.match(f)?"atom":e.match(s)||t.prop&&e.match(a)?"property":e.match(u)?"keyword":e.match(a)?"variable":(e.next(),r)}function m(e,n,i){return function(o,a){for(;!o.eol();)if(o.eatWhile(/[^'"\/\\]/),o.eat("\\")){if(o.next(),n&&o.eol())return i}else{if(o.match(e))return a.tokenize=h,i;o.eat(/['"\/]/)}return n&&(t.singleLineStringErrors?i=r:a.tokenize=h),i}}function g(e,t){for(;!e.eol();){if(e.eatWhile(/[^#]/),e.match("###")){t.tokenize=h;break}e.eatWhile("#")}return"comment"}function b(t,r,n){n=n||"coffee";for(var i=0,o=!1,a=null,s=r.scope;s;s=s.prev)if("coffee"===s.type||"}"==s.type){i=s.offset+e.indentUnit;break}"coffee"!==n?(o=null,a=t.column()+t.current().length):r.scope.align&&(r.scope.align=!1),r.scope={offset:i,type:n,prev:r.scope,align:o,alignOffset:a}}function v(e,t){if(t.scope.prev){if("coffee"===t.scope.type){for(var r=e.indentation(),n=!1,i=t.scope;i;i=i.prev)if(r===i.offset){n=!0;break}if(!n)return!0;for(;t.scope.prev&&t.scope.offset!==r;)t.scope=t.scope.prev;return!1}return t.scope=t.scope.prev,!1}}var k={startState:function(e){return{tokenize:h,scope:{offset:e||0,type:"coffee",prev:null,align:!1},prop:!1,dedent:0}},token:function(e,t){var n=null===t.scope.align&&t.scope;n&&e.sol()&&(n.align=!1);var i=function(e,t){var n=t.tokenize(e,t),i=e.current();"return"===i&&(t.dedent=!0),(("->"===i||"=>"===i)&&e.eol()||"indent"===n)&&b(e,t);var o="[({".indexOf(i);if(-1!==o&&b(e,t,"])}".slice(o,o+1)),c.exec(i)&&b(e,t),"then"==i&&v(e,t),"dedent"===n&&v(e,t))return r;if(-1!==(o="])}".indexOf(i))){for(;"coffee"==t.scope.type&&t.scope.prev;)t.scope=t.scope.prev;t.scope.type==i&&(t.scope=t.scope.prev)}return t.dedent&&e.eol()&&("coffee"==t.scope.type&&t.scope.prev&&(t.scope=t.scope.prev),t.dedent=!1),n}(e,t);return i&&"comment"!=i&&(n&&(n.align=!0),t.prop="punctuation"==i&&"."==e.current()),i},indent:function(e,t){if(e.tokenize!=h)return 0;var r=e.scope,n=t&&"])}".indexOf(t.charAt(0))>-1;if(n)for(;"coffee"==r.type&&r.prev;)r=r.prev;var i=n&&r.type===t.charAt(0);return r.align?r.alignOffset-(i?1:0):(i?r.prev:r).offset},lineComment:"#",fold:"indent"};return k}),e.defineMIME("application/vnd.coffeescript","coffeescript"),e.defineMIME("text/x-coffeescript","coffeescript"),e.defineMIME("text/coffeescript","coffeescript")}(r("xhvv"))},"g+yg":function(e,t,r){!function(e){"use strict";var t={script:[["lang",/(javascript|babel)/i,"javascript"],["type",/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i,"javascript"],["type",/./,"text/plain"],[null,null,"javascript"]],style:[["lang",/^css$/i,"css"],["type",/^(text\/)?(x-)?(stylesheet|css)$/i,"css"],["type",/./,"text/plain"],[null,null,"css"]]},r={};function n(e,t){var n=e.match(function(e){var t=r[e];return t||(r[e]=new RegExp("\\s+"+e+"\\s*=\\s*('|\")?([^'\"]+)('|\")?\\s*"))}(t));return n?/^\s*(.*?)\s*$/.exec(n[2])[1]:""}function i(e,t){return new RegExp((t?"^":"")+"","i")}function o(e,t){for(var r in e)for(var n=t[r]||(t[r]=[]),i=e[r],o=i.length-1;o>=0;o--)n.unshift(i[o])}e.defineMode("htmlmixed",function(r,a){var s=e.getMode(r,{name:"xml",htmlMode:!0,multilineTagIndentFactor:a.multilineTagIndentFactor,multilineTagIndentPastTag:a.multilineTagIndentPastTag,allowMissingTagName:a.allowMissingTagName}),l={},c=a&&a.tags,u=a&&a.scriptTypes;if(o(t,l),c&&o(c,l),u)for(var d=u.length-1;d>=0;d--)l.script.unshift(["type",u[d].matches,u[d].mode]);function p(t,o){var a,c=s.token(t,o.htmlState),u=/\btag\b/.test(c);if(u&&!/[<>\s\/]/.test(t.current())&&(a=o.htmlState.tagName&&o.htmlState.tagName.toLowerCase())&&l.hasOwnProperty(a))o.inTag=a+" ";else if(o.inTag&&u&&/>$/.test(t.current())){var d=/^([\S]+) (.*)/.exec(o.inTag);o.inTag=null;var f=">"==t.current()&&function(e,t){for(var r=0;r-1?e.backUp(n.length-i):n.match(/<\/?$/)&&(e.backUp(n.length),e.match(t,!1)||e.match(n)),r}(e,g,t.localMode.token(e,t.localState))},o.localMode=h,o.localState=e.startState(h,s.indent(o.htmlState,"",""))}else o.inTag&&(o.inTag+=t.current(),t.eol()&&(o.inTag+=" "));return c}return{startState:function(){var t=e.startState(s);return{token:p,inTag:null,localMode:null,localState:null,htmlState:t}},copyState:function(t){var r;return t.localState&&(r=e.copyState(t.localMode,t.localState)),{token:t.token,inTag:t.inTag,localMode:t.localMode,localState:r,htmlState:e.copyState(s,t.htmlState)}},token:function(e,t){return t.token(e,t)},indent:function(t,r,n){return!t.localMode||/^\s*<\//.test(r)?s.indent(t.htmlState,r,n):t.localMode.indent?t.localMode.indent(t.localState,r,n):e.Pass},innerMode:function(e){return{state:e.localState||e.htmlState,mode:e.localMode||s}}}},"xml","javascript","css"),e.defineMIME("text/html","htmlmixed")}(r("xhvv"),r("5RLT"),r("opU+"),r("idG/"))},"idG/":function(e,t,r){!function(e){"use strict";function t(e){for(var t={},r=0;r0;i--)r.context=r.context.prev;return T(e,t,r)}function L(e){var t=e.current().toLowerCase();o=b.hasOwnProperty(t)?"atom":g.hasOwnProperty(t)?"keyword":"variable"}var E={top:function(e,t,r){if("{"==e)return C(r,t,"block");if("}"==e&&r.context.prev)return M(r);if(y&&/@component/i.test(e))return C(r,t,"atComponentBlock");if(/^@(-moz-)?document$/i.test(e))return C(r,t,"documentTypes");if(/^@(media|supports|(-moz-)?document|import)$/i.test(e))return C(r,t,"atBlock");if(/^@(font-face|counter-style)/i.test(e))return r.stateArg=e,"restricted_atBlock_before";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/i.test(e))return"keyframes";if(e&&"@"==e.charAt(0))return C(r,t,"at");if("hash"==e)o="builtin";else if("word"==e)o="tag";else{if("variable-definition"==e)return"maybeprop";if("interpolation"==e)return C(r,t,"interpolation");if(":"==e)return"pseudo";if(v&&"("==e)return C(r,t,"parens")}return r.context.type},block:function(e,t,r){if("word"==e){var n=t.current().toLowerCase();return p.hasOwnProperty(n)?(o="property","maybeprop"):f.hasOwnProperty(n)?(o=w?"string-2":"property","maybeprop"):v?(o=t.match(/^\s*:(?:\s|$)/,!1)?"property":"tag","block"):(o+=" error","maybeprop")}return"meta"==e?"block":v||"hash"!=e&&"qualifier"!=e?E.top(e,t,r):(o="error","block")},maybeprop:function(e,t,r){return":"==e?C(r,t,"prop"):T(e,t,r)},prop:function(e,t,r){if(";"==e)return M(r);if("{"==e&&v)return C(r,t,"propBlock");if("}"==e||"{"==e)return j(e,t,r);if("("==e)return C(r,t,"parens");if("hash"!=e||/^#([0-9a-fA-f]{3,4}|[0-9a-fA-f]{6}|[0-9a-fA-f]{8})$/.test(t.current())){if("word"==e)L(t);else if("interpolation"==e)return C(r,t,"interpolation")}else o+=" error";return"prop"},propBlock:function(e,t,r){return"}"==e?M(r):"word"==e?(o="property","maybeprop"):r.context.type},parens:function(e,t,r){return"{"==e||"}"==e?j(e,t,r):")"==e?M(r):"("==e?C(r,t,"parens"):"interpolation"==e?C(r,t,"interpolation"):("word"==e&&L(t),"parens")},pseudo:function(e,t,r){return"meta"==e?"pseudo":"word"==e?(o="variable-3",r.context.type):T(e,t,r)},documentTypes:function(e,t,r){return"word"==e&&l.hasOwnProperty(t.current())?(o="tag",r.context.type):E.atBlock(e,t,r)},atBlock:function(e,t,r){if("("==e)return C(r,t,"atBlock_parens");if("}"==e||";"==e)return j(e,t,r);if("{"==e)return M(r)&&C(r,t,v?"block":"top");if("interpolation"==e)return C(r,t,"interpolation");if("word"==e){var n=t.current().toLowerCase();o="only"==n||"not"==n||"and"==n||"or"==n?"keyword":c.hasOwnProperty(n)?"attribute":u.hasOwnProperty(n)?"property":d.hasOwnProperty(n)?"keyword":p.hasOwnProperty(n)?"property":f.hasOwnProperty(n)?w?"string-2":"property":b.hasOwnProperty(n)?"atom":g.hasOwnProperty(n)?"keyword":"error"}return r.context.type},atComponentBlock:function(e,t,r){return"}"==e?j(e,t,r):"{"==e?M(r)&&C(r,t,v?"block":"top",!1):("word"==e&&(o="error"),r.context.type)},atBlock_parens:function(e,t,r){return")"==e?M(r):"{"==e||"}"==e?j(e,t,r,2):E.atBlock(e,t,r)},restricted_atBlock_before:function(e,t,r){return"{"==e?C(r,t,"restricted_atBlock"):"word"==e&&"@counter-style"==r.stateArg?(o="variable","restricted_atBlock_before"):T(e,t,r)},restricted_atBlock:function(e,t,r){return"}"==e?(r.stateArg=null,M(r)):"word"==e?(o="@font-face"==r.stateArg&&!h.hasOwnProperty(t.current().toLowerCase())||"@counter-style"==r.stateArg&&!m.hasOwnProperty(t.current().toLowerCase())?"error":"property","maybeprop"):"restricted_atBlock"},keyframes:function(e,t,r){return"word"==e?(o="variable","keyframes"):"{"==e?C(r,t,"top"):T(e,t,r)},at:function(e,t,r){return";"==e?M(r):"{"==e||"}"==e?j(e,t,r):("word"==e?o="tag":"hash"==e&&(o="builtin"),"at")},interpolation:function(e,t,r){return"}"==e?M(r):"{"==e||";"==e?j(e,t,r):("word"==e?o="variable":"variable"!=e&&"("!=e&&")"!=e&&(o="error"),"interpolation")}};return{startState:function(e){return{tokenize:null,state:n?"block":"top",stateArg:null,context:new z(n?"block":"top",e||0,null)}},token:function(e,t){if(!t.tokenize&&e.eatSpace())return null;var r=(t.tokenize||function(e,t){var r=e.next();if(s[r]){var n=s[r](e,t);if(!1!==n)return n}return"@"==r?(e.eatWhile(/[\w\\\-]/),x("def",e.current())):"="==r||("~"==r||"|"==r)&&e.eat("=")?x(null,"compare"):'"'==r||"'"==r?(t.tokenize=A(r),t.tokenize(e,t)):"#"==r?(e.eatWhile(/[\w\\\-]/),x("atom","hash")):"!"==r?(e.match(/^\s*\w*/),x("keyword","important")):/\d/.test(r)||"."==r&&e.eat(/\d/)?(e.eatWhile(/[\w.%]/),x("number","unit")):"-"!==r?/[,+>*\/]/.test(r)?x(null,"select-op"):"."==r&&e.match(/^-?[_a-z][_a-z0-9-]*/i)?x("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(r)?x(null,r):e.match(/^[\w-.]+(?=\()/)?(/^(url(-prefix)?|domain|regexp)$/i.test(e.current())&&(t.tokenize=S),x("variable callee","variable")):/[\w\\\-]/.test(r)?(e.eatWhile(/[\w\\\-]/),x("property","word")):x(null,null):/[\d.]/.test(e.peek())?(e.eatWhile(/[\w.%]/),x("number","unit")):e.match(/^-[\w\\\-]*/)?(e.eatWhile(/[\w\\\-]/),e.match(/^\s*:/,!1)?x("variable-2","variable-definition"):x("variable-2","variable")):e.match(/^\w+-/)?x("meta","meta"):void 0})(e,t);return r&&"object"==typeof r&&(i=r[1],r=r[0]),o=r,"comment"!=i&&(t.state=E[t.state](i,e,t)),o},indent:function(e,t){var r=e.context,n=t&&t.charAt(0),i=r.indent;return"prop"!=r.type||"}"!=n&&")"!=n||(r=r.prev),r.prev&&("}"!=n||"block"!=r.type&&"top"!=r.type&&"interpolation"!=r.type&&"restricted_atBlock"!=r.type?(")"!=n||"parens"!=r.type&&"atBlock_parens"!=r.type)&&("{"!=n||"at"!=r.type&&"atBlock"!=r.type)||(i=Math.max(0,r.indent-a)):(r=r.prev,i=r.indent)),i},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:k,fold:"brace"}});var r=["domain","regexp","url","url-prefix"],n=t(r),i=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],o=t(i),a=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid","orientation","device-pixel-ratio","min-device-pixel-ratio","max-device-pixel-ratio","pointer","any-pointer","hover","any-hover","prefers-color-scheme","dynamic-range","video-dynamic-range"],s=t(a),l=["landscape","portrait","none","coarse","fine","on-demand","hover","interlace","progressive","dark","light","standard","high"],c=t(l),u=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","all","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","binding","bleed","block-size","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-content","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-gap","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-gap","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","inset","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","left","letter-spacing","line-break","line-height","line-height-step","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","place-content","place-items","place-self","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotate","rotation","rotation-point","row-gap","ruby-align","ruby-overhang","ruby-position","ruby-span","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-type","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-orientation","text-outline","text-overflow","text-rendering","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","touch-action","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-select","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","paint-order","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],d=t(u),p=["accent-color","aspect-ratio","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","content-visibility","margin-block","margin-block-end","margin-block-start","margin-inline","margin-inline-end","margin-inline-start","overflow-anchor","overscroll-behavior","padding-block","padding-block-end","padding-block-start","padding-inline","padding-inline-end","padding-inline-start","scroll-snap-stop","scrollbar-3d-light-color","scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-track-color","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","shape-inside","zoom"],f=t(p),h=t(["font-display","font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"]),m=t(["additive-symbols","fallback","negative","pad","prefix","range","speak-as","suffix","symbols","system"]),g=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],b=t(g),v=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","blur","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","brightness","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","conic-gradient","contain","content","contents","content-box","context-menu","continuous","contrast","copy","counter","counters","cover","crop","cross","crosshair","cubic-bezier","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","devanagari","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","drop-shadow","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","georgian","grayscale","graytext","grid","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hard-light","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","hue","hue-rotate","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","luminosity","malayalam","manipulation","match","matrix","matrix3d","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","multiple_mask_images","multiply","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","opacity","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeating-conic-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturate","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","self-start","self-end","semi-condensed","semi-expanded","separate","sepia","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","somali","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","square-button","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"],k=t(v),y=r.concat(i).concat(a).concat(l).concat(u).concat(p).concat(g).concat(v);function w(e,t){for(var r,n=!1;null!=(r=e.next());){if(n&&"/"==r){t.tokenize=null;break}n="*"==r}return["comment","comment"]}e.registerHelper("hintWords","css",y),e.defineMIME("text/css",{documentTypes:n,mediaTypes:o,mediaFeatures:s,mediaValueKeywords:c,propertyKeywords:d,nonStandardPropertyKeywords:f,fontProperties:h,counterDescriptors:m,colorKeywords:b,valueKeywords:k,tokenHooks:{"/":function(e,t){return!!e.eat("*")&&(t.tokenize=w,w(e,t))}},name:"css"}),e.defineMIME("text/x-scss",{mediaTypes:o,mediaFeatures:s,mediaValueKeywords:c,propertyKeywords:d,nonStandardPropertyKeywords:f,colorKeywords:b,valueKeywords:k,fontProperties:h,allowNested:!0,lineComment:"//",tokenHooks:{"/":function(e,t){return e.eat("/")?(e.skipToEnd(),["comment","comment"]):e.eat("*")?(t.tokenize=w,w(e,t)):["operator","operator"]},":":function(e){return!!e.match(/^\s*\{/,!1)&&[null,null]},$:function(e){return e.match(/^[\w-]+/),e.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"]},"#":function(e){return!!e.eat("{")&&[null,"interpolation"]}},name:"css",helperType:"scss"}),e.defineMIME("text/x-less",{mediaTypes:o,mediaFeatures:s,mediaValueKeywords:c,propertyKeywords:d,nonStandardPropertyKeywords:f,colorKeywords:b,valueKeywords:k,fontProperties:h,allowNested:!0,lineComment:"//",tokenHooks:{"/":function(e,t){return e.eat("/")?(e.skipToEnd(),["comment","comment"]):e.eat("*")?(t.tokenize=w,w(e,t)):["operator","operator"]},"@":function(e){return e.eat("{")?[null,"interpolation"]:!e.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/i,!1)&&(e.eatWhile(/[\w\\\-]/),e.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"])},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"}),e.defineMIME("text/x-gss",{documentTypes:n,mediaTypes:o,mediaFeatures:s,propertyKeywords:d,nonStandardPropertyKeywords:f,fontProperties:h,counterDescriptors:m,colorKeywords:b,valueKeywords:k,supportsAtComponent:!0,tokenHooks:{"/":function(e,t){return!!e.eat("*")&&(t.tokenize=w,w(e,t))}},name:"css",helperType:"gss"})}(r("xhvv"))},jTqD:function(e,t,r){!function(e){"use strict";e.defineMode("shell",function(){var t={};function r(e,r){for(var n=0;n1&&e.eat("$");var r=e.next();return/['"({]/.test(r)?(t.tokens[0]=a(r,"("==r?"quote":"{"==r?"def":"string"),c(e,t)):(/\d/.test(r)||e.eatWhile(/\w/),t.tokens.shift(),"def")};function c(e,r){return(r.tokens[0]||function(e,r){if(e.eatSpace())return null;var n=e.sol(),i=e.next();if("\\"===i)return e.next(),null;if("'"===i||'"'===i||"`"===i)return r.tokens.unshift(a(i,"`"===i?"quote":"string")),c(e,r);if("#"===i)return n&&e.eat("!")?(e.skipToEnd(),"meta"):(e.skipToEnd(),"comment");if("$"===i)return r.tokens.unshift(l),c(e,r);if("+"===i||"="===i)return"operator";if("-"===i)return e.eat("-"),e.eatWhile(/\w/),"attribute";if("<"==i){if(e.match("<<"))return"operator";var o=e.match(/^<-?\s*['"]?([^'"]*)['"]?/);if(o)return r.tokens.unshift(function(e){return function(t,r){return t.sol()&&t.string==e&&r.tokens.shift(),t.skipToEnd(),"string-2"}}(o[1])),"string-2"}if(/\d/.test(i)&&(e.eatWhile(/\d/),e.eol()||!/\w/.test(e.peek())))return"number";e.eatWhile(/[\w-]/);var s=e.current();return"="===e.peek()&&/\w+/.test(s)?"def":t.hasOwnProperty(s)?t[s]:null})(e,r)}return{startState:function(){return{tokens:[]}},token:function(e,t){return c(e,t)},closeBrackets:"()[]{}''\"\"``",lineComment:"#",fold:"brace"}}),e.defineMIME("text/x-sh","shell"),e.defineMIME("application/x-sh","shell")}(r("xhvv"))},kefc:function(e,t,r){!function(e){"use strict";(function(e){var t={script:[["lang",/coffee(script)?/,"coffeescript"],["type",/^(?:text|application)\/(?:x-)?coffee(?:script)?$/,"coffeescript"],["lang",/^babel$/,"javascript"],["type",/^text\/babel$/,"javascript"],["type",/^text\/ecmascript-\d+$/,"javascript"]],style:[["lang",/^stylus$/i,"stylus"],["lang",/^sass$/i,"sass"],["lang",/^less$/i,"text/x-less"],["lang",/^scss$/i,"text/x-scss"],["type",/^(text\/)?(x-)?styl(us)?$/i,"stylus"],["type",/^text\/sass/i,"sass"],["type",/^(text\/)?(x-)?scss$/i,"text/x-scss"],["type",/^(text\/)?(x-)?less$/i,"text/x-less"]],template:[["lang",/^vue-template$/i,"vue"],["lang",/^pug$/i,"pug"],["lang",/^handlebars$/i,"handlebars"],["type",/^(text\/)?(x-)?pug$/i,"pug"],["type",/^text\/x-handlebars-template$/i,"handlebars"],[null,null,"vue-template"]]};e.defineMode("vue-template",function(t,r){return e.overlayMode(e.getMode(t,r.backdrop||"text/html"),{token:function(e){if(e.match(/^\{\{.*?\}\}/))return"meta mustache";for(;e.next()&&!e.match("{{",!1););return null}})}),e.defineMode("vue",function(r){return e.getMode(r,{name:"htmlmixed",tags:t})},"htmlmixed","xml","javascript","coffeescript","css","sass","stylus","pug","handlebars"),e.defineMIME("script/x-vue","vue"),e.defineMIME("text/x-vue","vue")})(r("xhvv"),r("ONUW"),r("5RLT"),r("opU+"),r("aDsr"),r("idG/"),r("vu3f"),r("Na/5"),r("u51R"),r("YAw8"))}()},pQAd:function(e,t,r){!function(e){"use strict";function t(e,t){if(!e.hasOwnProperty(t))throw new Error("Undefined state "+t+" in simple mode")}function r(e,t){if(!e)return/(?:)/;var r="";return e instanceof RegExp?(e.ignoreCase&&(r="i"),e.unicode&&(r+="u"),e=e.source):e=String(e),new RegExp((!1===t?"":"^")+"(?:"+e+")",r)}function n(e,n){(e.next||e.push)&&t(n,e.next||e.push),this.regex=r(e.regex),this.token=function(e){if(!e)return null;if(e.apply)return e;if("string"==typeof e)return e.replace(/\./g," ");for(var t=[],r=0;r2&&u.token&&"string"!=typeof u.token){for(var f=2;f-1)return e.Pass;var a=n.indent.length-1,s=t[n.state];e:for(;;){for(var l=0;lr.indentOf||r.innerModeForLine&&!t.sol()||n)return r.innerMode?(r.innerState||(r.innerState=r.innerMode.startState?e.startState(r.innerMode,t.indentation()):{}),t.hideFirstChars(r.indentOf+2,function(){return r.innerMode.token(t,r.innerState)||!0})):(t.skipToEnd(),r.indentToken);t.sol()&&(r.indentOf=1/0,r.indentToken=null,r.innerMode=null,r.innerState=null)}return l.prototype.copy=function(){var t=new l;return t.javaScriptLine=this.javaScriptLine,t.javaScriptLineExcludesColon=this.javaScriptLineExcludesColon,t.javaScriptArguments=this.javaScriptArguments,t.javaScriptArgumentsDepth=this.javaScriptArgumentsDepth,t.isInterpolating=this.isInterpolating,t.interpolationNesting=this.interpolationNesting,t.jsState=e.copyState(s,this.jsState),t.innerMode=this.innerMode,this.innerMode&&this.innerState&&(t.innerState=e.copyState(this.innerMode,this.innerState)),t.restOfLine=this.restOfLine,t.isIncludeFiltered=this.isIncludeFiltered,t.isEach=this.isEach,t.lastTag=this.lastTag,t.scriptType=this.scriptType,t.isAttrs=this.isAttrs,t.attrsNest=this.attrsNest.slice(),t.inAttributeName=this.inAttributeName,t.attributeIsType=this.attributeIsType,t.attrValue=this.attrValue,t.indentOf=this.indentOf,t.indentToken=this.indentToken,t.innerModeForLine=this.innerModeForLine,t},{startState:function(){return new l},copyState:function(e){return e.copy()},token:function(t,l){var f=p(t,l)||function(e,t){if(e.sol()&&(t.restOfLine=""),t.restOfLine){e.skipToEnd();var r=t.restOfLine;return t.restOfLine="",r}}(t,l)||function(e,t){if(t.isInterpolating){if("}"===e.peek()){if(t.interpolationNesting--,t.interpolationNesting<0)return e.next(),t.isInterpolating=!1,"punctuation"}else"{"===e.peek()&&t.interpolationNesting++;return s.token(e,t.jsState)||!0}}(t,l)||function(e,t){if(t.isIncludeFiltered){var r=u(e,t);return t.isIncludeFiltered=!1,t.restOfLine="string",r}}(t,l)||function(e,t){if(t.isEach){if(e.match(/^ in\b/))return t.javaScriptLine=!0,t.isEach=!1,r;if(e.sol()||e.eol())t.isEach=!1;else if(e.next()){for(;!e.match(/^ in\b/,!1)&&e.next(););return"variable"}}}(t,l)||function t(r,n){if(n.isAttrs){if(a[r.peek()]&&n.attrsNest.push(a[r.peek()]),n.attrsNest[n.attrsNest.length-1]===r.peek())n.attrsNest.pop();else if(r.eat(")"))return n.isAttrs=!1,"punctuation";if(n.inAttributeName&&r.match(/^[^=,\)!]+/))return"="!==r.peek()&&"!"!==r.peek()||(n.inAttributeName=!1,n.jsState=e.startState(s),"script"===n.lastTag&&"type"===r.current().trim().toLowerCase()?n.attributeIsType=!0:n.attributeIsType=!1),"attribute";var i=s.token(r,n.jsState);if(n.attributeIsType&&"string"===i&&(n.scriptType=r.current().toString()),0===n.attrsNest.length&&("string"===i||"variable"===i||"keyword"===i))try{return Function("","var x "+n.attrValue.replace(/,\s*$/,"").replace(/^!/,"")),n.inAttributeName=!0,n.attrValue="",r.backUp(r.current().length),t(r,n)}catch(e){}return n.attrValue+=r.current(),i||!0}}(t,l)||function(e,t){if(e.sol()&&(t.javaScriptLine=!1,t.javaScriptLineExcludesColon=!1),t.javaScriptLine){if(t.javaScriptLineExcludesColon&&":"===e.peek())return t.javaScriptLine=!1,void(t.javaScriptLineExcludesColon=!1);var r=s.token(e,t.jsState);return e.eol()&&(t.javaScriptLine=!1),r||!0}}(t,l)||function(e,t){if(t.javaScriptArguments){if(0===t.javaScriptArgumentsDepth&&"("!==e.peek())return void(t.javaScriptArguments=!1);if("("===e.peek()?t.javaScriptArgumentsDepth++:")"===e.peek()&&t.javaScriptArgumentsDepth--,0===t.javaScriptArgumentsDepth)return void(t.javaScriptArguments=!1);var r=s.token(e,t.jsState);return r||!0}}(t,l)||function(e,t){if(t.mixinCallAfter)return t.mixinCallAfter=!1,e.match(/^\( *[-\w]+ *=/,!1)||(t.javaScriptArguments=!0,t.javaScriptArgumentsDepth=0),!0}(t,l)||function(e){if(e.match(/^yield\b/))return"keyword"}(t)||function(e){if(e.match(/^(?:doctype) *([^\n]+)?/))return n}(t)||c(t,l)||function(e,t){if(e.match(/^case\b/))return t.javaScriptLine=!0,r}(t,l)||function(e,t){if(e.match(/^when\b/))return t.javaScriptLine=!0,t.javaScriptLineExcludesColon=!0,r}(t,l)||function(e){if(e.match(/^default\b/))return r}(t)||function(e,t){if(e.match(/^extends?\b/))return t.restOfLine="string",r}(t,l)||function(e,t){if(e.match(/^append\b/))return t.restOfLine="variable",r}(t,l)||function(e,t){if(e.match(/^prepend\b/))return t.restOfLine="variable",r}(t,l)||function(e,t){if(e.match(/^block\b *(?:(prepend|append)\b)?/))return t.restOfLine="variable",r}(t,l)||function(e,t){if(e.match(/^include\b/))return t.restOfLine="string",r}(t,l)||function(e,t){if(e.match(/^include:([a-zA-Z0-9\-]+)/,!1)&&e.match("include"))return t.isIncludeFiltered=!0,r}(t,l)||function(e,t){if(e.match(/^mixin\b/))return t.javaScriptLine=!0,r}(t,l)||function(e,t){return e.match(/^\+([-\w]+)/)?(e.match(/^\( *[-\w]+ *=/,!1)||(t.javaScriptArguments=!0,t.javaScriptArgumentsDepth=0),"variable"):e.match("+#{",!1)?(e.next(),t.mixinCallAfter=!0,c(e,t)):void 0}(t,l)||function(e,t){if(e.match(/^(if|unless|else if|else)\b/))return t.javaScriptLine=!0,r}(t,l)||function(e,t){if(e.match(/^(- *)?(each|for)\b/))return t.isEach=!0,r}(t,l)||function(e,t){if(e.match(/^while\b/))return t.javaScriptLine=!0,r}(t,l)||function(e,t){var r;if(r=e.match(/^(\w(?:[-:\w]*\w)?)\/?/))return t.lastTag=r[1].toLowerCase(),"script"===t.lastTag&&(t.scriptType="application/javascript"),"tag"}(t,l)||u(t,l)||function(e,t){if(e.match(/^(!?=|-)/))return t.javaScriptLine=!0,"punctuation"}(t,l)||function(e){if(e.match(/^#([\w-]+)/))return i}(t)||function(e){if(e.match(/^\.([\w-]+)/))return o}(t)||function(e,t){if("("==e.peek())return e.next(),t.isAttrs=!0,t.attrsNest=[],t.inAttributeName=!0,t.attrValue="",t.attributeIsType=!1,"punctuation"}(t,l)||function(e,t){if(e.match(/^&attributes\b/))return t.javaScriptArguments=!0,t.javaScriptArgumentsDepth=0,"keyword"}(t,l)||function(e){if(e.sol()&&e.eatSpace())return"indent"}(t)||function(e,t){return e.match(/^(?:\| ?| )([^\n]+)/)?"string":e.match(/^(<[^\n]*)/,!1)?(d(e,t,"htmlmixed"),t.innerModeForLine=!0,p(e,t,!0)):void 0}(t,l)||function(e,t){if(e.match(/^ *\/\/(-)?([^\n]*)/))return t.indentOf=e.indentation(),t.indentToken="comment","comment"}(t,l)||function(e){if(e.match(/^: */))return"colon"}(t)||function(e,t){if(e.eat(".")){var r=null;return"script"===t.lastTag&&-1!=t.scriptType.toLowerCase().indexOf("javascript")?r=t.scriptType.toLowerCase().replace(/"|'/g,""):"style"===t.lastTag&&(r="css"),d(e,t,r),"dot"}}(t,l)||function(e){return e.next(),null}(t);return!0===f?null:f}}},"javascript","css","htmlmixed"),e.defineMIME("text/x-pug","pug"),e.defineMIME("text/x-jade","pug")}(r("xhvv"),r("opU+"),r("idG/"),r("g+yg"))},ue2F:function(e,t,r){e.exports=function(e){function t(n){if(r[n])return r[n].exports;var i=r[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var r={};return t.m=e,t.c=r,t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=1)}([function(e,t,r){"use strict";var n=r(9);t.a={name:"VRuler",components:{},props:{position:{type:String,default:"relative",validator:function(e){return-1!==["absolute","fixed","relative","static","inherit"].indexOf(e)}},isHotKey:{type:Boolean,default:!0},isScaleRevise:{type:Boolean,default:!1},value:{type:Array,default:function(){return[]}},contentLayout:{type:Object,default:function(){return{top:0,left:0}}},parent:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},stepLength:{type:Number,default:50,validator:function(e){return e%10==0}}},data:function(){return{size:17,left_top:18,windowWidth:0,windowHeight:0,xScale:[],yScale:[],topSpacing:0,leftSpacing:0,isDrag:!1,dragFlag:"",horizontalDottedLeft:-999,verticalDottedTop:-999,rulerWidth:0,rulerHeight:0,dragLineId:"",keyCode:{r:82},rulerToggle:!0}},computed:{wrapperStyle:function(){return{width:this.windowWidth+"px",height:this.windowHeight+"px",position:this.position}},contentStyle:function(){return{left:this.contentLayout.left+"px",top:this.contentLayout.top+"px",padding:this.left_top+"px 0px 0px "+this.left_top+"px"}},lineList:function(){var e=this,t=0,r=0;return this.value.map(function(n){var i="h"===n.type;return function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}({id:n.type+"_"+(i?t++:r++),type:n.type,title:n.site.toFixed(2)+"px"},i?"top":"left",n.site/(e.stepLength/50)+e.size)})}},watch:{visible:{handler:function(e){this.rulerToggle=e},immediate:!0}},mounted:function(){Object(n.b)(document,"mousemove",this.dottedLineMove),Object(n.b)(document,"mouseup",this.dottedLineUp),Object(n.b)(document,"keyup",this.keyboard),this.init(),Object(n.b)(window,"resize",this.windowResize)},beforeDestroy:function(){Object(n.a)(document,"mousemove",this.dottedLineMove),Object(n.a)(document,"mouseup",this.dottedLineUp),Object(n.a)(document,"keyup",this.keyboard),Object(n.a)(window,"resize",this.windowResize)},methods:{init:function(){this.box(),this.scaleCalc()},windowResize:function(){this.xScale=[],this.yScale=[],this.init()},getLineStyle:function(e){var t=e.type,r=e.top,n=e.left;return"h"===t?{top:r+"px"}:{left:n+"px"}},handleDragLine:function(e){var t=e.type,r=e.id;return"h"===t?this.dragHorizontalLine(r):this.dragVerticalLine(r)},box:function(){if(this.isScaleRevise){var e=this.$refs.content,t=e.offsetLeft,r=e.offsetTop;this.getCalcRevise(this.xScale,t),this.getCalcRevise(this.yScale,r)}if(this.parent){var n=window.getComputedStyle(this.$el.parentNode,null);this.windowWidth=parseInt(n.getPropertyValue("width"),10),this.windowHeight=parseInt(n.getPropertyValue("height"),10)}else this.windowWidth=document.documentElement.clientWidth-this.leftSpacing,this.windowHeight=document.documentElement.clientHeight-this.topSpacing;this.rulerWidth=this.$refs.verticalRuler.clientWidth,this.rulerHeight=this.$refs.horizontalRuler.clientHeight,this.setSpacing()},setSpacing:function(){this.topSpacing=this.$refs.horizontalRuler.getBoundingClientRect().y,this.leftSpacing=this.$refs.verticalRuler.getBoundingClientRect().x},scaleCalc:function(){this.getCalc(this.xScale,this.windowWidth),this.getCalc(this.yScale,this.windowHeight)},getCalc:function(e,t){for(var r=0;rr.parts.length&&(n.parts.length=r.parts.length)}else{for(var a=[],i=0;i","<","==",">=","<=","\\+","-","\\!=","/","\\*","%","and","or","not",";","\\{","\\}",":"]),u=/^::?[a-zA-Z_][\w\-]*/;function d(e){return!e.peek()||e.match(/\s+$/,!1)}function p(e,t){var r=e.peek();return")"===r?(e.next(),t.tokenizer=v,"operator"):"("===r?(e.next(),e.eatSpace(),"operator"):"'"===r||'"'===r?(t.tokenizer=h(e.next()),"string"):(t.tokenizer=h(")",!1),"string")}function f(e,t){return function(r,n){return r.sol()&&r.indentation()<=e?(n.tokenizer=v,v(r,n)):(t&&r.skipTo("*/")?(r.next(),r.next(),n.tokenizer=v):r.skipToEnd(),"comment")}}function h(e,t){return null==t&&(t=!0),function r(n,i){var o=n.next(),a=n.peek(),s=n.string.charAt(n.pos-2),l="\\"!==o&&a===e||o===e&&"\\"!==s;return l?(o!==e&&t&&n.next(),d(n)&&(i.cursorHalf=0),i.tokenizer=v,"string"):"#"===o&&"{"===a?(i.tokenizer=m(r),n.next(),"operator"):"string"}}function m(e){return function(t,r){return"}"===t.peek()?(t.next(),r.tokenizer=e,"operator"):v(t,r)}}function g(e){if(0==e.indentCount){e.indentCount++;var r=e.scopes[0].offset,n=r+t.indentUnit;e.scopes.unshift({offset:n})}}function b(e){1!=e.scopes.length&&e.scopes.shift()}function v(e,t){var n=e.peek();if(e.match("/*"))return t.tokenizer=f(e.indentation(),!0),t.tokenizer(e,t);if(e.match("//"))return t.tokenizer=f(e.indentation(),!1),t.tokenizer(e,t);if(e.match("#{"))return t.tokenizer=m(v),"operator";if('"'===n||"'"===n)return e.next(),t.tokenizer=h(n),"string";if(t.cursorHalf){if("#"===n&&(e.next(),e.match(/[0-9a-fA-F]{6}|[0-9a-fA-F]{3}/)))return d(e)&&(t.cursorHalf=0),"number";if(e.match(/^-?[0-9\.]+/))return d(e)&&(t.cursorHalf=0),"number";if(e.match(/^(px|em|in)\b/))return d(e)&&(t.cursorHalf=0),"unit";if(e.match(l))return d(e)&&(t.cursorHalf=0),"keyword";if(e.match(/^url/)&&"("===e.peek())return t.tokenizer=p,d(e)&&(t.cursorHalf=0),"atom";if("$"===n)return e.next(),e.eatWhile(/[\w-]/),d(e)&&(t.cursorHalf=0),"variable-2";if("!"===n)return e.next(),t.cursorHalf=0,e.match(/^[\w]+/)?"keyword":"operator";if(e.match(c))return d(e)&&(t.cursorHalf=0),"operator";if(e.eatWhile(/[\w-]/))return d(e)&&(t.cursorHalf=0),r=e.current().toLowerCase(),a.hasOwnProperty(r)?"atom":o.hasOwnProperty(r)?"keyword":i.hasOwnProperty(r)?(t.prevProp=e.current().toLowerCase(),"property"):"tag";if(d(e))return t.cursorHalf=0,null}else{if("-"===n&&e.match(/^-\w+-/))return"meta";if("."===n){if(e.next(),e.match(/^[\w-]+/))return g(t),"qualifier";if("#"===e.peek())return g(t),"tag"}if("#"===n){if(e.next(),e.match(/^[\w-]+/))return g(t),"builtin";if("#"===e.peek())return g(t),"tag"}if("$"===n)return e.next(),e.eatWhile(/[\w-]/),"variable-2";if(e.match(/^-?[0-9\.]+/))return"number";if(e.match(/^(px|em|in)\b/))return"unit";if(e.match(l))return"keyword";if(e.match(/^url/)&&"("===e.peek())return t.tokenizer=p,"atom";if("="===n&&e.match(/^=[\w-]+/))return g(t),"meta";if("+"===n&&e.match(/^\+[\w-]+/))return"variable-3";if("@"===n&&e.match("@extend")&&(e.match(/\s*[\w]/)||b(t)),e.match(/^@(else if|if|media|else|for|each|while|mixin|function)/))return g(t),"def";if("@"===n)return e.next(),e.eatWhile(/[\w-]/),"def";if(e.eatWhile(/[\w-]/)){if(e.match(/ *: *[\w-\+\$#!\("']/,!1)){r=e.current().toLowerCase();var k=t.prevProp+"-"+r;return i.hasOwnProperty(k)?"property":i.hasOwnProperty(r)?(t.prevProp=r,"property"):s.hasOwnProperty(r)?"property":"tag"}return e.match(/ *:/,!1)?(g(t),t.cursorHalf=1,t.prevProp=e.current().toLowerCase(),"property"):e.match(/ *,/,!1)?"tag":(g(t),"tag")}if(":"===n)return e.match(u)?"variable-3":(e.next(),t.cursorHalf=1,"operator")}return e.match(c)?"operator":(e.next(),null)}return{startState:function(){return{tokenizer:v,scopes:[{offset:0,type:"sass"}],indentCount:0,cursorHalf:0,definedVars:[],definedMixins:[]}},token:function(e,r){var n=function(e,r){e.sol()&&(r.indentCount=0);var n=r.tokenizer(e,r),i=e.current();if("@return"!==i&&"}"!==i||b(r),null!==n){for(var o=e.pos-i.length,a=o+t.indentUnit*r.indentCount,s=[],l=0;l=0?1/(Math.cos(2*Math.PI/10-e)+3.07768*Math.sin(2*Math.PI/10-e)):1/(Math.cos(e)+3.07768*Math.sin(e))}}o.gridSize=Math.max(Math.floor(o.gridSize),4);var h,u,c,p,f,d,g,v=o.gridSize,m=v-o.maskGapWidth,y=Math.abs(o.maxRotation-o.minRotation),x=Math.min(o.maxRotation,o.minRotation),S=o.rotationStep;switch(o.color){case"random-dark":g=function(){return i(10,50)};break;case"random-light":g=function(){return i(50,90)};break;default:"function"==typeof o.color&&(g=o.color)}var w=null;"function"==typeof o.classes&&(w=o.classes);var b,O=!1,T=[],C=function(t){var e,i,o=t.currentTarget,n=o.getBoundingClientRect();t.touches?(e=t.touches[0].clientX,i=t.touches[0].clientY):(e=t.clientX,i=t.clientY);var a=e-n.left,s=i-n.top,r=Math.floor(a*(o.width/n.width||1)/v),l=Math.floor(s*(o.height/n.height||1)/v);return T[r][l]},_=function(t){var e=C(t);if(b!==e){if(b=e,!e)return void o.hover(void 0,void 0,t);o.hover(e.item,e.dimension,t)}},D=function(t){var e=C(t);e&&(o.click(e.item,e.dimension,t),t.preventDefault())},L=[],z=function(t){if(L[t])return L[t];var e=8*t,i=e,n=[];for(0===t&&n.push([p[0],p[1],0]);i--;){var a=1;"circle"!==o.shape&&(a=o.shape(i/e*2*Math.PI)),n.push([p[0]+t*a*Math.cos(-i/e*2*Math.PI),p[1]+t*a*Math.sin(-i/e*2*Math.PI)*o.ellipticity,i/e*2*Math.PI])}return L[t]=n,n},k=function(){return o.abortThreshold>0&&(new Date).getTime()-d>o.abortThreshold},A=function(t,e,i){var n=o.weightFactor(e);if(n<=o.minSize)return!1;var s=1;nL[1]&&(L[1]=D),OL[2]&&(L[2]=O);break t}}return{mu:s,occupied:_,bounds:L,gw:x,gh:y,fillTextOffsetX:g,fillTextOffsetY:m,fillTextWidth:h,fillTextHeight:u,fontSize:n}},M=function(t,e,i,n,a){for(var s=a.length;s--;){var r=t+a[s][0],l=e+a[s][1];if(r>=u||l>=c||r<0||l<0){if(!o.drawOutOfBound)return!1}else if(!h[r][l])return!1}return!0},F=function(e,i,n,a,s,r,l,h,u){var c,p,f=n.fontSize;c=g?g(a,s,f,r,l):o.color,p=w?w(a,s,f,r,l):o.classes;var d=n.bounds;d[3],d[0],d[1],d[3],d[2],d[0],t.forEach(function(t){if(t.getContext){var s=t.getContext("2d"),r=n.mu;s.save(),s.scale(1/r,1/r),s.font=o.fontWeight+" "+(f*r).toString(10)+"px "+o.fontFamily,s.fillStyle=c,s.translate((e+n.gw/2)*v*r,(i+n.gh/2)*v*r),0!==h&&s.rotate(-h),s.textBaseline="middle",s.fillText(a,n.fillTextOffsetX*r,(n.fillTextOffsetY+.5*f)*r),s.restore()}else{var l=document.createElement("span"),d="";d="rotate("+-h/Math.PI*180+"deg) ",1!==n.mu&&(d+="translateX(-"+n.fillTextWidth/4+"px) scale("+1/n.mu+")");var g={position:"absolute",display:"block",font:o.fontWeight+" "+f*n.mu+"px "+o.fontFamily,left:(e+n.gw/2)*v+n.fillTextOffsetX+"px",top:(i+n.gh/2)*v+n.fillTextOffsetY+"px",width:n.fillTextWidth+"px",height:n.fillTextHeight+"px",lineHeight:f+"px",whiteSpace:"nowrap",transform:d,webkitTransform:d,msTransform:d,transformOrigin:"50% 40%",webkitTransformOrigin:"50% 40%",msTransformOrigin:"50% 40%"};for(var m in c&&(g.color=c),l.textContent=a,g)l.style[m]=g[m];if(u)for(var y in u)l.setAttribute(y,u[y]);p&&(l.className+=p),t.appendChild(l)}})},P=function(e,i,o,n,a){e>=u||i>=c||e<0||i<0||(h[e][i]=!1,o&&t[0].getContext("2d").fillRect(e*v,i*v,m,m),O&&(T[e][i]={item:a,dimension:n}))},W=function(e,i,n,a,s,r){var l,h,p=s.occupied,f=o.drawMask;if(f&&((l=t[0].getContext("2d")).save(),l.fillStyle=o.maskColor),O){var d=s.bounds;h={x:(e+d[3])*v,y:(i+d[0])*v,w:(d[1]-d[3]+1)*v,h:(d[2]-d[0]+1)*v}}for(var g=p.length;g--;){var m=e+p[g][0],y=i+p[g][1];m>=u||y>=c||m<0||y<0||P(m,y,f,h,r)}f&&l.restore()},I=function(t){var e,i,n;Array.isArray(t)?(e=t[0],i=t[1]):(e=t.word,i=t.weight,n=t.attributes);var a=0===o.rotateRatio?0:Math.random()>o.rotateRatio?0:0===y?x:x+Math.round(Math.random()*y/S)*S,r=A(e,i,a);if(!r)return!1;if(k())return!1;if(!o.drawOutOfBound){var l=r.bounds;if(l[1]-l[3]+1>u||l[2]-l[0]+1>c)return!1}for(var h=f+1;h--;){var p=z(f-h);o.shuffle&&(p=[].concat(p),s(p));for(var d=0;d=o.list.length)return l(L),R("wordcloudstop",!1),void w("wordcloudstart",C);d=(new Date).getTime();var e=I(o.list[s]),i=!R("wordclouddrawn",!0,{item:o.list[s],drawn:e});if(k()||i)return l(L),o.abort(),R("wordcloudabort",!1),R("wordcloudstop",!1),void w("wordcloudstart",C);s++,L=r(t,o.wait)},o.wait)}}()}};r.isSupported=n,r.minFontSize=a,void 0!==(o=function(){return r}.apply(e,[]))&&(t.exports=o)}()}])}(i("TSjp"))},BPcn:function(t,e,i){},CZ5I:function(t,e,i){},"EO+T":function(t,e,i){"use strict";var o=i("u8RD");i.n(o).a},EwIA:function(t,e,i){},FxKO:function(t,e,i){"use strict";var o=i("TSjp"),n=i.n(o),a=(i("Z5Hk"),{"台湾":[121.5135,25.0308],"黑龙江":[127.9688,45.368],"内蒙古":[110.3467,41.4899],"吉林":[125.8154,44.2584],"北京":[116.4551,40.2539],"辽宁":[123.1238,42.1216],"河北":[114.4995,38.1006],"天津":[117.4219,39.4189],"山西":[112.3352,37.9413],"陕西":[109.1162,34.2004],"甘肃":[103.5901,36.3043],"宁夏":[106.3586,38.1775],"青海":[101.4038,36.8207],"新疆":[87.9236,43.5883],"西藏":[91.11,29.97],"四川":[103.9526,30.7617],"重庆":[108.384366,30.439702],"山东":[117.1582,36.8701],"河南":[113.4668,34.6234],"江苏":[118.8062,31.9208],"安徽":[117.29,32.0581],"湖北":[114.3896,30.6628],"浙江":[119.5313,29.8773],"福建":[119.4543,25.9222],"江西":[116.0046,28.6633],"湖南":[113.0823,28.2568],"贵州":[106.6992,26.7682],"云南":[102.9199,25.4663],"广东":[113.12244,23.009505],"广西":[108.479,23.1152],"海南":[110.3893,19.8516],"上海":[121.4648,31.2891]}),s=[{name:"南海诸岛",value:1},{name:"北京",value:524},{name:"天津",value:14},{name:"上海",value:150},{name:"重庆",value:75},{name:"河北",value:13},{name:"河南",value:83},{name:"云南",value:11},{name:"辽宁",value:19},{name:"黑龙江",value:15},{name:"湖南",value:69},{name:"安徽",value:260},{name:"山东",value:39},{name:"新疆",value:4},{name:"江苏",value:31},{name:"浙江",value:104},{name:"江西",value:36},{name:"湖北",value:1052},{name:"广西",value:33},{name:"甘肃",value:347},{name:"山西",value:8},{name:"内蒙古",value:157},{name:"陕西",value:22},{name:"吉林",value:4},{name:"福建",value:36},{name:"贵州",value:39},{name:"广东",value:996},{name:"青海",value:27},{name:"西藏",value:31},{name:"四川",value:46},{name:"宁夏",value:16},{name:"海南",value:22},{name:"台湾",value:6},{name:"香港",value:2},{name:"澳门",value:9}],r=function(t){for(var e=[],i=0;i1?"  "+t.name+"   "+t.value[2]+"  ":"  "+t.name+"   "+t.value+"  "}},geo:{map:"china",show:!0,roam:!1,label:{emphasis:{show:!1}},layoutSize:"80%",itemStyle:{normal:{borderColor:new n.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#00F6FF"},{offset:1,color:"#53D9FF"}],!1),borderWidth:3,shadowColor:"rgba(10,76,139,1)",shadowOffsetY:0,shadowBlur:60}}},series:[{type:"map",map:"china",aspectScale:.75,label:{normal:{position:"right",show:!0,color:"#53D9FF",fontSize:20},emphasis:{show:!0}},itemStyle:{normal:{areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:"#061E3D"}]},borderColor:"#215495",borderWidth:1},emphasis:{areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:"#2B91B7"}]}}},data:s},{type:"effectScatter",coordinateSystem:"geo",rippleEffect:{brushType:"stroke"},showEffectOn:"render",itemStyle:{normal:{color:{type:"radial",x:.5,y:.5,r:.5,colorStops:[{offset:0,color:"rgba(5,80,151,0.2)"},{offset:.8,color:"rgba(5,80,151,0.8)"},{offset:1,color:"rgba(0,108,255,0.7)"}],global:!1}}},label:{normal:{show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(t){return"{cnNum|"+t.data.value[2]+"}"},rich:{cnNum:{fontSize:13,color:"#D4EEFF"}}}},symbol:"circle",symbolSize:function(t){return 0==t[2]?0:(l-h)/5990*t[2]+1.2*(l-(l-h)/5990*6e3)},data:r(s),zlevel:1}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.setup,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionTextValue(),this.setOptionsData(),this.setOptionAirSize(),this.setOptionMapBlocak()},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.show=t.isNoTitle,e.text=t.titleText,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionTextValue:function(){var t=this.optionsSetup,e=this.options.series[0].label,i={position:"right",show:!0,color:t.fontTextColor,fontSize:t.fontTextSize,fontWeight:t.fontTextWeight};e.normal=i},setOptionMapBlocak:function(){var t=this.optionsSetup,e=this.options.series[0].itemStyle,i={areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:t.font0PreColor},{offset:1,color:t.font100PreColor}]},borderColor:"#215495",borderWidth:1},o={areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:t.fontHighlightColor}]}};e.normal=i,e.emphasis=o},setOptionAirSize:function(){l=this.optionsSetup.fontmaxSize4Pin,h=this.optionsSetup.fontminSize4Pin},setOptionsData:function(){var t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData):this.dynamicDataFn(t.dynamicData,t.refreshTime)},staticDataFn:function(t){this.options.series[0].data=t;var e=this.optionsSetup,i=this.options.series[1].label,o={show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(t){return"{cnNum|"+t.data.value[2]+"}"},rich:{cnNum:{fontSize:e.fontDataSize,color:e.fontDataColor,fontWeight:e.fontDataWeight}}},n=r(t);this.options.series[1].data=n,i.normal=o},dynamicDataFn:function(t,e){var i=this;t&&(this.ispreview?(this.getEchartData(t),this.flagInter=setInterval(function(){i.getEchartData(t)},e)):this.getEchartData(t))},getEchartData:function(t){var e=this;this.queryEchartsData(t).then(function(t){e.renderingFn(t)})},renderingFn:function(t){this.options.series[0].data=t;var e=this.optionsSetup,i=this.options.series[1].label,o={show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(t){return"{cnNum|"+t.data.value[2]+"}"},rich:{cnNum:{fontSize:e.fontDataSize,color:e.fontDataColor,fontWeight:e.fontDataWeight}}},n=r(t);this.options.series[1].data=n,i.normal=o}}},c=(i("5wqb"),i("ZrdR")),p=Object(c.a)(u,function(){var t=this.$createElement,e=this._self._c||t;return e("div",{style:this.styleObj},[e("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"82db8fb2",null);p.options.__file="widgetAirBubbleMap.vue";e.a=p.exports},GWHw:function(t,e,i){"use strict";var o={name:"WidgetIframe",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",iframeAdress:this.transStyle.iframeAdress}}},watch:{value:{handler:function(t){this.options=t},deep:!0}},mounted:function(){this.options=this.value},methods:{}},n=(i("qpv/"),i("ZrdR")),a=Object(n.a)(o,function(){var t=this.$createElement;return(this._self._c||t)("iframe",{style:this.styleColor,attrs:{src:this.styleColor.iframeAdress,width:"100%",height:"100%"}})},[],!1,null,"537c80f2",null);a.options.__file="widgetIframe.vue";e.a=a.exports},HMir:function(t,e,i){"use strict";var o=i("TSjp"),n=i.n(o),a={name:"widgetMoreBarLineChart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{tooltip:{trigger:"item",axisPointer:{type:"shadow"}},grid:{left:"2%",right:"4%",bottom:"14%",top:"16%",containLabel:!0},legend:{data:["调解成功","调解失败","调解终止","调解成功率"],left:"7%",top:"5%",textStyle:{color:"#666666"},itemWidth:15,itemHeight:10,itemGap:25},xAxis:{type:"category",data:["2012","2013","2014","2015","2016","2017","2018","2019"],axisLine:{lineStyle:{color:"#cdd5e2"}},axisLabel:{textStyle:{color:"#666666"}}},yAxis:[{type:"value",axisLine:{show:!0,lineStyle:{color:"#cdd5e2"}},splitLine:{show:!1},axisLabel:{textStyle:{color:"#666666"}}},{type:"value",nameTextStyle:{color:"#666666"},position:"right",axisLine:{lineStyle:{color:"#cdd5e2"}},splitLine:{show:!1},axisLabel:{show:!0,textStyle:{color:"#666666"}}}],series:[{name:"调解成功",type:"bar",itemStyle:{normal:{color:new n.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#29acff"},{offset:1,color:"#4bdfff"}]),barBorderRadius:6}},data:[]},{name:"调解失败",type:"bar",itemStyle:{normal:{color:new n.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#3d93f2"},{offset:1,color:"#5dc1fd"}]),barBorderRadius:6}},data:[]},{name:"调解终止",type:"bar",itemStyle:{normal:{color:new n.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#01c871"},{offset:1,color:"#55f49c"}]),barBorderRadius:6}},data:[]},{name:"调解成功率",type:"line",yAxisIndex:1,smooth:!1,symbol:"circle",symbolSize:8,itemStyle:{normal:{color:"#ffa43a",borderColor:"rgba(255, 234, 0, 0.5)",borderWidth:5}},lineStyle:{color:"#ffa43a"},data:[]}]}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.collapse,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsLegend(),this.setOptionsTooltip(),this.setOptionsMargin(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.text=t.titleText,e.show=t.isNoTitle,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionsX:function(){var t=this.optionsSetup,e={type:"category",show:t.hideX,name:t.xName,nameTextStyle:{color:t.nameColorX,fontSize:t.nameFontSizeX},nameRotate:t.textAngle,inverse:t.reversalX,axisLabel:{show:!0,interval:t.textInterval,rotate:t.textAngle,textStyle:{color:t.Xcolor,fontSize:t.fontSizeX}},axisLine:{show:!0,lineStyle:{color:t.lineColorX}},splitLine:{show:t.isShowSplitLineX,lineStyle:{color:t.splitLineColorX}}};this.options.xAxis=e},setOptionsY:function(){var t=this.optionsSetup,e=[{type:"value",show:t.isShowYLeft,name:t.textNameYLeft,nameTextStyle:{color:t.nameColorYLeft,fontSize:t.namefontSizeYLeft},axisLabel:{show:!0,textStyle:{color:t.colorY,fontSize:t.fontSizeY}},axisLine:{show:t.isShowYLeft,lineStyle:{color:t.lineColorY}},splitLine:{show:!1}},{type:"value",position:"right",show:t.isShowYRight,name:t.textNameYRight,nameTextStyle:{color:t.nameColorYRight,fontSize:t.namefontSizeYRight},axisLabel:{show:!0,textStyle:{color:t.colorY,fontSize:t.fontSizeY}},axisLine:{show:t.isShowYRight,lineStyle:{color:t.lineColorY}},splitLine:{show:!1}}];this.options.yAxis=e},setOptionsTooltip:function(){var t=this.optionsSetup,e={trigger:"item",show:!0,textStyle:{color:t.lineColor,fontSize:t.tipFontSize}};this.options.tooltip=e},setOptionsMargin:function(){var t=this.optionsSetup,e={left:t.marginLeft,right:t.marginRight,bottom:t.marginBottom,top:t.marginTop,containLabel:!0};this.options.grid=e},setOptionsLegend:function(){var t=this.optionsSetup,e=this.options.legend;e.show=t.isShowLegend,e.left=t.lateralPosition,e.top=t.longitudinalPosition,e.bottom=t.longitudinalPosition,e.orient=t.layoutFront,e.textStyle={color:t.lengedColor,fontSize:t.lengedFontSize},e.itemWidth=t.lengedWidth},setOptionsLegendName:function(t){var e=this.optionsSetup,i=this.options.series,o=e.legendName;if(null==o||""==o){for(var n=0;n{b} : {c}%"},legend:{textStyle:{color:"#fff"}},xAxis:[{type:"category",data:[],axisLabel:{show:!1,textStyle:{color:"#fff"}}}],yAxis:[{type:"value",name:"",min:0,max:250,interval:50,axisLabel:{show:!0,textStyle:{color:"#fff"}}},{type:"value",name:"",min:0,max:25,interval:5,axisLabel:{show:!0,textStyle:{color:"#fff"}}}],series:[{name:"",type:"bar",yAxisIndex:0,data:[],itemStyle:{barBorderRadius:null}},{name:"",type:"line",yAxisIndex:1,data:[],itemStyle:{}}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.collapse,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsLine(),this.setOptionsBar(),this.setOptionsTooltip(),this.setOptionsData(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsColor()},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.text=t.titleText,e.show=t.isNoTitle,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionsX:function(){var t=this.optionsSetup,e={type:"category",show:t.hideX,name:t.xName,nameTextStyle:{color:t.nameColorX,fontSize:t.nameFontSizeX},nameRotate:t.textAngle,inverse:t.reversalX,axisLabel:{show:!0,interval:t.textInterval,rotate:t.textAngle,textStyle:{color:t.Xcolor,fontSize:t.fontSizeX}},axisLine:{show:!0,lineStyle:{color:t.lineColorX}},splitLine:{show:t.isShowSplitLineX,lineStyle:{color:t.splitLineColorX}}};this.options.xAxis=e},setOptionsY:function(){var t=this.optionsSetup,e=[{type:"value",splitNumber:t.splitNumberLeft,show:t.isShowYLeft,name:t.textNameYLeft,nameTextStyle:{color:t.nameColorYLeft,fontSize:t.namefontSizeYLeft},inverse:t.reversalY,axisLabel:{show:!0,textStyle:{color:t.colorY,fontSize:t.fontSizeY}},axisLine:{show:!0,lineStyle:{color:t.lineColorY}},splitLine:{show:!1}},{type:"value",splitNumber:t.splitNumberRight,show:t.isShowYRight,name:t.textNameYRight,nameTextStyle:{color:t.nameColorYRight,fontSize:t.namefontSizeYRight},inverse:t.reversalY,axisLabel:{show:!0,textStyle:{color:t.colorY,fontSize:t.fontSizeY}},axisLine:{show:!0,lineStyle:{color:t.lineColorY}},splitLine:{show:!1}}];this.options.yAxis=e},setOptionsLine:function(){var t=this.optionsSetup,e=this.options.series;for(var i in e)"line"==e[i].type&&(e[i].showSymbol=t.markPoint,e[i].symbolSize=t.pointSize,e[i].smooth=t.smoothCurve,t.area?e[i].areaStyle={opacity:t.areaThickness/100}:e[i].areaStyle={opacity:0},e[i].lineStyle={width:t.lineWidth},e[i].itemStyle.borderRadius=t.radius,e[i].label={show:t.isShowLine,position:"top",distance:t.distanceLine,fontSize:t.fontSizeLine,color:t.subTextColorLine,fontWeight:t.fontWeightLine});this.options.series=e},setOptionsBar:function(){var t=this.optionsSetup,e=this.options.series;for(var i in e)"bar"==e[i].type&&(e[i].label={show:t.isShowBar,position:"top",distance:t.distanceBar,fontSize:t.fontSizeBar,color:t.subTextColorBar,fontWeight:t.fontWeightBar},e[i].barWidth=t.maxWidth,e[i].barMinHeight=t.minHeight,e[i].itemStyle.barBorderRadius=t.radius);this.options.series=e},setOptionsTooltip:function(){var t=this.optionsSetup,e={trigger:"item",show:!0,textStyle:{color:t.lineColor,fontSize:t.tipFontSize}};this.options.tooltip=e},setOptionsMargin:function(){var t=this.optionsSetup,e={left:t.marginLeft,right:t.marginRight,bottom:t.marginBottom,top:t.marginTop,containLabel:!0};this.options.grid=e},setOptionsLegend:function(){var t=this.optionsSetup,e=this.options.legend;e.show=t.isShowLegend,e.left=t.lateralPosition,e.top=t.longitudinalPosition,e.bottom=t.longitudinalPosition,e.orient=t.layoutFront,e.textStyle={color:t.lengedColor,fontSize:t.lengedFontSize},e.itemWidth=t.lengedWidth},setOptionsLegendName:function(t){var e=this.optionsSetup,i=this.options.series,o=e.legendName;if(null==o||""==o){for(var n=0;n"+t.seriesName+" ---\x3e "+t.data.name+"
人数:"+t.data.value[2]+"人":"lines"==t.seriesType?"流出
"+t.data.fromName+" ---\x3e "+t.data.toName+"
人数:"+t.data.value+"人":t.name}},legend:{show:!1,orient:"vertical",top:"bottom",left:"right",data:["广州"],textStyle:{color:"#fff"},selectedMode:"single"},geo:{map:"china",label:{emphasis:{show:!0,color:"white"}},roam:!0,itemStyle:{normal:{areaColor:"#323c48",borderColor:"#404a59"},emphasis:{areaColor:"#2a333d"}}},series:[]},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position},deep:!0}},created:function(){this.optionsStyle=this.value.position},mounted:function(){this.initData()},methods:{initData:function(){var t=this.options;t.series.push({name:a[0],type:"lines",zlevel:1,effect:{show:!0,period:6,trailLength:.7,color:"#fff",symbolSize:3},lineStyle:{normal:{color:n[0],width:0,curveness:.2}},data:this.convertData(a[1])},{name:a[0],type:"lines",zlevel:2,effect:{show:!0,period:6,trailLength:0,symbol:"path://M1705.06,1318.313v-89.254l-319.9-221.799l0.073-208.063c0.521-84.662-26.629-121.796-63.961-121.491c-37.332-0.305-64.482,36.829-63.961,121.491l0.073,208.063l-319.9,221.799v89.254l330.343-157.288l12.238,241.308l-134.449,92.931l0.531,42.034l175.125-42.917l175.125,42.917l0.531-42.034l-134.449-92.931l12.238-241.308L1705.06,1318.313z",symbolSize:15},lineStyle:{normal:{color:n[0],width:1,opacity:.4,curveness:.2}},data:this.convertData(a[1])},{name:a[0],type:"effectScatter",coordinateSystem:"geo",zlevel:2,rippleEffect:{brushType:"stroke"},label:{normal:{show:!0,position:"right",formatter:"{b}"}},symbolSize:function(t){return t[2]/8},itemStyle:{normal:{color:n[0]}},data:a[1].map(function(t){return{name:t[1].name,value:o[t[1].name].concat([t[1].value])}})}),this.options=t},convertData:function(t){for(var e=[],i=0;i{b} : {c}"},legend:{x:"center",y:"92%",textStyle:{color:"#fff"}},series:[{name:"",type:"funnel",left:"center",width:"80%",sort:"descending",label:{normal:{show:!0,position:"inside",formatter:"{c}",textStyle:{color:"#fff",fontSize:14}},emphasis:{position:"inside",formatter:"{b}: {c}"}},itemStyle:{normal:{opacity:.8,borderColor:"rgba(12, 13, 43, .9)",borderWidth:1,shadowBlur:4,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"rgba(0, 0, 0, .6)"}},data:[]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.collapse,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setEnding(),this.setOptionsText(),this.setOptionsTitle(),this.setOptionsTooltip(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData()},setEnding:function(){var t=this.optionsSetup,e=this.options.series;t.ending?e[0].sort="ascending":e[0].sort="descending"},setOptionsText:function(){var t=this.optionsSetup,e={show:t.isShow,position:"inside",formatter:"{c}",textStyle:{color:t.color,fontSize:t.fontSize,fontWeight:t.fontWeight}};this.options.series[0].label.normal=e},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.text=t.titleText,e.show=t.isNoTitle,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionsTooltip:function(){var t=this.optionsSetup,e={trigger:"item",show:!0,textStyle:{color:t.lineColor,fontSize:t.tipFontSize}};this.options.tooltip=e},setOptionsLegend:function(){var t=this.optionsSetup,e=this.options.legend;e.show=t.isShowLegend,e.left=t.lateralPosition,e.right=t.lateralPosition,e.top=t.longitudinalPosition,e.bottom=t.longitudinalPosition,e.orient=t.layoutFront,e.textStyle={color:t.lengedColor,fontSize:t.lengedFontSize},e.itemWidth=t.lengedWidth},setOptionsColor:function(){var t=this.optionsSetup.customColor;if(t){for(var e=[],i=0;i-1?this.formatWeek(new Date,this.transStyle.timeFormat):this.formatFunction(new Date,this.transStyle.timeFormat)},getTime:function(){var t=this;setInterval(function(){t.displayTime()},1e3)}}},n=(i("/y+v"),i("ZrdR")),a=Object(n.a)(o,function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"text",style:this.styleColor},[this._v(this._s(this.timestr))])},[],!1,null,"6da4b633",null);a.options.__file="widgetTime.vue";e.a=a.exports},"cf/8":function(t,e,i){},cyzc:function(t,e,i){"use strict";var o={name:"WidgetImage",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",background:this.transStyle.background,"text-align":this.transStyle.textAlign,width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px"}},imgStyle:function(){return{imageAdress:this.transStyle.imageAdress,"border-radius":this.transStyle.borderRadius+"px",opacity:this.transStyle.transparency/100}}},watch:{value:{handler:function(t){this.options=t},deep:!0}},created:function(){this.options=this.value},mounted:function(){},methods:{}},n=(i("palL"),i("ZrdR")),a=Object(n.a)(o,function(){var t=this.$createElement,e=this._self._c||t;return e("div",{staticClass:"imagebox",style:this.styleColor},[e("img",{class:this.transStyle.startRotate?"startImg":"",style:this.imgStyle,attrs:{src:this.imgStyle.imageAdress,alt:""}})])},[],!1,null,"92e12b86",null);a.options.__file="widgetImage.vue";e.a=a.exports},fYW0:function(t,e,i){"use strict";var o=i("2Hon");i.n(o).a},gLgb:function(t,e,i){"use strict";var o={name:"WidgetHref",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",color:this.transStyle.color||"#fff","font-weight":this.transStyle.fontWeight||"600",text:this.transStyle.text||"超链接","font-size":this.transStyle.fontSize+"px"||"12px","letter-spacing":this.transStyle.letterSpacing+"em",background:this.transStyle.background,"text-align":this.transStyle.textAlign,display:void 0==this.transStyle.hideLayer?"block":this.transStyle.hideLayer?"none":"block",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",linkAdress:this.transStyle.linkAdress,jumpMode:"other"==this.transStyle.jumpMode?"_blank":"_self"}}},watch:{value:{handler:function(t){this.options=t},deep:!0}},mounted:function(){this.options=this.value},methods:{}},n=(i("uLc6"),i("ZrdR")),a=Object(n.a)(o,function(){var t=this.$createElement;return(this._self._c||t)("a",{style:this.styleColor,attrs:{href:this.styleColor.linkAdress,target:this.styleColor.jumpMode}},[this._v(this._s(this.styleColor.text))])},[],!1,null,"6ebd3276",null);a.options.__file="widgetHref.vue";e.a=a.exports},gvzL:function(t,e,i){},"h+18":function(t,e,i){"use strict";var o=i("T7H8");i.n(o).a},h6gK:function(t,e,i){"use strict";var o=i("cf/8");i.n(o).a},j9f0:function(t,e,i){"use strict";var o=i("jof3");i.n(o).a},jOJk:function(t,e,i){"use strict";var o=i("1OLZ");i.n(o).a},jZP0:function(t,e,i){"use strict";var o=i("OeK3");i.n(o).a},jmgl:function(t,e,i){"use strict";var o=i("TSjp"),n=i.n(o),a={name:"WidgetGauge",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{series:[{type:"gauge",z:100,axisLine:{lineStyle:{width:10,color:[[.3,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(0, 237, 3,0.1)"},{offset:.5,color:"rgba(0, 237, 3,0.6)"},{offset:1,color:"rgba(0, 237, 3,1)"}])],[.7,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(255, 184, 0,0.1)"},{offset:.5,color:"rgba(255, 184, 0,0.6)"},{offset:1,color:"rgba(255, 184, 0,1)"}])],[1,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(175, 36, 74,0.1)"},{offset:.5,color:"rgba(255, 36, 74,0.6)"},{offset:1,color:"rgba(255, 36, 74,1)"}])]]}},pointer:{itemStyle:{color:"auto"}},axisTick:{show:!0,distance:0,length:10,lineStyle:{color:"auto",width:2}},splitLine:{show:!0,distance:0,length:14,lineStyle:{color:"auto",width:4}},axisLabel:{show:!0,color:"white",distance:2,fontSize:10},detail:{valueAnimation:!0,formatter:"{value} %",color:"white",fontSize:18},data:[{value:70}]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.collapse,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptions(),this.setOptionsData()},setOptions:function(){var t=this.optionsSetup,e=this.options.series;if("gauge"==e[0].type){var i={show:t.ringShow,lineStyle:{width:t.pieWeight,color:[[.3,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:t.color30p0},{offset:.5,color:t.color30p5},{offset:1,color:t.color30p10}])],[.7,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:t.color70p0},{offset:.5,color:t.color70p5},{offset:1,color:t.color70p10}])],[1,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:t.color100p0},{offset:.5,color:t.color100p5},{offset:1,color:t.color100p10}])]]}},o={show:t.tickShow,distance:t.tickDistance,length:t.tickLength,lineStyle:{color:"auto",width:t.tickWidth}},a={show:t.splitShow,distance:t.splitDistance,length:t.splitLength,lineStyle:{color:"auto",width:t.splitWidth}};e[0].axisLine=i,e[0].axisTick=o,e[0].splitLine=a}},setOptionsData:function(){var t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData):this.dynamicDataFn(t.dynamicData,t.refreshTime)},staticDataFn:function(t){var e=this.optionsSetup,i=this.options.series,o=[{value:t[0].num}],n={valueAnimation:!0,formatter:"{value} %",color:e.labelColor,fontSize:e.labelFontSize,fontWeight:e.labelFontWeight};i[0].data=o,i[0].detail=n},dynamicDataFn:function(t,e){var i=this;t&&(this.ispreview?(this.getEchartData(t),this.flagInter=setInterval(function(){i.getEchartData(t)},e)):this.getEchartData(t))},getEchartData:function(t){var e=this;this.queryEchartsData(t).then(function(t){e.renderingFn(t)})},renderingFn:function(t){var e=this.optionsSetup,i=this.options.series,o=[{value:t[0].value}],n={valueAnimation:!0,formatter:"{value} %",color:e.labelColor,fontSize:e.labelFontSize,fontWeight:e.labelFontWeight};i[0].data=o,i[0].detail=n}}},s=(i("Ydp4"),i("ZrdR")),r=Object(s.a)(a,function(){var t=this.$createElement,e=this._self._c||t;return e("div",{style:this.styleObj},[e("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"a83b2528",null);r.options.__file="widgetGauge.vue";e.a=r.exports},jof3:function(t,e,i){},kLPZ:function(t,e,i){"use strict";var o=i("I8wO");i.n(o).a},kq3f:function(t,e,i){"use strict";var o=i("6ZY3"),n=i.n(o),a={name:"WidgetPieNightingaleRoseArea",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{legend:{top:"bottom"},toolbox:{show:!0,feature:{mark:{show:!0}}},series:[{type:"pie",radius:["10%","50%"],center:["50%","50%"],roseType:"area",itemStyle:{borderRadius:8},data:[]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.setup,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsValue(),this.setOptionsTooltip(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData(),this.setOptionsRosetype()},setOptionsRosetype:function(){this.options.series[0].roseType=this.optionsSetup.nightingleRosetype},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.text=t.titleText,e.show=t.isNoTitle,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionsValue:function(){var t=this.optionsSetup,e=this.options.series,i=t.numberValue?"{c}":"",o=t.percentage?"({d})%":"",n={show:t.isShow,formatter:"{a|{b}:"+i+" "+o+"}",rich:{a:{padding:[-30,15,-20,15],color:t.subTextColor,fontSize:t.fontSize,fontWeight:t.fontWeight}},fontSize:t.fontSize,fontWeight:t.optionsCollapse};for(var a in e)"pie"==e[a].type&&(e[a].label=n,e[a].labelLine={show:t.isShow})},setOptionsTooltip:function(){var t=this.optionsSetup,e={trigger:"item",show:!0,textStyle:{color:t.lineColor,fontSize:t.fontSize}};this.options.tooltip=e},setOptionsMargin:function(){var t=this.optionsSetup,e={left:t.marginLeft,right:t.marginRight,bottom:t.marginBottom,top:t.marginTop,containLabel:!0};this.options.grid=e},setOptionsLegend:function(){var t=this.optionsSetup,e=this.options.legend;e.show=t.isShowLegend,e.left="left"==t.lateralPosition?0:"auto",e.right="right"==t.lateralPosition?0:"auto",e.top="top"==t.longitudinalPosition?0:"auto",e.bottom="bottom"==t.longitudinalPosition?0:"auto",e.orient=t.layoutFront,e.textStyle={color:t.lengedColor,fontSize:t.fontSize},e.itemWidth=t.lengedWidth},setOptionsColor:function(){var t=this.optionsSetup.customColor;if(t){for(var e=[],i=0;i{b} : {c}%"},legend:{textStyle:{color:"#fff"}},xAxis:{type:"category",data:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],axisLabel:{show:!0,textStyle:{color:"#fff"}}},yAxis:{type:"value",axisLabel:{show:!0,textStyle:{color:"#fff"}}},series:[{data:[],type:"line"}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.collapse,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsTop(),this.setOptionsTooltip(),this.setOptionsData(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsColor()},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.text=t.titleText,e.show=t.isNoTitle,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionsX:function(){var t=this.optionsSetup,e={type:"category",show:t.hideX,name:t.xName,nameTextStyle:{color:t.nameColorX,fontSize:t.nameFontSizeX},nameRotate:t.textAngle,inverse:t.reversalX,axisLabel:{show:!0,interval:t.textInterval,rotate:t.textAngle,textStyle:{color:t.Xcolor,fontSize:t.fontSizeX}},axisLine:{show:!0,lineStyle:{color:t.lineColorX}},splitLine:{show:t.isShowSplitLineX,lineStyle:{color:t.splitLineColorX}}};this.options.xAxis=e},setOptionsY:function(){var t=this.optionsSetup,e={type:"value",scale:t.scale,splitNumber:t.splitNumber,show:t.isShowY,name:t.textNameY,nameTextStyle:{color:t.nameColorY,fontSize:t.namefontSizeY},inverse:t.reversalY,axisLabel:{show:!0,rotate:t.ytextAngle,textStyle:{color:t.colorY,fontSize:t.fontSizeY}},axisLine:{show:!0,lineStyle:{color:t.lineColorY}},splitLine:{show:t.isShowSplitLineY,lineStyle:{color:t.splitLineColorY}}};this.options.yAxis=e},setOptionsTop:function(){var t=this.optionsSetup,e=this.options.series;for(var i in e)"line"==e[i].type&&(e[i].showSymbol=t.markPoint,e[i].symbolSize=t.pointSize,e[i].smooth=t.smoothCurve,t.area?e[i].areaStyle={opacity:t.areaThickness/100}:e[i].areaStyle={opacity:0},e[i].lineStyle={width:t.lineWidth},e[i].label={show:t.isShow,position:"top",distance:10,fontSize:t.fontSize,color:t.subTextColor,fontWeight:t.fontWeight});this.options.series=e},setOptionsTooltip:function(){var t=this.optionsSetup,e={trigger:"item",show:!0,textStyle:{color:t.lineColor,fontSize:t.fontSize}};this.options.tooltip=e},setOptionsMargin:function(){var t=this.optionsSetup,e={left:t.marginLeft,right:t.marginRight,bottom:t.marginBottom,top:t.marginTop,containLabel:!0};this.options.grid=e},setOptionsLegend:function(){var t=this.optionsSetup,e=this.options.legend;e.show=t.isShowLegend,e.left=t.lateralPosition,e.right=t.lateralPosition,e.top=t.longitudinalPosition,e.bottom=t.longitudinalPosition,e.orient=t.layoutFront,e.textStyle={color:t.lengedColor,fontSize:t.fontSize},e.itemWidth=t.lengedWidth},setOptionsLegendName:function(t){var e=this.optionsSetup,i=this.options.series,o=e.legendName;if(null==o||""==o){for(var n=0;n=0?1/(Math.cos(2*Math.PI/10-e)+3.07768*Math.sin(2*Math.PI/10-e)):1/(Math.cos(e)+3.07768*Math.sin(e))}}o.gridSize=Math.max(Math.floor(o.gridSize),4);var h,u,c,p,f,d,g,v=o.gridSize,m=v-o.maskGapWidth,y=Math.abs(o.maxRotation-o.minRotation),x=Math.min(o.maxRotation,o.minRotation),S=o.rotationStep;switch(o.color){case"random-dark":g=function(){return i(10,50)};break;case"random-light":g=function(){return i(50,90)};break;default:"function"==typeof o.color&&(g=o.color)}var w=null;"function"==typeof o.classes&&(w=o.classes);var b,O=!1,T=[],C=function(t){var e,i,o=t.currentTarget,n=o.getBoundingClientRect();t.touches?(e=t.touches[0].clientX,i=t.touches[0].clientY):(e=t.clientX,i=t.clientY);var a=e-n.left,s=i-n.top,r=Math.floor(a*(o.width/n.width||1)/v),l=Math.floor(s*(o.height/n.height||1)/v);return T[r][l]},_=function(t){var e=C(t);if(b!==e){if(b=e,!e)return void o.hover(void 0,void 0,t);o.hover(e.item,e.dimension,t)}},D=function(t){var e=C(t);e&&(o.click(e.item,e.dimension,t),t.preventDefault())},L=[],z=function(t){if(L[t])return L[t];var e=8*t,i=e,n=[];for(0===t&&n.push([p[0],p[1],0]);i--;){var a=1;"circle"!==o.shape&&(a=o.shape(i/e*2*Math.PI)),n.push([p[0]+t*a*Math.cos(-i/e*2*Math.PI),p[1]+t*a*Math.sin(-i/e*2*Math.PI)*o.ellipticity,i/e*2*Math.PI])}return L[t]=n,n},k=function(){return o.abortThreshold>0&&(new Date).getTime()-d>o.abortThreshold},A=function(t,e,i){var n=o.weightFactor(e);if(n<=o.minSize)return!1;var s=1;nL[1]&&(L[1]=D),OL[2]&&(L[2]=O);break t}}return{mu:s,occupied:_,bounds:L,gw:x,gh:y,fillTextOffsetX:g,fillTextOffsetY:m,fillTextWidth:h,fillTextHeight:u,fontSize:n}},M=function(t,e,i,n,a){for(var s=a.length;s--;){var r=t+a[s][0],l=e+a[s][1];if(r>=u||l>=c||r<0||l<0){if(!o.drawOutOfBound)return!1}else if(!h[r][l])return!1}return!0},F=function(e,i,n,a,s,r,l,h,u){var c,p,f=n.fontSize;c=g?g(a,s,f,r,l):o.color,p=w?w(a,s,f,r,l):o.classes;var d=n.bounds;d[3],d[0],d[1],d[3],d[2],d[0],t.forEach(function(t){if(t.getContext){var s=t.getContext("2d"),r=n.mu;s.save(),s.scale(1/r,1/r),s.font=o.fontWeight+" "+(f*r).toString(10)+"px "+o.fontFamily,s.fillStyle=c,s.translate((e+n.gw/2)*v*r,(i+n.gh/2)*v*r),0!==h&&s.rotate(-h),s.textBaseline="middle",s.fillText(a,n.fillTextOffsetX*r,(n.fillTextOffsetY+.5*f)*r),s.restore()}else{var l=document.createElement("span"),d="";d="rotate("+-h/Math.PI*180+"deg) ",1!==n.mu&&(d+="translateX(-"+n.fillTextWidth/4+"px) scale("+1/n.mu+")");var g={position:"absolute",display:"block",font:o.fontWeight+" "+f*n.mu+"px "+o.fontFamily,left:(e+n.gw/2)*v+n.fillTextOffsetX+"px",top:(i+n.gh/2)*v+n.fillTextOffsetY+"px",width:n.fillTextWidth+"px",height:n.fillTextHeight+"px",lineHeight:f+"px",whiteSpace:"nowrap",transform:d,webkitTransform:d,msTransform:d,transformOrigin:"50% 40%",webkitTransformOrigin:"50% 40%",msTransformOrigin:"50% 40%"};for(var m in c&&(g.color=c),l.textContent=a,g)l.style[m]=g[m];if(u)for(var y in u)l.setAttribute(y,u[y]);p&&(l.className+=p),t.appendChild(l)}})},P=function(e,i,o,n,a){e>=u||i>=c||e<0||i<0||(h[e][i]=!1,o&&t[0].getContext("2d").fillRect(e*v,i*v,m,m),O&&(T[e][i]={item:a,dimension:n}))},W=function(e,i,n,a,s,r){var l,h,p=s.occupied,f=o.drawMask;if(f&&((l=t[0].getContext("2d")).save(),l.fillStyle=o.maskColor),O){var d=s.bounds;h={x:(e+d[3])*v,y:(i+d[0])*v,w:(d[1]-d[3]+1)*v,h:(d[2]-d[0]+1)*v}}for(var g=p.length;g--;){var m=e+p[g][0],y=i+p[g][1];m>=u||y>=c||m<0||y<0||P(m,y,f,h,r)}f&&l.restore()},I=function(t){var e,i,n;Array.isArray(t)?(e=t[0],i=t[1]):(e=t.word,i=t.weight,n=t.attributes);var a=0===o.rotateRatio?0:Math.random()>o.rotateRatio?0:0===y?x:x+Math.round(Math.random()*y/S)*S,r=A(e,i,a);if(!r)return!1;if(k())return!1;if(!o.drawOutOfBound){var l=r.bounds;if(l[1]-l[3]+1>u||l[2]-l[0]+1>c)return!1}for(var h=f+1;h--;){var p=z(f-h);o.shuffle&&(p=[].concat(p),s(p));for(var d=0;d=o.list.length)return l(L),R("wordcloudstop",!1),void w("wordcloudstart",C);d=(new Date).getTime();var e=I(o.list[s]),i=!R("wordclouddrawn",!0,{item:o.list[s],drawn:e});if(k()||i)return l(L),o.abort(),R("wordcloudabort",!1),R("wordcloudstop",!1),void w("wordcloudstart",C);s++,L=r(t,o.wait)},o.wait)}}()}};r.isSupported=n,r.minFontSize=a,void 0!==(o=function(){return r}.apply(e,[]))&&(t.exports=o)}()}])}(i("TSjp"))},BPcn:function(t,e,i){},CZ5I:function(t,e,i){},"EO+T":function(t,e,i){"use strict";var o=i("u8RD");i.n(o).a},EwIA:function(t,e,i){},FxKO:function(t,e,i){"use strict";var o=i("TSjp"),n=i.n(o),a=(i("Z5Hk"),{"台湾":[121.5135,25.0308],"黑龙江":[127.9688,45.368],"内蒙古":[110.3467,41.4899],"吉林":[125.8154,44.2584],"北京":[116.4551,40.2539],"辽宁":[123.1238,42.1216],"河北":[114.4995,38.1006],"天津":[117.4219,39.4189],"山西":[112.3352,37.9413],"陕西":[109.1162,34.2004],"甘肃":[103.5901,36.3043],"宁夏":[106.3586,38.1775],"青海":[101.4038,36.8207],"新疆":[87.9236,43.5883],"西藏":[91.11,29.97],"四川":[103.9526,30.7617],"重庆":[108.384366,30.439702],"山东":[117.1582,36.8701],"河南":[113.4668,34.6234],"江苏":[118.8062,31.9208],"安徽":[117.29,32.0581],"湖北":[114.3896,30.6628],"浙江":[119.5313,29.8773],"福建":[119.4543,25.9222],"江西":[116.0046,28.6633],"湖南":[113.0823,28.2568],"贵州":[106.6992,26.7682],"云南":[102.9199,25.4663],"广东":[113.12244,23.009505],"广西":[108.479,23.1152],"海南":[110.3893,19.8516],"上海":[121.4648,31.2891]}),s=[{name:"南海诸岛",value:1},{name:"北京",value:524},{name:"天津",value:14},{name:"上海",value:150},{name:"重庆",value:75},{name:"河北",value:13},{name:"河南",value:83},{name:"云南",value:11},{name:"辽宁",value:19},{name:"黑龙江",value:15},{name:"湖南",value:69},{name:"安徽",value:260},{name:"山东",value:39},{name:"新疆",value:4},{name:"江苏",value:31},{name:"浙江",value:104},{name:"江西",value:36},{name:"湖北",value:1052},{name:"广西",value:33},{name:"甘肃",value:347},{name:"山西",value:8},{name:"内蒙古",value:157},{name:"陕西",value:22},{name:"吉林",value:4},{name:"福建",value:36},{name:"贵州",value:39},{name:"广东",value:996},{name:"青海",value:27},{name:"西藏",value:31},{name:"四川",value:46},{name:"宁夏",value:16},{name:"海南",value:22},{name:"台湾",value:6},{name:"香港",value:2},{name:"澳门",value:9}],r=function(t){for(var e=[],i=0;i1?"  "+t.name+"   "+t.value[2]+"  ":"  "+t.name+"   "+t.value+"  "}},geo:{map:"china",show:!0,roam:!1,label:{emphasis:{show:!1}},layoutSize:"80%",itemStyle:{normal:{borderColor:new n.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#00F6FF"},{offset:1,color:"#53D9FF"}],!1),borderWidth:3,shadowColor:"rgba(10,76,139,1)",shadowOffsetY:0,shadowBlur:60}}},series:[{type:"map",map:"china",aspectScale:.75,label:{normal:{position:"right",show:!0,color:"#53D9FF",fontSize:20},emphasis:{show:!0}},itemStyle:{normal:{areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:"#061E3D"}]},borderColor:"#215495",borderWidth:1},emphasis:{areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:"#2B91B7"}]}}},data:s},{type:"effectScatter",coordinateSystem:"geo",rippleEffect:{brushType:"stroke"},showEffectOn:"render",itemStyle:{normal:{color:{type:"radial",x:.5,y:.5,r:.5,colorStops:[{offset:0,color:"rgba(5,80,151,0.2)"},{offset:.8,color:"rgba(5,80,151,0.8)"},{offset:1,color:"rgba(0,108,255,0.7)"}],global:!1}}},label:{normal:{show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(t){return"{cnNum|"+t.data.value[2]+"}"},rich:{cnNum:{fontSize:13,color:"#D4EEFF"}}}},symbol:"circle",symbolSize:function(t){return 0==t[2]?0:(l-h)/5990*t[2]+1.2*(l-(l-h)/5990*6e3)},data:r(s),zlevel:1}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.setup,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionTextValue(),this.setOptionsData(),this.setOptionAirSize(),this.setOptionMapBlocak()},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.show=t.isNoTitle,e.text=t.titleText,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionTextValue:function(){var t=this.optionsSetup,e=this.options.series[0].label,i={position:"right",show:!0,color:t.fontTextColor,fontSize:t.fontTextSize,fontWeight:t.fontTextWeight};e.normal=i},setOptionMapBlocak:function(){var t=this.optionsSetup,e=this.options.series[0].itemStyle,i={areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:t.font0PreColor},{offset:1,color:t.font100PreColor}]},borderColor:"#215495",borderWidth:1},o={areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:t.fontHighlightColor}]}};e.normal=i,e.emphasis=o},setOptionAirSize:function(){l=this.optionsSetup.fontmaxSize4Pin,h=this.optionsSetup.fontminSize4Pin},setOptionsData:function(){var t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData):this.dynamicDataFn(t.dynamicData,t.refreshTime)},staticDataFn:function(t){this.options.series[0].data=t;var e=this.optionsSetup,i=this.options.series[1].label,o={show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(t){return"{cnNum|"+t.data.value[2]+"}"},rich:{cnNum:{fontSize:e.fontDataSize,color:e.fontDataColor,fontWeight:e.fontDataWeight}}},n=r(t);this.options.series[1].data=n,i.normal=o},dynamicDataFn:function(t,e){var i=this;t&&(this.ispreview?(this.getEchartData(t),this.flagInter=setInterval(function(){i.getEchartData(t)},e)):this.getEchartData(t))},getEchartData:function(t){var e=this;this.queryEchartsData(t).then(function(t){e.renderingFn(t)})},renderingFn:function(t){this.options.series[0].data=t;var e=this.optionsSetup,i=this.options.series[1].label,o={show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(t){return"{cnNum|"+t.data.value[2]+"}"},rich:{cnNum:{fontSize:e.fontDataSize,color:e.fontDataColor,fontWeight:e.fontDataWeight}}},n=r(t);this.options.series[1].data=n,i.normal=o}}},c=(i("5wqb"),i("ZrdR")),p=Object(c.a)(u,function(){var t=this.$createElement,e=this._self._c||t;return e("div",{style:this.styleObj},[e("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"82db8fb2",null);p.options.__file="widgetAirBubbleMap.vue";e.a=p.exports},GWHw:function(t,e,i){"use strict";var o={name:"WidgetIframe",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",iframeAdress:this.transStyle.iframeAdress}}},watch:{value:{handler:function(t){this.options=t},deep:!0}},mounted:function(){this.options=this.value},methods:{}},n=(i("qpv/"),i("ZrdR")),a=Object(n.a)(o,function(){var t=this.$createElement;return(this._self._c||t)("iframe",{style:this.styleColor,attrs:{src:this.styleColor.iframeAdress,width:"100%",height:"100%"}})},[],!1,null,"537c80f2",null);a.options.__file="widgetIframe.vue";e.a=a.exports},HMir:function(t,e,i){"use strict";var o=i("TSjp"),n=i.n(o),a={name:"widgetMoreBarLineChart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{tooltip:{trigger:"item",axisPointer:{type:"shadow"}},grid:{left:"2%",right:"4%",bottom:"14%",top:"16%",containLabel:!0},legend:{data:["调解成功","调解失败","调解终止","调解成功率"],left:"7%",top:"5%",textStyle:{color:"#666666"},itemWidth:15,itemHeight:10,itemGap:25},xAxis:{type:"category",data:["2012","2013","2014","2015","2016","2017","2018","2019"],axisLine:{lineStyle:{color:"#cdd5e2"}},axisLabel:{textStyle:{color:"#666666"}}},yAxis:[{type:"value",axisLine:{show:!0,lineStyle:{color:"#cdd5e2"}},splitLine:{show:!1},axisLabel:{textStyle:{color:"#666666"}}},{type:"value",nameTextStyle:{color:"#666666"},position:"right",axisLine:{lineStyle:{color:"#cdd5e2"}},splitLine:{show:!1},axisLabel:{show:!0,textStyle:{color:"#666666"}}}],series:[{name:"调解成功",type:"bar",itemStyle:{normal:{color:new n.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#29acff"},{offset:1,color:"#4bdfff"}]),barBorderRadius:6}},data:[]},{name:"调解失败",type:"bar",itemStyle:{normal:{color:new n.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#3d93f2"},{offset:1,color:"#5dc1fd"}]),barBorderRadius:6}},data:[]},{name:"调解终止",type:"bar",itemStyle:{normal:{color:new n.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#01c871"},{offset:1,color:"#55f49c"}]),barBorderRadius:6}},data:[]},{name:"调解成功率",type:"line",yAxisIndex:1,smooth:!1,symbol:"circle",symbolSize:8,itemStyle:{normal:{color:"#ffa43a",borderColor:"rgba(255, 234, 0, 0.5)",borderWidth:5}},lineStyle:{color:"#ffa43a"},data:[]}]}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.collapse,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsLegend(),this.setOptionsTooltip(),this.setOptionsMargin(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.text=t.titleText,e.show=t.isNoTitle,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionsX:function(){var t=this.optionsSetup,e={type:"category",show:t.hideX,name:t.xName,nameTextStyle:{color:t.nameColorX,fontSize:t.nameFontSizeX},nameRotate:t.textAngle,inverse:t.reversalX,axisLabel:{show:!0,interval:t.textInterval,rotate:t.textAngle,textStyle:{color:t.Xcolor,fontSize:t.fontSizeX}},axisLine:{show:!0,lineStyle:{color:t.lineColorX}},splitLine:{show:t.isShowSplitLineX,lineStyle:{color:t.splitLineColorX}}};this.options.xAxis=e},setOptionsY:function(){var t=this.optionsSetup,e=[{type:"value",show:t.isShowYLeft,name:t.textNameYLeft,nameTextStyle:{color:t.nameColorYLeft,fontSize:t.namefontSizeYLeft},axisLabel:{show:!0,textStyle:{color:t.colorY,fontSize:t.fontSizeY}},axisLine:{show:t.isShowYLeft,lineStyle:{color:t.lineColorY}},splitLine:{show:!1}},{type:"value",position:"right",show:t.isShowYRight,name:t.textNameYRight,nameTextStyle:{color:t.nameColorYRight,fontSize:t.namefontSizeYRight},axisLabel:{show:!0,textStyle:{color:t.colorY,fontSize:t.fontSizeY}},axisLine:{show:t.isShowYRight,lineStyle:{color:t.lineColorY}},splitLine:{show:!1}}];this.options.yAxis=e},setOptionsTooltip:function(){var t=this.optionsSetup,e={trigger:"item",show:!0,textStyle:{color:t.lineColor,fontSize:t.tipFontSize}};this.options.tooltip=e},setOptionsMargin:function(){var t=this.optionsSetup,e={left:t.marginLeft,right:t.marginRight,bottom:t.marginBottom,top:t.marginTop,containLabel:!0};this.options.grid=e},setOptionsLegend:function(){var t=this.optionsSetup,e=this.options.legend;e.show=t.isShowLegend,e.left=t.lateralPosition,e.top=t.longitudinalPosition,e.bottom=t.longitudinalPosition,e.orient=t.layoutFront,e.textStyle={color:t.lengedColor,fontSize:t.lengedFontSize},e.itemWidth=t.lengedWidth},setOptionsLegendName:function(t){var e=this.optionsSetup,i=this.options.series,o=e.legendName;if(null==o||""==o){for(var n=0;n{b} : {c}%"},legend:{textStyle:{color:"#fff"}},xAxis:[{type:"category",data:[],axisLabel:{show:!1,textStyle:{color:"#fff"}}}],yAxis:[{type:"value",name:"",min:0,max:250,interval:50,axisLabel:{show:!0,textStyle:{color:"#fff"}}},{type:"value",name:"",min:0,max:25,interval:5,axisLabel:{show:!0,textStyle:{color:"#fff"}}}],series:[{name:"",type:"bar",yAxisIndex:0,data:[],itemStyle:{barBorderRadius:null}},{name:"",type:"line",yAxisIndex:1,data:[],itemStyle:{}}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.collapse,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsLine(),this.setOptionsBar(),this.setOptionsTooltip(),this.setOptionsData(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsColor()},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.text=t.titleText,e.show=t.isNoTitle,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionsX:function(){var t=this.optionsSetup,e={type:"category",show:t.hideX,name:t.xName,nameTextStyle:{color:t.nameColorX,fontSize:t.nameFontSizeX},nameRotate:t.textAngle,inverse:t.reversalX,axisLabel:{show:!0,interval:t.textInterval,rotate:t.textAngle,textStyle:{color:t.Xcolor,fontSize:t.fontSizeX}},axisLine:{show:!0,lineStyle:{color:t.lineColorX}},splitLine:{show:t.isShowSplitLineX,lineStyle:{color:t.splitLineColorX}}};this.options.xAxis=e},setOptionsY:function(){var t=this.optionsSetup,e=[{type:"value",splitNumber:t.splitNumberLeft,show:t.isShowYLeft,name:t.textNameYLeft,nameTextStyle:{color:t.nameColorYLeft,fontSize:t.namefontSizeYLeft},inverse:t.reversalY,axisLabel:{show:!0,textStyle:{color:t.colorY,fontSize:t.fontSizeY}},axisLine:{show:!0,lineStyle:{color:t.lineColorY}},splitLine:{show:!1}},{type:"value",splitNumber:t.splitNumberRight,show:t.isShowYRight,name:t.textNameYRight,nameTextStyle:{color:t.nameColorYRight,fontSize:t.namefontSizeYRight},inverse:t.reversalY,axisLabel:{show:!0,textStyle:{color:t.colorY,fontSize:t.fontSizeY}},axisLine:{show:!0,lineStyle:{color:t.lineColorY}},splitLine:{show:!1}}];this.options.yAxis=e},setOptionsLine:function(){var t=this.optionsSetup,e=this.options.series;for(var i in e)"line"==e[i].type&&(e[i].showSymbol=t.markPoint,e[i].symbolSize=t.pointSize,e[i].smooth=t.smoothCurve,t.area?e[i].areaStyle={opacity:t.areaThickness/100}:e[i].areaStyle={opacity:0},e[i].lineStyle={width:t.lineWidth},e[i].itemStyle.borderRadius=t.radius,e[i].label={show:t.isShowLine,position:"top",distance:t.distanceLine,fontSize:t.fontSizeLine,color:t.subTextColorLine,fontWeight:t.fontWeightLine});this.options.series=e},setOptionsBar:function(){var t=this.optionsSetup,e=this.options.series;for(var i in e)"bar"==e[i].type&&(e[i].label={show:t.isShowBar,position:"top",distance:t.distanceBar,fontSize:t.fontSizeBar,color:t.subTextColorBar,fontWeight:t.fontWeightBar},e[i].barWidth=t.maxWidth,e[i].barMinHeight=t.minHeight,e[i].itemStyle.barBorderRadius=t.radius);this.options.series=e},setOptionsTooltip:function(){var t=this.optionsSetup,e={trigger:"item",show:!0,textStyle:{color:t.lineColor,fontSize:t.tipFontSize}};this.options.tooltip=e},setOptionsMargin:function(){var t=this.optionsSetup,e={left:t.marginLeft,right:t.marginRight,bottom:t.marginBottom,top:t.marginTop,containLabel:!0};this.options.grid=e},setOptionsLegend:function(){var t=this.optionsSetup,e=this.options.legend;e.show=t.isShowLegend,e.left=t.lateralPosition,e.top=t.longitudinalPosition,e.bottom=t.longitudinalPosition,e.orient=t.layoutFront,e.textStyle={color:t.lengedColor,fontSize:t.lengedFontSize},e.itemWidth=t.lengedWidth},setOptionsLegendName:function(t){var e=this.optionsSetup,i=this.options.series,o=e.legendName;if(null==o||""==o){for(var n=0;n"+t.seriesName+" ---\x3e "+t.data.name+"
人数:"+t.data.value[2]+"人":"lines"==t.seriesType?"流出
"+t.data.fromName+" ---\x3e "+t.data.toName+"
人数:"+t.data.value+"人":t.name}},legend:{show:!1,orient:"vertical",top:"bottom",left:"right",data:["广州"],textStyle:{color:"#fff"},selectedMode:"single"},geo:{map:"china",label:{emphasis:{show:!0,color:"white"}},roam:!0,itemStyle:{normal:{areaColor:"#323c48",borderColor:"#404a59"},emphasis:{areaColor:"#2a333d"}}},series:[]},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position},deep:!0}},created:function(){this.optionsStyle=this.value.position},mounted:function(){this.initData()},methods:{initData:function(){var t=this.options;t.series.push({name:a[0],type:"lines",zlevel:1,effect:{show:!0,period:6,trailLength:.7,color:"#fff",symbolSize:3},lineStyle:{normal:{color:n[0],width:0,curveness:.2}},data:this.convertData(a[1])},{name:a[0],type:"lines",zlevel:2,effect:{show:!0,period:6,trailLength:0,symbol:"path://M1705.06,1318.313v-89.254l-319.9-221.799l0.073-208.063c0.521-84.662-26.629-121.796-63.961-121.491c-37.332-0.305-64.482,36.829-63.961,121.491l0.073,208.063l-319.9,221.799v89.254l330.343-157.288l12.238,241.308l-134.449,92.931l0.531,42.034l175.125-42.917l175.125,42.917l0.531-42.034l-134.449-92.931l12.238-241.308L1705.06,1318.313z",symbolSize:15},lineStyle:{normal:{color:n[0],width:1,opacity:.4,curveness:.2}},data:this.convertData(a[1])},{name:a[0],type:"effectScatter",coordinateSystem:"geo",zlevel:2,rippleEffect:{brushType:"stroke"},label:{normal:{show:!0,position:"right",formatter:"{b}"}},symbolSize:function(t){return t[2]/8},itemStyle:{normal:{color:n[0]}},data:a[1].map(function(t){return{name:t[1].name,value:o[t[1].name].concat([t[1].value])}})}),this.options=t},convertData:function(t){for(var e=[],i=0;i{b} : {c}"},legend:{x:"center",y:"92%",textStyle:{color:"#fff"}},series:[{name:"",type:"funnel",left:"center",width:"80%",sort:"descending",label:{normal:{show:!0,position:"inside",formatter:"{c}",textStyle:{color:"#fff",fontSize:14}},emphasis:{position:"inside",formatter:"{b}: {c}"}},itemStyle:{normal:{opacity:.8,borderColor:"rgba(12, 13, 43, .9)",borderWidth:1,shadowBlur:4,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"rgba(0, 0, 0, .6)"}},data:[]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.collapse,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setEnding(),this.setOptionsText(),this.setOptionsTitle(),this.setOptionsTooltip(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData()},setEnding:function(){var t=this.optionsSetup,e=this.options.series;t.ending?e[0].sort="ascending":e[0].sort="descending"},setOptionsText:function(){var t=this.optionsSetup,e={show:t.isShow,position:"inside",formatter:"{c}",textStyle:{color:t.color,fontSize:t.fontSize,fontWeight:t.fontWeight}};this.options.series[0].label.normal=e},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.text=t.titleText,e.show=t.isNoTitle,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionsTooltip:function(){var t=this.optionsSetup,e={trigger:"item",show:!0,textStyle:{color:t.lineColor,fontSize:t.tipFontSize}};this.options.tooltip=e},setOptionsLegend:function(){var t=this.optionsSetup,e=this.options.legend;e.show=t.isShowLegend,e.left=t.lateralPosition,e.right=t.lateralPosition,e.top=t.longitudinalPosition,e.bottom=t.longitudinalPosition,e.orient=t.layoutFront,e.textStyle={color:t.lengedColor,fontSize:t.lengedFontSize},e.itemWidth=t.lengedWidth},setOptionsColor:function(){var t=this.optionsSetup.customColor;if(t){for(var e=[],i=0;i-1?this.formatWeek(new Date,this.transStyle.timeFormat):this.formatFunction(new Date,this.transStyle.timeFormat)},getTime:function(){var t=this;setInterval(function(){t.displayTime()},1e3)}}},n=(i("/y+v"),i("ZrdR")),a=Object(n.a)(o,function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"text",style:this.styleColor},[this._v(this._s(this.timestr))])},[],!1,null,"6da4b633",null);a.options.__file="widgetTime.vue";e.a=a.exports},"cf/8":function(t,e,i){},cyzc:function(t,e,i){"use strict";var o={name:"WidgetImage",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",background:this.transStyle.background,"text-align":this.transStyle.textAlign,width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px"}},imgStyle:function(){return{imageAdress:this.transStyle.imageAdress,"border-radius":this.transStyle.borderRadius+"px",opacity:this.transStyle.transparency/100}}},watch:{value:{handler:function(t){this.options=t},deep:!0}},created:function(){this.options=this.value},mounted:function(){},methods:{}},n=(i("palL"),i("ZrdR")),a=Object(n.a)(o,function(){var t=this.$createElement,e=this._self._c||t;return e("div",{staticClass:"imagebox",style:this.styleColor},[e("img",{class:this.transStyle.startRotate?"startImg":"",style:this.imgStyle,attrs:{src:this.imgStyle.imageAdress,alt:""}})])},[],!1,null,"92e12b86",null);a.options.__file="widgetImage.vue";e.a=a.exports},fYW0:function(t,e,i){"use strict";var o=i("2Hon");i.n(o).a},gLgb:function(t,e,i){"use strict";var o={name:"WidgetHref",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",color:this.transStyle.color||"#fff","font-weight":this.transStyle.fontWeight||"600",text:this.transStyle.text||"超链接","font-size":this.transStyle.fontSize+"px"||"12px","letter-spacing":this.transStyle.letterSpacing+"em",background:this.transStyle.background,"text-align":this.transStyle.textAlign,display:void 0==this.transStyle.hideLayer?"block":this.transStyle.hideLayer?"none":"block",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",linkAdress:this.transStyle.linkAdress,jumpMode:"other"==this.transStyle.jumpMode?"_blank":"_self"}}},watch:{value:{handler:function(t){this.options=t},deep:!0}},mounted:function(){this.options=this.value},methods:{}},n=(i("uLc6"),i("ZrdR")),a=Object(n.a)(o,function(){var t=this.$createElement;return(this._self._c||t)("a",{style:this.styleColor,attrs:{href:this.styleColor.linkAdress,target:this.styleColor.jumpMode}},[this._v(this._s(this.styleColor.text))])},[],!1,null,"6ebd3276",null);a.options.__file="widgetHref.vue";e.a=a.exports},gvzL:function(t,e,i){},"h+18":function(t,e,i){"use strict";var o=i("T7H8");i.n(o).a},h6gK:function(t,e,i){"use strict";var o=i("cf/8");i.n(o).a},j9f0:function(t,e,i){"use strict";var o=i("jof3");i.n(o).a},jOJk:function(t,e,i){"use strict";var o=i("1OLZ");i.n(o).a},jZP0:function(t,e,i){"use strict";var o=i("OeK3");i.n(o).a},jmgl:function(t,e,i){"use strict";var o=i("TSjp"),n=i.n(o),a={name:"WidgetGauge",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{series:[{type:"gauge",z:100,axisLine:{lineStyle:{width:10,color:[[.3,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(0, 237, 3,0.1)"},{offset:.5,color:"rgba(0, 237, 3,0.6)"},{offset:1,color:"rgba(0, 237, 3,1)"}])],[.7,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(255, 184, 0,0.1)"},{offset:.5,color:"rgba(255, 184, 0,0.6)"},{offset:1,color:"rgba(255, 184, 0,1)"}])],[1,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(175, 36, 74,0.1)"},{offset:.5,color:"rgba(255, 36, 74,0.6)"},{offset:1,color:"rgba(255, 36, 74,1)"}])]]}},pointer:{itemStyle:{color:"auto"}},axisTick:{show:!0,distance:0,length:10,lineStyle:{color:"auto",width:2}},splitLine:{show:!0,distance:0,length:14,lineStyle:{color:"auto",width:4}},axisLabel:{show:!0,color:"white",distance:2,fontSize:10},detail:{valueAnimation:!0,formatter:"{value} %",color:"white",fontSize:18},data:[{value:70}]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.collapse,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptions(),this.setOptionsData()},setOptions:function(){var t=this.optionsSetup,e=this.options.series;if("gauge"==e[0].type){var i={show:t.ringShow,lineStyle:{width:t.pieWeight,color:[[.3,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:t.color30p0},{offset:.5,color:t.color30p5},{offset:1,color:t.color30p10}])],[.7,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:t.color70p0},{offset:.5,color:t.color70p5},{offset:1,color:t.color70p10}])],[1,new n.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:t.color100p0},{offset:.5,color:t.color100p5},{offset:1,color:t.color100p10}])]]}},o={show:t.tickShow,distance:t.tickDistance,length:t.tickLength,lineStyle:{color:"auto",width:t.tickWidth}},a={show:t.splitShow,distance:t.splitDistance,length:t.splitLength,lineStyle:{color:"auto",width:t.splitWidth}};e[0].axisLine=i,e[0].axisTick=o,e[0].splitLine=a}},setOptionsData:function(){var t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData):this.dynamicDataFn(t.dynamicData,t.refreshTime)},staticDataFn:function(t){var e=this.optionsSetup,i=this.options.series,o=[{value:t[0].num}],n={valueAnimation:!0,formatter:"{value} %",color:e.labelColor,fontSize:e.labelFontSize,fontWeight:e.labelFontWeight};i[0].data=o,i[0].detail=n},dynamicDataFn:function(t,e){var i=this;t&&(this.ispreview?(this.getEchartData(t),this.flagInter=setInterval(function(){i.getEchartData(t)},e)):this.getEchartData(t))},getEchartData:function(t){var e=this;this.queryEchartsData(t).then(function(t){e.renderingFn(t)})},renderingFn:function(t){var e=this.optionsSetup,i=this.options.series,o=[{value:t[0].value}],n={valueAnimation:!0,formatter:"{value} %",color:e.labelColor,fontSize:e.labelFontSize,fontWeight:e.labelFontWeight};i[0].data=o,i[0].detail=n}}},s=(i("Ydp4"),i("ZrdR")),r=Object(s.a)(a,function(){var t=this.$createElement,e=this._self._c||t;return e("div",{style:this.styleObj},[e("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"a83b2528",null);r.options.__file="widgetGauge.vue";e.a=r.exports},jof3:function(t,e,i){},kLPZ:function(t,e,i){"use strict";var o=i("I8wO");i.n(o).a},kq3f:function(t,e,i){"use strict";var o=i("6ZY3"),n=i.n(o),a={name:"WidgetPieNightingaleRoseArea",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{legend:{top:"bottom"},toolbox:{show:!0,feature:{mark:{show:!0}}},series:[{type:"pie",radius:["10%","50%"],center:["50%","50%"],roseType:"area",itemStyle:{borderRadius:8},data:[]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.setup,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsValue(),this.setOptionsTooltip(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData(),this.setOptionsRosetype()},setOptionsRosetype:function(){this.options.series[0].roseType=this.optionsSetup.nightingleRosetype},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.text=t.titleText,e.show=t.isNoTitle,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionsValue:function(){var t=this.optionsSetup,e=this.options.series,i=t.numberValue?"{c}":"",o=t.percentage?"({d})%":"",n={show:t.isShow,formatter:"{a|{b}:"+i+" "+o+"}",rich:{a:{padding:[-30,15,-20,15],color:t.subTextColor,fontSize:t.fontSize,fontWeight:t.fontWeight}},fontSize:t.fontSize,fontWeight:t.optionsCollapse};for(var a in e)"pie"==e[a].type&&(e[a].label=n,e[a].labelLine={show:t.isShow})},setOptionsTooltip:function(){var t=this.optionsSetup,e={trigger:"item",show:!0,textStyle:{color:t.lineColor,fontSize:t.fontSize}};this.options.tooltip=e},setOptionsMargin:function(){var t=this.optionsSetup,e={left:t.marginLeft,right:t.marginRight,bottom:t.marginBottom,top:t.marginTop,containLabel:!0};this.options.grid=e},setOptionsLegend:function(){var t=this.optionsSetup,e=this.options.legend;e.show=t.isShowLegend,e.left="left"==t.lateralPosition?0:"auto",e.right="right"==t.lateralPosition?0:"auto",e.top="top"==t.longitudinalPosition?0:"auto",e.bottom="bottom"==t.longitudinalPosition?0:"auto",e.orient=t.layoutFront,e.textStyle={color:t.lengedColor,fontSize:t.fontSize},e.itemWidth=t.lengedWidth},setOptionsColor:function(){var t=this.optionsSetup.customColor;if(t){for(var e=[],i=0;i{b} : {c}%"},legend:{textStyle:{color:"#fff"}},xAxis:{type:"category",data:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],axisLabel:{show:!0,textStyle:{color:"#fff"}}},yAxis:{type:"value",axisLabel:{show:!0,textStyle:{color:"#fff"}}},series:[{data:[],type:"line"}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(t){this.optionsStyle=t.position,this.optionsData=t.data,this.optionsCollapse=t.collapse,this.optionsSetup=t.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsTop(),this.setOptionsTooltip(),this.setOptionsData(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsColor()},setOptionsTitle:function(){var t=this.optionsSetup,e={};e.text=t.titleText,e.show=t.isNoTitle,e.left=t.textAlign,e.textStyle={color:t.textColor,fontSize:t.textFontSize,fontWeight:t.textFontWeight},e.subtext=t.subText,e.subtextStyle={color:t.subTextColor,fontWeight:t.subTextFontWeight,fontSize:t.subTextFontSize},this.options.title=e},setOptionsX:function(){var t=this.optionsSetup,e={type:"category",show:t.hideX,name:t.xName,nameTextStyle:{color:t.nameColorX,fontSize:t.nameFontSizeX},nameRotate:t.textAngle,inverse:t.reversalX,axisLabel:{show:!0,interval:t.textInterval,rotate:t.textAngle,textStyle:{color:t.Xcolor,fontSize:t.fontSizeX}},axisLine:{show:!0,lineStyle:{color:t.lineColorX}},splitLine:{show:t.isShowSplitLineX,lineStyle:{color:t.splitLineColorX}}};this.options.xAxis=e},setOptionsY:function(){var t=this.optionsSetup,e={type:"value",scale:t.scale,splitNumber:t.splitNumber,show:t.isShowY,name:t.textNameY,nameTextStyle:{color:t.nameColorY,fontSize:t.namefontSizeY},inverse:t.reversalY,axisLabel:{show:!0,rotate:t.ytextAngle,textStyle:{color:t.colorY,fontSize:t.fontSizeY}},axisLine:{show:!0,lineStyle:{color:t.lineColorY}},splitLine:{show:t.isShowSplitLineY,lineStyle:{color:t.splitLineColorY}}};this.options.yAxis=e},setOptionsTop:function(){var t=this.optionsSetup,e=this.options.series;for(var i in e)"line"==e[i].type&&(e[i].showSymbol=t.markPoint,e[i].symbolSize=t.pointSize,e[i].smooth=t.smoothCurve,t.area?e[i].areaStyle={opacity:t.areaThickness/100}:e[i].areaStyle={opacity:0},e[i].lineStyle={width:t.lineWidth},e[i].label={show:t.isShow,position:"top",distance:10,fontSize:t.fontSize,color:t.subTextColor,fontWeight:t.fontWeight});this.options.series=e},setOptionsTooltip:function(){var t=this.optionsSetup,e={trigger:"item",show:!0,textStyle:{color:t.lineColor,fontSize:t.fontSize}};this.options.tooltip=e},setOptionsMargin:function(){var t=this.optionsSetup,e={left:t.marginLeft,right:t.marginRight,bottom:t.marginBottom,top:t.marginTop,containLabel:!0};this.options.grid=e},setOptionsLegend:function(){var t=this.optionsSetup,e=this.options.legend;e.show=t.isShowLegend,e.left=t.lateralPosition,e.right=t.lateralPosition,e.top=t.longitudinalPosition,e.bottom=t.longitudinalPosition,e.orient=t.layoutFront,e.textStyle={color:t.lengedColor,fontSize:t.fontSize},e.itemWidth=t.lengedWidth},setOptionsLegendName:function(t){var e=this.optionsSetup,i=this.options.series,o=e.legendName;if(null==o||""==o){for(var n=0;n12e4&&this._stopWorker())},e.prototype._getClient=function(){return this._lastUsedTime=Date.now(),this._client||(this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/html/htmlWorker",createData:{languageSettings:this._defaults.options,languageId:this._defaults.languageId},label:this._defaults.languageId}),this._client=this._worker.getProxy()),this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,n=[],i=0;i0&&(r.arguments=n),r},e.is=function(e){var t=e;return te.defined(t)&&te.string(t.title)&&te.string(t.command)}}(g||(g={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){var t=e;return te.objectLiteral(t)&&te.string(t.newText)&&r.is(t.range)}}(b||(b={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){var t=e;return te.defined(t)&&L.is(t.textDocument)&&Array.isArray(t.edits)}}(_||(_={})),function(e){e.create=function(e,t){var n={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"create"===t.kind&&te.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||te.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||te.boolean(t.options.ignoreIfExists)))}}(w||(w={})),function(e){e.create=function(e,t,n){var i={kind:"rename",oldUri:e,newUri:t};return void 0===n||void 0===n.overwrite&&void 0===n.ignoreIfExists||(i.options=n),i},e.is=function(e){var t=e;return t&&"rename"===t.kind&&te.string(t.oldUri)&&te.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||te.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||te.boolean(t.options.ignoreIfExists)))}}(v||(v={})),function(e){e.create=function(e,t){var n={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"delete"===t.kind&&te.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||te.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||te.boolean(t.options.ignoreIfNotExists)))}}(y||(y={})),function(e){e.is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every(function(e){return te.string(e.kind)?w.is(e)||v.is(e)||y.is(e):_.is(e)}))}}(T||(T={}));var M,L,E,A,R,z,I,H,U,C,W,D,q,N,P,O,F,j,B,G,V,K,J,Y,X,$,Q,Z=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(b.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(b.replace(e,t))},e.prototype.delete=function(e){this.edits.push(b.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach(function(e){if(_.is(e)){var n=new Z(e.edits);t._textEditChanges[e.textDocument.uri]=n}}):e.changes&&Object.keys(e.changes).forEach(function(n){var i=new Z(e.changes[n]);t._textEditChanges[n]=i}))}Object.defineProperty(e.prototype,"edit",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(L.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t=e;if(!(i=this._textEditChanges[t.uri])){var n={textDocument:t,edits:r=[]};this._workspaceEdit.documentChanges.push(n),i=new Z(r),this._textEditChanges[t.uri]=i}return i}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var i;if(!(i=this._textEditChanges[e])){var r=[];this._workspaceEdit.changes[e]=r,i=new Z(r),this._textEditChanges[e]=i}return i},e.prototype.createFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(w.create(e,t))},e.prototype.renameFile=function(e,t,n){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(v.create(e,t,n))},e.prototype.deleteFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(y.create(e,t))},e.prototype.checkDocumentChanges=function(){if(!this._workspaceEdit||!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.")}}();!function(e){e.create=function(e){return{uri:e}},e.is=function(e){var t=e;return te.defined(t)&&te.string(t.uri)}}(M||(M={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){var t=e;return te.defined(t)&&te.string(t.uri)&&(null===t.version||te.number(t.version))}}(L||(L={})),function(e){e.create=function(e,t,n,i){return{uri:e,languageId:t,version:n,text:i}},e.is=function(e){var t=e;return te.defined(t)&&te.string(t.uri)&&te.string(t.languageId)&&te.number(t.version)&&te.string(t.text)}}(E||(E={})),function(e){e.PlainText="plaintext",e.Markdown="markdown"}(A||(A={})),function(e){e.is=function(t){var n=t;return n===e.PlainText||n===e.Markdown}}(A||(A={})),function(e){e.is=function(e){var t=e;return te.objectLiteral(e)&&A.is(t.kind)&&te.string(t.value)}}(R||(R={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(z||(z={})),function(e){e.PlainText=1,e.Snippet=2}(I||(I={})),function(e){e.Deprecated=1}(H||(H={})),function(e){e.create=function(e){return{label:e}}}(U||(U={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}(C||(C={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){var t=e;return te.string(t)||te.objectLiteral(t)&&te.string(t.language)&&te.string(t.value)}}(W||(W={})),function(e){e.is=function(e){var t=e;return!!t&&te.objectLiteral(t)&&(R.is(t.contents)||W.is(t.contents)||te.typedArray(t.contents,W.is))&&(void 0===e.range||r.is(e.range))}}(D||(D={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(q||(q={})),function(e){e.create=function(e,t){for(var n=[],i=2;i=0;a--){var o=i[a],s=e.offsetAt(o.range.start),l=e.offsetAt(o.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,s)+o.newText+n.substring(l,n.length),r=s}return n}}(ee||(ee={}));var te,ne,ie,re,ae=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,n=!0,i=0;i0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,r=t.length;if(0===r)return i.create(0,e);for(;ne?r=a:n=a+1}var o=n-1;return i.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1this.source.length)return!1;for(t=0;t0},e.prototype.advanceWhileChar=function(e){for(var t=this.position;this.position0?(c=ie.WithinEndTag,p(n,ne.EndTag)):l.skipWhitespace()?p(n,ne.Whitespace,oe("error.unexpectedWhitespace","Tag name must directly follow the open bracket.")):(c=ie.WithinEndTag,l.advanceUntilChar(de),n0?(r=!1,c=ie.WithinTag,p(n,ne.StartTag)):l.skipWhitespace()?p(n,ne.Whitespace,oe("error.unexpectedWhitespace","Tag name must directly follow the open bracket.")):(c=ie.WithinTag,l.advanceUntilChar(de),n/=\x00-\x0F\x7F\x80-\x9F]*/).toLowerCase()).length>0?(c=ie.AfterAttributeName,r=!1,p(n,ne.AttributeName)):l.advanceIfChars([ue,de])?(c=ie.WithinContent,p(n,ne.StartTagSelfClose)):l.advanceIfChar(de)?(c="script"===a?s&&ye[s]?ie.WithinContent:ie.WithinScriptContent:"style"===a?ie.WithinStyleContent:ie.WithinContent,p(n,ne.StartTagClose)):(l.advance(1),p(n,ne.Unknown,oe("error.unexpectedCharacterInTag","Unexpected character in tag.")));case ie.AfterAttributeName:return l.skipWhitespace()?(r=!0,p(n,ne.Whitespace)):l.advanceIfChar(pe)?(c=ie.BeforeAttributeValue,p(n,ne.DelimiterAssign)):(c=ie.WithinTag,e());case ie.BeforeAttributeValue:if(l.skipWhitespace())return p(n,ne.Whitespace);var h=l.advanceIfRegExp(/^[^\s"'`=<>]+/);if(h.length>0)return l.peekChar()===de&&l.peekChar(-1)===ue&&(l.goBack(1),h=h.substr(0,h.length-1)),"type"===o&&(s=h),c=ie.WithinTag,r=!1,p(n,ne.AttributeValue);var d=l.peekChar();return d===fe||d===me?(l.advance(1),l.advanceUntilChar(d)&&l.advance(1),"type"===o&&(s=l.getSource().substring(n+1,l.pos()-1)),c=ie.WithinTag,r=!1,p(n,ne.AttributeValue)):(c=ie.WithinTag,r=!1,e());case ie.WithinScriptContent:for(var m=1;!l.eos();){var f=l.advanceIfRegExp(/|<\/?script\s*\/?>?/i);if(0===f.length)return l.goToEnd(),p(n,ne.Script);if("\x3c!--"===f)1===m&&(m=2);else if("--\x3e"===f)m=1;else if("/"!==f[1])2===m&&(m=3);else{if(3!==m){l.goBack(f.length);break}m=2}}return c=ie.WithinContent,n0))return a;r=a-1}}return-(i+1)}(Se,e.toLowerCase(),function(e,t){return e.localeCompare(t)})>=0}!function(){function e(e,t,n,i){this.start=e,this.end=t,this.children=n,this.parent=i,this.closed=!1}Object.defineProperty(e.prototype,"attributeNames",{get:function(){return this.attributes?Object.keys(this.attributes):[]},enumerable:!0,configurable:!0}),e.prototype.isSameTag=function(e){return this.tag&&e&&this.tag.length===e.length&&this.tag.toLowerCase()===e},Object.defineProperty(e.prototype,"firstChild",{get:function(){return this.children[0]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"lastChild",{get:function(){return this.children.length?this.children[this.children.length-1]:void 0},enumerable:!0,configurable:!0}),e.prototype.findNodeBefore=function(e){var t=ke(this.children,function(t){return e<=t.start})-1;if(t>=0){var n=this.children[t];if(e>n.start){if(e=0){var n=this.children[t];if(e>n.start&&e<=n.end)return n.findNodeAt(e)}return this}}();var Me={"Aacute;":"Á",Aacute:"Á","aacute;":"á",aacute:"á","Abreve;":"Ă","abreve;":"ă","ac;":"∾","acd;":"∿","acE;":"∾̳","Acirc;":"Â",Acirc:"Â","acirc;":"â",acirc:"â","acute;":"´",acute:"´","Acy;":"А","acy;":"а","AElig;":"Æ",AElig:"Æ","aelig;":"æ",aelig:"æ","af;":"⁡","Afr;":"𝔄","afr;":"𝔞","Agrave;":"À",Agrave:"À","agrave;":"à",agrave:"à","alefsym;":"ℵ","aleph;":"ℵ","Alpha;":"Α","alpha;":"α","Amacr;":"Ā","amacr;":"ā","amalg;":"⨿","AMP;":"&",AMP:"&","amp;":"&",amp:"&","And;":"⩓","and;":"∧","andand;":"⩕","andd;":"⩜","andslope;":"⩘","andv;":"⩚","ang;":"∠","ange;":"⦤","angle;":"∠","angmsd;":"∡","angmsdaa;":"⦨","angmsdab;":"⦩","angmsdac;":"⦪","angmsdad;":"⦫","angmsdae;":"⦬","angmsdaf;":"⦭","angmsdag;":"⦮","angmsdah;":"⦯","angrt;":"∟","angrtvb;":"⊾","angrtvbd;":"⦝","angsph;":"∢","angst;":"Å","angzarr;":"⍼","Aogon;":"Ą","aogon;":"ą","Aopf;":"𝔸","aopf;":"𝕒","ap;":"≈","apacir;":"⩯","apE;":"⩰","ape;":"≊","apid;":"≋","apos;":"'","ApplyFunction;":"⁡","approx;":"≈","approxeq;":"≊","Aring;":"Å",Aring:"Å","aring;":"å",aring:"å","Ascr;":"𝒜","ascr;":"𝒶","Assign;":"≔","ast;":"*","asymp;":"≈","asympeq;":"≍","Atilde;":"Ã",Atilde:"Ã","atilde;":"ã",atilde:"ã","Auml;":"Ä",Auml:"Ä","auml;":"ä",auml:"ä","awconint;":"∳","awint;":"⨑","backcong;":"≌","backepsilon;":"϶","backprime;":"‵","backsim;":"∽","backsimeq;":"⋍","Backslash;":"∖","Barv;":"⫧","barvee;":"⊽","Barwed;":"⌆","barwed;":"⌅","barwedge;":"⌅","bbrk;":"⎵","bbrktbrk;":"⎶","bcong;":"≌","Bcy;":"Б","bcy;":"б","bdquo;":"„","becaus;":"∵","Because;":"∵","because;":"∵","bemptyv;":"⦰","bepsi;":"϶","bernou;":"ℬ","Bernoullis;":"ℬ","Beta;":"Β","beta;":"β","beth;":"ℶ","between;":"≬","Bfr;":"𝔅","bfr;":"𝔟","bigcap;":"⋂","bigcirc;":"◯","bigcup;":"⋃","bigodot;":"⨀","bigoplus;":"⨁","bigotimes;":"⨂","bigsqcup;":"⨆","bigstar;":"★","bigtriangledown;":"▽","bigtriangleup;":"△","biguplus;":"⨄","bigvee;":"⋁","bigwedge;":"⋀","bkarow;":"⤍","blacklozenge;":"⧫","blacksquare;":"▪","blacktriangle;":"▴","blacktriangledown;":"▾","blacktriangleleft;":"◂","blacktriangleright;":"▸","blank;":"␣","blk12;":"▒","blk14;":"░","blk34;":"▓","block;":"█","bne;":"=⃥","bnequiv;":"≡⃥","bNot;":"⫭","bnot;":"⌐","Bopf;":"𝔹","bopf;":"𝕓","bot;":"⊥","bottom;":"⊥","bowtie;":"⋈","boxbox;":"⧉","boxDL;":"╗","boxDl;":"╖","boxdL;":"╕","boxdl;":"┐","boxDR;":"╔","boxDr;":"╓","boxdR;":"╒","boxdr;":"┌","boxH;":"═","boxh;":"─","boxHD;":"╦","boxHd;":"╤","boxhD;":"╥","boxhd;":"┬","boxHU;":"╩","boxHu;":"╧","boxhU;":"╨","boxhu;":"┴","boxminus;":"⊟","boxplus;":"⊞","boxtimes;":"⊠","boxUL;":"╝","boxUl;":"╜","boxuL;":"╛","boxul;":"┘","boxUR;":"╚","boxUr;":"╙","boxuR;":"╘","boxur;":"└","boxV;":"║","boxv;":"│","boxVH;":"╬","boxVh;":"╫","boxvH;":"╪","boxvh;":"┼","boxVL;":"╣","boxVl;":"╢","boxvL;":"╡","boxvl;":"┤","boxVR;":"╠","boxVr;":"╟","boxvR;":"╞","boxvr;":"├","bprime;":"‵","Breve;":"˘","breve;":"˘","brvbar;":"¦",brvbar:"¦","Bscr;":"ℬ","bscr;":"𝒷","bsemi;":"⁏","bsim;":"∽","bsime;":"⋍","bsol;":"\\","bsolb;":"⧅","bsolhsub;":"⟈","bull;":"•","bullet;":"•","bump;":"≎","bumpE;":"⪮","bumpe;":"≏","Bumpeq;":"≎","bumpeq;":"≏","Cacute;":"Ć","cacute;":"ć","Cap;":"⋒","cap;":"∩","capand;":"⩄","capbrcup;":"⩉","capcap;":"⩋","capcup;":"⩇","capdot;":"⩀","CapitalDifferentialD;":"ⅅ","caps;":"∩︀","caret;":"⁁","caron;":"ˇ","Cayleys;":"ℭ","ccaps;":"⩍","Ccaron;":"Č","ccaron;":"č","Ccedil;":"Ç",Ccedil:"Ç","ccedil;":"ç",ccedil:"ç","Ccirc;":"Ĉ","ccirc;":"ĉ","Cconint;":"∰","ccups;":"⩌","ccupssm;":"⩐","Cdot;":"Ċ","cdot;":"ċ","cedil;":"¸",cedil:"¸","Cedilla;":"¸","cemptyv;":"⦲","cent;":"¢",cent:"¢","CenterDot;":"·","centerdot;":"·","Cfr;":"ℭ","cfr;":"𝔠","CHcy;":"Ч","chcy;":"ч","check;":"✓","checkmark;":"✓","Chi;":"Χ","chi;":"χ","cir;":"○","circ;":"ˆ","circeq;":"≗","circlearrowleft;":"↺","circlearrowright;":"↻","circledast;":"⊛","circledcirc;":"⊚","circleddash;":"⊝","CircleDot;":"⊙","circledR;":"®","circledS;":"Ⓢ","CircleMinus;":"⊖","CirclePlus;":"⊕","CircleTimes;":"⊗","cirE;":"⧃","cire;":"≗","cirfnint;":"⨐","cirmid;":"⫯","cirscir;":"⧂","ClockwiseContourIntegral;":"∲","CloseCurlyDoubleQuote;":"”","CloseCurlyQuote;":"’","clubs;":"♣","clubsuit;":"♣","Colon;":"∷","colon;":":","Colone;":"⩴","colone;":"≔","coloneq;":"≔","comma;":",","commat;":"@","comp;":"∁","compfn;":"∘","complement;":"∁","complexes;":"ℂ","cong;":"≅","congdot;":"⩭","Congruent;":"≡","Conint;":"∯","conint;":"∮","ContourIntegral;":"∮","Copf;":"ℂ","copf;":"𝕔","coprod;":"∐","Coproduct;":"∐","COPY;":"©",COPY:"©","copy;":"©",copy:"©","copysr;":"℗","CounterClockwiseContourIntegral;":"∳","crarr;":"↵","Cross;":"⨯","cross;":"✗","Cscr;":"𝒞","cscr;":"𝒸","csub;":"⫏","csube;":"⫑","csup;":"⫐","csupe;":"⫒","ctdot;":"⋯","cudarrl;":"⤸","cudarrr;":"⤵","cuepr;":"⋞","cuesc;":"⋟","cularr;":"↶","cularrp;":"⤽","Cup;":"⋓","cup;":"∪","cupbrcap;":"⩈","CupCap;":"≍","cupcap;":"⩆","cupcup;":"⩊","cupdot;":"⊍","cupor;":"⩅","cups;":"∪︀","curarr;":"↷","curarrm;":"⤼","curlyeqprec;":"⋞","curlyeqsucc;":"⋟","curlyvee;":"⋎","curlywedge;":"⋏","curren;":"¤",curren:"¤","curvearrowleft;":"↶","curvearrowright;":"↷","cuvee;":"⋎","cuwed;":"⋏","cwconint;":"∲","cwint;":"∱","cylcty;":"⌭","Dagger;":"‡","dagger;":"†","daleth;":"ℸ","Darr;":"↡","dArr;":"⇓","darr;":"↓","dash;":"‐","Dashv;":"⫤","dashv;":"⊣","dbkarow;":"⤏","dblac;":"˝","Dcaron;":"Ď","dcaron;":"ď","Dcy;":"Д","dcy;":"д","DD;":"ⅅ","dd;":"ⅆ","ddagger;":"‡","ddarr;":"⇊","DDotrahd;":"⤑","ddotseq;":"⩷","deg;":"°",deg:"°","Del;":"∇","Delta;":"Δ","delta;":"δ","demptyv;":"⦱","dfisht;":"⥿","Dfr;":"𝔇","dfr;":"𝔡","dHar;":"⥥","dharl;":"⇃","dharr;":"⇂","DiacriticalAcute;":"´","DiacriticalDot;":"˙","DiacriticalDoubleAcute;":"˝","DiacriticalGrave;":"`","DiacriticalTilde;":"˜","diam;":"⋄","Diamond;":"⋄","diamond;":"⋄","diamondsuit;":"♦","diams;":"♦","die;":"¨","DifferentialD;":"ⅆ","digamma;":"ϝ","disin;":"⋲","div;":"÷","divide;":"÷",divide:"÷","divideontimes;":"⋇","divonx;":"⋇","DJcy;":"Ђ","djcy;":"ђ","dlcorn;":"⌞","dlcrop;":"⌍","dollar;":"$","Dopf;":"𝔻","dopf;":"𝕕","Dot;":"¨","dot;":"˙","DotDot;":"⃜","doteq;":"≐","doteqdot;":"≑","DotEqual;":"≐","dotminus;":"∸","dotplus;":"∔","dotsquare;":"⊡","doublebarwedge;":"⌆","DoubleContourIntegral;":"∯","DoubleDot;":"¨","DoubleDownArrow;":"⇓","DoubleLeftArrow;":"⇐","DoubleLeftRightArrow;":"⇔","DoubleLeftTee;":"⫤","DoubleLongLeftArrow;":"⟸","DoubleLongLeftRightArrow;":"⟺","DoubleLongRightArrow;":"⟹","DoubleRightArrow;":"⇒","DoubleRightTee;":"⊨","DoubleUpArrow;":"⇑","DoubleUpDownArrow;":"⇕","DoubleVerticalBar;":"∥","DownArrow;":"↓","Downarrow;":"⇓","downarrow;":"↓","DownArrowBar;":"⤓","DownArrowUpArrow;":"⇵","DownBreve;":"̑","downdownarrows;":"⇊","downharpoonleft;":"⇃","downharpoonright;":"⇂","DownLeftRightVector;":"⥐","DownLeftTeeVector;":"⥞","DownLeftVector;":"↽","DownLeftVectorBar;":"⥖","DownRightTeeVector;":"⥟","DownRightVector;":"⇁","DownRightVectorBar;":"⥗","DownTee;":"⊤","DownTeeArrow;":"↧","drbkarow;":"⤐","drcorn;":"⌟","drcrop;":"⌌","Dscr;":"𝒟","dscr;":"𝒹","DScy;":"Ѕ","dscy;":"ѕ","dsol;":"⧶","Dstrok;":"Đ","dstrok;":"đ","dtdot;":"⋱","dtri;":"▿","dtrif;":"▾","duarr;":"⇵","duhar;":"⥯","dwangle;":"⦦","DZcy;":"Џ","dzcy;":"џ","dzigrarr;":"⟿","Eacute;":"É",Eacute:"É","eacute;":"é",eacute:"é","easter;":"⩮","Ecaron;":"Ě","ecaron;":"ě","ecir;":"≖","Ecirc;":"Ê",Ecirc:"Ê","ecirc;":"ê",ecirc:"ê","ecolon;":"≕","Ecy;":"Э","ecy;":"э","eDDot;":"⩷","Edot;":"Ė","eDot;":"≑","edot;":"ė","ee;":"ⅇ","efDot;":"≒","Efr;":"𝔈","efr;":"𝔢","eg;":"⪚","Egrave;":"È",Egrave:"È","egrave;":"è",egrave:"è","egs;":"⪖","egsdot;":"⪘","el;":"⪙","Element;":"∈","elinters;":"⏧","ell;":"ℓ","els;":"⪕","elsdot;":"⪗","Emacr;":"Ē","emacr;":"ē","empty;":"∅","emptyset;":"∅","EmptySmallSquare;":"◻","emptyv;":"∅","EmptyVerySmallSquare;":"▫","emsp;":" ","emsp13;":" ","emsp14;":" ","ENG;":"Ŋ","eng;":"ŋ","ensp;":" ","Eogon;":"Ę","eogon;":"ę","Eopf;":"𝔼","eopf;":"𝕖","epar;":"⋕","eparsl;":"⧣","eplus;":"⩱","epsi;":"ε","Epsilon;":"Ε","epsilon;":"ε","epsiv;":"ϵ","eqcirc;":"≖","eqcolon;":"≕","eqsim;":"≂","eqslantgtr;":"⪖","eqslantless;":"⪕","Equal;":"⩵","equals;":"=","EqualTilde;":"≂","equest;":"≟","Equilibrium;":"⇌","equiv;":"≡","equivDD;":"⩸","eqvparsl;":"⧥","erarr;":"⥱","erDot;":"≓","Escr;":"ℰ","escr;":"ℯ","esdot;":"≐","Esim;":"⩳","esim;":"≂","Eta;":"Η","eta;":"η","ETH;":"Ð",ETH:"Ð","eth;":"ð",eth:"ð","Euml;":"Ë",Euml:"Ë","euml;":"ë",euml:"ë","euro;":"€","excl;":"!","exist;":"∃","Exists;":"∃","expectation;":"ℰ","ExponentialE;":"ⅇ","exponentiale;":"ⅇ","fallingdotseq;":"≒","Fcy;":"Ф","fcy;":"ф","female;":"♀","ffilig;":"ffi","fflig;":"ff","ffllig;":"ffl","Ffr;":"𝔉","ffr;":"𝔣","filig;":"fi","FilledSmallSquare;":"◼","FilledVerySmallSquare;":"▪","fjlig;":"fj","flat;":"♭","fllig;":"fl","fltns;":"▱","fnof;":"ƒ","Fopf;":"𝔽","fopf;":"𝕗","ForAll;":"∀","forall;":"∀","fork;":"⋔","forkv;":"⫙","Fouriertrf;":"ℱ","fpartint;":"⨍","frac12;":"½",frac12:"½","frac13;":"⅓","frac14;":"¼",frac14:"¼","frac15;":"⅕","frac16;":"⅙","frac18;":"⅛","frac23;":"⅔","frac25;":"⅖","frac34;":"¾",frac34:"¾","frac35;":"⅗","frac38;":"⅜","frac45;":"⅘","frac56;":"⅚","frac58;":"⅝","frac78;":"⅞","frasl;":"⁄","frown;":"⌢","Fscr;":"ℱ","fscr;":"𝒻","gacute;":"ǵ","Gamma;":"Γ","gamma;":"γ","Gammad;":"Ϝ","gammad;":"ϝ","gap;":"⪆","Gbreve;":"Ğ","gbreve;":"ğ","Gcedil;":"Ģ","Gcirc;":"Ĝ","gcirc;":"ĝ","Gcy;":"Г","gcy;":"г","Gdot;":"Ġ","gdot;":"ġ","gE;":"≧","ge;":"≥","gEl;":"⪌","gel;":"⋛","geq;":"≥","geqq;":"≧","geqslant;":"⩾","ges;":"⩾","gescc;":"⪩","gesdot;":"⪀","gesdoto;":"⪂","gesdotol;":"⪄","gesl;":"⋛︀","gesles;":"⪔","Gfr;":"𝔊","gfr;":"𝔤","Gg;":"⋙","gg;":"≫","ggg;":"⋙","gimel;":"ℷ","GJcy;":"Ѓ","gjcy;":"ѓ","gl;":"≷","gla;":"⪥","glE;":"⪒","glj;":"⪤","gnap;":"⪊","gnapprox;":"⪊","gnE;":"≩","gne;":"⪈","gneq;":"⪈","gneqq;":"≩","gnsim;":"⋧","Gopf;":"𝔾","gopf;":"𝕘","grave;":"`","GreaterEqual;":"≥","GreaterEqualLess;":"⋛","GreaterFullEqual;":"≧","GreaterGreater;":"⪢","GreaterLess;":"≷","GreaterSlantEqual;":"⩾","GreaterTilde;":"≳","Gscr;":"𝒢","gscr;":"ℊ","gsim;":"≳","gsime;":"⪎","gsiml;":"⪐","GT;":">",GT:">","Gt;":"≫","gt;":">",gt:">","gtcc;":"⪧","gtcir;":"⩺","gtdot;":"⋗","gtlPar;":"⦕","gtquest;":"⩼","gtrapprox;":"⪆","gtrarr;":"⥸","gtrdot;":"⋗","gtreqless;":"⋛","gtreqqless;":"⪌","gtrless;":"≷","gtrsim;":"≳","gvertneqq;":"≩︀","gvnE;":"≩︀","Hacek;":"ˇ","hairsp;":" ","half;":"½","hamilt;":"ℋ","HARDcy;":"Ъ","hardcy;":"ъ","hArr;":"⇔","harr;":"↔","harrcir;":"⥈","harrw;":"↭","Hat;":"^","hbar;":"ℏ","Hcirc;":"Ĥ","hcirc;":"ĥ","hearts;":"♥","heartsuit;":"♥","hellip;":"…","hercon;":"⊹","Hfr;":"ℌ","hfr;":"𝔥","HilbertSpace;":"ℋ","hksearow;":"⤥","hkswarow;":"⤦","hoarr;":"⇿","homtht;":"∻","hookleftarrow;":"↩","hookrightarrow;":"↪","Hopf;":"ℍ","hopf;":"𝕙","horbar;":"―","HorizontalLine;":"─","Hscr;":"ℋ","hscr;":"𝒽","hslash;":"ℏ","Hstrok;":"Ħ","hstrok;":"ħ","HumpDownHump;":"≎","HumpEqual;":"≏","hybull;":"⁃","hyphen;":"‐","Iacute;":"Í",Iacute:"Í","iacute;":"í",iacute:"í","ic;":"⁣","Icirc;":"Î",Icirc:"Î","icirc;":"î",icirc:"î","Icy;":"И","icy;":"и","Idot;":"İ","IEcy;":"Е","iecy;":"е","iexcl;":"¡",iexcl:"¡","iff;":"⇔","Ifr;":"ℑ","ifr;":"𝔦","Igrave;":"Ì",Igrave:"Ì","igrave;":"ì",igrave:"ì","ii;":"ⅈ","iiiint;":"⨌","iiint;":"∭","iinfin;":"⧜","iiota;":"℩","IJlig;":"IJ","ijlig;":"ij","Im;":"ℑ","Imacr;":"Ī","imacr;":"ī","image;":"ℑ","ImaginaryI;":"ⅈ","imagline;":"ℐ","imagpart;":"ℑ","imath;":"ı","imof;":"⊷","imped;":"Ƶ","Implies;":"⇒","in;":"∈","incare;":"℅","infin;":"∞","infintie;":"⧝","inodot;":"ı","Int;":"∬","int;":"∫","intcal;":"⊺","integers;":"ℤ","Integral;":"∫","intercal;":"⊺","Intersection;":"⋂","intlarhk;":"⨗","intprod;":"⨼","InvisibleComma;":"⁣","InvisibleTimes;":"⁢","IOcy;":"Ё","iocy;":"ё","Iogon;":"Į","iogon;":"į","Iopf;":"𝕀","iopf;":"𝕚","Iota;":"Ι","iota;":"ι","iprod;":"⨼","iquest;":"¿",iquest:"¿","Iscr;":"ℐ","iscr;":"𝒾","isin;":"∈","isindot;":"⋵","isinE;":"⋹","isins;":"⋴","isinsv;":"⋳","isinv;":"∈","it;":"⁢","Itilde;":"Ĩ","itilde;":"ĩ","Iukcy;":"І","iukcy;":"і","Iuml;":"Ï",Iuml:"Ï","iuml;":"ï",iuml:"ï","Jcirc;":"Ĵ","jcirc;":"ĵ","Jcy;":"Й","jcy;":"й","Jfr;":"𝔍","jfr;":"𝔧","jmath;":"ȷ","Jopf;":"𝕁","jopf;":"𝕛","Jscr;":"𝒥","jscr;":"𝒿","Jsercy;":"Ј","jsercy;":"ј","Jukcy;":"Є","jukcy;":"є","Kappa;":"Κ","kappa;":"κ","kappav;":"ϰ","Kcedil;":"Ķ","kcedil;":"ķ","Kcy;":"К","kcy;":"к","Kfr;":"𝔎","kfr;":"𝔨","kgreen;":"ĸ","KHcy;":"Х","khcy;":"х","KJcy;":"Ќ","kjcy;":"ќ","Kopf;":"𝕂","kopf;":"𝕜","Kscr;":"𝒦","kscr;":"𝓀","lAarr;":"⇚","Lacute;":"Ĺ","lacute;":"ĺ","laemptyv;":"⦴","lagran;":"ℒ","Lambda;":"Λ","lambda;":"λ","Lang;":"⟪","lang;":"⟨","langd;":"⦑","langle;":"⟨","lap;":"⪅","Laplacetrf;":"ℒ","laquo;":"«",laquo:"«","Larr;":"↞","lArr;":"⇐","larr;":"←","larrb;":"⇤","larrbfs;":"⤟","larrfs;":"⤝","larrhk;":"↩","larrlp;":"↫","larrpl;":"⤹","larrsim;":"⥳","larrtl;":"↢","lat;":"⪫","lAtail;":"⤛","latail;":"⤙","late;":"⪭","lates;":"⪭︀","lBarr;":"⤎","lbarr;":"⤌","lbbrk;":"❲","lbrace;":"{","lbrack;":"[","lbrke;":"⦋","lbrksld;":"⦏","lbrkslu;":"⦍","Lcaron;":"Ľ","lcaron;":"ľ","Lcedil;":"Ļ","lcedil;":"ļ","lceil;":"⌈","lcub;":"{","Lcy;":"Л","lcy;":"л","ldca;":"⤶","ldquo;":"“","ldquor;":"„","ldrdhar;":"⥧","ldrushar;":"⥋","ldsh;":"↲","lE;":"≦","le;":"≤","LeftAngleBracket;":"⟨","LeftArrow;":"←","Leftarrow;":"⇐","leftarrow;":"←","LeftArrowBar;":"⇤","LeftArrowRightArrow;":"⇆","leftarrowtail;":"↢","LeftCeiling;":"⌈","LeftDoubleBracket;":"⟦","LeftDownTeeVector;":"⥡","LeftDownVector;":"⇃","LeftDownVectorBar;":"⥙","LeftFloor;":"⌊","leftharpoondown;":"↽","leftharpoonup;":"↼","leftleftarrows;":"⇇","LeftRightArrow;":"↔","Leftrightarrow;":"⇔","leftrightarrow;":"↔","leftrightarrows;":"⇆","leftrightharpoons;":"⇋","leftrightsquigarrow;":"↭","LeftRightVector;":"⥎","LeftTee;":"⊣","LeftTeeArrow;":"↤","LeftTeeVector;":"⥚","leftthreetimes;":"⋋","LeftTriangle;":"⊲","LeftTriangleBar;":"⧏","LeftTriangleEqual;":"⊴","LeftUpDownVector;":"⥑","LeftUpTeeVector;":"⥠","LeftUpVector;":"↿","LeftUpVectorBar;":"⥘","LeftVector;":"↼","LeftVectorBar;":"⥒","lEg;":"⪋","leg;":"⋚","leq;":"≤","leqq;":"≦","leqslant;":"⩽","les;":"⩽","lescc;":"⪨","lesdot;":"⩿","lesdoto;":"⪁","lesdotor;":"⪃","lesg;":"⋚︀","lesges;":"⪓","lessapprox;":"⪅","lessdot;":"⋖","lesseqgtr;":"⋚","lesseqqgtr;":"⪋","LessEqualGreater;":"⋚","LessFullEqual;":"≦","LessGreater;":"≶","lessgtr;":"≶","LessLess;":"⪡","lesssim;":"≲","LessSlantEqual;":"⩽","LessTilde;":"≲","lfisht;":"⥼","lfloor;":"⌊","Lfr;":"𝔏","lfr;":"𝔩","lg;":"≶","lgE;":"⪑","lHar;":"⥢","lhard;":"↽","lharu;":"↼","lharul;":"⥪","lhblk;":"▄","LJcy;":"Љ","ljcy;":"љ","Ll;":"⋘","ll;":"≪","llarr;":"⇇","llcorner;":"⌞","Lleftarrow;":"⇚","llhard;":"⥫","lltri;":"◺","Lmidot;":"Ŀ","lmidot;":"ŀ","lmoust;":"⎰","lmoustache;":"⎰","lnap;":"⪉","lnapprox;":"⪉","lnE;":"≨","lne;":"⪇","lneq;":"⪇","lneqq;":"≨","lnsim;":"⋦","loang;":"⟬","loarr;":"⇽","lobrk;":"⟦","LongLeftArrow;":"⟵","Longleftarrow;":"⟸","longleftarrow;":"⟵","LongLeftRightArrow;":"⟷","Longleftrightarrow;":"⟺","longleftrightarrow;":"⟷","longmapsto;":"⟼","LongRightArrow;":"⟶","Longrightarrow;":"⟹","longrightarrow;":"⟶","looparrowleft;":"↫","looparrowright;":"↬","lopar;":"⦅","Lopf;":"𝕃","lopf;":"𝕝","loplus;":"⨭","lotimes;":"⨴","lowast;":"∗","lowbar;":"_","LowerLeftArrow;":"↙","LowerRightArrow;":"↘","loz;":"◊","lozenge;":"◊","lozf;":"⧫","lpar;":"(","lparlt;":"⦓","lrarr;":"⇆","lrcorner;":"⌟","lrhar;":"⇋","lrhard;":"⥭","lrm;":"‎","lrtri;":"⊿","lsaquo;":"‹","Lscr;":"ℒ","lscr;":"𝓁","Lsh;":"↰","lsh;":"↰","lsim;":"≲","lsime;":"⪍","lsimg;":"⪏","lsqb;":"[","lsquo;":"‘","lsquor;":"‚","Lstrok;":"Ł","lstrok;":"ł","LT;":"<",LT:"<","Lt;":"≪","lt;":"<",lt:"<","ltcc;":"⪦","ltcir;":"⩹","ltdot;":"⋖","lthree;":"⋋","ltimes;":"⋉","ltlarr;":"⥶","ltquest;":"⩻","ltri;":"◃","ltrie;":"⊴","ltrif;":"◂","ltrPar;":"⦖","lurdshar;":"⥊","luruhar;":"⥦","lvertneqq;":"≨︀","lvnE;":"≨︀","macr;":"¯",macr:"¯","male;":"♂","malt;":"✠","maltese;":"✠","Map;":"⤅","map;":"↦","mapsto;":"↦","mapstodown;":"↧","mapstoleft;":"↤","mapstoup;":"↥","marker;":"▮","mcomma;":"⨩","Mcy;":"М","mcy;":"м","mdash;":"—","mDDot;":"∺","measuredangle;":"∡","MediumSpace;":" ","Mellintrf;":"ℳ","Mfr;":"𝔐","mfr;":"𝔪","mho;":"℧","micro;":"µ",micro:"µ","mid;":"∣","midast;":"*","midcir;":"⫰","middot;":"·",middot:"·","minus;":"−","minusb;":"⊟","minusd;":"∸","minusdu;":"⨪","MinusPlus;":"∓","mlcp;":"⫛","mldr;":"…","mnplus;":"∓","models;":"⊧","Mopf;":"𝕄","mopf;":"𝕞","mp;":"∓","Mscr;":"ℳ","mscr;":"𝓂","mstpos;":"∾","Mu;":"Μ","mu;":"μ","multimap;":"⊸","mumap;":"⊸","nabla;":"∇","Nacute;":"Ń","nacute;":"ń","nang;":"∠⃒","nap;":"≉","napE;":"⩰̸","napid;":"≋̸","napos;":"ʼn","napprox;":"≉","natur;":"♮","natural;":"♮","naturals;":"ℕ","nbsp;":" ",nbsp:" ","nbump;":"≎̸","nbumpe;":"≏̸","ncap;":"⩃","Ncaron;":"Ň","ncaron;":"ň","Ncedil;":"Ņ","ncedil;":"ņ","ncong;":"≇","ncongdot;":"⩭̸","ncup;":"⩂","Ncy;":"Н","ncy;":"н","ndash;":"–","ne;":"≠","nearhk;":"⤤","neArr;":"⇗","nearr;":"↗","nearrow;":"↗","nedot;":"≐̸","NegativeMediumSpace;":"​","NegativeThickSpace;":"​","NegativeThinSpace;":"​","NegativeVeryThinSpace;":"​","nequiv;":"≢","nesear;":"⤨","nesim;":"≂̸","NestedGreaterGreater;":"≫","NestedLessLess;":"≪","NewLine;":"\n","nexist;":"∄","nexists;":"∄","Nfr;":"𝔑","nfr;":"𝔫","ngE;":"≧̸","nge;":"≱","ngeq;":"≱","ngeqq;":"≧̸","ngeqslant;":"⩾̸","nges;":"⩾̸","nGg;":"⋙̸","ngsim;":"≵","nGt;":"≫⃒","ngt;":"≯","ngtr;":"≯","nGtv;":"≫̸","nhArr;":"⇎","nharr;":"↮","nhpar;":"⫲","ni;":"∋","nis;":"⋼","nisd;":"⋺","niv;":"∋","NJcy;":"Њ","njcy;":"њ","nlArr;":"⇍","nlarr;":"↚","nldr;":"‥","nlE;":"≦̸","nle;":"≰","nLeftarrow;":"⇍","nleftarrow;":"↚","nLeftrightarrow;":"⇎","nleftrightarrow;":"↮","nleq;":"≰","nleqq;":"≦̸","nleqslant;":"⩽̸","nles;":"⩽̸","nless;":"≮","nLl;":"⋘̸","nlsim;":"≴","nLt;":"≪⃒","nlt;":"≮","nltri;":"⋪","nltrie;":"⋬","nLtv;":"≪̸","nmid;":"∤","NoBreak;":"⁠","NonBreakingSpace;":" ","Nopf;":"ℕ","nopf;":"𝕟","Not;":"⫬","not;":"¬",not:"¬","NotCongruent;":"≢","NotCupCap;":"≭","NotDoubleVerticalBar;":"∦","NotElement;":"∉","NotEqual;":"≠","NotEqualTilde;":"≂̸","NotExists;":"∄","NotGreater;":"≯","NotGreaterEqual;":"≱","NotGreaterFullEqual;":"≧̸","NotGreaterGreater;":"≫̸","NotGreaterLess;":"≹","NotGreaterSlantEqual;":"⩾̸","NotGreaterTilde;":"≵","NotHumpDownHump;":"≎̸","NotHumpEqual;":"≏̸","notin;":"∉","notindot;":"⋵̸","notinE;":"⋹̸","notinva;":"∉","notinvb;":"⋷","notinvc;":"⋶","NotLeftTriangle;":"⋪","NotLeftTriangleBar;":"⧏̸","NotLeftTriangleEqual;":"⋬","NotLess;":"≮","NotLessEqual;":"≰","NotLessGreater;":"≸","NotLessLess;":"≪̸","NotLessSlantEqual;":"⩽̸","NotLessTilde;":"≴","NotNestedGreaterGreater;":"⪢̸","NotNestedLessLess;":"⪡̸","notni;":"∌","notniva;":"∌","notnivb;":"⋾","notnivc;":"⋽","NotPrecedes;":"⊀","NotPrecedesEqual;":"⪯̸","NotPrecedesSlantEqual;":"⋠","NotReverseElement;":"∌","NotRightTriangle;":"⋫","NotRightTriangleBar;":"⧐̸","NotRightTriangleEqual;":"⋭","NotSquareSubset;":"⊏̸","NotSquareSubsetEqual;":"⋢","NotSquareSuperset;":"⊐̸","NotSquareSupersetEqual;":"⋣","NotSubset;":"⊂⃒","NotSubsetEqual;":"⊈","NotSucceeds;":"⊁","NotSucceedsEqual;":"⪰̸","NotSucceedsSlantEqual;":"⋡","NotSucceedsTilde;":"≿̸","NotSuperset;":"⊃⃒","NotSupersetEqual;":"⊉","NotTilde;":"≁","NotTildeEqual;":"≄","NotTildeFullEqual;":"≇","NotTildeTilde;":"≉","NotVerticalBar;":"∤","npar;":"∦","nparallel;":"∦","nparsl;":"⫽⃥","npart;":"∂̸","npolint;":"⨔","npr;":"⊀","nprcue;":"⋠","npre;":"⪯̸","nprec;":"⊀","npreceq;":"⪯̸","nrArr;":"⇏","nrarr;":"↛","nrarrc;":"⤳̸","nrarrw;":"↝̸","nRightarrow;":"⇏","nrightarrow;":"↛","nrtri;":"⋫","nrtrie;":"⋭","nsc;":"⊁","nsccue;":"⋡","nsce;":"⪰̸","Nscr;":"𝒩","nscr;":"𝓃","nshortmid;":"∤","nshortparallel;":"∦","nsim;":"≁","nsime;":"≄","nsimeq;":"≄","nsmid;":"∤","nspar;":"∦","nsqsube;":"⋢","nsqsupe;":"⋣","nsub;":"⊄","nsubE;":"⫅̸","nsube;":"⊈","nsubset;":"⊂⃒","nsubseteq;":"⊈","nsubseteqq;":"⫅̸","nsucc;":"⊁","nsucceq;":"⪰̸","nsup;":"⊅","nsupE;":"⫆̸","nsupe;":"⊉","nsupset;":"⊃⃒","nsupseteq;":"⊉","nsupseteqq;":"⫆̸","ntgl;":"≹","Ntilde;":"Ñ",Ntilde:"Ñ","ntilde;":"ñ",ntilde:"ñ","ntlg;":"≸","ntriangleleft;":"⋪","ntrianglelefteq;":"⋬","ntriangleright;":"⋫","ntrianglerighteq;":"⋭","Nu;":"Ν","nu;":"ν","num;":"#","numero;":"№","numsp;":" ","nvap;":"≍⃒","nVDash;":"⊯","nVdash;":"⊮","nvDash;":"⊭","nvdash;":"⊬","nvge;":"≥⃒","nvgt;":">⃒","nvHarr;":"⤄","nvinfin;":"⧞","nvlArr;":"⤂","nvle;":"≤⃒","nvlt;":"<⃒","nvltrie;":"⊴⃒","nvrArr;":"⤃","nvrtrie;":"⊵⃒","nvsim;":"∼⃒","nwarhk;":"⤣","nwArr;":"⇖","nwarr;":"↖","nwarrow;":"↖","nwnear;":"⤧","Oacute;":"Ó",Oacute:"Ó","oacute;":"ó",oacute:"ó","oast;":"⊛","ocir;":"⊚","Ocirc;":"Ô",Ocirc:"Ô","ocirc;":"ô",ocirc:"ô","Ocy;":"О","ocy;":"о","odash;":"⊝","Odblac;":"Ő","odblac;":"ő","odiv;":"⨸","odot;":"⊙","odsold;":"⦼","OElig;":"Œ","oelig;":"œ","ofcir;":"⦿","Ofr;":"𝔒","ofr;":"𝔬","ogon;":"˛","Ograve;":"Ò",Ograve:"Ò","ograve;":"ò",ograve:"ò","ogt;":"⧁","ohbar;":"⦵","ohm;":"Ω","oint;":"∮","olarr;":"↺","olcir;":"⦾","olcross;":"⦻","oline;":"‾","olt;":"⧀","Omacr;":"Ō","omacr;":"ō","Omega;":"Ω","omega;":"ω","Omicron;":"Ο","omicron;":"ο","omid;":"⦶","ominus;":"⊖","Oopf;":"𝕆","oopf;":"𝕠","opar;":"⦷","OpenCurlyDoubleQuote;":"“","OpenCurlyQuote;":"‘","operp;":"⦹","oplus;":"⊕","Or;":"⩔","or;":"∨","orarr;":"↻","ord;":"⩝","order;":"ℴ","orderof;":"ℴ","ordf;":"ª",ordf:"ª","ordm;":"º",ordm:"º","origof;":"⊶","oror;":"⩖","orslope;":"⩗","orv;":"⩛","oS;":"Ⓢ","Oscr;":"𝒪","oscr;":"ℴ","Oslash;":"Ø",Oslash:"Ø","oslash;":"ø",oslash:"ø","osol;":"⊘","Otilde;":"Õ",Otilde:"Õ","otilde;":"õ",otilde:"õ","Otimes;":"⨷","otimes;":"⊗","otimesas;":"⨶","Ouml;":"Ö",Ouml:"Ö","ouml;":"ö",ouml:"ö","ovbar;":"⌽","OverBar;":"‾","OverBrace;":"⏞","OverBracket;":"⎴","OverParenthesis;":"⏜","par;":"∥","para;":"¶",para:"¶","parallel;":"∥","parsim;":"⫳","parsl;":"⫽","part;":"∂","PartialD;":"∂","Pcy;":"П","pcy;":"п","percnt;":"%","period;":".","permil;":"‰","perp;":"⊥","pertenk;":"‱","Pfr;":"𝔓","pfr;":"𝔭","Phi;":"Φ","phi;":"φ","phiv;":"ϕ","phmmat;":"ℳ","phone;":"☎","Pi;":"Π","pi;":"π","pitchfork;":"⋔","piv;":"ϖ","planck;":"ℏ","planckh;":"ℎ","plankv;":"ℏ","plus;":"+","plusacir;":"⨣","plusb;":"⊞","pluscir;":"⨢","plusdo;":"∔","plusdu;":"⨥","pluse;":"⩲","PlusMinus;":"±","plusmn;":"±",plusmn:"±","plussim;":"⨦","plustwo;":"⨧","pm;":"±","Poincareplane;":"ℌ","pointint;":"⨕","Popf;":"ℙ","popf;":"𝕡","pound;":"£",pound:"£","Pr;":"⪻","pr;":"≺","prap;":"⪷","prcue;":"≼","prE;":"⪳","pre;":"⪯","prec;":"≺","precapprox;":"⪷","preccurlyeq;":"≼","Precedes;":"≺","PrecedesEqual;":"⪯","PrecedesSlantEqual;":"≼","PrecedesTilde;":"≾","preceq;":"⪯","precnapprox;":"⪹","precneqq;":"⪵","precnsim;":"⋨","precsim;":"≾","Prime;":"″","prime;":"′","primes;":"ℙ","prnap;":"⪹","prnE;":"⪵","prnsim;":"⋨","prod;":"∏","Product;":"∏","profalar;":"⌮","profline;":"⌒","profsurf;":"⌓","prop;":"∝","Proportion;":"∷","Proportional;":"∝","propto;":"∝","prsim;":"≾","prurel;":"⊰","Pscr;":"𝒫","pscr;":"𝓅","Psi;":"Ψ","psi;":"ψ","puncsp;":" ","Qfr;":"𝔔","qfr;":"𝔮","qint;":"⨌","Qopf;":"ℚ","qopf;":"𝕢","qprime;":"⁗","Qscr;":"𝒬","qscr;":"𝓆","quaternions;":"ℍ","quatint;":"⨖","quest;":"?","questeq;":"≟","QUOT;":'"',QUOT:'"',"quot;":'"',quot:'"',"rAarr;":"⇛","race;":"∽̱","Racute;":"Ŕ","racute;":"ŕ","radic;":"√","raemptyv;":"⦳","Rang;":"⟫","rang;":"⟩","rangd;":"⦒","range;":"⦥","rangle;":"⟩","raquo;":"»",raquo:"»","Rarr;":"↠","rArr;":"⇒","rarr;":"→","rarrap;":"⥵","rarrb;":"⇥","rarrbfs;":"⤠","rarrc;":"⤳","rarrfs;":"⤞","rarrhk;":"↪","rarrlp;":"↬","rarrpl;":"⥅","rarrsim;":"⥴","Rarrtl;":"⤖","rarrtl;":"↣","rarrw;":"↝","rAtail;":"⤜","ratail;":"⤚","ratio;":"∶","rationals;":"ℚ","RBarr;":"⤐","rBarr;":"⤏","rbarr;":"⤍","rbbrk;":"❳","rbrace;":"}","rbrack;":"]","rbrke;":"⦌","rbrksld;":"⦎","rbrkslu;":"⦐","Rcaron;":"Ř","rcaron;":"ř","Rcedil;":"Ŗ","rcedil;":"ŗ","rceil;":"⌉","rcub;":"}","Rcy;":"Р","rcy;":"р","rdca;":"⤷","rdldhar;":"⥩","rdquo;":"”","rdquor;":"”","rdsh;":"↳","Re;":"ℜ","real;":"ℜ","realine;":"ℛ","realpart;":"ℜ","reals;":"ℝ","rect;":"▭","REG;":"®",REG:"®","reg;":"®",reg:"®","ReverseElement;":"∋","ReverseEquilibrium;":"⇋","ReverseUpEquilibrium;":"⥯","rfisht;":"⥽","rfloor;":"⌋","Rfr;":"ℜ","rfr;":"𝔯","rHar;":"⥤","rhard;":"⇁","rharu;":"⇀","rharul;":"⥬","Rho;":"Ρ","rho;":"ρ","rhov;":"ϱ","RightAngleBracket;":"⟩","RightArrow;":"→","Rightarrow;":"⇒","rightarrow;":"→","RightArrowBar;":"⇥","RightArrowLeftArrow;":"⇄","rightarrowtail;":"↣","RightCeiling;":"⌉","RightDoubleBracket;":"⟧","RightDownTeeVector;":"⥝","RightDownVector;":"⇂","RightDownVectorBar;":"⥕","RightFloor;":"⌋","rightharpoondown;":"⇁","rightharpoonup;":"⇀","rightleftarrows;":"⇄","rightleftharpoons;":"⇌","rightrightarrows;":"⇉","rightsquigarrow;":"↝","RightTee;":"⊢","RightTeeArrow;":"↦","RightTeeVector;":"⥛","rightthreetimes;":"⋌","RightTriangle;":"⊳","RightTriangleBar;":"⧐","RightTriangleEqual;":"⊵","RightUpDownVector;":"⥏","RightUpTeeVector;":"⥜","RightUpVector;":"↾","RightUpVectorBar;":"⥔","RightVector;":"⇀","RightVectorBar;":"⥓","ring;":"˚","risingdotseq;":"≓","rlarr;":"⇄","rlhar;":"⇌","rlm;":"‏","rmoust;":"⎱","rmoustache;":"⎱","rnmid;":"⫮","roang;":"⟭","roarr;":"⇾","robrk;":"⟧","ropar;":"⦆","Ropf;":"ℝ","ropf;":"𝕣","roplus;":"⨮","rotimes;":"⨵","RoundImplies;":"⥰","rpar;":")","rpargt;":"⦔","rppolint;":"⨒","rrarr;":"⇉","Rrightarrow;":"⇛","rsaquo;":"›","Rscr;":"ℛ","rscr;":"𝓇","Rsh;":"↱","rsh;":"↱","rsqb;":"]","rsquo;":"’","rsquor;":"’","rthree;":"⋌","rtimes;":"⋊","rtri;":"▹","rtrie;":"⊵","rtrif;":"▸","rtriltri;":"⧎","RuleDelayed;":"⧴","ruluhar;":"⥨","rx;":"℞","Sacute;":"Ś","sacute;":"ś","sbquo;":"‚","Sc;":"⪼","sc;":"≻","scap;":"⪸","Scaron;":"Š","scaron;":"š","sccue;":"≽","scE;":"⪴","sce;":"⪰","Scedil;":"Ş","scedil;":"ş","Scirc;":"Ŝ","scirc;":"ŝ","scnap;":"⪺","scnE;":"⪶","scnsim;":"⋩","scpolint;":"⨓","scsim;":"≿","Scy;":"С","scy;":"с","sdot;":"⋅","sdotb;":"⊡","sdote;":"⩦","searhk;":"⤥","seArr;":"⇘","searr;":"↘","searrow;":"↘","sect;":"§",sect:"§","semi;":";","seswar;":"⤩","setminus;":"∖","setmn;":"∖","sext;":"✶","Sfr;":"𝔖","sfr;":"𝔰","sfrown;":"⌢","sharp;":"♯","SHCHcy;":"Щ","shchcy;":"щ","SHcy;":"Ш","shcy;":"ш","ShortDownArrow;":"↓","ShortLeftArrow;":"←","shortmid;":"∣","shortparallel;":"∥","ShortRightArrow;":"→","ShortUpArrow;":"↑","shy;":"­",shy:"­","Sigma;":"Σ","sigma;":"σ","sigmaf;":"ς","sigmav;":"ς","sim;":"∼","simdot;":"⩪","sime;":"≃","simeq;":"≃","simg;":"⪞","simgE;":"⪠","siml;":"⪝","simlE;":"⪟","simne;":"≆","simplus;":"⨤","simrarr;":"⥲","slarr;":"←","SmallCircle;":"∘","smallsetminus;":"∖","smashp;":"⨳","smeparsl;":"⧤","smid;":"∣","smile;":"⌣","smt;":"⪪","smte;":"⪬","smtes;":"⪬︀","SOFTcy;":"Ь","softcy;":"ь","sol;":"/","solb;":"⧄","solbar;":"⌿","Sopf;":"𝕊","sopf;":"𝕤","spades;":"♠","spadesuit;":"♠","spar;":"∥","sqcap;":"⊓","sqcaps;":"⊓︀","sqcup;":"⊔","sqcups;":"⊔︀","Sqrt;":"√","sqsub;":"⊏","sqsube;":"⊑","sqsubset;":"⊏","sqsubseteq;":"⊑","sqsup;":"⊐","sqsupe;":"⊒","sqsupset;":"⊐","sqsupseteq;":"⊒","squ;":"□","Square;":"□","square;":"□","SquareIntersection;":"⊓","SquareSubset;":"⊏","SquareSubsetEqual;":"⊑","SquareSuperset;":"⊐","SquareSupersetEqual;":"⊒","SquareUnion;":"⊔","squarf;":"▪","squf;":"▪","srarr;":"→","Sscr;":"𝒮","sscr;":"𝓈","ssetmn;":"∖","ssmile;":"⌣","sstarf;":"⋆","Star;":"⋆","star;":"☆","starf;":"★","straightepsilon;":"ϵ","straightphi;":"ϕ","strns;":"¯","Sub;":"⋐","sub;":"⊂","subdot;":"⪽","subE;":"⫅","sube;":"⊆","subedot;":"⫃","submult;":"⫁","subnE;":"⫋","subne;":"⊊","subplus;":"⪿","subrarr;":"⥹","Subset;":"⋐","subset;":"⊂","subseteq;":"⊆","subseteqq;":"⫅","SubsetEqual;":"⊆","subsetneq;":"⊊","subsetneqq;":"⫋","subsim;":"⫇","subsub;":"⫕","subsup;":"⫓","succ;":"≻","succapprox;":"⪸","succcurlyeq;":"≽","Succeeds;":"≻","SucceedsEqual;":"⪰","SucceedsSlantEqual;":"≽","SucceedsTilde;":"≿","succeq;":"⪰","succnapprox;":"⪺","succneqq;":"⪶","succnsim;":"⋩","succsim;":"≿","SuchThat;":"∋","Sum;":"∑","sum;":"∑","sung;":"♪","Sup;":"⋑","sup;":"⊃","sup1;":"¹",sup1:"¹","sup2;":"²",sup2:"²","sup3;":"³",sup3:"³","supdot;":"⪾","supdsub;":"⫘","supE;":"⫆","supe;":"⊇","supedot;":"⫄","Superset;":"⊃","SupersetEqual;":"⊇","suphsol;":"⟉","suphsub;":"⫗","suplarr;":"⥻","supmult;":"⫂","supnE;":"⫌","supne;":"⊋","supplus;":"⫀","Supset;":"⋑","supset;":"⊃","supseteq;":"⊇","supseteqq;":"⫆","supsetneq;":"⊋","supsetneqq;":"⫌","supsim;":"⫈","supsub;":"⫔","supsup;":"⫖","swarhk;":"⤦","swArr;":"⇙","swarr;":"↙","swarrow;":"↙","swnwar;":"⤪","szlig;":"ß",szlig:"ß","Tab;":"\t","target;":"⌖","Tau;":"Τ","tau;":"τ","tbrk;":"⎴","Tcaron;":"Ť","tcaron;":"ť","Tcedil;":"Ţ","tcedil;":"ţ","Tcy;":"Т","tcy;":"т","tdot;":"⃛","telrec;":"⌕","Tfr;":"𝔗","tfr;":"𝔱","there4;":"∴","Therefore;":"∴","therefore;":"∴","Theta;":"Θ","theta;":"θ","thetasym;":"ϑ","thetav;":"ϑ","thickapprox;":"≈","thicksim;":"∼","ThickSpace;":"  ","thinsp;":" ","ThinSpace;":" ","thkap;":"≈","thksim;":"∼","THORN;":"Þ",THORN:"Þ","thorn;":"þ",thorn:"þ","Tilde;":"∼","tilde;":"˜","TildeEqual;":"≃","TildeFullEqual;":"≅","TildeTilde;":"≈","times;":"×",times:"×","timesb;":"⊠","timesbar;":"⨱","timesd;":"⨰","tint;":"∭","toea;":"⤨","top;":"⊤","topbot;":"⌶","topcir;":"⫱","Topf;":"𝕋","topf;":"𝕥","topfork;":"⫚","tosa;":"⤩","tprime;":"‴","TRADE;":"™","trade;":"™","triangle;":"▵","triangledown;":"▿","triangleleft;":"◃","trianglelefteq;":"⊴","triangleq;":"≜","triangleright;":"▹","trianglerighteq;":"⊵","tridot;":"◬","trie;":"≜","triminus;":"⨺","TripleDot;":"⃛","triplus;":"⨹","trisb;":"⧍","tritime;":"⨻","trpezium;":"⏢","Tscr;":"𝒯","tscr;":"𝓉","TScy;":"Ц","tscy;":"ц","TSHcy;":"Ћ","tshcy;":"ћ","Tstrok;":"Ŧ","tstrok;":"ŧ","twixt;":"≬","twoheadleftarrow;":"↞","twoheadrightarrow;":"↠","Uacute;":"Ú",Uacute:"Ú","uacute;":"ú",uacute:"ú","Uarr;":"↟","uArr;":"⇑","uarr;":"↑","Uarrocir;":"⥉","Ubrcy;":"Ў","ubrcy;":"ў","Ubreve;":"Ŭ","ubreve;":"ŭ","Ucirc;":"Û",Ucirc:"Û","ucirc;":"û",ucirc:"û","Ucy;":"У","ucy;":"у","udarr;":"⇅","Udblac;":"Ű","udblac;":"ű","udhar;":"⥮","ufisht;":"⥾","Ufr;":"𝔘","ufr;":"𝔲","Ugrave;":"Ù",Ugrave:"Ù","ugrave;":"ù",ugrave:"ù","uHar;":"⥣","uharl;":"↿","uharr;":"↾","uhblk;":"▀","ulcorn;":"⌜","ulcorner;":"⌜","ulcrop;":"⌏","ultri;":"◸","Umacr;":"Ū","umacr;":"ū","uml;":"¨",uml:"¨","UnderBar;":"_","UnderBrace;":"⏟","UnderBracket;":"⎵","UnderParenthesis;":"⏝","Union;":"⋃","UnionPlus;":"⊎","Uogon;":"Ų","uogon;":"ų","Uopf;":"𝕌","uopf;":"𝕦","UpArrow;":"↑","Uparrow;":"⇑","uparrow;":"↑","UpArrowBar;":"⤒","UpArrowDownArrow;":"⇅","UpDownArrow;":"↕","Updownarrow;":"⇕","updownarrow;":"↕","UpEquilibrium;":"⥮","upharpoonleft;":"↿","upharpoonright;":"↾","uplus;":"⊎","UpperLeftArrow;":"↖","UpperRightArrow;":"↗","Upsi;":"ϒ","upsi;":"υ","upsih;":"ϒ","Upsilon;":"Υ","upsilon;":"υ","UpTee;":"⊥","UpTeeArrow;":"↥","upuparrows;":"⇈","urcorn;":"⌝","urcorner;":"⌝","urcrop;":"⌎","Uring;":"Ů","uring;":"ů","urtri;":"◹","Uscr;":"𝒰","uscr;":"𝓊","utdot;":"⋰","Utilde;":"Ũ","utilde;":"ũ","utri;":"▵","utrif;":"▴","uuarr;":"⇈","Uuml;":"Ü",Uuml:"Ü","uuml;":"ü",uuml:"ü","uwangle;":"⦧","vangrt;":"⦜","varepsilon;":"ϵ","varkappa;":"ϰ","varnothing;":"∅","varphi;":"ϕ","varpi;":"ϖ","varpropto;":"∝","vArr;":"⇕","varr;":"↕","varrho;":"ϱ","varsigma;":"ς","varsubsetneq;":"⊊︀","varsubsetneqq;":"⫋︀","varsupsetneq;":"⊋︀","varsupsetneqq;":"⫌︀","vartheta;":"ϑ","vartriangleleft;":"⊲","vartriangleright;":"⊳","Vbar;":"⫫","vBar;":"⫨","vBarv;":"⫩","Vcy;":"В","vcy;":"в","VDash;":"⊫","Vdash;":"⊩","vDash;":"⊨","vdash;":"⊢","Vdashl;":"⫦","Vee;":"⋁","vee;":"∨","veebar;":"⊻","veeeq;":"≚","vellip;":"⋮","Verbar;":"‖","verbar;":"|","Vert;":"‖","vert;":"|","VerticalBar;":"∣","VerticalLine;":"|","VerticalSeparator;":"❘","VerticalTilde;":"≀","VeryThinSpace;":" ","Vfr;":"𝔙","vfr;":"𝔳","vltri;":"⊲","vnsub;":"⊂⃒","vnsup;":"⊃⃒","Vopf;":"𝕍","vopf;":"𝕧","vprop;":"∝","vrtri;":"⊳","Vscr;":"𝒱","vscr;":"𝓋","vsubnE;":"⫋︀","vsubne;":"⊊︀","vsupnE;":"⫌︀","vsupne;":"⊋︀","Vvdash;":"⊪","vzigzag;":"⦚","Wcirc;":"Ŵ","wcirc;":"ŵ","wedbar;":"⩟","Wedge;":"⋀","wedge;":"∧","wedgeq;":"≙","weierp;":"℘","Wfr;":"𝔚","wfr;":"𝔴","Wopf;":"𝕎","wopf;":"𝕨","wp;":"℘","wr;":"≀","wreath;":"≀","Wscr;":"𝒲","wscr;":"𝓌","xcap;":"⋂","xcirc;":"◯","xcup;":"⋃","xdtri;":"▽","Xfr;":"𝔛","xfr;":"𝔵","xhArr;":"⟺","xharr;":"⟷","Xi;":"Ξ","xi;":"ξ","xlArr;":"⟸","xlarr;":"⟵","xmap;":"⟼","xnis;":"⋻","xodot;":"⨀","Xopf;":"𝕏","xopf;":"𝕩","xoplus;":"⨁","xotime;":"⨂","xrArr;":"⟹","xrarr;":"⟶","Xscr;":"𝒳","xscr;":"𝓍","xsqcup;":"⨆","xuplus;":"⨄","xutri;":"△","xvee;":"⋁","xwedge;":"⋀","Yacute;":"Ý",Yacute:"Ý","yacute;":"ý",yacute:"ý","YAcy;":"Я","yacy;":"я","Ycirc;":"Ŷ","ycirc;":"ŷ","Ycy;":"Ы","ycy;":"ы","yen;":"¥",yen:"¥","Yfr;":"𝔜","yfr;":"𝔶","YIcy;":"Ї","yicy;":"ї","Yopf;":"𝕐","yopf;":"𝕪","Yscr;":"𝒴","yscr;":"𝓎","YUcy;":"Ю","yucy;":"ю","Yuml;":"Ÿ","yuml;":"ÿ",yuml:"ÿ","Zacute;":"Ź","zacute;":"ź","Zcaron;":"Ž","zcaron;":"ž","Zcy;":"З","zcy;":"з","Zdot;":"Ż","zdot;":"ż","zeetrf;":"ℨ","ZeroWidthSpace;":"​","Zeta;":"Ζ","zeta;":"ζ","Zfr;":"ℨ","zfr;":"𝔷","ZHcy;":"Ж","zhcy;":"ж","zigrarr;":"⇝","Zopf;":"ℤ","zopf;":"𝕫","Zscr;":"𝒵","zscr;":"𝓏","zwj;":"‍","zwnj;":"‌"};function Le(e,t){if(e.length0?e.lastIndexOf(t)===n:0===n&&e===t}var Ae="a".charCodeAt(0),Re="z".charCodeAt(0),ze="A".charCodeAt(0),Ie="Z".charCodeAt(0),He="0".charCodeAt(0),Ue="9".charCodeAt(0);function Ce(e,t){var n=e.charCodeAt(t);return Ae<=n&&n<=Re||ze<=n&&n<=Ie||He<=n&&n<=Ue}var We=function(){function e(e,t){var n=this;this.id=e,this._tags=[],this._tagMap={},this._attributeMap={},this._valueSetMap={},this._tags=t.tags||[],this._globalAttributes=t.globalAttributes||[],this._tags.forEach(function(e){n._tagMap[e.name]=e,e.attributes&&e.attributes.forEach(function(e){n._attributeMap[e.name]=e})}),this._globalAttributes.forEach(function(e){n._attributeMap[e.name]=e}),t.valueSets&&t.valueSets.forEach(function(e){n._valueSetMap[e.name]=e.values})}return e.prototype.isApplicable=function(){return!0},e.prototype.getId=function(){return this.id},e.prototype.provideTags=function(){return this._tags},e.prototype.provideAttributes=function(e){var t=[],n=function(e){t.push(e)};return this._tagMap[e]&&this._tagMap[e].attributes.forEach(function(e){n(e)}),this._globalAttributes.forEach(function(e){n(e)}),t},e.prototype.provideValues=function(e,t){var n=this,i=[],r=function(e){e.forEach(function(e){e.name===t&&(e.values&&e.values.forEach(function(e){i.push(e)}),e.valueSet&&n._valueSetMap[e.valueSet]&&n._valueSetMap[e.valueSet].forEach(function(e){i.push(e)}))})};return this._tagMap[e]?(r(this._tagMap[e].attributes),r(this._globalAttributes),i):[]},e}();function De(e,t){var n={kind:t?"markdown":"plaintext",value:""};if(e.description){var i=function(e){if(e)return"string"==typeof e?{kind:"markdown",value:e}:{kind:"markdown",value:e.value}}(e.description);i&&(n.value+=i.value)}return e.references&&e.references.length>0&&(n.value+="\n\n",n.value+=t?e.references.map(function(e){return"["+e.name+"]("+e.url+")"}).join(" | "):e.references.map(function(e){return e.name+": "+e.url}).join("\n")),n}var qe=[new We("html5",{version:1.1,tags:[{name:"html",description:{kind:"markdown",value:"The html element represents the root of an HTML document."},attributes:[{name:"manifest",description:{kind:"markdown",value:"Specifies the URI of a resource manifest indicating resources that should be cached locally. See [Using the application cache](https://developer.mozilla.org/en-US/docs/Web/HTML/Using_the_application_cache) for details."}},{name:"version",description:'Specifies the version of the HTML [Document Type Definition](https://developer.mozilla.org/en-US/docs/Glossary/DTD "Document Type Definition: In HTML, the doctype is the required "" preamble found at the top of all documents. Its sole purpose is to prevent a browser from switching into so-called “quirks mode” when rendering a document; that is, the "" doctype ensures that the browser makes a best-effort attempt at following the relevant specifications, rather than using a different rendering mode that is incompatible with some specifications.") that governs the current document. This attribute is not needed, because it is redundant with the version information in the document type declaration.'},{name:"xmlns",description:'Specifies the XML Namespace of the document. Default value is `"http://www.w3.org/1999/xhtml"`. This is required in documents parsed with XML parsers, and optional in text/html documents.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/html"}]},{name:"head",description:{kind:"markdown",value:"The head element represents a collection of metadata for the Document."},attributes:[{name:"profile",description:"The URIs of one or more metadata profiles, separated by white space."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/head"}]},{name:"title",description:{kind:"markdown",value:"The title element represents the document's title or name. Authors should use titles that identify their documents even when they are used out of context, for example in a user's history or bookmarks, or in search results. The document's title is often different from its first heading, since the first heading does not have to stand alone when taken out of context."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/title"}]},{name:"base",description:{kind:"markdown",value:"The base element allows authors to specify the document base URL for the purposes of resolving relative URLs, and the name of the default browsing context for the purposes of following hyperlinks. The element does not represent any content beyond this information."},attributes:[{name:"href",description:{kind:"markdown",value:"The base URL to be used throughout the document for relative URL addresses. If this attribute is specified, this element must come before any other elements with attributes whose values are URLs. Absolute and relative URLs are allowed."}},{name:"target",description:{kind:"markdown",value:"A name or keyword indicating the default location to display the result when hyperlinks or forms cause navigation, for elements that do not have an explicit target reference. It is a name of, or keyword for, a _browsing context_ (for example: tab, window, or inline frame). The following keywords have special meanings:\n\n* `_self`: Load the result into the same browsing context as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the result into a new unnamed browsing context.\n* `_parent`: Load the result into the parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: Load the result into the top-level browsing context (that is, the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`.\n\nIf this attribute is specified, this element must come before any other elements with attributes whose values are URLs."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/base"}]},{name:"link",description:{kind:"markdown",value:"The link element allows authors to link their document to other resources."},attributes:[{name:"href",description:{kind:"markdown",value:'This attribute specifies the [URL](https://developer.mozilla.org/en-US/docs/Glossary/URL "URL: Uniform Resource Locator (URL) is a text string specifying where a resource can be found on the Internet.") of the linked resource. A URL can be absolute or relative.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates whether [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") must be used when fetching the resource. [CORS-enabled images](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_Enabled_Image) can be reused in the [``](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being _tainted_. The allowed values are:\n\n`anonymous`\n\nA cross-origin request (i.e. with an [`Origin`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Origin "The Origin request header indicates where a fetch originates from. It doesn\'t include any path information, but only the server name. It is sent with CORS requests, as well as with POST requests. It is similar to the Referer header, but, unlike this header, it doesn\'t disclose the whole path.") HTTP header) is performed, but no credential is sent (i.e. no cookie, X.509 certificate, or HTTP Basic authentication). If the server does not give credentials to the origin site (by not setting the [`Access-Control-Allow-Origin`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin "The Access-Control-Allow-Origin response header indicates whether the response can be shared with requesting code from the given origin.") HTTP header) the image will be tainted and its usage restricted.\n\n`use-credentials`\n\nA cross-origin request (i.e. with an `Origin` HTTP header) is performed along with a credential sent (i.e. a cookie, certificate, and/or HTTP Basic authentication is performed). If the server does not give credentials to the origin site (through [`Access-Control-Allow-Credentials`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials "The Access-Control-Allow-Credentials response header tells browsers whether to expose the response to frontend JavaScript code when the request\'s credentials mode (Request.credentials) is "include".") HTTP header), the resource will be _tainted_ and its usage restricted.\n\nIf the attribute is not present, the resource is fetched without a [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") request (i.e. without sending the `Origin` HTTP header), preventing its non-tainted usage. If invalid, it is handled as if the enumerated keyword **anonymous** was used. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) for additional information.'}},{name:"rel",description:{kind:"markdown",value:"This attribute names a relationship of the linked document to the current document. The attribute must be a space-separated list of the [link types values](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types)."}},{name:"media",description:{kind:"markdown",value:"This attribute specifies the media that the linked resource applies to. Its value must be a media type / [media query](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries). This attribute is mainly useful when linking to external stylesheets — it allows the user agent to pick the best adapted one for the device it runs on.\n\n**Notes:**\n\n* In HTML 4, this can only be a simple white-space-separated list of media description literals, i.e., [media types and groups](https://developer.mozilla.org/en-US/docs/Web/CSS/@media), where defined and allowed as values for this attribute, such as `print`, `screen`, `aural`, `braille`. HTML5 extended this to any kind of [media queries](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries), which are a superset of the allowed values of HTML 4.\n* Browsers not supporting [CSS3 Media Queries](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries) won't necessarily recognize the adequate link; do not forget to set fallback links, the restricted set of media queries defined in HTML 4."}},{name:"hreflang",description:{kind:"markdown",value:"This attribute indicates the language of the linked resource. It is purely advisory. Allowed values are determined by [BCP47](https://www.ietf.org/rfc/bcp/bcp47.txt). Use this attribute only if the [`href`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href) attribute is present."}},{name:"type",description:{kind:"markdown",value:'This attribute is used to define the type of the content linked to. The value of the attribute should be a MIME type such as **text/html**, **text/css**, and so on. The common use of this attribute is to define the type of stylesheet being referenced (such as **text/css**), but given that CSS is the only stylesheet language used on the web, not only is it possible to omit the `type` attribute, but is actually now recommended practice. It is also used on `rel="preload"` link types, to make sure the browser only downloads file types that it supports.'}},{name:"sizes",description:{kind:"markdown",value:"This attribute defines the sizes of the icons for visual media contained in the resource. It must be present only if the [`rel`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link#attr-rel) contains a value of `icon` or a non-standard type such as Apple's `apple-touch-icon`. It may have the following values:\n\n* `any`, meaning that the icon can be scaled to any size as it is in a vector format, like `image/svg+xml`.\n* a white-space separated list of sizes, each in the format `__x__` or `__X__`. Each of these sizes must be contained in the resource.\n\n**Note:** Most icon formats are only able to store one single icon; therefore most of the time the [`sizes`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-sizes) contains only one entry. MS's ICO format does, as well as Apple's ICNS. ICO is more ubiquitous; you should definitely use it."}},{name:"as",description:'This attribute is only used when `rel="preload"` or `rel="prefetch"` has been set on the `` element. It specifies the type of content being loaded by the ``, which is necessary for content prioritization, request matching, application of correct [content security policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP), and setting of correct [`Accept`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept "The Accept request HTTP header advertises which content types, expressed as MIME types, the client is able to understand. Using content negotiation, the server then selects one of the proposals, uses it and informs the client of its choice with the Content-Type response header. Browsers set adequate values for this header depending on the context where the request is done: when fetching a CSS stylesheet a different value is set for the request than when fetching an image, video or a script.") request header.'},{name:"importance",description:"Indicates the relative importance of the resource. Priority hints are delegated using the values:"},{name:"importance",description:'**`auto`**: Indicates **no preference**. The browser may use its own heuristics to decide the priority of the resource.\n\n**`high`**: Indicates to the browser that the resource is of **high** priority.\n\n**`low`**: Indicates to the browser that the resource is of **low** priority.\n\n**Note:** The `importance` attribute may only be used for the `` element if `rel="preload"` or `rel="prefetch"` is present.'},{name:"integrity",description:"Contains inline metadata — a base64-encoded cryptographic hash of the resource (file) you’re telling the browser to fetch. The browser can use this to verify that the fetched resource has been delivered free of unexpected manipulation. See [Subresource Integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity)."},{name:"referrerpolicy",description:'A string indicating which referrer to use when fetching the resource:\n\n* `no-referrer` means that the [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` means that no [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will be sent when navigating to an origin without TLS (HTTPS). This is a user agent’s default behavior, if no policy is otherwise specified.\n* `origin` means that the referrer will be the origin of the page, which is roughly the scheme, the host, and the port.\n* `origin-when-cross-origin` means that navigating to other origins will be limited to the scheme, the host, and the port, while navigating on the same origin will include the referrer\'s path.\n* `unsafe-url` means that the referrer will include the origin and the path (but not the fragment, password, or username). This case is unsafe because it can leak origins and paths from TLS-protected resources to insecure origins.'},{name:"title",description:'The `title` attribute has special semantics on the `` element. When used on a `` it defines a [preferred or an alternate stylesheet](https://developer.mozilla.org/en-US/docs/Web/CSS/Alternative_style_sheets). Incorrectly using it may [cause the stylesheet to be ignored](https://developer.mozilla.org/en-US/docs/Correctly_Using_Titles_With_External_Stylesheets).'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/link"}]},{name:"meta",description:{kind:"markdown",value:"The meta element represents various kinds of metadata that cannot be expressed using the title, base, link, style, and script elements."},attributes:[{name:"name",description:{kind:"markdown",value:'This attribute defines the name of a piece of document-level metadata. It should not be set if one of the attributes [`itemprop`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-itemprop), [`http-equiv`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-http-equiv) or [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) is also set.\n\nThis metadata name is associated with the value contained by the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute. The possible values for the name attribute are:\n\n* `application-name` which defines the name of the application running in the web page.\n \n **Note:**\n \n * Browsers may use this to identify the application. It is different from the [``](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/title "The HTML Title element (<title>) defines the document\'s title that is shown in a browser\'s title bar or a page\'s tab.") element, which usually contain the application name, but may also contain information like the document name or a status.\n * Simple web pages shouldn\'t define an application-name.\n \n* `author` which defines the name of the document\'s author.\n* `description` which contains a short and accurate summary of the content of the page. Several browsers, like Firefox and Opera, use this as the default description of bookmarked pages.\n* `generator` which contains the identifier of the software that generated the page.\n* `keywords` which contains words relevant to the page\'s content separated by commas.\n* `referrer` which controls the [`Referer` HTTP header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer) attached to requests sent from the document:\n \n Values for the `content` attribute of `<meta name="referrer">`\n \n `no-referrer`\n \n Do not send a HTTP `Referrer` header.\n \n `origin`\n \n Send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the document.\n \n `no-referrer-when-downgrade`\n \n Send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) as a referrer to URLs as secure as the current page, (https→https), but does not send a referrer to less secure URLs (https→http). This is the default behaviour.\n \n `origin-when-cross-origin`\n \n Send the full URL (stripped of parameters) for same-origin requests, but only send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) for other cases.\n \n `same-origin`\n \n A referrer will be sent for [same-site origins](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy), but cross-origin requests will contain no referrer information.\n \n `strict-origin`\n \n Only send the origin of the document as the referrer to a-priori as-much-secure destination (HTTPS->HTTPS), but don\'t send it to a less secure destination (HTTPS->HTTP).\n \n `strict-origin-when-cross-origin`\n \n Send a full URL when performing a same-origin request, only send the origin of the document to a-priori as-much-secure destination (HTTPS->HTTPS), and send no header to a less secure destination (HTTPS->HTTP).\n \n `unsafe-URL`\n \n Send the full URL (stripped of parameters) for same-origin or cross-origin requests.\n \n **Notes:**\n \n * Some browsers support the deprecated values of `always`, `default`, and `never` for referrer.\n * Dynamically inserting `<meta name="referrer">` (with [`document.write`](https://developer.mozilla.org/en-US/docs/Web/API/Document/write) or [`appendChild`](https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild)) makes the referrer behaviour unpredictable.\n * When several conflicting policies are defined, the no-referrer policy is applied.\n \n\nThis attribute may also have a value taken from the extended list defined on [WHATWG Wiki MetaExtensions page](https://wiki.whatwg.org/wiki/MetaExtensions). Although none have been formally accepted yet, a few commonly used names are:\n\n* `creator` which defines the name of the creator of the document, such as an organization or institution. If there are more than one, several [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") elements should be used.\n* `googlebot`, a synonym of `robots`, is only followed by Googlebot (the indexing crawler for Google).\n* `publisher` which defines the name of the document\'s publisher.\n* `robots` which defines the behaviour that cooperative crawlers, or "robots", should use with the page. It is a comma-separated list of the values below:\n \n Values for the content of `<meta name="robots">`\n \n Value\n \n Description\n \n Used by\n \n `index`\n \n Allows the robot to index the page (default).\n \n All\n \n `noindex`\n \n Requests the robot to not index the page.\n \n All\n \n `follow`\n \n Allows the robot to follow the links on the page (default).\n \n All\n \n `nofollow`\n \n Requests the robot to not follow the links on the page.\n \n All\n \n `none`\n \n Equivalent to `noindex, nofollow`\n \n [Google](https://support.google.com/webmasters/answer/79812)\n \n `noodp`\n \n Prevents using the [Open Directory Project](https://www.dmoz.org/) description, if any, as the page description in search engine results.\n \n [Google](https://support.google.com/webmasters/answer/35624#nodmoz), [Yahoo](https://help.yahoo.com/kb/search-for-desktop/meta-tags-robotstxt-yahoo-search-sln2213.html#cont5), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `noarchive`\n \n Requests the search engine not to cache the page content.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives), [Yahoo](https://help.yahoo.com/kb/search-for-desktop/SLN2213.html), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `nosnippet`\n \n Prevents displaying any description of the page in search engine results.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `noimageindex`\n \n Requests this page not to appear as the referring page of an indexed image.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives)\n \n `nocache`\n \n Synonym of `noarchive`.\n \n [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n **Notes:**\n \n * Only cooperative robots follow these rules. Do not expect to prevent e-mail harvesters with them.\n * The robot still needs to access the page in order to read these rules. To prevent bandwidth consumption, use a _[robots.txt](https://developer.mozilla.org/en-US/docs/Glossary/robots.txt "robots.txt: Robots.txt is a file which is usually placed in the root of any website. It decides whether crawlers are permitted or forbidden access to the web site.")_ file.\n * If you want to remove a page, `noindex` will work, but only after the robot visits the page again. Ensure that the `robots.txt` file is not preventing revisits.\n * Some values are mutually exclusive, like `index` and `noindex`, or `follow` and `nofollow`. In these cases the robot\'s behaviour is undefined and may vary between them.\n * Some crawler robots, like Google, Yahoo and Bing, support the same values for the HTTP header `X-Robots-Tag`; this allows non-HTML documents like images to use these rules.\n \n* `slurp`, is a synonym of `robots`, but only for Slurp - the crawler for Yahoo Search.\n* `viewport`, which gives hints about the size of the initial size of the [viewport](https://developer.mozilla.org/en-US/docs/Glossary/viewport "viewport: A viewport represents a polygonal (normally rectangular) area in computer graphics that is currently being viewed. In web browser terms, it refers to the part of the document you\'re viewing which is currently visible in its window (or the screen, if the document is being viewed in full screen mode). Content outside the viewport is not visible onscreen until scrolled into view."). Used by mobile devices only.\n \n Values for the content of `<meta name="viewport">`\n \n Value\n \n Possible subvalues\n \n Description\n \n `width`\n \n A positive integer number, or the text `device-width`\n \n Defines the pixel width of the viewport that you want the web site to be rendered at.\n \n `height`\n \n A positive integer, or the text `device-height`\n \n Defines the height of the viewport. Not used by any browser.\n \n `initial-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the ratio between the device width (`device-width` in portrait mode or `device-height` in landscape mode) and the viewport size.\n \n `maximum-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the maximum amount to zoom in. It must be greater or equal to the `minimum-scale` or the behaviour is undefined. Browser settings can ignore this rule and iOS10+ ignores it by default.\n \n `minimum-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the minimum zoom level. It must be smaller or equal to the `maximum-scale` or the behaviour is undefined. Browser settings can ignore this rule and iOS10+ ignores it by default.\n \n `user-scalable`\n \n `yes` or `no`\n \n If set to `no`, the user is not able to zoom in the webpage. The default is `yes`. Browser settings can ignore this rule, and iOS10+ ignores it by default.\n \n Specification\n \n Status\n \n Comment\n \n [CSS Device Adaptation \n The definition of \'<meta name="viewport">\' in that specification.](https://drafts.csswg.org/css-device-adapt/#viewport-meta)\n \n Working Draft\n \n Non-normatively describes the Viewport META element\n \n See also: [`@viewport`](https://developer.mozilla.org/en-US/docs/Web/CSS/@viewport "The @viewport CSS at-rule lets you configure the viewport through which the document is viewed. It\'s primarily used for mobile devices, but is also used by desktop browsers that support features like "snap to edge" (such as Microsoft Edge).")\n \n **Notes:**\n \n * Though unstandardized, this declaration is respected by most mobile browsers due to de-facto dominance.\n * The default values may vary between devices and browsers.\n * To learn about this declaration in Firefox for Mobile, see [this article](https://developer.mozilla.org/en-US/docs/Mobile/Viewport_meta_tag "Mobile/Viewport meta tag").'}},{name:"http-equiv",description:{kind:"markdown",value:'Defines a pragma directive. The attribute is named `**http-equiv**(alent)` because all the allowed values are names of particular HTTP headers:\n\n* `"content-language"` \n Defines the default language of the page. It can be overridden by the [lang](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang) attribute on any element.\n \n **Warning:** Do not use this value, as it is obsolete. Prefer the `lang` attribute on the [`<html>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/html "The HTML <html> element represents the root (top-level element) of an HTML document, so it is also referred to as the root element. All other elements must be descendants of this element.") element.\n \n* `"content-security-policy"` \n Allows page authors to define a [content policy](https://developer.mozilla.org/en-US/docs/Web/Security/CSP/CSP_policy_directives) for the current page. Content policies mostly specify allowed server origins and script endpoints which help guard against cross-site scripting attacks.\n* `"content-type"` \n Defines the [MIME type](https://developer.mozilla.org/en-US/docs/Glossary/MIME_type) of the document, followed by its character encoding. It follows the same syntax as the HTTP `content-type` entity-header field, but as it is inside a HTML page, most values other than `text/html` are impossible. Therefore the valid syntax for its `content` is the string \'`text/html`\' followed by a character set with the following syntax: \'`; charset=_IANAcharset_`\', where `IANAcharset` is the _preferred MIME name_ for a character set as [defined by the IANA.](https://www.iana.org/assignments/character-sets)\n \n **Warning:** Do not use this value, as it is obsolete. Use the [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) attribute on the [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element.\n \n **Note:** As [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") can\'t change documents\' types in XHTML or HTML5\'s XHTML serialization, never set the MIME type to an XHTML MIME type with `<meta>`.\n \n* `"refresh"` \n This instruction specifies:\n * The number of seconds until the page should be reloaded - only if the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute contains a positive integer.\n * The number of seconds until the page should redirect to another - only if the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute contains a positive integer followed by the string \'`;url=`\', and a valid URL.\n* `"set-cookie"` \n Defines a [cookie](https://developer.mozilla.org/en-US/docs/cookie) for the page. Its content must follow the syntax defined in the [IETF HTTP Cookie Specification](https://tools.ietf.org/html/draft-ietf-httpstate-cookie-14).\n \n **Warning:** Do not use this instruction, as it is obsolete. Use the HTTP header [`Set-Cookie`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie) instead.'}},{name:"content",description:{kind:"markdown",value:"This attribute contains the value for the [`http-equiv`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-http-equiv) or [`name`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-name) attribute, depending on which is used."}},{name:"charset",description:{kind:"markdown",value:'This attribute declares the page\'s character encoding. It must contain a [standard IANA MIME name for character encodings](https://www.iana.org/assignments/character-sets). Although the standard doesn\'t request a specific encoding, it suggests:\n\n* Authors are encouraged to use [`UTF-8`](https://developer.mozilla.org/en-US/docs/Glossary/UTF-8).\n* Authors should not use ASCII-incompatible encodings to avoid security risk: browsers not supporting them may interpret harmful content as HTML. This happens with the `JIS_C6226-1983`, `JIS_X0212-1990`, `HZ-GB-2312`, `JOHAB`, the ISO-2022 family and the EBCDIC family.\n\n**Note:** ASCII-incompatible encodings are those that don\'t map the 8-bit code points `0x20` to `0x7E` to the `0x0020` to `0x007E` Unicode code points)\n\n* Authors **must not** use `CESU-8`, `UTF-7`, `BOCU-1` and/or `SCSU` as [cross-site scripting](https://developer.mozilla.org/en-US/docs/Glossary/Cross-site_scripting) attacks with these encodings have been demonstrated.\n* Authors should not use `UTF-32` because not all HTML5 encoding algorithms can distinguish it from `UTF-16`.\n\n**Notes:**\n\n* The declared character encoding must match the one the page was saved with to avoid garbled characters and security holes.\n* The [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element declaring the encoding must be inside the [`<head>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/head "The HTML <head> element provides general information (metadata) about the document, including its title and links to its scripts and style sheets.") element and **within the first 1024 bytes** of the HTML as some browsers only look at those bytes before choosing an encoding.\n* This [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element is only one part of the [algorithm to determine a page\'s character set](https://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#encoding-sniffing-algorithm "Algorithm charset page"). The [`Content-Type` header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type) and any [Byte-Order Marks](https://developer.mozilla.org/en-US/docs/Glossary/Byte-Order_Mark "The definition of that term (Byte-Order Marks) has not been written yet; please consider contributing it!") override this element.\n* It is strongly recommended to define the character encoding. If a page\'s encoding is undefined, cross-scripting techniques are possible, such as the [`UTF-7` fallback cross-scripting technique](https://code.google.com/p/doctype-mirror/wiki/ArticleUtf7).\n* The [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element with a `charset` attribute is a synonym for the pre-HTML5 `<meta http-equiv="Content-Type" content="text/html; charset=_IANAcharset_">`, where _`IANAcharset`_ contains the value of the equivalent [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) attribute. This syntax is still allowed, although no longer recommended.'}},{name:"scheme",description:"This attribute defines the scheme in which metadata is described. A scheme is a context leading to the correct interpretations of the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) value, like a format.\n\n**Warning:** Do not use this value, as it is obsolete. There is no replacement as there was no real usage for it."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/meta"}]},{name:"style",description:{kind:"markdown",value:"The style element allows authors to embed style information in their documents. The style element is one of several inputs to the styling processing model. The element does not represent content for the user."},attributes:[{name:"media",description:{kind:"markdown",value:"This attribute defines which media the style should be applied to. Its value is a [media query](https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries), which defaults to `all` if the attribute is missing."}},{name:"nonce",description:{kind:"markdown",value:"A cryptographic nonce (number used once) used to whitelist inline styles in a [style-src Content-Security-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/style-src). The server must generate a unique nonce value each time it transmits a policy. It is critical to provide a nonce that cannot be guessed as bypassing a resource’s policy is otherwise trivial."}},{name:"type",description:{kind:"markdown",value:"This attribute defines the styling language as a MIME type (charset should not be specified). This attribute is optional and defaults to `text/css` if it is not specified — there is very little reason to include this in modern web documents."}},{name:"scoped",valueSet:"v"},{name:"title",description:"This attribute specifies [alternative style sheet](https://developer.mozilla.org/en-US/docs/Web/CSS/Alternative_style_sheets) sets."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/style"}]},{name:"body",description:{kind:"markdown",value:"The body element represents the content of the document."},attributes:[{name:"onafterprint",description:{kind:"markdown",value:"Function to call after the user has printed the document."}},{name:"onbeforeprint",description:{kind:"markdown",value:"Function to call when the user requests printing of the document."}},{name:"onbeforeunload",description:{kind:"markdown",value:"Function to call when the document is about to be unloaded."}},{name:"onhashchange",description:{kind:"markdown",value:"Function to call when the fragment identifier part (starting with the hash (`'#'`) character) of the document's current address has changed."}},{name:"onlanguagechange",description:{kind:"markdown",value:"Function to call when the preferred languages changed."}},{name:"onmessage",description:{kind:"markdown",value:"Function to call when the document has received a message."}},{name:"onoffline",description:{kind:"markdown",value:"Function to call when network communication has failed."}},{name:"ononline",description:{kind:"markdown",value:"Function to call when network communication has been restored."}},{name:"onpagehide"},{name:"onpageshow"},{name:"onpopstate",description:{kind:"markdown",value:"Function to call when the user has navigated session history."}},{name:"onstorage",description:{kind:"markdown",value:"Function to call when the storage area has changed."}},{name:"onunload",description:{kind:"markdown",value:"Function to call when the document is going away."}},{name:"alink",description:'Color of text for hyperlinks when selected. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:active`](https://developer.mozilla.org/en-US/docs/Web/CSS/:active "The :active CSS pseudo-class represents an element (such as a button) that is being activated by the user.") pseudo-class instead._'},{name:"background",description:'URI of a image to use as a background. _This method is non-conforming, use CSS [`background`](https://developer.mozilla.org/en-US/docs/Web/CSS/background "The background shorthand CSS property sets all background style properties at once, such as color, image, origin and size, or repeat method.") property on the element instead._'},{name:"bgcolor",description:'Background color for the document. _This method is non-conforming, use CSS [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property on the element instead._'},{name:"bottommargin",description:'The margin of the bottom of the body. _This method is non-conforming, use CSS [`margin-bottom`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-bottom "The margin-bottom CSS property sets the margin area on the bottom of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"leftmargin",description:'The margin of the left of the body. _This method is non-conforming, use CSS [`margin-left`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left "The margin-left CSS property sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"link",description:'Color of text for unvisited hypertext links. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:link`](https://developer.mozilla.org/en-US/docs/Web/CSS/:link "The :link CSS pseudo-class represents an element that has not yet been visited. It matches every unvisited <a>, <area>, or <link> element that has an href attribute.") pseudo-class instead._'},{name:"onblur",description:"Function to call when the document loses focus."},{name:"onerror",description:"Function to call when the document fails to load properly."},{name:"onfocus",description:"Function to call when the document receives focus."},{name:"onload",description:"Function to call when the document has finished loading."},{name:"onredo",description:"Function to call when the user has moved forward in undo transaction history."},{name:"onresize",description:"Function to call when the document has been resized."},{name:"onundo",description:"Function to call when the user has moved backward in undo transaction history."},{name:"rightmargin",description:'The margin of the right of the body. _This method is non-conforming, use CSS [`margin-right`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-right "The margin-right CSS property sets the margin area on the right side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"text",description:'Foreground color of text. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property on the element instead._'},{name:"topmargin",description:'The margin of the top of the body. _This method is non-conforming, use CSS [`margin-top`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-top "The margin-top CSS property sets the margin area on the top of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"vlink",description:'Color of text for visited hypertext links. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:visited`](https://developer.mozilla.org/en-US/docs/Web/CSS/:visited "The :visited CSS pseudo-class represents links that the user has already visited. For privacy reasons, the styles that can be modified using this selector are very limited.") pseudo-class instead._'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/body"}]},{name:"article",description:{kind:"markdown",value:"The article element represents a complete, or self-contained, composition in a document, page, application, or site and that is, in principle, independently distributable or reusable, e.g. in syndication. This could be a forum post, a magazine or newspaper article, a blog entry, a user-submitted comment, an interactive widget or gadget, or any other independent item of content. Each article should be identified, typically by including a heading (h1–h6 element) as a child of the article element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/article"}]},{name:"section",description:{kind:"markdown",value:"The section element represents a generic section of a document or application. A section, in this context, is a thematic grouping of content. Each section should be identified, typically by including a heading ( h1- h6 element) as a child of the section element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/section"}]},{name:"nav",description:{kind:"markdown",value:"The nav element represents a section of a page that links to other pages or to parts within the page: a section with navigation links."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/nav"}]},{name:"aside",description:{kind:"markdown",value:"The aside element represents a section of a page that consists of content that is tangentially related to the content around the aside element, and which could be considered separate from that content. Such sections are often represented as sidebars in printed typography."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/aside"}]},{name:"h1",description:{kind:"markdown",value:"The h1 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h2",description:{kind:"markdown",value:"The h2 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h3",description:{kind:"markdown",value:"The h3 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h4",description:{kind:"markdown",value:"The h4 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h5",description:{kind:"markdown",value:"The h5 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h6",description:{kind:"markdown",value:"The h6 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"header",description:{kind:"markdown",value:"The header element represents introductory content for its nearest ancestor sectioning content or sectioning root element. A header typically contains a group of introductory or navigational aids. When the nearest ancestor sectioning content or sectioning root element is the body element, then it applies to the whole page."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/header"}]},{name:"footer",description:{kind:"markdown",value:"The footer element represents a footer for its nearest ancestor sectioning content or sectioning root element. A footer typically contains information about its section such as who wrote it, links to related documents, copyright data, and the like."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/footer"}]},{name:"address",description:{kind:"markdown",value:"The address element represents the contact information for its nearest article or body element ancestor. If that is the body element, then the contact information applies to the document as a whole."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/address"}]},{name:"p",description:{kind:"markdown",value:"The p element represents a paragraph."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/p"}]},{name:"hr",description:{kind:"markdown",value:"The hr element represents a paragraph-level thematic break, e.g. a scene change in a story, or a transition to another topic within a section of a reference book."},attributes:[{name:"align",description:"Sets the alignment of the rule on the page. If no value is specified, the default value is `left`."},{name:"color",description:"Sets the color of the rule through color name or hexadecimal value."},{name:"noshade",description:"Sets the rule to have no shading."},{name:"size",description:"Sets the height, in pixels, of the rule."},{name:"width",description:"Sets the length of the rule on the page through a pixel or percentage value."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/hr"}]},{name:"pre",description:{kind:"markdown",value:"The pre element represents a block of preformatted text, in which structure is represented by typographic conventions rather than by elements."},attributes:[{name:"cols",description:'Contains the _preferred_ count of characters that a line should have. It was a non-standard synonym of [`width`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/pre#attr-width). To achieve such an effect, use CSS [`width`](https://developer.mozilla.org/en-US/docs/Web/CSS/width "The width CSS property sets an element\'s width. By default it sets the width of the content area, but if box-sizing is set to border-box, it sets the width of the border area.") instead.'},{name:"width",description:'Contains the _preferred_ count of characters that a line should have. Though technically still implemented, this attribute has no visual effect; to achieve such an effect, use CSS [`width`](https://developer.mozilla.org/en-US/docs/Web/CSS/width "The width CSS property sets an element\'s width. By default it sets the width of the content area, but if box-sizing is set to border-box, it sets the width of the border area.") instead.'},{name:"wrap",description:'Is a _hint_ indicating how the overflow must happen. In modern browser this hint is ignored and no visual effect results in its present; to achieve such an effect, use CSS [`white-space`](https://developer.mozilla.org/en-US/docs/Web/CSS/white-space "The white-space CSS property sets how white space inside an element is handled.") instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/pre"}]},{name:"blockquote",description:{kind:"markdown",value:"The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a footer or cite element, and optionally with in-line changes such as annotations and abbreviations."},attributes:[{name:"cite",description:{kind:"markdown",value:"A URL that designates a source document or message for the information quoted. This attribute is intended to point to information explaining the context or the reference for the quote."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/blockquote"}]},{name:"ol",description:{kind:"markdown",value:"The ol element represents a list of items, where the items have been intentionally ordered, such that changing the order would change the meaning of the document."},attributes:[{name:"reversed",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute specifies that the items of the list are specified in reversed order."}},{name:"start",description:{kind:"markdown",value:'This integer attribute specifies the start value for numbering the individual list items. Although the ordering type of list elements might be Roman numerals, such as XXXI, or letters, the value of start is always represented as a number. To start numbering elements from the letter "C", use `<ol start="3">`.\n\n**Note**: This attribute was deprecated in HTML4, but reintroduced in HTML5.'}},{name:"type",valueSet:"lt",description:{kind:"markdown",value:"Indicates the numbering type:\n\n* `'a'` indicates lowercase letters,\n* `'A'` indicates uppercase letters,\n* `'i'` indicates lowercase Roman numerals,\n* `'I'` indicates uppercase Roman numerals,\n* and `'1'` indicates numbers (default).\n\nThe type set is used for the entire list unless a different [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li#attr-type) attribute is used within an enclosed [`<li>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li \"The HTML <li> element is used to represent an item in a list. It must be contained in a parent element: an ordered list (<ol>), an unordered list (<ul>), or a menu (<menu>). In menus and unordered lists, list items are usually displayed using bullet points. In ordered lists, they are usually displayed with an ascending counter on the left, such as a number or letter.\") element.\n\n**Note:** This attribute was deprecated in HTML4, but reintroduced in HTML5.\n\nUnless the value of the list number matters (e.g. in legal or technical documents where items are to be referenced by their number/letter), the CSS [`list-style-type`](https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-type \"The list-style-type CSS property sets the marker (such as a disc, character, or custom counter style) of a list item element.\") property should be used instead."}},{name:"compact",description:'This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn\'t work in all browsers.\n\n**Warning:** Do not use this attribute, as it has been deprecated: the [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To give an effect similar to the `compact` attribute, the [CSS](https://developer.mozilla.org/en-US/docs/CSS) property [`line-height`](https://developer.mozilla.org/en-US/docs/Web/CSS/line-height "The line-height CSS property sets the amount of space used for lines, such as in text. On block-level elements, it specifies the minimum height of line boxes within the element. On non-replaced inline elements, it specifies the height that is used to calculate line box height.") can be used with a value of `80%`.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ol"}]},{name:"ul",description:{kind:"markdown",value:"The ul element represents a list of items, where the order of the items is not important — that is, where changing the order would not materially change the meaning of the document."},attributes:[{name:"compact",description:'This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn\'t work in all browsers.\n\n**Usage note: **Do not use this attribute, as it has been deprecated: the [`<ul>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul "The HTML <ul> element represents an unordered list of items, typically rendered as a bulleted list.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To give a similar effect as the `compact` attribute, the [CSS](https://developer.mozilla.org/en-US/docs/CSS) property [line-height](https://developer.mozilla.org/en-US/docs/CSS/line-height) can be used with a value of `80%`.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ul"}]},{name:"li",description:{kind:"markdown",value:"The li element represents a list item. If its parent element is an ol, ul, or menu element, then the element is an item of the parent element's list, as defined for those elements. Otherwise, the list item has no defined list-related relationship to any other li element."},attributes:[{name:"value",description:{kind:"markdown",value:'This integer attribute indicates the current ordinal value of the list item as defined by the [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element. The only allowed value for this attribute is a number, even if the list is displayed with Roman numerals or letters. List items that follow this one continue numbering from the value set. The **value** attribute has no meaning for unordered lists ([`<ul>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul "The HTML <ul> element represents an unordered list of items, typically rendered as a bulleted list.")) or for menus ([`<menu>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/menu "The HTML <menu> element represents a group of commands that a user can perform or activate. This includes both list menus, which might appear across the top of a screen, as well as context menus, such as those that might appear underneath a button after it has been clicked.")).\n\n**Note**: This attribute was deprecated in HTML4, but reintroduced in HTML5.\n\n**Note:** Prior to Gecko 9.0, negative values were incorrectly converted to 0. Starting in Gecko 9.0 all integer values are correctly parsed.'}},{name:"type",description:'This character attribute indicates the numbering type:\n\n* `a`: lowercase letters\n* `A`: uppercase letters\n* `i`: lowercase Roman numerals\n* `I`: uppercase Roman numerals\n* `1`: numbers\n\nThis type overrides the one used by its parent [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element, if any.\n\n**Usage note:** This attribute has been deprecated: use the CSS [`list-style-type`](https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-type "The list-style-type CSS property sets the marker (such as a disc, character, or custom counter style) of a list item element.") property instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/li"}]},{name:"dl",description:{kind:"markdown",value:"The dl element represents an association list consisting of zero or more name-value groups (a description list). A name-value group consists of one or more names (dt elements) followed by one or more values (dd elements), ignoring any nodes other than dt and dd elements. Within a single dl element, there should not be more than one dt element for each name."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dl"}]},{name:"dt",description:{kind:"markdown",value:"The dt element represents the term, or name, part of a term-description group in a description list (dl element)."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dt"}]},{name:"dd",description:{kind:"markdown",value:"The dd element represents the description, definition, or value, part of a term-description group in a description list (dl element)."},attributes:[{name:"nowrap",description:"If the value of this attribute is set to `yes`, the definition text will not wrap. The default value is `no`."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dd"}]},{name:"figure",description:{kind:"markdown",value:"The figure element represents some flow content, optionally with a caption, that is self-contained (like a complete sentence) and is typically referenced as a single unit from the main flow of the document."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/figure"}]},{name:"figcaption",description:{kind:"markdown",value:"The figcaption element represents a caption or legend for the rest of the contents of the figcaption element's parent figure element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/figcaption"}]},{name:"main",description:{kind:"markdown",value:"The main element represents the main content of the body of a document or application. The main content area consists of content that is directly related to or expands upon the central topic of a document or central functionality of an application."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/main"}]},{name:"div",description:{kind:"markdown",value:"The div element has no special meaning at all. It represents its children. It can be used with the class, lang, and title attributes to mark up semantics common to a group of consecutive elements."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/div"}]},{name:"a",description:{kind:"markdown",value:"If the a element has an href attribute, then it represents a hyperlink (a hypertext anchor) labeled by its contents."},attributes:[{name:"href",description:{kind:"markdown",value:"Contains a URL or a URL fragment that the hyperlink points to."}},{name:"target",description:{kind:"markdown",value:'Specifies where to display the linked URL. It is a name of, or keyword for, a _browsing context_: a tab, window, or `<iframe>`. The following keywords have special meanings:\n\n* `_self`: Load the URL into the same browsing context as the current one. This is the default behavior.\n* `_blank`: Load the URL into a new browsing context. This is usually a tab, but users can configure browsers to use new windows instead.\n* `_parent`: Load the URL into the parent browsing context of the current one. If there is no parent, this behaves the same way as `_self`.\n* `_top`: Load the URL into the top-level browsing context (that is, the "highest" browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this behaves the same way as `_self`.\n\n**Note:** When using `target`, consider adding `rel="noreferrer"` to avoid exploitation of the `window.opener` API.\n\n**Note:** Linking to another page using `target="_blank"` will run the new page on the same process as your page. If the new page is executing expensive JS, your page\'s performance may suffer. To avoid this use `rel="noopener"`.'}},{name:"download",description:{kind:"markdown",value:"This attribute instructs browsers to download a URL instead of navigating to it, so the user will be prompted to save it as a local file. If the attribute has a value, it is used as the pre-filled file name in the Save prompt (the user can still change the file name if they want). There are no restrictions on allowed values, though `/` and `\\` are converted to underscores. Most file systems limit some punctuation in file names, and browsers will adjust the suggested name accordingly.\n\n**Notes:**\n\n* This attribute only works for [same-origin URLs](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy).\n* Although HTTP(s) URLs need to be in the same-origin, [`blob:` URLs](https://developer.mozilla.org/en-US/docs/Web/API/URL.createObjectURL) and [`data:` URLs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs) are allowed so that content generated by JavaScript, such as pictures created in an image-editor Web app, can be downloaded.\n* If the HTTP header [`Content-Disposition:`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition) gives a different filename than this attribute, the HTTP header takes priority over this attribute.\n* If `Content-Disposition:` is set to `inline`, Firefox prioritizes `Content-Disposition`, like the filename case, while Chrome prioritizes the `download` attribute."}},{name:"ping",description:{kind:"markdown",value:'Contains a space-separated list of URLs to which, when the hyperlink is followed, [`POST`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST "The HTTP POST method sends data to the server. The type of the body of the request is indicated by the Content-Type header.") requests with the body `PING` will be sent by the browser (in the background). Typically used for tracking.'}},{name:"rel",description:{kind:"markdown",value:"Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types)."}},{name:"hreflang",description:{kind:"markdown",value:'This attribute indicates the human language of the linked resource. It is purely advisory, with no built-in functionality. Allowed values are determined by [BCP47](https://www.ietf.org/rfc/bcp/bcp47.txt "Tags for Identifying Languages").'}},{name:"type",description:{kind:"markdown",value:'Specifies the media type in the form of a [MIME type](https://developer.mozilla.org/en-US/docs/Glossary/MIME_type "MIME type: A MIME type (now properly called "media type", but also sometimes "content type") is a string sent along with a file indicating the type of the file (describing the content format, for example, a sound file might be labeled audio/ogg, or an image file image/png).") for the linked URL. It is purely advisory, with no built-in functionality.'}},{name:"referrerpolicy",description:"Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer) to send when fetching the URL:\n\n* `'no-referrer'` means the `Referer:` header will not be sent.\n* `'no-referrer-when-downgrade'` means no `Referer:` header will be sent when navigating to an origin without HTTPS. This is the default behavior.\n* `'origin'` means the referrer will be the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the page, not including information after the domain.\n* `'origin-when-cross-origin'` meaning that navigations to other origins will be limited to the scheme, the host and the port, while navigations on the same origin will include the referrer's path.\n* `'strict-origin-when-cross-origin'`\n* `'unsafe-url'` means the referrer will include the origin and path, but not the fragment, password, or username. This is unsafe because it can leak data from secure URLs to insecure ones."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/a"}]},{name:"em",description:{kind:"markdown",value:"The em element represents stress emphasis of its contents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/em"}]},{name:"strong",description:{kind:"markdown",value:"The strong element represents strong importance, seriousness, or urgency for its contents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/strong"}]},{name:"small",description:{kind:"markdown",value:"The small element represents side comments such as small print."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/small"}]},{name:"s",description:{kind:"markdown",value:"The s element represents contents that are no longer accurate or no longer relevant."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/s"}]},{name:"cite",description:{kind:"markdown",value:"The cite element represents a reference to a creative work. It must include the title of the work or the name of the author(person, people or organization) or an URL reference, or a reference in abbreviated form as per the conventions used for the addition of citation metadata."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/cite"}]},{name:"q",description:{kind:"markdown",value:"The q element represents some phrasing content quoted from another source."},attributes:[{name:"cite",description:{kind:"markdown",value:"The value of this attribute is a URL that designates a source document or message for the information quoted. This attribute is intended to point to information explaining the context or the reference for the quote."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/q"}]},{name:"dfn",description:{kind:"markdown",value:"The dfn element represents the defining instance of a term. The paragraph, description list group, or section that is the nearest ancestor of the dfn element must also contain the definition(s) for the term given by the dfn element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dfn"}]},{name:"abbr",description:{kind:"markdown",value:"The abbr element represents an abbreviation or acronym, optionally with its expansion. The title attribute may be used to provide an expansion of the abbreviation. The attribute, if specified, must contain an expansion of the abbreviation, and nothing else."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/abbr"}]},{name:"ruby",description:{kind:"markdown",value:"The ruby element allows one or more spans of phrasing content to be marked with ruby annotations. Ruby annotations are short runs of text presented alongside base text, primarily used in East Asian typography as a guide for pronunciation or to include other annotations. In Japanese, this form of typography is also known as furigana. Ruby text can appear on either side, and sometimes both sides, of the base text, and it is possible to control its position using CSS. A more complete introduction to ruby can be found in the Use Cases & Exploratory Approaches for Ruby Markup document as well as in CSS Ruby Module Level 1. [RUBY-UC] [CSSRUBY]"},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ruby"}]},{name:"rb",description:{kind:"markdown",value:"The rb element marks the base text component of a ruby annotation. When it is the child of a ruby element, it doesn't represent anything itself, but its parent ruby element uses it as part of determining what it represents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rb"}]},{name:"rt",description:{kind:"markdown",value:"The rt element marks the ruby text component of a ruby annotation. When it is the child of a ruby element or of an rtc element that is itself the child of a ruby element, it doesn't represent anything itself, but its ancestor ruby element uses it as part of determining what it represents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rt"}]},{name:"rp",description:{kind:"markdown",value:"The rp element is used to provide fallback text to be shown by user agents that don't support ruby annotations. One widespread convention is to provide parentheses around the ruby text component of a ruby annotation."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rp"}]},{name:"time",description:{kind:"markdown",value:"The time element represents its contents, along with a machine-readable form of those contents in the datetime attribute. The kind of content is limited to various kinds of dates, times, time-zone offsets, and durations, as described below."},attributes:[{name:"datetime",description:{kind:"markdown",value:"This attribute indicates the time and/or date of the element and must be in one of the formats described below."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/time"}]},{name:"code",description:{kind:"markdown",value:"The code element represents a fragment of computer code. This could be an XML element name, a file name, a computer program, or any other string that a computer would recognize."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/code"}]},{name:"var",description:{kind:"markdown",value:"The var element represents a variable. This could be an actual variable in a mathematical expression or programming context, an identifier representing a constant, a symbol identifying a physical quantity, a function parameter, or just be a term used as a placeholder in prose."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/var"}]},{name:"samp",description:{kind:"markdown",value:"The samp element represents sample or quoted output from another program or computing system."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/samp"}]},{name:"kbd",description:{kind:"markdown",value:"The kbd element represents user input (typically keyboard input, although it may also be used to represent other input, such as voice commands)."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/kbd"}]},{name:"sub",description:{kind:"markdown",value:"The sub element represents a subscript."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/sub"}]},{name:"sup",description:{kind:"markdown",value:"The sup element represents a superscript."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/sup"}]},{name:"i",description:{kind:"markdown",value:"The i element represents a span of text in an alternate voice or mood, or otherwise offset from the normal prose in a manner indicating a different quality of text, such as a taxonomic designation, a technical term, an idiomatic phrase from another language, transliteration, a thought, or a ship name in Western texts."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/i"}]},{name:"b",description:{kind:"markdown",value:"The b element represents a span of text to which attention is being drawn for utilitarian purposes without conveying any extra importance and with no implication of an alternate voice or mood, such as key words in a document abstract, product names in a review, actionable words in interactive text-driven software, or an article lede."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/b"}]},{name:"u",description:{kind:"markdown",value:"The u element represents a span of text with an unarticulated, though explicitly rendered, non-textual annotation, such as labeling the text as being a proper name in Chinese text (a Chinese proper name mark), or labeling the text as being misspelt."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/u"}]},{name:"mark",description:{kind:"markdown",value:"The mark element represents a run of text in one document marked or highlighted for reference purposes, due to its relevance in another context. When used in a quotation or other block of text referred to from the prose, it indicates a highlight that was not originally present but which has been added to bring the reader's attention to a part of the text that might not have been considered important by the original author when the block was originally written, but which is now under previously unexpected scrutiny. When used in the main prose of a document, it indicates a part of the document that has been highlighted due to its likely relevance to the user's current activity."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/mark"}]},{name:"bdi",description:{kind:"markdown",value:"The bdi element represents a span of text that is to be isolated from its surroundings for the purposes of bidirectional text formatting. [BIDI]"},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/bdi"}]},{name:"bdo",description:{kind:"markdown",value:"The bdo element represents explicit text directionality formatting control for its children. It allows authors to override the Unicode bidirectional algorithm by explicitly specifying a direction override. [BIDI]"},attributes:[{name:"dir",description:"The direction in which text should be rendered in this element's contents. Possible values are:\n\n* `ltr`: Indicates that the text should go in a left-to-right direction.\n* `rtl`: Indicates that the text should go in a right-to-left direction."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/bdo"}]},{name:"span",description:{kind:"markdown",value:"The span element doesn't mean anything on its own, but can be useful when used together with the global attributes, e.g. class, lang, or dir. It represents its children."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/span"}]},{name:"br",description:{kind:"markdown",value:"The br element represents a line break."},attributes:[{name:"clear",description:"Indicates where to begin the next line after the break."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/br"}]},{name:"wbr",description:{kind:"markdown",value:"The wbr element represents a line break opportunity."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/wbr"}]},{name:"ins",description:{kind:"markdown",value:"The ins element represents an addition to the document."},attributes:[{name:"cite",description:"This attribute defines the URI of a resource that explains the change, such as a link to meeting minutes or a ticket in a troubleshooting system."},{name:"datetime",description:'This attribute indicates the time and date of the change and must be a valid date with an optional time string. If the value cannot be parsed as a date with an optional time string, the element does not have an associated time stamp. For the format of the string without a time, see [Format of a valid date string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_date_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article."). The format of the string if it includes both date and time is covered in [Format of a valid local date and time string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_local_date_and_time_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ins"}]},{name:"del",description:{kind:"markdown",value:"The del element represents a removal from the document."},attributes:[{name:"cite",description:{kind:"markdown",value:"A URI for a resource that explains the change (for example, meeting minutes)."}},{name:"datetime",description:{kind:"markdown",value:'This attribute indicates the time and date of the change and must be a valid date string with an optional time. If the value cannot be parsed as a date with an optional time string, the element does not have an associated time stamp. For the format of the string without a time, see [Format of a valid date string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_date_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article."). The format of the string if it includes both date and time is covered in [Format of a valid local date and time string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_local_date_and_time_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.").'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/del"}]},{name:"picture",description:{kind:"markdown",value:"The picture element is a container which provides multiple sources to its contained img element to allow authors to declaratively control or give hints to the user agent about which image resource to use, based on the screen pixel density, viewport size, image format, and other factors. It represents its children."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/picture"}]},{name:"img",description:{kind:"markdown",value:"An img element represents an image."},attributes:[{name:"alt",description:{kind:"markdown",value:'This attribute defines an alternative text description of the image.\n\n**Note:** Browsers do not always display the image referenced by the element. This is the case for non-graphical browsers (including those used by people with visual impairments), if the user chooses not to display images, or if the browser cannot display the image because it is invalid or an [unsupported type](#Supported_image_formats). In these cases, the browser may replace the image with the text defined in this element\'s `alt` attribute. You should, for these reasons and others, provide a useful value for `alt` whenever possible.\n\n**Note:** Omitting this attribute altogether indicates that the image is a key part of the content, and no textual equivalent is available. Setting this attribute to an empty string (`alt=""`) indicates that this image is _not_ a key part of the content (decorative), and that non-visual browsers may omit it from rendering.'}},{name:"src",description:{kind:"markdown",value:"The image URL. This attribute is mandatory for the `<img>` element. On browsers supporting `srcset`, `src` is treated like a candidate image with a pixel density descriptor `1x` unless an image with this pixel density descriptor is already defined in `srcset,` or unless `srcset` contains '`w`' descriptors."}},{name:"srcset",description:{kind:"markdown",value:"A list of one or more strings separated by commas indicating a set of possible image sources for the user agent to use. Each string is composed of:\n\n1. a URL to an image,\n2. optionally, whitespace followed by one of:\n * A width descriptor, or a positive integer directly followed by '`w`'. The width descriptor is divided by the source size given in the `sizes` attribute to calculate the effective pixel density.\n * A pixel density descriptor, which is a positive floating point number directly followed by '`x`'.\n\nIf no descriptor is specified, the source is assigned the default descriptor: `1x`.\n\nIt is incorrect to mix width descriptors and pixel density descriptors in the same `srcset` attribute. Duplicate descriptors (for instance, two sources in the same `srcset` which are both described with '`2x`') are also invalid.\n\nThe user agent selects any one of the available sources at its discretion. This provides them with significant leeway to tailor their selection based on things like user preferences or bandwidth conditions. See our [Responsive images](https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images) tutorial for an example."}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates if the fetching of the related image must be done using CORS or not. [CORS-enabled images](https://developer.mozilla.org/en-US/docs/CORS_Enabled_Image) can be reused in the [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being "[tainted](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image#What_is_a_tainted_canvas)." The allowed values are:'}},{name:"usemap",description:{kind:"markdown",value:'The partial URL (starting with \'#\') of an [image map](https://developer.mozilla.org/en-US/docs/HTML/Element/map) associated with the element.\n\n**Note:** You cannot use this attribute if the `<img>` element is a descendant of an [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL.") or [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") element.'}},{name:"ismap",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the image is part of a server-side map. If so, the precise coordinates of a click are sent to the server.\n\n**Note:** This attribute is allowed only if the `<img>` element is a descendant of an [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL.") element with a valid [`href`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href) attribute.'}},{name:"width",description:{kind:"markdown",value:"The intrinsic width of the image in pixels."}},{name:"height",description:{kind:"markdown",value:"The intrinsic height of the image in pixels."}},{name:"decoding",description:"Provides an image decoding hint to the browser. The allowed values are:"},{name:"decoding",description:"`sync`\n\nDecode the image synchronously for atomic presentation with other content.\n\n`async`\n\nDecode the image asynchronously to reduce delay in presenting other content.\n\n`auto`\n\nDefault mode, which indicates no preference for the decoding mode. The browser decides what is best for the user."},{name:"importance",description:"Indicates the relative importance of the resource. Priority hints are delegated using the values:"},{name:"importance",description:"`auto`: Indicates **no preference**. The browser may use its own heuristics to decide the priority of the image.\n\n`high`: Indicates to the browser that the image is of **high** priority.\n\n`low`: Indicates to the browser that the image is of **low** priority."},{name:"intrinsicsize",description:"This attribute tells the browser to ignore the actual intrinsic size of the image and pretend it’s the size specified in the attribute. Specifically, the image would raster at these dimensions and `naturalWidth`/`naturalHeight` on images would return the values specified in this attribute. [Explainer](https://github.com/ojanvafai/intrinsicsize-attribute), [examples](https://googlechrome.github.io/samples/intrinsic-size/index.html)"},{name:"referrerpolicy",description:"A string indicating which referrer to use when fetching the resource:\n\n* `no-referrer:` The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer \"The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.\") header will not be sent.\n* `no-referrer-when-downgrade:` No `Referer` header will be sent when navigating to an origin without TLS (HTTPS). This is a user agent’s default behavior if no policy is otherwise specified.\n* `origin:` The `Referer` header will include the page of origin's scheme, the host, and the port.\n* `origin-when-cross-origin:` Navigating to other origins will limit the included referral data to the scheme, the host and the port, while navigating from the same origin will include the referrer's full path.\n* `unsafe-url:` The `Referer` header will include the origin and the path, but not the fragment, password, or username. This case is unsafe because it can leak origins and paths from TLS-protected resources to insecure origins."},{name:"sizes",description:"A list of one or more strings separated by commas indicating a set of source sizes. Each source size consists of:\n\n1. a media condition. This must be omitted for the last item.\n2. a source size value.\n\nSource size values specify the intended display size of the image. User agents use the current source size to select one of the sources supplied by the `srcset` attribute, when those sources are described using width ('`w`') descriptors. The selected source size affects the intrinsic size of the image (the image’s display size if no CSS styling is applied). If the `srcset` attribute is absent, or contains no values with a width (`w`) descriptor, then the `sizes` attribute has no effect."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/img"}]},{name:"iframe",description:{kind:"markdown",value:"The iframe element represents a nested browsing context."},attributes:[{name:"src",description:{kind:"markdown",value:'The URL of the page to embed. Use a value of `about:blank` to embed an empty page that conforms to the [same-origin policy](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy#Inherited_origins). Also note that programatically removing an `<iframe>`\'s src attribute (e.g. via [`Element.removeAttribute()`](https://developer.mozilla.org/en-US/docs/Web/API/Element/removeAttribute "The Element method removeAttribute() removes the attribute with the specified name from the element.")) causes `about:blank` to be loaded in the frame in Firefox (from version 65), Chromium-based browsers, and Safari/iOS.'}},{name:"srcdoc",description:{kind:"markdown",value:"Inline HTML to embed, overriding the `src` attribute. If a browser does not support the `srcdoc` attribute, it will fall back to the URL in the `src` attribute."}},{name:"name",description:{kind:"markdown",value:'A targetable name for the embedded browsing context. This can be used in the `target` attribute of the [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL."), [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server."), or [`<base>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base "The HTML <base> element specifies the base URL to use for all relative URLs contained within a document. There can be only one <base> element in a document.") elements; the `formtarget` attribute of the [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") or [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") elements; or the `windowName` parameter in the [`window.open()`](https://developer.mozilla.org/en-US/docs/Web/API/Window/open "The Window interface\'s open() method loads the specified resource into the browsing context (window, <iframe> or tab) with the specified name. If the name doesn\'t exist, then a new window is opened and the specified resource is loaded into its browsing context.") method.'}},{name:"sandbox",valueSet:"sb",description:{kind:"markdown",value:'Applies extra restrictions to the content in the frame. The value of the attribute can either be empty to apply all restrictions, or space-separated tokens to lift particular restrictions:\n\n* `allow-forms`: Allows the resource to submit forms. If this keyword is not used, form submission is blocked.\n* `allow-modals`: Lets the resource [open modal windows](https://html.spec.whatwg.org/multipage/origin.html#sandboxed-modals-flag).\n* `allow-orientation-lock`: Lets the resource [lock the screen orientation](https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockOrientation).\n* `allow-pointer-lock`: Lets the resource use the [Pointer Lock API](https://developer.mozilla.org/en-US/docs/WebAPI/Pointer_Lock).\n* `allow-popups`: Allows popups (such as `window.open()`, `target="_blank"`, or `showModalDialog()`). If this keyword is not used, the popup will silently fail to open.\n* `allow-popups-to-escape-sandbox`: Lets the sandboxed document open new windows without those windows inheriting the sandboxing. For example, this can safely sandbox an advertisement without forcing the same restrictions upon the page the ad links to.\n* `allow-presentation`: Lets the resource start a [presentation session](https://developer.mozilla.org/en-US/docs/Web/API/PresentationRequest).\n* `allow-same-origin`: If this token is not used, the resource is treated as being from a special origin that always fails the [same-origin policy](https://developer.mozilla.org/en-US/docs/Glossary/same-origin_policy "same-origin policy: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin.").\n* `allow-scripts`: Lets the resource run scripts (but not create popup windows).\n* `allow-storage-access-by-user-activation` : Lets the resource request access to the parent\'s storage capabilities with the [Storage Access API](https://developer.mozilla.org/en-US/docs/Web/API/Storage_Access_API).\n* `allow-top-navigation`: Lets the resource navigate the top-level browsing context (the one named `_top`).\n* `allow-top-navigation-by-user-activation`: Lets the resource navigate the top-level browsing context, but only if initiated by a user gesture.\n\n**Notes about sandboxing:**\n\n* When the embedded document has the same origin as the embedding page, it is **strongly discouraged** to use both `allow-scripts` and `allow-same-origin`, as that lets the embedded document remove the `sandbox` attribute — making it no more secure than not using the `sandbox` attribute at all.\n* Sandboxing is useless if the attacker can display content outside a sandboxed `iframe` — such as if the viewer opens the frame in a new tab. Such content should be also served from a _separate origin_ to limit potential damage.\n* The `sandbox` attribute is unsupported in Internet Explorer 9 and earlier.'}},{name:"seamless",valueSet:"v"},{name:"allowfullscreen",valueSet:"v",description:{kind:"markdown",value:'Set to `true` if the `<iframe>` can activate fullscreen mode by calling the [`requestFullscreen()`](https://developer.mozilla.org/en-US/docs/Web/API/Element/requestFullscreen "The Element.requestFullscreen() method issues an asynchronous request to make the element be displayed in full-screen mode.") method.'}},{name:"width",description:{kind:"markdown",value:"The width of the frame in CSS pixels. Default is `300`."}},{name:"height",description:{kind:"markdown",value:"The height of the frame in CSS pixels. Default is `150`."}},{name:"allow",description:"Specifies a [feature policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Feature_Policy) for the `<iframe>`."},{name:"allowpaymentrequest",description:"Set to `true` if a cross-origin `<iframe>` should be allowed to invoke the [Payment Request API](https://developer.mozilla.org/en-US/docs/Web/API/Payment_Request_API)."},{name:"allowpaymentrequest",description:'This attribute is considered a legacy attribute and redefined as `allow="payment"`.'},{name:"csp",description:'A [Content Security Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP) enforced for the embedded resource. See [`HTMLIFrameElement.csp`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement/csp "The csp property of the HTMLIFrameElement interface specifies the Content Security Policy that an embedded document must agree to enforce upon itself.") for details.'},{name:"importance",description:"The download priority of the resource in the `<iframe>`'s `src` attribute. Allowed values:\n\n`auto` (default)\n\nNo preference. The browser uses its own heuristics to decide the priority of the resource.\n\n`high`\n\nThe resource should be downloaded before other lower-priority page resources.\n\n`low`\n\nThe resource should be downloaded after other higher-priority page resources."},{name:"referrerpolicy",description:'Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/API/Document/referrer) to send when fetching the frame\'s resource:\n\n* `no-referrer`: The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` (default): The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent to [origin](https://developer.mozilla.org/en-US/docs/Glossary/origin "origin: Web content\'s origin is defined by the scheme (protocol), host (domain), and port of the URL used to access it. Two objects have the same origin only when the scheme, host, and port all match.")s without [TLS](https://developer.mozilla.org/en-US/docs/Glossary/TLS "TLS: Transport Layer Security (TLS), previously known as Secure Sockets Layer (SSL), is a protocol used by applications to communicate securely across a network, preventing tampering with and eavesdropping on email, web browsing, messaging, and other protocols.") ([HTTPS](https://developer.mozilla.org/en-US/docs/Glossary/HTTPS "HTTPS: HTTPS (HTTP Secure) is an encrypted version of the HTTP protocol. It usually uses SSL or TLS to encrypt all communication between a client and a server. This secure connection allows clients to safely exchange sensitive data with a server, for example for banking activities or online shopping.")).\n* `origin`: The sent referrer will be limited to the origin of the referring page: its [scheme](https://developer.mozilla.org/en-US/docs/Archive/Mozilla/URIScheme), [host](https://developer.mozilla.org/en-US/docs/Glossary/host "host: A host is a device connected to the Internet (or a local network). Some hosts called servers offer additional services like serving webpages or storing files and emails."), and [port](https://developer.mozilla.org/en-US/docs/Glossary/port "port: For a computer connected to a network with an IP address, a port is a communication endpoint. Ports are designated by numbers, and below 1024 each port is associated by default with a specific protocol.").\n* `origin-when-cross-origin`: The referrer sent to other origins will be limited to the scheme, the host, and the port. Navigations on the same origin will still include the path.\n* `same-origin`: A referrer will be sent for [same origin](https://developer.mozilla.org/en-US/docs/Glossary/Same-origin_policy "same origin: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin."), but cross-origin requests will contain no referrer information.\n* `strict-origin`: Only send the origin of the document as the referrer when the protocol security level stays the same (HTTPS→HTTPS), but don\'t send it to a less secure destination (HTTPS→HTTP).\n* `strict-origin-when-cross-origin`: Send a full URL when performing a same-origin request, only send the origin when the protocol security level stays the same (HTTPS→HTTPS), and send no header to a less secure destination (HTTPS→HTTP).\n* `unsafe-url`: The referrer will include the origin _and_ the path (but not the [fragment](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/hash), [password](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/password), or [username](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/username)). **This value is unsafe**, because it leaks origins and paths from TLS-protected resources to insecure origins.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/iframe"}]},{name:"embed",description:{kind:"markdown",value:"The embed element provides an integration point for an external (typically non-HTML) application or interactive content."},attributes:[{name:"src",description:{kind:"markdown",value:"The URL of the resource being embedded."}},{name:"type",description:{kind:"markdown",value:"The MIME type to use to select the plug-in to instantiate."}},{name:"width",description:{kind:"markdown",value:"The displayed width of the resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). This must be an absolute value; percentages are _not_ allowed."}},{name:"height",description:{kind:"markdown",value:"The displayed height of the resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). This must be an absolute value; percentages are _not_ allowed."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/embed"}]},{name:"object",description:{kind:"markdown",value:"The object element can represent an external resource, which, depending on the type of the resource, will either be treated as an image, as a nested browsing context, or as an external resource to be processed by a plugin."},attributes:[{name:"data",description:{kind:"markdown",value:"The address of the resource as a valid URL. At least one of **data** and **type** must be defined."}},{name:"type",description:{kind:"markdown",value:"The [content type](https://developer.mozilla.org/en-US/docs/Glossary/Content_type) of the resource specified by **data**. At least one of **data** and **type** must be defined."}},{name:"typemustmatch",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates if the **type** attribute and the actual [content type](https://developer.mozilla.org/en-US/docs/Glossary/Content_type) of the resource must match to be used."}},{name:"name",description:{kind:"markdown",value:"The name of valid browsing context (HTML5), or the name of the control (HTML 4)."}},{name:"usemap",description:{kind:"markdown",value:"A hash-name reference to a [`<map>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/map \"The HTML <map> element is used with <area> elements to define an image map (a clickable link area).\") element; that is a '#' followed by the value of a [`name`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/map#attr-name) of a map element."}},{name:"form",description:{kind:"markdown",value:'The form element, if any, that the object element is associated with (its _form owner_). The value of the attribute must be an ID of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document.'}},{name:"width",description:{kind:"markdown",value:"The width of the display resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). -- (Absolute values only. [NO percentages](https://html.spec.whatwg.org/multipage/embedded-content.html#dimension-attributes))"}},{name:"height",description:{kind:"markdown",value:"The height of the displayed resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). -- (Absolute values only. [NO percentages](https://html.spec.whatwg.org/multipage/embedded-content.html#dimension-attributes))"}},{name:"archive",description:"A space-separated list of URIs for archives of resources for the object."},{name:"border",description:"The width of a border around the control, in pixels."},{name:"classid",description:"The URI of the object's implementation. It can be used together with, or in place of, the **data** attribute."},{name:"codebase",description:"The base path used to resolve relative URIs specified by **classid**, **data**, or **archive**. If not specified, the default is the base URI of the current document."},{name:"codetype",description:"The content type of the data specified by **classid**."},{name:"declare",description:"The presence of this Boolean attribute makes this element a declaration only. The object must be instantiated by a subsequent `<object>` element. In HTML5, repeat the <object> element completely each that that the resource is reused."},{name:"standby",description:"A message that the browser can show while loading the object's implementation and data."},{name:"tabindex",description:"The position of the element in the tabbing navigation order for the current document."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/object"}]},{name:"param",description:{kind:"markdown",value:"The param element defines parameters for plugins invoked by object elements. It does not represent anything on its own."},attributes:[{name:"name",description:{kind:"markdown",value:"Name of the parameter."}},{name:"value",description:{kind:"markdown",value:"Specifies the value of the parameter."}},{name:"type",description:'Only used if the `valuetype` is set to "ref". Specifies the MIME type of values found at the URI specified by value.'},{name:"valuetype",description:'Specifies the type of the `value` attribute. Possible values are:\n\n* data: Default value. The value is passed to the object\'s implementation as a string.\n* ref: The value is a URI to a resource where run-time values are stored.\n* object: An ID of another [`<object>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/object "The HTML <object> element represents an external resource, which can be treated as an image, a nested browsing context, or a resource to be handled by a plugin.") in the same document.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/param"}]},{name:"video",description:{kind:"markdown",value:"A video element is used for playing videos or movies, and audio files with captions."},attributes:[{name:"src"},{name:"crossorigin",valueSet:"xo"},{name:"poster"},{name:"preload",valueSet:"pl"},{name:"autoplay",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute; if specified, the video automatically begins to play back as soon as it can do so without stopping to finish loading the data."}},{name:"mediagroup"},{name:"loop",valueSet:"v"},{name:"muted",valueSet:"v"},{name:"controls",valueSet:"v"},{name:"width"},{name:"height"}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/video"}]},{name:"audio",description:{kind:"markdown",value:"An audio element represents a sound or audio stream."},attributes:[{name:"src",description:{kind:"markdown",value:'The URL of the audio to embed. This is subject to [HTTP access controls](https://developer.mozilla.org/en-US/docs/HTTP_access_control). This is optional; you may instead use the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source "The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.") element within the audio block to specify the audio to embed.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates whether to use CORS to fetch the related image. [CORS-enabled resources](https://developer.mozilla.org/en-US/docs/CORS_Enabled_Image) can be reused in the [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being _tainted_. The allowed values are:\n\nanonymous\n\nSends a cross-origin request without a credential. In other words, it sends the `Origin:` HTTP header without a cookie, X.509 certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (by not setting the `Access-Control-Allow-Origin:` HTTP header), the image will be _tainted_, and its usage restricted.\n\nuse-credentials\n\nSends a cross-origin request with a credential. In other words, it sends the `Origin:` HTTP header with a cookie, a certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (through `Access-Control-Allow-Credentials:` HTTP header), the image will be _tainted_ and its usage restricted.\n\nWhen not present, the resource is fetched without a CORS request (i.e. without sending the `Origin:` HTTP header), preventing its non-tainted used in [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") elements. If invalid, it is handled as if the enumerated keyword **anonymous** was used. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/HTML/CORS_settings_attributes) for additional information.'}},{name:"preload",valueSet:"pl",description:{kind:"markdown",value:"This enumerated attribute is intended to provide a hint to the browser about what the author thinks will lead to the best user experience. It may have one of the following values:\n\n* `none`: Indicates that the audio should not be preloaded.\n* `metadata`: Indicates that only audio metadata (e.g. length) is fetched.\n* `auto`: Indicates that the whole audio file can be downloaded, even if the user is not expected to use it.\n* _empty string_: A synonym of the `auto` value.\n\nIf not set, `preload`'s default value is browser-defined (i.e. each browser may have its own default value). The spec advises it to be set to `metadata`.\n\n**Usage notes:**\n\n* The `autoplay` attribute has precedence over `preload`. If `autoplay` is specified, the browser would obviously need to start downloading the audio for playback.\n* The browser is not forced by the specification to follow the value of this attribute; it is a mere hint."}},{name:"autoplay",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute: if specified, the audio will automatically begin playback as soon as it can do so, without waiting for the entire audio file to finish downloading.\n\n**Note**: Sites that automatically play audio (or videos with an audio track) can be an unpleasant experience for users, so should be avoided when possible. If you must offer autoplay functionality, you should make it opt-in (requiring a user to specifically enable it). However, this can be useful when creating media elements whose source will be set at a later time, under user control."}},{name:"mediagroup"},{name:"loop",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute: if specified, the audio player will automatically seek back to the start upon reaching the end of the audio."}},{name:"muted",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute that indicates whether the audio will be initially silenced. Its default value is `false`."}},{name:"controls",valueSet:"v",description:{kind:"markdown",value:"If this attribute is present, the browser will offer controls to allow the user to control audio playback, including volume, seeking, and pause/resume playback."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/audio"}]},{name:"source",description:{kind:"markdown",value:"The source element allows authors to specify multiple alternative media resources for media elements. It does not represent anything on its own."},attributes:[{name:"src",description:{kind:"markdown",value:'Required for [`<audio>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio "The HTML <audio> element is used to embed sound content in documents. It may contain one or more audio sources, represented using the src attribute or the <source> element: the browser will choose the most suitable one. It can also be the destination for streamed media, using a MediaStream.") and [`<video>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video "The HTML Video element (<video>) embeds a media player which supports video playback into the document."), address of the media resource. The value of this attribute is ignored when the `<source>` element is placed inside a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'}},{name:"type",description:{kind:"markdown",value:"The MIME-type of the resource, optionally with a `codecs` parameter. See [RFC 4281](https://tools.ietf.org/html/rfc4281) for information about how to specify codecs."}},{name:"sizes",description:'Is a list of source sizes that describes the final rendered width of the image represented by the source. Each source size consists of a comma-separated list of media condition-length pairs. This information is used by the browser to determine, before laying the page out, which image defined in [`srcset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source#attr-srcset) to use. \nThe `sizes` attribute has an effect only when the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source "The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.") element is the direct child of a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'},{name:"srcset",description:"A list of one or more strings separated by commas indicating a set of possible images represented by the source for the browser to use. Each string is composed of:\n\n1. one URL to an image,\n2. a width descriptor, that is a positive integer directly followed by `'w'`. The default value, if missing, is the infinity.\n3. a pixel density descriptor, that is a positive floating number directly followed by `'x'`. The default value, if missing, is `1x`.\n\nEach string in the list must have at least a width descriptor or a pixel density descriptor to be valid. Among the list, there must be only one string containing the same tuple of width descriptor and pixel density descriptor. \nThe browser chooses the most adequate image to display at a given point of time. \nThe `srcset` attribute has an effect only when the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source \"The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.\") element is the direct child of a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture \"The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.\") element."},{name:"media",description:'[Media query](https://developer.mozilla.org/en-US/docs/CSS/Media_queries) of the resource\'s intended media; this should be used only in a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/source"}]},{name:"track",description:{kind:"markdown",value:"The track element allows authors to specify explicit external timed text tracks for media elements. It does not represent anything on its own."},attributes:[{name:"default",valueSet:"v",description:{kind:"markdown",value:"This attribute indicates that the track should be enabled unless the user's preferences indicate that another track is more appropriate. This may only be used on one `track` element per media element."}},{name:"kind",valueSet:"tk",description:{kind:"markdown",value:"How the text track is meant to be used. If omitted the default kind is `subtitles`. If the attribute is not present, it will use the `subtitles`. If the attribute contains an invalid value, it will use `metadata`. (Versions of Chrome earlier than 52 treated an invalid value as `subtitles`.) The following keywords are allowed:\n\n* `subtitles`\n * Subtitles provide translation of content that cannot be understood by the viewer. For example dialogue or text that is not English in an English language film.\n * Subtitles may contain additional content, usually extra background information. For example the text at the beginning of the Star Wars films, or the date, time, and location of a scene.\n* `captions`\n * Closed captions provide a transcription and possibly a translation of audio.\n * It may include important non-verbal information such as music cues or sound effects. It may indicate the cue's source (e.g. music, text, character).\n * Suitable for users who are deaf or when the sound is muted.\n* `descriptions`\n * Textual description of the video content.\n * Suitable for users who are blind or where the video cannot be seen.\n* `chapters`\n * Chapter titles are intended to be used when the user is navigating the media resource.\n* `metadata`\n * Tracks used by scripts. Not visible to the user."}},{name:"label",description:{kind:"markdown",value:"A user-readable title of the text track which is used by the browser when listing available text tracks."}},{name:"src",description:{kind:"markdown",value:'Address of the track (`.vtt` file). Must be a valid URL. This attribute must be specified and its URL value must have the same origin as the document — unless the [`<audio>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio "The HTML <audio> element is used to embed sound content in documents. It may contain one or more audio sources, represented using the src attribute or the <source> element: the browser will choose the most suitable one. It can also be the destination for streamed media, using a MediaStream.") or [`<video>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video "The HTML Video element (<video>) embeds a media player which supports video playback into the document.") parent element of the `track` element has a [`crossorigin`](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) attribute.'}},{name:"srclang",description:{kind:"markdown",value:"Language of the track text data. It must be a valid [BCP 47](https://r12a.github.io/app-subtags/) language tag. If the `kind` attribute is set to `subtitles,` then `srclang` must be defined."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/track"}]},{name:"map",description:{kind:"markdown",value:"The map element, in conjunction with an img element and any area element descendants, defines an image map. The element represents its children."},attributes:[{name:"name",description:{kind:"markdown",value:"The name attribute gives the map a name so that it can be referenced. The attribute must be present and must have a non-empty value with no space characters. The value of the name attribute must not be a compatibility-caseless match for the value of the name attribute of another map element in the same document. If the id attribute is also specified, both attributes must have the same value."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/map"}]},{name:"area",description:{kind:"markdown",value:"The area element represents either a hyperlink with some text and a corresponding area on an image map, or a dead area on an image map."},attributes:[{name:"alt"},{name:"coords"},{name:"shape",valueSet:"sh"},{name:"href"},{name:"target"},{name:"download"},{name:"ping"},{name:"rel"},{name:"hreflang"},{name:"type"},{name:"accesskey",description:"Specifies a keyboard navigation accelerator for the element. Pressing ALT or a similar key in association with the specified character selects the form control correlated with that key sequence. Page designers are forewarned to avoid key sequences already bound to browsers. This attribute is global since HTML5."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/area"}]},{name:"table",description:{kind:"markdown",value:"The table element represents data with more than one dimension, in the form of a table."},attributes:[{name:"border"},{name:"align",description:'This enumerated attribute indicates how the table must be aligned inside the containing document. It may have the following values:\n\n* left: the table is displayed on the left side of the document;\n* center: the table is displayed in the center of the document;\n* right: the table is displayed on the right side of the document.\n\n**Usage Note**\n\n* **Do not use this attribute**, as it has been deprecated. The [`<table>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/table "The HTML <table> element represents tabular data — that is, information presented in a two-dimensional table comprised of rows and columns of cells containing data.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). Set [`margin-left`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left "The margin-left CSS property sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") and [`margin-right`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-right "The margin-right CSS property sets the margin area on the right side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") to `auto` or [`margin`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin "The margin CSS property sets the margin area on all four sides of an element. It is a shorthand for margin-top, margin-right, margin-bottom, and margin-left.") to `0 auto` to achieve an effect that is similar to the align attribute.\n* Prior to Firefox 4, Firefox also supported the `middle`, `absmiddle`, and `abscenter` values as synonyms of `center`, in quirks mode only.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/table"}]},{name:"caption",description:{kind:"markdown",value:"The caption element represents the title of the table that is its parent, if it has a parent and that is a table element."},attributes:[{name:"align",description:'This enumerated attribute indicates how the caption must be aligned with respect to the table. It may have one of the following values:\n\n`left`\n\nThe caption is displayed to the left of the table.\n\n`top`\n\nThe caption is displayed above the table.\n\n`right`\n\nThe caption is displayed to the right of the table.\n\n`bottom`\n\nThe caption is displayed below the table.\n\n**Usage note:** Do not use this attribute, as it has been deprecated. The [`<caption>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/caption "The HTML Table Caption element (<caption>) specifies the caption (or title) of a table, and if used is always the first child of a <table>.") element should be styled using the [CSS](https://developer.mozilla.org/en-US/docs/CSS) properties [`caption-side`](https://developer.mozilla.org/en-US/docs/Web/CSS/caption-side "The caption-side CSS property puts the content of a table\'s <caption> on the specified side. The values are relative to the writing-mode of the table.") and [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/caption"}]},{name:"colgroup",description:{kind:"markdown",value:"The colgroup element represents a group of one or more columns in the table that is its parent, if it has a parent and that is a table element."},attributes:[{name:"span"},{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed. The descendant [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") elements may override this value using their own [`align`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-align) attribute.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values:\n * Do not try to set the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on a selector giving a [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element. Because [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") elements are not descendant of the [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element, they won\'t inherit it.\n * If the table doesn\'t use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, use one `td:nth-child(an+b)` CSS selector per column, where a is the total number of the columns in the table and b is the ordinal position of this column in the table. Only after this selector the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property can be used.\n * If the table does use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, the effect can be achieved by combining adequate CSS attribute selectors like `[colspan=n]`, though this is not trivial.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/colgroup"}]},{name:"col",description:{kind:"markdown",value:"If a col element has a parent and that is a colgroup element that itself has a parent that is a table element, then the col element represents one or more columns in the column group represented by that colgroup."},attributes:[{name:"span"},{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, its value is inherited from the [`align`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup#attr-align) of the [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element this `<col>` element belongs too. If there are none, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values:\n * Do not try to set the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on a selector giving a [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") element. Because [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") elements are not descendant of the [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") element, they won\'t inherit it.\n * If the table doesn\'t use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, use the `td:nth-child(an+b)` CSS selector. Set `a` to zero and `b` to the position of the column in the table, e.g. `td:nth-child(2) { text-align: right; }` to right-align the second column.\n * If the table does use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, the effect can be achieved by combining adequate CSS attribute selectors like `[colspan=n]`, though this is not trivial.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/col"}]},{name:"tbody",description:{kind:"markdown",value:"The tbody element represents a block of rows that consist of a body of data for the parent table element, if the tbody element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-charoff) attributes.\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tbody"}]},{name:"thead",description:{kind:"markdown",value:"The thead element represents the block of rows that consist of the column labels (headers) for the parent table element, if the thead element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/thead"}]},{name:"tfoot",description:{kind:"markdown",value:"The tfoot element represents the block of rows that consist of the column summaries (footers) for the parent table element, if the tfoot element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tfoot#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tfoot"}]},{name:"tr",description:{kind:"markdown",value:"The tr element represents a row of cells in a table."},attributes:[{name:"align",description:'A [`DOMString`](https://developer.mozilla.org/en-US/docs/Web/API/DOMString "DOMString is a UTF-16 String. As JavaScript already uses such strings, DOMString is mapped directly to a String.") which specifies how the cell\'s context should be aligned horizontally within the cells in the row; this is shorthand for using `align` on every cell in the row individually. Possible values are:\n\n`left`\n\nAlign the content of each cell at its left edge.\n\n`center`\n\nCenter the contents of each cell between their left and right edges.\n\n`right`\n\nAlign the content of each cell at its right edge.\n\n`justify`\n\nWiden whitespaces within the text of each cell so that the text fills the full width of each cell (full justification).\n\n`char`\n\nAlign each cell in the row on a specific character (such that each row in the column that is configured this way will horizontally align its cells on that character). This uses the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr#attr-charoff) to establish the alignment character (typically "." or "," when aligning numerical data) and the number of characters that should follow the alignment character. This alignment type was never widely supported.\n\nIf no value is expressly set for `align`, the parent node\'s value is inherited.\n\nInstead of using the obsolete `align` attribute, you should instead use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to establish `left`, `center`, `right`, or `justify` alignment for the row\'s cells. To apply character-based alignment, set the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the alignment character (such as `"."` or `","`).'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tr"}]},{name:"td",description:{kind:"markdown",value:"The td element represents a data cell in a table."},attributes:[{name:"colspan"},{name:"rowspan"},{name:"headers"},{name:"abbr",description:"This attribute contains a short abbreviated description of the cell's content. Some user-agents, such as speech readers, may present this description before the content itself.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard. Alternatively, you can put the abbreviated description inside the cell and place the long content in the **title** attribute."},{name:"align",description:'This enumerated attribute specifies how the cell content\'s horizontal alignment will be handled. Possible values are:\n\n* `left`: The content is aligned to the left of the cell.\n* `center`: The content is centered in the cell.\n* `right`: The content is aligned to the right of the cell.\n* `justify` (with text only): The content is stretched out inside the cell so that it covers its entire width.\n* `char` (with text only): The content is aligned to a character inside the `<th>` element with minimal offset. This character is defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nThe default value when this attribute is not specified is `left`.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, apply the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the element.\n* To achieve the same effect as the `char` value, give the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property the same value you would use for the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-char). Unimplemented in CSS3.'},{name:"axis",description:"This attribute contains a list of space-separated strings. Each string is the `id` of a group of cells that this header applies to.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard."},{name:"bgcolor",description:'This attribute defines the background color of each cell in a column. It consists of a 6-digit hexadecimal code as defined in [sRGB](https://www.w3.org/Graphics/Color/sRGB) and is prefixed by \'#\'. This attribute may be used with one of sixteen predefined color strings:\n\n \n\n`black` = "#000000"\n\n \n\n`green` = "#008000"\n\n \n\n`silver` = "#C0C0C0"\n\n \n\n`lime` = "#00FF00"\n\n \n\n`gray` = "#808080"\n\n \n\n`olive` = "#808000"\n\n \n\n`white` = "#FFFFFF"\n\n \n\n`yellow` = "#FFFF00"\n\n \n\n`maroon` = "#800000"\n\n \n\n`navy` = "#000080"\n\n \n\n`red` = "#FF0000"\n\n \n\n`blue` = "#0000FF"\n\n \n\n`purple` = "#800080"\n\n \n\n`teal` = "#008080"\n\n \n\n`fuchsia` = "#FF00FF"\n\n \n\n`aqua` = "#00FFFF"\n\n**Note:** Do not use this attribute, as it is non-standard and only implemented in some versions of Microsoft Internet Explorer: The [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To create a similar effect use the [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property in [CSS](https://developer.mozilla.org/en-US/docs/CSS) instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/td"}]},{name:"th",description:{kind:"markdown",value:"The th element represents a header cell in a table."},attributes:[{name:"colspan"},{name:"rowspan"},{name:"headers"},{name:"scope",valueSet:"s"},{name:"sorted"},{name:"abbr",description:{kind:"markdown",value:"This attribute contains a short abbreviated description of the cell's content. Some user-agents, such as speech readers, may present this description before the content itself."}},{name:"align",description:'This enumerated attribute specifies how the cell content\'s horizontal alignment will be handled. Possible values are:\n\n* `left`: The content is aligned to the left of the cell.\n* `center`: The content is centered in the cell.\n* `right`: The content is aligned to the right of the cell.\n* `justify` (with text only): The content is stretched out inside the cell so that it covers its entire width.\n* `char` (with text only): The content is aligned to a character inside the `<th>` element with minimal offset. This character is defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-charoff) attributes.\n\nThe default value when this attribute is not specified is `left`.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, apply the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the element.\n* To achieve the same effect as the `char` value, give the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property the same value you would use for the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-char). Unimplemented in CSS3.'},{name:"axis",description:"This attribute contains a list of space-separated strings. Each string is the `id` of a group of cells that this header applies to.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard: use the [`scope`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-scope) attribute instead."},{name:"bgcolor",description:'This attribute defines the background color of each cell in a column. It consists of a 6-digit hexadecimal code as defined in [sRGB](https://www.w3.org/Graphics/Color/sRGB) and is prefixed by \'#\'. This attribute may be used with one of sixteen predefined color strings:\n\n \n\n`black` = "#000000"\n\n \n\n`green` = "#008000"\n\n \n\n`silver` = "#C0C0C0"\n\n \n\n`lime` = "#00FF00"\n\n \n\n`gray` = "#808080"\n\n \n\n`olive` = "#808000"\n\n \n\n`white` = "#FFFFFF"\n\n \n\n`yellow` = "#FFFF00"\n\n \n\n`maroon` = "#800000"\n\n \n\n`navy` = "#000080"\n\n \n\n`red` = "#FF0000"\n\n \n\n`blue` = "#0000FF"\n\n \n\n`purple` = "#800080"\n\n \n\n`teal` = "#008080"\n\n \n\n`fuchsia` = "#FF00FF"\n\n \n\n`aqua` = "#00FFFF"\n\n**Note:** Do not use this attribute, as it is non-standard and only implemented in some versions of Microsoft Internet Explorer: The [`<th>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th "The HTML <th> element defines a cell as header of a group of table cells. The exact nature of this group is defined by the scope and headers attributes.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/Web/CSS). To create a similar effect use the [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property in [CSS](https://developer.mozilla.org/en-US/docs/Web/CSS) instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/th"}]},{name:"form",description:{kind:"markdown",value:"The form element represents a collection of form-associated elements, some of which can represent editable values that can be submitted to a server for processing."},attributes:[{name:"accept-charset",description:{kind:"markdown",value:'A space- or comma-delimited list of character encodings that the server accepts. The browser uses them in the order in which they are listed. The default value, the reserved string `"UNKNOWN"`, indicates the same encoding as that of the document containing the form element. \nIn previous versions of HTML, the different character encodings could be delimited by spaces or commas. In HTML5, only spaces are allowed as delimiters.'}},{name:"action",description:{kind:"markdown",value:'The URI of a program that processes the form information. This value can be overridden by a [`formaction`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formaction) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"autocomplete",valueSet:"o",description:{kind:"markdown",value:"Indicates whether input elements can by default have their values automatically completed by the browser. This setting can be overridden by an `autocomplete` attribute on an element belonging to the form. Possible values are:\n\n* `off`: The user must explicitly enter a value into each field for every use, or the document provides its own auto-completion method; the browser does not automatically complete entries.\n* `on`: The browser can automatically complete values based on values that the user has previously entered in the form.\n\nFor most modern browsers (including Firefox 38+, Google Chrome 34+, IE 11+) setting the autocomplete attribute will not prevent a browser's password manager from asking the user if they want to store login fields (username and password), if the user permits the storage the browser will autofill the login the next time the user visits the page. See [The autocomplete attribute and login fields](https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion#The_autocomplete_attribute_and_login_fields)."}},{name:"enctype",valueSet:"et",description:{kind:"markdown",value:'When the value of the `method` attribute is `post`, enctype is the [MIME type](https://en.wikipedia.org/wiki/Mime_type) of content that is used to submit the form to the server. Possible values are:\n\n* `application/x-www-form-urlencoded`: The default value if the attribute is not specified.\n* `multipart/form-data`: The value used for an [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element with the `type` attribute set to "file".\n* `text/plain`: (HTML5)\n\nThis value can be overridden by a [`formenctype`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formenctype) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"method",valueSet:"m",description:{kind:"markdown",value:'The [HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP) method that the browser uses to submit the form. Possible values are:\n\n* `post`: Corresponds to the HTTP [POST method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5) ; form data are included in the body of the form and sent to the server.\n* `get`: Corresponds to the HTTP [GET method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.3); form data are appended to the `action` attribute URI with a \'?\' as separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters.\n* `dialog`: Use when the form is inside a [`<dialog>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog "The HTML <dialog> element represents a dialog box or other interactive component, such as an inspector or window.") element to close the dialog when submitted.\n\nThis value can be overridden by a [`formmethod`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formmethod) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"name",description:{kind:"markdown",value:"The name of the form. In HTML 4, its use is deprecated (`id` should be used instead). It must be unique among the forms in a document and not just an empty string in HTML 5."}},{name:"novalidate",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the form is not to be validated when submitted. If this attribute is not specified (and therefore the form is validated), this default setting can be overridden by a [`formnovalidate`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formnovalidate) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element belonging to the form.'}},{name:"target",description:{kind:"markdown",value:'A name or keyword indicating where to display the response that is received after submitting the form. In HTML 4, this is the name/keyword for a frame. In HTML5, it is a name/keyword for a _browsing context_ (for example, tab, window, or inline frame). The following keywords have special meanings:\n\n* `_self`: Load the response into the same HTML 4 frame (or HTML5 browsing context) as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the response into a new unnamed HTML 4 window or HTML5 browsing context.\n* `_parent`: Load the response into the HTML 4 frameset parent of the current frame, or HTML5 parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: HTML 4: Load the response into the full original window, and cancel all other frames. HTML5: Load the response into the top-level browsing context (i.e., the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`.\n* _iframename_: The response is displayed in a named [`<iframe>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe "The HTML Inline Frame element (<iframe>) represents a nested browsing context, embedding another HTML page into the current one.").\n\nHTML5: This value can be overridden by a [`formtarget`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formtarget) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"accept",description:'A comma-separated list of content types that the server accepts.\n\n**Usage note:** This attribute has been removed in HTML5 and should no longer be used. Instead, use the [`accept`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-accept) attribute of the specific [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'},{name:"autocapitalize",description:"This is a nonstandard attribute used by iOS Safari Mobile which controls whether and how the text value for textual form control descendants should be automatically capitalized as it is entered/edited by the user. If the `autocapitalize` attribute is specified on an individual form control descendant, it trumps the form-wide `autocapitalize` setting. The non-deprecated values are available in iOS 5 and later. The default value is `sentences`. Possible values are:\n\n* `none`: Completely disables automatic capitalization\n* `sentences`: Automatically capitalize the first letter of sentences.\n* `words`: Automatically capitalize the first letter of words.\n* `characters`: Automatically capitalize all characters.\n* `on`: Deprecated since iOS 5.\n* `off`: Deprecated since iOS 5."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/form"}]},{name:"label",description:{kind:"markdown",value:"The label element represents a caption in a user interface. The caption can be associated with a specific form control, known as the label element's labeled control, either using the for attribute, or by putting the form control inside the label element itself."},attributes:[{name:"form",description:{kind:"markdown",value:'The [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element with which the label is associated (its _form owner_). If specified, the value of the attribute is the `id` of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document. This lets you place label elements anywhere within a document, not just as descendants of their form elements.'}},{name:"for",description:{kind:"markdown",value:"The [`id`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-id) of a [labelable](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Content_categories#Form_labelable) form-related element in the same document as the `<label>` element. The first element in the document with an `id` matching the value of the `for` attribute is the _labeled control_ for this label element, if it is a labelable element. If it is not labelable then the `for` attribute has no effect. If there are other elements which also match the `id` value, later in the document, they are not considered.\n\n**Note**: A `<label>` element can have both a `for` attribute and a contained control element, as long as the `for` attribute points to the contained control element."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/label"}]},{name:"input",description:{kind:"markdown",value:"The input element represents a typed data field, usually with a form control to allow the user to edit the data."},attributes:[{name:"accept"},{name:"alt"},{name:"autocomplete",valueSet:"inputautocomplete"},{name:"autofocus",valueSet:"v"},{name:"checked",valueSet:"v"},{name:"dirname"},{name:"disabled",valueSet:"v"},{name:"form"},{name:"formaction"},{name:"formenctype",valueSet:"et"},{name:"formmethod",valueSet:"fm"},{name:"formnovalidate",valueSet:"v"},{name:"formtarget"},{name:"height"},{name:"inputmode",valueSet:"im"},{name:"list"},{name:"max"},{name:"maxlength"},{name:"min"},{name:"minlength"},{name:"multiple",valueSet:"v"},{name:"name"},{name:"pattern"},{name:"placeholder"},{name:"readonly",valueSet:"v"},{name:"required",valueSet:"v"},{name:"size"},{name:"src"},{name:"step"},{name:"type",valueSet:"t"},{name:"value"},{name:"width"}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/input"}]},{name:"button",description:{kind:"markdown",value:"The button element represents a button labeled by its contents."},attributes:[{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that the button should have input focus when the page loads, unless the user overrides it, for example by typing in a different control. Only one form-associated element in a document can have this attribute specified."}},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the user cannot interact with the button. If this attribute is not specified, the button inherits its setting from the containing element, for example [`<fieldset>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset "The HTML <fieldset> element is used to group several controls as well as labels (<label>) within a web form."); if there is no containing element with the **disabled** attribute set, then the button is enabled.\n\nFirefox will, unlike other browsers, by default, [persist the dynamic disabled state](https://stackoverflow.com/questions/5985839/bug-with-firefox-disabled-attribute-of-input-not-resetting-when-refreshing) of a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") across page loads. Use the [`autocomplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-autocomplete) attribute to control this feature.'}},{name:"form",description:{kind:"markdown",value:'The form element that the button is associated with (its _form owner_). The value of the attribute must be the **id** attribute of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document. If this attribute is not specified, the `<button>` element will be associated to an ancestor [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element, if one exists. This attribute enables you to associate `<button>` elements to [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") elements anywhere within a document, not just as descendants of [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") elements.'}},{name:"formaction",description:{kind:"markdown",value:"The URI of a program that processes the information submitted by the button. If specified, it overrides the [`action`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-action) attribute of the button's form owner."}},{name:"formenctype",valueSet:"et",description:{kind:"markdown",value:'If the button is a submit button, this attribute specifies the type of content that is used to submit the form to the server. Possible values are:\n\n* `application/x-www-form-urlencoded`: The default value if the attribute is not specified.\n* `multipart/form-data`: Use this value if you are using an [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element with the [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-type) attribute set to `file`.\n* `text/plain`\n\nIf this attribute is specified, it overrides the [`enctype`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-enctype) attribute of the button\'s form owner.'}},{name:"formmethod",valueSet:"fm",description:{kind:"markdown",value:"If the button is a submit button, this attribute specifies the HTTP method that the browser uses to submit the form. Possible values are:\n\n* `post`: The data from the form are included in the body of the form and sent to the server.\n* `get`: The data from the form are appended to the **form** attribute URI, with a '?' as a separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters.\n\nIf specified, this attribute overrides the [`method`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-method) attribute of the button's form owner."}},{name:"formnovalidate",valueSet:"v",description:{kind:"markdown",value:"If the button is a submit button, this Boolean attribute specifies that the form is not to be validated when it is submitted. If this attribute is specified, it overrides the [`novalidate`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-novalidate) attribute of the button's form owner."}},{name:"formtarget",description:{kind:"markdown",value:"If the button is a submit button, this attribute is a name or keyword indicating where to display the response that is received after submitting the form. This is a name of, or keyword for, a _browsing context_ (for example, tab, window, or inline frame). If this attribute is specified, it overrides the [`target`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-target) attribute of the button's form owner. The following keywords have special meanings:\n\n* `_self`: Load the response into the same browsing context as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the response into a new unnamed browsing context.\n* `_parent`: Load the response into the parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: Load the response into the top-level browsing context (that is, the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`."}},{name:"name",description:{kind:"markdown",value:"The name of the button, which is submitted with the form data."}},{name:"type",valueSet:"bt",description:{kind:"markdown",value:"The type of the button. Possible values are:\n\n* `submit`: The button submits the form data to the server. This is the default if the attribute is not specified, or if the attribute is dynamically changed to an empty or invalid value.\n* `reset`: The button resets all the controls to their initial values.\n* `button`: The button has no default behavior. It can have client-side scripts associated with the element's events, which are triggered when the events occur."}},{name:"value",description:{kind:"markdown",value:"The initial value of the button. It defines the value associated with the button which is submitted with the form data. This value is passed to the server in params when the form is submitted."}},{name:"autocomplete",description:'The use of this attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") is nonstandard and Firefox-specific. By default, unlike other browsers, [Firefox persists the dynamic disabled state](https://stackoverflow.com/questions/5985839/bug-with-firefox-disabled-attribute-of-input-not-resetting-when-refreshing) of a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") across page loads. Setting the value of this attribute to `off` (i.e. `autocomplete="off"`) disables this feature. See [bug 654072](https://bugzilla.mozilla.org/show_bug.cgi?id=654072 "if disabled state is changed with javascript, the normal state doesn\'t return after refreshing the page").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/button"}]},{name:"select",description:{kind:"markdown",value:"The select element represents a control for selecting amongst a set of options."},attributes:[{name:"autocomplete",valueSet:"inputautocomplete",description:{kind:"markdown",value:'A [`DOMString`](https://developer.mozilla.org/en-US/docs/Web/API/DOMString "DOMString is a UTF-16 String. As JavaScript already uses such strings, DOMString is mapped directly to a String.") providing a hint for a [user agent\'s](https://developer.mozilla.org/en-US/docs/Glossary/user_agent "user agent\'s: A user agent is a computer program representing a person, for example, a browser in a Web context.") autocomplete feature. See [The HTML autocomplete attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for a complete list of values and details on how to use autocomplete.'}},{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that a form control should have input focus when the page loads. Only one form element in a document can have the `autofocus` attribute."}},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that the user cannot interact with the control. If this attribute is not specified, the control inherits its setting from the containing element, for example `fieldset`; if there is no containing element with the `disabled` attribute set, then the control is enabled."}},{name:"form",description:{kind:"markdown",value:'This attribute lets you specify the form element to which the select element is associated (that is, its "form owner"). If this attribute is specified, its value must be the same as the `id` of a form element in the same document. This enables you to place select elements anywhere within a document, not just as descendants of their form elements.'}},{name:"multiple",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that multiple options can be selected in the list. If it is not specified, then only one option can be selected at a time. When `multiple` is specified, most browsers will show a scrolling list box instead of a single line dropdown."}},{name:"name",description:{kind:"markdown",value:"This attribute is used to specify the name of the control."}},{name:"required",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute indicating that an option with a non-empty string value must be selected."}},{name:"size",description:{kind:"markdown",value:"If the control is presented as a scrolling list box (e.g. when `multiple` is specified), this attribute represents the number of rows in the list that should be visible at one time. Browsers are not required to present a select element as a scrolled list box. The default value is 0.\n\n**Note:** According to the HTML5 specification, the default value for size should be 1; however, in practice, this has been found to break some web sites, and no other browser currently does that, so Mozilla has opted to continue to return 0 for the time being with Firefox."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/select"}]},{name:"datalist",description:{kind:"markdown",value:"The datalist element represents a set of option elements that represent predefined options for other controls. In the rendering, the datalist element represents nothing and it, along with its children, should be hidden."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/datalist"}]},{name:"optgroup",description:{kind:"markdown",value:"The optgroup element represents a group of option elements with a common label."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"If this Boolean attribute is set, none of the items in this option group is selectable. Often browsers grey out such control and it won't receive any browsing events, like mouse clicks or focus-related ones."}},{name:"label",description:{kind:"markdown",value:"The name of the group of options, which the browser can use when labeling the options in the user interface. This attribute is mandatory if this element is used."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/optgroup"}]},{name:"option",description:{kind:"markdown",value:"The option element represents an option in a select element or as part of a list of suggestions in a datalist element."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'If this Boolean attribute is set, this option is not checkable. Often browsers grey out such control and it won\'t receive any browsing event, like mouse clicks or focus-related ones. If this attribute is not set, the element can still be disabled if one of its ancestors is a disabled [`<optgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/optgroup "The HTML <optgroup> element creates a grouping of options within a <select> element.") element.'}},{name:"label",description:{kind:"markdown",value:"This attribute is text for the label indicating the meaning of the option. If the `label` attribute isn't defined, its value is that of the element text content."}},{name:"selected",valueSet:"v",description:{kind:"markdown",value:'If present, this Boolean attribute indicates that the option is initially selected. If the `<option>` element is the descendant of a [`<select>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select "The HTML <select> element represents a control that provides a menu of options") element whose [`multiple`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select#attr-multiple) attribute is not set, only one single `<option>` of this [`<select>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select "The HTML <select> element represents a control that provides a menu of options") element may have the `selected` attribute.'}},{name:"value",description:{kind:"markdown",value:"The content of this attribute represents the value to be submitted with the form, should this option be selected. If this attribute is omitted, the value is taken from the text content of the option element."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/option"}]},{name:"textarea",description:{kind:"markdown",value:"The textarea element represents a multiline plain text edit control for the element's raw value. The contents of the control represent the control's default value."},attributes:[{name:"autocomplete",valueSet:"inputautocomplete",description:{kind:"markdown",value:'This attribute indicates whether the value of the control can be automatically completed by the browser. Possible values are:\n\n* `off`: The user must explicitly enter a value into this field for every use, or the document provides its own auto-completion method; the browser does not automatically complete the entry.\n* `on`: The browser can automatically complete the value based on values that the user has entered during previous uses.\n\nIf the `autocomplete` attribute is not specified on a `<textarea>` element, then the browser uses the `autocomplete` attribute value of the `<textarea>` element\'s form owner. The form owner is either the [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element that this `<textarea>` element is a descendant of or the form element whose `id` is specified by the `form` attribute of the input element. For more information, see the [`autocomplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-autocomplete) attribute in [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.").'}},{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that a form control should have input focus when the page loads. Only one form-associated element in a document can have this attribute specified."}},{name:"cols",description:{kind:"markdown",value:"The visible width of the text control, in average character widths. If it is specified, it must be a positive integer. If it is not specified, the default value is `20`."}},{name:"dirname"},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the user cannot interact with the control. If this attribute is not specified, the control inherits its setting from the containing element, for example [`<fieldset>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset "The HTML <fieldset> element is used to group several controls as well as labels (<label>) within a web form."); if there is no containing element when the `disabled` attribute is set, the control is enabled.'}},{name:"form",description:{kind:"markdown",value:'The form element that the `<textarea>` element is associated with (its "form owner"). The value of the attribute must be the `id` of a form element in the same document. If this attribute is not specified, the `<textarea>` element must be a descendant of a form element. This attribute enables you to place `<textarea>` elements anywhere within a document, not just as descendants of form elements.'}},{name:"inputmode",valueSet:"im"},{name:"maxlength",description:{kind:"markdown",value:"The maximum number of characters (unicode code points) that the user can enter. If this value isn't specified, the user can enter an unlimited number of characters."}},{name:"minlength",description:{kind:"markdown",value:"The minimum number of characters (unicode code points) required that the user should enter."}},{name:"name",description:{kind:"markdown",value:"The name of the control."}},{name:"placeholder",description:{kind:"markdown",value:'A hint to the user of what can be entered in the control. Carriage returns or line-feeds within the placeholder text must be treated as line breaks when rendering the hint.\n\n**Note:** Placeholders should only be used to show an example of the type of data that should be entered into a form; they are _not_ a substitute for a proper [`<label>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/label "The HTML <label> element represents a caption for an item in a user interface.") element tied to the input. See [Labels and placeholders](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Labels_and_placeholders "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") in [<input>: The Input (Form Input) element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") for a full explanation.'}},{name:"readonly",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that the user cannot modify the value of the control. Unlike the `disabled` attribute, the `readonly` attribute does not prevent the user from clicking or selecting in the control. The value of a read-only control is still submitted with the form."}},{name:"required",valueSet:"v",description:{kind:"markdown",value:"This attribute specifies that the user must fill in a value before submitting a form."}},{name:"rows",description:{kind:"markdown",value:"The number of visible text lines for the control."}},{name:"wrap",valueSet:"w",description:{kind:"markdown",value:"Indicates how the control wraps text. Possible values are:\n\n* `hard`: The browser automatically inserts line breaks (CR+LF) so that each line has no more than the width of the control; the `cols` attribute must also be specified for this to take effect.\n* `soft`: The browser ensures that all line breaks in the value consist of a CR+LF pair, but does not insert any additional line breaks.\n* `off` : Like `soft` but changes appearance to `white-space: pre` so line segments exceeding `cols` are not wrapped and the `<textarea>` becomes horizontally scrollable.\n\nIf this attribute is not specified, `soft` is its default value."}},{name:"autocapitalize",description:"This is a non-standard attribute supported by WebKit on iOS (therefore nearly all browsers running on iOS, including Safari, Firefox, and Chrome), which controls whether and how the text value should be automatically capitalized as it is entered/edited by the user. The non-deprecated values are available in iOS 5 and later. Possible values are:\n\n* `none`: Completely disables automatic capitalization.\n* `sentences`: Automatically capitalize the first letter of sentences.\n* `words`: Automatically capitalize the first letter of words.\n* `characters`: Automatically capitalize all characters.\n* `on`: Deprecated since iOS 5.\n* `off`: Deprecated since iOS 5."},{name:"spellcheck",description:"Specifies whether the `<textarea>` is subject to spell checking by the underlying browser/OS. the value can be:\n\n* `true`: Indicates that the element needs to have its spelling and grammar checked.\n* `default` : Indicates that the element is to act according to a default behavior, possibly based on the parent element's own `spellcheck` value.\n* `false` : Indicates that the element should not be spell checked."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/textarea"}]},{name:"output",description:{kind:"markdown",value:"The output element represents the result of a calculation performed by the application, or the result of a user action."},attributes:[{name:"for",description:{kind:"markdown",value:"A space-separated list of other elements’ [`id`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id)s, indicating that those elements contributed input values to (or otherwise affected) the calculation."}},{name:"form",description:{kind:"markdown",value:'The [form element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form) that this element is associated with (its "form owner"). The value of the attribute must be an `id` of a form element in the same document. If this attribute is not specified, the output element must be a descendant of a form element. This attribute enables you to place output elements anywhere within a document, not just as descendants of their form elements.'}},{name:"name",description:{kind:"markdown",value:'The name of the element, exposed in the [`HTMLFormElement`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement "The HTMLFormElement interface represents a <form> element in the DOM; it allows access to and in some cases modification of aspects of the form, as well as access to its component elements.") API.'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/output"}]},{name:"progress",description:{kind:"markdown",value:"The progress element represents the completion progress of a task. The progress is either indeterminate, indicating that progress is being made but that it is not clear how much more work remains to be done before the task is complete (e.g. because the task is waiting for a remote host to respond), or the progress is a number in the range zero to a maximum, giving the fraction of work that has so far been completed."},attributes:[{name:"value",description:{kind:"markdown",value:"This attribute specifies how much of the task that has been completed. It must be a valid floating point number between 0 and `max`, or between 0 and 1 if `max` is omitted. If there is no `value` attribute, the progress bar is indeterminate; this indicates that an activity is ongoing with no indication of how long it is expected to take."}},{name:"max",description:{kind:"markdown",value:"This attribute describes how much work the task indicated by the `progress` element requires. The `max` attribute, if present, must have a value greater than zero and be a valid floating point number. The default value is 1."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/progress"}]},{name:"meter",description:{kind:"markdown",value:"The meter element represents a scalar measurement within a known range, or a fractional value; for example disk usage, the relevance of a query result, or the fraction of a voting population to have selected a particular candidate."},attributes:[{name:"value",description:{kind:"markdown",value:"The current numeric value. This must be between the minimum and maximum values (`min` attribute and `max` attribute) if they are specified. If unspecified or malformed, the value is 0. If specified, but not within the range given by the `min` attribute and `max` attribute, the value is equal to the nearest end of the range.\n\n**Usage note:** Unless the `value` attribute is between `0` and `1` (inclusive), the `min` and `max` attributes should define the range so that the `value` attribute's value is within it."}},{name:"min",description:{kind:"markdown",value:"The lower numeric bound of the measured range. This must be less than the maximum value (`max` attribute), if specified. If unspecified, the minimum value is 0."}},{name:"max",description:{kind:"markdown",value:"The upper numeric bound of the measured range. This must be greater than the minimum value (`min` attribute), if specified. If unspecified, the maximum value is 1."}},{name:"low",description:{kind:"markdown",value:"The upper numeric bound of the low end of the measured range. This must be greater than the minimum value (`min` attribute), and it also must be less than the high value and maximum value (`high` attribute and `max` attribute, respectively), if any are specified. If unspecified, or if less than the minimum value, the `low` value is equal to the minimum value."}},{name:"high",description:{kind:"markdown",value:"The lower numeric bound of the high end of the measured range. This must be less than the maximum value (`max` attribute), and it also must be greater than the low value and minimum value (`low` attribute and **min** attribute, respectively), if any are specified. If unspecified, or if greater than the maximum value, the `high` value is equal to the maximum value."}},{name:"optimum",description:{kind:"markdown",value:"This attribute indicates the optimal numeric value. It must be within the range (as defined by the `min` attribute and `max` attribute). When used with the `low` attribute and `high` attribute, it gives an indication where along the range is considered preferable. For example, if it is between the `min` attribute and the `low` attribute, then the lower range is considered preferred."}},{name:"form",description:"This attribute associates the element with a `form` element that has ownership of the `meter` element. For example, a `meter` might be displaying a range corresponding to an `input` element of `type` _number_. This attribute is only used if the `meter` element is being used as a form-associated element; even then, it may be omitted if the element appears as a descendant of a `form` element."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/meter"}]},{name:"fieldset",description:{kind:"markdown",value:"The fieldset element represents a set of form controls optionally grouped under a common name."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"If this Boolean attribute is set, all form controls that are descendants of the `<fieldset>`, are disabled, meaning they are not editable and won't be submitted along with the `<form>`. They won't receive any browsing events, like mouse clicks or focus-related events. By default browsers display such controls grayed out. Note that form elements inside the [`<legend>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend \"The HTML <legend> element represents a caption for the content of its parent <fieldset>.\") element won't be disabled."}},{name:"form",description:{kind:"markdown",value:'This attribute takes the value of the `id` attribute of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element you want the `<fieldset>` to be part of, even if it is not inside the form.'}},{name:"name",description:{kind:"markdown",value:'The name associated with the group.\n\n**Note**: The caption for the fieldset is given by the first [`<legend>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend "The HTML <legend> element represents a caption for the content of its parent <fieldset>.") element nested inside it.'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/fieldset"}]},{name:"legend",description:{kind:"markdown",value:"The legend element represents a caption for the rest of the contents of the legend element's parent fieldset element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/legend"}]},{name:"details",description:{kind:"markdown",value:"The details element represents a disclosure widget from which the user can obtain additional information or controls."},attributes:[{name:"open",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates whether or not the details — that is, the contents of the `<details>` element — are currently visible. The default, `false`, means the details are not visible."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/details"}]},{name:"summary",description:{kind:"markdown",value:"The summary element represents a summary, caption, or legend for the rest of the contents of the summary element's parent details element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/summary"}]},{name:"dialog",description:{kind:"markdown",value:"The dialog element represents a part of an application that a user interacts with to perform a task, for example a dialog box, inspector, or window."},attributes:[{name:"open",description:"Indicates that the dialog is active and available for interaction. When the `open` attribute is not set, the dialog shouldn't be shown to the user."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dialog"}]},{name:"script",description:{kind:"markdown",value:"The script element allows authors to include dynamic script and data blocks in their documents. The element does not represent content for the user."},attributes:[{name:"src",description:{kind:"markdown",value:"This attribute specifies the URI of an external script; this can be used as an alternative to embedding a script directly within a document.\n\nIf a `script` element has a `src` attribute specified, it should not have a script embedded inside its tags."}},{name:"type",description:{kind:"markdown",value:'This attribute indicates the type of script represented. The value of this attribute will be in one of the following categories:\n\n* **Omitted or a JavaScript MIME type:** For HTML5-compliant browsers this indicates the script is JavaScript. HTML5 specification urges authors to omit the attribute rather than provide a redundant MIME type. In earlier browsers, this identified the scripting language of the embedded or imported (via the `src` attribute) code. JavaScript MIME types are [listed in the specification](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types#JavaScript_types).\n* **`module`:** For HTML5-compliant browsers the code is treated as a JavaScript module. The processing of the script contents is not affected by the `charset` and `defer` attributes. For information on using `module`, see [ES6 in Depth: Modules](https://hacks.mozilla.org/2015/08/es6-in-depth-modules/). Code may behave differently when the `module` keyword is used.\n* **Any other value:** The embedded content is treated as a data block which won\'t be processed by the browser. Developers must use a valid MIME type that is not a JavaScript MIME type to denote data blocks. The `src` attribute will be ignored.\n\n**Note:** in Firefox you could specify the version of JavaScript contained in a `<script>` element by including a non-standard `version` parameter inside the `type` attribute — for example `type="text/javascript;version=1.8"`. This has been removed in Firefox 59 (see [bug 1428745](https://bugzilla.mozilla.org/show_bug.cgi?id=1428745 "FIXED: Remove support for version parameter from script loader")).'}},{name:"charset"},{name:"async",valueSet:"v",description:{kind:"markdown",value:'This is a Boolean attribute indicating that the browser should, if possible, load the script asynchronously.\n\nThis attribute must not be used if the `src` attribute is absent (i.e. for inline scripts). If it is included in this case it will have no effect.\n\nBrowsers usually assume the worst case scenario and load scripts synchronously, (i.e. `async="false"`) during HTML parsing.\n\nDynamically inserted scripts (using [`document.createElement()`](https://developer.mozilla.org/en-US/docs/Web/API/Document/createElement "In an HTML document, the document.createElement() method creates the HTML element specified by tagName, or an HTMLUnknownElement if tagName isn\'t recognized.")) load asynchronously by default, so to turn on synchronous loading (i.e. scripts load in the order they were inserted) set `async="false"`.\n\nSee [Browser compatibility](#Browser_compatibility) for notes on browser support. See also [Async scripts for asm.js](https://developer.mozilla.org/en-US/docs/Games/Techniques/Async_scripts).'}},{name:"defer",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute is set to indicate to a browser that the script is meant to be executed after the document has been parsed, but before firing [`DOMContentLoaded`](https://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded "/en-US/docs/Web/Events/DOMContentLoaded").\n\nScripts with the `defer` attribute will prevent the `DOMContentLoaded` event from firing until the script has loaded and finished evaluating.\n\nThis attribute must not be used if the `src` attribute is absent (i.e. for inline scripts), in this case it would have no effect.\n\nTo achieve a similar effect for dynamically inserted scripts use `async="false"` instead. Scripts with the `defer` attribute will execute in the order in which they appear in the document.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'Normal `script` elements pass minimal information to the [`window.onerror`](https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror "The onerror property of the GlobalEventHandlers mixin is an EventHandler that processes error events.") for scripts which do not pass the standard [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") checks. To allow error logging for sites which use a separate domain for static media, use this attribute. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) for a more descriptive explanation of its valid arguments.'}},{name:"nonce",description:{kind:"markdown",value:"A cryptographic nonce (number used once) to whitelist inline scripts in a [script-src Content-Security-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/script-src). The server must generate a unique nonce value each time it transmits a policy. It is critical to provide a nonce that cannot be guessed as bypassing a resource's policy is otherwise trivial."}},{name:"integrity",description:"This attribute contains inline metadata that a user agent can use to verify that a fetched resource has been delivered free of unexpected manipulation. See [Subresource Integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity)."},{name:"nomodule",description:"This Boolean attribute is set to indicate that the script should not be executed in browsers that support [ES2015 modules](https://hacks.mozilla.org/2015/08/es6-in-depth-modules/) — in effect, this can be used to serve fallback scripts to older browsers that do not support modular JavaScript code."},{name:"referrerpolicy",description:'Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/API/Document/referrer) to send when fetching the script, or resources fetched by the script:\n\n* `no-referrer`: The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` (default): The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent to [origin](https://developer.mozilla.org/en-US/docs/Glossary/origin "origin: Web content\'s origin is defined by the scheme (protocol), host (domain), and port of the URL used to access it. Two objects have the same origin only when the scheme, host, and port all match.")s without [TLS](https://developer.mozilla.org/en-US/docs/Glossary/TLS "TLS: Transport Layer Security (TLS), previously known as Secure Sockets Layer (SSL), is a protocol used by applications to communicate securely across a network, preventing tampering with and eavesdropping on email, web browsing, messaging, and other protocols.") ([HTTPS](https://developer.mozilla.org/en-US/docs/Glossary/HTTPS "HTTPS: HTTPS (HTTP Secure) is an encrypted version of the HTTP protocol. It usually uses SSL or TLS to encrypt all communication between a client and a server. This secure connection allows clients to safely exchange sensitive data with a server, for example for banking activities or online shopping.")).\n* `origin`: The sent referrer will be limited to the origin of the referring page: its [scheme](https://developer.mozilla.org/en-US/docs/Archive/Mozilla/URIScheme), [host](https://developer.mozilla.org/en-US/docs/Glossary/host "host: A host is a device connected to the Internet (or a local network). Some hosts called servers offer additional services like serving webpages or storing files and emails."), and [port](https://developer.mozilla.org/en-US/docs/Glossary/port "port: For a computer connected to a network with an IP address, a port is a communication endpoint. Ports are designated by numbers, and below 1024 each port is associated by default with a specific protocol.").\n* `origin-when-cross-origin`: The referrer sent to other origins will be limited to the scheme, the host, and the port. Navigations on the same origin will still include the path.\n* `same-origin`: A referrer will be sent for [same origin](https://developer.mozilla.org/en-US/docs/Glossary/Same-origin_policy "same origin: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin."), but cross-origin requests will contain no referrer information.\n* `strict-origin`: Only send the origin of the document as the referrer when the protocol security level stays the same (e.g. HTTPS→HTTPS), but don\'t send it to a less secure destination (e.g. HTTPS→HTTP).\n* `strict-origin-when-cross-origin`: Send a full URL when performing a same-origin request, but only send the origin when the protocol security level stays the same (e.g.HTTPS→HTTPS), and send no header to a less secure destination (e.g. HTTPS→HTTP).\n* `unsafe-url`: The referrer will include the origin _and_ the path (but not the [fragment](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/hash), [password](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/password), or [username](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/username)). **This value is unsafe**, because it leaks origins and paths from TLS-protected resources to insecure origins.\n\n**Note**: An empty string value (`""`) is both the default value, and a fallback value if `referrerpolicy` is not supported. If `referrerpolicy` is not explicitly specified on the `<script>` element, it will adopt a higher-level referrer policy, i.e. one set on the whole document or domain. If a higher-level policy is not available, the empty string is treated as being equivalent to `no-referrer-when-downgrade`.'},{name:"text",description:"Like the `textContent` attribute, this attribute sets the text content of the element. Unlike the `textContent` attribute, however, this attribute is evaluated as executable code after the node is inserted into the DOM."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/script"}]},{name:"noscript",description:{kind:"markdown",value:"The noscript element represents nothing if scripting is enabled, and represents its children if scripting is disabled. It is used to present different markup to user agents that support scripting and those that don't support scripting, by affecting how the document is parsed."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/noscript"}]},{name:"template",description:{kind:"markdown",value:"The template element is used to declare fragments of HTML that can be cloned and inserted in the document by script."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/template"}]},{name:"canvas",description:{kind:"markdown",value:"The canvas element provides scripts with a resolution-dependent bitmap canvas, which can be used for rendering graphs, game graphics, art, or other visual images on the fly."},attributes:[{name:"width",description:{kind:"markdown",value:"The width of the coordinate space in CSS pixels. Defaults to 300."}},{name:"height",description:{kind:"markdown",value:"The height of the coordinate space in CSS pixels. Defaults to 150."}},{name:"moz-opaque",description:"Lets the canvas know whether or not translucency will be a factor. If the canvas knows there's no translucency, painting performance can be optimized. This is only supported by Mozilla-based browsers; use the standardized [`canvas.getContext('2d', { alpha: false })`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/getContext \"The HTMLCanvasElement.getContext() method returns a drawing context on the canvas, or null if the context identifier is not supported.\") instead."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/canvas"}]}],globalAttributes:[{name:"accesskey",description:{kind:"markdown",value:"Provides a hint for generating a keyboard shortcut for the current element. This attribute consists of a space-separated list of characters. The browser should use the first one that exists on the computer keyboard layout."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/accesskey"}]},{name:"autocapitalize",description:{kind:"markdown",value:"Controls whether and how text input is automatically capitalized as it is entered/edited by the user. It can have the following values:\n\n* `off` or `none`, no autocapitalization is applied (all letters default to lowercase)\n* `on` or `sentences`, the first letter of each sentence defaults to a capital letter; all other letters default to lowercase\n* `words`, the first letter of each word defaults to a capital letter; all other letters default to lowercase\n* `characters`, all letters should default to uppercase"},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/autocapitalize"}]},{name:"class",description:{kind:"markdown",value:'A space-separated list of the classes of the element. Classes allows CSS and JavaScript to select and access specific elements via the [class selectors](/en-US/docs/Web/CSS/Class_selectors) or functions like the method [`Document.getElementsByClassName()`](/en-US/docs/Web/API/Document/getElementsByClassName "returns an array-like object of all child elements which have all of the given class names.").'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/class"}]},{name:"contenteditable",description:{kind:"markdown",value:"An enumerated attribute indicating if the element should be editable by the user. If so, the browser modifies its widget to allow editing. The attribute must take one of the following values:\n\n* `true` or the _empty string_, which indicates that the element must be editable;\n* `false`, which indicates that the element must not be editable."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/contenteditable"}]},{name:"contextmenu",description:{kind:"markdown",value:'The `[**id**](#attr-id)` of a [`<menu>`](/en-US/docs/Web/HTML/Element/menu "The HTML <menu> element represents a group of commands that a user can perform or activate. This includes both list menus, which might appear across the top of a screen, as well as context menus, such as those that might appear underneath a button after it has been clicked.") to use as the contextual menu for this element.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/contextmenu"}]},{name:"dir",description:{kind:"markdown",value:"An enumerated attribute indicating the directionality of the element's text. It can have the following values:\n\n* `ltr`, which means _left to right_ and is to be used for languages that are written from the left to the right (like English);\n* `rtl`, which means _right to left_ and is to be used for languages that are written from the right to the left (like Arabic);\n* `auto`, which lets the user agent decide. It uses a basic algorithm as it parses the characters inside the element until it finds a character with a strong directionality, then it applies that directionality to the whole element."},valueSet:"d",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/dir"}]},{name:"draggable",description:{kind:"markdown",value:"An enumerated attribute indicating whether the element can be dragged, using the [Drag and Drop API](/en-us/docs/DragDrop/Drag_and_Drop). It can have the following values:\n\n* `true`, which indicates that the element may be dragged\n* `false`, which indicates that the element may not be dragged."},valueSet:"b",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/draggable"}]},{name:"dropzone",description:{kind:"markdown",value:"An enumerated attribute indicating what types of content can be dropped on an element, using the [Drag and Drop API](/en-US/docs/DragDrop/Drag_and_Drop). It can have the following values:\n\n* `copy`, which indicates that dropping will create a copy of the element that was dragged\n* `move`, which indicates that the element that was dragged will be moved to this new location.\n* `link`, will create a link to the dragged data."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/dropzone"}]},{name:"exportparts",description:{kind:"markdown",value:"Used to transitively export shadow parts from a nested shadow tree into a containing light tree."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/exportparts"}]},{name:"hidden",description:{kind:"markdown",value:"A Boolean attribute indicates that the element is not yet, or is no longer, _relevant_. For example, it can be used to hide elements of the page that can't be used until the login process has been completed. The browser won't render such elements. This attribute must not be used to hide content that could legitimately be shown."},valueSet:"v",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/hidden"}]},{name:"id",description:{kind:"markdown",value:"Defines a unique identifier (ID) which must be unique in the whole document. Its purpose is to identify the element when linking (using a fragment identifier), scripting, or styling (with CSS)."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/id"}]},{name:"inputmode",description:{kind:"markdown",value:'Provides a hint to browsers as to the type of virtual keyboard configuration to use when editing this element or its contents. Used primarily on [`<input>`](/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") elements, but is usable on any element while in `[contenteditable](/en-US/docs/Web/HTML/Global_attributes#attr-contenteditable)` mode.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/inputmode"}]},{name:"is",description:{kind:"markdown",value:"Allows you to specify that a standard HTML element should behave like a registered custom built-in element (see [Using custom elements](/en-US/docs/Web/Web_Components/Using_custom_elements) for more details)."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/is"}]},{name:"itemid",description:{kind:"markdown",value:"The unique, global identifier of an item."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemid"}]},{name:"itemprop",description:{kind:"markdown",value:"Used to add properties to an item. Every HTML element may have an `itemprop` attribute specified, where an `itemprop` consists of a name and value pair."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemprop"}]},{name:"itemref",description:{kind:"markdown",value:"Properties that are not descendants of an element with the `itemscope` attribute can be associated with the item using an `itemref`. It provides a list of element ids (not `itemid`s) with additional properties elsewhere in the document."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemref"}]},{name:"itemscope",description:{kind:"markdown",value:"`itemscope` (usually) works along with `[itemtype](/en-US/docs/Web/HTML/Global_attributes#attr-itemtype)` to specify that the HTML contained in a block is about a particular item. `itemscope` creates the Item and defines the scope of the `itemtype` associated with it. `itemtype` is a valid URL of a vocabulary (such as [schema.org](https://schema.org/)) that describes the item and its properties context."},valueSet:"v",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemscope"}]},{name:"itemtype",description:{kind:"markdown",value:"Specifies the URL of the vocabulary that will be used to define `itemprop`s (item properties) in the data structure. `[itemscope](/en-US/docs/Web/HTML/Global_attributes#attr-itemscope)` is used to set the scope of where in the data structure the vocabulary set by `itemtype` will be active."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemtype"}]},{name:"lang",description:{kind:"markdown",value:"Helps define the language of an element: the language that non-editable elements are in, or the language that editable elements should be written in by the user. The attribute contains one “language tag” (made of hyphen-separated “language subtags”) in the format defined in [_Tags for Identifying Languages (BCP47)_](https://www.ietf.org/rfc/bcp/bcp47.txt). [**xml:lang**](#attr-xml:lang) has priority over it."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/lang"}]},{name:"part",description:{kind:"markdown",value:'A space-separated list of the part names of the element. Part names allows CSS to select and style specific elements in a shadow tree via the [`::part`](/en-US/docs/Web/CSS/::part "The ::part CSS pseudo-element represents any element within a shadow tree that has a matching part attribute.") pseudo-element.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/part"}]},{name:"role",valueSet:"roles"},{name:"slot",description:{kind:"markdown",value:"Assigns a slot in a [shadow DOM](/en-US/docs/Web/Web_Components/Shadow_DOM) shadow tree to an element: An element with a `slot` attribute is assigned to the slot created by the [`<slot>`](/en-US/docs/Web/HTML/Element/slot \"The HTML <slot> element—part of the Web Components technology suite—is a placeholder inside a web component that you can fill with your own markup, which lets you create separate DOM trees and present them together.\") element whose `[name](/en-US/docs/Web/HTML/Element/slot#attr-name)` attribute's value matches that `slot` attribute's value."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/slot"}]},{name:"spellcheck",description:{kind:"markdown",value:"An enumerated attribute defines whether the element may be checked for spelling errors. It may have the following values:\n\n* `true`, which indicates that the element should be, if possible, checked for spelling errors;\n* `false`, which indicates that the element should not be checked for spelling errors."},valueSet:"b",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/spellcheck"}]},{name:"style",description:{kind:"markdown",value:'Contains [CSS](/en-US/docs/Web/CSS) styling declarations to be applied to the element. Note that it is recommended for styles to be defined in a separate file or files. This attribute and the [`<style>`](/en-US/docs/Web/HTML/Element/style "The HTML <style> element contains style information for a document, or part of a document.") element have mainly the purpose of allowing for quick styling, for example for testing purposes.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/style"}]},{name:"tabindex",description:{kind:"markdown",value:"An integer attribute indicating if the element can take input focus (is _focusable_), if it should participate to sequential keyboard navigation, and if so, at what position. It can take several values:\n\n* a _negative value_ means that the element should be focusable, but should not be reachable via sequential keyboard navigation;\n* `0` means that the element should be focusable and reachable via sequential keyboard navigation, but its relative order is defined by the platform convention;\n* a _positive value_ means that the element should be focusable and reachable via sequential keyboard navigation; the order in which the elements are focused is the increasing value of the [**tabindex**](#attr-tabindex). If several elements share the same tabindex, their relative order follows their relative positions in the document."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/tabindex"}]},{name:"title",description:{kind:"markdown",value:"Contains a text representing advisory information related to the element it belongs to. Such information can typically, but not necessarily, be presented to the user as a tooltip."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/title"}]},{name:"translate",description:{kind:"markdown",value:"An enumerated attribute that is used to specify whether an element's attribute values and the values of its [`Text`](/en-US/docs/Web/API/Text \"The Text interface represents the textual content of Element or Attr. If an element has no markup within its content, it has a single child implementing Text that contains the element's text. However, if the element contains markup, it is parsed into information items and Text nodes that form its children.\") node children are to be translated when the page is localized, or whether to leave them unchanged. It can have the following values:\n\n* empty string and `yes`, which indicates that the element will be translated.\n* `no`, which indicates that the element will not be translated."},valueSet:"y",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/translate"}]},{name:"onabort",description:{kind:"markdown",value:"The loading of a resource has been aborted."}},{name:"onblur",description:{kind:"markdown",value:"An element has lost focus (does not bubble)."}},{name:"oncanplay",description:{kind:"markdown",value:"The user agent can play the media, but estimates that not enough data has been loaded to play the media up to its end without having to stop for further buffering of content."}},{name:"oncanplaythrough",description:{kind:"markdown",value:"The user agent can play the media up to its end without having to stop for further buffering of content."}},{name:"onchange",description:{kind:"markdown",value:"The change event is fired for <input>, <select>, and <textarea> elements when a change to the element's value is committed by the user."}},{name:"onclick",description:{kind:"markdown",value:"A pointing device button has been pressed and released on an element."}},{name:"oncontextmenu",description:{kind:"markdown",value:"The right button of the mouse is clicked (before the context menu is displayed)."}},{name:"ondblclick",description:{kind:"markdown",value:"A pointing device button is clicked twice on an element."}},{name:"ondrag",description:{kind:"markdown",value:"An element or text selection is being dragged (every 350ms)."}},{name:"ondragend",description:{kind:"markdown",value:"A drag operation is being ended (by releasing a mouse button or hitting the escape key)."}},{name:"ondragenter",description:{kind:"markdown",value:"A dragged element or text selection enters a valid drop target."}},{name:"ondragleave",description:{kind:"markdown",value:"A dragged element or text selection leaves a valid drop target."}},{name:"ondragover",description:{kind:"markdown",value:"An element or text selection is being dragged over a valid drop target (every 350ms)."}},{name:"ondragstart",description:{kind:"markdown",value:"The user starts dragging an element or text selection."}},{name:"ondrop",description:{kind:"markdown",value:"An element is dropped on a valid drop target."}},{name:"ondurationchange",description:{kind:"markdown",value:"The duration attribute has been updated."}},{name:"onemptied",description:{kind:"markdown",value:"The media has become empty; for example, this event is sent if the media has already been loaded (or partially loaded), and the load() method is called to reload it."}},{name:"onended",description:{kind:"markdown",value:"Playback has stopped because the end of the media was reached."}},{name:"onerror",description:{kind:"markdown",value:"A resource failed to load."}},{name:"onfocus",description:{kind:"markdown",value:"An element has received focus (does not bubble)."}},{name:"onformchange"},{name:"onforminput"},{name:"oninput",description:{kind:"markdown",value:"The value of an element changes or the content of an element with the attribute contenteditable is modified."}},{name:"oninvalid",description:{kind:"markdown",value:"A submittable element has been checked and doesn't satisfy its constraints."}},{name:"onkeydown",description:{kind:"markdown",value:"A key is pressed down."}},{name:"onkeypress",description:{kind:"markdown",value:"A key is pressed down and that key normally produces a character value (use input instead)."}},{name:"onkeyup",description:{kind:"markdown",value:"A key is released."}},{name:"onload",description:{kind:"markdown",value:"A resource and its dependent resources have finished loading."}},{name:"onloadeddata",description:{kind:"markdown",value:"The first frame of the media has finished loading."}},{name:"onloadedmetadata",description:{kind:"markdown",value:"The metadata has been loaded."}},{name:"onloadstart",description:{kind:"markdown",value:"Progress has begun."}},{name:"onmousedown",description:{kind:"markdown",value:"A pointing device button (usually a mouse) is pressed on an element."}},{name:"onmousemove",description:{kind:"markdown",value:"A pointing device is moved over an element."}},{name:"onmouseout",description:{kind:"markdown",value:"A pointing device is moved off the element that has the listener attached or off one of its children."}},{name:"onmouseover",description:{kind:"markdown",value:"A pointing device is moved onto the element that has the listener attached or onto one of its children."}},{name:"onmouseup",description:{kind:"markdown",value:"A pointing device button is released over an element."}},{name:"onmousewheel"},{name:"onpause",description:{kind:"markdown",value:"Playback has been paused."}},{name:"onplay",description:{kind:"markdown",value:"Playback has begun."}},{name:"onplaying",description:{kind:"markdown",value:"Playback is ready to start after having been paused or delayed due to lack of data."}},{name:"onprogress",description:{kind:"markdown",value:"In progress."}},{name:"onratechange",description:{kind:"markdown",value:"The playback rate has changed."}},{name:"onreset",description:{kind:"markdown",value:"A form is reset."}},{name:"onresize",description:{kind:"markdown",value:"The document view has been resized."}},{name:"onreadystatechange",description:{kind:"markdown",value:"The readyState attribute of a document has changed."}},{name:"onscroll",description:{kind:"markdown",value:"The document view or an element has been scrolled."}},{name:"onseeked",description:{kind:"markdown",value:"A seek operation completed."}},{name:"onseeking",description:{kind:"markdown",value:"A seek operation began."}},{name:"onselect",description:{kind:"markdown",value:"Some text is being selected."}},{name:"onshow",description:{kind:"markdown",value:"A contextmenu event was fired on/bubbled to an element that has a contextmenu attribute"}},{name:"onstalled",description:{kind:"markdown",value:"The user agent is trying to fetch media data, but data is unexpectedly not forthcoming."}},{name:"onsubmit",description:{kind:"markdown",value:"A form is submitted."}},{name:"onsuspend",description:{kind:"markdown",value:"Media data loading has been suspended."}},{name:"ontimeupdate",description:{kind:"markdown",value:"The time indicated by the currentTime attribute has been updated."}},{name:"onvolumechange",description:{kind:"markdown",value:"The volume has changed."}},{name:"onwaiting",description:{kind:"markdown",value:"Playback has stopped because of a temporary lack of data."}},{name:"aria-activedescendant",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-activedescendant"}],description:{kind:"markdown",value:"Identifies the currently active element when DOM focus is on a [`composite`](https://www.w3.org/TR/wai-aria-1.1/#composite) widget, [`textbox`](https://www.w3.org/TR/wai-aria-1.1/#textbox), [`group`](https://www.w3.org/TR/wai-aria-1.1/#group), or [`application`](https://www.w3.org/TR/wai-aria-1.1/#application)."}},{name:"aria-atomic",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-atomic"}],description:{kind:"markdown",value:"Indicates whether [assistive technologies](https://www.w3.org/TR/wai-aria-1.1/#dfn-assistive-technology) will present all, or only parts of, the changed region based on the change notifications defined by the [`aria-relevant`](https://www.w3.org/TR/wai-aria-1.1/#aria-relevant) attribute."}},{name:"aria-autocomplete",valueSet:"autocomplete",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-autocomplete"}],description:{kind:"markdown",value:"Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for an input and specifies how predictions would be presented if they are made."}},{name:"aria-busy",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-busy"}],description:{kind:"markdown",value:"Indicates an element is being modified and that assistive technologies _MAY_ want to wait until the modifications are complete before exposing them to the user."}},{name:"aria-checked",valueSet:"tristate",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-checked"}],description:{kind:"markdown",value:'Indicates the current "checked" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of checkboxes, radio buttons, and other [widgets](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-pressed`](https://www.w3.org/TR/wai-aria-1.1/#aria-pressed) and [`aria-selected`](https://www.w3.org/TR/wai-aria-1.1/#aria-selected).'}},{name:"aria-colcount",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colcount"}],description:{kind:"markdown",value:"Defines the total number of columns in a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-colindex)."}},{name:"aria-colindex",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colindex"}],description:{kind:"markdown",value:"Defines an [element's](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) column index or position with respect to the total number of columns within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colcount`](https://www.w3.org/TR/wai-aria-1.1/#aria-colcount) and [`aria-colspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-colspan)."}},{name:"aria-colspan",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colspan"}],description:{kind:"markdown",value:"Defines the number of columns spanned by a cell or gridcell within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-colindex) and [`aria-rowspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan)."}},{name:"aria-controls",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-controls"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) whose contents or presence are controlled by the current element. See related [`aria-owns`](https://www.w3.org/TR/wai-aria-1.1/#aria-owns)."}},{name:"aria-current",valueSet:"current",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-current"}],description:{kind:"markdown",value:"Indicates the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that represents the current item within a container or set of related elements."}},{name:"aria-describedat",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-describedat"}]},{name:"aria-describedby",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-describedby"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) that describes the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-labelledby`](https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby)."}},{name:"aria-disabled",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-disabled"}],description:{kind:"markdown",value:"Indicates that the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is [perceivable](https://www.w3.org/TR/wai-aria-1.1/#dfn-perceivable) but disabled, so it is not editable or otherwise [operable](https://www.w3.org/TR/wai-aria-1.1/#dfn-operable). See related [`aria-hidden`](https://www.w3.org/TR/wai-aria-1.1/#aria-hidden) and [`aria-readonly`](https://www.w3.org/TR/wai-aria-1.1/#aria-readonly)."}},{name:"aria-dropeffect",valueSet:"dropeffect",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-dropeffect"}],description:{kind:"markdown",value:"\\[Deprecated in ARIA 1.1\\] Indicates what functions can be performed when a dragged object is released on the drop target."}},{name:"aria-errormessage",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-errormessage"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that provides an error message for the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-invalid`](https://www.w3.org/TR/wai-aria-1.1/#aria-invalid) and [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-expanded",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-expanded"}],description:{kind:"markdown",value:"Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed."}},{name:"aria-flowto",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-flowto"}],description:{kind:"markdown",value:"Identifies the next [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) in an alternate reading order of content which, at the user's discretion, allows assistive technology to override the general default of reading in document source order."}},{name:"aria-grabbed",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-grabbed"}],description:{kind:"markdown",value:'\\[Deprecated in ARIA 1.1\\] Indicates an element\'s "grabbed" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) in a drag-and-drop operation.'}},{name:"aria-haspopup",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-haspopup"}],description:{kind:"markdown",value:"Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)."}},{name:"aria-hidden",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-hidden"}],description:{kind:"markdown",value:"Indicates whether the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is exposed to an accessibility API. See related [`aria-disabled`](https://www.w3.org/TR/wai-aria-1.1/#aria-disabled)."}},{name:"aria-invalid",valueSet:"invalid",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-invalid"}],description:{kind:"markdown",value:"Indicates the entered value does not conform to the format expected by the application. See related [`aria-errormessage`](https://www.w3.org/TR/wai-aria-1.1/#aria-errormessage)."}},{name:"aria-kbdshortcuts",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-kbdshortcuts"}]},{name:"aria-label",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-label"}],description:{kind:"markdown",value:"Defines a string value that labels the current element. See related [`aria-labelledby`](https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby)."}},{name:"aria-labelledby",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) that labels the current element. See related [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-level",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-level"}],description:{kind:"markdown",value:"Defines the hierarchical level of an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) within a structure."}},{name:"aria-live",valueSet:"live",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-live"}],description:{kind:"markdown",value:"Indicates that an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) will be updated, and describes the types of updates the [user agents](https://www.w3.org/TR/wai-aria-1.1/#dfn-user-agent), [assistive technologies](https://www.w3.org/TR/wai-aria-1.1/#dfn-assistive-technology), and user can expect from the [live region](https://www.w3.org/TR/wai-aria-1.1/#dfn-live-region)."}},{name:"aria-modal",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-modal"}],description:{kind:"markdown",value:"Indicates whether an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is modal when displayed."}},{name:"aria-multiline",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-multiline"}],description:{kind:"markdown",value:"Indicates whether a text box accepts multiple lines of input or only a single line."}},{name:"aria-multiselectable",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-multiselectable"}],description:{kind:"markdown",value:"Indicates that the user may select more than one item from the current selectable descendants."}},{name:"aria-orientation",valueSet:"orientation",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-orientation"}],description:{kind:"markdown",value:"Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous."}},{name:"aria-owns",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-owns"}],description:{kind:"markdown",value:"Identifies an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) in order to define a visual, functional, or contextual parent/child [relationship](https://www.w3.org/TR/wai-aria-1.1/#dfn-relationship) between DOM elements where the DOM hierarchy cannot be used to represent the relationship. See related [`aria-controls`](https://www.w3.org/TR/wai-aria-1.1/#aria-controls)."}},{name:"aria-placeholder",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-placeholder"}],description:{kind:"markdown",value:"Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value. A hint could be a sample value or a brief description of the expected format."}},{name:"aria-posinset",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-posinset"}],description:{kind:"markdown",value:"Defines an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM. See related [`aria-setsize`](https://www.w3.org/TR/wai-aria-1.1/#aria-setsize)."}},{name:"aria-pressed",valueSet:"tristate",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-pressed"}],description:{kind:"markdown",value:'Indicates the current "pressed" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of toggle buttons. See related [`aria-checked`](https://www.w3.org/TR/wai-aria-1.1/#aria-checked) and [`aria-selected`](https://www.w3.org/TR/wai-aria-1.1/#aria-selected).'}},{name:"aria-readonly",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-readonly"}],description:{kind:"markdown",value:"Indicates that the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is not editable, but is otherwise [operable](https://www.w3.org/TR/wai-aria-1.1/#dfn-operable). See related [`aria-disabled`](https://www.w3.org/TR/wai-aria-1.1/#aria-disabled)."}},{name:"aria-relevant",valueSet:"relevant",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-relevant"}],description:{kind:"markdown",value:"Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified. See related [`aria-atomic`](https://www.w3.org/TR/wai-aria-1.1/#aria-atomic)."}},{name:"aria-required",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-required"}],description:{kind:"markdown",value:"Indicates that user input is required on the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) before a form may be submitted."}},{name:"aria-roledescription",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-roledescription"}],description:{kind:"markdown",value:"Defines a human-readable, author-localized description for the [role](https://www.w3.org/TR/wai-aria-1.1/#dfn-role) of an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)."}},{name:"aria-rowcount",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowcount"}],description:{kind:"markdown",value:"Defines the total number of rows in a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex)."}},{name:"aria-rowindex",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex"}],description:{kind:"markdown",value:"Defines an [element's](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) row index or position with respect to the total number of rows within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowcount`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowcount) and [`aria-rowspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan)."}},{name:"aria-rowspan",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan"}],description:{kind:"markdown",value:"Defines the number of rows spanned by a cell or gridcell within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex) and [`aria-colspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-colspan)."}},{name:"aria-selected",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-selected"}],description:{kind:"markdown",value:'Indicates the current "selected" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of various [widgets](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-checked`](https://www.w3.org/TR/wai-aria-1.1/#aria-checked) and [`aria-pressed`](https://www.w3.org/TR/wai-aria-1.1/#aria-pressed).'}},{name:"aria-setsize",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-setsize"}],description:{kind:"markdown",value:"Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM. See related [`aria-posinset`](https://www.w3.org/TR/wai-aria-1.1/#aria-posinset)."}},{name:"aria-sort",valueSet:"sort",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-sort"}],description:{kind:"markdown",value:"Indicates if items in a table or grid are sorted in ascending or descending order."}},{name:"aria-valuemax",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuemax"}],description:{kind:"markdown",value:"Defines the maximum allowed value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-valuemin",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuemin"}],description:{kind:"markdown",value:"Defines the minimum allowed value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-valuenow",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuenow"}],description:{kind:"markdown",value:"Defines the current value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-valuetext`](https://www.w3.org/TR/wai-aria-1.1/#aria-valuetext)."}},{name:"aria-valuetext",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuetext"}],description:{kind:"markdown",value:"Defines the human readable text alternative of [`aria-valuenow`](https://www.w3.org/TR/wai-aria-1.1/#aria-valuenow) for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-details",description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that provides a detailed, extended description for the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-keyshortcuts",description:{kind:"markdown",value:"Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element."}}],valueSets:[{name:"b",values:[{name:"true"},{name:"false"}]},{name:"u",values:[{name:"true"},{name:"false"},{name:"undefined"}]},{name:"o",values:[{name:"on"},{name:"off"}]},{name:"y",values:[{name:"yes"},{name:"no"}]},{name:"w",values:[{name:"soft"},{name:"hard"}]},{name:"d",values:[{name:"ltr"},{name:"rtl"},{name:"auto"}]},{name:"m",values:[{name:"GET",description:{kind:"markdown",value:"Corresponds to the HTTP [GET method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.3); form data are appended to the `action` attribute URI with a '?' as separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters."}},{name:"POST",description:{kind:"markdown",value:"Corresponds to the HTTP [POST method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5); form data are included in the body of the form and sent to the server."}},{name:"dialog",description:{kind:"markdown",value:"Use when the form is inside a [`<dialog>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog) element to close the dialog when submitted."}}]},{name:"fm",values:[{name:"GET"},{name:"POST"}]},{name:"s",values:[{name:"row"},{name:"col"},{name:"rowgroup"},{name:"colgroup"}]},{name:"t",values:[{name:"hidden"},{name:"text"},{name:"search"},{name:"tel"},{name:"url"},{name:"email"},{name:"password"},{name:"datetime"},{name:"date"},{name:"month"},{name:"week"},{name:"time"},{name:"datetime-local"},{name:"number"},{name:"range"},{name:"color"},{name:"checkbox"},{name:"radio"},{name:"file"},{name:"submit"},{name:"image"},{name:"reset"},{name:"button"}]},{name:"im",values:[{name:"verbatim"},{name:"latin"},{name:"latin-name"},{name:"latin-prose"},{name:"full-width-latin"},{name:"kana"},{name:"kana-name"},{name:"katakana"},{name:"numeric"},{name:"tel"},{name:"email"},{name:"url"}]},{name:"bt",values:[{name:"button"},{name:"submit"},{name:"reset"},{name:"menu"}]},{name:"lt",values:[{name:"1"},{name:"a"},{name:"A"},{name:"i"},{name:"I"}]},{name:"mt",values:[{name:"context"},{name:"toolbar"}]},{name:"mit",values:[{name:"command"},{name:"checkbox"},{name:"radio"}]},{name:"et",values:[{name:"application/x-www-form-urlencoded"},{name:"multipart/form-data"},{name:"text/plain"}]},{name:"tk",values:[{name:"subtitles"},{name:"captions"},{name:"descriptions"},{name:"chapters"},{name:"metadata"}]},{name:"pl",values:[{name:"none"},{name:"metadata"},{name:"auto"}]},{name:"sh",values:[{name:"circle"},{name:"default"},{name:"poly"},{name:"rect"}]},{name:"xo",values:[{name:"anonymous"},{name:"use-credentials"}]},{name:"sb",values:[{name:"allow-forms"},{name:"allow-modals"},{name:"allow-pointer-lock"},{name:"allow-popups"},{name:"allow-popups-to-escape-sandbox"},{name:"allow-same-origin"},{name:"allow-scripts"},{name:"allow-top-navigation"}]},{name:"tristate",values:[{name:"true"},{name:"false"},{name:"mixed"},{name:"undefined"}]},{name:"inputautocomplete",values:[{name:"additional-name"},{name:"address-level1"},{name:"address-level2"},{name:"address-level3"},{name:"address-level4"},{name:"address-line1"},{name:"address-line2"},{name:"address-line3"},{name:"bday"},{name:"bday-year"},{name:"bday-day"},{name:"bday-month"},{name:"billing"},{name:"cc-additional-name"},{name:"cc-csc"},{name:"cc-exp"},{name:"cc-exp-month"},{name:"cc-exp-year"},{name:"cc-family-name"},{name:"cc-given-name"},{name:"cc-name"},{name:"cc-number"},{name:"cc-type"},{name:"country"},{name:"country-name"},{name:"current-password"},{name:"email"},{name:"family-name"},{name:"fax"},{name:"given-name"},{name:"home"},{name:"honorific-prefix"},{name:"honorific-suffix"},{name:"impp"},{name:"language"},{name:"mobile"},{name:"name"},{name:"new-password"},{name:"nickname"},{name:"organization"},{name:"organization-title"},{name:"pager"},{name:"photo"},{name:"postal-code"},{name:"sex"},{name:"shipping"},{name:"street-address"},{name:"tel-area-code"},{name:"tel"},{name:"tel-country-code"},{name:"tel-extension"},{name:"tel-local"},{name:"tel-local-prefix"},{name:"tel-local-suffix"},{name:"tel-national"},{name:"transaction-amount"},{name:"transaction-currency"},{name:"url"},{name:"username"},{name:"work"}]},{name:"autocomplete",values:[{name:"inline"},{name:"list"},{name:"both"},{name:"none"}]},{name:"current",values:[{name:"page"},{name:"step"},{name:"location"},{name:"date"},{name:"time"},{name:"true"},{name:"false"}]},{name:"dropeffect",values:[{name:"copy"},{name:"move"},{name:"link"},{name:"execute"},{name:"popup"},{name:"none"}]},{name:"invalid",values:[{name:"grammar"},{name:"false"},{name:"spelling"},{name:"true"}]},{name:"live",values:[{name:"off"},{name:"polite"},{name:"assertive"}]},{name:"orientation",values:[{name:"vertical"},{name:"horizontal"},{name:"undefined"}]},{name:"relevant",values:[{name:"additions"},{name:"removals"},{name:"text"},{name:"all"},{name:"additions text"}]},{name:"sort",values:[{name:"ascending"},{name:"descending"},{name:"none"},{name:"other"}]},{name:"roles",values:[{name:"alert"},{name:"alertdialog"},{name:"button"},{name:"checkbox"},{name:"dialog"},{name:"gridcell"},{name:"link"},{name:"log"},{name:"marquee"},{name:"menuitem"},{name:"menuitemcheckbox"},{name:"menuitemradio"},{name:"option"},{name:"progressbar"},{name:"radio"},{name:"scrollbar"},{name:"searchbox"},{name:"slider"},{name:"spinbutton"},{name:"status"},{name:"switch"},{name:"tab"},{name:"tabpanel"},{name:"textbox"},{name:"timer"},{name:"tooltip"},{name:"treeitem"},{name:"combobox"},{name:"grid"},{name:"listbox"},{name:"menu"},{name:"menubar"},{name:"radiogroup"},{name:"tablist"},{name:"tree"},{name:"treegrid"},{name:"application"},{name:"article"},{name:"cell"},{name:"columnheader"},{name:"definition"},{name:"directory"},{name:"document"},{name:"feed"},{name:"figure"},{name:"group"},{name:"heading"},{name:"img"},{name:"list"},{name:"listitem"},{name:"math"},{name:"none"},{name:"note"},{name:"presentation"},{name:"region"},{name:"row"},{name:"rowgroup"},{name:"rowheader"},{name:"separator"},{name:"table"},{name:"term"},{name:"text"},{name:"toolbar"},{name:"banner"},{name:"complementary"},{name:"contentinfo"},{name:"form"},{name:"main"},{name:"navigation"},{name:"region"},{name:"search"},{name:"doc-abstract"},{name:"doc-acknowledgments"},{name:"doc-afterword"},{name:"doc-appendix"},{name:"doc-backlink"},{name:"doc-biblioentry"},{name:"doc-bibliography"},{name:"doc-biblioref"},{name:"doc-chapter"},{name:"doc-colophon"},{name:"doc-conclusion"},{name:"doc-cover"},{name:"doc-credit"},{name:"doc-credits"},{name:"doc-dedication"},{name:"doc-endnote"},{name:"doc-endnotes"},{name:"doc-epigraph"},{name:"doc-epilogue"},{name:"doc-errata"},{name:"doc-example"},{name:"doc-footnote"},{name:"doc-foreword"},{name:"doc-glossary"},{name:"doc-glossref"},{name:"doc-index"},{name:"doc-introduction"},{name:"doc-noteref"},{name:"doc-notice"},{name:"doc-pagebreak"},{name:"doc-pagelist"},{name:"doc-part"},{name:"doc-preface"},{name:"doc-prologue"},{name:"doc-pullquote"},{name:"doc-qna"},{name:"doc-subtitle"},{name:"doc-tip"},{name:"doc-toc"}]},{name:"metanames",values:[{name:"application-name"},{name:"author"},{name:"description"},{name:"format-detection"},{name:"generator"},{name:"keywords"},{name:"publisher"},{name:"referrer"},{name:"robots"},{name:"theme-color"},{name:"viewport"}]}]})],Ne=[];function Pe(){return qe.concat(Ne)}function Oe(e){return void 0!==e}var Fe=x();!function(){function e(e){this.clientCapabilities=e,this.completionParticipants=[]}e.prototype.setCompletionParticipants=function(e){this.completionParticipants=e||[]},e.prototype.doComplete=function(e,t,n,i){var r=this._doComplete(e,t,n,i);return this.convertCompletionList(r)},e.prototype._doComplete=function(e,t,n,a){var o={isIncomplete:!1,items:[]},s=this.completionParticipants,l=Pe().filter(function(t){return t.isApplicable(e.languageId)&&(!a||!1!==a[t.getId()])}),c=this.doesSupportMarkdown(),h=e.getText(),d=e.offsetAt(t),u=n.findNodeBefore(d);if(!u)return o;var p,m=Te(h,u.start),f="";function g(t,n){return void 0===n&&(n=d),t>d&&(t=d),{start:e.positionAt(t),end:e.positionAt(n)}}function _(e,t){var n=g(e,t);return l.forEach(function(e){e.provideTags().forEach(function(e){o.items.push({label:e.name,kind:z.Property,documentation:De(e,c),textEdit:b.replace(n,e.name),insertTextFormat:I.PlainText})})}),o}function w(e){for(var t=e;t>0;){var n=h.charAt(t-1);if("\n\r".indexOf(n)>=0)return h.substring(t,e);if(!je(n))return null;t--}return h.substring(0,e)}function v(e,t,n){void 0===n&&(n=d);var i=g(e,n),r=Be(h,n,ie.WithinEndTag,ne.EndTagClose)?"":">",a=u;for(t&&(a=a.parent);a;){var s=a.tag;if(s&&(!a.closed||a.endTagStart&&a.endTagStart>d)){var p={label:"/"+s,kind:z.Property,filterText:"/"+s,textEdit:b.replace(i,"/"+s+r),insertTextFormat:I.PlainText},m=w(a.start),f=w(e-1);if(null!==m&&null!==f&&m!==f){var _=m+"</"+s+r;p.textEdit=b.replace(g(e-1-f.length),_),p.filterText=f+"</"+s}return o.items.push(p),o}a=a.parent}return t?o:(l.forEach(function(e){e.provideTags().forEach(function(e){o.items.push({label:"/"+e.name,kind:z.Property,documentation:De(e,c),filterText:"/"+e+r,textEdit:b.replace(i,"/"+e+r),insertTextFormat:I.PlainText})})}),o)}function y(t,n){if(a&&a.hideAutoCompleteProposals)return o;if(!xe(n)){var i=e.positionAt(t);o.items.push({label:"</"+n+">",kind:z.Property,filterText:"</"+n+">",textEdit:b.insert(i,"$0</"+n+">"),insertTextFormat:I.Snippet})}return o}function T(e,t){return _(e,t),v(e,!0,t),o}function k(e,t){void 0===t&&(t=d);for(var i=d;i<t&&"<"!==h[i];)i++;var r=g(e,i),a=Be(h,t,ie.AfterAttributeName,ne.DelimiterAssign)?"":'="$1"',s=f.toLowerCase(),u=Object.create(null);return l.forEach(function(e){e.provideAttributes(s).forEach(function(e){if(!u[e.name]){u[e.name]=!0;var t,n=e.name;"v"!==e.valueSet&&a.length&&(n+=a,(e.valueSet||"style"===e.name)&&(t={title:"Suggest",command:"editor.action.triggerSuggest"})),o.items.push({label:e.name,kind:"handler"===e.valueSet?z.Function:z.Value,documentation:De(e,c),textEdit:b.replace(r,n),insertTextFormat:I.Snippet,command:t})}})}),function(e,t){var i="data-",r={};r[i]=i+'$1="$2"',n&&n.roots.forEach(function(e){return function e(n){n.attributeNames.forEach(function(e){!Le(e,i)||r[e]||t[e]||(r[e]=e+'="$1"')});n.children.forEach(function(t){return e(t)})}(e)});Object.keys(r).forEach(function(t){return o.items.push({label:t,kind:z.Value,textEdit:b.replace(e,r[t]),insertTextFormat:I.Snippet})})}(r,u),o}function S(n,i){var r,a,u;if(void 0===i&&(i=d),d>n&&d<=i&&function(e){return/^["']*$/.test(e)}(h[n])){var m=n+1,_=i;i>n&&h[i-1]===h[n]&&_--;var w=function(e,t,n){for(;t>n&&!je(e[t-1]);)t--;return t}(h,d,m),v=function(e,t,n){for(;t<n&&!je(e[t]);)t++;return t}(h,d,_);r=g(w,v),u=d>=m&&d<=_?h.substring(m,d):"",a=!1}else r=g(n,i),u=h.substring(n,d),a=!0;var y=f.toLowerCase(),T=p.toLowerCase();if(s.length>0)for(var k=g(n,i),S=0,x=s;S<x.length;S++){var M=x[S];M.onHtmlAttributeValue&&M.onHtmlAttributeValue({document:e,position:t,tag:y,attribute:T,value:u,range:k})}return l.forEach(function(e){e.provideValues(y,T).forEach(function(e){var t=a?'"'+e.name+'"':e.name;o.items.push({label:e.name,filterText:t,kind:z.Unit,documentation:De(e,c),textEdit:b.replace(r,t),insertTextFormat:I.PlainText})})}),L(),o}function x(e){return d===m.getTokenEnd()&&(A=m.scan())===e&&m.getTokenOffset()===d?m.getTokenEnd():d}function M(){for(var n=0,i=s;n<i.length;n++){var r=i[n];r.onHtmlContent&&r.onHtmlContent({document:e,position:t})}return L()}function L(){for(var e=d-1,n=t.character;e>=0&&Ce(h,e);)e--,n--;if(e>=0&&"&"===h[e]){var a=r.create(i.create(t.line,n-1),t);for(var s in Me)if(Ee(s,";")){var l="&"+s;o.items.push({label:l,kind:z.Keyword,documentation:Fe("entity.propose","Character entity representing '"+Me[s]+"'"),textEdit:b.replace(a,l),insertTextFormat:I.PlainText})}}return o}function E(e,t){var n=g(e,t);o.items.push({label:"!DOCTYPE",kind:z.Property,documentation:"A preamble for an HTML document.",textEdit:b.replace(n,"!DOCTYPE html>"),insertTextFormat:I.PlainText})}for(var A=m.scan();A!==ne.EOS&&m.getTokenOffset()<=d;){switch(A){case ne.StartTagOpen:if(m.getTokenEnd()===d){var R=x(ne.StartTag);return 0===t.line&&E(d,R),T(d,R)}break;case ne.StartTag:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return _(m.getTokenOffset(),m.getTokenEnd());f=m.getTokenText();break;case ne.AttributeName:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return k(m.getTokenOffset(),m.getTokenEnd());p=m.getTokenText();break;case ne.DelimiterAssign:if(m.getTokenEnd()===d){R=x(ne.AttributeValue);return S(d,R)}break;case ne.AttributeValue:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return S(m.getTokenOffset(),m.getTokenEnd());break;case ne.Whitespace:if(d<=m.getTokenEnd())switch(m.getScannerState()){case ie.AfterOpeningStartTag:return T(m.getTokenOffset(),x(ne.StartTag));case ie.WithinTag:case ie.AfterAttributeName:return k(m.getTokenEnd());case ie.BeforeAttributeValue:return S(m.getTokenEnd());case ie.AfterOpeningEndTag:return v(m.getTokenOffset()-1,!1);case ie.WithinContent:return M()}break;case ne.EndTagOpen:if(d<=m.getTokenEnd())return v(m.getTokenOffset()+1,!1,x(ne.EndTag));break;case ne.EndTag:if(d<=m.getTokenEnd())for(var H=m.getTokenOffset()-1;H>=0;){var U=h.charAt(H);if("/"===U)return v(H,!1,m.getTokenEnd());if(!je(U))break;H--}break;case ne.StartTagClose:if(d<=m.getTokenEnd()&&f)return y(m.getTokenEnd(),f);break;case ne.Content:if(d<=m.getTokenEnd())return M();break;default:if(d<=m.getTokenEnd())return o}A=m.scan()}return o},e.prototype.doTagComplete=function(e,t,n){var i=e.offsetAt(t);if(i<=0)return null;var r=e.getText().charAt(i-1);if(">"===r){if((o=n.findNodeBefore(i))&&o.tag&&!xe(o.tag)&&o.start<i&&(!o.endTagStart||o.endTagStart>i))for(var a=(s=Te(e.getText(),o.start)).scan();a!==ne.EOS&&s.getTokenEnd()<=i;){if(a===ne.StartTagClose&&s.getTokenEnd()===i)return"$0</"+o.tag+">";a=s.scan()}}else if("/"===r){for(var o=n.findNodeBefore(i);o&&o.closed;)o=o.parent;if(o&&o.tag){var s;for(a=(s=Te(e.getText(),o.start)).scan();a!==ne.EOS&&s.getTokenEnd()<=i;){if(a===ne.EndTagOpen&&s.getTokenEnd()===i)return o.tag+">";a=s.scan()}}}return null},e.prototype.convertCompletionList=function(e){return this.doesSupportMarkdown()||e.items.forEach(function(e){e.documentation&&"string"!=typeof e.documentation&&(e.documentation={kind:"plaintext",value:e.documentation.value})}),e},e.prototype.doesSupportMarkdown=function(){if(!Oe(this.supportsMarkdown)){if(!Oe(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities&&this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.hover;this.supportsMarkdown=e&&e.contentFormat&&Array.isArray(e.contentFormat)&&-1!==e.contentFormat.indexOf(A.Markdown)}return this.supportsMarkdown}}();function je(e){return/^\s*$/.test(e)}function Be(e,t,n,i){for(var r=Te(e,t,n),a=r.scan();a===ne.Whitespace;)a=r.scan();return a===i}!function(){function e(e){this.clientCapabilities=e}e.prototype.doHover=function(e,t,n){var i=this.convertContents.bind(this),r=this.doesSupportMarkdown(),a=e.offsetAt(t),o=n.findNodeAt(a);if(!o||!o.tag)return null;var s=Pe().filter(function(t){return t.isApplicable(e.languageId)});function l(e,t,n){e=e.toLowerCase();for(var a=function(a){var o=null;if(a.provideTags().forEach(function(i){if(i.name.toLowerCase()===e.toLowerCase()){var a=n?"<"+e+">":"</"+e+">",s=De(i,r);s.value="```html\n"+a+"\n```\n"+s.value,o={contents:s,range:t}}}),o)return o.contents=i(o.contents),{value:o}},o=0,l=s;o<l.length;o++){var c=a(l[o]);if("object"==typeof c)return c.value}return null}function c(t,n){for(var i=Te(e.getText(),n),r=i.scan();r!==ne.EOS&&(i.getTokenEnd()<a||i.getTokenEnd()===a&&r!==t);)r=i.scan();return r===t&&a<=i.getTokenEnd()?{start:e.positionAt(i.getTokenOffset()),end:e.positionAt(i.getTokenEnd())}:null}if(o.endTagStart&&a>=o.endTagStart){var h=c(ne.EndTag,o.endTagStart);return h?l(o.tag,h,!1):null}var d=c(ne.StartTag,o.start);if(d)return l(o.tag,d,!0);var u=c(ne.AttributeName,o.start);if(u)return function(e,t,n){e=e.toLowerCase();for(var a=function(a){var o=null;if(a.provideAttributes(e).forEach(function(e){t===e.name&&e.description&&(o={contents:De(e,r),range:n})}),o)return o.contents=i(o.contents),{value:o}},o=0,l=s;o<l.length;o++){var c=a(l[o]);if("object"==typeof c)return c.value}return null}(m=o.tag,e.getText(u),u);var p=c(ne.AttributeValue,o.start);if(p){var m=o.tag,f=function(e){if(e.length<=1)return e.replace(/['"]/,"");"'"!==e[0]&&'"'!==e[0]||(e=e.slice(1));"'"!==e[e.length-1]&&'"'!==e[e.length-1]||(e=e.slice(0,-1));return e}(e.getText(p)),g=function(t,n){for(var i=Te(e.getText(),t),r=i.scan(),a=void 0;r!==ne.EOS&&i.getTokenEnd()<=n;)(r=i.scan())===ne.AttributeName&&(a=i.getTokenText());return a}(o.start,e.offsetAt(p.start));if(g)return function(e,t,n,a){e=e.toLowerCase();for(var o=function(o){var s=null;if(o.provideValues(e,t).forEach(function(e){n===e.name&&e.description&&(s={contents:De(e,r),range:a})}),s)return s.contents=i(s.contents),{value:s}},l=0,c=s;l<c.length;l++){var h=o(c[l]);if("object"==typeof h)return h.value}return null}(m,g,f,p)}return null},e.prototype.convertContents=function(e){if(!this.doesSupportMarkdown()){if("string"==typeof e)return e;if("kind"in e)return{kind:"plaintext",value:e.value};if(!Array.isArray(e))return e.value;e.map(function(e){return"string"==typeof e?e:e.value})}return e},e.prototype.doesSupportMarkdown=function(){if(!Oe(this.supportsMarkdown)){if(!Oe(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities&&this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.hover;this.supportsMarkdown=e&&e.contentFormat&&Array.isArray(e.contentFormat)&&-1!==e.contentFormat.indexOf(A.Markdown)}return this.supportsMarkdown}}();(function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=15)})([,,function(e,t,n){function i(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function r(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function a(e,t){this.__indent_cache=new r(e,t),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new i(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}i.prototype.clone_empty=function(){var e=new i(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},i.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},i.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},i.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},i.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},i.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},i.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},i.prototype.is_empty=function(){return 0===this.__items.length},i.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},i.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},i.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},i.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},i.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},i.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},i.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},r.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},r.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},r.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},r.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},a.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},a.prototype.get_line_number=function(){return this.__lines.length},a.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},a.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},a.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},a.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},a.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},a.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},a.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},a.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},a.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},a.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},a.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},a.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},a.prototype.just_added_newline=function(){return this.current_line.is_empty()},a.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},a.prototype.ensure_empty_line_above=function(e,t){for(var n=this.__lines.length-2;n>=0;){var r=this.__lines[n];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==t){this.__lines.splice(n+1,0,new i(this)),this.previous_line=this.__lines[this.__lines.length-2];break}n--}},e.exports.Output=a},,,,function(e,t,n){function i(e,t){this.raw_options=r(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php"],["auto"])}function r(e,t){var n,i={};for(n in e=a(e))n!==t&&(i[n]=e[n]);if(t&&e[t])for(n in e[t])i[n]=e[t][n];return i}function a(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}i.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"==typeof n?null!==n&&"function"==typeof n.concat&&(i=n.concat()):"string"==typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},i.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},i.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"==typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},i.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},i.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},i.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},i.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some(function(e){return-1===t.indexOf(e)})},e.exports.Options=i,e.exports.normalizeOpts=a,e.exports.mergeOpts=r},,function(e,t,n){var i=RegExp.prototype.hasOwnProperty("sticky");function r(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}r.prototype.restart=function(){this.__position=0},r.prototype.back=function(){this.__position>0&&(this.__position-=1)},r.prototype.hasNext=function(){return this.__position<this.__input_length},r.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},r.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},r.prototype.__match=function(e,t){e.lastIndex=t;var n=e.exec(this.__input);return!n||i&&e.sticky||n.index!==t&&(n=null),n},r.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},r.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},r.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},r.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},r.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},r.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},r.prototype.get_regexp=function(e,t){var n=null,r="g";return t&&i&&(r="y"),"string"==typeof e&&""!==e?n=new RegExp(e,r):e&&(n=new RegExp(e.source,r)),n},r.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},r.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},r.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=r},,,,,function(e,t,n){function i(e,t){e="string"==typeof e?e:e.source,t="string"==typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}i.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},i.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=i},,function(e,t,n){var i=n(16).Beautifier,r=n(17).Options;e.exports=function(e,t){return new i(e,t).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(17).Options,r=n(2).Output,a=n(8).InputScanner,o=new(0,n(13).Directives)(/\/\*/,/\*\//),s=/\r\n|[\r\n]/,l=/\r\n|[\r\n]/g,c=/\s/,h=/(?:\s|\n)+/g,d=/\/\*(?:[\s\S]*?)((?:\*\/)|$)/g,u=/\/\/(?:[^\n\r\u2028\u2029]*)/g;function p(e,t){this._source_text=e||"",this._options=new i(t),this._ch=null,this._input=null,this.NESTED_AT_RULE={"@page":!0,"@font-face":!0,"@keyframes":!0,"@media":!0,"@supports":!0,"@document":!0},this.CONDITIONAL_GROUP_RULE={"@media":!0,"@supports":!0,"@document":!0}}p.prototype.eatString=function(e){var t="";for(this._ch=this._input.next();this._ch;){if(t+=this._ch,"\\"===this._ch)t+=this._input.next();else if(-1!==e.indexOf(this._ch)||"\n"===this._ch)break;this._ch=this._input.next()}return t},p.prototype.eatWhitespace=function(e){for(var t=c.test(this._input.peek()),n=!0;c.test(this._input.peek());)this._ch=this._input.next(),e&&"\n"===this._ch&&(this._options.preserve_newlines||n)&&(n=!1,this._output.add_new_line(!0));return t},p.prototype.foundNestedPseudoClass=function(){for(var e=0,t=1,n=this._input.peek(t);n;){if("{"===n)return!0;if("("===n)e+=1;else if(")"===n){if(0===e)return!1;e-=1}else if(";"===n||"}"===n)return!1;t++,n=this._input.peek(t)}return!1},p.prototype.print_string=function(e){this._output.set_indent(this._indentLevel),this._output.non_breaking_space=!0,this._output.add_token(e)},p.prototype.preserveSingleSpace=function(e){e&&(this._output.space_before_token=!0)},p.prototype.indent=function(){this._indentLevel++},p.prototype.outdent=function(){this._indentLevel>0&&this._indentLevel--},p.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===t&&(t="\n",e&&s.test(e||"")&&(t=e.match(s)[0]));var n=(e=e.replace(l,"\n")).match(/^[\t ]*/)[0];this._output=new r(this._options,n),this._input=new a(e),this._indentLevel=0,this._nestedLevel=0,this._ch=null;for(var i,p,m=0,f=!1,g=!1,b=!1,_=!1,w=!1,v=this._ch;i=""!==this._input.read(h),p=v,this._ch=this._input.next(),"\\"===this._ch&&this._input.hasNext()&&(this._ch+=this._input.next()),v=this._ch,this._ch;)if("/"===this._ch&&"*"===this._input.peek()){this._output.add_new_line(),this._input.back();var y=this._input.read(d),T=o.get_directives(y);T&&"start"===T.ignore&&(y+=o.readIgnored(this._input)),this.print_string(y),this.eatWhitespace(!0),this._output.add_new_line()}else if("/"===this._ch&&"/"===this._input.peek())this._output.space_before_token=!0,this._input.back(),this.print_string(this._input.read(u)),this.eatWhitespace(!0);else if("@"===this._ch)if(this.preserveSingleSpace(i),"{"===this._input.peek())this.print_string(this._ch+this.eatString("}"));else{this.print_string(this._ch);var k=this._input.peekUntilAfter(/[: ,;{}()[\]\/='"]/g);k.match(/[ :]$/)&&(k=this.eatString(": ").replace(/\s$/,""),this.print_string(k),this._output.space_before_token=!0),"extend"===(k=k.replace(/\s$/,""))?_=!0:"import"===k&&(w=!0),k in this.NESTED_AT_RULE?(this._nestedLevel+=1,k in this.CONDITIONAL_GROUP_RULE&&(b=!0)):f||0!==m||-1===k.indexOf(":")||(g=!0,this.indent())}else"#"===this._ch&&"{"===this._input.peek()?(this.preserveSingleSpace(i),this.print_string(this._ch+this.eatString("}"))):"{"===this._ch?(g&&(g=!1,this.outdent()),this.indent(),this._output.space_before_token=!0,this.print_string(this._ch),b?(b=!1,f=this._indentLevel>this._nestedLevel):f=this._indentLevel>=this._nestedLevel,this._options.newline_between_rules&&f&&this._output.previous_line&&"{"!==this._output.previous_line.item(-1)&&this._output.ensure_empty_line_above("/",","),this.eatWhitespace(!0),this._output.add_new_line()):"}"===this._ch?(this.outdent(),this._output.add_new_line(),"{"===p&&this._output.trim(!0),w=!1,_=!1,g&&(this.outdent(),g=!1),this.print_string(this._ch),f=!1,this._nestedLevel&&this._nestedLevel--,this.eatWhitespace(!0),this._output.add_new_line(),this._options.newline_between_rules&&!this._output.just_added_blankline()&&"}"!==this._input.peek()&&this._output.add_new_line(!0)):":"===this._ch?!f&&!b||this._input.lookBack("&")||this.foundNestedPseudoClass()||this._input.lookBack("(")||_||0!==m?(this._input.lookBack(" ")&&(this._output.space_before_token=!0),":"===this._input.peek()?(this._ch=this._input.next(),this.print_string("::")):this.print_string(":")):(this.print_string(":"),g||(g=!0,this._output.space_before_token=!0,this.eatWhitespace(!0),this.indent())):'"'===this._ch||"'"===this._ch?(this.preserveSingleSpace(i),this.print_string(this._ch+this.eatString(this._ch)),this.eatWhitespace(!0)):";"===this._ch?0===m?(g&&(this.outdent(),g=!1),_=!1,w=!1,this.print_string(this._ch),this.eatWhitespace(!0),"/"!==this._input.peek()&&this._output.add_new_line()):(this.print_string(this._ch),this.eatWhitespace(!0),this._output.space_before_token=!0):"("===this._ch?this._input.lookBack("url")?(this.print_string(this._ch),this.eatWhitespace(),m++,this.indent(),this._ch=this._input.next(),")"===this._ch||'"'===this._ch||"'"===this._ch?this._input.back():this._ch&&(this.print_string(this._ch+this.eatString(")")),m&&(m--,this.outdent()))):(this.preserveSingleSpace(i),this.print_string(this._ch),this.eatWhitespace(),m++,this.indent()):")"===this._ch?(m&&(m--,this.outdent()),this.print_string(this._ch)):","===this._ch?(this.print_string(this._ch),this.eatWhitespace(!0),!this._options.selector_separator_newline||g||0!==m||w?this._output.space_before_token=!0:this._output.add_new_line()):">"!==this._ch&&"+"!==this._ch&&"~"!==this._ch||g||0!==m?"]"===this._ch?this.print_string(this._ch):"["===this._ch?(this.preserveSingleSpace(i),this.print_string(this._ch)):"="===this._ch?(this.eatWhitespace(),this.print_string("="),c.test(this._ch)&&(this._ch="")):"!"!==this._ch||this._input.lookBack("\\")?(this.preserveSingleSpace(i),this.print_string(this._ch)):(this.print_string(" "),this.print_string(this._ch)):this._options.space_around_combinator?(this._output.space_before_token=!0,this.print_string(this._ch),this._output.space_before_token=!0):(this.print_string(this._ch),this.eatWhitespace(),this._ch&&c.test(this._ch)&&(this._ch=""));return this._output.get_code(t)},e.exports.Beautifier=p},function(e,t,n){var i=n(6).Options;function r(e){i.call(this,e,"css"),this.selector_separator_newline=this._get_boolean("selector_separator_newline",!0),this.newline_between_rules=this._get_boolean("newline_between_rules",!0);var t=this._get_boolean("space_around_selector_separator");this.space_around_combinator=this._get_boolean("space_around_combinator")||t}r.prototype=new i,e.exports.Options=r}]),function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=18)}([,,function(e,t,n){function i(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function r(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function a(e,t){this.__indent_cache=new r(e,t),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new i(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}i.prototype.clone_empty=function(){var e=new i(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},i.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},i.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},i.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},i.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},i.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},i.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},i.prototype.is_empty=function(){return 0===this.__items.length},i.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},i.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},i.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},i.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},i.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},i.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},i.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},r.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},r.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},r.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},r.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},a.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},a.prototype.get_line_number=function(){return this.__lines.length},a.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},a.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},a.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},a.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},a.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},a.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},a.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},a.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},a.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},a.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},a.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},a.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},a.prototype.just_added_newline=function(){return this.current_line.is_empty()},a.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},a.prototype.ensure_empty_line_above=function(e,t){for(var n=this.__lines.length-2;n>=0;){var r=this.__lines[n];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==t){this.__lines.splice(n+1,0,new i(this)),this.previous_line=this.__lines[this.__lines.length-2];break}n--}},e.exports.Output=a},function(e,t,n){e.exports.Token=function(e,t,n,i){this.type=e,this.text=t,this.comments_before=null,this.newlines=n||0,this.whitespace_before=i||"",this.parent=null,this.next=null,this.previous=null,this.opened=null,this.closed=null,this.directives=null}},,,function(e,t,n){function i(e,t){this.raw_options=r(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php"],["auto"])}function r(e,t){var n,i={};for(n in e=a(e))n!==t&&(i[n]=e[n]);if(t&&e[t])for(n in e[t])i[n]=e[t][n];return i}function a(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}i.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"==typeof n?null!==n&&"function"==typeof n.concat&&(i=n.concat()):"string"==typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},i.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},i.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"==typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},i.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},i.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},i.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},i.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some(function(e){return-1===t.indexOf(e)})},e.exports.Options=i,e.exports.normalizeOpts=a,e.exports.mergeOpts=r},,function(e,t,n){var i=RegExp.prototype.hasOwnProperty("sticky");function r(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}r.prototype.restart=function(){this.__position=0},r.prototype.back=function(){this.__position>0&&(this.__position-=1)},r.prototype.hasNext=function(){return this.__position<this.__input_length},r.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},r.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},r.prototype.__match=function(e,t){e.lastIndex=t;var n=e.exec(this.__input);return!n||i&&e.sticky||n.index!==t&&(n=null),n},r.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},r.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},r.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},r.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},r.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},r.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},r.prototype.get_regexp=function(e,t){var n=null,r="g";return t&&i&&(r="y"),"string"==typeof e&&""!==e?n=new RegExp(e,r):e&&(n=new RegExp(e.source,r)),n},r.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},r.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},r.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=r},function(e,t,n){var i=n(8).InputScanner,r=n(3).Token,a=n(10).TokenStream,o=n(11).WhitespacePattern,s={START:"TK_START",RAW:"TK_RAW",EOF:"TK_EOF"},l=function(e,t){this._input=new i(e),this._options=t||{},this.__tokens=null,this._patterns={},this._patterns.whitespace=new o(this._input)};l.prototype.tokenize=function(){var e;this._input.restart(),this.__tokens=new a,this._reset();for(var t=new r(s.START,""),n=null,i=[],o=new a;t.type!==s.EOF;){for(e=this._get_next_token(t,n);this._is_comment(e);)o.add(e),e=this._get_next_token(t,n);o.isEmpty()||(e.comments_before=o,o=new a),e.parent=n,this._is_opening(e)?(i.push(n),n=e):n&&this._is_closing(e,n)&&(e.opened=n,n.closed=e,n=i.pop(),e.parent=n),e.previous=t,t.next=e,this.__tokens.add(e),t=e}return this.__tokens},l.prototype._is_first_token=function(){return this.__tokens.isEmpty()},l.prototype._reset=function(){},l.prototype._get_next_token=function(e,t){this._readWhitespace();var n=this._input.read(/.+/g);return n?this._create_token(s.RAW,n):this._create_token(s.EOF,"")},l.prototype._is_comment=function(e){return!1},l.prototype._is_opening=function(e){return!1},l.prototype._is_closing=function(e,t){return!1},l.prototype._create_token=function(e,t){return new r(e,t,this._patterns.whitespace.newline_count,this._patterns.whitespace.whitespace_before_token)},l.prototype._readWhitespace=function(){return this._patterns.whitespace.read()},e.exports.Tokenizer=l,e.exports.TOKEN=s},function(e,t,n){function i(e){this.__tokens=[],this.__tokens_length=this.__tokens.length,this.__position=0,this.__parent_token=e}i.prototype.restart=function(){this.__position=0},i.prototype.isEmpty=function(){return 0===this.__tokens_length},i.prototype.hasNext=function(){return this.__position<this.__tokens_length},i.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__tokens[this.__position],this.__position+=1),e},i.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__tokens_length&&(t=this.__tokens[e]),t},i.prototype.add=function(e){this.__parent_token&&(e.parent=this.__parent_token),this.__tokens.push(e),this.__tokens_length+=1},e.exports.TokenStream=i},function(e,t,n){var i=n(12).Pattern;function r(e,t){i.call(this,e,t),t?this._line_regexp=this._input.get_regexp(t._line_regexp):this.__set_whitespace_patterns("",""),this.newline_count=0,this.whitespace_before_token=""}r.prototype=new i,r.prototype.__set_whitespace_patterns=function(e,t){e+="\\t ",t+="\\n\\r",this._match_pattern=this._input.get_regexp("["+e+t+"]+",!0),this._newline_regexp=this._input.get_regexp("\\r\\n|["+t+"]")},r.prototype.read=function(){this.newline_count=0,this.whitespace_before_token="";var e=this._input.read(this._match_pattern);if(" "===e)this.whitespace_before_token=" ";else if(e){var t=this.__split(this._newline_regexp,e);this.newline_count=t.length-1,this.whitespace_before_token=t[this.newline_count]}return e},r.prototype.matching=function(e,t){var n=this._create();return n.__set_whitespace_patterns(e,t),n._update(),n},r.prototype._create=function(){return new r(this._input,this)},r.prototype.__split=function(e,t){e.lastIndex=0;for(var n=0,i=[],r=e.exec(t);r;)i.push(t.substring(n,r.index)),n=r.index+r[0].length,r=e.exec(t);return n<t.length?i.push(t.substring(n,t.length)):i.push(""),i},e.exports.WhitespacePattern=r},function(e,t,n){function i(e,t){this._input=e,this._starting_pattern=null,this._match_pattern=null,this._until_pattern=null,this._until_after=!1,t&&(this._starting_pattern=this._input.get_regexp(t._starting_pattern,!0),this._match_pattern=this._input.get_regexp(t._match_pattern,!0),this._until_pattern=this._input.get_regexp(t._until_pattern),this._until_after=t._until_after)}i.prototype.read=function(){var e=this._input.read(this._starting_pattern);return this._starting_pattern&&!e||(e+=this._input.read(this._match_pattern,this._until_pattern,this._until_after)),e},i.prototype.read_match=function(){return this._input.match(this._match_pattern)},i.prototype.until_after=function(e){var t=this._create();return t._until_after=!0,t._until_pattern=this._input.get_regexp(e),t._update(),t},i.prototype.until=function(e){var t=this._create();return t._until_after=!1,t._until_pattern=this._input.get_regexp(e),t._update(),t},i.prototype.starting_with=function(e){var t=this._create();return t._starting_pattern=this._input.get_regexp(e,!0),t._update(),t},i.prototype.matching=function(e){var t=this._create();return t._match_pattern=this._input.get_regexp(e,!0),t._update(),t},i.prototype._create=function(){return new i(this._input,this)},i.prototype._update=function(){},e.exports.Pattern=i},function(e,t,n){function i(e,t){e="string"==typeof e?e:e.source,t="string"==typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}i.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},i.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=i},function(e,t,n){var i=n(12).Pattern,r={django:!1,erb:!1,handlebars:!1,php:!1};function a(e,t){i.call(this,e,t),this.__template_pattern=null,this._disabled=Object.assign({},r),this._excluded=Object.assign({},r),t&&(this.__template_pattern=this._input.get_regexp(t.__template_pattern),this._excluded=Object.assign(this._excluded,t._excluded),this._disabled=Object.assign(this._disabled,t._disabled));var n=new i(e);this.__patterns={handlebars_comment:n.starting_with(/{{!--/).until_after(/--}}/),handlebars_unescaped:n.starting_with(/{{{/).until_after(/}}}/),handlebars:n.starting_with(/{{/).until_after(/}}/),php:n.starting_with(/<\?(?:[=]|php)/).until_after(/\?>/),erb:n.starting_with(/<%[^%]/).until_after(/[^%]%>/),django:n.starting_with(/{%/).until_after(/%}/),django_value:n.starting_with(/{{/).until_after(/}}/),django_comment:n.starting_with(/{#/).until_after(/#}/)}}a.prototype=new i,a.prototype._create=function(){return new a(this._input,this)},a.prototype._update=function(){this.__set_templated_pattern()},a.prototype.disable=function(e){var t=this._create();return t._disabled[e]=!0,t._update(),t},a.prototype.read_options=function(e){var t=this._create();for(var n in r)t._disabled[n]=-1===e.templating.indexOf(n);return t._update(),t},a.prototype.exclude=function(e){var t=this._create();return t._excluded[e]=!0,t._update(),t},a.prototype.read=function(){var e="";e=this._match_pattern?this._input.read(this._starting_pattern):this._input.read(this._starting_pattern,this.__template_pattern);for(var t=this._read_template();t;)this._match_pattern?t+=this._input.read(this._match_pattern):t+=this._input.readUntil(this.__template_pattern),e+=t,t=this._read_template();return this._until_after&&(e+=this._input.readUntilAfter(this._until_pattern)),e},a.prototype.__set_templated_pattern=function(){var e=[];this._disabled.php||e.push(this.__patterns.php._starting_pattern.source),this._disabled.handlebars||e.push(this.__patterns.handlebars._starting_pattern.source),this._disabled.erb||e.push(this.__patterns.erb._starting_pattern.source),this._disabled.django||(e.push(this.__patterns.django._starting_pattern.source),e.push(this.__patterns.django_value._starting_pattern.source),e.push(this.__patterns.django_comment._starting_pattern.source)),this._until_pattern&&e.push(this._until_pattern.source),this.__template_pattern=this._input.get_regexp("(?:"+e.join("|")+")")},a.prototype._read_template=function(){var e="",t=this._input.peek();if("<"===t){var n=this._input.peek(1);this._disabled.php||this._excluded.php||"?"!==n||(e=e||this.__patterns.php.read()),this._disabled.erb||this._excluded.erb||"%"!==n||(e=e||this.__patterns.erb.read())}else"{"===t&&(this._disabled.handlebars||this._excluded.handlebars||(e=(e=(e=e||this.__patterns.handlebars_comment.read())||this.__patterns.handlebars_unescaped.read())||this.__patterns.handlebars.read()),this._disabled.django||(this._excluded.django||this._excluded.handlebars||(e=e||this.__patterns.django_value.read()),this._excluded.django||(e=(e=e||this.__patterns.django_comment.read())||this.__patterns.django.read())));return e},e.exports.TemplatablePattern=a},,,,function(e,t,n){var i=n(19).Beautifier,r=n(20).Options;e.exports=function(e,t,n,r){return new i(e,t,n,r).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(20).Options,r=n(2).Output,a=n(21).Tokenizer,o=n(21).TOKEN,s=/\r\n|[\r\n]/,l=/\r\n|[\r\n]/g,c=function(e,t){this.indent_level=0,this.alignment_size=0,this.max_preserve_newlines=e.max_preserve_newlines,this.preserve_newlines=e.preserve_newlines,this._output=new r(e,t)};c.prototype.current_line_has_match=function(e){return this._output.current_line.has_match(e)},c.prototype.set_space_before_token=function(e,t){this._output.space_before_token=e,this._output.non_breaking_space=t},c.prototype.set_wrap_point=function(){this._output.set_indent(this.indent_level,this.alignment_size),this._output.set_wrap_point()},c.prototype.add_raw_token=function(e){this._output.add_raw_token(e)},c.prototype.print_preserved_newlines=function(e){var t=0;e.type!==o.TEXT&&e.previous.type!==o.TEXT&&(t=e.newlines?1:0),this.preserve_newlines&&(t=e.newlines<this.max_preserve_newlines+1?e.newlines:this.max_preserve_newlines+1);for(var n=0;n<t;n++)this.print_newline(n>0);return 0!==t},c.prototype.traverse_whitespace=function(e){return!(!e.whitespace_before&&!e.newlines)&&(this.print_preserved_newlines(e)||(this._output.space_before_token=!0),!0)},c.prototype.previous_token_wrapped=function(){return this._output.previous_token_wrapped},c.prototype.print_newline=function(e){this._output.add_new_line(e)},c.prototype.print_token=function(e){e.text&&(this._output.set_indent(this.indent_level,this.alignment_size),this._output.add_token(e.text))},c.prototype.indent=function(){this.indent_level++},c.prototype.get_full_indent=function(e){return(e=this.indent_level+(e||0))<1?"":this._output.get_indent_string(e)};var h=function(e,t){var n=null,i=null;return t.closed?("script"===e?n="text/javascript":"style"===e&&(n="text/css"),(n=function(e){for(var t=null,n=e.next;n.type!==o.EOF&&e.closed!==n;){if(n.type===o.ATTRIBUTE&&"type"===n.text){n.next&&n.next.type===o.EQUALS&&n.next.next&&n.next.next.type===o.VALUE&&(t=n.next.next.text);break}n=n.next}return t}(t)||n).search("text/css")>-1?i="css":n.search(/(text|application|dojo)\/(x-)?(javascript|ecmascript|jscript|livescript|(ld\+)?json|method|aspect)/)>-1?i="javascript":n.search(/(text|application|dojo)\/(x-)?(html)/)>-1?i="html":n.search(/test\/null/)>-1&&(i="null"),i):null};function d(e,t){return-1!==t.indexOf(e)}function u(e){this._printer=e,this._current_frame=null}function p(e,t,n,r){this._source_text=e||"",t=t||{},this._js_beautify=n,this._css_beautify=r,this._tag_stack=null;var a=new i(t,"html");this._options=a,this._is_wrap_attributes_force="force"===this._options.wrap_attributes.substr(0,"force".length),this._is_wrap_attributes_force_expand_multiline="force-expand-multiline"===this._options.wrap_attributes,this._is_wrap_attributes_force_aligned="force-aligned"===this._options.wrap_attributes,this._is_wrap_attributes_aligned_multiple="aligned-multiple"===this._options.wrap_attributes,this._is_wrap_attributes_preserve="preserve"===this._options.wrap_attributes.substr(0,"preserve".length),this._is_wrap_attributes_preserve_aligned="preserve-aligned"===this._options.wrap_attributes}u.prototype.get_parser_token=function(){return this._current_frame?this._current_frame.parser_token:null},u.prototype.record_tag=function(e){var t=new function(e,t,n){this.parent=e||null,this.tag=t?t.tag_name:"",this.indent_level=n||0,this.parser_token=t||null}(this._current_frame,e,this._printer.indent_level);this._current_frame=t},u.prototype._try_pop_frame=function(e){var t=null;return e&&(t=e.parser_token,this._printer.indent_level=e.indent_level,this._current_frame=e.parent),t},u.prototype._get_frame=function(e,t){for(var n=this._current_frame;n&&-1===e.indexOf(n.tag);){if(t&&-1!==t.indexOf(n.tag)){n=null;break}n=n.parent}return n},u.prototype.try_pop=function(e,t){var n=this._get_frame([e],t);return this._try_pop_frame(n)},u.prototype.indent_to_tag=function(e){var t=this._get_frame(e);t&&(this._printer.indent_level=t.indent_level)},p.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===this._options.eol&&(t="\n",e&&s.test(e)&&(t=e.match(s)[0]));var n=(e=e.replace(l,"\n")).match(/^[\t ]*/)[0],i={text:"",type:""},r=new m,h=new c(this._options,n),d=new a(e,this._options).tokenize();this._tag_stack=new u(h);for(var p=null,f=d.next();f.type!==o.EOF;)f.type===o.TAG_OPEN||f.type===o.COMMENT?r=p=this._handle_tag_open(h,f,r,i):f.type===o.ATTRIBUTE||f.type===o.EQUALS||f.type===o.VALUE||f.type===o.TEXT&&!r.tag_complete?p=this._handle_inside_tag(h,f,r,d):f.type===o.TAG_CLOSE?p=this._handle_tag_close(h,f,r):f.type===o.TEXT?p=this._handle_text(h,f,r):h.add_raw_token(f),i=p,f=d.next();return h._output.get_code(t)},p.prototype._handle_tag_close=function(e,t,n){var i={text:t.text,type:t.type};return e.alignment_size=0,n.tag_complete=!0,e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),n.is_unformatted?e.add_raw_token(t):("<"===n.tag_start_char&&(e.set_space_before_token("/"===t.text[0],!0),this._is_wrap_attributes_force_expand_multiline&&n.has_wrapped_attrs&&e.print_newline(!1)),e.print_token(t)),!n.indent_content||n.is_unformatted||n.is_content_unformatted||(e.indent(),n.indent_content=!1),n.is_inline_element||n.is_unformatted||n.is_content_unformatted||e.set_wrap_point(),i},p.prototype._handle_inside_tag=function(e,t,n,i){var r=n.has_wrapped_attrs,a={text:t.text,type:t.type};if(e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),n.is_unformatted)e.add_raw_token(t);else if("{"===n.tag_start_char&&t.type===o.TEXT)e.print_preserved_newlines(t)?(t.newlines=0,e.add_raw_token(t)):e.print_token(t);else{if(t.type===o.ATTRIBUTE?(e.set_space_before_token(!0),n.attr_count+=1):t.type===o.EQUALS?e.set_space_before_token(!1):t.type===o.VALUE&&t.previous.type===o.EQUALS&&e.set_space_before_token(!1),t.type===o.ATTRIBUTE&&"<"===n.tag_start_char&&((this._is_wrap_attributes_preserve||this._is_wrap_attributes_preserve_aligned)&&(e.traverse_whitespace(t),r=r||0!==t.newlines),this._is_wrap_attributes_force)){var s=n.attr_count>1;if(this._is_wrap_attributes_force_expand_multiline&&1===n.attr_count){var l,c=!0,h=0;do{if((l=i.peek(h)).type===o.ATTRIBUTE){c=!1;break}h+=1}while(h<4&&l.type!==o.EOF&&l.type!==o.TAG_CLOSE);s=!c}s&&(e.print_newline(!1),r=!0)}e.print_token(t),r=r||e.previous_token_wrapped(),n.has_wrapped_attrs=r}return a},p.prototype._handle_text=function(e,t,n){var i={text:t.text,type:"TK_CONTENT"};return n.custom_beautifier_name?this._print_custom_beatifier_text(e,t,n):n.is_unformatted||n.is_content_unformatted?e.add_raw_token(t):(e.traverse_whitespace(t),e.print_token(t)),i},p.prototype._print_custom_beatifier_text=function(e,t,n){var i=this;if(""!==t.text){var r,a=t.text,o=1,s="",l="";"javascript"===n.custom_beautifier_name&&"function"==typeof this._js_beautify?r=this._js_beautify:"css"===n.custom_beautifier_name&&"function"==typeof this._css_beautify?r=this._css_beautify:"html"===n.custom_beautifier_name&&(r=function(e,t){return new p(e,t,i._js_beautify,i._css_beautify).beautify()}),"keep"===this._options.indent_scripts?o=0:"separate"===this._options.indent_scripts&&(o=-e.indent_level);var c=e.get_full_indent(o);if(a=a.replace(/\n[ \t]*$/,""),"html"!==n.custom_beautifier_name&&"<"===a[0]&&a.match(/^(<!--|<!\[CDATA\[)/)){var h=/^(<!--[^\n]*|<!\[CDATA\[)(\n?)([ \t\n]*)([\s\S]*)(-->|]]>)$/.exec(a);if(!h)return void e.add_raw_token(t);s=c+h[1]+"\n",a=h[4],h[5]&&(l=c+h[5]),a=a.replace(/\n[ \t]*$/,""),(h[2]||-1!==h[3].indexOf("\n"))&&(h=h[3].match(/[ \t]+$/))&&(t.whitespace_before=h[0])}if(a)if(r){var d=function(){this.eol="\n"};d.prototype=this._options.raw_options,a=r(c+a,new d)}else{var u=t.whitespace_before;u&&(a=a.replace(new RegExp("\n("+u+")?","g"),"\n")),a=c+a.replace(/\n/g,"\n"+c)}s&&(a=a?s+a+"\n"+l:s+l),e.print_newline(!1),a&&(t.text=a,t.whitespace_before="",t.newlines=0,e.add_raw_token(t),e.print_newline(!0))}},p.prototype._handle_tag_open=function(e,t,n,i){var r=this._get_tag_open_token(t);return(n.is_unformatted||n.is_content_unformatted)&&t.type===o.TAG_OPEN&&0===t.text.indexOf("</")?e.add_raw_token(t):(e.traverse_whitespace(t),this._set_tag_position(e,t,r,n,i),r.is_inline_element||e.set_wrap_point(),e.print_token(t)),(this._is_wrap_attributes_force_aligned||this._is_wrap_attributes_aligned_multiple||this._is_wrap_attributes_preserve_aligned)&&(r.alignment_size=t.text.length+1),r.tag_complete||r.is_unformatted||(e.alignment_size=r.alignment_size),r};var m=function(e,t){var n;(this.parent=e||null,this.text="",this.type="TK_TAG_OPEN",this.tag_name="",this.is_inline_element=!1,this.is_unformatted=!1,this.is_content_unformatted=!1,this.is_empty_element=!1,this.is_start_tag=!1,this.is_end_tag=!1,this.indent_content=!1,this.multiline_content=!1,this.custom_beautifier_name=null,this.start_tag_token=null,this.attr_count=0,this.has_wrapped_attrs=!1,this.alignment_size=0,this.tag_complete=!1,this.tag_start_char="",this.tag_check="",t)?(this.tag_start_char=t.text[0],this.text=t.text,"<"===this.tag_start_char?(n=t.text.match(/^<([^\s>]*)/),this.tag_check=n?n[1]:""):(n=t.text.match(/^{{[#\^]?([^\s}]+)/),this.tag_check=n?n[1]:""),this.tag_check=this.tag_check.toLowerCase(),t.type===o.COMMENT&&(this.tag_complete=!0),this.is_start_tag="/"!==this.tag_check.charAt(0),this.tag_name=this.is_start_tag?this.tag_check:this.tag_check.substr(1),this.is_end_tag=!this.is_start_tag||t.closed&&"/>"===t.closed.text,this.is_end_tag=this.is_end_tag||"{"===this.tag_start_char&&(this.text.length<3||/[^#\^]/.test(this.text.charAt(2)))):this.tag_complete=!0};p.prototype._get_tag_open_token=function(e){var t=new m(this._tag_stack.get_parser_token(),e);return t.alignment_size=this._options.wrap_attributes_indent_size,t.is_end_tag=t.is_end_tag||d(t.tag_check,this._options.void_elements),t.is_empty_element=t.tag_complete||t.is_start_tag&&t.is_end_tag,t.is_unformatted=!t.tag_complete&&d(t.tag_check,this._options.unformatted),t.is_content_unformatted=!t.is_empty_element&&d(t.tag_check,this._options.content_unformatted),t.is_inline_element=d(t.tag_name,this._options.inline)||"{"===t.tag_start_char,t},p.prototype._set_tag_position=function(e,t,n,i,r){if(n.is_empty_element||(n.is_end_tag?n.start_tag_token=this._tag_stack.try_pop(n.tag_name):(this._do_optional_end_element(n)&&(n.is_inline_element||(n.parent&&(n.parent.multiline_content=!0),e.print_newline(!1))),this._tag_stack.record_tag(n),"script"!==n.tag_name&&"style"!==n.tag_name||n.is_unformatted||n.is_content_unformatted||(n.custom_beautifier_name=h(n.tag_check,t)))),d(n.tag_check,this._options.extra_liners)&&(e.print_newline(!1),e._output.just_added_blankline()||e.print_newline(!0)),n.is_empty_element){if("{"===n.tag_start_char&&"else"===n.tag_check)this._tag_stack.indent_to_tag(["if","unless","each"]),n.indent_content=!0,e.current_line_has_match(/{{#if/)||e.print_newline(!1);"!--"===n.tag_name&&r.type===o.TAG_CLOSE&&i.is_end_tag&&-1===n.text.indexOf("\n")||n.is_inline_element||n.is_unformatted||e.print_newline(!1)}else n.is_unformatted||n.is_content_unformatted?n.is_inline_element||n.is_unformatted||e.print_newline(!1):n.is_end_tag?(n.start_tag_token&&n.start_tag_token.multiline_content||!(n.is_inline_element||i.is_inline_element||r.type===o.TAG_CLOSE&&n.start_tag_token===i||"TK_CONTENT"===r.type))&&e.print_newline(!1):(n.indent_content=!n.custom_beautifier_name,"<"===n.tag_start_char&&("html"===n.tag_name?n.indent_content=this._options.indent_inner_html:"head"===n.tag_name?n.indent_content=this._options.indent_head_inner_html:"body"===n.tag_name&&(n.indent_content=this._options.indent_body_inner_html)),n.is_inline_element||"TK_CONTENT"===r.type||(n.parent&&(n.parent.multiline_content=!0),e.print_newline(!1)))},p.prototype._do_optional_end_element=function(e){var t=null;if(!e.is_empty_element&&e.is_start_tag&&e.parent)return"body"===e.tag_name?t=t||this._tag_stack.try_pop("head"):"li"===e.tag_name?t=t||this._tag_stack.try_pop("li",["ol","ul"]):"dd"===e.tag_name||"dt"===e.tag_name?t=(t=t||this._tag_stack.try_pop("dt",["dl"]))||this._tag_stack.try_pop("dd",["dl"]):"rp"===e.tag_name||"rt"===e.tag_name?t=(t=t||this._tag_stack.try_pop("rt",["ruby","rtc"]))||this._tag_stack.try_pop("rp",["ruby","rtc"]):"optgroup"===e.tag_name?t=t||this._tag_stack.try_pop("optgroup",["select"]):"option"===e.tag_name?t=t||this._tag_stack.try_pop("option",["select","datalist","optgroup"]):"colgroup"===e.tag_name?t=t||this._tag_stack.try_pop("caption",["table"]):"thead"===e.tag_name?t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]):"tbody"===e.tag_name||"tfoot"===e.tag_name?t=(t=(t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("thead",["table"]))||this._tag_stack.try_pop("tbody",["table"]):"tr"===e.tag_name?t=(t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("tr",["table","thead","tbody","tfoot"]):"th"!==e.tag_name&&"td"!==e.tag_name||(t=(t=t||this._tag_stack.try_pop("td",["table","thead","tbody","tfoot","tr"]))||this._tag_stack.try_pop("th",["table","thead","tbody","tfoot","tr"])),e.parent=this._tag_stack.get_parser_token(),t},e.exports.Beautifier=p},function(e,t,n){var i=n(6).Options;function r(e){i.call(this,e,"html"),1===this.templating.length&&"auto"===this.templating[0]&&(this.templating=["django","erb","handlebars","php"]),this.indent_inner_html=this._get_boolean("indent_inner_html"),this.indent_body_inner_html=this._get_boolean("indent_body_inner_html",!0),this.indent_head_inner_html=this._get_boolean("indent_head_inner_html",!0),this.indent_handlebars=this._get_boolean("indent_handlebars",!0),this.wrap_attributes=this._get_selection("wrap_attributes",["auto","force","force-aligned","force-expand-multiline","aligned-multiple","preserve","preserve-aligned"]),this.wrap_attributes_indent_size=this._get_number("wrap_attributes_indent_size",this.indent_size),this.extra_liners=this._get_array("extra_liners",["head","body","/html"]),this.inline=this._get_array("inline",["a","abbr","area","audio","b","bdi","bdo","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","i","iframe","img","input","ins","kbd","keygen","label","map","mark","math","meter","noscript","object","output","progress","q","ruby","s","samp","select","small","span","strong","sub","sup","svg","template","textarea","time","u","var","video","wbr","text","acronym","big","strike","tt"]),this.void_elements=this._get_array("void_elements",["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr","!doctype","?xml","basefont","isindex"]),this.unformatted=this._get_array("unformatted",[]),this.content_unformatted=this._get_array("content_unformatted",["pre","textarea"]),this.unformatted_content_delimiter=this._get_characters("unformatted_content_delimiter"),this.indent_scripts=this._get_selection("indent_scripts",["normal","keep","separate"])}r.prototype=new i,e.exports.Options=r},function(e,t,n){var i=n(9).Tokenizer,r=n(9).TOKEN,a=n(13).Directives,o=n(14).TemplatablePattern,s=n(12).Pattern,l={TAG_OPEN:"TK_TAG_OPEN",TAG_CLOSE:"TK_TAG_CLOSE",ATTRIBUTE:"TK_ATTRIBUTE",EQUALS:"TK_EQUALS",VALUE:"TK_VALUE",COMMENT:"TK_COMMENT",TEXT:"TK_TEXT",UNKNOWN:"TK_UNKNOWN",START:r.START,RAW:r.RAW,EOF:r.EOF},c=new a(/<\!--/,/-->/),h=function(e,t){i.call(this,e,t),this._current_tag_name="";var n=new o(this._input).read_options(this._options),r=new s(this._input);if(this.__patterns={word:n.until(/[\n\r\t <]/),single_quote:n.until_after(/'/),double_quote:n.until_after(/"/),attribute:n.until(/[\n\r\t =\/>]/),element_name:n.until(/[\n\r\t >\/]/),handlebars_comment:r.starting_with(/{{!--/).until_after(/--}}/),handlebars:r.starting_with(/{{/).until_after(/}}/),handlebars_open:r.until(/[\n\r\t }]/),handlebars_raw_close:r.until(/}}/),comment:r.starting_with(/<!--/).until_after(/-->/),cdata:r.starting_with(/<!\[CDATA\[/).until_after(/]]>/),conditional_comment:r.starting_with(/<!\[/).until_after(/]>/),processing:r.starting_with(/<\?/).until_after(/\?>/)},this._options.indent_handlebars&&(this.__patterns.word=this.__patterns.word.exclude("handlebars")),this._unformatted_content_delimiter=null,this._options.unformatted_content_delimiter){var a=this._input.get_literal_regexp(this._options.unformatted_content_delimiter);this.__patterns.unformatted_content_delimiter=r.matching(a).until_after(a)}};(h.prototype=new i)._is_comment=function(e){return!1},h.prototype._is_opening=function(e){return e.type===l.TAG_OPEN},h.prototype._is_closing=function(e,t){return e.type===l.TAG_CLOSE&&t&&((">"===e.text||"/>"===e.text)&&"<"===t.text[0]||"}}"===e.text&&"{"===t.text[0]&&"{"===t.text[1])},h.prototype._reset=function(){this._current_tag_name=""},h.prototype._get_next_token=function(e,t){var n=null;this._readWhitespace();var i=this._input.peek();return null===i?this._create_token(l.EOF,""):n=(n=(n=(n=(n=(n=(n=(n=(n=n||this._read_open_handlebars(i,t))||this._read_attribute(i,e,t))||this._read_raw_content(i,e,t))||this._read_close(i,t))||this._read_content_word(i))||this._read_comment_or_cdata(i))||this._read_processing(i))||this._read_open(i,t))||this._create_token(l.UNKNOWN,this._input.next())},h.prototype._read_comment_or_cdata=function(e){var t=null,n=null,i=null;"<"===e&&("!"===this._input.peek(1)&&((n=this.__patterns.comment.read())?(i=c.get_directives(n))&&"start"===i.ignore&&(n+=c.readIgnored(this._input)):n=this.__patterns.cdata.read()),n&&((t=this._create_token(l.COMMENT,n)).directives=i));return t},h.prototype._read_processing=function(e){var t=null,n=null;if("<"===e){var i=this._input.peek(1);"!"!==i&&"?"!==i||(n=(n=this.__patterns.conditional_comment.read())||this.__patterns.processing.read()),n&&((t=this._create_token(l.COMMENT,n)).directives=null)}return t},h.prototype._read_open=function(e,t){var n=null,i=null;return t||"<"===e&&(n=this._input.next(),"/"===this._input.peek()&&(n+=this._input.next()),n+=this.__patterns.element_name.read(),i=this._create_token(l.TAG_OPEN,n)),i},h.prototype._read_open_handlebars=function(e,t){var n=null,i=null;return t||this._options.indent_handlebars&&"{"===e&&"{"===this._input.peek(1)&&("!"===this._input.peek(2)?(n=(n=this.__patterns.handlebars_comment.read())||this.__patterns.handlebars.read(),i=this._create_token(l.COMMENT,n)):(n=this.__patterns.handlebars_open.read(),i=this._create_token(l.TAG_OPEN,n))),i},h.prototype._read_close=function(e,t){var n=null,i=null;return t&&("<"===t.text[0]&&(">"===e||"/"===e&&">"===this._input.peek(1))?(n=this._input.next(),"/"===e&&(n+=this._input.next()),i=this._create_token(l.TAG_CLOSE,n)):"{"===t.text[0]&&"}"===e&&"}"===this._input.peek(1)&&(this._input.next(),this._input.next(),i=this._create_token(l.TAG_CLOSE,"}}"))),i},h.prototype._read_attribute=function(e,t,n){var i=null,r="";if(n&&"<"===n.text[0])if("="===e)i=this._create_token(l.EQUALS,this._input.next());else if('"'===e||"'"===e){var a=this._input.next();a+='"'===e?this.__patterns.double_quote.read():this.__patterns.single_quote.read(),i=this._create_token(l.VALUE,a)}else(r=this.__patterns.attribute.read())&&(i=t.type===l.EQUALS?this._create_token(l.VALUE,r):this._create_token(l.ATTRIBUTE,r));return i},h.prototype._is_content_unformatted=function(e){return-1===this._options.void_elements.indexOf(e)&&(-1!==this._options.content_unformatted.indexOf(e)||-1!==this._options.unformatted.indexOf(e))},h.prototype._read_raw_content=function(e,t,n){var i="";if(n&&"{"===n.text[0])i=this.__patterns.handlebars_raw_close.read();else if(t.type===l.TAG_CLOSE&&"<"===t.opened.text[0]){var r=t.opened.text.substr(1).toLowerCase();if("script"===r||"style"===r){var a=this._read_comment_or_cdata(e);if(a)return a.type=l.TEXT,a;i=this._input.readUntil(new RegExp("</"+r+"[\\n\\r\\t ]*?>","ig"))}else this._is_content_unformatted(r)&&(i=this._input.readUntil(new RegExp("</"+r+"[\\n\\r\\t ]*?>","ig")))}return i?this._create_token(l.TEXT,i):null},h.prototype._read_content_word=function(e){var t="";if(this._options.unformatted_content_delimiter&&e===this._options.unformatted_content_delimiter[0]&&(t=this.__patterns.unformatted_content_delimiter.read()),t||(t=this.__patterns.word.read()),t)return this._create_token(l.TEXT,t)},e.exports.Tokenizer=h,e.exports.TOKEN=l}]);n("wwzF");var Ge,Ve=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(t,n){for(var i=0,r=t;i<r.length;i++){var a=r[i];if(e.isIncremental(a)){var o=Je(a.range),s=this.offsetAt(o.start),l=this.offsetAt(o.end);this._content=this._content.substring(0,s)+a.text+this._content.substring(l,this._content.length);var c=Math.max(o.start.line,0),h=Math.max(o.end.line,0),d=this._lineOffsets,u=Ke(a.text,!1,s);if(h-c===u.length)for(var p=0,m=u.length;p<m;p++)d[p+c+1]=u[p];else u.length<1e4?d.splice.apply(d,[c+1,h-c].concat(u)):this._lineOffsets=d=d.slice(0,c+1).concat(u,d.slice(h+1));var f=a.text.length-(l-s);if(0!==f)for(p=c+1+u.length,m=d.length;p<m;p++)d[p]=d[p]+f}else{if(!e.isFull(a))throw new Error("Unknown change event received");this._content=a.text,this._lineOffsets=void 0}}this._version=n},e.prototype.getLineOffsets=function(){return void 0===this._lineOffsets&&(this._lineOffsets=Ke(this._content,!0)),this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,i=t.length;if(0===i)return{line:0,character:e};for(;n<i;){var r=Math.floor((n+i)/2);t[r]>e?i=r:n=r+1}var a=n-1;return{line:a,character:e-t[a]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e.isIncremental=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)},e.isFull=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength},e}();function Ke(e,t,n){void 0===n&&(n=0);for(var i=t?[n]:[],r=0;r<e.length;r++){var a=e.charCodeAt(r);13!==a&&10!==a||(13===a&&r+1<e.length&&10===e.charCodeAt(r+1)&&r++,i.push(n+r+1))}return i}function Je(e){var t=e.start,n=e.end;return t.line>n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function Ye(e){var t=Je(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){e.create=function(e,t,n,i){return new Ve(e,t,n,i)},e.update=function(e,t,n){if(e instanceof Ve)return e.update(t,n),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){for(var n=e.getText(),i=function e(t,n){if(t.length<=1)return t;var i=t.length/2|0,r=t.slice(0,i),a=t.slice(i);e(r,n),e(a,n);for(var o=0,s=0,l=0;o<r.length&&s<a.length;){var c=n(r[o],a[s]);t[l++]=c<=0?r[o++]:a[s++]}for(;o<r.length;)t[l++]=r[o++];for(;s<a.length;)t[l++]=a[s++];return t}(t.map(Ye),function(e,t){var n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}),r=n.length,a=i.length-1;a>=0;a--){var o=i[a],s=e.offsetAt(o.range.start),l=e.offsetAt(o.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,s)+o.newText+n.substring(l,n.length),r=s}return n}}(Ge||(Ge={}));var Xe=monaco.Uri,$e=monaco.Range,Qe=function(){function e(e,t,n){var i=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var r=function(e){var t,n=e.getModeId();n===i._languageId&&(i._listener[e.uri.toString()]=e.onDidChangeContent(function(){clearTimeout(t),t=setTimeout(function(){return i._doValidate(e.uri,n)},500)}),i._doValidate(e.uri,n))},a=function(e){monaco.editor.setModelMarkers(e,i._languageId,[]);var t=e.uri.toString(),n=i._listener[t];n&&(n.dispose(),delete i._listener[t])};this._disposables.push(monaco.editor.onDidCreateModel(r)),this._disposables.push(monaco.editor.onWillDisposeModel(function(e){a(e)})),this._disposables.push(monaco.editor.onDidChangeModelLanguage(function(e){a(e.model),r(e.model)})),this._disposables.push(n.onDidChange(function(e){monaco.editor.getModels().forEach(function(e){e.getModeId()===i._languageId&&(a(e),r(e))})})),this._disposables.push({dispose:function(){for(var e in i._listener)i._listener[e].dispose()}}),monaco.editor.getModels().forEach(r)}return e.prototype.dispose=function(){this._disposables.forEach(function(e){return e&&e.dispose()}),this._disposables=[]},e.prototype._doValidate=function(e,t){this._worker(e).then(function(n){return n.doValidation(e.toString()).then(function(n){var i=n.map(function(e){return function(e,t){var n="number"==typeof t.code?String(t.code):t.code;return{severity:function(e){switch(e){case p.Error:return monaco.MarkerSeverity.Error;case p.Warning:return monaco.MarkerSeverity.Warning;case p.Information:return monaco.MarkerSeverity.Info;case p.Hint:return monaco.MarkerSeverity.Hint;default:return monaco.MarkerSeverity.Info}}(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:n,source:t.source}}(0,e)});monaco.editor.setModelMarkers(monaco.editor.getModel(e),t,i)})}).then(void 0,function(e){console.error(e)})},e}();function Ze(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function et(e){if(e)return new $e(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function tt(e){if(e)return{range:et(e.range),text:e.newText}}var nt=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[".",":","<",'"',"=","/"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.doComplete(r.toString(),Ze(t))}).then(function(n){if(n){var i=e.getWordUntilPosition(t),r=new $e(t.lineNumber,i.startColumn,t.lineNumber,i.endColumn),a=n.items.map(function(e){var t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,range:r,kind:function(e){var t=monaco.languages.CompletionItemKind;switch(e){case z.Text:return t.Text;case z.Method:return t.Method;case z.Function:return t.Function;case z.Constructor:return t.Constructor;case z.Field:return t.Field;case z.Variable:return t.Variable;case z.Class:return t.Class;case z.Interface:return t.Interface;case z.Module:return t.Module;case z.Property:return t.Property;case z.Unit:return t.Unit;case z.Value:return t.Value;case z.Enum:return t.Enum;case z.Keyword:return t.Keyword;case z.Snippet:return t.Snippet;case z.Color:return t.Color;case z.File:return t.File;case z.Reference:return t.Reference}return t.Property}(e.kind)};return e.textEdit&&(t.range=et(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(tt)),e.insertTextFormat===I.Snippet&&(t.insertTextRules=monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet),t});return{isIncomplete:n.isIncomplete,suggestions:a}}})},e}();function it(e){return"string"==typeof e?{value:e}:function(e){return e&&"object"==typeof e&&"string"==typeof e.kind}(e)?"plaintext"===e.kind?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}:{value:e.value}:{value:"```"+e.language+"\n"+e.value+"\n```\n"}}var rt=function(){function e(e){this._worker=e}return e.prototype.provideHover=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.doHover(i.toString(),Ze(t))}).then(function(e){if(e)return{range:et(e.range),contents:function(e){if(e)return Array.isArray(e)?e.map(it):[it(e)]}(e.contents)}})},e}();var at=function(){function e(e){this._worker=e}return e.prototype.provideDocumentHighlights=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.findDocumentHighlights(i.toString(),Ze(t))}).then(function(e){if(e)return e.map(function(e){return{range:et(e.range),kind:function(e){var t=monaco.languages.DocumentHighlightKind;switch(e){case P.Read:return t.Read;case P.Write:return t.Write;case P.Text:return t.Text}return t.Text}(e.kind)}})})},e}();var ot=function(){function e(e){this._worker=e}return e.prototype.provideDocumentSymbols=function(e,t){var n=e.uri;return this._worker(n).then(function(e){return e.findDocumentSymbols(n.toString())}).then(function(e){if(e)return e.map(function(e){return{name:e.name,detail:"",containerName:e.containerName,kind:function(e){var t=monaco.languages.SymbolKind;switch(e){case F.File:return t.Array;case F.Module:return t.Module;case F.Namespace:return t.Namespace;case F.Package:return t.Package;case F.Class:return t.Class;case F.Method:return t.Method;case F.Property:return t.Property;case F.Field:return t.Field;case F.Constructor:return t.Constructor;case F.Enum:return t.Enum;case F.Interface:return t.Interface;case F.Function:return t.Function;case F.Variable:return t.Variable;case F.Constant:return t.Constant;case F.String:return t.String;case F.Number:return t.Number;case F.Boolean:return t.Boolean;case F.Array:return t.Array}return t.Function}(e.kind),tags:[],range:et(e.location.range),selectionRange:et(e.location.range)}})})},e}(),st=function(){function e(e){this._worker=e}return e.prototype.provideLinks=function(e,t){var n=e.uri;return this._worker(n).then(function(e){return e.findDocumentLinks(n.toString())}).then(function(e){if(e)return{links:e.map(function(e){return{range:et(e.range),url:e.target}})}})},e}();function lt(e){return{tabSize:e.tabSize,insertSpaces:e.insertSpaces}}var ct=function(){function e(e){this._worker=e}return e.prototype.provideDocumentFormattingEdits=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.format(i.toString(),null,lt(t)).then(function(e){if(e&&0!==e.length)return e.map(tt)})})},e}(),ht=function(){function e(e){this._worker=e}return e.prototype.provideDocumentRangeFormattingEdits=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.format(r.toString(),function(e){if(e)return{start:Ze(e.getStartPosition()),end:Ze(e.getEndPosition())}}(t),lt(n)).then(function(e){if(e&&0!==e.length)return e.map(tt)})})},e}(),dt=function(){function e(e){this._worker=e}return e.prototype.provideRenameEdits=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.doRename(r.toString(),Ze(t),n)}).then(function(e){return function(e){if(!e||!e.changes)return;var t=[];for(var n in e.changes)for(var i=Xe.parse(n),r=0,a=e.changes[n];r<a.length;r++){var o=a[r];t.push({resource:i,edit:{range:et(o.range),text:o.newText}})}return{edits:t}}(e)})},e}();var ut=function(){function e(e){this._worker=e}return e.prototype.provideFoldingRanges=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.getFoldingRanges(i.toString(),t)}).then(function(e){if(e)return e.map(function(e){var t={start:e.startLine+1,end:e.endLine+1};return void 0!==e.kind&&(t.kind=function(e){switch(e){case h.Comment:return monaco.languages.FoldingRangeKind.Comment;case h.Imports:return monaco.languages.FoldingRangeKind.Imports;case h.Region:return monaco.languages.FoldingRangeKind.Region}}(e.kind)),t})})},e}();var pt=function(){function e(e){this._worker=e}return e.prototype.provideSelectionRanges=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.getSelectionRanges(i.toString(),t.map(Ze))}).then(function(e){if(e)return e.map(function(e){for(var t=[];e;)t.push({range:et(e.range)}),e=e.parent;return t})})},e}();function mt(e){var t=new k(e),n=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return t.getLanguageServiceWorker.apply(t,e)},i=e.languageId;monaco.languages.registerCompletionItemProvider(i,new nt(n)),monaco.languages.registerHoverProvider(i,new rt(n)),monaco.languages.registerDocumentHighlightProvider(i,new at(n)),monaco.languages.registerLinkProvider(i,new st(n)),monaco.languages.registerFoldingRangeProvider(i,new ut(n)),monaco.languages.registerDocumentSymbolProvider(i,new ot(n)),monaco.languages.registerSelectionRangeProvider(i,new pt(n)),monaco.languages.registerRenameProvider(i,new dt(n)),"html"===i&&(monaco.languages.registerDocumentFormattingEditProvider(i,new ct(n)),monaco.languages.registerDocumentRangeFormattingEditProvider(i,new ht(n)),new Qe(i,n,e))}function ft(e){var t=[],n=[],i=new k(e);t.push(i);var r=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return i.getLanguageServiceWorker.apply(i,e)};return function(){var t=e.languageId,i=e.modeConfiguration;bt(n),i.completionItems&&n.push(monaco.languages.registerCompletionItemProvider(t,new nt(r))),i.hovers&&n.push(monaco.languages.registerHoverProvider(t,new rt(r))),i.documentHighlights&&n.push(monaco.languages.registerDocumentHighlightProvider(t,new at(r))),i.links&&n.push(monaco.languages.registerLinkProvider(t,new st(r))),i.documentSymbols&&n.push(monaco.languages.registerDocumentSymbolProvider(t,new ot(r))),i.rename&&n.push(monaco.languages.registerRenameProvider(t,new dt(r))),i.foldingRanges&&n.push(monaco.languages.registerFoldingRangeProvider(t,new ut(r))),i.selectionRanges&&n.push(monaco.languages.registerSelectionRangeProvider(t,new pt(r))),i.documentFormattingEdits&&n.push(monaco.languages.registerDocumentFormattingEditProvider(t,new ct(r))),i.documentRangeFormattingEdits&&n.push(monaco.languages.registerDocumentRangeFormattingEditProvider(t,new ht(r))),i.diagnostics&&n.push(new Qe(t,r,e))}(),t.push(gt(n)),gt(t)}function gt(e){return{dispose:function(){return bt(e)}}}function bt(e){for(;e.length;)e.pop().dispose()}n.d(t,"setupMode1",function(){return mt}),n.d(t,"setupMode",function(){return ft})},wwzF:function(e,t,n){"use strict";(function(e){n.d(t,"a",function(){return p});var i,r,a=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();if("object"==typeof e)r="win32"===e.platform;else if("object"==typeof navigator){var o=navigator.userAgent;r=o.indexOf("Windows")>=0}var s=/^\w[\w\d+.-]*$/,l=/^\//,c=/^\/\//;var h="",d="/",u=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,p=function(){function e(e,t,n,i,r,a){void 0===a&&(a=!1),"object"==typeof e?(this.scheme=e.scheme||h,this.authority=e.authority||h,this.path=e.path||h,this.query=e.query||h,this.fragment=e.fragment||h):(this.scheme=function(e,t){return e||t?e:"file"}(e,a),this.authority=t||h,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==d&&(t=d+t):t=d}return t}(this.scheme,n||h),this.query=i||h,this.fragment=r||h,function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!s.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!l.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(c.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,a))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return w(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,n=e.authority,i=e.path,r=e.query,a=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=h),void 0===n?n=this.authority:null===n&&(n=h),void 0===i?i=this.path:null===i&&(i=h),void 0===r?r=this.query:null===r&&(r=h),void 0===a?a=this.fragment:null===a&&(a=h),t===this.scheme&&n===this.authority&&i===this.path&&r===this.query&&a===this.fragment?this:new f(t,n,i,r,a)},e.parse=function(e,t){void 0===t&&(t=!1);var n=u.exec(e);return n?new f(n[2]||h,decodeURIComponent(n[4]||h),decodeURIComponent(n[5]||h),decodeURIComponent(n[7]||h),decodeURIComponent(n[9]||h),t):new f(h,h,h,h,h)},e.file=function(e){var t=h;if(r&&(e=e.replace(/\\/g,d)),e[0]===d&&e[1]===d){var n=e.indexOf(d,2);-1===n?(t=e.substring(2),e=d):(t=e.substring(2,n),e=e.substring(n)||d)}return new f("file",t,e,h,h)},e.from=function(e){return new f(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),v(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var n=new f(t);return n._formatted=t.external,n._fsPath=t._sep===m?t.fsPath:null,n}return t},e}(),m=r?1:void 0,f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return a(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=w(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?v(this,!0):(this._formatted||(this._formatted=v(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=m),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(p),g=((i={})[58]="%3A",i[47]="%2F",i[63]="%3F",i[35]="%23",i[91]="%5B",i[93]="%5D",i[64]="%40",i[33]="%21",i[36]="%24",i[38]="%26",i[39]="%27",i[40]="%28",i[41]="%29",i[42]="%2A",i[43]="%2B",i[44]="%2C",i[59]="%3B",i[61]="%3D",i[32]="%20",i);function b(e,t){for(var n=void 0,i=-1,r=0;r<e.length;r++){var a=e.charCodeAt(r);if(a>=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57||45===a||46===a||95===a||126===a||t&&47===a)-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),void 0!==n&&(n+=e.charAt(r));else{void 0===n&&(n=e.substr(0,r));var o=g[a];void 0!==o?(-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),n+=o):-1===i&&(i=r)}}return-1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function _(e){for(var t=void 0,n=0;n<e.length;n++){var i=e.charCodeAt(n);35===i||63===i?(void 0===t&&(t=e.substr(0,n)),t+=g[i]):void 0!==t&&(t+=e[n])}return void 0!==t?t:e}function w(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,r&&(t=t.replace(/\//g,"\\")),t}function v(e,t){var n=t?_:b,i="",r=e.scheme,a=e.authority,o=e.path,s=e.query,l=e.fragment;if(r&&(i+=r,i+=":"),(a||"file"===r)&&(i+=d,i+=d),a){var c=a.indexOf("@");if(-1!==c){var h=a.substr(0,c);a=a.substr(c+1),-1===(c=h.indexOf(":"))?i+=n(h,!1):(i+=n(h.substr(0,c),!1),i+=":",i+=n(h.substr(c+1),!1)),i+="@"}-1===(c=(a=a.toLowerCase()).indexOf(":"))?i+=n(a,!1):(i+=n(a.substr(0,c),!1),i+=a.substr(c))}if(o){if(o.length>=3&&47===o.charCodeAt(0)&&58===o.charCodeAt(2))(u=o.charCodeAt(1))>=65&&u<=90&&(o="/"+String.fromCharCode(u+32)+":"+o.substr(3));else if(o.length>=2&&58===o.charCodeAt(1)){var u;(u=o.charCodeAt(0))>=65&&u<=90&&(o=String.fromCharCode(u+32)+":"+o.substr(2))}i+=n(o,!0)}return s&&(i+="?",i+=n(s,!1)),l&&(i+="#",i+=t?l:b(l,!1)),i}}).call(this,n("TDnd"))}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-2afc"],{"7eMu":function(e,t,n){"use strict";n.r(t);var i,r,a,o,s,l,c,h,d,u,p,m,f,g,b,_,w,v,y,T,k=function(){function e(e){var t=this;this._defaults=e,this._worker=null,this._idleCheckInterval=setInterval(function(){return t._checkIfIdle()},3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(function(){return t._stopWorker()})}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()},e.prototype._checkIfIdle=function(){this._worker&&(Date.now()-this._lastUsedTime>12e4&&this._stopWorker())},e.prototype._getClient=function(){return this._lastUsedTime=Date.now(),this._client||(this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/html/htmlWorker",createData:{languageSettings:this._defaults.options,languageId:this._defaults.languageId},label:this._defaults.languageId}),this._client=this._worker.getProxy()),this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];return this._getClient().then(function(t){e=t}).then(function(e){return t._worker.withSyncedResources(n)}).then(function(t){return e})},e}();function S(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return function(e,t){return 0===t.length?e:e.replace(/\{(\d+)\}/g,function(e,n){var i=n[0];return void 0!==t[i]?t[i]:e})}(t,n)}function x(e){return S}!function(e){e.create=function(e,t){return{line:e,character:t}},e.is=function(e){var t=e;return te.objectLiteral(t)&&te.number(t.line)&&te.number(t.character)}}(i||(i={})),function(e){e.create=function(e,t,n,r){if(te.number(e)&&te.number(t)&&te.number(n)&&te.number(r))return{start:i.create(e,t),end:i.create(n,r)};if(i.is(e)&&i.is(t))return{start:e,end:t};throw new Error("Range#create called with invalid arguments["+e+", "+t+", "+n+", "+r+"]")},e.is=function(e){var t=e;return te.objectLiteral(t)&&i.is(t.start)&&i.is(t.end)}}(r||(r={})),function(e){e.create=function(e,t){return{uri:e,range:t}},e.is=function(e){var t=e;return te.defined(t)&&r.is(t.range)&&(te.string(t.uri)||te.undefined(t.uri))}}(a||(a={})),function(e){e.create=function(e,t,n,i){return{targetUri:e,targetRange:t,targetSelectionRange:n,originSelectionRange:i}},e.is=function(e){var t=e;return te.defined(t)&&r.is(t.targetRange)&&te.string(t.targetUri)&&(r.is(t.targetSelectionRange)||te.undefined(t.targetSelectionRange))&&(r.is(t.originSelectionRange)||te.undefined(t.originSelectionRange))}}(o||(o={})),function(e){e.create=function(e,t,n,i){return{red:e,green:t,blue:n,alpha:i}},e.is=function(e){var t=e;return te.number(t.red)&&te.number(t.green)&&te.number(t.blue)&&te.number(t.alpha)}}(s||(s={})),function(e){e.create=function(e,t){return{range:e,color:t}},e.is=function(e){var t=e;return r.is(t.range)&&s.is(t.color)}}(l||(l={})),function(e){e.create=function(e,t,n){return{label:e,textEdit:t,additionalTextEdits:n}},e.is=function(e){var t=e;return te.string(t.label)&&(te.undefined(t.textEdit)||b.is(t))&&(te.undefined(t.additionalTextEdits)||te.typedArray(t.additionalTextEdits,b.is))}}(c||(c={})),function(e){e.Comment="comment",e.Imports="imports",e.Region="region"}(h||(h={})),function(e){e.create=function(e,t,n,i,r){var a={startLine:e,endLine:t};return te.defined(n)&&(a.startCharacter=n),te.defined(i)&&(a.endCharacter=i),te.defined(r)&&(a.kind=r),a},e.is=function(e){var t=e;return te.number(t.startLine)&&te.number(t.startLine)&&(te.undefined(t.startCharacter)||te.number(t.startCharacter))&&(te.undefined(t.endCharacter)||te.number(t.endCharacter))&&(te.undefined(t.kind)||te.string(t.kind))}}(d||(d={})),function(e){e.create=function(e,t){return{location:e,message:t}},e.is=function(e){var t=e;return te.defined(t)&&a.is(t.location)&&te.string(t.message)}}(u||(u={})),function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4}(p||(p={})),function(e){e.Unnecessary=1,e.Deprecated=2}(m||(m={})),function(e){e.create=function(e,t,n,i,r,a){var o={range:e,message:t};return te.defined(n)&&(o.severity=n),te.defined(i)&&(o.code=i),te.defined(r)&&(o.source=r),te.defined(a)&&(o.relatedInformation=a),o},e.is=function(e){var t=e;return te.defined(t)&&r.is(t.range)&&te.string(t.message)&&(te.number(t.severity)||te.undefined(t.severity))&&(te.number(t.code)||te.string(t.code)||te.undefined(t.code))&&(te.string(t.source)||te.undefined(t.source))&&(te.undefined(t.relatedInformation)||te.typedArray(t.relatedInformation,u.is))}}(f||(f={})),function(e){e.create=function(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];var r={title:e,command:t};return te.defined(n)&&n.length>0&&(r.arguments=n),r},e.is=function(e){var t=e;return te.defined(t)&&te.string(t.title)&&te.string(t.command)}}(g||(g={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){var t=e;return te.objectLiteral(t)&&te.string(t.newText)&&r.is(t.range)}}(b||(b={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){var t=e;return te.defined(t)&&L.is(t.textDocument)&&Array.isArray(t.edits)}}(_||(_={})),function(e){e.create=function(e,t){var n={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"create"===t.kind&&te.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||te.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||te.boolean(t.options.ignoreIfExists)))}}(w||(w={})),function(e){e.create=function(e,t,n){var i={kind:"rename",oldUri:e,newUri:t};return void 0===n||void 0===n.overwrite&&void 0===n.ignoreIfExists||(i.options=n),i},e.is=function(e){var t=e;return t&&"rename"===t.kind&&te.string(t.oldUri)&&te.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||te.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||te.boolean(t.options.ignoreIfExists)))}}(v||(v={})),function(e){e.create=function(e,t){var n={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"delete"===t.kind&&te.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||te.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||te.boolean(t.options.ignoreIfNotExists)))}}(y||(y={})),function(e){e.is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every(function(e){return te.string(e.kind)?w.is(e)||v.is(e)||y.is(e):_.is(e)}))}}(T||(T={}));var M,L,E,A,R,z,I,H,U,C,W,D,q,N,P,O,F,j,B,G,V,K,J,Y,X,$,Q,Z=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(b.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(b.replace(e,t))},e.prototype.delete=function(e){this.edits.push(b.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach(function(e){if(_.is(e)){var n=new Z(e.edits);t._textEditChanges[e.textDocument.uri]=n}}):e.changes&&Object.keys(e.changes).forEach(function(n){var i=new Z(e.changes[n]);t._textEditChanges[n]=i}))}Object.defineProperty(e.prototype,"edit",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(L.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t=e;if(!(i=this._textEditChanges[t.uri])){var n={textDocument:t,edits:r=[]};this._workspaceEdit.documentChanges.push(n),i=new Z(r),this._textEditChanges[t.uri]=i}return i}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var i;if(!(i=this._textEditChanges[e])){var r=[];this._workspaceEdit.changes[e]=r,i=new Z(r),this._textEditChanges[e]=i}return i},e.prototype.createFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(w.create(e,t))},e.prototype.renameFile=function(e,t,n){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(v.create(e,t,n))},e.prototype.deleteFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(y.create(e,t))},e.prototype.checkDocumentChanges=function(){if(!this._workspaceEdit||!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.")}}();!function(e){e.create=function(e){return{uri:e}},e.is=function(e){var t=e;return te.defined(t)&&te.string(t.uri)}}(M||(M={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){var t=e;return te.defined(t)&&te.string(t.uri)&&(null===t.version||te.number(t.version))}}(L||(L={})),function(e){e.create=function(e,t,n,i){return{uri:e,languageId:t,version:n,text:i}},e.is=function(e){var t=e;return te.defined(t)&&te.string(t.uri)&&te.string(t.languageId)&&te.number(t.version)&&te.string(t.text)}}(E||(E={})),function(e){e.PlainText="plaintext",e.Markdown="markdown"}(A||(A={})),function(e){e.is=function(t){var n=t;return n===e.PlainText||n===e.Markdown}}(A||(A={})),function(e){e.is=function(e){var t=e;return te.objectLiteral(e)&&A.is(t.kind)&&te.string(t.value)}}(R||(R={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(z||(z={})),function(e){e.PlainText=1,e.Snippet=2}(I||(I={})),function(e){e.Deprecated=1}(H||(H={})),function(e){e.create=function(e){return{label:e}}}(U||(U={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}(C||(C={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){var t=e;return te.string(t)||te.objectLiteral(t)&&te.string(t.language)&&te.string(t.value)}}(W||(W={})),function(e){e.is=function(e){var t=e;return!!t&&te.objectLiteral(t)&&(R.is(t.contents)||W.is(t.contents)||te.typedArray(t.contents,W.is))&&(void 0===e.range||r.is(e.range))}}(D||(D={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(q||(q={})),function(e){e.create=function(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];var r={label:e};return te.defined(t)&&(r.documentation=t),te.defined(n)?r.parameters=n:r.parameters=[],r}}(N||(N={})),function(e){e.Text=1,e.Read=2,e.Write=3}(P||(P={})),function(e){e.create=function(e,t){var n={range:e};return te.number(t)&&(n.kind=t),n}}(O||(O={})),function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(F||(F={})),function(e){e.Deprecated=1}(j||(j={})),function(e){e.create=function(e,t,n,i,r){var a={name:e,kind:t,location:{uri:i,range:n}};return r&&(a.containerName=r),a}}(B||(B={})),function(e){e.create=function(e,t,n,i,r,a){var o={name:e,detail:t,kind:n,range:i,selectionRange:r};return void 0!==a&&(o.children=a),o},e.is=function(e){var t=e;return t&&te.string(t.name)&&te.number(t.kind)&&r.is(t.range)&&r.is(t.selectionRange)&&(void 0===t.detail||te.string(t.detail))&&(void 0===t.deprecated||te.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))}}(G||(G={})),function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"}(V||(V={})),function(e){e.create=function(e,t){var n={diagnostics:e};return void 0!==t&&null!==t&&(n.only=t),n},e.is=function(e){var t=e;return te.defined(t)&&te.typedArray(t.diagnostics,f.is)&&(void 0===t.only||te.typedArray(t.only,te.string))}}(K||(K={})),function(e){e.create=function(e,t,n){var i={title:e};return g.is(t)?i.command=t:i.edit=t,void 0!==n&&(i.kind=n),i},e.is=function(e){var t=e;return t&&te.string(t.title)&&(void 0===t.diagnostics||te.typedArray(t.diagnostics,f.is))&&(void 0===t.kind||te.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||g.is(t.command))&&(void 0===t.isPreferred||te.boolean(t.isPreferred))&&(void 0===t.edit||T.is(t.edit))}}(J||(J={})),function(e){e.create=function(e,t){var n={range:e};return te.defined(t)&&(n.data=t),n},e.is=function(e){var t=e;return te.defined(t)&&r.is(t.range)&&(te.undefined(t.command)||g.is(t.command))}}(Y||(Y={})),function(e){e.create=function(e,t){return{tabSize:e,insertSpaces:t}},e.is=function(e){var t=e;return te.defined(t)&&te.number(t.tabSize)&&te.boolean(t.insertSpaces)}}(X||(X={})),function(e){e.create=function(e,t,n){return{range:e,target:t,data:n}},e.is=function(e){var t=e;return te.defined(t)&&r.is(t.range)&&(te.undefined(t.target)||te.string(t.target))}}($||($={})),function(e){e.create=function(e,t){return{range:e,parent:t}},e.is=function(t){var n=t;return void 0!==n&&r.is(n.range)&&(void 0===n.parent||e.is(n.parent))}}(Q||(Q={}));var ee;!function(e){e.create=function(e,t,n,i){return new ae(e,t,n,i)},e.is=function(e){var t=e;return!!(te.defined(t)&&te.string(t.uri)&&(te.undefined(t.languageId)||te.string(t.languageId))&&te.number(t.lineCount)&&te.func(t.getText)&&te.func(t.positionAt)&&te.func(t.offsetAt))},e.applyEdits=function(e,t){for(var n=e.getText(),i=function e(t,n){if(t.length<=1)return t;var i=t.length/2|0,r=t.slice(0,i),a=t.slice(i);e(r,n),e(a,n);for(var o=0,s=0,l=0;o<r.length&&s<a.length;){var c=n(r[o],a[s]);t[l++]=c<=0?r[o++]:a[s++]}for(;o<r.length;)t[l++]=r[o++];for(;s<a.length;)t[l++]=a[s++];return t}(t,function(e,t){var n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}),r=n.length,a=i.length-1;a>=0;a--){var o=i[a],s=e.offsetAt(o.range.start),l=e.offsetAt(o.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,s)+o.newText+n.substring(l,n.length),r=s}return n}}(ee||(ee={}));var te,ne,ie,re,ae=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,n=!0,i=0;i<t.length;i++){n&&(e.push(i),n=!1);var r=t.charAt(i);n="\r"===r||"\n"===r,"\r"===r&&i+1<t.length&&"\n"===t.charAt(i+1)&&i++}n&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,r=t.length;if(0===r)return i.create(0,e);for(;n<r;){var a=Math.floor((n+r)/2);t[a]>e?r=a:n=a+1}var o=n-1;return i.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e}();!function(e){var t=Object.prototype.toString;e.defined=function(e){return void 0!==e},e.undefined=function(e){return void 0===e},e.boolean=function(e){return!0===e||!1===e},e.string=function(e){return"[object String]"===t.call(e)},e.number=function(e){return"[object Number]"===t.call(e)},e.func=function(e){return"[object Function]"===t.call(e)},e.objectLiteral=function(e){return null!==e&&"object"==typeof e},e.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)}}(te||(te={})),function(e){e[e.StartCommentTag=0]="StartCommentTag",e[e.Comment=1]="Comment",e[e.EndCommentTag=2]="EndCommentTag",e[e.StartTagOpen=3]="StartTagOpen",e[e.StartTagClose=4]="StartTagClose",e[e.StartTagSelfClose=5]="StartTagSelfClose",e[e.StartTag=6]="StartTag",e[e.EndTagOpen=7]="EndTagOpen",e[e.EndTagClose=8]="EndTagClose",e[e.EndTag=9]="EndTag",e[e.DelimiterAssign=10]="DelimiterAssign",e[e.AttributeName=11]="AttributeName",e[e.AttributeValue=12]="AttributeValue",e[e.StartDoctypeTag=13]="StartDoctypeTag",e[e.Doctype=14]="Doctype",e[e.EndDoctypeTag=15]="EndDoctypeTag",e[e.Content=16]="Content",e[e.Whitespace=17]="Whitespace",e[e.Unknown=18]="Unknown",e[e.Script=19]="Script",e[e.Styles=20]="Styles",e[e.EOS=21]="EOS"}(ne||(ne={})),function(e){e[e.WithinContent=0]="WithinContent",e[e.AfterOpeningStartTag=1]="AfterOpeningStartTag",e[e.AfterOpeningEndTag=2]="AfterOpeningEndTag",e[e.WithinDoctype=3]="WithinDoctype",e[e.WithinTag=4]="WithinTag",e[e.WithinEndTag=5]="WithinEndTag",e[e.WithinComment=6]="WithinComment",e[e.WithinScriptContent=7]="WithinScriptContent",e[e.WithinStyleContent=8]="WithinStyleContent",e[e.AfterAttributeName=9]="AfterAttributeName",e[e.BeforeAttributeValue=10]="BeforeAttributeValue"}(ie||(ie={})),(re||(re={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[A.Markdown,A.PlainText]}},hover:{contentFormat:[A.Markdown,A.PlainText]}}};var oe=x(),se=function(){function e(e,t){this.source=e,this.len=e.length,this.position=t}return e.prototype.eos=function(){return this.len<=this.position},e.prototype.getSource=function(){return this.source},e.prototype.pos=function(){return this.position},e.prototype.goBackTo=function(e){this.position=e},e.prototype.goBack=function(e){this.position-=e},e.prototype.advance=function(e){this.position+=e},e.prototype.goToEnd=function(){this.position=this.source.length},e.prototype.nextChar=function(){return this.source.charCodeAt(this.position++)||0},e.prototype.peekChar=function(e){return void 0===e&&(e=0),this.source.charCodeAt(this.position+e)||0},e.prototype.advanceIfChar=function(e){return e===this.source.charCodeAt(this.position)&&(this.position++,!0)},e.prototype.advanceIfChars=function(e){var t;if(this.position+e.length>this.source.length)return!1;for(t=0;t<e.length;t++)if(this.source.charCodeAt(this.position+t)!==e[t])return!1;return this.advance(t),!0},e.prototype.advanceIfRegExp=function(e){var t=this.source.substr(this.position).match(e);return t?(this.position=this.position+t.index+t[0].length,t[0]):""},e.prototype.advanceUntilRegExp=function(e){var t=this.source.substr(this.position).match(e);return t?(this.position=this.position+t.index,t[0]):(this.goToEnd(),"")},e.prototype.advanceUntilChar=function(e){for(;this.position<this.source.length;){if(this.source.charCodeAt(this.position)===e)return!0;this.advance(1)}return!1},e.prototype.advanceUntilChars=function(e){for(;this.position+e.length<=this.source.length;){for(var t=0;t<e.length&&this.source.charCodeAt(this.position+t)===e[t];t++);if(t===e.length)return!0;this.advance(1)}return this.goToEnd(),!1},e.prototype.skipWhitespace=function(){return this.advanceWhileChar(function(e){return e===we||e===ve||e===ge||e===_e||e===be})>0},e.prototype.advanceWhileChar=function(e){for(var t=this.position;this.position<this.len&&e(this.source.charCodeAt(this.position));)this.position++;return this.position-t},e}(),le="!".charCodeAt(0),ce="-".charCodeAt(0),he="<".charCodeAt(0),de=">".charCodeAt(0),ue="/".charCodeAt(0),pe="=".charCodeAt(0),me='"'.charCodeAt(0),fe="'".charCodeAt(0),ge="\n".charCodeAt(0),be="\r".charCodeAt(0),_e="\f".charCodeAt(0),we=" ".charCodeAt(0),ve="\t".charCodeAt(0),ye={"text/x-handlebars-template":!0};function Te(e,t,n){void 0===t&&(t=0),void 0===n&&(n=ie.WithinContent);var i,r,a,o,s,l=new se(e,t),c=n,h=0,d=ne.Unknown;function u(){return l.advanceIfRegExp(/^[_:\w][_:\w-.\d]*/).toLowerCase()}function p(e,t,n){return d=t,h=e,i=n,t}return{scan:function(){var e=l.pos(),t=c,n=function e(){var t,n=l.pos();if(l.eos())return p(n,ne.EOS);switch(c){case ie.WithinComment:return l.advanceIfChars([ce,ce,de])?(c=ie.WithinContent,p(n,ne.EndCommentTag)):(l.advanceUntilChars([ce,ce,de]),p(n,ne.Comment));case ie.WithinDoctype:return l.advanceIfChar(de)?(c=ie.WithinContent,p(n,ne.EndDoctypeTag)):(l.advanceUntilChar(de),p(n,ne.Doctype));case ie.WithinContent:if(l.advanceIfChar(he)){if(!l.eos()&&l.peekChar()===le){if(l.advanceIfChars([le,ce,ce]))return c=ie.WithinComment,p(n,ne.StartCommentTag);if(l.advanceIfRegExp(/^!doctype/i))return c=ie.WithinDoctype,p(n,ne.StartDoctypeTag)}return l.advanceIfChar(ue)?(c=ie.AfterOpeningEndTag,p(n,ne.EndTagOpen)):(c=ie.AfterOpeningStartTag,p(n,ne.StartTagOpen))}return l.advanceUntilChar(he),p(n,ne.Content);case ie.AfterOpeningEndTag:var i=u();return i.length>0?(c=ie.WithinEndTag,p(n,ne.EndTag)):l.skipWhitespace()?p(n,ne.Whitespace,oe("error.unexpectedWhitespace","Tag name must directly follow the open bracket.")):(c=ie.WithinEndTag,l.advanceUntilChar(de),n<l.pos()?p(n,ne.Unknown,oe("error.endTagNameExpected","End tag name expected.")):e());case ie.WithinEndTag:if(l.skipWhitespace())return p(n,ne.Whitespace);if(l.advanceIfChar(de))return c=ie.WithinContent,p(n,ne.EndTagClose);t=oe("error.tagNameExpected","Closing bracket expected.");break;case ie.AfterOpeningStartTag:return a=u(),s=void 0,o=void 0,a.length>0?(r=!1,c=ie.WithinTag,p(n,ne.StartTag)):l.skipWhitespace()?p(n,ne.Whitespace,oe("error.unexpectedWhitespace","Tag name must directly follow the open bracket.")):(c=ie.WithinTag,l.advanceUntilChar(de),n<l.pos()?p(n,ne.Unknown,oe("error.startTagNameExpected","Start tag name expected.")):e());case ie.WithinTag:return l.skipWhitespace()?(r=!0,p(n,ne.Whitespace)):r&&(o=l.advanceIfRegExp(/^[^\s"'>/=\x00-\x0F\x7F\x80-\x9F]*/).toLowerCase()).length>0?(c=ie.AfterAttributeName,r=!1,p(n,ne.AttributeName)):l.advanceIfChars([ue,de])?(c=ie.WithinContent,p(n,ne.StartTagSelfClose)):l.advanceIfChar(de)?(c="script"===a?s&&ye[s]?ie.WithinContent:ie.WithinScriptContent:"style"===a?ie.WithinStyleContent:ie.WithinContent,p(n,ne.StartTagClose)):(l.advance(1),p(n,ne.Unknown,oe("error.unexpectedCharacterInTag","Unexpected character in tag.")));case ie.AfterAttributeName:return l.skipWhitespace()?(r=!0,p(n,ne.Whitespace)):l.advanceIfChar(pe)?(c=ie.BeforeAttributeValue,p(n,ne.DelimiterAssign)):(c=ie.WithinTag,e());case ie.BeforeAttributeValue:if(l.skipWhitespace())return p(n,ne.Whitespace);var h=l.advanceIfRegExp(/^[^\s"'`=<>]+/);if(h.length>0)return l.peekChar()===de&&l.peekChar(-1)===ue&&(l.goBack(1),h=h.substr(0,h.length-1)),"type"===o&&(s=h),c=ie.WithinTag,r=!1,p(n,ne.AttributeValue);var d=l.peekChar();return d===fe||d===me?(l.advance(1),l.advanceUntilChar(d)&&l.advance(1),"type"===o&&(s=l.getSource().substring(n+1,l.pos()-1)),c=ie.WithinTag,r=!1,p(n,ne.AttributeValue)):(c=ie.WithinTag,r=!1,e());case ie.WithinScriptContent:for(var m=1;!l.eos();){var f=l.advanceIfRegExp(/<!--|-->|<\/?script\s*\/?>?/i);if(0===f.length)return l.goToEnd(),p(n,ne.Script);if("\x3c!--"===f)1===m&&(m=2);else if("--\x3e"===f)m=1;else if("/"!==f[1])2===m&&(m=3);else{if(3!==m){l.goBack(f.length);break}m=2}}return c=ie.WithinContent,n<l.pos()?p(n,ne.Script):e();case ie.WithinStyleContent:return l.advanceUntilRegExp(/<\/style/i),c=ie.WithinContent,n<l.pos()?p(n,ne.Styles):e()}return l.advance(1),c=ie.WithinContent,p(n,ne.Unknown,t)}();return n!==ne.EOS&&e===l.pos()?(console.log("Scanner.scan has not advanced at offset "+e+", state before: "+t+" after: "+c),l.advance(1),p(e,ne.Unknown)):n},getTokenType:function(){return d},getTokenOffset:function(){return h},getTokenLength:function(){return l.pos()-h},getTokenEnd:function(){return l.pos()},getTokenText:function(){return l.getSource().substring(h,l.pos())},getScannerState:function(){return c},getTokenError:function(){return i}}}function ke(e,t){var n=0,i=e.length;if(0===i)return 0;for(;n<i;){var r=Math.floor((n+i)/2);t(e[r])?i=r:n=r+1}return n}var Se=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"];function xe(e){return!!e&&function(e,t,n){for(var i=0,r=e.length-1;i<=r;){var a=(i+r)/2|0,o=n(e[a],t);if(o<0)i=a+1;else{if(!(o>0))return a;r=a-1}}return-(i+1)}(Se,e.toLowerCase(),function(e,t){return e.localeCompare(t)})>=0}!function(){function e(e,t,n,i){this.start=e,this.end=t,this.children=n,this.parent=i,this.closed=!1}Object.defineProperty(e.prototype,"attributeNames",{get:function(){return this.attributes?Object.keys(this.attributes):[]},enumerable:!0,configurable:!0}),e.prototype.isSameTag=function(e){return this.tag&&e&&this.tag.length===e.length&&this.tag.toLowerCase()===e},Object.defineProperty(e.prototype,"firstChild",{get:function(){return this.children[0]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"lastChild",{get:function(){return this.children.length?this.children[this.children.length-1]:void 0},enumerable:!0,configurable:!0}),e.prototype.findNodeBefore=function(e){var t=ke(this.children,function(t){return e<=t.start})-1;if(t>=0){var n=this.children[t];if(e>n.start){if(e<n.end)return n.findNodeBefore(e);var i=n.lastChild;return i&&i.end===n.end?n.findNodeBefore(e):n}}return this},e.prototype.findNodeAt=function(e){var t=ke(this.children,function(t){return e<=t.start})-1;if(t>=0){var n=this.children[t];if(e>n.start&&e<=n.end)return n.findNodeAt(e)}return this}}();var Me={"Aacute;":"Á",Aacute:"Á","aacute;":"á",aacute:"á","Abreve;":"Ă","abreve;":"ă","ac;":"∾","acd;":"∿","acE;":"∾̳","Acirc;":"Â",Acirc:"Â","acirc;":"â",acirc:"â","acute;":"´",acute:"´","Acy;":"А","acy;":"а","AElig;":"Æ",AElig:"Æ","aelig;":"æ",aelig:"æ","af;":"⁡","Afr;":"𝔄","afr;":"𝔞","Agrave;":"À",Agrave:"À","agrave;":"à",agrave:"à","alefsym;":"ℵ","aleph;":"ℵ","Alpha;":"Α","alpha;":"α","Amacr;":"Ā","amacr;":"ā","amalg;":"⨿","AMP;":"&",AMP:"&","amp;":"&",amp:"&","And;":"⩓","and;":"∧","andand;":"⩕","andd;":"⩜","andslope;":"⩘","andv;":"⩚","ang;":"∠","ange;":"⦤","angle;":"∠","angmsd;":"∡","angmsdaa;":"⦨","angmsdab;":"⦩","angmsdac;":"⦪","angmsdad;":"⦫","angmsdae;":"⦬","angmsdaf;":"⦭","angmsdag;":"⦮","angmsdah;":"⦯","angrt;":"∟","angrtvb;":"⊾","angrtvbd;":"⦝","angsph;":"∢","angst;":"Å","angzarr;":"⍼","Aogon;":"Ą","aogon;":"ą","Aopf;":"𝔸","aopf;":"𝕒","ap;":"≈","apacir;":"⩯","apE;":"⩰","ape;":"≊","apid;":"≋","apos;":"'","ApplyFunction;":"⁡","approx;":"≈","approxeq;":"≊","Aring;":"Å",Aring:"Å","aring;":"å",aring:"å","Ascr;":"𝒜","ascr;":"𝒶","Assign;":"≔","ast;":"*","asymp;":"≈","asympeq;":"≍","Atilde;":"Ã",Atilde:"Ã","atilde;":"ã",atilde:"ã","Auml;":"Ä",Auml:"Ä","auml;":"ä",auml:"ä","awconint;":"∳","awint;":"⨑","backcong;":"≌","backepsilon;":"϶","backprime;":"‵","backsim;":"∽","backsimeq;":"⋍","Backslash;":"∖","Barv;":"⫧","barvee;":"⊽","Barwed;":"⌆","barwed;":"⌅","barwedge;":"⌅","bbrk;":"⎵","bbrktbrk;":"⎶","bcong;":"≌","Bcy;":"Б","bcy;":"б","bdquo;":"„","becaus;":"∵","Because;":"∵","because;":"∵","bemptyv;":"⦰","bepsi;":"϶","bernou;":"ℬ","Bernoullis;":"ℬ","Beta;":"Β","beta;":"β","beth;":"ℶ","between;":"≬","Bfr;":"𝔅","bfr;":"𝔟","bigcap;":"⋂","bigcirc;":"◯","bigcup;":"⋃","bigodot;":"⨀","bigoplus;":"⨁","bigotimes;":"⨂","bigsqcup;":"⨆","bigstar;":"★","bigtriangledown;":"▽","bigtriangleup;":"△","biguplus;":"⨄","bigvee;":"⋁","bigwedge;":"⋀","bkarow;":"⤍","blacklozenge;":"⧫","blacksquare;":"▪","blacktriangle;":"▴","blacktriangledown;":"▾","blacktriangleleft;":"◂","blacktriangleright;":"▸","blank;":"␣","blk12;":"▒","blk14;":"░","blk34;":"▓","block;":"█","bne;":"=⃥","bnequiv;":"≡⃥","bNot;":"⫭","bnot;":"⌐","Bopf;":"𝔹","bopf;":"𝕓","bot;":"⊥","bottom;":"⊥","bowtie;":"⋈","boxbox;":"⧉","boxDL;":"╗","boxDl;":"╖","boxdL;":"╕","boxdl;":"┐","boxDR;":"╔","boxDr;":"╓","boxdR;":"╒","boxdr;":"┌","boxH;":"═","boxh;":"─","boxHD;":"╦","boxHd;":"╤","boxhD;":"╥","boxhd;":"┬","boxHU;":"╩","boxHu;":"╧","boxhU;":"╨","boxhu;":"┴","boxminus;":"⊟","boxplus;":"⊞","boxtimes;":"⊠","boxUL;":"╝","boxUl;":"╜","boxuL;":"╛","boxul;":"┘","boxUR;":"╚","boxUr;":"╙","boxuR;":"╘","boxur;":"└","boxV;":"║","boxv;":"│","boxVH;":"╬","boxVh;":"╫","boxvH;":"╪","boxvh;":"┼","boxVL;":"╣","boxVl;":"╢","boxvL;":"╡","boxvl;":"┤","boxVR;":"╠","boxVr;":"╟","boxvR;":"╞","boxvr;":"├","bprime;":"‵","Breve;":"˘","breve;":"˘","brvbar;":"¦",brvbar:"¦","Bscr;":"ℬ","bscr;":"𝒷","bsemi;":"⁏","bsim;":"∽","bsime;":"⋍","bsol;":"\\","bsolb;":"⧅","bsolhsub;":"⟈","bull;":"•","bullet;":"•","bump;":"≎","bumpE;":"⪮","bumpe;":"≏","Bumpeq;":"≎","bumpeq;":"≏","Cacute;":"Ć","cacute;":"ć","Cap;":"⋒","cap;":"∩","capand;":"⩄","capbrcup;":"⩉","capcap;":"⩋","capcup;":"⩇","capdot;":"⩀","CapitalDifferentialD;":"ⅅ","caps;":"∩︀","caret;":"⁁","caron;":"ˇ","Cayleys;":"ℭ","ccaps;":"⩍","Ccaron;":"Č","ccaron;":"č","Ccedil;":"Ç",Ccedil:"Ç","ccedil;":"ç",ccedil:"ç","Ccirc;":"Ĉ","ccirc;":"ĉ","Cconint;":"∰","ccups;":"⩌","ccupssm;":"⩐","Cdot;":"Ċ","cdot;":"ċ","cedil;":"¸",cedil:"¸","Cedilla;":"¸","cemptyv;":"⦲","cent;":"¢",cent:"¢","CenterDot;":"·","centerdot;":"·","Cfr;":"ℭ","cfr;":"𝔠","CHcy;":"Ч","chcy;":"ч","check;":"✓","checkmark;":"✓","Chi;":"Χ","chi;":"χ","cir;":"○","circ;":"ˆ","circeq;":"≗","circlearrowleft;":"↺","circlearrowright;":"↻","circledast;":"⊛","circledcirc;":"⊚","circleddash;":"⊝","CircleDot;":"⊙","circledR;":"®","circledS;":"Ⓢ","CircleMinus;":"⊖","CirclePlus;":"⊕","CircleTimes;":"⊗","cirE;":"⧃","cire;":"≗","cirfnint;":"⨐","cirmid;":"⫯","cirscir;":"⧂","ClockwiseContourIntegral;":"∲","CloseCurlyDoubleQuote;":"”","CloseCurlyQuote;":"’","clubs;":"♣","clubsuit;":"♣","Colon;":"∷","colon;":":","Colone;":"⩴","colone;":"≔","coloneq;":"≔","comma;":",","commat;":"@","comp;":"∁","compfn;":"∘","complement;":"∁","complexes;":"ℂ","cong;":"≅","congdot;":"⩭","Congruent;":"≡","Conint;":"∯","conint;":"∮","ContourIntegral;":"∮","Copf;":"ℂ","copf;":"𝕔","coprod;":"∐","Coproduct;":"∐","COPY;":"©",COPY:"©","copy;":"©",copy:"©","copysr;":"℗","CounterClockwiseContourIntegral;":"∳","crarr;":"↵","Cross;":"⨯","cross;":"✗","Cscr;":"𝒞","cscr;":"𝒸","csub;":"⫏","csube;":"⫑","csup;":"⫐","csupe;":"⫒","ctdot;":"⋯","cudarrl;":"⤸","cudarrr;":"⤵","cuepr;":"⋞","cuesc;":"⋟","cularr;":"↶","cularrp;":"⤽","Cup;":"⋓","cup;":"∪","cupbrcap;":"⩈","CupCap;":"≍","cupcap;":"⩆","cupcup;":"⩊","cupdot;":"⊍","cupor;":"⩅","cups;":"∪︀","curarr;":"↷","curarrm;":"⤼","curlyeqprec;":"⋞","curlyeqsucc;":"⋟","curlyvee;":"⋎","curlywedge;":"⋏","curren;":"¤",curren:"¤","curvearrowleft;":"↶","curvearrowright;":"↷","cuvee;":"⋎","cuwed;":"⋏","cwconint;":"∲","cwint;":"∱","cylcty;":"⌭","Dagger;":"‡","dagger;":"†","daleth;":"ℸ","Darr;":"↡","dArr;":"⇓","darr;":"↓","dash;":"‐","Dashv;":"⫤","dashv;":"⊣","dbkarow;":"⤏","dblac;":"˝","Dcaron;":"Ď","dcaron;":"ď","Dcy;":"Д","dcy;":"д","DD;":"ⅅ","dd;":"ⅆ","ddagger;":"‡","ddarr;":"⇊","DDotrahd;":"⤑","ddotseq;":"⩷","deg;":"°",deg:"°","Del;":"∇","Delta;":"Δ","delta;":"δ","demptyv;":"⦱","dfisht;":"⥿","Dfr;":"𝔇","dfr;":"𝔡","dHar;":"⥥","dharl;":"⇃","dharr;":"⇂","DiacriticalAcute;":"´","DiacriticalDot;":"˙","DiacriticalDoubleAcute;":"˝","DiacriticalGrave;":"`","DiacriticalTilde;":"˜","diam;":"⋄","Diamond;":"⋄","diamond;":"⋄","diamondsuit;":"♦","diams;":"♦","die;":"¨","DifferentialD;":"ⅆ","digamma;":"ϝ","disin;":"⋲","div;":"÷","divide;":"÷",divide:"÷","divideontimes;":"⋇","divonx;":"⋇","DJcy;":"Ђ","djcy;":"ђ","dlcorn;":"⌞","dlcrop;":"⌍","dollar;":"$","Dopf;":"𝔻","dopf;":"𝕕","Dot;":"¨","dot;":"˙","DotDot;":"⃜","doteq;":"≐","doteqdot;":"≑","DotEqual;":"≐","dotminus;":"∸","dotplus;":"∔","dotsquare;":"⊡","doublebarwedge;":"⌆","DoubleContourIntegral;":"∯","DoubleDot;":"¨","DoubleDownArrow;":"⇓","DoubleLeftArrow;":"⇐","DoubleLeftRightArrow;":"⇔","DoubleLeftTee;":"⫤","DoubleLongLeftArrow;":"⟸","DoubleLongLeftRightArrow;":"⟺","DoubleLongRightArrow;":"⟹","DoubleRightArrow;":"⇒","DoubleRightTee;":"⊨","DoubleUpArrow;":"⇑","DoubleUpDownArrow;":"⇕","DoubleVerticalBar;":"∥","DownArrow;":"↓","Downarrow;":"⇓","downarrow;":"↓","DownArrowBar;":"⤓","DownArrowUpArrow;":"⇵","DownBreve;":"̑","downdownarrows;":"⇊","downharpoonleft;":"⇃","downharpoonright;":"⇂","DownLeftRightVector;":"⥐","DownLeftTeeVector;":"⥞","DownLeftVector;":"↽","DownLeftVectorBar;":"⥖","DownRightTeeVector;":"⥟","DownRightVector;":"⇁","DownRightVectorBar;":"⥗","DownTee;":"⊤","DownTeeArrow;":"↧","drbkarow;":"⤐","drcorn;":"⌟","drcrop;":"⌌","Dscr;":"𝒟","dscr;":"𝒹","DScy;":"Ѕ","dscy;":"ѕ","dsol;":"⧶","Dstrok;":"Đ","dstrok;":"đ","dtdot;":"⋱","dtri;":"▿","dtrif;":"▾","duarr;":"⇵","duhar;":"⥯","dwangle;":"⦦","DZcy;":"Џ","dzcy;":"џ","dzigrarr;":"⟿","Eacute;":"É",Eacute:"É","eacute;":"é",eacute:"é","easter;":"⩮","Ecaron;":"Ě","ecaron;":"ě","ecir;":"≖","Ecirc;":"Ê",Ecirc:"Ê","ecirc;":"ê",ecirc:"ê","ecolon;":"≕","Ecy;":"Э","ecy;":"э","eDDot;":"⩷","Edot;":"Ė","eDot;":"≑","edot;":"ė","ee;":"ⅇ","efDot;":"≒","Efr;":"𝔈","efr;":"𝔢","eg;":"⪚","Egrave;":"È",Egrave:"È","egrave;":"è",egrave:"è","egs;":"⪖","egsdot;":"⪘","el;":"⪙","Element;":"∈","elinters;":"⏧","ell;":"ℓ","els;":"⪕","elsdot;":"⪗","Emacr;":"Ē","emacr;":"ē","empty;":"∅","emptyset;":"∅","EmptySmallSquare;":"◻","emptyv;":"∅","EmptyVerySmallSquare;":"▫","emsp;":" ","emsp13;":" ","emsp14;":" ","ENG;":"Ŋ","eng;":"ŋ","ensp;":" ","Eogon;":"Ę","eogon;":"ę","Eopf;":"𝔼","eopf;":"𝕖","epar;":"⋕","eparsl;":"⧣","eplus;":"⩱","epsi;":"ε","Epsilon;":"Ε","epsilon;":"ε","epsiv;":"ϵ","eqcirc;":"≖","eqcolon;":"≕","eqsim;":"≂","eqslantgtr;":"⪖","eqslantless;":"⪕","Equal;":"⩵","equals;":"=","EqualTilde;":"≂","equest;":"≟","Equilibrium;":"⇌","equiv;":"≡","equivDD;":"⩸","eqvparsl;":"⧥","erarr;":"⥱","erDot;":"≓","Escr;":"ℰ","escr;":"ℯ","esdot;":"≐","Esim;":"⩳","esim;":"≂","Eta;":"Η","eta;":"η","ETH;":"Ð",ETH:"Ð","eth;":"ð",eth:"ð","Euml;":"Ë",Euml:"Ë","euml;":"ë",euml:"ë","euro;":"€","excl;":"!","exist;":"∃","Exists;":"∃","expectation;":"ℰ","ExponentialE;":"ⅇ","exponentiale;":"ⅇ","fallingdotseq;":"≒","Fcy;":"Ф","fcy;":"ф","female;":"♀","ffilig;":"ffi","fflig;":"ff","ffllig;":"ffl","Ffr;":"𝔉","ffr;":"𝔣","filig;":"fi","FilledSmallSquare;":"◼","FilledVerySmallSquare;":"▪","fjlig;":"fj","flat;":"♭","fllig;":"fl","fltns;":"▱","fnof;":"ƒ","Fopf;":"𝔽","fopf;":"𝕗","ForAll;":"∀","forall;":"∀","fork;":"⋔","forkv;":"⫙","Fouriertrf;":"ℱ","fpartint;":"⨍","frac12;":"½",frac12:"½","frac13;":"⅓","frac14;":"¼",frac14:"¼","frac15;":"⅕","frac16;":"⅙","frac18;":"⅛","frac23;":"⅔","frac25;":"⅖","frac34;":"¾",frac34:"¾","frac35;":"⅗","frac38;":"⅜","frac45;":"⅘","frac56;":"⅚","frac58;":"⅝","frac78;":"⅞","frasl;":"⁄","frown;":"⌢","Fscr;":"ℱ","fscr;":"𝒻","gacute;":"ǵ","Gamma;":"Γ","gamma;":"γ","Gammad;":"Ϝ","gammad;":"ϝ","gap;":"⪆","Gbreve;":"Ğ","gbreve;":"ğ","Gcedil;":"Ģ","Gcirc;":"Ĝ","gcirc;":"ĝ","Gcy;":"Г","gcy;":"г","Gdot;":"Ġ","gdot;":"ġ","gE;":"≧","ge;":"≥","gEl;":"⪌","gel;":"⋛","geq;":"≥","geqq;":"≧","geqslant;":"⩾","ges;":"⩾","gescc;":"⪩","gesdot;":"⪀","gesdoto;":"⪂","gesdotol;":"⪄","gesl;":"⋛︀","gesles;":"⪔","Gfr;":"𝔊","gfr;":"𝔤","Gg;":"⋙","gg;":"≫","ggg;":"⋙","gimel;":"ℷ","GJcy;":"Ѓ","gjcy;":"ѓ","gl;":"≷","gla;":"⪥","glE;":"⪒","glj;":"⪤","gnap;":"⪊","gnapprox;":"⪊","gnE;":"≩","gne;":"⪈","gneq;":"⪈","gneqq;":"≩","gnsim;":"⋧","Gopf;":"𝔾","gopf;":"𝕘","grave;":"`","GreaterEqual;":"≥","GreaterEqualLess;":"⋛","GreaterFullEqual;":"≧","GreaterGreater;":"⪢","GreaterLess;":"≷","GreaterSlantEqual;":"⩾","GreaterTilde;":"≳","Gscr;":"𝒢","gscr;":"ℊ","gsim;":"≳","gsime;":"⪎","gsiml;":"⪐","GT;":">",GT:">","Gt;":"≫","gt;":">",gt:">","gtcc;":"⪧","gtcir;":"⩺","gtdot;":"⋗","gtlPar;":"⦕","gtquest;":"⩼","gtrapprox;":"⪆","gtrarr;":"⥸","gtrdot;":"⋗","gtreqless;":"⋛","gtreqqless;":"⪌","gtrless;":"≷","gtrsim;":"≳","gvertneqq;":"≩︀","gvnE;":"≩︀","Hacek;":"ˇ","hairsp;":" ","half;":"½","hamilt;":"ℋ","HARDcy;":"Ъ","hardcy;":"ъ","hArr;":"⇔","harr;":"↔","harrcir;":"⥈","harrw;":"↭","Hat;":"^","hbar;":"ℏ","Hcirc;":"Ĥ","hcirc;":"ĥ","hearts;":"♥","heartsuit;":"♥","hellip;":"…","hercon;":"⊹","Hfr;":"ℌ","hfr;":"𝔥","HilbertSpace;":"ℋ","hksearow;":"⤥","hkswarow;":"⤦","hoarr;":"⇿","homtht;":"∻","hookleftarrow;":"↩","hookrightarrow;":"↪","Hopf;":"ℍ","hopf;":"𝕙","horbar;":"―","HorizontalLine;":"─","Hscr;":"ℋ","hscr;":"𝒽","hslash;":"ℏ","Hstrok;":"Ħ","hstrok;":"ħ","HumpDownHump;":"≎","HumpEqual;":"≏","hybull;":"⁃","hyphen;":"‐","Iacute;":"Í",Iacute:"Í","iacute;":"í",iacute:"í","ic;":"⁣","Icirc;":"Î",Icirc:"Î","icirc;":"î",icirc:"î","Icy;":"И","icy;":"и","Idot;":"İ","IEcy;":"Е","iecy;":"е","iexcl;":"¡",iexcl:"¡","iff;":"⇔","Ifr;":"ℑ","ifr;":"𝔦","Igrave;":"Ì",Igrave:"Ì","igrave;":"ì",igrave:"ì","ii;":"ⅈ","iiiint;":"⨌","iiint;":"∭","iinfin;":"⧜","iiota;":"℩","IJlig;":"IJ","ijlig;":"ij","Im;":"ℑ","Imacr;":"Ī","imacr;":"ī","image;":"ℑ","ImaginaryI;":"ⅈ","imagline;":"ℐ","imagpart;":"ℑ","imath;":"ı","imof;":"⊷","imped;":"Ƶ","Implies;":"⇒","in;":"∈","incare;":"℅","infin;":"∞","infintie;":"⧝","inodot;":"ı","Int;":"∬","int;":"∫","intcal;":"⊺","integers;":"ℤ","Integral;":"∫","intercal;":"⊺","Intersection;":"⋂","intlarhk;":"⨗","intprod;":"⨼","InvisibleComma;":"⁣","InvisibleTimes;":"⁢","IOcy;":"Ё","iocy;":"ё","Iogon;":"Į","iogon;":"į","Iopf;":"𝕀","iopf;":"𝕚","Iota;":"Ι","iota;":"ι","iprod;":"⨼","iquest;":"¿",iquest:"¿","Iscr;":"ℐ","iscr;":"𝒾","isin;":"∈","isindot;":"⋵","isinE;":"⋹","isins;":"⋴","isinsv;":"⋳","isinv;":"∈","it;":"⁢","Itilde;":"Ĩ","itilde;":"ĩ","Iukcy;":"І","iukcy;":"і","Iuml;":"Ï",Iuml:"Ï","iuml;":"ï",iuml:"ï","Jcirc;":"Ĵ","jcirc;":"ĵ","Jcy;":"Й","jcy;":"й","Jfr;":"𝔍","jfr;":"𝔧","jmath;":"ȷ","Jopf;":"𝕁","jopf;":"𝕛","Jscr;":"𝒥","jscr;":"𝒿","Jsercy;":"Ј","jsercy;":"ј","Jukcy;":"Є","jukcy;":"є","Kappa;":"Κ","kappa;":"κ","kappav;":"ϰ","Kcedil;":"Ķ","kcedil;":"ķ","Kcy;":"К","kcy;":"к","Kfr;":"𝔎","kfr;":"𝔨","kgreen;":"ĸ","KHcy;":"Х","khcy;":"х","KJcy;":"Ќ","kjcy;":"ќ","Kopf;":"𝕂","kopf;":"𝕜","Kscr;":"𝒦","kscr;":"𝓀","lAarr;":"⇚","Lacute;":"Ĺ","lacute;":"ĺ","laemptyv;":"⦴","lagran;":"ℒ","Lambda;":"Λ","lambda;":"λ","Lang;":"⟪","lang;":"⟨","langd;":"⦑","langle;":"⟨","lap;":"⪅","Laplacetrf;":"ℒ","laquo;":"«",laquo:"«","Larr;":"↞","lArr;":"⇐","larr;":"←","larrb;":"⇤","larrbfs;":"⤟","larrfs;":"⤝","larrhk;":"↩","larrlp;":"↫","larrpl;":"⤹","larrsim;":"⥳","larrtl;":"↢","lat;":"⪫","lAtail;":"⤛","latail;":"⤙","late;":"⪭","lates;":"⪭︀","lBarr;":"⤎","lbarr;":"⤌","lbbrk;":"❲","lbrace;":"{","lbrack;":"[","lbrke;":"⦋","lbrksld;":"⦏","lbrkslu;":"⦍","Lcaron;":"Ľ","lcaron;":"ľ","Lcedil;":"Ļ","lcedil;":"ļ","lceil;":"⌈","lcub;":"{","Lcy;":"Л","lcy;":"л","ldca;":"⤶","ldquo;":"“","ldquor;":"„","ldrdhar;":"⥧","ldrushar;":"⥋","ldsh;":"↲","lE;":"≦","le;":"≤","LeftAngleBracket;":"⟨","LeftArrow;":"←","Leftarrow;":"⇐","leftarrow;":"←","LeftArrowBar;":"⇤","LeftArrowRightArrow;":"⇆","leftarrowtail;":"↢","LeftCeiling;":"⌈","LeftDoubleBracket;":"⟦","LeftDownTeeVector;":"⥡","LeftDownVector;":"⇃","LeftDownVectorBar;":"⥙","LeftFloor;":"⌊","leftharpoondown;":"↽","leftharpoonup;":"↼","leftleftarrows;":"⇇","LeftRightArrow;":"↔","Leftrightarrow;":"⇔","leftrightarrow;":"↔","leftrightarrows;":"⇆","leftrightharpoons;":"⇋","leftrightsquigarrow;":"↭","LeftRightVector;":"⥎","LeftTee;":"⊣","LeftTeeArrow;":"↤","LeftTeeVector;":"⥚","leftthreetimes;":"⋋","LeftTriangle;":"⊲","LeftTriangleBar;":"⧏","LeftTriangleEqual;":"⊴","LeftUpDownVector;":"⥑","LeftUpTeeVector;":"⥠","LeftUpVector;":"↿","LeftUpVectorBar;":"⥘","LeftVector;":"↼","LeftVectorBar;":"⥒","lEg;":"⪋","leg;":"⋚","leq;":"≤","leqq;":"≦","leqslant;":"⩽","les;":"⩽","lescc;":"⪨","lesdot;":"⩿","lesdoto;":"⪁","lesdotor;":"⪃","lesg;":"⋚︀","lesges;":"⪓","lessapprox;":"⪅","lessdot;":"⋖","lesseqgtr;":"⋚","lesseqqgtr;":"⪋","LessEqualGreater;":"⋚","LessFullEqual;":"≦","LessGreater;":"≶","lessgtr;":"≶","LessLess;":"⪡","lesssim;":"≲","LessSlantEqual;":"⩽","LessTilde;":"≲","lfisht;":"⥼","lfloor;":"⌊","Lfr;":"𝔏","lfr;":"𝔩","lg;":"≶","lgE;":"⪑","lHar;":"⥢","lhard;":"↽","lharu;":"↼","lharul;":"⥪","lhblk;":"▄","LJcy;":"Љ","ljcy;":"љ","Ll;":"⋘","ll;":"≪","llarr;":"⇇","llcorner;":"⌞","Lleftarrow;":"⇚","llhard;":"⥫","lltri;":"◺","Lmidot;":"Ŀ","lmidot;":"ŀ","lmoust;":"⎰","lmoustache;":"⎰","lnap;":"⪉","lnapprox;":"⪉","lnE;":"≨","lne;":"⪇","lneq;":"⪇","lneqq;":"≨","lnsim;":"⋦","loang;":"⟬","loarr;":"⇽","lobrk;":"⟦","LongLeftArrow;":"⟵","Longleftarrow;":"⟸","longleftarrow;":"⟵","LongLeftRightArrow;":"⟷","Longleftrightarrow;":"⟺","longleftrightarrow;":"⟷","longmapsto;":"⟼","LongRightArrow;":"⟶","Longrightarrow;":"⟹","longrightarrow;":"⟶","looparrowleft;":"↫","looparrowright;":"↬","lopar;":"⦅","Lopf;":"𝕃","lopf;":"𝕝","loplus;":"⨭","lotimes;":"⨴","lowast;":"∗","lowbar;":"_","LowerLeftArrow;":"↙","LowerRightArrow;":"↘","loz;":"◊","lozenge;":"◊","lozf;":"⧫","lpar;":"(","lparlt;":"⦓","lrarr;":"⇆","lrcorner;":"⌟","lrhar;":"⇋","lrhard;":"⥭","lrm;":"‎","lrtri;":"⊿","lsaquo;":"‹","Lscr;":"ℒ","lscr;":"𝓁","Lsh;":"↰","lsh;":"↰","lsim;":"≲","lsime;":"⪍","lsimg;":"⪏","lsqb;":"[","lsquo;":"‘","lsquor;":"‚","Lstrok;":"Ł","lstrok;":"ł","LT;":"<",LT:"<","Lt;":"≪","lt;":"<",lt:"<","ltcc;":"⪦","ltcir;":"⩹","ltdot;":"⋖","lthree;":"⋋","ltimes;":"⋉","ltlarr;":"⥶","ltquest;":"⩻","ltri;":"◃","ltrie;":"⊴","ltrif;":"◂","ltrPar;":"⦖","lurdshar;":"⥊","luruhar;":"⥦","lvertneqq;":"≨︀","lvnE;":"≨︀","macr;":"¯",macr:"¯","male;":"♂","malt;":"✠","maltese;":"✠","Map;":"⤅","map;":"↦","mapsto;":"↦","mapstodown;":"↧","mapstoleft;":"↤","mapstoup;":"↥","marker;":"▮","mcomma;":"⨩","Mcy;":"М","mcy;":"м","mdash;":"—","mDDot;":"∺","measuredangle;":"∡","MediumSpace;":" ","Mellintrf;":"ℳ","Mfr;":"𝔐","mfr;":"𝔪","mho;":"℧","micro;":"µ",micro:"µ","mid;":"∣","midast;":"*","midcir;":"⫰","middot;":"·",middot:"·","minus;":"−","minusb;":"⊟","minusd;":"∸","minusdu;":"⨪","MinusPlus;":"∓","mlcp;":"⫛","mldr;":"…","mnplus;":"∓","models;":"⊧","Mopf;":"𝕄","mopf;":"𝕞","mp;":"∓","Mscr;":"ℳ","mscr;":"𝓂","mstpos;":"∾","Mu;":"Μ","mu;":"μ","multimap;":"⊸","mumap;":"⊸","nabla;":"∇","Nacute;":"Ń","nacute;":"ń","nang;":"∠⃒","nap;":"≉","napE;":"⩰̸","napid;":"≋̸","napos;":"ʼn","napprox;":"≉","natur;":"♮","natural;":"♮","naturals;":"ℕ","nbsp;":" ",nbsp:" ","nbump;":"≎̸","nbumpe;":"≏̸","ncap;":"⩃","Ncaron;":"Ň","ncaron;":"ň","Ncedil;":"Ņ","ncedil;":"ņ","ncong;":"≇","ncongdot;":"⩭̸","ncup;":"⩂","Ncy;":"Н","ncy;":"н","ndash;":"–","ne;":"≠","nearhk;":"⤤","neArr;":"⇗","nearr;":"↗","nearrow;":"↗","nedot;":"≐̸","NegativeMediumSpace;":"​","NegativeThickSpace;":"​","NegativeThinSpace;":"​","NegativeVeryThinSpace;":"​","nequiv;":"≢","nesear;":"⤨","nesim;":"≂̸","NestedGreaterGreater;":"≫","NestedLessLess;":"≪","NewLine;":"\n","nexist;":"∄","nexists;":"∄","Nfr;":"𝔑","nfr;":"𝔫","ngE;":"≧̸","nge;":"≱","ngeq;":"≱","ngeqq;":"≧̸","ngeqslant;":"⩾̸","nges;":"⩾̸","nGg;":"⋙̸","ngsim;":"≵","nGt;":"≫⃒","ngt;":"≯","ngtr;":"≯","nGtv;":"≫̸","nhArr;":"⇎","nharr;":"↮","nhpar;":"⫲","ni;":"∋","nis;":"⋼","nisd;":"⋺","niv;":"∋","NJcy;":"Њ","njcy;":"њ","nlArr;":"⇍","nlarr;":"↚","nldr;":"‥","nlE;":"≦̸","nle;":"≰","nLeftarrow;":"⇍","nleftarrow;":"↚","nLeftrightarrow;":"⇎","nleftrightarrow;":"↮","nleq;":"≰","nleqq;":"≦̸","nleqslant;":"⩽̸","nles;":"⩽̸","nless;":"≮","nLl;":"⋘̸","nlsim;":"≴","nLt;":"≪⃒","nlt;":"≮","nltri;":"⋪","nltrie;":"⋬","nLtv;":"≪̸","nmid;":"∤","NoBreak;":"⁠","NonBreakingSpace;":" ","Nopf;":"ℕ","nopf;":"𝕟","Not;":"⫬","not;":"¬",not:"¬","NotCongruent;":"≢","NotCupCap;":"≭","NotDoubleVerticalBar;":"∦","NotElement;":"∉","NotEqual;":"≠","NotEqualTilde;":"≂̸","NotExists;":"∄","NotGreater;":"≯","NotGreaterEqual;":"≱","NotGreaterFullEqual;":"≧̸","NotGreaterGreater;":"≫̸","NotGreaterLess;":"≹","NotGreaterSlantEqual;":"⩾̸","NotGreaterTilde;":"≵","NotHumpDownHump;":"≎̸","NotHumpEqual;":"≏̸","notin;":"∉","notindot;":"⋵̸","notinE;":"⋹̸","notinva;":"∉","notinvb;":"⋷","notinvc;":"⋶","NotLeftTriangle;":"⋪","NotLeftTriangleBar;":"⧏̸","NotLeftTriangleEqual;":"⋬","NotLess;":"≮","NotLessEqual;":"≰","NotLessGreater;":"≸","NotLessLess;":"≪̸","NotLessSlantEqual;":"⩽̸","NotLessTilde;":"≴","NotNestedGreaterGreater;":"⪢̸","NotNestedLessLess;":"⪡̸","notni;":"∌","notniva;":"∌","notnivb;":"⋾","notnivc;":"⋽","NotPrecedes;":"⊀","NotPrecedesEqual;":"⪯̸","NotPrecedesSlantEqual;":"⋠","NotReverseElement;":"∌","NotRightTriangle;":"⋫","NotRightTriangleBar;":"⧐̸","NotRightTriangleEqual;":"⋭","NotSquareSubset;":"⊏̸","NotSquareSubsetEqual;":"⋢","NotSquareSuperset;":"⊐̸","NotSquareSupersetEqual;":"⋣","NotSubset;":"⊂⃒","NotSubsetEqual;":"⊈","NotSucceeds;":"⊁","NotSucceedsEqual;":"⪰̸","NotSucceedsSlantEqual;":"⋡","NotSucceedsTilde;":"≿̸","NotSuperset;":"⊃⃒","NotSupersetEqual;":"⊉","NotTilde;":"≁","NotTildeEqual;":"≄","NotTildeFullEqual;":"≇","NotTildeTilde;":"≉","NotVerticalBar;":"∤","npar;":"∦","nparallel;":"∦","nparsl;":"⫽⃥","npart;":"∂̸","npolint;":"⨔","npr;":"⊀","nprcue;":"⋠","npre;":"⪯̸","nprec;":"⊀","npreceq;":"⪯̸","nrArr;":"⇏","nrarr;":"↛","nrarrc;":"⤳̸","nrarrw;":"↝̸","nRightarrow;":"⇏","nrightarrow;":"↛","nrtri;":"⋫","nrtrie;":"⋭","nsc;":"⊁","nsccue;":"⋡","nsce;":"⪰̸","Nscr;":"𝒩","nscr;":"𝓃","nshortmid;":"∤","nshortparallel;":"∦","nsim;":"≁","nsime;":"≄","nsimeq;":"≄","nsmid;":"∤","nspar;":"∦","nsqsube;":"⋢","nsqsupe;":"⋣","nsub;":"⊄","nsubE;":"⫅̸","nsube;":"⊈","nsubset;":"⊂⃒","nsubseteq;":"⊈","nsubseteqq;":"⫅̸","nsucc;":"⊁","nsucceq;":"⪰̸","nsup;":"⊅","nsupE;":"⫆̸","nsupe;":"⊉","nsupset;":"⊃⃒","nsupseteq;":"⊉","nsupseteqq;":"⫆̸","ntgl;":"≹","Ntilde;":"Ñ",Ntilde:"Ñ","ntilde;":"ñ",ntilde:"ñ","ntlg;":"≸","ntriangleleft;":"⋪","ntrianglelefteq;":"⋬","ntriangleright;":"⋫","ntrianglerighteq;":"⋭","Nu;":"Ν","nu;":"ν","num;":"#","numero;":"№","numsp;":" ","nvap;":"≍⃒","nVDash;":"⊯","nVdash;":"⊮","nvDash;":"⊭","nvdash;":"⊬","nvge;":"≥⃒","nvgt;":">⃒","nvHarr;":"⤄","nvinfin;":"⧞","nvlArr;":"⤂","nvle;":"≤⃒","nvlt;":"<⃒","nvltrie;":"⊴⃒","nvrArr;":"⤃","nvrtrie;":"⊵⃒","nvsim;":"∼⃒","nwarhk;":"⤣","nwArr;":"⇖","nwarr;":"↖","nwarrow;":"↖","nwnear;":"⤧","Oacute;":"Ó",Oacute:"Ó","oacute;":"ó",oacute:"ó","oast;":"⊛","ocir;":"⊚","Ocirc;":"Ô",Ocirc:"Ô","ocirc;":"ô",ocirc:"ô","Ocy;":"О","ocy;":"о","odash;":"⊝","Odblac;":"Ő","odblac;":"ő","odiv;":"⨸","odot;":"⊙","odsold;":"⦼","OElig;":"Œ","oelig;":"œ","ofcir;":"⦿","Ofr;":"𝔒","ofr;":"𝔬","ogon;":"˛","Ograve;":"Ò",Ograve:"Ò","ograve;":"ò",ograve:"ò","ogt;":"⧁","ohbar;":"⦵","ohm;":"Ω","oint;":"∮","olarr;":"↺","olcir;":"⦾","olcross;":"⦻","oline;":"‾","olt;":"⧀","Omacr;":"Ō","omacr;":"ō","Omega;":"Ω","omega;":"ω","Omicron;":"Ο","omicron;":"ο","omid;":"⦶","ominus;":"⊖","Oopf;":"𝕆","oopf;":"𝕠","opar;":"⦷","OpenCurlyDoubleQuote;":"“","OpenCurlyQuote;":"‘","operp;":"⦹","oplus;":"⊕","Or;":"⩔","or;":"∨","orarr;":"↻","ord;":"⩝","order;":"ℴ","orderof;":"ℴ","ordf;":"ª",ordf:"ª","ordm;":"º",ordm:"º","origof;":"⊶","oror;":"⩖","orslope;":"⩗","orv;":"⩛","oS;":"Ⓢ","Oscr;":"𝒪","oscr;":"ℴ","Oslash;":"Ø",Oslash:"Ø","oslash;":"ø",oslash:"ø","osol;":"⊘","Otilde;":"Õ",Otilde:"Õ","otilde;":"õ",otilde:"õ","Otimes;":"⨷","otimes;":"⊗","otimesas;":"⨶","Ouml;":"Ö",Ouml:"Ö","ouml;":"ö",ouml:"ö","ovbar;":"⌽","OverBar;":"‾","OverBrace;":"⏞","OverBracket;":"⎴","OverParenthesis;":"⏜","par;":"∥","para;":"¶",para:"¶","parallel;":"∥","parsim;":"⫳","parsl;":"⫽","part;":"∂","PartialD;":"∂","Pcy;":"П","pcy;":"п","percnt;":"%","period;":".","permil;":"‰","perp;":"⊥","pertenk;":"‱","Pfr;":"𝔓","pfr;":"𝔭","Phi;":"Φ","phi;":"φ","phiv;":"ϕ","phmmat;":"ℳ","phone;":"☎","Pi;":"Π","pi;":"π","pitchfork;":"⋔","piv;":"ϖ","planck;":"ℏ","planckh;":"ℎ","plankv;":"ℏ","plus;":"+","plusacir;":"⨣","plusb;":"⊞","pluscir;":"⨢","plusdo;":"∔","plusdu;":"⨥","pluse;":"⩲","PlusMinus;":"±","plusmn;":"±",plusmn:"±","plussim;":"⨦","plustwo;":"⨧","pm;":"±","Poincareplane;":"ℌ","pointint;":"⨕","Popf;":"ℙ","popf;":"𝕡","pound;":"£",pound:"£","Pr;":"⪻","pr;":"≺","prap;":"⪷","prcue;":"≼","prE;":"⪳","pre;":"⪯","prec;":"≺","precapprox;":"⪷","preccurlyeq;":"≼","Precedes;":"≺","PrecedesEqual;":"⪯","PrecedesSlantEqual;":"≼","PrecedesTilde;":"≾","preceq;":"⪯","precnapprox;":"⪹","precneqq;":"⪵","precnsim;":"⋨","precsim;":"≾","Prime;":"″","prime;":"′","primes;":"ℙ","prnap;":"⪹","prnE;":"⪵","prnsim;":"⋨","prod;":"∏","Product;":"∏","profalar;":"⌮","profline;":"⌒","profsurf;":"⌓","prop;":"∝","Proportion;":"∷","Proportional;":"∝","propto;":"∝","prsim;":"≾","prurel;":"⊰","Pscr;":"𝒫","pscr;":"𝓅","Psi;":"Ψ","psi;":"ψ","puncsp;":" ","Qfr;":"𝔔","qfr;":"𝔮","qint;":"⨌","Qopf;":"ℚ","qopf;":"𝕢","qprime;":"⁗","Qscr;":"𝒬","qscr;":"𝓆","quaternions;":"ℍ","quatint;":"⨖","quest;":"?","questeq;":"≟","QUOT;":'"',QUOT:'"',"quot;":'"',quot:'"',"rAarr;":"⇛","race;":"∽̱","Racute;":"Ŕ","racute;":"ŕ","radic;":"√","raemptyv;":"⦳","Rang;":"⟫","rang;":"⟩","rangd;":"⦒","range;":"⦥","rangle;":"⟩","raquo;":"»",raquo:"»","Rarr;":"↠","rArr;":"⇒","rarr;":"→","rarrap;":"⥵","rarrb;":"⇥","rarrbfs;":"⤠","rarrc;":"⤳","rarrfs;":"⤞","rarrhk;":"↪","rarrlp;":"↬","rarrpl;":"⥅","rarrsim;":"⥴","Rarrtl;":"⤖","rarrtl;":"↣","rarrw;":"↝","rAtail;":"⤜","ratail;":"⤚","ratio;":"∶","rationals;":"ℚ","RBarr;":"⤐","rBarr;":"⤏","rbarr;":"⤍","rbbrk;":"❳","rbrace;":"}","rbrack;":"]","rbrke;":"⦌","rbrksld;":"⦎","rbrkslu;":"⦐","Rcaron;":"Ř","rcaron;":"ř","Rcedil;":"Ŗ","rcedil;":"ŗ","rceil;":"⌉","rcub;":"}","Rcy;":"Р","rcy;":"р","rdca;":"⤷","rdldhar;":"⥩","rdquo;":"”","rdquor;":"”","rdsh;":"↳","Re;":"ℜ","real;":"ℜ","realine;":"ℛ","realpart;":"ℜ","reals;":"ℝ","rect;":"▭","REG;":"®",REG:"®","reg;":"®",reg:"®","ReverseElement;":"∋","ReverseEquilibrium;":"⇋","ReverseUpEquilibrium;":"⥯","rfisht;":"⥽","rfloor;":"⌋","Rfr;":"ℜ","rfr;":"𝔯","rHar;":"⥤","rhard;":"⇁","rharu;":"⇀","rharul;":"⥬","Rho;":"Ρ","rho;":"ρ","rhov;":"ϱ","RightAngleBracket;":"⟩","RightArrow;":"→","Rightarrow;":"⇒","rightarrow;":"→","RightArrowBar;":"⇥","RightArrowLeftArrow;":"⇄","rightarrowtail;":"↣","RightCeiling;":"⌉","RightDoubleBracket;":"⟧","RightDownTeeVector;":"⥝","RightDownVector;":"⇂","RightDownVectorBar;":"⥕","RightFloor;":"⌋","rightharpoondown;":"⇁","rightharpoonup;":"⇀","rightleftarrows;":"⇄","rightleftharpoons;":"⇌","rightrightarrows;":"⇉","rightsquigarrow;":"↝","RightTee;":"⊢","RightTeeArrow;":"↦","RightTeeVector;":"⥛","rightthreetimes;":"⋌","RightTriangle;":"⊳","RightTriangleBar;":"⧐","RightTriangleEqual;":"⊵","RightUpDownVector;":"⥏","RightUpTeeVector;":"⥜","RightUpVector;":"↾","RightUpVectorBar;":"⥔","RightVector;":"⇀","RightVectorBar;":"⥓","ring;":"˚","risingdotseq;":"≓","rlarr;":"⇄","rlhar;":"⇌","rlm;":"‏","rmoust;":"⎱","rmoustache;":"⎱","rnmid;":"⫮","roang;":"⟭","roarr;":"⇾","robrk;":"⟧","ropar;":"⦆","Ropf;":"ℝ","ropf;":"𝕣","roplus;":"⨮","rotimes;":"⨵","RoundImplies;":"⥰","rpar;":")","rpargt;":"⦔","rppolint;":"⨒","rrarr;":"⇉","Rrightarrow;":"⇛","rsaquo;":"›","Rscr;":"ℛ","rscr;":"𝓇","Rsh;":"↱","rsh;":"↱","rsqb;":"]","rsquo;":"’","rsquor;":"’","rthree;":"⋌","rtimes;":"⋊","rtri;":"▹","rtrie;":"⊵","rtrif;":"▸","rtriltri;":"⧎","RuleDelayed;":"⧴","ruluhar;":"⥨","rx;":"℞","Sacute;":"Ś","sacute;":"ś","sbquo;":"‚","Sc;":"⪼","sc;":"≻","scap;":"⪸","Scaron;":"Š","scaron;":"š","sccue;":"≽","scE;":"⪴","sce;":"⪰","Scedil;":"Ş","scedil;":"ş","Scirc;":"Ŝ","scirc;":"ŝ","scnap;":"⪺","scnE;":"⪶","scnsim;":"⋩","scpolint;":"⨓","scsim;":"≿","Scy;":"С","scy;":"с","sdot;":"⋅","sdotb;":"⊡","sdote;":"⩦","searhk;":"⤥","seArr;":"⇘","searr;":"↘","searrow;":"↘","sect;":"§",sect:"§","semi;":";","seswar;":"⤩","setminus;":"∖","setmn;":"∖","sext;":"✶","Sfr;":"𝔖","sfr;":"𝔰","sfrown;":"⌢","sharp;":"♯","SHCHcy;":"Щ","shchcy;":"щ","SHcy;":"Ш","shcy;":"ш","ShortDownArrow;":"↓","ShortLeftArrow;":"←","shortmid;":"∣","shortparallel;":"∥","ShortRightArrow;":"→","ShortUpArrow;":"↑","shy;":"­",shy:"­","Sigma;":"Σ","sigma;":"σ","sigmaf;":"ς","sigmav;":"ς","sim;":"∼","simdot;":"⩪","sime;":"≃","simeq;":"≃","simg;":"⪞","simgE;":"⪠","siml;":"⪝","simlE;":"⪟","simne;":"≆","simplus;":"⨤","simrarr;":"⥲","slarr;":"←","SmallCircle;":"∘","smallsetminus;":"∖","smashp;":"⨳","smeparsl;":"⧤","smid;":"∣","smile;":"⌣","smt;":"⪪","smte;":"⪬","smtes;":"⪬︀","SOFTcy;":"Ь","softcy;":"ь","sol;":"/","solb;":"⧄","solbar;":"⌿","Sopf;":"𝕊","sopf;":"𝕤","spades;":"♠","spadesuit;":"♠","spar;":"∥","sqcap;":"⊓","sqcaps;":"⊓︀","sqcup;":"⊔","sqcups;":"⊔︀","Sqrt;":"√","sqsub;":"⊏","sqsube;":"⊑","sqsubset;":"⊏","sqsubseteq;":"⊑","sqsup;":"⊐","sqsupe;":"⊒","sqsupset;":"⊐","sqsupseteq;":"⊒","squ;":"□","Square;":"□","square;":"□","SquareIntersection;":"⊓","SquareSubset;":"⊏","SquareSubsetEqual;":"⊑","SquareSuperset;":"⊐","SquareSupersetEqual;":"⊒","SquareUnion;":"⊔","squarf;":"▪","squf;":"▪","srarr;":"→","Sscr;":"𝒮","sscr;":"𝓈","ssetmn;":"∖","ssmile;":"⌣","sstarf;":"⋆","Star;":"⋆","star;":"☆","starf;":"★","straightepsilon;":"ϵ","straightphi;":"ϕ","strns;":"¯","Sub;":"⋐","sub;":"⊂","subdot;":"⪽","subE;":"⫅","sube;":"⊆","subedot;":"⫃","submult;":"⫁","subnE;":"⫋","subne;":"⊊","subplus;":"⪿","subrarr;":"⥹","Subset;":"⋐","subset;":"⊂","subseteq;":"⊆","subseteqq;":"⫅","SubsetEqual;":"⊆","subsetneq;":"⊊","subsetneqq;":"⫋","subsim;":"⫇","subsub;":"⫕","subsup;":"⫓","succ;":"≻","succapprox;":"⪸","succcurlyeq;":"≽","Succeeds;":"≻","SucceedsEqual;":"⪰","SucceedsSlantEqual;":"≽","SucceedsTilde;":"≿","succeq;":"⪰","succnapprox;":"⪺","succneqq;":"⪶","succnsim;":"⋩","succsim;":"≿","SuchThat;":"∋","Sum;":"∑","sum;":"∑","sung;":"♪","Sup;":"⋑","sup;":"⊃","sup1;":"¹",sup1:"¹","sup2;":"²",sup2:"²","sup3;":"³",sup3:"³","supdot;":"⪾","supdsub;":"⫘","supE;":"⫆","supe;":"⊇","supedot;":"⫄","Superset;":"⊃","SupersetEqual;":"⊇","suphsol;":"⟉","suphsub;":"⫗","suplarr;":"⥻","supmult;":"⫂","supnE;":"⫌","supne;":"⊋","supplus;":"⫀","Supset;":"⋑","supset;":"⊃","supseteq;":"⊇","supseteqq;":"⫆","supsetneq;":"⊋","supsetneqq;":"⫌","supsim;":"⫈","supsub;":"⫔","supsup;":"⫖","swarhk;":"⤦","swArr;":"⇙","swarr;":"↙","swarrow;":"↙","swnwar;":"⤪","szlig;":"ß",szlig:"ß","Tab;":"\t","target;":"⌖","Tau;":"Τ","tau;":"τ","tbrk;":"⎴","Tcaron;":"Ť","tcaron;":"ť","Tcedil;":"Ţ","tcedil;":"ţ","Tcy;":"Т","tcy;":"т","tdot;":"⃛","telrec;":"⌕","Tfr;":"𝔗","tfr;":"𝔱","there4;":"∴","Therefore;":"∴","therefore;":"∴","Theta;":"Θ","theta;":"θ","thetasym;":"ϑ","thetav;":"ϑ","thickapprox;":"≈","thicksim;":"∼","ThickSpace;":"  ","thinsp;":" ","ThinSpace;":" ","thkap;":"≈","thksim;":"∼","THORN;":"Þ",THORN:"Þ","thorn;":"þ",thorn:"þ","Tilde;":"∼","tilde;":"˜","TildeEqual;":"≃","TildeFullEqual;":"≅","TildeTilde;":"≈","times;":"×",times:"×","timesb;":"⊠","timesbar;":"⨱","timesd;":"⨰","tint;":"∭","toea;":"⤨","top;":"⊤","topbot;":"⌶","topcir;":"⫱","Topf;":"𝕋","topf;":"𝕥","topfork;":"⫚","tosa;":"⤩","tprime;":"‴","TRADE;":"™","trade;":"™","triangle;":"▵","triangledown;":"▿","triangleleft;":"◃","trianglelefteq;":"⊴","triangleq;":"≜","triangleright;":"▹","trianglerighteq;":"⊵","tridot;":"◬","trie;":"≜","triminus;":"⨺","TripleDot;":"⃛","triplus;":"⨹","trisb;":"⧍","tritime;":"⨻","trpezium;":"⏢","Tscr;":"𝒯","tscr;":"𝓉","TScy;":"Ц","tscy;":"ц","TSHcy;":"Ћ","tshcy;":"ћ","Tstrok;":"Ŧ","tstrok;":"ŧ","twixt;":"≬","twoheadleftarrow;":"↞","twoheadrightarrow;":"↠","Uacute;":"Ú",Uacute:"Ú","uacute;":"ú",uacute:"ú","Uarr;":"↟","uArr;":"⇑","uarr;":"↑","Uarrocir;":"⥉","Ubrcy;":"Ў","ubrcy;":"ў","Ubreve;":"Ŭ","ubreve;":"ŭ","Ucirc;":"Û",Ucirc:"Û","ucirc;":"û",ucirc:"û","Ucy;":"У","ucy;":"у","udarr;":"⇅","Udblac;":"Ű","udblac;":"ű","udhar;":"⥮","ufisht;":"⥾","Ufr;":"𝔘","ufr;":"𝔲","Ugrave;":"Ù",Ugrave:"Ù","ugrave;":"ù",ugrave:"ù","uHar;":"⥣","uharl;":"↿","uharr;":"↾","uhblk;":"▀","ulcorn;":"⌜","ulcorner;":"⌜","ulcrop;":"⌏","ultri;":"◸","Umacr;":"Ū","umacr;":"ū","uml;":"¨",uml:"¨","UnderBar;":"_","UnderBrace;":"⏟","UnderBracket;":"⎵","UnderParenthesis;":"⏝","Union;":"⋃","UnionPlus;":"⊎","Uogon;":"Ų","uogon;":"ų","Uopf;":"𝕌","uopf;":"𝕦","UpArrow;":"↑","Uparrow;":"⇑","uparrow;":"↑","UpArrowBar;":"⤒","UpArrowDownArrow;":"⇅","UpDownArrow;":"↕","Updownarrow;":"⇕","updownarrow;":"↕","UpEquilibrium;":"⥮","upharpoonleft;":"↿","upharpoonright;":"↾","uplus;":"⊎","UpperLeftArrow;":"↖","UpperRightArrow;":"↗","Upsi;":"ϒ","upsi;":"υ","upsih;":"ϒ","Upsilon;":"Υ","upsilon;":"υ","UpTee;":"⊥","UpTeeArrow;":"↥","upuparrows;":"⇈","urcorn;":"⌝","urcorner;":"⌝","urcrop;":"⌎","Uring;":"Ů","uring;":"ů","urtri;":"◹","Uscr;":"𝒰","uscr;":"𝓊","utdot;":"⋰","Utilde;":"Ũ","utilde;":"ũ","utri;":"▵","utrif;":"▴","uuarr;":"⇈","Uuml;":"Ü",Uuml:"Ü","uuml;":"ü",uuml:"ü","uwangle;":"⦧","vangrt;":"⦜","varepsilon;":"ϵ","varkappa;":"ϰ","varnothing;":"∅","varphi;":"ϕ","varpi;":"ϖ","varpropto;":"∝","vArr;":"⇕","varr;":"↕","varrho;":"ϱ","varsigma;":"ς","varsubsetneq;":"⊊︀","varsubsetneqq;":"⫋︀","varsupsetneq;":"⊋︀","varsupsetneqq;":"⫌︀","vartheta;":"ϑ","vartriangleleft;":"⊲","vartriangleright;":"⊳","Vbar;":"⫫","vBar;":"⫨","vBarv;":"⫩","Vcy;":"В","vcy;":"в","VDash;":"⊫","Vdash;":"⊩","vDash;":"⊨","vdash;":"⊢","Vdashl;":"⫦","Vee;":"⋁","vee;":"∨","veebar;":"⊻","veeeq;":"≚","vellip;":"⋮","Verbar;":"‖","verbar;":"|","Vert;":"‖","vert;":"|","VerticalBar;":"∣","VerticalLine;":"|","VerticalSeparator;":"❘","VerticalTilde;":"≀","VeryThinSpace;":" ","Vfr;":"𝔙","vfr;":"𝔳","vltri;":"⊲","vnsub;":"⊂⃒","vnsup;":"⊃⃒","Vopf;":"𝕍","vopf;":"𝕧","vprop;":"∝","vrtri;":"⊳","Vscr;":"𝒱","vscr;":"𝓋","vsubnE;":"⫋︀","vsubne;":"⊊︀","vsupnE;":"⫌︀","vsupne;":"⊋︀","Vvdash;":"⊪","vzigzag;":"⦚","Wcirc;":"Ŵ","wcirc;":"ŵ","wedbar;":"⩟","Wedge;":"⋀","wedge;":"∧","wedgeq;":"≙","weierp;":"℘","Wfr;":"𝔚","wfr;":"𝔴","Wopf;":"𝕎","wopf;":"𝕨","wp;":"℘","wr;":"≀","wreath;":"≀","Wscr;":"𝒲","wscr;":"𝓌","xcap;":"⋂","xcirc;":"◯","xcup;":"⋃","xdtri;":"▽","Xfr;":"𝔛","xfr;":"𝔵","xhArr;":"⟺","xharr;":"⟷","Xi;":"Ξ","xi;":"ξ","xlArr;":"⟸","xlarr;":"⟵","xmap;":"⟼","xnis;":"⋻","xodot;":"⨀","Xopf;":"𝕏","xopf;":"𝕩","xoplus;":"⨁","xotime;":"⨂","xrArr;":"⟹","xrarr;":"⟶","Xscr;":"𝒳","xscr;":"𝓍","xsqcup;":"⨆","xuplus;":"⨄","xutri;":"△","xvee;":"⋁","xwedge;":"⋀","Yacute;":"Ý",Yacute:"Ý","yacute;":"ý",yacute:"ý","YAcy;":"Я","yacy;":"я","Ycirc;":"Ŷ","ycirc;":"ŷ","Ycy;":"Ы","ycy;":"ы","yen;":"¥",yen:"¥","Yfr;":"𝔜","yfr;":"𝔶","YIcy;":"Ї","yicy;":"ї","Yopf;":"𝕐","yopf;":"𝕪","Yscr;":"𝒴","yscr;":"𝓎","YUcy;":"Ю","yucy;":"ю","Yuml;":"Ÿ","yuml;":"ÿ",yuml:"ÿ","Zacute;":"Ź","zacute;":"ź","Zcaron;":"Ž","zcaron;":"ž","Zcy;":"З","zcy;":"з","Zdot;":"Ż","zdot;":"ż","zeetrf;":"ℨ","ZeroWidthSpace;":"​","Zeta;":"Ζ","zeta;":"ζ","Zfr;":"ℨ","zfr;":"𝔷","ZHcy;":"Ж","zhcy;":"ж","zigrarr;":"⇝","Zopf;":"ℤ","zopf;":"𝕫","Zscr;":"𝒵","zscr;":"𝓏","zwj;":"‍","zwnj;":"‌"};function Le(e,t){if(e.length<t.length)return!1;for(var n=0;n<t.length;n++)if(e[n]!==t[n])return!1;return!0}function Ee(e,t){var n=e.length-t.length;return n>0?e.lastIndexOf(t)===n:0===n&&e===t}var Ae="a".charCodeAt(0),Re="z".charCodeAt(0),ze="A".charCodeAt(0),Ie="Z".charCodeAt(0),He="0".charCodeAt(0),Ue="9".charCodeAt(0);function Ce(e,t){var n=e.charCodeAt(t);return Ae<=n&&n<=Re||ze<=n&&n<=Ie||He<=n&&n<=Ue}var We=function(){function e(e,t){var n=this;this.id=e,this._tags=[],this._tagMap={},this._attributeMap={},this._valueSetMap={},this._tags=t.tags||[],this._globalAttributes=t.globalAttributes||[],this._tags.forEach(function(e){n._tagMap[e.name]=e,e.attributes&&e.attributes.forEach(function(e){n._attributeMap[e.name]=e})}),this._globalAttributes.forEach(function(e){n._attributeMap[e.name]=e}),t.valueSets&&t.valueSets.forEach(function(e){n._valueSetMap[e.name]=e.values})}return e.prototype.isApplicable=function(){return!0},e.prototype.getId=function(){return this.id},e.prototype.provideTags=function(){return this._tags},e.prototype.provideAttributes=function(e){var t=[],n=function(e){t.push(e)};return this._tagMap[e]&&this._tagMap[e].attributes.forEach(function(e){n(e)}),this._globalAttributes.forEach(function(e){n(e)}),t},e.prototype.provideValues=function(e,t){var n=this,i=[],r=function(e){e.forEach(function(e){e.name===t&&(e.values&&e.values.forEach(function(e){i.push(e)}),e.valueSet&&n._valueSetMap[e.valueSet]&&n._valueSetMap[e.valueSet].forEach(function(e){i.push(e)}))})};return this._tagMap[e]?(r(this._tagMap[e].attributes),r(this._globalAttributes),i):[]},e}();function De(e,t){var n={kind:t?"markdown":"plaintext",value:""};if(e.description){var i=function(e){if(e)return"string"==typeof e?{kind:"markdown",value:e}:{kind:"markdown",value:e.value}}(e.description);i&&(n.value+=i.value)}return e.references&&e.references.length>0&&(n.value+="\n\n",n.value+=t?e.references.map(function(e){return"["+e.name+"]("+e.url+")"}).join(" | "):e.references.map(function(e){return e.name+": "+e.url}).join("\n")),n}var qe=[new We("html5",{version:1.1,tags:[{name:"html",description:{kind:"markdown",value:"The html element represents the root of an HTML document."},attributes:[{name:"manifest",description:{kind:"markdown",value:"Specifies the URI of a resource manifest indicating resources that should be cached locally. See [Using the application cache](https://developer.mozilla.org/en-US/docs/Web/HTML/Using_the_application_cache) for details."}},{name:"version",description:'Specifies the version of the HTML [Document Type Definition](https://developer.mozilla.org/en-US/docs/Glossary/DTD "Document Type Definition: In HTML, the doctype is the required "<!DOCTYPE html>" preamble found at the top of all documents. Its sole purpose is to prevent a browser from switching into so-called “quirks mode” when rendering a document; that is, the "<!DOCTYPE html>" doctype ensures that the browser makes a best-effort attempt at following the relevant specifications, rather than using a different rendering mode that is incompatible with some specifications.") that governs the current document. This attribute is not needed, because it is redundant with the version information in the document type declaration.'},{name:"xmlns",description:'Specifies the XML Namespace of the document. Default value is `"http://www.w3.org/1999/xhtml"`. This is required in documents parsed with XML parsers, and optional in text/html documents.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/html"}]},{name:"head",description:{kind:"markdown",value:"The head element represents a collection of metadata for the Document."},attributes:[{name:"profile",description:"The URIs of one or more metadata profiles, separated by white space."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/head"}]},{name:"title",description:{kind:"markdown",value:"The title element represents the document's title or name. Authors should use titles that identify their documents even when they are used out of context, for example in a user's history or bookmarks, or in search results. The document's title is often different from its first heading, since the first heading does not have to stand alone when taken out of context."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/title"}]},{name:"base",description:{kind:"markdown",value:"The base element allows authors to specify the document base URL for the purposes of resolving relative URLs, and the name of the default browsing context for the purposes of following hyperlinks. The element does not represent any content beyond this information."},attributes:[{name:"href",description:{kind:"markdown",value:"The base URL to be used throughout the document for relative URL addresses. If this attribute is specified, this element must come before any other elements with attributes whose values are URLs. Absolute and relative URLs are allowed."}},{name:"target",description:{kind:"markdown",value:"A name or keyword indicating the default location to display the result when hyperlinks or forms cause navigation, for elements that do not have an explicit target reference. It is a name of, or keyword for, a _browsing context_ (for example: tab, window, or inline frame). The following keywords have special meanings:\n\n* `_self`: Load the result into the same browsing context as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the result into a new unnamed browsing context.\n* `_parent`: Load the result into the parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: Load the result into the top-level browsing context (that is, the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`.\n\nIf this attribute is specified, this element must come before any other elements with attributes whose values are URLs."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/base"}]},{name:"link",description:{kind:"markdown",value:"The link element allows authors to link their document to other resources."},attributes:[{name:"href",description:{kind:"markdown",value:'This attribute specifies the [URL](https://developer.mozilla.org/en-US/docs/Glossary/URL "URL: Uniform Resource Locator (URL) is a text string specifying where a resource can be found on the Internet.") of the linked resource. A URL can be absolute or relative.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates whether [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") must be used when fetching the resource. [CORS-enabled images](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_Enabled_Image) can be reused in the [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being _tainted_. The allowed values are:\n\n`anonymous`\n\nA cross-origin request (i.e. with an [`Origin`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Origin "The Origin request header indicates where a fetch originates from. It doesn\'t include any path information, but only the server name. It is sent with CORS requests, as well as with POST requests. It is similar to the Referer header, but, unlike this header, it doesn\'t disclose the whole path.") HTTP header) is performed, but no credential is sent (i.e. no cookie, X.509 certificate, or HTTP Basic authentication). If the server does not give credentials to the origin site (by not setting the [`Access-Control-Allow-Origin`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin "The Access-Control-Allow-Origin response header indicates whether the response can be shared with requesting code from the given origin.") HTTP header) the image will be tainted and its usage restricted.\n\n`use-credentials`\n\nA cross-origin request (i.e. with an `Origin` HTTP header) is performed along with a credential sent (i.e. a cookie, certificate, and/or HTTP Basic authentication is performed). If the server does not give credentials to the origin site (through [`Access-Control-Allow-Credentials`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials "The Access-Control-Allow-Credentials response header tells browsers whether to expose the response to frontend JavaScript code when the request\'s credentials mode (Request.credentials) is "include".") HTTP header), the resource will be _tainted_ and its usage restricted.\n\nIf the attribute is not present, the resource is fetched without a [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") request (i.e. without sending the `Origin` HTTP header), preventing its non-tainted usage. If invalid, it is handled as if the enumerated keyword **anonymous** was used. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) for additional information.'}},{name:"rel",description:{kind:"markdown",value:"This attribute names a relationship of the linked document to the current document. The attribute must be a space-separated list of the [link types values](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types)."}},{name:"media",description:{kind:"markdown",value:"This attribute specifies the media that the linked resource applies to. Its value must be a media type / [media query](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries). This attribute is mainly useful when linking to external stylesheets — it allows the user agent to pick the best adapted one for the device it runs on.\n\n**Notes:**\n\n* In HTML 4, this can only be a simple white-space-separated list of media description literals, i.e., [media types and groups](https://developer.mozilla.org/en-US/docs/Web/CSS/@media), where defined and allowed as values for this attribute, such as `print`, `screen`, `aural`, `braille`. HTML5 extended this to any kind of [media queries](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries), which are a superset of the allowed values of HTML 4.\n* Browsers not supporting [CSS3 Media Queries](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries) won't necessarily recognize the adequate link; do not forget to set fallback links, the restricted set of media queries defined in HTML 4."}},{name:"hreflang",description:{kind:"markdown",value:"This attribute indicates the language of the linked resource. It is purely advisory. Allowed values are determined by [BCP47](https://www.ietf.org/rfc/bcp/bcp47.txt). Use this attribute only if the [`href`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href) attribute is present."}},{name:"type",description:{kind:"markdown",value:'This attribute is used to define the type of the content linked to. The value of the attribute should be a MIME type such as **text/html**, **text/css**, and so on. The common use of this attribute is to define the type of stylesheet being referenced (such as **text/css**), but given that CSS is the only stylesheet language used on the web, not only is it possible to omit the `type` attribute, but is actually now recommended practice. It is also used on `rel="preload"` link types, to make sure the browser only downloads file types that it supports.'}},{name:"sizes",description:{kind:"markdown",value:"This attribute defines the sizes of the icons for visual media contained in the resource. It must be present only if the [`rel`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link#attr-rel) contains a value of `icon` or a non-standard type such as Apple's `apple-touch-icon`. It may have the following values:\n\n* `any`, meaning that the icon can be scaled to any size as it is in a vector format, like `image/svg+xml`.\n* a white-space separated list of sizes, each in the format `_<width in pixels>_x_<height in pixels>_` or `_<width in pixels>_X_<height in pixels>_`. Each of these sizes must be contained in the resource.\n\n**Note:** Most icon formats are only able to store one single icon; therefore most of the time the [`sizes`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-sizes) contains only one entry. MS's ICO format does, as well as Apple's ICNS. ICO is more ubiquitous; you should definitely use it."}},{name:"as",description:'This attribute is only used when `rel="preload"` or `rel="prefetch"` has been set on the `<link>` element. It specifies the type of content being loaded by the `<link>`, which is necessary for content prioritization, request matching, application of correct [content security policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP), and setting of correct [`Accept`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept "The Accept request HTTP header advertises which content types, expressed as MIME types, the client is able to understand. Using content negotiation, the server then selects one of the proposals, uses it and informs the client of its choice with the Content-Type response header. Browsers set adequate values for this header depending on the context where the request is done: when fetching a CSS stylesheet a different value is set for the request than when fetching an image, video or a script.") request header.'},{name:"importance",description:"Indicates the relative importance of the resource. Priority hints are delegated using the values:"},{name:"importance",description:'**`auto`**: Indicates **no preference**. The browser may use its own heuristics to decide the priority of the resource.\n\n**`high`**: Indicates to the browser that the resource is of **high** priority.\n\n**`low`**: Indicates to the browser that the resource is of **low** priority.\n\n**Note:** The `importance` attribute may only be used for the `<link>` element if `rel="preload"` or `rel="prefetch"` is present.'},{name:"integrity",description:"Contains inline metadata — a base64-encoded cryptographic hash of the resource (file) you’re telling the browser to fetch. The browser can use this to verify that the fetched resource has been delivered free of unexpected manipulation. See [Subresource Integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity)."},{name:"referrerpolicy",description:'A string indicating which referrer to use when fetching the resource:\n\n* `no-referrer` means that the [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` means that no [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will be sent when navigating to an origin without TLS (HTTPS). This is a user agent’s default behavior, if no policy is otherwise specified.\n* `origin` means that the referrer will be the origin of the page, which is roughly the scheme, the host, and the port.\n* `origin-when-cross-origin` means that navigating to other origins will be limited to the scheme, the host, and the port, while navigating on the same origin will include the referrer\'s path.\n* `unsafe-url` means that the referrer will include the origin and the path (but not the fragment, password, or username). This case is unsafe because it can leak origins and paths from TLS-protected resources to insecure origins.'},{name:"title",description:'The `title` attribute has special semantics on the `<link>` element. When used on a `<link rel="stylesheet">` it defines a [preferred or an alternate stylesheet](https://developer.mozilla.org/en-US/docs/Web/CSS/Alternative_style_sheets). Incorrectly using it may [cause the stylesheet to be ignored](https://developer.mozilla.org/en-US/docs/Correctly_Using_Titles_With_External_Stylesheets).'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/link"}]},{name:"meta",description:{kind:"markdown",value:"The meta element represents various kinds of metadata that cannot be expressed using the title, base, link, style, and script elements."},attributes:[{name:"name",description:{kind:"markdown",value:'This attribute defines the name of a piece of document-level metadata. It should not be set if one of the attributes [`itemprop`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-itemprop), [`http-equiv`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-http-equiv) or [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) is also set.\n\nThis metadata name is associated with the value contained by the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute. The possible values for the name attribute are:\n\n* `application-name` which defines the name of the application running in the web page.\n \n **Note:**\n \n * Browsers may use this to identify the application. It is different from the [`<title>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/title "The HTML Title element (<title>) defines the document\'s title that is shown in a browser\'s title bar or a page\'s tab.") element, which usually contain the application name, but may also contain information like the document name or a status.\n * Simple web pages shouldn\'t define an application-name.\n \n* `author` which defines the name of the document\'s author.\n* `description` which contains a short and accurate summary of the content of the page. Several browsers, like Firefox and Opera, use this as the default description of bookmarked pages.\n* `generator` which contains the identifier of the software that generated the page.\n* `keywords` which contains words relevant to the page\'s content separated by commas.\n* `referrer` which controls the [`Referer` HTTP header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer) attached to requests sent from the document:\n \n Values for the `content` attribute of `<meta name="referrer">`\n \n `no-referrer`\n \n Do not send a HTTP `Referrer` header.\n \n `origin`\n \n Send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the document.\n \n `no-referrer-when-downgrade`\n \n Send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) as a referrer to URLs as secure as the current page, (https→https), but does not send a referrer to less secure URLs (https→http). This is the default behaviour.\n \n `origin-when-cross-origin`\n \n Send the full URL (stripped of parameters) for same-origin requests, but only send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) for other cases.\n \n `same-origin`\n \n A referrer will be sent for [same-site origins](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy), but cross-origin requests will contain no referrer information.\n \n `strict-origin`\n \n Only send the origin of the document as the referrer to a-priori as-much-secure destination (HTTPS->HTTPS), but don\'t send it to a less secure destination (HTTPS->HTTP).\n \n `strict-origin-when-cross-origin`\n \n Send a full URL when performing a same-origin request, only send the origin of the document to a-priori as-much-secure destination (HTTPS->HTTPS), and send no header to a less secure destination (HTTPS->HTTP).\n \n `unsafe-URL`\n \n Send the full URL (stripped of parameters) for same-origin or cross-origin requests.\n \n **Notes:**\n \n * Some browsers support the deprecated values of `always`, `default`, and `never` for referrer.\n * Dynamically inserting `<meta name="referrer">` (with [`document.write`](https://developer.mozilla.org/en-US/docs/Web/API/Document/write) or [`appendChild`](https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild)) makes the referrer behaviour unpredictable.\n * When several conflicting policies are defined, the no-referrer policy is applied.\n \n\nThis attribute may also have a value taken from the extended list defined on [WHATWG Wiki MetaExtensions page](https://wiki.whatwg.org/wiki/MetaExtensions). Although none have been formally accepted yet, a few commonly used names are:\n\n* `creator` which defines the name of the creator of the document, such as an organization or institution. If there are more than one, several [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") elements should be used.\n* `googlebot`, a synonym of `robots`, is only followed by Googlebot (the indexing crawler for Google).\n* `publisher` which defines the name of the document\'s publisher.\n* `robots` which defines the behaviour that cooperative crawlers, or "robots", should use with the page. It is a comma-separated list of the values below:\n \n Values for the content of `<meta name="robots">`\n \n Value\n \n Description\n \n Used by\n \n `index`\n \n Allows the robot to index the page (default).\n \n All\n \n `noindex`\n \n Requests the robot to not index the page.\n \n All\n \n `follow`\n \n Allows the robot to follow the links on the page (default).\n \n All\n \n `nofollow`\n \n Requests the robot to not follow the links on the page.\n \n All\n \n `none`\n \n Equivalent to `noindex, nofollow`\n \n [Google](https://support.google.com/webmasters/answer/79812)\n \n `noodp`\n \n Prevents using the [Open Directory Project](https://www.dmoz.org/) description, if any, as the page description in search engine results.\n \n [Google](https://support.google.com/webmasters/answer/35624#nodmoz), [Yahoo](https://help.yahoo.com/kb/search-for-desktop/meta-tags-robotstxt-yahoo-search-sln2213.html#cont5), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `noarchive`\n \n Requests the search engine not to cache the page content.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives), [Yahoo](https://help.yahoo.com/kb/search-for-desktop/SLN2213.html), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `nosnippet`\n \n Prevents displaying any description of the page in search engine results.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `noimageindex`\n \n Requests this page not to appear as the referring page of an indexed image.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives)\n \n `nocache`\n \n Synonym of `noarchive`.\n \n [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n **Notes:**\n \n * Only cooperative robots follow these rules. Do not expect to prevent e-mail harvesters with them.\n * The robot still needs to access the page in order to read these rules. To prevent bandwidth consumption, use a _[robots.txt](https://developer.mozilla.org/en-US/docs/Glossary/robots.txt "robots.txt: Robots.txt is a file which is usually placed in the root of any website. It decides whether crawlers are permitted or forbidden access to the web site.")_ file.\n * If you want to remove a page, `noindex` will work, but only after the robot visits the page again. Ensure that the `robots.txt` file is not preventing revisits.\n * Some values are mutually exclusive, like `index` and `noindex`, or `follow` and `nofollow`. In these cases the robot\'s behaviour is undefined and may vary between them.\n * Some crawler robots, like Google, Yahoo and Bing, support the same values for the HTTP header `X-Robots-Tag`; this allows non-HTML documents like images to use these rules.\n \n* `slurp`, is a synonym of `robots`, but only for Slurp - the crawler for Yahoo Search.\n* `viewport`, which gives hints about the size of the initial size of the [viewport](https://developer.mozilla.org/en-US/docs/Glossary/viewport "viewport: A viewport represents a polygonal (normally rectangular) area in computer graphics that is currently being viewed. In web browser terms, it refers to the part of the document you\'re viewing which is currently visible in its window (or the screen, if the document is being viewed in full screen mode). Content outside the viewport is not visible onscreen until scrolled into view."). Used by mobile devices only.\n \n Values for the content of `<meta name="viewport">`\n \n Value\n \n Possible subvalues\n \n Description\n \n `width`\n \n A positive integer number, or the text `device-width`\n \n Defines the pixel width of the viewport that you want the web site to be rendered at.\n \n `height`\n \n A positive integer, or the text `device-height`\n \n Defines the height of the viewport. Not used by any browser.\n \n `initial-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the ratio between the device width (`device-width` in portrait mode or `device-height` in landscape mode) and the viewport size.\n \n `maximum-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the maximum amount to zoom in. It must be greater or equal to the `minimum-scale` or the behaviour is undefined. Browser settings can ignore this rule and iOS10+ ignores it by default.\n \n `minimum-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the minimum zoom level. It must be smaller or equal to the `maximum-scale` or the behaviour is undefined. Browser settings can ignore this rule and iOS10+ ignores it by default.\n \n `user-scalable`\n \n `yes` or `no`\n \n If set to `no`, the user is not able to zoom in the webpage. The default is `yes`. Browser settings can ignore this rule, and iOS10+ ignores it by default.\n \n Specification\n \n Status\n \n Comment\n \n [CSS Device Adaptation \n The definition of \'<meta name="viewport">\' in that specification.](https://drafts.csswg.org/css-device-adapt/#viewport-meta)\n \n Working Draft\n \n Non-normatively describes the Viewport META element\n \n See also: [`@viewport`](https://developer.mozilla.org/en-US/docs/Web/CSS/@viewport "The @viewport CSS at-rule lets you configure the viewport through which the document is viewed. It\'s primarily used for mobile devices, but is also used by desktop browsers that support features like "snap to edge" (such as Microsoft Edge).")\n \n **Notes:**\n \n * Though unstandardized, this declaration is respected by most mobile browsers due to de-facto dominance.\n * The default values may vary between devices and browsers.\n * To learn about this declaration in Firefox for Mobile, see [this article](https://developer.mozilla.org/en-US/docs/Mobile/Viewport_meta_tag "Mobile/Viewport meta tag").'}},{name:"http-equiv",description:{kind:"markdown",value:'Defines a pragma directive. The attribute is named `**http-equiv**(alent)` because all the allowed values are names of particular HTTP headers:\n\n* `"content-language"` \n Defines the default language of the page. It can be overridden by the [lang](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang) attribute on any element.\n \n **Warning:** Do not use this value, as it is obsolete. Prefer the `lang` attribute on the [`<html>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/html "The HTML <html> element represents the root (top-level element) of an HTML document, so it is also referred to as the root element. All other elements must be descendants of this element.") element.\n \n* `"content-security-policy"` \n Allows page authors to define a [content policy](https://developer.mozilla.org/en-US/docs/Web/Security/CSP/CSP_policy_directives) for the current page. Content policies mostly specify allowed server origins and script endpoints which help guard against cross-site scripting attacks.\n* `"content-type"` \n Defines the [MIME type](https://developer.mozilla.org/en-US/docs/Glossary/MIME_type) of the document, followed by its character encoding. It follows the same syntax as the HTTP `content-type` entity-header field, but as it is inside a HTML page, most values other than `text/html` are impossible. Therefore the valid syntax for its `content` is the string \'`text/html`\' followed by a character set with the following syntax: \'`; charset=_IANAcharset_`\', where `IANAcharset` is the _preferred MIME name_ for a character set as [defined by the IANA.](https://www.iana.org/assignments/character-sets)\n \n **Warning:** Do not use this value, as it is obsolete. Use the [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) attribute on the [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element.\n \n **Note:** As [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") can\'t change documents\' types in XHTML or HTML5\'s XHTML serialization, never set the MIME type to an XHTML MIME type with `<meta>`.\n \n* `"refresh"` \n This instruction specifies:\n * The number of seconds until the page should be reloaded - only if the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute contains a positive integer.\n * The number of seconds until the page should redirect to another - only if the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute contains a positive integer followed by the string \'`;url=`\', and a valid URL.\n* `"set-cookie"` \n Defines a [cookie](https://developer.mozilla.org/en-US/docs/cookie) for the page. Its content must follow the syntax defined in the [IETF HTTP Cookie Specification](https://tools.ietf.org/html/draft-ietf-httpstate-cookie-14).\n \n **Warning:** Do not use this instruction, as it is obsolete. Use the HTTP header [`Set-Cookie`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie) instead.'}},{name:"content",description:{kind:"markdown",value:"This attribute contains the value for the [`http-equiv`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-http-equiv) or [`name`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-name) attribute, depending on which is used."}},{name:"charset",description:{kind:"markdown",value:'This attribute declares the page\'s character encoding. It must contain a [standard IANA MIME name for character encodings](https://www.iana.org/assignments/character-sets). Although the standard doesn\'t request a specific encoding, it suggests:\n\n* Authors are encouraged to use [`UTF-8`](https://developer.mozilla.org/en-US/docs/Glossary/UTF-8).\n* Authors should not use ASCII-incompatible encodings to avoid security risk: browsers not supporting them may interpret harmful content as HTML. This happens with the `JIS_C6226-1983`, `JIS_X0212-1990`, `HZ-GB-2312`, `JOHAB`, the ISO-2022 family and the EBCDIC family.\n\n**Note:** ASCII-incompatible encodings are those that don\'t map the 8-bit code points `0x20` to `0x7E` to the `0x0020` to `0x007E` Unicode code points)\n\n* Authors **must not** use `CESU-8`, `UTF-7`, `BOCU-1` and/or `SCSU` as [cross-site scripting](https://developer.mozilla.org/en-US/docs/Glossary/Cross-site_scripting) attacks with these encodings have been demonstrated.\n* Authors should not use `UTF-32` because not all HTML5 encoding algorithms can distinguish it from `UTF-16`.\n\n**Notes:**\n\n* The declared character encoding must match the one the page was saved with to avoid garbled characters and security holes.\n* The [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element declaring the encoding must be inside the [`<head>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/head "The HTML <head> element provides general information (metadata) about the document, including its title and links to its scripts and style sheets.") element and **within the first 1024 bytes** of the HTML as some browsers only look at those bytes before choosing an encoding.\n* This [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element is only one part of the [algorithm to determine a page\'s character set](https://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#encoding-sniffing-algorithm "Algorithm charset page"). The [`Content-Type` header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type) and any [Byte-Order Marks](https://developer.mozilla.org/en-US/docs/Glossary/Byte-Order_Mark "The definition of that term (Byte-Order Marks) has not been written yet; please consider contributing it!") override this element.\n* It is strongly recommended to define the character encoding. If a page\'s encoding is undefined, cross-scripting techniques are possible, such as the [`UTF-7` fallback cross-scripting technique](https://code.google.com/p/doctype-mirror/wiki/ArticleUtf7).\n* The [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element with a `charset` attribute is a synonym for the pre-HTML5 `<meta http-equiv="Content-Type" content="text/html; charset=_IANAcharset_">`, where _`IANAcharset`_ contains the value of the equivalent [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) attribute. This syntax is still allowed, although no longer recommended.'}},{name:"scheme",description:"This attribute defines the scheme in which metadata is described. A scheme is a context leading to the correct interpretations of the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) value, like a format.\n\n**Warning:** Do not use this value, as it is obsolete. There is no replacement as there was no real usage for it."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/meta"}]},{name:"style",description:{kind:"markdown",value:"The style element allows authors to embed style information in their documents. The style element is one of several inputs to the styling processing model. The element does not represent content for the user."},attributes:[{name:"media",description:{kind:"markdown",value:"This attribute defines which media the style should be applied to. Its value is a [media query](https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries), which defaults to `all` if the attribute is missing."}},{name:"nonce",description:{kind:"markdown",value:"A cryptographic nonce (number used once) used to whitelist inline styles in a [style-src Content-Security-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/style-src). The server must generate a unique nonce value each time it transmits a policy. It is critical to provide a nonce that cannot be guessed as bypassing a resource’s policy is otherwise trivial."}},{name:"type",description:{kind:"markdown",value:"This attribute defines the styling language as a MIME type (charset should not be specified). This attribute is optional and defaults to `text/css` if it is not specified — there is very little reason to include this in modern web documents."}},{name:"scoped",valueSet:"v"},{name:"title",description:"This attribute specifies [alternative style sheet](https://developer.mozilla.org/en-US/docs/Web/CSS/Alternative_style_sheets) sets."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/style"}]},{name:"body",description:{kind:"markdown",value:"The body element represents the content of the document."},attributes:[{name:"onafterprint",description:{kind:"markdown",value:"Function to call after the user has printed the document."}},{name:"onbeforeprint",description:{kind:"markdown",value:"Function to call when the user requests printing of the document."}},{name:"onbeforeunload",description:{kind:"markdown",value:"Function to call when the document is about to be unloaded."}},{name:"onhashchange",description:{kind:"markdown",value:"Function to call when the fragment identifier part (starting with the hash (`'#'`) character) of the document's current address has changed."}},{name:"onlanguagechange",description:{kind:"markdown",value:"Function to call when the preferred languages changed."}},{name:"onmessage",description:{kind:"markdown",value:"Function to call when the document has received a message."}},{name:"onoffline",description:{kind:"markdown",value:"Function to call when network communication has failed."}},{name:"ononline",description:{kind:"markdown",value:"Function to call when network communication has been restored."}},{name:"onpagehide"},{name:"onpageshow"},{name:"onpopstate",description:{kind:"markdown",value:"Function to call when the user has navigated session history."}},{name:"onstorage",description:{kind:"markdown",value:"Function to call when the storage area has changed."}},{name:"onunload",description:{kind:"markdown",value:"Function to call when the document is going away."}},{name:"alink",description:'Color of text for hyperlinks when selected. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:active`](https://developer.mozilla.org/en-US/docs/Web/CSS/:active "The :active CSS pseudo-class represents an element (such as a button) that is being activated by the user.") pseudo-class instead._'},{name:"background",description:'URI of a image to use as a background. _This method is non-conforming, use CSS [`background`](https://developer.mozilla.org/en-US/docs/Web/CSS/background "The background shorthand CSS property sets all background style properties at once, such as color, image, origin and size, or repeat method.") property on the element instead._'},{name:"bgcolor",description:'Background color for the document. _This method is non-conforming, use CSS [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property on the element instead._'},{name:"bottommargin",description:'The margin of the bottom of the body. _This method is non-conforming, use CSS [`margin-bottom`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-bottom "The margin-bottom CSS property sets the margin area on the bottom of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"leftmargin",description:'The margin of the left of the body. _This method is non-conforming, use CSS [`margin-left`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left "The margin-left CSS property sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"link",description:'Color of text for unvisited hypertext links. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:link`](https://developer.mozilla.org/en-US/docs/Web/CSS/:link "The :link CSS pseudo-class represents an element that has not yet been visited. It matches every unvisited <a>, <area>, or <link> element that has an href attribute.") pseudo-class instead._'},{name:"onblur",description:"Function to call when the document loses focus."},{name:"onerror",description:"Function to call when the document fails to load properly."},{name:"onfocus",description:"Function to call when the document receives focus."},{name:"onload",description:"Function to call when the document has finished loading."},{name:"onredo",description:"Function to call when the user has moved forward in undo transaction history."},{name:"onresize",description:"Function to call when the document has been resized."},{name:"onundo",description:"Function to call when the user has moved backward in undo transaction history."},{name:"rightmargin",description:'The margin of the right of the body. _This method is non-conforming, use CSS [`margin-right`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-right "The margin-right CSS property sets the margin area on the right side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"text",description:'Foreground color of text. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property on the element instead._'},{name:"topmargin",description:'The margin of the top of the body. _This method is non-conforming, use CSS [`margin-top`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-top "The margin-top CSS property sets the margin area on the top of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"vlink",description:'Color of text for visited hypertext links. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:visited`](https://developer.mozilla.org/en-US/docs/Web/CSS/:visited "The :visited CSS pseudo-class represents links that the user has already visited. For privacy reasons, the styles that can be modified using this selector are very limited.") pseudo-class instead._'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/body"}]},{name:"article",description:{kind:"markdown",value:"The article element represents a complete, or self-contained, composition in a document, page, application, or site and that is, in principle, independently distributable or reusable, e.g. in syndication. This could be a forum post, a magazine or newspaper article, a blog entry, a user-submitted comment, an interactive widget or gadget, or any other independent item of content. Each article should be identified, typically by including a heading (h1–h6 element) as a child of the article element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/article"}]},{name:"section",description:{kind:"markdown",value:"The section element represents a generic section of a document or application. A section, in this context, is a thematic grouping of content. Each section should be identified, typically by including a heading ( h1- h6 element) as a child of the section element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/section"}]},{name:"nav",description:{kind:"markdown",value:"The nav element represents a section of a page that links to other pages or to parts within the page: a section with navigation links."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/nav"}]},{name:"aside",description:{kind:"markdown",value:"The aside element represents a section of a page that consists of content that is tangentially related to the content around the aside element, and which could be considered separate from that content. Such sections are often represented as sidebars in printed typography."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/aside"}]},{name:"h1",description:{kind:"markdown",value:"The h1 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h2",description:{kind:"markdown",value:"The h2 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h3",description:{kind:"markdown",value:"The h3 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h4",description:{kind:"markdown",value:"The h4 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h5",description:{kind:"markdown",value:"The h5 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h6",description:{kind:"markdown",value:"The h6 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"header",description:{kind:"markdown",value:"The header element represents introductory content for its nearest ancestor sectioning content or sectioning root element. A header typically contains a group of introductory or navigational aids. When the nearest ancestor sectioning content or sectioning root element is the body element, then it applies to the whole page."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/header"}]},{name:"footer",description:{kind:"markdown",value:"The footer element represents a footer for its nearest ancestor sectioning content or sectioning root element. A footer typically contains information about its section such as who wrote it, links to related documents, copyright data, and the like."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/footer"}]},{name:"address",description:{kind:"markdown",value:"The address element represents the contact information for its nearest article or body element ancestor. If that is the body element, then the contact information applies to the document as a whole."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/address"}]},{name:"p",description:{kind:"markdown",value:"The p element represents a paragraph."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/p"}]},{name:"hr",description:{kind:"markdown",value:"The hr element represents a paragraph-level thematic break, e.g. a scene change in a story, or a transition to another topic within a section of a reference book."},attributes:[{name:"align",description:"Sets the alignment of the rule on the page. If no value is specified, the default value is `left`."},{name:"color",description:"Sets the color of the rule through color name or hexadecimal value."},{name:"noshade",description:"Sets the rule to have no shading."},{name:"size",description:"Sets the height, in pixels, of the rule."},{name:"width",description:"Sets the length of the rule on the page through a pixel or percentage value."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/hr"}]},{name:"pre",description:{kind:"markdown",value:"The pre element represents a block of preformatted text, in which structure is represented by typographic conventions rather than by elements."},attributes:[{name:"cols",description:'Contains the _preferred_ count of characters that a line should have. It was a non-standard synonym of [`width`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/pre#attr-width). To achieve such an effect, use CSS [`width`](https://developer.mozilla.org/en-US/docs/Web/CSS/width "The width CSS property sets an element\'s width. By default it sets the width of the content area, but if box-sizing is set to border-box, it sets the width of the border area.") instead.'},{name:"width",description:'Contains the _preferred_ count of characters that a line should have. Though technically still implemented, this attribute has no visual effect; to achieve such an effect, use CSS [`width`](https://developer.mozilla.org/en-US/docs/Web/CSS/width "The width CSS property sets an element\'s width. By default it sets the width of the content area, but if box-sizing is set to border-box, it sets the width of the border area.") instead.'},{name:"wrap",description:'Is a _hint_ indicating how the overflow must happen. In modern browser this hint is ignored and no visual effect results in its present; to achieve such an effect, use CSS [`white-space`](https://developer.mozilla.org/en-US/docs/Web/CSS/white-space "The white-space CSS property sets how white space inside an element is handled.") instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/pre"}]},{name:"blockquote",description:{kind:"markdown",value:"The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a footer or cite element, and optionally with in-line changes such as annotations and abbreviations."},attributes:[{name:"cite",description:{kind:"markdown",value:"A URL that designates a source document or message for the information quoted. This attribute is intended to point to information explaining the context or the reference for the quote."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/blockquote"}]},{name:"ol",description:{kind:"markdown",value:"The ol element represents a list of items, where the items have been intentionally ordered, such that changing the order would change the meaning of the document."},attributes:[{name:"reversed",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute specifies that the items of the list are specified in reversed order."}},{name:"start",description:{kind:"markdown",value:'This integer attribute specifies the start value for numbering the individual list items. Although the ordering type of list elements might be Roman numerals, such as XXXI, or letters, the value of start is always represented as a number. To start numbering elements from the letter "C", use `<ol start="3">`.\n\n**Note**: This attribute was deprecated in HTML4, but reintroduced in HTML5.'}},{name:"type",valueSet:"lt",description:{kind:"markdown",value:"Indicates the numbering type:\n\n* `'a'` indicates lowercase letters,\n* `'A'` indicates uppercase letters,\n* `'i'` indicates lowercase Roman numerals,\n* `'I'` indicates uppercase Roman numerals,\n* and `'1'` indicates numbers (default).\n\nThe type set is used for the entire list unless a different [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li#attr-type) attribute is used within an enclosed [`<li>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li \"The HTML <li> element is used to represent an item in a list. It must be contained in a parent element: an ordered list (<ol>), an unordered list (<ul>), or a menu (<menu>). In menus and unordered lists, list items are usually displayed using bullet points. In ordered lists, they are usually displayed with an ascending counter on the left, such as a number or letter.\") element.\n\n**Note:** This attribute was deprecated in HTML4, but reintroduced in HTML5.\n\nUnless the value of the list number matters (e.g. in legal or technical documents where items are to be referenced by their number/letter), the CSS [`list-style-type`](https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-type \"The list-style-type CSS property sets the marker (such as a disc, character, or custom counter style) of a list item element.\") property should be used instead."}},{name:"compact",description:'This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn\'t work in all browsers.\n\n**Warning:** Do not use this attribute, as it has been deprecated: the [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To give an effect similar to the `compact` attribute, the [CSS](https://developer.mozilla.org/en-US/docs/CSS) property [`line-height`](https://developer.mozilla.org/en-US/docs/Web/CSS/line-height "The line-height CSS property sets the amount of space used for lines, such as in text. On block-level elements, it specifies the minimum height of line boxes within the element. On non-replaced inline elements, it specifies the height that is used to calculate line box height.") can be used with a value of `80%`.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ol"}]},{name:"ul",description:{kind:"markdown",value:"The ul element represents a list of items, where the order of the items is not important — that is, where changing the order would not materially change the meaning of the document."},attributes:[{name:"compact",description:'This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn\'t work in all browsers.\n\n**Usage note: **Do not use this attribute, as it has been deprecated: the [`<ul>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul "The HTML <ul> element represents an unordered list of items, typically rendered as a bulleted list.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To give a similar effect as the `compact` attribute, the [CSS](https://developer.mozilla.org/en-US/docs/CSS) property [line-height](https://developer.mozilla.org/en-US/docs/CSS/line-height) can be used with a value of `80%`.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ul"}]},{name:"li",description:{kind:"markdown",value:"The li element represents a list item. If its parent element is an ol, ul, or menu element, then the element is an item of the parent element's list, as defined for those elements. Otherwise, the list item has no defined list-related relationship to any other li element."},attributes:[{name:"value",description:{kind:"markdown",value:'This integer attribute indicates the current ordinal value of the list item as defined by the [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element. The only allowed value for this attribute is a number, even if the list is displayed with Roman numerals or letters. List items that follow this one continue numbering from the value set. The **value** attribute has no meaning for unordered lists ([`<ul>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul "The HTML <ul> element represents an unordered list of items, typically rendered as a bulleted list.")) or for menus ([`<menu>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/menu "The HTML <menu> element represents a group of commands that a user can perform or activate. This includes both list menus, which might appear across the top of a screen, as well as context menus, such as those that might appear underneath a button after it has been clicked.")).\n\n**Note**: This attribute was deprecated in HTML4, but reintroduced in HTML5.\n\n**Note:** Prior to Gecko 9.0, negative values were incorrectly converted to 0. Starting in Gecko 9.0 all integer values are correctly parsed.'}},{name:"type",description:'This character attribute indicates the numbering type:\n\n* `a`: lowercase letters\n* `A`: uppercase letters\n* `i`: lowercase Roman numerals\n* `I`: uppercase Roman numerals\n* `1`: numbers\n\nThis type overrides the one used by its parent [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element, if any.\n\n**Usage note:** This attribute has been deprecated: use the CSS [`list-style-type`](https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-type "The list-style-type CSS property sets the marker (such as a disc, character, or custom counter style) of a list item element.") property instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/li"}]},{name:"dl",description:{kind:"markdown",value:"The dl element represents an association list consisting of zero or more name-value groups (a description list). A name-value group consists of one or more names (dt elements) followed by one or more values (dd elements), ignoring any nodes other than dt and dd elements. Within a single dl element, there should not be more than one dt element for each name."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dl"}]},{name:"dt",description:{kind:"markdown",value:"The dt element represents the term, or name, part of a term-description group in a description list (dl element)."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dt"}]},{name:"dd",description:{kind:"markdown",value:"The dd element represents the description, definition, or value, part of a term-description group in a description list (dl element)."},attributes:[{name:"nowrap",description:"If the value of this attribute is set to `yes`, the definition text will not wrap. The default value is `no`."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dd"}]},{name:"figure",description:{kind:"markdown",value:"The figure element represents some flow content, optionally with a caption, that is self-contained (like a complete sentence) and is typically referenced as a single unit from the main flow of the document."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/figure"}]},{name:"figcaption",description:{kind:"markdown",value:"The figcaption element represents a caption or legend for the rest of the contents of the figcaption element's parent figure element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/figcaption"}]},{name:"main",description:{kind:"markdown",value:"The main element represents the main content of the body of a document or application. The main content area consists of content that is directly related to or expands upon the central topic of a document or central functionality of an application."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/main"}]},{name:"div",description:{kind:"markdown",value:"The div element has no special meaning at all. It represents its children. It can be used with the class, lang, and title attributes to mark up semantics common to a group of consecutive elements."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/div"}]},{name:"a",description:{kind:"markdown",value:"If the a element has an href attribute, then it represents a hyperlink (a hypertext anchor) labeled by its contents."},attributes:[{name:"href",description:{kind:"markdown",value:"Contains a URL or a URL fragment that the hyperlink points to."}},{name:"target",description:{kind:"markdown",value:'Specifies where to display the linked URL. It is a name of, or keyword for, a _browsing context_: a tab, window, or `<iframe>`. The following keywords have special meanings:\n\n* `_self`: Load the URL into the same browsing context as the current one. This is the default behavior.\n* `_blank`: Load the URL into a new browsing context. This is usually a tab, but users can configure browsers to use new windows instead.\n* `_parent`: Load the URL into the parent browsing context of the current one. If there is no parent, this behaves the same way as `_self`.\n* `_top`: Load the URL into the top-level browsing context (that is, the "highest" browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this behaves the same way as `_self`.\n\n**Note:** When using `target`, consider adding `rel="noreferrer"` to avoid exploitation of the `window.opener` API.\n\n**Note:** Linking to another page using `target="_blank"` will run the new page on the same process as your page. If the new page is executing expensive JS, your page\'s performance may suffer. To avoid this use `rel="noopener"`.'}},{name:"download",description:{kind:"markdown",value:"This attribute instructs browsers to download a URL instead of navigating to it, so the user will be prompted to save it as a local file. If the attribute has a value, it is used as the pre-filled file name in the Save prompt (the user can still change the file name if they want). There are no restrictions on allowed values, though `/` and `\\` are converted to underscores. Most file systems limit some punctuation in file names, and browsers will adjust the suggested name accordingly.\n\n**Notes:**\n\n* This attribute only works for [same-origin URLs](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy).\n* Although HTTP(s) URLs need to be in the same-origin, [`blob:` URLs](https://developer.mozilla.org/en-US/docs/Web/API/URL.createObjectURL) and [`data:` URLs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs) are allowed so that content generated by JavaScript, such as pictures created in an image-editor Web app, can be downloaded.\n* If the HTTP header [`Content-Disposition:`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition) gives a different filename than this attribute, the HTTP header takes priority over this attribute.\n* If `Content-Disposition:` is set to `inline`, Firefox prioritizes `Content-Disposition`, like the filename case, while Chrome prioritizes the `download` attribute."}},{name:"ping",description:{kind:"markdown",value:'Contains a space-separated list of URLs to which, when the hyperlink is followed, [`POST`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST "The HTTP POST method sends data to the server. The type of the body of the request is indicated by the Content-Type header.") requests with the body `PING` will be sent by the browser (in the background). Typically used for tracking.'}},{name:"rel",description:{kind:"markdown",value:"Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types)."}},{name:"hreflang",description:{kind:"markdown",value:'This attribute indicates the human language of the linked resource. It is purely advisory, with no built-in functionality. Allowed values are determined by [BCP47](https://www.ietf.org/rfc/bcp/bcp47.txt "Tags for Identifying Languages").'}},{name:"type",description:{kind:"markdown",value:'Specifies the media type in the form of a [MIME type](https://developer.mozilla.org/en-US/docs/Glossary/MIME_type "MIME type: A MIME type (now properly called "media type", but also sometimes "content type") is a string sent along with a file indicating the type of the file (describing the content format, for example, a sound file might be labeled audio/ogg, or an image file image/png).") for the linked URL. It is purely advisory, with no built-in functionality.'}},{name:"referrerpolicy",description:"Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer) to send when fetching the URL:\n\n* `'no-referrer'` means the `Referer:` header will not be sent.\n* `'no-referrer-when-downgrade'` means no `Referer:` header will be sent when navigating to an origin without HTTPS. This is the default behavior.\n* `'origin'` means the referrer will be the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the page, not including information after the domain.\n* `'origin-when-cross-origin'` meaning that navigations to other origins will be limited to the scheme, the host and the port, while navigations on the same origin will include the referrer's path.\n* `'strict-origin-when-cross-origin'`\n* `'unsafe-url'` means the referrer will include the origin and path, but not the fragment, password, or username. This is unsafe because it can leak data from secure URLs to insecure ones."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/a"}]},{name:"em",description:{kind:"markdown",value:"The em element represents stress emphasis of its contents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/em"}]},{name:"strong",description:{kind:"markdown",value:"The strong element represents strong importance, seriousness, or urgency for its contents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/strong"}]},{name:"small",description:{kind:"markdown",value:"The small element represents side comments such as small print."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/small"}]},{name:"s",description:{kind:"markdown",value:"The s element represents contents that are no longer accurate or no longer relevant."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/s"}]},{name:"cite",description:{kind:"markdown",value:"The cite element represents a reference to a creative work. It must include the title of the work or the name of the author(person, people or organization) or an URL reference, or a reference in abbreviated form as per the conventions used for the addition of citation metadata."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/cite"}]},{name:"q",description:{kind:"markdown",value:"The q element represents some phrasing content quoted from another source."},attributes:[{name:"cite",description:{kind:"markdown",value:"The value of this attribute is a URL that designates a source document or message for the information quoted. This attribute is intended to point to information explaining the context or the reference for the quote."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/q"}]},{name:"dfn",description:{kind:"markdown",value:"The dfn element represents the defining instance of a term. The paragraph, description list group, or section that is the nearest ancestor of the dfn element must also contain the definition(s) for the term given by the dfn element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dfn"}]},{name:"abbr",description:{kind:"markdown",value:"The abbr element represents an abbreviation or acronym, optionally with its expansion. The title attribute may be used to provide an expansion of the abbreviation. The attribute, if specified, must contain an expansion of the abbreviation, and nothing else."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/abbr"}]},{name:"ruby",description:{kind:"markdown",value:"The ruby element allows one or more spans of phrasing content to be marked with ruby annotations. Ruby annotations are short runs of text presented alongside base text, primarily used in East Asian typography as a guide for pronunciation or to include other annotations. In Japanese, this form of typography is also known as furigana. Ruby text can appear on either side, and sometimes both sides, of the base text, and it is possible to control its position using CSS. A more complete introduction to ruby can be found in the Use Cases & Exploratory Approaches for Ruby Markup document as well as in CSS Ruby Module Level 1. [RUBY-UC] [CSSRUBY]"},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ruby"}]},{name:"rb",description:{kind:"markdown",value:"The rb element marks the base text component of a ruby annotation. When it is the child of a ruby element, it doesn't represent anything itself, but its parent ruby element uses it as part of determining what it represents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rb"}]},{name:"rt",description:{kind:"markdown",value:"The rt element marks the ruby text component of a ruby annotation. When it is the child of a ruby element or of an rtc element that is itself the child of a ruby element, it doesn't represent anything itself, but its ancestor ruby element uses it as part of determining what it represents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rt"}]},{name:"rp",description:{kind:"markdown",value:"The rp element is used to provide fallback text to be shown by user agents that don't support ruby annotations. One widespread convention is to provide parentheses around the ruby text component of a ruby annotation."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rp"}]},{name:"time",description:{kind:"markdown",value:"The time element represents its contents, along with a machine-readable form of those contents in the datetime attribute. The kind of content is limited to various kinds of dates, times, time-zone offsets, and durations, as described below."},attributes:[{name:"datetime",description:{kind:"markdown",value:"This attribute indicates the time and/or date of the element and must be in one of the formats described below."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/time"}]},{name:"code",description:{kind:"markdown",value:"The code element represents a fragment of computer code. This could be an XML element name, a file name, a computer program, or any other string that a computer would recognize."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/code"}]},{name:"var",description:{kind:"markdown",value:"The var element represents a variable. This could be an actual variable in a mathematical expression or programming context, an identifier representing a constant, a symbol identifying a physical quantity, a function parameter, or just be a term used as a placeholder in prose."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/var"}]},{name:"samp",description:{kind:"markdown",value:"The samp element represents sample or quoted output from another program or computing system."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/samp"}]},{name:"kbd",description:{kind:"markdown",value:"The kbd element represents user input (typically keyboard input, although it may also be used to represent other input, such as voice commands)."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/kbd"}]},{name:"sub",description:{kind:"markdown",value:"The sub element represents a subscript."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/sub"}]},{name:"sup",description:{kind:"markdown",value:"The sup element represents a superscript."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/sup"}]},{name:"i",description:{kind:"markdown",value:"The i element represents a span of text in an alternate voice or mood, or otherwise offset from the normal prose in a manner indicating a different quality of text, such as a taxonomic designation, a technical term, an idiomatic phrase from another language, transliteration, a thought, or a ship name in Western texts."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/i"}]},{name:"b",description:{kind:"markdown",value:"The b element represents a span of text to which attention is being drawn for utilitarian purposes without conveying any extra importance and with no implication of an alternate voice or mood, such as key words in a document abstract, product names in a review, actionable words in interactive text-driven software, or an article lede."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/b"}]},{name:"u",description:{kind:"markdown",value:"The u element represents a span of text with an unarticulated, though explicitly rendered, non-textual annotation, such as labeling the text as being a proper name in Chinese text (a Chinese proper name mark), or labeling the text as being misspelt."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/u"}]},{name:"mark",description:{kind:"markdown",value:"The mark element represents a run of text in one document marked or highlighted for reference purposes, due to its relevance in another context. When used in a quotation or other block of text referred to from the prose, it indicates a highlight that was not originally present but which has been added to bring the reader's attention to a part of the text that might not have been considered important by the original author when the block was originally written, but which is now under previously unexpected scrutiny. When used in the main prose of a document, it indicates a part of the document that has been highlighted due to its likely relevance to the user's current activity."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/mark"}]},{name:"bdi",description:{kind:"markdown",value:"The bdi element represents a span of text that is to be isolated from its surroundings for the purposes of bidirectional text formatting. [BIDI]"},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/bdi"}]},{name:"bdo",description:{kind:"markdown",value:"The bdo element represents explicit text directionality formatting control for its children. It allows authors to override the Unicode bidirectional algorithm by explicitly specifying a direction override. [BIDI]"},attributes:[{name:"dir",description:"The direction in which text should be rendered in this element's contents. Possible values are:\n\n* `ltr`: Indicates that the text should go in a left-to-right direction.\n* `rtl`: Indicates that the text should go in a right-to-left direction."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/bdo"}]},{name:"span",description:{kind:"markdown",value:"The span element doesn't mean anything on its own, but can be useful when used together with the global attributes, e.g. class, lang, or dir. It represents its children."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/span"}]},{name:"br",description:{kind:"markdown",value:"The br element represents a line break."},attributes:[{name:"clear",description:"Indicates where to begin the next line after the break."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/br"}]},{name:"wbr",description:{kind:"markdown",value:"The wbr element represents a line break opportunity."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/wbr"}]},{name:"ins",description:{kind:"markdown",value:"The ins element represents an addition to the document."},attributes:[{name:"cite",description:"This attribute defines the URI of a resource that explains the change, such as a link to meeting minutes or a ticket in a troubleshooting system."},{name:"datetime",description:'This attribute indicates the time and date of the change and must be a valid date with an optional time string. If the value cannot be parsed as a date with an optional time string, the element does not have an associated time stamp. For the format of the string without a time, see [Format of a valid date string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_date_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article."). The format of the string if it includes both date and time is covered in [Format of a valid local date and time string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_local_date_and_time_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ins"}]},{name:"del",description:{kind:"markdown",value:"The del element represents a removal from the document."},attributes:[{name:"cite",description:{kind:"markdown",value:"A URI for a resource that explains the change (for example, meeting minutes)."}},{name:"datetime",description:{kind:"markdown",value:'This attribute indicates the time and date of the change and must be a valid date string with an optional time. If the value cannot be parsed as a date with an optional time string, the element does not have an associated time stamp. For the format of the string without a time, see [Format of a valid date string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_date_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article."). The format of the string if it includes both date and time is covered in [Format of a valid local date and time string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_local_date_and_time_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.").'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/del"}]},{name:"picture",description:{kind:"markdown",value:"The picture element is a container which provides multiple sources to its contained img element to allow authors to declaratively control or give hints to the user agent about which image resource to use, based on the screen pixel density, viewport size, image format, and other factors. It represents its children."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/picture"}]},{name:"img",description:{kind:"markdown",value:"An img element represents an image."},attributes:[{name:"alt",description:{kind:"markdown",value:'This attribute defines an alternative text description of the image.\n\n**Note:** Browsers do not always display the image referenced by the element. This is the case for non-graphical browsers (including those used by people with visual impairments), if the user chooses not to display images, or if the browser cannot display the image because it is invalid or an [unsupported type](#Supported_image_formats). In these cases, the browser may replace the image with the text defined in this element\'s `alt` attribute. You should, for these reasons and others, provide a useful value for `alt` whenever possible.\n\n**Note:** Omitting this attribute altogether indicates that the image is a key part of the content, and no textual equivalent is available. Setting this attribute to an empty string (`alt=""`) indicates that this image is _not_ a key part of the content (decorative), and that non-visual browsers may omit it from rendering.'}},{name:"src",description:{kind:"markdown",value:"The image URL. This attribute is mandatory for the `<img>` element. On browsers supporting `srcset`, `src` is treated like a candidate image with a pixel density descriptor `1x` unless an image with this pixel density descriptor is already defined in `srcset,` or unless `srcset` contains '`w`' descriptors."}},{name:"srcset",description:{kind:"markdown",value:"A list of one or more strings separated by commas indicating a set of possible image sources for the user agent to use. Each string is composed of:\n\n1. a URL to an image,\n2. optionally, whitespace followed by one of:\n * A width descriptor, or a positive integer directly followed by '`w`'. The width descriptor is divided by the source size given in the `sizes` attribute to calculate the effective pixel density.\n * A pixel density descriptor, which is a positive floating point number directly followed by '`x`'.\n\nIf no descriptor is specified, the source is assigned the default descriptor: `1x`.\n\nIt is incorrect to mix width descriptors and pixel density descriptors in the same `srcset` attribute. Duplicate descriptors (for instance, two sources in the same `srcset` which are both described with '`2x`') are also invalid.\n\nThe user agent selects any one of the available sources at its discretion. This provides them with significant leeway to tailor their selection based on things like user preferences or bandwidth conditions. See our [Responsive images](https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images) tutorial for an example."}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates if the fetching of the related image must be done using CORS or not. [CORS-enabled images](https://developer.mozilla.org/en-US/docs/CORS_Enabled_Image) can be reused in the [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being "[tainted](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image#What_is_a_tainted_canvas)." The allowed values are:'}},{name:"usemap",description:{kind:"markdown",value:'The partial URL (starting with \'#\') of an [image map](https://developer.mozilla.org/en-US/docs/HTML/Element/map) associated with the element.\n\n**Note:** You cannot use this attribute if the `<img>` element is a descendant of an [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL.") or [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") element.'}},{name:"ismap",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the image is part of a server-side map. If so, the precise coordinates of a click are sent to the server.\n\n**Note:** This attribute is allowed only if the `<img>` element is a descendant of an [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL.") element with a valid [`href`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href) attribute.'}},{name:"width",description:{kind:"markdown",value:"The intrinsic width of the image in pixels."}},{name:"height",description:{kind:"markdown",value:"The intrinsic height of the image in pixels."}},{name:"decoding",description:"Provides an image decoding hint to the browser. The allowed values are:"},{name:"decoding",description:"`sync`\n\nDecode the image synchronously for atomic presentation with other content.\n\n`async`\n\nDecode the image asynchronously to reduce delay in presenting other content.\n\n`auto`\n\nDefault mode, which indicates no preference for the decoding mode. The browser decides what is best for the user."},{name:"importance",description:"Indicates the relative importance of the resource. Priority hints are delegated using the values:"},{name:"importance",description:"`auto`: Indicates **no preference**. The browser may use its own heuristics to decide the priority of the image.\n\n`high`: Indicates to the browser that the image is of **high** priority.\n\n`low`: Indicates to the browser that the image is of **low** priority."},{name:"intrinsicsize",description:"This attribute tells the browser to ignore the actual intrinsic size of the image and pretend it’s the size specified in the attribute. Specifically, the image would raster at these dimensions and `naturalWidth`/`naturalHeight` on images would return the values specified in this attribute. [Explainer](https://github.com/ojanvafai/intrinsicsize-attribute), [examples](https://googlechrome.github.io/samples/intrinsic-size/index.html)"},{name:"referrerpolicy",description:"A string indicating which referrer to use when fetching the resource:\n\n* `no-referrer:` The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer \"The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.\") header will not be sent.\n* `no-referrer-when-downgrade:` No `Referer` header will be sent when navigating to an origin without TLS (HTTPS). This is a user agent’s default behavior if no policy is otherwise specified.\n* `origin:` The `Referer` header will include the page of origin's scheme, the host, and the port.\n* `origin-when-cross-origin:` Navigating to other origins will limit the included referral data to the scheme, the host and the port, while navigating from the same origin will include the referrer's full path.\n* `unsafe-url:` The `Referer` header will include the origin and the path, but not the fragment, password, or username. This case is unsafe because it can leak origins and paths from TLS-protected resources to insecure origins."},{name:"sizes",description:"A list of one or more strings separated by commas indicating a set of source sizes. Each source size consists of:\n\n1. a media condition. This must be omitted for the last item.\n2. a source size value.\n\nSource size values specify the intended display size of the image. User agents use the current source size to select one of the sources supplied by the `srcset` attribute, when those sources are described using width ('`w`') descriptors. The selected source size affects the intrinsic size of the image (the image’s display size if no CSS styling is applied). If the `srcset` attribute is absent, or contains no values with a width (`w`) descriptor, then the `sizes` attribute has no effect."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/img"}]},{name:"iframe",description:{kind:"markdown",value:"The iframe element represents a nested browsing context."},attributes:[{name:"src",description:{kind:"markdown",value:'The URL of the page to embed. Use a value of `about:blank` to embed an empty page that conforms to the [same-origin policy](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy#Inherited_origins). Also note that programatically removing an `<iframe>`\'s src attribute (e.g. via [`Element.removeAttribute()`](https://developer.mozilla.org/en-US/docs/Web/API/Element/removeAttribute "The Element method removeAttribute() removes the attribute with the specified name from the element.")) causes `about:blank` to be loaded in the frame in Firefox (from version 65), Chromium-based browsers, and Safari/iOS.'}},{name:"srcdoc",description:{kind:"markdown",value:"Inline HTML to embed, overriding the `src` attribute. If a browser does not support the `srcdoc` attribute, it will fall back to the URL in the `src` attribute."}},{name:"name",description:{kind:"markdown",value:'A targetable name for the embedded browsing context. This can be used in the `target` attribute of the [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL."), [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server."), or [`<base>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base "The HTML <base> element specifies the base URL to use for all relative URLs contained within a document. There can be only one <base> element in a document.") elements; the `formtarget` attribute of the [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") or [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") elements; or the `windowName` parameter in the [`window.open()`](https://developer.mozilla.org/en-US/docs/Web/API/Window/open "The Window interface\'s open() method loads the specified resource into the browsing context (window, <iframe> or tab) with the specified name. If the name doesn\'t exist, then a new window is opened and the specified resource is loaded into its browsing context.") method.'}},{name:"sandbox",valueSet:"sb",description:{kind:"markdown",value:'Applies extra restrictions to the content in the frame. The value of the attribute can either be empty to apply all restrictions, or space-separated tokens to lift particular restrictions:\n\n* `allow-forms`: Allows the resource to submit forms. If this keyword is not used, form submission is blocked.\n* `allow-modals`: Lets the resource [open modal windows](https://html.spec.whatwg.org/multipage/origin.html#sandboxed-modals-flag).\n* `allow-orientation-lock`: Lets the resource [lock the screen orientation](https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockOrientation).\n* `allow-pointer-lock`: Lets the resource use the [Pointer Lock API](https://developer.mozilla.org/en-US/docs/WebAPI/Pointer_Lock).\n* `allow-popups`: Allows popups (such as `window.open()`, `target="_blank"`, or `showModalDialog()`). If this keyword is not used, the popup will silently fail to open.\n* `allow-popups-to-escape-sandbox`: Lets the sandboxed document open new windows without those windows inheriting the sandboxing. For example, this can safely sandbox an advertisement without forcing the same restrictions upon the page the ad links to.\n* `allow-presentation`: Lets the resource start a [presentation session](https://developer.mozilla.org/en-US/docs/Web/API/PresentationRequest).\n* `allow-same-origin`: If this token is not used, the resource is treated as being from a special origin that always fails the [same-origin policy](https://developer.mozilla.org/en-US/docs/Glossary/same-origin_policy "same-origin policy: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin.").\n* `allow-scripts`: Lets the resource run scripts (but not create popup windows).\n* `allow-storage-access-by-user-activation` : Lets the resource request access to the parent\'s storage capabilities with the [Storage Access API](https://developer.mozilla.org/en-US/docs/Web/API/Storage_Access_API).\n* `allow-top-navigation`: Lets the resource navigate the top-level browsing context (the one named `_top`).\n* `allow-top-navigation-by-user-activation`: Lets the resource navigate the top-level browsing context, but only if initiated by a user gesture.\n\n**Notes about sandboxing:**\n\n* When the embedded document has the same origin as the embedding page, it is **strongly discouraged** to use both `allow-scripts` and `allow-same-origin`, as that lets the embedded document remove the `sandbox` attribute — making it no more secure than not using the `sandbox` attribute at all.\n* Sandboxing is useless if the attacker can display content outside a sandboxed `iframe` — such as if the viewer opens the frame in a new tab. Such content should be also served from a _separate origin_ to limit potential damage.\n* The `sandbox` attribute is unsupported in Internet Explorer 9 and earlier.'}},{name:"seamless",valueSet:"v"},{name:"allowfullscreen",valueSet:"v",description:{kind:"markdown",value:'Set to `true` if the `<iframe>` can activate fullscreen mode by calling the [`requestFullscreen()`](https://developer.mozilla.org/en-US/docs/Web/API/Element/requestFullscreen "The Element.requestFullscreen() method issues an asynchronous request to make the element be displayed in full-screen mode.") method.'}},{name:"width",description:{kind:"markdown",value:"The width of the frame in CSS pixels. Default is `300`."}},{name:"height",description:{kind:"markdown",value:"The height of the frame in CSS pixels. Default is `150`."}},{name:"allow",description:"Specifies a [feature policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Feature_Policy) for the `<iframe>`."},{name:"allowpaymentrequest",description:"Set to `true` if a cross-origin `<iframe>` should be allowed to invoke the [Payment Request API](https://developer.mozilla.org/en-US/docs/Web/API/Payment_Request_API)."},{name:"allowpaymentrequest",description:'This attribute is considered a legacy attribute and redefined as `allow="payment"`.'},{name:"csp",description:'A [Content Security Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP) enforced for the embedded resource. See [`HTMLIFrameElement.csp`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement/csp "The csp property of the HTMLIFrameElement interface specifies the Content Security Policy that an embedded document must agree to enforce upon itself.") for details.'},{name:"importance",description:"The download priority of the resource in the `<iframe>`'s `src` attribute. Allowed values:\n\n`auto` (default)\n\nNo preference. The browser uses its own heuristics to decide the priority of the resource.\n\n`high`\n\nThe resource should be downloaded before other lower-priority page resources.\n\n`low`\n\nThe resource should be downloaded after other higher-priority page resources."},{name:"referrerpolicy",description:'Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/API/Document/referrer) to send when fetching the frame\'s resource:\n\n* `no-referrer`: The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` (default): The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent to [origin](https://developer.mozilla.org/en-US/docs/Glossary/origin "origin: Web content\'s origin is defined by the scheme (protocol), host (domain), and port of the URL used to access it. Two objects have the same origin only when the scheme, host, and port all match.")s without [TLS](https://developer.mozilla.org/en-US/docs/Glossary/TLS "TLS: Transport Layer Security (TLS), previously known as Secure Sockets Layer (SSL), is a protocol used by applications to communicate securely across a network, preventing tampering with and eavesdropping on email, web browsing, messaging, and other protocols.") ([HTTPS](https://developer.mozilla.org/en-US/docs/Glossary/HTTPS "HTTPS: HTTPS (HTTP Secure) is an encrypted version of the HTTP protocol. It usually uses SSL or TLS to encrypt all communication between a client and a server. This secure connection allows clients to safely exchange sensitive data with a server, for example for banking activities or online shopping.")).\n* `origin`: The sent referrer will be limited to the origin of the referring page: its [scheme](https://developer.mozilla.org/en-US/docs/Archive/Mozilla/URIScheme), [host](https://developer.mozilla.org/en-US/docs/Glossary/host "host: A host is a device connected to the Internet (or a local network). Some hosts called servers offer additional services like serving webpages or storing files and emails."), and [port](https://developer.mozilla.org/en-US/docs/Glossary/port "port: For a computer connected to a network with an IP address, a port is a communication endpoint. Ports are designated by numbers, and below 1024 each port is associated by default with a specific protocol.").\n* `origin-when-cross-origin`: The referrer sent to other origins will be limited to the scheme, the host, and the port. Navigations on the same origin will still include the path.\n* `same-origin`: A referrer will be sent for [same origin](https://developer.mozilla.org/en-US/docs/Glossary/Same-origin_policy "same origin: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin."), but cross-origin requests will contain no referrer information.\n* `strict-origin`: Only send the origin of the document as the referrer when the protocol security level stays the same (HTTPS→HTTPS), but don\'t send it to a less secure destination (HTTPS→HTTP).\n* `strict-origin-when-cross-origin`: Send a full URL when performing a same-origin request, only send the origin when the protocol security level stays the same (HTTPS→HTTPS), and send no header to a less secure destination (HTTPS→HTTP).\n* `unsafe-url`: The referrer will include the origin _and_ the path (but not the [fragment](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/hash), [password](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/password), or [username](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/username)). **This value is unsafe**, because it leaks origins and paths from TLS-protected resources to insecure origins.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/iframe"}]},{name:"embed",description:{kind:"markdown",value:"The embed element provides an integration point for an external (typically non-HTML) application or interactive content."},attributes:[{name:"src",description:{kind:"markdown",value:"The URL of the resource being embedded."}},{name:"type",description:{kind:"markdown",value:"The MIME type to use to select the plug-in to instantiate."}},{name:"width",description:{kind:"markdown",value:"The displayed width of the resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). This must be an absolute value; percentages are _not_ allowed."}},{name:"height",description:{kind:"markdown",value:"The displayed height of the resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). This must be an absolute value; percentages are _not_ allowed."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/embed"}]},{name:"object",description:{kind:"markdown",value:"The object element can represent an external resource, which, depending on the type of the resource, will either be treated as an image, as a nested browsing context, or as an external resource to be processed by a plugin."},attributes:[{name:"data",description:{kind:"markdown",value:"The address of the resource as a valid URL. At least one of **data** and **type** must be defined."}},{name:"type",description:{kind:"markdown",value:"The [content type](https://developer.mozilla.org/en-US/docs/Glossary/Content_type) of the resource specified by **data**. At least one of **data** and **type** must be defined."}},{name:"typemustmatch",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates if the **type** attribute and the actual [content type](https://developer.mozilla.org/en-US/docs/Glossary/Content_type) of the resource must match to be used."}},{name:"name",description:{kind:"markdown",value:"The name of valid browsing context (HTML5), or the name of the control (HTML 4)."}},{name:"usemap",description:{kind:"markdown",value:"A hash-name reference to a [`<map>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/map \"The HTML <map> element is used with <area> elements to define an image map (a clickable link area).\") element; that is a '#' followed by the value of a [`name`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/map#attr-name) of a map element."}},{name:"form",description:{kind:"markdown",value:'The form element, if any, that the object element is associated with (its _form owner_). The value of the attribute must be an ID of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document.'}},{name:"width",description:{kind:"markdown",value:"The width of the display resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). -- (Absolute values only. [NO percentages](https://html.spec.whatwg.org/multipage/embedded-content.html#dimension-attributes))"}},{name:"height",description:{kind:"markdown",value:"The height of the displayed resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). -- (Absolute values only. [NO percentages](https://html.spec.whatwg.org/multipage/embedded-content.html#dimension-attributes))"}},{name:"archive",description:"A space-separated list of URIs for archives of resources for the object."},{name:"border",description:"The width of a border around the control, in pixels."},{name:"classid",description:"The URI of the object's implementation. It can be used together with, or in place of, the **data** attribute."},{name:"codebase",description:"The base path used to resolve relative URIs specified by **classid**, **data**, or **archive**. If not specified, the default is the base URI of the current document."},{name:"codetype",description:"The content type of the data specified by **classid**."},{name:"declare",description:"The presence of this Boolean attribute makes this element a declaration only. The object must be instantiated by a subsequent `<object>` element. In HTML5, repeat the <object> element completely each that that the resource is reused."},{name:"standby",description:"A message that the browser can show while loading the object's implementation and data."},{name:"tabindex",description:"The position of the element in the tabbing navigation order for the current document."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/object"}]},{name:"param",description:{kind:"markdown",value:"The param element defines parameters for plugins invoked by object elements. It does not represent anything on its own."},attributes:[{name:"name",description:{kind:"markdown",value:"Name of the parameter."}},{name:"value",description:{kind:"markdown",value:"Specifies the value of the parameter."}},{name:"type",description:'Only used if the `valuetype` is set to "ref". Specifies the MIME type of values found at the URI specified by value.'},{name:"valuetype",description:'Specifies the type of the `value` attribute. Possible values are:\n\n* data: Default value. The value is passed to the object\'s implementation as a string.\n* ref: The value is a URI to a resource where run-time values are stored.\n* object: An ID of another [`<object>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/object "The HTML <object> element represents an external resource, which can be treated as an image, a nested browsing context, or a resource to be handled by a plugin.") in the same document.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/param"}]},{name:"video",description:{kind:"markdown",value:"A video element is used for playing videos or movies, and audio files with captions."},attributes:[{name:"src"},{name:"crossorigin",valueSet:"xo"},{name:"poster"},{name:"preload",valueSet:"pl"},{name:"autoplay",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute; if specified, the video automatically begins to play back as soon as it can do so without stopping to finish loading the data."}},{name:"mediagroup"},{name:"loop",valueSet:"v"},{name:"muted",valueSet:"v"},{name:"controls",valueSet:"v"},{name:"width"},{name:"height"}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/video"}]},{name:"audio",description:{kind:"markdown",value:"An audio element represents a sound or audio stream."},attributes:[{name:"src",description:{kind:"markdown",value:'The URL of the audio to embed. This is subject to [HTTP access controls](https://developer.mozilla.org/en-US/docs/HTTP_access_control). This is optional; you may instead use the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source "The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.") element within the audio block to specify the audio to embed.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates whether to use CORS to fetch the related image. [CORS-enabled resources](https://developer.mozilla.org/en-US/docs/CORS_Enabled_Image) can be reused in the [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being _tainted_. The allowed values are:\n\nanonymous\n\nSends a cross-origin request without a credential. In other words, it sends the `Origin:` HTTP header without a cookie, X.509 certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (by not setting the `Access-Control-Allow-Origin:` HTTP header), the image will be _tainted_, and its usage restricted.\n\nuse-credentials\n\nSends a cross-origin request with a credential. In other words, it sends the `Origin:` HTTP header with a cookie, a certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (through `Access-Control-Allow-Credentials:` HTTP header), the image will be _tainted_ and its usage restricted.\n\nWhen not present, the resource is fetched without a CORS request (i.e. without sending the `Origin:` HTTP header), preventing its non-tainted used in [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") elements. If invalid, it is handled as if the enumerated keyword **anonymous** was used. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/HTML/CORS_settings_attributes) for additional information.'}},{name:"preload",valueSet:"pl",description:{kind:"markdown",value:"This enumerated attribute is intended to provide a hint to the browser about what the author thinks will lead to the best user experience. It may have one of the following values:\n\n* `none`: Indicates that the audio should not be preloaded.\n* `metadata`: Indicates that only audio metadata (e.g. length) is fetched.\n* `auto`: Indicates that the whole audio file can be downloaded, even if the user is not expected to use it.\n* _empty string_: A synonym of the `auto` value.\n\nIf not set, `preload`'s default value is browser-defined (i.e. each browser may have its own default value). The spec advises it to be set to `metadata`.\n\n**Usage notes:**\n\n* The `autoplay` attribute has precedence over `preload`. If `autoplay` is specified, the browser would obviously need to start downloading the audio for playback.\n* The browser is not forced by the specification to follow the value of this attribute; it is a mere hint."}},{name:"autoplay",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute: if specified, the audio will automatically begin playback as soon as it can do so, without waiting for the entire audio file to finish downloading.\n\n**Note**: Sites that automatically play audio (or videos with an audio track) can be an unpleasant experience for users, so should be avoided when possible. If you must offer autoplay functionality, you should make it opt-in (requiring a user to specifically enable it). However, this can be useful when creating media elements whose source will be set at a later time, under user control."}},{name:"mediagroup"},{name:"loop",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute: if specified, the audio player will automatically seek back to the start upon reaching the end of the audio."}},{name:"muted",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute that indicates whether the audio will be initially silenced. Its default value is `false`."}},{name:"controls",valueSet:"v",description:{kind:"markdown",value:"If this attribute is present, the browser will offer controls to allow the user to control audio playback, including volume, seeking, and pause/resume playback."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/audio"}]},{name:"source",description:{kind:"markdown",value:"The source element allows authors to specify multiple alternative media resources for media elements. It does not represent anything on its own."},attributes:[{name:"src",description:{kind:"markdown",value:'Required for [`<audio>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio "The HTML <audio> element is used to embed sound content in documents. It may contain one or more audio sources, represented using the src attribute or the <source> element: the browser will choose the most suitable one. It can also be the destination for streamed media, using a MediaStream.") and [`<video>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video "The HTML Video element (<video>) embeds a media player which supports video playback into the document."), address of the media resource. The value of this attribute is ignored when the `<source>` element is placed inside a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'}},{name:"type",description:{kind:"markdown",value:"The MIME-type of the resource, optionally with a `codecs` parameter. See [RFC 4281](https://tools.ietf.org/html/rfc4281) for information about how to specify codecs."}},{name:"sizes",description:'Is a list of source sizes that describes the final rendered width of the image represented by the source. Each source size consists of a comma-separated list of media condition-length pairs. This information is used by the browser to determine, before laying the page out, which image defined in [`srcset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source#attr-srcset) to use. \nThe `sizes` attribute has an effect only when the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source "The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.") element is the direct child of a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'},{name:"srcset",description:"A list of one or more strings separated by commas indicating a set of possible images represented by the source for the browser to use. Each string is composed of:\n\n1. one URL to an image,\n2. a width descriptor, that is a positive integer directly followed by `'w'`. The default value, if missing, is the infinity.\n3. a pixel density descriptor, that is a positive floating number directly followed by `'x'`. The default value, if missing, is `1x`.\n\nEach string in the list must have at least a width descriptor or a pixel density descriptor to be valid. Among the list, there must be only one string containing the same tuple of width descriptor and pixel density descriptor. \nThe browser chooses the most adequate image to display at a given point of time. \nThe `srcset` attribute has an effect only when the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source \"The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.\") element is the direct child of a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture \"The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.\") element."},{name:"media",description:'[Media query](https://developer.mozilla.org/en-US/docs/CSS/Media_queries) of the resource\'s intended media; this should be used only in a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/source"}]},{name:"track",description:{kind:"markdown",value:"The track element allows authors to specify explicit external timed text tracks for media elements. It does not represent anything on its own."},attributes:[{name:"default",valueSet:"v",description:{kind:"markdown",value:"This attribute indicates that the track should be enabled unless the user's preferences indicate that another track is more appropriate. This may only be used on one `track` element per media element."}},{name:"kind",valueSet:"tk",description:{kind:"markdown",value:"How the text track is meant to be used. If omitted the default kind is `subtitles`. If the attribute is not present, it will use the `subtitles`. If the attribute contains an invalid value, it will use `metadata`. (Versions of Chrome earlier than 52 treated an invalid value as `subtitles`.) The following keywords are allowed:\n\n* `subtitles`\n * Subtitles provide translation of content that cannot be understood by the viewer. For example dialogue or text that is not English in an English language film.\n * Subtitles may contain additional content, usually extra background information. For example the text at the beginning of the Star Wars films, or the date, time, and location of a scene.\n* `captions`\n * Closed captions provide a transcription and possibly a translation of audio.\n * It may include important non-verbal information such as music cues or sound effects. It may indicate the cue's source (e.g. music, text, character).\n * Suitable for users who are deaf or when the sound is muted.\n* `descriptions`\n * Textual description of the video content.\n * Suitable for users who are blind or where the video cannot be seen.\n* `chapters`\n * Chapter titles are intended to be used when the user is navigating the media resource.\n* `metadata`\n * Tracks used by scripts. Not visible to the user."}},{name:"label",description:{kind:"markdown",value:"A user-readable title of the text track which is used by the browser when listing available text tracks."}},{name:"src",description:{kind:"markdown",value:'Address of the track (`.vtt` file). Must be a valid URL. This attribute must be specified and its URL value must have the same origin as the document — unless the [`<audio>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio "The HTML <audio> element is used to embed sound content in documents. It may contain one or more audio sources, represented using the src attribute or the <source> element: the browser will choose the most suitable one. It can also be the destination for streamed media, using a MediaStream.") or [`<video>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video "The HTML Video element (<video>) embeds a media player which supports video playback into the document.") parent element of the `track` element has a [`crossorigin`](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) attribute.'}},{name:"srclang",description:{kind:"markdown",value:"Language of the track text data. It must be a valid [BCP 47](https://r12a.github.io/app-subtags/) language tag. If the `kind` attribute is set to `subtitles,` then `srclang` must be defined."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/track"}]},{name:"map",description:{kind:"markdown",value:"The map element, in conjunction with an img element and any area element descendants, defines an image map. The element represents its children."},attributes:[{name:"name",description:{kind:"markdown",value:"The name attribute gives the map a name so that it can be referenced. The attribute must be present and must have a non-empty value with no space characters. The value of the name attribute must not be a compatibility-caseless match for the value of the name attribute of another map element in the same document. If the id attribute is also specified, both attributes must have the same value."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/map"}]},{name:"area",description:{kind:"markdown",value:"The area element represents either a hyperlink with some text and a corresponding area on an image map, or a dead area on an image map."},attributes:[{name:"alt"},{name:"coords"},{name:"shape",valueSet:"sh"},{name:"href"},{name:"target"},{name:"download"},{name:"ping"},{name:"rel"},{name:"hreflang"},{name:"type"},{name:"accesskey",description:"Specifies a keyboard navigation accelerator for the element. Pressing ALT or a similar key in association with the specified character selects the form control correlated with that key sequence. Page designers are forewarned to avoid key sequences already bound to browsers. This attribute is global since HTML5."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/area"}]},{name:"table",description:{kind:"markdown",value:"The table element represents data with more than one dimension, in the form of a table."},attributes:[{name:"border"},{name:"align",description:'This enumerated attribute indicates how the table must be aligned inside the containing document. It may have the following values:\n\n* left: the table is displayed on the left side of the document;\n* center: the table is displayed in the center of the document;\n* right: the table is displayed on the right side of the document.\n\n**Usage Note**\n\n* **Do not use this attribute**, as it has been deprecated. The [`<table>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/table "The HTML <table> element represents tabular data — that is, information presented in a two-dimensional table comprised of rows and columns of cells containing data.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). Set [`margin-left`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left "The margin-left CSS property sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") and [`margin-right`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-right "The margin-right CSS property sets the margin area on the right side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") to `auto` or [`margin`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin "The margin CSS property sets the margin area on all four sides of an element. It is a shorthand for margin-top, margin-right, margin-bottom, and margin-left.") to `0 auto` to achieve an effect that is similar to the align attribute.\n* Prior to Firefox 4, Firefox also supported the `middle`, `absmiddle`, and `abscenter` values as synonyms of `center`, in quirks mode only.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/table"}]},{name:"caption",description:{kind:"markdown",value:"The caption element represents the title of the table that is its parent, if it has a parent and that is a table element."},attributes:[{name:"align",description:'This enumerated attribute indicates how the caption must be aligned with respect to the table. It may have one of the following values:\n\n`left`\n\nThe caption is displayed to the left of the table.\n\n`top`\n\nThe caption is displayed above the table.\n\n`right`\n\nThe caption is displayed to the right of the table.\n\n`bottom`\n\nThe caption is displayed below the table.\n\n**Usage note:** Do not use this attribute, as it has been deprecated. The [`<caption>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/caption "The HTML Table Caption element (<caption>) specifies the caption (or title) of a table, and if used is always the first child of a <table>.") element should be styled using the [CSS](https://developer.mozilla.org/en-US/docs/CSS) properties [`caption-side`](https://developer.mozilla.org/en-US/docs/Web/CSS/caption-side "The caption-side CSS property puts the content of a table\'s <caption> on the specified side. The values are relative to the writing-mode of the table.") and [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/caption"}]},{name:"colgroup",description:{kind:"markdown",value:"The colgroup element represents a group of one or more columns in the table that is its parent, if it has a parent and that is a table element."},attributes:[{name:"span"},{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed. The descendant [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") elements may override this value using their own [`align`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-align) attribute.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values:\n * Do not try to set the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on a selector giving a [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element. Because [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") elements are not descendant of the [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element, they won\'t inherit it.\n * If the table doesn\'t use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, use one `td:nth-child(an+b)` CSS selector per column, where a is the total number of the columns in the table and b is the ordinal position of this column in the table. Only after this selector the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property can be used.\n * If the table does use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, the effect can be achieved by combining adequate CSS attribute selectors like `[colspan=n]`, though this is not trivial.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/colgroup"}]},{name:"col",description:{kind:"markdown",value:"If a col element has a parent and that is a colgroup element that itself has a parent that is a table element, then the col element represents one or more columns in the column group represented by that colgroup."},attributes:[{name:"span"},{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, its value is inherited from the [`align`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup#attr-align) of the [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element this `<col>` element belongs too. If there are none, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values:\n * Do not try to set the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on a selector giving a [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") element. Because [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") elements are not descendant of the [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") element, they won\'t inherit it.\n * If the table doesn\'t use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, use the `td:nth-child(an+b)` CSS selector. Set `a` to zero and `b` to the position of the column in the table, e.g. `td:nth-child(2) { text-align: right; }` to right-align the second column.\n * If the table does use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, the effect can be achieved by combining adequate CSS attribute selectors like `[colspan=n]`, though this is not trivial.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/col"}]},{name:"tbody",description:{kind:"markdown",value:"The tbody element represents a block of rows that consist of a body of data for the parent table element, if the tbody element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-charoff) attributes.\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tbody"}]},{name:"thead",description:{kind:"markdown",value:"The thead element represents the block of rows that consist of the column labels (headers) for the parent table element, if the thead element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/thead"}]},{name:"tfoot",description:{kind:"markdown",value:"The tfoot element represents the block of rows that consist of the column summaries (footers) for the parent table element, if the tfoot element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tfoot#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tfoot"}]},{name:"tr",description:{kind:"markdown",value:"The tr element represents a row of cells in a table."},attributes:[{name:"align",description:'A [`DOMString`](https://developer.mozilla.org/en-US/docs/Web/API/DOMString "DOMString is a UTF-16 String. As JavaScript already uses such strings, DOMString is mapped directly to a String.") which specifies how the cell\'s context should be aligned horizontally within the cells in the row; this is shorthand for using `align` on every cell in the row individually. Possible values are:\n\n`left`\n\nAlign the content of each cell at its left edge.\n\n`center`\n\nCenter the contents of each cell between their left and right edges.\n\n`right`\n\nAlign the content of each cell at its right edge.\n\n`justify`\n\nWiden whitespaces within the text of each cell so that the text fills the full width of each cell (full justification).\n\n`char`\n\nAlign each cell in the row on a specific character (such that each row in the column that is configured this way will horizontally align its cells on that character). This uses the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr#attr-charoff) to establish the alignment character (typically "." or "," when aligning numerical data) and the number of characters that should follow the alignment character. This alignment type was never widely supported.\n\nIf no value is expressly set for `align`, the parent node\'s value is inherited.\n\nInstead of using the obsolete `align` attribute, you should instead use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to establish `left`, `center`, `right`, or `justify` alignment for the row\'s cells. To apply character-based alignment, set the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the alignment character (such as `"."` or `","`).'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tr"}]},{name:"td",description:{kind:"markdown",value:"The td element represents a data cell in a table."},attributes:[{name:"colspan"},{name:"rowspan"},{name:"headers"},{name:"abbr",description:"This attribute contains a short abbreviated description of the cell's content. Some user-agents, such as speech readers, may present this description before the content itself.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard. Alternatively, you can put the abbreviated description inside the cell and place the long content in the **title** attribute."},{name:"align",description:'This enumerated attribute specifies how the cell content\'s horizontal alignment will be handled. Possible values are:\n\n* `left`: The content is aligned to the left of the cell.\n* `center`: The content is centered in the cell.\n* `right`: The content is aligned to the right of the cell.\n* `justify` (with text only): The content is stretched out inside the cell so that it covers its entire width.\n* `char` (with text only): The content is aligned to a character inside the `<th>` element with minimal offset. This character is defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nThe default value when this attribute is not specified is `left`.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, apply the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the element.\n* To achieve the same effect as the `char` value, give the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property the same value you would use for the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-char). Unimplemented in CSS3.'},{name:"axis",description:"This attribute contains a list of space-separated strings. Each string is the `id` of a group of cells that this header applies to.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard."},{name:"bgcolor",description:'This attribute defines the background color of each cell in a column. It consists of a 6-digit hexadecimal code as defined in [sRGB](https://www.w3.org/Graphics/Color/sRGB) and is prefixed by \'#\'. This attribute may be used with one of sixteen predefined color strings:\n\n \n\n`black` = "#000000"\n\n \n\n`green` = "#008000"\n\n \n\n`silver` = "#C0C0C0"\n\n \n\n`lime` = "#00FF00"\n\n \n\n`gray` = "#808080"\n\n \n\n`olive` = "#808000"\n\n \n\n`white` = "#FFFFFF"\n\n \n\n`yellow` = "#FFFF00"\n\n \n\n`maroon` = "#800000"\n\n \n\n`navy` = "#000080"\n\n \n\n`red` = "#FF0000"\n\n \n\n`blue` = "#0000FF"\n\n \n\n`purple` = "#800080"\n\n \n\n`teal` = "#008080"\n\n \n\n`fuchsia` = "#FF00FF"\n\n \n\n`aqua` = "#00FFFF"\n\n**Note:** Do not use this attribute, as it is non-standard and only implemented in some versions of Microsoft Internet Explorer: The [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To create a similar effect use the [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property in [CSS](https://developer.mozilla.org/en-US/docs/CSS) instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/td"}]},{name:"th",description:{kind:"markdown",value:"The th element represents a header cell in a table."},attributes:[{name:"colspan"},{name:"rowspan"},{name:"headers"},{name:"scope",valueSet:"s"},{name:"sorted"},{name:"abbr",description:{kind:"markdown",value:"This attribute contains a short abbreviated description of the cell's content. Some user-agents, such as speech readers, may present this description before the content itself."}},{name:"align",description:'This enumerated attribute specifies how the cell content\'s horizontal alignment will be handled. Possible values are:\n\n* `left`: The content is aligned to the left of the cell.\n* `center`: The content is centered in the cell.\n* `right`: The content is aligned to the right of the cell.\n* `justify` (with text only): The content is stretched out inside the cell so that it covers its entire width.\n* `char` (with text only): The content is aligned to a character inside the `<th>` element with minimal offset. This character is defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-charoff) attributes.\n\nThe default value when this attribute is not specified is `left`.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, apply the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the element.\n* To achieve the same effect as the `char` value, give the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property the same value you would use for the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-char). Unimplemented in CSS3.'},{name:"axis",description:"This attribute contains a list of space-separated strings. Each string is the `id` of a group of cells that this header applies to.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard: use the [`scope`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-scope) attribute instead."},{name:"bgcolor",description:'This attribute defines the background color of each cell in a column. It consists of a 6-digit hexadecimal code as defined in [sRGB](https://www.w3.org/Graphics/Color/sRGB) and is prefixed by \'#\'. This attribute may be used with one of sixteen predefined color strings:\n\n \n\n`black` = "#000000"\n\n \n\n`green` = "#008000"\n\n \n\n`silver` = "#C0C0C0"\n\n \n\n`lime` = "#00FF00"\n\n \n\n`gray` = "#808080"\n\n \n\n`olive` = "#808000"\n\n \n\n`white` = "#FFFFFF"\n\n \n\n`yellow` = "#FFFF00"\n\n \n\n`maroon` = "#800000"\n\n \n\n`navy` = "#000080"\n\n \n\n`red` = "#FF0000"\n\n \n\n`blue` = "#0000FF"\n\n \n\n`purple` = "#800080"\n\n \n\n`teal` = "#008080"\n\n \n\n`fuchsia` = "#FF00FF"\n\n \n\n`aqua` = "#00FFFF"\n\n**Note:** Do not use this attribute, as it is non-standard and only implemented in some versions of Microsoft Internet Explorer: The [`<th>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th "The HTML <th> element defines a cell as header of a group of table cells. The exact nature of this group is defined by the scope and headers attributes.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/Web/CSS). To create a similar effect use the [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property in [CSS](https://developer.mozilla.org/en-US/docs/Web/CSS) instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/th"}]},{name:"form",description:{kind:"markdown",value:"The form element represents a collection of form-associated elements, some of which can represent editable values that can be submitted to a server for processing."},attributes:[{name:"accept-charset",description:{kind:"markdown",value:'A space- or comma-delimited list of character encodings that the server accepts. The browser uses them in the order in which they are listed. The default value, the reserved string `"UNKNOWN"`, indicates the same encoding as that of the document containing the form element. \nIn previous versions of HTML, the different character encodings could be delimited by spaces or commas. In HTML5, only spaces are allowed as delimiters.'}},{name:"action",description:{kind:"markdown",value:'The URI of a program that processes the form information. This value can be overridden by a [`formaction`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formaction) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"autocomplete",valueSet:"o",description:{kind:"markdown",value:"Indicates whether input elements can by default have their values automatically completed by the browser. This setting can be overridden by an `autocomplete` attribute on an element belonging to the form. Possible values are:\n\n* `off`: The user must explicitly enter a value into each field for every use, or the document provides its own auto-completion method; the browser does not automatically complete entries.\n* `on`: The browser can automatically complete values based on values that the user has previously entered in the form.\n\nFor most modern browsers (including Firefox 38+, Google Chrome 34+, IE 11+) setting the autocomplete attribute will not prevent a browser's password manager from asking the user if they want to store login fields (username and password), if the user permits the storage the browser will autofill the login the next time the user visits the page. See [The autocomplete attribute and login fields](https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion#The_autocomplete_attribute_and_login_fields)."}},{name:"enctype",valueSet:"et",description:{kind:"markdown",value:'When the value of the `method` attribute is `post`, enctype is the [MIME type](https://en.wikipedia.org/wiki/Mime_type) of content that is used to submit the form to the server. Possible values are:\n\n* `application/x-www-form-urlencoded`: The default value if the attribute is not specified.\n* `multipart/form-data`: The value used for an [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element with the `type` attribute set to "file".\n* `text/plain`: (HTML5)\n\nThis value can be overridden by a [`formenctype`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formenctype) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"method",valueSet:"m",description:{kind:"markdown",value:'The [HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP) method that the browser uses to submit the form. Possible values are:\n\n* `post`: Corresponds to the HTTP [POST method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5) ; form data are included in the body of the form and sent to the server.\n* `get`: Corresponds to the HTTP [GET method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.3); form data are appended to the `action` attribute URI with a \'?\' as separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters.\n* `dialog`: Use when the form is inside a [`<dialog>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog "The HTML <dialog> element represents a dialog box or other interactive component, such as an inspector or window.") element to close the dialog when submitted.\n\nThis value can be overridden by a [`formmethod`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formmethod) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"name",description:{kind:"markdown",value:"The name of the form. In HTML 4, its use is deprecated (`id` should be used instead). It must be unique among the forms in a document and not just an empty string in HTML 5."}},{name:"novalidate",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the form is not to be validated when submitted. If this attribute is not specified (and therefore the form is validated), this default setting can be overridden by a [`formnovalidate`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formnovalidate) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element belonging to the form.'}},{name:"target",description:{kind:"markdown",value:'A name or keyword indicating where to display the response that is received after submitting the form. In HTML 4, this is the name/keyword for a frame. In HTML5, it is a name/keyword for a _browsing context_ (for example, tab, window, or inline frame). The following keywords have special meanings:\n\n* `_self`: Load the response into the same HTML 4 frame (or HTML5 browsing context) as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the response into a new unnamed HTML 4 window or HTML5 browsing context.\n* `_parent`: Load the response into the HTML 4 frameset parent of the current frame, or HTML5 parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: HTML 4: Load the response into the full original window, and cancel all other frames. HTML5: Load the response into the top-level browsing context (i.e., the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`.\n* _iframename_: The response is displayed in a named [`<iframe>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe "The HTML Inline Frame element (<iframe>) represents a nested browsing context, embedding another HTML page into the current one.").\n\nHTML5: This value can be overridden by a [`formtarget`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formtarget) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"accept",description:'A comma-separated list of content types that the server accepts.\n\n**Usage note:** This attribute has been removed in HTML5 and should no longer be used. Instead, use the [`accept`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-accept) attribute of the specific [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'},{name:"autocapitalize",description:"This is a nonstandard attribute used by iOS Safari Mobile which controls whether and how the text value for textual form control descendants should be automatically capitalized as it is entered/edited by the user. If the `autocapitalize` attribute is specified on an individual form control descendant, it trumps the form-wide `autocapitalize` setting. The non-deprecated values are available in iOS 5 and later. The default value is `sentences`. Possible values are:\n\n* `none`: Completely disables automatic capitalization\n* `sentences`: Automatically capitalize the first letter of sentences.\n* `words`: Automatically capitalize the first letter of words.\n* `characters`: Automatically capitalize all characters.\n* `on`: Deprecated since iOS 5.\n* `off`: Deprecated since iOS 5."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/form"}]},{name:"label",description:{kind:"markdown",value:"The label element represents a caption in a user interface. The caption can be associated with a specific form control, known as the label element's labeled control, either using the for attribute, or by putting the form control inside the label element itself."},attributes:[{name:"form",description:{kind:"markdown",value:'The [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element with which the label is associated (its _form owner_). If specified, the value of the attribute is the `id` of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document. This lets you place label elements anywhere within a document, not just as descendants of their form elements.'}},{name:"for",description:{kind:"markdown",value:"The [`id`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-id) of a [labelable](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Content_categories#Form_labelable) form-related element in the same document as the `<label>` element. The first element in the document with an `id` matching the value of the `for` attribute is the _labeled control_ for this label element, if it is a labelable element. If it is not labelable then the `for` attribute has no effect. If there are other elements which also match the `id` value, later in the document, they are not considered.\n\n**Note**: A `<label>` element can have both a `for` attribute and a contained control element, as long as the `for` attribute points to the contained control element."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/label"}]},{name:"input",description:{kind:"markdown",value:"The input element represents a typed data field, usually with a form control to allow the user to edit the data."},attributes:[{name:"accept"},{name:"alt"},{name:"autocomplete",valueSet:"inputautocomplete"},{name:"autofocus",valueSet:"v"},{name:"checked",valueSet:"v"},{name:"dirname"},{name:"disabled",valueSet:"v"},{name:"form"},{name:"formaction"},{name:"formenctype",valueSet:"et"},{name:"formmethod",valueSet:"fm"},{name:"formnovalidate",valueSet:"v"},{name:"formtarget"},{name:"height"},{name:"inputmode",valueSet:"im"},{name:"list"},{name:"max"},{name:"maxlength"},{name:"min"},{name:"minlength"},{name:"multiple",valueSet:"v"},{name:"name"},{name:"pattern"},{name:"placeholder"},{name:"readonly",valueSet:"v"},{name:"required",valueSet:"v"},{name:"size"},{name:"src"},{name:"step"},{name:"type",valueSet:"t"},{name:"value"},{name:"width"}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/input"}]},{name:"button",description:{kind:"markdown",value:"The button element represents a button labeled by its contents."},attributes:[{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that the button should have input focus when the page loads, unless the user overrides it, for example by typing in a different control. Only one form-associated element in a document can have this attribute specified."}},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the user cannot interact with the button. If this attribute is not specified, the button inherits its setting from the containing element, for example [`<fieldset>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset "The HTML <fieldset> element is used to group several controls as well as labels (<label>) within a web form."); if there is no containing element with the **disabled** attribute set, then the button is enabled.\n\nFirefox will, unlike other browsers, by default, [persist the dynamic disabled state](https://stackoverflow.com/questions/5985839/bug-with-firefox-disabled-attribute-of-input-not-resetting-when-refreshing) of a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") across page loads. Use the [`autocomplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-autocomplete) attribute to control this feature.'}},{name:"form",description:{kind:"markdown",value:'The form element that the button is associated with (its _form owner_). The value of the attribute must be the **id** attribute of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document. If this attribute is not specified, the `<button>` element will be associated to an ancestor [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element, if one exists. This attribute enables you to associate `<button>` elements to [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") elements anywhere within a document, not just as descendants of [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") elements.'}},{name:"formaction",description:{kind:"markdown",value:"The URI of a program that processes the information submitted by the button. If specified, it overrides the [`action`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-action) attribute of the button's form owner."}},{name:"formenctype",valueSet:"et",description:{kind:"markdown",value:'If the button is a submit button, this attribute specifies the type of content that is used to submit the form to the server. Possible values are:\n\n* `application/x-www-form-urlencoded`: The default value if the attribute is not specified.\n* `multipart/form-data`: Use this value if you are using an [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element with the [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-type) attribute set to `file`.\n* `text/plain`\n\nIf this attribute is specified, it overrides the [`enctype`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-enctype) attribute of the button\'s form owner.'}},{name:"formmethod",valueSet:"fm",description:{kind:"markdown",value:"If the button is a submit button, this attribute specifies the HTTP method that the browser uses to submit the form. Possible values are:\n\n* `post`: The data from the form are included in the body of the form and sent to the server.\n* `get`: The data from the form are appended to the **form** attribute URI, with a '?' as a separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters.\n\nIf specified, this attribute overrides the [`method`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-method) attribute of the button's form owner."}},{name:"formnovalidate",valueSet:"v",description:{kind:"markdown",value:"If the button is a submit button, this Boolean attribute specifies that the form is not to be validated when it is submitted. If this attribute is specified, it overrides the [`novalidate`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-novalidate) attribute of the button's form owner."}},{name:"formtarget",description:{kind:"markdown",value:"If the button is a submit button, this attribute is a name or keyword indicating where to display the response that is received after submitting the form. This is a name of, or keyword for, a _browsing context_ (for example, tab, window, or inline frame). If this attribute is specified, it overrides the [`target`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-target) attribute of the button's form owner. The following keywords have special meanings:\n\n* `_self`: Load the response into the same browsing context as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the response into a new unnamed browsing context.\n* `_parent`: Load the response into the parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: Load the response into the top-level browsing context (that is, the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`."}},{name:"name",description:{kind:"markdown",value:"The name of the button, which is submitted with the form data."}},{name:"type",valueSet:"bt",description:{kind:"markdown",value:"The type of the button. Possible values are:\n\n* `submit`: The button submits the form data to the server. This is the default if the attribute is not specified, or if the attribute is dynamically changed to an empty or invalid value.\n* `reset`: The button resets all the controls to their initial values.\n* `button`: The button has no default behavior. It can have client-side scripts associated with the element's events, which are triggered when the events occur."}},{name:"value",description:{kind:"markdown",value:"The initial value of the button. It defines the value associated with the button which is submitted with the form data. This value is passed to the server in params when the form is submitted."}},{name:"autocomplete",description:'The use of this attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") is nonstandard and Firefox-specific. By default, unlike other browsers, [Firefox persists the dynamic disabled state](https://stackoverflow.com/questions/5985839/bug-with-firefox-disabled-attribute-of-input-not-resetting-when-refreshing) of a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") across page loads. Setting the value of this attribute to `off` (i.e. `autocomplete="off"`) disables this feature. See [bug 654072](https://bugzilla.mozilla.org/show_bug.cgi?id=654072 "if disabled state is changed with javascript, the normal state doesn\'t return after refreshing the page").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/button"}]},{name:"select",description:{kind:"markdown",value:"The select element represents a control for selecting amongst a set of options."},attributes:[{name:"autocomplete",valueSet:"inputautocomplete",description:{kind:"markdown",value:'A [`DOMString`](https://developer.mozilla.org/en-US/docs/Web/API/DOMString "DOMString is a UTF-16 String. As JavaScript already uses such strings, DOMString is mapped directly to a String.") providing a hint for a [user agent\'s](https://developer.mozilla.org/en-US/docs/Glossary/user_agent "user agent\'s: A user agent is a computer program representing a person, for example, a browser in a Web context.") autocomplete feature. See [The HTML autocomplete attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for a complete list of values and details on how to use autocomplete.'}},{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that a form control should have input focus when the page loads. Only one form element in a document can have the `autofocus` attribute."}},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that the user cannot interact with the control. If this attribute is not specified, the control inherits its setting from the containing element, for example `fieldset`; if there is no containing element with the `disabled` attribute set, then the control is enabled."}},{name:"form",description:{kind:"markdown",value:'This attribute lets you specify the form element to which the select element is associated (that is, its "form owner"). If this attribute is specified, its value must be the same as the `id` of a form element in the same document. This enables you to place select elements anywhere within a document, not just as descendants of their form elements.'}},{name:"multiple",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that multiple options can be selected in the list. If it is not specified, then only one option can be selected at a time. When `multiple` is specified, most browsers will show a scrolling list box instead of a single line dropdown."}},{name:"name",description:{kind:"markdown",value:"This attribute is used to specify the name of the control."}},{name:"required",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute indicating that an option with a non-empty string value must be selected."}},{name:"size",description:{kind:"markdown",value:"If the control is presented as a scrolling list box (e.g. when `multiple` is specified), this attribute represents the number of rows in the list that should be visible at one time. Browsers are not required to present a select element as a scrolled list box. The default value is 0.\n\n**Note:** According to the HTML5 specification, the default value for size should be 1; however, in practice, this has been found to break some web sites, and no other browser currently does that, so Mozilla has opted to continue to return 0 for the time being with Firefox."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/select"}]},{name:"datalist",description:{kind:"markdown",value:"The datalist element represents a set of option elements that represent predefined options for other controls. In the rendering, the datalist element represents nothing and it, along with its children, should be hidden."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/datalist"}]},{name:"optgroup",description:{kind:"markdown",value:"The optgroup element represents a group of option elements with a common label."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"If this Boolean attribute is set, none of the items in this option group is selectable. Often browsers grey out such control and it won't receive any browsing events, like mouse clicks or focus-related ones."}},{name:"label",description:{kind:"markdown",value:"The name of the group of options, which the browser can use when labeling the options in the user interface. This attribute is mandatory if this element is used."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/optgroup"}]},{name:"option",description:{kind:"markdown",value:"The option element represents an option in a select element or as part of a list of suggestions in a datalist element."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'If this Boolean attribute is set, this option is not checkable. Often browsers grey out such control and it won\'t receive any browsing event, like mouse clicks or focus-related ones. If this attribute is not set, the element can still be disabled if one of its ancestors is a disabled [`<optgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/optgroup "The HTML <optgroup> element creates a grouping of options within a <select> element.") element.'}},{name:"label",description:{kind:"markdown",value:"This attribute is text for the label indicating the meaning of the option. If the `label` attribute isn't defined, its value is that of the element text content."}},{name:"selected",valueSet:"v",description:{kind:"markdown",value:'If present, this Boolean attribute indicates that the option is initially selected. If the `<option>` element is the descendant of a [`<select>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select "The HTML <select> element represents a control that provides a menu of options") element whose [`multiple`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select#attr-multiple) attribute is not set, only one single `<option>` of this [`<select>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select "The HTML <select> element represents a control that provides a menu of options") element may have the `selected` attribute.'}},{name:"value",description:{kind:"markdown",value:"The content of this attribute represents the value to be submitted with the form, should this option be selected. If this attribute is omitted, the value is taken from the text content of the option element."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/option"}]},{name:"textarea",description:{kind:"markdown",value:"The textarea element represents a multiline plain text edit control for the element's raw value. The contents of the control represent the control's default value."},attributes:[{name:"autocomplete",valueSet:"inputautocomplete",description:{kind:"markdown",value:'This attribute indicates whether the value of the control can be automatically completed by the browser. Possible values are:\n\n* `off`: The user must explicitly enter a value into this field for every use, or the document provides its own auto-completion method; the browser does not automatically complete the entry.\n* `on`: The browser can automatically complete the value based on values that the user has entered during previous uses.\n\nIf the `autocomplete` attribute is not specified on a `<textarea>` element, then the browser uses the `autocomplete` attribute value of the `<textarea>` element\'s form owner. The form owner is either the [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element that this `<textarea>` element is a descendant of or the form element whose `id` is specified by the `form` attribute of the input element. For more information, see the [`autocomplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-autocomplete) attribute in [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.").'}},{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that a form control should have input focus when the page loads. Only one form-associated element in a document can have this attribute specified."}},{name:"cols",description:{kind:"markdown",value:"The visible width of the text control, in average character widths. If it is specified, it must be a positive integer. If it is not specified, the default value is `20`."}},{name:"dirname"},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the user cannot interact with the control. If this attribute is not specified, the control inherits its setting from the containing element, for example [`<fieldset>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset "The HTML <fieldset> element is used to group several controls as well as labels (<label>) within a web form."); if there is no containing element when the `disabled` attribute is set, the control is enabled.'}},{name:"form",description:{kind:"markdown",value:'The form element that the `<textarea>` element is associated with (its "form owner"). The value of the attribute must be the `id` of a form element in the same document. If this attribute is not specified, the `<textarea>` element must be a descendant of a form element. This attribute enables you to place `<textarea>` elements anywhere within a document, not just as descendants of form elements.'}},{name:"inputmode",valueSet:"im"},{name:"maxlength",description:{kind:"markdown",value:"The maximum number of characters (unicode code points) that the user can enter. If this value isn't specified, the user can enter an unlimited number of characters."}},{name:"minlength",description:{kind:"markdown",value:"The minimum number of characters (unicode code points) required that the user should enter."}},{name:"name",description:{kind:"markdown",value:"The name of the control."}},{name:"placeholder",description:{kind:"markdown",value:'A hint to the user of what can be entered in the control. Carriage returns or line-feeds within the placeholder text must be treated as line breaks when rendering the hint.\n\n**Note:** Placeholders should only be used to show an example of the type of data that should be entered into a form; they are _not_ a substitute for a proper [`<label>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/label "The HTML <label> element represents a caption for an item in a user interface.") element tied to the input. See [Labels and placeholders](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Labels_and_placeholders "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") in [<input>: The Input (Form Input) element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") for a full explanation.'}},{name:"readonly",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that the user cannot modify the value of the control. Unlike the `disabled` attribute, the `readonly` attribute does not prevent the user from clicking or selecting in the control. The value of a read-only control is still submitted with the form."}},{name:"required",valueSet:"v",description:{kind:"markdown",value:"This attribute specifies that the user must fill in a value before submitting a form."}},{name:"rows",description:{kind:"markdown",value:"The number of visible text lines for the control."}},{name:"wrap",valueSet:"w",description:{kind:"markdown",value:"Indicates how the control wraps text. Possible values are:\n\n* `hard`: The browser automatically inserts line breaks (CR+LF) so that each line has no more than the width of the control; the `cols` attribute must also be specified for this to take effect.\n* `soft`: The browser ensures that all line breaks in the value consist of a CR+LF pair, but does not insert any additional line breaks.\n* `off` : Like `soft` but changes appearance to `white-space: pre` so line segments exceeding `cols` are not wrapped and the `<textarea>` becomes horizontally scrollable.\n\nIf this attribute is not specified, `soft` is its default value."}},{name:"autocapitalize",description:"This is a non-standard attribute supported by WebKit on iOS (therefore nearly all browsers running on iOS, including Safari, Firefox, and Chrome), which controls whether and how the text value should be automatically capitalized as it is entered/edited by the user. The non-deprecated values are available in iOS 5 and later. Possible values are:\n\n* `none`: Completely disables automatic capitalization.\n* `sentences`: Automatically capitalize the first letter of sentences.\n* `words`: Automatically capitalize the first letter of words.\n* `characters`: Automatically capitalize all characters.\n* `on`: Deprecated since iOS 5.\n* `off`: Deprecated since iOS 5."},{name:"spellcheck",description:"Specifies whether the `<textarea>` is subject to spell checking by the underlying browser/OS. the value can be:\n\n* `true`: Indicates that the element needs to have its spelling and grammar checked.\n* `default` : Indicates that the element is to act according to a default behavior, possibly based on the parent element's own `spellcheck` value.\n* `false` : Indicates that the element should not be spell checked."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/textarea"}]},{name:"output",description:{kind:"markdown",value:"The output element represents the result of a calculation performed by the application, or the result of a user action."},attributes:[{name:"for",description:{kind:"markdown",value:"A space-separated list of other elements’ [`id`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id)s, indicating that those elements contributed input values to (or otherwise affected) the calculation."}},{name:"form",description:{kind:"markdown",value:'The [form element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form) that this element is associated with (its "form owner"). The value of the attribute must be an `id` of a form element in the same document. If this attribute is not specified, the output element must be a descendant of a form element. This attribute enables you to place output elements anywhere within a document, not just as descendants of their form elements.'}},{name:"name",description:{kind:"markdown",value:'The name of the element, exposed in the [`HTMLFormElement`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement "The HTMLFormElement interface represents a <form> element in the DOM; it allows access to and in some cases modification of aspects of the form, as well as access to its component elements.") API.'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/output"}]},{name:"progress",description:{kind:"markdown",value:"The progress element represents the completion progress of a task. The progress is either indeterminate, indicating that progress is being made but that it is not clear how much more work remains to be done before the task is complete (e.g. because the task is waiting for a remote host to respond), or the progress is a number in the range zero to a maximum, giving the fraction of work that has so far been completed."},attributes:[{name:"value",description:{kind:"markdown",value:"This attribute specifies how much of the task that has been completed. It must be a valid floating point number between 0 and `max`, or between 0 and 1 if `max` is omitted. If there is no `value` attribute, the progress bar is indeterminate; this indicates that an activity is ongoing with no indication of how long it is expected to take."}},{name:"max",description:{kind:"markdown",value:"This attribute describes how much work the task indicated by the `progress` element requires. The `max` attribute, if present, must have a value greater than zero and be a valid floating point number. The default value is 1."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/progress"}]},{name:"meter",description:{kind:"markdown",value:"The meter element represents a scalar measurement within a known range, or a fractional value; for example disk usage, the relevance of a query result, or the fraction of a voting population to have selected a particular candidate."},attributes:[{name:"value",description:{kind:"markdown",value:"The current numeric value. This must be between the minimum and maximum values (`min` attribute and `max` attribute) if they are specified. If unspecified or malformed, the value is 0. If specified, but not within the range given by the `min` attribute and `max` attribute, the value is equal to the nearest end of the range.\n\n**Usage note:** Unless the `value` attribute is between `0` and `1` (inclusive), the `min` and `max` attributes should define the range so that the `value` attribute's value is within it."}},{name:"min",description:{kind:"markdown",value:"The lower numeric bound of the measured range. This must be less than the maximum value (`max` attribute), if specified. If unspecified, the minimum value is 0."}},{name:"max",description:{kind:"markdown",value:"The upper numeric bound of the measured range. This must be greater than the minimum value (`min` attribute), if specified. If unspecified, the maximum value is 1."}},{name:"low",description:{kind:"markdown",value:"The upper numeric bound of the low end of the measured range. This must be greater than the minimum value (`min` attribute), and it also must be less than the high value and maximum value (`high` attribute and `max` attribute, respectively), if any are specified. If unspecified, or if less than the minimum value, the `low` value is equal to the minimum value."}},{name:"high",description:{kind:"markdown",value:"The lower numeric bound of the high end of the measured range. This must be less than the maximum value (`max` attribute), and it also must be greater than the low value and minimum value (`low` attribute and **min** attribute, respectively), if any are specified. If unspecified, or if greater than the maximum value, the `high` value is equal to the maximum value."}},{name:"optimum",description:{kind:"markdown",value:"This attribute indicates the optimal numeric value. It must be within the range (as defined by the `min` attribute and `max` attribute). When used with the `low` attribute and `high` attribute, it gives an indication where along the range is considered preferable. For example, if it is between the `min` attribute and the `low` attribute, then the lower range is considered preferred."}},{name:"form",description:"This attribute associates the element with a `form` element that has ownership of the `meter` element. For example, a `meter` might be displaying a range corresponding to an `input` element of `type` _number_. This attribute is only used if the `meter` element is being used as a form-associated element; even then, it may be omitted if the element appears as a descendant of a `form` element."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/meter"}]},{name:"fieldset",description:{kind:"markdown",value:"The fieldset element represents a set of form controls optionally grouped under a common name."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"If this Boolean attribute is set, all form controls that are descendants of the `<fieldset>`, are disabled, meaning they are not editable and won't be submitted along with the `<form>`. They won't receive any browsing events, like mouse clicks or focus-related events. By default browsers display such controls grayed out. Note that form elements inside the [`<legend>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend \"The HTML <legend> element represents a caption for the content of its parent <fieldset>.\") element won't be disabled."}},{name:"form",description:{kind:"markdown",value:'This attribute takes the value of the `id` attribute of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element you want the `<fieldset>` to be part of, even if it is not inside the form.'}},{name:"name",description:{kind:"markdown",value:'The name associated with the group.\n\n**Note**: The caption for the fieldset is given by the first [`<legend>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend "The HTML <legend> element represents a caption for the content of its parent <fieldset>.") element nested inside it.'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/fieldset"}]},{name:"legend",description:{kind:"markdown",value:"The legend element represents a caption for the rest of the contents of the legend element's parent fieldset element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/legend"}]},{name:"details",description:{kind:"markdown",value:"The details element represents a disclosure widget from which the user can obtain additional information or controls."},attributes:[{name:"open",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates whether or not the details — that is, the contents of the `<details>` element — are currently visible. The default, `false`, means the details are not visible."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/details"}]},{name:"summary",description:{kind:"markdown",value:"The summary element represents a summary, caption, or legend for the rest of the contents of the summary element's parent details element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/summary"}]},{name:"dialog",description:{kind:"markdown",value:"The dialog element represents a part of an application that a user interacts with to perform a task, for example a dialog box, inspector, or window."},attributes:[{name:"open",description:"Indicates that the dialog is active and available for interaction. When the `open` attribute is not set, the dialog shouldn't be shown to the user."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dialog"}]},{name:"script",description:{kind:"markdown",value:"The script element allows authors to include dynamic script and data blocks in their documents. The element does not represent content for the user."},attributes:[{name:"src",description:{kind:"markdown",value:"This attribute specifies the URI of an external script; this can be used as an alternative to embedding a script directly within a document.\n\nIf a `script` element has a `src` attribute specified, it should not have a script embedded inside its tags."}},{name:"type",description:{kind:"markdown",value:'This attribute indicates the type of script represented. The value of this attribute will be in one of the following categories:\n\n* **Omitted or a JavaScript MIME type:** For HTML5-compliant browsers this indicates the script is JavaScript. HTML5 specification urges authors to omit the attribute rather than provide a redundant MIME type. In earlier browsers, this identified the scripting language of the embedded or imported (via the `src` attribute) code. JavaScript MIME types are [listed in the specification](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types#JavaScript_types).\n* **`module`:** For HTML5-compliant browsers the code is treated as a JavaScript module. The processing of the script contents is not affected by the `charset` and `defer` attributes. For information on using `module`, see [ES6 in Depth: Modules](https://hacks.mozilla.org/2015/08/es6-in-depth-modules/). Code may behave differently when the `module` keyword is used.\n* **Any other value:** The embedded content is treated as a data block which won\'t be processed by the browser. Developers must use a valid MIME type that is not a JavaScript MIME type to denote data blocks. The `src` attribute will be ignored.\n\n**Note:** in Firefox you could specify the version of JavaScript contained in a `<script>` element by including a non-standard `version` parameter inside the `type` attribute — for example `type="text/javascript;version=1.8"`. This has been removed in Firefox 59 (see [bug 1428745](https://bugzilla.mozilla.org/show_bug.cgi?id=1428745 "FIXED: Remove support for version parameter from script loader")).'}},{name:"charset"},{name:"async",valueSet:"v",description:{kind:"markdown",value:'This is a Boolean attribute indicating that the browser should, if possible, load the script asynchronously.\n\nThis attribute must not be used if the `src` attribute is absent (i.e. for inline scripts). If it is included in this case it will have no effect.\n\nBrowsers usually assume the worst case scenario and load scripts synchronously, (i.e. `async="false"`) during HTML parsing.\n\nDynamically inserted scripts (using [`document.createElement()`](https://developer.mozilla.org/en-US/docs/Web/API/Document/createElement "In an HTML document, the document.createElement() method creates the HTML element specified by tagName, or an HTMLUnknownElement if tagName isn\'t recognized.")) load asynchronously by default, so to turn on synchronous loading (i.e. scripts load in the order they were inserted) set `async="false"`.\n\nSee [Browser compatibility](#Browser_compatibility) for notes on browser support. See also [Async scripts for asm.js](https://developer.mozilla.org/en-US/docs/Games/Techniques/Async_scripts).'}},{name:"defer",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute is set to indicate to a browser that the script is meant to be executed after the document has been parsed, but before firing [`DOMContentLoaded`](https://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded "/en-US/docs/Web/Events/DOMContentLoaded").\n\nScripts with the `defer` attribute will prevent the `DOMContentLoaded` event from firing until the script has loaded and finished evaluating.\n\nThis attribute must not be used if the `src` attribute is absent (i.e. for inline scripts), in this case it would have no effect.\n\nTo achieve a similar effect for dynamically inserted scripts use `async="false"` instead. Scripts with the `defer` attribute will execute in the order in which they appear in the document.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'Normal `script` elements pass minimal information to the [`window.onerror`](https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror "The onerror property of the GlobalEventHandlers mixin is an EventHandler that processes error events.") for scripts which do not pass the standard [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") checks. To allow error logging for sites which use a separate domain for static media, use this attribute. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) for a more descriptive explanation of its valid arguments.'}},{name:"nonce",description:{kind:"markdown",value:"A cryptographic nonce (number used once) to whitelist inline scripts in a [script-src Content-Security-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/script-src). The server must generate a unique nonce value each time it transmits a policy. It is critical to provide a nonce that cannot be guessed as bypassing a resource's policy is otherwise trivial."}},{name:"integrity",description:"This attribute contains inline metadata that a user agent can use to verify that a fetched resource has been delivered free of unexpected manipulation. See [Subresource Integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity)."},{name:"nomodule",description:"This Boolean attribute is set to indicate that the script should not be executed in browsers that support [ES2015 modules](https://hacks.mozilla.org/2015/08/es6-in-depth-modules/) — in effect, this can be used to serve fallback scripts to older browsers that do not support modular JavaScript code."},{name:"referrerpolicy",description:'Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/API/Document/referrer) to send when fetching the script, or resources fetched by the script:\n\n* `no-referrer`: The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` (default): The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent to [origin](https://developer.mozilla.org/en-US/docs/Glossary/origin "origin: Web content\'s origin is defined by the scheme (protocol), host (domain), and port of the URL used to access it. Two objects have the same origin only when the scheme, host, and port all match.")s without [TLS](https://developer.mozilla.org/en-US/docs/Glossary/TLS "TLS: Transport Layer Security (TLS), previously known as Secure Sockets Layer (SSL), is a protocol used by applications to communicate securely across a network, preventing tampering with and eavesdropping on email, web browsing, messaging, and other protocols.") ([HTTPS](https://developer.mozilla.org/en-US/docs/Glossary/HTTPS "HTTPS: HTTPS (HTTP Secure) is an encrypted version of the HTTP protocol. It usually uses SSL or TLS to encrypt all communication between a client and a server. This secure connection allows clients to safely exchange sensitive data with a server, for example for banking activities or online shopping.")).\n* `origin`: The sent referrer will be limited to the origin of the referring page: its [scheme](https://developer.mozilla.org/en-US/docs/Archive/Mozilla/URIScheme), [host](https://developer.mozilla.org/en-US/docs/Glossary/host "host: A host is a device connected to the Internet (or a local network). Some hosts called servers offer additional services like serving webpages or storing files and emails."), and [port](https://developer.mozilla.org/en-US/docs/Glossary/port "port: For a computer connected to a network with an IP address, a port is a communication endpoint. Ports are designated by numbers, and below 1024 each port is associated by default with a specific protocol.").\n* `origin-when-cross-origin`: The referrer sent to other origins will be limited to the scheme, the host, and the port. Navigations on the same origin will still include the path.\n* `same-origin`: A referrer will be sent for [same origin](https://developer.mozilla.org/en-US/docs/Glossary/Same-origin_policy "same origin: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin."), but cross-origin requests will contain no referrer information.\n* `strict-origin`: Only send the origin of the document as the referrer when the protocol security level stays the same (e.g. HTTPS→HTTPS), but don\'t send it to a less secure destination (e.g. HTTPS→HTTP).\n* `strict-origin-when-cross-origin`: Send a full URL when performing a same-origin request, but only send the origin when the protocol security level stays the same (e.g.HTTPS→HTTPS), and send no header to a less secure destination (e.g. HTTPS→HTTP).\n* `unsafe-url`: The referrer will include the origin _and_ the path (but not the [fragment](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/hash), [password](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/password), or [username](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/username)). **This value is unsafe**, because it leaks origins and paths from TLS-protected resources to insecure origins.\n\n**Note**: An empty string value (`""`) is both the default value, and a fallback value if `referrerpolicy` is not supported. If `referrerpolicy` is not explicitly specified on the `<script>` element, it will adopt a higher-level referrer policy, i.e. one set on the whole document or domain. If a higher-level policy is not available, the empty string is treated as being equivalent to `no-referrer-when-downgrade`.'},{name:"text",description:"Like the `textContent` attribute, this attribute sets the text content of the element. Unlike the `textContent` attribute, however, this attribute is evaluated as executable code after the node is inserted into the DOM."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/script"}]},{name:"noscript",description:{kind:"markdown",value:"The noscript element represents nothing if scripting is enabled, and represents its children if scripting is disabled. It is used to present different markup to user agents that support scripting and those that don't support scripting, by affecting how the document is parsed."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/noscript"}]},{name:"template",description:{kind:"markdown",value:"The template element is used to declare fragments of HTML that can be cloned and inserted in the document by script."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/template"}]},{name:"canvas",description:{kind:"markdown",value:"The canvas element provides scripts with a resolution-dependent bitmap canvas, which can be used for rendering graphs, game graphics, art, or other visual images on the fly."},attributes:[{name:"width",description:{kind:"markdown",value:"The width of the coordinate space in CSS pixels. Defaults to 300."}},{name:"height",description:{kind:"markdown",value:"The height of the coordinate space in CSS pixels. Defaults to 150."}},{name:"moz-opaque",description:"Lets the canvas know whether or not translucency will be a factor. If the canvas knows there's no translucency, painting performance can be optimized. This is only supported by Mozilla-based browsers; use the standardized [`canvas.getContext('2d', { alpha: false })`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/getContext \"The HTMLCanvasElement.getContext() method returns a drawing context on the canvas, or null if the context identifier is not supported.\") instead."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/canvas"}]}],globalAttributes:[{name:"accesskey",description:{kind:"markdown",value:"Provides a hint for generating a keyboard shortcut for the current element. This attribute consists of a space-separated list of characters. The browser should use the first one that exists on the computer keyboard layout."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/accesskey"}]},{name:"autocapitalize",description:{kind:"markdown",value:"Controls whether and how text input is automatically capitalized as it is entered/edited by the user. It can have the following values:\n\n* `off` or `none`, no autocapitalization is applied (all letters default to lowercase)\n* `on` or `sentences`, the first letter of each sentence defaults to a capital letter; all other letters default to lowercase\n* `words`, the first letter of each word defaults to a capital letter; all other letters default to lowercase\n* `characters`, all letters should default to uppercase"},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/autocapitalize"}]},{name:"class",description:{kind:"markdown",value:'A space-separated list of the classes of the element. Classes allows CSS and JavaScript to select and access specific elements via the [class selectors](/en-US/docs/Web/CSS/Class_selectors) or functions like the method [`Document.getElementsByClassName()`](/en-US/docs/Web/API/Document/getElementsByClassName "returns an array-like object of all child elements which have all of the given class names.").'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/class"}]},{name:"contenteditable",description:{kind:"markdown",value:"An enumerated attribute indicating if the element should be editable by the user. If so, the browser modifies its widget to allow editing. The attribute must take one of the following values:\n\n* `true` or the _empty string_, which indicates that the element must be editable;\n* `false`, which indicates that the element must not be editable."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/contenteditable"}]},{name:"contextmenu",description:{kind:"markdown",value:'The `[**id**](#attr-id)` of a [`<menu>`](/en-US/docs/Web/HTML/Element/menu "The HTML <menu> element represents a group of commands that a user can perform or activate. This includes both list menus, which might appear across the top of a screen, as well as context menus, such as those that might appear underneath a button after it has been clicked.") to use as the contextual menu for this element.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/contextmenu"}]},{name:"dir",description:{kind:"markdown",value:"An enumerated attribute indicating the directionality of the element's text. It can have the following values:\n\n* `ltr`, which means _left to right_ and is to be used for languages that are written from the left to the right (like English);\n* `rtl`, which means _right to left_ and is to be used for languages that are written from the right to the left (like Arabic);\n* `auto`, which lets the user agent decide. It uses a basic algorithm as it parses the characters inside the element until it finds a character with a strong directionality, then it applies that directionality to the whole element."},valueSet:"d",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/dir"}]},{name:"draggable",description:{kind:"markdown",value:"An enumerated attribute indicating whether the element can be dragged, using the [Drag and Drop API](/en-us/docs/DragDrop/Drag_and_Drop). It can have the following values:\n\n* `true`, which indicates that the element may be dragged\n* `false`, which indicates that the element may not be dragged."},valueSet:"b",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/draggable"}]},{name:"dropzone",description:{kind:"markdown",value:"An enumerated attribute indicating what types of content can be dropped on an element, using the [Drag and Drop API](/en-US/docs/DragDrop/Drag_and_Drop). It can have the following values:\n\n* `copy`, which indicates that dropping will create a copy of the element that was dragged\n* `move`, which indicates that the element that was dragged will be moved to this new location.\n* `link`, will create a link to the dragged data."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/dropzone"}]},{name:"exportparts",description:{kind:"markdown",value:"Used to transitively export shadow parts from a nested shadow tree into a containing light tree."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/exportparts"}]},{name:"hidden",description:{kind:"markdown",value:"A Boolean attribute indicates that the element is not yet, or is no longer, _relevant_. For example, it can be used to hide elements of the page that can't be used until the login process has been completed. The browser won't render such elements. This attribute must not be used to hide content that could legitimately be shown."},valueSet:"v",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/hidden"}]},{name:"id",description:{kind:"markdown",value:"Defines a unique identifier (ID) which must be unique in the whole document. Its purpose is to identify the element when linking (using a fragment identifier), scripting, or styling (with CSS)."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/id"}]},{name:"inputmode",description:{kind:"markdown",value:'Provides a hint to browsers as to the type of virtual keyboard configuration to use when editing this element or its contents. Used primarily on [`<input>`](/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") elements, but is usable on any element while in `[contenteditable](/en-US/docs/Web/HTML/Global_attributes#attr-contenteditable)` mode.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/inputmode"}]},{name:"is",description:{kind:"markdown",value:"Allows you to specify that a standard HTML element should behave like a registered custom built-in element (see [Using custom elements](/en-US/docs/Web/Web_Components/Using_custom_elements) for more details)."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/is"}]},{name:"itemid",description:{kind:"markdown",value:"The unique, global identifier of an item."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemid"}]},{name:"itemprop",description:{kind:"markdown",value:"Used to add properties to an item. Every HTML element may have an `itemprop` attribute specified, where an `itemprop` consists of a name and value pair."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemprop"}]},{name:"itemref",description:{kind:"markdown",value:"Properties that are not descendants of an element with the `itemscope` attribute can be associated with the item using an `itemref`. It provides a list of element ids (not `itemid`s) with additional properties elsewhere in the document."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemref"}]},{name:"itemscope",description:{kind:"markdown",value:"`itemscope` (usually) works along with `[itemtype](/en-US/docs/Web/HTML/Global_attributes#attr-itemtype)` to specify that the HTML contained in a block is about a particular item. `itemscope` creates the Item and defines the scope of the `itemtype` associated with it. `itemtype` is a valid URL of a vocabulary (such as [schema.org](https://schema.org/)) that describes the item and its properties context."},valueSet:"v",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemscope"}]},{name:"itemtype",description:{kind:"markdown",value:"Specifies the URL of the vocabulary that will be used to define `itemprop`s (item properties) in the data structure. `[itemscope](/en-US/docs/Web/HTML/Global_attributes#attr-itemscope)` is used to set the scope of where in the data structure the vocabulary set by `itemtype` will be active."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemtype"}]},{name:"lang",description:{kind:"markdown",value:"Helps define the language of an element: the language that non-editable elements are in, or the language that editable elements should be written in by the user. The attribute contains one “language tag” (made of hyphen-separated “language subtags”) in the format defined in [_Tags for Identifying Languages (BCP47)_](https://www.ietf.org/rfc/bcp/bcp47.txt). [**xml:lang**](#attr-xml:lang) has priority over it."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/lang"}]},{name:"part",description:{kind:"markdown",value:'A space-separated list of the part names of the element. Part names allows CSS to select and style specific elements in a shadow tree via the [`::part`](/en-US/docs/Web/CSS/::part "The ::part CSS pseudo-element represents any element within a shadow tree that has a matching part attribute.") pseudo-element.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/part"}]},{name:"role",valueSet:"roles"},{name:"slot",description:{kind:"markdown",value:"Assigns a slot in a [shadow DOM](/en-US/docs/Web/Web_Components/Shadow_DOM) shadow tree to an element: An element with a `slot` attribute is assigned to the slot created by the [`<slot>`](/en-US/docs/Web/HTML/Element/slot \"The HTML <slot> element—part of the Web Components technology suite—is a placeholder inside a web component that you can fill with your own markup, which lets you create separate DOM trees and present them together.\") element whose `[name](/en-US/docs/Web/HTML/Element/slot#attr-name)` attribute's value matches that `slot` attribute's value."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/slot"}]},{name:"spellcheck",description:{kind:"markdown",value:"An enumerated attribute defines whether the element may be checked for spelling errors. It may have the following values:\n\n* `true`, which indicates that the element should be, if possible, checked for spelling errors;\n* `false`, which indicates that the element should not be checked for spelling errors."},valueSet:"b",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/spellcheck"}]},{name:"style",description:{kind:"markdown",value:'Contains [CSS](/en-US/docs/Web/CSS) styling declarations to be applied to the element. Note that it is recommended for styles to be defined in a separate file or files. This attribute and the [`<style>`](/en-US/docs/Web/HTML/Element/style "The HTML <style> element contains style information for a document, or part of a document.") element have mainly the purpose of allowing for quick styling, for example for testing purposes.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/style"}]},{name:"tabindex",description:{kind:"markdown",value:"An integer attribute indicating if the element can take input focus (is _focusable_), if it should participate to sequential keyboard navigation, and if so, at what position. It can take several values:\n\n* a _negative value_ means that the element should be focusable, but should not be reachable via sequential keyboard navigation;\n* `0` means that the element should be focusable and reachable via sequential keyboard navigation, but its relative order is defined by the platform convention;\n* a _positive value_ means that the element should be focusable and reachable via sequential keyboard navigation; the order in which the elements are focused is the increasing value of the [**tabindex**](#attr-tabindex). If several elements share the same tabindex, their relative order follows their relative positions in the document."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/tabindex"}]},{name:"title",description:{kind:"markdown",value:"Contains a text representing advisory information related to the element it belongs to. Such information can typically, but not necessarily, be presented to the user as a tooltip."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/title"}]},{name:"translate",description:{kind:"markdown",value:"An enumerated attribute that is used to specify whether an element's attribute values and the values of its [`Text`](/en-US/docs/Web/API/Text \"The Text interface represents the textual content of Element or Attr. If an element has no markup within its content, it has a single child implementing Text that contains the element's text. However, if the element contains markup, it is parsed into information items and Text nodes that form its children.\") node children are to be translated when the page is localized, or whether to leave them unchanged. It can have the following values:\n\n* empty string and `yes`, which indicates that the element will be translated.\n* `no`, which indicates that the element will not be translated."},valueSet:"y",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/translate"}]},{name:"onabort",description:{kind:"markdown",value:"The loading of a resource has been aborted."}},{name:"onblur",description:{kind:"markdown",value:"An element has lost focus (does not bubble)."}},{name:"oncanplay",description:{kind:"markdown",value:"The user agent can play the media, but estimates that not enough data has been loaded to play the media up to its end without having to stop for further buffering of content."}},{name:"oncanplaythrough",description:{kind:"markdown",value:"The user agent can play the media up to its end without having to stop for further buffering of content."}},{name:"onchange",description:{kind:"markdown",value:"The change event is fired for <input>, <select>, and <textarea> elements when a change to the element's value is committed by the user."}},{name:"onclick",description:{kind:"markdown",value:"A pointing device button has been pressed and released on an element."}},{name:"oncontextmenu",description:{kind:"markdown",value:"The right button of the mouse is clicked (before the context menu is displayed)."}},{name:"ondblclick",description:{kind:"markdown",value:"A pointing device button is clicked twice on an element."}},{name:"ondrag",description:{kind:"markdown",value:"An element or text selection is being dragged (every 350ms)."}},{name:"ondragend",description:{kind:"markdown",value:"A drag operation is being ended (by releasing a mouse button or hitting the escape key)."}},{name:"ondragenter",description:{kind:"markdown",value:"A dragged element or text selection enters a valid drop target."}},{name:"ondragleave",description:{kind:"markdown",value:"A dragged element or text selection leaves a valid drop target."}},{name:"ondragover",description:{kind:"markdown",value:"An element or text selection is being dragged over a valid drop target (every 350ms)."}},{name:"ondragstart",description:{kind:"markdown",value:"The user starts dragging an element or text selection."}},{name:"ondrop",description:{kind:"markdown",value:"An element is dropped on a valid drop target."}},{name:"ondurationchange",description:{kind:"markdown",value:"The duration attribute has been updated."}},{name:"onemptied",description:{kind:"markdown",value:"The media has become empty; for example, this event is sent if the media has already been loaded (or partially loaded), and the load() method is called to reload it."}},{name:"onended",description:{kind:"markdown",value:"Playback has stopped because the end of the media was reached."}},{name:"onerror",description:{kind:"markdown",value:"A resource failed to load."}},{name:"onfocus",description:{kind:"markdown",value:"An element has received focus (does not bubble)."}},{name:"onformchange"},{name:"onforminput"},{name:"oninput",description:{kind:"markdown",value:"The value of an element changes or the content of an element with the attribute contenteditable is modified."}},{name:"oninvalid",description:{kind:"markdown",value:"A submittable element has been checked and doesn't satisfy its constraints."}},{name:"onkeydown",description:{kind:"markdown",value:"A key is pressed down."}},{name:"onkeypress",description:{kind:"markdown",value:"A key is pressed down and that key normally produces a character value (use input instead)."}},{name:"onkeyup",description:{kind:"markdown",value:"A key is released."}},{name:"onload",description:{kind:"markdown",value:"A resource and its dependent resources have finished loading."}},{name:"onloadeddata",description:{kind:"markdown",value:"The first frame of the media has finished loading."}},{name:"onloadedmetadata",description:{kind:"markdown",value:"The metadata has been loaded."}},{name:"onloadstart",description:{kind:"markdown",value:"Progress has begun."}},{name:"onmousedown",description:{kind:"markdown",value:"A pointing device button (usually a mouse) is pressed on an element."}},{name:"onmousemove",description:{kind:"markdown",value:"A pointing device is moved over an element."}},{name:"onmouseout",description:{kind:"markdown",value:"A pointing device is moved off the element that has the listener attached or off one of its children."}},{name:"onmouseover",description:{kind:"markdown",value:"A pointing device is moved onto the element that has the listener attached or onto one of its children."}},{name:"onmouseup",description:{kind:"markdown",value:"A pointing device button is released over an element."}},{name:"onmousewheel"},{name:"onpause",description:{kind:"markdown",value:"Playback has been paused."}},{name:"onplay",description:{kind:"markdown",value:"Playback has begun."}},{name:"onplaying",description:{kind:"markdown",value:"Playback is ready to start after having been paused or delayed due to lack of data."}},{name:"onprogress",description:{kind:"markdown",value:"In progress."}},{name:"onratechange",description:{kind:"markdown",value:"The playback rate has changed."}},{name:"onreset",description:{kind:"markdown",value:"A form is reset."}},{name:"onresize",description:{kind:"markdown",value:"The document view has been resized."}},{name:"onreadystatechange",description:{kind:"markdown",value:"The readyState attribute of a document has changed."}},{name:"onscroll",description:{kind:"markdown",value:"The document view or an element has been scrolled."}},{name:"onseeked",description:{kind:"markdown",value:"A seek operation completed."}},{name:"onseeking",description:{kind:"markdown",value:"A seek operation began."}},{name:"onselect",description:{kind:"markdown",value:"Some text is being selected."}},{name:"onshow",description:{kind:"markdown",value:"A contextmenu event was fired on/bubbled to an element that has a contextmenu attribute"}},{name:"onstalled",description:{kind:"markdown",value:"The user agent is trying to fetch media data, but data is unexpectedly not forthcoming."}},{name:"onsubmit",description:{kind:"markdown",value:"A form is submitted."}},{name:"onsuspend",description:{kind:"markdown",value:"Media data loading has been suspended."}},{name:"ontimeupdate",description:{kind:"markdown",value:"The time indicated by the currentTime attribute has been updated."}},{name:"onvolumechange",description:{kind:"markdown",value:"The volume has changed."}},{name:"onwaiting",description:{kind:"markdown",value:"Playback has stopped because of a temporary lack of data."}},{name:"aria-activedescendant",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-activedescendant"}],description:{kind:"markdown",value:"Identifies the currently active element when DOM focus is on a [`composite`](https://www.w3.org/TR/wai-aria-1.1/#composite) widget, [`textbox`](https://www.w3.org/TR/wai-aria-1.1/#textbox), [`group`](https://www.w3.org/TR/wai-aria-1.1/#group), or [`application`](https://www.w3.org/TR/wai-aria-1.1/#application)."}},{name:"aria-atomic",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-atomic"}],description:{kind:"markdown",value:"Indicates whether [assistive technologies](https://www.w3.org/TR/wai-aria-1.1/#dfn-assistive-technology) will present all, or only parts of, the changed region based on the change notifications defined by the [`aria-relevant`](https://www.w3.org/TR/wai-aria-1.1/#aria-relevant) attribute."}},{name:"aria-autocomplete",valueSet:"autocomplete",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-autocomplete"}],description:{kind:"markdown",value:"Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for an input and specifies how predictions would be presented if they are made."}},{name:"aria-busy",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-busy"}],description:{kind:"markdown",value:"Indicates an element is being modified and that assistive technologies _MAY_ want to wait until the modifications are complete before exposing them to the user."}},{name:"aria-checked",valueSet:"tristate",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-checked"}],description:{kind:"markdown",value:'Indicates the current "checked" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of checkboxes, radio buttons, and other [widgets](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-pressed`](https://www.w3.org/TR/wai-aria-1.1/#aria-pressed) and [`aria-selected`](https://www.w3.org/TR/wai-aria-1.1/#aria-selected).'}},{name:"aria-colcount",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colcount"}],description:{kind:"markdown",value:"Defines the total number of columns in a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-colindex)."}},{name:"aria-colindex",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colindex"}],description:{kind:"markdown",value:"Defines an [element's](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) column index or position with respect to the total number of columns within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colcount`](https://www.w3.org/TR/wai-aria-1.1/#aria-colcount) and [`aria-colspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-colspan)."}},{name:"aria-colspan",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colspan"}],description:{kind:"markdown",value:"Defines the number of columns spanned by a cell or gridcell within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-colindex) and [`aria-rowspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan)."}},{name:"aria-controls",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-controls"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) whose contents or presence are controlled by the current element. See related [`aria-owns`](https://www.w3.org/TR/wai-aria-1.1/#aria-owns)."}},{name:"aria-current",valueSet:"current",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-current"}],description:{kind:"markdown",value:"Indicates the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that represents the current item within a container or set of related elements."}},{name:"aria-describedat",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-describedat"}]},{name:"aria-describedby",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-describedby"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) that describes the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-labelledby`](https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby)."}},{name:"aria-disabled",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-disabled"}],description:{kind:"markdown",value:"Indicates that the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is [perceivable](https://www.w3.org/TR/wai-aria-1.1/#dfn-perceivable) but disabled, so it is not editable or otherwise [operable](https://www.w3.org/TR/wai-aria-1.1/#dfn-operable). See related [`aria-hidden`](https://www.w3.org/TR/wai-aria-1.1/#aria-hidden) and [`aria-readonly`](https://www.w3.org/TR/wai-aria-1.1/#aria-readonly)."}},{name:"aria-dropeffect",valueSet:"dropeffect",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-dropeffect"}],description:{kind:"markdown",value:"\\[Deprecated in ARIA 1.1\\] Indicates what functions can be performed when a dragged object is released on the drop target."}},{name:"aria-errormessage",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-errormessage"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that provides an error message for the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-invalid`](https://www.w3.org/TR/wai-aria-1.1/#aria-invalid) and [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-expanded",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-expanded"}],description:{kind:"markdown",value:"Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed."}},{name:"aria-flowto",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-flowto"}],description:{kind:"markdown",value:"Identifies the next [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) in an alternate reading order of content which, at the user's discretion, allows assistive technology to override the general default of reading in document source order."}},{name:"aria-grabbed",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-grabbed"}],description:{kind:"markdown",value:'\\[Deprecated in ARIA 1.1\\] Indicates an element\'s "grabbed" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) in a drag-and-drop operation.'}},{name:"aria-haspopup",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-haspopup"}],description:{kind:"markdown",value:"Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)."}},{name:"aria-hidden",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-hidden"}],description:{kind:"markdown",value:"Indicates whether the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is exposed to an accessibility API. See related [`aria-disabled`](https://www.w3.org/TR/wai-aria-1.1/#aria-disabled)."}},{name:"aria-invalid",valueSet:"invalid",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-invalid"}],description:{kind:"markdown",value:"Indicates the entered value does not conform to the format expected by the application. See related [`aria-errormessage`](https://www.w3.org/TR/wai-aria-1.1/#aria-errormessage)."}},{name:"aria-kbdshortcuts",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-kbdshortcuts"}]},{name:"aria-label",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-label"}],description:{kind:"markdown",value:"Defines a string value that labels the current element. See related [`aria-labelledby`](https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby)."}},{name:"aria-labelledby",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) that labels the current element. See related [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-level",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-level"}],description:{kind:"markdown",value:"Defines the hierarchical level of an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) within a structure."}},{name:"aria-live",valueSet:"live",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-live"}],description:{kind:"markdown",value:"Indicates that an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) will be updated, and describes the types of updates the [user agents](https://www.w3.org/TR/wai-aria-1.1/#dfn-user-agent), [assistive technologies](https://www.w3.org/TR/wai-aria-1.1/#dfn-assistive-technology), and user can expect from the [live region](https://www.w3.org/TR/wai-aria-1.1/#dfn-live-region)."}},{name:"aria-modal",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-modal"}],description:{kind:"markdown",value:"Indicates whether an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is modal when displayed."}},{name:"aria-multiline",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-multiline"}],description:{kind:"markdown",value:"Indicates whether a text box accepts multiple lines of input or only a single line."}},{name:"aria-multiselectable",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-multiselectable"}],description:{kind:"markdown",value:"Indicates that the user may select more than one item from the current selectable descendants."}},{name:"aria-orientation",valueSet:"orientation",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-orientation"}],description:{kind:"markdown",value:"Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous."}},{name:"aria-owns",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-owns"}],description:{kind:"markdown",value:"Identifies an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) in order to define a visual, functional, or contextual parent/child [relationship](https://www.w3.org/TR/wai-aria-1.1/#dfn-relationship) between DOM elements where the DOM hierarchy cannot be used to represent the relationship. See related [`aria-controls`](https://www.w3.org/TR/wai-aria-1.1/#aria-controls)."}},{name:"aria-placeholder",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-placeholder"}],description:{kind:"markdown",value:"Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value. A hint could be a sample value or a brief description of the expected format."}},{name:"aria-posinset",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-posinset"}],description:{kind:"markdown",value:"Defines an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM. See related [`aria-setsize`](https://www.w3.org/TR/wai-aria-1.1/#aria-setsize)."}},{name:"aria-pressed",valueSet:"tristate",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-pressed"}],description:{kind:"markdown",value:'Indicates the current "pressed" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of toggle buttons. See related [`aria-checked`](https://www.w3.org/TR/wai-aria-1.1/#aria-checked) and [`aria-selected`](https://www.w3.org/TR/wai-aria-1.1/#aria-selected).'}},{name:"aria-readonly",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-readonly"}],description:{kind:"markdown",value:"Indicates that the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is not editable, but is otherwise [operable](https://www.w3.org/TR/wai-aria-1.1/#dfn-operable). See related [`aria-disabled`](https://www.w3.org/TR/wai-aria-1.1/#aria-disabled)."}},{name:"aria-relevant",valueSet:"relevant",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-relevant"}],description:{kind:"markdown",value:"Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified. See related [`aria-atomic`](https://www.w3.org/TR/wai-aria-1.1/#aria-atomic)."}},{name:"aria-required",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-required"}],description:{kind:"markdown",value:"Indicates that user input is required on the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) before a form may be submitted."}},{name:"aria-roledescription",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-roledescription"}],description:{kind:"markdown",value:"Defines a human-readable, author-localized description for the [role](https://www.w3.org/TR/wai-aria-1.1/#dfn-role) of an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)."}},{name:"aria-rowcount",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowcount"}],description:{kind:"markdown",value:"Defines the total number of rows in a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex)."}},{name:"aria-rowindex",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex"}],description:{kind:"markdown",value:"Defines an [element's](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) row index or position with respect to the total number of rows within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowcount`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowcount) and [`aria-rowspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan)."}},{name:"aria-rowspan",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan"}],description:{kind:"markdown",value:"Defines the number of rows spanned by a cell or gridcell within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex) and [`aria-colspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-colspan)."}},{name:"aria-selected",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-selected"}],description:{kind:"markdown",value:'Indicates the current "selected" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of various [widgets](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-checked`](https://www.w3.org/TR/wai-aria-1.1/#aria-checked) and [`aria-pressed`](https://www.w3.org/TR/wai-aria-1.1/#aria-pressed).'}},{name:"aria-setsize",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-setsize"}],description:{kind:"markdown",value:"Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM. See related [`aria-posinset`](https://www.w3.org/TR/wai-aria-1.1/#aria-posinset)."}},{name:"aria-sort",valueSet:"sort",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-sort"}],description:{kind:"markdown",value:"Indicates if items in a table or grid are sorted in ascending or descending order."}},{name:"aria-valuemax",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuemax"}],description:{kind:"markdown",value:"Defines the maximum allowed value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-valuemin",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuemin"}],description:{kind:"markdown",value:"Defines the minimum allowed value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-valuenow",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuenow"}],description:{kind:"markdown",value:"Defines the current value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-valuetext`](https://www.w3.org/TR/wai-aria-1.1/#aria-valuetext)."}},{name:"aria-valuetext",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuetext"}],description:{kind:"markdown",value:"Defines the human readable text alternative of [`aria-valuenow`](https://www.w3.org/TR/wai-aria-1.1/#aria-valuenow) for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-details",description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that provides a detailed, extended description for the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-keyshortcuts",description:{kind:"markdown",value:"Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element."}}],valueSets:[{name:"b",values:[{name:"true"},{name:"false"}]},{name:"u",values:[{name:"true"},{name:"false"},{name:"undefined"}]},{name:"o",values:[{name:"on"},{name:"off"}]},{name:"y",values:[{name:"yes"},{name:"no"}]},{name:"w",values:[{name:"soft"},{name:"hard"}]},{name:"d",values:[{name:"ltr"},{name:"rtl"},{name:"auto"}]},{name:"m",values:[{name:"GET",description:{kind:"markdown",value:"Corresponds to the HTTP [GET method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.3); form data are appended to the `action` attribute URI with a '?' as separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters."}},{name:"POST",description:{kind:"markdown",value:"Corresponds to the HTTP [POST method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5); form data are included in the body of the form and sent to the server."}},{name:"dialog",description:{kind:"markdown",value:"Use when the form is inside a [`<dialog>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog) element to close the dialog when submitted."}}]},{name:"fm",values:[{name:"GET"},{name:"POST"}]},{name:"s",values:[{name:"row"},{name:"col"},{name:"rowgroup"},{name:"colgroup"}]},{name:"t",values:[{name:"hidden"},{name:"text"},{name:"search"},{name:"tel"},{name:"url"},{name:"email"},{name:"password"},{name:"datetime"},{name:"date"},{name:"month"},{name:"week"},{name:"time"},{name:"datetime-local"},{name:"number"},{name:"range"},{name:"color"},{name:"checkbox"},{name:"radio"},{name:"file"},{name:"submit"},{name:"image"},{name:"reset"},{name:"button"}]},{name:"im",values:[{name:"verbatim"},{name:"latin"},{name:"latin-name"},{name:"latin-prose"},{name:"full-width-latin"},{name:"kana"},{name:"kana-name"},{name:"katakana"},{name:"numeric"},{name:"tel"},{name:"email"},{name:"url"}]},{name:"bt",values:[{name:"button"},{name:"submit"},{name:"reset"},{name:"menu"}]},{name:"lt",values:[{name:"1"},{name:"a"},{name:"A"},{name:"i"},{name:"I"}]},{name:"mt",values:[{name:"context"},{name:"toolbar"}]},{name:"mit",values:[{name:"command"},{name:"checkbox"},{name:"radio"}]},{name:"et",values:[{name:"application/x-www-form-urlencoded"},{name:"multipart/form-data"},{name:"text/plain"}]},{name:"tk",values:[{name:"subtitles"},{name:"captions"},{name:"descriptions"},{name:"chapters"},{name:"metadata"}]},{name:"pl",values:[{name:"none"},{name:"metadata"},{name:"auto"}]},{name:"sh",values:[{name:"circle"},{name:"default"},{name:"poly"},{name:"rect"}]},{name:"xo",values:[{name:"anonymous"},{name:"use-credentials"}]},{name:"sb",values:[{name:"allow-forms"},{name:"allow-modals"},{name:"allow-pointer-lock"},{name:"allow-popups"},{name:"allow-popups-to-escape-sandbox"},{name:"allow-same-origin"},{name:"allow-scripts"},{name:"allow-top-navigation"}]},{name:"tristate",values:[{name:"true"},{name:"false"},{name:"mixed"},{name:"undefined"}]},{name:"inputautocomplete",values:[{name:"additional-name"},{name:"address-level1"},{name:"address-level2"},{name:"address-level3"},{name:"address-level4"},{name:"address-line1"},{name:"address-line2"},{name:"address-line3"},{name:"bday"},{name:"bday-year"},{name:"bday-day"},{name:"bday-month"},{name:"billing"},{name:"cc-additional-name"},{name:"cc-csc"},{name:"cc-exp"},{name:"cc-exp-month"},{name:"cc-exp-year"},{name:"cc-family-name"},{name:"cc-given-name"},{name:"cc-name"},{name:"cc-number"},{name:"cc-type"},{name:"country"},{name:"country-name"},{name:"current-password"},{name:"email"},{name:"family-name"},{name:"fax"},{name:"given-name"},{name:"home"},{name:"honorific-prefix"},{name:"honorific-suffix"},{name:"impp"},{name:"language"},{name:"mobile"},{name:"name"},{name:"new-password"},{name:"nickname"},{name:"organization"},{name:"organization-title"},{name:"pager"},{name:"photo"},{name:"postal-code"},{name:"sex"},{name:"shipping"},{name:"street-address"},{name:"tel-area-code"},{name:"tel"},{name:"tel-country-code"},{name:"tel-extension"},{name:"tel-local"},{name:"tel-local-prefix"},{name:"tel-local-suffix"},{name:"tel-national"},{name:"transaction-amount"},{name:"transaction-currency"},{name:"url"},{name:"username"},{name:"work"}]},{name:"autocomplete",values:[{name:"inline"},{name:"list"},{name:"both"},{name:"none"}]},{name:"current",values:[{name:"page"},{name:"step"},{name:"location"},{name:"date"},{name:"time"},{name:"true"},{name:"false"}]},{name:"dropeffect",values:[{name:"copy"},{name:"move"},{name:"link"},{name:"execute"},{name:"popup"},{name:"none"}]},{name:"invalid",values:[{name:"grammar"},{name:"false"},{name:"spelling"},{name:"true"}]},{name:"live",values:[{name:"off"},{name:"polite"},{name:"assertive"}]},{name:"orientation",values:[{name:"vertical"},{name:"horizontal"},{name:"undefined"}]},{name:"relevant",values:[{name:"additions"},{name:"removals"},{name:"text"},{name:"all"},{name:"additions text"}]},{name:"sort",values:[{name:"ascending"},{name:"descending"},{name:"none"},{name:"other"}]},{name:"roles",values:[{name:"alert"},{name:"alertdialog"},{name:"button"},{name:"checkbox"},{name:"dialog"},{name:"gridcell"},{name:"link"},{name:"log"},{name:"marquee"},{name:"menuitem"},{name:"menuitemcheckbox"},{name:"menuitemradio"},{name:"option"},{name:"progressbar"},{name:"radio"},{name:"scrollbar"},{name:"searchbox"},{name:"slider"},{name:"spinbutton"},{name:"status"},{name:"switch"},{name:"tab"},{name:"tabpanel"},{name:"textbox"},{name:"timer"},{name:"tooltip"},{name:"treeitem"},{name:"combobox"},{name:"grid"},{name:"listbox"},{name:"menu"},{name:"menubar"},{name:"radiogroup"},{name:"tablist"},{name:"tree"},{name:"treegrid"},{name:"application"},{name:"article"},{name:"cell"},{name:"columnheader"},{name:"definition"},{name:"directory"},{name:"document"},{name:"feed"},{name:"figure"},{name:"group"},{name:"heading"},{name:"img"},{name:"list"},{name:"listitem"},{name:"math"},{name:"none"},{name:"note"},{name:"presentation"},{name:"region"},{name:"row"},{name:"rowgroup"},{name:"rowheader"},{name:"separator"},{name:"table"},{name:"term"},{name:"text"},{name:"toolbar"},{name:"banner"},{name:"complementary"},{name:"contentinfo"},{name:"form"},{name:"main"},{name:"navigation"},{name:"region"},{name:"search"},{name:"doc-abstract"},{name:"doc-acknowledgments"},{name:"doc-afterword"},{name:"doc-appendix"},{name:"doc-backlink"},{name:"doc-biblioentry"},{name:"doc-bibliography"},{name:"doc-biblioref"},{name:"doc-chapter"},{name:"doc-colophon"},{name:"doc-conclusion"},{name:"doc-cover"},{name:"doc-credit"},{name:"doc-credits"},{name:"doc-dedication"},{name:"doc-endnote"},{name:"doc-endnotes"},{name:"doc-epigraph"},{name:"doc-epilogue"},{name:"doc-errata"},{name:"doc-example"},{name:"doc-footnote"},{name:"doc-foreword"},{name:"doc-glossary"},{name:"doc-glossref"},{name:"doc-index"},{name:"doc-introduction"},{name:"doc-noteref"},{name:"doc-notice"},{name:"doc-pagebreak"},{name:"doc-pagelist"},{name:"doc-part"},{name:"doc-preface"},{name:"doc-prologue"},{name:"doc-pullquote"},{name:"doc-qna"},{name:"doc-subtitle"},{name:"doc-tip"},{name:"doc-toc"}]},{name:"metanames",values:[{name:"application-name"},{name:"author"},{name:"description"},{name:"format-detection"},{name:"generator"},{name:"keywords"},{name:"publisher"},{name:"referrer"},{name:"robots"},{name:"theme-color"},{name:"viewport"}]}]})],Ne=[];function Pe(){return qe.concat(Ne)}function Oe(e){return void 0!==e}var Fe=x();!function(){function e(e){this.clientCapabilities=e,this.completionParticipants=[]}e.prototype.setCompletionParticipants=function(e){this.completionParticipants=e||[]},e.prototype.doComplete=function(e,t,n,i){var r=this._doComplete(e,t,n,i);return this.convertCompletionList(r)},e.prototype._doComplete=function(e,t,n,a){var o={isIncomplete:!1,items:[]},s=this.completionParticipants,l=Pe().filter(function(t){return t.isApplicable(e.languageId)&&(!a||!1!==a[t.getId()])}),c=this.doesSupportMarkdown(),h=e.getText(),d=e.offsetAt(t),u=n.findNodeBefore(d);if(!u)return o;var p,m=Te(h,u.start),f="";function g(t,n){return void 0===n&&(n=d),t>d&&(t=d),{start:e.positionAt(t),end:e.positionAt(n)}}function _(e,t){var n=g(e,t);return l.forEach(function(e){e.provideTags().forEach(function(e){o.items.push({label:e.name,kind:z.Property,documentation:De(e,c),textEdit:b.replace(n,e.name),insertTextFormat:I.PlainText})})}),o}function w(e){for(var t=e;t>0;){var n=h.charAt(t-1);if("\n\r".indexOf(n)>=0)return h.substring(t,e);if(!je(n))return null;t--}return h.substring(0,e)}function v(e,t,n){void 0===n&&(n=d);var i=g(e,n),r=Be(h,n,ie.WithinEndTag,ne.EndTagClose)?"":">",a=u;for(t&&(a=a.parent);a;){var s=a.tag;if(s&&(!a.closed||a.endTagStart&&a.endTagStart>d)){var p={label:"/"+s,kind:z.Property,filterText:"/"+s,textEdit:b.replace(i,"/"+s+r),insertTextFormat:I.PlainText},m=w(a.start),f=w(e-1);if(null!==m&&null!==f&&m!==f){var _=m+"</"+s+r;p.textEdit=b.replace(g(e-1-f.length),_),p.filterText=f+"</"+s}return o.items.push(p),o}a=a.parent}return t?o:(l.forEach(function(e){e.provideTags().forEach(function(e){o.items.push({label:"/"+e.name,kind:z.Property,documentation:De(e,c),filterText:"/"+e+r,textEdit:b.replace(i,"/"+e+r),insertTextFormat:I.PlainText})})}),o)}function y(t,n){if(a&&a.hideAutoCompleteProposals)return o;if(!xe(n)){var i=e.positionAt(t);o.items.push({label:"</"+n+">",kind:z.Property,filterText:"</"+n+">",textEdit:b.insert(i,"$0</"+n+">"),insertTextFormat:I.Snippet})}return o}function T(e,t){return _(e,t),v(e,!0,t),o}function k(e,t){void 0===t&&(t=d);for(var i=d;i<t&&"<"!==h[i];)i++;var r=g(e,i),a=Be(h,t,ie.AfterAttributeName,ne.DelimiterAssign)?"":'="$1"',s=f.toLowerCase(),u=Object.create(null);return l.forEach(function(e){e.provideAttributes(s).forEach(function(e){if(!u[e.name]){u[e.name]=!0;var t,n=e.name;"v"!==e.valueSet&&a.length&&(n+=a,(e.valueSet||"style"===e.name)&&(t={title:"Suggest",command:"editor.action.triggerSuggest"})),o.items.push({label:e.name,kind:"handler"===e.valueSet?z.Function:z.Value,documentation:De(e,c),textEdit:b.replace(r,n),insertTextFormat:I.Snippet,command:t})}})}),function(e,t){var i="data-",r={};r[i]=i+'$1="$2"',n&&n.roots.forEach(function(e){return function e(n){n.attributeNames.forEach(function(e){!Le(e,i)||r[e]||t[e]||(r[e]=e+'="$1"')});n.children.forEach(function(t){return e(t)})}(e)});Object.keys(r).forEach(function(t){return o.items.push({label:t,kind:z.Value,textEdit:b.replace(e,r[t]),insertTextFormat:I.Snippet})})}(r,u),o}function S(n,i){var r,a,u;if(void 0===i&&(i=d),d>n&&d<=i&&function(e){return/^["']*$/.test(e)}(h[n])){var m=n+1,_=i;i>n&&h[i-1]===h[n]&&_--;var w=function(e,t,n){for(;t>n&&!je(e[t-1]);)t--;return t}(h,d,m),v=function(e,t,n){for(;t<n&&!je(e[t]);)t++;return t}(h,d,_);r=g(w,v),u=d>=m&&d<=_?h.substring(m,d):"",a=!1}else r=g(n,i),u=h.substring(n,d),a=!0;var y=f.toLowerCase(),T=p.toLowerCase();if(s.length>0)for(var k=g(n,i),S=0,x=s;S<x.length;S++){var M=x[S];M.onHtmlAttributeValue&&M.onHtmlAttributeValue({document:e,position:t,tag:y,attribute:T,value:u,range:k})}return l.forEach(function(e){e.provideValues(y,T).forEach(function(e){var t=a?'"'+e.name+'"':e.name;o.items.push({label:e.name,filterText:t,kind:z.Unit,documentation:De(e,c),textEdit:b.replace(r,t),insertTextFormat:I.PlainText})})}),L(),o}function x(e){return d===m.getTokenEnd()&&(A=m.scan())===e&&m.getTokenOffset()===d?m.getTokenEnd():d}function M(){for(var n=0,i=s;n<i.length;n++){var r=i[n];r.onHtmlContent&&r.onHtmlContent({document:e,position:t})}return L()}function L(){for(var e=d-1,n=t.character;e>=0&&Ce(h,e);)e--,n--;if(e>=0&&"&"===h[e]){var a=r.create(i.create(t.line,n-1),t);for(var s in Me)if(Ee(s,";")){var l="&"+s;o.items.push({label:l,kind:z.Keyword,documentation:Fe("entity.propose","Character entity representing '"+Me[s]+"'"),textEdit:b.replace(a,l),insertTextFormat:I.PlainText})}}return o}function E(e,t){var n=g(e,t);o.items.push({label:"!DOCTYPE",kind:z.Property,documentation:"A preamble for an HTML document.",textEdit:b.replace(n,"!DOCTYPE html>"),insertTextFormat:I.PlainText})}for(var A=m.scan();A!==ne.EOS&&m.getTokenOffset()<=d;){switch(A){case ne.StartTagOpen:if(m.getTokenEnd()===d){var R=x(ne.StartTag);return 0===t.line&&E(d,R),T(d,R)}break;case ne.StartTag:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return _(m.getTokenOffset(),m.getTokenEnd());f=m.getTokenText();break;case ne.AttributeName:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return k(m.getTokenOffset(),m.getTokenEnd());p=m.getTokenText();break;case ne.DelimiterAssign:if(m.getTokenEnd()===d){R=x(ne.AttributeValue);return S(d,R)}break;case ne.AttributeValue:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return S(m.getTokenOffset(),m.getTokenEnd());break;case ne.Whitespace:if(d<=m.getTokenEnd())switch(m.getScannerState()){case ie.AfterOpeningStartTag:return T(m.getTokenOffset(),x(ne.StartTag));case ie.WithinTag:case ie.AfterAttributeName:return k(m.getTokenEnd());case ie.BeforeAttributeValue:return S(m.getTokenEnd());case ie.AfterOpeningEndTag:return v(m.getTokenOffset()-1,!1);case ie.WithinContent:return M()}break;case ne.EndTagOpen:if(d<=m.getTokenEnd())return v(m.getTokenOffset()+1,!1,x(ne.EndTag));break;case ne.EndTag:if(d<=m.getTokenEnd())for(var H=m.getTokenOffset()-1;H>=0;){var U=h.charAt(H);if("/"===U)return v(H,!1,m.getTokenEnd());if(!je(U))break;H--}break;case ne.StartTagClose:if(d<=m.getTokenEnd()&&f)return y(m.getTokenEnd(),f);break;case ne.Content:if(d<=m.getTokenEnd())return M();break;default:if(d<=m.getTokenEnd())return o}A=m.scan()}return o},e.prototype.doTagComplete=function(e,t,n){var i=e.offsetAt(t);if(i<=0)return null;var r=e.getText().charAt(i-1);if(">"===r){if((o=n.findNodeBefore(i))&&o.tag&&!xe(o.tag)&&o.start<i&&(!o.endTagStart||o.endTagStart>i))for(var a=(s=Te(e.getText(),o.start)).scan();a!==ne.EOS&&s.getTokenEnd()<=i;){if(a===ne.StartTagClose&&s.getTokenEnd()===i)return"$0</"+o.tag+">";a=s.scan()}}else if("/"===r){for(var o=n.findNodeBefore(i);o&&o.closed;)o=o.parent;if(o&&o.tag){var s;for(a=(s=Te(e.getText(),o.start)).scan();a!==ne.EOS&&s.getTokenEnd()<=i;){if(a===ne.EndTagOpen&&s.getTokenEnd()===i)return o.tag+">";a=s.scan()}}}return null},e.prototype.convertCompletionList=function(e){return this.doesSupportMarkdown()||e.items.forEach(function(e){e.documentation&&"string"!=typeof e.documentation&&(e.documentation={kind:"plaintext",value:e.documentation.value})}),e},e.prototype.doesSupportMarkdown=function(){if(!Oe(this.supportsMarkdown)){if(!Oe(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities&&this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.hover;this.supportsMarkdown=e&&e.contentFormat&&Array.isArray(e.contentFormat)&&-1!==e.contentFormat.indexOf(A.Markdown)}return this.supportsMarkdown}}();function je(e){return/^\s*$/.test(e)}function Be(e,t,n,i){for(var r=Te(e,t,n),a=r.scan();a===ne.Whitespace;)a=r.scan();return a===i}!function(){function e(e){this.clientCapabilities=e}e.prototype.doHover=function(e,t,n){var i=this.convertContents.bind(this),r=this.doesSupportMarkdown(),a=e.offsetAt(t),o=n.findNodeAt(a);if(!o||!o.tag)return null;var s=Pe().filter(function(t){return t.isApplicable(e.languageId)});function l(e,t,n){e=e.toLowerCase();for(var a=function(a){var o=null;if(a.provideTags().forEach(function(i){if(i.name.toLowerCase()===e.toLowerCase()){var a=n?"<"+e+">":"</"+e+">",s=De(i,r);s.value="```html\n"+a+"\n```\n"+s.value,o={contents:s,range:t}}}),o)return o.contents=i(o.contents),{value:o}},o=0,l=s;o<l.length;o++){var c=a(l[o]);if("object"==typeof c)return c.value}return null}function c(t,n){for(var i=Te(e.getText(),n),r=i.scan();r!==ne.EOS&&(i.getTokenEnd()<a||i.getTokenEnd()===a&&r!==t);)r=i.scan();return r===t&&a<=i.getTokenEnd()?{start:e.positionAt(i.getTokenOffset()),end:e.positionAt(i.getTokenEnd())}:null}if(o.endTagStart&&a>=o.endTagStart){var h=c(ne.EndTag,o.endTagStart);return h?l(o.tag,h,!1):null}var d=c(ne.StartTag,o.start);if(d)return l(o.tag,d,!0);var u=c(ne.AttributeName,o.start);if(u)return function(e,t,n){e=e.toLowerCase();for(var a=function(a){var o=null;if(a.provideAttributes(e).forEach(function(e){t===e.name&&e.description&&(o={contents:De(e,r),range:n})}),o)return o.contents=i(o.contents),{value:o}},o=0,l=s;o<l.length;o++){var c=a(l[o]);if("object"==typeof c)return c.value}return null}(m=o.tag,e.getText(u),u);var p=c(ne.AttributeValue,o.start);if(p){var m=o.tag,f=function(e){if(e.length<=1)return e.replace(/['"]/,"");"'"!==e[0]&&'"'!==e[0]||(e=e.slice(1));"'"!==e[e.length-1]&&'"'!==e[e.length-1]||(e=e.slice(0,-1));return e}(e.getText(p)),g=function(t,n){for(var i=Te(e.getText(),t),r=i.scan(),a=void 0;r!==ne.EOS&&i.getTokenEnd()<=n;)(r=i.scan())===ne.AttributeName&&(a=i.getTokenText());return a}(o.start,e.offsetAt(p.start));if(g)return function(e,t,n,a){e=e.toLowerCase();for(var o=function(o){var s=null;if(o.provideValues(e,t).forEach(function(e){n===e.name&&e.description&&(s={contents:De(e,r),range:a})}),s)return s.contents=i(s.contents),{value:s}},l=0,c=s;l<c.length;l++){var h=o(c[l]);if("object"==typeof h)return h.value}return null}(m,g,f,p)}return null},e.prototype.convertContents=function(e){if(!this.doesSupportMarkdown()){if("string"==typeof e)return e;if("kind"in e)return{kind:"plaintext",value:e.value};if(!Array.isArray(e))return e.value;e.map(function(e){return"string"==typeof e?e:e.value})}return e},e.prototype.doesSupportMarkdown=function(){if(!Oe(this.supportsMarkdown)){if(!Oe(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities&&this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.hover;this.supportsMarkdown=e&&e.contentFormat&&Array.isArray(e.contentFormat)&&-1!==e.contentFormat.indexOf(A.Markdown)}return this.supportsMarkdown}}();(function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=15)})([,,function(e,t,n){function i(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function r(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function a(e,t){this.__indent_cache=new r(e,t),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new i(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}i.prototype.clone_empty=function(){var e=new i(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},i.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},i.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},i.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},i.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},i.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},i.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},i.prototype.is_empty=function(){return 0===this.__items.length},i.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},i.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},i.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},i.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},i.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},i.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},i.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},r.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},r.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},r.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},r.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},a.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},a.prototype.get_line_number=function(){return this.__lines.length},a.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},a.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},a.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},a.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},a.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},a.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},a.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},a.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},a.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},a.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},a.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},a.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},a.prototype.just_added_newline=function(){return this.current_line.is_empty()},a.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},a.prototype.ensure_empty_line_above=function(e,t){for(var n=this.__lines.length-2;n>=0;){var r=this.__lines[n];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==t){this.__lines.splice(n+1,0,new i(this)),this.previous_line=this.__lines[this.__lines.length-2];break}n--}},e.exports.Output=a},,,,function(e,t,n){function i(e,t){this.raw_options=r(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php"],["auto"])}function r(e,t){var n,i={};for(n in e=a(e))n!==t&&(i[n]=e[n]);if(t&&e[t])for(n in e[t])i[n]=e[t][n];return i}function a(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}i.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"==typeof n?null!==n&&"function"==typeof n.concat&&(i=n.concat()):"string"==typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},i.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},i.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"==typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},i.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},i.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},i.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},i.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some(function(e){return-1===t.indexOf(e)})},e.exports.Options=i,e.exports.normalizeOpts=a,e.exports.mergeOpts=r},,function(e,t,n){var i=RegExp.prototype.hasOwnProperty("sticky");function r(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}r.prototype.restart=function(){this.__position=0},r.prototype.back=function(){this.__position>0&&(this.__position-=1)},r.prototype.hasNext=function(){return this.__position<this.__input_length},r.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},r.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},r.prototype.__match=function(e,t){e.lastIndex=t;var n=e.exec(this.__input);return!n||i&&e.sticky||n.index!==t&&(n=null),n},r.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},r.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},r.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},r.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},r.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},r.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},r.prototype.get_regexp=function(e,t){var n=null,r="g";return t&&i&&(r="y"),"string"==typeof e&&""!==e?n=new RegExp(e,r):e&&(n=new RegExp(e.source,r)),n},r.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},r.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},r.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=r},,,,,function(e,t,n){function i(e,t){e="string"==typeof e?e:e.source,t="string"==typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}i.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},i.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=i},,function(e,t,n){var i=n(16).Beautifier,r=n(17).Options;e.exports=function(e,t){return new i(e,t).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(17).Options,r=n(2).Output,a=n(8).InputScanner,o=new(0,n(13).Directives)(/\/\*/,/\*\//),s=/\r\n|[\r\n]/,l=/\r\n|[\r\n]/g,c=/\s/,h=/(?:\s|\n)+/g,d=/\/\*(?:[\s\S]*?)((?:\*\/)|$)/g,u=/\/\/(?:[^\n\r\u2028\u2029]*)/g;function p(e,t){this._source_text=e||"",this._options=new i(t),this._ch=null,this._input=null,this.NESTED_AT_RULE={"@page":!0,"@font-face":!0,"@keyframes":!0,"@media":!0,"@supports":!0,"@document":!0},this.CONDITIONAL_GROUP_RULE={"@media":!0,"@supports":!0,"@document":!0}}p.prototype.eatString=function(e){var t="";for(this._ch=this._input.next();this._ch;){if(t+=this._ch,"\\"===this._ch)t+=this._input.next();else if(-1!==e.indexOf(this._ch)||"\n"===this._ch)break;this._ch=this._input.next()}return t},p.prototype.eatWhitespace=function(e){for(var t=c.test(this._input.peek()),n=!0;c.test(this._input.peek());)this._ch=this._input.next(),e&&"\n"===this._ch&&(this._options.preserve_newlines||n)&&(n=!1,this._output.add_new_line(!0));return t},p.prototype.foundNestedPseudoClass=function(){for(var e=0,t=1,n=this._input.peek(t);n;){if("{"===n)return!0;if("("===n)e+=1;else if(")"===n){if(0===e)return!1;e-=1}else if(";"===n||"}"===n)return!1;t++,n=this._input.peek(t)}return!1},p.prototype.print_string=function(e){this._output.set_indent(this._indentLevel),this._output.non_breaking_space=!0,this._output.add_token(e)},p.prototype.preserveSingleSpace=function(e){e&&(this._output.space_before_token=!0)},p.prototype.indent=function(){this._indentLevel++},p.prototype.outdent=function(){this._indentLevel>0&&this._indentLevel--},p.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===t&&(t="\n",e&&s.test(e||"")&&(t=e.match(s)[0]));var n=(e=e.replace(l,"\n")).match(/^[\t ]*/)[0];this._output=new r(this._options,n),this._input=new a(e),this._indentLevel=0,this._nestedLevel=0,this._ch=null;for(var i,p,m=0,f=!1,g=!1,b=!1,_=!1,w=!1,v=this._ch;i=""!==this._input.read(h),p=v,this._ch=this._input.next(),"\\"===this._ch&&this._input.hasNext()&&(this._ch+=this._input.next()),v=this._ch,this._ch;)if("/"===this._ch&&"*"===this._input.peek()){this._output.add_new_line(),this._input.back();var y=this._input.read(d),T=o.get_directives(y);T&&"start"===T.ignore&&(y+=o.readIgnored(this._input)),this.print_string(y),this.eatWhitespace(!0),this._output.add_new_line()}else if("/"===this._ch&&"/"===this._input.peek())this._output.space_before_token=!0,this._input.back(),this.print_string(this._input.read(u)),this.eatWhitespace(!0);else if("@"===this._ch)if(this.preserveSingleSpace(i),"{"===this._input.peek())this.print_string(this._ch+this.eatString("}"));else{this.print_string(this._ch);var k=this._input.peekUntilAfter(/[: ,;{}()[\]\/='"]/g);k.match(/[ :]$/)&&(k=this.eatString(": ").replace(/\s$/,""),this.print_string(k),this._output.space_before_token=!0),"extend"===(k=k.replace(/\s$/,""))?_=!0:"import"===k&&(w=!0),k in this.NESTED_AT_RULE?(this._nestedLevel+=1,k in this.CONDITIONAL_GROUP_RULE&&(b=!0)):f||0!==m||-1===k.indexOf(":")||(g=!0,this.indent())}else"#"===this._ch&&"{"===this._input.peek()?(this.preserveSingleSpace(i),this.print_string(this._ch+this.eatString("}"))):"{"===this._ch?(g&&(g=!1,this.outdent()),this.indent(),this._output.space_before_token=!0,this.print_string(this._ch),b?(b=!1,f=this._indentLevel>this._nestedLevel):f=this._indentLevel>=this._nestedLevel,this._options.newline_between_rules&&f&&this._output.previous_line&&"{"!==this._output.previous_line.item(-1)&&this._output.ensure_empty_line_above("/",","),this.eatWhitespace(!0),this._output.add_new_line()):"}"===this._ch?(this.outdent(),this._output.add_new_line(),"{"===p&&this._output.trim(!0),w=!1,_=!1,g&&(this.outdent(),g=!1),this.print_string(this._ch),f=!1,this._nestedLevel&&this._nestedLevel--,this.eatWhitespace(!0),this._output.add_new_line(),this._options.newline_between_rules&&!this._output.just_added_blankline()&&"}"!==this._input.peek()&&this._output.add_new_line(!0)):":"===this._ch?!f&&!b||this._input.lookBack("&")||this.foundNestedPseudoClass()||this._input.lookBack("(")||_||0!==m?(this._input.lookBack(" ")&&(this._output.space_before_token=!0),":"===this._input.peek()?(this._ch=this._input.next(),this.print_string("::")):this.print_string(":")):(this.print_string(":"),g||(g=!0,this._output.space_before_token=!0,this.eatWhitespace(!0),this.indent())):'"'===this._ch||"'"===this._ch?(this.preserveSingleSpace(i),this.print_string(this._ch+this.eatString(this._ch)),this.eatWhitespace(!0)):";"===this._ch?0===m?(g&&(this.outdent(),g=!1),_=!1,w=!1,this.print_string(this._ch),this.eatWhitespace(!0),"/"!==this._input.peek()&&this._output.add_new_line()):(this.print_string(this._ch),this.eatWhitespace(!0),this._output.space_before_token=!0):"("===this._ch?this._input.lookBack("url")?(this.print_string(this._ch),this.eatWhitespace(),m++,this.indent(),this._ch=this._input.next(),")"===this._ch||'"'===this._ch||"'"===this._ch?this._input.back():this._ch&&(this.print_string(this._ch+this.eatString(")")),m&&(m--,this.outdent()))):(this.preserveSingleSpace(i),this.print_string(this._ch),this.eatWhitespace(),m++,this.indent()):")"===this._ch?(m&&(m--,this.outdent()),this.print_string(this._ch)):","===this._ch?(this.print_string(this._ch),this.eatWhitespace(!0),!this._options.selector_separator_newline||g||0!==m||w?this._output.space_before_token=!0:this._output.add_new_line()):">"!==this._ch&&"+"!==this._ch&&"~"!==this._ch||g||0!==m?"]"===this._ch?this.print_string(this._ch):"["===this._ch?(this.preserveSingleSpace(i),this.print_string(this._ch)):"="===this._ch?(this.eatWhitespace(),this.print_string("="),c.test(this._ch)&&(this._ch="")):"!"!==this._ch||this._input.lookBack("\\")?(this.preserveSingleSpace(i),this.print_string(this._ch)):(this.print_string(" "),this.print_string(this._ch)):this._options.space_around_combinator?(this._output.space_before_token=!0,this.print_string(this._ch),this._output.space_before_token=!0):(this.print_string(this._ch),this.eatWhitespace(),this._ch&&c.test(this._ch)&&(this._ch=""));return this._output.get_code(t)},e.exports.Beautifier=p},function(e,t,n){var i=n(6).Options;function r(e){i.call(this,e,"css"),this.selector_separator_newline=this._get_boolean("selector_separator_newline",!0),this.newline_between_rules=this._get_boolean("newline_between_rules",!0);var t=this._get_boolean("space_around_selector_separator");this.space_around_combinator=this._get_boolean("space_around_combinator")||t}r.prototype=new i,e.exports.Options=r}]),function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=18)}([,,function(e,t,n){function i(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function r(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function a(e,t){this.__indent_cache=new r(e,t),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new i(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}i.prototype.clone_empty=function(){var e=new i(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},i.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},i.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},i.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},i.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},i.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},i.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},i.prototype.is_empty=function(){return 0===this.__items.length},i.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},i.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},i.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},i.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},i.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},i.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},i.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},r.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},r.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},r.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},r.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},a.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},a.prototype.get_line_number=function(){return this.__lines.length},a.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},a.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},a.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},a.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},a.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},a.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},a.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},a.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},a.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},a.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},a.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},a.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},a.prototype.just_added_newline=function(){return this.current_line.is_empty()},a.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},a.prototype.ensure_empty_line_above=function(e,t){for(var n=this.__lines.length-2;n>=0;){var r=this.__lines[n];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==t){this.__lines.splice(n+1,0,new i(this)),this.previous_line=this.__lines[this.__lines.length-2];break}n--}},e.exports.Output=a},function(e,t,n){e.exports.Token=function(e,t,n,i){this.type=e,this.text=t,this.comments_before=null,this.newlines=n||0,this.whitespace_before=i||"",this.parent=null,this.next=null,this.previous=null,this.opened=null,this.closed=null,this.directives=null}},,,function(e,t,n){function i(e,t){this.raw_options=r(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php"],["auto"])}function r(e,t){var n,i={};for(n in e=a(e))n!==t&&(i[n]=e[n]);if(t&&e[t])for(n in e[t])i[n]=e[t][n];return i}function a(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}i.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"==typeof n?null!==n&&"function"==typeof n.concat&&(i=n.concat()):"string"==typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},i.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},i.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"==typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},i.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},i.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},i.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},i.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some(function(e){return-1===t.indexOf(e)})},e.exports.Options=i,e.exports.normalizeOpts=a,e.exports.mergeOpts=r},,function(e,t,n){var i=RegExp.prototype.hasOwnProperty("sticky");function r(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}r.prototype.restart=function(){this.__position=0},r.prototype.back=function(){this.__position>0&&(this.__position-=1)},r.prototype.hasNext=function(){return this.__position<this.__input_length},r.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},r.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},r.prototype.__match=function(e,t){e.lastIndex=t;var n=e.exec(this.__input);return!n||i&&e.sticky||n.index!==t&&(n=null),n},r.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},r.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},r.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},r.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},r.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},r.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},r.prototype.get_regexp=function(e,t){var n=null,r="g";return t&&i&&(r="y"),"string"==typeof e&&""!==e?n=new RegExp(e,r):e&&(n=new RegExp(e.source,r)),n},r.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},r.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},r.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=r},function(e,t,n){var i=n(8).InputScanner,r=n(3).Token,a=n(10).TokenStream,o=n(11).WhitespacePattern,s={START:"TK_START",RAW:"TK_RAW",EOF:"TK_EOF"},l=function(e,t){this._input=new i(e),this._options=t||{},this.__tokens=null,this._patterns={},this._patterns.whitespace=new o(this._input)};l.prototype.tokenize=function(){var e;this._input.restart(),this.__tokens=new a,this._reset();for(var t=new r(s.START,""),n=null,i=[],o=new a;t.type!==s.EOF;){for(e=this._get_next_token(t,n);this._is_comment(e);)o.add(e),e=this._get_next_token(t,n);o.isEmpty()||(e.comments_before=o,o=new a),e.parent=n,this._is_opening(e)?(i.push(n),n=e):n&&this._is_closing(e,n)&&(e.opened=n,n.closed=e,n=i.pop(),e.parent=n),e.previous=t,t.next=e,this.__tokens.add(e),t=e}return this.__tokens},l.prototype._is_first_token=function(){return this.__tokens.isEmpty()},l.prototype._reset=function(){},l.prototype._get_next_token=function(e,t){this._readWhitespace();var n=this._input.read(/.+/g);return n?this._create_token(s.RAW,n):this._create_token(s.EOF,"")},l.prototype._is_comment=function(e){return!1},l.prototype._is_opening=function(e){return!1},l.prototype._is_closing=function(e,t){return!1},l.prototype._create_token=function(e,t){return new r(e,t,this._patterns.whitespace.newline_count,this._patterns.whitespace.whitespace_before_token)},l.prototype._readWhitespace=function(){return this._patterns.whitespace.read()},e.exports.Tokenizer=l,e.exports.TOKEN=s},function(e,t,n){function i(e){this.__tokens=[],this.__tokens_length=this.__tokens.length,this.__position=0,this.__parent_token=e}i.prototype.restart=function(){this.__position=0},i.prototype.isEmpty=function(){return 0===this.__tokens_length},i.prototype.hasNext=function(){return this.__position<this.__tokens_length},i.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__tokens[this.__position],this.__position+=1),e},i.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__tokens_length&&(t=this.__tokens[e]),t},i.prototype.add=function(e){this.__parent_token&&(e.parent=this.__parent_token),this.__tokens.push(e),this.__tokens_length+=1},e.exports.TokenStream=i},function(e,t,n){var i=n(12).Pattern;function r(e,t){i.call(this,e,t),t?this._line_regexp=this._input.get_regexp(t._line_regexp):this.__set_whitespace_patterns("",""),this.newline_count=0,this.whitespace_before_token=""}r.prototype=new i,r.prototype.__set_whitespace_patterns=function(e,t){e+="\\t ",t+="\\n\\r",this._match_pattern=this._input.get_regexp("["+e+t+"]+",!0),this._newline_regexp=this._input.get_regexp("\\r\\n|["+t+"]")},r.prototype.read=function(){this.newline_count=0,this.whitespace_before_token="";var e=this._input.read(this._match_pattern);if(" "===e)this.whitespace_before_token=" ";else if(e){var t=this.__split(this._newline_regexp,e);this.newline_count=t.length-1,this.whitespace_before_token=t[this.newline_count]}return e},r.prototype.matching=function(e,t){var n=this._create();return n.__set_whitespace_patterns(e,t),n._update(),n},r.prototype._create=function(){return new r(this._input,this)},r.prototype.__split=function(e,t){e.lastIndex=0;for(var n=0,i=[],r=e.exec(t);r;)i.push(t.substring(n,r.index)),n=r.index+r[0].length,r=e.exec(t);return n<t.length?i.push(t.substring(n,t.length)):i.push(""),i},e.exports.WhitespacePattern=r},function(e,t,n){function i(e,t){this._input=e,this._starting_pattern=null,this._match_pattern=null,this._until_pattern=null,this._until_after=!1,t&&(this._starting_pattern=this._input.get_regexp(t._starting_pattern,!0),this._match_pattern=this._input.get_regexp(t._match_pattern,!0),this._until_pattern=this._input.get_regexp(t._until_pattern),this._until_after=t._until_after)}i.prototype.read=function(){var e=this._input.read(this._starting_pattern);return this._starting_pattern&&!e||(e+=this._input.read(this._match_pattern,this._until_pattern,this._until_after)),e},i.prototype.read_match=function(){return this._input.match(this._match_pattern)},i.prototype.until_after=function(e){var t=this._create();return t._until_after=!0,t._until_pattern=this._input.get_regexp(e),t._update(),t},i.prototype.until=function(e){var t=this._create();return t._until_after=!1,t._until_pattern=this._input.get_regexp(e),t._update(),t},i.prototype.starting_with=function(e){var t=this._create();return t._starting_pattern=this._input.get_regexp(e,!0),t._update(),t},i.prototype.matching=function(e){var t=this._create();return t._match_pattern=this._input.get_regexp(e,!0),t._update(),t},i.prototype._create=function(){return new i(this._input,this)},i.prototype._update=function(){},e.exports.Pattern=i},function(e,t,n){function i(e,t){e="string"==typeof e?e:e.source,t="string"==typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}i.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},i.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=i},function(e,t,n){var i=n(12).Pattern,r={django:!1,erb:!1,handlebars:!1,php:!1};function a(e,t){i.call(this,e,t),this.__template_pattern=null,this._disabled=Object.assign({},r),this._excluded=Object.assign({},r),t&&(this.__template_pattern=this._input.get_regexp(t.__template_pattern),this._excluded=Object.assign(this._excluded,t._excluded),this._disabled=Object.assign(this._disabled,t._disabled));var n=new i(e);this.__patterns={handlebars_comment:n.starting_with(/{{!--/).until_after(/--}}/),handlebars_unescaped:n.starting_with(/{{{/).until_after(/}}}/),handlebars:n.starting_with(/{{/).until_after(/}}/),php:n.starting_with(/<\?(?:[=]|php)/).until_after(/\?>/),erb:n.starting_with(/<%[^%]/).until_after(/[^%]%>/),django:n.starting_with(/{%/).until_after(/%}/),django_value:n.starting_with(/{{/).until_after(/}}/),django_comment:n.starting_with(/{#/).until_after(/#}/)}}a.prototype=new i,a.prototype._create=function(){return new a(this._input,this)},a.prototype._update=function(){this.__set_templated_pattern()},a.prototype.disable=function(e){var t=this._create();return t._disabled[e]=!0,t._update(),t},a.prototype.read_options=function(e){var t=this._create();for(var n in r)t._disabled[n]=-1===e.templating.indexOf(n);return t._update(),t},a.prototype.exclude=function(e){var t=this._create();return t._excluded[e]=!0,t._update(),t},a.prototype.read=function(){var e="";e=this._match_pattern?this._input.read(this._starting_pattern):this._input.read(this._starting_pattern,this.__template_pattern);for(var t=this._read_template();t;)this._match_pattern?t+=this._input.read(this._match_pattern):t+=this._input.readUntil(this.__template_pattern),e+=t,t=this._read_template();return this._until_after&&(e+=this._input.readUntilAfter(this._until_pattern)),e},a.prototype.__set_templated_pattern=function(){var e=[];this._disabled.php||e.push(this.__patterns.php._starting_pattern.source),this._disabled.handlebars||e.push(this.__patterns.handlebars._starting_pattern.source),this._disabled.erb||e.push(this.__patterns.erb._starting_pattern.source),this._disabled.django||(e.push(this.__patterns.django._starting_pattern.source),e.push(this.__patterns.django_value._starting_pattern.source),e.push(this.__patterns.django_comment._starting_pattern.source)),this._until_pattern&&e.push(this._until_pattern.source),this.__template_pattern=this._input.get_regexp("(?:"+e.join("|")+")")},a.prototype._read_template=function(){var e="",t=this._input.peek();if("<"===t){var n=this._input.peek(1);this._disabled.php||this._excluded.php||"?"!==n||(e=e||this.__patterns.php.read()),this._disabled.erb||this._excluded.erb||"%"!==n||(e=e||this.__patterns.erb.read())}else"{"===t&&(this._disabled.handlebars||this._excluded.handlebars||(e=(e=(e=e||this.__patterns.handlebars_comment.read())||this.__patterns.handlebars_unescaped.read())||this.__patterns.handlebars.read()),this._disabled.django||(this._excluded.django||this._excluded.handlebars||(e=e||this.__patterns.django_value.read()),this._excluded.django||(e=(e=e||this.__patterns.django_comment.read())||this.__patterns.django.read())));return e},e.exports.TemplatablePattern=a},,,,function(e,t,n){var i=n(19).Beautifier,r=n(20).Options;e.exports=function(e,t,n,r){return new i(e,t,n,r).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(20).Options,r=n(2).Output,a=n(21).Tokenizer,o=n(21).TOKEN,s=/\r\n|[\r\n]/,l=/\r\n|[\r\n]/g,c=function(e,t){this.indent_level=0,this.alignment_size=0,this.max_preserve_newlines=e.max_preserve_newlines,this.preserve_newlines=e.preserve_newlines,this._output=new r(e,t)};c.prototype.current_line_has_match=function(e){return this._output.current_line.has_match(e)},c.prototype.set_space_before_token=function(e,t){this._output.space_before_token=e,this._output.non_breaking_space=t},c.prototype.set_wrap_point=function(){this._output.set_indent(this.indent_level,this.alignment_size),this._output.set_wrap_point()},c.prototype.add_raw_token=function(e){this._output.add_raw_token(e)},c.prototype.print_preserved_newlines=function(e){var t=0;e.type!==o.TEXT&&e.previous.type!==o.TEXT&&(t=e.newlines?1:0),this.preserve_newlines&&(t=e.newlines<this.max_preserve_newlines+1?e.newlines:this.max_preserve_newlines+1);for(var n=0;n<t;n++)this.print_newline(n>0);return 0!==t},c.prototype.traverse_whitespace=function(e){return!(!e.whitespace_before&&!e.newlines)&&(this.print_preserved_newlines(e)||(this._output.space_before_token=!0),!0)},c.prototype.previous_token_wrapped=function(){return this._output.previous_token_wrapped},c.prototype.print_newline=function(e){this._output.add_new_line(e)},c.prototype.print_token=function(e){e.text&&(this._output.set_indent(this.indent_level,this.alignment_size),this._output.add_token(e.text))},c.prototype.indent=function(){this.indent_level++},c.prototype.get_full_indent=function(e){return(e=this.indent_level+(e||0))<1?"":this._output.get_indent_string(e)};var h=function(e,t){var n=null,i=null;return t.closed?("script"===e?n="text/javascript":"style"===e&&(n="text/css"),(n=function(e){for(var t=null,n=e.next;n.type!==o.EOF&&e.closed!==n;){if(n.type===o.ATTRIBUTE&&"type"===n.text){n.next&&n.next.type===o.EQUALS&&n.next.next&&n.next.next.type===o.VALUE&&(t=n.next.next.text);break}n=n.next}return t}(t)||n).search("text/css")>-1?i="css":n.search(/(text|application|dojo)\/(x-)?(javascript|ecmascript|jscript|livescript|(ld\+)?json|method|aspect)/)>-1?i="javascript":n.search(/(text|application|dojo)\/(x-)?(html)/)>-1?i="html":n.search(/test\/null/)>-1&&(i="null"),i):null};function d(e,t){return-1!==t.indexOf(e)}function u(e){this._printer=e,this._current_frame=null}function p(e,t,n,r){this._source_text=e||"",t=t||{},this._js_beautify=n,this._css_beautify=r,this._tag_stack=null;var a=new i(t,"html");this._options=a,this._is_wrap_attributes_force="force"===this._options.wrap_attributes.substr(0,"force".length),this._is_wrap_attributes_force_expand_multiline="force-expand-multiline"===this._options.wrap_attributes,this._is_wrap_attributes_force_aligned="force-aligned"===this._options.wrap_attributes,this._is_wrap_attributes_aligned_multiple="aligned-multiple"===this._options.wrap_attributes,this._is_wrap_attributes_preserve="preserve"===this._options.wrap_attributes.substr(0,"preserve".length),this._is_wrap_attributes_preserve_aligned="preserve-aligned"===this._options.wrap_attributes}u.prototype.get_parser_token=function(){return this._current_frame?this._current_frame.parser_token:null},u.prototype.record_tag=function(e){var t=new function(e,t,n){this.parent=e||null,this.tag=t?t.tag_name:"",this.indent_level=n||0,this.parser_token=t||null}(this._current_frame,e,this._printer.indent_level);this._current_frame=t},u.prototype._try_pop_frame=function(e){var t=null;return e&&(t=e.parser_token,this._printer.indent_level=e.indent_level,this._current_frame=e.parent),t},u.prototype._get_frame=function(e,t){for(var n=this._current_frame;n&&-1===e.indexOf(n.tag);){if(t&&-1!==t.indexOf(n.tag)){n=null;break}n=n.parent}return n},u.prototype.try_pop=function(e,t){var n=this._get_frame([e],t);return this._try_pop_frame(n)},u.prototype.indent_to_tag=function(e){var t=this._get_frame(e);t&&(this._printer.indent_level=t.indent_level)},p.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===this._options.eol&&(t="\n",e&&s.test(e)&&(t=e.match(s)[0]));var n=(e=e.replace(l,"\n")).match(/^[\t ]*/)[0],i={text:"",type:""},r=new m,h=new c(this._options,n),d=new a(e,this._options).tokenize();this._tag_stack=new u(h);for(var p=null,f=d.next();f.type!==o.EOF;)f.type===o.TAG_OPEN||f.type===o.COMMENT?r=p=this._handle_tag_open(h,f,r,i):f.type===o.ATTRIBUTE||f.type===o.EQUALS||f.type===o.VALUE||f.type===o.TEXT&&!r.tag_complete?p=this._handle_inside_tag(h,f,r,d):f.type===o.TAG_CLOSE?p=this._handle_tag_close(h,f,r):f.type===o.TEXT?p=this._handle_text(h,f,r):h.add_raw_token(f),i=p,f=d.next();return h._output.get_code(t)},p.prototype._handle_tag_close=function(e,t,n){var i={text:t.text,type:t.type};return e.alignment_size=0,n.tag_complete=!0,e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),n.is_unformatted?e.add_raw_token(t):("<"===n.tag_start_char&&(e.set_space_before_token("/"===t.text[0],!0),this._is_wrap_attributes_force_expand_multiline&&n.has_wrapped_attrs&&e.print_newline(!1)),e.print_token(t)),!n.indent_content||n.is_unformatted||n.is_content_unformatted||(e.indent(),n.indent_content=!1),n.is_inline_element||n.is_unformatted||n.is_content_unformatted||e.set_wrap_point(),i},p.prototype._handle_inside_tag=function(e,t,n,i){var r=n.has_wrapped_attrs,a={text:t.text,type:t.type};if(e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),n.is_unformatted)e.add_raw_token(t);else if("{"===n.tag_start_char&&t.type===o.TEXT)e.print_preserved_newlines(t)?(t.newlines=0,e.add_raw_token(t)):e.print_token(t);else{if(t.type===o.ATTRIBUTE?(e.set_space_before_token(!0),n.attr_count+=1):t.type===o.EQUALS?e.set_space_before_token(!1):t.type===o.VALUE&&t.previous.type===o.EQUALS&&e.set_space_before_token(!1),t.type===o.ATTRIBUTE&&"<"===n.tag_start_char&&((this._is_wrap_attributes_preserve||this._is_wrap_attributes_preserve_aligned)&&(e.traverse_whitespace(t),r=r||0!==t.newlines),this._is_wrap_attributes_force)){var s=n.attr_count>1;if(this._is_wrap_attributes_force_expand_multiline&&1===n.attr_count){var l,c=!0,h=0;do{if((l=i.peek(h)).type===o.ATTRIBUTE){c=!1;break}h+=1}while(h<4&&l.type!==o.EOF&&l.type!==o.TAG_CLOSE);s=!c}s&&(e.print_newline(!1),r=!0)}e.print_token(t),r=r||e.previous_token_wrapped(),n.has_wrapped_attrs=r}return a},p.prototype._handle_text=function(e,t,n){var i={text:t.text,type:"TK_CONTENT"};return n.custom_beautifier_name?this._print_custom_beatifier_text(e,t,n):n.is_unformatted||n.is_content_unformatted?e.add_raw_token(t):(e.traverse_whitespace(t),e.print_token(t)),i},p.prototype._print_custom_beatifier_text=function(e,t,n){var i=this;if(""!==t.text){var r,a=t.text,o=1,s="",l="";"javascript"===n.custom_beautifier_name&&"function"==typeof this._js_beautify?r=this._js_beautify:"css"===n.custom_beautifier_name&&"function"==typeof this._css_beautify?r=this._css_beautify:"html"===n.custom_beautifier_name&&(r=function(e,t){return new p(e,t,i._js_beautify,i._css_beautify).beautify()}),"keep"===this._options.indent_scripts?o=0:"separate"===this._options.indent_scripts&&(o=-e.indent_level);var c=e.get_full_indent(o);if(a=a.replace(/\n[ \t]*$/,""),"html"!==n.custom_beautifier_name&&"<"===a[0]&&a.match(/^(<!--|<!\[CDATA\[)/)){var h=/^(<!--[^\n]*|<!\[CDATA\[)(\n?)([ \t\n]*)([\s\S]*)(-->|]]>)$/.exec(a);if(!h)return void e.add_raw_token(t);s=c+h[1]+"\n",a=h[4],h[5]&&(l=c+h[5]),a=a.replace(/\n[ \t]*$/,""),(h[2]||-1!==h[3].indexOf("\n"))&&(h=h[3].match(/[ \t]+$/))&&(t.whitespace_before=h[0])}if(a)if(r){var d=function(){this.eol="\n"};d.prototype=this._options.raw_options,a=r(c+a,new d)}else{var u=t.whitespace_before;u&&(a=a.replace(new RegExp("\n("+u+")?","g"),"\n")),a=c+a.replace(/\n/g,"\n"+c)}s&&(a=a?s+a+"\n"+l:s+l),e.print_newline(!1),a&&(t.text=a,t.whitespace_before="",t.newlines=0,e.add_raw_token(t),e.print_newline(!0))}},p.prototype._handle_tag_open=function(e,t,n,i){var r=this._get_tag_open_token(t);return(n.is_unformatted||n.is_content_unformatted)&&t.type===o.TAG_OPEN&&0===t.text.indexOf("</")?e.add_raw_token(t):(e.traverse_whitespace(t),this._set_tag_position(e,t,r,n,i),r.is_inline_element||e.set_wrap_point(),e.print_token(t)),(this._is_wrap_attributes_force_aligned||this._is_wrap_attributes_aligned_multiple||this._is_wrap_attributes_preserve_aligned)&&(r.alignment_size=t.text.length+1),r.tag_complete||r.is_unformatted||(e.alignment_size=r.alignment_size),r};var m=function(e,t){var n;(this.parent=e||null,this.text="",this.type="TK_TAG_OPEN",this.tag_name="",this.is_inline_element=!1,this.is_unformatted=!1,this.is_content_unformatted=!1,this.is_empty_element=!1,this.is_start_tag=!1,this.is_end_tag=!1,this.indent_content=!1,this.multiline_content=!1,this.custom_beautifier_name=null,this.start_tag_token=null,this.attr_count=0,this.has_wrapped_attrs=!1,this.alignment_size=0,this.tag_complete=!1,this.tag_start_char="",this.tag_check="",t)?(this.tag_start_char=t.text[0],this.text=t.text,"<"===this.tag_start_char?(n=t.text.match(/^<([^\s>]*)/),this.tag_check=n?n[1]:""):(n=t.text.match(/^{{[#\^]?([^\s}]+)/),this.tag_check=n?n[1]:""),this.tag_check=this.tag_check.toLowerCase(),t.type===o.COMMENT&&(this.tag_complete=!0),this.is_start_tag="/"!==this.tag_check.charAt(0),this.tag_name=this.is_start_tag?this.tag_check:this.tag_check.substr(1),this.is_end_tag=!this.is_start_tag||t.closed&&"/>"===t.closed.text,this.is_end_tag=this.is_end_tag||"{"===this.tag_start_char&&(this.text.length<3||/[^#\^]/.test(this.text.charAt(2)))):this.tag_complete=!0};p.prototype._get_tag_open_token=function(e){var t=new m(this._tag_stack.get_parser_token(),e);return t.alignment_size=this._options.wrap_attributes_indent_size,t.is_end_tag=t.is_end_tag||d(t.tag_check,this._options.void_elements),t.is_empty_element=t.tag_complete||t.is_start_tag&&t.is_end_tag,t.is_unformatted=!t.tag_complete&&d(t.tag_check,this._options.unformatted),t.is_content_unformatted=!t.is_empty_element&&d(t.tag_check,this._options.content_unformatted),t.is_inline_element=d(t.tag_name,this._options.inline)||"{"===t.tag_start_char,t},p.prototype._set_tag_position=function(e,t,n,i,r){if(n.is_empty_element||(n.is_end_tag?n.start_tag_token=this._tag_stack.try_pop(n.tag_name):(this._do_optional_end_element(n)&&(n.is_inline_element||(n.parent&&(n.parent.multiline_content=!0),e.print_newline(!1))),this._tag_stack.record_tag(n),"script"!==n.tag_name&&"style"!==n.tag_name||n.is_unformatted||n.is_content_unformatted||(n.custom_beautifier_name=h(n.tag_check,t)))),d(n.tag_check,this._options.extra_liners)&&(e.print_newline(!1),e._output.just_added_blankline()||e.print_newline(!0)),n.is_empty_element){if("{"===n.tag_start_char&&"else"===n.tag_check)this._tag_stack.indent_to_tag(["if","unless","each"]),n.indent_content=!0,e.current_line_has_match(/{{#if/)||e.print_newline(!1);"!--"===n.tag_name&&r.type===o.TAG_CLOSE&&i.is_end_tag&&-1===n.text.indexOf("\n")||n.is_inline_element||n.is_unformatted||e.print_newline(!1)}else n.is_unformatted||n.is_content_unformatted?n.is_inline_element||n.is_unformatted||e.print_newline(!1):n.is_end_tag?(n.start_tag_token&&n.start_tag_token.multiline_content||!(n.is_inline_element||i.is_inline_element||r.type===o.TAG_CLOSE&&n.start_tag_token===i||"TK_CONTENT"===r.type))&&e.print_newline(!1):(n.indent_content=!n.custom_beautifier_name,"<"===n.tag_start_char&&("html"===n.tag_name?n.indent_content=this._options.indent_inner_html:"head"===n.tag_name?n.indent_content=this._options.indent_head_inner_html:"body"===n.tag_name&&(n.indent_content=this._options.indent_body_inner_html)),n.is_inline_element||"TK_CONTENT"===r.type||(n.parent&&(n.parent.multiline_content=!0),e.print_newline(!1)))},p.prototype._do_optional_end_element=function(e){var t=null;if(!e.is_empty_element&&e.is_start_tag&&e.parent)return"body"===e.tag_name?t=t||this._tag_stack.try_pop("head"):"li"===e.tag_name?t=t||this._tag_stack.try_pop("li",["ol","ul"]):"dd"===e.tag_name||"dt"===e.tag_name?t=(t=t||this._tag_stack.try_pop("dt",["dl"]))||this._tag_stack.try_pop("dd",["dl"]):"rp"===e.tag_name||"rt"===e.tag_name?t=(t=t||this._tag_stack.try_pop("rt",["ruby","rtc"]))||this._tag_stack.try_pop("rp",["ruby","rtc"]):"optgroup"===e.tag_name?t=t||this._tag_stack.try_pop("optgroup",["select"]):"option"===e.tag_name?t=t||this._tag_stack.try_pop("option",["select","datalist","optgroup"]):"colgroup"===e.tag_name?t=t||this._tag_stack.try_pop("caption",["table"]):"thead"===e.tag_name?t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]):"tbody"===e.tag_name||"tfoot"===e.tag_name?t=(t=(t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("thead",["table"]))||this._tag_stack.try_pop("tbody",["table"]):"tr"===e.tag_name?t=(t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("tr",["table","thead","tbody","tfoot"]):"th"!==e.tag_name&&"td"!==e.tag_name||(t=(t=t||this._tag_stack.try_pop("td",["table","thead","tbody","tfoot","tr"]))||this._tag_stack.try_pop("th",["table","thead","tbody","tfoot","tr"])),e.parent=this._tag_stack.get_parser_token(),t},e.exports.Beautifier=p},function(e,t,n){var i=n(6).Options;function r(e){i.call(this,e,"html"),1===this.templating.length&&"auto"===this.templating[0]&&(this.templating=["django","erb","handlebars","php"]),this.indent_inner_html=this._get_boolean("indent_inner_html"),this.indent_body_inner_html=this._get_boolean("indent_body_inner_html",!0),this.indent_head_inner_html=this._get_boolean("indent_head_inner_html",!0),this.indent_handlebars=this._get_boolean("indent_handlebars",!0),this.wrap_attributes=this._get_selection("wrap_attributes",["auto","force","force-aligned","force-expand-multiline","aligned-multiple","preserve","preserve-aligned"]),this.wrap_attributes_indent_size=this._get_number("wrap_attributes_indent_size",this.indent_size),this.extra_liners=this._get_array("extra_liners",["head","body","/html"]),this.inline=this._get_array("inline",["a","abbr","area","audio","b","bdi","bdo","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","i","iframe","img","input","ins","kbd","keygen","label","map","mark","math","meter","noscript","object","output","progress","q","ruby","s","samp","select","small","span","strong","sub","sup","svg","template","textarea","time","u","var","video","wbr","text","acronym","big","strike","tt"]),this.void_elements=this._get_array("void_elements",["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr","!doctype","?xml","basefont","isindex"]),this.unformatted=this._get_array("unformatted",[]),this.content_unformatted=this._get_array("content_unformatted",["pre","textarea"]),this.unformatted_content_delimiter=this._get_characters("unformatted_content_delimiter"),this.indent_scripts=this._get_selection("indent_scripts",["normal","keep","separate"])}r.prototype=new i,e.exports.Options=r},function(e,t,n){var i=n(9).Tokenizer,r=n(9).TOKEN,a=n(13).Directives,o=n(14).TemplatablePattern,s=n(12).Pattern,l={TAG_OPEN:"TK_TAG_OPEN",TAG_CLOSE:"TK_TAG_CLOSE",ATTRIBUTE:"TK_ATTRIBUTE",EQUALS:"TK_EQUALS",VALUE:"TK_VALUE",COMMENT:"TK_COMMENT",TEXT:"TK_TEXT",UNKNOWN:"TK_UNKNOWN",START:r.START,RAW:r.RAW,EOF:r.EOF},c=new a(/<\!--/,/-->/),h=function(e,t){i.call(this,e,t),this._current_tag_name="";var n=new o(this._input).read_options(this._options),r=new s(this._input);if(this.__patterns={word:n.until(/[\n\r\t <]/),single_quote:n.until_after(/'/),double_quote:n.until_after(/"/),attribute:n.until(/[\n\r\t =\/>]/),element_name:n.until(/[\n\r\t >\/]/),handlebars_comment:r.starting_with(/{{!--/).until_after(/--}}/),handlebars:r.starting_with(/{{/).until_after(/}}/),handlebars_open:r.until(/[\n\r\t }]/),handlebars_raw_close:r.until(/}}/),comment:r.starting_with(/<!--/).until_after(/-->/),cdata:r.starting_with(/<!\[CDATA\[/).until_after(/]]>/),conditional_comment:r.starting_with(/<!\[/).until_after(/]>/),processing:r.starting_with(/<\?/).until_after(/\?>/)},this._options.indent_handlebars&&(this.__patterns.word=this.__patterns.word.exclude("handlebars")),this._unformatted_content_delimiter=null,this._options.unformatted_content_delimiter){var a=this._input.get_literal_regexp(this._options.unformatted_content_delimiter);this.__patterns.unformatted_content_delimiter=r.matching(a).until_after(a)}};(h.prototype=new i)._is_comment=function(e){return!1},h.prototype._is_opening=function(e){return e.type===l.TAG_OPEN},h.prototype._is_closing=function(e,t){return e.type===l.TAG_CLOSE&&t&&((">"===e.text||"/>"===e.text)&&"<"===t.text[0]||"}}"===e.text&&"{"===t.text[0]&&"{"===t.text[1])},h.prototype._reset=function(){this._current_tag_name=""},h.prototype._get_next_token=function(e,t){var n=null;this._readWhitespace();var i=this._input.peek();return null===i?this._create_token(l.EOF,""):n=(n=(n=(n=(n=(n=(n=(n=(n=n||this._read_open_handlebars(i,t))||this._read_attribute(i,e,t))||this._read_raw_content(i,e,t))||this._read_close(i,t))||this._read_content_word(i))||this._read_comment_or_cdata(i))||this._read_processing(i))||this._read_open(i,t))||this._create_token(l.UNKNOWN,this._input.next())},h.prototype._read_comment_or_cdata=function(e){var t=null,n=null,i=null;"<"===e&&("!"===this._input.peek(1)&&((n=this.__patterns.comment.read())?(i=c.get_directives(n))&&"start"===i.ignore&&(n+=c.readIgnored(this._input)):n=this.__patterns.cdata.read()),n&&((t=this._create_token(l.COMMENT,n)).directives=i));return t},h.prototype._read_processing=function(e){var t=null,n=null;if("<"===e){var i=this._input.peek(1);"!"!==i&&"?"!==i||(n=(n=this.__patterns.conditional_comment.read())||this.__patterns.processing.read()),n&&((t=this._create_token(l.COMMENT,n)).directives=null)}return t},h.prototype._read_open=function(e,t){var n=null,i=null;return t||"<"===e&&(n=this._input.next(),"/"===this._input.peek()&&(n+=this._input.next()),n+=this.__patterns.element_name.read(),i=this._create_token(l.TAG_OPEN,n)),i},h.prototype._read_open_handlebars=function(e,t){var n=null,i=null;return t||this._options.indent_handlebars&&"{"===e&&"{"===this._input.peek(1)&&("!"===this._input.peek(2)?(n=(n=this.__patterns.handlebars_comment.read())||this.__patterns.handlebars.read(),i=this._create_token(l.COMMENT,n)):(n=this.__patterns.handlebars_open.read(),i=this._create_token(l.TAG_OPEN,n))),i},h.prototype._read_close=function(e,t){var n=null,i=null;return t&&("<"===t.text[0]&&(">"===e||"/"===e&&">"===this._input.peek(1))?(n=this._input.next(),"/"===e&&(n+=this._input.next()),i=this._create_token(l.TAG_CLOSE,n)):"{"===t.text[0]&&"}"===e&&"}"===this._input.peek(1)&&(this._input.next(),this._input.next(),i=this._create_token(l.TAG_CLOSE,"}}"))),i},h.prototype._read_attribute=function(e,t,n){var i=null,r="";if(n&&"<"===n.text[0])if("="===e)i=this._create_token(l.EQUALS,this._input.next());else if('"'===e||"'"===e){var a=this._input.next();a+='"'===e?this.__patterns.double_quote.read():this.__patterns.single_quote.read(),i=this._create_token(l.VALUE,a)}else(r=this.__patterns.attribute.read())&&(i=t.type===l.EQUALS?this._create_token(l.VALUE,r):this._create_token(l.ATTRIBUTE,r));return i},h.prototype._is_content_unformatted=function(e){return-1===this._options.void_elements.indexOf(e)&&(-1!==this._options.content_unformatted.indexOf(e)||-1!==this._options.unformatted.indexOf(e))},h.prototype._read_raw_content=function(e,t,n){var i="";if(n&&"{"===n.text[0])i=this.__patterns.handlebars_raw_close.read();else if(t.type===l.TAG_CLOSE&&"<"===t.opened.text[0]){var r=t.opened.text.substr(1).toLowerCase();if("script"===r||"style"===r){var a=this._read_comment_or_cdata(e);if(a)return a.type=l.TEXT,a;i=this._input.readUntil(new RegExp("</"+r+"[\\n\\r\\t ]*?>","ig"))}else this._is_content_unformatted(r)&&(i=this._input.readUntil(new RegExp("</"+r+"[\\n\\r\\t ]*?>","ig")))}return i?this._create_token(l.TEXT,i):null},h.prototype._read_content_word=function(e){var t="";if(this._options.unformatted_content_delimiter&&e===this._options.unformatted_content_delimiter[0]&&(t=this.__patterns.unformatted_content_delimiter.read()),t||(t=this.__patterns.word.read()),t)return this._create_token(l.TEXT,t)},e.exports.Tokenizer=h,e.exports.TOKEN=l}]);n("wwzF");var Ge,Ve=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(t,n){for(var i=0,r=t;i<r.length;i++){var a=r[i];if(e.isIncremental(a)){var o=Je(a.range),s=this.offsetAt(o.start),l=this.offsetAt(o.end);this._content=this._content.substring(0,s)+a.text+this._content.substring(l,this._content.length);var c=Math.max(o.start.line,0),h=Math.max(o.end.line,0),d=this._lineOffsets,u=Ke(a.text,!1,s);if(h-c===u.length)for(var p=0,m=u.length;p<m;p++)d[p+c+1]=u[p];else u.length<1e4?d.splice.apply(d,[c+1,h-c].concat(u)):this._lineOffsets=d=d.slice(0,c+1).concat(u,d.slice(h+1));var f=a.text.length-(l-s);if(0!==f)for(p=c+1+u.length,m=d.length;p<m;p++)d[p]=d[p]+f}else{if(!e.isFull(a))throw new Error("Unknown change event received");this._content=a.text,this._lineOffsets=void 0}}this._version=n},e.prototype.getLineOffsets=function(){return void 0===this._lineOffsets&&(this._lineOffsets=Ke(this._content,!0)),this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,i=t.length;if(0===i)return{line:0,character:e};for(;n<i;){var r=Math.floor((n+i)/2);t[r]>e?i=r:n=r+1}var a=n-1;return{line:a,character:e-t[a]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e.isIncremental=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)},e.isFull=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength},e}();function Ke(e,t,n){void 0===n&&(n=0);for(var i=t?[n]:[],r=0;r<e.length;r++){var a=e.charCodeAt(r);13!==a&&10!==a||(13===a&&r+1<e.length&&10===e.charCodeAt(r+1)&&r++,i.push(n+r+1))}return i}function Je(e){var t=e.start,n=e.end;return t.line>n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function Ye(e){var t=Je(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){e.create=function(e,t,n,i){return new Ve(e,t,n,i)},e.update=function(e,t,n){if(e instanceof Ve)return e.update(t,n),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){for(var n=e.getText(),i=function e(t,n){if(t.length<=1)return t;var i=t.length/2|0,r=t.slice(0,i),a=t.slice(i);e(r,n),e(a,n);for(var o=0,s=0,l=0;o<r.length&&s<a.length;){var c=n(r[o],a[s]);t[l++]=c<=0?r[o++]:a[s++]}for(;o<r.length;)t[l++]=r[o++];for(;s<a.length;)t[l++]=a[s++];return t}(t.map(Ye),function(e,t){var n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}),r=n.length,a=i.length-1;a>=0;a--){var o=i[a],s=e.offsetAt(o.range.start),l=e.offsetAt(o.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,s)+o.newText+n.substring(l,n.length),r=s}return n}}(Ge||(Ge={}));var Xe=monaco.Uri,$e=monaco.Range,Qe=function(){function e(e,t,n){var i=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var r=function(e){var t,n=e.getModeId();n===i._languageId&&(i._listener[e.uri.toString()]=e.onDidChangeContent(function(){clearTimeout(t),t=setTimeout(function(){return i._doValidate(e.uri,n)},500)}),i._doValidate(e.uri,n))},a=function(e){monaco.editor.setModelMarkers(e,i._languageId,[]);var t=e.uri.toString(),n=i._listener[t];n&&(n.dispose(),delete i._listener[t])};this._disposables.push(monaco.editor.onDidCreateModel(r)),this._disposables.push(monaco.editor.onWillDisposeModel(function(e){a(e)})),this._disposables.push(monaco.editor.onDidChangeModelLanguage(function(e){a(e.model),r(e.model)})),this._disposables.push(n.onDidChange(function(e){monaco.editor.getModels().forEach(function(e){e.getModeId()===i._languageId&&(a(e),r(e))})})),this._disposables.push({dispose:function(){for(var e in i._listener)i._listener[e].dispose()}}),monaco.editor.getModels().forEach(r)}return e.prototype.dispose=function(){this._disposables.forEach(function(e){return e&&e.dispose()}),this._disposables=[]},e.prototype._doValidate=function(e,t){this._worker(e).then(function(n){return n.doValidation(e.toString()).then(function(n){var i=n.map(function(e){return function(e,t){var n="number"==typeof t.code?String(t.code):t.code;return{severity:function(e){switch(e){case p.Error:return monaco.MarkerSeverity.Error;case p.Warning:return monaco.MarkerSeverity.Warning;case p.Information:return monaco.MarkerSeverity.Info;case p.Hint:return monaco.MarkerSeverity.Hint;default:return monaco.MarkerSeverity.Info}}(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:n,source:t.source}}(0,e)});monaco.editor.setModelMarkers(monaco.editor.getModel(e),t,i)})}).then(void 0,function(e){console.error(e)})},e}();function Ze(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function et(e){if(e)return new $e(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function tt(e){if(e)return{range:et(e.range),text:e.newText}}var nt=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[".",":","<",'"',"=","/"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.doComplete(r.toString(),Ze(t))}).then(function(n){if(n){var i=e.getWordUntilPosition(t),r=new $e(t.lineNumber,i.startColumn,t.lineNumber,i.endColumn),a=n.items.map(function(e){var t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,range:r,kind:function(e){var t=monaco.languages.CompletionItemKind;switch(e){case z.Text:return t.Text;case z.Method:return t.Method;case z.Function:return t.Function;case z.Constructor:return t.Constructor;case z.Field:return t.Field;case z.Variable:return t.Variable;case z.Class:return t.Class;case z.Interface:return t.Interface;case z.Module:return t.Module;case z.Property:return t.Property;case z.Unit:return t.Unit;case z.Value:return t.Value;case z.Enum:return t.Enum;case z.Keyword:return t.Keyword;case z.Snippet:return t.Snippet;case z.Color:return t.Color;case z.File:return t.File;case z.Reference:return t.Reference}return t.Property}(e.kind)};return e.textEdit&&(t.range=et(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(tt)),e.insertTextFormat===I.Snippet&&(t.insertTextRules=monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet),t});return{isIncomplete:n.isIncomplete,suggestions:a}}})},e}();function it(e){return"string"==typeof e?{value:e}:function(e){return e&&"object"==typeof e&&"string"==typeof e.kind}(e)?"plaintext"===e.kind?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}:{value:e.value}:{value:"```"+e.language+"\n"+e.value+"\n```\n"}}var rt=function(){function e(e){this._worker=e}return e.prototype.provideHover=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.doHover(i.toString(),Ze(t))}).then(function(e){if(e)return{range:et(e.range),contents:function(e){if(e)return Array.isArray(e)?e.map(it):[it(e)]}(e.contents)}})},e}();var at=function(){function e(e){this._worker=e}return e.prototype.provideDocumentHighlights=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.findDocumentHighlights(i.toString(),Ze(t))}).then(function(e){if(e)return e.map(function(e){return{range:et(e.range),kind:function(e){var t=monaco.languages.DocumentHighlightKind;switch(e){case P.Read:return t.Read;case P.Write:return t.Write;case P.Text:return t.Text}return t.Text}(e.kind)}})})},e}();var ot=function(){function e(e){this._worker=e}return e.prototype.provideDocumentSymbols=function(e,t){var n=e.uri;return this._worker(n).then(function(e){return e.findDocumentSymbols(n.toString())}).then(function(e){if(e)return e.map(function(e){return{name:e.name,detail:"",containerName:e.containerName,kind:function(e){var t=monaco.languages.SymbolKind;switch(e){case F.File:return t.Array;case F.Module:return t.Module;case F.Namespace:return t.Namespace;case F.Package:return t.Package;case F.Class:return t.Class;case F.Method:return t.Method;case F.Property:return t.Property;case F.Field:return t.Field;case F.Constructor:return t.Constructor;case F.Enum:return t.Enum;case F.Interface:return t.Interface;case F.Function:return t.Function;case F.Variable:return t.Variable;case F.Constant:return t.Constant;case F.String:return t.String;case F.Number:return t.Number;case F.Boolean:return t.Boolean;case F.Array:return t.Array}return t.Function}(e.kind),tags:[],range:et(e.location.range),selectionRange:et(e.location.range)}})})},e}(),st=function(){function e(e){this._worker=e}return e.prototype.provideLinks=function(e,t){var n=e.uri;return this._worker(n).then(function(e){return e.findDocumentLinks(n.toString())}).then(function(e){if(e)return{links:e.map(function(e){return{range:et(e.range),url:e.target}})}})},e}();function lt(e){return{tabSize:e.tabSize,insertSpaces:e.insertSpaces}}var ct=function(){function e(e){this._worker=e}return e.prototype.provideDocumentFormattingEdits=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.format(i.toString(),null,lt(t)).then(function(e){if(e&&0!==e.length)return e.map(tt)})})},e}(),ht=function(){function e(e){this._worker=e}return e.prototype.provideDocumentRangeFormattingEdits=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.format(r.toString(),function(e){if(e)return{start:Ze(e.getStartPosition()),end:Ze(e.getEndPosition())}}(t),lt(n)).then(function(e){if(e&&0!==e.length)return e.map(tt)})})},e}(),dt=function(){function e(e){this._worker=e}return e.prototype.provideRenameEdits=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.doRename(r.toString(),Ze(t),n)}).then(function(e){return function(e){if(!e||!e.changes)return;var t=[];for(var n in e.changes)for(var i=Xe.parse(n),r=0,a=e.changes[n];r<a.length;r++){var o=a[r];t.push({resource:i,edit:{range:et(o.range),text:o.newText}})}return{edits:t}}(e)})},e}();var ut=function(){function e(e){this._worker=e}return e.prototype.provideFoldingRanges=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.getFoldingRanges(i.toString(),t)}).then(function(e){if(e)return e.map(function(e){var t={start:e.startLine+1,end:e.endLine+1};return void 0!==e.kind&&(t.kind=function(e){switch(e){case h.Comment:return monaco.languages.FoldingRangeKind.Comment;case h.Imports:return monaco.languages.FoldingRangeKind.Imports;case h.Region:return monaco.languages.FoldingRangeKind.Region}}(e.kind)),t})})},e}();var pt=function(){function e(e){this._worker=e}return e.prototype.provideSelectionRanges=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.getSelectionRanges(i.toString(),t.map(Ze))}).then(function(e){if(e)return e.map(function(e){for(var t=[];e;)t.push({range:et(e.range)}),e=e.parent;return t})})},e}();function mt(e){var t=new k(e),n=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return t.getLanguageServiceWorker.apply(t,e)},i=e.languageId;monaco.languages.registerCompletionItemProvider(i,new nt(n)),monaco.languages.registerHoverProvider(i,new rt(n)),monaco.languages.registerDocumentHighlightProvider(i,new at(n)),monaco.languages.registerLinkProvider(i,new st(n)),monaco.languages.registerFoldingRangeProvider(i,new ut(n)),monaco.languages.registerDocumentSymbolProvider(i,new ot(n)),monaco.languages.registerSelectionRangeProvider(i,new pt(n)),monaco.languages.registerRenameProvider(i,new dt(n)),"html"===i&&(monaco.languages.registerDocumentFormattingEditProvider(i,new ct(n)),monaco.languages.registerDocumentRangeFormattingEditProvider(i,new ht(n)),new Qe(i,n,e))}function ft(e){var t=[],n=[],i=new k(e);t.push(i);var r=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return i.getLanguageServiceWorker.apply(i,e)};return function(){var t=e.languageId,i=e.modeConfiguration;bt(n),i.completionItems&&n.push(monaco.languages.registerCompletionItemProvider(t,new nt(r))),i.hovers&&n.push(monaco.languages.registerHoverProvider(t,new rt(r))),i.documentHighlights&&n.push(monaco.languages.registerDocumentHighlightProvider(t,new at(r))),i.links&&n.push(monaco.languages.registerLinkProvider(t,new st(r))),i.documentSymbols&&n.push(monaco.languages.registerDocumentSymbolProvider(t,new ot(r))),i.rename&&n.push(monaco.languages.registerRenameProvider(t,new dt(r))),i.foldingRanges&&n.push(monaco.languages.registerFoldingRangeProvider(t,new ut(r))),i.selectionRanges&&n.push(monaco.languages.registerSelectionRangeProvider(t,new pt(r))),i.documentFormattingEdits&&n.push(monaco.languages.registerDocumentFormattingEditProvider(t,new ct(r))),i.documentRangeFormattingEdits&&n.push(monaco.languages.registerDocumentRangeFormattingEditProvider(t,new ht(r))),i.diagnostics&&n.push(new Qe(t,r,e))}(),t.push(gt(n)),gt(t)}function gt(e){return{dispose:function(){return bt(e)}}}function bt(e){for(;e.length;)e.pop().dispose()}n.d(t,"setupMode1",function(){return mt}),n.d(t,"setupMode",function(){return ft})},wwzF:function(e,t,n){"use strict";(function(e){n.d(t,"a",function(){return p});var i,r,a=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();if("object"==typeof e)r="win32"===e.platform;else if("object"==typeof navigator){var o=navigator.userAgent;r=o.indexOf("Windows")>=0}var s=/^\w[\w\d+.-]*$/,l=/^\//,c=/^\/\//;var h="",d="/",u=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,p=function(){function e(e,t,n,i,r,a){void 0===a&&(a=!1),"object"==typeof e?(this.scheme=e.scheme||h,this.authority=e.authority||h,this.path=e.path||h,this.query=e.query||h,this.fragment=e.fragment||h):(this.scheme=function(e,t){return e||t?e:"file"}(e,a),this.authority=t||h,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==d&&(t=d+t):t=d}return t}(this.scheme,n||h),this.query=i||h,this.fragment=r||h,function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!s.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!l.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(c.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,a))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return w(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,n=e.authority,i=e.path,r=e.query,a=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=h),void 0===n?n=this.authority:null===n&&(n=h),void 0===i?i=this.path:null===i&&(i=h),void 0===r?r=this.query:null===r&&(r=h),void 0===a?a=this.fragment:null===a&&(a=h),t===this.scheme&&n===this.authority&&i===this.path&&r===this.query&&a===this.fragment?this:new f(t,n,i,r,a)},e.parse=function(e,t){void 0===t&&(t=!1);var n=u.exec(e);return n?new f(n[2]||h,decodeURIComponent(n[4]||h),decodeURIComponent(n[5]||h),decodeURIComponent(n[7]||h),decodeURIComponent(n[9]||h),t):new f(h,h,h,h,h)},e.file=function(e){var t=h;if(r&&(e=e.replace(/\\/g,d)),e[0]===d&&e[1]===d){var n=e.indexOf(d,2);-1===n?(t=e.substring(2),e=d):(t=e.substring(2,n),e=e.substring(n)||d)}return new f("file",t,e,h,h)},e.from=function(e){return new f(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),v(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var n=new f(t);return n._formatted=t.external,n._fsPath=t._sep===m?t.fsPath:null,n}return t},e}(),m=r?1:void 0,f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return a(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=w(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?v(this,!0):(this._formatted||(this._formatted=v(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=m),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(p),g=((i={})[58]="%3A",i[47]="%2F",i[63]="%3F",i[35]="%23",i[91]="%5B",i[93]="%5D",i[64]="%40",i[33]="%21",i[36]="%24",i[38]="%26",i[39]="%27",i[40]="%28",i[41]="%29",i[42]="%2A",i[43]="%2B",i[44]="%2C",i[59]="%3B",i[61]="%3D",i[32]="%20",i);function b(e,t){for(var n=void 0,i=-1,r=0;r<e.length;r++){var a=e.charCodeAt(r);if(a>=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57||45===a||46===a||95===a||126===a||t&&47===a)-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),void 0!==n&&(n+=e.charAt(r));else{void 0===n&&(n=e.substr(0,r));var o=g[a];void 0!==o?(-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),n+=o):-1===i&&(i=r)}}return-1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function _(e){for(var t=void 0,n=0;n<e.length;n++){var i=e.charCodeAt(n);35===i||63===i?(void 0===t&&(t=e.substr(0,n)),t+=g[i]):void 0!==t&&(t+=e[n])}return void 0!==t?t:e}function w(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,r&&(t=t.replace(/\//g,"\\")),t}function v(e,t){var n=t?_:b,i="",r=e.scheme,a=e.authority,o=e.path,s=e.query,l=e.fragment;if(r&&(i+=r,i+=":"),(a||"file"===r)&&(i+=d,i+=d),a){var c=a.indexOf("@");if(-1!==c){var h=a.substr(0,c);a=a.substr(c+1),-1===(c=h.indexOf(":"))?i+=n(h,!1):(i+=n(h.substr(0,c),!1),i+=":",i+=n(h.substr(c+1),!1)),i+="@"}-1===(c=(a=a.toLowerCase()).indexOf(":"))?i+=n(a,!1):(i+=n(a.substr(0,c),!1),i+=a.substr(c))}if(o){if(o.length>=3&&47===o.charCodeAt(0)&&58===o.charCodeAt(2))(u=o.charCodeAt(1))>=65&&u<=90&&(o="/"+String.fromCharCode(u+32)+":"+o.substr(3));else if(o.length>=2&&58===o.charCodeAt(1)){var u;(u=o.charCodeAt(0))>=65&&u<=90&&(o=String.fromCharCode(u+32)+":"+o.substr(2))}i+=n(o,!0)}return s&&(i+="?",i+=n(s,!1)),l&&(i+="#",i+=t?l:b(l,!1)),i}}).call(this,n("TDnd"))}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-306e.592019ce.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-306e.592019ce.js index b26206785..5e44d823a 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-306e.592019ce.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-306e.592019ce.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-306e"],{"3Xui":function(e,t,i){"use strict";i.r(t);var s=[function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"login_title"},[t("img",{attrs:{src:i("OsZ4"),alt:"logo"}})])}],o=i("EPZ6"),r=i.n(o),n=i("cLjf"),a=i.n(n),c=i("hDQ3"),h=i.n(c),l=i("omC7"),p=i.n(l),d=i("6Cps"),u=i.n(d);function f(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"XwKsGlMcdPMEhR1B",i=u.a.enc.Utf8.parse(t),s=u.a.enc.Utf8.parse(e);return u.a.AES.encrypt(s,i,{mode:u.a.mode.ECB,padding:u.a.pad.Pkcs7}).toString()}function m(e){var t=e.$el.parentNode.offsetWidth||window.offsetWidth,i=e.$el.parentNode.offsetHeight||window.offsetHeight;return{imgWidth:-1!=e.imgSize.width.indexOf("%")?parseInt(this.imgSize.width)/100*t+"px":this.imgSize.width,imgHeight:-1!=e.imgSize.height.indexOf("%")?parseInt(this.imgSize.height)/100*i+"px":this.imgSize.height,barWidth:-1!=e.barSize.width.indexOf("%")?parseInt(this.barSize.width)/100*t+"px":this.barSize.width,barHeight:-1!=e.barSize.height.indexOf("%")?parseInt(this.barSize.height)/100*i+"px":this.barSize.height}}var g=i("Asgo"),v=i.n(g),y=i("f0Pt"),b=i.n(y),w=i("VCIm");b.a.defaults.baseURL="./";var k=b.a.create({withCredentials:!1,timeout:6e4,headers:{"Content-Type":"application/json"}});k.interceptors.request.use(function(e){return e},function(e){v.a.reject(e)}),k.interceptors.response.use(function(e){var t=e.data;return 200==t.code?t:"50014"!=t.code?"3100"==t.code||"3101"==t.code?t:(Object(w.Message)({message:t.repMsg||t.message,type:"error",duration:3e3}),t):void Object(w.MessageBox)({message:"当前登录已失效或异地登录,请重新登录",type:"error",duration:3e3}).then(function(){sessionStorage.clear(),localStorage.clear(),window.location.href="/"}).catch(function(e){})},function(e){var t=e.response.code,i=e.response.data,s="";s=200!=t?"服务器内部错误,请联系管理员":"失败原因:"+i.code+"--"+i.repMsg,Object(w.Message)({message:s,type:"error",duration:5e3})});var x=k;function C(e){return x({url:"auth-service/user/captcha/get",method:"post",data:e})}function S(e){return x({url:"auth-service/user/captcha/check",method:"post",data:e})}var _={name:"VerifySlide",props:{captchaType:{type:String},type:{type:String,default:"1"},mode:{type:String,default:"fixed"},vSpace:{type:Number,default:5},explain:{type:String,default:"向右滑动完成验证"},imgSize:{type:Object,default:function(){return{width:"310px",height:"155px"}}},blockSize:{type:Object,default:function(){return{width:"50px",height:"50px"}}},barSize:{type:Object,default:function(){return{width:"310px",height:"40px"}}}},data:function(){return{secretKey:"",passFlag:"",backImgBase:"",blockBackImgBase:"",backToken:"",startMoveTime:"",endMovetime:"",tipsBackColor:"",tipWords:"",text:"",finishText:"",setSize:{imgHeight:0,imgWidth:0,barHeight:0,barWidth:0},top:0,left:0,moveBlockLeft:void 0,leftBarWidth:void 0,moveBlockBackgroundColor:void 0,leftBarBorderColor:"#ddd",iconColor:void 0,iconClass:"icon-right",status:!1,isEnd:!1,showRefresh:!0,transitionLeft:"",transitionWidth:""}},computed:{barArea:function(){return this.$el.querySelector(".verify-bar-area")},resetSize:function(){return m}},methods:{init:function(){var e=this;this.text=this.explain,this.getPictrue(),this.$nextTick(function(){var t=e.resetSize(e);for(var i in t)e.$set(e.setSize,i,t[i]);e.$parent.$emit("ready",e)});var t=this;window.removeEventListener("touchmove",function(e){t.move(e)}),window.removeEventListener("mousemove",function(e){t.move(e)}),window.removeEventListener("touchend",function(){t.end()}),window.removeEventListener("mouseup",function(){t.end()}),window.addEventListener("touchmove",function(e){t.move(e)}),window.addEventListener("mousemove",function(e){t.move(e)}),window.addEventListener("touchend",function(){t.end()}),window.addEventListener("mouseup",function(){t.end()})},start:function(e){if((e=e||window.event).touches)t=e.touches[0].pageX;else var t=e.clientX;this.startLeft=Math.floor(t-this.barArea.getBoundingClientRect().left),this.startMoveTime=+new Date,0==this.isEnd&&(this.text="",this.moveBlockBackgroundColor="#337ab7",this.leftBarBorderColor="#337AB7",this.iconColor="#fff",e.stopPropagation(),this.status=!0)},move:function(e){if(e=e||window.event,this.status&&0==this.isEnd){if(e.touches)t=e.touches[0].pageX;else var t=e.clientX;var i=t-this.barArea.getBoundingClientRect().left;i>=this.barArea.offsetWidth-parseInt(parseInt(this.blockSize.width)/2)-2&&(i=this.barArea.offsetWidth-parseInt(parseInt(this.blockSize.width)/2)-2),i<=0&&(i=parseInt(parseInt(this.blockSize.width)/2)),this.moveBlockLeft=i-this.startLeft+"px",this.leftBarWidth=i-this.startLeft+"px"}},end:function(){var e=this;this.endMovetime=+new Date;var t=this;if(this.status&&0==this.isEnd){var i=parseInt((this.moveBlockLeft||"").replace("px",""));i=310*i/parseInt(this.setSize.imgWidth),S({captchaType:this.captchaType,pointJson:this.secretKey?f(p()({x:i,y:5}),this.secretKey):p()({x:i,y:5}),token:this.backToken}).then(function(s){if("0000"==s.repCode){e.moveBlockBackgroundColor="#5cb85c",e.leftBarBorderColor="#5cb85c",e.iconColor="#fff",e.iconClass="icon-check",e.showRefresh=!1,e.isEnd=!0,"pop"==e.mode&&setTimeout(function(){e.$parent.clickShow=!1,e.refresh()},1500),e.passFlag=!0,e.tipWords=((e.endMovetime-e.startMoveTime)/1e3).toFixed(2)+"s验证成功";var o=e.secretKey?f(e.backToken+"---"+p()({x:i,y:5}),e.secretKey):e.backToken+"---"+p()({x:i,y:5});e.$parent.$emit("success",{captchaVerification:o}),setTimeout(function(){e.tipWords="",e.$parent.closeBox()},1e3)}else e.moveBlockBackgroundColor="#d9534f",e.leftBarBorderColor="#d9534f",e.iconColor="#fff",e.iconClass="icon-close",e.passFlag=!1,setTimeout(function(){t.refresh()},1e3),e.$parent.$emit("error",e),e.tipWords="验证失败",setTimeout(function(){e.tipWords=""},1e3)}),this.status=!1}},refresh:function(){var e=this;this.showRefresh=!0,this.finishText="",this.transitionLeft="left .3s",this.moveBlockLeft=0,this.leftBarWidth=void 0,this.transitionWidth="width .3s",this.leftBarBorderColor="#ddd",this.moveBlockBackgroundColor="#fff",this.iconColor="#000",this.iconClass="icon-right",this.isEnd=!1,this.getPictrue(),setTimeout(function(){e.transitionWidth="",e.transitionLeft="",e.text=e.explain},300)},getPictrue:function(){var e=this;C({captchaType:this.captchaType}).then(function(t){"0000"==t.repCode?(e.backImgBase=t.repData.originalImageBase64,e.blockBackImgBase=t.repData.jigsawImageBase64,e.backToken=t.repData.token,e.secretKey=t.repData.secretKey):e.tipWords=t.repMsg})}},watch:{type:{immediate:!0,handler:function(){this.init()}}},mounted:function(){this.$el.onselectstart=function(){return!1}}},T=i("ZrdR"),z=Object(T.a)(_,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticStyle:{position:"relative"}},["2"===e.type?i("div",{staticClass:"verify-img-out",style:{height:parseInt(e.setSize.imgHeight)+e.vSpace+"px"}},[i("div",{staticClass:"verify-img-panel",style:{width:e.setSize.imgWidth,height:e.setSize.imgHeight}},[i("img",{staticStyle:{width:"100%",height:"100%",display:"block"},attrs:{src:"data:image/png;base64,"+e.backImgBase,alt:""}}),e._v(" "),i("div",{directives:[{name:"show",rawName:"v-show",value:e.showRefresh,expression:"showRefresh"}],staticClass:"verify-refresh",on:{click:e.refresh}},[i("i",{staticClass:"iconfont icon-refresh"})]),e._v(" "),i("transition",{attrs:{name:"tips"}},[e.tipWords?i("span",{staticClass:"verify-tips",class:e.passFlag?"suc-bg":"err-bg"},[e._v(e._s(e.tipWords))]):e._e()])],1)]):e._e(),e._v(" "),i("div",{staticClass:"verify-bar-area",style:{width:e.setSize.imgWidth,height:e.barSize.height,"line-height":e.barSize.height}},[i("span",{staticClass:"verify-msg",domProps:{textContent:e._s(e.text)}}),e._v(" "),i("div",{staticClass:"verify-left-bar",style:{width:void 0!==e.leftBarWidth?e.leftBarWidth:e.barSize.height,height:e.barSize.height,"border-color":e.leftBarBorderColor,transaction:e.transitionWidth}},[i("span",{staticClass:"verify-msg",domProps:{textContent:e._s(e.finishText)}}),e._v(" "),i("div",{staticClass:"verify-move-block",style:{width:e.barSize.height,height:e.barSize.height,"background-color":e.moveBlockBackgroundColor,left:e.moveBlockLeft,transition:e.transitionLeft},on:{touchstart:e.start,mousedown:e.start}},[i("i",{class:["verify-icon iconfont",e.iconClass],style:{color:e.iconColor}}),e._v(" "),"2"===e.type?i("div",{staticClass:"verify-sub-block",style:{width:Math.floor(47*parseInt(e.setSize.imgWidth)/310)+"px",height:e.setSize.imgHeight,top:"-"+(parseInt(e.setSize.imgHeight)+e.vSpace)+"px","background-size":e.setSize.imgWidth+" "+e.setSize.imgHeight}},[i("img",{staticStyle:{width:"100%",height:"100%",display:"block"},attrs:{src:"data:image/png;base64,"+e.blockBackImgBase,alt:""}})]):e._e()])])])])},[],!1,null,null,null);z.options.__file="VerifySlide.vue";var B=z.exports,P=i("6ZY3"),$=i.n(P),A={name:"VerifyPoints",props:{mode:{type:String,default:"fixed"},captchaType:{type:String},vSpace:{type:Number,default:5},imgSize:{type:Object,default:function(){return{width:"310px",height:"155px"}}},barSize:{type:Object,default:function(){return{width:"310px",height:"40px"}}}},data:function(){return{secretKey:"",checkNum:3,fontPos:[],checkPosArr:[],num:1,pointBackImgBase:"",poinTextList:[],backToken:"",setSize:{imgHeight:0,imgWidth:0,barHeight:0,barWidth:0},tempPoints:[],text:"",barAreaColor:void 0,barAreaBorderColor:void 0,showRefresh:!0,bindingClick:!0}},computed:{resetSize:function(){return m}},methods:{init:function(){var e=this;this.fontPos.splice(0,this.fontPos.length),this.checkPosArr.splice(0,this.checkPosArr.length),this.num=1,this.getPictrue(),this.$nextTick(function(){e.setSize=e.resetSize(e),e.$parent.$emit("ready",e)})},canvasClick:function(e){var t=this;this.checkPosArr.push(this.getMousePos(this.$refs.canvas,e)),this.num==this.checkNum&&(this.num=this.createPoint(this.getMousePos(this.$refs.canvas,e)),this.checkPosArr=this.pointTransfrom(this.checkPosArr,this.setSize),setTimeout(function(){var e=t.secretKey?f(t.backToken+"---"+p()(t.checkPosArr),t.secretKey):t.backToken+"---"+p()(t.checkPosArr);S({captchaType:t.captchaType,pointJson:t.secretKey?f(p()(t.checkPosArr),t.secretKey):p()(t.checkPosArr),token:t.backToken}).then(function(i){"0000"==i.repCode?(t.barAreaColor="#4cae4c",t.barAreaBorderColor="#5cb85c",t.text="验证成功",t.bindingClick=!1,"pop"==t.mode&&setTimeout(function(){t.$parent.clickShow=!1,t.refresh()},1500),t.$parent.$emit("success",{captchaVerification:e})):(t.$parent.$emit("error",t),t.barAreaColor="#d9534f",t.barAreaBorderColor="#d9534f",t.text="验证失败",setTimeout(function(){t.refresh()},700))})},400)),this.num<this.checkNum&&(this.num=this.createPoint(this.getMousePos(this.$refs.canvas,e)))},getMousePos:function(e,t){return{x:t.offsetX,y:t.offsetY}},createPoint:function(e){return this.tempPoints.push($()({},e)),++this.num},refresh:function(){this.tempPoints.splice(0,this.tempPoints.length),this.barAreaColor="#000",this.barAreaBorderColor="#ddd",this.bindingClick=!0,this.fontPos.splice(0,this.fontPos.length),this.checkPosArr.splice(0,this.checkPosArr.length),this.num=1,this.getPictrue(),this.text="验证失败",this.showRefresh=!0},getPictrue:function(){var e=this;C({captchaType:this.captchaType}).then(function(t){"0000"==t.repCode?(e.pointBackImgBase=t.repData.originalImageBase64,e.backToken=t.repData.token,e.secretKey=t.repData.secretKey,e.poinTextList=t.repData.wordList,e.text="请依次点击【"+e.poinTextList.join(",")+"】"):e.text=t.repMsg})},pointTransfrom:function(e,t){return e.map(function(e){return{x:Math.round(310*e.x/parseInt(t.imgWidth)),y:Math.round(155*e.y/parseInt(t.imgHeight))}})}},watch:{type:{immediate:!0,handler:function(){this.init()}}},mounted:function(){this.$el.onselectstart=function(){return!1}}},W=Object(T.a)(A,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticStyle:{position:"relative"}},[i("div",{staticClass:"verify-img-out"},[i("div",{staticClass:"verify-img-panel",style:{width:e.setSize.imgWidth,height:e.setSize.imgHeight,"background-size":e.setSize.imgWidth+" "+e.setSize.imgHeight,"margin-bottom":e.vSpace+"px"}},[i("div",{directives:[{name:"show",rawName:"v-show",value:e.showRefresh,expression:"showRefresh"}],staticClass:"verify-refresh",staticStyle:{"z-index":"3"},on:{click:e.refresh}},[i("i",{staticClass:"iconfont icon-refresh"})]),e._v(" "),i("img",{ref:"canvas",staticStyle:{width:"100%",height:"100%",display:"block"},attrs:{src:"data:image/png;base64,"+e.pointBackImgBase,alt:""},on:{click:function(t){e.bindingClick&&e.canvasClick(t)}}}),e._v(" "),e._l(e.tempPoints,function(t,s){return i("div",{key:s,staticClass:"point-area",style:{"background-color":"#1abd6c",color:"#fff","z-index":9999,width:"20px",height:"20px","text-align":"center","line-height":"20px","border-radius":"50%",position:"absolute",top:parseInt(t.y-10)+"px",left:parseInt(t.x-10)+"px"}},[e._v("\n "+e._s(s+1)+"\n ")])})],2)]),e._v(" "),i("div",{staticClass:"verify-bar-area",style:{width:e.setSize.imgWidth,color:this.barAreaColor,"border-color":this.barAreaBorderColor,"line-height":this.barSize.height}},[i("span",{staticClass:"verify-msg"},[e._v(e._s(e.text))])])])},[],!1,null,null,null);W.options.__file="VerifyPoints.vue";var L=W.exports,O={name:"Vue2Verify",props:{locale:{require:!1,type:String,default:function(){if(navigator.language)var e=navigator.language;else e=navigator.browserLanguage;return e}},captchaType:{type:String,required:!0},figure:{type:Number},arith:{type:Number},mode:{type:String,default:"pop"},vSpace:{type:Number},explain:{type:String},imgSize:{type:Object,default:function(){return{width:"310px",height:"155px"}}},blockSize:{type:Object},barSize:{type:Object}},data:function(){return{clickShow:!1,verifyType:void 0,componentType:void 0}},methods:{i18n:function(e){if(this.$t)return this.$t(e);var t=this.$options.i18n.messages[this.locale]||this.$options.i18n.messages["en-US"];return t[e]},refresh:function(){this.instance.refresh&&this.instance.refresh()},closeBox:function(){this.clickShow=!1,this.refresh()},show:function(){"pop"==this.mode&&(this.clickShow=!0)}},computed:{instance:function(){return this.$refs.instance||{}},showBox:function(){return"pop"!=this.mode||this.clickShow}},watch:{captchaType:{immediate:!0,handler:function(e){switch(e.toString()){case"blockPuzzle":this.verifyType="2",this.componentType="VerifySlide";break;case"clickWord":this.verifyType="",this.componentType="VerifyPoints"}}}},components:{VerifySlide:B,VerifyPoints:L}},I=(i("q8np"),Object(T.a)(O,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{directives:[{name:"show",rawName:"v-show",value:e.showBox,expression:"showBox"}],class:"pop"==e.mode?"mask":""},[i("div",{class:"pop"==e.mode?"verifybox":"",style:{"max-width":parseInt(e.imgSize.width)+30+"px"}},["pop"==e.mode?i("div",{staticClass:"verifybox-top"},[e._v("\n 请完成安全验证\n "),i("span",{staticClass:"verifybox-close",on:{click:e.closeBox}},[i("i",{staticClass:"iconfont icon-close"})])]):e._e(),e._v(" "),i("div",{staticClass:"verifybox-bottom",style:{padding:"pop"==e.mode?"15px":"0"}},[e.componentType?i(e.componentType,{ref:"instance",tag:"components",attrs:{captchaType:e.captchaType,type:e.verifyType,figure:e.figure,arith:e.arith,mode:e.mode,vSpace:e.vSpace,explain:e.explain,imgSize:e.imgSize,blockSize:e.blockSize,barSize:e.barSize}}):e._e()],1)])])},[],!1,null,null,null));I.options.__file="Verify.vue";var j=I.exports,F=i("jJIE"),N=i.n(F),E=i("7Qib"),M=i("dVUk"),V=i("sxct"),R=i("X4fA"),H={name:"Login",components:{Verify:j},data:function(){return{activeTop:"-50%",rememberPsw:!1,loginForm:{loginName:"",password:"",verifyCode:""},loginRules:{loginName:[{required:!0,message:"用户名必填",trigger:"blur"}],password:[{required:!0,message:"用户密码必填",trigger:"blur"}]},passwordType:"password",capsTooltip:!1,loading:!1,redirect:void 0,otherQuery:{},needCaptcha:!1}},watch:{$route:{handler:function(e){var t=e.query;t&&(this.redirect=t.redirect,this.otherQuery=this.getOtherQuery(t))},immediate:!0}},mounted:function(){this.handleLoginFocus()},methods:{handleLoginFocus:function(){""===this.loginForm.loginName?this.$refs.loginName.focus():""===this.loginForm.password&&this.$refs.password.focus()},getPsw:function(){var e=N.a.get("u_"+this.loginForm.loginName);this.loginForm.password=e&&Object(E.a)(e)},setTop:function(e){this.activeTop=e},checkCapslock:function(e){var t=e.key;this.capsTooltip=t&&1===t.length&&t>="A"&&t<="Z"},showPwd:function(){var e=this;"password"===this.passwordType?this.passwordType="":this.passwordType="password",this.$nextTick(function(){e.$refs.password.focus()})},useVerify:function(){var e=this;this.$refs.loginForm.validate(function(t){if(!t)return!1;e.$refs.verify.show()})},verifylogin:function(e){this.loginForm.verifyCode=e.captchaVerification,this.loginForm.verifyCode&&this.loginApi()},handleLogin:function(){var e=this;this.$refs.loginForm.validate(function(t){if(!t)return!1;e.loading=!0,e.needCaptcha?e.useVerify():e.loginApi()})},loginApi:function(){var e=this;return h()(a.a.mark(function t(){var i,s,o,r;return a.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return i={loginName:e.loginForm.loginName,password:Object(V.a)(e.loginForm.password),verifyCode:""},t.next=3,Object(M.a)(i);case 3:if(s=t.sent,o=s.code,r=s.data,e.loading=!1,"200"==o){t.next=9;break}return t.abrupt("return");case 9:Object(R.j)(r.token),Object(R.h)(r),e.rememberPsw&&N.a.set("u_"+e.loginForm.loginName,Object(E.b)(e.loginForm.password),{expires:15}),r&&r.captcha?e.needCaptcha=!0:(e.needCaptcha=!1,e.$router.push({path:e.redirect||"/index",query:e.otherQuery}));case 13:case"end":return t.stop()}},t,e)}))()},getOtherQuery:function(e){return r()(e).reduce(function(t,i){return"redirect"!==i&&(t[i]=e[i]),t},{})}}},K=(i("Ruor"),Object(T.a)(H,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"login_container"},[e._m(0),e._v(" "),s("div",{staticClass:"login_contant"},[s("img",{staticClass:"login_img",attrs:{src:i("JKld"),alt:"image"}}),e._v(" "),s("el-form",{ref:"loginForm",staticClass:"login_form",attrs:{model:e.loginForm,rules:e.loginRules,autocomplete:"on","label-position":"left"},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.handleLogin(t)}}},[s("div",{staticClass:"title_container"},[s("h3",{staticClass:"title"},[e._v("\n HELLO,\n "),s("br"),e._v(" "),s("p",{staticClass:"title_name"},[e._v("在线大屏")])])]),e._v(" "),s("div",{staticClass:"form_fields"},[s("i",{style:{top:e.activeTop+"%"}}),e._v(" "),s("b"),e._v(" "),s("div",[s("p",[e._v("用户名")]),e._v(" "),s("el-form-item",{attrs:{prop:"loginName"}},[s("el-input",{ref:"loginName",attrs:{placeholder:"用户名",name:"loginName",type:"text",tabindex:"1",autocomplete:"on"},on:{focus:function(t){return e.setTop("0")},change:e.getPsw},model:{value:e.loginForm.loginName,callback:function(t){e.$set(e.loginForm,"loginName",t)},expression:"loginForm.loginName"}})],1)],1),e._v(" "),s("div",[s("p",[e._v("密码")]),e._v(" "),s("input",{staticClass:"take",attrs:{name:"password",type:"password",autocomplete:"off"}}),e._v(" "),s("el-tooltip",{attrs:{content:"Caps lock is On",placement:"right",manual:""},model:{value:e.capsTooltip,callback:function(t){e.capsTooltip=t},expression:"capsTooltip"}},[s("el-form-item",{attrs:{prop:"password"}},[s("el-input",{key:e.passwordType,ref:"password",attrs:{type:e.passwordType,placeholder:"用户密码",name:"password",tabindex:"2",autocomplete:"on"},on:{blur:function(t){e.capsTooltip=!1},focus:function(t){return e.setTop("50")}},nativeOn:{keyup:function(t){return e.checkCapslock(t)}},model:{value:e.loginForm.password,callback:function(t){e.$set(e.loginForm,"password",t)},expression:"loginForm.password"}}),e._v(" "),s("span",{staticClass:"show_pwd",on:{click:e.showPwd}},[s("i",{staticClass:"el-icon-view"})])],1)],1)],1)]),e._v(" "),s("div",{staticClass:"control"},[s("div",{staticClass:"remember"},[s("input",{directives:[{name:"model",rawName:"v-model",value:e.rememberPsw,expression:"rememberPsw"}],attrs:{type:"checkbox"},domProps:{checked:Array.isArray(e.rememberPsw)?e._i(e.rememberPsw,null)>-1:e.rememberPsw},on:{change:function(t){var i=e.rememberPsw,s=t.target,o=!!s.checked;if(Array.isArray(i)){var r=e._i(i,null);s.checked?r<0&&(e.rememberPsw=i.concat([null])):r>-1&&(e.rememberPsw=i.slice(0,r).concat(i.slice(r+1)))}else e.rememberPsw=o}}}),e._v(" "),s("p",[e._v("记住密码")])])]),e._v(" "),s("el-button",{staticClass:"login_btn",attrs:{loading:e.loading,type:"primary"},nativeOn:{click:function(t){return t.preventDefault(),e.handleLogin(t)}}},[e._v("登录")])],1)],1),e._v(" "),e.needCaptcha?s("Verify",{ref:"verify",attrs:{"captcha-type":"blockPuzzle","img-size":{width:"400px",height:"200px"}},on:{success:e.verifylogin}}):e._e()],1)},s,!1,null,null,null));K.options.__file="login.vue";t.default=K.exports},JKld:function(e,t,i){e.exports=i.p+"static/img/login.19a7caa.png"},OsZ4:function(e,t,i){e.exports=i.p+"static/img/home-logo.c139e3d.png"},Ruor:function(e,t,i){"use strict";var s=i("udjw");i.n(s).a},"ksq+":function(e,t,i){},q8np:function(e,t,i){"use strict";var s=i("ksq+");i.n(s).a},udjw:function(e,t,i){}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-306e"],{"3Xui":function(e,t,i){"use strict";i.r(t);var s=[function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"login_title"},[t("img",{attrs:{src:i("OsZ4"),alt:"logo"}})])}],o=i("EPZ6"),r=i.n(o),n=i("cLjf"),a=i.n(n),c=i("hDQ3"),h=i.n(c),l=i("omC7"),p=i.n(l),d=i("6Cps"),u=i.n(d);function f(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"XwKsGlMcdPMEhR1B",i=u.a.enc.Utf8.parse(t),s=u.a.enc.Utf8.parse(e);return u.a.AES.encrypt(s,i,{mode:u.a.mode.ECB,padding:u.a.pad.Pkcs7}).toString()}function m(e){var t=e.$el.parentNode.offsetWidth||window.offsetWidth,i=e.$el.parentNode.offsetHeight||window.offsetHeight;return{imgWidth:-1!=e.imgSize.width.indexOf("%")?parseInt(this.imgSize.width)/100*t+"px":this.imgSize.width,imgHeight:-1!=e.imgSize.height.indexOf("%")?parseInt(this.imgSize.height)/100*i+"px":this.imgSize.height,barWidth:-1!=e.barSize.width.indexOf("%")?parseInt(this.barSize.width)/100*t+"px":this.barSize.width,barHeight:-1!=e.barSize.height.indexOf("%")?parseInt(this.barSize.height)/100*i+"px":this.barSize.height}}var g=i("Asgo"),v=i.n(g),y=i("f0Pt"),b=i.n(y),w=i("VCIm");b.a.defaults.baseURL="./";var k=b.a.create({withCredentials:!1,timeout:6e4,headers:{"Content-Type":"application/json"}});k.interceptors.request.use(function(e){return e},function(e){v.a.reject(e)}),k.interceptors.response.use(function(e){var t=e.data;return 200==t.code?t:"50014"!=t.code?"3100"==t.code||"3101"==t.code?t:(Object(w.Message)({message:t.repMsg||t.message,type:"error",duration:3e3}),t):void Object(w.MessageBox)({message:"当前登录已失效或异地登录,请重新登录",type:"error",duration:3e3}).then(function(){sessionStorage.clear(),localStorage.clear(),window.location.href="/"}).catch(function(e){})},function(e){var t=e.response.code,i=e.response.data,s="";s=200!=t?"服务器内部错误,请联系管理员":"失败原因:"+i.code+"--"+i.repMsg,Object(w.Message)({message:s,type:"error",duration:5e3})});var x=k;function C(e){return x({url:"auth-service/user/captcha/get",method:"post",data:e})}function S(e){return x({url:"auth-service/user/captcha/check",method:"post",data:e})}var _={name:"VerifySlide",props:{captchaType:{type:String},type:{type:String,default:"1"},mode:{type:String,default:"fixed"},vSpace:{type:Number,default:5},explain:{type:String,default:"向右滑动完成验证"},imgSize:{type:Object,default:function(){return{width:"310px",height:"155px"}}},blockSize:{type:Object,default:function(){return{width:"50px",height:"50px"}}},barSize:{type:Object,default:function(){return{width:"310px",height:"40px"}}}},data:function(){return{secretKey:"",passFlag:"",backImgBase:"",blockBackImgBase:"",backToken:"",startMoveTime:"",endMovetime:"",tipsBackColor:"",tipWords:"",text:"",finishText:"",setSize:{imgHeight:0,imgWidth:0,barHeight:0,barWidth:0},top:0,left:0,moveBlockLeft:void 0,leftBarWidth:void 0,moveBlockBackgroundColor:void 0,leftBarBorderColor:"#ddd",iconColor:void 0,iconClass:"icon-right",status:!1,isEnd:!1,showRefresh:!0,transitionLeft:"",transitionWidth:""}},computed:{barArea:function(){return this.$el.querySelector(".verify-bar-area")},resetSize:function(){return m}},methods:{init:function(){var e=this;this.text=this.explain,this.getPictrue(),this.$nextTick(function(){var t=e.resetSize(e);for(var i in t)e.$set(e.setSize,i,t[i]);e.$parent.$emit("ready",e)});var t=this;window.removeEventListener("touchmove",function(e){t.move(e)}),window.removeEventListener("mousemove",function(e){t.move(e)}),window.removeEventListener("touchend",function(){t.end()}),window.removeEventListener("mouseup",function(){t.end()}),window.addEventListener("touchmove",function(e){t.move(e)}),window.addEventListener("mousemove",function(e){t.move(e)}),window.addEventListener("touchend",function(){t.end()}),window.addEventListener("mouseup",function(){t.end()})},start:function(e){if((e=e||window.event).touches)t=e.touches[0].pageX;else var t=e.clientX;this.startLeft=Math.floor(t-this.barArea.getBoundingClientRect().left),this.startMoveTime=+new Date,0==this.isEnd&&(this.text="",this.moveBlockBackgroundColor="#337ab7",this.leftBarBorderColor="#337AB7",this.iconColor="#fff",e.stopPropagation(),this.status=!0)},move:function(e){if(e=e||window.event,this.status&&0==this.isEnd){if(e.touches)t=e.touches[0].pageX;else var t=e.clientX;var i=t-this.barArea.getBoundingClientRect().left;i>=this.barArea.offsetWidth-parseInt(parseInt(this.blockSize.width)/2)-2&&(i=this.barArea.offsetWidth-parseInt(parseInt(this.blockSize.width)/2)-2),i<=0&&(i=parseInt(parseInt(this.blockSize.width)/2)),this.moveBlockLeft=i-this.startLeft+"px",this.leftBarWidth=i-this.startLeft+"px"}},end:function(){var e=this;this.endMovetime=+new Date;var t=this;if(this.status&&0==this.isEnd){var i=parseInt((this.moveBlockLeft||"").replace("px",""));i=310*i/parseInt(this.setSize.imgWidth),S({captchaType:this.captchaType,pointJson:this.secretKey?f(p()({x:i,y:5}),this.secretKey):p()({x:i,y:5}),token:this.backToken}).then(function(s){if("0000"==s.repCode){e.moveBlockBackgroundColor="#5cb85c",e.leftBarBorderColor="#5cb85c",e.iconColor="#fff",e.iconClass="icon-check",e.showRefresh=!1,e.isEnd=!0,"pop"==e.mode&&setTimeout(function(){e.$parent.clickShow=!1,e.refresh()},1500),e.passFlag=!0,e.tipWords=((e.endMovetime-e.startMoveTime)/1e3).toFixed(2)+"s验证成功";var o=e.secretKey?f(e.backToken+"---"+p()({x:i,y:5}),e.secretKey):e.backToken+"---"+p()({x:i,y:5});e.$parent.$emit("success",{captchaVerification:o}),setTimeout(function(){e.tipWords="",e.$parent.closeBox()},1e3)}else e.moveBlockBackgroundColor="#d9534f",e.leftBarBorderColor="#d9534f",e.iconColor="#fff",e.iconClass="icon-close",e.passFlag=!1,setTimeout(function(){t.refresh()},1e3),e.$parent.$emit("error",e),e.tipWords="验证失败",setTimeout(function(){e.tipWords=""},1e3)}),this.status=!1}},refresh:function(){var e=this;this.showRefresh=!0,this.finishText="",this.transitionLeft="left .3s",this.moveBlockLeft=0,this.leftBarWidth=void 0,this.transitionWidth="width .3s",this.leftBarBorderColor="#ddd",this.moveBlockBackgroundColor="#fff",this.iconColor="#000",this.iconClass="icon-right",this.isEnd=!1,this.getPictrue(),setTimeout(function(){e.transitionWidth="",e.transitionLeft="",e.text=e.explain},300)},getPictrue:function(){var e=this;C({captchaType:this.captchaType}).then(function(t){"0000"==t.repCode?(e.backImgBase=t.repData.originalImageBase64,e.blockBackImgBase=t.repData.jigsawImageBase64,e.backToken=t.repData.token,e.secretKey=t.repData.secretKey):e.tipWords=t.repMsg})}},watch:{type:{immediate:!0,handler:function(){this.init()}}},mounted:function(){this.$el.onselectstart=function(){return!1}}},T=i("ZrdR"),z=Object(T.a)(_,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticStyle:{position:"relative"}},["2"===e.type?i("div",{staticClass:"verify-img-out",style:{height:parseInt(e.setSize.imgHeight)+e.vSpace+"px"}},[i("div",{staticClass:"verify-img-panel",style:{width:e.setSize.imgWidth,height:e.setSize.imgHeight}},[i("img",{staticStyle:{width:"100%",height:"100%",display:"block"},attrs:{src:"data:image/png;base64,"+e.backImgBase,alt:""}}),e._v(" "),i("div",{directives:[{name:"show",rawName:"v-show",value:e.showRefresh,expression:"showRefresh"}],staticClass:"verify-refresh",on:{click:e.refresh}},[i("i",{staticClass:"iconfont icon-refresh"})]),e._v(" "),i("transition",{attrs:{name:"tips"}},[e.tipWords?i("span",{staticClass:"verify-tips",class:e.passFlag?"suc-bg":"err-bg"},[e._v(e._s(e.tipWords))]):e._e()])],1)]):e._e(),e._v(" "),i("div",{staticClass:"verify-bar-area",style:{width:e.setSize.imgWidth,height:e.barSize.height,"line-height":e.barSize.height}},[i("span",{staticClass:"verify-msg",domProps:{textContent:e._s(e.text)}}),e._v(" "),i("div",{staticClass:"verify-left-bar",style:{width:void 0!==e.leftBarWidth?e.leftBarWidth:e.barSize.height,height:e.barSize.height,"border-color":e.leftBarBorderColor,transaction:e.transitionWidth}},[i("span",{staticClass:"verify-msg",domProps:{textContent:e._s(e.finishText)}}),e._v(" "),i("div",{staticClass:"verify-move-block",style:{width:e.barSize.height,height:e.barSize.height,"background-color":e.moveBlockBackgroundColor,left:e.moveBlockLeft,transition:e.transitionLeft},on:{touchstart:e.start,mousedown:e.start}},[i("i",{class:["verify-icon iconfont",e.iconClass],style:{color:e.iconColor}}),e._v(" "),"2"===e.type?i("div",{staticClass:"verify-sub-block",style:{width:Math.floor(47*parseInt(e.setSize.imgWidth)/310)+"px",height:e.setSize.imgHeight,top:"-"+(parseInt(e.setSize.imgHeight)+e.vSpace)+"px","background-size":e.setSize.imgWidth+" "+e.setSize.imgHeight}},[i("img",{staticStyle:{width:"100%",height:"100%",display:"block"},attrs:{src:"data:image/png;base64,"+e.blockBackImgBase,alt:""}})]):e._e()])])])])},[],!1,null,null,null);z.options.__file="VerifySlide.vue";var B=z.exports,P=i("6ZY3"),$=i.n(P),A={name:"VerifyPoints",props:{mode:{type:String,default:"fixed"},captchaType:{type:String},vSpace:{type:Number,default:5},imgSize:{type:Object,default:function(){return{width:"310px",height:"155px"}}},barSize:{type:Object,default:function(){return{width:"310px",height:"40px"}}}},data:function(){return{secretKey:"",checkNum:3,fontPos:[],checkPosArr:[],num:1,pointBackImgBase:"",poinTextList:[],backToken:"",setSize:{imgHeight:0,imgWidth:0,barHeight:0,barWidth:0},tempPoints:[],text:"",barAreaColor:void 0,barAreaBorderColor:void 0,showRefresh:!0,bindingClick:!0}},computed:{resetSize:function(){return m}},methods:{init:function(){var e=this;this.fontPos.splice(0,this.fontPos.length),this.checkPosArr.splice(0,this.checkPosArr.length),this.num=1,this.getPictrue(),this.$nextTick(function(){e.setSize=e.resetSize(e),e.$parent.$emit("ready",e)})},canvasClick:function(e){var t=this;this.checkPosArr.push(this.getMousePos(this.$refs.canvas,e)),this.num==this.checkNum&&(this.num=this.createPoint(this.getMousePos(this.$refs.canvas,e)),this.checkPosArr=this.pointTransfrom(this.checkPosArr,this.setSize),setTimeout(function(){var e=t.secretKey?f(t.backToken+"---"+p()(t.checkPosArr),t.secretKey):t.backToken+"---"+p()(t.checkPosArr);S({captchaType:t.captchaType,pointJson:t.secretKey?f(p()(t.checkPosArr),t.secretKey):p()(t.checkPosArr),token:t.backToken}).then(function(i){"0000"==i.repCode?(t.barAreaColor="#4cae4c",t.barAreaBorderColor="#5cb85c",t.text="验证成功",t.bindingClick=!1,"pop"==t.mode&&setTimeout(function(){t.$parent.clickShow=!1,t.refresh()},1500),t.$parent.$emit("success",{captchaVerification:e})):(t.$parent.$emit("error",t),t.barAreaColor="#d9534f",t.barAreaBorderColor="#d9534f",t.text="验证失败",setTimeout(function(){t.refresh()},700))})},400)),this.num<this.checkNum&&(this.num=this.createPoint(this.getMousePos(this.$refs.canvas,e)))},getMousePos:function(e,t){return{x:t.offsetX,y:t.offsetY}},createPoint:function(e){return this.tempPoints.push($()({},e)),++this.num},refresh:function(){this.tempPoints.splice(0,this.tempPoints.length),this.barAreaColor="#000",this.barAreaBorderColor="#ddd",this.bindingClick=!0,this.fontPos.splice(0,this.fontPos.length),this.checkPosArr.splice(0,this.checkPosArr.length),this.num=1,this.getPictrue(),this.text="验证失败",this.showRefresh=!0},getPictrue:function(){var e=this;C({captchaType:this.captchaType}).then(function(t){"0000"==t.repCode?(e.pointBackImgBase=t.repData.originalImageBase64,e.backToken=t.repData.token,e.secretKey=t.repData.secretKey,e.poinTextList=t.repData.wordList,e.text="请依次点击【"+e.poinTextList.join(",")+"】"):e.text=t.repMsg})},pointTransfrom:function(e,t){return e.map(function(e){return{x:Math.round(310*e.x/parseInt(t.imgWidth)),y:Math.round(155*e.y/parseInt(t.imgHeight))}})}},watch:{type:{immediate:!0,handler:function(){this.init()}}},mounted:function(){this.$el.onselectstart=function(){return!1}}},W=Object(T.a)(A,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticStyle:{position:"relative"}},[i("div",{staticClass:"verify-img-out"},[i("div",{staticClass:"verify-img-panel",style:{width:e.setSize.imgWidth,height:e.setSize.imgHeight,"background-size":e.setSize.imgWidth+" "+e.setSize.imgHeight,"margin-bottom":e.vSpace+"px"}},[i("div",{directives:[{name:"show",rawName:"v-show",value:e.showRefresh,expression:"showRefresh"}],staticClass:"verify-refresh",staticStyle:{"z-index":"3"},on:{click:e.refresh}},[i("i",{staticClass:"iconfont icon-refresh"})]),e._v(" "),i("img",{ref:"canvas",staticStyle:{width:"100%",height:"100%",display:"block"},attrs:{src:"data:image/png;base64,"+e.pointBackImgBase,alt:""},on:{click:function(t){e.bindingClick&&e.canvasClick(t)}}}),e._v(" "),e._l(e.tempPoints,function(t,s){return i("div",{key:s,staticClass:"point-area",style:{"background-color":"#1abd6c",color:"#fff","z-index":9999,width:"20px",height:"20px","text-align":"center","line-height":"20px","border-radius":"50%",position:"absolute",top:parseInt(t.y-10)+"px",left:parseInt(t.x-10)+"px"}},[e._v("\n "+e._s(s+1)+"\n ")])})],2)]),e._v(" "),i("div",{staticClass:"verify-bar-area",style:{width:e.setSize.imgWidth,color:this.barAreaColor,"border-color":this.barAreaBorderColor,"line-height":this.barSize.height}},[i("span",{staticClass:"verify-msg"},[e._v(e._s(e.text))])])])},[],!1,null,null,null);W.options.__file="VerifyPoints.vue";var L=W.exports,O={name:"Vue2Verify",props:{locale:{require:!1,type:String,default:function(){if(navigator.language)var e=navigator.language;else e=navigator.browserLanguage;return e}},captchaType:{type:String,required:!0},figure:{type:Number},arith:{type:Number},mode:{type:String,default:"pop"},vSpace:{type:Number},explain:{type:String},imgSize:{type:Object,default:function(){return{width:"310px",height:"155px"}}},blockSize:{type:Object},barSize:{type:Object}},data:function(){return{clickShow:!1,verifyType:void 0,componentType:void 0}},methods:{i18n:function(e){if(this.$t)return this.$t(e);var t=this.$options.i18n.messages[this.locale]||this.$options.i18n.messages["en-US"];return t[e]},refresh:function(){this.instance.refresh&&this.instance.refresh()},closeBox:function(){this.clickShow=!1,this.refresh()},show:function(){"pop"==this.mode&&(this.clickShow=!0)}},computed:{instance:function(){return this.$refs.instance||{}},showBox:function(){return"pop"!=this.mode||this.clickShow}},watch:{captchaType:{immediate:!0,handler:function(e){switch(e.toString()){case"blockPuzzle":this.verifyType="2",this.componentType="VerifySlide";break;case"clickWord":this.verifyType="",this.componentType="VerifyPoints"}}}},components:{VerifySlide:B,VerifyPoints:L}},I=(i("q8np"),Object(T.a)(O,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{directives:[{name:"show",rawName:"v-show",value:e.showBox,expression:"showBox"}],class:"pop"==e.mode?"mask":""},[i("div",{class:"pop"==e.mode?"verifybox":"",style:{"max-width":parseInt(e.imgSize.width)+30+"px"}},["pop"==e.mode?i("div",{staticClass:"verifybox-top"},[e._v("\n 请完成安全验证\n "),i("span",{staticClass:"verifybox-close",on:{click:e.closeBox}},[i("i",{staticClass:"iconfont icon-close"})])]):e._e(),e._v(" "),i("div",{staticClass:"verifybox-bottom",style:{padding:"pop"==e.mode?"15px":"0"}},[e.componentType?i(e.componentType,{ref:"instance",tag:"components",attrs:{captchaType:e.captchaType,type:e.verifyType,figure:e.figure,arith:e.arith,mode:e.mode,vSpace:e.vSpace,explain:e.explain,imgSize:e.imgSize,blockSize:e.blockSize,barSize:e.barSize}}):e._e()],1)])])},[],!1,null,null,null));I.options.__file="Verify.vue";var j=I.exports,F=i("jJIE"),N=i.n(F),E=i("7Qib"),M=i("dVUk"),V=i("sxct"),R=i("X4fA"),H={name:"Login",components:{Verify:j},data:function(){return{activeTop:"-50%",rememberPsw:!1,loginForm:{loginName:"",password:"",verifyCode:""},loginRules:{loginName:[{required:!0,message:"用户名必填",trigger:"blur"}],password:[{required:!0,message:"用户密码必填",trigger:"blur"}]},passwordType:"password",capsTooltip:!1,loading:!1,redirect:void 0,otherQuery:{},needCaptcha:!1}},watch:{$route:{handler:function(e){var t=e.query;t&&(this.redirect=t.redirect,this.otherQuery=this.getOtherQuery(t))},immediate:!0}},mounted:function(){this.handleLoginFocus()},methods:{handleLoginFocus:function(){""===this.loginForm.loginName?this.$refs.loginName.focus():""===this.loginForm.password&&this.$refs.password.focus()},getPsw:function(){var e=N.a.get("u_"+this.loginForm.loginName);this.loginForm.password=e&&Object(E.a)(e)},setTop:function(e){this.activeTop=e},checkCapslock:function(e){var t=e.key;this.capsTooltip=t&&1===t.length&&t>="A"&&t<="Z"},showPwd:function(){var e=this;"password"===this.passwordType?this.passwordType="":this.passwordType="password",this.$nextTick(function(){e.$refs.password.focus()})},useVerify:function(){var e=this;this.$refs.loginForm.validate(function(t){if(!t)return!1;e.$refs.verify.show()})},verifylogin:function(e){this.loginForm.verifyCode=e.captchaVerification,this.loginForm.verifyCode&&this.loginApi()},handleLogin:function(){var e=this;this.$refs.loginForm.validate(function(t){if(!t)return!1;e.loading=!0,e.needCaptcha?e.useVerify():e.loginApi()})},loginApi:function(){var e=this;return h()(a.a.mark(function t(){var i,s,o,r;return a.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return i={loginName:e.loginForm.loginName,password:Object(V.a)(e.loginForm.password),verifyCode:""},t.next=3,Object(M.a)(i);case 3:if(s=t.sent,o=s.code,r=s.data,e.loading=!1,"200"==o){t.next=9;break}return t.abrupt("return");case 9:Object(R.j)(r.token),Object(R.h)(r),e.rememberPsw&&N.a.set("u_"+e.loginForm.loginName,Object(E.b)(e.loginForm.password),{expires:15}),r&&r.captcha?e.needCaptcha=!0:(e.needCaptcha=!1,e.$router.push({path:e.redirect||"/index",query:e.otherQuery}));case 13:case"end":return t.stop()}},t,e)}))()},getOtherQuery:function(e){return r()(e).reduce(function(t,i){return"redirect"!==i&&(t[i]=e[i]),t},{})}}},K=(i("Ruor"),Object(T.a)(H,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"login_container"},[e._m(0),e._v(" "),s("div",{staticClass:"login_contant"},[s("img",{staticClass:"login_img",attrs:{src:i("JKld"),alt:"image"}}),e._v(" "),s("el-form",{ref:"loginForm",staticClass:"login_form",attrs:{model:e.loginForm,rules:e.loginRules,autocomplete:"on","label-position":"left"},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.handleLogin(t)}}},[s("div",{staticClass:"title_container"},[s("h3",{staticClass:"title"},[e._v("\n HELLO,\n "),s("br"),e._v(" "),s("p",{staticClass:"title_name"},[e._v("在线大屏")])])]),e._v(" "),s("div",{staticClass:"form_fields"},[s("i",{style:{top:e.activeTop+"%"}}),e._v(" "),s("b"),e._v(" "),s("div",[s("p",[e._v("用户名")]),e._v(" "),s("el-form-item",{attrs:{prop:"loginName"}},[s("el-input",{ref:"loginName",attrs:{placeholder:"用户名",name:"loginName",type:"text",tabindex:"1",autocomplete:"on"},on:{focus:function(t){return e.setTop("0")},change:e.getPsw},model:{value:e.loginForm.loginName,callback:function(t){e.$set(e.loginForm,"loginName",t)},expression:"loginForm.loginName"}})],1)],1),e._v(" "),s("div",[s("p",[e._v("密码")]),e._v(" "),s("input",{staticClass:"take",attrs:{name:"password",type:"password",autocomplete:"off"}}),e._v(" "),s("el-tooltip",{attrs:{content:"Caps lock is On",placement:"right",manual:""},model:{value:e.capsTooltip,callback:function(t){e.capsTooltip=t},expression:"capsTooltip"}},[s("el-form-item",{attrs:{prop:"password"}},[s("el-input",{key:e.passwordType,ref:"password",attrs:{type:e.passwordType,placeholder:"用户密码",name:"password",tabindex:"2",autocomplete:"on"},on:{blur:function(t){e.capsTooltip=!1},focus:function(t){return e.setTop("50")}},nativeOn:{keyup:function(t){return e.checkCapslock(t)}},model:{value:e.loginForm.password,callback:function(t){e.$set(e.loginForm,"password",t)},expression:"loginForm.password"}}),e._v(" "),s("span",{staticClass:"show_pwd",on:{click:e.showPwd}},[s("i",{staticClass:"el-icon-view"})])],1)],1)],1)]),e._v(" "),s("div",{staticClass:"control"},[s("div",{staticClass:"remember"},[s("input",{directives:[{name:"model",rawName:"v-model",value:e.rememberPsw,expression:"rememberPsw"}],attrs:{type:"checkbox"},domProps:{checked:Array.isArray(e.rememberPsw)?e._i(e.rememberPsw,null)>-1:e.rememberPsw},on:{change:function(t){var i=e.rememberPsw,s=t.target,o=!!s.checked;if(Array.isArray(i)){var r=e._i(i,null);s.checked?r<0&&(e.rememberPsw=i.concat([null])):r>-1&&(e.rememberPsw=i.slice(0,r).concat(i.slice(r+1)))}else e.rememberPsw=o}}}),e._v(" "),s("p",[e._v("记住密码")])])]),e._v(" "),s("el-button",{staticClass:"login_btn",attrs:{loading:e.loading,type:"primary"},nativeOn:{click:function(t){return t.preventDefault(),e.handleLogin(t)}}},[e._v("登录")])],1)],1),e._v(" "),e.needCaptcha?s("Verify",{ref:"verify",attrs:{"captcha-type":"blockPuzzle","img-size":{width:"400px",height:"200px"}},on:{success:e.verifylogin}}):e._e()],1)},s,!1,null,null,null));K.options.__file="login.vue";t.default=K.exports},JKld:function(e,t,i){e.exports=i.p+"static/img/login.19a7caa.png"},OsZ4:function(e,t,i){e.exports=i.p+"static/img/home-logo.c139e3d.png"},Ruor:function(e,t,i){"use strict";var s=i("udjw");i.n(s).a},"ksq+":function(e,t,i){},q8np:function(e,t,i){"use strict";var s=i("ksq+");i.n(s).a},udjw:function(e,t,i){}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-5309.021964d0.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-5309.021964d0.js index 642f18a5c..fbd448040 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-5309.021964d0.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-5309.021964d0.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-5309"],{"+N4U":function(e,t,a){"use strict";a.r(t);var r=a("/umX"),n=a.n(r),o=a("6ZY3"),c=a.n(o),s=a("cLjf"),i=a.n(s),u=a("omC7"),l=a.n(u),d=a("hDQ3"),p=a.n(d),f=a("Fzjc"),m={name:"Login",components:{},data:function(){return{options:{},sheet:{},reportId:null,reportCode:null,reportName:null,dataSet:null,tableData2:[],excelData:{},params:{reportCode:"",setParam:""}}},mounted:function(){this.preview()},created:function(){this.reportCode=this.$route.query.reportCode},methods:{searchPreview:function(){var e=this;return p()(i.a.mark(function t(){var a;return i.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:a=e.toObject(e.tableData2),e.params.setParam=l()(a),e.preview();case 3:case"end":return t.stop()}},t,e)}))()},preview:function(){var e=this;return p()(i.a.mark(function t(){var a,r,n,o,c,s,u,l;return i.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.excelData={},e.params.reportCode=e.reportCode,t.next=4,Object(f.d)(e.params);case 4:if(a=t.sent,r=a.code,n=a.data,200==r){t.next=9;break}return t.abrupt("return");case 9:for(s in e.reportName=JSON.parse(n.jsonStr).name,e.params.setParam=JSON.parse(n.setParam),o=[],c=e.params.setParam){for(l in u=[],c[s])u.push({name:l,value:c[s][l]});o.push({name:s,children:u})}e.tableData2=o,e.excelData=n.jsonStr,e.sheetData=null==n?[{}]:JSON.parse(n.jsonStr),e.createSheet();case 18:case"end":return t.stop()}},t,e)}))()},download:function(e){var t=this;return p()(i.a.mark(function a(){var r,n,o,c;return i.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if("gaea_template_pdf"!=e){a.next=3;break}return t.$message("暂不支持pdf"),a.abrupt("return");case 3:return(r={}).reportCode=t.reportCode,r.setParam=l()(t.params.setParam),""!=e&&(r.exportType=e),a.next=9,Object(f.c)(r);case 9:if(n=a.sent,o=n.code,c=n.message,200==o){a.next=14;break}return a.abrupt("return");case 14:t.$message.success(c);case 15:case"end":return a.stop()}},a,t)}))()},toObject:function(e){var t={},a={};e.forEach(function(e){e.name&&(t[e.name]=e.children)});var r=function(e){var r={};t[e].map(function(e){c()(r,n()({},e.name,e.value))}),a[e]=r};for(var o in t)r(o);return a},createSheet:function(){var e={container:"luckysheet",title:"",lang:"zh",plugins:["chart"],data:[{name:"report",color:"",index:0,status:1,order:0,hide:0,row:36,column:18,defaultRowHeight:19,defaultColWidth:73,celldata:[],config:{merge:{},rowlen:{},columnlen:{},rowhidden:{},colhidden:{},borderInfo:{},authority:{}},scrollLeft:0,scrollTop:315,luckysheet_select_save:[],calcChain:[],isPivotTable:!1,pivotTable:{},filter_select:{},filter:null,luckysheet_alternateformat_save:[],luckysheet_alternateformat_save_modelCustom:[],luckysheet_conditionformat_save:{},frozen:{},chart:[],zoomRatio:1,image:[],showGridLines:1,dataVerification:{}}]};e.data=this.sheetData,$(function(){luckysheet.create(e)})}}},h=(a("qkZ5"),a("Wx5O"),a("ZrdR")),v=Object(h.a)(m,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"layout"},[a("div",{staticClass:"layout-right"},[a("div",{staticClass:"block"},[a("div",{staticClass:"download"},[null!=e.reportCode?a("a",{attrs:{download:"xxx.xlsx"}},[a("el-button",{attrs:{type:"text"},on:{click:function(t){return e.download("gaea_template_excel")}}},[a("i",{staticClass:"iconfont iconexcel"}),e._v("导出excel\n ")])],1):e._e(),e._v(" "),null!=e.reportCode?a("a",{attrs:{download:"xxx.pdf"}},[a("el-button",{attrs:{type:"text"},on:{click:function(t){return e.download("gaea_template_pdf")}}},[a("i",{staticClass:"iconfont iconpdf"}),e._v("导出pdf\n ")])],1):e._e()]),e._v(" "),a("el-form",{},[a("h2",[e._v("表格查询")]),e._v(" "),e._l(e.tableData2,function(t,r){return a("div",{key:r+"excel"},[a("h4",[e._v(e._s(t.name))]),e._v(" "),e._l(t.children,function(t,r){return a("div",{key:r+"excel2",staticClass:"search_input"},[a("label",[e._v(e._s(t.name)+":")]),e._v(" "),a("el-input",{model:{value:t.value,callback:function(a){e.$set(t,"value",a)},expression:"son.value"}})],1)})],2)}),e._v(" "),a("el-button",{staticStyle:{width:"100%"},on:{click:e.searchPreview}},[e._v("查询")])],2)],1)]),e._v(" "),e._m(0)])},[function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"layout-middle"},[t("div",{staticStyle:{margin:"0px",padding:"0px",position:"absolute",width:"100%",height:"95vh",left:"0px",top:"30px",bottom:"0px"},attrs:{id:"luckysheet"}})])}],!1,null,"50d7cabc",null);v.options.__file="index.vue";t.default=v.exports},FZcH:function(e,t,a){},Fzjc:function(e,t,a){"use strict";a.d(t,"d",function(){return n}),a.d(t,"c",function(){return o}),a.d(t,"e",function(){return c}),a.d(t,"a",function(){return s}),a.d(t,"b",function(){return i});var r=a("t3Un");function n(e){return Object(r.a)({url:"reportExcel/preview",method:"post",data:e})}function o(e){return Object(r.a)({url:"reportExcel/exportExcel",method:"post",data:e})}function c(){return Object(r.a)({url:"dataSet/queryAllDataSet",method:"get"})}function s(e){return Object(r.a)({url:"dataSet/detailBysetId/"+e,method:"get"})}function i(e){return Object(r.a)({url:"reportExcel/detailByReportCode/"+e,method:"get"})}},Wx5O:function(e,t,a){"use strict";var r=a("kjnC");a.n(r).a},kjnC:function(e,t,a){},qkZ5:function(e,t,a){"use strict";var r=a("FZcH");a.n(r).a}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-5309"],{"+N4U":function(e,t,a){"use strict";a.r(t);var r=a("/umX"),n=a.n(r),o=a("6ZY3"),c=a.n(o),s=a("cLjf"),i=a.n(s),u=a("omC7"),l=a.n(u),d=a("hDQ3"),p=a.n(d),f=a("Fzjc"),m={name:"Login",components:{},data:function(){return{options:{},sheet:{},reportId:null,reportCode:null,reportName:null,dataSet:null,tableData2:[],excelData:{},params:{reportCode:"",setParam:""}}},mounted:function(){this.preview()},created:function(){this.reportCode=this.$route.query.reportCode},methods:{searchPreview:function(){var e=this;return p()(i.a.mark(function t(){var a;return i.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:a=e.toObject(e.tableData2),e.params.setParam=l()(a),e.preview();case 3:case"end":return t.stop()}},t,e)}))()},preview:function(){var e=this;return p()(i.a.mark(function t(){var a,r,n,o,c,s,u,l;return i.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.excelData={},e.params.reportCode=e.reportCode,t.next=4,Object(f.d)(e.params);case 4:if(a=t.sent,r=a.code,n=a.data,200==r){t.next=9;break}return t.abrupt("return");case 9:for(s in e.reportName=JSON.parse(n.jsonStr).name,e.params.setParam=JSON.parse(n.setParam),o=[],c=e.params.setParam){for(l in u=[],c[s])u.push({name:l,value:c[s][l]});o.push({name:s,children:u})}e.tableData2=o,e.excelData=n.jsonStr,e.sheetData=null==n?[{}]:JSON.parse(n.jsonStr),e.createSheet();case 18:case"end":return t.stop()}},t,e)}))()},download:function(e){var t=this;return p()(i.a.mark(function a(){var r,n,o,c;return i.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if("gaea_template_pdf"!=e){a.next=3;break}return t.$message("暂不支持pdf"),a.abrupt("return");case 3:return(r={}).reportCode=t.reportCode,r.setParam=l()(t.params.setParam),""!=e&&(r.exportType=e),a.next=9,Object(f.c)(r);case 9:if(n=a.sent,o=n.code,c=n.message,200==o){a.next=14;break}return a.abrupt("return");case 14:t.$message.success(c);case 15:case"end":return a.stop()}},a,t)}))()},toObject:function(e){var t={},a={};e.forEach(function(e){e.name&&(t[e.name]=e.children)});var r=function(e){var r={};t[e].map(function(e){c()(r,n()({},e.name,e.value))}),a[e]=r};for(var o in t)r(o);return a},createSheet:function(){var e={container:"luckysheet",title:"",lang:"zh",plugins:["chart"],data:[{name:"report",color:"",index:0,status:1,order:0,hide:0,row:36,column:18,defaultRowHeight:19,defaultColWidth:73,celldata:[],config:{merge:{},rowlen:{},columnlen:{},rowhidden:{},colhidden:{},borderInfo:{},authority:{}},scrollLeft:0,scrollTop:315,luckysheet_select_save:[],calcChain:[],isPivotTable:!1,pivotTable:{},filter_select:{},filter:null,luckysheet_alternateformat_save:[],luckysheet_alternateformat_save_modelCustom:[],luckysheet_conditionformat_save:{},frozen:{},chart:[],zoomRatio:1,image:[],showGridLines:1,dataVerification:{}}]};e.data=this.sheetData,$(function(){luckysheet.create(e)})}}},h=(a("qkZ5"),a("Wx5O"),a("ZrdR")),v=Object(h.a)(m,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"layout"},[a("div",{staticClass:"layout-right"},[a("div",{staticClass:"block"},[a("div",{staticClass:"download"},[null!=e.reportCode?a("a",{attrs:{download:"xxx.xlsx"}},[a("el-button",{attrs:{type:"text"},on:{click:function(t){return e.download("gaea_template_excel")}}},[a("i",{staticClass:"iconfont iconexcel"}),e._v("导出excel\n ")])],1):e._e(),e._v(" "),null!=e.reportCode?a("a",{attrs:{download:"xxx.pdf"}},[a("el-button",{attrs:{type:"text"},on:{click:function(t){return e.download("gaea_template_pdf")}}},[a("i",{staticClass:"iconfont iconpdf"}),e._v("导出pdf\n ")])],1):e._e()]),e._v(" "),a("el-form",{},[a("h2",[e._v("表格查询")]),e._v(" "),e._l(e.tableData2,function(t,r){return a("div",{key:r+"excel"},[a("h4",[e._v(e._s(t.name))]),e._v(" "),e._l(t.children,function(t,r){return a("div",{key:r+"excel2",staticClass:"search_input"},[a("label",[e._v(e._s(t.name)+":")]),e._v(" "),a("el-input",{model:{value:t.value,callback:function(a){e.$set(t,"value",a)},expression:"son.value"}})],1)})],2)}),e._v(" "),a("el-button",{staticStyle:{width:"100%"},on:{click:e.searchPreview}},[e._v("查询")])],2)],1)]),e._v(" "),e._m(0)])},[function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"layout-middle"},[t("div",{staticStyle:{margin:"0px",padding:"0px",position:"absolute",width:"100%",height:"95vh",left:"0px",top:"30px",bottom:"0px"},attrs:{id:"luckysheet"}})])}],!1,null,"50d7cabc",null);v.options.__file="index.vue";t.default=v.exports},FZcH:function(e,t,a){},Fzjc:function(e,t,a){"use strict";a.d(t,"d",function(){return n}),a.d(t,"c",function(){return o}),a.d(t,"e",function(){return c}),a.d(t,"a",function(){return s}),a.d(t,"b",function(){return i});var r=a("t3Un");function n(e){return Object(r.a)({url:"reportExcel/preview",method:"post",data:e})}function o(e){return Object(r.a)({url:"reportExcel/exportExcel",method:"post",data:e})}function c(){return Object(r.a)({url:"dataSet/queryAllDataSet",method:"get"})}function s(e){return Object(r.a)({url:"dataSet/detailBysetId/"+e,method:"get"})}function i(e){return Object(r.a)({url:"reportExcel/detailByReportCode/"+e,method:"get"})}},Wx5O:function(e,t,a){"use strict";var r=a("kjnC");a.n(r).a},kjnC:function(e,t,a){},qkZ5:function(e,t,a){"use strict";var r=a("FZcH");a.n(r).a}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-5ad2.177d4228.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-5ad2.177d4228.js index 1eeb32e54..b135cfbec 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-5ad2.177d4228.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-5ad2.177d4228.js @@ -5,4 +5,4 @@ * * Copyright 2011 - 2013 Tim Chien * Released under the MIT license - */window.setImmediate||(window.setImmediate=window.msSetImmediate||window.webkitSetImmediate||window.mozSetImmediate||window.oSetImmediate||function(){if(!window.postMessage||!window.addEventListener)return null;var e=[void 0],t="zero-timeout-message";return window.addEventListener("message",function(a){if("string"==typeof a.data&&a.data.substr(0,t.length)===t){a.stopImmediatePropagation();var i=parseInt(a.data.substr(t.length),36);e[i]&&(e[i](),e[i]=void 0)}},!0),window.clearImmediate=function(t){e[t]&&(e[t]=void 0)},function(a){var i=e.length;return e.push(a),window.postMessage(t+i.toString(36),"*"),i}}()||function(e){window.setTimeout(e,0)}),window.clearImmediate||(window.clearImmediate=window.msClearImmediate||window.webkitClearImmediate||window.mozClearImmediate||window.oClearImmediate||function(e){window.clearTimeout(e)}),function(a){var o=function(){var e=document.createElement("canvas");if(!e||!e.getContext)return!1;var t=e.getContext("2d");return!!(t.getImageData&&t.fillText&&Array.prototype.some&&Array.prototype.push)}(),n=function(){if(o){for(var e,t,a=document.createElement("canvas").getContext("2d"),i=20;i;){if(a.font=i.toString(10)+"px sans-serif",a.measureText("W").width===e&&a.measureText("m").width===t)return i+1;e=a.measureText("W").width,t=a.measureText("m").width,i--}return 0}}(),l=function(e){for(var t,a,i=e.length;i;t=Math.floor(Math.random()*i),a=e[--i],e[i]=e[t],e[t]=a);return e},r=function(e,t){function a(e,t){return"hsl("+(360*Math.random()).toFixed()+","+(30*Math.random()+70).toFixed()+"%,"+(Math.random()*(t-e)+e).toFixed()+"%)"}if(o){Array.isArray(e)||(e=[e]),e.forEach(function(t,a){if("string"==typeof t){if(e[a]=document.getElementById(t),!e[a])throw"The element id specified is not found."}else if(!t.tagName&&!t.appendChild)throw"You must pass valid HTML elements, or ID of the element."});var i={list:[],fontFamily:'"Trebuchet MS", "Heiti TC", "微軟正黑體", "Arial Unicode MS", "Droid Fallback Sans", sans-serif',fontWeight:"normal",color:"random-dark",minSize:0,weightFactor:1,clearCanvas:!0,backgroundColor:"#fff",gridSize:8,drawOutOfBound:!1,origin:null,drawMask:!1,maskColor:"rgba(255,0,0,0.3)",maskGapWidth:.3,wait:0,abortThreshold:0,abort:function(){},minRotation:-Math.PI/2,maxRotation:Math.PI/2,rotationStep:.1,shuffle:!0,rotateRatio:.1,shape:"circle",ellipticity:.65,classes:null,hover:null,click:null};if(t)for(var r in t)r in i&&(i[r]=t[r]);if("function"!=typeof i.weightFactor){var s=i.weightFactor;i.weightFactor=function(e){return e*s}}if("function"!=typeof i.shape)switch(i.shape){case"circle":default:i.shape="circle";break;case"cardioid":i.shape=function(e){return 1-Math.sin(e)};break;case"diamond":case"square":i.shape=function(e){var t=e%(2*Math.PI/4);return 1/(Math.cos(t)+Math.sin(t))};break;case"triangle-forward":i.shape=function(e){var t=e%(2*Math.PI/3);return 1/(Math.cos(t)+Math.sqrt(3)*Math.sin(t))};break;case"triangle":case"triangle-upright":i.shape=function(e){var t=(e+3*Math.PI/2)%(2*Math.PI/3);return 1/(Math.cos(t)+Math.sqrt(3)*Math.sin(t))};break;case"pentagon":i.shape=function(e){var t=(e+.955)%(2*Math.PI/5);return 1/(Math.cos(t)+.726543*Math.sin(t))};break;case"star":i.shape=function(e){var t=(e+.955)%(2*Math.PI/10);return(e+.955)%(2*Math.PI/5)-2*Math.PI/10>=0?1/(Math.cos(2*Math.PI/10-t)+3.07768*Math.sin(2*Math.PI/10-t)):1/(Math.cos(t)+3.07768*Math.sin(t))}}i.gridSize=Math.max(Math.floor(i.gridSize),4);var u,c,h,p,d,m,f,v=i.gridSize,y=v-i.maskGapWidth,g=Math.abs(i.maxRotation-i.minRotation),b=Math.min(i.maxRotation,i.minRotation),x=i.rotationStep;switch(i.color){case"random-dark":f=function(){return a(10,50)};break;case"random-light":f=function(){return a(50,90)};break;default:"function"==typeof i.color&&(f=i.color)}var S=null;"function"==typeof i.classes&&(S=i.classes);var w,q=!1,C=[],D=function(e){var t,a,i=e.currentTarget,o=i.getBoundingClientRect();e.touches?(t=e.touches[0].clientX,a=e.touches[0].clientY):(t=e.clientX,a=e.clientY);var n=t-o.left,l=a-o.top,r=Math.floor(n*(i.width/o.width||1)/v),s=Math.floor(l*(i.height/o.height||1)/v);return C[r][s]},T=function(e){var t=D(e);if(w!==t){if(w=t,!t)return void i.hover(void 0,void 0,e);i.hover(t.item,t.dimension,e)}},O=function(e){var t=D(e);t&&(i.click(t.item,t.dimension,e),e.preventDefault())},_=[],k=function(e){if(_[e])return _[e];var t=8*e,a=t,o=[];for(0===e&&o.push([p[0],p[1],0]);a--;){var n=1;"circle"!==i.shape&&(n=i.shape(a/t*2*Math.PI)),o.push([p[0]+e*n*Math.cos(-a/t*2*Math.PI),p[1]+e*n*Math.sin(-a/t*2*Math.PI)*i.ellipticity,a/t*2*Math.PI])}return _[e]=o,o},L=function(){return i.abortThreshold>0&&(new Date).getTime()-m>i.abortThreshold},z=function(e,t,a){var o=i.weightFactor(t);if(o<=i.minSize)return!1;var l=1;o<n&&(l=function(){for(var e=2;e*o<n;)e+=2;return e}());var r=document.createElement("canvas"),s=r.getContext("2d",{willReadFrequently:!0});s.font=i.fontWeight+" "+(o*l).toString(10)+"px "+i.fontFamily;var u=s.measureText(e).width/l,c=Math.max(o*l,s.measureText("m").width,s.measureText("W").width)/l,h=u+2*c,p=3*c,d=Math.ceil(h/v),m=Math.ceil(p/v);h=d*v,p=m*v;var f=-u/2,y=.4*-c,g=Math.ceil((h*Math.abs(Math.sin(a))+p*Math.abs(Math.cos(a)))/v),b=Math.ceil((h*Math.abs(Math.cos(a))+p*Math.abs(Math.sin(a)))/v),x=b*v,S=g*v;r.setAttribute("width",x),r.setAttribute("height",S),s.scale(1/l,1/l),s.translate(x*l/2,S*l/2),s.rotate(-a),s.font=i.fontWeight+" "+(o*l).toString(10)+"px "+i.fontFamily,s.fillStyle="#000",s.textBaseline="middle",s.fillText(e,f*l,(y+.5*o)*l);var w=s.getImageData(0,0,x,S).data;if(L())return!1;for(var q,C,D,T=[],O=b,_=[g/2,b/2,g/2,b/2];O--;)for(q=g;q--;){D=v;e:for(;D--;)for(C=v;C--;)if(w[4*((q*v+D)*x+(O*v+C))+3]){T.push([O,q]),O<_[3]&&(_[3]=O),O>_[1]&&(_[1]=O),q<_[0]&&(_[0]=q),q>_[2]&&(_[2]=q);break e}}return{mu:l,occupied:T,bounds:_,gw:b,gh:g,fillTextOffsetX:f,fillTextOffsetY:y,fillTextWidth:u,fillTextHeight:c,fontSize:o}},F=function(e,t,a,o,n){for(var l=n.length;l--;){var r=e+n[l][0],s=t+n[l][1];if(r>=c||s>=h||r<0||s<0){if(!i.drawOutOfBound)return!1}else if(!u[r][s])return!1}return!0},A=function(t,a,o,n,l,r,s,u,c){var h,p,d=o.fontSize;h=f?f(n,l,d,r,s):i.color,p=S?S(n,l,d,r,s):i.classes;var m=o.bounds;m[3],m[0],m[1],m[3],m[2],m[0],e.forEach(function(e){if(e.getContext){var l=e.getContext("2d"),r=o.mu;l.save(),l.scale(1/r,1/r),l.font=i.fontWeight+" "+(d*r).toString(10)+"px "+i.fontFamily,l.fillStyle=h,l.translate((t+o.gw/2)*v*r,(a+o.gh/2)*v*r),0!==u&&l.rotate(-u),l.textBaseline="middle",l.fillText(n,o.fillTextOffsetX*r,(o.fillTextOffsetY+.5*d)*r),l.restore()}else{var s=document.createElement("span"),m="";m="rotate("+-u/Math.PI*180+"deg) ",1!==o.mu&&(m+="translateX(-"+o.fillTextWidth/4+"px) scale("+1/o.mu+")");var f={position:"absolute",display:"block",font:i.fontWeight+" "+d*o.mu+"px "+i.fontFamily,left:(t+o.gw/2)*v+o.fillTextOffsetX+"px",top:(a+o.gh/2)*v+o.fillTextOffsetY+"px",width:o.fillTextWidth+"px",height:o.fillTextHeight+"px",lineHeight:d+"px",whiteSpace:"nowrap",transform:m,webkitTransform:m,msTransform:m,transformOrigin:"50% 40%",webkitTransformOrigin:"50% 40%",msTransformOrigin:"50% 40%"};for(var y in h&&(f.color=h),s.textContent=n,f)s.style[y]=f[y];if(c)for(var g in c)s.setAttribute(g,c[g]);p&&(s.className+=p),e.appendChild(s)}})},W=function(t,a,i,o,n){t>=c||a>=h||t<0||a<0||(u[t][a]=!1,i&&e[0].getContext("2d").fillRect(t*v,a*v,y,y),q&&(C[t][a]={item:n,dimension:o}))},P=function(t,a,o,n,l,r){var s,u,p=l.occupied,d=i.drawMask;if(d&&((s=e[0].getContext("2d")).save(),s.fillStyle=i.maskColor),q){var m=l.bounds;u={x:(t+m[3])*v,y:(a+m[0])*v,w:(m[1]-m[3]+1)*v,h:(m[2]-m[0]+1)*v}}for(var f=p.length;f--;){var y=t+p[f][0],g=a+p[f][1];y>=c||g>=h||y<0||g<0||W(y,g,d,u,r)}d&&s.restore()},I=function(e){var t,a,o;Array.isArray(e)?(t=e[0],a=e[1]):(t=e.word,a=e.weight,o=e.attributes);var n=0===i.rotateRatio?0:Math.random()>i.rotateRatio?0:0===g?b:b+Math.round(Math.random()*g/x)*x,r=z(t,a,n);if(!r)return!1;if(L())return!1;if(!i.drawOutOfBound){var s=r.bounds;if(s[1]-s[3]+1>c||s[2]-s[0]+1>h)return!1}for(var u=d+1;u--;){var p=k(d-u);i.shuffle&&(p=[].concat(p),l(p));for(var m=0;m<p.length;m++){var f=function(i){var l=Math.floor(i[0]-r.gw/2),s=Math.floor(i[1]-r.gh/2);return r.gw,r.gh,!!F(l,s,0,0,r.occupied)&&(A(l,s,r,t,a,d-u,i[2],n,o),P(l,s,0,0,r,e),{gx:l,gy:s,rot:n,info:r})}(p[m]);if(f)return f}}return null},M=function(t,a,i){if(a)return!e.some(function(e){var o=document.createEvent("CustomEvent");return o.initCustomEvent(t,!0,a,i||{}),!e.dispatchEvent(o)},this);e.forEach(function(e){var o=document.createEvent("CustomEvent");o.initCustomEvent(t,!0,a,i||{}),e.dispatchEvent(o)},this)};!function(){var t=e[0];if(t.getContext)c=Math.ceil(t.width/v),h=Math.ceil(t.height/v);else{var a=t.getBoundingClientRect();c=Math.ceil(a.width/v),h=Math.ceil(a.height/v)}if(M("wordcloudstart",!0)){var o,n,l,r,s;if(p=i.origin?[i.origin[0]/v,i.origin[1]/v]:[c/2,h/2],d=Math.floor(Math.sqrt(c*c+h*h)),u=[],!t.getContext||i.clearCanvas)for(e.forEach(function(e){if(e.getContext){var t=e.getContext("2d");t.fillStyle=i.backgroundColor,t.clearRect(0,0,c*(v+1),h*(v+1)),t.fillRect(0,0,c*(v+1),h*(v+1))}else e.textContent="",e.style.backgroundColor=i.backgroundColor,e.style.position="relative"}),o=c;o--;)for(u[o]=[],n=h;n--;)u[o][n]=!0;else{var f=document.createElement("canvas").getContext("2d");f.fillStyle=i.backgroundColor,f.fillRect(0,0,1,1);var y,g,b=f.getImageData(0,0,1,1).data,x=t.getContext("2d").getImageData(0,0,c*v,h*v).data;for(o=c;o--;)for(u[o]=[],n=h;n--;){g=v;e:for(;g--;)for(y=v;y--;)for(l=4;l--;)if(x[4*((n*v+g)*c*v+(o*v+y))+l]!==b[l]){u[o][n]=!1;break e}!1!==u[o][n]&&(u[o][n]=!0)}x=f=b=void 0}if(i.hover||i.click){for(q=!0,o=c+1;o--;)C[o]=[];i.hover&&t.addEventListener("mousemove",T),i.click&&(t.addEventListener("click",O),t.addEventListener("touchstart",O),t.addEventListener("touchend",function(e){e.preventDefault()}),t.style.webkitTapHighlightColor="rgba(0, 0, 0, 0)"),t.addEventListener("wordcloudstart",function e(){t.removeEventListener("wordcloudstart",e),t.removeEventListener("mousemove",T),t.removeEventListener("click",O),w=void 0})}l=0,0!==i.wait?(r=window.setTimeout,s=window.clearTimeout):(r=window.setImmediate,s=window.clearImmediate);var S=function(t,a){e.forEach(function(e){e.removeEventListener(t,a)},this)},D=function e(){S("wordcloudstart",e),s(_)};!function(t,a){e.forEach(function(e){e.addEventListener("wordcloudstart",a)},this)}(0,D);var _=r(function e(){if(l>=i.list.length)return s(_),M("wordcloudstop",!1),void S("wordcloudstart",D);m=(new Date).getTime();var t=I(i.list[l]),a=!M("wordclouddrawn",!0,{item:i.list[l],drawn:t});if(L()||a)return s(_),i.abort(),M("wordcloudabort",!1),M("wordcloudstop",!1),void S("wordcloudstart",D);l++,_=r(e,i.wait)},i.wait)}}()}};r.isSupported=o,r.minFontSize=n,void 0!==(i=function(){return r}.apply(t,[]))&&(e.exports=i)}()}])}(a("TSjp"))},"9H/H":function(e,t,a){"use strict";var i=a("Y48Z");a.n(i).a},BPcn:function(e,t,a){},CJ5O:function(e,t,a){"use strict";var i=a("cLjf"),o=a.n(i),n=a("hDQ3"),l=a.n(n),r=a("sm2R"),s={name:"GetDictionary",props:{dictKey:String,updataDict:String,value:String},data:function(){return{dictionary:"",dictionaryOptions:[]}},watch:{dictKey:{immediate:!0,handler:function(){this.getSystem()}},value:{handler:function(e){this.dictionary=e},deep:!0}},created:function(){this.getSystem()},mounted:function(){this.dictionary=this.value},methods:{getSystem:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(r.a)(e.dictKey);case 2:if(a=t.sent,i=a.code,n=a.data,"200"==i){t.next=7;break}return t.abrupt("return");case 7:e.dictionaryOptions=n;case 8:case"end":return t.stop()}},t,e)}))()},selectChange:function(e){this.$emit("input",e)}}},u=(a("rVG9"),a("ZrdR")),c=Object(u.a)(s,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-select",{attrs:{placeholder:"请选择",clearable:"",size:"mini"},on:{change:e.selectChange},model:{value:e.dictionary,callback:function(t){e.dictionary=t},expression:"dictionary"}},e._l(e.dictionaryOptions,function(e){return a("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)},[],!1,null,"23d4be90",null);c.options.__file="index.vue";t.a=c.exports},CZ5I:function(e,t,a){},Cjkk:function(e,t,a){"use strict";var i=a("/Arj");a.n(i).a},"EO+T":function(e,t,a){"use strict";var i=a("u8RD");a.n(i).a},EwIA:function(e,t,a){},FxKO:function(e,t,a){"use strict";var i=a("TSjp"),o=a.n(i),n=(a("Z5Hk"),{"台湾":[121.5135,25.0308],"黑龙江":[127.9688,45.368],"内蒙古":[110.3467,41.4899],"吉林":[125.8154,44.2584],"北京":[116.4551,40.2539],"辽宁":[123.1238,42.1216],"河北":[114.4995,38.1006],"天津":[117.4219,39.4189],"山西":[112.3352,37.9413],"陕西":[109.1162,34.2004],"甘肃":[103.5901,36.3043],"宁夏":[106.3586,38.1775],"青海":[101.4038,36.8207],"新疆":[87.9236,43.5883],"西藏":[91.11,29.97],"四川":[103.9526,30.7617],"重庆":[108.384366,30.439702],"山东":[117.1582,36.8701],"河南":[113.4668,34.6234],"江苏":[118.8062,31.9208],"安徽":[117.29,32.0581],"湖北":[114.3896,30.6628],"浙江":[119.5313,29.8773],"福建":[119.4543,25.9222],"江西":[116.0046,28.6633],"湖南":[113.0823,28.2568],"贵州":[106.6992,26.7682],"云南":[102.9199,25.4663],"广东":[113.12244,23.009505],"广西":[108.479,23.1152],"海南":[110.3893,19.8516],"上海":[121.4648,31.2891]}),l=[{name:"南海诸岛",value:1},{name:"北京",value:524},{name:"天津",value:14},{name:"上海",value:150},{name:"重庆",value:75},{name:"河北",value:13},{name:"河南",value:83},{name:"云南",value:11},{name:"辽宁",value:19},{name:"黑龙江",value:15},{name:"湖南",value:69},{name:"安徽",value:260},{name:"山东",value:39},{name:"新疆",value:4},{name:"江苏",value:31},{name:"浙江",value:104},{name:"江西",value:36},{name:"湖北",value:1052},{name:"广西",value:33},{name:"甘肃",value:347},{name:"山西",value:8},{name:"内蒙古",value:157},{name:"陕西",value:22},{name:"吉林",value:4},{name:"福建",value:36},{name:"贵州",value:39},{name:"广东",value:996},{name:"青海",value:27},{name:"西藏",value:31},{name:"四川",value:46},{name:"宁夏",value:16},{name:"海南",value:22},{name:"台湾",value:6},{name:"香港",value:2},{name:"澳门",value:9}],r=function(e){for(var t=[],a=0;a<e.length;a++){var i=n[e[a].name];i&&t.push({name:e[a].name,value:i.concat(e[a].value)})}return t},s=100,u=20,c={name:"widgetAirBubbleMap",props:{value:Object,ispreview:Boolean},data:function(){return{options:{tooltip:{show:!0,formatter:function(e){return e.value.length>1?"  "+e.name+"   "+e.value[2]+"  ":"  "+e.name+"   "+e.value+"  "}},geo:{map:"china",show:!0,roam:!1,label:{emphasis:{show:!1}},layoutSize:"80%",itemStyle:{normal:{borderColor:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#00F6FF"},{offset:1,color:"#53D9FF"}],!1),borderWidth:3,shadowColor:"rgba(10,76,139,1)",shadowOffsetY:0,shadowBlur:60}}},series:[{type:"map",map:"china",aspectScale:.75,label:{normal:{position:"right",show:!0,color:"#53D9FF",fontSize:20},emphasis:{show:!0}},itemStyle:{normal:{areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:"#061E3D"}]},borderColor:"#215495",borderWidth:1},emphasis:{areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:"#2B91B7"}]}}},data:l},{type:"effectScatter",coordinateSystem:"geo",rippleEffect:{brushType:"stroke"},showEffectOn:"render",itemStyle:{normal:{color:{type:"radial",x:.5,y:.5,r:.5,colorStops:[{offset:0,color:"rgba(5,80,151,0.2)"},{offset:.8,color:"rgba(5,80,151,0.8)"},{offset:1,color:"rgba(0,108,255,0.7)"}],global:!1}}},label:{normal:{show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(e){return"{cnNum|"+e.data.value[2]+"}"},rich:{cnNum:{fontSize:13,color:"#D4EEFF"}}}},symbol:"circle",symbolSize:function(e){return 0==e[2]?0:(s-u)/5990*e[2]+1.2*(s-(s-u)/5990*6e3)},data:r(l),zlevel:1}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionTextValue(),this.setOptionsData(),this.setOptionAirSize(),this.setOptionMapBlocak()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.show=e.isNoTitle,t.text=e.titleText,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionTextValue:function(){var e=this.optionsSetup,t=this.options.series[0].label,a={position:"right",show:!0,color:e.fontTextColor,fontSize:e.fontTextSize,fontWeight:e.fontTextWeight};t.normal=a},setOptionMapBlocak:function(){var e=this.optionsSetup,t=this.options.series[0].itemStyle,a={areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:e.font0PreColor},{offset:1,color:e.font100PreColor}]},borderColor:"#215495",borderWidth:1},i={areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:e.fontHighlightColor}]}};t.normal=a,t.emphasis=i},setOptionAirSize:function(){s=this.optionsSetup.fontmaxSize4Pin,u=this.optionsSetup.fontminSize4Pin},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){this.options.series[0].data=e;var t=this.optionsSetup,a=this.options.series[1].label,i={show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(e){return"{cnNum|"+e.data.value[2]+"}"},rich:{cnNum:{fontSize:t.fontDataSize,color:t.fontDataColor,fontWeight:t.fontDataWeight}}},o=r(e);this.options.series[1].data=o,a.normal=i},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){this.options.series[0].data=e;var t=this.optionsSetup,a=this.options.series[1].label,i={show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(e){return"{cnNum|"+e.data.value[2]+"}"},rich:{cnNum:{fontSize:t.fontDataSize,color:t.fontDataColor,fontWeight:t.fontDataWeight}}},o=r(e);this.options.series[1].data=o,a.normal=i}}},h=(a("5wqb"),a("ZrdR")),p=Object(h.a)(c,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"82db8fb2",null);p.options.__file="widgetAirBubbleMap.vue";t.a=p.exports},GWHw:function(e,t,a){"use strict";var i={name:"WidgetIframe",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",iframeAdress:this.transStyle.iframeAdress}}},watch:{value:{handler:function(e){this.options=e},deep:!0}},mounted:function(){this.options=this.value},methods:{}},o=(a("qpv/"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement;return(this._self._c||e)("iframe",{style:this.styleColor,attrs:{src:this.styleColor.iframeAdress,width:"100%",height:"100%"}})},[],!1,null,"537c80f2",null);n.options.__file="widgetIframe.vue";t.a=n.exports},HMir:function(e,t,a){"use strict";var i=a("TSjp"),o=a.n(i),n={name:"widgetMoreBarLineChart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{tooltip:{trigger:"item",axisPointer:{type:"shadow"}},grid:{left:"2%",right:"4%",bottom:"14%",top:"16%",containLabel:!0},legend:{data:["调解成功","调解失败","调解终止","调解成功率"],left:"7%",top:"5%",textStyle:{color:"#666666"},itemWidth:15,itemHeight:10,itemGap:25},xAxis:{type:"category",data:["2012","2013","2014","2015","2016","2017","2018","2019"],axisLine:{lineStyle:{color:"#cdd5e2"}},axisLabel:{textStyle:{color:"#666666"}}},yAxis:[{type:"value",axisLine:{show:!0,lineStyle:{color:"#cdd5e2"}},splitLine:{show:!1},axisLabel:{textStyle:{color:"#666666"}}},{type:"value",nameTextStyle:{color:"#666666"},position:"right",axisLine:{lineStyle:{color:"#cdd5e2"}},splitLine:{show:!1},axisLabel:{show:!0,textStyle:{color:"#666666"}}}],series:[{name:"调解成功",type:"bar",itemStyle:{normal:{color:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#29acff"},{offset:1,color:"#4bdfff"}]),barBorderRadius:6}},data:[]},{name:"调解失败",type:"bar",itemStyle:{normal:{color:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#3d93f2"},{offset:1,color:"#5dc1fd"}]),barBorderRadius:6}},data:[]},{name:"调解终止",type:"bar",itemStyle:{normal:{color:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#01c871"},{offset:1,color:"#55f49c"}]),barBorderRadius:6}},data:[]},{name:"调解成功率",type:"line",yAxisIndex:1,smooth:!1,symbol:"circle",symbolSize:8,itemStyle:{normal:{color:"#ffa43a",borderColor:"rgba(255, 234, 0, 0.5)",borderWidth:5}},lineStyle:{color:"#ffa43a"},data:[]}]}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsLegend(),this.setOptionsTooltip(),this.setOptionsMargin(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.nameColorX,fontSize:e.nameFontSizeX},nameRotate:e.textAngle,inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngle,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t=[{type:"value",show:e.isShowYLeft,name:e.textNameYLeft,nameTextStyle:{color:e.nameColorYLeft,fontSize:e.namefontSizeYLeft},axisLabel:{show:!0,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:e.isShowYLeft,lineStyle:{color:e.lineColorY}},splitLine:{show:!1}},{type:"value",position:"right",show:e.isShowYRight,name:e.textNameYRight,nameTextStyle:{color:e.nameColorYRight,fontSize:e.namefontSizeYRight},axisLabel:{show:!0,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:e.isShowYRight,lineStyle:{color:e.lineColorY}},splitLine:{show:!1}}];this.options.yAxis=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.tipFontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup.customColor,t=this.options.series;if(e){for(var a=[],i=0;i<e.length;i++)a.push(e[i].color);for(var o in t)"bar"==t[o].type?t[o].itemStyle.normal.color=a[o]:t[o].lineStyle.color=a[o]}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t=this.optionsSetup,a=this.options.series,i=[],o=[],n=[],l=[],r=[];for(var s in e)i[s]=e[s].date,o[s]=e[s].unsales,n[s]=e[s].manus,l[s]=e[s].rework,r[s]=e[s].sales;for(var u in this.options.xAxis.data=i,a)"bar"==a[u].type?(a[u].label={show:t.isShowBar,position:"top",distance:t.distanceBar,fontSize:t.fontSizeBar,color:t.subTextColorBar,fontWeight:t.fontWeightBar},a[u].barWidth=t.maxWidth,a[u].itemStyle.normal.barBorderRadius=t.radius):"line"==a[u].type&&(a[u].yAxisIndex=1,a[u].showSymbol=t.markPoint,a[u].symbolSize=t.pointSize,a[u].smooth=t.smoothCurve,t.area?a[u].areaStyle={opacity:t.areaThickness/100}:a[u].areaStyle={opacity:0},a[u].lineStyle={width:t.lineWidth},a[u].label={show:t.isShowLine,position:"top",distance:t.distanceLine,fontSize:t.fontSizeLine,color:t.subTextColorLine,fontWeight:t.fontWeightLine});a[0].data=o,a[1].data=n,a[2].data=l,a[3].data=r;var c=[];c.push("调解成功"),c.push("调解失败"),c.push("调解终止"),c.push("调解成功率"),this.options.legend.data=c,this.setOptionsLegendName(c)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){var t=this.optionsSetup;this.options.xAxis.data=e.xAxis;var a=[],i=[];for(var o in e.series){var n={};"bar"==e.series[o].type?(n.name=e.series[o].name,n.type=e.series[o].type,n.label={show:t.isShowBar,position:"top",distance:t.distanceBar,fontSize:t.fontSizeBar,color:t.subTextColorBar,fontWeight:t.fontWeightBar},n.barWidth=t.maxWidth,n.itemStyle={normal:{barBorderRadius:t.radius}},n.data=e.series[o].data,a.push(n)):"line"==e.series[o].type&&(n.name=e.series[o].name,n.type=e.series[o].type,n.yAxisIndex=1,n.showSymbol=t.markPoint,n.symbolSize=t.pointSize,n.smooth=t.smoothCurve,t.area?n.areaStyle={opacity:t.areaThickness/100}:n.areaStyle={opacity:0},n.lineStyle={width:t.lineWidth},n.label={show:t.isShowLine,position:"top",distance:t.distanceLine,fontSize:t.fontSizeLine,color:t.subTextColorLine,fontWeight:t.fontWeightLine},n.data=e.series[o].data,a.push(n)),i.push(e.series[o].name)}this.options.series=a,this.options.legend.data=i,this.setOptionsLegendName(i)}}},l=(a("nzh8"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"0a794445",null);r.options.__file="widgetMoreBarLineChart.vue";t.a=r.exports},I8Wc:function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetBarlinechart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{color:[],grid:{},title:{text:"",textStyle:{color:"#fff"}},tooltip:{trigger:"item",formatter:"{a} <br/>{b} : {c}%"},legend:{textStyle:{color:"#fff"}},xAxis:[{type:"category",data:[],axisLabel:{show:!1,textStyle:{color:"#fff"}}}],yAxis:[{type:"value",name:"",min:0,max:250,interval:50,axisLabel:{show:!0,textStyle:{color:"#fff"}}},{type:"value",name:"",min:0,max:25,interval:5,axisLabel:{show:!0,textStyle:{color:"#fff"}}}],series:[{name:"",type:"bar",yAxisIndex:0,data:[],itemStyle:{barBorderRadius:null}},{name:"",type:"line",yAxisIndex:1,data:[],itemStyle:{}}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsLine(),this.setOptionsBar(),this.setOptionsTooltip(),this.setOptionsData(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsColor()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.nameColorX,fontSize:e.nameFontSizeX},nameRotate:e.textAngle,inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngle,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t=[{type:"value",splitNumber:e.splitNumberLeft,show:e.isShowYLeft,name:e.textNameYLeft,nameTextStyle:{color:e.nameColorYLeft,fontSize:e.namefontSizeYLeft},inverse:e.reversalY,axisLabel:{show:!0,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:!1}},{type:"value",splitNumber:e.splitNumberRight,show:e.isShowYRight,name:e.textNameYRight,nameTextStyle:{color:e.nameColorYRight,fontSize:e.namefontSizeYRight},inverse:e.reversalY,axisLabel:{show:!0,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:!1}}];this.options.yAxis=t},setOptionsLine:function(){var e=this.optionsSetup,t=this.options.series;for(var a in t)"line"==t[a].type&&(t[a].showSymbol=e.markPoint,t[a].symbolSize=e.pointSize,t[a].smooth=e.smoothCurve,e.area?t[a].areaStyle={opacity:e.areaThickness/100}:t[a].areaStyle={opacity:0},t[a].lineStyle={width:e.lineWidth},t[a].itemStyle.borderRadius=e.radius,t[a].label={show:e.isShowLine,position:"top",distance:e.distanceLine,fontSize:e.fontSizeLine,color:e.subTextColorLine,fontWeight:e.fontWeightLine});this.options.series=t},setOptionsBar:function(){var e=this.optionsSetup,t=this.options.series;for(var a in t)"bar"==t[a].type&&(t[a].label={show:e.isShowBar,position:"top",distance:e.distanceBar,fontSize:e.fontSizeBar,color:e.subTextColorBar,fontWeight:e.fontWeightBar},t[a].barWidth=e.maxWidth,t[a].barMinHeight=e.minHeight,t[a].itemStyle.barBorderRadius=e.radius);this.options.series=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.tipFontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup.customColor;if(e){for(var t=[],a=0;a<e.length;a++)t.push(e[a].color);this.options.color=t,this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t=this.options.series,a=[],i=[],o=[];for(var n in e)a[n]=e[n].axis,i[n]=e[n].bar,o[n]=e[n].line;for(var l in this.options.xAxis.data=a,t)"bar"==t[l].type?t[l].data=i:t[l].data=o;var r=[];r.push("bar"),r.push("line"),this.options.legend.data=r,this.setOptionsLegendName(r)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){this.options.xAxis.data=e.xAxis;var t=this.options.series,a=[];for(var i in t){for(var o in e.series)t[i].type==e.series[o].type&&(t[i].data=e.series[o].data);a.push(e.series[i].name)}this.options.legend.data=a,this.setOptionsLegendName(a)}}},l=(a("h+18"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"0f247c08",null);r.options.__file="widgetBarlinechart.vue";t.a=r.exports},I8wO:function(e,t,a){},LOcm:function(e,t,a){},MBQa:function(e,t,a){},O5o2:function(e,t,a){},OUmF:function(e,t,a){},OeK3:function(e,t,a){},OnJP:function(e,t,a){},PCNV:function(e,t,a){"use strict";var i=a("WN/g");a.n(i).a},Q61O:function(e,t,a){},Qhiv:function(e,t,a){"use strict";var i=a("O5o2");a.n(i).a},Rk6N:function(e,t,a){},"S+MY":function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetPiechart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{title:{text:"",left:"center",textStyle:{color:"#fff"}},legend:{orient:"vertical",left:"left",textStyle:{color:"#fff"}},series:[{type:"pie",radius:"50%",data:[],emphasis:{itemStyle:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"}}}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsValue(),this.setOptionsTooltip(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData(),this.setOptionsPiechartStyle()},setOptionsPiechartStyle:function(){"shixin"==this.optionsSetup.piechartStyle?this.options.series[0].radius="50%":"kongxin"==this.optionsSetup.piechartStyle&&(this.options.series[0].radius=["40%","70%"])},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.show=e.isNoTitle,t.text=e.titleText,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsValue:function(){var e=this.optionsSetup,t=this.options.series,a=e.numberValue?"{c}":"",i=e.percentage?"({d})%":"",o={show:e.isShow,formatter:"{a|{b}:"+a+" "+i+"}",rich:{a:{padding:[-30,15,-20,15],color:e.subTextColor,fontSize:e.fontSize,fontWeight:e.fontWeight}},fontSize:e.fontSize,fontWeight:e.optionsSetup};for(var n in t)"pie"==t[n].type&&(t[n].label=o,t[n].labelLine={show:e.isShow})},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.fontSize}};this.options.tooltip=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left="left"==e.lateralPosition?0:"auto",t.right="right"==e.lateralPosition?0:"auto",t.top="top"==e.longitudinalPosition?0:"auto",t.bottom="bottom"==e.longitudinalPosition?0:"auto",t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.fontSize},t.itemWidth=e.lengedWidth},setOptionsColor:function(){var e=this.optionsSetup.customColor;if(e){for(var t=[],a=0;a<e.length;a++)t.push(e[a].color);this.options.color=t,this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t="string"==typeof e?JSON.parse(e):e;for(var a in this.options.series)"pie"==this.options.series[a].type&&(this.options.series[a].data=t)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){for(var t in this.options.series)"pie"==this.options.series[t].type&&(this.options.series[t].data=e)}}},l=(a("EO+T"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"b6bc8966",null);r.options.__file="widgetPiechart.vue";t.a=r.exports},T7H8:function(e,t,a){},TUKT:function(e,t,a){"use strict";a("Z5Hk");var i={"上海":[121.4648,31.2891],"东莞":[113.8953,22.901],"东营":[118.7073,37.5513],"中山":[113.4229,22.478],"临汾":[111.4783,36.1615],"临沂":[118.3118,35.2936],"丹东":[124.541,40.4242],"丽水":[119.5642,28.1854],"乌鲁木齐":[87.9236,43.5883],"佛山":[112.8955,23.1097],"保定":[115.0488,39.0948],"兰州":[103.5901,36.3043],"包头":[110.3467,41.4899],"北京":[116.4551,40.2539],"北海":[109.314,21.6211],"南京":[118.8062,31.9208],"南宁":[108.479,23.1152],"南昌":[116.0046,28.6633],"南通":[121.1023,32.1625],"厦门":[118.1689,24.6478],"台州":[121.1353,28.6688],"合肥":[117.29,32.0581],"呼和浩特":[111.4124,40.4901],"咸阳":[108.4131,34.8706],"哈尔滨":[127.9688,45.368],"唐山":[118.4766,39.6826],"嘉兴":[120.9155,30.6354],"大同":[113.7854,39.8035],"大连":[122.2229,39.4409],"天津":[117.4219,39.4189],"太原":[112.3352,37.9413],"威海":[121.9482,37.1393],"宁波":[121.5967,29.6466],"宝鸡":[107.1826,34.3433],"宿迁":[118.5535,33.7775],"常州":[119.4543,31.5582],"广州":[113.5107,23.2196],"廊坊":[116.521,39.0509],"延安":[109.1052,36.4252],"张家口":[115.1477,40.8527],"徐州":[117.5208,34.3268],"德州":[116.6858,37.2107],"惠州":[114.6204,23.1647],"成都":[103.9526,30.7617],"扬州":[119.4653,32.8162],"承德":[117.5757,41.4075],"拉萨":[91.1865,30.1465],"无锡":[120.3442,31.5527],"日照":[119.2786,35.5023],"昆明":[102.9199,25.4663],"杭州":[119.5313,29.8773],"枣庄":[117.323,34.8926],"柳州":[109.3799,24.9774],"株洲":[113.5327,27.0319],"武汉":[114.3896,30.6628],"汕头":[117.1692,23.3405],"江门":[112.6318,22.1484],"沈阳":[123.1238,42.1216],"沧州":[116.8286,38.2104],"河源":[114.917,23.9722],"泉州":[118.3228,25.1147],"泰安":[117.0264,36.0516],"泰州":[120.0586,32.5525],"济南":[117.1582,36.8701],"济宁":[116.8286,35.3375],"海口":[110.3893,19.8516],"淄博":[118.0371,36.6064],"淮安":[118.927,33.4039],"深圳":[114.5435,22.5439],"清远":[112.9175,24.3292],"温州":[120.498,27.8119],"渭南":[109.7864,35.0299],"湖州":[119.8608,30.7782],"湘潭":[112.5439,27.7075],"滨州":[117.8174,37.4963],"潍坊":[119.0918,36.524],"烟台":[120.7397,37.5128],"玉溪":[101.9312,23.8898],"珠海":[113.7305,22.1155],"盐城":[120.2234,33.5577],"盘锦":[121.9482,41.0449],"石家庄":[114.4995,38.1006],"福州":[119.4543,25.9222],"秦皇岛":[119.2126,40.0232],"绍兴":[120.564,29.7565],"聊城":[115.9167,36.4032],"肇庆":[112.1265,23.5822],"舟山":[122.2559,30.2234],"苏州":[120.6519,31.3989],"莱芜":[117.6526,36.2714],"菏泽":[115.6201,35.2057],"营口":[122.4316,40.4297],"葫芦岛":[120.1575,40.578],"衡水":[115.8838,37.7161],"衢州":[118.6853,28.8666],"西宁":[101.4038,36.8207],"西安":[109.1162,34.2004],"贵阳":[106.6992,26.7682],"连云港":[119.1248,34.552],"邢台":[114.8071,37.2821],"邯郸":[114.4775,36.535],"郑州":[113.4668,34.6234],"鄂尔多斯":[108.9734,39.2487],"重庆":[107.7539,30.1904],"金华":[120.0037,29.1028],"铜川":[109.0393,35.1947],"银川":[106.3586,38.1775],"镇江":[119.4763,31.9702],"长春":[125.8154,44.2584],"长沙":[113.0823,28.2568],"长治":[112.8625,36.4746],"阳泉":[113.4778,38.0951],"青岛":[120.4651,36.3373],"韶关":[113.7964,24.7028]},o=["#a6c84c","#ffa022","#46bee9"],n=["广州",[[{name:"广州"},{name:"福州",value:95}],[{name:"广州"},{name:"太原",value:90}],[{name:"广州"},{name:"长春",value:80}],[{name:"广州"},{name:"重庆",value:70}],[{name:"广州"},{name:"西安",value:60}],[{name:"广州"},{name:"成都",value:50}],[{name:"广州"},{name:"常州",value:40}],[{name:"广州"},{name:"北京",value:30}],[{name:"广州"},{name:"北海",value:20}],[{name:"广州"},{name:"海口",value:10}]]],l={name:"widgetMap",props:{value:Object,ispreview:Boolean},data:function(){return{options:{title:{text:"模拟迁徙",subtext:"数据纯属虚构",left:"center",textStyle:{color:"#fff"}},tooltip:{trigger:"item",formatter:function(e){return console.log(e),"effectScatter"==e.seriesType?"流出<br>"+e.seriesName+" ---\x3e "+e.data.name+"<br />人数:"+e.data.value[2]+"人":"lines"==e.seriesType?"流出<br>"+e.data.fromName+" ---\x3e "+e.data.toName+"<br />人数:"+e.data.value+"人":e.name}},legend:{show:!1,orient:"vertical",top:"bottom",left:"right",data:["广州"],textStyle:{color:"#fff"},selectedMode:"single"},geo:{map:"china",label:{emphasis:{show:!0,color:"white"}},roam:!0,itemStyle:{normal:{areaColor:"#323c48",borderColor:"#404a59"},emphasis:{areaColor:"#2a333d"}}},series:[]},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position},deep:!0}},created:function(){this.optionsStyle=this.value.position},mounted:function(){this.initData()},methods:{initData:function(){var e=this.options;e.series.push({name:n[0],type:"lines",zlevel:1,effect:{show:!0,period:6,trailLength:.7,color:"#fff",symbolSize:3},lineStyle:{normal:{color:o[0],width:0,curveness:.2}},data:this.convertData(n[1])},{name:n[0],type:"lines",zlevel:2,effect:{show:!0,period:6,trailLength:0,symbol:"path://M1705.06,1318.313v-89.254l-319.9-221.799l0.073-208.063c0.521-84.662-26.629-121.796-63.961-121.491c-37.332-0.305-64.482,36.829-63.961,121.491l0.073,208.063l-319.9,221.799v89.254l330.343-157.288l12.238,241.308l-134.449,92.931l0.531,42.034l175.125-42.917l175.125,42.917l0.531-42.034l-134.449-92.931l12.238-241.308L1705.06,1318.313z",symbolSize:15},lineStyle:{normal:{color:o[0],width:1,opacity:.4,curveness:.2}},data:this.convertData(n[1])},{name:n[0],type:"effectScatter",coordinateSystem:"geo",zlevel:2,rippleEffect:{brushType:"stroke"},label:{normal:{show:!0,position:"right",formatter:"{b}"}},symbolSize:function(e){return e[2]/8},itemStyle:{normal:{color:o[0]}},data:n[1].map(function(e){return{name:e[1].name,value:i[e[1].name].concat([e[1].value])}})}),this.options=e},convertData:function(e){for(var t=[],a=0;a<e.length;a++){var o=e[a],n=i[o[0].name],l=i[o[1].name];0,n&&l&&t.push({fromName:o[0].name,toName:o[1].name,coords:[n,l],value:o[1].value})}return t}}},r=(a("kLPZ"),a("ZrdR")),s=Object(r.a)(l,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"63da0746",null);s.options.__file="widgetMap.vue";t.a=s.exports},Te6K:function(e,t,a){"use strict";var i=a("vL5o");a.n(i).a},TjL5:function(e,t,a){"use strict";var i=a("EwIA");a.n(i).a},U6Wy:function(e,t,a){"use strict";var i=a("AmEZ"),o=a("TtI4"),n=a.n(o);i.default.use(n.a);var l={props:{value:Object,ispreview:Boolean},data:function(){return{hackReset:!0,options:{titCell:".hd ul",mainCell:".bd ul",effect:"topLoop",autoPage:!0,autoPlay:!0,vis:5,rowHeight:"50px"},header:[],list:[],optionsSetUp:{},optionsPosition:{},optionsData:{}}},computed:{styleObj:function(){console.log(this.optionsSetUp);var e=this.optionsPosition;return{position:this.ispreview?"absolute":"static",width:e.width+"px",height:e.height+"px",left:e.left+"px",top:e.top+"px",background:this.optionsSetUp.tableBgColor}},headerTableStlye:function(){var e=this.optionsSetUp;return{"text-align":e.textAlign,"font-size":e.fontSize+"px","border-style":e.isLine?"solid":"none","border-width":e.borderWidth+"px","border-color":e.borderColor,display:e.isHeader?"block":"none",color:e.headColor,"background-color":e.headBackColor}},bodyTableStyle:function(){var e=this.optionsSetUp;return{"text-align":e.textAlign,"font-size":e.fontSize+"px","border-style":e.isLine?"solid":"none","border-width":e.borderWidth+"px","border-color":e.borderColor,color:e.bodyColor,"background-color":e.tableBgColor}}},watch:{value:{handler:function(e){this.optionsSetUp=e.setup,this.optionsPosition=e.position,this.optionsData=e.data,this.initData()},deep:!0}},mounted:function(){this.optionsSetUp=this.value.setup,this.optionsPosition=this.value.position,this.optionsData=this.value.data,this.initData()},methods:{initData:function(){this.handlerRollFn(),this.handlerHead(),this.handlerData(),this.visConfig()},visConfig:function(){this.options.vis=this.optionsSetUp.vis},handlerRollFn:function(){var e=this.options,t=this.optionsSetUp;e.autoPlay=t.isRoll,e.effect=t.effect,e.interTime=t.interTime,e.delayTime=t.delayTime,e.scroll=t.scroll,this.options=e,this.hackResetFun()},handlerHead:function(){var e=this.optionsSetUp.dynamicAddTable;this.header=e},handlerData:function(){var e=this.optionsData;"staticData"==e.dataType?this.handlerStaticData(e.staticData):this.handlerDynamicData(e.dynamicData,e.refreshTime)},handlerStaticData:function(e){this.list=e},handlerDynamicData:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.list=e,t.hackResetFun()})},hackResetFun:function(){var e=this;this.hackReset=!1,this.$nextTick(function(){e.hackReset=!0})},bodyTable:function(e){var t={};return t["background-color"]=e%2?this.optionsSetUp.eventColor:this.optionsSetUp.oldColor,t},tableRowHeight:function(){var e={};return this.optionsSetUp.rowHeight?(e.height=this.optionsSetUp.rowHeight+"px",e["line-height"]=this.optionsSetUp.rowHeight+"px"):(e.height=this.options.rowHeight,e["line-height"]=this.optionsSetUp.rowHeight+"px"),e},tableFiledWidth:function(e){var t={};return this.optionsSetUp.dynamicAddTable[e].width&&(t.width=this.optionsSetUp.dynamicAddTable[e].width),t}}},r=(a("jZP0"),a("ZrdR")),s=Object(r.a)(l,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{style:e.styleObj},[e.hackReset?a("superslide",{staticClass:"txtScroll-top",attrs:{options:e.options}},[a("div",{staticClass:"title"},e._l(e.header,function(t,i){return a("div",{key:i,style:[e.headerTableStlye,e.tableFiledWidth(i),e.tableRowHeight()]},[e._v("\n "+e._s(t.name)+"\n ")])}),0),e._v(" "),a("div",{staticClass:"bd"},[a("ul",{staticClass:"infoList"},e._l(e.list,function(t,i){return a("li",{key:i,style:e.tableRowHeight()},e._l(e.header,function(o,n){return a("div",{key:n,style:[e.bodyTableStyle,e.bodyTable(i),e.tableFiledWidth(n),e.tableRowHeight()]},[e._v("\n "+e._s(t[o.key])+"\n ")])}),0)}),0)])]):e._e()],1)},[],!1,null,"ff48be56",null);s.options.__file="widgetTable.vue";t.a=s.exports},UNVJ:function(e,t,a){},Ur0O:function(e,t,a){"use strict";var i={name:"WidgetBarStackchart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{grid:{},legend:{textStyle:{color:"#fff"}},xAxis:{type:"category",data:[],axisLabel:{show:!0,textStyle:{color:"#fff"}}},yAxis:{type:"value",data:[],axisLabel:{show:!0,textStyle:{color:"#fff"}}},series:[{data:[],name:"",type:"bar",barGap:"0%",itemStyle:{barBorderRadius:null}}]},optionsStyle:{},optionsData:{},optionsSetup:{},flagInter:null}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsTooltip(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.xNameColor,fontSize:e.xNameFontSize},inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngleX,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t={type:"value",show:e.isShowY,name:e.textNameY,nameTextStyle:{color:e.NameColorY,fontSize:e.NameFontSizeY},inverse:e.reversalY,axisLabel:{show:!0,rotate:e.textAngleY,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:e.isShowSplitLineY,lineStyle:{color:e.splitLineColorY}}};this.options.yAxis=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.tipsFontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsData:function(){var e=this.optionsSetup,t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData,e):this.dynamicDataFn(t.dynamicData,t.refreshTime,e)},setUnique:function(e){var t=[];return e.forEach(function(e){return t.includes(e)?"":t.push(e)}),t},getStackStyle:function(){var e="";return"upDown"==this.optionsSetup.stackStyle&&(e="total"),e},staticDataFn:function(e){for(var t=this.optionsSetup,a=t.customColor,i=[],o=0;o<a.length;o++)i.push(a[o].color);var n=[],l=[],r=[],s=[];for(var u in e)l[u]=e[u].axis,r[u]=e[u].name;for(var c in l=this.setUnique(l),r=this.setUnique(r)){var h=new Array(r.length).fill(0);for(var p in l)for(var d in e)e[d].name==r[c]&&e[d].axis==l[p]&&(h[p]=e[d].data);n.push({name:r[c],type:"bar",data:h,barGap:"0%",stack:this.getStackStyle(),barWidth:t.maxWidth,label:{show:t.isShow,position:"top",distance:10,fontSize:t.fontSize,color:t.subTextColor,fontWeight:t.fontWeight},itemStyle:{normal:{color:i[c],barBorderRadius:t.radius}}}),s.push(r[c])}this.options.series=n,t.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=l,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=l,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value"),this.options.legend.data=s,this.setOptionsLegendName(s)},dynamicDataFn:function(e,t,a){var i=this;e&&(this.ispreview?(this.getEchartData(e,a),this.flagInter=setInterval(function(){i.getEchartData(e,a)},t)):this.getEchartData(e,a))},getEchartData:function(e,t){var a=this;this.queryEchartsData(e).then(function(e){a.renderingFn(t,e)})},renderingFn:function(e,t){for(var a=e.customColor,i=[],o=0;o<a.length;o++)i.push(a[o].color);e.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=t.xAxis,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=t.xAxis,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value");var n=[],l=[];for(var r in t.series)"bar"==t.series[r].type&&n.push({name:t.series[r].name,type:"bar",data:t.series[r].data,barGap:"0%",stack:this.getStackStyle(),barWidth:e.maxWidth,label:{show:e.isShow,position:"top",distance:10,fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight},itemStyle:{normal:{color:i[r],barBorderRadius:e.radius}}}),l.push(t.series[r].name);this.options.series=n,this.options.legend.data=l,this.setOptionsLegendName(l)}}},o=(a("Te6K"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"38f574cf",null);n.options.__file="widgetBarStackChart.vue";t.a=n.exports},Urap:function(e,t,a){"use strict";var i=a("xkAC");a.n(i).a},V47a:function(e,t,a){"use strict";var i={name:"WidgetMarquee",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",color:this.transStyle.color,"font-weight":this.transStyle.fontWeight,text:this.transStyle.text,"font-size":this.transStyle.fontSize+"px","letter-spacing":this.transStyle.letterSpacing+"em",background:this.transStyle.background,"text-align":this.transStyle.textAlign,width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",marqueeSet:this.transStyle.marqueeSet,styleColor:this.transStyle.marqueeQuit}},isBehavior:function(){return this.styleColor.marqueeSet?"start()":"stop()"}},watch:{value:{handler:function(e){this.options=e,this.optionsData=e.data,this.setOptionsData()},deep:!0}},mounted:function(){this.options=this.value,this.optionsData=this.value.data,this.setOptionsData()},methods:{setOptionsData:function(){var e=this.optionsData;"dynamicData"==e.dataType&&this.dynamicDataFn(e.dynamicData,e.refreshTime)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.styleColor.text=e[0].value,t.$forceUpdate()})}}},o=(a("h6gK"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"text",style:this.styleColor},[t("marquee",{attrs:{behavior:"",direction:this.styleColor.direction}},[this._v(this._s(this.styleColor.text))])],1)},[],!1,null,"6b04e136",null);n.options.__file="widgetMarquee.vue";t.a=n.exports},VZcz:function(e,t,a){"use strict";a.r(t);var i=a("cLjf"),o=a.n(i),n=a("hDQ3"),l=a.n(n),r=a("ba/L"),s=a("unDg"),u=[{code:"widget-text",type:"html",label:"文本",icon:"iconziyuan",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"文本框"},{type:"el-input-text",label:"文本内容",name:"text",required:!1,placeholder:"",value:"文本框"},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:"26"},{type:"vue-color",label:"字体颜色",name:"color",required:!1,placeholder:"",value:"#FAD400"},{type:"el-input-number",label:"字体间距",name:"letterSpacing",required:!1,placeholder:"",value:"0"},{type:"vue-color",label:"字体背景",name:"background",required:!1,placeholder:"",value:"rgba(115,170,229,.0)"},{type:"el-select",label:"文字粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-select",label:"对齐方式",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"}],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:"文本框"},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-text",dictKey:"TEXT_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:100},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:40}]}},{code:"widget-marquee",type:"html",label:"滚动文本",icon:"iconhengxiangwenzi",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"跑马灯"},{type:"el-input-text",label:"文本内容",name:"text",required:!1,placeholder:"",value:"滚动文本"},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:"26"},{type:"vue-color",label:"字体颜色",name:"color",required:!1,placeholder:"",value:"#FAD400"},{type:"el-input-number",label:"字体间距",name:"letterSpacing",required:!1,placeholder:"",value:"0"},{type:"vue-color",label:"字体背景",name:"background",required:!1,placeholder:"",value:"rgba(115,170,229,.5)"},{type:"el-select",label:"文字粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:"文本框"},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-text",dictKey:"TEXT_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:100},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:40}]}},{code:"widget-href",type:"html",label:"超链接",icon:"iconchaolianjie",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"超链接"},{type:"el-input-text",label:"文本内容",name:"text",required:!1,placeholder:"",value:"超链接"},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:"26"},{type:"vue-color",label:"字体颜色",name:"color",required:!1,placeholder:"",value:"#FAD400"},{type:"el-input-number",label:"字体间距",name:"letterSpacing",required:!1,placeholder:"",value:"0"},{type:"vue-color",label:"字体背景",name:"background",required:!1,placeholder:"",value:"rgba(115,170,229,.5)"},{type:"el-select",label:"文字粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-select",label:"对齐方式",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-radio-group",label:"跳转方式",name:"jumpMode",required:!1,placeholder:"",selectOptions:[{code:"self",name:"本窗口"},{code:"other",name:"新窗口"}],value:"self"},{type:"el-input-text",label:"超链地址",name:"linkAdress",required:!1,placeholder:"",value:"http://www.baidu.com"}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:100},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:40}]}},{code:"widget-time",type:"html",label:"当前时间",icon:"iconshijian",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"当前时间"},{type:"el-select",label:"时间格式",name:"timeFormat",required:!1,placeholder:"",selectOptions:[{code:"yyyy-MM-dd",name:"日期"},{code:"yyyy-MM-dd hh:mm",name:"日期+时分"},{code:"yyyy-MM-dd hh:mm:ss",name:"日期+时分秒"},{code:"MM-dd",name:"日期无年"},{code:"hh:mm",name:"时分"},{code:"hh:mm:ss",name:"时分秒"},{code:"year-week",name:"日期+星期"},{code:"year-h-m-week",name:"日期+时分+星期"},{code:"year-h-m-s-week",name:"日期+时分秒+星期"},{code:"week",name:"星期"}],value:"yyyy-MM-dd hh:mm:ss"},{type:"el-input-number",label:"字体间距",name:"letterSpacing",required:!1,placeholder:"",value:"0"},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:"26"},{type:"vue-color",label:"字体颜色",name:"color",required:!1,placeholder:"",value:"#FAD400"},{type:"vue-color",label:"字体背景",name:"background",required:!1,placeholder:"",value:"rgba(115,170,229,.5)"},{type:"el-select",label:"文字粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-select",label:"对齐方式",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:300},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:100}]}},{code:"widget-image",type:"html",label:"图片",icon:"icontupian",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"图片"},{type:"el-switch",label:"开启旋转",name:"startRotate",required:!1,placeholder:"",value:!1},{type:"el-slider",label:"透明度",name:"transparency",required:!1,placeholder:"",value:100},{type:"el-input-number",label:"圆角",name:"borderRadius",required:!1,placeholder:"",value:"0"},{type:"custom-upload",label:"图片地址",name:"imageAdress",required:!1,placeholder:"",value:"http://10.108.26.197:9095/file/download/fd20d563-00aa-45e2-b5db-aff951f814ec"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:""}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:300},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-video",type:"html",label:"视频",icon:"iconshipin",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"video"},{type:"el-input-text",label:"地址",name:"videoAdress",required:!1,placeholder:"",value:"https://www.w3school.com.cn//i/movie.ogg"}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:300},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-table",type:"html",label:"表格",icon:"iconbiaoge",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"表格"},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:"16"},{type:"el-input-number",label:"显示行数",name:"vis",required:!1,placeholder:"",value:"5"},{type:"el-input-number",label:"行高",name:"rowHeight",required:!1,placeholder:"",value:"50"},{type:"el-switch",label:"开启滚动",name:"isRoll",required:!1,placeholder:"",value:!0},{type:"el-select",label:"动画效果",name:"effect",required:!1,placeholder:"",selectOptions:[{code:"top",name:"上滚动"},{code:"topLoop",name:"上循环滚动"}],value:"topLoop"},{type:"el-input-number",label:"滚动间隔(毫秒)",name:"interTime",required:!1,placeholder:"",value:2500},{type:"el-input-number",label:"动效时间(毫秒)",name:"delayTime",required:!1,placeholder:"",value:500},{type:"el-input-number",label:"滚动个数",name:"scroll",required:!1,placeholder:"",value:1},{type:"el-switch",label:"边框线",name:"isLine",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"边框宽度",name:"borderWidth",required:!1,placeholder:"",value:1},{type:"vue-color",label:"边框颜色",name:"borderColor",required:!1,placeholder:"",value:"#fff"},[{name:"表头设置",list:[{type:"el-switch",label:"表头显隐",name:"isHeader",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"表头颜色",name:"headColor",require:!1,placeholder:"",value:"#fff"},{type:"vue-color",label:"表头背景",name:"headBackColor",require:!1,placeholder:"",value:"#0a73ff"}]},{name:"表体设置",list:[{type:"vue-color",label:"文字颜色",name:"bodyColor",required:!1,placeholder:"",value:"#fff"},{type:"vue-color",label:"表格背景色",name:"tableBgColor",require:!1,placeholder:"",value:""},{type:"vue-color",label:"奇行颜色",name:"oldColor",require:!1,placeholder:"",value:"#0a2732"},{type:"vue-color",label:"偶行颜色",name:"eventColor",required:!1,placeholder:"",value:"#003b51"}]}],{type:"dynamic-add-table",label:"",name:"dynamicAddTable",required:!1,placeholder:"",value:[{name:"日期",key:"date",width:"50%"},{name:"姓名",key:"name",width:"50%"},{name:"地址",key:"address",width:"200%"}]}],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:3e4},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0001"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0002"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0003"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0004"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0005"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0006"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0007"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-table",dictKey:"TEXT_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:600},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:300}]}},{code:"widget-iframe",type:"html",label:"内联框架",icon:"iconkuangjia",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"iframe"},{type:"el-input-text",label:"地址",name:"iframeAdress",required:!1,placeholder:"",value:"https://report.anji-plus.com/index.html"}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:300},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-barchart",type:"chart",label:"柱状图",icon:"iconzhuzhuangtu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"柱状图"},{type:"el-switch",label:"竖展示",name:"verticalShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:10},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5},{type:"el-slider",label:"最小高度",name:"minHeight",require:!1,placeholder:"",value:0}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"rgba(30, 144, 255, 1)"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"textAngle",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"数值间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowY",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"textNameY",require:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"ytextAngle",required:!1,placeholder:"",value:0},{type:"el-switch",label:"缩放",name:"scale",require:!1,placeholder:"",value:!1},{type:"el-input-number",label:"均分",name:"splitNumber",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"距离",name:"distance",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体字号",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体字号",name:"tipFontSize",required:!1,placeholder:""},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:""}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#ff7f50"},{color:"#87cefa"},{color:"#da70d6"},{color:"#32cd32"},{color:"#6495ed"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"苹果",data:1e3},{axis:"三星",data:2229},{axis:"小米",data:3879},{axis:"oppo",data:2379},{axis:"vivo",data:4079}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-barchart",dictKey:"BAR_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-gradient-color-barchart",type:"chart",label:"柱状图-渐变色",icon:"iconzhuzhuangtu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"柱形图-渐变色"},{type:"el-switch",label:"竖展示",name:"verticalShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:10},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:22},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#90979c"},{type:"el-input-text",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"textAngle",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"数值间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowY",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"textNameY",require:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"namefontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"ytextAngle",required:!1,placeholder:"",value:0},{type:"el-switch",label:"缩放",name:"scale",require:!1,placeholder:"",value:!1},{type:"el-input-number",label:"均分",name:"splitNumber",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"距离",name:"distance",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipsFontSize",required:!1,placeholder:"",value:16},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"#ff7f50"}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"渐变色",list:[{type:"vue-color",label:"0%处",name:"bar0color",required:!1,placeholder:"",value:"rgba(0,244,255,1)"},{type:"vue-color",label:"100%处",name:"bar100color",required:!1,placeholder:"",value:"rgba(0,77,167,1)"},{type:"vue-color",label:"阴影颜色",name:"shadowColor",required:!1,placeholder:"",value:"rgba(0,160,221,1)"},{type:"el-input-number",label:"模糊系数",name:"shadowBlur",required:!1,placeholder:"",value:4}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"苹果",data:1e3},{axis:"三星",data:2229},{axis:"小米",data:3879},{axis:"oppo",data:2379},{axis:"vivo",data:4079}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-barchart",dictKey:"BAR_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-linechart",type:"chart",label:"折线图",icon:"icontubiaozhexiantu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"折线图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"折线设置",list:[{type:"el-switch",label:"标记点",name:"markPoint",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"点大小",name:"pointSize",required:!1,placeholder:"",value:10},{type:"el-switch",label:"平滑曲线",name:"smoothCurve",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"面积堆积",name:"area",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"面积厚度",name:"areaThickness",required:!1,placeholder:"",value:5},{type:"el-slider",label:"线条宽度",name:"lineWidth",required:!1,placeholder:"",value:4}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!1},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"textAngle",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"数值间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowY",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"textNameY",require:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"namefontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"ytextAngle",required:!1,placeholder:"",value:0},{type:"el-switch",label:"缩放",name:"scale",require:!1,placeholder:"",value:!1},{type:"el-input-number",label:"均分",name:"splitNumber",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-text",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"",value:""}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#1E90FF"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"苹果",data:1e3},{axis:"三星",data:2229},{axis:"小米",data:3879},{axis:"oppo",data:2379},{axis:"vivo",data:4079}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-linechart",dictKey:"LINE_PROPERTIES",relactiveDomValue:"dynamicData"}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-barlinechart",type:"chart",label:"柱线图",icon:"iconzhuxiantu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"柱线图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"折线设置",list:[{type:"el-switch",label:"标记点",name:"markPoint",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"点大小",name:"pointSize",required:!1,placeholder:"",value:5},{type:"el-switch",label:"平滑曲线",name:"smoothCurve",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"面积堆积",name:"area",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"面积厚度",name:"areaThickness",required:!1,placeholder:"",value:5},{type:"el-slider",label:"线条宽度",name:"lineWidth",required:!1,placeholder:"",value:3}]},{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:10},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5},{type:"el-slider",label:"最小高度",name:"minHeight",require:!1,placeholder:"",value:0}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"textAngle",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"数值间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"左显示",name:"isShowYLeft",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"左坐标名",name:"textNameYLeft",require:!1,placeholder:"",value:""},{type:"vue-color",label:"左坐标名颜色",name:"nameColorYLeft",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"左坐标字号",name:"namefontSizeYLeft",required:!1,placeholder:"",value:14},{type:"el-input-number",label:"左均分",name:"splitNumberLeft",required:!1,placeholder:"",value:""},{type:"el-switch",label:"右显示",name:"isShowYRight",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"右坐标名",name:"textNameYRight",require:!1,placeholder:"",value:""},{type:"vue-color",label:"右坐标名颜色",name:"nameColorYRight",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"右坐标字号",name:"namefontSizeYRight",required:!1,placeholder:"",value:14},{type:"el-input-number",label:"右均分",name:"splitNumberRight",required:!1,placeholder:"",value:""},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"折线数值设定",list:[{type:"el-switch",label:"显示",name:"isShowLine",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"距离",name:"distanceLine",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体字号",name:"fontSizeLine",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColorLine",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeightLine",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"柱体数值设定",list:[{type:"el-switch",label:"显示",name:"isShowBar",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"距离",name:"distanceBar",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体字号",name:"fontSizeBar",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColorBar",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeightBar",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipFontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"",value:"#e68b55"}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#00F4FFFF"},{color:"#e68b55"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"1月",bar:2.6,line:2},{axis:"2月",bar:5.9,line:2.2},{axis:"3月",bar:9,line:3.3},{axis:"4月",bar:26.4,line:4.5},{axis:"5月",bar:28.7,line:6.3},{axis:"6月",bar:70.7,line:10.2},{axis:"7月",bar:175.6,line:20.3},{axis:"8月",bar:182.2,line:23.4},{axis:"9月",bar:48.7,line:23},{axis:"10月",bar:18.8,line:16.5},{axis:"11月",bar:6,line:12},{axis:"12月",bar:2.3,line:6.2}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-barlinechart",dictKey:"BAR_LINE_PROPERTIES",relactiveDomValue:"dynamicData"}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:250}]}},{code:"widget-piechart",type:"chart",label:"饼图",icon:"iconicon_tubiao_bingtu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"饼图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},{type:"el-select",label:"饼图样式",name:"piechartStyle",required:!1,placeholder:"",selectOptions:[{code:"shixin",name:"实心饼图"},{code:"kongxin",name:"空心饼图"}],value:"shixin"},[{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:12}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"数值",name:"numberValue",require:!1,placeholder:"",value:!0},{type:"el-switch",label:"百分比",name:"percentage",require:!1,placeholder:"",value:!1},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"网格线颜色",name:"lineColor",required:!1,placeholder:"",value:""}]},{name:"图例操作",list:[{type:"el-switch",label:"图例",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-text",label:"字体大小",name:"lengedFontSize",required:!1,placeholder:"",value:16},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:15},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:""},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:""},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:""}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#0CD2E6"},{color:"#00BFA5"},{color:"#FFC722"},{color:"#886EFF"},{color:"#008DEC"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{value:1048,name:"搜索引擎"},{value:735,name:"直接访问"},{value:580,name:"邮件营销"},{value:484,name:"联盟广告"},{value:300,name:"视频广告"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-piechart",relactiveDomValue:"dynamicData",dictKey:"PIE_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-funnel",type:"chart",label:"漏斗图",icon:"iconloudoutu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"漏斗图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},{type:"el-switch",label:"翻转",name:"ending",require:!1,placeholder:"",value:!1},[{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!1},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"rgba(30, 144, 255, 1)"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"subTextFontSize",required:!1,placeholder:"",value:16}]},{name:"数值设置",list:[{type:"el-switch",label:"显示",name:"isShow",require:!1,placeholder:"",value:!0},{type:"el-input-number",label:"字体字号",name:"fontSize",require:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"color",require:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",require:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"图例操作",list:[{type:"el-switch",label:"显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:16},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:15},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体字号",name:"tipFontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"",value:""}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#0CD2E6"},{color:"#00BFA5"},{color:"#FFC722"},{color:"#886EFF"},{color:"#008DEC"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{value:2,name:"访问"},{value:5,name:"咨询"},{value:20,name:"订单"},{value:40,name:"点击"},{value:125,name:"展现"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-funnel",relactiveDomValue:"dynamicData",dictKey:"PIE_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:500}]}},{code:"widget-gauge",type:"chart",label:"仪表盘",icon:"iconyibiaopan",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"仪表盘"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"圆环设置",list:[{type:"el-switch",label:"显示",name:"ringShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"圆环宽度",name:"pieWeight",require:!1,placeholder:"",value:10}]},{name:"0%~30%渐变色",list:[{type:"vue-color",label:"0处颜色",name:"color30p0",required:!1,placeholder:"",value:"rgba(0, 237, 3,0.1)"},{type:"vue-color",label:"0.5处颜色",name:"color30p5",required:!1,placeholder:"",value:"rgba(0, 237, 3,0.6)"},{type:"vue-color",label:"1处颜色",name:"color30p10",required:!1,placeholder:"",value:"rgba(0, 237, 3,1)"}]},{name:"30%~70%渐变色",list:[{type:"vue-color",label:"0处颜色",name:"color70p0",required:!1,placeholder:"",value:"rgba(255, 184, 0,0.1)"},{type:"vue-color",label:"0.5处颜色",name:"color70p5",required:!1,placeholder:"",value:"rgba(255, 184, 0,0.6)"},{type:"vue-color",label:"1处颜色",name:"color70p10",required:!1,placeholder:"",value:"rgba(255, 184, 0,1)"}]},{name:"70%~100%渐变色",list:[{type:"vue-color",label:"0处颜色",name:"color100p0",required:!1,placeholder:"",value:"rgba(175, 36, 74,0.1)"},{type:"vue-color",label:"0.5处颜色",name:"color100p5",required:!1,placeholder:"",value:"rgba(255, 36, 74,0.6)"},{type:"vue-color",label:"1处颜色",name:"color100p10",required:!1,placeholder:"",value:"rgba(255, 36, 74,1)"}]},{name:"刻度线",list:[{type:"el-switch",label:"显示",name:"tickShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"距离",name:"tickDistance",require:!1,placeholder:"",value:0},{type:"el-input-number",label:"长度",name:"tickLength",require:!1,placeholder:"",value:10},{type:"el-input-number",label:"宽度",name:"tickWidth",require:!1,placeholder:"",value:2}]},{name:"指标线",list:[{type:"el-switch",label:"显示",name:"splitShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"距离",name:"splitDistance",require:!1,placeholder:"",value:0},{type:"el-input-number",label:"长度",name:"splitLength",require:!1,placeholder:"",value:14},{type:"el-input-number",label:"宽度",name:"splitWidth",require:!1,placeholder:"",value:4}]},{name:"指标",list:[{type:"el-switch",label:"显示",name:"labelShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"距离",name:"labelDistance",require:!1,placeholder:"",value:0},{type:"el-input-number",label:"字号",name:"labelFontSize",require:!1,placeholder:"",value:10},{type:"vue-color",label:"颜色",name:"labelColor",required:!1,placeholder:"",value:"#fff"}]},{name:"数值",list:[{type:"vue-color",label:"颜色",name:"labelColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字号",name:"labelFontSize",require:!1,placeholder:"",value:14},{type:"el-select",label:"字体粗细",name:"labelFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{num:50}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-text",dictKey:"TEXT_PROPERTIES",relactiveDomValue:"dynamicData",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-map",type:"chart",label:"中国地图",icon:"iconzhongguoditu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"迁徙图"}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:600},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:400}]}},{code:"WidgetPieNightingaleRoseArea",type:"chart",label:"南丁格尔玫瑰图",icon:"iconnandinggeermeiguitu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"南丁格尔玫瑰图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},{type:"el-select",label:"饼图模式",name:"nightingleRosetype",required:!1,placeholder:"",selectOptions:[{code:"area",name:"面积模式"},{code:"radius",name:"半径模式"}],value:"area"},[{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:12}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"数值",name:"numberValue",require:!1,placeholder:"",value:!0},{type:"el-switch",label:"百分比",name:"percentage",require:!1,placeholder:"",value:!1},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"网格线颜色",name:"lineColor",required:!1,placeholder:"",value:""}]},{name:"图例操作",list:[{type:"el-switch",label:"图例",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体大小",name:"lengedFontSize",required:!1,placeholder:"",value:16},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:15},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:""},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:""},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:""}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#FF801C"},{color:"#F5FF46"},{color:"#00FE65"},{color:"#00FEFF"},{color:"#ffa800"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{value:1048,name:"搜索引擎"},{value:735,name:"直接访问"},{value:580,name:"邮件营销"},{value:484,name:"联盟广告"},{value:300,name:"视频广告"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-piechart",dictKey:"PIE_PROPERTIES",relactiveDomValue:"dynamicData",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widgetPiePercentageChart",type:"chart",label:"百分比图",icon:"iconbaifenbi",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"百分比图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"数值设置",list:[{type:"vue-color",label:"数值颜色",name:"textNumColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字体",name:"textNumFontSize",required:!1,placeholder:"",value:40},{type:"el-select",label:"字体粗细",name:"textNumFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"vue-color",label:"%号颜色",name:"textPerColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"%号字体",name:"textPerFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体粗细",name:"textPerFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"圆环设置",list:[{type:"el-input-number",label:"刻度数量",name:"lineNumber",required:!1,placeholder:"",value:8},{type:"el-input-number",label:"刻度长度",name:"lineLength",required:!1,placeholder:"",value:19},{type:"el-input-number",label:"刻度宽度",name:"lineWidth",required:!1,placeholder:"",value:2},{type:"vue-color",label:"刻度颜色",name:"lineColor",required:!1,placeholder:"",value:"#061740"}]},{name:"渐变色",list:[{type:"vue-color",label:"0%处颜色",name:"color0Start",required:!1,placeholder:"",value:"#4FADFD"},{type:"vue-color",label:"100%颜色",name:"color100End",required:!1,placeholder:"",value:"#28E8FA"},{type:"vue-color",label:"余处颜色",name:"colorsurplus",required:!1,placeholder:"",value:"#173164"}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{num:60}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-piechart",dictKey:"TEXT_PROPERTIES",relactiveDomValue:"dynamicData",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:300}]}},{code:"widgetAirBubbleMap",type:"chart",label:"气泡地图",icon:"iconzhongguoditu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"气泡地图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:"#0F1C3C"},[{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:12}]},{name:"字体设置",list:[{type:"el-input-number",label:"文字大小",name:"fontTextSize",required:!1,placeholder:"",value:15},{type:"vue-color",label:"文字颜色",name:"fontTextColor",required:!1,placeholder:"",value:"#D4EEFF"},{type:"el-select",label:"文字粗细",name:"fontTextWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"数值大小",name:"fontDataSize",required:!1,placeholder:"",value:15},{type:"vue-color",label:"数值颜色",name:"fontDataColor",required:!1,placeholder:"",value:"#D4EEFF"},{type:"el-select",label:"数值粗细",name:"fontDataWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"气泡设置",list:[{type:"el-input-number",label:"最小半径",name:"fontminSize4Pin",required:!1,placeholder:"",value:20},{type:"el-input-number",label:"最大半径",name:"fontmaxSize4Pin",required:!1,placeholder:"",value:100}]},{name:"地图块颜色",list:[{type:"vue-color",label:"0%处颜色",name:"font0PreColor",required:!1,placeholder:"",value:"#073684"},{type:"vue-color",label:"100%颜色",name:"font100PreColor",required:!1,placeholder:"",value:"#061E3D"},{type:"vue-color",label:"高亮渐变色",name:"fontHighlightColor",required:!1,placeholder:"",value:"#2B91B7"}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{name:"南海诸岛",value:1},{name:"北京",value:524},{name:"天津",value:14},{name:"上海",value:150},{name:"重庆",value:75},{name:"河北",value:13},{name:"河南",value:83},{name:"云南",value:11},{name:"辽宁",value:19},{name:"黑龙江",value:15},{name:"湖南",value:69},{name:"安徽",value:260},{name:"山东",value:39},{name:"新疆",value:4},{name:"江苏",value:31},{name:"浙江",value:104},{name:"江西",value:36},{name:"湖北",value:1052},{name:"广西",value:33},{name:"甘肃",value:347},{name:"山西",value:8},{name:"内蒙古",value:157},{name:"陕西",value:22},{name:"吉林",value:4},{name:"福建",value:36},{name:"贵州",value:39},{name:"广东",value:996},{name:"青海",value:27},{name:"西藏",value:31},{name:"四川",value:46},{name:"宁夏",value:16},{name:"海南",value:22},{name:"台湾",value:6},{name:"香港",value:2},{name:"澳门",value:9}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-piechart",dictKey:"MAP_PROPERTIES",relactiveDomValue:"dynamicData",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:600},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:400}]}},{code:"widgetBarStackChart",type:"chart",label:"柱状堆叠图",icon:"iconbianzu23",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"柱状堆叠图"},{type:"el-switch",label:"竖展示",name:"verticalShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},{type:"el-select",label:"堆叠样式",name:"stackStyle",required:!1,placeholder:"",selectOptions:[{code:"leftRight",name:"左右堆叠"},{code:"upDown",name:"上下堆叠"}],value:"leftRight"},[{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:20},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"rgba(30, 144, 255, 1)"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:0,value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"X轴别名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"别名颜色",name:"xNameColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"别名字号",name:"xNameFontSize",required:!1,placeholder:"",value:14},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"el-slider",label:"文字角度",name:"textAngleX",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"文字间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"vue-color",label:"文字颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"文字字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowY",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"Y轴别名",name:"textNameY",require:!1,placeholder:"",value:""},{type:"vue-color",label:"别名颜色",name:"NameColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"别名字号",name:"NameFontSizeY",required:!1,placeholder:"",value:14},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"el-slider",label:"文字角度",name:"textAngleY",required:!1,placeholder:"",value:0},{type:"vue-color",label:"文字颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"文字字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipsFontSize",required:!1,placeholder:"",value:16},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:""}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#ff7f50"},{color:"#87cefa"},{color:"#da70d6"},{color:"#32cd32"},{color:"#6495ed"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"2021-07-25",name:"A",data:"12"},{axis:"2021-07-25",name:"B",data:"20"},{axis:"2021-07-26",name:"B",data:"5"},{axis:"2021-07-27",name:"A",data:"15"},{axis:"2021-07-27",name:"B",data:"30"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-stackchart",dictKey:"STACK_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:250}]}},{code:"widgetLineStackChart",type:"chart",label:"折线堆叠图",icon:"iconduidietu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"折线堆叠图"},{type:"el-switch",label:"竖展示",name:"verticalShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"折线设置",list:[{type:"el-switch",label:"标记点",name:"markPoint",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"点大小",name:"pointSize",required:!1,placeholder:"",value:5},{type:"el-switch",label:"平滑曲线",name:"smoothCurve",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"面积堆积",name:"area",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"面积厚度",name:"areaThickness",required:!1,placeholder:"",value:5},{type:"el-slider",label:"线条宽度",name:"lineWidth",required:!1,placeholder:"",value:4}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"rgba(30, 144, 255, 1)"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:0,value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"X轴别名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"别名颜色",name:"xNameColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"别名字号",name:"xNameFontSize",required:!1,placeholder:"",value:14},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"el-slider",label:"文字角度",name:"textAngleX",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"文字间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"vue-color",label:"文字颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"文字字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowY",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"Y轴别名",name:"textNameY",require:!1,placeholder:"",value:""},{type:"vue-color",label:"别名颜色",name:"NameColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"别名字号",name:"NameFontSizeY",required:!1,placeholder:"",value:14},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"el-slider",label:"文字角度",name:"textAngleY",required:!1,placeholder:"",value:0},{type:"vue-color",label:"文字颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"文字字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipsFontSize",required:!1,placeholder:"",value:16},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:""}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#ff7f50"},{color:"#87cefa"},{color:"#da70d6"},{color:"#32cd32"},{color:"#6495ed"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"2021-07-25",name:"A",data:"12"},{axis:"2021-07-25",name:"B",data:"20"},{axis:"2021-07-26",name:"B",data:"5"},{axis:"2021-07-27",name:"A",data:"15"},{axis:"2021-07-27",name:"B",data:"30"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-stackchart",dictKey:"STACK_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:250}]}},{code:"widgetBarCompareChart",type:"chart",label:"柱状对比图",icon:"iconduibitupu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"柱状对比图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:15},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:0,value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"左X轴设置",list:[{type:"el-switch",label:"显示",name:"hideXLeft",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"数值间隔",name:"splitNumberLeft",required:!1,placeholder:"",value:""},{type:"vue-color",label:"数值颜色",name:"XcolorLeft",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeXLeft",required:!1,placeholder:"",value:14},{type:"el-switch",label:"刻度线",name:"tickLineLeft",require:!1,placeholder:"",value:!1},{type:"el-switch",label:"X轴线",name:"xLineLeft",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorXLeft",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"竖分割线",name:"SplitLineLeft",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"SplitLineColorLeft",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"分割线宽度",name:"SplitLinefontSizeLeft",required:!1,placeholder:"",value:1},{type:"el-switch",label:"边框线",name:"frameLineLeft",require:!1,placeholder:"",value:!1}]},{name:"右X轴设置",list:[{type:"el-switch",label:"显示",name:"hideXRight",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"数值间隔",name:"splitNumberRight",required:!1,placeholder:"",value:""},{type:"vue-color",label:"数值颜色",name:"XcolorRight",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeXRight",required:!1,placeholder:"",value:14},{type:"el-switch",label:"刻度线",name:"tickLineRight",require:!1,placeholder:"",value:!1},{type:"el-switch",label:"X轴线",name:"xLineRight",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorXRight",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"竖分割线",name:"SplitLineRight",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"SplitLineColorRight",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"分割线宽度",name:"SplitLinefontSizeRight",required:!1,placeholder:"",value:1},{type:"el-switch",label:"边框线",name:"frameLineRight",require:!1,placeholder:"",value:!1}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"hideY",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"el-select",label:"数值对齐",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-switch",label:"刻度线",name:"tickLineY",require:!1,placeholder:"",value:!1},{type:"el-switch",label:"Y轴线",name:"lineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipsFontSize",required:!1,placeholder:"",value:16},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:""}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左右边距(像素)",name:"marginLeftRight",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#36c5e7"},{color:"#e68b55"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"07-25",name:"success",data:"2"},{axis:"07-25",name:"fail",data:"10"},{axis:"07-26",name:"success",data:"5"},{axis:"07-26",name:"fail",data:"20"},{axis:"07-27",name:"success",data:"15"},{axis:"07-27",name:"fail",data:"30"},{axis:"07-28",name:"success",data:"10"},{axis:"07-28",name:"fail",data:"12"},{axis:"07-29",name:"success",data:"9"},{axis:"07-29",name:"fail",data:"16"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-stackchart",dictKey:"STACK_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:250}]}},{code:"widgetLineCompareChart",type:"chart",label:"折线对比图",icon:"iconzhexian",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"折线对比图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"折线设置",list:[{type:"el-switch",label:"标记点",name:"markPoint",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"点大小",name:"pointSize",required:!1,placeholder:"",value:5},{type:"el-switch",label:"平滑曲线",name:"smoothCurve",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"面积堆积",name:"area",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"面积厚度",name:"areaThickness",required:!1,placeholder:"",value:5},{type:"el-slider",label:"线条宽度",name:"lineWidth",required:!1,placeholder:"",value:2}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:0,value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"isShowX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"el-switch",label:"数值居中",name:"boundaryX",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"数值颜色",name:"colorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-input-number",label:"数值间隔",name:"splitNumberX",required:!1,placeholder:"",value:""},{type:"el-switch",label:"刻度线",name:"tickLineX",require:!1,placeholder:"",value:!0},{type:"el-switch",label:"X轴线",name:"lineX",require:!1,placeholder:"",value:!0},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"上y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowYTop",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"textNameYTop",require:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorYTop",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"namefontSizeYTop",required:!1,placeholder:"",value:14},{type:"el-switch",label:"缩放",name:"scaleYTop",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"数值切分",name:"splitNumberYTop",required:!1,placeholder:"",value:""},{type:"vue-color",label:"数值颜色",name:"colorYTop",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeYTop",required:!1,placeholder:"",value:14},{type:"el-switch",label:"刻度线",name:"tickLineYTop",require:!1,placeholder:"",value:!0},{type:"el-switch",label:"y轴线",name:"lineYTop",require:!1,placeholder:"",value:!0},{type:"vue-color",label:"轴颜色",name:"lineColorYTop",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线",name:"splitLineYTop",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorYTop",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"分割线宽度",name:"splitLinefontSizeYTop",required:!1,placeholder:"",value:1}]},{name:"下y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowYBottom",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"textNameYBottom",require:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorYBottom",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"namefontSizeYBottom",required:!1,placeholder:"",value:14},{type:"el-switch",label:"缩放",name:"scaleYBottom",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"数值切分",name:"splitNumberYBottom",required:!1,placeholder:"",value:""},{type:"vue-color",label:"数值颜色",name:"colorYBottom",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeYBottom",required:!1,placeholder:"",value:14},{type:"el-switch",label:"刻度线",name:"tickLineYBottom",require:!1,placeholder:"",value:!0},{type:"el-switch",label:"y轴线",name:"lineYBottom",require:!1,placeholder:"",value:!0},{type:"vue-color",label:"轴颜色",name:"lineColorYBottom",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线",name:"splitLineYBottom",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorYBottom",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"分割线宽度",name:"splitLinefontSizeYBottom",required:!1,placeholder:"",value:1}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-switch",label:"显示",name:"tipShow",required:!1,placeholder:"",value:!0},{type:"el-select",label:"类型",name:"tipType",required:!1,placeholder:"",selectOptions:[{code:"line",name:"线形"},{code:"cross",name:"十字形"}],value:"line"},{type:"vue-color",label:"颜色",name:"tipColor",required:!1,placeholder:"#e68b55"}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:20},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:50},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:40}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#36c5e7"},{color:"#e68b55"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"07-25",name:"success",data:"2"},{axis:"07-25",name:"fail",data:"10"},{axis:"07-26",name:"success",data:"5"},{axis:"07-26",name:"fail",data:"20"},{axis:"07-27",name:"success",data:"15"},{axis:"07-27",name:"fail",data:"30"},{axis:"07-28",name:"success",data:"10"},{axis:"07-28",name:"fail",data:"12"},{axis:"07-29",name:"success",data:"9"},{axis:"07-29",name:"fail",data:"16"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-stackchart",dictKey:"STACK_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widgetDecoratePieChart",type:"chart",label:"装饰饼图",icon:"iconicon_tubiao_bingtu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"静态装饰饼图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"最外环设置",list:[{type:"el-switch",label:"显示",name:"isLastRingShow",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"0%颜色",name:"lastRing0Color",required:!1,placeholder:"",value:"#4FADFD"},{type:"vue-color",label:"100%颜色",name:"lastRing100Color",required:!1,placeholder:"",value:"#28E8FA"}]},{name:"八分环设置",list:[{type:"vue-color",label:"颜色",name:"eightColor",required:!1,placeholder:"",value:"#4FADFD"}]},{name:"虚线环设置",list:[{type:"el-input-number",label:"虚线数量",name:"dottedNum",required:!1,placeholder:"",value:40},{type:"vue-color",label:"颜色",name:"dottedColor",required:!1,placeholder:"",value:"#28E8FA"}]},{name:"三分环设置",list:[{type:"vue-color",label:"一段颜色",name:"three1Color",required:!1,placeholder:"",value:"#fc8d89"},{type:"vue-color",label:"二段颜色",name:"three2Color",required:!1,placeholder:"",value:"#46d3f3"},{type:"vue-color",label:"三段颜色",name:"three3Color",required:!1,placeholder:"",value:"rgba(203,203,203,.2)"}]},{name:"外指标环设置",list:[{type:"el-switch",label:"环显示",name:"isOutRingShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"环颜色",name:"outRingColor",required:!1,placeholder:"",value:"#0dc2fe"},{type:"el-input-number",label:"环宽度",name:"outRingWidth",required:!1,placeholder:"",value:1},{type:"el-switch",label:"指标线显示",name:"isOutSplitShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"指标线数量",name:"outSplitNum",required:!1,placeholder:"",value:30},{type:"el-input-number",label:"指标线长度",name:"outSplitLength",required:!1,placeholder:"",value:32},{type:"el-input-number",label:"指标线宽度",name:"outSplitWidth",required:!1,placeholder:"",value:2},{type:"vue-color",label:"指标线颜色",name:"outSplitColor",required:!1,placeholder:"",value:"#0dc2fe"},{type:"el-switch",label:"刻度线显示",name:"isOutTickShow",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"刻度线数量",name:"outTickNum",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"刻度线长度",name:"outTickLength",required:!1,placeholder:"",value:20},{type:"el-input-number",label:"刻度线宽度",name:"outTickWidth",required:!1,placeholder:"",value:2},{type:"vue-color",label:"刻度线颜色",name:"outTickColor",required:!1,placeholder:"",value:"#0dc2fe"}]},{name:"里指标环设置",list:[{type:"el-switch",label:"环显示",name:"isInRingShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"环颜色",name:"inRingColor",required:!1,placeholder:"",value:"#0dc2fe"},{type:"el-input-number",label:"环宽度",name:"inRingWidth",required:!1,placeholder:"",value:1},{type:"el-switch",label:"指标线显示",name:"isInSplitShow",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"指标线数量",name:"inSplitNum",required:!1,placeholder:"",value:30},{type:"el-input-number",label:"指标线长度",name:"inSplitLength",required:!1,placeholder:"",value:20},{type:"el-input-number",label:"指标线宽度",name:"inSplitWidth",required:!1,placeholder:"",value:2},{type:"vue-color",label:"指标线颜色",name:"inSplitColor",required:!1,placeholder:"",value:"#0dc2fe"},{type:"el-switch",label:"刻度线显示",name:"isInTickShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"刻度线数量",name:"inTickNum",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"刻度线长度",name:"inTickLength",required:!1,placeholder:"",value:20},{type:"el-input-number",label:"刻度线宽度",name:"inTickWidth",required:!1,placeholder:"",value:2},{type:"vue-color",label:"刻度线颜色",name:"inTickColor",required:!1,placeholder:"",value:"#0dc2fe"}]},{name:"环外环设置",list:[{type:"el-switch",label:"显示",name:"isRingOnRingShow",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"颜色",name:"ringOnRingColor",required:!1,placeholder:"",value:"#4FADFD"}]},{name:"中饼图设置",list:[{type:"el-input-number",label:"半径",name:"pieWidth",required:!1,placeholder:"",value:40},{type:"vue-color",label:"颜色",name:"pieColor",required:!1,placeholder:"",value:"#0dc2fe"},{type:"vue-color",label:"边框颜色",name:"pieBorderColor",required:!1,placeholder:"",value:"#3D4268"},{type:"el-select",label:"分块",name:"pieBlocks",required:!1,placeholder:"",selectOptions:[{code:"four",name:"十字星"},{code:"five",name:"五角星"},{code:"six",name:"六芒星"}],value:"six"}]}]],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:300}]}},{code:"widgetMoreBarLineChart",type:"chart",label:"多柱线图",icon:"iconzhuxiantu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"多柱线图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"折线设置",list:[{type:"el-switch",label:"标记点",name:"markPoint",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"点大小",name:"pointSize",required:!1,placeholder:"",value:3},{type:"el-switch",label:"平滑曲线",name:"smoothCurve",required:!1,placeholder:"",value:!1},{type:"el-switch",label:"面积堆积",name:"area",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"面积厚度",name:"areaThickness",required:!1,placeholder:"",value:5},{type:"el-slider",label:"线条宽度",name:"lineWidth",required:!1,placeholder:"",value:3}]},{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:10},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:0,value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"textAngle",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"数值间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"左显示",name:"isShowYLeft",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"左坐标名",name:"textNameYLeft",require:!1,placeholder:"",value:""},{type:"vue-color",label:"左坐标名颜色",name:"nameColorYLeft",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"左坐标字号",name:"namefontSizeYLeft",required:!1,placeholder:"",value:14},{type:"el-switch",label:"右显示",name:"isShowYRight",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"右坐标名",name:"textNameYRight",require:!1,placeholder:"",value:""},{type:"vue-color",label:"右坐标名颜色",name:"nameColorYRight",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"右坐标字号",name:"namefontSizeYRight",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"折线数值设定",list:[{type:"el-switch",label:"显示",name:"isShowLine",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"距离",name:"distanceLine",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体字号",name:"fontSizeLine",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColorLine",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeightLine",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"柱体数值设定",list:[{type:"el-switch",label:"显示",name:"isShowBar",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"距离",name:"distanceBar",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体字号",name:"fontSizeBar",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColorBar",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeightBar",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipFontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"",value:"#e68b55"}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#4bdfff"},{color:"#5dc1fd"},{color:"#55f49c"},{color:"#ffa43a"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{date:"2014",unsales:400,manus:300,rework:400,sales:4.2},{date:"2015",unsales:400,manus:500,rework:300,sales:3.6},{date:"2016",unsales:300,manus:500,rework:500,sales:5.8},{date:"2017",unsales:300,manus:500,rework:700,sales:3.4},{date:"2018",unsales:400,manus:400,rework:1e3,sales:2.5},{date:"2019",unsales:400,manus:500,rework:500,sales:5.8},{date:"2020",unsales:300,manus:400,rework:600,sales:7.6},{date:"2021",unsales:300,manus:600,rework:400,sales:3.4}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-barlinechart",dictKey:"BAR_LINE_PROPERTIES",relactiveDomValue:"dynamicData"}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:300}]}},{code:"widgetWordCloud",type:"chart",label:"词云图",icon:"iconciyuntu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"词云图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:12}]},{name:"词云范围",list:[{type:"el-input-number",label:"最大范围",name:"maxRangeSize",required:!1,placeholder:"",value:25},{type:"el-input-number",label:"最小范围",name:"minRangeSize",required:!1,placeholder:"",value:2}]},{name:"词云角度",list:[{type:"el-input-number",label:"最大角度",name:"maxRotationRange",required:!1,placeholder:"",value:90},{type:"el-input-number",label:"最小角度",name:"minRotationRange",required:!1,placeholder:"",value:-45}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"",value:"#00FEFF"}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:6e4},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{name:"占道",value:284},{name:"水质",value:71},{name:"无水",value:71},{name:"停供",value:21},{name:"停气",value:11},{name:"占道",value:11},{name:"Nancy",value:520},{name:"Jayfee",value:666},{name:"生活资源",value:999},{name:"供热管理",value:888},{name:"供气质量",value:777},{name:"社会保障",value:407},{name:"交通运输",value:516},{name:"城市交通",value:515},{name:"环境保护",value:483},{name:"城乡建设",value:449},{name:"公共安全",value:406},{name:"供热管理",value:375},{name:"市容环卫",value:355},{name:"粉尘污染",value:335},{name:"噪声污染",value:324},{name:"医疗卫生",value:284},{name:"供热发展",value:254},{name:"房地产管理",value:462},{name:"生活噪音",value:253},{name:"城市供电",value:223},{name:"大气污染",value:223},{name:"房屋安全",value:223},{name:"文化活动",value:223},{name:"拆迁管理",value:223},{name:"公共设施",value:223},{name:"供气质量",value:223},{name:"供电管理",value:223},{name:"燃气管理",value:152},{name:"教育管理",value:152},{name:"医疗纠纷",value:152},{name:"执法监督",value:152},{name:"设备安全",value:152},{name:"政务建设",value:152},{name:"宏观经济",value:152},{name:"教育管理",value:112},{name:"社会保障",value:112},{name:"分类列表",value:112},{name:"农业生产",value:112},{name:"物业服务",value:92},{name:"物业管理",value:92},{name:"低保管理",value:92},{name:"执法争议",value:72},{name:"占道堆放",value:71},{name:"地上设施",value:71},{name:"主网原因",value:71},{name:"集中供热",value:71},{name:"客运管理",value:71},{name:"治安案件",value:71},{name:"群众健身",value:41},{name:"市场收费",value:41},{name:"生产资金",value:41},{name:"生产噪声",value:41},{name:"农村低保",value:41},{name:"劳动争议",value:41},{name:"医疗事故",value:21},{name:"基础教育",value:21},{name:"职业教育",value:21},{name:"拆迁补偿",value:21},{name:"设施维护",value:21},{name:"市场外溢",value:11},{name:"占道经营",value:11},{name:"树木管理",value:11},{name:"供气质量",value:11},{name:"燃气管理",value:11},{name:"市容环卫",value:11},{name:"新闻传媒",value:11},{name:"人才招聘",value:11},{name:"市场环境",value:11},{name:"城市交通",value:11},{name:"物业服务",value:11},{name:"物业管理",value:11},{name:"园林绿化",value:11},{name:"有线电视",value:11},{name:"社会治安",value:11},{name:"林业资源",value:11},{name:"体育活动",value:11},{name:"低保管理",value:11},{name:"劳动争议",value:11},{name:"粉煤灰污染",value:284},{name:"人行道管理",value:71},{name:"身份证管理",value:71},{name:"房地产开发",value:11},{name:"经营性收费",value:11},{name:"一次供水问题",value:11},{name:"工业粉尘污染",value:71},{name:"工业排放污染",value:41},{name:"破坏森林资源",value:41},{name:"生活用水管理",value:688},{name:"一次供水问题",value:588},{name:"公交运输管理",value:386},{name:"自然资源管理",value:355},{name:"土地资源管理",value:304},{name:"生活用水管理",value:112},{name:"供热单位影响",value:253},{name:"二次供水问题",value:112},{name:"城市公共设施",value:92},{name:"拆迁政策咨询",value:92},{name:"县区、开发区",value:152},{name:"文娱市场管理",value:72},{name:"商业烟尘污染",value:72},{name:"供热单位影响",value:71},{name:"压力容器安全",value:71},{name:"劳动合同争议",value:41},{name:"物业资质管理",value:21},{name:"农村基础设施",value:11},{name:"行政事业收费",value:11},{name:"房屋配套问题",value:11},{name:"公交运输管理",value:11},{name:"社会福利及事务",value:11},{name:"食品安全与卫生",value:11},{name:"物业服务与管理",value:112},{name:"文体与教育管理",value:406},{name:"社会保障与福利",value:429},{name:"出租车运营管理",value:385},{name:"物业服务与管理",value:304},{name:"房屋质量与安全",value:223},{name:"劳动报酬与福利",value:41},{name:"食品安全与卫生",value:11},{name:"房屋与图纸不符",value:11},{name:"其他行政事业收费",value:11},{name:"农村土地规划管理",value:254},{name:"社会保障保险管理",value:92},{name:"城市交通秩序管理",value:72},{name:"户籍管理及身份证",value:11},{name:"公路(水路)交通",value:11},{name:"国有公交(大巴)管理",value:71},{name:"有线电视安装及调试维护",value:11},{name:"市政府工作部门(含部门管理机构、直属单位)",value:11}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-piechart",dictKey:"PIE_PROPERTIES",relactiveDomValue:"dynamicData",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:300}]}}],c={code:"screen",type:"screen",label:"大屏设置",icon:"",options:{setup:[{type:"el-input-number",label:"大屏宽度",name:"width",required:!1,placeholder:"px",value:"1920"},{type:"el-input-number",label:"大屏高度",name:"height",required:!1,placeholder:"px",value:"1080"},{type:"el-input-text",label:"标题",name:"title",require:!1,placeholder:"",value:"大屏"},{type:"el-input-textarea",label:"大屏简介",name:"description",required:!1,placeholder:""},{type:"vue-color",label:"背景颜色",name:"backgroundColor",required:!1,placeholder:"",value:"#000"},{type:"custom-upload",label:"图片地址",name:"backgroundImage",required:!1,placeholder:"",value:"https://report.anji-plus.com/file/download/bf566e48-ccad-40e1-8ee9-228427e5466b"}],data:[],position:[]}},h=[].concat(a.n(s)()(u)),p=function(e){return"screen"==e?c:h.find(function(t,a,i){return t.code===e})},d=a("gLgb"),m=a("zgVM"),f=a("V47a"),v=a("cWz8"),y=a("cyzc"),g=a("/C5K"),b=a("xSk4"),x=a("GWHw"),S=a("mlo3"),w=a("tHtw"),q=a("rMB3"),C=a("I8Wc"),D=a("S+MY"),T=a("aVQV"),O=a("jmgl"),_=a("kq3f"),k=a("U6Wy"),L=a("TUKT"),z=a("+3Gg"),F=a("FxKO"),A=a("Ur0O"),W=a("4rp5"),P=a("Whq1"),I=a("xVz9"),M=a("pizJ"),R=a("HMir"),N=a("4Zv2"),E={name:"Widget",components:{widgetHref:d.a,widgetText:m.a,WidgetMarquee:f.a,widgetTime:v.a,widgetImage:y.a,widgetSlider:g.a,widgetVideo:b.a,WidgetIframe:x.a,widgetBarchart:S.a,widgetGradientColorBarchart:w.a,widgetLinechart:q.a,widgetBarlinechart:C.a,WidgetPiechart:D.a,WidgetFunnel:T.a,WidgetGauge:O.a,WidgetPieNightingaleRoseArea:_.a,widgetTable:k.a,widgetMap:L.a,widgetPiePercentageChart:z.a,widgetAirBubbleMap:F.a,widgetBarStackChart:A.a,widgetLineStackChart:W.a,widgetBarCompareChart:P.a,widgetLineCompareChart:I.a,widgetDecoratePieChart:M.a,widgetMoreBarLineChart:R.a,widgetWordCloud:N.a},model:{prop:"value",event:"input"},props:{index:Number,type:String,bigscreen:Object,value:{type:[Object],default:function(){}},step:Number},data:function(){return{data:{setup:{},data:{},position:{}}}},computed:{widgetsWidth:function(){return this.value.position.width},widgetsHeight:function(){return this.value.position.height},widgetsLeft:function(){return this.value.position.left},widgetsTop:function(){return this.value.position.top},widgetsZIndex:function(){return this.value.position.zIndex||1}},mounted:function(){},methods:{handleFocus:function(e){e.index,e.left,e.top,e.width,e.height},handleBlur:function(e){var t=e.index,a=e.left,i=e.top,o=e.width,n=e.height;this.$emit("onActivated",{index:t,left:a,top:i,width:o,height:n}),this.$refs.draggable.setActive(!0)}}},B=(a("PCNV"),a("ZrdR")),Y=Object(B.a)(E,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("avue-draggable",{ref:"draggable",attrs:{step:e.step,width:e.widgetsWidth,height:e.widgetsHeight,left:e.widgetsLeft,top:e.widgetsTop,index:e.index,"z-index":-1},on:{focus:e.handleFocus,blur:e.handleBlur}},[a(e.type,{tag:"component",attrs:{value:e.value}})],1)},[],!1,null,"7ff527a0",null);Y.options.__file="widget.vue";var j=Y.exports,X=a("6ZY3"),V=a.n(X),$={name:"ColorPicker",model:{prop:"value",event:"input"},props:{value:{type:[String],default:""}},data:function(){return{predefineColors:["#ff4500","#ff8c00","#ffd700","#90ee90","#00ced1","#1e90ff","#c71585"],colorValue:""}},watch:{value:function(e){this.colorValue=e||""}},mounted:function(){this.colorValue=this.value},methods:{changeColor:function(e){this.colorValue=e||"",this.$emit("input",this.colorValue),this.$emit("change",this.colorValue)}}},H=(a("5yTy"),Object(B.a)($,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-input",{attrs:{clearable:"",placeholder:"请输入颜色",size:"mini"},on:{change:e.changeColor},model:{value:e.colorValue,callback:function(t){e.colorValue=t},expression:"colorValue"}},[a("template",{slot:"append"},[a("el-color-picker",{attrs:{predefine:e.predefineColors,"show-alpha":"",size:"mini"},on:{change:e.changeColor},model:{value:e.colorValue,callback:function(t){e.colorValue=t},expression:"colorValue"}})],1)],2)},[],!1,null,"173d22f8",null));H.options.__file="colorPicker.vue";var U=H.exports,G=a("atyl"),Z=(a("yY5G"),a("oMrk"),a("kefc"),a("opU+"),a("9dfR"),a("jTqD"),{name:"DynamicComponents",components:{Dictionary:a("CJ5O").a},model:{prop:"formData",event:"input"},props:{chartType:String,dictKey:String,formData:Object},data:function(){return{dataSetValue:"",dataSet:[],userNameList:[],setParamList:[],params:{},chartProperties:{}}},watch:{formData:{handler:function(e){this.echoDataSet(e)},deep:!0}},computed:{setCode:function(){var e=this,t="";return this.dataSet.forEach(function(a){a.id==e.dataSetValue&&(t=a.setCode)}),t}},mounted:function(){this.loadDataSet(),this.echoDataSet(this.formData)},methods:{loadDataSet:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(r.f)();case 2:if(a=t.sent,i=a.code,n=a.data,e.dataSet=n,"200"==i){t.next=8;break}return t.abrupt("return");case 8:case"end":return t.stop()}},t,e)}))()},selectDataSet:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(r.a)(e.dataSetValue);case 2:if(a=t.sent,i=a.code,n=a.data,e.userNameList=n.dataSetParamDtoList,e.setParamList=n.setParamList,"200"==i){t.next=9;break}return t.abrupt("return");case 9:case"end":return t.stop()}},t,e)}))()},saveDataBtn:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:for(a={},i=0;i<e.userNameList.length;i++)a[e.userNameList[i].paramName]=e.userNameList[i].sampleItem;n={chartType:e.chartType,setCode:e.setCode,chartProperties:e.chartProperties,contextData:a},e.$emit("input",n),e.$emit("change",n);case 5:case"end":return t.stop()}},t,e)}))()},selectParams:function(e,t){this.chartProperties[t]=e},getDictKey:function(){return null==this.dictKey?"CHART_PROPERTIES":this.dictKey},echoDataSet:function(e){var t=this;return l()(o.a.mark(function a(){var i;return o.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(e){a.next=2;break}return a.abrupt("return");case 2:return i=e.setCode,a.next=5,t.loadDataSet();case 5:return t.dataSetValue=t.dataSet.filter(function(e){return i==e.setCode})[0].id,a.next=8,t.selectDataSet();case 8:t.echoDynamicData(e);case 9:case"end":return a.stop()}},a,t)}))()},echoDynamicData:function(e){var t=this.deepClone(e.chartProperties);if(this.chartProperties=t,this.userNameList.length,this.setParamList.length>0)for(var a=0;a<this.setParamList.length;a++){var i=this.setParamList[a];t.hasOwnProperty(i)&&(this.params[i]=t[i])}}}}),K=(a("a8b3"),Object(B.a)(Z,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-form",{attrs:{"label-width":"100px","label-position":"left"}},[a("el-form-item",{attrs:{label:"数据集"}},[a("el-select",{attrs:{size:"mini",filterable:"",placeholder:"请选择"},on:{change:e.selectDataSet},model:{value:e.dataSetValue,callback:function(t){e.dataSetValue=t},expression:"dataSetValue"}},e._l(e.dataSet,function(e){return a("el-option",{key:e.code,attrs:{label:e.setName,value:e.id}})}),1)],1),e._v(" "),e._l(e.userNameList,function(t,i){return a("el-form-item",{key:i,attrs:{label:t.paramName}},[a("el-input",{attrs:{size:"mini"},model:{value:t.sampleItem,callback:function(a){e.$set(t,"sampleItem","string"==typeof a?a.trim():a)},expression:"item.sampleItem"}})],1)}),e._v(" "),e._l(e.setParamList,function(t){return a("el-form-item",{key:t,attrs:{label:t}},[a("Dictionary",{attrs:{"dict-key":e.getDictKey()},on:{input:function(a){return e.selectParams(a,t)}},model:{value:e.params[t],callback:function(a){e.$set(e.params,t,a)},expression:"params[item]"}})],1)}),e._v(" "),a("el-button",{staticStyle:{width:"100%"},attrs:{type:"primary",plain:"",size:"mini"},on:{click:e.saveDataBtn}},[e._v("刷新")])],2)],1)},[],!1,null,"63ab6bd9",null));K.options.__file="dynamicComponents.vue";var Q=K.exports,J={name:"CustomColorComponents",model:{prop:"formData",event:"input"},props:{formData:Array},data:function(){return{predefineColors:["#ff4500","#ff8c00","#ffd700","#90ee90","#00ced1","#1e90ff","#c71585"],colorValue:"",dialogVisible:!1,flag:!0,indexEditor:-1}},mounted:function(){},methods:{handleClose:function(){this.dialogVisible=!1,this.colorValue=""},handleAddClick:function(){this.colorValue="",this.flag=!0,this.dialogVisible=!0},handleSaveClick:function(){if(this.flag){var e={color:this.colorValue};this.formData.push(e),this.dialogVisible=!1}else this.formData[this.indexEditor].color=this.colorValue,this.dialogVisible=!1;this.$emit("input",this.formData),this.$emit("change",this.formData)},handleEditorClick:function(e,t){this.flag=!1,this.colorValue=t.color,this.dialogVisible=!0,this.indexEditor=e},handleDeleteClick:function(e){this.formData.splice(e,1),this.$emit("input",this.formData),this.$emit("change",this.formData)}}},ee=(a("lV0h"),Object(B.a)(J,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-button",{attrs:{type:"primary",size:"mini",icon:"el-icon-plus",plain:""},on:{click:e.handleAddClick}},[e._v("新增")]),e._v(" "),a("el-table",{staticStyle:{width:"100%"},attrs:{data:e.formData}},[a("el-table-column",{attrs:{prop:"color",label:"颜色",align:"center"},scopedSlots:e._u([{key:"default",fn:function(e){return[a("span",{staticClass:"color-box",style:{background:e.row.color}})]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"位置",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("span",{staticClass:"editor",on:{click:function(a){return e.handleEditorClick(t.$index,t.row)}}},[a("i",{staticClass:"el-icon-edit"}),e._v(" 编辑\n ")])]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"操作",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("span",{staticClass:"editor",on:{click:function(a){return e.handleDeleteClick(t.$index,t.row)}}},[a("i",{staticClass:"el-icon-delete"}),e._v(" 删除\n ")])]}}])})],1),e._v(" "),a("el-dialog",{attrs:{title:"新增",visible:e.dialogVisible,width:"30%","before-close":e.handleClose},on:{"update:visible":function(t){e.dialogVisible=t}}},[a("el-form",[a("el-form-item",{attrs:{label:"颜色"}},[a("el-input",{staticStyle:{width:"200px"},attrs:{placeholder:"请输入颜色",size:"mini"},model:{value:e.colorValue,callback:function(t){e.colorValue=t},expression:"colorValue"}},[a("template",{slot:"append"},[a("el-color-picker",{attrs:{predefine:e.predefineColors,size:"mini"},model:{value:e.colorValue,callback:function(t){e.colorValue=t},expression:"colorValue"}})],1)],2)],1)],1),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{attrs:{size:"mini"},on:{click:function(t){e.dialogVisible=!1}}},[e._v("取 消")]),e._v(" "),a("el-button",{attrs:{size:"mini",type:"primary"},on:{click:e.handleSaveClick}},[e._v("确 定")])],1)],1)],1)},[],!1,null,"c536ad68",null));ee.options.__file="customColorComponents.vue";var te=ee.exports,ae={model:{prop:"formData",event:"input"},props:{formData:Array},data:function(){return{dialogVisible:!1,rowFormData:{name:"",key:"",width:""},flag:!0,indexEditor:-1,tableData:[]}},methods:{handleAddClick:function(){this.rowFormData={},this.flag=!0,this.dialogVisible=!0},handleEditorClick:function(e,t){this.flag=!1,this.rowFormData=this.deepClone(t),this.indexEditor=e,this.dialogVisible=!0},handleClose:function(){this.dialogVisible=!1},handleSaveClick:function(){this.flag?(this.formData.push(this.rowFormData),this.dialogVisible=!1):(this.formData[this.indexEditor]=this.rowFormData,this.$set(this.formData,this.indexEditor,this.rowFormData),this.dialogVisible=!1),this.$emit("input",this.formData),this.$emit("change",this.formData)},handleDeleteClick:function(e){this.formData.splice(e,1),this.$emit("input",this.formData),this.$emit("change",this.formData)}}},ie=(a("eVDu"),Object(B.a)(ae,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-button",{attrs:{type:"primary",size:"small",icon:"el-icon-plus",plain:""},on:{click:e.handleAddClick}},[e._v("新增")]),e._v(" "),a("el-table",{staticStyle:{width:"100%"},attrs:{data:e.formData}},[a("el-table-column",{attrs:{prop:"name",label:"名称",width:"60"}}),e._v(" "),a("el-table-column",{attrs:{prop:"key",label:"key值",width:"70"}}),e._v(" "),a("el-table-column",{attrs:{prop:"width",label:"宽度",width:"50"}}),e._v(" "),a("el-table-column",{attrs:{label:"操作",width:"100"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("div",{staticClass:"button-group"},[a("el-button",{attrs:{type:"text",size:"small"},on:{click:function(a){return e.handleEditorClick(t.$index,t.row)}}},[e._v("编辑")]),e._v(" "),a("el-button",{attrs:{type:"text",size:"small"},on:{click:function(a){return e.handleDeleteClick(t.$index,t.row)}}},[e._v("删除")])],1)]}}])})],1),e._v(" "),a("el-dialog",{attrs:{title:"新增",visible:e.dialogVisible,width:"30%","before-close":e.handleClose},on:{"update:visible":function(t){e.dialogVisible=t}}},[a("el-form",{attrs:{model:e.rowFormData,"label-width":"50px"}},[a("el-form-item",{attrs:{label:"名称:"}},[a("el-input",{attrs:{placeholder:"请输入名称",size:"mini"},model:{value:e.rowFormData.name,callback:function(t){e.$set(e.rowFormData,"name","string"==typeof t?t.trim():t)},expression:"rowFormData['name']"}})],1),e._v(" "),a("el-form-item",{attrs:{label:"key值:"}},[a("el-input",{attrs:{placeholder:"请输入key值",size:"mini"},model:{value:e.rowFormData.key,callback:function(t){e.$set(e.rowFormData,"key","string"==typeof t?t.trim():t)},expression:"rowFormData['key']"}})],1),e._v(" "),a("el-form-item",{attrs:{label:"宽度:"}},[a("el-input",{attrs:{placeholder:"请输入宽度",size:"mini"},model:{value:e.rowFormData.width,callback:function(t){e.$set(e.rowFormData,"width","string"==typeof t?t.trim():t)},expression:"rowFormData['width']"}})],1)],1),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{attrs:{size:"mini"},on:{click:function(t){e.dialogVisible=!1}}},[e._v("取 消")]),e._v(" "),a("el-button",{attrs:{size:"mini",type:"primary"},on:{click:e.handleSaveClick}},[e._v("确 定")])],1)],1)],1)},[],!1,null,"97db715e",null));ie.options.__file="dynamicAddTable.vue";var oe=ie.exports,ne=a("f0Pt"),le=a.n(ne),re=a("X4fA"),se={model:{prop:"value",event:"input"},props:{value:{type:"",default:""}},data:function(){return{requestUrl:".//file/upload",headers:{Authorization:Object(re.f)()},fileList:[],uploadImgUrl:""}},created:function(){this.uploadImgUrl=this.value},methods:{getImages:function(e){var t=e.target.files[0];"image"===t.type.split("/")[0]?this.upload(t):this.$message.warn("只能上次图片格式")},upload:function(e){var t=this;console.log(t.headers);var a=new FormData;a.append("file",e),le.a.post(this.requestUrl,a,{headers:t.headers}).then(function(e){var a=e.data;"200"==a.code&&(t.uploadImgUrl=a.data.urlPath,t.$emit("input",t.uploadImgUrl),t.$emit("change",t.uploadImgUrl))})},changeInput:function(e){e?this.uploadImgUrl=e:(this.$refs.files.value="",this.uploadImgUrl=""),this.$emit("input",this.uploadImgUrl),this.$emit("change",this.uploadImgUrl)}}},ue=(a("9H/H"),Object(B.a)(se,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-input",{attrs:{clearable:"",size:"mini"},on:{change:e.changeInput},model:{value:e.uploadImgUrl,callback:function(t){e.uploadImgUrl="string"==typeof t?t.trim():t},expression:"uploadImgUrl"}},[a("template",{slot:"append"},[a("i",{staticClass:"iconfont iconfolder-o"}),e._v(" "),a("input",{ref:"files",staticClass:"file",attrs:{type:"file"},on:{change:e.getImages}})])],2)],1)},[],!1,null,"d60745ec",null));ue.options.__file="customUpload.vue";var ce=ue.exports,he={name:"DynamicForm",components:{ColorPicker:U,vueJsonEditor:G.a,dynamicComponents:Q,customColorComponents:te,dynamicAddTable:oe,customUpload:ce},model:{prop:"value",event:"input"},props:{options:Array,value:{type:[Object],default:function(){}}},data:function(){return{formData:{},inputShow:{},dialogVisibleStaticData:!1,validationRules:"",optionsJavascript:{mode:"text/javascript",tabSize:2,lineNumbers:!0,line:!0,styleActiveLine:!0,hintOptions:{completeSingle:!0}}}},watch:{value:function(e,t){this.formData=e||{}},options:function(e){this.setDefaultValue(),this.isShowData()}},created:function(){this.isShowData(),this.setDefaultValue()},mounted:function(){},methods:{onJsonChange:function(e){console.log(e)},onJsonSave:function(e){console.log(e)},changed:function(e,t){e.extend?this.$set(this.formData,t,e.value):this.$set(this.formData,t,e),this.$emit("onChanged",this.formData);for(var a=0;a<this.options.length;a++){var i=this.options[a];i.relactiveDom==t&&(this.inputShow[i.name]=e==i.relactiveDomValue,this.inputShow=V()({},this.inputShow))}},saveData:function(){this.$emit("onChanged",this.formData),this.dialogVisibleStaticData=!1},addStaticData:function(){this.dialogVisibleStaticData=!0},handleClose:function(){this.dialogVisibleStaticData=!1},isShowData:function(){for(var e=this,t={},a=[],i=0;i<this.options.length;i++)this.inputShow[this.options[i].name]=!0,this.options[i].selectValue?t=this.options[i]:a.push(this.options[i]);a.forEach(function(a){a.relactiveDomValue!=t.value&&(e.inputShow[a.name]=!1)})},setDefaultValue:function(){var e=this;if(this.options&&this.options.length>0){for(var t=0;t<this.options.length;t++){var a=this.options[t];if("[object Object]"==Object.prototype.toString.call(a))this.formData[this.options[t].name]=this.deepClone(this.options[t].value);else if("[object Array]"==Object.prototype.toString.call(a))for(var i=0;i<a.length;i++){a[i].list.forEach(function(t){e.formData[t.name]=t.value})}}this.formData=V()({},this.formData)}},isShowForm:function(e,t){return Object.prototype.toString.call(e)==t}}},pe=(a("aznp"),Object(B.a)(he,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"collapse-input-style"},[a("el-form",{attrs:{"label-width":"100px","label-position":"left"}},[e._l(e.options,function(t,i){return[e.isShowForm(t,"[object Object]")?a("div",{key:i},[e.inputShow[t.name]&&"dycustComponents"!=t.type&&"dynamic-add-table"!=t.type?a("el-form-item",{attrs:{label:t.label,prop:t.name,required:t.required}},["el-input-number"==t.type?a("el-input-number",{staticStyle:{width:"100%"},attrs:{size:"mini","controls-position":"right"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,"string"==typeof a?a.trim():a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"el-input-text"==t.type?a("el-input",{attrs:{type:"text",size:"mini",placeholder:"请输入内容",clearable:""},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,"string"==typeof a?a.trim():a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"el-input-textarea"==t.type?a("el-input",{attrs:{type:"textarea",size:"mini",rows:"2",placeholder:"请输入内容"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,"string"==typeof a?a.trim():a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"el-switch"==t.type?a("el-switch",{attrs:{size:"mini",placeholder:"请输入内容"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"vue-color"==t.type?a("ColorPicker",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"custom-upload"==t.type?a("customUpload",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"el-radio-group"==t.type?a("el-radio-group",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}},e._l(t.selectOptions,function(t){return a("el-radio",{key:t.code,attrs:{label:t.code}},[e._v(e._s(t.name))])}),1):e._e(),e._v(" "),"el-select"==t.type?a("el-select",{attrs:{size:"mini",clearable:"",placeholder:"请选择"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}},e._l(t.selectOptions,function(e){return a("el-option",{key:e.code,attrs:{label:e.name,value:e.code}})}),1):e._e(),e._v(" "),"el-slider"==t.type?a("el-slider",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"el-button"==t.type?a("el-button",{attrs:{type:"primary",size:"mini",plain:""},on:{click:e.addStaticData}},[e._v("编辑")]):e._e(),e._v(" "),a("el-dialog",{attrs:{title:"代码编辑",visible:e.dialogVisibleStaticData,width:"50%","before-close":e.handleClose},on:{"update:visible":function(t){e.dialogVisibleStaticData=t}}},[a("vue-json-editor",{staticClass:"my-editor",attrs:{"show-btns":!1,mode:"code",lang:"zh"},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:function(t){e.dialogVisibleStaticData=!1}}},[e._v("取 消")]),e._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:e.saveData}},[e._v("确 定")])],1)],1)],1):e._e(),e._v(" "),"dycustComponents"==t.type&&e.inputShow[t.name]?a("dynamicComponents",{attrs:{"chart-type":t.chartType,"dict-key":t.dictKey},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"dynamic-add-table"==t.type&&e.inputShow[t.name]?a("dynamic-add-table",{attrs:{"chart-type":t.chartType},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e()],1):e.isShowForm(t,"[object Array]")?a("div",{key:"a-"+i},[a("el-collapse",{attrs:{accordion:""}},e._l(t,function(t,i){return a("el-collapse-item",{key:i,attrs:{title:t.name,name:i}},[e._l(t.list,function(t,i){return[a("el-form-item",{key:i,attrs:{label:t.label,prop:t.name,required:t.required}},["el-input-number"==t.type?a("el-input-number",{staticStyle:{width:"100%"},attrs:{size:"mini","controls-position":"right",placeholder:t.placeholder},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}}):e._e(),e._v(" "),"el-input-text"==t.type?a("el-input",{attrs:{type:"text",size:"mini",placeholder:"请输入内容",clearable:""},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,"string"==typeof a?a.trim():a)},expression:"formData[itemChildList.name]"}}):e._e(),e._v(" "),"el-input-textarea"==t.type?a("el-input",{attrs:{size:"mini",type:"textarea",rows:"2",placeholder:"请输入内容"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,"string"==typeof a?a.trim():a)},expression:"formData[itemChildList.name]"}}):e._e(),e._v(" "),"el-switch"==t.type?a("el-switch",{attrs:{placeholder:"请输入内容",size:"mini"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}}):e._e(),e._v(" "),"vue-color"==t.type?a("ColorPicker",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}}):e._e(),e._v(" "),"el-upload-picture"==t.type?a("el-upload",{attrs:{size:"mini",action:"https://jsonplaceholder.typicode.com/posts/","list-type":"picture-card"}}):e._e(),e._v(" "),"el-radio-group"==t.type?a("el-radio-group",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}},e._l(t.selectOptions,function(t){return a("el-radio",{key:t.code,attrs:{label:t.code}},[e._v(e._s(t.name))])}),1):e._e(),e._v(" "),"el-select"==t.type?a("el-select",{attrs:{size:"mini",clearable:"",placeholder:"请选择"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}},e._l(t.selectOptions,function(e){return a("el-option",{key:e.code,attrs:{label:e.name,value:e.code}})}),1):e._e(),e._v(" "),"el-slider"==t.type?a("el-slider",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}}):e._e()],1),e._v(" "),"customColor"==t.type?a("customColorComponents",{key:"b-"+i,on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}}):e._e()]})],2)}),1)],1):e._e()]})],2)],1)},[],!1,null,"4415959e",null));pe.options.__file="dynamicForm.vue";var de=pe.exports,me=a("MzXy"),fe=a.n(me),ve=a("ue2F"),ye=a.n(ve),ge={props:{styleObj:Object,visible:Boolean},data:function(){return{}},watch:{visible:function(e){e?document.body.addEventListener("click",this.closeMenu):document.body.removeEventListener("click",this.closeMenu)}},methods:{closeMenu:function(){this.$emit("update:visible",!1)},deleteLayer:function(){var e=this;this.$confirm("是否删除所选图层?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(function(){e.$emit("deletelayer"),e.$message({type:"success",message:"删除成功!"})}).catch(function(){e.$message({type:"info",message:"已取消删除"})})},copyLayer:function(){this.$emit("copylayer")},istopLayer:function(){this.$emit("istopLayer")},setlowLayer:function(){this.$emit("setlowLayer")},moveupLayer:function(){this.$emit("moveupLayer")},movedownLayer:function(){this.$emit("movedownLayer")}}},be=(a("Cjkk"),Object(B.a)(ge,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{directives:[{name:"show",rawName:"v-show",value:e.visible,expression:"visible"}],staticClass:"contentmenu",style:e.styleObj},[a("div",{staticClass:"contentmenu__item",on:{click:e.deleteLayer}},[a("i",{staticClass:"iconfont iconguanbi"}),e._v(" 删除图层\n ")]),e._v(" "),a("div",{staticClass:"contentmenu__item",on:{click:e.copyLayer}},[a("i",{staticClass:"iconfont iconfuzhi1"}),e._v(" 复制图层\n ")]),e._v(" "),a("div",{staticClass:"contentmenu__item",on:{click:e.istopLayer}},[a("i",{staticClass:"iconfont iconjinlingyingcaiwangtubiao01"}),e._v(" 置顶图层\n ")]),e._v(" "),a("div",{staticClass:"contentmenu__item",on:{click:e.setlowLayer}},[a("i",{staticClass:"iconfont iconleft-copy"}),e._v(" 置底图层\n ")]),e._v(" "),a("div",{staticClass:"contentmenu__item",on:{click:e.moveupLayer}},[a("i",{staticClass:"iconfont iconjinlingyingcaiwangtubiao01"}),e._v(" 上移一层\n ")]),e._v(" "),a("div",{staticClass:"contentmenu__item",on:{click:e.movedownLayer}},[a("i",{staticClass:"iconfont iconleft-copy"}),e._v(" 下移一层\n ")])])},[],!1,null,"76c3e416",null));be.options.__file="contentMenu.vue";var xe=be.exports,Se={name:"Login",components:{draggable:fe.a,VueRulerTool:ye.a,widget:j,dynamicForm:de,contentMenu:xe},data:function(){return{uploadUrl:".//reportDashboard/import/"+this.$route.query.reportCode,grade:!1,layerWidget:[],widgetTools:h,widthLeftForTools:200,widthLeftForToolsHideButton:15,widthLeftForOptions:300,widthPaddingTools:18,toolIsShow:!0,bigscreenWidth:1920,bigscreenHeight:1080,dashboard:{id:null,title:"",width:1920,height:1080,backgroundColor:"",backgroundImage:"",refreshSeconds:null,presetLine:[],presetLineVisible:!0},screenCode:"",widgets:[{type:"widget-text",value:{setup:{},data:{},position:{width:100,height:100,left:0,top:0,zIndex:0}},options:[]}],widgetIndex:0,widgetOptions:{setup:[],data:[],position:[]},flagWidgetClickStopPropagation:!1,styleObj:{left:0,top:0},visibleContentMenu:!1,rightClickIndex:-1,activeName:"first"}},computed:{step:function(){return Number(100/(100*this.bigscreenScaleInWorkbench))},headers:function(){return{Authorization:Object(re.f)()}},middleWidth:function(){var e=0;this.toolIsShow&&(e+=this.widthLeftForTools),e+=this.widthLeftForToolsHideButton,e+=this.widthLeftForOptions;var t=this.bodyWidth-e;return t},middleHeight:function(){return this.bodyHeight},bigscreenScaleInWorkbench:function(){var e=(this.middleWidth-this.widthPaddingTools)/this.bigscreenWidth,t=(this.middleHeight-this.widthPaddingTools)/this.bigscreenHeight;return Math.min(e,t)},workbenchTransform:function(){return"scale("+this.bigscreenScaleInWorkbench+", "+this.bigscreenScaleInWorkbench+")"},bigscreenWidthInWorkbench:function(){return this.getPXUnderScale(this.bigscreenWidth)+this.widthPaddingTools},bigscreenHeightInWorkbench:function(){return this.getPXUnderScale(this.bigscreenHeight)+this.widthPaddingTools}},watch:{widgets:{handler:function(e){this.handlerLayerWidget(e)},deep:!0}},mounted:function(){var e=this;this.initEchartData(),this.widgets=[],window.addEventListener("mouseup",function(){e.grade=!1})},methods:{handlerLayerWidget:function(e){for(var t=[],a=function(a){var i={};i.icon=p(e[a].type).icon,e[a].options.setup.forEach(function(e){"layerName"==e.name&&(i.label=e.value)}),t.push(i)},i=0;i<e.length;i++)a(i);this.layerWidget=t},initEchartData:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n,l,s,u;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return a=e.$route.query.reportCode,t.next=3,Object(r.b)(a);case 3:if(i=t.sent,n=i.code,l=i.data,200==n){t.next=8;break}return t.abrupt("return");case 8:s=e.handleInitEchartsData(l),u=e.handleBigScreen(l.dashboard),e.widgets=s,e.dashboard=u,e.bigscreenWidth=e.dashboard.width,e.bigscreenHeight=e.dashboard.height;case 14:case"end":return t.stop()}},t,e)}))()},handleBigScreen:function(e){var t=p("screen").options.setup;for(var a in e)for(var i=0;i<t.length;i++)a==t[i].name&&(t[i].value=e[a]);return this.setOptionsOnClickScreen(),{backgroundColor:e&&e.backgroundColor||"",backgroundImage:e&&e.backgroundImage||"",height:e&&e.height||"1080",title:e&&e.title||"",width:e&&e.width||"1920"}},handleInitEchartsData:function(e){for(var t=e.dashboard?e.dashboard.widgets:[],a=[],i=0;i<t.length;i++){var o={};o.type=t[i].type,o.value={setup:t[i].value.setup,data:t[i].value.data,position:t[i].value.position};var n=this.deepClone(p(t[i].type)).options,l=this.handleOptionsData(t[i].value,n);o.options=l,a.push(o)}return a},handleOptionsData:function(e,t){var a=function(a){for(var i=0;i<t.setup.length;i++){var o=t.setup[i];if("[object Object]"==Object.prototype.toString.call(o))a==t.setup[i].name&&(t.setup[i].value=e.setup[a]);else if("[object Array]"==Object.prototype.toString.call(o))for(var n=0;n<o.length;n++){o[n].list.forEach(function(t){a==t.name&&(t.value=e.setup[a])})}}};for(var i in e.setup)a(i);for(var i in e.position)for(var o=0;o<t.position.length;o++)i==t.position[o].name&&(t.position[o].value=e.position[i]);for(var n in e.data)for(var l=0;l<t.data.length;l++)n==t.data[l].name&&(t.data[l].value=e.data[n]);return t},saveData:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(e.widgets&&0!=e.widgets.length){t.next=3;break}return e.$message.error("请添加组件"),t.abrupt("return");case 3:return a={reportCode:e.$route.query.reportCode,dashboard:{title:e.dashboard.title,width:e.dashboard.width,height:e.dashboard.height,backgroundColor:e.dashboard.backgroundColor,backgroundImage:e.dashboard.backgroundImage},widgets:e.widgets},t.next=6,Object(r.e)(a);case 6:i=t.sent,n=i.code,i.data,"200"==n&&e.$message.success("保存成功!");case 10:case"end":return t.stop()}},t,e)}))()},viewScreen:function(){var e=this.$router.resolve({path:"/bigscreen/viewer",query:{reportCode:this.$route.query.reportCode}});window.open(e.href,"_blank")},exportDashboard:function(e){var t=this;return l()(o.a.mark(function a(){var i,n;return o.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:i=t.$route.query.reportCode+".zip",n={reportCode:t.$route.query.reportCode,showDataSet:e},Object(r.c)(n).then(function(e){var a=t;if("application/json"==e.type){var o=new FileReader;return o.readAsText(e,"utf-8"),void(o.onload=function(){var e=JSON.parse(o.result);a.$message.error(e.message)})}var n=new Blob([e],{type:"application/octet-stream"});if(window.navigator.msSaveOrOpenBlob)navigator.msSaveBlob(n,i);else{var l=document.createElement("a");l.href=window.URL.createObjectURL(n),l.download=i,l.click(),window.URL.revokeObjectURL(l.href)}});case 3:case"end":return a.stop()}},a,t)}))()},handleUpload:function(e,t,a){this.$refs.upload.clearFiles(),this.initEchartData(),"200"==e.code?this.$message({message:"导入成功!",type:"success"}):this.$message({message:e.message,type:"error"})},handleError:function(e){this.$message({message:"上传失败!",type:"error"})},getPXUnderScale:function(e){return this.bigscreenScaleInWorkbench*e},widgetOnDragged:function(e,t){var a=t,i=e.originalEvent.clientX,o=e.originalEvent.clientY,n=this.getDomTopLeftById("workbench"),l=o-n.top,r=(n.left,this.bigscreenScaleInWorkbench,this.bigscreenScaleInWorkbench,{type:a,value:{setup:{},data:{},position:{width:0,height:0,left:0,top:0,zIndex:0}},options:p(a).options}),s=this.handleDefaultValue(r);this.widgets.push(this.deepClone(s)),this.setOptionsOnClickWidget(this.widgets.length-1)},handleDefaultValue:function(e){for(var t in e)if("options"==t){for(var a=0;a<e.options.setup.length;a++){var i=e.options.setup[a];if("[object Object]"==Object.prototype.toString.call(i))e.value.setup[i.name]=i.value;else if("[object Array]"==Object.prototype.toString.call(i))for(var o=0;o<i.length;o++){i[o].list.forEach(function(t){e.value.setup[t.name]=t.value})}}for(var n=0;n<e.options.position.length;n++){var l=e.options.position[n];l.value&&(e.value.position[l.name]=l.value)}if(e.options.data&&e.options.data.length>0)for(var r=0;r<e.options.data.length;r++){var s=e.options.data[r];s.value&&(e.value.data[s.name]=s.value)}}return e},layerClick:function(e){this.widgetIndex=e,this.widgetsClick(e)},setOptionsOnClickScreen:function(){this.screenCode="screen",this.activeName="first",this.widgetOptions=p("screen").options},setOptionsOnClickWidget:function(e){this.screenCode="","number"!=typeof e?e.index<0||e.index>=this.widgets.length||(this.widgetIndex=e.index,this.widgets[e.index].value.position=e,this.widgets[e.index].options.position.forEach(function(t){for(var a in e)t.name==a&&(t.value=e[a])}),this.widgetOptions=this.deepClone(this.widgets[e.index].options)):this.widgetOptions=this.deepClone(this.widgets[e].options)},widgetsClick:function(e){for(var t=this.$refs.widgets,a=0;a<t.length;a++)a==e?this.$refs.widgets[a].$refs.draggable.setActive(!0):this.$refs.widgets[a].$refs.draggable.setActive(!1);this.setOptionsOnClickWidget(e),this.grade=!0},widgetsMouseup:function(e){this.grade=!1},handleMouseDown:function(){for(var e=this.$refs.widgets,t=0;t<e.length;t++)this.$refs.widgets[t].$refs.draggable.setActive(!1)},widgetValueChanged:function(e,t){var a=this;if("screen"==this.screenCode){var i=new Array;this.dashboard=this.deepClone(t),this.bigscreenWidth!=this.dashboard.width&&(this.bigscreenWidth=this.dashboard.width),this.bigscreenHeight!=this.dashboard.height&&(this.bigscreenHeight=this.dashboard.height),this.widgetOptions.setup.forEach(function(e){"width"==e.name?e.value=a.bigscreenWidth:"height"==e.name&&(e.value=a.bigscreenHeight),i.push(e)}),this.widgetOptions.setup=i}else for(var o=0;o<this.widgets.length;o++)this.widgetIndex==o&&(this.widgets[o].value[e]=this.deepClone(t),this.setDefaultValue(this.widgets[o].options[e],t))},rightClick:function(e,t){this.rightClickIndex=t;var a=e.clientX,i=e.clientY;return(a||i)&&(this.styleObj={left:a+"px",top:i+"px",display:"block"}),this.visibleContentMenu=!0,!1},setDefaultValue:function(e,t){for(var a=0;a<e.length;a++)if("[object Object]"==Object.prototype.toString.call(e[a]))for(var i in t)e[a].name==i&&(e[a].value=t[i]);else if("[object Array]"==Object.prototype.toString.call(e[a]))for(var o=0;o<e[a].length;o++)for(var n=e[a][o].list,l=0;l<n.length;l++)for(var r in t)n[l].name==r&&(n[l].value=t[r])},datadragEnd:function(e){e.preventDefault(),this.widgets=this.swapArr(this.widgets,e.oldIndex,e.newIndex)},swapArr:function(e,t,a){return e[t]=e.splice(a,1,e[t])[0],e},deletelayer:function(){this.widgets.splice(this.rightClickIndex,1)},copylayer:function(){var e=this.deepClone(this.widgets[this.rightClickIndex]);this.widgets.splice(this.widgets.length,0,e)},istopLayer:function(){if(this.rightClickIndex+1<this.widgets.length){var e=this.widgets.splice(this.rightClickIndex,1)[0];this.widgets.push(e)}},setlowLayer:function(){0!=this.rightClickIndex&&this.widgets.unshift(this.widgets.splice(this.rightClickIndex,1)[0])},moveupLayer:function(){0!=this.rightClickIndex?this.widgets[this.rightClickIndex]=this.widgets.splice(this.rightClickIndex-1,1,this.widgets[this.rightClickIndex])[0]:this.widgets.push(this.widgets.shift())},movedownLayer:function(){this.rightClickIndex!=this.widgets.length-1?this.widgets[this.rightClickIndex]=this.widgets.splice(this.rightClickIndex+1,1,this.widgets[this.rightClickIndex])[0]:this.widgets.unshift(this.widgets.splice(this.rightClickIndex,1)[0])}}},we=(a("Qhiv"),Object(B.a)(Se,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"layout"},[e.toolIsShow?a("div",{staticClass:"layout-left",style:{width:e.widthLeftForTools+"px"}},[a("el-tabs",{attrs:{type:"border-card",stretch:!0}},[a("el-tab-pane",{attrs:{label:"工具栏"}},[a("el-divider",{attrs:{"content-position":"center"}},[e._v("html")]),e._v(" "),e._l(e.widgetTools,function(t){return a("draggable",{key:t.code,on:{end:function(a){return e.widgetOnDragged(a,t.code)}}},[a("div",{staticClass:"tools-item"},[a("span",{staticClass:"tools-item-icon"},[a("i",{staticClass:"iconfont",class:t.icon})]),e._v(" "),a("span",{staticClass:"tools-item-text"},[e._v(e._s(t.label))])])])})],2),e._v(" "),a("el-tab-pane",{attrs:{label:"图层"}},[a("draggable",{attrs:{options:{animation:300}},on:{update:e.datadragEnd},model:{value:e.layerWidget,callback:function(t){e.layerWidget=t},expression:"layerWidget"}},[a("transition-group",e._l(e.layerWidget,function(t,i){return a("div",{key:"item"+i,staticClass:"tools-item",class:e.widgetIndex==i?"is-active":"",on:{click:function(t){return e.layerClick(i)}}},[a("span",{staticClass:"tools-item-icon"},[a("i",{staticClass:"iconfont",class:t.icon})]),e._v(" "),a("span",{staticClass:"tools-item-text"},[e._v(e._s(t.label))])])}),0)],1)],1)],1)],1):e._e(),e._v(" "),a("div",{staticClass:"layout-left-fold",style:{width:e.widthLeftForToolsHideButton+"px"},on:{click:function(t){e.toolIsShow=!e.toolIsShow}}},[a("i",{staticClass:"el-icon-arrow-right"})]),e._v(" "),a("div",{staticClass:"layout-middle",style:{width:e.middleWidth+"px",height:e.middleHeight+"px"}},[a("div",{staticClass:"top-button"},[a("span",{staticClass:"btn"},[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"保存",placement:"bottom"}},[a("i",{staticClass:"iconfont iconsave",on:{click:e.saveData}})])],1),e._v(" "),a("span",{staticClass:"btn"},[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"预览",placement:"bottom"}},[a("i",{staticClass:"iconfont iconyulan",on:{click:e.viewScreen}})])],1),e._v(" "),a("span",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:export",expression:"'bigScreenManage:export'"}],staticClass:"btn"},[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"导入",placement:"bottom"}},[a("el-upload",{ref:"upload",staticClass:"el-upload",attrs:{action:e.uploadUrl,headers:e.headers,accept:".zip","on-success":e.handleUpload,"on-error":e.handleError,"show-file-list":!1,limit:1}},[a("i",{staticClass:"iconfont icondaoru"})])],1)],1),e._v(" "),a("span",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:import",expression:"'bigScreenManage:import'"}],staticClass:"btn border-left"},[a("ul",{staticClass:"nav"},[a("li",[a("i",{staticClass:"iconfont icondaochu"}),a("i",{staticClass:"el-icon-arrow-down"}),e._v(" "),a("ul",[a("li",[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"适合当前系统",placement:"right"}},[a("div",{on:{click:function(t){return e.exportDashboard(1)}}},[e._v("导出(包含数据集)")])])],1),e._v(" "),a("li",[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"适合跨系统",placement:"right"}},[a("div",{on:{click:function(t){return e.exportDashboard(0)}}},[e._v("导出(不包含数据集)")])])],1)])])])])]),e._v(" "),a("div",{staticClass:"workbench-container",style:{width:e.bigscreenWidthInWorkbench+"px",height:e.bigscreenHeightInWorkbench+"px"},on:{mousedown:e.handleMouseDown}},[a("vue-ruler-tool",{staticClass:"vueRuler",attrs:{"step-length":50,parent:!0,position:"relative","is-scale-revise":!0,visible:e.dashboard.presetLineVisible},on:{"update:visible":function(t){return e.$set(e.dashboard,"presetLineVisible",t)}},model:{value:e.dashboard.presetLine,callback:function(t){e.$set(e.dashboard,"presetLine",t)},expression:"dashboard.presetLine"}},[a("div",{staticClass:"workbench",style:{transform:e.workbenchTransform,width:e.bigscreenWidth+"px",height:e.bigscreenHeight+"px","background-color":e.dashboard.backgroundColor,"background-image":"url("+e.dashboard.backgroundImage+")","background-position":"0% 0%","background-size":"100% 100%","background-repeat":"initial","background-attachment":"initial","background-origin":"initial","background-clip":"initial"},attrs:{id:"workbench"},on:{click:function(t){return t.target!==t.currentTarget?null:e.setOptionsOnClickScreen(t)}}},[e.grade?a("div",{staticClass:"bg-grid"}):e._e(),e._v(" "),e._l(e.widgets,function(t,i){return a("widget",{key:i,ref:"widgets",refInFor:!0,attrs:{index:i,step:e.step,type:t.type,bigscreen:{bigscreenWidth:e.bigscreenWidth,bigscreenHeight:e.bigscreenHeight}},on:{onActivated:e.setOptionsOnClickWidget},nativeOn:{contextmenu:function(t){return t.preventDefault(),e.rightClick(t,i)},mousedown:function(t){return t.preventDefault(),e.widgetsClick(i)},mouseup:function(t){return t.preventDefault(),e.widgetsMouseup(t)}},model:{value:t.value,callback:function(a){e.$set(t,"value",a)},expression:"widget.value"}})})],2)])],1)]),e._v(" "),a("div",{staticClass:"layout-right",style:{width:e.widthLeftForOptions+"px"}},[a("el-tabs",{attrs:{type:"border-card",stretch:!0},model:{value:e.activeName,callback:function(t){e.activeName=t},expression:"activeName"}},[e.isNotNull(e.widgetOptions.setup)||e.isNotNull(e.widgetOptions.collapse)?a("el-tab-pane",{attrs:{name:"first",label:"配置"}},[a("dynamicForm",{ref:"formData",attrs:{options:e.widgetOptions.setup},on:{onChanged:function(t){return e.widgetValueChanged("setup",t)}}})],1):e._e(),e._v(" "),e.isNotNull(e.widgetOptions.data)?a("el-tab-pane",{attrs:{name:"second",label:"数据"}},[a("dynamicForm",{ref:"formData",attrs:{options:e.widgetOptions.data},on:{onChanged:function(t){return e.widgetValueChanged("data",t)}}})],1):e._e(),e._v(" "),e.isNotNull(e.widgetOptions.position)?a("el-tab-pane",{attrs:{name:"third",label:"坐标"}},[a("dynamicForm",{ref:"formData",attrs:{options:e.widgetOptions.position},on:{onChanged:function(t){return e.widgetValueChanged("position",t)}}})],1):e._e()],1)],1),e._v(" "),a("content-menu",{attrs:{visible:e.visibleContentMenu,"style-obj":e.styleObj},on:{"update:visible":function(t){e.visibleContentMenu=t},deletelayer:e.deletelayer,copylayer:e.copylayer,istopLayer:e.istopLayer,setlowLayer:e.setlowLayer,moveupLayer:e.moveupLayer,movedownLayer:e.movedownLayer}})],1)},[],!1,null,"8c5c65fc",null));we.options.__file="index.vue";t.default=we.exports},W7XY:function(e,t,a){"use strict";var i=a("OnJP");a.n(i).a},"WN/g":function(e,t,a){},Wbec:function(e,t,a){},Whq1:function(e,t,a){"use strict";var i={name:"WidgetBarCompareChart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{title:{x:"center",textStyle:{color:"#ffffff"}},grid:[{show:!1,left:"4%",top:60,bottom:10,containLabel:!0,width:"40%"},{show:!1,left:"50.5%",top:60,bottom:25,width:"0%"},{show:!1,right:"4%",top:60,bottom:10,containLabel:!0,width:"40%"}],legend:{textStyle:{color:"#fff",textAlign:"center"}},xAxis:[{splitNumber:2,show:!0,type:"value",inverse:!0,axisLine:{show:!1},axisTick:{show:!1},position:"bottom",axisLabel:{show:!0,textStyle:{color:"#ffffff",fontSize:12}},splitLine:{show:!0,lineStyle:{color:"#57617f",width:1,type:"solid"}}},{gridIndex:1,show:!1},{gridIndex:2,show:!0,type:"value",axisLine:{show:!1},axisTick:{show:!1},position:"bottom",axisLabel:{show:!0,textStyle:{color:"#ffffff",fontSize:12}},splitLine:{show:!0,lineStyle:{color:"#57617f",width:1,type:"solid"}}}],yAxis:[{type:"category",inverse:!0,position:"right",axisLine:{show:!1},axisTick:{show:!1},axisLabel:{show:!1},data:[]},{gridIndex:1,type:"category",inverse:!0,position:"left",axisLine:{show:!1},axisTick:{show:!1},axisLabel:{show:!0,textStyle:{align:"center",color:"#ffffff",fontSize:14}},data:[]},{gridIndex:2,type:"category",inverse:!0,position:"left",axisLine:{show:!1},axisTick:{show:!1},axisLabel:{show:!1}}],series:[{name:"",type:"bar",barGap:20,barWidth:15,label:{normal:{show:!0,color:"red",position:"insideLeft",textStyle:{color:"#ffffff"}},emphasis:{show:!1}},itemStyle:{normal:{color:"#36c5e7",barBorderRadius:[8,0,0,8]},emphasis:{show:!1}},data:[]},{name:"",type:"bar",barGap:20,barWidth:15,xAxisIndex:2,yAxisIndex:2,label:{normal:{show:!0,color:"red",position:"insideRight",textStyle:{color:"#ffffff"}}},itemStyle:{normal:{color:"#e68b55",barBorderRadius:[0,8,8,0]},emphasis:{show:!1}},data:[]}]},optionsStyle:{},optionsData:{},optionsSetup:{},flagInter:null}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsXLeft(),this.setOptionsXRight(),this.setOptionsY(),this.setOptionsTop(),this.setOptionsTooltip(),this.setOptionsGrid(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},this.options.title=t},setOptionsXLeft:function(){var e=this.optionsSetup,t={splitNumber:e.splitNumberLeft,type:"value",show:e.hideXLeft,inverse:!0,axisLine:{show:e.xLineLeft,lineStyle:{color:e.lineColorXLeft}},axisTick:{show:e.tickLineLeft},position:"bottom",axisLabel:{show:!0,textStyle:{color:e.XcolorLeft,fontSize:e.fontSizeXLeft}},splitLine:{show:e.SplitLineLeft,lineStyle:{color:e.SplitLineColorLeft,width:e.SplitLinefontSizeLeft,type:"solid"}}};this.options.xAxis[0]=t},setOptionsXRight:function(){var e=this.optionsSetup,t={gridIndex:2,splitNumber:e.splitNumberRight,show:e.hideXRight,type:"value",axisLine:{show:e.xLineRight,lineStyle:{color:e.lineColorXRight}},axisTick:{show:e.tickLineRight},position:"bottom",axisLabel:{show:!0,textStyle:{color:e.XcolorRight,fontSize:e.fontSizeXRight}},splitLine:{show:e.SplitLineRight,lineStyle:{color:e.SplitLineColorRight,width:e.SplitLinefontSizeRight,type:"solid"}}};this.options.xAxis[2]=t},setOptionsY:function(){var e=this.optionsSetup,t={show:e.lineY,lineStyle:{color:e.lineColorY}},a={show:e.tickLineY},i={show:e.hideY,textStyle:{align:e.textAlign,color:e.colorY,fontSize:e.fontSizeY}};this.options.yAxis[1].axisLine=t,this.options.yAxis[1].axisTick=a,this.options.yAxis[1].axisLabel=i},setOptionsTop:function(){var e=this.optionsSetup,t=this.options.series;for(var a in t)"bar"==t[a].type&&(t[0].label={normal:{show:e.isShow,position:"insideLeft",textStyle:{fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight}},emphasis:{show:!1}},t[1].label={normal:{show:e.isShow,color:"red",position:"insideRight",textStyle:{fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight}},emphasis:{show:!1}},t[a].barWidth=e.maxWidth);this.options.series=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.fontSize}};this.options.tooltip=t},setOptionsGrid:function(){var e=this.optionsSetup,t=[{show:e.frameLineLeft,left:e.marginLeftRight,top:e.marginTop,bottom:e.marginBottom,containLabel:!0,width:"40%"},{show:!1,left:"51%",top:e.marginTop,bottom:e.marginBottom+15,width:"0%"},{show:e.frameLineRight,right:e.marginLeftRight,top:e.marginTop,bottom:e.marginBottom,containLabel:!0,width:"40%"}];this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup,t=e.customColor;if(t){var a={normal:{color:t[0].color,barBorderRadius:[e.radius,0,0,e.radius]},emphasis:{show:!1}},i={normal:{color:t[1].color,barBorderRadius:[0,e.radius,e.radius,0]},emphasis:{show:!1}};this.options.series[0].itemStyle=a,this.options.series[1].itemStyle=i}},setOptionsData:function(){var e=this.optionsSetup,t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData,e):this.dynamicDataFn(t.dynamicData,t.refreshTime,e)},setUnique:function(e){var t=[];return e.forEach(function(e){return t.includes(e)?"":t.push(e)}),t},staticDataFn:function(e){var t=[],a=[],i=[],o=[];for(var n in e)t[n]=e[n].axis,a[n]=e[n].name;for(var l in t=this.setUnique(t),a=this.setUnique(a)){var r=new Array(a.length).fill(0);for(var s in t)for(var u in e)e[u].name==a[l]&&e[u].axis==t[s]&&(r[s]=e[u].data);i.push({name:a[l],data:r}),o.push(a[l])}this.options.series[0].name=i[0].name,this.options.series[0].data=i[0].data,this.options.series[1].name=i[1].name,this.options.series[1].data=i[1].data,this.options.yAxis[1].data=t,this.options.legend.data=o,this.setOptionsLegendName(o)},dynamicDataFn:function(e,t,a){var i=this;e&&(this.ispreview?(this.getEchartData(e,a),this.flagInter=setInterval(function(){i.getEchartData(e,a)},t)):this.getEchartData(e,a))},getEchartData:function(e,t){var a=this;this.queryEchartsData(e).then(function(e){a.renderingFn(t,e)})},renderingFn:function(e,t){var a=[];this.options.yAxis[1].data=t.xAxis,"bar"==t.series[0].type&&(this.options.series[0].name=t.series[0].name,this.options.series[0].data=t.series[0].data,this.options.series[1].name=t.series[1].name,this.options.series[1].data=t.series[1].data,a.push(t.series[0].name),a.push(t.series[1].name)),this.options.legend.data=a,this.setOptionsLegendName(a)}}},o=(a("j9f0"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"15a4a600",null);n.options.__file="widgetBarCompareChart.vue";t.a=n.exports},XgKG:function(e,t,a){"use strict";var i=a("tC89");a.n(i).a},"Y+Zb":function(e,t,a){},Y48Z:function(e,t,a){},Ydp4:function(e,t,a){"use strict";var i=a("cBk1");a.n(i).a},a8b3:function(e,t,a){"use strict";var i=a("Y+Zb");a.n(i).a},aVQV:function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetFunnel",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{color:[],title:{text:"",textStyle:{color:"#fff"}},tooltip:{trigger:"item",formatter:"{a} <br/>{b} : {c}"},legend:{x:"center",y:"92%",textStyle:{color:"#fff"}},series:[{name:"",type:"funnel",left:"center",width:"80%",sort:"descending",label:{normal:{show:!0,position:"inside",formatter:"{c}",textStyle:{color:"#fff",fontSize:14}},emphasis:{position:"inside",formatter:"{b}: {c}"}},itemStyle:{normal:{opacity:.8,borderColor:"rgba(12, 13, 43, .9)",borderWidth:1,shadowBlur:4,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"rgba(0, 0, 0, .6)"}},data:[]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setEnding(),this.setOptionsText(),this.setOptionsTitle(),this.setOptionsTooltip(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData()},setEnding:function(){var e=this.optionsSetup,t=this.options.series;e.ending?t[0].sort="ascending":t[0].sort="descending"},setOptionsText:function(){var e=this.optionsSetup,t={show:e.isShow,position:"inside",formatter:"{c}",textStyle:{color:e.color,fontSize:e.fontSize,fontWeight:e.fontWeight}};this.options.series[0].label.normal=t},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.tipFontSize}};this.options.tooltip=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.right=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsColor:function(){var e=this.optionsSetup.customColor;if(e){for(var t=[],a=0;a<e.length;a++)t.push(e[a].color);this.options.color=t,this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t="string"==typeof e?JSON.parse(e):e;for(var a in this.options.series)"funnel"==this.options.series[a].type&&(this.options.series[a].data=t)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){for(var t in this.options.series)"funnel"==this.options.series[t].type&&(this.options.series[t].data=e)}}},l=(a("xFol"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"c05cc2de",null);r.options.__file="widgetFunnel.vue";t.a=r.exports},aznp:function(e,t,a){"use strict";var i=a("Q61O");a.n(i).a},cBk1:function(e,t,a){},cU14:function(e,t,a){"use strict";var i=a("CZ5I");a.n(i).a},cWz8:function(e,t,a){"use strict";var i={name:"WidgetTime",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{timestr:"",options:{}}},computed:{transStyle:function(){return console.log(this.objToOne(this.options)),this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",color:this.transStyle.color||"#fff",text:this.transStyle.text||"文本框","font-size":this.transStyle.fontSize+"px"||"30px","letter-spacing":this.transStyle.letterSpacing+"em",background:this.transStyle.background,"font-weight":this.transStyle.fontWeight,"text-align":this.transStyle.textAlign,display:void 0==this.transStyle.hideLayer?"block":this.transStyle.hideLayer?"none":"block",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px"}}},watch:{value:{handler:function(e){this.options=e},deep:!0}},mounted:function(){this.options=this.value,this.getTime()},methods:{formatFunction:function(e,t){/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(e.getFullYear()+"").substr(4-RegExp.$1.length)));var a={"M+":e.getMonth()+1,"d+":e.getDate(),"h+":e.getHours(),"m+":e.getMinutes(),"s+":e.getSeconds(),"q+":Math.floor((e.getMonth()+3)/3),S:e.getMilliseconds()};for(var i in a)new RegExp("("+i+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?a[i]:("00"+a[i]).substr((""+a[i]).length)));return t},check:function(e){return e<10?"0"+e:e},formatWeek:function(e,t){for(var a=e.getFullYear(),i=e.getMonth()+1,o=e.getDate(),n=e.getHours(),l=e.getMinutes(),r=e.getSeconds(),s=e.getDay(),u=["日","一","二","三","四","五","六"],c=0;c<7;c++)s==c&&(s=" 星期"+u[c]);return"year-week"==t?a+"-"+i+"-"+o+s:"year-h-m-week"==t?a+"-"+i+"-"+o+" "+n+":"+l+s:"year-h-m-s-week"==t?a+"-"+i+"-"+o+" "+n+":"+l+":"+r+s:"week"==t?s:void 0},displayTime:function(){this.timestr=this.transStyle.timeFormat.indexOf("week")>-1?this.formatWeek(new Date,this.transStyle.timeFormat):this.formatFunction(new Date,this.transStyle.timeFormat)},getTime:function(){var e=this;setInterval(function(){e.displayTime()},1e3)}}},o=(a("/y+v"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement;return(this._self._c||e)("div",{staticClass:"text",style:this.styleColor},[this._v(this._s(this.timestr))])},[],!1,null,"6da4b633",null);n.options.__file="widgetTime.vue";t.a=n.exports},"cf/8":function(e,t,a){},ctb9:function(e,t,a){},cyzc:function(e,t,a){"use strict";var i={name:"WidgetImage",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",background:this.transStyle.background,"text-align":this.transStyle.textAlign,width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px"}},imgStyle:function(){return{imageAdress:this.transStyle.imageAdress,"border-radius":this.transStyle.borderRadius+"px",opacity:this.transStyle.transparency/100}}},watch:{value:{handler:function(e){this.options=e},deep:!0}},created:function(){this.options=this.value},mounted:function(){},methods:{}},o=(a("palL"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"imagebox",style:this.styleColor},[t("img",{class:this.transStyle.startRotate?"startImg":"",style:this.imgStyle,attrs:{src:this.imgStyle.imageAdress,alt:""}})])},[],!1,null,"92e12b86",null);n.options.__file="widgetImage.vue";t.a=n.exports},eVDu:function(e,t,a){"use strict";var i=a("53tm");a.n(i).a},fYW0:function(e,t,a){"use strict";var i=a("2Hon");a.n(i).a},gLgb:function(e,t,a){"use strict";var i={name:"WidgetHref",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",color:this.transStyle.color||"#fff","font-weight":this.transStyle.fontWeight||"600",text:this.transStyle.text||"超链接","font-size":this.transStyle.fontSize+"px"||"12px","letter-spacing":this.transStyle.letterSpacing+"em",background:this.transStyle.background,"text-align":this.transStyle.textAlign,display:void 0==this.transStyle.hideLayer?"block":this.transStyle.hideLayer?"none":"block",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",linkAdress:this.transStyle.linkAdress,jumpMode:"other"==this.transStyle.jumpMode?"_blank":"_self"}}},watch:{value:{handler:function(e){this.options=e},deep:!0}},mounted:function(){this.options=this.value},methods:{}},o=(a("uLc6"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement;return(this._self._c||e)("a",{style:this.styleColor,attrs:{href:this.styleColor.linkAdress,target:this.styleColor.jumpMode}},[this._v(this._s(this.styleColor.text))])},[],!1,null,"6ebd3276",null);n.options.__file="widgetHref.vue";t.a=n.exports},gvzL:function(e,t,a){},"h+18":function(e,t,a){"use strict";var i=a("T7H8");a.n(i).a},h6gK:function(e,t,a){"use strict";var i=a("cf/8");a.n(i).a},j9f0:function(e,t,a){"use strict";var i=a("jof3");a.n(i).a},jOJk:function(e,t,a){"use strict";var i=a("1OLZ");a.n(i).a},jZP0:function(e,t,a){"use strict";var i=a("OeK3");a.n(i).a},jmgl:function(e,t,a){"use strict";var i=a("TSjp"),o=a.n(i),n={name:"WidgetGauge",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{series:[{type:"gauge",z:100,axisLine:{lineStyle:{width:10,color:[[.3,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(0, 237, 3,0.1)"},{offset:.5,color:"rgba(0, 237, 3,0.6)"},{offset:1,color:"rgba(0, 237, 3,1)"}])],[.7,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(255, 184, 0,0.1)"},{offset:.5,color:"rgba(255, 184, 0,0.6)"},{offset:1,color:"rgba(255, 184, 0,1)"}])],[1,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(175, 36, 74,0.1)"},{offset:.5,color:"rgba(255, 36, 74,0.6)"},{offset:1,color:"rgba(255, 36, 74,1)"}])]]}},pointer:{itemStyle:{color:"auto"}},axisTick:{show:!0,distance:0,length:10,lineStyle:{color:"auto",width:2}},splitLine:{show:!0,distance:0,length:14,lineStyle:{color:"auto",width:4}},axisLabel:{show:!0,color:"white",distance:2,fontSize:10},detail:{valueAnimation:!0,formatter:"{value} %",color:"white",fontSize:18},data:[{value:70}]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptions(),this.setOptionsData()},setOptions:function(){var e=this.optionsSetup,t=this.options.series;if("gauge"==t[0].type){var a={show:e.ringShow,lineStyle:{width:e.pieWeight,color:[[.3,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:e.color30p0},{offset:.5,color:e.color30p5},{offset:1,color:e.color30p10}])],[.7,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:e.color70p0},{offset:.5,color:e.color70p5},{offset:1,color:e.color70p10}])],[1,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:e.color100p0},{offset:.5,color:e.color100p5},{offset:1,color:e.color100p10}])]]}},i={show:e.tickShow,distance:e.tickDistance,length:e.tickLength,lineStyle:{color:"auto",width:e.tickWidth}},n={show:e.splitShow,distance:e.splitDistance,length:e.splitLength,lineStyle:{color:"auto",width:e.splitWidth}};t[0].axisLine=a,t[0].axisTick=i,t[0].splitLine=n}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t=this.optionsSetup,a=this.options.series,i=[{value:e[0].num}],o={valueAnimation:!0,formatter:"{value} %",color:t.labelColor,fontSize:t.labelFontSize,fontWeight:t.labelFontWeight};a[0].data=i,a[0].detail=o},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){var t=this.optionsSetup,a=this.options.series,i=[{value:e[0].value}],o={valueAnimation:!0,formatter:"{value} %",color:t.labelColor,fontSize:t.labelFontSize,fontWeight:t.labelFontWeight};a[0].data=i,a[0].detail=o}}},l=(a("Ydp4"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"a83b2528",null);r.options.__file="widgetGauge.vue";t.a=r.exports},jof3:function(e,t,a){},kLPZ:function(e,t,a){"use strict";var i=a("I8wO");a.n(i).a},kq3f:function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetPieNightingaleRoseArea",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{legend:{top:"bottom"},toolbox:{show:!0,feature:{mark:{show:!0}}},series:[{type:"pie",radius:["10%","50%"],center:["50%","50%"],roseType:"area",itemStyle:{borderRadius:8},data:[]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsValue(),this.setOptionsTooltip(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData(),this.setOptionsRosetype()},setOptionsRosetype:function(){this.options.series[0].roseType=this.optionsSetup.nightingleRosetype},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsValue:function(){var e=this.optionsSetup,t=this.options.series,a=e.numberValue?"{c}":"",i=e.percentage?"({d})%":"",o={show:e.isShow,formatter:"{a|{b}:"+a+" "+i+"}",rich:{a:{padding:[-30,15,-20,15],color:e.subTextColor,fontSize:e.fontSize,fontWeight:e.fontWeight}},fontSize:e.fontSize,fontWeight:e.optionsCollapse};for(var n in t)"pie"==t[n].type&&(t[n].label=o,t[n].labelLine={show:e.isShow})},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.fontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left="left"==e.lateralPosition?0:"auto",t.right="right"==e.lateralPosition?0:"auto",t.top="top"==e.longitudinalPosition?0:"auto",t.bottom="bottom"==e.longitudinalPosition?0:"auto",t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.fontSize},t.itemWidth=e.lengedWidth},setOptionsColor:function(){var e=this.optionsSetup.customColor;if(e){for(var t=[],a=0;a<e.length;a++)t.push(e[a].color);this.options.color=t,this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t="string"==typeof e?JSON.parse(e):e;for(var a in this.options.series)"pie"==this.options.series[a].type&&(this.options.series[a].data=t)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){for(var t in this.options.series)"pie"==this.options.series[t].type&&(this.options.series[t].data=e)}}},l=(a("cU14"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"3fe2ff9e",null);r.options.__file="widgetPieNightingaleRose.vue";t.a=r.exports},lV0h:function(e,t,a){"use strict";var i=a("Wbec");a.n(i).a},mJoS:function(e,t,a){},mlo3:function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetBarchart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{grid:{},legend:{textStyle:{color:"#fff"}},xAxis:{type:"category",data:[],axisLabel:{show:!0,textStyle:{color:"#fff"}}},yAxis:{type:"value",data:[],axisLabel:{show:!0,textStyle:{color:"#fff"}}},series:[{data:[],type:"bar",barGap:"0%",itemStyle:{borderRadius:null}}]},optionsStyle:{},optionsData:{},optionsSetup:{},flagInter:null}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsTop(),this.setOptionsTooltip(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.xNameColor,fontSize:e.xNameFontSize},nameRotate:e.textAngle,inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngle,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t={type:"value",scale:e.scale,splitNumber:e.splitNumber,show:e.isShowY,name:e.textNameY,nameTextStyle:{color:e.nameColorY,fontSize:e.nameFontSizeY},inverse:e.reversalY,axisLabel:{show:!0,rotate:e.ytextAngle,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:e.isShowSplitLineY,lineStyle:{color:e.splitLineColorY}}};this.options.yAxis=t},setOptionsTop:function(){var e=this.optionsSetup,t=this.options.series;"bar"==t[0].type&&(e.verticalShow?t[0].label={show:e.isShow,position:"right",distance:e.distance,textStyle:{fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight}}:t[0].label={show:e.isShow,position:"top",distance:e.distance,fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight}),t[0].barWidth=e.maxWidth,t[0].barMinHeight=e.minHeight},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.tipFontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.right=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.fontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup,t=e.customColor;if(t){for(var a=[],i=0;i<t.length;i++)a.push(t[i].color);var n={normal:{color:function(e){return a[e.dataIndex]},barBorderRadius:e.radius}};for(var l in this.options.series)"bar"==this.options.series[l].type&&(this.options.series[l].itemStyle=n);this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsSetup,t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData):this.dynamicDataFn(t.dynamicData,t.refreshTime,e)},staticDataFn:function(e){var t=this.optionsSetup,a=this.options.series,i=[],o=[];for(var n in e)i[n]=e[n].axis,o[n]=e[n].data;t.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=i,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=i,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value"),"bar"==a[0].type&&(a[0].data=o);var l=[];l.push("销售量"),this.options.legend.data=l,this.setOptionsLegendName(l)},dynamicDataFn:function(e,t,a){var i=this;e&&(this.ispreview?(this.getEchartData(e,a),this.flagInter=setInterval(function(){i.getEchartData(e,a)},t)):this.getEchartData(e,a))},getEchartData:function(e,t){var a=this;this.queryEchartsData(e).then(function(e){a.renderingFn(t,e)})},renderingFn:function(e,t){e.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=t.xAxis,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=t.xAxis,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value");var a=this.options.series,i=[];for(var o in a)"bar"==a[o].type&&(a[o].name=t.series[o].name,a[o].data=t.series[o].data),i.push(t.series[o].name);this.options.legend.data=i,this.setOptionsLegendName(i)}}},l=(a("zW8F"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"0800a9a0",null);r.options.__file="widgetBarchart.vue";t.a=r.exports},nzh8:function(e,t,a){"use strict";var i=a("MBQa");a.n(i).a},o8B9:function(e,t,a){},palL:function(e,t,a){"use strict";var i=a("3bza");a.n(i).a},pizJ:function(e,t,a){"use strict";var i={name:"widgetRotatePieChart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{title:{},series:[{name:"最外环",type:"pie",silent:!0,radius:["98%","97%"],label:{normal:{show:!1}},labelLine:{normal:{show:!1}},itemStyle:{normal:{show:!1}},data:[0]},{name:"外四环",type:"pie",zlevel:2,silent:!0,radius:["90%","91%"],startAngle:50,hoverAnimation:!1,label:{normal:{show:!1}},labelLine:{normal:{show:!1}},data:[0]},{name:"里四环",type:"pie",zlevel:3,silent:!0,radius:["88%","87%"],label:{normal:{show:!1}},labelLine:{normal:{show:!1}},data:[0]},{name:"虚线环",type:"pie",zlevel:4,silent:!0,radius:["84%","83%"],label:{normal:{show:!1}},labelLine:{normal:{show:!1}},data:[0]},{name:"三分环",type:"pie",zlevel:5,silent:!0,radius:["80%","78%"],color:["#fc8d89","#46d3f3","rgba(203,203,203,.2)"],startAngle:50,avoidLabelOverlap:!1,hoverAnimation:!1,label:{normal:{show:!1}},data:[50,20,40]},{name:"外指标环",type:"gauge",splitNumber:30,min:0,max:100,radius:"73%",center:["50%","50%"],startAngle:90,endAngle:-269.9999,axisLabel:{show:!1},pointer:{show:0},detail:{show:0}},{name:"里指标环",type:"gauge",splitNumber:30,min:0,max:100,radius:"68%",center:["50%","50%"],startAngle:90,endAngle:-269.9999,axisLabel:{show:!1},pointer:{show:0},detail:{show:!1}},{name:"环外环",type:"pie",zlevel:20,silent:!0,radius:["60%","59%"],hoverAnimation:!1,label:{normal:{show:!1}},labelLine:{normal:{show:!1}}},{name:"中间环形图",type:"pie",radius:["40%","55%"],avoidLabelOverlap:!1,hoverAnimation:!1,itemStyle:{normal:{color:"#80ADD2",borderColor:"#3D4268"}},label:{normal:{show:!1,position:"center"},emphasis:{show:!0,textStyle:{fontSize:"30",fontWeight:"bold"}}},labelLine:{normal:{show:!1}},data:[25,25,25,25,25,25]}]},optionsStyle:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsLastRing(),this.setOptionsEightRing(),this.setOptionsDottedRing(),this.setOptionsThreeRing(),this.setOptionsOutRing(),this.setOptionsInRing(),this.setOptionsRingOnRing(),this.setOptionsPie()},setColor:function(e){return""==e&&(e="rgba(0,0,0,0)"),e},setOptionsLastRing:function(){var e=this.optionsSetup,t=this.options.series[0];e.isLastRingShow?t.data=[0]:t.data="";var a={color:{colorStops:[{offset:0,color:this.setColor(e.lastRing0Color)},{offset:1,color:this.setColor(e.lastRing100Color)}]}};t.itemStyle.normal=a},setRingPie2:function(){for(var e=this.optionsSetup,t=[],a=0;a<8;a++)a%2==0?t.push({name:(a+1).toString(),value:25,itemStyle:{normal:{color:this.setColor(e.eightColor),borderWidth:0,borderColor:"rgba(0,0,0,0)"}}}):t.push({name:(a+1).toString(),value:20,itemStyle:{normal:{color:"rgba(0,0,0,0)"}}});return t},setOptionsEightRing:function(){var e=this.options.series;e[1].data=this.setRingPie2(),e[2].data=this.setRingPie2()},setRingPie3:function(){for(var e=this.optionsSetup,t=[],a=0;a<2*e.dottedNum;a++)a%2==0?t.push({name:(a+1).toString(),value:25,itemStyle:{normal:{color:this.setColor(e.dottedColor),borderWidth:0,borderColor:"rgba(0,0,0,0)"}}}):t.push({name:(a+1).toString(),value:20,itemStyle:{normal:{color:"rgba(0,0,0,0)"}}});return t},setOptionsDottedRing:function(){this.options.series[3].data=this.setRingPie3()},setOptionsThreeRing:function(){var e=this.optionsSetup;this.options.series[4].color=[this.setColor(e.three1Color),this.setColor(e.three2Color),this.setColor(e.three3Color)]},setOptionsOutRing:function(){var e=this.optionsSetup,t=this.options.series,a={show:e.isOutRingShow,lineStyle:{width:e.outRingWidth,shadowBlur:0,color:[[1,this.setColor(e.outRingColor)]]}},i={show:e.isOutTickShow,lineStyle:{color:this.setColor(e.outTickColor),width:e.outTickWidth},length:e.outTickLength,splitNumber:e.outTickWidth};t[5].splitNumber=e.outSplitNum;var o={show:e.isOutSplitShow,length:e.outSplitLength,lineStyle:{color:this.setColor(e.outSplitColor),width:e.outSplitWidth}};t[5].axisLine=a,t[5].axisTick=i,t[5].splitLine=o},setOptionsInRing:function(){var e=this.optionsSetup,t=this.options.series,a={show:e.isInRingShow,lineStyle:{width:e.inRingWidth,shadowBlur:0,color:[[1,this.setColor(e.inRingColor)]]}},i={show:e.isInTickShow,lineStyle:{color:this.setColor(e.inTickColor),width:e.inTickWidth},length:e.inTickLength,splitNumber:e.inTickNum};t[6].splitNumber=e.inSplitNum;var o={show:e.isInSplitShow,length:e.inSplitLength,lineStyle:{color:this.setColor(e.inSplitColor),width:e.inSplitWidth}};t[6].axisLine=a,t[6].axisTick=i,t[6].splitLine=o},setOptionsRingOnRing:function(){var e=this.optionsSetup,t=this.options.series[7];e.isRingOnRingShow?t.data=[0]:t.data="";var a={normal:{color:this.setColor(e.ringOnRingColor)}};t.itemStyle=a},setOptionsPie:function(){var e=this.optionsSetup,t=this.options.series[8],a=e.pieWidth+"%";t.radius=[a,"55%"];var i=e.pieBlocks;t.data="six"==i?[25,25,25,25,25,25]:"five"==i?[30,30,30,30,30]:[40,40,40,40];var o={normal:{color:this.setColor(e.pieColor),borderColor:this.setColor(e.pieBorderColor)}};t.itemStyle=o}}},o=(a("Urap"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"3ae5e8e1",null);n.options.__file="widgetDecoratePieChart.vue";t.a=n.exports},qjan:function(e,t,a){"use strict";var i=a("UNVJ");a.n(i).a},"qpv/":function(e,t,a){"use strict";var i=a("Rk6N");a.n(i).a},rMB3:function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetLinechart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{grid:{},color:[],title:{text:"",textStyle:{color:"#fff"}},tooltip:{trigger:"item",formatter:"{a} <br/>{b} : {c}%"},legend:{textStyle:{color:"#fff"}},xAxis:{type:"category",data:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],axisLabel:{show:!0,textStyle:{color:"#fff"}}},yAxis:{type:"value",axisLabel:{show:!0,textStyle:{color:"#fff"}}},series:[{data:[],type:"line"}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsTop(),this.setOptionsTooltip(),this.setOptionsData(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsColor()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.nameColorX,fontSize:e.nameFontSizeX},nameRotate:e.textAngle,inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngle,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t={type:"value",scale:e.scale,splitNumber:e.splitNumber,show:e.isShowY,name:e.textNameY,nameTextStyle:{color:e.nameColorY,fontSize:e.namefontSizeY},inverse:e.reversalY,axisLabel:{show:!0,rotate:e.ytextAngle,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:e.isShowSplitLineY,lineStyle:{color:e.splitLineColorY}}};this.options.yAxis=t},setOptionsTop:function(){var e=this.optionsSetup,t=this.options.series;for(var a in t)"line"==t[a].type&&(t[a].showSymbol=e.markPoint,t[a].symbolSize=e.pointSize,t[a].smooth=e.smoothCurve,e.area?t[a].areaStyle={opacity:e.areaThickness/100}:t[a].areaStyle={opacity:0},t[a].lineStyle={width:e.lineWidth},t[a].label={show:e.isShow,position:"top",distance:10,fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight});this.options.series=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.fontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.right=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.fontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup.customColor;if(e){for(var t=[],a=0;a<e.length;a++)t.push(e[a].color);this.options.color=t,this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t=this.options.series,a=[],i=[];for(var o in e)a[o]=e[o].axis,i[o]=e[o].data;for(var n in this.options.xAxis.data=a,t)"line"==t[n].type&&(t[n].data=i);var l=[];l.push("销售量"),this.options.legend.data=l,this.setOptionsLegendName(l)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){this.options.xAxis.data=e.xAxis;var t=this.options.series,a=[];for(var i in t)"line"==t[i].type&&(t[i].data=e.series[i].data),a.push(e.series[i].name);this.options.legend.data=a,this.setOptionsLegendName(a)}}},l=(a("2A5X"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"6d3f1fb2",null);r.options.__file="widgetLinechart.vue";t.a=r.exports},rP6j:function(e,t,a){},rVG9:function(e,t,a){"use strict";var i=a("ctb9");a.n(i).a},tC89:function(e,t,a){},tHtw:function(e,t,a){"use strict";var i=a("TSjp"),o=a.n(i),n={name:"WidgetGradientColorBarchart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{title:{text:"",x:"center",y:"4%",textStyle:{color:"#fff",fontSize:"22"},subtextStyle:{color:"#90979c",fontSize:"16"}},tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},grid:{top:"15%",right:"3%",left:"5%",bottom:"12%"},legend:{textStyle:{color:"#fff"}},xAxis:{type:"category",data:[],axisLine:{lineStyle:{color:"rgba(255,255,255,0.12)"}},axisLabel:{margin:10,color:"#e2e9ff",textStyle:{fontSize:14}}},yAxis:{name:"",axisLabel:{formatter:"{value}",color:"#e2e9ff"},axisLine:{show:!1,lineStyle:{color:"rgba(255,255,255,0)"}},splitLine:{lineStyle:{color:"rgba(255,255,255,0.12)"}}},series:[{type:"bar",data:[5e3,2600,1300,1300,1250,1500],barWidth:"20px",itemStyle:{normal:{color:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"rgba(0,244,255,1)"},{offset:1,color:"rgba(0,77,167,1)"}],!1),shadowColor:"rgba(0,160,221,1)",shadowBlur:4}},label:{normal:{show:!0,position:["-10","-30"],distance:1,formatter:"{a|{c}}",rich:{a:{fontSize:15,color:"#fff",align:"center"}}}}}]},optionsStyle:{},optionsData:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsTop(),this.setOptionsLegend(),this.setOptionsMargin(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.nameColorX,fontSize:e.nameFontSizeX},nameRotate:e.textAngle,inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngle,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t={type:"value",scale:e.scale,splitNumber:e.splitNumber,show:e.isShowY,name:e.textNameY,nameTextStyle:{color:e.nameColorY,fontSize:e.namefontSizeY},inverse:e.reversalY,axisLabel:{show:!0,rotate:e.ytextAngle,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:e.isShowSplitLineY,lineStyle:{color:e.splitLineColorY}}};this.options.yAxis=t},setOptionsTop:function(){var e=this.optionsSetup,t=this.options.series;"bar"==t[0].type&&(e.verticalShow?t[0].label={show:e.isShow,position:"right",distance:e.distance,fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight}:t[0].label={show:e.isShow,position:"top",distance:e.distance,fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight},t[0].barWidth=e.maxWidth)},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.fontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.right=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.fontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup,t=this.options.series[0].itemStyle,a={};a=e.verticalShow?{color:new o.a.graphic.LinearGradient(1,0,0,0,[{offset:0,color:e.bar0color},{offset:1,color:e.bar100color}]),barBorderRadius:e.radius,shadowColor:e.shadowColor,shadowBlur:e.shadowBlur}:{color:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:e.bar0color},{offset:1,color:e.bar100color}]),barBorderRadius:e.radius,shadowColor:e.shadowColor,shadowBlur:e.shadowBlur},t.normal=a},setOptionsData:function(){var e=this.optionsSetup,t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData):this.dynamicDataFn(t.dynamicData,t.refreshTime,e)},staticDataFn:function(e){var t=this.optionsSetup,a=this.options.series,i=[],o=[];for(var n in e)i[n]=e[n].axis,o[n]=e[n].data;t.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=i,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=i,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value"),"bar"==a[0].type&&(a[0].data=o);var l=[];l.push("销售量"),this.options.legend.data=l,this.setOptionsLegendName(l)},dynamicDataFn:function(e,t,a){var i=this;e&&(this.ispreview?(this.getEchartData(e,a),this.flagInter=setInterval(function(){i.getEchartData(e,a)},t)):this.getEchartData(e,a))},getEchartData:function(e,t){var a=this;this.queryEchartsData(e).then(function(e){a.renderingFn(t,e)})},renderingFn:function(e,t){e.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=t.xAxis,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=t.xAxis,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value");var a=this.options.series,i=[];for(var o in a)"bar"==a[o].type&&(a[o].name=t.series[o].name,a[o].data=t.series[o].data),i.push(t.series[o].name);this.options.legend.data=i,this.setOptionsLegendName(i)}}},l=(a("87dA"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"2dcc2436",null);r.options.__file="widgetGradientColorBarchart.vue";t.a=r.exports},tJTO:function(e,t,a){},u8RD:function(e,t,a){},uLc6:function(e,t,a){"use strict";var i=a("OUmF");a.n(i).a},vL5o:function(e,t,a){},xFol:function(e,t,a){"use strict";var i=a("BPcn");a.n(i).a},xSk4:function(e,t,a){"use strict";var i={name:"WidgetVideo",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",videoAdress:this.transStyle.videoAdress}}},watch:{value:{handler:function(e){this.options=e},deep:!0}},mounted:function(){this.options=this.value},methods:{}},o=(a("3LG+"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement;return(this._self._c||e)("video",{style:this.styleColor,attrs:{src:this.styleColor.videoAdress,controls:"controls"}},[this._v("\n 您的浏览器不支持 video 标签。\n")])},[],!1,null,"2d27c298",null);n.options.__file="widgetVideo.vue";t.a=n.exports},xVz9:function(e,t,a){"use strict";var i={name:"WidgetBarCompareChart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{axisPointer:{link:{xAxisIndex:"all"}},title:{x:"center",textStyle:{color:"#ffffff"}},tooltip:{show:!0,trigger:"axis",axisPointer:{type:"line",lineStyle:{color:"#ffffff",type:"dashed"}}},grid:[{left:30,right:20,top:"60px",containLabel:!0,bottom:"50%"},{left:30,containLabel:!0,right:20,top:"51%"}],legend:{textStyle:{color:"#fff",textAlign:"center"}},xAxis:[{gridIndex:0,show:!0,type:"category",boundaryGap:!0,axisLine:{show:!0,lineStyle:{color:"#ffffff"}},axisTick:{show:!0},axisLabel:{show:!0,textStyle:{interval:0,color:"#ffffff",fontSize:14}},data:[]},{gridIndex:1,show:!0,type:"category",position:"top",boundaryGap:!0,axisLine:{show:!0,lineStyle:{color:"#ffffff"}},axisTick:{show:!0},axisLabel:{show:!1,interval:0},data:[]}],yAxis:[{gridIndex:0,show:!0,scale:!0,axisLabel:{show:!0,textStyle:{color:"#ffffff",fontSize:14}},axisLine:{show:!0,lineStyle:{color:"#ffffff"}},splitLine:{show:!1,lineStyle:{color:"#ffffff"}},axisPointer:{snap:!0}},{gridIndex:1,scale:!1,inverse:!0,axisLabel:{show:!0,textStyle:{color:"#ffffff",fontSize:14}},axisLine:{show:!0,lineStyle:{color:"#ffffff"}},splitLine:{show:!1,lineStyle:{color:"#ffffff"}},axisPointer:{snap:!0}}],series:[{name:"",type:"line",xAxisIndex:0,yAxisIndex:0,showSymbol:!0,symbol:"circle",symbolSize:5,smooth:!0,itemStyle:{color:"#36c5e7"},lineStyle:{color:"#36c5e7",width:2},label:{position:"top",distance:10,show:!0,color:"#36c5e7",fontSize:14},data:[]},{name:"",type:"line",xAxisIndex:1,yAxisIndex:1,showSymbol:!0,symbol:"circle",symbolSize:5,smooth:!0,itemStyle:{color:"#e68b55"},lineStyle:{color:"#e68b55",width:2},label:{position:"bottom",distance:10,show:!0,color:"#e68b55",fontSize:16},data:[]}]},optionsStyle:{},optionsData:{},optionsSetup:{},flagInter:null}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsYTop(),this.setOptionsYBottom(),this.setOptionsTop(),this.setOptionsTooltip(),this.setOptionsGrid(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={gridIndex:0,show:e.isShowX,name:e.xName,nameTextStyle:{color:e.nameColorX,fontSize:e.nameFontSizeX},type:"category",boundaryGap:e.boundaryX,axisLine:{show:e.lineX,lineStyle:{color:e.lineColorX}},axisTick:{show:e.tickLineX},axisLabel:{show:!0,interval:e.splitNumberX,textStyle:{color:e.colorX,fontSize:e.fontSizeX}}},a={gridIndex:1,show:e.isShowX,type:"category",position:"top",boundaryGap:e.boundaryX,axisLine:{show:e.lineX,lineStyle:{color:e.lineColorX}},axisTick:{show:e.tickLineX},axisLabel:{show:!1,interval:e.splitNumberX}};this.options.xAxis[0]=t,this.options.xAxis[1]=a},setOptionsYTop:function(){var e=this.optionsSetup,t={gridIndex:0,splitNumber:e.splitNumberYTop,show:e.isShowYTop,scale:e.scaleYTop,name:e.textNameYTop,nameTextStyle:{color:e.nameColorYTop,fontSize:e.namefontSizeYTop},axisLabel:{show:!0,textStyle:{color:e.colorYTop,fontSize:e.fontSizeYTop}},axisTick:{show:e.tickLineYTop},axisLine:{show:e.lineYTop,lineStyle:{color:e.lineColorYTop}},splitLine:{show:e.splitLineYTop,lineStyle:{width:e.splitLinefontSizeYTop,color:e.splitLineColorYTop}},axisPointer:{snap:!0}};this.options.yAxis[0]=t},setOptionsYBottom:function(){var e=this.optionsSetup,t={gridIndex:1,splitNumber:e.splitNumberYBottom,show:e.isShowYBottom,scale:e.scaleYBottom,name:e.textNameYBottom,nameTextStyle:{color:e.nameColorYBottom,fontSize:e.namefontSizeYBottom},inverse:!0,axisLabel:{show:!0,textStyle:{color:e.colorYBottom,fontSize:e.fontSizeYBottom}},axisTick:{show:e.tickLineYBottom},axisLine:{show:e.lineYBottom,lineStyle:{color:e.lineColorYBottom}},splitLine:{show:e.splitLineYBottom,lineStyle:{width:e.splitLinefontSizeYBottom,color:e.splitLineColorYBottom}},axisPointer:{snap:!0}};this.options.yAxis[1]=t},setOptionsTop:function(){var e=this.optionsSetup,t=this.options.series;for(var a in t)t[a].showSymbol=e.markPoint,t[a].symbolSize=e.pointSize,t[a].smooth=e.smoothCurve,e.area?t[a].areaStyle={opacity:e.areaThickness/100}:t[a].areaStyle={opacity:0};"line"==t[0].type&&(t[0].label={position:"top",distance:10,show:e.isShow,color:e.subTextColor,fontSize:e.fontSize,fontWeight:e.fontWeight},t[1].label={position:"bottom",distance:10,show:e.isShow,color:e.subTextColor,fontSize:e.fontSize,fontWeight:e.fontWeight})},setOptionsTooltip:function(){var e=this.optionsSetup,t={};t="line"==e.tipType?{show:e.tipShow,trigger:"axis",axisPointer:{type:e.tipType,lineStyle:{color:e.tipColor,type:"dashed"}}}:{show:e.tipShow,trigger:"axis",axisPointer:{type:e.tipType,lineStyle:{color:e.tipColor,type:"dashed"},crossStyle:{color:e.tipColor}}},this.options.tooltip=t},setOptionsGrid:function(){var e=this.optionsSetup,t=[{left:e.marginLeft,right:e.marginRight,top:e.marginTop,containLabel:!0,bottom:"50%"},{left:e.marginLeft,right:e.marginRight,containLabel:!0,top:"51%",bottom:e.marginBottom}];this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){for(var e=this.optionsSetup,t=e.customColor,a=this.options.series,i=[],o=0;o<t.length;o++)i.push(t[o].color);if(t)for(var n in a){var l={color:i[n]},r={color:i[n],width:e.lineWidth};this.options.series[n].itemStyle=l,this.options.series[n].lineStyle=r}},setOptionsData:function(){var e=this.optionsSetup,t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData,e):this.dynamicDataFn(t.dynamicData,t.refreshTime,e)},setUnique:function(e){var t=[];return e.forEach(function(e){return t.includes(e)?"":t.push(e)}),t},staticDataFn:function(e){var t=[],a=[],i=[],o=[];for(var n in e)t[n]=e[n].axis,a[n]=e[n].name;for(var l in t=this.setUnique(t),a=this.setUnique(a)){var r=new Array(a.length).fill(0);for(var s in t)for(var u in e)e[u].name==a[l]&&e[u].axis==t[s]&&(r[s]=e[u].data);i.push({name:a[l],data:r}),o.push(a[l])}this.options.series[0].name=i[0].name,this.options.series[0].data=i[0].data,this.options.series[1].name=i[1].name,this.options.series[1].data=i[1].data,this.options.xAxis[0].data=t,this.options.xAxis[1].data=t,this.options.legend.data=o,this.setOptionsLegendName(o)},dynamicDataFn:function(e,t,a){var i=this;e&&(this.ispreview?(this.getEchartData(e,a),this.flagInter=setInterval(function(){i.getEchartData(e,a)},t)):this.getEchartData(e,a))},getEchartData:function(e,t){var a=this;this.queryEchartsData(e).then(function(e){a.renderingFn(t,e)})},renderingFn:function(e,t){var a=[];this.options.xAxis[0].data=t.xAxis,this.options.xAxis[1].data=t.xAxis,"line"==t.series[0].type&&(this.options.series[0].name=t.series[0].name,this.options.series[0].data=t.series[0].data,this.options.series[1].name=t.series[1].name,this.options.series[1].data=t.series[1].data,a.push(t.series[0].name),a.push(t.series[1].name)),this.options.legend.data=a,this.setOptionsLegendName(a)}}},o=(a("jOJk"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"72490f16",null);n.options.__file="widgetLineCompareChart.vue";t.a=n.exports},xkAC:function(e,t,a){},zW8F:function(e,t,a){"use strict";var i=a("4LS8");a.n(i).a},zgVM:function(e,t,a){"use strict";var i={name:"WidgetText",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{},optionsData:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",color:this.transStyle.color,"font-weight":this.transStyle.fontWeight,text:this.transStyle.text,"font-size":this.transStyle.fontSize+"px","letter-spacing":this.transStyle.letterSpacing+"em",background:this.transStyle.background,"text-align":this.transStyle.textAlign,width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px"}}},watch:{value:{handler:function(e){this.options=e,this.optionsData=e.data,this.setOptionsData()},deep:!0}},mounted:function(){this.options=this.value,this.optionsData=this.value.data,this.setOptionsData()},methods:{setOptionsData:function(){var e=this.optionsData;"dynamicData"==e.dataType&&this.dynamicDataFn(e.dynamicData,e.refreshTime)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.styleColor.text=e[0].value,t.$forceUpdate()})}}},o=(a("fYW0"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement;return(this._self._c||e)("div",{staticClass:"text",style:this.styleColor},[this._v(this._s(this.styleColor.text))])},[],!1,null,"ed2d4c6e",null);n.options.__file="widgetText.vue";t.a=n.exports}}]); \ No newline at end of file + */window.setImmediate||(window.setImmediate=window.msSetImmediate||window.webkitSetImmediate||window.mozSetImmediate||window.oSetImmediate||function(){if(!window.postMessage||!window.addEventListener)return null;var e=[void 0],t="zero-timeout-message";return window.addEventListener("message",function(a){if("string"==typeof a.data&&a.data.substr(0,t.length)===t){a.stopImmediatePropagation();var i=parseInt(a.data.substr(t.length),36);e[i]&&(e[i](),e[i]=void 0)}},!0),window.clearImmediate=function(t){e[t]&&(e[t]=void 0)},function(a){var i=e.length;return e.push(a),window.postMessage(t+i.toString(36),"*"),i}}()||function(e){window.setTimeout(e,0)}),window.clearImmediate||(window.clearImmediate=window.msClearImmediate||window.webkitClearImmediate||window.mozClearImmediate||window.oClearImmediate||function(e){window.clearTimeout(e)}),function(a){var o=function(){var e=document.createElement("canvas");if(!e||!e.getContext)return!1;var t=e.getContext("2d");return!!(t.getImageData&&t.fillText&&Array.prototype.some&&Array.prototype.push)}(),n=function(){if(o){for(var e,t,a=document.createElement("canvas").getContext("2d"),i=20;i;){if(a.font=i.toString(10)+"px sans-serif",a.measureText("W").width===e&&a.measureText("m").width===t)return i+1;e=a.measureText("W").width,t=a.measureText("m").width,i--}return 0}}(),l=function(e){for(var t,a,i=e.length;i;t=Math.floor(Math.random()*i),a=e[--i],e[i]=e[t],e[t]=a);return e},r=function(e,t){function a(e,t){return"hsl("+(360*Math.random()).toFixed()+","+(30*Math.random()+70).toFixed()+"%,"+(Math.random()*(t-e)+e).toFixed()+"%)"}if(o){Array.isArray(e)||(e=[e]),e.forEach(function(t,a){if("string"==typeof t){if(e[a]=document.getElementById(t),!e[a])throw"The element id specified is not found."}else if(!t.tagName&&!t.appendChild)throw"You must pass valid HTML elements, or ID of the element."});var i={list:[],fontFamily:'"Trebuchet MS", "Heiti TC", "微軟正黑體", "Arial Unicode MS", "Droid Fallback Sans", sans-serif',fontWeight:"normal",color:"random-dark",minSize:0,weightFactor:1,clearCanvas:!0,backgroundColor:"#fff",gridSize:8,drawOutOfBound:!1,origin:null,drawMask:!1,maskColor:"rgba(255,0,0,0.3)",maskGapWidth:.3,wait:0,abortThreshold:0,abort:function(){},minRotation:-Math.PI/2,maxRotation:Math.PI/2,rotationStep:.1,shuffle:!0,rotateRatio:.1,shape:"circle",ellipticity:.65,classes:null,hover:null,click:null};if(t)for(var r in t)r in i&&(i[r]=t[r]);if("function"!=typeof i.weightFactor){var s=i.weightFactor;i.weightFactor=function(e){return e*s}}if("function"!=typeof i.shape)switch(i.shape){case"circle":default:i.shape="circle";break;case"cardioid":i.shape=function(e){return 1-Math.sin(e)};break;case"diamond":case"square":i.shape=function(e){var t=e%(2*Math.PI/4);return 1/(Math.cos(t)+Math.sin(t))};break;case"triangle-forward":i.shape=function(e){var t=e%(2*Math.PI/3);return 1/(Math.cos(t)+Math.sqrt(3)*Math.sin(t))};break;case"triangle":case"triangle-upright":i.shape=function(e){var t=(e+3*Math.PI/2)%(2*Math.PI/3);return 1/(Math.cos(t)+Math.sqrt(3)*Math.sin(t))};break;case"pentagon":i.shape=function(e){var t=(e+.955)%(2*Math.PI/5);return 1/(Math.cos(t)+.726543*Math.sin(t))};break;case"star":i.shape=function(e){var t=(e+.955)%(2*Math.PI/10);return(e+.955)%(2*Math.PI/5)-2*Math.PI/10>=0?1/(Math.cos(2*Math.PI/10-t)+3.07768*Math.sin(2*Math.PI/10-t)):1/(Math.cos(t)+3.07768*Math.sin(t))}}i.gridSize=Math.max(Math.floor(i.gridSize),4);var u,c,h,p,d,m,f,v=i.gridSize,y=v-i.maskGapWidth,g=Math.abs(i.maxRotation-i.minRotation),b=Math.min(i.maxRotation,i.minRotation),x=i.rotationStep;switch(i.color){case"random-dark":f=function(){return a(10,50)};break;case"random-light":f=function(){return a(50,90)};break;default:"function"==typeof i.color&&(f=i.color)}var S=null;"function"==typeof i.classes&&(S=i.classes);var w,q=!1,C=[],D=function(e){var t,a,i=e.currentTarget,o=i.getBoundingClientRect();e.touches?(t=e.touches[0].clientX,a=e.touches[0].clientY):(t=e.clientX,a=e.clientY);var n=t-o.left,l=a-o.top,r=Math.floor(n*(i.width/o.width||1)/v),s=Math.floor(l*(i.height/o.height||1)/v);return C[r][s]},T=function(e){var t=D(e);if(w!==t){if(w=t,!t)return void i.hover(void 0,void 0,e);i.hover(t.item,t.dimension,e)}},O=function(e){var t=D(e);t&&(i.click(t.item,t.dimension,e),e.preventDefault())},_=[],k=function(e){if(_[e])return _[e];var t=8*e,a=t,o=[];for(0===e&&o.push([p[0],p[1],0]);a--;){var n=1;"circle"!==i.shape&&(n=i.shape(a/t*2*Math.PI)),o.push([p[0]+e*n*Math.cos(-a/t*2*Math.PI),p[1]+e*n*Math.sin(-a/t*2*Math.PI)*i.ellipticity,a/t*2*Math.PI])}return _[e]=o,o},L=function(){return i.abortThreshold>0&&(new Date).getTime()-m>i.abortThreshold},z=function(e,t,a){var o=i.weightFactor(t);if(o<=i.minSize)return!1;var l=1;o<n&&(l=function(){for(var e=2;e*o<n;)e+=2;return e}());var r=document.createElement("canvas"),s=r.getContext("2d",{willReadFrequently:!0});s.font=i.fontWeight+" "+(o*l).toString(10)+"px "+i.fontFamily;var u=s.measureText(e).width/l,c=Math.max(o*l,s.measureText("m").width,s.measureText("W").width)/l,h=u+2*c,p=3*c,d=Math.ceil(h/v),m=Math.ceil(p/v);h=d*v,p=m*v;var f=-u/2,y=.4*-c,g=Math.ceil((h*Math.abs(Math.sin(a))+p*Math.abs(Math.cos(a)))/v),b=Math.ceil((h*Math.abs(Math.cos(a))+p*Math.abs(Math.sin(a)))/v),x=b*v,S=g*v;r.setAttribute("width",x),r.setAttribute("height",S),s.scale(1/l,1/l),s.translate(x*l/2,S*l/2),s.rotate(-a),s.font=i.fontWeight+" "+(o*l).toString(10)+"px "+i.fontFamily,s.fillStyle="#000",s.textBaseline="middle",s.fillText(e,f*l,(y+.5*o)*l);var w=s.getImageData(0,0,x,S).data;if(L())return!1;for(var q,C,D,T=[],O=b,_=[g/2,b/2,g/2,b/2];O--;)for(q=g;q--;){D=v;e:for(;D--;)for(C=v;C--;)if(w[4*((q*v+D)*x+(O*v+C))+3]){T.push([O,q]),O<_[3]&&(_[3]=O),O>_[1]&&(_[1]=O),q<_[0]&&(_[0]=q),q>_[2]&&(_[2]=q);break e}}return{mu:l,occupied:T,bounds:_,gw:b,gh:g,fillTextOffsetX:f,fillTextOffsetY:y,fillTextWidth:u,fillTextHeight:c,fontSize:o}},F=function(e,t,a,o,n){for(var l=n.length;l--;){var r=e+n[l][0],s=t+n[l][1];if(r>=c||s>=h||r<0||s<0){if(!i.drawOutOfBound)return!1}else if(!u[r][s])return!1}return!0},A=function(t,a,o,n,l,r,s,u,c){var h,p,d=o.fontSize;h=f?f(n,l,d,r,s):i.color,p=S?S(n,l,d,r,s):i.classes;var m=o.bounds;m[3],m[0],m[1],m[3],m[2],m[0],e.forEach(function(e){if(e.getContext){var l=e.getContext("2d"),r=o.mu;l.save(),l.scale(1/r,1/r),l.font=i.fontWeight+" "+(d*r).toString(10)+"px "+i.fontFamily,l.fillStyle=h,l.translate((t+o.gw/2)*v*r,(a+o.gh/2)*v*r),0!==u&&l.rotate(-u),l.textBaseline="middle",l.fillText(n,o.fillTextOffsetX*r,(o.fillTextOffsetY+.5*d)*r),l.restore()}else{var s=document.createElement("span"),m="";m="rotate("+-u/Math.PI*180+"deg) ",1!==o.mu&&(m+="translateX(-"+o.fillTextWidth/4+"px) scale("+1/o.mu+")");var f={position:"absolute",display:"block",font:i.fontWeight+" "+d*o.mu+"px "+i.fontFamily,left:(t+o.gw/2)*v+o.fillTextOffsetX+"px",top:(a+o.gh/2)*v+o.fillTextOffsetY+"px",width:o.fillTextWidth+"px",height:o.fillTextHeight+"px",lineHeight:d+"px",whiteSpace:"nowrap",transform:m,webkitTransform:m,msTransform:m,transformOrigin:"50% 40%",webkitTransformOrigin:"50% 40%",msTransformOrigin:"50% 40%"};for(var y in h&&(f.color=h),s.textContent=n,f)s.style[y]=f[y];if(c)for(var g in c)s.setAttribute(g,c[g]);p&&(s.className+=p),e.appendChild(s)}})},W=function(t,a,i,o,n){t>=c||a>=h||t<0||a<0||(u[t][a]=!1,i&&e[0].getContext("2d").fillRect(t*v,a*v,y,y),q&&(C[t][a]={item:n,dimension:o}))},P=function(t,a,o,n,l,r){var s,u,p=l.occupied,d=i.drawMask;if(d&&((s=e[0].getContext("2d")).save(),s.fillStyle=i.maskColor),q){var m=l.bounds;u={x:(t+m[3])*v,y:(a+m[0])*v,w:(m[1]-m[3]+1)*v,h:(m[2]-m[0]+1)*v}}for(var f=p.length;f--;){var y=t+p[f][0],g=a+p[f][1];y>=c||g>=h||y<0||g<0||W(y,g,d,u,r)}d&&s.restore()},I=function(e){var t,a,o;Array.isArray(e)?(t=e[0],a=e[1]):(t=e.word,a=e.weight,o=e.attributes);var n=0===i.rotateRatio?0:Math.random()>i.rotateRatio?0:0===g?b:b+Math.round(Math.random()*g/x)*x,r=z(t,a,n);if(!r)return!1;if(L())return!1;if(!i.drawOutOfBound){var s=r.bounds;if(s[1]-s[3]+1>c||s[2]-s[0]+1>h)return!1}for(var u=d+1;u--;){var p=k(d-u);i.shuffle&&(p=[].concat(p),l(p));for(var m=0;m<p.length;m++){var f=function(i){var l=Math.floor(i[0]-r.gw/2),s=Math.floor(i[1]-r.gh/2);return r.gw,r.gh,!!F(l,s,0,0,r.occupied)&&(A(l,s,r,t,a,d-u,i[2],n,o),P(l,s,0,0,r,e),{gx:l,gy:s,rot:n,info:r})}(p[m]);if(f)return f}}return null},M=function(t,a,i){if(a)return!e.some(function(e){var o=document.createEvent("CustomEvent");return o.initCustomEvent(t,!0,a,i||{}),!e.dispatchEvent(o)},this);e.forEach(function(e){var o=document.createEvent("CustomEvent");o.initCustomEvent(t,!0,a,i||{}),e.dispatchEvent(o)},this)};!function(){var t=e[0];if(t.getContext)c=Math.ceil(t.width/v),h=Math.ceil(t.height/v);else{var a=t.getBoundingClientRect();c=Math.ceil(a.width/v),h=Math.ceil(a.height/v)}if(M("wordcloudstart",!0)){var o,n,l,r,s;if(p=i.origin?[i.origin[0]/v,i.origin[1]/v]:[c/2,h/2],d=Math.floor(Math.sqrt(c*c+h*h)),u=[],!t.getContext||i.clearCanvas)for(e.forEach(function(e){if(e.getContext){var t=e.getContext("2d");t.fillStyle=i.backgroundColor,t.clearRect(0,0,c*(v+1),h*(v+1)),t.fillRect(0,0,c*(v+1),h*(v+1))}else e.textContent="",e.style.backgroundColor=i.backgroundColor,e.style.position="relative"}),o=c;o--;)for(u[o]=[],n=h;n--;)u[o][n]=!0;else{var f=document.createElement("canvas").getContext("2d");f.fillStyle=i.backgroundColor,f.fillRect(0,0,1,1);var y,g,b=f.getImageData(0,0,1,1).data,x=t.getContext("2d").getImageData(0,0,c*v,h*v).data;for(o=c;o--;)for(u[o]=[],n=h;n--;){g=v;e:for(;g--;)for(y=v;y--;)for(l=4;l--;)if(x[4*((n*v+g)*c*v+(o*v+y))+l]!==b[l]){u[o][n]=!1;break e}!1!==u[o][n]&&(u[o][n]=!0)}x=f=b=void 0}if(i.hover||i.click){for(q=!0,o=c+1;o--;)C[o]=[];i.hover&&t.addEventListener("mousemove",T),i.click&&(t.addEventListener("click",O),t.addEventListener("touchstart",O),t.addEventListener("touchend",function(e){e.preventDefault()}),t.style.webkitTapHighlightColor="rgba(0, 0, 0, 0)"),t.addEventListener("wordcloudstart",function e(){t.removeEventListener("wordcloudstart",e),t.removeEventListener("mousemove",T),t.removeEventListener("click",O),w=void 0})}l=0,0!==i.wait?(r=window.setTimeout,s=window.clearTimeout):(r=window.setImmediate,s=window.clearImmediate);var S=function(t,a){e.forEach(function(e){e.removeEventListener(t,a)},this)},D=function e(){S("wordcloudstart",e),s(_)};!function(t,a){e.forEach(function(e){e.addEventListener("wordcloudstart",a)},this)}(0,D);var _=r(function e(){if(l>=i.list.length)return s(_),M("wordcloudstop",!1),void S("wordcloudstart",D);m=(new Date).getTime();var t=I(i.list[l]),a=!M("wordclouddrawn",!0,{item:i.list[l],drawn:t});if(L()||a)return s(_),i.abort(),M("wordcloudabort",!1),M("wordcloudstop",!1),void S("wordcloudstart",D);l++,_=r(e,i.wait)},i.wait)}}()}};r.isSupported=o,r.minFontSize=n,void 0!==(i=function(){return r}.apply(t,[]))&&(e.exports=i)}()}])}(a("TSjp"))},"9H/H":function(e,t,a){"use strict";var i=a("Y48Z");a.n(i).a},BPcn:function(e,t,a){},CJ5O:function(e,t,a){"use strict";var i=a("cLjf"),o=a.n(i),n=a("hDQ3"),l=a.n(n),r=a("sm2R"),s={name:"GetDictionary",props:{dictKey:String,updataDict:String,value:String},data:function(){return{dictionary:"",dictionaryOptions:[]}},watch:{dictKey:{immediate:!0,handler:function(){this.getSystem()}},value:{handler:function(e){this.dictionary=e},deep:!0}},created:function(){this.getSystem()},mounted:function(){this.dictionary=this.value},methods:{getSystem:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(r.a)(e.dictKey);case 2:if(a=t.sent,i=a.code,n=a.data,"200"==i){t.next=7;break}return t.abrupt("return");case 7:e.dictionaryOptions=n;case 8:case"end":return t.stop()}},t,e)}))()},selectChange:function(e){this.$emit("input",e)}}},u=(a("rVG9"),a("ZrdR")),c=Object(u.a)(s,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-select",{attrs:{placeholder:"请选择",clearable:"",size:"mini"},on:{change:e.selectChange},model:{value:e.dictionary,callback:function(t){e.dictionary=t},expression:"dictionary"}},e._l(e.dictionaryOptions,function(e){return a("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)},[],!1,null,"23d4be90",null);c.options.__file="index.vue";t.a=c.exports},CZ5I:function(e,t,a){},Cjkk:function(e,t,a){"use strict";var i=a("/Arj");a.n(i).a},"EO+T":function(e,t,a){"use strict";var i=a("u8RD");a.n(i).a},EwIA:function(e,t,a){},FxKO:function(e,t,a){"use strict";var i=a("TSjp"),o=a.n(i),n=(a("Z5Hk"),{"台湾":[121.5135,25.0308],"黑龙江":[127.9688,45.368],"内蒙古":[110.3467,41.4899],"吉林":[125.8154,44.2584],"北京":[116.4551,40.2539],"辽宁":[123.1238,42.1216],"河北":[114.4995,38.1006],"天津":[117.4219,39.4189],"山西":[112.3352,37.9413],"陕西":[109.1162,34.2004],"甘肃":[103.5901,36.3043],"宁夏":[106.3586,38.1775],"青海":[101.4038,36.8207],"新疆":[87.9236,43.5883],"西藏":[91.11,29.97],"四川":[103.9526,30.7617],"重庆":[108.384366,30.439702],"山东":[117.1582,36.8701],"河南":[113.4668,34.6234],"江苏":[118.8062,31.9208],"安徽":[117.29,32.0581],"湖北":[114.3896,30.6628],"浙江":[119.5313,29.8773],"福建":[119.4543,25.9222],"江西":[116.0046,28.6633],"湖南":[113.0823,28.2568],"贵州":[106.6992,26.7682],"云南":[102.9199,25.4663],"广东":[113.12244,23.009505],"广西":[108.479,23.1152],"海南":[110.3893,19.8516],"上海":[121.4648,31.2891]}),l=[{name:"南海诸岛",value:1},{name:"北京",value:524},{name:"天津",value:14},{name:"上海",value:150},{name:"重庆",value:75},{name:"河北",value:13},{name:"河南",value:83},{name:"云南",value:11},{name:"辽宁",value:19},{name:"黑龙江",value:15},{name:"湖南",value:69},{name:"安徽",value:260},{name:"山东",value:39},{name:"新疆",value:4},{name:"江苏",value:31},{name:"浙江",value:104},{name:"江西",value:36},{name:"湖北",value:1052},{name:"广西",value:33},{name:"甘肃",value:347},{name:"山西",value:8},{name:"内蒙古",value:157},{name:"陕西",value:22},{name:"吉林",value:4},{name:"福建",value:36},{name:"贵州",value:39},{name:"广东",value:996},{name:"青海",value:27},{name:"西藏",value:31},{name:"四川",value:46},{name:"宁夏",value:16},{name:"海南",value:22},{name:"台湾",value:6},{name:"香港",value:2},{name:"澳门",value:9}],r=function(e){for(var t=[],a=0;a<e.length;a++){var i=n[e[a].name];i&&t.push({name:e[a].name,value:i.concat(e[a].value)})}return t},s=100,u=20,c={name:"widgetAirBubbleMap",props:{value:Object,ispreview:Boolean},data:function(){return{options:{tooltip:{show:!0,formatter:function(e){return e.value.length>1?"  "+e.name+"   "+e.value[2]+"  ":"  "+e.name+"   "+e.value+"  "}},geo:{map:"china",show:!0,roam:!1,label:{emphasis:{show:!1}},layoutSize:"80%",itemStyle:{normal:{borderColor:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#00F6FF"},{offset:1,color:"#53D9FF"}],!1),borderWidth:3,shadowColor:"rgba(10,76,139,1)",shadowOffsetY:0,shadowBlur:60}}},series:[{type:"map",map:"china",aspectScale:.75,label:{normal:{position:"right",show:!0,color:"#53D9FF",fontSize:20},emphasis:{show:!0}},itemStyle:{normal:{areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:"#061E3D"}]},borderColor:"#215495",borderWidth:1},emphasis:{areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:"#2B91B7"}]}}},data:l},{type:"effectScatter",coordinateSystem:"geo",rippleEffect:{brushType:"stroke"},showEffectOn:"render",itemStyle:{normal:{color:{type:"radial",x:.5,y:.5,r:.5,colorStops:[{offset:0,color:"rgba(5,80,151,0.2)"},{offset:.8,color:"rgba(5,80,151,0.8)"},{offset:1,color:"rgba(0,108,255,0.7)"}],global:!1}}},label:{normal:{show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(e){return"{cnNum|"+e.data.value[2]+"}"},rich:{cnNum:{fontSize:13,color:"#D4EEFF"}}}},symbol:"circle",symbolSize:function(e){return 0==e[2]?0:(s-u)/5990*e[2]+1.2*(s-(s-u)/5990*6e3)},data:r(l),zlevel:1}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionTextValue(),this.setOptionsData(),this.setOptionAirSize(),this.setOptionMapBlocak()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.show=e.isNoTitle,t.text=e.titleText,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionTextValue:function(){var e=this.optionsSetup,t=this.options.series[0].label,a={position:"right",show:!0,color:e.fontTextColor,fontSize:e.fontTextSize,fontWeight:e.fontTextWeight};t.normal=a},setOptionMapBlocak:function(){var e=this.optionsSetup,t=this.options.series[0].itemStyle,a={areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:e.font0PreColor},{offset:1,color:e.font100PreColor}]},borderColor:"#215495",borderWidth:1},i={areaColor:{x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#073684"},{offset:1,color:e.fontHighlightColor}]}};t.normal=a,t.emphasis=i},setOptionAirSize:function(){s=this.optionsSetup.fontmaxSize4Pin,u=this.optionsSetup.fontminSize4Pin},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){this.options.series[0].data=e;var t=this.optionsSetup,a=this.options.series[1].label,i={show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(e){return"{cnNum|"+e.data.value[2]+"}"},rich:{cnNum:{fontSize:t.fontDataSize,color:t.fontDataColor,fontWeight:t.fontDataWeight}}},o=r(e);this.options.series[1].data=o,a.normal=i},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){this.options.series[0].data=e;var t=this.optionsSetup,a=this.options.series[1].label,i={show:!0,color:"#fff",fontWeight:"bold",position:"inside",formatter:function(e){return"{cnNum|"+e.data.value[2]+"}"},rich:{cnNum:{fontSize:t.fontDataSize,color:t.fontDataColor,fontWeight:t.fontDataWeight}}},o=r(e);this.options.series[1].data=o,a.normal=i}}},h=(a("5wqb"),a("ZrdR")),p=Object(h.a)(c,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"82db8fb2",null);p.options.__file="widgetAirBubbleMap.vue";t.a=p.exports},GWHw:function(e,t,a){"use strict";var i={name:"WidgetIframe",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",iframeAdress:this.transStyle.iframeAdress}}},watch:{value:{handler:function(e){this.options=e},deep:!0}},mounted:function(){this.options=this.value},methods:{}},o=(a("qpv/"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement;return(this._self._c||e)("iframe",{style:this.styleColor,attrs:{src:this.styleColor.iframeAdress,width:"100%",height:"100%"}})},[],!1,null,"537c80f2",null);n.options.__file="widgetIframe.vue";t.a=n.exports},HMir:function(e,t,a){"use strict";var i=a("TSjp"),o=a.n(i),n={name:"widgetMoreBarLineChart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{tooltip:{trigger:"item",axisPointer:{type:"shadow"}},grid:{left:"2%",right:"4%",bottom:"14%",top:"16%",containLabel:!0},legend:{data:["调解成功","调解失败","调解终止","调解成功率"],left:"7%",top:"5%",textStyle:{color:"#666666"},itemWidth:15,itemHeight:10,itemGap:25},xAxis:{type:"category",data:["2012","2013","2014","2015","2016","2017","2018","2019"],axisLine:{lineStyle:{color:"#cdd5e2"}},axisLabel:{textStyle:{color:"#666666"}}},yAxis:[{type:"value",axisLine:{show:!0,lineStyle:{color:"#cdd5e2"}},splitLine:{show:!1},axisLabel:{textStyle:{color:"#666666"}}},{type:"value",nameTextStyle:{color:"#666666"},position:"right",axisLine:{lineStyle:{color:"#cdd5e2"}},splitLine:{show:!1},axisLabel:{show:!0,textStyle:{color:"#666666"}}}],series:[{name:"调解成功",type:"bar",itemStyle:{normal:{color:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#29acff"},{offset:1,color:"#4bdfff"}]),barBorderRadius:6}},data:[]},{name:"调解失败",type:"bar",itemStyle:{normal:{color:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#3d93f2"},{offset:1,color:"#5dc1fd"}]),barBorderRadius:6}},data:[]},{name:"调解终止",type:"bar",itemStyle:{normal:{color:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"#01c871"},{offset:1,color:"#55f49c"}]),barBorderRadius:6}},data:[]},{name:"调解成功率",type:"line",yAxisIndex:1,smooth:!1,symbol:"circle",symbolSize:8,itemStyle:{normal:{color:"#ffa43a",borderColor:"rgba(255, 234, 0, 0.5)",borderWidth:5}},lineStyle:{color:"#ffa43a"},data:[]}]}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsLegend(),this.setOptionsTooltip(),this.setOptionsMargin(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.nameColorX,fontSize:e.nameFontSizeX},nameRotate:e.textAngle,inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngle,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t=[{type:"value",show:e.isShowYLeft,name:e.textNameYLeft,nameTextStyle:{color:e.nameColorYLeft,fontSize:e.namefontSizeYLeft},axisLabel:{show:!0,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:e.isShowYLeft,lineStyle:{color:e.lineColorY}},splitLine:{show:!1}},{type:"value",position:"right",show:e.isShowYRight,name:e.textNameYRight,nameTextStyle:{color:e.nameColorYRight,fontSize:e.namefontSizeYRight},axisLabel:{show:!0,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:e.isShowYRight,lineStyle:{color:e.lineColorY}},splitLine:{show:!1}}];this.options.yAxis=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.tipFontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup.customColor,t=this.options.series;if(e){for(var a=[],i=0;i<e.length;i++)a.push(e[i].color);for(var o in t)"bar"==t[o].type?t[o].itemStyle.normal.color=a[o]:t[o].lineStyle.color=a[o]}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t=this.optionsSetup,a=this.options.series,i=[],o=[],n=[],l=[],r=[];for(var s in e)i[s]=e[s].date,o[s]=e[s].unsales,n[s]=e[s].manus,l[s]=e[s].rework,r[s]=e[s].sales;for(var u in this.options.xAxis.data=i,a)"bar"==a[u].type?(a[u].label={show:t.isShowBar,position:"top",distance:t.distanceBar,fontSize:t.fontSizeBar,color:t.subTextColorBar,fontWeight:t.fontWeightBar},a[u].barWidth=t.maxWidth,a[u].itemStyle.normal.barBorderRadius=t.radius):"line"==a[u].type&&(a[u].yAxisIndex=1,a[u].showSymbol=t.markPoint,a[u].symbolSize=t.pointSize,a[u].smooth=t.smoothCurve,t.area?a[u].areaStyle={opacity:t.areaThickness/100}:a[u].areaStyle={opacity:0},a[u].lineStyle={width:t.lineWidth},a[u].label={show:t.isShowLine,position:"top",distance:t.distanceLine,fontSize:t.fontSizeLine,color:t.subTextColorLine,fontWeight:t.fontWeightLine});a[0].data=o,a[1].data=n,a[2].data=l,a[3].data=r;var c=[];c.push("调解成功"),c.push("调解失败"),c.push("调解终止"),c.push("调解成功率"),this.options.legend.data=c,this.setOptionsLegendName(c)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){var t=this.optionsSetup;this.options.xAxis.data=e.xAxis;var a=[],i=[];for(var o in e.series){var n={};"bar"==e.series[o].type?(n.name=e.series[o].name,n.type=e.series[o].type,n.label={show:t.isShowBar,position:"top",distance:t.distanceBar,fontSize:t.fontSizeBar,color:t.subTextColorBar,fontWeight:t.fontWeightBar},n.barWidth=t.maxWidth,n.itemStyle={normal:{barBorderRadius:t.radius}},n.data=e.series[o].data,a.push(n)):"line"==e.series[o].type&&(n.name=e.series[o].name,n.type=e.series[o].type,n.yAxisIndex=1,n.showSymbol=t.markPoint,n.symbolSize=t.pointSize,n.smooth=t.smoothCurve,t.area?n.areaStyle={opacity:t.areaThickness/100}:n.areaStyle={opacity:0},n.lineStyle={width:t.lineWidth},n.label={show:t.isShowLine,position:"top",distance:t.distanceLine,fontSize:t.fontSizeLine,color:t.subTextColorLine,fontWeight:t.fontWeightLine},n.data=e.series[o].data,a.push(n)),i.push(e.series[o].name)}this.options.series=a,this.options.legend.data=i,this.setOptionsLegendName(i)}}},l=(a("nzh8"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"0a794445",null);r.options.__file="widgetMoreBarLineChart.vue";t.a=r.exports},I8Wc:function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetBarlinechart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{color:[],grid:{},title:{text:"",textStyle:{color:"#fff"}},tooltip:{trigger:"item",formatter:"{a} <br/>{b} : {c}%"},legend:{textStyle:{color:"#fff"}},xAxis:[{type:"category",data:[],axisLabel:{show:!1,textStyle:{color:"#fff"}}}],yAxis:[{type:"value",name:"",min:0,max:250,interval:50,axisLabel:{show:!0,textStyle:{color:"#fff"}}},{type:"value",name:"",min:0,max:25,interval:5,axisLabel:{show:!0,textStyle:{color:"#fff"}}}],series:[{name:"",type:"bar",yAxisIndex:0,data:[],itemStyle:{barBorderRadius:null}},{name:"",type:"line",yAxisIndex:1,data:[],itemStyle:{}}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsLine(),this.setOptionsBar(),this.setOptionsTooltip(),this.setOptionsData(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsColor()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.nameColorX,fontSize:e.nameFontSizeX},nameRotate:e.textAngle,inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngle,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t=[{type:"value",splitNumber:e.splitNumberLeft,show:e.isShowYLeft,name:e.textNameYLeft,nameTextStyle:{color:e.nameColorYLeft,fontSize:e.namefontSizeYLeft},inverse:e.reversalY,axisLabel:{show:!0,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:!1}},{type:"value",splitNumber:e.splitNumberRight,show:e.isShowYRight,name:e.textNameYRight,nameTextStyle:{color:e.nameColorYRight,fontSize:e.namefontSizeYRight},inverse:e.reversalY,axisLabel:{show:!0,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:!1}}];this.options.yAxis=t},setOptionsLine:function(){var e=this.optionsSetup,t=this.options.series;for(var a in t)"line"==t[a].type&&(t[a].showSymbol=e.markPoint,t[a].symbolSize=e.pointSize,t[a].smooth=e.smoothCurve,e.area?t[a].areaStyle={opacity:e.areaThickness/100}:t[a].areaStyle={opacity:0},t[a].lineStyle={width:e.lineWidth},t[a].itemStyle.borderRadius=e.radius,t[a].label={show:e.isShowLine,position:"top",distance:e.distanceLine,fontSize:e.fontSizeLine,color:e.subTextColorLine,fontWeight:e.fontWeightLine});this.options.series=t},setOptionsBar:function(){var e=this.optionsSetup,t=this.options.series;for(var a in t)"bar"==t[a].type&&(t[a].label={show:e.isShowBar,position:"top",distance:e.distanceBar,fontSize:e.fontSizeBar,color:e.subTextColorBar,fontWeight:e.fontWeightBar},t[a].barWidth=e.maxWidth,t[a].barMinHeight=e.minHeight,t[a].itemStyle.barBorderRadius=e.radius);this.options.series=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.tipFontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup.customColor;if(e){for(var t=[],a=0;a<e.length;a++)t.push(e[a].color);this.options.color=t,this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t=this.options.series,a=[],i=[],o=[];for(var n in e)a[n]=e[n].axis,i[n]=e[n].bar,o[n]=e[n].line;for(var l in this.options.xAxis.data=a,t)"bar"==t[l].type?t[l].data=i:t[l].data=o;var r=[];r.push("bar"),r.push("line"),this.options.legend.data=r,this.setOptionsLegendName(r)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){this.options.xAxis.data=e.xAxis;var t=this.options.series,a=[];for(var i in t){for(var o in e.series)t[i].type==e.series[o].type&&(t[i].data=e.series[o].data);a.push(e.series[i].name)}this.options.legend.data=a,this.setOptionsLegendName(a)}}},l=(a("h+18"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"0f247c08",null);r.options.__file="widgetBarlinechart.vue";t.a=r.exports},I8wO:function(e,t,a){},LOcm:function(e,t,a){},MBQa:function(e,t,a){},O5o2:function(e,t,a){},OUmF:function(e,t,a){},OeK3:function(e,t,a){},OnJP:function(e,t,a){},PCNV:function(e,t,a){"use strict";var i=a("WN/g");a.n(i).a},Q61O:function(e,t,a){},Qhiv:function(e,t,a){"use strict";var i=a("O5o2");a.n(i).a},Rk6N:function(e,t,a){},"S+MY":function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetPiechart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{title:{text:"",left:"center",textStyle:{color:"#fff"}},legend:{orient:"vertical",left:"left",textStyle:{color:"#fff"}},series:[{type:"pie",radius:"50%",data:[],emphasis:{itemStyle:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"}}}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsValue(),this.setOptionsTooltip(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData(),this.setOptionsPiechartStyle()},setOptionsPiechartStyle:function(){"shixin"==this.optionsSetup.piechartStyle?this.options.series[0].radius="50%":"kongxin"==this.optionsSetup.piechartStyle&&(this.options.series[0].radius=["40%","70%"])},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.show=e.isNoTitle,t.text=e.titleText,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsValue:function(){var e=this.optionsSetup,t=this.options.series,a=e.numberValue?"{c}":"",i=e.percentage?"({d})%":"",o={show:e.isShow,formatter:"{a|{b}:"+a+" "+i+"}",rich:{a:{padding:[-30,15,-20,15],color:e.subTextColor,fontSize:e.fontSize,fontWeight:e.fontWeight}},fontSize:e.fontSize,fontWeight:e.optionsSetup};for(var n in t)"pie"==t[n].type&&(t[n].label=o,t[n].labelLine={show:e.isShow})},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.fontSize}};this.options.tooltip=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left="left"==e.lateralPosition?0:"auto",t.right="right"==e.lateralPosition?0:"auto",t.top="top"==e.longitudinalPosition?0:"auto",t.bottom="bottom"==e.longitudinalPosition?0:"auto",t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.fontSize},t.itemWidth=e.lengedWidth},setOptionsColor:function(){var e=this.optionsSetup.customColor;if(e){for(var t=[],a=0;a<e.length;a++)t.push(e[a].color);this.options.color=t,this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t="string"==typeof e?JSON.parse(e):e;for(var a in this.options.series)"pie"==this.options.series[a].type&&(this.options.series[a].data=t)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){for(var t in this.options.series)"pie"==this.options.series[t].type&&(this.options.series[t].data=e)}}},l=(a("EO+T"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"b6bc8966",null);r.options.__file="widgetPiechart.vue";t.a=r.exports},T7H8:function(e,t,a){},TUKT:function(e,t,a){"use strict";a("Z5Hk");var i={"上海":[121.4648,31.2891],"东莞":[113.8953,22.901],"东营":[118.7073,37.5513],"中山":[113.4229,22.478],"临汾":[111.4783,36.1615],"临沂":[118.3118,35.2936],"丹东":[124.541,40.4242],"丽水":[119.5642,28.1854],"乌鲁木齐":[87.9236,43.5883],"佛山":[112.8955,23.1097],"保定":[115.0488,39.0948],"兰州":[103.5901,36.3043],"包头":[110.3467,41.4899],"北京":[116.4551,40.2539],"北海":[109.314,21.6211],"南京":[118.8062,31.9208],"南宁":[108.479,23.1152],"南昌":[116.0046,28.6633],"南通":[121.1023,32.1625],"厦门":[118.1689,24.6478],"台州":[121.1353,28.6688],"合肥":[117.29,32.0581],"呼和浩特":[111.4124,40.4901],"咸阳":[108.4131,34.8706],"哈尔滨":[127.9688,45.368],"唐山":[118.4766,39.6826],"嘉兴":[120.9155,30.6354],"大同":[113.7854,39.8035],"大连":[122.2229,39.4409],"天津":[117.4219,39.4189],"太原":[112.3352,37.9413],"威海":[121.9482,37.1393],"宁波":[121.5967,29.6466],"宝鸡":[107.1826,34.3433],"宿迁":[118.5535,33.7775],"常州":[119.4543,31.5582],"广州":[113.5107,23.2196],"廊坊":[116.521,39.0509],"延安":[109.1052,36.4252],"张家口":[115.1477,40.8527],"徐州":[117.5208,34.3268],"德州":[116.6858,37.2107],"惠州":[114.6204,23.1647],"成都":[103.9526,30.7617],"扬州":[119.4653,32.8162],"承德":[117.5757,41.4075],"拉萨":[91.1865,30.1465],"无锡":[120.3442,31.5527],"日照":[119.2786,35.5023],"昆明":[102.9199,25.4663],"杭州":[119.5313,29.8773],"枣庄":[117.323,34.8926],"柳州":[109.3799,24.9774],"株洲":[113.5327,27.0319],"武汉":[114.3896,30.6628],"汕头":[117.1692,23.3405],"江门":[112.6318,22.1484],"沈阳":[123.1238,42.1216],"沧州":[116.8286,38.2104],"河源":[114.917,23.9722],"泉州":[118.3228,25.1147],"泰安":[117.0264,36.0516],"泰州":[120.0586,32.5525],"济南":[117.1582,36.8701],"济宁":[116.8286,35.3375],"海口":[110.3893,19.8516],"淄博":[118.0371,36.6064],"淮安":[118.927,33.4039],"深圳":[114.5435,22.5439],"清远":[112.9175,24.3292],"温州":[120.498,27.8119],"渭南":[109.7864,35.0299],"湖州":[119.8608,30.7782],"湘潭":[112.5439,27.7075],"滨州":[117.8174,37.4963],"潍坊":[119.0918,36.524],"烟台":[120.7397,37.5128],"玉溪":[101.9312,23.8898],"珠海":[113.7305,22.1155],"盐城":[120.2234,33.5577],"盘锦":[121.9482,41.0449],"石家庄":[114.4995,38.1006],"福州":[119.4543,25.9222],"秦皇岛":[119.2126,40.0232],"绍兴":[120.564,29.7565],"聊城":[115.9167,36.4032],"肇庆":[112.1265,23.5822],"舟山":[122.2559,30.2234],"苏州":[120.6519,31.3989],"莱芜":[117.6526,36.2714],"菏泽":[115.6201,35.2057],"营口":[122.4316,40.4297],"葫芦岛":[120.1575,40.578],"衡水":[115.8838,37.7161],"衢州":[118.6853,28.8666],"西宁":[101.4038,36.8207],"西安":[109.1162,34.2004],"贵阳":[106.6992,26.7682],"连云港":[119.1248,34.552],"邢台":[114.8071,37.2821],"邯郸":[114.4775,36.535],"郑州":[113.4668,34.6234],"鄂尔多斯":[108.9734,39.2487],"重庆":[107.7539,30.1904],"金华":[120.0037,29.1028],"铜川":[109.0393,35.1947],"银川":[106.3586,38.1775],"镇江":[119.4763,31.9702],"长春":[125.8154,44.2584],"长沙":[113.0823,28.2568],"长治":[112.8625,36.4746],"阳泉":[113.4778,38.0951],"青岛":[120.4651,36.3373],"韶关":[113.7964,24.7028]},o=["#a6c84c","#ffa022","#46bee9"],n=["广州",[[{name:"广州"},{name:"福州",value:95}],[{name:"广州"},{name:"太原",value:90}],[{name:"广州"},{name:"长春",value:80}],[{name:"广州"},{name:"重庆",value:70}],[{name:"广州"},{name:"西安",value:60}],[{name:"广州"},{name:"成都",value:50}],[{name:"广州"},{name:"常州",value:40}],[{name:"广州"},{name:"北京",value:30}],[{name:"广州"},{name:"北海",value:20}],[{name:"广州"},{name:"海口",value:10}]]],l={name:"widgetMap",props:{value:Object,ispreview:Boolean},data:function(){return{options:{title:{text:"模拟迁徙",subtext:"数据纯属虚构",left:"center",textStyle:{color:"#fff"}},tooltip:{trigger:"item",formatter:function(e){return console.log(e),"effectScatter"==e.seriesType?"流出<br>"+e.seriesName+" ---\x3e "+e.data.name+"<br />人数:"+e.data.value[2]+"人":"lines"==e.seriesType?"流出<br>"+e.data.fromName+" ---\x3e "+e.data.toName+"<br />人数:"+e.data.value+"人":e.name}},legend:{show:!1,orient:"vertical",top:"bottom",left:"right",data:["广州"],textStyle:{color:"#fff"},selectedMode:"single"},geo:{map:"china",label:{emphasis:{show:!0,color:"white"}},roam:!0,itemStyle:{normal:{areaColor:"#323c48",borderColor:"#404a59"},emphasis:{areaColor:"#2a333d"}}},series:[]},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position},deep:!0}},created:function(){this.optionsStyle=this.value.position},mounted:function(){this.initData()},methods:{initData:function(){var e=this.options;e.series.push({name:n[0],type:"lines",zlevel:1,effect:{show:!0,period:6,trailLength:.7,color:"#fff",symbolSize:3},lineStyle:{normal:{color:o[0],width:0,curveness:.2}},data:this.convertData(n[1])},{name:n[0],type:"lines",zlevel:2,effect:{show:!0,period:6,trailLength:0,symbol:"path://M1705.06,1318.313v-89.254l-319.9-221.799l0.073-208.063c0.521-84.662-26.629-121.796-63.961-121.491c-37.332-0.305-64.482,36.829-63.961,121.491l0.073,208.063l-319.9,221.799v89.254l330.343-157.288l12.238,241.308l-134.449,92.931l0.531,42.034l175.125-42.917l175.125,42.917l0.531-42.034l-134.449-92.931l12.238-241.308L1705.06,1318.313z",symbolSize:15},lineStyle:{normal:{color:o[0],width:1,opacity:.4,curveness:.2}},data:this.convertData(n[1])},{name:n[0],type:"effectScatter",coordinateSystem:"geo",zlevel:2,rippleEffect:{brushType:"stroke"},label:{normal:{show:!0,position:"right",formatter:"{b}"}},symbolSize:function(e){return e[2]/8},itemStyle:{normal:{color:o[0]}},data:n[1].map(function(e){return{name:e[1].name,value:i[e[1].name].concat([e[1].value])}})}),this.options=e},convertData:function(e){for(var t=[],a=0;a<e.length;a++){var o=e[a],n=i[o[0].name],l=i[o[1].name];0,n&&l&&t.push({fromName:o[0].name,toName:o[1].name,coords:[n,l],value:o[1].value})}return t}}},r=(a("kLPZ"),a("ZrdR")),s=Object(r.a)(l,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"63da0746",null);s.options.__file="widgetMap.vue";t.a=s.exports},Te6K:function(e,t,a){"use strict";var i=a("vL5o");a.n(i).a},TjL5:function(e,t,a){"use strict";var i=a("EwIA");a.n(i).a},U6Wy:function(e,t,a){"use strict";var i=a("AmEZ"),o=a("TtI4"),n=a.n(o);i.default.use(n.a);var l={props:{value:Object,ispreview:Boolean},data:function(){return{hackReset:!0,options:{titCell:".hd ul",mainCell:".bd ul",effect:"topLoop",autoPage:!0,autoPlay:!0,vis:5,rowHeight:"50px"},header:[],list:[],optionsSetUp:{},optionsPosition:{},optionsData:{}}},computed:{styleObj:function(){console.log(this.optionsSetUp);var e=this.optionsPosition;return{position:this.ispreview?"absolute":"static",width:e.width+"px",height:e.height+"px",left:e.left+"px",top:e.top+"px",background:this.optionsSetUp.tableBgColor}},headerTableStlye:function(){var e=this.optionsSetUp;return{"text-align":e.textAlign,"font-size":e.fontSize+"px","border-style":e.isLine?"solid":"none","border-width":e.borderWidth+"px","border-color":e.borderColor,display:e.isHeader?"block":"none",color:e.headColor,"background-color":e.headBackColor}},bodyTableStyle:function(){var e=this.optionsSetUp;return{"text-align":e.textAlign,"font-size":e.fontSize+"px","border-style":e.isLine?"solid":"none","border-width":e.borderWidth+"px","border-color":e.borderColor,color:e.bodyColor,"background-color":e.tableBgColor}}},watch:{value:{handler:function(e){this.optionsSetUp=e.setup,this.optionsPosition=e.position,this.optionsData=e.data,this.initData()},deep:!0}},mounted:function(){this.optionsSetUp=this.value.setup,this.optionsPosition=this.value.position,this.optionsData=this.value.data,this.initData()},methods:{initData:function(){this.handlerRollFn(),this.handlerHead(),this.handlerData(),this.visConfig()},visConfig:function(){this.options.vis=this.optionsSetUp.vis},handlerRollFn:function(){var e=this.options,t=this.optionsSetUp;e.autoPlay=t.isRoll,e.effect=t.effect,e.interTime=t.interTime,e.delayTime=t.delayTime,e.scroll=t.scroll,this.options=e,this.hackResetFun()},handlerHead:function(){var e=this.optionsSetUp.dynamicAddTable;this.header=e},handlerData:function(){var e=this.optionsData;"staticData"==e.dataType?this.handlerStaticData(e.staticData):this.handlerDynamicData(e.dynamicData,e.refreshTime)},handlerStaticData:function(e){this.list=e},handlerDynamicData:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.list=e,t.hackResetFun()})},hackResetFun:function(){var e=this;this.hackReset=!1,this.$nextTick(function(){e.hackReset=!0})},bodyTable:function(e){var t={};return t["background-color"]=e%2?this.optionsSetUp.eventColor:this.optionsSetUp.oldColor,t},tableRowHeight:function(){var e={};return this.optionsSetUp.rowHeight?(e.height=this.optionsSetUp.rowHeight+"px",e["line-height"]=this.optionsSetUp.rowHeight+"px"):(e.height=this.options.rowHeight,e["line-height"]=this.optionsSetUp.rowHeight+"px"),e},tableFiledWidth:function(e){var t={};return this.optionsSetUp.dynamicAddTable[e].width&&(t.width=this.optionsSetUp.dynamicAddTable[e].width),t}}},r=(a("jZP0"),a("ZrdR")),s=Object(r.a)(l,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{style:e.styleObj},[e.hackReset?a("superslide",{staticClass:"txtScroll-top",attrs:{options:e.options}},[a("div",{staticClass:"title"},e._l(e.header,function(t,i){return a("div",{key:i,style:[e.headerTableStlye,e.tableFiledWidth(i),e.tableRowHeight()]},[e._v("\n "+e._s(t.name)+"\n ")])}),0),e._v(" "),a("div",{staticClass:"bd"},[a("ul",{staticClass:"infoList"},e._l(e.list,function(t,i){return a("li",{key:i,style:e.tableRowHeight()},e._l(e.header,function(o,n){return a("div",{key:n,style:[e.bodyTableStyle,e.bodyTable(i),e.tableFiledWidth(n),e.tableRowHeight()]},[e._v("\n "+e._s(t[o.key])+"\n ")])}),0)}),0)])]):e._e()],1)},[],!1,null,"ff48be56",null);s.options.__file="widgetTable.vue";t.a=s.exports},UNVJ:function(e,t,a){},Ur0O:function(e,t,a){"use strict";var i={name:"WidgetBarStackchart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{grid:{},legend:{textStyle:{color:"#fff"}},xAxis:{type:"category",data:[],axisLabel:{show:!0,textStyle:{color:"#fff"}}},yAxis:{type:"value",data:[],axisLabel:{show:!0,textStyle:{color:"#fff"}}},series:[{data:[],name:"",type:"bar",barGap:"0%",itemStyle:{barBorderRadius:null}}]},optionsStyle:{},optionsData:{},optionsSetup:{},flagInter:null}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsTooltip(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.xNameColor,fontSize:e.xNameFontSize},inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngleX,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t={type:"value",show:e.isShowY,name:e.textNameY,nameTextStyle:{color:e.NameColorY,fontSize:e.NameFontSizeY},inverse:e.reversalY,axisLabel:{show:!0,rotate:e.textAngleY,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:e.isShowSplitLineY,lineStyle:{color:e.splitLineColorY}}};this.options.yAxis=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.tipsFontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsData:function(){var e=this.optionsSetup,t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData,e):this.dynamicDataFn(t.dynamicData,t.refreshTime,e)},setUnique:function(e){var t=[];return e.forEach(function(e){return t.includes(e)?"":t.push(e)}),t},getStackStyle:function(){var e="";return"upDown"==this.optionsSetup.stackStyle&&(e="total"),e},staticDataFn:function(e){for(var t=this.optionsSetup,a=t.customColor,i=[],o=0;o<a.length;o++)i.push(a[o].color);var n=[],l=[],r=[],s=[];for(var u in e)l[u]=e[u].axis,r[u]=e[u].name;for(var c in l=this.setUnique(l),r=this.setUnique(r)){var h=new Array(r.length).fill(0);for(var p in l)for(var d in e)e[d].name==r[c]&&e[d].axis==l[p]&&(h[p]=e[d].data);n.push({name:r[c],type:"bar",data:h,barGap:"0%",stack:this.getStackStyle(),barWidth:t.maxWidth,label:{show:t.isShow,position:"top",distance:10,fontSize:t.fontSize,color:t.subTextColor,fontWeight:t.fontWeight},itemStyle:{normal:{color:i[c],barBorderRadius:t.radius}}}),s.push(r[c])}this.options.series=n,t.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=l,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=l,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value"),this.options.legend.data=s,this.setOptionsLegendName(s)},dynamicDataFn:function(e,t,a){var i=this;e&&(this.ispreview?(this.getEchartData(e,a),this.flagInter=setInterval(function(){i.getEchartData(e,a)},t)):this.getEchartData(e,a))},getEchartData:function(e,t){var a=this;this.queryEchartsData(e).then(function(e){a.renderingFn(t,e)})},renderingFn:function(e,t){for(var a=e.customColor,i=[],o=0;o<a.length;o++)i.push(a[o].color);e.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=t.xAxis,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=t.xAxis,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value");var n=[],l=[];for(var r in t.series)"bar"==t.series[r].type&&n.push({name:t.series[r].name,type:"bar",data:t.series[r].data,barGap:"0%",stack:this.getStackStyle(),barWidth:e.maxWidth,label:{show:e.isShow,position:"top",distance:10,fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight},itemStyle:{normal:{color:i[r],barBorderRadius:e.radius}}}),l.push(t.series[r].name);this.options.series=n,this.options.legend.data=l,this.setOptionsLegendName(l)}}},o=(a("Te6K"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"38f574cf",null);n.options.__file="widgetBarStackChart.vue";t.a=n.exports},Urap:function(e,t,a){"use strict";var i=a("xkAC");a.n(i).a},V47a:function(e,t,a){"use strict";var i={name:"WidgetMarquee",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",color:this.transStyle.color,"font-weight":this.transStyle.fontWeight,text:this.transStyle.text,"font-size":this.transStyle.fontSize+"px","letter-spacing":this.transStyle.letterSpacing+"em",background:this.transStyle.background,"text-align":this.transStyle.textAlign,width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",marqueeSet:this.transStyle.marqueeSet,styleColor:this.transStyle.marqueeQuit}},isBehavior:function(){return this.styleColor.marqueeSet?"start()":"stop()"}},watch:{value:{handler:function(e){this.options=e,this.optionsData=e.data,this.setOptionsData()},deep:!0}},mounted:function(){this.options=this.value,this.optionsData=this.value.data,this.setOptionsData()},methods:{setOptionsData:function(){var e=this.optionsData;"dynamicData"==e.dataType&&this.dynamicDataFn(e.dynamicData,e.refreshTime)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.styleColor.text=e[0].value,t.$forceUpdate()})}}},o=(a("h6gK"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"text",style:this.styleColor},[t("marquee",{attrs:{behavior:"",direction:this.styleColor.direction}},[this._v(this._s(this.styleColor.text))])],1)},[],!1,null,"6b04e136",null);n.options.__file="widgetMarquee.vue";t.a=n.exports},VZcz:function(e,t,a){"use strict";a.r(t);var i=a("cLjf"),o=a.n(i),n=a("hDQ3"),l=a.n(n),r=a("ba/L"),s=a("unDg"),u=[{code:"widget-text",type:"html",label:"文本",icon:"iconziyuan",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"文本框"},{type:"el-input-text",label:"文本内容",name:"text",required:!1,placeholder:"",value:"文本框"},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:"26"},{type:"vue-color",label:"字体颜色",name:"color",required:!1,placeholder:"",value:"#FAD400"},{type:"el-input-number",label:"字体间距",name:"letterSpacing",required:!1,placeholder:"",value:"0"},{type:"vue-color",label:"字体背景",name:"background",required:!1,placeholder:"",value:"rgba(115,170,229,.0)"},{type:"el-select",label:"文字粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-select",label:"对齐方式",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"}],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:"文本框"},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-text",dictKey:"TEXT_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:100},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:40}]}},{code:"widget-marquee",type:"html",label:"滚动文本",icon:"iconhengxiangwenzi",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"跑马灯"},{type:"el-input-text",label:"文本内容",name:"text",required:!1,placeholder:"",value:"滚动文本"},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:"26"},{type:"vue-color",label:"字体颜色",name:"color",required:!1,placeholder:"",value:"#FAD400"},{type:"el-input-number",label:"字体间距",name:"letterSpacing",required:!1,placeholder:"",value:"0"},{type:"vue-color",label:"字体背景",name:"background",required:!1,placeholder:"",value:"rgba(115,170,229,.5)"},{type:"el-select",label:"文字粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:"文本框"},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-text",dictKey:"TEXT_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:100},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:40}]}},{code:"widget-href",type:"html",label:"超链接",icon:"iconchaolianjie",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"超链接"},{type:"el-input-text",label:"文本内容",name:"text",required:!1,placeholder:"",value:"超链接"},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:"26"},{type:"vue-color",label:"字体颜色",name:"color",required:!1,placeholder:"",value:"#FAD400"},{type:"el-input-number",label:"字体间距",name:"letterSpacing",required:!1,placeholder:"",value:"0"},{type:"vue-color",label:"字体背景",name:"background",required:!1,placeholder:"",value:"rgba(115,170,229,.5)"},{type:"el-select",label:"文字粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-select",label:"对齐方式",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-radio-group",label:"跳转方式",name:"jumpMode",required:!1,placeholder:"",selectOptions:[{code:"self",name:"本窗口"},{code:"other",name:"新窗口"}],value:"self"},{type:"el-input-text",label:"超链地址",name:"linkAdress",required:!1,placeholder:"",value:"http://www.baidu.com"}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:100},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:40}]}},{code:"widget-time",type:"html",label:"当前时间",icon:"iconshijian",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"当前时间"},{type:"el-select",label:"时间格式",name:"timeFormat",required:!1,placeholder:"",selectOptions:[{code:"yyyy-MM-dd",name:"日期"},{code:"yyyy-MM-dd hh:mm",name:"日期+时分"},{code:"yyyy-MM-dd hh:mm:ss",name:"日期+时分秒"},{code:"MM-dd",name:"日期无年"},{code:"hh:mm",name:"时分"},{code:"hh:mm:ss",name:"时分秒"},{code:"year-week",name:"日期+星期"},{code:"year-h-m-week",name:"日期+时分+星期"},{code:"year-h-m-s-week",name:"日期+时分秒+星期"},{code:"week",name:"星期"}],value:"yyyy-MM-dd hh:mm:ss"},{type:"el-input-number",label:"字体间距",name:"letterSpacing",required:!1,placeholder:"",value:"0"},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:"26"},{type:"vue-color",label:"字体颜色",name:"color",required:!1,placeholder:"",value:"#FAD400"},{type:"vue-color",label:"字体背景",name:"background",required:!1,placeholder:"",value:"rgba(115,170,229,.5)"},{type:"el-select",label:"文字粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-select",label:"对齐方式",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:300},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:100}]}},{code:"widget-image",type:"html",label:"图片",icon:"icontupian",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"图片"},{type:"el-switch",label:"开启旋转",name:"startRotate",required:!1,placeholder:"",value:!1},{type:"el-slider",label:"透明度",name:"transparency",required:!1,placeholder:"",value:100},{type:"el-input-number",label:"圆角",name:"borderRadius",required:!1,placeholder:"",value:"0"},{type:"custom-upload",label:"图片地址",name:"imageAdress",required:!1,placeholder:"",value:"http://10.108.26.197:9095/file/download/fd20d563-00aa-45e2-b5db-aff951f814ec"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:""}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:300},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-video",type:"html",label:"视频",icon:"iconshipin",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"video"},{type:"el-input-text",label:"地址",name:"videoAdress",required:!1,placeholder:"",value:"https://www.w3school.com.cn//i/movie.ogg"}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:300},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-table",type:"html",label:"表格",icon:"iconbiaoge",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"表格"},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:"16"},{type:"el-input-number",label:"显示行数",name:"vis",required:!1,placeholder:"",value:"5"},{type:"el-input-number",label:"行高",name:"rowHeight",required:!1,placeholder:"",value:"50"},{type:"el-switch",label:"开启滚动",name:"isRoll",required:!1,placeholder:"",value:!0},{type:"el-select",label:"动画效果",name:"effect",required:!1,placeholder:"",selectOptions:[{code:"top",name:"上滚动"},{code:"topLoop",name:"上循环滚动"}],value:"topLoop"},{type:"el-input-number",label:"滚动间隔(毫秒)",name:"interTime",required:!1,placeholder:"",value:2500},{type:"el-input-number",label:"动效时间(毫秒)",name:"delayTime",required:!1,placeholder:"",value:500},{type:"el-input-number",label:"滚动个数",name:"scroll",required:!1,placeholder:"",value:1},{type:"el-switch",label:"边框线",name:"isLine",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"边框宽度",name:"borderWidth",required:!1,placeholder:"",value:1},{type:"vue-color",label:"边框颜色",name:"borderColor",required:!1,placeholder:"",value:"#fff"},[{name:"表头设置",list:[{type:"el-switch",label:"表头显隐",name:"isHeader",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"表头颜色",name:"headColor",require:!1,placeholder:"",value:"#fff"},{type:"vue-color",label:"表头背景",name:"headBackColor",require:!1,placeholder:"",value:"#0a73ff"}]},{name:"表体设置",list:[{type:"vue-color",label:"文字颜色",name:"bodyColor",required:!1,placeholder:"",value:"#fff"},{type:"vue-color",label:"表格背景色",name:"tableBgColor",require:!1,placeholder:"",value:""},{type:"vue-color",label:"奇行颜色",name:"oldColor",require:!1,placeholder:"",value:"#0a2732"},{type:"vue-color",label:"偶行颜色",name:"eventColor",required:!1,placeholder:"",value:"#003b51"}]}],{type:"dynamic-add-table",label:"",name:"dynamicAddTable",required:!1,placeholder:"",value:[{name:"日期",key:"date",width:"50%"},{name:"姓名",key:"name",width:"50%"},{name:"地址",key:"address",width:"200%"}]}],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:3e4},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0001"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0002"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0003"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0004"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0005"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0006"},{date:"2016-05-02",name:"王小虎",address:"上海市普陀区金沙江路 1518 弄0007"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-table",dictKey:"TEXT_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:600},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:300}]}},{code:"widget-iframe",type:"html",label:"内联框架",icon:"iconkuangjia",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"iframe"},{type:"el-input-text",label:"地址",name:"iframeAdress",required:!1,placeholder:"",value:"https://report.anji-plus.com/index.html"}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:300},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-barchart",type:"chart",label:"柱状图",icon:"iconzhuzhuangtu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"柱状图"},{type:"el-switch",label:"竖展示",name:"verticalShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:10},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5},{type:"el-slider",label:"最小高度",name:"minHeight",require:!1,placeholder:"",value:0}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"rgba(30, 144, 255, 1)"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"textAngle",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"数值间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowY",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"textNameY",require:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"ytextAngle",required:!1,placeholder:"",value:0},{type:"el-switch",label:"缩放",name:"scale",require:!1,placeholder:"",value:!1},{type:"el-input-number",label:"均分",name:"splitNumber",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"距离",name:"distance",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体字号",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体字号",name:"tipFontSize",required:!1,placeholder:""},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:""}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#ff7f50"},{color:"#87cefa"},{color:"#da70d6"},{color:"#32cd32"},{color:"#6495ed"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"苹果",data:1e3},{axis:"三星",data:2229},{axis:"小米",data:3879},{axis:"oppo",data:2379},{axis:"vivo",data:4079}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-barchart",dictKey:"BAR_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-gradient-color-barchart",type:"chart",label:"柱状图-渐变色",icon:"iconzhuzhuangtu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"柱形图-渐变色"},{type:"el-switch",label:"竖展示",name:"verticalShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:10},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:22},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#90979c"},{type:"el-input-text",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"textAngle",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"数值间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowY",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"textNameY",require:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"namefontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"ytextAngle",required:!1,placeholder:"",value:0},{type:"el-switch",label:"缩放",name:"scale",require:!1,placeholder:"",value:!1},{type:"el-input-number",label:"均分",name:"splitNumber",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"距离",name:"distance",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipsFontSize",required:!1,placeholder:"",value:16},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"#ff7f50"}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"渐变色",list:[{type:"vue-color",label:"0%处",name:"bar0color",required:!1,placeholder:"",value:"rgba(0,244,255,1)"},{type:"vue-color",label:"100%处",name:"bar100color",required:!1,placeholder:"",value:"rgba(0,77,167,1)"},{type:"vue-color",label:"阴影颜色",name:"shadowColor",required:!1,placeholder:"",value:"rgba(0,160,221,1)"},{type:"el-input-number",label:"模糊系数",name:"shadowBlur",required:!1,placeholder:"",value:4}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"苹果",data:1e3},{axis:"三星",data:2229},{axis:"小米",data:3879},{axis:"oppo",data:2379},{axis:"vivo",data:4079}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-barchart",dictKey:"BAR_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-linechart",type:"chart",label:"折线图",icon:"icontubiaozhexiantu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"折线图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"折线设置",list:[{type:"el-switch",label:"标记点",name:"markPoint",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"点大小",name:"pointSize",required:!1,placeholder:"",value:10},{type:"el-switch",label:"平滑曲线",name:"smoothCurve",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"面积堆积",name:"area",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"面积厚度",name:"areaThickness",required:!1,placeholder:"",value:5},{type:"el-slider",label:"线条宽度",name:"lineWidth",required:!1,placeholder:"",value:4}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!1},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"textAngle",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"数值间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowY",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"textNameY",require:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"namefontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"ytextAngle",required:!1,placeholder:"",value:0},{type:"el-switch",label:"缩放",name:"scale",require:!1,placeholder:"",value:!1},{type:"el-input-number",label:"均分",name:"splitNumber",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-text",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"",value:""}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#1E90FF"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"苹果",data:1e3},{axis:"三星",data:2229},{axis:"小米",data:3879},{axis:"oppo",data:2379},{axis:"vivo",data:4079}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-linechart",dictKey:"LINE_PROPERTIES",relactiveDomValue:"dynamicData"}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-barlinechart",type:"chart",label:"柱线图",icon:"iconzhuxiantu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"柱线图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"折线设置",list:[{type:"el-switch",label:"标记点",name:"markPoint",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"点大小",name:"pointSize",required:!1,placeholder:"",value:5},{type:"el-switch",label:"平滑曲线",name:"smoothCurve",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"面积堆积",name:"area",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"面积厚度",name:"areaThickness",required:!1,placeholder:"",value:5},{type:"el-slider",label:"线条宽度",name:"lineWidth",required:!1,placeholder:"",value:3}]},{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:10},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5},{type:"el-slider",label:"最小高度",name:"minHeight",require:!1,placeholder:"",value:0}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"textAngle",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"数值间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"左显示",name:"isShowYLeft",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"左坐标名",name:"textNameYLeft",require:!1,placeholder:"",value:""},{type:"vue-color",label:"左坐标名颜色",name:"nameColorYLeft",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"左坐标字号",name:"namefontSizeYLeft",required:!1,placeholder:"",value:14},{type:"el-input-number",label:"左均分",name:"splitNumberLeft",required:!1,placeholder:"",value:""},{type:"el-switch",label:"右显示",name:"isShowYRight",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"右坐标名",name:"textNameYRight",require:!1,placeholder:"",value:""},{type:"vue-color",label:"右坐标名颜色",name:"nameColorYRight",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"右坐标字号",name:"namefontSizeYRight",required:!1,placeholder:"",value:14},{type:"el-input-number",label:"右均分",name:"splitNumberRight",required:!1,placeholder:"",value:""},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"折线数值设定",list:[{type:"el-switch",label:"显示",name:"isShowLine",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"距离",name:"distanceLine",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体字号",name:"fontSizeLine",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColorLine",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeightLine",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"柱体数值设定",list:[{type:"el-switch",label:"显示",name:"isShowBar",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"距离",name:"distanceBar",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体字号",name:"fontSizeBar",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColorBar",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeightBar",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipFontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"",value:"#e68b55"}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#00F4FFFF"},{color:"#e68b55"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"1月",bar:2.6,line:2},{axis:"2月",bar:5.9,line:2.2},{axis:"3月",bar:9,line:3.3},{axis:"4月",bar:26.4,line:4.5},{axis:"5月",bar:28.7,line:6.3},{axis:"6月",bar:70.7,line:10.2},{axis:"7月",bar:175.6,line:20.3},{axis:"8月",bar:182.2,line:23.4},{axis:"9月",bar:48.7,line:23},{axis:"10月",bar:18.8,line:16.5},{axis:"11月",bar:6,line:12},{axis:"12月",bar:2.3,line:6.2}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-barlinechart",dictKey:"BAR_LINE_PROPERTIES",relactiveDomValue:"dynamicData"}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:250}]}},{code:"widget-piechart",type:"chart",label:"饼图",icon:"iconicon_tubiao_bingtu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"饼图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},{type:"el-select",label:"饼图样式",name:"piechartStyle",required:!1,placeholder:"",selectOptions:[{code:"shixin",name:"实心饼图"},{code:"kongxin",name:"空心饼图"}],value:"shixin"},[{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:12}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"数值",name:"numberValue",require:!1,placeholder:"",value:!0},{type:"el-switch",label:"百分比",name:"percentage",require:!1,placeholder:"",value:!1},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"网格线颜色",name:"lineColor",required:!1,placeholder:"",value:""}]},{name:"图例操作",list:[{type:"el-switch",label:"图例",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-text",label:"字体大小",name:"lengedFontSize",required:!1,placeholder:"",value:16},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:15},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:""},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:""},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:""}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#0CD2E6"},{color:"#00BFA5"},{color:"#FFC722"},{color:"#886EFF"},{color:"#008DEC"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{value:1048,name:"搜索引擎"},{value:735,name:"直接访问"},{value:580,name:"邮件营销"},{value:484,name:"联盟广告"},{value:300,name:"视频广告"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-piechart",relactiveDomValue:"dynamicData",dictKey:"PIE_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-funnel",type:"chart",label:"漏斗图",icon:"iconloudoutu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"漏斗图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},{type:"el-switch",label:"翻转",name:"ending",require:!1,placeholder:"",value:!1},[{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!1},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"rgba(30, 144, 255, 1)"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体字号",name:"subTextFontSize",required:!1,placeholder:"",value:16}]},{name:"数值设置",list:[{type:"el-switch",label:"显示",name:"isShow",require:!1,placeholder:"",value:!0},{type:"el-input-number",label:"字体字号",name:"fontSize",require:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"color",require:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",require:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"图例操作",list:[{type:"el-switch",label:"显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:16},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:15},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体字号",name:"tipFontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"",value:""}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#0CD2E6"},{color:"#00BFA5"},{color:"#FFC722"},{color:"#886EFF"},{color:"#008DEC"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{value:2,name:"访问"},{value:5,name:"咨询"},{value:20,name:"订单"},{value:40,name:"点击"},{value:125,name:"展现"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-funnel",relactiveDomValue:"dynamicData",dictKey:"PIE_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:500}]}},{code:"widget-gauge",type:"chart",label:"仪表盘",icon:"iconyibiaopan",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"仪表盘"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"圆环设置",list:[{type:"el-switch",label:"显示",name:"ringShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"圆环宽度",name:"pieWeight",require:!1,placeholder:"",value:10}]},{name:"0%~30%渐变色",list:[{type:"vue-color",label:"0处颜色",name:"color30p0",required:!1,placeholder:"",value:"rgba(0, 237, 3,0.1)"},{type:"vue-color",label:"0.5处颜色",name:"color30p5",required:!1,placeholder:"",value:"rgba(0, 237, 3,0.6)"},{type:"vue-color",label:"1处颜色",name:"color30p10",required:!1,placeholder:"",value:"rgba(0, 237, 3,1)"}]},{name:"30%~70%渐变色",list:[{type:"vue-color",label:"0处颜色",name:"color70p0",required:!1,placeholder:"",value:"rgba(255, 184, 0,0.1)"},{type:"vue-color",label:"0.5处颜色",name:"color70p5",required:!1,placeholder:"",value:"rgba(255, 184, 0,0.6)"},{type:"vue-color",label:"1处颜色",name:"color70p10",required:!1,placeholder:"",value:"rgba(255, 184, 0,1)"}]},{name:"70%~100%渐变色",list:[{type:"vue-color",label:"0处颜色",name:"color100p0",required:!1,placeholder:"",value:"rgba(175, 36, 74,0.1)"},{type:"vue-color",label:"0.5处颜色",name:"color100p5",required:!1,placeholder:"",value:"rgba(255, 36, 74,0.6)"},{type:"vue-color",label:"1处颜色",name:"color100p10",required:!1,placeholder:"",value:"rgba(255, 36, 74,1)"}]},{name:"刻度线",list:[{type:"el-switch",label:"显示",name:"tickShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"距离",name:"tickDistance",require:!1,placeholder:"",value:0},{type:"el-input-number",label:"长度",name:"tickLength",require:!1,placeholder:"",value:10},{type:"el-input-number",label:"宽度",name:"tickWidth",require:!1,placeholder:"",value:2}]},{name:"指标线",list:[{type:"el-switch",label:"显示",name:"splitShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"距离",name:"splitDistance",require:!1,placeholder:"",value:0},{type:"el-input-number",label:"长度",name:"splitLength",require:!1,placeholder:"",value:14},{type:"el-input-number",label:"宽度",name:"splitWidth",require:!1,placeholder:"",value:4}]},{name:"指标",list:[{type:"el-switch",label:"显示",name:"labelShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"距离",name:"labelDistance",require:!1,placeholder:"",value:0},{type:"el-input-number",label:"字号",name:"labelFontSize",require:!1,placeholder:"",value:10},{type:"vue-color",label:"颜色",name:"labelColor",required:!1,placeholder:"",value:"#fff"}]},{name:"数值",list:[{type:"vue-color",label:"颜色",name:"labelColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字号",name:"labelFontSize",require:!1,placeholder:"",value:14},{type:"el-select",label:"字体粗细",name:"labelFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{num:50}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-text",dictKey:"TEXT_PROPERTIES",relactiveDomValue:"dynamicData",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widget-map",type:"chart",label:"中国地图",icon:"iconzhongguoditu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"迁徙图"}],data:[],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:600},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:400}]}},{code:"WidgetPieNightingaleRoseArea",type:"chart",label:"南丁格尔玫瑰图",icon:"iconnandinggeermeiguitu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"南丁格尔玫瑰图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},{type:"el-select",label:"饼图模式",name:"nightingleRosetype",required:!1,placeholder:"",selectOptions:[{code:"area",name:"面积模式"},{code:"radius",name:"半径模式"}],value:"area"},[{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:12}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"数值",name:"numberValue",require:!1,placeholder:"",value:!0},{type:"el-switch",label:"百分比",name:"percentage",require:!1,placeholder:"",value:!1},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"网格线颜色",name:"lineColor",required:!1,placeholder:"",value:""}]},{name:"图例操作",list:[{type:"el-switch",label:"图例",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体大小",name:"lengedFontSize",required:!1,placeholder:"",value:16},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:15},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:""},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:""},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:""}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#FF801C"},{color:"#F5FF46"},{color:"#00FE65"},{color:"#00FEFF"},{color:"#ffa800"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{value:1048,name:"搜索引擎"},{value:735,name:"直接访问"},{value:580,name:"邮件营销"},{value:484,name:"联盟广告"},{value:300,name:"视频广告"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-piechart",dictKey:"PIE_PROPERTIES",relactiveDomValue:"dynamicData",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widgetPiePercentageChart",type:"chart",label:"百分比图",icon:"iconbaifenbi",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"百分比图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"数值设置",list:[{type:"vue-color",label:"数值颜色",name:"textNumColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字体",name:"textNumFontSize",required:!1,placeholder:"",value:40},{type:"el-select",label:"字体粗细",name:"textNumFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"vue-color",label:"%号颜色",name:"textPerColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"%号字体",name:"textPerFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体粗细",name:"textPerFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"圆环设置",list:[{type:"el-input-number",label:"刻度数量",name:"lineNumber",required:!1,placeholder:"",value:8},{type:"el-input-number",label:"刻度长度",name:"lineLength",required:!1,placeholder:"",value:19},{type:"el-input-number",label:"刻度宽度",name:"lineWidth",required:!1,placeholder:"",value:2},{type:"vue-color",label:"刻度颜色",name:"lineColor",required:!1,placeholder:"",value:"#061740"}]},{name:"渐变色",list:[{type:"vue-color",label:"0%处颜色",name:"color0Start",required:!1,placeholder:"",value:"#4FADFD"},{type:"vue-color",label:"100%颜色",name:"color100End",required:!1,placeholder:"",value:"#28E8FA"},{type:"vue-color",label:"余处颜色",name:"colorsurplus",required:!1,placeholder:"",value:"#173164"}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{num:60}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-piechart",dictKey:"TEXT_PROPERTIES",relactiveDomValue:"dynamicData",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:300}]}},{code:"widgetAirBubbleMap",type:"chart",label:"气泡地图",icon:"iconzhongguoditu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"气泡地图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:"#0F1C3C"},[{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:12}]},{name:"字体设置",list:[{type:"el-input-number",label:"文字大小",name:"fontTextSize",required:!1,placeholder:"",value:15},{type:"vue-color",label:"文字颜色",name:"fontTextColor",required:!1,placeholder:"",value:"#D4EEFF"},{type:"el-select",label:"文字粗细",name:"fontTextWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"数值大小",name:"fontDataSize",required:!1,placeholder:"",value:15},{type:"vue-color",label:"数值颜色",name:"fontDataColor",required:!1,placeholder:"",value:"#D4EEFF"},{type:"el-select",label:"数值粗细",name:"fontDataWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"气泡设置",list:[{type:"el-input-number",label:"最小半径",name:"fontminSize4Pin",required:!1,placeholder:"",value:20},{type:"el-input-number",label:"最大半径",name:"fontmaxSize4Pin",required:!1,placeholder:"",value:100}]},{name:"地图块颜色",list:[{type:"vue-color",label:"0%处颜色",name:"font0PreColor",required:!1,placeholder:"",value:"#073684"},{type:"vue-color",label:"100%颜色",name:"font100PreColor",required:!1,placeholder:"",value:"#061E3D"},{type:"vue-color",label:"高亮渐变色",name:"fontHighlightColor",required:!1,placeholder:"",value:"#2B91B7"}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{name:"南海诸岛",value:1},{name:"北京",value:524},{name:"天津",value:14},{name:"上海",value:150},{name:"重庆",value:75},{name:"河北",value:13},{name:"河南",value:83},{name:"云南",value:11},{name:"辽宁",value:19},{name:"黑龙江",value:15},{name:"湖南",value:69},{name:"安徽",value:260},{name:"山东",value:39},{name:"新疆",value:4},{name:"江苏",value:31},{name:"浙江",value:104},{name:"江西",value:36},{name:"湖北",value:1052},{name:"广西",value:33},{name:"甘肃",value:347},{name:"山西",value:8},{name:"内蒙古",value:157},{name:"陕西",value:22},{name:"吉林",value:4},{name:"福建",value:36},{name:"贵州",value:39},{name:"广东",value:996},{name:"青海",value:27},{name:"西藏",value:31},{name:"四川",value:46},{name:"宁夏",value:16},{name:"海南",value:22},{name:"台湾",value:6},{name:"香港",value:2},{name:"澳门",value:9}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-piechart",dictKey:"MAP_PROPERTIES",relactiveDomValue:"dynamicData",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:600},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:400}]}},{code:"widgetBarStackChart",type:"chart",label:"柱状堆叠图",icon:"iconbianzu23",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"柱状堆叠图"},{type:"el-switch",label:"竖展示",name:"verticalShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},{type:"el-select",label:"堆叠样式",name:"stackStyle",required:!1,placeholder:"",selectOptions:[{code:"leftRight",name:"左右堆叠"},{code:"upDown",name:"上下堆叠"}],value:"leftRight"},[{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:20},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"rgba(30, 144, 255, 1)"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:0,value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"X轴别名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"别名颜色",name:"xNameColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"别名字号",name:"xNameFontSize",required:!1,placeholder:"",value:14},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"el-slider",label:"文字角度",name:"textAngleX",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"文字间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"vue-color",label:"文字颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"文字字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowY",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"Y轴别名",name:"textNameY",require:!1,placeholder:"",value:""},{type:"vue-color",label:"别名颜色",name:"NameColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"别名字号",name:"NameFontSizeY",required:!1,placeholder:"",value:14},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"el-slider",label:"文字角度",name:"textAngleY",required:!1,placeholder:"",value:0},{type:"vue-color",label:"文字颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"文字字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipsFontSize",required:!1,placeholder:"",value:16},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:""}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#ff7f50"},{color:"#87cefa"},{color:"#da70d6"},{color:"#32cd32"},{color:"#6495ed"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"2021-07-25",name:"A",data:"12"},{axis:"2021-07-25",name:"B",data:"20"},{axis:"2021-07-26",name:"B",data:"5"},{axis:"2021-07-27",name:"A",data:"15"},{axis:"2021-07-27",name:"B",data:"30"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-stackchart",dictKey:"STACK_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:250}]}},{code:"widgetLineStackChart",type:"chart",label:"折线堆叠图",icon:"iconduidietu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"折线堆叠图"},{type:"el-switch",label:"竖展示",name:"verticalShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"折线设置",list:[{type:"el-switch",label:"标记点",name:"markPoint",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"点大小",name:"pointSize",required:!1,placeholder:"",value:5},{type:"el-switch",label:"平滑曲线",name:"smoothCurve",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"面积堆积",name:"area",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"面积厚度",name:"areaThickness",required:!1,placeholder:"",value:5},{type:"el-slider",label:"线条宽度",name:"lineWidth",required:!1,placeholder:"",value:4}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"rgba(30, 144, 255, 1)"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:0,value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"X轴别名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"别名颜色",name:"xNameColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"别名字号",name:"xNameFontSize",required:!1,placeholder:"",value:14},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"el-slider",label:"文字角度",name:"textAngleX",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"文字间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"vue-color",label:"文字颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"文字字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowY",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"Y轴别名",name:"textNameY",require:!1,placeholder:"",value:""},{type:"vue-color",label:"别名颜色",name:"NameColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"别名字号",name:"NameFontSizeY",required:!1,placeholder:"",value:14},{type:"el-switch",label:"轴反转",name:"reversalY",required:!1,placeholder:"",value:!1},{type:"el-slider",label:"文字角度",name:"textAngleY",required:!1,placeholder:"",value:0},{type:"vue-color",label:"文字颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"文字字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipsFontSize",required:!1,placeholder:"",value:16},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:""}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#ff7f50"},{color:"#87cefa"},{color:"#da70d6"},{color:"#32cd32"},{color:"#6495ed"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"2021-07-25",name:"A",data:"12"},{axis:"2021-07-25",name:"B",data:"20"},{axis:"2021-07-26",name:"B",data:"5"},{axis:"2021-07-27",name:"A",data:"15"},{axis:"2021-07-27",name:"B",data:"30"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-stackchart",dictKey:"STACK_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:250}]}},{code:"widgetBarCompareChart",type:"chart",label:"柱状对比图",icon:"iconduibitupu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"柱状对比图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:15},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:0,value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"左X轴设置",list:[{type:"el-switch",label:"显示",name:"hideXLeft",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"数值间隔",name:"splitNumberLeft",required:!1,placeholder:"",value:""},{type:"vue-color",label:"数值颜色",name:"XcolorLeft",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeXLeft",required:!1,placeholder:"",value:14},{type:"el-switch",label:"刻度线",name:"tickLineLeft",require:!1,placeholder:"",value:!1},{type:"el-switch",label:"X轴线",name:"xLineLeft",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorXLeft",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"竖分割线",name:"SplitLineLeft",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"SplitLineColorLeft",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"分割线宽度",name:"SplitLinefontSizeLeft",required:!1,placeholder:"",value:1},{type:"el-switch",label:"边框线",name:"frameLineLeft",require:!1,placeholder:"",value:!1}]},{name:"右X轴设置",list:[{type:"el-switch",label:"显示",name:"hideXRight",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"数值间隔",name:"splitNumberRight",required:!1,placeholder:"",value:""},{type:"vue-color",label:"数值颜色",name:"XcolorRight",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeXRight",required:!1,placeholder:"",value:14},{type:"el-switch",label:"刻度线",name:"tickLineRight",require:!1,placeholder:"",value:!1},{type:"el-switch",label:"X轴线",name:"xLineRight",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorXRight",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"竖分割线",name:"SplitLineRight",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"SplitLineColorRight",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"分割线宽度",name:"SplitLinefontSizeRight",required:!1,placeholder:"",value:1},{type:"el-switch",label:"边框线",name:"frameLineRight",require:!1,placeholder:"",value:!1}]},{name:"Y轴设置",list:[{type:"el-switch",label:"显示",name:"hideY",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"el-select",label:"数值对齐",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-switch",label:"刻度线",name:"tickLineY",require:!1,placeholder:"",value:!1},{type:"el-switch",label:"Y轴线",name:"lineY",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipsFontSize",required:!1,placeholder:"",value:16},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:""}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左右边距(像素)",name:"marginLeftRight",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#36c5e7"},{color:"#e68b55"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"07-25",name:"success",data:"2"},{axis:"07-25",name:"fail",data:"10"},{axis:"07-26",name:"success",data:"5"},{axis:"07-26",name:"fail",data:"20"},{axis:"07-27",name:"success",data:"15"},{axis:"07-27",name:"fail",data:"30"},{axis:"07-28",name:"success",data:"10"},{axis:"07-28",name:"fail",data:"12"},{axis:"07-29",name:"success",data:"9"},{axis:"07-29",name:"fail",data:"16"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-stackchart",dictKey:"STACK_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:250}]}},{code:"widgetLineCompareChart",type:"chart",label:"折线对比图",icon:"iconzhexian",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"折线对比图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"折线设置",list:[{type:"el-switch",label:"标记点",name:"markPoint",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"点大小",name:"pointSize",required:!1,placeholder:"",value:5},{type:"el-switch",label:"平滑曲线",name:"smoothCurve",required:!1,placeholder:"",value:!0},{type:"el-switch",label:"面积堆积",name:"area",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"面积厚度",name:"areaThickness",required:!1,placeholder:"",value:5},{type:"el-slider",label:"线条宽度",name:"lineWidth",required:!1,placeholder:"",value:2}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#FFD700"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:0,value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"isShowX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"el-switch",label:"数值居中",name:"boundaryX",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"数值颜色",name:"colorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-input-number",label:"数值间隔",name:"splitNumberX",required:!1,placeholder:"",value:""},{type:"el-switch",label:"刻度线",name:"tickLineX",require:!1,placeholder:"",value:!0},{type:"el-switch",label:"X轴线",name:"lineX",require:!1,placeholder:"",value:!0},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"上y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowYTop",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"textNameYTop",require:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorYTop",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"namefontSizeYTop",required:!1,placeholder:"",value:14},{type:"el-switch",label:"缩放",name:"scaleYTop",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"数值切分",name:"splitNumberYTop",required:!1,placeholder:"",value:""},{type:"vue-color",label:"数值颜色",name:"colorYTop",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeYTop",required:!1,placeholder:"",value:14},{type:"el-switch",label:"刻度线",name:"tickLineYTop",require:!1,placeholder:"",value:!0},{type:"el-switch",label:"y轴线",name:"lineYTop",require:!1,placeholder:"",value:!0},{type:"vue-color",label:"轴颜色",name:"lineColorYTop",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线",name:"splitLineYTop",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorYTop",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"分割线宽度",name:"splitLinefontSizeYTop",required:!1,placeholder:"",value:1}]},{name:"下y轴设置",list:[{type:"el-switch",label:"显示",name:"isShowYBottom",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"textNameYBottom",require:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorYBottom",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"namefontSizeYBottom",required:!1,placeholder:"",value:14},{type:"el-switch",label:"缩放",name:"scaleYBottom",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"数值切分",name:"splitNumberYBottom",required:!1,placeholder:"",value:""},{type:"vue-color",label:"数值颜色",name:"colorYBottom",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeYBottom",required:!1,placeholder:"",value:14},{type:"el-switch",label:"刻度线",name:"tickLineYBottom",require:!1,placeholder:"",value:!0},{type:"el-switch",label:"y轴线",name:"lineYBottom",require:!1,placeholder:"",value:!0},{type:"vue-color",label:"轴颜色",name:"lineColorYBottom",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线",name:"splitLineYBottom",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorYBottom",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"分割线宽度",name:"splitLinefontSizeYBottom",required:!1,placeholder:"",value:1}]},{name:"数值设定",list:[{type:"el-switch",label:"显示",name:"isShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-switch",label:"显示",name:"tipShow",required:!1,placeholder:"",value:!0},{type:"el-select",label:"类型",name:"tipType",required:!1,placeholder:"",selectOptions:[{code:"line",name:"线形"},{code:"cross",name:"十字形"}],value:"line"},{type:"vue-color",label:"颜色",name:"tipColor",required:!1,placeholder:"#e68b55"}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:20},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:50},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:40}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#36c5e7"},{color:"#e68b55"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{axis:"07-25",name:"success",data:"2"},{axis:"07-25",name:"fail",data:"10"},{axis:"07-26",name:"success",data:"5"},{axis:"07-26",name:"fail",data:"20"},{axis:"07-27",name:"success",data:"15"},{axis:"07-27",name:"fail",data:"30"},{axis:"07-28",name:"success",data:"10"},{axis:"07-28",name:"fail",data:"12"},{axis:"07-29",name:"success",data:"9"},{axis:"07-29",name:"fail",data:"16"}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"dynamicData",chartType:"widget-stackchart",dictKey:"STACK_PROPERTIES",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:200}]}},{code:"widgetDecoratePieChart",type:"chart",label:"装饰饼图",icon:"iconicon_tubiao_bingtu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"静态装饰饼图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"最外环设置",list:[{type:"el-switch",label:"显示",name:"isLastRingShow",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"0%颜色",name:"lastRing0Color",required:!1,placeholder:"",value:"#4FADFD"},{type:"vue-color",label:"100%颜色",name:"lastRing100Color",required:!1,placeholder:"",value:"#28E8FA"}]},{name:"八分环设置",list:[{type:"vue-color",label:"颜色",name:"eightColor",required:!1,placeholder:"",value:"#4FADFD"}]},{name:"虚线环设置",list:[{type:"el-input-number",label:"虚线数量",name:"dottedNum",required:!1,placeholder:"",value:40},{type:"vue-color",label:"颜色",name:"dottedColor",required:!1,placeholder:"",value:"#28E8FA"}]},{name:"三分环设置",list:[{type:"vue-color",label:"一段颜色",name:"three1Color",required:!1,placeholder:"",value:"#fc8d89"},{type:"vue-color",label:"二段颜色",name:"three2Color",required:!1,placeholder:"",value:"#46d3f3"},{type:"vue-color",label:"三段颜色",name:"three3Color",required:!1,placeholder:"",value:"rgba(203,203,203,.2)"}]},{name:"外指标环设置",list:[{type:"el-switch",label:"环显示",name:"isOutRingShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"环颜色",name:"outRingColor",required:!1,placeholder:"",value:"#0dc2fe"},{type:"el-input-number",label:"环宽度",name:"outRingWidth",required:!1,placeholder:"",value:1},{type:"el-switch",label:"指标线显示",name:"isOutSplitShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"指标线数量",name:"outSplitNum",required:!1,placeholder:"",value:30},{type:"el-input-number",label:"指标线长度",name:"outSplitLength",required:!1,placeholder:"",value:32},{type:"el-input-number",label:"指标线宽度",name:"outSplitWidth",required:!1,placeholder:"",value:2},{type:"vue-color",label:"指标线颜色",name:"outSplitColor",required:!1,placeholder:"",value:"#0dc2fe"},{type:"el-switch",label:"刻度线显示",name:"isOutTickShow",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"刻度线数量",name:"outTickNum",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"刻度线长度",name:"outTickLength",required:!1,placeholder:"",value:20},{type:"el-input-number",label:"刻度线宽度",name:"outTickWidth",required:!1,placeholder:"",value:2},{type:"vue-color",label:"刻度线颜色",name:"outTickColor",required:!1,placeholder:"",value:"#0dc2fe"}]},{name:"里指标环设置",list:[{type:"el-switch",label:"环显示",name:"isInRingShow",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"环颜色",name:"inRingColor",required:!1,placeholder:"",value:"#0dc2fe"},{type:"el-input-number",label:"环宽度",name:"inRingWidth",required:!1,placeholder:"",value:1},{type:"el-switch",label:"指标线显示",name:"isInSplitShow",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"指标线数量",name:"inSplitNum",required:!1,placeholder:"",value:30},{type:"el-input-number",label:"指标线长度",name:"inSplitLength",required:!1,placeholder:"",value:20},{type:"el-input-number",label:"指标线宽度",name:"inSplitWidth",required:!1,placeholder:"",value:2},{type:"vue-color",label:"指标线颜色",name:"inSplitColor",required:!1,placeholder:"",value:"#0dc2fe"},{type:"el-switch",label:"刻度线显示",name:"isInTickShow",required:!1,placeholder:"",value:!0},{type:"el-input-number",label:"刻度线数量",name:"inTickNum",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"刻度线长度",name:"inTickLength",required:!1,placeholder:"",value:20},{type:"el-input-number",label:"刻度线宽度",name:"inTickWidth",required:!1,placeholder:"",value:2},{type:"vue-color",label:"刻度线颜色",name:"inTickColor",required:!1,placeholder:"",value:"#0dc2fe"}]},{name:"环外环设置",list:[{type:"el-switch",label:"显示",name:"isRingOnRingShow",required:!1,placeholder:"",value:!0},{type:"vue-color",label:"颜色",name:"ringOnRingColor",required:!1,placeholder:"",value:"#4FADFD"}]},{name:"中饼图设置",list:[{type:"el-input-number",label:"半径",name:"pieWidth",required:!1,placeholder:"",value:40},{type:"vue-color",label:"颜色",name:"pieColor",required:!1,placeholder:"",value:"#0dc2fe"},{type:"vue-color",label:"边框颜色",name:"pieBorderColor",required:!1,placeholder:"",value:"#3D4268"},{type:"el-select",label:"分块",name:"pieBlocks",required:!1,placeholder:"",selectOptions:[{code:"four",name:"十字星"},{code:"five",name:"五角星"},{code:"six",name:"六芒星"}],value:"six"}]}]],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:400},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:300}]}},{code:"widgetMoreBarLineChart",type:"chart",label:"多柱线图",icon:"iconzhuxiantu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"多柱线图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"折线设置",list:[{type:"el-switch",label:"标记点",name:"markPoint",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"点大小",name:"pointSize",required:!1,placeholder:"",value:3},{type:"el-switch",label:"平滑曲线",name:"smoothCurve",required:!1,placeholder:"",value:!1},{type:"el-switch",label:"面积堆积",name:"area",required:!1,placeholder:"",value:!0},{type:"el-slider",label:"面积厚度",name:"areaThickness",required:!1,placeholder:"",value:5},{type:"el-slider",label:"线条宽度",name:"lineWidth",required:!1,placeholder:"",value:3}]},{name:"柱体设置",list:[{type:"el-slider",label:"最大宽度",name:"maxWidth",required:!1,placeholder:"",value:10},{type:"el-slider",label:"圆角",name:"radius",require:!1,placeholder:"",value:5}]},{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:20}]},{name:"图例操作",list:[{type:"el-switch",label:"图例显示",name:"isShowLegend",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"图例名称",name:"legendName",required:!1,placeholder:0,value:""},{type:"vue-color",label:"字体颜色",name:"lengedColor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"字体字号",name:"lengedFontSize",required:!1,placeholder:"",value:12},{type:"el-input-number",label:"图例宽度",name:"lengedWidth",required:!1,placeholder:"",value:12},{type:"el-select",label:"横向位置",name:"lateralPosition",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"center"},{type:"el-select",label:"纵向位置",name:"longitudinalPosition",required:!1,placeholder:"",selectOptions:[{code:"top",name:"顶部"},{code:"bottom",name:"底部"}],value:"top"},{type:"el-select",label:"布局前置",name:"layoutFront",required:!1,placeholder:"",selectOptions:[{code:"vertical",name:"竖排"},{code:"horizontal",name:"横排"}],value:"horizontal"}]},{name:"X轴设置",list:[{type:"el-switch",label:"显示",name:"hideX",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"坐标名",name:"xName",required:!1,placeholder:"",value:""},{type:"vue-color",label:"坐标名颜色",name:"nameColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"坐标字号",name:"nameFontSizeX",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"Xcolor",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeX",required:!1,placeholder:"",value:14},{type:"el-slider",label:"数值角度",name:"textAngle",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"数值间隔",name:"textInterval",required:!1,placeholder:"",value:""},{type:"el-switch",label:"轴反转",name:"reversalX",required:!1,placeholder:"",value:!1},{type:"vue-color",label:"轴颜色",name:"lineColorX",required:!1,placeholder:"",value:"#fff"},{type:"el-switch",label:"分割线显示",name:"isShowSplitLineX",require:!1,placeholder:"",value:!1},{type:"vue-color",label:"分割线颜色",name:"splitLineColorX",required:!1,placeholder:"",value:"#fff"}]},{name:"Y轴设置",list:[{type:"el-switch",label:"左显示",name:"isShowYLeft",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"左坐标名",name:"textNameYLeft",require:!1,placeholder:"",value:""},{type:"vue-color",label:"左坐标名颜色",name:"nameColorYLeft",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"左坐标字号",name:"namefontSizeYLeft",required:!1,placeholder:"",value:14},{type:"el-switch",label:"右显示",name:"isShowYRight",require:!1,placeholder:"",value:!0},{type:"el-input-text",label:"右坐标名",name:"textNameYRight",require:!1,placeholder:"",value:""},{type:"vue-color",label:"右坐标名颜色",name:"nameColorYRight",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"右坐标字号",name:"namefontSizeYRight",required:!1,placeholder:"",value:14},{type:"vue-color",label:"数值颜色",name:"colorY",required:!1,placeholder:"",value:"#fff"},{type:"el-input-number",label:"数值字号",name:"fontSizeY",required:!1,placeholder:"",value:14},{type:"vue-color",label:"轴颜色",name:"lineColorY",required:!1,placeholder:"",value:"#fff"}]},{name:"折线数值设定",list:[{type:"el-switch",label:"显示",name:"isShowLine",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"距离",name:"distanceLine",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体字号",name:"fontSizeLine",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColorLine",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeightLine",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"柱体数值设定",list:[{type:"el-switch",label:"显示",name:"isShowBar",required:!1,placeholder:"",value:!1},{type:"el-input-number",label:"距离",name:"distanceBar",required:!1,placeholder:"",value:5},{type:"el-input-number",label:"字体字号",name:"fontSizeBar",required:!1,placeholder:"",value:14},{type:"vue-color",label:"字体颜色",name:"subTextColorBar",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"fontWeightBar",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"tipFontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"",value:"#e68b55"}]},{name:"坐标轴边距设置",list:[{type:"el-slider",label:"左边距(像素)",name:"marginLeft",required:!1,placeholder:"",value:10},{type:"el-slider",label:"顶边距(像素)",name:"marginTop",required:!1,placeholder:"",value:50},{type:"el-slider",label:"右边距(像素)",name:"marginRight",required:!1,placeholder:"",value:40},{type:"el-slider",label:"底边距(像素)",name:"marginBottom",required:!1,placeholder:"",value:10}]},{name:"自定义配色",list:[{type:"customColor",label:"",name:"customColor",required:!1,value:[{color:"#4bdfff"},{color:"#5dc1fd"},{color:"#55f49c"},{color:"#ffa43a"}]}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:5e3},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{date:"2014",unsales:400,manus:300,rework:400,sales:4.2},{date:"2015",unsales:400,manus:500,rework:300,sales:3.6},{date:"2016",unsales:300,manus:500,rework:500,sales:5.8},{date:"2017",unsales:300,manus:500,rework:700,sales:3.4},{date:"2018",unsales:400,manus:400,rework:1e3,sales:2.5},{date:"2019",unsales:400,manus:500,rework:500,sales:5.8},{date:"2020",unsales:300,manus:400,rework:600,sales:7.6},{date:"2021",unsales:300,manus:600,rework:400,sales:3.4}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-barlinechart",dictKey:"BAR_LINE_PROPERTIES",relactiveDomValue:"dynamicData"}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:300}]}},{code:"widgetWordCloud",type:"chart",label:"词云图",icon:"iconciyuntu",options:{setup:[{type:"el-input-text",label:"图层名称",name:"layerName",required:!1,placeholder:"",value:"词云图"},{type:"vue-color",label:"背景颜色",name:"background",required:!1,placeholder:"",value:""},[{name:"标题设置",list:[{type:"el-switch",label:"标题",name:"isNoTitle",required:!1,placeholder:"",value:!0},{type:"el-input-text",label:"标题",name:"titleText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"textColor",required:!1,placeholder:"",value:"#fff"},{type:"el-select",label:"字体粗细",name:"textFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"textFontSize",required:!1,placeholder:"",value:20},{type:"el-select",label:"字体位置",name:"textAlign",required:!1,placeholder:"",selectOptions:[{code:"center",name:"居中"},{code:"left",name:"左对齐"},{code:"right",name:"右对齐"}],value:"left"},{type:"el-input-text",label:"副标题",name:"subText",required:!1,placeholder:"",value:""},{type:"vue-color",label:"字体颜色",name:"subTextColor",required:!1,placeholder:"",value:""},{type:"el-select",label:"字体粗细",name:"subTextFontWeight",required:!1,placeholder:"",selectOptions:[{code:"normal",name:"正常"},{code:"bold",name:"粗体"},{code:"bolder",name:"特粗体"},{code:"lighter",name:"细体"}],value:"normal"},{type:"el-input-number",label:"字体大小",name:"subTextFontSize",required:!1,placeholder:"",value:12}]},{name:"词云范围",list:[{type:"el-input-number",label:"最大范围",name:"maxRangeSize",required:!1,placeholder:"",value:25},{type:"el-input-number",label:"最小范围",name:"minRangeSize",required:!1,placeholder:"",value:2}]},{name:"词云角度",list:[{type:"el-input-number",label:"最大角度",name:"maxRotationRange",required:!1,placeholder:"",value:90},{type:"el-input-number",label:"最小角度",name:"minRotationRange",required:!1,placeholder:"",value:-45}]},{name:"提示语设置",list:[{type:"el-input-number",label:"字体大小",name:"fontSize",required:!1,placeholder:"",value:12},{type:"vue-color",label:"字体颜色",name:"lineColor",required:!1,placeholder:"",value:"#00FEFF"}]}]],data:[{type:"el-radio-group",label:"数据类型",name:"dataType",require:!1,placeholder:"",selectValue:!0,selectOptions:[{code:"staticData",name:"静态数据"},{code:"dynamicData",name:"动态数据"}],value:"staticData"},{type:"el-input-number",label:"刷新时间(毫秒)",name:"refreshTime",relactiveDom:"dataType",relactiveDomValue:"dynamicData",value:6e4},{type:"el-button",label:"静态数据",name:"staticData",required:!1,placeholder:"",relactiveDom:"dataType",relactiveDomValue:"staticData",value:[{name:"占道",value:284},{name:"水质",value:71},{name:"无水",value:71},{name:"停供",value:21},{name:"停气",value:11},{name:"占道",value:11},{name:"Nancy",value:520},{name:"Jayfee",value:666},{name:"生活资源",value:999},{name:"供热管理",value:888},{name:"供气质量",value:777},{name:"社会保障",value:407},{name:"交通运输",value:516},{name:"城市交通",value:515},{name:"环境保护",value:483},{name:"城乡建设",value:449},{name:"公共安全",value:406},{name:"供热管理",value:375},{name:"市容环卫",value:355},{name:"粉尘污染",value:335},{name:"噪声污染",value:324},{name:"医疗卫生",value:284},{name:"供热发展",value:254},{name:"房地产管理",value:462},{name:"生活噪音",value:253},{name:"城市供电",value:223},{name:"大气污染",value:223},{name:"房屋安全",value:223},{name:"文化活动",value:223},{name:"拆迁管理",value:223},{name:"公共设施",value:223},{name:"供气质量",value:223},{name:"供电管理",value:223},{name:"燃气管理",value:152},{name:"教育管理",value:152},{name:"医疗纠纷",value:152},{name:"执法监督",value:152},{name:"设备安全",value:152},{name:"政务建设",value:152},{name:"宏观经济",value:152},{name:"教育管理",value:112},{name:"社会保障",value:112},{name:"分类列表",value:112},{name:"农业生产",value:112},{name:"物业服务",value:92},{name:"物业管理",value:92},{name:"低保管理",value:92},{name:"执法争议",value:72},{name:"占道堆放",value:71},{name:"地上设施",value:71},{name:"主网原因",value:71},{name:"集中供热",value:71},{name:"客运管理",value:71},{name:"治安案件",value:71},{name:"群众健身",value:41},{name:"市场收费",value:41},{name:"生产资金",value:41},{name:"生产噪声",value:41},{name:"农村低保",value:41},{name:"劳动争议",value:41},{name:"医疗事故",value:21},{name:"基础教育",value:21},{name:"职业教育",value:21},{name:"拆迁补偿",value:21},{name:"设施维护",value:21},{name:"市场外溢",value:11},{name:"占道经营",value:11},{name:"树木管理",value:11},{name:"供气质量",value:11},{name:"燃气管理",value:11},{name:"市容环卫",value:11},{name:"新闻传媒",value:11},{name:"人才招聘",value:11},{name:"市场环境",value:11},{name:"城市交通",value:11},{name:"物业服务",value:11},{name:"物业管理",value:11},{name:"园林绿化",value:11},{name:"有线电视",value:11},{name:"社会治安",value:11},{name:"林业资源",value:11},{name:"体育活动",value:11},{name:"低保管理",value:11},{name:"劳动争议",value:11},{name:"粉煤灰污染",value:284},{name:"人行道管理",value:71},{name:"身份证管理",value:71},{name:"房地产开发",value:11},{name:"经营性收费",value:11},{name:"一次供水问题",value:11},{name:"工业粉尘污染",value:71},{name:"工业排放污染",value:41},{name:"破坏森林资源",value:41},{name:"生活用水管理",value:688},{name:"一次供水问题",value:588},{name:"公交运输管理",value:386},{name:"自然资源管理",value:355},{name:"土地资源管理",value:304},{name:"生活用水管理",value:112},{name:"供热单位影响",value:253},{name:"二次供水问题",value:112},{name:"城市公共设施",value:92},{name:"拆迁政策咨询",value:92},{name:"县区、开发区",value:152},{name:"文娱市场管理",value:72},{name:"商业烟尘污染",value:72},{name:"供热单位影响",value:71},{name:"压力容器安全",value:71},{name:"劳动合同争议",value:41},{name:"物业资质管理",value:21},{name:"农村基础设施",value:11},{name:"行政事业收费",value:11},{name:"房屋配套问题",value:11},{name:"公交运输管理",value:11},{name:"社会福利及事务",value:11},{name:"食品安全与卫生",value:11},{name:"物业服务与管理",value:112},{name:"文体与教育管理",value:406},{name:"社会保障与福利",value:429},{name:"出租车运营管理",value:385},{name:"物业服务与管理",value:304},{name:"房屋质量与安全",value:223},{name:"劳动报酬与福利",value:41},{name:"食品安全与卫生",value:11},{name:"房屋与图纸不符",value:11},{name:"其他行政事业收费",value:11},{name:"农村土地规划管理",value:254},{name:"社会保障保险管理",value:92},{name:"城市交通秩序管理",value:72},{name:"户籍管理及身份证",value:11},{name:"公路(水路)交通",value:11},{name:"国有公交(大巴)管理",value:71},{name:"有线电视安装及调试维护",value:11},{name:"市政府工作部门(含部门管理机构、直属单位)",value:11}]},{type:"dycustComponents",label:"",name:"dynamicData",required:!1,placeholder:"",relactiveDom:"dataType",chartType:"widget-piechart",dictKey:"PIE_PROPERTIES",relactiveDomValue:"dynamicData",value:""}],position:[{type:"el-input-number",label:"左边距",name:"left",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"上边距",name:"top",required:!1,placeholder:"",value:0},{type:"el-input-number",label:"宽度",name:"width",required:!1,placeholder:"该容器在1920px大屏中的宽度",value:500},{type:"el-input-number",label:"高度",name:"height",required:!1,placeholder:"该容器在1080px大屏中的高度",value:300}]}}],c={code:"screen",type:"screen",label:"大屏设置",icon:"",options:{setup:[{type:"el-input-number",label:"大屏宽度",name:"width",required:!1,placeholder:"px",value:"1920"},{type:"el-input-number",label:"大屏高度",name:"height",required:!1,placeholder:"px",value:"1080"},{type:"el-input-text",label:"标题",name:"title",require:!1,placeholder:"",value:"大屏"},{type:"el-input-textarea",label:"大屏简介",name:"description",required:!1,placeholder:""},{type:"vue-color",label:"背景颜色",name:"backgroundColor",required:!1,placeholder:"",value:"#000"},{type:"custom-upload",label:"图片地址",name:"backgroundImage",required:!1,placeholder:"",value:"https://report.anji-plus.com/file/download/bf566e48-ccad-40e1-8ee9-228427e5466b"}],data:[],position:[]}},h=[].concat(a.n(s)()(u)),p=function(e){return"screen"==e?c:h.find(function(t,a,i){return t.code===e})},d=a("gLgb"),m=a("zgVM"),f=a("V47a"),v=a("cWz8"),y=a("cyzc"),g=a("/C5K"),b=a("xSk4"),x=a("GWHw"),S=a("mlo3"),w=a("tHtw"),q=a("rMB3"),C=a("I8Wc"),D=a("S+MY"),T=a("aVQV"),O=a("jmgl"),_=a("kq3f"),k=a("U6Wy"),L=a("TUKT"),z=a("+3Gg"),F=a("FxKO"),A=a("Ur0O"),W=a("4rp5"),P=a("Whq1"),I=a("xVz9"),M=a("pizJ"),R=a("HMir"),N=a("4Zv2"),E={name:"Widget",components:{widgetHref:d.a,widgetText:m.a,WidgetMarquee:f.a,widgetTime:v.a,widgetImage:y.a,widgetSlider:g.a,widgetVideo:b.a,WidgetIframe:x.a,widgetBarchart:S.a,widgetGradientColorBarchart:w.a,widgetLinechart:q.a,widgetBarlinechart:C.a,WidgetPiechart:D.a,WidgetFunnel:T.a,WidgetGauge:O.a,WidgetPieNightingaleRoseArea:_.a,widgetTable:k.a,widgetMap:L.a,widgetPiePercentageChart:z.a,widgetAirBubbleMap:F.a,widgetBarStackChart:A.a,widgetLineStackChart:W.a,widgetBarCompareChart:P.a,widgetLineCompareChart:I.a,widgetDecoratePieChart:M.a,widgetMoreBarLineChart:R.a,widgetWordCloud:N.a},model:{prop:"value",event:"input"},props:{index:Number,type:String,bigscreen:Object,value:{type:[Object],default:function(){}},step:Number},data:function(){return{data:{setup:{},data:{},position:{}}}},computed:{widgetsWidth:function(){return this.value.position.width},widgetsHeight:function(){return this.value.position.height},widgetsLeft:function(){return this.value.position.left},widgetsTop:function(){return this.value.position.top},widgetsZIndex:function(){return this.value.position.zIndex||1}},mounted:function(){},methods:{handleFocus:function(e){e.index,e.left,e.top,e.width,e.height},handleBlur:function(e){var t=e.index,a=e.left,i=e.top,o=e.width,n=e.height;this.$emit("onActivated",{index:t,left:a,top:i,width:o,height:n}),this.$refs.draggable.setActive(!0)}}},B=(a("PCNV"),a("ZrdR")),Y=Object(B.a)(E,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("avue-draggable",{ref:"draggable",attrs:{step:e.step,width:e.widgetsWidth,height:e.widgetsHeight,left:e.widgetsLeft,top:e.widgetsTop,index:e.index,"z-index":-1},on:{focus:e.handleFocus,blur:e.handleBlur}},[a(e.type,{tag:"component",attrs:{value:e.value}})],1)},[],!1,null,"7ff527a0",null);Y.options.__file="widget.vue";var j=Y.exports,X=a("6ZY3"),V=a.n(X),$={name:"ColorPicker",model:{prop:"value",event:"input"},props:{value:{type:[String],default:""}},data:function(){return{predefineColors:["#ff4500","#ff8c00","#ffd700","#90ee90","#00ced1","#1e90ff","#c71585"],colorValue:""}},watch:{value:function(e){this.colorValue=e||""}},mounted:function(){this.colorValue=this.value},methods:{changeColor:function(e){this.colorValue=e||"",this.$emit("input",this.colorValue),this.$emit("change",this.colorValue)}}},H=(a("5yTy"),Object(B.a)($,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-input",{attrs:{clearable:"",placeholder:"请输入颜色",size:"mini"},on:{change:e.changeColor},model:{value:e.colorValue,callback:function(t){e.colorValue=t},expression:"colorValue"}},[a("template",{slot:"append"},[a("el-color-picker",{attrs:{predefine:e.predefineColors,"show-alpha":"",size:"mini"},on:{change:e.changeColor},model:{value:e.colorValue,callback:function(t){e.colorValue=t},expression:"colorValue"}})],1)],2)},[],!1,null,"173d22f8",null));H.options.__file="colorPicker.vue";var U=H.exports,G=a("atyl"),Z=(a("yY5G"),a("oMrk"),a("kefc"),a("opU+"),a("9dfR"),a("jTqD"),{name:"DynamicComponents",components:{Dictionary:a("CJ5O").a},model:{prop:"formData",event:"input"},props:{chartType:String,dictKey:String,formData:Object},data:function(){return{dataSetValue:"",dataSet:[],userNameList:[],setParamList:[],params:{},chartProperties:{}}},watch:{formData:{handler:function(e){this.echoDataSet(e)},deep:!0}},computed:{setCode:function(){var e=this,t="";return this.dataSet.forEach(function(a){a.id==e.dataSetValue&&(t=a.setCode)}),t}},mounted:function(){this.loadDataSet(),this.echoDataSet(this.formData)},methods:{loadDataSet:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(r.f)();case 2:if(a=t.sent,i=a.code,n=a.data,e.dataSet=n,"200"==i){t.next=8;break}return t.abrupt("return");case 8:case"end":return t.stop()}},t,e)}))()},selectDataSet:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(r.a)(e.dataSetValue);case 2:if(a=t.sent,i=a.code,n=a.data,e.userNameList=n.dataSetParamDtoList,e.setParamList=n.setParamList,"200"==i){t.next=9;break}return t.abrupt("return");case 9:case"end":return t.stop()}},t,e)}))()},saveDataBtn:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:for(a={},i=0;i<e.userNameList.length;i++)a[e.userNameList[i].paramName]=e.userNameList[i].sampleItem;n={chartType:e.chartType,setCode:e.setCode,chartProperties:e.chartProperties,contextData:a},e.$emit("input",n),e.$emit("change",n);case 5:case"end":return t.stop()}},t,e)}))()},selectParams:function(e,t){this.chartProperties[t]=e},getDictKey:function(){return null==this.dictKey?"CHART_PROPERTIES":this.dictKey},echoDataSet:function(e){var t=this;return l()(o.a.mark(function a(){var i;return o.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(e){a.next=2;break}return a.abrupt("return");case 2:return i=e.setCode,a.next=5,t.loadDataSet();case 5:return t.dataSetValue=t.dataSet.filter(function(e){return i==e.setCode})[0].id,a.next=8,t.selectDataSet();case 8:t.echoDynamicData(e);case 9:case"end":return a.stop()}},a,t)}))()},echoDynamicData:function(e){var t=this.deepClone(e.chartProperties);if(this.chartProperties=t,this.userNameList.length,this.setParamList.length>0)for(var a=0;a<this.setParamList.length;a++){var i=this.setParamList[a];t.hasOwnProperty(i)&&(this.params[i]=t[i])}}}}),K=(a("a8b3"),Object(B.a)(Z,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-form",{attrs:{"label-width":"100px","label-position":"left"}},[a("el-form-item",{attrs:{label:"数据集"}},[a("el-select",{attrs:{size:"mini",filterable:"",placeholder:"请选择"},on:{change:e.selectDataSet},model:{value:e.dataSetValue,callback:function(t){e.dataSetValue=t},expression:"dataSetValue"}},e._l(e.dataSet,function(e){return a("el-option",{key:e.code,attrs:{label:e.setName,value:e.id}})}),1)],1),e._v(" "),e._l(e.userNameList,function(t,i){return a("el-form-item",{key:i,attrs:{label:t.paramName}},[a("el-input",{attrs:{size:"mini"},model:{value:t.sampleItem,callback:function(a){e.$set(t,"sampleItem","string"==typeof a?a.trim():a)},expression:"item.sampleItem"}})],1)}),e._v(" "),e._l(e.setParamList,function(t){return a("el-form-item",{key:t,attrs:{label:t}},[a("Dictionary",{attrs:{"dict-key":e.getDictKey()},on:{input:function(a){return e.selectParams(a,t)}},model:{value:e.params[t],callback:function(a){e.$set(e.params,t,a)},expression:"params[item]"}})],1)}),e._v(" "),a("el-button",{staticStyle:{width:"100%"},attrs:{type:"primary",plain:"",size:"mini"},on:{click:e.saveDataBtn}},[e._v("刷新")])],2)],1)},[],!1,null,"63ab6bd9",null));K.options.__file="dynamicComponents.vue";var Q=K.exports,J={name:"CustomColorComponents",model:{prop:"formData",event:"input"},props:{formData:Array},data:function(){return{predefineColors:["#ff4500","#ff8c00","#ffd700","#90ee90","#00ced1","#1e90ff","#c71585"],colorValue:"",dialogVisible:!1,flag:!0,indexEditor:-1}},mounted:function(){},methods:{handleClose:function(){this.dialogVisible=!1,this.colorValue=""},handleAddClick:function(){this.colorValue="",this.flag=!0,this.dialogVisible=!0},handleSaveClick:function(){if(this.flag){var e={color:this.colorValue};this.formData.push(e),this.dialogVisible=!1}else this.formData[this.indexEditor].color=this.colorValue,this.dialogVisible=!1;this.$emit("input",this.formData),this.$emit("change",this.formData)},handleEditorClick:function(e,t){this.flag=!1,this.colorValue=t.color,this.dialogVisible=!0,this.indexEditor=e},handleDeleteClick:function(e){this.formData.splice(e,1),this.$emit("input",this.formData),this.$emit("change",this.formData)}}},ee=(a("lV0h"),Object(B.a)(J,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-button",{attrs:{type:"primary",size:"mini",icon:"el-icon-plus",plain:""},on:{click:e.handleAddClick}},[e._v("新增")]),e._v(" "),a("el-table",{staticStyle:{width:"100%"},attrs:{data:e.formData}},[a("el-table-column",{attrs:{prop:"color",label:"颜色",align:"center"},scopedSlots:e._u([{key:"default",fn:function(e){return[a("span",{staticClass:"color-box",style:{background:e.row.color}})]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"位置",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("span",{staticClass:"editor",on:{click:function(a){return e.handleEditorClick(t.$index,t.row)}}},[a("i",{staticClass:"el-icon-edit"}),e._v(" 编辑\n ")])]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"操作",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("span",{staticClass:"editor",on:{click:function(a){return e.handleDeleteClick(t.$index,t.row)}}},[a("i",{staticClass:"el-icon-delete"}),e._v(" 删除\n ")])]}}])})],1),e._v(" "),a("el-dialog",{attrs:{title:"新增",visible:e.dialogVisible,width:"30%","before-close":e.handleClose},on:{"update:visible":function(t){e.dialogVisible=t}}},[a("el-form",[a("el-form-item",{attrs:{label:"颜色"}},[a("el-input",{staticStyle:{width:"200px"},attrs:{placeholder:"请输入颜色",size:"mini"},model:{value:e.colorValue,callback:function(t){e.colorValue=t},expression:"colorValue"}},[a("template",{slot:"append"},[a("el-color-picker",{attrs:{predefine:e.predefineColors,size:"mini"},model:{value:e.colorValue,callback:function(t){e.colorValue=t},expression:"colorValue"}})],1)],2)],1)],1),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{attrs:{size:"mini"},on:{click:function(t){e.dialogVisible=!1}}},[e._v("取 消")]),e._v(" "),a("el-button",{attrs:{size:"mini",type:"primary"},on:{click:e.handleSaveClick}},[e._v("确 定")])],1)],1)],1)},[],!1,null,"c536ad68",null));ee.options.__file="customColorComponents.vue";var te=ee.exports,ae={model:{prop:"formData",event:"input"},props:{formData:Array},data:function(){return{dialogVisible:!1,rowFormData:{name:"",key:"",width:""},flag:!0,indexEditor:-1,tableData:[]}},methods:{handleAddClick:function(){this.rowFormData={},this.flag=!0,this.dialogVisible=!0},handleEditorClick:function(e,t){this.flag=!1,this.rowFormData=this.deepClone(t),this.indexEditor=e,this.dialogVisible=!0},handleClose:function(){this.dialogVisible=!1},handleSaveClick:function(){this.flag?(this.formData.push(this.rowFormData),this.dialogVisible=!1):(this.formData[this.indexEditor]=this.rowFormData,this.$set(this.formData,this.indexEditor,this.rowFormData),this.dialogVisible=!1),this.$emit("input",this.formData),this.$emit("change",this.formData)},handleDeleteClick:function(e){this.formData.splice(e,1),this.$emit("input",this.formData),this.$emit("change",this.formData)}}},ie=(a("eVDu"),Object(B.a)(ae,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-button",{attrs:{type:"primary",size:"small",icon:"el-icon-plus",plain:""},on:{click:e.handleAddClick}},[e._v("新增")]),e._v(" "),a("el-table",{staticStyle:{width:"100%"},attrs:{data:e.formData}},[a("el-table-column",{attrs:{prop:"name",label:"名称",width:"60"}}),e._v(" "),a("el-table-column",{attrs:{prop:"key",label:"key值",width:"70"}}),e._v(" "),a("el-table-column",{attrs:{prop:"width",label:"宽度",width:"50"}}),e._v(" "),a("el-table-column",{attrs:{label:"操作",width:"100"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("div",{staticClass:"button-group"},[a("el-button",{attrs:{type:"text",size:"small"},on:{click:function(a){return e.handleEditorClick(t.$index,t.row)}}},[e._v("编辑")]),e._v(" "),a("el-button",{attrs:{type:"text",size:"small"},on:{click:function(a){return e.handleDeleteClick(t.$index,t.row)}}},[e._v("删除")])],1)]}}])})],1),e._v(" "),a("el-dialog",{attrs:{title:"新增",visible:e.dialogVisible,width:"30%","before-close":e.handleClose},on:{"update:visible":function(t){e.dialogVisible=t}}},[a("el-form",{attrs:{model:e.rowFormData,"label-width":"50px"}},[a("el-form-item",{attrs:{label:"名称:"}},[a("el-input",{attrs:{placeholder:"请输入名称",size:"mini"},model:{value:e.rowFormData.name,callback:function(t){e.$set(e.rowFormData,"name","string"==typeof t?t.trim():t)},expression:"rowFormData['name']"}})],1),e._v(" "),a("el-form-item",{attrs:{label:"key值:"}},[a("el-input",{attrs:{placeholder:"请输入key值",size:"mini"},model:{value:e.rowFormData.key,callback:function(t){e.$set(e.rowFormData,"key","string"==typeof t?t.trim():t)},expression:"rowFormData['key']"}})],1),e._v(" "),a("el-form-item",{attrs:{label:"宽度:"}},[a("el-input",{attrs:{placeholder:"请输入宽度",size:"mini"},model:{value:e.rowFormData.width,callback:function(t){e.$set(e.rowFormData,"width","string"==typeof t?t.trim():t)},expression:"rowFormData['width']"}})],1)],1),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{attrs:{size:"mini"},on:{click:function(t){e.dialogVisible=!1}}},[e._v("取 消")]),e._v(" "),a("el-button",{attrs:{size:"mini",type:"primary"},on:{click:e.handleSaveClick}},[e._v("确 定")])],1)],1)],1)},[],!1,null,"97db715e",null));ie.options.__file="dynamicAddTable.vue";var oe=ie.exports,ne=a("f0Pt"),le=a.n(ne),re=a("X4fA"),se={model:{prop:"value",event:"input"},props:{value:{type:"",default:""}},data:function(){return{requestUrl:".//file/upload",headers:{Authorization:Object(re.f)()},fileList:[],uploadImgUrl:""}},created:function(){this.uploadImgUrl=this.value},methods:{getImages:function(e){var t=e.target.files[0];"image"===t.type.split("/")[0]?this.upload(t):this.$message.warn("只能上次图片格式")},upload:function(e){var t=this;console.log(t.headers);var a=new FormData;a.append("file",e),le.a.post(this.requestUrl,a,{headers:t.headers}).then(function(e){var a=e.data;"200"==a.code&&(t.uploadImgUrl=a.data.urlPath,t.$emit("input",t.uploadImgUrl),t.$emit("change",t.uploadImgUrl))})},changeInput:function(e){e?this.uploadImgUrl=e:(this.$refs.files.value="",this.uploadImgUrl=""),this.$emit("input",this.uploadImgUrl),this.$emit("change",this.uploadImgUrl)}}},ue=(a("9H/H"),Object(B.a)(se,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-input",{attrs:{clearable:"",size:"mini"},on:{change:e.changeInput},model:{value:e.uploadImgUrl,callback:function(t){e.uploadImgUrl="string"==typeof t?t.trim():t},expression:"uploadImgUrl"}},[a("template",{slot:"append"},[a("i",{staticClass:"iconfont iconfolder-o"}),e._v(" "),a("input",{ref:"files",staticClass:"file",attrs:{type:"file"},on:{change:e.getImages}})])],2)],1)},[],!1,null,"d60745ec",null));ue.options.__file="customUpload.vue";var ce=ue.exports,he={name:"DynamicForm",components:{ColorPicker:U,vueJsonEditor:G.a,dynamicComponents:Q,customColorComponents:te,dynamicAddTable:oe,customUpload:ce},model:{prop:"value",event:"input"},props:{options:Array,value:{type:[Object],default:function(){}}},data:function(){return{formData:{},inputShow:{},dialogVisibleStaticData:!1,validationRules:"",optionsJavascript:{mode:"text/javascript",tabSize:2,lineNumbers:!0,line:!0,styleActiveLine:!0,hintOptions:{completeSingle:!0}}}},watch:{value:function(e,t){this.formData=e||{}},options:function(e){this.setDefaultValue(),this.isShowData()}},created:function(){this.isShowData(),this.setDefaultValue()},mounted:function(){},methods:{onJsonChange:function(e){console.log(e)},onJsonSave:function(e){console.log(e)},changed:function(e,t){e.extend?this.$set(this.formData,t,e.value):this.$set(this.formData,t,e),this.$emit("onChanged",this.formData);for(var a=0;a<this.options.length;a++){var i=this.options[a];i.relactiveDom==t&&(this.inputShow[i.name]=e==i.relactiveDomValue,this.inputShow=V()({},this.inputShow))}},saveData:function(){this.$emit("onChanged",this.formData),this.dialogVisibleStaticData=!1},addStaticData:function(){this.dialogVisibleStaticData=!0},handleClose:function(){this.dialogVisibleStaticData=!1},isShowData:function(){for(var e=this,t={},a=[],i=0;i<this.options.length;i++)this.inputShow[this.options[i].name]=!0,this.options[i].selectValue?t=this.options[i]:a.push(this.options[i]);a.forEach(function(a){a.relactiveDomValue!=t.value&&(e.inputShow[a.name]=!1)})},setDefaultValue:function(){var e=this;if(this.options&&this.options.length>0){for(var t=0;t<this.options.length;t++){var a=this.options[t];if("[object Object]"==Object.prototype.toString.call(a))this.formData[this.options[t].name]=this.deepClone(this.options[t].value);else if("[object Array]"==Object.prototype.toString.call(a))for(var i=0;i<a.length;i++){a[i].list.forEach(function(t){e.formData[t.name]=t.value})}}this.formData=V()({},this.formData)}},isShowForm:function(e,t){return Object.prototype.toString.call(e)==t}}},pe=(a("aznp"),Object(B.a)(he,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"collapse-input-style"},[a("el-form",{attrs:{"label-width":"100px","label-position":"left"}},[e._l(e.options,function(t,i){return[e.isShowForm(t,"[object Object]")?a("div",{key:i},[e.inputShow[t.name]&&"dycustComponents"!=t.type&&"dynamic-add-table"!=t.type?a("el-form-item",{attrs:{label:t.label,prop:t.name,required:t.required}},["el-input-number"==t.type?a("el-input-number",{staticStyle:{width:"100%"},attrs:{size:"mini","controls-position":"right"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,"string"==typeof a?a.trim():a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"el-input-text"==t.type?a("el-input",{attrs:{type:"text",size:"mini",placeholder:"请输入内容",clearable:""},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,"string"==typeof a?a.trim():a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"el-input-textarea"==t.type?a("el-input",{attrs:{type:"textarea",size:"mini",rows:"2",placeholder:"请输入内容"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,"string"==typeof a?a.trim():a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"el-switch"==t.type?a("el-switch",{attrs:{size:"mini",placeholder:"请输入内容"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"vue-color"==t.type?a("ColorPicker",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"custom-upload"==t.type?a("customUpload",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"el-radio-group"==t.type?a("el-radio-group",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}},e._l(t.selectOptions,function(t){return a("el-radio",{key:t.code,attrs:{label:t.code}},[e._v(e._s(t.name))])}),1):e._e(),e._v(" "),"el-select"==t.type?a("el-select",{attrs:{size:"mini",clearable:"",placeholder:"请选择"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}},e._l(t.selectOptions,function(e){return a("el-option",{key:e.code,attrs:{label:e.name,value:e.code}})}),1):e._e(),e._v(" "),"el-slider"==t.type?a("el-slider",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"el-button"==t.type?a("el-button",{attrs:{type:"primary",size:"mini",plain:""},on:{click:e.addStaticData}},[e._v("编辑")]):e._e(),e._v(" "),a("el-dialog",{attrs:{title:"代码编辑",visible:e.dialogVisibleStaticData,width:"50%","before-close":e.handleClose},on:{"update:visible":function(t){e.dialogVisibleStaticData=t}}},[a("vue-json-editor",{staticClass:"my-editor",attrs:{"show-btns":!1,mode:"code",lang:"zh"},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:function(t){e.dialogVisibleStaticData=!1}}},[e._v("取 消")]),e._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:e.saveData}},[e._v("确 定")])],1)],1)],1):e._e(),e._v(" "),"dycustComponents"==t.type&&e.inputShow[t.name]?a("dynamicComponents",{attrs:{"chart-type":t.chartType,"dict-key":t.dictKey},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e(),e._v(" "),"dynamic-add-table"==t.type&&e.inputShow[t.name]?a("dynamic-add-table",{attrs:{"chart-type":t.chartType},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[item.name]"}}):e._e()],1):e.isShowForm(t,"[object Array]")?a("div",{key:"a-"+i},[a("el-collapse",{attrs:{accordion:""}},e._l(t,function(t,i){return a("el-collapse-item",{key:i,attrs:{title:t.name,name:i}},[e._l(t.list,function(t,i){return[a("el-form-item",{key:i,attrs:{label:t.label,prop:t.name,required:t.required}},["el-input-number"==t.type?a("el-input-number",{staticStyle:{width:"100%"},attrs:{size:"mini","controls-position":"right",placeholder:t.placeholder},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}}):e._e(),e._v(" "),"el-input-text"==t.type?a("el-input",{attrs:{type:"text",size:"mini",placeholder:"请输入内容",clearable:""},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,"string"==typeof a?a.trim():a)},expression:"formData[itemChildList.name]"}}):e._e(),e._v(" "),"el-input-textarea"==t.type?a("el-input",{attrs:{size:"mini",type:"textarea",rows:"2",placeholder:"请输入内容"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,"string"==typeof a?a.trim():a)},expression:"formData[itemChildList.name]"}}):e._e(),e._v(" "),"el-switch"==t.type?a("el-switch",{attrs:{placeholder:"请输入内容",size:"mini"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}}):e._e(),e._v(" "),"vue-color"==t.type?a("ColorPicker",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}}):e._e(),e._v(" "),"el-upload-picture"==t.type?a("el-upload",{attrs:{size:"mini",action:"https://jsonplaceholder.typicode.com/posts/","list-type":"picture-card"}}):e._e(),e._v(" "),"el-radio-group"==t.type?a("el-radio-group",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}},e._l(t.selectOptions,function(t){return a("el-radio",{key:t.code,attrs:{label:t.code}},[e._v(e._s(t.name))])}),1):e._e(),e._v(" "),"el-select"==t.type?a("el-select",{attrs:{size:"mini",clearable:"",placeholder:"请选择"},on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}},e._l(t.selectOptions,function(e){return a("el-option",{key:e.code,attrs:{label:e.name,value:e.code}})}),1):e._e(),e._v(" "),"el-slider"==t.type?a("el-slider",{on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}}):e._e()],1),e._v(" "),"customColor"==t.type?a("customColorComponents",{key:"b-"+i,on:{change:function(a){return e.changed(a,t.name)}},model:{value:e.formData[t.name],callback:function(a){e.$set(e.formData,t.name,a)},expression:"formData[itemChildList.name]"}}):e._e()]})],2)}),1)],1):e._e()]})],2)],1)},[],!1,null,"4415959e",null));pe.options.__file="dynamicForm.vue";var de=pe.exports,me=a("MzXy"),fe=a.n(me),ve=a("ue2F"),ye=a.n(ve),ge={props:{styleObj:Object,visible:Boolean},data:function(){return{}},watch:{visible:function(e){e?document.body.addEventListener("click",this.closeMenu):document.body.removeEventListener("click",this.closeMenu)}},methods:{closeMenu:function(){this.$emit("update:visible",!1)},deleteLayer:function(){var e=this;this.$confirm("是否删除所选图层?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(function(){e.$emit("deletelayer"),e.$message({type:"success",message:"删除成功!"})}).catch(function(){e.$message({type:"info",message:"已取消删除"})})},copyLayer:function(){this.$emit("copylayer")},istopLayer:function(){this.$emit("istopLayer")},setlowLayer:function(){this.$emit("setlowLayer")},moveupLayer:function(){this.$emit("moveupLayer")},movedownLayer:function(){this.$emit("movedownLayer")}}},be=(a("Cjkk"),Object(B.a)(ge,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{directives:[{name:"show",rawName:"v-show",value:e.visible,expression:"visible"}],staticClass:"contentmenu",style:e.styleObj},[a("div",{staticClass:"contentmenu__item",on:{click:e.deleteLayer}},[a("i",{staticClass:"iconfont iconguanbi"}),e._v(" 删除图层\n ")]),e._v(" "),a("div",{staticClass:"contentmenu__item",on:{click:e.copyLayer}},[a("i",{staticClass:"iconfont iconfuzhi1"}),e._v(" 复制图层\n ")]),e._v(" "),a("div",{staticClass:"contentmenu__item",on:{click:e.istopLayer}},[a("i",{staticClass:"iconfont iconjinlingyingcaiwangtubiao01"}),e._v(" 置顶图层\n ")]),e._v(" "),a("div",{staticClass:"contentmenu__item",on:{click:e.setlowLayer}},[a("i",{staticClass:"iconfont iconleft-copy"}),e._v(" 置底图层\n ")]),e._v(" "),a("div",{staticClass:"contentmenu__item",on:{click:e.moveupLayer}},[a("i",{staticClass:"iconfont iconjinlingyingcaiwangtubiao01"}),e._v(" 上移一层\n ")]),e._v(" "),a("div",{staticClass:"contentmenu__item",on:{click:e.movedownLayer}},[a("i",{staticClass:"iconfont iconleft-copy"}),e._v(" 下移一层\n ")])])},[],!1,null,"76c3e416",null));be.options.__file="contentMenu.vue";var xe=be.exports,Se={name:"Login",components:{draggable:fe.a,VueRulerTool:ye.a,widget:j,dynamicForm:de,contentMenu:xe},data:function(){return{uploadUrl:".//reportDashboard/import/"+this.$route.query.reportCode,grade:!1,layerWidget:[],widgetTools:h,widthLeftForTools:200,widthLeftForToolsHideButton:15,widthLeftForOptions:300,widthPaddingTools:18,toolIsShow:!0,bigscreenWidth:1920,bigscreenHeight:1080,dashboard:{id:null,title:"",width:1920,height:1080,backgroundColor:"",backgroundImage:"",refreshSeconds:null,presetLine:[],presetLineVisible:!0},screenCode:"",widgets:[{type:"widget-text",value:{setup:{},data:{},position:{width:100,height:100,left:0,top:0,zIndex:0}},options:[]}],widgetIndex:0,widgetOptions:{setup:[],data:[],position:[]},flagWidgetClickStopPropagation:!1,styleObj:{left:0,top:0},visibleContentMenu:!1,rightClickIndex:-1,activeName:"first"}},computed:{step:function(){return Number(100/(100*this.bigscreenScaleInWorkbench))},headers:function(){return{Authorization:Object(re.f)()}},middleWidth:function(){var e=0;this.toolIsShow&&(e+=this.widthLeftForTools),e+=this.widthLeftForToolsHideButton,e+=this.widthLeftForOptions;var t=this.bodyWidth-e;return t},middleHeight:function(){return this.bodyHeight},bigscreenScaleInWorkbench:function(){var e=(this.middleWidth-this.widthPaddingTools)/this.bigscreenWidth,t=(this.middleHeight-this.widthPaddingTools)/this.bigscreenHeight;return Math.min(e,t)},workbenchTransform:function(){return"scale("+this.bigscreenScaleInWorkbench+", "+this.bigscreenScaleInWorkbench+")"},bigscreenWidthInWorkbench:function(){return this.getPXUnderScale(this.bigscreenWidth)+this.widthPaddingTools},bigscreenHeightInWorkbench:function(){return this.getPXUnderScale(this.bigscreenHeight)+this.widthPaddingTools}},watch:{widgets:{handler:function(e){this.handlerLayerWidget(e)},deep:!0}},mounted:function(){var e=this;this.initEchartData(),this.widgets=[],window.addEventListener("mouseup",function(){e.grade=!1})},methods:{handlerLayerWidget:function(e){for(var t=[],a=function(a){var i={};i.icon=p(e[a].type).icon,e[a].options.setup.forEach(function(e){"layerName"==e.name&&(i.label=e.value)}),t.push(i)},i=0;i<e.length;i++)a(i);this.layerWidget=t},initEchartData:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n,l,s,u;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return a=e.$route.query.reportCode,t.next=3,Object(r.b)(a);case 3:if(i=t.sent,n=i.code,l=i.data,200==n){t.next=8;break}return t.abrupt("return");case 8:s=e.handleInitEchartsData(l),u=e.handleBigScreen(l.dashboard),e.widgets=s,e.dashboard=u,e.bigscreenWidth=e.dashboard.width,e.bigscreenHeight=e.dashboard.height;case 14:case"end":return t.stop()}},t,e)}))()},handleBigScreen:function(e){var t=p("screen").options.setup;for(var a in e)for(var i=0;i<t.length;i++)a==t[i].name&&(t[i].value=e[a]);return this.setOptionsOnClickScreen(),{backgroundColor:e&&e.backgroundColor||"",backgroundImage:e&&e.backgroundImage||"",height:e&&e.height||"1080",title:e&&e.title||"",width:e&&e.width||"1920"}},handleInitEchartsData:function(e){for(var t=e.dashboard?e.dashboard.widgets:[],a=[],i=0;i<t.length;i++){var o={};o.type=t[i].type,o.value={setup:t[i].value.setup,data:t[i].value.data,position:t[i].value.position};var n=this.deepClone(p(t[i].type)).options,l=this.handleOptionsData(t[i].value,n);o.options=l,a.push(o)}return a},handleOptionsData:function(e,t){var a=function(a){for(var i=0;i<t.setup.length;i++){var o=t.setup[i];if("[object Object]"==Object.prototype.toString.call(o))a==t.setup[i].name&&(t.setup[i].value=e.setup[a]);else if("[object Array]"==Object.prototype.toString.call(o))for(var n=0;n<o.length;n++){o[n].list.forEach(function(t){a==t.name&&(t.value=e.setup[a])})}}};for(var i in e.setup)a(i);for(var i in e.position)for(var o=0;o<t.position.length;o++)i==t.position[o].name&&(t.position[o].value=e.position[i]);for(var n in e.data)for(var l=0;l<t.data.length;l++)n==t.data[l].name&&(t.data[l].value=e.data[n]);return t},saveData:function(){var e=this;return l()(o.a.mark(function t(){var a,i,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(e.widgets&&0!=e.widgets.length){t.next=3;break}return e.$message.error("请添加组件"),t.abrupt("return");case 3:return a={reportCode:e.$route.query.reportCode,dashboard:{title:e.dashboard.title,width:e.dashboard.width,height:e.dashboard.height,backgroundColor:e.dashboard.backgroundColor,backgroundImage:e.dashboard.backgroundImage},widgets:e.widgets},t.next=6,Object(r.e)(a);case 6:i=t.sent,n=i.code,i.data,"200"==n&&e.$message.success("保存成功!");case 10:case"end":return t.stop()}},t,e)}))()},viewScreen:function(){var e=this.$router.resolve({path:"/bigscreen/viewer",query:{reportCode:this.$route.query.reportCode}});window.open(e.href,"_blank")},exportDashboard:function(e){var t=this;return l()(o.a.mark(function a(){var i,n;return o.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:i=t.$route.query.reportCode+".zip",n={reportCode:t.$route.query.reportCode,showDataSet:e},Object(r.c)(n).then(function(e){var a=t;if("application/json"==e.type){var o=new FileReader;return o.readAsText(e,"utf-8"),void(o.onload=function(){var e=JSON.parse(o.result);a.$message.error(e.message)})}var n=new Blob([e],{type:"application/octet-stream"});if(window.navigator.msSaveOrOpenBlob)navigator.msSaveBlob(n,i);else{var l=document.createElement("a");l.href=window.URL.createObjectURL(n),l.download=i,l.click(),window.URL.revokeObjectURL(l.href)}});case 3:case"end":return a.stop()}},a,t)}))()},handleUpload:function(e,t,a){this.$refs.upload.clearFiles(),this.initEchartData(),"200"==e.code?this.$message({message:"导入成功!",type:"success"}):this.$message({message:e.message,type:"error"})},handleError:function(e){this.$message({message:"上传失败!",type:"error"})},getPXUnderScale:function(e){return this.bigscreenScaleInWorkbench*e},widgetOnDragged:function(e,t){var a=t,i=e.originalEvent.clientX,o=e.originalEvent.clientY,n=this.getDomTopLeftById("workbench"),l=o-n.top,r=(n.left,this.bigscreenScaleInWorkbench,this.bigscreenScaleInWorkbench,{type:a,value:{setup:{},data:{},position:{width:0,height:0,left:0,top:0,zIndex:0}},options:p(a).options}),s=this.handleDefaultValue(r);this.widgets.push(this.deepClone(s)),this.setOptionsOnClickWidget(this.widgets.length-1)},handleDefaultValue:function(e){for(var t in e)if("options"==t){for(var a=0;a<e.options.setup.length;a++){var i=e.options.setup[a];if("[object Object]"==Object.prototype.toString.call(i))e.value.setup[i.name]=i.value;else if("[object Array]"==Object.prototype.toString.call(i))for(var o=0;o<i.length;o++){i[o].list.forEach(function(t){e.value.setup[t.name]=t.value})}}for(var n=0;n<e.options.position.length;n++){var l=e.options.position[n];l.value&&(e.value.position[l.name]=l.value)}if(e.options.data&&e.options.data.length>0)for(var r=0;r<e.options.data.length;r++){var s=e.options.data[r];s.value&&(e.value.data[s.name]=s.value)}}return e},layerClick:function(e){this.widgetIndex=e,this.widgetsClick(e)},setOptionsOnClickScreen:function(){this.screenCode="screen",this.activeName="first",this.widgetOptions=p("screen").options},setOptionsOnClickWidget:function(e){this.screenCode="","number"!=typeof e?e.index<0||e.index>=this.widgets.length||(this.widgetIndex=e.index,this.widgets[e.index].value.position=e,this.widgets[e.index].options.position.forEach(function(t){for(var a in e)t.name==a&&(t.value=e[a])}),this.widgetOptions=this.deepClone(this.widgets[e.index].options)):this.widgetOptions=this.deepClone(this.widgets[e].options)},widgetsClick:function(e){for(var t=this.$refs.widgets,a=0;a<t.length;a++)a==e?this.$refs.widgets[a].$refs.draggable.setActive(!0):this.$refs.widgets[a].$refs.draggable.setActive(!1);this.setOptionsOnClickWidget(e),this.grade=!0},widgetsMouseup:function(e){this.grade=!1},handleMouseDown:function(){for(var e=this.$refs.widgets,t=0;t<e.length;t++)this.$refs.widgets[t].$refs.draggable.setActive(!1)},widgetValueChanged:function(e,t){var a=this;if("screen"==this.screenCode){var i=new Array;this.dashboard=this.deepClone(t),this.bigscreenWidth!=this.dashboard.width&&(this.bigscreenWidth=this.dashboard.width),this.bigscreenHeight!=this.dashboard.height&&(this.bigscreenHeight=this.dashboard.height),this.widgetOptions.setup.forEach(function(e){"width"==e.name?e.value=a.bigscreenWidth:"height"==e.name&&(e.value=a.bigscreenHeight),i.push(e)}),this.widgetOptions.setup=i}else for(var o=0;o<this.widgets.length;o++)this.widgetIndex==o&&(this.widgets[o].value[e]=this.deepClone(t),this.setDefaultValue(this.widgets[o].options[e],t))},rightClick:function(e,t){this.rightClickIndex=t;var a=e.clientX,i=e.clientY;return(a||i)&&(this.styleObj={left:a+"px",top:i+"px",display:"block"}),this.visibleContentMenu=!0,!1},setDefaultValue:function(e,t){for(var a=0;a<e.length;a++)if("[object Object]"==Object.prototype.toString.call(e[a]))for(var i in t)e[a].name==i&&(e[a].value=t[i]);else if("[object Array]"==Object.prototype.toString.call(e[a]))for(var o=0;o<e[a].length;o++)for(var n=e[a][o].list,l=0;l<n.length;l++)for(var r in t)n[l].name==r&&(n[l].value=t[r])},datadragEnd:function(e){e.preventDefault(),this.widgets=this.swapArr(this.widgets,e.oldIndex,e.newIndex)},swapArr:function(e,t,a){return e[t]=e.splice(a,1,e[t])[0],e},deletelayer:function(){this.widgets.splice(this.rightClickIndex,1)},copylayer:function(){var e=this.deepClone(this.widgets[this.rightClickIndex]);this.widgets.splice(this.widgets.length,0,e)},istopLayer:function(){if(this.rightClickIndex+1<this.widgets.length){var e=this.widgets.splice(this.rightClickIndex,1)[0];this.widgets.push(e)}},setlowLayer:function(){0!=this.rightClickIndex&&this.widgets.unshift(this.widgets.splice(this.rightClickIndex,1)[0])},moveupLayer:function(){0!=this.rightClickIndex?this.widgets[this.rightClickIndex]=this.widgets.splice(this.rightClickIndex-1,1,this.widgets[this.rightClickIndex])[0]:this.widgets.push(this.widgets.shift())},movedownLayer:function(){this.rightClickIndex!=this.widgets.length-1?this.widgets[this.rightClickIndex]=this.widgets.splice(this.rightClickIndex+1,1,this.widgets[this.rightClickIndex])[0]:this.widgets.unshift(this.widgets.splice(this.rightClickIndex,1)[0])}}},we=(a("Qhiv"),Object(B.a)(Se,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"layout"},[e.toolIsShow?a("div",{staticClass:"layout-left",style:{width:e.widthLeftForTools+"px"}},[a("el-tabs",{attrs:{type:"border-card",stretch:!0}},[a("el-tab-pane",{attrs:{label:"工具栏"}},[a("el-divider",{attrs:{"content-position":"center"}},[e._v("html")]),e._v(" "),e._l(e.widgetTools,function(t){return a("draggable",{key:t.code,on:{end:function(a){return e.widgetOnDragged(a,t.code)}}},[a("div",{staticClass:"tools-item"},[a("span",{staticClass:"tools-item-icon"},[a("i",{staticClass:"iconfont",class:t.icon})]),e._v(" "),a("span",{staticClass:"tools-item-text"},[e._v(e._s(t.label))])])])})],2),e._v(" "),a("el-tab-pane",{attrs:{label:"图层"}},[a("draggable",{attrs:{options:{animation:300}},on:{update:e.datadragEnd},model:{value:e.layerWidget,callback:function(t){e.layerWidget=t},expression:"layerWidget"}},[a("transition-group",e._l(e.layerWidget,function(t,i){return a("div",{key:"item"+i,staticClass:"tools-item",class:e.widgetIndex==i?"is-active":"",on:{click:function(t){return e.layerClick(i)}}},[a("span",{staticClass:"tools-item-icon"},[a("i",{staticClass:"iconfont",class:t.icon})]),e._v(" "),a("span",{staticClass:"tools-item-text"},[e._v(e._s(t.label))])])}),0)],1)],1)],1)],1):e._e(),e._v(" "),a("div",{staticClass:"layout-left-fold",style:{width:e.widthLeftForToolsHideButton+"px"},on:{click:function(t){e.toolIsShow=!e.toolIsShow}}},[a("i",{staticClass:"el-icon-arrow-right"})]),e._v(" "),a("div",{staticClass:"layout-middle",style:{width:e.middleWidth+"px",height:e.middleHeight+"px"}},[a("div",{staticClass:"top-button"},[a("span",{staticClass:"btn"},[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"保存",placement:"bottom"}},[a("i",{staticClass:"iconfont iconsave",on:{click:e.saveData}})])],1),e._v(" "),a("span",{staticClass:"btn"},[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"预览",placement:"bottom"}},[a("i",{staticClass:"iconfont iconyulan",on:{click:e.viewScreen}})])],1),e._v(" "),a("span",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:export",expression:"'bigScreenManage:export'"}],staticClass:"btn"},[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"导入",placement:"bottom"}},[a("el-upload",{ref:"upload",staticClass:"el-upload",attrs:{action:e.uploadUrl,headers:e.headers,accept:".zip","on-success":e.handleUpload,"on-error":e.handleError,"show-file-list":!1,limit:1}},[a("i",{staticClass:"iconfont icondaoru"})])],1)],1),e._v(" "),a("span",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:import",expression:"'bigScreenManage:import'"}],staticClass:"btn border-left"},[a("ul",{staticClass:"nav"},[a("li",[a("i",{staticClass:"iconfont icondaochu"}),a("i",{staticClass:"el-icon-arrow-down"}),e._v(" "),a("ul",[a("li",[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"适合当前系统",placement:"right"}},[a("div",{on:{click:function(t){return e.exportDashboard(1)}}},[e._v("导出(包含数据集)")])])],1),e._v(" "),a("li",[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"适合跨系统",placement:"right"}},[a("div",{on:{click:function(t){return e.exportDashboard(0)}}},[e._v("导出(不包含数据集)")])])],1)])])])])]),e._v(" "),a("div",{staticClass:"workbench-container",style:{width:e.bigscreenWidthInWorkbench+"px",height:e.bigscreenHeightInWorkbench+"px"},on:{mousedown:e.handleMouseDown}},[a("vue-ruler-tool",{staticClass:"vueRuler",attrs:{"step-length":50,parent:!0,position:"relative","is-scale-revise":!0,visible:e.dashboard.presetLineVisible},on:{"update:visible":function(t){return e.$set(e.dashboard,"presetLineVisible",t)}},model:{value:e.dashboard.presetLine,callback:function(t){e.$set(e.dashboard,"presetLine",t)},expression:"dashboard.presetLine"}},[a("div",{staticClass:"workbench",style:{transform:e.workbenchTransform,width:e.bigscreenWidth+"px",height:e.bigscreenHeight+"px","background-color":e.dashboard.backgroundColor,"background-image":"url("+e.dashboard.backgroundImage+")","background-position":"0% 0%","background-size":"100% 100%","background-repeat":"initial","background-attachment":"initial","background-origin":"initial","background-clip":"initial"},attrs:{id:"workbench"},on:{click:function(t){return t.target!==t.currentTarget?null:e.setOptionsOnClickScreen(t)}}},[e.grade?a("div",{staticClass:"bg-grid"}):e._e(),e._v(" "),e._l(e.widgets,function(t,i){return a("widget",{key:i,ref:"widgets",refInFor:!0,attrs:{index:i,step:e.step,type:t.type,bigscreen:{bigscreenWidth:e.bigscreenWidth,bigscreenHeight:e.bigscreenHeight}},on:{onActivated:e.setOptionsOnClickWidget},nativeOn:{contextmenu:function(t){return t.preventDefault(),e.rightClick(t,i)},mousedown:function(t){return t.preventDefault(),e.widgetsClick(i)},mouseup:function(t){return t.preventDefault(),e.widgetsMouseup(t)}},model:{value:t.value,callback:function(a){e.$set(t,"value",a)},expression:"widget.value"}})})],2)])],1)]),e._v(" "),a("div",{staticClass:"layout-right",style:{width:e.widthLeftForOptions+"px"}},[a("el-tabs",{attrs:{type:"border-card",stretch:!0},model:{value:e.activeName,callback:function(t){e.activeName=t},expression:"activeName"}},[e.isNotNull(e.widgetOptions.setup)||e.isNotNull(e.widgetOptions.collapse)?a("el-tab-pane",{attrs:{name:"first",label:"配置"}},[a("dynamicForm",{ref:"formData",attrs:{options:e.widgetOptions.setup},on:{onChanged:function(t){return e.widgetValueChanged("setup",t)}}})],1):e._e(),e._v(" "),e.isNotNull(e.widgetOptions.data)?a("el-tab-pane",{attrs:{name:"second",label:"数据"}},[a("dynamicForm",{ref:"formData",attrs:{options:e.widgetOptions.data},on:{onChanged:function(t){return e.widgetValueChanged("data",t)}}})],1):e._e(),e._v(" "),e.isNotNull(e.widgetOptions.position)?a("el-tab-pane",{attrs:{name:"third",label:"坐标"}},[a("dynamicForm",{ref:"formData",attrs:{options:e.widgetOptions.position},on:{onChanged:function(t){return e.widgetValueChanged("position",t)}}})],1):e._e()],1)],1),e._v(" "),a("content-menu",{attrs:{visible:e.visibleContentMenu,"style-obj":e.styleObj},on:{"update:visible":function(t){e.visibleContentMenu=t},deletelayer:e.deletelayer,copylayer:e.copylayer,istopLayer:e.istopLayer,setlowLayer:e.setlowLayer,moveupLayer:e.moveupLayer,movedownLayer:e.movedownLayer}})],1)},[],!1,null,"8c5c65fc",null));we.options.__file="index.vue";t.default=we.exports},W7XY:function(e,t,a){"use strict";var i=a("OnJP");a.n(i).a},"WN/g":function(e,t,a){},Wbec:function(e,t,a){},Whq1:function(e,t,a){"use strict";var i={name:"WidgetBarCompareChart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{title:{x:"center",textStyle:{color:"#ffffff"}},grid:[{show:!1,left:"4%",top:60,bottom:10,containLabel:!0,width:"40%"},{show:!1,left:"50.5%",top:60,bottom:25,width:"0%"},{show:!1,right:"4%",top:60,bottom:10,containLabel:!0,width:"40%"}],legend:{textStyle:{color:"#fff",textAlign:"center"}},xAxis:[{splitNumber:2,show:!0,type:"value",inverse:!0,axisLine:{show:!1},axisTick:{show:!1},position:"bottom",axisLabel:{show:!0,textStyle:{color:"#ffffff",fontSize:12}},splitLine:{show:!0,lineStyle:{color:"#57617f",width:1,type:"solid"}}},{gridIndex:1,show:!1},{gridIndex:2,show:!0,type:"value",axisLine:{show:!1},axisTick:{show:!1},position:"bottom",axisLabel:{show:!0,textStyle:{color:"#ffffff",fontSize:12}},splitLine:{show:!0,lineStyle:{color:"#57617f",width:1,type:"solid"}}}],yAxis:[{type:"category",inverse:!0,position:"right",axisLine:{show:!1},axisTick:{show:!1},axisLabel:{show:!1},data:[]},{gridIndex:1,type:"category",inverse:!0,position:"left",axisLine:{show:!1},axisTick:{show:!1},axisLabel:{show:!0,textStyle:{align:"center",color:"#ffffff",fontSize:14}},data:[]},{gridIndex:2,type:"category",inverse:!0,position:"left",axisLine:{show:!1},axisTick:{show:!1},axisLabel:{show:!1}}],series:[{name:"",type:"bar",barGap:20,barWidth:15,label:{normal:{show:!0,color:"red",position:"insideLeft",textStyle:{color:"#ffffff"}},emphasis:{show:!1}},itemStyle:{normal:{color:"#36c5e7",barBorderRadius:[8,0,0,8]},emphasis:{show:!1}},data:[]},{name:"",type:"bar",barGap:20,barWidth:15,xAxisIndex:2,yAxisIndex:2,label:{normal:{show:!0,color:"red",position:"insideRight",textStyle:{color:"#ffffff"}}},itemStyle:{normal:{color:"#e68b55",barBorderRadius:[0,8,8,0]},emphasis:{show:!1}},data:[]}]},optionsStyle:{},optionsData:{},optionsSetup:{},flagInter:null}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsXLeft(),this.setOptionsXRight(),this.setOptionsY(),this.setOptionsTop(),this.setOptionsTooltip(),this.setOptionsGrid(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},this.options.title=t},setOptionsXLeft:function(){var e=this.optionsSetup,t={splitNumber:e.splitNumberLeft,type:"value",show:e.hideXLeft,inverse:!0,axisLine:{show:e.xLineLeft,lineStyle:{color:e.lineColorXLeft}},axisTick:{show:e.tickLineLeft},position:"bottom",axisLabel:{show:!0,textStyle:{color:e.XcolorLeft,fontSize:e.fontSizeXLeft}},splitLine:{show:e.SplitLineLeft,lineStyle:{color:e.SplitLineColorLeft,width:e.SplitLinefontSizeLeft,type:"solid"}}};this.options.xAxis[0]=t},setOptionsXRight:function(){var e=this.optionsSetup,t={gridIndex:2,splitNumber:e.splitNumberRight,show:e.hideXRight,type:"value",axisLine:{show:e.xLineRight,lineStyle:{color:e.lineColorXRight}},axisTick:{show:e.tickLineRight},position:"bottom",axisLabel:{show:!0,textStyle:{color:e.XcolorRight,fontSize:e.fontSizeXRight}},splitLine:{show:e.SplitLineRight,lineStyle:{color:e.SplitLineColorRight,width:e.SplitLinefontSizeRight,type:"solid"}}};this.options.xAxis[2]=t},setOptionsY:function(){var e=this.optionsSetup,t={show:e.lineY,lineStyle:{color:e.lineColorY}},a={show:e.tickLineY},i={show:e.hideY,textStyle:{align:e.textAlign,color:e.colorY,fontSize:e.fontSizeY}};this.options.yAxis[1].axisLine=t,this.options.yAxis[1].axisTick=a,this.options.yAxis[1].axisLabel=i},setOptionsTop:function(){var e=this.optionsSetup,t=this.options.series;for(var a in t)"bar"==t[a].type&&(t[0].label={normal:{show:e.isShow,position:"insideLeft",textStyle:{fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight}},emphasis:{show:!1}},t[1].label={normal:{show:e.isShow,color:"red",position:"insideRight",textStyle:{fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight}},emphasis:{show:!1}},t[a].barWidth=e.maxWidth);this.options.series=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.fontSize}};this.options.tooltip=t},setOptionsGrid:function(){var e=this.optionsSetup,t=[{show:e.frameLineLeft,left:e.marginLeftRight,top:e.marginTop,bottom:e.marginBottom,containLabel:!0,width:"40%"},{show:!1,left:"51%",top:e.marginTop,bottom:e.marginBottom+15,width:"0%"},{show:e.frameLineRight,right:e.marginLeftRight,top:e.marginTop,bottom:e.marginBottom,containLabel:!0,width:"40%"}];this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup,t=e.customColor;if(t){var a={normal:{color:t[0].color,barBorderRadius:[e.radius,0,0,e.radius]},emphasis:{show:!1}},i={normal:{color:t[1].color,barBorderRadius:[0,e.radius,e.radius,0]},emphasis:{show:!1}};this.options.series[0].itemStyle=a,this.options.series[1].itemStyle=i}},setOptionsData:function(){var e=this.optionsSetup,t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData,e):this.dynamicDataFn(t.dynamicData,t.refreshTime,e)},setUnique:function(e){var t=[];return e.forEach(function(e){return t.includes(e)?"":t.push(e)}),t},staticDataFn:function(e){var t=[],a=[],i=[],o=[];for(var n in e)t[n]=e[n].axis,a[n]=e[n].name;for(var l in t=this.setUnique(t),a=this.setUnique(a)){var r=new Array(a.length).fill(0);for(var s in t)for(var u in e)e[u].name==a[l]&&e[u].axis==t[s]&&(r[s]=e[u].data);i.push({name:a[l],data:r}),o.push(a[l])}this.options.series[0].name=i[0].name,this.options.series[0].data=i[0].data,this.options.series[1].name=i[1].name,this.options.series[1].data=i[1].data,this.options.yAxis[1].data=t,this.options.legend.data=o,this.setOptionsLegendName(o)},dynamicDataFn:function(e,t,a){var i=this;e&&(this.ispreview?(this.getEchartData(e,a),this.flagInter=setInterval(function(){i.getEchartData(e,a)},t)):this.getEchartData(e,a))},getEchartData:function(e,t){var a=this;this.queryEchartsData(e).then(function(e){a.renderingFn(t,e)})},renderingFn:function(e,t){var a=[];this.options.yAxis[1].data=t.xAxis,"bar"==t.series[0].type&&(this.options.series[0].name=t.series[0].name,this.options.series[0].data=t.series[0].data,this.options.series[1].name=t.series[1].name,this.options.series[1].data=t.series[1].data,a.push(t.series[0].name),a.push(t.series[1].name)),this.options.legend.data=a,this.setOptionsLegendName(a)}}},o=(a("j9f0"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"15a4a600",null);n.options.__file="widgetBarCompareChart.vue";t.a=n.exports},XgKG:function(e,t,a){"use strict";var i=a("tC89");a.n(i).a},"Y+Zb":function(e,t,a){},Y48Z:function(e,t,a){},Ydp4:function(e,t,a){"use strict";var i=a("cBk1");a.n(i).a},a8b3:function(e,t,a){"use strict";var i=a("Y+Zb");a.n(i).a},aVQV:function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetFunnel",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{color:[],title:{text:"",textStyle:{color:"#fff"}},tooltip:{trigger:"item",formatter:"{a} <br/>{b} : {c}"},legend:{x:"center",y:"92%",textStyle:{color:"#fff"}},series:[{name:"",type:"funnel",left:"center",width:"80%",sort:"descending",label:{normal:{show:!0,position:"inside",formatter:"{c}",textStyle:{color:"#fff",fontSize:14}},emphasis:{position:"inside",formatter:"{b}: {c}"}},itemStyle:{normal:{opacity:.8,borderColor:"rgba(12, 13, 43, .9)",borderWidth:1,shadowBlur:4,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"rgba(0, 0, 0, .6)"}},data:[]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setEnding(),this.setOptionsText(),this.setOptionsTitle(),this.setOptionsTooltip(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData()},setEnding:function(){var e=this.optionsSetup,t=this.options.series;e.ending?t[0].sort="ascending":t[0].sort="descending"},setOptionsText:function(){var e=this.optionsSetup,t={show:e.isShow,position:"inside",formatter:"{c}",textStyle:{color:e.color,fontSize:e.fontSize,fontWeight:e.fontWeight}};this.options.series[0].label.normal=t},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.tipFontSize}};this.options.tooltip=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.right=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsColor:function(){var e=this.optionsSetup.customColor;if(e){for(var t=[],a=0;a<e.length;a++)t.push(e[a].color);this.options.color=t,this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t="string"==typeof e?JSON.parse(e):e;for(var a in this.options.series)"funnel"==this.options.series[a].type&&(this.options.series[a].data=t)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){for(var t in this.options.series)"funnel"==this.options.series[t].type&&(this.options.series[t].data=e)}}},l=(a("xFol"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"c05cc2de",null);r.options.__file="widgetFunnel.vue";t.a=r.exports},aznp:function(e,t,a){"use strict";var i=a("Q61O");a.n(i).a},cBk1:function(e,t,a){},cU14:function(e,t,a){"use strict";var i=a("CZ5I");a.n(i).a},cWz8:function(e,t,a){"use strict";var i={name:"WidgetTime",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{timestr:"",options:{}}},computed:{transStyle:function(){return console.log(this.objToOne(this.options)),this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",color:this.transStyle.color||"#fff",text:this.transStyle.text||"文本框","font-size":this.transStyle.fontSize+"px"||"30px","letter-spacing":this.transStyle.letterSpacing+"em",background:this.transStyle.background,"font-weight":this.transStyle.fontWeight,"text-align":this.transStyle.textAlign,display:void 0==this.transStyle.hideLayer?"block":this.transStyle.hideLayer?"none":"block",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px"}}},watch:{value:{handler:function(e){this.options=e},deep:!0}},mounted:function(){this.options=this.value,this.getTime()},methods:{formatFunction:function(e,t){/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(e.getFullYear()+"").substr(4-RegExp.$1.length)));var a={"M+":e.getMonth()+1,"d+":e.getDate(),"h+":e.getHours(),"m+":e.getMinutes(),"s+":e.getSeconds(),"q+":Math.floor((e.getMonth()+3)/3),S:e.getMilliseconds()};for(var i in a)new RegExp("("+i+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?a[i]:("00"+a[i]).substr((""+a[i]).length)));return t},check:function(e){return e<10?"0"+e:e},formatWeek:function(e,t){for(var a=e.getFullYear(),i=e.getMonth()+1,o=e.getDate(),n=e.getHours(),l=e.getMinutes(),r=e.getSeconds(),s=e.getDay(),u=["日","一","二","三","四","五","六"],c=0;c<7;c++)s==c&&(s=" 星期"+u[c]);return"year-week"==t?a+"-"+i+"-"+o+s:"year-h-m-week"==t?a+"-"+i+"-"+o+" "+n+":"+l+s:"year-h-m-s-week"==t?a+"-"+i+"-"+o+" "+n+":"+l+":"+r+s:"week"==t?s:void 0},displayTime:function(){this.timestr=this.transStyle.timeFormat.indexOf("week")>-1?this.formatWeek(new Date,this.transStyle.timeFormat):this.formatFunction(new Date,this.transStyle.timeFormat)},getTime:function(){var e=this;setInterval(function(){e.displayTime()},1e3)}}},o=(a("/y+v"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement;return(this._self._c||e)("div",{staticClass:"text",style:this.styleColor},[this._v(this._s(this.timestr))])},[],!1,null,"6da4b633",null);n.options.__file="widgetTime.vue";t.a=n.exports},"cf/8":function(e,t,a){},ctb9:function(e,t,a){},cyzc:function(e,t,a){"use strict";var i={name:"WidgetImage",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",background:this.transStyle.background,"text-align":this.transStyle.textAlign,width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px"}},imgStyle:function(){return{imageAdress:this.transStyle.imageAdress,"border-radius":this.transStyle.borderRadius+"px",opacity:this.transStyle.transparency/100}}},watch:{value:{handler:function(e){this.options=e},deep:!0}},created:function(){this.options=this.value},mounted:function(){},methods:{}},o=(a("palL"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"imagebox",style:this.styleColor},[t("img",{class:this.transStyle.startRotate?"startImg":"",style:this.imgStyle,attrs:{src:this.imgStyle.imageAdress,alt:""}})])},[],!1,null,"92e12b86",null);n.options.__file="widgetImage.vue";t.a=n.exports},eVDu:function(e,t,a){"use strict";var i=a("53tm");a.n(i).a},fYW0:function(e,t,a){"use strict";var i=a("2Hon");a.n(i).a},gLgb:function(e,t,a){"use strict";var i={name:"WidgetHref",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",color:this.transStyle.color||"#fff","font-weight":this.transStyle.fontWeight||"600",text:this.transStyle.text||"超链接","font-size":this.transStyle.fontSize+"px"||"12px","letter-spacing":this.transStyle.letterSpacing+"em",background:this.transStyle.background,"text-align":this.transStyle.textAlign,display:void 0==this.transStyle.hideLayer?"block":this.transStyle.hideLayer?"none":"block",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",linkAdress:this.transStyle.linkAdress,jumpMode:"other"==this.transStyle.jumpMode?"_blank":"_self"}}},watch:{value:{handler:function(e){this.options=e},deep:!0}},mounted:function(){this.options=this.value},methods:{}},o=(a("uLc6"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement;return(this._self._c||e)("a",{style:this.styleColor,attrs:{href:this.styleColor.linkAdress,target:this.styleColor.jumpMode}},[this._v(this._s(this.styleColor.text))])},[],!1,null,"6ebd3276",null);n.options.__file="widgetHref.vue";t.a=n.exports},gvzL:function(e,t,a){},"h+18":function(e,t,a){"use strict";var i=a("T7H8");a.n(i).a},h6gK:function(e,t,a){"use strict";var i=a("cf/8");a.n(i).a},j9f0:function(e,t,a){"use strict";var i=a("jof3");a.n(i).a},jOJk:function(e,t,a){"use strict";var i=a("1OLZ");a.n(i).a},jZP0:function(e,t,a){"use strict";var i=a("OeK3");a.n(i).a},jmgl:function(e,t,a){"use strict";var i=a("TSjp"),o=a.n(i),n={name:"WidgetGauge",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{series:[{type:"gauge",z:100,axisLine:{lineStyle:{width:10,color:[[.3,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(0, 237, 3,0.1)"},{offset:.5,color:"rgba(0, 237, 3,0.6)"},{offset:1,color:"rgba(0, 237, 3,1)"}])],[.7,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(255, 184, 0,0.1)"},{offset:.5,color:"rgba(255, 184, 0,0.6)"},{offset:1,color:"rgba(255, 184, 0,1)"}])],[1,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:"rgba(175, 36, 74,0.1)"},{offset:.5,color:"rgba(255, 36, 74,0.6)"},{offset:1,color:"rgba(255, 36, 74,1)"}])]]}},pointer:{itemStyle:{color:"auto"}},axisTick:{show:!0,distance:0,length:10,lineStyle:{color:"auto",width:2}},splitLine:{show:!0,distance:0,length:14,lineStyle:{color:"auto",width:4}},axisLabel:{show:!0,color:"white",distance:2,fontSize:10},detail:{valueAnimation:!0,formatter:"{value} %",color:"white",fontSize:18},data:[{value:70}]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptions(),this.setOptionsData()},setOptions:function(){var e=this.optionsSetup,t=this.options.series;if("gauge"==t[0].type){var a={show:e.ringShow,lineStyle:{width:e.pieWeight,color:[[.3,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:e.color30p0},{offset:.5,color:e.color30p5},{offset:1,color:e.color30p10}])],[.7,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:e.color70p0},{offset:.5,color:e.color70p5},{offset:1,color:e.color70p10}])],[1,new o.a.graphic.LinearGradient(0,1,1,0,[{offset:0,color:e.color100p0},{offset:.5,color:e.color100p5},{offset:1,color:e.color100p10}])]]}},i={show:e.tickShow,distance:e.tickDistance,length:e.tickLength,lineStyle:{color:"auto",width:e.tickWidth}},n={show:e.splitShow,distance:e.splitDistance,length:e.splitLength,lineStyle:{color:"auto",width:e.splitWidth}};t[0].axisLine=a,t[0].axisTick=i,t[0].splitLine=n}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t=this.optionsSetup,a=this.options.series,i=[{value:e[0].num}],o={valueAnimation:!0,formatter:"{value} %",color:t.labelColor,fontSize:t.labelFontSize,fontWeight:t.labelFontWeight};a[0].data=i,a[0].detail=o},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){var t=this.optionsSetup,a=this.options.series,i=[{value:e[0].value}],o={valueAnimation:!0,formatter:"{value} %",color:t.labelColor,fontSize:t.labelFontSize,fontWeight:t.labelFontWeight};a[0].data=i,a[0].detail=o}}},l=(a("Ydp4"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"a83b2528",null);r.options.__file="widgetGauge.vue";t.a=r.exports},jof3:function(e,t,a){},kLPZ:function(e,t,a){"use strict";var i=a("I8wO");a.n(i).a},kq3f:function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetPieNightingaleRoseArea",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{legend:{top:"bottom"},toolbox:{show:!0,feature:{mark:{show:!0}}},series:[{type:"pie",radius:["10%","50%"],center:["50%","50%"],roseType:"area",itemStyle:{borderRadius:8},data:[]}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsValue(),this.setOptionsTooltip(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData(),this.setOptionsRosetype()},setOptionsRosetype:function(){this.options.series[0].roseType=this.optionsSetup.nightingleRosetype},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsValue:function(){var e=this.optionsSetup,t=this.options.series,a=e.numberValue?"{c}":"",i=e.percentage?"({d})%":"",o={show:e.isShow,formatter:"{a|{b}:"+a+" "+i+"}",rich:{a:{padding:[-30,15,-20,15],color:e.subTextColor,fontSize:e.fontSize,fontWeight:e.fontWeight}},fontSize:e.fontSize,fontWeight:e.optionsCollapse};for(var n in t)"pie"==t[n].type&&(t[n].label=o,t[n].labelLine={show:e.isShow})},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.fontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left="left"==e.lateralPosition?0:"auto",t.right="right"==e.lateralPosition?0:"auto",t.top="top"==e.longitudinalPosition?0:"auto",t.bottom="bottom"==e.longitudinalPosition?0:"auto",t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.fontSize},t.itemWidth=e.lengedWidth},setOptionsColor:function(){var e=this.optionsSetup.customColor;if(e){for(var t=[],a=0;a<e.length;a++)t.push(e[a].color);this.options.color=t,this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t="string"==typeof e?JSON.parse(e):e;for(var a in this.options.series)"pie"==this.options.series[a].type&&(this.options.series[a].data=t)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){for(var t in this.options.series)"pie"==this.options.series[t].type&&(this.options.series[t].data=e)}}},l=(a("cU14"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"3fe2ff9e",null);r.options.__file="widgetPieNightingaleRose.vue";t.a=r.exports},lV0h:function(e,t,a){"use strict";var i=a("Wbec");a.n(i).a},mJoS:function(e,t,a){},mlo3:function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetBarchart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{grid:{},legend:{textStyle:{color:"#fff"}},xAxis:{type:"category",data:[],axisLabel:{show:!0,textStyle:{color:"#fff"}}},yAxis:{type:"value",data:[],axisLabel:{show:!0,textStyle:{color:"#fff"}}},series:[{data:[],type:"bar",barGap:"0%",itemStyle:{borderRadius:null}}]},optionsStyle:{},optionsData:{},optionsSetup:{},flagInter:null}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsTop(),this.setOptionsTooltip(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.xNameColor,fontSize:e.xNameFontSize},nameRotate:e.textAngle,inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngle,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t={type:"value",scale:e.scale,splitNumber:e.splitNumber,show:e.isShowY,name:e.textNameY,nameTextStyle:{color:e.nameColorY,fontSize:e.nameFontSizeY},inverse:e.reversalY,axisLabel:{show:!0,rotate:e.ytextAngle,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:e.isShowSplitLineY,lineStyle:{color:e.splitLineColorY}}};this.options.yAxis=t},setOptionsTop:function(){var e=this.optionsSetup,t=this.options.series;"bar"==t[0].type&&(e.verticalShow?t[0].label={show:e.isShow,position:"right",distance:e.distance,textStyle:{fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight}}:t[0].label={show:e.isShow,position:"top",distance:e.distance,fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight}),t[0].barWidth=e.maxWidth,t[0].barMinHeight=e.minHeight},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.tipFontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.right=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.fontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup,t=e.customColor;if(t){for(var a=[],i=0;i<t.length;i++)a.push(t[i].color);var n={normal:{color:function(e){return a[e.dataIndex]},barBorderRadius:e.radius}};for(var l in this.options.series)"bar"==this.options.series[l].type&&(this.options.series[l].itemStyle=n);this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsSetup,t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData):this.dynamicDataFn(t.dynamicData,t.refreshTime,e)},staticDataFn:function(e){var t=this.optionsSetup,a=this.options.series,i=[],o=[];for(var n in e)i[n]=e[n].axis,o[n]=e[n].data;t.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=i,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=i,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value"),"bar"==a[0].type&&(a[0].data=o);var l=[];l.push("销售量"),this.options.legend.data=l,this.setOptionsLegendName(l)},dynamicDataFn:function(e,t,a){var i=this;e&&(this.ispreview?(this.getEchartData(e,a),this.flagInter=setInterval(function(){i.getEchartData(e,a)},t)):this.getEchartData(e,a))},getEchartData:function(e,t){var a=this;this.queryEchartsData(e).then(function(e){a.renderingFn(t,e)})},renderingFn:function(e,t){e.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=t.xAxis,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=t.xAxis,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value");var a=this.options.series,i=[];for(var o in a)"bar"==a[o].type&&(a[o].name=t.series[o].name,a[o].data=t.series[o].data),i.push(t.series[o].name);this.options.legend.data=i,this.setOptionsLegendName(i)}}},l=(a("zW8F"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"0800a9a0",null);r.options.__file="widgetBarchart.vue";t.a=r.exports},nzh8:function(e,t,a){"use strict";var i=a("MBQa");a.n(i).a},o8B9:function(e,t,a){},palL:function(e,t,a){"use strict";var i=a("3bza");a.n(i).a},pizJ:function(e,t,a){"use strict";var i={name:"widgetRotatePieChart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{title:{},series:[{name:"最外环",type:"pie",silent:!0,radius:["98%","97%"],label:{normal:{show:!1}},labelLine:{normal:{show:!1}},itemStyle:{normal:{show:!1}},data:[0]},{name:"外四环",type:"pie",zlevel:2,silent:!0,radius:["90%","91%"],startAngle:50,hoverAnimation:!1,label:{normal:{show:!1}},labelLine:{normal:{show:!1}},data:[0]},{name:"里四环",type:"pie",zlevel:3,silent:!0,radius:["88%","87%"],label:{normal:{show:!1}},labelLine:{normal:{show:!1}},data:[0]},{name:"虚线环",type:"pie",zlevel:4,silent:!0,radius:["84%","83%"],label:{normal:{show:!1}},labelLine:{normal:{show:!1}},data:[0]},{name:"三分环",type:"pie",zlevel:5,silent:!0,radius:["80%","78%"],color:["#fc8d89","#46d3f3","rgba(203,203,203,.2)"],startAngle:50,avoidLabelOverlap:!1,hoverAnimation:!1,label:{normal:{show:!1}},data:[50,20,40]},{name:"外指标环",type:"gauge",splitNumber:30,min:0,max:100,radius:"73%",center:["50%","50%"],startAngle:90,endAngle:-269.9999,axisLabel:{show:!1},pointer:{show:0},detail:{show:0}},{name:"里指标环",type:"gauge",splitNumber:30,min:0,max:100,radius:"68%",center:["50%","50%"],startAngle:90,endAngle:-269.9999,axisLabel:{show:!1},pointer:{show:0},detail:{show:!1}},{name:"环外环",type:"pie",zlevel:20,silent:!0,radius:["60%","59%"],hoverAnimation:!1,label:{normal:{show:!1}},labelLine:{normal:{show:!1}}},{name:"中间环形图",type:"pie",radius:["40%","55%"],avoidLabelOverlap:!1,hoverAnimation:!1,itemStyle:{normal:{color:"#80ADD2",borderColor:"#3D4268"}},label:{normal:{show:!1,position:"center"},emphasis:{show:!0,textStyle:{fontSize:"30",fontWeight:"bold"}}},labelLine:{normal:{show:!1}},data:[25,25,25,25,25,25]}]},optionsStyle:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsLastRing(),this.setOptionsEightRing(),this.setOptionsDottedRing(),this.setOptionsThreeRing(),this.setOptionsOutRing(),this.setOptionsInRing(),this.setOptionsRingOnRing(),this.setOptionsPie()},setColor:function(e){return""==e&&(e="rgba(0,0,0,0)"),e},setOptionsLastRing:function(){var e=this.optionsSetup,t=this.options.series[0];e.isLastRingShow?t.data=[0]:t.data="";var a={color:{colorStops:[{offset:0,color:this.setColor(e.lastRing0Color)},{offset:1,color:this.setColor(e.lastRing100Color)}]}};t.itemStyle.normal=a},setRingPie2:function(){for(var e=this.optionsSetup,t=[],a=0;a<8;a++)a%2==0?t.push({name:(a+1).toString(),value:25,itemStyle:{normal:{color:this.setColor(e.eightColor),borderWidth:0,borderColor:"rgba(0,0,0,0)"}}}):t.push({name:(a+1).toString(),value:20,itemStyle:{normal:{color:"rgba(0,0,0,0)"}}});return t},setOptionsEightRing:function(){var e=this.options.series;e[1].data=this.setRingPie2(),e[2].data=this.setRingPie2()},setRingPie3:function(){for(var e=this.optionsSetup,t=[],a=0;a<2*e.dottedNum;a++)a%2==0?t.push({name:(a+1).toString(),value:25,itemStyle:{normal:{color:this.setColor(e.dottedColor),borderWidth:0,borderColor:"rgba(0,0,0,0)"}}}):t.push({name:(a+1).toString(),value:20,itemStyle:{normal:{color:"rgba(0,0,0,0)"}}});return t},setOptionsDottedRing:function(){this.options.series[3].data=this.setRingPie3()},setOptionsThreeRing:function(){var e=this.optionsSetup;this.options.series[4].color=[this.setColor(e.three1Color),this.setColor(e.three2Color),this.setColor(e.three3Color)]},setOptionsOutRing:function(){var e=this.optionsSetup,t=this.options.series,a={show:e.isOutRingShow,lineStyle:{width:e.outRingWidth,shadowBlur:0,color:[[1,this.setColor(e.outRingColor)]]}},i={show:e.isOutTickShow,lineStyle:{color:this.setColor(e.outTickColor),width:e.outTickWidth},length:e.outTickLength,splitNumber:e.outTickWidth};t[5].splitNumber=e.outSplitNum;var o={show:e.isOutSplitShow,length:e.outSplitLength,lineStyle:{color:this.setColor(e.outSplitColor),width:e.outSplitWidth}};t[5].axisLine=a,t[5].axisTick=i,t[5].splitLine=o},setOptionsInRing:function(){var e=this.optionsSetup,t=this.options.series,a={show:e.isInRingShow,lineStyle:{width:e.inRingWidth,shadowBlur:0,color:[[1,this.setColor(e.inRingColor)]]}},i={show:e.isInTickShow,lineStyle:{color:this.setColor(e.inTickColor),width:e.inTickWidth},length:e.inTickLength,splitNumber:e.inTickNum};t[6].splitNumber=e.inSplitNum;var o={show:e.isInSplitShow,length:e.inSplitLength,lineStyle:{color:this.setColor(e.inSplitColor),width:e.inSplitWidth}};t[6].axisLine=a,t[6].axisTick=i,t[6].splitLine=o},setOptionsRingOnRing:function(){var e=this.optionsSetup,t=this.options.series[7];e.isRingOnRingShow?t.data=[0]:t.data="";var a={normal:{color:this.setColor(e.ringOnRingColor)}};t.itemStyle=a},setOptionsPie:function(){var e=this.optionsSetup,t=this.options.series[8],a=e.pieWidth+"%";t.radius=[a,"55%"];var i=e.pieBlocks;t.data="six"==i?[25,25,25,25,25,25]:"five"==i?[30,30,30,30,30]:[40,40,40,40];var o={normal:{color:this.setColor(e.pieColor),borderColor:this.setColor(e.pieBorderColor)}};t.itemStyle=o}}},o=(a("Urap"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"3ae5e8e1",null);n.options.__file="widgetDecoratePieChart.vue";t.a=n.exports},qjan:function(e,t,a){"use strict";var i=a("UNVJ");a.n(i).a},"qpv/":function(e,t,a){"use strict";var i=a("Rk6N");a.n(i).a},rMB3:function(e,t,a){"use strict";var i=a("6ZY3"),o=a.n(i),n={name:"WidgetLinechart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{grid:{},color:[],title:{text:"",textStyle:{color:"#fff"}},tooltip:{trigger:"item",formatter:"{a} <br/>{b} : {c}%"},legend:{textStyle:{color:"#fff"}},xAxis:{type:"category",data:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],axisLabel:{show:!0,textStyle:{color:"#fff"}}},yAxis:{type:"value",axisLabel:{show:!0,textStyle:{color:"#fff"}}},series:[{data:[],type:"line"}]},optionsStyle:{},optionsData:{},optionsCollapse:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.collapse,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},created:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.collapse,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsTop(),this.setOptionsTooltip(),this.setOptionsData(),this.setOptionsMargin(),this.setOptionsLegend(),this.setOptionsColor()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.nameColorX,fontSize:e.nameFontSizeX},nameRotate:e.textAngle,inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngle,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t={type:"value",scale:e.scale,splitNumber:e.splitNumber,show:e.isShowY,name:e.textNameY,nameTextStyle:{color:e.nameColorY,fontSize:e.namefontSizeY},inverse:e.reversalY,axisLabel:{show:!0,rotate:e.ytextAngle,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:e.isShowSplitLineY,lineStyle:{color:e.splitLineColorY}}};this.options.yAxis=t},setOptionsTop:function(){var e=this.optionsSetup,t=this.options.series;for(var a in t)"line"==t[a].type&&(t[a].showSymbol=e.markPoint,t[a].symbolSize=e.pointSize,t[a].smooth=e.smoothCurve,e.area?t[a].areaStyle={opacity:e.areaThickness/100}:t[a].areaStyle={opacity:0},t[a].lineStyle={width:e.lineWidth},t[a].label={show:e.isShow,position:"top",distance:10,fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight});this.options.series=t},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.fontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.right=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.fontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup.customColor;if(e){for(var t=[],a=0;a<e.length;a++)t.push(e[a].color);this.options.color=t,this.options=o()({},this.options)}},setOptionsData:function(){var e=this.optionsData;"staticData"==e.dataType?this.staticDataFn(e.staticData):this.dynamicDataFn(e.dynamicData,e.refreshTime)},staticDataFn:function(e){var t=this.options.series,a=[],i=[];for(var o in e)a[o]=e[o].axis,i[o]=e[o].data;for(var n in this.options.xAxis.data=a,t)"line"==t[n].type&&(t[n].data=i);var l=[];l.push("销售量"),this.options.legend.data=l,this.setOptionsLegendName(l)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.renderingFn(e)})},renderingFn:function(e){this.options.xAxis.data=e.xAxis;var t=this.options.series,a=[];for(var i in t)"line"==t[i].type&&(t[i].data=e.series[i].data),a.push(e.series[i].name);this.options.legend.data=a,this.setOptionsLegendName(a)}}},l=(a("2A5X"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"6d3f1fb2",null);r.options.__file="widgetLinechart.vue";t.a=r.exports},rP6j:function(e,t,a){},rVG9:function(e,t,a){"use strict";var i=a("ctb9");a.n(i).a},tC89:function(e,t,a){},tHtw:function(e,t,a){"use strict";var i=a("TSjp"),o=a.n(i),n={name:"WidgetGradientColorBarchart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{title:{text:"",x:"center",y:"4%",textStyle:{color:"#fff",fontSize:"22"},subtextStyle:{color:"#90979c",fontSize:"16"}},tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},grid:{top:"15%",right:"3%",left:"5%",bottom:"12%"},legend:{textStyle:{color:"#fff"}},xAxis:{type:"category",data:[],axisLine:{lineStyle:{color:"rgba(255,255,255,0.12)"}},axisLabel:{margin:10,color:"#e2e9ff",textStyle:{fontSize:14}}},yAxis:{name:"",axisLabel:{formatter:"{value}",color:"#e2e9ff"},axisLine:{show:!1,lineStyle:{color:"rgba(255,255,255,0)"}},splitLine:{lineStyle:{color:"rgba(255,255,255,0.12)"}}},series:[{type:"bar",data:[5e3,2600,1300,1300,1250,1500],barWidth:"20px",itemStyle:{normal:{color:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:"rgba(0,244,255,1)"},{offset:1,color:"rgba(0,77,167,1)"}],!1),shadowColor:"rgba(0,160,221,1)",shadowBlur:4}},label:{normal:{show:!0,position:["-10","-30"],distance:1,formatter:"{a|{c}}",rich:{a:{fontSize:15,color:"#fff",align:"center"}}}}}]},optionsStyle:{},optionsData:{},optionsSetup:{}}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsY(),this.setOptionsTop(),this.setOptionsLegend(),this.setOptionsMargin(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},t.subtext=e.subText,t.subtextStyle={color:e.subTextColor,fontWeight:e.subTextFontWeight,fontSize:e.subTextFontSize},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={type:"category",show:e.hideX,name:e.xName,nameTextStyle:{color:e.nameColorX,fontSize:e.nameFontSizeX},nameRotate:e.textAngle,inverse:e.reversalX,axisLabel:{show:!0,interval:e.textInterval,rotate:e.textAngle,textStyle:{color:e.Xcolor,fontSize:e.fontSizeX}},axisLine:{show:!0,lineStyle:{color:e.lineColorX}},splitLine:{show:e.isShowSplitLineX,lineStyle:{color:e.splitLineColorX}}};this.options.xAxis=t},setOptionsY:function(){var e=this.optionsSetup,t={type:"value",scale:e.scale,splitNumber:e.splitNumber,show:e.isShowY,name:e.textNameY,nameTextStyle:{color:e.nameColorY,fontSize:e.namefontSizeY},inverse:e.reversalY,axisLabel:{show:!0,rotate:e.ytextAngle,textStyle:{color:e.colorY,fontSize:e.fontSizeY}},axisLine:{show:!0,lineStyle:{color:e.lineColorY}},splitLine:{show:e.isShowSplitLineY,lineStyle:{color:e.splitLineColorY}}};this.options.yAxis=t},setOptionsTop:function(){var e=this.optionsSetup,t=this.options.series;"bar"==t[0].type&&(e.verticalShow?t[0].label={show:e.isShow,position:"right",distance:e.distance,fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight}:t[0].label={show:e.isShow,position:"top",distance:e.distance,fontSize:e.fontSize,color:e.subTextColor,fontWeight:e.fontWeight},t[0].barWidth=e.maxWidth)},setOptionsTooltip:function(){var e=this.optionsSetup,t={trigger:"item",show:!0,textStyle:{color:e.lineColor,fontSize:e.fontSize}};this.options.tooltip=t},setOptionsMargin:function(){var e=this.optionsSetup,t={left:e.marginLeft,right:e.marginRight,bottom:e.marginBottom,top:e.marginTop,containLabel:!0};this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.right=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.fontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){var e=this.optionsSetup,t=this.options.series[0].itemStyle,a={};a=e.verticalShow?{color:new o.a.graphic.LinearGradient(1,0,0,0,[{offset:0,color:e.bar0color},{offset:1,color:e.bar100color}]),barBorderRadius:e.radius,shadowColor:e.shadowColor,shadowBlur:e.shadowBlur}:{color:new o.a.graphic.LinearGradient(0,0,0,1,[{offset:0,color:e.bar0color},{offset:1,color:e.bar100color}]),barBorderRadius:e.radius,shadowColor:e.shadowColor,shadowBlur:e.shadowBlur},t.normal=a},setOptionsData:function(){var e=this.optionsSetup,t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData):this.dynamicDataFn(t.dynamicData,t.refreshTime,e)},staticDataFn:function(e){var t=this.optionsSetup,a=this.options.series,i=[],o=[];for(var n in e)i[n]=e[n].axis,o[n]=e[n].data;t.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=i,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=i,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value"),"bar"==a[0].type&&(a[0].data=o);var l=[];l.push("销售量"),this.options.legend.data=l,this.setOptionsLegendName(l)},dynamicDataFn:function(e,t,a){var i=this;e&&(this.ispreview?(this.getEchartData(e,a),this.flagInter=setInterval(function(){i.getEchartData(e,a)},t)):this.getEchartData(e,a))},getEchartData:function(e,t){var a=this;this.queryEchartsData(e).then(function(e){a.renderingFn(t,e)})},renderingFn:function(e,t){e.verticalShow?(this.options.xAxis.data=[],this.options.yAxis.data=t.xAxis,this.options.xAxis.type="value",this.options.yAxis.type="category"):(this.options.xAxis.data=t.xAxis,this.options.yAxis.data=[],this.options.xAxis.type="category",this.options.yAxis.type="value");var a=this.options.series,i=[];for(var o in a)"bar"==a[o].type&&(a[o].name=t.series[o].name,a[o].data=t.series[o].data),i.push(t.series[o].name);this.options.legend.data=i,this.setOptionsLegendName(i)}}},l=(a("87dA"),a("ZrdR")),r=Object(l.a)(n,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"2dcc2436",null);r.options.__file="widgetGradientColorBarchart.vue";t.a=r.exports},tJTO:function(e,t,a){},u8RD:function(e,t,a){},uLc6:function(e,t,a){"use strict";var i=a("OUmF");a.n(i).a},vL5o:function(e,t,a){},xFol:function(e,t,a){"use strict";var i=a("BPcn");a.n(i).a},xSk4:function(e,t,a){"use strict";var i={name:"WidgetVideo",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px",videoAdress:this.transStyle.videoAdress}}},watch:{value:{handler:function(e){this.options=e},deep:!0}},mounted:function(){this.options=this.value},methods:{}},o=(a("3LG+"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement;return(this._self._c||e)("video",{style:this.styleColor,attrs:{src:this.styleColor.videoAdress,controls:"controls"}},[this._v("\n 您的浏览器不支持 video 标签。\n")])},[],!1,null,"2d27c298",null);n.options.__file="widgetVideo.vue";t.a=n.exports},xVz9:function(e,t,a){"use strict";var i={name:"WidgetBarCompareChart",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{axisPointer:{link:{xAxisIndex:"all"}},title:{x:"center",textStyle:{color:"#ffffff"}},tooltip:{show:!0,trigger:"axis",axisPointer:{type:"line",lineStyle:{color:"#ffffff",type:"dashed"}}},grid:[{left:30,right:20,top:"60px",containLabel:!0,bottom:"50%"},{left:30,containLabel:!0,right:20,top:"51%"}],legend:{textStyle:{color:"#fff",textAlign:"center"}},xAxis:[{gridIndex:0,show:!0,type:"category",boundaryGap:!0,axisLine:{show:!0,lineStyle:{color:"#ffffff"}},axisTick:{show:!0},axisLabel:{show:!0,textStyle:{interval:0,color:"#ffffff",fontSize:14}},data:[]},{gridIndex:1,show:!0,type:"category",position:"top",boundaryGap:!0,axisLine:{show:!0,lineStyle:{color:"#ffffff"}},axisTick:{show:!0},axisLabel:{show:!1,interval:0},data:[]}],yAxis:[{gridIndex:0,show:!0,scale:!0,axisLabel:{show:!0,textStyle:{color:"#ffffff",fontSize:14}},axisLine:{show:!0,lineStyle:{color:"#ffffff"}},splitLine:{show:!1,lineStyle:{color:"#ffffff"}},axisPointer:{snap:!0}},{gridIndex:1,scale:!1,inverse:!0,axisLabel:{show:!0,textStyle:{color:"#ffffff",fontSize:14}},axisLine:{show:!0,lineStyle:{color:"#ffffff"}},splitLine:{show:!1,lineStyle:{color:"#ffffff"}},axisPointer:{snap:!0}}],series:[{name:"",type:"line",xAxisIndex:0,yAxisIndex:0,showSymbol:!0,symbol:"circle",symbolSize:5,smooth:!0,itemStyle:{color:"#36c5e7"},lineStyle:{color:"#36c5e7",width:2},label:{position:"top",distance:10,show:!0,color:"#36c5e7",fontSize:14},data:[]},{name:"",type:"line",xAxisIndex:1,yAxisIndex:1,showSymbol:!0,symbol:"circle",symbolSize:5,smooth:!0,itemStyle:{color:"#e68b55"},lineStyle:{color:"#e68b55",width:2},label:{position:"bottom",distance:10,show:!0,color:"#e68b55",fontSize:16},data:[]}]},optionsStyle:{},optionsData:{},optionsSetup:{},flagInter:null}},computed:{styleObj:function(){return{position:this.ispreview?"absolute":"static",width:this.optionsStyle.width+"px",height:this.optionsStyle.height+"px",left:this.optionsStyle.left+"px",top:this.optionsStyle.top+"px",background:this.optionsSetup.background}}},watch:{value:{handler:function(e){this.optionsStyle=e.position,this.optionsData=e.data,this.optionsCollapse=e.setup,this.optionsSetup=e.setup,this.editorOptions()},deep:!0}},mounted:function(){this.optionsStyle=this.value.position,this.optionsData=this.value.data,this.optionsCollapse=this.value.setup,this.optionsSetup=this.value.setup,this.editorOptions()},methods:{editorOptions:function(){this.setOptionsTitle(),this.setOptionsX(),this.setOptionsYTop(),this.setOptionsYBottom(),this.setOptionsTop(),this.setOptionsTooltip(),this.setOptionsGrid(),this.setOptionsLegend(),this.setOptionsColor(),this.setOptionsData()},setOptionsTitle:function(){var e=this.optionsSetup,t={};t.text=e.titleText,t.show=e.isNoTitle,t.left=e.textAlign,t.textStyle={color:e.textColor,fontSize:e.textFontSize,fontWeight:e.textFontWeight},this.options.title=t},setOptionsX:function(){var e=this.optionsSetup,t={gridIndex:0,show:e.isShowX,name:e.xName,nameTextStyle:{color:e.nameColorX,fontSize:e.nameFontSizeX},type:"category",boundaryGap:e.boundaryX,axisLine:{show:e.lineX,lineStyle:{color:e.lineColorX}},axisTick:{show:e.tickLineX},axisLabel:{show:!0,interval:e.splitNumberX,textStyle:{color:e.colorX,fontSize:e.fontSizeX}}},a={gridIndex:1,show:e.isShowX,type:"category",position:"top",boundaryGap:e.boundaryX,axisLine:{show:e.lineX,lineStyle:{color:e.lineColorX}},axisTick:{show:e.tickLineX},axisLabel:{show:!1,interval:e.splitNumberX}};this.options.xAxis[0]=t,this.options.xAxis[1]=a},setOptionsYTop:function(){var e=this.optionsSetup,t={gridIndex:0,splitNumber:e.splitNumberYTop,show:e.isShowYTop,scale:e.scaleYTop,name:e.textNameYTop,nameTextStyle:{color:e.nameColorYTop,fontSize:e.namefontSizeYTop},axisLabel:{show:!0,textStyle:{color:e.colorYTop,fontSize:e.fontSizeYTop}},axisTick:{show:e.tickLineYTop},axisLine:{show:e.lineYTop,lineStyle:{color:e.lineColorYTop}},splitLine:{show:e.splitLineYTop,lineStyle:{width:e.splitLinefontSizeYTop,color:e.splitLineColorYTop}},axisPointer:{snap:!0}};this.options.yAxis[0]=t},setOptionsYBottom:function(){var e=this.optionsSetup,t={gridIndex:1,splitNumber:e.splitNumberYBottom,show:e.isShowYBottom,scale:e.scaleYBottom,name:e.textNameYBottom,nameTextStyle:{color:e.nameColorYBottom,fontSize:e.namefontSizeYBottom},inverse:!0,axisLabel:{show:!0,textStyle:{color:e.colorYBottom,fontSize:e.fontSizeYBottom}},axisTick:{show:e.tickLineYBottom},axisLine:{show:e.lineYBottom,lineStyle:{color:e.lineColorYBottom}},splitLine:{show:e.splitLineYBottom,lineStyle:{width:e.splitLinefontSizeYBottom,color:e.splitLineColorYBottom}},axisPointer:{snap:!0}};this.options.yAxis[1]=t},setOptionsTop:function(){var e=this.optionsSetup,t=this.options.series;for(var a in t)t[a].showSymbol=e.markPoint,t[a].symbolSize=e.pointSize,t[a].smooth=e.smoothCurve,e.area?t[a].areaStyle={opacity:e.areaThickness/100}:t[a].areaStyle={opacity:0};"line"==t[0].type&&(t[0].label={position:"top",distance:10,show:e.isShow,color:e.subTextColor,fontSize:e.fontSize,fontWeight:e.fontWeight},t[1].label={position:"bottom",distance:10,show:e.isShow,color:e.subTextColor,fontSize:e.fontSize,fontWeight:e.fontWeight})},setOptionsTooltip:function(){var e=this.optionsSetup,t={};t="line"==e.tipType?{show:e.tipShow,trigger:"axis",axisPointer:{type:e.tipType,lineStyle:{color:e.tipColor,type:"dashed"}}}:{show:e.tipShow,trigger:"axis",axisPointer:{type:e.tipType,lineStyle:{color:e.tipColor,type:"dashed"},crossStyle:{color:e.tipColor}}},this.options.tooltip=t},setOptionsGrid:function(){var e=this.optionsSetup,t=[{left:e.marginLeft,right:e.marginRight,top:e.marginTop,containLabel:!0,bottom:"50%"},{left:e.marginLeft,right:e.marginRight,containLabel:!0,top:"51%",bottom:e.marginBottom}];this.options.grid=t},setOptionsLegend:function(){var e=this.optionsSetup,t=this.options.legend;t.show=e.isShowLegend,t.left=e.lateralPosition,t.top=e.longitudinalPosition,t.bottom=e.longitudinalPosition,t.orient=e.layoutFront,t.textStyle={color:e.lengedColor,fontSize:e.lengedFontSize},t.itemWidth=e.lengedWidth},setOptionsLegendName:function(e){var t=this.optionsSetup,a=this.options.series,i=t.legendName;if(null==i||""==i){for(var o=0;o<e.length;o++)a[o].name=e[o];this.options.legend.data=e}else{for(var n=i.split("|"),l=0;l<n.length;l++)a[l].name=n[l];this.options.legend.data=n}},setOptionsColor:function(){for(var e=this.optionsSetup,t=e.customColor,a=this.options.series,i=[],o=0;o<t.length;o++)i.push(t[o].color);if(t)for(var n in a){var l={color:i[n]},r={color:i[n],width:e.lineWidth};this.options.series[n].itemStyle=l,this.options.series[n].lineStyle=r}},setOptionsData:function(){var e=this.optionsSetup,t=this.optionsData;"staticData"==t.dataType?this.staticDataFn(t.staticData,e):this.dynamicDataFn(t.dynamicData,t.refreshTime,e)},setUnique:function(e){var t=[];return e.forEach(function(e){return t.includes(e)?"":t.push(e)}),t},staticDataFn:function(e){var t=[],a=[],i=[],o=[];for(var n in e)t[n]=e[n].axis,a[n]=e[n].name;for(var l in t=this.setUnique(t),a=this.setUnique(a)){var r=new Array(a.length).fill(0);for(var s in t)for(var u in e)e[u].name==a[l]&&e[u].axis==t[s]&&(r[s]=e[u].data);i.push({name:a[l],data:r}),o.push(a[l])}this.options.series[0].name=i[0].name,this.options.series[0].data=i[0].data,this.options.series[1].name=i[1].name,this.options.series[1].data=i[1].data,this.options.xAxis[0].data=t,this.options.xAxis[1].data=t,this.options.legend.data=o,this.setOptionsLegendName(o)},dynamicDataFn:function(e,t,a){var i=this;e&&(this.ispreview?(this.getEchartData(e,a),this.flagInter=setInterval(function(){i.getEchartData(e,a)},t)):this.getEchartData(e,a))},getEchartData:function(e,t){var a=this;this.queryEchartsData(e).then(function(e){a.renderingFn(t,e)})},renderingFn:function(e,t){var a=[];this.options.xAxis[0].data=t.xAxis,this.options.xAxis[1].data=t.xAxis,"line"==t.series[0].type&&(this.options.series[0].name=t.series[0].name,this.options.series[0].data=t.series[0].data,this.options.series[1].name=t.series[1].name,this.options.series[1].data=t.series[1].data,a.push(t.series[0].name),a.push(t.series[1].name)),this.options.legend.data=a,this.setOptionsLegendName(a)}}},o=(a("jOJk"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{style:this.styleObj},[t("v-chart",{attrs:{options:this.options,autoresize:""}})],1)},[],!1,null,"72490f16",null);n.options.__file="widgetLineCompareChart.vue";t.a=n.exports},xkAC:function(e,t,a){},zW8F:function(e,t,a){"use strict";var i=a("4LS8");a.n(i).a},zgVM:function(e,t,a){"use strict";var i={name:"WidgetText",components:{},props:{value:Object,ispreview:Boolean},data:function(){return{options:{},optionsData:{}}},computed:{transStyle:function(){return this.objToOne(this.options)},styleColor:function(){return{position:this.ispreview?"absolute":"static",color:this.transStyle.color,"font-weight":this.transStyle.fontWeight,text:this.transStyle.text,"font-size":this.transStyle.fontSize+"px","letter-spacing":this.transStyle.letterSpacing+"em",background:this.transStyle.background,"text-align":this.transStyle.textAlign,width:this.transStyle.width+"px",height:this.transStyle.height+"px",left:this.transStyle.left+"px",top:this.transStyle.top+"px",right:this.transStyle.right+"px"}}},watch:{value:{handler:function(e){this.options=e,this.optionsData=e.data,this.setOptionsData()},deep:!0}},mounted:function(){this.options=this.value,this.optionsData=this.value.data,this.setOptionsData()},methods:{setOptionsData:function(){var e=this.optionsData;"dynamicData"==e.dataType&&this.dynamicDataFn(e.dynamicData,e.refreshTime)},dynamicDataFn:function(e,t){var a=this;e&&(this.ispreview?(this.getEchartData(e),this.flagInter=setInterval(function(){a.getEchartData(e)},t)):this.getEchartData(e))},getEchartData:function(e){var t=this;this.queryEchartsData(e).then(function(e){t.styleColor.text=e[0].value,t.$forceUpdate()})}}},o=(a("fYW0"),a("ZrdR")),n=Object(o.a)(i,function(){var e=this.$createElement;return(this._self._c||e)("div",{staticClass:"text",style:this.styleColor},[this._v(this._s(this.styleColor.text))])},[],!1,null,"ed2d4c6e",null);n.options.__file="widgetText.vue";t.a=n.exports}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-63e1.c6d7daa7.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-63e1.c6d7daa7.js index 088d38985..e9c4a7f26 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-63e1.c6d7daa7.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-63e1.c6d7daa7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-63e1"],{JB92:function(e,t,n){"use strict";n.r(t);var i,r=function(){function e(e){var t=this;this._defaults=e,this._worker=null,this._idleCheckInterval=window.setInterval(function(){return t._checkIfIdle()},3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(function(){return t._stopWorker()})}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()},e.prototype._checkIfIdle=function(){this._worker&&(Date.now()-this._lastUsedTime>12e4&&this._stopWorker())},e.prototype._getClient=function(){return this._lastUsedTime=Date.now(),this._client||(this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/css/cssWorker",label:this._defaults.languageId,createData:{languageSettings:this._defaults.diagnosticsOptions,languageId:this._defaults.languageId}}),this._client=this._worker.getProxy()),this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];return this._getClient().then(function(t){e=t}).then(function(e){return t._worker.withSyncedResources(n)}).then(function(t){return e})},e}();!function(e){e[e.Ident=0]="Ident",e[e.AtKeyword=1]="AtKeyword",e[e.String=2]="String",e[e.BadString=3]="BadString",e[e.UnquotedString=4]="UnquotedString",e[e.Hash=5]="Hash",e[e.Num=6]="Num",e[e.Percentage=7]="Percentage",e[e.Dimension=8]="Dimension",e[e.UnicodeRange=9]="UnicodeRange",e[e.CDO=10]="CDO",e[e.CDC=11]="CDC",e[e.Colon=12]="Colon",e[e.SemiColon=13]="SemiColon",e[e.CurlyL=14]="CurlyL",e[e.CurlyR=15]="CurlyR",e[e.ParenthesisL=16]="ParenthesisL",e[e.ParenthesisR=17]="ParenthesisR",e[e.BracketL=18]="BracketL",e[e.BracketR=19]="BracketR",e[e.Whitespace=20]="Whitespace",e[e.Includes=21]="Includes",e[e.Dashmatch=22]="Dashmatch",e[e.SubstringOperator=23]="SubstringOperator",e[e.PrefixOperator=24]="PrefixOperator",e[e.SuffixOperator=25]="SuffixOperator",e[e.Delim=26]="Delim",e[e.EMS=27]="EMS",e[e.EXS=28]="EXS",e[e.Length=29]="Length",e[e.Angle=30]="Angle",e[e.Time=31]="Time",e[e.Freq=32]="Freq",e[e.Exclamation=33]="Exclamation",e[e.Resolution=34]="Resolution",e[e.Comma=35]="Comma",e[e.Charset=36]="Charset",e[e.EscapedJavaScript=37]="EscapedJavaScript",e[e.BadEscapedJavaScript=38]="BadEscapedJavaScript",e[e.Comment=39]="Comment",e[e.SingleLineComment=40]="SingleLineComment",e[e.EOF=41]="EOF",e[e.CustomToken=42]="CustomToken"}(i||(i={}));var o=function(){function e(e){this.source=e,this.len=e.length,this.position=0}return e.prototype.substring=function(e,t){return void 0===t&&(t=this.position),this.source.substring(e,t)},e.prototype.eos=function(){return this.len<=this.position},e.prototype.pos=function(){return this.position},e.prototype.goBackTo=function(e){this.position=e},e.prototype.goBack=function(e){this.position-=e},e.prototype.advance=function(e){this.position+=e},e.prototype.nextChar=function(){return this.source.charCodeAt(this.position++)||0},e.prototype.peekChar=function(e){return void 0===e&&(e=0),this.source.charCodeAt(this.position+e)||0},e.prototype.lookbackChar=function(e){return void 0===e&&(e=0),this.source.charCodeAt(this.position-e)||0},e.prototype.advanceIfChar=function(e){return e===this.source.charCodeAt(this.position)&&(this.position++,!0)},e.prototype.advanceIfChars=function(e){if(this.position+e.length>this.source.length)return!1;for(var t=0;t<e.length;t++)if(this.source.charCodeAt(this.position+t)!==e[t])return!1;return this.advance(t),!0},e.prototype.advanceWhileChar=function(e){for(var t=this.position;this.position<this.len&&e(this.source.charCodeAt(this.position));)this.position++;return this.position-t},e}(),s="a".charCodeAt(0),a="f".charCodeAt(0),l="z".charCodeAt(0),c="A".charCodeAt(0),d="F".charCodeAt(0),p="Z".charCodeAt(0),h="0".charCodeAt(0),m="9".charCodeAt(0),u="~".charCodeAt(0),f="^".charCodeAt(0),g="=".charCodeAt(0),b="|".charCodeAt(0),y="-".charCodeAt(0),v="_".charCodeAt(0),w="%".charCodeAt(0),x="*".charCodeAt(0),S="(".charCodeAt(0),k=")".charCodeAt(0),C="<".charCodeAt(0),F=">".charCodeAt(0),z="@".charCodeAt(0),D="#".charCodeAt(0),T="$".charCodeAt(0),R="\\".charCodeAt(0),E="/".charCodeAt(0),I="\n".charCodeAt(0),M="\r".charCodeAt(0),N="\f".charCodeAt(0),P='"'.charCodeAt(0),_="'".charCodeAt(0),A=" ".charCodeAt(0),W="\t".charCodeAt(0),O=";".charCodeAt(0),L=":".charCodeAt(0),U="{".charCodeAt(0),j="}".charCodeAt(0),V="[".charCodeAt(0),B="]".charCodeAt(0),$=",".charCodeAt(0),q=".".charCodeAt(0),K="!".charCodeAt(0),G={};G[O]=i.SemiColon,G[L]=i.Colon,G[U]=i.CurlyL,G[j]=i.CurlyR,G[B]=i.BracketR,G[V]=i.BracketL,G[S]=i.ParenthesisL,G[k]=i.ParenthesisR,G[$]=i.Comma;var J={};J.em=i.EMS,J.ex=i.EXS,J.px=i.Length,J.cm=i.Length,J.mm=i.Length,J.in=i.Length,J.pt=i.Length,J.pc=i.Length,J.deg=i.Angle,J.rad=i.Angle,J.grad=i.Angle,J.ms=i.Time,J.s=i.Time,J.hz=i.Freq,J.khz=i.Freq,J["%"]=i.Percentage,J.fr=i.Percentage,J.dpi=i.Resolution,J.dpcm=i.Resolution;var H,Y,X=function(){function e(){this.stream=new o(""),this.ignoreComment=!0,this.ignoreWhitespace=!0,this.inURL=!1}return e.prototype.setSource=function(e){this.stream=new o(e)},e.prototype.finishToken=function(e,t,n){return{offset:e,len:this.stream.pos()-e,type:t,text:n||this.stream.substring(e)}},e.prototype.substring=function(e,t){return this.stream.substring(e,e+t)},e.prototype.pos=function(){return this.stream.pos()},e.prototype.goBackTo=function(e){this.stream.goBackTo(e)},e.prototype.scanUnquotedString=function(){var e=this.stream.pos(),t=[];return this._unquotedString(t)?this.finishToken(e,i.UnquotedString,t.join("")):null},e.prototype.scan=function(){var e=this.trivia();if(null!==e)return e;var t=this.stream.pos();return this.stream.eos()?this.finishToken(t,i.EOF):this.scanNext(t)},e.prototype.scanNext=function(e){if(this.stream.advanceIfChars([C,K,y,y]))return this.finishToken(e,i.CDO);if(this.stream.advanceIfChars([y,y,F]))return this.finishToken(e,i.CDC);var t=[];if(this.ident(t))return this.finishToken(e,i.Ident,t.join(""));if(this.stream.advanceIfChar(z)){if(t=["@"],this._name(t)){var n=t.join("");return"@charset"===n?this.finishToken(e,i.Charset,n):this.finishToken(e,i.AtKeyword,n)}return this.finishToken(e,i.Delim)}if(this.stream.advanceIfChar(D))return t=["#"],this._name(t)?this.finishToken(e,i.Hash,t.join("")):this.finishToken(e,i.Delim);if(this.stream.advanceIfChar(K))return this.finishToken(e,i.Exclamation);if(this._number()){var r=this.stream.pos();if(t=[this.stream.substring(e,r)],this.stream.advanceIfChar(w))return this.finishToken(e,i.Percentage);if(this.ident(t)){var o=this.stream.substring(r).toLowerCase(),s=J[o];return void 0!==s?this.finishToken(e,s,t.join("")):this.finishToken(e,i.Dimension,t.join(""))}return this.finishToken(e,i.Num)}t=[];var a=this._string(t);return null!==a?this.finishToken(e,a,t.join("")):void 0!==(a=G[this.stream.peekChar()])?(this.stream.advance(1),this.finishToken(e,a)):this.stream.peekChar(0)===u&&this.stream.peekChar(1)===g?(this.stream.advance(2),this.finishToken(e,i.Includes)):this.stream.peekChar(0)===b&&this.stream.peekChar(1)===g?(this.stream.advance(2),this.finishToken(e,i.Dashmatch)):this.stream.peekChar(0)===x&&this.stream.peekChar(1)===g?(this.stream.advance(2),this.finishToken(e,i.SubstringOperator)):this.stream.peekChar(0)===f&&this.stream.peekChar(1)===g?(this.stream.advance(2),this.finishToken(e,i.PrefixOperator)):this.stream.peekChar(0)===T&&this.stream.peekChar(1)===g?(this.stream.advance(2),this.finishToken(e,i.SuffixOperator)):(this.stream.nextChar(),this.finishToken(e,i.Delim))},e.prototype._matchWordAnyCase=function(e){var t=0;return this.stream.advanceWhileChar(function(n){var i=e[t]===n||e[t+1]===n;return i&&(t+=2),i}),t===e.length||(this.stream.goBack(t/2),!1)},e.prototype.trivia=function(){for(;;){var e=this.stream.pos();if(this._whitespace()){if(!this.ignoreWhitespace)return this.finishToken(e,i.Whitespace)}else{if(!this.comment())return null;if(!this.ignoreComment)return this.finishToken(e,i.Comment)}}},e.prototype.comment=function(){if(this.stream.advanceIfChars([E,x])){var e=!1,t=!1;return this.stream.advanceWhileChar(function(n){return t&&n===E?(e=!0,!1):(t=n===x,!0)}),e&&this.stream.advance(1),!0}return!1},e.prototype._number=function(){var e,t=0;return this.stream.peekChar()===q&&(t=1),(e=this.stream.peekChar(t))>=h&&e<=m&&(this.stream.advance(t+1),this.stream.advanceWhileChar(function(e){return e>=h&&e<=m||0===t&&e===q}),!0)},e.prototype._newline=function(e){var t=this.stream.peekChar();switch(t){case M:case N:case I:return this.stream.advance(1),e.push(String.fromCharCode(t)),t===M&&this.stream.advanceIfChar(I)&&e.push("\n"),!0}return!1},e.prototype._escape=function(e,t){var n=this.stream.peekChar();if(n===R){this.stream.advance(1),n=this.stream.peekChar();for(var i=0;i<6&&(n>=h&&n<=m||n>=s&&n<=a||n>=c&&n<=d);)this.stream.advance(1),n=this.stream.peekChar(),i++;if(i>0){try{var r=parseInt(this.stream.substring(this.stream.pos()-i),16);r&&e.push(String.fromCharCode(r))}catch(e){}return n===A||n===W?this.stream.advance(1):this._newline([]),!0}if(n!==M&&n!==N&&n!==I)return this.stream.advance(1),e.push(String.fromCharCode(n)),!0;if(t)return this._newline(e)}return!1},e.prototype._stringChar=function(e,t){var n=this.stream.peekChar();return 0!==n&&n!==e&&n!==R&&n!==M&&n!==N&&n!==I&&(this.stream.advance(1),t.push(String.fromCharCode(n)),!0)},e.prototype._string=function(e){if(this.stream.peekChar()===_||this.stream.peekChar()===P){var t=this.stream.nextChar();for(e.push(String.fromCharCode(t));this._stringChar(t,e)||this._escape(e,!0););return this.stream.peekChar()===t?(this.stream.nextChar(),e.push(String.fromCharCode(t)),i.String):i.BadString}return null},e.prototype._unquotedChar=function(e){var t=this.stream.peekChar();return 0!==t&&t!==R&&t!==_&&t!==P&&t!==S&&t!==k&&t!==A&&t!==W&&t!==I&&t!==N&&t!==M&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e.prototype._unquotedString=function(e){for(var t=!1;this._unquotedChar(e)||this._escape(e);)t=!0;return t},e.prototype._whitespace=function(){return this.stream.advanceWhileChar(function(e){return e===A||e===W||e===I||e===N||e===M})>0},e.prototype._name=function(e){for(var t=!1;this._identChar(e)||this._escape(e);)t=!0;return t},e.prototype.ident=function(e){var t=this.stream.pos();if(this._minus(e)&&this._minus(e)){if(this._identFirstChar(e)||this._escape(e)){for(;this._identChar(e)||this._escape(e););return!0}}else if(this._identFirstChar(e)||this._escape(e)){for(;this._identChar(e)||this._escape(e););return!0}return this.stream.goBackTo(t),!1},e.prototype._identFirstChar=function(e){var t=this.stream.peekChar();return(t===v||t>=s&&t<=l||t>=c&&t<=p||t>=128&&t<=65535)&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e.prototype._minus=function(e){var t=this.stream.peekChar();return t===y&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e.prototype._identChar=function(e){var t=this.stream.peekChar();return(t===v||t===y||t>=s&&t<=l||t>=c&&t<=p||t>=h&&t<=m||t>=128&&t<=65535)&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e}(),Z=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function Q(e,t){var n=null;return!e||t<e.offset||t>e.end?null:(e.accept(function(e){return-1===e.offset&&-1===e.length||e.offset<=t&&e.end>=t&&(n?e.length<=n.length&&(n=e):n=e,!0)}),n)}function ee(e,t){for(var n=Q(e,t),i=[];n;)i.unshift(n),n=n.parent;return i}!function(e){e[e.Undefined=0]="Undefined",e[e.Identifier=1]="Identifier",e[e.Stylesheet=2]="Stylesheet",e[e.Ruleset=3]="Ruleset",e[e.Selector=4]="Selector",e[e.SimpleSelector=5]="SimpleSelector",e[e.SelectorInterpolation=6]="SelectorInterpolation",e[e.SelectorCombinator=7]="SelectorCombinator",e[e.SelectorCombinatorParent=8]="SelectorCombinatorParent",e[e.SelectorCombinatorSibling=9]="SelectorCombinatorSibling",e[e.SelectorCombinatorAllSiblings=10]="SelectorCombinatorAllSiblings",e[e.SelectorCombinatorShadowPiercingDescendant=11]="SelectorCombinatorShadowPiercingDescendant",e[e.Page=12]="Page",e[e.PageBoxMarginBox=13]="PageBoxMarginBox",e[e.ClassSelector=14]="ClassSelector",e[e.IdentifierSelector=15]="IdentifierSelector",e[e.ElementNameSelector=16]="ElementNameSelector",e[e.PseudoSelector=17]="PseudoSelector",e[e.AttributeSelector=18]="AttributeSelector",e[e.Declaration=19]="Declaration",e[e.Declarations=20]="Declarations",e[e.Property=21]="Property",e[e.Expression=22]="Expression",e[e.BinaryExpression=23]="BinaryExpression",e[e.Term=24]="Term",e[e.Operator=25]="Operator",e[e.Value=26]="Value",e[e.StringLiteral=27]="StringLiteral",e[e.URILiteral=28]="URILiteral",e[e.EscapedValue=29]="EscapedValue",e[e.Function=30]="Function",e[e.NumericValue=31]="NumericValue",e[e.HexColorValue=32]="HexColorValue",e[e.MixinDeclaration=33]="MixinDeclaration",e[e.MixinReference=34]="MixinReference",e[e.VariableName=35]="VariableName",e[e.VariableDeclaration=36]="VariableDeclaration",e[e.Prio=37]="Prio",e[e.Interpolation=38]="Interpolation",e[e.NestedProperties=39]="NestedProperties",e[e.ExtendsReference=40]="ExtendsReference",e[e.SelectorPlaceholder=41]="SelectorPlaceholder",e[e.Debug=42]="Debug",e[e.If=43]="If",e[e.Else=44]="Else",e[e.For=45]="For",e[e.Each=46]="Each",e[e.While=47]="While",e[e.MixinContent=48]="MixinContent",e[e.Media=49]="Media",e[e.Keyframe=50]="Keyframe",e[e.FontFace=51]="FontFace",e[e.Import=52]="Import",e[e.Namespace=53]="Namespace",e[e.Invocation=54]="Invocation",e[e.FunctionDeclaration=55]="FunctionDeclaration",e[e.ReturnStatement=56]="ReturnStatement",e[e.MediaQuery=57]="MediaQuery",e[e.FunctionParameter=58]="FunctionParameter",e[e.FunctionArgument=59]="FunctionArgument",e[e.KeyframeSelector=60]="KeyframeSelector",e[e.ViewPort=61]="ViewPort",e[e.Document=62]="Document",e[e.AtApplyRule=63]="AtApplyRule",e[e.CustomPropertyDeclaration=64]="CustomPropertyDeclaration",e[e.CustomPropertySet=65]="CustomPropertySet",e[e.ListEntry=66]="ListEntry",e[e.Supports=67]="Supports",e[e.SupportsCondition=68]="SupportsCondition",e[e.NamespacePrefix=69]="NamespacePrefix",e[e.GridLine=70]="GridLine",e[e.Plugin=71]="Plugin",e[e.UnknownAtRule=72]="UnknownAtRule",e[e.Use=73]="Use",e[e.ModuleConfiguration=74]="ModuleConfiguration",e[e.Forward=75]="Forward",e[e.ForwardVisibility=76]="ForwardVisibility",e[e.Module=77]="Module"}(H||(H={})),function(e){e[e.Mixin=0]="Mixin",e[e.Rule=1]="Rule",e[e.Variable=2]="Variable",e[e.Function=3]="Function",e[e.Keyframe=4]="Keyframe",e[e.Unknown=5]="Unknown",e[e.Module=6]="Module",e[e.Forward=7]="Forward",e[e.ForwardVisibility=8]="ForwardVisibility"}(Y||(Y={}));var te,ne=function(){function e(e,t,n){void 0===e&&(e=-1),void 0===t&&(t=-1),this.parent=null,this.offset=e,this.length=t,n&&(this.nodeType=n)}return Object.defineProperty(e.prototype,"end",{get:function(){return this.offset+this.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"type",{get:function(){return this.nodeType||H.Undefined},set:function(e){this.nodeType=e},enumerable:!0,configurable:!0}),e.prototype.getTextProvider=function(){for(var e=this;e&&!e.textProvider;)e=e.parent;return e?e.textProvider:function(){return"unknown"}},e.prototype.getText=function(){return this.getTextProvider()(this.offset,this.length)},e.prototype.matches=function(e){return this.length===e.length&&this.getTextProvider()(this.offset,this.length)===e},e.prototype.startsWith=function(e){return this.length>=e.length&&this.getTextProvider()(this.offset,e.length)===e},e.prototype.endsWith=function(e){return this.length>=e.length&&this.getTextProvider()(this.end-e.length,e.length)===e},e.prototype.accept=function(e){if(e(this)&&this.children)for(var t=0,n=this.children;t<n.length;t++){n[t].accept(e)}},e.prototype.acceptVisitor=function(e){this.accept(e.visitNode.bind(e))},e.prototype.adoptChild=function(e,t){if(void 0===t&&(t=-1),e.parent&&e.parent.children){var n=e.parent.children.indexOf(e);n>=0&&e.parent.children.splice(n,1)}e.parent=this;var i=this.children;return i||(i=this.children=[]),-1!==t?i.splice(t,0,e):i.push(e),e},e.prototype.attachTo=function(e,t){return void 0===t&&(t=-1),e&&e.adoptChild(this,t),this},e.prototype.collectIssues=function(e){this.issues&&e.push.apply(e,this.issues)},e.prototype.addIssue=function(e){this.issues||(this.issues=[]),this.issues.push(e)},e.prototype.hasIssue=function(e){return Array.isArray(this.issues)&&this.issues.some(function(t){return t.getRule()===e})},e.prototype.isErroneous=function(e){return void 0===e&&(e=!1),!!(this.issues&&this.issues.length>0)||e&&Array.isArray(this.children)&&this.children.some(function(e){return e.isErroneous(!0)})},e.prototype.setNode=function(e,t,n){return void 0===n&&(n=-1),!!t&&(t.attachTo(this,n),this[e]=t,!0)},e.prototype.addChild=function(e){return!!e&&(this.children||(this.children=[]),e.attachTo(this),this.updateOffsetAndLength(e),!0)},e.prototype.updateOffsetAndLength=function(e){(e.offset<this.offset||-1===this.offset)&&(this.offset=e.offset);var t=e.end;(t>this.end||-1===this.length)&&(this.length=t-this.offset)},e.prototype.hasChildren=function(){return!!this.children&&this.children.length>0},e.prototype.getChildren=function(){return this.children?this.children.slice(0):[]},e.prototype.getChild=function(e){return this.children&&e<this.children.length?this.children[e]:null},e.prototype.addChildren=function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t];this.addChild(i)}},e.prototype.findFirstChildBeforeOffset=function(e){if(this.children)for(var t=null,n=this.children.length-1;n>=0;n--)if((t=this.children[n]).offset<=e)return t;return null},e.prototype.findChildAtOffset=function(e,t){var n=this.findFirstChildBeforeOffset(e);return n&&n.end>=e?t&&n.findChildAtOffset(e,!0)||n:null},e.prototype.encloses=function(e){return this.offset<=e.offset&&this.offset+this.length>=e.offset+e.length},e.prototype.getParent=function(){for(var e=this.parent;e instanceof ie;)e=e.parent;return e},e.prototype.findParent=function(e){for(var t=this;t&&t.type!==e;)t=t.parent;return t},e.prototype.findAParent=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=this;n&&!e.some(function(e){return n.type===e});)n=n.parent;return n},e.prototype.setData=function(e,t){this.options||(this.options={}),this.options[e]=t},e.prototype.getData=function(e){return this.options&&this.options.hasOwnProperty(e)?this.options[e]:null},e}(),ie=function(e){function t(t,n){void 0===n&&(n=-1);var i=e.call(this,-1,-1)||this;return i.attachTo(t,n),i.offset=-1,i.length=-1,i}return Z(t,e),t}(ne),re=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.isCustomProperty=!1,i}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Identifier},enumerable:!0,configurable:!0}),t.prototype.containsInterpolation=function(){return this.hasChildren()},t}(ne),oe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Stylesheet},enumerable:!0,configurable:!0}),t}(ne),se=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Declarations},enumerable:!0,configurable:!0}),t}(ne),ae=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),t.prototype.getDeclarations=function(){return this.declarations},t.prototype.setDeclarations=function(e){return this.setNode("declarations",e)},t}(ne),le=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Ruleset},enumerable:!0,configurable:!0}),t.prototype.getSelectors=function(){return this.selectors||(this.selectors=new ie(this)),this.selectors},t.prototype.isNested=function(){return!!this.parent&&null!==this.parent.findParent(H.Declarations)},t}(ae),ce=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Selector},enumerable:!0,configurable:!0}),t}(ne),de=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.SimpleSelector},enumerable:!0,configurable:!0}),t}(ne),pe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.AtApplyRule},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t}(ne),he=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),t}(ne),me=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.CustomPropertyDeclaration},enumerable:!0,configurable:!0}),t.prototype.setProperty=function(e){return this.setNode("property",e)},t.prototype.getProperty=function(){return this.property},t.prototype.setValue=function(e){return this.setNode("value",e)},t.prototype.getValue=function(){return this.value},t.prototype.setPropertySet=function(e){return this.setNode("propertySet",e)},t.prototype.getPropertySet=function(){return this.propertySet},t}(he),ue=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.CustomPropertySet},enumerable:!0,configurable:!0}),t}(ae),fe=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.property=null,i}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Declaration},enumerable:!0,configurable:!0}),t.prototype.setProperty=function(e){return this.setNode("property",e)},t.prototype.getProperty=function(){return this.property},t.prototype.getFullPropertyName=function(){var e=this.property?this.property.getName():"unknown";if(this.parent instanceof se&&this.parent.getParent()instanceof Te){var n=this.parent.getParent().getParent();if(n instanceof t)return n.getFullPropertyName()+e}return e},t.prototype.getNonPrefixedPropertyName=function(){var e=this.getFullPropertyName();if(e&&"-"===e.charAt(0)){var t=e.indexOf("-",1);if(-1!==t)return e.substring(t+1)}return e},t.prototype.setValue=function(e){return this.setNode("value",e)},t.prototype.getValue=function(){return this.value},t.prototype.setNestedProperties=function(e){return this.setNode("nestedProperties",e)},t.prototype.getNestedProperties=function(){return this.nestedProperties},t}(he),ge=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Property},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.getText()},t.prototype.isCustomProperty=function(){return!!this.identifier&&this.identifier.isCustomProperty},t}(ne),be=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Function},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t}(function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Invocation},enumerable:!0,configurable:!0}),t.prototype.getArguments=function(){return this.arguments||(this.arguments=new ie(this)),this.arguments},t}(ne)),ye=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.FunctionParameter},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.setDefaultValue=function(e){return this.setNode("defaultValue",e,0)},t.prototype.getDefaultValue=function(){return this.defaultValue},t}(ne),ve=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.FunctionArgument},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.setValue=function(e){return this.setNode("value",e,0)},t.prototype.getValue=function(){return this.value},t}(ne),we=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.If},enumerable:!0,configurable:!0}),t.prototype.setExpression=function(e){return this.setNode("expression",e,0)},t.prototype.setElseClause=function(e){return this.setNode("elseClause",e)},t}(ae),xe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.For},enumerable:!0,configurable:!0}),t.prototype.setVariable=function(e){return this.setNode("variable",e,0)},t}(ae),Se=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Each},enumerable:!0,configurable:!0}),t.prototype.getVariables=function(){return this.variables||(this.variables=new ie(this)),this.variables},t}(ae),ke=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.While},enumerable:!0,configurable:!0}),t}(ae),Ce=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Else},enumerable:!0,configurable:!0}),t}(ae),Fe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.FunctionDeclaration},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.getParameters=function(){return this.parameters||(this.parameters=new ie(this)),this.parameters},t}(ae),ze=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.ViewPort},enumerable:!0,configurable:!0}),t}(ae),De=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.FontFace},enumerable:!0,configurable:!0}),t}(ae),Te=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.NestedProperties},enumerable:!0,configurable:!0}),t}(ae),Re=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Keyframe},enumerable:!0,configurable:!0}),t.prototype.setKeyword=function(e){return this.setNode("keyword",e,0)},t.prototype.getKeyword=function(){return this.keyword},t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t}(ae),Ee=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.KeyframeSelector},enumerable:!0,configurable:!0}),t}(ae),Ie=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Import},enumerable:!0,configurable:!0}),t.prototype.setMedialist=function(e){return!!e&&(e.attachTo(this),!0)},t}(ne),Me=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Use},enumerable:!0,configurable:!0}),t.prototype.getParameters=function(){return this.parameters||(this.parameters=new ie(this)),this.parameters},t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t}(ne),Ne=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.ModuleConfiguration},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.setValue=function(e){return this.setNode("value",e,0)},t.prototype.getValue=function(){return this.value},t}(ne),Pe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Forward},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t}(ne),_e=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.ForwardVisibility},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t}(ne),Ae=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Namespace},enumerable:!0,configurable:!0}),t}(ne),We=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Media},enumerable:!0,configurable:!0}),t}(ae),Oe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Supports},enumerable:!0,configurable:!0}),t}(ae),Le=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Document},enumerable:!0,configurable:!0}),t}(ae),Ue=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),t.prototype.getMediums=function(){return this.mediums||(this.mediums=new ie(this)),this.mediums},t}(ne),je=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.MediaQuery},enumerable:!0,configurable:!0}),t}(ne),Ve=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.SupportsCondition},enumerable:!0,configurable:!0}),t}(ne),Be=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Page},enumerable:!0,configurable:!0}),t}(ae),$e=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.PageBoxMarginBox},enumerable:!0,configurable:!0}),t}(ae),qe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Expression},enumerable:!0,configurable:!0}),t}(ne),Ke=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.BinaryExpression},enumerable:!0,configurable:!0}),t.prototype.setLeft=function(e){return this.setNode("left",e)},t.prototype.getLeft=function(){return this.left},t.prototype.setRight=function(e){return this.setNode("right",e)},t.prototype.getRight=function(){return this.right},t.prototype.setOperator=function(e){return this.setNode("operator",e)},t.prototype.getOperator=function(){return this.operator},t}(ne),Ge=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Term},enumerable:!0,configurable:!0}),t.prototype.setOperator=function(e){return this.setNode("operator",e)},t.prototype.getOperator=function(){return this.operator},t.prototype.setExpression=function(e){return this.setNode("expression",e)},t.prototype.getExpression=function(){return this.expression},t}(ne),Je=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.AttributeSelector},enumerable:!0,configurable:!0}),t.prototype.setNamespacePrefix=function(e){return this.setNode("namespacePrefix",e)},t.prototype.getNamespacePrefix=function(){return this.namespacePrefix},t.prototype.setIdentifier=function(e){return this.setNode("identifier",e)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.setOperator=function(e){return this.setNode("operator",e)},t.prototype.getOperator=function(){return this.operator},t.prototype.setValue=function(e){return this.setNode("value",e)},t.prototype.getValue=function(){return this.value},t}(ne),He=(function(e){function t(t,n){return e.call(this,t,n)||this}Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Operator},enumerable:!0,configurable:!0})}(ne),function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.HexColorValue},enumerable:!0,configurable:!0}),t}(ne)),Ye=".".charCodeAt(0),Xe="0".charCodeAt(0),Ze="9".charCodeAt(0),Qe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.NumericValue},enumerable:!0,configurable:!0}),t.prototype.getValue=function(){for(var e,t=this.getText(),n=0,i=0,r=t.length;i<r&&(e=t.charCodeAt(i),Xe<=e&&e<=Ze||e===Ye);i++)n+=1;return{value:t.substring(0,n),unit:n<t.length?t.substring(n):void 0}},t}(ne),et=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.variable=null,i.value=null,i.needsSemicolon=!0,i}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.VariableDeclaration},enumerable:!0,configurable:!0}),t.prototype.setVariable=function(e){return!!e&&(e.attachTo(this),this.variable=e,!0)},t.prototype.getVariable=function(){return this.variable},t.prototype.getName=function(){return this.variable?this.variable.getName():""},t.prototype.setValue=function(e){return!!e&&(e.attachTo(this),this.value=e,!0)},t.prototype.getValue=function(){return this.value},t}(he),tt=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Interpolation},enumerable:!0,configurable:!0}),t}(ne),nt=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.VariableName},enumerable:!0,configurable:!0}),t.prototype.getName=function(){return this.getText()},t}(ne),it=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.ExtendsReference},enumerable:!0,configurable:!0}),t.prototype.getSelectors=function(){return this.selectors||(this.selectors=new ie(this)),this.selectors},t}(ne),rt=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.MixinReference},enumerable:!0,configurable:!0}),t.prototype.getNamespaces=function(){return this.namespaces||(this.namespaces=new ie(this)),this.namespaces},t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.getArguments=function(){return this.arguments||(this.arguments=new ie(this)),this.arguments},t.prototype.setContent=function(e){return this.setNode("content",e)},t.prototype.getContent=function(){return this.content},t}(ne),ot=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.MixinDeclaration},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.getParameters=function(){return this.parameters||(this.parameters=new ie(this)),this.parameters},t.prototype.setGuard=function(e){return e&&(e.attachTo(this),this.guard=e),!1},t}(ae),st=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.UnknownAtRule},enumerable:!0,configurable:!0}),t.prototype.setAtRuleName=function(e){this.atRuleName=e},t.prototype.getAtRuleName=function(){return this.atRuleName},t}(ae),at=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.ListEntry},enumerable:!0,configurable:!0}),t.prototype.setKey=function(e){return this.setNode("key",e,0)},t.prototype.setValue=function(e){return this.setNode("value",e,1)},t}(ne),lt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),t.prototype.getConditions=function(){return this.conditions||(this.conditions=new ie(this)),this.conditions},t}(ne),ct=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),t.prototype.setVariable=function(e){return this.setNode("variable",e)},t}(ne),dt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Module},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t}(ne);!function(e){e[e.Ignore=1]="Ignore",e[e.Warning=2]="Warning",e[e.Error=4]="Error"}(te||(te={}));var pt=function(){function e(e,t,n,i,r,o){void 0===r&&(r=e.offset),void 0===o&&(o=e.length),this.node=e,this.rule=t,this.level=n,this.message=i||t.message,this.offset=r,this.length=o}return e.prototype.getRule=function(){return this.rule},e.prototype.getLevel=function(){return this.level},e.prototype.getOffset=function(){return this.offset},e.prototype.getLength=function(){return this.length},e.prototype.getNode=function(){return this.node},e.prototype.getMessage=function(){return this.message},e}(),ht=function(){function e(){this.entries=[]}return e.entries=function(t){var n=new e;return t.acceptVisitor(n),n.entries},e.prototype.visitNode=function(e){return e.isErroneous()&&e.collectIssues(this.entries),!0},e}();function mt(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return function(e,t){return 0===t.length?e:e.replace(/\{(\d+)\}/g,function(e,n){var i=n[0];return void 0!==t[i]?t[i]:e})}(t,n)}function ut(e){return mt}var ft=ut(),gt=function(){return function(e,t){this.id=e,this.message=t}}(),bt={NumberExpected:new gt("css-numberexpected",ft("expected.number","number expected")),ConditionExpected:new gt("css-conditionexpected",ft("expected.condt","condition expected")),RuleOrSelectorExpected:new gt("css-ruleorselectorexpected",ft("expected.ruleorselector","at-rule or selector expected")),DotExpected:new gt("css-dotexpected",ft("expected.dot","dot expected")),ColonExpected:new gt("css-colonexpected",ft("expected.colon","colon expected")),SemiColonExpected:new gt("css-semicolonexpected",ft("expected.semicolon","semi-colon expected")),TermExpected:new gt("css-termexpected",ft("expected.term","term expected")),ExpressionExpected:new gt("css-expressionexpected",ft("expected.expression","expression expected")),OperatorExpected:new gt("css-operatorexpected",ft("expected.operator","operator expected")),IdentifierExpected:new gt("css-identifierexpected",ft("expected.ident","identifier expected")),PercentageExpected:new gt("css-percentageexpected",ft("expected.percentage","percentage expected")),URIOrStringExpected:new gt("css-uriorstringexpected",ft("expected.uriorstring","uri or string expected")),URIExpected:new gt("css-uriexpected",ft("expected.uri","URI expected")),VariableNameExpected:new gt("css-varnameexpected",ft("expected.varname","variable name expected")),VariableValueExpected:new gt("css-varvalueexpected",ft("expected.varvalue","variable value expected")),PropertyValueExpected:new gt("css-propertyvalueexpected",ft("expected.propvalue","property value expected")),LeftCurlyExpected:new gt("css-lcurlyexpected",ft("expected.lcurly","{ expected")),RightCurlyExpected:new gt("css-rcurlyexpected",ft("expected.rcurly","} expected")),LeftSquareBracketExpected:new gt("css-rbracketexpected",ft("expected.lsquare","[ expected")),RightSquareBracketExpected:new gt("css-lbracketexpected",ft("expected.rsquare","] expected")),LeftParenthesisExpected:new gt("css-lparentexpected",ft("expected.lparen","( expected")),RightParenthesisExpected:new gt("css-rparentexpected",ft("expected.rparent",") expected")),CommaExpected:new gt("css-commaexpected",ft("expected.comma","comma expected")),PageDirectiveOrDeclarationExpected:new gt("css-pagedirordeclexpected",ft("expected.pagedirordecl","page directive or declaraton expected")),UnknownAtRule:new gt("css-unknownatrule",ft("unknown.atrule","at-rule unknown")),UnknownKeyword:new gt("css-unknownkeyword",ft("unknown.keyword","unknown keyword")),SelectorExpected:new gt("css-selectorexpected",ft("expected.selector","selector expected")),StringLiteralExpected:new gt("css-stringliteralexpected",ft("expected.stringliteral","string literal expected")),WhitespaceExpected:new gt("css-whitespaceexpected",ft("expected.whitespace","whitespace expected")),MediaQueryExpected:new gt("css-mediaqueryexpected",ft("expected.mediaquery","media query expected")),IdentifierOrWildcardExpected:new gt("css-idorwildcardexpected",ft("expected.idorwildcard","identifier or wildcard expected")),WildcardExpected:new gt("css-wildcardexpected",ft("expected.wildcard","wildcard expected")),IdentifierOrVariableExpected:new gt("css-idorvarexpected",ft("expected.idorvar","identifier or variable expected"))};function yt(e){return Object.keys(e).map(function(t){return e[t]})}function vt(e){return void 0!==e}var wt=function(){function e(e){this.dataProviders=e,this._propertySet={},this._atDirectiveSet={},this._pseudoClassSet={},this._pseudoElementSet={},this._properties=[],this._atDirectives=[],this._pseudoClasses=[],this._pseudoElements=[],this.collectData()}return e.prototype.addDataProviders=function(e){this.dataProviders=this.dataProviders.concat(e),this.collectData()},e.prototype.collectData=function(){var e=this;this.dataProviders.forEach(function(t){t.provideProperties().forEach(function(t){e._propertySet[t.name]||(e._propertySet[t.name]=t)}),t.provideAtDirectives().forEach(function(t){e._atDirectiveSet[t.name]||(e._atDirectiveSet[t.name]=t)}),t.providePseudoClasses().forEach(function(t){e._pseudoClassSet[t.name]||(e._pseudoClassSet[t.name]=t)}),t.providePseudoElements().forEach(function(t){e._pseudoElementSet[t.name]||(e._pseudoElementSet[t.name]=t)})}),this._properties=yt(this._propertySet),this._atDirectives=yt(this._atDirectiveSet),this._pseudoClasses=yt(this._pseudoClassSet),this._pseudoElements=yt(this._pseudoElementSet)},e.prototype.getProperty=function(e){return this._propertySet[e]},e.prototype.getAtDirective=function(e){return this._atDirectiveSet[e]},e.prototype.getPseudoClass=function(e){return this._pseudoClassSet[e]},e.prototype.getPseudoElement=function(e){return this._pseudoElementSet[e]},e.prototype.getProperties=function(){return this._properties},e.prototype.getAtDirectives=function(){return this._atDirectives},e.prototype.getPseudoClasses=function(){return this._pseudoClasses},e.prototype.getPseudoElements=function(){return this._pseudoElements},e.prototype.isKnownProperty=function(e){return e.toLowerCase()in this._propertySet},e.prototype.isStandardProperty=function(e){return this.isKnownProperty(e)&&(!this._propertySet[e.toLowerCase()].status||"standard"===this._propertySet[e.toLowerCase()].status)},e}(),xt=function(){function e(e){this._properties=[],this._atDirectives=[],this._pseudoClasses=[],this._pseudoElements=[],this.addData(e)}return e.prototype.provideProperties=function(){return this._properties},e.prototype.provideAtDirectives=function(){return this._atDirectives},e.prototype.providePseudoClasses=function(){return this._pseudoClasses},e.prototype.providePseudoElements=function(){return this._pseudoElements},e.prototype.addData=function(e){e.properties&&(this._properties=this._properties.concat(e.properties)),e.atDirectives&&(this._atDirectives=this._atDirectives.concat(e.atDirectives)),e.pseudoClasses&&(this._pseudoClasses=this._pseudoClasses.concat(e.pseudoClasses)),e.pseudoElements&&(this._pseudoElements=this._pseudoElements.concat(e.pseudoElements))},e}(),St={E:"Edge",FF:"Firefox",S:"Safari",C:"Chrome",IE:"IE",O:"Opera"};function kt(e){switch(e){case"experimental":return"⚠️ Property is experimental. Be cautious when using it.️\n\n";case"nonstandard":return"🚨️ Property is nonstandard. Avoid using it.\n\n";case"obsolete":return"🚨️️️ Property is obsolete. Avoid using it.\n\n";default:return""}}function Ct(e,t){return t?{kind:"markdown",value:function(e){if(!e.description||""===e.description)return"";var t="";e.status&&(t+=kt(e.status));"string"==typeof e.description?t+=e.description:t=e.description.value;var n=Ft(e.browsers);n&&(t+="\n\n("+n+")");"syntax"in e&&(t+="\n\nSyntax: "+e.syntax);e.references&&e.references.length>0&&(t+="\n\n",t+=e.references.map(function(e){return"["+e.name+"]("+e.url+")"}).join(" | "));return t}(e)}:{kind:"plaintext",value:function(e){if(!e.description||""===e.description)return"";if("string"!=typeof e.description)return e.description.value;var t="";e.status&&(t+=kt(e.status));t+=e.description;var n=Ft(e.browsers);n&&(t+="\n("+n+")");"syntax"in e&&(t+="\n\nSyntax: "+e.syntax);e.references&&e.references.length>0&&(t+="\n\n",t+=e.references.map(function(e){return e.name+": "+e.url}).join(" | "));return t}(e)}}function Ft(e){return void 0===e&&(e=[]),0===e.length?null:e.map(function(e){var t="",n=e.match(/([A-Z]+)(\d+)?/),i=n[1],r=n[2];return i in St&&(t+=St[i]),r&&(t+=" "+r),t}).join(", ")}var zt=ut(),Dt=[{func:"rgb($red, $green, $blue)",desc:zt("css.builtin.rgb","Creates a Color from red, green, and blue values.")},{func:"rgba($red, $green, $blue, $alpha)",desc:zt("css.builtin.rgba","Creates a Color from red, green, blue, and alpha values.")},{func:"hsl($hue, $saturation, $lightness)",desc:zt("css.builtin.hsl","Creates a Color from hue, saturation, and lightness values.")},{func:"hsla($hue, $saturation, $lightness, $alpha)",desc:zt("css.builtin.hsla","Creates a Color from hue, saturation, lightness, and alpha values.")}],Tt={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgrey:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",grey:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rebeccapurple:"#663399",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},Rt={currentColor:"The value of the 'color' property. The computed value of the 'currentColor' keyword is the computed value of the 'color' property. If the 'currentColor' keyword is set on the 'color' property itself, it is treated as 'color:inherit' at parse time.",transparent:"Fully transparent. This keyword can be considered a shorthand for rgba(0,0,0,0) which is its computed value."};function Et(e,t){var n=e.getText().match(/^([-+]?[0-9]*\.?[0-9]+)(%?)$/);if(n){n[2]&&(t=100);var i=parseFloat(n[1])/t;if(i>=0&&i<=1)return i}throw new Error}function It(e){var t=e.getName();return!!t&&/^(rgb|rgba|hsl|hsla)$/gi.test(t)}var Mt=48,Nt=57,Pt=65,_t=97,At=102;function Wt(e){return e<Mt?0:e<=Nt?e-Mt:(e<_t&&(e+=_t-Pt),e>=_t&&e<=At?e-_t+10:0)}function Ot(e){if("#"!==e[0])return null;switch(e.length){case 4:return{red:17*Wt(e.charCodeAt(1))/255,green:17*Wt(e.charCodeAt(2))/255,blue:17*Wt(e.charCodeAt(3))/255,alpha:1};case 5:return{red:17*Wt(e.charCodeAt(1))/255,green:17*Wt(e.charCodeAt(2))/255,blue:17*Wt(e.charCodeAt(3))/255,alpha:17*Wt(e.charCodeAt(4))/255};case 7:return{red:(16*Wt(e.charCodeAt(1))+Wt(e.charCodeAt(2)))/255,green:(16*Wt(e.charCodeAt(3))+Wt(e.charCodeAt(4)))/255,blue:(16*Wt(e.charCodeAt(5))+Wt(e.charCodeAt(6)))/255,alpha:1};case 9:return{red:(16*Wt(e.charCodeAt(1))+Wt(e.charCodeAt(2)))/255,green:(16*Wt(e.charCodeAt(3))+Wt(e.charCodeAt(4)))/255,blue:(16*Wt(e.charCodeAt(5))+Wt(e.charCodeAt(6)))/255,alpha:(16*Wt(e.charCodeAt(7))+Wt(e.charCodeAt(8)))/255}}return null}function Lt(e){if(e.type===H.HexColorValue)return Ot(e.getText());if(e.type===H.Function){var t=e,n=t.getName(),i=t.getArguments().getChildren();if(!n||i.length<3||i.length>4)return null;try{var r=4===i.length?Et(i[3],1):1;if("rgb"===n||"rgba"===n)return{red:Et(i[0],255),green:Et(i[1],255),blue:Et(i[2],255),alpha:r};if("hsl"===n||"hsla"===n)return function(e,t,n,i){if(void 0===i&&(i=1),e/=60,0===t)return{red:n,green:n,blue:n,alpha:i};var r=function(e,t,n){for(;n<0;)n+=6;for(;n>=6;)n-=6;return n<1?(t-e)*n+e:n<3?t:n<4?(t-e)*(4-n)+e:e},o=n<=.5?n*(t+1):n+t-n*t,s=2*n-o;return{red:r(s,o,e+2),green:r(s,o,e),blue:r(s,o,e-2),alpha:i}}(function(e){var t=e.getText();if(t.match(/^([-+]?[0-9]*\.?[0-9]+)(deg)?$/))return parseFloat(t)%360;throw new Error}(i[0]),Et(i[1],100),Et(i[2],100),r)}catch(e){return null}}else if(e.type===H.Identifier){if(e.parent&&e.parent.type!==H.Term)return null;var o=e.parent;if(o&&o.parent&&o.parent.type===H.BinaryExpression){var s=o.parent;if(s.parent&&s.parent.type===H.ListEntry&&s.parent.key===s)return null}var a=e.getText().toLowerCase();if("none"===a)return null;var l=Tt[a];if(l)return Ot(l)}return null}var Ut={bottom:"Computes to ‘100%’ for the vertical position if one or two values are given, otherwise specifies the bottom edge as the origin for the next offset.",center:"Computes to ‘50%’ (‘left 50%’) for the horizontal position if the horizontal position is not otherwise specified, or ‘50%’ (‘top 50%’) for the vertical position if it is.",left:"Computes to ‘0%’ for the horizontal position if one or two values are given, otherwise specifies the left edge as the origin for the next offset.",right:"Computes to ‘100%’ for the horizontal position if one or two values are given, otherwise specifies the right edge as the origin for the next offset.",top:"Computes to ‘0%’ for the vertical position if one or two values are given, otherwise specifies the top edge as the origin for the next offset."},jt={"no-repeat":"Placed once and not repeated in this direction.",repeat:"Repeated in this direction as often as needed to cover the background painting area.","repeat-x":"Computes to ‘repeat no-repeat’.","repeat-y":"Computes to ‘no-repeat repeat’.",round:"Repeated as often as will fit within the background positioning area. If it doesn’t fit a whole number of times, it is rescaled so that it does.",space:"Repeated as often as will fit within the background positioning area without being clipped and then the images are spaced out to fill the area."},Vt={dashed:"A series of square-ended dashes.",dotted:"A series of round dots.",double:"Two parallel solid lines with some space between them.",groove:"Looks as if it were carved in the canvas.",hidden:"Same as ‘none’, but has different behavior in the border conflict resolution rules for border-collapsed tables.",inset:"Looks as if the content on the inside of the border is sunken into the canvas.",none:"No border. Color and width are ignored.",outset:"Looks as if the content on the inside of the border is coming out of the canvas.",ridge:"Looks as if it were coming out of the canvas.",solid:"A single line segment."},Bt=["medium","thick","thin"],$t={"border-box":"The background is painted within (clipped to) the border box.","content-box":"The background is painted within (clipped to) the content box.","padding-box":"The background is painted within (clipped to) the padding box."},qt={"margin-box":"Uses the margin box as reference box.","fill-box":"Uses the object bounding box as reference box.","stroke-box":"Uses the stroke bounding box as reference box.","view-box":"Uses the nearest SVG viewport as reference box."},Kt={initial:"Represents the value specified as the property’s initial value.",inherit:"Represents the computed value of the property on the element’s parent.",unset:"Acts as either `inherit` or `initial`, depending on whether the property is inherited or not."},Gt={"url()":"Reference an image file by URL","image()":"Provide image fallbacks and annotations.","-webkit-image-set()":"Provide multiple resolutions. Remember to use unprefixed image-set() in addition.","image-set()":"Provide multiple resolutions of an image and const the UA decide which is most appropriate in a given situation.","-moz-element()":"Use an element in the document as an image. Remember to use unprefixed element() in addition.","element()":"Use an element in the document as an image.","cross-fade()":"Indicates the two images to be combined and how far along in the transition the combination is.","-webkit-gradient()":"Deprecated. Use modern linear-gradient() or radial-gradient() instead.","-webkit-linear-gradient()":"Linear gradient. Remember to use unprefixed version in addition.","-moz-linear-gradient()":"Linear gradient. Remember to use unprefixed version in addition.","-o-linear-gradient()":"Linear gradient. Remember to use unprefixed version in addition.","linear-gradient()":"A linear gradient is created by specifying a straight gradient line, and then several colors placed along that line.","-webkit-repeating-linear-gradient()":"Repeating Linear gradient. Remember to use unprefixed version in addition.","-moz-repeating-linear-gradient()":"Repeating Linear gradient. Remember to use unprefixed version in addition.","-o-repeating-linear-gradient()":"Repeating Linear gradient. Remember to use unprefixed version in addition.","repeating-linear-gradient()":"Same as linear-gradient, except the color-stops are repeated infinitely in both directions, with their positions shifted by multiples of the difference between the last specified color-stop’s position and the first specified color-stop’s position.","-webkit-radial-gradient()":"Radial gradient. Remember to use unprefixed version in addition.","-moz-radial-gradient()":"Radial gradient. Remember to use unprefixed version in addition.","radial-gradient()":"Colors emerge from a single point and smoothly spread outward in a circular or elliptical shape.","-webkit-repeating-radial-gradient()":"Repeating radial gradient. Remember to use unprefixed version in addition.","-moz-repeating-radial-gradient()":"Repeating radial gradient. Remember to use unprefixed version in addition.","repeating-radial-gradient()":"Same as radial-gradient, except the color-stops are repeated infinitely in both directions, with their positions shifted by multiples of the difference between the last specified color-stop’s position and the first specified color-stop’s position."},Jt={ease:"Equivalent to cubic-bezier(0.25, 0.1, 0.25, 1.0).","ease-in":"Equivalent to cubic-bezier(0.42, 0, 1.0, 1.0).","ease-in-out":"Equivalent to cubic-bezier(0.42, 0, 0.58, 1.0).","ease-out":"Equivalent to cubic-bezier(0, 0, 0.58, 1.0).",linear:"Equivalent to cubic-bezier(0.0, 0.0, 1.0, 1.0).","step-end":"Equivalent to steps(1, end).","step-start":"Equivalent to steps(1, start).","steps()":"The first parameter specifies the number of intervals in the function. The second parameter, which is optional, is either the value “start” or “end”.","cubic-bezier()":"Specifies a cubic-bezier curve. The four values specify points P1 and P2 of the curve as (x1, y1, x2, y2).","cubic-bezier(0.6, -0.28, 0.735, 0.045)":"Ease-in Back. Overshoots.","cubic-bezier(0.68, -0.55, 0.265, 1.55)":"Ease-in-out Back. Overshoots.","cubic-bezier(0.175, 0.885, 0.32, 1.275)":"Ease-out Back. Overshoots.","cubic-bezier(0.6, 0.04, 0.98, 0.335)":"Ease-in Circular. Based on half circle.","cubic-bezier(0.785, 0.135, 0.15, 0.86)":"Ease-in-out Circular. Based on half circle.","cubic-bezier(0.075, 0.82, 0.165, 1)":"Ease-out Circular. Based on half circle.","cubic-bezier(0.55, 0.055, 0.675, 0.19)":"Ease-in Cubic. Based on power of three.","cubic-bezier(0.645, 0.045, 0.355, 1)":"Ease-in-out Cubic. Based on power of three.","cubic-bezier(0.215, 0.610, 0.355, 1)":"Ease-out Cubic. Based on power of three.","cubic-bezier(0.95, 0.05, 0.795, 0.035)":"Ease-in Exponential. Based on two to the power ten.","cubic-bezier(1, 0, 0, 1)":"Ease-in-out Exponential. Based on two to the power ten.","cubic-bezier(0.19, 1, 0.22, 1)":"Ease-out Exponential. Based on two to the power ten.","cubic-bezier(0.47, 0, 0.745, 0.715)":"Ease-in Sine.","cubic-bezier(0.445, 0.05, 0.55, 0.95)":"Ease-in-out Sine.","cubic-bezier(0.39, 0.575, 0.565, 1)":"Ease-out Sine.","cubic-bezier(0.55, 0.085, 0.68, 0.53)":"Ease-in Quadratic. Based on power of two.","cubic-bezier(0.455, 0.03, 0.515, 0.955)":"Ease-in-out Quadratic. Based on power of two.","cubic-bezier(0.25, 0.46, 0.45, 0.94)":"Ease-out Quadratic. Based on power of two.","cubic-bezier(0.895, 0.03, 0.685, 0.22)":"Ease-in Quartic. Based on power of four.","cubic-bezier(0.77, 0, 0.175, 1)":"Ease-in-out Quartic. Based on power of four.","cubic-bezier(0.165, 0.84, 0.44, 1)":"Ease-out Quartic. Based on power of four.","cubic-bezier(0.755, 0.05, 0.855, 0.06)":"Ease-in Quintic. Based on power of five.","cubic-bezier(0.86, 0, 0.07, 1)":"Ease-in-out Quintic. Based on power of five.","cubic-bezier(0.23, 1, 0.320, 1)":"Ease-out Quintic. Based on power of five."},Ht={"circle()":"Defines a circle.","ellipse()":"Defines an ellipse.","inset()":"Defines an inset rectangle.","polygon()":"Defines a polygon."},Yt={length:["em","rem","ex","px","cm","mm","in","pt","pc","ch","vw","vh","vmin","vmax"],angle:["deg","rad","grad","turn"],time:["ms","s"],frequency:["Hz","kHz"],resolution:["dpi","dpcm","dppx"],percentage:["%","fr"]},Xt=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rb","rp","rt","rtc","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","const","video","wbr"],Zt=["circle","clipPath","cursor","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","foreignObject","g","hatch","hatchpath","image","line","linearGradient","marker","mask","mesh","meshpatch","meshrow","metadata","mpath","path","pattern","polygon","polyline","radialGradient","rect","set","solidcolor","stop","svg","switch","symbol","text","textPath","tspan","use","view"],Qt=["@bottom-center","@bottom-left","@bottom-left-corner","@bottom-right","@bottom-right-corner","@left-bottom","@left-middle","@left-top","@right-bottom","@right-middle","@right-top","@top-center","@top-left","@top-left-corner","@top-right","@top-right-corner"],en=new wt([new xt({version:1.1,properties:[{name:"width",values:[{name:"auto",description:"The width depends on the values of other properties."},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/width"}],description:"Specifies the width of the content area, padding area or border area (depending on 'box-sizing') of certain boxes.",restrictions:["length","percentage"]},{name:"height",values:[{name:"auto",description:"The height depends on the values of other properties."},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/height"}],description:"Specifies the height of the content area, padding area or border area (depending on 'box-sizing') of certain boxes.",restrictions:["length","percentage"]},{name:"display",values:[{name:"block",description:"The element generates a block-level box"},{name:"contents",description:"The element itself does not generate any boxes, but its children and pseudo-elements still generate boxes as normal."},{name:"flex",description:"The element generates a principal flex container box and establishes a flex formatting context."},{name:"flexbox",description:"The element lays out its contents using flow layout (block-and-inline layout). Standardized as 'flex'."},{name:"flow-root",description:"The element generates a block container box, and lays out its contents using flow layout."},{name:"grid",description:"The element generates a principal grid container box, and establishes a grid formatting context."},{name:"inline",description:"The element generates an inline-level box."},{name:"inline-block",description:"A block box, which itself is flowed as a single inline box, similar to a replaced element. The inside of an inline-block is formatted as a block box, and the box itself is formatted as an inline box."},{name:"inline-flex",description:"Inline-level flex container."},{name:"inline-flexbox",description:"Inline-level flex container. Standardized as 'inline-flex'"},{name:"inline-table",description:"Inline-level table wrapper box containing table box."},{name:"list-item",description:"One or more block boxes and one marker box."},{name:"-moz-box",description:"The element lays out its contents using flow layout (block-and-inline layout). Standardized as 'flex'."},{name:"-moz-deck"},{name:"-moz-grid"},{name:"-moz-grid-group"},{name:"-moz-grid-line"},{name:"-moz-groupbox"},{name:"-moz-inline-box",description:"Inline-level flex container. Standardized as 'inline-flex'"},{name:"-moz-inline-grid"},{name:"-moz-inline-stack"},{name:"-moz-marker"},{name:"-moz-popup"},{name:"-moz-stack"},{name:"-ms-flexbox",description:"The element lays out its contents using flow layout (block-and-inline layout). Standardized as 'flex'."},{name:"-ms-grid",description:"The element generates a principal grid container box, and establishes a grid formatting context."},{name:"-ms-inline-flexbox",description:"Inline-level flex container. Standardized as 'inline-flex'"},{name:"-ms-inline-grid",description:"Inline-level grid container."},{name:"none",description:"The element and its descendants generates no boxes."},{name:"ruby",description:"The element generates a principal ruby container box, and establishes a ruby formatting context."},{name:"ruby-base"},{name:"ruby-base-container"},{name:"ruby-text"},{name:"ruby-text-container"},{name:"run-in",description:"The element generates a run-in box. Run-in elements act like inlines or blocks, depending on the surrounding elements."},{name:"table",description:"The element generates a principal table wrapper box containing an additionally-generated table box, and establishes a table formatting context."},{name:"table-caption"},{name:"table-cell"},{name:"table-column"},{name:"table-column-group"},{name:"table-footer-group"},{name:"table-header-group"},{name:"table-row"},{name:"table-row-group"},{name:"-webkit-box",description:"The element lays out its contents using flow layout (block-and-inline layout). Standardized as 'flex'."},{name:"-webkit-flex",description:"The element lays out its contents using flow layout (block-and-inline layout)."},{name:"-webkit-inline-box",description:"Inline-level flex container. Standardized as 'inline-flex'"},{name:"-webkit-inline-flex",description:"Inline-level flex container."}],syntax:"[ <display-outside> || <display-inside> ] | <display-listitem> | <display-internal> | <display-box> | <display-legacy>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/display"}],description:"In combination with 'float' and 'position', determines the type of box or boxes that are generated for an element.",restrictions:["enum"]},{name:"padding",values:[],syntax:"[ <length> | <percentage> ]{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding"}],description:"Shorthand property to set values the thickness of the padding area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. The value may not be negative.",restrictions:["length","percentage"]},{name:"position",values:[{name:"absolute",description:"The box's position (and possibly size) is specified with the 'top', 'right', 'bottom', and 'left' properties. These properties specify offsets with respect to the box's 'containing block'."},{name:"fixed",description:"The box's position is calculated according to the 'absolute' model, but in addition, the box is fixed with respect to some reference. As with the 'absolute' model, the box's margins do not collapse with any other margins."},{name:"-ms-page",description:"The box's position is calculated according to the 'absolute' model."},{name:"relative",description:"The box's position is calculated according to the normal flow (this is called the position in normal flow). Then the box is offset relative to its normal position."},{name:"static",description:"The box is a normal box, laid out according to the normal flow. The 'top', 'right', 'bottom', and 'left' properties do not apply."},{name:"sticky",description:"The box's position is calculated according to the normal flow. Then the box is offset relative to its flow root and containing block and in all cases, including table elements, does not affect the position of any following boxes."},{name:"-webkit-sticky",description:"The box's position is calculated according to the normal flow. Then the box is offset relative to its flow root and containing block and in all cases, including table elements, does not affect the position of any following boxes."}],syntax:"static | relative | absolute | sticky | fixed",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/position"}],restrictions:["enum"]},{name:"border",syntax:"<line-width> || <line-style> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border"}],description:"Shorthand property for setting border width, style, and color.",restrictions:["length","line-width","line-style","color"]},{name:"margin",values:[{name:"auto"}],syntax:"[ <length> | <percentage> | auto ]{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin"}],description:"Shorthand property to set values the thickness of the margin area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. Negative values for margin properties are allowed, but there may be implementation-specific limits.",restrictions:["length","percentage"]},{name:"top",values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/top"}],description:"Specifies how far an absolutely positioned box's top margin edge is offset below the top edge of the box's 'containing block'.",restrictions:["length","percentage"]},{name:"left",values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/left"}],description:"Specifies how far an absolutely positioned box's left margin edge is offset to the right of the left edge of the box's 'containing block'.",restrictions:["length","percentage"]},{name:"margin-top",values:[{name:"auto"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-top"}],description:"Shorthand property to set values the thickness of the margin area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. Negative values for margin properties are allowed, but there may be implementation-specific limits..",restrictions:["length","percentage"]},{name:"color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/color"}],description:"Color of an element's text",restrictions:["color"]},{name:"font-size",values:[{name:"large"},{name:"larger"},{name:"medium"},{name:"small"},{name:"smaller"},{name:"x-large"},{name:"x-small"},{name:"xx-large"},{name:"xx-small"}],syntax:"<absolute-size> | <relative-size> | <length-percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-size"}],description:"Indicates the desired height of glyphs from the font. For scalable fonts, the font-size is a scale factor applied to the EM unit of the font. (Note that certain glyphs may bleed outside their EM box.) For non-scalable fonts, the font-size is converted into absolute units and matched against the declared font-size of the font, using the same absolute coordinate space for both of the matched values.",restrictions:["length","percentage"]},{name:"background-color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-color"}],description:"Sets the background color of an element.",restrictions:["color"]},{name:"text-align",values:[{name:"center",description:"The inline contents are centered within the line box."},{name:"end",description:"The inline contents are aligned to the end edge of the line box."},{name:"justify",description:"The text is justified according to the method specified by the 'text-justify' property."},{name:"left",description:"The inline contents are aligned to the left edge of the line box. In vertical text, 'left' aligns to the edge of the line box that would be the start edge for left-to-right text."},{name:"right",description:"The inline contents are aligned to the right edge of the line box. In vertical text, 'right' aligns to the edge of the line box that would be the end edge for left-to-right text."},{name:"start",description:"The inline contents are aligned to the start edge of the line box."}],syntax:"start | end | left | right | center | justify | match-parent",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-align"}],description:"Describes how inline contents of a block are horizontally aligned if the contents do not completely fill the line box.",restrictions:["string"]},{name:"opacity",syntax:"<alpha-value>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/opacity"}],description:"Opacity of an element's text, where 1 is opaque and 0 is entirely transparent.",restrictions:["number(0-1)"]},{name:"background",values:[{name:"fixed",description:"The background is fixed with regard to the viewport. In paged media where there is no viewport, a 'fixed' background is fixed with respect to the page box and therefore replicated on every page."},{name:"local",description:"The background is fixed with regard to the element's contents: if the element has a scrolling mechanism, the background scrolls with the element's contents."},{name:"none",description:"A value of 'none' counts as an image layer but draws nothing."},{name:"scroll",description:"The background is fixed with regard to the element itself and does not scroll with its contents. (It is effectively attached to the element's border.)"}],syntax:"[ <bg-layer> , ]* <final-bg-layer>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background"}],description:"Shorthand property for setting most background properties at the same place in the style sheet.",restrictions:["enum","image","color","position","length","repeat","percentage","box"]},{name:"float",values:[{name:"inline-end",description:"A keyword indicating that the element must float on the end side of its containing block. That is the right side with ltr scripts, and the left side with rtl scripts."},{name:"inline-start",description:"A keyword indicating that the element must float on the start side of its containing block. That is the left side with ltr scripts, and the right side with rtl scripts."},{name:"left",description:"The element generates a block box that is floated to the left. Content flows on the right side of the box, starting at the top (subject to the 'clear' property)."},{name:"none",description:"The box is not floated."},{name:"right",description:"Similar to 'left', except the box is floated to the right, and content flows on the left side of the box, starting at the top."}],syntax:"left | right | none | inline-start | inline-end",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/float"}],description:"Specifies how a box should be floated. It may be set for any element, but only applies to elements that generate boxes that are not absolutely positioned.",restrictions:["enum"]},{name:"font-weight",values:[{name:"100",description:"Thin"},{name:"200",description:"Extra Light (Ultra Light)"},{name:"300",description:"Light"},{name:"400",description:"Normal"},{name:"500",description:"Medium"},{name:"600",description:"Semi Bold (Demi Bold)"},{name:"700",description:"Bold"},{name:"800",description:"Extra Bold (Ultra Bold)"},{name:"900",description:"Black (Heavy)"},{name:"bold",description:"Same as 700"},{name:"bolder",description:"Specifies the weight of the face bolder than the inherited value."},{name:"lighter",description:"Specifies the weight of the face lighter than the inherited value."},{name:"normal",description:"Same as 400"}],syntax:"<font-weight-absolute>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-weight"}],description:"Specifies weight of glyphs in the font, their degree of blackness or stroke thickness.",restrictions:["enum"]},{name:"overflow",values:[{name:"auto",description:"The behavior of the 'auto' value is UA-dependent, but should cause a scrolling mechanism to be provided for overflowing boxes."},{name:"hidden",description:"Content is clipped and no scrolling mechanism should be provided to view the content outside the clipping region."},{name:"-moz-hidden-unscrollable",description:"Same as the standardized 'clip', except doesn’t establish a block formatting context."},{name:"scroll",description:"Content is clipped and if the user agent uses a scrolling mechanism that is visible on the screen (such as a scroll bar or a panner), that mechanism should be displayed for a box whether or not any of its content is clipped."},{name:"visible",description:"Content is not clipped, i.e., it may be rendered outside the content box."}],syntax:"[ visible | hidden | clip | scroll | auto ]{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow"}],description:"Shorthand for setting 'overflow-x' and 'overflow-y'.",restrictions:["enum"]},{name:"line-height",values:[{name:"normal",description:"Tells user agents to set the computed value to a 'reasonable' value based on the font size of the element."}],syntax:"normal | <number> | <length> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/line-height"}],description:"Determines the block-progression dimension of the text content area of an inline box.",restrictions:["number","length","percentage"]},{name:"font-family",values:[{name:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif"},{name:"Arial, Helvetica, sans-serif"},{name:"Cambria, Cochin, Georgia, Times, 'Times New Roman', serif"},{name:"'Courier New', Courier, monospace"},{name:"cursive"},{name:"fantasy"},{name:"'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif"},{name:"Georgia, 'Times New Roman', Times, serif"},{name:"'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif"},{name:"Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif"},{name:"'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif"},{name:"monospace"},{name:"sans-serif"},{name:"'Segoe UI', Tahoma, Geneva, Verdana, sans-serif"},{name:"serif"},{name:"'Times New Roman', Times, serif"},{name:"'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif"},{name:"Verdana, Geneva, Tahoma, sans-serif"}],syntax:"<family-name>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-family"}],description:"Specifies a prioritized list of font family names or generic family names. A user agent iterates through the list of family names until it matches an available font that contains a glyph for the character to be rendered.",restrictions:["font"]},{name:"text-decoration",values:[{name:"dashed",description:"Produces a dashed line style."},{name:"dotted",description:"Produces a dotted line."},{name:"double",description:"Produces a double line."},{name:"line-through",description:"Each line of text has a line through the middle."},{name:"none",description:"Produces no line."},{name:"overline",description:"Each line of text has a line above it."},{name:"solid",description:"Produces a solid line."},{name:"underline",description:"Each line of text is underlined."},{name:"wavy",description:"Produces a wavy line."}],syntax:"<'text-decoration-line'> || <'text-decoration-style'> || <'text-decoration-color'> || <'text-decoration-thickness'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration"}],description:"Decorations applied to font used for an element's text.",restrictions:["enum","color"]},{name:"box-sizing",values:[{name:"border-box",description:"The specified width and height (and respective min/max properties) on this element determine the border box of the element."},{name:"content-box",description:"Behavior of width and height as specified by CSS2.1. The specified width and height (and respective min/max properties) apply to the width and height respectively of the content box of the element."}],syntax:"content-box | border-box",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-sizing"}],description:"Specifies the behavior of the 'width' and 'height' properties.",restrictions:["enum"]},{name:"z-index",values:[{name:"auto",description:"The stack level of the generated box in the current stacking context is 0. The box does not establish a new stacking context unless it is the root element."}],syntax:"auto | <integer>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/z-index"}],description:"For a positioned box, the 'z-index' property specifies the stack level of the box in the current stacking context and whether the box establishes a local stacking context.",restrictions:["integer"]},{name:"vertical-align",values:[{name:"auto",description:"Align the dominant baseline of the parent box with the equivalent, or heuristically reconstructed, baseline of the element inline box."},{name:"baseline",description:"Align the 'alphabetic' baseline of the element with the 'alphabetic' baseline of the parent element."},{name:"bottom",description:"Align the after edge of the extended inline box with the after-edge of the line box."},{name:"middle",description:"Align the 'middle' baseline of the inline element with the middle baseline of the parent."},{name:"sub",description:"Lower the baseline of the box to the proper position for subscripts of the parent's box. (This value has no effect on the font size of the element's text.)"},{name:"super",description:"Raise the baseline of the box to the proper position for superscripts of the parent's box. (This value has no effect on the font size of the element's text.)"},{name:"text-bottom",description:"Align the bottom of the box with the after-edge of the parent element's font."},{name:"text-top",description:"Align the top of the box with the before-edge of the parent element's font."},{name:"top",description:"Align the before edge of the extended inline box with the before-edge of the line box."},{name:"-webkit-baseline-middle"}],syntax:"baseline | sub | super | text-top | text-bottom | middle | top | bottom | <percentage> | <length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/vertical-align"}],description:"Affects the vertical positioning of the inline boxes generated by an inline-level element inside a line box.",restrictions:["percentage","length"]},{name:"border-radius",syntax:"<length-percentage>{1,4} [ / <length-percentage>{1,4} ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-radius"}],description:"Defines the radii of the outer border edge.",restrictions:["length","percentage"]},{name:"margin-left",values:[{name:"auto"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-left"}],description:"Shorthand property to set values the thickness of the margin area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. Negative values for margin properties are allowed, but there may be implementation-specific limits..",restrictions:["length","percentage"]},{name:"cursor",values:[{name:"alias",description:"Indicates an alias of/shortcut to something is to be created. Often rendered as an arrow with a small curved arrow next to it."},{name:"all-scroll",description:"Indicates that the something can be scrolled in any direction. Often rendered as arrows pointing up, down, left, and right with a dot in the middle."},{name:"auto",description:"The UA determines the cursor to display based on the current context."},{name:"cell",description:"Indicates that a cell or set of cells may be selected. Often rendered as a thick plus-sign with a dot in the middle."},{name:"col-resize",description:"Indicates that the item/column can be resized horizontally. Often rendered as arrows pointing left and right with a vertical bar separating them."},{name:"context-menu",description:"A context menu is available for the object under the cursor. Often rendered as an arrow with a small menu-like graphic next to it."},{name:"copy",description:"Indicates something is to be copied. Often rendered as an arrow with a small plus sign next to it."},{name:"crosshair",description:"A simple crosshair (e.g., short line segments resembling a '+' sign). Often used to indicate a two dimensional bitmap selection mode."},{name:"default",description:"The platform-dependent default cursor. Often rendered as an arrow."},{name:"e-resize",description:"Indicates that east edge is to be moved."},{name:"ew-resize",description:"Indicates a bidirectional east-west resize cursor."},{name:"grab",description:"Indicates that something can be grabbed."},{name:"grabbing",description:"Indicates that something is being grabbed."},{name:"help",description:"Help is available for the object under the cursor. Often rendered as a question mark or a balloon."},{name:"move",description:"Indicates something is to be moved."},{name:"-moz-grab",description:"Indicates that something can be grabbed."},{name:"-moz-grabbing",description:"Indicates that something is being grabbed."},{name:"-moz-zoom-in",description:"Indicates that something can be zoomed (magnified) in."},{name:"-moz-zoom-out",description:"Indicates that something can be zoomed (magnified) out."},{name:"ne-resize",description:"Indicates that movement starts from north-east corner."},{name:"nesw-resize",description:"Indicates a bidirectional north-east/south-west cursor."},{name:"no-drop",description:"Indicates that the dragged item cannot be dropped at the current cursor location. Often rendered as a hand or pointer with a small circle with a line through it."},{name:"none",description:"No cursor is rendered for the element."},{name:"not-allowed",description:"Indicates that the requested action will not be carried out. Often rendered as a circle with a line through it."},{name:"n-resize",description:"Indicates that north edge is to be moved."},{name:"ns-resize",description:"Indicates a bidirectional north-south cursor."},{name:"nw-resize",description:"Indicates that movement starts from north-west corner."},{name:"nwse-resize",description:"Indicates a bidirectional north-west/south-east cursor."},{name:"pointer",description:"The cursor is a pointer that indicates a link."},{name:"progress",description:"A progress indicator. The program is performing some processing, but is different from 'wait' in that the user may still interact with the program. Often rendered as a spinning beach ball, or an arrow with a watch or hourglass."},{name:"row-resize",description:"Indicates that the item/row can be resized vertically. Often rendered as arrows pointing up and down with a horizontal bar separating them."},{name:"se-resize",description:"Indicates that movement starts from south-east corner."},{name:"s-resize",description:"Indicates that south edge is to be moved."},{name:"sw-resize",description:"Indicates that movement starts from south-west corner."},{name:"text",description:"Indicates text that may be selected. Often rendered as a vertical I-beam."},{name:"vertical-text",description:"Indicates vertical-text that may be selected. Often rendered as a horizontal I-beam."},{name:"wait",description:"Indicates that the program is busy and the user should wait. Often rendered as a watch or hourglass."},{name:"-webkit-grab",description:"Indicates that something can be grabbed."},{name:"-webkit-grabbing",description:"Indicates that something is being grabbed."},{name:"-webkit-zoom-in",description:"Indicates that something can be zoomed (magnified) in."},{name:"-webkit-zoom-out",description:"Indicates that something can be zoomed (magnified) out."},{name:"w-resize",description:"Indicates that west edge is to be moved."},{name:"zoom-in",description:"Indicates that something can be zoomed (magnified) in."},{name:"zoom-out",description:"Indicates that something can be zoomed (magnified) out."}],syntax:"[ [ <url> [ <x> <y> ]? , ]* [ auto | default | none | context-menu | help | pointer | progress | wait | cell | crosshair | text | vertical-text | alias | copy | move | no-drop | not-allowed | e-resize | n-resize | ne-resize | nw-resize | s-resize | se-resize | sw-resize | w-resize | ew-resize | ns-resize | nesw-resize | nwse-resize | col-resize | row-resize | all-scroll | zoom-in | zoom-out | grab | grabbing ] ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/cursor"}],description:"Allows control over cursor appearance in an element",restrictions:["url","number","enum"]},{name:"margin-bottom",values:[{name:"auto"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-bottom"}],description:"Shorthand property to set values the thickness of the margin area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. Negative values for margin properties are allowed, but there may be implementation-specific limits..",restrictions:["length","percentage"]},{name:"right",values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/right"}],description:"Specifies how far an absolutely positioned box's right margin edge is offset to the left of the right edge of the box's 'containing block'.",restrictions:["length","percentage"]},{name:"margin-right",values:[{name:"auto"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-right"}],description:"Shorthand property to set values the thickness of the margin area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. Negative values for margin properties are allowed, but there may be implementation-specific limits..",restrictions:["length","percentage"]},{name:"padding-left",syntax:"<length> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-left"}],description:"Shorthand property to set values the thickness of the padding area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. The value may not be negative.",restrictions:["length","percentage"]},{name:"padding-top",syntax:"<length> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-top"}],description:"Shorthand property to set values the thickness of the padding area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. The value may not be negative.",restrictions:["length","percentage"]},{name:"max-width",values:[{name:"none",description:"No limit on the width of the box."},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/max-width"}],description:"Allows authors to constrain content width to a certain range.",restrictions:["length","percentage"]},{name:"bottom",values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/bottom"}],description:"Specifies how far an absolutely positioned box's bottom margin edge is offset above the bottom edge of the box's 'containing block'.",restrictions:["length","percentage"]},{name:"background-image",values:[{name:"none",description:"Counts as an image layer but draws nothing."}],syntax:"<bg-image>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-image"}],description:"Sets the background image(s) of an element.",restrictions:["image","enum"]},{name:"content",values:[{name:"attr()",description:"The attr(n) function returns as a string the value of attribute n for the subject of the selector."},{name:"counter(name)",description:"Counters are denoted by identifiers (see the 'counter-increment' and 'counter-reset' properties)."},{name:"icon",description:"The (pseudo-)element is replaced in its entirety by the resource referenced by its 'icon' property, and treated as a replaced element."},{name:"none",description:"On elements, this inhibits the children of the element from being rendered as children of this element, as if the element was empty. On pseudo-elements it causes the pseudo-element to have no content."},{name:"normal",description:"See http://www.w3.org/TR/css3-content/#content for computation rules."},{name:"url()"}],syntax:"normal | none | [ <content-replacement> | <content-list> ] [/ <string> ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/content"}],description:"Determines which page-based occurrence of a given element is applied to a counter or string value.",restrictions:["string","url"]},{name:"padding-right",syntax:"<length> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-right"}],description:"Shorthand property to set values the thickness of the padding area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. The value may not be negative.",restrictions:["length","percentage"]},{name:"white-space",values:[{name:"normal",description:"Sets 'white-space-collapsing' to 'collapse' and 'text-wrap' to 'normal'."},{name:"nowrap",description:"Sets 'white-space-collapsing' to 'collapse' and 'text-wrap' to 'none'."},{name:"pre",description:"Sets 'white-space-collapsing' to 'preserve' and 'text-wrap' to 'none'."},{name:"pre-line",description:"Sets 'white-space-collapsing' to 'preserve-breaks' and 'text-wrap' to 'normal'."},{name:"pre-wrap",description:"Sets 'white-space-collapsing' to 'preserve' and 'text-wrap' to 'normal'."}],syntax:"normal | pre | nowrap | pre-wrap | pre-line | break-spaces",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/white-space"}],description:"Shorthand property for the 'white-space-collapsing' and 'text-wrap' properties.",restrictions:["enum"]},{name:"padding-bottom",syntax:"<length> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-bottom"}],description:"Shorthand property to set values the thickness of the padding area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. The value may not be negative.",restrictions:["length","percentage"]},{name:"border-bottom",syntax:"<line-width> || <line-style> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom"}],description:"Shorthand property for setting border width, style and color.",restrictions:["length","line-width","line-style","color"]},{name:"box-shadow",values:[{name:"inset",description:"Changes the drop shadow from an outer shadow (one that shadows the box onto the canvas, as if it were lifted above the canvas) to an inner shadow (one that shadows the canvas onto the box, as if the box were cut out of the canvas and shifted behind it)."},{name:"none",description:"No shadow."}],syntax:"none | <shadow>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-shadow"}],description:"Attaches one or more drop-shadows to the box. The property is a comma-separated list of shadows, each specified by 2-4 length values, an optional color, and an optional 'inset' keyword. Omitted lengths are 0; omitted colors are a user agent chosen color.",restrictions:["length","color","enum"]},{name:"transform",values:[{name:"matrix()",description:"Specifies a 2D transformation in the form of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix [a b c d e f]"},{name:"matrix3d()",description:"Specifies a 3D transformation as a 4x4 homogeneous matrix of 16 values in column-major order."},{name:"none"},{name:"perspective()",description:"Specifies a perspective projection matrix."},{name:"rotate()",description:"Specifies a 2D rotation by the angle specified in the parameter about the origin of the element, as defined by the transform-origin property."},{name:"rotate3d()",description:"Specifies a clockwise 3D rotation by the angle specified in last parameter about the [x,y,z] direction vector described by the first 3 parameters."},{name:"rotateX('angle')",description:"Specifies a clockwise rotation by the given angle about the X axis."},{name:"rotateY('angle')",description:"Specifies a clockwise rotation by the given angle about the Y axis."},{name:"rotateZ('angle')",description:"Specifies a clockwise rotation by the given angle about the Z axis."},{name:"scale()",description:"Specifies a 2D scale operation by the [sx,sy] scaling vector described by the 2 parameters. If the second parameter is not provided, it is takes a value equal to the first."},{name:"scale3d()",description:"Specifies a 3D scale operation by the [sx,sy,sz] scaling vector described by the 3 parameters."},{name:"scaleX()",description:"Specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter."},{name:"scaleY()",description:"Specifies a scale operation using the [sy,1] scaling vector, where sy is given as the parameter."},{name:"scaleZ()",description:"Specifies a scale operation using the [1,1,sz] scaling vector, where sz is given as the parameter."},{name:"skew()",description:"Specifies a skew transformation along the X and Y axes. The first angle parameter specifies the skew on the X axis. The second angle parameter specifies the skew on the Y axis. If the second parameter is not given then a value of 0 is used for the Y angle (ie: no skew on the Y axis)."},{name:"skewX()",description:"Specifies a skew transformation along the X axis by the given angle."},{name:"skewY()",description:"Specifies a skew transformation along the Y axis by the given angle."},{name:"translate()",description:"Specifies a 2D translation by the vector [tx, ty], where tx is the first translation-value parameter and ty is the optional second translation-value parameter."},{name:"translate3d()",description:"Specifies a 3D translation by the vector [tx,ty,tz], with tx, ty and tz being the first, second and third translation-value parameters respectively."},{name:"translateX()",description:"Specifies a translation by the given amount in the X direction."},{name:"translateY()",description:"Specifies a translation by the given amount in the Y direction."},{name:"translateZ()",description:"Specifies a translation by the given amount in the Z direction. Note that percentage values are not allowed in the translateZ translation-value, and if present are evaluated as 0."}],syntax:"none | <transform-list>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transform"}],description:"A two-dimensional transformation is applied to an element through the 'transform' property. This property contains a list of transform functions similar to those allowed by SVG.",restrictions:["enum"]},{name:"min-height",values:[{name:"auto"},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/min-height"}],description:"Allows authors to constrain content height to a certain range.",restrictions:["length","percentage"]},{name:"visibility",values:[{name:"collapse",description:"Table-specific. If used on elements other than rows, row groups, columns, or column groups, 'collapse' has the same meaning as 'hidden'."},{name:"hidden",description:"The generated box is invisible (fully transparent, nothing is drawn), but still affects layout."},{name:"visible",description:"The generated box is visible."}],syntax:"visible | hidden | collapse",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/visibility"}],description:"Specifies whether the boxes generated by an element are rendered. Invisible boxes still affect layout (set the ‘display’ property to ‘none’ to suppress box generation altogether).",restrictions:["enum"]},{name:"background-position",syntax:"<bg-position>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-position"}],description:"Specifies the initial position of the background image(s) (after any resizing) within their corresponding background positioning area.",restrictions:["position","length","percentage"]},{name:"border-top",syntax:"<line-width> || <line-style> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top"}],description:"Shorthand property for setting border width, style and color",restrictions:["length","line-width","line-style","color"]},{name:"min-width",values:[{name:"auto"},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/min-width"}],description:"Allows authors to constrain content width to a certain range.",restrictions:["length","percentage"]},{name:"outline",values:[{name:"auto",description:"Permits the user agent to render a custom outline style, typically the default platform style."},{name:"invert",description:"Performs a color inversion on the pixels on the screen."}],syntax:"[ <'outline-color'> || <'outline-style'> || <'outline-width'> ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/outline"}],description:"Shorthand property for 'outline-style', 'outline-width', and 'outline-color'.",restrictions:["length","line-width","line-style","color","enum"]},{name:"transition",values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],syntax:"<single-transition>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transition"}],description:"Shorthand property combines four of the transition properties into a single property.",restrictions:["time","property","timing-function","enum"]},{name:"clear",values:[{name:"both",description:"The clearance of the generated box is set to the amount necessary to place the top border edge below the bottom outer edge of any right-floating and left-floating boxes that resulted from elements earlier in the source document."},{name:"left",description:"The clearance of the generated box is set to the amount necessary to place the top border edge below the bottom outer edge of any left-floating boxes that resulted from elements earlier in the source document."},{name:"none",description:"No constraint on the box's position with respect to floats."},{name:"right",description:"The clearance of the generated box is set to the amount necessary to place the top border edge below the bottom outer edge of any right-floating boxes that resulted from elements earlier in the source document."}],syntax:"none | left | right | both | inline-start | inline-end",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/clear"}],description:"Indicates which sides of an element's box(es) may not be adjacent to an earlier floating box. The 'clear' property does not consider floats inside the element itself or in other block formatting contexts.",restrictions:["enum"]},{name:"border-color",values:[],syntax:"<color>{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-color"}],description:"The color of the border around all four edges of an element.",restrictions:["color"]},{name:"background-repeat",values:[],syntax:"<repeat-style>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-repeat"}],description:"Specifies how background images are tiled after they have been sized and positioned.",restrictions:["repeat"]},{name:"background-size",values:[{name:"auto",description:"Resolved by using the image’s intrinsic ratio and the size of the other dimension, or failing that, using the image’s intrinsic size, or failing that, treating it as 100%."},{name:"contain",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the largest size such that both its width and its height can fit inside the background positioning area."},{name:"cover",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the smallest size such that both its width and its height can completely cover the background positioning area."}],syntax:"<bg-size>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-size"}],description:"Specifies the size of the background images.",restrictions:["length","percentage"]},{name:"text-transform",values:[{name:"capitalize",description:"Puts the first typographic letter unit of each word in titlecase."},{name:"lowercase",description:"Puts all letters in lowercase."},{name:"none",description:"No effects."},{name:"uppercase",description:"Puts all letters in uppercase."}],syntax:"none | capitalize | uppercase | lowercase | full-width | full-size-kana",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-transform"}],description:"Controls capitalization effects of an element’s text.",restrictions:["enum"]},{name:"max-height",values:[{name:"none",description:"No limit on the height of the box."},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/max-height"}],description:"Allows authors to constrain content height to a certain range.",restrictions:["length","percentage"]},{name:"list-style",values:[{name:"armenian"},{name:"circle",description:"A hollow circle."},{name:"decimal"},{name:"decimal-leading-zero"},{name:"disc",description:"A filled circle."},{name:"georgian"},{name:"inside",description:"The marker box is outside the principal block box, as described in the section on the ::marker pseudo-element below."},{name:"lower-alpha"},{name:"lower-greek"},{name:"lower-latin"},{name:"lower-roman"},{name:"none"},{name:"outside",description:"The ::marker pseudo-element is an inline element placed immediately before all ::before pseudo-elements in the principal block box, after which the element's content flows."},{name:"square",description:"A filled square."},{name:"symbols()",description:"Allows a counter style to be defined inline."},{name:"upper-alpha"},{name:"upper-latin"},{name:"upper-roman"},{name:"url()"}],syntax:"<'list-style-type'> || <'list-style-position'> || <'list-style-image'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/list-style"}],description:"Shorthand for setting 'list-style-type', 'list-style-position' and 'list-style-image'",restrictions:["image","enum","url"]},{name:"font-style",values:[{name:"italic",description:"Selects a font that is labeled as an 'italic' face, or an 'oblique' face if one is not"},{name:"normal",description:"Selects a face that is classified as 'normal'."},{name:"oblique",description:"Selects a font that is labeled as an 'oblique' face, or an 'italic' face if one is not."}],syntax:"normal | italic | oblique <angle>{0,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-style"}],description:"Allows italic or oblique faces to be selected. Italic forms are generally cursive in nature while oblique faces are typically sloped versions of the regular face.",restrictions:["enum"]},{name:"font",values:[{name:"100",description:"Thin"},{name:"200",description:"Extra Light (Ultra Light)"},{name:"300",description:"Light"},{name:"400",description:"Normal"},{name:"500",description:"Medium"},{name:"600",description:"Semi Bold (Demi Bold)"},{name:"700",description:"Bold"},{name:"800",description:"Extra Bold (Ultra Bold)"},{name:"900",description:"Black (Heavy)"},{name:"bold",description:"Same as 700"},{name:"bolder",description:"Specifies the weight of the face bolder than the inherited value."},{name:"caption",description:"The font used for captioned controls (e.g., buttons, drop-downs, etc.)."},{name:"icon",description:"The font used to label icons."},{name:"italic",description:"Selects a font that is labeled 'italic', or, if that is not available, one labeled 'oblique'."},{name:"large"},{name:"larger"},{name:"lighter",description:"Specifies the weight of the face lighter than the inherited value."},{name:"medium"},{name:"menu",description:"The font used in menus (e.g., dropdown menus and menu lists)."},{name:"message-box",description:"The font used in dialog boxes."},{name:"normal",description:"Specifies a face that is not labeled as a small-caps font."},{name:"oblique",description:"Selects a font that is labeled 'oblique'."},{name:"small"},{name:"small-caps",description:"Specifies a font that is labeled as a small-caps font. If a genuine small-caps font is not available, user agents should simulate a small-caps font."},{name:"small-caption",description:"The font used for labeling small controls."},{name:"smaller"},{name:"status-bar",description:"The font used in window status bars."},{name:"x-large"},{name:"x-small"},{name:"xx-large"},{name:"xx-small"}],syntax:"[ [ <'font-style'> || <font-variant-css21> || <'font-weight'> || <'font-stretch'> ]? <'font-size'> [ / <'line-height'> ]? <'font-family'> ] | caption | icon | menu | message-box | small-caption | status-bar",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font"}],description:"Shorthand property for setting 'font-style', 'font-variant', 'font-weight', 'font-size', 'line-height', and 'font-family', at the same place in the style sheet. The syntax of this property is based on a traditional typographical shorthand notation to set multiple properties related to fonts.",restrictions:["font"]},{name:"text-overflow",values:[{name:"clip",description:"Clip inline content that overflows. Characters may be only partially rendered."},{name:"ellipsis",description:"Render an ellipsis character (U+2026) to represent clipped inline content."}],syntax:"[ clip | ellipsis | <string> ]{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-overflow"}],description:"Text can overflow for example when it is prevented from wrapping.",restrictions:["enum","string"]},{name:"border-left",syntax:"<line-width> || <line-style> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-left"}],description:"Shorthand property for setting border width, style and color",restrictions:["length","line-width","line-style","color"]},{name:"border-right",syntax:"<line-width> || <line-style> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-right"}],description:"Shorthand property for setting border width, style and color",restrictions:["length","line-width","line-style","color"]},{name:"border-width",values:[],syntax:"<line-width>{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-width"}],description:"Shorthand that sets the four 'border-*-width' properties. If it has four values, they set top, right, bottom and left in that order. If left is missing, it is the same as right; if bottom is missing, it is the same as top; if right is missing, it is the same as top.",restrictions:["length","line-width"]},{name:"justify-content",values:[{name:"center",description:"Flex items are packed toward the center of the line."},{name:"start",description:"The items are packed flush to each other toward the start edge of the alignment container in the main axis."},{name:"end",description:"The items are packed flush to each other toward the end edge of the alignment container in the main axis."},{name:"left",description:"The items are packed flush to each other toward the left edge of the alignment container in the main axis."},{name:"right",description:"The items are packed flush to each other toward the right edge of the alignment container in the main axis."},{name:"safe",description:"If the size of the item overflows the alignment container, the item is instead aligned as if the alignment mode were start."},{name:"unsafe",description:"Regardless of the relative sizes of the item and alignment container, the given alignment value is honored."},{name:"stretch",description:"If the combined size of the alignment subjects is less than the size of the alignment container, any auto-sized alignment subjects have their size increased equally (not proportionally), while still respecting the constraints imposed by max-height/max-width (or equivalent functionality), so that the combined size exactly fills the alignment container."},{name:"space-evenly",description:"The items are evenly distributed within the alignment container along the main axis."},{name:"flex-end",description:"Flex items are packed toward the end of the line."},{name:"flex-start",description:"Flex items are packed toward the start of the line."},{name:"space-around",description:"Flex items are evenly distributed in the line, with half-size spaces on either end."},{name:"space-between",description:"Flex items are evenly distributed in the line."},{name:"baseline",description:"Specifies participation in first-baseline alignment."},{name:"first baseline",description:"Specifies participation in first-baseline alignment."},{name:"last baseline",description:"Specifies participation in last-baseline alignment."}],syntax:"normal | <content-distribution> | <overflow-position>? [ <content-position> | left | right ]",description:"Aligns flex items along the main axis of the current line of the flex container.",restrictions:["enum"]},{name:"align-items",values:[{name:"baseline",description:"If the flex item’s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment."},{name:"center",description:"The flex item’s margin box is centered in the cross axis within the line."},{name:"flex-end",description:"The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line."},{name:"flex-start",description:"The cross-start margin edge of the flex item is placed flush with the cross-start edge of the line."},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."}],syntax:"normal | stretch | <baseline-position> | [ <overflow-position>? <self-position> ]",description:"Aligns flex items along the cross axis of the current line of the flex container.",restrictions:["enum"]},{name:"overflow-y",values:[{name:"auto",description:"The behavior of the 'auto' value is UA-dependent, but should cause a scrolling mechanism to be provided for overflowing boxes."},{name:"hidden",description:"Content is clipped and no scrolling mechanism should be provided to view the content outside the clipping region."},{name:"scroll",description:"Content is clipped and if the user agent uses a scrolling mechanism that is visible on the screen (such as a scroll bar or a panner), that mechanism should be displayed for a box whether or not any of its content is clipped."},{name:"visible",description:"Content is not clipped, i.e., it may be rendered outside the content box."}],syntax:"visible | hidden | clip | scroll | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-y"}],description:"Specifies the handling of overflow in the vertical direction.",restrictions:["enum"]},{name:"pointer-events",values:[{name:"all",description:"The given element can be the target element for pointer events whenever the pointer is over either the interior or the perimeter of the element."},{name:"fill",description:"The given element can be the target element for pointer events whenever the pointer is over the interior of the element."},{name:"none",description:"The given element does not receive pointer events."},{name:"painted",description:'The given element can be the target element for pointer events when the pointer is over a "painted" area. '},{name:"stroke",description:"The given element can be the target element for pointer events whenever the pointer is over the perimeter of the element."},{name:"visible",description:"The given element can be the target element for pointer events when the ‘visibility’ property is set to visible and the pointer is over either the interior or the perimete of the element."},{name:"visibleFill",description:"The given element can be the target element for pointer events when the ‘visibility’ property is set to visible and when the pointer is over the interior of the element."},{name:"visiblePainted",description:"The given element can be the target element for pointer events when the ‘visibility’ property is set to visible and when the pointer is over a ‘painted’ area."},{name:"visibleStroke",description:"The given element can be the target element for pointer events when the ‘visibility’ property is set to visible and when the pointer is over the perimeter of the element."}],syntax:"auto | none | visiblePainted | visibleFill | visibleStroke | visible | painted | fill | stroke | all | inherit",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/pointer-events"}],description:"Specifies under what circumstances a given element can be the target element for a pointer event.",restrictions:["enum"]},{name:"letter-spacing",values:[{name:"normal",description:"The spacing is the normal spacing for the current font. It is typically zero-length."}],syntax:"normal | <length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/letter-spacing"}],description:"Specifies the minimum, maximum, and optimal spacing between grapheme clusters.",restrictions:["length"]},{name:"border-style",values:[],syntax:"<line-style>{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-style"}],description:"The style of the border around edges of an element.",restrictions:["line-style"]},{name:"animation",values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"infinite",description:"Causes the animation to repeat forever."},{name:"none",description:"No animation is performed"},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],syntax:"<single-animation>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation"}],description:"Shorthand property combines six of the animation properties into a single property.",restrictions:["time","timing-function","enum","identifier","number"]},{name:"overflow-x",values:[{name:"auto",description:"The behavior of the 'auto' value is UA-dependent, but should cause a scrolling mechanism to be provided for overflowing boxes."},{name:"hidden",description:"Content is clipped and no scrolling mechanism should be provided to view the content outside the clipping region."},{name:"scroll",description:"Content is clipped and if the user agent uses a scrolling mechanism that is visible on the screen (such as a scroll bar or a panner), that mechanism should be displayed for a box whether or not any of its content is clipped."},{name:"visible",description:"Content is not clipped, i.e., it may be rendered outside the content box."}],syntax:"visible | hidden | clip | scroll | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-x"}],description:"Specifies the handling of overflow in the horizontal direction.",restrictions:["enum"]},{name:"word-wrap",values:[{name:"break-word",description:"An otherwise unbreakable sequence of characters may be broken at an arbitrary point if there are no otherwise-acceptable break points in the line."},{name:"normal",description:"Lines may break only at allowed break points."}],syntax:"normal | break-word",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-wrap"}],description:"Specifies whether the UA may break within a word to prevent overflow when an otherwise-unbreakable string is too long to fit.",restrictions:["enum"]},{name:"border-collapse",values:[{name:"collapse",description:"Selects the collapsing borders model."},{name:"separate",description:"Selects the separated borders border model."}],syntax:"collapse | separate",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-collapse"}],description:"Selects a table's border model.",restrictions:["enum"]},{name:"flex-direction",values:[{name:"column",description:"The flex container’s main axis has the same orientation as the block axis of the current writing mode."},{name:"column-reverse",description:"Same as 'column', except the main-start and main-end directions are swapped."},{name:"row",description:"The flex container’s main axis has the same orientation as the inline axis of the current writing mode."},{name:"row-reverse",description:"Same as 'row', except the main-start and main-end directions are swapped."}],syntax:"row | row-reverse | column | column-reverse",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-direction"}],description:"Specifies how flex items are placed in the flex container, by setting the direction of the flex container’s main axis.",restrictions:["enum"]},{name:"zoom",browsers:["E12","S3.1","C1","IE5.5","O15"],values:[{name:"normal"}],syntax:"auto | <number> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/zoom"}],description:"Non-standard. Specifies the magnification scale of the object. See 'transform: scale()' for a standards-based alternative.",restrictions:["enum","integer","number","percentage"]},{name:"flex",values:[{name:"auto",description:"Retrieves the value of the main size property as the used 'flex-basis'."},{name:"content",description:"Indicates automatic sizing, based on the flex item’s content."},{name:"none",description:"Expands to '0 0 auto'."}],syntax:"none | [ <'flex-grow'> <'flex-shrink'>? || <'flex-basis'> ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex"}],description:"Specifies the components of a flexible length: the flex grow factor and flex shrink factor, and the flex basis.",restrictions:["length","number","percentage"]},{name:"text-shadow",values:[{name:"none",description:"No shadow."}],syntax:"none | <shadow-t>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-shadow"}],description:"Enables shadow effects to be applied to the text of the element.",restrictions:["length","color"]},{name:"list-style-type",values:[{name:"armenian",description:"Traditional uppercase Armenian numbering."},{name:"circle",description:"A hollow circle."},{name:"decimal",description:"Western decimal numbers."},{name:"decimal-leading-zero",description:"Decimal numbers padded by initial zeros."},{name:"disc",description:"A filled circle."},{name:"georgian",description:"Traditional Georgian numbering."},{name:"lower-alpha",description:"Lowercase ASCII letters."},{name:"lower-greek",description:"Lowercase classical Greek."},{name:"lower-latin",description:"Lowercase ASCII letters."},{name:"lower-roman",description:"Lowercase ASCII Roman numerals."},{name:"none",description:"No marker"},{name:"square",description:"A filled square."},{name:"symbols()",description:"Allows a counter style to be defined inline."},{name:"upper-alpha",description:"Uppercase ASCII letters."},{name:"upper-latin",description:"Uppercase ASCII letters."},{name:"upper-roman",description:"Uppercase ASCII Roman numerals."}],syntax:"<counter-style> | <string> | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/list-style-type"}],description:"Used to construct the default contents of a list item’s marker",restrictions:["enum","string"]},{name:"border-bottom-left-radius",syntax:"<length-percentage>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom-left-radius"}],description:"Defines the radii of the bottom left outer border edge.",restrictions:["length","percentage"]},{name:"user-select",values:[{name:"all",description:"The content of the element must be selected atomically"},{name:"auto"},{name:"contain",description:"UAs must not allow a selection which is started in this element to be extended outside of this element."},{name:"none",description:"The UA must not allow selections to be started in this element."},{name:"text",description:"The element imposes no constraint on the selection."}],status:"nonstandard",syntax:"auto | text | none | contain | all",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/user-select"}],description:"Controls the appearance of selection.",restrictions:["enum"]},{name:"fill",values:[{name:"url()",description:"A URL reference to a paint server element, which is an element that defines a paint server: ‘hatch’, ‘linearGradient’, ‘mesh’, ‘pattern’, ‘radialGradient’ and ‘solidcolor’."},{name:"none",description:"No paint is applied in this layer."}],description:"Paints the interior of the given graphical element.",restrictions:["color","enum","url"]},{name:"transform-origin",syntax:"[ <length-percentage> | left | center | right | top | bottom ] | [ [ <length-percentage> | left | center | right ] && [ <length-percentage> | top | center | bottom ] ] <length>?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transform-origin"}],description:"Establishes the origin of transformation for an element.",restrictions:["position","length","percentage"]},{name:"border-top-left-radius",syntax:"<length-percentage>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top-left-radius"}],description:"Defines the radii of the top left outer border edge.",restrictions:["length","percentage"]},{name:"text-indent",values:[],syntax:"<length-percentage> && hanging? && each-line?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-indent"}],description:"Specifies the indentation applied to lines of inline content in a block. The indentation only affects the first line of inline content in the block unless the 'hanging' keyword is specified, in which case it affects all lines except the first.",restrictions:["percentage","length"]},{name:"border-bottom-right-radius",syntax:"<length-percentage>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom-right-radius"}],description:"Defines the radii of the bottom right outer border edge.",restrictions:["length","percentage"]},{name:"flex-wrap",values:[{name:"nowrap",description:"The flex container is single-line."},{name:"wrap",description:"The flexbox is multi-line."},{name:"wrap-reverse",description:"Same as 'wrap', except the cross-start and cross-end directions are swapped."}],syntax:"nowrap | wrap | wrap-reverse",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-wrap"}],description:"Controls whether the flex container is single-line or multi-line, and the direction of the cross-axis, which determines the direction new lines are stacked in.",restrictions:["enum"]},{name:"border-spacing",syntax:"<length> <length>?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-spacing"}],description:"The lengths specify the distance that separates adjoining cell borders. If one length is specified, it gives both the horizontal and vertical spacing. If two are specified, the first gives the horizontal spacing and the second the vertical spacing. Lengths may not be negative.",restrictions:["length"]},{name:"border-top-right-radius",syntax:"<length-percentage>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top-right-radius"}],description:"Defines the radii of the top right outer border edge.",restrictions:["length","percentage"]},{name:"clip",values:[{name:"auto",description:"The element does not clip."},{name:"rect()",description:"Specifies offsets from the edges of the border box."}],syntax:"<shape> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/clip"}],description:"Deprecated. Use the 'clip-path' property when support allows. Defines the visible portion of an element’s box.",restrictions:["enum"]},{name:"border-top-color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top-color"}],description:"Sets the color of the top border.",restrictions:["color"]},{name:"word-break",values:[{name:"break-all",description:"Lines may break between any two grapheme clusters for non-CJK scripts."},{name:"keep-all",description:"Block characters can no longer create implied break points."},{name:"normal",description:"Breaks non-CJK scripts according to their own rules."}],syntax:"normal | break-all | keep-all | break-word",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/word-break"}],description:"Specifies line break opportunities for non-CJK scripts.",restrictions:["enum"]},{name:"border-bottom-color",syntax:"<'border-top-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom-color"}],description:"Sets the color of the bottom border.",restrictions:["color"]},{name:"flex-grow",syntax:"<number>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-grow"}],description:"Sets the flex grow factor. Negative numbers are invalid.",restrictions:["number"]},{name:"direction",values:[{name:"ltr",description:"Left-to-right direction."},{name:"rtl",description:"Right-to-left direction."}],syntax:"ltr | rtl",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/direction"}],description:"Specifies the inline base direction or directionality of any bidi paragraph, embedding, isolate, or override established by the box. Note: for HTML content use the 'dir' attribute and 'bdo' element rather than this property.",restrictions:["enum"]},{name:"align-self",values:[{name:"auto",description:"Computes to the value of 'align-items' on the element’s parent, or 'stretch' if the element has no parent. On absolutely positioned elements, it computes to itself."},{name:"baseline",description:"If the flex item’s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment."},{name:"center",description:"The flex item’s margin box is centered in the cross axis within the line."},{name:"flex-end",description:"The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line."},{name:"flex-start",description:"The cross-start margin edge of the flex item is placed flush with the cross-start edge of the line."},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."}],syntax:"auto | normal | stretch | <baseline-position> | <overflow-position>? <self-position>",description:"Allows the default alignment along the cross axis to be overridden for individual flex items.",restrictions:["enum"]},{name:"flex-shrink",syntax:"<number>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-shrink"}],description:"Sets the flex shrink factor. Negative numbers are invalid.",restrictions:["number"]},{name:"text-rendering",browsers:["FF1","S5","C4","O15"],values:[{name:"auto"},{name:"geometricPrecision",description:"Indicates that the user agent shall emphasize geometric precision over legibility and rendering speed."},{name:"optimizeLegibility",description:"Indicates that the user agent shall emphasize legibility over rendering speed and geometric precision."},{name:"optimizeSpeed",description:"Indicates that the user agent shall emphasize rendering speed over legibility and geometric precision."}],syntax:"auto | optimizeSpeed | optimizeLegibility | geometricPrecision",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-rendering"}],description:"The creator of SVG content might want to provide a hint to the implementation about what tradeoffs to make as it renders text. The ‘text-rendering’ property provides these hints.",restrictions:["enum"]},{name:"touch-action",values:[{name:"auto",description:"The user agent may determine any permitted touch behaviors for touches that begin on the element."},{name:"cross-slide-x"},{name:"cross-slide-y"},{name:"double-tap-zoom"},{name:"manipulation",description:"The user agent may consider touches that begin on the element only for the purposes of scrolling and continuous zooming."},{name:"none",description:"Touches that begin on the element must not trigger default touch behaviors."},{name:"pan-x",description:"The user agent may consider touches that begin on the element only for the purposes of horizontally scrolling the element’s nearest ancestor with horizontally scrollable content."},{name:"pan-y",description:"The user agent may consider touches that begin on the element only for the purposes of vertically scrolling the element’s nearest ancestor with vertically scrollable content."},{name:"pinch-zoom"}],syntax:"auto | none | [ [ pan-x | pan-left | pan-right ] || [ pan-y | pan-up | pan-down ] || pinch-zoom ] | manipulation",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/touch-action"}],description:"Determines whether touch input may trigger default behavior supplied by user agent.",restrictions:["enum"]},{name:"background-clip",syntax:"<box>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-clip"}],description:"Determines the background painting area.",restrictions:["box"]},{name:"filter",browsers:["E12","FF35","S9.1","C53","O40"],values:[{name:"none",description:"No filter effects are applied."},{name:"blur()",description:"Applies a Gaussian blur to the input image."},{name:"brightness()",description:"Applies a linear multiplier to input image, making it appear more or less bright."},{name:"contrast()",description:"Adjusts the contrast of the input."},{name:"drop-shadow()",description:"Applies a drop shadow effect to the input image."},{name:"grayscale()",description:"Converts the input image to grayscale."},{name:"hue-rotate()",description:"Applies a hue rotation on the input image. "},{name:"invert()",description:"Inverts the samples in the input image."},{name:"opacity()",description:"Applies transparency to the samples in the input image."},{name:"saturate()",description:"Saturates the input image."},{name:"sepia()",description:"Converts the input image to sepia."},{name:"url()",browsers:["E12","FF35","S9.1","C53","O40"],description:"A filter reference to a <filter> element."}],syntax:"none | <filter-function-list>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/filter"}],description:"Processes an element’s rendering before it is displayed in the document, by applying one or more filter effects.",restrictions:["enum","url"]},{name:"src",values:[{name:"url()",description:"Reference font by URL"},{name:"format()",description:"Optional hint describing the format of the font resource."},{name:"local()",description:"Format-specific string that identifies a locally available copy of a given font."}],syntax:"[ <url> [ format( <string># ) ]? | local( <family-name> ) ]#",description:"@font-face descriptor. Specifies the resource containing font data. It is required, whether the font is downloadable or locally installed.",restrictions:["enum","url","identifier"]},{name:"animation-timing-function",syntax:"<timing-function>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-timing-function"}],description:"Describes how the animation will progress over one cycle of its duration.",restrictions:["timing-function"]},{name:"border-right-color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-right-color"}],description:"Sets the color of the right border.",restrictions:["color"]},{name:"font-variant",values:[{name:"normal",description:"Specifies a face that is not labeled as a small-caps font."},{name:"small-caps",description:"Specifies a font that is labeled as a small-caps font. If a genuine small-caps font is not available, user agents should simulate a small-caps font."}],syntax:"normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> || stylistic(<feature-value-name>) || historical-forms || styleset(<feature-value-name>#) || character-variant(<feature-value-name>#) || swash(<feature-value-name>) || ornaments(<feature-value-name>) || annotation(<feature-value-name>) || [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] || <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero || <east-asian-variant-values> || <east-asian-width-values> || ruby ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant"}],description:"Specifies variant representations of the font",restrictions:["enum"]},{name:"border-left-color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-left-color"}],description:"Sets the color of the left border.",restrictions:["color"]},{name:"animation-name",values:[{name:"none",description:"No animation is performed"}],syntax:"[ none | <keyframes-name> ]#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-name"}],description:"Defines a list of animations that apply. Each name is used to select the keyframe at-rule that provides the property values for the animation.",restrictions:["identifier","enum"]},{name:"animation-duration",syntax:"<time>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-duration"}],description:"Defines the length of time that an animation takes to complete one cycle.",restrictions:["time"]},{name:"will-change",browsers:["FF36","S9.1","C36","O24"],values:[{name:"auto",description:"Expresses no particular intent."},{name:"contents",description:"Indicates that the author expects to animate or change something about the element’s contents in the near future."},{name:"scroll-position",description:"Indicates that the author expects to animate or change the scroll position of the element in the near future."}],syntax:"auto | <animateable-feature>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/will-change"}],description:"Provides a rendering hint to the user agent, stating what kinds of changes the author expects to perform on the element.",restrictions:["enum","identifier"]},{name:"stroke",values:[{name:"url()",description:"A URL reference to a paint server element, which is an element that defines a paint server: ‘hatch’, ‘linearGradient’, ‘mesh’, ‘pattern’, ‘radialGradient’ and ‘solidcolor’."},{name:"none",description:"No paint is applied in this layer."}],description:"Paints along the outline of the given graphical element.",restrictions:["color","enum","url"]},{name:"transition-property",values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],syntax:"none | <single-transition-property>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transition-property"}],description:"Specifies the name of the CSS property to which the transition is applied.",restrictions:["property"]},{name:"table-layout",values:[{name:"auto",description:"Use any automatic table layout algorithm."},{name:"fixed",description:"Use the fixed table layout algorithm."}],syntax:"auto | fixed",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/table-layout"}],description:"Controls the algorithm used to lay out the table cells, rows, and columns.",restrictions:["enum"]},{name:"transition-delay",syntax:"<time>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transition-delay"}],description:"Defines when the transition will start. It allows a transition to begin execution some period of time from when it is applied.",restrictions:["time"]},{name:"flex-basis",values:[{name:"auto",description:"Retrieves the value of the main size property as the used 'flex-basis'."},{name:"content",description:"Indicates automatic sizing, based on the flex item’s content."}],syntax:"content | <'width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-basis"}],description:"Sets the flex basis.",restrictions:["length","number","percentage"]},{name:"overflow-wrap",values:[{name:"break-word",description:"An otherwise unbreakable sequence of characters may be broken at an arbitrary point if there are no otherwise-acceptable break points in the line."},{name:"normal",description:"Lines may break only at allowed break points."}],syntax:"normal | break-word | anywhere",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-wrap"}],description:"Specifies whether the UA may break within a word to prevent overflow when an otherwise-unbreakable string is too long to fit within the line box.",restrictions:["enum"]},{name:"border-top-width",syntax:"<line-width>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top-width"}],description:"Sets the thickness of the top border.",restrictions:["length","line-width"]},{name:"outline-width",syntax:"<line-width>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/outline-width"}],description:"Width of the outline.",restrictions:["length","line-width"]},{name:"order",syntax:"<integer>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/order"}],description:"Controls the order in which children of a flex container appear within the flex container, by assigning them to ordinal groups.",restrictions:["integer"]},{name:"border-bottom-width",syntax:"<line-width>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom-width"}],description:"Sets the thickness of the bottom border.",restrictions:["length","line-width"]},{name:"animation-fill-mode",values:[{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"none",description:"There is no change to the property value between the time the animation is applied and the time the animation begins playing or after the animation completes."}],syntax:"<single-animation-fill-mode>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-fill-mode"}],description:"Defines what values are applied by the animation outside the time it is executing.",restrictions:["enum"]},{name:"outline-style",values:[{name:"auto",description:"Permits the user agent to render a custom outline style, typically the default platform style."}],syntax:"auto | <'border-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/outline-style"}],description:"Style of the outline.",restrictions:["line-style","enum"]},{name:"object-fit",browsers:["E16","FF36","S10","C31","O19"],values:[{name:"contain",description:"The replaced content is sized to maintain its aspect ratio while fitting within the element’s content box: its concrete object size is resolved as a contain constraint against the element's used width and height."},{name:"cover",description:"The replaced content is sized to maintain its aspect ratio while filling the element's entire content box: its concrete object size is resolved as a cover constraint against the element’s used width and height."},{name:"fill",description:"The replaced content is sized to fill the element’s content box: the object's concrete object size is the element's used width and height."},{name:"none",description:"The replaced content is not resized to fit inside the element's content box"},{name:"scale-down",description:"Size the content as if ‘none’ or ‘contain’ were specified, whichever would result in a smaller concrete object size."}],syntax:"fill | contain | cover | none | scale-down",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/object-fit"}],description:"Specifies how the contents of a replaced element should be scaled relative to the box established by its used height and width.",restrictions:["enum"]},{name:"stroke-width",description:"Specifies the width of the stroke on the current object.",restrictions:["percentage","length"]},{name:"transition-duration",syntax:"<time>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transition-duration"}],description:"Specifies how long the transition from the old value to the new value should take.",restrictions:["time"]},{name:"animation-delay",syntax:"<time>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-delay"}],description:"Defines when the animation will start.",restrictions:["time"]},{name:"outline-offset",browsers:["E15","FF1.5","S1.2","C1","O9.5"],syntax:"<length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/outline-offset"}],description:"Offset the outline and draw it beyond the border edge.",restrictions:["length"]},{name:"stroke-dashoffset",description:"Specifies the distance into the dash pattern to start the dash.",restrictions:["percentage","length"]},{name:"backface-visibility",values:[{name:"hidden",description:"Back side is hidden."},{name:"visible",description:"Back side is visible."}],syntax:"visible | hidden",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/backface-visibility"}],description:"Determines whether or not the 'back' side of a transformed element is visible when facing the viewer. With an identity transform, the front side of an element faces the viewer.",restrictions:["enum"]},{name:"border-right-width",syntax:"<line-width>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-right-width"}],description:"Sets the thickness of the right border.",restrictions:["length","line-width"]},{name:"flex-flow",values:[{name:"column",description:"The flex container’s main axis has the same orientation as the block axis of the current writing mode."},{name:"column-reverse",description:"Same as 'column', except the main-start and main-end directions are swapped."},{name:"nowrap",description:"The flex container is single-line."},{name:"row",description:"The flex container’s main axis has the same orientation as the inline axis of the current writing mode."},{name:"row-reverse",description:"Same as 'row', except the main-start and main-end directions are swapped."},{name:"wrap",description:"The flexbox is multi-line."},{name:"wrap-reverse",description:"Same as 'wrap', except the cross-start and cross-end directions are swapped."}],syntax:"<'flex-direction'> || <'flex-wrap'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-flow"}],description:"Specifies how flexbox items are placed in the flexbox.",restrictions:["enum"]},{name:"word-spacing",values:[{name:"normal",description:"No additional spacing is applied. Computes to zero."}],syntax:"normal | <length-percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/word-spacing"}],description:"Specifies additional spacing between “words”.",restrictions:["length","percentage"]},{name:"transition-timing-function",syntax:"<timing-function>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transition-timing-function"}],description:"Describes how the intermediate values used during a transition will be calculated.",restrictions:["timing-function"]},{name:"resize",browsers:["FF4","S3","C1","O12.1"],values:[{name:"both",description:"The UA presents a bidirectional resizing mechanism to allow the user to adjust both the height and the width of the element."},{name:"horizontal",description:"The UA presents a unidirectional horizontal resizing mechanism to allow the user to adjust only the width of the element."},{name:"none",description:"The UA does not present a resizing mechanism on the element, and the user is given no direct manipulation mechanism to resize the element."},{name:"vertical",description:"The UA presents a unidirectional vertical resizing mechanism to allow the user to adjust only the height of the element."}],syntax:"none | both | horizontal | vertical | block | inline",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/resize"}],description:"Specifies whether or not an element is resizable by the user, and if so, along which axis/axes.",restrictions:["enum"]},{name:"unicode-bidi",values:[{name:"bidi-override",description:"Inside the element, reordering is strictly in sequence according to the 'direction' property; the implicit part of the bidirectional algorithm is ignored."},{name:"embed",description:"If the element is inline-level, this value opens an additional level of embedding with respect to the bidirectional algorithm. The direction of this embedding level is given by the 'direction' property."},{name:"isolate",description:"The contents of the element are considered to be inside a separate, independent paragraph."},{name:"isolate-override",description:"This combines the isolation behavior of 'isolate' with the directional override behavior of 'bidi-override'"},{name:"normal",description:"The element does not open an additional level of embedding with respect to the bidirectional algorithm. For inline-level elements, implicit reordering works across element boundaries."},{name:"plaintext",description:"For the purposes of the Unicode bidirectional algorithm, the base directionality of each bidi paragraph for which the element forms the containing block is determined not by the element's computed 'direction'."}],syntax:"normal | embed | isolate | bidi-override | isolate-override | plaintext",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/unicode-bidi"}],description:"The level of embedding with respect to the bidirectional algorithm.",restrictions:["enum"]},{name:"unicode-range",values:[{name:"U+26",description:"Ampersand."},{name:"U+20-24F, U+2B0-2FF, U+370-4FF, U+1E00-1EFF, U+2000-20CF, U+2100-23FF, U+2500-26FF, U+E000-F8FF, U+FB00–FB4F",description:"WGL4 character set (Pan-European)."},{name:"U+20-17F, U+2B0-2FF, U+2000-206F, U+20A0-20CF, U+2100-21FF, U+2600-26FF",description:"The Multilingual European Subset No. 1. Latin. Covers ~44 languages."},{name:"U+20-2FF, U+370-4FF, U+1E00-20CF, U+2100-23FF, U+2500-26FF, U+FB00-FB4F, U+FFF0-FFFD",description:"The Multilingual European Subset No. 2. Latin, Greek, and Cyrillic. Covers ~128 language."},{name:"U+20-4FF, U+530-58F, U+10D0-10FF, U+1E00-23FF, U+2440-245F, U+2500-26FF, U+FB00-FB4F, U+FE20-FE2F, U+FFF0-FFFD",description:"The Multilingual European Subset No. 3. Covers all characters belonging to European scripts."},{name:"U+00-7F",description:"Basic Latin (ASCII)."},{name:"U+80-FF",description:"Latin-1 Supplement. Accented characters for Western European languages, common punctuation characters, multiplication and division signs."},{name:"U+100-17F",description:"Latin Extended-A. Accented characters for for Czech, Dutch, Polish, and Turkish."},{name:"U+180-24F",description:"Latin Extended-B. Croatian, Slovenian, Romanian, Non-European and historic latin, Khoisan, Pinyin, Livonian, Sinology."},{name:"U+1E00-1EFF",description:"Latin Extended Additional. Vietnamese, German captial sharp s, Medievalist, Latin general use."},{name:"U+250-2AF",description:"International Phonetic Alphabet Extensions."},{name:"U+370-3FF",description:"Greek and Coptic."},{name:"U+1F00-1FFF",description:"Greek Extended. Accented characters for polytonic Greek."},{name:"U+400-4FF",description:"Cyrillic."},{name:"U+500-52F",description:"Cyrillic Supplement. Extra letters for Komi, Khanty, Chukchi, Mordvin, Kurdish, Aleut, Chuvash, Abkhaz, Azerbaijani, and Orok."},{name:"U+00-52F, U+1E00-1FFF, U+2200–22FF",description:"Latin, Greek, Cyrillic, some punctuation and symbols."},{name:"U+530–58F",description:"Armenian."},{name:"U+590–5FF",description:"Hebrew."},{name:"U+600–6FF",description:"Arabic."},{name:"U+750–77F",description:"Arabic Supplement. Additional letters for African languages, Khowar, Torwali, Burushaski, and early Persian."},{name:"U+8A0–8FF",description:"Arabic Extended-A. Additional letters for African languages, European and Central Asian languages, Rohingya, Tamazight, Arwi, and Koranic annotation signs."},{name:"U+700–74F",description:"Syriac."},{name:"U+900–97F",description:"Devanagari."},{name:"U+980–9FF",description:"Bengali."},{name:"U+A00–A7F",description:"Gurmukhi."},{name:"U+A80–AFF",description:"Gujarati."},{name:"U+B00–B7F",description:"Oriya."},{name:"U+B80–BFF",description:"Tamil."},{name:"U+C00–C7F",description:"Telugu."},{name:"U+C80–CFF",description:"Kannada."},{name:"U+D00–D7F",description:"Malayalam."},{name:"U+D80–DFF",description:"Sinhala."},{name:"U+118A0–118FF",description:"Warang Citi."},{name:"U+E00–E7F",description:"Thai."},{name:"U+1A20–1AAF",description:"Tai Tham."},{name:"U+AA80–AADF",description:"Tai Viet."},{name:"U+E80–EFF",description:"Lao."},{name:"U+F00–FFF",description:"Tibetan."},{name:"U+1000–109F",description:"Myanmar (Burmese)."},{name:"U+10A0–10FF",description:"Georgian."},{name:"U+1200–137F",description:"Ethiopic."},{name:"U+1380–139F",description:"Ethiopic Supplement. Extra Syllables for Sebatbeit, and Tonal marks"},{name:"U+2D80–2DDF",description:"Ethiopic Extended. Extra Syllables for Me'en, Blin, and Sebatbeit."},{name:"U+AB00–AB2F",description:"Ethiopic Extended-A. Extra characters for Gamo-Gofa-Dawro, Basketo, and Gumuz."},{name:"U+1780–17FF",description:"Khmer."},{name:"U+1800–18AF",description:"Mongolian."},{name:"U+1B80–1BBF",description:"Sundanese."},{name:"U+1CC0–1CCF",description:"Sundanese Supplement. Punctuation."},{name:"U+4E00–9FD5",description:"CJK (Chinese, Japanese, Korean) Unified Ideographs. Most common ideographs for modern Chinese and Japanese."},{name:"U+3400–4DB5",description:"CJK Unified Ideographs Extension A. Rare ideographs."},{name:"U+2F00–2FDF",description:"Kangxi Radicals."},{name:"U+2E80–2EFF",description:"CJK Radicals Supplement. Alternative forms of Kangxi Radicals."},{name:"U+1100–11FF",description:"Hangul Jamo."},{name:"U+AC00–D7AF",description:"Hangul Syllables."},{name:"U+3040–309F",description:"Hiragana."},{name:"U+30A0–30FF",description:"Katakana."},{name:"U+A5, U+4E00-9FFF, U+30??, U+FF00-FF9F",description:"Japanese Kanji, Hiragana and Katakana characters plus Yen/Yuan symbol."},{name:"U+A4D0–A4FF",description:"Lisu."},{name:"U+A000–A48F",description:"Yi Syllables."},{name:"U+A490–A4CF",description:"Yi Radicals."},{name:"U+2000-206F",description:"General Punctuation."},{name:"U+3000–303F",description:"CJK Symbols and Punctuation."},{name:"U+2070–209F",description:"Superscripts and Subscripts."},{name:"U+20A0–20CF",description:"Currency Symbols."},{name:"U+2100–214F",description:"Letterlike Symbols."},{name:"U+2150–218F",description:"Number Forms."},{name:"U+2190–21FF",description:"Arrows."},{name:"U+2200–22FF",description:"Mathematical Operators."},{name:"U+2300–23FF",description:"Miscellaneous Technical."},{name:"U+E000-F8FF",description:"Private Use Area."},{name:"U+FB00–FB4F",description:"Alphabetic Presentation Forms. Ligatures for latin, Armenian, and Hebrew."},{name:"U+FB50–FDFF",description:"Arabic Presentation Forms-A. Contextual forms / ligatures for Persian, Urdu, Sindhi, Central Asian languages, etc, Arabic pedagogical symbols, word ligatures."},{name:"U+1F600–1F64F",description:"Emoji: Emoticons."},{name:"U+2600–26FF",description:"Emoji: Miscellaneous Symbols."},{name:"U+1F300–1F5FF",description:"Emoji: Miscellaneous Symbols and Pictographs."},{name:"U+1F900–1F9FF",description:"Emoji: Supplemental Symbols and Pictographs."},{name:"U+1F680–1F6FF",description:"Emoji: Transport and Map Symbols."}],syntax:"<unicode-range>#",description:"@font-face descriptor. Defines the set of Unicode codepoints that may be supported by the font face for which it is declared.",restrictions:["unicode-range"]},{name:"stroke-dasharray",values:[{name:"none",description:"Indicates that no dashing is used."}],description:"Controls the pattern of dashes and gaps used to stroke paths.",restrictions:["length","percentage","number","enum"]},{name:"animation-iteration-count",values:[{name:"infinite",description:"Causes the animation to repeat forever."}],syntax:"<single-animation-iteration-count>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-iteration-count"}],description:"Defines the number of times an animation cycle is played. The default value is one, meaning the animation will play from beginning to end once.",restrictions:["number","enum"]},{name:"image-rendering",browsers:["FF3.6","S6","C13","O15"],values:[{name:"auto",description:"The image should be scaled with an algorithm that maximizes the appearance of the image."},{name:"crisp-edges",description:"The image must be scaled with an algorithm that preserves contrast and edges in the image, and which does not smooth colors or introduce blur to the image in the process."},{name:"-moz-crisp-edges",browsers:["FF3.6","S6","C13","O15"]},{name:"optimizeQuality",description:"Deprecated."},{name:"optimizeSpeed",description:"Deprecated."},{name:"pixelated",description:"When scaling the image up, the 'nearest neighbor' or similar algorithm must be used, so that the image appears to be simply composed of very large pixels."}],syntax:"auto | crisp-edges | pixelated",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/image-rendering"}],description:"Provides a hint to the user-agent about what aspects of an image are most important to preserve when the image is scaled, to aid the user-agent in the choice of an appropriate scaling algorithm.",restrictions:["enum"]},{name:"border-left-width",syntax:"<line-width>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-left-width"}],description:"Sets the thickness of the left border.",restrictions:["length","line-width"]},{name:"align-content",values:[{name:"center",description:"Lines are packed toward the center of the flex container."},{name:"flex-end",description:"Lines are packed toward the end of the flex container."},{name:"flex-start",description:"Lines are packed toward the start of the flex container."},{name:"space-around",description:"Lines are evenly distributed in the flex container, with half-size spaces on either end."},{name:"space-between",description:"Lines are evenly distributed in the flex container."},{name:"stretch",description:"Lines stretch to take up the remaining space."}],syntax:"normal | <baseline-position> | <content-distribution> | <overflow-position>? <content-position>",description:"Aligns a flex container’s lines within the flex container when there is extra space in the cross-axis, similar to how 'justify-content' aligns individual items within the main-axis.",restrictions:["enum"]},{name:"border-bottom-style",syntax:"<line-style>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom-style"}],description:"Sets the style of the bottom border.",restrictions:["line-style"]},{name:"perspective",values:[{name:"none",description:"No perspective transform is applied."}],syntax:"none | <length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/perspective"}],description:"Applies the same transform as the perspective(<number>) transform function, except that it applies only to the positioned or transformed children of the element, not to the transform on the element itself.",restrictions:["length","enum"]},{name:"border-top-style",syntax:"<line-style>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top-style"}],description:"Sets the style of the top border.",restrictions:["line-style"]},{name:"text-size-adjust",status:"experimental",syntax:"none | auto | <percentage>",browsers:["E12","C54","O41"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-size-adjust"}],description:"The text-size-adjust CSS property controls the text inflation algorithm used on some smartphones and tablets. Other browsers will ignore this property."},{name:"transform-style",browsers:["E12","FF16","S9","C36","O15"],values:[{name:"flat",description:"All children of this element are rendered flattened into the 2D plane of the element."},{name:"preserve-3d",browsers:["E12","FF16","S9","C36","O15"],description:"Flattening is not performed, so children maintain their position in 3D space."}],syntax:"flat | preserve-3d",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transform-style"}],description:"Defines how nested elements are rendered in 3D space.",restrictions:["enum"]},{name:"grid-template-columns",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"none",description:"There is no explicit grid; any rows/columns will be implicitly generated."},{name:"min-content",description:"Represents the largest min-content contribution of the grid items occupying the grid track."},{name:"max-content",description:"Represents the largest max-content contribution of the grid items occupying the grid track."},{name:"auto",description:"As a maximum, identical to 'max-content'. As a minimum, represents the largest minimum size (as specified by min-width/min-height) of the grid items occupying the grid track."},{name:"subgrid",description:"Indicates that the grid will align to its parent grid in that axis."},{name:"minmax()",description:"Defines a size range greater than or equal to min and less than or equal to max."},{name:"repeat()",description:"Represents a repeated fragment of the track list, allowing a large number of columns or rows that exhibit a recurring pattern to be written in a more compact form."}],syntax:"none | <track-list> | <auto-track-list> | subgrid <line-name-list>?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-template-columns"}],description:"specifies, as a space-separated track list, the line names and track sizing functions of the grid.",restrictions:["identifier","length","percentage","enum"]},{name:"list-style-position",values:[{name:"inside",description:"The marker box is outside the principal block box, as described in the section on the ::marker pseudo-element below."},{name:"outside",description:"The ::marker pseudo-element is an inline element placed immediately before all ::before pseudo-elements in the principal block box, after which the element's content flows."}],syntax:"inside | outside",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/list-style-position"}],description:"Specifies the position of the '::marker' pseudo-element's box in the list item.",restrictions:["enum"]},{name:"animation-direction",values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],syntax:"<single-animation-direction>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-direction"}],description:"Defines whether or not the animation should play in reverse on alternate cycles.",restrictions:["enum"]},{name:"animation-play-state",values:[{name:"paused",description:"A running animation will be paused."},{name:"running",description:"Resume playback of a paused animation."}],syntax:"<single-animation-play-state>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-play-state"}],description:"Defines whether the animation is running or paused.",restrictions:["enum"]},{name:"hyphens",values:[{name:"auto",description:"Conditional hyphenation characters inside a word, if present, take priority over automatic resources when determining hyphenation points within the word."},{name:"manual",description:"Words are only broken at line breaks where there are characters inside the word that suggest line break opportunities"},{name:"none",description:"Words are not broken at line breaks, even if characters inside the word suggest line break points."}],syntax:"none | manual | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/hyphens"}],description:"Controls whether hyphenation is allowed to create more break opportunities within a line of text.",restrictions:["enum"]},{name:"quotes",values:[{name:"none",description:"The 'open-quote' and 'close-quote' values of the 'content' property produce no quotations marks, as if they were 'no-open-quote' and 'no-close-quote' respectively."}],syntax:"none | auto | [ <string> <string> ]+",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/quotes"}],description:"Specifies quotation marks for any number of embedded quotations.",restrictions:["string"]},{name:"background-origin",syntax:"<box>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-origin"}],description:"For elements rendered as a single box, specifies the background positioning area. For elements rendered as multiple boxes (e.g., inline boxes on several lines, boxes on several pages) specifies which boxes 'box-decoration-break' operates on to determine the background positioning area(s).",restrictions:["box"]},{name:"background-attachment",values:[{name:"fixed",description:"The background is fixed with regard to the viewport. In paged media where there is no viewport, a 'fixed' background is fixed with respect to the page box and therefore replicated on every page."},{name:"local",description:"The background is fixed with regard to the element’s contents: if the element has a scrolling mechanism, the background scrolls with the element’s contents."},{name:"scroll",description:"The background is fixed with regard to the element itself and does not scroll with its contents. (It is effectively attached to the element’s border.)"}],syntax:"<attachment>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-attachment"}],description:"Specifies whether the background images are fixed with regard to the viewport ('fixed') or scroll along with the element ('scroll') or its contents ('local').",restrictions:["enum"]},{name:"background-position-x",values:[{name:"center",description:"Equivalent to '50%' ('left 50%') for the horizontal position if the horizontal position is not otherwise specified, or '50%' ('top 50%') for the vertical position if it is."},{name:"left",description:"Equivalent to '0%' for the horizontal position if one or two values are given, otherwise specifies the left edge as the origin for the next offset."},{name:"right",description:"Equivalent to '100%' for the horizontal position if one or two values are given, otherwise specifies the right edge as the origin for the next offset."}],status:"experimental",syntax:"[ center | [ left | right | x-start | x-end ]? <length-percentage>? ]#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-position-x"}],description:"If background images have been specified, this property specifies their initial position (after any resizing) within their corresponding background positioning area.",restrictions:["length","percentage"]},{name:"background-position-y",values:[{name:"bottom",description:"Equivalent to '100%' for the vertical position if one or two values are given, otherwise specifies the bottom edge as the origin for the next offset."},{name:"center",description:"Equivalent to '50%' ('left 50%') for the horizontal position if the horizontal position is not otherwise specified, or '50%' ('top 50%') for the vertical position if it is."},{name:"top",description:"Equivalent to '0%' for the vertical position if one or two values are given, otherwise specifies the top edge as the origin for the next offset."}],status:"experimental",syntax:"[ center | [ top | bottom | y-start | y-end ]? <length-percentage>? ]#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-position-y"}],description:"If background images have been specified, this property specifies their initial position (after any resizing) within their corresponding background positioning area.",restrictions:["length","percentage"]},{name:"font-feature-settings",values:[{name:'"aalt"',description:"Access All Alternates."},{name:'"abvf"',description:"Above-base Forms. Required in Khmer script."},{name:'"abvm"',description:"Above-base Mark Positioning. Required in Indic scripts."},{name:'"abvs"',description:"Above-base Substitutions. Required in Indic scripts."},{name:'"afrc"',description:"Alternative Fractions."},{name:'"akhn"',description:"Akhand. Required in most Indic scripts."},{name:'"blwf"',description:"Below-base Form. Required in a number of Indic scripts."},{name:'"blwm"',description:"Below-base Mark Positioning. Required in Indic scripts."},{name:'"blws"',description:"Below-base Substitutions. Required in Indic scripts."},{name:'"calt"',description:"Contextual Alternates."},{name:'"case"',description:"Case-Sensitive Forms. Applies only to European scripts; particularly prominent in Spanish-language setting."},{name:'"ccmp"',description:"Glyph Composition/Decomposition."},{name:'"cfar"',description:"Conjunct Form After Ro. Required in Khmer scripts."},{name:'"cjct"',description:"Conjunct Forms. Required in Indic scripts that show similarity to Devanagari."},{name:'"clig"',description:"Contextual Ligatures."},{name:'"cpct"',description:"Centered CJK Punctuation. Used primarily in Chinese fonts."},{name:'"cpsp"',description:"Capital Spacing. Should not be used in connecting scripts (e.g. most Arabic)."},{name:'"cswh"',description:"Contextual Swash."},{name:'"curs"',description:"Cursive Positioning. Can be used in any cursive script."},{name:'"c2pc"',description:"Petite Capitals From Capitals. Applies only to bicameral scripts."},{name:'"c2sc"',description:"Small Capitals From Capitals. Applies only to bicameral scripts."},{name:'"dist"',description:"Distances. Required in Indic scripts."},{name:'"dlig"',description:"Discretionary ligatures."},{name:'"dnom"',description:"Denominators."},{name:'"dtls"',description:"Dotless Forms. Applied to math formula layout."},{name:'"expt"',description:"Expert Forms. Applies only to Japanese."},{name:'"falt"',description:"Final Glyph on Line Alternates. Can be used in any cursive script."},{name:'"fin2"',description:"Terminal Form #2. Used only with the Syriac script."},{name:'"fin3"',description:"Terminal Form #3. Used only with the Syriac script."},{name:'"fina"',description:"Terminal Forms. Can be used in any alphabetic script."},{name:'"flac"',description:"Flattened ascent forms. Applied to math formula layout."},{name:'"frac"',description:"Fractions."},{name:'"fwid"',description:"Full Widths. Applies to any script which can use monospaced forms."},{name:'"half"',description:"Half Forms. Required in Indic scripts that show similarity to Devanagari."},{name:'"haln"',description:"Halant Forms. Required in Indic scripts."},{name:'"halt"',description:"Alternate Half Widths. Used only in CJKV fonts."},{name:'"hist"',description:"Historical Forms."},{name:'"hkna"',description:"Horizontal Kana Alternates. Applies only to fonts that support kana (hiragana and katakana)."},{name:'"hlig"',description:"Historical Ligatures."},{name:'"hngl"',description:"Hangul. Korean only."},{name:'"hojo"',description:"Hojo Kanji Forms (JIS X 0212-1990 Kanji Forms). Used only with Kanji script."},{name:'"hwid"',description:"Half Widths. Generally used only in CJKV fonts."},{name:'"init"',description:"Initial Forms. Can be used in any alphabetic script."},{name:'"isol"',description:"Isolated Forms. Can be used in any cursive script."},{name:'"ital"',description:"Italics. Applies mostly to Latin; note that many non-Latin fonts contain Latin as well."},{name:'"jalt"',description:"Justification Alternates. Can be used in any cursive script."},{name:'"jp78"',description:"JIS78 Forms. Applies only to Japanese."},{name:'"jp83"',description:"JIS83 Forms. Applies only to Japanese."},{name:'"jp90"',description:"JIS90 Forms. Applies only to Japanese."},{name:'"jp04"',description:"JIS2004 Forms. Applies only to Japanese."},{name:'"kern"',description:"Kerning."},{name:'"lfbd"',description:"Left Bounds."},{name:'"liga"',description:"Standard Ligatures."},{name:'"ljmo"',description:"Leading Jamo Forms. Required for Hangul script when Ancient Hangul writing system is supported."},{name:'"lnum"',description:"Lining Figures."},{name:'"locl"',description:"Localized Forms."},{name:'"ltra"',description:"Left-to-right glyph alternates."},{name:'"ltrm"',description:"Left-to-right mirrored forms."},{name:'"mark"',description:"Mark Positioning."},{name:'"med2"',description:"Medial Form #2. Used only with the Syriac script."},{name:'"medi"',description:"Medial Forms."},{name:'"mgrk"',description:"Mathematical Greek."},{name:'"mkmk"',description:"Mark to Mark Positioning."},{name:'"nalt"',description:"Alternate Annotation Forms."},{name:'"nlck"',description:"NLC Kanji Forms. Used only with Kanji script."},{name:'"nukt"',description:"Nukta Forms. Required in Indic scripts.."},{name:'"numr"',description:"Numerators."},{name:'"onum"',description:"Oldstyle Figures."},{name:'"opbd"',description:"Optical Bounds."},{name:'"ordn"',description:"Ordinals. Applies mostly to Latin script."},{name:'"ornm"',description:"Ornaments."},{name:'"palt"',description:"Proportional Alternate Widths. Used mostly in CJKV fonts."},{name:'"pcap"',description:"Petite Capitals."},{name:'"pkna"',description:"Proportional Kana. Generally used only in Japanese fonts."},{name:'"pnum"',description:"Proportional Figures."},{name:'"pref"',description:"Pre-base Forms. Required in Khmer and Myanmar (Burmese) scripts and southern Indic scripts that may display a pre-base form of Ra."},{name:'"pres"',description:"Pre-base Substitutions. Required in Indic scripts."},{name:'"pstf"',description:"Post-base Forms. Required in scripts of south and southeast Asia that have post-base forms for consonants eg: Gurmukhi, Malayalam, Khmer."},{name:'"psts"',description:"Post-base Substitutions."},{name:'"pwid"',description:"Proportional Widths."},{name:'"qwid"',description:"Quarter Widths. Generally used only in CJKV fonts."},{name:'"rand"',description:"Randomize."},{name:'"rclt"',description:"Required Contextual Alternates. May apply to any script, but is especially important for many styles of Arabic."},{name:'"rlig"',description:"Required Ligatures. Applies to Arabic and Syriac. May apply to some other scripts."},{name:'"rkrf"',description:"Rakar Forms. Required in Devanagari and Gujarati scripts."},{name:'"rphf"',description:"Reph Form. Required in Indic scripts. E.g. Devanagari, Kannada."},{name:'"rtbd"',description:"Right Bounds."},{name:'"rtla"',description:"Right-to-left alternates."},{name:'"rtlm"',description:"Right-to-left mirrored forms."},{name:'"ruby"',description:"Ruby Notation Forms. Applies only to Japanese."},{name:'"salt"',description:"Stylistic Alternates."},{name:'"sinf"',description:"Scientific Inferiors."},{name:'"size"',description:"Optical size."},{name:'"smcp"',description:"Small Capitals. Applies only to bicameral scripts."},{name:'"smpl"',description:"Simplified Forms. Applies only to Chinese and Japanese."},{name:'"ssty"',description:"Math script style alternates."},{name:'"stch"',description:"Stretching Glyph Decomposition."},{name:'"subs"',description:"Subscript."},{name:'"sups"',description:"Superscript."},{name:'"swsh"',description:"Swash. Does not apply to ideographic scripts."},{name:'"titl"',description:"Titling."},{name:'"tjmo"',description:"Trailing Jamo Forms. Required for Hangul script when Ancient Hangul writing system is supported."},{name:'"tnam"',description:"Traditional Name Forms. Applies only to Japanese."},{name:'"tnum"',description:"Tabular Figures."},{name:'"trad"',description:"Traditional Forms. Applies only to Chinese and Japanese."},{name:'"twid"',description:"Third Widths. Generally used only in CJKV fonts."},{name:'"unic"',description:"Unicase."},{name:'"valt"',description:"Alternate Vertical Metrics. Applies only to scripts with vertical writing modes."},{name:'"vatu"',description:"Vattu Variants. Used for Indic scripts. E.g. Devanagari."},{name:'"vert"',description:"Vertical Alternates. Applies only to scripts with vertical writing modes."},{name:'"vhal"',description:"Alternate Vertical Half Metrics. Used only in CJKV fonts."},{name:'"vjmo"',description:"Vowel Jamo Forms. Required for Hangul script when Ancient Hangul writing system is supported."},{name:'"vkna"',description:"Vertical Kana Alternates. Applies only to fonts that support kana (hiragana and katakana)."},{name:'"vkrn"',description:"Vertical Kerning."},{name:'"vpal"',description:"Proportional Alternate Vertical Metrics. Used mostly in CJKV fonts."},{name:'"vrt2"',description:"Vertical Alternates and Rotation. Applies only to scripts with vertical writing modes."},{name:'"zero"',description:"Slashed Zero."},{name:"normal",description:"No change in glyph substitution or positioning occurs."},{name:"off",description:"Disable feature."},{name:"on",description:"Enable feature."}],syntax:"normal | <feature-tag-value>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-feature-settings"}],description:"Provides low-level control over OpenType font features. It is intended as a way of providing access to font features that are not widely used but are needed for a particular use case.",restrictions:["string","integer"]},{name:"border-left-style",syntax:"<line-style>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-left-style"}],description:"Sets the style of the left border.",restrictions:["line-style"]},{name:"font-stretch",values:[{name:"condensed"},{name:"expanded"},{name:"extra-condensed"},{name:"extra-expanded"},{name:"narrower",description:"Indicates a narrower value relative to the width of the parent element."},{name:"normal"},{name:"semi-condensed"},{name:"semi-expanded"},{name:"ultra-condensed"},{name:"ultra-expanded"},{name:"wider",description:"Indicates a wider value relative to the width of the parent element."}],syntax:"<font-stretch-absolute>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-stretch"}],description:"Selects a normal, condensed, or expanded face from a font family.",restrictions:["enum"]},{name:"outline-color",values:[{name:"invert",description:"Performs a color inversion on the pixels on the screen."}],syntax:"<color> | invert",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/outline-color"}],description:"The color of the outline.",restrictions:["enum","color"]},{name:"border-right-style",syntax:"<line-style>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-right-style"}],description:"Sets the style of the right border.",restrictions:["line-style"]},{name:"clip-path",values:[{name:"none",description:"No clipping path gets created."},{name:"url()",description:"References a <clipPath> element to create a clipping path."}],syntax:"<clip-source> | [ <basic-shape> || <geometry-box> ] | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/clip-path"}],description:"Specifies a clipping path where everything inside the path is visible and everything outside is clipped out.",restrictions:["url","shape","geometry-box","enum"]},{name:"list-style-image",values:[{name:"none",description:"The default contents of the of the list item’s marker are given by 'list-style-type' instead."}],syntax:"<url> | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/list-style-image"}],description:"Sets the image that will be used as the list item marker. When the image is available, it will replace the marker set with the 'list-style-type' marker.",restrictions:["image"]},{name:"counter-increment",values:[{name:"none",description:"This element does not alter the value of any counters."}],syntax:"[ <custom-ident> <integer>? ]+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/counter-increment"}],description:"Manipulate the value of existing counters.",restrictions:["identifier","integer"]},{name:"counter-reset",values:[{name:"none",description:"The counter is not modified."}],syntax:"[ <custom-ident> <integer>? ]+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/counter-reset"}],description:"Property accepts one or more names of counters (identifiers), each one optionally followed by an integer. The integer gives the value that the counter is set to on each occurrence of the element.",restrictions:["identifier","integer"]},{name:"font-display",status:"experimental",syntax:"[ auto | block | swap | fallback | optional ]",description:"The font-display descriptor determines how a font face is displayed based on whether and when it is downloaded and ready to use."},{name:"border-image",values:[{name:"auto",description:"If 'auto' is specified then the border image width is the intrinsic width or height (whichever is applicable) of the corresponding image slice. If the image does not have the required intrinsic dimension then the corresponding border-width is used instead."},{name:"fill",description:"Causes the middle part of the border-image to be preserved."},{name:"none",description:"Use the border styles."},{name:"repeat",description:"The image is tiled (repeated) to fill the area."},{name:"round",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the image is rescaled so that it does."},{name:"space",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the extra space is distributed around the tiles."},{name:"stretch",description:"The image is stretched to fill the area."},{name:"url()"}],syntax:"<'border-image-source'> || <'border-image-slice'> [ / <'border-image-width'> | / <'border-image-width'>? / <'border-image-outset'> ]? || <'border-image-repeat'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image"}],description:"Shorthand property for setting 'border-image-source', 'border-image-slice', 'border-image-width', 'border-image-outset' and 'border-image-repeat'. Omitted values are set to their initial values.",restrictions:["length","percentage","number","url","enum"]},{name:"column-count",values:[{name:"auto",description:"Determines the number of columns by the 'column-width' property and the element width."}],syntax:"<integer> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-count"}],description:"Describes the optimal number of columns into which the content of the element will be flowed.",restrictions:["integer","enum"]},{name:"column-gap",values:[{name:"normal",description:"User agent specific and typically equivalent to 1em."}],syntax:"normal | <length-percentage>",description:"Sets the gap between columns. If there is a column rule between columns, it will appear in the middle of the gap.",restrictions:["length","enum"]},{name:"text-decoration-color",browsers:["FF36","S12.1","C57","O44"],syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-color"}],description:"Specifies the color of text decoration (underlines overlines, and line-throughs) set on the element with text-decoration-line.",restrictions:["color"]},{name:"all",browsers:["FF27","S9.1","C37","O24"],values:[],syntax:"initial | inherit | unset | revert",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/all"}],description:"Shorthand that resets all properties except 'direction' and 'unicode-bidi'.",restrictions:["enum"]},{name:"object-position",browsers:["E16","FF36","S10","C31","O19"],syntax:"<position>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/object-position"}],description:"Determines the alignment of the replaced element inside its box.",restrictions:["position","length","percentage"]},{name:"page-break-inside",values:[{name:"auto",description:"Neither force nor forbid a page break inside the generated box."},{name:"avoid",description:"Avoid a page break inside the generated box."}],syntax:"auto | avoid",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/page-break-inside"}],description:"Defines rules for page breaks inside an element.",restrictions:["enum"]},{name:"stroke-linecap",values:[{name:"butt",description:"Indicates that the stroke for each subpath does not extend beyond its two endpoints."},{name:"round",description:"Indicates that at each end of each subpath, the shape representing the stroke will be extended by a half circle with a radius equal to the stroke width."},{name:"square",description:"Indicates that at the end of each subpath, the shape representing the stroke will be extended by a rectangle with the same width as the stroke width and whose length is half of the stroke width."}],description:"Specifies the shape to be used at the end of open subpaths when they are stroked.",restrictions:["enum"]},{name:"size",browsers:["C","O8"],restrictions:["length"]},{name:"empty-cells",values:[{name:"hide",description:"No borders or backgrounds are drawn around/behind empty cells."},{name:"-moz-show-background"},{name:"show",description:"Borders and backgrounds are drawn around/behind empty cells (like normal cells)."}],syntax:"show | hide",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/empty-cells"}],description:"In the separated borders model, this property controls the rendering of borders and backgrounds around cells that have no visible content.",restrictions:["enum"]},{name:"page-break-after",values:[{name:"always",description:"Always force a page break after the generated box."},{name:"auto",description:"Neither force nor forbid a page break after generated box."},{name:"avoid",description:"Avoid a page break after the generated box."},{name:"left",description:"Force one or two page breaks after the generated box so that the next page is formatted as a left page."},{name:"right",description:"Force one or two page breaks after the generated box so that the next page is formatted as a right page."}],syntax:"auto | always | avoid | left | right | recto | verso",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/page-break-after"}],description:"Defines rules for page breaks after an element.",restrictions:["enum"]},{name:"fill-opacity",description:"Specifies the opacity of the painting operation used to paint the interior the current object.",restrictions:["number(0-1)"]},{name:"grid-gap",browsers:["FF52","C57","S10.1","O44"],status:"obsolete",syntax:"<'grid-row-gap'> <'grid-column-gap'>?",description:"Shorthand that specifies the gutters between grid columns and grid rows in one declaration. Replaced by 'gap' property.",restrictions:["length"]},{name:"margin-block-end",browsers:["FF41","S12.1","C69","O56"],values:[{name:"auto"}],syntax:"<'margin-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-block-end"}],description:"Logical 'margin-bottom'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"contain",browsers:["FF69","C52","O40"],values:[{name:"none",description:"Indicates that the property has no effect."},{name:"strict",description:"Turns on all forms of containment for the element."},{name:"content",description:"All containment rules except size are applied to the element."},{name:"size",description:"For properties that can have effects on more than just an element and its descendants, those effects don't escape the containing element."},{name:"layout",description:"Turns on layout containment for the element."},{name:"style",description:"Turns on style containment for the element."},{name:"paint",description:"Turns on paint containment for the element."}],status:"experimental",syntax:"none | strict | content | [ size || layout || style || paint ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/contain"}],description:"Indicates that an element and its contents are, as much as possible, independent of the rest of the document tree.",restrictions:["enum"]},{name:"padding-inline-start",browsers:["FF41","S12.1","C69","O56"],syntax:"<'padding-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-inline-start"}],description:"Logical 'padding-left'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"margin-inline-start",browsers:["FF41","S12.1","C69","O56"],values:[{name:"auto"}],syntax:"<'margin-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-inline-start"}],description:"Logical 'margin-left'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"margin-inline-end",browsers:["FF41","S12.1","C69","O56"],values:[{name:"auto"}],syntax:"<'margin-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-inline-end"}],description:"Logical 'margin-right'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"grid-template-rows",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"none",description:"There is no explicit grid; any rows/columns will be implicitly generated."},{name:"min-content",description:"Represents the largest min-content contribution of the grid items occupying the grid track."},{name:"max-content",description:"Represents the largest max-content contribution of the grid items occupying the grid track."},{name:"auto",description:"As a maximum, identical to 'max-content'. As a minimum, represents the largest minimum size (as specified by min-width/min-height) of the grid items occupying the grid track."},{name:"subgrid",description:"Indicates that the grid will align to its parent grid in that axis."},{name:"minmax()",description:"Defines a size range greater than or equal to min and less than or equal to max."},{name:"repeat()",description:"Represents a repeated fragment of the track list, allowing a large number of columns or rows that exhibit a recurring pattern to be written in a more compact form."}],syntax:"none | <track-list> | <auto-track-list> | subgrid <line-name-list>?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-template-rows"}],description:"specifies, as a space-separated track list, the line names and track sizing functions of the grid.",restrictions:["identifier","length","percentage","string","enum"]},{name:"padding-inline-end",browsers:["FF41","S12.1","C69","O56"],syntax:"<'padding-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-inline-end"}],description:"Logical 'padding-right'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"stroke-opacity",description:"Specifies the opacity of the painting operation used to stroke the current object.",restrictions:["number(0-1)"]},{name:"orphans",browsers:["E12","S1.3","C25","IE8","O9.2"],syntax:"<integer>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/orphans"}],description:"Specifies the minimum number of line boxes in a block container that must be left in a fragment before a fragmentation break.",restrictions:["integer"]},{name:"shape-outside",browsers:["FF62","S10.1","C37","O24"],values:[{name:"margin-box",description:"The background is painted within (clipped to) the margin box."},{name:"none",description:"The float area is unaffected."}],syntax:"none | <shape-box> || <basic-shape> | <image>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/shape-outside"}],description:"Specifies an orthogonal rotation to be applied to an image before it is laid out.",restrictions:["image","box","shape","enum"]},{name:"caption-side",values:[{name:"bottom",description:"Positions the caption box below the table box."},{name:"top",description:"Positions the caption box above the table box."}],syntax:"top | bottom | block-start | block-end | inline-start | inline-end",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/caption-side"}],description:"Specifies the position of the caption box with respect to the table box.",restrictions:["enum"]},{name:"widows",browsers:["E12","S1.3","C25","IE8","O9.2"],syntax:"<integer>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/widows"}],description:"Specifies the minimum number of line boxes of a block container that must be left in a fragment after a break.",restrictions:["integer"]},{name:"grid-column",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line> [ / <grid-line> ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-column"}],description:"Shorthand for 'grid-column-start' and 'grid-column-end'.",restrictions:["identifier","integer","enum"]},{name:"perspective-origin",syntax:"<position>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/perspective-origin"}],description:"Establishes the origin for the perspective property. It effectively sets the X and Y position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"column-width",values:[{name:"auto",description:"The width depends on the values of other properties."}],syntax:"<length> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-width"}],description:"Describes the width of columns in multicol elements.",restrictions:["length","enum"]},{name:"mix-blend-mode",browsers:["FF32","S8","C41","O28"],values:[{name:"normal",description:"Default attribute which specifies no blending"},{name:"multiply",description:"The source color is multiplied by the destination color and replaces the destination."},{name:"screen",description:"Multiplies the complements of the backdrop and source color values, then complements the result."},{name:"overlay",description:"Multiplies or screens the colors, depending on the backdrop color value."},{name:"darken",description:"Selects the darker of the backdrop and source colors."},{name:"lighten",description:"Selects the lighter of the backdrop and source colors."},{name:"color-dodge",description:"Brightens the backdrop color to reflect the source color."},{name:"color-burn",description:"Darkens the backdrop color to reflect the source color."},{name:"hard-light",description:"Multiplies or screens the colors, depending on the source color value."},{name:"soft-light",description:"Darkens or lightens the colors, depending on the source color value."},{name:"difference",description:"Subtracts the darker of the two constituent colors from the lighter color.."},{name:"exclusion",description:"Produces an effect similar to that of the Difference mode but lower in contrast."},{name:"hue",browsers:["FF32","S8","C41","O28"],description:"Creates a color with the hue of the source color and the saturation and luminosity of the backdrop color."},{name:"saturation",browsers:["FF32","S8","C41","O28"],description:"Creates a color with the saturation of the source color and the hue and luminosity of the backdrop color."},{name:"color",browsers:["FF32","S8","C41","O28"],description:"Creates a color with the hue and saturation of the source color and the luminosity of the backdrop color."},{name:"luminosity",browsers:["FF32","S8","C41","O28"],description:"Creates a color with the luminosity of the source color and the hue and saturation of the backdrop color."}],syntax:"<blend-mode>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mix-blend-mode"}],description:"Defines the formula that must be used to mix the colors with the backdrop.",restrictions:["enum"]},{name:"grid-auto-rows",values:[{name:"min-content",description:"Represents the largest min-content contribution of the grid items occupying the grid track."},{name:"max-content",description:"Represents the largest max-content contribution of the grid items occupying the grid track."},{name:"auto",description:"As a maximum, identical to 'max-content'. As a minimum, represents the largest minimum size (as specified by min-width/min-height) of the grid items occupying the grid track."},{name:"minmax()",description:"Defines a size range greater than or equal to min and less than or equal to max."}],syntax:"<track-size>+",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-auto-rows"}],description:"Specifies the size of implicitly created rows.",restrictions:["length","percentage"]},{name:"font-variant-ligatures",browsers:["FF34","S9.1","C34","O21"],values:[{name:"additional-ligatures",description:"Enables display of additional ligatures."},{name:"common-ligatures",description:"Enables display of common ligatures."},{name:"contextual",browsers:["FF34","S9.1","C34","O21"],description:"Enables display of contextual alternates."},{name:"discretionary-ligatures",description:"Enables display of discretionary ligatures."},{name:"historical-ligatures",description:"Enables display of historical ligatures."},{name:"no-additional-ligatures",description:"Disables display of additional ligatures."},{name:"no-common-ligatures",description:"Disables display of common ligatures."},{name:"no-contextual",browsers:["FF34","S9.1","C34","O21"],description:"Disables display of contextual alternates."},{name:"no-discretionary-ligatures",description:"Disables display of discretionary ligatures."},{name:"no-historical-ligatures",description:"Disables display of historical ligatures."},{name:"none",browsers:["FF34","S9.1","C34","O21"],description:"Disables all ligatures."},{name:"normal",description:"Implies that the defaults set by the font are used."}],syntax:"normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-ligatures"}],description:"Specifies control over which ligatures are enabled or disabled. A value of ‘normal’ implies that the defaults set by the font are used.",restrictions:["enum"]},{name:"scroll-behavior",browsers:["FF36","C61","O48"],values:[{name:"auto",description:"Scrolls in an instant fashion."},{name:"smooth",description:"Scrolls in a smooth fashion using a user-agent-defined timing function and time period."}],syntax:"auto | smooth",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-behavior"}],description:"Specifies the scrolling behavior for a scrolling box, when scrolling happens due to navigation or CSSOM scrolling APIs.",restrictions:["enum"]},{name:"text-decoration-skip",status:"experimental",syntax:"none | [ objects || [ spaces | [ leading-spaces || trailing-spaces ] ] || edges || box-decoration ]",browsers:["S12.1","C57","O44"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-skip"}],description:"The text-decoration-skip CSS property specifies what parts of the element’s content any text decoration affecting the element must skip over. It controls all text decoration lines drawn by the element and also any text decoration lines drawn by its ancestors."},{name:"columns",values:[{name:"auto",description:"The width depends on the values of other properties."}],syntax:"<'column-width'> || <'column-count'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/columns"}],description:"A shorthand property which sets both 'column-width' and 'column-count'.",restrictions:["length","integer","enum"]},{name:"column-rule",syntax:"<'column-rule-width'> || <'column-rule-style'> || <'column-rule-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-rule"}],description:"Shorthand for setting 'column-rule-width', 'column-rule-style', and 'column-rule-color' at the same place in the style sheet. Omitted values are set to their initial values.",restrictions:["length","line-width","line-style","color"]},{name:"line-break",values:[{name:"auto",description:"The UA determines the set of line-breaking restrictions to use for CJK scripts, and it may vary the restrictions based on the length of the line; e.g., use a less restrictive set of line-break rules for short lines."},{name:"loose",description:"Breaks text using the least restrictive set of line-breaking rules. Typically used for short lines, such as in newspapers."},{name:"normal",description:"Breaks text using the most common set of line-breaking rules."},{name:"strict",description:"Breaks CJK scripts using a more restrictive set of line-breaking rules than 'normal'."}],syntax:"auto | loose | normal | strict | anywhere",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/line-break"}],description:"Specifies what set of line breaking restrictions are in effect within the element.",restrictions:["enum"]},{name:"text-align-last",browsers:["E12","FF49","C47","IE5.5","O"],values:[{name:"auto",description:"Content on the affected line is aligned per 'text-align' unless 'text-align' is set to 'justify', in which case it is 'start-aligned'."},{name:"center",description:"The inline contents are centered within the line box."},{name:"justify",description:"The text is justified according to the method specified by the 'text-justify' property."},{name:"left",description:"The inline contents are aligned to the left edge of the line box. In vertical text, 'left' aligns to the edge of the line box that would be the start edge for left-to-right text."},{name:"right",description:"The inline contents are aligned to the right edge of the line box. In vertical text, 'right' aligns to the edge of the line box that would be the end edge for left-to-right text."}],syntax:"auto | start | end | left | right | center | justify",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-align-last"}],description:"Describes how the last line of a block or a line right before a forced line break is aligned when 'text-align' is set to 'justify'.",restrictions:["enum"]},{name:"border-image-width",values:[{name:"auto",description:"The border image width is the intrinsic width or height (whichever is applicable) of the corresponding image slice. If the image does not have the required intrinsic dimension then the corresponding border-width is used instead."}],syntax:"[ <length-percentage> | <number> | auto ]{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image-width"}],description:"The four values of 'border-image-width' specify offsets that are used to divide the border image area into nine parts. They represent inward distances from the top, right, bottom, and left sides of the area, respectively.",restrictions:["length","percentage","number"]},{name:"stroke-miterlimit",description:"When two line segments meet at a sharp angle and miter joins have been specified for 'stroke-linejoin', it is possible for the miter to extend far beyond the thickness of the line stroking the path.",restrictions:["number"]},{name:"border-image-repeat",values:[{name:"repeat",description:"The image is tiled (repeated) to fill the area."},{name:"round",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the image is rescaled so that it does."},{name:"space",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the extra space is distributed around the tiles."},{name:"stretch",description:"The image is stretched to fill the area."}],syntax:"[ stretch | repeat | round | space ]{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image-repeat"}],description:"Specifies how the images for the sides and the middle part of the border image are scaled and tiled. If the second keyword is absent, it is assumed to be the same as the first.",restrictions:["enum"]},{name:"grid-column-gap",browsers:["FF52","C57","S10.1","O44"],status:"obsolete",syntax:"<length-percentage>",description:"Specifies the gutters between grid columns. Replaced by 'column-gap' property.",restrictions:["length"]},{name:"border-image-slice",values:[{name:"fill",description:"Causes the middle part of the border-image to be preserved."}],syntax:"<number-percentage>{1,4} && fill?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image-slice"}],description:"Specifies inward offsets from the top, right, bottom, and left edges of the image, dividing it into nine regions: four corners, four edges and a middle.",restrictions:["number","percentage"]},{name:"justify-self",browsers:["E16","FF45","S10.1","C57","O44"],values:[{name:"auto"},{name:"normal"},{name:"end"},{name:"start"},{name:"flex-end",description:'"Flex items are packed toward the end of the line."'},{name:"flex-start",description:'"Flex items are packed toward the start of the line."'},{name:"self-end",description:"The item is packed flush to the edge of the alignment container of the end side of the item, in the appropriate axis."},{name:"self-start",description:"The item is packed flush to the edge of the alignment container of the start side of the item, in the appropriate axis.."},{name:"center",description:"The items are packed flush to each other toward the center of the of the alignment container."},{name:"left"},{name:"right"},{name:"baseline"},{name:"first baseline"},{name:"last baseline"},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."},{name:"save"},{name:"unsave"}],syntax:"auto | normal | stretch | <baseline-position> | <overflow-position>? [ <self-position> | left | right ]",description:"Defines the way of justifying a box inside its container along the appropriate axis.",restrictions:["enum"]},{name:"fill-rule",values:[{name:"evenodd",description:"Determines the ‘insideness’ of a point on the canvas by drawing a ray from that point to infinity in any direction and counting the number of path segments from the given shape that the ray crosses."},{name:"nonzero",description:"Determines the ‘insideness’ of a point on the canvas by drawing a ray from that point to infinity in any direction and then examining the places where a segment of the shape crosses the ray."}],description:"Indicates the algorithm (or winding rule) which is to be used to determine what parts of the canvas are included inside the shape.",restrictions:["enum"]},{name:"border-image-outset",syntax:"[ <length> | <number> ]{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image-outset"}],description:"The values specify the amount by which the border image area extends beyond the border box on the top, right, bottom, and left sides respectively. If the fourth value is absent, it is the same as the second. If the third one is also absent, it is the same as the first. If the second one is also absent, it is the same as the first. Numbers represent multiples of the corresponding border-width.",restrictions:["length","number"]},{name:"justify-items",values:[{name:"auto"},{name:"normal"},{name:"end"},{name:"start"},{name:"flex-end",description:'"Flex items are packed toward the end of the line."'},{name:"flex-start",description:'"Flex items are packed toward the start of the line."'},{name:"self-end",description:"The item is packed flush to the edge of the alignment container of the end side of the item, in the appropriate axis."},{name:"self-start",description:"The item is packed flush to the edge of the alignment container of the start side of the item, in the appropriate axis.."},{name:"center",description:"The items are packed flush to each other toward the center of the of the alignment container."},{name:"left"},{name:"right"},{name:"baseline"},{name:"first baseline"},{name:"last baseline"},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."},{name:"save"},{name:"unsave"},{name:"legacy"}],syntax:"normal | stretch | <baseline-position> | <overflow-position>? [ <self-position> | left | right ] | legacy | legacy && [ left | right | center ]",description:"Defines the default justify-self for all items of the box, giving them the default way of justifying each box along the appropriate axis",restrictions:["enum"]},{name:"break-inside",values:[{name:"auto",description:"Impose no additional breaking constraints within the box."},{name:"avoid",description:"Avoid breaks within the box."},{name:"avoid-column",description:"Avoid a column break within the box."},{name:"avoid-page",description:"Avoid a page break within the box."}],syntax:"auto | avoid | avoid-page | avoid-column | avoid-region",description:"Describes the page/column/region break behavior inside the principal box.",restrictions:["enum"]},{name:"scroll-snap-type",values:[{name:"none",description:"The visual viewport of this scroll container must ignore snap points, if any, when scrolled."},{name:"mandatory",description:"The visual viewport of this scroll container is guaranteed to rest on a snap point when there are no active scrolling operations."},{name:"proximity",description:"The visual viewport of this scroll container may come to rest on a snap point at the termination of a scroll at the discretion of the UA given the parameters of the scroll."}],syntax:"none | [ x | y | block | inline | both ] [ mandatory | proximity ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type"}],description:"Defines how strictly snap points are enforced on the scroll container.",restrictions:["enum"]},{name:"text-decoration-line",browsers:["FF36","S12.1","C57","O"],values:[{name:"line-through",description:"Each line of text has a line through the middle."},{name:"none",description:"Neither produces nor inhibits text decoration."},{name:"overline",description:"Each line of text has a line above it."},{name:"underline",description:"Each line of text is underlined."}],syntax:"none | [ underline || overline || line-through || blink ] | spelling-error | grammar-error",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-line"}],description:"Specifies what line decorations, if any, are added to the element.",restrictions:["enum"]},{name:"scroll-snap-align",syntax:"[ none | start | end | center ]{1,2}",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-align"}],description:"The scroll-snap-align property specifies the box’s snap position as an alignment of its snap area (as the alignment subject) within its snap container’s snapport (as the alignment container). The two values specify the snapping alignment in the block axis and inline axis, respectively. If only one value is specified, the second value defaults to the same value."},{name:"grid-row",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line> [ / <grid-line> ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-row"}],description:"Shorthand for 'grid-row-start' and 'grid-row-end'.",restrictions:["identifier","integer","enum"]},{name:"caret-color",browsers:["FF53","S11.1","C57","O44"],values:[{name:"auto",description:"The user agent selects an appropriate color for the caret. This is generally currentcolor, but the user agent may choose a different color to ensure good visibility and contrast with the surrounding content, taking into account the value of currentcolor, the background, shadows, and other factors."}],syntax:"auto | <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/caret-color"}],description:"Controls the color of the text insertion indicator.",restrictions:["color","enum"]},{name:"stroke-linejoin",values:[{name:"bevel",description:"Indicates that a bevelled corner is to be used to join path segments."},{name:"miter",description:"Indicates that a sharp corner is to be used to join path segments."},{name:"round",description:"Indicates that a round corner is to be used to join path segments."}],description:"Specifies the shape to be used at the corners of paths or basic shapes when they are stroked.",restrictions:["enum"]},{name:"grid-area",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line> [ / <grid-line> ]{0,3}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-area"}],description:"Determine a grid item’s size and location within the grid by contributing a line, a span, or nothing (automatic) to its grid placement. Shorthand for 'grid-row-start', 'grid-column-start', 'grid-row-end', and 'grid-column-end'.",restrictions:["identifier","integer"]},{name:"column-fill",values:[{name:"auto",description:"Fills columns sequentially."},{name:"balance",description:"Balance content equally between columns, if possible."}],syntax:"auto | balance | balance-all",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-fill"}],description:"In continuous media, this property will only be consulted if the length of columns has been constrained. Otherwise, columns will automatically be balanced.",restrictions:["enum"]},{name:"tab-size",browsers:["FF4","S6.1","C21","O15"],syntax:"<integer> | <length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/tab-size"}],description:"Determines the width of the tab character (U+0009), in space characters (U+0020), when rendered.",restrictions:["integer","length"]},{name:"overflow-anchor",status:"experimental",syntax:"auto | none",browsers:["FF66","C56","O43"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-anchor"}],description:"The overflow-anchor CSS property provides a way to opt out browser scroll anchoring behavior which adjusts scroll position to minimize content shifts."},{name:"border-image-source",values:[{name:"none",description:"Use the border styles."}],syntax:"none | <image>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image-source"}],description:"Specifies an image to use instead of the border styles given by the 'border-style' properties and as an additional background layer for the element. If the value is 'none' or if the image cannot be displayed, the border styles will be used.",restrictions:["image"]},{name:"grid-template-areas",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"none",description:"The grid container doesn’t define any named grid areas."}],syntax:"none | <string>+",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-template-areas"}],description:"Specifies named grid areas, which are not associated with any particular grid item, but can be referenced from the grid-placement properties.",restrictions:["string"]},{name:"font-kerning",browsers:["FF32","S7","C32","O19"],values:[{name:"auto",description:"Specifies that kerning is applied at the discretion of the user agent."},{name:"none",description:"Specifies that kerning is not applied."},{name:"normal",description:"Specifies that kerning is applied."}],syntax:"auto | normal | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-kerning"}],description:"Kerning is the contextual adjustment of inter-glyph spacing. This property controls metric kerning, kerning that utilizes adjustment data contained in the font.",restrictions:["enum"]},{name:"page-break-before",values:[{name:"always",description:"Always force a page break before the generated box."},{name:"auto",description:"Neither force nor forbid a page break before the generated box."},{name:"avoid",description:"Avoid a page break before the generated box."},{name:"left",description:"Force one or two page breaks before the generated box so that the next page is formatted as a left page."},{name:"right",description:"Force one or two page breaks before the generated box so that the next page is formatted as a right page."}],syntax:"auto | always | avoid | left | right | recto | verso",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/page-break-before"}],description:"Defines rules for page breaks before an element.",restrictions:["enum"]},{name:"text-decoration-style",browsers:["FF36","S12.1","C57","O44"],values:[{name:"dashed",description:"Produces a dashed line style."},{name:"dotted",description:"Produces a dotted line."},{name:"double",description:"Produces a double line."},{name:"none",description:"Produces no line."},{name:"solid",description:"Produces a solid line."},{name:"wavy",description:"Produces a wavy line."}],syntax:"solid | double | dotted | dashed | wavy",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-style"}],description:"Specifies the line style for underline, line-through and overline text decoration.",restrictions:["enum"]},{name:"grid-row-gap",browsers:["FF52","C57","S10.1","O44"],status:"obsolete",syntax:"<length-percentage>",description:"Specifies the gutters between grid rows. Replaced by 'row-gap' property.",restrictions:["length"]},{name:"backdrop-filter",status:"experimental",syntax:"none | <filter-function-list>",browsers:["E17","FF70","S9","C76","O34"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/backdrop-filter"}],description:"The backdrop-filter CSS property lets you apply graphical effects such as blurring or color shifting to the area behind an element. Because it applies to everything behind the element, to see the effect you must make the element or its background at least partially transparent."},{name:"grid-auto-flow",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"row",description:"The auto-placement algorithm places items by filling each row in turn, adding new rows as necessary."},{name:"column",description:"The auto-placement algorithm places items by filling each column in turn, adding new columns as necessary."},{name:"dense",description:"If specified, the auto-placement algorithm uses a “dense” packing algorithm, which attempts to fill in holes earlier in the grid if smaller items come up later."}],syntax:"[ row | column ] || dense",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-auto-flow"}],description:"Controls how the auto-placement algorithm works, specifying exactly how auto-placed items get flowed into the grid.",restrictions:["enum"]},{name:"grid-column-start",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-column-start"}],description:"Determine a grid item’s size and location within the grid by contributing a line, a span, or nothing (automatic) to its grid placement.",restrictions:["identifier","integer","enum"]},{name:"column-rule-color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-rule-color"}],description:"Sets the color of the column rule",restrictions:["color"]},{name:"isolation",browsers:["FF36","S8","C41","O30"],values:[{name:"auto",description:"Elements are not isolated unless an operation is applied that causes the creation of a stacking context."},{name:"isolate",description:"In CSS will turn the element into a stacking context."}],syntax:"auto | isolate",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/isolation"}],description:"In CSS setting to 'isolate' will turn the element into a stacking context. In SVG, it defines whether an element is isolated or not.",restrictions:["enum"]},{name:"column-rule-style",syntax:"<'border-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-rule-style"}],description:"Sets the style of the rule between columns of an element.",restrictions:["line-style"]},{name:"stop-color",description:"Indicates what color to use at that gradient stop.",restrictions:["color"]},{name:"clip-rule",browsers:["E","C5","FF3","IE10","O9","S6"],values:[{name:"evenodd",description:"Determines the ‘insideness’ of a point on the canvas by drawing a ray from that point to infinity in any direction and counting the number of path segments from the given shape that the ray crosses."},{name:"nonzero",description:"Determines the ‘insideness’ of a point on the canvas by drawing a ray from that point to infinity in any direction and then examining the places where a segment of the shape crosses the ray."}],description:"Indicates the algorithm which is to be used to determine what parts of the canvas are included inside the shape.",restrictions:["enum"]},{name:"background-blend-mode",browsers:["FF30","S8","C35","O22"],values:[{name:"normal",description:"Default attribute which specifies no blending"},{name:"multiply",description:"The source color is multiplied by the destination color and replaces the destination."},{name:"screen",description:"Multiplies the complements of the backdrop and source color values, then complements the result."},{name:"overlay",description:"Multiplies or screens the colors, depending on the backdrop color value."},{name:"darken",description:"Selects the darker of the backdrop and source colors."},{name:"lighten",description:"Selects the lighter of the backdrop and source colors."},{name:"color-dodge",description:"Brightens the backdrop color to reflect the source color."},{name:"color-burn",description:"Darkens the backdrop color to reflect the source color."},{name:"hard-light",description:"Multiplies or screens the colors, depending on the source color value."},{name:"soft-light",description:"Darkens or lightens the colors, depending on the source color value."},{name:"difference",description:"Subtracts the darker of the two constituent colors from the lighter color.."},{name:"exclusion",description:"Produces an effect similar to that of the Difference mode but lower in contrast."},{name:"hue",browsers:["FF30","S8","C35","O22"],description:"Creates a color with the hue of the source color and the saturation and luminosity of the backdrop color."},{name:"saturation",browsers:["FF30","S8","C35","O22"],description:"Creates a color with the saturation of the source color and the hue and luminosity of the backdrop color."},{name:"color",browsers:["FF30","S8","C35","O22"],description:"Creates a color with the hue and saturation of the source color and the luminosity of the backdrop color."},{name:"luminosity",browsers:["FF30","S8","C35","O22"],description:"Creates a color with the luminosity of the source color and the hue and saturation of the backdrop color."}],syntax:"<blend-mode>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-blend-mode"}],description:"Defines the blending mode of each background layer.",restrictions:["enum"]},{name:"font-variant-numeric",browsers:["FF34","S9.1","C52","O39"],values:[{name:"diagonal-fractions",description:"Enables display of lining diagonal fractions."},{name:"lining-nums",description:"Enables display of lining numerals."},{name:"normal",description:"None of the features are enabled."},{name:"oldstyle-nums",description:"Enables display of old-style numerals."},{name:"ordinal",description:"Enables display of letter forms used with ordinal numbers."},{name:"proportional-nums",description:"Enables display of proportional numerals."},{name:"slashed-zero",description:"Enables display of slashed zeros."},{name:"stacked-fractions",description:"Enables display of lining stacked fractions."},{name:"tabular-nums",description:"Enables display of tabular numerals."}],syntax:"normal | [ <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-numeric"}],description:"Specifies control over numerical forms.",restrictions:["enum"]},{name:"grid-column-end",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-column-end"}],description:"Determine a grid item’s size and location within the grid by contributing a line, a span, or nothing (automatic) to its grid placement.",restrictions:["identifier","integer","enum"]},{name:"margin-block-start",browsers:["FF41","S12.1","C69","O56"],values:[{name:"auto"}],syntax:"<'margin-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-block-start"}],description:"Logical 'margin-top'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"writing-mode",values:[{name:"horizontal-tb",description:"Top-to-bottom block flow direction. The writing mode is horizontal."},{name:"sideways-lr",description:"Left-to-right block flow direction. The writing mode is vertical, while the typographic mode is horizontal."},{name:"sideways-rl",description:"Right-to-left block flow direction. The writing mode is vertical, while the typographic mode is horizontal."},{name:"vertical-lr",description:"Left-to-right block flow direction. The writing mode is vertical."},{name:"vertical-rl",description:"Right-to-left block flow direction. The writing mode is vertical."}],syntax:"horizontal-tb | vertical-rl | vertical-lr | sideways-rl | sideways-lr",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/writing-mode"}],description:"This is a shorthand property for both 'direction' and 'block-progression'.",restrictions:["enum"]},{name:"shape-rendering",values:[{name:"auto",description:"Suppresses aural rendering."},{name:"crispEdges",description:"Emphasize the contrast between clean edges of artwork over rendering speed and geometric precision."},{name:"geometricPrecision",description:"Emphasize geometric precision over speed and crisp edges."},{name:"optimizeSpeed",description:"Emphasize rendering speed over geometric precision and crisp edges."}],description:"Provides hints about what tradeoffs to make as it renders vector graphics elements such as <path> elements and basic shapes such as circles and rectangles.",restrictions:["enum"]},{name:"grid-row-start",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-row-start"}],description:"Determine a grid item’s size and location within the grid by contributing a line, a span, or nothing (automatic) to its grid placement.",restrictions:["identifier","integer","enum"]},{name:"grid-auto-columns",values:[{name:"min-content",description:"Represents the largest min-content contribution of the grid items occupying the grid track."},{name:"max-content",description:"Represents the largest max-content contribution of the grid items occupying the grid track."},{name:"auto",description:"As a maximum, identical to 'max-content'. As a minimum, represents the largest minimum size (as specified by min-width/min-height) of the grid items occupying the grid track."},{name:"minmax()",description:"Defines a size range greater than or equal to min and less than or equal to max."}],syntax:"<track-size>+",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-auto-columns"}],description:"Specifies the size of implicitly created columns.",restrictions:["length","percentage"]},{name:"break-after",values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the principal box."},{name:"avoid",description:"Avoid a break before/after the principal box."},{name:"avoid-column",description:"Avoid a column break before/after the principal box."},{name:"avoid-page",description:"Avoid a page break before/after the principal box."},{name:"column",description:"Always force a column break before/after the principal box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the principal box."},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],syntax:"auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region",description:"Describes the page/column/region break behavior after the generated box.",restrictions:["enum"]},{name:"text-decoration-skip-ink",status:"experimental",syntax:"auto | none",browsers:["FF70","C64","O50"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-skip-ink"}],description:"The text-decoration-skip-ink CSS property specifies how overlines and underlines are drawn when they pass over glyph ascenders and descenders."},{name:"grid-row-end",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-row-end"}],description:"Determine a grid item’s size and location within the grid by contributing a line, a span, or nothing (automatic) to its grid placement.",restrictions:["identifier","integer","enum"]},{name:"break-before",values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the principal box."},{name:"avoid",description:"Avoid a break before/after the principal box."},{name:"avoid-column",description:"Avoid a column break before/after the principal box."},{name:"avoid-page",description:"Avoid a page break before/after the principal box."},{name:"column",description:"Always force a column break before/after the principal box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the principal box."},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],syntax:"auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region",description:"Describes the page/column/region break behavior before the generated box.",restrictions:["enum"]},{name:"font-variant-caps",browsers:["FF34","C52","O39"],values:[{name:"all-petite-caps",description:"Enables display of petite capitals for both upper and lowercase letters."},{name:"all-small-caps",description:"Enables display of small capitals for both upper and lowercase letters."},{name:"normal",description:"None of the features are enabled."},{name:"petite-caps",description:"Enables display of petite capitals."},{name:"small-caps",description:"Enables display of small capitals. Small-caps glyphs typically use the form of uppercase letters but are reduced to the size of lowercase letters."},{name:"titling-caps",description:"Enables display of titling capitals."},{name:"unicase",description:"Enables display of mixture of small capitals for uppercase letters with normal lowercase letters."}],syntax:"normal | small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-caps"}],description:"Specifies control over capitalized forms.",restrictions:["enum"]},{name:"stop-opacity",description:"Defines the opacity of a given gradient stop.",restrictions:["number(0-1)"]},{name:"column-span",values:[{name:"all",description:"The element spans across all columns. Content in the normal flow that appears before the element is automatically balanced across all columns before the element appear."},{name:"none",description:"The element does not span multiple columns."}],syntax:"none | all",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-span"}],description:"Describes the page/column break behavior after the generated box.",restrictions:["enum"]},{name:"text-anchor",values:[{name:"end",description:"The rendered characters are aligned such that the end of the resulting rendered text is at the initial current text position."},{name:"middle",description:"The rendered characters are aligned such that the geometric middle of the resulting rendered text is at the initial current text position."},{name:"start",description:"The rendered characters are aligned such that the start of the resulting rendered text is at the initial current text position."}],description:"Used to align (start-, middle- or end-alignment) a string of text relative to a given point.",restrictions:["enum"]},{name:"column-rule-width",syntax:"<'border-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-rule-width"}],description:"Sets the width of the rule between columns. Negative values are not allowed.",restrictions:["length","line-width"]},{name:"mask",syntax:"<mask-layer>#",browsers:["E12","FF2","S3.2","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask"}],description:"The mask CSS property alters the visibility of an element by either partially or fully hiding it. This is accomplished by either masking or clipping the image at specific points."},{name:"text-underline-position",browsers:["E12","C33","IE6","O20"],values:[{name:"above"},{name:"auto",description:"The user agent may use any algorithm to determine the underline’s position. In horizontal line layout, the underline should be aligned as for alphabetic. In vertical line layout, if the language is set to Japanese or Korean, the underline should be aligned as for over."},{name:"below",description:"The underline is aligned with the under edge of the element’s content box."}],syntax:"auto | [ under || [ left | right ] ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-underline-position"}],description:"Sets the position of an underline specified on the same element: it does not affect underlines specified by ancestor elements. This property is typically used in vertical writing contexts such as in Japanese documents where it often desired to have the underline appear 'over' (to the right of) the affected run of text",restrictions:["enum"]},{name:"mask-type",browsers:["FF35","S6.1","C24","O15"],values:[{name:"alpha",description:"Indicates that the alpha values of the mask should be used."},{name:"luminance",description:"Indicates that the luminance values of the mask should be used."}],syntax:"luminance | alpha",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-type"}],description:"Defines whether the content of the <mask> element is treated as as luminance mask or alpha mask.",restrictions:["enum"]},{name:"font-variant-east-asian",browsers:["FF34","C63","O50"],values:[{name:"full-width",description:"Enables rendering of full-width variants."},{name:"jis04",description:"Enables rendering of JIS04 forms."},{name:"jis78",description:"Enables rendering of JIS78 forms."},{name:"jis83",description:"Enables rendering of JIS83 forms."},{name:"jis90",description:"Enables rendering of JIS90 forms."},{name:"normal",description:"None of the features are enabled."},{name:"proportional-width",description:"Enables rendering of proportionally-spaced variants."},{name:"ruby",description:"Enables display of ruby variant glyphs."},{name:"simplified",description:"Enables rendering of simplified forms."},{name:"traditional",description:"Enables rendering of traditional forms."}],syntax:"normal | [ <east-asian-variant-values> || <east-asian-width-values> || ruby ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-east-asian"}],description:"Allows control of glyph substitute and positioning in East Asian text.",restrictions:["enum"]},{name:"border-inline-end-width",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-end-width"}],description:"Logical 'border-right-width'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width"]},{name:"border-inline-start-width",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-start-width"}],description:"Logical 'border-left-width'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width"]},{name:"text-orientation",browsers:["FF41","S5.1","C48","O15"],values:[{name:"sideways",browsers:["FF41","S5.1","C48","O15"],description:"This value is equivalent to 'sideways-right' in 'vertical-rl' writing mode and equivalent to 'sideways-left' in 'vertical-lr' writing mode."},{name:"sideways-right",browsers:["FF41","S5.1","C48","O15"],description:"In vertical writing modes, this causes text to be set as if in a horizontal layout, but rotated 90° clockwise."},{name:"upright",description:"In vertical writing modes, characters from horizontal-only scripts are rendered upright, i.e. in their standard horizontal orientation."}],syntax:"mixed | upright | sideways",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-orientation"}],description:"Specifies the orientation of text within a line.",restrictions:["enum"]},{name:"shape-margin",browsers:["FF62","S10.1","C37","O24"],syntax:"<length-percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/shape-margin"}],description:"Adds a margin to a 'shape-outside'. This defines a new shape that is the smallest contour that includes all the points that are the 'shape-margin' distance outward in the perpendicular direction from a point on the underlying shape.",restrictions:["url","length","percentage"]},{name:"shape-image-threshold",browsers:["FF62","S10.1","C37","O24"],syntax:"<alpha-value>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/shape-image-threshold"}],description:"Defines the alpha channel threshold used to extract the shape using an image. A value of 0.5 means that the shape will enclose all the pixels that are more than 50% opaque.",restrictions:["number"]},{name:"min-inline-size",browsers:["FF41","S12.1","C57","O44"],syntax:"<'min-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/min-inline-size"}],description:"Logical 'min-height'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"inline-size",browsers:["FF41","S12.1","C57","O44"],values:[{name:"auto",description:"Depends on the values of other properties."}],syntax:"<'width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inline-size"}],description:"Logical 'height'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"text-combine-upright",syntax:"none | all | [ digits <integer>? ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-combine-upright"}],description:"The text-combine-upright CSS property specifies the combination of multiple characters into the space of a single character. If the combined text is wider than 1em, the user agent must fit the contents within 1em. The resulting composition is treated as a single upright glyph for layout and decoration. This property only has an effect in vertical writing modes.\n\nThis is used to produce an effect that is known as tate-chū-yoko (縦中横) in Japanese, or as 直書橫向 in Chinese."},{name:"block-size",browsers:["FF41","S12.1","C57","O44"],values:[{name:"auto",description:"Depends on the values of other properties."}],syntax:"<'width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/block-size"}],description:"Logical 'width'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"min-block-size",browsers:["FF41","S12.1","C57","O44"],syntax:"<'min-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/min-block-size"}],description:"Logical 'min-width'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"padding-block-start",browsers:["FF41","S12.1","C69","O56"],syntax:"<'padding-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-block-start"}],description:"Logical 'padding-top'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"padding-block-end",browsers:["FF41","S12.1","C69","O56"],syntax:"<'padding-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-block-end"}],description:"Logical 'padding-bottom'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"border-inline-start-color",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-start-color"}],description:"Logical 'border-left-color'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["color"]},{name:"border-inline-end-color",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-end-color"}],description:"Logical 'border-right-color'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["color"]},{name:"border-inline-end-style",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-end-style"}],description:"Logical 'border-right-style'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["line-style"]},{name:"border-inline-start-style",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-start-style"}],description:"Logical 'border-left-style'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["line-style"]},{name:"border-block-end-style",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-end-style"}],description:"Logical 'border-bottom-style'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["line-style"]},{name:"border-block-end-color",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-end-color"}],description:"Logical 'border-bottom-color'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["color"]},{name:"border-block-start-style",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-start-style"}],description:"Logical 'border-top-style'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["line-style"]},{name:"border-block-start-color",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-start-color"}],description:"Logical 'border-top-color'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["color"]},{name:"border-block-start-width",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-start-width"}],description:"Logical 'border-top-width'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width"]},{name:"border-block-end-width",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-end-width"}],description:"Logical 'border-bottom-width'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width"]},{name:"row-gap",syntax:"normal | <length-percentage>",browsers:["E16","FF63","S10.1","C66","O53"],description:"The row-gap CSS property specifies the gutter between grid rows."},{name:"grid-template",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"none",description:"Sets all three properties to their initial values."},{name:"min-content",description:"Represents the largest min-content contribution of the grid items occupying the grid track."},{name:"max-content",description:"Represents the largest max-content contribution of the grid items occupying the grid track."},{name:"auto",description:"As a maximum, identical to 'max-content'. As a minimum, represents the largest minimum size (as specified by min-width/min-height) of the grid items occupying the grid track."},{name:"subgrid",description:"Sets 'grid-template-rows' and 'grid-template-columns' to 'subgrid', and 'grid-template-areas' to its initial value."},{name:"minmax()",description:"Defines a size range greater than or equal to min and less than or equal to max."},{name:"repeat()",description:"Represents a repeated fragment of the track list, allowing a large number of columns or rows that exhibit a recurring pattern to be written in a more compact form."}],syntax:"none | [ <'grid-template-rows'> / <'grid-template-columns'> ] | [ <line-names>? <string> <track-size>? <line-names>? ]+ [ / <explicit-track-list> ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-template"}],description:"Shorthand for setting grid-template-columns, grid-template-rows, and grid-template-areas in a single declaration.",restrictions:["identifier","length","percentage","string","enum"]},{name:"color-interpolation-filters",browsers:["E","C5","FF3","IE10","O9","S6"],values:[{name:"auto",description:"Color operations are not required to occur in a particular color space."},{name:"linearRGB",description:"Color operations should occur in the linearized RGB color space."},{name:"sRGB",description:"Color operations should occur in the sRGB color space."}],description:"Specifies the color space for imaging operations performed via filter effects.",restrictions:["enum"]},{name:"paint-order",browsers:["E17","FF60","S8","C35","O22"],values:[{name:"fill"},{name:"markers"},{name:"normal",description:"The element is painted with the standard order of painting operations: the 'fill' is painted first, then its 'stroke' and finally its markers."},{name:"stroke"}],status:"experimental",syntax:"normal | [ fill || stroke || markers ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/paint-order"}],description:"Controls the order that the three paint operations that shapes and text are rendered with: their fill, their stroke and any markers they might have.",restrictions:["enum"]},{name:"flood-color",browsers:["E","C5","FF3","IE10","O9","S6"],description:"Indicates what color to use to flood the current filter primitive subregion.",restrictions:["color"]},{name:"flood-opacity",browsers:["E","C5","FF3","IE10","O9","S6"],description:"Indicates what opacity to use to flood the current filter primitive subregion.",restrictions:["number(0-1)","percentage"]},{name:"scroll-snap-stop",syntax:"normal | always",browsers:["C75","O62"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-stop"}],description:'The scroll-snap-stop CSS property defines whether the scroll container is allowed to "pass over" possible snap positions.'},{name:"lighting-color",browsers:["E","C5","FF3","IE10","O9","S6"],description:"Defines the color of the light source for filter primitives 'feDiffuseLighting' and 'feSpecularLighting'.",restrictions:["color"]},{name:"scroll-padding-left",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-left"}],description:"The scroll-padding-left property defines offsets for the left of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"marker-end",values:[{name:"none",description:"Indicates that no marker symbol will be drawn at the given vertex or vertices."},{name:"url()",description:"Indicates that the <marker> element referenced will be used."}],description:"Specifies the marker that will be drawn at the last vertices of the given markable element.",restrictions:["url"]},{name:"marker-start",values:[{name:"none",description:"Indicates that no marker symbol will be drawn at the given vertex or vertices."},{name:"url()",description:"Indicates that the <marker> element referenced will be used."}],description:"Specifies the marker that will be drawn at the first vertices of the given markable element.",restrictions:["url"]},{name:"marker-mid",values:[{name:"none",description:"Indicates that no marker symbol will be drawn at the given vertex or vertices."},{name:"url()",description:"Indicates that the <marker> element referenced will be used."}],description:"Specifies the marker that will be drawn at all vertices except the first and last.",restrictions:["url"]},{name:"offset-distance",status:"experimental",syntax:"<length-percentage>",browsers:["FF69","C55","O42"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/offset-distance"}],description:"The offset-distance CSS property specifies a position along an offset-path."},{name:"place-content",syntax:"<'align-content'> <'justify-content'>?",browsers:["FF53","S9","C59","O"],description:"The place-content CSS shorthand property sets both the align-content and justify-content properties."},{name:"font-variation-settings",syntax:"normal | [ <string> <number> ]#",browsers:["E17","FF62","S11","C62","O49"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variation-settings"}],description:"The font-variation-settings CSS property provides low-level control over OpenType or TrueType font variations, by specifying the four letter axis names of the features you want to vary, along with their variation values."},{name:"offset-path",status:"experimental",syntax:"none | ray( [ <angle> && <size>? && contain? ] ) | <path()> | <url> | [ <basic-shape> || <geometry-box> ]",browsers:["FF63","C55","O45"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/offset-path"}],description:'The offset-path CSS property specifies the offset path where the element gets positioned. The exact element’s position on the offset path is determined by the offset-distance property. An offset path is either a specified path with one or multiple sub-paths or the geometry of a not-styled basic shape. Each shape or path must define an initial position for the computed value of "0" for offset-distance and an initial direction which specifies the rotation of the object to the initial position.\n\nIn this specification, a direction (or rotation) of 0 degrees is equivalent to the direction of the positive x-axis in the object’s local coordinate system. In other words, a rotation of 0 degree points to the right side of the UA if the object and its ancestors have no transformation applied.'},{name:"offset-rotate",status:"experimental",syntax:"[ auto | reverse ] || <angle>",browsers:["FF69","C56","O43"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/offset-rotate"}],description:"The offset-rotate CSS property defines the direction of the element while positioning along the offset path."},{name:"max-inline-size",browsers:["FF41","S10.1","C57","O44"],values:[{name:"none",description:"No limit on the height of the box."}],status:"experimental",syntax:"<'max-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/max-inline-size"}],description:"Logical 'max-height'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"max-block-size",browsers:["FF41","S12.1","C57","O44"],values:[{name:"none",description:"No limit on the width of the box."}],status:"experimental",syntax:"<'max-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/max-block-size"}],description:"Logical 'max-width'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"scroll-padding",syntax:"[ auto | <length-percentage> ]{1,4}",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding"}],description:"The scroll-padding property is a shorthand property which sets all of the scroll-padding longhands, assigning values much like the padding property does for the padding-* longhands."},{name:"transform-box",syntax:"border-box | fill-box | view-box",browsers:["FF55","S11","C64","O51"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transform-box"}],description:"The transform-box CSS property defines the layout box to which the transform and transform-origin properties relate."},{name:"scroll-padding-top",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-top"}],description:"The scroll-padding-top property defines offsets for the top of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"gap",syntax:"<'row-gap'> <'column-gap'>?",browsers:["E16","FF63","S10.1","C66","O53"],description:"The gap CSS property is a shorthand property for row-gap and column-gap specifying the gutters between grid rows and columns."},{name:"scroll-padding-right",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-right"}],description:"The scroll-padding-right property defines offsets for the right of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"marker",values:[{name:"none",description:"Indicates that no marker symbol will be drawn at the given vertex or vertices."},{name:"url()",description:"Indicates that the <marker> element referenced will be used."}],description:"Specifies the marker symbol that shall be used for all points on the sets the value for all vertices on the given ‘path’ element or basic shape.",restrictions:["url"]},{name:"scroll-padding-bottom",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-bottom"}],description:"The scroll-padding-bottom property defines offsets for the bottom of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"scroll-padding-inline-start",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline-start"}],description:"The scroll-padding-inline-start property defines offsets for the start edge in the inline dimension of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"scroll-padding-block-start",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block-start"}],description:"The scroll-padding-block-start property defines offsets for the start edge in the block dimension of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"scroll-padding-inline-end",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline-end"}],description:"The scroll-padding-inline-end property defines offsets for the end edge in the inline dimension of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"scroll-padding-block-end",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block-end"}],description:"The scroll-padding-block-end property defines offsets for the end edge in the block dimension of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"place-self",syntax:"<'align-self'> <'justify-self'>?",browsers:["FF45","C59","O46"],description:"The place-self CSS property is a shorthand property sets both the align-self and justify-self properties. The first value is the align-self property value, the second the justify-self one. If the second value is not present, the first value is also used for it."},{name:"grid",browsers:["E16","FF52","S10.1","C57","O44"],syntax:"<'grid-template'> | <'grid-template-rows'> / [ auto-flow && dense? ] <'grid-auto-columns'>? | [ auto-flow && dense? ] <'grid-auto-rows'>? / <'grid-template-columns'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid"}],description:"The grid CSS property is a shorthand property that sets all of the explicit grid properties ('grid-template-rows', 'grid-template-columns', and 'grid-template-areas'), and all the implicit grid properties ('grid-auto-rows', 'grid-auto-columns', and 'grid-auto-flow'), in a single declaration.",restrictions:["identifier","length","percentage","string","enum"]},{name:"place-items",syntax:"<'align-items'> <'justify-items'>?",browsers:["FF45","S11","C59","O46"],description:"The CSS place-items shorthand property sets both the align-items and justify-items properties. The first value is the align-items property value, the second the justify-items one. If the second value is not present, the first value is also used for it."},{name:"font-optical-sizing",syntax:"auto | none",browsers:["E17","FF62","S11","C79"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-optical-sizing"}],description:"The font-optical-sizing CSS property allows developers to control whether browsers render text with slightly differing visual representations to optimize viewing at different sizes, or not. This only works for fonts that have an optical size variation axis."},{name:"border-block-start",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-start"}],description:"Logical 'border-top'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width","line-style","color"]},{name:"border-block-end",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-end"}],description:"Logical 'border-bottom'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width","line-style","color"]},{name:"border-inline-start",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-start"}],description:"Logical 'border-left'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width","line-style","color"]},{name:"offset",status:"experimental",syntax:"[ <'offset-position'>? [ <'offset-path'> [ <'offset-distance'> || <'offset-rotate'> ]? ]? ]! [ / <'offset-anchor'> ]?",browsers:["FF71","C55","O42"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/offset"}],description:"The offset CSS property is a shorthand property for animating an element along a defined path."},{name:"border-inline-end",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-end"}],description:"Logical 'border-right'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width","line-style","color"]},{name:"scroll-padding-block",syntax:"[ auto | <length-percentage> ]{1,2}",browsers:["FF68","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block"}],description:"The scroll-padding-block property is a shorthand property which sets the scroll-padding longhands for the block dimension."},{name:"scroll-padding-inline",syntax:"[ auto | <length-percentage> ]{1,2}",browsers:["FF68","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline"}],description:"The scroll-padding-inline property is a shorthand property which sets the scroll-padding longhands for the inline dimension."},{name:"motion",browsers:["C46","O33"],values:[{name:"none",description:"No motion path gets created."},{name:"path()",description:"Defines an SVG path as a string, with optional 'fill-rule' as the first argument."},{name:"auto",description:"Indicates that the object is rotated by the angle of the direction of the motion path."},{name:"reverse",description:"Indicates that the object is rotated by the angle of the direction of the motion path plus 180 degrees."}],description:"Shorthand property for setting 'motion-path', 'motion-offset' and 'motion-rotation'.",restrictions:["url","length","percentage","angle","shape","geometry-box","enum"]},{name:"margin-inline",syntax:"<'margin-left'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-inline"}],description:"The margin-inline CSS property defines the logical inline start and end margins of an element, which maps to physical margins depending on the element's writing mode, directionality, and text orientation."},{name:"padding-block",syntax:"<'padding-left'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-block"}],description:"The padding-block CSS property defines the logical block start and end padding of an element, which maps to physical padding properties depending on the element's writing mode, directionality, and text orientation."},{name:"padding-inline",syntax:"<'padding-left'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-inline"}],description:"The padding-inline CSS property defines the logical inline start and end padding of an element, which maps to physical padding properties depending on the element's writing mode, directionality, and text orientation."},{name:"font-size-adjust",browsers:["FF40","C54","O41"],values:[{name:"none",description:"Do not preserve the font’s x-height."}],syntax:"none | <number>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-size-adjust"}],description:"Preserves the readability of text when font fallback occurs by adjusting the font-size so that the x-height is the same regardless of the font used.",restrictions:["number"]},{name:"motion-path",browsers:["C46","O33"],values:[{name:"none",description:"No motion path gets created."},{name:"path()",description:"Defines an SVG path as a string, with optional 'fill-rule' as the first argument."}],description:"Specifies the motion path the element gets positioned at.",restrictions:["url","shape","geometry-box","enum"]},{name:"text-justify",browsers:["E12","FF55","C32","IE11","O19"],values:[{name:"auto",description:"The UA determines the justification algorithm to follow, based on a balance between performance and adequate presentation quality."},{name:"distribute",description:"Justification primarily changes spacing both at word separators and at grapheme cluster boundaries in all scripts except those in the connected and cursive groups. This value is sometimes used in e.g. Japanese, often with the 'text-align-last' property."},{name:"distribute-all-lines"},{name:"inter-cluster",description:"Justification primarily changes spacing at word separators and at grapheme cluster boundaries in clustered scripts. This value is typically used for Southeast Asian scripts such as Thai."},{name:"inter-ideograph",description:"Justification primarily changes spacing at word separators and at inter-graphemic boundaries in scripts that use no word spaces. This value is typically used for CJK languages."},{name:"inter-word",description:"Justification primarily changes spacing at word separators. This value is typically used for languages that separate words using spaces, like English or (sometimes) Korean."},{name:"kashida",description:"Justification primarily stretches Arabic and related scripts through the use of kashida or other calligraphic elongation."},{name:"newspaper"}],syntax:"auto | inter-character | inter-word | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-justify"}],description:"Selects the justification algorithm used when 'text-align' is set to 'justify'. The property applies to block containers, but the UA may (but is not required to) also support it on inline elements.",restrictions:["enum"]},{name:"motion-offset",browsers:["C46","O33"],description:"A distance that describes the position along the specified motion path.",restrictions:["length","percentage"]},{name:"inset-block-start",syntax:"<'top'>",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-block-start"}],description:"The inset-block-start CSS property defines the logical block start offset of an element, which maps to a physical offset depending on the element's writing mode, directionality, and text orientation. It corresponds to the top, right, bottom, or left property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"inset",syntax:"<'top'>{1,4}",browsers:["FF66"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset"}],description:"The inset CSS property defines the logical block and inline start and end offsets of an element, which map to physical offsets depending on the element's writing mode, directionality, and text orientation. It corresponds to the top and bottom, or right and left properties depending on the values defined for writing-mode, direction, and text-orientation."},{name:"inset-inline-start",syntax:"<'top'>",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-inline-start"}],description:"The inset-inline-start CSS property defines the logical inline start inset of an element, which maps to a physical offset depending on the element's writing mode, directionality, and text orientation. It corresponds to the top, right, bottom, or left property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"inset-inline-end",syntax:"<'top'>",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-inline-end"}],description:"The inset-inline-end CSS property defines the logical inline end inset of an element, which maps to a physical inset depending on the element's writing mode, directionality, and text orientation. It corresponds to the top, right, bottom, or left property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"scale",syntax:"none | <number>{1,3}",browsers:["FF60"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scale"}],description:"The scale CSS property allows you to specify scale transforms individually and independently of the transform property. This maps better to typical user interface usage, and saves having to remember the exact order of transform functions to specify in the transform value."},{name:"translate",syntax:"none | <length-percentage> [ <length-percentage> <length>? ]?",browsers:["FF60"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/translate"}],description:"The translate CSS property allows you to specify translation transforms individually and independently of the transform property. This maps better to typical user interface usage, and saves having to remember the exact order of transform functions to specify in the transform value."},{name:"rotate",syntax:"none | <angle> | [ x | y | z | <number>{3} ] && <angle>",browsers:["FF60"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/rotate"}],description:"The rotate CSS property allows you to specify rotation transforms individually and independently of the transform property. This maps better to typical user interface usage, and saves having to remember the exact order of transform functions to specify in the transform value."},{name:"offset-anchor",status:"experimental",syntax:"auto | <position>",browsers:["FF70","C79"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/offset-anchor"}],description:"Defines an anchor point of the box positioned along the path. The anchor point specifies the point of the box which is to be considered as the point that is moved along the path."},{name:"offset-position",status:"experimental",syntax:"auto | <position>",description:"Specifies the initial position of the offset path. If position is specified with static, offset-position would be ignored."},{name:"margin-block",syntax:"<'margin-left'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-block"}],description:"The margin-block CSS property defines the logical block start and end margins of an element, which maps to physical margins depending on the element's writing mode, directionality, and text orientation."},{name:"user-zoom",syntax:"zoom | fixed",description:"The user-zoom CSS descriptor controls whether or not the user can change the zoom factor of a document defined by @viewport."},{name:"min-zoom",syntax:"auto | <number> | <percentage>",description:"The min-zoom CSS descriptor sets the minimum zoom factor of a document defined by the @viewport at-rule. The browser will not zoom out any further than this, whether automatically or at the user's request.\n\nA zoom factor of 1.0 or 100% corresponds to no zooming. Larger values are zoomed in. Smaller values are zoomed out."},{name:"inset-block-end",syntax:"<'top'>",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-block-end"}],description:"The inset-block-end CSS property defines the logical block end offset of an element, which maps to a physical offset depending on the element's writing mode, directionality, and text orientation. It corresponds to the top, right, bottom, or left property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"enable-background",values:[{name:"accumulate",description:"If the ancestor container element has a property of new, then all graphics elements within the current container are rendered both on the parent's background image and onto the target."},{name:"new",description:"Create a new background image canvas. All children of the current container element can access the background, and they will be rendered onto both the parent's background image canvas in addition to the target device."}],description:"Deprecated. Use 'isolation' property instead when support allows. Specifies how the accumulation of the background image is managed.",restrictions:["integer","length","percentage","enum"]},{name:"glyph-orientation-horizontal",description:"Controls glyph orientation when the inline-progression-direction is horizontal.",restrictions:["angle","number"]},{name:"glyph-orientation-vertical",values:[{name:"auto",description:"Sets the orientation based on the fullwidth or non-fullwidth characters and the most common orientation."}],description:"Controls glyph orientation when the inline-progression-direction is vertical.",restrictions:["angle","number","enum"]},{name:"kerning",values:[{name:"auto",description:"Indicates that the user agent should adjust inter-glyph spacing based on kerning tables that are included in the font that will be used."}],description:"Indicates whether the user agent should adjust inter-glyph spacing based on kerning tables that are included in the relevant font or instead disable auto-kerning and set inter-character spacing to a specific length.",restrictions:["length","enum"]},{name:"image-orientation",browsers:["FF26"],values:[{name:"flip",description:"After rotating by the precededing angle, the image is flipped horizontally. Defaults to 0deg if the angle is ommitted."},{name:"from-image",description:"If the image has an orientation specified in its metadata, such as EXIF, this value computes to the angle that the metadata specifies is necessary to correctly orient the image."}],syntax:"from-image | <angle> | [ <angle>? flip ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/image-orientation"}],description:"Specifies an orthogonal rotation to be applied to an image before it is laid out.",restrictions:["angle"]},{name:"image-resolution",status:"experimental",syntax:"[ from-image || <resolution> ] && snap?",description:"The image-resolution property specifies the intrinsic resolution of all raster images used in or on the element. It affects both content images (e.g. replaced elements and generated content) and decorative images (such as background-image). The intrinsic resolution of an image is used to determine the image’s intrinsic dimensions."},{name:"max-zoom",syntax:"auto | <number> | <percentage>",description:"The max-zoom CSS descriptor sets the maximum zoom factor of a document defined by the @viewport at-rule. The browser will not zoom in any further than this, whether automatically or at the user's request.\n\nA zoom factor of 1.0 or 100% corresponds to no zooming. Larger values are zoomed in. Smaller values are zoomed out."},{name:"orientation",syntax:"auto | portrait | landscape",description:"The orientation CSS @media media feature can be used to apply styles based on the orientation of the viewport (or the page box, for paged media)."},{name:"motion-rotation",browsers:["C46","O33"],values:[{name:"auto",description:"Indicates that the object is rotated by the angle of the direction of the motion path."},{name:"reverse",description:"Indicates that the object is rotated by the angle of the direction of the motion path plus 180 degrees."}],description:"Defines the direction of the element while positioning along the motion path.",restrictions:["angle"]},{name:"scroll-snap-points-x",browsers:["FF39","S9"],values:[{name:"none",description:"No snap points are defined by this scroll container."},{name:"repeat()",description:"Defines an interval at which snap points are defined, starting from the container’s relevant start edge."}],status:"obsolete",syntax:"none | repeat( <length-percentage> )",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-points-x"}],description:"Defines the positioning of snap points along the x axis of the scroll container it is applied to.",restrictions:["enum"]},{name:"scroll-snap-points-y",browsers:["FF39","S9"],values:[{name:"none",description:"No snap points are defined by this scroll container."},{name:"repeat()",description:"Defines an interval at which snap points are defined, starting from the container’s relevant start edge."}],status:"obsolete",syntax:"none | repeat( <length-percentage> )",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-points-y"}],description:"Defines the positioning of snap points along the y axis of the scroll container it is applied to.",restrictions:["enum"]},{name:"scroll-snap-coordinate",browsers:["FF39"],values:[{name:"none",description:"Specifies that this element does not contribute a snap point."}],status:"obsolete",syntax:"none | <position>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-coordinate"}],description:"Defines the x and y coordinate within the element which will align with the nearest ancestor scroll container’s snap-destination for the respective axis.",restrictions:["position","length","percentage","enum"]},{name:"scroll-snap-destination",browsers:["FF39"],status:"obsolete",syntax:"<position>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-destination"}],description:"Define the x and y coordinate within the scroll container’s visual viewport which element snap points will align with.",restrictions:["position","length","percentage"]},{name:"border-block-color",syntax:"<'border-top-color'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-color"}],description:"The border-block-color CSS property defines the color of the logical block borders of an element, which maps to a physical border color depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-color and border-bottom-color, or border-right-color and border-left-color property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-block-style",syntax:"<'border-top-style'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-style"}],description:"The border-block-style CSS property defines the style of the logical block borders of an element, which maps to a physical border style depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-style and border-bottom-style, or border-left-style and border-right-style properties depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-block-width",syntax:"<'border-top-width'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-width"}],description:"The border-block-width CSS property defines the width of the logical block borders of an element, which maps to a physical border width depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-width and border-bottom-width, or border-left-width, and border-right-width property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-inline-color",syntax:"<'border-top-color'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-color"}],description:"The border-inline-color CSS property defines the color of the logical inline borders of an element, which maps to a physical border color depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-color and border-bottom-color, or border-right-color and border-left-color property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-inline-style",syntax:"<'border-top-style'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-style"}],description:"The border-inline-style CSS property defines the style of the logical inline borders of an element, which maps to a physical border style depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-style and border-bottom-style, or border-left-style and border-right-style properties depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-inline-width",syntax:"<'border-top-width'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-width"}],description:"The border-inline-width CSS property defines the width of the logical inline borders of an element, which maps to a physical border width depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-width and border-bottom-width, or border-left-width, and border-right-width property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-block",syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block"}],description:"The border-block CSS property is a shorthand property for setting the individual logical block border property values in a single place in the style sheet."},{name:"border-inline",syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline"}],description:"The border-inline CSS property is a shorthand property for setting the individual logical inline border property values in a single place in the style sheet."},{name:"inset-block",syntax:"<'top'>{1,2}",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-block"}],description:"The inset-block CSS property defines the logical block start and end offsets of an element, which maps to physical offsets depending on the element's writing mode, directionality, and text orientation. It corresponds to the top and bottom, or right and left properties depending on the values defined for writing-mode, direction, and text-orientation."},{name:"inset-inline",syntax:"<'top'>{1,2}",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-inline"}],description:"The inset-inline CSS property defines the logical block start and end offsets of an element, which maps to physical offsets depending on the element's writing mode, directionality, and text orientation. It corresponds to the top and bottom, or right and left properties depending on the values defined for writing-mode, direction, and text-orientation."},{name:"additive-symbols",browsers:["FF33"],syntax:"[ <integer> && <symbol> ]#",description:"@counter-style descriptor. Specifies the symbols used by the marker-construction algorithm specified by the system descriptor. Needs to be specified if the counter system is 'additive'.",restrictions:["integer","string","image","identifier"]},{name:"alt",browsers:["S9"],values:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/alt"}],description:"Provides alternative text for assistive technology to replace the generated content of a ::before or ::after element.",restrictions:["string","enum"]},{name:"behavior",browsers:["IE6"],description:"IE only. Used to extend behaviors of the browser.",restrictions:["url"]},{name:"box-decoration-break",browsers:["FF32","S6.1","C22","O15"],values:[{name:"clone",description:"Each box is independently wrapped with the border and padding."},{name:"slice",description:"The effect is as though the element were rendered with no breaks present, and then sliced by the breaks afterward."}],syntax:"slice | clone",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-decoration-break"}],description:"Specifies whether individual boxes are treated as broken pieces of one continuous box, or whether each box is individually wrapped with the border and padding.",restrictions:["enum"]},{name:"fallback",browsers:["FF33"],syntax:"<counter-style-name>",description:"@counter-style descriptor. Specifies a fallback counter style to be used when the current counter style can’t create a representation for a given counter value.",restrictions:["identifier"]},{name:"font-language-override",browsers:["FF34"],values:[{name:"normal",description:"Implies that when rendering with OpenType fonts the language of the document is used to infer the OpenType language system, used to select language specific features when rendering."}],syntax:"normal | <string>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-language-override"}],description:"The value of 'normal' implies that when rendering with OpenType fonts the language of the document is used to infer the OpenType language system, used to select language specific features when rendering.",restrictions:["string"]},{name:"font-synthesis",browsers:["FF34","S9"],values:[{name:"none",description:"Disallow all synthetic faces."},{name:"style",description:"Allow synthetic italic faces."},{name:"weight",description:"Allow synthetic bold faces."}],syntax:"none | [ weight || style ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-synthesis"}],description:"Controls whether user agents are allowed to synthesize bold or oblique font faces when a font family lacks bold or italic faces.",restrictions:["enum"]},{name:"font-variant-alternates",browsers:["FF34"],values:[{name:"annotation()",description:"Enables display of alternate annotation forms."},{name:"character-variant()",description:"Enables display of specific character variants."},{name:"historical-forms",description:"Enables display of historical forms."},{name:"normal",description:"None of the features are enabled."},{name:"ornaments()",description:"Enables replacement of default glyphs with ornaments, if provided in the font."},{name:"styleset()",description:"Enables display with stylistic sets."},{name:"stylistic()",description:"Enables display of stylistic alternates."},{name:"swash()",description:"Enables display of swash glyphs."}],syntax:"normal | [ stylistic( <feature-value-name> ) || historical-forms || styleset( <feature-value-name># ) || character-variant( <feature-value-name># ) || swash( <feature-value-name> ) || ornaments( <feature-value-name> ) || annotation( <feature-value-name> ) ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-alternates"}],description:"For any given character, fonts can provide a variety of alternate glyphs in addition to the default glyph for that character. This property provides control over the selection of these alternate glyphs.",restrictions:["enum"]},{name:"font-variant-position",browsers:["FF34"],values:[{name:"normal",description:"None of the features are enabled."},{name:"sub",description:"Enables display of subscript variants (OpenType feature: subs)."},{name:"super",description:"Enables display of superscript variants (OpenType feature: sups)."}],syntax:"normal | sub | super",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-position"}],description:"Specifies the vertical position",restrictions:["enum"]},{name:"ime-mode",browsers:["E12","FF3","IE5"],values:[{name:"active",description:"The input method editor is initially active; text entry is performed using it unless the user specifically dismisses it."},{name:"auto",description:"No change is made to the current input method editor state. This is the default."},{name:"disabled",description:"The input method editor is disabled and may not be activated by the user."},{name:"inactive",description:"The input method editor is initially inactive, but the user may activate it if they wish."},{name:"normal",description:"The IME state should be normal; this value can be used in a user style sheet to override the page setting."}],status:"obsolete",syntax:"auto | normal | active | inactive | disabled",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/ime-mode"}],description:"Controls the state of the input method editor for text fields.",restrictions:["enum"]},{name:"mask-image",browsers:["E16","FF53","S4","C1","O15"],values:[{name:"none",description:"Counts as a transparent black image layer."},{name:"url()",description:"Reference to a <mask element or to a CSS image."}],syntax:"<mask-reference>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-image"}],description:"Sets the mask layer image of an element.",restrictions:["url","image","enum"]},{name:"mask-mode",browsers:["FF53"],values:[{name:"alpha",description:"Alpha values of the mask layer image should be used as the mask values."},{name:"auto",description:"Use alpha values if 'mask-image' is an image, luminance if a <mask> element or a CSS image."},{name:"luminance",description:"Luminance values of the mask layer image should be used as the mask values."}],syntax:"<masking-mode>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-mode"}],description:"Indicates whether the mask layer image is treated as luminance mask or alpha mask.",restrictions:["url","image","enum"]},{name:"mask-origin",browsers:["FF53","S4","C1","O15"],syntax:"<geometry-box>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-origin"}],description:"Specifies the mask positioning area.",restrictions:["geometry-box","enum"]},{name:"mask-position",browsers:["E18","FF53","S3.2","C1","O15"],syntax:"<position>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-position"}],description:"Specifies how mask layer images are positioned.",restrictions:["position","length","percentage"]},{name:"mask-repeat",browsers:["E18","FF53","S3.2","C1","O15"],syntax:"<repeat-style>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-repeat"}],description:"Specifies how mask layer images are tiled after they have been sized and positioned.",restrictions:["repeat"]},{name:"mask-size",browsers:["E18","FF53","S4","C4","O15"],values:[{name:"auto",description:"Resolved by using the image’s intrinsic ratio and the size of the other dimension, or failing that, using the image’s intrinsic size, or failing that, treating it as 100%."},{name:"contain",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the largest size such that both its width and its height can fit inside the background positioning area."},{name:"cover",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the smallest size such that both its width and its height can completely cover the background positioning area."}],syntax:"<bg-size>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-size"}],description:"Specifies the size of the mask layer images.",restrictions:["length","percentage","enum"]},{name:"-moz-animation",browsers:["FF9"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"infinite",description:"Causes the animation to repeat forever."},{name:"none",description:"No animation is performed"},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Shorthand property combines six of the animation properties into a single property.",restrictions:["time","enum","timing-function","identifier","number"]},{name:"-moz-animation-delay",browsers:["FF9"],description:"Defines when the animation will start.",restrictions:["time"]},{name:"-moz-animation-direction",browsers:["FF9"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Defines whether or not the animation should play in reverse on alternate cycles.",restrictions:["enum"]},{name:"-moz-animation-duration",browsers:["FF9"],description:"Defines the length of time that an animation takes to complete one cycle.",restrictions:["time"]},{name:"-moz-animation-iteration-count",browsers:["FF9"],values:[{name:"infinite",description:"Causes the animation to repeat forever."}],description:"Defines the number of times an animation cycle is played. The default value is one, meaning the animation will play from beginning to end once.",restrictions:["number","enum"]},{name:"-moz-animation-name",browsers:["FF9"],values:[{name:"none",description:"No animation is performed"}],description:"Defines a list of animations that apply. Each name is used to select the keyframe at-rule that provides the property values for the animation.",restrictions:["identifier","enum"]},{name:"-moz-animation-play-state",browsers:["FF9"],values:[{name:"paused",description:"A running animation will be paused."},{name:"running",description:"Resume playback of a paused animation."}],description:"Defines whether the animation is running or paused.",restrictions:["enum"]},{name:"-moz-animation-timing-function",browsers:["FF9"],description:"Describes how the animation will progress over one cycle of its duration. See the 'transition-timing-function'.",restrictions:["timing-function"]},{name:"-moz-appearance",browsers:["FF1"],values:[{name:"button"},{name:"button-arrow-down"},{name:"button-arrow-next"},{name:"button-arrow-previous"},{name:"button-arrow-up"},{name:"button-bevel"},{name:"checkbox"},{name:"checkbox-container"},{name:"checkbox-label"},{name:"dialog"},{name:"groupbox"},{name:"listbox"},{name:"menuarrow"},{name:"menuimage"},{name:"menuitem"},{name:"menuitemtext"},{name:"menulist"},{name:"menulist-button"},{name:"menulist-text"},{name:"menulist-textfield"},{name:"menupopup"},{name:"menuradio"},{name:"menuseparator"},{name:"-moz-mac-unified-toolbar"},{name:"-moz-win-borderless-glass"},{name:"-moz-win-browsertabbar-toolbox"},{name:"-moz-win-communications-toolbox"},{name:"-moz-win-glass"},{name:"-moz-win-media-toolbox"},{name:"none"},{name:"progressbar"},{name:"progresschunk"},{name:"radio"},{name:"radio-container"},{name:"radio-label"},{name:"radiomenuitem"},{name:"resizer"},{name:"resizerpanel"},{name:"scrollbarbutton-down"},{name:"scrollbarbutton-left"},{name:"scrollbarbutton-right"},{name:"scrollbarbutton-up"},{name:"scrollbar-small"},{name:"scrollbartrack-horizontal"},{name:"scrollbartrack-vertical"},{name:"separator"},{name:"spinner"},{name:"spinner-downbutton"},{name:"spinner-textfield"},{name:"spinner-upbutton"},{name:"statusbar"},{name:"statusbarpanel"},{name:"tab"},{name:"tabpanels"},{name:"tab-scroll-arrow-back"},{name:"tab-scroll-arrow-forward"},{name:"textfield"},{name:"textfield-multiline"},{name:"toolbar"},{name:"toolbox"},{name:"tooltip"},{name:"treeheadercell"},{name:"treeheadersortarrow"},{name:"treeitem"},{name:"treetwistyopen"},{name:"treeview"},{name:"treewisty"},{name:"window"}],status:"nonstandard",syntax:"none | button | button-arrow-down | button-arrow-next | button-arrow-previous | button-arrow-up | button-bevel | button-focus | caret | checkbox | checkbox-container | checkbox-label | checkmenuitem | dualbutton | groupbox | listbox | listitem | menuarrow | menubar | menucheckbox | menuimage | menuitem | menuitemtext | menulist | menulist-button | menulist-text | menulist-textfield | menupopup | menuradio | menuseparator | meterbar | meterchunk | progressbar | progressbar-vertical | progresschunk | progresschunk-vertical | radio | radio-container | radio-label | radiomenuitem | range | range-thumb | resizer | resizerpanel | scale-horizontal | scalethumbend | scalethumb-horizontal | scalethumbstart | scalethumbtick | scalethumb-vertical | scale-vertical | scrollbarbutton-down | scrollbarbutton-left | scrollbarbutton-right | scrollbarbutton-up | scrollbarthumb-horizontal | scrollbarthumb-vertical | scrollbartrack-horizontal | scrollbartrack-vertical | searchfield | separator | sheet | spinner | spinner-downbutton | spinner-textfield | spinner-upbutton | splitter | statusbar | statusbarpanel | tab | tabpanel | tabpanels | tab-scroll-arrow-back | tab-scroll-arrow-forward | textfield | textfield-multiline | toolbar | toolbarbutton | toolbarbutton-dropdown | toolbargripper | toolbox | tooltip | treeheader | treeheadercell | treeheadersortarrow | treeitem | treeline | treetwisty | treetwistyopen | treeview | -moz-mac-unified-toolbar | -moz-win-borderless-glass | -moz-win-browsertabbar-toolbox | -moz-win-communicationstext | -moz-win-communications-toolbox | -moz-win-exclude-glass | -moz-win-glass | -moz-win-mediatext | -moz-win-media-toolbox | -moz-window-button-box | -moz-window-button-box-maximized | -moz-window-button-close | -moz-window-button-maximize | -moz-window-button-minimize | -moz-window-button-restore | -moz-window-frame-bottom | -moz-window-frame-left | -moz-window-frame-right | -moz-window-titlebar | -moz-window-titlebar-maximized",description:"Used in Gecko (Firefox) to display an element using a platform-native styling based on the operating system's theme.",restrictions:["enum"]},{name:"-moz-backface-visibility",browsers:["FF10"],values:[{name:"hidden"},{name:"visible"}],description:"Determines whether or not the 'back' side of a transformed element is visible when facing the viewer. With an identity transform, the front side of an element faces the viewer.",restrictions:["enum"]},{name:"-moz-background-clip",browsers:["FF1-3.6"],values:[{name:"padding"}],description:"Determines the background painting area.",restrictions:["box","enum"]},{name:"-moz-background-inline-policy",browsers:["FF1"],values:[{name:"bounding-box"},{name:"continuous"},{name:"each-box"}],description:"In Gecko-based applications like Firefox, the -moz-background-inline-policy CSS property specifies how the background image of an inline element is determined when the content of the inline element wraps onto multiple lines. The choice of position has significant effects on repetition.",restrictions:["enum"]},{name:"-moz-background-origin",browsers:["FF1"],description:"For elements rendered as a single box, specifies the background positioning area. For elements rendered as multiple boxes (e.g., inline boxes on several lines, boxes on several pages) specifies which boxes 'box-decoration-break' operates on to determine the background positioning area(s).",restrictions:["box"]},{name:"-moz-border-bottom-colors",browsers:["FF1"],status:"nonstandard",syntax:"<color>+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-border-bottom-colors"}],description:"Sets a list of colors for the bottom border.",restrictions:["color"]},{name:"-moz-border-image",browsers:["FF3.6"],values:[{name:"auto",description:"If 'auto' is specified then the border image width is the intrinsic width or height (whichever is applicable) of the corresponding image slice. If the image does not have the required intrinsic dimension then the corresponding border-width is used instead."},{name:"fill",description:"Causes the middle part of the border-image to be preserved."},{name:"none"},{name:"repeat",description:"The image is tiled (repeated) to fill the area."},{name:"round",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the image is rescaled so that it does."},{name:"space",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the extra space is distributed around the tiles."},{name:"stretch",description:"The image is stretched to fill the area."},{name:"url()"}],description:"Shorthand property for setting 'border-image-source', 'border-image-slice', 'border-image-width', 'border-image-outset' and 'border-image-repeat'. Omitted values are set to their initial values.",restrictions:["length","percentage","number","url","enum"]},{name:"-moz-border-left-colors",browsers:["FF1"],status:"nonstandard",syntax:"<color>+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-border-left-colors"}],description:"Sets a list of colors for the bottom border.",restrictions:["color"]},{name:"-moz-border-right-colors",browsers:["FF1"],status:"nonstandard",syntax:"<color>+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-border-right-colors"}],description:"Sets a list of colors for the bottom border.",restrictions:["color"]},{name:"-moz-border-top-colors",browsers:["FF1"],status:"nonstandard",syntax:"<color>+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-border-top-colors"}],description:"Ske Firefox, -moz-border-bottom-colors sets a list of colors for the bottom border.",restrictions:["color"]},{name:"-moz-box-align",browsers:["FF1"],values:[{name:"baseline",description:"If this box orientation is inline-axis or horizontal, all children are placed with their baselines aligned, and extra space placed before or after as necessary. For block flows, the baseline of the first non-empty line box located within the element is used. For tables, the baseline of the first cell is used."},{name:"center",description:"Any extra space is divided evenly, with half placed above the child and the other half placed after the child."},{name:"end",description:"For normal direction boxes, the bottom edge of each child is placed along the bottom of the box. Extra space is placed above the element. For reverse direction boxes, the top edge of each child is placed along the top of the box. Extra space is placed below the element."},{name:"start",description:"For normal direction boxes, the top edge of each child is placed along the top of the box. Extra space is placed below the element. For reverse direction boxes, the bottom edge of each child is placed along the bottom of the box. Extra space is placed above the element."},{name:"stretch",description:"The height of each child is adjusted to that of the containing block."}],description:"Specifies how a XUL box aligns its contents across (perpendicular to) the direction of its layout. The effect of this is only visible if there is extra space in the box.",restrictions:["enum"]},{name:"-moz-box-direction",browsers:["FF1"],values:[{name:"normal",description:"A box with a computed value of horizontal for box-orient displays its children from left to right. A box with a computed value of vertical displays its children from top to bottom."},{name:"reverse",description:"A box with a computed value of horizontal for box-orient displays its children from right to left. A box with a computed value of vertical displays its children from bottom to top."}],description:"Specifies whether a box lays out its contents normally (from the top or left edge), or in reverse (from the bottom or right edge).",restrictions:["enum"]},{name:"-moz-box-flex",browsers:["FF1"],description:"Specifies how a box grows to fill the box that contains it, in the direction of the containing box's layout.",restrictions:["number"]},{name:"-moz-box-flexgroup",browsers:["FF1"],description:"Flexible elements can be assigned to flex groups using the 'box-flex-group' property.",restrictions:["integer"]},{name:"-moz-box-ordinal-group",browsers:["FF1"],description:"Indicates the ordinal group the element belongs to. Elements with a lower ordinal group are displayed before those with a higher ordinal group.",restrictions:["integer"]},{name:"-moz-box-orient",browsers:["FF1"],values:[{name:"block-axis",description:"Elements are oriented along the box's axis."},{name:"horizontal",description:"The box displays its children from left to right in a horizontal line."},{name:"inline-axis",description:"Elements are oriented vertically."},{name:"vertical",description:"The box displays its children from stacked from top to bottom vertically."}],description:"In Mozilla applications, -moz-box-orient specifies whether a box lays out its contents horizontally or vertically.",restrictions:["enum"]},{name:"-moz-box-pack",browsers:["FF1"],values:[{name:"center",description:"The extra space is divided evenly, with half placed before the first child and the other half placed after the last child."},{name:"end",description:"For normal direction boxes, the right edge of the last child is placed at the right side, with all extra space placed before the first child. For reverse direction boxes, the left edge of the first child is placed at the left side, with all extra space placed after the last child."},{name:"justify",description:"The space is divided evenly in-between each child, with none of the extra space placed before the first child or after the last child. If there is only one child, treat the pack value as if it were start."},{name:"start",description:"For normal direction boxes, the left edge of the first child is placed at the left side, with all extra space placed after the last child. For reverse direction boxes, the right edge of the last child is placed at the right side, with all extra space placed before the first child."}],description:"Specifies how a box packs its contents in the direction of its layout. The effect of this is only visible if there is extra space in the box.",restrictions:["enum"]},{name:"-moz-box-sizing",browsers:["FF1"],values:[{name:"border-box",description:"The specified width and height (and respective min/max properties) on this element determine the border box of the element."},{name:"content-box",description:"Behavior of width and height as specified by CSS2.1. The specified width and height (and respective min/max properties) apply to the width and height respectively of the content box of the element."},{name:"padding-box",description:"The specified width and height (and respective min/max properties) on this element determine the padding box of the element."}],description:"Box Model addition in CSS3.",restrictions:["enum"]},{name:"-moz-column-count",browsers:["FF3.5"],values:[{name:"auto",description:"Determines the number of columns by the 'column-width' property and the element width."}],description:"Describes the optimal number of columns into which the content of the element will be flowed.",restrictions:["integer"]},{name:"-moz-column-gap",browsers:["FF3.5"],values:[{name:"normal",description:"User agent specific and typically equivalent to 1em."}],description:"Sets the gap between columns. If there is a column rule between columns, it will appear in the middle of the gap.",restrictions:["length"]},{name:"-moz-column-rule",browsers:["FF3.5"],description:"Shorthand for setting 'column-rule-width', 'column-rule-style', and 'column-rule-color' at the same place in the style sheet. Omitted values are set to their initial values.",restrictions:["length","line-width","line-style","color"]},{name:"-moz-column-rule-color",browsers:["FF3.5"],description:"Sets the color of the column rule",restrictions:["color"]},{name:"-moz-column-rule-style",browsers:["FF3.5"],description:"Sets the style of the rule between columns of an element.",restrictions:["line-style"]},{name:"-moz-column-rule-width",browsers:["FF3.5"],description:"Sets the width of the rule between columns. Negative values are not allowed.",restrictions:["length","line-width"]},{name:"-moz-columns",browsers:["FF9"],values:[{name:"auto",description:"The width depends on the values of other properties."}],description:"A shorthand property which sets both 'column-width' and 'column-count'.",restrictions:["length","integer"]},{name:"-moz-column-width",browsers:["FF3.5"],values:[{name:"auto",description:"The width depends on the values of other properties."}],description:"This property describes the width of columns in multicol elements.",restrictions:["length"]},{name:"-moz-font-feature-settings",browsers:["FF4"],values:[{name:'"c2cs"'},{name:'"dlig"'},{name:'"kern"'},{name:'"liga"'},{name:'"lnum"'},{name:'"onum"'},{name:'"smcp"'},{name:'"swsh"'},{name:'"tnum"'},{name:"normal",description:"No change in glyph substitution or positioning occurs."},{name:"off",browsers:["FF4"]},{name:"on",browsers:["FF4"]}],description:"Provides low-level control over OpenType font features. It is intended as a way of providing access to font features that are not widely used but are needed for a particular use case.",restrictions:["string","integer"]},{name:"-moz-hyphens",browsers:["FF9"],values:[{name:"auto",description:"Conditional hyphenation characters inside a word, if present, take priority over automatic resources when determining hyphenation points within the word."},{name:"manual",description:"Words are only broken at line breaks where there are characters inside the word that suggest line break opportunities"},{name:"none",description:"Words are not broken at line breaks, even if characters inside the word suggest line break points."}],description:"Controls whether hyphenation is allowed to create more break opportunities within a line of text.",restrictions:["enum"]},{name:"-moz-perspective",browsers:["FF10"],values:[{name:"none",description:"No perspective transform is applied."}],description:"Applies the same transform as the perspective(<number>) transform function, except that it applies only to the positioned or transformed children of the element, not to the transform on the element itself.",restrictions:["length"]},{name:"-moz-perspective-origin",browsers:["FF10"],description:"Establishes the origin for the perspective property. It effectively sets the X and Y position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"-moz-text-align-last",browsers:["FF12"],values:[{name:"auto"},{name:"center",description:"The inline contents are centered within the line box."},{name:"justify",description:"The text is justified according to the method specified by the 'text-justify' property."},{name:"left",description:"The inline contents are aligned to the left edge of the line box. In vertical text, 'left' aligns to the edge of the line box that would be the start edge for left-to-right text."},{name:"right",description:"The inline contents are aligned to the right edge of the line box. In vertical text, 'right' aligns to the edge of the line box that would be the end edge for left-to-right text."}],description:"Describes how the last line of a block or a line right before a forced line break is aligned when 'text-align' is set to 'justify'.",restrictions:["enum"]},{name:"-moz-text-decoration-color",browsers:["FF6"],description:"Specifies the color of text decoration (underlines overlines, and line-throughs) set on the element with text-decoration-line.",restrictions:["color"]},{name:"-moz-text-decoration-line",browsers:["FF6"],values:[{name:"line-through",description:"Each line of text has a line through the middle."},{name:"none",description:"Neither produces nor inhibits text decoration."},{name:"overline",description:"Each line of text has a line above it."},{name:"underline",description:"Each line of text is underlined."}],description:"Specifies what line decorations, if any, are added to the element.",restrictions:["enum"]},{name:"-moz-text-decoration-style",browsers:["FF6"],values:[{name:"dashed",description:"Produces a dashed line style."},{name:"dotted",description:"Produces a dotted line."},{name:"double",description:"Produces a double line."},{name:"none",description:"Produces no line."},{name:"solid",description:"Produces a solid line."},{name:"wavy",description:"Produces a wavy line."}],description:"Specifies the line style for underline, line-through and overline text decoration.",restrictions:["enum"]},{name:"-moz-text-size-adjust",browsers:["FF"],values:[{name:"auto",description:"Renderers must use the default size adjustment when displaying on a small device."},{name:"none",description:"Renderers must not do size adjustment when displaying on a small device."}],description:"Specifies a size adjustment for displaying text content in mobile browsers.",restrictions:["enum","percentage"]},{name:"-moz-transform",browsers:["FF3.5"],values:[{name:"matrix()",description:"Specifies a 2D transformation in the form of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix [a b c d e f]"},{name:"matrix3d()",description:"Specifies a 3D transformation as a 4x4 homogeneous matrix of 16 values in column-major order."},{name:"none"},{name:"perspective",description:"Specifies a perspective projection matrix."},{name:"rotate()",description:"Specifies a 2D rotation by the angle specified in the parameter about the origin of the element, as defined by the transform-origin property."},{name:"rotate3d()",description:"Specifies a clockwise 3D rotation by the angle specified in last parameter about the [x,y,z] direction vector described by the first 3 parameters."},{name:"rotateX('angle')",description:"Specifies a clockwise rotation by the given angle about the X axis."},{name:"rotateY('angle')",description:"Specifies a clockwise rotation by the given angle about the Y axis."},{name:"rotateZ('angle')",description:"Specifies a clockwise rotation by the given angle about the Z axis."},{name:"scale()",description:"Specifies a 2D scale operation by the [sx,sy] scaling vector described by the 2 parameters. If the second parameter is not provided, it is takes a value equal to the first."},{name:"scale3d()",description:"Specifies a 3D scale operation by the [sx,sy,sz] scaling vector described by the 3 parameters."},{name:"scaleX()",description:"Specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter."},{name:"scaleY()",description:"Specifies a scale operation using the [sy,1] scaling vector, where sy is given as the parameter."},{name:"scaleZ()",description:"Specifies a scale operation using the [1,1,sz] scaling vector, where sz is given as the parameter."},{name:"skew()",description:"Specifies a skew transformation along the X and Y axes. The first angle parameter specifies the skew on the X axis. The second angle parameter specifies the skew on the Y axis. If the second parameter is not given then a value of 0 is used for the Y angle (ie: no skew on the Y axis)."},{name:"skewX()",description:"Specifies a skew transformation along the X axis by the given angle."},{name:"skewY()",description:"Specifies a skew transformation along the Y axis by the given angle."},{name:"translate()",description:"Specifies a 2D translation by the vector [tx, ty], where tx is the first translation-value parameter and ty is the optional second translation-value parameter."},{name:"translate3d()",description:"Specifies a 3D translation by the vector [tx,ty,tz], with tx, ty and tz being the first, second and third translation-value parameters respectively."},{name:"translateX()",description:"Specifies a translation by the given amount in the X direction."},{name:"translateY()",description:"Specifies a translation by the given amount in the Y direction."},{name:"translateZ()",description:"Specifies a translation by the given amount in the Z direction. Note that percentage values are not allowed in the translateZ translation-value, and if present are evaluated as 0."}],description:"A two-dimensional transformation is applied to an element through the 'transform' property. This property contains a list of transform functions similar to those allowed by SVG.",restrictions:["enum"]},{name:"-moz-transform-origin",browsers:["FF3.5"],description:"Establishes the origin of transformation for an element.",restrictions:["position","length","percentage"]},{name:"-moz-transition",browsers:["FF4"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Shorthand property combines four of the transition properties into a single property.",restrictions:["time","property","timing-function","enum"]},{name:"-moz-transition-delay",browsers:["FF4"],description:"Defines when the transition will start. It allows a transition to begin execution some period of time from when it is applied.",restrictions:["time"]},{name:"-moz-transition-duration",browsers:["FF4"],description:"Specifies how long the transition from the old value to the new value should take.",restrictions:["time"]},{name:"-moz-transition-property",browsers:["FF4"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Specifies the name of the CSS property to which the transition is applied.",restrictions:["property"]},{name:"-moz-transition-timing-function",browsers:["FF4"],description:"Describes how the intermediate values used during a transition will be calculated.",restrictions:["timing-function"]},{name:"-moz-user-focus",browsers:["FF1"],values:[{name:"ignore"},{name:"normal"}],status:"nonstandard",syntax:"ignore | normal | select-after | select-before | select-menu | select-same | select-all | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-user-focus"}],description:"Used to indicate whether the element can have focus."},{name:"-moz-user-select",browsers:["FF1.5"],values:[{name:"all"},{name:"element"},{name:"elements"},{name:"-moz-all"},{name:"-moz-none"},{name:"none"},{name:"text"},{name:"toggle"}],description:"Controls the appearance of selection.",restrictions:["enum"]},{name:"-ms-accelerator",browsers:["E","IE10"],values:[{name:"false",description:"The element does not contain an accelerator key sequence."},{name:"true",description:"The element contains an accelerator key sequence."}],status:"nonstandard",syntax:"false | true",description:"IE only. Has the ability to turn off its system underlines for accelerator keys until the ALT key is pressed",restrictions:["enum"]},{name:"-ms-behavior",browsers:["IE8"],description:"IE only. Used to extend behaviors of the browser",restrictions:["url"]},{name:"-ms-block-progression",browsers:["IE8"],values:[{name:"bt",description:"Bottom-to-top block flow. Layout is horizontal."},{name:"lr",description:"Left-to-right direction. The flow orientation is vertical."},{name:"rl",description:"Right-to-left direction. The flow orientation is vertical."},{name:"tb",description:"Top-to-bottom direction. The flow orientation is horizontal."}],status:"nonstandard",syntax:"tb | rl | bt | lr",description:"Sets the block-progression value and the flow orientation",restrictions:["enum"]},{name:"-ms-content-zoom-chaining",browsers:["E","IE10"],values:[{name:"chained",description:"The nearest zoomable parent element begins zooming when the user hits a zoom limit during a manipulation. No bounce effect is shown."},{name:"none",description:"A bounce effect is shown when the user hits a zoom limit during a manipulation."}],status:"nonstandard",syntax:"none | chained",description:"Specifies the zoom behavior that occurs when a user hits the zoom limit during a manipulation."},{name:"-ms-content-zooming",browsers:["E","IE10"],values:[{name:"none",description:"The element is not zoomable."},{name:"zoom",description:"The element is zoomable."}],status:"nonstandard",syntax:"none | zoom",description:"Specifies whether zooming is enabled.",restrictions:["enum"]},{name:"-ms-content-zoom-limit",browsers:["E","IE10"],status:"nonstandard",syntax:"<'-ms-content-zoom-limit-min'> <'-ms-content-zoom-limit-max'>",description:"Shorthand property for the -ms-content-zoom-limit-min and -ms-content-zoom-limit-max properties.",restrictions:["percentage"]},{name:"-ms-content-zoom-limit-max",browsers:["E","IE10"],status:"nonstandard",syntax:"<percentage>",description:"Specifies the maximum zoom factor.",restrictions:["percentage"]},{name:"-ms-content-zoom-limit-min",browsers:["E","IE10"],status:"nonstandard",syntax:"<percentage>",description:"Specifies the minimum zoom factor.",restrictions:["percentage"]},{name:"-ms-content-zoom-snap",browsers:["E","IE10"],values:[{name:"mandatory",description:"Indicates that the motion of the content after the contact is picked up is always adjusted so that it lands on a snap-point."},{name:"none",description:"Indicates that zooming is unaffected by any defined snap-points."},{name:"proximity",description:'Indicates that the motion of the content after the contact is picked up may be adjusted if the content would normally stop "close enough" to a snap-point.'},{name:"snapInterval(100%, 100%)",description:"Specifies where the snap-points will be placed."},{name:"snapList()",description:"Specifies the position of individual snap-points as a comma-separated list of zoom factors."}],status:"nonstandard",syntax:"<'-ms-content-zoom-snap-type'> || <'-ms-content-zoom-snap-points'>",description:"Shorthand property for the -ms-content-zoom-snap-type and -ms-content-zoom-snap-points properties."},{name:"-ms-content-zoom-snap-points",browsers:["E","IE10"],values:[{name:"snapInterval(100%, 100%)",description:"Specifies where the snap-points will be placed."},{name:"snapList()",description:"Specifies the position of individual snap-points as a comma-separated list of zoom factors."}],status:"nonstandard",syntax:"snapInterval( <percentage>, <percentage> ) | snapList( <percentage># )",description:"Defines where zoom snap-points are located."},{name:"-ms-content-zoom-snap-type",browsers:["E","IE10"],values:[{name:"mandatory",description:"Indicates that the motion of the content after the contact is picked up is always adjusted so that it lands on a snap-point."},{name:"none",description:"Indicates that zooming is unaffected by any defined snap-points."},{name:"proximity",description:'Indicates that the motion of the content after the contact is picked up may be adjusted if the content would normally stop "close enough" to a snap-point.'}],status:"nonstandard",syntax:"none | proximity | mandatory",description:"Specifies how zooming is affected by defined snap-points.",restrictions:["enum"]},{name:"-ms-filter",browsers:["IE8-9"],status:"nonstandard",syntax:"<string>",description:"IE only. Used to produce visual effects.",restrictions:["string"]},{name:"-ms-flex",browsers:["IE10"],values:[{name:"auto",description:"Retrieves the value of the main size property as the used 'flex-basis'."},{name:"none",description:"Expands to '0 0 auto'."}],description:"specifies the parameters of a flexible length: the positive and negative flexibility, and the preferred size.",restrictions:["length","number","percentage"]},{name:"-ms-flex-align",browsers:["IE10"],values:[{name:"baseline",description:"If the flex item’s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment."},{name:"center",description:"The flex item’s margin box is centered in the cross axis within the line."},{name:"end",description:"The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line."},{name:"start",description:"The cross-start margin edge of the flexbox item is placed flush with the cross-start edge of the line."},{name:"stretch",description:"If the cross size property of the flexbox item is anything other than 'auto', this value is identical to 'start'."}],description:"Aligns flex items along the cross axis of the current line of the flex container.",restrictions:["enum"]},{name:"-ms-flex-direction",browsers:["IE10"],values:[{name:"column",description:"The flex container’s main axis has the same orientation as the block axis of the current writing mode."},{name:"column-reverse",description:"Same as 'column', except the main-start and main-end directions are swapped."},{name:"row",description:"The flex container’s main axis has the same orientation as the inline axis of the current writing mode."},{name:"row-reverse",description:"Same as 'row', except the main-start and main-end directions are swapped."}],description:"Specifies how flex items are placed in the flex container, by setting the direction of the flex container’s main axis.",restrictions:["enum"]},{name:"-ms-flex-flow",browsers:["IE10"],values:[{name:"column",description:"The flex container’s main axis has the same orientation as the block axis of the current writing mode."},{name:"column-reverse",description:"Same as 'column', except the main-start and main-end directions are swapped."},{name:"nowrap",description:"The flex container is single-line."},{name:"row",description:"The flex container’s main axis has the same orientation as the inline axis of the current writing mode."},{name:"wrap",description:"The flexbox is multi-line."},{name:"wrap-reverse",description:"Same as 'wrap', except the cross-start and cross-end directions are swapped."}],description:"Specifies how flexbox items are placed in the flexbox.",restrictions:["enum"]},{name:"-ms-flex-item-align",browsers:["IE10"],values:[{name:"auto",description:"Computes to the value of 'align-items' on the element’s parent, or 'stretch' if the element has no parent. On absolutely positioned elements, it computes to itself."},{name:"baseline",description:"If the flex item’s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment."},{name:"center",description:"The flex item’s margin box is centered in the cross axis within the line."},{name:"end",description:"The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line."},{name:"start",description:"The cross-start margin edge of the flex item is placed flush with the cross-start edge of the line."},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."}],description:"Allows the default alignment along the cross axis to be overridden for individual flex items.",restrictions:["enum"]},{name:"-ms-flex-line-pack",browsers:["IE10"],values:[{name:"center",description:"Lines are packed toward the center of the flex container."},{name:"distribute",description:"Lines are evenly distributed in the flex container, with half-size spaces on either end."},{name:"end",description:"Lines are packed toward the end of the flex container."},{name:"justify",description:"Lines are evenly distributed in the flex container."},{name:"start",description:"Lines are packed toward the start of the flex container."},{name:"stretch",description:"Lines stretch to take up the remaining space."}],description:"Aligns a flex container’s lines within the flex container when there is extra space in the cross-axis, similar to how 'justify-content' aligns individual items within the main-axis.",restrictions:["enum"]},{name:"-ms-flex-order",browsers:["IE10"],description:"Controls the order in which children of a flex container appear within the flex container, by assigning them to ordinal groups.",restrictions:["integer"]},{name:"-ms-flex-pack",browsers:["IE10"],values:[{name:"center",description:"Flex items are packed toward the center of the line."},{name:"distribute",description:"Flex items are evenly distributed in the line, with half-size spaces on either end."},{name:"end",description:"Flex items are packed toward the end of the line."},{name:"justify",description:"Flex items are evenly distributed in the line."},{name:"start",description:"Flex items are packed toward the start of the line."}],description:"Aligns flex items along the main axis of the current line of the flex container.",restrictions:["enum"]},{name:"-ms-flex-wrap",browsers:["IE10"],values:[{name:"nowrap",description:"The flex container is single-line."},{name:"wrap",description:"The flexbox is multi-line."},{name:"wrap-reverse",description:"Same as 'wrap', except the cross-start and cross-end directions are swapped."}],description:"Controls whether the flex container is single-line or multi-line, and the direction of the cross-axis, which determines the direction new lines are stacked in.",restrictions:["enum"]},{name:"-ms-flow-from",browsers:["E","IE10"],values:[{name:"none",description:"The block container is not a CSS Region."}],status:"nonstandard",syntax:"[ none | <custom-ident> ]#",description:"Makes a block container a region and associates it with a named flow.",restrictions:["identifier"]},{name:"-ms-flow-into",browsers:["E","IE10"],values:[{name:"none",description:"The element is not moved to a named flow and normal CSS processing takes place."}],status:"nonstandard",syntax:"[ none | <custom-ident> ]#",description:"Places an element or its contents into a named flow.",restrictions:["identifier"]},{name:"-ms-grid-column",browsers:["E","IE10"],values:[{name:"auto"},{name:"end"},{name:"start"}],description:"Used to place grid items and explicitly defined grid cells in the Grid.",restrictions:["integer","string","enum"]},{name:"-ms-grid-column-align",browsers:["E","IE10"],values:[{name:"center",description:"Places the center of the Grid Item's margin box at the center of the Grid Item's column."},{name:"end",description:"Aligns the end edge of the Grid Item's margin box to the end edge of the Grid Item's column."},{name:"start",description:"Aligns the starting edge of the Grid Item's margin box to the starting edge of the Grid Item's column."},{name:"stretch",description:"Ensures that the Grid Item's margin box is equal to the size of the Grid Item's column."}],description:"Aligns the columns in a grid.",restrictions:["enum"]},{name:"-ms-grid-columns",browsers:["E","IE10"],description:"Lays out the columns of the grid."},{name:"-ms-grid-column-span",browsers:["E","IE10"],description:"Specifies the number of columns to span.",restrictions:["integer"]},{name:"-ms-grid-layer",browsers:["E","IE10"],description:"Grid-layer is similar in concept to z-index, but avoids overloading the meaning of the z-index property, which is applicable only to positioned elements.",restrictions:["integer"]},{name:"-ms-grid-row",browsers:["E","IE10"],values:[{name:"auto"},{name:"end"},{name:"start"}],description:"grid-row is used to place grid items and explicitly defined grid cells in the Grid.",restrictions:["integer","string","enum"]},{name:"-ms-grid-row-align",browsers:["E","IE10"],values:[{name:"center",description:"Places the center of the Grid Item's margin box at the center of the Grid Item's row."},{name:"end",description:"Aligns the end edge of the Grid Item's margin box to the end edge of the Grid Item's row."},{name:"start",description:"Aligns the starting edge of the Grid Item's margin box to the starting edge of the Grid Item's row."},{name:"stretch",description:"Ensures that the Grid Item's margin box is equal to the size of the Grid Item's row."}],description:"Aligns the rows in a grid.",restrictions:["enum"]},{name:"-ms-grid-rows",browsers:["E","IE10"],description:"Lays out the columns of the grid."},{name:"-ms-grid-row-span",browsers:["E","IE10"],description:"Specifies the number of rows to span.",restrictions:["integer"]},{name:"-ms-high-contrast-adjust",browsers:["E","IE10"],values:[{name:"auto",description:"Properties will be adjusted as applicable."},{name:"none",description:"No adjustments will be applied."}],status:"nonstandard",syntax:"auto | none",description:"Specifies if properties should be adjusted in high contrast mode.",restrictions:["enum"]},{name:"-ms-hyphenate-limit-chars",browsers:["E","IE10"],values:[{name:"auto",description:"The user agent chooses a value that adapts to the current layout."}],status:"nonstandard",syntax:"auto | <integer>{1,3}",description:"Specifies the minimum number of characters in a hyphenated word.",restrictions:["integer"]},{name:"-ms-hyphenate-limit-lines",browsers:["E","IE10"],values:[{name:"no-limit",description:"There is no limit."}],status:"nonstandard",syntax:"no-limit | <integer>",description:"Indicates the maximum number of successive hyphenated lines in an element.",restrictions:["integer"]},{name:"-ms-hyphenate-limit-zone",browsers:["E","IE10"],status:"nonstandard",syntax:"<percentage> | <length>",description:"Specifies the maximum amount of unfilled space (before justification) that may be left in the line box before hyphenation is triggered to pull part of a word from the next line back up into the current line.",restrictions:["percentage","length"]},{name:"-ms-hyphens",browsers:["E","IE10"],values:[{name:"auto",description:"Conditional hyphenation characters inside a word, if present, take priority over automatic resources when determining hyphenation points within the word."},{name:"manual",description:"Words are only broken at line breaks where there are characters inside the word that suggest line break opportunities"},{name:"none",description:"Words are not broken at line breaks, even if characters inside the word suggest line break points."}],description:"Controls whether hyphenation is allowed to create more break opportunities within a line of text.",restrictions:["enum"]},{name:"-ms-ime-mode",browsers:["IE10"],values:[{name:"active",description:"The input method editor is initially active; text entry is performed using it unless the user specifically dismisses it."},{name:"auto",description:"No change is made to the current input method editor state. This is the default."},{name:"disabled",description:"The input method editor is disabled and may not be activated by the user."},{name:"inactive",description:"The input method editor is initially inactive, but the user may activate it if they wish."},{name:"normal",description:"The IME state should be normal; this value can be used in a user style sheet to override the page setting."}],description:"Controls the state of the input method editor for text fields.",restrictions:["enum"]},{name:"-ms-interpolation-mode",browsers:["IE7"],values:[{name:"bicubic"},{name:"nearest-neighbor"}],description:"Gets or sets the interpolation (resampling) method used to stretch images.",restrictions:["enum"]},{name:"-ms-layout-grid",browsers:["E","IE10"],values:[{name:"char",description:"Any of the range of character values available to the -ms-layout-grid-char property."},{name:"line",description:"Any of the range of line values available to the -ms-layout-grid-line property."},{name:"mode",description:"Any of the range of mode values available to the -ms-layout-grid-mode property."},{name:"type",description:"Any of the range of type values available to the -ms-layout-grid-type property."}],description:"Sets or retrieves the composite document grid properties that specify the layout of text characters."},{name:"-ms-layout-grid-char",browsers:["E","IE10"],values:[{name:"auto",description:"Largest character in the font of the element is used to set the character grid."},{name:"none",description:"Default. No character grid is set."}],description:"Sets or retrieves the size of the character grid used for rendering the text content of an element.",restrictions:["enum","length","percentage"]},{name:"-ms-layout-grid-line",browsers:["E","IE10"],values:[{name:"auto",description:"Largest character in the font of the element is used to set the character grid."},{name:"none",description:"Default. No grid line is set."}],description:"Sets or retrieves the gridline value used for rendering the text content of an element.",restrictions:["length"]},{name:"-ms-layout-grid-mode",browsers:["E","IE10"],values:[{name:"both",description:"Default. Both the char and line grid modes are enabled. This setting is necessary to fully enable the layout grid on an element."},{name:"char",description:"Only a character grid is used. This is recommended for use with block-level elements, such as a blockquote, where the line grid is intended to be disabled."},{name:"line",description:"Only a line grid is used. This is recommended for use with inline elements, such as a span, to disable the horizontal grid on runs of text that act as a single entity in the grid layout."},{name:"none",description:"No grid is used."}],description:"Gets or sets whether the text layout grid uses two dimensions.",restrictions:["enum"]},{name:"-ms-layout-grid-type",browsers:["E","IE10"],values:[{name:"fixed",description:"Grid used for monospaced layout. All noncursive characters are treated as equal; every character is centered within a single grid space by default."},{name:"loose",description:"Default. Grid used for Japanese and Korean characters."},{name:"strict",description:"Grid used for Chinese, as well as Japanese (Genko) and Korean characters. Only the ideographs, kanas, and wide characters are snapped to the grid."}],description:"Sets or retrieves the type of grid used for rendering the text content of an element.",restrictions:["enum"]},{name:"-ms-line-break",browsers:["E","IE10"],values:[{name:"auto",description:"The UA determines the set of line-breaking restrictions to use for CJK scripts, and it may vary the restrictions based on the length of the line; e.g., use a less restrictive set of line-break rules for short lines."},{name:"keep-all",description:"Sequences of CJK characters can no longer break on implied break points. This option should only be used where the presence of word separator characters still creates line-breaking opportunities, as in Korean."},{name:"newspaper",description:"Breaks CJK scripts using the least restrictive set of line-breaking rules. Typically used for short lines, such as in newspapers."},{name:"normal",description:"Breaks CJK scripts using a normal set of line-breaking rules."},{name:"strict",description:"Breaks CJK scripts using a more restrictive set of line-breaking rules than 'normal'."}],description:"Specifies what set of line breaking restrictions are in effect within the element.",restrictions:["enum"]},{name:"-ms-overflow-style",browsers:["E","IE10"],values:[{name:"auto",description:"No preference, UA should use the first scrolling method in the list that it supports."},{name:"-ms-autohiding-scrollbar",description:"Indicates the element displays auto-hiding scrollbars during mouse interactions and panning indicators during touch and keyboard interactions."},{name:"none",description:"Indicates the element does not display scrollbars or panning indicators, even when its content overflows."},{name:"scrollbar",description:'Scrollbars are typically narrow strips inserted on one or two edges of an element and which often have arrows to click on and a "thumb" to drag up and down (or left and right) to move the contents of the element.'}],status:"nonstandard",syntax:"auto | none | scrollbar | -ms-autohiding-scrollbar",description:"Specify whether content is clipped when it overflows the element's content area.",restrictions:["enum"]},{name:"-ms-perspective",browsers:["IE10"],values:[{name:"none",description:"No perspective transform is applied."}],description:"Applies the same transform as the perspective(<number>) transform function, except that it applies only to the positioned or transformed children of the element, not to the transform on the element itself.",restrictions:["length"]},{name:"-ms-perspective-origin",browsers:["IE10"],description:"Establishes the origin for the perspective property. It effectively sets the X and Y position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"-ms-perspective-origin-x",browsers:["IE10"],description:"Establishes the origin for the perspective property. It effectively sets the X position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"-ms-perspective-origin-y",browsers:["IE10"],description:"Establishes the origin for the perspective property. It effectively sets the Y position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"-ms-progress-appearance",browsers:["IE10"],values:[{name:"bar"},{name:"ring"}],description:"Gets or sets a value that specifies whether a progress control displays as a bar or a ring.",restrictions:["enum"]},{name:"-ms-scrollbar-3dlight-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the top and left edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"-ms-scrollbar-arrow-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the arrow elements of a scroll arrow.",restrictions:["color"]},{name:"-ms-scrollbar-base-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the main elements of a scroll bar, which include the scroll box, track, and scroll arrows.",restrictions:["color"]},{name:"-ms-scrollbar-darkshadow-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the gutter of a scroll bar.",restrictions:["color"]},{name:"-ms-scrollbar-face-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"-ms-scrollbar-highlight-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the top and left edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"-ms-scrollbar-shadow-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the bottom and right edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"-ms-scrollbar-track-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the track element of a scroll bar.",restrictions:["color"]},{name:"-ms-scroll-chaining",browsers:["E","IE10"],values:[{name:"chained"},{name:"none"}],status:"nonstandard",syntax:"chained | none",description:"Gets or sets a value that indicates the scrolling behavior that occurs when a user hits the content boundary during a manipulation.",restrictions:["enum","length"]},{name:"-ms-scroll-limit",browsers:["E","IE10"],values:[{name:"auto"}],status:"nonstandard",syntax:"<'-ms-scroll-limit-x-min'> <'-ms-scroll-limit-y-min'> <'-ms-scroll-limit-x-max'> <'-ms-scroll-limit-y-max'>",description:"Gets or sets a shorthand value that sets values for the -ms-scroll-limit-x-min, -ms-scroll-limit-y-min, -ms-scroll-limit-x-max, and -ms-scroll-limit-y-max properties.",restrictions:["length"]},{name:"-ms-scroll-limit-x-max",browsers:["E","IE10"],values:[{name:"auto"}],status:"nonstandard",syntax:"auto | <length>",description:"Gets or sets a value that specifies the maximum value for the scrollLeft property.",restrictions:["length"]},{name:"-ms-scroll-limit-x-min",browsers:["E","IE10"],status:"nonstandard",syntax:"<length>",description:"Gets or sets a value that specifies the minimum value for the scrollLeft property.",restrictions:["length"]},{name:"-ms-scroll-limit-y-max",browsers:["E","IE10"],values:[{name:"auto"}],status:"nonstandard",syntax:"auto | <length>",description:"Gets or sets a value that specifies the maximum value for the scrollTop property.",restrictions:["length"]},{name:"-ms-scroll-limit-y-min",browsers:["E","IE10"],status:"nonstandard",syntax:"<length>",description:"Gets or sets a value that specifies the minimum value for the scrollTop property.",restrictions:["length"]},{name:"-ms-scroll-rails",browsers:["E","IE10"],values:[{name:"none"},{name:"railed"}],status:"nonstandard",syntax:"none | railed",description:"Gets or sets a value that indicates whether or not small motions perpendicular to the primary axis of motion will result in either changes to both the scrollTop and scrollLeft properties or a change to the primary axis (for instance, either the scrollTop or scrollLeft properties will change, but not both).",restrictions:["enum","length"]},{name:"-ms-scroll-snap-points-x",browsers:["E","IE10"],values:[{name:"snapInterval(100%, 100%)"},{name:"snapList()"}],status:"nonstandard",syntax:"snapInterval( <length-percentage>, <length-percentage> ) | snapList( <length-percentage># )",description:"Gets or sets a value that defines where snap-points will be located along the x-axis.",restrictions:["enum"]},{name:"-ms-scroll-snap-points-y",browsers:["E","IE10"],values:[{name:"snapInterval(100%, 100%)"},{name:"snapList()"}],status:"nonstandard",syntax:"snapInterval( <length-percentage>, <length-percentage> ) | snapList( <length-percentage># )",description:"Gets or sets a value that defines where snap-points will be located along the y-axis.",restrictions:["enum"]},{name:"-ms-scroll-snap-type",browsers:["E","IE10"],values:[{name:"none",description:"The visual viewport of this scroll container must ignore snap points, if any, when scrolled."},{name:"mandatory",description:"The visual viewport of this scroll container is guaranteed to rest on a snap point when there are no active scrolling operations."},{name:"proximity",description:"The visual viewport of this scroll container may come to rest on a snap point at the termination of a scroll at the discretion of the UA given the parameters of the scroll."}],status:"nonstandard",syntax:"none | proximity | mandatory",description:"Gets or sets a value that defines what type of snap-point should be used for the current element. There are two type of snap-points, with the primary difference being whether or not the user is guaranteed to always stop on a snap-point.",restrictions:["enum"]},{name:"-ms-scroll-snap-x",browsers:["E","IE10"],values:[{name:"mandatory"},{name:"none"},{name:"proximity"},{name:"snapInterval(100%, 100%)"},{name:"snapList()"}],status:"nonstandard",syntax:"<'-ms-scroll-snap-type'> <'-ms-scroll-snap-points-x'>",description:"Gets or sets a shorthand value that sets values for the -ms-scroll-snap-type and -ms-scroll-snap-points-x properties.",restrictions:["enum"]},{name:"-ms-scroll-snap-y",browsers:["E","IE10"],values:[{name:"mandatory"},{name:"none"},{name:"proximity"},{name:"snapInterval(100%, 100%)"},{name:"snapList()"}],status:"nonstandard",syntax:"<'-ms-scroll-snap-type'> <'-ms-scroll-snap-points-y'>",description:"Gets or sets a shorthand value that sets values for the -ms-scroll-snap-type and -ms-scroll-snap-points-y properties.",restrictions:["enum"]},{name:"-ms-scroll-translation",browsers:["E","IE10"],values:[{name:"none"},{name:"vertical-to-horizontal"}],status:"nonstandard",syntax:"none | vertical-to-horizontal",description:"Gets or sets a value that specifies whether vertical-to-horizontal scroll wheel translation occurs on the specified element.",restrictions:["enum"]},{name:"-ms-text-align-last",browsers:["E","IE8"],values:[{name:"auto"},{name:"center",description:"The inline contents are centered within the line box."},{name:"justify",description:"The text is justified according to the method specified by the 'text-justify' property."},{name:"left",description:"The inline contents are aligned to the left edge of the line box. In vertical text, 'left' aligns to the edge of the line box that would be the start edge for left-to-right text."},{name:"right",description:"The inline contents are aligned to the right edge of the line box. In vertical text, 'right' aligns to the edge of the line box that would be the end edge for left-to-right text."}],description:"Describes how the last line of a block or a line right before a forced line break is aligned when 'text-align' is set to 'justify'.",restrictions:["enum"]},{name:"-ms-text-autospace",browsers:["E","IE8"],values:[{name:"ideograph-alpha",description:"Creates 1/4em extra spacing between runs of ideographic letters and non-ideographic letters, such as Latin-based, Cyrillic, Greek, Arabic or Hebrew."},{name:"ideograph-numeric",description:"Creates 1/4em extra spacing between runs of ideographic letters and numeric glyphs."},{name:"ideograph-parenthesis",description:"Creates extra spacing between normal (non wide) parenthesis and ideographs."},{name:"ideograph-space",description:"Extends the width of the space character while surrounded by ideographs."},{name:"none",description:"No extra space is created."},{name:"punctuation",description:"Creates extra non-breaking spacing around punctuation as required by language-specific typographic conventions."}],status:"nonstandard",syntax:"none | ideograph-alpha | ideograph-numeric | ideograph-parenthesis | ideograph-space",description:"Determines whether or not a full-width punctuation mark character should be trimmed if it appears at the beginning of a line, so that its 'ink' lines up with the first glyph in the line above and below.",restrictions:["enum"]},{name:"-ms-text-combine-horizontal",browsers:["E","IE11"],values:[{name:"all",description:"Attempt to typeset horizontally all consecutive characters within the box such that they take up the space of a single character within the vertical line box."},{name:"digits",description:"Attempt to typeset horizontally each maximal sequence of consecutive ASCII digits (U+0030–U+0039) that has as many or fewer characters than the specified integer such that it takes up the space of a single character within the vertical line box."},{name:"none",description:"No special processing."}],description:"This property specifies the combination of multiple characters into the space of a single character.",restrictions:["enum","integer"]},{name:"-ms-text-justify",browsers:["E","IE8"],values:[{name:"auto",description:"The UA determines the justification algorithm to follow, based on a balance between performance and adequate presentation quality."},{name:"distribute",description:"Justification primarily changes spacing both at word separators and at grapheme cluster boundaries in all scripts except those in the connected and cursive groups. This value is sometimes used in e.g. Japanese, often with the 'text-align-last' property."},{name:"inter-cluster",description:"Justification primarily changes spacing at word separators and at grapheme cluster boundaries in clustered scripts. This value is typically used for Southeast Asian scripts such as Thai."},{name:"inter-ideograph",description:"Justification primarily changes spacing at word separators and at inter-graphemic boundaries in scripts that use no word spaces. This value is typically used for CJK languages."},{name:"inter-word",description:"Justification primarily changes spacing at word separators. This value is typically used for languages that separate words using spaces, like English or (sometimes) Korean."},{name:"kashida",description:"Justification primarily stretches Arabic and related scripts through the use of kashida or other calligraphic elongation."}],description:"Selects the justification algorithm used when 'text-align' is set to 'justify'. The property applies to block containers, but the UA may (but is not required to) also support it on inline elements.",restrictions:["enum"]},{name:"-ms-text-kashida-space",browsers:["E","IE10"],description:"Sets or retrieves the ratio of kashida expansion to white space expansion when justifying lines of text in the object.",restrictions:["percentage"]},{name:"-ms-text-overflow",browsers:["IE10"],values:[{name:"clip",description:"Clip inline content that overflows. Characters may be only partially rendered."},{name:"ellipsis",description:"Render an ellipsis character (U+2026) to represent clipped inline content."}],description:"Text can overflow for example when it is prevented from wrapping",restrictions:["enum"]},{name:"-ms-text-size-adjust",browsers:["E","IE10"],values:[{name:"auto",description:"Renderers must use the default size adjustment when displaying on a small device."},{name:"none",description:"Renderers must not do size adjustment when displaying on a small device."}],description:"Specifies a size adjustment for displaying text content in mobile browsers.",restrictions:["enum","percentage"]},{name:"-ms-text-underline-position",browsers:["E","IE10"],values:[{name:"alphabetic",description:"The underline is aligned with the alphabetic baseline. In this case the underline is likely to cross some descenders."},{name:"auto",description:"The user agent may use any algorithm to determine the underline's position. In horizontal line layout, the underline should be aligned as for alphabetic. In vertical line layout, if the language is set to Japanese or Korean, the underline should be aligned as for over."},{name:"over",description:"The underline is aligned with the 'top' (right in vertical writing) edge of the element's em-box. In this mode, an overline also switches sides."},{name:"under",description:"The underline is aligned with the 'bottom' (left in vertical writing) edge of the element's em-box. In this case the underline usually does not cross the descenders. This is sometimes called 'accounting' underline."}],description:"Sets the position of an underline specified on the same element: it does not affect underlines specified by ancestor elements.This property is typically used in vertical writing contexts such as in Japanese documents where it often desired to have the underline appear 'over' (to the right of) the affected run of text",restrictions:["enum"]},{name:"-ms-touch-action",browsers:["IE10"],values:[{name:"auto",description:"The element is a passive element, with several exceptions."},{name:"double-tap-zoom",description:"The element will zoom on double-tap."},{name:"manipulation",description:"The element is a manipulation-causing element."},{name:"none",description:"The element is a manipulation-blocking element."},{name:"pan-x",description:"The element permits touch-driven panning on the horizontal axis. The touch pan is performed on the nearest ancestor with horizontally scrollable content."},{name:"pan-y",description:"The element permits touch-driven panning on the vertical axis. The touch pan is performed on the nearest ancestor with vertically scrollable content."},{name:"pinch-zoom",description:"The element permits pinch-zooming. The pinch-zoom is performed on the nearest ancestor with zoomable content."}],description:"Gets or sets a value that indicates whether and how a given region can be manipulated by the user.",restrictions:["enum"]},{name:"-ms-touch-select",browsers:["E","IE10"],values:[{name:"grippers",description:"Grippers are always on."},{name:"none",description:"Grippers are always off."}],status:"nonstandard",syntax:"grippers | none",description:"Gets or sets a value that toggles the 'gripper' visual elements that enable touch text selection.",restrictions:["enum"]},{name:"-ms-transform",browsers:["IE9-9"],values:[{name:"matrix()",description:"Specifies a 2D transformation in the form of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix [a b c d e f]"},{name:"matrix3d()",description:"Specifies a 3D transformation as a 4x4 homogeneous matrix of 16 values in column-major order."},{name:"none"},{name:"rotate()",description:"Specifies a 2D rotation by the angle specified in the parameter about the origin of the element, as defined by the transform-origin property."},{name:"rotate3d()",description:"Specifies a clockwise 3D rotation by the angle specified in last parameter about the [x,y,z] direction vector described by the first 3 parameters."},{name:"rotateX('angle')",description:"Specifies a clockwise rotation by the given angle about the X axis."},{name:"rotateY('angle')",description:"Specifies a clockwise rotation by the given angle about the Y axis."},{name:"rotateZ('angle')",description:"Specifies a clockwise rotation by the given angle about the Z axis."},{name:"scale()",description:"Specifies a 2D scale operation by the [sx,sy] scaling vector described by the 2 parameters. If the second parameter is not provided, it is takes a value equal to the first."},{name:"scale3d()",description:"Specifies a 3D scale operation by the [sx,sy,sz] scaling vector described by the 3 parameters."},{name:"scaleX()",description:"Specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter."},{name:"scaleY()",description:"Specifies a scale operation using the [sy,1] scaling vector, where sy is given as the parameter."},{name:"scaleZ()",description:"Specifies a scale operation using the [1,1,sz] scaling vector, where sz is given as the parameter."},{name:"skew()",description:"Specifies a skew transformation along the X and Y axes. The first angle parameter specifies the skew on the X axis. The second angle parameter specifies the skew on the Y axis. If the second parameter is not given then a value of 0 is used for the Y angle (ie: no skew on the Y axis)."},{name:"skewX()",description:"Specifies a skew transformation along the X axis by the given angle."},{name:"skewY()",description:"Specifies a skew transformation along the Y axis by the given angle."},{name:"translate()",description:"Specifies a 2D translation by the vector [tx, ty], where tx is the first translation-value parameter and ty is the optional second translation-value parameter."},{name:"translate3d()",description:"Specifies a 3D translation by the vector [tx,ty,tz], with tx, ty and tz being the first, second and third translation-value parameters respectively."},{name:"translateX()",description:"Specifies a translation by the given amount in the X direction."},{name:"translateY()",description:"Specifies a translation by the given amount in the Y direction."},{name:"translateZ()",description:"Specifies a translation by the given amount in the Z direction. Note that percentage values are not allowed in the translateZ translation-value, and if present are evaluated as 0."}],description:"A two-dimensional transformation is applied to an element through the 'transform' property. This property contains a list of transform functions similar to those allowed by SVG.",restrictions:["enum"]},{name:"-ms-transform-origin",browsers:["IE9-9"],description:"Establishes the origin of transformation for an element.",restrictions:["position","length","percentage"]},{name:"-ms-transform-origin-x",browsers:["IE10"],description:"The x coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-ms-transform-origin-y",browsers:["IE10"],description:"The y coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-ms-transform-origin-z",browsers:["IE10"],description:"The z coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-ms-user-select",browsers:["E","IE10"],values:[{name:"element"},{name:"none"},{name:"text"}],status:"nonstandard",syntax:"none | element | text",description:"Controls the appearance of selection.",restrictions:["enum"]},{name:"-ms-word-break",browsers:["IE8"],values:[{name:"break-all",description:"Lines may break between any two grapheme clusters for non-CJK scripts."},{name:"keep-all",description:"Block characters can no longer create implied break points."},{name:"normal",description:"Breaks non-CJK scripts according to their own rules."}],description:"Specifies line break opportunities for non-CJK scripts.",restrictions:["enum"]},{name:"-ms-word-wrap",browsers:["IE8"],values:[{name:"break-word",description:"An unbreakable 'word' may be broken at an arbitrary point if there are no otherwise-acceptable break points in the line."},{name:"normal",description:"Lines may break only at allowed break points."}],description:"Specifies whether the UA may break within a word to prevent overflow when an otherwise-unbreakable string is too long to fit.",restrictions:["enum"]},{name:"-ms-wrap-flow",browsers:["E","IE10"],values:[{name:"auto",description:"For floats an exclusion is created, for all other elements an exclusion is not created."},{name:"both",description:"Inline flow content can flow on all sides of the exclusion."},{name:"clear",description:"Inline flow content can only wrap on top and bottom of the exclusion and must leave the areas to the start and end edges of the exclusion box empty."},{name:"end",description:"Inline flow content can wrap on the end side of the exclusion area but must leave the area to the start edge of the exclusion area empty."},{name:"maximum",description:"Inline flow content can wrap on the side of the exclusion with the largest available space for the given line, and must leave the other side of the exclusion empty."},{name:"minimum",description:"Inline flow content can flow around the edge of the exclusion with the smallest available space within the flow content’s containing block, and must leave the other edge of the exclusion empty."},{name:"start",description:"Inline flow content can wrap on the start edge of the exclusion area but must leave the area to end edge of the exclusion area empty."}],status:"nonstandard",syntax:"auto | both | start | end | maximum | clear",description:"An element becomes an exclusion when its 'wrap-flow' property has a computed value other than 'auto'.",restrictions:["enum"]},{name:"-ms-wrap-margin",browsers:["E","IE10"],status:"nonstandard",syntax:"<length>",description:"Gets or sets a value that is used to offset the inner wrap shape from other shapes.",restrictions:["length","percentage"]},{name:"-ms-wrap-through",browsers:["E","IE10"],values:[{name:"none",description:"The exclusion element does not inherit its parent node's wrapping context. Its descendants are only subject to exclusion shapes defined inside the element."},{name:"wrap",description:"The exclusion element inherits its parent node's wrapping context. Its descendant inline content wraps around exclusions defined outside the element."}],status:"nonstandard",syntax:"wrap | none",description:"Specifies if an element inherits its parent wrapping context. In other words if it is subject to the exclusions defined outside the element.",restrictions:["enum"]},{name:"-ms-writing-mode",browsers:["IE8"],values:[{name:"bt-lr"},{name:"bt-rl"},{name:"lr-bt"},{name:"lr-tb"},{name:"rl-bt"},{name:"rl-tb"},{name:"tb-lr"},{name:"tb-rl"}],description:"Shorthand property for both 'direction' and 'block-progression'.",restrictions:["enum"]},{name:"-ms-zoom",browsers:["IE8"],values:[{name:"normal"}],description:"Sets or retrieves the magnification scale of the object.",restrictions:["enum","integer","number","percentage"]},{name:"-ms-zoom-animation",browsers:["IE10"],values:[{name:"default"},{name:"none"}],description:"Gets or sets a value that indicates whether an animation is used when zooming.",restrictions:["enum"]},{name:"nav-down",browsers:["O9.5"],values:[{name:"auto",description:"The user agent automatically determines which element to navigate the focus to in response to directional navigational input."},{name:"current",description:"Indicates that the user agent should target the frame that the element is in."},{name:"root",description:"Indicates that the user agent should target the full window."}],description:"Provides an way to control directional focus navigation.",restrictions:["enum","identifier","string"]},{name:"nav-index",browsers:["O9.5"],values:[{name:"auto",description:"The element's sequential navigation order is assigned automatically by the user agent."}],description:"Provides an input-method-neutral way of specifying the sequential navigation order (also known as 'tabbing order').",restrictions:["number"]},{name:"nav-left",browsers:["O9.5"],values:[{name:"auto",description:"The user agent automatically determines which element to navigate the focus to in response to directional navigational input."},{name:"current",description:"Indicates that the user agent should target the frame that the element is in."},{name:"root",description:"Indicates that the user agent should target the full window."}],description:"Provides an way to control directional focus navigation.",restrictions:["enum","identifier","string"]},{name:"nav-right",browsers:["O9.5"],values:[{name:"auto",description:"The user agent automatically determines which element to navigate the focus to in response to directional navigational input."},{name:"current",description:"Indicates that the user agent should target the frame that the element is in."},{name:"root",description:"Indicates that the user agent should target the full window."}],description:"Provides an way to control directional focus navigation.",restrictions:["enum","identifier","string"]},{name:"nav-up",browsers:["O9.5"],values:[{name:"auto",description:"The user agent automatically determines which element to navigate the focus to in response to directional navigational input."},{name:"current",description:"Indicates that the user agent should target the frame that the element is in."},{name:"root",description:"Indicates that the user agent should target the full window."}],description:"Provides an way to control directional focus navigation.",restrictions:["enum","identifier","string"]},{name:"negative",browsers:["FF33"],syntax:"<symbol> <symbol>?",description:"@counter-style descriptor. Defines how to alter the representation when the counter value is negative.",restrictions:["image","identifier","string"]},{name:"-o-animation",browsers:["O12"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"infinite",description:"Causes the animation to repeat forever."},{name:"none",description:"No animation is performed"},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Shorthand property combines six of the animation properties into a single property.",restrictions:["time","enum","timing-function","identifier","number"]},{name:"-o-animation-delay",browsers:["O12"],description:"Defines when the animation will start.",restrictions:["time"]},{name:"-o-animation-direction",browsers:["O12"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Defines whether or not the animation should play in reverse on alternate cycles.",restrictions:["enum"]},{name:"-o-animation-duration",browsers:["O12"],description:"Defines the length of time that an animation takes to complete one cycle.",restrictions:["time"]},{name:"-o-animation-fill-mode",browsers:["O12"],values:[{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"none",description:"There is no change to the property value between the time the animation is applied and the time the animation begins playing or after the animation completes."}],description:"Defines what values are applied by the animation outside the time it is executing.",restrictions:["enum"]},{name:"-o-animation-iteration-count",browsers:["O12"],values:[{name:"infinite",description:"Causes the animation to repeat forever."}],description:"Defines the number of times an animation cycle is played. The default value is one, meaning the animation will play from beginning to end once.",restrictions:["number","enum"]},{name:"-o-animation-name",browsers:["O12"],values:[{name:"none",description:"No animation is performed"}],description:"Defines a list of animations that apply. Each name is used to select the keyframe at-rule that provides the property values for the animation.",restrictions:["identifier","enum"]},{name:"-o-animation-play-state",browsers:["O12"],values:[{name:"paused",description:"A running animation will be paused."},{name:"running",description:"Resume playback of a paused animation."}],description:"Defines whether the animation is running or paused.",restrictions:["enum"]},{name:"-o-animation-timing-function",browsers:["O12"],description:"Describes how the animation will progress over one cycle of its duration. See the 'transition-timing-function'.",restrictions:["timing-function"]},{name:"-o-border-image",browsers:["O11.6"],values:[{name:"auto",description:"If 'auto' is specified then the border image width is the intrinsic width or height (whichever is applicable) of the corresponding image slice. If the image does not have the required intrinsic dimension then the corresponding border-width is used instead."},{name:"fill",description:"Causes the middle part of the border-image to be preserved."},{name:"none"},{name:"repeat",description:"The image is tiled (repeated) to fill the area."},{name:"round",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the image is rescaled so that it does."},{name:"space",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the extra space is distributed around the tiles."},{name:"stretch",description:"The image is stretched to fill the area."}],description:"Shorthand property for setting 'border-image-source', 'border-image-slice', 'border-image-width', 'border-image-outset' and 'border-image-repeat'. Omitted values are set to their initial values.",restrictions:["length","percentage","number","image","enum"]},{name:"-o-object-fit",browsers:["O10.6"],values:[{name:"contain",description:"The replaced content is sized to maintain its aspect ratio while fitting within the element’s content box: its concrete object size is resolved as a contain constraint against the element's used width and height."},{name:"cover",description:"The replaced content is sized to maintain its aspect ratio while filling the element's entire content box: its concrete object size is resolved as a cover constraint against the element’s used width and height."},{name:"fill",description:"The replaced content is sized to fill the element’s content box: the object's concrete object size is the element's used width and height."},{name:"none",description:"The replaced content is not resized to fit inside the element's content box"},{name:"scale-down",description:"Size the content as if ‘none’ or ‘contain’ were specified, whichever would result in a smaller concrete object size."}],description:"Specifies how the contents of a replaced element should be scaled relative to the box established by its used height and width.",restrictions:["enum"]},{name:"-o-object-position",browsers:["O10.6"],description:"Determines the alignment of the replaced element inside its box.",restrictions:["position","length","percentage"]},{name:"-o-table-baseline",browsers:["O9.6"],description:"Determines which row of a inline-table should be used as baseline of inline-table.",restrictions:["integer"]},{name:"-o-tab-size",browsers:["O10.6"],description:"This property determines the width of the tab character (U+0009), in space characters (U+0020), when rendered.",restrictions:["integer","length"]},{name:"-o-text-overflow",browsers:["O10"],values:[{name:"clip",description:"Clip inline content that overflows. Characters may be only partially rendered."},{name:"ellipsis",description:"Render an ellipsis character (U+2026) to represent clipped inline content."}],description:"Text can overflow for example when it is prevented from wrapping",restrictions:["enum"]},{name:"-o-transform",browsers:["O10.5"],values:[{name:"matrix()",description:"Specifies a 2D transformation in the form of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix [a b c d e f]"},{name:"matrix3d()",description:"Specifies a 3D transformation as a 4x4 homogeneous matrix of 16 values in column-major order."},{name:"none"},{name:"rotate()",description:"Specifies a 2D rotation by the angle specified in the parameter about the origin of the element, as defined by the transform-origin property."},{name:"rotate3d()",description:"Specifies a clockwise 3D rotation by the angle specified in last parameter about the [x,y,z] direction vector described by the first 3 parameters."},{name:"rotateX('angle')",description:"Specifies a clockwise rotation by the given angle about the X axis."},{name:"rotateY('angle')",description:"Specifies a clockwise rotation by the given angle about the Y axis."},{name:"rotateZ('angle')",description:"Specifies a clockwise rotation by the given angle about the Z axis."},{name:"scale()",description:"Specifies a 2D scale operation by the [sx,sy] scaling vector described by the 2 parameters. If the second parameter is not provided, it is takes a value equal to the first."},{name:"scale3d()",description:"Specifies a 3D scale operation by the [sx,sy,sz] scaling vector described by the 3 parameters."},{name:"scaleX()",description:"Specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter."},{name:"scaleY()",description:"Specifies a scale operation using the [sy,1] scaling vector, where sy is given as the parameter."},{name:"scaleZ()",description:"Specifies a scale operation using the [1,1,sz] scaling vector, where sz is given as the parameter."},{name:"skew()",description:"Specifies a skew transformation along the X and Y axes. The first angle parameter specifies the skew on the X axis. The second angle parameter specifies the skew on the Y axis. If the second parameter is not given then a value of 0 is used for the Y angle (ie: no skew on the Y axis)."},{name:"skewX()",description:"Specifies a skew transformation along the X axis by the given angle."},{name:"skewY()",description:"Specifies a skew transformation along the Y axis by the given angle."},{name:"translate()",description:"Specifies a 2D translation by the vector [tx, ty], where tx is the first translation-value parameter and ty is the optional second translation-value parameter."},{name:"translate3d()",description:"Specifies a 3D translation by the vector [tx,ty,tz], with tx, ty and tz being the first, second and third translation-value parameters respectively."},{name:"translateX()",description:"Specifies a translation by the given amount in the X direction."},{name:"translateY()",description:"Specifies a translation by the given amount in the Y direction."},{name:"translateZ()",description:"Specifies a translation by the given amount in the Z direction. Note that percentage values are not allowed in the translateZ translation-value, and if present are evaluated as 0."}],description:"A two-dimensional transformation is applied to an element through the 'transform' property. This property contains a list of transform functions similar to those allowed by SVG.",restrictions:["enum"]},{name:"-o-transform-origin",browsers:["O10.5"],description:"Establishes the origin of transformation for an element.",restrictions:["positon","length","percentage"]},{name:"-o-transition",browsers:["O11.5"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Shorthand property combines four of the transition properties into a single property.",restrictions:["time","property","timing-function","enum"]},{name:"-o-transition-delay",browsers:["O11.5"],description:"Defines when the transition will start. It allows a transition to begin execution some period of time from when it is applied.",restrictions:["time"]},{name:"-o-transition-duration",browsers:["O11.5"],description:"Specifies how long the transition from the old value to the new value should take.",restrictions:["time"]},{name:"-o-transition-property",browsers:["O11.5"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Specifies the name of the CSS property to which the transition is applied.",restrictions:["property"]},{name:"-o-transition-timing-function",browsers:["O11.5"],description:"Describes how the intermediate values used during a transition will be calculated.",restrictions:["timing-function"]},{name:"offset-block-end",browsers:["FF41"],values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well."}],description:"Logical 'bottom'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"offset-block-start",browsers:["FF41"],values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well."}],description:"Logical 'top'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"offset-inline-end",browsers:["FF41"],values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well."}],description:"Logical 'right'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"offset-inline-start",browsers:["FF41"],values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well."}],description:"Logical 'left'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"pad",browsers:["FF33"],syntax:"<integer> && <symbol>",description:"@counter-style descriptor. Specifies a “fixed-width” counter style, where representations shorter than the pad value are padded with a particular <symbol>",restrictions:["integer","image","string","identifier"]},{name:"prefix",browsers:["FF33"],syntax:"<symbol>",description:"@counter-style descriptor. Specifies a <symbol> that is prepended to the marker representation.",restrictions:["image","string","identifier"]},{name:"range",browsers:["FF33"],values:[{name:"auto",description:"The range depends on the counter system."},{name:"infinite",description:"If used as the first value in a range, it represents negative infinity; if used as the second value, it represents positive infinity."}],syntax:"[ [ <integer> | infinite ]{2} ]# | auto",description:"@counter-style descriptor. Defines the ranges over which the counter style is defined.",restrictions:["integer","enum"]},{name:"ruby-align",browsers:["FF38"],values:[{name:"auto",browsers:["FF38"],description:"The user agent determines how the ruby contents are aligned. This is the initial value."},{name:"center",description:"The ruby content is centered within its box."},{name:"distribute-letter",browsers:["FF38"],description:"If the width of the ruby text is smaller than that of the base, then the ruby text contents are evenly distributed across the width of the base, with the first and last ruby text glyphs lining up with the corresponding first and last base glyphs. If the width of the ruby text is at least the width of the base, then the letters of the base are evenly distributed across the width of the ruby text."},{name:"distribute-space",browsers:["FF38"],description:"If the width of the ruby text is smaller than that of the base, then the ruby text contents are evenly distributed across the width of the base, with a certain amount of white space preceding the first and following the last character in the ruby text. That amount of white space is normally equal to half the amount of inter-character space of the ruby text."},{name:"left",description:"The ruby text content is aligned with the start edge of the base."},{name:"line-edge",browsers:["FF38"],description:"If the ruby text is not adjacent to a line edge, it is aligned as in 'auto'. If it is adjacent to a line edge, then it is still aligned as in auto, but the side of the ruby text that touches the end of the line is lined up with the corresponding edge of the base."},{name:"right",browsers:["FF38"],description:"The ruby text content is aligned with the end edge of the base."},{name:"start",browsers:["FF38"],description:"The ruby text content is aligned with the start edge of the base."},{name:"space-between",browsers:["FF38"],description:"The ruby content expands as defined for normal text justification (as defined by 'text-justify'),"},{name:"space-around",browsers:["FF38"],description:"As for 'space-between' except that there exists an extra justification opportunities whose space is distributed half before and half after the ruby content."}],status:"experimental",syntax:"start | center | space-between | space-around",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/ruby-align"}],description:"Specifies how text is distributed within the various ruby boxes when their contents do not exactly fill their respective boxes.",restrictions:["enum"]},{name:"ruby-overhang",browsers:["FF10","IE5"],values:[{name:"auto",description:"The ruby text can overhang text adjacent to the base on either side. This is the initial value."},{name:"end",description:"The ruby text can overhang the text that follows it."},{name:"none",description:"The ruby text cannot overhang any text adjacent to its base, only its own base."},{name:"start",description:"The ruby text can overhang the text that precedes it."}],description:"Determines whether, and on which side, ruby text is allowed to partially overhang any adjacent text in addition to its own base, when the ruby text is wider than the ruby base.",restrictions:["enum"]},{name:"ruby-position",browsers:["E12","FF38"],values:[{name:"after",description:"The ruby text appears after the base. This is a relatively rare setting used in ideographic East Asian writing systems, most easily found in educational text."},{name:"before",description:"The ruby text appears before the base. This is the most common setting used in ideographic East Asian writing systems."},{name:"inline"},{name:"right",description:"The ruby text appears on the right of the base. Unlike 'before' and 'after', this value is not relative to the text flow direction."}],status:"experimental",syntax:"over | under | inter-character",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/ruby-position"}],description:"Used by the parent of elements with display: ruby-text to control the position of the ruby text with respect to its base.",restrictions:["enum"]},{name:"ruby-span",browsers:["FF10"],values:[{name:"attr(x)",description:"The value of attribute 'x' is a string value. The string value is evaluated as a <number> to determine the number of ruby base elements to be spanned by the annotation element."},{name:"none",description:"No spanning. The computed value is '1'."}],description:"Determines whether, and on which side, ruby text is allowed to partially overhang any adjacent text in addition to its own base, when the ruby text is wider than the ruby base.",restrictions:["enum"]},{name:"scrollbar-3dlight-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-3dlight-color"}],description:"Determines the color of the top and left edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"scrollbar-arrow-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-arrow-color"}],description:"Determines the color of the arrow elements of a scroll arrow.",restrictions:["color"]},{name:"scrollbar-base-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-base-color"}],description:"Determines the color of the main elements of a scroll bar, which include the scroll box, track, and scroll arrows.",restrictions:["color"]},{name:"scrollbar-darkshadow-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-darkshadow-color"}],description:"Determines the color of the gutter of a scroll bar.",restrictions:["color"]},{name:"scrollbar-face-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-face-color"}],description:"Determines the color of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"scrollbar-highlight-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-highlight-color"}],description:"Determines the color of the top and left edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"scrollbar-shadow-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-shadow-color"}],description:"Determines the color of the bottom and right edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"scrollbar-track-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-track-color"}],description:"Determines the color of the track element of a scroll bar.",restrictions:["color"]},{name:"suffix",browsers:["FF33"],syntax:"<symbol>",description:"@counter-style descriptor. Specifies a <symbol> that is appended to the marker representation.",restrictions:["image","string","identifier"]},{name:"system",browsers:["FF33"],values:[{name:"additive",description:"Represents “sign-value” numbering systems, which, rather than using reusing digits in different positions to change their value, define additional digits with much larger values, so that the value of the number can be obtained by adding all the digits together."},{name:"alphabetic",description:'Interprets the list of counter symbols as digits to an alphabetic numbering system, similar to the default lower-alpha counter style, which wraps from "a", "b", "c", to "aa", "ab", "ac".'},{name:"cyclic",description:"Cycles repeatedly through its provided symbols, looping back to the beginning when it reaches the end of the list."},{name:"extends",description:"Use the algorithm of another counter style, but alter other aspects."},{name:"fixed",description:"Runs through its list of counter symbols once, then falls back."},{name:"numeric",description:"interprets the list of counter symbols as digits to a \"place-value\" numbering system, similar to the default 'decimal' counter style."},{name:"symbolic",description:"Cycles repeatedly through its provided symbols, doubling, tripling, etc. the symbols on each successive pass through the list."}],syntax:"cyclic | numeric | alphabetic | symbolic | additive | [ fixed <integer>? ] | [ extends <counter-style-name> ]",description:"@counter-style descriptor. Specifies which algorithm will be used to construct the counter’s representation based on the counter value.",restrictions:["enum","integer"]},{name:"symbols",browsers:["FF33"],syntax:"<symbol>+",description:"@counter-style descriptor. Specifies the symbols used by the marker-construction algorithm specified by the system descriptor.",restrictions:["image","string","identifier"]},{name:"-webkit-animation",browsers:["C","S5"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"infinite",description:"Causes the animation to repeat forever."},{name:"none",description:"No animation is performed"},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Shorthand property combines six of the animation properties into a single property.",restrictions:["time","enum","timing-function","identifier","number"]},{name:"-webkit-animation-delay",browsers:["C","S5"],description:"Defines when the animation will start.",restrictions:["time"]},{name:"-webkit-animation-direction",browsers:["C","S5"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Defines whether or not the animation should play in reverse on alternate cycles.",restrictions:["enum"]},{name:"-webkit-animation-duration",browsers:["C","S5"],description:"Defines the length of time that an animation takes to complete one cycle.",restrictions:["time"]},{name:"-webkit-animation-fill-mode",browsers:["C","S5"],values:[{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"none",description:"There is no change to the property value between the time the animation is applied and the time the animation begins playing or after the animation completes."}],description:"Defines what values are applied by the animation outside the time it is executing.",restrictions:["enum"]},{name:"-webkit-animation-iteration-count",browsers:["C","S5"],values:[{name:"infinite",description:"Causes the animation to repeat forever."}],description:"Defines the number of times an animation cycle is played. The default value is one, meaning the animation will play from beginning to end once.",restrictions:["number","enum"]},{name:"-webkit-animation-name",browsers:["C","S5"],values:[{name:"none",description:"No animation is performed"}],description:"Defines a list of animations that apply. Each name is used to select the keyframe at-rule that provides the property values for the animation.",restrictions:["identifier","enum"]},{name:"-webkit-animation-play-state",browsers:["C","S5"],values:[{name:"paused",description:"A running animation will be paused."},{name:"running",description:"Resume playback of a paused animation."}],description:"Defines whether the animation is running or paused.",restrictions:["enum"]},{name:"-webkit-animation-timing-function",browsers:["C","S5"],description:"Describes how the animation will progress over one cycle of its duration. See the 'transition-timing-function'.",restrictions:["timing-function"]},{name:"-webkit-appearance",browsers:["C","S3"],values:[{name:"button"},{name:"button-bevel"},{name:"caps-lock-indicator"},{name:"caret"},{name:"checkbox"},{name:"default-button"},{name:"listbox"},{name:"listitem"},{name:"media-fullscreen-button"},{name:"media-mute-button"},{name:"media-play-button"},{name:"media-seek-back-button"},{name:"media-seek-forward-button"},{name:"media-slider"},{name:"media-sliderthumb"},{name:"menulist"},{name:"menulist-button"},{name:"menulist-text"},{name:"menulist-textfield"},{name:"none"},{name:"push-button"},{name:"radio"},{name:"scrollbarbutton-down"},{name:"scrollbarbutton-left"},{name:"scrollbarbutton-right"},{name:"scrollbarbutton-up"},{name:"scrollbargripper-horizontal"},{name:"scrollbargripper-vertical"},{name:"scrollbarthumb-horizontal"},{name:"scrollbarthumb-vertical"},{name:"scrollbartrack-horizontal"},{name:"scrollbartrack-vertical"},{name:"searchfield"},{name:"searchfield-cancel-button"},{name:"searchfield-decoration"},{name:"searchfield-results-button"},{name:"searchfield-results-decoration"},{name:"slider-horizontal"},{name:"sliderthumb-horizontal"},{name:"sliderthumb-vertical"},{name:"slider-vertical"},{name:"square-button"},{name:"textarea"},{name:"textfield"}],status:"nonstandard",syntax:"none | button | button-bevel | caret | checkbox | default-button | inner-spin-button | listbox | listitem | media-controls-background | media-controls-fullscreen-background | media-current-time-display | media-enter-fullscreen-button | media-exit-fullscreen-button | media-fullscreen-button | media-mute-button | media-overlay-play-button | media-play-button | media-seek-back-button | media-seek-forward-button | media-slider | media-sliderthumb | media-time-remaining-display | media-toggle-closed-captions-button | media-volume-slider | media-volume-slider-container | media-volume-sliderthumb | menulist | menulist-button | menulist-text | menulist-textfield | meter | progress-bar | progress-bar-value | push-button | radio | searchfield | searchfield-cancel-button | searchfield-decoration | searchfield-results-button | searchfield-results-decoration | slider-horizontal | slider-vertical | sliderthumb-horizontal | sliderthumb-vertical | square-button | textarea | textfield",description:"Changes the appearance of buttons and other controls to resemble native controls.",restrictions:["enum"]},{name:"-webkit-backdrop-filter",browsers:["S9"],values:[{name:"none",description:"No filter effects are applied."},{name:"blur()",description:"Applies a Gaussian blur to the input image."},{name:"brightness()",description:"Applies a linear multiplier to input image, making it appear more or less bright."},{name:"contrast()",description:"Adjusts the contrast of the input."},{name:"drop-shadow()",description:"Applies a drop shadow effect to the input image."},{name:"grayscale()",description:"Converts the input image to grayscale."},{name:"hue-rotate()",description:"Applies a hue rotation on the input image. "},{name:"invert()",description:"Inverts the samples in the input image."},{name:"opacity()",description:"Applies transparency to the samples in the input image."},{name:"saturate()",description:"Saturates the input image."},{name:"sepia()",description:"Converts the input image to sepia."},{name:"url()",description:"A filter reference to a <filter> element."}],description:"Applies a filter effect where the first filter in the list takes the element's background image as the input image.",restrictions:["enum","url"]},{name:"-webkit-backface-visibility",browsers:["C","S5"],values:[{name:"hidden"},{name:"visible"}],description:"Determines whether or not the 'back' side of a transformed element is visible when facing the viewer. With an identity transform, the front side of an element faces the viewer.",restrictions:["enum"]},{name:"-webkit-background-clip",browsers:["C","S3"],description:"Determines the background painting area.",restrictions:["box"]},{name:"-webkit-background-composite",browsers:["C","S3"],values:[{name:"border"},{name:"padding"}],restrictions:["enum"]},{name:"-webkit-background-origin",browsers:["C","S3"],description:"For elements rendered as a single box, specifies the background positioning area. For elements rendered as multiple boxes (e.g., inline boxes on several lines, boxes on several pages) specifies which boxes 'box-decoration-break' operates on to determine the background positioning area(s).",restrictions:["box"]},{name:"-webkit-border-image",browsers:["C","S5"],values:[{name:"auto",description:"If 'auto' is specified then the border image width is the intrinsic width or height (whichever is applicable) of the corresponding image slice. If the image does not have the required intrinsic dimension then the corresponding border-width is used instead."},{name:"fill",description:"Causes the middle part of the border-image to be preserved."},{name:"none"},{name:"repeat",description:"The image is tiled (repeated) to fill the area."},{name:"round",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the image is rescaled so that it does."},{name:"space",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the extra space is distributed around the tiles."},{name:"stretch",description:"The image is stretched to fill the area."},{name:"url()"}],description:"Shorthand property for setting 'border-image-source', 'border-image-slice', 'border-image-width', 'border-image-outset' and 'border-image-repeat'. Omitted values are set to their initial values.",restrictions:["length","percentage","number","url","enum"]},{name:"-webkit-box-align",browsers:["C","S3"],values:[{name:"baseline",description:"If this box orientation is inline-axis or horizontal, all children are placed with their baselines aligned, and extra space placed before or after as necessary. For block flows, the baseline of the first non-empty line box located within the element is used. For tables, the baseline of the first cell is used."},{name:"center",description:"Any extra space is divided evenly, with half placed above the child and the other half placed after the child."},{name:"end",description:"For normal direction boxes, the bottom edge of each child is placed along the bottom of the box. Extra space is placed above the element. For reverse direction boxes, the top edge of each child is placed along the top of the box. Extra space is placed below the element."},{name:"start",description:"For normal direction boxes, the top edge of each child is placed along the top of the box. Extra space is placed below the element. For reverse direction boxes, the bottom edge of each child is placed along the bottom of the box. Extra space is placed above the element."},{name:"stretch",description:"The height of each child is adjusted to that of the containing block."}],description:"Specifies the alignment of nested elements within an outer flexible box element.",restrictions:["enum"]},{name:"-webkit-box-direction",browsers:["C","S3"],values:[{name:"normal",description:"A box with a computed value of horizontal for box-orient displays its children from left to right. A box with a computed value of vertical displays its children from top to bottom."},{name:"reverse",description:"A box with a computed value of horizontal for box-orient displays its children from right to left. A box with a computed value of vertical displays its children from bottom to top."}],description:"In webkit applications, -webkit-box-direction specifies whether a box lays out its contents normally (from the top or left edge), or in reverse (from the bottom or right edge).",restrictions:["enum"]},{name:"-webkit-box-flex",browsers:["C","S3"],description:"Specifies an element's flexibility.",restrictions:["number"]},{name:"-webkit-box-flex-group",browsers:["C","S3"],description:"Flexible elements can be assigned to flex groups using the 'box-flex-group' property.",restrictions:["integer"]},{name:"-webkit-box-ordinal-group",browsers:["C","S3"],description:"Indicates the ordinal group the element belongs to. Elements with a lower ordinal group are displayed before those with a higher ordinal group.",restrictions:["integer"]},{name:"-webkit-box-orient",browsers:["C","S3"],values:[{name:"block-axis",description:"Elements are oriented along the box's axis."},{name:"horizontal",description:"The box displays its children from left to right in a horizontal line."},{name:"inline-axis",description:"Elements are oriented vertically."},{name:"vertical",description:"The box displays its children from stacked from top to bottom vertically."}],description:"In webkit applications, -webkit-box-orient specifies whether a box lays out its contents horizontally or vertically.",restrictions:["enum"]},{name:"-webkit-box-pack",browsers:["C","S3"],values:[{name:"center",description:"The extra space is divided evenly, with half placed before the first child and the other half placed after the last child."},{name:"end",description:"For normal direction boxes, the right edge of the last child is placed at the right side, with all extra space placed before the first child. For reverse direction boxes, the left edge of the first child is placed at the left side, with all extra space placed after the last child."},{name:"justify",description:"The space is divided evenly in-between each child, with none of the extra space placed before the first child or after the last child. If there is only one child, treat the pack value as if it were start."},{name:"start",description:"For normal direction boxes, the left edge of the first child is placed at the left side, with all extra space placed after the last child. For reverse direction boxes, the right edge of the last child is placed at the right side, with all extra space placed before the first child."}],description:"Specifies alignment of child elements within the current element in the direction of orientation.",restrictions:["enum"]},{name:"-webkit-box-reflect",browsers:["S4","C4","O15"],values:[{name:"above",description:"The reflection appears above the border box."},{name:"below",description:"The reflection appears below the border box."},{name:"left",description:"The reflection appears to the left of the border box."},{name:"right",description:"The reflection appears to the right of the border box."}],status:"nonstandard",syntax:"[ above | below | right | left ]? <length>? <image>?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-box-reflect"}],description:"Defines a reflection of a border box."},{name:"-webkit-box-sizing",browsers:["C","S3"],values:[{name:"border-box",description:"The specified width and height (and respective min/max properties) on this element determine the border box of the element."},{name:"content-box",description:"Behavior of width and height as specified by CSS2.1. The specified width and height (and respective min/max properties) apply to the width and height respectively of the content box of the element."}],description:"Box Model addition in CSS3.",restrictions:["enum"]},{name:"-webkit-break-after",browsers:["S7"],values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the generated box."},{name:"avoid",description:"Avoid a page/column break before/after the generated box."},{name:"avoid-column",description:"Avoid a column break before/after the generated box."},{name:"avoid-page",description:"Avoid a page break before/after the generated box."},{name:"avoid-region"},{name:"column",description:"Always force a column break before/after the generated box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the generated box."},{name:"region"},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],description:"Describes the page/column break behavior before the generated box.",restrictions:["enum"]},{name:"-webkit-break-before",browsers:["S7"],values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the generated box."},{name:"avoid",description:"Avoid a page/column break before/after the generated box."},{name:"avoid-column",description:"Avoid a column break before/after the generated box."},{name:"avoid-page",description:"Avoid a page break before/after the generated box."},{name:"avoid-region"},{name:"column",description:"Always force a column break before/after the generated box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the generated box."},{name:"region"},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],description:"Describes the page/column break behavior before the generated box.",restrictions:["enum"]},{name:"-webkit-break-inside",browsers:["S7"],values:[{name:"auto",description:"Neither force nor forbid a page/column break inside the generated box."},{name:"avoid",description:"Avoid a page/column break inside the generated box."},{name:"avoid-column",description:"Avoid a column break inside the generated box."},{name:"avoid-page",description:"Avoid a page break inside the generated box."},{name:"avoid-region"}],description:"Describes the page/column break behavior inside the generated box.",restrictions:["enum"]},{name:"-webkit-column-break-after",browsers:["C","S3"],values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the generated box."},{name:"avoid",description:"Avoid a page/column break before/after the generated box."},{name:"avoid-column",description:"Avoid a column break before/after the generated box."},{name:"avoid-page",description:"Avoid a page break before/after the generated box."},{name:"avoid-region"},{name:"column",description:"Always force a column break before/after the generated box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the generated box."},{name:"region"},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],description:"Describes the page/column break behavior before the generated box.",restrictions:["enum"]},{name:"-webkit-column-break-before",browsers:["C","S3"],values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the generated box."},{name:"avoid",description:"Avoid a page/column break before/after the generated box."},{name:"avoid-column",description:"Avoid a column break before/after the generated box."},{name:"avoid-page",description:"Avoid a page break before/after the generated box."},{name:"avoid-region"},{name:"column",description:"Always force a column break before/after the generated box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the generated box."},{name:"region"},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],description:"Describes the page/column break behavior before the generated box.",restrictions:["enum"]},{name:"-webkit-column-break-inside",browsers:["C","S3"],values:[{name:"auto",description:"Neither force nor forbid a page/column break inside the generated box."},{name:"avoid",description:"Avoid a page/column break inside the generated box."},{name:"avoid-column",description:"Avoid a column break inside the generated box."},{name:"avoid-page",description:"Avoid a page break inside the generated box."},{name:"avoid-region"}],description:"Describes the page/column break behavior inside the generated box.",restrictions:["enum"]},{name:"-webkit-column-count",browsers:["C","S3"],values:[{name:"auto",description:"Determines the number of columns by the 'column-width' property and the element width."}],description:"Describes the optimal number of columns into which the content of the element will be flowed.",restrictions:["integer"]},{name:"-webkit-column-gap",browsers:["C","S3"],values:[{name:"normal",description:"User agent specific and typically equivalent to 1em."}],description:"Sets the gap between columns. If there is a column rule between columns, it will appear in the middle of the gap.",restrictions:["length"]},{name:"-webkit-column-rule",browsers:["C","S3"],description:"This property is a shorthand for setting 'column-rule-width', 'column-rule-style', and 'column-rule-color' at the same place in the style sheet. Omitted values are set to their initial values.",restrictions:["length","line-width","line-style","color"]},{name:"-webkit-column-rule-color",browsers:["C","S3"],description:"Sets the color of the column rule",restrictions:["color"]},{name:"-webkit-column-rule-style",browsers:["C","S3"],description:"Sets the style of the rule between columns of an element.",restrictions:["line-style"]},{name:"-webkit-column-rule-width",browsers:["C","S3"],description:"Sets the width of the rule between columns. Negative values are not allowed.",restrictions:["length","line-width"]},{name:"-webkit-columns",browsers:["C","S3"],values:[{name:"auto",description:"The width depends on the values of other properties."}],description:"A shorthand property which sets both 'column-width' and 'column-count'.",restrictions:["length","integer"]},{name:"-webkit-column-span",browsers:["C","S3"],values:[{name:"all",description:"The element spans across all columns. Content in the normal flow that appears before the element is automatically balanced across all columns before the element appear."},{name:"none",description:"The element does not span multiple columns."}],description:"Describes the page/column break behavior after the generated box.",restrictions:["enum"]},{name:"-webkit-column-width",browsers:["C","S3"],values:[{name:"auto",description:"The width depends on the values of other properties."}],description:"This property describes the width of columns in multicol elements.",restrictions:["length"]},{name:"-webkit-filter",browsers:["C18","O15","S6"],values:[{name:"none",description:"No filter effects are applied."},{name:"blur()",description:"Applies a Gaussian blur to the input image."},{name:"brightness()",description:"Applies a linear multiplier to input image, making it appear more or less bright."},{name:"contrast()",description:"Adjusts the contrast of the input."},{name:"drop-shadow()",description:"Applies a drop shadow effect to the input image."},{name:"grayscale()",description:"Converts the input image to grayscale."},{name:"hue-rotate()",description:"Applies a hue rotation on the input image. "},{name:"invert()",description:"Inverts the samples in the input image."},{name:"opacity()",description:"Applies transparency to the samples in the input image."},{name:"saturate()",description:"Saturates the input image."},{name:"sepia()",description:"Converts the input image to sepia."},{name:"url()",description:"A filter reference to a <filter> element."}],description:"Processes an element’s rendering before it is displayed in the document, by applying one or more filter effects.",restrictions:["enum","url"]},{name:"-webkit-flow-from",browsers:["S6.1"],values:[{name:"none",description:"The block container is not a CSS Region."}],description:"Makes a block container a region and associates it with a named flow.",restrictions:["identifier"]},{name:"-webkit-flow-into",browsers:["S6.1"],values:[{name:"none",description:"The element is not moved to a named flow and normal CSS processing takes place."}],description:"Places an element or its contents into a named flow.",restrictions:["identifier"]},{name:"-webkit-font-feature-settings",browsers:["C16"],values:[{name:'"c2cs"'},{name:'"dlig"'},{name:'"kern"'},{name:'"liga"'},{name:'"lnum"'},{name:'"onum"'},{name:'"smcp"'},{name:'"swsh"'},{name:'"tnum"'},{name:"normal",description:"No change in glyph substitution or positioning occurs."},{name:"off"},{name:"on"}],description:"This property provides low-level control over OpenType font features. It is intended as a way of providing access to font features that are not widely used but are needed for a particular use case.",restrictions:["string","integer"]},{name:"-webkit-hyphens",browsers:["S5.1"],values:[{name:"auto",description:"Conditional hyphenation characters inside a word, if present, take priority over automatic resources when determining hyphenation points within the word."},{name:"manual",description:"Words are only broken at line breaks where there are characters inside the word that suggest line break opportunities"},{name:"none",description:"Words are not broken at line breaks, even if characters inside the word suggest line break points."}],description:"Controls whether hyphenation is allowed to create more break opportunities within a line of text.",restrictions:["enum"]},{name:"-webkit-line-break",browsers:["C","S3"],values:[{name:"after-white-space"},{name:"normal"}],description:"Specifies line-breaking rules for CJK (Chinese, Japanese, and Korean) text."},{name:"-webkit-margin-bottom-collapse",browsers:["C","S3"],values:[{name:"collapse"},{name:"discard"},{name:"separate"}],restrictions:["enum"]},{name:"-webkit-margin-collapse",browsers:["C","S3"],values:[{name:"collapse"},{name:"discard"},{name:"separate"}],restrictions:["enum"]},{name:"-webkit-margin-start",browsers:["C","S3"],values:[{name:"auto"}],restrictions:["percentage","length"]},{name:"-webkit-margin-top-collapse",browsers:["C","S3"],values:[{name:"collapse"},{name:"discard"},{name:"separate"}],restrictions:["enum"]},{name:"-webkit-mask-clip",browsers:["C","O15","S4"],status:"nonstandard",syntax:"[ <box> | border | padding | content | text ]#",description:"Determines the mask painting area, which determines the area that is affected by the mask.",restrictions:["box"]},{name:"-webkit-mask-image",browsers:["C","O15","S4"],values:[{name:"none",description:"Counts as a transparent black image layer."},{name:"url()",description:"Reference to a <mask element or to a CSS image."}],status:"nonstandard",syntax:"<mask-reference>#",description:"Sets the mask layer image of an element.",restrictions:["url","image","enum"]},{name:"-webkit-mask-origin",browsers:["C","O15","S4"],status:"nonstandard",syntax:"[ <box> | border | padding | content ]#",description:"Specifies the mask positioning area.",restrictions:["box"]},{name:"-webkit-mask-repeat",browsers:["C","O15","S4"],status:"nonstandard",syntax:"<repeat-style>#",description:"Specifies how mask layer images are tiled after they have been sized and positioned.",restrictions:["repeat"]},{name:"-webkit-mask-size",browsers:["C","O15","S4"],values:[{name:"auto",description:"Resolved by using the image’s intrinsic ratio and the size of the other dimension, or failing that, using the image’s intrinsic size, or failing that, treating it as 100%."},{name:"contain",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the largest size such that both its width and its height can fit inside the background positioning area."},{name:"cover",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the smallest size such that both its width and its height can completely cover the background positioning area."}],status:"nonstandard",syntax:"<bg-size>#",description:"Specifies the size of the mask layer images.",restrictions:["length","percentage","enum"]},{name:"-webkit-nbsp-mode",browsers:["C","S3"],values:[{name:"normal"},{name:"space"}],description:"Defines the behavior of nonbreaking spaces within text."},{name:"-webkit-overflow-scrolling",browsers:["C","S5"],values:[{name:"auto"},{name:"touch"}],status:"nonstandard",syntax:"auto | touch",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-overflow-scrolling"}],description:"Specifies whether to use native-style scrolling in an overflow:scroll element."},{name:"-webkit-padding-start",browsers:["C","S3"],restrictions:["percentage","length"]},{name:"-webkit-perspective",browsers:["C","S4"],values:[{name:"none",description:"No perspective transform is applied."}],description:"Applies the same transform as the perspective(<number>) transform function, except that it applies only to the positioned or transformed children of the element, not to the transform on the element itself.",restrictions:["length"]},{name:"-webkit-perspective-origin",browsers:["C","S4"],description:"Establishes the origin for the perspective property. It effectively sets the X and Y position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"-webkit-region-fragment",browsers:["S7"],values:[{name:"auto",description:"Content flows as it would in a regular content box."},{name:"break",description:"If the content fits within the CSS Region, then this property has no effect."}],description:"The 'region-fragment' property controls the behavior of the last region associated with a named flow.",restrictions:["enum"]},{name:"-webkit-tap-highlight-color",browsers:["E","C","S3.1"],status:"nonstandard",syntax:"<color>",restrictions:["color"]},{name:"-webkit-text-fill-color",browsers:["E12","FF49","S3","C1","O15"],status:"nonstandard",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-text-fill-color"}],restrictions:["color"]},{name:"-webkit-text-size-adjust",browsers:["E","C","S3"],values:[{name:"auto",description:"Renderers must use the default size adjustment when displaying on a small device."},{name:"none",description:"Renderers must not do size adjustment when displaying on a small device."}],description:"Specifies a size adjustment for displaying text content in mobile browsers.",restrictions:["percentage"]},{name:"-webkit-text-stroke",browsers:["E15","FF49","S3","C4","O15"],status:"nonstandard",syntax:"<length> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke"}],restrictions:["length","line-width","color","percentage"]},{name:"-webkit-text-stroke-color",browsers:["E15","FF49","S3","C1","O15"],status:"nonstandard",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke-color"}],restrictions:["color"]},{name:"-webkit-text-stroke-width",browsers:["E15","FF49","S3","C1","O15"],status:"nonstandard",syntax:"<length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke-width"}],restrictions:["length","line-width","percentage"]},{name:"-webkit-touch-callout",browsers:["S3"],values:[{name:"none"}],status:"nonstandard",syntax:"default | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-touch-callout"}],restrictions:["enum"]},{name:"-webkit-transform",browsers:["C","O12","S3.1"],values:[{name:"matrix()",description:"Specifies a 2D transformation in the form of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix [a b c d e f]"},{name:"matrix3d()",description:"Specifies a 3D transformation as a 4x4 homogeneous matrix of 16 values in column-major order."},{name:"none"},{name:"perspective()",description:"Specifies a perspective projection matrix."},{name:"rotate()",description:"Specifies a 2D rotation by the angle specified in the parameter about the origin of the element, as defined by the transform-origin property."},{name:"rotate3d()",description:"Specifies a clockwise 3D rotation by the angle specified in last parameter about the [x,y,z] direction vector described by the first 3 parameters."},{name:"rotateX('angle')",description:"Specifies a clockwise rotation by the given angle about the X axis."},{name:"rotateY('angle')",description:"Specifies a clockwise rotation by the given angle about the Y axis."},{name:"rotateZ('angle')",description:"Specifies a clockwise rotation by the given angle about the Z axis."},{name:"scale()",description:"Specifies a 2D scale operation by the [sx,sy] scaling vector described by the 2 parameters. If the second parameter is not provided, it is takes a value equal to the first."},{name:"scale3d()",description:"Specifies a 3D scale operation by the [sx,sy,sz] scaling vector described by the 3 parameters."},{name:"scaleX()",description:"Specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter."},{name:"scaleY()",description:"Specifies a scale operation using the [sy,1] scaling vector, where sy is given as the parameter."},{name:"scaleZ()",description:"Specifies a scale operation using the [1,1,sz] scaling vector, where sz is given as the parameter."},{name:"skew()",description:"Specifies a skew transformation along the X and Y axes. The first angle parameter specifies the skew on the X axis. The second angle parameter specifies the skew on the Y axis. If the second parameter is not given then a value of 0 is used for the Y angle (ie: no skew on the Y axis)."},{name:"skewX()",description:"Specifies a skew transformation along the X axis by the given angle."},{name:"skewY()",description:"Specifies a skew transformation along the Y axis by the given angle."},{name:"translate()",description:"Specifies a 2D translation by the vector [tx, ty], where tx is the first translation-value parameter and ty is the optional second translation-value parameter."},{name:"translate3d()",description:"Specifies a 3D translation by the vector [tx,ty,tz], with tx, ty and tz being the first, second and third translation-value parameters respectively."},{name:"translateX()",description:"Specifies a translation by the given amount in the X direction."},{name:"translateY()",description:"Specifies a translation by the given amount in the Y direction."},{name:"translateZ()",description:"Specifies a translation by the given amount in the Z direction. Note that percentage values are not allowed in the translateZ translation-value, and if present are evaluated as 0."}],description:"A two-dimensional transformation is applied to an element through the 'transform' property. This property contains a list of transform functions similar to those allowed by SVG.",restrictions:["enum"]},{name:"-webkit-transform-origin",browsers:["C","O15","S3.1"],description:"Establishes the origin of transformation for an element.",restrictions:["position","length","percentage"]},{name:"-webkit-transform-origin-x",browsers:["C","S3.1"],description:"The x coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-webkit-transform-origin-y",browsers:["C","S3.1"],description:"The y coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-webkit-transform-origin-z",browsers:["C","S4"],description:"The z coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-webkit-transform-style",browsers:["C","S4"],values:[{name:"flat",description:"All children of this element are rendered flattened into the 2D plane of the element."}],description:"Defines how nested elements are rendered in 3D space.",restrictions:["enum"]},{name:"-webkit-transition",browsers:["C","O12","S5"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Shorthand property combines four of the transition properties into a single property.",restrictions:["time","property","timing-function","enum"]},{name:"-webkit-transition-delay",browsers:["C","O12","S5"],description:"Defines when the transition will start. It allows a transition to begin execution some period of time from when it is applied.",restrictions:["time"]},{name:"-webkit-transition-duration",browsers:["C","O12","S5"],description:"Specifies how long the transition from the old value to the new value should take.",restrictions:["time"]},{name:"-webkit-transition-property",browsers:["C","O12","S5"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Specifies the name of the CSS property to which the transition is applied.",restrictions:["property"]},{name:"-webkit-transition-timing-function",browsers:["C","O12","S5"],description:"Describes how the intermediate values used during a transition will be calculated.",restrictions:["timing-function"]},{name:"-webkit-user-drag",browsers:["S3"],values:[{name:"auto"},{name:"element"},{name:"none"}],restrictions:["enum"]},{name:"-webkit-user-modify",browsers:["C","S3"],values:[{name:"read-only"},{name:"read-write"},{name:"read-write-plaintext-only"}],status:"nonstandard",syntax:"read-only | read-write | read-write-plaintext-only",description:"Determines whether a user can edit the content of an element.",restrictions:["enum"]},{name:"-webkit-user-select",browsers:["C","S3"],values:[{name:"auto"},{name:"none"},{name:"text"}],description:"Controls the appearance of selection.",restrictions:["enum"]},{name:"-ms-ime-align",status:"nonstandard",syntax:"auto | after",description:"Aligns the Input Method Editor (IME) candidate window box relative to the element on which the IME composition is active."},{name:"-moz-binding",status:"nonstandard",syntax:"<url> | none",browsers:["FF1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-binding"}],description:"The -moz-binding CSS property is used by Mozilla-based applications to attach an XBL binding to a DOM element."},{name:"-moz-context-properties",status:"nonstandard",syntax:"none | [ fill | fill-opacity | stroke | stroke-opacity ]#",browsers:["FF55"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-context-properties"}],description:"If you reference an SVG image in a webpage (such as with the <img> element or as a background image), the SVG image can coordinate with the embedding element (its context) to have the image adopt property values set on the embedding element. To do this the embedding element needs to list the properties that are to be made available to the image by listing them as values of the -moz-context-properties property, and the image needs to opt in to using those properties by using values such as the context-fill value.\n\nThis feature is available since Firefox 55, but is only currently supported with SVG images loaded via chrome:// or resource:// URLs. To experiment with the feature in SVG on the Web it is necessary to set the svg.context-properties.content.enabled pref to true."},{name:"-moz-float-edge",status:"nonstandard",syntax:"border-box | content-box | margin-box | padding-box",description:"The non-standard -moz-float-edge CSS property specifies whether the height and width properties of the element include the margin, border, or padding thickness."},{name:"-moz-force-broken-image-icon",status:"nonstandard",syntax:"<integer>",description:"The -moz-force-broken-image-icon extended CSS property can be used to force the broken image icon to be shown even when a broken image has an alt attribute."},{name:"-moz-image-region",status:"nonstandard",syntax:"<shape> | auto",browsers:["FF1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-image-region"}],description:"For certain XUL elements and pseudo-elements that use an image from the list-style-image property, this property specifies a region of the image that is used in place of the whole image. This allows elements to use different pieces of the same image to improve performance."},{name:"-moz-orient",status:"nonstandard",syntax:"inline | block | horizontal | vertical",browsers:["FF6"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-orient"}],description:"The -moz-orient CSS property specifies the orientation of the element to which it's applied."},{name:"-moz-outline-radius",status:"nonstandard",syntax:"<outline-radius>{1,4} [ / <outline-radius>{1,4} ]?",browsers:["FF1.5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-outline-radius"}],description:"In Mozilla applications like Firefox, the -moz-outline-radius CSS property can be used to give an element's outline rounded corners."},{name:"-moz-outline-radius-bottomleft",status:"nonstandard",syntax:"<outline-radius>",description:"In Mozilla applications, the -moz-outline-radius-bottomleft CSS property can be used to round the bottom-left corner of an element's outline."},{name:"-moz-outline-radius-bottomright",status:"nonstandard",syntax:"<outline-radius>",description:"In Mozilla applications, the -moz-outline-radius-bottomright CSS property can be used to round the bottom-right corner of an element's outline."},{name:"-moz-outline-radius-topleft",status:"nonstandard",syntax:"<outline-radius>",description:"In Mozilla applications, the -moz-outline-radius-topleft CSS property can be used to round the top-left corner of an element's outline."},{name:"-moz-outline-radius-topright",status:"nonstandard",syntax:"<outline-radius>",description:"In Mozilla applications, the -moz-outline-radius-topright CSS property can be used to round the top-right corner of an element's outline."},{name:"-moz-stack-sizing",status:"nonstandard",syntax:"ignore | stretch-to-fit",description:"-moz-stack-sizing is an extended CSS property. Normally, a stack will change its size so that all of its child elements are completely visible. For example, moving a child of the stack far to the right will widen the stack so the child remains visible."},{name:"-moz-text-blink",status:"nonstandard",syntax:"none | blink",browsers:["FF6"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-text-blink"}],description:"The -moz-text-blink non-standard Mozilla CSS extension specifies the blink mode."},{name:"-moz-user-input",status:"nonstandard",syntax:"auto | none | enabled | disabled",browsers:["FF1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-user-input"}],description:"In Mozilla applications, -moz-user-input determines if an element will accept user input."},{name:"-moz-user-modify",status:"nonstandard",syntax:"read-only | read-write | write-only",description:"The -moz-user-modify property has no effect. It was originally planned to determine whether or not the content of an element can be edited by a user."},{name:"-moz-window-dragging",status:"nonstandard",syntax:"drag | no-drag",description:"The -moz-window-dragging CSS property specifies whether a window is draggable or not. It only works in Chrome code, and only on Mac OS X."},{name:"-moz-window-shadow",status:"nonstandard",syntax:"default | menu | tooltip | sheet | none",browsers:["FF3.5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-window-shadow"}],description:"The -moz-window-shadow CSS property specifies whether a window will have a shadow. It only works on Mac OS X."},{name:"-webkit-border-before",status:"nonstandard",syntax:"<'border-width'> || <'border-style'> || <'color'>",browsers:["S5.1","C8","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-border-before"}],description:"The -webkit-border-before CSS property is a shorthand property for setting the individual logical block start border property values in a single place in the style sheet."},{name:"-webkit-border-before-color",status:"nonstandard",syntax:"<'color'>",description:"The -webkit-border-before-color CSS property sets the color of the individual logical block start border in a single place in the style sheet."},{name:"-webkit-border-before-style",status:"nonstandard",syntax:"<'border-style'>",description:"The -webkit-border-before-style CSS property sets the style of the individual logical block start border in a single place in the style sheet."},{name:"-webkit-border-before-width",status:"nonstandard",syntax:"<'border-width'>",description:"The -webkit-border-before-width CSS property sets the width of the individual logical block start border in a single place in the style sheet."},{name:"-webkit-line-clamp",syntax:"none | <integer>",browsers:["E17","FF68","S5","C6","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-line-clamp"}],description:"The -webkit-line-clamp CSS property allows limiting of the contents of a block container to the specified number of lines."},{name:"-webkit-mask",status:"nonstandard",syntax:"[ <mask-reference> || <position> [ / <bg-size> ]? || <repeat-style> || [ <box> | border | padding | content | text ] || [ <box> | border | padding | content ] ]#",description:"The mask CSS property alters the visibility of an element by either partially or fully hiding it. This is accomplished by either masking or clipping the image at specific points."},{name:"-webkit-mask-attachment",status:"nonstandard",syntax:"<attachment>#",browsers:["S4","C1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-attachment"}],description:"If a -webkit-mask-image is specified, -webkit-mask-attachment determines whether the mask image's position is fixed within the viewport, or scrolls along with its containing block."},{name:"-webkit-mask-composite",status:"nonstandard",syntax:"<composite-style>#",browsers:["E18","FF53","S3.2","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-composite"}],description:"The -webkit-mask-composite property specifies the manner in which multiple mask images applied to the same element are composited with one another. Mask images are composited in the opposite order that they are declared with the -webkit-mask-image property."},{name:"-webkit-mask-position",status:"nonstandard",syntax:"<position>#",description:"The mask-position CSS property sets the initial position, relative to the mask position layer defined by mask-origin, for each defined mask image."},{name:"-webkit-mask-position-x",status:"nonstandard",syntax:"[ <length-percentage> | left | center | right ]#",browsers:["E18","FF49","S3.2","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-position-x"}],description:"The -webkit-mask-position-x CSS property sets the initial horizontal position of a mask image."},{name:"-webkit-mask-position-y",status:"nonstandard",syntax:"[ <length-percentage> | top | center | bottom ]#",browsers:["E18","FF49","S3.2","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-position-y"}],description:"The -webkit-mask-position-y CSS property sets the initial vertical position of a mask image."},{name:"-webkit-mask-repeat-x",status:"nonstandard",syntax:"repeat | no-repeat | space | round",browsers:["E18","S5","C3","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-repeat-x"}],description:"The -webkit-mask-repeat-x property specifies whether and how a mask image is repeated (tiled) horizontally."},{name:"-webkit-mask-repeat-y",status:"nonstandard",syntax:"repeat | no-repeat | space | round",browsers:["E18","S5","C3","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-repeat-y"}],description:"The -webkit-mask-repeat-y property specifies whether and how a mask image is repeated (tiled) vertically."},{name:"appearance",status:"experimental",syntax:"none | auto | button | textfield | <compat>",browsers:["E12","FF1","S3","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/appearance"}],description:"Changes the appearance of buttons and other controls to resemble native controls."},{name:"aspect-ratio",status:"experimental",syntax:"auto | <ratio>",description:""},{name:"azimuth",status:"obsolete",syntax:"<angle> | [ [ left-side | far-left | left | center-left | center | center-right | right | far-right | right-side ] || behind ] | leftwards | rightwards",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/azimuth"}],description:"In combination with elevation, the azimuth CSS property enables different audio sources to be positioned spatially for aural presentation. This is important in that it provides a natural way to tell several voices apart, as each can be positioned to originate at a different location on the sound stage. Stereo output produce a lateral sound stage, while binaural headphones and multi-speaker setups allow for a fully three-dimensional stage."},{name:"border-end-end-radius",syntax:"<length-percentage>{1,2}",browsers:["FF66"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-end-end-radius"}],description:"The border-end-end-radius CSS property defines a logical border radius on an element, which maps to a physical border radius that depends on on the element's writing-mode, direction, and text-orientation."},{name:"border-end-start-radius",syntax:"<length-percentage>{1,2}",browsers:["FF66"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-end-start-radius"}],description:"The border-end-start-radius CSS property defines a logical border radius on an element, which maps to a physical border radius depending on the element's writing-mode, direction, and text-orientation."},{name:"border-start-end-radius",syntax:"<length-percentage>{1,2}",browsers:["FF66"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-start-end-radius"}],description:"The border-start-end-radius CSS property defines a logical border radius on an element, which maps to a physical border radius depending on the element's writing-mode, direction, and text-orientation."},{name:"border-start-start-radius",syntax:"<length-percentage>{1,2}",browsers:["FF66"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-start-start-radius"}],description:"The border-start-start-radius CSS property defines a logical border radius on an element, which maps to a physical border radius that depends on the element's writing-mode, direction, and text-orientation."},{name:"box-align",status:"nonstandard",syntax:"start | center | end | baseline | stretch",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-align"}],description:"The box-align CSS property specifies how an element aligns its contents across its layout in a perpendicular direction. The effect of the property is only visible if there is extra space in the box."},{name:"box-direction",status:"nonstandard",syntax:"normal | reverse | inherit",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-direction"}],description:"The box-direction CSS property specifies whether a box lays out its contents normally (from the top or left edge), or in reverse (from the bottom or right edge)."},{name:"box-flex",status:"nonstandard",syntax:"<number>",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-flex"}],description:"The -moz-box-flex and -webkit-box-flex CSS properties specify how a -moz-box or -webkit-box grows to fill the box that contains it, in the direction of the containing box's layout."},{name:"box-flex-group",status:"nonstandard",syntax:"<integer>",browsers:["S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-flex-group"}],description:"The box-flex-group CSS property assigns the flexbox's child elements to a flex group."},{name:"box-lines",status:"nonstandard",syntax:"single | multiple",browsers:["S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-lines"}],description:"The box-lines CSS property determines whether the box may have a single or multiple lines (rows for horizontally oriented boxes, columns for vertically oriented boxes)."},{name:"box-ordinal-group",status:"nonstandard",syntax:"<integer>",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-ordinal-group"}],description:"The box-ordinal-group CSS property assigns the flexbox's child elements to an ordinal group."},{name:"box-orient",status:"nonstandard",syntax:"horizontal | vertical | inline-axis | block-axis | inherit",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-orient"}],description:"The box-orient CSS property specifies whether an element lays out its contents horizontally or vertically."},{name:"box-pack",status:"nonstandard",syntax:"start | center | end | justify",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-pack"}],description:"The -moz-box-pack and -webkit-box-pack CSS properties specify how a -moz-box or -webkit-box packs its contents in the direction of its layout. The effect of this is only visible if there is extra space in the box."},{name:"color-adjust",syntax:"economy | exact",browsers:["FF48","S6","C49","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/color-adjust"}],description:"The color-adjust property is a non-standard CSS extension that can be used to force printing of background colors and images in browsers based on the WebKit engine."},{name:"counter-set",syntax:"[ <custom-ident> <integer>? ]+ | none",browsers:["FF68"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/counter-set"}],description:"The counter-set CSS property sets a CSS counter to a given value. It manipulates the value of existing counters, and will only create new counters if there isn't already a counter of the given name on the element."},{name:"hanging-punctuation",syntax:"none | [ first || [ force-end | allow-end ] || last ]",browsers:["S10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/hanging-punctuation"}],description:"The hanging-punctuation CSS property specifies whether a punctuation mark should hang at the start or end of a line of text. Hanging punctuation may be placed outside the line box."},{name:"initial-letter",status:"experimental",syntax:"normal | [ <number> <integer>? ]",browsers:["S9"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/initial-letter"}],description:"The initial-letter CSS property specifies styling for dropped, raised, and sunken initial letters."},{name:"initial-letter-align",status:"experimental",syntax:"[ auto | alphabetic | hanging | ideographic ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/initial-letter-align"}],description:"The initial-letter-align CSS property specifies the alignment of initial letters within a paragraph."},{name:"line-clamp",status:"experimental",syntax:"none | <integer>",description:"The line-clamp property allows limiting the contents of a block container to the specified number of lines; remaining content is fragmented away and neither rendered nor measured. Optionally, it also allows inserting content into the last line box to indicate the continuity of truncated/interrupted content."},{name:"line-height-step",status:"experimental",syntax:"<length>",browsers:["C60","O47"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/line-height-step"}],description:"The line-height-step CSS property defines the step units for line box heights. When the step unit is positive, line box heights are rounded up to the closest multiple of the unit. Negative values are invalid."},{name:"mask-border",status:"experimental",syntax:"<'mask-border-source'> || <'mask-border-slice'> [ / <'mask-border-width'>? [ / <'mask-border-outset'> ]? ]? || <'mask-border-repeat'> || <'mask-border-mode'>",description:"The mask-border CSS property lets you create a mask along the edge of an element's border.\n\nThis property is a shorthand for mask-border-source, mask-border-slice, mask-border-width, mask-border-outset, mask-border-repeat, and mask-border-mode. As with all shorthand properties, any omitted sub-values will be set to their initial value."},{name:"mask-border-mode",status:"experimental",syntax:"luminance | alpha",description:"The mask-border-mode CSS property specifies the blending mode used in a mask border."},{name:"mask-border-outset",status:"experimental",syntax:"[ <length> | <number> ]{1,4}",description:"The mask-border-outset CSS property specifies the distance by which an element's mask border is set out from its border box."},{name:"mask-border-repeat",status:"experimental",syntax:"[ stretch | repeat | round | space ]{1,2}",description:"The mask-border-repeat CSS property defines how the edge regions of a source image are adjusted to fit the dimensions of an element's mask border."},{name:"mask-border-slice",status:"experimental",syntax:"<number-percentage>{1,4} fill?",description:"The mask-border-slice CSS property divides the image specified by mask-border-source into regions. These regions are used to form the components of an element's mask border."},{name:"mask-border-source",status:"experimental",syntax:"none | <image>",description:"The mask-border-source CSS property specifies the source image used to create an element's mask border.\n\nThe mask-border-slice property is used to divide the source image into regions, which are then dynamically applied to the final mask border."},{name:"mask-border-width",status:"experimental",syntax:"[ <length-percentage> | <number> | auto ]{1,4}",description:"The mask-border-width CSS property specifies the width of an element's mask border."},{name:"mask-clip",syntax:"[ <geometry-box> | no-clip ]#",browsers:["FF53","S4","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-clip"}],description:"The mask-clip CSS property determines the area, which is affected by a mask. The painted content of an element must be restricted to this area."},{name:"mask-composite",syntax:"<compositing-operator>#",browsers:["E18","FF53"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-composite"}],description:"The mask-composite CSS property represents a compositing operation used on the current mask layer with the mask layers below it."},{name:"max-lines",status:"experimental",syntax:"none | <integer>",description:"The max-liens property forces a break after a set number of lines"},{name:"overflow-block",status:"experimental",syntax:"visible | hidden | clip | scroll | auto",browsers:["FF69"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-block"}],description:"The overflow-block CSS media feature can be used to test how the output device handles content that overflows the initial containing block along the block axis."},{name:"overflow-clip-box",status:"nonstandard",syntax:"padding-box | content-box",browsers:["FF29"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Mozilla/CSS/overflow-clip-box"}],description:"The overflow-clip-box CSS property specifies relative to which box the clipping happens when there is an overflow. It is short hand for the overflow-clip-box-inline and overflow-clip-box-block properties."},{name:"overflow-inline",status:"experimental",syntax:"visible | hidden | clip | scroll | auto",browsers:["FF69"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-inline"}],description:"The overflow-inline CSS media feature can be used to test how the output device handles content that overflows the initial containing block along the inline axis."},{name:"overscroll-behavior",status:"nonstandard",syntax:"[ contain | none | auto ]{1,2}",browsers:["E18","FF59","C63","O50"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior"}],description:"The overscroll-behavior CSS property is shorthand for the overscroll-behavior-x and overscroll-behavior-y properties, which allow you to control the browser's scroll overflow behavior — what happens when the boundary of a scrolling area is reached."},{name:"overscroll-behavior-x",status:"nonstandard",syntax:"contain | none | auto",browsers:["E18","FF59","C63","O50"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-x"}],description:"The overscroll-behavior-x CSS property is allows you to control the browser's scroll overflow behavior — what happens when the boundary of a scrolling area is reached — in the x axis direction."},{name:"overscroll-behavior-y",status:"nonstandard",syntax:"contain | none | auto",browsers:["E18","FF59","C63","O50"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-y"}],description:"The overscroll-behavior-y CSS property is allows you to control the browser's scroll overflow behavior — what happens when the boundary of a scrolling area is reached — in the y axis direction."},{name:"ruby-merge",status:"experimental",syntax:"separate | collapse | auto",description:"This property controls how ruby annotation boxes should be rendered when there are more than one in a ruby container box: whether each pair should be kept separate, the annotations should be collapsed and rendered as a group, or the separation should be determined based on the space available."},{name:"scrollbar-color",syntax:"auto | dark | light | <color>{2}",browsers:["FF64"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-color"}],description:"The scrollbar-color CSS property sets the color of the scrollbar track and thumb."},{name:"scrollbar-width",syntax:"auto | thin | none",browsers:["FF64"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-width"}],description:"The scrollbar-width property allows the author to set the maximum thickness of an element’s scrollbars when they are shown. "},{name:"scroll-margin",syntax:"<length>{1,4}",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin"}],description:"The scroll-margin property is a shorthand property which sets all of the scroll-margin longhands, assigning values much like the margin property does for the margin-* longhands."},{name:"scroll-margin-block",syntax:"<length>{1,2}",browsers:["FF68","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block"}],description:"The scroll-margin-block property is a shorthand property which sets the scroll-margin longhands in the block dimension."},{name:"scroll-margin-block-start",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block-start"}],description:"The scroll-margin-block-start property defines the margin of the scroll snap area at the start of the block dimension that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-block-end",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block-end"}],description:"The scroll-margin-block-end property defines the margin of the scroll snap area at the end of the block dimension that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-bottom",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-bottom"}],description:"The scroll-margin-bottom property defines the bottom margin of the scroll snap area that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-inline",syntax:"<length>{1,2}",browsers:["FF68"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline"}],description:"The scroll-margin-inline property is a shorthand property which sets the scroll-margin longhands in the inline dimension."},{name:"scroll-margin-inline-start",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline-start"}],description:"The scroll-margin-inline-start property defines the margin of the scroll snap area at the start of the inline dimension that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-inline-end",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline-end"}],description:"The scroll-margin-inline-end property defines the margin of the scroll snap area at the end of the inline dimension that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-left",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-left"}],description:"The scroll-margin-left property defines the left margin of the scroll snap area that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-right",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-right"}],description:"The scroll-margin-right property defines the right margin of the scroll snap area that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-top",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-top"}],description:"The scroll-margin-top property defines the top margin of the scroll snap area that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-snap-type-x",status:"obsolete",syntax:"none | mandatory | proximity",browsers:["FF39","S9"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type-x"}],description:"The scroll-snap-type-x CSS property defines how strictly snap points are enforced on the horizontal axis of the scroll container in case there is one.\n\nSpecifying any precise animations or physics used to enforce those snap points is not covered by this property but instead left up to the user agent."},{name:"scroll-snap-type-y",status:"obsolete",syntax:"none | mandatory | proximity",browsers:["FF39"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type-y"}],description:"The scroll-snap-type-y CSS property defines how strictly snap points are enforced on the vertical axis of the scroll container in case there is one.\n\nSpecifying any precise animations or physics used to enforce those snap points is not covered by this property but instead left up to the user agent."},{name:"text-decoration-thickness",syntax:"auto | from-font | <length>",browsers:["FF70","S12.1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-thickness"}],description:"The text-decoration-thickness CSS property sets the thickness, or width, of the decoration line that is used on text in an element, such as a line-through, underline, or overline."},{name:"text-emphasis",syntax:"<'text-emphasis-style'> || <'text-emphasis-color'>",browsers:["FF46","S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-emphasis"}],description:"The text-emphasis CSS property is a shorthand property for setting text-emphasis-style and text-emphasis-color in one declaration. This property will apply the specified emphasis mark to each character of the element's text, except separator characters, like spaces, and control characters."},{name:"text-emphasis-color",syntax:"<color>",browsers:["FF46","S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-emphasis-color"}],description:"The text-emphasis-color CSS property defines the color used to draw emphasis marks on text being rendered in the HTML document. This value can also be set and reset using the text-emphasis shorthand."},{name:"text-emphasis-position",syntax:"[ over | under ] && [ right | left ]",browsers:["FF46","S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-emphasis-position"}],description:"The text-emphasis-position CSS property describes where emphasis marks are drawn at. The effect of emphasis marks on the line height is the same as for ruby text: if there isn't enough place, the line height is increased."},{name:"text-emphasis-style",syntax:"none | [ [ filled | open ] || [ dot | circle | double-circle | triangle | sesame ] ] | <string>",browsers:["FF46","S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-emphasis-style"}],description:"The text-emphasis-style CSS property defines the type of emphasis used. It can also be set, and reset, using the text-emphasis shorthand."},{name:"text-underline-offset",syntax:"auto | from-font | <length>",browsers:["FF70","S12.1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-underline-offset"}],description:"The text-underline-offset CSS property sets the offset distance of an underline text decoration line (applied using text-decoration) from its original position."},{name:"speak-as",syntax:"auto | bullets | numbers | words | spell-out | <counter-style-name>",description:"The speak-as descriptor specifies how a counter symbol constructed with a given @counter-style will be represented in the spoken form. For example, an author can specify a counter symbol to be either spoken as its numerical value or just represented with an audio cue."},{name:"bleed",status:"experimental",syntax:"auto | <length>",description:"The bleed CSS at-rule descriptor, used with the @page at-rule, specifies the extent of the page bleed area outside the page box. This property only has effect if crop marks are enabled using the marks property."},{name:"marks",status:"experimental",syntax:"none | [ crop || cross ]",description:"The marks CSS at-rule descriptor, used with the @page at-rule, adds crop and/or cross marks to the presentation of the document. Crop marks indicate where the page should be cut. Cross marks are used to align sheets."}],atDirectives:[{name:"@charset",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@charset"}],description:"Defines character set of the document."},{name:"@counter-style",browsers:["FF33"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@counter-style"}],description:"Defines a custom counter style."},{name:"@font-face",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@font-face"}],description:"Allows for linking to fonts that are automatically activated when needed. This permits authors to work around the limitation of 'web-safe' fonts, allowing for consistent rendering independent of the fonts available in a given user's environment."},{name:"@font-feature-values",browsers:["FF34","S9.1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@font-feature-values"}],description:"Defines named values for the indices used to select alternate glyphs for a given font family."},{name:"@import",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@import"}],description:"Includes content of another file."},{name:"@keyframes",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@keyframes"}],description:"Defines set of animation key frames."},{name:"@media",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@media"}],description:"Defines a stylesheet for a particular media type."},{name:"@-moz-document",browsers:["FF1.8"],description:"Gecko-specific at-rule that restricts the style rules contained within it based on the URL of the document."},{name:"@-moz-keyframes",browsers:["FF5"],description:"Defines set of animation key frames."},{name:"@-ms-viewport",browsers:["E","IE10"],description:"Specifies the size, zoom factor, and orientation of the viewport."},{name:"@namespace",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@namespace"}],description:"Declares a prefix and associates it with a namespace name."},{name:"@-o-keyframes",browsers:["O12"],description:"Defines set of animation key frames."},{name:"@-o-viewport",browsers:["O11"],description:"Specifies the size, zoom factor, and orientation of the viewport."},{name:"@page",browsers:["E12","FF19","C2","IE8","O6"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@page"}],description:"Directive defines various page parameters."},{name:"@supports",browsers:["E12","FF22","S9","C28","O12.1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@supports"}],description:"A conditional group rule whose condition tests whether the user agent supports CSS property:value pairs."},{name:"@-webkit-keyframes",browsers:["C","S4"],description:"Defines set of animation key frames."}],pseudoClasses:[{name:":active",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:active"}],description:"Applies while an element is being activated by the user. For example, between the times the user presses the mouse button and releases it."},{name:":any-link",browsers:["FF50","S9","C65","O52"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:any-link"}],description:"Represents an element that acts as the source anchor of a hyperlink. Applies to both visited and unvisited links."},{name:":checked",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:checked"}],description:"Radio and checkbox elements can be toggled by the user. Some menu items are 'checked' when the user selects them. When such elements are toggled 'on' the :checked pseudo-class applies."},{name:":corner-present",browsers:["C","S5"],description:"Non-standard. Indicates whether or not a scrollbar corner is present."},{name:":decrement",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Indicates whether or not the button or track piece will decrement the view’s position when used."},{name:":default",browsers:["FF4","S5","C10","O10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:default"}],description:"Applies to the one or more UI elements that are the default among a set of similar elements. Typically applies to context menu items, buttons, and select lists/menus."},{name:":disabled",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:disabled"}],description:"Represents user interface elements that are in a disabled state; such elements have a corresponding enabled state."},{name:":double-button",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Applies when both buttons are displayed together at the same end of the scrollbar."},{name:":empty",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:empty"}],description:"Represents an element that has no children at all."},{name:":enabled",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:enabled"}],description:"Represents user interface elements that are in an enabled state; such elements have a corresponding disabled state."},{name:":end",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Indicates whether the object is placed after the thumb."},{name:":first",browsers:["E12","S6","C18","IE8","O9.2"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:first"}],description:"When printing double-sided documents, the page boxes on left and right pages may be different. This can be expressed through CSS pseudo-classes defined in the page context."},{name:":first-child",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:first-child"}],description:"Same as :nth-child(1). Represents an element that is the first child of some other element."},{name:":first-of-type",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:first-of-type"}],description:"Same as :nth-of-type(1). Represents an element that is the first sibling of its type in the list of children of its parent element."},{name:":focus",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:focus"}],description:"Applies while an element has the focus (accepts keyboard or mouse events, or other forms of input)."},{name:":fullscreen",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:fullscreen"}],description:"Matches any element that has its fullscreen flag set."},{name:":future",browsers:["C","O16","S6"],description:"Represents any element that is defined to occur entirely after a :current element."},{name:":horizontal",browsers:["C","S5"],description:"Non-standard. Applies to any scrollbar pieces that have a horizontal orientation."},{name:":host",browsers:["FF63","S10","C54","O41"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:host"}],description:"When evaluated in the context of a shadow tree, matches the shadow tree’s host element."},{name:":host()",browsers:["C35","O22"],description:"When evaluated in the context of a shadow tree, it matches the shadow tree’s host element if the host element, in its normal context, matches the selector argument."},{name:":host-context()",browsers:["C35","O22"],description:"Tests whether there is an ancestor, outside the shadow tree, which matches a particular selector."},{name:":hover",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:hover"}],description:"Applies while the user designates an element with a pointing device, but does not necessarily activate it. For example, a visual user agent could apply this pseudo-class when the cursor (mouse pointer) hovers over a box generated by the element."},{name:":increment",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Indicates whether or not the button or track piece will increment the view’s position when used."},{name:":indeterminate",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:indeterminate"}],description:"Applies to UI elements whose value is in an indeterminate state."},{name:":in-range",browsers:["E13","FF29","S5.1","C10","O11"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:in-range"}],description:"Used in conjunction with the min and max attributes, whether on a range input, a number field, or any other types that accept those attributes."},{name:":invalid",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:invalid"}],description:"An element is :valid or :invalid when it is, respectively, valid or invalid with respect to data validity semantics defined by a different specification."},{name:":lang()",browsers:["E","C","FF1","IE8","O8","S3"],description:"Represents an element that is in language specified."},{name:":last-child",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:last-child"}],description:"Same as :nth-last-child(1). Represents an element that is the last child of some other element."},{name:":last-of-type",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:last-of-type"}],description:"Same as :nth-last-of-type(1). Represents an element that is the last sibling of its type in the list of children of its parent element."},{name:":left",browsers:["E12","S5.1","C6","IE8","O9.2"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:left"}],description:"When printing double-sided documents, the page boxes on left and right pages may be different. This can be expressed through CSS pseudo-classes defined in the page context."},{name:":link",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:link"}],description:"Applies to links that have not yet been visited."},{name:":matches()",browsers:["S9"],description:"Takes a selector list as its argument. It represents an element that is represented by its argument."},{name:":-moz-any()",browsers:["FF4"],description:"Represents an element that is represented by the selector list passed as its argument. Standardized as :matches()."},{name:":-moz-any-link",browsers:["FF1"],description:"Represents an element that acts as the source anchor of a hyperlink. Applies to both visited and unvisited links."},{name:":-moz-broken",browsers:["FF3"],description:"Non-standard. Matches elements representing broken images."},{name:":-moz-drag-over",browsers:["FF1"],description:"Non-standard. Matches elements when a drag-over event applies to it."},{name:":-moz-first-node",browsers:["FF1"],description:"Non-standard. Represents an element that is the first child node of some other element."},{name:":-moz-focusring",browsers:["FF4"],description:"Non-standard. Matches an element that has focus and focus ring drawing is enabled in the browser."},{name:":-moz-full-screen",browsers:["FF9"],description:"Matches any element that has its fullscreen flag set. Standardized as :fullscreen."},{name:":-moz-last-node",browsers:["FF1"],description:"Non-standard. Represents an element that is the last child node of some other element."},{name:":-moz-loading",browsers:["FF3"],description:"Non-standard. Matches elements, such as images, that haven’t started loading yet."},{name:":-moz-only-whitespace",browsers:["FF1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:-moz-only-whitespace"}],description:"The same as :empty, except that it additionally matches elements that only contain code points affected by whitespace processing. Standardized as :blank."},{name:":-moz-placeholder",browsers:["FF4"],description:"Deprecated. Represents placeholder text in an input field. Use ::-moz-placeholder for Firefox 19+."},{name:":-moz-submit-invalid",browsers:["FF4"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:-moz-submit-invalid"}],description:"Non-standard. Represents any submit button when the contents of the associated form are not valid."},{name:":-moz-suppressed",browsers:["FF3"],description:"Non-standard. Matches elements representing images that have been blocked from loading."},{name:":-moz-ui-invalid",browsers:["FF4"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:-moz-ui-invalid"}],description:"Non-standard. Represents any validated form element whose value isn't valid "},{name:":-moz-ui-valid",browsers:["FF4"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:-moz-ui-valid"}],description:"Non-standard. Represents any validated form element whose value is valid "},{name:":-moz-user-disabled",browsers:["FF3"],description:"Non-standard. Matches elements representing images that have been disabled due to the user’s preferences."},{name:":-moz-window-inactive",browsers:["FF4"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:-moz-window-inactive"}],description:"Non-standard. Matches elements in an inactive window."},{name:":-ms-fullscreen",browsers:["IE11"],description:"Matches any element that has its fullscreen flag set."},{name:":-ms-input-placeholder",browsers:["IE10"],description:"Represents placeholder text in an input field. Note: for Edge use the pseudo-element ::-ms-input-placeholder. Standardized as ::placeholder."},{name:":-ms-keyboard-active",browsers:["IE10"],description:"Windows Store apps only. Applies one or more styles to an element when it has focus and the user presses the space bar."},{name:":-ms-lang()",browsers:["E","IE10"],description:"Represents an element that is in the language specified. Accepts a comma separated list of language tokens."},{name:":no-button",browsers:["C","S5"],description:"Non-standard. Applies to track pieces. Applies when there is no button at that end of the track."},{name:":not()",browsers:["E","C","FF1","IE9","O9.5","S2"],description:"The negation pseudo-class, :not(X), is a functional notation taking a simple selector (excluding the negation pseudo-class itself) as an argument. It represents an element that is not represented by its argument."},{name:":nth-child()",browsers:["E","C","FF3.5","IE9","O9.5","S3.1"],description:"Represents an element that has an+b-1 siblings before it in the document tree, for any positive integer or zero value of n, and has a parent element."},{name:":nth-last-child()",browsers:["E","C","FF3.5","IE9","O9.5","S3.1"],description:"Represents an element that has an+b-1 siblings after it in the document tree, for any positive integer or zero value of n, and has a parent element."},{name:":nth-last-of-type()",browsers:["E","C","FF3.5","IE9","O9.5","S3.1"],description:"Represents an element that has an+b-1 siblings with the same expanded element name after it in the document tree, for any zero or positive integer value of n, and has a parent element."},{name:":nth-of-type()",browsers:["E","C","FF3.5","IE9","O9.5","S3.1"],description:"Represents an element that has an+b-1 siblings with the same expanded element name before it in the document tree, for any zero or positive integer value of n, and has a parent element."},{name:":only-child",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:only-child"}],description:"Represents an element that has a parent element and whose parent element has no other element children. Same as :first-child:last-child or :nth-child(1):nth-last-child(1), but with a lower specificity."},{name:":only-of-type",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:only-of-type"}],description:"Matches every element that is the only child of its type, of its parent. Same as :first-of-type:last-of-type or :nth-of-type(1):nth-last-of-type(1), but with a lower specificity."},{name:":optional",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:optional"}],description:"A form element is :required or :optional if a value for it is, respectively, required or optional before the form it belongs to is submitted. Elements that are not form elements are neither required nor optional."},{name:":out-of-range",browsers:["E13","FF29","S5.1","C10","O11"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:out-of-range"}],description:"Used in conjunction with the min and max attributes, whether on a range input, a number field, or any other types that accept those attributes."},{name:":past",browsers:["C","O16","S6"],description:"Represents any element that is defined to occur entirely prior to a :current element."},{name:":read-only",browsers:["E13","FF1.5","S4","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:read-only"}],description:"An element whose contents are not user-alterable is :read-only. However, elements whose contents are user-alterable (such as text input fields) are considered to be in a :read-write state. In typical documents, most elements are :read-only."},{name:":read-write",browsers:["E13","FF1.5","S4","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:read-write"}],description:"An element whose contents are not user-alterable is :read-only. However, elements whose contents are user-alterable (such as text input fields) are considered to be in a :read-write state. In typical documents, most elements are :read-only."},{name:":required",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:required"}],description:"A form element is :required or :optional if a value for it is, respectively, required or optional before the form it belongs to is submitted. Elements that are not form elements are neither required nor optional."},{name:":right",browsers:["E12","S5.1","C6","IE8","O9.2"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:right"}],description:"When printing double-sided documents, the page boxes on left and right pages may be different. This can be expressed through CSS pseudo-classes defined in the page context."},{name:":root",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:root"}],description:"Represents an element that is the root of the document. In HTML 4, this is always the HTML element."},{name:":scope",browsers:["FF32","S7","C27","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:scope"}],description:"Represents any element that is in the contextual reference element set."},{name:":single-button",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Applies when both buttons are displayed separately at either end of the scrollbar."},{name:":start",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Indicates whether the object is placed before the thumb."},{name:":target",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:target"}],description:"Some URIs refer to a location within a resource. This kind of URI ends with a 'number sign' (#) followed by an anchor identifier (called the fragment identifier)."},{name:":valid",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:valid"}],description:"An element is :valid or :invalid when it is, respectively, valid or invalid with respect to data validity semantics defined by a different specification."},{name:":vertical",browsers:["C","S5"],description:"Non-standard. Applies to any scrollbar pieces that have a vertical orientation."},{name:":visited",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:visited"}],description:"Applies once the link has been visited by the user."},{name:":-webkit-any()",browsers:["C","S5"],description:"Represents an element that is represented by the selector list passed as its argument. Standardized as :matches()."},{name:":-webkit-full-screen",browsers:["C","S6"],description:"Matches any element that has its fullscreen flag set. Standardized as :fullscreen."},{name:":window-inactive",browsers:["C","S3"],description:"Non-standard. Applies to all scrollbar pieces. Indicates whether or not the window containing the scrollbar is currently active."},{name:":blank",status:"experimental",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:blank"}],description:"The :blank CSS pseudo-class selects empty user input elements (eg. <input> or <textarea>)."},{name:":defined",status:"experimental",browsers:["FF63","S10","C54","O41"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:defined"}],description:"The :defined CSS pseudo-class represents any element that has been defined. This includes any standard element built in to the browser, and custom elements that have been successfully defined (i.e. with the CustomElementRegistry.define() method)."},{name:":dir",browsers:["FF49"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:dir"}],description:"The :dir() CSS pseudo-class matches elements based on the directionality of the text contained in them."},{name:":focus-visible",status:"experimental",browsers:["FF4","C67","O54"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:focus-visible"}],description:"The :focus-visible pseudo-class applies while an element matches the :focus pseudo-class and the UA determines via heuristics that the focus should be made evident on the element."},{name:":focus-within",status:"experimental",browsers:["FF52","S10.1","C60","O47"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:focus-within"}],description:"The :focus-within pseudo-class applies to any element for which the :focus pseudo class applies as well as to an element whose descendant in the flat tree (including non-element nodes, such as text nodes) matches the conditions for matching :focus."},{name:":has",status:"experimental",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:has"}],description:":The :has() CSS pseudo-class represents an element if any of the selectors passed as parameters (relative to the :scope of the given element), match at least one element."},{name:":is",status:"experimental",browsers:["FF4","S9","C68","O55"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:is"}],description:"The :is() CSS pseudo-class function takes a selector list as its argument, and selects any element that can be selected by one of the selectors in that list. This is useful for writing large selectors in a more compact form."},{name:":placeholder-shown",status:"experimental",browsers:["FF51","S9","C47","IE10","O34"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:placeholder-shown"}],description:"The :placeholder-shown CSS pseudo-class represents any <input> or <textarea> element that is currently displaying placeholder text."},{name:":where",status:"experimental",description:"The :where() CSS pseudo-class function takes a selector list as its argument, and selects any element that can be selected by one of the selectors in that list."}],pseudoElements:[{name:"::after",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::after"}],description:"Represents a styleable child pseudo-element immediately after the originating element’s actual content."},{name:"::backdrop",browsers:["E12","FF47","C37","IE11","O24"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::backdrop"}],description:"Used to create a backdrop that hides the underlying document for an element in a top layer (such as an element that is displayed fullscreen)."},{name:"::before",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::before"}],description:"Represents a styleable child pseudo-element immediately before the originating element’s actual content."},{name:"::content",browsers:["C35","O22"],description:"Deprecated. Matches the distribution list itself, on elements that have one. Use ::slotted for forward compatibility."},{name:"::cue",browsers:["FF55","S6.1","C26","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::cue"}]},{name:"::cue()",browsers:["C","O16","S6"]},{name:"::cue-region",browsers:["C","O16","S6"]},{name:"::cue-region()",browsers:["C","O16","S6"]},{name:"::first-letter",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::first-letter"}],description:"Represents the first letter of an element, if it is not preceded by any other content (such as images or inline tables) on its line."},{name:"::first-line",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::first-line"}],description:"Describes the contents of the first formatted line of its originating element."},{name:"::-moz-focus-inner",browsers:["FF4"]},{name:"::-moz-focus-outer",browsers:["FF4"]},{name:"::-moz-list-bullet",browsers:["FF1"],description:"Used to style the bullet of a list element. Similar to the standardized ::marker."},{name:"::-moz-list-number",browsers:["FF1"],description:"Used to style the numbers of a list element. Similar to the standardized ::marker."},{name:"::-moz-placeholder",browsers:["FF19"],description:"Represents placeholder text in an input field"},{name:"::-moz-progress-bar",browsers:["FF9"],description:"Represents the bar portion of a progress bar."},{name:"::-moz-selection",browsers:["FF1"],description:"Represents the portion of a document that has been highlighted by the user."},{name:"::-ms-backdrop",browsers:["IE11"],description:"Used to create a backdrop that hides the underlying document for an element in a top layer (such as an element that is displayed fullscreen)."},{name:"::-ms-browse",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-browse"}],description:"Represents the browse button of an input type=file control."},{name:"::-ms-check",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-check"}],description:"Represents the check of a checkbox or radio button input control."},{name:"::-ms-clear",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-clear"}],description:"Represents the clear button of a text input control"},{name:"::-ms-expand",browsers:["E","IE10"],description:"Represents the drop-down button of a select control."},{name:"::-ms-fill",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-fill"}],description:"Represents the bar portion of a progress bar."},{name:"::-ms-fill-lower",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-fill-lower"}],description:"Represents the portion of the slider track from its smallest value up to the value currently selected by the thumb. In a left-to-right layout, this is the portion of the slider track to the left of the thumb."},{name:"::-ms-fill-upper",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-fill-upper"}],description:"Represents the portion of the slider track from the value currently selected by the thumb up to the slider's largest value. In a left-to-right layout, this is the portion of the slider track to the right of the thumb."},{name:"::-ms-reveal",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-reveal"}],description:"Represents the password reveal button of an input type=password control."},{name:"::-ms-thumb",browsers:["E","IE10"],description:"Represents the portion of range input control (also known as a slider control) that the user drags."},{name:"::-ms-ticks-after",browsers:["E","IE10"],description:"Represents the tick marks of a slider that begin just after the thumb and continue up to the slider's largest value. In a left-to-right layout, these are the ticks to the right of the thumb."},{name:"::-ms-ticks-before",browsers:["E","IE10"],description:"Represents the tick marks of a slider that represent its smallest values up to the value currently selected by the thumb. In a left-to-right layout, these are the ticks to the left of the thumb."},{name:"::-ms-tooltip",browsers:["E","IE10"],description:"Represents the tooltip of a slider (input type=range)."},{name:"::-ms-track",browsers:["E","IE10"],description:"Represents the track of a slider."},{name:"::-ms-value",browsers:["E16","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-value"}],description:"Represents the content of a text or password input control, or a select control."},{name:"::selection",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::selection"}],description:"Represents the portion of a document that has been highlighted by the user."},{name:"::shadow",browsers:["C35","O22"],description:"Matches the shadow root if an element has a shadow tree."},{name:"::-webkit-file-upload-button",browsers:["S3","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-file-upload-button"}]},{name:"::-webkit-inner-spin-button",browsers:["S4.1","C6","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-inner-spin-button"}]},{name:"::-webkit-input-placeholder",browsers:["C","S4"]},{name:"::-webkit-keygen-select",browsers:["C","O","S6"]},{name:"::-webkit-meter-bar",browsers:["S5.1","C12","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-meter-bar"}]},{name:"::-webkit-meter-even-less-good-value",browsers:["S5.1","C12","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-meter-even-less-good-value"}]},{name:"::-webkit-meter-optimum-value",browsers:["S5.1","C12","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-meter-optimum-value"}]},{name:"::-webkit-meter-suboptimal-value",browsers:["E13","C","O15","S6"]},{name:"::-webkit-outer-spin-button",browsers:["S4.1","C6"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-outer-spin-button"}]},{name:"::-webkit-progress-bar",browsers:["S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-progress-bar"}]},{name:"::-webkit-progress-inner-element",browsers:["S6.1","C23","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-progress-inner-element"}]},{name:"::-webkit-progress-value",browsers:["S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-progress-value"}]},{name:"::-webkit-resizer",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-resizer"}]},{name:"::-webkit-scrollbar",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar"}]},{name:"::-webkit-scrollbar-button",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar-button"}]},{name:"::-webkit-scrollbar-corner",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar-corner"}]},{name:"::-webkit-scrollbar-thumb",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar-thumb"}]},{name:"::-webkit-scrollbar-track",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar-track"}]},{name:"::-webkit-scrollbar-track-piece",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar-track-piece"}]},{name:"::-webkit-search-cancel-button",browsers:["S3","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-search-cancel-button"}]},{name:"::-webkit-search-decoration",browsers:["C","S4"]},{name:"::-webkit-search-results-button",browsers:["S3","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-search-results-button"}]},{name:"::-webkit-search-results-decoration",browsers:["C","S4"]},{name:"::-webkit-slider-runnable-track",browsers:["C","O","S6"]},{name:"::-webkit-slider-thumb",browsers:["C","O","S6"]},{name:"::-webkit-textfield-decoration-container",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble-arrow",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble-arrow-clipper",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble-heading",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble-message",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble-text-block",browsers:["C","O","S6"]},{name:"::-moz-range-progress",status:"nonstandard",browsers:["FF22"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-moz-range-progress"}],description:'The ::-moz-range-progress CSS pseudo-element is a Mozilla extension that represents the lower portion of the track (i.e., groove) in which the indicator slides in an <input> of type="range". This portion corresponds to values lower than the value currently selected by the thumb (i.e., virtual knob).'},{name:"::-moz-range-thumb",status:"nonstandard",browsers:["FF21"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-moz-range-thumb"}],description:'The ::-moz-range-thumb CSS pseudo-element is a Mozilla extension that represents the thumb (i.e., virtual knob) of an <input> of type="range". The user can move the thumb along the input\'s track to alter its numerical value.'},{name:"::-moz-range-track",status:"nonstandard",browsers:["FF21"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-moz-range-track"}],description:'The ::-moz-range-track CSS pseudo-element is a Mozilla extension that represents the track (i.e., groove) in which the indicator slides in an <input> of type="range".'},{name:"::-webkit-progress-inner-value",status:"nonstandard",description:"The ::-webkit-progress-value CSS pseudo-element represents the filled-in portion of the bar of a <progress> element. It is a child of the ::-webkit-progress-bar pseudo-element.\n\nIn order to let ::-webkit-progress-value take effect, -webkit-appearance needs to be set to none on the <progress> element."},{name:"::grammar-error",status:"experimental",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::grammar-error"}],description:"The ::grammar-error CSS pseudo-element represents a text segment which the user agent has flagged as grammatically incorrect."},{name:"::marker",browsers:["FF68","C80"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::marker"}],description:"The ::marker CSS pseudo-element selects the marker box of a list item, which typically contains a bullet or number. It works on any element or pseudo-element set to display: list-item, such as the <li> and <summary> elements."},{name:"::part",status:"experimental",browsers:["FF69","C73","O60"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::part"}],description:"The ::part CSS pseudo-element represents any element within a shadow tree that has a matching part attribute."},{name:"::placeholder",browsers:["E12","FF51","S10.1","C57","O44"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::placeholder"}],description:"The ::placeholder CSS pseudo-element represents the placeholder text of a form element."},{name:"::slotted",browsers:["FF63","S10","C50","O37"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::slotted"}],description:"The :slotted() CSS pseudo-element represents any element that has been placed into a slot inside an HTML template."},{name:"::spelling-error",status:"experimental",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::spelling-error"}],description:"The ::spelling-error CSS pseudo-element represents a text segment which the user agent has flagged as incorrectly spelled."}]})]),tn=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),r=0;for(t=0;t<n;t++)for(var o=arguments[t],s=0,a=o.length;s<a;s++,r++)i[r]=o[s];return i},nn=function(){function e(e){void 0===e&&(e=new X),this.keyframeRegex=/^@(\-(webkit|ms|moz|o)\-)?keyframes$/i,this.scanner=e,this.token={type:i.EOF,offset:-1,len:0,text:""},this.prevToken=void 0}return e.prototype.peekIdent=function(e){return i.Ident===this.token.type&&e.length===this.token.text.length&&e===this.token.text.toLowerCase()},e.prototype.peekKeyword=function(e){return i.AtKeyword===this.token.type&&e.length===this.token.text.length&&e===this.token.text.toLowerCase()},e.prototype.peekDelim=function(e){return i.Delim===this.token.type&&e===this.token.text},e.prototype.peek=function(e){return e===this.token.type},e.prototype.peekRegExp=function(e,t){return e===this.token.type&&t.test(this.token.text)},e.prototype.hasWhitespace=function(){return!!this.prevToken&&this.prevToken.offset+this.prevToken.len!==this.token.offset},e.prototype.consumeToken=function(){this.prevToken=this.token,this.token=this.scanner.scan()},e.prototype.mark=function(){return{prev:this.prevToken,curr:this.token,pos:this.scanner.pos()}},e.prototype.restoreAtMark=function(e){this.prevToken=e.prev,this.token=e.curr,this.scanner.goBackTo(e.pos)},e.prototype.try=function(e){var t=this.mark(),n=e();return n||(this.restoreAtMark(t),null)},e.prototype.acceptOneKeyword=function(e){if(i.AtKeyword===this.token.type)for(var t=0,n=e;t<n.length;t++){var r=n[t];if(r.length===this.token.text.length&&r===this.token.text.toLowerCase())return this.consumeToken(),!0}return!1},e.prototype.accept=function(e){return e===this.token.type&&(this.consumeToken(),!0)},e.prototype.acceptIdent=function(e){return!!this.peekIdent(e)&&(this.consumeToken(),!0)},e.prototype.acceptKeyword=function(e){return!!this.peekKeyword(e)&&(this.consumeToken(),!0)},e.prototype.acceptDelim=function(e){return!!this.peekDelim(e)&&(this.consumeToken(),!0)},e.prototype.acceptRegexp=function(e){return!!e.test(this.token.text)&&(this.consumeToken(),!0)},e.prototype._parseRegexp=function(e){var t=this.createNode(H.Identifier);do{}while(this.acceptRegexp(e));return this.finish(t)},e.prototype.acceptUnquotedString=function(){var e=this.scanner.pos();this.scanner.goBackTo(this.token.offset);var t=this.scanner.scanUnquotedString();return t?(this.token=t,this.consumeToken(),!0):(this.scanner.goBackTo(e),!1)},e.prototype.resync=function(e,t){for(;;){if(e&&-1!==e.indexOf(this.token.type))return this.consumeToken(),!0;if(t&&-1!==t.indexOf(this.token.type))return!0;if(this.token.type===i.EOF)return!1;this.token=this.scanner.scan()}},e.prototype.createNode=function(e){return new ne(this.token.offset,this.token.len,e)},e.prototype.create=function(e){return new e(this.token.offset,this.token.len)},e.prototype.finish=function(e,t,n,i){if(!(e instanceof ie)&&(t&&this.markError(e,t,n,i),this.prevToken)){var r=this.prevToken.offset+this.prevToken.len;e.length=r>e.offset?r-e.offset:0}return e},e.prototype.markError=function(e,t,n,i){this.token!==this.lastErrorToken&&(e.addIssue(new pt(e,t,te.Error,void 0,this.token.offset,this.token.len)),this.lastErrorToken=this.token),(n||i)&&this.resync(n,i)},e.prototype.parseStylesheet=function(e){var t=e.version,n=e.getText();return this.internalParse(n,this._parseStylesheet,function(i,r){if(e.version!==t)throw new Error("Underlying model has changed, AST is no longer valid");return n.substr(i,r)})},e.prototype.internalParse=function(e,t,n){this.scanner.setSource(e),this.token=this.scanner.scan();var i=t.bind(this)();return i&&(i.textProvider=n||function(t,n){return e.substr(t,n)}),i},e.prototype._parseStylesheet=function(){for(var e=this.create(oe);e.addChild(this._parseStylesheetStart()););var t=!1;do{var n=!1;do{n=!1;var r=this._parseStylesheetStatement();for(r&&(e.addChild(r),n=!0,t=!1,this.peek(i.EOF)||!this._needsSemicolonAfter(r)||this.accept(i.SemiColon)||this.markError(e,bt.SemiColonExpected));this.accept(i.SemiColon)||this.accept(i.CDO)||this.accept(i.CDC);)n=!0,t=!1}while(n);if(this.peek(i.EOF))break;t||(this.peek(i.AtKeyword)?this.markError(e,bt.UnknownAtRule):this.markError(e,bt.RuleOrSelectorExpected),t=!0),this.consumeToken()}while(!this.peek(i.EOF));return this.finish(e)},e.prototype._parseStylesheetStart=function(){return this._parseCharset()},e.prototype._parseStylesheetStatement=function(e){return void 0===e&&(e=!1),this.peek(i.AtKeyword)?this._parseStylesheetAtStatement(e):this._parseRuleset(e)},e.prototype._parseStylesheetAtStatement=function(e){return void 0===e&&(e=!1),this._parseImport()||this._parseMedia(e)||this._parsePage()||this._parseFontFace()||this._parseKeyframe()||this._parseSupports(e)||this._parseViewPort()||this._parseNamespace()||this._parseDocument()||this._parseUnknownAtRule()},e.prototype._tryParseRuleset=function(e){var t=this.mark();if(this._parseSelector(e)){for(;this.accept(i.Comma)&&this._parseSelector(e););if(this.accept(i.CurlyL))return this.restoreAtMark(t),this._parseRuleset(e)}return this.restoreAtMark(t),null},e.prototype._parseRuleset=function(e){void 0===e&&(e=!1);var t=this.create(le),n=t.getSelectors();if(!n.addChild(this._parseSelector(e)))return null;for(;this.accept(i.Comma);)if(!n.addChild(this._parseSelector(e)))return this.finish(t,bt.SelectorExpected);return this._parseBody(t,this._parseRuleSetDeclaration.bind(this))},e.prototype._parseRuleSetDeclaration=function(){return this._parseAtApply()||this._tryParseCustomPropertyDeclaration()||this._parseDeclaration()||this._parseUnknownAtRule()},e.prototype._parseAtApply=function(){if(!this.peekKeyword("@apply"))return null;var e=this.create(pe);return this.consumeToken(),e.setIdentifier(this._parseIdent([Y.Variable]))?this.finish(e):this.finish(e,bt.IdentifierExpected)},e.prototype._needsSemicolonAfter=function(e){switch(e.type){case H.Keyframe:case H.ViewPort:case H.Media:case H.Ruleset:case H.Namespace:case H.If:case H.For:case H.Each:case H.While:case H.MixinDeclaration:case H.FunctionDeclaration:return!1;case H.ExtendsReference:case H.MixinContent:case H.ReturnStatement:case H.MediaQuery:case H.Debug:case H.Import:case H.AtApplyRule:case H.CustomPropertyDeclaration:return!0;case H.VariableDeclaration:return e.needsSemicolon;case H.MixinReference:return!e.getContent();case H.Declaration:return!e.getNestedProperties()}return!1},e.prototype._parseDeclarations=function(e){var t=this.create(se);if(!this.accept(i.CurlyL))return null;for(var n=e();t.addChild(n)&&!this.peek(i.CurlyR);){if(this._needsSemicolonAfter(n)&&!this.accept(i.SemiColon))return this.finish(t,bt.SemiColonExpected,[i.SemiColon,i.CurlyR]);for(n&&this.prevToken&&this.prevToken.type===i.SemiColon&&(n.semicolonPosition=this.prevToken.offset);this.accept(i.SemiColon););n=e()}return this.accept(i.CurlyR)?this.finish(t):this.finish(t,bt.RightCurlyExpected,[i.CurlyR,i.SemiColon])},e.prototype._parseBody=function(e,t){return e.setDeclarations(this._parseDeclarations(t))?this.finish(e):this.finish(e,bt.LeftCurlyExpected,[i.CurlyR,i.SemiColon])},e.prototype._parseSelector=function(e){var t=this.create(ce),n=!1;for(e&&(n=t.addChild(this._parseCombinator()));t.addChild(this._parseSimpleSelector());)n=!0,t.addChild(this._parseCombinator());return n?this.finish(t):null},e.prototype._parseDeclaration=function(e){var t=this.create(fe);if(!t.setProperty(this._parseProperty()))return null;if(!this.accept(i.Colon)){var n=e?tn(e,[i.SemiColon]):[i.SemiColon];return this.finish(t,bt.ColonExpected,[i.Colon],n)}return this.prevToken&&(t.colonPosition=this.prevToken.offset),t.setValue(this._parseExpr())?(t.addChild(this._parsePrio()),this.peek(i.SemiColon)&&(t.semicolonPosition=this.token.offset),this.finish(t)):this.finish(t,bt.PropertyValueExpected)},e.prototype._tryParseCustomPropertyDeclaration=function(){if(!this.peekRegExp(i.Ident,/^--/))return null;var e=this.create(me);if(!e.setProperty(this._parseProperty()))return null;if(!this.accept(i.Colon))return this.finish(e,bt.ColonExpected,[i.Colon]);this.prevToken&&(e.colonPosition=this.prevToken.offset);var t=this.mark();if(this.peek(i.CurlyL)){var n=this.create(ue),r=this._parseDeclarations(this._parseRuleSetDeclaration.bind(this));if(n.setDeclarations(r)&&!r.isErroneous(!0)&&(n.addChild(this._parsePrio()),this.peek(i.SemiColon)))return this.finish(n),e.setPropertySet(n),e.semicolonPosition=this.token.offset,this.finish(e);this.restoreAtMark(t)}var o=this._parseExpr();return o&&!o.isErroneous(!0)&&(this._parsePrio(),this.peek(i.SemiColon))?(e.setValue(o),e.semicolonPosition=this.token.offset,this.finish(e)):(this.restoreAtMark(t),e.addChild(this._parseCustomPropertyValue()),e.addChild(this._parsePrio()),vt(e.colonPosition)&&this.token.offset===e.colonPosition+1?this.finish(e,bt.PropertyValueExpected):this.finish(e))},e.prototype._parseCustomPropertyValue=function(){var e=this.create(ne),t=function(){return 0===n&&0===r&&0===o},n=0,r=0,o=0;e:for(;;){switch(this.token.type){case i.SemiColon:case i.Exclamation:if(t())break e;break;case i.CurlyL:n++;break;case i.CurlyR:if(--n<0){if(0===r&&0===o)break e;return this.finish(e,bt.LeftCurlyExpected)}break;case i.ParenthesisL:r++;break;case i.ParenthesisR:if(--r<0)return this.finish(e,bt.LeftParenthesisExpected);break;case i.BracketL:o++;break;case i.BracketR:if(--o<0)return this.finish(e,bt.LeftSquareBracketExpected);break;case i.BadString:break e;case i.EOF:var s=bt.RightCurlyExpected;return o>0?s=bt.RightSquareBracketExpected:r>0&&(s=bt.RightParenthesisExpected),this.finish(e,s)}this.consumeToken()}return this.finish(e)},e.prototype._tryToParseDeclaration=function(){var e=this.mark();return this._parseProperty()&&this.accept(i.Colon)?(this.restoreAtMark(e),this._parseDeclaration()):(this.restoreAtMark(e),null)},e.prototype._parseProperty=function(){var e=this.create(ge),t=this.mark();return(this.acceptDelim("*")||this.acceptDelim("_"))&&this.hasWhitespace()?(this.restoreAtMark(t),null):e.setIdentifier(this._parsePropertyIdentifier())?this.finish(e):null},e.prototype._parsePropertyIdentifier=function(){return this._parseIdent()},e.prototype._parseCharset=function(){if(!this.peek(i.Charset))return null;var e=this.create(ne);return this.consumeToken(),this.accept(i.String)?this.accept(i.SemiColon)?this.finish(e):this.finish(e,bt.SemiColonExpected):this.finish(e,bt.IdentifierExpected)},e.prototype._parseImport=function(){if(!this.peekKeyword("@import"))return null;var e=this.create(Ie);return this.consumeToken(),e.addChild(this._parseURILiteral())||e.addChild(this._parseStringLiteral())?(this.peek(i.SemiColon)||this.peek(i.EOF)||e.setMedialist(this._parseMediaQueryList()),this.finish(e)):this.finish(e,bt.URIOrStringExpected)},e.prototype._parseNamespace=function(){if(!this.peekKeyword("@namespace"))return null;var e=this.create(Ae);return this.consumeToken(),e.addChild(this._parseURILiteral())||(e.addChild(this._parseIdent()),e.addChild(this._parseURILiteral())||e.addChild(this._parseStringLiteral()))?this.accept(i.SemiColon)?this.finish(e):this.finish(e,bt.SemiColonExpected):this.finish(e,bt.URIExpected,[i.SemiColon])},e.prototype._parseFontFace=function(){if(!this.peekKeyword("@font-face"))return null;var e=this.create(De);return this.consumeToken(),this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._parseViewPort=function(){if(!this.peekKeyword("@-ms-viewport")&&!this.peekKeyword("@-o-viewport")&&!this.peekKeyword("@viewport"))return null;var e=this.create(ze);return this.consumeToken(),this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._parseKeyframe=function(){if(!this.peekRegExp(i.AtKeyword,this.keyframeRegex))return null;var e=this.create(Re),t=this.create(ne);return this.consumeToken(),e.setKeyword(this.finish(t)),t.matches("@-ms-keyframes")&&this.markError(t,bt.UnknownKeyword),e.setIdentifier(this._parseKeyframeIdent())?this._parseBody(e,this._parseKeyframeSelector.bind(this)):this.finish(e,bt.IdentifierExpected,[i.CurlyR])},e.prototype._parseKeyframeIdent=function(){return this._parseIdent([Y.Keyframe])},e.prototype._parseKeyframeSelector=function(){var e=this.create(Ee);if(!e.addChild(this._parseIdent())&&!this.accept(i.Percentage))return null;for(;this.accept(i.Comma);)if(!e.addChild(this._parseIdent())&&!this.accept(i.Percentage))return this.finish(e,bt.PercentageExpected);return this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._tryParseKeyframeSelector=function(){var e=this.create(Ee),t=this.mark();if(!e.addChild(this._parseIdent())&&!this.accept(i.Percentage))return null;for(;this.accept(i.Comma);)if(!e.addChild(this._parseIdent())&&!this.accept(i.Percentage))return this.restoreAtMark(t),null;return this.peek(i.CurlyL)?this._parseBody(e,this._parseRuleSetDeclaration.bind(this)):(this.restoreAtMark(t),null)},e.prototype._parseSupports=function(e){if(void 0===e&&(e=!1),!this.peekKeyword("@supports"))return null;var t=this.create(Oe);return this.consumeToken(),t.addChild(this._parseSupportsCondition()),this._parseBody(t,this._parseSupportsDeclaration.bind(this,e))},e.prototype._parseSupportsDeclaration=function(e){return void 0===e&&(e=!1),e?this._tryParseRuleset(!0)||this._tryToParseDeclaration()||this._parseStylesheetStatement(!0):this._parseStylesheetStatement(!1)},e.prototype._parseSupportsCondition=function(){var e=this.create(Ve);if(this.acceptIdent("not"))e.addChild(this._parseSupportsConditionInParens());else if(e.addChild(this._parseSupportsConditionInParens()),this.peekRegExp(i.Ident,/^(and|or)$/i))for(var t=this.token.text.toLowerCase();this.acceptIdent(t);)e.addChild(this._parseSupportsConditionInParens());return this.finish(e)},e.prototype._parseSupportsConditionInParens=function(){var e=this.create(Ve);if(this.accept(i.ParenthesisL))return this.prevToken&&(e.lParent=this.prevToken.offset),e.addChild(this._tryToParseDeclaration())||this._parseSupportsCondition()?this.accept(i.ParenthesisR)?(this.prevToken&&(e.rParent=this.prevToken.offset),this.finish(e)):this.finish(e,bt.RightParenthesisExpected,[i.ParenthesisR],[]):this.finish(e,bt.ConditionExpected);if(this.peek(i.Ident)){var t=this.mark();if(this.consumeToken(),!this.hasWhitespace()&&this.accept(i.ParenthesisL)){for(var n=1;this.token.type!==i.EOF&&0!==n;)this.token.type===i.ParenthesisL?n++:this.token.type===i.ParenthesisR&&n--,this.consumeToken();return this.finish(e)}this.restoreAtMark(t)}return this.finish(e,bt.LeftParenthesisExpected,[],[i.ParenthesisL])},e.prototype._parseMediaDeclaration=function(e){return void 0===e&&(e=!1),e?this._tryParseRuleset(!0)||this._tryToParseDeclaration()||this._parseStylesheetStatement(!0):this._parseStylesheetStatement(!1)},e.prototype._parseMedia=function(e){if(void 0===e&&(e=!1),!this.peekKeyword("@media"))return null;var t=this.create(We);return this.consumeToken(),t.addChild(this._parseMediaQueryList())?this._parseBody(t,this._parseMediaDeclaration.bind(this,e)):this.finish(t,bt.MediaQueryExpected)},e.prototype._parseMediaQueryList=function(){var e=this.create(Ue);if(!e.addChild(this._parseMediaQuery([i.CurlyL])))return this.finish(e,bt.MediaQueryExpected);for(;this.accept(i.Comma);)if(!e.addChild(this._parseMediaQuery([i.CurlyL])))return this.finish(e,bt.MediaQueryExpected);return this.finish(e)},e.prototype._parseMediaQuery=function(e){var t=this.create(je),n=!0,r=!1;if(!this.peek(i.ParenthesisL)){if(this.acceptIdent("only")||this.acceptIdent("not"),!t.addChild(this._parseIdent()))return null;r=!0,n=this.acceptIdent("and")}for(;n;)if(t.addChild(this._parseMediaContentStart()))n=this.acceptIdent("and");else{if(!this.accept(i.ParenthesisL))return r?this.finish(t,bt.LeftParenthesisExpected,[],e):null;if(!t.addChild(this._parseMediaFeatureName()))return this.finish(t,bt.IdentifierExpected,[],e);if(this.accept(i.Colon)&&!t.addChild(this._parseExpr()))return this.finish(t,bt.TermExpected,[],e);if(!this.accept(i.ParenthesisR))return this.finish(t,bt.RightParenthesisExpected,[],e);n=this.acceptIdent("and")}return this.finish(t)},e.prototype._parseMediaContentStart=function(){return null},e.prototype._parseMediaFeatureName=function(){return this._parseIdent()},e.prototype._parseMedium=function(){var e=this.create(ne);return e.addChild(this._parseIdent())?this.finish(e):null},e.prototype._parsePageDeclaration=function(){return this._parsePageMarginBox()||this._parseRuleSetDeclaration()},e.prototype._parsePage=function(){if(!this.peekKeyword("@page"))return null;var e=this.create(Be);if(this.consumeToken(),e.addChild(this._parsePageSelector()))for(;this.accept(i.Comma);)if(!e.addChild(this._parsePageSelector()))return this.finish(e,bt.IdentifierExpected);return this._parseBody(e,this._parsePageDeclaration.bind(this))},e.prototype._parsePageMarginBox=function(){if(!this.peek(i.AtKeyword))return null;var e=this.create($e);return this.acceptOneKeyword(Qt)||this.markError(e,bt.UnknownAtRule,[],[i.CurlyL]),this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._parsePageSelector=function(){if(!this.peek(i.Ident)&&!this.peek(i.Colon))return null;var e=this.create(ne);return e.addChild(this._parseIdent()),this.accept(i.Colon)&&!e.addChild(this._parseIdent())?this.finish(e,bt.IdentifierExpected):this.finish(e)},e.prototype._parseDocument=function(){if(!this.peekKeyword("@-moz-document"))return null;var e=this.create(Le);return this.consumeToken(),this.resync([],[i.CurlyL]),this._parseBody(e,this._parseStylesheetStatement.bind(this))},e.prototype._parseUnknownAtRule=function(){if(!this.peek(i.AtKeyword))return null;var e=this.create(st);e.addChild(this._parseUnknownAtRuleName());var t=0,n=0,r=0,o=0;e:for(;;){switch(this.token.type){case i.SemiColon:if(0===n&&0===r&&0===o)break e;break;case i.EOF:return n>0?this.finish(e,bt.RightCurlyExpected):o>0?this.finish(e,bt.RightSquareBracketExpected):r>0?this.finish(e,bt.RightParenthesisExpected):this.finish(e);case i.CurlyL:t++,n++;break;case i.CurlyR:if(n--,t>0&&0===n){if(this.consumeToken(),o>0)return this.finish(e,bt.RightSquareBracketExpected);if(r>0)return this.finish(e,bt.RightParenthesisExpected);break e}if(n<0){if(0===r&&0===o)break e;return this.finish(e,bt.LeftCurlyExpected)}break;case i.ParenthesisL:r++;break;case i.ParenthesisR:if(--r<0)return this.finish(e,bt.LeftParenthesisExpected);break;case i.BracketL:o++;break;case i.BracketR:if(--o<0)return this.finish(e,bt.LeftSquareBracketExpected)}this.consumeToken()}return e},e.prototype._parseUnknownAtRuleName=function(){var e=this.create(ne);return this.accept(i.AtKeyword)?this.finish(e):e},e.prototype._parseOperator=function(){if(this.peekDelim("/")||this.peekDelim("*")||this.peekDelim("+")||this.peekDelim("-")||this.peek(i.Dashmatch)||this.peek(i.Includes)||this.peek(i.SubstringOperator)||this.peek(i.PrefixOperator)||this.peek(i.SuffixOperator)||this.peekDelim("=")){var e=this.createNode(H.Operator);return this.consumeToken(),this.finish(e)}return null},e.prototype._parseUnaryOperator=function(){if(!this.peekDelim("+")&&!this.peekDelim("-"))return null;var e=this.create(ne);return this.consumeToken(),this.finish(e)},e.prototype._parseCombinator=function(){if(this.peekDelim(">")){var e=this.create(ne);this.consumeToken();var t=this.mark();if(!this.hasWhitespace()&&this.acceptDelim(">")){if(!this.hasWhitespace()&&this.acceptDelim(">"))return e.type=H.SelectorCombinatorShadowPiercingDescendant,this.finish(e);this.restoreAtMark(t)}return e.type=H.SelectorCombinatorParent,this.finish(e)}if(this.peekDelim("+")){e=this.create(ne);return this.consumeToken(),e.type=H.SelectorCombinatorSibling,this.finish(e)}if(this.peekDelim("~")){e=this.create(ne);return this.consumeToken(),e.type=H.SelectorCombinatorAllSiblings,this.finish(e)}if(this.peekDelim("/")){e=this.create(ne);this.consumeToken();t=this.mark();if(!this.hasWhitespace()&&this.acceptIdent("deep")&&!this.hasWhitespace()&&this.acceptDelim("/"))return e.type=H.SelectorCombinatorShadowPiercingDescendant,this.finish(e);this.restoreAtMark(t)}return null},e.prototype._parseSimpleSelector=function(){var e=this.create(de),t=0;for(e.addChild(this._parseElementName())&&t++;(0===t||!this.hasWhitespace())&&e.addChild(this._parseSimpleSelectorBody());)t++;return t>0?this.finish(e):null},e.prototype._parseSimpleSelectorBody=function(){return this._parsePseudo()||this._parseHash()||this._parseClass()||this._parseAttrib()},e.prototype._parseSelectorIdent=function(){return this._parseIdent()},e.prototype._parseHash=function(){if(!this.peek(i.Hash)&&!this.peekDelim("#"))return null;var e=this.createNode(H.IdentifierSelector);if(this.acceptDelim("#")){if(this.hasWhitespace()||!e.addChild(this._parseSelectorIdent()))return this.finish(e,bt.IdentifierExpected)}else this.consumeToken();return this.finish(e)},e.prototype._parseClass=function(){if(!this.peekDelim("."))return null;var e=this.createNode(H.ClassSelector);return this.consumeToken(),this.hasWhitespace()||!e.addChild(this._parseSelectorIdent())?this.finish(e,bt.IdentifierExpected):this.finish(e)},e.prototype._parseElementName=function(){var e=this.mark(),t=this.createNode(H.ElementNameSelector);return t.addChild(this._parseNamespacePrefix()),t.addChild(this._parseSelectorIdent())||this.acceptDelim("*")?this.finish(t):(this.restoreAtMark(e),null)},e.prototype._parseNamespacePrefix=function(){var e=this.mark(),t=this.createNode(H.NamespacePrefix);return!t.addChild(this._parseIdent())&&this.acceptDelim("*"),this.acceptDelim("|")?this.finish(t):(this.restoreAtMark(e),null)},e.prototype._parseAttrib=function(){if(!this.peek(i.BracketL))return null;var e=this.create(Je);return this.consumeToken(),e.setNamespacePrefix(this._parseNamespacePrefix()),e.setIdentifier(this._parseIdent())?(e.setOperator(this._parseOperator())&&(e.setValue(this._parseBinaryExpr()),this.acceptIdent("i")),this.accept(i.BracketR)?this.finish(e):this.finish(e,bt.RightSquareBracketExpected)):this.finish(e,bt.IdentifierExpected)},e.prototype._parsePseudo=function(){var e=this,t=this._tryParsePseudoIdentifier();if(t){if(!this.hasWhitespace()&&this.accept(i.ParenthesisL)){if(t.addChild(this.try(function(){var t=e.create(ne);if(!t.addChild(e._parseSelector(!1)))return null;for(;e.accept(i.Comma)&&t.addChild(e._parseSelector(!1)););return e.peek(i.ParenthesisR)?e.finish(t):null})||this._parseBinaryExpr()),!this.accept(i.ParenthesisR))return this.finish(t,bt.RightParenthesisExpected)}return this.finish(t)}return null},e.prototype._tryParsePseudoIdentifier=function(){if(!this.peek(i.Colon))return null;var e=this.mark(),t=this.createNode(H.PseudoSelector);return this.consumeToken(),this.hasWhitespace()?(this.restoreAtMark(e),null):(this.accept(i.Colon)&&this.hasWhitespace()&&this.markError(t,bt.IdentifierExpected),t.addChild(this._parseIdent())||this.markError(t,bt.IdentifierExpected),t)},e.prototype._tryParsePrio=function(){var e=this.mark(),t=this._parsePrio();return t||(this.restoreAtMark(e),null)},e.prototype._parsePrio=function(){if(!this.peek(i.Exclamation))return null;var e=this.createNode(H.Prio);return this.accept(i.Exclamation)&&this.acceptIdent("important")?this.finish(e):null},e.prototype._parseExpr=function(e){void 0===e&&(e=!1);var t=this.create(qe);if(!t.addChild(this._parseBinaryExpr()))return null;for(;;){if(this.peek(i.Comma)){if(e)return this.finish(t);this.consumeToken()}if(!t.addChild(this._parseBinaryExpr()))break}return this.finish(t)},e.prototype._parseNamedLine=function(){if(!this.peek(i.BracketL))return null;var e=this.createNode(H.GridLine);for(this.consumeToken();e.addChild(this._parseIdent()););return this.accept(i.BracketR)?this.finish(e):this.finish(e,bt.RightSquareBracketExpected)},e.prototype._parseBinaryExpr=function(e,t){var n=this.create(Ke);if(!n.setLeft(e||this._parseTerm()))return null;if(!n.setOperator(t||this._parseOperator()))return this.finish(n);if(!n.setRight(this._parseTerm()))return this.finish(n,bt.TermExpected);n=this.finish(n);var i=this._parseOperator();return i&&(n=this._parseBinaryExpr(n,i)),this.finish(n)},e.prototype._parseTerm=function(){var e=this.create(Ge);return e.setOperator(this._parseUnaryOperator()),e.setExpression(this._parseURILiteral())||e.setExpression(this._parseFunction())||e.setExpression(this._parseIdent())||e.setExpression(this._parseStringLiteral())||e.setExpression(this._parseNumeric())||e.setExpression(this._parseHexColor())||e.setExpression(this._parseOperation())||e.setExpression(this._parseNamedLine())?this.finish(e):null},e.prototype._parseOperation=function(){if(!this.peek(i.ParenthesisL))return null;var e=this.create(ne);return this.consumeToken(),e.addChild(this._parseExpr()),this.accept(i.ParenthesisR)?this.finish(e):this.finish(e,bt.RightParenthesisExpected)},e.prototype._parseNumeric=function(){if(this.peek(i.Num)||this.peek(i.Percentage)||this.peek(i.Resolution)||this.peek(i.Length)||this.peek(i.EMS)||this.peek(i.EXS)||this.peek(i.Angle)||this.peek(i.Time)||this.peek(i.Dimension)||this.peek(i.Freq)){var e=this.create(Qe);return this.consumeToken(),this.finish(e)}return null},e.prototype._parseStringLiteral=function(){if(!this.peek(i.String)&&!this.peek(i.BadString))return null;var e=this.createNode(H.StringLiteral);return this.consumeToken(),this.finish(e)},e.prototype._parseURILiteral=function(){if(!this.peekRegExp(i.Ident,/^url(-prefix)?$/i))return null;var e=this.mark(),t=this.createNode(H.URILiteral);return this.accept(i.Ident),this.hasWhitespace()||!this.peek(i.ParenthesisL)?(this.restoreAtMark(e),null):(this.scanner.inURL=!0,this.consumeToken(),t.addChild(this._parseURLArgument()),this.scanner.inURL=!1,this.accept(i.ParenthesisR)?this.finish(t):this.finish(t,bt.RightParenthesisExpected))},e.prototype._parseURLArgument=function(){var e=this.create(ne);return this.accept(i.String)||this.accept(i.BadString)||this.acceptUnquotedString()?this.finish(e):null},e.prototype._parseIdent=function(e){if(!this.peek(i.Ident))return null;var t=this.create(re);return e&&(t.referenceTypes=e),t.isCustomProperty=this.peekRegExp(i.Ident,/^--/),this.consumeToken(),this.finish(t)},e.prototype._parseFunction=function(){var e=this.mark(),t=this.create(be);if(!t.setIdentifier(this._parseFunctionIdentifier()))return null;if(this.hasWhitespace()||!this.accept(i.ParenthesisL))return this.restoreAtMark(e),null;if(t.getArguments().addChild(this._parseFunctionArgument()))for(;this.accept(i.Comma)&&!this.peek(i.ParenthesisR);)t.getArguments().addChild(this._parseFunctionArgument())||this.markError(t,bt.ExpressionExpected);return this.accept(i.ParenthesisR)?this.finish(t):this.finish(t,bt.RightParenthesisExpected)},e.prototype._parseFunctionIdentifier=function(){if(!this.peek(i.Ident))return null;var e=this.create(re);if(e.referenceTypes=[Y.Function],this.acceptIdent("progid")){if(this.accept(i.Colon))for(;this.accept(i.Ident)&&this.acceptDelim("."););return this.finish(e)}return this.consumeToken(),this.finish(e)},e.prototype._parseFunctionArgument=function(){var e=this.create(ve);return e.setValue(this._parseExpr(!0))?this.finish(e):null},e.prototype._parseHexColor=function(){if(this.peekRegExp(i.Hash,/^#([A-Fa-f0-9]{3}|[A-Fa-f0-9]{4}|[A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/g)){var e=this.create(He);return this.consumeToken(),this.finish(e)}return null},e}();function rn(e,t){return-1!==e.indexOf(t)}function on(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=[],i=0,r=e;i<r.length;i++)for(var o=0,s=r[i];o<s.length;o++){var a=s[o];rn(n,a)||n.push(a)}return n}var sn,an,ln,cn,dn,pn,hn,mn,un,fn,gn,bn,yn,vn,wn,xn,Sn,kn,Cn,Fn,zn=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Dn=function(){function e(e,t){this.offset=e,this.length=t,this.symbols=[],this.parent=null,this.children=[]}return e.prototype.addChild=function(e){this.children.push(e),e.setParent(this)},e.prototype.setParent=function(e){this.parent=e},e.prototype.findScope=function(e,t){return void 0===t&&(t=0),this.offset<=e&&this.offset+this.length>e+t||this.offset===e&&this.length===t?this.findInScope(e,t):null},e.prototype.findInScope=function(e,t){void 0===t&&(t=0);var n=e+t,i=function(e,t){var n=0,i=e.length;if(0===i)return 0;for(;n<i;){var r=Math.floor((n+i)/2);t(e[r])?i=r:n=r+1}return n}(this.children,function(e){return e.offset>n});if(0===i)return this;var r=this.children[i-1];return r.offset<=e&&r.offset+r.length>=e+t?r.findInScope(e,t):this},e.prototype.addSymbol=function(e){this.symbols.push(e)},e.prototype.getSymbol=function(e,t){for(var n=0;n<this.symbols.length;n++){var i=this.symbols[n];if(i.name===e&&i.type===t)return i}return null},e.prototype.getSymbols=function(){return this.symbols},e}(),Tn=function(e){function t(){return e.call(this,0,Number.MAX_VALUE)||this}return zn(t,e),t}(Dn),Rn=function(){return function(e,t,n,i){this.name=e,this.value=t,this.node=n,this.type=i}}(),En=function(){function e(e){this.scope=e}return e.prototype.addSymbol=function(e,t,n,i){if(-1!==e.offset){var r=this.scope.findScope(e.offset,e.length);r&&r.addSymbol(new Rn(t,n,e,i))}},e.prototype.addScope=function(e){if(-1!==e.offset){var t=this.scope.findScope(e.offset,e.length);if(t&&(t.offset!==e.offset||t.length!==e.length)){var n=new Dn(e.offset,e.length);return t.addChild(n),n}return t}return null},e.prototype.addSymbolToChildScope=function(e,t,n,i,r){if(e&&-1!==e.offset){var o=this.addScope(e);o&&o.addSymbol(new Rn(n,i,t,r))}},e.prototype.visitNode=function(e){switch(e.type){case H.Keyframe:return this.addSymbol(e,e.getName(),void 0,Y.Keyframe),!0;case H.CustomPropertyDeclaration:return this.visitCustomPropertyDeclarationNode(e);case H.VariableDeclaration:return this.visitVariableDeclarationNode(e);case H.Ruleset:return this.visitRuleSet(e);case H.MixinDeclaration:return this.addSymbol(e,e.getName(),void 0,Y.Mixin),!0;case H.FunctionDeclaration:return this.addSymbol(e,e.getName(),void 0,Y.Function),!0;case H.FunctionParameter:return this.visitFunctionParameterNode(e);case H.Declarations:return this.addScope(e),!0;case H.For:var t=e,n=t.getDeclarations();return n&&t.variable&&this.addSymbolToChildScope(n,t.variable,t.variable.getName(),void 0,Y.Variable),!0;case H.Each:var i=e,r=i.getDeclarations();if(r)for(var o=0,s=i.getVariables().getChildren();o<s.length;o++){var a=s[o];this.addSymbolToChildScope(r,a,a.getName(),void 0,Y.Variable)}return!0}return!0},e.prototype.visitRuleSet=function(e){var t=this.scope.findScope(e.offset,e.length);if(t)for(var n=0,i=e.getSelectors().getChildren();n<i.length;n++){var r=i[n];r instanceof ce&&1===r.getChildren().length&&t.addSymbol(new Rn(r.getChild(0).getText(),void 0,r,Y.Rule))}return!0},e.prototype.visitVariableDeclarationNode=function(e){var t=e.getValue()?e.getValue().getText():void 0;return this.addSymbol(e,e.getName(),t,Y.Variable),!0},e.prototype.visitFunctionParameterNode=function(e){var t=e.getParent().getDeclarations();if(t){var n=e.getDefaultValue(),i=n?n.getText():void 0;this.addSymbolToChildScope(t,e,e.getName(),i,Y.Variable)}return!0},e.prototype.visitCustomPropertyDeclarationNode=function(e){var t=e.getValue()?e.getValue().getText():"";return this.addCSSVariable(e.getProperty(),e.getProperty().getName(),t,Y.Variable),!0},e.prototype.addCSSVariable=function(e,t,n,i){-1!==e.offset&&this.scope.addSymbol(new Rn(t,n,e,i))},e}(),In=function(){function e(e){this.global=new Tn,e.acceptVisitor(new En(this.global))}return e.prototype.findSymbolsAtOffset=function(e,t){for(var n=this.global.findScope(e,0),i=[],r={};n;){for(var o=n.getSymbols(),s=0;s<o.length;s++){var a=o[s];a.type!==t||r[a.name]||(i.push(a),r[a.name]=!0)}n=n.parent}return i},e.prototype.internalFindSymbol=function(e,t){var n=e;if(e.parent instanceof ye&&e.parent.getParent()instanceof ae&&(n=e.parent.getParent().getDeclarations()),e.parent instanceof ve&&e.parent.getParent()instanceof be){var i=e.parent.getParent().getIdentifier();if(i){var r=this.internalFindSymbol(i,[Y.Function]);r&&(n=r.node.getDeclarations())}}if(!n)return null;for(var o=e.getText(),s=this.global.findScope(n.offset,n.length);s;){for(var a=0;a<t.length;a++){var l=t[a],c=s.getSymbol(o,l);if(c)return c}s=s.parent}return null},e.prototype.evaluateReferenceTypes=function(e){if(e instanceof re){var t=e.referenceTypes;if(t)return t;if(e.isCustomProperty)return[Y.Variable];var n=function(e){var t=e.findParent(H.Declaration),n=t&&t.getValue();return n&&n.encloses(e)?t:null}(e);if(n){var i=n.getNonPrefixedPropertyName();if(("animation"===i||"animation-name"===i)&&n.getValue()&&n.getValue().offset===e.offset)return[Y.Keyframe]}}else if(e instanceof nt)return[Y.Variable];return e.findAParent(H.Selector,H.ExtendsReference)?[Y.Rule]:null},e.prototype.findSymbolFromNode=function(e){if(!e)return null;for(;e.type===H.Interpolation;)e=e.getParent();var t=this.evaluateReferenceTypes(e);return t?this.internalFindSymbol(e,t):null},e.prototype.matchesSymbol=function(e,t){if(!e)return!1;for(;e.type===H.Interpolation;)e=e.getParent();if(!e.matches(t.name))return!1;var n=this.evaluateReferenceTypes(e);return!(!n||-1===n.indexOf(t.type))&&this.internalFindSymbol(e,n)===t},e.prototype.findSymbol=function(e,t,n){for(var i=this.global.findScope(n);i;){var r=i.getSymbol(e,t);if(r)return r;i=i.parent}return null},e}();function Mn(e,t){if(e.length<t.length)return!1;for(var n=0;n<t.length;n++)if(e[n]!==t[n])return!1;return!0}function Nn(e,t){var n=e.length-t.length;return n>0?e.lastIndexOf(t)===n:0===n&&e===t}function Pn(e,t){return void 0===t&&(t=!0),e?e.length<140?e:e.slice(0,140)+(t?"…":""):""}!function(e){e.create=function(e,t){return{line:e,character:t}},e.is=function(e){var t=e;return di.objectLiteral(t)&&di.number(t.line)&&di.number(t.character)}}(sn||(sn={})),function(e){e.create=function(e,t,n,i){if(di.number(e)&&di.number(t)&&di.number(n)&&di.number(i))return{start:sn.create(e,t),end:sn.create(n,i)};if(sn.is(e)&&sn.is(t))return{start:e,end:t};throw new Error("Range#create called with invalid arguments["+e+", "+t+", "+n+", "+i+"]")},e.is=function(e){var t=e;return di.objectLiteral(t)&&sn.is(t.start)&&sn.is(t.end)}}(an||(an={})),function(e){e.create=function(e,t){return{uri:e,range:t}},e.is=function(e){var t=e;return di.defined(t)&&an.is(t.range)&&(di.string(t.uri)||di.undefined(t.uri))}}(ln||(ln={})),function(e){e.create=function(e,t,n,i){return{targetUri:e,targetRange:t,targetSelectionRange:n,originSelectionRange:i}},e.is=function(e){var t=e;return di.defined(t)&&an.is(t.targetRange)&&di.string(t.targetUri)&&(an.is(t.targetSelectionRange)||di.undefined(t.targetSelectionRange))&&(an.is(t.originSelectionRange)||di.undefined(t.originSelectionRange))}}(cn||(cn={})),function(e){e.create=function(e,t,n,i){return{red:e,green:t,blue:n,alpha:i}},e.is=function(e){var t=e;return di.number(t.red)&&di.number(t.green)&&di.number(t.blue)&&di.number(t.alpha)}}(dn||(dn={})),function(e){e.create=function(e,t){return{range:e,color:t}},e.is=function(e){var t=e;return an.is(t.range)&&dn.is(t.color)}}(pn||(pn={})),function(e){e.create=function(e,t,n){return{label:e,textEdit:t,additionalTextEdits:n}},e.is=function(e){var t=e;return di.string(t.label)&&(di.undefined(t.textEdit)||wn.is(t))&&(di.undefined(t.additionalTextEdits)||di.typedArray(t.additionalTextEdits,wn.is))}}(hn||(hn={})),function(e){e.Comment="comment",e.Imports="imports",e.Region="region"}(mn||(mn={})),function(e){e.create=function(e,t,n,i,r){var o={startLine:e,endLine:t};return di.defined(n)&&(o.startCharacter=n),di.defined(i)&&(o.endCharacter=i),di.defined(r)&&(o.kind=r),o},e.is=function(e){var t=e;return di.number(t.startLine)&&di.number(t.startLine)&&(di.undefined(t.startCharacter)||di.number(t.startCharacter))&&(di.undefined(t.endCharacter)||di.number(t.endCharacter))&&(di.undefined(t.kind)||di.string(t.kind))}}(un||(un={})),function(e){e.create=function(e,t){return{location:e,message:t}},e.is=function(e){var t=e;return di.defined(t)&&ln.is(t.location)&&di.string(t.message)}}(fn||(fn={})),function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4}(gn||(gn={})),function(e){e.Unnecessary=1,e.Deprecated=2}(bn||(bn={})),function(e){e.create=function(e,t,n,i,r,o){var s={range:e,message:t};return di.defined(n)&&(s.severity=n),di.defined(i)&&(s.code=i),di.defined(r)&&(s.source=r),di.defined(o)&&(s.relatedInformation=o),s},e.is=function(e){var t=e;return di.defined(t)&&an.is(t.range)&&di.string(t.message)&&(di.number(t.severity)||di.undefined(t.severity))&&(di.number(t.code)||di.string(t.code)||di.undefined(t.code))&&(di.string(t.source)||di.undefined(t.source))&&(di.undefined(t.relatedInformation)||di.typedArray(t.relatedInformation,fn.is))}}(yn||(yn={})),function(e){e.create=function(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];var r={title:e,command:t};return di.defined(n)&&n.length>0&&(r.arguments=n),r},e.is=function(e){var t=e;return di.defined(t)&&di.string(t.title)&&di.string(t.command)}}(vn||(vn={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){var t=e;return di.objectLiteral(t)&&di.string(t.newText)&&an.is(t.range)}}(wn||(wn={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){var t=e;return di.defined(t)&&An.is(t.textDocument)&&Array.isArray(t.edits)}}(xn||(xn={})),function(e){e.create=function(e,t){var n={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"create"===t.kind&&di.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||di.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||di.boolean(t.options.ignoreIfExists)))}}(Sn||(Sn={})),function(e){e.create=function(e,t,n){var i={kind:"rename",oldUri:e,newUri:t};return void 0===n||void 0===n.overwrite&&void 0===n.ignoreIfExists||(i.options=n),i},e.is=function(e){var t=e;return t&&"rename"===t.kind&&di.string(t.oldUri)&&di.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||di.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||di.boolean(t.options.ignoreIfExists)))}}(kn||(kn={})),function(e){e.create=function(e,t){var n={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"delete"===t.kind&&di.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||di.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||di.boolean(t.options.ignoreIfNotExists)))}}(Cn||(Cn={})),function(e){e.is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every(function(e){return di.string(e.kind)?Sn.is(e)||kn.is(e)||Cn.is(e):xn.is(e)}))}}(Fn||(Fn={}));var _n,An,Wn,On,Ln,Un,jn,Vn,Bn,$n,qn,Kn,Gn,Jn,Hn,Yn,Xn,Zn,Qn,ei,ti,ni,ii,ri,oi,si,ai,li=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(wn.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(wn.replace(e,t))},e.prototype.delete=function(e){this.edits.push(wn.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach(function(e){if(xn.is(e)){var n=new li(e.edits);t._textEditChanges[e.textDocument.uri]=n}}):e.changes&&Object.keys(e.changes).forEach(function(n){var i=new li(e.changes[n]);t._textEditChanges[n]=i}))}Object.defineProperty(e.prototype,"edit",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(An.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t=e;if(!(i=this._textEditChanges[t.uri])){var n={textDocument:t,edits:r=[]};this._workspaceEdit.documentChanges.push(n),i=new li(r),this._textEditChanges[t.uri]=i}return i}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var i;if(!(i=this._textEditChanges[e])){var r=[];this._workspaceEdit.changes[e]=r,i=new li(r),this._textEditChanges[e]=i}return i},e.prototype.createFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(Sn.create(e,t))},e.prototype.renameFile=function(e,t,n){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(kn.create(e,t,n))},e.prototype.deleteFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(Cn.create(e,t))},e.prototype.checkDocumentChanges=function(){if(!this._workspaceEdit||!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.")}}();!function(e){e.create=function(e){return{uri:e}},e.is=function(e){var t=e;return di.defined(t)&&di.string(t.uri)}}(_n||(_n={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){var t=e;return di.defined(t)&&di.string(t.uri)&&(null===t.version||di.number(t.version))}}(An||(An={})),function(e){e.create=function(e,t,n,i){return{uri:e,languageId:t,version:n,text:i}},e.is=function(e){var t=e;return di.defined(t)&&di.string(t.uri)&&di.string(t.languageId)&&di.number(t.version)&&di.string(t.text)}}(Wn||(Wn={})),function(e){e.PlainText="plaintext",e.Markdown="markdown"}(On||(On={})),function(e){e.is=function(t){var n=t;return n===e.PlainText||n===e.Markdown}}(On||(On={})),function(e){e.is=function(e){var t=e;return di.objectLiteral(e)&&On.is(t.kind)&&di.string(t.value)}}(Ln||(Ln={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(Un||(Un={})),function(e){e.PlainText=1,e.Snippet=2}(jn||(jn={})),function(e){e.Deprecated=1}(Vn||(Vn={})),function(e){e.create=function(e){return{label:e}}}(Bn||(Bn={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}($n||($n={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){var t=e;return di.string(t)||di.objectLiteral(t)&&di.string(t.language)&&di.string(t.value)}}(qn||(qn={})),function(e){e.is=function(e){var t=e;return!!t&&di.objectLiteral(t)&&(Ln.is(t.contents)||qn.is(t.contents)||di.typedArray(t.contents,qn.is))&&(void 0===e.range||an.is(e.range))}}(Kn||(Kn={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(Gn||(Gn={})),function(e){e.create=function(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];var r={label:e};return di.defined(t)&&(r.documentation=t),di.defined(n)?r.parameters=n:r.parameters=[],r}}(Jn||(Jn={})),function(e){e.Text=1,e.Read=2,e.Write=3}(Hn||(Hn={})),function(e){e.create=function(e,t){var n={range:e};return di.number(t)&&(n.kind=t),n}}(Yn||(Yn={})),function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(Xn||(Xn={})),function(e){e.Deprecated=1}(Zn||(Zn={})),function(e){e.create=function(e,t,n,i,r){var o={name:e,kind:t,location:{uri:i,range:n}};return r&&(o.containerName=r),o}}(Qn||(Qn={})),function(e){e.create=function(e,t,n,i,r,o){var s={name:e,detail:t,kind:n,range:i,selectionRange:r};return void 0!==o&&(s.children=o),s},e.is=function(e){var t=e;return t&&di.string(t.name)&&di.number(t.kind)&&an.is(t.range)&&an.is(t.selectionRange)&&(void 0===t.detail||di.string(t.detail))&&(void 0===t.deprecated||di.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))}}(ei||(ei={})),function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"}(ti||(ti={})),function(e){e.create=function(e,t){var n={diagnostics:e};return void 0!==t&&null!==t&&(n.only=t),n},e.is=function(e){var t=e;return di.defined(t)&&di.typedArray(t.diagnostics,yn.is)&&(void 0===t.only||di.typedArray(t.only,di.string))}}(ni||(ni={})),function(e){e.create=function(e,t,n){var i={title:e};return vn.is(t)?i.command=t:i.edit=t,void 0!==n&&(i.kind=n),i},e.is=function(e){var t=e;return t&&di.string(t.title)&&(void 0===t.diagnostics||di.typedArray(t.diagnostics,yn.is))&&(void 0===t.kind||di.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||vn.is(t.command))&&(void 0===t.isPreferred||di.boolean(t.isPreferred))&&(void 0===t.edit||Fn.is(t.edit))}}(ii||(ii={})),function(e){e.create=function(e,t){var n={range:e};return di.defined(t)&&(n.data=t),n},e.is=function(e){var t=e;return di.defined(t)&&an.is(t.range)&&(di.undefined(t.command)||vn.is(t.command))}}(ri||(ri={})),function(e){e.create=function(e,t){return{tabSize:e,insertSpaces:t}},e.is=function(e){var t=e;return di.defined(t)&&di.number(t.tabSize)&&di.boolean(t.insertSpaces)}}(oi||(oi={})),function(e){e.create=function(e,t,n){return{range:e,target:t,data:n}},e.is=function(e){var t=e;return di.defined(t)&&an.is(t.range)&&(di.undefined(t.target)||di.string(t.target))}}(si||(si={})),function(e){e.create=function(e,t){return{range:e,parent:t}},e.is=function(t){var n=t;return void 0!==n&&an.is(n.range)&&(void 0===n.parent||e.is(n.parent))}}(ai||(ai={}));var ci;!function(e){e.create=function(e,t,n,i){return new pi(e,t,n,i)},e.is=function(e){var t=e;return!!(di.defined(t)&&di.string(t.uri)&&(di.undefined(t.languageId)||di.string(t.languageId))&&di.number(t.lineCount)&&di.func(t.getText)&&di.func(t.positionAt)&&di.func(t.offsetAt))},e.applyEdits=function(e,t){for(var n=e.getText(),i=function e(t,n){if(t.length<=1)return t;var i=t.length/2|0,r=t.slice(0,i),o=t.slice(i);e(r,n),e(o,n);for(var s=0,a=0,l=0;s<r.length&&a<o.length;){var c=n(r[s],o[a]);t[l++]=c<=0?r[s++]:o[a++]}for(;s<r.length;)t[l++]=r[s++];for(;a<o.length;)t[l++]=o[a++];return t}(t,function(e,t){var n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}),r=n.length,o=i.length-1;o>=0;o--){var s=i[o],a=e.offsetAt(s.range.start),l=e.offsetAt(s.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,a)+s.newText+n.substring(l,n.length),r=a}return n}}(ci||(ci={}));var di,pi=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,n=!0,i=0;i<t.length;i++){n&&(e.push(i),n=!1);var r=t.charAt(i);n="\r"===r||"\n"===r,"\r"===r&&i+1<t.length&&"\n"===t.charAt(i+1)&&i++}n&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,i=t.length;if(0===i)return sn.create(0,e);for(;n<i;){var r=Math.floor((n+i)/2);t[r]>e?i=r:n=r+1}var o=n-1;return sn.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e}();!function(e){var t=Object.prototype.toString;e.defined=function(e){return void 0!==e},e.undefined=function(e){return void 0===e},e.boolean=function(e){return!0===e||!1===e},e.string=function(e){return"[object String]"===t.call(e)},e.number=function(e){return"[object Number]"===t.call(e)},e.func=function(e){return"[object Function]"===t.call(e)},e.objectLiteral=function(e){return null!==e&&"object"==typeof e},e.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)}}(di||(di={}));var hi,mi,ui,fi=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(t,n){for(var i=0,r=t;i<r.length;i++){var o=r[i];if(e.isIncremental(o)){var s=bi(o.range),a=this.offsetAt(s.start),l=this.offsetAt(s.end);this._content=this._content.substring(0,a)+o.text+this._content.substring(l,this._content.length);var c=Math.max(s.start.line,0),d=Math.max(s.end.line,0),p=this._lineOffsets,h=gi(o.text,!1,a);if(d-c===h.length)for(var m=0,u=h.length;m<u;m++)p[m+c+1]=h[m];else h.length<1e4?p.splice.apply(p,[c+1,d-c].concat(h)):this._lineOffsets=p=p.slice(0,c+1).concat(h,p.slice(d+1));var f=o.text.length-(l-a);if(0!==f)for(m=c+1+h.length,u=p.length;m<u;m++)p[m]=p[m]+f}else{if(!e.isFull(o))throw new Error("Unknown change event received");this._content=o.text,this._lineOffsets=void 0}}this._version=n},e.prototype.getLineOffsets=function(){return void 0===this._lineOffsets&&(this._lineOffsets=gi(this._content,!0)),this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,i=t.length;if(0===i)return{line:0,character:e};for(;n<i;){var r=Math.floor((n+i)/2);t[r]>e?i=r:n=r+1}var o=n-1;return{line:o,character:e-t[o]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e.isIncremental=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)},e.isFull=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength},e}();function gi(e,t,n){void 0===n&&(n=0);for(var i=t?[n]:[],r=0;r<e.length;r++){var o=e.charCodeAt(r);13!==o&&10!==o||(13===o&&r+1<e.length&&10===e.charCodeAt(r+1)&&r++,i.push(n+r+1))}return i}function bi(e){var t=e.start,n=e.end;return t.line>n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function yi(e){var t=bi(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){e.create=function(e,t,n,i){return new fi(e,t,n,i)},e.update=function(e,t,n){if(e instanceof fi)return e.update(t,n),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){for(var n=e.getText(),i=function e(t,n){if(t.length<=1)return t;var i=t.length/2|0,r=t.slice(0,i),o=t.slice(i);e(r,n),e(o,n);for(var s=0,a=0,l=0;s<r.length&&a<o.length;){var c=n(r[s],o[a]);t[l++]=c<=0?r[s++]:o[a++]}for(;s<r.length;)t[l++]=r[s++];for(;a<o.length;)t[l++]=o[a++];return t}(t.map(yi),function(e,t){var n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}),r=n.length,o=i.length-1;o>=0;o--){var s=i[o],a=e.offsetAt(s.range.start),l=e.offsetAt(s.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,a)+s.newText+n.substring(l,n.length),r=a}return n}}(hi||(hi={})),(mi||(mi={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[On.Markdown,On.PlainText]}},hover:{contentFormat:[On.Markdown,On.PlainText]}}},function(e){e[e.Unknown=0]="Unknown",e[e.File=1]="File",e[e.Directory=2]="Directory",e[e.SymbolicLink=64]="SymbolicLink"}(ui||(ui={}));var vi,wi=ut(),xi=jn.Snippet;!function(e){e.Enums=" ",e.Normal="d",e.VendorPrefixed="x",e.Term="y",e.Variable="z"}(vi||(vi={}));var Si=function(){function e(e,t){void 0===e&&(e=null),this.variablePrefix=e,this.clientCapabilities=t,this.completionParticipants=[],this.valueTypes=[H.Identifier,H.Value,H.StringLiteral,H.URILiteral,H.NumericValue,H.HexColorValue,H.VariableName,H.Prio]}return e.prototype.configure=function(e){this.settings=e},e.prototype.getSymbolContext=function(){return this.symbolContext||(this.symbolContext=new In(this.styleSheet)),this.symbolContext},e.prototype.setCompletionParticipants=function(e){this.completionParticipants=e||[]},e.prototype.doComplete=function(e,t,n){this.offset=e.offsetAt(t),this.position=t,this.currentWord=function(e,t){var n=t-1,i=e.getText();for(;n>=0&&-1===' \t\n\r":{[()]},*>+'.indexOf(i.charAt(n));)n--;return i.substring(n+1,t)}(e,this.offset),this.defaultReplaceRange=an.create(sn.create(this.position.line,this.position.character-this.currentWord.length),this.position),this.textDocument=e,this.styleSheet=n;try{var i={isIncomplete:!1,items:[]};this.nodePath=ee(this.styleSheet,this.offset);for(var r=this.nodePath.length-1;r>=0;r--){var o=this.nodePath[r];if(o instanceof ge)this.getCompletionsForDeclarationProperty(o.getParent(),i);else if(o instanceof qe)o.parent instanceof tt?this.getVariableProposals(null,i):this.getCompletionsForExpression(o,i);else if(o instanceof de){var s=o.findAParent(H.ExtendsReference,H.Ruleset);if(s)if(s.type===H.ExtendsReference)this.getCompletionsForExtendsReference(s,o,i);else{var a=s;this.getCompletionsForSelector(a,a&&a.isNested(),i)}}else if(o instanceof ve)this.getCompletionsForFunctionArgument(o,o.getParent(),i);else if(o instanceof se)this.getCompletionsForDeclarations(o,i);else if(o instanceof et)this.getCompletionsForVariableDeclaration(o,i);else if(o instanceof le)this.getCompletionsForRuleSet(o,i);else if(o instanceof tt)this.getCompletionsForInterpolation(o,i);else if(o instanceof Fe)this.getCompletionsForFunctionDeclaration(o,i);else if(o instanceof rt)this.getCompletionsForMixinReference(o,i);else if(o instanceof be)this.getCompletionsForFunctionArgument(null,o,i);else if(o instanceof Oe)this.getCompletionsForSupports(o,i);else if(o instanceof Ve)this.getCompletionsForSupportsCondition(o,i);else if(o instanceof it)this.getCompletionsForExtendsReference(o,null,i);else if(o.type===H.URILiteral)this.getCompletionForUriLiteralValue(o,i);else if(null===o.parent)this.getCompletionForTopLevel(i);else{if(o.type!==H.StringLiteral||!this.isImportPathParent(o.parent.type))continue;this.getCompletionForImportPath(o,i)}if(i.items.length>0||this.offset>o.offset)return this.finalize(i)}return this.getCompletionsForStylesheet(i),0===i.items.length&&this.variablePrefix&&0===this.currentWord.indexOf(this.variablePrefix)&&this.getVariableProposals(null,i),this.finalize(i)}finally{this.position=null,this.currentWord=null,this.textDocument=null,this.styleSheet=null,this.symbolContext=null,this.defaultReplaceRange=null,this.nodePath=null}},e.prototype.isImportPathParent=function(e){return e===H.Import},e.prototype.finalize=function(e){return e.items.some(function(e){return!!e.sortText||"-"===e.label[0]})&&e.items.forEach(function(e,t){e.sortText?"-"===e.label[0]?e.sortText+=vi.VendorPrefixed+"_"+Ci(t):e.sortText+=vi.Normal+"_"+Ci(t):"-"===e.label[0]?e.sortText=vi.VendorPrefixed+"_"+Ci(t):e.sortText=vi.Normal+"_"+Ci(t)}),e},e.prototype.findInNodePath=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=this.nodePath.length-1;n>=0;n--){var i=this.nodePath[n];if(-1!==e.indexOf(i.type))return i}return null},e.prototype.getCompletionsForDeclarationProperty=function(e,t){return this.getPropertyProposals(e,t)},e.prototype.getPropertyProposals=function(e,t){var n=this,i=this.isTriggerPropertyValueCompletionEnabled,r=this.isCompletePropertyWithSemicolonEnabled;return en.getProperties().forEach(function(o){var s,a,l=!1;e?(s=n.getCompletionRange(e.getProperty()),a=o.name,vt(e.colonPosition)||(a+=": ",l=!0)):(s=n.getCompletionRange(null),a=o.name+": ",l=!0),!e&&r&&(a+="$0;"),e&&!e.semicolonPosition&&r&&n.offset>=n.textDocument.offsetAt(s.end)&&(a+="$0;");var c={label:o.name,documentation:Ct(o,n.doesSupportMarkdown()),tags:ki(o)?[Vn.Deprecated]:[],textEdit:wn.replace(s,a),insertTextFormat:jn.Snippet,kind:Un.Property};o.restrictions||(l=!1),i&&l&&(c.command={title:"Suggest",command:"editor.action.triggerSuggest"}),Mn(o.name,"-")&&(c.sortText=vi.VendorPrefixed),t.items.push(c)}),this.completionParticipants.forEach(function(e){e.onCssProperty&&e.onCssProperty({propertyName:n.currentWord,range:n.defaultReplaceRange})}),t},Object.defineProperty(e.prototype,"isTriggerPropertyValueCompletionEnabled",{get:function(){return!this.settings||!this.settings.completion||void 0===this.settings.completion.triggerPropertyValueCompletion||this.settings.completion.triggerPropertyValueCompletion},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isCompletePropertyWithSemicolonEnabled",{get:function(){return!this.settings||!this.settings.completion||void 0===this.settings.completion.completePropertyWithSemicolon||this.settings.completion.completePropertyWithSemicolon},enumerable:!0,configurable:!0}),e.prototype.getCompletionsForDeclarationValue=function(e,t){for(var n=this,i=e.getFullPropertyName(),r=en.getProperty(i),o=e.getValue()||null;o&&o.hasChildren();)o=o.findChildAtOffset(this.offset,!1);if(this.completionParticipants.forEach(function(e){e.onCssPropertyValue&&e.onCssPropertyValue({propertyName:i,propertyValue:n.currentWord,range:n.getCompletionRange(o)})}),r){if(r.restrictions)for(var s=0,a=r.restrictions;s<a.length;s++){switch(a[s]){case"color":this.getColorProposals(r,o,t);break;case"position":this.getPositionProposals(r,o,t);break;case"repeat":this.getRepeatStyleProposals(r,o,t);break;case"line-style":this.getLineStyleProposals(r,o,t);break;case"line-width":this.getLineWidthProposals(r,o,t);break;case"geometry-box":this.getGeometryBoxProposals(r,o,t);break;case"box":this.getBoxProposals(r,o,t);break;case"image":this.getImageProposals(r,o,t);break;case"timing-function":this.getTimingFunctionProposals(r,o,t);break;case"shape":this.getBasicShapeProposals(r,o,t)}}this.getValueEnumProposals(r,o,t),this.getCSSWideKeywordProposals(r,o,t),this.getUnitProposals(r,o,t)}else for(var l=0,c=function(e,t){var n=t.getFullPropertyName(),i=new Fi;function r(e){return(e instanceof re||e instanceof Qe||e instanceof He)&&i.add(e.getText()),!0}return e.accept(function(e){if(e instanceof fe&&e!==t&&function(e){var t=e.getFullPropertyName();return n===t}(e)){var i=e.getValue();i&&i.accept(r)}return!0}),i}(this.styleSheet,e).getEntries();l<c.length;l++){var d=c[l];t.items.push({label:d,textEdit:wn.replace(this.getCompletionRange(o),d),kind:Un.Value})}return this.getVariableProposals(o,t),this.getTermProposals(r,o,t),t},e.prototype.getValueEnumProposals=function(e,t,n){if(e.values)for(var i=0,r=e.values;i<r.length;i++){var o=r[i],s=o.name,a=void 0;if(Nn(s,")")){var l=s.lastIndexOf("(");-1!==l&&(s=s.substr(0,l)+"($1)",a=xi)}var c={label:o.name,documentation:Ct(o,this.doesSupportMarkdown()),tags:ki(e)?[Vn.Deprecated]:[],textEdit:wn.replace(this.getCompletionRange(t),s),sortText:vi.Enums,kind:Un.Value,insertTextFormat:a};n.items.push(c)}return n},e.prototype.getCSSWideKeywordProposals=function(e,t,n){for(var i in Kt)n.items.push({label:i,documentation:Kt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getCompletionsForInterpolation=function(e,t){return this.offset>=e.offset+2&&this.getVariableProposals(null,t),t},e.prototype.getVariableProposals=function(e,t){for(var n=0,i=this.getSymbolContext().findSymbolsAtOffset(this.offset,Y.Variable);n<i.length;n++){var r=i[n],o=Mn(r.name,"--")?"var("+r.name+")":r.name,s={label:r.name,documentation:r.value?Pn(r.value):r.value,textEdit:wn.replace(this.getCompletionRange(e),o),kind:Un.Variable,sortText:vi.Variable};if("string"==typeof s.documentation&&Ti(s.documentation)&&(s.kind=Un.Color),r.node.type===H.FunctionParameter){var a=r.node.getParent();a.type===H.MixinDeclaration&&(s.detail=wi("completion.argument","argument from '{0}'",a.getName()))}t.items.push(s)}return t},e.prototype.getVariableProposalsForCSSVarFunction=function(e){for(var t=this.getSymbolContext().findSymbolsAtOffset(this.offset,Y.Variable),n=0,i=t=t.filter(function(e){return Mn(e.name,"--")});n<i.length;n++){var r=i[n],o={label:r.name,documentation:r.value?Pn(r.value):r.value,textEdit:wn.replace(this.getCompletionRange(null),r.name),kind:Un.Variable};"string"==typeof o.documentation&&Ti(o.documentation)&&(o.kind=Un.Color),e.items.push(o)}return e},e.prototype.getUnitProposals=function(e,t,n){var i="0";if(this.currentWord.length>0){var r=this.currentWord.match(/^-?\d[\.\d+]*/);r&&(i=r[0],n.isIncomplete=i.length===this.currentWord.length)}else 0===this.currentWord.length&&(n.isIncomplete=!0);if(t&&t.parent&&t.parent.type===H.Term&&(t=t.getParent()),e.restrictions)for(var o=0,s=e.restrictions;o<s.length;o++){var a=s[o],l=Yt[a];if(l)for(var c=0,d=l;c<d.length;c++){var p=i+d[c];n.items.push({label:p,textEdit:wn.replace(this.getCompletionRange(t),p),kind:Un.Unit})}}return n},e.prototype.getCompletionRange=function(e){if(e&&e.offset<=this.offset&&this.offset<=e.end){var t=-1!==e.end?this.textDocument.positionAt(e.end):this.position,n=this.textDocument.positionAt(e.offset);if(n.line===t.line)return an.create(n,t)}return this.defaultReplaceRange},e.prototype.getColorProposals=function(e,t,n){for(var i in Tt)n.items.push({label:i,documentation:Tt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Color});for(var i in Rt)n.items.push({label:i,documentation:Rt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});var r=new Fi;this.styleSheet.acceptVisitor(new Di(r,this.offset));for(var o=0,s=r.getEntries();o<s.length;o++){i=s[o];n.items.push({label:i,textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Color})}for(var a=function(e){var i=1,r=e.func.replace(/\[?\$(\w+)\]?/g,function(e,t){return"${"+i+++":"+t+"}"});n.items.push({label:e.func.substr(0,e.func.indexOf("(")),detail:e.func,documentation:e.desc,textEdit:wn.replace(l.getCompletionRange(t),r),insertTextFormat:xi,kind:Un.Function})},l=this,c=0,d=Dt;c<d.length;c++){a(d[c])}return n},e.prototype.getPositionProposals=function(e,t,n){for(var i in Ut)n.items.push({label:i,documentation:Ut[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getRepeatStyleProposals=function(e,t,n){for(var i in jt)n.items.push({label:i,documentation:jt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getLineStyleProposals=function(e,t,n){for(var i in Vt)n.items.push({label:i,documentation:Vt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getLineWidthProposals=function(e,t,n){for(var i=0,r=Bt;i<r.length;i++){var o=r[i];n.items.push({label:o,textEdit:wn.replace(this.getCompletionRange(t),o),kind:Un.Value})}return n},e.prototype.getGeometryBoxProposals=function(e,t,n){for(var i in qt)n.items.push({label:i,documentation:qt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getBoxProposals=function(e,t,n){for(var i in $t)n.items.push({label:i,documentation:$t[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getImageProposals=function(e,t,n){for(var i in Gt){var r=zi(i);n.items.push({label:i,documentation:Gt[i],textEdit:wn.replace(this.getCompletionRange(t),r),kind:Un.Function,insertTextFormat:i!==r?xi:void 0})}return n},e.prototype.getTimingFunctionProposals=function(e,t,n){for(var i in Jt){var r=zi(i);n.items.push({label:i,documentation:Jt[i],textEdit:wn.replace(this.getCompletionRange(t),r),kind:Un.Function,insertTextFormat:i!==r?xi:void 0})}return n},e.prototype.getBasicShapeProposals=function(e,t,n){for(var i in Ht){var r=zi(i);n.items.push({label:i,documentation:Ht[i],textEdit:wn.replace(this.getCompletionRange(t),r),kind:Un.Function,insertTextFormat:i!==r?xi:void 0})}return n},e.prototype.getCompletionsForStylesheet=function(e){var t=this.styleSheet.findFirstChildBeforeOffset(this.offset);return t?t instanceof le?this.getCompletionsForRuleSet(t,e):t instanceof Oe?this.getCompletionsForSupports(t,e):e:this.getCompletionForTopLevel(e)},e.prototype.getCompletionForTopLevel=function(e){var t=this;return en.getAtDirectives().forEach(function(n){e.items.push({label:n.name,textEdit:wn.replace(t.getCompletionRange(null),n.name),documentation:Ct(n,t.doesSupportMarkdown()),tags:ki(n)?[Vn.Deprecated]:[],kind:Un.Keyword})}),this.getCompletionsForSelector(null,!1,e),e},e.prototype.getCompletionsForRuleSet=function(e,t){var n=e.getDeclarations();return n&&n.endsWith("}")&&this.offset>=n.end?this.getCompletionForTopLevel(t):!n||this.offset<=n.offset?this.getCompletionsForSelector(e,e.isNested(),t):this.getCompletionsForDeclarations(e.getDeclarations(),t)},e.prototype.getCompletionsForSelector=function(e,t,n){var i=this,r=this.findInNodePath(H.PseudoSelector,H.IdentifierSelector,H.ClassSelector,H.ElementNameSelector);if(!r&&this.offset-this.currentWord.length>0&&":"===this.textDocument.getText()[this.offset-this.currentWord.length-1]&&(this.currentWord=":"+this.currentWord,this.defaultReplaceRange=an.create(sn.create(this.position.line,this.position.character-this.currentWord.length),this.position)),en.getPseudoClasses().forEach(function(e){var t=zi(e.name),o={label:e.name,textEdit:wn.replace(i.getCompletionRange(r),t),documentation:Ct(e,i.doesSupportMarkdown()),tags:ki(e)?[Vn.Deprecated]:[],kind:Un.Function,insertTextFormat:e.name!==t?xi:void 0};Mn(e.name,":-")&&(o.sortText=vi.VendorPrefixed),n.items.push(o)}),en.getPseudoElements().forEach(function(e){var t=zi(e.name),o={label:e.name,textEdit:wn.replace(i.getCompletionRange(r),t),documentation:Ct(e,i.doesSupportMarkdown()),tags:ki(e)?[Vn.Deprecated]:[],kind:Un.Function,insertTextFormat:e.name!==t?xi:void 0};Mn(e.name,"::-")&&(o.sortText=vi.VendorPrefixed),n.items.push(o)}),!t){for(var o=0,s=Xt;o<s.length;o++){var a=s[o];n.items.push({label:a,textEdit:wn.replace(this.getCompletionRange(r),a),kind:Un.Keyword})}for(var l=0,c=Zt;l<c.length;l++){a=c[l];n.items.push({label:a,textEdit:wn.replace(this.getCompletionRange(r),a),kind:Un.Keyword})}}var d={};d[this.currentWord]=!0;var p=this.textDocument.getText();if(this.styleSheet.accept(function(e){if(e.type===H.SimpleSelector&&e.length>0){var t=p.substr(e.offset,e.length);return"."!==t.charAt(0)||d[t]||(d[t]=!0,n.items.push({label:t,textEdit:wn.replace(i.getCompletionRange(r),t),kind:Un.Keyword})),!1}return!0}),e&&e.isNested()){var h=e.getSelectors().findFirstChildBeforeOffset(this.offset);h&&0===e.getSelectors().getChildren().indexOf(h)&&this.getPropertyProposals(null,n)}return n},e.prototype.getCompletionsForDeclarations=function(e,t){if(!e||this.offset===e.offset)return t;var n=e.findFirstChildBeforeOffset(this.offset);if(!n)return this.getCompletionsForDeclarationProperty(null,t);if(n instanceof he){var i=n;if(!vt(i.colonPosition)||this.offset<=i.colonPosition)return this.getCompletionsForDeclarationProperty(i,t);if(vt(i.semicolonPosition)&&i.semicolonPosition<this.offset)return this.offset===i.semicolonPosition+1?t:this.getCompletionsForDeclarationProperty(null,t);if(i instanceof fe)return this.getCompletionsForDeclarationValue(i,t)}else n instanceof it?this.getCompletionsForExtendsReference(n,null,t):this.currentWord&&"@"===this.currentWord[0]&&this.getCompletionsForDeclarationProperty(null,t);return t},e.prototype.getCompletionsForVariableDeclaration=function(e,t){return this.offset&&vt(e.colonPosition)&&this.offset>e.colonPosition&&this.getVariableProposals(e.getValue(),t),t},e.prototype.getCompletionsForExpression=function(e,t){var n=e.getParent();if(n instanceof ve)return this.getCompletionsForFunctionArgument(n,n.getParent(),t),t;var i=e.findParent(H.Declaration);if(!i)return this.getTermProposals(null,null,t),t;var r=e.findChildAtOffset(this.offset,!0);return r?r instanceof Qe||r instanceof re?this.getCompletionsForDeclarationValue(i,t):t:this.getCompletionsForDeclarationValue(i,t)},e.prototype.getCompletionsForFunctionArgument=function(e,t,n){var i=t.getIdentifier();return i&&i.matches("var")&&(t.getArguments().hasChildren()&&t.getArguments().getChild(0)!==e||this.getVariableProposalsForCSSVarFunction(n)),n},e.prototype.getCompletionsForFunctionDeclaration=function(e,t){var n=e.getDeclarations();return n&&this.offset>n.offset&&this.offset<n.end&&this.getTermProposals(null,null,t),t},e.prototype.getCompletionsForMixinReference=function(e,t){for(var n=0,i=this.getSymbolContext().findSymbolsAtOffset(this.offset,Y.Mixin);n<i.length;n++){var r=i[n];r.node instanceof ot&&t.items.push(this.makeTermProposal(r,r.node.getParameters(),null))}return t},e.prototype.getTermProposals=function(e,t,n){for(var i=0,r=this.getSymbolContext().findSymbolsAtOffset(this.offset,Y.Function);i<r.length;i++){var o=r[i];o.node instanceof Fe&&n.items.push(this.makeTermProposal(o,o.node.getParameters(),t))}return n},e.prototype.makeTermProposal=function(e,t,n){e.node;var i=t.getChildren().map(function(e){return e instanceof ye?e.getName():e.getText()}),r=e.name+"("+i.map(function(e,t){return"${"+(t+1)+":"+e+"}"}).join(", ")+")";return{label:e.name,detail:e.name+"("+i.join(", ")+")",textEdit:wn.replace(this.getCompletionRange(n),r),insertTextFormat:xi,kind:Un.Function,sortText:vi.Term}},e.prototype.getCompletionsForSupportsCondition=function(e,t){var n=e.findFirstChildBeforeOffset(this.offset);if(n){if(n instanceof fe)return!vt(n.colonPosition)||this.offset<=n.colonPosition?this.getCompletionsForDeclarationProperty(n,t):this.getCompletionsForDeclarationValue(n,t);if(n instanceof Ve)return this.getCompletionsForSupportsCondition(n,t)}return vt(e.lParent)&&this.offset>e.lParent&&(!vt(e.rParent)||this.offset<=e.rParent)?this.getCompletionsForDeclarationProperty(null,t):t},e.prototype.getCompletionsForSupports=function(e,t){var n=e.getDeclarations();if(!n||this.offset<=n.offset){var i=e.findFirstChildBeforeOffset(this.offset);return i instanceof Ve?this.getCompletionsForSupportsCondition(i,t):t}return this.getCompletionForTopLevel(t)},e.prototype.getCompletionsForExtendsReference=function(e,t,n){return n},e.prototype.getCompletionForUriLiteralValue=function(e,t){var n,i,r;if(e.hasChildren()){var o=e.getChild(0);n=o.getText(),i=this.position,r=this.getCompletionRange(o)}else{n="",i=this.position;var s=this.textDocument.positionAt(e.offset+"url(".length);r=an.create(s,s)}return this.completionParticipants.forEach(function(e){e.onCssURILiteralValue&&e.onCssURILiteralValue({uriValue:n,position:i,range:r})}),t},e.prototype.getCompletionForImportPath=function(e,t){var n=this;return this.completionParticipants.forEach(function(t){t.onCssImportPath&&t.onCssImportPath({pathValue:e.getText(),position:n.position,range:n.getCompletionRange(e)})}),t},e.prototype.doesSupportMarkdown=function(){if(!vt(this.supportsMarkdown)){if(!vt(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.completion;this.supportsMarkdown=e&&e.completionItem&&Array.isArray(e.completionItem.documentationFormat)&&-1!==e.completionItem.documentationFormat.indexOf(On.Markdown)}return this.supportsMarkdown},e}();function ki(e){return!(!e.status||"nonstandard"!==e.status&&"obsolete"!==e.status)}function Ci(e){var t=e.toString();switch(t.length){case 4:return t;case 3:return"0"+t;case 2:return"00"+t;case 1:return"000"+t;default:return"0000"}}var Fi=function(){function e(){this.entries={}}return e.prototype.add=function(e){this.entries[e]=!0},e.prototype.getEntries=function(){return Object.keys(this.entries)},e}();function zi(e){return e.replace(/\(\)$/,"($1)")}var Di=function(){function e(e,t){this.entries=e,this.currentOffset=t}return e.prototype.visitNode=function(e){return(e instanceof He||e instanceof be&&It(e))&&(this.currentOffset<e.offset||e.end<this.currentOffset)&&this.entries.add(e.getText()),!0},e}();function Ti(e){return e.toLowerCase()in Tt||/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(e)}var Ri,Ei=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Ii=ut(),Mi=function(){function e(){this.parent=null,this.children=null,this.attributes=null}return e.prototype.findAttribute=function(e){if(this.attributes)for(var t=0,n=this.attributes;t<n.length;t++){var i=n[t];if(i.name===e)return i.value}return null},e.prototype.addChild=function(t){t instanceof e&&(t.parent=this),this.children||(this.children=[]),this.children.push(t)},e.prototype.append=function(e){if(this.attributes){var t=this.attributes[this.attributes.length-1];t.value=t.value+e}},e.prototype.prepend=function(e){if(this.attributes){var t=this.attributes[0];t.value=e+t.value}},e.prototype.findRoot=function(){for(var e=this;e.parent&&!(e.parent instanceof Ni);)e=e.parent;return e},e.prototype.removeChild=function(e){if(this.children){var t=this.children.indexOf(e);if(-1!==t)return this.children.splice(t,1),!0}return!1},e.prototype.addAttr=function(e,t){this.attributes||(this.attributes=[]);for(var n=0,i=this.attributes;n<i.length;n++){var r=i[n];if(r.name===e)return void(r.value+=" "+t)}this.attributes.push({name:e,value:t})},e.prototype.clone=function(t){void 0===t&&(t=!0);var n=new e;if(this.attributes){n.attributes=[];for(var i=0,r=this.attributes;i<r.length;i++){var o=r[i];n.addAttr(o.name,o.value)}}if(t&&this.children){n.children=[];for(var s=0;s<this.children.length;s++)n.addChild(this.children[s].clone())}return n},e.prototype.cloneWithParent=function(){var e=this.clone(!1);!this.parent||this.parent instanceof Ni||this.parent.cloneWithParent().addChild(e);return e},e}(),Ni=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Ei(t,e),t}(Mi),Pi=function(e){function t(t){var n=e.call(this)||this;return n.addAttr("name",t),n}return Ei(t,e),t}(Mi),_i=function(){function e(e){this.quote=e,this.result=[]}return e.prototype.print=function(e){return this.result=[],e instanceof Ni?e.children&&this.doPrint(e.children,0):this.doPrint([e],0),[{language:"html",value:this.result.join("\n")}]},e.prototype.doPrint=function(e,t){for(var n=0,i=e;n<i.length;n++){var r=i[n];this.doPrintElement(r,t),r.children&&this.doPrint(r.children,t+1)}},e.prototype.writeLine=function(e,t){var n=new Array(e+1).join(" ");this.result.push(n+t)},e.prototype.doPrintElement=function(e,t){var n=e.findAttribute("name");if(e instanceof Pi||"…"===n)this.writeLine(t,n);else{var i=["<"];if(n?i.push(n):i.push("element"),e.attributes)for(var r=0,o=e.attributes;r<o.length;r++){var s=o[r];if("name"!==s.name){i.push(" "),i.push(s.name);var a=s.value;a&&(i.push("="),i.push(Ri.ensure(a,this.quote)))}}i.push(">"),this.writeLine(t,i.join(""))}},e}();!function(e){function t(e){var t=e.match(/^['"](.*)["']$/);return t?t[1]:e}e.ensure=function(e,n){return n+t(e)+n},e.remove=t}(Ri||(Ri={}));var Ai=function(){return function(){this.id=0,this.attr=0,this.tag=0}}();function Wi(e,t){for(var n=new Mi,i=0,r=e.getChildren();i<r.length;i++){var o=r[i];switch(o.type){case H.SelectorCombinator:if(t){var s=o.getText().split("&");if(1===s.length){n.addAttr("name",s[0]);break}if(n=t.cloneWithParent(),s[0])n.findRoot().prepend(s[0]);for(var a=1;a<s.length;a++){if(a>1){var l=t.cloneWithParent();n.addChild(l.findRoot()),n=l}n.append(s[a])}}break;case H.SelectorPlaceholder:if(o.matches("@at-root"))return n;case H.ElementNameSelector:var c=o.getText();n.addAttr("name","*"===c?"element":Oi(c));break;case H.ClassSelector:n.addAttr("class",Oi(o.getText().substring(1)));break;case H.IdentifierSelector:n.addAttr("id",Oi(o.getText().substring(1)));break;case H.MixinDeclaration:n.addAttr("class",o.getName());break;case H.PseudoSelector:n.addAttr(Oi(o.getText()),"");break;case H.AttributeSelector:var d=o,p=d.getIdentifier();if(p){var h=d.getValue(),m=d.getOperator(),u=void 0;if(h&&m)switch(Oi(m.getText())){case"|=":u=Ri.remove(Oi(h.getText()))+"-…";break;case"^=":u=Ri.remove(Oi(h.getText()))+"…";break;case"$=":u="…"+Ri.remove(Oi(h.getText()));break;case"~=":u=" … "+Ri.remove(Oi(h.getText()))+" … ";break;case"*=":u="…"+Ri.remove(Oi(h.getText()))+"…";break;default:u=Ri.remove(Oi(h.getText()))}n.addAttr(Oi(p.getText()),u)}}}return n}function Oi(e){var t=new X;t.setSource(e);var n=t.scanUnquotedString();return n?n.text:e}function Li(e){var t=new Ai;return function e(n){n.getChildren().forEach(function(n){switch(n.type){case H.IdentifierSelector:t.id++;break;case H.ClassSelector:case H.AttributeSelector:t.attr++;break;case H.ElementNameSelector:if(n.matches("*"))break;t.tag++;break;case H.PseudoSelector:var i=n.getText();if(function(e){var t=e.match(/^::?([\w-]+)/);return!!t&&!!en.getPseudoElement("::"+t[1])}(i))t.tag++;else{if(i.match(/^:not/i))break;t.attr++}}n.getChildren().length>0&&e(n)})}(e),Ii("specificity","[Selector Specificity](https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity): ({0}, {1}, {2})",t.id,t.attr,t.tag)}function Ui(e){var t=function(e){if(e.matches("@at-root"))return null;var t=new Ni,n=[],i=e.getParent();if(i instanceof le)for(var r=i.getParent();r&&!Bi(r);){if(r instanceof le){if(r.getSelectors().matches("@at-root"))break;n.push(r)}r=r.getParent()}for(var o=new Vi(t),s=n.length-1;s>=0;s--){var a=n[s].getSelectors().getChild(0);a&&o.processSelector(a)}return o.processSelector(e),t}(e);if(t){var n=new _i('"').print(t);return n.push(Li(e)),n}return[]}function ji(e){var t=Wi(e),n=new _i('"').print(t);return n.push(Li(e)),n}var Vi=function(){function e(e){this.prev=null,this.element=e}return e.prototype.processSelector=function(e){var t=null;if(!(this.element instanceof Ni)&&e.getChildren().some(function(e){return e.hasChildren()&&e.getChild(0).type===H.SelectorCombinator})){var n=this.element.findRoot();n.parent instanceof Ni&&(t=this.element,this.element=n.parent,this.element.removeChild(n),this.prev=null)}for(var i=0,r=e.getChildren();i<r.length;i++){var o=r[i];if(o instanceof de){if(this.prev instanceof de){var s=new Pi("…");this.element.addChild(s),this.element=s}else this.prev&&(this.prev.matches("+")||this.prev.matches("~"))&&this.element.parent&&(this.element=this.element.parent);this.prev&&this.prev.matches("~")&&(this.element.addChild(Wi(o)),this.element.addChild(new Pi("⋮")));var a=Wi(o,t),l=a.findRoot();this.element.addChild(l),this.element=a}(o instanceof de||o.type===H.SelectorCombinatorParent||o.type===H.SelectorCombinatorShadowPiercingDescendant||o.type===H.SelectorCombinatorSibling||o.type===H.SelectorCombinatorAllSiblings)&&(this.prev=o)}},e}();function Bi(e){switch(e.type){case H.MixinDeclaration:case H.Stylesheet:return!0}return!1}!function(){function e(e){this.clientCapabilities=e}e.prototype.doHover=function(e,t,n){function i(t){return an.create(e.positionAt(t.offset),e.positionAt(t.end))}for(var r=ee(n,e.offsetAt(t)),o=null,s=0;s<r.length;s++){var a=r[s];if(a instanceof ce){o={contents:Ui(a),range:i(a)};break}if(a instanceof de){Mn(a.getText(),"@")||(o={contents:ji(a),range:i(a)});break}if(a instanceof fe){var l=a.getFullPropertyName();(d=en.getProperty(l))&&(o={contents:Ct(d,this.doesSupportMarkdown()),range:i(a)})}else if(a instanceof st){var c=a.getText();(d=en.getAtDirective(c))&&(o={contents:Ct(d,this.doesSupportMarkdown()),range:i(a)})}else if(a instanceof ne&&a.type===H.PseudoSelector){var d,p=a.getText();(d="::"===p.slice(0,2)?en.getPseudoElement(p):en.getPseudoClass(p))&&(o={contents:Ct(d,this.doesSupportMarkdown()),range:i(a)})}else;}return o&&(o.contents=this.convertContents(o.contents)),o},e.prototype.convertContents=function(e){return this.doesSupportMarkdown()?e:"string"==typeof e?e:"kind"in e?{kind:"plaintext",value:e.value}:Array.isArray(e)?e.map(function(e){return"string"==typeof e?e:e.value}):e.value},e.prototype.doesSupportMarkdown=function(){if(!vt(this.supportsMarkdown)){if(!vt(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.hover;this.supportsMarkdown=e&&e.contentFormat&&Array.isArray(e.contentFormat)&&-1!==e.contentFormat.indexOf(On.Markdown)}return this.supportsMarkdown}}();var $i=function(e,t,n,i){return new(n||(n=Promise))(function(r,o){function s(e){try{l(i.next(e))}catch(e){o(e)}}function a(e){try{l(i.throw(e))}catch(e){o(e)}}function l(e){e.done?r(e.value):function(e){return e instanceof n?e:new n(function(t){t(e)})}(e.value).then(s,a)}l((i=i.apply(e,t||[])).next())})},qi=function(e,t){var n,i,r,o,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,i=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(r=(r=s.trys).length>0&&r[r.length-1])&&(6===o[0]||2===o[0])){s=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){s.label=o[1];break}if(6===o[0]&&s.label<r[1]){s.label=r[1],r=o;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(o);break}r[2]&&s.ops.pop(),s.trys.pop();continue}o=t.call(e,s)}catch(e){o=[6,e],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}},Ki=ut(),Gi=function(){function e(){}return e.prototype.findDefinition=function(e,t,n){var i=new In(n),r=Q(n,e.offsetAt(t));if(!r)return null;var o=i.findSymbolFromNode(r);return o?{uri:e.uri,range:Hi(o.node,e)}:null},e.prototype.findReferences=function(e,t,n){return this.findDocumentHighlights(e,t,n).map(function(t){return{uri:e.uri,range:t.range}})},e.prototype.findDocumentHighlights=function(e,t,n){var i=[],r=Q(n,e.offsetAt(t));if(!r||r.type===H.Stylesheet||r.type===H.Declarations)return i;r.type===H.Identifier&&r.parent&&r.parent.type===H.ClassSelector&&(r=r.parent);var o=new In(n),s=o.findSymbolFromNode(r),a=r.getText();return n.accept(function(t){if(s){if(o.matchesSymbol(t,s))return i.push({kind:Yi(t),range:Hi(t,e)}),!1}else r&&r.type===t.type&&t.matches(a)&&i.push({kind:Yi(t),range:Hi(t,e)});return!0}),i},e.prototype.isRawStringDocumentLinkNode=function(e){return e.type===H.Import},e.prototype.findDocumentLinks=function(e,t,n){var i=this,r=[];return t.accept(function(t){if(t.type===H.URILiteral)return(o=function(e,t,n){if(0===t.getChildren().length)return null;var i=t.getChild(0);return Ji(e,i,n)}(e,t,n))&&r.push(o),!1;if(t.parent&&i.isRawStringDocumentLinkNode(t.parent)){var o,s=t.getText();if(Mn(s,"'")||Mn(s,'"'))(o=Ji(e,t,n))&&r.push(o);return!1}return!0}),r},e.prototype.findDocumentLinks2=function(e,t,n){return $i(this,void 0,void 0,function(){return qi(this,function(i){return[2,this.findDocumentLinks(e,t,n)]})})},e.prototype.findDocumentSymbols=function(e,t){var n=[];return t.accept(function(t){var i={name:null,kind:Xn.Class,location:null},r=t;if(t instanceof ce)return i.name=t.getText(),(r=t.findAParent(H.Ruleset,H.ExtendsReference))&&(i.location=ln.create(e.uri,Hi(r,e)),n.push(i)),!1;if(t instanceof et)i.name=t.getName(),i.kind=Xn.Variable;else if(t instanceof ot)i.name=t.getName(),i.kind=Xn.Method;else if(t instanceof Fe)i.name=t.getName(),i.kind=Xn.Function;else if(t instanceof Re)i.name=Ki("literal.keyframes","@keyframes {0}",t.getName());else if(t instanceof De)i.name=Ki("literal.fontface","@font-face");else if(t instanceof We){var o=t.getChild(0);o instanceof Ue&&(i.name="@media "+o.getText(),i.kind=Xn.Module)}return i.name&&(i.location=ln.create(e.uri,Hi(r,e)),n.push(i)),!0}),n},e.prototype.findDocumentColors=function(e,t){var n=[];return t.accept(function(t){var i=function(e,t){var n=Lt(e);if(n){var i=Hi(e,t);return{color:n,range:i}}return null}(t,e);return i&&n.push(i),!0}),n},e.prototype.getColorPresentations=function(e,t,n,i){var r,o=[],s=Math.round(255*n.red),a=Math.round(255*n.green),l=Math.round(255*n.blue);r=1===n.alpha?"rgb("+s+", "+a+", "+l+")":"rgba("+s+", "+a+", "+l+", "+n.alpha+")",o.push({label:r,textEdit:wn.replace(i,r)}),r=1===n.alpha?"#"+Xi(s)+Xi(a)+Xi(l):"#"+Xi(s)+Xi(a)+Xi(l)+Xi(Math.round(255*n.alpha)),o.push({label:r,textEdit:wn.replace(i,r)});var c=function(e){var t=e.red,n=e.green,i=e.blue,r=e.alpha,o=Math.max(t,n,i),s=Math.min(t,n,i),a=0,l=0,c=(s+o)/2,d=o-s;if(d>0){switch(l=Math.min(c<=.5?d/(2*c):d/(2-2*c),1),o){case t:a=(n-i)/d+(n<i?6:0);break;case n:a=(i-t)/d+2;break;case i:a=(t-n)/d+4}a*=60,a=Math.round(a)}return{h:a,s:l,l:c,a:r}}(n);return r=1===c.a?"hsl("+c.h+", "+Math.round(100*c.s)+"%, "+Math.round(100*c.l)+"%)":"hsla("+c.h+", "+Math.round(100*c.s)+"%, "+Math.round(100*c.l)+"%, "+c.a+")",o.push({label:r,textEdit:wn.replace(i,r)}),o},e.prototype.doRename=function(e,t,n,i){var r,o=this.findDocumentHighlights(e,t,i).map(function(e){return wn.replace(e.range,n)});return{changes:(r={},r[e.uri]=o,r)}},e}();function Ji(e,t,n){if(!t)return null;var i=t.getText(),r=Hi(t,e);return r.start.line===r.end.line&&r.start.character===r.end.character?null:((Mn(i,"'")||Mn(i,'"'))&&(i=i.slice(1,-1)),{range:r,target:Mn(i,"http://")||Mn(i,"https://")?i:/^\w+:\/\//g.test(i)?i:n.resolveReference(i,e.uri)})}function Hi(e,t){return an.create(t.positionAt(e.offset),t.positionAt(e.end))}function Yi(e){if(e.type===H.Selector)return Hn.Write;if(e instanceof re&&e.parent&&e.parent instanceof ge&&e.isCustomProperty)return Hn.Write;if(e.parent)switch(e.parent.type){case H.FunctionDeclaration:case H.MixinDeclaration:case H.Keyframe:case H.VariableDeclaration:case H.FunctionParameter:return Hn.Write}return Hn.Read}function Xi(e){var t=e.toString(16);return 2!==t.length?"0"+t:t}var Zi=ut(),Qi=te.Warning,er=te.Error,tr=te.Ignore,nr=function(){return function(e,t,n){this.id=e,this.message=t,this.defaultValue=n}}(),ir=function(){return function(e,t,n){this.id=e,this.message=t,this.defaultValue=n}}(),rr={AllVendorPrefixes:new nr("compatibleVendorPrefixes",Zi("rule.vendorprefixes.all","When using a vendor-specific prefix make sure to also include all other vendor-specific properties"),tr),IncludeStandardPropertyWhenUsingVendorPrefix:new nr("vendorPrefix",Zi("rule.standardvendorprefix.all","When using a vendor-specific prefix also include the standard property"),Qi),DuplicateDeclarations:new nr("duplicateProperties",Zi("rule.duplicateDeclarations","Do not use duplicate style definitions"),tr),EmptyRuleSet:new nr("emptyRules",Zi("rule.emptyRuleSets","Do not use empty rulesets"),Qi),ImportStatemement:new nr("importStatement",Zi("rule.importDirective","Import statements do not load in parallel"),tr),BewareOfBoxModelSize:new nr("boxModel",Zi("rule.bewareOfBoxModelSize","Do not use width or height when using padding or border"),tr),UniversalSelector:new nr("universalSelector",Zi("rule.universalSelector","The universal selector (*) is known to be slow"),tr),ZeroWithUnit:new nr("zeroUnits",Zi("rule.zeroWidthUnit","No unit for zero needed"),tr),RequiredPropertiesForFontFace:new nr("fontFaceProperties",Zi("rule.fontFaceProperties","@font-face rule must define 'src' and 'font-family' properties"),Qi),HexColorLength:new nr("hexColorLength",Zi("rule.hexColor","Hex colors must consist of three, four, six or eight hex numbers"),er),ArgsInColorFunction:new nr("argumentsInColorFunction",Zi("rule.colorFunction","Invalid number of parameters"),er),UnknownProperty:new nr("unknownProperties",Zi("rule.unknownProperty","Unknown property."),Qi),UnknownAtRules:new nr("unknownAtRules",Zi("rule.unknownAtRules","Unknown at-rule."),Qi),IEStarHack:new nr("ieHack",Zi("rule.ieHack","IE hacks are only necessary when supporting IE7 and older"),tr),UnknownVendorSpecificProperty:new nr("unknownVendorSpecificProperties",Zi("rule.unknownVendorSpecificProperty","Unknown vendor specific property."),tr),PropertyIgnoredDueToDisplay:new nr("propertyIgnoredDueToDisplay",Zi("rule.propertyIgnoredDueToDisplay","Property is ignored due to the display."),Qi),AvoidImportant:new nr("important",Zi("rule.avoidImportant","Avoid using !important. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored."),tr),AvoidFloat:new nr("float",Zi("rule.avoidFloat","Avoid using 'float'. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes."),tr),AvoidIdSelector:new nr("idSelector",Zi("rule.avoidIdSelector","Selectors should not contain IDs because these rules are too tightly coupled with the HTML."),tr)},or={ValidProperties:new ir("validProperties",Zi("rule.validProperties","A list of properties that are not validated against the `unknownProperties` rule."),[])},sr=function(){function e(e){void 0===e&&(e={}),this.conf=e}return e.prototype.getRule=function(e){if(this.conf.hasOwnProperty(e.id)){var t=function(e){switch(e){case"ignore":return te.Ignore;case"warning":return te.Warning;case"error":return te.Error}return null}(this.conf[e.id]);if(t)return t}return e.defaultValue},e.prototype.getSetting=function(e){return this.conf[e.id]},e}();var ar=ut(),lr=(function(){function e(){}e.prototype.doCodeActions=function(e,t,n,i){return this.doCodeActions2(e,t,n,i).map(function(t){var n=t.edit&&t.edit.documentChanges&&t.edit.documentChanges[0];return vn.create(t.title,"_css.applyCodeAction",e.uri,e.version,n&&n.edits)})},e.prototype.doCodeActions2=function(e,t,n,i){var r=[];if(n.diagnostics)for(var o=0,s=n.diagnostics;o<s.length;o++){var a=s[o];this.appendFixesForMarker(e,i,a,r)}return r},e.prototype.getFixesForUnknownProperty=function(e,t,n,i){var r=t.getName(),o=[];en.getProperties().forEach(function(e){var t=function(e,t,n){void 0===n&&(n=4);var i=Math.abs(e.length-t.length);if(i>n)return 0;var r,o,s=[],a=[];for(r=0;r<t.length+1;++r)a.push(0);for(r=0;r<e.length+1;++r)s.push(a);for(r=1;r<e.length+1;++r)for(o=1;o<t.length+1;++o)e[r-1]===t[o-1]?s[r][o]=s[r-1][o-1]+1:s[r][o]=Math.max(s[r-1][o],s[r][o-1]);return s[e.length][t.length]-Math.sqrt(i)}(r,e.name);t>=r.length/2&&o.push({property:e.name,score:t})}),o.sort(function(e,t){return t.score-e.score});for(var s=3,a=0,l=o;a<l.length;a++){var c=l[a].property,d=ar("css.codeaction.rename","Rename to '{0}'",c),p=wn.replace(n.range,c),h=An.create(e.uri,e.version),m={documentChanges:[xn.create(h,[p])]},u=ii.create(d,m,ti.QuickFix);if(u.diagnostics=[n],i.push(u),--s<=0)return}},e.prototype.appendFixesForMarker=function(e,t,n,i){if(n.code===rr.UnknownProperty.id)for(var r=e.offsetAt(n.range.start),o=e.offsetAt(n.range.end),s=ee(t,r),a=s.length-1;a>=0;a--){var l=s[a];if(l instanceof fe){var c=l.getProperty();if(c&&c.offset===r&&c.end===o)return void this.getFixesForUnknownProperty(e,c,n,i)}}}}(),function(){return function(e){this.fullPropertyName=e.getFullPropertyName().toLowerCase(),this.node=e}}());function cr(e,t,n,i){var r=e[t];r.value=n,n&&(rn(r.properties,i)||r.properties.push(i))}function dr(e,t,n,i){"top"===t||"right"===t||"bottom"===t||"left"===t?cr(e,t,n,i):function(e,t,n){cr(e,"top",t,n),cr(e,"right",t,n),cr(e,"bottom",t,n),cr(e,"left",t,n)}(e,n,i)}function pr(e,t,n){switch(t.length){case 1:dr(e,void 0,t[0],n);break;case 2:dr(e,"top",t[0],n),dr(e,"bottom",t[0],n),dr(e,"right",t[1],n),dr(e,"left",t[1],n);break;case 3:dr(e,"top",t[0],n),dr(e,"right",t[1],n),dr(e,"left",t[1],n),dr(e,"bottom",t[2],n);break;case 4:dr(e,"top",t[0],n),dr(e,"right",t[1],n),dr(e,"bottom",t[2],n),dr(e,"left",t[3],n)}}function hr(e,t){for(var n=0,i=t;n<i.length;n++){var r=i[n];if(e.matches(r))return!0}return!1}function mr(e,t){return void 0===t&&(t=!0),(!t||!hr(e,["initial","unset"]))&&0!==parseFloat(e.getText())}function ur(e,t){return void 0===t&&(t=!0),e.map(function(e){return mr(e,t)})}function fr(e,t){return void 0===t&&(t=!0),!hr(e,["none","hidden"])&&(!t||!hr(e,["initial","unset"]))}function gr(e,t){return void 0===t&&(t=!0),e.map(function(e){return fr(e,t)})}function br(e){var t=e.getChildren();if(1===t.length)return mr(r=t[0])&&fr(r);for(var n=0,i=t;n<i.length;n++){var r;if(!mr(r=i[n],!1)||!fr(r,!1))return!1}return!0}var yr=ut(),vr=function(){function e(){this.data={}}return e.prototype.add=function(e,t,n){var i=this.data[e];i||(i={nodes:[],names:[]},this.data[e]=i),i.names.push(t),n&&i.nodes.push(n)},e}(),wr=function(){function e(e,t){var n=this;this.warnings=[],this.settings=t,this.documentText=e.getText(),this.keyframes=new vr,this.validProperties={};var i=t.getSetting(or.ValidProperties);Array.isArray(i)&&i.forEach(function(e){if("string"==typeof e){var t=e.trim().toLowerCase();t.length&&(n.validProperties[t]=!0)}})}return e.entries=function(t,n,i,r){var o=new e(n,i);return t.acceptVisitor(o),o.completeValidations(),o.getEntries(r)},e.prototype.isValidPropertyDeclaration=function(e){var t=e.fullPropertyName;return this.validProperties[t]},e.prototype.fetch=function(e,t){for(var n=[],i=0,r=e;i<r.length;i++){var o=r[i];o.fullPropertyName===t&&n.push(o)}return n},e.prototype.fetchWithValue=function(e,t,n){for(var i=[],r=0,o=e;r<o.length;r++){var s=o[r];if(s.fullPropertyName===t){var a=s.node.getValue();a&&this.findValueInExpression(a,n)&&i.push(s)}}return i},e.prototype.findValueInExpression=function(e,t){var n=!1;return e.accept(function(e){return e.type===H.Identifier&&e.matches(t)&&(n=!0),!n}),n},e.prototype.getEntries=function(e){return void 0===e&&(e=te.Warning|te.Error),this.warnings.filter(function(t){return 0!=(t.getLevel()&e)})},e.prototype.addEntry=function(e,t,n){var i=new pt(e,t,this.settings.getRule(t),n);this.warnings.push(i)},e.prototype.getMissingNames=function(e,t){for(var n=e.slice(0),i=0;i<t.length;i++){var r=n.indexOf(t[i]);-1!==r&&(n[r]=null)}var o=null;for(i=0;i<n.length;i++){var s=n[i];s&&(o=null===o?yr("namelist.single","'{0}'",s):yr("namelist.concatenated","{0}, '{1}'",o,s))}return o},e.prototype.visitNode=function(e){switch(e.type){case H.UnknownAtRule:return this.visitUnknownAtRule(e);case H.Keyframe:return this.visitKeyframe(e);case H.FontFace:return this.visitFontFace(e);case H.Ruleset:return this.visitRuleSet(e);case H.SimpleSelector:return this.visitSimpleSelector(e);case H.Function:return this.visitFunction(e);case H.NumericValue:return this.visitNumericValue(e);case H.Import:return this.visitImport(e);case H.HexColorValue:return this.visitHexColorValue(e);case H.Prio:return this.visitPrio(e)}return!0},e.prototype.completeValidations=function(){this.validateKeyframes()},e.prototype.visitUnknownAtRule=function(e){var t=e.getChild(0);return!!t&&(!en.getAtDirective(t.getText())&&(this.addEntry(t,rr.UnknownAtRules,"Unknown at rule "+t.getText()),!0))},e.prototype.visitKeyframe=function(e){var t=e.getKeyword();if(!t)return!1;var n=t.getText();return this.keyframes.add(e.getName(),n,"@keyframes"!==n?t:null),!0},e.prototype.validateKeyframes=function(){var e=["@-webkit-keyframes","@-moz-keyframes","@-o-keyframes"];for(var t in this.keyframes.data){var n=this.keyframes.data[t].names,i=-1===n.indexOf("@keyframes");if(i||1!==n.length){var r=this.getMissingNames(e,n);if(r||i)for(var o=0,s=this.keyframes.data[t].nodes;o<s.length;o++){var a=s[o];if(i){var l=yr("keyframes.standardrule.missing","Always define standard rule '@keyframes' when defining keyframes.");this.addEntry(a,rr.IncludeStandardPropertyWhenUsingVendorPrefix,l)}if(r){l=yr("keyframes.vendorspecific.missing","Always include all vendor specific rules: Missing: {0}",r);this.addEntry(a,rr.AllVendorPrefixes,l)}}}}return!0},e.prototype.visitSimpleSelector=function(e){var t=this.documentText.charAt(e.offset);return 1===e.length&&"*"===t&&this.addEntry(e,rr.UniversalSelector),"#"===t&&this.addEntry(e,rr.AvoidIdSelector),!0},e.prototype.visitImport=function(e){return this.addEntry(e,rr.ImportStatemement),!0},e.prototype.visitRuleSet=function(t){var n=t.getDeclarations();if(!n)return!1;n.hasChildren()||this.addEntry(t.getSelectors(),rr.EmptyRuleSet);for(var i=[],r=0,o=n.getChildren();r<o.length;r++){(k=o[r])instanceof fe&&i.push(new lr(k))}var s=function(e){for(var t={top:{value:!1,properties:[]},right:{value:!1,properties:[]},bottom:{value:!1,properties:[]},left:{value:!1,properties:[]}},n=0,i=e;n<i.length;n++){var r=i[n],o=r.node.value;if(void 0!==o)switch(r.fullPropertyName){case"box-sizing":return{top:{value:!1,properties:[]},right:{value:!1,properties:[]},bottom:{value:!1,properties:[]},left:{value:!1,properties:[]}};case"width":t.width=r;break;case"height":t.height=r;break;default:var s=r.fullPropertyName.split("-");switch(s[0]){case"border":switch(s[1]){case void 0:case"top":case"right":case"bottom":case"left":switch(s[2]){case void 0:dr(t,s[1],br(o),r);break;case"width":dr(t,s[1],mr(o,!1),r);break;case"style":dr(t,s[1],fr(o,!0),r)}break;case"width":pr(t,ur(o.getChildren(),!1),r);break;case"style":pr(t,gr(o.getChildren(),!0),r)}break;case"padding":1===s.length?pr(t,ur(o.getChildren(),!0),r):dr(t,s[1],mr(o,!0),r)}}}return t}(i);if(s.width){var a=[];if(s.right.value&&(a=on(a,s.right.properties)),s.left.value&&(a=on(a,s.left.properties)),0!==a.length){for(var l=0,c=a;l<c.length;l++){var d=c[l];this.addEntry(d.node,rr.BewareOfBoxModelSize)}this.addEntry(s.width.node,rr.BewareOfBoxModelSize)}}if(s.height){a=[];if(s.top.value&&(a=on(a,s.top.properties)),s.bottom.value&&(a=on(a,s.bottom.properties)),0!==a.length){for(var p=0,h=a;p<h.length;p++){d=h[p];this.addEntry(d.node,rr.BewareOfBoxModelSize)}this.addEntry(s.height.node,rr.BewareOfBoxModelSize)}}var m=this.fetchWithValue(i,"display","inline");if(m.length>0)for(var u=0,f=["width","height","margin-top","margin-bottom","float"];u<f.length;u++)for(var g=f[u],b=this.fetch(i,g),y=0;y<b.length;y++){var v=b[y].node,w=v.getValue();("float"!==g||w&&!w.matches("none"))&&this.addEntry(v,rr.PropertyIgnoredDueToDisplay,yr("rule.propertyIgnoredDueToDisplayInline","Property is ignored due to the display. With 'display: inline', the width, height, margin-top, margin-bottom, and float properties have no effect."))}if((m=this.fetchWithValue(i,"display","inline-block")).length>0)for(b=this.fetch(i,"float"),y=0;y<b.length;y++){var x=b[y].node;(w=x.getValue())&&!w.matches("none")&&this.addEntry(x,rr.PropertyIgnoredDueToDisplay,yr("rule.propertyIgnoredDueToDisplayInlineBlock","inline-block is ignored due to the float. If 'float' has a value other than 'none', the box is floated and 'display' is treated as 'block'"))}if((m=this.fetchWithValue(i,"display","block")).length>0)for(b=this.fetch(i,"vertical-align"),y=0;y<b.length;y++)this.addEntry(b[y].node,rr.PropertyIgnoredDueToDisplay,yr("rule.propertyIgnoredDueToDisplayBlock","Property is ignored due to the display. With 'display: block', vertical-align should not be used."));var S=this.fetch(i,"float");for(y=0;y<S.length;y++){var k=S[y];this.isValidPropertyDeclaration(k)||this.addEntry(k.node,rr.AvoidFloat)}for(var C=0;C<i.length;C++){if("background"!==(k=i[C]).fullPropertyName&&!this.validProperties[k.fullPropertyName])if((w=k.node.getValue())&&"-"!==this.documentText.charAt(w.offset)){var F=this.fetch(i,k.fullPropertyName);if(F.length>1)for(var z=0;z<F.length;z++){var D=F[z].node.getValue();D&&"-"!==this.documentText.charAt(D.offset)&&F[z]!==k&&this.addEntry(k.node,rr.DuplicateDeclarations)}}}if(!t.getSelectors().matches(":export")){for(var T=new vr,R=!1,E=0,I=i;E<I.length;E++){var M=(k=I[E]).node;if(this.isCSSDeclaration(M)){var N=k.fullPropertyName,P=N.charAt(0);if("-"===P){if("-"!==N.charAt(1)){en.isKnownProperty(N)||this.validProperties[N]||this.addEntry(M.getProperty(),rr.UnknownVendorSpecificProperty);var _=M.getNonPrefixedPropertyName();T.add(_,N,M.getProperty())}}else{var A=N;"*"!==P&&"_"!==P||(this.addEntry(M.getProperty(),rr.IEStarHack),N=N.substr(1)),en.isKnownProperty(A)||en.isKnownProperty(N)||this.validProperties[N]||this.addEntry(M.getProperty(),rr.UnknownProperty,yr("property.unknownproperty.detailed","Unknown property: '{0}'",N)),T.add(N,N,null)}}else R=!0}if(!R)for(var W in T.data){var O=T.data[W],L=O.names,U=en.isStandardProperty(W)&&-1===L.indexOf(W);if(U||1!==L.length){for(var j=[],V=(C=0,e.prefixes.length);C<V;C++){var B=e.prefixes[C];en.isStandardProperty(B+W)&&j.push(B+W)}var $=this.getMissingNames(j,L);if($||U)for(var q=0,K=O.nodes;q<K.length;q++){var G=K[q];if(U){var J=yr("property.standard.missing","Also define the standard property '{0}' for compatibility",W);this.addEntry(G,rr.IncludeStandardPropertyWhenUsingVendorPrefix,J)}if($){J=yr("property.vendorspecific.missing","Always include all vendor specific properties: Missing: {0}",$);this.addEntry(G,rr.AllVendorPrefixes,J)}}}}}return!0},e.prototype.visitPrio=function(e){return this.addEntry(e,rr.AvoidImportant),!0},e.prototype.visitNumericValue=function(e){var t=e.findParent(H.Function);if(t&&"calc"===t.getName())return!0;var n=e.findParent(H.Declaration);if(n&&n.getValue()){var i=e.getValue();if(!i.unit||-1===Yt.length.indexOf(i.unit.toLowerCase()))return!0;0===parseFloat(i.value)&&i.unit&&!this.validProperties[n.getFullPropertyName()]&&this.addEntry(e,rr.ZeroWithUnit)}return!0},e.prototype.visitFontFace=function(e){var t=e.getDeclarations();if(!t)return!1;for(var n=!1,i=!1,r=!1,o=0,s=t.getChildren();o<s.length;o++){var a=s[o];if(this.isCSSDeclaration(a)){var l=a.getProperty().getName().toLowerCase();"src"===l&&(n=!0),"font-family"===l&&(i=!0)}else r=!0}return r||n&&i||this.addEntry(e,rr.RequiredPropertiesForFontFace),!0},e.prototype.isCSSDeclaration=function(e){if(e instanceof fe){if(!e.getValue())return!1;var t=e.getProperty();if(!t)return!1;var n=t.getIdentifier();return!(!n||n.containsInterpolation())}return!1},e.prototype.visitHexColorValue=function(e){var t=e.length;return 9!==t&&7!==t&&5!==t&&4!==t&&this.addEntry(e,rr.HexColorLength),!1},e.prototype.visitFunction=function(e){var t=-1,n=0;switch(e.getName().toLowerCase()){case"rgb(":case"hsl(":t=3;break;case"rgba(":case"hsla(":t=4}return-1!==t&&(e.getArguments().accept(function(e){return!(e instanceof Ke)||(n+=1,!1)}),n!==t&&this.addEntry(e,rr.ArgsInColorFunction)),!0},e.prefixes=["-ms-","-moz-","-o-","-webkit-"],e}(),xr=(function(){function e(){}e.prototype.configure=function(e){this.settings=e},e.prototype.doValidation=function(e,t,n){if(void 0===n&&(n=this.settings),n&&!1===n.validate)return[];var i=[];i.push.apply(i,ht.entries(t)),i.push.apply(i,wr.entries(t,e,new sr(n&&n.lint)));var r=[];for(var o in rr)r.push(rr[o].id);return i.filter(function(e){return e.getLevel()!==te.Ignore}).map(function(t){var n=an.create(e.positionAt(t.getOffset()),e.positionAt(t.getOffset()+t.getLength())),i=e.languageId;return{code:t.getRule().id,source:i,message:t.getMessage(),severity:t.getLevel()===te.Warning?gn.Warning:gn.Error,range:n}})}}(),function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),Sr="/".charCodeAt(0),kr="\n".charCodeAt(0),Cr="\r".charCodeAt(0),Fr="\f".charCodeAt(0),zr="$".charCodeAt(0),Dr="#".charCodeAt(0),Tr="{".charCodeAt(0),Rr="=".charCodeAt(0),Er="!".charCodeAt(0),Ir="<".charCodeAt(0),Mr=">".charCodeAt(0),Nr=".".charCodeAt(0),Pr="@".charCodeAt(0),_r=i.CustomToken,Ar=_r++,Wr=_r++,Or=(_r++,_r++),Lr=_r++,Ur=_r++,jr=_r++,Vr=_r++,Br=(_r++,_r++),$r=_r++,qr=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return xr(t,e),t.prototype.scanNext=function(t){if(this.stream.advanceIfChar(zr)){var n=["$"];if(this.ident(n))return this.finishToken(t,Ar,n.join(""));this.stream.goBackTo(t)}if(this.stream.advanceIfChars([Dr,Tr]))return this.finishToken(t,Wr);if(this.stream.advanceIfChars([Rr,Rr]))return this.finishToken(t,Or);if(this.stream.advanceIfChars([Er,Rr]))return this.finishToken(t,Lr);if(this.stream.advanceIfChar(Ir))return this.stream.advanceIfChar(Rr)?this.finishToken(t,jr):this.finishToken(t,i.Delim);if(this.stream.advanceIfChar(Mr))return this.stream.advanceIfChar(Rr)?this.finishToken(t,Ur):this.finishToken(t,i.Delim);if(this.stream.advanceIfChars([Nr,Nr,Nr]))return this.finishToken(t,Vr);if(this.stream.advanceIfChar(Pr)){n=["@"];if(this.ident(n)){var r=n.join("");if("@forward"===r)return this.finishToken(t,Br,r);if("@use"===r)return this.finishToken(t,$r,r)}this.stream.goBackTo(t)}return e.prototype.scanNext.call(this,t)},t.prototype.comment=function(){return!!e.prototype.comment.call(this)||!(this.inURL||!this.stream.advanceIfChars([Sr,Sr]))&&(this.stream.advanceWhileChar(function(e){switch(e){case kr:case Cr:case Fr:return!1;default:return!0}}),!0)},t}(X),Kr=ut(),Gr=function(){return function(e,t){this.id=e,this.message=t}}(),Jr={FromExpected:new Gr("scss-fromexpected",Kr("expected.from","'from' expected")),ThroughOrToExpected:new Gr("scss-throughexpected",Kr("expected.through","'through' or 'to' expected")),InExpected:new Gr("scss-fromexpected",Kr("expected.in","'in' expected"))},Hr=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Yr=(function(e){function t(){return e.call(this,new qr)||this}Hr(t,e),t.prototype._parseStylesheetStart=function(){return this._parseForward()||this._parseUse()||e.prototype._parseStylesheetStart.call(this)},t.prototype._parseStylesheetStatement=function(){return this.peek(i.AtKeyword)?this._parseWarnAndDebug()||this._parseControlStatement()||this._parseMixinDeclaration()||this._parseMixinContent()||this._parseMixinReference()||this._parseFunctionDeclaration()||e.prototype._parseStylesheetAtStatement.call(this):this._parseRuleset(!0)||this._parseVariableDeclaration()},t.prototype._parseImport=function(){if(!this.peekKeyword("@import"))return null;var e=this.create(Ie);if(this.consumeToken(),!e.addChild(this._parseURILiteral())&&!e.addChild(this._parseStringLiteral()))return this.finish(e,bt.URIOrStringExpected);for(;this.accept(i.Comma);)if(!e.addChild(this._parseURILiteral())&&!e.addChild(this._parseStringLiteral()))return this.finish(e,bt.URIOrStringExpected);return this.peek(i.SemiColon)||this.peek(i.EOF)||e.setMedialist(this._parseMediaQueryList()),this.finish(e)},t.prototype._parseVariableDeclaration=function(e){if(void 0===e&&(e=[]),!this.peek(Ar))return null;var t=this.create(et);if(!t.setVariable(this._parseVariable()))return null;if(!this.accept(i.Colon))return this.finish(t,bt.ColonExpected);if(this.prevToken&&(t.colonPosition=this.prevToken.offset),!t.setValue(this._parseExpr()))return this.finish(t,bt.VariableValueExpected,[],e);for(;this.accept(i.Exclamation);){if(!this.peekRegExp(i.Ident,/^(default|global)$/))return this.finish(t,bt.UnknownKeyword);this.consumeToken()}return this.peek(i.SemiColon)&&(t.semicolonPosition=this.token.offset),this.finish(t)},t.prototype._parseMediaContentStart=function(){return this._parseInterpolation()},t.prototype._parseMediaFeatureName=function(){return this._parseModuleMember()||this._parseFunction()||this._parseIdent()||this._parseVariable()},t.prototype._parseKeyframeSelector=function(){return this._tryParseKeyframeSelector()||this._parseControlStatement(this._parseKeyframeSelector.bind(this))||this._parseVariableDeclaration()||this._parseMixinContent()},t.prototype._parseVariable=function(){if(!this.peek(Ar))return null;var e=this.create(nt);return this.consumeToken(),e},t.prototype._parseModuleMember=function(){var e=this.mark(),t=this.create(dt);return t.setIdentifier(this._parseIdent([Y.Module]))?this.hasWhitespace()||!this.acceptDelim(".")||this.hasWhitespace()?(this.restoreAtMark(e),null):t.addChild(this._parseVariable()||this._parseFunction())?t:this.finish(t,bt.IdentifierOrVariableExpected):null},t.prototype._parseIdent=function(e){var t=this;if(!this.peek(i.Ident)&&!this.peek(Wr)&&!this.peekDelim("-"))return null;var n=this.create(re);n.referenceTypes=e,n.isCustomProperty=this.peekRegExp(i.Ident,/^--/);for(var r=!1,o=function(){var e=t.mark();return t.acceptDelim("-")&&(t.hasWhitespace()||t.acceptDelim("-"),t.hasWhitespace())?(t.restoreAtMark(e),null):t._parseInterpolation()};(this.accept(i.Ident)||n.addChild(o())||r&&(this.acceptDelim("-")||this.accept(i.Num)))&&(r=!0,!this.hasWhitespace()););return r?this.finish(n):null},t.prototype._parseTerm=function(){var t=this.create(Ge);if(t.setExpression(this._parseModuleMember()))return this.finish(t);var n=e.prototype._parseTerm.call(this);return n||(t.setExpression(this._parseVariable())||t.setExpression(this._parseSelectorCombinator())||t.setExpression(this._tryParsePrio())?this.finish(t):null)},t.prototype._parseInterpolation=function(){if(this.peek(Wr)){var e=this.create(tt);return this.consumeToken(),e.addChild(this._parseExpr())||this._parseSelectorCombinator()?this.accept(i.CurlyR)?this.finish(e):this.finish(e,bt.RightCurlyExpected):this.accept(i.CurlyR)?this.finish(e):this.finish(e,bt.ExpressionExpected)}return null},t.prototype._parseOperator=function(){if(this.peek(Or)||this.peek(Lr)||this.peek(Ur)||this.peek(jr)||this.peekDelim(">")||this.peekDelim("<")||this.peekIdent("and")||this.peekIdent("or")||this.peekDelim("%")){var t=this.createNode(H.Operator);return this.consumeToken(),this.finish(t)}return e.prototype._parseOperator.call(this)},t.prototype._parseUnaryOperator=function(){if(this.peekIdent("not")){var t=this.create(ne);return this.consumeToken(),this.finish(t)}return e.prototype._parseUnaryOperator.call(this)},t.prototype._parseRuleSetDeclaration=function(){return this.peek(i.AtKeyword)?this._parseKeyframe()||this._parseImport()||this._parseMedia(!0)||this._parseFontFace()||this._parseWarnAndDebug()||this._parseControlStatement()||this._parseFunctionDeclaration()||this._parseExtends()||this._parseMixinReference()||this._parseMixinContent()||this._parseMixinDeclaration()||this._parseRuleset(!0)||this._parseSupports(!0):this._parseVariableDeclaration()||this._tryParseRuleset(!0)||e.prototype._parseRuleSetDeclaration.call(this)},t.prototype._parseDeclaration=function(e){var t=this.create(fe);if(!t.setProperty(this._parseProperty()))return null;if(!this.accept(i.Colon))return this.finish(t,bt.ColonExpected,[i.Colon],e);this.prevToken&&(t.colonPosition=this.prevToken.offset);var n=!1;if(t.setValue(this._parseExpr())&&(n=!0,t.addChild(this._parsePrio())),this.peek(i.CurlyL))t.setNestedProperties(this._parseNestedProperties());else if(!n)return this.finish(t,bt.PropertyValueExpected);return this.peek(i.SemiColon)&&(t.semicolonPosition=this.token.offset),this.finish(t)},t.prototype._parseNestedProperties=function(){var e=this.create(Te);return this._parseBody(e,this._parseDeclaration.bind(this))},t.prototype._parseExtends=function(){if(this.peekKeyword("@extend")){var e=this.create(it);if(this.consumeToken(),!e.getSelectors().addChild(this._parseSimpleSelector()))return this.finish(e,bt.SelectorExpected);for(;this.accept(i.Comma);)e.getSelectors().addChild(this._parseSimpleSelector());return this.accept(i.Exclamation)&&!this.acceptIdent("optional")?this.finish(e,bt.UnknownKeyword):this.finish(e)}return null},t.prototype._parseSimpleSelectorBody=function(){return this._parseSelectorCombinator()||this._parseSelectorPlaceholder()||e.prototype._parseSimpleSelectorBody.call(this)},t.prototype._parseSelectorCombinator=function(){if(this.peekDelim("&")){var e=this.createNode(H.SelectorCombinator);for(this.consumeToken();!this.hasWhitespace()&&(this.acceptDelim("-")||this.accept(i.Num)||this.accept(i.Dimension)||e.addChild(this._parseIdent())||this.acceptDelim("&")););return this.finish(e)}return null},t.prototype._parseSelectorPlaceholder=function(){if(this.peekDelim("%")){var e=this.createNode(H.SelectorPlaceholder);return this.consumeToken(),this._parseIdent(),this.finish(e)}if(this.peekKeyword("@at-root")){e=this.createNode(H.SelectorPlaceholder);return this.consumeToken(),this.finish(e)}return null},t.prototype._parseElementName=function(){var t=this.mark(),n=e.prototype._parseElementName.call(this);return n&&!this.hasWhitespace()&&this.peek(i.ParenthesisL)?(this.restoreAtMark(t),null):n},t.prototype._tryParsePseudoIdentifier=function(){return this._parseInterpolation()||e.prototype._tryParsePseudoIdentifier.call(this)},t.prototype._parseWarnAndDebug=function(){if(!this.peekKeyword("@debug")&&!this.peekKeyword("@warn")&&!this.peekKeyword("@error"))return null;var e=this.createNode(H.Debug);return this.consumeToken(),e.addChild(this._parseExpr()),this.finish(e)},t.prototype._parseControlStatement=function(e){return void 0===e&&(e=this._parseRuleSetDeclaration.bind(this)),this.peek(i.AtKeyword)?this._parseIfStatement(e)||this._parseForStatement(e)||this._parseEachStatement(e)||this._parseWhileStatement(e):null},t.prototype._parseIfStatement=function(e){return this.peekKeyword("@if")?this._internalParseIfStatement(e):null},t.prototype._internalParseIfStatement=function(e){var t=this.create(we);if(this.consumeToken(),!t.setExpression(this._parseExpr(!0)))return this.finish(t,bt.ExpressionExpected);if(this._parseBody(t,e),this.acceptKeyword("@else"))if(this.peekIdent("if"))t.setElseClause(this._internalParseIfStatement(e));else if(this.peek(i.CurlyL)){var n=this.create(Ce);this._parseBody(n,e),t.setElseClause(n)}return this.finish(t)},t.prototype._parseForStatement=function(e){if(!this.peekKeyword("@for"))return null;var t=this.create(xe);return this.consumeToken(),t.setVariable(this._parseVariable())?this.acceptIdent("from")?t.addChild(this._parseBinaryExpr())?this.acceptIdent("to")||this.acceptIdent("through")?t.addChild(this._parseBinaryExpr())?this._parseBody(t,e):this.finish(t,bt.ExpressionExpected,[i.CurlyR]):this.finish(t,Jr.ThroughOrToExpected,[i.CurlyR]):this.finish(t,bt.ExpressionExpected,[i.CurlyR]):this.finish(t,Jr.FromExpected,[i.CurlyR]):this.finish(t,bt.VariableNameExpected,[i.CurlyR])},t.prototype._parseEachStatement=function(e){if(!this.peekKeyword("@each"))return null;var t=this.create(Se);this.consumeToken();var n=t.getVariables();if(!n.addChild(this._parseVariable()))return this.finish(t,bt.VariableNameExpected,[i.CurlyR]);for(;this.accept(i.Comma);)if(!n.addChild(this._parseVariable()))return this.finish(t,bt.VariableNameExpected,[i.CurlyR]);return this.finish(n),this.acceptIdent("in")?t.addChild(this._parseExpr())?this._parseBody(t,e):this.finish(t,bt.ExpressionExpected,[i.CurlyR]):this.finish(t,Jr.InExpected,[i.CurlyR])},t.prototype._parseWhileStatement=function(e){if(!this.peekKeyword("@while"))return null;var t=this.create(ke);return this.consumeToken(),t.addChild(this._parseBinaryExpr())?this._parseBody(t,e):this.finish(t,bt.ExpressionExpected,[i.CurlyR])},t.prototype._parseFunctionBodyDeclaration=function(){return this._parseVariableDeclaration()||this._parseReturnStatement()||this._parseWarnAndDebug()||this._parseControlStatement(this._parseFunctionBodyDeclaration.bind(this))},t.prototype._parseFunctionDeclaration=function(){if(!this.peekKeyword("@function"))return null;var e=this.create(Fe);if(this.consumeToken(),!e.setIdentifier(this._parseIdent([Y.Function])))return this.finish(e,bt.IdentifierExpected,[i.CurlyR]);if(!this.accept(i.ParenthesisL))return this.finish(e,bt.LeftParenthesisExpected,[i.CurlyR]);if(e.getParameters().addChild(this._parseParameterDeclaration()))for(;this.accept(i.Comma)&&!this.peek(i.ParenthesisR);)if(!e.getParameters().addChild(this._parseParameterDeclaration()))return this.finish(e,bt.VariableNameExpected);return this.accept(i.ParenthesisR)?this._parseBody(e,this._parseFunctionBodyDeclaration.bind(this)):this.finish(e,bt.RightParenthesisExpected,[i.CurlyR])},t.prototype._parseReturnStatement=function(){if(!this.peekKeyword("@return"))return null;var e=this.createNode(H.ReturnStatement);return this.consumeToken(),e.addChild(this._parseExpr())?this.finish(e):this.finish(e,bt.ExpressionExpected)},t.prototype._parseMixinDeclaration=function(){if(!this.peekKeyword("@mixin"))return null;var e=this.create(ot);if(this.consumeToken(),!e.setIdentifier(this._parseIdent([Y.Mixin])))return this.finish(e,bt.IdentifierExpected,[i.CurlyR]);if(this.accept(i.ParenthesisL)){if(e.getParameters().addChild(this._parseParameterDeclaration()))for(;this.accept(i.Comma)&&!this.peek(i.ParenthesisR);)if(!e.getParameters().addChild(this._parseParameterDeclaration()))return this.finish(e,bt.VariableNameExpected);if(!this.accept(i.ParenthesisR))return this.finish(e,bt.RightParenthesisExpected,[i.CurlyR])}return this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},t.prototype._parseParameterDeclaration=function(){var e=this.create(ye);return e.setIdentifier(this._parseVariable())?(this.accept(Vr),this.accept(i.Colon)&&!e.setDefaultValue(this._parseExpr(!0))?this.finish(e,bt.VariableValueExpected,[],[i.Comma,i.ParenthesisR]):this.finish(e)):null},t.prototype._parseMixinContent=function(){if(!this.peekKeyword("@content"))return null;var e=this.createNode(H.MixinContent);return this.consumeToken(),this.finish(e)},t.prototype._parseMixinReference=function(){if(!this.peekKeyword("@include"))return null;var e=this.create(rt);this.consumeToken();var t=this._parseIdent([Y.Mixin]);if(!e.setIdentifier(t))return this.finish(e,bt.IdentifierExpected,[i.CurlyR]);if(!this.hasWhitespace()&&this.acceptDelim(".")&&!this.hasWhitespace()){var n=this._parseIdent([Y.Mixin]);if(!n)return this.finish(e,bt.IdentifierExpected,[i.CurlyR]);var r=this.create(dt);t.referenceTypes=[Y.Module],r.setIdentifier(t),e.setIdentifier(n),e.addChild(r)}if(this.accept(i.ParenthesisL)){if(e.getArguments().addChild(this._parseFunctionArgument()))for(;this.accept(i.Comma)&&!this.peek(i.ParenthesisR);)if(!e.getArguments().addChild(this._parseFunctionArgument()))return this.finish(e,bt.ExpressionExpected);if(!this.accept(i.ParenthesisR))return this.finish(e,bt.RightParenthesisExpected)}if(this.peek(i.CurlyL)){var o=this.create(ae);this._parseBody(o,this._parseMixinReferenceBodyStatement.bind(this)),e.setContent(o)}return this.finish(e)},t.prototype._parseMixinReferenceBodyStatement=function(){return this._tryParseKeyframeSelector()||this._parseRuleSetDeclaration()},t.prototype._parseFunctionArgument=function(){var e=this.create(ve),t=this.mark(),n=this._parseVariable();if(n)if(this.accept(i.Colon))e.setIdentifier(n);else{if(this.accept(Vr))return e.setValue(n),this.finish(e);this.restoreAtMark(t)}return e.setValue(this._parseExpr(!0))?(this.accept(Vr),e.addChild(this._parsePrio()),this.finish(e)):null},t.prototype._parseURLArgument=function(){var t=this.mark(),n=e.prototype._parseURLArgument.call(this);if(!n||!this.peek(i.ParenthesisR)){this.restoreAtMark(t);var r=this.create(ne);return r.addChild(this._parseBinaryExpr()),this.finish(r)}return n},t.prototype._parseOperation=function(){if(!this.peek(i.ParenthesisL))return null;var e=this.create(ne);for(this.consumeToken();e.addChild(this._parseListElement());)this.accept(i.Comma);return this.accept(i.ParenthesisR)?this.finish(e):this.finish(e,bt.RightParenthesisExpected)},t.prototype._parseListElement=function(){var e=this.create(at),t=this._parseBinaryExpr();if(!t)return null;if(this.accept(i.Colon)){if(e.setKey(t),!e.setValue(this._parseBinaryExpr()))return this.finish(e,bt.ExpressionExpected)}else e.setValue(t);return this.finish(e)},t.prototype._parseUse=function(){if(!this.peek($r))return null;var e=this.create(Me);if(this.consumeToken(),!e.addChild(this._parseStringLiteral()))return this.finish(e,bt.StringLiteralExpected);if(!this.peek(i.SemiColon)&&!this.peek(i.EOF)){if(!this.peekRegExp(i.Ident,/as|with/))return this.finish(e,bt.UnknownKeyword);if(this.acceptIdent("as")&&!e.setIdentifier(this._parseIdent([Y.Module]))&&!this.acceptDelim("*"))return this.finish(e,bt.IdentifierOrWildcardExpected);if(this.acceptIdent("with")){if(!this.accept(i.ParenthesisL))return this.finish(e,bt.LeftParenthesisExpected,[i.ParenthesisR]);if(!e.getParameters().addChild(this._parseModuleConfigDeclaration()))return this.finish(e,bt.VariableNameExpected);for(;this.accept(i.Comma)&&!this.peek(i.ParenthesisR);)if(!e.getParameters().addChild(this._parseModuleConfigDeclaration()))return this.finish(e,bt.VariableNameExpected);if(!this.accept(i.ParenthesisR))return this.finish(e,bt.RightParenthesisExpected)}}return this.accept(i.SemiColon)||this.accept(i.EOF)?this.finish(e):this.finish(e,bt.SemiColonExpected)},t.prototype._parseModuleConfigDeclaration=function(){var e=this.create(Ne);return e.setIdentifier(this._parseVariable())?this.accept(i.Colon)&&e.setValue(this._parseExpr(!0))?this.finish(e):this.finish(e,bt.VariableValueExpected,[],[i.Comma,i.ParenthesisR]):null},t.prototype._parseForward=function(){if(!this.peek(Br))return null;var e=this.create(Pe);if(this.consumeToken(),!e.addChild(this._parseStringLiteral()))return this.finish(e,bt.StringLiteralExpected);if(!this.peek(i.SemiColon)&&!this.peek(i.EOF)){if(!this.peekRegExp(i.Ident,/as|hide|show/))return this.finish(e,bt.UnknownKeyword);if(this.acceptIdent("as")){var t=this._parseIdent([Y.Forward]);if(!e.setIdentifier(t))return this.finish(e,bt.IdentifierExpected);if(this.hasWhitespace()||!this.acceptDelim("*"))return this.finish(e,bt.WildcardExpected)}if((this.peekIdent("hide")||this.peekIdent("show"))&&!e.addChild(this._parseForwardVisibility()))return this.finish(e,bt.IdentifierOrVariableExpected)}return this.accept(i.SemiColon)||this.accept(i.EOF)?this.finish(e):this.finish(e,bt.SemiColonExpected)},t.prototype._parseForwardVisibility=function(){var e=this.create(_e);for(e.setIdentifier(this._parseIdent());e.addChild(this._parseVariable()||this._parseIdent()););return e.getChildren().length>1?e:null}}(nn),function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),Xr=ut();!function(e){function t(n){var i=e.call(this,"$",n)||this;return Zr(t.scssModuleLoaders),Zr(t.scssModuleBuiltIns),i}Yr(t,e),t.prototype.isImportPathParent=function(t){return t===H.Forward||t===H.Use||e.prototype.isImportPathParent.call(this,t)},t.prototype.getCompletionForImportPath=function(n,i){var r,o=n.getParent().type;return o!==H.Forward&&o!==H.Use||(r=i.items).push.apply(r,t.scssModuleBuiltIns),e.prototype.getCompletionForImportPath.call(this,n,i)},t.prototype.createReplaceFunction=function(){var e=1;return function(n,i){return"\\"+i+": ${"+e+++":"+(t.variableDefaults[i]||"")+"}"}},t.prototype.createFunctionProposals=function(e,t,n,i){for(var r=0,o=e;r<o.length;r++){var s=o[r],a=s.func.replace(/\[?(\$\w+)\]?/g,this.createReplaceFunction()),l={label:s.func.substr(0,s.func.indexOf("(")),detail:s.func,documentation:s.desc,textEdit:wn.replace(this.getCompletionRange(t),a),insertTextFormat:jn.Snippet,kind:Un.Function};n&&(l.sortText="z"),i.items.push(l)}return i},t.prototype.getCompletionsForSelector=function(n,i,r){return this.createFunctionProposals(t.selectorFuncs,null,!0,r),e.prototype.getCompletionsForSelector.call(this,n,i,r)},t.prototype.getTermProposals=function(n,i,r){var o=t.builtInFuncs;return n&&(o=o.filter(function(e){return!e.type||!n.restrictions||-1!==n.restrictions.indexOf(e.type)})),this.createFunctionProposals(o,i,!0,r),e.prototype.getTermProposals.call(this,n,i,r)},t.prototype.getColorProposals=function(n,i,r){return this.createFunctionProposals(t.colorProposals,i,!1,r),e.prototype.getColorProposals.call(this,n,i,r)},t.prototype.getCompletionsForDeclarationProperty=function(t,n){return this.getCompletionForAtDirectives(n),this.getCompletionsForSelector(null,!0,n),e.prototype.getCompletionsForDeclarationProperty.call(this,t,n)},t.prototype.getCompletionsForExtendsReference=function(e,t,n){for(var i=0,r=this.getSymbolContext().findSymbolsAtOffset(this.offset,Y.Rule);i<r.length;i++){var o=r[i],s={label:o.name,textEdit:wn.replace(this.getCompletionRange(t),o.name),kind:Un.Function};n.items.push(s)}return n},t.prototype.getCompletionForAtDirectives=function(e){var n;return(n=e.items).push.apply(n,t.scssAtDirectives),e},t.prototype.getCompletionForTopLevel=function(t){return this.getCompletionForAtDirectives(t),this.getCompletionForModuleLoaders(t),e.prototype.getCompletionForTopLevel.call(this,t),t},t.prototype.getCompletionForModuleLoaders=function(e){var n;return(n=e.items).push.apply(n,t.scssModuleLoaders),e},t.variableDefaults={$red:"1",$green:"2",$blue:"3",$alpha:"1.0",$color:"#000000",$weight:"0.5",$hue:"0",$saturation:"0%",$lightness:"0%",$degrees:"0",$amount:"0",$string:'""',$substring:'"s"',$number:"0",$limit:"1"},t.colorProposals=[{func:"red($color)",desc:Xr("scss.builtin.red","Gets the red component of a color.")},{func:"green($color)",desc:Xr("scss.builtin.green","Gets the green component of a color.")},{func:"blue($color)",desc:Xr("scss.builtin.blue","Gets the blue component of a color.")},{func:"mix($color, $color, [$weight])",desc:Xr("scss.builtin.mix","Mixes two colors together.")},{func:"hue($color)",desc:Xr("scss.builtin.hue","Gets the hue component of a color.")},{func:"saturation($color)",desc:Xr("scss.builtin.saturation","Gets the saturation component of a color.")},{func:"lightness($color)",desc:Xr("scss.builtin.lightness","Gets the lightness component of a color.")},{func:"adjust-hue($color, $degrees)",desc:Xr("scss.builtin.adjust-hue","Changes the hue of a color.")},{func:"lighten($color, $amount)",desc:Xr("scss.builtin.lighten","Makes a color lighter.")},{func:"darken($color, $amount)",desc:Xr("scss.builtin.darken","Makes a color darker.")},{func:"saturate($color, $amount)",desc:Xr("scss.builtin.saturate","Makes a color more saturated.")},{func:"desaturate($color, $amount)",desc:Xr("scss.builtin.desaturate","Makes a color less saturated.")},{func:"grayscale($color)",desc:Xr("scss.builtin.grayscale","Converts a color to grayscale.")},{func:"complement($color)",desc:Xr("scss.builtin.complement","Returns the complement of a color.")},{func:"invert($color)",desc:Xr("scss.builtin.invert","Returns the inverse of a color.")},{func:"alpha($color)",desc:Xr("scss.builtin.alpha","Gets the opacity component of a color.")},{func:"opacity($color)",desc:"Gets the alpha component (opacity) of a color."},{func:"rgba($color, $alpha)",desc:Xr("scss.builtin.rgba","Changes the alpha component for a color.")},{func:"opacify($color, $amount)",desc:Xr("scss.builtin.opacify","Makes a color more opaque.")},{func:"fade-in($color, $amount)",desc:Xr("scss.builtin.fade-in","Makes a color more opaque.")},{func:"transparentize($color, $amount)",desc:Xr("scss.builtin.transparentize","Makes a color more transparent.")},{func:"fade-out($color, $amount)",desc:Xr("scss.builtin.fade-out","Makes a color more transparent.")},{func:"adjust-color($color, [$red], [$green], [$blue], [$hue], [$saturation], [$lightness], [$alpha])",desc:Xr("scss.builtin.adjust-color","Increases or decreases one or more components of a color.")},{func:"scale-color($color, [$red], [$green], [$blue], [$saturation], [$lightness], [$alpha])",desc:Xr("scss.builtin.scale-color","Fluidly scales one or more properties of a color.")},{func:"change-color($color, [$red], [$green], [$blue], [$hue], [$saturation], [$lightness], [$alpha])",desc:Xr("scss.builtin.change-color","Changes one or more properties of a color.")},{func:"ie-hex-str($color)",desc:Xr("scss.builtin.ie-hex-str","Converts a color into the format understood by IE filters.")}],t.selectorFuncs=[{func:"selector-nest($selectors…)",desc:Xr("scss.builtin.selector-nest","Nests selector beneath one another like they would be nested in the stylesheet.")},{func:"selector-append($selectors…)",desc:Xr("scss.builtin.selector-append","Appends selectors to one another without spaces in between.")},{func:"selector-extend($selector, $extendee, $extender)",desc:Xr("scss.builtin.selector-extend","Extends $extendee with $extender within $selector.")},{func:"selector-replace($selector, $original, $replacement)",desc:Xr("scss.builtin.selector-replace","Replaces $original with $replacement within $selector.")},{func:"selector-unify($selector1, $selector2)",desc:Xr("scss.builtin.selector-unify","Unifies two selectors to produce a selector that matches elements matched by both.")},{func:"is-superselector($super, $sub)",desc:Xr("scss.builtin.is-superselector","Returns whether $super matches all the elements $sub does, and possibly more.")},{func:"simple-selectors($selector)",desc:Xr("scss.builtin.simple-selectors","Returns the simple selectors that comprise a compound selector.")},{func:"selector-parse($selector)",desc:Xr("scss.builtin.selector-parse","Parses a selector into the format returned by &.")}],t.builtInFuncs=[{func:"unquote($string)",desc:Xr("scss.builtin.unquote","Removes quotes from a string.")},{func:"quote($string)",desc:Xr("scss.builtin.quote","Adds quotes to a string.")},{func:"str-length($string)",desc:Xr("scss.builtin.str-length","Returns the number of characters in a string.")},{func:"str-insert($string, $insert, $index)",desc:Xr("scss.builtin.str-insert","Inserts $insert into $string at $index.")},{func:"str-index($string, $substring)",desc:Xr("scss.builtin.str-index","Returns the index of the first occurance of $substring in $string.")},{func:"str-slice($string, $start-at, [$end-at])",desc:Xr("scss.builtin.str-slice","Extracts a substring from $string.")},{func:"to-upper-case($string)",desc:Xr("scss.builtin.to-upper-case","Converts a string to upper case.")},{func:"to-lower-case($string)",desc:Xr("scss.builtin.to-lower-case","Converts a string to lower case.")},{func:"percentage($number)",desc:Xr("scss.builtin.percentage","Converts a unitless number to a percentage."),type:"percentage"},{func:"round($number)",desc:Xr("scss.builtin.round","Rounds a number to the nearest whole number.")},{func:"ceil($number)",desc:Xr("scss.builtin.ceil","Rounds a number up to the next whole number.")},{func:"floor($number)",desc:Xr("scss.builtin.floor","Rounds a number down to the previous whole number.")},{func:"abs($number)",desc:Xr("scss.builtin.abs","Returns the absolute value of a number.")},{func:"min($numbers)",desc:Xr("scss.builtin.min","Finds the minimum of several numbers.")},{func:"max($numbers)",desc:Xr("scss.builtin.max","Finds the maximum of several numbers.")},{func:"random([$limit])",desc:Xr("scss.builtin.random","Returns a random number.")},{func:"length($list)",desc:Xr("scss.builtin.length","Returns the length of a list.")},{func:"nth($list, $n)",desc:Xr("scss.builtin.nth","Returns a specific item in a list.")},{func:"set-nth($list, $n, $value)",desc:Xr("scss.builtin.set-nth","Replaces the nth item in a list.")},{func:"join($list1, $list2, [$separator])",desc:Xr("scss.builtin.join","Joins together two lists into one.")},{func:"append($list1, $val, [$separator])",desc:Xr("scss.builtin.append","Appends a single value onto the end of a list.")},{func:"zip($lists)",desc:Xr("scss.builtin.zip","Combines several lists into a single multidimensional list.")},{func:"index($list, $value)",desc:Xr("scss.builtin.index","Returns the position of a value within a list.")},{func:"list-separator(#list)",desc:Xr("scss.builtin.list-separator","Returns the separator of a list.")},{func:"map-get($map, $key)",desc:Xr("scss.builtin.map-get","Returns the value in a map associated with a given key.")},{func:"map-merge($map1, $map2)",desc:Xr("scss.builtin.map-merge","Merges two maps together into a new map.")},{func:"map-remove($map, $keys)",desc:Xr("scss.builtin.map-remove","Returns a new map with keys removed.")},{func:"map-keys($map)",desc:Xr("scss.builtin.map-keys","Returns a list of all keys in a map.")},{func:"map-values($map)",desc:Xr("scss.builtin.map-values","Returns a list of all values in a map.")},{func:"map-has-key($map, $key)",desc:Xr("scss.builtin.map-has-key","Returns whether a map has a value associated with a given key.")},{func:"keywords($args)",desc:Xr("scss.builtin.keywords","Returns the keywords passed to a function that takes variable arguments.")},{func:"feature-exists($feature)",desc:Xr("scss.builtin.feature-exists","Returns whether a feature exists in the current Sass runtime.")},{func:"variable-exists($name)",desc:Xr("scss.builtin.variable-exists","Returns whether a variable with the given name exists in the current scope.")},{func:"global-variable-exists($name)",desc:Xr("scss.builtin.global-variable-exists","Returns whether a variable with the given name exists in the global scope.")},{func:"function-exists($name)",desc:Xr("scss.builtin.function-exists","Returns whether a function with the given name exists.")},{func:"mixin-exists($name)",desc:Xr("scss.builtin.mixin-exists","Returns whether a mixin with the given name exists.")},{func:"inspect($value)",desc:Xr("scss.builtin.inspect","Returns the string representation of a value as it would be represented in Sass.")},{func:"type-of($value)",desc:Xr("scss.builtin.type-of","Returns the type of a value.")},{func:"unit($number)",desc:Xr("scss.builtin.unit","Returns the unit(s) associated with a number.")},{func:"unitless($number)",desc:Xr("scss.builtin.unitless","Returns whether a number has units.")},{func:"comparable($number1, $number2)",desc:Xr("scss.builtin.comparable","Returns whether two numbers can be added, subtracted, or compared.")},{func:"call($name, $args…)",desc:Xr("scss.builtin.call","Dynamically calls a Sass function.")}],t.scssAtDirectives=[{label:"@extend",documentation:Xr("scss.builtin.@extend","Inherits the styles of another selector."),kind:Un.Keyword},{label:"@at-root",documentation:Xr("scss.builtin.@at-root","Causes one or more rules to be emitted at the root of the document."),kind:Un.Keyword},{label:"@debug",documentation:Xr("scss.builtin.@debug","Prints the value of an expression to the standard error output stream. Useful for debugging complicated Sass files."),kind:Un.Keyword},{label:"@warn",documentation:Xr("scss.builtin.@warn","Prints the value of an expression to the standard error output stream. Useful for libraries that need to warn users of deprecations or recovering from minor mixin usage mistakes. Warnings can be turned off with the `--quiet` command-line option or the `:quiet` Sass option."),kind:Un.Keyword},{label:"@error",documentation:Xr("scss.builtin.@error","Throws the value of an expression as a fatal error with stack trace. Useful for validating arguments to mixins and functions."),kind:Un.Keyword},{label:"@if",documentation:Xr("scss.builtin.@if","Includes the body if the expression does not evaluate to `false` or `null`."),insertText:"@if ${1:expr} {\n\t$0\n}",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@for",documentation:Xr("scss.builtin.@for","For loop that repeatedly outputs a set of styles for each `$var` in the `from/through` or `from/to` clause."),insertText:"@for \\$${1:var} from ${2:start} ${3|to,through|} ${4:end} {\n\t$0\n}",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@each",documentation:Xr("scss.builtin.@each","Each loop that sets `$var` to each item in the list or map, then outputs the styles it contains using that value of `$var`."),insertText:"@each \\$${1:var} in ${2:list} {\n\t$0\n}",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@while",documentation:Xr("scss.builtin.@while","While loop that takes an expression and repeatedly outputs the nested styles until the statement evaluates to `false`."),insertText:"@while ${1:condition} {\n\t$0\n}",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@mixin",documentation:Xr("scss.builtin.@mixin","Defines styles that can be re-used throughout the stylesheet with `@include`."),insertText:"@mixin ${1:name} {\n\t$0\n}",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@include",documentation:Xr("scss.builtin.@include","Includes the styles defined by another mixin into the current rule."),kind:Un.Keyword},{label:"@function",documentation:Xr("scss.builtin.@function","Defines complex operations that can be re-used throughout stylesheets."),kind:Un.Keyword}],t.scssModuleLoaders=[{label:"@use",documentation:Xr("scss.builtin.@use","Loads mixins, functions, and variables from other Sass stylesheets as 'modules', and combines CSS from multiple stylesheets together."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/at-rules/use"}],insertText:"@use '$0';",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@forward",documentation:Xr("scss.builtin.@forward","Loads a Sass stylesheet and makes its mixins, functions, and variables available when this stylesheet is loaded with the @use rule."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/at-rules/forward"}],insertText:"@forward '$0';",insertTextFormat:jn.Snippet,kind:Un.Keyword}],t.scssModuleBuiltIns=[{label:"sass:math",documentation:Xr("scss.builtin.sass:math","Provides functions that operate on numbers."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/math"}],kind:Un.Module},{label:"sass:string",documentation:Xr("scss.builtin.sass:string","Makes it easy to combine, search, or split apart strings."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/string"}],kind:Un.Module},{label:"sass:color",documentation:Xr("scss.builtin.sass:color","Generates new colors based on existing ones, making it easy to build color themes."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/color"}],kind:Un.Module},{label:"sass:list",documentation:Xr("scss.builtin.sass:list","Lets you access and modify values in lists."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/list"}],kind:Un.Module},{label:"sass:map",documentation:Xr("scss.builtin.sass:map","Makes it possible to look up the value associated with a key in a map, and much more."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/map"}],kind:Un.Module},{label:"sass:selector",documentation:Xr("scss.builtin.sass:selector","Provides access to Sass’s powerful selector engine."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/selector"}],kind:Un.Module},{label:"sass:meta",documentation:Xr("scss.builtin.sass:meta","Exposes the details of Sass’s inner workings."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/meta"}],kind:Un.Module}]}(Si);function Zr(e){e.forEach(function(e){if(e.documentation&&e.references&&e.references.length>0){var t="string"==typeof e.documentation?{kind:"markdown",value:e.documentation}:{kind:"markdown",value:e.documentation.value};t.value+="\n\n",t.value+=e.references.map(function(e){return"["+e.name+"]("+e.url+")"}).join(" | "),e.documentation=t}})}var Qr=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),eo="/".charCodeAt(0),to="\n".charCodeAt(0),no="\r".charCodeAt(0),io="\f".charCodeAt(0),ro="`".charCodeAt(0),oo=".".charCodeAt(0),so=i.CustomToken,ao=so++,lo=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Qr(t,e),t.prototype.scanNext=function(t){var n=this.escapedJavaScript();return null!==n?this.finishToken(t,n):this.stream.advanceIfChars([oo,oo,oo])?this.finishToken(t,ao):e.prototype.scanNext.call(this,t)},t.prototype.comment=function(){return!!e.prototype.comment.call(this)||!(this.inURL||!this.stream.advanceIfChars([eo,eo]))&&(this.stream.advanceWhileChar(function(e){switch(e){case to:case no:case io:return!1;default:return!0}}),!0)},t.prototype.escapedJavaScript=function(){return this.stream.peekChar()===ro?(this.stream.advance(1),this.stream.advanceWhileChar(function(e){return e!==ro}),this.stream.advanceIfChar(ro)?i.EscapedJavaScript:i.BadEscapedJavaScript):null},t}(X),co=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),po=(function(e){function t(){return e.call(this,new lo)||this}co(t,e),t.prototype._parseStylesheetStatement=function(t){return void 0===t&&(t=!1),this.peek(i.AtKeyword)?this._parseVariableDeclaration()||this._parsePlugin()||e.prototype._parseStylesheetAtStatement.call(this,t):this._tryParseMixinDeclaration()||this._tryParseMixinReference()||this._parseFunction()||this._parseRuleset(!0)},t.prototype._parseImport=function(){if(!this.peekKeyword("@import")&&!this.peekKeyword("@import-once"))return null;var e=this.create(Ie);if(this.consumeToken(),this.accept(i.ParenthesisL)){if(!this.accept(i.Ident))return this.finish(e,bt.IdentifierExpected,[i.SemiColon]);do{if(!this.accept(i.Comma))break}while(this.accept(i.Ident));if(!this.accept(i.ParenthesisR))return this.finish(e,bt.RightParenthesisExpected,[i.SemiColon])}return e.addChild(this._parseURILiteral())||e.addChild(this._parseStringLiteral())?(this.peek(i.SemiColon)||this.peek(i.EOF)||e.setMedialist(this._parseMediaQueryList()),this.finish(e)):this.finish(e,bt.URIOrStringExpected,[i.SemiColon])},t.prototype._parsePlugin=function(){if(!this.peekKeyword("@plugin"))return null;var e=this.createNode(H.Plugin);return this.consumeToken(),e.addChild(this._parseStringLiteral())?this.accept(i.SemiColon)?this.finish(e):this.finish(e,bt.SemiColonExpected):this.finish(e,bt.StringLiteralExpected)},t.prototype._parseMediaQuery=function(t){var n=e.prototype._parseMediaQuery.call(this,t);if(!n){var i=this.create(je);return i.addChild(this._parseVariable())?this.finish(i):null}return n},t.prototype._parseMediaDeclaration=function(e){return void 0===e&&(e=!1),this._tryParseRuleset(e)||this._tryToParseDeclaration()||this._tryParseMixinDeclaration()||this._tryParseMixinReference()||this._parseDetachedRuleSetMixin()||this._parseStylesheetStatement(e)},t.prototype._parseMediaFeatureName=function(){return this._parseIdent()||this._parseVariable()},t.prototype._parseVariableDeclaration=function(e){void 0===e&&(e=[]);var t=this.create(et),n=this.mark();if(!t.setVariable(this._parseVariable(!0)))return null;if(!this.accept(i.Colon))return this.restoreAtMark(n),null;if(this.prevToken&&(t.colonPosition=this.prevToken.offset),t.setValue(this._parseDetachedRuleSet()))t.needsSemicolon=!1;else if(!t.setValue(this._parseExpr()))return this.finish(t,bt.VariableValueExpected,[],e);return t.addChild(this._parsePrio()),this.peek(i.SemiColon)&&(t.semicolonPosition=this.token.offset),this.finish(t)},t.prototype._parseDetachedRuleSet=function(){var e=this.mark();if(this.peekDelim("#")||this.peekDelim(".")){if(this.consumeToken(),this.hasWhitespace()||!this.accept(i.ParenthesisL))return this.restoreAtMark(e),null;var t=this.create(ot);if(t.getParameters().addChild(this._parseMixinParameter()))for(;(this.accept(i.Comma)||this.accept(i.SemiColon))&&!this.peek(i.ParenthesisR);)t.getParameters().addChild(this._parseMixinParameter())||this.markError(t,bt.IdentifierExpected,[],[i.ParenthesisR]);if(!this.accept(i.ParenthesisR))return this.restoreAtMark(e),null}if(!this.peek(i.CurlyL))return null;var n=this.create(ae);return this._parseBody(n,this._parseDetachedRuleSetBody.bind(this)),this.finish(n)},t.prototype._parseDetachedRuleSetBody=function(){return this._tryParseKeyframeSelector()||this._parseRuleSetDeclaration()},t.prototype._addLookupChildren=function(e){if(!e.addChild(this._parseLookupValue()))return!1;for(var t=!1;this.peek(i.BracketL)&&(t=!0),e.addChild(this._parseLookupValue());)t=!1;return!t},t.prototype._parseLookupValue=function(){var e=this.create(ne),t=this.mark();return this.accept(i.BracketL)&&((e.addChild(this._parseVariable(!1,!0))||e.addChild(this._parsePropertyIdentifier()))&&this.accept(i.BracketR)||this.accept(i.BracketR))?e:(this.restoreAtMark(t),null)},t.prototype._parseVariable=function(e,t){void 0===e&&(e=!1),void 0===t&&(t=!1);var n=!e&&this.peekDelim("$");if(!this.peekDelim("@")&&!n&&!this.peek(i.AtKeyword))return null;for(var r=this.create(nt),o=this.mark();this.acceptDelim("@")||!e&&this.acceptDelim("$");)if(this.hasWhitespace())return this.restoreAtMark(o),null;return(this.accept(i.AtKeyword)||this.accept(i.Ident))&&(t||!this.peek(i.BracketL)||this._addLookupChildren(r))?r:(this.restoreAtMark(o),null)},t.prototype._parseTerm=function(){var t=e.prototype._parseTerm.call(this);return t||((t=this.create(Ge)).setExpression(this._parseVariable())||t.setExpression(this._parseEscaped())||t.setExpression(this._tryParseMixinReference(!1))?this.finish(t):null)},t.prototype._parseEscaped=function(){if(this.peek(i.EscapedJavaScript)||this.peek(i.BadEscapedJavaScript)){var e=this.createNode(H.EscapedValue);return this.consumeToken(),this.finish(e)}if(this.peekDelim("~")){e=this.createNode(H.EscapedValue);return this.consumeToken(),this.accept(i.String)||this.accept(i.EscapedJavaScript)?this.finish(e):this.finish(e,bt.TermExpected)}return null},t.prototype._parseOperator=function(){var t=this._parseGuardOperator();return t||e.prototype._parseOperator.call(this)},t.prototype._parseGuardOperator=function(){if(this.peekDelim(">")){var e=this.createNode(H.Operator);return this.consumeToken(),this.acceptDelim("="),e}if(this.peekDelim("=")){e=this.createNode(H.Operator);return this.consumeToken(),this.acceptDelim("<"),e}if(this.peekDelim("<")){e=this.createNode(H.Operator);return this.consumeToken(),this.acceptDelim("="),e}return null},t.prototype._parseRuleSetDeclaration=function(){return this.peek(i.AtKeyword)?this._parseKeyframe()||this._parseMedia(!0)||this._parseImport()||this._parseSupports(!0)||this._parseDetachedRuleSetMixin()||this._parseVariableDeclaration()||this._parseUnknownAtRule():this._tryParseMixinDeclaration()||this._tryParseRuleset(!0)||this._tryParseMixinReference()||this._parseFunction()||this._parseExtend()||e.prototype._parseRuleSetDeclaration.call(this)},t.prototype._parseKeyframeIdent=function(){return this._parseIdent([Y.Keyframe])||this._parseVariable()},t.prototype._parseKeyframeSelector=function(){return this._parseDetachedRuleSetMixin()||e.prototype._parseKeyframeSelector.call(this)},t.prototype._parseSimpleSelectorBody=function(){return this._parseSelectorCombinator()||e.prototype._parseSimpleSelectorBody.call(this)},t.prototype._parseSelector=function(e){var t=this.create(ce),n=!1;for(e&&(n=t.addChild(this._parseCombinator()));t.addChild(this._parseSimpleSelector());){n=!0;var r=this.mark();if(t.addChild(this._parseGuard())&&this.peek(i.CurlyL))break;this.restoreAtMark(r),t.addChild(this._parseCombinator())}return n?this.finish(t):null},t.prototype._parseSelectorCombinator=function(){if(this.peekDelim("&")){var e=this.createNode(H.SelectorCombinator);for(this.consumeToken();!this.hasWhitespace()&&(this.acceptDelim("-")||this.accept(i.Num)||this.accept(i.Dimension)||e.addChild(this._parseIdent())||this.acceptDelim("&")););return this.finish(e)}return null},t.prototype._parseSelectorIdent=function(){if(!this.peekInterpolatedIdent())return null;var e=this.createNode(H.SelectorInterpolation);return this._acceptInterpolatedIdent(e)?this.finish(e):null},t.prototype._parsePropertyIdentifier=function(e){void 0===e&&(e=!1);var t=/^[\w-]+/;if(!this.peekInterpolatedIdent()&&!this.peekRegExp(this.token.type,t))return null;var n=this.mark(),i=this.create(re);i.isCustomProperty=this.acceptDelim("-")&&this.acceptDelim("-");return(e?i.isCustomProperty?i.addChild(this._parseIdent()):i.addChild(this._parseRegexp(t)):i.isCustomProperty?this._acceptInterpolatedIdent(i):this._acceptInterpolatedIdent(i,t))?(e||this.hasWhitespace()||(this.acceptDelim("+"),this.hasWhitespace()||this.acceptIdent("_")),this.finish(i)):(this.restoreAtMark(n),null)},t.prototype.peekInterpolatedIdent=function(){return this.peek(i.Ident)||this.peekDelim("@")||this.peekDelim("$")||this.peekDelim("-")},t.prototype._acceptInterpolatedIdent=function(e,t){for(var n=this,r=!1,o=function(){var e=n.mark();return n.acceptDelim("-")&&(n.hasWhitespace()||n.acceptDelim("-"),n.hasWhitespace())?(n.restoreAtMark(e),null):n._parseInterpolation()},s=t?function(){return n.acceptRegexp(t)}:function(){return n.accept(i.Ident)};(s()||e.addChild(this._parseInterpolation()||this.try(o)))&&(r=!0,!this.hasWhitespace()););return r},t.prototype._parseInterpolation=function(){var e=this.mark();if(this.peekDelim("@")||this.peekDelim("$")){var t=this.createNode(H.Interpolation);return this.consumeToken(),this.hasWhitespace()||!this.accept(i.CurlyL)?(this.restoreAtMark(e),null):t.addChild(this._parseIdent())?this.accept(i.CurlyR)?this.finish(t):this.finish(t,bt.RightCurlyExpected):this.finish(t,bt.IdentifierExpected)}return null},t.prototype._tryParseMixinDeclaration=function(){var e=this.mark(),t=this.create(ot);if(!t.setIdentifier(this._parseMixinDeclarationIdentifier())||!this.accept(i.ParenthesisL))return this.restoreAtMark(e),null;if(t.getParameters().addChild(this._parseMixinParameter()))for(;(this.accept(i.Comma)||this.accept(i.SemiColon))&&!this.peek(i.ParenthesisR);)t.getParameters().addChild(this._parseMixinParameter())||this.markError(t,bt.IdentifierExpected,[],[i.ParenthesisR]);return this.accept(i.ParenthesisR)?(t.setGuard(this._parseGuard()),this.peek(i.CurlyL)?this._parseBody(t,this._parseMixInBodyDeclaration.bind(this)):(this.restoreAtMark(e),null)):(this.restoreAtMark(e),null)},t.prototype._parseMixInBodyDeclaration=function(){return this._parseFontFace()||this._parseRuleSetDeclaration()},t.prototype._parseMixinDeclarationIdentifier=function(){var e;if(this.peekDelim("#")||this.peekDelim(".")){if(e=this.create(re),this.consumeToken(),this.hasWhitespace()||!e.addChild(this._parseIdent()))return null}else{if(!this.peek(i.Hash))return null;e=this.create(re),this.consumeToken()}return e.referenceTypes=[Y.Mixin],this.finish(e)},t.prototype._parsePseudo=function(){if(!this.peek(i.Colon))return null;var t=this.mark(),n=this.create(it);return this.consumeToken(),this.acceptIdent("extend")?this._completeExtends(n):(this.restoreAtMark(t),e.prototype._parsePseudo.call(this))},t.prototype._parseExtend=function(){if(!this.peekDelim("&"))return null;var e=this.mark(),t=this.create(it);return this.consumeToken(),!this.hasWhitespace()&&this.accept(i.Colon)&&this.acceptIdent("extend")?this._completeExtends(t):(this.restoreAtMark(e),null)},t.prototype._completeExtends=function(e){if(!this.accept(i.ParenthesisL))return this.finish(e,bt.LeftParenthesisExpected);var t=e.getSelectors();if(!t.addChild(this._parseSelector(!0)))return this.finish(e,bt.SelectorExpected);for(;this.accept(i.Comma);)if(!t.addChild(this._parseSelector(!0)))return this.finish(e,bt.SelectorExpected);return this.accept(i.ParenthesisR)?this.finish(e):this.finish(e,bt.RightParenthesisExpected)},t.prototype._parseDetachedRuleSetMixin=function(){if(!this.peek(i.AtKeyword))return null;var e=this.mark(),t=this.create(rt);return!t.addChild(this._parseVariable(!0))||!this.hasWhitespace()&&this.accept(i.ParenthesisL)?this.accept(i.ParenthesisR)?this.finish(t):this.finish(t,bt.RightParenthesisExpected):(this.restoreAtMark(e),null)},t.prototype._tryParseMixinReference=function(e){void 0===e&&(e=!0);for(var t=this.mark(),n=this.create(rt),r=this._parseMixinDeclarationIdentifier();r;){this.acceptDelim(">");var o=this._parseMixinDeclarationIdentifier();if(!o)break;n.getNamespaces().addChild(r),r=o}if(!n.setIdentifier(r))return this.restoreAtMark(t),null;var s=!1;if(!this.hasWhitespace()&&this.accept(i.ParenthesisL)){if(s=!0,n.getArguments().addChild(this._parseMixinArgument()))for(;(this.accept(i.Comma)||this.accept(i.SemiColon))&&!this.peek(i.ParenthesisR);)if(!n.getArguments().addChild(this._parseMixinArgument()))return this.finish(n,bt.ExpressionExpected);if(!this.accept(i.ParenthesisR))return this.finish(n,bt.RightParenthesisExpected);r.referenceTypes=[Y.Mixin]}else r.referenceTypes=[Y.Mixin,Y.Rule];return this.peek(i.BracketL)?e||this._addLookupChildren(n):n.addChild(this._parsePrio()),s||this.peek(i.SemiColon)||this.peek(i.CurlyR)||this.peek(i.EOF)?this.finish(n):(this.restoreAtMark(t),null)},t.prototype._parseMixinArgument=function(){var e=this.create(ve),t=this.mark(),n=this._parseVariable();return n&&(this.accept(i.Colon)?e.setIdentifier(n):this.restoreAtMark(t)),e.setValue(this._parseDetachedRuleSet()||this._parseExpr(!0))?this.finish(e):(this.restoreAtMark(t),null)},t.prototype._parseMixinParameter=function(){var e=this.create(ye);if(this.peekKeyword("@rest")){var t=this.create(ne);return this.consumeToken(),this.accept(ao)?(e.setIdentifier(this.finish(t)),this.finish(e)):this.finish(e,bt.DotExpected,[],[i.Comma,i.ParenthesisR])}if(this.peek(ao)){var n=this.create(ne);return this.consumeToken(),e.setIdentifier(this.finish(n)),this.finish(e)}var r=!1;return e.setIdentifier(this._parseVariable())&&(this.accept(i.Colon),r=!0),e.setDefaultValue(this._parseDetachedRuleSet()||this._parseExpr(!0))||r?this.finish(e):null},t.prototype._parseGuard=function(){if(!this.peekIdent("when"))return null;var e=this.create(lt);if(this.consumeToken(),e.isNegated=this.acceptIdent("not"),!e.getConditions().addChild(this._parseGuardCondition()))return this.finish(e,bt.ConditionExpected);for(;this.acceptIdent("and")||this.accept(i.Comma);)if(!e.getConditions().addChild(this._parseGuardCondition()))return this.finish(e,bt.ConditionExpected);return this.finish(e)},t.prototype._parseGuardCondition=function(){if(!this.peek(i.ParenthesisL))return null;var e=this.create(ct);return this.consumeToken(),e.addChild(this._parseExpr()),this.accept(i.ParenthesisR)?this.finish(e):this.finish(e,bt.RightParenthesisExpected)},t.prototype._parseFunction=function(){var e=this.mark(),t=this.create(be);if(!t.setIdentifier(this._parseFunctionIdentifier()))return null;if(this.hasWhitespace()||!this.accept(i.ParenthesisL))return this.restoreAtMark(e),null;if(t.getArguments().addChild(this._parseMixinArgument()))for(;(this.accept(i.Comma)||this.accept(i.SemiColon))&&!this.peek(i.ParenthesisR);)if(!t.getArguments().addChild(this._parseMixinArgument()))return this.finish(t,bt.ExpressionExpected);return this.accept(i.ParenthesisR)?this.finish(t):this.finish(t,bt.RightParenthesisExpected)},t.prototype._parseFunctionIdentifier=function(){if(this.peekDelim("%")){var t=this.create(re);return t.referenceTypes=[Y.Function],this.consumeToken(),this.finish(t)}return e.prototype._parseFunctionIdentifier.call(this)},t.prototype._parseURLArgument=function(){var t=this.mark(),n=e.prototype._parseURLArgument.call(this);if(!n||!this.peek(i.ParenthesisR)){this.restoreAtMark(t);var r=this.create(ne);return r.addChild(this._parseBinaryExpr()),this.finish(r)}return n}}(nn),function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),ho=ut();!function(e){function t(t){return e.call(this,"@",t)||this}po(t,e),t.prototype.createFunctionProposals=function(e,t,n,i){for(var r=0,o=e;r<o.length;r++){var s=o[r],a={label:s.name,detail:s.example,documentation:s.description,textEdit:wn.replace(this.getCompletionRange(t),s.name+"($0)"),insertTextFormat:jn.Snippet,kind:Un.Function};n&&(a.sortText="z"),i.items.push(a)}return i},t.prototype.getTermProposals=function(n,i,r){var o=t.builtInProposals;return n&&(o=o.filter(function(e){return!e.type||!n.restrictions||-1!==n.restrictions.indexOf(e.type)})),this.createFunctionProposals(o,i,!0,r),e.prototype.getTermProposals.call(this,n,i,r)},t.prototype.getColorProposals=function(n,i,r){return this.createFunctionProposals(t.colorProposals,i,!1,r),e.prototype.getColorProposals.call(this,n,i,r)},t.prototype.getCompletionsForDeclarationProperty=function(t,n){return this.getCompletionsForSelector(null,!0,n),e.prototype.getCompletionsForDeclarationProperty.call(this,t,n)},t.builtInProposals=[{name:"if",example:"if(condition, trueValue [, falseValue]);",description:ho("less.builtin.if","returns one of two values depending on a condition.")},{name:"boolean",example:"boolean(condition);",description:ho("less.builtin.boolean",'"store" a boolean test for later evaluation in a guard or if().')},{name:"length",example:"length(@list);",description:ho("less.builtin.length","returns the number of elements in a value list")},{name:"extract",example:"extract(@list, index);",description:ho("less.builtin.extract","returns a value at the specified position in the list")},{name:"range",example:"range([start, ] end [, step]);",description:ho("less.builtin.range","generate a list spanning a range of values")},{name:"each",example:"each(@list, ruleset);",description:ho("less.builtin.each","bind the evaluation of a ruleset to each member of a list.")},{name:"escape",example:"escape(@string);",description:ho("less.builtin.escape","URL encodes a string")},{name:"e",example:"e(@string);",description:ho("less.builtin.e","escape string content")},{name:"replace",example:"replace(@string, @pattern, @replacement[, @flags]);",description:ho("less.builtin.replace","string replace")},{name:"unit",example:"unit(@dimension, [@unit: '']);",description:ho("less.builtin.unit","remove or change the unit of a dimension")},{name:"color",example:"color(@string);",description:ho("less.builtin.color","parses a string to a color"),type:"color"},{name:"convert",example:"convert(@value, unit);",description:ho("less.builtin.convert","converts numbers from one type into another")},{name:"data-uri",example:"data-uri([mimetype,] url);",description:ho("less.builtin.data-uri","inlines a resource and falls back to `url()`"),type:"url"},{name:"abs",description:ho("less.builtin.abs","absolute value of a number"),example:"abs(number);"},{name:"acos",description:ho("less.builtin.acos","arccosine - inverse of cosine function"),example:"acos(number);"},{name:"asin",description:ho("less.builtin.asin","arcsine - inverse of sine function"),example:"asin(number);"},{name:"ceil",example:"ceil(@number);",description:ho("less.builtin.ceil","rounds up to an integer")},{name:"cos",description:ho("less.builtin.cos","cosine function"),example:"cos(number);"},{name:"floor",description:ho("less.builtin.floor","rounds down to an integer"),example:"floor(@number);"},{name:"percentage",description:ho("less.builtin.percentage","converts to a %, e.g. 0.5 > 50%"),example:"percentage(@number);",type:"percentage"},{name:"round",description:ho("less.builtin.round","rounds a number to a number of places"),example:"round(number, [places: 0]);"},{name:"sqrt",description:ho("less.builtin.sqrt","calculates square root of a number"),example:"sqrt(number);"},{name:"sin",description:ho("less.builtin.sin","sine function"),example:"sin(number);"},{name:"tan",description:ho("less.builtin.tan","tangent function"),example:"tan(number);"},{name:"atan",description:ho("less.builtin.atan","arctangent - inverse of tangent function"),example:"atan(number);"},{name:"pi",description:ho("less.builtin.pi","returns pi"),example:"pi();"},{name:"pow",description:ho("less.builtin.pow","first argument raised to the power of the second argument"),example:"pow(@base, @exponent);"},{name:"mod",description:ho("less.builtin.mod","first argument modulus second argument"),example:"mod(number, number);"},{name:"min",description:ho("less.builtin.min","returns the lowest of one or more values"),example:"min(@x, @y);"},{name:"max",description:ho("less.builtin.max","returns the lowest of one or more values"),example:"max(@x, @y);"}],t.colorProposals=[{name:"argb",example:"argb(@color);",description:ho("less.builtin.argb","creates a #AARRGGBB")},{name:"hsl",example:"hsl(@hue, @saturation, @lightness);",description:ho("less.builtin.hsl","creates a color")},{name:"hsla",example:"hsla(@hue, @saturation, @lightness, @alpha);",description:ho("less.builtin.hsla","creates a color")},{name:"hsv",example:"hsv(@hue, @saturation, @value);",description:ho("less.builtin.hsv","creates a color")},{name:"hsva",example:"hsva(@hue, @saturation, @value, @alpha);",description:ho("less.builtin.hsva","creates a color")},{name:"hue",example:"hue(@color);",description:ho("less.builtin.hue","returns the `hue` channel of `@color` in the HSL space")},{name:"saturation",example:"saturation(@color);",description:ho("less.builtin.saturation","returns the `saturation` channel of `@color` in the HSL space")},{name:"lightness",example:"lightness(@color);",description:ho("less.builtin.lightness","returns the `lightness` channel of `@color` in the HSL space")},{name:"hsvhue",example:"hsvhue(@color);",description:ho("less.builtin.hsvhue","returns the `hue` channel of `@color` in the HSV space")},{name:"hsvsaturation",example:"hsvsaturation(@color);",description:ho("less.builtin.hsvsaturation","returns the `saturation` channel of `@color` in the HSV space")},{name:"hsvvalue",example:"hsvvalue(@color);",description:ho("less.builtin.hsvvalue","returns the `value` channel of `@color` in the HSV space")},{name:"red",example:"red(@color);",description:ho("less.builtin.red","returns the `red` channel of `@color`")},{name:"green",example:"green(@color);",description:ho("less.builtin.green","returns the `green` channel of `@color`")},{name:"blue",example:"blue(@color);",description:ho("less.builtin.blue","returns the `blue` channel of `@color`")},{name:"alpha",example:"alpha(@color);",description:ho("less.builtin.alpha","returns the `alpha` channel of `@color`")},{name:"luma",example:"luma(@color);",description:ho("less.builtin.luma","returns the `luma` value (perceptual brightness) of `@color`")},{name:"saturate",example:"saturate(@color, 10%);",description:ho("less.builtin.saturate","return `@color` 10% points more saturated")},{name:"desaturate",example:"desaturate(@color, 10%);",description:ho("less.builtin.desaturate","return `@color` 10% points less saturated")},{name:"lighten",example:"lighten(@color, 10%);",description:ho("less.builtin.lighten","return `@color` 10% points lighter")},{name:"darken",example:"darken(@color, 10%);",description:ho("less.builtin.darken","return `@color` 10% points darker")},{name:"fadein",example:"fadein(@color, 10%);",description:ho("less.builtin.fadein","return `@color` 10% points less transparent")},{name:"fadeout",example:"fadeout(@color, 10%);",description:ho("less.builtin.fadeout","return `@color` 10% points more transparent")},{name:"fade",example:"fade(@color, 50%);",description:ho("less.builtin.fade","return `@color` with 50% transparency")},{name:"spin",example:"spin(@color, 10);",description:ho("less.builtin.spin","return `@color` with a 10 degree larger in hue")},{name:"mix",example:"mix(@color1, @color2, [@weight: 50%]);",description:ho("less.builtin.mix","return a mix of `@color1` and `@color2`")},{name:"greyscale",example:"greyscale(@color);",description:ho("less.builtin.greyscale","returns a grey, 100% desaturated color")},{name:"contrast",example:"contrast(@color1, [@darkcolor: black], [@lightcolor: white], [@threshold: 43%]);",description:ho("less.builtin.contrast","return `@darkcolor` if `@color1 is> 43% luma` otherwise return `@lightcolor`, see notes")},{name:"multiply",example:"multiply(@color1, @color2);"},{name:"screen",example:"screen(@color1, @color2);"},{name:"overlay",example:"overlay(@color1, @color2);"},{name:"softlight",example:"softlight(@color1, @color2);"},{name:"hardlight",example:"hardlight(@color1, @color2);"},{name:"difference",example:"difference(@color1, @color2);"},{name:"exclusion",example:"exclusion(@color1, @color2);"},{name:"average",example:"average(@color1, @color2);"},{name:"negation",example:"negation(@color1, @color2);"}]}(Si);var mo=n("L0yG"),uo=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),fo=function(){return(fo=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)},go=function(e,t,n,i){return new(n||(n=Promise))(function(r,o){function s(e){try{l(i.next(e))}catch(e){o(e)}}function a(e){try{l(i.throw(e))}catch(e){o(e)}}function l(e){e.done?r(e.value):function(e){return e instanceof n?e:new n(function(t){t(e)})}(e.value).then(s,a)}l((i=i.apply(e,t||[])).next())})},bo=function(e,t){var n,i,r,o,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,i=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(r=(r=s.trys).length>0&&r[r.length-1])&&(6===o[0]||2===o[0])){s=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){s.label=o[1];break}if(6===o[0]&&s.label<r[1]){s.label=r[1],r=o;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(o);break}r[2]&&s.ops.pop(),s.trys.pop();continue}o=t.call(e,s)}catch(e){o=[6,e],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}};!function(e){function t(t){var n=e.call(this)||this;return n.fileSystemProvider=t,n}uo(t,e),t.prototype.isRawStringDocumentLinkNode=function(t){return e.prototype.isRawStringDocumentLinkNode.call(this,t)||t.type===H.Use||t.type===H.Forward},t.prototype.findDocumentLinks2=function(e,t,n){return go(this,void 0,void 0,function(){function i(e){return go(this,void 0,void 0,function(){var t;return bo(this,function(n){switch(n.label){case 0:if(!o)return[2,!1];n.label=1;case 1:return n.trys.push([1,3,,4]),[4,o.stat(e)];case 2:return(t=n.sent()).type===ui.Unknown&&-1===t.size?[2,!1]:[2,!0];case 3:return n.sent(),[2,!1];case 4:return[2]}})})}var r,o,s,a,l,c,d,p;return bo(this,function(h){switch(h.label){case 0:if(r=this.findDocumentLinks(e,t,n),o=this.fileSystemProvider,s=[],!o)return[3,9];a=0,h.label=1;case 1:if(!(a<r.length))return[3,8];if(!(l=r[a].target))return[3,7];c=null;try{c=mo.a.parse(l)}catch(e){if(e instanceof URIError)return[3,7];throw e}return(d=function(e){if(""!==e.path&&!e.path.endsWith(".scss")&&!e.path.endsWith(".css")){if(e.path.endsWith("/"))return[e.with({path:e.path+"index.scss"}).toString(),e.with({path:e.path+"_index.scss"}).toString()];var t=e.path.split("/"),n=t[t.length-1],i=e.path.slice(0,-n.length);if(n.startsWith("_"))return e.path.endsWith(".scss")?void 0:[e.with({path:e.path+".scss"}).toString()];var r=n+".scss",o=function(t){return e.with({path:i+t}).toString()};return[o(r),o("_"+r),o(r.slice(0,-5)+"/index.scss"),o(r.slice(0,-5)+"/_index.scss"),o(r.slice(0,-5)+".css")]}}(c))?[3,3]:[4,i(l)];case 2:return h.sent()&&s.push(r[a]),[3,7];case 3:p=0,h.label=4;case 4:return p<d.length?[4,i(d[p])]:[3,7];case 5:if(h.sent())return s.push(fo(fo({},r[a]),{target:d[p]})),[3,7];h.label=6;case 6:return p++,[3,4];case 7:return a++,[3,1];case 8:return[3,10];case 9:s.push.apply(s,r),h.label=10;case 10:return[2,s]}})})}}(Gi);var yo=monaco.Uri,vo=monaco.Range,wo=function(){function e(e,t,n){var i=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var r=function(e){var t,n=e.getModeId();n===i._languageId&&(i._listener[e.uri.toString()]=e.onDidChangeContent(function(){window.clearTimeout(t),t=window.setTimeout(function(){return i._doValidate(e.uri,n)},500)}),i._doValidate(e.uri,n))},o=function(e){monaco.editor.setModelMarkers(e,i._languageId,[]);var t=e.uri.toString(),n=i._listener[t];n&&(n.dispose(),delete i._listener[t])};this._disposables.push(monaco.editor.onDidCreateModel(r)),this._disposables.push(monaco.editor.onWillDisposeModel(o)),this._disposables.push(monaco.editor.onDidChangeModelLanguage(function(e){o(e.model),r(e.model)})),n.onDidChange(function(e){monaco.editor.getModels().forEach(function(e){e.getModeId()===i._languageId&&(o(e),r(e))})}),this._disposables.push({dispose:function(){for(var e in i._listener)i._listener[e].dispose()}}),monaco.editor.getModels().forEach(r)}return e.prototype.dispose=function(){this._disposables.forEach(function(e){return e&&e.dispose()}),this._disposables=[]},e.prototype._doValidate=function(e,t){this._worker(e).then(function(t){return t.doValidation(e.toString())}).then(function(n){var i=n.map(function(e){return function(e,t){var n="number"==typeof t.code?String(t.code):t.code;return{severity:function(e){switch(e){case gn.Error:return monaco.MarkerSeverity.Error;case gn.Warning:return monaco.MarkerSeverity.Warning;case gn.Information:return monaco.MarkerSeverity.Info;case gn.Hint:return monaco.MarkerSeverity.Hint;default:return monaco.MarkerSeverity.Info}}(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:n,source:t.source}}(0,e)}),r=monaco.editor.getModel(e);r.getModeId()===t&&monaco.editor.setModelMarkers(r,t,i)}).then(void 0,function(e){console.error(e)})},e}();function xo(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function So(e){if(e)return new monaco.Range(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function ko(e){if(e)return{range:So(e.range),text:e.newText}}var Co=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[" ",":"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.doComplete(r.toString(),xo(t))}).then(function(n){if(n){var i=e.getWordUntilPosition(t),r=new vo(t.lineNumber,i.startColumn,t.lineNumber,i.endColumn),o=n.items.map(function(e){var t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,range:r,kind:function(e){var t=monaco.languages.CompletionItemKind;switch(e){case Un.Text:return t.Text;case Un.Method:return t.Method;case Un.Function:return t.Function;case Un.Constructor:return t.Constructor;case Un.Field:return t.Field;case Un.Variable:return t.Variable;case Un.Class:return t.Class;case Un.Interface:return t.Interface;case Un.Module:return t.Module;case Un.Property:return t.Property;case Un.Unit:return t.Unit;case Un.Value:return t.Value;case Un.Enum:return t.Enum;case Un.Keyword:return t.Keyword;case Un.Snippet:return t.Snippet;case Un.Color:return t.Color;case Un.File:return t.File;case Un.Reference:return t.Reference}return t.Property}(e.kind)};return e.textEdit&&(t.range=So(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(ko)),e.insertTextFormat===jn.Snippet&&(t.insertTextRules=monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet),t});return{isIncomplete:n.isIncomplete,suggestions:o}}})},e}();function Fo(e){return"string"==typeof e?{value:e}:function(e){return e&&"object"==typeof e&&"string"==typeof e.kind}(e)?"plaintext"===e.kind?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}:{value:e.value}:{value:"```"+e.language+"\n"+e.value+"\n```\n"}}var zo=function(){function e(e){this._worker=e}return e.prototype.provideHover=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.doHover(i.toString(),xo(t))}).then(function(e){if(e)return{range:So(e.range),contents:function(e){if(e)return Array.isArray(e)?e.map(Fo):[Fo(e)]}(e.contents)}})},e}();var Do=function(){function e(e){this._worker=e}return e.prototype.provideDocumentHighlights=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.findDocumentHighlights(i.toString(),xo(t))}).then(function(e){if(e)return e.map(function(e){return{range:So(e.range),kind:function(e){switch(e){case Hn.Read:return monaco.languages.DocumentHighlightKind.Read;case Hn.Write:return monaco.languages.DocumentHighlightKind.Write;case Hn.Text:return monaco.languages.DocumentHighlightKind.Text}return monaco.languages.DocumentHighlightKind.Text}(e.kind)}})})},e}();function To(e){return{uri:yo.parse(e.uri),range:So(e.range)}}var Ro=function(){function e(e){this._worker=e}return e.prototype.provideDefinition=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.findDefinition(i.toString(),xo(t))}).then(function(e){if(e)return[To(e)]})},e}(),Eo=function(){function e(e){this._worker=e}return e.prototype.provideReferences=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.findReferences(r.toString(),xo(t))}).then(function(e){if(e)return e.map(To)})},e}();var Io=function(){function e(e){this._worker=e}return e.prototype.provideRenameEdits=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.doRename(r.toString(),xo(t),n)}).then(function(e){return function(e){if(e&&e.changes){var t=[];for(var n in e.changes)for(var i=yo.parse(n),r=0,o=e.changes[n];r<o.length;r++){var s=o[r];t.push({resource:i,edit:{range:So(s.range),text:s.newText}})}return{edits:t}}}(e)})},e}();var Mo=function(){function e(e){this._worker=e}return e.prototype.provideDocumentSymbols=function(e,t){var n=e.uri;return this._worker(n).then(function(e){return e.findDocumentSymbols(n.toString())}).then(function(e){if(e)return e.map(function(e){return{name:e.name,detail:"",containerName:e.containerName,kind:function(e){var t=monaco.languages.SymbolKind;switch(e){case Xn.File:return t.Array;case Xn.Module:return t.Module;case Xn.Namespace:return t.Namespace;case Xn.Package:return t.Package;case Xn.Class:return t.Class;case Xn.Method:return t.Method;case Xn.Property:return t.Property;case Xn.Field:return t.Field;case Xn.Constructor:return t.Constructor;case Xn.Enum:return t.Enum;case Xn.Interface:return t.Interface;case Xn.Function:return t.Function;case Xn.Variable:return t.Variable;case Xn.Constant:return t.Constant;case Xn.String:return t.String;case Xn.Number:return t.Number;case Xn.Boolean:return t.Boolean;case Xn.Array:return t.Array}return t.Function}(e.kind),tags:[],range:So(e.location.range),selectionRange:So(e.location.range)}})})},e}(),No=function(){function e(e){this._worker=e}return e.prototype.provideDocumentColors=function(e,t){var n=e.uri;return this._worker(n).then(function(e){return e.findDocumentColors(n.toString())}).then(function(e){if(e)return e.map(function(e){return{color:e.color,range:So(e.range)}})})},e.prototype.provideColorPresentations=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.getColorPresentations(i.toString(),t.color,function(e){if(e)return{start:{line:e.startLineNumber-1,character:e.startColumn-1},end:{line:e.endLineNumber-1,character:e.endColumn-1}}}(t.range))}).then(function(e){if(e)return e.map(function(e){var t={label:e.label};return e.textEdit&&(t.textEdit=ko(e.textEdit)),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(ko)),t})})},e}(),Po=function(){function e(e){this._worker=e}return e.prototype.provideFoldingRanges=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.getFoldingRanges(i.toString(),t)}).then(function(e){if(e)return e.map(function(e){var t={start:e.startLine+1,end:e.endLine+1};return void 0!==e.kind&&(t.kind=function(e){switch(e){case mn.Comment:return monaco.languages.FoldingRangeKind.Comment;case mn.Imports:return monaco.languages.FoldingRangeKind.Imports;case mn.Region:return monaco.languages.FoldingRangeKind.Region}}(e.kind)),t})})},e}();var _o=function(){function e(e){this._worker=e}return e.prototype.provideSelectionRanges=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.getSelectionRanges(i.toString(),t.map(xo))}).then(function(e){if(e)return e.map(function(e){for(var t=[];e;)t.push({range:So(e.range)}),e=e.parent;return t})})},e}();function Ao(e){var t=[],n=[],i=new r(e);t.push(i);var o=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return i.getLanguageServiceWorker.apply(i,e)};return function(){var t=e.languageId,i=e.modeConfiguration;Oo(n),i.completionItems&&n.push(monaco.languages.registerCompletionItemProvider(t,new Co(o))),i.hovers&&n.push(monaco.languages.registerHoverProvider(t,new zo(o))),i.documentHighlights&&n.push(monaco.languages.registerDocumentHighlightProvider(t,new Do(o))),i.definitions&&n.push(monaco.languages.registerDefinitionProvider(t,new Ro(o))),i.references&&n.push(monaco.languages.registerReferenceProvider(t,new Eo(o))),i.documentSymbols&&n.push(monaco.languages.registerDocumentSymbolProvider(t,new Mo(o))),i.rename&&n.push(monaco.languages.registerRenameProvider(t,new Io(o))),i.colors&&n.push(monaco.languages.registerColorProvider(t,new No(o))),i.foldingRanges&&n.push(monaco.languages.registerFoldingRangeProvider(t,new Po(o))),i.diagnostics&&n.push(new wo(t,o,e)),i.selectionRanges&&n.push(monaco.languages.registerSelectionRangeProvider(t,new _o(o)))}(),t.push(Wo(n)),Wo(t)}function Wo(e){return{dispose:function(){return Oo(e)}}}function Oo(e){for(;e.length;)e.pop().dispose()}n.d(t,"setupMode",function(){return Ao})},L0yG:function(e,t,n){"use strict";(function(e){n.d(t,"a",function(){return m});var i,r,o=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();if("object"==typeof e)r="win32"===e.platform;else if("object"==typeof navigator){var s=navigator.userAgent;r=s.indexOf("Windows")>=0}var a=/^\w[\w\d+.-]*$/,l=/^\//,c=/^\/\//;var d="",p="/",h=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,m=function(){function e(e,t,n,i,r,o){void 0===o&&(o=!1),"object"==typeof e?(this.scheme=e.scheme||d,this.authority=e.authority||d,this.path=e.path||d,this.query=e.query||d,this.fragment=e.fragment||d):(this.scheme=function(e,t){return e||t?e:"file"}(e,o),this.authority=t||d,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==p&&(t=p+t):t=p}return t}(this.scheme,n||d),this.query=i||d,this.fragment=r||d,function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!a.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!l.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(c.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,o))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return v(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,n=e.authority,i=e.path,r=e.query,o=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=d),void 0===n?n=this.authority:null===n&&(n=d),void 0===i?i=this.path:null===i&&(i=d),void 0===r?r=this.query:null===r&&(r=d),void 0===o?o=this.fragment:null===o&&(o=d),t===this.scheme&&n===this.authority&&i===this.path&&r===this.query&&o===this.fragment?this:new f(t,n,i,r,o)},e.parse=function(e,t){void 0===t&&(t=!1);var n=h.exec(e);return n?new f(n[2]||d,decodeURIComponent(n[4]||d),decodeURIComponent(n[5]||d),decodeURIComponent(n[7]||d),decodeURIComponent(n[9]||d),t):new f(d,d,d,d,d)},e.file=function(e){var t=d;if(r&&(e=e.replace(/\\/g,p)),e[0]===p&&e[1]===p){var n=e.indexOf(p,2);-1===n?(t=e.substring(2),e=p):(t=e.substring(2,n),e=e.substring(n)||p)}return new f("file",t,e,d,d)},e.from=function(e){return new f(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),w(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var n=new f(t);return n._formatted=t.external,n._fsPath=t._sep===u?t.fsPath:null,n}return t},e}(),u=r?1:void 0,f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return o(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=v(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?w(this,!0):(this._formatted||(this._formatted=w(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=u),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(m),g=((i={})[58]="%3A",i[47]="%2F",i[63]="%3F",i[35]="%23",i[91]="%5B",i[93]="%5D",i[64]="%40",i[33]="%21",i[36]="%24",i[38]="%26",i[39]="%27",i[40]="%28",i[41]="%29",i[42]="%2A",i[43]="%2B",i[44]="%2C",i[59]="%3B",i[61]="%3D",i[32]="%20",i);function b(e,t){for(var n=void 0,i=-1,r=0;r<e.length;r++){var o=e.charCodeAt(r);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o)-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),void 0!==n&&(n+=e.charAt(r));else{void 0===n&&(n=e.substr(0,r));var s=g[o];void 0!==s?(-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),n+=s):-1===i&&(i=r)}}return-1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function y(e){for(var t=void 0,n=0;n<e.length;n++){var i=e.charCodeAt(n);35===i||63===i?(void 0===t&&(t=e.substr(0,n)),t+=g[i]):void 0!==t&&(t+=e[n])}return void 0!==t?t:e}function v(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,r&&(t=t.replace(/\//g,"\\")),t}function w(e,t){var n=t?y:b,i="",r=e.scheme,o=e.authority,s=e.path,a=e.query,l=e.fragment;if(r&&(i+=r,i+=":"),(o||"file"===r)&&(i+=p,i+=p),o){var c=o.indexOf("@");if(-1!==c){var d=o.substr(0,c);o=o.substr(c+1),-1===(c=d.indexOf(":"))?i+=n(d,!1):(i+=n(d.substr(0,c),!1),i+=":",i+=n(d.substr(c+1),!1)),i+="@"}-1===(c=(o=o.toLowerCase()).indexOf(":"))?i+=n(o,!1):(i+=n(o.substr(0,c),!1),i+=o.substr(c))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2))(h=s.charCodeAt(1))>=65&&h<=90&&(s="/"+String.fromCharCode(h+32)+":"+s.substr(3));else if(s.length>=2&&58===s.charCodeAt(1)){var h;(h=s.charCodeAt(0))>=65&&h<=90&&(s=String.fromCharCode(h+32)+":"+s.substr(2))}i+=n(s,!0)}return a&&(i+="?",i+=n(a,!1)),l&&(i+="#",i+=t?l:b(l,!1)),i}}).call(this,n("TDnd"))}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-63e1"],{JB92:function(e,t,n){"use strict";n.r(t);var i,r=function(){function e(e){var t=this;this._defaults=e,this._worker=null,this._idleCheckInterval=window.setInterval(function(){return t._checkIfIdle()},3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(function(){return t._stopWorker()})}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()},e.prototype._checkIfIdle=function(){this._worker&&(Date.now()-this._lastUsedTime>12e4&&this._stopWorker())},e.prototype._getClient=function(){return this._lastUsedTime=Date.now(),this._client||(this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/css/cssWorker",label:this._defaults.languageId,createData:{languageSettings:this._defaults.diagnosticsOptions,languageId:this._defaults.languageId}}),this._client=this._worker.getProxy()),this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];return this._getClient().then(function(t){e=t}).then(function(e){return t._worker.withSyncedResources(n)}).then(function(t){return e})},e}();!function(e){e[e.Ident=0]="Ident",e[e.AtKeyword=1]="AtKeyword",e[e.String=2]="String",e[e.BadString=3]="BadString",e[e.UnquotedString=4]="UnquotedString",e[e.Hash=5]="Hash",e[e.Num=6]="Num",e[e.Percentage=7]="Percentage",e[e.Dimension=8]="Dimension",e[e.UnicodeRange=9]="UnicodeRange",e[e.CDO=10]="CDO",e[e.CDC=11]="CDC",e[e.Colon=12]="Colon",e[e.SemiColon=13]="SemiColon",e[e.CurlyL=14]="CurlyL",e[e.CurlyR=15]="CurlyR",e[e.ParenthesisL=16]="ParenthesisL",e[e.ParenthesisR=17]="ParenthesisR",e[e.BracketL=18]="BracketL",e[e.BracketR=19]="BracketR",e[e.Whitespace=20]="Whitespace",e[e.Includes=21]="Includes",e[e.Dashmatch=22]="Dashmatch",e[e.SubstringOperator=23]="SubstringOperator",e[e.PrefixOperator=24]="PrefixOperator",e[e.SuffixOperator=25]="SuffixOperator",e[e.Delim=26]="Delim",e[e.EMS=27]="EMS",e[e.EXS=28]="EXS",e[e.Length=29]="Length",e[e.Angle=30]="Angle",e[e.Time=31]="Time",e[e.Freq=32]="Freq",e[e.Exclamation=33]="Exclamation",e[e.Resolution=34]="Resolution",e[e.Comma=35]="Comma",e[e.Charset=36]="Charset",e[e.EscapedJavaScript=37]="EscapedJavaScript",e[e.BadEscapedJavaScript=38]="BadEscapedJavaScript",e[e.Comment=39]="Comment",e[e.SingleLineComment=40]="SingleLineComment",e[e.EOF=41]="EOF",e[e.CustomToken=42]="CustomToken"}(i||(i={}));var o=function(){function e(e){this.source=e,this.len=e.length,this.position=0}return e.prototype.substring=function(e,t){return void 0===t&&(t=this.position),this.source.substring(e,t)},e.prototype.eos=function(){return this.len<=this.position},e.prototype.pos=function(){return this.position},e.prototype.goBackTo=function(e){this.position=e},e.prototype.goBack=function(e){this.position-=e},e.prototype.advance=function(e){this.position+=e},e.prototype.nextChar=function(){return this.source.charCodeAt(this.position++)||0},e.prototype.peekChar=function(e){return void 0===e&&(e=0),this.source.charCodeAt(this.position+e)||0},e.prototype.lookbackChar=function(e){return void 0===e&&(e=0),this.source.charCodeAt(this.position-e)||0},e.prototype.advanceIfChar=function(e){return e===this.source.charCodeAt(this.position)&&(this.position++,!0)},e.prototype.advanceIfChars=function(e){if(this.position+e.length>this.source.length)return!1;for(var t=0;t<e.length;t++)if(this.source.charCodeAt(this.position+t)!==e[t])return!1;return this.advance(t),!0},e.prototype.advanceWhileChar=function(e){for(var t=this.position;this.position<this.len&&e(this.source.charCodeAt(this.position));)this.position++;return this.position-t},e}(),s="a".charCodeAt(0),a="f".charCodeAt(0),l="z".charCodeAt(0),c="A".charCodeAt(0),d="F".charCodeAt(0),p="Z".charCodeAt(0),h="0".charCodeAt(0),m="9".charCodeAt(0),u="~".charCodeAt(0),f="^".charCodeAt(0),g="=".charCodeAt(0),b="|".charCodeAt(0),y="-".charCodeAt(0),v="_".charCodeAt(0),w="%".charCodeAt(0),x="*".charCodeAt(0),S="(".charCodeAt(0),k=")".charCodeAt(0),C="<".charCodeAt(0),F=">".charCodeAt(0),z="@".charCodeAt(0),D="#".charCodeAt(0),T="$".charCodeAt(0),R="\\".charCodeAt(0),E="/".charCodeAt(0),I="\n".charCodeAt(0),M="\r".charCodeAt(0),N="\f".charCodeAt(0),P='"'.charCodeAt(0),_="'".charCodeAt(0),A=" ".charCodeAt(0),W="\t".charCodeAt(0),O=";".charCodeAt(0),L=":".charCodeAt(0),U="{".charCodeAt(0),j="}".charCodeAt(0),V="[".charCodeAt(0),B="]".charCodeAt(0),$=",".charCodeAt(0),q=".".charCodeAt(0),K="!".charCodeAt(0),G={};G[O]=i.SemiColon,G[L]=i.Colon,G[U]=i.CurlyL,G[j]=i.CurlyR,G[B]=i.BracketR,G[V]=i.BracketL,G[S]=i.ParenthesisL,G[k]=i.ParenthesisR,G[$]=i.Comma;var J={};J.em=i.EMS,J.ex=i.EXS,J.px=i.Length,J.cm=i.Length,J.mm=i.Length,J.in=i.Length,J.pt=i.Length,J.pc=i.Length,J.deg=i.Angle,J.rad=i.Angle,J.grad=i.Angle,J.ms=i.Time,J.s=i.Time,J.hz=i.Freq,J.khz=i.Freq,J["%"]=i.Percentage,J.fr=i.Percentage,J.dpi=i.Resolution,J.dpcm=i.Resolution;var H,Y,X=function(){function e(){this.stream=new o(""),this.ignoreComment=!0,this.ignoreWhitespace=!0,this.inURL=!1}return e.prototype.setSource=function(e){this.stream=new o(e)},e.prototype.finishToken=function(e,t,n){return{offset:e,len:this.stream.pos()-e,type:t,text:n||this.stream.substring(e)}},e.prototype.substring=function(e,t){return this.stream.substring(e,e+t)},e.prototype.pos=function(){return this.stream.pos()},e.prototype.goBackTo=function(e){this.stream.goBackTo(e)},e.prototype.scanUnquotedString=function(){var e=this.stream.pos(),t=[];return this._unquotedString(t)?this.finishToken(e,i.UnquotedString,t.join("")):null},e.prototype.scan=function(){var e=this.trivia();if(null!==e)return e;var t=this.stream.pos();return this.stream.eos()?this.finishToken(t,i.EOF):this.scanNext(t)},e.prototype.scanNext=function(e){if(this.stream.advanceIfChars([C,K,y,y]))return this.finishToken(e,i.CDO);if(this.stream.advanceIfChars([y,y,F]))return this.finishToken(e,i.CDC);var t=[];if(this.ident(t))return this.finishToken(e,i.Ident,t.join(""));if(this.stream.advanceIfChar(z)){if(t=["@"],this._name(t)){var n=t.join("");return"@charset"===n?this.finishToken(e,i.Charset,n):this.finishToken(e,i.AtKeyword,n)}return this.finishToken(e,i.Delim)}if(this.stream.advanceIfChar(D))return t=["#"],this._name(t)?this.finishToken(e,i.Hash,t.join("")):this.finishToken(e,i.Delim);if(this.stream.advanceIfChar(K))return this.finishToken(e,i.Exclamation);if(this._number()){var r=this.stream.pos();if(t=[this.stream.substring(e,r)],this.stream.advanceIfChar(w))return this.finishToken(e,i.Percentage);if(this.ident(t)){var o=this.stream.substring(r).toLowerCase(),s=J[o];return void 0!==s?this.finishToken(e,s,t.join("")):this.finishToken(e,i.Dimension,t.join(""))}return this.finishToken(e,i.Num)}t=[];var a=this._string(t);return null!==a?this.finishToken(e,a,t.join("")):void 0!==(a=G[this.stream.peekChar()])?(this.stream.advance(1),this.finishToken(e,a)):this.stream.peekChar(0)===u&&this.stream.peekChar(1)===g?(this.stream.advance(2),this.finishToken(e,i.Includes)):this.stream.peekChar(0)===b&&this.stream.peekChar(1)===g?(this.stream.advance(2),this.finishToken(e,i.Dashmatch)):this.stream.peekChar(0)===x&&this.stream.peekChar(1)===g?(this.stream.advance(2),this.finishToken(e,i.SubstringOperator)):this.stream.peekChar(0)===f&&this.stream.peekChar(1)===g?(this.stream.advance(2),this.finishToken(e,i.PrefixOperator)):this.stream.peekChar(0)===T&&this.stream.peekChar(1)===g?(this.stream.advance(2),this.finishToken(e,i.SuffixOperator)):(this.stream.nextChar(),this.finishToken(e,i.Delim))},e.prototype._matchWordAnyCase=function(e){var t=0;return this.stream.advanceWhileChar(function(n){var i=e[t]===n||e[t+1]===n;return i&&(t+=2),i}),t===e.length||(this.stream.goBack(t/2),!1)},e.prototype.trivia=function(){for(;;){var e=this.stream.pos();if(this._whitespace()){if(!this.ignoreWhitespace)return this.finishToken(e,i.Whitespace)}else{if(!this.comment())return null;if(!this.ignoreComment)return this.finishToken(e,i.Comment)}}},e.prototype.comment=function(){if(this.stream.advanceIfChars([E,x])){var e=!1,t=!1;return this.stream.advanceWhileChar(function(n){return t&&n===E?(e=!0,!1):(t=n===x,!0)}),e&&this.stream.advance(1),!0}return!1},e.prototype._number=function(){var e,t=0;return this.stream.peekChar()===q&&(t=1),(e=this.stream.peekChar(t))>=h&&e<=m&&(this.stream.advance(t+1),this.stream.advanceWhileChar(function(e){return e>=h&&e<=m||0===t&&e===q}),!0)},e.prototype._newline=function(e){var t=this.stream.peekChar();switch(t){case M:case N:case I:return this.stream.advance(1),e.push(String.fromCharCode(t)),t===M&&this.stream.advanceIfChar(I)&&e.push("\n"),!0}return!1},e.prototype._escape=function(e,t){var n=this.stream.peekChar();if(n===R){this.stream.advance(1),n=this.stream.peekChar();for(var i=0;i<6&&(n>=h&&n<=m||n>=s&&n<=a||n>=c&&n<=d);)this.stream.advance(1),n=this.stream.peekChar(),i++;if(i>0){try{var r=parseInt(this.stream.substring(this.stream.pos()-i),16);r&&e.push(String.fromCharCode(r))}catch(e){}return n===A||n===W?this.stream.advance(1):this._newline([]),!0}if(n!==M&&n!==N&&n!==I)return this.stream.advance(1),e.push(String.fromCharCode(n)),!0;if(t)return this._newline(e)}return!1},e.prototype._stringChar=function(e,t){var n=this.stream.peekChar();return 0!==n&&n!==e&&n!==R&&n!==M&&n!==N&&n!==I&&(this.stream.advance(1),t.push(String.fromCharCode(n)),!0)},e.prototype._string=function(e){if(this.stream.peekChar()===_||this.stream.peekChar()===P){var t=this.stream.nextChar();for(e.push(String.fromCharCode(t));this._stringChar(t,e)||this._escape(e,!0););return this.stream.peekChar()===t?(this.stream.nextChar(),e.push(String.fromCharCode(t)),i.String):i.BadString}return null},e.prototype._unquotedChar=function(e){var t=this.stream.peekChar();return 0!==t&&t!==R&&t!==_&&t!==P&&t!==S&&t!==k&&t!==A&&t!==W&&t!==I&&t!==N&&t!==M&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e.prototype._unquotedString=function(e){for(var t=!1;this._unquotedChar(e)||this._escape(e);)t=!0;return t},e.prototype._whitespace=function(){return this.stream.advanceWhileChar(function(e){return e===A||e===W||e===I||e===N||e===M})>0},e.prototype._name=function(e){for(var t=!1;this._identChar(e)||this._escape(e);)t=!0;return t},e.prototype.ident=function(e){var t=this.stream.pos();if(this._minus(e)&&this._minus(e)){if(this._identFirstChar(e)||this._escape(e)){for(;this._identChar(e)||this._escape(e););return!0}}else if(this._identFirstChar(e)||this._escape(e)){for(;this._identChar(e)||this._escape(e););return!0}return this.stream.goBackTo(t),!1},e.prototype._identFirstChar=function(e){var t=this.stream.peekChar();return(t===v||t>=s&&t<=l||t>=c&&t<=p||t>=128&&t<=65535)&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e.prototype._minus=function(e){var t=this.stream.peekChar();return t===y&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e.prototype._identChar=function(e){var t=this.stream.peekChar();return(t===v||t===y||t>=s&&t<=l||t>=c&&t<=p||t>=h&&t<=m||t>=128&&t<=65535)&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e}(),Z=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function Q(e,t){var n=null;return!e||t<e.offset||t>e.end?null:(e.accept(function(e){return-1===e.offset&&-1===e.length||e.offset<=t&&e.end>=t&&(n?e.length<=n.length&&(n=e):n=e,!0)}),n)}function ee(e,t){for(var n=Q(e,t),i=[];n;)i.unshift(n),n=n.parent;return i}!function(e){e[e.Undefined=0]="Undefined",e[e.Identifier=1]="Identifier",e[e.Stylesheet=2]="Stylesheet",e[e.Ruleset=3]="Ruleset",e[e.Selector=4]="Selector",e[e.SimpleSelector=5]="SimpleSelector",e[e.SelectorInterpolation=6]="SelectorInterpolation",e[e.SelectorCombinator=7]="SelectorCombinator",e[e.SelectorCombinatorParent=8]="SelectorCombinatorParent",e[e.SelectorCombinatorSibling=9]="SelectorCombinatorSibling",e[e.SelectorCombinatorAllSiblings=10]="SelectorCombinatorAllSiblings",e[e.SelectorCombinatorShadowPiercingDescendant=11]="SelectorCombinatorShadowPiercingDescendant",e[e.Page=12]="Page",e[e.PageBoxMarginBox=13]="PageBoxMarginBox",e[e.ClassSelector=14]="ClassSelector",e[e.IdentifierSelector=15]="IdentifierSelector",e[e.ElementNameSelector=16]="ElementNameSelector",e[e.PseudoSelector=17]="PseudoSelector",e[e.AttributeSelector=18]="AttributeSelector",e[e.Declaration=19]="Declaration",e[e.Declarations=20]="Declarations",e[e.Property=21]="Property",e[e.Expression=22]="Expression",e[e.BinaryExpression=23]="BinaryExpression",e[e.Term=24]="Term",e[e.Operator=25]="Operator",e[e.Value=26]="Value",e[e.StringLiteral=27]="StringLiteral",e[e.URILiteral=28]="URILiteral",e[e.EscapedValue=29]="EscapedValue",e[e.Function=30]="Function",e[e.NumericValue=31]="NumericValue",e[e.HexColorValue=32]="HexColorValue",e[e.MixinDeclaration=33]="MixinDeclaration",e[e.MixinReference=34]="MixinReference",e[e.VariableName=35]="VariableName",e[e.VariableDeclaration=36]="VariableDeclaration",e[e.Prio=37]="Prio",e[e.Interpolation=38]="Interpolation",e[e.NestedProperties=39]="NestedProperties",e[e.ExtendsReference=40]="ExtendsReference",e[e.SelectorPlaceholder=41]="SelectorPlaceholder",e[e.Debug=42]="Debug",e[e.If=43]="If",e[e.Else=44]="Else",e[e.For=45]="For",e[e.Each=46]="Each",e[e.While=47]="While",e[e.MixinContent=48]="MixinContent",e[e.Media=49]="Media",e[e.Keyframe=50]="Keyframe",e[e.FontFace=51]="FontFace",e[e.Import=52]="Import",e[e.Namespace=53]="Namespace",e[e.Invocation=54]="Invocation",e[e.FunctionDeclaration=55]="FunctionDeclaration",e[e.ReturnStatement=56]="ReturnStatement",e[e.MediaQuery=57]="MediaQuery",e[e.FunctionParameter=58]="FunctionParameter",e[e.FunctionArgument=59]="FunctionArgument",e[e.KeyframeSelector=60]="KeyframeSelector",e[e.ViewPort=61]="ViewPort",e[e.Document=62]="Document",e[e.AtApplyRule=63]="AtApplyRule",e[e.CustomPropertyDeclaration=64]="CustomPropertyDeclaration",e[e.CustomPropertySet=65]="CustomPropertySet",e[e.ListEntry=66]="ListEntry",e[e.Supports=67]="Supports",e[e.SupportsCondition=68]="SupportsCondition",e[e.NamespacePrefix=69]="NamespacePrefix",e[e.GridLine=70]="GridLine",e[e.Plugin=71]="Plugin",e[e.UnknownAtRule=72]="UnknownAtRule",e[e.Use=73]="Use",e[e.ModuleConfiguration=74]="ModuleConfiguration",e[e.Forward=75]="Forward",e[e.ForwardVisibility=76]="ForwardVisibility",e[e.Module=77]="Module"}(H||(H={})),function(e){e[e.Mixin=0]="Mixin",e[e.Rule=1]="Rule",e[e.Variable=2]="Variable",e[e.Function=3]="Function",e[e.Keyframe=4]="Keyframe",e[e.Unknown=5]="Unknown",e[e.Module=6]="Module",e[e.Forward=7]="Forward",e[e.ForwardVisibility=8]="ForwardVisibility"}(Y||(Y={}));var te,ne=function(){function e(e,t,n){void 0===e&&(e=-1),void 0===t&&(t=-1),this.parent=null,this.offset=e,this.length=t,n&&(this.nodeType=n)}return Object.defineProperty(e.prototype,"end",{get:function(){return this.offset+this.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"type",{get:function(){return this.nodeType||H.Undefined},set:function(e){this.nodeType=e},enumerable:!0,configurable:!0}),e.prototype.getTextProvider=function(){for(var e=this;e&&!e.textProvider;)e=e.parent;return e?e.textProvider:function(){return"unknown"}},e.prototype.getText=function(){return this.getTextProvider()(this.offset,this.length)},e.prototype.matches=function(e){return this.length===e.length&&this.getTextProvider()(this.offset,this.length)===e},e.prototype.startsWith=function(e){return this.length>=e.length&&this.getTextProvider()(this.offset,e.length)===e},e.prototype.endsWith=function(e){return this.length>=e.length&&this.getTextProvider()(this.end-e.length,e.length)===e},e.prototype.accept=function(e){if(e(this)&&this.children)for(var t=0,n=this.children;t<n.length;t++){n[t].accept(e)}},e.prototype.acceptVisitor=function(e){this.accept(e.visitNode.bind(e))},e.prototype.adoptChild=function(e,t){if(void 0===t&&(t=-1),e.parent&&e.parent.children){var n=e.parent.children.indexOf(e);n>=0&&e.parent.children.splice(n,1)}e.parent=this;var i=this.children;return i||(i=this.children=[]),-1!==t?i.splice(t,0,e):i.push(e),e},e.prototype.attachTo=function(e,t){return void 0===t&&(t=-1),e&&e.adoptChild(this,t),this},e.prototype.collectIssues=function(e){this.issues&&e.push.apply(e,this.issues)},e.prototype.addIssue=function(e){this.issues||(this.issues=[]),this.issues.push(e)},e.prototype.hasIssue=function(e){return Array.isArray(this.issues)&&this.issues.some(function(t){return t.getRule()===e})},e.prototype.isErroneous=function(e){return void 0===e&&(e=!1),!!(this.issues&&this.issues.length>0)||e&&Array.isArray(this.children)&&this.children.some(function(e){return e.isErroneous(!0)})},e.prototype.setNode=function(e,t,n){return void 0===n&&(n=-1),!!t&&(t.attachTo(this,n),this[e]=t,!0)},e.prototype.addChild=function(e){return!!e&&(this.children||(this.children=[]),e.attachTo(this),this.updateOffsetAndLength(e),!0)},e.prototype.updateOffsetAndLength=function(e){(e.offset<this.offset||-1===this.offset)&&(this.offset=e.offset);var t=e.end;(t>this.end||-1===this.length)&&(this.length=t-this.offset)},e.prototype.hasChildren=function(){return!!this.children&&this.children.length>0},e.prototype.getChildren=function(){return this.children?this.children.slice(0):[]},e.prototype.getChild=function(e){return this.children&&e<this.children.length?this.children[e]:null},e.prototype.addChildren=function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t];this.addChild(i)}},e.prototype.findFirstChildBeforeOffset=function(e){if(this.children)for(var t=null,n=this.children.length-1;n>=0;n--)if((t=this.children[n]).offset<=e)return t;return null},e.prototype.findChildAtOffset=function(e,t){var n=this.findFirstChildBeforeOffset(e);return n&&n.end>=e?t&&n.findChildAtOffset(e,!0)||n:null},e.prototype.encloses=function(e){return this.offset<=e.offset&&this.offset+this.length>=e.offset+e.length},e.prototype.getParent=function(){for(var e=this.parent;e instanceof ie;)e=e.parent;return e},e.prototype.findParent=function(e){for(var t=this;t&&t.type!==e;)t=t.parent;return t},e.prototype.findAParent=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=this;n&&!e.some(function(e){return n.type===e});)n=n.parent;return n},e.prototype.setData=function(e,t){this.options||(this.options={}),this.options[e]=t},e.prototype.getData=function(e){return this.options&&this.options.hasOwnProperty(e)?this.options[e]:null},e}(),ie=function(e){function t(t,n){void 0===n&&(n=-1);var i=e.call(this,-1,-1)||this;return i.attachTo(t,n),i.offset=-1,i.length=-1,i}return Z(t,e),t}(ne),re=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.isCustomProperty=!1,i}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Identifier},enumerable:!0,configurable:!0}),t.prototype.containsInterpolation=function(){return this.hasChildren()},t}(ne),oe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Stylesheet},enumerable:!0,configurable:!0}),t}(ne),se=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Declarations},enumerable:!0,configurable:!0}),t}(ne),ae=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),t.prototype.getDeclarations=function(){return this.declarations},t.prototype.setDeclarations=function(e){return this.setNode("declarations",e)},t}(ne),le=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Ruleset},enumerable:!0,configurable:!0}),t.prototype.getSelectors=function(){return this.selectors||(this.selectors=new ie(this)),this.selectors},t.prototype.isNested=function(){return!!this.parent&&null!==this.parent.findParent(H.Declarations)},t}(ae),ce=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Selector},enumerable:!0,configurable:!0}),t}(ne),de=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.SimpleSelector},enumerable:!0,configurable:!0}),t}(ne),pe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.AtApplyRule},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t}(ne),he=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),t}(ne),me=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.CustomPropertyDeclaration},enumerable:!0,configurable:!0}),t.prototype.setProperty=function(e){return this.setNode("property",e)},t.prototype.getProperty=function(){return this.property},t.prototype.setValue=function(e){return this.setNode("value",e)},t.prototype.getValue=function(){return this.value},t.prototype.setPropertySet=function(e){return this.setNode("propertySet",e)},t.prototype.getPropertySet=function(){return this.propertySet},t}(he),ue=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.CustomPropertySet},enumerable:!0,configurable:!0}),t}(ae),fe=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.property=null,i}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Declaration},enumerable:!0,configurable:!0}),t.prototype.setProperty=function(e){return this.setNode("property",e)},t.prototype.getProperty=function(){return this.property},t.prototype.getFullPropertyName=function(){var e=this.property?this.property.getName():"unknown";if(this.parent instanceof se&&this.parent.getParent()instanceof Te){var n=this.parent.getParent().getParent();if(n instanceof t)return n.getFullPropertyName()+e}return e},t.prototype.getNonPrefixedPropertyName=function(){var e=this.getFullPropertyName();if(e&&"-"===e.charAt(0)){var t=e.indexOf("-",1);if(-1!==t)return e.substring(t+1)}return e},t.prototype.setValue=function(e){return this.setNode("value",e)},t.prototype.getValue=function(){return this.value},t.prototype.setNestedProperties=function(e){return this.setNode("nestedProperties",e)},t.prototype.getNestedProperties=function(){return this.nestedProperties},t}(he),ge=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Property},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.getText()},t.prototype.isCustomProperty=function(){return!!this.identifier&&this.identifier.isCustomProperty},t}(ne),be=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Function},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t}(function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Invocation},enumerable:!0,configurable:!0}),t.prototype.getArguments=function(){return this.arguments||(this.arguments=new ie(this)),this.arguments},t}(ne)),ye=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.FunctionParameter},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.setDefaultValue=function(e){return this.setNode("defaultValue",e,0)},t.prototype.getDefaultValue=function(){return this.defaultValue},t}(ne),ve=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.FunctionArgument},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.setValue=function(e){return this.setNode("value",e,0)},t.prototype.getValue=function(){return this.value},t}(ne),we=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.If},enumerable:!0,configurable:!0}),t.prototype.setExpression=function(e){return this.setNode("expression",e,0)},t.prototype.setElseClause=function(e){return this.setNode("elseClause",e)},t}(ae),xe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.For},enumerable:!0,configurable:!0}),t.prototype.setVariable=function(e){return this.setNode("variable",e,0)},t}(ae),Se=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Each},enumerable:!0,configurable:!0}),t.prototype.getVariables=function(){return this.variables||(this.variables=new ie(this)),this.variables},t}(ae),ke=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.While},enumerable:!0,configurable:!0}),t}(ae),Ce=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Else},enumerable:!0,configurable:!0}),t}(ae),Fe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.FunctionDeclaration},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.getParameters=function(){return this.parameters||(this.parameters=new ie(this)),this.parameters},t}(ae),ze=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.ViewPort},enumerable:!0,configurable:!0}),t}(ae),De=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.FontFace},enumerable:!0,configurable:!0}),t}(ae),Te=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.NestedProperties},enumerable:!0,configurable:!0}),t}(ae),Re=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Keyframe},enumerable:!0,configurable:!0}),t.prototype.setKeyword=function(e){return this.setNode("keyword",e,0)},t.prototype.getKeyword=function(){return this.keyword},t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t}(ae),Ee=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.KeyframeSelector},enumerable:!0,configurable:!0}),t}(ae),Ie=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Import},enumerable:!0,configurable:!0}),t.prototype.setMedialist=function(e){return!!e&&(e.attachTo(this),!0)},t}(ne),Me=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Use},enumerable:!0,configurable:!0}),t.prototype.getParameters=function(){return this.parameters||(this.parameters=new ie(this)),this.parameters},t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t}(ne),Ne=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.ModuleConfiguration},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.setValue=function(e){return this.setNode("value",e,0)},t.prototype.getValue=function(){return this.value},t}(ne),Pe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Forward},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t}(ne),_e=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.ForwardVisibility},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t}(ne),Ae=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Namespace},enumerable:!0,configurable:!0}),t}(ne),We=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Media},enumerable:!0,configurable:!0}),t}(ae),Oe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Supports},enumerable:!0,configurable:!0}),t}(ae),Le=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Document},enumerable:!0,configurable:!0}),t}(ae),Ue=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),t.prototype.getMediums=function(){return this.mediums||(this.mediums=new ie(this)),this.mediums},t}(ne),je=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.MediaQuery},enumerable:!0,configurable:!0}),t}(ne),Ve=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.SupportsCondition},enumerable:!0,configurable:!0}),t}(ne),Be=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Page},enumerable:!0,configurable:!0}),t}(ae),$e=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.PageBoxMarginBox},enumerable:!0,configurable:!0}),t}(ae),qe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Expression},enumerable:!0,configurable:!0}),t}(ne),Ke=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.BinaryExpression},enumerable:!0,configurable:!0}),t.prototype.setLeft=function(e){return this.setNode("left",e)},t.prototype.getLeft=function(){return this.left},t.prototype.setRight=function(e){return this.setNode("right",e)},t.prototype.getRight=function(){return this.right},t.prototype.setOperator=function(e){return this.setNode("operator",e)},t.prototype.getOperator=function(){return this.operator},t}(ne),Ge=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Term},enumerable:!0,configurable:!0}),t.prototype.setOperator=function(e){return this.setNode("operator",e)},t.prototype.getOperator=function(){return this.operator},t.prototype.setExpression=function(e){return this.setNode("expression",e)},t.prototype.getExpression=function(){return this.expression},t}(ne),Je=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.AttributeSelector},enumerable:!0,configurable:!0}),t.prototype.setNamespacePrefix=function(e){return this.setNode("namespacePrefix",e)},t.prototype.getNamespacePrefix=function(){return this.namespacePrefix},t.prototype.setIdentifier=function(e){return this.setNode("identifier",e)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.setOperator=function(e){return this.setNode("operator",e)},t.prototype.getOperator=function(){return this.operator},t.prototype.setValue=function(e){return this.setNode("value",e)},t.prototype.getValue=function(){return this.value},t}(ne),He=(function(e){function t(t,n){return e.call(this,t,n)||this}Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Operator},enumerable:!0,configurable:!0})}(ne),function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.HexColorValue},enumerable:!0,configurable:!0}),t}(ne)),Ye=".".charCodeAt(0),Xe="0".charCodeAt(0),Ze="9".charCodeAt(0),Qe=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.NumericValue},enumerable:!0,configurable:!0}),t.prototype.getValue=function(){for(var e,t=this.getText(),n=0,i=0,r=t.length;i<r&&(e=t.charCodeAt(i),Xe<=e&&e<=Ze||e===Ye);i++)n+=1;return{value:t.substring(0,n),unit:n<t.length?t.substring(n):void 0}},t}(ne),et=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i.variable=null,i.value=null,i.needsSemicolon=!0,i}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.VariableDeclaration},enumerable:!0,configurable:!0}),t.prototype.setVariable=function(e){return!!e&&(e.attachTo(this),this.variable=e,!0)},t.prototype.getVariable=function(){return this.variable},t.prototype.getName=function(){return this.variable?this.variable.getName():""},t.prototype.setValue=function(e){return!!e&&(e.attachTo(this),this.value=e,!0)},t.prototype.getValue=function(){return this.value},t}(he),tt=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Interpolation},enumerable:!0,configurable:!0}),t}(ne),nt=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.VariableName},enumerable:!0,configurable:!0}),t.prototype.getName=function(){return this.getText()},t}(ne),it=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.ExtendsReference},enumerable:!0,configurable:!0}),t.prototype.getSelectors=function(){return this.selectors||(this.selectors=new ie(this)),this.selectors},t}(ne),rt=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.MixinReference},enumerable:!0,configurable:!0}),t.prototype.getNamespaces=function(){return this.namespaces||(this.namespaces=new ie(this)),this.namespaces},t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.getArguments=function(){return this.arguments||(this.arguments=new ie(this)),this.arguments},t.prototype.setContent=function(e){return this.setNode("content",e)},t.prototype.getContent=function(){return this.content},t}(ne),ot=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.MixinDeclaration},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t.prototype.getName=function(){return this.identifier?this.identifier.getText():""},t.prototype.getParameters=function(){return this.parameters||(this.parameters=new ie(this)),this.parameters},t.prototype.setGuard=function(e){return e&&(e.attachTo(this),this.guard=e),!1},t}(ae),st=function(e){function t(t,n){return e.call(this,t,n)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.UnknownAtRule},enumerable:!0,configurable:!0}),t.prototype.setAtRuleName=function(e){this.atRuleName=e},t.prototype.getAtRuleName=function(){return this.atRuleName},t}(ae),at=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.ListEntry},enumerable:!0,configurable:!0}),t.prototype.setKey=function(e){return this.setNode("key",e,0)},t.prototype.setValue=function(e){return this.setNode("value",e,1)},t}(ne),lt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),t.prototype.getConditions=function(){return this.conditions||(this.conditions=new ie(this)),this.conditions},t}(ne),ct=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),t.prototype.setVariable=function(e){return this.setNode("variable",e)},t}(ne),dt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Z(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return H.Module},enumerable:!0,configurable:!0}),t.prototype.setIdentifier=function(e){return this.setNode("identifier",e,0)},t.prototype.getIdentifier=function(){return this.identifier},t}(ne);!function(e){e[e.Ignore=1]="Ignore",e[e.Warning=2]="Warning",e[e.Error=4]="Error"}(te||(te={}));var pt=function(){function e(e,t,n,i,r,o){void 0===r&&(r=e.offset),void 0===o&&(o=e.length),this.node=e,this.rule=t,this.level=n,this.message=i||t.message,this.offset=r,this.length=o}return e.prototype.getRule=function(){return this.rule},e.prototype.getLevel=function(){return this.level},e.prototype.getOffset=function(){return this.offset},e.prototype.getLength=function(){return this.length},e.prototype.getNode=function(){return this.node},e.prototype.getMessage=function(){return this.message},e}(),ht=function(){function e(){this.entries=[]}return e.entries=function(t){var n=new e;return t.acceptVisitor(n),n.entries},e.prototype.visitNode=function(e){return e.isErroneous()&&e.collectIssues(this.entries),!0},e}();function mt(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return function(e,t){return 0===t.length?e:e.replace(/\{(\d+)\}/g,function(e,n){var i=n[0];return void 0!==t[i]?t[i]:e})}(t,n)}function ut(e){return mt}var ft=ut(),gt=function(){return function(e,t){this.id=e,this.message=t}}(),bt={NumberExpected:new gt("css-numberexpected",ft("expected.number","number expected")),ConditionExpected:new gt("css-conditionexpected",ft("expected.condt","condition expected")),RuleOrSelectorExpected:new gt("css-ruleorselectorexpected",ft("expected.ruleorselector","at-rule or selector expected")),DotExpected:new gt("css-dotexpected",ft("expected.dot","dot expected")),ColonExpected:new gt("css-colonexpected",ft("expected.colon","colon expected")),SemiColonExpected:new gt("css-semicolonexpected",ft("expected.semicolon","semi-colon expected")),TermExpected:new gt("css-termexpected",ft("expected.term","term expected")),ExpressionExpected:new gt("css-expressionexpected",ft("expected.expression","expression expected")),OperatorExpected:new gt("css-operatorexpected",ft("expected.operator","operator expected")),IdentifierExpected:new gt("css-identifierexpected",ft("expected.ident","identifier expected")),PercentageExpected:new gt("css-percentageexpected",ft("expected.percentage","percentage expected")),URIOrStringExpected:new gt("css-uriorstringexpected",ft("expected.uriorstring","uri or string expected")),URIExpected:new gt("css-uriexpected",ft("expected.uri","URI expected")),VariableNameExpected:new gt("css-varnameexpected",ft("expected.varname","variable name expected")),VariableValueExpected:new gt("css-varvalueexpected",ft("expected.varvalue","variable value expected")),PropertyValueExpected:new gt("css-propertyvalueexpected",ft("expected.propvalue","property value expected")),LeftCurlyExpected:new gt("css-lcurlyexpected",ft("expected.lcurly","{ expected")),RightCurlyExpected:new gt("css-rcurlyexpected",ft("expected.rcurly","} expected")),LeftSquareBracketExpected:new gt("css-rbracketexpected",ft("expected.lsquare","[ expected")),RightSquareBracketExpected:new gt("css-lbracketexpected",ft("expected.rsquare","] expected")),LeftParenthesisExpected:new gt("css-lparentexpected",ft("expected.lparen","( expected")),RightParenthesisExpected:new gt("css-rparentexpected",ft("expected.rparent",") expected")),CommaExpected:new gt("css-commaexpected",ft("expected.comma","comma expected")),PageDirectiveOrDeclarationExpected:new gt("css-pagedirordeclexpected",ft("expected.pagedirordecl","page directive or declaraton expected")),UnknownAtRule:new gt("css-unknownatrule",ft("unknown.atrule","at-rule unknown")),UnknownKeyword:new gt("css-unknownkeyword",ft("unknown.keyword","unknown keyword")),SelectorExpected:new gt("css-selectorexpected",ft("expected.selector","selector expected")),StringLiteralExpected:new gt("css-stringliteralexpected",ft("expected.stringliteral","string literal expected")),WhitespaceExpected:new gt("css-whitespaceexpected",ft("expected.whitespace","whitespace expected")),MediaQueryExpected:new gt("css-mediaqueryexpected",ft("expected.mediaquery","media query expected")),IdentifierOrWildcardExpected:new gt("css-idorwildcardexpected",ft("expected.idorwildcard","identifier or wildcard expected")),WildcardExpected:new gt("css-wildcardexpected",ft("expected.wildcard","wildcard expected")),IdentifierOrVariableExpected:new gt("css-idorvarexpected",ft("expected.idorvar","identifier or variable expected"))};function yt(e){return Object.keys(e).map(function(t){return e[t]})}function vt(e){return void 0!==e}var wt=function(){function e(e){this.dataProviders=e,this._propertySet={},this._atDirectiveSet={},this._pseudoClassSet={},this._pseudoElementSet={},this._properties=[],this._atDirectives=[],this._pseudoClasses=[],this._pseudoElements=[],this.collectData()}return e.prototype.addDataProviders=function(e){this.dataProviders=this.dataProviders.concat(e),this.collectData()},e.prototype.collectData=function(){var e=this;this.dataProviders.forEach(function(t){t.provideProperties().forEach(function(t){e._propertySet[t.name]||(e._propertySet[t.name]=t)}),t.provideAtDirectives().forEach(function(t){e._atDirectiveSet[t.name]||(e._atDirectiveSet[t.name]=t)}),t.providePseudoClasses().forEach(function(t){e._pseudoClassSet[t.name]||(e._pseudoClassSet[t.name]=t)}),t.providePseudoElements().forEach(function(t){e._pseudoElementSet[t.name]||(e._pseudoElementSet[t.name]=t)})}),this._properties=yt(this._propertySet),this._atDirectives=yt(this._atDirectiveSet),this._pseudoClasses=yt(this._pseudoClassSet),this._pseudoElements=yt(this._pseudoElementSet)},e.prototype.getProperty=function(e){return this._propertySet[e]},e.prototype.getAtDirective=function(e){return this._atDirectiveSet[e]},e.prototype.getPseudoClass=function(e){return this._pseudoClassSet[e]},e.prototype.getPseudoElement=function(e){return this._pseudoElementSet[e]},e.prototype.getProperties=function(){return this._properties},e.prototype.getAtDirectives=function(){return this._atDirectives},e.prototype.getPseudoClasses=function(){return this._pseudoClasses},e.prototype.getPseudoElements=function(){return this._pseudoElements},e.prototype.isKnownProperty=function(e){return e.toLowerCase()in this._propertySet},e.prototype.isStandardProperty=function(e){return this.isKnownProperty(e)&&(!this._propertySet[e.toLowerCase()].status||"standard"===this._propertySet[e.toLowerCase()].status)},e}(),xt=function(){function e(e){this._properties=[],this._atDirectives=[],this._pseudoClasses=[],this._pseudoElements=[],this.addData(e)}return e.prototype.provideProperties=function(){return this._properties},e.prototype.provideAtDirectives=function(){return this._atDirectives},e.prototype.providePseudoClasses=function(){return this._pseudoClasses},e.prototype.providePseudoElements=function(){return this._pseudoElements},e.prototype.addData=function(e){e.properties&&(this._properties=this._properties.concat(e.properties)),e.atDirectives&&(this._atDirectives=this._atDirectives.concat(e.atDirectives)),e.pseudoClasses&&(this._pseudoClasses=this._pseudoClasses.concat(e.pseudoClasses)),e.pseudoElements&&(this._pseudoElements=this._pseudoElements.concat(e.pseudoElements))},e}(),St={E:"Edge",FF:"Firefox",S:"Safari",C:"Chrome",IE:"IE",O:"Opera"};function kt(e){switch(e){case"experimental":return"⚠️ Property is experimental. Be cautious when using it.️\n\n";case"nonstandard":return"🚨️ Property is nonstandard. Avoid using it.\n\n";case"obsolete":return"🚨️️️ Property is obsolete. Avoid using it.\n\n";default:return""}}function Ct(e,t){return t?{kind:"markdown",value:function(e){if(!e.description||""===e.description)return"";var t="";e.status&&(t+=kt(e.status));"string"==typeof e.description?t+=e.description:t=e.description.value;var n=Ft(e.browsers);n&&(t+="\n\n("+n+")");"syntax"in e&&(t+="\n\nSyntax: "+e.syntax);e.references&&e.references.length>0&&(t+="\n\n",t+=e.references.map(function(e){return"["+e.name+"]("+e.url+")"}).join(" | "));return t}(e)}:{kind:"plaintext",value:function(e){if(!e.description||""===e.description)return"";if("string"!=typeof e.description)return e.description.value;var t="";e.status&&(t+=kt(e.status));t+=e.description;var n=Ft(e.browsers);n&&(t+="\n("+n+")");"syntax"in e&&(t+="\n\nSyntax: "+e.syntax);e.references&&e.references.length>0&&(t+="\n\n",t+=e.references.map(function(e){return e.name+": "+e.url}).join(" | "));return t}(e)}}function Ft(e){return void 0===e&&(e=[]),0===e.length?null:e.map(function(e){var t="",n=e.match(/([A-Z]+)(\d+)?/),i=n[1],r=n[2];return i in St&&(t+=St[i]),r&&(t+=" "+r),t}).join(", ")}var zt=ut(),Dt=[{func:"rgb($red, $green, $blue)",desc:zt("css.builtin.rgb","Creates a Color from red, green, and blue values.")},{func:"rgba($red, $green, $blue, $alpha)",desc:zt("css.builtin.rgba","Creates a Color from red, green, blue, and alpha values.")},{func:"hsl($hue, $saturation, $lightness)",desc:zt("css.builtin.hsl","Creates a Color from hue, saturation, and lightness values.")},{func:"hsla($hue, $saturation, $lightness, $alpha)",desc:zt("css.builtin.hsla","Creates a Color from hue, saturation, lightness, and alpha values.")}],Tt={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgrey:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",grey:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rebeccapurple:"#663399",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},Rt={currentColor:"The value of the 'color' property. The computed value of the 'currentColor' keyword is the computed value of the 'color' property. If the 'currentColor' keyword is set on the 'color' property itself, it is treated as 'color:inherit' at parse time.",transparent:"Fully transparent. This keyword can be considered a shorthand for rgba(0,0,0,0) which is its computed value."};function Et(e,t){var n=e.getText().match(/^([-+]?[0-9]*\.?[0-9]+)(%?)$/);if(n){n[2]&&(t=100);var i=parseFloat(n[1])/t;if(i>=0&&i<=1)return i}throw new Error}function It(e){var t=e.getName();return!!t&&/^(rgb|rgba|hsl|hsla)$/gi.test(t)}var Mt=48,Nt=57,Pt=65,_t=97,At=102;function Wt(e){return e<Mt?0:e<=Nt?e-Mt:(e<_t&&(e+=_t-Pt),e>=_t&&e<=At?e-_t+10:0)}function Ot(e){if("#"!==e[0])return null;switch(e.length){case 4:return{red:17*Wt(e.charCodeAt(1))/255,green:17*Wt(e.charCodeAt(2))/255,blue:17*Wt(e.charCodeAt(3))/255,alpha:1};case 5:return{red:17*Wt(e.charCodeAt(1))/255,green:17*Wt(e.charCodeAt(2))/255,blue:17*Wt(e.charCodeAt(3))/255,alpha:17*Wt(e.charCodeAt(4))/255};case 7:return{red:(16*Wt(e.charCodeAt(1))+Wt(e.charCodeAt(2)))/255,green:(16*Wt(e.charCodeAt(3))+Wt(e.charCodeAt(4)))/255,blue:(16*Wt(e.charCodeAt(5))+Wt(e.charCodeAt(6)))/255,alpha:1};case 9:return{red:(16*Wt(e.charCodeAt(1))+Wt(e.charCodeAt(2)))/255,green:(16*Wt(e.charCodeAt(3))+Wt(e.charCodeAt(4)))/255,blue:(16*Wt(e.charCodeAt(5))+Wt(e.charCodeAt(6)))/255,alpha:(16*Wt(e.charCodeAt(7))+Wt(e.charCodeAt(8)))/255}}return null}function Lt(e){if(e.type===H.HexColorValue)return Ot(e.getText());if(e.type===H.Function){var t=e,n=t.getName(),i=t.getArguments().getChildren();if(!n||i.length<3||i.length>4)return null;try{var r=4===i.length?Et(i[3],1):1;if("rgb"===n||"rgba"===n)return{red:Et(i[0],255),green:Et(i[1],255),blue:Et(i[2],255),alpha:r};if("hsl"===n||"hsla"===n)return function(e,t,n,i){if(void 0===i&&(i=1),e/=60,0===t)return{red:n,green:n,blue:n,alpha:i};var r=function(e,t,n){for(;n<0;)n+=6;for(;n>=6;)n-=6;return n<1?(t-e)*n+e:n<3?t:n<4?(t-e)*(4-n)+e:e},o=n<=.5?n*(t+1):n+t-n*t,s=2*n-o;return{red:r(s,o,e+2),green:r(s,o,e),blue:r(s,o,e-2),alpha:i}}(function(e){var t=e.getText();if(t.match(/^([-+]?[0-9]*\.?[0-9]+)(deg)?$/))return parseFloat(t)%360;throw new Error}(i[0]),Et(i[1],100),Et(i[2],100),r)}catch(e){return null}}else if(e.type===H.Identifier){if(e.parent&&e.parent.type!==H.Term)return null;var o=e.parent;if(o&&o.parent&&o.parent.type===H.BinaryExpression){var s=o.parent;if(s.parent&&s.parent.type===H.ListEntry&&s.parent.key===s)return null}var a=e.getText().toLowerCase();if("none"===a)return null;var l=Tt[a];if(l)return Ot(l)}return null}var Ut={bottom:"Computes to ‘100%’ for the vertical position if one or two values are given, otherwise specifies the bottom edge as the origin for the next offset.",center:"Computes to ‘50%’ (‘left 50%’) for the horizontal position if the horizontal position is not otherwise specified, or ‘50%’ (‘top 50%’) for the vertical position if it is.",left:"Computes to ‘0%’ for the horizontal position if one or two values are given, otherwise specifies the left edge as the origin for the next offset.",right:"Computes to ‘100%’ for the horizontal position if one or two values are given, otherwise specifies the right edge as the origin for the next offset.",top:"Computes to ‘0%’ for the vertical position if one or two values are given, otherwise specifies the top edge as the origin for the next offset."},jt={"no-repeat":"Placed once and not repeated in this direction.",repeat:"Repeated in this direction as often as needed to cover the background painting area.","repeat-x":"Computes to ‘repeat no-repeat’.","repeat-y":"Computes to ‘no-repeat repeat’.",round:"Repeated as often as will fit within the background positioning area. If it doesn’t fit a whole number of times, it is rescaled so that it does.",space:"Repeated as often as will fit within the background positioning area without being clipped and then the images are spaced out to fill the area."},Vt={dashed:"A series of square-ended dashes.",dotted:"A series of round dots.",double:"Two parallel solid lines with some space between them.",groove:"Looks as if it were carved in the canvas.",hidden:"Same as ‘none’, but has different behavior in the border conflict resolution rules for border-collapsed tables.",inset:"Looks as if the content on the inside of the border is sunken into the canvas.",none:"No border. Color and width are ignored.",outset:"Looks as if the content on the inside of the border is coming out of the canvas.",ridge:"Looks as if it were coming out of the canvas.",solid:"A single line segment."},Bt=["medium","thick","thin"],$t={"border-box":"The background is painted within (clipped to) the border box.","content-box":"The background is painted within (clipped to) the content box.","padding-box":"The background is painted within (clipped to) the padding box."},qt={"margin-box":"Uses the margin box as reference box.","fill-box":"Uses the object bounding box as reference box.","stroke-box":"Uses the stroke bounding box as reference box.","view-box":"Uses the nearest SVG viewport as reference box."},Kt={initial:"Represents the value specified as the property’s initial value.",inherit:"Represents the computed value of the property on the element’s parent.",unset:"Acts as either `inherit` or `initial`, depending on whether the property is inherited or not."},Gt={"url()":"Reference an image file by URL","image()":"Provide image fallbacks and annotations.","-webkit-image-set()":"Provide multiple resolutions. Remember to use unprefixed image-set() in addition.","image-set()":"Provide multiple resolutions of an image and const the UA decide which is most appropriate in a given situation.","-moz-element()":"Use an element in the document as an image. Remember to use unprefixed element() in addition.","element()":"Use an element in the document as an image.","cross-fade()":"Indicates the two images to be combined and how far along in the transition the combination is.","-webkit-gradient()":"Deprecated. Use modern linear-gradient() or radial-gradient() instead.","-webkit-linear-gradient()":"Linear gradient. Remember to use unprefixed version in addition.","-moz-linear-gradient()":"Linear gradient. Remember to use unprefixed version in addition.","-o-linear-gradient()":"Linear gradient. Remember to use unprefixed version in addition.","linear-gradient()":"A linear gradient is created by specifying a straight gradient line, and then several colors placed along that line.","-webkit-repeating-linear-gradient()":"Repeating Linear gradient. Remember to use unprefixed version in addition.","-moz-repeating-linear-gradient()":"Repeating Linear gradient. Remember to use unprefixed version in addition.","-o-repeating-linear-gradient()":"Repeating Linear gradient. Remember to use unprefixed version in addition.","repeating-linear-gradient()":"Same as linear-gradient, except the color-stops are repeated infinitely in both directions, with their positions shifted by multiples of the difference between the last specified color-stop’s position and the first specified color-stop’s position.","-webkit-radial-gradient()":"Radial gradient. Remember to use unprefixed version in addition.","-moz-radial-gradient()":"Radial gradient. Remember to use unprefixed version in addition.","radial-gradient()":"Colors emerge from a single point and smoothly spread outward in a circular or elliptical shape.","-webkit-repeating-radial-gradient()":"Repeating radial gradient. Remember to use unprefixed version in addition.","-moz-repeating-radial-gradient()":"Repeating radial gradient. Remember to use unprefixed version in addition.","repeating-radial-gradient()":"Same as radial-gradient, except the color-stops are repeated infinitely in both directions, with their positions shifted by multiples of the difference between the last specified color-stop’s position and the first specified color-stop’s position."},Jt={ease:"Equivalent to cubic-bezier(0.25, 0.1, 0.25, 1.0).","ease-in":"Equivalent to cubic-bezier(0.42, 0, 1.0, 1.0).","ease-in-out":"Equivalent to cubic-bezier(0.42, 0, 0.58, 1.0).","ease-out":"Equivalent to cubic-bezier(0, 0, 0.58, 1.0).",linear:"Equivalent to cubic-bezier(0.0, 0.0, 1.0, 1.0).","step-end":"Equivalent to steps(1, end).","step-start":"Equivalent to steps(1, start).","steps()":"The first parameter specifies the number of intervals in the function. The second parameter, which is optional, is either the value “start” or “end”.","cubic-bezier()":"Specifies a cubic-bezier curve. The four values specify points P1 and P2 of the curve as (x1, y1, x2, y2).","cubic-bezier(0.6, -0.28, 0.735, 0.045)":"Ease-in Back. Overshoots.","cubic-bezier(0.68, -0.55, 0.265, 1.55)":"Ease-in-out Back. Overshoots.","cubic-bezier(0.175, 0.885, 0.32, 1.275)":"Ease-out Back. Overshoots.","cubic-bezier(0.6, 0.04, 0.98, 0.335)":"Ease-in Circular. Based on half circle.","cubic-bezier(0.785, 0.135, 0.15, 0.86)":"Ease-in-out Circular. Based on half circle.","cubic-bezier(0.075, 0.82, 0.165, 1)":"Ease-out Circular. Based on half circle.","cubic-bezier(0.55, 0.055, 0.675, 0.19)":"Ease-in Cubic. Based on power of three.","cubic-bezier(0.645, 0.045, 0.355, 1)":"Ease-in-out Cubic. Based on power of three.","cubic-bezier(0.215, 0.610, 0.355, 1)":"Ease-out Cubic. Based on power of three.","cubic-bezier(0.95, 0.05, 0.795, 0.035)":"Ease-in Exponential. Based on two to the power ten.","cubic-bezier(1, 0, 0, 1)":"Ease-in-out Exponential. Based on two to the power ten.","cubic-bezier(0.19, 1, 0.22, 1)":"Ease-out Exponential. Based on two to the power ten.","cubic-bezier(0.47, 0, 0.745, 0.715)":"Ease-in Sine.","cubic-bezier(0.445, 0.05, 0.55, 0.95)":"Ease-in-out Sine.","cubic-bezier(0.39, 0.575, 0.565, 1)":"Ease-out Sine.","cubic-bezier(0.55, 0.085, 0.68, 0.53)":"Ease-in Quadratic. Based on power of two.","cubic-bezier(0.455, 0.03, 0.515, 0.955)":"Ease-in-out Quadratic. Based on power of two.","cubic-bezier(0.25, 0.46, 0.45, 0.94)":"Ease-out Quadratic. Based on power of two.","cubic-bezier(0.895, 0.03, 0.685, 0.22)":"Ease-in Quartic. Based on power of four.","cubic-bezier(0.77, 0, 0.175, 1)":"Ease-in-out Quartic. Based on power of four.","cubic-bezier(0.165, 0.84, 0.44, 1)":"Ease-out Quartic. Based on power of four.","cubic-bezier(0.755, 0.05, 0.855, 0.06)":"Ease-in Quintic. Based on power of five.","cubic-bezier(0.86, 0, 0.07, 1)":"Ease-in-out Quintic. Based on power of five.","cubic-bezier(0.23, 1, 0.320, 1)":"Ease-out Quintic. Based on power of five."},Ht={"circle()":"Defines a circle.","ellipse()":"Defines an ellipse.","inset()":"Defines an inset rectangle.","polygon()":"Defines a polygon."},Yt={length:["em","rem","ex","px","cm","mm","in","pt","pc","ch","vw","vh","vmin","vmax"],angle:["deg","rad","grad","turn"],time:["ms","s"],frequency:["Hz","kHz"],resolution:["dpi","dpcm","dppx"],percentage:["%","fr"]},Xt=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rb","rp","rt","rtc","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","const","video","wbr"],Zt=["circle","clipPath","cursor","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","foreignObject","g","hatch","hatchpath","image","line","linearGradient","marker","mask","mesh","meshpatch","meshrow","metadata","mpath","path","pattern","polygon","polyline","radialGradient","rect","set","solidcolor","stop","svg","switch","symbol","text","textPath","tspan","use","view"],Qt=["@bottom-center","@bottom-left","@bottom-left-corner","@bottom-right","@bottom-right-corner","@left-bottom","@left-middle","@left-top","@right-bottom","@right-middle","@right-top","@top-center","@top-left","@top-left-corner","@top-right","@top-right-corner"],en=new wt([new xt({version:1.1,properties:[{name:"width",values:[{name:"auto",description:"The width depends on the values of other properties."},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/width"}],description:"Specifies the width of the content area, padding area or border area (depending on 'box-sizing') of certain boxes.",restrictions:["length","percentage"]},{name:"height",values:[{name:"auto",description:"The height depends on the values of other properties."},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/height"}],description:"Specifies the height of the content area, padding area or border area (depending on 'box-sizing') of certain boxes.",restrictions:["length","percentage"]},{name:"display",values:[{name:"block",description:"The element generates a block-level box"},{name:"contents",description:"The element itself does not generate any boxes, but its children and pseudo-elements still generate boxes as normal."},{name:"flex",description:"The element generates a principal flex container box and establishes a flex formatting context."},{name:"flexbox",description:"The element lays out its contents using flow layout (block-and-inline layout). Standardized as 'flex'."},{name:"flow-root",description:"The element generates a block container box, and lays out its contents using flow layout."},{name:"grid",description:"The element generates a principal grid container box, and establishes a grid formatting context."},{name:"inline",description:"The element generates an inline-level box."},{name:"inline-block",description:"A block box, which itself is flowed as a single inline box, similar to a replaced element. The inside of an inline-block is formatted as a block box, and the box itself is formatted as an inline box."},{name:"inline-flex",description:"Inline-level flex container."},{name:"inline-flexbox",description:"Inline-level flex container. Standardized as 'inline-flex'"},{name:"inline-table",description:"Inline-level table wrapper box containing table box."},{name:"list-item",description:"One or more block boxes and one marker box."},{name:"-moz-box",description:"The element lays out its contents using flow layout (block-and-inline layout). Standardized as 'flex'."},{name:"-moz-deck"},{name:"-moz-grid"},{name:"-moz-grid-group"},{name:"-moz-grid-line"},{name:"-moz-groupbox"},{name:"-moz-inline-box",description:"Inline-level flex container. Standardized as 'inline-flex'"},{name:"-moz-inline-grid"},{name:"-moz-inline-stack"},{name:"-moz-marker"},{name:"-moz-popup"},{name:"-moz-stack"},{name:"-ms-flexbox",description:"The element lays out its contents using flow layout (block-and-inline layout). Standardized as 'flex'."},{name:"-ms-grid",description:"The element generates a principal grid container box, and establishes a grid formatting context."},{name:"-ms-inline-flexbox",description:"Inline-level flex container. Standardized as 'inline-flex'"},{name:"-ms-inline-grid",description:"Inline-level grid container."},{name:"none",description:"The element and its descendants generates no boxes."},{name:"ruby",description:"The element generates a principal ruby container box, and establishes a ruby formatting context."},{name:"ruby-base"},{name:"ruby-base-container"},{name:"ruby-text"},{name:"ruby-text-container"},{name:"run-in",description:"The element generates a run-in box. Run-in elements act like inlines or blocks, depending on the surrounding elements."},{name:"table",description:"The element generates a principal table wrapper box containing an additionally-generated table box, and establishes a table formatting context."},{name:"table-caption"},{name:"table-cell"},{name:"table-column"},{name:"table-column-group"},{name:"table-footer-group"},{name:"table-header-group"},{name:"table-row"},{name:"table-row-group"},{name:"-webkit-box",description:"The element lays out its contents using flow layout (block-and-inline layout). Standardized as 'flex'."},{name:"-webkit-flex",description:"The element lays out its contents using flow layout (block-and-inline layout)."},{name:"-webkit-inline-box",description:"Inline-level flex container. Standardized as 'inline-flex'"},{name:"-webkit-inline-flex",description:"Inline-level flex container."}],syntax:"[ <display-outside> || <display-inside> ] | <display-listitem> | <display-internal> | <display-box> | <display-legacy>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/display"}],description:"In combination with 'float' and 'position', determines the type of box or boxes that are generated for an element.",restrictions:["enum"]},{name:"padding",values:[],syntax:"[ <length> | <percentage> ]{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding"}],description:"Shorthand property to set values the thickness of the padding area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. The value may not be negative.",restrictions:["length","percentage"]},{name:"position",values:[{name:"absolute",description:"The box's position (and possibly size) is specified with the 'top', 'right', 'bottom', and 'left' properties. These properties specify offsets with respect to the box's 'containing block'."},{name:"fixed",description:"The box's position is calculated according to the 'absolute' model, but in addition, the box is fixed with respect to some reference. As with the 'absolute' model, the box's margins do not collapse with any other margins."},{name:"-ms-page",description:"The box's position is calculated according to the 'absolute' model."},{name:"relative",description:"The box's position is calculated according to the normal flow (this is called the position in normal flow). Then the box is offset relative to its normal position."},{name:"static",description:"The box is a normal box, laid out according to the normal flow. The 'top', 'right', 'bottom', and 'left' properties do not apply."},{name:"sticky",description:"The box's position is calculated according to the normal flow. Then the box is offset relative to its flow root and containing block and in all cases, including table elements, does not affect the position of any following boxes."},{name:"-webkit-sticky",description:"The box's position is calculated according to the normal flow. Then the box is offset relative to its flow root and containing block and in all cases, including table elements, does not affect the position of any following boxes."}],syntax:"static | relative | absolute | sticky | fixed",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/position"}],restrictions:["enum"]},{name:"border",syntax:"<line-width> || <line-style> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border"}],description:"Shorthand property for setting border width, style, and color.",restrictions:["length","line-width","line-style","color"]},{name:"margin",values:[{name:"auto"}],syntax:"[ <length> | <percentage> | auto ]{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin"}],description:"Shorthand property to set values the thickness of the margin area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. Negative values for margin properties are allowed, but there may be implementation-specific limits.",restrictions:["length","percentage"]},{name:"top",values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/top"}],description:"Specifies how far an absolutely positioned box's top margin edge is offset below the top edge of the box's 'containing block'.",restrictions:["length","percentage"]},{name:"left",values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/left"}],description:"Specifies how far an absolutely positioned box's left margin edge is offset to the right of the left edge of the box's 'containing block'.",restrictions:["length","percentage"]},{name:"margin-top",values:[{name:"auto"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-top"}],description:"Shorthand property to set values the thickness of the margin area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. Negative values for margin properties are allowed, but there may be implementation-specific limits..",restrictions:["length","percentage"]},{name:"color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/color"}],description:"Color of an element's text",restrictions:["color"]},{name:"font-size",values:[{name:"large"},{name:"larger"},{name:"medium"},{name:"small"},{name:"smaller"},{name:"x-large"},{name:"x-small"},{name:"xx-large"},{name:"xx-small"}],syntax:"<absolute-size> | <relative-size> | <length-percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-size"}],description:"Indicates the desired height of glyphs from the font. For scalable fonts, the font-size is a scale factor applied to the EM unit of the font. (Note that certain glyphs may bleed outside their EM box.) For non-scalable fonts, the font-size is converted into absolute units and matched against the declared font-size of the font, using the same absolute coordinate space for both of the matched values.",restrictions:["length","percentage"]},{name:"background-color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-color"}],description:"Sets the background color of an element.",restrictions:["color"]},{name:"text-align",values:[{name:"center",description:"The inline contents are centered within the line box."},{name:"end",description:"The inline contents are aligned to the end edge of the line box."},{name:"justify",description:"The text is justified according to the method specified by the 'text-justify' property."},{name:"left",description:"The inline contents are aligned to the left edge of the line box. In vertical text, 'left' aligns to the edge of the line box that would be the start edge for left-to-right text."},{name:"right",description:"The inline contents are aligned to the right edge of the line box. In vertical text, 'right' aligns to the edge of the line box that would be the end edge for left-to-right text."},{name:"start",description:"The inline contents are aligned to the start edge of the line box."}],syntax:"start | end | left | right | center | justify | match-parent",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-align"}],description:"Describes how inline contents of a block are horizontally aligned if the contents do not completely fill the line box.",restrictions:["string"]},{name:"opacity",syntax:"<alpha-value>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/opacity"}],description:"Opacity of an element's text, where 1 is opaque and 0 is entirely transparent.",restrictions:["number(0-1)"]},{name:"background",values:[{name:"fixed",description:"The background is fixed with regard to the viewport. In paged media where there is no viewport, a 'fixed' background is fixed with respect to the page box and therefore replicated on every page."},{name:"local",description:"The background is fixed with regard to the element's contents: if the element has a scrolling mechanism, the background scrolls with the element's contents."},{name:"none",description:"A value of 'none' counts as an image layer but draws nothing."},{name:"scroll",description:"The background is fixed with regard to the element itself and does not scroll with its contents. (It is effectively attached to the element's border.)"}],syntax:"[ <bg-layer> , ]* <final-bg-layer>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background"}],description:"Shorthand property for setting most background properties at the same place in the style sheet.",restrictions:["enum","image","color","position","length","repeat","percentage","box"]},{name:"float",values:[{name:"inline-end",description:"A keyword indicating that the element must float on the end side of its containing block. That is the right side with ltr scripts, and the left side with rtl scripts."},{name:"inline-start",description:"A keyword indicating that the element must float on the start side of its containing block. That is the left side with ltr scripts, and the right side with rtl scripts."},{name:"left",description:"The element generates a block box that is floated to the left. Content flows on the right side of the box, starting at the top (subject to the 'clear' property)."},{name:"none",description:"The box is not floated."},{name:"right",description:"Similar to 'left', except the box is floated to the right, and content flows on the left side of the box, starting at the top."}],syntax:"left | right | none | inline-start | inline-end",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/float"}],description:"Specifies how a box should be floated. It may be set for any element, but only applies to elements that generate boxes that are not absolutely positioned.",restrictions:["enum"]},{name:"font-weight",values:[{name:"100",description:"Thin"},{name:"200",description:"Extra Light (Ultra Light)"},{name:"300",description:"Light"},{name:"400",description:"Normal"},{name:"500",description:"Medium"},{name:"600",description:"Semi Bold (Demi Bold)"},{name:"700",description:"Bold"},{name:"800",description:"Extra Bold (Ultra Bold)"},{name:"900",description:"Black (Heavy)"},{name:"bold",description:"Same as 700"},{name:"bolder",description:"Specifies the weight of the face bolder than the inherited value."},{name:"lighter",description:"Specifies the weight of the face lighter than the inherited value."},{name:"normal",description:"Same as 400"}],syntax:"<font-weight-absolute>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-weight"}],description:"Specifies weight of glyphs in the font, their degree of blackness or stroke thickness.",restrictions:["enum"]},{name:"overflow",values:[{name:"auto",description:"The behavior of the 'auto' value is UA-dependent, but should cause a scrolling mechanism to be provided for overflowing boxes."},{name:"hidden",description:"Content is clipped and no scrolling mechanism should be provided to view the content outside the clipping region."},{name:"-moz-hidden-unscrollable",description:"Same as the standardized 'clip', except doesn’t establish a block formatting context."},{name:"scroll",description:"Content is clipped and if the user agent uses a scrolling mechanism that is visible on the screen (such as a scroll bar or a panner), that mechanism should be displayed for a box whether or not any of its content is clipped."},{name:"visible",description:"Content is not clipped, i.e., it may be rendered outside the content box."}],syntax:"[ visible | hidden | clip | scroll | auto ]{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow"}],description:"Shorthand for setting 'overflow-x' and 'overflow-y'.",restrictions:["enum"]},{name:"line-height",values:[{name:"normal",description:"Tells user agents to set the computed value to a 'reasonable' value based on the font size of the element."}],syntax:"normal | <number> | <length> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/line-height"}],description:"Determines the block-progression dimension of the text content area of an inline box.",restrictions:["number","length","percentage"]},{name:"font-family",values:[{name:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif"},{name:"Arial, Helvetica, sans-serif"},{name:"Cambria, Cochin, Georgia, Times, 'Times New Roman', serif"},{name:"'Courier New', Courier, monospace"},{name:"cursive"},{name:"fantasy"},{name:"'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif"},{name:"Georgia, 'Times New Roman', Times, serif"},{name:"'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif"},{name:"Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif"},{name:"'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif"},{name:"monospace"},{name:"sans-serif"},{name:"'Segoe UI', Tahoma, Geneva, Verdana, sans-serif"},{name:"serif"},{name:"'Times New Roman', Times, serif"},{name:"'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif"},{name:"Verdana, Geneva, Tahoma, sans-serif"}],syntax:"<family-name>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-family"}],description:"Specifies a prioritized list of font family names or generic family names. A user agent iterates through the list of family names until it matches an available font that contains a glyph for the character to be rendered.",restrictions:["font"]},{name:"text-decoration",values:[{name:"dashed",description:"Produces a dashed line style."},{name:"dotted",description:"Produces a dotted line."},{name:"double",description:"Produces a double line."},{name:"line-through",description:"Each line of text has a line through the middle."},{name:"none",description:"Produces no line."},{name:"overline",description:"Each line of text has a line above it."},{name:"solid",description:"Produces a solid line."},{name:"underline",description:"Each line of text is underlined."},{name:"wavy",description:"Produces a wavy line."}],syntax:"<'text-decoration-line'> || <'text-decoration-style'> || <'text-decoration-color'> || <'text-decoration-thickness'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration"}],description:"Decorations applied to font used for an element's text.",restrictions:["enum","color"]},{name:"box-sizing",values:[{name:"border-box",description:"The specified width and height (and respective min/max properties) on this element determine the border box of the element."},{name:"content-box",description:"Behavior of width and height as specified by CSS2.1. The specified width and height (and respective min/max properties) apply to the width and height respectively of the content box of the element."}],syntax:"content-box | border-box",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-sizing"}],description:"Specifies the behavior of the 'width' and 'height' properties.",restrictions:["enum"]},{name:"z-index",values:[{name:"auto",description:"The stack level of the generated box in the current stacking context is 0. The box does not establish a new stacking context unless it is the root element."}],syntax:"auto | <integer>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/z-index"}],description:"For a positioned box, the 'z-index' property specifies the stack level of the box in the current stacking context and whether the box establishes a local stacking context.",restrictions:["integer"]},{name:"vertical-align",values:[{name:"auto",description:"Align the dominant baseline of the parent box with the equivalent, or heuristically reconstructed, baseline of the element inline box."},{name:"baseline",description:"Align the 'alphabetic' baseline of the element with the 'alphabetic' baseline of the parent element."},{name:"bottom",description:"Align the after edge of the extended inline box with the after-edge of the line box."},{name:"middle",description:"Align the 'middle' baseline of the inline element with the middle baseline of the parent."},{name:"sub",description:"Lower the baseline of the box to the proper position for subscripts of the parent's box. (This value has no effect on the font size of the element's text.)"},{name:"super",description:"Raise the baseline of the box to the proper position for superscripts of the parent's box. (This value has no effect on the font size of the element's text.)"},{name:"text-bottom",description:"Align the bottom of the box with the after-edge of the parent element's font."},{name:"text-top",description:"Align the top of the box with the before-edge of the parent element's font."},{name:"top",description:"Align the before edge of the extended inline box with the before-edge of the line box."},{name:"-webkit-baseline-middle"}],syntax:"baseline | sub | super | text-top | text-bottom | middle | top | bottom | <percentage> | <length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/vertical-align"}],description:"Affects the vertical positioning of the inline boxes generated by an inline-level element inside a line box.",restrictions:["percentage","length"]},{name:"border-radius",syntax:"<length-percentage>{1,4} [ / <length-percentage>{1,4} ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-radius"}],description:"Defines the radii of the outer border edge.",restrictions:["length","percentage"]},{name:"margin-left",values:[{name:"auto"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-left"}],description:"Shorthand property to set values the thickness of the margin area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. Negative values for margin properties are allowed, but there may be implementation-specific limits..",restrictions:["length","percentage"]},{name:"cursor",values:[{name:"alias",description:"Indicates an alias of/shortcut to something is to be created. Often rendered as an arrow with a small curved arrow next to it."},{name:"all-scroll",description:"Indicates that the something can be scrolled in any direction. Often rendered as arrows pointing up, down, left, and right with a dot in the middle."},{name:"auto",description:"The UA determines the cursor to display based on the current context."},{name:"cell",description:"Indicates that a cell or set of cells may be selected. Often rendered as a thick plus-sign with a dot in the middle."},{name:"col-resize",description:"Indicates that the item/column can be resized horizontally. Often rendered as arrows pointing left and right with a vertical bar separating them."},{name:"context-menu",description:"A context menu is available for the object under the cursor. Often rendered as an arrow with a small menu-like graphic next to it."},{name:"copy",description:"Indicates something is to be copied. Often rendered as an arrow with a small plus sign next to it."},{name:"crosshair",description:"A simple crosshair (e.g., short line segments resembling a '+' sign). Often used to indicate a two dimensional bitmap selection mode."},{name:"default",description:"The platform-dependent default cursor. Often rendered as an arrow."},{name:"e-resize",description:"Indicates that east edge is to be moved."},{name:"ew-resize",description:"Indicates a bidirectional east-west resize cursor."},{name:"grab",description:"Indicates that something can be grabbed."},{name:"grabbing",description:"Indicates that something is being grabbed."},{name:"help",description:"Help is available for the object under the cursor. Often rendered as a question mark or a balloon."},{name:"move",description:"Indicates something is to be moved."},{name:"-moz-grab",description:"Indicates that something can be grabbed."},{name:"-moz-grabbing",description:"Indicates that something is being grabbed."},{name:"-moz-zoom-in",description:"Indicates that something can be zoomed (magnified) in."},{name:"-moz-zoom-out",description:"Indicates that something can be zoomed (magnified) out."},{name:"ne-resize",description:"Indicates that movement starts from north-east corner."},{name:"nesw-resize",description:"Indicates a bidirectional north-east/south-west cursor."},{name:"no-drop",description:"Indicates that the dragged item cannot be dropped at the current cursor location. Often rendered as a hand or pointer with a small circle with a line through it."},{name:"none",description:"No cursor is rendered for the element."},{name:"not-allowed",description:"Indicates that the requested action will not be carried out. Often rendered as a circle with a line through it."},{name:"n-resize",description:"Indicates that north edge is to be moved."},{name:"ns-resize",description:"Indicates a bidirectional north-south cursor."},{name:"nw-resize",description:"Indicates that movement starts from north-west corner."},{name:"nwse-resize",description:"Indicates a bidirectional north-west/south-east cursor."},{name:"pointer",description:"The cursor is a pointer that indicates a link."},{name:"progress",description:"A progress indicator. The program is performing some processing, but is different from 'wait' in that the user may still interact with the program. Often rendered as a spinning beach ball, or an arrow with a watch or hourglass."},{name:"row-resize",description:"Indicates that the item/row can be resized vertically. Often rendered as arrows pointing up and down with a horizontal bar separating them."},{name:"se-resize",description:"Indicates that movement starts from south-east corner."},{name:"s-resize",description:"Indicates that south edge is to be moved."},{name:"sw-resize",description:"Indicates that movement starts from south-west corner."},{name:"text",description:"Indicates text that may be selected. Often rendered as a vertical I-beam."},{name:"vertical-text",description:"Indicates vertical-text that may be selected. Often rendered as a horizontal I-beam."},{name:"wait",description:"Indicates that the program is busy and the user should wait. Often rendered as a watch or hourglass."},{name:"-webkit-grab",description:"Indicates that something can be grabbed."},{name:"-webkit-grabbing",description:"Indicates that something is being grabbed."},{name:"-webkit-zoom-in",description:"Indicates that something can be zoomed (magnified) in."},{name:"-webkit-zoom-out",description:"Indicates that something can be zoomed (magnified) out."},{name:"w-resize",description:"Indicates that west edge is to be moved."},{name:"zoom-in",description:"Indicates that something can be zoomed (magnified) in."},{name:"zoom-out",description:"Indicates that something can be zoomed (magnified) out."}],syntax:"[ [ <url> [ <x> <y> ]? , ]* [ auto | default | none | context-menu | help | pointer | progress | wait | cell | crosshair | text | vertical-text | alias | copy | move | no-drop | not-allowed | e-resize | n-resize | ne-resize | nw-resize | s-resize | se-resize | sw-resize | w-resize | ew-resize | ns-resize | nesw-resize | nwse-resize | col-resize | row-resize | all-scroll | zoom-in | zoom-out | grab | grabbing ] ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/cursor"}],description:"Allows control over cursor appearance in an element",restrictions:["url","number","enum"]},{name:"margin-bottom",values:[{name:"auto"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-bottom"}],description:"Shorthand property to set values the thickness of the margin area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. Negative values for margin properties are allowed, but there may be implementation-specific limits..",restrictions:["length","percentage"]},{name:"right",values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/right"}],description:"Specifies how far an absolutely positioned box's right margin edge is offset to the left of the right edge of the box's 'containing block'.",restrictions:["length","percentage"]},{name:"margin-right",values:[{name:"auto"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-right"}],description:"Shorthand property to set values the thickness of the margin area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. Negative values for margin properties are allowed, but there may be implementation-specific limits..",restrictions:["length","percentage"]},{name:"padding-left",syntax:"<length> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-left"}],description:"Shorthand property to set values the thickness of the padding area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. The value may not be negative.",restrictions:["length","percentage"]},{name:"padding-top",syntax:"<length> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-top"}],description:"Shorthand property to set values the thickness of the padding area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. The value may not be negative.",restrictions:["length","percentage"]},{name:"max-width",values:[{name:"none",description:"No limit on the width of the box."},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/max-width"}],description:"Allows authors to constrain content width to a certain range.",restrictions:["length","percentage"]},{name:"bottom",values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well"}],syntax:"<length> | <percentage> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/bottom"}],description:"Specifies how far an absolutely positioned box's bottom margin edge is offset above the bottom edge of the box's 'containing block'.",restrictions:["length","percentage"]},{name:"background-image",values:[{name:"none",description:"Counts as an image layer but draws nothing."}],syntax:"<bg-image>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-image"}],description:"Sets the background image(s) of an element.",restrictions:["image","enum"]},{name:"content",values:[{name:"attr()",description:"The attr(n) function returns as a string the value of attribute n for the subject of the selector."},{name:"counter(name)",description:"Counters are denoted by identifiers (see the 'counter-increment' and 'counter-reset' properties)."},{name:"icon",description:"The (pseudo-)element is replaced in its entirety by the resource referenced by its 'icon' property, and treated as a replaced element."},{name:"none",description:"On elements, this inhibits the children of the element from being rendered as children of this element, as if the element was empty. On pseudo-elements it causes the pseudo-element to have no content."},{name:"normal",description:"See http://www.w3.org/TR/css3-content/#content for computation rules."},{name:"url()"}],syntax:"normal | none | [ <content-replacement> | <content-list> ] [/ <string> ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/content"}],description:"Determines which page-based occurrence of a given element is applied to a counter or string value.",restrictions:["string","url"]},{name:"padding-right",syntax:"<length> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-right"}],description:"Shorthand property to set values the thickness of the padding area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. The value may not be negative.",restrictions:["length","percentage"]},{name:"white-space",values:[{name:"normal",description:"Sets 'white-space-collapsing' to 'collapse' and 'text-wrap' to 'normal'."},{name:"nowrap",description:"Sets 'white-space-collapsing' to 'collapse' and 'text-wrap' to 'none'."},{name:"pre",description:"Sets 'white-space-collapsing' to 'preserve' and 'text-wrap' to 'none'."},{name:"pre-line",description:"Sets 'white-space-collapsing' to 'preserve-breaks' and 'text-wrap' to 'normal'."},{name:"pre-wrap",description:"Sets 'white-space-collapsing' to 'preserve' and 'text-wrap' to 'normal'."}],syntax:"normal | pre | nowrap | pre-wrap | pre-line | break-spaces",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/white-space"}],description:"Shorthand property for the 'white-space-collapsing' and 'text-wrap' properties.",restrictions:["enum"]},{name:"padding-bottom",syntax:"<length> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-bottom"}],description:"Shorthand property to set values the thickness of the padding area. If left is omitted, it is the same as right. If bottom is omitted it is the same as top, if right is omitted it is the same as top. The value may not be negative.",restrictions:["length","percentage"]},{name:"border-bottom",syntax:"<line-width> || <line-style> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom"}],description:"Shorthand property for setting border width, style and color.",restrictions:["length","line-width","line-style","color"]},{name:"box-shadow",values:[{name:"inset",description:"Changes the drop shadow from an outer shadow (one that shadows the box onto the canvas, as if it were lifted above the canvas) to an inner shadow (one that shadows the canvas onto the box, as if the box were cut out of the canvas and shifted behind it)."},{name:"none",description:"No shadow."}],syntax:"none | <shadow>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-shadow"}],description:"Attaches one or more drop-shadows to the box. The property is a comma-separated list of shadows, each specified by 2-4 length values, an optional color, and an optional 'inset' keyword. Omitted lengths are 0; omitted colors are a user agent chosen color.",restrictions:["length","color","enum"]},{name:"transform",values:[{name:"matrix()",description:"Specifies a 2D transformation in the form of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix [a b c d e f]"},{name:"matrix3d()",description:"Specifies a 3D transformation as a 4x4 homogeneous matrix of 16 values in column-major order."},{name:"none"},{name:"perspective()",description:"Specifies a perspective projection matrix."},{name:"rotate()",description:"Specifies a 2D rotation by the angle specified in the parameter about the origin of the element, as defined by the transform-origin property."},{name:"rotate3d()",description:"Specifies a clockwise 3D rotation by the angle specified in last parameter about the [x,y,z] direction vector described by the first 3 parameters."},{name:"rotateX('angle')",description:"Specifies a clockwise rotation by the given angle about the X axis."},{name:"rotateY('angle')",description:"Specifies a clockwise rotation by the given angle about the Y axis."},{name:"rotateZ('angle')",description:"Specifies a clockwise rotation by the given angle about the Z axis."},{name:"scale()",description:"Specifies a 2D scale operation by the [sx,sy] scaling vector described by the 2 parameters. If the second parameter is not provided, it is takes a value equal to the first."},{name:"scale3d()",description:"Specifies a 3D scale operation by the [sx,sy,sz] scaling vector described by the 3 parameters."},{name:"scaleX()",description:"Specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter."},{name:"scaleY()",description:"Specifies a scale operation using the [sy,1] scaling vector, where sy is given as the parameter."},{name:"scaleZ()",description:"Specifies a scale operation using the [1,1,sz] scaling vector, where sz is given as the parameter."},{name:"skew()",description:"Specifies a skew transformation along the X and Y axes. The first angle parameter specifies the skew on the X axis. The second angle parameter specifies the skew on the Y axis. If the second parameter is not given then a value of 0 is used for the Y angle (ie: no skew on the Y axis)."},{name:"skewX()",description:"Specifies a skew transformation along the X axis by the given angle."},{name:"skewY()",description:"Specifies a skew transformation along the Y axis by the given angle."},{name:"translate()",description:"Specifies a 2D translation by the vector [tx, ty], where tx is the first translation-value parameter and ty is the optional second translation-value parameter."},{name:"translate3d()",description:"Specifies a 3D translation by the vector [tx,ty,tz], with tx, ty and tz being the first, second and third translation-value parameters respectively."},{name:"translateX()",description:"Specifies a translation by the given amount in the X direction."},{name:"translateY()",description:"Specifies a translation by the given amount in the Y direction."},{name:"translateZ()",description:"Specifies a translation by the given amount in the Z direction. Note that percentage values are not allowed in the translateZ translation-value, and if present are evaluated as 0."}],syntax:"none | <transform-list>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transform"}],description:"A two-dimensional transformation is applied to an element through the 'transform' property. This property contains a list of transform functions similar to those allowed by SVG.",restrictions:["enum"]},{name:"min-height",values:[{name:"auto"},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/min-height"}],description:"Allows authors to constrain content height to a certain range.",restrictions:["length","percentage"]},{name:"visibility",values:[{name:"collapse",description:"Table-specific. If used on elements other than rows, row groups, columns, or column groups, 'collapse' has the same meaning as 'hidden'."},{name:"hidden",description:"The generated box is invisible (fully transparent, nothing is drawn), but still affects layout."},{name:"visible",description:"The generated box is visible."}],syntax:"visible | hidden | collapse",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/visibility"}],description:"Specifies whether the boxes generated by an element are rendered. Invisible boxes still affect layout (set the ‘display’ property to ‘none’ to suppress box generation altogether).",restrictions:["enum"]},{name:"background-position",syntax:"<bg-position>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-position"}],description:"Specifies the initial position of the background image(s) (after any resizing) within their corresponding background positioning area.",restrictions:["position","length","percentage"]},{name:"border-top",syntax:"<line-width> || <line-style> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top"}],description:"Shorthand property for setting border width, style and color",restrictions:["length","line-width","line-style","color"]},{name:"min-width",values:[{name:"auto"},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/min-width"}],description:"Allows authors to constrain content width to a certain range.",restrictions:["length","percentage"]},{name:"outline",values:[{name:"auto",description:"Permits the user agent to render a custom outline style, typically the default platform style."},{name:"invert",description:"Performs a color inversion on the pixels on the screen."}],syntax:"[ <'outline-color'> || <'outline-style'> || <'outline-width'> ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/outline"}],description:"Shorthand property for 'outline-style', 'outline-width', and 'outline-color'.",restrictions:["length","line-width","line-style","color","enum"]},{name:"transition",values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],syntax:"<single-transition>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transition"}],description:"Shorthand property combines four of the transition properties into a single property.",restrictions:["time","property","timing-function","enum"]},{name:"clear",values:[{name:"both",description:"The clearance of the generated box is set to the amount necessary to place the top border edge below the bottom outer edge of any right-floating and left-floating boxes that resulted from elements earlier in the source document."},{name:"left",description:"The clearance of the generated box is set to the amount necessary to place the top border edge below the bottom outer edge of any left-floating boxes that resulted from elements earlier in the source document."},{name:"none",description:"No constraint on the box's position with respect to floats."},{name:"right",description:"The clearance of the generated box is set to the amount necessary to place the top border edge below the bottom outer edge of any right-floating boxes that resulted from elements earlier in the source document."}],syntax:"none | left | right | both | inline-start | inline-end",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/clear"}],description:"Indicates which sides of an element's box(es) may not be adjacent to an earlier floating box. The 'clear' property does not consider floats inside the element itself or in other block formatting contexts.",restrictions:["enum"]},{name:"border-color",values:[],syntax:"<color>{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-color"}],description:"The color of the border around all four edges of an element.",restrictions:["color"]},{name:"background-repeat",values:[],syntax:"<repeat-style>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-repeat"}],description:"Specifies how background images are tiled after they have been sized and positioned.",restrictions:["repeat"]},{name:"background-size",values:[{name:"auto",description:"Resolved by using the image’s intrinsic ratio and the size of the other dimension, or failing that, using the image’s intrinsic size, or failing that, treating it as 100%."},{name:"contain",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the largest size such that both its width and its height can fit inside the background positioning area."},{name:"cover",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the smallest size such that both its width and its height can completely cover the background positioning area."}],syntax:"<bg-size>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-size"}],description:"Specifies the size of the background images.",restrictions:["length","percentage"]},{name:"text-transform",values:[{name:"capitalize",description:"Puts the first typographic letter unit of each word in titlecase."},{name:"lowercase",description:"Puts all letters in lowercase."},{name:"none",description:"No effects."},{name:"uppercase",description:"Puts all letters in uppercase."}],syntax:"none | capitalize | uppercase | lowercase | full-width | full-size-kana",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-transform"}],description:"Controls capitalization effects of an element’s text.",restrictions:["enum"]},{name:"max-height",values:[{name:"none",description:"No limit on the height of the box."},{name:"fit-content",description:"Use the fit-content inline size or fit-content block size, as appropriate to the writing mode."},{name:"max-content",description:"Use the max-content inline size or max-content block size, as appropriate to the writing mode."},{name:"min-content",description:"Use the min-content inline size or min-content block size, as appropriate to the writing mode."}],syntax:"<viewport-length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/max-height"}],description:"Allows authors to constrain content height to a certain range.",restrictions:["length","percentage"]},{name:"list-style",values:[{name:"armenian"},{name:"circle",description:"A hollow circle."},{name:"decimal"},{name:"decimal-leading-zero"},{name:"disc",description:"A filled circle."},{name:"georgian"},{name:"inside",description:"The marker box is outside the principal block box, as described in the section on the ::marker pseudo-element below."},{name:"lower-alpha"},{name:"lower-greek"},{name:"lower-latin"},{name:"lower-roman"},{name:"none"},{name:"outside",description:"The ::marker pseudo-element is an inline element placed immediately before all ::before pseudo-elements in the principal block box, after which the element's content flows."},{name:"square",description:"A filled square."},{name:"symbols()",description:"Allows a counter style to be defined inline."},{name:"upper-alpha"},{name:"upper-latin"},{name:"upper-roman"},{name:"url()"}],syntax:"<'list-style-type'> || <'list-style-position'> || <'list-style-image'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/list-style"}],description:"Shorthand for setting 'list-style-type', 'list-style-position' and 'list-style-image'",restrictions:["image","enum","url"]},{name:"font-style",values:[{name:"italic",description:"Selects a font that is labeled as an 'italic' face, or an 'oblique' face if one is not"},{name:"normal",description:"Selects a face that is classified as 'normal'."},{name:"oblique",description:"Selects a font that is labeled as an 'oblique' face, or an 'italic' face if one is not."}],syntax:"normal | italic | oblique <angle>{0,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-style"}],description:"Allows italic or oblique faces to be selected. Italic forms are generally cursive in nature while oblique faces are typically sloped versions of the regular face.",restrictions:["enum"]},{name:"font",values:[{name:"100",description:"Thin"},{name:"200",description:"Extra Light (Ultra Light)"},{name:"300",description:"Light"},{name:"400",description:"Normal"},{name:"500",description:"Medium"},{name:"600",description:"Semi Bold (Demi Bold)"},{name:"700",description:"Bold"},{name:"800",description:"Extra Bold (Ultra Bold)"},{name:"900",description:"Black (Heavy)"},{name:"bold",description:"Same as 700"},{name:"bolder",description:"Specifies the weight of the face bolder than the inherited value."},{name:"caption",description:"The font used for captioned controls (e.g., buttons, drop-downs, etc.)."},{name:"icon",description:"The font used to label icons."},{name:"italic",description:"Selects a font that is labeled 'italic', or, if that is not available, one labeled 'oblique'."},{name:"large"},{name:"larger"},{name:"lighter",description:"Specifies the weight of the face lighter than the inherited value."},{name:"medium"},{name:"menu",description:"The font used in menus (e.g., dropdown menus and menu lists)."},{name:"message-box",description:"The font used in dialog boxes."},{name:"normal",description:"Specifies a face that is not labeled as a small-caps font."},{name:"oblique",description:"Selects a font that is labeled 'oblique'."},{name:"small"},{name:"small-caps",description:"Specifies a font that is labeled as a small-caps font. If a genuine small-caps font is not available, user agents should simulate a small-caps font."},{name:"small-caption",description:"The font used for labeling small controls."},{name:"smaller"},{name:"status-bar",description:"The font used in window status bars."},{name:"x-large"},{name:"x-small"},{name:"xx-large"},{name:"xx-small"}],syntax:"[ [ <'font-style'> || <font-variant-css21> || <'font-weight'> || <'font-stretch'> ]? <'font-size'> [ / <'line-height'> ]? <'font-family'> ] | caption | icon | menu | message-box | small-caption | status-bar",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font"}],description:"Shorthand property for setting 'font-style', 'font-variant', 'font-weight', 'font-size', 'line-height', and 'font-family', at the same place in the style sheet. The syntax of this property is based on a traditional typographical shorthand notation to set multiple properties related to fonts.",restrictions:["font"]},{name:"text-overflow",values:[{name:"clip",description:"Clip inline content that overflows. Characters may be only partially rendered."},{name:"ellipsis",description:"Render an ellipsis character (U+2026) to represent clipped inline content."}],syntax:"[ clip | ellipsis | <string> ]{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-overflow"}],description:"Text can overflow for example when it is prevented from wrapping.",restrictions:["enum","string"]},{name:"border-left",syntax:"<line-width> || <line-style> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-left"}],description:"Shorthand property for setting border width, style and color",restrictions:["length","line-width","line-style","color"]},{name:"border-right",syntax:"<line-width> || <line-style> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-right"}],description:"Shorthand property for setting border width, style and color",restrictions:["length","line-width","line-style","color"]},{name:"border-width",values:[],syntax:"<line-width>{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-width"}],description:"Shorthand that sets the four 'border-*-width' properties. If it has four values, they set top, right, bottom and left in that order. If left is missing, it is the same as right; if bottom is missing, it is the same as top; if right is missing, it is the same as top.",restrictions:["length","line-width"]},{name:"justify-content",values:[{name:"center",description:"Flex items are packed toward the center of the line."},{name:"start",description:"The items are packed flush to each other toward the start edge of the alignment container in the main axis."},{name:"end",description:"The items are packed flush to each other toward the end edge of the alignment container in the main axis."},{name:"left",description:"The items are packed flush to each other toward the left edge of the alignment container in the main axis."},{name:"right",description:"The items are packed flush to each other toward the right edge of the alignment container in the main axis."},{name:"safe",description:"If the size of the item overflows the alignment container, the item is instead aligned as if the alignment mode were start."},{name:"unsafe",description:"Regardless of the relative sizes of the item and alignment container, the given alignment value is honored."},{name:"stretch",description:"If the combined size of the alignment subjects is less than the size of the alignment container, any auto-sized alignment subjects have their size increased equally (not proportionally), while still respecting the constraints imposed by max-height/max-width (or equivalent functionality), so that the combined size exactly fills the alignment container."},{name:"space-evenly",description:"The items are evenly distributed within the alignment container along the main axis."},{name:"flex-end",description:"Flex items are packed toward the end of the line."},{name:"flex-start",description:"Flex items are packed toward the start of the line."},{name:"space-around",description:"Flex items are evenly distributed in the line, with half-size spaces on either end."},{name:"space-between",description:"Flex items are evenly distributed in the line."},{name:"baseline",description:"Specifies participation in first-baseline alignment."},{name:"first baseline",description:"Specifies participation in first-baseline alignment."},{name:"last baseline",description:"Specifies participation in last-baseline alignment."}],syntax:"normal | <content-distribution> | <overflow-position>? [ <content-position> | left | right ]",description:"Aligns flex items along the main axis of the current line of the flex container.",restrictions:["enum"]},{name:"align-items",values:[{name:"baseline",description:"If the flex item’s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment."},{name:"center",description:"The flex item’s margin box is centered in the cross axis within the line."},{name:"flex-end",description:"The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line."},{name:"flex-start",description:"The cross-start margin edge of the flex item is placed flush with the cross-start edge of the line."},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."}],syntax:"normal | stretch | <baseline-position> | [ <overflow-position>? <self-position> ]",description:"Aligns flex items along the cross axis of the current line of the flex container.",restrictions:["enum"]},{name:"overflow-y",values:[{name:"auto",description:"The behavior of the 'auto' value is UA-dependent, but should cause a scrolling mechanism to be provided for overflowing boxes."},{name:"hidden",description:"Content is clipped and no scrolling mechanism should be provided to view the content outside the clipping region."},{name:"scroll",description:"Content is clipped and if the user agent uses a scrolling mechanism that is visible on the screen (such as a scroll bar or a panner), that mechanism should be displayed for a box whether or not any of its content is clipped."},{name:"visible",description:"Content is not clipped, i.e., it may be rendered outside the content box."}],syntax:"visible | hidden | clip | scroll | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-y"}],description:"Specifies the handling of overflow in the vertical direction.",restrictions:["enum"]},{name:"pointer-events",values:[{name:"all",description:"The given element can be the target element for pointer events whenever the pointer is over either the interior or the perimeter of the element."},{name:"fill",description:"The given element can be the target element for pointer events whenever the pointer is over the interior of the element."},{name:"none",description:"The given element does not receive pointer events."},{name:"painted",description:'The given element can be the target element for pointer events when the pointer is over a "painted" area. '},{name:"stroke",description:"The given element can be the target element for pointer events whenever the pointer is over the perimeter of the element."},{name:"visible",description:"The given element can be the target element for pointer events when the ‘visibility’ property is set to visible and the pointer is over either the interior or the perimete of the element."},{name:"visibleFill",description:"The given element can be the target element for pointer events when the ‘visibility’ property is set to visible and when the pointer is over the interior of the element."},{name:"visiblePainted",description:"The given element can be the target element for pointer events when the ‘visibility’ property is set to visible and when the pointer is over a ‘painted’ area."},{name:"visibleStroke",description:"The given element can be the target element for pointer events when the ‘visibility’ property is set to visible and when the pointer is over the perimeter of the element."}],syntax:"auto | none | visiblePainted | visibleFill | visibleStroke | visible | painted | fill | stroke | all | inherit",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/pointer-events"}],description:"Specifies under what circumstances a given element can be the target element for a pointer event.",restrictions:["enum"]},{name:"letter-spacing",values:[{name:"normal",description:"The spacing is the normal spacing for the current font. It is typically zero-length."}],syntax:"normal | <length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/letter-spacing"}],description:"Specifies the minimum, maximum, and optimal spacing between grapheme clusters.",restrictions:["length"]},{name:"border-style",values:[],syntax:"<line-style>{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-style"}],description:"The style of the border around edges of an element.",restrictions:["line-style"]},{name:"animation",values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"infinite",description:"Causes the animation to repeat forever."},{name:"none",description:"No animation is performed"},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],syntax:"<single-animation>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation"}],description:"Shorthand property combines six of the animation properties into a single property.",restrictions:["time","timing-function","enum","identifier","number"]},{name:"overflow-x",values:[{name:"auto",description:"The behavior of the 'auto' value is UA-dependent, but should cause a scrolling mechanism to be provided for overflowing boxes."},{name:"hidden",description:"Content is clipped and no scrolling mechanism should be provided to view the content outside the clipping region."},{name:"scroll",description:"Content is clipped and if the user agent uses a scrolling mechanism that is visible on the screen (such as a scroll bar or a panner), that mechanism should be displayed for a box whether or not any of its content is clipped."},{name:"visible",description:"Content is not clipped, i.e., it may be rendered outside the content box."}],syntax:"visible | hidden | clip | scroll | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-x"}],description:"Specifies the handling of overflow in the horizontal direction.",restrictions:["enum"]},{name:"word-wrap",values:[{name:"break-word",description:"An otherwise unbreakable sequence of characters may be broken at an arbitrary point if there are no otherwise-acceptable break points in the line."},{name:"normal",description:"Lines may break only at allowed break points."}],syntax:"normal | break-word",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-wrap"}],description:"Specifies whether the UA may break within a word to prevent overflow when an otherwise-unbreakable string is too long to fit.",restrictions:["enum"]},{name:"border-collapse",values:[{name:"collapse",description:"Selects the collapsing borders model."},{name:"separate",description:"Selects the separated borders border model."}],syntax:"collapse | separate",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-collapse"}],description:"Selects a table's border model.",restrictions:["enum"]},{name:"flex-direction",values:[{name:"column",description:"The flex container’s main axis has the same orientation as the block axis of the current writing mode."},{name:"column-reverse",description:"Same as 'column', except the main-start and main-end directions are swapped."},{name:"row",description:"The flex container’s main axis has the same orientation as the inline axis of the current writing mode."},{name:"row-reverse",description:"Same as 'row', except the main-start and main-end directions are swapped."}],syntax:"row | row-reverse | column | column-reverse",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-direction"}],description:"Specifies how flex items are placed in the flex container, by setting the direction of the flex container’s main axis.",restrictions:["enum"]},{name:"zoom",browsers:["E12","S3.1","C1","IE5.5","O15"],values:[{name:"normal"}],syntax:"auto | <number> | <percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/zoom"}],description:"Non-standard. Specifies the magnification scale of the object. See 'transform: scale()' for a standards-based alternative.",restrictions:["enum","integer","number","percentage"]},{name:"flex",values:[{name:"auto",description:"Retrieves the value of the main size property as the used 'flex-basis'."},{name:"content",description:"Indicates automatic sizing, based on the flex item’s content."},{name:"none",description:"Expands to '0 0 auto'."}],syntax:"none | [ <'flex-grow'> <'flex-shrink'>? || <'flex-basis'> ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex"}],description:"Specifies the components of a flexible length: the flex grow factor and flex shrink factor, and the flex basis.",restrictions:["length","number","percentage"]},{name:"text-shadow",values:[{name:"none",description:"No shadow."}],syntax:"none | <shadow-t>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-shadow"}],description:"Enables shadow effects to be applied to the text of the element.",restrictions:["length","color"]},{name:"list-style-type",values:[{name:"armenian",description:"Traditional uppercase Armenian numbering."},{name:"circle",description:"A hollow circle."},{name:"decimal",description:"Western decimal numbers."},{name:"decimal-leading-zero",description:"Decimal numbers padded by initial zeros."},{name:"disc",description:"A filled circle."},{name:"georgian",description:"Traditional Georgian numbering."},{name:"lower-alpha",description:"Lowercase ASCII letters."},{name:"lower-greek",description:"Lowercase classical Greek."},{name:"lower-latin",description:"Lowercase ASCII letters."},{name:"lower-roman",description:"Lowercase ASCII Roman numerals."},{name:"none",description:"No marker"},{name:"square",description:"A filled square."},{name:"symbols()",description:"Allows a counter style to be defined inline."},{name:"upper-alpha",description:"Uppercase ASCII letters."},{name:"upper-latin",description:"Uppercase ASCII letters."},{name:"upper-roman",description:"Uppercase ASCII Roman numerals."}],syntax:"<counter-style> | <string> | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/list-style-type"}],description:"Used to construct the default contents of a list item’s marker",restrictions:["enum","string"]},{name:"border-bottom-left-radius",syntax:"<length-percentage>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom-left-radius"}],description:"Defines the radii of the bottom left outer border edge.",restrictions:["length","percentage"]},{name:"user-select",values:[{name:"all",description:"The content of the element must be selected atomically"},{name:"auto"},{name:"contain",description:"UAs must not allow a selection which is started in this element to be extended outside of this element."},{name:"none",description:"The UA must not allow selections to be started in this element."},{name:"text",description:"The element imposes no constraint on the selection."}],status:"nonstandard",syntax:"auto | text | none | contain | all",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/user-select"}],description:"Controls the appearance of selection.",restrictions:["enum"]},{name:"fill",values:[{name:"url()",description:"A URL reference to a paint server element, which is an element that defines a paint server: ‘hatch’, ‘linearGradient’, ‘mesh’, ‘pattern’, ‘radialGradient’ and ‘solidcolor’."},{name:"none",description:"No paint is applied in this layer."}],description:"Paints the interior of the given graphical element.",restrictions:["color","enum","url"]},{name:"transform-origin",syntax:"[ <length-percentage> | left | center | right | top | bottom ] | [ [ <length-percentage> | left | center | right ] && [ <length-percentage> | top | center | bottom ] ] <length>?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transform-origin"}],description:"Establishes the origin of transformation for an element.",restrictions:["position","length","percentage"]},{name:"border-top-left-radius",syntax:"<length-percentage>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top-left-radius"}],description:"Defines the radii of the top left outer border edge.",restrictions:["length","percentage"]},{name:"text-indent",values:[],syntax:"<length-percentage> && hanging? && each-line?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-indent"}],description:"Specifies the indentation applied to lines of inline content in a block. The indentation only affects the first line of inline content in the block unless the 'hanging' keyword is specified, in which case it affects all lines except the first.",restrictions:["percentage","length"]},{name:"border-bottom-right-radius",syntax:"<length-percentage>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom-right-radius"}],description:"Defines the radii of the bottom right outer border edge.",restrictions:["length","percentage"]},{name:"flex-wrap",values:[{name:"nowrap",description:"The flex container is single-line."},{name:"wrap",description:"The flexbox is multi-line."},{name:"wrap-reverse",description:"Same as 'wrap', except the cross-start and cross-end directions are swapped."}],syntax:"nowrap | wrap | wrap-reverse",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-wrap"}],description:"Controls whether the flex container is single-line or multi-line, and the direction of the cross-axis, which determines the direction new lines are stacked in.",restrictions:["enum"]},{name:"border-spacing",syntax:"<length> <length>?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-spacing"}],description:"The lengths specify the distance that separates adjoining cell borders. If one length is specified, it gives both the horizontal and vertical spacing. If two are specified, the first gives the horizontal spacing and the second the vertical spacing. Lengths may not be negative.",restrictions:["length"]},{name:"border-top-right-radius",syntax:"<length-percentage>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top-right-radius"}],description:"Defines the radii of the top right outer border edge.",restrictions:["length","percentage"]},{name:"clip",values:[{name:"auto",description:"The element does not clip."},{name:"rect()",description:"Specifies offsets from the edges of the border box."}],syntax:"<shape> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/clip"}],description:"Deprecated. Use the 'clip-path' property when support allows. Defines the visible portion of an element’s box.",restrictions:["enum"]},{name:"border-top-color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top-color"}],description:"Sets the color of the top border.",restrictions:["color"]},{name:"word-break",values:[{name:"break-all",description:"Lines may break between any two grapheme clusters for non-CJK scripts."},{name:"keep-all",description:"Block characters can no longer create implied break points."},{name:"normal",description:"Breaks non-CJK scripts according to their own rules."}],syntax:"normal | break-all | keep-all | break-word",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/word-break"}],description:"Specifies line break opportunities for non-CJK scripts.",restrictions:["enum"]},{name:"border-bottom-color",syntax:"<'border-top-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom-color"}],description:"Sets the color of the bottom border.",restrictions:["color"]},{name:"flex-grow",syntax:"<number>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-grow"}],description:"Sets the flex grow factor. Negative numbers are invalid.",restrictions:["number"]},{name:"direction",values:[{name:"ltr",description:"Left-to-right direction."},{name:"rtl",description:"Right-to-left direction."}],syntax:"ltr | rtl",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/direction"}],description:"Specifies the inline base direction or directionality of any bidi paragraph, embedding, isolate, or override established by the box. Note: for HTML content use the 'dir' attribute and 'bdo' element rather than this property.",restrictions:["enum"]},{name:"align-self",values:[{name:"auto",description:"Computes to the value of 'align-items' on the element’s parent, or 'stretch' if the element has no parent. On absolutely positioned elements, it computes to itself."},{name:"baseline",description:"If the flex item’s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment."},{name:"center",description:"The flex item’s margin box is centered in the cross axis within the line."},{name:"flex-end",description:"The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line."},{name:"flex-start",description:"The cross-start margin edge of the flex item is placed flush with the cross-start edge of the line."},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."}],syntax:"auto | normal | stretch | <baseline-position> | <overflow-position>? <self-position>",description:"Allows the default alignment along the cross axis to be overridden for individual flex items.",restrictions:["enum"]},{name:"flex-shrink",syntax:"<number>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-shrink"}],description:"Sets the flex shrink factor. Negative numbers are invalid.",restrictions:["number"]},{name:"text-rendering",browsers:["FF1","S5","C4","O15"],values:[{name:"auto"},{name:"geometricPrecision",description:"Indicates that the user agent shall emphasize geometric precision over legibility and rendering speed."},{name:"optimizeLegibility",description:"Indicates that the user agent shall emphasize legibility over rendering speed and geometric precision."},{name:"optimizeSpeed",description:"Indicates that the user agent shall emphasize rendering speed over legibility and geometric precision."}],syntax:"auto | optimizeSpeed | optimizeLegibility | geometricPrecision",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-rendering"}],description:"The creator of SVG content might want to provide a hint to the implementation about what tradeoffs to make as it renders text. The ‘text-rendering’ property provides these hints.",restrictions:["enum"]},{name:"touch-action",values:[{name:"auto",description:"The user agent may determine any permitted touch behaviors for touches that begin on the element."},{name:"cross-slide-x"},{name:"cross-slide-y"},{name:"double-tap-zoom"},{name:"manipulation",description:"The user agent may consider touches that begin on the element only for the purposes of scrolling and continuous zooming."},{name:"none",description:"Touches that begin on the element must not trigger default touch behaviors."},{name:"pan-x",description:"The user agent may consider touches that begin on the element only for the purposes of horizontally scrolling the element’s nearest ancestor with horizontally scrollable content."},{name:"pan-y",description:"The user agent may consider touches that begin on the element only for the purposes of vertically scrolling the element’s nearest ancestor with vertically scrollable content."},{name:"pinch-zoom"}],syntax:"auto | none | [ [ pan-x | pan-left | pan-right ] || [ pan-y | pan-up | pan-down ] || pinch-zoom ] | manipulation",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/touch-action"}],description:"Determines whether touch input may trigger default behavior supplied by user agent.",restrictions:["enum"]},{name:"background-clip",syntax:"<box>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-clip"}],description:"Determines the background painting area.",restrictions:["box"]},{name:"filter",browsers:["E12","FF35","S9.1","C53","O40"],values:[{name:"none",description:"No filter effects are applied."},{name:"blur()",description:"Applies a Gaussian blur to the input image."},{name:"brightness()",description:"Applies a linear multiplier to input image, making it appear more or less bright."},{name:"contrast()",description:"Adjusts the contrast of the input."},{name:"drop-shadow()",description:"Applies a drop shadow effect to the input image."},{name:"grayscale()",description:"Converts the input image to grayscale."},{name:"hue-rotate()",description:"Applies a hue rotation on the input image. "},{name:"invert()",description:"Inverts the samples in the input image."},{name:"opacity()",description:"Applies transparency to the samples in the input image."},{name:"saturate()",description:"Saturates the input image."},{name:"sepia()",description:"Converts the input image to sepia."},{name:"url()",browsers:["E12","FF35","S9.1","C53","O40"],description:"A filter reference to a <filter> element."}],syntax:"none | <filter-function-list>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/filter"}],description:"Processes an element’s rendering before it is displayed in the document, by applying one or more filter effects.",restrictions:["enum","url"]},{name:"src",values:[{name:"url()",description:"Reference font by URL"},{name:"format()",description:"Optional hint describing the format of the font resource."},{name:"local()",description:"Format-specific string that identifies a locally available copy of a given font."}],syntax:"[ <url> [ format( <string># ) ]? | local( <family-name> ) ]#",description:"@font-face descriptor. Specifies the resource containing font data. It is required, whether the font is downloadable or locally installed.",restrictions:["enum","url","identifier"]},{name:"animation-timing-function",syntax:"<timing-function>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-timing-function"}],description:"Describes how the animation will progress over one cycle of its duration.",restrictions:["timing-function"]},{name:"border-right-color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-right-color"}],description:"Sets the color of the right border.",restrictions:["color"]},{name:"font-variant",values:[{name:"normal",description:"Specifies a face that is not labeled as a small-caps font."},{name:"small-caps",description:"Specifies a font that is labeled as a small-caps font. If a genuine small-caps font is not available, user agents should simulate a small-caps font."}],syntax:"normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> || stylistic(<feature-value-name>) || historical-forms || styleset(<feature-value-name>#) || character-variant(<feature-value-name>#) || swash(<feature-value-name>) || ornaments(<feature-value-name>) || annotation(<feature-value-name>) || [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] || <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero || <east-asian-variant-values> || <east-asian-width-values> || ruby ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant"}],description:"Specifies variant representations of the font",restrictions:["enum"]},{name:"border-left-color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-left-color"}],description:"Sets the color of the left border.",restrictions:["color"]},{name:"animation-name",values:[{name:"none",description:"No animation is performed"}],syntax:"[ none | <keyframes-name> ]#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-name"}],description:"Defines a list of animations that apply. Each name is used to select the keyframe at-rule that provides the property values for the animation.",restrictions:["identifier","enum"]},{name:"animation-duration",syntax:"<time>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-duration"}],description:"Defines the length of time that an animation takes to complete one cycle.",restrictions:["time"]},{name:"will-change",browsers:["FF36","S9.1","C36","O24"],values:[{name:"auto",description:"Expresses no particular intent."},{name:"contents",description:"Indicates that the author expects to animate or change something about the element’s contents in the near future."},{name:"scroll-position",description:"Indicates that the author expects to animate or change the scroll position of the element in the near future."}],syntax:"auto | <animateable-feature>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/will-change"}],description:"Provides a rendering hint to the user agent, stating what kinds of changes the author expects to perform on the element.",restrictions:["enum","identifier"]},{name:"stroke",values:[{name:"url()",description:"A URL reference to a paint server element, which is an element that defines a paint server: ‘hatch’, ‘linearGradient’, ‘mesh’, ‘pattern’, ‘radialGradient’ and ‘solidcolor’."},{name:"none",description:"No paint is applied in this layer."}],description:"Paints along the outline of the given graphical element.",restrictions:["color","enum","url"]},{name:"transition-property",values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],syntax:"none | <single-transition-property>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transition-property"}],description:"Specifies the name of the CSS property to which the transition is applied.",restrictions:["property"]},{name:"table-layout",values:[{name:"auto",description:"Use any automatic table layout algorithm."},{name:"fixed",description:"Use the fixed table layout algorithm."}],syntax:"auto | fixed",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/table-layout"}],description:"Controls the algorithm used to lay out the table cells, rows, and columns.",restrictions:["enum"]},{name:"transition-delay",syntax:"<time>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transition-delay"}],description:"Defines when the transition will start. It allows a transition to begin execution some period of time from when it is applied.",restrictions:["time"]},{name:"flex-basis",values:[{name:"auto",description:"Retrieves the value of the main size property as the used 'flex-basis'."},{name:"content",description:"Indicates automatic sizing, based on the flex item’s content."}],syntax:"content | <'width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-basis"}],description:"Sets the flex basis.",restrictions:["length","number","percentage"]},{name:"overflow-wrap",values:[{name:"break-word",description:"An otherwise unbreakable sequence of characters may be broken at an arbitrary point if there are no otherwise-acceptable break points in the line."},{name:"normal",description:"Lines may break only at allowed break points."}],syntax:"normal | break-word | anywhere",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-wrap"}],description:"Specifies whether the UA may break within a word to prevent overflow when an otherwise-unbreakable string is too long to fit within the line box.",restrictions:["enum"]},{name:"border-top-width",syntax:"<line-width>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top-width"}],description:"Sets the thickness of the top border.",restrictions:["length","line-width"]},{name:"outline-width",syntax:"<line-width>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/outline-width"}],description:"Width of the outline.",restrictions:["length","line-width"]},{name:"order",syntax:"<integer>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/order"}],description:"Controls the order in which children of a flex container appear within the flex container, by assigning them to ordinal groups.",restrictions:["integer"]},{name:"border-bottom-width",syntax:"<line-width>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom-width"}],description:"Sets the thickness of the bottom border.",restrictions:["length","line-width"]},{name:"animation-fill-mode",values:[{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"none",description:"There is no change to the property value between the time the animation is applied and the time the animation begins playing or after the animation completes."}],syntax:"<single-animation-fill-mode>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-fill-mode"}],description:"Defines what values are applied by the animation outside the time it is executing.",restrictions:["enum"]},{name:"outline-style",values:[{name:"auto",description:"Permits the user agent to render a custom outline style, typically the default platform style."}],syntax:"auto | <'border-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/outline-style"}],description:"Style of the outline.",restrictions:["line-style","enum"]},{name:"object-fit",browsers:["E16","FF36","S10","C31","O19"],values:[{name:"contain",description:"The replaced content is sized to maintain its aspect ratio while fitting within the element’s content box: its concrete object size is resolved as a contain constraint against the element's used width and height."},{name:"cover",description:"The replaced content is sized to maintain its aspect ratio while filling the element's entire content box: its concrete object size is resolved as a cover constraint against the element’s used width and height."},{name:"fill",description:"The replaced content is sized to fill the element’s content box: the object's concrete object size is the element's used width and height."},{name:"none",description:"The replaced content is not resized to fit inside the element's content box"},{name:"scale-down",description:"Size the content as if ‘none’ or ‘contain’ were specified, whichever would result in a smaller concrete object size."}],syntax:"fill | contain | cover | none | scale-down",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/object-fit"}],description:"Specifies how the contents of a replaced element should be scaled relative to the box established by its used height and width.",restrictions:["enum"]},{name:"stroke-width",description:"Specifies the width of the stroke on the current object.",restrictions:["percentage","length"]},{name:"transition-duration",syntax:"<time>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transition-duration"}],description:"Specifies how long the transition from the old value to the new value should take.",restrictions:["time"]},{name:"animation-delay",syntax:"<time>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-delay"}],description:"Defines when the animation will start.",restrictions:["time"]},{name:"outline-offset",browsers:["E15","FF1.5","S1.2","C1","O9.5"],syntax:"<length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/outline-offset"}],description:"Offset the outline and draw it beyond the border edge.",restrictions:["length"]},{name:"stroke-dashoffset",description:"Specifies the distance into the dash pattern to start the dash.",restrictions:["percentage","length"]},{name:"backface-visibility",values:[{name:"hidden",description:"Back side is hidden."},{name:"visible",description:"Back side is visible."}],syntax:"visible | hidden",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/backface-visibility"}],description:"Determines whether or not the 'back' side of a transformed element is visible when facing the viewer. With an identity transform, the front side of an element faces the viewer.",restrictions:["enum"]},{name:"border-right-width",syntax:"<line-width>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-right-width"}],description:"Sets the thickness of the right border.",restrictions:["length","line-width"]},{name:"flex-flow",values:[{name:"column",description:"The flex container’s main axis has the same orientation as the block axis of the current writing mode."},{name:"column-reverse",description:"Same as 'column', except the main-start and main-end directions are swapped."},{name:"nowrap",description:"The flex container is single-line."},{name:"row",description:"The flex container’s main axis has the same orientation as the inline axis of the current writing mode."},{name:"row-reverse",description:"Same as 'row', except the main-start and main-end directions are swapped."},{name:"wrap",description:"The flexbox is multi-line."},{name:"wrap-reverse",description:"Same as 'wrap', except the cross-start and cross-end directions are swapped."}],syntax:"<'flex-direction'> || <'flex-wrap'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/flex-flow"}],description:"Specifies how flexbox items are placed in the flexbox.",restrictions:["enum"]},{name:"word-spacing",values:[{name:"normal",description:"No additional spacing is applied. Computes to zero."}],syntax:"normal | <length-percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/word-spacing"}],description:"Specifies additional spacing between “words”.",restrictions:["length","percentage"]},{name:"transition-timing-function",syntax:"<timing-function>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transition-timing-function"}],description:"Describes how the intermediate values used during a transition will be calculated.",restrictions:["timing-function"]},{name:"resize",browsers:["FF4","S3","C1","O12.1"],values:[{name:"both",description:"The UA presents a bidirectional resizing mechanism to allow the user to adjust both the height and the width of the element."},{name:"horizontal",description:"The UA presents a unidirectional horizontal resizing mechanism to allow the user to adjust only the width of the element."},{name:"none",description:"The UA does not present a resizing mechanism on the element, and the user is given no direct manipulation mechanism to resize the element."},{name:"vertical",description:"The UA presents a unidirectional vertical resizing mechanism to allow the user to adjust only the height of the element."}],syntax:"none | both | horizontal | vertical | block | inline",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/resize"}],description:"Specifies whether or not an element is resizable by the user, and if so, along which axis/axes.",restrictions:["enum"]},{name:"unicode-bidi",values:[{name:"bidi-override",description:"Inside the element, reordering is strictly in sequence according to the 'direction' property; the implicit part of the bidirectional algorithm is ignored."},{name:"embed",description:"If the element is inline-level, this value opens an additional level of embedding with respect to the bidirectional algorithm. The direction of this embedding level is given by the 'direction' property."},{name:"isolate",description:"The contents of the element are considered to be inside a separate, independent paragraph."},{name:"isolate-override",description:"This combines the isolation behavior of 'isolate' with the directional override behavior of 'bidi-override'"},{name:"normal",description:"The element does not open an additional level of embedding with respect to the bidirectional algorithm. For inline-level elements, implicit reordering works across element boundaries."},{name:"plaintext",description:"For the purposes of the Unicode bidirectional algorithm, the base directionality of each bidi paragraph for which the element forms the containing block is determined not by the element's computed 'direction'."}],syntax:"normal | embed | isolate | bidi-override | isolate-override | plaintext",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/unicode-bidi"}],description:"The level of embedding with respect to the bidirectional algorithm.",restrictions:["enum"]},{name:"unicode-range",values:[{name:"U+26",description:"Ampersand."},{name:"U+20-24F, U+2B0-2FF, U+370-4FF, U+1E00-1EFF, U+2000-20CF, U+2100-23FF, U+2500-26FF, U+E000-F8FF, U+FB00–FB4F",description:"WGL4 character set (Pan-European)."},{name:"U+20-17F, U+2B0-2FF, U+2000-206F, U+20A0-20CF, U+2100-21FF, U+2600-26FF",description:"The Multilingual European Subset No. 1. Latin. Covers ~44 languages."},{name:"U+20-2FF, U+370-4FF, U+1E00-20CF, U+2100-23FF, U+2500-26FF, U+FB00-FB4F, U+FFF0-FFFD",description:"The Multilingual European Subset No. 2. Latin, Greek, and Cyrillic. Covers ~128 language."},{name:"U+20-4FF, U+530-58F, U+10D0-10FF, U+1E00-23FF, U+2440-245F, U+2500-26FF, U+FB00-FB4F, U+FE20-FE2F, U+FFF0-FFFD",description:"The Multilingual European Subset No. 3. Covers all characters belonging to European scripts."},{name:"U+00-7F",description:"Basic Latin (ASCII)."},{name:"U+80-FF",description:"Latin-1 Supplement. Accented characters for Western European languages, common punctuation characters, multiplication and division signs."},{name:"U+100-17F",description:"Latin Extended-A. Accented characters for for Czech, Dutch, Polish, and Turkish."},{name:"U+180-24F",description:"Latin Extended-B. Croatian, Slovenian, Romanian, Non-European and historic latin, Khoisan, Pinyin, Livonian, Sinology."},{name:"U+1E00-1EFF",description:"Latin Extended Additional. Vietnamese, German captial sharp s, Medievalist, Latin general use."},{name:"U+250-2AF",description:"International Phonetic Alphabet Extensions."},{name:"U+370-3FF",description:"Greek and Coptic."},{name:"U+1F00-1FFF",description:"Greek Extended. Accented characters for polytonic Greek."},{name:"U+400-4FF",description:"Cyrillic."},{name:"U+500-52F",description:"Cyrillic Supplement. Extra letters for Komi, Khanty, Chukchi, Mordvin, Kurdish, Aleut, Chuvash, Abkhaz, Azerbaijani, and Orok."},{name:"U+00-52F, U+1E00-1FFF, U+2200–22FF",description:"Latin, Greek, Cyrillic, some punctuation and symbols."},{name:"U+530–58F",description:"Armenian."},{name:"U+590–5FF",description:"Hebrew."},{name:"U+600–6FF",description:"Arabic."},{name:"U+750–77F",description:"Arabic Supplement. Additional letters for African languages, Khowar, Torwali, Burushaski, and early Persian."},{name:"U+8A0–8FF",description:"Arabic Extended-A. Additional letters for African languages, European and Central Asian languages, Rohingya, Tamazight, Arwi, and Koranic annotation signs."},{name:"U+700–74F",description:"Syriac."},{name:"U+900–97F",description:"Devanagari."},{name:"U+980–9FF",description:"Bengali."},{name:"U+A00–A7F",description:"Gurmukhi."},{name:"U+A80–AFF",description:"Gujarati."},{name:"U+B00–B7F",description:"Oriya."},{name:"U+B80–BFF",description:"Tamil."},{name:"U+C00–C7F",description:"Telugu."},{name:"U+C80–CFF",description:"Kannada."},{name:"U+D00–D7F",description:"Malayalam."},{name:"U+D80–DFF",description:"Sinhala."},{name:"U+118A0–118FF",description:"Warang Citi."},{name:"U+E00–E7F",description:"Thai."},{name:"U+1A20–1AAF",description:"Tai Tham."},{name:"U+AA80–AADF",description:"Tai Viet."},{name:"U+E80–EFF",description:"Lao."},{name:"U+F00–FFF",description:"Tibetan."},{name:"U+1000–109F",description:"Myanmar (Burmese)."},{name:"U+10A0–10FF",description:"Georgian."},{name:"U+1200–137F",description:"Ethiopic."},{name:"U+1380–139F",description:"Ethiopic Supplement. Extra Syllables for Sebatbeit, and Tonal marks"},{name:"U+2D80–2DDF",description:"Ethiopic Extended. Extra Syllables for Me'en, Blin, and Sebatbeit."},{name:"U+AB00–AB2F",description:"Ethiopic Extended-A. Extra characters for Gamo-Gofa-Dawro, Basketo, and Gumuz."},{name:"U+1780–17FF",description:"Khmer."},{name:"U+1800–18AF",description:"Mongolian."},{name:"U+1B80–1BBF",description:"Sundanese."},{name:"U+1CC0–1CCF",description:"Sundanese Supplement. Punctuation."},{name:"U+4E00–9FD5",description:"CJK (Chinese, Japanese, Korean) Unified Ideographs. Most common ideographs for modern Chinese and Japanese."},{name:"U+3400–4DB5",description:"CJK Unified Ideographs Extension A. Rare ideographs."},{name:"U+2F00–2FDF",description:"Kangxi Radicals."},{name:"U+2E80–2EFF",description:"CJK Radicals Supplement. Alternative forms of Kangxi Radicals."},{name:"U+1100–11FF",description:"Hangul Jamo."},{name:"U+AC00–D7AF",description:"Hangul Syllables."},{name:"U+3040–309F",description:"Hiragana."},{name:"U+30A0–30FF",description:"Katakana."},{name:"U+A5, U+4E00-9FFF, U+30??, U+FF00-FF9F",description:"Japanese Kanji, Hiragana and Katakana characters plus Yen/Yuan symbol."},{name:"U+A4D0–A4FF",description:"Lisu."},{name:"U+A000–A48F",description:"Yi Syllables."},{name:"U+A490–A4CF",description:"Yi Radicals."},{name:"U+2000-206F",description:"General Punctuation."},{name:"U+3000–303F",description:"CJK Symbols and Punctuation."},{name:"U+2070–209F",description:"Superscripts and Subscripts."},{name:"U+20A0–20CF",description:"Currency Symbols."},{name:"U+2100–214F",description:"Letterlike Symbols."},{name:"U+2150–218F",description:"Number Forms."},{name:"U+2190–21FF",description:"Arrows."},{name:"U+2200–22FF",description:"Mathematical Operators."},{name:"U+2300–23FF",description:"Miscellaneous Technical."},{name:"U+E000-F8FF",description:"Private Use Area."},{name:"U+FB00–FB4F",description:"Alphabetic Presentation Forms. Ligatures for latin, Armenian, and Hebrew."},{name:"U+FB50–FDFF",description:"Arabic Presentation Forms-A. Contextual forms / ligatures for Persian, Urdu, Sindhi, Central Asian languages, etc, Arabic pedagogical symbols, word ligatures."},{name:"U+1F600–1F64F",description:"Emoji: Emoticons."},{name:"U+2600–26FF",description:"Emoji: Miscellaneous Symbols."},{name:"U+1F300–1F5FF",description:"Emoji: Miscellaneous Symbols and Pictographs."},{name:"U+1F900–1F9FF",description:"Emoji: Supplemental Symbols and Pictographs."},{name:"U+1F680–1F6FF",description:"Emoji: Transport and Map Symbols."}],syntax:"<unicode-range>#",description:"@font-face descriptor. Defines the set of Unicode codepoints that may be supported by the font face for which it is declared.",restrictions:["unicode-range"]},{name:"stroke-dasharray",values:[{name:"none",description:"Indicates that no dashing is used."}],description:"Controls the pattern of dashes and gaps used to stroke paths.",restrictions:["length","percentage","number","enum"]},{name:"animation-iteration-count",values:[{name:"infinite",description:"Causes the animation to repeat forever."}],syntax:"<single-animation-iteration-count>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-iteration-count"}],description:"Defines the number of times an animation cycle is played. The default value is one, meaning the animation will play from beginning to end once.",restrictions:["number","enum"]},{name:"image-rendering",browsers:["FF3.6","S6","C13","O15"],values:[{name:"auto",description:"The image should be scaled with an algorithm that maximizes the appearance of the image."},{name:"crisp-edges",description:"The image must be scaled with an algorithm that preserves contrast and edges in the image, and which does not smooth colors or introduce blur to the image in the process."},{name:"-moz-crisp-edges",browsers:["FF3.6","S6","C13","O15"]},{name:"optimizeQuality",description:"Deprecated."},{name:"optimizeSpeed",description:"Deprecated."},{name:"pixelated",description:"When scaling the image up, the 'nearest neighbor' or similar algorithm must be used, so that the image appears to be simply composed of very large pixels."}],syntax:"auto | crisp-edges | pixelated",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/image-rendering"}],description:"Provides a hint to the user-agent about what aspects of an image are most important to preserve when the image is scaled, to aid the user-agent in the choice of an appropriate scaling algorithm.",restrictions:["enum"]},{name:"border-left-width",syntax:"<line-width>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-left-width"}],description:"Sets the thickness of the left border.",restrictions:["length","line-width"]},{name:"align-content",values:[{name:"center",description:"Lines are packed toward the center of the flex container."},{name:"flex-end",description:"Lines are packed toward the end of the flex container."},{name:"flex-start",description:"Lines are packed toward the start of the flex container."},{name:"space-around",description:"Lines are evenly distributed in the flex container, with half-size spaces on either end."},{name:"space-between",description:"Lines are evenly distributed in the flex container."},{name:"stretch",description:"Lines stretch to take up the remaining space."}],syntax:"normal | <baseline-position> | <content-distribution> | <overflow-position>? <content-position>",description:"Aligns a flex container’s lines within the flex container when there is extra space in the cross-axis, similar to how 'justify-content' aligns individual items within the main-axis.",restrictions:["enum"]},{name:"border-bottom-style",syntax:"<line-style>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-bottom-style"}],description:"Sets the style of the bottom border.",restrictions:["line-style"]},{name:"perspective",values:[{name:"none",description:"No perspective transform is applied."}],syntax:"none | <length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/perspective"}],description:"Applies the same transform as the perspective(<number>) transform function, except that it applies only to the positioned or transformed children of the element, not to the transform on the element itself.",restrictions:["length","enum"]},{name:"border-top-style",syntax:"<line-style>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-top-style"}],description:"Sets the style of the top border.",restrictions:["line-style"]},{name:"text-size-adjust",status:"experimental",syntax:"none | auto | <percentage>",browsers:["E12","C54","O41"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-size-adjust"}],description:"The text-size-adjust CSS property controls the text inflation algorithm used on some smartphones and tablets. Other browsers will ignore this property."},{name:"transform-style",browsers:["E12","FF16","S9","C36","O15"],values:[{name:"flat",description:"All children of this element are rendered flattened into the 2D plane of the element."},{name:"preserve-3d",browsers:["E12","FF16","S9","C36","O15"],description:"Flattening is not performed, so children maintain their position in 3D space."}],syntax:"flat | preserve-3d",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transform-style"}],description:"Defines how nested elements are rendered in 3D space.",restrictions:["enum"]},{name:"grid-template-columns",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"none",description:"There is no explicit grid; any rows/columns will be implicitly generated."},{name:"min-content",description:"Represents the largest min-content contribution of the grid items occupying the grid track."},{name:"max-content",description:"Represents the largest max-content contribution of the grid items occupying the grid track."},{name:"auto",description:"As a maximum, identical to 'max-content'. As a minimum, represents the largest minimum size (as specified by min-width/min-height) of the grid items occupying the grid track."},{name:"subgrid",description:"Indicates that the grid will align to its parent grid in that axis."},{name:"minmax()",description:"Defines a size range greater than or equal to min and less than or equal to max."},{name:"repeat()",description:"Represents a repeated fragment of the track list, allowing a large number of columns or rows that exhibit a recurring pattern to be written in a more compact form."}],syntax:"none | <track-list> | <auto-track-list> | subgrid <line-name-list>?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-template-columns"}],description:"specifies, as a space-separated track list, the line names and track sizing functions of the grid.",restrictions:["identifier","length","percentage","enum"]},{name:"list-style-position",values:[{name:"inside",description:"The marker box is outside the principal block box, as described in the section on the ::marker pseudo-element below."},{name:"outside",description:"The ::marker pseudo-element is an inline element placed immediately before all ::before pseudo-elements in the principal block box, after which the element's content flows."}],syntax:"inside | outside",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/list-style-position"}],description:"Specifies the position of the '::marker' pseudo-element's box in the list item.",restrictions:["enum"]},{name:"animation-direction",values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],syntax:"<single-animation-direction>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-direction"}],description:"Defines whether or not the animation should play in reverse on alternate cycles.",restrictions:["enum"]},{name:"animation-play-state",values:[{name:"paused",description:"A running animation will be paused."},{name:"running",description:"Resume playback of a paused animation."}],syntax:"<single-animation-play-state>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation-play-state"}],description:"Defines whether the animation is running or paused.",restrictions:["enum"]},{name:"hyphens",values:[{name:"auto",description:"Conditional hyphenation characters inside a word, if present, take priority over automatic resources when determining hyphenation points within the word."},{name:"manual",description:"Words are only broken at line breaks where there are characters inside the word that suggest line break opportunities"},{name:"none",description:"Words are not broken at line breaks, even if characters inside the word suggest line break points."}],syntax:"none | manual | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/hyphens"}],description:"Controls whether hyphenation is allowed to create more break opportunities within a line of text.",restrictions:["enum"]},{name:"quotes",values:[{name:"none",description:"The 'open-quote' and 'close-quote' values of the 'content' property produce no quotations marks, as if they were 'no-open-quote' and 'no-close-quote' respectively."}],syntax:"none | auto | [ <string> <string> ]+",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/quotes"}],description:"Specifies quotation marks for any number of embedded quotations.",restrictions:["string"]},{name:"background-origin",syntax:"<box>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-origin"}],description:"For elements rendered as a single box, specifies the background positioning area. For elements rendered as multiple boxes (e.g., inline boxes on several lines, boxes on several pages) specifies which boxes 'box-decoration-break' operates on to determine the background positioning area(s).",restrictions:["box"]},{name:"background-attachment",values:[{name:"fixed",description:"The background is fixed with regard to the viewport. In paged media where there is no viewport, a 'fixed' background is fixed with respect to the page box and therefore replicated on every page."},{name:"local",description:"The background is fixed with regard to the element’s contents: if the element has a scrolling mechanism, the background scrolls with the element’s contents."},{name:"scroll",description:"The background is fixed with regard to the element itself and does not scroll with its contents. (It is effectively attached to the element’s border.)"}],syntax:"<attachment>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-attachment"}],description:"Specifies whether the background images are fixed with regard to the viewport ('fixed') or scroll along with the element ('scroll') or its contents ('local').",restrictions:["enum"]},{name:"background-position-x",values:[{name:"center",description:"Equivalent to '50%' ('left 50%') for the horizontal position if the horizontal position is not otherwise specified, or '50%' ('top 50%') for the vertical position if it is."},{name:"left",description:"Equivalent to '0%' for the horizontal position if one or two values are given, otherwise specifies the left edge as the origin for the next offset."},{name:"right",description:"Equivalent to '100%' for the horizontal position if one or two values are given, otherwise specifies the right edge as the origin for the next offset."}],status:"experimental",syntax:"[ center | [ left | right | x-start | x-end ]? <length-percentage>? ]#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-position-x"}],description:"If background images have been specified, this property specifies their initial position (after any resizing) within their corresponding background positioning area.",restrictions:["length","percentage"]},{name:"background-position-y",values:[{name:"bottom",description:"Equivalent to '100%' for the vertical position if one or two values are given, otherwise specifies the bottom edge as the origin for the next offset."},{name:"center",description:"Equivalent to '50%' ('left 50%') for the horizontal position if the horizontal position is not otherwise specified, or '50%' ('top 50%') for the vertical position if it is."},{name:"top",description:"Equivalent to '0%' for the vertical position if one or two values are given, otherwise specifies the top edge as the origin for the next offset."}],status:"experimental",syntax:"[ center | [ top | bottom | y-start | y-end ]? <length-percentage>? ]#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-position-y"}],description:"If background images have been specified, this property specifies their initial position (after any resizing) within their corresponding background positioning area.",restrictions:["length","percentage"]},{name:"font-feature-settings",values:[{name:'"aalt"',description:"Access All Alternates."},{name:'"abvf"',description:"Above-base Forms. Required in Khmer script."},{name:'"abvm"',description:"Above-base Mark Positioning. Required in Indic scripts."},{name:'"abvs"',description:"Above-base Substitutions. Required in Indic scripts."},{name:'"afrc"',description:"Alternative Fractions."},{name:'"akhn"',description:"Akhand. Required in most Indic scripts."},{name:'"blwf"',description:"Below-base Form. Required in a number of Indic scripts."},{name:'"blwm"',description:"Below-base Mark Positioning. Required in Indic scripts."},{name:'"blws"',description:"Below-base Substitutions. Required in Indic scripts."},{name:'"calt"',description:"Contextual Alternates."},{name:'"case"',description:"Case-Sensitive Forms. Applies only to European scripts; particularly prominent in Spanish-language setting."},{name:'"ccmp"',description:"Glyph Composition/Decomposition."},{name:'"cfar"',description:"Conjunct Form After Ro. Required in Khmer scripts."},{name:'"cjct"',description:"Conjunct Forms. Required in Indic scripts that show similarity to Devanagari."},{name:'"clig"',description:"Contextual Ligatures."},{name:'"cpct"',description:"Centered CJK Punctuation. Used primarily in Chinese fonts."},{name:'"cpsp"',description:"Capital Spacing. Should not be used in connecting scripts (e.g. most Arabic)."},{name:'"cswh"',description:"Contextual Swash."},{name:'"curs"',description:"Cursive Positioning. Can be used in any cursive script."},{name:'"c2pc"',description:"Petite Capitals From Capitals. Applies only to bicameral scripts."},{name:'"c2sc"',description:"Small Capitals From Capitals. Applies only to bicameral scripts."},{name:'"dist"',description:"Distances. Required in Indic scripts."},{name:'"dlig"',description:"Discretionary ligatures."},{name:'"dnom"',description:"Denominators."},{name:'"dtls"',description:"Dotless Forms. Applied to math formula layout."},{name:'"expt"',description:"Expert Forms. Applies only to Japanese."},{name:'"falt"',description:"Final Glyph on Line Alternates. Can be used in any cursive script."},{name:'"fin2"',description:"Terminal Form #2. Used only with the Syriac script."},{name:'"fin3"',description:"Terminal Form #3. Used only with the Syriac script."},{name:'"fina"',description:"Terminal Forms. Can be used in any alphabetic script."},{name:'"flac"',description:"Flattened ascent forms. Applied to math formula layout."},{name:'"frac"',description:"Fractions."},{name:'"fwid"',description:"Full Widths. Applies to any script which can use monospaced forms."},{name:'"half"',description:"Half Forms. Required in Indic scripts that show similarity to Devanagari."},{name:'"haln"',description:"Halant Forms. Required in Indic scripts."},{name:'"halt"',description:"Alternate Half Widths. Used only in CJKV fonts."},{name:'"hist"',description:"Historical Forms."},{name:'"hkna"',description:"Horizontal Kana Alternates. Applies only to fonts that support kana (hiragana and katakana)."},{name:'"hlig"',description:"Historical Ligatures."},{name:'"hngl"',description:"Hangul. Korean only."},{name:'"hojo"',description:"Hojo Kanji Forms (JIS X 0212-1990 Kanji Forms). Used only with Kanji script."},{name:'"hwid"',description:"Half Widths. Generally used only in CJKV fonts."},{name:'"init"',description:"Initial Forms. Can be used in any alphabetic script."},{name:'"isol"',description:"Isolated Forms. Can be used in any cursive script."},{name:'"ital"',description:"Italics. Applies mostly to Latin; note that many non-Latin fonts contain Latin as well."},{name:'"jalt"',description:"Justification Alternates. Can be used in any cursive script."},{name:'"jp78"',description:"JIS78 Forms. Applies only to Japanese."},{name:'"jp83"',description:"JIS83 Forms. Applies only to Japanese."},{name:'"jp90"',description:"JIS90 Forms. Applies only to Japanese."},{name:'"jp04"',description:"JIS2004 Forms. Applies only to Japanese."},{name:'"kern"',description:"Kerning."},{name:'"lfbd"',description:"Left Bounds."},{name:'"liga"',description:"Standard Ligatures."},{name:'"ljmo"',description:"Leading Jamo Forms. Required for Hangul script when Ancient Hangul writing system is supported."},{name:'"lnum"',description:"Lining Figures."},{name:'"locl"',description:"Localized Forms."},{name:'"ltra"',description:"Left-to-right glyph alternates."},{name:'"ltrm"',description:"Left-to-right mirrored forms."},{name:'"mark"',description:"Mark Positioning."},{name:'"med2"',description:"Medial Form #2. Used only with the Syriac script."},{name:'"medi"',description:"Medial Forms."},{name:'"mgrk"',description:"Mathematical Greek."},{name:'"mkmk"',description:"Mark to Mark Positioning."},{name:'"nalt"',description:"Alternate Annotation Forms."},{name:'"nlck"',description:"NLC Kanji Forms. Used only with Kanji script."},{name:'"nukt"',description:"Nukta Forms. Required in Indic scripts.."},{name:'"numr"',description:"Numerators."},{name:'"onum"',description:"Oldstyle Figures."},{name:'"opbd"',description:"Optical Bounds."},{name:'"ordn"',description:"Ordinals. Applies mostly to Latin script."},{name:'"ornm"',description:"Ornaments."},{name:'"palt"',description:"Proportional Alternate Widths. Used mostly in CJKV fonts."},{name:'"pcap"',description:"Petite Capitals."},{name:'"pkna"',description:"Proportional Kana. Generally used only in Japanese fonts."},{name:'"pnum"',description:"Proportional Figures."},{name:'"pref"',description:"Pre-base Forms. Required in Khmer and Myanmar (Burmese) scripts and southern Indic scripts that may display a pre-base form of Ra."},{name:'"pres"',description:"Pre-base Substitutions. Required in Indic scripts."},{name:'"pstf"',description:"Post-base Forms. Required in scripts of south and southeast Asia that have post-base forms for consonants eg: Gurmukhi, Malayalam, Khmer."},{name:'"psts"',description:"Post-base Substitutions."},{name:'"pwid"',description:"Proportional Widths."},{name:'"qwid"',description:"Quarter Widths. Generally used only in CJKV fonts."},{name:'"rand"',description:"Randomize."},{name:'"rclt"',description:"Required Contextual Alternates. May apply to any script, but is especially important for many styles of Arabic."},{name:'"rlig"',description:"Required Ligatures. Applies to Arabic and Syriac. May apply to some other scripts."},{name:'"rkrf"',description:"Rakar Forms. Required in Devanagari and Gujarati scripts."},{name:'"rphf"',description:"Reph Form. Required in Indic scripts. E.g. Devanagari, Kannada."},{name:'"rtbd"',description:"Right Bounds."},{name:'"rtla"',description:"Right-to-left alternates."},{name:'"rtlm"',description:"Right-to-left mirrored forms."},{name:'"ruby"',description:"Ruby Notation Forms. Applies only to Japanese."},{name:'"salt"',description:"Stylistic Alternates."},{name:'"sinf"',description:"Scientific Inferiors."},{name:'"size"',description:"Optical size."},{name:'"smcp"',description:"Small Capitals. Applies only to bicameral scripts."},{name:'"smpl"',description:"Simplified Forms. Applies only to Chinese and Japanese."},{name:'"ssty"',description:"Math script style alternates."},{name:'"stch"',description:"Stretching Glyph Decomposition."},{name:'"subs"',description:"Subscript."},{name:'"sups"',description:"Superscript."},{name:'"swsh"',description:"Swash. Does not apply to ideographic scripts."},{name:'"titl"',description:"Titling."},{name:'"tjmo"',description:"Trailing Jamo Forms. Required for Hangul script when Ancient Hangul writing system is supported."},{name:'"tnam"',description:"Traditional Name Forms. Applies only to Japanese."},{name:'"tnum"',description:"Tabular Figures."},{name:'"trad"',description:"Traditional Forms. Applies only to Chinese and Japanese."},{name:'"twid"',description:"Third Widths. Generally used only in CJKV fonts."},{name:'"unic"',description:"Unicase."},{name:'"valt"',description:"Alternate Vertical Metrics. Applies only to scripts with vertical writing modes."},{name:'"vatu"',description:"Vattu Variants. Used for Indic scripts. E.g. Devanagari."},{name:'"vert"',description:"Vertical Alternates. Applies only to scripts with vertical writing modes."},{name:'"vhal"',description:"Alternate Vertical Half Metrics. Used only in CJKV fonts."},{name:'"vjmo"',description:"Vowel Jamo Forms. Required for Hangul script when Ancient Hangul writing system is supported."},{name:'"vkna"',description:"Vertical Kana Alternates. Applies only to fonts that support kana (hiragana and katakana)."},{name:'"vkrn"',description:"Vertical Kerning."},{name:'"vpal"',description:"Proportional Alternate Vertical Metrics. Used mostly in CJKV fonts."},{name:'"vrt2"',description:"Vertical Alternates and Rotation. Applies only to scripts with vertical writing modes."},{name:'"zero"',description:"Slashed Zero."},{name:"normal",description:"No change in glyph substitution or positioning occurs."},{name:"off",description:"Disable feature."},{name:"on",description:"Enable feature."}],syntax:"normal | <feature-tag-value>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-feature-settings"}],description:"Provides low-level control over OpenType font features. It is intended as a way of providing access to font features that are not widely used but are needed for a particular use case.",restrictions:["string","integer"]},{name:"border-left-style",syntax:"<line-style>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-left-style"}],description:"Sets the style of the left border.",restrictions:["line-style"]},{name:"font-stretch",values:[{name:"condensed"},{name:"expanded"},{name:"extra-condensed"},{name:"extra-expanded"},{name:"narrower",description:"Indicates a narrower value relative to the width of the parent element."},{name:"normal"},{name:"semi-condensed"},{name:"semi-expanded"},{name:"ultra-condensed"},{name:"ultra-expanded"},{name:"wider",description:"Indicates a wider value relative to the width of the parent element."}],syntax:"<font-stretch-absolute>{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-stretch"}],description:"Selects a normal, condensed, or expanded face from a font family.",restrictions:["enum"]},{name:"outline-color",values:[{name:"invert",description:"Performs a color inversion on the pixels on the screen."}],syntax:"<color> | invert",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/outline-color"}],description:"The color of the outline.",restrictions:["enum","color"]},{name:"border-right-style",syntax:"<line-style>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-right-style"}],description:"Sets the style of the right border.",restrictions:["line-style"]},{name:"clip-path",values:[{name:"none",description:"No clipping path gets created."},{name:"url()",description:"References a <clipPath> element to create a clipping path."}],syntax:"<clip-source> | [ <basic-shape> || <geometry-box> ] | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/clip-path"}],description:"Specifies a clipping path where everything inside the path is visible and everything outside is clipped out.",restrictions:["url","shape","geometry-box","enum"]},{name:"list-style-image",values:[{name:"none",description:"The default contents of the of the list item’s marker are given by 'list-style-type' instead."}],syntax:"<url> | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/list-style-image"}],description:"Sets the image that will be used as the list item marker. When the image is available, it will replace the marker set with the 'list-style-type' marker.",restrictions:["image"]},{name:"counter-increment",values:[{name:"none",description:"This element does not alter the value of any counters."}],syntax:"[ <custom-ident> <integer>? ]+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/counter-increment"}],description:"Manipulate the value of existing counters.",restrictions:["identifier","integer"]},{name:"counter-reset",values:[{name:"none",description:"The counter is not modified."}],syntax:"[ <custom-ident> <integer>? ]+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/counter-reset"}],description:"Property accepts one or more names of counters (identifiers), each one optionally followed by an integer. The integer gives the value that the counter is set to on each occurrence of the element.",restrictions:["identifier","integer"]},{name:"font-display",status:"experimental",syntax:"[ auto | block | swap | fallback | optional ]",description:"The font-display descriptor determines how a font face is displayed based on whether and when it is downloaded and ready to use."},{name:"border-image",values:[{name:"auto",description:"If 'auto' is specified then the border image width is the intrinsic width or height (whichever is applicable) of the corresponding image slice. If the image does not have the required intrinsic dimension then the corresponding border-width is used instead."},{name:"fill",description:"Causes the middle part of the border-image to be preserved."},{name:"none",description:"Use the border styles."},{name:"repeat",description:"The image is tiled (repeated) to fill the area."},{name:"round",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the image is rescaled so that it does."},{name:"space",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the extra space is distributed around the tiles."},{name:"stretch",description:"The image is stretched to fill the area."},{name:"url()"}],syntax:"<'border-image-source'> || <'border-image-slice'> [ / <'border-image-width'> | / <'border-image-width'>? / <'border-image-outset'> ]? || <'border-image-repeat'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image"}],description:"Shorthand property for setting 'border-image-source', 'border-image-slice', 'border-image-width', 'border-image-outset' and 'border-image-repeat'. Omitted values are set to their initial values.",restrictions:["length","percentage","number","url","enum"]},{name:"column-count",values:[{name:"auto",description:"Determines the number of columns by the 'column-width' property and the element width."}],syntax:"<integer> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-count"}],description:"Describes the optimal number of columns into which the content of the element will be flowed.",restrictions:["integer","enum"]},{name:"column-gap",values:[{name:"normal",description:"User agent specific and typically equivalent to 1em."}],syntax:"normal | <length-percentage>",description:"Sets the gap between columns. If there is a column rule between columns, it will appear in the middle of the gap.",restrictions:["length","enum"]},{name:"text-decoration-color",browsers:["FF36","S12.1","C57","O44"],syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-color"}],description:"Specifies the color of text decoration (underlines overlines, and line-throughs) set on the element with text-decoration-line.",restrictions:["color"]},{name:"all",browsers:["FF27","S9.1","C37","O24"],values:[],syntax:"initial | inherit | unset | revert",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/all"}],description:"Shorthand that resets all properties except 'direction' and 'unicode-bidi'.",restrictions:["enum"]},{name:"object-position",browsers:["E16","FF36","S10","C31","O19"],syntax:"<position>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/object-position"}],description:"Determines the alignment of the replaced element inside its box.",restrictions:["position","length","percentage"]},{name:"page-break-inside",values:[{name:"auto",description:"Neither force nor forbid a page break inside the generated box."},{name:"avoid",description:"Avoid a page break inside the generated box."}],syntax:"auto | avoid",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/page-break-inside"}],description:"Defines rules for page breaks inside an element.",restrictions:["enum"]},{name:"stroke-linecap",values:[{name:"butt",description:"Indicates that the stroke for each subpath does not extend beyond its two endpoints."},{name:"round",description:"Indicates that at each end of each subpath, the shape representing the stroke will be extended by a half circle with a radius equal to the stroke width."},{name:"square",description:"Indicates that at the end of each subpath, the shape representing the stroke will be extended by a rectangle with the same width as the stroke width and whose length is half of the stroke width."}],description:"Specifies the shape to be used at the end of open subpaths when they are stroked.",restrictions:["enum"]},{name:"size",browsers:["C","O8"],restrictions:["length"]},{name:"empty-cells",values:[{name:"hide",description:"No borders or backgrounds are drawn around/behind empty cells."},{name:"-moz-show-background"},{name:"show",description:"Borders and backgrounds are drawn around/behind empty cells (like normal cells)."}],syntax:"show | hide",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/empty-cells"}],description:"In the separated borders model, this property controls the rendering of borders and backgrounds around cells that have no visible content.",restrictions:["enum"]},{name:"page-break-after",values:[{name:"always",description:"Always force a page break after the generated box."},{name:"auto",description:"Neither force nor forbid a page break after generated box."},{name:"avoid",description:"Avoid a page break after the generated box."},{name:"left",description:"Force one or two page breaks after the generated box so that the next page is formatted as a left page."},{name:"right",description:"Force one or two page breaks after the generated box so that the next page is formatted as a right page."}],syntax:"auto | always | avoid | left | right | recto | verso",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/page-break-after"}],description:"Defines rules for page breaks after an element.",restrictions:["enum"]},{name:"fill-opacity",description:"Specifies the opacity of the painting operation used to paint the interior the current object.",restrictions:["number(0-1)"]},{name:"grid-gap",browsers:["FF52","C57","S10.1","O44"],status:"obsolete",syntax:"<'grid-row-gap'> <'grid-column-gap'>?",description:"Shorthand that specifies the gutters between grid columns and grid rows in one declaration. Replaced by 'gap' property.",restrictions:["length"]},{name:"margin-block-end",browsers:["FF41","S12.1","C69","O56"],values:[{name:"auto"}],syntax:"<'margin-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-block-end"}],description:"Logical 'margin-bottom'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"contain",browsers:["FF69","C52","O40"],values:[{name:"none",description:"Indicates that the property has no effect."},{name:"strict",description:"Turns on all forms of containment for the element."},{name:"content",description:"All containment rules except size are applied to the element."},{name:"size",description:"For properties that can have effects on more than just an element and its descendants, those effects don't escape the containing element."},{name:"layout",description:"Turns on layout containment for the element."},{name:"style",description:"Turns on style containment for the element."},{name:"paint",description:"Turns on paint containment for the element."}],status:"experimental",syntax:"none | strict | content | [ size || layout || style || paint ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/contain"}],description:"Indicates that an element and its contents are, as much as possible, independent of the rest of the document tree.",restrictions:["enum"]},{name:"padding-inline-start",browsers:["FF41","S12.1","C69","O56"],syntax:"<'padding-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-inline-start"}],description:"Logical 'padding-left'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"margin-inline-start",browsers:["FF41","S12.1","C69","O56"],values:[{name:"auto"}],syntax:"<'margin-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-inline-start"}],description:"Logical 'margin-left'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"margin-inline-end",browsers:["FF41","S12.1","C69","O56"],values:[{name:"auto"}],syntax:"<'margin-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-inline-end"}],description:"Logical 'margin-right'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"grid-template-rows",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"none",description:"There is no explicit grid; any rows/columns will be implicitly generated."},{name:"min-content",description:"Represents the largest min-content contribution of the grid items occupying the grid track."},{name:"max-content",description:"Represents the largest max-content contribution of the grid items occupying the grid track."},{name:"auto",description:"As a maximum, identical to 'max-content'. As a minimum, represents the largest minimum size (as specified by min-width/min-height) of the grid items occupying the grid track."},{name:"subgrid",description:"Indicates that the grid will align to its parent grid in that axis."},{name:"minmax()",description:"Defines a size range greater than or equal to min and less than or equal to max."},{name:"repeat()",description:"Represents a repeated fragment of the track list, allowing a large number of columns or rows that exhibit a recurring pattern to be written in a more compact form."}],syntax:"none | <track-list> | <auto-track-list> | subgrid <line-name-list>?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-template-rows"}],description:"specifies, as a space-separated track list, the line names and track sizing functions of the grid.",restrictions:["identifier","length","percentage","string","enum"]},{name:"padding-inline-end",browsers:["FF41","S12.1","C69","O56"],syntax:"<'padding-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-inline-end"}],description:"Logical 'padding-right'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"stroke-opacity",description:"Specifies the opacity of the painting operation used to stroke the current object.",restrictions:["number(0-1)"]},{name:"orphans",browsers:["E12","S1.3","C25","IE8","O9.2"],syntax:"<integer>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/orphans"}],description:"Specifies the minimum number of line boxes in a block container that must be left in a fragment before a fragmentation break.",restrictions:["integer"]},{name:"shape-outside",browsers:["FF62","S10.1","C37","O24"],values:[{name:"margin-box",description:"The background is painted within (clipped to) the margin box."},{name:"none",description:"The float area is unaffected."}],syntax:"none | <shape-box> || <basic-shape> | <image>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/shape-outside"}],description:"Specifies an orthogonal rotation to be applied to an image before it is laid out.",restrictions:["image","box","shape","enum"]},{name:"caption-side",values:[{name:"bottom",description:"Positions the caption box below the table box."},{name:"top",description:"Positions the caption box above the table box."}],syntax:"top | bottom | block-start | block-end | inline-start | inline-end",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/caption-side"}],description:"Specifies the position of the caption box with respect to the table box.",restrictions:["enum"]},{name:"widows",browsers:["E12","S1.3","C25","IE8","O9.2"],syntax:"<integer>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/widows"}],description:"Specifies the minimum number of line boxes of a block container that must be left in a fragment after a break.",restrictions:["integer"]},{name:"grid-column",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line> [ / <grid-line> ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-column"}],description:"Shorthand for 'grid-column-start' and 'grid-column-end'.",restrictions:["identifier","integer","enum"]},{name:"perspective-origin",syntax:"<position>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/perspective-origin"}],description:"Establishes the origin for the perspective property. It effectively sets the X and Y position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"column-width",values:[{name:"auto",description:"The width depends on the values of other properties."}],syntax:"<length> | auto",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-width"}],description:"Describes the width of columns in multicol elements.",restrictions:["length","enum"]},{name:"mix-blend-mode",browsers:["FF32","S8","C41","O28"],values:[{name:"normal",description:"Default attribute which specifies no blending"},{name:"multiply",description:"The source color is multiplied by the destination color and replaces the destination."},{name:"screen",description:"Multiplies the complements of the backdrop and source color values, then complements the result."},{name:"overlay",description:"Multiplies or screens the colors, depending on the backdrop color value."},{name:"darken",description:"Selects the darker of the backdrop and source colors."},{name:"lighten",description:"Selects the lighter of the backdrop and source colors."},{name:"color-dodge",description:"Brightens the backdrop color to reflect the source color."},{name:"color-burn",description:"Darkens the backdrop color to reflect the source color."},{name:"hard-light",description:"Multiplies or screens the colors, depending on the source color value."},{name:"soft-light",description:"Darkens or lightens the colors, depending on the source color value."},{name:"difference",description:"Subtracts the darker of the two constituent colors from the lighter color.."},{name:"exclusion",description:"Produces an effect similar to that of the Difference mode but lower in contrast."},{name:"hue",browsers:["FF32","S8","C41","O28"],description:"Creates a color with the hue of the source color and the saturation and luminosity of the backdrop color."},{name:"saturation",browsers:["FF32","S8","C41","O28"],description:"Creates a color with the saturation of the source color and the hue and luminosity of the backdrop color."},{name:"color",browsers:["FF32","S8","C41","O28"],description:"Creates a color with the hue and saturation of the source color and the luminosity of the backdrop color."},{name:"luminosity",browsers:["FF32","S8","C41","O28"],description:"Creates a color with the luminosity of the source color and the hue and saturation of the backdrop color."}],syntax:"<blend-mode>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mix-blend-mode"}],description:"Defines the formula that must be used to mix the colors with the backdrop.",restrictions:["enum"]},{name:"grid-auto-rows",values:[{name:"min-content",description:"Represents the largest min-content contribution of the grid items occupying the grid track."},{name:"max-content",description:"Represents the largest max-content contribution of the grid items occupying the grid track."},{name:"auto",description:"As a maximum, identical to 'max-content'. As a minimum, represents the largest minimum size (as specified by min-width/min-height) of the grid items occupying the grid track."},{name:"minmax()",description:"Defines a size range greater than or equal to min and less than or equal to max."}],syntax:"<track-size>+",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-auto-rows"}],description:"Specifies the size of implicitly created rows.",restrictions:["length","percentage"]},{name:"font-variant-ligatures",browsers:["FF34","S9.1","C34","O21"],values:[{name:"additional-ligatures",description:"Enables display of additional ligatures."},{name:"common-ligatures",description:"Enables display of common ligatures."},{name:"contextual",browsers:["FF34","S9.1","C34","O21"],description:"Enables display of contextual alternates."},{name:"discretionary-ligatures",description:"Enables display of discretionary ligatures."},{name:"historical-ligatures",description:"Enables display of historical ligatures."},{name:"no-additional-ligatures",description:"Disables display of additional ligatures."},{name:"no-common-ligatures",description:"Disables display of common ligatures."},{name:"no-contextual",browsers:["FF34","S9.1","C34","O21"],description:"Disables display of contextual alternates."},{name:"no-discretionary-ligatures",description:"Disables display of discretionary ligatures."},{name:"no-historical-ligatures",description:"Disables display of historical ligatures."},{name:"none",browsers:["FF34","S9.1","C34","O21"],description:"Disables all ligatures."},{name:"normal",description:"Implies that the defaults set by the font are used."}],syntax:"normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-ligatures"}],description:"Specifies control over which ligatures are enabled or disabled. A value of ‘normal’ implies that the defaults set by the font are used.",restrictions:["enum"]},{name:"scroll-behavior",browsers:["FF36","C61","O48"],values:[{name:"auto",description:"Scrolls in an instant fashion."},{name:"smooth",description:"Scrolls in a smooth fashion using a user-agent-defined timing function and time period."}],syntax:"auto | smooth",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-behavior"}],description:"Specifies the scrolling behavior for a scrolling box, when scrolling happens due to navigation or CSSOM scrolling APIs.",restrictions:["enum"]},{name:"text-decoration-skip",status:"experimental",syntax:"none | [ objects || [ spaces | [ leading-spaces || trailing-spaces ] ] || edges || box-decoration ]",browsers:["S12.1","C57","O44"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-skip"}],description:"The text-decoration-skip CSS property specifies what parts of the element’s content any text decoration affecting the element must skip over. It controls all text decoration lines drawn by the element and also any text decoration lines drawn by its ancestors."},{name:"columns",values:[{name:"auto",description:"The width depends on the values of other properties."}],syntax:"<'column-width'> || <'column-count'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/columns"}],description:"A shorthand property which sets both 'column-width' and 'column-count'.",restrictions:["length","integer","enum"]},{name:"column-rule",syntax:"<'column-rule-width'> || <'column-rule-style'> || <'column-rule-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-rule"}],description:"Shorthand for setting 'column-rule-width', 'column-rule-style', and 'column-rule-color' at the same place in the style sheet. Omitted values are set to their initial values.",restrictions:["length","line-width","line-style","color"]},{name:"line-break",values:[{name:"auto",description:"The UA determines the set of line-breaking restrictions to use for CJK scripts, and it may vary the restrictions based on the length of the line; e.g., use a less restrictive set of line-break rules for short lines."},{name:"loose",description:"Breaks text using the least restrictive set of line-breaking rules. Typically used for short lines, such as in newspapers."},{name:"normal",description:"Breaks text using the most common set of line-breaking rules."},{name:"strict",description:"Breaks CJK scripts using a more restrictive set of line-breaking rules than 'normal'."}],syntax:"auto | loose | normal | strict | anywhere",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/line-break"}],description:"Specifies what set of line breaking restrictions are in effect within the element.",restrictions:["enum"]},{name:"text-align-last",browsers:["E12","FF49","C47","IE5.5","O"],values:[{name:"auto",description:"Content on the affected line is aligned per 'text-align' unless 'text-align' is set to 'justify', in which case it is 'start-aligned'."},{name:"center",description:"The inline contents are centered within the line box."},{name:"justify",description:"The text is justified according to the method specified by the 'text-justify' property."},{name:"left",description:"The inline contents are aligned to the left edge of the line box. In vertical text, 'left' aligns to the edge of the line box that would be the start edge for left-to-right text."},{name:"right",description:"The inline contents are aligned to the right edge of the line box. In vertical text, 'right' aligns to the edge of the line box that would be the end edge for left-to-right text."}],syntax:"auto | start | end | left | right | center | justify",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-align-last"}],description:"Describes how the last line of a block or a line right before a forced line break is aligned when 'text-align' is set to 'justify'.",restrictions:["enum"]},{name:"border-image-width",values:[{name:"auto",description:"The border image width is the intrinsic width or height (whichever is applicable) of the corresponding image slice. If the image does not have the required intrinsic dimension then the corresponding border-width is used instead."}],syntax:"[ <length-percentage> | <number> | auto ]{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image-width"}],description:"The four values of 'border-image-width' specify offsets that are used to divide the border image area into nine parts. They represent inward distances from the top, right, bottom, and left sides of the area, respectively.",restrictions:["length","percentage","number"]},{name:"stroke-miterlimit",description:"When two line segments meet at a sharp angle and miter joins have been specified for 'stroke-linejoin', it is possible for the miter to extend far beyond the thickness of the line stroking the path.",restrictions:["number"]},{name:"border-image-repeat",values:[{name:"repeat",description:"The image is tiled (repeated) to fill the area."},{name:"round",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the image is rescaled so that it does."},{name:"space",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the extra space is distributed around the tiles."},{name:"stretch",description:"The image is stretched to fill the area."}],syntax:"[ stretch | repeat | round | space ]{1,2}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image-repeat"}],description:"Specifies how the images for the sides and the middle part of the border image are scaled and tiled. If the second keyword is absent, it is assumed to be the same as the first.",restrictions:["enum"]},{name:"grid-column-gap",browsers:["FF52","C57","S10.1","O44"],status:"obsolete",syntax:"<length-percentage>",description:"Specifies the gutters between grid columns. Replaced by 'column-gap' property.",restrictions:["length"]},{name:"border-image-slice",values:[{name:"fill",description:"Causes the middle part of the border-image to be preserved."}],syntax:"<number-percentage>{1,4} && fill?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image-slice"}],description:"Specifies inward offsets from the top, right, bottom, and left edges of the image, dividing it into nine regions: four corners, four edges and a middle.",restrictions:["number","percentage"]},{name:"justify-self",browsers:["E16","FF45","S10.1","C57","O44"],values:[{name:"auto"},{name:"normal"},{name:"end"},{name:"start"},{name:"flex-end",description:'"Flex items are packed toward the end of the line."'},{name:"flex-start",description:'"Flex items are packed toward the start of the line."'},{name:"self-end",description:"The item is packed flush to the edge of the alignment container of the end side of the item, in the appropriate axis."},{name:"self-start",description:"The item is packed flush to the edge of the alignment container of the start side of the item, in the appropriate axis.."},{name:"center",description:"The items are packed flush to each other toward the center of the of the alignment container."},{name:"left"},{name:"right"},{name:"baseline"},{name:"first baseline"},{name:"last baseline"},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."},{name:"save"},{name:"unsave"}],syntax:"auto | normal | stretch | <baseline-position> | <overflow-position>? [ <self-position> | left | right ]",description:"Defines the way of justifying a box inside its container along the appropriate axis.",restrictions:["enum"]},{name:"fill-rule",values:[{name:"evenodd",description:"Determines the ‘insideness’ of a point on the canvas by drawing a ray from that point to infinity in any direction and counting the number of path segments from the given shape that the ray crosses."},{name:"nonzero",description:"Determines the ‘insideness’ of a point on the canvas by drawing a ray from that point to infinity in any direction and then examining the places where a segment of the shape crosses the ray."}],description:"Indicates the algorithm (or winding rule) which is to be used to determine what parts of the canvas are included inside the shape.",restrictions:["enum"]},{name:"border-image-outset",syntax:"[ <length> | <number> ]{1,4}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image-outset"}],description:"The values specify the amount by which the border image area extends beyond the border box on the top, right, bottom, and left sides respectively. If the fourth value is absent, it is the same as the second. If the third one is also absent, it is the same as the first. If the second one is also absent, it is the same as the first. Numbers represent multiples of the corresponding border-width.",restrictions:["length","number"]},{name:"justify-items",values:[{name:"auto"},{name:"normal"},{name:"end"},{name:"start"},{name:"flex-end",description:'"Flex items are packed toward the end of the line."'},{name:"flex-start",description:'"Flex items are packed toward the start of the line."'},{name:"self-end",description:"The item is packed flush to the edge of the alignment container of the end side of the item, in the appropriate axis."},{name:"self-start",description:"The item is packed flush to the edge of the alignment container of the start side of the item, in the appropriate axis.."},{name:"center",description:"The items are packed flush to each other toward the center of the of the alignment container."},{name:"left"},{name:"right"},{name:"baseline"},{name:"first baseline"},{name:"last baseline"},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."},{name:"save"},{name:"unsave"},{name:"legacy"}],syntax:"normal | stretch | <baseline-position> | <overflow-position>? [ <self-position> | left | right ] | legacy | legacy && [ left | right | center ]",description:"Defines the default justify-self for all items of the box, giving them the default way of justifying each box along the appropriate axis",restrictions:["enum"]},{name:"break-inside",values:[{name:"auto",description:"Impose no additional breaking constraints within the box."},{name:"avoid",description:"Avoid breaks within the box."},{name:"avoid-column",description:"Avoid a column break within the box."},{name:"avoid-page",description:"Avoid a page break within the box."}],syntax:"auto | avoid | avoid-page | avoid-column | avoid-region",description:"Describes the page/column/region break behavior inside the principal box.",restrictions:["enum"]},{name:"scroll-snap-type",values:[{name:"none",description:"The visual viewport of this scroll container must ignore snap points, if any, when scrolled."},{name:"mandatory",description:"The visual viewport of this scroll container is guaranteed to rest on a snap point when there are no active scrolling operations."},{name:"proximity",description:"The visual viewport of this scroll container may come to rest on a snap point at the termination of a scroll at the discretion of the UA given the parameters of the scroll."}],syntax:"none | [ x | y | block | inline | both ] [ mandatory | proximity ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type"}],description:"Defines how strictly snap points are enforced on the scroll container.",restrictions:["enum"]},{name:"text-decoration-line",browsers:["FF36","S12.1","C57","O"],values:[{name:"line-through",description:"Each line of text has a line through the middle."},{name:"none",description:"Neither produces nor inhibits text decoration."},{name:"overline",description:"Each line of text has a line above it."},{name:"underline",description:"Each line of text is underlined."}],syntax:"none | [ underline || overline || line-through || blink ] | spelling-error | grammar-error",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-line"}],description:"Specifies what line decorations, if any, are added to the element.",restrictions:["enum"]},{name:"scroll-snap-align",syntax:"[ none | start | end | center ]{1,2}",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-align"}],description:"The scroll-snap-align property specifies the box’s snap position as an alignment of its snap area (as the alignment subject) within its snap container’s snapport (as the alignment container). The two values specify the snapping alignment in the block axis and inline axis, respectively. If only one value is specified, the second value defaults to the same value."},{name:"grid-row",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line> [ / <grid-line> ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-row"}],description:"Shorthand for 'grid-row-start' and 'grid-row-end'.",restrictions:["identifier","integer","enum"]},{name:"caret-color",browsers:["FF53","S11.1","C57","O44"],values:[{name:"auto",description:"The user agent selects an appropriate color for the caret. This is generally currentcolor, but the user agent may choose a different color to ensure good visibility and contrast with the surrounding content, taking into account the value of currentcolor, the background, shadows, and other factors."}],syntax:"auto | <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/caret-color"}],description:"Controls the color of the text insertion indicator.",restrictions:["color","enum"]},{name:"stroke-linejoin",values:[{name:"bevel",description:"Indicates that a bevelled corner is to be used to join path segments."},{name:"miter",description:"Indicates that a sharp corner is to be used to join path segments."},{name:"round",description:"Indicates that a round corner is to be used to join path segments."}],description:"Specifies the shape to be used at the corners of paths or basic shapes when they are stroked.",restrictions:["enum"]},{name:"grid-area",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line> [ / <grid-line> ]{0,3}",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-area"}],description:"Determine a grid item’s size and location within the grid by contributing a line, a span, or nothing (automatic) to its grid placement. Shorthand for 'grid-row-start', 'grid-column-start', 'grid-row-end', and 'grid-column-end'.",restrictions:["identifier","integer"]},{name:"column-fill",values:[{name:"auto",description:"Fills columns sequentially."},{name:"balance",description:"Balance content equally between columns, if possible."}],syntax:"auto | balance | balance-all",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-fill"}],description:"In continuous media, this property will only be consulted if the length of columns has been constrained. Otherwise, columns will automatically be balanced.",restrictions:["enum"]},{name:"tab-size",browsers:["FF4","S6.1","C21","O15"],syntax:"<integer> | <length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/tab-size"}],description:"Determines the width of the tab character (U+0009), in space characters (U+0020), when rendered.",restrictions:["integer","length"]},{name:"overflow-anchor",status:"experimental",syntax:"auto | none",browsers:["FF66","C56","O43"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-anchor"}],description:"The overflow-anchor CSS property provides a way to opt out browser scroll anchoring behavior which adjusts scroll position to minimize content shifts."},{name:"border-image-source",values:[{name:"none",description:"Use the border styles."}],syntax:"none | <image>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-image-source"}],description:"Specifies an image to use instead of the border styles given by the 'border-style' properties and as an additional background layer for the element. If the value is 'none' or if the image cannot be displayed, the border styles will be used.",restrictions:["image"]},{name:"grid-template-areas",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"none",description:"The grid container doesn’t define any named grid areas."}],syntax:"none | <string>+",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-template-areas"}],description:"Specifies named grid areas, which are not associated with any particular grid item, but can be referenced from the grid-placement properties.",restrictions:["string"]},{name:"font-kerning",browsers:["FF32","S7","C32","O19"],values:[{name:"auto",description:"Specifies that kerning is applied at the discretion of the user agent."},{name:"none",description:"Specifies that kerning is not applied."},{name:"normal",description:"Specifies that kerning is applied."}],syntax:"auto | normal | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-kerning"}],description:"Kerning is the contextual adjustment of inter-glyph spacing. This property controls metric kerning, kerning that utilizes adjustment data contained in the font.",restrictions:["enum"]},{name:"page-break-before",values:[{name:"always",description:"Always force a page break before the generated box."},{name:"auto",description:"Neither force nor forbid a page break before the generated box."},{name:"avoid",description:"Avoid a page break before the generated box."},{name:"left",description:"Force one or two page breaks before the generated box so that the next page is formatted as a left page."},{name:"right",description:"Force one or two page breaks before the generated box so that the next page is formatted as a right page."}],syntax:"auto | always | avoid | left | right | recto | verso",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/page-break-before"}],description:"Defines rules for page breaks before an element.",restrictions:["enum"]},{name:"text-decoration-style",browsers:["FF36","S12.1","C57","O44"],values:[{name:"dashed",description:"Produces a dashed line style."},{name:"dotted",description:"Produces a dotted line."},{name:"double",description:"Produces a double line."},{name:"none",description:"Produces no line."},{name:"solid",description:"Produces a solid line."},{name:"wavy",description:"Produces a wavy line."}],syntax:"solid | double | dotted | dashed | wavy",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-style"}],description:"Specifies the line style for underline, line-through and overline text decoration.",restrictions:["enum"]},{name:"grid-row-gap",browsers:["FF52","C57","S10.1","O44"],status:"obsolete",syntax:"<length-percentage>",description:"Specifies the gutters between grid rows. Replaced by 'row-gap' property.",restrictions:["length"]},{name:"backdrop-filter",status:"experimental",syntax:"none | <filter-function-list>",browsers:["E17","FF70","S9","C76","O34"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/backdrop-filter"}],description:"The backdrop-filter CSS property lets you apply graphical effects such as blurring or color shifting to the area behind an element. Because it applies to everything behind the element, to see the effect you must make the element or its background at least partially transparent."},{name:"grid-auto-flow",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"row",description:"The auto-placement algorithm places items by filling each row in turn, adding new rows as necessary."},{name:"column",description:"The auto-placement algorithm places items by filling each column in turn, adding new columns as necessary."},{name:"dense",description:"If specified, the auto-placement algorithm uses a “dense” packing algorithm, which attempts to fill in holes earlier in the grid if smaller items come up later."}],syntax:"[ row | column ] || dense",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-auto-flow"}],description:"Controls how the auto-placement algorithm works, specifying exactly how auto-placed items get flowed into the grid.",restrictions:["enum"]},{name:"grid-column-start",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-column-start"}],description:"Determine a grid item’s size and location within the grid by contributing a line, a span, or nothing (automatic) to its grid placement.",restrictions:["identifier","integer","enum"]},{name:"column-rule-color",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-rule-color"}],description:"Sets the color of the column rule",restrictions:["color"]},{name:"isolation",browsers:["FF36","S8","C41","O30"],values:[{name:"auto",description:"Elements are not isolated unless an operation is applied that causes the creation of a stacking context."},{name:"isolate",description:"In CSS will turn the element into a stacking context."}],syntax:"auto | isolate",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/isolation"}],description:"In CSS setting to 'isolate' will turn the element into a stacking context. In SVG, it defines whether an element is isolated or not.",restrictions:["enum"]},{name:"column-rule-style",syntax:"<'border-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-rule-style"}],description:"Sets the style of the rule between columns of an element.",restrictions:["line-style"]},{name:"stop-color",description:"Indicates what color to use at that gradient stop.",restrictions:["color"]},{name:"clip-rule",browsers:["E","C5","FF3","IE10","O9","S6"],values:[{name:"evenodd",description:"Determines the ‘insideness’ of a point on the canvas by drawing a ray from that point to infinity in any direction and counting the number of path segments from the given shape that the ray crosses."},{name:"nonzero",description:"Determines the ‘insideness’ of a point on the canvas by drawing a ray from that point to infinity in any direction and then examining the places where a segment of the shape crosses the ray."}],description:"Indicates the algorithm which is to be used to determine what parts of the canvas are included inside the shape.",restrictions:["enum"]},{name:"background-blend-mode",browsers:["FF30","S8","C35","O22"],values:[{name:"normal",description:"Default attribute which specifies no blending"},{name:"multiply",description:"The source color is multiplied by the destination color and replaces the destination."},{name:"screen",description:"Multiplies the complements of the backdrop and source color values, then complements the result."},{name:"overlay",description:"Multiplies or screens the colors, depending on the backdrop color value."},{name:"darken",description:"Selects the darker of the backdrop and source colors."},{name:"lighten",description:"Selects the lighter of the backdrop and source colors."},{name:"color-dodge",description:"Brightens the backdrop color to reflect the source color."},{name:"color-burn",description:"Darkens the backdrop color to reflect the source color."},{name:"hard-light",description:"Multiplies or screens the colors, depending on the source color value."},{name:"soft-light",description:"Darkens or lightens the colors, depending on the source color value."},{name:"difference",description:"Subtracts the darker of the two constituent colors from the lighter color.."},{name:"exclusion",description:"Produces an effect similar to that of the Difference mode but lower in contrast."},{name:"hue",browsers:["FF30","S8","C35","O22"],description:"Creates a color with the hue of the source color and the saturation and luminosity of the backdrop color."},{name:"saturation",browsers:["FF30","S8","C35","O22"],description:"Creates a color with the saturation of the source color and the hue and luminosity of the backdrop color."},{name:"color",browsers:["FF30","S8","C35","O22"],description:"Creates a color with the hue and saturation of the source color and the luminosity of the backdrop color."},{name:"luminosity",browsers:["FF30","S8","C35","O22"],description:"Creates a color with the luminosity of the source color and the hue and saturation of the backdrop color."}],syntax:"<blend-mode>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/background-blend-mode"}],description:"Defines the blending mode of each background layer.",restrictions:["enum"]},{name:"font-variant-numeric",browsers:["FF34","S9.1","C52","O39"],values:[{name:"diagonal-fractions",description:"Enables display of lining diagonal fractions."},{name:"lining-nums",description:"Enables display of lining numerals."},{name:"normal",description:"None of the features are enabled."},{name:"oldstyle-nums",description:"Enables display of old-style numerals."},{name:"ordinal",description:"Enables display of letter forms used with ordinal numbers."},{name:"proportional-nums",description:"Enables display of proportional numerals."},{name:"slashed-zero",description:"Enables display of slashed zeros."},{name:"stacked-fractions",description:"Enables display of lining stacked fractions."},{name:"tabular-nums",description:"Enables display of tabular numerals."}],syntax:"normal | [ <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-numeric"}],description:"Specifies control over numerical forms.",restrictions:["enum"]},{name:"grid-column-end",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-column-end"}],description:"Determine a grid item’s size and location within the grid by contributing a line, a span, or nothing (automatic) to its grid placement.",restrictions:["identifier","integer","enum"]},{name:"margin-block-start",browsers:["FF41","S12.1","C69","O56"],values:[{name:"auto"}],syntax:"<'margin-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-block-start"}],description:"Logical 'margin-top'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"writing-mode",values:[{name:"horizontal-tb",description:"Top-to-bottom block flow direction. The writing mode is horizontal."},{name:"sideways-lr",description:"Left-to-right block flow direction. The writing mode is vertical, while the typographic mode is horizontal."},{name:"sideways-rl",description:"Right-to-left block flow direction. The writing mode is vertical, while the typographic mode is horizontal."},{name:"vertical-lr",description:"Left-to-right block flow direction. The writing mode is vertical."},{name:"vertical-rl",description:"Right-to-left block flow direction. The writing mode is vertical."}],syntax:"horizontal-tb | vertical-rl | vertical-lr | sideways-rl | sideways-lr",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/writing-mode"}],description:"This is a shorthand property for both 'direction' and 'block-progression'.",restrictions:["enum"]},{name:"shape-rendering",values:[{name:"auto",description:"Suppresses aural rendering."},{name:"crispEdges",description:"Emphasize the contrast between clean edges of artwork over rendering speed and geometric precision."},{name:"geometricPrecision",description:"Emphasize geometric precision over speed and crisp edges."},{name:"optimizeSpeed",description:"Emphasize rendering speed over geometric precision and crisp edges."}],description:"Provides hints about what tradeoffs to make as it renders vector graphics elements such as <path> elements and basic shapes such as circles and rectangles.",restrictions:["enum"]},{name:"grid-row-start",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-row-start"}],description:"Determine a grid item’s size and location within the grid by contributing a line, a span, or nothing (automatic) to its grid placement.",restrictions:["identifier","integer","enum"]},{name:"grid-auto-columns",values:[{name:"min-content",description:"Represents the largest min-content contribution of the grid items occupying the grid track."},{name:"max-content",description:"Represents the largest max-content contribution of the grid items occupying the grid track."},{name:"auto",description:"As a maximum, identical to 'max-content'. As a minimum, represents the largest minimum size (as specified by min-width/min-height) of the grid items occupying the grid track."},{name:"minmax()",description:"Defines a size range greater than or equal to min and less than or equal to max."}],syntax:"<track-size>+",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-auto-columns"}],description:"Specifies the size of implicitly created columns.",restrictions:["length","percentage"]},{name:"break-after",values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the principal box."},{name:"avoid",description:"Avoid a break before/after the principal box."},{name:"avoid-column",description:"Avoid a column break before/after the principal box."},{name:"avoid-page",description:"Avoid a page break before/after the principal box."},{name:"column",description:"Always force a column break before/after the principal box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the principal box."},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],syntax:"auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region",description:"Describes the page/column/region break behavior after the generated box.",restrictions:["enum"]},{name:"text-decoration-skip-ink",status:"experimental",syntax:"auto | none",browsers:["FF70","C64","O50"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-skip-ink"}],description:"The text-decoration-skip-ink CSS property specifies how overlines and underlines are drawn when they pass over glyph ascenders and descenders."},{name:"grid-row-end",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"auto",description:"The property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of one."},{name:"span",description:"Contributes a grid span to the grid item’s placement such that the corresponding edge of the grid item’s grid area is N lines from its opposite edge."}],syntax:"<grid-line>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-row-end"}],description:"Determine a grid item’s size and location within the grid by contributing a line, a span, or nothing (automatic) to its grid placement.",restrictions:["identifier","integer","enum"]},{name:"break-before",values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the principal box."},{name:"avoid",description:"Avoid a break before/after the principal box."},{name:"avoid-column",description:"Avoid a column break before/after the principal box."},{name:"avoid-page",description:"Avoid a page break before/after the principal box."},{name:"column",description:"Always force a column break before/after the principal box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the principal box."},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],syntax:"auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region",description:"Describes the page/column/region break behavior before the generated box.",restrictions:["enum"]},{name:"font-variant-caps",browsers:["FF34","C52","O39"],values:[{name:"all-petite-caps",description:"Enables display of petite capitals for both upper and lowercase letters."},{name:"all-small-caps",description:"Enables display of small capitals for both upper and lowercase letters."},{name:"normal",description:"None of the features are enabled."},{name:"petite-caps",description:"Enables display of petite capitals."},{name:"small-caps",description:"Enables display of small capitals. Small-caps glyphs typically use the form of uppercase letters but are reduced to the size of lowercase letters."},{name:"titling-caps",description:"Enables display of titling capitals."},{name:"unicase",description:"Enables display of mixture of small capitals for uppercase letters with normal lowercase letters."}],syntax:"normal | small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-caps"}],description:"Specifies control over capitalized forms.",restrictions:["enum"]},{name:"stop-opacity",description:"Defines the opacity of a given gradient stop.",restrictions:["number(0-1)"]},{name:"column-span",values:[{name:"all",description:"The element spans across all columns. Content in the normal flow that appears before the element is automatically balanced across all columns before the element appear."},{name:"none",description:"The element does not span multiple columns."}],syntax:"none | all",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-span"}],description:"Describes the page/column break behavior after the generated box.",restrictions:["enum"]},{name:"text-anchor",values:[{name:"end",description:"The rendered characters are aligned such that the end of the resulting rendered text is at the initial current text position."},{name:"middle",description:"The rendered characters are aligned such that the geometric middle of the resulting rendered text is at the initial current text position."},{name:"start",description:"The rendered characters are aligned such that the start of the resulting rendered text is at the initial current text position."}],description:"Used to align (start-, middle- or end-alignment) a string of text relative to a given point.",restrictions:["enum"]},{name:"column-rule-width",syntax:"<'border-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/column-rule-width"}],description:"Sets the width of the rule between columns. Negative values are not allowed.",restrictions:["length","line-width"]},{name:"mask",syntax:"<mask-layer>#",browsers:["E12","FF2","S3.2","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask"}],description:"The mask CSS property alters the visibility of an element by either partially or fully hiding it. This is accomplished by either masking or clipping the image at specific points."},{name:"text-underline-position",browsers:["E12","C33","IE6","O20"],values:[{name:"above"},{name:"auto",description:"The user agent may use any algorithm to determine the underline’s position. In horizontal line layout, the underline should be aligned as for alphabetic. In vertical line layout, if the language is set to Japanese or Korean, the underline should be aligned as for over."},{name:"below",description:"The underline is aligned with the under edge of the element’s content box."}],syntax:"auto | [ under || [ left | right ] ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-underline-position"}],description:"Sets the position of an underline specified on the same element: it does not affect underlines specified by ancestor elements. This property is typically used in vertical writing contexts such as in Japanese documents where it often desired to have the underline appear 'over' (to the right of) the affected run of text",restrictions:["enum"]},{name:"mask-type",browsers:["FF35","S6.1","C24","O15"],values:[{name:"alpha",description:"Indicates that the alpha values of the mask should be used."},{name:"luminance",description:"Indicates that the luminance values of the mask should be used."}],syntax:"luminance | alpha",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-type"}],description:"Defines whether the content of the <mask> element is treated as as luminance mask or alpha mask.",restrictions:["enum"]},{name:"font-variant-east-asian",browsers:["FF34","C63","O50"],values:[{name:"full-width",description:"Enables rendering of full-width variants."},{name:"jis04",description:"Enables rendering of JIS04 forms."},{name:"jis78",description:"Enables rendering of JIS78 forms."},{name:"jis83",description:"Enables rendering of JIS83 forms."},{name:"jis90",description:"Enables rendering of JIS90 forms."},{name:"normal",description:"None of the features are enabled."},{name:"proportional-width",description:"Enables rendering of proportionally-spaced variants."},{name:"ruby",description:"Enables display of ruby variant glyphs."},{name:"simplified",description:"Enables rendering of simplified forms."},{name:"traditional",description:"Enables rendering of traditional forms."}],syntax:"normal | [ <east-asian-variant-values> || <east-asian-width-values> || ruby ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-east-asian"}],description:"Allows control of glyph substitute and positioning in East Asian text.",restrictions:["enum"]},{name:"border-inline-end-width",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-end-width"}],description:"Logical 'border-right-width'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width"]},{name:"border-inline-start-width",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-start-width"}],description:"Logical 'border-left-width'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width"]},{name:"text-orientation",browsers:["FF41","S5.1","C48","O15"],values:[{name:"sideways",browsers:["FF41","S5.1","C48","O15"],description:"This value is equivalent to 'sideways-right' in 'vertical-rl' writing mode and equivalent to 'sideways-left' in 'vertical-lr' writing mode."},{name:"sideways-right",browsers:["FF41","S5.1","C48","O15"],description:"In vertical writing modes, this causes text to be set as if in a horizontal layout, but rotated 90° clockwise."},{name:"upright",description:"In vertical writing modes, characters from horizontal-only scripts are rendered upright, i.e. in their standard horizontal orientation."}],syntax:"mixed | upright | sideways",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-orientation"}],description:"Specifies the orientation of text within a line.",restrictions:["enum"]},{name:"shape-margin",browsers:["FF62","S10.1","C37","O24"],syntax:"<length-percentage>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/shape-margin"}],description:"Adds a margin to a 'shape-outside'. This defines a new shape that is the smallest contour that includes all the points that are the 'shape-margin' distance outward in the perpendicular direction from a point on the underlying shape.",restrictions:["url","length","percentage"]},{name:"shape-image-threshold",browsers:["FF62","S10.1","C37","O24"],syntax:"<alpha-value>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/shape-image-threshold"}],description:"Defines the alpha channel threshold used to extract the shape using an image. A value of 0.5 means that the shape will enclose all the pixels that are more than 50% opaque.",restrictions:["number"]},{name:"min-inline-size",browsers:["FF41","S12.1","C57","O44"],syntax:"<'min-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/min-inline-size"}],description:"Logical 'min-height'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"inline-size",browsers:["FF41","S12.1","C57","O44"],values:[{name:"auto",description:"Depends on the values of other properties."}],syntax:"<'width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inline-size"}],description:"Logical 'height'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"text-combine-upright",syntax:"none | all | [ digits <integer>? ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-combine-upright"}],description:"The text-combine-upright CSS property specifies the combination of multiple characters into the space of a single character. If the combined text is wider than 1em, the user agent must fit the contents within 1em. The resulting composition is treated as a single upright glyph for layout and decoration. This property only has an effect in vertical writing modes.\n\nThis is used to produce an effect that is known as tate-chū-yoko (縦中横) in Japanese, or as 直書橫向 in Chinese."},{name:"block-size",browsers:["FF41","S12.1","C57","O44"],values:[{name:"auto",description:"Depends on the values of other properties."}],syntax:"<'width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/block-size"}],description:"Logical 'width'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"min-block-size",browsers:["FF41","S12.1","C57","O44"],syntax:"<'min-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/min-block-size"}],description:"Logical 'min-width'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"padding-block-start",browsers:["FF41","S12.1","C69","O56"],syntax:"<'padding-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-block-start"}],description:"Logical 'padding-top'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"padding-block-end",browsers:["FF41","S12.1","C69","O56"],syntax:"<'padding-left'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-block-end"}],description:"Logical 'padding-bottom'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"border-inline-start-color",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-start-color"}],description:"Logical 'border-left-color'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["color"]},{name:"border-inline-end-color",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-end-color"}],description:"Logical 'border-right-color'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["color"]},{name:"border-inline-end-style",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-end-style"}],description:"Logical 'border-right-style'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["line-style"]},{name:"border-inline-start-style",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-start-style"}],description:"Logical 'border-left-style'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["line-style"]},{name:"border-block-end-style",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-end-style"}],description:"Logical 'border-bottom-style'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["line-style"]},{name:"border-block-end-color",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-end-color"}],description:"Logical 'border-bottom-color'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["color"]},{name:"border-block-start-style",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-style'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-start-style"}],description:"Logical 'border-top-style'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["line-style"]},{name:"border-block-start-color",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-start-color"}],description:"Logical 'border-top-color'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["color"]},{name:"border-block-start-width",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-start-width"}],description:"Logical 'border-top-width'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width"]},{name:"border-block-end-width",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-end-width"}],description:"Logical 'border-bottom-width'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width"]},{name:"row-gap",syntax:"normal | <length-percentage>",browsers:["E16","FF63","S10.1","C66","O53"],description:"The row-gap CSS property specifies the gutter between grid rows."},{name:"grid-template",browsers:["E16","FF52","S10.1","C57","O44"],values:[{name:"none",description:"Sets all three properties to their initial values."},{name:"min-content",description:"Represents the largest min-content contribution of the grid items occupying the grid track."},{name:"max-content",description:"Represents the largest max-content contribution of the grid items occupying the grid track."},{name:"auto",description:"As a maximum, identical to 'max-content'. As a minimum, represents the largest minimum size (as specified by min-width/min-height) of the grid items occupying the grid track."},{name:"subgrid",description:"Sets 'grid-template-rows' and 'grid-template-columns' to 'subgrid', and 'grid-template-areas' to its initial value."},{name:"minmax()",description:"Defines a size range greater than or equal to min and less than or equal to max."},{name:"repeat()",description:"Represents a repeated fragment of the track list, allowing a large number of columns or rows that exhibit a recurring pattern to be written in a more compact form."}],syntax:"none | [ <'grid-template-rows'> / <'grid-template-columns'> ] | [ <line-names>? <string> <track-size>? <line-names>? ]+ [ / <explicit-track-list> ]?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid-template"}],description:"Shorthand for setting grid-template-columns, grid-template-rows, and grid-template-areas in a single declaration.",restrictions:["identifier","length","percentage","string","enum"]},{name:"color-interpolation-filters",browsers:["E","C5","FF3","IE10","O9","S6"],values:[{name:"auto",description:"Color operations are not required to occur in a particular color space."},{name:"linearRGB",description:"Color operations should occur in the linearized RGB color space."},{name:"sRGB",description:"Color operations should occur in the sRGB color space."}],description:"Specifies the color space for imaging operations performed via filter effects.",restrictions:["enum"]},{name:"paint-order",browsers:["E17","FF60","S8","C35","O22"],values:[{name:"fill"},{name:"markers"},{name:"normal",description:"The element is painted with the standard order of painting operations: the 'fill' is painted first, then its 'stroke' and finally its markers."},{name:"stroke"}],status:"experimental",syntax:"normal | [ fill || stroke || markers ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/paint-order"}],description:"Controls the order that the three paint operations that shapes and text are rendered with: their fill, their stroke and any markers they might have.",restrictions:["enum"]},{name:"flood-color",browsers:["E","C5","FF3","IE10","O9","S6"],description:"Indicates what color to use to flood the current filter primitive subregion.",restrictions:["color"]},{name:"flood-opacity",browsers:["E","C5","FF3","IE10","O9","S6"],description:"Indicates what opacity to use to flood the current filter primitive subregion.",restrictions:["number(0-1)","percentage"]},{name:"scroll-snap-stop",syntax:"normal | always",browsers:["C75","O62"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-stop"}],description:'The scroll-snap-stop CSS property defines whether the scroll container is allowed to "pass over" possible snap positions.'},{name:"lighting-color",browsers:["E","C5","FF3","IE10","O9","S6"],description:"Defines the color of the light source for filter primitives 'feDiffuseLighting' and 'feSpecularLighting'.",restrictions:["color"]},{name:"scroll-padding-left",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-left"}],description:"The scroll-padding-left property defines offsets for the left of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"marker-end",values:[{name:"none",description:"Indicates that no marker symbol will be drawn at the given vertex or vertices."},{name:"url()",description:"Indicates that the <marker> element referenced will be used."}],description:"Specifies the marker that will be drawn at the last vertices of the given markable element.",restrictions:["url"]},{name:"marker-start",values:[{name:"none",description:"Indicates that no marker symbol will be drawn at the given vertex or vertices."},{name:"url()",description:"Indicates that the <marker> element referenced will be used."}],description:"Specifies the marker that will be drawn at the first vertices of the given markable element.",restrictions:["url"]},{name:"marker-mid",values:[{name:"none",description:"Indicates that no marker symbol will be drawn at the given vertex or vertices."},{name:"url()",description:"Indicates that the <marker> element referenced will be used."}],description:"Specifies the marker that will be drawn at all vertices except the first and last.",restrictions:["url"]},{name:"offset-distance",status:"experimental",syntax:"<length-percentage>",browsers:["FF69","C55","O42"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/offset-distance"}],description:"The offset-distance CSS property specifies a position along an offset-path."},{name:"place-content",syntax:"<'align-content'> <'justify-content'>?",browsers:["FF53","S9","C59","O"],description:"The place-content CSS shorthand property sets both the align-content and justify-content properties."},{name:"font-variation-settings",syntax:"normal | [ <string> <number> ]#",browsers:["E17","FF62","S11","C62","O49"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variation-settings"}],description:"The font-variation-settings CSS property provides low-level control over OpenType or TrueType font variations, by specifying the four letter axis names of the features you want to vary, along with their variation values."},{name:"offset-path",status:"experimental",syntax:"none | ray( [ <angle> && <size>? && contain? ] ) | <path()> | <url> | [ <basic-shape> || <geometry-box> ]",browsers:["FF63","C55","O45"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/offset-path"}],description:'The offset-path CSS property specifies the offset path where the element gets positioned. The exact element’s position on the offset path is determined by the offset-distance property. An offset path is either a specified path with one or multiple sub-paths or the geometry of a not-styled basic shape. Each shape or path must define an initial position for the computed value of "0" for offset-distance and an initial direction which specifies the rotation of the object to the initial position.\n\nIn this specification, a direction (or rotation) of 0 degrees is equivalent to the direction of the positive x-axis in the object’s local coordinate system. In other words, a rotation of 0 degree points to the right side of the UA if the object and its ancestors have no transformation applied.'},{name:"offset-rotate",status:"experimental",syntax:"[ auto | reverse ] || <angle>",browsers:["FF69","C56","O43"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/offset-rotate"}],description:"The offset-rotate CSS property defines the direction of the element while positioning along the offset path."},{name:"max-inline-size",browsers:["FF41","S10.1","C57","O44"],values:[{name:"none",description:"No limit on the height of the box."}],status:"experimental",syntax:"<'max-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/max-inline-size"}],description:"Logical 'max-height'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"max-block-size",browsers:["FF41","S12.1","C57","O44"],values:[{name:"none",description:"No limit on the width of the box."}],status:"experimental",syntax:"<'max-width'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/max-block-size"}],description:"Logical 'max-width'. Mapping depends on the element’s 'writing-mode'.",restrictions:["length","percentage"]},{name:"scroll-padding",syntax:"[ auto | <length-percentage> ]{1,4}",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding"}],description:"The scroll-padding property is a shorthand property which sets all of the scroll-padding longhands, assigning values much like the padding property does for the padding-* longhands."},{name:"transform-box",syntax:"border-box | fill-box | view-box",browsers:["FF55","S11","C64","O51"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/transform-box"}],description:"The transform-box CSS property defines the layout box to which the transform and transform-origin properties relate."},{name:"scroll-padding-top",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-top"}],description:"The scroll-padding-top property defines offsets for the top of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"gap",syntax:"<'row-gap'> <'column-gap'>?",browsers:["E16","FF63","S10.1","C66","O53"],description:"The gap CSS property is a shorthand property for row-gap and column-gap specifying the gutters between grid rows and columns."},{name:"scroll-padding-right",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-right"}],description:"The scroll-padding-right property defines offsets for the right of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"marker",values:[{name:"none",description:"Indicates that no marker symbol will be drawn at the given vertex or vertices."},{name:"url()",description:"Indicates that the <marker> element referenced will be used."}],description:"Specifies the marker symbol that shall be used for all points on the sets the value for all vertices on the given ‘path’ element or basic shape.",restrictions:["url"]},{name:"scroll-padding-bottom",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-bottom"}],description:"The scroll-padding-bottom property defines offsets for the bottom of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"scroll-padding-inline-start",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline-start"}],description:"The scroll-padding-inline-start property defines offsets for the start edge in the inline dimension of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"scroll-padding-block-start",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block-start"}],description:"The scroll-padding-block-start property defines offsets for the start edge in the block dimension of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"scroll-padding-inline-end",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline-end"}],description:"The scroll-padding-inline-end property defines offsets for the end edge in the inline dimension of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"scroll-padding-block-end",syntax:"auto | <length-percentage>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block-end"}],description:"The scroll-padding-block-end property defines offsets for the end edge in the block dimension of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user. This allows the author to exclude regions of the scrollport that are obscured by other content (such as fixed-positioned toolbars or sidebars) or simply to put more breathing room between a targeted element and the edges of the scrollport."},{name:"place-self",syntax:"<'align-self'> <'justify-self'>?",browsers:["FF45","C59","O46"],description:"The place-self CSS property is a shorthand property sets both the align-self and justify-self properties. The first value is the align-self property value, the second the justify-self one. If the second value is not present, the first value is also used for it."},{name:"grid",browsers:["E16","FF52","S10.1","C57","O44"],syntax:"<'grid-template'> | <'grid-template-rows'> / [ auto-flow && dense? ] <'grid-auto-columns'>? | [ auto-flow && dense? ] <'grid-auto-rows'>? / <'grid-template-columns'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/grid"}],description:"The grid CSS property is a shorthand property that sets all of the explicit grid properties ('grid-template-rows', 'grid-template-columns', and 'grid-template-areas'), and all the implicit grid properties ('grid-auto-rows', 'grid-auto-columns', and 'grid-auto-flow'), in a single declaration.",restrictions:["identifier","length","percentage","string","enum"]},{name:"place-items",syntax:"<'align-items'> <'justify-items'>?",browsers:["FF45","S11","C59","O46"],description:"The CSS place-items shorthand property sets both the align-items and justify-items properties. The first value is the align-items property value, the second the justify-items one. If the second value is not present, the first value is also used for it."},{name:"font-optical-sizing",syntax:"auto | none",browsers:["E17","FF62","S11","C79"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-optical-sizing"}],description:"The font-optical-sizing CSS property allows developers to control whether browsers render text with slightly differing visual representations to optimize viewing at different sizes, or not. This only works for fonts that have an optical size variation axis."},{name:"border-block-start",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-start"}],description:"Logical 'border-top'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width","line-style","color"]},{name:"border-block-end",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-end"}],description:"Logical 'border-bottom'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width","line-style","color"]},{name:"border-inline-start",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-start"}],description:"Logical 'border-left'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width","line-style","color"]},{name:"offset",status:"experimental",syntax:"[ <'offset-position'>? [ <'offset-path'> [ <'offset-distance'> || <'offset-rotate'> ]? ]? ]! [ / <'offset-anchor'> ]?",browsers:["FF71","C55","O42"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/offset"}],description:"The offset CSS property is a shorthand property for animating an element along a defined path."},{name:"border-inline-end",browsers:["FF41","S12.1","C69","O56"],syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-end"}],description:"Logical 'border-right'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","line-width","line-style","color"]},{name:"scroll-padding-block",syntax:"[ auto | <length-percentage> ]{1,2}",browsers:["FF68","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block"}],description:"The scroll-padding-block property is a shorthand property which sets the scroll-padding longhands for the block dimension."},{name:"scroll-padding-inline",syntax:"[ auto | <length-percentage> ]{1,2}",browsers:["FF68","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline"}],description:"The scroll-padding-inline property is a shorthand property which sets the scroll-padding longhands for the inline dimension."},{name:"motion",browsers:["C46","O33"],values:[{name:"none",description:"No motion path gets created."},{name:"path()",description:"Defines an SVG path as a string, with optional 'fill-rule' as the first argument."},{name:"auto",description:"Indicates that the object is rotated by the angle of the direction of the motion path."},{name:"reverse",description:"Indicates that the object is rotated by the angle of the direction of the motion path plus 180 degrees."}],description:"Shorthand property for setting 'motion-path', 'motion-offset' and 'motion-rotation'.",restrictions:["url","length","percentage","angle","shape","geometry-box","enum"]},{name:"margin-inline",syntax:"<'margin-left'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-inline"}],description:"The margin-inline CSS property defines the logical inline start and end margins of an element, which maps to physical margins depending on the element's writing mode, directionality, and text orientation."},{name:"padding-block",syntax:"<'padding-left'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-block"}],description:"The padding-block CSS property defines the logical block start and end padding of an element, which maps to physical padding properties depending on the element's writing mode, directionality, and text orientation."},{name:"padding-inline",syntax:"<'padding-left'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/padding-inline"}],description:"The padding-inline CSS property defines the logical inline start and end padding of an element, which maps to physical padding properties depending on the element's writing mode, directionality, and text orientation."},{name:"font-size-adjust",browsers:["FF40","C54","O41"],values:[{name:"none",description:"Do not preserve the font’s x-height."}],syntax:"none | <number>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-size-adjust"}],description:"Preserves the readability of text when font fallback occurs by adjusting the font-size so that the x-height is the same regardless of the font used.",restrictions:["number"]},{name:"motion-path",browsers:["C46","O33"],values:[{name:"none",description:"No motion path gets created."},{name:"path()",description:"Defines an SVG path as a string, with optional 'fill-rule' as the first argument."}],description:"Specifies the motion path the element gets positioned at.",restrictions:["url","shape","geometry-box","enum"]},{name:"text-justify",browsers:["E12","FF55","C32","IE11","O19"],values:[{name:"auto",description:"The UA determines the justification algorithm to follow, based on a balance between performance and adequate presentation quality."},{name:"distribute",description:"Justification primarily changes spacing both at word separators and at grapheme cluster boundaries in all scripts except those in the connected and cursive groups. This value is sometimes used in e.g. Japanese, often with the 'text-align-last' property."},{name:"distribute-all-lines"},{name:"inter-cluster",description:"Justification primarily changes spacing at word separators and at grapheme cluster boundaries in clustered scripts. This value is typically used for Southeast Asian scripts such as Thai."},{name:"inter-ideograph",description:"Justification primarily changes spacing at word separators and at inter-graphemic boundaries in scripts that use no word spaces. This value is typically used for CJK languages."},{name:"inter-word",description:"Justification primarily changes spacing at word separators. This value is typically used for languages that separate words using spaces, like English or (sometimes) Korean."},{name:"kashida",description:"Justification primarily stretches Arabic and related scripts through the use of kashida or other calligraphic elongation."},{name:"newspaper"}],syntax:"auto | inter-character | inter-word | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-justify"}],description:"Selects the justification algorithm used when 'text-align' is set to 'justify'. The property applies to block containers, but the UA may (but is not required to) also support it on inline elements.",restrictions:["enum"]},{name:"motion-offset",browsers:["C46","O33"],description:"A distance that describes the position along the specified motion path.",restrictions:["length","percentage"]},{name:"inset-block-start",syntax:"<'top'>",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-block-start"}],description:"The inset-block-start CSS property defines the logical block start offset of an element, which maps to a physical offset depending on the element's writing mode, directionality, and text orientation. It corresponds to the top, right, bottom, or left property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"inset",syntax:"<'top'>{1,4}",browsers:["FF66"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset"}],description:"The inset CSS property defines the logical block and inline start and end offsets of an element, which map to physical offsets depending on the element's writing mode, directionality, and text orientation. It corresponds to the top and bottom, or right and left properties depending on the values defined for writing-mode, direction, and text-orientation."},{name:"inset-inline-start",syntax:"<'top'>",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-inline-start"}],description:"The inset-inline-start CSS property defines the logical inline start inset of an element, which maps to a physical offset depending on the element's writing mode, directionality, and text orientation. It corresponds to the top, right, bottom, or left property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"inset-inline-end",syntax:"<'top'>",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-inline-end"}],description:"The inset-inline-end CSS property defines the logical inline end inset of an element, which maps to a physical inset depending on the element's writing mode, directionality, and text orientation. It corresponds to the top, right, bottom, or left property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"scale",syntax:"none | <number>{1,3}",browsers:["FF60"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scale"}],description:"The scale CSS property allows you to specify scale transforms individually and independently of the transform property. This maps better to typical user interface usage, and saves having to remember the exact order of transform functions to specify in the transform value."},{name:"translate",syntax:"none | <length-percentage> [ <length-percentage> <length>? ]?",browsers:["FF60"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/translate"}],description:"The translate CSS property allows you to specify translation transforms individually and independently of the transform property. This maps better to typical user interface usage, and saves having to remember the exact order of transform functions to specify in the transform value."},{name:"rotate",syntax:"none | <angle> | [ x | y | z | <number>{3} ] && <angle>",browsers:["FF60"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/rotate"}],description:"The rotate CSS property allows you to specify rotation transforms individually and independently of the transform property. This maps better to typical user interface usage, and saves having to remember the exact order of transform functions to specify in the transform value."},{name:"offset-anchor",status:"experimental",syntax:"auto | <position>",browsers:["FF70","C79"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/offset-anchor"}],description:"Defines an anchor point of the box positioned along the path. The anchor point specifies the point of the box which is to be considered as the point that is moved along the path."},{name:"offset-position",status:"experimental",syntax:"auto | <position>",description:"Specifies the initial position of the offset path. If position is specified with static, offset-position would be ignored."},{name:"margin-block",syntax:"<'margin-left'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/margin-block"}],description:"The margin-block CSS property defines the logical block start and end margins of an element, which maps to physical margins depending on the element's writing mode, directionality, and text orientation."},{name:"user-zoom",syntax:"zoom | fixed",description:"The user-zoom CSS descriptor controls whether or not the user can change the zoom factor of a document defined by @viewport."},{name:"min-zoom",syntax:"auto | <number> | <percentage>",description:"The min-zoom CSS descriptor sets the minimum zoom factor of a document defined by the @viewport at-rule. The browser will not zoom out any further than this, whether automatically or at the user's request.\n\nA zoom factor of 1.0 or 100% corresponds to no zooming. Larger values are zoomed in. Smaller values are zoomed out."},{name:"inset-block-end",syntax:"<'top'>",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-block-end"}],description:"The inset-block-end CSS property defines the logical block end offset of an element, which maps to a physical offset depending on the element's writing mode, directionality, and text orientation. It corresponds to the top, right, bottom, or left property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"enable-background",values:[{name:"accumulate",description:"If the ancestor container element has a property of new, then all graphics elements within the current container are rendered both on the parent's background image and onto the target."},{name:"new",description:"Create a new background image canvas. All children of the current container element can access the background, and they will be rendered onto both the parent's background image canvas in addition to the target device."}],description:"Deprecated. Use 'isolation' property instead when support allows. Specifies how the accumulation of the background image is managed.",restrictions:["integer","length","percentage","enum"]},{name:"glyph-orientation-horizontal",description:"Controls glyph orientation when the inline-progression-direction is horizontal.",restrictions:["angle","number"]},{name:"glyph-orientation-vertical",values:[{name:"auto",description:"Sets the orientation based on the fullwidth or non-fullwidth characters and the most common orientation."}],description:"Controls glyph orientation when the inline-progression-direction is vertical.",restrictions:["angle","number","enum"]},{name:"kerning",values:[{name:"auto",description:"Indicates that the user agent should adjust inter-glyph spacing based on kerning tables that are included in the font that will be used."}],description:"Indicates whether the user agent should adjust inter-glyph spacing based on kerning tables that are included in the relevant font or instead disable auto-kerning and set inter-character spacing to a specific length.",restrictions:["length","enum"]},{name:"image-orientation",browsers:["FF26"],values:[{name:"flip",description:"After rotating by the precededing angle, the image is flipped horizontally. Defaults to 0deg if the angle is ommitted."},{name:"from-image",description:"If the image has an orientation specified in its metadata, such as EXIF, this value computes to the angle that the metadata specifies is necessary to correctly orient the image."}],syntax:"from-image | <angle> | [ <angle>? flip ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/image-orientation"}],description:"Specifies an orthogonal rotation to be applied to an image before it is laid out.",restrictions:["angle"]},{name:"image-resolution",status:"experimental",syntax:"[ from-image || <resolution> ] && snap?",description:"The image-resolution property specifies the intrinsic resolution of all raster images used in or on the element. It affects both content images (e.g. replaced elements and generated content) and decorative images (such as background-image). The intrinsic resolution of an image is used to determine the image’s intrinsic dimensions."},{name:"max-zoom",syntax:"auto | <number> | <percentage>",description:"The max-zoom CSS descriptor sets the maximum zoom factor of a document defined by the @viewport at-rule. The browser will not zoom in any further than this, whether automatically or at the user's request.\n\nA zoom factor of 1.0 or 100% corresponds to no zooming. Larger values are zoomed in. Smaller values are zoomed out."},{name:"orientation",syntax:"auto | portrait | landscape",description:"The orientation CSS @media media feature can be used to apply styles based on the orientation of the viewport (or the page box, for paged media)."},{name:"motion-rotation",browsers:["C46","O33"],values:[{name:"auto",description:"Indicates that the object is rotated by the angle of the direction of the motion path."},{name:"reverse",description:"Indicates that the object is rotated by the angle of the direction of the motion path plus 180 degrees."}],description:"Defines the direction of the element while positioning along the motion path.",restrictions:["angle"]},{name:"scroll-snap-points-x",browsers:["FF39","S9"],values:[{name:"none",description:"No snap points are defined by this scroll container."},{name:"repeat()",description:"Defines an interval at which snap points are defined, starting from the container’s relevant start edge."}],status:"obsolete",syntax:"none | repeat( <length-percentage> )",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-points-x"}],description:"Defines the positioning of snap points along the x axis of the scroll container it is applied to.",restrictions:["enum"]},{name:"scroll-snap-points-y",browsers:["FF39","S9"],values:[{name:"none",description:"No snap points are defined by this scroll container."},{name:"repeat()",description:"Defines an interval at which snap points are defined, starting from the container’s relevant start edge."}],status:"obsolete",syntax:"none | repeat( <length-percentage> )",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-points-y"}],description:"Defines the positioning of snap points along the y axis of the scroll container it is applied to.",restrictions:["enum"]},{name:"scroll-snap-coordinate",browsers:["FF39"],values:[{name:"none",description:"Specifies that this element does not contribute a snap point."}],status:"obsolete",syntax:"none | <position>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-coordinate"}],description:"Defines the x and y coordinate within the element which will align with the nearest ancestor scroll container’s snap-destination for the respective axis.",restrictions:["position","length","percentage","enum"]},{name:"scroll-snap-destination",browsers:["FF39"],status:"obsolete",syntax:"<position>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-destination"}],description:"Define the x and y coordinate within the scroll container’s visual viewport which element snap points will align with.",restrictions:["position","length","percentage"]},{name:"border-block-color",syntax:"<'border-top-color'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-color"}],description:"The border-block-color CSS property defines the color of the logical block borders of an element, which maps to a physical border color depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-color and border-bottom-color, or border-right-color and border-left-color property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-block-style",syntax:"<'border-top-style'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-style"}],description:"The border-block-style CSS property defines the style of the logical block borders of an element, which maps to a physical border style depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-style and border-bottom-style, or border-left-style and border-right-style properties depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-block-width",syntax:"<'border-top-width'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block-width"}],description:"The border-block-width CSS property defines the width of the logical block borders of an element, which maps to a physical border width depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-width and border-bottom-width, or border-left-width, and border-right-width property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-inline-color",syntax:"<'border-top-color'>{1,2}",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-color"}],description:"The border-inline-color CSS property defines the color of the logical inline borders of an element, which maps to a physical border color depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-color and border-bottom-color, or border-right-color and border-left-color property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-inline-style",syntax:"<'border-top-style'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-style"}],description:"The border-inline-style CSS property defines the style of the logical inline borders of an element, which maps to a physical border style depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-style and border-bottom-style, or border-left-style and border-right-style properties depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-inline-width",syntax:"<'border-top-width'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline-width"}],description:"The border-inline-width CSS property defines the width of the logical inline borders of an element, which maps to a physical border width depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top-width and border-bottom-width, or border-left-width, and border-right-width property depending on the values defined for writing-mode, direction, and text-orientation."},{name:"border-block",syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-block"}],description:"The border-block CSS property is a shorthand property for setting the individual logical block border property values in a single place in the style sheet."},{name:"border-inline",syntax:"<'border-top-width'> || <'border-top-style'> || <'color'>",browsers:["FF66","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-inline"}],description:"The border-inline CSS property is a shorthand property for setting the individual logical inline border property values in a single place in the style sheet."},{name:"inset-block",syntax:"<'top'>{1,2}",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-block"}],description:"The inset-block CSS property defines the logical block start and end offsets of an element, which maps to physical offsets depending on the element's writing mode, directionality, and text orientation. It corresponds to the top and bottom, or right and left properties depending on the values defined for writing-mode, direction, and text-orientation."},{name:"inset-inline",syntax:"<'top'>{1,2}",browsers:["FF63","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/inset-inline"}],description:"The inset-inline CSS property defines the logical block start and end offsets of an element, which maps to physical offsets depending on the element's writing mode, directionality, and text orientation. It corresponds to the top and bottom, or right and left properties depending on the values defined for writing-mode, direction, and text-orientation."},{name:"additive-symbols",browsers:["FF33"],syntax:"[ <integer> && <symbol> ]#",description:"@counter-style descriptor. Specifies the symbols used by the marker-construction algorithm specified by the system descriptor. Needs to be specified if the counter system is 'additive'.",restrictions:["integer","string","image","identifier"]},{name:"alt",browsers:["S9"],values:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/alt"}],description:"Provides alternative text for assistive technology to replace the generated content of a ::before or ::after element.",restrictions:["string","enum"]},{name:"behavior",browsers:["IE6"],description:"IE only. Used to extend behaviors of the browser.",restrictions:["url"]},{name:"box-decoration-break",browsers:["FF32","S6.1","C22","O15"],values:[{name:"clone",description:"Each box is independently wrapped with the border and padding."},{name:"slice",description:"The effect is as though the element were rendered with no breaks present, and then sliced by the breaks afterward."}],syntax:"slice | clone",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-decoration-break"}],description:"Specifies whether individual boxes are treated as broken pieces of one continuous box, or whether each box is individually wrapped with the border and padding.",restrictions:["enum"]},{name:"fallback",browsers:["FF33"],syntax:"<counter-style-name>",description:"@counter-style descriptor. Specifies a fallback counter style to be used when the current counter style can’t create a representation for a given counter value.",restrictions:["identifier"]},{name:"font-language-override",browsers:["FF34"],values:[{name:"normal",description:"Implies that when rendering with OpenType fonts the language of the document is used to infer the OpenType language system, used to select language specific features when rendering."}],syntax:"normal | <string>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-language-override"}],description:"The value of 'normal' implies that when rendering with OpenType fonts the language of the document is used to infer the OpenType language system, used to select language specific features when rendering.",restrictions:["string"]},{name:"font-synthesis",browsers:["FF34","S9"],values:[{name:"none",description:"Disallow all synthetic faces."},{name:"style",description:"Allow synthetic italic faces."},{name:"weight",description:"Allow synthetic bold faces."}],syntax:"none | [ weight || style ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-synthesis"}],description:"Controls whether user agents are allowed to synthesize bold or oblique font faces when a font family lacks bold or italic faces.",restrictions:["enum"]},{name:"font-variant-alternates",browsers:["FF34"],values:[{name:"annotation()",description:"Enables display of alternate annotation forms."},{name:"character-variant()",description:"Enables display of specific character variants."},{name:"historical-forms",description:"Enables display of historical forms."},{name:"normal",description:"None of the features are enabled."},{name:"ornaments()",description:"Enables replacement of default glyphs with ornaments, if provided in the font."},{name:"styleset()",description:"Enables display with stylistic sets."},{name:"stylistic()",description:"Enables display of stylistic alternates."},{name:"swash()",description:"Enables display of swash glyphs."}],syntax:"normal | [ stylistic( <feature-value-name> ) || historical-forms || styleset( <feature-value-name># ) || character-variant( <feature-value-name># ) || swash( <feature-value-name> ) || ornaments( <feature-value-name> ) || annotation( <feature-value-name> ) ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-alternates"}],description:"For any given character, fonts can provide a variety of alternate glyphs in addition to the default glyph for that character. This property provides control over the selection of these alternate glyphs.",restrictions:["enum"]},{name:"font-variant-position",browsers:["FF34"],values:[{name:"normal",description:"None of the features are enabled."},{name:"sub",description:"Enables display of subscript variants (OpenType feature: subs)."},{name:"super",description:"Enables display of superscript variants (OpenType feature: sups)."}],syntax:"normal | sub | super",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/font-variant-position"}],description:"Specifies the vertical position",restrictions:["enum"]},{name:"ime-mode",browsers:["E12","FF3","IE5"],values:[{name:"active",description:"The input method editor is initially active; text entry is performed using it unless the user specifically dismisses it."},{name:"auto",description:"No change is made to the current input method editor state. This is the default."},{name:"disabled",description:"The input method editor is disabled and may not be activated by the user."},{name:"inactive",description:"The input method editor is initially inactive, but the user may activate it if they wish."},{name:"normal",description:"The IME state should be normal; this value can be used in a user style sheet to override the page setting."}],status:"obsolete",syntax:"auto | normal | active | inactive | disabled",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/ime-mode"}],description:"Controls the state of the input method editor for text fields.",restrictions:["enum"]},{name:"mask-image",browsers:["E16","FF53","S4","C1","O15"],values:[{name:"none",description:"Counts as a transparent black image layer."},{name:"url()",description:"Reference to a <mask element or to a CSS image."}],syntax:"<mask-reference>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-image"}],description:"Sets the mask layer image of an element.",restrictions:["url","image","enum"]},{name:"mask-mode",browsers:["FF53"],values:[{name:"alpha",description:"Alpha values of the mask layer image should be used as the mask values."},{name:"auto",description:"Use alpha values if 'mask-image' is an image, luminance if a <mask> element or a CSS image."},{name:"luminance",description:"Luminance values of the mask layer image should be used as the mask values."}],syntax:"<masking-mode>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-mode"}],description:"Indicates whether the mask layer image is treated as luminance mask or alpha mask.",restrictions:["url","image","enum"]},{name:"mask-origin",browsers:["FF53","S4","C1","O15"],syntax:"<geometry-box>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-origin"}],description:"Specifies the mask positioning area.",restrictions:["geometry-box","enum"]},{name:"mask-position",browsers:["E18","FF53","S3.2","C1","O15"],syntax:"<position>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-position"}],description:"Specifies how mask layer images are positioned.",restrictions:["position","length","percentage"]},{name:"mask-repeat",browsers:["E18","FF53","S3.2","C1","O15"],syntax:"<repeat-style>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-repeat"}],description:"Specifies how mask layer images are tiled after they have been sized and positioned.",restrictions:["repeat"]},{name:"mask-size",browsers:["E18","FF53","S4","C4","O15"],values:[{name:"auto",description:"Resolved by using the image’s intrinsic ratio and the size of the other dimension, or failing that, using the image’s intrinsic size, or failing that, treating it as 100%."},{name:"contain",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the largest size such that both its width and its height can fit inside the background positioning area."},{name:"cover",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the smallest size such that both its width and its height can completely cover the background positioning area."}],syntax:"<bg-size>#",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-size"}],description:"Specifies the size of the mask layer images.",restrictions:["length","percentage","enum"]},{name:"-moz-animation",browsers:["FF9"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"infinite",description:"Causes the animation to repeat forever."},{name:"none",description:"No animation is performed"},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Shorthand property combines six of the animation properties into a single property.",restrictions:["time","enum","timing-function","identifier","number"]},{name:"-moz-animation-delay",browsers:["FF9"],description:"Defines when the animation will start.",restrictions:["time"]},{name:"-moz-animation-direction",browsers:["FF9"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Defines whether or not the animation should play in reverse on alternate cycles.",restrictions:["enum"]},{name:"-moz-animation-duration",browsers:["FF9"],description:"Defines the length of time that an animation takes to complete one cycle.",restrictions:["time"]},{name:"-moz-animation-iteration-count",browsers:["FF9"],values:[{name:"infinite",description:"Causes the animation to repeat forever."}],description:"Defines the number of times an animation cycle is played. The default value is one, meaning the animation will play from beginning to end once.",restrictions:["number","enum"]},{name:"-moz-animation-name",browsers:["FF9"],values:[{name:"none",description:"No animation is performed"}],description:"Defines a list of animations that apply. Each name is used to select the keyframe at-rule that provides the property values for the animation.",restrictions:["identifier","enum"]},{name:"-moz-animation-play-state",browsers:["FF9"],values:[{name:"paused",description:"A running animation will be paused."},{name:"running",description:"Resume playback of a paused animation."}],description:"Defines whether the animation is running or paused.",restrictions:["enum"]},{name:"-moz-animation-timing-function",browsers:["FF9"],description:"Describes how the animation will progress over one cycle of its duration. See the 'transition-timing-function'.",restrictions:["timing-function"]},{name:"-moz-appearance",browsers:["FF1"],values:[{name:"button"},{name:"button-arrow-down"},{name:"button-arrow-next"},{name:"button-arrow-previous"},{name:"button-arrow-up"},{name:"button-bevel"},{name:"checkbox"},{name:"checkbox-container"},{name:"checkbox-label"},{name:"dialog"},{name:"groupbox"},{name:"listbox"},{name:"menuarrow"},{name:"menuimage"},{name:"menuitem"},{name:"menuitemtext"},{name:"menulist"},{name:"menulist-button"},{name:"menulist-text"},{name:"menulist-textfield"},{name:"menupopup"},{name:"menuradio"},{name:"menuseparator"},{name:"-moz-mac-unified-toolbar"},{name:"-moz-win-borderless-glass"},{name:"-moz-win-browsertabbar-toolbox"},{name:"-moz-win-communications-toolbox"},{name:"-moz-win-glass"},{name:"-moz-win-media-toolbox"},{name:"none"},{name:"progressbar"},{name:"progresschunk"},{name:"radio"},{name:"radio-container"},{name:"radio-label"},{name:"radiomenuitem"},{name:"resizer"},{name:"resizerpanel"},{name:"scrollbarbutton-down"},{name:"scrollbarbutton-left"},{name:"scrollbarbutton-right"},{name:"scrollbarbutton-up"},{name:"scrollbar-small"},{name:"scrollbartrack-horizontal"},{name:"scrollbartrack-vertical"},{name:"separator"},{name:"spinner"},{name:"spinner-downbutton"},{name:"spinner-textfield"},{name:"spinner-upbutton"},{name:"statusbar"},{name:"statusbarpanel"},{name:"tab"},{name:"tabpanels"},{name:"tab-scroll-arrow-back"},{name:"tab-scroll-arrow-forward"},{name:"textfield"},{name:"textfield-multiline"},{name:"toolbar"},{name:"toolbox"},{name:"tooltip"},{name:"treeheadercell"},{name:"treeheadersortarrow"},{name:"treeitem"},{name:"treetwistyopen"},{name:"treeview"},{name:"treewisty"},{name:"window"}],status:"nonstandard",syntax:"none | button | button-arrow-down | button-arrow-next | button-arrow-previous | button-arrow-up | button-bevel | button-focus | caret | checkbox | checkbox-container | checkbox-label | checkmenuitem | dualbutton | groupbox | listbox | listitem | menuarrow | menubar | menucheckbox | menuimage | menuitem | menuitemtext | menulist | menulist-button | menulist-text | menulist-textfield | menupopup | menuradio | menuseparator | meterbar | meterchunk | progressbar | progressbar-vertical | progresschunk | progresschunk-vertical | radio | radio-container | radio-label | radiomenuitem | range | range-thumb | resizer | resizerpanel | scale-horizontal | scalethumbend | scalethumb-horizontal | scalethumbstart | scalethumbtick | scalethumb-vertical | scale-vertical | scrollbarbutton-down | scrollbarbutton-left | scrollbarbutton-right | scrollbarbutton-up | scrollbarthumb-horizontal | scrollbarthumb-vertical | scrollbartrack-horizontal | scrollbartrack-vertical | searchfield | separator | sheet | spinner | spinner-downbutton | spinner-textfield | spinner-upbutton | splitter | statusbar | statusbarpanel | tab | tabpanel | tabpanels | tab-scroll-arrow-back | tab-scroll-arrow-forward | textfield | textfield-multiline | toolbar | toolbarbutton | toolbarbutton-dropdown | toolbargripper | toolbox | tooltip | treeheader | treeheadercell | treeheadersortarrow | treeitem | treeline | treetwisty | treetwistyopen | treeview | -moz-mac-unified-toolbar | -moz-win-borderless-glass | -moz-win-browsertabbar-toolbox | -moz-win-communicationstext | -moz-win-communications-toolbox | -moz-win-exclude-glass | -moz-win-glass | -moz-win-mediatext | -moz-win-media-toolbox | -moz-window-button-box | -moz-window-button-box-maximized | -moz-window-button-close | -moz-window-button-maximize | -moz-window-button-minimize | -moz-window-button-restore | -moz-window-frame-bottom | -moz-window-frame-left | -moz-window-frame-right | -moz-window-titlebar | -moz-window-titlebar-maximized",description:"Used in Gecko (Firefox) to display an element using a platform-native styling based on the operating system's theme.",restrictions:["enum"]},{name:"-moz-backface-visibility",browsers:["FF10"],values:[{name:"hidden"},{name:"visible"}],description:"Determines whether or not the 'back' side of a transformed element is visible when facing the viewer. With an identity transform, the front side of an element faces the viewer.",restrictions:["enum"]},{name:"-moz-background-clip",browsers:["FF1-3.6"],values:[{name:"padding"}],description:"Determines the background painting area.",restrictions:["box","enum"]},{name:"-moz-background-inline-policy",browsers:["FF1"],values:[{name:"bounding-box"},{name:"continuous"},{name:"each-box"}],description:"In Gecko-based applications like Firefox, the -moz-background-inline-policy CSS property specifies how the background image of an inline element is determined when the content of the inline element wraps onto multiple lines. The choice of position has significant effects on repetition.",restrictions:["enum"]},{name:"-moz-background-origin",browsers:["FF1"],description:"For elements rendered as a single box, specifies the background positioning area. For elements rendered as multiple boxes (e.g., inline boxes on several lines, boxes on several pages) specifies which boxes 'box-decoration-break' operates on to determine the background positioning area(s).",restrictions:["box"]},{name:"-moz-border-bottom-colors",browsers:["FF1"],status:"nonstandard",syntax:"<color>+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-border-bottom-colors"}],description:"Sets a list of colors for the bottom border.",restrictions:["color"]},{name:"-moz-border-image",browsers:["FF3.6"],values:[{name:"auto",description:"If 'auto' is specified then the border image width is the intrinsic width or height (whichever is applicable) of the corresponding image slice. If the image does not have the required intrinsic dimension then the corresponding border-width is used instead."},{name:"fill",description:"Causes the middle part of the border-image to be preserved."},{name:"none"},{name:"repeat",description:"The image is tiled (repeated) to fill the area."},{name:"round",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the image is rescaled so that it does."},{name:"space",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the extra space is distributed around the tiles."},{name:"stretch",description:"The image is stretched to fill the area."},{name:"url()"}],description:"Shorthand property for setting 'border-image-source', 'border-image-slice', 'border-image-width', 'border-image-outset' and 'border-image-repeat'. Omitted values are set to their initial values.",restrictions:["length","percentage","number","url","enum"]},{name:"-moz-border-left-colors",browsers:["FF1"],status:"nonstandard",syntax:"<color>+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-border-left-colors"}],description:"Sets a list of colors for the bottom border.",restrictions:["color"]},{name:"-moz-border-right-colors",browsers:["FF1"],status:"nonstandard",syntax:"<color>+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-border-right-colors"}],description:"Sets a list of colors for the bottom border.",restrictions:["color"]},{name:"-moz-border-top-colors",browsers:["FF1"],status:"nonstandard",syntax:"<color>+ | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-border-top-colors"}],description:"Ske Firefox, -moz-border-bottom-colors sets a list of colors for the bottom border.",restrictions:["color"]},{name:"-moz-box-align",browsers:["FF1"],values:[{name:"baseline",description:"If this box orientation is inline-axis or horizontal, all children are placed with their baselines aligned, and extra space placed before or after as necessary. For block flows, the baseline of the first non-empty line box located within the element is used. For tables, the baseline of the first cell is used."},{name:"center",description:"Any extra space is divided evenly, with half placed above the child and the other half placed after the child."},{name:"end",description:"For normal direction boxes, the bottom edge of each child is placed along the bottom of the box. Extra space is placed above the element. For reverse direction boxes, the top edge of each child is placed along the top of the box. Extra space is placed below the element."},{name:"start",description:"For normal direction boxes, the top edge of each child is placed along the top of the box. Extra space is placed below the element. For reverse direction boxes, the bottom edge of each child is placed along the bottom of the box. Extra space is placed above the element."},{name:"stretch",description:"The height of each child is adjusted to that of the containing block."}],description:"Specifies how a XUL box aligns its contents across (perpendicular to) the direction of its layout. The effect of this is only visible if there is extra space in the box.",restrictions:["enum"]},{name:"-moz-box-direction",browsers:["FF1"],values:[{name:"normal",description:"A box with a computed value of horizontal for box-orient displays its children from left to right. A box with a computed value of vertical displays its children from top to bottom."},{name:"reverse",description:"A box with a computed value of horizontal for box-orient displays its children from right to left. A box with a computed value of vertical displays its children from bottom to top."}],description:"Specifies whether a box lays out its contents normally (from the top or left edge), or in reverse (from the bottom or right edge).",restrictions:["enum"]},{name:"-moz-box-flex",browsers:["FF1"],description:"Specifies how a box grows to fill the box that contains it, in the direction of the containing box's layout.",restrictions:["number"]},{name:"-moz-box-flexgroup",browsers:["FF1"],description:"Flexible elements can be assigned to flex groups using the 'box-flex-group' property.",restrictions:["integer"]},{name:"-moz-box-ordinal-group",browsers:["FF1"],description:"Indicates the ordinal group the element belongs to. Elements with a lower ordinal group are displayed before those with a higher ordinal group.",restrictions:["integer"]},{name:"-moz-box-orient",browsers:["FF1"],values:[{name:"block-axis",description:"Elements are oriented along the box's axis."},{name:"horizontal",description:"The box displays its children from left to right in a horizontal line."},{name:"inline-axis",description:"Elements are oriented vertically."},{name:"vertical",description:"The box displays its children from stacked from top to bottom vertically."}],description:"In Mozilla applications, -moz-box-orient specifies whether a box lays out its contents horizontally or vertically.",restrictions:["enum"]},{name:"-moz-box-pack",browsers:["FF1"],values:[{name:"center",description:"The extra space is divided evenly, with half placed before the first child and the other half placed after the last child."},{name:"end",description:"For normal direction boxes, the right edge of the last child is placed at the right side, with all extra space placed before the first child. For reverse direction boxes, the left edge of the first child is placed at the left side, with all extra space placed after the last child."},{name:"justify",description:"The space is divided evenly in-between each child, with none of the extra space placed before the first child or after the last child. If there is only one child, treat the pack value as if it were start."},{name:"start",description:"For normal direction boxes, the left edge of the first child is placed at the left side, with all extra space placed after the last child. For reverse direction boxes, the right edge of the last child is placed at the right side, with all extra space placed before the first child."}],description:"Specifies how a box packs its contents in the direction of its layout. The effect of this is only visible if there is extra space in the box.",restrictions:["enum"]},{name:"-moz-box-sizing",browsers:["FF1"],values:[{name:"border-box",description:"The specified width and height (and respective min/max properties) on this element determine the border box of the element."},{name:"content-box",description:"Behavior of width and height as specified by CSS2.1. The specified width and height (and respective min/max properties) apply to the width and height respectively of the content box of the element."},{name:"padding-box",description:"The specified width and height (and respective min/max properties) on this element determine the padding box of the element."}],description:"Box Model addition in CSS3.",restrictions:["enum"]},{name:"-moz-column-count",browsers:["FF3.5"],values:[{name:"auto",description:"Determines the number of columns by the 'column-width' property and the element width."}],description:"Describes the optimal number of columns into which the content of the element will be flowed.",restrictions:["integer"]},{name:"-moz-column-gap",browsers:["FF3.5"],values:[{name:"normal",description:"User agent specific and typically equivalent to 1em."}],description:"Sets the gap between columns. If there is a column rule between columns, it will appear in the middle of the gap.",restrictions:["length"]},{name:"-moz-column-rule",browsers:["FF3.5"],description:"Shorthand for setting 'column-rule-width', 'column-rule-style', and 'column-rule-color' at the same place in the style sheet. Omitted values are set to their initial values.",restrictions:["length","line-width","line-style","color"]},{name:"-moz-column-rule-color",browsers:["FF3.5"],description:"Sets the color of the column rule",restrictions:["color"]},{name:"-moz-column-rule-style",browsers:["FF3.5"],description:"Sets the style of the rule between columns of an element.",restrictions:["line-style"]},{name:"-moz-column-rule-width",browsers:["FF3.5"],description:"Sets the width of the rule between columns. Negative values are not allowed.",restrictions:["length","line-width"]},{name:"-moz-columns",browsers:["FF9"],values:[{name:"auto",description:"The width depends on the values of other properties."}],description:"A shorthand property which sets both 'column-width' and 'column-count'.",restrictions:["length","integer"]},{name:"-moz-column-width",browsers:["FF3.5"],values:[{name:"auto",description:"The width depends on the values of other properties."}],description:"This property describes the width of columns in multicol elements.",restrictions:["length"]},{name:"-moz-font-feature-settings",browsers:["FF4"],values:[{name:'"c2cs"'},{name:'"dlig"'},{name:'"kern"'},{name:'"liga"'},{name:'"lnum"'},{name:'"onum"'},{name:'"smcp"'},{name:'"swsh"'},{name:'"tnum"'},{name:"normal",description:"No change in glyph substitution or positioning occurs."},{name:"off",browsers:["FF4"]},{name:"on",browsers:["FF4"]}],description:"Provides low-level control over OpenType font features. It is intended as a way of providing access to font features that are not widely used but are needed for a particular use case.",restrictions:["string","integer"]},{name:"-moz-hyphens",browsers:["FF9"],values:[{name:"auto",description:"Conditional hyphenation characters inside a word, if present, take priority over automatic resources when determining hyphenation points within the word."},{name:"manual",description:"Words are only broken at line breaks where there are characters inside the word that suggest line break opportunities"},{name:"none",description:"Words are not broken at line breaks, even if characters inside the word suggest line break points."}],description:"Controls whether hyphenation is allowed to create more break opportunities within a line of text.",restrictions:["enum"]},{name:"-moz-perspective",browsers:["FF10"],values:[{name:"none",description:"No perspective transform is applied."}],description:"Applies the same transform as the perspective(<number>) transform function, except that it applies only to the positioned or transformed children of the element, not to the transform on the element itself.",restrictions:["length"]},{name:"-moz-perspective-origin",browsers:["FF10"],description:"Establishes the origin for the perspective property. It effectively sets the X and Y position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"-moz-text-align-last",browsers:["FF12"],values:[{name:"auto"},{name:"center",description:"The inline contents are centered within the line box."},{name:"justify",description:"The text is justified according to the method specified by the 'text-justify' property."},{name:"left",description:"The inline contents are aligned to the left edge of the line box. In vertical text, 'left' aligns to the edge of the line box that would be the start edge for left-to-right text."},{name:"right",description:"The inline contents are aligned to the right edge of the line box. In vertical text, 'right' aligns to the edge of the line box that would be the end edge for left-to-right text."}],description:"Describes how the last line of a block or a line right before a forced line break is aligned when 'text-align' is set to 'justify'.",restrictions:["enum"]},{name:"-moz-text-decoration-color",browsers:["FF6"],description:"Specifies the color of text decoration (underlines overlines, and line-throughs) set on the element with text-decoration-line.",restrictions:["color"]},{name:"-moz-text-decoration-line",browsers:["FF6"],values:[{name:"line-through",description:"Each line of text has a line through the middle."},{name:"none",description:"Neither produces nor inhibits text decoration."},{name:"overline",description:"Each line of text has a line above it."},{name:"underline",description:"Each line of text is underlined."}],description:"Specifies what line decorations, if any, are added to the element.",restrictions:["enum"]},{name:"-moz-text-decoration-style",browsers:["FF6"],values:[{name:"dashed",description:"Produces a dashed line style."},{name:"dotted",description:"Produces a dotted line."},{name:"double",description:"Produces a double line."},{name:"none",description:"Produces no line."},{name:"solid",description:"Produces a solid line."},{name:"wavy",description:"Produces a wavy line."}],description:"Specifies the line style for underline, line-through and overline text decoration.",restrictions:["enum"]},{name:"-moz-text-size-adjust",browsers:["FF"],values:[{name:"auto",description:"Renderers must use the default size adjustment when displaying on a small device."},{name:"none",description:"Renderers must not do size adjustment when displaying on a small device."}],description:"Specifies a size adjustment for displaying text content in mobile browsers.",restrictions:["enum","percentage"]},{name:"-moz-transform",browsers:["FF3.5"],values:[{name:"matrix()",description:"Specifies a 2D transformation in the form of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix [a b c d e f]"},{name:"matrix3d()",description:"Specifies a 3D transformation as a 4x4 homogeneous matrix of 16 values in column-major order."},{name:"none"},{name:"perspective",description:"Specifies a perspective projection matrix."},{name:"rotate()",description:"Specifies a 2D rotation by the angle specified in the parameter about the origin of the element, as defined by the transform-origin property."},{name:"rotate3d()",description:"Specifies a clockwise 3D rotation by the angle specified in last parameter about the [x,y,z] direction vector described by the first 3 parameters."},{name:"rotateX('angle')",description:"Specifies a clockwise rotation by the given angle about the X axis."},{name:"rotateY('angle')",description:"Specifies a clockwise rotation by the given angle about the Y axis."},{name:"rotateZ('angle')",description:"Specifies a clockwise rotation by the given angle about the Z axis."},{name:"scale()",description:"Specifies a 2D scale operation by the [sx,sy] scaling vector described by the 2 parameters. If the second parameter is not provided, it is takes a value equal to the first."},{name:"scale3d()",description:"Specifies a 3D scale operation by the [sx,sy,sz] scaling vector described by the 3 parameters."},{name:"scaleX()",description:"Specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter."},{name:"scaleY()",description:"Specifies a scale operation using the [sy,1] scaling vector, where sy is given as the parameter."},{name:"scaleZ()",description:"Specifies a scale operation using the [1,1,sz] scaling vector, where sz is given as the parameter."},{name:"skew()",description:"Specifies a skew transformation along the X and Y axes. The first angle parameter specifies the skew on the X axis. The second angle parameter specifies the skew on the Y axis. If the second parameter is not given then a value of 0 is used for the Y angle (ie: no skew on the Y axis)."},{name:"skewX()",description:"Specifies a skew transformation along the X axis by the given angle."},{name:"skewY()",description:"Specifies a skew transformation along the Y axis by the given angle."},{name:"translate()",description:"Specifies a 2D translation by the vector [tx, ty], where tx is the first translation-value parameter and ty is the optional second translation-value parameter."},{name:"translate3d()",description:"Specifies a 3D translation by the vector [tx,ty,tz], with tx, ty and tz being the first, second and third translation-value parameters respectively."},{name:"translateX()",description:"Specifies a translation by the given amount in the X direction."},{name:"translateY()",description:"Specifies a translation by the given amount in the Y direction."},{name:"translateZ()",description:"Specifies a translation by the given amount in the Z direction. Note that percentage values are not allowed in the translateZ translation-value, and if present are evaluated as 0."}],description:"A two-dimensional transformation is applied to an element through the 'transform' property. This property contains a list of transform functions similar to those allowed by SVG.",restrictions:["enum"]},{name:"-moz-transform-origin",browsers:["FF3.5"],description:"Establishes the origin of transformation for an element.",restrictions:["position","length","percentage"]},{name:"-moz-transition",browsers:["FF4"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Shorthand property combines four of the transition properties into a single property.",restrictions:["time","property","timing-function","enum"]},{name:"-moz-transition-delay",browsers:["FF4"],description:"Defines when the transition will start. It allows a transition to begin execution some period of time from when it is applied.",restrictions:["time"]},{name:"-moz-transition-duration",browsers:["FF4"],description:"Specifies how long the transition from the old value to the new value should take.",restrictions:["time"]},{name:"-moz-transition-property",browsers:["FF4"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Specifies the name of the CSS property to which the transition is applied.",restrictions:["property"]},{name:"-moz-transition-timing-function",browsers:["FF4"],description:"Describes how the intermediate values used during a transition will be calculated.",restrictions:["timing-function"]},{name:"-moz-user-focus",browsers:["FF1"],values:[{name:"ignore"},{name:"normal"}],status:"nonstandard",syntax:"ignore | normal | select-after | select-before | select-menu | select-same | select-all | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-user-focus"}],description:"Used to indicate whether the element can have focus."},{name:"-moz-user-select",browsers:["FF1.5"],values:[{name:"all"},{name:"element"},{name:"elements"},{name:"-moz-all"},{name:"-moz-none"},{name:"none"},{name:"text"},{name:"toggle"}],description:"Controls the appearance of selection.",restrictions:["enum"]},{name:"-ms-accelerator",browsers:["E","IE10"],values:[{name:"false",description:"The element does not contain an accelerator key sequence."},{name:"true",description:"The element contains an accelerator key sequence."}],status:"nonstandard",syntax:"false | true",description:"IE only. Has the ability to turn off its system underlines for accelerator keys until the ALT key is pressed",restrictions:["enum"]},{name:"-ms-behavior",browsers:["IE8"],description:"IE only. Used to extend behaviors of the browser",restrictions:["url"]},{name:"-ms-block-progression",browsers:["IE8"],values:[{name:"bt",description:"Bottom-to-top block flow. Layout is horizontal."},{name:"lr",description:"Left-to-right direction. The flow orientation is vertical."},{name:"rl",description:"Right-to-left direction. The flow orientation is vertical."},{name:"tb",description:"Top-to-bottom direction. The flow orientation is horizontal."}],status:"nonstandard",syntax:"tb | rl | bt | lr",description:"Sets the block-progression value and the flow orientation",restrictions:["enum"]},{name:"-ms-content-zoom-chaining",browsers:["E","IE10"],values:[{name:"chained",description:"The nearest zoomable parent element begins zooming when the user hits a zoom limit during a manipulation. No bounce effect is shown."},{name:"none",description:"A bounce effect is shown when the user hits a zoom limit during a manipulation."}],status:"nonstandard",syntax:"none | chained",description:"Specifies the zoom behavior that occurs when a user hits the zoom limit during a manipulation."},{name:"-ms-content-zooming",browsers:["E","IE10"],values:[{name:"none",description:"The element is not zoomable."},{name:"zoom",description:"The element is zoomable."}],status:"nonstandard",syntax:"none | zoom",description:"Specifies whether zooming is enabled.",restrictions:["enum"]},{name:"-ms-content-zoom-limit",browsers:["E","IE10"],status:"nonstandard",syntax:"<'-ms-content-zoom-limit-min'> <'-ms-content-zoom-limit-max'>",description:"Shorthand property for the -ms-content-zoom-limit-min and -ms-content-zoom-limit-max properties.",restrictions:["percentage"]},{name:"-ms-content-zoom-limit-max",browsers:["E","IE10"],status:"nonstandard",syntax:"<percentage>",description:"Specifies the maximum zoom factor.",restrictions:["percentage"]},{name:"-ms-content-zoom-limit-min",browsers:["E","IE10"],status:"nonstandard",syntax:"<percentage>",description:"Specifies the minimum zoom factor.",restrictions:["percentage"]},{name:"-ms-content-zoom-snap",browsers:["E","IE10"],values:[{name:"mandatory",description:"Indicates that the motion of the content after the contact is picked up is always adjusted so that it lands on a snap-point."},{name:"none",description:"Indicates that zooming is unaffected by any defined snap-points."},{name:"proximity",description:'Indicates that the motion of the content after the contact is picked up may be adjusted if the content would normally stop "close enough" to a snap-point.'},{name:"snapInterval(100%, 100%)",description:"Specifies where the snap-points will be placed."},{name:"snapList()",description:"Specifies the position of individual snap-points as a comma-separated list of zoom factors."}],status:"nonstandard",syntax:"<'-ms-content-zoom-snap-type'> || <'-ms-content-zoom-snap-points'>",description:"Shorthand property for the -ms-content-zoom-snap-type and -ms-content-zoom-snap-points properties."},{name:"-ms-content-zoom-snap-points",browsers:["E","IE10"],values:[{name:"snapInterval(100%, 100%)",description:"Specifies where the snap-points will be placed."},{name:"snapList()",description:"Specifies the position of individual snap-points as a comma-separated list of zoom factors."}],status:"nonstandard",syntax:"snapInterval( <percentage>, <percentage> ) | snapList( <percentage># )",description:"Defines where zoom snap-points are located."},{name:"-ms-content-zoom-snap-type",browsers:["E","IE10"],values:[{name:"mandatory",description:"Indicates that the motion of the content after the contact is picked up is always adjusted so that it lands on a snap-point."},{name:"none",description:"Indicates that zooming is unaffected by any defined snap-points."},{name:"proximity",description:'Indicates that the motion of the content after the contact is picked up may be adjusted if the content would normally stop "close enough" to a snap-point.'}],status:"nonstandard",syntax:"none | proximity | mandatory",description:"Specifies how zooming is affected by defined snap-points.",restrictions:["enum"]},{name:"-ms-filter",browsers:["IE8-9"],status:"nonstandard",syntax:"<string>",description:"IE only. Used to produce visual effects.",restrictions:["string"]},{name:"-ms-flex",browsers:["IE10"],values:[{name:"auto",description:"Retrieves the value of the main size property as the used 'flex-basis'."},{name:"none",description:"Expands to '0 0 auto'."}],description:"specifies the parameters of a flexible length: the positive and negative flexibility, and the preferred size.",restrictions:["length","number","percentage"]},{name:"-ms-flex-align",browsers:["IE10"],values:[{name:"baseline",description:"If the flex item’s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment."},{name:"center",description:"The flex item’s margin box is centered in the cross axis within the line."},{name:"end",description:"The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line."},{name:"start",description:"The cross-start margin edge of the flexbox item is placed flush with the cross-start edge of the line."},{name:"stretch",description:"If the cross size property of the flexbox item is anything other than 'auto', this value is identical to 'start'."}],description:"Aligns flex items along the cross axis of the current line of the flex container.",restrictions:["enum"]},{name:"-ms-flex-direction",browsers:["IE10"],values:[{name:"column",description:"The flex container’s main axis has the same orientation as the block axis of the current writing mode."},{name:"column-reverse",description:"Same as 'column', except the main-start and main-end directions are swapped."},{name:"row",description:"The flex container’s main axis has the same orientation as the inline axis of the current writing mode."},{name:"row-reverse",description:"Same as 'row', except the main-start and main-end directions are swapped."}],description:"Specifies how flex items are placed in the flex container, by setting the direction of the flex container’s main axis.",restrictions:["enum"]},{name:"-ms-flex-flow",browsers:["IE10"],values:[{name:"column",description:"The flex container’s main axis has the same orientation as the block axis of the current writing mode."},{name:"column-reverse",description:"Same as 'column', except the main-start and main-end directions are swapped."},{name:"nowrap",description:"The flex container is single-line."},{name:"row",description:"The flex container’s main axis has the same orientation as the inline axis of the current writing mode."},{name:"wrap",description:"The flexbox is multi-line."},{name:"wrap-reverse",description:"Same as 'wrap', except the cross-start and cross-end directions are swapped."}],description:"Specifies how flexbox items are placed in the flexbox.",restrictions:["enum"]},{name:"-ms-flex-item-align",browsers:["IE10"],values:[{name:"auto",description:"Computes to the value of 'align-items' on the element’s parent, or 'stretch' if the element has no parent. On absolutely positioned elements, it computes to itself."},{name:"baseline",description:"If the flex item’s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment."},{name:"center",description:"The flex item’s margin box is centered in the cross axis within the line."},{name:"end",description:"The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line."},{name:"start",description:"The cross-start margin edge of the flex item is placed flush with the cross-start edge of the line."},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."}],description:"Allows the default alignment along the cross axis to be overridden for individual flex items.",restrictions:["enum"]},{name:"-ms-flex-line-pack",browsers:["IE10"],values:[{name:"center",description:"Lines are packed toward the center of the flex container."},{name:"distribute",description:"Lines are evenly distributed in the flex container, with half-size spaces on either end."},{name:"end",description:"Lines are packed toward the end of the flex container."},{name:"justify",description:"Lines are evenly distributed in the flex container."},{name:"start",description:"Lines are packed toward the start of the flex container."},{name:"stretch",description:"Lines stretch to take up the remaining space."}],description:"Aligns a flex container’s lines within the flex container when there is extra space in the cross-axis, similar to how 'justify-content' aligns individual items within the main-axis.",restrictions:["enum"]},{name:"-ms-flex-order",browsers:["IE10"],description:"Controls the order in which children of a flex container appear within the flex container, by assigning them to ordinal groups.",restrictions:["integer"]},{name:"-ms-flex-pack",browsers:["IE10"],values:[{name:"center",description:"Flex items are packed toward the center of the line."},{name:"distribute",description:"Flex items are evenly distributed in the line, with half-size spaces on either end."},{name:"end",description:"Flex items are packed toward the end of the line."},{name:"justify",description:"Flex items are evenly distributed in the line."},{name:"start",description:"Flex items are packed toward the start of the line."}],description:"Aligns flex items along the main axis of the current line of the flex container.",restrictions:["enum"]},{name:"-ms-flex-wrap",browsers:["IE10"],values:[{name:"nowrap",description:"The flex container is single-line."},{name:"wrap",description:"The flexbox is multi-line."},{name:"wrap-reverse",description:"Same as 'wrap', except the cross-start and cross-end directions are swapped."}],description:"Controls whether the flex container is single-line or multi-line, and the direction of the cross-axis, which determines the direction new lines are stacked in.",restrictions:["enum"]},{name:"-ms-flow-from",browsers:["E","IE10"],values:[{name:"none",description:"The block container is not a CSS Region."}],status:"nonstandard",syntax:"[ none | <custom-ident> ]#",description:"Makes a block container a region and associates it with a named flow.",restrictions:["identifier"]},{name:"-ms-flow-into",browsers:["E","IE10"],values:[{name:"none",description:"The element is not moved to a named flow and normal CSS processing takes place."}],status:"nonstandard",syntax:"[ none | <custom-ident> ]#",description:"Places an element or its contents into a named flow.",restrictions:["identifier"]},{name:"-ms-grid-column",browsers:["E","IE10"],values:[{name:"auto"},{name:"end"},{name:"start"}],description:"Used to place grid items and explicitly defined grid cells in the Grid.",restrictions:["integer","string","enum"]},{name:"-ms-grid-column-align",browsers:["E","IE10"],values:[{name:"center",description:"Places the center of the Grid Item's margin box at the center of the Grid Item's column."},{name:"end",description:"Aligns the end edge of the Grid Item's margin box to the end edge of the Grid Item's column."},{name:"start",description:"Aligns the starting edge of the Grid Item's margin box to the starting edge of the Grid Item's column."},{name:"stretch",description:"Ensures that the Grid Item's margin box is equal to the size of the Grid Item's column."}],description:"Aligns the columns in a grid.",restrictions:["enum"]},{name:"-ms-grid-columns",browsers:["E","IE10"],description:"Lays out the columns of the grid."},{name:"-ms-grid-column-span",browsers:["E","IE10"],description:"Specifies the number of columns to span.",restrictions:["integer"]},{name:"-ms-grid-layer",browsers:["E","IE10"],description:"Grid-layer is similar in concept to z-index, but avoids overloading the meaning of the z-index property, which is applicable only to positioned elements.",restrictions:["integer"]},{name:"-ms-grid-row",browsers:["E","IE10"],values:[{name:"auto"},{name:"end"},{name:"start"}],description:"grid-row is used to place grid items and explicitly defined grid cells in the Grid.",restrictions:["integer","string","enum"]},{name:"-ms-grid-row-align",browsers:["E","IE10"],values:[{name:"center",description:"Places the center of the Grid Item's margin box at the center of the Grid Item's row."},{name:"end",description:"Aligns the end edge of the Grid Item's margin box to the end edge of the Grid Item's row."},{name:"start",description:"Aligns the starting edge of the Grid Item's margin box to the starting edge of the Grid Item's row."},{name:"stretch",description:"Ensures that the Grid Item's margin box is equal to the size of the Grid Item's row."}],description:"Aligns the rows in a grid.",restrictions:["enum"]},{name:"-ms-grid-rows",browsers:["E","IE10"],description:"Lays out the columns of the grid."},{name:"-ms-grid-row-span",browsers:["E","IE10"],description:"Specifies the number of rows to span.",restrictions:["integer"]},{name:"-ms-high-contrast-adjust",browsers:["E","IE10"],values:[{name:"auto",description:"Properties will be adjusted as applicable."},{name:"none",description:"No adjustments will be applied."}],status:"nonstandard",syntax:"auto | none",description:"Specifies if properties should be adjusted in high contrast mode.",restrictions:["enum"]},{name:"-ms-hyphenate-limit-chars",browsers:["E","IE10"],values:[{name:"auto",description:"The user agent chooses a value that adapts to the current layout."}],status:"nonstandard",syntax:"auto | <integer>{1,3}",description:"Specifies the minimum number of characters in a hyphenated word.",restrictions:["integer"]},{name:"-ms-hyphenate-limit-lines",browsers:["E","IE10"],values:[{name:"no-limit",description:"There is no limit."}],status:"nonstandard",syntax:"no-limit | <integer>",description:"Indicates the maximum number of successive hyphenated lines in an element.",restrictions:["integer"]},{name:"-ms-hyphenate-limit-zone",browsers:["E","IE10"],status:"nonstandard",syntax:"<percentage> | <length>",description:"Specifies the maximum amount of unfilled space (before justification) that may be left in the line box before hyphenation is triggered to pull part of a word from the next line back up into the current line.",restrictions:["percentage","length"]},{name:"-ms-hyphens",browsers:["E","IE10"],values:[{name:"auto",description:"Conditional hyphenation characters inside a word, if present, take priority over automatic resources when determining hyphenation points within the word."},{name:"manual",description:"Words are only broken at line breaks where there are characters inside the word that suggest line break opportunities"},{name:"none",description:"Words are not broken at line breaks, even if characters inside the word suggest line break points."}],description:"Controls whether hyphenation is allowed to create more break opportunities within a line of text.",restrictions:["enum"]},{name:"-ms-ime-mode",browsers:["IE10"],values:[{name:"active",description:"The input method editor is initially active; text entry is performed using it unless the user specifically dismisses it."},{name:"auto",description:"No change is made to the current input method editor state. This is the default."},{name:"disabled",description:"The input method editor is disabled and may not be activated by the user."},{name:"inactive",description:"The input method editor is initially inactive, but the user may activate it if they wish."},{name:"normal",description:"The IME state should be normal; this value can be used in a user style sheet to override the page setting."}],description:"Controls the state of the input method editor for text fields.",restrictions:["enum"]},{name:"-ms-interpolation-mode",browsers:["IE7"],values:[{name:"bicubic"},{name:"nearest-neighbor"}],description:"Gets or sets the interpolation (resampling) method used to stretch images.",restrictions:["enum"]},{name:"-ms-layout-grid",browsers:["E","IE10"],values:[{name:"char",description:"Any of the range of character values available to the -ms-layout-grid-char property."},{name:"line",description:"Any of the range of line values available to the -ms-layout-grid-line property."},{name:"mode",description:"Any of the range of mode values available to the -ms-layout-grid-mode property."},{name:"type",description:"Any of the range of type values available to the -ms-layout-grid-type property."}],description:"Sets or retrieves the composite document grid properties that specify the layout of text characters."},{name:"-ms-layout-grid-char",browsers:["E","IE10"],values:[{name:"auto",description:"Largest character in the font of the element is used to set the character grid."},{name:"none",description:"Default. No character grid is set."}],description:"Sets or retrieves the size of the character grid used for rendering the text content of an element.",restrictions:["enum","length","percentage"]},{name:"-ms-layout-grid-line",browsers:["E","IE10"],values:[{name:"auto",description:"Largest character in the font of the element is used to set the character grid."},{name:"none",description:"Default. No grid line is set."}],description:"Sets or retrieves the gridline value used for rendering the text content of an element.",restrictions:["length"]},{name:"-ms-layout-grid-mode",browsers:["E","IE10"],values:[{name:"both",description:"Default. Both the char and line grid modes are enabled. This setting is necessary to fully enable the layout grid on an element."},{name:"char",description:"Only a character grid is used. This is recommended for use with block-level elements, such as a blockquote, where the line grid is intended to be disabled."},{name:"line",description:"Only a line grid is used. This is recommended for use with inline elements, such as a span, to disable the horizontal grid on runs of text that act as a single entity in the grid layout."},{name:"none",description:"No grid is used."}],description:"Gets or sets whether the text layout grid uses two dimensions.",restrictions:["enum"]},{name:"-ms-layout-grid-type",browsers:["E","IE10"],values:[{name:"fixed",description:"Grid used for monospaced layout. All noncursive characters are treated as equal; every character is centered within a single grid space by default."},{name:"loose",description:"Default. Grid used for Japanese and Korean characters."},{name:"strict",description:"Grid used for Chinese, as well as Japanese (Genko) and Korean characters. Only the ideographs, kanas, and wide characters are snapped to the grid."}],description:"Sets or retrieves the type of grid used for rendering the text content of an element.",restrictions:["enum"]},{name:"-ms-line-break",browsers:["E","IE10"],values:[{name:"auto",description:"The UA determines the set of line-breaking restrictions to use for CJK scripts, and it may vary the restrictions based on the length of the line; e.g., use a less restrictive set of line-break rules for short lines."},{name:"keep-all",description:"Sequences of CJK characters can no longer break on implied break points. This option should only be used where the presence of word separator characters still creates line-breaking opportunities, as in Korean."},{name:"newspaper",description:"Breaks CJK scripts using the least restrictive set of line-breaking rules. Typically used for short lines, such as in newspapers."},{name:"normal",description:"Breaks CJK scripts using a normal set of line-breaking rules."},{name:"strict",description:"Breaks CJK scripts using a more restrictive set of line-breaking rules than 'normal'."}],description:"Specifies what set of line breaking restrictions are in effect within the element.",restrictions:["enum"]},{name:"-ms-overflow-style",browsers:["E","IE10"],values:[{name:"auto",description:"No preference, UA should use the first scrolling method in the list that it supports."},{name:"-ms-autohiding-scrollbar",description:"Indicates the element displays auto-hiding scrollbars during mouse interactions and panning indicators during touch and keyboard interactions."},{name:"none",description:"Indicates the element does not display scrollbars or panning indicators, even when its content overflows."},{name:"scrollbar",description:'Scrollbars are typically narrow strips inserted on one or two edges of an element and which often have arrows to click on and a "thumb" to drag up and down (or left and right) to move the contents of the element.'}],status:"nonstandard",syntax:"auto | none | scrollbar | -ms-autohiding-scrollbar",description:"Specify whether content is clipped when it overflows the element's content area.",restrictions:["enum"]},{name:"-ms-perspective",browsers:["IE10"],values:[{name:"none",description:"No perspective transform is applied."}],description:"Applies the same transform as the perspective(<number>) transform function, except that it applies only to the positioned or transformed children of the element, not to the transform on the element itself.",restrictions:["length"]},{name:"-ms-perspective-origin",browsers:["IE10"],description:"Establishes the origin for the perspective property. It effectively sets the X and Y position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"-ms-perspective-origin-x",browsers:["IE10"],description:"Establishes the origin for the perspective property. It effectively sets the X position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"-ms-perspective-origin-y",browsers:["IE10"],description:"Establishes the origin for the perspective property. It effectively sets the Y position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"-ms-progress-appearance",browsers:["IE10"],values:[{name:"bar"},{name:"ring"}],description:"Gets or sets a value that specifies whether a progress control displays as a bar or a ring.",restrictions:["enum"]},{name:"-ms-scrollbar-3dlight-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the top and left edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"-ms-scrollbar-arrow-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the arrow elements of a scroll arrow.",restrictions:["color"]},{name:"-ms-scrollbar-base-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the main elements of a scroll bar, which include the scroll box, track, and scroll arrows.",restrictions:["color"]},{name:"-ms-scrollbar-darkshadow-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the gutter of a scroll bar.",restrictions:["color"]},{name:"-ms-scrollbar-face-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"-ms-scrollbar-highlight-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the top and left edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"-ms-scrollbar-shadow-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the bottom and right edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"-ms-scrollbar-track-color",browsers:["IE8"],status:"nonstandard",syntax:"<color>",description:"Determines the color of the track element of a scroll bar.",restrictions:["color"]},{name:"-ms-scroll-chaining",browsers:["E","IE10"],values:[{name:"chained"},{name:"none"}],status:"nonstandard",syntax:"chained | none",description:"Gets or sets a value that indicates the scrolling behavior that occurs when a user hits the content boundary during a manipulation.",restrictions:["enum","length"]},{name:"-ms-scroll-limit",browsers:["E","IE10"],values:[{name:"auto"}],status:"nonstandard",syntax:"<'-ms-scroll-limit-x-min'> <'-ms-scroll-limit-y-min'> <'-ms-scroll-limit-x-max'> <'-ms-scroll-limit-y-max'>",description:"Gets or sets a shorthand value that sets values for the -ms-scroll-limit-x-min, -ms-scroll-limit-y-min, -ms-scroll-limit-x-max, and -ms-scroll-limit-y-max properties.",restrictions:["length"]},{name:"-ms-scroll-limit-x-max",browsers:["E","IE10"],values:[{name:"auto"}],status:"nonstandard",syntax:"auto | <length>",description:"Gets or sets a value that specifies the maximum value for the scrollLeft property.",restrictions:["length"]},{name:"-ms-scroll-limit-x-min",browsers:["E","IE10"],status:"nonstandard",syntax:"<length>",description:"Gets or sets a value that specifies the minimum value for the scrollLeft property.",restrictions:["length"]},{name:"-ms-scroll-limit-y-max",browsers:["E","IE10"],values:[{name:"auto"}],status:"nonstandard",syntax:"auto | <length>",description:"Gets or sets a value that specifies the maximum value for the scrollTop property.",restrictions:["length"]},{name:"-ms-scroll-limit-y-min",browsers:["E","IE10"],status:"nonstandard",syntax:"<length>",description:"Gets or sets a value that specifies the minimum value for the scrollTop property.",restrictions:["length"]},{name:"-ms-scroll-rails",browsers:["E","IE10"],values:[{name:"none"},{name:"railed"}],status:"nonstandard",syntax:"none | railed",description:"Gets or sets a value that indicates whether or not small motions perpendicular to the primary axis of motion will result in either changes to both the scrollTop and scrollLeft properties or a change to the primary axis (for instance, either the scrollTop or scrollLeft properties will change, but not both).",restrictions:["enum","length"]},{name:"-ms-scroll-snap-points-x",browsers:["E","IE10"],values:[{name:"snapInterval(100%, 100%)"},{name:"snapList()"}],status:"nonstandard",syntax:"snapInterval( <length-percentage>, <length-percentage> ) | snapList( <length-percentage># )",description:"Gets or sets a value that defines where snap-points will be located along the x-axis.",restrictions:["enum"]},{name:"-ms-scroll-snap-points-y",browsers:["E","IE10"],values:[{name:"snapInterval(100%, 100%)"},{name:"snapList()"}],status:"nonstandard",syntax:"snapInterval( <length-percentage>, <length-percentage> ) | snapList( <length-percentage># )",description:"Gets or sets a value that defines where snap-points will be located along the y-axis.",restrictions:["enum"]},{name:"-ms-scroll-snap-type",browsers:["E","IE10"],values:[{name:"none",description:"The visual viewport of this scroll container must ignore snap points, if any, when scrolled."},{name:"mandatory",description:"The visual viewport of this scroll container is guaranteed to rest on a snap point when there are no active scrolling operations."},{name:"proximity",description:"The visual viewport of this scroll container may come to rest on a snap point at the termination of a scroll at the discretion of the UA given the parameters of the scroll."}],status:"nonstandard",syntax:"none | proximity | mandatory",description:"Gets or sets a value that defines what type of snap-point should be used for the current element. There are two type of snap-points, with the primary difference being whether or not the user is guaranteed to always stop on a snap-point.",restrictions:["enum"]},{name:"-ms-scroll-snap-x",browsers:["E","IE10"],values:[{name:"mandatory"},{name:"none"},{name:"proximity"},{name:"snapInterval(100%, 100%)"},{name:"snapList()"}],status:"nonstandard",syntax:"<'-ms-scroll-snap-type'> <'-ms-scroll-snap-points-x'>",description:"Gets or sets a shorthand value that sets values for the -ms-scroll-snap-type and -ms-scroll-snap-points-x properties.",restrictions:["enum"]},{name:"-ms-scroll-snap-y",browsers:["E","IE10"],values:[{name:"mandatory"},{name:"none"},{name:"proximity"},{name:"snapInterval(100%, 100%)"},{name:"snapList()"}],status:"nonstandard",syntax:"<'-ms-scroll-snap-type'> <'-ms-scroll-snap-points-y'>",description:"Gets or sets a shorthand value that sets values for the -ms-scroll-snap-type and -ms-scroll-snap-points-y properties.",restrictions:["enum"]},{name:"-ms-scroll-translation",browsers:["E","IE10"],values:[{name:"none"},{name:"vertical-to-horizontal"}],status:"nonstandard",syntax:"none | vertical-to-horizontal",description:"Gets or sets a value that specifies whether vertical-to-horizontal scroll wheel translation occurs on the specified element.",restrictions:["enum"]},{name:"-ms-text-align-last",browsers:["E","IE8"],values:[{name:"auto"},{name:"center",description:"The inline contents are centered within the line box."},{name:"justify",description:"The text is justified according to the method specified by the 'text-justify' property."},{name:"left",description:"The inline contents are aligned to the left edge of the line box. In vertical text, 'left' aligns to the edge of the line box that would be the start edge for left-to-right text."},{name:"right",description:"The inline contents are aligned to the right edge of the line box. In vertical text, 'right' aligns to the edge of the line box that would be the end edge for left-to-right text."}],description:"Describes how the last line of a block or a line right before a forced line break is aligned when 'text-align' is set to 'justify'.",restrictions:["enum"]},{name:"-ms-text-autospace",browsers:["E","IE8"],values:[{name:"ideograph-alpha",description:"Creates 1/4em extra spacing between runs of ideographic letters and non-ideographic letters, such as Latin-based, Cyrillic, Greek, Arabic or Hebrew."},{name:"ideograph-numeric",description:"Creates 1/4em extra spacing between runs of ideographic letters and numeric glyphs."},{name:"ideograph-parenthesis",description:"Creates extra spacing between normal (non wide) parenthesis and ideographs."},{name:"ideograph-space",description:"Extends the width of the space character while surrounded by ideographs."},{name:"none",description:"No extra space is created."},{name:"punctuation",description:"Creates extra non-breaking spacing around punctuation as required by language-specific typographic conventions."}],status:"nonstandard",syntax:"none | ideograph-alpha | ideograph-numeric | ideograph-parenthesis | ideograph-space",description:"Determines whether or not a full-width punctuation mark character should be trimmed if it appears at the beginning of a line, so that its 'ink' lines up with the first glyph in the line above and below.",restrictions:["enum"]},{name:"-ms-text-combine-horizontal",browsers:["E","IE11"],values:[{name:"all",description:"Attempt to typeset horizontally all consecutive characters within the box such that they take up the space of a single character within the vertical line box."},{name:"digits",description:"Attempt to typeset horizontally each maximal sequence of consecutive ASCII digits (U+0030–U+0039) that has as many or fewer characters than the specified integer such that it takes up the space of a single character within the vertical line box."},{name:"none",description:"No special processing."}],description:"This property specifies the combination of multiple characters into the space of a single character.",restrictions:["enum","integer"]},{name:"-ms-text-justify",browsers:["E","IE8"],values:[{name:"auto",description:"The UA determines the justification algorithm to follow, based on a balance between performance and adequate presentation quality."},{name:"distribute",description:"Justification primarily changes spacing both at word separators and at grapheme cluster boundaries in all scripts except those in the connected and cursive groups. This value is sometimes used in e.g. Japanese, often with the 'text-align-last' property."},{name:"inter-cluster",description:"Justification primarily changes spacing at word separators and at grapheme cluster boundaries in clustered scripts. This value is typically used for Southeast Asian scripts such as Thai."},{name:"inter-ideograph",description:"Justification primarily changes spacing at word separators and at inter-graphemic boundaries in scripts that use no word spaces. This value is typically used for CJK languages."},{name:"inter-word",description:"Justification primarily changes spacing at word separators. This value is typically used for languages that separate words using spaces, like English or (sometimes) Korean."},{name:"kashida",description:"Justification primarily stretches Arabic and related scripts through the use of kashida or other calligraphic elongation."}],description:"Selects the justification algorithm used when 'text-align' is set to 'justify'. The property applies to block containers, but the UA may (but is not required to) also support it on inline elements.",restrictions:["enum"]},{name:"-ms-text-kashida-space",browsers:["E","IE10"],description:"Sets or retrieves the ratio of kashida expansion to white space expansion when justifying lines of text in the object.",restrictions:["percentage"]},{name:"-ms-text-overflow",browsers:["IE10"],values:[{name:"clip",description:"Clip inline content that overflows. Characters may be only partially rendered."},{name:"ellipsis",description:"Render an ellipsis character (U+2026) to represent clipped inline content."}],description:"Text can overflow for example when it is prevented from wrapping",restrictions:["enum"]},{name:"-ms-text-size-adjust",browsers:["E","IE10"],values:[{name:"auto",description:"Renderers must use the default size adjustment when displaying on a small device."},{name:"none",description:"Renderers must not do size adjustment when displaying on a small device."}],description:"Specifies a size adjustment for displaying text content in mobile browsers.",restrictions:["enum","percentage"]},{name:"-ms-text-underline-position",browsers:["E","IE10"],values:[{name:"alphabetic",description:"The underline is aligned with the alphabetic baseline. In this case the underline is likely to cross some descenders."},{name:"auto",description:"The user agent may use any algorithm to determine the underline's position. In horizontal line layout, the underline should be aligned as for alphabetic. In vertical line layout, if the language is set to Japanese or Korean, the underline should be aligned as for over."},{name:"over",description:"The underline is aligned with the 'top' (right in vertical writing) edge of the element's em-box. In this mode, an overline also switches sides."},{name:"under",description:"The underline is aligned with the 'bottom' (left in vertical writing) edge of the element's em-box. In this case the underline usually does not cross the descenders. This is sometimes called 'accounting' underline."}],description:"Sets the position of an underline specified on the same element: it does not affect underlines specified by ancestor elements.This property is typically used in vertical writing contexts such as in Japanese documents where it often desired to have the underline appear 'over' (to the right of) the affected run of text",restrictions:["enum"]},{name:"-ms-touch-action",browsers:["IE10"],values:[{name:"auto",description:"The element is a passive element, with several exceptions."},{name:"double-tap-zoom",description:"The element will zoom on double-tap."},{name:"manipulation",description:"The element is a manipulation-causing element."},{name:"none",description:"The element is a manipulation-blocking element."},{name:"pan-x",description:"The element permits touch-driven panning on the horizontal axis. The touch pan is performed on the nearest ancestor with horizontally scrollable content."},{name:"pan-y",description:"The element permits touch-driven panning on the vertical axis. The touch pan is performed on the nearest ancestor with vertically scrollable content."},{name:"pinch-zoom",description:"The element permits pinch-zooming. The pinch-zoom is performed on the nearest ancestor with zoomable content."}],description:"Gets or sets a value that indicates whether and how a given region can be manipulated by the user.",restrictions:["enum"]},{name:"-ms-touch-select",browsers:["E","IE10"],values:[{name:"grippers",description:"Grippers are always on."},{name:"none",description:"Grippers are always off."}],status:"nonstandard",syntax:"grippers | none",description:"Gets or sets a value that toggles the 'gripper' visual elements that enable touch text selection.",restrictions:["enum"]},{name:"-ms-transform",browsers:["IE9-9"],values:[{name:"matrix()",description:"Specifies a 2D transformation in the form of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix [a b c d e f]"},{name:"matrix3d()",description:"Specifies a 3D transformation as a 4x4 homogeneous matrix of 16 values in column-major order."},{name:"none"},{name:"rotate()",description:"Specifies a 2D rotation by the angle specified in the parameter about the origin of the element, as defined by the transform-origin property."},{name:"rotate3d()",description:"Specifies a clockwise 3D rotation by the angle specified in last parameter about the [x,y,z] direction vector described by the first 3 parameters."},{name:"rotateX('angle')",description:"Specifies a clockwise rotation by the given angle about the X axis."},{name:"rotateY('angle')",description:"Specifies a clockwise rotation by the given angle about the Y axis."},{name:"rotateZ('angle')",description:"Specifies a clockwise rotation by the given angle about the Z axis."},{name:"scale()",description:"Specifies a 2D scale operation by the [sx,sy] scaling vector described by the 2 parameters. If the second parameter is not provided, it is takes a value equal to the first."},{name:"scale3d()",description:"Specifies a 3D scale operation by the [sx,sy,sz] scaling vector described by the 3 parameters."},{name:"scaleX()",description:"Specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter."},{name:"scaleY()",description:"Specifies a scale operation using the [sy,1] scaling vector, where sy is given as the parameter."},{name:"scaleZ()",description:"Specifies a scale operation using the [1,1,sz] scaling vector, where sz is given as the parameter."},{name:"skew()",description:"Specifies a skew transformation along the X and Y axes. The first angle parameter specifies the skew on the X axis. The second angle parameter specifies the skew on the Y axis. If the second parameter is not given then a value of 0 is used for the Y angle (ie: no skew on the Y axis)."},{name:"skewX()",description:"Specifies a skew transformation along the X axis by the given angle."},{name:"skewY()",description:"Specifies a skew transformation along the Y axis by the given angle."},{name:"translate()",description:"Specifies a 2D translation by the vector [tx, ty], where tx is the first translation-value parameter and ty is the optional second translation-value parameter."},{name:"translate3d()",description:"Specifies a 3D translation by the vector [tx,ty,tz], with tx, ty and tz being the first, second and third translation-value parameters respectively."},{name:"translateX()",description:"Specifies a translation by the given amount in the X direction."},{name:"translateY()",description:"Specifies a translation by the given amount in the Y direction."},{name:"translateZ()",description:"Specifies a translation by the given amount in the Z direction. Note that percentage values are not allowed in the translateZ translation-value, and if present are evaluated as 0."}],description:"A two-dimensional transformation is applied to an element through the 'transform' property. This property contains a list of transform functions similar to those allowed by SVG.",restrictions:["enum"]},{name:"-ms-transform-origin",browsers:["IE9-9"],description:"Establishes the origin of transformation for an element.",restrictions:["position","length","percentage"]},{name:"-ms-transform-origin-x",browsers:["IE10"],description:"The x coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-ms-transform-origin-y",browsers:["IE10"],description:"The y coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-ms-transform-origin-z",browsers:["IE10"],description:"The z coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-ms-user-select",browsers:["E","IE10"],values:[{name:"element"},{name:"none"},{name:"text"}],status:"nonstandard",syntax:"none | element | text",description:"Controls the appearance of selection.",restrictions:["enum"]},{name:"-ms-word-break",browsers:["IE8"],values:[{name:"break-all",description:"Lines may break between any two grapheme clusters for non-CJK scripts."},{name:"keep-all",description:"Block characters can no longer create implied break points."},{name:"normal",description:"Breaks non-CJK scripts according to their own rules."}],description:"Specifies line break opportunities for non-CJK scripts.",restrictions:["enum"]},{name:"-ms-word-wrap",browsers:["IE8"],values:[{name:"break-word",description:"An unbreakable 'word' may be broken at an arbitrary point if there are no otherwise-acceptable break points in the line."},{name:"normal",description:"Lines may break only at allowed break points."}],description:"Specifies whether the UA may break within a word to prevent overflow when an otherwise-unbreakable string is too long to fit.",restrictions:["enum"]},{name:"-ms-wrap-flow",browsers:["E","IE10"],values:[{name:"auto",description:"For floats an exclusion is created, for all other elements an exclusion is not created."},{name:"both",description:"Inline flow content can flow on all sides of the exclusion."},{name:"clear",description:"Inline flow content can only wrap on top and bottom of the exclusion and must leave the areas to the start and end edges of the exclusion box empty."},{name:"end",description:"Inline flow content can wrap on the end side of the exclusion area but must leave the area to the start edge of the exclusion area empty."},{name:"maximum",description:"Inline flow content can wrap on the side of the exclusion with the largest available space for the given line, and must leave the other side of the exclusion empty."},{name:"minimum",description:"Inline flow content can flow around the edge of the exclusion with the smallest available space within the flow content’s containing block, and must leave the other edge of the exclusion empty."},{name:"start",description:"Inline flow content can wrap on the start edge of the exclusion area but must leave the area to end edge of the exclusion area empty."}],status:"nonstandard",syntax:"auto | both | start | end | maximum | clear",description:"An element becomes an exclusion when its 'wrap-flow' property has a computed value other than 'auto'.",restrictions:["enum"]},{name:"-ms-wrap-margin",browsers:["E","IE10"],status:"nonstandard",syntax:"<length>",description:"Gets or sets a value that is used to offset the inner wrap shape from other shapes.",restrictions:["length","percentage"]},{name:"-ms-wrap-through",browsers:["E","IE10"],values:[{name:"none",description:"The exclusion element does not inherit its parent node's wrapping context. Its descendants are only subject to exclusion shapes defined inside the element."},{name:"wrap",description:"The exclusion element inherits its parent node's wrapping context. Its descendant inline content wraps around exclusions defined outside the element."}],status:"nonstandard",syntax:"wrap | none",description:"Specifies if an element inherits its parent wrapping context. In other words if it is subject to the exclusions defined outside the element.",restrictions:["enum"]},{name:"-ms-writing-mode",browsers:["IE8"],values:[{name:"bt-lr"},{name:"bt-rl"},{name:"lr-bt"},{name:"lr-tb"},{name:"rl-bt"},{name:"rl-tb"},{name:"tb-lr"},{name:"tb-rl"}],description:"Shorthand property for both 'direction' and 'block-progression'.",restrictions:["enum"]},{name:"-ms-zoom",browsers:["IE8"],values:[{name:"normal"}],description:"Sets or retrieves the magnification scale of the object.",restrictions:["enum","integer","number","percentage"]},{name:"-ms-zoom-animation",browsers:["IE10"],values:[{name:"default"},{name:"none"}],description:"Gets or sets a value that indicates whether an animation is used when zooming.",restrictions:["enum"]},{name:"nav-down",browsers:["O9.5"],values:[{name:"auto",description:"The user agent automatically determines which element to navigate the focus to in response to directional navigational input."},{name:"current",description:"Indicates that the user agent should target the frame that the element is in."},{name:"root",description:"Indicates that the user agent should target the full window."}],description:"Provides an way to control directional focus navigation.",restrictions:["enum","identifier","string"]},{name:"nav-index",browsers:["O9.5"],values:[{name:"auto",description:"The element's sequential navigation order is assigned automatically by the user agent."}],description:"Provides an input-method-neutral way of specifying the sequential navigation order (also known as 'tabbing order').",restrictions:["number"]},{name:"nav-left",browsers:["O9.5"],values:[{name:"auto",description:"The user agent automatically determines which element to navigate the focus to in response to directional navigational input."},{name:"current",description:"Indicates that the user agent should target the frame that the element is in."},{name:"root",description:"Indicates that the user agent should target the full window."}],description:"Provides an way to control directional focus navigation.",restrictions:["enum","identifier","string"]},{name:"nav-right",browsers:["O9.5"],values:[{name:"auto",description:"The user agent automatically determines which element to navigate the focus to in response to directional navigational input."},{name:"current",description:"Indicates that the user agent should target the frame that the element is in."},{name:"root",description:"Indicates that the user agent should target the full window."}],description:"Provides an way to control directional focus navigation.",restrictions:["enum","identifier","string"]},{name:"nav-up",browsers:["O9.5"],values:[{name:"auto",description:"The user agent automatically determines which element to navigate the focus to in response to directional navigational input."},{name:"current",description:"Indicates that the user agent should target the frame that the element is in."},{name:"root",description:"Indicates that the user agent should target the full window."}],description:"Provides an way to control directional focus navigation.",restrictions:["enum","identifier","string"]},{name:"negative",browsers:["FF33"],syntax:"<symbol> <symbol>?",description:"@counter-style descriptor. Defines how to alter the representation when the counter value is negative.",restrictions:["image","identifier","string"]},{name:"-o-animation",browsers:["O12"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"infinite",description:"Causes the animation to repeat forever."},{name:"none",description:"No animation is performed"},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Shorthand property combines six of the animation properties into a single property.",restrictions:["time","enum","timing-function","identifier","number"]},{name:"-o-animation-delay",browsers:["O12"],description:"Defines when the animation will start.",restrictions:["time"]},{name:"-o-animation-direction",browsers:["O12"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Defines whether or not the animation should play in reverse on alternate cycles.",restrictions:["enum"]},{name:"-o-animation-duration",browsers:["O12"],description:"Defines the length of time that an animation takes to complete one cycle.",restrictions:["time"]},{name:"-o-animation-fill-mode",browsers:["O12"],values:[{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"none",description:"There is no change to the property value between the time the animation is applied and the time the animation begins playing or after the animation completes."}],description:"Defines what values are applied by the animation outside the time it is executing.",restrictions:["enum"]},{name:"-o-animation-iteration-count",browsers:["O12"],values:[{name:"infinite",description:"Causes the animation to repeat forever."}],description:"Defines the number of times an animation cycle is played. The default value is one, meaning the animation will play from beginning to end once.",restrictions:["number","enum"]},{name:"-o-animation-name",browsers:["O12"],values:[{name:"none",description:"No animation is performed"}],description:"Defines a list of animations that apply. Each name is used to select the keyframe at-rule that provides the property values for the animation.",restrictions:["identifier","enum"]},{name:"-o-animation-play-state",browsers:["O12"],values:[{name:"paused",description:"A running animation will be paused."},{name:"running",description:"Resume playback of a paused animation."}],description:"Defines whether the animation is running or paused.",restrictions:["enum"]},{name:"-o-animation-timing-function",browsers:["O12"],description:"Describes how the animation will progress over one cycle of its duration. See the 'transition-timing-function'.",restrictions:["timing-function"]},{name:"-o-border-image",browsers:["O11.6"],values:[{name:"auto",description:"If 'auto' is specified then the border image width is the intrinsic width or height (whichever is applicable) of the corresponding image slice. If the image does not have the required intrinsic dimension then the corresponding border-width is used instead."},{name:"fill",description:"Causes the middle part of the border-image to be preserved."},{name:"none"},{name:"repeat",description:"The image is tiled (repeated) to fill the area."},{name:"round",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the image is rescaled so that it does."},{name:"space",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the extra space is distributed around the tiles."},{name:"stretch",description:"The image is stretched to fill the area."}],description:"Shorthand property for setting 'border-image-source', 'border-image-slice', 'border-image-width', 'border-image-outset' and 'border-image-repeat'. Omitted values are set to their initial values.",restrictions:["length","percentage","number","image","enum"]},{name:"-o-object-fit",browsers:["O10.6"],values:[{name:"contain",description:"The replaced content is sized to maintain its aspect ratio while fitting within the element’s content box: its concrete object size is resolved as a contain constraint against the element's used width and height."},{name:"cover",description:"The replaced content is sized to maintain its aspect ratio while filling the element's entire content box: its concrete object size is resolved as a cover constraint against the element’s used width and height."},{name:"fill",description:"The replaced content is sized to fill the element’s content box: the object's concrete object size is the element's used width and height."},{name:"none",description:"The replaced content is not resized to fit inside the element's content box"},{name:"scale-down",description:"Size the content as if ‘none’ or ‘contain’ were specified, whichever would result in a smaller concrete object size."}],description:"Specifies how the contents of a replaced element should be scaled relative to the box established by its used height and width.",restrictions:["enum"]},{name:"-o-object-position",browsers:["O10.6"],description:"Determines the alignment of the replaced element inside its box.",restrictions:["position","length","percentage"]},{name:"-o-table-baseline",browsers:["O9.6"],description:"Determines which row of a inline-table should be used as baseline of inline-table.",restrictions:["integer"]},{name:"-o-tab-size",browsers:["O10.6"],description:"This property determines the width of the tab character (U+0009), in space characters (U+0020), when rendered.",restrictions:["integer","length"]},{name:"-o-text-overflow",browsers:["O10"],values:[{name:"clip",description:"Clip inline content that overflows. Characters may be only partially rendered."},{name:"ellipsis",description:"Render an ellipsis character (U+2026) to represent clipped inline content."}],description:"Text can overflow for example when it is prevented from wrapping",restrictions:["enum"]},{name:"-o-transform",browsers:["O10.5"],values:[{name:"matrix()",description:"Specifies a 2D transformation in the form of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix [a b c d e f]"},{name:"matrix3d()",description:"Specifies a 3D transformation as a 4x4 homogeneous matrix of 16 values in column-major order."},{name:"none"},{name:"rotate()",description:"Specifies a 2D rotation by the angle specified in the parameter about the origin of the element, as defined by the transform-origin property."},{name:"rotate3d()",description:"Specifies a clockwise 3D rotation by the angle specified in last parameter about the [x,y,z] direction vector described by the first 3 parameters."},{name:"rotateX('angle')",description:"Specifies a clockwise rotation by the given angle about the X axis."},{name:"rotateY('angle')",description:"Specifies a clockwise rotation by the given angle about the Y axis."},{name:"rotateZ('angle')",description:"Specifies a clockwise rotation by the given angle about the Z axis."},{name:"scale()",description:"Specifies a 2D scale operation by the [sx,sy] scaling vector described by the 2 parameters. If the second parameter is not provided, it is takes a value equal to the first."},{name:"scale3d()",description:"Specifies a 3D scale operation by the [sx,sy,sz] scaling vector described by the 3 parameters."},{name:"scaleX()",description:"Specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter."},{name:"scaleY()",description:"Specifies a scale operation using the [sy,1] scaling vector, where sy is given as the parameter."},{name:"scaleZ()",description:"Specifies a scale operation using the [1,1,sz] scaling vector, where sz is given as the parameter."},{name:"skew()",description:"Specifies a skew transformation along the X and Y axes. The first angle parameter specifies the skew on the X axis. The second angle parameter specifies the skew on the Y axis. If the second parameter is not given then a value of 0 is used for the Y angle (ie: no skew on the Y axis)."},{name:"skewX()",description:"Specifies a skew transformation along the X axis by the given angle."},{name:"skewY()",description:"Specifies a skew transformation along the Y axis by the given angle."},{name:"translate()",description:"Specifies a 2D translation by the vector [tx, ty], where tx is the first translation-value parameter and ty is the optional second translation-value parameter."},{name:"translate3d()",description:"Specifies a 3D translation by the vector [tx,ty,tz], with tx, ty and tz being the first, second and third translation-value parameters respectively."},{name:"translateX()",description:"Specifies a translation by the given amount in the X direction."},{name:"translateY()",description:"Specifies a translation by the given amount in the Y direction."},{name:"translateZ()",description:"Specifies a translation by the given amount in the Z direction. Note that percentage values are not allowed in the translateZ translation-value, and if present are evaluated as 0."}],description:"A two-dimensional transformation is applied to an element through the 'transform' property. This property contains a list of transform functions similar to those allowed by SVG.",restrictions:["enum"]},{name:"-o-transform-origin",browsers:["O10.5"],description:"Establishes the origin of transformation for an element.",restrictions:["positon","length","percentage"]},{name:"-o-transition",browsers:["O11.5"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Shorthand property combines four of the transition properties into a single property.",restrictions:["time","property","timing-function","enum"]},{name:"-o-transition-delay",browsers:["O11.5"],description:"Defines when the transition will start. It allows a transition to begin execution some period of time from when it is applied.",restrictions:["time"]},{name:"-o-transition-duration",browsers:["O11.5"],description:"Specifies how long the transition from the old value to the new value should take.",restrictions:["time"]},{name:"-o-transition-property",browsers:["O11.5"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Specifies the name of the CSS property to which the transition is applied.",restrictions:["property"]},{name:"-o-transition-timing-function",browsers:["O11.5"],description:"Describes how the intermediate values used during a transition will be calculated.",restrictions:["timing-function"]},{name:"offset-block-end",browsers:["FF41"],values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well."}],description:"Logical 'bottom'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"offset-block-start",browsers:["FF41"],values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well."}],description:"Logical 'top'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"offset-inline-end",browsers:["FF41"],values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well."}],description:"Logical 'right'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"offset-inline-start",browsers:["FF41"],values:[{name:"auto",description:"For non-replaced elements, the effect of this value depends on which of related properties have the value 'auto' as well."}],description:"Logical 'left'. Mapping depends on the parent element’s 'writing-mode', 'direction', and 'text-orientation'.",restrictions:["length","percentage"]},{name:"pad",browsers:["FF33"],syntax:"<integer> && <symbol>",description:"@counter-style descriptor. Specifies a “fixed-width” counter style, where representations shorter than the pad value are padded with a particular <symbol>",restrictions:["integer","image","string","identifier"]},{name:"prefix",browsers:["FF33"],syntax:"<symbol>",description:"@counter-style descriptor. Specifies a <symbol> that is prepended to the marker representation.",restrictions:["image","string","identifier"]},{name:"range",browsers:["FF33"],values:[{name:"auto",description:"The range depends on the counter system."},{name:"infinite",description:"If used as the first value in a range, it represents negative infinity; if used as the second value, it represents positive infinity."}],syntax:"[ [ <integer> | infinite ]{2} ]# | auto",description:"@counter-style descriptor. Defines the ranges over which the counter style is defined.",restrictions:["integer","enum"]},{name:"ruby-align",browsers:["FF38"],values:[{name:"auto",browsers:["FF38"],description:"The user agent determines how the ruby contents are aligned. This is the initial value."},{name:"center",description:"The ruby content is centered within its box."},{name:"distribute-letter",browsers:["FF38"],description:"If the width of the ruby text is smaller than that of the base, then the ruby text contents are evenly distributed across the width of the base, with the first and last ruby text glyphs lining up with the corresponding first and last base glyphs. If the width of the ruby text is at least the width of the base, then the letters of the base are evenly distributed across the width of the ruby text."},{name:"distribute-space",browsers:["FF38"],description:"If the width of the ruby text is smaller than that of the base, then the ruby text contents are evenly distributed across the width of the base, with a certain amount of white space preceding the first and following the last character in the ruby text. That amount of white space is normally equal to half the amount of inter-character space of the ruby text."},{name:"left",description:"The ruby text content is aligned with the start edge of the base."},{name:"line-edge",browsers:["FF38"],description:"If the ruby text is not adjacent to a line edge, it is aligned as in 'auto'. If it is adjacent to a line edge, then it is still aligned as in auto, but the side of the ruby text that touches the end of the line is lined up with the corresponding edge of the base."},{name:"right",browsers:["FF38"],description:"The ruby text content is aligned with the end edge of the base."},{name:"start",browsers:["FF38"],description:"The ruby text content is aligned with the start edge of the base."},{name:"space-between",browsers:["FF38"],description:"The ruby content expands as defined for normal text justification (as defined by 'text-justify'),"},{name:"space-around",browsers:["FF38"],description:"As for 'space-between' except that there exists an extra justification opportunities whose space is distributed half before and half after the ruby content."}],status:"experimental",syntax:"start | center | space-between | space-around",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/ruby-align"}],description:"Specifies how text is distributed within the various ruby boxes when their contents do not exactly fill their respective boxes.",restrictions:["enum"]},{name:"ruby-overhang",browsers:["FF10","IE5"],values:[{name:"auto",description:"The ruby text can overhang text adjacent to the base on either side. This is the initial value."},{name:"end",description:"The ruby text can overhang the text that follows it."},{name:"none",description:"The ruby text cannot overhang any text adjacent to its base, only its own base."},{name:"start",description:"The ruby text can overhang the text that precedes it."}],description:"Determines whether, and on which side, ruby text is allowed to partially overhang any adjacent text in addition to its own base, when the ruby text is wider than the ruby base.",restrictions:["enum"]},{name:"ruby-position",browsers:["E12","FF38"],values:[{name:"after",description:"The ruby text appears after the base. This is a relatively rare setting used in ideographic East Asian writing systems, most easily found in educational text."},{name:"before",description:"The ruby text appears before the base. This is the most common setting used in ideographic East Asian writing systems."},{name:"inline"},{name:"right",description:"The ruby text appears on the right of the base. Unlike 'before' and 'after', this value is not relative to the text flow direction."}],status:"experimental",syntax:"over | under | inter-character",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/ruby-position"}],description:"Used by the parent of elements with display: ruby-text to control the position of the ruby text with respect to its base.",restrictions:["enum"]},{name:"ruby-span",browsers:["FF10"],values:[{name:"attr(x)",description:"The value of attribute 'x' is a string value. The string value is evaluated as a <number> to determine the number of ruby base elements to be spanned by the annotation element."},{name:"none",description:"No spanning. The computed value is '1'."}],description:"Determines whether, and on which side, ruby text is allowed to partially overhang any adjacent text in addition to its own base, when the ruby text is wider than the ruby base.",restrictions:["enum"]},{name:"scrollbar-3dlight-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-3dlight-color"}],description:"Determines the color of the top and left edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"scrollbar-arrow-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-arrow-color"}],description:"Determines the color of the arrow elements of a scroll arrow.",restrictions:["color"]},{name:"scrollbar-base-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-base-color"}],description:"Determines the color of the main elements of a scroll bar, which include the scroll box, track, and scroll arrows.",restrictions:["color"]},{name:"scrollbar-darkshadow-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-darkshadow-color"}],description:"Determines the color of the gutter of a scroll bar.",restrictions:["color"]},{name:"scrollbar-face-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-face-color"}],description:"Determines the color of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"scrollbar-highlight-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-highlight-color"}],description:"Determines the color of the top and left edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"scrollbar-shadow-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-shadow-color"}],description:"Determines the color of the bottom and right edges of the scroll box and scroll arrows of a scroll bar.",restrictions:["color"]},{name:"scrollbar-track-color",browsers:["IE5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-track-color"}],description:"Determines the color of the track element of a scroll bar.",restrictions:["color"]},{name:"suffix",browsers:["FF33"],syntax:"<symbol>",description:"@counter-style descriptor. Specifies a <symbol> that is appended to the marker representation.",restrictions:["image","string","identifier"]},{name:"system",browsers:["FF33"],values:[{name:"additive",description:"Represents “sign-value” numbering systems, which, rather than using reusing digits in different positions to change their value, define additional digits with much larger values, so that the value of the number can be obtained by adding all the digits together."},{name:"alphabetic",description:'Interprets the list of counter symbols as digits to an alphabetic numbering system, similar to the default lower-alpha counter style, which wraps from "a", "b", "c", to "aa", "ab", "ac".'},{name:"cyclic",description:"Cycles repeatedly through its provided symbols, looping back to the beginning when it reaches the end of the list."},{name:"extends",description:"Use the algorithm of another counter style, but alter other aspects."},{name:"fixed",description:"Runs through its list of counter symbols once, then falls back."},{name:"numeric",description:"interprets the list of counter symbols as digits to a \"place-value\" numbering system, similar to the default 'decimal' counter style."},{name:"symbolic",description:"Cycles repeatedly through its provided symbols, doubling, tripling, etc. the symbols on each successive pass through the list."}],syntax:"cyclic | numeric | alphabetic | symbolic | additive | [ fixed <integer>? ] | [ extends <counter-style-name> ]",description:"@counter-style descriptor. Specifies which algorithm will be used to construct the counter’s representation based on the counter value.",restrictions:["enum","integer"]},{name:"symbols",browsers:["FF33"],syntax:"<symbol>+",description:"@counter-style descriptor. Specifies the symbols used by the marker-construction algorithm specified by the system descriptor.",restrictions:["image","string","identifier"]},{name:"-webkit-animation",browsers:["C","S5"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"infinite",description:"Causes the animation to repeat forever."},{name:"none",description:"No animation is performed"},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Shorthand property combines six of the animation properties into a single property.",restrictions:["time","enum","timing-function","identifier","number"]},{name:"-webkit-animation-delay",browsers:["C","S5"],description:"Defines when the animation will start.",restrictions:["time"]},{name:"-webkit-animation-direction",browsers:["C","S5"],values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],description:"Defines whether or not the animation should play in reverse on alternate cycles.",restrictions:["enum"]},{name:"-webkit-animation-duration",browsers:["C","S5"],description:"Defines the length of time that an animation takes to complete one cycle.",restrictions:["time"]},{name:"-webkit-animation-fill-mode",browsers:["C","S5"],values:[{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"none",description:"There is no change to the property value between the time the animation is applied and the time the animation begins playing or after the animation completes."}],description:"Defines what values are applied by the animation outside the time it is executing.",restrictions:["enum"]},{name:"-webkit-animation-iteration-count",browsers:["C","S5"],values:[{name:"infinite",description:"Causes the animation to repeat forever."}],description:"Defines the number of times an animation cycle is played. The default value is one, meaning the animation will play from beginning to end once.",restrictions:["number","enum"]},{name:"-webkit-animation-name",browsers:["C","S5"],values:[{name:"none",description:"No animation is performed"}],description:"Defines a list of animations that apply. Each name is used to select the keyframe at-rule that provides the property values for the animation.",restrictions:["identifier","enum"]},{name:"-webkit-animation-play-state",browsers:["C","S5"],values:[{name:"paused",description:"A running animation will be paused."},{name:"running",description:"Resume playback of a paused animation."}],description:"Defines whether the animation is running or paused.",restrictions:["enum"]},{name:"-webkit-animation-timing-function",browsers:["C","S5"],description:"Describes how the animation will progress over one cycle of its duration. See the 'transition-timing-function'.",restrictions:["timing-function"]},{name:"-webkit-appearance",browsers:["C","S3"],values:[{name:"button"},{name:"button-bevel"},{name:"caps-lock-indicator"},{name:"caret"},{name:"checkbox"},{name:"default-button"},{name:"listbox"},{name:"listitem"},{name:"media-fullscreen-button"},{name:"media-mute-button"},{name:"media-play-button"},{name:"media-seek-back-button"},{name:"media-seek-forward-button"},{name:"media-slider"},{name:"media-sliderthumb"},{name:"menulist"},{name:"menulist-button"},{name:"menulist-text"},{name:"menulist-textfield"},{name:"none"},{name:"push-button"},{name:"radio"},{name:"scrollbarbutton-down"},{name:"scrollbarbutton-left"},{name:"scrollbarbutton-right"},{name:"scrollbarbutton-up"},{name:"scrollbargripper-horizontal"},{name:"scrollbargripper-vertical"},{name:"scrollbarthumb-horizontal"},{name:"scrollbarthumb-vertical"},{name:"scrollbartrack-horizontal"},{name:"scrollbartrack-vertical"},{name:"searchfield"},{name:"searchfield-cancel-button"},{name:"searchfield-decoration"},{name:"searchfield-results-button"},{name:"searchfield-results-decoration"},{name:"slider-horizontal"},{name:"sliderthumb-horizontal"},{name:"sliderthumb-vertical"},{name:"slider-vertical"},{name:"square-button"},{name:"textarea"},{name:"textfield"}],status:"nonstandard",syntax:"none | button | button-bevel | caret | checkbox | default-button | inner-spin-button | listbox | listitem | media-controls-background | media-controls-fullscreen-background | media-current-time-display | media-enter-fullscreen-button | media-exit-fullscreen-button | media-fullscreen-button | media-mute-button | media-overlay-play-button | media-play-button | media-seek-back-button | media-seek-forward-button | media-slider | media-sliderthumb | media-time-remaining-display | media-toggle-closed-captions-button | media-volume-slider | media-volume-slider-container | media-volume-sliderthumb | menulist | menulist-button | menulist-text | menulist-textfield | meter | progress-bar | progress-bar-value | push-button | radio | searchfield | searchfield-cancel-button | searchfield-decoration | searchfield-results-button | searchfield-results-decoration | slider-horizontal | slider-vertical | sliderthumb-horizontal | sliderthumb-vertical | square-button | textarea | textfield",description:"Changes the appearance of buttons and other controls to resemble native controls.",restrictions:["enum"]},{name:"-webkit-backdrop-filter",browsers:["S9"],values:[{name:"none",description:"No filter effects are applied."},{name:"blur()",description:"Applies a Gaussian blur to the input image."},{name:"brightness()",description:"Applies a linear multiplier to input image, making it appear more or less bright."},{name:"contrast()",description:"Adjusts the contrast of the input."},{name:"drop-shadow()",description:"Applies a drop shadow effect to the input image."},{name:"grayscale()",description:"Converts the input image to grayscale."},{name:"hue-rotate()",description:"Applies a hue rotation on the input image. "},{name:"invert()",description:"Inverts the samples in the input image."},{name:"opacity()",description:"Applies transparency to the samples in the input image."},{name:"saturate()",description:"Saturates the input image."},{name:"sepia()",description:"Converts the input image to sepia."},{name:"url()",description:"A filter reference to a <filter> element."}],description:"Applies a filter effect where the first filter in the list takes the element's background image as the input image.",restrictions:["enum","url"]},{name:"-webkit-backface-visibility",browsers:["C","S5"],values:[{name:"hidden"},{name:"visible"}],description:"Determines whether or not the 'back' side of a transformed element is visible when facing the viewer. With an identity transform, the front side of an element faces the viewer.",restrictions:["enum"]},{name:"-webkit-background-clip",browsers:["C","S3"],description:"Determines the background painting area.",restrictions:["box"]},{name:"-webkit-background-composite",browsers:["C","S3"],values:[{name:"border"},{name:"padding"}],restrictions:["enum"]},{name:"-webkit-background-origin",browsers:["C","S3"],description:"For elements rendered as a single box, specifies the background positioning area. For elements rendered as multiple boxes (e.g., inline boxes on several lines, boxes on several pages) specifies which boxes 'box-decoration-break' operates on to determine the background positioning area(s).",restrictions:["box"]},{name:"-webkit-border-image",browsers:["C","S5"],values:[{name:"auto",description:"If 'auto' is specified then the border image width is the intrinsic width or height (whichever is applicable) of the corresponding image slice. If the image does not have the required intrinsic dimension then the corresponding border-width is used instead."},{name:"fill",description:"Causes the middle part of the border-image to be preserved."},{name:"none"},{name:"repeat",description:"The image is tiled (repeated) to fill the area."},{name:"round",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the image is rescaled so that it does."},{name:"space",description:"The image is tiled (repeated) to fill the area. If it does not fill the area with a whole number of tiles, the extra space is distributed around the tiles."},{name:"stretch",description:"The image is stretched to fill the area."},{name:"url()"}],description:"Shorthand property for setting 'border-image-source', 'border-image-slice', 'border-image-width', 'border-image-outset' and 'border-image-repeat'. Omitted values are set to their initial values.",restrictions:["length","percentage","number","url","enum"]},{name:"-webkit-box-align",browsers:["C","S3"],values:[{name:"baseline",description:"If this box orientation is inline-axis or horizontal, all children are placed with their baselines aligned, and extra space placed before or after as necessary. For block flows, the baseline of the first non-empty line box located within the element is used. For tables, the baseline of the first cell is used."},{name:"center",description:"Any extra space is divided evenly, with half placed above the child and the other half placed after the child."},{name:"end",description:"For normal direction boxes, the bottom edge of each child is placed along the bottom of the box. Extra space is placed above the element. For reverse direction boxes, the top edge of each child is placed along the top of the box. Extra space is placed below the element."},{name:"start",description:"For normal direction boxes, the top edge of each child is placed along the top of the box. Extra space is placed below the element. For reverse direction boxes, the bottom edge of each child is placed along the bottom of the box. Extra space is placed above the element."},{name:"stretch",description:"The height of each child is adjusted to that of the containing block."}],description:"Specifies the alignment of nested elements within an outer flexible box element.",restrictions:["enum"]},{name:"-webkit-box-direction",browsers:["C","S3"],values:[{name:"normal",description:"A box with a computed value of horizontal for box-orient displays its children from left to right. A box with a computed value of vertical displays its children from top to bottom."},{name:"reverse",description:"A box with a computed value of horizontal for box-orient displays its children from right to left. A box with a computed value of vertical displays its children from bottom to top."}],description:"In webkit applications, -webkit-box-direction specifies whether a box lays out its contents normally (from the top or left edge), or in reverse (from the bottom or right edge).",restrictions:["enum"]},{name:"-webkit-box-flex",browsers:["C","S3"],description:"Specifies an element's flexibility.",restrictions:["number"]},{name:"-webkit-box-flex-group",browsers:["C","S3"],description:"Flexible elements can be assigned to flex groups using the 'box-flex-group' property.",restrictions:["integer"]},{name:"-webkit-box-ordinal-group",browsers:["C","S3"],description:"Indicates the ordinal group the element belongs to. Elements with a lower ordinal group are displayed before those with a higher ordinal group.",restrictions:["integer"]},{name:"-webkit-box-orient",browsers:["C","S3"],values:[{name:"block-axis",description:"Elements are oriented along the box's axis."},{name:"horizontal",description:"The box displays its children from left to right in a horizontal line."},{name:"inline-axis",description:"Elements are oriented vertically."},{name:"vertical",description:"The box displays its children from stacked from top to bottom vertically."}],description:"In webkit applications, -webkit-box-orient specifies whether a box lays out its contents horizontally or vertically.",restrictions:["enum"]},{name:"-webkit-box-pack",browsers:["C","S3"],values:[{name:"center",description:"The extra space is divided evenly, with half placed before the first child and the other half placed after the last child."},{name:"end",description:"For normal direction boxes, the right edge of the last child is placed at the right side, with all extra space placed before the first child. For reverse direction boxes, the left edge of the first child is placed at the left side, with all extra space placed after the last child."},{name:"justify",description:"The space is divided evenly in-between each child, with none of the extra space placed before the first child or after the last child. If there is only one child, treat the pack value as if it were start."},{name:"start",description:"For normal direction boxes, the left edge of the first child is placed at the left side, with all extra space placed after the last child. For reverse direction boxes, the right edge of the last child is placed at the right side, with all extra space placed before the first child."}],description:"Specifies alignment of child elements within the current element in the direction of orientation.",restrictions:["enum"]},{name:"-webkit-box-reflect",browsers:["S4","C4","O15"],values:[{name:"above",description:"The reflection appears above the border box."},{name:"below",description:"The reflection appears below the border box."},{name:"left",description:"The reflection appears to the left of the border box."},{name:"right",description:"The reflection appears to the right of the border box."}],status:"nonstandard",syntax:"[ above | below | right | left ]? <length>? <image>?",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-box-reflect"}],description:"Defines a reflection of a border box."},{name:"-webkit-box-sizing",browsers:["C","S3"],values:[{name:"border-box",description:"The specified width and height (and respective min/max properties) on this element determine the border box of the element."},{name:"content-box",description:"Behavior of width and height as specified by CSS2.1. The specified width and height (and respective min/max properties) apply to the width and height respectively of the content box of the element."}],description:"Box Model addition in CSS3.",restrictions:["enum"]},{name:"-webkit-break-after",browsers:["S7"],values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the generated box."},{name:"avoid",description:"Avoid a page/column break before/after the generated box."},{name:"avoid-column",description:"Avoid a column break before/after the generated box."},{name:"avoid-page",description:"Avoid a page break before/after the generated box."},{name:"avoid-region"},{name:"column",description:"Always force a column break before/after the generated box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the generated box."},{name:"region"},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],description:"Describes the page/column break behavior before the generated box.",restrictions:["enum"]},{name:"-webkit-break-before",browsers:["S7"],values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the generated box."},{name:"avoid",description:"Avoid a page/column break before/after the generated box."},{name:"avoid-column",description:"Avoid a column break before/after the generated box."},{name:"avoid-page",description:"Avoid a page break before/after the generated box."},{name:"avoid-region"},{name:"column",description:"Always force a column break before/after the generated box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the generated box."},{name:"region"},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],description:"Describes the page/column break behavior before the generated box.",restrictions:["enum"]},{name:"-webkit-break-inside",browsers:["S7"],values:[{name:"auto",description:"Neither force nor forbid a page/column break inside the generated box."},{name:"avoid",description:"Avoid a page/column break inside the generated box."},{name:"avoid-column",description:"Avoid a column break inside the generated box."},{name:"avoid-page",description:"Avoid a page break inside the generated box."},{name:"avoid-region"}],description:"Describes the page/column break behavior inside the generated box.",restrictions:["enum"]},{name:"-webkit-column-break-after",browsers:["C","S3"],values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the generated box."},{name:"avoid",description:"Avoid a page/column break before/after the generated box."},{name:"avoid-column",description:"Avoid a column break before/after the generated box."},{name:"avoid-page",description:"Avoid a page break before/after the generated box."},{name:"avoid-region"},{name:"column",description:"Always force a column break before/after the generated box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the generated box."},{name:"region"},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],description:"Describes the page/column break behavior before the generated box.",restrictions:["enum"]},{name:"-webkit-column-break-before",browsers:["C","S3"],values:[{name:"always",description:"Always force a page break before/after the generated box."},{name:"auto",description:"Neither force nor forbid a page/column break before/after the generated box."},{name:"avoid",description:"Avoid a page/column break before/after the generated box."},{name:"avoid-column",description:"Avoid a column break before/after the generated box."},{name:"avoid-page",description:"Avoid a page break before/after the generated box."},{name:"avoid-region"},{name:"column",description:"Always force a column break before/after the generated box."},{name:"left",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a left page."},{name:"page",description:"Always force a page break before/after the generated box."},{name:"region"},{name:"right",description:"Force one or two page breaks before/after the generated box so that the next page is formatted as a right page."}],description:"Describes the page/column break behavior before the generated box.",restrictions:["enum"]},{name:"-webkit-column-break-inside",browsers:["C","S3"],values:[{name:"auto",description:"Neither force nor forbid a page/column break inside the generated box."},{name:"avoid",description:"Avoid a page/column break inside the generated box."},{name:"avoid-column",description:"Avoid a column break inside the generated box."},{name:"avoid-page",description:"Avoid a page break inside the generated box."},{name:"avoid-region"}],description:"Describes the page/column break behavior inside the generated box.",restrictions:["enum"]},{name:"-webkit-column-count",browsers:["C","S3"],values:[{name:"auto",description:"Determines the number of columns by the 'column-width' property and the element width."}],description:"Describes the optimal number of columns into which the content of the element will be flowed.",restrictions:["integer"]},{name:"-webkit-column-gap",browsers:["C","S3"],values:[{name:"normal",description:"User agent specific and typically equivalent to 1em."}],description:"Sets the gap between columns. If there is a column rule between columns, it will appear in the middle of the gap.",restrictions:["length"]},{name:"-webkit-column-rule",browsers:["C","S3"],description:"This property is a shorthand for setting 'column-rule-width', 'column-rule-style', and 'column-rule-color' at the same place in the style sheet. Omitted values are set to their initial values.",restrictions:["length","line-width","line-style","color"]},{name:"-webkit-column-rule-color",browsers:["C","S3"],description:"Sets the color of the column rule",restrictions:["color"]},{name:"-webkit-column-rule-style",browsers:["C","S3"],description:"Sets the style of the rule between columns of an element.",restrictions:["line-style"]},{name:"-webkit-column-rule-width",browsers:["C","S3"],description:"Sets the width of the rule between columns. Negative values are not allowed.",restrictions:["length","line-width"]},{name:"-webkit-columns",browsers:["C","S3"],values:[{name:"auto",description:"The width depends on the values of other properties."}],description:"A shorthand property which sets both 'column-width' and 'column-count'.",restrictions:["length","integer"]},{name:"-webkit-column-span",browsers:["C","S3"],values:[{name:"all",description:"The element spans across all columns. Content in the normal flow that appears before the element is automatically balanced across all columns before the element appear."},{name:"none",description:"The element does not span multiple columns."}],description:"Describes the page/column break behavior after the generated box.",restrictions:["enum"]},{name:"-webkit-column-width",browsers:["C","S3"],values:[{name:"auto",description:"The width depends on the values of other properties."}],description:"This property describes the width of columns in multicol elements.",restrictions:["length"]},{name:"-webkit-filter",browsers:["C18","O15","S6"],values:[{name:"none",description:"No filter effects are applied."},{name:"blur()",description:"Applies a Gaussian blur to the input image."},{name:"brightness()",description:"Applies a linear multiplier to input image, making it appear more or less bright."},{name:"contrast()",description:"Adjusts the contrast of the input."},{name:"drop-shadow()",description:"Applies a drop shadow effect to the input image."},{name:"grayscale()",description:"Converts the input image to grayscale."},{name:"hue-rotate()",description:"Applies a hue rotation on the input image. "},{name:"invert()",description:"Inverts the samples in the input image."},{name:"opacity()",description:"Applies transparency to the samples in the input image."},{name:"saturate()",description:"Saturates the input image."},{name:"sepia()",description:"Converts the input image to sepia."},{name:"url()",description:"A filter reference to a <filter> element."}],description:"Processes an element’s rendering before it is displayed in the document, by applying one or more filter effects.",restrictions:["enum","url"]},{name:"-webkit-flow-from",browsers:["S6.1"],values:[{name:"none",description:"The block container is not a CSS Region."}],description:"Makes a block container a region and associates it with a named flow.",restrictions:["identifier"]},{name:"-webkit-flow-into",browsers:["S6.1"],values:[{name:"none",description:"The element is not moved to a named flow and normal CSS processing takes place."}],description:"Places an element or its contents into a named flow.",restrictions:["identifier"]},{name:"-webkit-font-feature-settings",browsers:["C16"],values:[{name:'"c2cs"'},{name:'"dlig"'},{name:'"kern"'},{name:'"liga"'},{name:'"lnum"'},{name:'"onum"'},{name:'"smcp"'},{name:'"swsh"'},{name:'"tnum"'},{name:"normal",description:"No change in glyph substitution or positioning occurs."},{name:"off"},{name:"on"}],description:"This property provides low-level control over OpenType font features. It is intended as a way of providing access to font features that are not widely used but are needed for a particular use case.",restrictions:["string","integer"]},{name:"-webkit-hyphens",browsers:["S5.1"],values:[{name:"auto",description:"Conditional hyphenation characters inside a word, if present, take priority over automatic resources when determining hyphenation points within the word."},{name:"manual",description:"Words are only broken at line breaks where there are characters inside the word that suggest line break opportunities"},{name:"none",description:"Words are not broken at line breaks, even if characters inside the word suggest line break points."}],description:"Controls whether hyphenation is allowed to create more break opportunities within a line of text.",restrictions:["enum"]},{name:"-webkit-line-break",browsers:["C","S3"],values:[{name:"after-white-space"},{name:"normal"}],description:"Specifies line-breaking rules for CJK (Chinese, Japanese, and Korean) text."},{name:"-webkit-margin-bottom-collapse",browsers:["C","S3"],values:[{name:"collapse"},{name:"discard"},{name:"separate"}],restrictions:["enum"]},{name:"-webkit-margin-collapse",browsers:["C","S3"],values:[{name:"collapse"},{name:"discard"},{name:"separate"}],restrictions:["enum"]},{name:"-webkit-margin-start",browsers:["C","S3"],values:[{name:"auto"}],restrictions:["percentage","length"]},{name:"-webkit-margin-top-collapse",browsers:["C","S3"],values:[{name:"collapse"},{name:"discard"},{name:"separate"}],restrictions:["enum"]},{name:"-webkit-mask-clip",browsers:["C","O15","S4"],status:"nonstandard",syntax:"[ <box> | border | padding | content | text ]#",description:"Determines the mask painting area, which determines the area that is affected by the mask.",restrictions:["box"]},{name:"-webkit-mask-image",browsers:["C","O15","S4"],values:[{name:"none",description:"Counts as a transparent black image layer."},{name:"url()",description:"Reference to a <mask element or to a CSS image."}],status:"nonstandard",syntax:"<mask-reference>#",description:"Sets the mask layer image of an element.",restrictions:["url","image","enum"]},{name:"-webkit-mask-origin",browsers:["C","O15","S4"],status:"nonstandard",syntax:"[ <box> | border | padding | content ]#",description:"Specifies the mask positioning area.",restrictions:["box"]},{name:"-webkit-mask-repeat",browsers:["C","O15","S4"],status:"nonstandard",syntax:"<repeat-style>#",description:"Specifies how mask layer images are tiled after they have been sized and positioned.",restrictions:["repeat"]},{name:"-webkit-mask-size",browsers:["C","O15","S4"],values:[{name:"auto",description:"Resolved by using the image’s intrinsic ratio and the size of the other dimension, or failing that, using the image’s intrinsic size, or failing that, treating it as 100%."},{name:"contain",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the largest size such that both its width and its height can fit inside the background positioning area."},{name:"cover",description:"Scale the image, while preserving its intrinsic aspect ratio (if any), to the smallest size such that both its width and its height can completely cover the background positioning area."}],status:"nonstandard",syntax:"<bg-size>#",description:"Specifies the size of the mask layer images.",restrictions:["length","percentage","enum"]},{name:"-webkit-nbsp-mode",browsers:["C","S3"],values:[{name:"normal"},{name:"space"}],description:"Defines the behavior of nonbreaking spaces within text."},{name:"-webkit-overflow-scrolling",browsers:["C","S5"],values:[{name:"auto"},{name:"touch"}],status:"nonstandard",syntax:"auto | touch",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-overflow-scrolling"}],description:"Specifies whether to use native-style scrolling in an overflow:scroll element."},{name:"-webkit-padding-start",browsers:["C","S3"],restrictions:["percentage","length"]},{name:"-webkit-perspective",browsers:["C","S4"],values:[{name:"none",description:"No perspective transform is applied."}],description:"Applies the same transform as the perspective(<number>) transform function, except that it applies only to the positioned or transformed children of the element, not to the transform on the element itself.",restrictions:["length"]},{name:"-webkit-perspective-origin",browsers:["C","S4"],description:"Establishes the origin for the perspective property. It effectively sets the X and Y position at which the viewer appears to be looking at the children of the element.",restrictions:["position","percentage","length"]},{name:"-webkit-region-fragment",browsers:["S7"],values:[{name:"auto",description:"Content flows as it would in a regular content box."},{name:"break",description:"If the content fits within the CSS Region, then this property has no effect."}],description:"The 'region-fragment' property controls the behavior of the last region associated with a named flow.",restrictions:["enum"]},{name:"-webkit-tap-highlight-color",browsers:["E","C","S3.1"],status:"nonstandard",syntax:"<color>",restrictions:["color"]},{name:"-webkit-text-fill-color",browsers:["E12","FF49","S3","C1","O15"],status:"nonstandard",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-text-fill-color"}],restrictions:["color"]},{name:"-webkit-text-size-adjust",browsers:["E","C","S3"],values:[{name:"auto",description:"Renderers must use the default size adjustment when displaying on a small device."},{name:"none",description:"Renderers must not do size adjustment when displaying on a small device."}],description:"Specifies a size adjustment for displaying text content in mobile browsers.",restrictions:["percentage"]},{name:"-webkit-text-stroke",browsers:["E15","FF49","S3","C4","O15"],status:"nonstandard",syntax:"<length> || <color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke"}],restrictions:["length","line-width","color","percentage"]},{name:"-webkit-text-stroke-color",browsers:["E15","FF49","S3","C1","O15"],status:"nonstandard",syntax:"<color>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke-color"}],restrictions:["color"]},{name:"-webkit-text-stroke-width",browsers:["E15","FF49","S3","C1","O15"],status:"nonstandard",syntax:"<length>",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke-width"}],restrictions:["length","line-width","percentage"]},{name:"-webkit-touch-callout",browsers:["S3"],values:[{name:"none"}],status:"nonstandard",syntax:"default | none",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-touch-callout"}],restrictions:["enum"]},{name:"-webkit-transform",browsers:["C","O12","S3.1"],values:[{name:"matrix()",description:"Specifies a 2D transformation in the form of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix [a b c d e f]"},{name:"matrix3d()",description:"Specifies a 3D transformation as a 4x4 homogeneous matrix of 16 values in column-major order."},{name:"none"},{name:"perspective()",description:"Specifies a perspective projection matrix."},{name:"rotate()",description:"Specifies a 2D rotation by the angle specified in the parameter about the origin of the element, as defined by the transform-origin property."},{name:"rotate3d()",description:"Specifies a clockwise 3D rotation by the angle specified in last parameter about the [x,y,z] direction vector described by the first 3 parameters."},{name:"rotateX('angle')",description:"Specifies a clockwise rotation by the given angle about the X axis."},{name:"rotateY('angle')",description:"Specifies a clockwise rotation by the given angle about the Y axis."},{name:"rotateZ('angle')",description:"Specifies a clockwise rotation by the given angle about the Z axis."},{name:"scale()",description:"Specifies a 2D scale operation by the [sx,sy] scaling vector described by the 2 parameters. If the second parameter is not provided, it is takes a value equal to the first."},{name:"scale3d()",description:"Specifies a 3D scale operation by the [sx,sy,sz] scaling vector described by the 3 parameters."},{name:"scaleX()",description:"Specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter."},{name:"scaleY()",description:"Specifies a scale operation using the [sy,1] scaling vector, where sy is given as the parameter."},{name:"scaleZ()",description:"Specifies a scale operation using the [1,1,sz] scaling vector, where sz is given as the parameter."},{name:"skew()",description:"Specifies a skew transformation along the X and Y axes. The first angle parameter specifies the skew on the X axis. The second angle parameter specifies the skew on the Y axis. If the second parameter is not given then a value of 0 is used for the Y angle (ie: no skew on the Y axis)."},{name:"skewX()",description:"Specifies a skew transformation along the X axis by the given angle."},{name:"skewY()",description:"Specifies a skew transformation along the Y axis by the given angle."},{name:"translate()",description:"Specifies a 2D translation by the vector [tx, ty], where tx is the first translation-value parameter and ty is the optional second translation-value parameter."},{name:"translate3d()",description:"Specifies a 3D translation by the vector [tx,ty,tz], with tx, ty and tz being the first, second and third translation-value parameters respectively."},{name:"translateX()",description:"Specifies a translation by the given amount in the X direction."},{name:"translateY()",description:"Specifies a translation by the given amount in the Y direction."},{name:"translateZ()",description:"Specifies a translation by the given amount in the Z direction. Note that percentage values are not allowed in the translateZ translation-value, and if present are evaluated as 0."}],description:"A two-dimensional transformation is applied to an element through the 'transform' property. This property contains a list of transform functions similar to those allowed by SVG.",restrictions:["enum"]},{name:"-webkit-transform-origin",browsers:["C","O15","S3.1"],description:"Establishes the origin of transformation for an element.",restrictions:["position","length","percentage"]},{name:"-webkit-transform-origin-x",browsers:["C","S3.1"],description:"The x coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-webkit-transform-origin-y",browsers:["C","S3.1"],description:"The y coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-webkit-transform-origin-z",browsers:["C","S4"],description:"The z coordinate of the origin for transforms applied to an element with respect to its border box.",restrictions:["length","percentage"]},{name:"-webkit-transform-style",browsers:["C","S4"],values:[{name:"flat",description:"All children of this element are rendered flattened into the 2D plane of the element."}],description:"Defines how nested elements are rendered in 3D space.",restrictions:["enum"]},{name:"-webkit-transition",browsers:["C","O12","S5"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Shorthand property combines four of the transition properties into a single property.",restrictions:["time","property","timing-function","enum"]},{name:"-webkit-transition-delay",browsers:["C","O12","S5"],description:"Defines when the transition will start. It allows a transition to begin execution some period of time from when it is applied.",restrictions:["time"]},{name:"-webkit-transition-duration",browsers:["C","O12","S5"],description:"Specifies how long the transition from the old value to the new value should take.",restrictions:["time"]},{name:"-webkit-transition-property",browsers:["C","O12","S5"],values:[{name:"all",description:"Every property that is able to undergo a transition will do so."},{name:"none",description:"No property will transition."}],description:"Specifies the name of the CSS property to which the transition is applied.",restrictions:["property"]},{name:"-webkit-transition-timing-function",browsers:["C","O12","S5"],description:"Describes how the intermediate values used during a transition will be calculated.",restrictions:["timing-function"]},{name:"-webkit-user-drag",browsers:["S3"],values:[{name:"auto"},{name:"element"},{name:"none"}],restrictions:["enum"]},{name:"-webkit-user-modify",browsers:["C","S3"],values:[{name:"read-only"},{name:"read-write"},{name:"read-write-plaintext-only"}],status:"nonstandard",syntax:"read-only | read-write | read-write-plaintext-only",description:"Determines whether a user can edit the content of an element.",restrictions:["enum"]},{name:"-webkit-user-select",browsers:["C","S3"],values:[{name:"auto"},{name:"none"},{name:"text"}],description:"Controls the appearance of selection.",restrictions:["enum"]},{name:"-ms-ime-align",status:"nonstandard",syntax:"auto | after",description:"Aligns the Input Method Editor (IME) candidate window box relative to the element on which the IME composition is active."},{name:"-moz-binding",status:"nonstandard",syntax:"<url> | none",browsers:["FF1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-binding"}],description:"The -moz-binding CSS property is used by Mozilla-based applications to attach an XBL binding to a DOM element."},{name:"-moz-context-properties",status:"nonstandard",syntax:"none | [ fill | fill-opacity | stroke | stroke-opacity ]#",browsers:["FF55"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-context-properties"}],description:"If you reference an SVG image in a webpage (such as with the <img> element or as a background image), the SVG image can coordinate with the embedding element (its context) to have the image adopt property values set on the embedding element. To do this the embedding element needs to list the properties that are to be made available to the image by listing them as values of the -moz-context-properties property, and the image needs to opt in to using those properties by using values such as the context-fill value.\n\nThis feature is available since Firefox 55, but is only currently supported with SVG images loaded via chrome:// or resource:// URLs. To experiment with the feature in SVG on the Web it is necessary to set the svg.context-properties.content.enabled pref to true."},{name:"-moz-float-edge",status:"nonstandard",syntax:"border-box | content-box | margin-box | padding-box",description:"The non-standard -moz-float-edge CSS property specifies whether the height and width properties of the element include the margin, border, or padding thickness."},{name:"-moz-force-broken-image-icon",status:"nonstandard",syntax:"<integer>",description:"The -moz-force-broken-image-icon extended CSS property can be used to force the broken image icon to be shown even when a broken image has an alt attribute."},{name:"-moz-image-region",status:"nonstandard",syntax:"<shape> | auto",browsers:["FF1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-image-region"}],description:"For certain XUL elements and pseudo-elements that use an image from the list-style-image property, this property specifies a region of the image that is used in place of the whole image. This allows elements to use different pieces of the same image to improve performance."},{name:"-moz-orient",status:"nonstandard",syntax:"inline | block | horizontal | vertical",browsers:["FF6"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-orient"}],description:"The -moz-orient CSS property specifies the orientation of the element to which it's applied."},{name:"-moz-outline-radius",status:"nonstandard",syntax:"<outline-radius>{1,4} [ / <outline-radius>{1,4} ]?",browsers:["FF1.5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-outline-radius"}],description:"In Mozilla applications like Firefox, the -moz-outline-radius CSS property can be used to give an element's outline rounded corners."},{name:"-moz-outline-radius-bottomleft",status:"nonstandard",syntax:"<outline-radius>",description:"In Mozilla applications, the -moz-outline-radius-bottomleft CSS property can be used to round the bottom-left corner of an element's outline."},{name:"-moz-outline-radius-bottomright",status:"nonstandard",syntax:"<outline-radius>",description:"In Mozilla applications, the -moz-outline-radius-bottomright CSS property can be used to round the bottom-right corner of an element's outline."},{name:"-moz-outline-radius-topleft",status:"nonstandard",syntax:"<outline-radius>",description:"In Mozilla applications, the -moz-outline-radius-topleft CSS property can be used to round the top-left corner of an element's outline."},{name:"-moz-outline-radius-topright",status:"nonstandard",syntax:"<outline-radius>",description:"In Mozilla applications, the -moz-outline-radius-topright CSS property can be used to round the top-right corner of an element's outline."},{name:"-moz-stack-sizing",status:"nonstandard",syntax:"ignore | stretch-to-fit",description:"-moz-stack-sizing is an extended CSS property. Normally, a stack will change its size so that all of its child elements are completely visible. For example, moving a child of the stack far to the right will widen the stack so the child remains visible."},{name:"-moz-text-blink",status:"nonstandard",syntax:"none | blink",browsers:["FF6"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-text-blink"}],description:"The -moz-text-blink non-standard Mozilla CSS extension specifies the blink mode."},{name:"-moz-user-input",status:"nonstandard",syntax:"auto | none | enabled | disabled",browsers:["FF1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-user-input"}],description:"In Mozilla applications, -moz-user-input determines if an element will accept user input."},{name:"-moz-user-modify",status:"nonstandard",syntax:"read-only | read-write | write-only",description:"The -moz-user-modify property has no effect. It was originally planned to determine whether or not the content of an element can be edited by a user."},{name:"-moz-window-dragging",status:"nonstandard",syntax:"drag | no-drag",description:"The -moz-window-dragging CSS property specifies whether a window is draggable or not. It only works in Chrome code, and only on Mac OS X."},{name:"-moz-window-shadow",status:"nonstandard",syntax:"default | menu | tooltip | sheet | none",browsers:["FF3.5"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-moz-window-shadow"}],description:"The -moz-window-shadow CSS property specifies whether a window will have a shadow. It only works on Mac OS X."},{name:"-webkit-border-before",status:"nonstandard",syntax:"<'border-width'> || <'border-style'> || <'color'>",browsers:["S5.1","C8","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-border-before"}],description:"The -webkit-border-before CSS property is a shorthand property for setting the individual logical block start border property values in a single place in the style sheet."},{name:"-webkit-border-before-color",status:"nonstandard",syntax:"<'color'>",description:"The -webkit-border-before-color CSS property sets the color of the individual logical block start border in a single place in the style sheet."},{name:"-webkit-border-before-style",status:"nonstandard",syntax:"<'border-style'>",description:"The -webkit-border-before-style CSS property sets the style of the individual logical block start border in a single place in the style sheet."},{name:"-webkit-border-before-width",status:"nonstandard",syntax:"<'border-width'>",description:"The -webkit-border-before-width CSS property sets the width of the individual logical block start border in a single place in the style sheet."},{name:"-webkit-line-clamp",syntax:"none | <integer>",browsers:["E17","FF68","S5","C6","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-line-clamp"}],description:"The -webkit-line-clamp CSS property allows limiting of the contents of a block container to the specified number of lines."},{name:"-webkit-mask",status:"nonstandard",syntax:"[ <mask-reference> || <position> [ / <bg-size> ]? || <repeat-style> || [ <box> | border | padding | content | text ] || [ <box> | border | padding | content ] ]#",description:"The mask CSS property alters the visibility of an element by either partially or fully hiding it. This is accomplished by either masking or clipping the image at specific points."},{name:"-webkit-mask-attachment",status:"nonstandard",syntax:"<attachment>#",browsers:["S4","C1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-attachment"}],description:"If a -webkit-mask-image is specified, -webkit-mask-attachment determines whether the mask image's position is fixed within the viewport, or scrolls along with its containing block."},{name:"-webkit-mask-composite",status:"nonstandard",syntax:"<composite-style>#",browsers:["E18","FF53","S3.2","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-composite"}],description:"The -webkit-mask-composite property specifies the manner in which multiple mask images applied to the same element are composited with one another. Mask images are composited in the opposite order that they are declared with the -webkit-mask-image property."},{name:"-webkit-mask-position",status:"nonstandard",syntax:"<position>#",description:"The mask-position CSS property sets the initial position, relative to the mask position layer defined by mask-origin, for each defined mask image."},{name:"-webkit-mask-position-x",status:"nonstandard",syntax:"[ <length-percentage> | left | center | right ]#",browsers:["E18","FF49","S3.2","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-position-x"}],description:"The -webkit-mask-position-x CSS property sets the initial horizontal position of a mask image."},{name:"-webkit-mask-position-y",status:"nonstandard",syntax:"[ <length-percentage> | top | center | bottom ]#",browsers:["E18","FF49","S3.2","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-position-y"}],description:"The -webkit-mask-position-y CSS property sets the initial vertical position of a mask image."},{name:"-webkit-mask-repeat-x",status:"nonstandard",syntax:"repeat | no-repeat | space | round",browsers:["E18","S5","C3","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-repeat-x"}],description:"The -webkit-mask-repeat-x property specifies whether and how a mask image is repeated (tiled) horizontally."},{name:"-webkit-mask-repeat-y",status:"nonstandard",syntax:"repeat | no-repeat | space | round",browsers:["E18","S5","C3","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/-webkit-mask-repeat-y"}],description:"The -webkit-mask-repeat-y property specifies whether and how a mask image is repeated (tiled) vertically."},{name:"appearance",status:"experimental",syntax:"none | auto | button | textfield | <compat>",browsers:["E12","FF1","S3","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/appearance"}],description:"Changes the appearance of buttons and other controls to resemble native controls."},{name:"aspect-ratio",status:"experimental",syntax:"auto | <ratio>",description:""},{name:"azimuth",status:"obsolete",syntax:"<angle> | [ [ left-side | far-left | left | center-left | center | center-right | right | far-right | right-side ] || behind ] | leftwards | rightwards",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/azimuth"}],description:"In combination with elevation, the azimuth CSS property enables different audio sources to be positioned spatially for aural presentation. This is important in that it provides a natural way to tell several voices apart, as each can be positioned to originate at a different location on the sound stage. Stereo output produce a lateral sound stage, while binaural headphones and multi-speaker setups allow for a fully three-dimensional stage."},{name:"border-end-end-radius",syntax:"<length-percentage>{1,2}",browsers:["FF66"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-end-end-radius"}],description:"The border-end-end-radius CSS property defines a logical border radius on an element, which maps to a physical border radius that depends on on the element's writing-mode, direction, and text-orientation."},{name:"border-end-start-radius",syntax:"<length-percentage>{1,2}",browsers:["FF66"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-end-start-radius"}],description:"The border-end-start-radius CSS property defines a logical border radius on an element, which maps to a physical border radius depending on the element's writing-mode, direction, and text-orientation."},{name:"border-start-end-radius",syntax:"<length-percentage>{1,2}",browsers:["FF66"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-start-end-radius"}],description:"The border-start-end-radius CSS property defines a logical border radius on an element, which maps to a physical border radius depending on the element's writing-mode, direction, and text-orientation."},{name:"border-start-start-radius",syntax:"<length-percentage>{1,2}",browsers:["FF66"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/border-start-start-radius"}],description:"The border-start-start-radius CSS property defines a logical border radius on an element, which maps to a physical border radius that depends on the element's writing-mode, direction, and text-orientation."},{name:"box-align",status:"nonstandard",syntax:"start | center | end | baseline | stretch",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-align"}],description:"The box-align CSS property specifies how an element aligns its contents across its layout in a perpendicular direction. The effect of the property is only visible if there is extra space in the box."},{name:"box-direction",status:"nonstandard",syntax:"normal | reverse | inherit",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-direction"}],description:"The box-direction CSS property specifies whether a box lays out its contents normally (from the top or left edge), or in reverse (from the bottom or right edge)."},{name:"box-flex",status:"nonstandard",syntax:"<number>",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-flex"}],description:"The -moz-box-flex and -webkit-box-flex CSS properties specify how a -moz-box or -webkit-box grows to fill the box that contains it, in the direction of the containing box's layout."},{name:"box-flex-group",status:"nonstandard",syntax:"<integer>",browsers:["S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-flex-group"}],description:"The box-flex-group CSS property assigns the flexbox's child elements to a flex group."},{name:"box-lines",status:"nonstandard",syntax:"single | multiple",browsers:["S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-lines"}],description:"The box-lines CSS property determines whether the box may have a single or multiple lines (rows for horizontally oriented boxes, columns for vertically oriented boxes)."},{name:"box-ordinal-group",status:"nonstandard",syntax:"<integer>",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-ordinal-group"}],description:"The box-ordinal-group CSS property assigns the flexbox's child elements to an ordinal group."},{name:"box-orient",status:"nonstandard",syntax:"horizontal | vertical | inline-axis | block-axis | inherit",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-orient"}],description:"The box-orient CSS property specifies whether an element lays out its contents horizontally or vertically."},{name:"box-pack",status:"nonstandard",syntax:"start | center | end | justify",browsers:["E12","FF1","S3","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/box-pack"}],description:"The -moz-box-pack and -webkit-box-pack CSS properties specify how a -moz-box or -webkit-box packs its contents in the direction of its layout. The effect of this is only visible if there is extra space in the box."},{name:"color-adjust",syntax:"economy | exact",browsers:["FF48","S6","C49","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/color-adjust"}],description:"The color-adjust property is a non-standard CSS extension that can be used to force printing of background colors and images in browsers based on the WebKit engine."},{name:"counter-set",syntax:"[ <custom-ident> <integer>? ]+ | none",browsers:["FF68"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/counter-set"}],description:"The counter-set CSS property sets a CSS counter to a given value. It manipulates the value of existing counters, and will only create new counters if there isn't already a counter of the given name on the element."},{name:"hanging-punctuation",syntax:"none | [ first || [ force-end | allow-end ] || last ]",browsers:["S10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/hanging-punctuation"}],description:"The hanging-punctuation CSS property specifies whether a punctuation mark should hang at the start or end of a line of text. Hanging punctuation may be placed outside the line box."},{name:"initial-letter",status:"experimental",syntax:"normal | [ <number> <integer>? ]",browsers:["S9"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/initial-letter"}],description:"The initial-letter CSS property specifies styling for dropped, raised, and sunken initial letters."},{name:"initial-letter-align",status:"experimental",syntax:"[ auto | alphabetic | hanging | ideographic ]",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/initial-letter-align"}],description:"The initial-letter-align CSS property specifies the alignment of initial letters within a paragraph."},{name:"line-clamp",status:"experimental",syntax:"none | <integer>",description:"The line-clamp property allows limiting the contents of a block container to the specified number of lines; remaining content is fragmented away and neither rendered nor measured. Optionally, it also allows inserting content into the last line box to indicate the continuity of truncated/interrupted content."},{name:"line-height-step",status:"experimental",syntax:"<length>",browsers:["C60","O47"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/line-height-step"}],description:"The line-height-step CSS property defines the step units for line box heights. When the step unit is positive, line box heights are rounded up to the closest multiple of the unit. Negative values are invalid."},{name:"mask-border",status:"experimental",syntax:"<'mask-border-source'> || <'mask-border-slice'> [ / <'mask-border-width'>? [ / <'mask-border-outset'> ]? ]? || <'mask-border-repeat'> || <'mask-border-mode'>",description:"The mask-border CSS property lets you create a mask along the edge of an element's border.\n\nThis property is a shorthand for mask-border-source, mask-border-slice, mask-border-width, mask-border-outset, mask-border-repeat, and mask-border-mode. As with all shorthand properties, any omitted sub-values will be set to their initial value."},{name:"mask-border-mode",status:"experimental",syntax:"luminance | alpha",description:"The mask-border-mode CSS property specifies the blending mode used in a mask border."},{name:"mask-border-outset",status:"experimental",syntax:"[ <length> | <number> ]{1,4}",description:"The mask-border-outset CSS property specifies the distance by which an element's mask border is set out from its border box."},{name:"mask-border-repeat",status:"experimental",syntax:"[ stretch | repeat | round | space ]{1,2}",description:"The mask-border-repeat CSS property defines how the edge regions of a source image are adjusted to fit the dimensions of an element's mask border."},{name:"mask-border-slice",status:"experimental",syntax:"<number-percentage>{1,4} fill?",description:"The mask-border-slice CSS property divides the image specified by mask-border-source into regions. These regions are used to form the components of an element's mask border."},{name:"mask-border-source",status:"experimental",syntax:"none | <image>",description:"The mask-border-source CSS property specifies the source image used to create an element's mask border.\n\nThe mask-border-slice property is used to divide the source image into regions, which are then dynamically applied to the final mask border."},{name:"mask-border-width",status:"experimental",syntax:"[ <length-percentage> | <number> | auto ]{1,4}",description:"The mask-border-width CSS property specifies the width of an element's mask border."},{name:"mask-clip",syntax:"[ <geometry-box> | no-clip ]#",browsers:["FF53","S4","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-clip"}],description:"The mask-clip CSS property determines the area, which is affected by a mask. The painted content of an element must be restricted to this area."},{name:"mask-composite",syntax:"<compositing-operator>#",browsers:["E18","FF53"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/mask-composite"}],description:"The mask-composite CSS property represents a compositing operation used on the current mask layer with the mask layers below it."},{name:"max-lines",status:"experimental",syntax:"none | <integer>",description:"The max-liens property forces a break after a set number of lines"},{name:"overflow-block",status:"experimental",syntax:"visible | hidden | clip | scroll | auto",browsers:["FF69"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-block"}],description:"The overflow-block CSS media feature can be used to test how the output device handles content that overflows the initial containing block along the block axis."},{name:"overflow-clip-box",status:"nonstandard",syntax:"padding-box | content-box",browsers:["FF29"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Mozilla/CSS/overflow-clip-box"}],description:"The overflow-clip-box CSS property specifies relative to which box the clipping happens when there is an overflow. It is short hand for the overflow-clip-box-inline and overflow-clip-box-block properties."},{name:"overflow-inline",status:"experimental",syntax:"visible | hidden | clip | scroll | auto",browsers:["FF69"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overflow-inline"}],description:"The overflow-inline CSS media feature can be used to test how the output device handles content that overflows the initial containing block along the inline axis."},{name:"overscroll-behavior",status:"nonstandard",syntax:"[ contain | none | auto ]{1,2}",browsers:["E18","FF59","C63","O50"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior"}],description:"The overscroll-behavior CSS property is shorthand for the overscroll-behavior-x and overscroll-behavior-y properties, which allow you to control the browser's scroll overflow behavior — what happens when the boundary of a scrolling area is reached."},{name:"overscroll-behavior-x",status:"nonstandard",syntax:"contain | none | auto",browsers:["E18","FF59","C63","O50"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-x"}],description:"The overscroll-behavior-x CSS property is allows you to control the browser's scroll overflow behavior — what happens when the boundary of a scrolling area is reached — in the x axis direction."},{name:"overscroll-behavior-y",status:"nonstandard",syntax:"contain | none | auto",browsers:["E18","FF59","C63","O50"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-y"}],description:"The overscroll-behavior-y CSS property is allows you to control the browser's scroll overflow behavior — what happens when the boundary of a scrolling area is reached — in the y axis direction."},{name:"ruby-merge",status:"experimental",syntax:"separate | collapse | auto",description:"This property controls how ruby annotation boxes should be rendered when there are more than one in a ruby container box: whether each pair should be kept separate, the annotations should be collapsed and rendered as a group, or the separation should be determined based on the space available."},{name:"scrollbar-color",syntax:"auto | dark | light | <color>{2}",browsers:["FF64"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-color"}],description:"The scrollbar-color CSS property sets the color of the scrollbar track and thumb."},{name:"scrollbar-width",syntax:"auto | thin | none",browsers:["FF64"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scrollbar-width"}],description:"The scrollbar-width property allows the author to set the maximum thickness of an element’s scrollbars when they are shown. "},{name:"scroll-margin",syntax:"<length>{1,4}",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin"}],description:"The scroll-margin property is a shorthand property which sets all of the scroll-margin longhands, assigning values much like the margin property does for the margin-* longhands."},{name:"scroll-margin-block",syntax:"<length>{1,2}",browsers:["FF68","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block"}],description:"The scroll-margin-block property is a shorthand property which sets the scroll-margin longhands in the block dimension."},{name:"scroll-margin-block-start",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block-start"}],description:"The scroll-margin-block-start property defines the margin of the scroll snap area at the start of the block dimension that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-block-end",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block-end"}],description:"The scroll-margin-block-end property defines the margin of the scroll snap area at the end of the block dimension that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-bottom",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-bottom"}],description:"The scroll-margin-bottom property defines the bottom margin of the scroll snap area that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-inline",syntax:"<length>{1,2}",browsers:["FF68"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline"}],description:"The scroll-margin-inline property is a shorthand property which sets the scroll-margin longhands in the inline dimension."},{name:"scroll-margin-inline-start",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline-start"}],description:"The scroll-margin-inline-start property defines the margin of the scroll snap area at the start of the inline dimension that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-inline-end",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline-end"}],description:"The scroll-margin-inline-end property defines the margin of the scroll snap area at the end of the inline dimension that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-left",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-left"}],description:"The scroll-margin-left property defines the left margin of the scroll snap area that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-right",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-right"}],description:"The scroll-margin-right property defines the right margin of the scroll snap area that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-margin-top",syntax:"<length>",browsers:["FF68","S11","C69","O56"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-margin-top"}],description:"The scroll-margin-top property defines the top margin of the scroll snap area that is used for snapping this box to the snapport. The scroll snap area is determined by taking the transformed border box, finding its rectangular bounding box (axis-aligned in the scroll container’s coordinate space), then adding the specified outsets."},{name:"scroll-snap-type-x",status:"obsolete",syntax:"none | mandatory | proximity",browsers:["FF39","S9"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type-x"}],description:"The scroll-snap-type-x CSS property defines how strictly snap points are enforced on the horizontal axis of the scroll container in case there is one.\n\nSpecifying any precise animations or physics used to enforce those snap points is not covered by this property but instead left up to the user agent."},{name:"scroll-snap-type-y",status:"obsolete",syntax:"none | mandatory | proximity",browsers:["FF39"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type-y"}],description:"The scroll-snap-type-y CSS property defines how strictly snap points are enforced on the vertical axis of the scroll container in case there is one.\n\nSpecifying any precise animations or physics used to enforce those snap points is not covered by this property but instead left up to the user agent."},{name:"text-decoration-thickness",syntax:"auto | from-font | <length>",browsers:["FF70","S12.1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-decoration-thickness"}],description:"The text-decoration-thickness CSS property sets the thickness, or width, of the decoration line that is used on text in an element, such as a line-through, underline, or overline."},{name:"text-emphasis",syntax:"<'text-emphasis-style'> || <'text-emphasis-color'>",browsers:["FF46","S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-emphasis"}],description:"The text-emphasis CSS property is a shorthand property for setting text-emphasis-style and text-emphasis-color in one declaration. This property will apply the specified emphasis mark to each character of the element's text, except separator characters, like spaces, and control characters."},{name:"text-emphasis-color",syntax:"<color>",browsers:["FF46","S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-emphasis-color"}],description:"The text-emphasis-color CSS property defines the color used to draw emphasis marks on text being rendered in the HTML document. This value can also be set and reset using the text-emphasis shorthand."},{name:"text-emphasis-position",syntax:"[ over | under ] && [ right | left ]",browsers:["FF46","S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-emphasis-position"}],description:"The text-emphasis-position CSS property describes where emphasis marks are drawn at. The effect of emphasis marks on the line height is the same as for ruby text: if there isn't enough place, the line height is increased."},{name:"text-emphasis-style",syntax:"none | [ [ filled | open ] || [ dot | circle | double-circle | triangle | sesame ] ] | <string>",browsers:["FF46","S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-emphasis-style"}],description:"The text-emphasis-style CSS property defines the type of emphasis used. It can also be set, and reset, using the text-emphasis shorthand."},{name:"text-underline-offset",syntax:"auto | from-font | <length>",browsers:["FF70","S12.1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/text-underline-offset"}],description:"The text-underline-offset CSS property sets the offset distance of an underline text decoration line (applied using text-decoration) from its original position."},{name:"speak-as",syntax:"auto | bullets | numbers | words | spell-out | <counter-style-name>",description:"The speak-as descriptor specifies how a counter symbol constructed with a given @counter-style will be represented in the spoken form. For example, an author can specify a counter symbol to be either spoken as its numerical value or just represented with an audio cue."},{name:"bleed",status:"experimental",syntax:"auto | <length>",description:"The bleed CSS at-rule descriptor, used with the @page at-rule, specifies the extent of the page bleed area outside the page box. This property only has effect if crop marks are enabled using the marks property."},{name:"marks",status:"experimental",syntax:"none | [ crop || cross ]",description:"The marks CSS at-rule descriptor, used with the @page at-rule, adds crop and/or cross marks to the presentation of the document. Crop marks indicate where the page should be cut. Cross marks are used to align sheets."}],atDirectives:[{name:"@charset",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@charset"}],description:"Defines character set of the document."},{name:"@counter-style",browsers:["FF33"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@counter-style"}],description:"Defines a custom counter style."},{name:"@font-face",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@font-face"}],description:"Allows for linking to fonts that are automatically activated when needed. This permits authors to work around the limitation of 'web-safe' fonts, allowing for consistent rendering independent of the fonts available in a given user's environment."},{name:"@font-feature-values",browsers:["FF34","S9.1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@font-feature-values"}],description:"Defines named values for the indices used to select alternate glyphs for a given font family."},{name:"@import",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@import"}],description:"Includes content of another file."},{name:"@keyframes",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@keyframes"}],description:"Defines set of animation key frames."},{name:"@media",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@media"}],description:"Defines a stylesheet for a particular media type."},{name:"@-moz-document",browsers:["FF1.8"],description:"Gecko-specific at-rule that restricts the style rules contained within it based on the URL of the document."},{name:"@-moz-keyframes",browsers:["FF5"],description:"Defines set of animation key frames."},{name:"@-ms-viewport",browsers:["E","IE10"],description:"Specifies the size, zoom factor, and orientation of the viewport."},{name:"@namespace",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@namespace"}],description:"Declares a prefix and associates it with a namespace name."},{name:"@-o-keyframes",browsers:["O12"],description:"Defines set of animation key frames."},{name:"@-o-viewport",browsers:["O11"],description:"Specifies the size, zoom factor, and orientation of the viewport."},{name:"@page",browsers:["E12","FF19","C2","IE8","O6"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@page"}],description:"Directive defines various page parameters."},{name:"@supports",browsers:["E12","FF22","S9","C28","O12.1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/@supports"}],description:"A conditional group rule whose condition tests whether the user agent supports CSS property:value pairs."},{name:"@-webkit-keyframes",browsers:["C","S4"],description:"Defines set of animation key frames."}],pseudoClasses:[{name:":active",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:active"}],description:"Applies while an element is being activated by the user. For example, between the times the user presses the mouse button and releases it."},{name:":any-link",browsers:["FF50","S9","C65","O52"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:any-link"}],description:"Represents an element that acts as the source anchor of a hyperlink. Applies to both visited and unvisited links."},{name:":checked",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:checked"}],description:"Radio and checkbox elements can be toggled by the user. Some menu items are 'checked' when the user selects them. When such elements are toggled 'on' the :checked pseudo-class applies."},{name:":corner-present",browsers:["C","S5"],description:"Non-standard. Indicates whether or not a scrollbar corner is present."},{name:":decrement",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Indicates whether or not the button or track piece will decrement the view’s position when used."},{name:":default",browsers:["FF4","S5","C10","O10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:default"}],description:"Applies to the one or more UI elements that are the default among a set of similar elements. Typically applies to context menu items, buttons, and select lists/menus."},{name:":disabled",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:disabled"}],description:"Represents user interface elements that are in a disabled state; such elements have a corresponding enabled state."},{name:":double-button",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Applies when both buttons are displayed together at the same end of the scrollbar."},{name:":empty",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:empty"}],description:"Represents an element that has no children at all."},{name:":enabled",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:enabled"}],description:"Represents user interface elements that are in an enabled state; such elements have a corresponding disabled state."},{name:":end",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Indicates whether the object is placed after the thumb."},{name:":first",browsers:["E12","S6","C18","IE8","O9.2"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:first"}],description:"When printing double-sided documents, the page boxes on left and right pages may be different. This can be expressed through CSS pseudo-classes defined in the page context."},{name:":first-child",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:first-child"}],description:"Same as :nth-child(1). Represents an element that is the first child of some other element."},{name:":first-of-type",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:first-of-type"}],description:"Same as :nth-of-type(1). Represents an element that is the first sibling of its type in the list of children of its parent element."},{name:":focus",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:focus"}],description:"Applies while an element has the focus (accepts keyboard or mouse events, or other forms of input)."},{name:":fullscreen",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:fullscreen"}],description:"Matches any element that has its fullscreen flag set."},{name:":future",browsers:["C","O16","S6"],description:"Represents any element that is defined to occur entirely after a :current element."},{name:":horizontal",browsers:["C","S5"],description:"Non-standard. Applies to any scrollbar pieces that have a horizontal orientation."},{name:":host",browsers:["FF63","S10","C54","O41"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:host"}],description:"When evaluated in the context of a shadow tree, matches the shadow tree’s host element."},{name:":host()",browsers:["C35","O22"],description:"When evaluated in the context of a shadow tree, it matches the shadow tree’s host element if the host element, in its normal context, matches the selector argument."},{name:":host-context()",browsers:["C35","O22"],description:"Tests whether there is an ancestor, outside the shadow tree, which matches a particular selector."},{name:":hover",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:hover"}],description:"Applies while the user designates an element with a pointing device, but does not necessarily activate it. For example, a visual user agent could apply this pseudo-class when the cursor (mouse pointer) hovers over a box generated by the element."},{name:":increment",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Indicates whether or not the button or track piece will increment the view’s position when used."},{name:":indeterminate",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:indeterminate"}],description:"Applies to UI elements whose value is in an indeterminate state."},{name:":in-range",browsers:["E13","FF29","S5.1","C10","O11"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:in-range"}],description:"Used in conjunction with the min and max attributes, whether on a range input, a number field, or any other types that accept those attributes."},{name:":invalid",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:invalid"}],description:"An element is :valid or :invalid when it is, respectively, valid or invalid with respect to data validity semantics defined by a different specification."},{name:":lang()",browsers:["E","C","FF1","IE8","O8","S3"],description:"Represents an element that is in language specified."},{name:":last-child",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:last-child"}],description:"Same as :nth-last-child(1). Represents an element that is the last child of some other element."},{name:":last-of-type",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:last-of-type"}],description:"Same as :nth-last-of-type(1). Represents an element that is the last sibling of its type in the list of children of its parent element."},{name:":left",browsers:["E12","S5.1","C6","IE8","O9.2"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:left"}],description:"When printing double-sided documents, the page boxes on left and right pages may be different. This can be expressed through CSS pseudo-classes defined in the page context."},{name:":link",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:link"}],description:"Applies to links that have not yet been visited."},{name:":matches()",browsers:["S9"],description:"Takes a selector list as its argument. It represents an element that is represented by its argument."},{name:":-moz-any()",browsers:["FF4"],description:"Represents an element that is represented by the selector list passed as its argument. Standardized as :matches()."},{name:":-moz-any-link",browsers:["FF1"],description:"Represents an element that acts as the source anchor of a hyperlink. Applies to both visited and unvisited links."},{name:":-moz-broken",browsers:["FF3"],description:"Non-standard. Matches elements representing broken images."},{name:":-moz-drag-over",browsers:["FF1"],description:"Non-standard. Matches elements when a drag-over event applies to it."},{name:":-moz-first-node",browsers:["FF1"],description:"Non-standard. Represents an element that is the first child node of some other element."},{name:":-moz-focusring",browsers:["FF4"],description:"Non-standard. Matches an element that has focus and focus ring drawing is enabled in the browser."},{name:":-moz-full-screen",browsers:["FF9"],description:"Matches any element that has its fullscreen flag set. Standardized as :fullscreen."},{name:":-moz-last-node",browsers:["FF1"],description:"Non-standard. Represents an element that is the last child node of some other element."},{name:":-moz-loading",browsers:["FF3"],description:"Non-standard. Matches elements, such as images, that haven’t started loading yet."},{name:":-moz-only-whitespace",browsers:["FF1"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:-moz-only-whitespace"}],description:"The same as :empty, except that it additionally matches elements that only contain code points affected by whitespace processing. Standardized as :blank."},{name:":-moz-placeholder",browsers:["FF4"],description:"Deprecated. Represents placeholder text in an input field. Use ::-moz-placeholder for Firefox 19+."},{name:":-moz-submit-invalid",browsers:["FF4"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:-moz-submit-invalid"}],description:"Non-standard. Represents any submit button when the contents of the associated form are not valid."},{name:":-moz-suppressed",browsers:["FF3"],description:"Non-standard. Matches elements representing images that have been blocked from loading."},{name:":-moz-ui-invalid",browsers:["FF4"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:-moz-ui-invalid"}],description:"Non-standard. Represents any validated form element whose value isn't valid "},{name:":-moz-ui-valid",browsers:["FF4"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:-moz-ui-valid"}],description:"Non-standard. Represents any validated form element whose value is valid "},{name:":-moz-user-disabled",browsers:["FF3"],description:"Non-standard. Matches elements representing images that have been disabled due to the user’s preferences."},{name:":-moz-window-inactive",browsers:["FF4"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:-moz-window-inactive"}],description:"Non-standard. Matches elements in an inactive window."},{name:":-ms-fullscreen",browsers:["IE11"],description:"Matches any element that has its fullscreen flag set."},{name:":-ms-input-placeholder",browsers:["IE10"],description:"Represents placeholder text in an input field. Note: for Edge use the pseudo-element ::-ms-input-placeholder. Standardized as ::placeholder."},{name:":-ms-keyboard-active",browsers:["IE10"],description:"Windows Store apps only. Applies one or more styles to an element when it has focus and the user presses the space bar."},{name:":-ms-lang()",browsers:["E","IE10"],description:"Represents an element that is in the language specified. Accepts a comma separated list of language tokens."},{name:":no-button",browsers:["C","S5"],description:"Non-standard. Applies to track pieces. Applies when there is no button at that end of the track."},{name:":not()",browsers:["E","C","FF1","IE9","O9.5","S2"],description:"The negation pseudo-class, :not(X), is a functional notation taking a simple selector (excluding the negation pseudo-class itself) as an argument. It represents an element that is not represented by its argument."},{name:":nth-child()",browsers:["E","C","FF3.5","IE9","O9.5","S3.1"],description:"Represents an element that has an+b-1 siblings before it in the document tree, for any positive integer or zero value of n, and has a parent element."},{name:":nth-last-child()",browsers:["E","C","FF3.5","IE9","O9.5","S3.1"],description:"Represents an element that has an+b-1 siblings after it in the document tree, for any positive integer or zero value of n, and has a parent element."},{name:":nth-last-of-type()",browsers:["E","C","FF3.5","IE9","O9.5","S3.1"],description:"Represents an element that has an+b-1 siblings with the same expanded element name after it in the document tree, for any zero or positive integer value of n, and has a parent element."},{name:":nth-of-type()",browsers:["E","C","FF3.5","IE9","O9.5","S3.1"],description:"Represents an element that has an+b-1 siblings with the same expanded element name before it in the document tree, for any zero or positive integer value of n, and has a parent element."},{name:":only-child",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:only-child"}],description:"Represents an element that has a parent element and whose parent element has no other element children. Same as :first-child:last-child or :nth-child(1):nth-last-child(1), but with a lower specificity."},{name:":only-of-type",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:only-of-type"}],description:"Matches every element that is the only child of its type, of its parent. Same as :first-of-type:last-of-type or :nth-of-type(1):nth-last-of-type(1), but with a lower specificity."},{name:":optional",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:optional"}],description:"A form element is :required or :optional if a value for it is, respectively, required or optional before the form it belongs to is submitted. Elements that are not form elements are neither required nor optional."},{name:":out-of-range",browsers:["E13","FF29","S5.1","C10","O11"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:out-of-range"}],description:"Used in conjunction with the min and max attributes, whether on a range input, a number field, or any other types that accept those attributes."},{name:":past",browsers:["C","O16","S6"],description:"Represents any element that is defined to occur entirely prior to a :current element."},{name:":read-only",browsers:["E13","FF1.5","S4","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:read-only"}],description:"An element whose contents are not user-alterable is :read-only. However, elements whose contents are user-alterable (such as text input fields) are considered to be in a :read-write state. In typical documents, most elements are :read-only."},{name:":read-write",browsers:["E13","FF1.5","S4","C1","O"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:read-write"}],description:"An element whose contents are not user-alterable is :read-only. However, elements whose contents are user-alterable (such as text input fields) are considered to be in a :read-write state. In typical documents, most elements are :read-only."},{name:":required",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:required"}],description:"A form element is :required or :optional if a value for it is, respectively, required or optional before the form it belongs to is submitted. Elements that are not form elements are neither required nor optional."},{name:":right",browsers:["E12","S5.1","C6","IE8","O9.2"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:right"}],description:"When printing double-sided documents, the page boxes on left and right pages may be different. This can be expressed through CSS pseudo-classes defined in the page context."},{name:":root",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:root"}],description:"Represents an element that is the root of the document. In HTML 4, this is always the HTML element."},{name:":scope",browsers:["FF32","S7","C27","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:scope"}],description:"Represents any element that is in the contextual reference element set."},{name:":single-button",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Applies when both buttons are displayed separately at either end of the scrollbar."},{name:":start",browsers:["C","S5"],description:"Non-standard. Applies to buttons and track pieces. Indicates whether the object is placed before the thumb."},{name:":target",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:target"}],description:"Some URIs refer to a location within a resource. This kind of URI ends with a 'number sign' (#) followed by an anchor identifier (called the fragment identifier)."},{name:":valid",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:valid"}],description:"An element is :valid or :invalid when it is, respectively, valid or invalid with respect to data validity semantics defined by a different specification."},{name:":vertical",browsers:["C","S5"],description:"Non-standard. Applies to any scrollbar pieces that have a vertical orientation."},{name:":visited",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:visited"}],description:"Applies once the link has been visited by the user."},{name:":-webkit-any()",browsers:["C","S5"],description:"Represents an element that is represented by the selector list passed as its argument. Standardized as :matches()."},{name:":-webkit-full-screen",browsers:["C","S6"],description:"Matches any element that has its fullscreen flag set. Standardized as :fullscreen."},{name:":window-inactive",browsers:["C","S3"],description:"Non-standard. Applies to all scrollbar pieces. Indicates whether or not the window containing the scrollbar is currently active."},{name:":blank",status:"experimental",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:blank"}],description:"The :blank CSS pseudo-class selects empty user input elements (eg. <input> or <textarea>)."},{name:":defined",status:"experimental",browsers:["FF63","S10","C54","O41"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:defined"}],description:"The :defined CSS pseudo-class represents any element that has been defined. This includes any standard element built in to the browser, and custom elements that have been successfully defined (i.e. with the CustomElementRegistry.define() method)."},{name:":dir",browsers:["FF49"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:dir"}],description:"The :dir() CSS pseudo-class matches elements based on the directionality of the text contained in them."},{name:":focus-visible",status:"experimental",browsers:["FF4","C67","O54"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:focus-visible"}],description:"The :focus-visible pseudo-class applies while an element matches the :focus pseudo-class and the UA determines via heuristics that the focus should be made evident on the element."},{name:":focus-within",status:"experimental",browsers:["FF52","S10.1","C60","O47"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:focus-within"}],description:"The :focus-within pseudo-class applies to any element for which the :focus pseudo class applies as well as to an element whose descendant in the flat tree (including non-element nodes, such as text nodes) matches the conditions for matching :focus."},{name:":has",status:"experimental",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:has"}],description:":The :has() CSS pseudo-class represents an element if any of the selectors passed as parameters (relative to the :scope of the given element), match at least one element."},{name:":is",status:"experimental",browsers:["FF4","S9","C68","O55"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:is"}],description:"The :is() CSS pseudo-class function takes a selector list as its argument, and selects any element that can be selected by one of the selectors in that list. This is useful for writing large selectors in a more compact form."},{name:":placeholder-shown",status:"experimental",browsers:["FF51","S9","C47","IE10","O34"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/:placeholder-shown"}],description:"The :placeholder-shown CSS pseudo-class represents any <input> or <textarea> element that is currently displaying placeholder text."},{name:":where",status:"experimental",description:"The :where() CSS pseudo-class function takes a selector list as its argument, and selects any element that can be selected by one of the selectors in that list."}],pseudoElements:[{name:"::after",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::after"}],description:"Represents a styleable child pseudo-element immediately after the originating element’s actual content."},{name:"::backdrop",browsers:["E12","FF47","C37","IE11","O24"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::backdrop"}],description:"Used to create a backdrop that hides the underlying document for an element in a top layer (such as an element that is displayed fullscreen)."},{name:"::before",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::before"}],description:"Represents a styleable child pseudo-element immediately before the originating element’s actual content."},{name:"::content",browsers:["C35","O22"],description:"Deprecated. Matches the distribution list itself, on elements that have one. Use ::slotted for forward compatibility."},{name:"::cue",browsers:["FF55","S6.1","C26","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::cue"}]},{name:"::cue()",browsers:["C","O16","S6"]},{name:"::cue-region",browsers:["C","O16","S6"]},{name:"::cue-region()",browsers:["C","O16","S6"]},{name:"::first-letter",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::first-letter"}],description:"Represents the first letter of an element, if it is not preceded by any other content (such as images or inline tables) on its line."},{name:"::first-line",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::first-line"}],description:"Describes the contents of the first formatted line of its originating element."},{name:"::-moz-focus-inner",browsers:["FF4"]},{name:"::-moz-focus-outer",browsers:["FF4"]},{name:"::-moz-list-bullet",browsers:["FF1"],description:"Used to style the bullet of a list element. Similar to the standardized ::marker."},{name:"::-moz-list-number",browsers:["FF1"],description:"Used to style the numbers of a list element. Similar to the standardized ::marker."},{name:"::-moz-placeholder",browsers:["FF19"],description:"Represents placeholder text in an input field"},{name:"::-moz-progress-bar",browsers:["FF9"],description:"Represents the bar portion of a progress bar."},{name:"::-moz-selection",browsers:["FF1"],description:"Represents the portion of a document that has been highlighted by the user."},{name:"::-ms-backdrop",browsers:["IE11"],description:"Used to create a backdrop that hides the underlying document for an element in a top layer (such as an element that is displayed fullscreen)."},{name:"::-ms-browse",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-browse"}],description:"Represents the browse button of an input type=file control."},{name:"::-ms-check",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-check"}],description:"Represents the check of a checkbox or radio button input control."},{name:"::-ms-clear",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-clear"}],description:"Represents the clear button of a text input control"},{name:"::-ms-expand",browsers:["E","IE10"],description:"Represents the drop-down button of a select control."},{name:"::-ms-fill",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-fill"}],description:"Represents the bar portion of a progress bar."},{name:"::-ms-fill-lower",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-fill-lower"}],description:"Represents the portion of the slider track from its smallest value up to the value currently selected by the thumb. In a left-to-right layout, this is the portion of the slider track to the left of the thumb."},{name:"::-ms-fill-upper",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-fill-upper"}],description:"Represents the portion of the slider track from the value currently selected by the thumb up to the slider's largest value. In a left-to-right layout, this is the portion of the slider track to the right of the thumb."},{name:"::-ms-reveal",browsers:["E12","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-reveal"}],description:"Represents the password reveal button of an input type=password control."},{name:"::-ms-thumb",browsers:["E","IE10"],description:"Represents the portion of range input control (also known as a slider control) that the user drags."},{name:"::-ms-ticks-after",browsers:["E","IE10"],description:"Represents the tick marks of a slider that begin just after the thumb and continue up to the slider's largest value. In a left-to-right layout, these are the ticks to the right of the thumb."},{name:"::-ms-ticks-before",browsers:["E","IE10"],description:"Represents the tick marks of a slider that represent its smallest values up to the value currently selected by the thumb. In a left-to-right layout, these are the ticks to the left of the thumb."},{name:"::-ms-tooltip",browsers:["E","IE10"],description:"Represents the tooltip of a slider (input type=range)."},{name:"::-ms-track",browsers:["E","IE10"],description:"Represents the track of a slider."},{name:"::-ms-value",browsers:["E16","IE10"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-ms-value"}],description:"Represents the content of a text or password input control, or a select control."},{name:"::selection",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::selection"}],description:"Represents the portion of a document that has been highlighted by the user."},{name:"::shadow",browsers:["C35","O22"],description:"Matches the shadow root if an element has a shadow tree."},{name:"::-webkit-file-upload-button",browsers:["S3","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-file-upload-button"}]},{name:"::-webkit-inner-spin-button",browsers:["S4.1","C6","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-inner-spin-button"}]},{name:"::-webkit-input-placeholder",browsers:["C","S4"]},{name:"::-webkit-keygen-select",browsers:["C","O","S6"]},{name:"::-webkit-meter-bar",browsers:["S5.1","C12","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-meter-bar"}]},{name:"::-webkit-meter-even-less-good-value",browsers:["S5.1","C12","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-meter-even-less-good-value"}]},{name:"::-webkit-meter-optimum-value",browsers:["S5.1","C12","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-meter-optimum-value"}]},{name:"::-webkit-meter-suboptimal-value",browsers:["E13","C","O15","S6"]},{name:"::-webkit-outer-spin-button",browsers:["S4.1","C6"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-outer-spin-button"}]},{name:"::-webkit-progress-bar",browsers:["S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-progress-bar"}]},{name:"::-webkit-progress-inner-element",browsers:["S6.1","C23","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-progress-inner-element"}]},{name:"::-webkit-progress-value",browsers:["S6.1","C25","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-progress-value"}]},{name:"::-webkit-resizer",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-resizer"}]},{name:"::-webkit-scrollbar",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar"}]},{name:"::-webkit-scrollbar-button",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar-button"}]},{name:"::-webkit-scrollbar-corner",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar-corner"}]},{name:"::-webkit-scrollbar-thumb",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar-thumb"}]},{name:"::-webkit-scrollbar-track",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar-track"}]},{name:"::-webkit-scrollbar-track-piece",browsers:["S4","C2","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-scrollbar-track-piece"}]},{name:"::-webkit-search-cancel-button",browsers:["S3","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-search-cancel-button"}]},{name:"::-webkit-search-decoration",browsers:["C","S4"]},{name:"::-webkit-search-results-button",browsers:["S3","C1","O15"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-webkit-search-results-button"}]},{name:"::-webkit-search-results-decoration",browsers:["C","S4"]},{name:"::-webkit-slider-runnable-track",browsers:["C","O","S6"]},{name:"::-webkit-slider-thumb",browsers:["C","O","S6"]},{name:"::-webkit-textfield-decoration-container",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble-arrow",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble-arrow-clipper",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble-heading",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble-message",browsers:["C","O","S6"]},{name:"::-webkit-validation-bubble-text-block",browsers:["C","O","S6"]},{name:"::-moz-range-progress",status:"nonstandard",browsers:["FF22"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-moz-range-progress"}],description:'The ::-moz-range-progress CSS pseudo-element is a Mozilla extension that represents the lower portion of the track (i.e., groove) in which the indicator slides in an <input> of type="range". This portion corresponds to values lower than the value currently selected by the thumb (i.e., virtual knob).'},{name:"::-moz-range-thumb",status:"nonstandard",browsers:["FF21"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-moz-range-thumb"}],description:'The ::-moz-range-thumb CSS pseudo-element is a Mozilla extension that represents the thumb (i.e., virtual knob) of an <input> of type="range". The user can move the thumb along the input\'s track to alter its numerical value.'},{name:"::-moz-range-track",status:"nonstandard",browsers:["FF21"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::-moz-range-track"}],description:'The ::-moz-range-track CSS pseudo-element is a Mozilla extension that represents the track (i.e., groove) in which the indicator slides in an <input> of type="range".'},{name:"::-webkit-progress-inner-value",status:"nonstandard",description:"The ::-webkit-progress-value CSS pseudo-element represents the filled-in portion of the bar of a <progress> element. It is a child of the ::-webkit-progress-bar pseudo-element.\n\nIn order to let ::-webkit-progress-value take effect, -webkit-appearance needs to be set to none on the <progress> element."},{name:"::grammar-error",status:"experimental",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::grammar-error"}],description:"The ::grammar-error CSS pseudo-element represents a text segment which the user agent has flagged as grammatically incorrect."},{name:"::marker",browsers:["FF68","C80"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::marker"}],description:"The ::marker CSS pseudo-element selects the marker box of a list item, which typically contains a bullet or number. It works on any element or pseudo-element set to display: list-item, such as the <li> and <summary> elements."},{name:"::part",status:"experimental",browsers:["FF69","C73","O60"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::part"}],description:"The ::part CSS pseudo-element represents any element within a shadow tree that has a matching part attribute."},{name:"::placeholder",browsers:["E12","FF51","S10.1","C57","O44"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::placeholder"}],description:"The ::placeholder CSS pseudo-element represents the placeholder text of a form element."},{name:"::slotted",browsers:["FF63","S10","C50","O37"],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::slotted"}],description:"The :slotted() CSS pseudo-element represents any element that has been placed into a slot inside an HTML template."},{name:"::spelling-error",status:"experimental",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/::spelling-error"}],description:"The ::spelling-error CSS pseudo-element represents a text segment which the user agent has flagged as incorrectly spelled."}]})]),tn=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),r=0;for(t=0;t<n;t++)for(var o=arguments[t],s=0,a=o.length;s<a;s++,r++)i[r]=o[s];return i},nn=function(){function e(e){void 0===e&&(e=new X),this.keyframeRegex=/^@(\-(webkit|ms|moz|o)\-)?keyframes$/i,this.scanner=e,this.token={type:i.EOF,offset:-1,len:0,text:""},this.prevToken=void 0}return e.prototype.peekIdent=function(e){return i.Ident===this.token.type&&e.length===this.token.text.length&&e===this.token.text.toLowerCase()},e.prototype.peekKeyword=function(e){return i.AtKeyword===this.token.type&&e.length===this.token.text.length&&e===this.token.text.toLowerCase()},e.prototype.peekDelim=function(e){return i.Delim===this.token.type&&e===this.token.text},e.prototype.peek=function(e){return e===this.token.type},e.prototype.peekRegExp=function(e,t){return e===this.token.type&&t.test(this.token.text)},e.prototype.hasWhitespace=function(){return!!this.prevToken&&this.prevToken.offset+this.prevToken.len!==this.token.offset},e.prototype.consumeToken=function(){this.prevToken=this.token,this.token=this.scanner.scan()},e.prototype.mark=function(){return{prev:this.prevToken,curr:this.token,pos:this.scanner.pos()}},e.prototype.restoreAtMark=function(e){this.prevToken=e.prev,this.token=e.curr,this.scanner.goBackTo(e.pos)},e.prototype.try=function(e){var t=this.mark(),n=e();return n||(this.restoreAtMark(t),null)},e.prototype.acceptOneKeyword=function(e){if(i.AtKeyword===this.token.type)for(var t=0,n=e;t<n.length;t++){var r=n[t];if(r.length===this.token.text.length&&r===this.token.text.toLowerCase())return this.consumeToken(),!0}return!1},e.prototype.accept=function(e){return e===this.token.type&&(this.consumeToken(),!0)},e.prototype.acceptIdent=function(e){return!!this.peekIdent(e)&&(this.consumeToken(),!0)},e.prototype.acceptKeyword=function(e){return!!this.peekKeyword(e)&&(this.consumeToken(),!0)},e.prototype.acceptDelim=function(e){return!!this.peekDelim(e)&&(this.consumeToken(),!0)},e.prototype.acceptRegexp=function(e){return!!e.test(this.token.text)&&(this.consumeToken(),!0)},e.prototype._parseRegexp=function(e){var t=this.createNode(H.Identifier);do{}while(this.acceptRegexp(e));return this.finish(t)},e.prototype.acceptUnquotedString=function(){var e=this.scanner.pos();this.scanner.goBackTo(this.token.offset);var t=this.scanner.scanUnquotedString();return t?(this.token=t,this.consumeToken(),!0):(this.scanner.goBackTo(e),!1)},e.prototype.resync=function(e,t){for(;;){if(e&&-1!==e.indexOf(this.token.type))return this.consumeToken(),!0;if(t&&-1!==t.indexOf(this.token.type))return!0;if(this.token.type===i.EOF)return!1;this.token=this.scanner.scan()}},e.prototype.createNode=function(e){return new ne(this.token.offset,this.token.len,e)},e.prototype.create=function(e){return new e(this.token.offset,this.token.len)},e.prototype.finish=function(e,t,n,i){if(!(e instanceof ie)&&(t&&this.markError(e,t,n,i),this.prevToken)){var r=this.prevToken.offset+this.prevToken.len;e.length=r>e.offset?r-e.offset:0}return e},e.prototype.markError=function(e,t,n,i){this.token!==this.lastErrorToken&&(e.addIssue(new pt(e,t,te.Error,void 0,this.token.offset,this.token.len)),this.lastErrorToken=this.token),(n||i)&&this.resync(n,i)},e.prototype.parseStylesheet=function(e){var t=e.version,n=e.getText();return this.internalParse(n,this._parseStylesheet,function(i,r){if(e.version!==t)throw new Error("Underlying model has changed, AST is no longer valid");return n.substr(i,r)})},e.prototype.internalParse=function(e,t,n){this.scanner.setSource(e),this.token=this.scanner.scan();var i=t.bind(this)();return i&&(i.textProvider=n||function(t,n){return e.substr(t,n)}),i},e.prototype._parseStylesheet=function(){for(var e=this.create(oe);e.addChild(this._parseStylesheetStart()););var t=!1;do{var n=!1;do{n=!1;var r=this._parseStylesheetStatement();for(r&&(e.addChild(r),n=!0,t=!1,this.peek(i.EOF)||!this._needsSemicolonAfter(r)||this.accept(i.SemiColon)||this.markError(e,bt.SemiColonExpected));this.accept(i.SemiColon)||this.accept(i.CDO)||this.accept(i.CDC);)n=!0,t=!1}while(n);if(this.peek(i.EOF))break;t||(this.peek(i.AtKeyword)?this.markError(e,bt.UnknownAtRule):this.markError(e,bt.RuleOrSelectorExpected),t=!0),this.consumeToken()}while(!this.peek(i.EOF));return this.finish(e)},e.prototype._parseStylesheetStart=function(){return this._parseCharset()},e.prototype._parseStylesheetStatement=function(e){return void 0===e&&(e=!1),this.peek(i.AtKeyword)?this._parseStylesheetAtStatement(e):this._parseRuleset(e)},e.prototype._parseStylesheetAtStatement=function(e){return void 0===e&&(e=!1),this._parseImport()||this._parseMedia(e)||this._parsePage()||this._parseFontFace()||this._parseKeyframe()||this._parseSupports(e)||this._parseViewPort()||this._parseNamespace()||this._parseDocument()||this._parseUnknownAtRule()},e.prototype._tryParseRuleset=function(e){var t=this.mark();if(this._parseSelector(e)){for(;this.accept(i.Comma)&&this._parseSelector(e););if(this.accept(i.CurlyL))return this.restoreAtMark(t),this._parseRuleset(e)}return this.restoreAtMark(t),null},e.prototype._parseRuleset=function(e){void 0===e&&(e=!1);var t=this.create(le),n=t.getSelectors();if(!n.addChild(this._parseSelector(e)))return null;for(;this.accept(i.Comma);)if(!n.addChild(this._parseSelector(e)))return this.finish(t,bt.SelectorExpected);return this._parseBody(t,this._parseRuleSetDeclaration.bind(this))},e.prototype._parseRuleSetDeclaration=function(){return this._parseAtApply()||this._tryParseCustomPropertyDeclaration()||this._parseDeclaration()||this._parseUnknownAtRule()},e.prototype._parseAtApply=function(){if(!this.peekKeyword("@apply"))return null;var e=this.create(pe);return this.consumeToken(),e.setIdentifier(this._parseIdent([Y.Variable]))?this.finish(e):this.finish(e,bt.IdentifierExpected)},e.prototype._needsSemicolonAfter=function(e){switch(e.type){case H.Keyframe:case H.ViewPort:case H.Media:case H.Ruleset:case H.Namespace:case H.If:case H.For:case H.Each:case H.While:case H.MixinDeclaration:case H.FunctionDeclaration:return!1;case H.ExtendsReference:case H.MixinContent:case H.ReturnStatement:case H.MediaQuery:case H.Debug:case H.Import:case H.AtApplyRule:case H.CustomPropertyDeclaration:return!0;case H.VariableDeclaration:return e.needsSemicolon;case H.MixinReference:return!e.getContent();case H.Declaration:return!e.getNestedProperties()}return!1},e.prototype._parseDeclarations=function(e){var t=this.create(se);if(!this.accept(i.CurlyL))return null;for(var n=e();t.addChild(n)&&!this.peek(i.CurlyR);){if(this._needsSemicolonAfter(n)&&!this.accept(i.SemiColon))return this.finish(t,bt.SemiColonExpected,[i.SemiColon,i.CurlyR]);for(n&&this.prevToken&&this.prevToken.type===i.SemiColon&&(n.semicolonPosition=this.prevToken.offset);this.accept(i.SemiColon););n=e()}return this.accept(i.CurlyR)?this.finish(t):this.finish(t,bt.RightCurlyExpected,[i.CurlyR,i.SemiColon])},e.prototype._parseBody=function(e,t){return e.setDeclarations(this._parseDeclarations(t))?this.finish(e):this.finish(e,bt.LeftCurlyExpected,[i.CurlyR,i.SemiColon])},e.prototype._parseSelector=function(e){var t=this.create(ce),n=!1;for(e&&(n=t.addChild(this._parseCombinator()));t.addChild(this._parseSimpleSelector());)n=!0,t.addChild(this._parseCombinator());return n?this.finish(t):null},e.prototype._parseDeclaration=function(e){var t=this.create(fe);if(!t.setProperty(this._parseProperty()))return null;if(!this.accept(i.Colon)){var n=e?tn(e,[i.SemiColon]):[i.SemiColon];return this.finish(t,bt.ColonExpected,[i.Colon],n)}return this.prevToken&&(t.colonPosition=this.prevToken.offset),t.setValue(this._parseExpr())?(t.addChild(this._parsePrio()),this.peek(i.SemiColon)&&(t.semicolonPosition=this.token.offset),this.finish(t)):this.finish(t,bt.PropertyValueExpected)},e.prototype._tryParseCustomPropertyDeclaration=function(){if(!this.peekRegExp(i.Ident,/^--/))return null;var e=this.create(me);if(!e.setProperty(this._parseProperty()))return null;if(!this.accept(i.Colon))return this.finish(e,bt.ColonExpected,[i.Colon]);this.prevToken&&(e.colonPosition=this.prevToken.offset);var t=this.mark();if(this.peek(i.CurlyL)){var n=this.create(ue),r=this._parseDeclarations(this._parseRuleSetDeclaration.bind(this));if(n.setDeclarations(r)&&!r.isErroneous(!0)&&(n.addChild(this._parsePrio()),this.peek(i.SemiColon)))return this.finish(n),e.setPropertySet(n),e.semicolonPosition=this.token.offset,this.finish(e);this.restoreAtMark(t)}var o=this._parseExpr();return o&&!o.isErroneous(!0)&&(this._parsePrio(),this.peek(i.SemiColon))?(e.setValue(o),e.semicolonPosition=this.token.offset,this.finish(e)):(this.restoreAtMark(t),e.addChild(this._parseCustomPropertyValue()),e.addChild(this._parsePrio()),vt(e.colonPosition)&&this.token.offset===e.colonPosition+1?this.finish(e,bt.PropertyValueExpected):this.finish(e))},e.prototype._parseCustomPropertyValue=function(){var e=this.create(ne),t=function(){return 0===n&&0===r&&0===o},n=0,r=0,o=0;e:for(;;){switch(this.token.type){case i.SemiColon:case i.Exclamation:if(t())break e;break;case i.CurlyL:n++;break;case i.CurlyR:if(--n<0){if(0===r&&0===o)break e;return this.finish(e,bt.LeftCurlyExpected)}break;case i.ParenthesisL:r++;break;case i.ParenthesisR:if(--r<0)return this.finish(e,bt.LeftParenthesisExpected);break;case i.BracketL:o++;break;case i.BracketR:if(--o<0)return this.finish(e,bt.LeftSquareBracketExpected);break;case i.BadString:break e;case i.EOF:var s=bt.RightCurlyExpected;return o>0?s=bt.RightSquareBracketExpected:r>0&&(s=bt.RightParenthesisExpected),this.finish(e,s)}this.consumeToken()}return this.finish(e)},e.prototype._tryToParseDeclaration=function(){var e=this.mark();return this._parseProperty()&&this.accept(i.Colon)?(this.restoreAtMark(e),this._parseDeclaration()):(this.restoreAtMark(e),null)},e.prototype._parseProperty=function(){var e=this.create(ge),t=this.mark();return(this.acceptDelim("*")||this.acceptDelim("_"))&&this.hasWhitespace()?(this.restoreAtMark(t),null):e.setIdentifier(this._parsePropertyIdentifier())?this.finish(e):null},e.prototype._parsePropertyIdentifier=function(){return this._parseIdent()},e.prototype._parseCharset=function(){if(!this.peek(i.Charset))return null;var e=this.create(ne);return this.consumeToken(),this.accept(i.String)?this.accept(i.SemiColon)?this.finish(e):this.finish(e,bt.SemiColonExpected):this.finish(e,bt.IdentifierExpected)},e.prototype._parseImport=function(){if(!this.peekKeyword("@import"))return null;var e=this.create(Ie);return this.consumeToken(),e.addChild(this._parseURILiteral())||e.addChild(this._parseStringLiteral())?(this.peek(i.SemiColon)||this.peek(i.EOF)||e.setMedialist(this._parseMediaQueryList()),this.finish(e)):this.finish(e,bt.URIOrStringExpected)},e.prototype._parseNamespace=function(){if(!this.peekKeyword("@namespace"))return null;var e=this.create(Ae);return this.consumeToken(),e.addChild(this._parseURILiteral())||(e.addChild(this._parseIdent()),e.addChild(this._parseURILiteral())||e.addChild(this._parseStringLiteral()))?this.accept(i.SemiColon)?this.finish(e):this.finish(e,bt.SemiColonExpected):this.finish(e,bt.URIExpected,[i.SemiColon])},e.prototype._parseFontFace=function(){if(!this.peekKeyword("@font-face"))return null;var e=this.create(De);return this.consumeToken(),this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._parseViewPort=function(){if(!this.peekKeyword("@-ms-viewport")&&!this.peekKeyword("@-o-viewport")&&!this.peekKeyword("@viewport"))return null;var e=this.create(ze);return this.consumeToken(),this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._parseKeyframe=function(){if(!this.peekRegExp(i.AtKeyword,this.keyframeRegex))return null;var e=this.create(Re),t=this.create(ne);return this.consumeToken(),e.setKeyword(this.finish(t)),t.matches("@-ms-keyframes")&&this.markError(t,bt.UnknownKeyword),e.setIdentifier(this._parseKeyframeIdent())?this._parseBody(e,this._parseKeyframeSelector.bind(this)):this.finish(e,bt.IdentifierExpected,[i.CurlyR])},e.prototype._parseKeyframeIdent=function(){return this._parseIdent([Y.Keyframe])},e.prototype._parseKeyframeSelector=function(){var e=this.create(Ee);if(!e.addChild(this._parseIdent())&&!this.accept(i.Percentage))return null;for(;this.accept(i.Comma);)if(!e.addChild(this._parseIdent())&&!this.accept(i.Percentage))return this.finish(e,bt.PercentageExpected);return this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._tryParseKeyframeSelector=function(){var e=this.create(Ee),t=this.mark();if(!e.addChild(this._parseIdent())&&!this.accept(i.Percentage))return null;for(;this.accept(i.Comma);)if(!e.addChild(this._parseIdent())&&!this.accept(i.Percentage))return this.restoreAtMark(t),null;return this.peek(i.CurlyL)?this._parseBody(e,this._parseRuleSetDeclaration.bind(this)):(this.restoreAtMark(t),null)},e.prototype._parseSupports=function(e){if(void 0===e&&(e=!1),!this.peekKeyword("@supports"))return null;var t=this.create(Oe);return this.consumeToken(),t.addChild(this._parseSupportsCondition()),this._parseBody(t,this._parseSupportsDeclaration.bind(this,e))},e.prototype._parseSupportsDeclaration=function(e){return void 0===e&&(e=!1),e?this._tryParseRuleset(!0)||this._tryToParseDeclaration()||this._parseStylesheetStatement(!0):this._parseStylesheetStatement(!1)},e.prototype._parseSupportsCondition=function(){var e=this.create(Ve);if(this.acceptIdent("not"))e.addChild(this._parseSupportsConditionInParens());else if(e.addChild(this._parseSupportsConditionInParens()),this.peekRegExp(i.Ident,/^(and|or)$/i))for(var t=this.token.text.toLowerCase();this.acceptIdent(t);)e.addChild(this._parseSupportsConditionInParens());return this.finish(e)},e.prototype._parseSupportsConditionInParens=function(){var e=this.create(Ve);if(this.accept(i.ParenthesisL))return this.prevToken&&(e.lParent=this.prevToken.offset),e.addChild(this._tryToParseDeclaration())||this._parseSupportsCondition()?this.accept(i.ParenthesisR)?(this.prevToken&&(e.rParent=this.prevToken.offset),this.finish(e)):this.finish(e,bt.RightParenthesisExpected,[i.ParenthesisR],[]):this.finish(e,bt.ConditionExpected);if(this.peek(i.Ident)){var t=this.mark();if(this.consumeToken(),!this.hasWhitespace()&&this.accept(i.ParenthesisL)){for(var n=1;this.token.type!==i.EOF&&0!==n;)this.token.type===i.ParenthesisL?n++:this.token.type===i.ParenthesisR&&n--,this.consumeToken();return this.finish(e)}this.restoreAtMark(t)}return this.finish(e,bt.LeftParenthesisExpected,[],[i.ParenthesisL])},e.prototype._parseMediaDeclaration=function(e){return void 0===e&&(e=!1),e?this._tryParseRuleset(!0)||this._tryToParseDeclaration()||this._parseStylesheetStatement(!0):this._parseStylesheetStatement(!1)},e.prototype._parseMedia=function(e){if(void 0===e&&(e=!1),!this.peekKeyword("@media"))return null;var t=this.create(We);return this.consumeToken(),t.addChild(this._parseMediaQueryList())?this._parseBody(t,this._parseMediaDeclaration.bind(this,e)):this.finish(t,bt.MediaQueryExpected)},e.prototype._parseMediaQueryList=function(){var e=this.create(Ue);if(!e.addChild(this._parseMediaQuery([i.CurlyL])))return this.finish(e,bt.MediaQueryExpected);for(;this.accept(i.Comma);)if(!e.addChild(this._parseMediaQuery([i.CurlyL])))return this.finish(e,bt.MediaQueryExpected);return this.finish(e)},e.prototype._parseMediaQuery=function(e){var t=this.create(je),n=!0,r=!1;if(!this.peek(i.ParenthesisL)){if(this.acceptIdent("only")||this.acceptIdent("not"),!t.addChild(this._parseIdent()))return null;r=!0,n=this.acceptIdent("and")}for(;n;)if(t.addChild(this._parseMediaContentStart()))n=this.acceptIdent("and");else{if(!this.accept(i.ParenthesisL))return r?this.finish(t,bt.LeftParenthesisExpected,[],e):null;if(!t.addChild(this._parseMediaFeatureName()))return this.finish(t,bt.IdentifierExpected,[],e);if(this.accept(i.Colon)&&!t.addChild(this._parseExpr()))return this.finish(t,bt.TermExpected,[],e);if(!this.accept(i.ParenthesisR))return this.finish(t,bt.RightParenthesisExpected,[],e);n=this.acceptIdent("and")}return this.finish(t)},e.prototype._parseMediaContentStart=function(){return null},e.prototype._parseMediaFeatureName=function(){return this._parseIdent()},e.prototype._parseMedium=function(){var e=this.create(ne);return e.addChild(this._parseIdent())?this.finish(e):null},e.prototype._parsePageDeclaration=function(){return this._parsePageMarginBox()||this._parseRuleSetDeclaration()},e.prototype._parsePage=function(){if(!this.peekKeyword("@page"))return null;var e=this.create(Be);if(this.consumeToken(),e.addChild(this._parsePageSelector()))for(;this.accept(i.Comma);)if(!e.addChild(this._parsePageSelector()))return this.finish(e,bt.IdentifierExpected);return this._parseBody(e,this._parsePageDeclaration.bind(this))},e.prototype._parsePageMarginBox=function(){if(!this.peek(i.AtKeyword))return null;var e=this.create($e);return this.acceptOneKeyword(Qt)||this.markError(e,bt.UnknownAtRule,[],[i.CurlyL]),this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._parsePageSelector=function(){if(!this.peek(i.Ident)&&!this.peek(i.Colon))return null;var e=this.create(ne);return e.addChild(this._parseIdent()),this.accept(i.Colon)&&!e.addChild(this._parseIdent())?this.finish(e,bt.IdentifierExpected):this.finish(e)},e.prototype._parseDocument=function(){if(!this.peekKeyword("@-moz-document"))return null;var e=this.create(Le);return this.consumeToken(),this.resync([],[i.CurlyL]),this._parseBody(e,this._parseStylesheetStatement.bind(this))},e.prototype._parseUnknownAtRule=function(){if(!this.peek(i.AtKeyword))return null;var e=this.create(st);e.addChild(this._parseUnknownAtRuleName());var t=0,n=0,r=0,o=0;e:for(;;){switch(this.token.type){case i.SemiColon:if(0===n&&0===r&&0===o)break e;break;case i.EOF:return n>0?this.finish(e,bt.RightCurlyExpected):o>0?this.finish(e,bt.RightSquareBracketExpected):r>0?this.finish(e,bt.RightParenthesisExpected):this.finish(e);case i.CurlyL:t++,n++;break;case i.CurlyR:if(n--,t>0&&0===n){if(this.consumeToken(),o>0)return this.finish(e,bt.RightSquareBracketExpected);if(r>0)return this.finish(e,bt.RightParenthesisExpected);break e}if(n<0){if(0===r&&0===o)break e;return this.finish(e,bt.LeftCurlyExpected)}break;case i.ParenthesisL:r++;break;case i.ParenthesisR:if(--r<0)return this.finish(e,bt.LeftParenthesisExpected);break;case i.BracketL:o++;break;case i.BracketR:if(--o<0)return this.finish(e,bt.LeftSquareBracketExpected)}this.consumeToken()}return e},e.prototype._parseUnknownAtRuleName=function(){var e=this.create(ne);return this.accept(i.AtKeyword)?this.finish(e):e},e.prototype._parseOperator=function(){if(this.peekDelim("/")||this.peekDelim("*")||this.peekDelim("+")||this.peekDelim("-")||this.peek(i.Dashmatch)||this.peek(i.Includes)||this.peek(i.SubstringOperator)||this.peek(i.PrefixOperator)||this.peek(i.SuffixOperator)||this.peekDelim("=")){var e=this.createNode(H.Operator);return this.consumeToken(),this.finish(e)}return null},e.prototype._parseUnaryOperator=function(){if(!this.peekDelim("+")&&!this.peekDelim("-"))return null;var e=this.create(ne);return this.consumeToken(),this.finish(e)},e.prototype._parseCombinator=function(){if(this.peekDelim(">")){var e=this.create(ne);this.consumeToken();var t=this.mark();if(!this.hasWhitespace()&&this.acceptDelim(">")){if(!this.hasWhitespace()&&this.acceptDelim(">"))return e.type=H.SelectorCombinatorShadowPiercingDescendant,this.finish(e);this.restoreAtMark(t)}return e.type=H.SelectorCombinatorParent,this.finish(e)}if(this.peekDelim("+")){e=this.create(ne);return this.consumeToken(),e.type=H.SelectorCombinatorSibling,this.finish(e)}if(this.peekDelim("~")){e=this.create(ne);return this.consumeToken(),e.type=H.SelectorCombinatorAllSiblings,this.finish(e)}if(this.peekDelim("/")){e=this.create(ne);this.consumeToken();t=this.mark();if(!this.hasWhitespace()&&this.acceptIdent("deep")&&!this.hasWhitespace()&&this.acceptDelim("/"))return e.type=H.SelectorCombinatorShadowPiercingDescendant,this.finish(e);this.restoreAtMark(t)}return null},e.prototype._parseSimpleSelector=function(){var e=this.create(de),t=0;for(e.addChild(this._parseElementName())&&t++;(0===t||!this.hasWhitespace())&&e.addChild(this._parseSimpleSelectorBody());)t++;return t>0?this.finish(e):null},e.prototype._parseSimpleSelectorBody=function(){return this._parsePseudo()||this._parseHash()||this._parseClass()||this._parseAttrib()},e.prototype._parseSelectorIdent=function(){return this._parseIdent()},e.prototype._parseHash=function(){if(!this.peek(i.Hash)&&!this.peekDelim("#"))return null;var e=this.createNode(H.IdentifierSelector);if(this.acceptDelim("#")){if(this.hasWhitespace()||!e.addChild(this._parseSelectorIdent()))return this.finish(e,bt.IdentifierExpected)}else this.consumeToken();return this.finish(e)},e.prototype._parseClass=function(){if(!this.peekDelim("."))return null;var e=this.createNode(H.ClassSelector);return this.consumeToken(),this.hasWhitespace()||!e.addChild(this._parseSelectorIdent())?this.finish(e,bt.IdentifierExpected):this.finish(e)},e.prototype._parseElementName=function(){var e=this.mark(),t=this.createNode(H.ElementNameSelector);return t.addChild(this._parseNamespacePrefix()),t.addChild(this._parseSelectorIdent())||this.acceptDelim("*")?this.finish(t):(this.restoreAtMark(e),null)},e.prototype._parseNamespacePrefix=function(){var e=this.mark(),t=this.createNode(H.NamespacePrefix);return!t.addChild(this._parseIdent())&&this.acceptDelim("*"),this.acceptDelim("|")?this.finish(t):(this.restoreAtMark(e),null)},e.prototype._parseAttrib=function(){if(!this.peek(i.BracketL))return null;var e=this.create(Je);return this.consumeToken(),e.setNamespacePrefix(this._parseNamespacePrefix()),e.setIdentifier(this._parseIdent())?(e.setOperator(this._parseOperator())&&(e.setValue(this._parseBinaryExpr()),this.acceptIdent("i")),this.accept(i.BracketR)?this.finish(e):this.finish(e,bt.RightSquareBracketExpected)):this.finish(e,bt.IdentifierExpected)},e.prototype._parsePseudo=function(){var e=this,t=this._tryParsePseudoIdentifier();if(t){if(!this.hasWhitespace()&&this.accept(i.ParenthesisL)){if(t.addChild(this.try(function(){var t=e.create(ne);if(!t.addChild(e._parseSelector(!1)))return null;for(;e.accept(i.Comma)&&t.addChild(e._parseSelector(!1)););return e.peek(i.ParenthesisR)?e.finish(t):null})||this._parseBinaryExpr()),!this.accept(i.ParenthesisR))return this.finish(t,bt.RightParenthesisExpected)}return this.finish(t)}return null},e.prototype._tryParsePseudoIdentifier=function(){if(!this.peek(i.Colon))return null;var e=this.mark(),t=this.createNode(H.PseudoSelector);return this.consumeToken(),this.hasWhitespace()?(this.restoreAtMark(e),null):(this.accept(i.Colon)&&this.hasWhitespace()&&this.markError(t,bt.IdentifierExpected),t.addChild(this._parseIdent())||this.markError(t,bt.IdentifierExpected),t)},e.prototype._tryParsePrio=function(){var e=this.mark(),t=this._parsePrio();return t||(this.restoreAtMark(e),null)},e.prototype._parsePrio=function(){if(!this.peek(i.Exclamation))return null;var e=this.createNode(H.Prio);return this.accept(i.Exclamation)&&this.acceptIdent("important")?this.finish(e):null},e.prototype._parseExpr=function(e){void 0===e&&(e=!1);var t=this.create(qe);if(!t.addChild(this._parseBinaryExpr()))return null;for(;;){if(this.peek(i.Comma)){if(e)return this.finish(t);this.consumeToken()}if(!t.addChild(this._parseBinaryExpr()))break}return this.finish(t)},e.prototype._parseNamedLine=function(){if(!this.peek(i.BracketL))return null;var e=this.createNode(H.GridLine);for(this.consumeToken();e.addChild(this._parseIdent()););return this.accept(i.BracketR)?this.finish(e):this.finish(e,bt.RightSquareBracketExpected)},e.prototype._parseBinaryExpr=function(e,t){var n=this.create(Ke);if(!n.setLeft(e||this._parseTerm()))return null;if(!n.setOperator(t||this._parseOperator()))return this.finish(n);if(!n.setRight(this._parseTerm()))return this.finish(n,bt.TermExpected);n=this.finish(n);var i=this._parseOperator();return i&&(n=this._parseBinaryExpr(n,i)),this.finish(n)},e.prototype._parseTerm=function(){var e=this.create(Ge);return e.setOperator(this._parseUnaryOperator()),e.setExpression(this._parseURILiteral())||e.setExpression(this._parseFunction())||e.setExpression(this._parseIdent())||e.setExpression(this._parseStringLiteral())||e.setExpression(this._parseNumeric())||e.setExpression(this._parseHexColor())||e.setExpression(this._parseOperation())||e.setExpression(this._parseNamedLine())?this.finish(e):null},e.prototype._parseOperation=function(){if(!this.peek(i.ParenthesisL))return null;var e=this.create(ne);return this.consumeToken(),e.addChild(this._parseExpr()),this.accept(i.ParenthesisR)?this.finish(e):this.finish(e,bt.RightParenthesisExpected)},e.prototype._parseNumeric=function(){if(this.peek(i.Num)||this.peek(i.Percentage)||this.peek(i.Resolution)||this.peek(i.Length)||this.peek(i.EMS)||this.peek(i.EXS)||this.peek(i.Angle)||this.peek(i.Time)||this.peek(i.Dimension)||this.peek(i.Freq)){var e=this.create(Qe);return this.consumeToken(),this.finish(e)}return null},e.prototype._parseStringLiteral=function(){if(!this.peek(i.String)&&!this.peek(i.BadString))return null;var e=this.createNode(H.StringLiteral);return this.consumeToken(),this.finish(e)},e.prototype._parseURILiteral=function(){if(!this.peekRegExp(i.Ident,/^url(-prefix)?$/i))return null;var e=this.mark(),t=this.createNode(H.URILiteral);return this.accept(i.Ident),this.hasWhitespace()||!this.peek(i.ParenthesisL)?(this.restoreAtMark(e),null):(this.scanner.inURL=!0,this.consumeToken(),t.addChild(this._parseURLArgument()),this.scanner.inURL=!1,this.accept(i.ParenthesisR)?this.finish(t):this.finish(t,bt.RightParenthesisExpected))},e.prototype._parseURLArgument=function(){var e=this.create(ne);return this.accept(i.String)||this.accept(i.BadString)||this.acceptUnquotedString()?this.finish(e):null},e.prototype._parseIdent=function(e){if(!this.peek(i.Ident))return null;var t=this.create(re);return e&&(t.referenceTypes=e),t.isCustomProperty=this.peekRegExp(i.Ident,/^--/),this.consumeToken(),this.finish(t)},e.prototype._parseFunction=function(){var e=this.mark(),t=this.create(be);if(!t.setIdentifier(this._parseFunctionIdentifier()))return null;if(this.hasWhitespace()||!this.accept(i.ParenthesisL))return this.restoreAtMark(e),null;if(t.getArguments().addChild(this._parseFunctionArgument()))for(;this.accept(i.Comma)&&!this.peek(i.ParenthesisR);)t.getArguments().addChild(this._parseFunctionArgument())||this.markError(t,bt.ExpressionExpected);return this.accept(i.ParenthesisR)?this.finish(t):this.finish(t,bt.RightParenthesisExpected)},e.prototype._parseFunctionIdentifier=function(){if(!this.peek(i.Ident))return null;var e=this.create(re);if(e.referenceTypes=[Y.Function],this.acceptIdent("progid")){if(this.accept(i.Colon))for(;this.accept(i.Ident)&&this.acceptDelim("."););return this.finish(e)}return this.consumeToken(),this.finish(e)},e.prototype._parseFunctionArgument=function(){var e=this.create(ve);return e.setValue(this._parseExpr(!0))?this.finish(e):null},e.prototype._parseHexColor=function(){if(this.peekRegExp(i.Hash,/^#([A-Fa-f0-9]{3}|[A-Fa-f0-9]{4}|[A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/g)){var e=this.create(He);return this.consumeToken(),this.finish(e)}return null},e}();function rn(e,t){return-1!==e.indexOf(t)}function on(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=[],i=0,r=e;i<r.length;i++)for(var o=0,s=r[i];o<s.length;o++){var a=s[o];rn(n,a)||n.push(a)}return n}var sn,an,ln,cn,dn,pn,hn,mn,un,fn,gn,bn,yn,vn,wn,xn,Sn,kn,Cn,Fn,zn=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Dn=function(){function e(e,t){this.offset=e,this.length=t,this.symbols=[],this.parent=null,this.children=[]}return e.prototype.addChild=function(e){this.children.push(e),e.setParent(this)},e.prototype.setParent=function(e){this.parent=e},e.prototype.findScope=function(e,t){return void 0===t&&(t=0),this.offset<=e&&this.offset+this.length>e+t||this.offset===e&&this.length===t?this.findInScope(e,t):null},e.prototype.findInScope=function(e,t){void 0===t&&(t=0);var n=e+t,i=function(e,t){var n=0,i=e.length;if(0===i)return 0;for(;n<i;){var r=Math.floor((n+i)/2);t(e[r])?i=r:n=r+1}return n}(this.children,function(e){return e.offset>n});if(0===i)return this;var r=this.children[i-1];return r.offset<=e&&r.offset+r.length>=e+t?r.findInScope(e,t):this},e.prototype.addSymbol=function(e){this.symbols.push(e)},e.prototype.getSymbol=function(e,t){for(var n=0;n<this.symbols.length;n++){var i=this.symbols[n];if(i.name===e&&i.type===t)return i}return null},e.prototype.getSymbols=function(){return this.symbols},e}(),Tn=function(e){function t(){return e.call(this,0,Number.MAX_VALUE)||this}return zn(t,e),t}(Dn),Rn=function(){return function(e,t,n,i){this.name=e,this.value=t,this.node=n,this.type=i}}(),En=function(){function e(e){this.scope=e}return e.prototype.addSymbol=function(e,t,n,i){if(-1!==e.offset){var r=this.scope.findScope(e.offset,e.length);r&&r.addSymbol(new Rn(t,n,e,i))}},e.prototype.addScope=function(e){if(-1!==e.offset){var t=this.scope.findScope(e.offset,e.length);if(t&&(t.offset!==e.offset||t.length!==e.length)){var n=new Dn(e.offset,e.length);return t.addChild(n),n}return t}return null},e.prototype.addSymbolToChildScope=function(e,t,n,i,r){if(e&&-1!==e.offset){var o=this.addScope(e);o&&o.addSymbol(new Rn(n,i,t,r))}},e.prototype.visitNode=function(e){switch(e.type){case H.Keyframe:return this.addSymbol(e,e.getName(),void 0,Y.Keyframe),!0;case H.CustomPropertyDeclaration:return this.visitCustomPropertyDeclarationNode(e);case H.VariableDeclaration:return this.visitVariableDeclarationNode(e);case H.Ruleset:return this.visitRuleSet(e);case H.MixinDeclaration:return this.addSymbol(e,e.getName(),void 0,Y.Mixin),!0;case H.FunctionDeclaration:return this.addSymbol(e,e.getName(),void 0,Y.Function),!0;case H.FunctionParameter:return this.visitFunctionParameterNode(e);case H.Declarations:return this.addScope(e),!0;case H.For:var t=e,n=t.getDeclarations();return n&&t.variable&&this.addSymbolToChildScope(n,t.variable,t.variable.getName(),void 0,Y.Variable),!0;case H.Each:var i=e,r=i.getDeclarations();if(r)for(var o=0,s=i.getVariables().getChildren();o<s.length;o++){var a=s[o];this.addSymbolToChildScope(r,a,a.getName(),void 0,Y.Variable)}return!0}return!0},e.prototype.visitRuleSet=function(e){var t=this.scope.findScope(e.offset,e.length);if(t)for(var n=0,i=e.getSelectors().getChildren();n<i.length;n++){var r=i[n];r instanceof ce&&1===r.getChildren().length&&t.addSymbol(new Rn(r.getChild(0).getText(),void 0,r,Y.Rule))}return!0},e.prototype.visitVariableDeclarationNode=function(e){var t=e.getValue()?e.getValue().getText():void 0;return this.addSymbol(e,e.getName(),t,Y.Variable),!0},e.prototype.visitFunctionParameterNode=function(e){var t=e.getParent().getDeclarations();if(t){var n=e.getDefaultValue(),i=n?n.getText():void 0;this.addSymbolToChildScope(t,e,e.getName(),i,Y.Variable)}return!0},e.prototype.visitCustomPropertyDeclarationNode=function(e){var t=e.getValue()?e.getValue().getText():"";return this.addCSSVariable(e.getProperty(),e.getProperty().getName(),t,Y.Variable),!0},e.prototype.addCSSVariable=function(e,t,n,i){-1!==e.offset&&this.scope.addSymbol(new Rn(t,n,e,i))},e}(),In=function(){function e(e){this.global=new Tn,e.acceptVisitor(new En(this.global))}return e.prototype.findSymbolsAtOffset=function(e,t){for(var n=this.global.findScope(e,0),i=[],r={};n;){for(var o=n.getSymbols(),s=0;s<o.length;s++){var a=o[s];a.type!==t||r[a.name]||(i.push(a),r[a.name]=!0)}n=n.parent}return i},e.prototype.internalFindSymbol=function(e,t){var n=e;if(e.parent instanceof ye&&e.parent.getParent()instanceof ae&&(n=e.parent.getParent().getDeclarations()),e.parent instanceof ve&&e.parent.getParent()instanceof be){var i=e.parent.getParent().getIdentifier();if(i){var r=this.internalFindSymbol(i,[Y.Function]);r&&(n=r.node.getDeclarations())}}if(!n)return null;for(var o=e.getText(),s=this.global.findScope(n.offset,n.length);s;){for(var a=0;a<t.length;a++){var l=t[a],c=s.getSymbol(o,l);if(c)return c}s=s.parent}return null},e.prototype.evaluateReferenceTypes=function(e){if(e instanceof re){var t=e.referenceTypes;if(t)return t;if(e.isCustomProperty)return[Y.Variable];var n=function(e){var t=e.findParent(H.Declaration),n=t&&t.getValue();return n&&n.encloses(e)?t:null}(e);if(n){var i=n.getNonPrefixedPropertyName();if(("animation"===i||"animation-name"===i)&&n.getValue()&&n.getValue().offset===e.offset)return[Y.Keyframe]}}else if(e instanceof nt)return[Y.Variable];return e.findAParent(H.Selector,H.ExtendsReference)?[Y.Rule]:null},e.prototype.findSymbolFromNode=function(e){if(!e)return null;for(;e.type===H.Interpolation;)e=e.getParent();var t=this.evaluateReferenceTypes(e);return t?this.internalFindSymbol(e,t):null},e.prototype.matchesSymbol=function(e,t){if(!e)return!1;for(;e.type===H.Interpolation;)e=e.getParent();if(!e.matches(t.name))return!1;var n=this.evaluateReferenceTypes(e);return!(!n||-1===n.indexOf(t.type))&&this.internalFindSymbol(e,n)===t},e.prototype.findSymbol=function(e,t,n){for(var i=this.global.findScope(n);i;){var r=i.getSymbol(e,t);if(r)return r;i=i.parent}return null},e}();function Mn(e,t){if(e.length<t.length)return!1;for(var n=0;n<t.length;n++)if(e[n]!==t[n])return!1;return!0}function Nn(e,t){var n=e.length-t.length;return n>0?e.lastIndexOf(t)===n:0===n&&e===t}function Pn(e,t){return void 0===t&&(t=!0),e?e.length<140?e:e.slice(0,140)+(t?"…":""):""}!function(e){e.create=function(e,t){return{line:e,character:t}},e.is=function(e){var t=e;return di.objectLiteral(t)&&di.number(t.line)&&di.number(t.character)}}(sn||(sn={})),function(e){e.create=function(e,t,n,i){if(di.number(e)&&di.number(t)&&di.number(n)&&di.number(i))return{start:sn.create(e,t),end:sn.create(n,i)};if(sn.is(e)&&sn.is(t))return{start:e,end:t};throw new Error("Range#create called with invalid arguments["+e+", "+t+", "+n+", "+i+"]")},e.is=function(e){var t=e;return di.objectLiteral(t)&&sn.is(t.start)&&sn.is(t.end)}}(an||(an={})),function(e){e.create=function(e,t){return{uri:e,range:t}},e.is=function(e){var t=e;return di.defined(t)&&an.is(t.range)&&(di.string(t.uri)||di.undefined(t.uri))}}(ln||(ln={})),function(e){e.create=function(e,t,n,i){return{targetUri:e,targetRange:t,targetSelectionRange:n,originSelectionRange:i}},e.is=function(e){var t=e;return di.defined(t)&&an.is(t.targetRange)&&di.string(t.targetUri)&&(an.is(t.targetSelectionRange)||di.undefined(t.targetSelectionRange))&&(an.is(t.originSelectionRange)||di.undefined(t.originSelectionRange))}}(cn||(cn={})),function(e){e.create=function(e,t,n,i){return{red:e,green:t,blue:n,alpha:i}},e.is=function(e){var t=e;return di.number(t.red)&&di.number(t.green)&&di.number(t.blue)&&di.number(t.alpha)}}(dn||(dn={})),function(e){e.create=function(e,t){return{range:e,color:t}},e.is=function(e){var t=e;return an.is(t.range)&&dn.is(t.color)}}(pn||(pn={})),function(e){e.create=function(e,t,n){return{label:e,textEdit:t,additionalTextEdits:n}},e.is=function(e){var t=e;return di.string(t.label)&&(di.undefined(t.textEdit)||wn.is(t))&&(di.undefined(t.additionalTextEdits)||di.typedArray(t.additionalTextEdits,wn.is))}}(hn||(hn={})),function(e){e.Comment="comment",e.Imports="imports",e.Region="region"}(mn||(mn={})),function(e){e.create=function(e,t,n,i,r){var o={startLine:e,endLine:t};return di.defined(n)&&(o.startCharacter=n),di.defined(i)&&(o.endCharacter=i),di.defined(r)&&(o.kind=r),o},e.is=function(e){var t=e;return di.number(t.startLine)&&di.number(t.startLine)&&(di.undefined(t.startCharacter)||di.number(t.startCharacter))&&(di.undefined(t.endCharacter)||di.number(t.endCharacter))&&(di.undefined(t.kind)||di.string(t.kind))}}(un||(un={})),function(e){e.create=function(e,t){return{location:e,message:t}},e.is=function(e){var t=e;return di.defined(t)&&ln.is(t.location)&&di.string(t.message)}}(fn||(fn={})),function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4}(gn||(gn={})),function(e){e.Unnecessary=1,e.Deprecated=2}(bn||(bn={})),function(e){e.create=function(e,t,n,i,r,o){var s={range:e,message:t};return di.defined(n)&&(s.severity=n),di.defined(i)&&(s.code=i),di.defined(r)&&(s.source=r),di.defined(o)&&(s.relatedInformation=o),s},e.is=function(e){var t=e;return di.defined(t)&&an.is(t.range)&&di.string(t.message)&&(di.number(t.severity)||di.undefined(t.severity))&&(di.number(t.code)||di.string(t.code)||di.undefined(t.code))&&(di.string(t.source)||di.undefined(t.source))&&(di.undefined(t.relatedInformation)||di.typedArray(t.relatedInformation,fn.is))}}(yn||(yn={})),function(e){e.create=function(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];var r={title:e,command:t};return di.defined(n)&&n.length>0&&(r.arguments=n),r},e.is=function(e){var t=e;return di.defined(t)&&di.string(t.title)&&di.string(t.command)}}(vn||(vn={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){var t=e;return di.objectLiteral(t)&&di.string(t.newText)&&an.is(t.range)}}(wn||(wn={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){var t=e;return di.defined(t)&&An.is(t.textDocument)&&Array.isArray(t.edits)}}(xn||(xn={})),function(e){e.create=function(e,t){var n={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"create"===t.kind&&di.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||di.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||di.boolean(t.options.ignoreIfExists)))}}(Sn||(Sn={})),function(e){e.create=function(e,t,n){var i={kind:"rename",oldUri:e,newUri:t};return void 0===n||void 0===n.overwrite&&void 0===n.ignoreIfExists||(i.options=n),i},e.is=function(e){var t=e;return t&&"rename"===t.kind&&di.string(t.oldUri)&&di.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||di.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||di.boolean(t.options.ignoreIfExists)))}}(kn||(kn={})),function(e){e.create=function(e,t){var n={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"delete"===t.kind&&di.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||di.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||di.boolean(t.options.ignoreIfNotExists)))}}(Cn||(Cn={})),function(e){e.is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every(function(e){return di.string(e.kind)?Sn.is(e)||kn.is(e)||Cn.is(e):xn.is(e)}))}}(Fn||(Fn={}));var _n,An,Wn,On,Ln,Un,jn,Vn,Bn,$n,qn,Kn,Gn,Jn,Hn,Yn,Xn,Zn,Qn,ei,ti,ni,ii,ri,oi,si,ai,li=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(wn.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(wn.replace(e,t))},e.prototype.delete=function(e){this.edits.push(wn.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach(function(e){if(xn.is(e)){var n=new li(e.edits);t._textEditChanges[e.textDocument.uri]=n}}):e.changes&&Object.keys(e.changes).forEach(function(n){var i=new li(e.changes[n]);t._textEditChanges[n]=i}))}Object.defineProperty(e.prototype,"edit",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(An.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t=e;if(!(i=this._textEditChanges[t.uri])){var n={textDocument:t,edits:r=[]};this._workspaceEdit.documentChanges.push(n),i=new li(r),this._textEditChanges[t.uri]=i}return i}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var i;if(!(i=this._textEditChanges[e])){var r=[];this._workspaceEdit.changes[e]=r,i=new li(r),this._textEditChanges[e]=i}return i},e.prototype.createFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(Sn.create(e,t))},e.prototype.renameFile=function(e,t,n){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(kn.create(e,t,n))},e.prototype.deleteFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(Cn.create(e,t))},e.prototype.checkDocumentChanges=function(){if(!this._workspaceEdit||!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.")}}();!function(e){e.create=function(e){return{uri:e}},e.is=function(e){var t=e;return di.defined(t)&&di.string(t.uri)}}(_n||(_n={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){var t=e;return di.defined(t)&&di.string(t.uri)&&(null===t.version||di.number(t.version))}}(An||(An={})),function(e){e.create=function(e,t,n,i){return{uri:e,languageId:t,version:n,text:i}},e.is=function(e){var t=e;return di.defined(t)&&di.string(t.uri)&&di.string(t.languageId)&&di.number(t.version)&&di.string(t.text)}}(Wn||(Wn={})),function(e){e.PlainText="plaintext",e.Markdown="markdown"}(On||(On={})),function(e){e.is=function(t){var n=t;return n===e.PlainText||n===e.Markdown}}(On||(On={})),function(e){e.is=function(e){var t=e;return di.objectLiteral(e)&&On.is(t.kind)&&di.string(t.value)}}(Ln||(Ln={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(Un||(Un={})),function(e){e.PlainText=1,e.Snippet=2}(jn||(jn={})),function(e){e.Deprecated=1}(Vn||(Vn={})),function(e){e.create=function(e){return{label:e}}}(Bn||(Bn={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}($n||($n={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){var t=e;return di.string(t)||di.objectLiteral(t)&&di.string(t.language)&&di.string(t.value)}}(qn||(qn={})),function(e){e.is=function(e){var t=e;return!!t&&di.objectLiteral(t)&&(Ln.is(t.contents)||qn.is(t.contents)||di.typedArray(t.contents,qn.is))&&(void 0===e.range||an.is(e.range))}}(Kn||(Kn={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(Gn||(Gn={})),function(e){e.create=function(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];var r={label:e};return di.defined(t)&&(r.documentation=t),di.defined(n)?r.parameters=n:r.parameters=[],r}}(Jn||(Jn={})),function(e){e.Text=1,e.Read=2,e.Write=3}(Hn||(Hn={})),function(e){e.create=function(e,t){var n={range:e};return di.number(t)&&(n.kind=t),n}}(Yn||(Yn={})),function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(Xn||(Xn={})),function(e){e.Deprecated=1}(Zn||(Zn={})),function(e){e.create=function(e,t,n,i,r){var o={name:e,kind:t,location:{uri:i,range:n}};return r&&(o.containerName=r),o}}(Qn||(Qn={})),function(e){e.create=function(e,t,n,i,r,o){var s={name:e,detail:t,kind:n,range:i,selectionRange:r};return void 0!==o&&(s.children=o),s},e.is=function(e){var t=e;return t&&di.string(t.name)&&di.number(t.kind)&&an.is(t.range)&&an.is(t.selectionRange)&&(void 0===t.detail||di.string(t.detail))&&(void 0===t.deprecated||di.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))}}(ei||(ei={})),function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"}(ti||(ti={})),function(e){e.create=function(e,t){var n={diagnostics:e};return void 0!==t&&null!==t&&(n.only=t),n},e.is=function(e){var t=e;return di.defined(t)&&di.typedArray(t.diagnostics,yn.is)&&(void 0===t.only||di.typedArray(t.only,di.string))}}(ni||(ni={})),function(e){e.create=function(e,t,n){var i={title:e};return vn.is(t)?i.command=t:i.edit=t,void 0!==n&&(i.kind=n),i},e.is=function(e){var t=e;return t&&di.string(t.title)&&(void 0===t.diagnostics||di.typedArray(t.diagnostics,yn.is))&&(void 0===t.kind||di.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||vn.is(t.command))&&(void 0===t.isPreferred||di.boolean(t.isPreferred))&&(void 0===t.edit||Fn.is(t.edit))}}(ii||(ii={})),function(e){e.create=function(e,t){var n={range:e};return di.defined(t)&&(n.data=t),n},e.is=function(e){var t=e;return di.defined(t)&&an.is(t.range)&&(di.undefined(t.command)||vn.is(t.command))}}(ri||(ri={})),function(e){e.create=function(e,t){return{tabSize:e,insertSpaces:t}},e.is=function(e){var t=e;return di.defined(t)&&di.number(t.tabSize)&&di.boolean(t.insertSpaces)}}(oi||(oi={})),function(e){e.create=function(e,t,n){return{range:e,target:t,data:n}},e.is=function(e){var t=e;return di.defined(t)&&an.is(t.range)&&(di.undefined(t.target)||di.string(t.target))}}(si||(si={})),function(e){e.create=function(e,t){return{range:e,parent:t}},e.is=function(t){var n=t;return void 0!==n&&an.is(n.range)&&(void 0===n.parent||e.is(n.parent))}}(ai||(ai={}));var ci;!function(e){e.create=function(e,t,n,i){return new pi(e,t,n,i)},e.is=function(e){var t=e;return!!(di.defined(t)&&di.string(t.uri)&&(di.undefined(t.languageId)||di.string(t.languageId))&&di.number(t.lineCount)&&di.func(t.getText)&&di.func(t.positionAt)&&di.func(t.offsetAt))},e.applyEdits=function(e,t){for(var n=e.getText(),i=function e(t,n){if(t.length<=1)return t;var i=t.length/2|0,r=t.slice(0,i),o=t.slice(i);e(r,n),e(o,n);for(var s=0,a=0,l=0;s<r.length&&a<o.length;){var c=n(r[s],o[a]);t[l++]=c<=0?r[s++]:o[a++]}for(;s<r.length;)t[l++]=r[s++];for(;a<o.length;)t[l++]=o[a++];return t}(t,function(e,t){var n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}),r=n.length,o=i.length-1;o>=0;o--){var s=i[o],a=e.offsetAt(s.range.start),l=e.offsetAt(s.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,a)+s.newText+n.substring(l,n.length),r=a}return n}}(ci||(ci={}));var di,pi=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,n=!0,i=0;i<t.length;i++){n&&(e.push(i),n=!1);var r=t.charAt(i);n="\r"===r||"\n"===r,"\r"===r&&i+1<t.length&&"\n"===t.charAt(i+1)&&i++}n&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,i=t.length;if(0===i)return sn.create(0,e);for(;n<i;){var r=Math.floor((n+i)/2);t[r]>e?i=r:n=r+1}var o=n-1;return sn.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e}();!function(e){var t=Object.prototype.toString;e.defined=function(e){return void 0!==e},e.undefined=function(e){return void 0===e},e.boolean=function(e){return!0===e||!1===e},e.string=function(e){return"[object String]"===t.call(e)},e.number=function(e){return"[object Number]"===t.call(e)},e.func=function(e){return"[object Function]"===t.call(e)},e.objectLiteral=function(e){return null!==e&&"object"==typeof e},e.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)}}(di||(di={}));var hi,mi,ui,fi=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(t,n){for(var i=0,r=t;i<r.length;i++){var o=r[i];if(e.isIncremental(o)){var s=bi(o.range),a=this.offsetAt(s.start),l=this.offsetAt(s.end);this._content=this._content.substring(0,a)+o.text+this._content.substring(l,this._content.length);var c=Math.max(s.start.line,0),d=Math.max(s.end.line,0),p=this._lineOffsets,h=gi(o.text,!1,a);if(d-c===h.length)for(var m=0,u=h.length;m<u;m++)p[m+c+1]=h[m];else h.length<1e4?p.splice.apply(p,[c+1,d-c].concat(h)):this._lineOffsets=p=p.slice(0,c+1).concat(h,p.slice(d+1));var f=o.text.length-(l-a);if(0!==f)for(m=c+1+h.length,u=p.length;m<u;m++)p[m]=p[m]+f}else{if(!e.isFull(o))throw new Error("Unknown change event received");this._content=o.text,this._lineOffsets=void 0}}this._version=n},e.prototype.getLineOffsets=function(){return void 0===this._lineOffsets&&(this._lineOffsets=gi(this._content,!0)),this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,i=t.length;if(0===i)return{line:0,character:e};for(;n<i;){var r=Math.floor((n+i)/2);t[r]>e?i=r:n=r+1}var o=n-1;return{line:o,character:e-t[o]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e.isIncremental=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)},e.isFull=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength},e}();function gi(e,t,n){void 0===n&&(n=0);for(var i=t?[n]:[],r=0;r<e.length;r++){var o=e.charCodeAt(r);13!==o&&10!==o||(13===o&&r+1<e.length&&10===e.charCodeAt(r+1)&&r++,i.push(n+r+1))}return i}function bi(e){var t=e.start,n=e.end;return t.line>n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function yi(e){var t=bi(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){e.create=function(e,t,n,i){return new fi(e,t,n,i)},e.update=function(e,t,n){if(e instanceof fi)return e.update(t,n),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){for(var n=e.getText(),i=function e(t,n){if(t.length<=1)return t;var i=t.length/2|0,r=t.slice(0,i),o=t.slice(i);e(r,n),e(o,n);for(var s=0,a=0,l=0;s<r.length&&a<o.length;){var c=n(r[s],o[a]);t[l++]=c<=0?r[s++]:o[a++]}for(;s<r.length;)t[l++]=r[s++];for(;a<o.length;)t[l++]=o[a++];return t}(t.map(yi),function(e,t){var n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}),r=n.length,o=i.length-1;o>=0;o--){var s=i[o],a=e.offsetAt(s.range.start),l=e.offsetAt(s.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,a)+s.newText+n.substring(l,n.length),r=a}return n}}(hi||(hi={})),(mi||(mi={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[On.Markdown,On.PlainText]}},hover:{contentFormat:[On.Markdown,On.PlainText]}}},function(e){e[e.Unknown=0]="Unknown",e[e.File=1]="File",e[e.Directory=2]="Directory",e[e.SymbolicLink=64]="SymbolicLink"}(ui||(ui={}));var vi,wi=ut(),xi=jn.Snippet;!function(e){e.Enums=" ",e.Normal="d",e.VendorPrefixed="x",e.Term="y",e.Variable="z"}(vi||(vi={}));var Si=function(){function e(e,t){void 0===e&&(e=null),this.variablePrefix=e,this.clientCapabilities=t,this.completionParticipants=[],this.valueTypes=[H.Identifier,H.Value,H.StringLiteral,H.URILiteral,H.NumericValue,H.HexColorValue,H.VariableName,H.Prio]}return e.prototype.configure=function(e){this.settings=e},e.prototype.getSymbolContext=function(){return this.symbolContext||(this.symbolContext=new In(this.styleSheet)),this.symbolContext},e.prototype.setCompletionParticipants=function(e){this.completionParticipants=e||[]},e.prototype.doComplete=function(e,t,n){this.offset=e.offsetAt(t),this.position=t,this.currentWord=function(e,t){var n=t-1,i=e.getText();for(;n>=0&&-1===' \t\n\r":{[()]},*>+'.indexOf(i.charAt(n));)n--;return i.substring(n+1,t)}(e,this.offset),this.defaultReplaceRange=an.create(sn.create(this.position.line,this.position.character-this.currentWord.length),this.position),this.textDocument=e,this.styleSheet=n;try{var i={isIncomplete:!1,items:[]};this.nodePath=ee(this.styleSheet,this.offset);for(var r=this.nodePath.length-1;r>=0;r--){var o=this.nodePath[r];if(o instanceof ge)this.getCompletionsForDeclarationProperty(o.getParent(),i);else if(o instanceof qe)o.parent instanceof tt?this.getVariableProposals(null,i):this.getCompletionsForExpression(o,i);else if(o instanceof de){var s=o.findAParent(H.ExtendsReference,H.Ruleset);if(s)if(s.type===H.ExtendsReference)this.getCompletionsForExtendsReference(s,o,i);else{var a=s;this.getCompletionsForSelector(a,a&&a.isNested(),i)}}else if(o instanceof ve)this.getCompletionsForFunctionArgument(o,o.getParent(),i);else if(o instanceof se)this.getCompletionsForDeclarations(o,i);else if(o instanceof et)this.getCompletionsForVariableDeclaration(o,i);else if(o instanceof le)this.getCompletionsForRuleSet(o,i);else if(o instanceof tt)this.getCompletionsForInterpolation(o,i);else if(o instanceof Fe)this.getCompletionsForFunctionDeclaration(o,i);else if(o instanceof rt)this.getCompletionsForMixinReference(o,i);else if(o instanceof be)this.getCompletionsForFunctionArgument(null,o,i);else if(o instanceof Oe)this.getCompletionsForSupports(o,i);else if(o instanceof Ve)this.getCompletionsForSupportsCondition(o,i);else if(o instanceof it)this.getCompletionsForExtendsReference(o,null,i);else if(o.type===H.URILiteral)this.getCompletionForUriLiteralValue(o,i);else if(null===o.parent)this.getCompletionForTopLevel(i);else{if(o.type!==H.StringLiteral||!this.isImportPathParent(o.parent.type))continue;this.getCompletionForImportPath(o,i)}if(i.items.length>0||this.offset>o.offset)return this.finalize(i)}return this.getCompletionsForStylesheet(i),0===i.items.length&&this.variablePrefix&&0===this.currentWord.indexOf(this.variablePrefix)&&this.getVariableProposals(null,i),this.finalize(i)}finally{this.position=null,this.currentWord=null,this.textDocument=null,this.styleSheet=null,this.symbolContext=null,this.defaultReplaceRange=null,this.nodePath=null}},e.prototype.isImportPathParent=function(e){return e===H.Import},e.prototype.finalize=function(e){return e.items.some(function(e){return!!e.sortText||"-"===e.label[0]})&&e.items.forEach(function(e,t){e.sortText?"-"===e.label[0]?e.sortText+=vi.VendorPrefixed+"_"+Ci(t):e.sortText+=vi.Normal+"_"+Ci(t):"-"===e.label[0]?e.sortText=vi.VendorPrefixed+"_"+Ci(t):e.sortText=vi.Normal+"_"+Ci(t)}),e},e.prototype.findInNodePath=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=this.nodePath.length-1;n>=0;n--){var i=this.nodePath[n];if(-1!==e.indexOf(i.type))return i}return null},e.prototype.getCompletionsForDeclarationProperty=function(e,t){return this.getPropertyProposals(e,t)},e.prototype.getPropertyProposals=function(e,t){var n=this,i=this.isTriggerPropertyValueCompletionEnabled,r=this.isCompletePropertyWithSemicolonEnabled;return en.getProperties().forEach(function(o){var s,a,l=!1;e?(s=n.getCompletionRange(e.getProperty()),a=o.name,vt(e.colonPosition)||(a+=": ",l=!0)):(s=n.getCompletionRange(null),a=o.name+": ",l=!0),!e&&r&&(a+="$0;"),e&&!e.semicolonPosition&&r&&n.offset>=n.textDocument.offsetAt(s.end)&&(a+="$0;");var c={label:o.name,documentation:Ct(o,n.doesSupportMarkdown()),tags:ki(o)?[Vn.Deprecated]:[],textEdit:wn.replace(s,a),insertTextFormat:jn.Snippet,kind:Un.Property};o.restrictions||(l=!1),i&&l&&(c.command={title:"Suggest",command:"editor.action.triggerSuggest"}),Mn(o.name,"-")&&(c.sortText=vi.VendorPrefixed),t.items.push(c)}),this.completionParticipants.forEach(function(e){e.onCssProperty&&e.onCssProperty({propertyName:n.currentWord,range:n.defaultReplaceRange})}),t},Object.defineProperty(e.prototype,"isTriggerPropertyValueCompletionEnabled",{get:function(){return!this.settings||!this.settings.completion||void 0===this.settings.completion.triggerPropertyValueCompletion||this.settings.completion.triggerPropertyValueCompletion},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isCompletePropertyWithSemicolonEnabled",{get:function(){return!this.settings||!this.settings.completion||void 0===this.settings.completion.completePropertyWithSemicolon||this.settings.completion.completePropertyWithSemicolon},enumerable:!0,configurable:!0}),e.prototype.getCompletionsForDeclarationValue=function(e,t){for(var n=this,i=e.getFullPropertyName(),r=en.getProperty(i),o=e.getValue()||null;o&&o.hasChildren();)o=o.findChildAtOffset(this.offset,!1);if(this.completionParticipants.forEach(function(e){e.onCssPropertyValue&&e.onCssPropertyValue({propertyName:i,propertyValue:n.currentWord,range:n.getCompletionRange(o)})}),r){if(r.restrictions)for(var s=0,a=r.restrictions;s<a.length;s++){switch(a[s]){case"color":this.getColorProposals(r,o,t);break;case"position":this.getPositionProposals(r,o,t);break;case"repeat":this.getRepeatStyleProposals(r,o,t);break;case"line-style":this.getLineStyleProposals(r,o,t);break;case"line-width":this.getLineWidthProposals(r,o,t);break;case"geometry-box":this.getGeometryBoxProposals(r,o,t);break;case"box":this.getBoxProposals(r,o,t);break;case"image":this.getImageProposals(r,o,t);break;case"timing-function":this.getTimingFunctionProposals(r,o,t);break;case"shape":this.getBasicShapeProposals(r,o,t)}}this.getValueEnumProposals(r,o,t),this.getCSSWideKeywordProposals(r,o,t),this.getUnitProposals(r,o,t)}else for(var l=0,c=function(e,t){var n=t.getFullPropertyName(),i=new Fi;function r(e){return(e instanceof re||e instanceof Qe||e instanceof He)&&i.add(e.getText()),!0}return e.accept(function(e){if(e instanceof fe&&e!==t&&function(e){var t=e.getFullPropertyName();return n===t}(e)){var i=e.getValue();i&&i.accept(r)}return!0}),i}(this.styleSheet,e).getEntries();l<c.length;l++){var d=c[l];t.items.push({label:d,textEdit:wn.replace(this.getCompletionRange(o),d),kind:Un.Value})}return this.getVariableProposals(o,t),this.getTermProposals(r,o,t),t},e.prototype.getValueEnumProposals=function(e,t,n){if(e.values)for(var i=0,r=e.values;i<r.length;i++){var o=r[i],s=o.name,a=void 0;if(Nn(s,")")){var l=s.lastIndexOf("(");-1!==l&&(s=s.substr(0,l)+"($1)",a=xi)}var c={label:o.name,documentation:Ct(o,this.doesSupportMarkdown()),tags:ki(e)?[Vn.Deprecated]:[],textEdit:wn.replace(this.getCompletionRange(t),s),sortText:vi.Enums,kind:Un.Value,insertTextFormat:a};n.items.push(c)}return n},e.prototype.getCSSWideKeywordProposals=function(e,t,n){for(var i in Kt)n.items.push({label:i,documentation:Kt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getCompletionsForInterpolation=function(e,t){return this.offset>=e.offset+2&&this.getVariableProposals(null,t),t},e.prototype.getVariableProposals=function(e,t){for(var n=0,i=this.getSymbolContext().findSymbolsAtOffset(this.offset,Y.Variable);n<i.length;n++){var r=i[n],o=Mn(r.name,"--")?"var("+r.name+")":r.name,s={label:r.name,documentation:r.value?Pn(r.value):r.value,textEdit:wn.replace(this.getCompletionRange(e),o),kind:Un.Variable,sortText:vi.Variable};if("string"==typeof s.documentation&&Ti(s.documentation)&&(s.kind=Un.Color),r.node.type===H.FunctionParameter){var a=r.node.getParent();a.type===H.MixinDeclaration&&(s.detail=wi("completion.argument","argument from '{0}'",a.getName()))}t.items.push(s)}return t},e.prototype.getVariableProposalsForCSSVarFunction=function(e){for(var t=this.getSymbolContext().findSymbolsAtOffset(this.offset,Y.Variable),n=0,i=t=t.filter(function(e){return Mn(e.name,"--")});n<i.length;n++){var r=i[n],o={label:r.name,documentation:r.value?Pn(r.value):r.value,textEdit:wn.replace(this.getCompletionRange(null),r.name),kind:Un.Variable};"string"==typeof o.documentation&&Ti(o.documentation)&&(o.kind=Un.Color),e.items.push(o)}return e},e.prototype.getUnitProposals=function(e,t,n){var i="0";if(this.currentWord.length>0){var r=this.currentWord.match(/^-?\d[\.\d+]*/);r&&(i=r[0],n.isIncomplete=i.length===this.currentWord.length)}else 0===this.currentWord.length&&(n.isIncomplete=!0);if(t&&t.parent&&t.parent.type===H.Term&&(t=t.getParent()),e.restrictions)for(var o=0,s=e.restrictions;o<s.length;o++){var a=s[o],l=Yt[a];if(l)for(var c=0,d=l;c<d.length;c++){var p=i+d[c];n.items.push({label:p,textEdit:wn.replace(this.getCompletionRange(t),p),kind:Un.Unit})}}return n},e.prototype.getCompletionRange=function(e){if(e&&e.offset<=this.offset&&this.offset<=e.end){var t=-1!==e.end?this.textDocument.positionAt(e.end):this.position,n=this.textDocument.positionAt(e.offset);if(n.line===t.line)return an.create(n,t)}return this.defaultReplaceRange},e.prototype.getColorProposals=function(e,t,n){for(var i in Tt)n.items.push({label:i,documentation:Tt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Color});for(var i in Rt)n.items.push({label:i,documentation:Rt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});var r=new Fi;this.styleSheet.acceptVisitor(new Di(r,this.offset));for(var o=0,s=r.getEntries();o<s.length;o++){i=s[o];n.items.push({label:i,textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Color})}for(var a=function(e){var i=1,r=e.func.replace(/\[?\$(\w+)\]?/g,function(e,t){return"${"+i+++":"+t+"}"});n.items.push({label:e.func.substr(0,e.func.indexOf("(")),detail:e.func,documentation:e.desc,textEdit:wn.replace(l.getCompletionRange(t),r),insertTextFormat:xi,kind:Un.Function})},l=this,c=0,d=Dt;c<d.length;c++){a(d[c])}return n},e.prototype.getPositionProposals=function(e,t,n){for(var i in Ut)n.items.push({label:i,documentation:Ut[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getRepeatStyleProposals=function(e,t,n){for(var i in jt)n.items.push({label:i,documentation:jt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getLineStyleProposals=function(e,t,n){for(var i in Vt)n.items.push({label:i,documentation:Vt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getLineWidthProposals=function(e,t,n){for(var i=0,r=Bt;i<r.length;i++){var o=r[i];n.items.push({label:o,textEdit:wn.replace(this.getCompletionRange(t),o),kind:Un.Value})}return n},e.prototype.getGeometryBoxProposals=function(e,t,n){for(var i in qt)n.items.push({label:i,documentation:qt[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getBoxProposals=function(e,t,n){for(var i in $t)n.items.push({label:i,documentation:$t[i],textEdit:wn.replace(this.getCompletionRange(t),i),kind:Un.Value});return n},e.prototype.getImageProposals=function(e,t,n){for(var i in Gt){var r=zi(i);n.items.push({label:i,documentation:Gt[i],textEdit:wn.replace(this.getCompletionRange(t),r),kind:Un.Function,insertTextFormat:i!==r?xi:void 0})}return n},e.prototype.getTimingFunctionProposals=function(e,t,n){for(var i in Jt){var r=zi(i);n.items.push({label:i,documentation:Jt[i],textEdit:wn.replace(this.getCompletionRange(t),r),kind:Un.Function,insertTextFormat:i!==r?xi:void 0})}return n},e.prototype.getBasicShapeProposals=function(e,t,n){for(var i in Ht){var r=zi(i);n.items.push({label:i,documentation:Ht[i],textEdit:wn.replace(this.getCompletionRange(t),r),kind:Un.Function,insertTextFormat:i!==r?xi:void 0})}return n},e.prototype.getCompletionsForStylesheet=function(e){var t=this.styleSheet.findFirstChildBeforeOffset(this.offset);return t?t instanceof le?this.getCompletionsForRuleSet(t,e):t instanceof Oe?this.getCompletionsForSupports(t,e):e:this.getCompletionForTopLevel(e)},e.prototype.getCompletionForTopLevel=function(e){var t=this;return en.getAtDirectives().forEach(function(n){e.items.push({label:n.name,textEdit:wn.replace(t.getCompletionRange(null),n.name),documentation:Ct(n,t.doesSupportMarkdown()),tags:ki(n)?[Vn.Deprecated]:[],kind:Un.Keyword})}),this.getCompletionsForSelector(null,!1,e),e},e.prototype.getCompletionsForRuleSet=function(e,t){var n=e.getDeclarations();return n&&n.endsWith("}")&&this.offset>=n.end?this.getCompletionForTopLevel(t):!n||this.offset<=n.offset?this.getCompletionsForSelector(e,e.isNested(),t):this.getCompletionsForDeclarations(e.getDeclarations(),t)},e.prototype.getCompletionsForSelector=function(e,t,n){var i=this,r=this.findInNodePath(H.PseudoSelector,H.IdentifierSelector,H.ClassSelector,H.ElementNameSelector);if(!r&&this.offset-this.currentWord.length>0&&":"===this.textDocument.getText()[this.offset-this.currentWord.length-1]&&(this.currentWord=":"+this.currentWord,this.defaultReplaceRange=an.create(sn.create(this.position.line,this.position.character-this.currentWord.length),this.position)),en.getPseudoClasses().forEach(function(e){var t=zi(e.name),o={label:e.name,textEdit:wn.replace(i.getCompletionRange(r),t),documentation:Ct(e,i.doesSupportMarkdown()),tags:ki(e)?[Vn.Deprecated]:[],kind:Un.Function,insertTextFormat:e.name!==t?xi:void 0};Mn(e.name,":-")&&(o.sortText=vi.VendorPrefixed),n.items.push(o)}),en.getPseudoElements().forEach(function(e){var t=zi(e.name),o={label:e.name,textEdit:wn.replace(i.getCompletionRange(r),t),documentation:Ct(e,i.doesSupportMarkdown()),tags:ki(e)?[Vn.Deprecated]:[],kind:Un.Function,insertTextFormat:e.name!==t?xi:void 0};Mn(e.name,"::-")&&(o.sortText=vi.VendorPrefixed),n.items.push(o)}),!t){for(var o=0,s=Xt;o<s.length;o++){var a=s[o];n.items.push({label:a,textEdit:wn.replace(this.getCompletionRange(r),a),kind:Un.Keyword})}for(var l=0,c=Zt;l<c.length;l++){a=c[l];n.items.push({label:a,textEdit:wn.replace(this.getCompletionRange(r),a),kind:Un.Keyword})}}var d={};d[this.currentWord]=!0;var p=this.textDocument.getText();if(this.styleSheet.accept(function(e){if(e.type===H.SimpleSelector&&e.length>0){var t=p.substr(e.offset,e.length);return"."!==t.charAt(0)||d[t]||(d[t]=!0,n.items.push({label:t,textEdit:wn.replace(i.getCompletionRange(r),t),kind:Un.Keyword})),!1}return!0}),e&&e.isNested()){var h=e.getSelectors().findFirstChildBeforeOffset(this.offset);h&&0===e.getSelectors().getChildren().indexOf(h)&&this.getPropertyProposals(null,n)}return n},e.prototype.getCompletionsForDeclarations=function(e,t){if(!e||this.offset===e.offset)return t;var n=e.findFirstChildBeforeOffset(this.offset);if(!n)return this.getCompletionsForDeclarationProperty(null,t);if(n instanceof he){var i=n;if(!vt(i.colonPosition)||this.offset<=i.colonPosition)return this.getCompletionsForDeclarationProperty(i,t);if(vt(i.semicolonPosition)&&i.semicolonPosition<this.offset)return this.offset===i.semicolonPosition+1?t:this.getCompletionsForDeclarationProperty(null,t);if(i instanceof fe)return this.getCompletionsForDeclarationValue(i,t)}else n instanceof it?this.getCompletionsForExtendsReference(n,null,t):this.currentWord&&"@"===this.currentWord[0]&&this.getCompletionsForDeclarationProperty(null,t);return t},e.prototype.getCompletionsForVariableDeclaration=function(e,t){return this.offset&&vt(e.colonPosition)&&this.offset>e.colonPosition&&this.getVariableProposals(e.getValue(),t),t},e.prototype.getCompletionsForExpression=function(e,t){var n=e.getParent();if(n instanceof ve)return this.getCompletionsForFunctionArgument(n,n.getParent(),t),t;var i=e.findParent(H.Declaration);if(!i)return this.getTermProposals(null,null,t),t;var r=e.findChildAtOffset(this.offset,!0);return r?r instanceof Qe||r instanceof re?this.getCompletionsForDeclarationValue(i,t):t:this.getCompletionsForDeclarationValue(i,t)},e.prototype.getCompletionsForFunctionArgument=function(e,t,n){var i=t.getIdentifier();return i&&i.matches("var")&&(t.getArguments().hasChildren()&&t.getArguments().getChild(0)!==e||this.getVariableProposalsForCSSVarFunction(n)),n},e.prototype.getCompletionsForFunctionDeclaration=function(e,t){var n=e.getDeclarations();return n&&this.offset>n.offset&&this.offset<n.end&&this.getTermProposals(null,null,t),t},e.prototype.getCompletionsForMixinReference=function(e,t){for(var n=0,i=this.getSymbolContext().findSymbolsAtOffset(this.offset,Y.Mixin);n<i.length;n++){var r=i[n];r.node instanceof ot&&t.items.push(this.makeTermProposal(r,r.node.getParameters(),null))}return t},e.prototype.getTermProposals=function(e,t,n){for(var i=0,r=this.getSymbolContext().findSymbolsAtOffset(this.offset,Y.Function);i<r.length;i++){var o=r[i];o.node instanceof Fe&&n.items.push(this.makeTermProposal(o,o.node.getParameters(),t))}return n},e.prototype.makeTermProposal=function(e,t,n){e.node;var i=t.getChildren().map(function(e){return e instanceof ye?e.getName():e.getText()}),r=e.name+"("+i.map(function(e,t){return"${"+(t+1)+":"+e+"}"}).join(", ")+")";return{label:e.name,detail:e.name+"("+i.join(", ")+")",textEdit:wn.replace(this.getCompletionRange(n),r),insertTextFormat:xi,kind:Un.Function,sortText:vi.Term}},e.prototype.getCompletionsForSupportsCondition=function(e,t){var n=e.findFirstChildBeforeOffset(this.offset);if(n){if(n instanceof fe)return!vt(n.colonPosition)||this.offset<=n.colonPosition?this.getCompletionsForDeclarationProperty(n,t):this.getCompletionsForDeclarationValue(n,t);if(n instanceof Ve)return this.getCompletionsForSupportsCondition(n,t)}return vt(e.lParent)&&this.offset>e.lParent&&(!vt(e.rParent)||this.offset<=e.rParent)?this.getCompletionsForDeclarationProperty(null,t):t},e.prototype.getCompletionsForSupports=function(e,t){var n=e.getDeclarations();if(!n||this.offset<=n.offset){var i=e.findFirstChildBeforeOffset(this.offset);return i instanceof Ve?this.getCompletionsForSupportsCondition(i,t):t}return this.getCompletionForTopLevel(t)},e.prototype.getCompletionsForExtendsReference=function(e,t,n){return n},e.prototype.getCompletionForUriLiteralValue=function(e,t){var n,i,r;if(e.hasChildren()){var o=e.getChild(0);n=o.getText(),i=this.position,r=this.getCompletionRange(o)}else{n="",i=this.position;var s=this.textDocument.positionAt(e.offset+"url(".length);r=an.create(s,s)}return this.completionParticipants.forEach(function(e){e.onCssURILiteralValue&&e.onCssURILiteralValue({uriValue:n,position:i,range:r})}),t},e.prototype.getCompletionForImportPath=function(e,t){var n=this;return this.completionParticipants.forEach(function(t){t.onCssImportPath&&t.onCssImportPath({pathValue:e.getText(),position:n.position,range:n.getCompletionRange(e)})}),t},e.prototype.doesSupportMarkdown=function(){if(!vt(this.supportsMarkdown)){if(!vt(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.completion;this.supportsMarkdown=e&&e.completionItem&&Array.isArray(e.completionItem.documentationFormat)&&-1!==e.completionItem.documentationFormat.indexOf(On.Markdown)}return this.supportsMarkdown},e}();function ki(e){return!(!e.status||"nonstandard"!==e.status&&"obsolete"!==e.status)}function Ci(e){var t=e.toString();switch(t.length){case 4:return t;case 3:return"0"+t;case 2:return"00"+t;case 1:return"000"+t;default:return"0000"}}var Fi=function(){function e(){this.entries={}}return e.prototype.add=function(e){this.entries[e]=!0},e.prototype.getEntries=function(){return Object.keys(this.entries)},e}();function zi(e){return e.replace(/\(\)$/,"($1)")}var Di=function(){function e(e,t){this.entries=e,this.currentOffset=t}return e.prototype.visitNode=function(e){return(e instanceof He||e instanceof be&&It(e))&&(this.currentOffset<e.offset||e.end<this.currentOffset)&&this.entries.add(e.getText()),!0},e}();function Ti(e){return e.toLowerCase()in Tt||/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(e)}var Ri,Ei=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Ii=ut(),Mi=function(){function e(){this.parent=null,this.children=null,this.attributes=null}return e.prototype.findAttribute=function(e){if(this.attributes)for(var t=0,n=this.attributes;t<n.length;t++){var i=n[t];if(i.name===e)return i.value}return null},e.prototype.addChild=function(t){t instanceof e&&(t.parent=this),this.children||(this.children=[]),this.children.push(t)},e.prototype.append=function(e){if(this.attributes){var t=this.attributes[this.attributes.length-1];t.value=t.value+e}},e.prototype.prepend=function(e){if(this.attributes){var t=this.attributes[0];t.value=e+t.value}},e.prototype.findRoot=function(){for(var e=this;e.parent&&!(e.parent instanceof Ni);)e=e.parent;return e},e.prototype.removeChild=function(e){if(this.children){var t=this.children.indexOf(e);if(-1!==t)return this.children.splice(t,1),!0}return!1},e.prototype.addAttr=function(e,t){this.attributes||(this.attributes=[]);for(var n=0,i=this.attributes;n<i.length;n++){var r=i[n];if(r.name===e)return void(r.value+=" "+t)}this.attributes.push({name:e,value:t})},e.prototype.clone=function(t){void 0===t&&(t=!0);var n=new e;if(this.attributes){n.attributes=[];for(var i=0,r=this.attributes;i<r.length;i++){var o=r[i];n.addAttr(o.name,o.value)}}if(t&&this.children){n.children=[];for(var s=0;s<this.children.length;s++)n.addChild(this.children[s].clone())}return n},e.prototype.cloneWithParent=function(){var e=this.clone(!1);!this.parent||this.parent instanceof Ni||this.parent.cloneWithParent().addChild(e);return e},e}(),Ni=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Ei(t,e),t}(Mi),Pi=function(e){function t(t){var n=e.call(this)||this;return n.addAttr("name",t),n}return Ei(t,e),t}(Mi),_i=function(){function e(e){this.quote=e,this.result=[]}return e.prototype.print=function(e){return this.result=[],e instanceof Ni?e.children&&this.doPrint(e.children,0):this.doPrint([e],0),[{language:"html",value:this.result.join("\n")}]},e.prototype.doPrint=function(e,t){for(var n=0,i=e;n<i.length;n++){var r=i[n];this.doPrintElement(r,t),r.children&&this.doPrint(r.children,t+1)}},e.prototype.writeLine=function(e,t){var n=new Array(e+1).join(" ");this.result.push(n+t)},e.prototype.doPrintElement=function(e,t){var n=e.findAttribute("name");if(e instanceof Pi||"…"===n)this.writeLine(t,n);else{var i=["<"];if(n?i.push(n):i.push("element"),e.attributes)for(var r=0,o=e.attributes;r<o.length;r++){var s=o[r];if("name"!==s.name){i.push(" "),i.push(s.name);var a=s.value;a&&(i.push("="),i.push(Ri.ensure(a,this.quote)))}}i.push(">"),this.writeLine(t,i.join(""))}},e}();!function(e){function t(e){var t=e.match(/^['"](.*)["']$/);return t?t[1]:e}e.ensure=function(e,n){return n+t(e)+n},e.remove=t}(Ri||(Ri={}));var Ai=function(){return function(){this.id=0,this.attr=0,this.tag=0}}();function Wi(e,t){for(var n=new Mi,i=0,r=e.getChildren();i<r.length;i++){var o=r[i];switch(o.type){case H.SelectorCombinator:if(t){var s=o.getText().split("&");if(1===s.length){n.addAttr("name",s[0]);break}if(n=t.cloneWithParent(),s[0])n.findRoot().prepend(s[0]);for(var a=1;a<s.length;a++){if(a>1){var l=t.cloneWithParent();n.addChild(l.findRoot()),n=l}n.append(s[a])}}break;case H.SelectorPlaceholder:if(o.matches("@at-root"))return n;case H.ElementNameSelector:var c=o.getText();n.addAttr("name","*"===c?"element":Oi(c));break;case H.ClassSelector:n.addAttr("class",Oi(o.getText().substring(1)));break;case H.IdentifierSelector:n.addAttr("id",Oi(o.getText().substring(1)));break;case H.MixinDeclaration:n.addAttr("class",o.getName());break;case H.PseudoSelector:n.addAttr(Oi(o.getText()),"");break;case H.AttributeSelector:var d=o,p=d.getIdentifier();if(p){var h=d.getValue(),m=d.getOperator(),u=void 0;if(h&&m)switch(Oi(m.getText())){case"|=":u=Ri.remove(Oi(h.getText()))+"-…";break;case"^=":u=Ri.remove(Oi(h.getText()))+"…";break;case"$=":u="…"+Ri.remove(Oi(h.getText()));break;case"~=":u=" … "+Ri.remove(Oi(h.getText()))+" … ";break;case"*=":u="…"+Ri.remove(Oi(h.getText()))+"…";break;default:u=Ri.remove(Oi(h.getText()))}n.addAttr(Oi(p.getText()),u)}}}return n}function Oi(e){var t=new X;t.setSource(e);var n=t.scanUnquotedString();return n?n.text:e}function Li(e){var t=new Ai;return function e(n){n.getChildren().forEach(function(n){switch(n.type){case H.IdentifierSelector:t.id++;break;case H.ClassSelector:case H.AttributeSelector:t.attr++;break;case H.ElementNameSelector:if(n.matches("*"))break;t.tag++;break;case H.PseudoSelector:var i=n.getText();if(function(e){var t=e.match(/^::?([\w-]+)/);return!!t&&!!en.getPseudoElement("::"+t[1])}(i))t.tag++;else{if(i.match(/^:not/i))break;t.attr++}}n.getChildren().length>0&&e(n)})}(e),Ii("specificity","[Selector Specificity](https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity): ({0}, {1}, {2})",t.id,t.attr,t.tag)}function Ui(e){var t=function(e){if(e.matches("@at-root"))return null;var t=new Ni,n=[],i=e.getParent();if(i instanceof le)for(var r=i.getParent();r&&!Bi(r);){if(r instanceof le){if(r.getSelectors().matches("@at-root"))break;n.push(r)}r=r.getParent()}for(var o=new Vi(t),s=n.length-1;s>=0;s--){var a=n[s].getSelectors().getChild(0);a&&o.processSelector(a)}return o.processSelector(e),t}(e);if(t){var n=new _i('"').print(t);return n.push(Li(e)),n}return[]}function ji(e){var t=Wi(e),n=new _i('"').print(t);return n.push(Li(e)),n}var Vi=function(){function e(e){this.prev=null,this.element=e}return e.prototype.processSelector=function(e){var t=null;if(!(this.element instanceof Ni)&&e.getChildren().some(function(e){return e.hasChildren()&&e.getChild(0).type===H.SelectorCombinator})){var n=this.element.findRoot();n.parent instanceof Ni&&(t=this.element,this.element=n.parent,this.element.removeChild(n),this.prev=null)}for(var i=0,r=e.getChildren();i<r.length;i++){var o=r[i];if(o instanceof de){if(this.prev instanceof de){var s=new Pi("…");this.element.addChild(s),this.element=s}else this.prev&&(this.prev.matches("+")||this.prev.matches("~"))&&this.element.parent&&(this.element=this.element.parent);this.prev&&this.prev.matches("~")&&(this.element.addChild(Wi(o)),this.element.addChild(new Pi("⋮")));var a=Wi(o,t),l=a.findRoot();this.element.addChild(l),this.element=a}(o instanceof de||o.type===H.SelectorCombinatorParent||o.type===H.SelectorCombinatorShadowPiercingDescendant||o.type===H.SelectorCombinatorSibling||o.type===H.SelectorCombinatorAllSiblings)&&(this.prev=o)}},e}();function Bi(e){switch(e.type){case H.MixinDeclaration:case H.Stylesheet:return!0}return!1}!function(){function e(e){this.clientCapabilities=e}e.prototype.doHover=function(e,t,n){function i(t){return an.create(e.positionAt(t.offset),e.positionAt(t.end))}for(var r=ee(n,e.offsetAt(t)),o=null,s=0;s<r.length;s++){var a=r[s];if(a instanceof ce){o={contents:Ui(a),range:i(a)};break}if(a instanceof de){Mn(a.getText(),"@")||(o={contents:ji(a),range:i(a)});break}if(a instanceof fe){var l=a.getFullPropertyName();(d=en.getProperty(l))&&(o={contents:Ct(d,this.doesSupportMarkdown()),range:i(a)})}else if(a instanceof st){var c=a.getText();(d=en.getAtDirective(c))&&(o={contents:Ct(d,this.doesSupportMarkdown()),range:i(a)})}else if(a instanceof ne&&a.type===H.PseudoSelector){var d,p=a.getText();(d="::"===p.slice(0,2)?en.getPseudoElement(p):en.getPseudoClass(p))&&(o={contents:Ct(d,this.doesSupportMarkdown()),range:i(a)})}else;}return o&&(o.contents=this.convertContents(o.contents)),o},e.prototype.convertContents=function(e){return this.doesSupportMarkdown()?e:"string"==typeof e?e:"kind"in e?{kind:"plaintext",value:e.value}:Array.isArray(e)?e.map(function(e){return"string"==typeof e?e:e.value}):e.value},e.prototype.doesSupportMarkdown=function(){if(!vt(this.supportsMarkdown)){if(!vt(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.hover;this.supportsMarkdown=e&&e.contentFormat&&Array.isArray(e.contentFormat)&&-1!==e.contentFormat.indexOf(On.Markdown)}return this.supportsMarkdown}}();var $i=function(e,t,n,i){return new(n||(n=Promise))(function(r,o){function s(e){try{l(i.next(e))}catch(e){o(e)}}function a(e){try{l(i.throw(e))}catch(e){o(e)}}function l(e){e.done?r(e.value):function(e){return e instanceof n?e:new n(function(t){t(e)})}(e.value).then(s,a)}l((i=i.apply(e,t||[])).next())})},qi=function(e,t){var n,i,r,o,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,i=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(r=(r=s.trys).length>0&&r[r.length-1])&&(6===o[0]||2===o[0])){s=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){s.label=o[1];break}if(6===o[0]&&s.label<r[1]){s.label=r[1],r=o;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(o);break}r[2]&&s.ops.pop(),s.trys.pop();continue}o=t.call(e,s)}catch(e){o=[6,e],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}},Ki=ut(),Gi=function(){function e(){}return e.prototype.findDefinition=function(e,t,n){var i=new In(n),r=Q(n,e.offsetAt(t));if(!r)return null;var o=i.findSymbolFromNode(r);return o?{uri:e.uri,range:Hi(o.node,e)}:null},e.prototype.findReferences=function(e,t,n){return this.findDocumentHighlights(e,t,n).map(function(t){return{uri:e.uri,range:t.range}})},e.prototype.findDocumentHighlights=function(e,t,n){var i=[],r=Q(n,e.offsetAt(t));if(!r||r.type===H.Stylesheet||r.type===H.Declarations)return i;r.type===H.Identifier&&r.parent&&r.parent.type===H.ClassSelector&&(r=r.parent);var o=new In(n),s=o.findSymbolFromNode(r),a=r.getText();return n.accept(function(t){if(s){if(o.matchesSymbol(t,s))return i.push({kind:Yi(t),range:Hi(t,e)}),!1}else r&&r.type===t.type&&t.matches(a)&&i.push({kind:Yi(t),range:Hi(t,e)});return!0}),i},e.prototype.isRawStringDocumentLinkNode=function(e){return e.type===H.Import},e.prototype.findDocumentLinks=function(e,t,n){var i=this,r=[];return t.accept(function(t){if(t.type===H.URILiteral)return(o=function(e,t,n){if(0===t.getChildren().length)return null;var i=t.getChild(0);return Ji(e,i,n)}(e,t,n))&&r.push(o),!1;if(t.parent&&i.isRawStringDocumentLinkNode(t.parent)){var o,s=t.getText();if(Mn(s,"'")||Mn(s,'"'))(o=Ji(e,t,n))&&r.push(o);return!1}return!0}),r},e.prototype.findDocumentLinks2=function(e,t,n){return $i(this,void 0,void 0,function(){return qi(this,function(i){return[2,this.findDocumentLinks(e,t,n)]})})},e.prototype.findDocumentSymbols=function(e,t){var n=[];return t.accept(function(t){var i={name:null,kind:Xn.Class,location:null},r=t;if(t instanceof ce)return i.name=t.getText(),(r=t.findAParent(H.Ruleset,H.ExtendsReference))&&(i.location=ln.create(e.uri,Hi(r,e)),n.push(i)),!1;if(t instanceof et)i.name=t.getName(),i.kind=Xn.Variable;else if(t instanceof ot)i.name=t.getName(),i.kind=Xn.Method;else if(t instanceof Fe)i.name=t.getName(),i.kind=Xn.Function;else if(t instanceof Re)i.name=Ki("literal.keyframes","@keyframes {0}",t.getName());else if(t instanceof De)i.name=Ki("literal.fontface","@font-face");else if(t instanceof We){var o=t.getChild(0);o instanceof Ue&&(i.name="@media "+o.getText(),i.kind=Xn.Module)}return i.name&&(i.location=ln.create(e.uri,Hi(r,e)),n.push(i)),!0}),n},e.prototype.findDocumentColors=function(e,t){var n=[];return t.accept(function(t){var i=function(e,t){var n=Lt(e);if(n){var i=Hi(e,t);return{color:n,range:i}}return null}(t,e);return i&&n.push(i),!0}),n},e.prototype.getColorPresentations=function(e,t,n,i){var r,o=[],s=Math.round(255*n.red),a=Math.round(255*n.green),l=Math.round(255*n.blue);r=1===n.alpha?"rgb("+s+", "+a+", "+l+")":"rgba("+s+", "+a+", "+l+", "+n.alpha+")",o.push({label:r,textEdit:wn.replace(i,r)}),r=1===n.alpha?"#"+Xi(s)+Xi(a)+Xi(l):"#"+Xi(s)+Xi(a)+Xi(l)+Xi(Math.round(255*n.alpha)),o.push({label:r,textEdit:wn.replace(i,r)});var c=function(e){var t=e.red,n=e.green,i=e.blue,r=e.alpha,o=Math.max(t,n,i),s=Math.min(t,n,i),a=0,l=0,c=(s+o)/2,d=o-s;if(d>0){switch(l=Math.min(c<=.5?d/(2*c):d/(2-2*c),1),o){case t:a=(n-i)/d+(n<i?6:0);break;case n:a=(i-t)/d+2;break;case i:a=(t-n)/d+4}a*=60,a=Math.round(a)}return{h:a,s:l,l:c,a:r}}(n);return r=1===c.a?"hsl("+c.h+", "+Math.round(100*c.s)+"%, "+Math.round(100*c.l)+"%)":"hsla("+c.h+", "+Math.round(100*c.s)+"%, "+Math.round(100*c.l)+"%, "+c.a+")",o.push({label:r,textEdit:wn.replace(i,r)}),o},e.prototype.doRename=function(e,t,n,i){var r,o=this.findDocumentHighlights(e,t,i).map(function(e){return wn.replace(e.range,n)});return{changes:(r={},r[e.uri]=o,r)}},e}();function Ji(e,t,n){if(!t)return null;var i=t.getText(),r=Hi(t,e);return r.start.line===r.end.line&&r.start.character===r.end.character?null:((Mn(i,"'")||Mn(i,'"'))&&(i=i.slice(1,-1)),{range:r,target:Mn(i,"http://")||Mn(i,"https://")?i:/^\w+:\/\//g.test(i)?i:n.resolveReference(i,e.uri)})}function Hi(e,t){return an.create(t.positionAt(e.offset),t.positionAt(e.end))}function Yi(e){if(e.type===H.Selector)return Hn.Write;if(e instanceof re&&e.parent&&e.parent instanceof ge&&e.isCustomProperty)return Hn.Write;if(e.parent)switch(e.parent.type){case H.FunctionDeclaration:case H.MixinDeclaration:case H.Keyframe:case H.VariableDeclaration:case H.FunctionParameter:return Hn.Write}return Hn.Read}function Xi(e){var t=e.toString(16);return 2!==t.length?"0"+t:t}var Zi=ut(),Qi=te.Warning,er=te.Error,tr=te.Ignore,nr=function(){return function(e,t,n){this.id=e,this.message=t,this.defaultValue=n}}(),ir=function(){return function(e,t,n){this.id=e,this.message=t,this.defaultValue=n}}(),rr={AllVendorPrefixes:new nr("compatibleVendorPrefixes",Zi("rule.vendorprefixes.all","When using a vendor-specific prefix make sure to also include all other vendor-specific properties"),tr),IncludeStandardPropertyWhenUsingVendorPrefix:new nr("vendorPrefix",Zi("rule.standardvendorprefix.all","When using a vendor-specific prefix also include the standard property"),Qi),DuplicateDeclarations:new nr("duplicateProperties",Zi("rule.duplicateDeclarations","Do not use duplicate style definitions"),tr),EmptyRuleSet:new nr("emptyRules",Zi("rule.emptyRuleSets","Do not use empty rulesets"),Qi),ImportStatemement:new nr("importStatement",Zi("rule.importDirective","Import statements do not load in parallel"),tr),BewareOfBoxModelSize:new nr("boxModel",Zi("rule.bewareOfBoxModelSize","Do not use width or height when using padding or border"),tr),UniversalSelector:new nr("universalSelector",Zi("rule.universalSelector","The universal selector (*) is known to be slow"),tr),ZeroWithUnit:new nr("zeroUnits",Zi("rule.zeroWidthUnit","No unit for zero needed"),tr),RequiredPropertiesForFontFace:new nr("fontFaceProperties",Zi("rule.fontFaceProperties","@font-face rule must define 'src' and 'font-family' properties"),Qi),HexColorLength:new nr("hexColorLength",Zi("rule.hexColor","Hex colors must consist of three, four, six or eight hex numbers"),er),ArgsInColorFunction:new nr("argumentsInColorFunction",Zi("rule.colorFunction","Invalid number of parameters"),er),UnknownProperty:new nr("unknownProperties",Zi("rule.unknownProperty","Unknown property."),Qi),UnknownAtRules:new nr("unknownAtRules",Zi("rule.unknownAtRules","Unknown at-rule."),Qi),IEStarHack:new nr("ieHack",Zi("rule.ieHack","IE hacks are only necessary when supporting IE7 and older"),tr),UnknownVendorSpecificProperty:new nr("unknownVendorSpecificProperties",Zi("rule.unknownVendorSpecificProperty","Unknown vendor specific property."),tr),PropertyIgnoredDueToDisplay:new nr("propertyIgnoredDueToDisplay",Zi("rule.propertyIgnoredDueToDisplay","Property is ignored due to the display."),Qi),AvoidImportant:new nr("important",Zi("rule.avoidImportant","Avoid using !important. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored."),tr),AvoidFloat:new nr("float",Zi("rule.avoidFloat","Avoid using 'float'. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes."),tr),AvoidIdSelector:new nr("idSelector",Zi("rule.avoidIdSelector","Selectors should not contain IDs because these rules are too tightly coupled with the HTML."),tr)},or={ValidProperties:new ir("validProperties",Zi("rule.validProperties","A list of properties that are not validated against the `unknownProperties` rule."),[])},sr=function(){function e(e){void 0===e&&(e={}),this.conf=e}return e.prototype.getRule=function(e){if(this.conf.hasOwnProperty(e.id)){var t=function(e){switch(e){case"ignore":return te.Ignore;case"warning":return te.Warning;case"error":return te.Error}return null}(this.conf[e.id]);if(t)return t}return e.defaultValue},e.prototype.getSetting=function(e){return this.conf[e.id]},e}();var ar=ut(),lr=(function(){function e(){}e.prototype.doCodeActions=function(e,t,n,i){return this.doCodeActions2(e,t,n,i).map(function(t){var n=t.edit&&t.edit.documentChanges&&t.edit.documentChanges[0];return vn.create(t.title,"_css.applyCodeAction",e.uri,e.version,n&&n.edits)})},e.prototype.doCodeActions2=function(e,t,n,i){var r=[];if(n.diagnostics)for(var o=0,s=n.diagnostics;o<s.length;o++){var a=s[o];this.appendFixesForMarker(e,i,a,r)}return r},e.prototype.getFixesForUnknownProperty=function(e,t,n,i){var r=t.getName(),o=[];en.getProperties().forEach(function(e){var t=function(e,t,n){void 0===n&&(n=4);var i=Math.abs(e.length-t.length);if(i>n)return 0;var r,o,s=[],a=[];for(r=0;r<t.length+1;++r)a.push(0);for(r=0;r<e.length+1;++r)s.push(a);for(r=1;r<e.length+1;++r)for(o=1;o<t.length+1;++o)e[r-1]===t[o-1]?s[r][o]=s[r-1][o-1]+1:s[r][o]=Math.max(s[r-1][o],s[r][o-1]);return s[e.length][t.length]-Math.sqrt(i)}(r,e.name);t>=r.length/2&&o.push({property:e.name,score:t})}),o.sort(function(e,t){return t.score-e.score});for(var s=3,a=0,l=o;a<l.length;a++){var c=l[a].property,d=ar("css.codeaction.rename","Rename to '{0}'",c),p=wn.replace(n.range,c),h=An.create(e.uri,e.version),m={documentChanges:[xn.create(h,[p])]},u=ii.create(d,m,ti.QuickFix);if(u.diagnostics=[n],i.push(u),--s<=0)return}},e.prototype.appendFixesForMarker=function(e,t,n,i){if(n.code===rr.UnknownProperty.id)for(var r=e.offsetAt(n.range.start),o=e.offsetAt(n.range.end),s=ee(t,r),a=s.length-1;a>=0;a--){var l=s[a];if(l instanceof fe){var c=l.getProperty();if(c&&c.offset===r&&c.end===o)return void this.getFixesForUnknownProperty(e,c,n,i)}}}}(),function(){return function(e){this.fullPropertyName=e.getFullPropertyName().toLowerCase(),this.node=e}}());function cr(e,t,n,i){var r=e[t];r.value=n,n&&(rn(r.properties,i)||r.properties.push(i))}function dr(e,t,n,i){"top"===t||"right"===t||"bottom"===t||"left"===t?cr(e,t,n,i):function(e,t,n){cr(e,"top",t,n),cr(e,"right",t,n),cr(e,"bottom",t,n),cr(e,"left",t,n)}(e,n,i)}function pr(e,t,n){switch(t.length){case 1:dr(e,void 0,t[0],n);break;case 2:dr(e,"top",t[0],n),dr(e,"bottom",t[0],n),dr(e,"right",t[1],n),dr(e,"left",t[1],n);break;case 3:dr(e,"top",t[0],n),dr(e,"right",t[1],n),dr(e,"left",t[1],n),dr(e,"bottom",t[2],n);break;case 4:dr(e,"top",t[0],n),dr(e,"right",t[1],n),dr(e,"bottom",t[2],n),dr(e,"left",t[3],n)}}function hr(e,t){for(var n=0,i=t;n<i.length;n++){var r=i[n];if(e.matches(r))return!0}return!1}function mr(e,t){return void 0===t&&(t=!0),(!t||!hr(e,["initial","unset"]))&&0!==parseFloat(e.getText())}function ur(e,t){return void 0===t&&(t=!0),e.map(function(e){return mr(e,t)})}function fr(e,t){return void 0===t&&(t=!0),!hr(e,["none","hidden"])&&(!t||!hr(e,["initial","unset"]))}function gr(e,t){return void 0===t&&(t=!0),e.map(function(e){return fr(e,t)})}function br(e){var t=e.getChildren();if(1===t.length)return mr(r=t[0])&&fr(r);for(var n=0,i=t;n<i.length;n++){var r;if(!mr(r=i[n],!1)||!fr(r,!1))return!1}return!0}var yr=ut(),vr=function(){function e(){this.data={}}return e.prototype.add=function(e,t,n){var i=this.data[e];i||(i={nodes:[],names:[]},this.data[e]=i),i.names.push(t),n&&i.nodes.push(n)},e}(),wr=function(){function e(e,t){var n=this;this.warnings=[],this.settings=t,this.documentText=e.getText(),this.keyframes=new vr,this.validProperties={};var i=t.getSetting(or.ValidProperties);Array.isArray(i)&&i.forEach(function(e){if("string"==typeof e){var t=e.trim().toLowerCase();t.length&&(n.validProperties[t]=!0)}})}return e.entries=function(t,n,i,r){var o=new e(n,i);return t.acceptVisitor(o),o.completeValidations(),o.getEntries(r)},e.prototype.isValidPropertyDeclaration=function(e){var t=e.fullPropertyName;return this.validProperties[t]},e.prototype.fetch=function(e,t){for(var n=[],i=0,r=e;i<r.length;i++){var o=r[i];o.fullPropertyName===t&&n.push(o)}return n},e.prototype.fetchWithValue=function(e,t,n){for(var i=[],r=0,o=e;r<o.length;r++){var s=o[r];if(s.fullPropertyName===t){var a=s.node.getValue();a&&this.findValueInExpression(a,n)&&i.push(s)}}return i},e.prototype.findValueInExpression=function(e,t){var n=!1;return e.accept(function(e){return e.type===H.Identifier&&e.matches(t)&&(n=!0),!n}),n},e.prototype.getEntries=function(e){return void 0===e&&(e=te.Warning|te.Error),this.warnings.filter(function(t){return 0!=(t.getLevel()&e)})},e.prototype.addEntry=function(e,t,n){var i=new pt(e,t,this.settings.getRule(t),n);this.warnings.push(i)},e.prototype.getMissingNames=function(e,t){for(var n=e.slice(0),i=0;i<t.length;i++){var r=n.indexOf(t[i]);-1!==r&&(n[r]=null)}var o=null;for(i=0;i<n.length;i++){var s=n[i];s&&(o=null===o?yr("namelist.single","'{0}'",s):yr("namelist.concatenated","{0}, '{1}'",o,s))}return o},e.prototype.visitNode=function(e){switch(e.type){case H.UnknownAtRule:return this.visitUnknownAtRule(e);case H.Keyframe:return this.visitKeyframe(e);case H.FontFace:return this.visitFontFace(e);case H.Ruleset:return this.visitRuleSet(e);case H.SimpleSelector:return this.visitSimpleSelector(e);case H.Function:return this.visitFunction(e);case H.NumericValue:return this.visitNumericValue(e);case H.Import:return this.visitImport(e);case H.HexColorValue:return this.visitHexColorValue(e);case H.Prio:return this.visitPrio(e)}return!0},e.prototype.completeValidations=function(){this.validateKeyframes()},e.prototype.visitUnknownAtRule=function(e){var t=e.getChild(0);return!!t&&(!en.getAtDirective(t.getText())&&(this.addEntry(t,rr.UnknownAtRules,"Unknown at rule "+t.getText()),!0))},e.prototype.visitKeyframe=function(e){var t=e.getKeyword();if(!t)return!1;var n=t.getText();return this.keyframes.add(e.getName(),n,"@keyframes"!==n?t:null),!0},e.prototype.validateKeyframes=function(){var e=["@-webkit-keyframes","@-moz-keyframes","@-o-keyframes"];for(var t in this.keyframes.data){var n=this.keyframes.data[t].names,i=-1===n.indexOf("@keyframes");if(i||1!==n.length){var r=this.getMissingNames(e,n);if(r||i)for(var o=0,s=this.keyframes.data[t].nodes;o<s.length;o++){var a=s[o];if(i){var l=yr("keyframes.standardrule.missing","Always define standard rule '@keyframes' when defining keyframes.");this.addEntry(a,rr.IncludeStandardPropertyWhenUsingVendorPrefix,l)}if(r){l=yr("keyframes.vendorspecific.missing","Always include all vendor specific rules: Missing: {0}",r);this.addEntry(a,rr.AllVendorPrefixes,l)}}}}return!0},e.prototype.visitSimpleSelector=function(e){var t=this.documentText.charAt(e.offset);return 1===e.length&&"*"===t&&this.addEntry(e,rr.UniversalSelector),"#"===t&&this.addEntry(e,rr.AvoidIdSelector),!0},e.prototype.visitImport=function(e){return this.addEntry(e,rr.ImportStatemement),!0},e.prototype.visitRuleSet=function(t){var n=t.getDeclarations();if(!n)return!1;n.hasChildren()||this.addEntry(t.getSelectors(),rr.EmptyRuleSet);for(var i=[],r=0,o=n.getChildren();r<o.length;r++){(k=o[r])instanceof fe&&i.push(new lr(k))}var s=function(e){for(var t={top:{value:!1,properties:[]},right:{value:!1,properties:[]},bottom:{value:!1,properties:[]},left:{value:!1,properties:[]}},n=0,i=e;n<i.length;n++){var r=i[n],o=r.node.value;if(void 0!==o)switch(r.fullPropertyName){case"box-sizing":return{top:{value:!1,properties:[]},right:{value:!1,properties:[]},bottom:{value:!1,properties:[]},left:{value:!1,properties:[]}};case"width":t.width=r;break;case"height":t.height=r;break;default:var s=r.fullPropertyName.split("-");switch(s[0]){case"border":switch(s[1]){case void 0:case"top":case"right":case"bottom":case"left":switch(s[2]){case void 0:dr(t,s[1],br(o),r);break;case"width":dr(t,s[1],mr(o,!1),r);break;case"style":dr(t,s[1],fr(o,!0),r)}break;case"width":pr(t,ur(o.getChildren(),!1),r);break;case"style":pr(t,gr(o.getChildren(),!0),r)}break;case"padding":1===s.length?pr(t,ur(o.getChildren(),!0),r):dr(t,s[1],mr(o,!0),r)}}}return t}(i);if(s.width){var a=[];if(s.right.value&&(a=on(a,s.right.properties)),s.left.value&&(a=on(a,s.left.properties)),0!==a.length){for(var l=0,c=a;l<c.length;l++){var d=c[l];this.addEntry(d.node,rr.BewareOfBoxModelSize)}this.addEntry(s.width.node,rr.BewareOfBoxModelSize)}}if(s.height){a=[];if(s.top.value&&(a=on(a,s.top.properties)),s.bottom.value&&(a=on(a,s.bottom.properties)),0!==a.length){for(var p=0,h=a;p<h.length;p++){d=h[p];this.addEntry(d.node,rr.BewareOfBoxModelSize)}this.addEntry(s.height.node,rr.BewareOfBoxModelSize)}}var m=this.fetchWithValue(i,"display","inline");if(m.length>0)for(var u=0,f=["width","height","margin-top","margin-bottom","float"];u<f.length;u++)for(var g=f[u],b=this.fetch(i,g),y=0;y<b.length;y++){var v=b[y].node,w=v.getValue();("float"!==g||w&&!w.matches("none"))&&this.addEntry(v,rr.PropertyIgnoredDueToDisplay,yr("rule.propertyIgnoredDueToDisplayInline","Property is ignored due to the display. With 'display: inline', the width, height, margin-top, margin-bottom, and float properties have no effect."))}if((m=this.fetchWithValue(i,"display","inline-block")).length>0)for(b=this.fetch(i,"float"),y=0;y<b.length;y++){var x=b[y].node;(w=x.getValue())&&!w.matches("none")&&this.addEntry(x,rr.PropertyIgnoredDueToDisplay,yr("rule.propertyIgnoredDueToDisplayInlineBlock","inline-block is ignored due to the float. If 'float' has a value other than 'none', the box is floated and 'display' is treated as 'block'"))}if((m=this.fetchWithValue(i,"display","block")).length>0)for(b=this.fetch(i,"vertical-align"),y=0;y<b.length;y++)this.addEntry(b[y].node,rr.PropertyIgnoredDueToDisplay,yr("rule.propertyIgnoredDueToDisplayBlock","Property is ignored due to the display. With 'display: block', vertical-align should not be used."));var S=this.fetch(i,"float");for(y=0;y<S.length;y++){var k=S[y];this.isValidPropertyDeclaration(k)||this.addEntry(k.node,rr.AvoidFloat)}for(var C=0;C<i.length;C++){if("background"!==(k=i[C]).fullPropertyName&&!this.validProperties[k.fullPropertyName])if((w=k.node.getValue())&&"-"!==this.documentText.charAt(w.offset)){var F=this.fetch(i,k.fullPropertyName);if(F.length>1)for(var z=0;z<F.length;z++){var D=F[z].node.getValue();D&&"-"!==this.documentText.charAt(D.offset)&&F[z]!==k&&this.addEntry(k.node,rr.DuplicateDeclarations)}}}if(!t.getSelectors().matches(":export")){for(var T=new vr,R=!1,E=0,I=i;E<I.length;E++){var M=(k=I[E]).node;if(this.isCSSDeclaration(M)){var N=k.fullPropertyName,P=N.charAt(0);if("-"===P){if("-"!==N.charAt(1)){en.isKnownProperty(N)||this.validProperties[N]||this.addEntry(M.getProperty(),rr.UnknownVendorSpecificProperty);var _=M.getNonPrefixedPropertyName();T.add(_,N,M.getProperty())}}else{var A=N;"*"!==P&&"_"!==P||(this.addEntry(M.getProperty(),rr.IEStarHack),N=N.substr(1)),en.isKnownProperty(A)||en.isKnownProperty(N)||this.validProperties[N]||this.addEntry(M.getProperty(),rr.UnknownProperty,yr("property.unknownproperty.detailed","Unknown property: '{0}'",N)),T.add(N,N,null)}}else R=!0}if(!R)for(var W in T.data){var O=T.data[W],L=O.names,U=en.isStandardProperty(W)&&-1===L.indexOf(W);if(U||1!==L.length){for(var j=[],V=(C=0,e.prefixes.length);C<V;C++){var B=e.prefixes[C];en.isStandardProperty(B+W)&&j.push(B+W)}var $=this.getMissingNames(j,L);if($||U)for(var q=0,K=O.nodes;q<K.length;q++){var G=K[q];if(U){var J=yr("property.standard.missing","Also define the standard property '{0}' for compatibility",W);this.addEntry(G,rr.IncludeStandardPropertyWhenUsingVendorPrefix,J)}if($){J=yr("property.vendorspecific.missing","Always include all vendor specific properties: Missing: {0}",$);this.addEntry(G,rr.AllVendorPrefixes,J)}}}}}return!0},e.prototype.visitPrio=function(e){return this.addEntry(e,rr.AvoidImportant),!0},e.prototype.visitNumericValue=function(e){var t=e.findParent(H.Function);if(t&&"calc"===t.getName())return!0;var n=e.findParent(H.Declaration);if(n&&n.getValue()){var i=e.getValue();if(!i.unit||-1===Yt.length.indexOf(i.unit.toLowerCase()))return!0;0===parseFloat(i.value)&&i.unit&&!this.validProperties[n.getFullPropertyName()]&&this.addEntry(e,rr.ZeroWithUnit)}return!0},e.prototype.visitFontFace=function(e){var t=e.getDeclarations();if(!t)return!1;for(var n=!1,i=!1,r=!1,o=0,s=t.getChildren();o<s.length;o++){var a=s[o];if(this.isCSSDeclaration(a)){var l=a.getProperty().getName().toLowerCase();"src"===l&&(n=!0),"font-family"===l&&(i=!0)}else r=!0}return r||n&&i||this.addEntry(e,rr.RequiredPropertiesForFontFace),!0},e.prototype.isCSSDeclaration=function(e){if(e instanceof fe){if(!e.getValue())return!1;var t=e.getProperty();if(!t)return!1;var n=t.getIdentifier();return!(!n||n.containsInterpolation())}return!1},e.prototype.visitHexColorValue=function(e){var t=e.length;return 9!==t&&7!==t&&5!==t&&4!==t&&this.addEntry(e,rr.HexColorLength),!1},e.prototype.visitFunction=function(e){var t=-1,n=0;switch(e.getName().toLowerCase()){case"rgb(":case"hsl(":t=3;break;case"rgba(":case"hsla(":t=4}return-1!==t&&(e.getArguments().accept(function(e){return!(e instanceof Ke)||(n+=1,!1)}),n!==t&&this.addEntry(e,rr.ArgsInColorFunction)),!0},e.prefixes=["-ms-","-moz-","-o-","-webkit-"],e}(),xr=(function(){function e(){}e.prototype.configure=function(e){this.settings=e},e.prototype.doValidation=function(e,t,n){if(void 0===n&&(n=this.settings),n&&!1===n.validate)return[];var i=[];i.push.apply(i,ht.entries(t)),i.push.apply(i,wr.entries(t,e,new sr(n&&n.lint)));var r=[];for(var o in rr)r.push(rr[o].id);return i.filter(function(e){return e.getLevel()!==te.Ignore}).map(function(t){var n=an.create(e.positionAt(t.getOffset()),e.positionAt(t.getOffset()+t.getLength())),i=e.languageId;return{code:t.getRule().id,source:i,message:t.getMessage(),severity:t.getLevel()===te.Warning?gn.Warning:gn.Error,range:n}})}}(),function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),Sr="/".charCodeAt(0),kr="\n".charCodeAt(0),Cr="\r".charCodeAt(0),Fr="\f".charCodeAt(0),zr="$".charCodeAt(0),Dr="#".charCodeAt(0),Tr="{".charCodeAt(0),Rr="=".charCodeAt(0),Er="!".charCodeAt(0),Ir="<".charCodeAt(0),Mr=">".charCodeAt(0),Nr=".".charCodeAt(0),Pr="@".charCodeAt(0),_r=i.CustomToken,Ar=_r++,Wr=_r++,Or=(_r++,_r++),Lr=_r++,Ur=_r++,jr=_r++,Vr=_r++,Br=(_r++,_r++),$r=_r++,qr=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return xr(t,e),t.prototype.scanNext=function(t){if(this.stream.advanceIfChar(zr)){var n=["$"];if(this.ident(n))return this.finishToken(t,Ar,n.join(""));this.stream.goBackTo(t)}if(this.stream.advanceIfChars([Dr,Tr]))return this.finishToken(t,Wr);if(this.stream.advanceIfChars([Rr,Rr]))return this.finishToken(t,Or);if(this.stream.advanceIfChars([Er,Rr]))return this.finishToken(t,Lr);if(this.stream.advanceIfChar(Ir))return this.stream.advanceIfChar(Rr)?this.finishToken(t,jr):this.finishToken(t,i.Delim);if(this.stream.advanceIfChar(Mr))return this.stream.advanceIfChar(Rr)?this.finishToken(t,Ur):this.finishToken(t,i.Delim);if(this.stream.advanceIfChars([Nr,Nr,Nr]))return this.finishToken(t,Vr);if(this.stream.advanceIfChar(Pr)){n=["@"];if(this.ident(n)){var r=n.join("");if("@forward"===r)return this.finishToken(t,Br,r);if("@use"===r)return this.finishToken(t,$r,r)}this.stream.goBackTo(t)}return e.prototype.scanNext.call(this,t)},t.prototype.comment=function(){return!!e.prototype.comment.call(this)||!(this.inURL||!this.stream.advanceIfChars([Sr,Sr]))&&(this.stream.advanceWhileChar(function(e){switch(e){case kr:case Cr:case Fr:return!1;default:return!0}}),!0)},t}(X),Kr=ut(),Gr=function(){return function(e,t){this.id=e,this.message=t}}(),Jr={FromExpected:new Gr("scss-fromexpected",Kr("expected.from","'from' expected")),ThroughOrToExpected:new Gr("scss-throughexpected",Kr("expected.through","'through' or 'to' expected")),InExpected:new Gr("scss-fromexpected",Kr("expected.in","'in' expected"))},Hr=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Yr=(function(e){function t(){return e.call(this,new qr)||this}Hr(t,e),t.prototype._parseStylesheetStart=function(){return this._parseForward()||this._parseUse()||e.prototype._parseStylesheetStart.call(this)},t.prototype._parseStylesheetStatement=function(){return this.peek(i.AtKeyword)?this._parseWarnAndDebug()||this._parseControlStatement()||this._parseMixinDeclaration()||this._parseMixinContent()||this._parseMixinReference()||this._parseFunctionDeclaration()||e.prototype._parseStylesheetAtStatement.call(this):this._parseRuleset(!0)||this._parseVariableDeclaration()},t.prototype._parseImport=function(){if(!this.peekKeyword("@import"))return null;var e=this.create(Ie);if(this.consumeToken(),!e.addChild(this._parseURILiteral())&&!e.addChild(this._parseStringLiteral()))return this.finish(e,bt.URIOrStringExpected);for(;this.accept(i.Comma);)if(!e.addChild(this._parseURILiteral())&&!e.addChild(this._parseStringLiteral()))return this.finish(e,bt.URIOrStringExpected);return this.peek(i.SemiColon)||this.peek(i.EOF)||e.setMedialist(this._parseMediaQueryList()),this.finish(e)},t.prototype._parseVariableDeclaration=function(e){if(void 0===e&&(e=[]),!this.peek(Ar))return null;var t=this.create(et);if(!t.setVariable(this._parseVariable()))return null;if(!this.accept(i.Colon))return this.finish(t,bt.ColonExpected);if(this.prevToken&&(t.colonPosition=this.prevToken.offset),!t.setValue(this._parseExpr()))return this.finish(t,bt.VariableValueExpected,[],e);for(;this.accept(i.Exclamation);){if(!this.peekRegExp(i.Ident,/^(default|global)$/))return this.finish(t,bt.UnknownKeyword);this.consumeToken()}return this.peek(i.SemiColon)&&(t.semicolonPosition=this.token.offset),this.finish(t)},t.prototype._parseMediaContentStart=function(){return this._parseInterpolation()},t.prototype._parseMediaFeatureName=function(){return this._parseModuleMember()||this._parseFunction()||this._parseIdent()||this._parseVariable()},t.prototype._parseKeyframeSelector=function(){return this._tryParseKeyframeSelector()||this._parseControlStatement(this._parseKeyframeSelector.bind(this))||this._parseVariableDeclaration()||this._parseMixinContent()},t.prototype._parseVariable=function(){if(!this.peek(Ar))return null;var e=this.create(nt);return this.consumeToken(),e},t.prototype._parseModuleMember=function(){var e=this.mark(),t=this.create(dt);return t.setIdentifier(this._parseIdent([Y.Module]))?this.hasWhitespace()||!this.acceptDelim(".")||this.hasWhitespace()?(this.restoreAtMark(e),null):t.addChild(this._parseVariable()||this._parseFunction())?t:this.finish(t,bt.IdentifierOrVariableExpected):null},t.prototype._parseIdent=function(e){var t=this;if(!this.peek(i.Ident)&&!this.peek(Wr)&&!this.peekDelim("-"))return null;var n=this.create(re);n.referenceTypes=e,n.isCustomProperty=this.peekRegExp(i.Ident,/^--/);for(var r=!1,o=function(){var e=t.mark();return t.acceptDelim("-")&&(t.hasWhitespace()||t.acceptDelim("-"),t.hasWhitespace())?(t.restoreAtMark(e),null):t._parseInterpolation()};(this.accept(i.Ident)||n.addChild(o())||r&&(this.acceptDelim("-")||this.accept(i.Num)))&&(r=!0,!this.hasWhitespace()););return r?this.finish(n):null},t.prototype._parseTerm=function(){var t=this.create(Ge);if(t.setExpression(this._parseModuleMember()))return this.finish(t);var n=e.prototype._parseTerm.call(this);return n||(t.setExpression(this._parseVariable())||t.setExpression(this._parseSelectorCombinator())||t.setExpression(this._tryParsePrio())?this.finish(t):null)},t.prototype._parseInterpolation=function(){if(this.peek(Wr)){var e=this.create(tt);return this.consumeToken(),e.addChild(this._parseExpr())||this._parseSelectorCombinator()?this.accept(i.CurlyR)?this.finish(e):this.finish(e,bt.RightCurlyExpected):this.accept(i.CurlyR)?this.finish(e):this.finish(e,bt.ExpressionExpected)}return null},t.prototype._parseOperator=function(){if(this.peek(Or)||this.peek(Lr)||this.peek(Ur)||this.peek(jr)||this.peekDelim(">")||this.peekDelim("<")||this.peekIdent("and")||this.peekIdent("or")||this.peekDelim("%")){var t=this.createNode(H.Operator);return this.consumeToken(),this.finish(t)}return e.prototype._parseOperator.call(this)},t.prototype._parseUnaryOperator=function(){if(this.peekIdent("not")){var t=this.create(ne);return this.consumeToken(),this.finish(t)}return e.prototype._parseUnaryOperator.call(this)},t.prototype._parseRuleSetDeclaration=function(){return this.peek(i.AtKeyword)?this._parseKeyframe()||this._parseImport()||this._parseMedia(!0)||this._parseFontFace()||this._parseWarnAndDebug()||this._parseControlStatement()||this._parseFunctionDeclaration()||this._parseExtends()||this._parseMixinReference()||this._parseMixinContent()||this._parseMixinDeclaration()||this._parseRuleset(!0)||this._parseSupports(!0):this._parseVariableDeclaration()||this._tryParseRuleset(!0)||e.prototype._parseRuleSetDeclaration.call(this)},t.prototype._parseDeclaration=function(e){var t=this.create(fe);if(!t.setProperty(this._parseProperty()))return null;if(!this.accept(i.Colon))return this.finish(t,bt.ColonExpected,[i.Colon],e);this.prevToken&&(t.colonPosition=this.prevToken.offset);var n=!1;if(t.setValue(this._parseExpr())&&(n=!0,t.addChild(this._parsePrio())),this.peek(i.CurlyL))t.setNestedProperties(this._parseNestedProperties());else if(!n)return this.finish(t,bt.PropertyValueExpected);return this.peek(i.SemiColon)&&(t.semicolonPosition=this.token.offset),this.finish(t)},t.prototype._parseNestedProperties=function(){var e=this.create(Te);return this._parseBody(e,this._parseDeclaration.bind(this))},t.prototype._parseExtends=function(){if(this.peekKeyword("@extend")){var e=this.create(it);if(this.consumeToken(),!e.getSelectors().addChild(this._parseSimpleSelector()))return this.finish(e,bt.SelectorExpected);for(;this.accept(i.Comma);)e.getSelectors().addChild(this._parseSimpleSelector());return this.accept(i.Exclamation)&&!this.acceptIdent("optional")?this.finish(e,bt.UnknownKeyword):this.finish(e)}return null},t.prototype._parseSimpleSelectorBody=function(){return this._parseSelectorCombinator()||this._parseSelectorPlaceholder()||e.prototype._parseSimpleSelectorBody.call(this)},t.prototype._parseSelectorCombinator=function(){if(this.peekDelim("&")){var e=this.createNode(H.SelectorCombinator);for(this.consumeToken();!this.hasWhitespace()&&(this.acceptDelim("-")||this.accept(i.Num)||this.accept(i.Dimension)||e.addChild(this._parseIdent())||this.acceptDelim("&")););return this.finish(e)}return null},t.prototype._parseSelectorPlaceholder=function(){if(this.peekDelim("%")){var e=this.createNode(H.SelectorPlaceholder);return this.consumeToken(),this._parseIdent(),this.finish(e)}if(this.peekKeyword("@at-root")){e=this.createNode(H.SelectorPlaceholder);return this.consumeToken(),this.finish(e)}return null},t.prototype._parseElementName=function(){var t=this.mark(),n=e.prototype._parseElementName.call(this);return n&&!this.hasWhitespace()&&this.peek(i.ParenthesisL)?(this.restoreAtMark(t),null):n},t.prototype._tryParsePseudoIdentifier=function(){return this._parseInterpolation()||e.prototype._tryParsePseudoIdentifier.call(this)},t.prototype._parseWarnAndDebug=function(){if(!this.peekKeyword("@debug")&&!this.peekKeyword("@warn")&&!this.peekKeyword("@error"))return null;var e=this.createNode(H.Debug);return this.consumeToken(),e.addChild(this._parseExpr()),this.finish(e)},t.prototype._parseControlStatement=function(e){return void 0===e&&(e=this._parseRuleSetDeclaration.bind(this)),this.peek(i.AtKeyword)?this._parseIfStatement(e)||this._parseForStatement(e)||this._parseEachStatement(e)||this._parseWhileStatement(e):null},t.prototype._parseIfStatement=function(e){return this.peekKeyword("@if")?this._internalParseIfStatement(e):null},t.prototype._internalParseIfStatement=function(e){var t=this.create(we);if(this.consumeToken(),!t.setExpression(this._parseExpr(!0)))return this.finish(t,bt.ExpressionExpected);if(this._parseBody(t,e),this.acceptKeyword("@else"))if(this.peekIdent("if"))t.setElseClause(this._internalParseIfStatement(e));else if(this.peek(i.CurlyL)){var n=this.create(Ce);this._parseBody(n,e),t.setElseClause(n)}return this.finish(t)},t.prototype._parseForStatement=function(e){if(!this.peekKeyword("@for"))return null;var t=this.create(xe);return this.consumeToken(),t.setVariable(this._parseVariable())?this.acceptIdent("from")?t.addChild(this._parseBinaryExpr())?this.acceptIdent("to")||this.acceptIdent("through")?t.addChild(this._parseBinaryExpr())?this._parseBody(t,e):this.finish(t,bt.ExpressionExpected,[i.CurlyR]):this.finish(t,Jr.ThroughOrToExpected,[i.CurlyR]):this.finish(t,bt.ExpressionExpected,[i.CurlyR]):this.finish(t,Jr.FromExpected,[i.CurlyR]):this.finish(t,bt.VariableNameExpected,[i.CurlyR])},t.prototype._parseEachStatement=function(e){if(!this.peekKeyword("@each"))return null;var t=this.create(Se);this.consumeToken();var n=t.getVariables();if(!n.addChild(this._parseVariable()))return this.finish(t,bt.VariableNameExpected,[i.CurlyR]);for(;this.accept(i.Comma);)if(!n.addChild(this._parseVariable()))return this.finish(t,bt.VariableNameExpected,[i.CurlyR]);return this.finish(n),this.acceptIdent("in")?t.addChild(this._parseExpr())?this._parseBody(t,e):this.finish(t,bt.ExpressionExpected,[i.CurlyR]):this.finish(t,Jr.InExpected,[i.CurlyR])},t.prototype._parseWhileStatement=function(e){if(!this.peekKeyword("@while"))return null;var t=this.create(ke);return this.consumeToken(),t.addChild(this._parseBinaryExpr())?this._parseBody(t,e):this.finish(t,bt.ExpressionExpected,[i.CurlyR])},t.prototype._parseFunctionBodyDeclaration=function(){return this._parseVariableDeclaration()||this._parseReturnStatement()||this._parseWarnAndDebug()||this._parseControlStatement(this._parseFunctionBodyDeclaration.bind(this))},t.prototype._parseFunctionDeclaration=function(){if(!this.peekKeyword("@function"))return null;var e=this.create(Fe);if(this.consumeToken(),!e.setIdentifier(this._parseIdent([Y.Function])))return this.finish(e,bt.IdentifierExpected,[i.CurlyR]);if(!this.accept(i.ParenthesisL))return this.finish(e,bt.LeftParenthesisExpected,[i.CurlyR]);if(e.getParameters().addChild(this._parseParameterDeclaration()))for(;this.accept(i.Comma)&&!this.peek(i.ParenthesisR);)if(!e.getParameters().addChild(this._parseParameterDeclaration()))return this.finish(e,bt.VariableNameExpected);return this.accept(i.ParenthesisR)?this._parseBody(e,this._parseFunctionBodyDeclaration.bind(this)):this.finish(e,bt.RightParenthesisExpected,[i.CurlyR])},t.prototype._parseReturnStatement=function(){if(!this.peekKeyword("@return"))return null;var e=this.createNode(H.ReturnStatement);return this.consumeToken(),e.addChild(this._parseExpr())?this.finish(e):this.finish(e,bt.ExpressionExpected)},t.prototype._parseMixinDeclaration=function(){if(!this.peekKeyword("@mixin"))return null;var e=this.create(ot);if(this.consumeToken(),!e.setIdentifier(this._parseIdent([Y.Mixin])))return this.finish(e,bt.IdentifierExpected,[i.CurlyR]);if(this.accept(i.ParenthesisL)){if(e.getParameters().addChild(this._parseParameterDeclaration()))for(;this.accept(i.Comma)&&!this.peek(i.ParenthesisR);)if(!e.getParameters().addChild(this._parseParameterDeclaration()))return this.finish(e,bt.VariableNameExpected);if(!this.accept(i.ParenthesisR))return this.finish(e,bt.RightParenthesisExpected,[i.CurlyR])}return this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},t.prototype._parseParameterDeclaration=function(){var e=this.create(ye);return e.setIdentifier(this._parseVariable())?(this.accept(Vr),this.accept(i.Colon)&&!e.setDefaultValue(this._parseExpr(!0))?this.finish(e,bt.VariableValueExpected,[],[i.Comma,i.ParenthesisR]):this.finish(e)):null},t.prototype._parseMixinContent=function(){if(!this.peekKeyword("@content"))return null;var e=this.createNode(H.MixinContent);return this.consumeToken(),this.finish(e)},t.prototype._parseMixinReference=function(){if(!this.peekKeyword("@include"))return null;var e=this.create(rt);this.consumeToken();var t=this._parseIdent([Y.Mixin]);if(!e.setIdentifier(t))return this.finish(e,bt.IdentifierExpected,[i.CurlyR]);if(!this.hasWhitespace()&&this.acceptDelim(".")&&!this.hasWhitespace()){var n=this._parseIdent([Y.Mixin]);if(!n)return this.finish(e,bt.IdentifierExpected,[i.CurlyR]);var r=this.create(dt);t.referenceTypes=[Y.Module],r.setIdentifier(t),e.setIdentifier(n),e.addChild(r)}if(this.accept(i.ParenthesisL)){if(e.getArguments().addChild(this._parseFunctionArgument()))for(;this.accept(i.Comma)&&!this.peek(i.ParenthesisR);)if(!e.getArguments().addChild(this._parseFunctionArgument()))return this.finish(e,bt.ExpressionExpected);if(!this.accept(i.ParenthesisR))return this.finish(e,bt.RightParenthesisExpected)}if(this.peek(i.CurlyL)){var o=this.create(ae);this._parseBody(o,this._parseMixinReferenceBodyStatement.bind(this)),e.setContent(o)}return this.finish(e)},t.prototype._parseMixinReferenceBodyStatement=function(){return this._tryParseKeyframeSelector()||this._parseRuleSetDeclaration()},t.prototype._parseFunctionArgument=function(){var e=this.create(ve),t=this.mark(),n=this._parseVariable();if(n)if(this.accept(i.Colon))e.setIdentifier(n);else{if(this.accept(Vr))return e.setValue(n),this.finish(e);this.restoreAtMark(t)}return e.setValue(this._parseExpr(!0))?(this.accept(Vr),e.addChild(this._parsePrio()),this.finish(e)):null},t.prototype._parseURLArgument=function(){var t=this.mark(),n=e.prototype._parseURLArgument.call(this);if(!n||!this.peek(i.ParenthesisR)){this.restoreAtMark(t);var r=this.create(ne);return r.addChild(this._parseBinaryExpr()),this.finish(r)}return n},t.prototype._parseOperation=function(){if(!this.peek(i.ParenthesisL))return null;var e=this.create(ne);for(this.consumeToken();e.addChild(this._parseListElement());)this.accept(i.Comma);return this.accept(i.ParenthesisR)?this.finish(e):this.finish(e,bt.RightParenthesisExpected)},t.prototype._parseListElement=function(){var e=this.create(at),t=this._parseBinaryExpr();if(!t)return null;if(this.accept(i.Colon)){if(e.setKey(t),!e.setValue(this._parseBinaryExpr()))return this.finish(e,bt.ExpressionExpected)}else e.setValue(t);return this.finish(e)},t.prototype._parseUse=function(){if(!this.peek($r))return null;var e=this.create(Me);if(this.consumeToken(),!e.addChild(this._parseStringLiteral()))return this.finish(e,bt.StringLiteralExpected);if(!this.peek(i.SemiColon)&&!this.peek(i.EOF)){if(!this.peekRegExp(i.Ident,/as|with/))return this.finish(e,bt.UnknownKeyword);if(this.acceptIdent("as")&&!e.setIdentifier(this._parseIdent([Y.Module]))&&!this.acceptDelim("*"))return this.finish(e,bt.IdentifierOrWildcardExpected);if(this.acceptIdent("with")){if(!this.accept(i.ParenthesisL))return this.finish(e,bt.LeftParenthesisExpected,[i.ParenthesisR]);if(!e.getParameters().addChild(this._parseModuleConfigDeclaration()))return this.finish(e,bt.VariableNameExpected);for(;this.accept(i.Comma)&&!this.peek(i.ParenthesisR);)if(!e.getParameters().addChild(this._parseModuleConfigDeclaration()))return this.finish(e,bt.VariableNameExpected);if(!this.accept(i.ParenthesisR))return this.finish(e,bt.RightParenthesisExpected)}}return this.accept(i.SemiColon)||this.accept(i.EOF)?this.finish(e):this.finish(e,bt.SemiColonExpected)},t.prototype._parseModuleConfigDeclaration=function(){var e=this.create(Ne);return e.setIdentifier(this._parseVariable())?this.accept(i.Colon)&&e.setValue(this._parseExpr(!0))?this.finish(e):this.finish(e,bt.VariableValueExpected,[],[i.Comma,i.ParenthesisR]):null},t.prototype._parseForward=function(){if(!this.peek(Br))return null;var e=this.create(Pe);if(this.consumeToken(),!e.addChild(this._parseStringLiteral()))return this.finish(e,bt.StringLiteralExpected);if(!this.peek(i.SemiColon)&&!this.peek(i.EOF)){if(!this.peekRegExp(i.Ident,/as|hide|show/))return this.finish(e,bt.UnknownKeyword);if(this.acceptIdent("as")){var t=this._parseIdent([Y.Forward]);if(!e.setIdentifier(t))return this.finish(e,bt.IdentifierExpected);if(this.hasWhitespace()||!this.acceptDelim("*"))return this.finish(e,bt.WildcardExpected)}if((this.peekIdent("hide")||this.peekIdent("show"))&&!e.addChild(this._parseForwardVisibility()))return this.finish(e,bt.IdentifierOrVariableExpected)}return this.accept(i.SemiColon)||this.accept(i.EOF)?this.finish(e):this.finish(e,bt.SemiColonExpected)},t.prototype._parseForwardVisibility=function(){var e=this.create(_e);for(e.setIdentifier(this._parseIdent());e.addChild(this._parseVariable()||this._parseIdent()););return e.getChildren().length>1?e:null}}(nn),function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),Xr=ut();!function(e){function t(n){var i=e.call(this,"$",n)||this;return Zr(t.scssModuleLoaders),Zr(t.scssModuleBuiltIns),i}Yr(t,e),t.prototype.isImportPathParent=function(t){return t===H.Forward||t===H.Use||e.prototype.isImportPathParent.call(this,t)},t.prototype.getCompletionForImportPath=function(n,i){var r,o=n.getParent().type;return o!==H.Forward&&o!==H.Use||(r=i.items).push.apply(r,t.scssModuleBuiltIns),e.prototype.getCompletionForImportPath.call(this,n,i)},t.prototype.createReplaceFunction=function(){var e=1;return function(n,i){return"\\"+i+": ${"+e+++":"+(t.variableDefaults[i]||"")+"}"}},t.prototype.createFunctionProposals=function(e,t,n,i){for(var r=0,o=e;r<o.length;r++){var s=o[r],a=s.func.replace(/\[?(\$\w+)\]?/g,this.createReplaceFunction()),l={label:s.func.substr(0,s.func.indexOf("(")),detail:s.func,documentation:s.desc,textEdit:wn.replace(this.getCompletionRange(t),a),insertTextFormat:jn.Snippet,kind:Un.Function};n&&(l.sortText="z"),i.items.push(l)}return i},t.prototype.getCompletionsForSelector=function(n,i,r){return this.createFunctionProposals(t.selectorFuncs,null,!0,r),e.prototype.getCompletionsForSelector.call(this,n,i,r)},t.prototype.getTermProposals=function(n,i,r){var o=t.builtInFuncs;return n&&(o=o.filter(function(e){return!e.type||!n.restrictions||-1!==n.restrictions.indexOf(e.type)})),this.createFunctionProposals(o,i,!0,r),e.prototype.getTermProposals.call(this,n,i,r)},t.prototype.getColorProposals=function(n,i,r){return this.createFunctionProposals(t.colorProposals,i,!1,r),e.prototype.getColorProposals.call(this,n,i,r)},t.prototype.getCompletionsForDeclarationProperty=function(t,n){return this.getCompletionForAtDirectives(n),this.getCompletionsForSelector(null,!0,n),e.prototype.getCompletionsForDeclarationProperty.call(this,t,n)},t.prototype.getCompletionsForExtendsReference=function(e,t,n){for(var i=0,r=this.getSymbolContext().findSymbolsAtOffset(this.offset,Y.Rule);i<r.length;i++){var o=r[i],s={label:o.name,textEdit:wn.replace(this.getCompletionRange(t),o.name),kind:Un.Function};n.items.push(s)}return n},t.prototype.getCompletionForAtDirectives=function(e){var n;return(n=e.items).push.apply(n,t.scssAtDirectives),e},t.prototype.getCompletionForTopLevel=function(t){return this.getCompletionForAtDirectives(t),this.getCompletionForModuleLoaders(t),e.prototype.getCompletionForTopLevel.call(this,t),t},t.prototype.getCompletionForModuleLoaders=function(e){var n;return(n=e.items).push.apply(n,t.scssModuleLoaders),e},t.variableDefaults={$red:"1",$green:"2",$blue:"3",$alpha:"1.0",$color:"#000000",$weight:"0.5",$hue:"0",$saturation:"0%",$lightness:"0%",$degrees:"0",$amount:"0",$string:'""',$substring:'"s"',$number:"0",$limit:"1"},t.colorProposals=[{func:"red($color)",desc:Xr("scss.builtin.red","Gets the red component of a color.")},{func:"green($color)",desc:Xr("scss.builtin.green","Gets the green component of a color.")},{func:"blue($color)",desc:Xr("scss.builtin.blue","Gets the blue component of a color.")},{func:"mix($color, $color, [$weight])",desc:Xr("scss.builtin.mix","Mixes two colors together.")},{func:"hue($color)",desc:Xr("scss.builtin.hue","Gets the hue component of a color.")},{func:"saturation($color)",desc:Xr("scss.builtin.saturation","Gets the saturation component of a color.")},{func:"lightness($color)",desc:Xr("scss.builtin.lightness","Gets the lightness component of a color.")},{func:"adjust-hue($color, $degrees)",desc:Xr("scss.builtin.adjust-hue","Changes the hue of a color.")},{func:"lighten($color, $amount)",desc:Xr("scss.builtin.lighten","Makes a color lighter.")},{func:"darken($color, $amount)",desc:Xr("scss.builtin.darken","Makes a color darker.")},{func:"saturate($color, $amount)",desc:Xr("scss.builtin.saturate","Makes a color more saturated.")},{func:"desaturate($color, $amount)",desc:Xr("scss.builtin.desaturate","Makes a color less saturated.")},{func:"grayscale($color)",desc:Xr("scss.builtin.grayscale","Converts a color to grayscale.")},{func:"complement($color)",desc:Xr("scss.builtin.complement","Returns the complement of a color.")},{func:"invert($color)",desc:Xr("scss.builtin.invert","Returns the inverse of a color.")},{func:"alpha($color)",desc:Xr("scss.builtin.alpha","Gets the opacity component of a color.")},{func:"opacity($color)",desc:"Gets the alpha component (opacity) of a color."},{func:"rgba($color, $alpha)",desc:Xr("scss.builtin.rgba","Changes the alpha component for a color.")},{func:"opacify($color, $amount)",desc:Xr("scss.builtin.opacify","Makes a color more opaque.")},{func:"fade-in($color, $amount)",desc:Xr("scss.builtin.fade-in","Makes a color more opaque.")},{func:"transparentize($color, $amount)",desc:Xr("scss.builtin.transparentize","Makes a color more transparent.")},{func:"fade-out($color, $amount)",desc:Xr("scss.builtin.fade-out","Makes a color more transparent.")},{func:"adjust-color($color, [$red], [$green], [$blue], [$hue], [$saturation], [$lightness], [$alpha])",desc:Xr("scss.builtin.adjust-color","Increases or decreases one or more components of a color.")},{func:"scale-color($color, [$red], [$green], [$blue], [$saturation], [$lightness], [$alpha])",desc:Xr("scss.builtin.scale-color","Fluidly scales one or more properties of a color.")},{func:"change-color($color, [$red], [$green], [$blue], [$hue], [$saturation], [$lightness], [$alpha])",desc:Xr("scss.builtin.change-color","Changes one or more properties of a color.")},{func:"ie-hex-str($color)",desc:Xr("scss.builtin.ie-hex-str","Converts a color into the format understood by IE filters.")}],t.selectorFuncs=[{func:"selector-nest($selectors…)",desc:Xr("scss.builtin.selector-nest","Nests selector beneath one another like they would be nested in the stylesheet.")},{func:"selector-append($selectors…)",desc:Xr("scss.builtin.selector-append","Appends selectors to one another without spaces in between.")},{func:"selector-extend($selector, $extendee, $extender)",desc:Xr("scss.builtin.selector-extend","Extends $extendee with $extender within $selector.")},{func:"selector-replace($selector, $original, $replacement)",desc:Xr("scss.builtin.selector-replace","Replaces $original with $replacement within $selector.")},{func:"selector-unify($selector1, $selector2)",desc:Xr("scss.builtin.selector-unify","Unifies two selectors to produce a selector that matches elements matched by both.")},{func:"is-superselector($super, $sub)",desc:Xr("scss.builtin.is-superselector","Returns whether $super matches all the elements $sub does, and possibly more.")},{func:"simple-selectors($selector)",desc:Xr("scss.builtin.simple-selectors","Returns the simple selectors that comprise a compound selector.")},{func:"selector-parse($selector)",desc:Xr("scss.builtin.selector-parse","Parses a selector into the format returned by &.")}],t.builtInFuncs=[{func:"unquote($string)",desc:Xr("scss.builtin.unquote","Removes quotes from a string.")},{func:"quote($string)",desc:Xr("scss.builtin.quote","Adds quotes to a string.")},{func:"str-length($string)",desc:Xr("scss.builtin.str-length","Returns the number of characters in a string.")},{func:"str-insert($string, $insert, $index)",desc:Xr("scss.builtin.str-insert","Inserts $insert into $string at $index.")},{func:"str-index($string, $substring)",desc:Xr("scss.builtin.str-index","Returns the index of the first occurance of $substring in $string.")},{func:"str-slice($string, $start-at, [$end-at])",desc:Xr("scss.builtin.str-slice","Extracts a substring from $string.")},{func:"to-upper-case($string)",desc:Xr("scss.builtin.to-upper-case","Converts a string to upper case.")},{func:"to-lower-case($string)",desc:Xr("scss.builtin.to-lower-case","Converts a string to lower case.")},{func:"percentage($number)",desc:Xr("scss.builtin.percentage","Converts a unitless number to a percentage."),type:"percentage"},{func:"round($number)",desc:Xr("scss.builtin.round","Rounds a number to the nearest whole number.")},{func:"ceil($number)",desc:Xr("scss.builtin.ceil","Rounds a number up to the next whole number.")},{func:"floor($number)",desc:Xr("scss.builtin.floor","Rounds a number down to the previous whole number.")},{func:"abs($number)",desc:Xr("scss.builtin.abs","Returns the absolute value of a number.")},{func:"min($numbers)",desc:Xr("scss.builtin.min","Finds the minimum of several numbers.")},{func:"max($numbers)",desc:Xr("scss.builtin.max","Finds the maximum of several numbers.")},{func:"random([$limit])",desc:Xr("scss.builtin.random","Returns a random number.")},{func:"length($list)",desc:Xr("scss.builtin.length","Returns the length of a list.")},{func:"nth($list, $n)",desc:Xr("scss.builtin.nth","Returns a specific item in a list.")},{func:"set-nth($list, $n, $value)",desc:Xr("scss.builtin.set-nth","Replaces the nth item in a list.")},{func:"join($list1, $list2, [$separator])",desc:Xr("scss.builtin.join","Joins together two lists into one.")},{func:"append($list1, $val, [$separator])",desc:Xr("scss.builtin.append","Appends a single value onto the end of a list.")},{func:"zip($lists)",desc:Xr("scss.builtin.zip","Combines several lists into a single multidimensional list.")},{func:"index($list, $value)",desc:Xr("scss.builtin.index","Returns the position of a value within a list.")},{func:"list-separator(#list)",desc:Xr("scss.builtin.list-separator","Returns the separator of a list.")},{func:"map-get($map, $key)",desc:Xr("scss.builtin.map-get","Returns the value in a map associated with a given key.")},{func:"map-merge($map1, $map2)",desc:Xr("scss.builtin.map-merge","Merges two maps together into a new map.")},{func:"map-remove($map, $keys)",desc:Xr("scss.builtin.map-remove","Returns a new map with keys removed.")},{func:"map-keys($map)",desc:Xr("scss.builtin.map-keys","Returns a list of all keys in a map.")},{func:"map-values($map)",desc:Xr("scss.builtin.map-values","Returns a list of all values in a map.")},{func:"map-has-key($map, $key)",desc:Xr("scss.builtin.map-has-key","Returns whether a map has a value associated with a given key.")},{func:"keywords($args)",desc:Xr("scss.builtin.keywords","Returns the keywords passed to a function that takes variable arguments.")},{func:"feature-exists($feature)",desc:Xr("scss.builtin.feature-exists","Returns whether a feature exists in the current Sass runtime.")},{func:"variable-exists($name)",desc:Xr("scss.builtin.variable-exists","Returns whether a variable with the given name exists in the current scope.")},{func:"global-variable-exists($name)",desc:Xr("scss.builtin.global-variable-exists","Returns whether a variable with the given name exists in the global scope.")},{func:"function-exists($name)",desc:Xr("scss.builtin.function-exists","Returns whether a function with the given name exists.")},{func:"mixin-exists($name)",desc:Xr("scss.builtin.mixin-exists","Returns whether a mixin with the given name exists.")},{func:"inspect($value)",desc:Xr("scss.builtin.inspect","Returns the string representation of a value as it would be represented in Sass.")},{func:"type-of($value)",desc:Xr("scss.builtin.type-of","Returns the type of a value.")},{func:"unit($number)",desc:Xr("scss.builtin.unit","Returns the unit(s) associated with a number.")},{func:"unitless($number)",desc:Xr("scss.builtin.unitless","Returns whether a number has units.")},{func:"comparable($number1, $number2)",desc:Xr("scss.builtin.comparable","Returns whether two numbers can be added, subtracted, or compared.")},{func:"call($name, $args…)",desc:Xr("scss.builtin.call","Dynamically calls a Sass function.")}],t.scssAtDirectives=[{label:"@extend",documentation:Xr("scss.builtin.@extend","Inherits the styles of another selector."),kind:Un.Keyword},{label:"@at-root",documentation:Xr("scss.builtin.@at-root","Causes one or more rules to be emitted at the root of the document."),kind:Un.Keyword},{label:"@debug",documentation:Xr("scss.builtin.@debug","Prints the value of an expression to the standard error output stream. Useful for debugging complicated Sass files."),kind:Un.Keyword},{label:"@warn",documentation:Xr("scss.builtin.@warn","Prints the value of an expression to the standard error output stream. Useful for libraries that need to warn users of deprecations or recovering from minor mixin usage mistakes. Warnings can be turned off with the `--quiet` command-line option or the `:quiet` Sass option."),kind:Un.Keyword},{label:"@error",documentation:Xr("scss.builtin.@error","Throws the value of an expression as a fatal error with stack trace. Useful for validating arguments to mixins and functions."),kind:Un.Keyword},{label:"@if",documentation:Xr("scss.builtin.@if","Includes the body if the expression does not evaluate to `false` or `null`."),insertText:"@if ${1:expr} {\n\t$0\n}",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@for",documentation:Xr("scss.builtin.@for","For loop that repeatedly outputs a set of styles for each `$var` in the `from/through` or `from/to` clause."),insertText:"@for \\$${1:var} from ${2:start} ${3|to,through|} ${4:end} {\n\t$0\n}",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@each",documentation:Xr("scss.builtin.@each","Each loop that sets `$var` to each item in the list or map, then outputs the styles it contains using that value of `$var`."),insertText:"@each \\$${1:var} in ${2:list} {\n\t$0\n}",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@while",documentation:Xr("scss.builtin.@while","While loop that takes an expression and repeatedly outputs the nested styles until the statement evaluates to `false`."),insertText:"@while ${1:condition} {\n\t$0\n}",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@mixin",documentation:Xr("scss.builtin.@mixin","Defines styles that can be re-used throughout the stylesheet with `@include`."),insertText:"@mixin ${1:name} {\n\t$0\n}",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@include",documentation:Xr("scss.builtin.@include","Includes the styles defined by another mixin into the current rule."),kind:Un.Keyword},{label:"@function",documentation:Xr("scss.builtin.@function","Defines complex operations that can be re-used throughout stylesheets."),kind:Un.Keyword}],t.scssModuleLoaders=[{label:"@use",documentation:Xr("scss.builtin.@use","Loads mixins, functions, and variables from other Sass stylesheets as 'modules', and combines CSS from multiple stylesheets together."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/at-rules/use"}],insertText:"@use '$0';",insertTextFormat:jn.Snippet,kind:Un.Keyword},{label:"@forward",documentation:Xr("scss.builtin.@forward","Loads a Sass stylesheet and makes its mixins, functions, and variables available when this stylesheet is loaded with the @use rule."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/at-rules/forward"}],insertText:"@forward '$0';",insertTextFormat:jn.Snippet,kind:Un.Keyword}],t.scssModuleBuiltIns=[{label:"sass:math",documentation:Xr("scss.builtin.sass:math","Provides functions that operate on numbers."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/math"}],kind:Un.Module},{label:"sass:string",documentation:Xr("scss.builtin.sass:string","Makes it easy to combine, search, or split apart strings."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/string"}],kind:Un.Module},{label:"sass:color",documentation:Xr("scss.builtin.sass:color","Generates new colors based on existing ones, making it easy to build color themes."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/color"}],kind:Un.Module},{label:"sass:list",documentation:Xr("scss.builtin.sass:list","Lets you access and modify values in lists."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/list"}],kind:Un.Module},{label:"sass:map",documentation:Xr("scss.builtin.sass:map","Makes it possible to look up the value associated with a key in a map, and much more."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/map"}],kind:Un.Module},{label:"sass:selector",documentation:Xr("scss.builtin.sass:selector","Provides access to Sass’s powerful selector engine."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/selector"}],kind:Un.Module},{label:"sass:meta",documentation:Xr("scss.builtin.sass:meta","Exposes the details of Sass’s inner workings."),references:[{name:"Sass documentation",url:"https://sass-lang.com/documentation/modules/meta"}],kind:Un.Module}]}(Si);function Zr(e){e.forEach(function(e){if(e.documentation&&e.references&&e.references.length>0){var t="string"==typeof e.documentation?{kind:"markdown",value:e.documentation}:{kind:"markdown",value:e.documentation.value};t.value+="\n\n",t.value+=e.references.map(function(e){return"["+e.name+"]("+e.url+")"}).join(" | "),e.documentation=t}})}var Qr=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),eo="/".charCodeAt(0),to="\n".charCodeAt(0),no="\r".charCodeAt(0),io="\f".charCodeAt(0),ro="`".charCodeAt(0),oo=".".charCodeAt(0),so=i.CustomToken,ao=so++,lo=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Qr(t,e),t.prototype.scanNext=function(t){var n=this.escapedJavaScript();return null!==n?this.finishToken(t,n):this.stream.advanceIfChars([oo,oo,oo])?this.finishToken(t,ao):e.prototype.scanNext.call(this,t)},t.prototype.comment=function(){return!!e.prototype.comment.call(this)||!(this.inURL||!this.stream.advanceIfChars([eo,eo]))&&(this.stream.advanceWhileChar(function(e){switch(e){case to:case no:case io:return!1;default:return!0}}),!0)},t.prototype.escapedJavaScript=function(){return this.stream.peekChar()===ro?(this.stream.advance(1),this.stream.advanceWhileChar(function(e){return e!==ro}),this.stream.advanceIfChar(ro)?i.EscapedJavaScript:i.BadEscapedJavaScript):null},t}(X),co=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),po=(function(e){function t(){return e.call(this,new lo)||this}co(t,e),t.prototype._parseStylesheetStatement=function(t){return void 0===t&&(t=!1),this.peek(i.AtKeyword)?this._parseVariableDeclaration()||this._parsePlugin()||e.prototype._parseStylesheetAtStatement.call(this,t):this._tryParseMixinDeclaration()||this._tryParseMixinReference()||this._parseFunction()||this._parseRuleset(!0)},t.prototype._parseImport=function(){if(!this.peekKeyword("@import")&&!this.peekKeyword("@import-once"))return null;var e=this.create(Ie);if(this.consumeToken(),this.accept(i.ParenthesisL)){if(!this.accept(i.Ident))return this.finish(e,bt.IdentifierExpected,[i.SemiColon]);do{if(!this.accept(i.Comma))break}while(this.accept(i.Ident));if(!this.accept(i.ParenthesisR))return this.finish(e,bt.RightParenthesisExpected,[i.SemiColon])}return e.addChild(this._parseURILiteral())||e.addChild(this._parseStringLiteral())?(this.peek(i.SemiColon)||this.peek(i.EOF)||e.setMedialist(this._parseMediaQueryList()),this.finish(e)):this.finish(e,bt.URIOrStringExpected,[i.SemiColon])},t.prototype._parsePlugin=function(){if(!this.peekKeyword("@plugin"))return null;var e=this.createNode(H.Plugin);return this.consumeToken(),e.addChild(this._parseStringLiteral())?this.accept(i.SemiColon)?this.finish(e):this.finish(e,bt.SemiColonExpected):this.finish(e,bt.StringLiteralExpected)},t.prototype._parseMediaQuery=function(t){var n=e.prototype._parseMediaQuery.call(this,t);if(!n){var i=this.create(je);return i.addChild(this._parseVariable())?this.finish(i):null}return n},t.prototype._parseMediaDeclaration=function(e){return void 0===e&&(e=!1),this._tryParseRuleset(e)||this._tryToParseDeclaration()||this._tryParseMixinDeclaration()||this._tryParseMixinReference()||this._parseDetachedRuleSetMixin()||this._parseStylesheetStatement(e)},t.prototype._parseMediaFeatureName=function(){return this._parseIdent()||this._parseVariable()},t.prototype._parseVariableDeclaration=function(e){void 0===e&&(e=[]);var t=this.create(et),n=this.mark();if(!t.setVariable(this._parseVariable(!0)))return null;if(!this.accept(i.Colon))return this.restoreAtMark(n),null;if(this.prevToken&&(t.colonPosition=this.prevToken.offset),t.setValue(this._parseDetachedRuleSet()))t.needsSemicolon=!1;else if(!t.setValue(this._parseExpr()))return this.finish(t,bt.VariableValueExpected,[],e);return t.addChild(this._parsePrio()),this.peek(i.SemiColon)&&(t.semicolonPosition=this.token.offset),this.finish(t)},t.prototype._parseDetachedRuleSet=function(){var e=this.mark();if(this.peekDelim("#")||this.peekDelim(".")){if(this.consumeToken(),this.hasWhitespace()||!this.accept(i.ParenthesisL))return this.restoreAtMark(e),null;var t=this.create(ot);if(t.getParameters().addChild(this._parseMixinParameter()))for(;(this.accept(i.Comma)||this.accept(i.SemiColon))&&!this.peek(i.ParenthesisR);)t.getParameters().addChild(this._parseMixinParameter())||this.markError(t,bt.IdentifierExpected,[],[i.ParenthesisR]);if(!this.accept(i.ParenthesisR))return this.restoreAtMark(e),null}if(!this.peek(i.CurlyL))return null;var n=this.create(ae);return this._parseBody(n,this._parseDetachedRuleSetBody.bind(this)),this.finish(n)},t.prototype._parseDetachedRuleSetBody=function(){return this._tryParseKeyframeSelector()||this._parseRuleSetDeclaration()},t.prototype._addLookupChildren=function(e){if(!e.addChild(this._parseLookupValue()))return!1;for(var t=!1;this.peek(i.BracketL)&&(t=!0),e.addChild(this._parseLookupValue());)t=!1;return!t},t.prototype._parseLookupValue=function(){var e=this.create(ne),t=this.mark();return this.accept(i.BracketL)&&((e.addChild(this._parseVariable(!1,!0))||e.addChild(this._parsePropertyIdentifier()))&&this.accept(i.BracketR)||this.accept(i.BracketR))?e:(this.restoreAtMark(t),null)},t.prototype._parseVariable=function(e,t){void 0===e&&(e=!1),void 0===t&&(t=!1);var n=!e&&this.peekDelim("$");if(!this.peekDelim("@")&&!n&&!this.peek(i.AtKeyword))return null;for(var r=this.create(nt),o=this.mark();this.acceptDelim("@")||!e&&this.acceptDelim("$");)if(this.hasWhitespace())return this.restoreAtMark(o),null;return(this.accept(i.AtKeyword)||this.accept(i.Ident))&&(t||!this.peek(i.BracketL)||this._addLookupChildren(r))?r:(this.restoreAtMark(o),null)},t.prototype._parseTerm=function(){var t=e.prototype._parseTerm.call(this);return t||((t=this.create(Ge)).setExpression(this._parseVariable())||t.setExpression(this._parseEscaped())||t.setExpression(this._tryParseMixinReference(!1))?this.finish(t):null)},t.prototype._parseEscaped=function(){if(this.peek(i.EscapedJavaScript)||this.peek(i.BadEscapedJavaScript)){var e=this.createNode(H.EscapedValue);return this.consumeToken(),this.finish(e)}if(this.peekDelim("~")){e=this.createNode(H.EscapedValue);return this.consumeToken(),this.accept(i.String)||this.accept(i.EscapedJavaScript)?this.finish(e):this.finish(e,bt.TermExpected)}return null},t.prototype._parseOperator=function(){var t=this._parseGuardOperator();return t||e.prototype._parseOperator.call(this)},t.prototype._parseGuardOperator=function(){if(this.peekDelim(">")){var e=this.createNode(H.Operator);return this.consumeToken(),this.acceptDelim("="),e}if(this.peekDelim("=")){e=this.createNode(H.Operator);return this.consumeToken(),this.acceptDelim("<"),e}if(this.peekDelim("<")){e=this.createNode(H.Operator);return this.consumeToken(),this.acceptDelim("="),e}return null},t.prototype._parseRuleSetDeclaration=function(){return this.peek(i.AtKeyword)?this._parseKeyframe()||this._parseMedia(!0)||this._parseImport()||this._parseSupports(!0)||this._parseDetachedRuleSetMixin()||this._parseVariableDeclaration()||this._parseUnknownAtRule():this._tryParseMixinDeclaration()||this._tryParseRuleset(!0)||this._tryParseMixinReference()||this._parseFunction()||this._parseExtend()||e.prototype._parseRuleSetDeclaration.call(this)},t.prototype._parseKeyframeIdent=function(){return this._parseIdent([Y.Keyframe])||this._parseVariable()},t.prototype._parseKeyframeSelector=function(){return this._parseDetachedRuleSetMixin()||e.prototype._parseKeyframeSelector.call(this)},t.prototype._parseSimpleSelectorBody=function(){return this._parseSelectorCombinator()||e.prototype._parseSimpleSelectorBody.call(this)},t.prototype._parseSelector=function(e){var t=this.create(ce),n=!1;for(e&&(n=t.addChild(this._parseCombinator()));t.addChild(this._parseSimpleSelector());){n=!0;var r=this.mark();if(t.addChild(this._parseGuard())&&this.peek(i.CurlyL))break;this.restoreAtMark(r),t.addChild(this._parseCombinator())}return n?this.finish(t):null},t.prototype._parseSelectorCombinator=function(){if(this.peekDelim("&")){var e=this.createNode(H.SelectorCombinator);for(this.consumeToken();!this.hasWhitespace()&&(this.acceptDelim("-")||this.accept(i.Num)||this.accept(i.Dimension)||e.addChild(this._parseIdent())||this.acceptDelim("&")););return this.finish(e)}return null},t.prototype._parseSelectorIdent=function(){if(!this.peekInterpolatedIdent())return null;var e=this.createNode(H.SelectorInterpolation);return this._acceptInterpolatedIdent(e)?this.finish(e):null},t.prototype._parsePropertyIdentifier=function(e){void 0===e&&(e=!1);var t=/^[\w-]+/;if(!this.peekInterpolatedIdent()&&!this.peekRegExp(this.token.type,t))return null;var n=this.mark(),i=this.create(re);i.isCustomProperty=this.acceptDelim("-")&&this.acceptDelim("-");return(e?i.isCustomProperty?i.addChild(this._parseIdent()):i.addChild(this._parseRegexp(t)):i.isCustomProperty?this._acceptInterpolatedIdent(i):this._acceptInterpolatedIdent(i,t))?(e||this.hasWhitespace()||(this.acceptDelim("+"),this.hasWhitespace()||this.acceptIdent("_")),this.finish(i)):(this.restoreAtMark(n),null)},t.prototype.peekInterpolatedIdent=function(){return this.peek(i.Ident)||this.peekDelim("@")||this.peekDelim("$")||this.peekDelim("-")},t.prototype._acceptInterpolatedIdent=function(e,t){for(var n=this,r=!1,o=function(){var e=n.mark();return n.acceptDelim("-")&&(n.hasWhitespace()||n.acceptDelim("-"),n.hasWhitespace())?(n.restoreAtMark(e),null):n._parseInterpolation()},s=t?function(){return n.acceptRegexp(t)}:function(){return n.accept(i.Ident)};(s()||e.addChild(this._parseInterpolation()||this.try(o)))&&(r=!0,!this.hasWhitespace()););return r},t.prototype._parseInterpolation=function(){var e=this.mark();if(this.peekDelim("@")||this.peekDelim("$")){var t=this.createNode(H.Interpolation);return this.consumeToken(),this.hasWhitespace()||!this.accept(i.CurlyL)?(this.restoreAtMark(e),null):t.addChild(this._parseIdent())?this.accept(i.CurlyR)?this.finish(t):this.finish(t,bt.RightCurlyExpected):this.finish(t,bt.IdentifierExpected)}return null},t.prototype._tryParseMixinDeclaration=function(){var e=this.mark(),t=this.create(ot);if(!t.setIdentifier(this._parseMixinDeclarationIdentifier())||!this.accept(i.ParenthesisL))return this.restoreAtMark(e),null;if(t.getParameters().addChild(this._parseMixinParameter()))for(;(this.accept(i.Comma)||this.accept(i.SemiColon))&&!this.peek(i.ParenthesisR);)t.getParameters().addChild(this._parseMixinParameter())||this.markError(t,bt.IdentifierExpected,[],[i.ParenthesisR]);return this.accept(i.ParenthesisR)?(t.setGuard(this._parseGuard()),this.peek(i.CurlyL)?this._parseBody(t,this._parseMixInBodyDeclaration.bind(this)):(this.restoreAtMark(e),null)):(this.restoreAtMark(e),null)},t.prototype._parseMixInBodyDeclaration=function(){return this._parseFontFace()||this._parseRuleSetDeclaration()},t.prototype._parseMixinDeclarationIdentifier=function(){var e;if(this.peekDelim("#")||this.peekDelim(".")){if(e=this.create(re),this.consumeToken(),this.hasWhitespace()||!e.addChild(this._parseIdent()))return null}else{if(!this.peek(i.Hash))return null;e=this.create(re),this.consumeToken()}return e.referenceTypes=[Y.Mixin],this.finish(e)},t.prototype._parsePseudo=function(){if(!this.peek(i.Colon))return null;var t=this.mark(),n=this.create(it);return this.consumeToken(),this.acceptIdent("extend")?this._completeExtends(n):(this.restoreAtMark(t),e.prototype._parsePseudo.call(this))},t.prototype._parseExtend=function(){if(!this.peekDelim("&"))return null;var e=this.mark(),t=this.create(it);return this.consumeToken(),!this.hasWhitespace()&&this.accept(i.Colon)&&this.acceptIdent("extend")?this._completeExtends(t):(this.restoreAtMark(e),null)},t.prototype._completeExtends=function(e){if(!this.accept(i.ParenthesisL))return this.finish(e,bt.LeftParenthesisExpected);var t=e.getSelectors();if(!t.addChild(this._parseSelector(!0)))return this.finish(e,bt.SelectorExpected);for(;this.accept(i.Comma);)if(!t.addChild(this._parseSelector(!0)))return this.finish(e,bt.SelectorExpected);return this.accept(i.ParenthesisR)?this.finish(e):this.finish(e,bt.RightParenthesisExpected)},t.prototype._parseDetachedRuleSetMixin=function(){if(!this.peek(i.AtKeyword))return null;var e=this.mark(),t=this.create(rt);return!t.addChild(this._parseVariable(!0))||!this.hasWhitespace()&&this.accept(i.ParenthesisL)?this.accept(i.ParenthesisR)?this.finish(t):this.finish(t,bt.RightParenthesisExpected):(this.restoreAtMark(e),null)},t.prototype._tryParseMixinReference=function(e){void 0===e&&(e=!0);for(var t=this.mark(),n=this.create(rt),r=this._parseMixinDeclarationIdentifier();r;){this.acceptDelim(">");var o=this._parseMixinDeclarationIdentifier();if(!o)break;n.getNamespaces().addChild(r),r=o}if(!n.setIdentifier(r))return this.restoreAtMark(t),null;var s=!1;if(!this.hasWhitespace()&&this.accept(i.ParenthesisL)){if(s=!0,n.getArguments().addChild(this._parseMixinArgument()))for(;(this.accept(i.Comma)||this.accept(i.SemiColon))&&!this.peek(i.ParenthesisR);)if(!n.getArguments().addChild(this._parseMixinArgument()))return this.finish(n,bt.ExpressionExpected);if(!this.accept(i.ParenthesisR))return this.finish(n,bt.RightParenthesisExpected);r.referenceTypes=[Y.Mixin]}else r.referenceTypes=[Y.Mixin,Y.Rule];return this.peek(i.BracketL)?e||this._addLookupChildren(n):n.addChild(this._parsePrio()),s||this.peek(i.SemiColon)||this.peek(i.CurlyR)||this.peek(i.EOF)?this.finish(n):(this.restoreAtMark(t),null)},t.prototype._parseMixinArgument=function(){var e=this.create(ve),t=this.mark(),n=this._parseVariable();return n&&(this.accept(i.Colon)?e.setIdentifier(n):this.restoreAtMark(t)),e.setValue(this._parseDetachedRuleSet()||this._parseExpr(!0))?this.finish(e):(this.restoreAtMark(t),null)},t.prototype._parseMixinParameter=function(){var e=this.create(ye);if(this.peekKeyword("@rest")){var t=this.create(ne);return this.consumeToken(),this.accept(ao)?(e.setIdentifier(this.finish(t)),this.finish(e)):this.finish(e,bt.DotExpected,[],[i.Comma,i.ParenthesisR])}if(this.peek(ao)){var n=this.create(ne);return this.consumeToken(),e.setIdentifier(this.finish(n)),this.finish(e)}var r=!1;return e.setIdentifier(this._parseVariable())&&(this.accept(i.Colon),r=!0),e.setDefaultValue(this._parseDetachedRuleSet()||this._parseExpr(!0))||r?this.finish(e):null},t.prototype._parseGuard=function(){if(!this.peekIdent("when"))return null;var e=this.create(lt);if(this.consumeToken(),e.isNegated=this.acceptIdent("not"),!e.getConditions().addChild(this._parseGuardCondition()))return this.finish(e,bt.ConditionExpected);for(;this.acceptIdent("and")||this.accept(i.Comma);)if(!e.getConditions().addChild(this._parseGuardCondition()))return this.finish(e,bt.ConditionExpected);return this.finish(e)},t.prototype._parseGuardCondition=function(){if(!this.peek(i.ParenthesisL))return null;var e=this.create(ct);return this.consumeToken(),e.addChild(this._parseExpr()),this.accept(i.ParenthesisR)?this.finish(e):this.finish(e,bt.RightParenthesisExpected)},t.prototype._parseFunction=function(){var e=this.mark(),t=this.create(be);if(!t.setIdentifier(this._parseFunctionIdentifier()))return null;if(this.hasWhitespace()||!this.accept(i.ParenthesisL))return this.restoreAtMark(e),null;if(t.getArguments().addChild(this._parseMixinArgument()))for(;(this.accept(i.Comma)||this.accept(i.SemiColon))&&!this.peek(i.ParenthesisR);)if(!t.getArguments().addChild(this._parseMixinArgument()))return this.finish(t,bt.ExpressionExpected);return this.accept(i.ParenthesisR)?this.finish(t):this.finish(t,bt.RightParenthesisExpected)},t.prototype._parseFunctionIdentifier=function(){if(this.peekDelim("%")){var t=this.create(re);return t.referenceTypes=[Y.Function],this.consumeToken(),this.finish(t)}return e.prototype._parseFunctionIdentifier.call(this)},t.prototype._parseURLArgument=function(){var t=this.mark(),n=e.prototype._parseURLArgument.call(this);if(!n||!this.peek(i.ParenthesisR)){this.restoreAtMark(t);var r=this.create(ne);return r.addChild(this._parseBinaryExpr()),this.finish(r)}return n}}(nn),function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),ho=ut();!function(e){function t(t){return e.call(this,"@",t)||this}po(t,e),t.prototype.createFunctionProposals=function(e,t,n,i){for(var r=0,o=e;r<o.length;r++){var s=o[r],a={label:s.name,detail:s.example,documentation:s.description,textEdit:wn.replace(this.getCompletionRange(t),s.name+"($0)"),insertTextFormat:jn.Snippet,kind:Un.Function};n&&(a.sortText="z"),i.items.push(a)}return i},t.prototype.getTermProposals=function(n,i,r){var o=t.builtInProposals;return n&&(o=o.filter(function(e){return!e.type||!n.restrictions||-1!==n.restrictions.indexOf(e.type)})),this.createFunctionProposals(o,i,!0,r),e.prototype.getTermProposals.call(this,n,i,r)},t.prototype.getColorProposals=function(n,i,r){return this.createFunctionProposals(t.colorProposals,i,!1,r),e.prototype.getColorProposals.call(this,n,i,r)},t.prototype.getCompletionsForDeclarationProperty=function(t,n){return this.getCompletionsForSelector(null,!0,n),e.prototype.getCompletionsForDeclarationProperty.call(this,t,n)},t.builtInProposals=[{name:"if",example:"if(condition, trueValue [, falseValue]);",description:ho("less.builtin.if","returns one of two values depending on a condition.")},{name:"boolean",example:"boolean(condition);",description:ho("less.builtin.boolean",'"store" a boolean test for later evaluation in a guard or if().')},{name:"length",example:"length(@list);",description:ho("less.builtin.length","returns the number of elements in a value list")},{name:"extract",example:"extract(@list, index);",description:ho("less.builtin.extract","returns a value at the specified position in the list")},{name:"range",example:"range([start, ] end [, step]);",description:ho("less.builtin.range","generate a list spanning a range of values")},{name:"each",example:"each(@list, ruleset);",description:ho("less.builtin.each","bind the evaluation of a ruleset to each member of a list.")},{name:"escape",example:"escape(@string);",description:ho("less.builtin.escape","URL encodes a string")},{name:"e",example:"e(@string);",description:ho("less.builtin.e","escape string content")},{name:"replace",example:"replace(@string, @pattern, @replacement[, @flags]);",description:ho("less.builtin.replace","string replace")},{name:"unit",example:"unit(@dimension, [@unit: '']);",description:ho("less.builtin.unit","remove or change the unit of a dimension")},{name:"color",example:"color(@string);",description:ho("less.builtin.color","parses a string to a color"),type:"color"},{name:"convert",example:"convert(@value, unit);",description:ho("less.builtin.convert","converts numbers from one type into another")},{name:"data-uri",example:"data-uri([mimetype,] url);",description:ho("less.builtin.data-uri","inlines a resource and falls back to `url()`"),type:"url"},{name:"abs",description:ho("less.builtin.abs","absolute value of a number"),example:"abs(number);"},{name:"acos",description:ho("less.builtin.acos","arccosine - inverse of cosine function"),example:"acos(number);"},{name:"asin",description:ho("less.builtin.asin","arcsine - inverse of sine function"),example:"asin(number);"},{name:"ceil",example:"ceil(@number);",description:ho("less.builtin.ceil","rounds up to an integer")},{name:"cos",description:ho("less.builtin.cos","cosine function"),example:"cos(number);"},{name:"floor",description:ho("less.builtin.floor","rounds down to an integer"),example:"floor(@number);"},{name:"percentage",description:ho("less.builtin.percentage","converts to a %, e.g. 0.5 > 50%"),example:"percentage(@number);",type:"percentage"},{name:"round",description:ho("less.builtin.round","rounds a number to a number of places"),example:"round(number, [places: 0]);"},{name:"sqrt",description:ho("less.builtin.sqrt","calculates square root of a number"),example:"sqrt(number);"},{name:"sin",description:ho("less.builtin.sin","sine function"),example:"sin(number);"},{name:"tan",description:ho("less.builtin.tan","tangent function"),example:"tan(number);"},{name:"atan",description:ho("less.builtin.atan","arctangent - inverse of tangent function"),example:"atan(number);"},{name:"pi",description:ho("less.builtin.pi","returns pi"),example:"pi();"},{name:"pow",description:ho("less.builtin.pow","first argument raised to the power of the second argument"),example:"pow(@base, @exponent);"},{name:"mod",description:ho("less.builtin.mod","first argument modulus second argument"),example:"mod(number, number);"},{name:"min",description:ho("less.builtin.min","returns the lowest of one or more values"),example:"min(@x, @y);"},{name:"max",description:ho("less.builtin.max","returns the lowest of one or more values"),example:"max(@x, @y);"}],t.colorProposals=[{name:"argb",example:"argb(@color);",description:ho("less.builtin.argb","creates a #AARRGGBB")},{name:"hsl",example:"hsl(@hue, @saturation, @lightness);",description:ho("less.builtin.hsl","creates a color")},{name:"hsla",example:"hsla(@hue, @saturation, @lightness, @alpha);",description:ho("less.builtin.hsla","creates a color")},{name:"hsv",example:"hsv(@hue, @saturation, @value);",description:ho("less.builtin.hsv","creates a color")},{name:"hsva",example:"hsva(@hue, @saturation, @value, @alpha);",description:ho("less.builtin.hsva","creates a color")},{name:"hue",example:"hue(@color);",description:ho("less.builtin.hue","returns the `hue` channel of `@color` in the HSL space")},{name:"saturation",example:"saturation(@color);",description:ho("less.builtin.saturation","returns the `saturation` channel of `@color` in the HSL space")},{name:"lightness",example:"lightness(@color);",description:ho("less.builtin.lightness","returns the `lightness` channel of `@color` in the HSL space")},{name:"hsvhue",example:"hsvhue(@color);",description:ho("less.builtin.hsvhue","returns the `hue` channel of `@color` in the HSV space")},{name:"hsvsaturation",example:"hsvsaturation(@color);",description:ho("less.builtin.hsvsaturation","returns the `saturation` channel of `@color` in the HSV space")},{name:"hsvvalue",example:"hsvvalue(@color);",description:ho("less.builtin.hsvvalue","returns the `value` channel of `@color` in the HSV space")},{name:"red",example:"red(@color);",description:ho("less.builtin.red","returns the `red` channel of `@color`")},{name:"green",example:"green(@color);",description:ho("less.builtin.green","returns the `green` channel of `@color`")},{name:"blue",example:"blue(@color);",description:ho("less.builtin.blue","returns the `blue` channel of `@color`")},{name:"alpha",example:"alpha(@color);",description:ho("less.builtin.alpha","returns the `alpha` channel of `@color`")},{name:"luma",example:"luma(@color);",description:ho("less.builtin.luma","returns the `luma` value (perceptual brightness) of `@color`")},{name:"saturate",example:"saturate(@color, 10%);",description:ho("less.builtin.saturate","return `@color` 10% points more saturated")},{name:"desaturate",example:"desaturate(@color, 10%);",description:ho("less.builtin.desaturate","return `@color` 10% points less saturated")},{name:"lighten",example:"lighten(@color, 10%);",description:ho("less.builtin.lighten","return `@color` 10% points lighter")},{name:"darken",example:"darken(@color, 10%);",description:ho("less.builtin.darken","return `@color` 10% points darker")},{name:"fadein",example:"fadein(@color, 10%);",description:ho("less.builtin.fadein","return `@color` 10% points less transparent")},{name:"fadeout",example:"fadeout(@color, 10%);",description:ho("less.builtin.fadeout","return `@color` 10% points more transparent")},{name:"fade",example:"fade(@color, 50%);",description:ho("less.builtin.fade","return `@color` with 50% transparency")},{name:"spin",example:"spin(@color, 10);",description:ho("less.builtin.spin","return `@color` with a 10 degree larger in hue")},{name:"mix",example:"mix(@color1, @color2, [@weight: 50%]);",description:ho("less.builtin.mix","return a mix of `@color1` and `@color2`")},{name:"greyscale",example:"greyscale(@color);",description:ho("less.builtin.greyscale","returns a grey, 100% desaturated color")},{name:"contrast",example:"contrast(@color1, [@darkcolor: black], [@lightcolor: white], [@threshold: 43%]);",description:ho("less.builtin.contrast","return `@darkcolor` if `@color1 is> 43% luma` otherwise return `@lightcolor`, see notes")},{name:"multiply",example:"multiply(@color1, @color2);"},{name:"screen",example:"screen(@color1, @color2);"},{name:"overlay",example:"overlay(@color1, @color2);"},{name:"softlight",example:"softlight(@color1, @color2);"},{name:"hardlight",example:"hardlight(@color1, @color2);"},{name:"difference",example:"difference(@color1, @color2);"},{name:"exclusion",example:"exclusion(@color1, @color2);"},{name:"average",example:"average(@color1, @color2);"},{name:"negation",example:"negation(@color1, @color2);"}]}(Si);var mo=n("L0yG"),uo=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),fo=function(){return(fo=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)},go=function(e,t,n,i){return new(n||(n=Promise))(function(r,o){function s(e){try{l(i.next(e))}catch(e){o(e)}}function a(e){try{l(i.throw(e))}catch(e){o(e)}}function l(e){e.done?r(e.value):function(e){return e instanceof n?e:new n(function(t){t(e)})}(e.value).then(s,a)}l((i=i.apply(e,t||[])).next())})},bo=function(e,t){var n,i,r,o,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,i=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(r=(r=s.trys).length>0&&r[r.length-1])&&(6===o[0]||2===o[0])){s=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){s.label=o[1];break}if(6===o[0]&&s.label<r[1]){s.label=r[1],r=o;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(o);break}r[2]&&s.ops.pop(),s.trys.pop();continue}o=t.call(e,s)}catch(e){o=[6,e],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}};!function(e){function t(t){var n=e.call(this)||this;return n.fileSystemProvider=t,n}uo(t,e),t.prototype.isRawStringDocumentLinkNode=function(t){return e.prototype.isRawStringDocumentLinkNode.call(this,t)||t.type===H.Use||t.type===H.Forward},t.prototype.findDocumentLinks2=function(e,t,n){return go(this,void 0,void 0,function(){function i(e){return go(this,void 0,void 0,function(){var t;return bo(this,function(n){switch(n.label){case 0:if(!o)return[2,!1];n.label=1;case 1:return n.trys.push([1,3,,4]),[4,o.stat(e)];case 2:return(t=n.sent()).type===ui.Unknown&&-1===t.size?[2,!1]:[2,!0];case 3:return n.sent(),[2,!1];case 4:return[2]}})})}var r,o,s,a,l,c,d,p;return bo(this,function(h){switch(h.label){case 0:if(r=this.findDocumentLinks(e,t,n),o=this.fileSystemProvider,s=[],!o)return[3,9];a=0,h.label=1;case 1:if(!(a<r.length))return[3,8];if(!(l=r[a].target))return[3,7];c=null;try{c=mo.a.parse(l)}catch(e){if(e instanceof URIError)return[3,7];throw e}return(d=function(e){if(""!==e.path&&!e.path.endsWith(".scss")&&!e.path.endsWith(".css")){if(e.path.endsWith("/"))return[e.with({path:e.path+"index.scss"}).toString(),e.with({path:e.path+"_index.scss"}).toString()];var t=e.path.split("/"),n=t[t.length-1],i=e.path.slice(0,-n.length);if(n.startsWith("_"))return e.path.endsWith(".scss")?void 0:[e.with({path:e.path+".scss"}).toString()];var r=n+".scss",o=function(t){return e.with({path:i+t}).toString()};return[o(r),o("_"+r),o(r.slice(0,-5)+"/index.scss"),o(r.slice(0,-5)+"/_index.scss"),o(r.slice(0,-5)+".css")]}}(c))?[3,3]:[4,i(l)];case 2:return h.sent()&&s.push(r[a]),[3,7];case 3:p=0,h.label=4;case 4:return p<d.length?[4,i(d[p])]:[3,7];case 5:if(h.sent())return s.push(fo(fo({},r[a]),{target:d[p]})),[3,7];h.label=6;case 6:return p++,[3,4];case 7:return a++,[3,1];case 8:return[3,10];case 9:s.push.apply(s,r),h.label=10;case 10:return[2,s]}})})}}(Gi);var yo=monaco.Uri,vo=monaco.Range,wo=function(){function e(e,t,n){var i=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var r=function(e){var t,n=e.getModeId();n===i._languageId&&(i._listener[e.uri.toString()]=e.onDidChangeContent(function(){window.clearTimeout(t),t=window.setTimeout(function(){return i._doValidate(e.uri,n)},500)}),i._doValidate(e.uri,n))},o=function(e){monaco.editor.setModelMarkers(e,i._languageId,[]);var t=e.uri.toString(),n=i._listener[t];n&&(n.dispose(),delete i._listener[t])};this._disposables.push(monaco.editor.onDidCreateModel(r)),this._disposables.push(monaco.editor.onWillDisposeModel(o)),this._disposables.push(monaco.editor.onDidChangeModelLanguage(function(e){o(e.model),r(e.model)})),n.onDidChange(function(e){monaco.editor.getModels().forEach(function(e){e.getModeId()===i._languageId&&(o(e),r(e))})}),this._disposables.push({dispose:function(){for(var e in i._listener)i._listener[e].dispose()}}),monaco.editor.getModels().forEach(r)}return e.prototype.dispose=function(){this._disposables.forEach(function(e){return e&&e.dispose()}),this._disposables=[]},e.prototype._doValidate=function(e,t){this._worker(e).then(function(t){return t.doValidation(e.toString())}).then(function(n){var i=n.map(function(e){return function(e,t){var n="number"==typeof t.code?String(t.code):t.code;return{severity:function(e){switch(e){case gn.Error:return monaco.MarkerSeverity.Error;case gn.Warning:return monaco.MarkerSeverity.Warning;case gn.Information:return monaco.MarkerSeverity.Info;case gn.Hint:return monaco.MarkerSeverity.Hint;default:return monaco.MarkerSeverity.Info}}(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:n,source:t.source}}(0,e)}),r=monaco.editor.getModel(e);r.getModeId()===t&&monaco.editor.setModelMarkers(r,t,i)}).then(void 0,function(e){console.error(e)})},e}();function xo(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function So(e){if(e)return new monaco.Range(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function ko(e){if(e)return{range:So(e.range),text:e.newText}}var Co=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[" ",":"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.doComplete(r.toString(),xo(t))}).then(function(n){if(n){var i=e.getWordUntilPosition(t),r=new vo(t.lineNumber,i.startColumn,t.lineNumber,i.endColumn),o=n.items.map(function(e){var t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,range:r,kind:function(e){var t=monaco.languages.CompletionItemKind;switch(e){case Un.Text:return t.Text;case Un.Method:return t.Method;case Un.Function:return t.Function;case Un.Constructor:return t.Constructor;case Un.Field:return t.Field;case Un.Variable:return t.Variable;case Un.Class:return t.Class;case Un.Interface:return t.Interface;case Un.Module:return t.Module;case Un.Property:return t.Property;case Un.Unit:return t.Unit;case Un.Value:return t.Value;case Un.Enum:return t.Enum;case Un.Keyword:return t.Keyword;case Un.Snippet:return t.Snippet;case Un.Color:return t.Color;case Un.File:return t.File;case Un.Reference:return t.Reference}return t.Property}(e.kind)};return e.textEdit&&(t.range=So(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(ko)),e.insertTextFormat===jn.Snippet&&(t.insertTextRules=monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet),t});return{isIncomplete:n.isIncomplete,suggestions:o}}})},e}();function Fo(e){return"string"==typeof e?{value:e}:function(e){return e&&"object"==typeof e&&"string"==typeof e.kind}(e)?"plaintext"===e.kind?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}:{value:e.value}:{value:"```"+e.language+"\n"+e.value+"\n```\n"}}var zo=function(){function e(e){this._worker=e}return e.prototype.provideHover=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.doHover(i.toString(),xo(t))}).then(function(e){if(e)return{range:So(e.range),contents:function(e){if(e)return Array.isArray(e)?e.map(Fo):[Fo(e)]}(e.contents)}})},e}();var Do=function(){function e(e){this._worker=e}return e.prototype.provideDocumentHighlights=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.findDocumentHighlights(i.toString(),xo(t))}).then(function(e){if(e)return e.map(function(e){return{range:So(e.range),kind:function(e){switch(e){case Hn.Read:return monaco.languages.DocumentHighlightKind.Read;case Hn.Write:return monaco.languages.DocumentHighlightKind.Write;case Hn.Text:return monaco.languages.DocumentHighlightKind.Text}return monaco.languages.DocumentHighlightKind.Text}(e.kind)}})})},e}();function To(e){return{uri:yo.parse(e.uri),range:So(e.range)}}var Ro=function(){function e(e){this._worker=e}return e.prototype.provideDefinition=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.findDefinition(i.toString(),xo(t))}).then(function(e){if(e)return[To(e)]})},e}(),Eo=function(){function e(e){this._worker=e}return e.prototype.provideReferences=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.findReferences(r.toString(),xo(t))}).then(function(e){if(e)return e.map(To)})},e}();var Io=function(){function e(e){this._worker=e}return e.prototype.provideRenameEdits=function(e,t,n,i){var r=e.uri;return this._worker(r).then(function(e){return e.doRename(r.toString(),xo(t),n)}).then(function(e){return function(e){if(e&&e.changes){var t=[];for(var n in e.changes)for(var i=yo.parse(n),r=0,o=e.changes[n];r<o.length;r++){var s=o[r];t.push({resource:i,edit:{range:So(s.range),text:s.newText}})}return{edits:t}}}(e)})},e}();var Mo=function(){function e(e){this._worker=e}return e.prototype.provideDocumentSymbols=function(e,t){var n=e.uri;return this._worker(n).then(function(e){return e.findDocumentSymbols(n.toString())}).then(function(e){if(e)return e.map(function(e){return{name:e.name,detail:"",containerName:e.containerName,kind:function(e){var t=monaco.languages.SymbolKind;switch(e){case Xn.File:return t.Array;case Xn.Module:return t.Module;case Xn.Namespace:return t.Namespace;case Xn.Package:return t.Package;case Xn.Class:return t.Class;case Xn.Method:return t.Method;case Xn.Property:return t.Property;case Xn.Field:return t.Field;case Xn.Constructor:return t.Constructor;case Xn.Enum:return t.Enum;case Xn.Interface:return t.Interface;case Xn.Function:return t.Function;case Xn.Variable:return t.Variable;case Xn.Constant:return t.Constant;case Xn.String:return t.String;case Xn.Number:return t.Number;case Xn.Boolean:return t.Boolean;case Xn.Array:return t.Array}return t.Function}(e.kind),tags:[],range:So(e.location.range),selectionRange:So(e.location.range)}})})},e}(),No=function(){function e(e){this._worker=e}return e.prototype.provideDocumentColors=function(e,t){var n=e.uri;return this._worker(n).then(function(e){return e.findDocumentColors(n.toString())}).then(function(e){if(e)return e.map(function(e){return{color:e.color,range:So(e.range)}})})},e.prototype.provideColorPresentations=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.getColorPresentations(i.toString(),t.color,function(e){if(e)return{start:{line:e.startLineNumber-1,character:e.startColumn-1},end:{line:e.endLineNumber-1,character:e.endColumn-1}}}(t.range))}).then(function(e){if(e)return e.map(function(e){var t={label:e.label};return e.textEdit&&(t.textEdit=ko(e.textEdit)),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(ko)),t})})},e}(),Po=function(){function e(e){this._worker=e}return e.prototype.provideFoldingRanges=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.getFoldingRanges(i.toString(),t)}).then(function(e){if(e)return e.map(function(e){var t={start:e.startLine+1,end:e.endLine+1};return void 0!==e.kind&&(t.kind=function(e){switch(e){case mn.Comment:return monaco.languages.FoldingRangeKind.Comment;case mn.Imports:return monaco.languages.FoldingRangeKind.Imports;case mn.Region:return monaco.languages.FoldingRangeKind.Region}}(e.kind)),t})})},e}();var _o=function(){function e(e){this._worker=e}return e.prototype.provideSelectionRanges=function(e,t,n){var i=e.uri;return this._worker(i).then(function(e){return e.getSelectionRanges(i.toString(),t.map(xo))}).then(function(e){if(e)return e.map(function(e){for(var t=[];e;)t.push({range:So(e.range)}),e=e.parent;return t})})},e}();function Ao(e){var t=[],n=[],i=new r(e);t.push(i);var o=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return i.getLanguageServiceWorker.apply(i,e)};return function(){var t=e.languageId,i=e.modeConfiguration;Oo(n),i.completionItems&&n.push(monaco.languages.registerCompletionItemProvider(t,new Co(o))),i.hovers&&n.push(monaco.languages.registerHoverProvider(t,new zo(o))),i.documentHighlights&&n.push(monaco.languages.registerDocumentHighlightProvider(t,new Do(o))),i.definitions&&n.push(monaco.languages.registerDefinitionProvider(t,new Ro(o))),i.references&&n.push(monaco.languages.registerReferenceProvider(t,new Eo(o))),i.documentSymbols&&n.push(monaco.languages.registerDocumentSymbolProvider(t,new Mo(o))),i.rename&&n.push(monaco.languages.registerRenameProvider(t,new Io(o))),i.colors&&n.push(monaco.languages.registerColorProvider(t,new No(o))),i.foldingRanges&&n.push(monaco.languages.registerFoldingRangeProvider(t,new Po(o))),i.diagnostics&&n.push(new wo(t,o,e)),i.selectionRanges&&n.push(monaco.languages.registerSelectionRangeProvider(t,new _o(o)))}(),t.push(Wo(n)),Wo(t)}function Wo(e){return{dispose:function(){return Oo(e)}}}function Oo(e){for(;e.length;)e.pop().dispose()}n.d(t,"setupMode",function(){return Ao})},L0yG:function(e,t,n){"use strict";(function(e){n.d(t,"a",function(){return m});var i,r,o=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();if("object"==typeof e)r="win32"===e.platform;else if("object"==typeof navigator){var s=navigator.userAgent;r=s.indexOf("Windows")>=0}var a=/^\w[\w\d+.-]*$/,l=/^\//,c=/^\/\//;var d="",p="/",h=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,m=function(){function e(e,t,n,i,r,o){void 0===o&&(o=!1),"object"==typeof e?(this.scheme=e.scheme||d,this.authority=e.authority||d,this.path=e.path||d,this.query=e.query||d,this.fragment=e.fragment||d):(this.scheme=function(e,t){return e||t?e:"file"}(e,o),this.authority=t||d,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==p&&(t=p+t):t=p}return t}(this.scheme,n||d),this.query=i||d,this.fragment=r||d,function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!a.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!l.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(c.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,o))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return v(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,n=e.authority,i=e.path,r=e.query,o=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=d),void 0===n?n=this.authority:null===n&&(n=d),void 0===i?i=this.path:null===i&&(i=d),void 0===r?r=this.query:null===r&&(r=d),void 0===o?o=this.fragment:null===o&&(o=d),t===this.scheme&&n===this.authority&&i===this.path&&r===this.query&&o===this.fragment?this:new f(t,n,i,r,o)},e.parse=function(e,t){void 0===t&&(t=!1);var n=h.exec(e);return n?new f(n[2]||d,decodeURIComponent(n[4]||d),decodeURIComponent(n[5]||d),decodeURIComponent(n[7]||d),decodeURIComponent(n[9]||d),t):new f(d,d,d,d,d)},e.file=function(e){var t=d;if(r&&(e=e.replace(/\\/g,p)),e[0]===p&&e[1]===p){var n=e.indexOf(p,2);-1===n?(t=e.substring(2),e=p):(t=e.substring(2,n),e=e.substring(n)||p)}return new f("file",t,e,d,d)},e.from=function(e){return new f(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),w(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var n=new f(t);return n._formatted=t.external,n._fsPath=t._sep===u?t.fsPath:null,n}return t},e}(),u=r?1:void 0,f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return o(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=v(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?w(this,!0):(this._formatted||(this._formatted=w(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=u),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(m),g=((i={})[58]="%3A",i[47]="%2F",i[63]="%3F",i[35]="%23",i[91]="%5B",i[93]="%5D",i[64]="%40",i[33]="%21",i[36]="%24",i[38]="%26",i[39]="%27",i[40]="%28",i[41]="%29",i[42]="%2A",i[43]="%2B",i[44]="%2C",i[59]="%3B",i[61]="%3D",i[32]="%20",i);function b(e,t){for(var n=void 0,i=-1,r=0;r<e.length;r++){var o=e.charCodeAt(r);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o)-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),void 0!==n&&(n+=e.charAt(r));else{void 0===n&&(n=e.substr(0,r));var s=g[o];void 0!==s?(-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),n+=s):-1===i&&(i=r)}}return-1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function y(e){for(var t=void 0,n=0;n<e.length;n++){var i=e.charCodeAt(n);35===i||63===i?(void 0===t&&(t=e.substr(0,n)),t+=g[i]):void 0!==t&&(t+=e[n])}return void 0!==t?t:e}function v(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,r&&(t=t.replace(/\//g,"\\")),t}function w(e,t){var n=t?y:b,i="",r=e.scheme,o=e.authority,s=e.path,a=e.query,l=e.fragment;if(r&&(i+=r,i+=":"),(o||"file"===r)&&(i+=p,i+=p),o){var c=o.indexOf("@");if(-1!==c){var d=o.substr(0,c);o=o.substr(c+1),-1===(c=d.indexOf(":"))?i+=n(d,!1):(i+=n(d.substr(0,c),!1),i+=":",i+=n(d.substr(c+1),!1)),i+="@"}-1===(c=(o=o.toLowerCase()).indexOf(":"))?i+=n(o,!1):(i+=n(o.substr(0,c),!1),i+=o.substr(c))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2))(h=s.charCodeAt(1))>=65&&h<=90&&(s="/"+String.fromCharCode(h+32)+":"+s.substr(3));else if(s.length>=2&&58===s.charCodeAt(1)){var h;(h=s.charCodeAt(0))>=65&&h<=90&&(s=String.fromCharCode(h+32)+":"+s.substr(2))}i+=n(s,!0)}return a&&(i+="?",i+=n(a,!1)),l&&(i+="#",i+=t?l:b(l,!1)),i}}).call(this,n("TDnd"))}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-690c.a2c3953f.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-690c.a2c3953f.js index e4108db22..dcc21f2d5 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-690c.a2c3953f.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-690c.a2c3953f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-690c"],{CJ5O:function(e,t,r){"use strict";var a=r("cLjf"),o=r.n(a),n=r("hDQ3"),i=r.n(n),s=r("sm2R"),l={name:"GetDictionary",props:{dictKey:String,updataDict:String,value:String},data:function(){return{dictionary:"",dictionaryOptions:[]}},watch:{dictKey:{immediate:!0,handler:function(){this.getSystem()}},value:{handler:function(e){this.dictionary=e},deep:!0}},created:function(){this.getSystem()},mounted:function(){this.dictionary=this.value},methods:{getSystem:function(){var e=this;return i()(o.a.mark(function t(){var r,a,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(s.a)(e.dictKey);case 2:if(r=t.sent,a=r.code,n=r.data,"200"==a){t.next=7;break}return t.abrupt("return");case 7:e.dictionaryOptions=n;case 8:case"end":return t.stop()}},t,e)}))()},selectChange:function(e){this.$emit("input",e)}}},c=(r("rVG9"),r("ZrdR")),u=Object(c.a)(l,function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("el-select",{attrs:{placeholder:"请选择",clearable:"",size:"mini"},on:{change:e.selectChange},model:{value:e.dictionary,callback:function(t){e.dictionary=t},expression:"dictionary"}},e._l(e.dictionaryOptions,function(e){return r("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)},[],!1,null,"23d4be90",null);u.options.__file="index.vue";t.a=u.exports},HDHf:function(e,t,r){"use strict";r.d(t,"c",function(){return o}),r.d(t,"a",function(){return n}),r.d(t,"d",function(){return i}),r.d(t,"f",function(){return s}),r.d(t,"i",function(){return l}),r.d(t,"h",function(){return c}),r.d(t,"g",function(){return u}),r.d(t,"b",function(){return d}),r.d(t,"e",function(){return p});var a=r("t3Un");function o(e){return Object(a.a)({url:"/dataSet/detailBysetId/"+e.id,method:"get"})}function n(e){return Object(a.a)({url:"/dataSet",method:"post",data:e})}function i(e){return Object(a.a)({url:"/dataSet",method:"put",data:e})}function s(e){return Object(a.a)({url:"/dataSource/queryAllDataSource",method:"get",data:e})}function l(e){return Object(a.a)({url:"/dataSetParam/verification",method:"post",data:e})}function c(e){return Object(a.a)({url:"/dataSet/testTransform",method:"post",data:e})}function u(e){return Object(a.a)({url:"/report/pageList",method:"get",params:e})}function d(e){return Object(a.a)({url:"/reportExcel",method:"post",data:e})}function p(e){return Object(a.a)({url:"/reportExcel",method:"put",data:e})}},JXMn:function(e,t,r){},W6l8:function(e,t,r){"use strict";r.d(t,"a",function(){return o}),r.d(t,"b",function(){return n});var a=r("t3Un");function o(e){return Object(a.a)({url:"reportDashboard/share",method:"post",data:e})}function n(e){return Object(a.a)({url:"reportShare/detailByCode",method:"get",params:{shareCode:e}})}},"b//P":function(e,t,r){"use strict";r.r(t);var a=r("cLjf"),o=r.n(a),n=r("hDQ3"),i=r.n(n),s=r("W6l8"),l=r("sm2R"),c={components:{Dictionary:r("CJ5O").a},props:{visib:{required:!0,type:Boolean,default:!1},reportCode:{required:!0,type:String,default:function(){return""}},reportName:{required:!0,type:String,default:function(){return""}}},data:function(){return{title:"报表分享",reportShareUrl:"",shareValidTypeOptions:[],dialogForm:{shareValidType:0,reportCode:"",shareUrl:"",shareCode:"",sharePassword:"",sharePasswordFlag:!1},shareLinkFlag1:!0,rules:{shareValidType:[{required:!0,message:"有效期必选",trigger:"change"}]}}},watch:{visib:function(e){e&&this.getSystem()}},created:function(){},methods:{titleBuild:function(){return"【"+this.reportName+"】报表分享"},selectChange:function(e){this.dialogForm.shareValidType=e},getSystem:function(){var e=this;return i()(o.a.mark(function t(){var r,a,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.shareLinkFlag1=!0,t.next=3,Object(l.a)("SHARE_VAILD");case 3:if(r=t.sent,a=r.code,n=r.data,"200"==a){t.next=8;break}return t.abrupt("return");case 8:e.shareValidTypeOptions=n,e.dialogForm.shareValidType=e.shareValidTypeOptions[0].id,e.dialogForm.sharePasswordFlag=!1,e.dialogForm.sharePassword="";case 12:case"end":return t.stop()}},t,e)}))()},createShare:function(){var e=this;return i()(o.a.mark(function t(){var r,a,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.dialogForm.reportCode=e.reportCode,e.dialogForm.shareUrl=window.location.href,t.next=4,Object(s.a)(e.dialogForm);case 4:if(r=t.sent,a=r.code,n=r.data,"200"==a){t.next=9;break}return t.abrupt("return");case 9:e.shareLinkFlag1=!1,e.$message({message:"创建链接成功!",type:"success"}),e.reportShareUrl=n.shareUrl,e.dialogForm.sharePassword=n.sharePassword;case 13:case"end":return t.stop()}},t,e)}))()},copyShare:function(){var e="";e=""==this.dialogForm.sharePassword?"AJ-Report分享链接:"+this.reportShareUrl:"AJ-Report分享链接:"+this.reportShareUrl+" 分享码:"+this.dialogForm.sharePassword,this.copyToClip(e),this.$message({message:"复制链接成功!",type:"success"})},copyToClip:function(e,t){var r=document.createElement("input");r.setAttribute("value",e),document.body.appendChild(r),r.select(),document.execCommand("copy"),document.body.removeChild(r)},saveReportShare:function(){var e=this;return i()(o.a.mark(function t(){return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:({}),e.closeDialog();case 2:case"end":return t.stop()}},t,e)}))()},closeDialog:function(){this.$emit("handleClose")}}},u=r("ZrdR"),d=Object(u.a)(c,function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("el-dialog",{staticClass:"tree_dialog",attrs:{title:e.titleBuild(),width:"30%","close-on-click-modal":!1,center:"",visible:e.visib,"before-close":e.closeDialog},on:{"update:visible":function(t){e.visib=t}}},[e.shareLinkFlag1?r("div",[r("el-form",{ref:"userForm",attrs:{model:e.dialogForm,rules:e.rules,size:"small","label-width":"100px"}},[r("el-form-item",{attrs:{label:"有效期",prop:"shareValidType"}},[r("el-select",{attrs:{placeholder:"请选择",clearable:""},on:{change:e.selectChange},model:{value:e.dialogForm.shareValidType,callback:function(t){e.$set(e.dialogForm,"shareValidType","string"==typeof t?t.trim():t)},expression:"dialogForm.shareValidType"}},e._l(e.shareValidTypeOptions,function(e){return r("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)],1),e._v(" "),r("el-form-item",{attrs:{label:"分享码",prop:"sharePasswordFlag"}},[r("el-switch",{model:{value:e.dialogForm.sharePasswordFlag,callback:function(t){e.$set(e.dialogForm,"sharePasswordFlag",t)},expression:"dialogForm.sharePasswordFlag"}})],1)],1),e._v(" "),r("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.createShare}},[e._v("创建链接")])],1):r("div",[r("el-form",{ref:"userForm",attrs:{model:e.dialogForm,rules:e.rules,size:"small","label-width":"100px"}},[r("el-form-item",{attrs:{label:"链接",prop:"reportShareUrl"}},[r("el-input",{attrs:{disabled:!0},model:{value:e.reportShareUrl,callback:function(t){e.reportShareUrl=t},expression:"reportShareUrl"}})],1),e._v(" "),e.dialogForm.sharePasswordFlag?r("el-form-item",{attrs:{label:"分享码",prop:"sharePassword"}},[r("el-input",{attrs:{disabled:!0},model:{value:e.dialogForm.sharePassword,callback:function(t){e.$set(e.dialogForm,"sharePassword",t)},expression:"dialogForm.sharePassword"}})],1):e._e(),e._v(" "),r("el-row",{attrs:{gutter:10}},[""==e.dialogForm.sharePassword?r("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.copyShare}},[e._v("复制链接")]):e._e(),e._v(" "),""!=e.dialogForm.sharePassword?r("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.copyShare}},[e._v("复制链接和分享码")]):e._e()],1)],1)],1),e._v(" "),r("div",{staticStyle:{"text-align":"center"},attrs:{slot:"footer"},slot:"footer"},[r("el-button",{attrs:{type:"danger",plain:""},on:{click:e.closeDialog}},[e._v("取消")])],1)])},[],!1,null,null,null);d.options.__file="share.vue";var p=d.exports,m=r("HDHf"),h={name:"Login",components:{Share:p},data:function(){return{list:[],rules:{},totalCount:0,totalPage:0,params:{reportCode:"",reportName:"",reportType:"report_screen",pageNumber:1,pageSize:8,order:"DESC",sort:"update_time"},visibleForShareDialog:!1,reportCodeForShareDialog:"",reportNameForShareDialog:""}},mounted:function(){},created:function(){this.queryByPage()},methods:{search:function(){this.params.pageNumber=1,this.queryByPage()},reset:function(e){this.$refs[e].resetFields(),this.params.reportName="",this.params.reportCode="",this.params.pageNumber=1,this.queryByPage()},queryByPage:function(){var e=this;return i()(o.a.mark(function t(){var r;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(m.g)(e.params);case 2:if("200"==(r=t.sent).code){t.next=5;break}return t.abrupt("return");case 5:e.listLoading=!0,e.list=r.data.records,e.list.forEach(function(e){e.reportNameCode=e.reportName+"["+e.reportCode+"]"}),e.totalCount=r.data.total,e.totalPage=r.data.pages,e.listLoading=!1;case 11:case"end":return t.stop()}},t,e)}))()},handleSizeChange:function(e){this.params.pageSize=e,this.queryByPage()},handleCurrentChange:function(e){this.params.pageNumber=e,this.queryByPage()},share:function(e){this.reportCodeForShareDialog=e.reportCode,this.reportNameForShareDialog=e.reportName,this.visibleForShareDialog=!0},openDesign:function(e){var t=this.$router.resolve({path:"/bigscreen/designer",query:{reportCode:e.reportCode}});window.open(t.href,"_blank")},viewDesign:function(e){var t=this.$router.resolve({path:"/bigscreen/viewer",query:{reportCode:e.reportCode}});window.open(t.href,"_blank")}}},g=(r("emgg"),Object(u.a)(h,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"main-layout"},[a("el-form",{ref:"form",attrs:{model:e.params,rules:e.rules,"label-width":"120px"}},[a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{xs:24,sm:20,md:12,lg:6,xl:4}},[a("el-form-item",{attrs:{label:"名称"}},[a("el-input",{staticClass:"filter-item",attrs:{size:"mini",clearable:"",placeholder:"名称"},model:{value:e.params.reportName,callback:function(t){e.$set(e.params,"reportName",t)},expression:"params.reportName"}})],1)],1),e._v(" "),a("el-col",{attrs:{xs:24,sm:20,md:12,lg:6,xl:4}},[a("el-form-item",{attrs:{label:"报表编码"}},[a("el-input",{staticClass:"filter-item",attrs:{size:"mini",clearable:"",placeholder:"报表编码"},model:{value:e.params.reportCode,callback:function(t){e.$set(e.params,"reportCode",t)},expression:"params.reportCode"}})],1)],1),e._v(" "),a("el-col",{attrs:{xs:24,sm:20,md:4,lg:4,xl:4}},[a("el-button",{attrs:{type:"primary",size:"mini"},on:{click:function(t){return e.search("form")}}},[e._v("查询")]),e._v(" "),a("el-button",{attrs:{type:"danger",size:"mini"},on:{click:function(t){return e.reset("form")}}},[e._v("重置")])],1)],1)],1),e._v(" "),a("el-row",{attrs:{gutter:20}},e._l(e.list,function(t){return a("el-col",{key:t.id,attrs:{span:6}},[a("div",{staticClass:"bg"},[a("img",{staticClass:"bg-img",attrs:{src:null==t.reportImage||""==t.reportImage?r("fy9d"):t.reportImage,alt:""}}),e._v(" "),a("div",{staticClass:"content"},[a("header",[e._v(e._s(t.reportName))]),e._v(" "),a("footer",[e._v("\n "+e._s(t.updateTime)+"\n "),a("div",{staticClass:"operation"},[a("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:share",expression:"'bigScreenManage:share'"}],staticClass:"view",attrs:{icon:"el-icon-share",type:"text"},on:{click:function(r){return e.share(t)}}}),e._v(" "),a("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:view",expression:"'bigScreenManage:view'"}],staticClass:"view",attrs:{icon:"el-icon-view",type:"text"},on:{click:function(r){return e.viewDesign(t)}}}),e._v(" "),a("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:design",expression:"'bigScreenManage:design'"}],staticClass:"edit",attrs:{icon:"el-icon-edit",type:"text"},on:{click:function(r){return e.openDesign(t)}}})],1)])])])])}),1),e._v(" "),a("div",{staticClass:"block"},[a("el-pagination",{attrs:{total:e.totalCount,"page-sizes":[8,20,50,100],"page-size":e.params.pageSize,"current-page":e.params.pageNumber,layout:"total, sizes, prev, pager, next, jumper"},on:{"size-change":e.handleSizeChange,"current-change":e.handleCurrentChange}})],1),e._v(" "),a("Share",{attrs:{visib:e.visibleForShareDialog,reportCode:e.reportCodeForShareDialog,reportName:e.reportNameForShareDialog},on:{handleClose:function(t){e.visibleForShareDialog=!1}}})],1)},[],!1,null,"42c0e4df",null));g.options.__file="index.vue";t.default=g.exports},ctb9:function(e,t,r){},emgg:function(e,t,r){"use strict";var a=r("JXMn");r.n(a).a},fy9d:function(e,t,r){e.exports=r.p+"static/img/charts.47700dc.jpg"},rVG9:function(e,t,r){"use strict";var a=r("ctb9");r.n(a).a}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-690c"],{CJ5O:function(e,t,r){"use strict";var a=r("cLjf"),o=r.n(a),n=r("hDQ3"),i=r.n(n),s=r("sm2R"),l={name:"GetDictionary",props:{dictKey:String,updataDict:String,value:String},data:function(){return{dictionary:"",dictionaryOptions:[]}},watch:{dictKey:{immediate:!0,handler:function(){this.getSystem()}},value:{handler:function(e){this.dictionary=e},deep:!0}},created:function(){this.getSystem()},mounted:function(){this.dictionary=this.value},methods:{getSystem:function(){var e=this;return i()(o.a.mark(function t(){var r,a,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(s.a)(e.dictKey);case 2:if(r=t.sent,a=r.code,n=r.data,"200"==a){t.next=7;break}return t.abrupt("return");case 7:e.dictionaryOptions=n;case 8:case"end":return t.stop()}},t,e)}))()},selectChange:function(e){this.$emit("input",e)}}},c=(r("rVG9"),r("ZrdR")),u=Object(c.a)(l,function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("el-select",{attrs:{placeholder:"请选择",clearable:"",size:"mini"},on:{change:e.selectChange},model:{value:e.dictionary,callback:function(t){e.dictionary=t},expression:"dictionary"}},e._l(e.dictionaryOptions,function(e){return r("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)},[],!1,null,"23d4be90",null);u.options.__file="index.vue";t.a=u.exports},HDHf:function(e,t,r){"use strict";r.d(t,"c",function(){return o}),r.d(t,"a",function(){return n}),r.d(t,"d",function(){return i}),r.d(t,"f",function(){return s}),r.d(t,"i",function(){return l}),r.d(t,"h",function(){return c}),r.d(t,"g",function(){return u}),r.d(t,"b",function(){return d}),r.d(t,"e",function(){return p});var a=r("t3Un");function o(e){return Object(a.a)({url:"/dataSet/detailBysetId/"+e.id,method:"get"})}function n(e){return Object(a.a)({url:"/dataSet",method:"post",data:e})}function i(e){return Object(a.a)({url:"/dataSet",method:"put",data:e})}function s(e){return Object(a.a)({url:"/dataSource/queryAllDataSource",method:"get",data:e})}function l(e){return Object(a.a)({url:"/dataSetParam/verification",method:"post",data:e})}function c(e){return Object(a.a)({url:"/dataSet/testTransform",method:"post",data:e})}function u(e){return Object(a.a)({url:"/report/pageList",method:"get",params:e})}function d(e){return Object(a.a)({url:"/reportExcel",method:"post",data:e})}function p(e){return Object(a.a)({url:"/reportExcel",method:"put",data:e})}},JXMn:function(e,t,r){},W6l8:function(e,t,r){"use strict";r.d(t,"a",function(){return o}),r.d(t,"b",function(){return n});var a=r("t3Un");function o(e){return Object(a.a)({url:"reportDashboard/share",method:"post",data:e})}function n(e){return Object(a.a)({url:"reportShare/detailByCode",method:"get",params:{shareCode:e}})}},"b//P":function(e,t,r){"use strict";r.r(t);var a=r("cLjf"),o=r.n(a),n=r("hDQ3"),i=r.n(n),s=r("W6l8"),l=r("sm2R"),c={components:{Dictionary:r("CJ5O").a},props:{visib:{required:!0,type:Boolean,default:!1},reportCode:{required:!0,type:String,default:function(){return""}},reportName:{required:!0,type:String,default:function(){return""}}},data:function(){return{title:"报表分享",reportShareUrl:"",shareValidTypeOptions:[],dialogForm:{shareValidType:0,reportCode:"",shareUrl:"",shareCode:"",sharePassword:"",sharePasswordFlag:!1},shareLinkFlag1:!0,rules:{shareValidType:[{required:!0,message:"有效期必选",trigger:"change"}]}}},watch:{visib:function(e){e&&this.getSystem()}},created:function(){},methods:{titleBuild:function(){return"【"+this.reportName+"】报表分享"},selectChange:function(e){this.dialogForm.shareValidType=e},getSystem:function(){var e=this;return i()(o.a.mark(function t(){var r,a,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.shareLinkFlag1=!0,t.next=3,Object(l.a)("SHARE_VAILD");case 3:if(r=t.sent,a=r.code,n=r.data,"200"==a){t.next=8;break}return t.abrupt("return");case 8:e.shareValidTypeOptions=n,e.dialogForm.shareValidType=e.shareValidTypeOptions[0].id,e.dialogForm.sharePasswordFlag=!1,e.dialogForm.sharePassword="";case 12:case"end":return t.stop()}},t,e)}))()},createShare:function(){var e=this;return i()(o.a.mark(function t(){var r,a,n;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.dialogForm.reportCode=e.reportCode,e.dialogForm.shareUrl=window.location.href,t.next=4,Object(s.a)(e.dialogForm);case 4:if(r=t.sent,a=r.code,n=r.data,"200"==a){t.next=9;break}return t.abrupt("return");case 9:e.shareLinkFlag1=!1,e.$message({message:"创建链接成功!",type:"success"}),e.reportShareUrl=n.shareUrl,e.dialogForm.sharePassword=n.sharePassword;case 13:case"end":return t.stop()}},t,e)}))()},copyShare:function(){var e="";e=""==this.dialogForm.sharePassword?"AJ-Report分享链接:"+this.reportShareUrl:"AJ-Report分享链接:"+this.reportShareUrl+" 分享码:"+this.dialogForm.sharePassword,this.copyToClip(e),this.$message({message:"复制链接成功!",type:"success"})},copyToClip:function(e,t){var r=document.createElement("input");r.setAttribute("value",e),document.body.appendChild(r),r.select(),document.execCommand("copy"),document.body.removeChild(r)},saveReportShare:function(){var e=this;return i()(o.a.mark(function t(){return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:({}),e.closeDialog();case 2:case"end":return t.stop()}},t,e)}))()},closeDialog:function(){this.$emit("handleClose")}}},u=r("ZrdR"),d=Object(u.a)(c,function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("el-dialog",{staticClass:"tree_dialog",attrs:{title:e.titleBuild(),width:"30%","close-on-click-modal":!1,center:"",visible:e.visib,"before-close":e.closeDialog},on:{"update:visible":function(t){e.visib=t}}},[e.shareLinkFlag1?r("div",[r("el-form",{ref:"userForm",attrs:{model:e.dialogForm,rules:e.rules,size:"small","label-width":"100px"}},[r("el-form-item",{attrs:{label:"有效期",prop:"shareValidType"}},[r("el-select",{attrs:{placeholder:"请选择",clearable:""},on:{change:e.selectChange},model:{value:e.dialogForm.shareValidType,callback:function(t){e.$set(e.dialogForm,"shareValidType","string"==typeof t?t.trim():t)},expression:"dialogForm.shareValidType"}},e._l(e.shareValidTypeOptions,function(e){return r("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)],1),e._v(" "),r("el-form-item",{attrs:{label:"分享码",prop:"sharePasswordFlag"}},[r("el-switch",{model:{value:e.dialogForm.sharePasswordFlag,callback:function(t){e.$set(e.dialogForm,"sharePasswordFlag",t)},expression:"dialogForm.sharePasswordFlag"}})],1)],1),e._v(" "),r("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.createShare}},[e._v("创建链接")])],1):r("div",[r("el-form",{ref:"userForm",attrs:{model:e.dialogForm,rules:e.rules,size:"small","label-width":"100px"}},[r("el-form-item",{attrs:{label:"链接",prop:"reportShareUrl"}},[r("el-input",{attrs:{disabled:!0},model:{value:e.reportShareUrl,callback:function(t){e.reportShareUrl=t},expression:"reportShareUrl"}})],1),e._v(" "),e.dialogForm.sharePasswordFlag?r("el-form-item",{attrs:{label:"分享码",prop:"sharePassword"}},[r("el-input",{attrs:{disabled:!0},model:{value:e.dialogForm.sharePassword,callback:function(t){e.$set(e.dialogForm,"sharePassword",t)},expression:"dialogForm.sharePassword"}})],1):e._e(),e._v(" "),r("el-row",{attrs:{gutter:10}},[""==e.dialogForm.sharePassword?r("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.copyShare}},[e._v("复制链接")]):e._e(),e._v(" "),""!=e.dialogForm.sharePassword?r("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.copyShare}},[e._v("复制链接和分享码")]):e._e()],1)],1)],1),e._v(" "),r("div",{staticStyle:{"text-align":"center"},attrs:{slot:"footer"},slot:"footer"},[r("el-button",{attrs:{type:"danger",plain:""},on:{click:e.closeDialog}},[e._v("取消")])],1)])},[],!1,null,null,null);d.options.__file="share.vue";var p=d.exports,m=r("HDHf"),h={name:"Login",components:{Share:p},data:function(){return{list:[],rules:{},totalCount:0,totalPage:0,params:{reportCode:"",reportName:"",reportType:"report_screen",pageNumber:1,pageSize:8,order:"DESC",sort:"update_time"},visibleForShareDialog:!1,reportCodeForShareDialog:"",reportNameForShareDialog:""}},mounted:function(){},created:function(){this.queryByPage()},methods:{search:function(){this.params.pageNumber=1,this.queryByPage()},reset:function(e){this.$refs[e].resetFields(),this.params.reportName="",this.params.reportCode="",this.params.pageNumber=1,this.queryByPage()},queryByPage:function(){var e=this;return i()(o.a.mark(function t(){var r;return o.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(m.g)(e.params);case 2:if("200"==(r=t.sent).code){t.next=5;break}return t.abrupt("return");case 5:e.listLoading=!0,e.list=r.data.records,e.list.forEach(function(e){e.reportNameCode=e.reportName+"["+e.reportCode+"]"}),e.totalCount=r.data.total,e.totalPage=r.data.pages,e.listLoading=!1;case 11:case"end":return t.stop()}},t,e)}))()},handleSizeChange:function(e){this.params.pageSize=e,this.queryByPage()},handleCurrentChange:function(e){this.params.pageNumber=e,this.queryByPage()},share:function(e){this.reportCodeForShareDialog=e.reportCode,this.reportNameForShareDialog=e.reportName,this.visibleForShareDialog=!0},openDesign:function(e){var t=this.$router.resolve({path:"/bigscreen/designer",query:{reportCode:e.reportCode}});window.open(t.href,"_blank")},viewDesign:function(e){var t=this.$router.resolve({path:"/bigscreen/viewer",query:{reportCode:e.reportCode}});window.open(t.href,"_blank")}}},g=(r("emgg"),Object(u.a)(h,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"main-layout"},[a("el-form",{ref:"form",attrs:{model:e.params,rules:e.rules,"label-width":"120px"}},[a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{xs:24,sm:20,md:12,lg:6,xl:4}},[a("el-form-item",{attrs:{label:"名称"}},[a("el-input",{staticClass:"filter-item",attrs:{size:"mini",clearable:"",placeholder:"名称"},model:{value:e.params.reportName,callback:function(t){e.$set(e.params,"reportName",t)},expression:"params.reportName"}})],1)],1),e._v(" "),a("el-col",{attrs:{xs:24,sm:20,md:12,lg:6,xl:4}},[a("el-form-item",{attrs:{label:"报表编码"}},[a("el-input",{staticClass:"filter-item",attrs:{size:"mini",clearable:"",placeholder:"报表编码"},model:{value:e.params.reportCode,callback:function(t){e.$set(e.params,"reportCode",t)},expression:"params.reportCode"}})],1)],1),e._v(" "),a("el-col",{attrs:{xs:24,sm:20,md:4,lg:4,xl:4}},[a("el-button",{attrs:{type:"primary",size:"mini"},on:{click:function(t){return e.search("form")}}},[e._v("查询")]),e._v(" "),a("el-button",{attrs:{type:"danger",size:"mini"},on:{click:function(t){return e.reset("form")}}},[e._v("重置")])],1)],1)],1),e._v(" "),a("el-row",{attrs:{gutter:20}},e._l(e.list,function(t){return a("el-col",{key:t.id,attrs:{span:6}},[a("div",{staticClass:"bg"},[a("img",{staticClass:"bg-img",attrs:{src:null==t.reportImage||""==t.reportImage?r("fy9d"):t.reportImage,alt:""}}),e._v(" "),a("div",{staticClass:"content"},[a("header",[e._v(e._s(t.reportName))]),e._v(" "),a("footer",[e._v("\n "+e._s(t.updateTime)+"\n "),a("div",{staticClass:"operation"},[a("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:share",expression:"'bigScreenManage:share'"}],staticClass:"view",attrs:{icon:"el-icon-share",type:"text"},on:{click:function(r){return e.share(t)}}}),e._v(" "),a("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:view",expression:"'bigScreenManage:view'"}],staticClass:"view",attrs:{icon:"el-icon-view",type:"text"},on:{click:function(r){return e.viewDesign(t)}}}),e._v(" "),a("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:design",expression:"'bigScreenManage:design'"}],staticClass:"edit",attrs:{icon:"el-icon-edit",type:"text"},on:{click:function(r){return e.openDesign(t)}}})],1)])])])])}),1),e._v(" "),a("div",{staticClass:"block"},[a("el-pagination",{attrs:{total:e.totalCount,"page-sizes":[8,20,50,100],"page-size":e.params.pageSize,"current-page":e.params.pageNumber,layout:"total, sizes, prev, pager, next, jumper"},on:{"size-change":e.handleSizeChange,"current-change":e.handleCurrentChange}})],1),e._v(" "),a("Share",{attrs:{visib:e.visibleForShareDialog,reportCode:e.reportCodeForShareDialog,reportName:e.reportNameForShareDialog},on:{handleClose:function(t){e.visibleForShareDialog=!1}}})],1)},[],!1,null,"42c0e4df",null));g.options.__file="index.vue";t.default=g.exports},ctb9:function(e,t,r){},emgg:function(e,t,r){"use strict";var a=r("JXMn");r.n(a).a},fy9d:function(e,t,r){e.exports=r.p+"static/img/charts.47700dc.jpg"},rVG9:function(e,t,r){"use strict";var a=r("ctb9");r.n(a).a}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-6b46.a883c7f7.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-6b46.a883c7f7.js index de4ad48e6..dfe00b9da 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-6b46.a883c7f7.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-6b46.a883c7f7.js @@ -76,4 +76,4 @@ function(e){var t,n,r,o,i,a,s,u,l,c,f,p,d,h,g,m,y,v,x,b="sizzle"+1*new Date,w=e. * v2.1.3:处理Jquery已经弃用的API,兼容最新版本的Jquery,目前是jquery3.3.1,日后如果发现插件不兼容新版本的jquery,请联系我 305491515@qq.com */ -(function(e){e.fn.slide=function(t){return e.fn.slide.defaults={type:"slide",effect:"fade",autoPlay:!1,delayTime:500,interTime:2500,triggerTime:150,defaultIndex:0,titCell:".hd li",mainCell:".bd",targetCell:null,trigger:"mouseover",scroll:1,vis:1,titOnClassName:"on",autoPage:!1,prevCell:".prev",nextCell:".next",pageStateCell:".pageState",opp:!1,pnLoop:!0,easing:"swing",startFun:null,endFun:null,switchLoad:null,playStateCell:".playState",mouseOverStop:!0,defaultPlay:!0,returnDefault:!1},this.each(function(){var n,r=e.extend({},e.fn.slide.defaults,t),o=e(this),i=r.effect,a=e(r.prevCell,o),s=e(r.nextCell,o),u=e(r.pageStateCell,o),l=e(r.playStateCell,o),c=e(r.titCell,o),f=c.length,p=e(r.mainCell,o),d=p.children().length,h=r.switchLoad,g=e(r.targetCell,o),m=parseInt(r.defaultIndex),y=parseInt(r.delayTime),v=parseInt(r.interTime),x=(parseInt(r.triggerTime),parseInt(r.scroll)),b="false"!=r.autoPlay&&0!=r.autoPlay,w="false"!=r.opp&&0!=r.opp,C="false"!=r.autoPage&&0!=r.autoPage,T="false"!=r.pnLoop&&0!=r.pnLoop,k="false"!=r.mouseOverStop&&0!=r.mouseOverStop,j="false"!=r.defaultPlay&&0!=r.defaultPlay,N="false"!=r.returnDefault&&0!=r.returnDefault,S=isNaN(r.vis)?1:parseInt(r.vis),q=!-[1]&&!window.XMLHttpRequest,E=0,O=0,D=0,M=0,P=r.easing,A=null,L=null,I=null,F=r.titOnClassName,H=c.index(o.find("."+F)),_=m=-1==H?m:H,R=m,W=m,z=d>=S?d%x!=0?d%x:x:0,B="leftMarquee"==i||"topMarquee"==i,Y=function(){e.isFunction(r.startFun)&&r.startFun(m,f,o,e(r.titCell,o),p,g,a,s)},Z=function(){e.isFunction(r.endFun)&&r.endFun(m,f,o,e(r.titCell,o),p,g,a,s)},G=function(){c.removeClass(F),j&&c.eq(R).addClass(F)};if("menu"==r.type)return j&&c.removeClass(F).eq(m).addClass(F),c.hover(function(){n=e(this).find(r.targetCell);var t=c.index(e(this));L=setTimeout(function(){switch(m=t,c.removeClass(F).eq(m).addClass(F),Y(),i){case"fade":n.stop(!0,!0).animate({opacity:"show"},y,P,Z);break;case"slideDown":n.stop(!0,!0).animate({height:"show"},y,P,Z)}},r.triggerTime)},function(){switch(clearTimeout(L),i){case"fade":n.animate({opacity:"hide"},y,P);break;case"slideDown":n.animate({height:"hide"},y,P)}}),void(N&&o.hover(function(){clearTimeout(I)},function(){I=setTimeout(G,y)}));if(0==f&&(f=d),B&&(f=2),C){if(d>=S)if("leftLoop"==i||"topLoop"==i)f=d%x!=0?1+(d/x^0):d/x;else{var Q=d-S;(f=1+parseInt(Q%x!=0?Q/x+1:Q/x))<=0&&(f=1)}else f=1;c.html("");var V="";if(1==r.autoPage||"true"==r.autoPage)for(var X=0;X<f;X++)V+="<li>"+(X+1)+"</li>";else for(X=0;X<f;X++)V+=r.autoPage.replace("$",X+1);c.html(V),c=c.children()}if(d>=S){p.children().each(function(){e(this).width()>D&&(D=e(this).width(),O=e(this).outerWidth(!0)),e(this).height()>M&&(M=e(this).height(),E=e(this).outerHeight(!0))});var U=p.children(),K=function(){for(var e=0;e<S;e++)U.eq(e).clone().addClass("clone").appendTo(p);for(e=0;e<z;e++)U.eq(d-e-1).clone().addClass("clone").prependTo(p)};switch(i){case"fold":p.css({position:"relative",width:O,height:E}).children().css({position:"absolute",width:D,left:0,top:0,display:"none"});break;case"top":p.wrap('<div class="tempWrap" style="overflow:hidden; position:relative; height:'+S*E+'px"></div>').css({top:-m*x*E,position:"relative",padding:"0",margin:"0"}).children().css({height:M});break;case"left":p.wrap('<div class="tempWrap" style="overflow:hidden; position:relative; width:'+S*O+'px"></div>').css({width:d*O,left:-m*x*O,position:"relative",overflow:"hidden",padding:"0",margin:"0"}).children().css({float:"left",width:D});break;case"leftLoop":case"leftMarquee":K(),p.wrap('<div class="tempWrap" style="overflow:hidden; position:relative; width:'+S*O+'px"></div>').css({width:(d+S+z)*O,position:"relative",overflow:"hidden",padding:"0",margin:"0",left:-(z+m*x)*O}).children().css({float:"left",width:D});break;case"topLoop":case"topMarquee":K(),p.wrap('<div class="tempWrap" style="overflow:hidden; position:relative; height:'+S*E+'px"></div>').css({height:(d+S+z)*E,position:"relative",padding:"0",margin:"0",top:-(z+m*x)*E}).children().css({height:M})}}var J=function(e){var t=e*x;return e==f?t=d:-1==e&&d%x!=0&&(t=-d%x),t},$=function(t){var n=function(n){for(var r=n;r<S+n;r++)t.eq(r).find("img["+h+"]").each(function(){var t=e(this);if(t.attr("src",t.attr(h)).removeAttr(h),p.find(".clone")[0])for(var n=p.children(),r=0;r<n.length;r++)n.eq(r).find("img["+h+"]").each(function(){e(this).attr(h)==t.attr("src")&&e(this).attr("src",e(this).attr(h)).removeAttr(h)})})};switch(i){case"fade":case"fold":case"top":case"left":case"slideDown":n(m*x);break;case"leftLoop":case"topLoop":n(z+J(W));break;case"leftMarquee":case"topMarquee":var r="leftMarquee"==i?p.css("left").replace("px",""):p.css("top").replace("px",""),o="leftMarquee"==i?O:E,a=z;if(r%o!=0){var s=Math.abs(r/o^0);a=1==m?z+s:z+s-1}n(a)}},ee=function(e){if(!j||_!=m||e||B){if(B?m>=1?m=1:m<=0&&(m=0):(W=m,m>=f?m=0:m<0&&(m=f-1)),Y(),null!=h&&$(p.children()),g[0]&&(n=g.eq(m),null!=h&&$(g),"slideDown"==i?(g.not(n).stop(!0,!0).slideUp(y),n.slideDown(y,P,function(){p[0]||Z()})):(g.not(n).stop(!0,!0).hide(),n.animate({opacity:"show"},y,function(){p[0]||Z()}))),d>=S)switch(i){case"fade":p.children().stop(!0,!0).eq(m).animate({opacity:"show"},y,P,function(){Z()}).siblings().hide();break;case"fold":p.children().stop(!0,!0).eq(m).animate({opacity:"show"},y,P,function(){Z()}).siblings().animate({opacity:"hide"},y,P);break;case"top":p.stop(!0,!1).animate({top:-m*x*E},y,P,function(){Z()});break;case"left":p.stop(!0,!1).animate({left:-m*x*O},y,P,function(){Z()});break;case"leftLoop":var t=W;p.stop(!0,!0).animate({left:-(J(W)+z)*O},y,P,function(){t<=-1?p.css("left",-(z+(f-1)*x)*O):t>=f&&p.css("left",-z*O),Z()});break;case"topLoop":t=W,p.stop(!0,!0).animate({top:-(J(W)+z)*E},y,P,function(){t<=-1?p.css("top",-(z+(f-1)*x)*E):t>=f&&p.css("top",-z*E),Z()});break;case"leftMarquee":var r=p.css("left").replace("px","");0==m?p.animate({left:++r},0,function(){p.css("left").replace("px","")>=0&&p.css("left",-d*O)}):p.animate({left:--r},0,function(){p.css("left").replace("px","")<=-(d+z)*O&&p.css("left",-z*O)});break;case"topMarquee":var o=p.css("top").replace("px","");0==m?p.animate({top:++o},0,function(){p.css("top").replace("px","")>=0&&p.css("top",-d*E)}):p.animate({top:--o},0,function(){p.css("top").replace("px","")<=-(d+z)*E&&p.css("top",-z*E)})}c.removeClass(F).eq(m).addClass(F),_=m,T||(s.removeClass("nextStop"),a.removeClass("prevStop"),0==m&&a.addClass("prevStop"),m==f-1&&s.addClass("nextStop")),u.html("<span>"+(m+1)+"</span>/"+f)}};j&&ee(!0),N&&o.hover(function(){clearTimeout(I)},function(){I=setTimeout(function(){m=R,j?ee():"slideDown"==i?n.slideUp(y,G):n.animate({opacity:"hide"},y,G),_=m},300)});var te=function(e){A=setInterval(function(){w?m--:m++,ee()},e||v)},ne=function(e){A=setInterval(ee,e||v)},re=function(){k||!b||l.hasClass("pauseState")||(clearInterval(A),te())},oe=function(){(T||m!=f-1)&&(m++,ee(),B||re())},ie=function(){(T||0!=m)&&(m--,ee(),B||re())},ae=function(){clearInterval(A),B?ne():te(),l.removeClass("pauseState")},se=function(){clearInterval(A),l.addClass("pauseState")};if(b?B?(w?m--:m++,ne(),k&&p.hover(se,ae)):(te(),k&&o.hover(se,ae)):(B&&(w?m--:m++),l.addClass("pauseState")),l.click(function(){l.hasClass("pauseState")?ae():se()}),"mouseover"==r.trigger?c.hover(function(){var e=c.index(this);L=setTimeout(function(){m=e,ee(),re()},r.triggerTime)},function(){clearTimeout(L)}):c.click(function(){m=c.index(this),ee(),re()}),B){if(s.mousedown(oe),a.mousedown(ie),T){var ue,le=function(){ue=setTimeout(function(){clearInterval(A),ne(v/10^0)},150)},ce=function(){clearTimeout(ue),clearInterval(A),ne()};s.mousedown(le),s.mouseup(ce),a.mousedown(le),a.mouseup(ce)}"mouseover"==r.trigger&&(s.hover(oe,function(){}),a.hover(ie,function(){}))}else s.click(oe),a.click(ie);if("auto"==r.vis&&1==x&&("left"==i||"leftLoop"==i)){var fe,pe=function(){q&&(p.width("auto"),p.children().width("auto")),p.parent().width("auto"),O=p.parent().width(),q&&p.parent().width(O),p.children().width(O),"left"==i?(p.width(O*d),p.stop(!0,!1).animate({left:-m*O},0)):(p.width(O*(d+2)),p.stop(!0,!1).animate({left:-(m+1)*O},0)),q||O==p.parent().width()||pe()};e(window).resize(function(){clearTimeout(fe),fe=setTimeout(pe,100)}),pe()}})}})(jQuery),jQuery.easing.jswing=jQuery.easing.swing,jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(e,t,n,r,o){return jQuery.easing[jQuery.easing.def](e,t,n,r,o)},easeInQuad:function(e,t,n,r,o){return r*(t/=o)*t+n},easeOutQuad:function(e,t,n,r,o){return-r*(t/=o)*(t-2)+n},easeInOutQuad:function(e,t,n,r,o){return(t/=o/2)<1?r/2*t*t+n:-r/2*(--t*(t-2)-1)+n},easeInCubic:function(e,t,n,r,o){return r*(t/=o)*t*t+n},easeOutCubic:function(e,t,n,r,o){return r*((t=t/o-1)*t*t+1)+n},easeInOutCubic:function(e,t,n,r,o){return(t/=o/2)<1?r/2*t*t*t+n:r/2*((t-=2)*t*t+2)+n},easeInQuart:function(e,t,n,r,o){return r*(t/=o)*t*t*t+n},easeOutQuart:function(e,t,n,r,o){return-r*((t=t/o-1)*t*t*t-1)+n},easeInOutQuart:function(e,t,n,r,o){return(t/=o/2)<1?r/2*t*t*t*t+n:-r/2*((t-=2)*t*t*t-2)+n},easeInQuint:function(e,t,n,r,o){return r*(t/=o)*t*t*t*t+n},easeOutQuint:function(e,t,n,r,o){return r*((t=t/o-1)*t*t*t*t+1)+n},easeInOutQuint:function(e,t,n,r,o){return(t/=o/2)<1?r/2*t*t*t*t*t+n:r/2*((t-=2)*t*t*t*t+2)+n},easeInSine:function(e,t,n,r,o){return-r*Math.cos(t/o*(Math.PI/2))+r+n},easeOutSine:function(e,t,n,r,o){return r*Math.sin(t/o*(Math.PI/2))+n},easeInOutSine:function(e,t,n,r,o){return-r/2*(Math.cos(Math.PI*t/o)-1)+n},easeInExpo:function(e,t,n,r,o){return 0==t?n:r*Math.pow(2,10*(t/o-1))+n},easeOutExpo:function(e,t,n,r,o){return t==o?n+r:r*(1-Math.pow(2,-10*t/o))+n},easeInOutExpo:function(e,t,n,r,o){return 0==t?n:t==o?n+r:(t/=o/2)<1?r/2*Math.pow(2,10*(t-1))+n:r/2*(2-Math.pow(2,-10*--t))+n},easeInCirc:function(e,t,n,r,o){return-r*(Math.sqrt(1-(t/=o)*t)-1)+n},easeOutCirc:function(e,t,n,r,o){return r*Math.sqrt(1-(t=t/o-1)*t)+n},easeInOutCirc:function(e,t,n,r,o){return(t/=o/2)<1?-r/2*(Math.sqrt(1-t*t)-1)+n:r/2*(Math.sqrt(1-(t-=2)*t)+1)+n},easeInElastic:function(e,t,n,r,o){var i=1.70158,a=0,s=r;return 0==t?n:1==(t/=o)?n+r:(a||(a=.3*o),s<Math.abs(r)?(s=r,i=a/4):i=a/(2*Math.PI)*Math.asin(r/s),-s*Math.pow(2,10*(t-=1))*Math.sin((t*o-i)*(2*Math.PI)/a)+n)},easeOutElastic:function(e,t,n,r,o){var i=1.70158,a=0,s=r;return 0==t?n:1==(t/=o)?n+r:(a||(a=.3*o),s<Math.abs(r)?(s=r,i=a/4):i=a/(2*Math.PI)*Math.asin(r/s),s*Math.pow(2,-10*t)*Math.sin((t*o-i)*(2*Math.PI)/a)+r+n)},easeInOutElastic:function(e,t,n,r,o){var i=1.70158,a=0,s=r;return 0==t?n:2==(t/=o/2)?n+r:(a||(a=o*(.3*1.5)),s<Math.abs(r)?(s=r,i=a/4):i=a/(2*Math.PI)*Math.asin(r/s),t<1?s*Math.pow(2,10*(t-=1))*Math.sin((t*o-i)*(2*Math.PI)/a)*-.5+n:s*Math.pow(2,-10*(t-=1))*Math.sin((t*o-i)*(2*Math.PI)/a)*.5+r+n)},easeInBack:function(e,t,n,r,o,i){return void 0==i&&(i=1.70158),r*(t/=o)*t*((i+1)*t-i)+n},easeOutBack:function(e,t,n,r,o,i){return void 0==i&&(i=1.70158),r*((t=t/o-1)*t*((i+1)*t+i)+1)+n},easeInOutBack:function(e,t,n,r,o,i){return void 0==i&&(i=1.70158),(t/=o/2)<1?r/2*(t*t*((1+(i*=1.525))*t-i))+n:r/2*((t-=2)*t*((1+(i*=1.525))*t+i)+2)+n},easeInBounce:function(e,t,n,r,o){return r-jQuery.easing.easeOutBounce(e,o-t,0,r,o)+n},easeOutBounce:function(e,t,n,r,o){return(t/=o)<1/2.75?r*(7.5625*t*t)+n:t<2/2.75?r*(7.5625*(t-=1.5/2.75)*t+.75)+n:t<2.5/2.75?r*(7.5625*(t-=2.25/2.75)*t+.9375)+n:r*(7.5625*(t-=2.625/2.75)*t+.984375)+n},easeInOutBounce:function(e,t,n,r,o){return t<o/2?.5*jQuery.easing.easeInBounce(e,2*t,0,r,o)+n:.5*jQuery.easing.easeOutBounce(e,2*t-o,0,r,o)+.5*r+n}})},fb15:function(e,t,n){"use strict";var r;n.r(t),"undefined"!=typeof window&&(r=window.document.currentScript)&&(r=r.src.match(/(.+\/)[^\/]+\.js(\?.*)?$/))&&(n.p=r[1]);var o=n("1157"),i=n.n(o);window.$=i.a,window.jQuery=i.a;var a=i.a;n("72ef"),"function"!=typeof Object.assign&&Object.defineProperty(Object,"assign",{value(e){if(null==e)throw new TypeError("Cannot convert undefined or null to object");const t=Object(e);for(let n=1;n<arguments.length;n++){const e=arguments[n];if(null!=e)for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t},writable:!0,configurable:!0});var s={name:"superslide",props:{options:{type:Object,default:()=>({})}},mounted:function(){this.create()},destroyed:function(){},methods:{create:function(){const e=Object.assign({},this.options);a(this.$el).slide(e)}}},u=s,l=function(e,t,n,r,o,i,a,s){var u,l="function"==typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=n,l._compiled=!0),r&&(l.functional=!0),i&&(l._scopeId="data-v-"+i),a?(u=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},l._ssrRegister=u):o&&(u=s?function(){o.call(this,this.$root.$options.shadowRoot)}:o),u)if(l.functional){l._injectStyles=u;var c=l.render;l.render=function(e,t){return u.call(t),c(e,t)}}else{var f=l.beforeCreate;l.beforeCreate=f?[].concat(f,u):[u]}return{exports:e,options:l}}(u,function(){var e=this,t=e.$createElement;return(e._self._c||t)("div",{staticClass:"superslide-container"},[e._t("titCell"),e._t("default"),e._t("prev"),e._t("next"),e._t("pageStateCell")],2)},[],!1,null,null,null),c=l.exports;c.install=function(e){e.component(c.name,c)};var f=c;const p=[f],d=function(e){d.installed||p.map(t=>e.component(t.name,t))};"undefined"!=typeof window&&window.Vue&&d(window.Vue);var h={install:d,...p};t.default=h}})},Z5Hk:function(e,t,n){var r,o,i;o=[t,n("TSjp")],void 0===(i="function"==typeof(r=function(e,t){var n=function(e){"undefined"!=typeof console&&console&&console.error&&console.error(e)};t?t.registerMap?t.registerMap("china",{type:"FeatureCollection",features:[{type:"Feature",id:"710000",properties:{id:"710000",cp:[121.509062,24.044332],name:"台湾",childNum:6},geometry:{type:"MultiPolygon",coordinates:[["@@°Ü¯Û"],["@@ƛĴÕƊÉɼģºðʀ\\ƎsÆNŌÔĚäœnÜƤɊĂǀĆĴžĤNJŨxĚĮǂƺòƌ‚–âÔ®ĮXŦţƸZûЋƕƑGđ¨ĭMó·ęcëƝɉlÝƯֹÅŃ^Ó·śŃNjƏďíåɛGɉ™¿@ăƑŽ¥ĘWǬÏĶŁâ"],["@@\\p|WoYG¿¥I†j@¢"],["@@…¡‰@ˆV^RqˆBbAŒnTXeRz¤Lž«³I"],["@@ÆEE—„kWqë @œ"],["@@fced"],["@@„¯ɜÄèaì¯ØǓIġĽ"],["@@çûĖ롖hòř "]],encodeOffsets:[[[122886,24033]],[[123335,22980]],[[122375,24193]],[[122518,24117]],[[124427,22618]],[[124862,26043]],[[126259,26318]],[[127671,26683]]]}},{type:"Feature",id:"130000",properties:{id:"130000",cp:[114.502461,38.045474],name:"河北",childNum:3},geometry:{type:"MultiPolygon",coordinates:[["@@o~†Z]‚ªr‰ºc_ħ²G¼s`jΟnüsœłNX_“M`ǽÓnUK…Ĝēs¤­©yrý§uģŒc†JŠ›e"],["@@U`Ts¿m‚"],["@@oºƋÄd–eVŽDJj£€J|Ådz•Ft~žKŨ¸IÆv|”‡¢r}膎onb˜}`RÎÄn°ÒdÞ²„^®’lnÐèĄlðӜ×]ªÆ}LiĂ±Ö`^°Ç¶p®đDcœŋ`–ZÔ’¶êqvFƚ†N®ĆTH®¦O’¾ŠIbÐã´BĐɢŴÆíȦp–ĐÞXR€·nndOž¤’OÀĈƒ­Qg˜µFo|gȒęSWb©osx|hYh•gŃfmÖĩnº€T̒Sp›¢dYĤ¶UĈjl’ǐpäìë|³kÛfw²Xjz~ÂqbTŠÑ„ěŨ@|oM‡’zv¢ZrÃVw¬ŧˏfŒ°ÐT€ªqŽs{Sž¯r æÝlNd®²Ğ džiGʂJ™¼lr}~K¨ŸƐÌWö€™ÆŠzRš¤lêmĞL΄’@¡|q]SvK€ÑcwpÏρ†ĿćènĪWlĄkT}ˆJ”¤~ƒÈT„d„™pddʾĬŠ”ŽBVt„EÀ¢ôPĎƗè@~‚k–ü\\rÊĔÖæW_§¼F˜†´©òDòj’ˆYÈrbĞāøŀG{ƀ|¦ðrb|ÀH`pʞkv‚GpuARhÞÆǶgƊTǼƹS£¨¡ù³ŘÍ]¿Ây™ôEP xX¶¹܇O¡“gÚ¡IwÃ鑦ÅB‡Ï|ǰ…N«úmH¯‹âŸDùŽyŜžŲIÄuШDž•¸dɂ‡‚FŸƒ•›Oh‡đ©OŸ›iÃ`ww^ƒÌkŸ‘ÑH«ƇǤŗĺtFu…{Z}Ö@U‡´…ʚLg®¯Oı°ÃwŸ ^˜—€VbÉs‡ˆmA…ê]]w„§›RRl£‡ȭµu¯b{ÍDěïÿȧŽuT£ġƒěŗƃĝ“Q¨fV†Ƌ•ƅn­a@‘³@šď„yýIĹÊKšŭfċŰóŒxV@tˆƯŒJ”]eƒR¾fe|rHA˜|h~Ėƍl§ÏŠlTíb ØoˆÅbbx³^zÃ͚¶Sj®A”yÂhðk`š«P€”ˈµEF†Û¬Y¨Ļrõqi¼‰Wi°§’б´°^[ˆÀ|ĠO@ÆxO\\tŽa\\tĕtû{ġŒȧXýĪÓjùÎRb›š^ΛfK[ݏděYfíÙTyŽuUSyŌŏů@Oi½’éŅ­aVcř§ax¹XŻác‡žWU£ôãºQ¨÷Ñws¥qEH‰Ù|‰›šYQoŕÇyáĂ£MðoťÊ‰P¡mšWO¡€v†{ôvîēÜISpÌhp¨ ‘j†deŔQÖj˜X³à™Ĉ[n`Yp@Už–cM`’RKhŒEbœ”pŞlNut®Etq‚nsÁŠgA‹iú‹oH‡qCX‡”hfgu“~ϋWP½¢G^}¯ÅīGCŸÑ^ãziMáļMTÃƘrMc|O_ž¯Ŏ´|‡morDkO\\mĆJfl@c̬¢aĦtRıҙ¾ùƀ^juųœK­ƒUFy™—Ɲ…›īÛ÷ąV×qƥV¿aȉd³B›qPBm›aËđŻģm“Å®Vйd^K‡KoŸnYg“¯Xhqa”Ldu¥•ÍpDž¡KąÅƒkĝęěhq‡}HyÓ]¹ǧ£…Í÷¿qáµ§š™g‘¤o^á¾ZE‡¤i`ij{n•ƒOl»ŸWÝĔįhg›F[¿¡—ßkOüš_‰€ū‹i„DZàUtėGylƒ}ŒÓM}€jpEC~¡FtoQi‘šHkk{Ãmï‚"]],encodeOffsets:[[[119712,40641]],[[121616,39981]],[[116462,37237]]]}},{type:"Feature",id:"140000",properties:{id:"140000",cp:[111.849248,36.857014],name:"山西",childNum:1},geometry:{type:"Polygon",coordinates:["@@Þĩ҃S‰ra}Á€yWix±Üe´lè“ßÓǏok‘ćiµVZģ¡coœ‘TS˹ĪmnÕńe–hZg{gtwªpXaĚThȑp{¶Eh—®RćƑP¿£‘Pmc¸mQÝW•ďȥoÅîɡųAďä³aωJ‘½¥PG­ąSM­™…EÅruµé€‘Yӎ•Ō_d›ĒCo­Èµ]¯_²ÕjāŽK~©ÅØ^ԛkïçămϑk]­±ƒcݯÑÃmQÍ~_a—pm…~ç¡q“ˆu{JÅŧ·Ls}–EyÁÆcI{¤IiCfUc•ƌÃp§]웫vD@¡SÀ‘µM‚ÅwuŽYY‡¡DbÑc¡hƒ×]nkoQdaMç~eD•ÛtT‰©±@¥ù@É¡‰ZcW|WqOJmĩl«ħşvOÓ«IqăV—¥ŸD[mI~Ó¢cehiÍ]Ɠ~ĥqXŠ·eƷœn±“}v•[ěďŽŕ]_‘œ•`‰¹ƒ§ÕōI™o©b­s^}Ét±ū«³p£ÿ·Wµ|¡¥ăFÏs׌¥ŅxŸÊdÒ{ºvĴÎêÌɊ²¶€ü¨|ÞƸµȲ‘LLúÉƎ¤ϊęĔV`„_bª‹S^|ŸdŠzY|dz¥p†ZbÆ£¶ÒK}tĦÔņƠ‚PYzn€ÍvX¶Ěn ĠÔ„zý¦ª˜÷žÑĸَUȌ¸‚dòÜJð´’ìúNM¬ŒXZ´‘¤ŊǸ_tldIš{¦ƀðĠȤ¥NehXnYG‚‡R° ƬDj¬¸|CĞ„Kq‚ºfƐiĺ©ª~ĆOQª ¤@ìǦɌ²æBŒÊ”TœŸ˜ʂōĖ’šĴŞ–ȀœÆÿȄlŤĒö„t”νî¼ĨXhŒ‘˜|ªM¤Ðz"],encodeOffsets:[[116874,41716]]}},{type:"Feature",id:"150000",properties:{id:"150000",cp:[111.670801,41.818311],name:"内蒙古",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@¯PqƒFB…‰|S•³C|kñ•H‹d‘iÄ¥sˆʼnő…PóÑÑE^‘ÅPpy_YtS™hQ·aHwsOnʼnÚs©iqj›‰€USiº]ïWš‰«gW¡A–Rë¥_ŽsgÁnUI«m‰…„‹]j‡vV¼euhwqA„aW˜ƒ_µj…»çjioQR¹ēÃßt@r³[ÛlćË^ÍÉáG“›OUۗOB±•XŸkŇ¹£k|e]ol™ŸkVͼÕqtaÏõjgÁ£§U^Œ”RLˆËnX°Ç’Bz†^~wfvˆypV ¯„ƫĉ˭ȫƗŷɿÿĿƑ˃ĝÿÃǃßËőó©ǐȍŒĖM×ÍEyx‹þp]Évïè‘vƀnÂĴÖ@‚‰†V~Ĉv¦wĖt—ējyÄDXÄxGQuv_›i¦aBçw‘˛wD™©{ŸtāmQ€{EJ§KPśƘƿ¥@‰sCT•É}ɃwˆƇy±ŸgÑ“}T[÷kÐ禫…SÒ¥¸ëBX½‰HáŵÀğtSÝÂa[ƣ°¯¦P]£ġ“–“Òk®G²„èQ°óMq}EŠóƐÇ\\ƒ‡@áügQ͋u¥Fƒ“T՛¿Jû‡]|mvāÎYua^WoÀa·­ząÒot×¶CLƗi¯¤mƎHNJ¤îìɾŊìTdåwsRÖgĒųúÍġäÕ}Q¶—ˆ¿A•†‹[¡Œ{d×uQAƒ›M•xV‹vMOmăl«ct[wº_šÇʊŽŸjb£ĦS_é“QZ“_lwgOiýe`YYLq§IÁˆdz£ÙË[ÕªuƏ³ÍT—s·bÁĽäė[›b[ˆŗfãcn¥îC¿÷µ[ŏÀQ­ōšĉm¿Á^£mJVm‡—L[{Ï_£›F¥Ö{ŹA}…×Wu©ÅaųijƳhB{·TQqÙIķˑZđ©Yc|M¡…L•eVUóK_QWk’_ĥ‘¿ãZ•»X\\ĴuUƒè‡lG®ěłTĠğDєOrÍd‚ÆÍz]‹±…ŭ©ŸÅ’]ŒÅÐ}UË¥©Tċ™ïxgckfWgi\\ÏĒ¥HkµE˜ë{»ÏetcG±ahUiñiWsɁˆ·c–C‚Õk]wȑ|ća}w…VaĚ᠞ŒG°ùnM¬¯†{ÈˆÐÆA’¥ÄêJxÙ¢”hP¢Ûˆº€µwWOŸóFŽšÁz^ÀŗÎú´§¢T¤ǻƺSė‰ǵhÝÅQgvBHouʝl_o¿Ga{ïq{¥|ſĿHĂ÷aĝÇq‡Z‘ñiñC³ª—…»E`¨åXēÕqÉû[l•}ç@čƘóO¿¡ƒFUsA‰“ʽīccšocƒ‚ƒÇS}„“£‡IS~ălkĩXçmĈ…ŀЂoÐdxÒuL^T{r@¢‘žÍƒĝKén£kQ™‰yšÅõËXŷƏL§~}kqš»IHėDžjĝŸ»ÑÞoŸå°qTt|r©ÏS‹¯·eŨĕx«È[eMˆ¿yuˆ‘pN~¹ÏyN£{©’—g‹ħWí»Í¾s“əšDž_ÃĀɗ±ą™ijĉʍŌŷ—S›É“A‹±åǥɋ@럣R©ąP©}ĹªƏj¹erƒLDĝ·{i«ƫC£µsKCš…GS|úþX”gp›{ÁX¿Ÿć{ƱȏñZáĔyoÁhA™}ŅĆfdʼn„_¹„Y°ėǩÑ¡H¯¶oMQqð¡Ë™|‘Ñ`ƭŁX½·óۓxğįÅcQ‡ˆ“ƒs«tȋDžF“Ÿù^i‘t«Č¯[›hAi©á¥ÇĚ×l|¹y¯YȵƓ‹ñǙµï‚ċ™Ļ|Dœ™üȭ¶¡˜›oŽäÕG\\ďT¿Òõr¯œŸLguÏYęRƩšɷŌO\\İТæ^Ŋ IJȶȆbÜGŽĝ¬¿ĚVĎgª^íu½jÿĕęjık@Ľƒ]ėl¥Ë‡ĭûÁ„ƒėéV©±ćn©­ȇžÍq¯½•YÃÔʼn“ÉNѝÅÝy¹NqáʅDǡËñ­ƁYÅy̱os§ȋµʽǘǏƬɱà‘ưN¢ƔÊuľýľώȪƺɂļžxœZĈ}ÌʼnŪ˜ĺœŽĭFЛĽ̅ȣͽÒŵìƩÇϋÿȮǡŏçƑůĕ~Ǎ›¼ȳÐUf†dIxÿ\\G ˆzâɏÙOº·pqy£†@ŒŠqþ@Ǟ˽IBäƣzsÂZ†ÁàĻdñ°ŕzéØűzșCìDȐĴĺf®ŽÀľưø@ɜÖÞKĊŇƄ§‚͑těï͡VAġÑÑ»d³öǍÝXĉĕÖ{þĉu¸ËʅğU̎éhɹƆ̗̮ȘNJ֥ड़ࡰţાíϲäʮW¬®ҌeרūȠkɬɻ̼ãüfƠSצɩςåȈHϚÎKdzͲOðÏȆƘ¼CϚǚ࢚˼ФԂ¤ƌžĞ̪Qʤ´¼mȠJˀŸƲÀɠmǐnǔĎȆÞǠN~€ʢĜ‚¶ƌĆĘźʆȬ˪ĚǏĞGȖƴƀj`ĢçĶāàŃºē̃ĖćšYŒÀŎüôQÐÂŎŞdžŞêƖš˜oˆDĤÕºÑǘÛˤ³̀gńƘĔÀ^žªƂ`ªt¾äƚêĦĀ¼Ð€Ĕǎ¨Ȕ»͠^ˮÊȦƤøxRrŜH¤¸ÂxDĝŒ|ø˂˜ƮÐ¬ɚwɲFjĔ²Äw°dždÀɞ_ĸdîàŎjʜêTĞªŌ‡ŜWÈ|tqĢUB~´°ÎFC•ŽU¼pĀēƄN¦¾O¶ŠłKĊOj“Ě”j´ĜYp˜{¦„ˆSĚÍ\\Tš×ªV–÷Ší¨ÅDK°ßtŇĔKš¨ǵÂcḷ̌ĚǣȄĽF‡lġUĵœŇ‹ȣFʉɁƒMğįʏƶɷØŭOǽ«ƽū¹Ʊő̝Ȩ§ȞʘĖiɜɶʦ}¨֪ࠜ̀ƇǬ¹ǨE˦ĥªÔêFŽxúQ„Er´W„rh¤Ɛ \\talĈDJ˜Ü|[Pll̚¸ƎGú´Pž¬W¦†^¦–H]prR“n|or¾wLVnÇIujkmon£cX^Bh`¥V”„¦U¤¸}€xRj–[^xN[~ªŠxQ„‚[`ªHÆÂExx^wšN¶Ê˜|¨ì†˜€MrœdYp‚oRzNy˜ÀDs~€bcfÌ`L–¾n‹|¾T‚°c¨È¢a‚r¤–`[|òDŞĔöxElÖdH„ÀI`„Ď\\Àì~ƎR¼tf•¦^¢ķ¶e”ÐÚMŒptgj–„ɡČÅyġLû™ŇV®ŠÄÈƀ†Ď°P|ªVV†ªj–¬ĚÒêp¬–E|ŬÂc|ÀtƐK fˆ{ĘFǜƌXƲąo½Ę‘\\¥–o}›Ûu£ç­kX‘{uĩ«āíÓUŅßŢq€Ť¥lyň[€oi{¦‹L‡ń‡ðFȪȖ”ĒL„¿Ì‹ˆfŒ£K£ʺ™oqNŸƒwğc`ue—tOj×°KJ±qƒÆġm‰Ěŗos¬…qehqsuœƒH{¸kH¡Š…ÊRǪÇƌbȆ¢´ä܍¢NìÉʖ¦â©Ġu¦öČ^â£Ăh–šĖMÈÄw‚\\fŦ°W ¢¾luŸD„wŠ\\̀ʉÌÛM…Ā[bӞEn}¶Vc…ê“sƒ"]],encodeOffsets:[[[129102,52189]]]}},{type:"Feature",id:"210000",properties:{id:"210000",cp:[123.429096,41.796767],name:"辽宁",childNum:16},geometry:{type:"MultiPolygon",coordinates:[["@@L–Ž@@s™a"],["@@MnNm"],["@@d‚c"],["@@eÀ‚C@b‚“‰"],["@@f‡…Xwkbr–Ä`qg"],["@@^jtW‘Q"],["@@~ Y]c"],["@@G`ĔN^_¿Z‚ÃM"],["@@iX¶B‹Y"],["@@„YƒZ"],["@@L_{Epf"],["@@^WqCT\\"],["@@\\[“‹§t|”¤_"],["@@m`n_"],["@@Ïxnj{q_×^Giip"],["@@@œé^B†‡ntˆaÊU—˜Ÿ]x ¯ÄPIJ­°h€ʙK³†VˆÕ@Y~†|EvĹsDŽ¦­L^p²ŸÒG ’Ël]„xxÄ_˜fT¤Ď¤cŽœP„–C¨¸TVjbgH²sdÎdHt`Bˆ—²¬GJję¶[ÐhjeXdlwhšðSȦªVÊπ‹Æ‘Z˜ÆŶ®²†^ŒÎyÅÎcPqń“ĚDMħĜŁH­ˆk„çvV[ij¼W–‚YÀäĦ’‘`XlžR`žôLUVžfK–¢†{NZdĒª’YĸÌÚJRr¸SA|ƴgŴĴÆbvªØX~†źBŽ|¦ÕœEž¤Ð`\\|Kˆ˜UnnI]¤ÀÂĊnŎ™R®Ő¿¶\\ÀøíDm¦ÎbŨab‰œaĘ\\ľã‚¸a˜tÎSƐ´©v\\ÖÚÌǴ¤Â‡¨JKr€Z_Z€fjþhPkx€`Y”’RIŒjJcVf~sCN¤ ˆE‚œhæm‰–sHy¨SðÑÌ\\\\ŸĐRZk°IS§fqŒßýáЍÙÉÖ[^¯ǤŲ„ê´\\¦¬ĆPM¯£Ÿˆ»uïpùzEx€žanµyoluqe¦W^£ÊL}ñrkqWňûP™‰UP¡ôJŠoo·ŒU}£Œ„[·¨@XŒĸŸ“‹‹DXm­Ûݏº‡›GU‹CÁª½{íĂ^cj‡k“¶Ã[q¤“LÉö³cux«zZfƒ²BWÇ®Yß½ve±ÃC•ý£W{Ú^’q^sÑ·¨‹ÍOt“¹·C¥‡GD›rí@wÕKţ݋˜Ÿ«V·i}xËÍ÷‘i©ĝ‡ɝǡ]ƒˆ{c™±OW‹³Ya±Ÿ‰_穂Hžĕoƫ€Ňqƒr³‰Lys[„ñ³¯OS–ďOMisZ†±ÅFC¥Pq{‚Ã[Pg}\\—¿ghćO…•k^ģÁFıĉĥM­oEqqZûěʼn³F‘¦oĵ—hŸÕP{¯~TÍlª‰N‰ßY“Ð{Ps{ÃVU™™eĎwk±ʼnVÓ½ŽJãÇÇ»Jm°dhcÀff‘dF~ˆ€ĀeĖ€d`sx² šƒ®EżĀdQ‹Âd^~ăÔHˆ¦\\›LKpĄVez¤NP ǹӗR™ÆąJSh­a[¦´Âghwm€BÐ¨źhI|žVVŽ—Ž|p] Â¼èNä¶ÜBÖ¼“L`‚¼bØæŒKV”ŸpoœúNZÞÒKxpw|ÊEMnzEQšŽIZ”ŽZ‡NBˆčÚFÜçmĩ‚WĪñt‘ÞĵÇñZ«uD‚±|Əlij¥ãn·±PmÍa‰–da‡ CL‡Ǒkùó¡³Ï«QaċϑOÃ¥ÕđQȥċƭy‹³ÃA"]],encodeOffsets:[[[123686,41445]],[[126019,40435]],[[124393,40128]],[[126117,39963]],[[125322,40140]],[[126686,40700]],[[126041,40374]],[[125584,40168]],[[125453,40165]],[[125362,40214]],[[125280,40291]],[[125774,39997]],[[125976,40496]],[[125822,39993]],[[125509,40217]],[[122731,40949]]]}},{type:"Feature",id:"220000",properties:{id:"220000",cp:[125.3245,43.886841],name:"吉林",childNum:1},geometry:{type:"Polygon",coordinates:["@@‘p䔳PClƒFbbÍzš€wBG’ĭ€Z„Åi“»ƒlY­ċ²SgŽkÇ£—^S‰“qd¯•‹R…©éŽ£¯S†\\cZ¹iűƏCuƍÓX‡oR}“M^o•£…R}oªU­F…uuXHlEŕ‡€Ï©¤ÛmTŽþ¤D–²ÄufàÀ­XXȱAe„yYw¬dvõ´KÊ£”\\rµÄl”iˆdā]|DÂVŒœH¹ˆÞ®ÜWnŒC”Œķ W‹§@\\¸‹ƒ~¤‹Vp¸‰póIO¢ŠVOšŇürXql~òÉK]¤¥Xrfkvzpm¶bwyFoúvð‡¼¤ N°ąO¥«³[ƒéǡű_°Õ\\ÚÊĝŽþâőàerR¨­JYlďQ[ ÏYëЧTGz•tnŠß¡gFkMŸāGÁ¤ia É‰™È¹`\\xs€¬dĆkNnuNUŠ–užP@‚vRY¾•–\\¢…ŒGªóĄ~RãÖÎĢù‚đŴÕhQŽxtcæëSɽʼníëlj£ƍG£nj°KƘµDsØÑpyƸ®¿bXp‚]vbÍZuĂ{nˆ^IüœÀSք”¦EŒvRÎûh@℈[‚Əȉô~FNr¯ôçR±ƒ­HÑl•’Ģ–^¤¢‚OðŸŒævxsŒ]ÞÁTĠs¶¿âƊGW¾ìA¦·TѬ†è¥€ÏÐJ¨¼ÒÖ¼ƒƦɄxÊ~S–tD@ŠĂ¼Ŵ¡jlºWžvЉˆzƦZЎ²CH— „Axiukd‹ŒGgetqmcžÛ£Ozy¥cE}|…¾cZ…k‚‰¿uŐã[oxGikfeäT@…šSUwpiÚFM©’£è^ڟ‚`@v¶eň†f h˜eP¶žt“äOlÔUgƒÞzŸU`lœ}ÔÆUvØ_Ō¬Öi^ĉi§²ÃŠB~¡Ĉ™ÚEgc|DC_Ȧm²rBx¼MÔ¦ŮdĨÃâYx‘ƘDVÇĺĿg¿cwÅ\\¹˜¥Yĭlœ¤žOv†šLjM_a W`zļMž·\\swqÝSA‡š—q‰Śij¯Š‘°kŠRē°wx^Đkǂғ„œž“œŽ„‹\\]˜nrĂ}²ĊŲÒøãh·M{yMzysěnĒġV·°“G³¼XÀ““™¤¹i´o¤ŃšŸÈ`̃DzÄUĞd\\i֚ŒˆmÈBĤÜɲDEh LG¾ƀľ{WaŒYÍȏĢĘÔRîĐj‹}Ǟ“ccj‡oUb½š{“h§Ǿ{K‹ƖµÎ÷žGĀÖŠåưÎs­l›•yiē«‹`姝H¥Ae^§„GK}iã\\c]v©ģZ“mÃ|“[M}ģTɟĵ‘Â`À–çm‰‘FK¥ÚíÁbXš³ÌQґHof{‰]e€pt·GŋĜYünĎųVY^’˜ydõkÅZW„«WUa~U·Sb•wGçǑ‚“iW^q‹F‚“›uNĝ—·Ew„‹UtW·Ýďæ©PuqEzwAV•—XR‰ãQ`­©GŒM‡ehc›c”ďϝd‡©ÑW_ϗYƅŒ»…é\\ƒɹ~ǙG³mØ©BšuT§Ĥ½¢Ã_ý‘L¡‘ýŸqT^rme™\\Pp•ZZbƒyŸ’uybQ—efµ]UhĿDCmûvašÙNSkCwn‰cćfv~…Y‹„ÇG"],encodeOffsets:[[130196,42528]]}},{type:"Feature",id:"230000",properties:{id:"230000",cp:[128.642464,46.756967],name:"黑龙江",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@UƒµNÿ¥īè灋•HÍøƕ¶LŒǽ|g¨|”™Ža¾pViˆdd”~ÈiŒíďÓQġėǐZ΋ŽXb½|ſÃH½ŸKFgɱCģÛÇA‡n™‹jÕc[VĝDZÃ˄Ç_™ £ń³pŽj£º”š¿”»WH´¯”U¸đĢmžtĜyzzNN|g¸÷äűѱĉā~mq^—Œ[ƒ”››”ƒǁÑďlw]¯xQĔ‰¯l‰’€°řĴrŠ™˜BˆÞTxr[tޏĻN_yŸX`biN™Ku…P›£k‚ZĮ—¦[ºxÆÀdhŽĹŀUÈƗCw’áZħÄŭcÓ¥»NAw±qȥnD`{ChdÙFćš}¢‰A±Äj¨]ĊÕjŋ«×`VuÓś~_kŷVÝyh„“VkÄãPs”Oµ—fŸge‚Ň…µf@u_Ù ÙcŸªNªÙEojVx™T@†ãSefjlwH\\pŏäÀvŠŽlY†½d{†F~¦dyz¤PÜndsrhf‹HcŒvlwjFœ£G˜±DύƥY‡yϊu¹XikĿ¦ÏqƗǀOŜ¨LI|FRĂn sª|Cš˜zxAè¥bœfudTrFWÁ¹Am|˜ĔĕsķÆF‡´Nš‰}ć…UŠÕ@Áijſmužç’uð^ÊýowŒFzØÎĕNőžǏȎôªÌŒDŽàĀÄ˄ĞŀƒʀĀƘŸˮȬƬĊ°ƒUŸzou‡xe]}Ž…AyȑW¯ÌmK‡“Q]‹Īºif¸ÄX|sZt|½ÚUΠlkš^p{f¤lˆºlÆW –€A²˜PVܜPH”Êâ]ÎĈÌÜk´\\@qàsĔÄQºpRij¼èi†`¶—„bXƒrBgxfv»ŽuUiˆŒ^v~”J¬mVp´£Œ´VWrnP½ì¢BX‚¬h™ŠðX¹^TjVœŠriªj™tŊÄm€tPGx¸bgRšŽsT`ZozÆO]’ÒFô҆Oƒ‡ŊŒvŞ”p’cGŒêŠsx´DR–Œ{A†„EOr°Œ•žx|íœbˆ³Wm~DVjºéNN†Ëܲɶ­GƒxŷCStŸ}]ûō•SmtuÇÃĕN•™āg»šíT«u}ç½BĵÞʣ¥ëÊ¡Mێ³ãȅ¡ƋaǩÈÉQ‰†G¢·lG|›„tvgrrf«†ptęŘnŠÅĢr„I²¯LiØsPf˜_vĠd„xM prʹšL¤‹¤‡eˌƒÀđK“žïÙVY§]I‡óáĥ]ķ†Kˆ¥Œj|pŇ\\kzţ¦šnņäÔVĂîά|vW’®l¤èØr‚˜•xm¶ă~lÄƯĄ̈́öȄEÔ¤ØQĄ–Ą»ƢjȦOǺ¨ìSŖÆƬy”Qœv`–cwƒZSÌ®ü±DŽ]ŀç¬B¬©ńzƺŷɄeeOĨS’Œfm Ċ‚ƀP̎ēz©Ċ‚ÄÕÊmgŸÇsJ¥ƔˆŊśæ’΁Ñqv¿íUOµª‰ÂnĦÁ_½ä@ê텣P}Ġ[@gġ}g“ɊדûÏWXá¢užƻÌsNͽƎÁ§č՛AēeL³àydl›¦ĘVçŁpśdžĽĺſʃQíÜçÛġԏsĕ¬—Ǹ¯YßċġHµ ¡eå`ļƒrĉŘóƢFì“ĎWøxÊk†”ƈdƬv|–I|·©NqńRŀƒ¤é”eŊœŀ›ˆàŀU²ŕƀB‚Q£Ď}L¹Îk@©ĈuǰųǨ”Ú§ƈnTËÇéƟÊcfčŤ^Xm‡—HĊĕË«W·ċëx³ǔķÐċJā‚wİ_ĸ˜Ȁ^ôWr­°oú¬Ħ…ŨK~”ȰCĐ´Ƕ£’fNÎèâw¢XnŮeÂÆĶŽ¾¾xäLĴĘlļO¤ÒĨA¢Êɚ¨®‚ØCÔ ŬGƠ”ƦYĜ‡ĘÜƬDJ—g_ͥœ@čŅĻA“¶¯@wÎqC½Ĉ»NŸăëK™ďÍQ“Ùƫ[«Ãí•gßÔÇOÝáW‘ñuZ“¯ĥ€Ÿŕā¡ÑķJu¤E Ÿå¯°WKɱ_d_}}vyŸõu¬ï¹ÓU±½@gÏ¿rýD‰†g…Cd‰µ—°MFYxw¿CG£‹Rƛ½Õ{]L§{qqąš¿BÇƻğëšܭNJË|c²}Fµ}›ÙRsÓpg±ŠQNqǫŋRwŕnéÑÉKŸ†«SeYR…ŋ‹@{¤SJ}šD Ûǖ֍Ÿ]gr¡µŷjqWÛham³~S«“„›Þ]"]],encodeOffsets:[[[134456,44547]]]}},{type:"Feature",id:"320000",properties:{id:"320000",cp:[119.767413,33.041544],name:"江苏",childNum:1},geometry:{type:"Polygon",coordinates:["@@cþÅPiŠ`ZŸRu¥É\\]~°ŽY`µ†Óƒ^phÁbnÀşúŽòa–ĬºTÖŒb‚˜e¦¦€{¸ZâćNpŒ©žHr|^ˆmjhŠSEb\\afv`sz^lkŽlj‹Ätg‹¤D˜­¾Xš¿À’|ДiZ„ȀåB·î}GL¢õcßjaŸyBFµÏC^ĭ•cÙt¿sğH]j{s©HM¢ƒQnDÀ©DaÜތ·jgàiDbPufjDk`dPOîƒhw¡ĥ‡¥šG˜ŸP²ĐobºrY†„î¶aHŢ´ ]´‚rılw³r_{£DB_Ûdåuk|ˆŨ¯F Cºyr{XFy™e³Þċ‡¿Â™kĭB¿„MvÛpm`rÚã”@ƹhågËÖƿxnlč¶Åì½Ot¾dJlŠVJʜǀœŞqvnOŠ^ŸJ”Z‘ż·Q}ê͎ÅmµÒ]Žƍ¦Dq}¬R^èĂ´ŀĻĊIԒtžIJyQŐĠMNtœR®òLh‰›Ěs©»œ}OӌGZz¶A\\jĨFˆäOĤ˜HYš†JvÞHNiÜaϚɖnFQlšNM¤ˆB´ĄNöɂtp–Ŭdf先‹qm¿QûŠùއÚb¤uŃJŴu»¹Ą•lȖħŴw̌ŵ²ǹǠ͛hĭłƕrçü±Y™xci‡tğ®jű¢KOķ•Coy`å®VTa­_Ā]ŐÝɞï²ʯÊ^]afYǸÃĆēĪȣJđ͍ôƋĝÄ͎ī‰çÛɈǥ£­ÛmY`ó£Z«§°Ó³QafusNıDž_k}¢m[ÝóDµ—¡RLčiXy‡ÅNïă¡¸iĔϑNÌŕoēdōîåŤûHcs}~Ûwbù¹£¦ÓCt‹OPrƒE^ÒoŠg™ĉIµžÛÅʹK…¤½phMŠü`o怆ŀ"],encodeOffsets:[[121740,32276]]}},{type:"Feature",id:"330000",properties:{id:"330000",cp:[120.153576,29.287459],name:"浙江",childNum:45},geometry:{type:"MultiPolygon",coordinates:[["@@E^dQ]K"],["@@jX^j‡"],["@@sfŠbU‡"],["@@qP\\xz[ck"],["@@‘Rƒ¢‚FX}°[s_"],["@@Cbœ\\—}"],["@@e|v\\la{u"],["@@v~u}"],["@@QxÂF¯}"],["@@¹nŒvÞs¯o"],["@@rSkUEj"],["@@bi­ZŒP"],["@@p[}INf"],["@@À¿€"],["@@¹dnbŒ…"],["@@rSŸBnR"],["@@g~h}"],["@@FlEk"],["@@OdPc"],["@@v[u\\"],["@@FjâL~wyoo~›sµL–\\"],["@@¬e¹aNˆ"],["@@\\nÔ¡q]L³ë\\ÿ®ŒQ֎"],["@@ÊA­©[¬"],["@@KxŒv­"],["@@@hlIk]"],["@@pW{o||j"],["@@Md|_mC"],["@@¢…X£ÏylD¼XˆtH"],["@@hlÜ[LykAvyfw^Ež›¤"],["@@fp¤Mus“R"],["@@®_ma~•LÁ¬šZ"],["@@iM„xZ"],["@@ZcYd"],["@@Z~dOSo|A¿qZv"],["@@@`”EN¡v"],["@@|–TY{"],["@@@n@m"],["@@XWkCT\\"],["@@ºwšZRkĕWO¢"],["@@™X®±Grƪ\\ÔáXq{‹"],["@@ůTG°ĄLHm°UC‹"],["@@¤Ž€aÜx~}dtüGæţŎíĔcŖpMËВj碷ðĄÆMzˆjWKĎ¢Q¶˜À_꒔_Bı€i«pZ€gf€¤Nrq]§ĂN®«H±‡yƳí¾×ŸīàLłčŴǝĂíÀBŖÕªˆŠÁŖHŗʼnåqûõi¨hÜ·ƒñt»¹ýv_[«¸m‰YL¯‰Qª…mĉÅdMˆ•gÇjcº«•ęœ¬­K­´ƒB«Âącoċ\\xKd¡gěŧ«®á’[~ıxu·Å”KsËɏc¢Ù\\ĭƛëbf¹­ģSƒĜkáƉÔ­ĈZB{ŠaM‘µ‰fzʼnfåÂŧįƋǝÊĕġć£g³ne­ą»@­¦S®‚\\ßðCšh™iqªĭiAu‡A­µ”_W¥ƣO\\lċĢttC¨£t`ˆ™PZäuXßBs‡Ļyek€OđġĵHuXBšµ]׌‡­­\\›°®¬F¢¾pµ¼kŘó¬Wät’¸|@ž•L¨¸µr“ºù³Ù~§WI‹ŸZWŽ®’±Ð¨ÒÉx€`‰²pĜ•rOògtÁZ}þÙ]„’¡ŒŸFK‚wsPlU[}¦Rvn`hq¬\\”nQ´ĘRWb”‚_ rtČFI֊kŠŠĦPJ¶ÖÀÖJĈĄTĚòžC ²@Pú…Øzœ©PœCÈÚœĒ±„hŖ‡l¬â~nm¨f©–iļ«m‡nt–u†ÖZÜÄj“ŠLŽ®E̜Fª²iÊxبžIÈhhst"],["@@o\\V’zRZ}y"],["@@†@°¡mۛGĕ¨§Ianá[ýƤjfæ‡ØL–•äGr™"]],encodeOffsets:[[[125592,31553]],[[125785,31436]],[[125729,31431]],[[125513,31380]],[[125223,30438]],[[125115,30114]],[[124815,29155]],[[124419,28746]],[[124095,28635]],[[124005,28609]],[[125e3,30713]],[[125111,30698]],[[125078,30682]],[[125150,30684]],[[124014,28103]],[[125008,31331]],[[125411,31468]],[[125329,31479]],[[125626,30916]],[[125417,30956]],[[125254,30976]],[[125199,30997]],[[125095,31058]],[[125083,30915]],[[124885,31015]],[[125218,30798]],[[124867,30838]],[[124755,30788]],[[124802,30809]],[[125267,30657]],[[125218,30578]],[[125200,30562]],[[124968,30474]],[[125167,30396]],[[124955,29879]],[[124714,29781]],[[124762,29462]],[[124325,28754]],[[123990,28459]],[[125366,31477]],[[125115,30363]],[[125369,31139]],[[122495,31878]],[[125329,30690]],[[125192,30787]]]}},{type:"Feature",id:"340000",properties:{id:"340000",cp:[117.283042,31.26119],name:"安徽",childNum:3},geometry:{type:"MultiPolygon",coordinates:[["@@^iuLX^"],["@@‚e©Ehl"],["@@°ZÆëϵmkǀwÌÕæhºgBĝâqÙĊz›ÖgņtÀÁÊÆá’hEz|WzqD¹€Ÿ°E‡ŧl{ævÜcA`¤C`|´qžxIJkq^³³ŸGšµbƒíZ…¹qpa±ď OH—¦™Ħˆx¢„gPícOl_iCveaOjCh߸i݋bÛªCC¿€m„RV§¢A|t^iĠGÀtÚs–d]ĮÐDE¶zAb àiödK¡~H¸íæAžǿYƒ“j{ď¿‘™À½W—®£ChŒÃsiŒkkly]_teu[bFa‰Tig‡n{]Gqªo‹ĈMYá|·¥f¥—őaSÕė™NµñĞ«ImŒ_m¿Âa]uĜp …Z_§{Cƒäg¤°r[_Yj‰ÆOdý“[ŽI[á·¥“Q_n‡ùgL¾mv™ˊBÜÆ¶ĊJhšp“c¹˜O]iŠ]œ¥ jtsggJǧw×jÉ©±›EFˍ­‰Ki”ÛÃÕYv…s•ˆm¬njĻª•§emná}k«ŕˆƒgđ²Ù›DǤ›í¡ªOy›†×Où±@DŸñSęćăÕIÕ¿IµĥO‰‰jNÕËT¡¿tNæŇàåyķrĕq§ÄĩsWÆßŽF¶žX®¿‰mŒ™w…RIޓfßoG‘³¾©uyH‘į{Ɓħ¯AFnuP…ÍÔzšŒV—dàôº^Ðæd´€‡oG¤{S‰¬ćxã}›ŧ×Kǥĩ«žÕOEзÖdÖsƘѨ[’Û^Xr¢¼˜§xvěƵ`K”§ tÒ´Cvlo¸fzŨð¾NY´ı~ÉĔē…ßúLÃϖ_ÈÏ|]ÂÏFl”g`bšežž€n¾¢pU‚h~ƴ˶_‚r sĄ~cž”ƈ]|r c~`¼{À{ȒiJjz`îÀT¥Û³…]’u}›f…ïQl{skl“oNdŸjŸäËzDvčoQŠďHI¦rb“tHĔ~BmlRš—V_„ħTLnñH±’DžœL‘¼L˜ªl§Ťa¸ŒĚlK²€\\RòvDcÎJbt[¤€D@®hh~kt°ǾzÖ@¾ªdb„YhüóZ ň¶vHrľ\\ʗJuxAT|dmÀO„‹[ÃԋG·ĚąĐlŪÚpSJ¨ĸˆLvÞcPæķŨŽ®mАˆálŸwKhïgA¢ųƩޖ¤OȜm’°ŒK´"]],encodeOffsets:[[[121722,32278]],[[119475,30423]],[[119168,35472]]]}},{type:"Feature",id:"350000",properties:{id:"350000",cp:[118.306239,26.075302],name:"福建",childNum:18},geometry:{type:"MultiPolygon",coordinates:[["@@“zht´‡]"],["@@aj^~ĆG—©O"],["@@ed¨„C}}i"],["@@@vˆPGsQ"],["@@‰sBz‚ddW]Q"],["@@SލQ“{"],["@@NŽVucW"],["@@qptBAq"],["@@‰’¸[mu"],["@@Q\\pD]_"],["@@jSwUadpF"],["@@eXª~ƒ•"],["@@AjvFso"],["@@fT–›_Çí\\Ÿ™—v|ba¦jZÆy€°"],["@@IjJi"],["@@wJI€ˆxš«¼AoNe{M­"],["@@K‰±¡Óˆ”ČäeZ"],["@@k¡¹Eh~c®wBk‹UplÀ¡I•~Māe£bN¨gZý¡a±Öcp©PhžI”Ÿ¢Qq…ÇGj‹|¥U™ g[Ky¬ŏ–v@OpˆtÉEŸF„\\@ åA¬ˆV{Xģ‰ĐBy…cpě…¼³Ăp·¤ƒ¥o“hqqÚ¡ŅLsƒ^ᗞ§qlŸÀhH¨MCe»åÇGD¥zPO£čÙkJA¼ß–ėu›ĕeûҍiÁŧSW¥˜QŠûŗ½ùěcݧSùĩąSWó«íęACµ›eR—åǃRCÒÇZÍ¢‹ź±^dlsŒtjD¸•‚ZpužÔâÒH¾oLUêÃÔjjēò´ĄW‚ƛ…^Ñ¥‹ĦŸ@Çò–ŠmŒƒOw¡õyJ†yD}¢ďÑÈġfŠZd–a©º²z£šN–ƒjD°Ötj¶¬ZSÎ~¾c°¶Ðm˜x‚O¸¢Pl´žSL|¥žA†ȪĖM’ņIJg®áIJČĒü` ŽQF‡¬h|ÓJ@zµ |ê³È ¸UÖŬŬÀEttĸr‚]€˜ðŽM¤ĶIJHtÏ A’†žĬkvsq‡^aÎbvŒd–™fÊòSD€´Z^’xPsÞrv‹ƞŀ˜jJd×ŘÉ ®A–ΦĤd€xĆqAŒ†ZR”ÀMźŒnĊ»ŒİÐZ— YX–æJŠyĊ²ˆ·¶q§·–K@·{s‘Xãô«lŗ¶»o½E¡­«¢±¨Yˆ®Ø‹¶^A™vWĶGĒĢžPlzfˆļŽtàAvWYãšO_‡¤sD§ssČġ[kƤPX¦Ž`¶“ž®ˆBBvĪjv©šjx[L¥àï[F…¼ÍË»ğV`«•Ip™}ccÅĥZE‹ãoP…´B@ŠD—¸m±“z«Ƴ—¿å³BRضˆœWlâþäą`“]Z£Tc— ĹGµ¶H™m@_©—kŒ‰¾xĨ‡ôȉðX«½đCIbćqK³Á‹Äš¬OAwã»aLʼn‡ËĥW[“ÂGI—ÂNxij¤D¢ŽîĎÎB§°_JœGsƒ¥E@…¤uć…P‘å†cuMuw¢BI¿‡]zG¹guĮck\\_"]],encodeOffsets:[[[123250,27563]],[[122541,27268]],[[123020,27189]],[[122916,27125]],[[122887,26845]],[[122808,26762]],[[122568,25912]],[[122778,26197]],[[122515,26757]],[[122816,26587]],[[123388,27005]],[[122450,26243]],[[122578,25962]],[[121255,25103]],[[120987,24903]],[[122339,25802]],[[121042,25093]],[[122439,26024]]]}},{type:"Feature",id:"360000",properties:{id:"360000",cp:[115.592151,27.676493],name:"江西",childNum:1},geometry:{type:"Polygon",coordinates:["@@ĢĨƐgÂMD~ņªe^\\^§„ý©j׍cZ†Ø¨zdÒa¶ˆlҍJŒìõ`oz÷@¤u޸´†ôęöY¼‰HČƶajlÞƩ¥éZ[”|h}^U Œ ¥p„ĄžƦO lt¸Æ €Q\\€ŠaÆ|CnÂOjt­ĚĤd’ÈŒF`’¶„@Ð딠¦ōҞ¨Sêv†HĢûXD®…QgėWiØPÞìºr¤dž€NĠ¢l–•ĄtZoœCƞÔºCxrpĠV®Ê{f_Y`_ƒeq’’®Aot`@o‚DXfkp¨|Šs¬\\D‘ÄSfè©Hn¬…^DhÆyøJh“ØxĢĀLʈ„ƠPżċĄwȠ̦G®ǒĤäTŠÆ~ĦwŠ«|TF¡Šn€c³Ïå¹]ĉđxe{ÎӐ†vOEm°BƂĨİ|G’vz½ª´€H’àp”eJ݆Qšxn‹ÀŠW­žEµàXÅĪt¨ÃĖrÄwÀFÎ|ňÓMå¼ibµ¯»åDT±m[“r«_gŽmQu~¥V\\OkxtL E¢‹ƒ‘Ú^~ýê‹Pó–qo슱_Êw§ÑªåƗ⼋mĉŹ‹¿NQ“…YB‹ąrwģcÍ¥B•Ÿ­ŗÊcØiI—žƝĿuŒqtāwO]‘³YCñTeɕš‹caub͈]trlu€ī…B‘ПGsĵıN£ï—^ķqss¿FūūV՟·´Ç{éĈý‰ÿ›OEˆR_ŸđûIċâJh­ŅıN‘ȩĕB…¦K{Tk³¡OP·wn—µÏd¯}½TÍ«YiµÕsC¯„iM•¤™­•¦¯P|ÿUHv“he¥oFTu‰õ\\ŽOSs‹MòđƇiaºćXŸĊĵà·çhƃ÷ǜ{‘ígu^›đg’m[×zkKN‘¶Õ»lčÓ{XSƉv©_ÈëJbVk„ĔVÀ¤P¾ºÈMÖxlò~ªÚàGĂ¢B„±’ÌŒK˜y’áV‡¼Ã~­…`g›ŸsÙfI›Ƌlę¹e|–~udjˆuTlXµf`¿JdŠ[\\˜„L‚‘²"],encodeOffsets:[[116689,26234]]}},{type:"Feature",id:"370000",properties:{id:"370000",cp:[118.000923,36.275807],name:"山东",childNum:13},geometry:{type:"MultiPolygon",coordinates:[["@@Xjd]{K"],["@@itbFHy"],["@@HlGk"],["@@T‚ŒGŸy"],["@@K¬˜•‹U"],["@@WdXc"],["@@PtOs"],["@@•LnXhc"],["@@ppVƒu]Or"],["@@cdzAUa"],["@@udRhnCI‡"],["@@ˆoIƒpR„"],["@@Ľč{fzƤî’Kš–ÎMĮ]†—ZFˆ½Y]â£ph’™š¶¨râøÀ†ÎǨ¤^ºÄ”Gzˆ~grĚĜlĞÆ„LĆdž¢Îo¦–cv“Kb€gr°Wh”mZp ˆL]LºcU‰Æ­n”żĤÌǜbAnrOAœ´žȊcÀbƦUØrĆUÜøœĬƞ†š˜Ez„VL®öØBkŖÝĐ˹ŧ̄±ÀbÎɜnb²ĦhņBĖ›žįĦåXćì@L¯´ywƕCéõė ƿ¸‘lµ¾Z|†ZWyFYŸ¨Mf~C¿`€à_RÇzwƌfQnny´INoƬˆèôº|sT„JUš›‚L„îVj„ǎ¾Ē؍‚Dz²XPn±ŴPè¸ŔLƔÜƺ_T‘üÃĤBBċȉöA´fa„˜M¨{«M`‡¶d¡ô‰Ö°šmȰBÔjjŒ´PM|”c^d¤u•ƒ¤Û´Œä«ƢfPk¶Môlˆ]Lb„}su^ke{lC‘…M•rDŠÇ­]NÑFsmoõľH‰yGă{{çrnÓE‰‹ƕZGª¹Fj¢ïW…uøCǷ돡ąuhÛ¡^Kx•C`C\\bÅxì²ĝÝ¿_N‰īCȽĿåB¥¢·IŖÕy\\‡¹kx‡Ã£Č×GDyÕ¤ÁçFQ¡„KtŵƋ]CgÏAùSed‡cÚź—ŠuYfƒyMmhUWpSyGwMPqŀ—›Á¼zK›¶†G•­Y§Ëƒ@–´śÇµƕBmœ@Io‚g——Z¯u‹TMx}C‘‰VK‚ï{éƵP—™_K«™pÛÙqċtkkù]gŽ‹Tğwo•ɁsMõ³ă‡AN£™MRkmEʕč™ÛbMjÝGu…IZ™—GPģ‡ãħE[iµBEuŸDPԛ~ª¼ętŠœ]ŒûG§€¡QMsğNPŏįzs£Ug{đJĿļā³]ç«Qr~¥CƎÑ^n¶ÆéÎR~ݏY’I“] P‰umŝrƿ›‰›Iā‹[x‰edz‹L‘¯v¯s¬ÁY…~}…ťuٌg›ƋpÝĄ_ņī¶ÏSR´ÁP~ž¿Cyžċßdwk´Ss•X|t‰`Ä Èð€AªìÎT°¦Dd–€a^lĎDĶÚY°Ž`ĪŴǒˆ”àŠv\\ebŒZH„ŖR¬ŢƱùęO•ÑM­³FۃWp[ƒ"]],encodeOffsets:[[[123806,39303]],[[123821,39266]],[[123742,39256]],[[123702,39203]],[[123649,39066]],[[123847,38933]],[[123580,38839]],[[123894,37288]],[[123043,36624]],[[123344,38676]],[[123522,38857]],[[123628,38858]],[[118260,36742]]]}},{type:"Feature",id:"410000",properties:{id:"410000",cp:[113.665412,33.757975],name:"河南",childNum:1},geometry:{type:"Polygon",coordinates:["@@•ýL™ùµP³swIÓxcŢĞð†´E®žÚPt†ĴXØx¶˜@«ŕŕQGƒ‹Yfa[şu“ßǩ™đš_X³ijÕčC]kbc•¥CS¯ëÍB©÷‹–³­Siˆ_}m˜YTtž³xlàcȂzÀD}ÂOQ³ÐTĨ¯†ƗòËŖ[hœł‹Ŧv~††}ÂZž«¤lPǕ£ªÝŴÅR§ØnhcŒtâk‡nύ­ľŹUÓÝdKuķ‡I§oTũÙďkęĆH¸ÓŒ\\ăŒ¿PcnS{wBIvɘĽ[GqµuŸŇôYgûƒZcaŽ©@½Õǽys¯}lgg@­C\\£as€IdÍuCQñ[L±ęk·‹ţb¨©kK—’»›KC²‘òGKmĨS`ƒ˜UQ™nk}AGē”sqaJ¥ĐGR‰ĎpCuÌy ã iMc”plk|tRk†ðœev~^‘´†¦ÜŽSí¿_iyjI|ȑ|¿_»d}qŸ^{“Ƈdă}Ÿtqµ`Ƴĕg}V¡om½fa™Ço³TTj¥„tĠ—Ry”K{ùÓjuµ{t}uËR‘iŸvGŠçJFjµŠÍyqΘàQÂFewixGw½Yŷpµú³XU›½ġy™łå‰kÚwZXˆ·l„¢Á¢K”zO„Λ΀jc¼htoDHr…|­J“½}JZ_¯iPq{tę½ĕ¦Zpĵø«kQ…Ťƒ]MÛfaQpě±ǽ¾]u­Fu‹÷nƒ™čįADp}AjmcEǒaª³o³ÆÍSƇĈÙDIzˑ赟^ˆKLœ—i—Þñ€[œƒaA²zz‰Ì÷Dœ|[šíijgf‚ÕÞd®|`ƒĆ~„oĠƑô³Ŋ‘D×°¯CsŠøÀ«ì‰UMhTº¨¸ǡîS–Ô„DruÂÇZ•ÖEŽ’vPZ„žW”~؋ÐtĄE¢¦Ðy¸bŠô´oŬ¬Ž²Ês~€€]®tªašpŎJ¨Öº„_ŠŔ–`’Ŗ^Ѝ\\Ĝu–”~m²Ƹ›¸fW‰ĦrƔ}Î^gjdfÔ¡J}\\n C˜¦þWxªJRÔŠu¬ĨĨmF†dM{\\d\\ŠYÊ¢ú@@¦ª²SŠÜsC–}fNècbpRmlØ^g„d¢aÒ¢CZˆZxvÆ¶N¿’¢T@€uCœ¬^ĊðÄn|žlGl’™Rjsp¢ED}€Fio~ÔNŽ‹„~zkĘHVsDzßjƒŬŒŠŢ`Pûàl¢˜\\ÀœEhŽİgÞē X¼Pk–„|m"],encodeOffsets:[[118256,37017]]}},{type:"Feature",id:"420000",properties:{id:"420000",cp:[113.298572,30.684355],name:"湖北",childNum:3},geometry:{type:"MultiPolygon",coordinates:[["@@AB‚"],["@@lskt"],["@@¾«}{ra®pîÃ\\™›{øCŠËyyB±„b\\›ò˜Ý˜jK›‡L ]ĎĽÌ’JyÚCƈćÎT´Å´pb©È‘dFin~BCo°BĎĚømvŒ®E^vǾ½Ĝ²Ro‚bÜeNŽ„^ĺ£R†¬lĶ÷YoĖ¥Ě¾|sOr°jY`~I”¾®I†{GqpCgyl{‡£œÍƒÍyPL“¡ƒ¡¸kW‡xYlÙæŠšŁĢzœ¾žV´W¶ùŸo¾ZHxjwfx„GNÁ•³Xéæl¶‰EièIH‰ u’jÌQ~v|sv¶Ôi|ú¢Fh˜Qsğ¦ƒSiŠBg™ÐE^ÁÐ{–čnOÂȞUÎóĔ†ÊēIJ}Z³½Mŧïeyp·uk³DsѨŸL“¶_œÅuèw»—€¡WqÜ]\\‘Ò§tƗcÕ¸ÕFÏǝĉăxŻČƟO‡ƒKÉġÿ×wg”÷IÅzCg†]m«ªGeçÃTC’«[‰t§{loWeC@ps_Bp‘­r‘„f_``Z|ei¡—oċMqow€¹DƝӛDYpûs•–‹Ykıǃ}s¥ç³[§ŸcYЧHK„«Qy‰]¢“wwö€¸ïx¼ņ¾Xv®ÇÀµRĠЋžHMž±cÏd„ƒǍũȅȷ±DSyúĝ£ŤĀàtÖÿï[îb\\}pĭÉI±Ñy…¿³x¯N‰o‰|¹H™ÏÛm‹júË~Tš•u˜ęjCöAwě¬R’đl¯ Ñb­‰ŇT†Ŀ_[Œ‘IčĄʿnM¦ğ\\É[T·™k¹œ©oĕ@A¾w•ya¥Y\\¥Âaz¯ãÁ¡k¥ne£Ûw†E©Êō¶˓uoj_Uƒ¡cF¹­[Wv“P©w—huÕyBF“ƒ`R‹qJUw\\i¡{jŸŸEPïÿ½fć…QÑÀQ{ž‚°‡fLԁ~wXg—ītêݾ–ĺ‘Hdˆ³fJd]‹HJ²…E€ƒoU¥†HhwQsƐ»Xmg±çve›]Dm͂PˆoCc¾‹_h”–høYrŊU¶eD°Č_N~øĹĚ·`z’]Äþp¼…äÌQŒv\\rCŒé¾TnkžŐڀÜa‡“¼ÝƆ̶Ûo…d…ĔňТJq’Pb ¾|JŒ¾fXŠƐîĨ_Z¯À}úƲ‹N_ĒĊ^„‘ĈaŐyp»CÇĕKŠšñL³ŠġMŒ²wrIÒŭxjb[œžn«øœ˜—æˆàƒ ^²­h¯Ú€ŐªÞ¸€Y²ĒVø}Ā^İ™´‚LŠÚm„¥ÀJÞ{JVŒųÞŃx×sxxƈē ģMř–ÚðòIf–Ċ“Œ\\Ʈ±ŒdʧĘD†vČ_Àæ~DŒċ´A®µ†¨ØLV¦êHÒ¤"]],encodeOffsets:[[[113712,34e3]],[[115612,30507]],[[113649,34054]]]}},{type:"Feature",id:"430000",properties:{id:"430000",cp:[111.782279,28.09409],name:"湖南",childNum:3},geometry:{type:"MultiPolygon",coordinates:[["@@—n„FTs"],["@@ßÅÆá‰½ÔXr—†CO™“…ËR‘ïÿĩ­TooQyšÓ[‹ŅBE¬–ÎÓXa„į§Ã¸G °ITxp‰úxÚij¥Ïš–̾ŠedžÄ©ĸG…œàGh‚€M¤–Â_U}Ċ}¢pczfŠþg¤€”ÇòAV‘‹M"],["@@©K—ƒA·³CQ±Á«³BUŠƑ¹AŠtćOw™D]ŒJiØSm¯b£‘ylƒ›X…HËѱH•«–‘C^õľA–Å§¤É¥„ïyuǙuA¢^{ÌC´­¦ŷJ£^[†“ª¿‡ĕ~•Ƈ…•N… skóā‡¹¿€ï]ă~÷O§­@—Vm¡‹Qđ¦¢Ĥ{ºjԏŽŒª¥nf´•~ÕoŸž×Ûą‹MąıuZœmZcÒ IJβSÊDŽŶ¨ƚƒ’CÖŎªQؼrŭŽ­«}NÏürʬŒmjr€@ĘrTW ­SsdHzƓ^ÇÂyUi¯DÅYlŹu{hTœ}mĉ–¹¥ě‰Dÿë©ıÓ[Oº£ž“¥ót€ł¹MՄžƪƒ`Pš…Di–ÛUоÅ‌ìˆU’ñB“È£ýhe‰dy¡oċ€`pfmjP~‚kZa…ZsÐd°wj§ƒ@€Ĵ®w~^‚kÀÅKvNmX\\¨a“”сqvíó¿F„¤¡@ũÑVw}S@j}¾«pĂr–ªg àÀ²NJ¶¶Dô…K‚|^ª†Ž°LX¾ŴäPᜣEXd›”^¶›IJÞܓ~‘u¸ǔ˜Ž›MRhsR…e†`ÄofIÔ\\Ø  i”ćymnú¨cj ¢»–GČìƊÿШXeĈ¾Oð Fi ¢|[jVxrIQŒ„_E”zAN¦zLU`œcªx”OTu RLÄ¢dV„i`p˔vŎµªÉžF~ƒØ€d¢ºgİàw¸Áb[¦Zb¦–z½xBĖ@ªpº›šlS¸Ö\\Ĕ[N¥ˀmĎă’J\\‹ŀ`€…ňSڊĖÁĐiO“Ĝ«BxDõĚiv—ž–S™Ì}iùŒžÜnšÐºGŠ{Šp°M´w†ÀÒzJ²ò¨ oTçüöoÛÿñŽőФ‚ùTz²CȆȸǎۃƑÐc°dPÎŸğ˶[Ƚu¯½WM¡­Éž“’B·rížnZŸÒ `‡¨GA¾\\pē˜XhÆRC­üWGġu…T靧Ŏѝ©ò³I±³}_‘‹EÃħg®ęisÁPDmÅ{‰b[Rşs·€kPŸŽƥƒóRo”O‹ŸVŸ~]{g\\“êYƪ¦kÝbiċƵŠGZ»Ěõ…ó·³vŝž£ø@pyö_‹ëŽIkѵ‡bcѧy…×dY؎ªiþž¨ƒ[]f]Ņ©C}ÁN‡»hĻħƏ’ĩ"]],encodeOffsets:[[[115640,30489]],[[112543,27312]],[[116690,26230]]]}},{type:"Feature",id:"440000",properties:{id:"440000",cp:[113.280637,23.125178],name:"广东",childNum:24},geometry:{type:"MultiPolygon",coordinates:[["@@QdˆAua"],["@@ƒlxDLo"],["@@sbhNLo"],["@@Ă āŸ"],["@@WltO[["],["@@Krœ]S"],["@@e„„I]y"],["@@I|„Mym"],["@@ƒÛ³LSŒž¼Y"],["@@nvºB–ëui©`¾"],["@@zdšÛ›Jw®"],["@@†°…¯"],["@@a yAª¸ËJIx،@€ĀHAmßV¡o•fu•o"],["@@šs‰ŗÃÔėAƁ›ZšÄ ~°ČP‚‹äh"],["@@‹¶Ý’Ì‚vmĞh­ı‡Q"],["@@HœŠdSjĒ¢D}war…“u«ZqadYM"],["@@elŒ\\LqqU"],["@@~rMo\\"],["@@f„^ƒC"],["@@øPªoj÷ÍÝħXČx”°Q¨ıXNv"],["@@gÇƳˆŽˆ”oˆŠˆ[~tly"],["@@E–ÆC¿‘"],["@@OŽP"],["@@w‹†đóg‰™ĝ—[³‹¡VÙæÅöM̳¹pÁaËýý©D©Ü“JŹƕģGą¤{Ùū…ǘO²«BƱéA—Ò‰ĥ‡¡«BhlmtÃPµyU¯uc“d·w_bŝcīímGOŽ|KP’ȏ‡ŹãŝIŕŭŕ@Óoo¿ē‹±ß}Ž…ŭ‚ŸIJWÈCőâUâǙI›ğʼn©I›ijEׅÁ”³Aó›wXJþ±ÌŒÜӔĨ£L]ĈÙƺZǾĆĖMĸĤfŒÎĵl•ŨnȈ‘ĐtF”Š–FĤ–‚êk¶œ^k°f¶gŠŽœ}®Fa˜f`vXŲxl˜„¦–ÔÁ²¬ÐŸ¦pqÊ̲ˆi€XŸØRDÎ}†Ä@ZĠ’s„x®AR~®ETtĄZ†–ƈfŠŠHâÒÐA†µ\\S¸„^wĖkRzŠalŽŜ|E¨ÈNĀňZTŒ’pBh£\\ŒĎƀuXĖtKL–¶G|Ž»ĺEļĞ~ÜĢÛĊrˆO˜Ùîvd]nˆ¬VœÊĜ°R֟pM††–‚ƂªFbwžEÀˆ˜©Œž\\…¤]ŸI®¥D³|ˎ]CöAŤ¦…æ’´¥¸Lv¼€•¢ĽBaô–F~—š®²GÌҐEY„„œzk¤’°ahlV՞I^‹šCxĈPŽsB‰ƒºV‰¸@¾ªR²ĨN]´_eavSi‡vc•}p}Đ¼ƌkJœÚe thœ†_¸ ºx±ò_xN›Ë‹²‘@ƒă¡ßH©Ùñ}wkNÕ¹ÇO½¿£ĕ]ly_WìIžÇª`ŠuTÅxYĒÖ¼k֞’µ‚MžjJÚwn\\h‘œĒv]îh|’È›Ƅøègž¸Ķß ĉĈWb¹ƀdéƌNTtP[ŠöSvrCZžžaGuœbo´ŖÒÇА~¡zCI…özx¢„Pn‹•‰Èñ @ŒĥÒ¦†]ƞŠV}³ăĔñiiÄÓVépKG½Ä‘ÓávYo–C·sit‹iaÀy„ŧΡÈYDÑům}‰ý|m[węõĉZÅxUO}÷N¹³ĉo_qtă“qwµŁYلǝŕ¹tïÛUïmRCº…ˆĭ|µ›ÕÊK™½R‘ē ó]‘–GªęAx–»HO£|ām‡¡diď×YïYWªʼnOeÚtĐ«zđ¹T…ā‡úE™á²\\‹ķÍ}jYàÙÆſ¿Çdğ·ùTßÇţʄ¡XgWÀLJğ·¿ÃˆOj YÇ÷Qě‹i"]],encodeOffsets:[[[117381,22988]],[[116552,22934]],[[116790,22617]],[[116973,22545]],[[116444,22536]],[[116931,22515]],[[116496,22490]],[[116453,22449]],[[113301,21439]],[[118726,21604]],[[118709,21486]],[[113210,20816]],[[115482,22082]],[[113171,21585]],[[113199,21590]],[[115232,22102]],[[115739,22373]],[[115134,22184]],[[113056,21175]],[[119573,21271]],[[119957,24020]],[[115859,22356]],[[116561,22649]],[[116285,22746]]]}},{type:"Feature",id:"450000",properties:{id:"450000",cp:[108.320004,22.82402],name:"广西",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@H– TQ§•A"],["@@ĨʪƒLƒƊDÎĹĐCǦė¸zÚGn£¾›rªŀÜt¬@֛ڈSx~øOŒ˜ŶÐÂæȠ\\„ÈÜObĖw^oބLf¬°bI lTØB̈F£Ć¹gñĤaY“t¿¤VSñœK¸¤nM†¼‚JE±„½¸šŠño‹ÜCƆæĪ^ŠĚQÖ¦^‡ˆˆf´Q†üÜʝz¯šlzUĺš@쇀p¶n]sxtx¶@„~ÒĂJb©gk‚{°‚~c°`ԙ¬rV\\“la¼¤ôá`¯¹LC†ÆbŒxEræO‚v[H­˜„[~|aB£ÖsºdAĐzNÂðsŽÞƔ…Ĥªbƒ–ab`ho¡³F«èVloޤ™ÔRzpp®SŽĪº¨ÖƒºN…ij„d`’a”¦¤F³ºDÎńĀìŠCžĜº¦Ċ•~nS›|gźvZkCÆj°zVÈÁƔ]LÊFZg…čP­kini«‹qǀcz͔Y®¬Ů»qR×ō©DՄ‘§ƙǃŵTÉĩ±ŸıdÑnYY›IJvNĆÌØÜ Öp–}e³¦m‹©iÓ|¹Ÿħņ›|ª¦QF¢Â¬ʖovg¿em‡^ucà÷gՎuŒíÙćĝ}FϼĹ{µHK•sLSđƃr‹č¤[Ag‘oS‹ŇYMÿ§Ç{Fśbky‰lQxĕƒ]T·¶[B…ÑÏGáşşƇe€…•ăYSs­FQ}­Bƒw‘tYğÃ@~…C̀Q ×W‡j˱rÉ¥oÏ ±«ÓÂ¥•ƒ€k—ŽwWűŒmcih³K›~‰µh¯e]lµ›él•E쉕E“ďs‡’mǖŧē`ãògK_ÛsUʝ“ćğ¶hŒöŒO¤Ǜn³Žc‘`¡y‹¦C‘ez€YŠwa™–‘[ďĵűMę§]X˜Î_‚훘Û]é’ÛUćİÕBƣ±…dƒy¹T^džûÅÑŦ·‡PĻþÙ`K€¦˜…¢ÍeœĥR¿Œ³£[~Œäu¼dl‰t‚†W¸oRM¢ď\\zœ}Æzdvň–{ÎXF¶°Â_„ÒÂÏL©Ö•TmuŸ¼ãl‰›īkiqéfA„·Êµ\\őDc¥ÝF“y›Ôć˜c€űH_hL܋êĺШc}rn`½„Ì@¸¶ªVLŒŠhŒ‹\\•Ţĺk~ŽĠið°|gŒtTĭĸ^x‘vK˜VGréAé‘bUu›MJ‰VÃO¡…qĂXËS‰ģãlýàŸ_ju‡YÛÒB†œG^˜é֊¶§ŽƒEG”ÅzěƒƯ¤Ek‡N[kdåucé¬dnYpAyČ{`]þ¯T’bÜÈk‚¡Ġ•vŒàh„ÂƄ¢Jî¶²"]],encodeOffsets:[[[111707,21520]],[[107619,25527]]]}},{type:"Feature",id:"460000",properties:{id:"460000",cp:[109.83119,19.031971],name:"海南",childNum:1},geometry:{type:"Polygon",coordinates:["@@š¦Ŝil¢”XƦ‘ƞò–ïè§ŞCêɕrŧůÇąĻõ™·ĉ³œ̅kÇm@ċȧƒŧĥ‰Ľʉ­ƅſ“ȓÒ˦ŝE}ºƑ[ÍĜȋ gÎfǐÏĤ¨êƺ\\Ɔ¸ĠĎvʄȀœÐ¾jNðĀÒRŒšZdž™zÐŘΰH¨Ƣb²_Ġ "],encodeOffsets:[[112750,20508]]}},{type:"Feature",id:"510000",properties:{id:"510000",cp:[104.065735,30.659462],name:"四川",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@LqKr"],["@@Š[ĻéV£ž_ţġñpG •réÏ·~ąSfy×͂·ºſƽiÍıƣıĻmHH}siaX@iǰÁÃ×t«ƒ­Tƒ¤J–JJŒyJ•ÈŠ`Ohߦ¡uËhIyCjmÿw…ZG……Ti‹SˆsO‰žB²ŸfNmsPaˆ{M{ŠõE‘^Hj}gYpaeuž¯‘oáwHjÁ½M¡pM“–uå‡mni{fk”\\oƒÎqCw†EZ¼K›ĝŠƒAy{m÷L‡wO×SimRI¯rK™õBS«sFe‡]fµ¢óY_ÆPRcue°Cbo׌bd£ŌIHgtrnyPt¦foaXďx›lBowz‹_{ÊéWiêE„GhܸºuFĈIxf®Ž•Y½ĀǙ]¤EyŸF²ċ’w¸¿@g¢§RGv»–áŸW`ÃĵJwi]t¥wO­½a[׈]`Ãi­üL€¦LabbTÀå’c}Íh™Æhˆ‹®BH€î|Ék­¤S†y£„ia©taį·Ɖ`ō¥Uh“O…ƒĝLk}©Fos‰´›Jm„µlŁu—…ø–nÑJWΪ–YÀïAetTžŅ‚ӍG™Ë«bo‰{ıwodƟ½ƒžOġܑµxàNÖ¾P²§HKv¾–]|•B‡ÆåoZ`¡Ø`ÀmºĠ~ÌЧnDž¿¤]wğ@sƒ‰rğu‰~‘Io”[é±¹ ¿žſđӉ@q‹gˆ¹zƱřaí°KtǤV»Ã[ĩǭƑ^ÇÓ@ỗs›Zϕ‹œÅĭ€Ƌ•ěpwDóÖሯneQˌq·•GCœýS]xŸ·ý‹q³•O՜Œ¶Qzßti{ř‰áÍÇWŝŭñzÇW‹pç¿JŒ™‚Xœĩè½cŒF–ÂLiVjx}\\N†ŇĖ¥Ge–“JA¼ÄHfÈu~¸Æ«dE³ÉMA|b˜Ò…˜ćhG¬CM‚õŠ„ƤąAvƒüV€éŀ‰_V̳ĐwQj´·ZeÈÁ¨X´Æ¡Qu·»Ÿ“˜ÕZ³ġqDo‰y`L¬gdp°şŠp¦ėìÅĮZްIä”h‚‘ˆzŠĵœf²å ›ĚрKp‹IN|‹„Ñz]ń……·FU×é»R³™MƒÉ»GM«€ki€™ér™}Ã`¹ăÞmȝnÁîRǀ³ĜoİzŔwǶVÚ£À]ɜ»ĆlƂ²Ġ…þTº·àUȞÏʦ¶†I’«dĽĢdĬ¿–»Ĕ׊h\\c¬†ä²GêëĤł¥ÀǿżÃÆMº}BÕĢyFVvw–ˆxBèĻĒ©Ĉ“tCĢɽŠȣ¦āæ·HĽî“ôNԓ~^¤Ɗœu„œ^s¼{TA¼ø°¢İªDè¾Ň¶ÝJ‘®Z´ğ~Sn|ªWÚ©òzPOȸ‚bð¢|‹øĞŠŒœŒQìÛÐ@Ğ™ǎRS¤Á§d…i“´ezÝúØã]Hq„kIŸþËQǦÃsǤ[E¬ÉŪÍxXƒ·ÖƁİlƞ¹ª¹|XÊwn‘ÆƄmÀêErĒtD®ċæcQƒ”E®³^ĭ¥©l}äQto˜ŖÜqƎkµ–„ªÔĻĴ¡@Ċ°B²Èw^^RsºT£ڿœQP‘JvÄz„^Đ¹Æ¯fLà´GC²‘dt˜­ĀRt¼¤ĦOðğfÔðDŨŁĞƘïžPȆ®âbMüÀXZ ¸£@Ś›»»QÉ­™]d“sÖ×_͖_ÌêŮPrĔĐÕGĂeZÜîĘqBhtO ¤tE[h|Y‹Ô‚ZśÎs´xº±UŒ’ñˆt|O’ĩĠºNbgþŠJy^dÂY Į„]Řz¦gC‚³€R`Šz’¢AjŒ¸CL„¤RÆ»@­Ŏk\\Ç´£YW}z@Z}‰Ã¶“oû¶]´^N‡Ò}èN‚ª–P˜Íy¹`S°´†ATe€VamdUĐwʄvĮÕ\\ƒu‹Æŗ¨Yp¹àZÂm™Wh{á„}WØǍ•Éüw™ga§áCNęÎ[ĀÕĪgÖɪX˜øx¬½Ů¦¦[€—„NΆL€ÜUÖ´òrÙŠxR^–†J˜k„ijnDX{Uƒ~ET{ļº¦PZc”jF²Ė@Žp˜g€ˆ¨“B{ƒu¨ŦyhoÚD®¯¢˜ WòàFΤ¨GDäz¦kŮPœġq˚¥À]€Ÿ˜eŽâÚ´ªKxī„Pˆ—Ö|æ[xäJÞĥ‚s’NÖ½ž€I†¬nĨY´®Ð—ƐŠ€mD™ŝuäđđEb…e’e_™v¡}ìęNJē}q”É埁T¯µRs¡M@}ůa†a­¯wvƉåZwž\\Z{åû^›"]],encodeOffsets:[[[108815,30935]],[[110617,31811]]]}},{type:"Feature",id:"520000",properties:{id:"520000",cp:[106.713478,26.578343],name:"贵州",childNum:3},geometry:{type:"MultiPolygon",coordinates:[["@@†G\\†lY£‘in"],["@@q‚|ˆ‚mc¯tχVSÎ"],["@@hÑ£Is‡NgßH†›HªķÃh_¹ƒ¡ĝħń¦uيùŽgS¯JHŸ|sÝÅtÁïyMDč»eÕtA¤{b\\}—ƒG®u\\åPFq‹wÅaD…žK°ºâ_£ùbµ”mÁ‹ÛœĹM[q|hlaªāI}тƒµ@swtwm^oµˆD鼊yV™ky°ÉžûÛR…³‚‡eˆ‡¥]RՋěħ[ƅåÛDpŒ”J„iV™™‰ÂF²I…»mN·£›LbÒYb—WsÀbŽ™pki™TZĄă¶HŒq`……ĥ_JŸ¯ae«ƒKpÝx]aĕÛPƒÇȟ[ÁåŵÏő—÷Pw}‡TœÙ@Õs«ĿÛq©½œm¤ÙH·yǥĘĉBµĨÕnđ]K„©„œá‹ŸG纍§Õßg‡ǗĦTèƤƺ{¶ÉHÎd¾ŚÊ·OÐjXWrãLyzÉAL¾ę¢bĶėy_qMĔąro¼hĊžw¶øV¤w”²Ĉ]ʚKx|`ź¦ÂÈdr„cȁbe¸›`I¼čTF´¼Óýȃr¹ÍJ©k_șl³´_pН`oÒh޶pa‚^ÓĔ}D»^Xyœ`d˜[Kv…JPhèhCrĂĚÂ^Êƌ wˆZL­Ġ£šÁbrzOIl’MM”ĪŐžËr×ÎeŦŽtw|Œ¢mKjSǘňĂStÎŦEtqFT†¾†E쬬ôxÌO¢Ÿ KгŀºäY†„”PVgŎ¦Ŋm޼VZwVlŒ„z¤…ž£Tl®ctĽÚó{G­A‡ŒÇgeš~Αd¿æaSba¥KKûj®_ć^\\ؾbP®¦x^sxjĶI_Ä X‚⼕Hu¨Qh¡À@Ëô}ޱžGNìĎlT¸ˆ…`V~R°tbÕĊ`¸úÛtπFDu€[ƒMfqGH·¥yA‰ztMFe|R‚_Gk†ChZeÚ°to˜v`x‹b„ŒDnÐ{E}šZ˜è€x—†NEފREn˜[Pv@{~rĆAB§‚EO¿|UZ~ì„Uf¨J²ĂÝÆ€‚sª–B`„s¶œfvö¦ŠÕ~dÔq¨¸º»uù[[§´sb¤¢zþFœ¢Æ…Àhˆ™ÂˆW\\ıŽËI݊o±ĭŠ£þˆÊs}¡R]ŒěƒD‚g´VG¢‚j±®è†ºÃmpU[Á›‘Œëº°r›ÜbNu¸}Žº¼‡`ni”ºÔXĄ¤¼Ôdaµ€Á_À…†ftQQgœR—‘·Ǔ’v”}Ýלĵ]µœ“Wc¤F²›OĩųãW½¯K‚©…]€{†LóµCIµ±Mß¿hŸ•©āq¬o‚½ž~@i~TUxŪÒ¢@ƒ£ÀEîôruń‚”“‚b[§nWuMÆLl¿]x}ij­€½"]],encodeOffsets:[[[112158,27383]],[[112105,27474]],[[112095,27476]]]}},{type:"Feature",id:"530000",properties:{id:"530000",cp:[101.512251,24.740609],name:"云南",childNum:1},geometry:{type:"Polygon",coordinates:["@@[„ùx½}ÑRH‘YīĺûsÍn‘iEoã½Ya²ė{c¬ĝg•ĂsA•ØÅwď‚õzFjw}—«Dx¿}UũlŸê™@•HÅ­F‰¨ÇoJ´Ónũuą¡Ã¢pÒŌ“Ø TF²‚xa²ËX€‚cʋlHîAßËŁkŻƑŷÉ©h™W­æßU‡“Ës¡¦}•teèÆ¶StǀÇ}Fd£j‹ĈZĆÆ‹¤T‚č\\Dƒ}O÷š£Uˆ§~ŃG™‚åŃDĝ¸œTsd¶¶Bªš¤u¢ŌĎo~t¾ÍŶÒtD¦Ú„iôö‰€z›ØX²ghįh½Û±¯€ÿm·zR¦Ɵ`ªŊÃh¢rOԍ´£Ym¼èêf¯ŪĽn„†cÚbŒw\\zlvWžªâˆ ¦g–mĿBş£¢ƹřbĥkǫßeeZkÙIKueT»sVesb‘aĕ  ¶®dNœĄÄpªyސ¼—„³BE˜®l‡ŽGœŭCœǶwêżĔÂe„pÍÀQƞpC„–¼ŲÈ­AÎô¶R„ä’Q^Øu¬°š_Èôc´¹ò¨P΢hlϦ´Ħ“Æ´sâDŽŲPnÊD^¯°’Upv†}®BP̪–jǬx–Söwlfòªv€qĸ|`H€­viļ€ndĜ­Ćhň•‚em·FyށqóžSᝑ³X_ĞçêtryvL¤§z„¦c¦¥jnŞk˜ˆlD¤øz½ĜàžĂŧMÅ|áƆàÊcðÂF܎‚áŢ¥\\\\º™İøÒÐJĴ‡„îD¦zK²ǏÎEh~’CD­hMn^ÌöÄ©ČZÀžaü„fɭyœpį´ěFűk]Ôě¢qlÅĆÙa¶~Äqššê€ljN¬¼H„ÊšNQ´ê¼VظE††^ŃÒyŒƒM{ŒJLoÒœęæŸe±Ķ›y‰’‡gã“¯JYÆĭĘëo¥Š‰o¯hcK«z_pŠrC´ĢÖY”—¼ v¸¢RŽÅW³Â§fǸYi³xR´ďUˊ`êĿU„û€uĆBƒƣö‰N€DH«Ĉg†——Ñ‚aB{ÊNF´¬c·Åv}eÇÃGB»”If•¦HňĕM…~[iwjUÁKE•Ž‹¾dĪçW›šI‹èÀŒoÈXòyŞŮÈXâÎŚŠj|àsRy‹µÖ›–Pr´þŒ ¸^wþTDŔ–Hr¸‹žRÌmf‡żÕâCôox–ĜƌÆĮŒ›Ð–œY˜tâŦÔ@]ÈǮƒ\\μģUsȯLbîƲŚºyh‡rŒŠ@ĒԝƀŸÀ²º\\êp“’JŠ}ĠvŠqt„Ġ@^xÀ£È†¨mËÏğ}n¹_¿¢×Y_æpˆÅ–A^{½•Lu¨GO±Õ½ßM¶w’ÁĢۂP‚›Ƣ¼pcIJxŠ|ap̬HšÐŒŊSfsðBZ¿©“XÏÒK•k†÷Eû¿‰S…rEFsÕūk”óVǥʼniTL‚¡n{‹uxţÏh™ôŝ¬ğōN“‘NJkyPaq™Âğ¤K®‡YŸxÉƋÁ]āęDqçgOg†ILu—\\_gz—]W¼ž~CÔē]bµogpў_oď`´³Țkl`IªºÎȄqÔþž»E³ĎSJ»œ_f·‚adÇqƒÇc¥Á_Źw{™L^ɱćx“U£µ÷xgĉp»ĆqNē`rĘzaĵĚ¡K½ÊBzyäKXqiWPÏɸ½řÍcÊG|µƕƣG˛÷Ÿk°_^ý|_zċBZocmø¯hhcæ\\lˆMFlư£Ĝ„ÆyH“„F¨‰µêÕ]—›HA…àӄ^it `þßäkŠĤÎT~Wlÿ¨„ÔPzUC–NVv [jâôDôď[}ž‰z¿–msSh‹¯{jïğl}šĹ[–őŒ‰gK‹©U·µË@¾ƒm_~q¡f¹…ÅË^»‘f³ø}Q•„¡Ö˳gͱ^ǁ…\\ëÃA_—¿bW›Ï[¶ƛ鏝£F{īZgm@|kHǭƁć¦UĔťƒ×ë}ǝƒeďºȡȘÏíBə£āĘPªij¶“ʼnÿ‡y©n‰ď£G¹¡I›Š±LÉĺÑdĉ܇W¥˜‰}g˜Á†{aqÃ¥aŠıęÏZ—ï`"],encodeOffsets:[[104636,22969]]}},{type:"Feature",id:"540000",properties:{id:"540000",cp:[89.132212,30.860361],name:"西藏",childNum:1},geometry:{type:"Polygon",coordinates:["@@hžľxŽŖ‰xƒÒVކºÅâAĪÝȆµę¯Ňa±r_w~uSÕň‘qOj]ɄQ…£Z……UDûoY’»©M[‹L¼qãË{V͕çWViŽ]ë©Ä÷àyƛh›ÚU°ŒŒa”d„cQƒ~Mx¥™cc¡ÙaSyF—ցk­ŒuRýq¿Ôµ•QĽ³aG{¿FµëªéĜÿª@¬·–K‰·àariĕĀ«V»Ŷ™Ĵū˜gèLǴŇƶaf‹tŒèBŚ£^Šâ†ǐÝ®–šM¦ÁǞÿ¬LhŸŽJ¾óƾƺcxw‹f]Y…´ƒ¦|œQLn°aœdĊ…œ\\¨o’œǀÍŎœ´ĩĀd`tÊQŞŕ|‚¨C^©œĈ¦„¦ÎJĊ{ŽëĎjª²rЉšl`¼Ą[t|¦St辉PŒÜK¸€d˜Ƅı]s¤—î_v¹ÎVòŦj˜£Əsc—¬_Ğ´|٘¦Avަw`ăaÝaa­¢e¤ı²©ªSªšÈMĄwžÉØŔì@T‘¤—Ę™\\õª@”þo´­xA s”ÂtŎKzó´ÇĊµ¢rž^nĊ­Æ¬×üGž¢‚³ {âĊ]š™G‚~bÀgVjzlhǶf€žOšfdЉªB]pj„•TO–tĊ‚n¤}®¦ƒČ¥d¢¼»ddš”Y¼Žt—¢eȤJ¤}Ǿ¡°§¤AГlc@ĝ”sªćļđAç‡wx•UuzEÖġ~AN¹ÄÅȀݦ¿ģŁéì±H…ãd«g[؉¼ēÀ•cīľġ¬cJ‘µ…ÐʥVȝ¸ßS¹†ý±ğkƁ¼ą^ɛ¤Ûÿ‰b[}¬ōõÃ]ËNm®g@•Bg}ÍF±ǐyL¥íCˆƒIij€Ï÷њį[¹¦[⚍EÛïÁÉdƅß{âNÆāŨߝ¾ě÷yC£‡k­´ÓH@¹†TZ¥¢įƒ·ÌAЧ®—Zc…v½ŸZ­¹|ŕWZqgW“|ieZÅYVӁqdq•bc²R@†c‡¥Rã»Ge†ŸeƃīQ•}J[ғK…¬Ə|o’ėjġĠÑN¡ð¯EBčnwôɍėªƒ²•CλŹġǝʅįĭạ̃ūȹ]ΓͧgšsgȽóϧµǛ†ęgſ¶ҍć`ĘąŌJޚä¤rÅň¥ÖÁUětęuůÞiĊÄÀ\\Æs¦ÓRb|Â^řÌkÄŷ¶½÷‡f±iMݑ›‰@ĥ°G¬ÃM¥n£Øą‚ğ¯ß”§aëbéüÑOčœk£{\\‘eµª×M‘šÉfm«Ƒ{Å׃Gŏǩãy³©WÑăû‚··‘Q—òı}¯ã‰I•éÕÂZ¨īès¶ZÈsŽæĔTŘvŽgÌsN@îá¾ó@‰˜ÙwU±ÉT廣TđŸWxq¹Zo‘b‹s[׌¯cĩv‡Œėŧ³BM|¹k‰ªħ—¥TzNYnݍßpęrñĠĉRS~½ŠěVVе‚õ‡«ŒM££µB•ĉ¥áºae~³AuĐh`Ü³ç@BۘïĿa©|z²Ý¼D”£à貋ŸƒIƒû›I ā€óK¥}rÝ_Á´éMaň¨€~ªSĈ½Ž½KÙóĿeƃÆBŽ·¬ën×W|Uº}LJrƳ˜lŒµ`bÔ`QˆˆÐÓ@s¬ñIŒÍ@ûws¡åQÑßÁ`ŋĴ{Ī“T•ÚÅTSij‚‹Yo|Ç[ǾµMW¢ĭiÕØ¿@˜šMh…pÕ]j†éò¿OƇĆƇp€êĉâlØw–ěsˆǩ‚ĵ¸c…bU¹ř¨WavquSMzeo_^gsÏ·¥Ó@~¯¿RiīB™Š\\”qTGªÇĜçPoŠÿfñòą¦óQīÈáP•œābß{ƒZŗĸIæÅ„hnszÁCËìñšÏ·ąĚÝUm®ó­L·ăU›Èíoù´Êj°ŁŤ_uµ^‘°Œìǖ@tĶĒ¡Æ‡M³Ģ«˜İĨÅ®ğ†RŽāð“ggheÆ¢z‚Ê©Ô\\°ÝĎz~ź¤Pn–MĪÖB£Ÿk™n鄧żćŠ˜ĆK„ǰ¼L¶è‰âz¨u¦¥LDĘz¬ýÎmĘd¾ß”Fz“hg²™Fy¦ĝ¤ċņbΛ@y‚Ąæm°NĮZRÖíŽJ²öLĸÒ¨Y®ƌÐV‰à˜tt_ڀÂyĠzž]Ţh€zĎ{†ĢX”ˆc|šÐqŽšfO¢¤ög‚ÌHNŽ„PKŖœŽ˜Uú´xx[xˆvĐCûŠìÖT¬¸^}Ìsòd´_އKgžLĴ…ÀBon|H@–Êx˜—¦BpŰˆŌ¿fµƌA¾zLjRxжF”œkĄźRzŀˆ~¶[”´Hnª–VƞuĒ­È¨ƎcƽÌm¸ÁÈM¦x͊ëÀxdžB’šú^´W†£–d„kɾĬpœw‚˂ØɦļĬIŚœÊ•n›Ŕa¸™~J°î”lɌxĤÊÈðhÌ®‚g˜T´øŽàCˆŽÀ^ªerrƘdž¢İP|Ė ŸWœªĦ^¶´ÂL„aT±üWƜ˜ǀRšŶUńšĖ[QhlLüA†‹Ü\\†qR›Ą©"],encodeOffsets:[[90849,37210]]}},{type:"Feature",id:"610000",properties:{id:"610000",cp:[108.948024,34.263161],name:"陕西",childNum:1},geometry:{type:"Polygon",coordinates:["@@˜p¢—ȮµšûG™Ħ}Ħšðǚ¶òƄ€jɂz°{ºØkÈęâ¦jª‚Bg‚\\œċ°s¬Ž’]jžú ‚E”Ȍdž¬s„t‡”RˆÆdĠݎwܔ¸ôW¾ƮłÒ_{’Ìšû¼„jº¹¢GǪÒ¯ĘƒZ`ºŊƒecņąš~BÂgzpâēòYǠȰÌTΨÂWœ|fcŸă§uF—Œ@NŸ¢XLƒŠRMº[ğȣſï|¥J™kc`sʼnǷ’Y¹‹W@µ÷K…ãï³ÛIcñ·VȋڍÒķø©—þ¥ƒy‚ÓŸğęmWµÎumZyOŅƟĥÓ~sÑL¤µaŅY¦ocyZ{‰y c]{ŒTa©ƒ`U_Ěē£ωÊƍKù’K¶ȱÝƷ§{û»ÅÁȹÍéuij|¹cÑd‘ŠìUYƒŽO‘uF–ÕÈYvÁCqӃT•Ǣí§·S¹NgŠV¬ë÷Át‡°Dد’C´ʼnƒópģ}„ċcE˅FŸŸéGU¥×K…§­¶³B‹Č}C¿åċ`wġB·¤őcƭ²ő[Å^axwQO…ÿEËߌ•ĤNĔŸwƇˆÄŠńwĪ­Šo[„_KÓª³“ÙnK‰Çƒěœÿ]ď€ă_d©·©Ýŏ°Ù®g]±„Ÿ‡ß˜å›—¬÷m\\›iaǑkěX{¢|ZKlçhLt€Ňîŵ€œè[€É@ƉĄEœ‡tƇÏ˜³­ħZ«mJ…›×¾‘MtÝĦ£IwÄå\\Õ{‡˜ƒOwĬ©LÙ³ÙgBƕŀr̛ĢŭO¥lãyC§HÍ£ßEñŸX¡—­°ÙCgpťz‘ˆb`wI„vA|§”‡—hoĕ@E±“iYd¥OϹS|}F@¾oAO²{tfžÜ—¢Fǂ҈W²°BĤh^Wx{@„¬‚­F¸¡„ķn£P|ŸªĴ@^ĠĈæb–Ôc¶l˜Yi…–^Mi˜cϰÂ[ä€vï¶gv@À“Ĭ·lJ¸sn|¼u~a]’ÆÈtŌºJp’ƒþ£KKf~ЦUbyäIšĺãn‡Ô¿^­žŵMT–hĠܤko¼Ŏìąǜh`[tŒRd²IJ_œXPrɲ‰l‘‚XžiL§àƒ–¹ŽH˜°Ȧqº®QC—bA†„ŌJ¸ĕÚ³ĺ§ `d¨YjžiZvRĺ±öVKkjGȊĐePОZmļKÀ€‚[ŠŽ`ösìh†ïÎoĬdtKÞ{¬èÒÒBŒÔpIJÇĬJŊ¦±J«ˆY§‹@·pH€µàåVKe›pW†ftsAÅqC·¬ko«pHÆuK@oŸHĆۄķhx“e‘n›S³àǍrqƶRbzy€¸ËАl›¼EºpĤ¼Œx¼½~Ğ’”à@†ÚüdK^ˆmÌSj"],encodeOffsets:[[110234,38774]]}},{type:"Feature",id:"620000",properties:{id:"620000",cp:[103.823557,36.058039],name:"甘肃",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@VuUv"],["@@ũ‹EĠtt~nkh`Q‰¦ÅÄÜdw˜Ab×ĠąJˆ¤DüègĺqBqœj°lI¡ĨÒ¤úSHbš‡ŠjΑBаaZˆ¢KJŽ’O[|A£žDx}Nì•HUnrk„ kp€¼Y kMJn[aG‚áÚÏ[½rc†}aQxOgsPMnUs‡nc‹Z…ž–sKúvA›t„Þġ’£®ĀYKdnFwš¢JE°”Latf`¼h¬we|€Æ‡šbj}GA€·~WŽ”—`†¢MC¤tL©IJ°qdf”O‚“bÞĬ¹ttu`^ZúE`Œ[@„Æsîz®¡’C„ƳƜG²“R‘¢R’m”fŽwĸg܃‚ą G@pzJM½mŠhVy¸uÈÔO±¨{LfæU¶ßGĂq\\ª¬‡²I‚¥IʼnÈīoı‹ÓÑAçÑ|«LÝcspīðÍg…të_õ‰\\ĉñLYnĝg’ŸRǡÁiHLlõUĹ²uQjYi§Z_c¨Ÿ´ĹĖÙ·ŋI…ƒaBD˜­R¹ȥr—¯G•ºß„K¨jWk’ɱŠOq›Wij\\a­‹Q\\sg_ĆǛōëp»£lğۀgS•ŶN®À]ˆÓäm™ĹãJaz¥V}‰Le¤L„ýo‘¹IsŋÅÇ^‘Žbz…³tmEÁ´aйcčecÇN•ĊãÁ\\蝗dNj•]j†—ZµkÓda•ćå]ğij@ ©O{¤ĸm¢ƒE·®ƒ«|@Xwg]A챝‡XǁÑdzªc›wQÚŝñsÕ³ÛV_ýƒ˜¥\\ů¥©¾÷w—Ž©WÕÊĩhÿÖÁRo¸V¬âDb¨šhûx–Ê×nj~Zâƒg|šXÁnßYoº§ZÅŘvŒ[„ĭÖʃuďxcVbnUSf…B¯³_Tzº—ΕO©çMÑ~Mˆ³]µ^püµ”ŠÄY~y@X~¤Z³€[Èōl@®Å¼£QKƒ·Di‹¡By‘ÿ‰Q_´D¥hŗyƒ^ŸĭÁZ]cIzý‰ah¹MĪğP‘s{ò‡‹‘²Vw¹t³Ŝˁ[ŽÑ}X\\gsFŸ£sPAgěp×ëfYHāďÖqēŭOÏë“dLü•\\iŒ”t^c®šRʺ¶—¢H°mˆ‘rYŸ£BŸ¹čIoľu¶uI]vģSQ{ƒUŻ”Å}QÂ|̋°ƅ¤ĩŪU ęĄžÌZҞ\\v˜²PĔ»ƢNHƒĂyAmƂwVmž`”]ȏb•”H`‰Ì¢²ILvĜ—H®¤Dlt_„¢JJÄämèÔDëþgºƫ™”aʎÌrêYi~ ÎݤNpÀA¾Ĕ¼b…ð÷’Žˆ‡®‚”üs”zMzÖĖQdȨý†v§Tè|ªH’þa¸|šÐ ƒwKĢx¦ivr^ÿ ¸l öæfƟĴ·PJv}n\\h¹¶v†·À|\\ƁĚN´Ĝ€çèÁz]ġ¤²¨QÒŨTIl‡ªťØ}¼˗ƦvÄùØE‹’«Fï˛Iq”ōŒTvāÜŏ‚íÛߜÛV—j³âwGăÂíNOŠˆŠPìyV³ʼnĖýZso§HіiYw[߆\\X¦¥c]ÔƩÜ·«j‡ÐqvÁ¦m^ċ±R™¦΋ƈťĚgÀ»IïĨʗƮްƝ˜ĻþÍAƉſ±tÍEÕÞāNU͗¡\\ſčåÒʻĘm ƭÌŹöʥ’ëQ¤µ­ÇcƕªoIýˆ‰Iɐ_mkl³ă‰Ɠ¦j—¡Yz•Ňi–}Msßõ–īʋ —}ƒÁVmŸ_[n}eı­Uĥ¼‘ª•I{ΧDӜƻėoj‘qYhĹT©oūĶ£]ďxĩ‹ǑMĝ‰q`B´ƃ˺Ч—ç~™²ņj@”¥@đ´ί}ĥtPńǾV¬ufӃÉC‹tÓ̻‰…¹£G³€]ƖƾŎĪŪĘ̖¨ʈĢƂlɘ۪üºňUðǜȢƢż̌ȦǼ‚ĤŊɲĖ­Kq´ï¦—ºĒDzņɾªǀÞĈĂD†½ĄĎÌŗĞrôñnŽœN¼â¾ʄľԆ|DŽŽ֦ज़ȗlj̘̭ɺƅêgV̍ʆĠ·ÌĊv|ýĖÕWĊǎÞ´õ¼cÒÒBĢ͢UĜð͒s¨ňƃLĉÕÝ@ɛƯ÷¿Ľ­ĹeȏijëCȚDŲyê×Ŗyò¯ļcÂßY…tÁƤyAã˾J@ǝrý‹‰@¤…rz¸oP¹ɐÚyᐇHŸĀ[Jw…cVeȴϜ»ÈŽĖ}ƒŰŐèȭǢόĀƪÈŶë;Ñ̆ȤМľĮEŔ—ĹŊũ~ËUă{ŸĻƹɁύȩþĽvĽƓÉ@ē„ĽɲßǐƫʾǗĒpäWÐxnsÀ^ƆwW©¦cÅ¡Ji§vúF¶Ž¨c~c¼īŒeXǚ‹\\đ¾JŽwÀďksãA‹fÕ¦L}wa‚o”Z’‹D½†Ml«]eÒÅaɲáo½FõÛ]ĻÒ¡wYR£¢rvÓ®y®LF‹LzĈ„ôe]gx}•|KK}xklL]c¦£fRtív¦†PĤoH{tK"]],encodeOffsets:[[[108619,36299]],[[108589,36341]]]}},{type:"Feature",id:"630000",properties:{id:"630000",cp:[96.778916,35.623178],name:"青海",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@InJm"],["@@CƒÆ½OŃĦsΰ~dz¦@@“Ņiš±è}ؘƄ˹A³r_ĞŠǒNΌĐw¤^ŬĵªpĺSZg’rpiƼĘԛ¨C|͖J’©Ħ»®VIJ~f\\m `Un„˜~ʌŸ•ĬàöNt•~ňjy–¢Zi˜Ɣ¥ĄŠk´nl`JʇŠJþ©pdƖ®È£¶ìRʦ‘źõƮËnŸʼėæÑƀĎ[‚˜¢VÎĂMÖÝÎF²sƊƀÎBļýƞ—¯ʘƭðħ¼Jh¿ŦęΌƇš¥²Q]Č¥nuÂÏriˆ¸¬ƪÛ^Ó¦d€¥[Wà…x\\ZŽjҕ¨GtpþYŊĕ´€zUO뇉P‰îMĄÁxH´á˜iÜUà›îÜՁĂÛSuŎ‹r“œJð̬EŒ‘FÁú×uÃÎkr“Ē{V}İ«O_ÌËĬ©ŽÓŧSRѱ§Ģ£^ÂyèçěM³Ƃę{[¸¿u…ºµ[gt£¸OƤĿéYŸõ·kŸq]juw¥Dĩƍ€õÇPéĽG‘ž©ã‡¤G…uȧþRcÕĕNy“yût“ˆ­‡ø‘†ï»a½ē¿BMoᣟÍj}éZËqbʍš“Ƭh¹ìÿÓAçãnIáI`ƒks£CG­ě˜Uy×Cy•…’Ÿ@¶ʡÊBnāzG„ơMē¼±O÷õJËĚăVŸĪũƆ£Œ¯{ËL½Ìzż“„VR|ĠTbuvJvµhĻĖH”Aëáa…­OÇðñęNw‡…œľ·L›mI±íĠĩPÉ×®ÿs—’cB³±JKßĊ«`…ađ»·QAmO’‘Vţéÿ¤¹SQt]]Çx€±¯A@ĉij¢Ó祖•ƒl¶ÅÛr—ŕspãRk~¦ª]Į­´“FR„åd­ČsCqđéFn¿Åƃm’Éx{W©ºƝºįkÕƂƑ¸wWūЩÈFž£\\tÈ¥ÄRÈýÌJ ƒlGr^×äùyÞ³fj”c†€¨£ÂZ|ǓMĝšÏ@ëÜőR‹›ĝ‰Œ÷¡{aïȷPu°ËXÙ{©TmĠ}Y³’­ÞIňµç½©C¡į÷¯B»|St»›]vƒųƒs»”}MÓ ÿʪƟǭA¡fs˜»PY¼c¡»¦c„ċ­¥£~msĉP•–Siƒ^o©A‰Šec‚™PeǵŽkg‚yUi¿h}aH™šĉ^|ᴟ¡HØûÅ«ĉ®]m€¡qĉ¶³ÈyôōLÁst“BŸ®wn±ă¥HSò뚣˜S’ë@לÊăxÇN©™©T±ª£IJ¡fb®ÞbŽb_Ą¥xu¥B—ž{łĝ³«`d˜Ɛt—¤ťiñžÍUuºí`£˜^tƃIJc—·ÛLO‹½Šsç¥Ts{ă\\_»™kϊ±q©čiìĉ|ÍIƒ¥ć¥›€]ª§D{ŝŖÉR_sÿc³Īō›ƿΑ›§p›[ĉ†›c¯bKm›R¥{³„Z†e^ŽŒwx¹dƽŽôIg §Mĕ ƹĴ¿—ǣÜ̓]‹Ý–]snåA{‹eŒƭ`ǻŊĿ\\ijŬű”YÂÿ¬jĖqŽßbЏ•L«¸©@ěĀ©ê¶ìÀEH|´bRľž–Ó¶rÀQþ‹vl®Õ‚E˜TzÜdb ˜hw¤{LR„ƒd“c‹b¯‹ÙVgœ‚ƜßzÃô쮍^jUèXΖ|UäÌ»rKŽ\\ŒªN‘¼pZCü†VY††¤ɃRi^rPҒTÖ}|br°qňb̰ªiƶGQ¾²„x¦PœmlŜ‘[Ĥ¡ΞsĦŸÔÏâ\\ªÚŒU\\f…¢N²§x|¤§„xĔsZPòʛ²SÐqF`ª„VƒÞŜĶƨVZŒÌL`ˆ¢dŐIqr\\oäõ–F礻Ŷ×h¹]Clـ\\¦ďÌį¬řtTӺƙgQÇÓHţĒ”´ÃbEÄlbʔC”|CˆŮˆk„Ʈ[ʼ¬ňœ´KŮÈΰÌζƶlð”ļA†TUvdTŠG†º̼ŠÔ€ŒsÊDԄveOg"]],encodeOffsets:[[[105308,37219]],[[95370,40081]]]}},{type:"Feature",id:"640000",properties:{id:"640000",cp:[106.278179,37.26637],name:"宁夏",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@KëÀęĞ«OęȿȕŸı]ʼn¡åįÕÔ«Ǵõƪ™ĚQÐZhv K°›öqÀѐS[ÃÖHƖčË‡nL]ûc…Ùß@‚“ĝ‘¾}w»»‹oģF¹œ»kÌÏ·{zPƒ§B­¢íyÅt@ƒ@áš]Yv_ssģ¼i߁”ĻL¾ġsKD£¡N_…“˜X¸}B~Haiˆ™Åf{«x»ge_bs“KF¯¡Ix™mELcÿZ¤­Ģ‘ƒÝœsuBLù•t†ŒYdˆmVtNmtOPhRw~bd…¾qÐ\\âÙH\\bImlNZŸ»loƒŸqlVm–Gā§~QCw¤™{A\\‘PKŸNY‡¯bF‡kC¥’sk‹Šs_Ã\\ă«¢ħkJi¯r›rAhĹûç£CU‡ĕĊ_ԗBixÅُĄnªÑaM~ħpOu¥sîeQ¥¤^dkKwlL~{L~–hw^‚ófćƒKyEŒ­K­zuÔ¡qQ¤xZÑ¢^ļöܾEpž±âbÊÑÆ^fk¬…NC¾‘Œ“YpxbK~¥Že֎ŒäBlt¿Đx½I[ĒǙŒWž‹f»Ĭ}d§dµùEuj¨‚IÆ¢¥dXªƅx¿]mtÏwßR͌X¢͎vÆzƂZò®ǢÌʆCrâºMÞzžÆMҔÊÓŊZľ–r°Î®Ȉmª²ĈUªĚøºˆĮ¦ÌĘk„^FłĬhĚiĀ˾iİbjÕ"],["@@mfwěwMrŢªv@G‰"]],encodeOffsets:[[[109366,40242]],[[108600,36303]]]}},{type:"Feature",id:"650000",properties:{id:"650000",cp:[85.617733,40.792818],name:"新疆",childNum:1},geometry:{type:"Polygon",coordinates:["@@QØĔ²X¨”~ǘBºjʐߨvK”ƔX¨vĊOžÃƒ·¢i@~c—‡ĝe_«”Eš“}QxgɪëÏÃ@sÅyXoŖ{ô«ŸuX…ê•Îf`œC‚¹ÂÿÐGĮÕĞXŪōŸMźÈƺQèĽôe|¿ƸJR¤ĘEjcUóº¯Ĩ_ŘÁMª÷Ð¥Oéȇ¿ÖğǤǷÂF҇zÉx[]­Ĥĝ‰œ¦EP}ûƥé¿İƷTėƫœŕƅ™ƱB»Đ±’ēO…¦E–•}‘`cȺrĦáŖuҞª«IJ‡πdƺÏØZƴwʄ¤ĖGЙǂZ̓èH¶}ÚZצʥĪï|ÇĦMŔ»İĝLj‹ì¥Βœba­¯¥ǕǚkĆŵĦɑĺƯxūД̵nơʃĽá½M»›òmqóŘĝč˾ăC…ćāƿÝɽ©DZŅ¹đ¥˜³ðLrÁ®ɱĕģʼnǻ̋ȥơŻǛȡVï¹Ň۩ûkɗġƁ§ʇė̕ĩũƽō^ƕŠUv£ƁQï“Ƶkŏ½ΉÃŭdzLқʻ«ƭ\\lƒ‡ŭD‡“{ʓDkaFÃÄa“³ŤđÔGRÈƚhSӹŚsİ«ĐË[¥ÚDkº^Øg¼ŵ¸£EÍö•€ůʼnT¡c_‡ËKY‹ƧUśĵ„݃U_©rETÏʜ±OñtYw獃{£¨uM³x½şL©Ùá[ÓÐĥ Νtģ¢\\‚ś’nkO›w¥±ƒT»ƷFɯàĩÞáB¹Æ…ÑUw„੍žĽw[“mG½Èå~‡Æ÷QyŠěCFmĭZī—ŵVÁ™ƿQƛ—ûXS²‰b½KϽĉS›©ŷXĕŸ{ŽĕK·¥Ɨcqq©f¿]‡ßDõU³h—­gËÇïģÉɋw“k¯í}I·šœbmœÉ–ř›īJɥĻˁ×xo›ɹī‡l•c…¤³Xù]‘™DžA¿w͉ì¥wÇN·ÂËnƾƍdǧđ®Ɲv•Um©³G\\“}µĿ‡QyŹl㓛µEw‰LJQ½yƋBe¶ŋÀů‡ož¥A—˜Éw@•{Gpm¿Aij†ŽKLhˆ³`ñcËtW‚±»ÕS‰ëüÿďD‡u\\wwwù³—V›LŕƒOMËGh£õP¡™er™Ïd{“‡ġWÁ…č|yšg^ğyÁzÙs`—s|ÉåªÇ}m¢Ń¨`x¥’ù^•}ƒÌ¥H«‰Yªƅ”Aйn~Ꝛf¤áÀz„gŠÇDIԝ´AňĀ҄¶ûEYospõD[{ù°]u›Jq•U•|Soċxţ[õÔĥkŋÞŭZ˺óYËüċrw €ÞkrťË¿XGÉbřaDü·Ē÷Aê[Ää€I®BÕИÞ_¢āĠpŠÛÄȉĖġDKwbm‡ÄNô‡ŠfœƫVÉvi†dz—H‘‹QµâFšù­Âœ³¦{YGžƒd¢ĚÜO „€{Ö¦ÞÍÀPŒ^b–ƾŠlŽ[„vt×ĈÍE˨¡Đ~´î¸ùÎh€uè`¸ŸHÕŔVºwĠââWò‡@{œÙNÝ´ə²ȕn{¿¥{l—÷eé^e’ďˆXj©î\\ªÑò˜Üìc\\üqˆÕ[Č¡xoÂċªbØ­Œø|€¶ȴZdÆÂšońéŒGš\\”¼C°ÌƁn´nxšÊOĨ’ہƴĸ¢¸òTxÊǪMīИÖŲÃɎOvˆʦƢ~FއRěò—¿ġ~åŊœú‰Nšžš¸qŽ’Ę[Ĕ¶ÂćnÒPĒÜvúĀÊbÖ{Äî¸~Ŕünp¤ÂH¾œĄYÒ©ÊfºmԈĘcDoĬMŬ’˜S¤„s²‚”ʘچžȂVŦ –ŽèW°ªB|IJXŔþÈJĦÆæFĚêŠYĂªĂ]øªŖNÞüA€’fɨJ€˜¯ÎrDDšĤ€`€mz\\„§~D¬{vJÂ˜«lµĂb–¤p€ŌŰNĄ¨ĊXW|ų ¿¾ɄĦƐMT”‡òP˜÷fØĶK¢ȝ˔Sô¹òEð­”`Ɩ½ǒÂň×äı–§ĤƝ§C~¡‚hlå‚ǺŦŞkâ’~}ŽFøàIJaĞ‚fƠ¥Ž„Ŕdž˜®U¸ˆźXœv¢aƆúŪtŠųƠjd•ƺŠƺÅìnrh\\ĺ¯äɝĦ]èpĄ¦´LƞĬŠ´ƤǬ˼Ēɸ¤rºǼ²¨zÌPðŀbþ¹ļD¢¹œ\\ĜÑŚŸ¶ZƄ³àjĨoâŠȴLʉȮŒĐ­ĚăŽÀêZǚŐ¤qȂ\\L¢ŌİfÆs|zºeªÙæ§΢{Ā´ƐÚ¬¨Ĵà²łhʺKÞºÖTŠiƢ¾ªì°`öøu®Ê¾ãØ"],encodeOffsets:[[88824,50096]]}},{type:"Feature",id:"110000",properties:{id:"110000",cp:[116.405285,39.904989],name:"北京",childNum:1},geometry:{type:"Polygon",coordinates:["@@ĽOÁ›ûtŷmiÍt_H»Ĩ±d`й­{bw…Yr“³S]§§o¹€qGtm_Sŧ€“oa›‹FLg‘QN_•dV€@Zom_ć\\ߚc±x¯oœRcfe…£’o§ËgToÛJíĔóu…|wP¤™XnO¢ÉˆŦ¯rNÄā¤zâŖÈRpŢZŠœÚ{GŠrFt¦Òx§ø¹RóäV¤XdˆżâºWbwڍUd®bêņ¾‘jnŎGŃŶŠnzÚSeîĜZczî¾i]͜™QaúÍÔiþĩȨWĢ‹ü|Ėu[qb[swP@ÅğP¿{\\‡¥A¨Ï‘Ѩj¯ŠX\\¯œMK‘pA³[H…īu}}"],encodeOffsets:[[120023,41045]]}},{type:"Feature",id:"120000",properties:{id:"120000",cp:[117.190182,39.125596],name:"天津",childNum:1},geometry:{type:"Polygon",coordinates:["@@ŬgX§Ü«E…¶Ḟ“¬O_™ïlÁg“z±AXe™µÄĵ{¶]gitgšIj·›¥îakS€‰¨ÐƎk}ĕ{gB—qGf{¿a†U^fI“ư‹³õ{YƒıëNĿžk©ïËZŏ‘R§òoY×Ógc…ĥs¡bġ«@dekąI[nlPqCnp{ˆō³°`{PNdƗqSÄĻNNâyj]äžÒD ĬH°Æ]~¡HO¾ŒX}ÐxŒgp“gWˆrDGˆŒpù‚Š^L‚ˆrzWxˆZ^¨´T\\|~@I‰zƒ–bĤ‹œjeĊªz£®Ĕvě€L†mV¾Ô_ȔNW~zbĬvG†²ZmDM~”~"],encodeOffsets:[[120237,41215]]}},{type:"Feature",id:"310000",properties:{id:"310000",cp:[121.472644,31.231706],name:"上海",childNum:6},geometry:{type:"MultiPolygon",coordinates:[["@@ɧư¬EpƸÁxc‡"],["@@©„ªƒ"],["@@”MA‹‘š"],["@@Qp݁E§ÉC¾"],["@@bŝՕÕEȣÚƥêImɇǦèÜĠŒÚžÃƌÃ͎ó"],["@@ǜûȬɋŠŭ™×^‰sYŒɍDŋ‘ŽąñCG²«ªč@h–_p¯A{‡oloY€¬j@IJ`•gQڛhr|ǀ^MIJvtbe´R¯Ô¬¨YŽô¤r]ì†Ƭį"]],encodeOffsets:[[[124702,32062]],[[124547,32200]],[[124808,31991]],[[124726,32110]],[[124903,32376]],[[124438,32149]]]}},{type:"Feature",id:"500000",properties:{id:"500000",cp:[107.304962,29.533155],name:"重庆",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@vjG~nGŘŬĶȂƀƾ¹¸ØÎezĆT¸}êЖqHŸðqĖ䒊¥^CƒIj–²p…\\_ æüY|[YxƊæuž°xb®…Űb@~¢NQt°¶‚S栓Ê~rljĔëĚ¢~šuf`‘‚†fa‚ĔJåĊ„nÖ]„jƎćÊ@Š£¾a®£Ű{ŶĕF‹ègLk{Y|¡ĜWƔtƬJÑxq‹±ĢN´‰òK‰™–LÈüD|s`ŋ’ć]ƒÃ‰`đŒMûƱ½~Y°ħ`ƏíW‰½eI‹½{aŸ‘OIrÏ¡ĕŇa†p†µÜƅġ‘œ^ÖÛbÙŽŏml½S‹êqDu[R‹ãË»†ÿw`»y‘¸_ĺę}÷`M¯ċfCVµqʼn÷Z•gg“Œ`d½pDO‡ÎCnœ^uf²ènh¼WtƏxRGg¦…pV„†FI±ŽG^ŒIc´ec‡’G•ĹÞ½sëĬ„h˜xW‚}Kӈe­Xsbk”F¦›L‘ØgTkïƵNï¶}Gy“w\\oñ¡nmĈzjŸ•@™Óc£»Wă¹Ój“_m»ˆ¹·~MvÛaqœ»­‰êœ’\\ÂoVnŽÓØÍ™²«‹bq¿efE „€‹Ĝ^Qž~ Évý‡ş¤²Į‰pEİ}zcĺƒL‹½‡š¿gņ›¡ýE¡ya£³t\\¨\\vú»¼§·Ñr_oÒý¥u‚•_n»_ƒ•At©Þűā§IVeëƒY}{VPÀFA¨ąB}q@|Ou—\\Fm‰QF݅Mw˜å}]•€|FmϋCaƒwŒu_p—¯sfÙgY…DHl`{QEfNysBЦzG¸rHe‚„N\\CvEsÐùÜ_·ÖĉsaQ¯€}_U‡†xÃđŠq›NH¬•Äd^ÝŰR¬ã°wećJEž·vÝ·Hgƒ‚éFXjÉê`|yŒpxkAwœWĐpb¥eOsmzwqChóUQl¥F^laf‹anòsr›EvfQdÁUVf—ÎvÜ^efˆtET¬ôA\\œ¢sJŽnQTjP؈xøK|nBz‰„œĞ»LY‚…FDxӄvr“[ehľš•vN”¢o¾NiÂxGp⬐z›bfZo~hGi’]öF|‰|Nb‡tOMn eA±ŠtPT‡LjpYQ|†SH††YĀxinzDJ€Ìg¢và¥Pg‰_–ÇzII‹€II•„£®S¬„Øs쐣ŒN"],["@@ifjN@s"]],encodeOffsets:[[[109628,30765]],[[111725,31320]]]}},{type:"Feature",id:"810000",properties:{id:"810000",cp:[114.173355,22.320048],name:"香港",childNum:5},geometry:{type:"MultiPolygon",coordinates:[["@@AlBk"],["@@mŽn"],["@@EpFo"],["@@ea¢pl¸Eõ¹‡hj[ƒ]ÔCΖ@lj˜¡uBXŸ…•´‹AI¹…[‹yDUˆ]W`çwZkmc–…M›žp€Åv›}I‹oJlcaƒfёKްä¬XJmРđhI®æÔtSHn€Eˆ„ÒrÈc"],["@@rMUw‡AS®€e"]],encodeOffsets:[[[117111,23002]],[[117072,22876]],[[117045,22887]],[[116975,23082]],[[116882,22747]]]}},{type:"Feature",id:"820000",properties:{id:"820000",cp:[113.54909,22.198951],name:"澳门",childNum:1},geometry:{type:"Polygon",coordinates:["@@kÊd°å§s"],encodeOffsets:[[116279,22639]]}}],UTF8Encoding:!0}):n("ECharts Map is not loaded"):n("ECharts is not Loaded")})?r.apply(t,o):r)||(e.exports=i)}}]); \ No newline at end of file +(function(e){e.fn.slide=function(t){return e.fn.slide.defaults={type:"slide",effect:"fade",autoPlay:!1,delayTime:500,interTime:2500,triggerTime:150,defaultIndex:0,titCell:".hd li",mainCell:".bd",targetCell:null,trigger:"mouseover",scroll:1,vis:1,titOnClassName:"on",autoPage:!1,prevCell:".prev",nextCell:".next",pageStateCell:".pageState",opp:!1,pnLoop:!0,easing:"swing",startFun:null,endFun:null,switchLoad:null,playStateCell:".playState",mouseOverStop:!0,defaultPlay:!0,returnDefault:!1},this.each(function(){var n,r=e.extend({},e.fn.slide.defaults,t),o=e(this),i=r.effect,a=e(r.prevCell,o),s=e(r.nextCell,o),u=e(r.pageStateCell,o),l=e(r.playStateCell,o),c=e(r.titCell,o),f=c.length,p=e(r.mainCell,o),d=p.children().length,h=r.switchLoad,g=e(r.targetCell,o),m=parseInt(r.defaultIndex),y=parseInt(r.delayTime),v=parseInt(r.interTime),x=(parseInt(r.triggerTime),parseInt(r.scroll)),b="false"!=r.autoPlay&&0!=r.autoPlay,w="false"!=r.opp&&0!=r.opp,C="false"!=r.autoPage&&0!=r.autoPage,T="false"!=r.pnLoop&&0!=r.pnLoop,k="false"!=r.mouseOverStop&&0!=r.mouseOverStop,j="false"!=r.defaultPlay&&0!=r.defaultPlay,N="false"!=r.returnDefault&&0!=r.returnDefault,S=isNaN(r.vis)?1:parseInt(r.vis),q=!-[1]&&!window.XMLHttpRequest,E=0,O=0,D=0,M=0,P=r.easing,A=null,L=null,I=null,F=r.titOnClassName,H=c.index(o.find("."+F)),_=m=-1==H?m:H,R=m,W=m,z=d>=S?d%x!=0?d%x:x:0,B="leftMarquee"==i||"topMarquee"==i,Y=function(){e.isFunction(r.startFun)&&r.startFun(m,f,o,e(r.titCell,o),p,g,a,s)},Z=function(){e.isFunction(r.endFun)&&r.endFun(m,f,o,e(r.titCell,o),p,g,a,s)},G=function(){c.removeClass(F),j&&c.eq(R).addClass(F)};if("menu"==r.type)return j&&c.removeClass(F).eq(m).addClass(F),c.hover(function(){n=e(this).find(r.targetCell);var t=c.index(e(this));L=setTimeout(function(){switch(m=t,c.removeClass(F).eq(m).addClass(F),Y(),i){case"fade":n.stop(!0,!0).animate({opacity:"show"},y,P,Z);break;case"slideDown":n.stop(!0,!0).animate({height:"show"},y,P,Z)}},r.triggerTime)},function(){switch(clearTimeout(L),i){case"fade":n.animate({opacity:"hide"},y,P);break;case"slideDown":n.animate({height:"hide"},y,P)}}),void(N&&o.hover(function(){clearTimeout(I)},function(){I=setTimeout(G,y)}));if(0==f&&(f=d),B&&(f=2),C){if(d>=S)if("leftLoop"==i||"topLoop"==i)f=d%x!=0?1+(d/x^0):d/x;else{var Q=d-S;(f=1+parseInt(Q%x!=0?Q/x+1:Q/x))<=0&&(f=1)}else f=1;c.html("");var V="";if(1==r.autoPage||"true"==r.autoPage)for(var X=0;X<f;X++)V+="<li>"+(X+1)+"</li>";else for(X=0;X<f;X++)V+=r.autoPage.replace("$",X+1);c.html(V),c=c.children()}if(d>=S){p.children().each(function(){e(this).width()>D&&(D=e(this).width(),O=e(this).outerWidth(!0)),e(this).height()>M&&(M=e(this).height(),E=e(this).outerHeight(!0))});var U=p.children(),K=function(){for(var e=0;e<S;e++)U.eq(e).clone().addClass("clone").appendTo(p);for(e=0;e<z;e++)U.eq(d-e-1).clone().addClass("clone").prependTo(p)};switch(i){case"fold":p.css({position:"relative",width:O,height:E}).children().css({position:"absolute",width:D,left:0,top:0,display:"none"});break;case"top":p.wrap('<div class="tempWrap" style="overflow:hidden; position:relative; height:'+S*E+'px"></div>').css({top:-m*x*E,position:"relative",padding:"0",margin:"0"}).children().css({height:M});break;case"left":p.wrap('<div class="tempWrap" style="overflow:hidden; position:relative; width:'+S*O+'px"></div>').css({width:d*O,left:-m*x*O,position:"relative",overflow:"hidden",padding:"0",margin:"0"}).children().css({float:"left",width:D});break;case"leftLoop":case"leftMarquee":K(),p.wrap('<div class="tempWrap" style="overflow:hidden; position:relative; width:'+S*O+'px"></div>').css({width:(d+S+z)*O,position:"relative",overflow:"hidden",padding:"0",margin:"0",left:-(z+m*x)*O}).children().css({float:"left",width:D});break;case"topLoop":case"topMarquee":K(),p.wrap('<div class="tempWrap" style="overflow:hidden; position:relative; height:'+S*E+'px"></div>').css({height:(d+S+z)*E,position:"relative",padding:"0",margin:"0",top:-(z+m*x)*E}).children().css({height:M})}}var J=function(e){var t=e*x;return e==f?t=d:-1==e&&d%x!=0&&(t=-d%x),t},$=function(t){var n=function(n){for(var r=n;r<S+n;r++)t.eq(r).find("img["+h+"]").each(function(){var t=e(this);if(t.attr("src",t.attr(h)).removeAttr(h),p.find(".clone")[0])for(var n=p.children(),r=0;r<n.length;r++)n.eq(r).find("img["+h+"]").each(function(){e(this).attr(h)==t.attr("src")&&e(this).attr("src",e(this).attr(h)).removeAttr(h)})})};switch(i){case"fade":case"fold":case"top":case"left":case"slideDown":n(m*x);break;case"leftLoop":case"topLoop":n(z+J(W));break;case"leftMarquee":case"topMarquee":var r="leftMarquee"==i?p.css("left").replace("px",""):p.css("top").replace("px",""),o="leftMarquee"==i?O:E,a=z;if(r%o!=0){var s=Math.abs(r/o^0);a=1==m?z+s:z+s-1}n(a)}},ee=function(e){if(!j||_!=m||e||B){if(B?m>=1?m=1:m<=0&&(m=0):(W=m,m>=f?m=0:m<0&&(m=f-1)),Y(),null!=h&&$(p.children()),g[0]&&(n=g.eq(m),null!=h&&$(g),"slideDown"==i?(g.not(n).stop(!0,!0).slideUp(y),n.slideDown(y,P,function(){p[0]||Z()})):(g.not(n).stop(!0,!0).hide(),n.animate({opacity:"show"},y,function(){p[0]||Z()}))),d>=S)switch(i){case"fade":p.children().stop(!0,!0).eq(m).animate({opacity:"show"},y,P,function(){Z()}).siblings().hide();break;case"fold":p.children().stop(!0,!0).eq(m).animate({opacity:"show"},y,P,function(){Z()}).siblings().animate({opacity:"hide"},y,P);break;case"top":p.stop(!0,!1).animate({top:-m*x*E},y,P,function(){Z()});break;case"left":p.stop(!0,!1).animate({left:-m*x*O},y,P,function(){Z()});break;case"leftLoop":var t=W;p.stop(!0,!0).animate({left:-(J(W)+z)*O},y,P,function(){t<=-1?p.css("left",-(z+(f-1)*x)*O):t>=f&&p.css("left",-z*O),Z()});break;case"topLoop":t=W,p.stop(!0,!0).animate({top:-(J(W)+z)*E},y,P,function(){t<=-1?p.css("top",-(z+(f-1)*x)*E):t>=f&&p.css("top",-z*E),Z()});break;case"leftMarquee":var r=p.css("left").replace("px","");0==m?p.animate({left:++r},0,function(){p.css("left").replace("px","")>=0&&p.css("left",-d*O)}):p.animate({left:--r},0,function(){p.css("left").replace("px","")<=-(d+z)*O&&p.css("left",-z*O)});break;case"topMarquee":var o=p.css("top").replace("px","");0==m?p.animate({top:++o},0,function(){p.css("top").replace("px","")>=0&&p.css("top",-d*E)}):p.animate({top:--o},0,function(){p.css("top").replace("px","")<=-(d+z)*E&&p.css("top",-z*E)})}c.removeClass(F).eq(m).addClass(F),_=m,T||(s.removeClass("nextStop"),a.removeClass("prevStop"),0==m&&a.addClass("prevStop"),m==f-1&&s.addClass("nextStop")),u.html("<span>"+(m+1)+"</span>/"+f)}};j&&ee(!0),N&&o.hover(function(){clearTimeout(I)},function(){I=setTimeout(function(){m=R,j?ee():"slideDown"==i?n.slideUp(y,G):n.animate({opacity:"hide"},y,G),_=m},300)});var te=function(e){A=setInterval(function(){w?m--:m++,ee()},e||v)},ne=function(e){A=setInterval(ee,e||v)},re=function(){k||!b||l.hasClass("pauseState")||(clearInterval(A),te())},oe=function(){(T||m!=f-1)&&(m++,ee(),B||re())},ie=function(){(T||0!=m)&&(m--,ee(),B||re())},ae=function(){clearInterval(A),B?ne():te(),l.removeClass("pauseState")},se=function(){clearInterval(A),l.addClass("pauseState")};if(b?B?(w?m--:m++,ne(),k&&p.hover(se,ae)):(te(),k&&o.hover(se,ae)):(B&&(w?m--:m++),l.addClass("pauseState")),l.click(function(){l.hasClass("pauseState")?ae():se()}),"mouseover"==r.trigger?c.hover(function(){var e=c.index(this);L=setTimeout(function(){m=e,ee(),re()},r.triggerTime)},function(){clearTimeout(L)}):c.click(function(){m=c.index(this),ee(),re()}),B){if(s.mousedown(oe),a.mousedown(ie),T){var ue,le=function(){ue=setTimeout(function(){clearInterval(A),ne(v/10^0)},150)},ce=function(){clearTimeout(ue),clearInterval(A),ne()};s.mousedown(le),s.mouseup(ce),a.mousedown(le),a.mouseup(ce)}"mouseover"==r.trigger&&(s.hover(oe,function(){}),a.hover(ie,function(){}))}else s.click(oe),a.click(ie);if("auto"==r.vis&&1==x&&("left"==i||"leftLoop"==i)){var fe,pe=function(){q&&(p.width("auto"),p.children().width("auto")),p.parent().width("auto"),O=p.parent().width(),q&&p.parent().width(O),p.children().width(O),"left"==i?(p.width(O*d),p.stop(!0,!1).animate({left:-m*O},0)):(p.width(O*(d+2)),p.stop(!0,!1).animate({left:-(m+1)*O},0)),q||O==p.parent().width()||pe()};e(window).resize(function(){clearTimeout(fe),fe=setTimeout(pe,100)}),pe()}})}})(jQuery),jQuery.easing.jswing=jQuery.easing.swing,jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(e,t,n,r,o){return jQuery.easing[jQuery.easing.def](e,t,n,r,o)},easeInQuad:function(e,t,n,r,o){return r*(t/=o)*t+n},easeOutQuad:function(e,t,n,r,o){return-r*(t/=o)*(t-2)+n},easeInOutQuad:function(e,t,n,r,o){return(t/=o/2)<1?r/2*t*t+n:-r/2*(--t*(t-2)-1)+n},easeInCubic:function(e,t,n,r,o){return r*(t/=o)*t*t+n},easeOutCubic:function(e,t,n,r,o){return r*((t=t/o-1)*t*t+1)+n},easeInOutCubic:function(e,t,n,r,o){return(t/=o/2)<1?r/2*t*t*t+n:r/2*((t-=2)*t*t+2)+n},easeInQuart:function(e,t,n,r,o){return r*(t/=o)*t*t*t+n},easeOutQuart:function(e,t,n,r,o){return-r*((t=t/o-1)*t*t*t-1)+n},easeInOutQuart:function(e,t,n,r,o){return(t/=o/2)<1?r/2*t*t*t*t+n:-r/2*((t-=2)*t*t*t-2)+n},easeInQuint:function(e,t,n,r,o){return r*(t/=o)*t*t*t*t+n},easeOutQuint:function(e,t,n,r,o){return r*((t=t/o-1)*t*t*t*t+1)+n},easeInOutQuint:function(e,t,n,r,o){return(t/=o/2)<1?r/2*t*t*t*t*t+n:r/2*((t-=2)*t*t*t*t+2)+n},easeInSine:function(e,t,n,r,o){return-r*Math.cos(t/o*(Math.PI/2))+r+n},easeOutSine:function(e,t,n,r,o){return r*Math.sin(t/o*(Math.PI/2))+n},easeInOutSine:function(e,t,n,r,o){return-r/2*(Math.cos(Math.PI*t/o)-1)+n},easeInExpo:function(e,t,n,r,o){return 0==t?n:r*Math.pow(2,10*(t/o-1))+n},easeOutExpo:function(e,t,n,r,o){return t==o?n+r:r*(1-Math.pow(2,-10*t/o))+n},easeInOutExpo:function(e,t,n,r,o){return 0==t?n:t==o?n+r:(t/=o/2)<1?r/2*Math.pow(2,10*(t-1))+n:r/2*(2-Math.pow(2,-10*--t))+n},easeInCirc:function(e,t,n,r,o){return-r*(Math.sqrt(1-(t/=o)*t)-1)+n},easeOutCirc:function(e,t,n,r,o){return r*Math.sqrt(1-(t=t/o-1)*t)+n},easeInOutCirc:function(e,t,n,r,o){return(t/=o/2)<1?-r/2*(Math.sqrt(1-t*t)-1)+n:r/2*(Math.sqrt(1-(t-=2)*t)+1)+n},easeInElastic:function(e,t,n,r,o){var i=1.70158,a=0,s=r;return 0==t?n:1==(t/=o)?n+r:(a||(a=.3*o),s<Math.abs(r)?(s=r,i=a/4):i=a/(2*Math.PI)*Math.asin(r/s),-s*Math.pow(2,10*(t-=1))*Math.sin((t*o-i)*(2*Math.PI)/a)+n)},easeOutElastic:function(e,t,n,r,o){var i=1.70158,a=0,s=r;return 0==t?n:1==(t/=o)?n+r:(a||(a=.3*o),s<Math.abs(r)?(s=r,i=a/4):i=a/(2*Math.PI)*Math.asin(r/s),s*Math.pow(2,-10*t)*Math.sin((t*o-i)*(2*Math.PI)/a)+r+n)},easeInOutElastic:function(e,t,n,r,o){var i=1.70158,a=0,s=r;return 0==t?n:2==(t/=o/2)?n+r:(a||(a=o*(.3*1.5)),s<Math.abs(r)?(s=r,i=a/4):i=a/(2*Math.PI)*Math.asin(r/s),t<1?s*Math.pow(2,10*(t-=1))*Math.sin((t*o-i)*(2*Math.PI)/a)*-.5+n:s*Math.pow(2,-10*(t-=1))*Math.sin((t*o-i)*(2*Math.PI)/a)*.5+r+n)},easeInBack:function(e,t,n,r,o,i){return void 0==i&&(i=1.70158),r*(t/=o)*t*((i+1)*t-i)+n},easeOutBack:function(e,t,n,r,o,i){return void 0==i&&(i=1.70158),r*((t=t/o-1)*t*((i+1)*t+i)+1)+n},easeInOutBack:function(e,t,n,r,o,i){return void 0==i&&(i=1.70158),(t/=o/2)<1?r/2*(t*t*((1+(i*=1.525))*t-i))+n:r/2*((t-=2)*t*((1+(i*=1.525))*t+i)+2)+n},easeInBounce:function(e,t,n,r,o){return r-jQuery.easing.easeOutBounce(e,o-t,0,r,o)+n},easeOutBounce:function(e,t,n,r,o){return(t/=o)<1/2.75?r*(7.5625*t*t)+n:t<2/2.75?r*(7.5625*(t-=1.5/2.75)*t+.75)+n:t<2.5/2.75?r*(7.5625*(t-=2.25/2.75)*t+.9375)+n:r*(7.5625*(t-=2.625/2.75)*t+.984375)+n},easeInOutBounce:function(e,t,n,r,o){return t<o/2?.5*jQuery.easing.easeInBounce(e,2*t,0,r,o)+n:.5*jQuery.easing.easeOutBounce(e,2*t-o,0,r,o)+.5*r+n}})},fb15:function(e,t,n){"use strict";var r;n.r(t),"undefined"!=typeof window&&(r=window.document.currentScript)&&(r=r.src.match(/(.+\/)[^\/]+\.js(\?.*)?$/))&&(n.p=r[1]);var o=n("1157"),i=n.n(o);window.$=i.a,window.jQuery=i.a;var a=i.a;n("72ef"),"function"!=typeof Object.assign&&Object.defineProperty(Object,"assign",{value(e){if(null==e)throw new TypeError("Cannot convert undefined or null to object");const t=Object(e);for(let n=1;n<arguments.length;n++){const e=arguments[n];if(null!=e)for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t},writable:!0,configurable:!0});var s={name:"superslide",props:{options:{type:Object,default:()=>({})}},mounted:function(){this.create()},destroyed:function(){},methods:{create:function(){const e=Object.assign({},this.options);a(this.$el).slide(e)}}},u=s,l=function(e,t,n,r,o,i,a,s){var u,l="function"==typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=n,l._compiled=!0),r&&(l.functional=!0),i&&(l._scopeId="data-v-"+i),a?(u=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},l._ssrRegister=u):o&&(u=s?function(){o.call(this,this.$root.$options.shadowRoot)}:o),u)if(l.functional){l._injectStyles=u;var c=l.render;l.render=function(e,t){return u.call(t),c(e,t)}}else{var f=l.beforeCreate;l.beforeCreate=f?[].concat(f,u):[u]}return{exports:e,options:l}}(u,function(){var e=this,t=e.$createElement;return(e._self._c||t)("div",{staticClass:"superslide-container"},[e._t("titCell"),e._t("default"),e._t("prev"),e._t("next"),e._t("pageStateCell")],2)},[],!1,null,null,null),c=l.exports;c.install=function(e){e.component(c.name,c)};var f=c;const p=[f],d=function(e){d.installed||p.map(t=>e.component(t.name,t))};"undefined"!=typeof window&&window.Vue&&d(window.Vue);var h={install:d,...p};t.default=h}})},Z5Hk:function(e,t,n){var r,o,i;o=[t,n("TSjp")],void 0===(i="function"==typeof(r=function(e,t){var n=function(e){"undefined"!=typeof console&&console&&console.error&&console.error(e)};t?t.registerMap?t.registerMap("china",{type:"FeatureCollection",features:[{type:"Feature",id:"710000",properties:{id:"710000",cp:[121.509062,24.044332],name:"台湾",childNum:6},geometry:{type:"MultiPolygon",coordinates:[["@@°Ü¯Û"],["@@ƛĴÕƊÉɼģºðʀ\\ƎsÆNŌÔĚäœnÜƤɊĂǀĆĴžĤNJŨxĚĮǂƺòƌ‚–âÔ®ĮXŦţƸZûЋƕƑGđ¨ĭMó·ęcëƝɉlÝƯֹÅŃ^Ó·śŃNjƏďíåɛGɉ™¿@ăƑŽ¥ĘWǬÏĶŁâ"],["@@\\p|WoYG¿¥I†j@¢"],["@@…¡‰@ˆV^RqˆBbAŒnTXeRz¤Lž«³I"],["@@ÆEE—„kWqë @œ"],["@@fced"],["@@„¯ɜÄèaì¯ØǓIġĽ"],["@@çûĖ롖hòř "]],encodeOffsets:[[[122886,24033]],[[123335,22980]],[[122375,24193]],[[122518,24117]],[[124427,22618]],[[124862,26043]],[[126259,26318]],[[127671,26683]]]}},{type:"Feature",id:"130000",properties:{id:"130000",cp:[114.502461,38.045474],name:"河北",childNum:3},geometry:{type:"MultiPolygon",coordinates:[["@@o~†Z]‚ªr‰ºc_ħ²G¼s`jΟnüsœłNX_“M`ǽÓnUK…Ĝēs¤­©yrý§uģŒc†JŠ›e"],["@@U`Ts¿m‚"],["@@oºƋÄd–eVŽDJj£€J|Ådz•Ft~žKŨ¸IÆv|”‡¢r}膎onb˜}`RÎÄn°ÒdÞ²„^®’lnÐèĄlðӜ×]ªÆ}LiĂ±Ö`^°Ç¶p®đDcœŋ`–ZÔ’¶êqvFƚ†N®ĆTH®¦O’¾ŠIbÐã´BĐɢŴÆíȦp–ĐÞXR€·nndOž¤’OÀĈƒ­Qg˜µFo|gȒęSWb©osx|hYh•gŃfmÖĩnº€T̒Sp›¢dYĤ¶UĈjl’ǐpäìë|³kÛfw²Xjz~ÂqbTŠÑ„ěŨ@|oM‡’zv¢ZrÃVw¬ŧˏfŒ°ÐT€ªqŽs{Sž¯r æÝlNd®²Ğ džiGʂJ™¼lr}~K¨ŸƐÌWö€™ÆŠzRš¤lêmĞL΄’@¡|q]SvK€ÑcwpÏρ†ĿćènĪWlĄkT}ˆJ”¤~ƒÈT„d„™pddʾĬŠ”ŽBVt„EÀ¢ôPĎƗè@~‚k–ü\\rÊĔÖæW_§¼F˜†´©òDòj’ˆYÈrbĞāøŀG{ƀ|¦ðrb|ÀH`pʞkv‚GpuARhÞÆǶgƊTǼƹS£¨¡ù³ŘÍ]¿Ây™ôEP xX¶¹܇O¡“gÚ¡IwÃ鑦ÅB‡Ï|ǰ…N«úmH¯‹âŸDùŽyŜžŲIÄuШDž•¸dɂ‡‚FŸƒ•›Oh‡đ©OŸ›iÃ`ww^ƒÌkŸ‘ÑH«ƇǤŗĺtFu…{Z}Ö@U‡´…ʚLg®¯Oı°ÃwŸ ^˜—€VbÉs‡ˆmA…ê]]w„§›RRl£‡ȭµu¯b{ÍDěïÿȧŽuT£ġƒěŗƃĝ“Q¨fV†Ƌ•ƅn­a@‘³@šď„yýIĹÊKšŭfċŰóŒxV@tˆƯŒJ”]eƒR¾fe|rHA˜|h~Ėƍl§ÏŠlTíb ØoˆÅbbx³^zÃ͚¶Sj®A”yÂhðk`š«P€”ˈµEF†Û¬Y¨Ļrõqi¼‰Wi°§’б´°^[ˆÀ|ĠO@ÆxO\\tŽa\\tĕtû{ġŒȧXýĪÓjùÎRb›š^ΛfK[ݏděYfíÙTyŽuUSyŌŏů@Oi½’éŅ­aVcř§ax¹XŻác‡žWU£ôãºQ¨÷Ñws¥qEH‰Ù|‰›šYQoŕÇyáĂ£MðoťÊ‰P¡mšWO¡€v†{ôvîēÜISpÌhp¨ ‘j†deŔQÖj˜X³à™Ĉ[n`Yp@Už–cM`’RKhŒEbœ”pŞlNut®Etq‚nsÁŠgA‹iú‹oH‡qCX‡”hfgu“~ϋWP½¢G^}¯ÅīGCŸÑ^ãziMáļMTÃƘrMc|O_ž¯Ŏ´|‡morDkO\\mĆJfl@c̬¢aĦtRıҙ¾ùƀ^juųœK­ƒUFy™—Ɲ…›īÛ÷ąV×qƥV¿aȉd³B›qPBm›aËđŻģm“Å®Vйd^K‡KoŸnYg“¯Xhqa”Ldu¥•ÍpDž¡KąÅƒkĝęěhq‡}HyÓ]¹ǧ£…Í÷¿qáµ§š™g‘¤o^á¾ZE‡¤i`ij{n•ƒOl»ŸWÝĔįhg›F[¿¡—ßkOüš_‰€ū‹i„DZàUtėGylƒ}ŒÓM}€jpEC~¡FtoQi‘šHkk{Ãmï‚"]],encodeOffsets:[[[119712,40641]],[[121616,39981]],[[116462,37237]]]}},{type:"Feature",id:"140000",properties:{id:"140000",cp:[111.849248,36.857014],name:"山西",childNum:1},geometry:{type:"Polygon",coordinates:["@@Þĩ҃S‰ra}Á€yWix±Üe´lè“ßÓǏok‘ćiµVZģ¡coœ‘TS˹ĪmnÕńe–hZg{gtwªpXaĚThȑp{¶Eh—®RćƑP¿£‘Pmc¸mQÝW•ďȥoÅîɡųAďä³aωJ‘½¥PG­ąSM­™…EÅruµé€‘Yӎ•Ō_d›ĒCo­Èµ]¯_²ÕjāŽK~©ÅØ^ԛkïçămϑk]­±ƒcݯÑÃmQÍ~_a—pm…~ç¡q“ˆu{JÅŧ·Ls}–EyÁÆcI{¤IiCfUc•ƌÃp§]웫vD@¡SÀ‘µM‚ÅwuŽYY‡¡DbÑc¡hƒ×]nkoQdaMç~eD•ÛtT‰©±@¥ù@É¡‰ZcW|WqOJmĩl«ħşvOÓ«IqăV—¥ŸD[mI~Ó¢cehiÍ]Ɠ~ĥqXŠ·eƷœn±“}v•[ěďŽŕ]_‘œ•`‰¹ƒ§ÕōI™o©b­s^}Ét±ū«³p£ÿ·Wµ|¡¥ăFÏs׌¥ŅxŸÊdÒ{ºvĴÎêÌɊ²¶€ü¨|ÞƸµȲ‘LLúÉƎ¤ϊęĔV`„_bª‹S^|ŸdŠzY|dz¥p†ZbÆ£¶ÒK}tĦÔņƠ‚PYzn€ÍvX¶Ěn ĠÔ„zý¦ª˜÷žÑĸَUȌ¸‚dòÜJð´’ìúNM¬ŒXZ´‘¤ŊǸ_tldIš{¦ƀðĠȤ¥NehXnYG‚‡R° ƬDj¬¸|CĞ„Kq‚ºfƐiĺ©ª~ĆOQª ¤@ìǦɌ²æBŒÊ”TœŸ˜ʂōĖ’šĴŞ–ȀœÆÿȄlŤĒö„t”νî¼ĨXhŒ‘˜|ªM¤Ðz"],encodeOffsets:[[116874,41716]]}},{type:"Feature",id:"150000",properties:{id:"150000",cp:[111.670801,41.818311],name:"内蒙古",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@¯PqƒFB…‰|S•³C|kñ•H‹d‘iÄ¥sˆʼnő…PóÑÑE^‘ÅPpy_YtS™hQ·aHwsOnʼnÚs©iqj›‰€USiº]ïWš‰«gW¡A–Rë¥_ŽsgÁnUI«m‰…„‹]j‡vV¼euhwqA„aW˜ƒ_µj…»çjioQR¹ēÃßt@r³[ÛlćË^ÍÉáG“›OUۗOB±•XŸkŇ¹£k|e]ol™ŸkVͼÕqtaÏõjgÁ£§U^Œ”RLˆËnX°Ç’Bz†^~wfvˆypV ¯„ƫĉ˭ȫƗŷɿÿĿƑ˃ĝÿÃǃßËőó©ǐȍŒĖM×ÍEyx‹þp]Évïè‘vƀnÂĴÖ@‚‰†V~Ĉv¦wĖt—ējyÄDXÄxGQuv_›i¦aBçw‘˛wD™©{ŸtāmQ€{EJ§KPśƘƿ¥@‰sCT•É}ɃwˆƇy±ŸgÑ“}T[÷kÐ禫…SÒ¥¸ëBX½‰HáŵÀğtSÝÂa[ƣ°¯¦P]£ġ“–“Òk®G²„èQ°óMq}EŠóƐÇ\\ƒ‡@áügQ͋u¥Fƒ“T՛¿Jû‡]|mvāÎYua^WoÀa·­ząÒot×¶CLƗi¯¤mƎHNJ¤îìɾŊìTdåwsRÖgĒųúÍġäÕ}Q¶—ˆ¿A•†‹[¡Œ{d×uQAƒ›M•xV‹vMOmăl«ct[wº_šÇʊŽŸjb£ĦS_é“QZ“_lwgOiýe`YYLq§IÁˆdz£ÙË[ÕªuƏ³ÍT—s·bÁĽäė[›b[ˆŗfãcn¥îC¿÷µ[ŏÀQ­ōšĉm¿Á^£mJVm‡—L[{Ï_£›F¥Ö{ŹA}…×Wu©ÅaųijƳhB{·TQqÙIķˑZđ©Yc|M¡…L•eVUóK_QWk’_ĥ‘¿ãZ•»X\\ĴuUƒè‡lG®ěłTĠğDєOrÍd‚ÆÍz]‹±…ŭ©ŸÅ’]ŒÅÐ}UË¥©Tċ™ïxgckfWgi\\ÏĒ¥HkµE˜ë{»ÏetcG±ahUiñiWsɁˆ·c–C‚Õk]wȑ|ća}w…VaĚ᠞ŒG°ùnM¬¯†{ÈˆÐÆA’¥ÄêJxÙ¢”hP¢Ûˆº€µwWOŸóFŽšÁz^ÀŗÎú´§¢T¤ǻƺSė‰ǵhÝÅQgvBHouʝl_o¿Ga{ïq{¥|ſĿHĂ÷aĝÇq‡Z‘ñiñC³ª—…»E`¨åXēÕqÉû[l•}ç@čƘóO¿¡ƒFUsA‰“ʽīccšocƒ‚ƒÇS}„“£‡IS~ălkĩXçmĈ…ŀЂoÐdxÒuL^T{r@¢‘žÍƒĝKén£kQ™‰yšÅõËXŷƏL§~}kqš»IHėDžjĝŸ»ÑÞoŸå°qTt|r©ÏS‹¯·eŨĕx«È[eMˆ¿yuˆ‘pN~¹ÏyN£{©’—g‹ħWí»Í¾s“əšDž_ÃĀɗ±ą™ijĉʍŌŷ—S›É“A‹±åǥɋ@럣R©ąP©}ĹªƏj¹erƒLDĝ·{i«ƫC£µsKCš…GS|úþX”gp›{ÁX¿Ÿć{ƱȏñZáĔyoÁhA™}ŅĆfdʼn„_¹„Y°ėǩÑ¡H¯¶oMQqð¡Ë™|‘Ñ`ƭŁX½·óۓxğįÅcQ‡ˆ“ƒs«tȋDžF“Ÿù^i‘t«Č¯[›hAi©á¥ÇĚ×l|¹y¯YȵƓ‹ñǙµï‚ċ™Ļ|Dœ™üȭ¶¡˜›oŽäÕG\\ďT¿Òõr¯œŸLguÏYęRƩšɷŌO\\İТæ^Ŋ IJȶȆbÜGŽĝ¬¿ĚVĎgª^íu½jÿĕęjık@Ľƒ]ėl¥Ë‡ĭûÁ„ƒėéV©±ćn©­ȇžÍq¯½•YÃÔʼn“ÉNѝÅÝy¹NqáʅDǡËñ­ƁYÅy̱os§ȋµʽǘǏƬɱà‘ưN¢ƔÊuľýľώȪƺɂļžxœZĈ}ÌʼnŪ˜ĺœŽĭFЛĽ̅ȣͽÒŵìƩÇϋÿȮǡŏçƑůĕ~Ǎ›¼ȳÐUf†dIxÿ\\G ˆzâɏÙOº·pqy£†@ŒŠqþ@Ǟ˽IBäƣzsÂZ†ÁàĻdñ°ŕzéØűzșCìDȐĴĺf®ŽÀľưø@ɜÖÞKĊŇƄ§‚͑těï͡VAġÑÑ»d³öǍÝXĉĕÖ{þĉu¸ËʅğU̎éhɹƆ̗̮ȘNJ֥ड़ࡰţાíϲäʮW¬®ҌeרūȠkɬɻ̼ãüfƠSצɩςåȈHϚÎKdzͲOðÏȆƘ¼CϚǚ࢚˼ФԂ¤ƌžĞ̪Qʤ´¼mȠJˀŸƲÀɠmǐnǔĎȆÞǠN~€ʢĜ‚¶ƌĆĘźʆȬ˪ĚǏĞGȖƴƀj`ĢçĶāàŃºē̃ĖćšYŒÀŎüôQÐÂŎŞdžŞêƖš˜oˆDĤÕºÑǘÛˤ³̀gńƘĔÀ^žªƂ`ªt¾äƚêĦĀ¼Ð€Ĕǎ¨Ȕ»͠^ˮÊȦƤøxRrŜH¤¸ÂxDĝŒ|ø˂˜ƮÐ¬ɚwɲFjĔ²Äw°dždÀɞ_ĸdîàŎjʜêTĞªŌ‡ŜWÈ|tqĢUB~´°ÎFC•ŽU¼pĀēƄN¦¾O¶ŠłKĊOj“Ě”j´ĜYp˜{¦„ˆSĚÍ\\Tš×ªV–÷Ší¨ÅDK°ßtŇĔKš¨ǵÂcḷ̌ĚǣȄĽF‡lġUĵœŇ‹ȣFʉɁƒMğįʏƶɷØŭOǽ«ƽū¹Ʊő̝Ȩ§ȞʘĖiɜɶʦ}¨֪ࠜ̀ƇǬ¹ǨE˦ĥªÔêFŽxúQ„Er´W„rh¤Ɛ \\talĈDJ˜Ü|[Pll̚¸ƎGú´Pž¬W¦†^¦–H]prR“n|or¾wLVnÇIujkmon£cX^Bh`¥V”„¦U¤¸}€xRj–[^xN[~ªŠxQ„‚[`ªHÆÂExx^wšN¶Ê˜|¨ì†˜€MrœdYp‚oRzNy˜ÀDs~€bcfÌ`L–¾n‹|¾T‚°c¨È¢a‚r¤–`[|òDŞĔöxElÖdH„ÀI`„Ď\\Àì~ƎR¼tf•¦^¢ķ¶e”ÐÚMŒptgj–„ɡČÅyġLû™ŇV®ŠÄÈƀ†Ď°P|ªVV†ªj–¬ĚÒêp¬–E|ŬÂc|ÀtƐK fˆ{ĘFǜƌXƲąo½Ę‘\\¥–o}›Ûu£ç­kX‘{uĩ«āíÓUŅßŢq€Ť¥lyň[€oi{¦‹L‡ń‡ðFȪȖ”ĒL„¿Ì‹ˆfŒ£K£ʺ™oqNŸƒwğc`ue—tOj×°KJ±qƒÆġm‰Ěŗos¬…qehqsuœƒH{¸kH¡Š…ÊRǪÇƌbȆ¢´ä܍¢NìÉʖ¦â©Ġu¦öČ^â£Ăh–šĖMÈÄw‚\\fŦ°W ¢¾luŸD„wŠ\\̀ʉÌÛM…Ā[bӞEn}¶Vc…ê“sƒ"]],encodeOffsets:[[[129102,52189]]]}},{type:"Feature",id:"210000",properties:{id:"210000",cp:[123.429096,41.796767],name:"辽宁",childNum:16},geometry:{type:"MultiPolygon",coordinates:[["@@L–Ž@@s™a"],["@@MnNm"],["@@d‚c"],["@@eÀ‚C@b‚“‰"],["@@f‡…Xwkbr–Ä`qg"],["@@^jtW‘Q"],["@@~ Y]c"],["@@G`ĔN^_¿Z‚ÃM"],["@@iX¶B‹Y"],["@@„YƒZ"],["@@L_{Epf"],["@@^WqCT\\"],["@@\\[“‹§t|”¤_"],["@@m`n_"],["@@Ïxnj{q_×^Giip"],["@@@œé^B†‡ntˆaÊU—˜Ÿ]x ¯ÄPIJ­°h€ʙK³†VˆÕ@Y~†|EvĹsDŽ¦­L^p²ŸÒG ’Ël]„xxÄ_˜fT¤Ď¤cŽœP„–C¨¸TVjbgH²sdÎdHt`Bˆ—²¬GJję¶[ÐhjeXdlwhšðSȦªVÊπ‹Æ‘Z˜ÆŶ®²†^ŒÎyÅÎcPqń“ĚDMħĜŁH­ˆk„çvV[ij¼W–‚YÀäĦ’‘`XlžR`žôLUVžfK–¢†{NZdĒª’YĸÌÚJRr¸SA|ƴgŴĴÆbvªØX~†źBŽ|¦ÕœEž¤Ð`\\|Kˆ˜UnnI]¤ÀÂĊnŎ™R®Ő¿¶\\ÀøíDm¦ÎbŨab‰œaĘ\\ľã‚¸a˜tÎSƐ´©v\\ÖÚÌǴ¤Â‡¨JKr€Z_Z€fjþhPkx€`Y”’RIŒjJcVf~sCN¤ ˆE‚œhæm‰–sHy¨SðÑÌ\\\\ŸĐRZk°IS§fqŒßýáЍÙÉÖ[^¯ǤŲ„ê´\\¦¬ĆPM¯£Ÿˆ»uïpùzEx€žanµyoluqe¦W^£ÊL}ñrkqWňûP™‰UP¡ôJŠoo·ŒU}£Œ„[·¨@XŒĸŸ“‹‹DXm­Ûݏº‡›GU‹CÁª½{íĂ^cj‡k“¶Ã[q¤“LÉö³cux«zZfƒ²BWÇ®Yß½ve±ÃC•ý£W{Ú^’q^sÑ·¨‹ÍOt“¹·C¥‡GD›rí@wÕKţ݋˜Ÿ«V·i}xËÍ÷‘i©ĝ‡ɝǡ]ƒˆ{c™±OW‹³Ya±Ÿ‰_穂Hžĕoƫ€Ňqƒr³‰Lys[„ñ³¯OS–ďOMisZ†±ÅFC¥Pq{‚Ã[Pg}\\—¿ghćO…•k^ģÁFıĉĥM­oEqqZûěʼn³F‘¦oĵ—hŸÕP{¯~TÍlª‰N‰ßY“Ð{Ps{ÃVU™™eĎwk±ʼnVÓ½ŽJãÇÇ»Jm°dhcÀff‘dF~ˆ€ĀeĖ€d`sx² šƒ®EżĀdQ‹Âd^~ăÔHˆ¦\\›LKpĄVez¤NP ǹӗR™ÆąJSh­a[¦´Âghwm€BÐ¨źhI|žVVŽ—Ž|p] Â¼èNä¶ÜBÖ¼“L`‚¼bØæŒKV”ŸpoœúNZÞÒKxpw|ÊEMnzEQšŽIZ”ŽZ‡NBˆčÚFÜçmĩ‚WĪñt‘ÞĵÇñZ«uD‚±|Əlij¥ãn·±PmÍa‰–da‡ CL‡Ǒkùó¡³Ï«QaċϑOÃ¥ÕđQȥċƭy‹³ÃA"]],encodeOffsets:[[[123686,41445]],[[126019,40435]],[[124393,40128]],[[126117,39963]],[[125322,40140]],[[126686,40700]],[[126041,40374]],[[125584,40168]],[[125453,40165]],[[125362,40214]],[[125280,40291]],[[125774,39997]],[[125976,40496]],[[125822,39993]],[[125509,40217]],[[122731,40949]]]}},{type:"Feature",id:"220000",properties:{id:"220000",cp:[125.3245,43.886841],name:"吉林",childNum:1},geometry:{type:"Polygon",coordinates:["@@‘p䔳PClƒFbbÍzš€wBG’ĭ€Z„Åi“»ƒlY­ċ²SgŽkÇ£—^S‰“qd¯•‹R…©éŽ£¯S†\\cZ¹iűƏCuƍÓX‡oR}“M^o•£…R}oªU­F…uuXHlEŕ‡€Ï©¤ÛmTŽþ¤D–²ÄufàÀ­XXȱAe„yYw¬dvõ´KÊ£”\\rµÄl”iˆdā]|DÂVŒœH¹ˆÞ®ÜWnŒC”Œķ W‹§@\\¸‹ƒ~¤‹Vp¸‰póIO¢ŠVOšŇürXql~òÉK]¤¥Xrfkvzpm¶bwyFoúvð‡¼¤ N°ąO¥«³[ƒéǡű_°Õ\\ÚÊĝŽþâőàerR¨­JYlďQ[ ÏYëЧTGz•tnŠß¡gFkMŸāGÁ¤ia É‰™È¹`\\xs€¬dĆkNnuNUŠ–užP@‚vRY¾•–\\¢…ŒGªóĄ~RãÖÎĢù‚đŴÕhQŽxtcæëSɽʼníëlj£ƍG£nj°KƘµDsØÑpyƸ®¿bXp‚]vbÍZuĂ{nˆ^IüœÀSք”¦EŒvRÎûh@℈[‚Əȉô~FNr¯ôçR±ƒ­HÑl•’Ģ–^¤¢‚OðŸŒævxsŒ]ÞÁTĠs¶¿âƊGW¾ìA¦·TѬ†è¥€ÏÐJ¨¼ÒÖ¼ƒƦɄxÊ~S–tD@ŠĂ¼Ŵ¡jlºWžvЉˆzƦZЎ²CH— „Axiukd‹ŒGgetqmcžÛ£Ozy¥cE}|…¾cZ…k‚‰¿uŐã[oxGikfeäT@…šSUwpiÚFM©’£è^ڟ‚`@v¶eň†f h˜eP¶žt“äOlÔUgƒÞzŸU`lœ}ÔÆUvØ_Ō¬Öi^ĉi§²ÃŠB~¡Ĉ™ÚEgc|DC_Ȧm²rBx¼MÔ¦ŮdĨÃâYx‘ƘDVÇĺĿg¿cwÅ\\¹˜¥Yĭlœ¤žOv†šLjM_a W`zļMž·\\swqÝSA‡š—q‰Śij¯Š‘°kŠRē°wx^Đkǂғ„œž“œŽ„‹\\]˜nrĂ}²ĊŲÒøãh·M{yMzysěnĒġV·°“G³¼XÀ““™¤¹i´o¤ŃšŸÈ`̃DzÄUĞd\\i֚ŒˆmÈBĤÜɲDEh LG¾ƀľ{WaŒYÍȏĢĘÔRîĐj‹}Ǟ“ccj‡oUb½š{“h§Ǿ{K‹ƖµÎ÷žGĀÖŠåưÎs­l›•yiē«‹`姝H¥Ae^§„GK}iã\\c]v©ģZ“mÃ|“[M}ģTɟĵ‘Â`À–çm‰‘FK¥ÚíÁbXš³ÌQґHof{‰]e€pt·GŋĜYünĎųVY^’˜ydõkÅZW„«WUa~U·Sb•wGçǑ‚“iW^q‹F‚“›uNĝ—·Ew„‹UtW·Ýďæ©PuqEzwAV•—XR‰ãQ`­©GŒM‡ehc›c”ďϝd‡©ÑW_ϗYƅŒ»…é\\ƒɹ~ǙG³mØ©BšuT§Ĥ½¢Ã_ý‘L¡‘ýŸqT^rme™\\Pp•ZZbƒyŸ’uybQ—efµ]UhĿDCmûvašÙNSkCwn‰cćfv~…Y‹„ÇG"],encodeOffsets:[[130196,42528]]}},{type:"Feature",id:"230000",properties:{id:"230000",cp:[128.642464,46.756967],name:"黑龙江",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@UƒµNÿ¥īè灋•HÍøƕ¶LŒǽ|g¨|”™Ža¾pViˆdd”~ÈiŒíďÓQġėǐZ΋ŽXb½|ſÃH½ŸKFgɱCģÛÇA‡n™‹jÕc[VĝDZÃ˄Ç_™ £ń³pŽj£º”š¿”»WH´¯”U¸đĢmžtĜyzzNN|g¸÷äűѱĉā~mq^—Œ[ƒ”››”ƒǁÑďlw]¯xQĔ‰¯l‰’€°řĴrŠ™˜BˆÞTxr[tޏĻN_yŸX`biN™Ku…P›£k‚ZĮ—¦[ºxÆÀdhŽĹŀUÈƗCw’áZħÄŭcÓ¥»NAw±qȥnD`{ChdÙFćš}¢‰A±Äj¨]ĊÕjŋ«×`VuÓś~_kŷVÝyh„“VkÄãPs”Oµ—fŸge‚Ň…µf@u_Ù ÙcŸªNªÙEojVx™T@†ãSefjlwH\\pŏäÀvŠŽlY†½d{†F~¦dyz¤PÜndsrhf‹HcŒvlwjFœ£G˜±DύƥY‡yϊu¹XikĿ¦ÏqƗǀOŜ¨LI|FRĂn sª|Cš˜zxAè¥bœfudTrFWÁ¹Am|˜ĔĕsķÆF‡´Nš‰}ć…UŠÕ@Áijſmužç’uð^ÊýowŒFzØÎĕNőžǏȎôªÌŒDŽàĀÄ˄ĞŀƒʀĀƘŸˮȬƬĊ°ƒUŸzou‡xe]}Ž…AyȑW¯ÌmK‡“Q]‹Īºif¸ÄX|sZt|½ÚUΠlkš^p{f¤lˆºlÆW –€A²˜PVܜPH”Êâ]ÎĈÌÜk´\\@qàsĔÄQºpRij¼èi†`¶—„bXƒrBgxfv»ŽuUiˆŒ^v~”J¬mVp´£Œ´VWrnP½ì¢BX‚¬h™ŠðX¹^TjVœŠriªj™tŊÄm€tPGx¸bgRšŽsT`ZozÆO]’ÒFô҆Oƒ‡ŊŒvŞ”p’cGŒêŠsx´DR–Œ{A†„EOr°Œ•žx|íœbˆ³Wm~DVjºéNN†Ëܲɶ­GƒxŷCStŸ}]ûō•SmtuÇÃĕN•™āg»šíT«u}ç½BĵÞʣ¥ëÊ¡Mێ³ãȅ¡ƋaǩÈÉQ‰†G¢·lG|›„tvgrrf«†ptęŘnŠÅĢr„I²¯LiØsPf˜_vĠd„xM prʹšL¤‹¤‡eˌƒÀđK“žïÙVY§]I‡óáĥ]ķ†Kˆ¥Œj|pŇ\\kzţ¦šnņäÔVĂîά|vW’®l¤èØr‚˜•xm¶ă~lÄƯĄ̈́öȄEÔ¤ØQĄ–Ą»ƢjȦOǺ¨ìSŖÆƬy”Qœv`–cwƒZSÌ®ü±DŽ]ŀç¬B¬©ńzƺŷɄeeOĨS’Œfm Ċ‚ƀP̎ēz©Ċ‚ÄÕÊmgŸÇsJ¥ƔˆŊśæ’΁Ñqv¿íUOµª‰ÂnĦÁ_½ä@ê텣P}Ġ[@gġ}g“ɊדûÏWXá¢užƻÌsNͽƎÁ§č՛AēeL³àydl›¦ĘVçŁpśdžĽĺſʃQíÜçÛġԏsĕ¬—Ǹ¯YßċġHµ ¡eå`ļƒrĉŘóƢFì“ĎWøxÊk†”ƈdƬv|–I|·©NqńRŀƒ¤é”eŊœŀ›ˆàŀU²ŕƀB‚Q£Ď}L¹Îk@©ĈuǰųǨ”Ú§ƈnTËÇéƟÊcfčŤ^Xm‡—HĊĕË«W·ċëx³ǔķÐċJā‚wİ_ĸ˜Ȁ^ôWr­°oú¬Ħ…ŨK~”ȰCĐ´Ƕ£’fNÎèâw¢XnŮeÂÆĶŽ¾¾xäLĴĘlļO¤ÒĨA¢Êɚ¨®‚ØCÔ ŬGƠ”ƦYĜ‡ĘÜƬDJ—g_ͥœ@čŅĻA“¶¯@wÎqC½Ĉ»NŸăëK™ďÍQ“Ùƫ[«Ãí•gßÔÇOÝáW‘ñuZ“¯ĥ€Ÿŕā¡ÑķJu¤E Ÿå¯°WKɱ_d_}}vyŸõu¬ï¹ÓU±½@gÏ¿rýD‰†g…Cd‰µ—°MFYxw¿CG£‹Rƛ½Õ{]L§{qqąš¿BÇƻğëšܭNJË|c²}Fµ}›ÙRsÓpg±ŠQNqǫŋRwŕnéÑÉKŸ†«SeYR…ŋ‹@{¤SJ}šD Ûǖ֍Ÿ]gr¡µŷjqWÛham³~S«“„›Þ]"]],encodeOffsets:[[[134456,44547]]]}},{type:"Feature",id:"320000",properties:{id:"320000",cp:[119.767413,33.041544],name:"江苏",childNum:1},geometry:{type:"Polygon",coordinates:["@@cþÅPiŠ`ZŸRu¥É\\]~°ŽY`µ†Óƒ^phÁbnÀşúŽòa–ĬºTÖŒb‚˜e¦¦€{¸ZâćNpŒ©žHr|^ˆmjhŠSEb\\afv`sz^lkŽlj‹Ätg‹¤D˜­¾Xš¿À’|ДiZ„ȀåB·î}GL¢õcßjaŸyBFµÏC^ĭ•cÙt¿sğH]j{s©HM¢ƒQnDÀ©DaÜތ·jgàiDbPufjDk`dPOîƒhw¡ĥ‡¥šG˜ŸP²ĐobºrY†„î¶aHŢ´ ]´‚rılw³r_{£DB_Ûdåuk|ˆŨ¯F Cºyr{XFy™e³Þċ‡¿Â™kĭB¿„MvÛpm`rÚã”@ƹhågËÖƿxnlč¶Åì½Ot¾dJlŠVJʜǀœŞqvnOŠ^ŸJ”Z‘ż·Q}ê͎ÅmµÒ]Žƍ¦Dq}¬R^èĂ´ŀĻĊIԒtžIJyQŐĠMNtœR®òLh‰›Ěs©»œ}OӌGZz¶A\\jĨFˆäOĤ˜HYš†JvÞHNiÜaϚɖnFQlšNM¤ˆB´ĄNöɂtp–Ŭdf先‹qm¿QûŠùއÚb¤uŃJŴu»¹Ą•lȖħŴw̌ŵ²ǹǠ͛hĭłƕrçü±Y™xci‡tğ®jű¢KOķ•Coy`å®VTa­_Ā]ŐÝɞï²ʯÊ^]afYǸÃĆēĪȣJđ͍ôƋĝÄ͎ī‰çÛɈǥ£­ÛmY`ó£Z«§°Ó³QafusNıDž_k}¢m[ÝóDµ—¡RLčiXy‡ÅNïă¡¸iĔϑNÌŕoēdōîåŤûHcs}~Ûwbù¹£¦ÓCt‹OPrƒE^ÒoŠg™ĉIµžÛÅʹK…¤½phMŠü`o怆ŀ"],encodeOffsets:[[121740,32276]]}},{type:"Feature",id:"330000",properties:{id:"330000",cp:[120.153576,29.287459],name:"浙江",childNum:45},geometry:{type:"MultiPolygon",coordinates:[["@@E^dQ]K"],["@@jX^j‡"],["@@sfŠbU‡"],["@@qP\\xz[ck"],["@@‘Rƒ¢‚FX}°[s_"],["@@Cbœ\\—}"],["@@e|v\\la{u"],["@@v~u}"],["@@QxÂF¯}"],["@@¹nŒvÞs¯o"],["@@rSkUEj"],["@@bi­ZŒP"],["@@p[}INf"],["@@À¿€"],["@@¹dnbŒ…"],["@@rSŸBnR"],["@@g~h}"],["@@FlEk"],["@@OdPc"],["@@v[u\\"],["@@FjâL~wyoo~›sµL–\\"],["@@¬e¹aNˆ"],["@@\\nÔ¡q]L³ë\\ÿ®ŒQ֎"],["@@ÊA­©[¬"],["@@KxŒv­"],["@@@hlIk]"],["@@pW{o||j"],["@@Md|_mC"],["@@¢…X£ÏylD¼XˆtH"],["@@hlÜ[LykAvyfw^Ež›¤"],["@@fp¤Mus“R"],["@@®_ma~•LÁ¬šZ"],["@@iM„xZ"],["@@ZcYd"],["@@Z~dOSo|A¿qZv"],["@@@`”EN¡v"],["@@|–TY{"],["@@@n@m"],["@@XWkCT\\"],["@@ºwšZRkĕWO¢"],["@@™X®±Grƪ\\ÔáXq{‹"],["@@ůTG°ĄLHm°UC‹"],["@@¤Ž€aÜx~}dtüGæţŎíĔcŖpMËВj碷ðĄÆMzˆjWKĎ¢Q¶˜À_꒔_Bı€i«pZ€gf€¤Nrq]§ĂN®«H±‡yƳí¾×ŸīàLłčŴǝĂíÀBŖÕªˆŠÁŖHŗʼnåqûõi¨hÜ·ƒñt»¹ýv_[«¸m‰YL¯‰Qª…mĉÅdMˆ•gÇjcº«•ęœ¬­K­´ƒB«Âącoċ\\xKd¡gěŧ«®á’[~ıxu·Å”KsËɏc¢Ù\\ĭƛëbf¹­ģSƒĜkáƉÔ­ĈZB{ŠaM‘µ‰fzʼnfåÂŧįƋǝÊĕġć£g³ne­ą»@­¦S®‚\\ßðCšh™iqªĭiAu‡A­µ”_W¥ƣO\\lċĢttC¨£t`ˆ™PZäuXßBs‡Ļyek€OđġĵHuXBšµ]׌‡­­\\›°®¬F¢¾pµ¼kŘó¬Wät’¸|@ž•L¨¸µr“ºù³Ù~§WI‹ŸZWŽ®’±Ð¨ÒÉx€`‰²pĜ•rOògtÁZ}þÙ]„’¡ŒŸFK‚wsPlU[}¦Rvn`hq¬\\”nQ´ĘRWb”‚_ rtČFI֊kŠŠĦPJ¶ÖÀÖJĈĄTĚòžC ²@Pú…Øzœ©PœCÈÚœĒ±„hŖ‡l¬â~nm¨f©–iļ«m‡nt–u†ÖZÜÄj“ŠLŽ®E̜Fª²iÊxبžIÈhhst"],["@@o\\V’zRZ}y"],["@@†@°¡mۛGĕ¨§Ianá[ýƤjfæ‡ØL–•äGr™"]],encodeOffsets:[[[125592,31553]],[[125785,31436]],[[125729,31431]],[[125513,31380]],[[125223,30438]],[[125115,30114]],[[124815,29155]],[[124419,28746]],[[124095,28635]],[[124005,28609]],[[125e3,30713]],[[125111,30698]],[[125078,30682]],[[125150,30684]],[[124014,28103]],[[125008,31331]],[[125411,31468]],[[125329,31479]],[[125626,30916]],[[125417,30956]],[[125254,30976]],[[125199,30997]],[[125095,31058]],[[125083,30915]],[[124885,31015]],[[125218,30798]],[[124867,30838]],[[124755,30788]],[[124802,30809]],[[125267,30657]],[[125218,30578]],[[125200,30562]],[[124968,30474]],[[125167,30396]],[[124955,29879]],[[124714,29781]],[[124762,29462]],[[124325,28754]],[[123990,28459]],[[125366,31477]],[[125115,30363]],[[125369,31139]],[[122495,31878]],[[125329,30690]],[[125192,30787]]]}},{type:"Feature",id:"340000",properties:{id:"340000",cp:[117.283042,31.26119],name:"安徽",childNum:3},geometry:{type:"MultiPolygon",coordinates:[["@@^iuLX^"],["@@‚e©Ehl"],["@@°ZÆëϵmkǀwÌÕæhºgBĝâqÙĊz›ÖgņtÀÁÊÆá’hEz|WzqD¹€Ÿ°E‡ŧl{ævÜcA`¤C`|´qžxIJkq^³³ŸGšµbƒíZ…¹qpa±ď OH—¦™Ħˆx¢„gPícOl_iCveaOjCh߸i݋bÛªCC¿€m„RV§¢A|t^iĠGÀtÚs–d]ĮÐDE¶zAb àiödK¡~H¸íæAžǿYƒ“j{ď¿‘™À½W—®£ChŒÃsiŒkkly]_teu[bFa‰Tig‡n{]Gqªo‹ĈMYá|·¥f¥—őaSÕė™NµñĞ«ImŒ_m¿Âa]uĜp …Z_§{Cƒäg¤°r[_Yj‰ÆOdý“[ŽI[á·¥“Q_n‡ùgL¾mv™ˊBÜÆ¶ĊJhšp“c¹˜O]iŠ]œ¥ jtsggJǧw×jÉ©±›EFˍ­‰Ki”ÛÃÕYv…s•ˆm¬njĻª•§emná}k«ŕˆƒgđ²Ù›DǤ›í¡ªOy›†×Où±@DŸñSęćăÕIÕ¿IµĥO‰‰jNÕËT¡¿tNæŇàåyķrĕq§ÄĩsWÆßŽF¶žX®¿‰mŒ™w…RIޓfßoG‘³¾©uyH‘į{Ɓħ¯AFnuP…ÍÔzšŒV—dàôº^Ðæd´€‡oG¤{S‰¬ćxã}›ŧ×Kǥĩ«žÕOEзÖdÖsƘѨ[’Û^Xr¢¼˜§xvěƵ`K”§ tÒ´Cvlo¸fzŨð¾NY´ı~ÉĔē…ßúLÃϖ_ÈÏ|]ÂÏFl”g`bšežž€n¾¢pU‚h~ƴ˶_‚r sĄ~cž”ƈ]|r c~`¼{À{ȒiJjz`îÀT¥Û³…]’u}›f…ïQl{skl“oNdŸjŸäËzDvčoQŠďHI¦rb“tHĔ~BmlRš—V_„ħTLnñH±’DžœL‘¼L˜ªl§Ťa¸ŒĚlK²€\\RòvDcÎJbt[¤€D@®hh~kt°ǾzÖ@¾ªdb„YhüóZ ň¶vHrľ\\ʗJuxAT|dmÀO„‹[ÃԋG·ĚąĐlŪÚpSJ¨ĸˆLvÞcPæķŨŽ®mАˆálŸwKhïgA¢ųƩޖ¤OȜm’°ŒK´"]],encodeOffsets:[[[121722,32278]],[[119475,30423]],[[119168,35472]]]}},{type:"Feature",id:"350000",properties:{id:"350000",cp:[118.306239,26.075302],name:"福建",childNum:18},geometry:{type:"MultiPolygon",coordinates:[["@@“zht´‡]"],["@@aj^~ĆG—©O"],["@@ed¨„C}}i"],["@@@vˆPGsQ"],["@@‰sBz‚ddW]Q"],["@@SލQ“{"],["@@NŽVucW"],["@@qptBAq"],["@@‰’¸[mu"],["@@Q\\pD]_"],["@@jSwUadpF"],["@@eXª~ƒ•"],["@@AjvFso"],["@@fT–›_Çí\\Ÿ™—v|ba¦jZÆy€°"],["@@IjJi"],["@@wJI€ˆxš«¼AoNe{M­"],["@@K‰±¡Óˆ”ČäeZ"],["@@k¡¹Eh~c®wBk‹UplÀ¡I•~Māe£bN¨gZý¡a±Öcp©PhžI”Ÿ¢Qq…ÇGj‹|¥U™ g[Ky¬ŏ–v@OpˆtÉEŸF„\\@ åA¬ˆV{Xģ‰ĐBy…cpě…¼³Ăp·¤ƒ¥o“hqqÚ¡ŅLsƒ^ᗞ§qlŸÀhH¨MCe»åÇGD¥zPO£čÙkJA¼ß–ėu›ĕeûҍiÁŧSW¥˜QŠûŗ½ùěcݧSùĩąSWó«íęACµ›eR—åǃRCÒÇZÍ¢‹ź±^dlsŒtjD¸•‚ZpužÔâÒH¾oLUêÃÔjjēò´ĄW‚ƛ…^Ñ¥‹ĦŸ@Çò–ŠmŒƒOw¡õyJ†yD}¢ďÑÈġfŠZd–a©º²z£šN–ƒjD°Ötj¶¬ZSÎ~¾c°¶Ðm˜x‚O¸¢Pl´žSL|¥žA†ȪĖM’ņIJg®áIJČĒü` ŽQF‡¬h|ÓJ@zµ |ê³È ¸UÖŬŬÀEttĸr‚]€˜ðŽM¤ĶIJHtÏ A’†žĬkvsq‡^aÎbvŒd–™fÊòSD€´Z^’xPsÞrv‹ƞŀ˜jJd×ŘÉ ®A–ΦĤd€xĆqAŒ†ZR”ÀMźŒnĊ»ŒİÐZ— YX–æJŠyĊ²ˆ·¶q§·–K@·{s‘Xãô«lŗ¶»o½E¡­«¢±¨Yˆ®Ø‹¶^A™vWĶGĒĢžPlzfˆļŽtàAvWYãšO_‡¤sD§ssČġ[kƤPX¦Ž`¶“ž®ˆBBvĪjv©šjx[L¥àï[F…¼ÍË»ğV`«•Ip™}ccÅĥZE‹ãoP…´B@ŠD—¸m±“z«Ƴ—¿å³BRضˆœWlâþäą`“]Z£Tc— ĹGµ¶H™m@_©—kŒ‰¾xĨ‡ôȉðX«½đCIbćqK³Á‹Äš¬OAwã»aLʼn‡ËĥW[“ÂGI—ÂNxij¤D¢ŽîĎÎB§°_JœGsƒ¥E@…¤uć…P‘å†cuMuw¢BI¿‡]zG¹guĮck\\_"]],encodeOffsets:[[[123250,27563]],[[122541,27268]],[[123020,27189]],[[122916,27125]],[[122887,26845]],[[122808,26762]],[[122568,25912]],[[122778,26197]],[[122515,26757]],[[122816,26587]],[[123388,27005]],[[122450,26243]],[[122578,25962]],[[121255,25103]],[[120987,24903]],[[122339,25802]],[[121042,25093]],[[122439,26024]]]}},{type:"Feature",id:"360000",properties:{id:"360000",cp:[115.592151,27.676493],name:"江西",childNum:1},geometry:{type:"Polygon",coordinates:["@@ĢĨƐgÂMD~ņªe^\\^§„ý©j׍cZ†Ø¨zdÒa¶ˆlҍJŒìõ`oz÷@¤u޸´†ôęöY¼‰HČƶajlÞƩ¥éZ[”|h}^U Œ ¥p„ĄžƦO lt¸Æ €Q\\€ŠaÆ|CnÂOjt­ĚĤd’ÈŒF`’¶„@Ð딠¦ōҞ¨Sêv†HĢûXD®…QgėWiØPÞìºr¤dž€NĠ¢l–•ĄtZoœCƞÔºCxrpĠV®Ê{f_Y`_ƒeq’’®Aot`@o‚DXfkp¨|Šs¬\\D‘ÄSfè©Hn¬…^DhÆyøJh“ØxĢĀLʈ„ƠPżċĄwȠ̦G®ǒĤäTŠÆ~ĦwŠ«|TF¡Šn€c³Ïå¹]ĉđxe{ÎӐ†vOEm°BƂĨİ|G’vz½ª´€H’àp”eJ݆Qšxn‹ÀŠW­žEµàXÅĪt¨ÃĖrÄwÀFÎ|ňÓMå¼ibµ¯»åDT±m[“r«_gŽmQu~¥V\\OkxtL E¢‹ƒ‘Ú^~ýê‹Pó–qo슱_Êw§ÑªåƗ⼋mĉŹ‹¿NQ“…YB‹ąrwģcÍ¥B•Ÿ­ŗÊcØiI—žƝĿuŒqtāwO]‘³YCñTeɕš‹caub͈]trlu€ī…B‘ПGsĵıN£ï—^ķqss¿FūūV՟·´Ç{éĈý‰ÿ›OEˆR_ŸđûIċâJh­ŅıN‘ȩĕB…¦K{Tk³¡OP·wn—µÏd¯}½TÍ«YiµÕsC¯„iM•¤™­•¦¯P|ÿUHv“he¥oFTu‰õ\\ŽOSs‹MòđƇiaºćXŸĊĵà·çhƃ÷ǜ{‘ígu^›đg’m[×zkKN‘¶Õ»lčÓ{XSƉv©_ÈëJbVk„ĔVÀ¤P¾ºÈMÖxlò~ªÚàGĂ¢B„±’ÌŒK˜y’áV‡¼Ã~­…`g›ŸsÙfI›Ƌlę¹e|–~udjˆuTlXµf`¿JdŠ[\\˜„L‚‘²"],encodeOffsets:[[116689,26234]]}},{type:"Feature",id:"370000",properties:{id:"370000",cp:[118.000923,36.275807],name:"山东",childNum:13},geometry:{type:"MultiPolygon",coordinates:[["@@Xjd]{K"],["@@itbFHy"],["@@HlGk"],["@@T‚ŒGŸy"],["@@K¬˜•‹U"],["@@WdXc"],["@@PtOs"],["@@•LnXhc"],["@@ppVƒu]Or"],["@@cdzAUa"],["@@udRhnCI‡"],["@@ˆoIƒpR„"],["@@Ľč{fzƤî’Kš–ÎMĮ]†—ZFˆ½Y]â£ph’™š¶¨râøÀ†ÎǨ¤^ºÄ”Gzˆ~grĚĜlĞÆ„LĆdž¢Îo¦–cv“Kb€gr°Wh”mZp ˆL]LºcU‰Æ­n”żĤÌǜbAnrOAœ´žȊcÀbƦUØrĆUÜøœĬƞ†š˜Ez„VL®öØBkŖÝĐ˹ŧ̄±ÀbÎɜnb²ĦhņBĖ›žįĦåXćì@L¯´ywƕCéõė ƿ¸‘lµ¾Z|†ZWyFYŸ¨Mf~C¿`€à_RÇzwƌfQnny´INoƬˆèôº|sT„JUš›‚L„îVj„ǎ¾Ē؍‚Dz²XPn±ŴPè¸ŔLƔÜƺ_T‘üÃĤBBċȉöA´fa„˜M¨{«M`‡¶d¡ô‰Ö°šmȰBÔjjŒ´PM|”c^d¤u•ƒ¤Û´Œä«ƢfPk¶Môlˆ]Lb„}su^ke{lC‘…M•rDŠÇ­]NÑFsmoõľH‰yGă{{çrnÓE‰‹ƕZGª¹Fj¢ïW…uøCǷ돡ąuhÛ¡^Kx•C`C\\bÅxì²ĝÝ¿_N‰īCȽĿåB¥¢·IŖÕy\\‡¹kx‡Ã£Č×GDyÕ¤ÁçFQ¡„KtŵƋ]CgÏAùSed‡cÚź—ŠuYfƒyMmhUWpSyGwMPqŀ—›Á¼zK›¶†G•­Y§Ëƒ@–´śÇµƕBmœ@Io‚g——Z¯u‹TMx}C‘‰VK‚ï{éƵP—™_K«™pÛÙqċtkkù]gŽ‹Tğwo•ɁsMõ³ă‡AN£™MRkmEʕč™ÛbMjÝGu…IZ™—GPģ‡ãħE[iµBEuŸDPԛ~ª¼ętŠœ]ŒûG§€¡QMsğNPŏįzs£Ug{đJĿļā³]ç«Qr~¥CƎÑ^n¶ÆéÎR~ݏY’I“] P‰umŝrƿ›‰›Iā‹[x‰edz‹L‘¯v¯s¬ÁY…~}…ťuٌg›ƋpÝĄ_ņī¶ÏSR´ÁP~ž¿Cyžċßdwk´Ss•X|t‰`Ä Èð€AªìÎT°¦Dd–€a^lĎDĶÚY°Ž`ĪŴǒˆ”àŠv\\ebŒZH„ŖR¬ŢƱùęO•ÑM­³FۃWp[ƒ"]],encodeOffsets:[[[123806,39303]],[[123821,39266]],[[123742,39256]],[[123702,39203]],[[123649,39066]],[[123847,38933]],[[123580,38839]],[[123894,37288]],[[123043,36624]],[[123344,38676]],[[123522,38857]],[[123628,38858]],[[118260,36742]]]}},{type:"Feature",id:"410000",properties:{id:"410000",cp:[113.665412,33.757975],name:"河南",childNum:1},geometry:{type:"Polygon",coordinates:["@@•ýL™ùµP³swIÓxcŢĞð†´E®žÚPt†ĴXØx¶˜@«ŕŕQGƒ‹Yfa[şu“ßǩ™đš_X³ijÕčC]kbc•¥CS¯ëÍB©÷‹–³­Siˆ_}m˜YTtž³xlàcȂzÀD}ÂOQ³ÐTĨ¯†ƗòËŖ[hœł‹Ŧv~††}ÂZž«¤lPǕ£ªÝŴÅR§ØnhcŒtâk‡nύ­ľŹUÓÝdKuķ‡I§oTũÙďkęĆH¸ÓŒ\\ăŒ¿PcnS{wBIvɘĽ[GqµuŸŇôYgûƒZcaŽ©@½Õǽys¯}lgg@­C\\£as€IdÍuCQñ[L±ęk·‹ţb¨©kK—’»›KC²‘òGKmĨS`ƒ˜UQ™nk}AGē”sqaJ¥ĐGR‰ĎpCuÌy ã iMc”plk|tRk†ðœev~^‘´†¦ÜŽSí¿_iyjI|ȑ|¿_»d}qŸ^{“Ƈdă}Ÿtqµ`Ƴĕg}V¡om½fa™Ço³TTj¥„tĠ—Ry”K{ùÓjuµ{t}uËR‘iŸvGŠçJFjµŠÍyqΘàQÂFewixGw½Yŷpµú³XU›½ġy™łå‰kÚwZXˆ·l„¢Á¢K”zO„Λ΀jc¼htoDHr…|­J“½}JZ_¯iPq{tę½ĕ¦Zpĵø«kQ…Ťƒ]MÛfaQpě±ǽ¾]u­Fu‹÷nƒ™čįADp}AjmcEǒaª³o³ÆÍSƇĈÙDIzˑ赟^ˆKLœ—i—Þñ€[œƒaA²zz‰Ì÷Dœ|[šíijgf‚ÕÞd®|`ƒĆ~„oĠƑô³Ŋ‘D×°¯CsŠøÀ«ì‰UMhTº¨¸ǡîS–Ô„DruÂÇZ•ÖEŽ’vPZ„žW”~؋ÐtĄE¢¦Ðy¸bŠô´oŬ¬Ž²Ês~€€]®tªašpŎJ¨Öº„_ŠŔ–`’Ŗ^Ѝ\\Ĝu–”~m²Ƹ›¸fW‰ĦrƔ}Î^gjdfÔ¡J}\\n C˜¦þWxªJRÔŠu¬ĨĨmF†dM{\\d\\ŠYÊ¢ú@@¦ª²SŠÜsC–}fNècbpRmlØ^g„d¢aÒ¢CZˆZxvÆ¶N¿’¢T@€uCœ¬^ĊðÄn|žlGl’™Rjsp¢ED}€Fio~ÔNŽ‹„~zkĘHVsDzßjƒŬŒŠŢ`Pûàl¢˜\\ÀœEhŽİgÞē X¼Pk–„|m"],encodeOffsets:[[118256,37017]]}},{type:"Feature",id:"420000",properties:{id:"420000",cp:[113.298572,30.684355],name:"湖北",childNum:3},geometry:{type:"MultiPolygon",coordinates:[["@@AB‚"],["@@lskt"],["@@¾«}{ra®pîÃ\\™›{øCŠËyyB±„b\\›ò˜Ý˜jK›‡L ]ĎĽÌ’JyÚCƈćÎT´Å´pb©È‘dFin~BCo°BĎĚømvŒ®E^vǾ½Ĝ²Ro‚bÜeNŽ„^ĺ£R†¬lĶ÷YoĖ¥Ě¾|sOr°jY`~I”¾®I†{GqpCgyl{‡£œÍƒÍyPL“¡ƒ¡¸kW‡xYlÙæŠšŁĢzœ¾žV´W¶ùŸo¾ZHxjwfx„GNÁ•³Xéæl¶‰EièIH‰ u’jÌQ~v|sv¶Ôi|ú¢Fh˜Qsğ¦ƒSiŠBg™ÐE^ÁÐ{–čnOÂȞUÎóĔ†ÊēIJ}Z³½Mŧïeyp·uk³DsѨŸL“¶_œÅuèw»—€¡WqÜ]\\‘Ò§tƗcÕ¸ÕFÏǝĉăxŻČƟO‡ƒKÉġÿ×wg”÷IÅzCg†]m«ªGeçÃTC’«[‰t§{loWeC@ps_Bp‘­r‘„f_``Z|ei¡—oċMqow€¹DƝӛDYpûs•–‹Ykıǃ}s¥ç³[§ŸcYЧHK„«Qy‰]¢“wwö€¸ïx¼ņ¾Xv®ÇÀµRĠЋžHMž±cÏd„ƒǍũȅȷ±DSyúĝ£ŤĀàtÖÿï[îb\\}pĭÉI±Ñy…¿³x¯N‰o‰|¹H™ÏÛm‹júË~Tš•u˜ęjCöAwě¬R’đl¯ Ñb­‰ŇT†Ŀ_[Œ‘IčĄʿnM¦ğ\\É[T·™k¹œ©oĕ@A¾w•ya¥Y\\¥Âaz¯ãÁ¡k¥ne£Ûw†E©Êō¶˓uoj_Uƒ¡cF¹­[Wv“P©w—huÕyBF“ƒ`R‹qJUw\\i¡{jŸŸEPïÿ½fć…QÑÀQ{ž‚°‡fLԁ~wXg—ītêݾ–ĺ‘Hdˆ³fJd]‹HJ²…E€ƒoU¥†HhwQsƐ»Xmg±çve›]Dm͂PˆoCc¾‹_h”–høYrŊU¶eD°Č_N~øĹĚ·`z’]Äþp¼…äÌQŒv\\rCŒé¾TnkžŐڀÜa‡“¼ÝƆ̶Ûo…d…ĔňТJq’Pb ¾|JŒ¾fXŠƐîĨ_Z¯À}úƲ‹N_ĒĊ^„‘ĈaŐyp»CÇĕKŠšñL³ŠġMŒ²wrIÒŭxjb[œžn«øœ˜—æˆàƒ ^²­h¯Ú€ŐªÞ¸€Y²ĒVø}Ā^İ™´‚LŠÚm„¥ÀJÞ{JVŒųÞŃx×sxxƈē ģMř–ÚðòIf–Ċ“Œ\\Ʈ±ŒdʧĘD†vČ_Àæ~DŒċ´A®µ†¨ØLV¦êHÒ¤"]],encodeOffsets:[[[113712,34e3]],[[115612,30507]],[[113649,34054]]]}},{type:"Feature",id:"430000",properties:{id:"430000",cp:[111.782279,28.09409],name:"湖南",childNum:3},geometry:{type:"MultiPolygon",coordinates:[["@@—n„FTs"],["@@ßÅÆá‰½ÔXr—†CO™“…ËR‘ïÿĩ­TooQyšÓ[‹ŅBE¬–ÎÓXa„į§Ã¸G °ITxp‰úxÚij¥Ïš–̾ŠedžÄ©ĸG…œàGh‚€M¤–Â_U}Ċ}¢pczfŠþg¤€”ÇòAV‘‹M"],["@@©K—ƒA·³CQ±Á«³BUŠƑ¹AŠtćOw™D]ŒJiØSm¯b£‘ylƒ›X…HËѱH•«–‘C^õľA–Å§¤É¥„ïyuǙuA¢^{ÌC´­¦ŷJ£^[†“ª¿‡ĕ~•Ƈ…•N… skóā‡¹¿€ï]ă~÷O§­@—Vm¡‹Qđ¦¢Ĥ{ºjԏŽŒª¥nf´•~ÕoŸž×Ûą‹MąıuZœmZcÒ IJβSÊDŽŶ¨ƚƒ’CÖŎªQؼrŭŽ­«}NÏürʬŒmjr€@ĘrTW ­SsdHzƓ^ÇÂyUi¯DÅYlŹu{hTœ}mĉ–¹¥ě‰Dÿë©ıÓ[Oº£ž“¥ót€ł¹MՄžƪƒ`Pš…Di–ÛUоÅ‌ìˆU’ñB“È£ýhe‰dy¡oċ€`pfmjP~‚kZa…ZsÐd°wj§ƒ@€Ĵ®w~^‚kÀÅKvNmX\\¨a“”сqvíó¿F„¤¡@ũÑVw}S@j}¾«pĂr–ªg àÀ²NJ¶¶Dô…K‚|^ª†Ž°LX¾ŴäPᜣEXd›”^¶›IJÞܓ~‘u¸ǔ˜Ž›MRhsR…e†`ÄofIÔ\\Ø  i”ćymnú¨cj ¢»–GČìƊÿШXeĈ¾Oð Fi ¢|[jVxrIQŒ„_E”zAN¦zLU`œcªx”OTu RLÄ¢dV„i`p˔vŎµªÉžF~ƒØ€d¢ºgİàw¸Áb[¦Zb¦–z½xBĖ@ªpº›šlS¸Ö\\Ĕ[N¥ˀmĎă’J\\‹ŀ`€…ňSڊĖÁĐiO“Ĝ«BxDõĚiv—ž–S™Ì}iùŒžÜnšÐºGŠ{Šp°M´w†ÀÒzJ²ò¨ oTçüöoÛÿñŽőФ‚ùTz²CȆȸǎۃƑÐc°dPÎŸğ˶[Ƚu¯½WM¡­Éž“’B·rížnZŸÒ `‡¨GA¾\\pē˜XhÆRC­üWGġu…T靧Ŏѝ©ò³I±³}_‘‹EÃħg®ęisÁPDmÅ{‰b[Rşs·€kPŸŽƥƒóRo”O‹ŸVŸ~]{g\\“êYƪ¦kÝbiċƵŠGZ»Ěõ…ó·³vŝž£ø@pyö_‹ëŽIkѵ‡bcѧy…×dY؎ªiþž¨ƒ[]f]Ņ©C}ÁN‡»hĻħƏ’ĩ"]],encodeOffsets:[[[115640,30489]],[[112543,27312]],[[116690,26230]]]}},{type:"Feature",id:"440000",properties:{id:"440000",cp:[113.280637,23.125178],name:"广东",childNum:24},geometry:{type:"MultiPolygon",coordinates:[["@@QdˆAua"],["@@ƒlxDLo"],["@@sbhNLo"],["@@Ă āŸ"],["@@WltO[["],["@@Krœ]S"],["@@e„„I]y"],["@@I|„Mym"],["@@ƒÛ³LSŒž¼Y"],["@@nvºB–ëui©`¾"],["@@zdšÛ›Jw®"],["@@†°…¯"],["@@a yAª¸ËJIx،@€ĀHAmßV¡o•fu•o"],["@@šs‰ŗÃÔėAƁ›ZšÄ ~°ČP‚‹äh"],["@@‹¶Ý’Ì‚vmĞh­ı‡Q"],["@@HœŠdSjĒ¢D}war…“u«ZqadYM"],["@@elŒ\\LqqU"],["@@~rMo\\"],["@@f„^ƒC"],["@@øPªoj÷ÍÝħXČx”°Q¨ıXNv"],["@@gÇƳˆŽˆ”oˆŠˆ[~tly"],["@@E–ÆC¿‘"],["@@OŽP"],["@@w‹†đóg‰™ĝ—[³‹¡VÙæÅöM̳¹pÁaËýý©D©Ü“JŹƕģGą¤{Ùū…ǘO²«BƱéA—Ò‰ĥ‡¡«BhlmtÃPµyU¯uc“d·w_bŝcīímGOŽ|KP’ȏ‡ŹãŝIŕŭŕ@Óoo¿ē‹±ß}Ž…ŭ‚ŸIJWÈCőâUâǙI›ğʼn©I›ijEׅÁ”³Aó›wXJþ±ÌŒÜӔĨ£L]ĈÙƺZǾĆĖMĸĤfŒÎĵl•ŨnȈ‘ĐtF”Š–FĤ–‚êk¶œ^k°f¶gŠŽœ}®Fa˜f`vXŲxl˜„¦–ÔÁ²¬ÐŸ¦pqÊ̲ˆi€XŸØRDÎ}†Ä@ZĠ’s„x®AR~®ETtĄZ†–ƈfŠŠHâÒÐA†µ\\S¸„^wĖkRzŠalŽŜ|E¨ÈNĀňZTŒ’pBh£\\ŒĎƀuXĖtKL–¶G|Ž»ĺEļĞ~ÜĢÛĊrˆO˜Ùîvd]nˆ¬VœÊĜ°R֟pM††–‚ƂªFbwžEÀˆ˜©Œž\\…¤]ŸI®¥D³|ˎ]CöAŤ¦…æ’´¥¸Lv¼€•¢ĽBaô–F~—š®²GÌҐEY„„œzk¤’°ahlV՞I^‹šCxĈPŽsB‰ƒºV‰¸@¾ªR²ĨN]´_eavSi‡vc•}p}Đ¼ƌkJœÚe thœ†_¸ ºx±ò_xN›Ë‹²‘@ƒă¡ßH©Ùñ}wkNÕ¹ÇO½¿£ĕ]ly_WìIžÇª`ŠuTÅxYĒÖ¼k֞’µ‚MžjJÚwn\\h‘œĒv]îh|’È›Ƅøègž¸Ķß ĉĈWb¹ƀdéƌNTtP[ŠöSvrCZžžaGuœbo´ŖÒÇА~¡zCI…özx¢„Pn‹•‰Èñ @ŒĥÒ¦†]ƞŠV}³ăĔñiiÄÓVépKG½Ä‘ÓávYo–C·sit‹iaÀy„ŧΡÈYDÑům}‰ý|m[węõĉZÅxUO}÷N¹³ĉo_qtă“qwµŁYلǝŕ¹tïÛUïmRCº…ˆĭ|µ›ÕÊK™½R‘ē ó]‘–GªęAx–»HO£|ām‡¡diď×YïYWªʼnOeÚtĐ«zđ¹T…ā‡úE™á²\\‹ķÍ}jYàÙÆſ¿Çdğ·ùTßÇţʄ¡XgWÀLJğ·¿ÃˆOj YÇ÷Qě‹i"]],encodeOffsets:[[[117381,22988]],[[116552,22934]],[[116790,22617]],[[116973,22545]],[[116444,22536]],[[116931,22515]],[[116496,22490]],[[116453,22449]],[[113301,21439]],[[118726,21604]],[[118709,21486]],[[113210,20816]],[[115482,22082]],[[113171,21585]],[[113199,21590]],[[115232,22102]],[[115739,22373]],[[115134,22184]],[[113056,21175]],[[119573,21271]],[[119957,24020]],[[115859,22356]],[[116561,22649]],[[116285,22746]]]}},{type:"Feature",id:"450000",properties:{id:"450000",cp:[108.320004,22.82402],name:"广西",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@H– TQ§•A"],["@@ĨʪƒLƒƊDÎĹĐCǦė¸zÚGn£¾›rªŀÜt¬@֛ڈSx~øOŒ˜ŶÐÂæȠ\\„ÈÜObĖw^oބLf¬°bI lTØB̈F£Ć¹gñĤaY“t¿¤VSñœK¸¤nM†¼‚JE±„½¸šŠño‹ÜCƆæĪ^ŠĚQÖ¦^‡ˆˆf´Q†üÜʝz¯šlzUĺš@쇀p¶n]sxtx¶@„~ÒĂJb©gk‚{°‚~c°`ԙ¬rV\\“la¼¤ôá`¯¹LC†ÆbŒxEræO‚v[H­˜„[~|aB£ÖsºdAĐzNÂðsŽÞƔ…Ĥªbƒ–ab`ho¡³F«èVloޤ™ÔRzpp®SŽĪº¨ÖƒºN…ij„d`’a”¦¤F³ºDÎńĀìŠCžĜº¦Ċ•~nS›|gźvZkCÆj°zVÈÁƔ]LÊFZg…čP­kini«‹qǀcz͔Y®¬Ů»qR×ō©DՄ‘§ƙǃŵTÉĩ±ŸıdÑnYY›IJvNĆÌØÜ Öp–}e³¦m‹©iÓ|¹Ÿħņ›|ª¦QF¢Â¬ʖovg¿em‡^ucà÷gՎuŒíÙćĝ}FϼĹ{µHK•sLSđƃr‹č¤[Ag‘oS‹ŇYMÿ§Ç{Fśbky‰lQxĕƒ]T·¶[B…ÑÏGáşşƇe€…•ăYSs­FQ}­Bƒw‘tYğÃ@~…C̀Q ×W‡j˱rÉ¥oÏ ±«ÓÂ¥•ƒ€k—ŽwWűŒmcih³K›~‰µh¯e]lµ›él•E쉕E“ďs‡’mǖŧē`ãògK_ÛsUʝ“ćğ¶hŒöŒO¤Ǜn³Žc‘`¡y‹¦C‘ez€YŠwa™–‘[ďĵűMę§]X˜Î_‚훘Û]é’ÛUćİÕBƣ±…dƒy¹T^džûÅÑŦ·‡PĻþÙ`K€¦˜…¢ÍeœĥR¿Œ³£[~Œäu¼dl‰t‚†W¸oRM¢ď\\zœ}Æzdvň–{ÎXF¶°Â_„ÒÂÏL©Ö•TmuŸ¼ãl‰›īkiqéfA„·Êµ\\őDc¥ÝF“y›Ôć˜c€űH_hL܋êĺШc}rn`½„Ì@¸¶ªVLŒŠhŒ‹\\•Ţĺk~ŽĠið°|gŒtTĭĸ^x‘vK˜VGréAé‘bUu›MJ‰VÃO¡…qĂXËS‰ģãlýàŸ_ju‡YÛÒB†œG^˜é֊¶§ŽƒEG”ÅzěƒƯ¤Ek‡N[kdåucé¬dnYpAyČ{`]þ¯T’bÜÈk‚¡Ġ•vŒàh„ÂƄ¢Jî¶²"]],encodeOffsets:[[[111707,21520]],[[107619,25527]]]}},{type:"Feature",id:"460000",properties:{id:"460000",cp:[109.83119,19.031971],name:"海南",childNum:1},geometry:{type:"Polygon",coordinates:["@@š¦Ŝil¢”XƦ‘ƞò–ïè§ŞCêɕrŧůÇąĻõ™·ĉ³œ̅kÇm@ċȧƒŧĥ‰Ľʉ­ƅſ“ȓÒ˦ŝE}ºƑ[ÍĜȋ gÎfǐÏĤ¨êƺ\\Ɔ¸ĠĎvʄȀœÐ¾jNðĀÒRŒšZdž™zÐŘΰH¨Ƣb²_Ġ "],encodeOffsets:[[112750,20508]]}},{type:"Feature",id:"510000",properties:{id:"510000",cp:[104.065735,30.659462],name:"四川",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@LqKr"],["@@Š[ĻéV£ž_ţġñpG •réÏ·~ąSfy×͂·ºſƽiÍıƣıĻmHH}siaX@iǰÁÃ×t«ƒ­Tƒ¤J–JJŒyJ•ÈŠ`Ohߦ¡uËhIyCjmÿw…ZG……Ti‹SˆsO‰žB²ŸfNmsPaˆ{M{ŠõE‘^Hj}gYpaeuž¯‘oáwHjÁ½M¡pM“–uå‡mni{fk”\\oƒÎqCw†EZ¼K›ĝŠƒAy{m÷L‡wO×SimRI¯rK™õBS«sFe‡]fµ¢óY_ÆPRcue°Cbo׌bd£ŌIHgtrnyPt¦foaXďx›lBowz‹_{ÊéWiêE„GhܸºuFĈIxf®Ž•Y½ĀǙ]¤EyŸF²ċ’w¸¿@g¢§RGv»–áŸW`ÃĵJwi]t¥wO­½a[׈]`Ãi­üL€¦LabbTÀå’c}Íh™Æhˆ‹®BH€î|Ék­¤S†y£„ia©taį·Ɖ`ō¥Uh“O…ƒĝLk}©Fos‰´›Jm„µlŁu—…ø–nÑJWΪ–YÀïAetTžŅ‚ӍG™Ë«bo‰{ıwodƟ½ƒžOġܑµxàNÖ¾P²§HKv¾–]|•B‡ÆåoZ`¡Ø`ÀmºĠ~ÌЧnDž¿¤]wğ@sƒ‰rğu‰~‘Io”[é±¹ ¿žſđӉ@q‹gˆ¹zƱřaí°KtǤV»Ã[ĩǭƑ^ÇÓ@ỗs›Zϕ‹œÅĭ€Ƌ•ěpwDóÖሯneQˌq·•GCœýS]xŸ·ý‹q³•O՜Œ¶Qzßti{ř‰áÍÇWŝŭñzÇW‹pç¿JŒ™‚Xœĩè½cŒF–ÂLiVjx}\\N†ŇĖ¥Ge–“JA¼ÄHfÈu~¸Æ«dE³ÉMA|b˜Ò…˜ćhG¬CM‚õŠ„ƤąAvƒüV€éŀ‰_V̳ĐwQj´·ZeÈÁ¨X´Æ¡Qu·»Ÿ“˜ÕZ³ġqDo‰y`L¬gdp°şŠp¦ėìÅĮZްIä”h‚‘ˆzŠĵœf²å ›ĚрKp‹IN|‹„Ñz]ń……·FU×é»R³™MƒÉ»GM«€ki€™ér™}Ã`¹ăÞmȝnÁîRǀ³ĜoİzŔwǶVÚ£À]ɜ»ĆlƂ²Ġ…þTº·àUȞÏʦ¶†I’«dĽĢdĬ¿–»Ĕ׊h\\c¬†ä²GêëĤł¥ÀǿżÃÆMº}BÕĢyFVvw–ˆxBèĻĒ©Ĉ“tCĢɽŠȣ¦āæ·HĽî“ôNԓ~^¤Ɗœu„œ^s¼{TA¼ø°¢İªDè¾Ň¶ÝJ‘®Z´ğ~Sn|ªWÚ©òzPOȸ‚bð¢|‹øĞŠŒœŒQìÛÐ@Ğ™ǎRS¤Á§d…i“´ezÝúØã]Hq„kIŸþËQǦÃsǤ[E¬ÉŪÍxXƒ·ÖƁİlƞ¹ª¹|XÊwn‘ÆƄmÀêErĒtD®ċæcQƒ”E®³^ĭ¥©l}äQto˜ŖÜqƎkµ–„ªÔĻĴ¡@Ċ°B²Èw^^RsºT£ڿœQP‘JvÄz„^Đ¹Æ¯fLà´GC²‘dt˜­ĀRt¼¤ĦOðğfÔðDŨŁĞƘïžPȆ®âbMüÀXZ ¸£@Ś›»»QÉ­™]d“sÖ×_͖_ÌêŮPrĔĐÕGĂeZÜîĘqBhtO ¤tE[h|Y‹Ô‚ZśÎs´xº±UŒ’ñˆt|O’ĩĠºNbgþŠJy^dÂY Į„]Řz¦gC‚³€R`Šz’¢AjŒ¸CL„¤RÆ»@­Ŏk\\Ç´£YW}z@Z}‰Ã¶“oû¶]´^N‡Ò}èN‚ª–P˜Íy¹`S°´†ATe€VamdUĐwʄvĮÕ\\ƒu‹Æŗ¨Yp¹àZÂm™Wh{á„}WØǍ•Éüw™ga§áCNęÎ[ĀÕĪgÖɪX˜øx¬½Ů¦¦[€—„NΆL€ÜUÖ´òrÙŠxR^–†J˜k„ijnDX{Uƒ~ET{ļº¦PZc”jF²Ė@Žp˜g€ˆ¨“B{ƒu¨ŦyhoÚD®¯¢˜ WòàFΤ¨GDäz¦kŮPœġq˚¥À]€Ÿ˜eŽâÚ´ªKxī„Pˆ—Ö|æ[xäJÞĥ‚s’NÖ½ž€I†¬nĨY´®Ð—ƐŠ€mD™ŝuäđđEb…e’e_™v¡}ìęNJē}q”É埁T¯µRs¡M@}ůa†a­¯wvƉåZwž\\Z{åû^›"]],encodeOffsets:[[[108815,30935]],[[110617,31811]]]}},{type:"Feature",id:"520000",properties:{id:"520000",cp:[106.713478,26.578343],name:"贵州",childNum:3},geometry:{type:"MultiPolygon",coordinates:[["@@†G\\†lY£‘in"],["@@q‚|ˆ‚mc¯tχVSÎ"],["@@hÑ£Is‡NgßH†›HªķÃh_¹ƒ¡ĝħń¦uيùŽgS¯JHŸ|sÝÅtÁïyMDč»eÕtA¤{b\\}—ƒG®u\\åPFq‹wÅaD…žK°ºâ_£ùbµ”mÁ‹ÛœĹM[q|hlaªāI}тƒµ@swtwm^oµˆD鼊yV™ky°ÉžûÛR…³‚‡eˆ‡¥]RՋěħ[ƅåÛDpŒ”J„iV™™‰ÂF²I…»mN·£›LbÒYb—WsÀbŽ™pki™TZĄă¶HŒq`……ĥ_JŸ¯ae«ƒKpÝx]aĕÛPƒÇȟ[ÁåŵÏő—÷Pw}‡TœÙ@Õs«ĿÛq©½œm¤ÙH·yǥĘĉBµĨÕnđ]K„©„œá‹ŸG纍§Õßg‡ǗĦTèƤƺ{¶ÉHÎd¾ŚÊ·OÐjXWrãLyzÉAL¾ę¢bĶėy_qMĔąro¼hĊžw¶øV¤w”²Ĉ]ʚKx|`ź¦ÂÈdr„cȁbe¸›`I¼čTF´¼Óýȃr¹ÍJ©k_șl³´_pН`oÒh޶pa‚^ÓĔ}D»^Xyœ`d˜[Kv…JPhèhCrĂĚÂ^Êƌ wˆZL­Ġ£šÁbrzOIl’MM”ĪŐžËr×ÎeŦŽtw|Œ¢mKjSǘňĂStÎŦEtqFT†¾†E쬬ôxÌO¢Ÿ KгŀºäY†„”PVgŎ¦Ŋm޼VZwVlŒ„z¤…ž£Tl®ctĽÚó{G­A‡ŒÇgeš~Αd¿æaSba¥KKûj®_ć^\\ؾbP®¦x^sxjĶI_Ä X‚⼕Hu¨Qh¡À@Ëô}ޱžGNìĎlT¸ˆ…`V~R°tbÕĊ`¸úÛtπFDu€[ƒMfqGH·¥yA‰ztMFe|R‚_Gk†ChZeÚ°to˜v`x‹b„ŒDnÐ{E}šZ˜è€x—†NEފREn˜[Pv@{~rĆAB§‚EO¿|UZ~ì„Uf¨J²ĂÝÆ€‚sª–B`„s¶œfvö¦ŠÕ~dÔq¨¸º»uù[[§´sb¤¢zþFœ¢Æ…Àhˆ™ÂˆW\\ıŽËI݊o±ĭŠ£þˆÊs}¡R]ŒěƒD‚g´VG¢‚j±®è†ºÃmpU[Á›‘Œëº°r›ÜbNu¸}Žº¼‡`ni”ºÔXĄ¤¼Ôdaµ€Á_À…†ftQQgœR—‘·Ǔ’v”}Ýלĵ]µœ“Wc¤F²›OĩųãW½¯K‚©…]€{†LóµCIµ±Mß¿hŸ•©āq¬o‚½ž~@i~TUxŪÒ¢@ƒ£ÀEîôruń‚”“‚b[§nWuMÆLl¿]x}ij­€½"]],encodeOffsets:[[[112158,27383]],[[112105,27474]],[[112095,27476]]]}},{type:"Feature",id:"530000",properties:{id:"530000",cp:[101.512251,24.740609],name:"云南",childNum:1},geometry:{type:"Polygon",coordinates:["@@[„ùx½}ÑRH‘YīĺûsÍn‘iEoã½Ya²ė{c¬ĝg•ĂsA•ØÅwď‚õzFjw}—«Dx¿}UũlŸê™@•HÅ­F‰¨ÇoJ´Ónũuą¡Ã¢pÒŌ“Ø TF²‚xa²ËX€‚cʋlHîAßËŁkŻƑŷÉ©h™W­æßU‡“Ës¡¦}•teèÆ¶StǀÇ}Fd£j‹ĈZĆÆ‹¤T‚č\\Dƒ}O÷š£Uˆ§~ŃG™‚åŃDĝ¸œTsd¶¶Bªš¤u¢ŌĎo~t¾ÍŶÒtD¦Ú„iôö‰€z›ØX²ghįh½Û±¯€ÿm·zR¦Ɵ`ªŊÃh¢rOԍ´£Ym¼èêf¯ŪĽn„†cÚbŒw\\zlvWžªâˆ ¦g–mĿBş£¢ƹřbĥkǫßeeZkÙIKueT»sVesb‘aĕ  ¶®dNœĄÄpªyސ¼—„³BE˜®l‡ŽGœŭCœǶwêżĔÂe„pÍÀQƞpC„–¼ŲÈ­AÎô¶R„ä’Q^Øu¬°š_Èôc´¹ò¨P΢hlϦ´Ħ“Æ´sâDŽŲPnÊD^¯°’Upv†}®BP̪–jǬx–Söwlfòªv€qĸ|`H€­viļ€ndĜ­Ćhň•‚em·FyށqóžSᝑ³X_ĞçêtryvL¤§z„¦c¦¥jnŞk˜ˆlD¤øz½ĜàžĂŧMÅ|áƆàÊcðÂF܎‚áŢ¥\\\\º™İøÒÐJĴ‡„îD¦zK²ǏÎEh~’CD­hMn^ÌöÄ©ČZÀžaü„fɭyœpį´ěFűk]Ôě¢qlÅĆÙa¶~Äqššê€ljN¬¼H„ÊšNQ´ê¼VظE††^ŃÒyŒƒM{ŒJLoÒœęæŸe±Ķ›y‰’‡gã“¯JYÆĭĘëo¥Š‰o¯hcK«z_pŠrC´ĢÖY”—¼ v¸¢RŽÅW³Â§fǸYi³xR´ďUˊ`êĿU„û€uĆBƒƣö‰N€DH«Ĉg†——Ñ‚aB{ÊNF´¬c·Åv}eÇÃGB»”If•¦HňĕM…~[iwjUÁKE•Ž‹¾dĪçW›šI‹èÀŒoÈXòyŞŮÈXâÎŚŠj|àsRy‹µÖ›–Pr´þŒ ¸^wþTDŔ–Hr¸‹žRÌmf‡żÕâCôox–ĜƌÆĮŒ›Ð–œY˜tâŦÔ@]ÈǮƒ\\μģUsȯLbîƲŚºyh‡rŒŠ@ĒԝƀŸÀ²º\\êp“’JŠ}ĠvŠqt„Ġ@^xÀ£È†¨mËÏğ}n¹_¿¢×Y_æpˆÅ–A^{½•Lu¨GO±Õ½ßM¶w’ÁĢۂP‚›Ƣ¼pcIJxŠ|ap̬HšÐŒŊSfsðBZ¿©“XÏÒK•k†÷Eû¿‰S…rEFsÕūk”óVǥʼniTL‚¡n{‹uxţÏh™ôŝ¬ğōN“‘NJkyPaq™Âğ¤K®‡YŸxÉƋÁ]āęDqçgOg†ILu—\\_gz—]W¼ž~CÔē]bµogpў_oď`´³Țkl`IªºÎȄqÔþž»E³ĎSJ»œ_f·‚adÇqƒÇc¥Á_Źw{™L^ɱćx“U£µ÷xgĉp»ĆqNē`rĘzaĵĚ¡K½ÊBzyäKXqiWPÏɸ½řÍcÊG|µƕƣG˛÷Ÿk°_^ý|_zċBZocmø¯hhcæ\\lˆMFlư£Ĝ„ÆyH“„F¨‰µêÕ]—›HA…àӄ^it `þßäkŠĤÎT~Wlÿ¨„ÔPzUC–NVv [jâôDôď[}ž‰z¿–msSh‹¯{jïğl}šĹ[–őŒ‰gK‹©U·µË@¾ƒm_~q¡f¹…ÅË^»‘f³ø}Q•„¡Ö˳gͱ^ǁ…\\ëÃA_—¿bW›Ï[¶ƛ鏝£F{īZgm@|kHǭƁć¦UĔťƒ×ë}ǝƒeďºȡȘÏíBə£āĘPªij¶“ʼnÿ‡y©n‰ď£G¹¡I›Š±LÉĺÑdĉ܇W¥˜‰}g˜Á†{aqÃ¥aŠıęÏZ—ï`"],encodeOffsets:[[104636,22969]]}},{type:"Feature",id:"540000",properties:{id:"540000",cp:[89.132212,30.860361],name:"西藏",childNum:1},geometry:{type:"Polygon",coordinates:["@@hžľxŽŖ‰xƒÒVކºÅâAĪÝȆµę¯Ňa±r_w~uSÕň‘qOj]ɄQ…£Z……UDûoY’»©M[‹L¼qãË{V͕çWViŽ]ë©Ä÷àyƛh›ÚU°ŒŒa”d„cQƒ~Mx¥™cc¡ÙaSyF—ցk­ŒuRýq¿Ôµ•QĽ³aG{¿FµëªéĜÿª@¬·–K‰·àariĕĀ«V»Ŷ™Ĵū˜gèLǴŇƶaf‹tŒèBŚ£^Šâ†ǐÝ®–šM¦ÁǞÿ¬LhŸŽJ¾óƾƺcxw‹f]Y…´ƒ¦|œQLn°aœdĊ…œ\\¨o’œǀÍŎœ´ĩĀd`tÊQŞŕ|‚¨C^©œĈ¦„¦ÎJĊ{ŽëĎjª²rЉšl`¼Ą[t|¦St辉PŒÜK¸€d˜Ƅı]s¤—î_v¹ÎVòŦj˜£Əsc—¬_Ğ´|٘¦Avަw`ăaÝaa­¢e¤ı²©ªSªšÈMĄwžÉØŔì@T‘¤—Ę™\\õª@”þo´­xA s”ÂtŎKzó´ÇĊµ¢rž^nĊ­Æ¬×üGž¢‚³ {âĊ]š™G‚~bÀgVjzlhǶf€žOšfdЉªB]pj„•TO–tĊ‚n¤}®¦ƒČ¥d¢¼»ddš”Y¼Žt—¢eȤJ¤}Ǿ¡°§¤AГlc@ĝ”sªćļđAç‡wx•UuzEÖġ~AN¹ÄÅȀݦ¿ģŁéì±H…ãd«g[؉¼ēÀ•cīľġ¬cJ‘µ…ÐʥVȝ¸ßS¹†ý±ğkƁ¼ą^ɛ¤Ûÿ‰b[}¬ōõÃ]ËNm®g@•Bg}ÍF±ǐyL¥íCˆƒIij€Ï÷њį[¹¦[⚍EÛïÁÉdƅß{âNÆāŨߝ¾ě÷yC£‡k­´ÓH@¹†TZ¥¢įƒ·ÌAЧ®—Zc…v½ŸZ­¹|ŕWZqgW“|ieZÅYVӁqdq•bc²R@†c‡¥Rã»Ge†ŸeƃīQ•}J[ғK…¬Ə|o’ėjġĠÑN¡ð¯EBčnwôɍėªƒ²•CλŹġǝʅįĭạ̃ūȹ]ΓͧgšsgȽóϧµǛ†ęgſ¶ҍć`ĘąŌJޚä¤rÅň¥ÖÁUětęuůÞiĊÄÀ\\Æs¦ÓRb|Â^řÌkÄŷ¶½÷‡f±iMݑ›‰@ĥ°G¬ÃM¥n£Øą‚ğ¯ß”§aëbéüÑOčœk£{\\‘eµª×M‘šÉfm«Ƒ{Å׃Gŏǩãy³©WÑăû‚··‘Q—òı}¯ã‰I•éÕÂZ¨īès¶ZÈsŽæĔTŘvŽgÌsN@îá¾ó@‰˜ÙwU±ÉT廣TđŸWxq¹Zo‘b‹s[׌¯cĩv‡Œėŧ³BM|¹k‰ªħ—¥TzNYnݍßpęrñĠĉRS~½ŠěVVе‚õ‡«ŒM££µB•ĉ¥áºae~³AuĐh`Ü³ç@BۘïĿa©|z²Ý¼D”£à貋ŸƒIƒû›I ā€óK¥}rÝ_Á´éMaň¨€~ªSĈ½Ž½KÙóĿeƃÆBŽ·¬ën×W|Uº}LJrƳ˜lŒµ`bÔ`QˆˆÐÓ@s¬ñIŒÍ@ûws¡åQÑßÁ`ŋĴ{Ī“T•ÚÅTSij‚‹Yo|Ç[ǾµMW¢ĭiÕØ¿@˜šMh…pÕ]j†éò¿OƇĆƇp€êĉâlØw–ěsˆǩ‚ĵ¸c…bU¹ř¨WavquSMzeo_^gsÏ·¥Ó@~¯¿RiīB™Š\\”qTGªÇĜçPoŠÿfñòą¦óQīÈáP•œābß{ƒZŗĸIæÅ„hnszÁCËìñšÏ·ąĚÝUm®ó­L·ăU›Èíoù´Êj°ŁŤ_uµ^‘°Œìǖ@tĶĒ¡Æ‡M³Ģ«˜İĨÅ®ğ†RŽāð“ggheÆ¢z‚Ê©Ô\\°ÝĎz~ź¤Pn–MĪÖB£Ÿk™n鄧żćŠ˜ĆK„ǰ¼L¶è‰âz¨u¦¥LDĘz¬ýÎmĘd¾ß”Fz“hg²™Fy¦ĝ¤ċņbΛ@y‚Ąæm°NĮZRÖíŽJ²öLĸÒ¨Y®ƌÐV‰à˜tt_ڀÂyĠzž]Ţh€zĎ{†ĢX”ˆc|šÐqŽšfO¢¤ög‚ÌHNŽ„PKŖœŽ˜Uú´xx[xˆvĐCûŠìÖT¬¸^}Ìsòd´_އKgžLĴ…ÀBon|H@–Êx˜—¦BpŰˆŌ¿fµƌA¾zLjRxжF”œkĄźRzŀˆ~¶[”´Hnª–VƞuĒ­È¨ƎcƽÌm¸ÁÈM¦x͊ëÀxdžB’šú^´W†£–d„kɾĬpœw‚˂ØɦļĬIŚœÊ•n›Ŕa¸™~J°î”lɌxĤÊÈðhÌ®‚g˜T´øŽàCˆŽÀ^ªerrƘdž¢İP|Ė ŸWœªĦ^¶´ÂL„aT±üWƜ˜ǀRšŶUńšĖ[QhlLüA†‹Ü\\†qR›Ą©"],encodeOffsets:[[90849,37210]]}},{type:"Feature",id:"610000",properties:{id:"610000",cp:[108.948024,34.263161],name:"陕西",childNum:1},geometry:{type:"Polygon",coordinates:["@@˜p¢—ȮµšûG™Ħ}Ħšðǚ¶òƄ€jɂz°{ºØkÈęâ¦jª‚Bg‚\\œċ°s¬Ž’]jžú ‚E”Ȍdž¬s„t‡”RˆÆdĠݎwܔ¸ôW¾ƮłÒ_{’Ìšû¼„jº¹¢GǪÒ¯ĘƒZ`ºŊƒecņąš~BÂgzpâēòYǠȰÌTΨÂWœ|fcŸă§uF—Œ@NŸ¢XLƒŠRMº[ğȣſï|¥J™kc`sʼnǷ’Y¹‹W@µ÷K…ãï³ÛIcñ·VȋڍÒķø©—þ¥ƒy‚ÓŸğęmWµÎumZyOŅƟĥÓ~sÑL¤µaŅY¦ocyZ{‰y c]{ŒTa©ƒ`U_Ěē£ωÊƍKù’K¶ȱÝƷ§{û»ÅÁȹÍéuij|¹cÑd‘ŠìUYƒŽO‘uF–ÕÈYvÁCqӃT•Ǣí§·S¹NgŠV¬ë÷Át‡°Dد’C´ʼnƒópģ}„ċcE˅FŸŸéGU¥×K…§­¶³B‹Č}C¿åċ`wġB·¤őcƭ²ő[Å^axwQO…ÿEËߌ•ĤNĔŸwƇˆÄŠńwĪ­Šo[„_KÓª³“ÙnK‰Çƒěœÿ]ď€ă_d©·©Ýŏ°Ù®g]±„Ÿ‡ß˜å›—¬÷m\\›iaǑkěX{¢|ZKlçhLt€Ňîŵ€œè[€É@ƉĄEœ‡tƇÏ˜³­ħZ«mJ…›×¾‘MtÝĦ£IwÄå\\Õ{‡˜ƒOwĬ©LÙ³ÙgBƕŀr̛ĢŭO¥lãyC§HÍ£ßEñŸX¡—­°ÙCgpťz‘ˆb`wI„vA|§”‡—hoĕ@E±“iYd¥OϹS|}F@¾oAO²{tfžÜ—¢Fǂ҈W²°BĤh^Wx{@„¬‚­F¸¡„ķn£P|ŸªĴ@^ĠĈæb–Ôc¶l˜Yi…–^Mi˜cϰÂ[ä€vï¶gv@À“Ĭ·lJ¸sn|¼u~a]’ÆÈtŌºJp’ƒþ£KKf~ЦUbyäIšĺãn‡Ô¿^­žŵMT–hĠܤko¼Ŏìąǜh`[tŒRd²IJ_œXPrɲ‰l‘‚XžiL§àƒ–¹ŽH˜°Ȧqº®QC—bA†„ŌJ¸ĕÚ³ĺ§ `d¨YjžiZvRĺ±öVKkjGȊĐePОZmļKÀ€‚[ŠŽ`ösìh†ïÎoĬdtKÞ{¬èÒÒBŒÔpIJÇĬJŊ¦±J«ˆY§‹@·pH€µàåVKe›pW†ftsAÅqC·¬ko«pHÆuK@oŸHĆۄķhx“e‘n›S³àǍrqƶRbzy€¸ËАl›¼EºpĤ¼Œx¼½~Ğ’”à@†ÚüdK^ˆmÌSj"],encodeOffsets:[[110234,38774]]}},{type:"Feature",id:"620000",properties:{id:"620000",cp:[103.823557,36.058039],name:"甘肃",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@VuUv"],["@@ũ‹EĠtt~nkh`Q‰¦ÅÄÜdw˜Ab×ĠąJˆ¤DüègĺqBqœj°lI¡ĨÒ¤úSHbš‡ŠjΑBаaZˆ¢KJŽ’O[|A£žDx}Nì•HUnrk„ kp€¼Y kMJn[aG‚áÚÏ[½rc†}aQxOgsPMnUs‡nc‹Z…ž–sKúvA›t„Þġ’£®ĀYKdnFwš¢JE°”Latf`¼h¬we|€Æ‡šbj}GA€·~WŽ”—`†¢MC¤tL©IJ°qdf”O‚“bÞĬ¹ttu`^ZúE`Œ[@„Æsîz®¡’C„ƳƜG²“R‘¢R’m”fŽwĸg܃‚ą G@pzJM½mŠhVy¸uÈÔO±¨{LfæU¶ßGĂq\\ª¬‡²I‚¥IʼnÈīoı‹ÓÑAçÑ|«LÝcspīðÍg…të_õ‰\\ĉñLYnĝg’ŸRǡÁiHLlõUĹ²uQjYi§Z_c¨Ÿ´ĹĖÙ·ŋI…ƒaBD˜­R¹ȥr—¯G•ºß„K¨jWk’ɱŠOq›Wij\\a­‹Q\\sg_ĆǛōëp»£lğۀgS•ŶN®À]ˆÓäm™ĹãJaz¥V}‰Le¤L„ýo‘¹IsŋÅÇ^‘Žbz…³tmEÁ´aйcčecÇN•ĊãÁ\\蝗dNj•]j†—ZµkÓda•ćå]ğij@ ©O{¤ĸm¢ƒE·®ƒ«|@Xwg]A챝‡XǁÑdzªc›wQÚŝñsÕ³ÛV_ýƒ˜¥\\ů¥©¾÷w—Ž©WÕÊĩhÿÖÁRo¸V¬âDb¨šhûx–Ê×nj~Zâƒg|šXÁnßYoº§ZÅŘvŒ[„ĭÖʃuďxcVbnUSf…B¯³_Tzº—ΕO©çMÑ~Mˆ³]µ^püµ”ŠÄY~y@X~¤Z³€[Èōl@®Å¼£QKƒ·Di‹¡By‘ÿ‰Q_´D¥hŗyƒ^ŸĭÁZ]cIzý‰ah¹MĪğP‘s{ò‡‹‘²Vw¹t³Ŝˁ[ŽÑ}X\\gsFŸ£sPAgěp×ëfYHāďÖqēŭOÏë“dLü•\\iŒ”t^c®šRʺ¶—¢H°mˆ‘rYŸ£BŸ¹čIoľu¶uI]vģSQ{ƒUŻ”Å}QÂ|̋°ƅ¤ĩŪU ęĄžÌZҞ\\v˜²PĔ»ƢNHƒĂyAmƂwVmž`”]ȏb•”H`‰Ì¢²ILvĜ—H®¤Dlt_„¢JJÄämèÔDëþgºƫ™”aʎÌrêYi~ ÎݤNpÀA¾Ĕ¼b…ð÷’Žˆ‡®‚”üs”zMzÖĖQdȨý†v§Tè|ªH’þa¸|šÐ ƒwKĢx¦ivr^ÿ ¸l öæfƟĴ·PJv}n\\h¹¶v†·À|\\ƁĚN´Ĝ€çèÁz]ġ¤²¨QÒŨTIl‡ªťØ}¼˗ƦvÄùØE‹’«Fï˛Iq”ōŒTvāÜŏ‚íÛߜÛV—j³âwGăÂíNOŠˆŠPìyV³ʼnĖýZso§HіiYw[߆\\X¦¥c]ÔƩÜ·«j‡ÐqvÁ¦m^ċ±R™¦΋ƈťĚgÀ»IïĨʗƮްƝ˜ĻþÍAƉſ±tÍEÕÞāNU͗¡\\ſčåÒʻĘm ƭÌŹöʥ’ëQ¤µ­ÇcƕªoIýˆ‰Iɐ_mkl³ă‰Ɠ¦j—¡Yz•Ňi–}Msßõ–īʋ —}ƒÁVmŸ_[n}eı­Uĥ¼‘ª•I{ΧDӜƻėoj‘qYhĹT©oūĶ£]ďxĩ‹ǑMĝ‰q`B´ƃ˺Ч—ç~™²ņj@”¥@đ´ί}ĥtPńǾV¬ufӃÉC‹tÓ̻‰…¹£G³€]ƖƾŎĪŪĘ̖¨ʈĢƂlɘ۪üºňUðǜȢƢż̌ȦǼ‚ĤŊɲĖ­Kq´ï¦—ºĒDzņɾªǀÞĈĂD†½ĄĎÌŗĞrôñnŽœN¼â¾ʄľԆ|DŽŽ֦ज़ȗlj̘̭ɺƅêgV̍ʆĠ·ÌĊv|ýĖÕWĊǎÞ´õ¼cÒÒBĢ͢UĜð͒s¨ňƃLĉÕÝ@ɛƯ÷¿Ľ­ĹeȏijëCȚDŲyê×Ŗyò¯ļcÂßY…tÁƤyAã˾J@ǝrý‹‰@¤…rz¸oP¹ɐÚyᐇHŸĀ[Jw…cVeȴϜ»ÈŽĖ}ƒŰŐèȭǢόĀƪÈŶë;Ñ̆ȤМľĮEŔ—ĹŊũ~ËUă{ŸĻƹɁύȩþĽvĽƓÉ@ē„ĽɲßǐƫʾǗĒpäWÐxnsÀ^ƆwW©¦cÅ¡Ji§vúF¶Ž¨c~c¼īŒeXǚ‹\\đ¾JŽwÀďksãA‹fÕ¦L}wa‚o”Z’‹D½†Ml«]eÒÅaɲáo½FõÛ]ĻÒ¡wYR£¢rvÓ®y®LF‹LzĈ„ôe]gx}•|KK}xklL]c¦£fRtív¦†PĤoH{tK"]],encodeOffsets:[[[108619,36299]],[[108589,36341]]]}},{type:"Feature",id:"630000",properties:{id:"630000",cp:[96.778916,35.623178],name:"青海",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@InJm"],["@@CƒÆ½OŃĦsΰ~dz¦@@“Ņiš±è}ؘƄ˹A³r_ĞŠǒNΌĐw¤^ŬĵªpĺSZg’rpiƼĘԛ¨C|͖J’©Ħ»®VIJ~f\\m `Un„˜~ʌŸ•ĬàöNt•~ňjy–¢Zi˜Ɣ¥ĄŠk´nl`JʇŠJþ©pdƖ®È£¶ìRʦ‘źõƮËnŸʼėæÑƀĎ[‚˜¢VÎĂMÖÝÎF²sƊƀÎBļýƞ—¯ʘƭðħ¼Jh¿ŦęΌƇš¥²Q]Č¥nuÂÏriˆ¸¬ƪÛ^Ó¦d€¥[Wà…x\\ZŽjҕ¨GtpþYŊĕ´€zUO뇉P‰îMĄÁxH´á˜iÜUà›îÜՁĂÛSuŎ‹r“œJð̬EŒ‘FÁú×uÃÎkr“Ē{V}İ«O_ÌËĬ©ŽÓŧSRѱ§Ģ£^ÂyèçěM³Ƃę{[¸¿u…ºµ[gt£¸OƤĿéYŸõ·kŸq]juw¥Dĩƍ€õÇPéĽG‘ž©ã‡¤G…uȧþRcÕĕNy“yût“ˆ­‡ø‘†ï»a½ē¿BMoᣟÍj}éZËqbʍš“Ƭh¹ìÿÓAçãnIáI`ƒks£CG­ě˜Uy×Cy•…’Ÿ@¶ʡÊBnāzG„ơMē¼±O÷õJËĚăVŸĪũƆ£Œ¯{ËL½Ìzż“„VR|ĠTbuvJvµhĻĖH”Aëáa…­OÇðñęNw‡…œľ·L›mI±íĠĩPÉ×®ÿs—’cB³±JKßĊ«`…ađ»·QAmO’‘Vţéÿ¤¹SQt]]Çx€±¯A@ĉij¢Ó祖•ƒl¶ÅÛr—ŕspãRk~¦ª]Į­´“FR„åd­ČsCqđéFn¿Åƃm’Éx{W©ºƝºįkÕƂƑ¸wWūЩÈFž£\\tÈ¥ÄRÈýÌJ ƒlGr^×äùyÞ³fj”c†€¨£ÂZ|ǓMĝšÏ@ëÜőR‹›ĝ‰Œ÷¡{aïȷPu°ËXÙ{©TmĠ}Y³’­ÞIňµç½©C¡į÷¯B»|St»›]vƒųƒs»”}MÓ ÿʪƟǭA¡fs˜»PY¼c¡»¦c„ċ­¥£~msĉP•–Siƒ^o©A‰Šec‚™PeǵŽkg‚yUi¿h}aH™šĉ^|ᴟ¡HØûÅ«ĉ®]m€¡qĉ¶³ÈyôōLÁst“BŸ®wn±ă¥HSò뚣˜S’ë@לÊăxÇN©™©T±ª£IJ¡fb®ÞbŽb_Ą¥xu¥B—ž{łĝ³«`d˜Ɛt—¤ťiñžÍUuºí`£˜^tƃIJc—·ÛLO‹½Šsç¥Ts{ă\\_»™kϊ±q©čiìĉ|ÍIƒ¥ć¥›€]ª§D{ŝŖÉR_sÿc³Īō›ƿΑ›§p›[ĉ†›c¯bKm›R¥{³„Z†e^ŽŒwx¹dƽŽôIg §Mĕ ƹĴ¿—ǣÜ̓]‹Ý–]snåA{‹eŒƭ`ǻŊĿ\\ijŬű”YÂÿ¬jĖqŽßbЏ•L«¸©@ěĀ©ê¶ìÀEH|´bRľž–Ó¶rÀQþ‹vl®Õ‚E˜TzÜdb ˜hw¤{LR„ƒd“c‹b¯‹ÙVgœ‚ƜßzÃô쮍^jUèXΖ|UäÌ»rKŽ\\ŒªN‘¼pZCü†VY††¤ɃRi^rPҒTÖ}|br°qňb̰ªiƶGQ¾²„x¦PœmlŜ‘[Ĥ¡ΞsĦŸÔÏâ\\ªÚŒU\\f…¢N²§x|¤§„xĔsZPòʛ²SÐqF`ª„VƒÞŜĶƨVZŒÌL`ˆ¢dŐIqr\\oäõ–F礻Ŷ×h¹]Clـ\\¦ďÌį¬řtTӺƙgQÇÓHţĒ”´ÃbEÄlbʔC”|CˆŮˆk„Ʈ[ʼ¬ňœ´KŮÈΰÌζƶlð”ļA†TUvdTŠG†º̼ŠÔ€ŒsÊDԄveOg"]],encodeOffsets:[[[105308,37219]],[[95370,40081]]]}},{type:"Feature",id:"640000",properties:{id:"640000",cp:[106.278179,37.26637],name:"宁夏",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@KëÀęĞ«OęȿȕŸı]ʼn¡åįÕÔ«Ǵõƪ™ĚQÐZhv K°›öqÀѐS[ÃÖHƖčË‡nL]ûc…Ùß@‚“ĝ‘¾}w»»‹oģF¹œ»kÌÏ·{zPƒ§B­¢íyÅt@ƒ@áš]Yv_ssģ¼i߁”ĻL¾ġsKD£¡N_…“˜X¸}B~Haiˆ™Åf{«x»ge_bs“KF¯¡Ix™mELcÿZ¤­Ģ‘ƒÝœsuBLù•t†ŒYdˆmVtNmtOPhRw~bd…¾qÐ\\âÙH\\bImlNZŸ»loƒŸqlVm–Gā§~QCw¤™{A\\‘PKŸNY‡¯bF‡kC¥’sk‹Šs_Ã\\ă«¢ħkJi¯r›rAhĹûç£CU‡ĕĊ_ԗBixÅُĄnªÑaM~ħpOu¥sîeQ¥¤^dkKwlL~{L~–hw^‚ófćƒKyEŒ­K­zuÔ¡qQ¤xZÑ¢^ļöܾEpž±âbÊÑÆ^fk¬…NC¾‘Œ“YpxbK~¥Že֎ŒäBlt¿Đx½I[ĒǙŒWž‹f»Ĭ}d§dµùEuj¨‚IÆ¢¥dXªƅx¿]mtÏwßR͌X¢͎vÆzƂZò®ǢÌʆCrâºMÞzžÆMҔÊÓŊZľ–r°Î®Ȉmª²ĈUªĚøºˆĮ¦ÌĘk„^FłĬhĚiĀ˾iİbjÕ"],["@@mfwěwMrŢªv@G‰"]],encodeOffsets:[[[109366,40242]],[[108600,36303]]]}},{type:"Feature",id:"650000",properties:{id:"650000",cp:[85.617733,40.792818],name:"新疆",childNum:1},geometry:{type:"Polygon",coordinates:["@@QØĔ²X¨”~ǘBºjʐߨvK”ƔX¨vĊOžÃƒ·¢i@~c—‡ĝe_«”Eš“}QxgɪëÏÃ@sÅyXoŖ{ô«ŸuX…ê•Îf`œC‚¹ÂÿÐGĮÕĞXŪōŸMźÈƺQèĽôe|¿ƸJR¤ĘEjcUóº¯Ĩ_ŘÁMª÷Ð¥Oéȇ¿ÖğǤǷÂF҇zÉx[]­Ĥĝ‰œ¦EP}ûƥé¿İƷTėƫœŕƅ™ƱB»Đ±’ēO…¦E–•}‘`cȺrĦáŖuҞª«IJ‡πdƺÏØZƴwʄ¤ĖGЙǂZ̓èH¶}ÚZצʥĪï|ÇĦMŔ»İĝLj‹ì¥Βœba­¯¥ǕǚkĆŵĦɑĺƯxūД̵nơʃĽá½M»›òmqóŘĝč˾ăC…ćāƿÝɽ©DZŅ¹đ¥˜³ðLrÁ®ɱĕģʼnǻ̋ȥơŻǛȡVï¹Ň۩ûkɗġƁ§ʇė̕ĩũƽō^ƕŠUv£ƁQï“Ƶkŏ½ΉÃŭdzLқʻ«ƭ\\lƒ‡ŭD‡“{ʓDkaFÃÄa“³ŤđÔGRÈƚhSӹŚsİ«ĐË[¥ÚDkº^Øg¼ŵ¸£EÍö•€ůʼnT¡c_‡ËKY‹ƧUśĵ„݃U_©rETÏʜ±OñtYw獃{£¨uM³x½şL©Ùá[ÓÐĥ Νtģ¢\\‚ś’nkO›w¥±ƒT»ƷFɯàĩÞáB¹Æ…ÑUw„੍žĽw[“mG½Èå~‡Æ÷QyŠěCFmĭZī—ŵVÁ™ƿQƛ—ûXS²‰b½KϽĉS›©ŷXĕŸ{ŽĕK·¥Ɨcqq©f¿]‡ßDõU³h—­gËÇïģÉɋw“k¯í}I·šœbmœÉ–ř›īJɥĻˁ×xo›ɹī‡l•c…¤³Xù]‘™DžA¿w͉ì¥wÇN·ÂËnƾƍdǧđ®Ɲv•Um©³G\\“}µĿ‡QyŹl㓛µEw‰LJQ½yƋBe¶ŋÀů‡ož¥A—˜Éw@•{Gpm¿Aij†ŽKLhˆ³`ñcËtW‚±»ÕS‰ëüÿďD‡u\\wwwù³—V›LŕƒOMËGh£õP¡™er™Ïd{“‡ġWÁ…č|yšg^ğyÁzÙs`—s|ÉåªÇ}m¢Ń¨`x¥’ù^•}ƒÌ¥H«‰Yªƅ”Aйn~Ꝛf¤áÀz„gŠÇDIԝ´AňĀ҄¶ûEYospõD[{ù°]u›Jq•U•|Soċxţ[õÔĥkŋÞŭZ˺óYËüċrw €ÞkrťË¿XGÉbřaDü·Ē÷Aê[Ää€I®BÕИÞ_¢āĠpŠÛÄȉĖġDKwbm‡ÄNô‡ŠfœƫVÉvi†dz—H‘‹QµâFšù­Âœ³¦{YGžƒd¢ĚÜO „€{Ö¦ÞÍÀPŒ^b–ƾŠlŽ[„vt×ĈÍE˨¡Đ~´î¸ùÎh€uè`¸ŸHÕŔVºwĠââWò‡@{œÙNÝ´ə²ȕn{¿¥{l—÷eé^e’ďˆXj©î\\ªÑò˜Üìc\\üqˆÕ[Č¡xoÂċªbØ­Œø|€¶ȴZdÆÂšońéŒGš\\”¼C°ÌƁn´nxšÊOĨ’ہƴĸ¢¸òTxÊǪMīИÖŲÃɎOvˆʦƢ~FއRěò—¿ġ~åŊœú‰Nšžš¸qŽ’Ę[Ĕ¶ÂćnÒPĒÜvúĀÊbÖ{Äî¸~Ŕünp¤ÂH¾œĄYÒ©ÊfºmԈĘcDoĬMŬ’˜S¤„s²‚”ʘچžȂVŦ –ŽèW°ªB|IJXŔþÈJĦÆæFĚêŠYĂªĂ]øªŖNÞüA€’fɨJ€˜¯ÎrDDšĤ€`€mz\\„§~D¬{vJÂ˜«lµĂb–¤p€ŌŰNĄ¨ĊXW|ų ¿¾ɄĦƐMT”‡òP˜÷fØĶK¢ȝ˔Sô¹òEð­”`Ɩ½ǒÂň×äı–§ĤƝ§C~¡‚hlå‚ǺŦŞkâ’~}ŽFøàIJaĞ‚fƠ¥Ž„Ŕdž˜®U¸ˆźXœv¢aƆúŪtŠųƠjd•ƺŠƺÅìnrh\\ĺ¯äɝĦ]èpĄ¦´LƞĬŠ´ƤǬ˼Ēɸ¤rºǼ²¨zÌPðŀbþ¹ļD¢¹œ\\ĜÑŚŸ¶ZƄ³àjĨoâŠȴLʉȮŒĐ­ĚăŽÀêZǚŐ¤qȂ\\L¢ŌİfÆs|zºeªÙæ§΢{Ā´ƐÚ¬¨Ĵà²łhʺKÞºÖTŠiƢ¾ªì°`öøu®Ê¾ãØ"],encodeOffsets:[[88824,50096]]}},{type:"Feature",id:"110000",properties:{id:"110000",cp:[116.405285,39.904989],name:"北京",childNum:1},geometry:{type:"Polygon",coordinates:["@@ĽOÁ›ûtŷmiÍt_H»Ĩ±d`й­{bw…Yr“³S]§§o¹€qGtm_Sŧ€“oa›‹FLg‘QN_•dV€@Zom_ć\\ߚc±x¯oœRcfe…£’o§ËgToÛJíĔóu…|wP¤™XnO¢ÉˆŦ¯rNÄā¤zâŖÈRpŢZŠœÚ{GŠrFt¦Òx§ø¹RóäV¤XdˆżâºWbwڍUd®bêņ¾‘jnŎGŃŶŠnzÚSeîĜZczî¾i]͜™QaúÍÔiþĩȨWĢ‹ü|Ėu[qb[swP@ÅğP¿{\\‡¥A¨Ï‘Ѩj¯ŠX\\¯œMK‘pA³[H…īu}}"],encodeOffsets:[[120023,41045]]}},{type:"Feature",id:"120000",properties:{id:"120000",cp:[117.190182,39.125596],name:"天津",childNum:1},geometry:{type:"Polygon",coordinates:["@@ŬgX§Ü«E…¶Ḟ“¬O_™ïlÁg“z±AXe™µÄĵ{¶]gitgšIj·›¥îakS€‰¨ÐƎk}ĕ{gB—qGf{¿a†U^fI“ư‹³õ{YƒıëNĿžk©ïËZŏ‘R§òoY×Ógc…ĥs¡bġ«@dekąI[nlPqCnp{ˆō³°`{PNdƗqSÄĻNNâyj]äžÒD ĬH°Æ]~¡HO¾ŒX}ÐxŒgp“gWˆrDGˆŒpù‚Š^L‚ˆrzWxˆZ^¨´T\\|~@I‰zƒ–bĤ‹œjeĊªz£®Ĕvě€L†mV¾Ô_ȔNW~zbĬvG†²ZmDM~”~"],encodeOffsets:[[120237,41215]]}},{type:"Feature",id:"310000",properties:{id:"310000",cp:[121.472644,31.231706],name:"上海",childNum:6},geometry:{type:"MultiPolygon",coordinates:[["@@ɧư¬EpƸÁxc‡"],["@@©„ªƒ"],["@@”MA‹‘š"],["@@Qp݁E§ÉC¾"],["@@bŝՕÕEȣÚƥêImɇǦèÜĠŒÚžÃƌÃ͎ó"],["@@ǜûȬɋŠŭ™×^‰sYŒɍDŋ‘ŽąñCG²«ªč@h–_p¯A{‡oloY€¬j@IJ`•gQڛhr|ǀ^MIJvtbe´R¯Ô¬¨YŽô¤r]ì†Ƭį"]],encodeOffsets:[[[124702,32062]],[[124547,32200]],[[124808,31991]],[[124726,32110]],[[124903,32376]],[[124438,32149]]]}},{type:"Feature",id:"500000",properties:{id:"500000",cp:[107.304962,29.533155],name:"重庆",childNum:2},geometry:{type:"MultiPolygon",coordinates:[["@@vjG~nGŘŬĶȂƀƾ¹¸ØÎezĆT¸}êЖqHŸðqĖ䒊¥^CƒIj–²p…\\_ æüY|[YxƊæuž°xb®…Űb@~¢NQt°¶‚S栓Ê~rljĔëĚ¢~šuf`‘‚†fa‚ĔJåĊ„nÖ]„jƎćÊ@Š£¾a®£Ű{ŶĕF‹ègLk{Y|¡ĜWƔtƬJÑxq‹±ĢN´‰òK‰™–LÈüD|s`ŋ’ć]ƒÃ‰`đŒMûƱ½~Y°ħ`ƏíW‰½eI‹½{aŸ‘OIrÏ¡ĕŇa†p†µÜƅġ‘œ^ÖÛbÙŽŏml½S‹êqDu[R‹ãË»†ÿw`»y‘¸_ĺę}÷`M¯ċfCVµqʼn÷Z•gg“Œ`d½pDO‡ÎCnœ^uf²ènh¼WtƏxRGg¦…pV„†FI±ŽG^ŒIc´ec‡’G•ĹÞ½sëĬ„h˜xW‚}Kӈe­Xsbk”F¦›L‘ØgTkïƵNï¶}Gy“w\\oñ¡nmĈzjŸ•@™Óc£»Wă¹Ój“_m»ˆ¹·~MvÛaqœ»­‰êœ’\\ÂoVnŽÓØÍ™²«‹bq¿efE „€‹Ĝ^Qž~ Évý‡ş¤²Į‰pEİ}zcĺƒL‹½‡š¿gņ›¡ýE¡ya£³t\\¨\\vú»¼§·Ñr_oÒý¥u‚•_n»_ƒ•At©Þűā§IVeëƒY}{VPÀFA¨ąB}q@|Ou—\\Fm‰QF݅Mw˜å}]•€|FmϋCaƒwŒu_p—¯sfÙgY…DHl`{QEfNysBЦzG¸rHe‚„N\\CvEsÐùÜ_·ÖĉsaQ¯€}_U‡†xÃđŠq›NH¬•Äd^ÝŰR¬ã°wećJEž·vÝ·Hgƒ‚éFXjÉê`|yŒpxkAwœWĐpb¥eOsmzwqChóUQl¥F^laf‹anòsr›EvfQdÁUVf—ÎvÜ^efˆtET¬ôA\\œ¢sJŽnQTjP؈xøK|nBz‰„œĞ»LY‚…FDxӄvr“[ehľš•vN”¢o¾NiÂxGp⬐z›bfZo~hGi’]öF|‰|Nb‡tOMn eA±ŠtPT‡LjpYQ|†SH††YĀxinzDJ€Ìg¢và¥Pg‰_–ÇzII‹€II•„£®S¬„Øs쐣ŒN"],["@@ifjN@s"]],encodeOffsets:[[[109628,30765]],[[111725,31320]]]}},{type:"Feature",id:"810000",properties:{id:"810000",cp:[114.173355,22.320048],name:"香港",childNum:5},geometry:{type:"MultiPolygon",coordinates:[["@@AlBk"],["@@mŽn"],["@@EpFo"],["@@ea¢pl¸Eõ¹‡hj[ƒ]ÔCΖ@lj˜¡uBXŸ…•´‹AI¹…[‹yDUˆ]W`çwZkmc–…M›žp€Åv›}I‹oJlcaƒfёKްä¬XJmРđhI®æÔtSHn€Eˆ„ÒrÈc"],["@@rMUw‡AS®€e"]],encodeOffsets:[[[117111,23002]],[[117072,22876]],[[117045,22887]],[[116975,23082]],[[116882,22747]]]}},{type:"Feature",id:"820000",properties:{id:"820000",cp:[113.54909,22.198951],name:"澳门",childNum:1},geometry:{type:"Polygon",coordinates:["@@kÊd°å§s"],encodeOffsets:[[116279,22639]]}}],UTF8Encoding:!0}):n("ECharts Map is not loaded"):n("ECharts is not Loaded")})?r.apply(t,o):r)||(e.exports=i)}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-7a76.8aa07012.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-7a76.8aa07012.js index b85d227bd..0b4b23e52 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-7a76.8aa07012.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-7a76.8aa07012.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-7a76"],{"0MlO":function(e,r,t){"use strict";t.r(r);var a=t("t3Un");function i(e){return Object(a.a)({url:"/report/pageList",method:"GET",params:e})}function o(e){return Object(a.a)({url:"/report",method:"post",data:e})}function n(e){return Object(a.a)({url:"/report/delete/batch",method:"post",data:e})}function l(e){return Object(a.a)({url:"/report",method:"put",data:e})}function s(e){return Object(a.a)({url:"/report/"+e.id,method:"get",params:{accessKey:e.accessKey}})}var d=t("cLjf"),p=t.n(d),u=t("hDQ3"),c=t.n(u),h=t("W6l8"),m=t("sm2R"),g={components:{Dictionary:t("CJ5O").a},props:{visib:{required:!0,type:Boolean,default:!1},reportCode:{required:!0,type:String,default:function(){return""}},reportName:{required:!0,type:String,default:function(){return""}}},data:function(){return{title:"报表分享",reportShareUrl:"",shareValidTypeOptions:[],dialogForm:{shareValidType:0,reportCode:"",shareUrl:"",shareCode:"",sharePassword:"",sharePasswordFlag:!1},shareLinkFlag1:!0,rules:{shareValidType:[{required:!0,message:"有效期必选",trigger:"change"}]}}},watch:{visib:function(e){e&&this.getSystem()}},created:function(){},methods:{titleBuild:function(){return"【"+this.reportName+"】报表分享"},selectChange:function(e){this.dialogForm.shareValidType=e},getSystem:function(){var e=this;return c()(p.a.mark(function r(){var t,a,i;return p.a.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return e.shareLinkFlag1=!0,r.next=3,Object(m.a)("SHARE_VAILD");case 3:if(t=r.sent,a=t.code,i=t.data,"200"==a){r.next=8;break}return r.abrupt("return");case 8:e.shareValidTypeOptions=i,e.dialogForm.shareValidType=e.shareValidTypeOptions[0].id,e.dialogForm.sharePasswordFlag=!1,e.dialogForm.sharePassword="";case 12:case"end":return r.stop()}},r,e)}))()},createShare:function(){var e=this;return c()(p.a.mark(function r(){var t,a,i;return p.a.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return e.dialogForm.reportCode=e.reportCode,e.dialogForm.shareUrl=window.location.href,r.next=4,Object(h.a)(e.dialogForm);case 4:if(t=r.sent,a=t.code,i=t.data,"200"==a){r.next=9;break}return r.abrupt("return");case 9:e.shareLinkFlag1=!1,e.$message({message:"创建链接成功!",type:"success"}),e.reportShareUrl=i.shareUrl,e.dialogForm.sharePassword=i.sharePassword;case 13:case"end":return r.stop()}},r,e)}))()},copyShare:function(){var e="";e=""==this.dialogForm.sharePassword?"AJ-Report分享链接:"+this.reportShareUrl:"AJ-Report分享链接:"+this.reportShareUrl+" 分享码:"+this.dialogForm.sharePassword,this.copyToClip(e),this.$message({message:"复制链接成功!",type:"success"})},copyToClip:function(e,r){var t=document.createElement("input");t.setAttribute("value",e),document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t)},saveReportShare:function(){var e=this;return c()(p.a.mark(function r(){return p.a.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:({}),e.closeDialog();case 2:case"end":return r.stop()}},r,e)}))()},closeDialog:function(){this.$emit("handleClose")}}},f=t("ZrdR"),b=Object(f.a)(g,function(){var e=this,r=e.$createElement,t=e._self._c||r;return t("el-dialog",{staticClass:"tree_dialog",attrs:{title:e.titleBuild(),width:"30%","close-on-click-modal":!1,center:"",visible:e.visib,"before-close":e.closeDialog},on:{"update:visible":function(r){e.visib=r}}},[e.shareLinkFlag1?t("div",[t("el-form",{ref:"userForm",attrs:{model:e.dialogForm,rules:e.rules,size:"small","label-width":"100px"}},[t("el-form-item",{attrs:{label:"有效期",prop:"shareValidType"}},[t("el-select",{attrs:{placeholder:"请选择",clearable:""},on:{change:e.selectChange},model:{value:e.dialogForm.shareValidType,callback:function(r){e.$set(e.dialogForm,"shareValidType","string"==typeof r?r.trim():r)},expression:"dialogForm.shareValidType"}},e._l(e.shareValidTypeOptions,function(e){return t("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)],1),e._v(" "),t("el-form-item",{attrs:{label:"分享码",prop:"sharePasswordFlag"}},[t("el-switch",{model:{value:e.dialogForm.sharePasswordFlag,callback:function(r){e.$set(e.dialogForm,"sharePasswordFlag",r)},expression:"dialogForm.sharePasswordFlag"}})],1)],1),e._v(" "),t("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.createShare}},[e._v("创建链接")])],1):t("div",[t("el-form",{ref:"userForm",attrs:{model:e.dialogForm,rules:e.rules,size:"small","label-width":"100px"}},[t("el-form-item",{attrs:{label:"链接",prop:"reportShareUrl"}},[t("el-input",{attrs:{disabled:!0},model:{value:e.reportShareUrl,callback:function(r){e.reportShareUrl=r},expression:"reportShareUrl"}})],1),e._v(" "),e.dialogForm.sharePasswordFlag?t("el-form-item",{attrs:{label:"分享码",prop:"sharePassword"}},[t("el-input",{attrs:{disabled:!0},model:{value:e.dialogForm.sharePassword,callback:function(r){e.$set(e.dialogForm,"sharePassword",r)},expression:"dialogForm.sharePassword"}})],1):e._e(),e._v(" "),t("el-row",{attrs:{gutter:10}},[""==e.dialogForm.sharePassword?t("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.copyShare}},[e._v("复制链接")]):e._e(),e._v(" "),""!=e.dialogForm.sharePassword?t("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.copyShare}},[e._v("复制链接和分享码")]):e._e()],1)],1)],1),e._v(" "),t("div",{staticStyle:{"text-align":"center"},attrs:{slot:"footer"},slot:"footer"},[t("el-button",{attrs:{type:"danger",plain:""},on:{click:e.closeDialog}},[e._v("取消")])],1)])},[],!1,null,null,null);b.options.__file="share.vue";var y=b.exports,v=t("Yfch"),F={name:"Report",components:{anjiCrud:t("sYqA").default,Share:y},data:function(){var e=this;return{visibleForShareDialog:!1,reportCodeForShareDialog:"",reportNameForShareDialog:"",crudOption:{title:"报表管理",labelWidth:"120px",queryFormFields:[{inputType:"anji-select",anjiSelectOption:{dictCode:"REPORT_TYPE"},label:"报表类型",field:"reportType"},{inputType:"input",label:"报表名称",field:"reportName"},{inputType:"input",label:"报表编码",field:"reportCode"},{inputType:"input",label:"制作人",field:"reportAuthor"}],buttons:{query:{api:i,permission:"reportManage:query",sort:"update_time",order:"DESC"},queryByPrimarykey:{api:s,permission:"reportManage:detail"},add:{api:o,permission:"reportManage:insert"},delete:{api:n,permission:"reportManage:delete"},edit:{api:l,permission:"reportManage:update"},customButton:{operationWidth:"150px"}},columns:[{label:"",field:"id",primaryKey:!0,tableHide:!0,editHide:!0},{label:"报表名称",placeholder:"",field:"reportName",editField:"reportName",inputType:"input",rules:[{required:!0,message:"请输入报表名称",trigger:"blur"},{min:1,max:100,message:"不超过100个字符",trigger:"blur"}],disabled:!1},{label:"报表编码",placeholder:"唯一标识",field:"reportCode",editField:"reportCode",inputType:"input",rules:[{required:!0,message:"请输入报表编码",trigger:"blur"},{min:1,max:100,message:"不超过100个字符",trigger:"blur"},{validator:v.a,trigger:"blur"}],disabled:"disableOnEdit"},{label:"分组",placeholder:"",field:"reportGroup",tableHide:!0,editHide:!0,editField:"reportGroup",inputType:"input",rules:[{min:1,max:100,message:"不超过100个字符",trigger:"blur"}],disabled:!1,defaultValue:"default"},{label:"报表类型",placeholder:"",field:"reportType",editField:"reportType",inputType:"anji-select",fieldTableRowRenderer:function(r){return e.getDictLabelByCode("REPORT_TYPE",r.reportType)},anjiSelectOption:{dictCode:"REPORT_TYPE"},rules:[{required:!0,message:"请输入报表类型",trigger:"blur"},{min:1,max:20,message:"不超过20个字符",trigger:"blur"}],disabled:"disableOnEdit"},{label:"制作人",placeholder:"",field:"reportAuthor",editField:"reportAuthor",inputType:"input",rules:[{min:1,max:100,message:"不超过100个字符",trigger:"blur"}],disabled:!1},{label:"描述",placeholder:"",field:"reportDesc",editField:"reportDesc",inputType:"input",rules:[{min:1,max:255,message:"不超过255个字符",trigger:"blur"}],disabled:!1},{label:"状态",placeholder:"",field:"enableFlag",fieldTableRowRenderer:function(r){return e.getDictLabelByCode("ENABLE_FLAG",r.enableFlag)},colorStyle:{0:"table-danger",1:"table-success"},editField:"enableFlag",inputType:"anji-select",anjiSelectOption:{dictCode:"ENABLE_FLAG"},rules:[],disabled:!1,defaultValue:1},{label:"删除标记",placeholder:"",field:"deleteFlag",editHide:!0,editField:"deleteFlag",tableHide:!0,inputType:"input",rules:[],disabled:!1},{label:"报表缩略图",placeholder:"",field:"reportImage",editField:"reportImage",inputType:"anji-upload",tableHide:!0,anjiUpload:{limit:1}}],formChange:function(e,r,t,a){}}}},created:function(){},methods:{handleOpenDialog1:function(){alert("自定义按钮1点击事件")},preview:function(e){var r="";r="report_excel"===e.reportType?"/excelreport/viewer":"/bigscreen/viewer";var t=this.$router.resolve({path:r,query:{reportCode:e.reportCode}});window.open(t.href,"_blank")},design:function(e){var r="";r="report_excel"===e.reportType?"/excelreport/designer":"/bigscreen/designer";var t=this.$router.resolve({path:r,query:{reportCode:e.reportCode}});window.open(t.href,"_blank")},shareReport:function(e){"report_excel"!=e.reportType?(this.reportCodeForShareDialog=e.reportCode,this.reportNameForShareDialog=e.reportName,this.visibleForShareDialog=!0):this.$message.warning("暂不支持excel报表分享")}}},w=Object(f.a)(F,function(){var e=this,r=e.$createElement,t=e._self._c||r;return t("anji-crud",{ref:"listPage",attrs:{option:e.crudOption},scopedSlots:e._u([{key:"rowButtonInMore",fn:function(r){return[t("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:view",expression:"'bigScreenManage:view'"}],attrs:{type:"text"},on:{click:function(t){return e.preview(r.msg)}}},[e._v("预览")]),e._v(" "),t("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:design",expression:"'bigScreenManage:design'"}],attrs:{type:"text"},on:{click:function(t){return e.design(r.msg)}}},[e._v("设计")]),e._v(" "),t("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:share",expression:"'bigScreenManage:share'"}],attrs:{type:"text"},on:{click:function(t){return e.shareReport(r.msg)}}},[e._v("分享")])]}},{key:"pageSection",fn:function(){return[t("Share",{attrs:{visib:e.visibleForShareDialog,reportCode:e.reportCodeForShareDialog,reportName:e.reportNameForShareDialog},on:{handleClose:function(r){e.visibleForShareDialog=!1}}})]},proxy:!0}])})},[],!1,null,null,null);w.options.__file="index.vue";r.default=w.exports},CJ5O:function(e,r,t){"use strict";var a=t("cLjf"),i=t.n(a),o=t("hDQ3"),n=t.n(o),l=t("sm2R"),s={name:"GetDictionary",props:{dictKey:String,updataDict:String,value:String},data:function(){return{dictionary:"",dictionaryOptions:[]}},watch:{dictKey:{immediate:!0,handler:function(){this.getSystem()}},value:{handler:function(e){this.dictionary=e},deep:!0}},created:function(){this.getSystem()},mounted:function(){this.dictionary=this.value},methods:{getSystem:function(){var e=this;return n()(i.a.mark(function r(){var t,a,o;return i.a.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,Object(l.a)(e.dictKey);case 2:if(t=r.sent,a=t.code,o=t.data,"200"==a){r.next=7;break}return r.abrupt("return");case 7:e.dictionaryOptions=o;case 8:case"end":return r.stop()}},r,e)}))()},selectChange:function(e){this.$emit("input",e)}}},d=(t("rVG9"),t("ZrdR")),p=Object(d.a)(s,function(){var e=this,r=e.$createElement,t=e._self._c||r;return t("el-select",{attrs:{placeholder:"请选择",clearable:"",size:"mini"},on:{change:e.selectChange},model:{value:e.dictionary,callback:function(r){e.dictionary=r},expression:"dictionary"}},e._l(e.dictionaryOptions,function(e){return t("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)},[],!1,null,"23d4be90",null);p.options.__file="index.vue";r.a=p.exports},W6l8:function(e,r,t){"use strict";t.d(r,"a",function(){return i}),t.d(r,"b",function(){return o});var a=t("t3Un");function i(e){return Object(a.a)({url:"reportDashboard/share",method:"post",data:e})}function o(e){return Object(a.a)({url:"reportShare/detailByCode",method:"get",params:{shareCode:e}})}},Yfch:function(e,r,t){"use strict";function a(e,r,t){""==r||void 0==r||null==r?t():/^[_a-zA-Z0-9]+$/.test(r)?t():t(new Error("英文字母、数字或下划线"))}t.d(r,"a",function(){return a})},ctb9:function(e,r,t){},rVG9:function(e,r,t){"use strict";var a=t("ctb9");t.n(a).a}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-7a76"],{"0MlO":function(e,r,t){"use strict";t.r(r);var a=t("t3Un");function i(e){return Object(a.a)({url:"/report/pageList",method:"GET",params:e})}function o(e){return Object(a.a)({url:"/report",method:"post",data:e})}function n(e){return Object(a.a)({url:"/report/delete/batch",method:"post",data:e})}function l(e){return Object(a.a)({url:"/report",method:"put",data:e})}function s(e){return Object(a.a)({url:"/report/"+e.id,method:"get",params:{accessKey:e.accessKey}})}var d=t("cLjf"),p=t.n(d),u=t("hDQ3"),c=t.n(u),h=t("W6l8"),m=t("sm2R"),g={components:{Dictionary:t("CJ5O").a},props:{visib:{required:!0,type:Boolean,default:!1},reportCode:{required:!0,type:String,default:function(){return""}},reportName:{required:!0,type:String,default:function(){return""}}},data:function(){return{title:"报表分享",reportShareUrl:"",shareValidTypeOptions:[],dialogForm:{shareValidType:0,reportCode:"",shareUrl:"",shareCode:"",sharePassword:"",sharePasswordFlag:!1},shareLinkFlag1:!0,rules:{shareValidType:[{required:!0,message:"有效期必选",trigger:"change"}]}}},watch:{visib:function(e){e&&this.getSystem()}},created:function(){},methods:{titleBuild:function(){return"【"+this.reportName+"】报表分享"},selectChange:function(e){this.dialogForm.shareValidType=e},getSystem:function(){var e=this;return c()(p.a.mark(function r(){var t,a,i;return p.a.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return e.shareLinkFlag1=!0,r.next=3,Object(m.a)("SHARE_VAILD");case 3:if(t=r.sent,a=t.code,i=t.data,"200"==a){r.next=8;break}return r.abrupt("return");case 8:e.shareValidTypeOptions=i,e.dialogForm.shareValidType=e.shareValidTypeOptions[0].id,e.dialogForm.sharePasswordFlag=!1,e.dialogForm.sharePassword="";case 12:case"end":return r.stop()}},r,e)}))()},createShare:function(){var e=this;return c()(p.a.mark(function r(){var t,a,i;return p.a.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return e.dialogForm.reportCode=e.reportCode,e.dialogForm.shareUrl=window.location.href,r.next=4,Object(h.a)(e.dialogForm);case 4:if(t=r.sent,a=t.code,i=t.data,"200"==a){r.next=9;break}return r.abrupt("return");case 9:e.shareLinkFlag1=!1,e.$message({message:"创建链接成功!",type:"success"}),e.reportShareUrl=i.shareUrl,e.dialogForm.sharePassword=i.sharePassword;case 13:case"end":return r.stop()}},r,e)}))()},copyShare:function(){var e="";e=""==this.dialogForm.sharePassword?"AJ-Report分享链接:"+this.reportShareUrl:"AJ-Report分享链接:"+this.reportShareUrl+" 分享码:"+this.dialogForm.sharePassword,this.copyToClip(e),this.$message({message:"复制链接成功!",type:"success"})},copyToClip:function(e,r){var t=document.createElement("input");t.setAttribute("value",e),document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t)},saveReportShare:function(){var e=this;return c()(p.a.mark(function r(){return p.a.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:({}),e.closeDialog();case 2:case"end":return r.stop()}},r,e)}))()},closeDialog:function(){this.$emit("handleClose")}}},f=t("ZrdR"),b=Object(f.a)(g,function(){var e=this,r=e.$createElement,t=e._self._c||r;return t("el-dialog",{staticClass:"tree_dialog",attrs:{title:e.titleBuild(),width:"30%","close-on-click-modal":!1,center:"",visible:e.visib,"before-close":e.closeDialog},on:{"update:visible":function(r){e.visib=r}}},[e.shareLinkFlag1?t("div",[t("el-form",{ref:"userForm",attrs:{model:e.dialogForm,rules:e.rules,size:"small","label-width":"100px"}},[t("el-form-item",{attrs:{label:"有效期",prop:"shareValidType"}},[t("el-select",{attrs:{placeholder:"请选择",clearable:""},on:{change:e.selectChange},model:{value:e.dialogForm.shareValidType,callback:function(r){e.$set(e.dialogForm,"shareValidType","string"==typeof r?r.trim():r)},expression:"dialogForm.shareValidType"}},e._l(e.shareValidTypeOptions,function(e){return t("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)],1),e._v(" "),t("el-form-item",{attrs:{label:"分享码",prop:"sharePasswordFlag"}},[t("el-switch",{model:{value:e.dialogForm.sharePasswordFlag,callback:function(r){e.$set(e.dialogForm,"sharePasswordFlag",r)},expression:"dialogForm.sharePasswordFlag"}})],1)],1),e._v(" "),t("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.createShare}},[e._v("创建链接")])],1):t("div",[t("el-form",{ref:"userForm",attrs:{model:e.dialogForm,rules:e.rules,size:"small","label-width":"100px"}},[t("el-form-item",{attrs:{label:"链接",prop:"reportShareUrl"}},[t("el-input",{attrs:{disabled:!0},model:{value:e.reportShareUrl,callback:function(r){e.reportShareUrl=r},expression:"reportShareUrl"}})],1),e._v(" "),e.dialogForm.sharePasswordFlag?t("el-form-item",{attrs:{label:"分享码",prop:"sharePassword"}},[t("el-input",{attrs:{disabled:!0},model:{value:e.dialogForm.sharePassword,callback:function(r){e.$set(e.dialogForm,"sharePassword",r)},expression:"dialogForm.sharePassword"}})],1):e._e(),e._v(" "),t("el-row",{attrs:{gutter:10}},[""==e.dialogForm.sharePassword?t("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.copyShare}},[e._v("复制链接")]):e._e(),e._v(" "),""!=e.dialogForm.sharePassword?t("el-button",{staticStyle:{"margin-left":"45px"},attrs:{type:"primary",plain:""},on:{click:e.copyShare}},[e._v("复制链接和分享码")]):e._e()],1)],1)],1),e._v(" "),t("div",{staticStyle:{"text-align":"center"},attrs:{slot:"footer"},slot:"footer"},[t("el-button",{attrs:{type:"danger",plain:""},on:{click:e.closeDialog}},[e._v("取消")])],1)])},[],!1,null,null,null);b.options.__file="share.vue";var y=b.exports,v=t("Yfch"),F={name:"Report",components:{anjiCrud:t("sYqA").default,Share:y},data:function(){var e=this;return{visibleForShareDialog:!1,reportCodeForShareDialog:"",reportNameForShareDialog:"",crudOption:{title:"报表管理",labelWidth:"120px",queryFormFields:[{inputType:"anji-select",anjiSelectOption:{dictCode:"REPORT_TYPE"},label:"报表类型",field:"reportType"},{inputType:"input",label:"报表名称",field:"reportName"},{inputType:"input",label:"报表编码",field:"reportCode"},{inputType:"input",label:"制作人",field:"reportAuthor"}],buttons:{query:{api:i,permission:"reportManage:query",sort:"update_time",order:"DESC"},queryByPrimarykey:{api:s,permission:"reportManage:detail"},add:{api:o,permission:"reportManage:insert"},delete:{api:n,permission:"reportManage:delete"},edit:{api:l,permission:"reportManage:update"},customButton:{operationWidth:"150px"}},columns:[{label:"",field:"id",primaryKey:!0,tableHide:!0,editHide:!0},{label:"报表名称",placeholder:"",field:"reportName",editField:"reportName",inputType:"input",rules:[{required:!0,message:"请输入报表名称",trigger:"blur"},{min:1,max:100,message:"不超过100个字符",trigger:"blur"}],disabled:!1},{label:"报表编码",placeholder:"唯一标识",field:"reportCode",editField:"reportCode",inputType:"input",rules:[{required:!0,message:"请输入报表编码",trigger:"blur"},{min:1,max:100,message:"不超过100个字符",trigger:"blur"},{validator:v.a,trigger:"blur"}],disabled:"disableOnEdit"},{label:"分组",placeholder:"",field:"reportGroup",tableHide:!0,editHide:!0,editField:"reportGroup",inputType:"input",rules:[{min:1,max:100,message:"不超过100个字符",trigger:"blur"}],disabled:!1,defaultValue:"default"},{label:"报表类型",placeholder:"",field:"reportType",editField:"reportType",inputType:"anji-select",fieldTableRowRenderer:function(r){return e.getDictLabelByCode("REPORT_TYPE",r.reportType)},anjiSelectOption:{dictCode:"REPORT_TYPE"},rules:[{required:!0,message:"请输入报表类型",trigger:"blur"},{min:1,max:20,message:"不超过20个字符",trigger:"blur"}],disabled:"disableOnEdit"},{label:"制作人",placeholder:"",field:"reportAuthor",editField:"reportAuthor",inputType:"input",rules:[{min:1,max:100,message:"不超过100个字符",trigger:"blur"}],disabled:!1},{label:"描述",placeholder:"",field:"reportDesc",editField:"reportDesc",inputType:"input",rules:[{min:1,max:255,message:"不超过255个字符",trigger:"blur"}],disabled:!1},{label:"状态",placeholder:"",field:"enableFlag",fieldTableRowRenderer:function(r){return e.getDictLabelByCode("ENABLE_FLAG",r.enableFlag)},colorStyle:{0:"table-danger",1:"table-success"},editField:"enableFlag",inputType:"anji-select",anjiSelectOption:{dictCode:"ENABLE_FLAG"},rules:[],disabled:!1,defaultValue:1},{label:"删除标记",placeholder:"",field:"deleteFlag",editHide:!0,editField:"deleteFlag",tableHide:!0,inputType:"input",rules:[],disabled:!1},{label:"报表缩略图",placeholder:"",field:"reportImage",editField:"reportImage",inputType:"anji-upload",tableHide:!0,anjiUpload:{limit:1}}],formChange:function(e,r,t,a){}}}},created:function(){},methods:{handleOpenDialog1:function(){alert("自定义按钮1点击事件")},preview:function(e){var r="";r="report_excel"===e.reportType?"/excelreport/viewer":"/bigscreen/viewer";var t=this.$router.resolve({path:r,query:{reportCode:e.reportCode}});window.open(t.href,"_blank")},design:function(e){var r="";r="report_excel"===e.reportType?"/excelreport/designer":"/bigscreen/designer";var t=this.$router.resolve({path:r,query:{reportCode:e.reportCode}});window.open(t.href,"_blank")},shareReport:function(e){"report_excel"!=e.reportType?(this.reportCodeForShareDialog=e.reportCode,this.reportNameForShareDialog=e.reportName,this.visibleForShareDialog=!0):this.$message.warning("暂不支持excel报表分享")}}},w=Object(f.a)(F,function(){var e=this,r=e.$createElement,t=e._self._c||r;return t("anji-crud",{ref:"listPage",attrs:{option:e.crudOption},scopedSlots:e._u([{key:"rowButtonInMore",fn:function(r){return[t("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:view",expression:"'bigScreenManage:view'"}],attrs:{type:"text"},on:{click:function(t){return e.preview(r.msg)}}},[e._v("预览")]),e._v(" "),t("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:design",expression:"'bigScreenManage:design'"}],attrs:{type:"text"},on:{click:function(t){return e.design(r.msg)}}},[e._v("设计")]),e._v(" "),t("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"bigScreenManage:share",expression:"'bigScreenManage:share'"}],attrs:{type:"text"},on:{click:function(t){return e.shareReport(r.msg)}}},[e._v("分享")])]}},{key:"pageSection",fn:function(){return[t("Share",{attrs:{visib:e.visibleForShareDialog,reportCode:e.reportCodeForShareDialog,reportName:e.reportNameForShareDialog},on:{handleClose:function(r){e.visibleForShareDialog=!1}}})]},proxy:!0}])})},[],!1,null,null,null);w.options.__file="index.vue";r.default=w.exports},CJ5O:function(e,r,t){"use strict";var a=t("cLjf"),i=t.n(a),o=t("hDQ3"),n=t.n(o),l=t("sm2R"),s={name:"GetDictionary",props:{dictKey:String,updataDict:String,value:String},data:function(){return{dictionary:"",dictionaryOptions:[]}},watch:{dictKey:{immediate:!0,handler:function(){this.getSystem()}},value:{handler:function(e){this.dictionary=e},deep:!0}},created:function(){this.getSystem()},mounted:function(){this.dictionary=this.value},methods:{getSystem:function(){var e=this;return n()(i.a.mark(function r(){var t,a,o;return i.a.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,Object(l.a)(e.dictKey);case 2:if(t=r.sent,a=t.code,o=t.data,"200"==a){r.next=7;break}return r.abrupt("return");case 7:e.dictionaryOptions=o;case 8:case"end":return r.stop()}},r,e)}))()},selectChange:function(e){this.$emit("input",e)}}},d=(t("rVG9"),t("ZrdR")),p=Object(d.a)(s,function(){var e=this,r=e.$createElement,t=e._self._c||r;return t("el-select",{attrs:{placeholder:"请选择",clearable:"",size:"mini"},on:{change:e.selectChange},model:{value:e.dictionary,callback:function(r){e.dictionary=r},expression:"dictionary"}},e._l(e.dictionaryOptions,function(e){return t("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)},[],!1,null,"23d4be90",null);p.options.__file="index.vue";r.a=p.exports},W6l8:function(e,r,t){"use strict";t.d(r,"a",function(){return i}),t.d(r,"b",function(){return o});var a=t("t3Un");function i(e){return Object(a.a)({url:"reportDashboard/share",method:"post",data:e})}function o(e){return Object(a.a)({url:"reportShare/detailByCode",method:"get",params:{shareCode:e}})}},Yfch:function(e,r,t){"use strict";function a(e,r,t){""==r||void 0==r||null==r?t():/^[_a-zA-Z0-9]+$/.test(r)?t():t(new Error("英文字母、数字或下划线"))}t.d(r,"a",function(){return a})},ctb9:function(e,r,t){},rVG9:function(e,r,t){"use strict";var a=t("ctb9");t.n(a).a}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-8f85.1141711b.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-8f85.1141711b.js index 5616faa01..41496f6ee 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-8f85.1141711b.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-8f85.1141711b.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-8f85"],{"6a/n":function(e,t,r){"use strict";(function(e){r.d(t,"a",function(){return p});var n,i,o=function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();if("object"==typeof e)i="win32"===e.platform;else if("object"==typeof navigator){var a=navigator.userAgent;i=a.indexOf("Windows")>=0}var s=/^\w[\w\d+.-]*$/,u=/^\//,c=/^\/\//;var l="",f="/",h=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,p=function(){function e(e,t,r,n,i,o){void 0===o&&(o=!1),"object"==typeof e?(this.scheme=e.scheme||l,this.authority=e.authority||l,this.path=e.path||l,this.query=e.query||l,this.fragment=e.fragment||l):(this.scheme=function(e,t){return e||t?e:"file"}(e,o),this.authority=t||l,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==f&&(t=f+t):t=f}return t}(this.scheme,r||l),this.query=n||l,this.fragment=i||l,function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!s.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!u.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(c.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,o))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return b(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,r=e.authority,n=e.path,i=e.query,o=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=l),void 0===r?r=this.authority:null===r&&(r=l),void 0===n?n=this.path:null===n&&(n=l),void 0===i?i=this.query:null===i&&(i=l),void 0===o?o=this.fragment:null===o&&(o=l),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&o===this.fragment?this:new d(t,r,n,i,o)},e.parse=function(e,t){void 0===t&&(t=!1);var r=h.exec(e);return r?new d(r[2]||l,decodeURIComponent(r[4]||l),decodeURIComponent(r[5]||l),decodeURIComponent(r[7]||l),decodeURIComponent(r[9]||l),t):new d(l,l,l,l,l)},e.file=function(e){var t=l;if(i&&(e=e.replace(/\\/g,f)),e[0]===f&&e[1]===f){var r=e.indexOf(f,2);-1===r?(t=e.substring(2),e=f):(t=e.substring(2,r),e=e.substring(r)||f)}return new d("file",t,e,l,l)},e.from=function(e){return new d(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),x(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var r=new d(t);return r._formatted=t.external,r._fsPath=t._sep===m?t.fsPath:null,r}return t},e}(),m=i?1:void 0,d=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return o(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=b(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?x(this,!0):(this._formatted||(this._formatted=x(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=m),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(p),g=((n={})[58]="%3A",n[47]="%2F",n[63]="%3F",n[35]="%23",n[91]="%5B",n[93]="%5D",n[64]="%40",n[33]="%21",n[36]="%24",n[38]="%26",n[39]="%27",n[40]="%28",n[41]="%29",n[42]="%2A",n[43]="%2B",n[44]="%2C",n[59]="%3B",n[61]="%3D",n[32]="%20",n);function v(e,t){for(var r=void 0,n=-1,i=0;i<e.length;i++){var o=e.charCodeAt(i);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o)-1!==n&&(r+=encodeURIComponent(e.substring(n,i)),n=-1),void 0!==r&&(r+=e.charAt(i));else{void 0===r&&(r=e.substr(0,i));var a=g[o];void 0!==a?(-1!==n&&(r+=encodeURIComponent(e.substring(n,i)),n=-1),r+=a):-1===n&&(n=i)}}return-1!==n&&(r+=encodeURIComponent(e.substring(n))),void 0!==r?r:e}function y(e){for(var t=void 0,r=0;r<e.length;r++){var n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=g[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function b(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,i&&(t=t.replace(/\//g,"\\")),t}function x(e,t){var r=t?y:v,n="",i=e.scheme,o=e.authority,a=e.path,s=e.query,u=e.fragment;if(i&&(n+=i,n+=":"),(o||"file"===i)&&(n+=f,n+=f),o){var c=o.indexOf("@");if(-1!==c){var l=o.substr(0,c);o=o.substr(c+1),-1===(c=l.indexOf(":"))?n+=r(l,!1):(n+=r(l.substr(0,c),!1),n+=":",n+=r(l.substr(c+1),!1)),n+="@"}-1===(c=(o=o.toLowerCase()).indexOf(":"))?n+=r(o,!1):(n+=r(o.substr(0,c),!1),n+=o.substr(c))}if(a){if(a.length>=3&&47===a.charCodeAt(0)&&58===a.charCodeAt(2))(h=a.charCodeAt(1))>=65&&h<=90&&(a="/"+String.fromCharCode(h+32)+":"+a.substr(3));else if(a.length>=2&&58===a.charCodeAt(1)){var h;(h=a.charCodeAt(0))>=65&&h<=90&&(a=String.fromCharCode(h+32)+":"+a.substr(2))}n+=r(a,!0)}return s&&(n+="?",n+=r(s,!1)),u&&(n+="#",n+=t?u:v(u,!1)),n}}).call(this,r("TDnd"))},cm7A:function(e,t,r){"use strict";r.r(t);var n,i=function(){function e(e){var t=this;this._defaults=e,this._worker=null,this._idleCheckInterval=setInterval(function(){return t._checkIfIdle()},3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(function(){return t._stopWorker()})}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()},e.prototype._checkIfIdle=function(){this._worker&&(Date.now()-this._lastUsedTime>12e4&&this._stopWorker())},e.prototype._getClient=function(){return this._lastUsedTime=Date.now(),this._client||(this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/json/jsonWorker",label:this._defaults.languageId,createData:{languageSettings:this._defaults.diagnosticsOptions,languageId:this._defaults.languageId,enableSchemaRequest:this._defaults.diagnosticsOptions.enableSchemaRequest}}),this._client=this._worker.getProxy()),this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return this._getClient().then(function(t){e=t}).then(function(e){return t._worker.withSyncedResources(r)}).then(function(t){return e})},e}();function o(e,t){void 0===t&&(t=!1);var r=e.length,n=0,i="",o=0,c=16,l=0,f=0,h=0,p=0,m=0;function d(t,r){for(var i=0,o=0;i<t||!r;){var a=e.charCodeAt(n);if(a>=48&&a<=57)o=16*o+a-48;else if(a>=65&&a<=70)o=16*o+a-65+10;else{if(!(a>=97&&a<=102))break;o=16*o+a-97+10}n++,i++}return i<t&&(o=-1),o}function g(){if(i="",m=0,o=n,f=l,p=h,n>=r)return o=r,c=17;var t=e.charCodeAt(n);if(a(t)){do{n++,i+=String.fromCharCode(t),t=e.charCodeAt(n)}while(a(t));return c=15}if(s(t))return n++,i+=String.fromCharCode(t),13===t&&10===e.charCodeAt(n)&&(n++,i+="\n"),l++,h=n,c=14;switch(t){case 123:return n++,c=1;case 125:return n++,c=2;case 91:return n++,c=3;case 93:return n++,c=4;case 58:return n++,c=6;case 44:return n++,c=5;case 34:return n++,i=function(){for(var t="",i=n;;){if(n>=r){t+=e.substring(i,n),m=2;break}var o=e.charCodeAt(n);if(34===o){t+=e.substring(i,n),n++;break}if(92!==o){if(o>=0&&o<=31){if(s(o)){t+=e.substring(i,n),m=2;break}m=6}n++}else{if(t+=e.substring(i,n),++n>=r){m=2;break}switch(e.charCodeAt(n++)){case 34:t+='"';break;case 92:t+="\\";break;case 47:t+="/";break;case 98:t+="\b";break;case 102:t+="\f";break;case 110:t+="\n";break;case 114:t+="\r";break;case 116:t+="\t";break;case 117:var a=d(4,!0);a>=0?t+=String.fromCharCode(a):m=4;break;default:m=5}i=n}}return t}(),c=10;case 47:var g=n-1;if(47===e.charCodeAt(n+1)){for(n+=2;n<r&&!s(e.charCodeAt(n));)n++;return i=e.substring(g,n),c=12}if(42===e.charCodeAt(n+1)){n+=2;for(var y=r-1,b=!1;n<y;){var x=e.charCodeAt(n);if(42===x&&47===e.charCodeAt(n+1)){n+=2,b=!0;break}n++,s(x)&&(13===x&&10===e.charCodeAt(n)&&n++,l++,h=n)}return b||(n++,m=1),i=e.substring(g,n),c=13}return i+=String.fromCharCode(t),n++,c=16;case 45:if(i+=String.fromCharCode(t),++n===r||!u(e.charCodeAt(n)))return c=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return i+=function(){var t=n;if(48===e.charCodeAt(n))n++;else for(n++;n<e.length&&u(e.charCodeAt(n));)n++;if(n<e.length&&46===e.charCodeAt(n)){if(!(++n<e.length&&u(e.charCodeAt(n))))return m=3,e.substring(t,n);for(n++;n<e.length&&u(e.charCodeAt(n));)n++}var r=n;if(n<e.length&&(69===e.charCodeAt(n)||101===e.charCodeAt(n)))if((++n<e.length&&43===e.charCodeAt(n)||45===e.charCodeAt(n))&&n++,n<e.length&&u(e.charCodeAt(n))){for(n++;n<e.length&&u(e.charCodeAt(n));)n++;r=n}else m=3;return e.substring(t,r)}(),c=11;default:for(;n<r&&v(t);)n++,t=e.charCodeAt(n);if(o!==n){switch(i=e.substring(o,n)){case"true":return c=8;case"false":return c=9;case"null":return c=7}return c=16}return i+=String.fromCharCode(t),n++,c=16}}function v(e){if(a(e)||s(e))return!1;switch(e){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}return{setPosition:function(e){n=e,i="",o=0,c=16,m=0},getPosition:function(){return n},scan:t?function(){var e;do{e=g()}while(e>=12&&e<=15);return e}:g,getToken:function(){return c},getTokenValue:function(){return i},getTokenOffset:function(){return o},getTokenLength:function(){return n-o},getTokenStartLine:function(){return f},getTokenStartCharacter:function(){return o-p},getTokenError:function(){return m}}}function a(e){return 32===e||9===e||11===e||12===e||160===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function s(e){return 10===e||13===e||8232===e||8233===e}function u(e){return e>=48&&e<=57}function c(e,t,r){void 0===r&&(r=n.DEFAULT);var i=o(e,!1);function a(e){return e?function(){return e(i.getTokenOffset(),i.getTokenLength(),i.getTokenStartLine(),i.getTokenStartCharacter())}:function(){return!0}}function s(e){return e?function(t){return e(t,i.getTokenOffset(),i.getTokenLength(),i.getTokenStartLine(),i.getTokenStartCharacter())}:function(){return!0}}var u=a(t.onObjectBegin),c=s(t.onObjectProperty),l=a(t.onObjectEnd),f=a(t.onArrayBegin),h=a(t.onArrayEnd),p=s(t.onLiteralValue),m=s(t.onSeparator),d=a(t.onComment),g=s(t.onError),v=r&&r.disallowComments,y=r&&r.allowTrailingComma;function b(){for(;;){var e=i.scan();switch(i.getTokenError()){case 4:x(14);break;case 5:x(15);break;case 3:x(13);break;case 1:v||x(11);break;case 2:x(12);break;case 6:x(16)}switch(e){case 12:case 13:v?x(10):d();break;case 16:x(1);break;case 15:case 14:break;default:return e}}}function x(e,t,r){if(void 0===t&&(t=[]),void 0===r&&(r=[]),g(e),t.length+r.length>0)for(var n=i.getToken();17!==n;){if(-1!==t.indexOf(n)){b();break}if(-1!==r.indexOf(n))break;n=b()}}function S(e){var t=i.getTokenValue();return e?p(t):c(t),b(),!0}function k(){switch(i.getToken()){case 3:return function(){f(),b();for(var e=!1;4!==i.getToken()&&17!==i.getToken();){if(5===i.getToken()){if(e||x(4,[],[]),m(","),b(),4===i.getToken()&&y)break}else e&&x(6,[],[]);k()||x(4,[],[4,5]),e=!0}return h(),4!==i.getToken()?x(8,[4],[]):b(),!0}();case 1:return function(){u(),b();for(var e=!1;2!==i.getToken()&&17!==i.getToken();){if(5===i.getToken()){if(e||x(4,[],[]),m(","),b(),2===i.getToken()&&y)break}else e&&x(6,[],[]);(10!==i.getToken()?(x(3,[],[2,5]),0):(S(!1),6===i.getToken()?(m(":"),b(),k()||x(4,[],[2,5])):x(5,[],[2,5]),1))||x(4,[],[2,5]),e=!0}return l(),2!==i.getToken()?x(7,[2],[]):b(),!0}();case 10:return S(!0);default:return function(){switch(i.getToken()){case 11:var e=0;try{"number"!=typeof(e=JSON.parse(i.getTokenValue()))&&(x(2),e=0)}catch(e){x(2)}p(e);break;case 7:p(null);break;case 8:p(!0);break;case 9:p(!1);break;default:return!1}return b(),!0}()}}return b(),17===i.getToken()?!!r.allowEmptyContent||(x(4,[],[]),!1):k()?(17!==i.getToken()&&x(9,[],[]),!0):(x(4,[],[]),!1)}!function(e){e.DEFAULT={allowTrailingComma:!1}}(n||(n={}));var l,f,h,p,m,d,g,v,y,b,x,S,k,C,w,A,I,T,E,O,j=o,P=function(e,t,r){void 0===t&&(t=[]),void 0===r&&(r=n.DEFAULT);var i=null,o=[],a=[];function s(e){Array.isArray(o)?o.push(e):null!==i&&(o[i]=e)}return c(e,{onObjectBegin:function(){var e={};s(e),a.push(o),o=e,i=null},onObjectProperty:function(e){i=e},onObjectEnd:function(){o=a.pop()},onArrayBegin:function(){var e=[];s(e),a.push(o),o=e,i=null},onArrayEnd:function(){o=a.pop()},onLiteralValue:s,onError:function(e,r,n){t.push({error:e,offset:r,length:n})}},r),o[0]},M=function e(t,r,n){if(void 0===n&&(n=!1),function(e,t,r){return void 0===r&&(r=!1),t>=e.offset&&t<e.offset+e.length||r&&t===e.offset+e.length}(t,r,n)){var i=t.children;if(Array.isArray(i))for(var o=0;o<i.length&&i[o].offset<=r;o++){var a=e(i[o],r,n);if(a)return a}return t}},_=function e(t){if(!t.parent||!t.parent.children)return[];var r=e(t.parent);if("property"===t.parent.type){var n=t.parent.children[0].value;r.push(n)}else if("array"===t.parent.type){var i=t.parent.children.indexOf(t);-1!==i&&r.push(i)}return r},V=function e(t){switch(t.type){case"array":return t.children.map(e);case"object":for(var r=Object.create(null),n=0,i=t.children;n<i.length;n++){var o=i[n],a=o.children[1];a&&(r[o.children[0].value]=e(a))}return r;case"null":case"string":case"number":case"boolean":return t.value;default:return}};function F(e,t){if(e===t)return!0;if(null===e||void 0===e||null===t||void 0===t)return!1;if(typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)!==Array.isArray(t))return!1;var r,n;if(Array.isArray(e)){if(e.length!==t.length)return!1;for(r=0;r<e.length;r++)if(!F(e[r],t[r]))return!1}else{var i=[];for(n in e)i.push(n);i.sort();var o=[];for(n in t)o.push(n);if(o.sort(),!F(i,o))return!1;for(r=0;r<i.length;r++)if(!F(e[i[r]],t[i[r]]))return!1}return!0}function N(e){return"number"==typeof e}function R(e){return void 0!==e}function $(e){return"boolean"==typeof e}!function(e){e.create=function(e,t){return{line:e,character:t}},e.is=function(e){var t=e;return me.objectLiteral(t)&&me.number(t.line)&&me.number(t.character)}}(l||(l={})),function(e){e.create=function(e,t,r,n){if(me.number(e)&&me.number(t)&&me.number(r)&&me.number(n))return{start:l.create(e,t),end:l.create(r,n)};if(l.is(e)&&l.is(t))return{start:e,end:t};throw new Error("Range#create called with invalid arguments["+e+", "+t+", "+r+", "+n+"]")},e.is=function(e){var t=e;return me.objectLiteral(t)&&l.is(t.start)&&l.is(t.end)}}(f||(f={})),function(e){e.create=function(e,t){return{uri:e,range:t}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.string(t.uri)||me.undefined(t.uri))}}(h||(h={})),function(e){e.create=function(e,t,r,n){return{targetUri:e,targetRange:t,targetSelectionRange:r,originSelectionRange:n}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.targetRange)&&me.string(t.targetUri)&&(f.is(t.targetSelectionRange)||me.undefined(t.targetSelectionRange))&&(f.is(t.originSelectionRange)||me.undefined(t.originSelectionRange))}}(p||(p={})),function(e){e.create=function(e,t,r,n){return{red:e,green:t,blue:r,alpha:n}},e.is=function(e){var t=e;return me.number(t.red)&&me.number(t.green)&&me.number(t.blue)&&me.number(t.alpha)}}(m||(m={})),function(e){e.create=function(e,t){return{range:e,color:t}},e.is=function(e){var t=e;return f.is(t.range)&&m.is(t.color)}}(d||(d={})),function(e){e.create=function(e,t,r){return{label:e,textEdit:t,additionalTextEdits:r}},e.is=function(e){var t=e;return me.string(t.label)&&(me.undefined(t.textEdit)||w.is(t))&&(me.undefined(t.additionalTextEdits)||me.typedArray(t.additionalTextEdits,w.is))}}(g||(g={})),function(e){e.Comment="comment",e.Imports="imports",e.Region="region"}(v||(v={})),function(e){e.create=function(e,t,r,n,i){var o={startLine:e,endLine:t};return me.defined(r)&&(o.startCharacter=r),me.defined(n)&&(o.endCharacter=n),me.defined(i)&&(o.kind=i),o},e.is=function(e){var t=e;return me.number(t.startLine)&&me.number(t.startLine)&&(me.undefined(t.startCharacter)||me.number(t.startCharacter))&&(me.undefined(t.endCharacter)||me.number(t.endCharacter))&&(me.undefined(t.kind)||me.string(t.kind))}}(y||(y={})),function(e){e.create=function(e,t){return{location:e,message:t}},e.is=function(e){var t=e;return me.defined(t)&&h.is(t.location)&&me.string(t.message)}}(b||(b={})),function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4}(x||(x={})),function(e){e.Unnecessary=1,e.Deprecated=2}(S||(S={})),function(e){e.create=function(e,t,r,n,i,o){var a={range:e,message:t};return me.defined(r)&&(a.severity=r),me.defined(n)&&(a.code=n),me.defined(i)&&(a.source=i),me.defined(o)&&(a.relatedInformation=o),a},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&me.string(t.message)&&(me.number(t.severity)||me.undefined(t.severity))&&(me.number(t.code)||me.string(t.code)||me.undefined(t.code))&&(me.string(t.source)||me.undefined(t.source))&&(me.undefined(t.relatedInformation)||me.typedArray(t.relatedInformation,b.is))}}(k||(k={})),function(e){e.create=function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var i={title:e,command:t};return me.defined(r)&&r.length>0&&(i.arguments=r),i},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.title)&&me.string(t.command)}}(C||(C={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){var t=e;return me.objectLiteral(t)&&me.string(t.newText)&&f.is(t.range)}}(w||(w={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){var t=e;return me.defined(t)&&D.is(t.textDocument)&&Array.isArray(t.edits)}}(A||(A={})),function(e){e.create=function(e,t){var r={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(r.options=t),r},e.is=function(e){var t=e;return t&&"create"===t.kind&&me.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||me.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||me.boolean(t.options.ignoreIfExists)))}}(I||(I={})),function(e){e.create=function(e,t,r){var n={kind:"rename",oldUri:e,newUri:t};return void 0===r||void 0===r.overwrite&&void 0===r.ignoreIfExists||(n.options=r),n},e.is=function(e){var t=e;return t&&"rename"===t.kind&&me.string(t.oldUri)&&me.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||me.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||me.boolean(t.options.ignoreIfExists)))}}(T||(T={})),function(e){e.create=function(e,t){var r={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(r.options=t),r},e.is=function(e){var t=e;return t&&"delete"===t.kind&&me.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||me.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||me.boolean(t.options.ignoreIfNotExists)))}}(E||(E={})),function(e){e.is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every(function(e){return me.string(e.kind)?I.is(e)||T.is(e)||E.is(e):A.is(e)}))}}(O||(O={}));var L,D,W,U,q,B,K,J,z,H,G,Z,X,Q,Y,ee,te,re,ne,ie,oe,ae,se,ue,ce,le,fe,he=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(w.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(w.replace(e,t))},e.prototype.delete=function(e){this.edits.push(w.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach(function(e){if(A.is(e)){var r=new he(e.edits);t._textEditChanges[e.textDocument.uri]=r}}):e.changes&&Object.keys(e.changes).forEach(function(r){var n=new he(e.changes[r]);t._textEditChanges[r]=n}))}Object.defineProperty(e.prototype,"edit",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(D.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t=e;if(!(n=this._textEditChanges[t.uri])){var r={textDocument:t,edits:i=[]};this._workspaceEdit.documentChanges.push(r),n=new he(i),this._textEditChanges[t.uri]=n}return n}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var n;if(!(n=this._textEditChanges[e])){var i=[];this._workspaceEdit.changes[e]=i,n=new he(i),this._textEditChanges[e]=n}return n},e.prototype.createFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(I.create(e,t))},e.prototype.renameFile=function(e,t,r){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(T.create(e,t,r))},e.prototype.deleteFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(E.create(e,t))},e.prototype.checkDocumentChanges=function(){if(!this._workspaceEdit||!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.")}}();!function(e){e.create=function(e){return{uri:e}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)}}(L||(L={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)&&(null===t.version||me.number(t.version))}}(D||(D={})),function(e){e.create=function(e,t,r,n){return{uri:e,languageId:t,version:r,text:n}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)&&me.string(t.languageId)&&me.number(t.version)&&me.string(t.text)}}(W||(W={})),function(e){e.PlainText="plaintext",e.Markdown="markdown"}(U||(U={})),function(e){e.is=function(t){var r=t;return r===e.PlainText||r===e.Markdown}}(U||(U={})),function(e){e.is=function(e){var t=e;return me.objectLiteral(e)&&U.is(t.kind)&&me.string(t.value)}}(q||(q={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(B||(B={})),function(e){e.PlainText=1,e.Snippet=2}(K||(K={})),function(e){e.Deprecated=1}(J||(J={})),function(e){e.create=function(e){return{label:e}}}(z||(z={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}(H||(H={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){var t=e;return me.string(t)||me.objectLiteral(t)&&me.string(t.language)&&me.string(t.value)}}(G||(G={})),function(e){e.is=function(e){var t=e;return!!t&&me.objectLiteral(t)&&(q.is(t.contents)||G.is(t.contents)||me.typedArray(t.contents,G.is))&&(void 0===e.range||f.is(e.range))}}(Z||(Z={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(X||(X={})),function(e){e.create=function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var i={label:e};return me.defined(t)&&(i.documentation=t),me.defined(r)?i.parameters=r:i.parameters=[],i}}(Q||(Q={})),function(e){e.Text=1,e.Read=2,e.Write=3}(Y||(Y={})),function(e){e.create=function(e,t){var r={range:e};return me.number(t)&&(r.kind=t),r}}(ee||(ee={})),function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(te||(te={})),function(e){e.Deprecated=1}(re||(re={})),function(e){e.create=function(e,t,r,n,i){var o={name:e,kind:t,location:{uri:n,range:r}};return i&&(o.containerName=i),o}}(ne||(ne={})),function(e){e.create=function(e,t,r,n,i,o){var a={name:e,detail:t,kind:r,range:n,selectionRange:i};return void 0!==o&&(a.children=o),a},e.is=function(e){var t=e;return t&&me.string(t.name)&&me.number(t.kind)&&f.is(t.range)&&f.is(t.selectionRange)&&(void 0===t.detail||me.string(t.detail))&&(void 0===t.deprecated||me.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))}}(ie||(ie={})),function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"}(oe||(oe={})),function(e){e.create=function(e,t){var r={diagnostics:e};return void 0!==t&&null!==t&&(r.only=t),r},e.is=function(e){var t=e;return me.defined(t)&&me.typedArray(t.diagnostics,k.is)&&(void 0===t.only||me.typedArray(t.only,me.string))}}(ae||(ae={})),function(e){e.create=function(e,t,r){var n={title:e};return C.is(t)?n.command=t:n.edit=t,void 0!==r&&(n.kind=r),n},e.is=function(e){var t=e;return t&&me.string(t.title)&&(void 0===t.diagnostics||me.typedArray(t.diagnostics,k.is))&&(void 0===t.kind||me.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||C.is(t.command))&&(void 0===t.isPreferred||me.boolean(t.isPreferred))&&(void 0===t.edit||O.is(t.edit))}}(se||(se={})),function(e){e.create=function(e,t){var r={range:e};return me.defined(t)&&(r.data=t),r},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.undefined(t.command)||C.is(t.command))}}(ue||(ue={})),function(e){e.create=function(e,t){return{tabSize:e,insertSpaces:t}},e.is=function(e){var t=e;return me.defined(t)&&me.number(t.tabSize)&&me.boolean(t.insertSpaces)}}(ce||(ce={})),function(e){e.create=function(e,t,r){return{range:e,target:t,data:r}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.undefined(t.target)||me.string(t.target))}}(le||(le={})),function(e){e.create=function(e,t){return{range:e,parent:t}},e.is=function(t){var r=t;return void 0!==r&&f.is(r.range)&&(void 0===r.parent||e.is(r.parent))}}(fe||(fe={}));var pe;!function(e){e.create=function(e,t,r,n){return new de(e,t,r,n)},e.is=function(e){var t=e;return!!(me.defined(t)&&me.string(t.uri)&&(me.undefined(t.languageId)||me.string(t.languageId))&&me.number(t.lineCount)&&me.func(t.getText)&&me.func(t.positionAt)&&me.func(t.offsetAt))},e.applyEdits=function(e,t){for(var r=e.getText(),n=function e(t,r){if(t.length<=1)return t;var n=t.length/2|0,i=t.slice(0,n),o=t.slice(n);e(i,r),e(o,r);for(var a=0,s=0,u=0;a<i.length&&s<o.length;){var c=r(i[a],o[s]);t[u++]=c<=0?i[a++]:o[s++]}for(;a<i.length;)t[u++]=i[a++];for(;s<o.length;)t[u++]=o[s++];return t}(t,function(e,t){var r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=r.length,o=n.length-1;o>=0;o--){var a=n[o],s=e.offsetAt(a.range.start),u=e.offsetAt(a.range.end);if(!(u<=i))throw new Error("Overlapping edit");r=r.substring(0,s)+a.newText+r.substring(u,r.length),i=s}return r}}(pe||(pe={}));var me,de=function(){function e(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,r=!0,n=0;n<t.length;n++){r&&(e.push(n),r=!1);var i=t.charAt(n);r="\r"===i||"\n"===i,"\r"===i&&n+1<t.length&&"\n"===t.charAt(n+1)&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return l.create(0,e);for(;r<n;){var i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}var o=r-1;return l.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e}();!function(e){var t=Object.prototype.toString;e.defined=function(e){return void 0!==e},e.undefined=function(e){return void 0===e},e.boolean=function(e){return!0===e||!1===e},e.string=function(e){return"[object String]"===t.call(e)},e.number=function(e){return"[object Number]"===t.call(e)},e.func=function(e){return"[object Function]"===t.call(e)},e.objectLiteral=function(e){return null!==e&&"object"==typeof e},e.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)}}(me||(me={}));var ge,ve,ye,be=function(){function e(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content},e.prototype.update=function(t,r){for(var n=0,i=t;n<i.length;n++){var o=i[n];if(e.isIncremental(o)){var a=Se(o.range),s=this.offsetAt(a.start),u=this.offsetAt(a.end);this._content=this._content.substring(0,s)+o.text+this._content.substring(u,this._content.length);var c=Math.max(a.start.line,0),l=Math.max(a.end.line,0),f=this._lineOffsets,h=xe(o.text,!1,s);if(l-c===h.length)for(var p=0,m=h.length;p<m;p++)f[p+c+1]=h[p];else h.length<1e4?f.splice.apply(f,[c+1,l-c].concat(h)):this._lineOffsets=f=f.slice(0,c+1).concat(h,f.slice(l+1));var d=o.text.length-(u-s);if(0!==d)for(p=c+1+h.length,m=f.length;p<m;p++)f[p]=f[p]+d}else{if(!e.isFull(o))throw new Error("Unknown change event received");this._content=o.text,this._lineOffsets=void 0}}this._version=r},e.prototype.getLineOffsets=function(){return void 0===this._lineOffsets&&(this._lineOffsets=xe(this._content,!0)),this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return{line:0,character:e};for(;r<n;){var i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}var o=r-1;return{line:o,character:e-t[o]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e.isIncremental=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)},e.isFull=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength},e}();function xe(e,t,r){void 0===r&&(r=0);for(var n=t?[r]:[],i=0;i<e.length;i++){var o=e.charCodeAt(i);13!==o&&10!==o||(13===o&&i+1<e.length&&10===e.charCodeAt(i+1)&&i++,n.push(r+i+1))}return n}function Se(e){var t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function ke(e){var t=Se(e.range);return t!==e.range?{newText:e.newText,range:t}:e}function Ce(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return function(e,t){return 0===t.length?e:e.replace(/\{(\d+)\}/g,function(e,r){var n=r[0];return void 0!==t[n]?t[n]:e})}(t,r)}function we(e){return Ce}!function(e){e.create=function(e,t,r,n){return new be(e,t,r,n)},e.update=function(e,t,r){if(e instanceof be)return e.update(t,r),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){for(var r=e.getText(),n=function e(t,r){if(t.length<=1)return t;var n=t.length/2|0,i=t.slice(0,n),o=t.slice(n);e(i,r),e(o,r);for(var a=0,s=0,u=0;a<i.length&&s<o.length;){var c=r(i[a],o[s]);t[u++]=c<=0?i[a++]:o[s++]}for(;a<i.length;)t[u++]=i[a++];for(;s<o.length;)t[u++]=o[s++];return t}(t.map(ke),function(e,t){var r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=r.length,o=n.length-1;o>=0;o--){var a=n[o],s=e.offsetAt(a.range.start),u=e.offsetAt(a.range.end);if(!(u<=i))throw new Error("Overlapping edit");r=r.substring(0,s)+a.newText+r.substring(u,r.length),i=s}return r}}(ge||(ge={})),function(e){e[e.Undefined=0]="Undefined",e[e.EnumValueMismatch=1]="EnumValueMismatch",e[e.UnexpectedEndOfComment=257]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=258]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=259]="UnexpectedEndOfNumber",e[e.InvalidUnicode=260]="InvalidUnicode",e[e.InvalidEscapeCharacter=261]="InvalidEscapeCharacter",e[e.InvalidCharacter=262]="InvalidCharacter",e[e.PropertyExpected=513]="PropertyExpected",e[e.CommaExpected=514]="CommaExpected",e[e.ColonExpected=515]="ColonExpected",e[e.ValueExpected=516]="ValueExpected",e[e.CommaOrCloseBacketExpected=517]="CommaOrCloseBacketExpected",e[e.CommaOrCloseBraceExpected=518]="CommaOrCloseBraceExpected",e[e.TrailingComma=519]="TrailingComma",e[e.DuplicateKey=520]="DuplicateKey",e[e.CommentNotPermitted=521]="CommentNotPermitted",e[e.SchemaResolveError=768]="SchemaResolveError"}(ve||(ve={})),(ye||(ye={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[U.Markdown,U.PlainText],commitCharactersSupport:!0}}}};var Ae,Ie=function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Te=we(),Ee={"color-hex":{errorMessage:Te("colorHexFormatWarning","Invalid color format. Use #RGB, #RGBA, #RRGGBB or #RRGGBBAA."),pattern:/^#([0-9A-Fa-f]{3,4}|([0-9A-Fa-f]{2}){3,4})$/},"date-time":{errorMessage:Te("dateTimeFormatWarning","String is not a RFC3339 date-time."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},date:{errorMessage:Te("dateFormatWarning","String is not a RFC3339 date."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/i},time:{errorMessage:Te("timeFormatWarning","String is not a RFC3339 time."),pattern:/^([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},email:{errorMessage:Te("emailFormatWarning","String is not an e-mail address."),pattern:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/}},Oe=function(){function e(e,t,r){this.offset=t,this.length=r,this.parent=e}return Object.defineProperty(e.prototype,"children",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype.toString=function(){return"type: "+this.type+" ("+this.offset+"/"+this.length+")"+(this.parent?" parent: {"+this.parent.toString()+"}":"")},e}();(function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="null",n.value=null,n}Ie(t,e)})(Oe),function(e){function t(t,r,n){var i=e.call(this,t,n)||this;return i.type="boolean",i.value=r,i}Ie(t,e)}(Oe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="array",n.items=[],n}Ie(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.items},enumerable:!0,configurable:!0})}(Oe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="number",n.isInteger=!0,n.value=Number.NaN,n}Ie(t,e)}(Oe),function(e){function t(t,r,n){var i=e.call(this,t,r,n)||this;return i.type="string",i.value="",i}Ie(t,e)}(Oe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="property",n.colonOffset=-1,n}Ie(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.valueNode?[this.keyNode,this.valueNode]:[this.keyNode]},enumerable:!0,configurable:!0})}(Oe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="object",n.properties=[],n}Ie(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.properties},enumerable:!0,configurable:!0})}(Oe);function je(e){return $(e)?e?{}:{not:{}}:e}!function(e){e[e.Key=0]="Key",e[e.Enum=1]="Enum"}(Ae||(Ae={}));var Pe=function(){function e(e,t){void 0===e&&(e=-1),void 0===t&&(t=null),this.focusOffset=e,this.exclude=t,this.schemas=[]}return e.prototype.add=function(e){this.schemas.push(e)},e.prototype.merge=function(e){var t;(t=this.schemas).push.apply(t,e.schemas)},e.prototype.include=function(e){return(-1===this.focusOffset||Ne(e,this.focusOffset))&&e!==this.exclude},e.prototype.newSub=function(){return new e(-1,this.exclude)},e}(),Me=function(){function e(){}return Object.defineProperty(e.prototype,"schemas",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype.add=function(e){},e.prototype.merge=function(e){},e.prototype.include=function(e){return!0},e.prototype.newSub=function(){return this},e.instance=new e,e}(),_e=function(){function e(){this.problems=[],this.propertiesMatches=0,this.propertiesValueMatches=0,this.primaryValueMatches=0,this.enumValueMatch=!1,this.enumValues=null}return e.prototype.hasProblems=function(){return!!this.problems.length},e.prototype.mergeAll=function(e){for(var t=0,r=e;t<r.length;t++){var n=r[t];this.merge(n)}},e.prototype.merge=function(e){this.problems=this.problems.concat(e.problems)},e.prototype.mergeEnumValues=function(e){if(!this.enumValueMatch&&!e.enumValueMatch&&this.enumValues&&e.enumValues){this.enumValues=this.enumValues.concat(e.enumValues);for(var t=0,r=this.problems;t<r.length;t++){var n=r[t];n.code===ve.EnumValueMismatch&&(n.message=Te("enumWarning","Value is not accepted. Valid values: {0}.",this.enumValues.map(function(e){return JSON.stringify(e)}).join(", ")))}}},e.prototype.mergePropertyMatch=function(e){this.merge(e),this.propertiesMatches++,(e.enumValueMatch||!e.hasProblems()&&e.propertiesMatches)&&this.propertiesValueMatches++,e.enumValueMatch&&e.enumValues&&1===e.enumValues.length&&this.primaryValueMatches++},e.prototype.compare=function(e){var t=this.hasProblems();return t!==e.hasProblems()?t?-1:1:this.enumValueMatch!==e.enumValueMatch?e.enumValueMatch?-1:1:this.primaryValueMatches!==e.primaryValueMatches?this.primaryValueMatches-e.primaryValueMatches:this.propertiesValueMatches!==e.propertiesValueMatches?this.propertiesValueMatches-e.propertiesValueMatches:this.propertiesMatches-e.propertiesMatches},e}();function Ve(e){return V(e)}function Fe(e){return _(e)}function Ne(e,t,r){return void 0===r&&(r=!1),t>=e.offset&&t<e.offset+e.length||r&&t===e.offset+e.length}!function(){function e(e,t,r){void 0===t&&(t=[]),void 0===r&&(r=[]),this.root=e,this.syntaxErrors=t,this.comments=r}e.prototype.getNodeFromOffset=function(e,t){if(void 0===t&&(t=!1),this.root)return M(this.root,e,t)},e.prototype.visit=function(e){if(this.root){var t=function(r){var n=e(r),i=r.children;if(Array.isArray(i))for(var o=0;o<i.length&&n;o++)n=t(i[o]);return n};t(this.root)}},e.prototype.validate=function(e,t){if(this.root&&t){var r=new _e;return Re(this.root,t,r,Me.instance),r.problems.map(function(t){var r=f.create(e.positionAt(t.location.offset),e.positionAt(t.location.offset+t.location.length));return k.create(r,t.message,t.severity,t.code)})}return null},e.prototype.getMatchingSchemas=function(e,t,r){void 0===t&&(t=-1),void 0===r&&(r=null);var n=new Pe(t,r);return this.root&&e&&Re(this.root,e,new _e,n),n.schemas}}();function Re(e,t,r,n){if(e&&n.include(e)){switch(e.type){case"object":!function(e,t,r,n){for(var i=Object.create(null),o=[],a=0,s=e.properties;a<s.length;a++){var u=s[a],c=u.keyNode.value;i[c]=u.valueNode,o.push(c)}if(Array.isArray(t.required))for(var l=0,f=t.required;l<f.length;l++){var h=f[l];if(!i[h]){var p=e.parent&&"property"===e.parent.type&&e.parent.keyNode,m=p?{offset:p.offset,length:p.length}:{offset:e.offset,length:1};r.problems.push({location:m,severity:x.Warning,message:Te("MissingRequiredPropWarning",'Missing property "{0}".',h)})}}var d=function(e){for(var t=o.indexOf(e);t>=0;)o.splice(t,1),t=o.indexOf(e)};if(t.properties)for(var g=0,v=Object.keys(t.properties);g<v.length;g++){var h=v[g];d(h);var y=t.properties[h],b=i[h];if(b)if($(y))if(y)r.propertiesMatches++,r.propertiesValueMatches++;else{var u=b.parent;r.problems.push({location:{offset:u.keyNode.offset,length:u.keyNode.length},severity:x.Warning,message:t.errorMessage||Te("DisallowedExtraPropWarning","Property {0} is not allowed.",h)})}else{var S=new _e;Re(b,y,S,n),r.mergePropertyMatch(S)}}if(t.patternProperties)for(var k=0,C=Object.keys(t.patternProperties);k<C.length;k++)for(var w=C[k],A=new RegExp(w),I=0,T=o.slice(0);I<T.length;I++){var h=T[I];if(A.test(h)){d(h);var b=i[h];if(b){var y=t.patternProperties[w];if($(y))if(y)r.propertiesMatches++,r.propertiesValueMatches++;else{var u=b.parent;r.problems.push({location:{offset:u.keyNode.offset,length:u.keyNode.length},severity:x.Warning,message:t.errorMessage||Te("DisallowedExtraPropWarning","Property {0} is not allowed.",h)})}else{var S=new _e;Re(b,y,S,n),r.mergePropertyMatch(S)}}}}if("object"==typeof t.additionalProperties)for(var E=0,O=o;E<O.length;E++){var h=O[E],b=i[h];if(b){var S=new _e;Re(b,t.additionalProperties,S,n),r.mergePropertyMatch(S)}}else if(!1===t.additionalProperties&&o.length>0)for(var j=0,P=o;j<P.length;j++){var h=P[j],b=i[h];if(b){var u=b.parent;r.problems.push({location:{offset:u.keyNode.offset,length:u.keyNode.length},severity:x.Warning,message:t.errorMessage||Te("DisallowedExtraPropWarning","Property {0} is not allowed.",h)})}}N(t.maxProperties)&&e.properties.length>t.maxProperties&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("MaxPropWarning","Object has more properties than limit of {0}.",t.maxProperties)});N(t.minProperties)&&e.properties.length<t.minProperties&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("MinPropWarning","Object has fewer properties than the required number of {0}",t.minProperties)});if(t.dependencies)for(var M=0,_=Object.keys(t.dependencies);M<_.length;M++){var c=_[M],V=i[c];if(V){var F=t.dependencies[c];if(Array.isArray(F))for(var R=0,L=F;R<L.length;R++){var D=L[R];i[D]?r.propertiesValueMatches++:r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("RequiredDependentPropWarning","Object is missing property {0} required by property {1}.",D,c)})}else{var y=je(F);if(y){var S=new _e;Re(e,y,S,n),r.mergePropertyMatch(S)}}}}var W=je(t.propertyNames);if(W)for(var U=0,q=e.properties;U<q.length;U++){var B=q[U],c=B.keyNode;c&&Re(c,W,r,Me.instance)}}(e,t,r,n);break;case"array":!function(e,t,r,n){if(Array.isArray(t.items)){for(var i=t.items,o=0;o<i.length;o++){var a=i[o],s=je(a),u=new _e,c=e.items[o];c?(Re(c,s,u,n),r.mergePropertyMatch(u)):e.items.length>=i.length&&r.propertiesValueMatches++}if(e.items.length>i.length)if("object"==typeof t.additionalItems)for(var l=i.length;l<e.items.length;l++){var u=new _e;Re(e.items[l],t.additionalItems,u,n),r.mergePropertyMatch(u)}else!1===t.additionalItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("additionalItemsWarning","Array has too many items according to schema. Expected {0} or fewer.",i.length)})}else{var f=je(t.items);if(f)for(var h=0,p=e.items;h<p.length;h++){var c=p[h],u=new _e;Re(c,f,u,n),r.mergePropertyMatch(u)}}var m=je(t.contains);if(m){var d=e.items.some(function(e){var t=new _e;return Re(e,m,t,Me.instance),!t.hasProblems()});d||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Te("requiredItemMissingWarning","Array does not contain required item.")})}N(t.minItems)&&e.items.length<t.minItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("minItemsWarning","Array has too few items. Expected {0} or more.",t.minItems)});N(t.maxItems)&&e.items.length>t.maxItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("maxItemsWarning","Array has too many items. Expected {0} or fewer.",t.maxItems)});if(!0===t.uniqueItems){var g=Ve(e),v=g.some(function(e,t){return t!==g.lastIndexOf(e)});v&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("uniqueItemsWarning","Array has duplicate items.")})}}(e,t,r,n);break;case"string":!function(e,t,r,n){N(t.minLength)&&e.value.length<t.minLength&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("minLengthWarning","String is shorter than the minimum length of {0}.",t.minLength)});N(t.maxLength)&&e.value.length>t.maxLength&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("maxLengthWarning","String is longer than the maximum length of {0}.",t.maxLength)});if(function(e){return"string"==typeof e}(t.pattern)){var i=new RegExp(t.pattern);i.test(e.value)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||Te("patternWarning",'String does not match the pattern of "{0}".',t.pattern)})}if(t.format)switch(t.format){case"uri":case"uri-reference":var o=void 0;if(e.value){var a=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/.exec(e.value);a?a[2]||"uri"!==t.format||(o=Te("uriSchemeMissing","URI with a scheme is expected.")):o=Te("uriMissing","URI is expected.")}else o=Te("uriEmpty","URI expected.");o&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||Te("uriFormatWarning","String is not a URI: {0}",o)});break;case"color-hex":case"date-time":case"date":case"time":case"email":var s=Ee[t.format];e.value&&s.pattern.exec(e.value)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||s.errorMessage})}}(e,t,r);break;case"number":!function(e,t,r,n){var i=e.value;N(t.multipleOf)&&i%t.multipleOf!=0&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("multipleOfWarning","Value is not divisible by {0}.",t.multipleOf)});function o(e,t){return N(t)?t:$(t)&&t?e:void 0}function a(e,t){if(!$(t)||!t)return e}var s=o(t.minimum,t.exclusiveMinimum);N(s)&&i<=s&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("exclusiveMinimumWarning","Value is below the exclusive minimum of {0}.",s)});var u=o(t.maximum,t.exclusiveMaximum);N(u)&&i>=u&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("exclusiveMaximumWarning","Value is above the exclusive maximum of {0}.",u)});var c=a(t.minimum,t.exclusiveMinimum);N(c)&&i<c&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("minimumWarning","Value is below the minimum of {0}.",c)});var l=a(t.maximum,t.exclusiveMaximum);N(l)&&i>l&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("maximumWarning","Value is above the maximum of {0}.",l)})}(e,t,r);break;case"property":return Re(e.valueNode,t,r,n)}!function(){function i(t){return e.type===t||"integer"===t&&"number"===e.type&&e.isInteger}Array.isArray(t.type)?t.type.some(i)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Te("typeArrayMismatchWarning","Incorrect type. Expected one of {0}.",t.type.join(", "))}):t.type&&(i(t.type)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Te("typeMismatchWarning",'Incorrect type. Expected "{0}".',t.type)}));if(Array.isArray(t.allOf))for(var o=0,a=t.allOf;o<a.length;o++){var s=a[o];Re(e,je(s),r,n)}var u=je(t.not);if(u){var c=new _e,l=n.newSub();Re(e,u,c,l),c.hasProblems()||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("notSchemaWarning","Matches a schema that is not allowed.")});for(var f=0,h=l.schemas;f<h.length;f++){var p=h[f];p.inverted=!p.inverted,n.add(p)}}var m=function(t,i){for(var o=[],a=null,s=0,u=t;s<u.length;s++){var c=u[s],l=je(c),f=new _e,h=n.newSub();if(Re(e,l,f,h),f.hasProblems()||o.push(l),a)if(i||f.hasProblems()||a.validationResult.hasProblems()){var p=f.compare(a.validationResult);p>0?a={schema:l,validationResult:f,matchingSchemas:h}:0===p&&(a.matchingSchemas.merge(h),a.validationResult.mergeEnumValues(f))}else a.matchingSchemas.merge(h),a.validationResult.propertiesMatches+=f.propertiesMatches,a.validationResult.propertiesValueMatches+=f.propertiesValueMatches;else a={schema:l,validationResult:f,matchingSchemas:h}}return o.length>1&&i&&r.problems.push({location:{offset:e.offset,length:1},severity:x.Warning,message:Te("oneOfWarning","Matches multiple schemas when only one must validate.")}),null!==a&&(r.merge(a.validationResult),r.propertiesMatches+=a.validationResult.propertiesMatches,r.propertiesValueMatches+=a.validationResult.propertiesValueMatches,n.merge(a.matchingSchemas)),o.length};Array.isArray(t.anyOf)&&m(t.anyOf,!1);Array.isArray(t.oneOf)&&m(t.oneOf,!0);var d=function(t){var i=new _e,o=n.newSub();Re(e,je(t),i,o),r.merge(i),r.propertiesMatches+=i.propertiesMatches,r.propertiesValueMatches+=i.propertiesValueMatches,n.merge(o)},g=je(t.if);g&&function(t,r,i){var o=je(t),a=new _e,s=n.newSub();Re(e,o,a,s),n.merge(s),a.hasProblems()?i&&d(i):r&&d(r)}(g,je(t.then),je(t.else));if(Array.isArray(t.enum)){for(var v=Ve(e),y=!1,b=0,S=t.enum;b<S.length;b++){var k=S[b];if(F(v,k)){y=!0;break}}r.enumValues=t.enum,r.enumValueMatch=y,y||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,code:ve.EnumValueMismatch,message:t.errorMessage||Te("enumWarning","Value is not accepted. Valid values: {0}.",t.enum.map(function(e){return JSON.stringify(e)}).join(", "))})}if(R(t.const)){var v=Ve(e);F(v,t.const)?r.enumValueMatch=!0:(r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,code:ve.EnumValueMismatch,message:t.errorMessage||Te("constWarning","Value must be {0}.",JSON.stringify(t.const))}),r.enumValueMatch=!1),r.enumValues=[t.const]}t.deprecationMessage&&e.parent&&r.problems.push({location:{offset:e.parent.offset,length:e.parent.length},severity:x.Warning,message:t.deprecationMessage})}(),n.add({node:e,schema:t})}}function $e(e,t){var r=e.length-t.length;return r>0?e.lastIndexOf(t)===r:0===r&&e===t}var Le=we();(function(){function e(e,t,r,n){void 0===t&&(t=[]),void 0===r&&(r=Promise),void 0===n&&(n={}),this.schemaService=e,this.contributions=t,this.promiseConstructor=r,this.clientCapabilities=n,this.templateVarIdCounter=0}e.prototype.doResolve=function(e){for(var t=this.contributions.length-1;t>=0;t--)if(this.contributions[t].resolveCompletion){var r=this.contributions[t].resolveCompletion(e);if(r)return r}return this.promiseConstructor.resolve(e)},e.prototype.doComplete=function(e,t,r){var n=this,i={items:[],isIncomplete:!1},o=e.getText(),a=e.offsetAt(t),s=r.getNodeFromOffset(a,!0);if(this.isInComment(e,s?s.offset:0,a))return Promise.resolve(i);if(s&&a===s.offset+s.length&&a>0){var u=o[a-1];("object"===s.type&&"}"===u||"array"===s.type&&"]"===u)&&(s=s.parent)}var c=this.getCurrentWord(e,a),l=null;if(!s||"string"!==s.type&&"number"!==s.type&&"boolean"!==s.type&&"null"!==s.type){var h=a-c.length;h>0&&'"'===o[h-1]&&h--,l=f.create(e.positionAt(h),t)}else l=f.create(e.positionAt(s.offset),e.positionAt(s.offset+s.length));var p={},m={add:function(e){var t=e.label,r=p[t];if(r)r.documentation||(r.documentation=e.documentation);else{if((t=t.replace(/[\n]/g,"↵")).length>60){var n=t.substr(0,57).trim()+"...";p[n]||(t=n)}l&&(e.textEdit=w.replace(l,e.insertText)),e.label=t,p[t]=e,i.items.push(e)}},setAsIncomplete:function(){i.isIncomplete=!0},error:function(e){console.error(e)},log:function(e){console.log(e)},getNumberOfProposals:function(){return i.items.length}};return this.schemaService.getSchemaForResource(e.uri,r).then(function(t){var u=[],f=!0,h="",d=null;if(s&&"string"===s.type){var g=s.parent;g&&"property"===g.type&&g.keyNode===s&&(f=!g.valueNode,d=g,h=o.substr(s.offset+1,s.length-2),g&&(s=g.parent))}if(s&&"object"===s.type){if(s.offset===a)return i;s.properties.forEach(function(e){d&&d===e||(p[e.keyNode.value]=z.create("__"))});var v="";f&&(v=n.evaluateSeparatorAfter(e,e.offsetAt(l.end))),t?n.getPropertyCompletions(t,r,s,f,v,m):n.getSchemaLessPropertyCompletions(r,s,h,m);var y=Fe(s);n.contributions.forEach(function(t){var r=t.collectPropertyCompletions(e.uri,y,c,f,""===v,m);r&&u.push(r)}),!t&&c.length>0&&'"'!==o.charAt(a-c.length-1)&&(m.add({kind:B.Property,label:n.getLabelForValue(c),insertText:n.getInsertTextForProperty(c,null,!1,v),insertTextFormat:K.Snippet,documentation:""}),m.setAsIncomplete())}var b={};return t?n.getValueCompletions(t,r,s,a,e,m,b):n.getSchemaLessValueCompletions(r,s,a,e,m),n.contributions.length>0&&n.getContributedValueCompletions(r,s,a,e,m,u),n.promiseConstructor.all(u).then(function(){if(0===m.getNumberOfProposals()){var t=a;!s||"string"!==s.type&&"number"!==s.type&&"boolean"!==s.type&&"null"!==s.type||(t=s.offset+s.length);var r=n.evaluateSeparatorAfter(e,t);n.addFillerValueCompletions(b,r,m)}return i})})},e.prototype.getPropertyCompletions=function(e,t,r,n,i,o){var a=this;t.getMatchingSchemas(e.schema,r.offset).forEach(function(e){if(e.node===r&&!e.inverted){var t=e.schema.properties;t&&Object.keys(t).forEach(function(e){var r=t[e];if("object"==typeof r&&!r.deprecationMessage&&!r.doNotSuggest){var s={kind:B.Property,label:e,insertText:a.getInsertTextForProperty(e,r,n,i),insertTextFormat:K.Snippet,filterText:a.getFilterTextForValue(e),documentation:a.fromMarkup(r.markdownDescription)||r.description||""};$e(s.insertText,"$1"+i)&&(s.command={title:"Suggest",command:"editor.action.triggerSuggest"}),o.add(s)}})}})},e.prototype.getSchemaLessPropertyCompletions=function(e,t,r,n){var i=this,o=function(e){e.properties.forEach(function(e){var t=e.keyNode.value;n.add({kind:B.Property,label:t,insertText:i.getInsertTextForValue(t,""),insertTextFormat:K.Snippet,filterText:i.getFilterTextForValue(t),documentation:""})})};if(t.parent)if("property"===t.parent.type){var a=t.parent.keyNode.value;e.visit(function(e){return"property"===e.type&&e!==t.parent&&e.keyNode.value===a&&e.valueNode&&"object"===e.valueNode.type&&o(e.valueNode),!0})}else"array"===t.parent.type&&t.parent.items.forEach(function(e){"object"===e.type&&e!==t&&o(e)});else"object"===t.type&&n.add({kind:B.Property,label:"$schema",insertText:this.getInsertTextForProperty("$schema",null,!0,""),insertTextFormat:K.Snippet,documentation:"",filterText:this.getFilterTextForValue("$schema")})},e.prototype.getSchemaLessValueCompletions=function(e,t,r,n,i){var o=this,a=r;if(!t||"string"!==t.type&&"number"!==t.type&&"boolean"!==t.type&&"null"!==t.type||(a=t.offset+t.length,t=t.parent),!t)return i.add({kind:this.getSuggestionKind("object"),label:"Empty object",insertText:this.getInsertTextForValue({},""),insertTextFormat:K.Snippet,documentation:""}),void i.add({kind:this.getSuggestionKind("array"),label:"Empty array",insertText:this.getInsertTextForValue([],""),insertTextFormat:K.Snippet,documentation:""});var s=this.evaluateSeparatorAfter(n,a),u=function(e){Ne(e.parent,r,!0)||i.add({kind:o.getSuggestionKind(e.type),label:o.getLabelTextForMatchingNode(e,n),insertText:o.getInsertTextForMatchingNode(e,n,s),insertTextFormat:K.Snippet,documentation:""}),"boolean"===e.type&&o.addBooleanValueCompletion(!e.value,s,i)};if("property"===t.type&&r>t.colonOffset){var c=t.valueNode;if(c&&(r>c.offset+c.length||"object"===c.type||"array"===c.type))return;var l=t.keyNode.value;e.visit(function(e){return"property"===e.type&&e.keyNode.value===l&&e.valueNode&&u(e.valueNode),!0}),"$schema"===l&&t.parent&&!t.parent.parent&&this.addDollarSchemaCompletions(s,i)}if("array"===t.type)if(t.parent&&"property"===t.parent.type){var f=t.parent.keyNode.value;e.visit(function(e){return"property"===e.type&&e.keyNode.value===f&&e.valueNode&&"array"===e.valueNode.type&&e.valueNode.items.forEach(u),!0})}else t.items.forEach(u)},e.prototype.getValueCompletions=function(e,t,r,n,i,o,a){var s=this,u=n,c=null,l=null;if(!r||"string"!==r.type&&"number"!==r.type&&"boolean"!==r.type&&"null"!==r.type||(u=r.offset+r.length,l=r,r=r.parent),r){if("property"===r.type&&n>r.colonOffset){var f=r.valueNode;if(f&&n>f.offset+f.length)return;c=r.keyNode.value,r=r.parent}if(r&&(null!==c||"array"===r.type)){var h=this.evaluateSeparatorAfter(i,u);t.getMatchingSchemas(e.schema,r.offset,l).forEach(function(e){if(e.node===r&&!e.inverted&&e.schema){if("array"===r.type&&e.schema.items)if(Array.isArray(e.schema.items)){var t=s.findItemAtOffset(r,i,n);t<e.schema.items.length&&s.addSchemaValueCompletions(e.schema.items[t],h,o,a)}else s.addSchemaValueCompletions(e.schema.items,h,o,a);if(e.schema.properties){var u=e.schema.properties[c];u&&s.addSchemaValueCompletions(u,h,o,a)}}}),"$schema"!==c||r.parent||this.addDollarSchemaCompletions(h,o),a.boolean&&(this.addBooleanValueCompletion(!0,h,o),this.addBooleanValueCompletion(!1,h,o)),a.null&&this.addNullValueCompletion(h,o)}}else this.addSchemaValueCompletions(e.schema,"",o,a)},e.prototype.getContributedValueCompletions=function(e,t,r,n,i,o){if(t){if("string"!==t.type&&"number"!==t.type&&"boolean"!==t.type&&"null"!==t.type||(t=t.parent),"property"===t.type&&r>t.colonOffset){var a=t.keyNode.value,s=t.valueNode;if(!s||r<=s.offset+s.length){var u=Fe(t.parent);this.contributions.forEach(function(e){var t=e.collectValueCompletions(n.uri,u,a,i);t&&o.push(t)})}}}else this.contributions.forEach(function(e){var t=e.collectDefaultCompletions(n.uri,i);t&&o.push(t)})},e.prototype.addSchemaValueCompletions=function(e,t,r,n){var i=this;"object"==typeof e&&(this.addEnumValueCompletions(e,t,r),this.addDefaultValueCompletions(e,t,r),this.collectTypes(e,n),Array.isArray(e.allOf)&&e.allOf.forEach(function(e){return i.addSchemaValueCompletions(e,t,r,n)}),Array.isArray(e.anyOf)&&e.anyOf.forEach(function(e){return i.addSchemaValueCompletions(e,t,r,n)}),Array.isArray(e.oneOf)&&e.oneOf.forEach(function(e){return i.addSchemaValueCompletions(e,t,r,n)}))},e.prototype.addDefaultValueCompletions=function(e,t,r,n){var i=this;void 0===n&&(n=0);var o=!1;if(R(e.default)){for(var a=e.type,s=e.default,u=n;u>0;u--)s=[s],a="array";r.add({kind:this.getSuggestionKind(a),label:this.getLabelForValue(s),insertText:this.getInsertTextForValue(s,t),insertTextFormat:K.Snippet,detail:Le("json.suggest.default","Default value")}),o=!0}Array.isArray(e.examples)&&e.examples.forEach(function(a){for(var s=e.type,u=a,c=n;c>0;c--)u=[u],s="array";r.add({kind:i.getSuggestionKind(s),label:i.getLabelForValue(u),insertText:i.getInsertTextForValue(u,t),insertTextFormat:K.Snippet}),o=!0}),Array.isArray(e.defaultSnippets)&&e.defaultSnippets.forEach(function(a){var s,u,c=e.type,l=a.body,f=a.label;if(R(l)){e.type;for(var h=n;h>0;h--)l=[l],"array";s=i.getInsertTextForSnippetValue(l,t),u=i.getFilterTextForSnippetValue(l),f=f||i.getLabelForSnippetValue(l)}else if("string"==typeof a.bodyText){var p="",m="",d="";for(h=n;h>0;h--)p=p+d+"[\n",m=m+"\n"+d+"]",d+="\t",c="array";s=p+d+a.bodyText.split("\n").join("\n"+d)+m+t,f=f||s,u=s.replace(/[\n]/g,"")}r.add({kind:i.getSuggestionKind(c),label:f,documentation:i.fromMarkup(a.markdownDescription)||a.description,insertText:s,insertTextFormat:K.Snippet,filterText:u}),o=!0}),o||"object"!=typeof e.items||Array.isArray(e.items)||this.addDefaultValueCompletions(e.items,t,r,n+1)},e.prototype.addEnumValueCompletions=function(e,t,r){if(R(e.const)&&r.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(e.const),insertText:this.getInsertTextForValue(e.const,t),insertTextFormat:K.Snippet,documentation:this.fromMarkup(e.markdownDescription)||e.description}),Array.isArray(e.enum))for(var n=0,i=e.enum.length;n<i;n++){var o=e.enum[n],a=this.fromMarkup(e.markdownDescription)||e.description;e.markdownEnumDescriptions&&n<e.markdownEnumDescriptions.length&&this.doesSupportMarkdown()?a=this.fromMarkup(e.markdownEnumDescriptions[n]):e.enumDescriptions&&n<e.enumDescriptions.length&&(a=e.enumDescriptions[n]),r.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(o),insertText:this.getInsertTextForValue(o,t),insertTextFormat:K.Snippet,documentation:a})}},e.prototype.collectTypes=function(e,t){if(!Array.isArray(e.enum)&&!R(e.const)){var r=e.type;Array.isArray(r)?r.forEach(function(e){return t[e]=!0}):t[r]=!0}},e.prototype.addFillerValueCompletions=function(e,t,r){e.object&&r.add({kind:this.getSuggestionKind("object"),label:"{}",insertText:this.getInsertTextForGuessedValue({},t),insertTextFormat:K.Snippet,detail:Le("defaults.object","New object"),documentation:""}),e.array&&r.add({kind:this.getSuggestionKind("array"),label:"[]",insertText:this.getInsertTextForGuessedValue([],t),insertTextFormat:K.Snippet,detail:Le("defaults.array","New array"),documentation:""})},e.prototype.addBooleanValueCompletion=function(e,t,r){r.add({kind:this.getSuggestionKind("boolean"),label:e?"true":"false",insertText:this.getInsertTextForValue(e,t),insertTextFormat:K.Snippet,documentation:""})},e.prototype.addNullValueCompletion=function(e,t){t.add({kind:this.getSuggestionKind("null"),label:"null",insertText:"null"+e,insertTextFormat:K.Snippet,documentation:""})},e.prototype.addDollarSchemaCompletions=function(e,t){var r=this;this.schemaService.getRegisteredSchemaIds(function(e){return"http"===e||"https"===e}).forEach(function(n){return t.add({kind:B.Module,label:r.getLabelForValue(n),filterText:r.getFilterTextForValue(n),insertText:r.getInsertTextForValue(n,e),insertTextFormat:K.Snippet,documentation:""})})},e.prototype.getLabelForValue=function(e){return JSON.stringify(e)},e.prototype.getFilterTextForValue=function(e){return JSON.stringify(e)},e.prototype.getFilterTextForSnippetValue=function(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")},e.prototype.getLabelForSnippetValue=function(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")},e.prototype.getInsertTextForPlainText=function(e){return e.replace(/[\\\$\}]/g,"\\$&")},e.prototype.getInsertTextForValue=function(e,t){var r=JSON.stringify(e,null,"\t");return"{}"===r?"{$1}"+t:"[]"===r?"[$1]"+t:this.getInsertTextForPlainText(r+t)},e.prototype.getInsertTextForSnippetValue=function(e,t){return function e(t,r,n){if(null!==t&&"object"==typeof t){var i=r+"\t";if(Array.isArray(t)){if(0===t.length)return"[]";for(var o="[\n",a=0;a<t.length;a++)o+=i+e(t[a],i,n),a<t.length-1&&(o+=","),o+="\n";return o+=r+"]"}var s=Object.keys(t);if(0===s.length)return"{}";for(o="{\n",a=0;a<s.length;a++){var u=s[a];o+=i+JSON.stringify(u)+": "+e(t[u],i,n),a<s.length-1&&(o+=","),o+="\n"}return o+=r+"}"}return n(t)}(e,"",function(e){return"string"==typeof e&&"^"===e[0]?e.substr(1):JSON.stringify(e)})+t},e.prototype.getInsertTextForGuessedValue=function(e,t){switch(typeof e){case"object":return null===e?"${1:null}"+t:this.getInsertTextForValue(e,t);case"string":var r=JSON.stringify(e);return r=r.substr(1,r.length-2),'"${1:'+(r=this.getInsertTextForPlainText(r))+'}"'+t;case"number":case"boolean":return"${1:"+JSON.stringify(e)+"}"+t}return this.getInsertTextForValue(e,t)},e.prototype.getSuggestionKind=function(e){if(Array.isArray(e)){var t=e;e=t.length>0?t[0]:null}if(!e)return B.Value;switch(e){case"string":return B.Value;case"object":return B.Module;case"property":return B.Property;default:return B.Value}},e.prototype.getLabelTextForMatchingNode=function(e,t){switch(e.type){case"array":return"[]";case"object":return"{}";default:return t.getText().substr(e.offset,e.length)}},e.prototype.getInsertTextForMatchingNode=function(e,t,r){switch(e.type){case"array":return this.getInsertTextForValue([],r);case"object":return this.getInsertTextForValue({},r);default:var n=t.getText().substr(e.offset,e.length)+r;return this.getInsertTextForPlainText(n)}},e.prototype.getInsertTextForProperty=function(e,t,r,n){var i=this.getInsertTextForValue(e,"");if(!r)return i;var o,a=i+": ",s=0;if(t){if(Array.isArray(t.defaultSnippets)){if(1===t.defaultSnippets.length){var u=t.defaultSnippets[0].body;R(u)&&(o=this.getInsertTextForSnippetValue(u,""))}s+=t.defaultSnippets.length}if(t.enum&&(o||1!==t.enum.length||(o=this.getInsertTextForGuessedValue(t.enum[0],"")),s+=t.enum.length),R(t.default)&&(o||(o=this.getInsertTextForGuessedValue(t.default,"")),s++),Array.isArray(t.examples)&&t.examples.length&&(o||(o=this.getInsertTextForGuessedValue(t.examples[0],"")),s+=t.examples.length),0===s){var c=Array.isArray(t.type)?t.type[0]:t.type;switch(c||(t.properties?c="object":t.items&&(c="array")),c){case"boolean":o="$1";break;case"string":o='"$1"';break;case"object":o="{$1}";break;case"array":o="[$1]";break;case"number":case"integer":o="${1:0}";break;case"null":o="${1:null}";break;default:return i}}}return(!o||s>1)&&(o="$1"),a+o+n},e.prototype.getCurrentWord=function(e,t){for(var r=t-1,n=e.getText();r>=0&&-1===' \t\n\r\v":{[,]}'.indexOf(n.charAt(r));)r--;return n.substring(r+1,t)},e.prototype.evaluateSeparatorAfter=function(e,t){var r=j(e.getText(),!0);switch(r.setPosition(t),r.scan()){case 5:case 2:case 4:case 17:return"";default:return","}},e.prototype.findItemAtOffset=function(e,t,r){for(var n=j(t.getText(),!0),i=e.items,o=i.length-1;o>=0;o--){var a=i[o];if(r>a.offset+a.length)return n.setPosition(a.offset+a.length),5===n.scan()&&r>=n.getTokenOffset()+n.getTokenLength()?o+1:o;if(r>=a.offset)return o}return 0},e.prototype.isInComment=function(e,t,r){var n=j(e.getText(),!1);n.setPosition(t);for(var i=n.scan();17!==i&&n.getTokenOffset()+n.getTokenLength()<r;)i=n.scan();return(12===i||13===i)&&n.getTokenOffset()<=r},e.prototype.fromMarkup=function(e){if(e&&this.doesSupportMarkdown())return{kind:U.Markdown,value:e}},e.prototype.doesSupportMarkdown=function(){if(!R(this.supportsMarkdown)){var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.completion;this.supportsMarkdown=e&&e.completionItem&&Array.isArray(e.completionItem.documentationFormat)&&-1!==e.completionItem.documentationFormat.indexOf(U.Markdown)}return this.supportsMarkdown},e.prototype.doesSupportsCommitCharacters=function(){if(!R(this.supportsCommitCharacters)){var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.completion;this.supportsCommitCharacters=e&&e.completionItem&&!!e.completionItem.commitCharactersSupport}return this.supportsCommitCharacters}})(),function(){function e(e,t,r){void 0===t&&(t=[]),this.schemaService=e,this.contributions=t,this.promise=r||Promise}e.prototype.doHover=function(e,t,r){var n=e.offsetAt(t),i=r.getNodeFromOffset(n);if(!i||("object"===i.type||"array"===i.type)&&n>i.offset+1&&n<i.offset+i.length-1)return this.promise.resolve(null);var o=i;if("string"===i.type){var a=i.parent;if(a&&"property"===a.type&&a.keyNode===i&&!(i=a.valueNode))return this.promise.resolve(null)}for(var s=f.create(e.positionAt(o.offset),e.positionAt(o.offset+o.length)),u=function(e){return{contents:e,range:s}},c=Fe(i),l=this.contributions.length-1;l>=0;l--){var h=this.contributions[l].getInfoContribution(e.uri,c);if(h)return h.then(function(e){return u(e)})}return this.schemaService.getSchemaForResource(e.uri,r).then(function(e){if(e){var t=null,n=null,o=null,a=null;r.getMatchingSchemas(e.schema,i.offset).every(function(e){if(e.node===i&&!e.inverted&&e.schema&&(t=t||e.schema.title,n=n||e.schema.markdownDescription||De(e.schema.description),e.schema.enum)){var r=e.schema.enum.indexOf(Ve(i));e.schema.markdownEnumDescriptions?o=e.schema.markdownEnumDescriptions[r]:e.schema.enumDescriptions&&(o=De(e.schema.enumDescriptions[r])),o&&"string"!=typeof(a=e.schema.enum[r])&&(a=JSON.stringify(a))}return!0});var s="";return t&&(s=De(t)),n&&(s.length>0&&(s+="\n\n"),s+=n),o&&(s.length>0&&(s+="\n\n"),s+="`"+function(e){if(-1!==e.indexOf("`"))return"`` "+e+" ``";return e}(a)+"`: "+o),u([s])}return null})}}();function De(e){if(e)return e.replace(/([^\n\r])(\r?\n)([^\n\r])/gm,"$1\n\n$3").replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}var We=r("6a/n"),Ue=we(),qe=function(){function e(e){try{this.patternRegExp=new RegExp(function(e){return e.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}(e)+"$")}catch(e){this.patternRegExp=null}this.schemas=[]}return e.prototype.addSchema=function(e){this.schemas.push(e)},e.prototype.matchesPattern=function(e){return this.patternRegExp&&this.patternRegExp.test(e)},e.prototype.getSchemas=function(){return this.schemas},e}(),Be=function(){function e(e,t,r){this.service=e,this.url=t,this.dependencies={},r&&(this.unresolvedSchema=this.service.promise.resolve(new Ke(r)))}return e.prototype.getUnresolvedSchema=function(){return this.unresolvedSchema||(this.unresolvedSchema=this.service.loadSchema(this.url)),this.unresolvedSchema},e.prototype.getResolvedSchema=function(){var e=this;return this.resolvedSchema||(this.resolvedSchema=this.getUnresolvedSchema().then(function(t){return e.service.resolveSchemaContent(t,e.url,e.dependencies)})),this.resolvedSchema},e.prototype.clearSchema=function(){this.resolvedSchema=null,this.unresolvedSchema=null,this.dependencies={}},e}(),Ke=function(){return function(e,t){void 0===t&&(t=[]),this.schema=e,this.errors=t}}(),Je=function(){function e(e,t){void 0===t&&(t=[]),this.schema=e,this.errors=t}return e.prototype.getSection=function(e){return je(this.getSectionRecursive(e,this.schema))},e.prototype.getSectionRecursive=function(e,t){if(!t||"boolean"==typeof t||0===e.length)return t;var r=e.shift();if(t.properties&&(t.properties[r],1))return this.getSectionRecursive(e,t.properties[r]);if(t.patternProperties)for(var n=0,i=Object.keys(t.patternProperties);n<i.length;n++){var o=i[n];if(new RegExp(o).test(r))return this.getSectionRecursive(e,t.patternProperties[o])}else{if("object"==typeof t.additionalProperties)return this.getSectionRecursive(e,t.additionalProperties);if(r.match("[0-9]+"))if(Array.isArray(t.items)){var a=parseInt(r,10);if(!isNaN(a)&&t.items[a])return this.getSectionRecursive(e,t.items[a])}else if(t.items)return this.getSectionRecursive(e,t.items)}return null},e}();!function(){function e(e,t,r){this.contextService=t,this.requestService=e,this.promiseConstructor=r||Promise,this.callOnDispose=[],this.contributionSchemas={},this.contributionAssociations={},this.schemasById={},this.filePatternAssociations=[],this.filePatternAssociationById={},this.registeredSchemasIds={}}e.prototype.getRegisteredSchemaIds=function(e){return Object.keys(this.registeredSchemasIds).filter(function(t){var r=We.a.parse(t).scheme;return"schemaservice"!==r&&(!e||e(r))})},Object.defineProperty(e.prototype,"promise",{get:function(){return this.promiseConstructor},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){for(;this.callOnDispose.length>0;)this.callOnDispose.pop()()},e.prototype.onResourceChange=function(e){for(var t=this,r=!1,n=[e=this.normalizeId(e)],i=Object.keys(this.schemasById).map(function(e){return t.schemasById[e]});n.length;)for(var o=n.pop(),a=0;a<i.length;a++){var s=i[a];s&&(s.url===o||s.dependencies[o])&&(s.url!==o&&n.push(s.url),s.clearSchema(),i[a]=void 0,r=!0)}return r},e.prototype.normalizeId=function(e){try{return We.a.parse(e).toString()}catch(t){return e}},e.prototype.setSchemaContributions=function(e){if(e.schemas){var t=e.schemas;for(var r in t){var n=this.normalizeId(r);this.contributionSchemas[n]=this.addSchemaHandle(n,t[r])}}if(e.schemaAssociations){var i=e.schemaAssociations;for(var o in i){var a=i[o];this.contributionAssociations[o]=a;for(var s=this.getOrAddFilePatternAssociation(o),u=0,c=a;u<c.length;u++){var l=c[u];r=this.normalizeId(l);s.addSchema(r)}}}},e.prototype.addSchemaHandle=function(e,t){var r=new Be(this,e,t);return this.schemasById[e]=r,r},e.prototype.getOrAddSchemaHandle=function(e,t){return this.schemasById[e]||this.addSchemaHandle(e,t)},e.prototype.getOrAddFilePatternAssociation=function(e){var t=this.filePatternAssociationById[e];return t||(t=new qe(e),this.filePatternAssociationById[e]=t,this.filePatternAssociations.push(t)),t},e.prototype.registerExternalSchema=function(e,t,r){void 0===t&&(t=null);var n=this.normalizeId(e);if(this.registeredSchemasIds[n]=!0,t)for(var i=0,o=t;i<o.length;i++){var a=o[i];this.getOrAddFilePatternAssociation(a).addSchema(n)}return r?this.addSchemaHandle(n,r):this.getOrAddSchemaHandle(n)},e.prototype.clearExternalSchemas=function(){for(var e in this.schemasById={},this.filePatternAssociations=[],this.filePatternAssociationById={},this.registeredSchemasIds={},this.contributionSchemas)this.schemasById[e]=this.contributionSchemas[e],this.registeredSchemasIds[e]=!0;for(var t in this.contributionAssociations)for(var r=this.getOrAddFilePatternAssociation(t),n=0,i=this.contributionAssociations[t];n<i.length;n++){var o=i[n];e=this.normalizeId(o);r.addSchema(e)}},e.prototype.getResolvedSchema=function(e){var t=this.normalizeId(e),r=this.schemasById[t];return r?r.getResolvedSchema():this.promise.resolve(null)},e.prototype.loadSchema=function(e){if(!this.requestService){var t=Ue("json.schema.norequestservice","Unable to load schema from '{0}'. No schema request service available",ze(e));return this.promise.resolve(new Ke({},[t]))}return this.requestService(e).then(function(t){if(!t){var r=Ue("json.schema.nocontent","Unable to load schema from '{0}': No content.",ze(e));return new Ke({},[r])}var n,i=[];n=P(t,i);var o=i.length?[Ue("json.schema.invalidFormat","Unable to parse content from '{0}': Parse error at offset {1}.",ze(e),i[0].offset)]:[];return new Ke(n,o)},function(t){var r=t.toString(),n=t.toString().split("Error: ");return n.length>1&&(r=n[1]),$e(r,".")&&(r=r.substr(0,r.length-1)),new Ke({},[Ue("json.schema.nocontent","Unable to load schema from '{0}': {1}.",ze(e),r)])})},e.prototype.resolveSchemaContent=function(e,t,r){var n=this,i=e.errors.slice(0),o=e.schema;if(o.$schema){var a=this.normalizeId(o.$schema);if("http://json-schema.org/draft-03/schema"===a)return this.promise.resolve(new Je({},[Ue("json.schema.draft03.notsupported","Draft-03 schemas are not supported.")]));"https://json-schema.org/draft/2019-09/schema"===a&&e.errors.push(Ue("json.schema.draft201909.notsupported","Draft 2019-09 schemas are not yet fully supported."))}var s=this.contextService,u=function(e,t,r,n){var o=function(e,t){if(!t)return e;var r=e;return"/"===t[0]&&(t=t.substr(1)),t.split("/").some(function(e){return!(r=r[e])}),r}(t,n);if(o)for(var a in o)o.hasOwnProperty(a)&&!e.hasOwnProperty(a)&&(e[a]=o[a]);else i.push(Ue("json.schema.invalidref","$ref '{0}' in '{1}' can not be resolved.",n,r))},c=function(e,t,r,o,a){s&&!/^\w+:\/\/.*/.test(t)&&(t=s.resolveRelativePath(t,o)),t=n.normalizeId(t);var c=n.getOrAddSchemaHandle(t);return c.getUnresolvedSchema().then(function(n){if(a[t]=!0,n.errors.length){var o=r?t+"#"+r:t;i.push(Ue("json.schema.problemloadingref","Problems loading reference '{0}': {1}",o,n.errors[0]))}return u(e,n.schema,t,r),l(e,n.schema,t,c.dependencies)})},l=function(e,t,r,i){if(!e||"object"!=typeof e)return Promise.resolve(null);for(var o=[e],a=[],s=[],l=function(e){for(var n=[];e.$ref;){var a=e.$ref,l=a.split("#",2);if(delete e.$ref,l[0].length>0)return void s.push(c(e,l[0],l[1],r,i));-1===n.indexOf(a)&&(u(e,t,r,l[1]),n.push(a))}!function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];"object"==typeof i&&o.push(i)}}(e.items,e.additionalProperties,e.not,e.contains,e.propertyNames,e.if,e.then,e.else),function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];if("object"==typeof i)for(var a in i){var s=i[a];"object"==typeof s&&o.push(s)}}}(e.definitions,e.properties,e.patternProperties,e.dependencies),function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];if(Array.isArray(i))for(var a=0,s=i;a<s.length;a++){var u=s[a];"object"==typeof u&&o.push(u)}}}(e.anyOf,e.allOf,e.oneOf,e.items)};o.length;){var f=o.pop();a.indexOf(f)>=0||(a.push(f),l(f))}return n.promise.all(s)};return l(o,o,t,r).then(function(e){return new Je(o,i)})},e.prototype.getSchemaForResource=function(e,t){if(t&&t.root&&"object"===t.root.type){var r=t.root.properties.filter(function(e){return"$schema"===e.keyNode.value&&e.valueNode&&"string"===e.valueNode.type});if(r.length>0){var n=Ve(r[0].valueNode);if(n&&function(e,t){if(e.length<t.length)return!1;for(var r=0;r<t.length;r++)if(e[r]!==t[r])return!1;return!0}(n,".")&&this.contextService&&(n=this.contextService.resolveRelativePath(n,e)),n){var i=this.normalizeId(n);return this.getOrAddSchemaHandle(i).getResolvedSchema()}}}for(var o=Object.create(null),a=[],s=0,u=this.filePatternAssociations;s<u.length;s++){var c=u[s];if(c.matchesPattern(e))for(var l=0,f=c.getSchemas();l<f.length;l++){var h=f[l];o[h]||(a.push(h),o[h]=!0)}}return a.length>0?this.createCombinedSchema(e,a).getResolvedSchema():this.promise.resolve(null)},e.prototype.createCombinedSchema=function(e,t){if(1===t.length)return this.getOrAddSchemaHandle(t[0]);var r="schemaservice://combinedSchema/"+encodeURIComponent(e),n={allOf:t.map(function(e){return{$ref:e}})};return this.addSchemaHandle(r,n)}}();function ze(e){try{var t=We.a.parse(e);if("file"===t.scheme)return t.fsPath}catch(e){}return e}var He=we(),Ge=(function(){function e(e,t){this.jsonSchemaService=e,this.promise=t,this.validationEnabled=!0}e.prototype.configure=function(e){e&&(this.validationEnabled=e.validate,this.commentSeverity=e.allowComments?void 0:x.Error)},e.prototype.doValidation=function(e,t,r,n){var i=this;if(!this.validationEnabled)return this.promise.resolve([]);var o=[],a={},s=function(e){var t=e.range.start.line+" "+e.range.start.character+" "+e.message;a[t]||(a[t]=!0,o.push(e))},u=function(n){var a=r?Ze(r.trailingCommas):x.Error,u=r?Ze(r.comments):i.commentSeverity;if(n){if(n.errors.length&&t.root){var c=t.root,l="object"===c.type?c.properties[0]:null;if(l&&"$schema"===l.keyNode.value){var h=l.valueNode||l,p=f.create(e.positionAt(h.offset),e.positionAt(h.offset+h.length));s(k.create(p,n.errors[0],x.Warning,ve.SchemaResolveError))}else{p=f.create(e.positionAt(c.offset),e.positionAt(c.offset+1));s(k.create(p,n.errors[0],x.Warning,ve.SchemaResolveError))}}else{var m=t.validate(e,n.schema);m&&m.forEach(s)}(function e(t){if(t&&"object"==typeof t){if($(t.allowComments))return t.allowComments;if(t.allOf)for(var r=0,n=t.allOf;r<n.length;r++){var i=n[r],o=e(i);if($(o))return o}}return})(n.schema)&&(u=void 0),function e(t){if(t&&"object"==typeof t){if($(t.allowTrailingCommas))return t.allowTrailingCommas;if($(t.allowsTrailingCommas))return t.allowsTrailingCommas;if(t.allOf)for(var r=0,n=t.allOf;r<n.length;r++){var i=n[r],o=e(i);if($(o))return o}}return}(n.schema)&&(a=void 0)}for(var d=0,g=t.syntaxErrors;d<g.length;d++){var v=g[d];if(v.code===ve.TrailingComma){if("number"!=typeof a)continue;v.severity=a}s(v)}if("number"==typeof u){var y=He("InvalidCommentToken","Comments are not permitted in JSON.");t.comments.forEach(function(e){s(k.create(e,y,u,ve.CommentNotPermitted))})}return o};if(n){var c=n.id||"schemaservice://untitled/"+Ge++;return this.jsonSchemaService.resolveSchemaContent(new Ke(n),c,{}).then(function(e){return u(e)})}return this.jsonSchemaService.getSchemaForResource(e.uri,t).then(function(e){return u(e)})}}(),0);function Ze(e){switch(e){case"error":return x.Error;case"warning":return x.Warning;case"ignore":return}}var Xe=48,Qe=57,Ye=65,et=97,tt=102;function rt(e){return e<Xe?0:e<=Qe?e-Xe:(e<et&&(e+=et-Ye),e>=et&&e<=tt?e-et+10:0)}function nt(e){if("#"!==e[0])return null;switch(e.length){case 4:return{red:17*rt(e.charCodeAt(1))/255,green:17*rt(e.charCodeAt(2))/255,blue:17*rt(e.charCodeAt(3))/255,alpha:1};case 5:return{red:17*rt(e.charCodeAt(1))/255,green:17*rt(e.charCodeAt(2))/255,blue:17*rt(e.charCodeAt(3))/255,alpha:17*rt(e.charCodeAt(4))/255};case 7:return{red:(16*rt(e.charCodeAt(1))+rt(e.charCodeAt(2)))/255,green:(16*rt(e.charCodeAt(3))+rt(e.charCodeAt(4)))/255,blue:(16*rt(e.charCodeAt(5))+rt(e.charCodeAt(6)))/255,alpha:1};case 9:return{red:(16*rt(e.charCodeAt(1))+rt(e.charCodeAt(2)))/255,green:(16*rt(e.charCodeAt(3))+rt(e.charCodeAt(4)))/255,blue:(16*rt(e.charCodeAt(5))+rt(e.charCodeAt(6)))/255,alpha:(16*rt(e.charCodeAt(7))+rt(e.charCodeAt(8)))/255}}return null}!function(){function e(e){this.schemaService=e}e.prototype.findDocumentSymbols=function(e,t,r){var n=this;void 0===r&&(r={resultLimit:Number.MAX_VALUE});var i=t.root;if(!i)return null;var o=r.resultLimit,a=e.uri;if(("vscode://defaultsettings/keybindings.json"===a||$e(a.toLowerCase(),"/user/keybindings.json"))&&"array"===i.type){for(var s=[],u=0,c=i.items;u<c.length;u++){var l=c[u];if("object"===l.type)for(var f=0,p=l.properties;f<p.length;f++){var m=p[f];if("key"===m.keyNode.value&&m.valueNode){var d=h.create(e.uri,it(e,l));if(s.push({name:Ve(m.valueNode),kind:te.Function,location:d}),--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),s}}}return s}for(var g=[{node:i,containerName:""}],v=0,y=!1,b=[],x=function(t,r){"array"===t.type?t.items.forEach(function(e){e&&g.push({node:e,containerName:r})}):"object"===t.type&&t.properties.forEach(function(t){var i=t.valueNode;if(i)if(o>0){o--;var a=h.create(e.uri,it(e,t)),s=r?r+"."+t.keyNode.value:t.keyNode.value;b.push({name:n.getKeyLabel(t),kind:n.getSymbolKind(i.type),location:a,containerName:r}),g.push({node:i,containerName:s})}else y=!0})};v<g.length;){var S=g[v++];x(S.node,S.containerName)}return y&&r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),b},e.prototype.findDocumentSymbols2=function(e,t,r){var n=this;void 0===r&&(r={resultLimit:Number.MAX_VALUE});var i=t.root;if(!i)return null;var o=r.resultLimit,a=e.uri;if(("vscode://defaultsettings/keybindings.json"===a||$e(a.toLowerCase(),"/user/keybindings.json"))&&"array"===i.type){for(var s=[],u=0,c=i.items;u<c.length;u++){var l=c[u];if("object"===l.type)for(var f=0,h=l.properties;f<h.length;f++){var p=h[f];if("key"===p.keyNode.value&&p.valueNode){var m=it(e,l),d=it(e,p.keyNode);if(s.push({name:Ve(p.valueNode),kind:te.Function,range:m,selectionRange:d}),--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),s}}}return s}for(var g=[],v=[{node:i,result:g}],y=0,b=!1,x=function(t,r){"array"===t.type?t.items.forEach(function(t,i){if(t)if(o>0){o--;var a=it(e,t),s=a,u={name:String(i),kind:n.getSymbolKind(t.type),range:a,selectionRange:s,children:[]};r.push(u),v.push({result:u.children,node:t})}else b=!0}):"object"===t.type&&t.properties.forEach(function(t){var i=t.valueNode;if(i)if(o>0){o--;var a=it(e,t),s=it(e,t.keyNode),u={name:n.getKeyLabel(t),kind:n.getSymbolKind(i.type),range:a,selectionRange:s,children:[]};r.push(u),v.push({result:u.children,node:i})}else b=!0})};y<v.length;){var S=v[y++];x(S.node,S.result)}return b&&r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),g},e.prototype.getSymbolKind=function(e){switch(e){case"object":return te.Module;case"string":return te.String;case"number":return te.Number;case"array":return te.Array;case"boolean":return te.Boolean;default:return te.Variable}},e.prototype.getKeyLabel=function(e){var t=e.keyNode.value;return t&&(t=t.replace(/[\n]/g,"↵")),t&&t.trim()?t:'"'+t+'"'},e.prototype.findDocumentColors=function(e,t,r){return this.schemaService.getSchemaForResource(e.uri,t).then(function(n){var i=[];if(n)for(var o=r&&"number"==typeof r.resultLimit?r.resultLimit:Number.MAX_VALUE,a={},s=0,u=t.getMatchingSchemas(n.schema);s<u.length;s++){var c=u[s];if(!c.inverted&&c.schema&&("color"===c.schema.format||"color-hex"===c.schema.format)&&c.node&&"string"===c.node.type){var l=String(c.node.offset);if(!a[l]){var f=nt(Ve(c.node));if(f){var h=it(e,c.node);i.push({color:f,range:h})}if(a[l]=!0,--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(e.uri),i}}}return i})},e.prototype.getColorPresentations=function(e,t,r,n){var i,o=[],a=Math.round(255*r.red),s=Math.round(255*r.green),u=Math.round(255*r.blue);function c(e){var t=e.toString(16);return 2!==t.length?"0"+t:t}return i=1===r.alpha?"#"+c(a)+c(s)+c(u):"#"+c(a)+c(s)+c(u)+c(Math.round(255*r.alpha)),o.push({label:i,textEdit:w.replace(n,JSON.stringify(i))}),o}}();function it(e,t){return f.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length))}var ot=we(),at={schemaAssociations:{},schemas:{"http://json-schema.org/draft-04/schema#":{title:ot("schema.json","Describes a JSON file using a schema. See json-schema.org for more info."),$schema:"http://json-schema.org/draft-04/schema#",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{type:"string",enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{type:"number",minimum:0,exclusiveMinimum:!0},maximum:{type:"number"},exclusiveMaximum:{type:"boolean",default:!1},minimum:{type:"number"},exclusiveMinimum:{type:"boolean",default:!1},maxLength:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minLength:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},pattern:{type:"string",format:"regex"},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minItems:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},uniqueItems:{type:"boolean",default:!1},maxProperties:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minProperties:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},required:{allOf:[{$ref:"#/definitions/stringArray"}]},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{type:"array",minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{anyOf:[{type:"string",enum:["date-time","uri","email","hostname","ipv4","ipv6","regex"]},{type:"string"}]},allOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},anyOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},oneOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},not:{allOf:[{$ref:"#"}]}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"]},default:{}},"http://json-schema.org/draft-07/schema#":{title:ot("schema.json","Describes a JSON file using a schema. See json-schema.org for more info."),definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}}},st={id:ot("schema.json.id","A unique identifier for the schema."),$schema:ot("schema.json.$schema","The schema to verify this document against."),title:ot("schema.json.title","A descriptive title of the element."),description:ot("schema.json.description","A long description of the element. Used in hover menus and suggestions."),default:ot("schema.json.default","A default value. Used by suggestions."),multipleOf:ot("schema.json.multipleOf","A number that should cleanly divide the current value (i.e. have no remainder)."),maximum:ot("schema.json.maximum","The maximum numerical value, inclusive by default."),exclusiveMaximum:ot("schema.json.exclusiveMaximum","Makes the maximum property exclusive."),minimum:ot("schema.json.minimum","The minimum numerical value, inclusive by default."),exclusiveMinimum:ot("schema.json.exclusiveMininum","Makes the minimum property exclusive."),maxLength:ot("schema.json.maxLength","The maximum length of a string."),minLength:ot("schema.json.minLength","The minimum length of a string."),pattern:ot("schema.json.pattern","A regular expression to match the string against. It is not implicitly anchored."),additionalItems:ot("schema.json.additionalItems","For arrays, only when items is set as an array. If it is a schema, then this schema validates items after the ones specified by the items array. If it is false, then additional items will cause validation to fail."),items:ot("schema.json.items","For arrays. Can either be a schema to validate every element against or an array of schemas to validate each item against in order (the first schema will validate the first element, the second schema will validate the second element, and so on."),maxItems:ot("schema.json.maxItems","The maximum number of items that can be inside an array. Inclusive."),minItems:ot("schema.json.minItems","The minimum number of items that can be inside an array. Inclusive."),uniqueItems:ot("schema.json.uniqueItems","If all of the items in the array must be unique. Defaults to false."),maxProperties:ot("schema.json.maxProperties","The maximum number of properties an object can have. Inclusive."),minProperties:ot("schema.json.minProperties","The minimum number of properties an object can have. Inclusive."),required:ot("schema.json.required","An array of strings that lists the names of all properties required on this object."),additionalProperties:ot("schema.json.additionalProperties","Either a schema or a boolean. If a schema, then used to validate all properties not matched by 'properties' or 'patternProperties'. If false, then any properties not matched by either will cause this schema to fail."),definitions:ot("schema.json.definitions","Not used for validation. Place subschemas here that you wish to reference inline with $ref."),properties:ot("schema.json.properties","A map of property names to schemas for each property."),patternProperties:ot("schema.json.patternProperties","A map of regular expressions on property names to schemas for matching properties."),dependencies:ot("schema.json.dependencies","A map of property names to either an array of property names or a schema. An array of property names means the property named in the key depends on the properties in the array being present in the object in order to be valid. If the value is a schema, then the schema is only applied to the object if the property in the key exists on the object."),enum:ot("schema.json.enum","The set of literal values that are valid."),type:ot("schema.json.type","Either a string of one of the basic schema types (number, integer, null, array, object, boolean, string) or an array of strings specifying a subset of those types."),format:ot("schema.json.format","Describes the format expected for the value."),allOf:ot("schema.json.allOf","An array of schemas, all of which must match."),anyOf:ot("schema.json.anyOf","An array of schemas, where at least one must match."),oneOf:ot("schema.json.oneOf","An array of schemas, exactly one of which must match."),not:ot("schema.json.not","A schema which must not match."),$id:ot("schema.json.$id","A unique identifier for the schema."),$ref:ot("schema.json.$ref","Reference a definition hosted on any location."),$comment:ot("schema.json.$comment","Comments from schema authors to readers or maintainers of the schema."),readOnly:ot("schema.json.readOnly","Indicates that the value of the instance is managed exclusively by the owning authority."),examples:ot("schema.json.examples","Sample JSON values associated with a particular schema, for the purpose of illustrating usage."),contains:ot("schema.json.contains",'An array instance is valid against "contains" if at least one of its elements is valid against the given schema.'),propertyNames:ot("schema.json.propertyNames","If the instance is an object, this keyword validates if every property name in the instance validates against the provided schema."),const:ot("schema.json.const","An instance validates successfully against this keyword if its value is equal to the value of the keyword."),contentMediaType:ot("schema.json.contentMediaType","Describes the media type of a string property."),contentEncoding:ot("schema.json.contentEncoding","Describes the content encoding of a string property."),if:ot("schema.json.if",'The validation outcome of the "if" subschema controls which of the "then" or "else" keywords are evaluated.'),then:ot("schema.json.then",'The "if" subschema is used for validation when the "if" subschema succeeds.'),else:ot("schema.json.else",'The "else" subschema is used for validation when the "if" subschema fails.')};for(var ut in at.schemas){var ct=at.schemas[ut];for(var lt in ct.properties){var ft=ct.properties[lt];!0===ft&&(ft=ct.properties[lt]={});var ht=st[lt];ht?ft.description=ht:console.log(lt+": localize('schema.json."+lt+'\', "")')}}monaco.Uri;var pt=monaco.Range,mt=function(){function e(e,t,r){var n=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var i=function(e){var t,r=e.getModeId();r===n._languageId&&(n._listener[e.uri.toString()]=e.onDidChangeContent(function(){clearTimeout(t),t=setTimeout(function(){return n._doValidate(e.uri,r)},500)}),n._doValidate(e.uri,r))},o=function(e){monaco.editor.setModelMarkers(e,n._languageId,[]);var t=e.uri.toString(),r=n._listener[t];r&&(r.dispose(),delete n._listener[t])};this._disposables.push(monaco.editor.onDidCreateModel(i)),this._disposables.push(monaco.editor.onWillDisposeModel(function(e){o(e),n._resetSchema(e.uri)})),this._disposables.push(monaco.editor.onDidChangeModelLanguage(function(e){o(e.model),i(e.model),n._resetSchema(e.model.uri)})),this._disposables.push(r.onDidChange(function(e){monaco.editor.getModels().forEach(function(e){e.getModeId()===n._languageId&&(o(e),i(e))})})),this._disposables.push({dispose:function(){for(var e in monaco.editor.getModels().forEach(o),n._listener)n._listener[e].dispose()}}),monaco.editor.getModels().forEach(i)}return e.prototype.dispose=function(){this._disposables.forEach(function(e){return e&&e.dispose()}),this._disposables=[]},e.prototype._resetSchema=function(e){this._worker().then(function(t){t.resetSchema(e.toString())})},e.prototype._doValidate=function(e,t){this._worker(e).then(function(r){return r.doValidation(e.toString()).then(function(r){var n=r.map(function(e){return function(e,t){var r="number"==typeof t.code?String(t.code):t.code;return{severity:function(e){switch(e){case x.Error:return monaco.MarkerSeverity.Error;case x.Warning:return monaco.MarkerSeverity.Warning;case x.Information:return monaco.MarkerSeverity.Info;case x.Hint:return monaco.MarkerSeverity.Hint;default:return monaco.MarkerSeverity.Info}}(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:r,source:t.source}}(0,e)}),i=monaco.editor.getModel(e);i&&i.getModeId()===t&&monaco.editor.setModelMarkers(i,t,n)})}).then(void 0,function(e){console.error(e)})},e}();function dt(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function gt(e){if(e)return{start:{line:e.startLineNumber-1,character:e.startColumn-1},end:{line:e.endLineNumber-1,character:e.endColumn-1}}}function vt(e){if(e)return new pt(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function yt(e){if(e)return{range:vt(e.range),text:e.newText}}var bt=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[" ",":"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,r,n){var i=e.uri;return this._worker(i).then(function(e){return e.doComplete(i.toString(),dt(t))}).then(function(r){if(r){var n=e.getWordUntilPosition(t),i=new pt(t.lineNumber,n.startColumn,t.lineNumber,n.endColumn),o=r.items.map(function(e){var t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,range:i,kind:function(e){var t=monaco.languages.CompletionItemKind;switch(e){case B.Text:return t.Text;case B.Method:return t.Method;case B.Function:return t.Function;case B.Constructor:return t.Constructor;case B.Field:return t.Field;case B.Variable:return t.Variable;case B.Class:return t.Class;case B.Interface:return t.Interface;case B.Module:return t.Module;case B.Property:return t.Property;case B.Unit:return t.Unit;case B.Value:return t.Value;case B.Enum:return t.Enum;case B.Keyword:return t.Keyword;case B.Snippet:return t.Snippet;case B.Color:return t.Color;case B.File:return t.File;case B.Reference:return t.Reference}return t.Property}(e.kind)};return e.textEdit&&(t.range=vt(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(yt)),e.insertTextFormat===K.Snippet&&(t.insertTextRules=monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet),t});return{isIncomplete:r.isIncomplete,suggestions:o}}})},e}();function xt(e){return"string"==typeof e?{value:e}:function(e){return e&&"object"==typeof e&&"string"==typeof e.kind}(e)?"plaintext"===e.kind?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}:{value:e.value}:{value:"```"+e.language+"\n"+e.value+"\n```\n"}}var St=function(){function e(e){this._worker=e}return e.prototype.provideHover=function(e,t,r){var n=e.uri;return this._worker(n).then(function(e){return e.doHover(n.toString(),dt(t))}).then(function(e){if(e)return{range:vt(e.range),contents:function(e){if(e)return Array.isArray(e)?e.map(xt):[xt(e)]}(e.contents)}})},e}();var kt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentSymbols=function(e,t){var r=e.uri;return this._worker(r).then(function(e){return e.findDocumentSymbols(r.toString())}).then(function(e){if(e)return e.map(function(e){return{name:e.name,detail:"",containerName:e.containerName,kind:function(e){var t=monaco.languages.SymbolKind;switch(e){case te.File:return t.Array;case te.Module:return t.Module;case te.Namespace:return t.Namespace;case te.Package:return t.Package;case te.Class:return t.Class;case te.Method:return t.Method;case te.Property:return t.Property;case te.Field:return t.Field;case te.Constructor:return t.Constructor;case te.Enum:return t.Enum;case te.Interface:return t.Interface;case te.Function:return t.Function;case te.Variable:return t.Variable;case te.Constant:return t.Constant;case te.String:return t.String;case te.Number:return t.Number;case te.Boolean:return t.Boolean;case te.Array:return t.Array}return t.Function}(e.kind),range:vt(e.location.range),selectionRange:vt(e.location.range),tags:[]}})})},e}();function Ct(e){return{tabSize:e.tabSize,insertSpaces:e.insertSpaces}}var wt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentFormattingEdits=function(e,t,r){var n=e.uri;return this._worker(n).then(function(e){return e.format(n.toString(),null,Ct(t)).then(function(e){if(e&&0!==e.length)return e.map(yt)})})},e}(),At=function(){function e(e){this._worker=e}return e.prototype.provideDocumentRangeFormattingEdits=function(e,t,r,n){var i=e.uri;return this._worker(i).then(function(e){return e.format(i.toString(),gt(t),Ct(r)).then(function(e){if(e&&0!==e.length)return e.map(yt)})})},e}(),It=function(){function e(e){this._worker=e}return e.prototype.provideDocumentColors=function(e,t){var r=e.uri;return this._worker(r).then(function(e){return e.findDocumentColors(r.toString())}).then(function(e){if(e)return e.map(function(e){return{color:e.color,range:vt(e.range)}})})},e.prototype.provideColorPresentations=function(e,t,r){var n=e.uri;return this._worker(n).then(function(e){return e.getColorPresentations(n.toString(),t.color,gt(t.range))}).then(function(e){if(e)return e.map(function(e){var t={label:e.label};return e.textEdit&&(t.textEdit=yt(e.textEdit)),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(yt)),t})})},e}(),Tt=function(){function e(e){this._worker=e}return e.prototype.provideFoldingRanges=function(e,t,r){var n=e.uri;return this._worker(n).then(function(e){return e.getFoldingRanges(n.toString(),t)}).then(function(e){if(e)return e.map(function(e){var t={start:e.startLine+1,end:e.endLine+1};return void 0!==e.kind&&(t.kind=function(e){switch(e){case v.Comment:return monaco.languages.FoldingRangeKind.Comment;case v.Imports:return monaco.languages.FoldingRangeKind.Imports;case v.Region:return monaco.languages.FoldingRangeKind.Region}return}(e.kind)),t})})},e}();var Et=function(){function e(e){this._worker=e}return e.prototype.provideSelectionRanges=function(e,t,r){var n=e.uri;return this._worker(n).then(function(e){return e.getSelectionRanges(n.toString(),t.map(dt))}).then(function(e){if(e)return e.map(function(e){for(var t=[];e;)t.push({range:vt(e.range)}),e=e.parent;return t})})},e}();function Ot(e){return{getInitialState:function(){return new Wt(null,null,!1)},tokenize:function(t,r,n,i){return function(e,t,r,n,i){void 0===n&&(n=0);var o=0,a=!1;switch(r.scanError){case 2:t='"'+t,o=1;break;case 1:t="/*"+t,o=2}var s,u,c=j(t),l=r.lastWasColon;u={tokens:[],endState:r.clone()};for(;;){var f=n+c.getPosition(),h="";if(17===(s=c.scan()))break;if(f===n+c.getPosition())throw new Error("Scanner did not advance, next 3 characters are: "+t.substr(c.getPosition(),3));switch(a&&(f-=o),a=o>0,s){case 1:case 2:h=jt,l=!1;break;case 3:case 4:h=Pt,l=!1;break;case 6:h=Mt,l=!0;break;case 5:h=_t,l=!1;break;case 8:case 9:h=Vt,l=!1;break;case 7:h=Ft,l=!1;break;case 10:h=l?Nt:$t,l=!1;break;case 11:h=Rt,l=!1}if(e)switch(s){case 12:h=Dt;break;case 13:h=Lt}u.endState=new Wt(r.getStateData(),c.getTokenError(),l),u.tokens.push({startIndex:f,scopes:h})}return u}(e,t,r,n)}}}var jt="delimiter.bracket.json",Pt="delimiter.array.json",Mt="delimiter.colon.json",_t="delimiter.comma.json",Vt="keyword.json",Ft="keyword.json",Nt="string.value.json",Rt="number.json",$t="string.key.json",Lt="comment.block.json",Dt="comment.line.json",Wt=function(){function e(e,t,r){this._state=e,this.scanError=t,this.lastWasColon=r}return e.prototype.clone=function(){return new e(this._state,this.scanError,this.lastWasColon)},e.prototype.equals=function(t){return t===this||!!(t&&t instanceof e)&&(this.scanError===t.scanError&&this.lastWasColon===t.lastWasColon)},e.prototype.getStateData=function(){return this._state},e.prototype.setStateData=function(e){this._state=e},e}();function Ut(e){var t=[],r=[],n=new i(e);t.push(n);var o=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return n.getLanguageServiceWorker.apply(n,e)};function a(){var t=e.languageId,n=e.modeConfiguration;Bt(r),n.documentFormattingEdits&&r.push(monaco.languages.registerDocumentFormattingEditProvider(t,new wt(o))),n.documentRangeFormattingEdits&&r.push(monaco.languages.registerDocumentRangeFormattingEditProvider(t,new At(o))),n.completionItems&&r.push(monaco.languages.registerCompletionItemProvider(t,new bt(o))),n.hovers&&r.push(monaco.languages.registerHoverProvider(t,new St(o))),n.documentSymbols&&r.push(monaco.languages.registerDocumentSymbolProvider(t,new kt(o))),n.tokens&&r.push(monaco.languages.setTokensProvider(t,Ot(!0))),n.colors&&r.push(monaco.languages.registerColorProvider(t,new It(o))),n.foldingRanges&&r.push(monaco.languages.registerFoldingRangeProvider(t,new Tt(o))),n.diagnostics&&r.push(new mt(t,o,e)),n.selectionRanges&&r.push(monaco.languages.registerSelectionRangeProvider(t,new Et(o)))}a(),t.push(monaco.languages.setLanguageConfiguration(e.languageId,Kt));var s=e.modeConfiguration;return e.onDidChange(function(e){e.modeConfiguration!==s&&(s=e.modeConfiguration,a())}),t.push(qt(r)),qt(t)}function qt(e){return{dispose:function(){return Bt(e)}}}function Bt(e){for(;e.length;)e.pop().dispose()}r.d(t,"setupMode",function(){return Ut});var Kt={wordPattern:/(-?\d*\.\d\w*)|([^\[\{\]\}\:\"\,\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string"]},{open:"[",close:"]",notIn:["string"]},{open:'"',close:'"',notIn:["string"]}]}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-8f85"],{"6a/n":function(e,t,r){"use strict";(function(e){r.d(t,"a",function(){return p});var n,i,o=function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();if("object"==typeof e)i="win32"===e.platform;else if("object"==typeof navigator){var a=navigator.userAgent;i=a.indexOf("Windows")>=0}var s=/^\w[\w\d+.-]*$/,u=/^\//,c=/^\/\//;var l="",f="/",h=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,p=function(){function e(e,t,r,n,i,o){void 0===o&&(o=!1),"object"==typeof e?(this.scheme=e.scheme||l,this.authority=e.authority||l,this.path=e.path||l,this.query=e.query||l,this.fragment=e.fragment||l):(this.scheme=function(e,t){return e||t?e:"file"}(e,o),this.authority=t||l,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==f&&(t=f+t):t=f}return t}(this.scheme,r||l),this.query=n||l,this.fragment=i||l,function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!s.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!u.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(c.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,o))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return b(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,r=e.authority,n=e.path,i=e.query,o=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=l),void 0===r?r=this.authority:null===r&&(r=l),void 0===n?n=this.path:null===n&&(n=l),void 0===i?i=this.query:null===i&&(i=l),void 0===o?o=this.fragment:null===o&&(o=l),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&o===this.fragment?this:new d(t,r,n,i,o)},e.parse=function(e,t){void 0===t&&(t=!1);var r=h.exec(e);return r?new d(r[2]||l,decodeURIComponent(r[4]||l),decodeURIComponent(r[5]||l),decodeURIComponent(r[7]||l),decodeURIComponent(r[9]||l),t):new d(l,l,l,l,l)},e.file=function(e){var t=l;if(i&&(e=e.replace(/\\/g,f)),e[0]===f&&e[1]===f){var r=e.indexOf(f,2);-1===r?(t=e.substring(2),e=f):(t=e.substring(2,r),e=e.substring(r)||f)}return new d("file",t,e,l,l)},e.from=function(e){return new d(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),x(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var r=new d(t);return r._formatted=t.external,r._fsPath=t._sep===m?t.fsPath:null,r}return t},e}(),m=i?1:void 0,d=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return o(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=b(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?x(this,!0):(this._formatted||(this._formatted=x(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=m),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(p),g=((n={})[58]="%3A",n[47]="%2F",n[63]="%3F",n[35]="%23",n[91]="%5B",n[93]="%5D",n[64]="%40",n[33]="%21",n[36]="%24",n[38]="%26",n[39]="%27",n[40]="%28",n[41]="%29",n[42]="%2A",n[43]="%2B",n[44]="%2C",n[59]="%3B",n[61]="%3D",n[32]="%20",n);function v(e,t){for(var r=void 0,n=-1,i=0;i<e.length;i++){var o=e.charCodeAt(i);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o)-1!==n&&(r+=encodeURIComponent(e.substring(n,i)),n=-1),void 0!==r&&(r+=e.charAt(i));else{void 0===r&&(r=e.substr(0,i));var a=g[o];void 0!==a?(-1!==n&&(r+=encodeURIComponent(e.substring(n,i)),n=-1),r+=a):-1===n&&(n=i)}}return-1!==n&&(r+=encodeURIComponent(e.substring(n))),void 0!==r?r:e}function y(e){for(var t=void 0,r=0;r<e.length;r++){var n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=g[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function b(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,i&&(t=t.replace(/\//g,"\\")),t}function x(e,t){var r=t?y:v,n="",i=e.scheme,o=e.authority,a=e.path,s=e.query,u=e.fragment;if(i&&(n+=i,n+=":"),(o||"file"===i)&&(n+=f,n+=f),o){var c=o.indexOf("@");if(-1!==c){var l=o.substr(0,c);o=o.substr(c+1),-1===(c=l.indexOf(":"))?n+=r(l,!1):(n+=r(l.substr(0,c),!1),n+=":",n+=r(l.substr(c+1),!1)),n+="@"}-1===(c=(o=o.toLowerCase()).indexOf(":"))?n+=r(o,!1):(n+=r(o.substr(0,c),!1),n+=o.substr(c))}if(a){if(a.length>=3&&47===a.charCodeAt(0)&&58===a.charCodeAt(2))(h=a.charCodeAt(1))>=65&&h<=90&&(a="/"+String.fromCharCode(h+32)+":"+a.substr(3));else if(a.length>=2&&58===a.charCodeAt(1)){var h;(h=a.charCodeAt(0))>=65&&h<=90&&(a=String.fromCharCode(h+32)+":"+a.substr(2))}n+=r(a,!0)}return s&&(n+="?",n+=r(s,!1)),u&&(n+="#",n+=t?u:v(u,!1)),n}}).call(this,r("TDnd"))},cm7A:function(e,t,r){"use strict";r.r(t);var n,i=function(){function e(e){var t=this;this._defaults=e,this._worker=null,this._idleCheckInterval=setInterval(function(){return t._checkIfIdle()},3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(function(){return t._stopWorker()})}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()},e.prototype._checkIfIdle=function(){this._worker&&(Date.now()-this._lastUsedTime>12e4&&this._stopWorker())},e.prototype._getClient=function(){return this._lastUsedTime=Date.now(),this._client||(this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/json/jsonWorker",label:this._defaults.languageId,createData:{languageSettings:this._defaults.diagnosticsOptions,languageId:this._defaults.languageId,enableSchemaRequest:this._defaults.diagnosticsOptions.enableSchemaRequest}}),this._client=this._worker.getProxy()),this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return this._getClient().then(function(t){e=t}).then(function(e){return t._worker.withSyncedResources(r)}).then(function(t){return e})},e}();function o(e,t){void 0===t&&(t=!1);var r=e.length,n=0,i="",o=0,c=16,l=0,f=0,h=0,p=0,m=0;function d(t,r){for(var i=0,o=0;i<t||!r;){var a=e.charCodeAt(n);if(a>=48&&a<=57)o=16*o+a-48;else if(a>=65&&a<=70)o=16*o+a-65+10;else{if(!(a>=97&&a<=102))break;o=16*o+a-97+10}n++,i++}return i<t&&(o=-1),o}function g(){if(i="",m=0,o=n,f=l,p=h,n>=r)return o=r,c=17;var t=e.charCodeAt(n);if(a(t)){do{n++,i+=String.fromCharCode(t),t=e.charCodeAt(n)}while(a(t));return c=15}if(s(t))return n++,i+=String.fromCharCode(t),13===t&&10===e.charCodeAt(n)&&(n++,i+="\n"),l++,h=n,c=14;switch(t){case 123:return n++,c=1;case 125:return n++,c=2;case 91:return n++,c=3;case 93:return n++,c=4;case 58:return n++,c=6;case 44:return n++,c=5;case 34:return n++,i=function(){for(var t="",i=n;;){if(n>=r){t+=e.substring(i,n),m=2;break}var o=e.charCodeAt(n);if(34===o){t+=e.substring(i,n),n++;break}if(92!==o){if(o>=0&&o<=31){if(s(o)){t+=e.substring(i,n),m=2;break}m=6}n++}else{if(t+=e.substring(i,n),++n>=r){m=2;break}switch(e.charCodeAt(n++)){case 34:t+='"';break;case 92:t+="\\";break;case 47:t+="/";break;case 98:t+="\b";break;case 102:t+="\f";break;case 110:t+="\n";break;case 114:t+="\r";break;case 116:t+="\t";break;case 117:var a=d(4,!0);a>=0?t+=String.fromCharCode(a):m=4;break;default:m=5}i=n}}return t}(),c=10;case 47:var g=n-1;if(47===e.charCodeAt(n+1)){for(n+=2;n<r&&!s(e.charCodeAt(n));)n++;return i=e.substring(g,n),c=12}if(42===e.charCodeAt(n+1)){n+=2;for(var y=r-1,b=!1;n<y;){var x=e.charCodeAt(n);if(42===x&&47===e.charCodeAt(n+1)){n+=2,b=!0;break}n++,s(x)&&(13===x&&10===e.charCodeAt(n)&&n++,l++,h=n)}return b||(n++,m=1),i=e.substring(g,n),c=13}return i+=String.fromCharCode(t),n++,c=16;case 45:if(i+=String.fromCharCode(t),++n===r||!u(e.charCodeAt(n)))return c=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return i+=function(){var t=n;if(48===e.charCodeAt(n))n++;else for(n++;n<e.length&&u(e.charCodeAt(n));)n++;if(n<e.length&&46===e.charCodeAt(n)){if(!(++n<e.length&&u(e.charCodeAt(n))))return m=3,e.substring(t,n);for(n++;n<e.length&&u(e.charCodeAt(n));)n++}var r=n;if(n<e.length&&(69===e.charCodeAt(n)||101===e.charCodeAt(n)))if((++n<e.length&&43===e.charCodeAt(n)||45===e.charCodeAt(n))&&n++,n<e.length&&u(e.charCodeAt(n))){for(n++;n<e.length&&u(e.charCodeAt(n));)n++;r=n}else m=3;return e.substring(t,r)}(),c=11;default:for(;n<r&&v(t);)n++,t=e.charCodeAt(n);if(o!==n){switch(i=e.substring(o,n)){case"true":return c=8;case"false":return c=9;case"null":return c=7}return c=16}return i+=String.fromCharCode(t),n++,c=16}}function v(e){if(a(e)||s(e))return!1;switch(e){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}return{setPosition:function(e){n=e,i="",o=0,c=16,m=0},getPosition:function(){return n},scan:t?function(){var e;do{e=g()}while(e>=12&&e<=15);return e}:g,getToken:function(){return c},getTokenValue:function(){return i},getTokenOffset:function(){return o},getTokenLength:function(){return n-o},getTokenStartLine:function(){return f},getTokenStartCharacter:function(){return o-p},getTokenError:function(){return m}}}function a(e){return 32===e||9===e||11===e||12===e||160===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function s(e){return 10===e||13===e||8232===e||8233===e}function u(e){return e>=48&&e<=57}function c(e,t,r){void 0===r&&(r=n.DEFAULT);var i=o(e,!1);function a(e){return e?function(){return e(i.getTokenOffset(),i.getTokenLength(),i.getTokenStartLine(),i.getTokenStartCharacter())}:function(){return!0}}function s(e){return e?function(t){return e(t,i.getTokenOffset(),i.getTokenLength(),i.getTokenStartLine(),i.getTokenStartCharacter())}:function(){return!0}}var u=a(t.onObjectBegin),c=s(t.onObjectProperty),l=a(t.onObjectEnd),f=a(t.onArrayBegin),h=a(t.onArrayEnd),p=s(t.onLiteralValue),m=s(t.onSeparator),d=a(t.onComment),g=s(t.onError),v=r&&r.disallowComments,y=r&&r.allowTrailingComma;function b(){for(;;){var e=i.scan();switch(i.getTokenError()){case 4:x(14);break;case 5:x(15);break;case 3:x(13);break;case 1:v||x(11);break;case 2:x(12);break;case 6:x(16)}switch(e){case 12:case 13:v?x(10):d();break;case 16:x(1);break;case 15:case 14:break;default:return e}}}function x(e,t,r){if(void 0===t&&(t=[]),void 0===r&&(r=[]),g(e),t.length+r.length>0)for(var n=i.getToken();17!==n;){if(-1!==t.indexOf(n)){b();break}if(-1!==r.indexOf(n))break;n=b()}}function S(e){var t=i.getTokenValue();return e?p(t):c(t),b(),!0}function k(){switch(i.getToken()){case 3:return function(){f(),b();for(var e=!1;4!==i.getToken()&&17!==i.getToken();){if(5===i.getToken()){if(e||x(4,[],[]),m(","),b(),4===i.getToken()&&y)break}else e&&x(6,[],[]);k()||x(4,[],[4,5]),e=!0}return h(),4!==i.getToken()?x(8,[4],[]):b(),!0}();case 1:return function(){u(),b();for(var e=!1;2!==i.getToken()&&17!==i.getToken();){if(5===i.getToken()){if(e||x(4,[],[]),m(","),b(),2===i.getToken()&&y)break}else e&&x(6,[],[]);(10!==i.getToken()?(x(3,[],[2,5]),0):(S(!1),6===i.getToken()?(m(":"),b(),k()||x(4,[],[2,5])):x(5,[],[2,5]),1))||x(4,[],[2,5]),e=!0}return l(),2!==i.getToken()?x(7,[2],[]):b(),!0}();case 10:return S(!0);default:return function(){switch(i.getToken()){case 11:var e=0;try{"number"!=typeof(e=JSON.parse(i.getTokenValue()))&&(x(2),e=0)}catch(e){x(2)}p(e);break;case 7:p(null);break;case 8:p(!0);break;case 9:p(!1);break;default:return!1}return b(),!0}()}}return b(),17===i.getToken()?!!r.allowEmptyContent||(x(4,[],[]),!1):k()?(17!==i.getToken()&&x(9,[],[]),!0):(x(4,[],[]),!1)}!function(e){e.DEFAULT={allowTrailingComma:!1}}(n||(n={}));var l,f,h,p,m,d,g,v,y,b,x,S,k,C,w,A,I,T,E,O,j=o,P=function(e,t,r){void 0===t&&(t=[]),void 0===r&&(r=n.DEFAULT);var i=null,o=[],a=[];function s(e){Array.isArray(o)?o.push(e):null!==i&&(o[i]=e)}return c(e,{onObjectBegin:function(){var e={};s(e),a.push(o),o=e,i=null},onObjectProperty:function(e){i=e},onObjectEnd:function(){o=a.pop()},onArrayBegin:function(){var e=[];s(e),a.push(o),o=e,i=null},onArrayEnd:function(){o=a.pop()},onLiteralValue:s,onError:function(e,r,n){t.push({error:e,offset:r,length:n})}},r),o[0]},M=function e(t,r,n){if(void 0===n&&(n=!1),function(e,t,r){return void 0===r&&(r=!1),t>=e.offset&&t<e.offset+e.length||r&&t===e.offset+e.length}(t,r,n)){var i=t.children;if(Array.isArray(i))for(var o=0;o<i.length&&i[o].offset<=r;o++){var a=e(i[o],r,n);if(a)return a}return t}},_=function e(t){if(!t.parent||!t.parent.children)return[];var r=e(t.parent);if("property"===t.parent.type){var n=t.parent.children[0].value;r.push(n)}else if("array"===t.parent.type){var i=t.parent.children.indexOf(t);-1!==i&&r.push(i)}return r},V=function e(t){switch(t.type){case"array":return t.children.map(e);case"object":for(var r=Object.create(null),n=0,i=t.children;n<i.length;n++){var o=i[n],a=o.children[1];a&&(r[o.children[0].value]=e(a))}return r;case"null":case"string":case"number":case"boolean":return t.value;default:return}};function F(e,t){if(e===t)return!0;if(null===e||void 0===e||null===t||void 0===t)return!1;if(typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)!==Array.isArray(t))return!1;var r,n;if(Array.isArray(e)){if(e.length!==t.length)return!1;for(r=0;r<e.length;r++)if(!F(e[r],t[r]))return!1}else{var i=[];for(n in e)i.push(n);i.sort();var o=[];for(n in t)o.push(n);if(o.sort(),!F(i,o))return!1;for(r=0;r<i.length;r++)if(!F(e[i[r]],t[i[r]]))return!1}return!0}function N(e){return"number"==typeof e}function R(e){return void 0!==e}function $(e){return"boolean"==typeof e}!function(e){e.create=function(e,t){return{line:e,character:t}},e.is=function(e){var t=e;return me.objectLiteral(t)&&me.number(t.line)&&me.number(t.character)}}(l||(l={})),function(e){e.create=function(e,t,r,n){if(me.number(e)&&me.number(t)&&me.number(r)&&me.number(n))return{start:l.create(e,t),end:l.create(r,n)};if(l.is(e)&&l.is(t))return{start:e,end:t};throw new Error("Range#create called with invalid arguments["+e+", "+t+", "+r+", "+n+"]")},e.is=function(e){var t=e;return me.objectLiteral(t)&&l.is(t.start)&&l.is(t.end)}}(f||(f={})),function(e){e.create=function(e,t){return{uri:e,range:t}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.string(t.uri)||me.undefined(t.uri))}}(h||(h={})),function(e){e.create=function(e,t,r,n){return{targetUri:e,targetRange:t,targetSelectionRange:r,originSelectionRange:n}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.targetRange)&&me.string(t.targetUri)&&(f.is(t.targetSelectionRange)||me.undefined(t.targetSelectionRange))&&(f.is(t.originSelectionRange)||me.undefined(t.originSelectionRange))}}(p||(p={})),function(e){e.create=function(e,t,r,n){return{red:e,green:t,blue:r,alpha:n}},e.is=function(e){var t=e;return me.number(t.red)&&me.number(t.green)&&me.number(t.blue)&&me.number(t.alpha)}}(m||(m={})),function(e){e.create=function(e,t){return{range:e,color:t}},e.is=function(e){var t=e;return f.is(t.range)&&m.is(t.color)}}(d||(d={})),function(e){e.create=function(e,t,r){return{label:e,textEdit:t,additionalTextEdits:r}},e.is=function(e){var t=e;return me.string(t.label)&&(me.undefined(t.textEdit)||w.is(t))&&(me.undefined(t.additionalTextEdits)||me.typedArray(t.additionalTextEdits,w.is))}}(g||(g={})),function(e){e.Comment="comment",e.Imports="imports",e.Region="region"}(v||(v={})),function(e){e.create=function(e,t,r,n,i){var o={startLine:e,endLine:t};return me.defined(r)&&(o.startCharacter=r),me.defined(n)&&(o.endCharacter=n),me.defined(i)&&(o.kind=i),o},e.is=function(e){var t=e;return me.number(t.startLine)&&me.number(t.startLine)&&(me.undefined(t.startCharacter)||me.number(t.startCharacter))&&(me.undefined(t.endCharacter)||me.number(t.endCharacter))&&(me.undefined(t.kind)||me.string(t.kind))}}(y||(y={})),function(e){e.create=function(e,t){return{location:e,message:t}},e.is=function(e){var t=e;return me.defined(t)&&h.is(t.location)&&me.string(t.message)}}(b||(b={})),function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4}(x||(x={})),function(e){e.Unnecessary=1,e.Deprecated=2}(S||(S={})),function(e){e.create=function(e,t,r,n,i,o){var a={range:e,message:t};return me.defined(r)&&(a.severity=r),me.defined(n)&&(a.code=n),me.defined(i)&&(a.source=i),me.defined(o)&&(a.relatedInformation=o),a},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&me.string(t.message)&&(me.number(t.severity)||me.undefined(t.severity))&&(me.number(t.code)||me.string(t.code)||me.undefined(t.code))&&(me.string(t.source)||me.undefined(t.source))&&(me.undefined(t.relatedInformation)||me.typedArray(t.relatedInformation,b.is))}}(k||(k={})),function(e){e.create=function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var i={title:e,command:t};return me.defined(r)&&r.length>0&&(i.arguments=r),i},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.title)&&me.string(t.command)}}(C||(C={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){var t=e;return me.objectLiteral(t)&&me.string(t.newText)&&f.is(t.range)}}(w||(w={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){var t=e;return me.defined(t)&&D.is(t.textDocument)&&Array.isArray(t.edits)}}(A||(A={})),function(e){e.create=function(e,t){var r={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(r.options=t),r},e.is=function(e){var t=e;return t&&"create"===t.kind&&me.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||me.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||me.boolean(t.options.ignoreIfExists)))}}(I||(I={})),function(e){e.create=function(e,t,r){var n={kind:"rename",oldUri:e,newUri:t};return void 0===r||void 0===r.overwrite&&void 0===r.ignoreIfExists||(n.options=r),n},e.is=function(e){var t=e;return t&&"rename"===t.kind&&me.string(t.oldUri)&&me.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||me.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||me.boolean(t.options.ignoreIfExists)))}}(T||(T={})),function(e){e.create=function(e,t){var r={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(r.options=t),r},e.is=function(e){var t=e;return t&&"delete"===t.kind&&me.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||me.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||me.boolean(t.options.ignoreIfNotExists)))}}(E||(E={})),function(e){e.is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every(function(e){return me.string(e.kind)?I.is(e)||T.is(e)||E.is(e):A.is(e)}))}}(O||(O={}));var L,D,W,U,q,B,K,J,z,H,G,Z,X,Q,Y,ee,te,re,ne,ie,oe,ae,se,ue,ce,le,fe,he=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(w.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(w.replace(e,t))},e.prototype.delete=function(e){this.edits.push(w.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach(function(e){if(A.is(e)){var r=new he(e.edits);t._textEditChanges[e.textDocument.uri]=r}}):e.changes&&Object.keys(e.changes).forEach(function(r){var n=new he(e.changes[r]);t._textEditChanges[r]=n}))}Object.defineProperty(e.prototype,"edit",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(D.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t=e;if(!(n=this._textEditChanges[t.uri])){var r={textDocument:t,edits:i=[]};this._workspaceEdit.documentChanges.push(r),n=new he(i),this._textEditChanges[t.uri]=n}return n}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var n;if(!(n=this._textEditChanges[e])){var i=[];this._workspaceEdit.changes[e]=i,n=new he(i),this._textEditChanges[e]=n}return n},e.prototype.createFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(I.create(e,t))},e.prototype.renameFile=function(e,t,r){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(T.create(e,t,r))},e.prototype.deleteFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(E.create(e,t))},e.prototype.checkDocumentChanges=function(){if(!this._workspaceEdit||!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.")}}();!function(e){e.create=function(e){return{uri:e}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)}}(L||(L={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)&&(null===t.version||me.number(t.version))}}(D||(D={})),function(e){e.create=function(e,t,r,n){return{uri:e,languageId:t,version:r,text:n}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)&&me.string(t.languageId)&&me.number(t.version)&&me.string(t.text)}}(W||(W={})),function(e){e.PlainText="plaintext",e.Markdown="markdown"}(U||(U={})),function(e){e.is=function(t){var r=t;return r===e.PlainText||r===e.Markdown}}(U||(U={})),function(e){e.is=function(e){var t=e;return me.objectLiteral(e)&&U.is(t.kind)&&me.string(t.value)}}(q||(q={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(B||(B={})),function(e){e.PlainText=1,e.Snippet=2}(K||(K={})),function(e){e.Deprecated=1}(J||(J={})),function(e){e.create=function(e){return{label:e}}}(z||(z={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}(H||(H={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){var t=e;return me.string(t)||me.objectLiteral(t)&&me.string(t.language)&&me.string(t.value)}}(G||(G={})),function(e){e.is=function(e){var t=e;return!!t&&me.objectLiteral(t)&&(q.is(t.contents)||G.is(t.contents)||me.typedArray(t.contents,G.is))&&(void 0===e.range||f.is(e.range))}}(Z||(Z={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(X||(X={})),function(e){e.create=function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var i={label:e};return me.defined(t)&&(i.documentation=t),me.defined(r)?i.parameters=r:i.parameters=[],i}}(Q||(Q={})),function(e){e.Text=1,e.Read=2,e.Write=3}(Y||(Y={})),function(e){e.create=function(e,t){var r={range:e};return me.number(t)&&(r.kind=t),r}}(ee||(ee={})),function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(te||(te={})),function(e){e.Deprecated=1}(re||(re={})),function(e){e.create=function(e,t,r,n,i){var o={name:e,kind:t,location:{uri:n,range:r}};return i&&(o.containerName=i),o}}(ne||(ne={})),function(e){e.create=function(e,t,r,n,i,o){var a={name:e,detail:t,kind:r,range:n,selectionRange:i};return void 0!==o&&(a.children=o),a},e.is=function(e){var t=e;return t&&me.string(t.name)&&me.number(t.kind)&&f.is(t.range)&&f.is(t.selectionRange)&&(void 0===t.detail||me.string(t.detail))&&(void 0===t.deprecated||me.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))}}(ie||(ie={})),function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"}(oe||(oe={})),function(e){e.create=function(e,t){var r={diagnostics:e};return void 0!==t&&null!==t&&(r.only=t),r},e.is=function(e){var t=e;return me.defined(t)&&me.typedArray(t.diagnostics,k.is)&&(void 0===t.only||me.typedArray(t.only,me.string))}}(ae||(ae={})),function(e){e.create=function(e,t,r){var n={title:e};return C.is(t)?n.command=t:n.edit=t,void 0!==r&&(n.kind=r),n},e.is=function(e){var t=e;return t&&me.string(t.title)&&(void 0===t.diagnostics||me.typedArray(t.diagnostics,k.is))&&(void 0===t.kind||me.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||C.is(t.command))&&(void 0===t.isPreferred||me.boolean(t.isPreferred))&&(void 0===t.edit||O.is(t.edit))}}(se||(se={})),function(e){e.create=function(e,t){var r={range:e};return me.defined(t)&&(r.data=t),r},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.undefined(t.command)||C.is(t.command))}}(ue||(ue={})),function(e){e.create=function(e,t){return{tabSize:e,insertSpaces:t}},e.is=function(e){var t=e;return me.defined(t)&&me.number(t.tabSize)&&me.boolean(t.insertSpaces)}}(ce||(ce={})),function(e){e.create=function(e,t,r){return{range:e,target:t,data:r}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.undefined(t.target)||me.string(t.target))}}(le||(le={})),function(e){e.create=function(e,t){return{range:e,parent:t}},e.is=function(t){var r=t;return void 0!==r&&f.is(r.range)&&(void 0===r.parent||e.is(r.parent))}}(fe||(fe={}));var pe;!function(e){e.create=function(e,t,r,n){return new de(e,t,r,n)},e.is=function(e){var t=e;return!!(me.defined(t)&&me.string(t.uri)&&(me.undefined(t.languageId)||me.string(t.languageId))&&me.number(t.lineCount)&&me.func(t.getText)&&me.func(t.positionAt)&&me.func(t.offsetAt))},e.applyEdits=function(e,t){for(var r=e.getText(),n=function e(t,r){if(t.length<=1)return t;var n=t.length/2|0,i=t.slice(0,n),o=t.slice(n);e(i,r),e(o,r);for(var a=0,s=0,u=0;a<i.length&&s<o.length;){var c=r(i[a],o[s]);t[u++]=c<=0?i[a++]:o[s++]}for(;a<i.length;)t[u++]=i[a++];for(;s<o.length;)t[u++]=o[s++];return t}(t,function(e,t){var r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=r.length,o=n.length-1;o>=0;o--){var a=n[o],s=e.offsetAt(a.range.start),u=e.offsetAt(a.range.end);if(!(u<=i))throw new Error("Overlapping edit");r=r.substring(0,s)+a.newText+r.substring(u,r.length),i=s}return r}}(pe||(pe={}));var me,de=function(){function e(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,r=!0,n=0;n<t.length;n++){r&&(e.push(n),r=!1);var i=t.charAt(n);r="\r"===i||"\n"===i,"\r"===i&&n+1<t.length&&"\n"===t.charAt(n+1)&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return l.create(0,e);for(;r<n;){var i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}var o=r-1;return l.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e}();!function(e){var t=Object.prototype.toString;e.defined=function(e){return void 0!==e},e.undefined=function(e){return void 0===e},e.boolean=function(e){return!0===e||!1===e},e.string=function(e){return"[object String]"===t.call(e)},e.number=function(e){return"[object Number]"===t.call(e)},e.func=function(e){return"[object Function]"===t.call(e)},e.objectLiteral=function(e){return null!==e&&"object"==typeof e},e.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)}}(me||(me={}));var ge,ve,ye,be=function(){function e(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content},e.prototype.update=function(t,r){for(var n=0,i=t;n<i.length;n++){var o=i[n];if(e.isIncremental(o)){var a=Se(o.range),s=this.offsetAt(a.start),u=this.offsetAt(a.end);this._content=this._content.substring(0,s)+o.text+this._content.substring(u,this._content.length);var c=Math.max(a.start.line,0),l=Math.max(a.end.line,0),f=this._lineOffsets,h=xe(o.text,!1,s);if(l-c===h.length)for(var p=0,m=h.length;p<m;p++)f[p+c+1]=h[p];else h.length<1e4?f.splice.apply(f,[c+1,l-c].concat(h)):this._lineOffsets=f=f.slice(0,c+1).concat(h,f.slice(l+1));var d=o.text.length-(u-s);if(0!==d)for(p=c+1+h.length,m=f.length;p<m;p++)f[p]=f[p]+d}else{if(!e.isFull(o))throw new Error("Unknown change event received");this._content=o.text,this._lineOffsets=void 0}}this._version=r},e.prototype.getLineOffsets=function(){return void 0===this._lineOffsets&&(this._lineOffsets=xe(this._content,!0)),this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return{line:0,character:e};for(;r<n;){var i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}var o=r-1;return{line:o,character:e-t[o]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e.isIncremental=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)},e.isFull=function(e){var t=e;return void 0!==t&&null!==t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength},e}();function xe(e,t,r){void 0===r&&(r=0);for(var n=t?[r]:[],i=0;i<e.length;i++){var o=e.charCodeAt(i);13!==o&&10!==o||(13===o&&i+1<e.length&&10===e.charCodeAt(i+1)&&i++,n.push(r+i+1))}return n}function Se(e){var t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function ke(e){var t=Se(e.range);return t!==e.range?{newText:e.newText,range:t}:e}function Ce(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return function(e,t){return 0===t.length?e:e.replace(/\{(\d+)\}/g,function(e,r){var n=r[0];return void 0!==t[n]?t[n]:e})}(t,r)}function we(e){return Ce}!function(e){e.create=function(e,t,r,n){return new be(e,t,r,n)},e.update=function(e,t,r){if(e instanceof be)return e.update(t,r),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){for(var r=e.getText(),n=function e(t,r){if(t.length<=1)return t;var n=t.length/2|0,i=t.slice(0,n),o=t.slice(n);e(i,r),e(o,r);for(var a=0,s=0,u=0;a<i.length&&s<o.length;){var c=r(i[a],o[s]);t[u++]=c<=0?i[a++]:o[s++]}for(;a<i.length;)t[u++]=i[a++];for(;s<o.length;)t[u++]=o[s++];return t}(t.map(ke),function(e,t){var r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=r.length,o=n.length-1;o>=0;o--){var a=n[o],s=e.offsetAt(a.range.start),u=e.offsetAt(a.range.end);if(!(u<=i))throw new Error("Overlapping edit");r=r.substring(0,s)+a.newText+r.substring(u,r.length),i=s}return r}}(ge||(ge={})),function(e){e[e.Undefined=0]="Undefined",e[e.EnumValueMismatch=1]="EnumValueMismatch",e[e.UnexpectedEndOfComment=257]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=258]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=259]="UnexpectedEndOfNumber",e[e.InvalidUnicode=260]="InvalidUnicode",e[e.InvalidEscapeCharacter=261]="InvalidEscapeCharacter",e[e.InvalidCharacter=262]="InvalidCharacter",e[e.PropertyExpected=513]="PropertyExpected",e[e.CommaExpected=514]="CommaExpected",e[e.ColonExpected=515]="ColonExpected",e[e.ValueExpected=516]="ValueExpected",e[e.CommaOrCloseBacketExpected=517]="CommaOrCloseBacketExpected",e[e.CommaOrCloseBraceExpected=518]="CommaOrCloseBraceExpected",e[e.TrailingComma=519]="TrailingComma",e[e.DuplicateKey=520]="DuplicateKey",e[e.CommentNotPermitted=521]="CommentNotPermitted",e[e.SchemaResolveError=768]="SchemaResolveError"}(ve||(ve={})),(ye||(ye={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[U.Markdown,U.PlainText],commitCharactersSupport:!0}}}};var Ae,Ie=function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),Te=we(),Ee={"color-hex":{errorMessage:Te("colorHexFormatWarning","Invalid color format. Use #RGB, #RGBA, #RRGGBB or #RRGGBBAA."),pattern:/^#([0-9A-Fa-f]{3,4}|([0-9A-Fa-f]{2}){3,4})$/},"date-time":{errorMessage:Te("dateTimeFormatWarning","String is not a RFC3339 date-time."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},date:{errorMessage:Te("dateFormatWarning","String is not a RFC3339 date."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/i},time:{errorMessage:Te("timeFormatWarning","String is not a RFC3339 time."),pattern:/^([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},email:{errorMessage:Te("emailFormatWarning","String is not an e-mail address."),pattern:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/}},Oe=function(){function e(e,t,r){this.offset=t,this.length=r,this.parent=e}return Object.defineProperty(e.prototype,"children",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype.toString=function(){return"type: "+this.type+" ("+this.offset+"/"+this.length+")"+(this.parent?" parent: {"+this.parent.toString()+"}":"")},e}();(function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="null",n.value=null,n}Ie(t,e)})(Oe),function(e){function t(t,r,n){var i=e.call(this,t,n)||this;return i.type="boolean",i.value=r,i}Ie(t,e)}(Oe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="array",n.items=[],n}Ie(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.items},enumerable:!0,configurable:!0})}(Oe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="number",n.isInteger=!0,n.value=Number.NaN,n}Ie(t,e)}(Oe),function(e){function t(t,r,n){var i=e.call(this,t,r,n)||this;return i.type="string",i.value="",i}Ie(t,e)}(Oe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="property",n.colonOffset=-1,n}Ie(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.valueNode?[this.keyNode,this.valueNode]:[this.keyNode]},enumerable:!0,configurable:!0})}(Oe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="object",n.properties=[],n}Ie(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.properties},enumerable:!0,configurable:!0})}(Oe);function je(e){return $(e)?e?{}:{not:{}}:e}!function(e){e[e.Key=0]="Key",e[e.Enum=1]="Enum"}(Ae||(Ae={}));var Pe=function(){function e(e,t){void 0===e&&(e=-1),void 0===t&&(t=null),this.focusOffset=e,this.exclude=t,this.schemas=[]}return e.prototype.add=function(e){this.schemas.push(e)},e.prototype.merge=function(e){var t;(t=this.schemas).push.apply(t,e.schemas)},e.prototype.include=function(e){return(-1===this.focusOffset||Ne(e,this.focusOffset))&&e!==this.exclude},e.prototype.newSub=function(){return new e(-1,this.exclude)},e}(),Me=function(){function e(){}return Object.defineProperty(e.prototype,"schemas",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype.add=function(e){},e.prototype.merge=function(e){},e.prototype.include=function(e){return!0},e.prototype.newSub=function(){return this},e.instance=new e,e}(),_e=function(){function e(){this.problems=[],this.propertiesMatches=0,this.propertiesValueMatches=0,this.primaryValueMatches=0,this.enumValueMatch=!1,this.enumValues=null}return e.prototype.hasProblems=function(){return!!this.problems.length},e.prototype.mergeAll=function(e){for(var t=0,r=e;t<r.length;t++){var n=r[t];this.merge(n)}},e.prototype.merge=function(e){this.problems=this.problems.concat(e.problems)},e.prototype.mergeEnumValues=function(e){if(!this.enumValueMatch&&!e.enumValueMatch&&this.enumValues&&e.enumValues){this.enumValues=this.enumValues.concat(e.enumValues);for(var t=0,r=this.problems;t<r.length;t++){var n=r[t];n.code===ve.EnumValueMismatch&&(n.message=Te("enumWarning","Value is not accepted. Valid values: {0}.",this.enumValues.map(function(e){return JSON.stringify(e)}).join(", ")))}}},e.prototype.mergePropertyMatch=function(e){this.merge(e),this.propertiesMatches++,(e.enumValueMatch||!e.hasProblems()&&e.propertiesMatches)&&this.propertiesValueMatches++,e.enumValueMatch&&e.enumValues&&1===e.enumValues.length&&this.primaryValueMatches++},e.prototype.compare=function(e){var t=this.hasProblems();return t!==e.hasProblems()?t?-1:1:this.enumValueMatch!==e.enumValueMatch?e.enumValueMatch?-1:1:this.primaryValueMatches!==e.primaryValueMatches?this.primaryValueMatches-e.primaryValueMatches:this.propertiesValueMatches!==e.propertiesValueMatches?this.propertiesValueMatches-e.propertiesValueMatches:this.propertiesMatches-e.propertiesMatches},e}();function Ve(e){return V(e)}function Fe(e){return _(e)}function Ne(e,t,r){return void 0===r&&(r=!1),t>=e.offset&&t<e.offset+e.length||r&&t===e.offset+e.length}!function(){function e(e,t,r){void 0===t&&(t=[]),void 0===r&&(r=[]),this.root=e,this.syntaxErrors=t,this.comments=r}e.prototype.getNodeFromOffset=function(e,t){if(void 0===t&&(t=!1),this.root)return M(this.root,e,t)},e.prototype.visit=function(e){if(this.root){var t=function(r){var n=e(r),i=r.children;if(Array.isArray(i))for(var o=0;o<i.length&&n;o++)n=t(i[o]);return n};t(this.root)}},e.prototype.validate=function(e,t){if(this.root&&t){var r=new _e;return Re(this.root,t,r,Me.instance),r.problems.map(function(t){var r=f.create(e.positionAt(t.location.offset),e.positionAt(t.location.offset+t.location.length));return k.create(r,t.message,t.severity,t.code)})}return null},e.prototype.getMatchingSchemas=function(e,t,r){void 0===t&&(t=-1),void 0===r&&(r=null);var n=new Pe(t,r);return this.root&&e&&Re(this.root,e,new _e,n),n.schemas}}();function Re(e,t,r,n){if(e&&n.include(e)){switch(e.type){case"object":!function(e,t,r,n){for(var i=Object.create(null),o=[],a=0,s=e.properties;a<s.length;a++){var u=s[a],c=u.keyNode.value;i[c]=u.valueNode,o.push(c)}if(Array.isArray(t.required))for(var l=0,f=t.required;l<f.length;l++){var h=f[l];if(!i[h]){var p=e.parent&&"property"===e.parent.type&&e.parent.keyNode,m=p?{offset:p.offset,length:p.length}:{offset:e.offset,length:1};r.problems.push({location:m,severity:x.Warning,message:Te("MissingRequiredPropWarning",'Missing property "{0}".',h)})}}var d=function(e){for(var t=o.indexOf(e);t>=0;)o.splice(t,1),t=o.indexOf(e)};if(t.properties)for(var g=0,v=Object.keys(t.properties);g<v.length;g++){var h=v[g];d(h);var y=t.properties[h],b=i[h];if(b)if($(y))if(y)r.propertiesMatches++,r.propertiesValueMatches++;else{var u=b.parent;r.problems.push({location:{offset:u.keyNode.offset,length:u.keyNode.length},severity:x.Warning,message:t.errorMessage||Te("DisallowedExtraPropWarning","Property {0} is not allowed.",h)})}else{var S=new _e;Re(b,y,S,n),r.mergePropertyMatch(S)}}if(t.patternProperties)for(var k=0,C=Object.keys(t.patternProperties);k<C.length;k++)for(var w=C[k],A=new RegExp(w),I=0,T=o.slice(0);I<T.length;I++){var h=T[I];if(A.test(h)){d(h);var b=i[h];if(b){var y=t.patternProperties[w];if($(y))if(y)r.propertiesMatches++,r.propertiesValueMatches++;else{var u=b.parent;r.problems.push({location:{offset:u.keyNode.offset,length:u.keyNode.length},severity:x.Warning,message:t.errorMessage||Te("DisallowedExtraPropWarning","Property {0} is not allowed.",h)})}else{var S=new _e;Re(b,y,S,n),r.mergePropertyMatch(S)}}}}if("object"==typeof t.additionalProperties)for(var E=0,O=o;E<O.length;E++){var h=O[E],b=i[h];if(b){var S=new _e;Re(b,t.additionalProperties,S,n),r.mergePropertyMatch(S)}}else if(!1===t.additionalProperties&&o.length>0)for(var j=0,P=o;j<P.length;j++){var h=P[j],b=i[h];if(b){var u=b.parent;r.problems.push({location:{offset:u.keyNode.offset,length:u.keyNode.length},severity:x.Warning,message:t.errorMessage||Te("DisallowedExtraPropWarning","Property {0} is not allowed.",h)})}}N(t.maxProperties)&&e.properties.length>t.maxProperties&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("MaxPropWarning","Object has more properties than limit of {0}.",t.maxProperties)});N(t.minProperties)&&e.properties.length<t.minProperties&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("MinPropWarning","Object has fewer properties than the required number of {0}",t.minProperties)});if(t.dependencies)for(var M=0,_=Object.keys(t.dependencies);M<_.length;M++){var c=_[M],V=i[c];if(V){var F=t.dependencies[c];if(Array.isArray(F))for(var R=0,L=F;R<L.length;R++){var D=L[R];i[D]?r.propertiesValueMatches++:r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("RequiredDependentPropWarning","Object is missing property {0} required by property {1}.",D,c)})}else{var y=je(F);if(y){var S=new _e;Re(e,y,S,n),r.mergePropertyMatch(S)}}}}var W=je(t.propertyNames);if(W)for(var U=0,q=e.properties;U<q.length;U++){var B=q[U],c=B.keyNode;c&&Re(c,W,r,Me.instance)}}(e,t,r,n);break;case"array":!function(e,t,r,n){if(Array.isArray(t.items)){for(var i=t.items,o=0;o<i.length;o++){var a=i[o],s=je(a),u=new _e,c=e.items[o];c?(Re(c,s,u,n),r.mergePropertyMatch(u)):e.items.length>=i.length&&r.propertiesValueMatches++}if(e.items.length>i.length)if("object"==typeof t.additionalItems)for(var l=i.length;l<e.items.length;l++){var u=new _e;Re(e.items[l],t.additionalItems,u,n),r.mergePropertyMatch(u)}else!1===t.additionalItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("additionalItemsWarning","Array has too many items according to schema. Expected {0} or fewer.",i.length)})}else{var f=je(t.items);if(f)for(var h=0,p=e.items;h<p.length;h++){var c=p[h],u=new _e;Re(c,f,u,n),r.mergePropertyMatch(u)}}var m=je(t.contains);if(m){var d=e.items.some(function(e){var t=new _e;return Re(e,m,t,Me.instance),!t.hasProblems()});d||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Te("requiredItemMissingWarning","Array does not contain required item.")})}N(t.minItems)&&e.items.length<t.minItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("minItemsWarning","Array has too few items. Expected {0} or more.",t.minItems)});N(t.maxItems)&&e.items.length>t.maxItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("maxItemsWarning","Array has too many items. Expected {0} or fewer.",t.maxItems)});if(!0===t.uniqueItems){var g=Ve(e),v=g.some(function(e,t){return t!==g.lastIndexOf(e)});v&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("uniqueItemsWarning","Array has duplicate items.")})}}(e,t,r,n);break;case"string":!function(e,t,r,n){N(t.minLength)&&e.value.length<t.minLength&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("minLengthWarning","String is shorter than the minimum length of {0}.",t.minLength)});N(t.maxLength)&&e.value.length>t.maxLength&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("maxLengthWarning","String is longer than the maximum length of {0}.",t.maxLength)});if(function(e){return"string"==typeof e}(t.pattern)){var i=new RegExp(t.pattern);i.test(e.value)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||Te("patternWarning",'String does not match the pattern of "{0}".',t.pattern)})}if(t.format)switch(t.format){case"uri":case"uri-reference":var o=void 0;if(e.value){var a=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/.exec(e.value);a?a[2]||"uri"!==t.format||(o=Te("uriSchemeMissing","URI with a scheme is expected.")):o=Te("uriMissing","URI is expected.")}else o=Te("uriEmpty","URI expected.");o&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||Te("uriFormatWarning","String is not a URI: {0}",o)});break;case"color-hex":case"date-time":case"date":case"time":case"email":var s=Ee[t.format];e.value&&s.pattern.exec(e.value)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||s.errorMessage})}}(e,t,r);break;case"number":!function(e,t,r,n){var i=e.value;N(t.multipleOf)&&i%t.multipleOf!=0&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("multipleOfWarning","Value is not divisible by {0}.",t.multipleOf)});function o(e,t){return N(t)?t:$(t)&&t?e:void 0}function a(e,t){if(!$(t)||!t)return e}var s=o(t.minimum,t.exclusiveMinimum);N(s)&&i<=s&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("exclusiveMinimumWarning","Value is below the exclusive minimum of {0}.",s)});var u=o(t.maximum,t.exclusiveMaximum);N(u)&&i>=u&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("exclusiveMaximumWarning","Value is above the exclusive maximum of {0}.",u)});var c=a(t.minimum,t.exclusiveMinimum);N(c)&&i<c&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("minimumWarning","Value is below the minimum of {0}.",c)});var l=a(t.maximum,t.exclusiveMaximum);N(l)&&i>l&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("maximumWarning","Value is above the maximum of {0}.",l)})}(e,t,r);break;case"property":return Re(e.valueNode,t,r,n)}!function(){function i(t){return e.type===t||"integer"===t&&"number"===e.type&&e.isInteger}Array.isArray(t.type)?t.type.some(i)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Te("typeArrayMismatchWarning","Incorrect type. Expected one of {0}.",t.type.join(", "))}):t.type&&(i(t.type)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Te("typeMismatchWarning",'Incorrect type. Expected "{0}".',t.type)}));if(Array.isArray(t.allOf))for(var o=0,a=t.allOf;o<a.length;o++){var s=a[o];Re(e,je(s),r,n)}var u=je(t.not);if(u){var c=new _e,l=n.newSub();Re(e,u,c,l),c.hasProblems()||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Te("notSchemaWarning","Matches a schema that is not allowed.")});for(var f=0,h=l.schemas;f<h.length;f++){var p=h[f];p.inverted=!p.inverted,n.add(p)}}var m=function(t,i){for(var o=[],a=null,s=0,u=t;s<u.length;s++){var c=u[s],l=je(c),f=new _e,h=n.newSub();if(Re(e,l,f,h),f.hasProblems()||o.push(l),a)if(i||f.hasProblems()||a.validationResult.hasProblems()){var p=f.compare(a.validationResult);p>0?a={schema:l,validationResult:f,matchingSchemas:h}:0===p&&(a.matchingSchemas.merge(h),a.validationResult.mergeEnumValues(f))}else a.matchingSchemas.merge(h),a.validationResult.propertiesMatches+=f.propertiesMatches,a.validationResult.propertiesValueMatches+=f.propertiesValueMatches;else a={schema:l,validationResult:f,matchingSchemas:h}}return o.length>1&&i&&r.problems.push({location:{offset:e.offset,length:1},severity:x.Warning,message:Te("oneOfWarning","Matches multiple schemas when only one must validate.")}),null!==a&&(r.merge(a.validationResult),r.propertiesMatches+=a.validationResult.propertiesMatches,r.propertiesValueMatches+=a.validationResult.propertiesValueMatches,n.merge(a.matchingSchemas)),o.length};Array.isArray(t.anyOf)&&m(t.anyOf,!1);Array.isArray(t.oneOf)&&m(t.oneOf,!0);var d=function(t){var i=new _e,o=n.newSub();Re(e,je(t),i,o),r.merge(i),r.propertiesMatches+=i.propertiesMatches,r.propertiesValueMatches+=i.propertiesValueMatches,n.merge(o)},g=je(t.if);g&&function(t,r,i){var o=je(t),a=new _e,s=n.newSub();Re(e,o,a,s),n.merge(s),a.hasProblems()?i&&d(i):r&&d(r)}(g,je(t.then),je(t.else));if(Array.isArray(t.enum)){for(var v=Ve(e),y=!1,b=0,S=t.enum;b<S.length;b++){var k=S[b];if(F(v,k)){y=!0;break}}r.enumValues=t.enum,r.enumValueMatch=y,y||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,code:ve.EnumValueMismatch,message:t.errorMessage||Te("enumWarning","Value is not accepted. Valid values: {0}.",t.enum.map(function(e){return JSON.stringify(e)}).join(", "))})}if(R(t.const)){var v=Ve(e);F(v,t.const)?r.enumValueMatch=!0:(r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,code:ve.EnumValueMismatch,message:t.errorMessage||Te("constWarning","Value must be {0}.",JSON.stringify(t.const))}),r.enumValueMatch=!1),r.enumValues=[t.const]}t.deprecationMessage&&e.parent&&r.problems.push({location:{offset:e.parent.offset,length:e.parent.length},severity:x.Warning,message:t.deprecationMessage})}(),n.add({node:e,schema:t})}}function $e(e,t){var r=e.length-t.length;return r>0?e.lastIndexOf(t)===r:0===r&&e===t}var Le=we();(function(){function e(e,t,r,n){void 0===t&&(t=[]),void 0===r&&(r=Promise),void 0===n&&(n={}),this.schemaService=e,this.contributions=t,this.promiseConstructor=r,this.clientCapabilities=n,this.templateVarIdCounter=0}e.prototype.doResolve=function(e){for(var t=this.contributions.length-1;t>=0;t--)if(this.contributions[t].resolveCompletion){var r=this.contributions[t].resolveCompletion(e);if(r)return r}return this.promiseConstructor.resolve(e)},e.prototype.doComplete=function(e,t,r){var n=this,i={items:[],isIncomplete:!1},o=e.getText(),a=e.offsetAt(t),s=r.getNodeFromOffset(a,!0);if(this.isInComment(e,s?s.offset:0,a))return Promise.resolve(i);if(s&&a===s.offset+s.length&&a>0){var u=o[a-1];("object"===s.type&&"}"===u||"array"===s.type&&"]"===u)&&(s=s.parent)}var c=this.getCurrentWord(e,a),l=null;if(!s||"string"!==s.type&&"number"!==s.type&&"boolean"!==s.type&&"null"!==s.type){var h=a-c.length;h>0&&'"'===o[h-1]&&h--,l=f.create(e.positionAt(h),t)}else l=f.create(e.positionAt(s.offset),e.positionAt(s.offset+s.length));var p={},m={add:function(e){var t=e.label,r=p[t];if(r)r.documentation||(r.documentation=e.documentation);else{if((t=t.replace(/[\n]/g,"↵")).length>60){var n=t.substr(0,57).trim()+"...";p[n]||(t=n)}l&&(e.textEdit=w.replace(l,e.insertText)),e.label=t,p[t]=e,i.items.push(e)}},setAsIncomplete:function(){i.isIncomplete=!0},error:function(e){console.error(e)},log:function(e){console.log(e)},getNumberOfProposals:function(){return i.items.length}};return this.schemaService.getSchemaForResource(e.uri,r).then(function(t){var u=[],f=!0,h="",d=null;if(s&&"string"===s.type){var g=s.parent;g&&"property"===g.type&&g.keyNode===s&&(f=!g.valueNode,d=g,h=o.substr(s.offset+1,s.length-2),g&&(s=g.parent))}if(s&&"object"===s.type){if(s.offset===a)return i;s.properties.forEach(function(e){d&&d===e||(p[e.keyNode.value]=z.create("__"))});var v="";f&&(v=n.evaluateSeparatorAfter(e,e.offsetAt(l.end))),t?n.getPropertyCompletions(t,r,s,f,v,m):n.getSchemaLessPropertyCompletions(r,s,h,m);var y=Fe(s);n.contributions.forEach(function(t){var r=t.collectPropertyCompletions(e.uri,y,c,f,""===v,m);r&&u.push(r)}),!t&&c.length>0&&'"'!==o.charAt(a-c.length-1)&&(m.add({kind:B.Property,label:n.getLabelForValue(c),insertText:n.getInsertTextForProperty(c,null,!1,v),insertTextFormat:K.Snippet,documentation:""}),m.setAsIncomplete())}var b={};return t?n.getValueCompletions(t,r,s,a,e,m,b):n.getSchemaLessValueCompletions(r,s,a,e,m),n.contributions.length>0&&n.getContributedValueCompletions(r,s,a,e,m,u),n.promiseConstructor.all(u).then(function(){if(0===m.getNumberOfProposals()){var t=a;!s||"string"!==s.type&&"number"!==s.type&&"boolean"!==s.type&&"null"!==s.type||(t=s.offset+s.length);var r=n.evaluateSeparatorAfter(e,t);n.addFillerValueCompletions(b,r,m)}return i})})},e.prototype.getPropertyCompletions=function(e,t,r,n,i,o){var a=this;t.getMatchingSchemas(e.schema,r.offset).forEach(function(e){if(e.node===r&&!e.inverted){var t=e.schema.properties;t&&Object.keys(t).forEach(function(e){var r=t[e];if("object"==typeof r&&!r.deprecationMessage&&!r.doNotSuggest){var s={kind:B.Property,label:e,insertText:a.getInsertTextForProperty(e,r,n,i),insertTextFormat:K.Snippet,filterText:a.getFilterTextForValue(e),documentation:a.fromMarkup(r.markdownDescription)||r.description||""};$e(s.insertText,"$1"+i)&&(s.command={title:"Suggest",command:"editor.action.triggerSuggest"}),o.add(s)}})}})},e.prototype.getSchemaLessPropertyCompletions=function(e,t,r,n){var i=this,o=function(e){e.properties.forEach(function(e){var t=e.keyNode.value;n.add({kind:B.Property,label:t,insertText:i.getInsertTextForValue(t,""),insertTextFormat:K.Snippet,filterText:i.getFilterTextForValue(t),documentation:""})})};if(t.parent)if("property"===t.parent.type){var a=t.parent.keyNode.value;e.visit(function(e){return"property"===e.type&&e!==t.parent&&e.keyNode.value===a&&e.valueNode&&"object"===e.valueNode.type&&o(e.valueNode),!0})}else"array"===t.parent.type&&t.parent.items.forEach(function(e){"object"===e.type&&e!==t&&o(e)});else"object"===t.type&&n.add({kind:B.Property,label:"$schema",insertText:this.getInsertTextForProperty("$schema",null,!0,""),insertTextFormat:K.Snippet,documentation:"",filterText:this.getFilterTextForValue("$schema")})},e.prototype.getSchemaLessValueCompletions=function(e,t,r,n,i){var o=this,a=r;if(!t||"string"!==t.type&&"number"!==t.type&&"boolean"!==t.type&&"null"!==t.type||(a=t.offset+t.length,t=t.parent),!t)return i.add({kind:this.getSuggestionKind("object"),label:"Empty object",insertText:this.getInsertTextForValue({},""),insertTextFormat:K.Snippet,documentation:""}),void i.add({kind:this.getSuggestionKind("array"),label:"Empty array",insertText:this.getInsertTextForValue([],""),insertTextFormat:K.Snippet,documentation:""});var s=this.evaluateSeparatorAfter(n,a),u=function(e){Ne(e.parent,r,!0)||i.add({kind:o.getSuggestionKind(e.type),label:o.getLabelTextForMatchingNode(e,n),insertText:o.getInsertTextForMatchingNode(e,n,s),insertTextFormat:K.Snippet,documentation:""}),"boolean"===e.type&&o.addBooleanValueCompletion(!e.value,s,i)};if("property"===t.type&&r>t.colonOffset){var c=t.valueNode;if(c&&(r>c.offset+c.length||"object"===c.type||"array"===c.type))return;var l=t.keyNode.value;e.visit(function(e){return"property"===e.type&&e.keyNode.value===l&&e.valueNode&&u(e.valueNode),!0}),"$schema"===l&&t.parent&&!t.parent.parent&&this.addDollarSchemaCompletions(s,i)}if("array"===t.type)if(t.parent&&"property"===t.parent.type){var f=t.parent.keyNode.value;e.visit(function(e){return"property"===e.type&&e.keyNode.value===f&&e.valueNode&&"array"===e.valueNode.type&&e.valueNode.items.forEach(u),!0})}else t.items.forEach(u)},e.prototype.getValueCompletions=function(e,t,r,n,i,o,a){var s=this,u=n,c=null,l=null;if(!r||"string"!==r.type&&"number"!==r.type&&"boolean"!==r.type&&"null"!==r.type||(u=r.offset+r.length,l=r,r=r.parent),r){if("property"===r.type&&n>r.colonOffset){var f=r.valueNode;if(f&&n>f.offset+f.length)return;c=r.keyNode.value,r=r.parent}if(r&&(null!==c||"array"===r.type)){var h=this.evaluateSeparatorAfter(i,u);t.getMatchingSchemas(e.schema,r.offset,l).forEach(function(e){if(e.node===r&&!e.inverted&&e.schema){if("array"===r.type&&e.schema.items)if(Array.isArray(e.schema.items)){var t=s.findItemAtOffset(r,i,n);t<e.schema.items.length&&s.addSchemaValueCompletions(e.schema.items[t],h,o,a)}else s.addSchemaValueCompletions(e.schema.items,h,o,a);if(e.schema.properties){var u=e.schema.properties[c];u&&s.addSchemaValueCompletions(u,h,o,a)}}}),"$schema"!==c||r.parent||this.addDollarSchemaCompletions(h,o),a.boolean&&(this.addBooleanValueCompletion(!0,h,o),this.addBooleanValueCompletion(!1,h,o)),a.null&&this.addNullValueCompletion(h,o)}}else this.addSchemaValueCompletions(e.schema,"",o,a)},e.prototype.getContributedValueCompletions=function(e,t,r,n,i,o){if(t){if("string"!==t.type&&"number"!==t.type&&"boolean"!==t.type&&"null"!==t.type||(t=t.parent),"property"===t.type&&r>t.colonOffset){var a=t.keyNode.value,s=t.valueNode;if(!s||r<=s.offset+s.length){var u=Fe(t.parent);this.contributions.forEach(function(e){var t=e.collectValueCompletions(n.uri,u,a,i);t&&o.push(t)})}}}else this.contributions.forEach(function(e){var t=e.collectDefaultCompletions(n.uri,i);t&&o.push(t)})},e.prototype.addSchemaValueCompletions=function(e,t,r,n){var i=this;"object"==typeof e&&(this.addEnumValueCompletions(e,t,r),this.addDefaultValueCompletions(e,t,r),this.collectTypes(e,n),Array.isArray(e.allOf)&&e.allOf.forEach(function(e){return i.addSchemaValueCompletions(e,t,r,n)}),Array.isArray(e.anyOf)&&e.anyOf.forEach(function(e){return i.addSchemaValueCompletions(e,t,r,n)}),Array.isArray(e.oneOf)&&e.oneOf.forEach(function(e){return i.addSchemaValueCompletions(e,t,r,n)}))},e.prototype.addDefaultValueCompletions=function(e,t,r,n){var i=this;void 0===n&&(n=0);var o=!1;if(R(e.default)){for(var a=e.type,s=e.default,u=n;u>0;u--)s=[s],a="array";r.add({kind:this.getSuggestionKind(a),label:this.getLabelForValue(s),insertText:this.getInsertTextForValue(s,t),insertTextFormat:K.Snippet,detail:Le("json.suggest.default","Default value")}),o=!0}Array.isArray(e.examples)&&e.examples.forEach(function(a){for(var s=e.type,u=a,c=n;c>0;c--)u=[u],s="array";r.add({kind:i.getSuggestionKind(s),label:i.getLabelForValue(u),insertText:i.getInsertTextForValue(u,t),insertTextFormat:K.Snippet}),o=!0}),Array.isArray(e.defaultSnippets)&&e.defaultSnippets.forEach(function(a){var s,u,c=e.type,l=a.body,f=a.label;if(R(l)){e.type;for(var h=n;h>0;h--)l=[l],"array";s=i.getInsertTextForSnippetValue(l,t),u=i.getFilterTextForSnippetValue(l),f=f||i.getLabelForSnippetValue(l)}else if("string"==typeof a.bodyText){var p="",m="",d="";for(h=n;h>0;h--)p=p+d+"[\n",m=m+"\n"+d+"]",d+="\t",c="array";s=p+d+a.bodyText.split("\n").join("\n"+d)+m+t,f=f||s,u=s.replace(/[\n]/g,"")}r.add({kind:i.getSuggestionKind(c),label:f,documentation:i.fromMarkup(a.markdownDescription)||a.description,insertText:s,insertTextFormat:K.Snippet,filterText:u}),o=!0}),o||"object"!=typeof e.items||Array.isArray(e.items)||this.addDefaultValueCompletions(e.items,t,r,n+1)},e.prototype.addEnumValueCompletions=function(e,t,r){if(R(e.const)&&r.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(e.const),insertText:this.getInsertTextForValue(e.const,t),insertTextFormat:K.Snippet,documentation:this.fromMarkup(e.markdownDescription)||e.description}),Array.isArray(e.enum))for(var n=0,i=e.enum.length;n<i;n++){var o=e.enum[n],a=this.fromMarkup(e.markdownDescription)||e.description;e.markdownEnumDescriptions&&n<e.markdownEnumDescriptions.length&&this.doesSupportMarkdown()?a=this.fromMarkup(e.markdownEnumDescriptions[n]):e.enumDescriptions&&n<e.enumDescriptions.length&&(a=e.enumDescriptions[n]),r.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(o),insertText:this.getInsertTextForValue(o,t),insertTextFormat:K.Snippet,documentation:a})}},e.prototype.collectTypes=function(e,t){if(!Array.isArray(e.enum)&&!R(e.const)){var r=e.type;Array.isArray(r)?r.forEach(function(e){return t[e]=!0}):t[r]=!0}},e.prototype.addFillerValueCompletions=function(e,t,r){e.object&&r.add({kind:this.getSuggestionKind("object"),label:"{}",insertText:this.getInsertTextForGuessedValue({},t),insertTextFormat:K.Snippet,detail:Le("defaults.object","New object"),documentation:""}),e.array&&r.add({kind:this.getSuggestionKind("array"),label:"[]",insertText:this.getInsertTextForGuessedValue([],t),insertTextFormat:K.Snippet,detail:Le("defaults.array","New array"),documentation:""})},e.prototype.addBooleanValueCompletion=function(e,t,r){r.add({kind:this.getSuggestionKind("boolean"),label:e?"true":"false",insertText:this.getInsertTextForValue(e,t),insertTextFormat:K.Snippet,documentation:""})},e.prototype.addNullValueCompletion=function(e,t){t.add({kind:this.getSuggestionKind("null"),label:"null",insertText:"null"+e,insertTextFormat:K.Snippet,documentation:""})},e.prototype.addDollarSchemaCompletions=function(e,t){var r=this;this.schemaService.getRegisteredSchemaIds(function(e){return"http"===e||"https"===e}).forEach(function(n){return t.add({kind:B.Module,label:r.getLabelForValue(n),filterText:r.getFilterTextForValue(n),insertText:r.getInsertTextForValue(n,e),insertTextFormat:K.Snippet,documentation:""})})},e.prototype.getLabelForValue=function(e){return JSON.stringify(e)},e.prototype.getFilterTextForValue=function(e){return JSON.stringify(e)},e.prototype.getFilterTextForSnippetValue=function(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")},e.prototype.getLabelForSnippetValue=function(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")},e.prototype.getInsertTextForPlainText=function(e){return e.replace(/[\\\$\}]/g,"\\$&")},e.prototype.getInsertTextForValue=function(e,t){var r=JSON.stringify(e,null,"\t");return"{}"===r?"{$1}"+t:"[]"===r?"[$1]"+t:this.getInsertTextForPlainText(r+t)},e.prototype.getInsertTextForSnippetValue=function(e,t){return function e(t,r,n){if(null!==t&&"object"==typeof t){var i=r+"\t";if(Array.isArray(t)){if(0===t.length)return"[]";for(var o="[\n",a=0;a<t.length;a++)o+=i+e(t[a],i,n),a<t.length-1&&(o+=","),o+="\n";return o+=r+"]"}var s=Object.keys(t);if(0===s.length)return"{}";for(o="{\n",a=0;a<s.length;a++){var u=s[a];o+=i+JSON.stringify(u)+": "+e(t[u],i,n),a<s.length-1&&(o+=","),o+="\n"}return o+=r+"}"}return n(t)}(e,"",function(e){return"string"==typeof e&&"^"===e[0]?e.substr(1):JSON.stringify(e)})+t},e.prototype.getInsertTextForGuessedValue=function(e,t){switch(typeof e){case"object":return null===e?"${1:null}"+t:this.getInsertTextForValue(e,t);case"string":var r=JSON.stringify(e);return r=r.substr(1,r.length-2),'"${1:'+(r=this.getInsertTextForPlainText(r))+'}"'+t;case"number":case"boolean":return"${1:"+JSON.stringify(e)+"}"+t}return this.getInsertTextForValue(e,t)},e.prototype.getSuggestionKind=function(e){if(Array.isArray(e)){var t=e;e=t.length>0?t[0]:null}if(!e)return B.Value;switch(e){case"string":return B.Value;case"object":return B.Module;case"property":return B.Property;default:return B.Value}},e.prototype.getLabelTextForMatchingNode=function(e,t){switch(e.type){case"array":return"[]";case"object":return"{}";default:return t.getText().substr(e.offset,e.length)}},e.prototype.getInsertTextForMatchingNode=function(e,t,r){switch(e.type){case"array":return this.getInsertTextForValue([],r);case"object":return this.getInsertTextForValue({},r);default:var n=t.getText().substr(e.offset,e.length)+r;return this.getInsertTextForPlainText(n)}},e.prototype.getInsertTextForProperty=function(e,t,r,n){var i=this.getInsertTextForValue(e,"");if(!r)return i;var o,a=i+": ",s=0;if(t){if(Array.isArray(t.defaultSnippets)){if(1===t.defaultSnippets.length){var u=t.defaultSnippets[0].body;R(u)&&(o=this.getInsertTextForSnippetValue(u,""))}s+=t.defaultSnippets.length}if(t.enum&&(o||1!==t.enum.length||(o=this.getInsertTextForGuessedValue(t.enum[0],"")),s+=t.enum.length),R(t.default)&&(o||(o=this.getInsertTextForGuessedValue(t.default,"")),s++),Array.isArray(t.examples)&&t.examples.length&&(o||(o=this.getInsertTextForGuessedValue(t.examples[0],"")),s+=t.examples.length),0===s){var c=Array.isArray(t.type)?t.type[0]:t.type;switch(c||(t.properties?c="object":t.items&&(c="array")),c){case"boolean":o="$1";break;case"string":o='"$1"';break;case"object":o="{$1}";break;case"array":o="[$1]";break;case"number":case"integer":o="${1:0}";break;case"null":o="${1:null}";break;default:return i}}}return(!o||s>1)&&(o="$1"),a+o+n},e.prototype.getCurrentWord=function(e,t){for(var r=t-1,n=e.getText();r>=0&&-1===' \t\n\r\v":{[,]}'.indexOf(n.charAt(r));)r--;return n.substring(r+1,t)},e.prototype.evaluateSeparatorAfter=function(e,t){var r=j(e.getText(),!0);switch(r.setPosition(t),r.scan()){case 5:case 2:case 4:case 17:return"";default:return","}},e.prototype.findItemAtOffset=function(e,t,r){for(var n=j(t.getText(),!0),i=e.items,o=i.length-1;o>=0;o--){var a=i[o];if(r>a.offset+a.length)return n.setPosition(a.offset+a.length),5===n.scan()&&r>=n.getTokenOffset()+n.getTokenLength()?o+1:o;if(r>=a.offset)return o}return 0},e.prototype.isInComment=function(e,t,r){var n=j(e.getText(),!1);n.setPosition(t);for(var i=n.scan();17!==i&&n.getTokenOffset()+n.getTokenLength()<r;)i=n.scan();return(12===i||13===i)&&n.getTokenOffset()<=r},e.prototype.fromMarkup=function(e){if(e&&this.doesSupportMarkdown())return{kind:U.Markdown,value:e}},e.prototype.doesSupportMarkdown=function(){if(!R(this.supportsMarkdown)){var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.completion;this.supportsMarkdown=e&&e.completionItem&&Array.isArray(e.completionItem.documentationFormat)&&-1!==e.completionItem.documentationFormat.indexOf(U.Markdown)}return this.supportsMarkdown},e.prototype.doesSupportsCommitCharacters=function(){if(!R(this.supportsCommitCharacters)){var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.completion;this.supportsCommitCharacters=e&&e.completionItem&&!!e.completionItem.commitCharactersSupport}return this.supportsCommitCharacters}})(),function(){function e(e,t,r){void 0===t&&(t=[]),this.schemaService=e,this.contributions=t,this.promise=r||Promise}e.prototype.doHover=function(e,t,r){var n=e.offsetAt(t),i=r.getNodeFromOffset(n);if(!i||("object"===i.type||"array"===i.type)&&n>i.offset+1&&n<i.offset+i.length-1)return this.promise.resolve(null);var o=i;if("string"===i.type){var a=i.parent;if(a&&"property"===a.type&&a.keyNode===i&&!(i=a.valueNode))return this.promise.resolve(null)}for(var s=f.create(e.positionAt(o.offset),e.positionAt(o.offset+o.length)),u=function(e){return{contents:e,range:s}},c=Fe(i),l=this.contributions.length-1;l>=0;l--){var h=this.contributions[l].getInfoContribution(e.uri,c);if(h)return h.then(function(e){return u(e)})}return this.schemaService.getSchemaForResource(e.uri,r).then(function(e){if(e){var t=null,n=null,o=null,a=null;r.getMatchingSchemas(e.schema,i.offset).every(function(e){if(e.node===i&&!e.inverted&&e.schema&&(t=t||e.schema.title,n=n||e.schema.markdownDescription||De(e.schema.description),e.schema.enum)){var r=e.schema.enum.indexOf(Ve(i));e.schema.markdownEnumDescriptions?o=e.schema.markdownEnumDescriptions[r]:e.schema.enumDescriptions&&(o=De(e.schema.enumDescriptions[r])),o&&"string"!=typeof(a=e.schema.enum[r])&&(a=JSON.stringify(a))}return!0});var s="";return t&&(s=De(t)),n&&(s.length>0&&(s+="\n\n"),s+=n),o&&(s.length>0&&(s+="\n\n"),s+="`"+function(e){if(-1!==e.indexOf("`"))return"`` "+e+" ``";return e}(a)+"`: "+o),u([s])}return null})}}();function De(e){if(e)return e.replace(/([^\n\r])(\r?\n)([^\n\r])/gm,"$1\n\n$3").replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}var We=r("6a/n"),Ue=we(),qe=function(){function e(e){try{this.patternRegExp=new RegExp(function(e){return e.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}(e)+"$")}catch(e){this.patternRegExp=null}this.schemas=[]}return e.prototype.addSchema=function(e){this.schemas.push(e)},e.prototype.matchesPattern=function(e){return this.patternRegExp&&this.patternRegExp.test(e)},e.prototype.getSchemas=function(){return this.schemas},e}(),Be=function(){function e(e,t,r){this.service=e,this.url=t,this.dependencies={},r&&(this.unresolvedSchema=this.service.promise.resolve(new Ke(r)))}return e.prototype.getUnresolvedSchema=function(){return this.unresolvedSchema||(this.unresolvedSchema=this.service.loadSchema(this.url)),this.unresolvedSchema},e.prototype.getResolvedSchema=function(){var e=this;return this.resolvedSchema||(this.resolvedSchema=this.getUnresolvedSchema().then(function(t){return e.service.resolveSchemaContent(t,e.url,e.dependencies)})),this.resolvedSchema},e.prototype.clearSchema=function(){this.resolvedSchema=null,this.unresolvedSchema=null,this.dependencies={}},e}(),Ke=function(){return function(e,t){void 0===t&&(t=[]),this.schema=e,this.errors=t}}(),Je=function(){function e(e,t){void 0===t&&(t=[]),this.schema=e,this.errors=t}return e.prototype.getSection=function(e){return je(this.getSectionRecursive(e,this.schema))},e.prototype.getSectionRecursive=function(e,t){if(!t||"boolean"==typeof t||0===e.length)return t;var r=e.shift();if(t.properties&&(t.properties[r],1))return this.getSectionRecursive(e,t.properties[r]);if(t.patternProperties)for(var n=0,i=Object.keys(t.patternProperties);n<i.length;n++){var o=i[n];if(new RegExp(o).test(r))return this.getSectionRecursive(e,t.patternProperties[o])}else{if("object"==typeof t.additionalProperties)return this.getSectionRecursive(e,t.additionalProperties);if(r.match("[0-9]+"))if(Array.isArray(t.items)){var a=parseInt(r,10);if(!isNaN(a)&&t.items[a])return this.getSectionRecursive(e,t.items[a])}else if(t.items)return this.getSectionRecursive(e,t.items)}return null},e}();!function(){function e(e,t,r){this.contextService=t,this.requestService=e,this.promiseConstructor=r||Promise,this.callOnDispose=[],this.contributionSchemas={},this.contributionAssociations={},this.schemasById={},this.filePatternAssociations=[],this.filePatternAssociationById={},this.registeredSchemasIds={}}e.prototype.getRegisteredSchemaIds=function(e){return Object.keys(this.registeredSchemasIds).filter(function(t){var r=We.a.parse(t).scheme;return"schemaservice"!==r&&(!e||e(r))})},Object.defineProperty(e.prototype,"promise",{get:function(){return this.promiseConstructor},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){for(;this.callOnDispose.length>0;)this.callOnDispose.pop()()},e.prototype.onResourceChange=function(e){for(var t=this,r=!1,n=[e=this.normalizeId(e)],i=Object.keys(this.schemasById).map(function(e){return t.schemasById[e]});n.length;)for(var o=n.pop(),a=0;a<i.length;a++){var s=i[a];s&&(s.url===o||s.dependencies[o])&&(s.url!==o&&n.push(s.url),s.clearSchema(),i[a]=void 0,r=!0)}return r},e.prototype.normalizeId=function(e){try{return We.a.parse(e).toString()}catch(t){return e}},e.prototype.setSchemaContributions=function(e){if(e.schemas){var t=e.schemas;for(var r in t){var n=this.normalizeId(r);this.contributionSchemas[n]=this.addSchemaHandle(n,t[r])}}if(e.schemaAssociations){var i=e.schemaAssociations;for(var o in i){var a=i[o];this.contributionAssociations[o]=a;for(var s=this.getOrAddFilePatternAssociation(o),u=0,c=a;u<c.length;u++){var l=c[u];r=this.normalizeId(l);s.addSchema(r)}}}},e.prototype.addSchemaHandle=function(e,t){var r=new Be(this,e,t);return this.schemasById[e]=r,r},e.prototype.getOrAddSchemaHandle=function(e,t){return this.schemasById[e]||this.addSchemaHandle(e,t)},e.prototype.getOrAddFilePatternAssociation=function(e){var t=this.filePatternAssociationById[e];return t||(t=new qe(e),this.filePatternAssociationById[e]=t,this.filePatternAssociations.push(t)),t},e.prototype.registerExternalSchema=function(e,t,r){void 0===t&&(t=null);var n=this.normalizeId(e);if(this.registeredSchemasIds[n]=!0,t)for(var i=0,o=t;i<o.length;i++){var a=o[i];this.getOrAddFilePatternAssociation(a).addSchema(n)}return r?this.addSchemaHandle(n,r):this.getOrAddSchemaHandle(n)},e.prototype.clearExternalSchemas=function(){for(var e in this.schemasById={},this.filePatternAssociations=[],this.filePatternAssociationById={},this.registeredSchemasIds={},this.contributionSchemas)this.schemasById[e]=this.contributionSchemas[e],this.registeredSchemasIds[e]=!0;for(var t in this.contributionAssociations)for(var r=this.getOrAddFilePatternAssociation(t),n=0,i=this.contributionAssociations[t];n<i.length;n++){var o=i[n];e=this.normalizeId(o);r.addSchema(e)}},e.prototype.getResolvedSchema=function(e){var t=this.normalizeId(e),r=this.schemasById[t];return r?r.getResolvedSchema():this.promise.resolve(null)},e.prototype.loadSchema=function(e){if(!this.requestService){var t=Ue("json.schema.norequestservice","Unable to load schema from '{0}'. No schema request service available",ze(e));return this.promise.resolve(new Ke({},[t]))}return this.requestService(e).then(function(t){if(!t){var r=Ue("json.schema.nocontent","Unable to load schema from '{0}': No content.",ze(e));return new Ke({},[r])}var n,i=[];n=P(t,i);var o=i.length?[Ue("json.schema.invalidFormat","Unable to parse content from '{0}': Parse error at offset {1}.",ze(e),i[0].offset)]:[];return new Ke(n,o)},function(t){var r=t.toString(),n=t.toString().split("Error: ");return n.length>1&&(r=n[1]),$e(r,".")&&(r=r.substr(0,r.length-1)),new Ke({},[Ue("json.schema.nocontent","Unable to load schema from '{0}': {1}.",ze(e),r)])})},e.prototype.resolveSchemaContent=function(e,t,r){var n=this,i=e.errors.slice(0),o=e.schema;if(o.$schema){var a=this.normalizeId(o.$schema);if("http://json-schema.org/draft-03/schema"===a)return this.promise.resolve(new Je({},[Ue("json.schema.draft03.notsupported","Draft-03 schemas are not supported.")]));"https://json-schema.org/draft/2019-09/schema"===a&&e.errors.push(Ue("json.schema.draft201909.notsupported","Draft 2019-09 schemas are not yet fully supported."))}var s=this.contextService,u=function(e,t,r,n){var o=function(e,t){if(!t)return e;var r=e;return"/"===t[0]&&(t=t.substr(1)),t.split("/").some(function(e){return!(r=r[e])}),r}(t,n);if(o)for(var a in o)o.hasOwnProperty(a)&&!e.hasOwnProperty(a)&&(e[a]=o[a]);else i.push(Ue("json.schema.invalidref","$ref '{0}' in '{1}' can not be resolved.",n,r))},c=function(e,t,r,o,a){s&&!/^\w+:\/\/.*/.test(t)&&(t=s.resolveRelativePath(t,o)),t=n.normalizeId(t);var c=n.getOrAddSchemaHandle(t);return c.getUnresolvedSchema().then(function(n){if(a[t]=!0,n.errors.length){var o=r?t+"#"+r:t;i.push(Ue("json.schema.problemloadingref","Problems loading reference '{0}': {1}",o,n.errors[0]))}return u(e,n.schema,t,r),l(e,n.schema,t,c.dependencies)})},l=function(e,t,r,i){if(!e||"object"!=typeof e)return Promise.resolve(null);for(var o=[e],a=[],s=[],l=function(e){for(var n=[];e.$ref;){var a=e.$ref,l=a.split("#",2);if(delete e.$ref,l[0].length>0)return void s.push(c(e,l[0],l[1],r,i));-1===n.indexOf(a)&&(u(e,t,r,l[1]),n.push(a))}!function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];"object"==typeof i&&o.push(i)}}(e.items,e.additionalProperties,e.not,e.contains,e.propertyNames,e.if,e.then,e.else),function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];if("object"==typeof i)for(var a in i){var s=i[a];"object"==typeof s&&o.push(s)}}}(e.definitions,e.properties,e.patternProperties,e.dependencies),function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];if(Array.isArray(i))for(var a=0,s=i;a<s.length;a++){var u=s[a];"object"==typeof u&&o.push(u)}}}(e.anyOf,e.allOf,e.oneOf,e.items)};o.length;){var f=o.pop();a.indexOf(f)>=0||(a.push(f),l(f))}return n.promise.all(s)};return l(o,o,t,r).then(function(e){return new Je(o,i)})},e.prototype.getSchemaForResource=function(e,t){if(t&&t.root&&"object"===t.root.type){var r=t.root.properties.filter(function(e){return"$schema"===e.keyNode.value&&e.valueNode&&"string"===e.valueNode.type});if(r.length>0){var n=Ve(r[0].valueNode);if(n&&function(e,t){if(e.length<t.length)return!1;for(var r=0;r<t.length;r++)if(e[r]!==t[r])return!1;return!0}(n,".")&&this.contextService&&(n=this.contextService.resolveRelativePath(n,e)),n){var i=this.normalizeId(n);return this.getOrAddSchemaHandle(i).getResolvedSchema()}}}for(var o=Object.create(null),a=[],s=0,u=this.filePatternAssociations;s<u.length;s++){var c=u[s];if(c.matchesPattern(e))for(var l=0,f=c.getSchemas();l<f.length;l++){var h=f[l];o[h]||(a.push(h),o[h]=!0)}}return a.length>0?this.createCombinedSchema(e,a).getResolvedSchema():this.promise.resolve(null)},e.prototype.createCombinedSchema=function(e,t){if(1===t.length)return this.getOrAddSchemaHandle(t[0]);var r="schemaservice://combinedSchema/"+encodeURIComponent(e),n={allOf:t.map(function(e){return{$ref:e}})};return this.addSchemaHandle(r,n)}}();function ze(e){try{var t=We.a.parse(e);if("file"===t.scheme)return t.fsPath}catch(e){}return e}var He=we(),Ge=(function(){function e(e,t){this.jsonSchemaService=e,this.promise=t,this.validationEnabled=!0}e.prototype.configure=function(e){e&&(this.validationEnabled=e.validate,this.commentSeverity=e.allowComments?void 0:x.Error)},e.prototype.doValidation=function(e,t,r,n){var i=this;if(!this.validationEnabled)return this.promise.resolve([]);var o=[],a={},s=function(e){var t=e.range.start.line+" "+e.range.start.character+" "+e.message;a[t]||(a[t]=!0,o.push(e))},u=function(n){var a=r?Ze(r.trailingCommas):x.Error,u=r?Ze(r.comments):i.commentSeverity;if(n){if(n.errors.length&&t.root){var c=t.root,l="object"===c.type?c.properties[0]:null;if(l&&"$schema"===l.keyNode.value){var h=l.valueNode||l,p=f.create(e.positionAt(h.offset),e.positionAt(h.offset+h.length));s(k.create(p,n.errors[0],x.Warning,ve.SchemaResolveError))}else{p=f.create(e.positionAt(c.offset),e.positionAt(c.offset+1));s(k.create(p,n.errors[0],x.Warning,ve.SchemaResolveError))}}else{var m=t.validate(e,n.schema);m&&m.forEach(s)}(function e(t){if(t&&"object"==typeof t){if($(t.allowComments))return t.allowComments;if(t.allOf)for(var r=0,n=t.allOf;r<n.length;r++){var i=n[r],o=e(i);if($(o))return o}}return})(n.schema)&&(u=void 0),function e(t){if(t&&"object"==typeof t){if($(t.allowTrailingCommas))return t.allowTrailingCommas;if($(t.allowsTrailingCommas))return t.allowsTrailingCommas;if(t.allOf)for(var r=0,n=t.allOf;r<n.length;r++){var i=n[r],o=e(i);if($(o))return o}}return}(n.schema)&&(a=void 0)}for(var d=0,g=t.syntaxErrors;d<g.length;d++){var v=g[d];if(v.code===ve.TrailingComma){if("number"!=typeof a)continue;v.severity=a}s(v)}if("number"==typeof u){var y=He("InvalidCommentToken","Comments are not permitted in JSON.");t.comments.forEach(function(e){s(k.create(e,y,u,ve.CommentNotPermitted))})}return o};if(n){var c=n.id||"schemaservice://untitled/"+Ge++;return this.jsonSchemaService.resolveSchemaContent(new Ke(n),c,{}).then(function(e){return u(e)})}return this.jsonSchemaService.getSchemaForResource(e.uri,t).then(function(e){return u(e)})}}(),0);function Ze(e){switch(e){case"error":return x.Error;case"warning":return x.Warning;case"ignore":return}}var Xe=48,Qe=57,Ye=65,et=97,tt=102;function rt(e){return e<Xe?0:e<=Qe?e-Xe:(e<et&&(e+=et-Ye),e>=et&&e<=tt?e-et+10:0)}function nt(e){if("#"!==e[0])return null;switch(e.length){case 4:return{red:17*rt(e.charCodeAt(1))/255,green:17*rt(e.charCodeAt(2))/255,blue:17*rt(e.charCodeAt(3))/255,alpha:1};case 5:return{red:17*rt(e.charCodeAt(1))/255,green:17*rt(e.charCodeAt(2))/255,blue:17*rt(e.charCodeAt(3))/255,alpha:17*rt(e.charCodeAt(4))/255};case 7:return{red:(16*rt(e.charCodeAt(1))+rt(e.charCodeAt(2)))/255,green:(16*rt(e.charCodeAt(3))+rt(e.charCodeAt(4)))/255,blue:(16*rt(e.charCodeAt(5))+rt(e.charCodeAt(6)))/255,alpha:1};case 9:return{red:(16*rt(e.charCodeAt(1))+rt(e.charCodeAt(2)))/255,green:(16*rt(e.charCodeAt(3))+rt(e.charCodeAt(4)))/255,blue:(16*rt(e.charCodeAt(5))+rt(e.charCodeAt(6)))/255,alpha:(16*rt(e.charCodeAt(7))+rt(e.charCodeAt(8)))/255}}return null}!function(){function e(e){this.schemaService=e}e.prototype.findDocumentSymbols=function(e,t,r){var n=this;void 0===r&&(r={resultLimit:Number.MAX_VALUE});var i=t.root;if(!i)return null;var o=r.resultLimit,a=e.uri;if(("vscode://defaultsettings/keybindings.json"===a||$e(a.toLowerCase(),"/user/keybindings.json"))&&"array"===i.type){for(var s=[],u=0,c=i.items;u<c.length;u++){var l=c[u];if("object"===l.type)for(var f=0,p=l.properties;f<p.length;f++){var m=p[f];if("key"===m.keyNode.value&&m.valueNode){var d=h.create(e.uri,it(e,l));if(s.push({name:Ve(m.valueNode),kind:te.Function,location:d}),--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),s}}}return s}for(var g=[{node:i,containerName:""}],v=0,y=!1,b=[],x=function(t,r){"array"===t.type?t.items.forEach(function(e){e&&g.push({node:e,containerName:r})}):"object"===t.type&&t.properties.forEach(function(t){var i=t.valueNode;if(i)if(o>0){o--;var a=h.create(e.uri,it(e,t)),s=r?r+"."+t.keyNode.value:t.keyNode.value;b.push({name:n.getKeyLabel(t),kind:n.getSymbolKind(i.type),location:a,containerName:r}),g.push({node:i,containerName:s})}else y=!0})};v<g.length;){var S=g[v++];x(S.node,S.containerName)}return y&&r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),b},e.prototype.findDocumentSymbols2=function(e,t,r){var n=this;void 0===r&&(r={resultLimit:Number.MAX_VALUE});var i=t.root;if(!i)return null;var o=r.resultLimit,a=e.uri;if(("vscode://defaultsettings/keybindings.json"===a||$e(a.toLowerCase(),"/user/keybindings.json"))&&"array"===i.type){for(var s=[],u=0,c=i.items;u<c.length;u++){var l=c[u];if("object"===l.type)for(var f=0,h=l.properties;f<h.length;f++){var p=h[f];if("key"===p.keyNode.value&&p.valueNode){var m=it(e,l),d=it(e,p.keyNode);if(s.push({name:Ve(p.valueNode),kind:te.Function,range:m,selectionRange:d}),--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),s}}}return s}for(var g=[],v=[{node:i,result:g}],y=0,b=!1,x=function(t,r){"array"===t.type?t.items.forEach(function(t,i){if(t)if(o>0){o--;var a=it(e,t),s=a,u={name:String(i),kind:n.getSymbolKind(t.type),range:a,selectionRange:s,children:[]};r.push(u),v.push({result:u.children,node:t})}else b=!0}):"object"===t.type&&t.properties.forEach(function(t){var i=t.valueNode;if(i)if(o>0){o--;var a=it(e,t),s=it(e,t.keyNode),u={name:n.getKeyLabel(t),kind:n.getSymbolKind(i.type),range:a,selectionRange:s,children:[]};r.push(u),v.push({result:u.children,node:i})}else b=!0})};y<v.length;){var S=v[y++];x(S.node,S.result)}return b&&r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),g},e.prototype.getSymbolKind=function(e){switch(e){case"object":return te.Module;case"string":return te.String;case"number":return te.Number;case"array":return te.Array;case"boolean":return te.Boolean;default:return te.Variable}},e.prototype.getKeyLabel=function(e){var t=e.keyNode.value;return t&&(t=t.replace(/[\n]/g,"↵")),t&&t.trim()?t:'"'+t+'"'},e.prototype.findDocumentColors=function(e,t,r){return this.schemaService.getSchemaForResource(e.uri,t).then(function(n){var i=[];if(n)for(var o=r&&"number"==typeof r.resultLimit?r.resultLimit:Number.MAX_VALUE,a={},s=0,u=t.getMatchingSchemas(n.schema);s<u.length;s++){var c=u[s];if(!c.inverted&&c.schema&&("color"===c.schema.format||"color-hex"===c.schema.format)&&c.node&&"string"===c.node.type){var l=String(c.node.offset);if(!a[l]){var f=nt(Ve(c.node));if(f){var h=it(e,c.node);i.push({color:f,range:h})}if(a[l]=!0,--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(e.uri),i}}}return i})},e.prototype.getColorPresentations=function(e,t,r,n){var i,o=[],a=Math.round(255*r.red),s=Math.round(255*r.green),u=Math.round(255*r.blue);function c(e){var t=e.toString(16);return 2!==t.length?"0"+t:t}return i=1===r.alpha?"#"+c(a)+c(s)+c(u):"#"+c(a)+c(s)+c(u)+c(Math.round(255*r.alpha)),o.push({label:i,textEdit:w.replace(n,JSON.stringify(i))}),o}}();function it(e,t){return f.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length))}var ot=we(),at={schemaAssociations:{},schemas:{"http://json-schema.org/draft-04/schema#":{title:ot("schema.json","Describes a JSON file using a schema. See json-schema.org for more info."),$schema:"http://json-schema.org/draft-04/schema#",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{type:"string",enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{type:"number",minimum:0,exclusiveMinimum:!0},maximum:{type:"number"},exclusiveMaximum:{type:"boolean",default:!1},minimum:{type:"number"},exclusiveMinimum:{type:"boolean",default:!1},maxLength:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minLength:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},pattern:{type:"string",format:"regex"},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minItems:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},uniqueItems:{type:"boolean",default:!1},maxProperties:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minProperties:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},required:{allOf:[{$ref:"#/definitions/stringArray"}]},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{type:"array",minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{anyOf:[{type:"string",enum:["date-time","uri","email","hostname","ipv4","ipv6","regex"]},{type:"string"}]},allOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},anyOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},oneOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},not:{allOf:[{$ref:"#"}]}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"]},default:{}},"http://json-schema.org/draft-07/schema#":{title:ot("schema.json","Describes a JSON file using a schema. See json-schema.org for more info."),definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}}},st={id:ot("schema.json.id","A unique identifier for the schema."),$schema:ot("schema.json.$schema","The schema to verify this document against."),title:ot("schema.json.title","A descriptive title of the element."),description:ot("schema.json.description","A long description of the element. Used in hover menus and suggestions."),default:ot("schema.json.default","A default value. Used by suggestions."),multipleOf:ot("schema.json.multipleOf","A number that should cleanly divide the current value (i.e. have no remainder)."),maximum:ot("schema.json.maximum","The maximum numerical value, inclusive by default."),exclusiveMaximum:ot("schema.json.exclusiveMaximum","Makes the maximum property exclusive."),minimum:ot("schema.json.minimum","The minimum numerical value, inclusive by default."),exclusiveMinimum:ot("schema.json.exclusiveMininum","Makes the minimum property exclusive."),maxLength:ot("schema.json.maxLength","The maximum length of a string."),minLength:ot("schema.json.minLength","The minimum length of a string."),pattern:ot("schema.json.pattern","A regular expression to match the string against. It is not implicitly anchored."),additionalItems:ot("schema.json.additionalItems","For arrays, only when items is set as an array. If it is a schema, then this schema validates items after the ones specified by the items array. If it is false, then additional items will cause validation to fail."),items:ot("schema.json.items","For arrays. Can either be a schema to validate every element against or an array of schemas to validate each item against in order (the first schema will validate the first element, the second schema will validate the second element, and so on."),maxItems:ot("schema.json.maxItems","The maximum number of items that can be inside an array. Inclusive."),minItems:ot("schema.json.minItems","The minimum number of items that can be inside an array. Inclusive."),uniqueItems:ot("schema.json.uniqueItems","If all of the items in the array must be unique. Defaults to false."),maxProperties:ot("schema.json.maxProperties","The maximum number of properties an object can have. Inclusive."),minProperties:ot("schema.json.minProperties","The minimum number of properties an object can have. Inclusive."),required:ot("schema.json.required","An array of strings that lists the names of all properties required on this object."),additionalProperties:ot("schema.json.additionalProperties","Either a schema or a boolean. If a schema, then used to validate all properties not matched by 'properties' or 'patternProperties'. If false, then any properties not matched by either will cause this schema to fail."),definitions:ot("schema.json.definitions","Not used for validation. Place subschemas here that you wish to reference inline with $ref."),properties:ot("schema.json.properties","A map of property names to schemas for each property."),patternProperties:ot("schema.json.patternProperties","A map of regular expressions on property names to schemas for matching properties."),dependencies:ot("schema.json.dependencies","A map of property names to either an array of property names or a schema. An array of property names means the property named in the key depends on the properties in the array being present in the object in order to be valid. If the value is a schema, then the schema is only applied to the object if the property in the key exists on the object."),enum:ot("schema.json.enum","The set of literal values that are valid."),type:ot("schema.json.type","Either a string of one of the basic schema types (number, integer, null, array, object, boolean, string) or an array of strings specifying a subset of those types."),format:ot("schema.json.format","Describes the format expected for the value."),allOf:ot("schema.json.allOf","An array of schemas, all of which must match."),anyOf:ot("schema.json.anyOf","An array of schemas, where at least one must match."),oneOf:ot("schema.json.oneOf","An array of schemas, exactly one of which must match."),not:ot("schema.json.not","A schema which must not match."),$id:ot("schema.json.$id","A unique identifier for the schema."),$ref:ot("schema.json.$ref","Reference a definition hosted on any location."),$comment:ot("schema.json.$comment","Comments from schema authors to readers or maintainers of the schema."),readOnly:ot("schema.json.readOnly","Indicates that the value of the instance is managed exclusively by the owning authority."),examples:ot("schema.json.examples","Sample JSON values associated with a particular schema, for the purpose of illustrating usage."),contains:ot("schema.json.contains",'An array instance is valid against "contains" if at least one of its elements is valid against the given schema.'),propertyNames:ot("schema.json.propertyNames","If the instance is an object, this keyword validates if every property name in the instance validates against the provided schema."),const:ot("schema.json.const","An instance validates successfully against this keyword if its value is equal to the value of the keyword."),contentMediaType:ot("schema.json.contentMediaType","Describes the media type of a string property."),contentEncoding:ot("schema.json.contentEncoding","Describes the content encoding of a string property."),if:ot("schema.json.if",'The validation outcome of the "if" subschema controls which of the "then" or "else" keywords are evaluated.'),then:ot("schema.json.then",'The "if" subschema is used for validation when the "if" subschema succeeds.'),else:ot("schema.json.else",'The "else" subschema is used for validation when the "if" subschema fails.')};for(var ut in at.schemas){var ct=at.schemas[ut];for(var lt in ct.properties){var ft=ct.properties[lt];!0===ft&&(ft=ct.properties[lt]={});var ht=st[lt];ht?ft.description=ht:console.log(lt+": localize('schema.json."+lt+'\', "")')}}monaco.Uri;var pt=monaco.Range,mt=function(){function e(e,t,r){var n=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var i=function(e){var t,r=e.getModeId();r===n._languageId&&(n._listener[e.uri.toString()]=e.onDidChangeContent(function(){clearTimeout(t),t=setTimeout(function(){return n._doValidate(e.uri,r)},500)}),n._doValidate(e.uri,r))},o=function(e){monaco.editor.setModelMarkers(e,n._languageId,[]);var t=e.uri.toString(),r=n._listener[t];r&&(r.dispose(),delete n._listener[t])};this._disposables.push(monaco.editor.onDidCreateModel(i)),this._disposables.push(monaco.editor.onWillDisposeModel(function(e){o(e),n._resetSchema(e.uri)})),this._disposables.push(monaco.editor.onDidChangeModelLanguage(function(e){o(e.model),i(e.model),n._resetSchema(e.model.uri)})),this._disposables.push(r.onDidChange(function(e){monaco.editor.getModels().forEach(function(e){e.getModeId()===n._languageId&&(o(e),i(e))})})),this._disposables.push({dispose:function(){for(var e in monaco.editor.getModels().forEach(o),n._listener)n._listener[e].dispose()}}),monaco.editor.getModels().forEach(i)}return e.prototype.dispose=function(){this._disposables.forEach(function(e){return e&&e.dispose()}),this._disposables=[]},e.prototype._resetSchema=function(e){this._worker().then(function(t){t.resetSchema(e.toString())})},e.prototype._doValidate=function(e,t){this._worker(e).then(function(r){return r.doValidation(e.toString()).then(function(r){var n=r.map(function(e){return function(e,t){var r="number"==typeof t.code?String(t.code):t.code;return{severity:function(e){switch(e){case x.Error:return monaco.MarkerSeverity.Error;case x.Warning:return monaco.MarkerSeverity.Warning;case x.Information:return monaco.MarkerSeverity.Info;case x.Hint:return monaco.MarkerSeverity.Hint;default:return monaco.MarkerSeverity.Info}}(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:r,source:t.source}}(0,e)}),i=monaco.editor.getModel(e);i&&i.getModeId()===t&&monaco.editor.setModelMarkers(i,t,n)})}).then(void 0,function(e){console.error(e)})},e}();function dt(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function gt(e){if(e)return{start:{line:e.startLineNumber-1,character:e.startColumn-1},end:{line:e.endLineNumber-1,character:e.endColumn-1}}}function vt(e){if(e)return new pt(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function yt(e){if(e)return{range:vt(e.range),text:e.newText}}var bt=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[" ",":"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,r,n){var i=e.uri;return this._worker(i).then(function(e){return e.doComplete(i.toString(),dt(t))}).then(function(r){if(r){var n=e.getWordUntilPosition(t),i=new pt(t.lineNumber,n.startColumn,t.lineNumber,n.endColumn),o=r.items.map(function(e){var t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,range:i,kind:function(e){var t=monaco.languages.CompletionItemKind;switch(e){case B.Text:return t.Text;case B.Method:return t.Method;case B.Function:return t.Function;case B.Constructor:return t.Constructor;case B.Field:return t.Field;case B.Variable:return t.Variable;case B.Class:return t.Class;case B.Interface:return t.Interface;case B.Module:return t.Module;case B.Property:return t.Property;case B.Unit:return t.Unit;case B.Value:return t.Value;case B.Enum:return t.Enum;case B.Keyword:return t.Keyword;case B.Snippet:return t.Snippet;case B.Color:return t.Color;case B.File:return t.File;case B.Reference:return t.Reference}return t.Property}(e.kind)};return e.textEdit&&(t.range=vt(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(yt)),e.insertTextFormat===K.Snippet&&(t.insertTextRules=monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet),t});return{isIncomplete:r.isIncomplete,suggestions:o}}})},e}();function xt(e){return"string"==typeof e?{value:e}:function(e){return e&&"object"==typeof e&&"string"==typeof e.kind}(e)?"plaintext"===e.kind?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}:{value:e.value}:{value:"```"+e.language+"\n"+e.value+"\n```\n"}}var St=function(){function e(e){this._worker=e}return e.prototype.provideHover=function(e,t,r){var n=e.uri;return this._worker(n).then(function(e){return e.doHover(n.toString(),dt(t))}).then(function(e){if(e)return{range:vt(e.range),contents:function(e){if(e)return Array.isArray(e)?e.map(xt):[xt(e)]}(e.contents)}})},e}();var kt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentSymbols=function(e,t){var r=e.uri;return this._worker(r).then(function(e){return e.findDocumentSymbols(r.toString())}).then(function(e){if(e)return e.map(function(e){return{name:e.name,detail:"",containerName:e.containerName,kind:function(e){var t=monaco.languages.SymbolKind;switch(e){case te.File:return t.Array;case te.Module:return t.Module;case te.Namespace:return t.Namespace;case te.Package:return t.Package;case te.Class:return t.Class;case te.Method:return t.Method;case te.Property:return t.Property;case te.Field:return t.Field;case te.Constructor:return t.Constructor;case te.Enum:return t.Enum;case te.Interface:return t.Interface;case te.Function:return t.Function;case te.Variable:return t.Variable;case te.Constant:return t.Constant;case te.String:return t.String;case te.Number:return t.Number;case te.Boolean:return t.Boolean;case te.Array:return t.Array}return t.Function}(e.kind),range:vt(e.location.range),selectionRange:vt(e.location.range),tags:[]}})})},e}();function Ct(e){return{tabSize:e.tabSize,insertSpaces:e.insertSpaces}}var wt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentFormattingEdits=function(e,t,r){var n=e.uri;return this._worker(n).then(function(e){return e.format(n.toString(),null,Ct(t)).then(function(e){if(e&&0!==e.length)return e.map(yt)})})},e}(),At=function(){function e(e){this._worker=e}return e.prototype.provideDocumentRangeFormattingEdits=function(e,t,r,n){var i=e.uri;return this._worker(i).then(function(e){return e.format(i.toString(),gt(t),Ct(r)).then(function(e){if(e&&0!==e.length)return e.map(yt)})})},e}(),It=function(){function e(e){this._worker=e}return e.prototype.provideDocumentColors=function(e,t){var r=e.uri;return this._worker(r).then(function(e){return e.findDocumentColors(r.toString())}).then(function(e){if(e)return e.map(function(e){return{color:e.color,range:vt(e.range)}})})},e.prototype.provideColorPresentations=function(e,t,r){var n=e.uri;return this._worker(n).then(function(e){return e.getColorPresentations(n.toString(),t.color,gt(t.range))}).then(function(e){if(e)return e.map(function(e){var t={label:e.label};return e.textEdit&&(t.textEdit=yt(e.textEdit)),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(yt)),t})})},e}(),Tt=function(){function e(e){this._worker=e}return e.prototype.provideFoldingRanges=function(e,t,r){var n=e.uri;return this._worker(n).then(function(e){return e.getFoldingRanges(n.toString(),t)}).then(function(e){if(e)return e.map(function(e){var t={start:e.startLine+1,end:e.endLine+1};return void 0!==e.kind&&(t.kind=function(e){switch(e){case v.Comment:return monaco.languages.FoldingRangeKind.Comment;case v.Imports:return monaco.languages.FoldingRangeKind.Imports;case v.Region:return monaco.languages.FoldingRangeKind.Region}return}(e.kind)),t})})},e}();var Et=function(){function e(e){this._worker=e}return e.prototype.provideSelectionRanges=function(e,t,r){var n=e.uri;return this._worker(n).then(function(e){return e.getSelectionRanges(n.toString(),t.map(dt))}).then(function(e){if(e)return e.map(function(e){for(var t=[];e;)t.push({range:vt(e.range)}),e=e.parent;return t})})},e}();function Ot(e){return{getInitialState:function(){return new Wt(null,null,!1)},tokenize:function(t,r,n,i){return function(e,t,r,n,i){void 0===n&&(n=0);var o=0,a=!1;switch(r.scanError){case 2:t='"'+t,o=1;break;case 1:t="/*"+t,o=2}var s,u,c=j(t),l=r.lastWasColon;u={tokens:[],endState:r.clone()};for(;;){var f=n+c.getPosition(),h="";if(17===(s=c.scan()))break;if(f===n+c.getPosition())throw new Error("Scanner did not advance, next 3 characters are: "+t.substr(c.getPosition(),3));switch(a&&(f-=o),a=o>0,s){case 1:case 2:h=jt,l=!1;break;case 3:case 4:h=Pt,l=!1;break;case 6:h=Mt,l=!0;break;case 5:h=_t,l=!1;break;case 8:case 9:h=Vt,l=!1;break;case 7:h=Ft,l=!1;break;case 10:h=l?Nt:$t,l=!1;break;case 11:h=Rt,l=!1}if(e)switch(s){case 12:h=Dt;break;case 13:h=Lt}u.endState=new Wt(r.getStateData(),c.getTokenError(),l),u.tokens.push({startIndex:f,scopes:h})}return u}(e,t,r,n)}}}var jt="delimiter.bracket.json",Pt="delimiter.array.json",Mt="delimiter.colon.json",_t="delimiter.comma.json",Vt="keyword.json",Ft="keyword.json",Nt="string.value.json",Rt="number.json",$t="string.key.json",Lt="comment.block.json",Dt="comment.line.json",Wt=function(){function e(e,t,r){this._state=e,this.scanError=t,this.lastWasColon=r}return e.prototype.clone=function(){return new e(this._state,this.scanError,this.lastWasColon)},e.prototype.equals=function(t){return t===this||!!(t&&t instanceof e)&&(this.scanError===t.scanError&&this.lastWasColon===t.lastWasColon)},e.prototype.getStateData=function(){return this._state},e.prototype.setStateData=function(e){this._state=e},e}();function Ut(e){var t=[],r=[],n=new i(e);t.push(n);var o=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return n.getLanguageServiceWorker.apply(n,e)};function a(){var t=e.languageId,n=e.modeConfiguration;Bt(r),n.documentFormattingEdits&&r.push(monaco.languages.registerDocumentFormattingEditProvider(t,new wt(o))),n.documentRangeFormattingEdits&&r.push(monaco.languages.registerDocumentRangeFormattingEditProvider(t,new At(o))),n.completionItems&&r.push(monaco.languages.registerCompletionItemProvider(t,new bt(o))),n.hovers&&r.push(monaco.languages.registerHoverProvider(t,new St(o))),n.documentSymbols&&r.push(monaco.languages.registerDocumentSymbolProvider(t,new kt(o))),n.tokens&&r.push(monaco.languages.setTokensProvider(t,Ot(!0))),n.colors&&r.push(monaco.languages.registerColorProvider(t,new It(o))),n.foldingRanges&&r.push(monaco.languages.registerFoldingRangeProvider(t,new Tt(o))),n.diagnostics&&r.push(new mt(t,o,e)),n.selectionRanges&&r.push(monaco.languages.registerSelectionRangeProvider(t,new Et(o)))}a(),t.push(monaco.languages.setLanguageConfiguration(e.languageId,Kt));var s=e.modeConfiguration;return e.onDidChange(function(e){e.modeConfiguration!==s&&(s=e.modeConfiguration,a())}),t.push(qt(r)),qt(t)}function qt(e){return{dispose:function(){return Bt(e)}}}function Bt(e){for(;e.length;)e.pop().dispose()}r.d(t,"setupMode",function(){return Ut});var Kt={wordPattern:/(-?\d*\.\d\w*)|([^\[\{\]\}\:\"\,\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string"]},{open:"[",close:"]",notIn:["string"]},{open:'"',close:'"',notIn:["string"]}]}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-943b.13191008.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-943b.13191008.js index f8594da38..ee2cffa4a 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-943b.13191008.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-943b.13191008.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-943b"],{"9iGv":function(e,t,a){"use strict";var n=a("MiC1");a.n(n).a},CJ5O:function(e,t,a){"use strict";var n=a("cLjf"),i=a.n(n),r=a("hDQ3"),o=a.n(r),s=a("sm2R"),l={name:"GetDictionary",props:{dictKey:String,updataDict:String,value:String},data:function(){return{dictionary:"",dictionaryOptions:[]}},watch:{dictKey:{immediate:!0,handler:function(){this.getSystem()}},value:{handler:function(e){this.dictionary=e},deep:!0}},created:function(){this.getSystem()},mounted:function(){this.dictionary=this.value},methods:{getSystem:function(){var e=this;return o()(i.a.mark(function t(){var a,n,r;return i.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(s.a)(e.dictKey);case 2:if(a=t.sent,n=a.code,r=a.data,"200"==n){t.next=7;break}return t.abrupt("return");case 7:e.dictionaryOptions=r;case 8:case"end":return t.stop()}},t,e)}))()},selectChange:function(e){this.$emit("input",e)}}},c=(a("rVG9"),a("ZrdR")),u=Object(c.a)(l,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-select",{attrs:{placeholder:"请选择",clearable:"",size:"mini"},on:{change:e.selectChange},model:{value:e.dictionary,callback:function(t){e.dictionary=t},expression:"dictionary"}},e._l(e.dictionaryOptions,function(e){return a("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)},[],!1,null,"23d4be90",null);u.options.__file="index.vue";t.a=u.exports},HDHf:function(e,t,a){"use strict";a.d(t,"c",function(){return i}),a.d(t,"a",function(){return r}),a.d(t,"d",function(){return o}),a.d(t,"f",function(){return s}),a.d(t,"i",function(){return l}),a.d(t,"h",function(){return c}),a.d(t,"g",function(){return u}),a.d(t,"b",function(){return d}),a.d(t,"e",function(){return m});var n=a("t3Un");function i(e){return Object(n.a)({url:"/dataSet/detailBysetId/"+e.id,method:"get"})}function r(e){return Object(n.a)({url:"/dataSet",method:"post",data:e})}function o(e){return Object(n.a)({url:"/dataSet",method:"put",data:e})}function s(e){return Object(n.a)({url:"/dataSource/queryAllDataSource",method:"get",data:e})}function l(e){return Object(n.a)({url:"/dataSetParam/verification",method:"post",data:e})}function c(e){return Object(n.a)({url:"/dataSet/testTransform",method:"post",data:e})}function u(e){return Object(n.a)({url:"/report/pageList",method:"get",params:e})}function d(e){return Object(n.a)({url:"/reportExcel",method:"post",data:e})}function m(e){return Object(n.a)({url:"/reportExcel",method:"put",data:e})}},MiC1:function(e,t,a){},NMof:function(e,t,a){"use strict";var n=a("eLLl");a.n(n).a},Yfch:function(e,t,a){"use strict";function n(e,t,a){""==t||void 0==t||null==t?a():/^[_a-zA-Z0-9]+$/.test(t)?a():a(new Error("英文字母、数字或下划线"))}a.d(t,"a",function(){return n})},Zzv2:function(e,t,a){"use strict";a.r(t);var n=a("t3Un");function i(e){return Object(n.a)({url:"dataSet/pageList",method:"GET",params:e})}function r(e){return Object(n.a)({url:"dataSet",method:"post",data:e})}function o(e){return Object(n.a)({url:"dataSet/delete/batch",method:"post",data:e})}function s(e){return Object(n.a)({url:"dataSet",method:"put",data:e})}function l(e){return Object(n.a)({url:"dataSet/"+e.id,method:"get",params:{accessKey:e.accessKey}})}var c=a("/umX"),u=a.n(c),d=a("6ZY3"),m=a.n(d),p=a("omC7"),f=a.n(p),g=a("cLjf"),b=a.n(g),h=a("hDQ3"),v=a.n(h),y=a("HDHf"),D=a("CJ5O"),S=a("iivf"),x=(a("9dfR"),a("opU+"),a("yY5G"),a("oMrk"),a("atyl")),C=a("SynA"),T=a("unDg"),w=a.n(T),k=a("nKCB"),R=a.n(k),_=a("LGhb"),E=a.n(_),F=["SELECT","INSERT","DELETE","UPDATE","CREATE TABLE","DROP TABLE","ALTER TABLE","CREATE VIEW","DROP VIEW","CREATE INDEX","DROP INDEX","CREATE PROCEDURE","DROP PROCEDURE","CREATE TRIGGER","DROP TRIGGER","CREATE SCHEMA","DROP SCHEMA","CREATE DOMAIN","ALTER DOMAIN","DROP DOMAIN","GRANT","DENY","REVOKE","COMMIT","ROLLBACK","SET TRANSACTION","DECLARE","EXPLAN","OPEN","FETCH","CLOSE","PREPARE","EXECUTE","DESCRIBE","FROM","ORDER BY"];var O=function(e){return{provideCompletionItems:function(t,a){return{suggestions:function(t,a){var n=t.getValue(),i=(a=a.replace(/[\*\[\]@\$\(\)]/g,"").replace(/(\s+|\.)/g," ")).split(/[\s;]/),r=i[i.length-1],o=r.length,s=new RegExp("([^\\w]|^)"+r+"\\w*","gim"),l=n.match(s),c=l?l.map(function(e){var t=new RegExp(r,"gim"),a=e.search(t);return e.substr(a)}):[];return E()(new R.a([].concat(F,w()(c),w()(e(t))))).sort().filter(function(e){var t=new RegExp(e.substr(0,o),"gim");return!(l&&1===l.length&&e===r||1===e.length)&&r.match(t)}).map(function(e){return{label:e,kind:F.indexOf(e)>-1?C.languages.CompletionItemKind.Keyword:C.languages.CompletionItemKind.Text,documentation:e,insertText:e}})}(t,t.getValueInRange({startLineNumber:a.lineNumber,startColumn:1,endLineNumber:a.lineNumber,endColumn:a.column}))}}}};var N=function(e){return{provideCompletionItems:function(t,a){return{suggestions:function(t,a){var n=t.getValue(),i=(a=a.replace(/[\*\[\]@\$\(\)]/g,"").replace(/(\s+|\.)/g," ")).split(/[\s;]/),r=i[i.length-1],o=r.length,s=new RegExp("([^\\w]|^)"+r+"\\w*","gim"),l=n.match(s);return E()(new R.a([].concat(w()(e(t))))).sort().filter(function(e){var t=new RegExp(e.substr(0,o),"gim");return!(l&&1===l.length&&e===r||1===e.length)&&r.match(t)}).map(function(e){return{label:e,kind:C.languages.CompletionItemKind.Text,documentation:e,insertText:e}})}(t,t.getValueInRange({startLineNumber:a.lineNumber,startColumn:1,endLineNumber:a.lineNumber,endColumn:a.column}))}}}};var L=function(e){e.languages.register({id:"log"}),e.languages.setMonarchTokensProvider("log",{tokenizer:{root:[[/(^[=a-zA-Z].*|\d\s.*)/,"log-normal"],[/\sERROR\s.*/,"log-error"],[/\sWARN\s.*/,"log-warn"],[/\sINFO\s.*/,"log-info"],[/^([0-9]{4}||[0-9]{2})-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}(.[0-9]{3})?/,"log-date"],[/^[0-9]{2}\/[0-9]{2}\/[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}(.[0-9]{3})?/,"log-date"],[/(^\*\*Waiting queue:.*)/,"log-info"],[/(^\*\*result tips:.*)/,"log-info"]]}}),e.editor.defineTheme("log",{base:"vs",inherit:!0,rules:[{token:"log-info",foreground:"4b71ca"},{token:"log-error",foreground:"ff0000",fontStyle:"bold"},{token:"log-warn",foreground:"FFA500"},{token:"log-date",foreground:"008800"},{token:"log-normal",foreground:"808080"}],colors:{"editor.lineHighlightBackground":"#ffffff","editorGutter.background":"#f7f7f7"}})},$={},j=function(e){var t=e.id.substring(6);return $[t]&&$[t].hints||[]};C.languages.registerCompletionItemProvider("sql",O(j)),C.languages.registerCompletionItemProvider("javascript",N(j)),L(C);var I={props:{options:{type:Object,default:function(){return{}}},value:{type:String,required:!1},language:{type:String},hints:{type:Array,default:function(){return[]}}},name:"MonacoEditor",data:function(){return{editorInstance:null,defaultOptions:{theme:"vs-dark",fontSize:14}}},watch:{value:function(){this.value!==this.editorInstance.getValue()&&this.editorInstance.setValue(this.value)}},mounted:function(){this.initEditor(),$[this.editorInstance._id]=this,window.addEventListener("resize",this.layout)},destroyed:function(){this.editorInstance.dispose(),$[this.editorInstance._id]=null,window.removeEventListener("resize",this.layout)},methods:{layout:function(){this.editorInstance.layout()},undo:function(){this.editorInstance.trigger("anyString","undo"),this.onValueChange()},redo:function(){this.editorInstance.trigger("anyString","redo"),this.onValueChange()},getOptions:function(){var e={value:this.value};return void 0!==this.language&&(e.language=this.language),m()({},this.defaultOptions,this.options,e)},onValueChange:function(){this.$emit("input",this.editorInstance.getValue()),this.$emit("change",this.editorInstance.getValue())},initEditor:function(){var e=this;this.MonacoEnvironment={getWorkerUrl:function(){return"./editor.worker.bundle.js"}},this.editorInstance=C.editor.create(this.$refs.editor,this.getOptions()),this.editorInstance.onContextMenu(function(t){e.$emit("contextmenu",t)}),this.editorInstance.onDidChangeModelContent(function(){e.onValueChange()}),this.editorInstance.addCommand(C.KeyMod.CtrlCmd|C.KeyCode.KEY_S,function(){e.$emit("save",e.editorInstance.getValue())})}}},V=(a("z5hZ"),a("ZrdR")),P=Object(V.a)(I,function(){var e=this.$createElement;return(this._self._c||e)("div",{ref:"editor",staticClass:"main"})},[],!1,null,"6f01286f",null);P.options.__file="MonacoEditor.vue";var A=P.exports,M=a("Yfch"),q={name:"Support",components:{Dictionary:D.a,codemirror:S.codemirror,vueJsonEditor:x.a,MonacoEditor:A},props:{visib:{required:!0,type:Boolean,default:!1},dataSet:{required:!1,type:Object,default:function(){return""}}},data:function(){return{data:[],listLoading:!0,permission:{add:["admin","alipayConfig:add"],edit:["admin","alipayConfig:edit"],del:["admin","datasource:del"]},code:"",optionsSql:{mode:"text/x-sql",tabSize:2,lineNumbers:!0,line:!0,styleActiveLine:!0,hintOptions:{completeSingle:!0}},optionsJavascript:{mode:"text/javascript",tabSize:2,lineNumbers:!0,line:!0,styleActiveLine:!0,hintOptions:{completeSingle:!0}},selectedList:[],clickType:"",formData:{},dialogFormVisible:!1,dialogFormVisibleTitle:"",dialogPermissionVisible:!1,dialogSwitchVisible:!1,permissionTextarea:"",isItemFilterType:"",itemFilterList:[{transformType:"js",transformScript:""}],transformScript:"function dataTransform(data){\n\t//自定义脚本内容\n\treturn data;\n}",itemFilterScriptId:"",title:"自定义高级规则",totalCount:0,totalPage:0,params:{pageNumber:1,pageSize:10,helpTitle:"",enabled:null,helpCategory:"",order:"DESC",sort:"update_time"},formRules:{setName:[{required:!0,message:"数据集名称必填",trigger:"blur"}],setCode:[{required:!0,message:"数据集编码必填",trigger:"blur"},{validator:M.a,trigger:"blur"}],sourceCode:[{required:!0,message:"数据源必选",trigger:"change"}]},sourceList:[],validationRules:"",tabsActiveName:"first",cols:[],tableData:[{paramName:"",paramDesc:"",paramType:"",sampleItem:"",mandatory:!0,requiredFlag:1,validationRules:'function verification(data){\n\t//自定义脚本内容\n\t//可返回true/false单纯校验键入的data正确性\n\t//可返回文本,实时替换,比如当前时间等\n\t//return "2099-01-01 00:00:00";\n\treturn true;\n}'}],isRowData:{},tableData2:[],dialogTitle:"js脚本填写",isShowPagination:!1,updataDisabled:!1,dialogCaseResult:!1,caseResultTitle:"",caseResultContent:null,testMassageCode:null,query:{setName:"",setCode:""},setType:"",httpForm:{apiUrl:"",method:"GET",header:'{"Content-Type":"application/json;charset=UTF-8"}',body:""},dictionaryOptions:[],list:null,basicDialog:!1,dialogForm:{sourceName:"",sourceCode:"",sourceType:"",sourceDesc:"",sourceConfig:""},dataLink:[],rules:{sourceType:[{required:!0,message:"数据集名称必选",trigger:"change"}],sourceCode:[{required:!0,message:"数据集编码必填",trigger:"blur"}],sourceName:[{required:!0,message:"数据源名称必选",trigger:"blur"}]},value:"",testReplyCode:null}},methods:{addOrEditDataSet:function(e,t){var a=this;return v()(b.a.mark(function n(){var i,r,o;return b.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a.setType=t,"http"==t&&e.dynSentence&&(a.httpForm=JSON.parse(e.dynSentence)),n.next=4,Object(y.f)();case 4:if(i=n.sent,r=i.code,o=i.data,"200"==r){n.next=9;break}return n.abrupt("return");case 9:a.sourceList=o,a.dialogFormVisible=!0,a.tabsActiveName="first",a.testMassageCode=null,e.id?(a.updataDisabled=!0,a.dialogFormVisibleTitle="编辑数据集",Object(y.c)(e).then(function(e){if(a.formData=e.data,null!=e.data.dataSetParamDtoList||e.data.dataSetParamDtoList.length>0){a.tableData=e.data.dataSetParamDtoList;var t=0;a.tableData.find(function(e,n){"pageNumber"!==e.paramName&&"pageSize"!==e.paramName||t++,1==e.requiredFlag?a.tableData[n].mandatory=!0:a.tableData[n].mandatory=!1}),a.isShowPagination=2===t}else a.tableData=[],a.isShowPagination=!1;null!==e.data.dataSetTransformDtoList?a.itemFilterList=e.data.dataSetTransformDtoList:a.itemFilterList=[],a.itemFilterList.forEach(function(e,t){if("dict"==e.transformType){var n=JSON.parse(e.transformScript),i=[];for(var r in n){var o=[];for(var s in n[r])o.push({name:s,value:n[r][s]});i.push({name:r,children:o})}a.tableData2=i}})})):(a.dialogFormVisibleTitle="新增数据集",a.updataDisabled=!1,a.formData={setName:"",setCode:"",setDesc:"",sourceCode:"",dynSentence:""},a.tableData=[],a.itemFilterList=[],a.isShowPagination=!1);case 14:case"end":return n.stop()}},n,a)}))()},closeDialog:function(){this.$emit("handleClose")},onJsonChange:function(e){},onJsonSave:function(e){},handleClose:function(e){this.dialogFormVisible=!1},isShowCaseResult:function(e){this.dialogCaseResult=!0,this.caseResultTitle=e.setName,this.caseResultContent=JSON.parse(e.caseResult)},handleClickTabs:function(e,t){var a=this;return v()(b.a.mark(function t(){var n,i,r,o;return b.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if("http"==a.setType&&(console.log("http数据集"+a.httpForm),a.formData.dynSentence=f()(a.httpForm)),"third"!=e.paneName){t.next=12;break}return n={sourceCode:a.formData.sourceCode,dynSentence:a.formData.dynSentence,dataSetParamDtoList:a.tableData,dataSetTransformDtoList:a.itemFilterList,setType:a.setType},t.next=5,Object(y.h)(n);case 5:if(i=t.sent,r=i.code,o=i.data,"200"==r){t.next=10;break}return t.abrupt("return");case 10:a.cols=o.data,a.testMassageCode=r;case 12:case"end":return t.stop()}},t,a)}))()},Mandatory:function(e){this.tableData[e].mandatory?this.tableData[e].requiredFlag=1:this.tableData[e].requiredFlag=0},changePagination:function(){var e=this;this.isShowPagination?this.tableData.push({paramName:"pageNumber",paramDesc:"当前页",paramType:"int",sampleItem:"1",mandatory:!0,requiredFlag:1,validationRules:"function verification(data){\n\t//自定义脚本内容\n\treturn true;\n}"},{paramName:"pageSize",paramDesc:"条数",paramType:"int",sampleItem:"10",mandatory:!0,requiredFlag:1,validationRules:"function verification(data){\n\t//自定义脚本内容\n\treturn true;\n}"}):this.tableData.forEach(function(t,a){"pageSize"!=t.paramName&&"pageNumber"!=t.paramName||e.tableData.splice(a,2)})},filterScriptBtn:function(e){var t=this;return v()(b.a.mark(function a(){var n;return b.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:console.log(e),t.isItemFilterType=e,t.dialogSwitchVisible=!0,"js"==e.transformType?(t.itemFilterScriptId=e.itemFilterSort,n="function dataTransform(data){\n\t//自定义脚本内容\n\treturn data;\n}",t.transformScript=e.transformScript?e.transformScript:n):e.transformType;case 4:case"end":return a.stop()}},a,t)}))()},filterScriptConfirm:function(){var e=this,t=this.toObject(this.tableData2);this.itemFilterList.forEach(function(a,n){"dict"==a.transformType?a.transformScript=f()(t):a.transformScript=e.transformScript}),this.dialogSwitchVisible=!1},addFilter:function(){var e={};this.tableData2=[],e=0==this.itemFilterList.length?{transformType:"",transformScript:"",itemFilterSort:1}:{transformType:"",transformScript:"",itemFilterSort:this.itemFilterList.length+1},this.itemFilterList.push(e)},reduceFilter:function(e){if(this.itemFilterList.length>0){var t=this.itemFilterList.indexOf(e);t>-1&&this.itemFilterList.splice(t,1)}},permissionClick:function(e,t){if(this.title="自定义高级规则",""!=this.isRowData.sampleItem){this.isRowData=e;this.validationRules=e.validationRules?e.validationRules:'function verification(data){\n\t//自定义脚本内容\n\t//可返回true/false单纯校验键入的data正确性\n\t//可返回文本,实时替换,比如当前时间等\n\t//return "2099-01-01 00:00:00";\n\treturn true;\n}'}this.dialogPermissionVisible=!0},dialogValidationRules:function(){this.isRowData.validationRules=this.validationRules,this.dialogPermissionVisible=!1},addAllDict:function(){this.tableData2.push({name:"",children:[{name:"",value:""}]})},addDict:function(e,t){t.push({name:"",value:""})},delAllDict:function(e,t){t.splice(e,1)},delDict:function(e,t){0!=e?t.splice(e,1):this.$message.error("至少保留一条")},changeSource:function(){},testResultset:function(){var e=this;return v()(b.a.mark(function t(){var a,n,i,r;return b.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.isRowData.validationRules=e.validationRules,console.log(e.isRowData,"12345678"),t.next=4,Object(y.i)(e.isRowData);case 4:a=t.sent,n=a.code,i=a.message,r=a.data,"200"==n?r?e.$message.success("返回结果:"+r):e.$message.warning("当前示例值校验不通过"):e.$message.error(i);case 9:case"end":return t.stop()}},t,e)}))()},cutOutRow:function(e,t){t.splice(e,1)},addRow:function(e,t){this.tableData.push({paramName:"",paramDesc:"",paramType:"",sampleItem:"",mandatory:!0,requiredFlag:1,validationRules:'function verification(data){\n\t//自定义脚本内容\n\t//可返回true/false单纯校验键入的data正确性\n\t//可返回文本,实时替换,比如当前时间等\n\t//return "2099-01-01 00:00:00";\n\treturn true;\n}'})},submit:function(e){var t=this;return v()(b.a.mark(function a(){return b.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:"http"==t.setType&&(console.log("http数据集"+t.httpForm),t.formData.dynSentence=f()(t.httpForm)),t.formData.setType=t.setType,t.$refs[e].validate(function(){var e=v()(b.a.mark(function e(a,n){var i,r;return b.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!a){e.next=30;break}if(200!=t.testMassageCode){e.next=26;break}if(t.formData.dataSetParamDtoList=t.tableData,t.formData.dataSetTransformDtoList=t.itemFilterList,t.formData.caseResult=f()(t.cols),"新增数据集"!==t.dialogFormVisibleTitle){e.next=16;break}return e.next=8,Object(y.a)(t.formData);case 8:if(i=e.sent,"200"==i.code){e.next=12;break}return e.abrupt("return");case 12:t.$emit("refreshList"),t.closeDialog(),e.next=24;break;case 16:return e.next=18,Object(y.d)(t.formData);case 18:if(r=e.sent,"200"==r.code){e.next=22;break}return e.abrupt("return");case 22:t.$emit("refreshList"),t.closeDialog();case 24:e.next=28;break;case 26:return t.$message.error("请先测试预览,操作成功后便可保存!"),e.abrupt("return");case 28:e.next=31;break;case 30:return e.abrupt("return");case 31:case"end":return e.stop()}},e,t)}));return function(t,a){return e.apply(this,arguments)}}());case 3:case"end":return a.stop()}},a,t)}))()},toObject:function(e){var t={},a={};e.forEach(function(e){e.name&&(t[e.name]=e.children)});var n=function(e){var n={};t[e].map(function(e){m()(n,u()({},e.name,e.value))}),a[e]=n};for(var i in t)n(i);return a}}},z=(a("9iGv"),Object(V.a)(q,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-dialog",{attrs:{title:e.dialogFormVisibleTitle,visible:e.visib,"close-on-click-modal":!1,"before-close":e.closeDialog,width:"65%"},on:{"update:visible":function(t){e.visib=t}}},[a("el-form",{ref:"form",attrs:{model:e.formData,rules:e.formRules,size:"small","label-width":"130px"}},[a("el-row",{attrs:{gutter:10}},["sql"==this.setType?a("el-col",{attrs:{xs:24,sm:20,md:8,lg:8,xl:8}},[a("el-form-item",{attrs:{label:"数据源",prop:"sourceCode"}},[a("el-select",{staticClass:"organisation",attrs:{size:"mini"},on:{change:e.changeSource},model:{value:e.formData.sourceCode,callback:function(t){e.$set(e.formData,"sourceCode","string"==typeof t?t.trim():t)},expression:"formData.sourceCode"}},e._l(e.sourceList,function(e){return a("el-option",{key:e.sourceName,attrs:{label:e.sourceName,value:e.sourceCode}})}),1)],1)],1):e._e(),e._v(" "),a("el-col",{attrs:{xs:24,sm:20,md:7,lg:7,xl:7}},[a("el-form-item",{attrs:{label:"数据集编码",prop:"setCode"}},[a("el-input",{attrs:{disabled:e.updataDisabled,placeholder:"唯一标识",size:"mini"},model:{value:e.formData.setCode,callback:function(t){e.$set(e.formData,"setCode","string"==typeof t?t.trim():t)},expression:"formData.setCode"}})],1)],1),e._v(" "),a("el-col",{attrs:{xs:24,sm:20,md:7,lg:7,xl:7}},[a("el-form-item",{attrs:{label:"数据集名称",prop:"setName"}},[a("el-input",{attrs:{size:"mini"},model:{value:e.formData.setName,callback:function(t){e.$set(e.formData,"setName","string"==typeof t?t.trim():t)},expression:"formData.setName"}})],1)],1),e._v(" "),a("el-col",{attrs:{xs:24,sm:20,md:22,lg:22,xl:22}},[a("el-form-item",{attrs:{label:"数据集描述"}},[a("el-input",{attrs:{size:"mini"},model:{value:e.formData.setDesc,callback:function(t){e.$set(e.formData,"setDesc","string"==typeof t?t.trim():t)},expression:"formData.setDesc"}})],1)],1)],1),e._v(" "),"sql"==this.setType?a("el-row",{attrs:{gutter:10}},[a("el-col",{staticClass:"code-mirror-form",attrs:{xs:24,sm:20,md:22,lg:22,xl:22}},[a("el-form-item",{attrs:{label:"查询SQL"}},[a("div",{staticClass:"codemirror"},[a("monaco-editor",{staticStyle:{height:"500px"},attrs:{language:"sql"},model:{value:e.formData.dynSentence,callback:function(t){e.$set(e.formData,"dynSentence","string"==typeof t?t.trim():t)},expression:"formData.dynSentence"}})],1)])],1)],1):e._e(),e._v(" "),"http"==this.setType?a("el-row",[a("el-form-item",{attrs:{label:"请求路径"}},[a("el-input",{staticClass:"input-with-select",attrs:{placeholder:"请输入请求路径..."},model:{value:e.httpForm.apiUrl,callback:function(t){e.$set(e.httpForm,"apiUrl",t)},expression:"httpForm.apiUrl"}},[a("el-select",{attrs:{slot:"prepend",placeholder:"请选择"},slot:"prepend",model:{value:e.httpForm.method,callback:function(t){e.$set(e.httpForm,"method",t)},expression:"httpForm.method"}},[a("el-option",{attrs:{label:"GET",value:"GET"}}),e._v(" "),a("el-option",{attrs:{label:"POST",value:"POST"}}),e._v(" "),a("el-option",{attrs:{label:"PUT",value:"PUT"}}),e._v(" "),a("el-option",{attrs:{label:"DELETE",value:"DELETE"}})],1)],1)],1),e._v(" "),a("el-form-item",{attrs:{label:"请求头"}},[a("el-input",{attrs:{size:"mini",placeholder:"请输入请求头..."},model:{value:e.httpForm.header,callback:function(t){e.$set(e.httpForm,"header","string"==typeof t?t.trim():t)},expression:"httpForm.header"}})],1),e._v(" "),a("el-form-item",{attrs:{label:"请求体"}},[a("el-input",{attrs:{size:"mini",placeholder:"请输入请求体..."},model:{value:e.httpForm.body,callback:function(t){e.$set(e.httpForm,"body","string"==typeof t?t.trim():t)},expression:"httpForm.body"}})],1)],1):e._e(),e._v(" "),a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{xs:24,sm:20,md:22,lg:22,xl:22}},[a("el-form",{staticClass:"demo-ruleForm",attrs:{"label-width":"100px"}},[a("el-tabs",{attrs:{type:"card"},on:{"tab-click":e.handleClickTabs},model:{value:e.tabsActiveName,callback:function(t){e.tabsActiveName="string"==typeof t?t.trim():t},expression:"tabsActiveName"}},[a("el-tab-pane",{attrs:{label:"查询参数",name:"first"}},[0==e.tableData.length?a("el-button",{attrs:{type:"text",size:"small"},on:{click:function(t){return e.addRow()}}},[e._v("添加\n ")]):e._e(),e._v(" "),a("el-table",{staticStyle:{width:"100%"},attrs:{data:e.tableData,border:""}},[a("el-table-column",{attrs:{align:"center",label:"序号",type:"index","min-width":"80"}}),e._v(" "),a("el-table-column",{attrs:{label:"参数名",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-input",{attrs:{disabled:"pageSize"==e.tableData[t.$index].paramName||"pageNumber"==e.tableData[t.$index].paramName},model:{value:e.tableData[t.$index].paramName,callback:function(a){e.$set(e.tableData[t.$index],"paramName","string"==typeof a?a.trim():a)},expression:"tableData[scope.$index].paramName"}})]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"描述",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-input",{model:{value:e.tableData[t.$index].paramDesc,callback:function(a){e.$set(e.tableData[t.$index],"paramDesc","string"==typeof a?a.trim():a)},expression:"tableData[scope.$index].paramDesc"}})]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"数据类型",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-input",{model:{value:e.tableData[t.$index].paramType,callback:function(a){e.$set(e.tableData[t.$index],"paramType","string"==typeof a?a.trim():a)},expression:"tableData[scope.$index].paramType"}})]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"示例值",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-input",{model:{value:e.tableData[t.$index].sampleItem,callback:function(a){e.$set(e.tableData[t.$index],"sampleItem","string"==typeof a?a.trim():a)},expression:"tableData[scope.$index].sampleItem"}})]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"校验",width:"220",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-checkbox",{on:{change:function(a){return e.Mandatory(t.$index)}},model:{value:e.tableData[t.$index].mandatory,callback:function(a){e.$set(e.tableData[t.$index],"mandatory",a)},expression:"tableData[scope.$index].mandatory"}},[e._v("必选\n ")]),e._v(" "),a("el-button",{attrs:{type:"primary",icon:"el-icon-plus"},on:{click:function(a){return e.permissionClick(t.row,t.$index)}}},[e._v("\n 高级规则\n ")])]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"操作",width:"200",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-button",{attrs:{type:"text",size:"small"},nativeOn:{click:function(a){return a.preventDefault(),e.cutOutRow(t.$index,e.tableData)}}},[e._v("删除\n ")]),e._v(" "),a("el-button",{attrs:{type:"text",size:"small"},on:{click:function(a){return e.addRow(t.row)}}},[e._v("追加\n ")])]}}])})],1)],1),e._v(" "),a("el-tab-pane",{attrs:{label:"数据转换",name:"second"}},[[a("div",{staticClass:"filterWrapper"},[a("div",{staticClass:"filterTable"},[e._l(e.itemFilterList,function(t,n){return a("div",{key:n,staticClass:"filterBox"},[a("div",{staticClass:"box"},[a("Dictionary",{attrs:{"updata-dict":t.transformType,"dict-key":"TRANSFORM_TYPE"},model:{value:t.transformType,callback:function(a){e.$set(t,"transformType",a)},expression:"item.transformType"}}),e._v(" "),a("el-button",{staticClass:"reduceFilter",attrs:{type:"text",icon:"el-icon-close"},on:{click:function(a){return e.reduceFilter(t)}}}),e._v(" "),"js"==t.transformType||"dict"==t.transformType?a("el-button",{staticClass:"editor",attrs:{type:"text",icon:"el-icon-edit"},on:{click:function(a){return e.filterScriptBtn(t)}}}):e._e()],1),e._v(" "),a("el-button",{staticClass:"font-icon-right",attrs:{type:"text",icon:"el-icon-right"}})],1)}),e._v(" "),a("el-dialog",{attrs:{title:e.dialogTitle,visible:e.dialogSwitchVisible,"close-on-click-modal":!1,width:"60%","min-height":"400px","append-to-body":""},on:{"update:visible":function(t){e.dialogSwitchVisible=t}}},["js"==e.isItemFilterType.transformType?a("div",[a("div",{staticClass:"codemirror"},[a("monaco-editor",{staticStyle:{height:"500px"},attrs:{language:"javascript"},model:{value:e.transformScript,callback:function(t){e.transformScript="string"==typeof t?t.trim():t},expression:"transformScript"}})],1)]):a("div",[e._l(e.tableData2,function(t,n){return a("div",{key:n},[a("label",[e._v("字典项名称:")]),e._v(" "),a("el-input",{staticStyle:{width:"25%"},attrs:{size:"small"},model:{value:t.name,callback:function(a){e.$set(t,"name","string"==typeof a?a.trim():a)},expression:"item.name"}}),e._v(" "),a("el-button",{attrs:{type:"danger",size:"small",plain:"",icon:"el-icon-delete"},on:{click:function(t){return e.delAllDict(n,e.tableData2)}}}),e._v(" "),a("el-table",{staticStyle:{width:"80%"},attrs:{data:t.children,border:""}},[a("el-table-column",{attrs:{label:"key",width:"180"},scopedSlots:e._u([{key:"default",fn:function(n){return[a("el-input",{model:{value:t.children[n.$index].name,callback:function(a){e.$set(t.children[n.$index],"name","string"==typeof a?a.trim():a)},expression:"\n item.children[scope.$index].name\n "}})]}}],null,!0)}),e._v(" "),a("el-table-column",{attrs:{label:"值"},scopedSlots:e._u([{key:"default",fn:function(n){return[a("el-input",{model:{value:t.children[n.$index].value,callback:function(a){e.$set(t.children[n.$index],"value","string"==typeof a?a.trim():a)},expression:"\n item.children[scope.$index].value\n "}})]}}],null,!0)}),e._v(" "),a("el-table-column",{attrs:{label:"操作",width:"150px",align:"center"},scopedSlots:e._u([{key:"default",fn:function(n){return[a("el-button",{attrs:{type:"success",circle:"",plain:"",icon:"el-icon-plus"},on:{click:function(a){return e.addDict(n.$index,t.children)}}}),e._v(" "),a("el-button",{attrs:{type:"danger",circle:"",plain:"",icon:"el-icon-delete"},on:{click:function(a){return e.delDict(n.$index,t.children)}}})]}}],null,!0)})],1)],1)}),e._v(" "),a("el-button",{attrs:{type:"success"},on:{click:function(t){return e.addAllDict()}}},[e._v("新增\n ")])],2),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:function(t){e.dialogSwitchVisible=!1}}},[e._v("取消")]),e._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:e.filterScriptConfirm}},[e._v("保存")])],1)]),e._v(" "),a("div",{staticClass:"addFilter",attrs:{disabled:"true"},on:{click:e.addFilter}},[a("i",{staticClass:"el-icon-plus"}),a("span",[e._v("新增")])])],2)])]],2),e._v(" "),a("el-tab-pane",{attrs:{label:"测试预览",name:"third"}},[a("div",{staticStyle:{"max-height":"400px",overflow:"auto"}},[a("vue-json-editor",{attrs:{"show-btns":!1,mode:"code",lang:"zh"},on:{"json-change":e.onJsonChange,"json-save":e.onJsonSave},model:{value:e.cols,callback:function(t){e.cols=t},expression:"cols"}})],1)])],1)],1)],1)],1)],1),e._v(" "),a("div",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:e.closeDialog}},[e._v("取消")]),e._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:function(t){return e.submit("form")}}},[e._v("保存")])],1)],1),e._v(" "),a("el-dialog",{attrs:{title:e.title,visible:e.dialogPermissionVisible,"close-on-click-modal":!1,width:"60%"},on:{"update:visible":function(t){e.dialogPermissionVisible=t}}},[a("div",{staticClass:"codemirror"},[a("monaco-editor",{staticStyle:{height:"500px"},attrs:{language:"javascript"},model:{value:e.validationRules,callback:function(t){e.validationRules="string"==typeof t?t.trim():t},expression:"validationRules"}})],1),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{attrs:{type:"warning"},on:{click:e.testResultset}},[e._v("测试")]),e._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:e.dialogValidationRules}},[e._v("保存")]),e._v(" "),a("el-button",{on:{click:function(t){e.dialogPermissionVisible=!1}}},[e._v("关闭")])],1)])],1)},[],!1,null,"47b2c5a4",null));z.options.__file="EditDataSet.vue";var B=z.exports,J={name:"Support",components:{vueJsonEditor:x.a},props:{visib:{required:!0,type:Boolean,default:!1}},data:function(){return{dialogCaseResult:!1,caseResultTitle:"",caseResultContent:null}},methods:{dataViewPreview:function(e,t){this.caseResultTitle=e,this.caseResultContent=t},closeDialog:function(){this.$emit("handleClose")},onJsonChange:function(e){},onJsonSave:function(e){}}},G=Object(V.a)(J,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-dialog",{attrs:{title:e.caseResultTitle,"close-on-click-modal":!1,visible:e.visib,width:"70%","before-close":e.closeDialog},on:{"update:visible":function(t){e.visib=t}}},[a("vue-json-editor",{staticClass:"my-editor",attrs:{"show-btns":!1,mode:"code",lang:"zh"},on:{"json-change":e.onJsonChange,"json-save":e.onJsonSave},model:{value:e.caseResultContent,callback:function(t){e.caseResultContent=t},expression:"caseResultContent"}}),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{attrs:{type:"primary"},on:{click:e.closeDialog}},[e._v("关闭")])],1)],1)},[],!1,null,null,null);G.options.__file="DataView.vue";var K={name:"ReportDataSet",components:{EditDataSet:B,DataView:G.exports},data:function(){var e=this;return{dialogVisibleSetDataSet:!1,dataSet:{},dialogCaseResult:!1,crudOption:{title:"数据集",labelWidth:"120px",queryFormFields:[{inputType:"input",label:"数据集编码",field:"setCode"},{inputType:"input",label:"数据集名称",field:"setName"},{inputType:"anji-select",anjiSelectOption:{url:"/dataSource/queryAllDataSource",label:"sourceName",option:"sourceCode",mergeLabel:!0},label:"数据源",field:"sourceCode"},{inputType:"anji-select",anjiSelectOption:{dictCode:"SET_TYPE"},label:"数据集类型",field:"setType"}],buttons:{customButton:{operationWidth:180},query:{api:i,permission:"resultsetManage:query",sort:"update_time",order:"DESC"},queryByPrimarykey:{api:l,permission:"resultsetManage:detail"},add:{api:r,permission:"resultsetManage:insert",isShow:!1},delete:{api:o,permission:"resultsetManage:delete"},edit:{api:s,permission:"resultsetManage:update",isShow:!1}},columns:[{label:"",field:"id",primaryKey:!0,tableHide:!0,editHide:!0},{label:"数据集编码",placeholder:"",field:"setCode",editField:"setCode",inputType:"input",rules:[{min:1,max:50,message:"不超过50个字符",trigger:"blur"}],disabled:!1},{label:"数据集名称",placeholder:"",field:"setName",editField:"setName",inputType:"input",rules:[{min:1,max:100,message:"不超过100个字符",trigger:"blur"}],disabled:!1},{label:"描述",placeholder:"",field:"setDesc",editField:"setDesc",inputType:"input",rules:[{min:1,max:255,message:"不超过255个字符",trigger:"blur"}],disabled:!1},{label:"数据源编码",placeholder:"",field:"sourceCode",editField:"sourceCode",inputType:"input",rules:[{min:1,max:50,message:"不超过50个字符",trigger:"blur"}],disabled:!1},{label:"数据集类型",placeholder:"",field:"setType",editField:"setType",inputType:"input",rules:[{min:1,max:50,message:"不超过50个字符",trigger:"blur"}],disabled:!1},{label:"动态查询sql或者接口中的请求体",placeholder:"",field:"dynSentence",editField:"dynSentence",tableHide:!0,inputType:"input",rules:[{min:1,max:2048,message:"不超过2048个字符",trigger:"blur"}],disabled:!1},{label:"结果案例",placeholder:"",field:"caseResult",tableHide:!0,editField:"caseResult",inputType:"input",rules:[{min:1,max:65535,message:"不超过65535个字符",trigger:"blur"}],disabled:!1},{label:"状态",placeholder:"",field:"enableFlag",fieldTableRowRenderer:function(t){return e.getDictLabelByCode("ENABLE_FLAG",t.enableFlag)},colorStyle:{0:"table-danger",1:"table-success"},editField:"enableFlag",inputType:"input",rules:[],disabled:!1},{label:"删除标记",placeholder:"",field:"deleteFlag",editField:"deleteFlag",tableHide:!0,inputType:"input",rules:[],disabled:!1}]}}},methods:{operateDataset:function(e,t){this.dialogVisibleSetDataSet=!0,t&&t.msg?(this.dataSet=t.msg,e=t.msg.setType):this.dataSet={},this.$refs.EditDataSet.addOrEditDataSet(this.dataSet,e)},refreshList:function(){this.$refs.listPage.handleQueryForm("query")},dataView:function(e){this.dialogCaseResult=!0,this.$refs.DataView.dataViewPreview(e.msg.setName,JSON.parse(e.msg.caseResult))}}},U=(a("NMof"),Object(V.a)(K,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("anji-crud",{ref:"listPage",attrs:{option:e.crudOption},scopedSlots:e._u([{key:"buttonLeftOnTable",fn:function(){return[a("el-dropdown",{attrs:{placement:"bottom"},on:{command:e.operateDataset}},[a("el-button",{attrs:{type:"primary",icon:"el-icon-plus"}},[e._v("\n 新增\n "),a("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),e._v(" "),a("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[a("el-dropdown-item",{attrs:{command:"sql"}},[e._v("SQL")]),e._v(" "),a("el-dropdown-item",{attrs:{command:"http"}},[e._v("HTTP")])],1)],1)]},proxy:!0},{key:"rowButton",fn:function(t){return[a("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"resultsetManage:update",expression:"'resultsetManage:update'"}],attrs:{type:"text"},on:{click:function(a){return e.operateDataset("edit",t)}}},[e._v("编辑\n ")])]}},{key:"rowButtonInMore",fn:function(t){return[a("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"resultsetManage:query",expression:"'resultsetManage:query'"}],attrs:{type:"text"},on:{click:function(a){return e.dataView(t)}}},[e._v("数据预览\n ")])]}},{key:"pageSection",fn:function(){return[a("EditDataSet",{ref:"EditDataSet",attrs:{dataSet:e.dataSet,visib:e.dialogVisibleSetDataSet},on:{handleClose:function(t){e.dialogVisibleSetDataSet=!1},refreshList:e.refreshList}}),e._v(" "),a("DataView",{ref:"DataView",attrs:{visib:e.dialogCaseResult},on:{handleClose:function(t){e.dialogCaseResult=!1}}})]},proxy:!0}])})},[],!1,null,"00111258",null));U.options.__file="index.vue";t.default=U.exports},ctb9:function(e,t,a){},eLLl:function(e,t,a){},kTZg:function(e,t,a){},rVG9:function(e,t,a){"use strict";var n=a("ctb9");a.n(n).a},z5hZ:function(e,t,a){"use strict";var n=a("kTZg");a.n(n).a}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-943b"],{"9iGv":function(e,t,a){"use strict";var n=a("MiC1");a.n(n).a},CJ5O:function(e,t,a){"use strict";var n=a("cLjf"),i=a.n(n),r=a("hDQ3"),o=a.n(r),s=a("sm2R"),l={name:"GetDictionary",props:{dictKey:String,updataDict:String,value:String},data:function(){return{dictionary:"",dictionaryOptions:[]}},watch:{dictKey:{immediate:!0,handler:function(){this.getSystem()}},value:{handler:function(e){this.dictionary=e},deep:!0}},created:function(){this.getSystem()},mounted:function(){this.dictionary=this.value},methods:{getSystem:function(){var e=this;return o()(i.a.mark(function t(){var a,n,r;return i.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(s.a)(e.dictKey);case 2:if(a=t.sent,n=a.code,r=a.data,"200"==n){t.next=7;break}return t.abrupt("return");case 7:e.dictionaryOptions=r;case 8:case"end":return t.stop()}},t,e)}))()},selectChange:function(e){this.$emit("input",e)}}},c=(a("rVG9"),a("ZrdR")),u=Object(c.a)(l,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-select",{attrs:{placeholder:"请选择",clearable:"",size:"mini"},on:{change:e.selectChange},model:{value:e.dictionary,callback:function(t){e.dictionary=t},expression:"dictionary"}},e._l(e.dictionaryOptions,function(e){return a("el-option",{key:e.id,attrs:{label:e.text,value:e.id}})}),1)},[],!1,null,"23d4be90",null);u.options.__file="index.vue";t.a=u.exports},HDHf:function(e,t,a){"use strict";a.d(t,"c",function(){return i}),a.d(t,"a",function(){return r}),a.d(t,"d",function(){return o}),a.d(t,"f",function(){return s}),a.d(t,"i",function(){return l}),a.d(t,"h",function(){return c}),a.d(t,"g",function(){return u}),a.d(t,"b",function(){return d}),a.d(t,"e",function(){return m});var n=a("t3Un");function i(e){return Object(n.a)({url:"/dataSet/detailBysetId/"+e.id,method:"get"})}function r(e){return Object(n.a)({url:"/dataSet",method:"post",data:e})}function o(e){return Object(n.a)({url:"/dataSet",method:"put",data:e})}function s(e){return Object(n.a)({url:"/dataSource/queryAllDataSource",method:"get",data:e})}function l(e){return Object(n.a)({url:"/dataSetParam/verification",method:"post",data:e})}function c(e){return Object(n.a)({url:"/dataSet/testTransform",method:"post",data:e})}function u(e){return Object(n.a)({url:"/report/pageList",method:"get",params:e})}function d(e){return Object(n.a)({url:"/reportExcel",method:"post",data:e})}function m(e){return Object(n.a)({url:"/reportExcel",method:"put",data:e})}},MiC1:function(e,t,a){},NMof:function(e,t,a){"use strict";var n=a("eLLl");a.n(n).a},Yfch:function(e,t,a){"use strict";function n(e,t,a){""==t||void 0==t||null==t?a():/^[_a-zA-Z0-9]+$/.test(t)?a():a(new Error("英文字母、数字或下划线"))}a.d(t,"a",function(){return n})},Zzv2:function(e,t,a){"use strict";a.r(t);var n=a("t3Un");function i(e){return Object(n.a)({url:"dataSet/pageList",method:"GET",params:e})}function r(e){return Object(n.a)({url:"dataSet",method:"post",data:e})}function o(e){return Object(n.a)({url:"dataSet/delete/batch",method:"post",data:e})}function s(e){return Object(n.a)({url:"dataSet",method:"put",data:e})}function l(e){return Object(n.a)({url:"dataSet/"+e.id,method:"get",params:{accessKey:e.accessKey}})}var c=a("/umX"),u=a.n(c),d=a("6ZY3"),m=a.n(d),p=a("omC7"),f=a.n(p),g=a("cLjf"),b=a.n(g),h=a("hDQ3"),v=a.n(h),y=a("HDHf"),D=a("CJ5O"),S=a("iivf"),x=(a("9dfR"),a("opU+"),a("yY5G"),a("oMrk"),a("atyl")),C=a("SynA"),T=a("unDg"),w=a.n(T),k=a("nKCB"),R=a.n(k),_=a("LGhb"),E=a.n(_),F=["SELECT","INSERT","DELETE","UPDATE","CREATE TABLE","DROP TABLE","ALTER TABLE","CREATE VIEW","DROP VIEW","CREATE INDEX","DROP INDEX","CREATE PROCEDURE","DROP PROCEDURE","CREATE TRIGGER","DROP TRIGGER","CREATE SCHEMA","DROP SCHEMA","CREATE DOMAIN","ALTER DOMAIN","DROP DOMAIN","GRANT","DENY","REVOKE","COMMIT","ROLLBACK","SET TRANSACTION","DECLARE","EXPLAN","OPEN","FETCH","CLOSE","PREPARE","EXECUTE","DESCRIBE","FROM","ORDER BY"];var O=function(e){return{provideCompletionItems:function(t,a){return{suggestions:function(t,a){var n=t.getValue(),i=(a=a.replace(/[\*\[\]@\$\(\)]/g,"").replace(/(\s+|\.)/g," ")).split(/[\s;]/),r=i[i.length-1],o=r.length,s=new RegExp("([^\\w]|^)"+r+"\\w*","gim"),l=n.match(s),c=l?l.map(function(e){var t=new RegExp(r,"gim"),a=e.search(t);return e.substr(a)}):[];return E()(new R.a([].concat(F,w()(c),w()(e(t))))).sort().filter(function(e){var t=new RegExp(e.substr(0,o),"gim");return!(l&&1===l.length&&e===r||1===e.length)&&r.match(t)}).map(function(e){return{label:e,kind:F.indexOf(e)>-1?C.languages.CompletionItemKind.Keyword:C.languages.CompletionItemKind.Text,documentation:e,insertText:e}})}(t,t.getValueInRange({startLineNumber:a.lineNumber,startColumn:1,endLineNumber:a.lineNumber,endColumn:a.column}))}}}};var N=function(e){return{provideCompletionItems:function(t,a){return{suggestions:function(t,a){var n=t.getValue(),i=(a=a.replace(/[\*\[\]@\$\(\)]/g,"").replace(/(\s+|\.)/g," ")).split(/[\s;]/),r=i[i.length-1],o=r.length,s=new RegExp("([^\\w]|^)"+r+"\\w*","gim"),l=n.match(s);return E()(new R.a([].concat(w()(e(t))))).sort().filter(function(e){var t=new RegExp(e.substr(0,o),"gim");return!(l&&1===l.length&&e===r||1===e.length)&&r.match(t)}).map(function(e){return{label:e,kind:C.languages.CompletionItemKind.Text,documentation:e,insertText:e}})}(t,t.getValueInRange({startLineNumber:a.lineNumber,startColumn:1,endLineNumber:a.lineNumber,endColumn:a.column}))}}}};var L=function(e){e.languages.register({id:"log"}),e.languages.setMonarchTokensProvider("log",{tokenizer:{root:[[/(^[=a-zA-Z].*|\d\s.*)/,"log-normal"],[/\sERROR\s.*/,"log-error"],[/\sWARN\s.*/,"log-warn"],[/\sINFO\s.*/,"log-info"],[/^([0-9]{4}||[0-9]{2})-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}(.[0-9]{3})?/,"log-date"],[/^[0-9]{2}\/[0-9]{2}\/[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}(.[0-9]{3})?/,"log-date"],[/(^\*\*Waiting queue:.*)/,"log-info"],[/(^\*\*result tips:.*)/,"log-info"]]}}),e.editor.defineTheme("log",{base:"vs",inherit:!0,rules:[{token:"log-info",foreground:"4b71ca"},{token:"log-error",foreground:"ff0000",fontStyle:"bold"},{token:"log-warn",foreground:"FFA500"},{token:"log-date",foreground:"008800"},{token:"log-normal",foreground:"808080"}],colors:{"editor.lineHighlightBackground":"#ffffff","editorGutter.background":"#f7f7f7"}})},$={},j=function(e){var t=e.id.substring(6);return $[t]&&$[t].hints||[]};C.languages.registerCompletionItemProvider("sql",O(j)),C.languages.registerCompletionItemProvider("javascript",N(j)),L(C);var I={props:{options:{type:Object,default:function(){return{}}},value:{type:String,required:!1},language:{type:String},hints:{type:Array,default:function(){return[]}}},name:"MonacoEditor",data:function(){return{editorInstance:null,defaultOptions:{theme:"vs-dark",fontSize:14}}},watch:{value:function(){this.value!==this.editorInstance.getValue()&&this.editorInstance.setValue(this.value)}},mounted:function(){this.initEditor(),$[this.editorInstance._id]=this,window.addEventListener("resize",this.layout)},destroyed:function(){this.editorInstance.dispose(),$[this.editorInstance._id]=null,window.removeEventListener("resize",this.layout)},methods:{layout:function(){this.editorInstance.layout()},undo:function(){this.editorInstance.trigger("anyString","undo"),this.onValueChange()},redo:function(){this.editorInstance.trigger("anyString","redo"),this.onValueChange()},getOptions:function(){var e={value:this.value};return void 0!==this.language&&(e.language=this.language),m()({},this.defaultOptions,this.options,e)},onValueChange:function(){this.$emit("input",this.editorInstance.getValue()),this.$emit("change",this.editorInstance.getValue())},initEditor:function(){var e=this;this.MonacoEnvironment={getWorkerUrl:function(){return"./editor.worker.bundle.js"}},this.editorInstance=C.editor.create(this.$refs.editor,this.getOptions()),this.editorInstance.onContextMenu(function(t){e.$emit("contextmenu",t)}),this.editorInstance.onDidChangeModelContent(function(){e.onValueChange()}),this.editorInstance.addCommand(C.KeyMod.CtrlCmd|C.KeyCode.KEY_S,function(){e.$emit("save",e.editorInstance.getValue())})}}},V=(a("z5hZ"),a("ZrdR")),P=Object(V.a)(I,function(){var e=this.$createElement;return(this._self._c||e)("div",{ref:"editor",staticClass:"main"})},[],!1,null,"6f01286f",null);P.options.__file="MonacoEditor.vue";var A=P.exports,M=a("Yfch"),q={name:"Support",components:{Dictionary:D.a,codemirror:S.codemirror,vueJsonEditor:x.a,MonacoEditor:A},props:{visib:{required:!0,type:Boolean,default:!1},dataSet:{required:!1,type:Object,default:function(){return""}}},data:function(){return{data:[],listLoading:!0,permission:{add:["admin","alipayConfig:add"],edit:["admin","alipayConfig:edit"],del:["admin","datasource:del"]},code:"",optionsSql:{mode:"text/x-sql",tabSize:2,lineNumbers:!0,line:!0,styleActiveLine:!0,hintOptions:{completeSingle:!0}},optionsJavascript:{mode:"text/javascript",tabSize:2,lineNumbers:!0,line:!0,styleActiveLine:!0,hintOptions:{completeSingle:!0}},selectedList:[],clickType:"",formData:{},dialogFormVisible:!1,dialogFormVisibleTitle:"",dialogPermissionVisible:!1,dialogSwitchVisible:!1,permissionTextarea:"",isItemFilterType:"",itemFilterList:[{transformType:"js",transformScript:""}],transformScript:"function dataTransform(data){\n\t//自定义脚本内容\n\treturn data;\n}",itemFilterScriptId:"",title:"自定义高级规则",totalCount:0,totalPage:0,params:{pageNumber:1,pageSize:10,helpTitle:"",enabled:null,helpCategory:"",order:"DESC",sort:"update_time"},formRules:{setName:[{required:!0,message:"数据集名称必填",trigger:"blur"}],setCode:[{required:!0,message:"数据集编码必填",trigger:"blur"},{validator:M.a,trigger:"blur"}],sourceCode:[{required:!0,message:"数据源必选",trigger:"change"}]},sourceList:[],validationRules:"",tabsActiveName:"first",cols:[],tableData:[{paramName:"",paramDesc:"",paramType:"",sampleItem:"",mandatory:!0,requiredFlag:1,validationRules:'function verification(data){\n\t//自定义脚本内容\n\t//可返回true/false单纯校验键入的data正确性\n\t//可返回文本,实时替换,比如当前时间等\n\t//return "2099-01-01 00:00:00";\n\treturn true;\n}'}],isRowData:{},tableData2:[],dialogTitle:"js脚本填写",isShowPagination:!1,updataDisabled:!1,dialogCaseResult:!1,caseResultTitle:"",caseResultContent:null,testMassageCode:null,query:{setName:"",setCode:""},setType:"",httpForm:{apiUrl:"",method:"GET",header:'{"Content-Type":"application/json;charset=UTF-8"}',body:""},dictionaryOptions:[],list:null,basicDialog:!1,dialogForm:{sourceName:"",sourceCode:"",sourceType:"",sourceDesc:"",sourceConfig:""},dataLink:[],rules:{sourceType:[{required:!0,message:"数据集名称必选",trigger:"change"}],sourceCode:[{required:!0,message:"数据集编码必填",trigger:"blur"}],sourceName:[{required:!0,message:"数据源名称必选",trigger:"blur"}]},value:"",testReplyCode:null}},methods:{addOrEditDataSet:function(e,t){var a=this;return v()(b.a.mark(function n(){var i,r,o;return b.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a.setType=t,"http"==t&&e.dynSentence&&(a.httpForm=JSON.parse(e.dynSentence)),n.next=4,Object(y.f)();case 4:if(i=n.sent,r=i.code,o=i.data,"200"==r){n.next=9;break}return n.abrupt("return");case 9:a.sourceList=o,a.dialogFormVisible=!0,a.tabsActiveName="first",a.testMassageCode=null,e.id?(a.updataDisabled=!0,a.dialogFormVisibleTitle="编辑数据集",Object(y.c)(e).then(function(e){if(a.formData=e.data,null!=e.data.dataSetParamDtoList||e.data.dataSetParamDtoList.length>0){a.tableData=e.data.dataSetParamDtoList;var t=0;a.tableData.find(function(e,n){"pageNumber"!==e.paramName&&"pageSize"!==e.paramName||t++,1==e.requiredFlag?a.tableData[n].mandatory=!0:a.tableData[n].mandatory=!1}),a.isShowPagination=2===t}else a.tableData=[],a.isShowPagination=!1;null!==e.data.dataSetTransformDtoList?a.itemFilterList=e.data.dataSetTransformDtoList:a.itemFilterList=[],a.itemFilterList.forEach(function(e,t){if("dict"==e.transformType){var n=JSON.parse(e.transformScript),i=[];for(var r in n){var o=[];for(var s in n[r])o.push({name:s,value:n[r][s]});i.push({name:r,children:o})}a.tableData2=i}})})):(a.dialogFormVisibleTitle="新增数据集",a.updataDisabled=!1,a.formData={setName:"",setCode:"",setDesc:"",sourceCode:"",dynSentence:""},a.tableData=[],a.itemFilterList=[],a.isShowPagination=!1);case 14:case"end":return n.stop()}},n,a)}))()},closeDialog:function(){this.$emit("handleClose")},onJsonChange:function(e){},onJsonSave:function(e){},handleClose:function(e){this.dialogFormVisible=!1},isShowCaseResult:function(e){this.dialogCaseResult=!0,this.caseResultTitle=e.setName,this.caseResultContent=JSON.parse(e.caseResult)},handleClickTabs:function(e,t){var a=this;return v()(b.a.mark(function t(){var n,i,r,o;return b.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if("http"==a.setType&&(console.log("http数据集"+a.httpForm),a.formData.dynSentence=f()(a.httpForm)),"third"!=e.paneName){t.next=12;break}return n={sourceCode:a.formData.sourceCode,dynSentence:a.formData.dynSentence,dataSetParamDtoList:a.tableData,dataSetTransformDtoList:a.itemFilterList,setType:a.setType},t.next=5,Object(y.h)(n);case 5:if(i=t.sent,r=i.code,o=i.data,"200"==r){t.next=10;break}return t.abrupt("return");case 10:a.cols=o.data,a.testMassageCode=r;case 12:case"end":return t.stop()}},t,a)}))()},Mandatory:function(e){this.tableData[e].mandatory?this.tableData[e].requiredFlag=1:this.tableData[e].requiredFlag=0},changePagination:function(){var e=this;this.isShowPagination?this.tableData.push({paramName:"pageNumber",paramDesc:"当前页",paramType:"int",sampleItem:"1",mandatory:!0,requiredFlag:1,validationRules:"function verification(data){\n\t//自定义脚本内容\n\treturn true;\n}"},{paramName:"pageSize",paramDesc:"条数",paramType:"int",sampleItem:"10",mandatory:!0,requiredFlag:1,validationRules:"function verification(data){\n\t//自定义脚本内容\n\treturn true;\n}"}):this.tableData.forEach(function(t,a){"pageSize"!=t.paramName&&"pageNumber"!=t.paramName||e.tableData.splice(a,2)})},filterScriptBtn:function(e){var t=this;return v()(b.a.mark(function a(){var n;return b.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:console.log(e),t.isItemFilterType=e,t.dialogSwitchVisible=!0,"js"==e.transformType?(t.itemFilterScriptId=e.itemFilterSort,n="function dataTransform(data){\n\t//自定义脚本内容\n\treturn data;\n}",t.transformScript=e.transformScript?e.transformScript:n):e.transformType;case 4:case"end":return a.stop()}},a,t)}))()},filterScriptConfirm:function(){var e=this,t=this.toObject(this.tableData2);this.itemFilterList.forEach(function(a,n){"dict"==a.transformType?a.transformScript=f()(t):a.transformScript=e.transformScript}),this.dialogSwitchVisible=!1},addFilter:function(){var e={};this.tableData2=[],e=0==this.itemFilterList.length?{transformType:"",transformScript:"",itemFilterSort:1}:{transformType:"",transformScript:"",itemFilterSort:this.itemFilterList.length+1},this.itemFilterList.push(e)},reduceFilter:function(e){if(this.itemFilterList.length>0){var t=this.itemFilterList.indexOf(e);t>-1&&this.itemFilterList.splice(t,1)}},permissionClick:function(e,t){if(this.title="自定义高级规则",""!=this.isRowData.sampleItem){this.isRowData=e;this.validationRules=e.validationRules?e.validationRules:'function verification(data){\n\t//自定义脚本内容\n\t//可返回true/false单纯校验键入的data正确性\n\t//可返回文本,实时替换,比如当前时间等\n\t//return "2099-01-01 00:00:00";\n\treturn true;\n}'}this.dialogPermissionVisible=!0},dialogValidationRules:function(){this.isRowData.validationRules=this.validationRules,this.dialogPermissionVisible=!1},addAllDict:function(){this.tableData2.push({name:"",children:[{name:"",value:""}]})},addDict:function(e,t){t.push({name:"",value:""})},delAllDict:function(e,t){t.splice(e,1)},delDict:function(e,t){0!=e?t.splice(e,1):this.$message.error("至少保留一条")},changeSource:function(){},testResultset:function(){var e=this;return v()(b.a.mark(function t(){var a,n,i,r;return b.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.isRowData.validationRules=e.validationRules,console.log(e.isRowData,"12345678"),t.next=4,Object(y.i)(e.isRowData);case 4:a=t.sent,n=a.code,i=a.message,r=a.data,"200"==n?r?e.$message.success("返回结果:"+r):e.$message.warning("当前示例值校验不通过"):e.$message.error(i);case 9:case"end":return t.stop()}},t,e)}))()},cutOutRow:function(e,t){t.splice(e,1)},addRow:function(e,t){this.tableData.push({paramName:"",paramDesc:"",paramType:"",sampleItem:"",mandatory:!0,requiredFlag:1,validationRules:'function verification(data){\n\t//自定义脚本内容\n\t//可返回true/false单纯校验键入的data正确性\n\t//可返回文本,实时替换,比如当前时间等\n\t//return "2099-01-01 00:00:00";\n\treturn true;\n}'})},submit:function(e){var t=this;return v()(b.a.mark(function a(){return b.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:"http"==t.setType&&(console.log("http数据集"+t.httpForm),t.formData.dynSentence=f()(t.httpForm)),t.formData.setType=t.setType,t.$refs[e].validate(function(){var e=v()(b.a.mark(function e(a,n){var i,r;return b.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!a){e.next=30;break}if(200!=t.testMassageCode){e.next=26;break}if(t.formData.dataSetParamDtoList=t.tableData,t.formData.dataSetTransformDtoList=t.itemFilterList,t.formData.caseResult=f()(t.cols),"新增数据集"!==t.dialogFormVisibleTitle){e.next=16;break}return e.next=8,Object(y.a)(t.formData);case 8:if(i=e.sent,"200"==i.code){e.next=12;break}return e.abrupt("return");case 12:t.$emit("refreshList"),t.closeDialog(),e.next=24;break;case 16:return e.next=18,Object(y.d)(t.formData);case 18:if(r=e.sent,"200"==r.code){e.next=22;break}return e.abrupt("return");case 22:t.$emit("refreshList"),t.closeDialog();case 24:e.next=28;break;case 26:return t.$message.error("请先测试预览,操作成功后便可保存!"),e.abrupt("return");case 28:e.next=31;break;case 30:return e.abrupt("return");case 31:case"end":return e.stop()}},e,t)}));return function(t,a){return e.apply(this,arguments)}}());case 3:case"end":return a.stop()}},a,t)}))()},toObject:function(e){var t={},a={};e.forEach(function(e){e.name&&(t[e.name]=e.children)});var n=function(e){var n={};t[e].map(function(e){m()(n,u()({},e.name,e.value))}),a[e]=n};for(var i in t)n(i);return a}}},z=(a("9iGv"),Object(V.a)(q,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("el-dialog",{attrs:{title:e.dialogFormVisibleTitle,visible:e.visib,"close-on-click-modal":!1,"before-close":e.closeDialog,width:"65%"},on:{"update:visible":function(t){e.visib=t}}},[a("el-form",{ref:"form",attrs:{model:e.formData,rules:e.formRules,size:"small","label-width":"130px"}},[a("el-row",{attrs:{gutter:10}},["sql"==this.setType?a("el-col",{attrs:{xs:24,sm:20,md:8,lg:8,xl:8}},[a("el-form-item",{attrs:{label:"数据源",prop:"sourceCode"}},[a("el-select",{staticClass:"organisation",attrs:{size:"mini"},on:{change:e.changeSource},model:{value:e.formData.sourceCode,callback:function(t){e.$set(e.formData,"sourceCode","string"==typeof t?t.trim():t)},expression:"formData.sourceCode"}},e._l(e.sourceList,function(e){return a("el-option",{key:e.sourceName,attrs:{label:e.sourceName,value:e.sourceCode}})}),1)],1)],1):e._e(),e._v(" "),a("el-col",{attrs:{xs:24,sm:20,md:7,lg:7,xl:7}},[a("el-form-item",{attrs:{label:"数据集编码",prop:"setCode"}},[a("el-input",{attrs:{disabled:e.updataDisabled,placeholder:"唯一标识",size:"mini"},model:{value:e.formData.setCode,callback:function(t){e.$set(e.formData,"setCode","string"==typeof t?t.trim():t)},expression:"formData.setCode"}})],1)],1),e._v(" "),a("el-col",{attrs:{xs:24,sm:20,md:7,lg:7,xl:7}},[a("el-form-item",{attrs:{label:"数据集名称",prop:"setName"}},[a("el-input",{attrs:{size:"mini"},model:{value:e.formData.setName,callback:function(t){e.$set(e.formData,"setName","string"==typeof t?t.trim():t)},expression:"formData.setName"}})],1)],1),e._v(" "),a("el-col",{attrs:{xs:24,sm:20,md:22,lg:22,xl:22}},[a("el-form-item",{attrs:{label:"数据集描述"}},[a("el-input",{attrs:{size:"mini"},model:{value:e.formData.setDesc,callback:function(t){e.$set(e.formData,"setDesc","string"==typeof t?t.trim():t)},expression:"formData.setDesc"}})],1)],1)],1),e._v(" "),"sql"==this.setType?a("el-row",{attrs:{gutter:10}},[a("el-col",{staticClass:"code-mirror-form",attrs:{xs:24,sm:20,md:22,lg:22,xl:22}},[a("el-form-item",{attrs:{label:"查询SQL"}},[a("div",{staticClass:"codemirror"},[a("monaco-editor",{staticStyle:{height:"500px"},attrs:{language:"sql"},model:{value:e.formData.dynSentence,callback:function(t){e.$set(e.formData,"dynSentence","string"==typeof t?t.trim():t)},expression:"formData.dynSentence"}})],1)])],1)],1):e._e(),e._v(" "),"http"==this.setType?a("el-row",[a("el-form-item",{attrs:{label:"请求路径"}},[a("el-input",{staticClass:"input-with-select",attrs:{placeholder:"请输入请求路径..."},model:{value:e.httpForm.apiUrl,callback:function(t){e.$set(e.httpForm,"apiUrl",t)},expression:"httpForm.apiUrl"}},[a("el-select",{attrs:{slot:"prepend",placeholder:"请选择"},slot:"prepend",model:{value:e.httpForm.method,callback:function(t){e.$set(e.httpForm,"method",t)},expression:"httpForm.method"}},[a("el-option",{attrs:{label:"GET",value:"GET"}}),e._v(" "),a("el-option",{attrs:{label:"POST",value:"POST"}}),e._v(" "),a("el-option",{attrs:{label:"PUT",value:"PUT"}}),e._v(" "),a("el-option",{attrs:{label:"DELETE",value:"DELETE"}})],1)],1)],1),e._v(" "),a("el-form-item",{attrs:{label:"请求头"}},[a("el-input",{attrs:{size:"mini",placeholder:"请输入请求头..."},model:{value:e.httpForm.header,callback:function(t){e.$set(e.httpForm,"header","string"==typeof t?t.trim():t)},expression:"httpForm.header"}})],1),e._v(" "),a("el-form-item",{attrs:{label:"请求体"}},[a("el-input",{attrs:{size:"mini",placeholder:"请输入请求体..."},model:{value:e.httpForm.body,callback:function(t){e.$set(e.httpForm,"body","string"==typeof t?t.trim():t)},expression:"httpForm.body"}})],1)],1):e._e(),e._v(" "),a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{xs:24,sm:20,md:22,lg:22,xl:22}},[a("el-form",{staticClass:"demo-ruleForm",attrs:{"label-width":"100px"}},[a("el-tabs",{attrs:{type:"card"},on:{"tab-click":e.handleClickTabs},model:{value:e.tabsActiveName,callback:function(t){e.tabsActiveName="string"==typeof t?t.trim():t},expression:"tabsActiveName"}},[a("el-tab-pane",{attrs:{label:"查询参数",name:"first"}},[0==e.tableData.length?a("el-button",{attrs:{type:"text",size:"small"},on:{click:function(t){return e.addRow()}}},[e._v("添加\n ")]):e._e(),e._v(" "),a("el-table",{staticStyle:{width:"100%"},attrs:{data:e.tableData,border:""}},[a("el-table-column",{attrs:{align:"center",label:"序号",type:"index","min-width":"80"}}),e._v(" "),a("el-table-column",{attrs:{label:"参数名",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-input",{attrs:{disabled:"pageSize"==e.tableData[t.$index].paramName||"pageNumber"==e.tableData[t.$index].paramName},model:{value:e.tableData[t.$index].paramName,callback:function(a){e.$set(e.tableData[t.$index],"paramName","string"==typeof a?a.trim():a)},expression:"tableData[scope.$index].paramName"}})]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"描述",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-input",{model:{value:e.tableData[t.$index].paramDesc,callback:function(a){e.$set(e.tableData[t.$index],"paramDesc","string"==typeof a?a.trim():a)},expression:"tableData[scope.$index].paramDesc"}})]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"数据类型",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-input",{model:{value:e.tableData[t.$index].paramType,callback:function(a){e.$set(e.tableData[t.$index],"paramType","string"==typeof a?a.trim():a)},expression:"tableData[scope.$index].paramType"}})]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"示例值",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-input",{model:{value:e.tableData[t.$index].sampleItem,callback:function(a){e.$set(e.tableData[t.$index],"sampleItem","string"==typeof a?a.trim():a)},expression:"tableData[scope.$index].sampleItem"}})]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"校验",width:"220",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-checkbox",{on:{change:function(a){return e.Mandatory(t.$index)}},model:{value:e.tableData[t.$index].mandatory,callback:function(a){e.$set(e.tableData[t.$index],"mandatory",a)},expression:"tableData[scope.$index].mandatory"}},[e._v("必选\n ")]),e._v(" "),a("el-button",{attrs:{type:"primary",icon:"el-icon-plus"},on:{click:function(a){return e.permissionClick(t.row,t.$index)}}},[e._v("\n 高级规则\n ")])]}}])}),e._v(" "),a("el-table-column",{attrs:{label:"操作",width:"200",align:"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-button",{attrs:{type:"text",size:"small"},nativeOn:{click:function(a){return a.preventDefault(),e.cutOutRow(t.$index,e.tableData)}}},[e._v("删除\n ")]),e._v(" "),a("el-button",{attrs:{type:"text",size:"small"},on:{click:function(a){return e.addRow(t.row)}}},[e._v("追加\n ")])]}}])})],1)],1),e._v(" "),a("el-tab-pane",{attrs:{label:"数据转换",name:"second"}},[[a("div",{staticClass:"filterWrapper"},[a("div",{staticClass:"filterTable"},[e._l(e.itemFilterList,function(t,n){return a("div",{key:n,staticClass:"filterBox"},[a("div",{staticClass:"box"},[a("Dictionary",{attrs:{"updata-dict":t.transformType,"dict-key":"TRANSFORM_TYPE"},model:{value:t.transformType,callback:function(a){e.$set(t,"transformType",a)},expression:"item.transformType"}}),e._v(" "),a("el-button",{staticClass:"reduceFilter",attrs:{type:"text",icon:"el-icon-close"},on:{click:function(a){return e.reduceFilter(t)}}}),e._v(" "),"js"==t.transformType||"dict"==t.transformType?a("el-button",{staticClass:"editor",attrs:{type:"text",icon:"el-icon-edit"},on:{click:function(a){return e.filterScriptBtn(t)}}}):e._e()],1),e._v(" "),a("el-button",{staticClass:"font-icon-right",attrs:{type:"text",icon:"el-icon-right"}})],1)}),e._v(" "),a("el-dialog",{attrs:{title:e.dialogTitle,visible:e.dialogSwitchVisible,"close-on-click-modal":!1,width:"60%","min-height":"400px","append-to-body":""},on:{"update:visible":function(t){e.dialogSwitchVisible=t}}},["js"==e.isItemFilterType.transformType?a("div",[a("div",{staticClass:"codemirror"},[a("monaco-editor",{staticStyle:{height:"500px"},attrs:{language:"javascript"},model:{value:e.transformScript,callback:function(t){e.transformScript="string"==typeof t?t.trim():t},expression:"transformScript"}})],1)]):a("div",[e._l(e.tableData2,function(t,n){return a("div",{key:n},[a("label",[e._v("字典项名称:")]),e._v(" "),a("el-input",{staticStyle:{width:"25%"},attrs:{size:"small"},model:{value:t.name,callback:function(a){e.$set(t,"name","string"==typeof a?a.trim():a)},expression:"item.name"}}),e._v(" "),a("el-button",{attrs:{type:"danger",size:"small",plain:"",icon:"el-icon-delete"},on:{click:function(t){return e.delAllDict(n,e.tableData2)}}}),e._v(" "),a("el-table",{staticStyle:{width:"80%"},attrs:{data:t.children,border:""}},[a("el-table-column",{attrs:{label:"key",width:"180"},scopedSlots:e._u([{key:"default",fn:function(n){return[a("el-input",{model:{value:t.children[n.$index].name,callback:function(a){e.$set(t.children[n.$index],"name","string"==typeof a?a.trim():a)},expression:"\n item.children[scope.$index].name\n "}})]}}],null,!0)}),e._v(" "),a("el-table-column",{attrs:{label:"值"},scopedSlots:e._u([{key:"default",fn:function(n){return[a("el-input",{model:{value:t.children[n.$index].value,callback:function(a){e.$set(t.children[n.$index],"value","string"==typeof a?a.trim():a)},expression:"\n item.children[scope.$index].value\n "}})]}}],null,!0)}),e._v(" "),a("el-table-column",{attrs:{label:"操作",width:"150px",align:"center"},scopedSlots:e._u([{key:"default",fn:function(n){return[a("el-button",{attrs:{type:"success",circle:"",plain:"",icon:"el-icon-plus"},on:{click:function(a){return e.addDict(n.$index,t.children)}}}),e._v(" "),a("el-button",{attrs:{type:"danger",circle:"",plain:"",icon:"el-icon-delete"},on:{click:function(a){return e.delDict(n.$index,t.children)}}})]}}],null,!0)})],1)],1)}),e._v(" "),a("el-button",{attrs:{type:"success"},on:{click:function(t){return e.addAllDict()}}},[e._v("新增\n ")])],2),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:function(t){e.dialogSwitchVisible=!1}}},[e._v("取消")]),e._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:e.filterScriptConfirm}},[e._v("保存")])],1)]),e._v(" "),a("div",{staticClass:"addFilter",attrs:{disabled:"true"},on:{click:e.addFilter}},[a("i",{staticClass:"el-icon-plus"}),a("span",[e._v("新增")])])],2)])]],2),e._v(" "),a("el-tab-pane",{attrs:{label:"测试预览",name:"third"}},[a("div",{staticStyle:{"max-height":"400px",overflow:"auto"}},[a("vue-json-editor",{attrs:{"show-btns":!1,mode:"code",lang:"zh"},on:{"json-change":e.onJsonChange,"json-save":e.onJsonSave},model:{value:e.cols,callback:function(t){e.cols=t},expression:"cols"}})],1)])],1)],1)],1)],1)],1),e._v(" "),a("div",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:e.closeDialog}},[e._v("取消")]),e._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:function(t){return e.submit("form")}}},[e._v("保存")])],1)],1),e._v(" "),a("el-dialog",{attrs:{title:e.title,visible:e.dialogPermissionVisible,"close-on-click-modal":!1,width:"60%"},on:{"update:visible":function(t){e.dialogPermissionVisible=t}}},[a("div",{staticClass:"codemirror"},[a("monaco-editor",{staticStyle:{height:"500px"},attrs:{language:"javascript"},model:{value:e.validationRules,callback:function(t){e.validationRules="string"==typeof t?t.trim():t},expression:"validationRules"}})],1),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{attrs:{type:"warning"},on:{click:e.testResultset}},[e._v("测试")]),e._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:e.dialogValidationRules}},[e._v("保存")]),e._v(" "),a("el-button",{on:{click:function(t){e.dialogPermissionVisible=!1}}},[e._v("关闭")])],1)])],1)},[],!1,null,"47b2c5a4",null));z.options.__file="EditDataSet.vue";var B=z.exports,J={name:"Support",components:{vueJsonEditor:x.a},props:{visib:{required:!0,type:Boolean,default:!1}},data:function(){return{dialogCaseResult:!1,caseResultTitle:"",caseResultContent:null}},methods:{dataViewPreview:function(e,t){this.caseResultTitle=e,this.caseResultContent=t},closeDialog:function(){this.$emit("handleClose")},onJsonChange:function(e){},onJsonSave:function(e){}}},G=Object(V.a)(J,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-dialog",{attrs:{title:e.caseResultTitle,"close-on-click-modal":!1,visible:e.visib,width:"70%","before-close":e.closeDialog},on:{"update:visible":function(t){e.visib=t}}},[a("vue-json-editor",{staticClass:"my-editor",attrs:{"show-btns":!1,mode:"code",lang:"zh"},on:{"json-change":e.onJsonChange,"json-save":e.onJsonSave},model:{value:e.caseResultContent,callback:function(t){e.caseResultContent=t},expression:"caseResultContent"}}),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{attrs:{type:"primary"},on:{click:e.closeDialog}},[e._v("关闭")])],1)],1)},[],!1,null,null,null);G.options.__file="DataView.vue";var K={name:"ReportDataSet",components:{EditDataSet:B,DataView:G.exports},data:function(){var e=this;return{dialogVisibleSetDataSet:!1,dataSet:{},dialogCaseResult:!1,crudOption:{title:"数据集",labelWidth:"120px",queryFormFields:[{inputType:"input",label:"数据集编码",field:"setCode"},{inputType:"input",label:"数据集名称",field:"setName"},{inputType:"anji-select",anjiSelectOption:{url:"/dataSource/queryAllDataSource",label:"sourceName",option:"sourceCode",mergeLabel:!0},label:"数据源",field:"sourceCode"},{inputType:"anji-select",anjiSelectOption:{dictCode:"SET_TYPE"},label:"数据集类型",field:"setType"}],buttons:{customButton:{operationWidth:180},query:{api:i,permission:"resultsetManage:query",sort:"update_time",order:"DESC"},queryByPrimarykey:{api:l,permission:"resultsetManage:detail"},add:{api:r,permission:"resultsetManage:insert",isShow:!1},delete:{api:o,permission:"resultsetManage:delete"},edit:{api:s,permission:"resultsetManage:update",isShow:!1}},columns:[{label:"",field:"id",primaryKey:!0,tableHide:!0,editHide:!0},{label:"数据集编码",placeholder:"",field:"setCode",editField:"setCode",inputType:"input",rules:[{min:1,max:50,message:"不超过50个字符",trigger:"blur"}],disabled:!1},{label:"数据集名称",placeholder:"",field:"setName",editField:"setName",inputType:"input",rules:[{min:1,max:100,message:"不超过100个字符",trigger:"blur"}],disabled:!1},{label:"描述",placeholder:"",field:"setDesc",editField:"setDesc",inputType:"input",rules:[{min:1,max:255,message:"不超过255个字符",trigger:"blur"}],disabled:!1},{label:"数据源编码",placeholder:"",field:"sourceCode",editField:"sourceCode",inputType:"input",rules:[{min:1,max:50,message:"不超过50个字符",trigger:"blur"}],disabled:!1},{label:"数据集类型",placeholder:"",field:"setType",editField:"setType",inputType:"input",rules:[{min:1,max:50,message:"不超过50个字符",trigger:"blur"}],disabled:!1},{label:"动态查询sql或者接口中的请求体",placeholder:"",field:"dynSentence",editField:"dynSentence",tableHide:!0,inputType:"input",rules:[{min:1,max:2048,message:"不超过2048个字符",trigger:"blur"}],disabled:!1},{label:"结果案例",placeholder:"",field:"caseResult",tableHide:!0,editField:"caseResult",inputType:"input",rules:[{min:1,max:65535,message:"不超过65535个字符",trigger:"blur"}],disabled:!1},{label:"状态",placeholder:"",field:"enableFlag",fieldTableRowRenderer:function(t){return e.getDictLabelByCode("ENABLE_FLAG",t.enableFlag)},colorStyle:{0:"table-danger",1:"table-success"},editField:"enableFlag",inputType:"input",rules:[],disabled:!1},{label:"删除标记",placeholder:"",field:"deleteFlag",editField:"deleteFlag",tableHide:!0,inputType:"input",rules:[],disabled:!1}]}}},methods:{operateDataset:function(e,t){this.dialogVisibleSetDataSet=!0,t&&t.msg?(this.dataSet=t.msg,e=t.msg.setType):this.dataSet={},this.$refs.EditDataSet.addOrEditDataSet(this.dataSet,e)},refreshList:function(){this.$refs.listPage.handleQueryForm("query")},dataView:function(e){this.dialogCaseResult=!0,this.$refs.DataView.dataViewPreview(e.msg.setName,JSON.parse(e.msg.caseResult))}}},U=(a("NMof"),Object(V.a)(K,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("anji-crud",{ref:"listPage",attrs:{option:e.crudOption},scopedSlots:e._u([{key:"buttonLeftOnTable",fn:function(){return[a("el-dropdown",{attrs:{placement:"bottom"},on:{command:e.operateDataset}},[a("el-button",{attrs:{type:"primary",icon:"el-icon-plus"}},[e._v("\n 新增\n "),a("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),e._v(" "),a("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[a("el-dropdown-item",{attrs:{command:"sql"}},[e._v("SQL")]),e._v(" "),a("el-dropdown-item",{attrs:{command:"http"}},[e._v("HTTP")])],1)],1)]},proxy:!0},{key:"rowButton",fn:function(t){return[a("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"resultsetManage:update",expression:"'resultsetManage:update'"}],attrs:{type:"text"},on:{click:function(a){return e.operateDataset("edit",t)}}},[e._v("编辑\n ")])]}},{key:"rowButtonInMore",fn:function(t){return[a("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"resultsetManage:query",expression:"'resultsetManage:query'"}],attrs:{type:"text"},on:{click:function(a){return e.dataView(t)}}},[e._v("数据预览\n ")])]}},{key:"pageSection",fn:function(){return[a("EditDataSet",{ref:"EditDataSet",attrs:{dataSet:e.dataSet,visib:e.dialogVisibleSetDataSet},on:{handleClose:function(t){e.dialogVisibleSetDataSet=!1},refreshList:e.refreshList}}),e._v(" "),a("DataView",{ref:"DataView",attrs:{visib:e.dialogCaseResult},on:{handleClose:function(t){e.dialogCaseResult=!1}}})]},proxy:!0}])})},[],!1,null,"00111258",null));U.options.__file="index.vue";t.default=U.exports},ctb9:function(e,t,a){},eLLl:function(e,t,a){},kTZg:function(e,t,a){},rVG9:function(e,t,a){"use strict";var n=a("ctb9");a.n(n).a},z5hZ:function(e,t,a){"use strict";var n=a("kTZg");a.n(n).a}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-a4f3.c56a57f9.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-a4f3.c56a57f9.js index 6a5806009..7a1d2c9e4 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-a4f3.c56a57f9.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-a4f3.c56a57f9.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-a4f3"],{er4n:function(t,n,e){"use strict";e.r(n);var s={name:"index1",data:function(){return{}},components:{},watch:{},mounted:function(){},methods:{}},i=(e("zLKY"),e("ZrdR")),a=Object(i.a)(s,function(){var t=this.$createElement,n=this._self._c||t;return n("div",{staticClass:"index-container"},[n("el-row",{attrs:{align:"middle",justify:"center"}},[n("el-col",{staticClass:"position",attrs:{span:24,offset:0}},[n("div",{staticClass:"center"})])],1)],1)},[],!1,null,null,null);a.options.__file="index.vue";n.default=a.exports},ewD0:function(t,n,e){},zLKY:function(t,n,e){"use strict";var s=e("ewD0");e.n(s).a}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-a4f3"],{er4n:function(t,n,e){"use strict";e.r(n);var s={name:"index1",data:function(){return{}},components:{},watch:{},mounted:function(){},methods:{}},i=(e("zLKY"),e("ZrdR")),a=Object(i.a)(s,function(){var t=this.$createElement,n=this._self._c||t;return n("div",{staticClass:"index-container"},[n("el-row",{attrs:{align:"middle",justify:"center"}},[n("el-col",{staticClass:"position",attrs:{span:24,offset:0}},[n("div",{staticClass:"center"})])],1)],1)},[],!1,null,null,null);a.options.__file="index.vue";n.default=a.exports},ewD0:function(t,n,e){},zLKY:function(t,n,e){"use strict";var s=e("ewD0");e.n(s).a}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-c4fe.f9891c8c.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-c4fe.f9891c8c.js index f9282aa32..5a33d0fdb 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-c4fe.f9891c8c.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-c4fe.f9891c8c.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-c4fe"],{FE7L:function(t,e,a){},FZcH:function(t,e,a){},Fzjc:function(t,e,a){"use strict";a.d(e,"d",function(){return o}),a.d(e,"c",function(){return n}),a.d(e,"e",function(){return i}),a.d(e,"a",function(){return l}),a.d(e,"b",function(){return c});var r=a("t3Un");function o(t){return Object(r.a)({url:"reportExcel/preview",method:"post",data:t})}function n(t){return Object(r.a)({url:"reportExcel/exportExcel",method:"post",data:t})}function i(){return Object(r.a)({url:"dataSet/queryAllDataSet",method:"get"})}function l(t){return Object(r.a)({url:"dataSet/detailBysetId/"+t,method:"get"})}function c(t){return Object(r.a)({url:"reportExcel/detailByReportCode/"+t,method:"get"})}},HDHf:function(t,e,a){"use strict";a.d(e,"c",function(){return o}),a.d(e,"a",function(){return n}),a.d(e,"d",function(){return i}),a.d(e,"f",function(){return l}),a.d(e,"i",function(){return c}),a.d(e,"h",function(){return s}),a.d(e,"g",function(){return u}),a.d(e,"b",function(){return d}),a.d(e,"e",function(){return h});var r=a("t3Un");function o(t){return Object(r.a)({url:"/dataSet/detailBysetId/"+t.id,method:"get"})}function n(t){return Object(r.a)({url:"/dataSet",method:"post",data:t})}function i(t){return Object(r.a)({url:"/dataSet",method:"put",data:t})}function l(t){return Object(r.a)({url:"/dataSource/queryAllDataSource",method:"get",data:t})}function c(t){return Object(r.a)({url:"/dataSetParam/verification",method:"post",data:t})}function s(t){return Object(r.a)({url:"/dataSet/testTransform",method:"post",data:t})}function u(t){return Object(r.a)({url:"/report/pageList",method:"get",params:t})}function d(t){return Object(r.a)({url:"/reportExcel",method:"post",data:t})}function h(t){return Object(r.a)({url:"/reportExcel",method:"put",data:t})}},W7E0:function(t,e,a){"use strict";var r=a("ttk2");a.n(r).a},Xvat:function(t,e,a){"use strict";a.r(e);var r=a("omC7"),o=a.n(r),n=a("cLjf"),i=a.n(n),l=a("hDQ3"),c=a.n(l),s=a("MzXy"),u=a.n(s),d=a("Fzjc"),h=a("HDHf"),f={name:"ColorPicker",model:{prop:"value",event:"input"},props:{value:{type:[String],default:""}},data:function(){return{predefineColors:["#ff4500","#ff8c00","#ffd700","#90ee90","#00ced1","#1e90ff","#c71585"],colorValue:""}},watch:{value:function(t){this.colorValue=t||""}},mounted:function(){this.colorValue=this.value},methods:{changeColor:function(t){this.colorValue=t||"",this.$emit("input",this.colorValue),this.$emit("change",this.colorValue)}}},p=(a("W7E0"),a("ZrdR")),m=Object(p.a)(f,function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("el-input",{attrs:{clearable:"",placeholder:"请输入颜色",size:"mini"},on:{change:t.changeColor},model:{value:t.colorValue,callback:function(e){t.colorValue=e},expression:"colorValue"}},[a("template",{slot:"append"},[a("el-color-picker",{attrs:{predefine:t.predefineColors,"show-alpha":"",size:"mini"},on:{change:t.changeColor},model:{value:t.colorValue,callback:function(e){t.colorValue=e},expression:"colorValue"}})],1)],2)},[],!1,null,"57fe9f5c",null);m.options.__file="colorPicker.vue";var v=m.exports,g={name:"Excels",components:{draggable:u.a,ColorPicker:v},data:function(){return{activeName:"first",activeNames:["1"],reportId:null,accessKey:null,reportCode:"",options:[],sheet:{},sheetData:[],dataSetData:[],reportExcelDto:{id:null,jsonStr:"",setCodes:"",setParam:"",reportCode:""},multipleSelection:[],rightForm:{coordinate:"",value:"",r:"",c:"",auto:!1,autoIsShow:!1},qrCodeForm:{type:"QRCode",content:"https://www.baidu.com",width:125,height:125,colorDark:"#333333",colorLight:"#ffffff",ri:0,ci:0,currentSrc:""},barCodeForm:{type:"BarCode",format:"CODE39",displayValue:!0,content:"99999999999",lineColor:"#000",background:"#fff",width:100,height:40,ri:0,ci:0,currentSrc:""},formPrintSetting:{size:"",pixel1:"",pixel2:""},pixelList:[{paper:"A4",width:210,height:297},{paper:"A3",width:297,height:420},{paper:"Letter",width:216,height:279},{paper:"Legal",width:216,height:355},{paper:"Executive",width:184,height:266}],dataSet:[],outerVisible:!1,printVisible:!1,pop:!1,setCode:null,draggableFieldLabel:null,dialogVisible:!1,dialogBarCode:!1,paperList:[],paper:"",width:"",height:"",definition:"",isBackend:"",dpi:"",pxWidth:"",pxHeight:"",show:!1,config:"",settings:{},qrCodeList:[],moveDataelse:{x:null,y:null}}},mounted:function(){},created:function(){this.reportCode=this.$route.query.reportCode,this.accessKey=this.$route.query.accessKey,this.loadDataSet(),this.design()},methods:{handleClose:function(){this.printVisible=!1},handleChange:function(t){},handleClick:function(t,e){},design:function(){var t=this;return c()(i.a.mark(function e(){var a,r;return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(d.b)(t.reportCode);case 2:a=e.sent,a.code,null!=(r=a.data)&&(t.reportId=r.id),t.sheetData=null==r?[{}]:JSON.parse(r.jsonStr),console.log(t.sheetData),t.createSheet(),null!=r&&null!=r.setCodes&&""!==r.setCodes&&r.setCodes.split("|").forEach(function(e){t.dataSetData.forEach(function(a){e===a.setCode&&t.detail(a.id)})});case 10:case"end":return e.stop()}},e,t)}))()},createSheet:function(){var t=this,e={container:"luckysheet",title:"",lang:"zh",plugins:["chart"],hook:{cellDragStop:function(e,a,r,o,n){luckysheet.setCellValue(a.r,a.c,t.draggableFieldLabel)},cellMousedown:function(e,a,r,o){t.rightForm.coordinate=a.r+","+a.c,t.rightForm.r=a.r,t.rightForm.c=a.c,t.rightForm.value=null==e?"":e.v,t.rightForm.autoIsShow=!0,null==e||void 0!=e.v&&-1!==e.v.indexOf("#{")?t.rightForm.auto=!1:(t.rightForm.autoIsShow=!0,null!=e.auto&&"1"==e.auto?t.rightForm.auto=!0:t.rightForm.auto=!1)}},data:[{name:"report",color:"",index:0,status:1,order:0,hide:0,row:36,column:18,defaultRowHeight:19,defaultColWidth:73,celldata:[],config:{merge:{},rowlen:{},columnlen:{},rowhidden:{},colhidden:{},borderInfo:{},authority:{}},scrollLeft:0,scrollTop:315,luckysheet_select_save:[],calcChain:[],isPivotTable:!1,pivotTable:{},filter_select:{},filter:null,luckysheet_alternateformat_save:[],luckysheet_alternateformat_save_modelCustom:[],luckysheet_conditionformat_save:{},frozen:{},chart:[],zoomRatio:1,image:[],showGridLines:1,dataVerification:{}}]};e.data=this.sheetData,$(function(){luckysheet.create(e)})},onStart:function(t,e){this.setCode=t;var a=e.item.innerText;this.draggableFieldLabel="#{"+this.setCode+"."+a+"}",console.log("evt",e),console.log("draggableFieldLabel",this.draggableFieldLabel)},loadDataSet:function(){var t=this;return c()(i.a.mark(function e(){var a,r,o;return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(d.e)();case 2:if(a=e.sent,r=a.code,o=a.data,t.dataSetData=o,"200"==r){e.next=8;break}return e.abrupt("return");case 8:case"end":return e.stop()}},e,t)}))()},doCancel:function(){this.pop=!1},save:function(){var t=this;return c()(i.a.mark(function e(){var a,r,n,l,c,s;return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(a=luckysheet.getAllSheets(),r=0;r<a.length;r++)a[r].data=[];if(t.reportExcelDto.jsonStr=o()(luckysheet.getAllSheets()),n=[],l={},t.dataSet.forEach(function(t){if(n.push(t.setCode),null!=t.dataSetParamDtoList&&t.dataSetParamDtoList.length>0){var e={};t.dataSetParamDtoList.forEach(function(t){e[t.paramName]=t.sampleItem}),l[t.setCode]=e}}),t.reportExcelDto.setParam=o()(l),t.reportExcelDto.setCodes=n.join("|"),t.reportExcelDto.reportCode=t.reportCode,null!=t.reportId){e.next=19;break}return e.next=12,Object(h.b)(t.reportExcelDto);case 12:if(c=e.sent,"200"==c.code){e.next=16;break}return e.abrupt("return");case 16:t.$message.success("保存成功"),e.next=27;break;case 19:return t.reportExcelDto.id=t.reportId,e.next=22,Object(h.e)(t.reportExcelDto);case 22:if(s=e.sent,"200"==s.code){e.next=26;break}return e.abrupt("return");case 26:t.$message.success("更新成功");case 27:case"end":return e.stop()}},e,t)}))()},detailByReportCode:function(t){var e=this;return c()(i.a.mark(function a(){var r,o;return i.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return a.next=2,Object(d.b)(t);case 2:r=a.sent,r.code,null!=(o=r.data)&&(e.reportId=o.id);case 6:case"end":return a.stop()}},a,e)}))()},preview:function(){var t=this;return c()(i.a.mark(function e(){var a;return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:a=t.$router.resolve({path:"/excelreport/viewer",query:{reportCode:t.reportCode}}),window.open(a.href,"_blank");case 2:case"end":return e.stop()}},e,t)}))()},queryAllDataSet:function(){var t=this;return c()(i.a.mark(function e(){return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t.outerVisible=!0;case 1:case"end":return e.stop()}},e,t)}))()},handleSelectionChange:function(t){this.multipleSelection=t},checkDataSet:function(){this.outerVisible=!1,this.multipleSelection.length>1?(this.$message({message:"一次最多勾选一个数据集",type:"warning"}),this.outerVisible=!0):this.detail(this.multipleSelection[0].id)},detail:function(t){var e=this;return c()(i.a.mark(function a(){var r,o,n,l;return i.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return a.next=2,Object(d.a)(t);case 2:if(r=a.sent,o=r.code,n=r.data,200==o){a.next=7;break}return a.abrupt("return");case 7:l=!0,e.dataSet.forEach(function(t){t.setCode===n.setCode&&(l=!1)}),l&&e.dataSet.push(n);case 10:case"end":return a.stop()}},a,e)}))()},del:function(t){for(var e=0;e<this.dataSet.length;e++)this.dataSet[e].setCode===t.setCode&&this.dataSet.splice(e,1)},autoChangeFunc:function(t){t?luckysheet.setCellValue(this.rightForm.r,this.rightForm.c,{auto:"1"}):luckysheet.setCellValue(this.rightForm.r,this.rightForm.c,{auto:"0"})}}},b=(a("qkZ5"),a("yOJ8"),Object(p.a)(g,function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"layout"},[a("div",{staticClass:"layout-left"},[a("div",{staticClass:"add-collection"},[t._v("\n 数据集管理\n "),a("el-button",{attrs:{type:"text",icon:"el-icon-circle-plus-outline"},on:{click:function(e){return t.queryAllDataSet()}}})],1),t._v(" "),a("div",t._l(t.dataSet,function(e,r){return a("el-collapse",{key:r,on:{change:t.handleChange},model:{value:t.activeNames,callback:function(e){t.activeNames=e},expression:"activeNames"}},[a("el-collapse-item",{attrs:{title:e.setName,name:e.id}},[a("el-popconfirm",{attrs:{title:"确定删除"+e.setName+"吗?"},on:{onConfirm:function(a){return t.del(e)}}},[a("el-button",{staticClass:"delect-all",attrs:{slot:"reference",type:"text",icon:"el-icon-close"},slot:"reference"})],1),t._v(" "),a("draggable",{staticStyle:{"margin-left":"10px"},attrs:{sort:!1,group:"people"},on:{start:function(a){return t.onStart(e.setCode,a)}},model:{value:e.setParamList,callback:function(a){t.$set(e,"setParamList",a)},expression:"item.setParamList"}},t._l(e.setParamList,function(e,r){return a("div",{key:r,staticClass:"field-container"},[a("div",{staticClass:"aRow"},[a("span",[t._v(t._s(e))])])])}),0)],1)],1)}),1)]),t._v(" "),a("div",{staticClass:"layout-middle"},[a("div",{staticClass:"push_btn"},[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"预览",placement:"bottom-start"}},[a("el-button",{attrs:{type:"text"},on:{click:function(e){return t.preview()}}},[a("i",{staticClass:"iconfont iconfuzhi"})])],1),t._v(" "),a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"保存",placement:"bottom-start"}},[a("el-button",{attrs:{type:"text"},on:{click:function(e){return t.save()}}},[a("i",{staticClass:"iconfont iconsave"})])],1)],1),t._v(" "),a("div",{staticStyle:{margin:"0px",padding:"0px",position:"absolute",width:"100%",height:"95vh",left:"0px",top:"30px",bottom:"0px"},attrs:{id:"luckysheet"}}),t._v(" "),a("div",{ref:"qrCodeDiv",attrs:{id:"qrCode"}}),t._v(" "),a("img",{attrs:{id:"barCode"}})]),t._v(" "),a("div",{staticClass:"layout-right"},[a("el-tabs",{on:{"tab-click":t.handleClick},model:{value:t.activeName,callback:function(e){t.activeName=e},expression:"activeName"}},[a("el-tab-pane",{attrs:{label:"基础配置",name:"first"}},[a("el-form",{ref:"rightForm",attrs:{model:t.rightForm,"label-width":"70px"}},[a("el-form-item",{attrs:{label:"坐标"}},[a("el-input",{model:{value:t.rightForm.coordinate,callback:function(e){t.$set(t.rightForm,"coordinate",e)},expression:"rightForm.coordinate"}})],1),t._v(" "),a("el-form-item",{attrs:{label:"值"}},[a("el-input",{model:{value:t.rightForm.value,callback:function(e){t.$set(t.rightForm,"value",e)},expression:"rightForm.value"}})],1),t._v(" "),t.rightForm.autoIsShow?a("el-form-item",{attrs:{label:"自动扩展"}},[a("el-col",{attrs:{span:12}},[a("el-switch",{on:{change:function(e){return t.autoChangeFunc(e)}},model:{value:t.rightForm.auto,callback:function(e){t.$set(t.rightForm,"auto",e)},expression:"rightForm.auto"}})],1),t._v(" "),a("el-col",{attrs:{span:12}},[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"只针对静态数据的单元格,具体参考文档",placement:"top"}},[a("i",{staticClass:"el-icon-question"})])],1)],1):t._e()],1)],1)],1)],1),t._v(" "),a("el-dialog",{attrs:{title:"数据集管理",visible:t.outerVisible},on:{"update:visible":function(e){t.outerVisible=e}}},[a("el-table",{ref:"multipleTable",staticStyle:{width:"100%",height:"60vh","overflow-y":"scroll"},attrs:{data:t.dataSetData,"tooltip-effect":"dark"},on:{"selection-change":t.handleSelectionChange}},[a("el-table-column",{attrs:{type:"selection",width:"55"}}),t._v(" "),a("el-table-column",{attrs:{label:"数据集名称",width:"120",prop:"setName"}}),t._v(" "),a("el-table-column",{attrs:{prop:"setDesc",label:"数据集描述",width:"180"}}),t._v(" "),a("el-table-column",{attrs:{prop:"setCode",label:"数据集编码","show-overflow-tooltip":""}})],1),t._v(" "),a("div",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:function(e){t.outerVisible=!1}}},[t._v("取 消")]),t._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:function(e){return t.checkDataSet()}}},[t._v("确定 ")])],1)],1)],1)},[],!1,null,"1682d268",null));b.options.__file="index.vue";e.default=b.exports},qkZ5:function(t,e,a){"use strict";var r=a("FZcH");a.n(r).a},ttk2:function(t,e,a){},yOJ8:function(t,e,a){"use strict";var r=a("FE7L");a.n(r).a}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-c4fe"],{FE7L:function(t,e,a){},FZcH:function(t,e,a){},Fzjc:function(t,e,a){"use strict";a.d(e,"d",function(){return o}),a.d(e,"c",function(){return n}),a.d(e,"e",function(){return i}),a.d(e,"a",function(){return l}),a.d(e,"b",function(){return c});var r=a("t3Un");function o(t){return Object(r.a)({url:"reportExcel/preview",method:"post",data:t})}function n(t){return Object(r.a)({url:"reportExcel/exportExcel",method:"post",data:t})}function i(){return Object(r.a)({url:"dataSet/queryAllDataSet",method:"get"})}function l(t){return Object(r.a)({url:"dataSet/detailBysetId/"+t,method:"get"})}function c(t){return Object(r.a)({url:"reportExcel/detailByReportCode/"+t,method:"get"})}},HDHf:function(t,e,a){"use strict";a.d(e,"c",function(){return o}),a.d(e,"a",function(){return n}),a.d(e,"d",function(){return i}),a.d(e,"f",function(){return l}),a.d(e,"i",function(){return c}),a.d(e,"h",function(){return s}),a.d(e,"g",function(){return u}),a.d(e,"b",function(){return d}),a.d(e,"e",function(){return h});var r=a("t3Un");function o(t){return Object(r.a)({url:"/dataSet/detailBysetId/"+t.id,method:"get"})}function n(t){return Object(r.a)({url:"/dataSet",method:"post",data:t})}function i(t){return Object(r.a)({url:"/dataSet",method:"put",data:t})}function l(t){return Object(r.a)({url:"/dataSource/queryAllDataSource",method:"get",data:t})}function c(t){return Object(r.a)({url:"/dataSetParam/verification",method:"post",data:t})}function s(t){return Object(r.a)({url:"/dataSet/testTransform",method:"post",data:t})}function u(t){return Object(r.a)({url:"/report/pageList",method:"get",params:t})}function d(t){return Object(r.a)({url:"/reportExcel",method:"post",data:t})}function h(t){return Object(r.a)({url:"/reportExcel",method:"put",data:t})}},W7E0:function(t,e,a){"use strict";var r=a("ttk2");a.n(r).a},Xvat:function(t,e,a){"use strict";a.r(e);var r=a("omC7"),o=a.n(r),n=a("cLjf"),i=a.n(n),l=a("hDQ3"),c=a.n(l),s=a("MzXy"),u=a.n(s),d=a("Fzjc"),h=a("HDHf"),f={name:"ColorPicker",model:{prop:"value",event:"input"},props:{value:{type:[String],default:""}},data:function(){return{predefineColors:["#ff4500","#ff8c00","#ffd700","#90ee90","#00ced1","#1e90ff","#c71585"],colorValue:""}},watch:{value:function(t){this.colorValue=t||""}},mounted:function(){this.colorValue=this.value},methods:{changeColor:function(t){this.colorValue=t||"",this.$emit("input",this.colorValue),this.$emit("change",this.colorValue)}}},p=(a("W7E0"),a("ZrdR")),m=Object(p.a)(f,function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("el-input",{attrs:{clearable:"",placeholder:"请输入颜色",size:"mini"},on:{change:t.changeColor},model:{value:t.colorValue,callback:function(e){t.colorValue=e},expression:"colorValue"}},[a("template",{slot:"append"},[a("el-color-picker",{attrs:{predefine:t.predefineColors,"show-alpha":"",size:"mini"},on:{change:t.changeColor},model:{value:t.colorValue,callback:function(e){t.colorValue=e},expression:"colorValue"}})],1)],2)},[],!1,null,"57fe9f5c",null);m.options.__file="colorPicker.vue";var v=m.exports,g={name:"Excels",components:{draggable:u.a,ColorPicker:v},data:function(){return{activeName:"first",activeNames:["1"],reportId:null,accessKey:null,reportCode:"",options:[],sheet:{},sheetData:[],dataSetData:[],reportExcelDto:{id:null,jsonStr:"",setCodes:"",setParam:"",reportCode:""},multipleSelection:[],rightForm:{coordinate:"",value:"",r:"",c:"",auto:!1,autoIsShow:!1},qrCodeForm:{type:"QRCode",content:"https://www.baidu.com",width:125,height:125,colorDark:"#333333",colorLight:"#ffffff",ri:0,ci:0,currentSrc:""},barCodeForm:{type:"BarCode",format:"CODE39",displayValue:!0,content:"99999999999",lineColor:"#000",background:"#fff",width:100,height:40,ri:0,ci:0,currentSrc:""},formPrintSetting:{size:"",pixel1:"",pixel2:""},pixelList:[{paper:"A4",width:210,height:297},{paper:"A3",width:297,height:420},{paper:"Letter",width:216,height:279},{paper:"Legal",width:216,height:355},{paper:"Executive",width:184,height:266}],dataSet:[],outerVisible:!1,printVisible:!1,pop:!1,setCode:null,draggableFieldLabel:null,dialogVisible:!1,dialogBarCode:!1,paperList:[],paper:"",width:"",height:"",definition:"",isBackend:"",dpi:"",pxWidth:"",pxHeight:"",show:!1,config:"",settings:{},qrCodeList:[],moveDataelse:{x:null,y:null}}},mounted:function(){},created:function(){this.reportCode=this.$route.query.reportCode,this.accessKey=this.$route.query.accessKey,this.loadDataSet(),this.design()},methods:{handleClose:function(){this.printVisible=!1},handleChange:function(t){},handleClick:function(t,e){},design:function(){var t=this;return c()(i.a.mark(function e(){var a,r;return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(d.b)(t.reportCode);case 2:a=e.sent,a.code,null!=(r=a.data)&&(t.reportId=r.id),t.sheetData=null==r?[{}]:JSON.parse(r.jsonStr),console.log(t.sheetData),t.createSheet(),null!=r&&null!=r.setCodes&&""!==r.setCodes&&r.setCodes.split("|").forEach(function(e){t.dataSetData.forEach(function(a){e===a.setCode&&t.detail(a.id)})});case 10:case"end":return e.stop()}},e,t)}))()},createSheet:function(){var t=this,e={container:"luckysheet",title:"",lang:"zh",plugins:["chart"],hook:{cellDragStop:function(e,a,r,o,n){luckysheet.setCellValue(a.r,a.c,t.draggableFieldLabel)},cellMousedown:function(e,a,r,o){t.rightForm.coordinate=a.r+","+a.c,t.rightForm.r=a.r,t.rightForm.c=a.c,t.rightForm.value=null==e?"":e.v,t.rightForm.autoIsShow=!0,null==e||void 0!=e.v&&-1!==e.v.indexOf("#{")?t.rightForm.auto=!1:(t.rightForm.autoIsShow=!0,null!=e.auto&&"1"==e.auto?t.rightForm.auto=!0:t.rightForm.auto=!1)}},data:[{name:"report",color:"",index:0,status:1,order:0,hide:0,row:36,column:18,defaultRowHeight:19,defaultColWidth:73,celldata:[],config:{merge:{},rowlen:{},columnlen:{},rowhidden:{},colhidden:{},borderInfo:{},authority:{}},scrollLeft:0,scrollTop:315,luckysheet_select_save:[],calcChain:[],isPivotTable:!1,pivotTable:{},filter_select:{},filter:null,luckysheet_alternateformat_save:[],luckysheet_alternateformat_save_modelCustom:[],luckysheet_conditionformat_save:{},frozen:{},chart:[],zoomRatio:1,image:[],showGridLines:1,dataVerification:{}}]};e.data=this.sheetData,$(function(){luckysheet.create(e)})},onStart:function(t,e){this.setCode=t;var a=e.item.innerText;this.draggableFieldLabel="#{"+this.setCode+"."+a+"}",console.log("evt",e),console.log("draggableFieldLabel",this.draggableFieldLabel)},loadDataSet:function(){var t=this;return c()(i.a.mark(function e(){var a,r,o;return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(d.e)();case 2:if(a=e.sent,r=a.code,o=a.data,t.dataSetData=o,"200"==r){e.next=8;break}return e.abrupt("return");case 8:case"end":return e.stop()}},e,t)}))()},doCancel:function(){this.pop=!1},save:function(){var t=this;return c()(i.a.mark(function e(){var a,r,n,l,c,s;return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(a=luckysheet.getAllSheets(),r=0;r<a.length;r++)a[r].data=[];if(t.reportExcelDto.jsonStr=o()(luckysheet.getAllSheets()),n=[],l={},t.dataSet.forEach(function(t){if(n.push(t.setCode),null!=t.dataSetParamDtoList&&t.dataSetParamDtoList.length>0){var e={};t.dataSetParamDtoList.forEach(function(t){e[t.paramName]=t.sampleItem}),l[t.setCode]=e}}),t.reportExcelDto.setParam=o()(l),t.reportExcelDto.setCodes=n.join("|"),t.reportExcelDto.reportCode=t.reportCode,null!=t.reportId){e.next=19;break}return e.next=12,Object(h.b)(t.reportExcelDto);case 12:if(c=e.sent,"200"==c.code){e.next=16;break}return e.abrupt("return");case 16:t.$message.success("保存成功"),e.next=27;break;case 19:return t.reportExcelDto.id=t.reportId,e.next=22,Object(h.e)(t.reportExcelDto);case 22:if(s=e.sent,"200"==s.code){e.next=26;break}return e.abrupt("return");case 26:t.$message.success("更新成功");case 27:case"end":return e.stop()}},e,t)}))()},detailByReportCode:function(t){var e=this;return c()(i.a.mark(function a(){var r,o;return i.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return a.next=2,Object(d.b)(t);case 2:r=a.sent,r.code,null!=(o=r.data)&&(e.reportId=o.id);case 6:case"end":return a.stop()}},a,e)}))()},preview:function(){var t=this;return c()(i.a.mark(function e(){var a;return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:a=t.$router.resolve({path:"/excelreport/viewer",query:{reportCode:t.reportCode}}),window.open(a.href,"_blank");case 2:case"end":return e.stop()}},e,t)}))()},queryAllDataSet:function(){var t=this;return c()(i.a.mark(function e(){return i.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t.outerVisible=!0;case 1:case"end":return e.stop()}},e,t)}))()},handleSelectionChange:function(t){this.multipleSelection=t},checkDataSet:function(){this.outerVisible=!1,this.multipleSelection.length>1?(this.$message({message:"一次最多勾选一个数据集",type:"warning"}),this.outerVisible=!0):this.detail(this.multipleSelection[0].id)},detail:function(t){var e=this;return c()(i.a.mark(function a(){var r,o,n,l;return i.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return a.next=2,Object(d.a)(t);case 2:if(r=a.sent,o=r.code,n=r.data,200==o){a.next=7;break}return a.abrupt("return");case 7:l=!0,e.dataSet.forEach(function(t){t.setCode===n.setCode&&(l=!1)}),l&&e.dataSet.push(n);case 10:case"end":return a.stop()}},a,e)}))()},del:function(t){for(var e=0;e<this.dataSet.length;e++)this.dataSet[e].setCode===t.setCode&&this.dataSet.splice(e,1)},autoChangeFunc:function(t){t?luckysheet.setCellValue(this.rightForm.r,this.rightForm.c,{auto:"1"}):luckysheet.setCellValue(this.rightForm.r,this.rightForm.c,{auto:"0"})}}},b=(a("qkZ5"),a("yOJ8"),Object(p.a)(g,function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"layout"},[a("div",{staticClass:"layout-left"},[a("div",{staticClass:"add-collection"},[t._v("\n 数据集管理\n "),a("el-button",{attrs:{type:"text",icon:"el-icon-circle-plus-outline"},on:{click:function(e){return t.queryAllDataSet()}}})],1),t._v(" "),a("div",t._l(t.dataSet,function(e,r){return a("el-collapse",{key:r,on:{change:t.handleChange},model:{value:t.activeNames,callback:function(e){t.activeNames=e},expression:"activeNames"}},[a("el-collapse-item",{attrs:{title:e.setName,name:e.id}},[a("el-popconfirm",{attrs:{title:"确定删除"+e.setName+"吗?"},on:{onConfirm:function(a){return t.del(e)}}},[a("el-button",{staticClass:"delect-all",attrs:{slot:"reference",type:"text",icon:"el-icon-close"},slot:"reference"})],1),t._v(" "),a("draggable",{staticStyle:{"margin-left":"10px"},attrs:{sort:!1,group:"people"},on:{start:function(a){return t.onStart(e.setCode,a)}},model:{value:e.setParamList,callback:function(a){t.$set(e,"setParamList",a)},expression:"item.setParamList"}},t._l(e.setParamList,function(e,r){return a("div",{key:r,staticClass:"field-container"},[a("div",{staticClass:"aRow"},[a("span",[t._v(t._s(e))])])])}),0)],1)],1)}),1)]),t._v(" "),a("div",{staticClass:"layout-middle"},[a("div",{staticClass:"push_btn"},[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"预览",placement:"bottom-start"}},[a("el-button",{attrs:{type:"text"},on:{click:function(e){return t.preview()}}},[a("i",{staticClass:"iconfont iconfuzhi"})])],1),t._v(" "),a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"保存",placement:"bottom-start"}},[a("el-button",{attrs:{type:"text"},on:{click:function(e){return t.save()}}},[a("i",{staticClass:"iconfont iconsave"})])],1)],1),t._v(" "),a("div",{staticStyle:{margin:"0px",padding:"0px",position:"absolute",width:"100%",height:"95vh",left:"0px",top:"30px",bottom:"0px"},attrs:{id:"luckysheet"}}),t._v(" "),a("div",{ref:"qrCodeDiv",attrs:{id:"qrCode"}}),t._v(" "),a("img",{attrs:{id:"barCode"}})]),t._v(" "),a("div",{staticClass:"layout-right"},[a("el-tabs",{on:{"tab-click":t.handleClick},model:{value:t.activeName,callback:function(e){t.activeName=e},expression:"activeName"}},[a("el-tab-pane",{attrs:{label:"基础配置",name:"first"}},[a("el-form",{ref:"rightForm",attrs:{model:t.rightForm,"label-width":"70px"}},[a("el-form-item",{attrs:{label:"坐标"}},[a("el-input",{model:{value:t.rightForm.coordinate,callback:function(e){t.$set(t.rightForm,"coordinate",e)},expression:"rightForm.coordinate"}})],1),t._v(" "),a("el-form-item",{attrs:{label:"值"}},[a("el-input",{model:{value:t.rightForm.value,callback:function(e){t.$set(t.rightForm,"value",e)},expression:"rightForm.value"}})],1),t._v(" "),t.rightForm.autoIsShow?a("el-form-item",{attrs:{label:"自动扩展"}},[a("el-col",{attrs:{span:12}},[a("el-switch",{on:{change:function(e){return t.autoChangeFunc(e)}},model:{value:t.rightForm.auto,callback:function(e){t.$set(t.rightForm,"auto",e)},expression:"rightForm.auto"}})],1),t._v(" "),a("el-col",{attrs:{span:12}},[a("el-tooltip",{staticClass:"item",attrs:{effect:"dark",content:"只针对静态数据的单元格,具体参考文档",placement:"top"}},[a("i",{staticClass:"el-icon-question"})])],1)],1):t._e()],1)],1)],1)],1),t._v(" "),a("el-dialog",{attrs:{title:"数据集管理",visible:t.outerVisible},on:{"update:visible":function(e){t.outerVisible=e}}},[a("el-table",{ref:"multipleTable",staticStyle:{width:"100%",height:"60vh","overflow-y":"scroll"},attrs:{data:t.dataSetData,"tooltip-effect":"dark"},on:{"selection-change":t.handleSelectionChange}},[a("el-table-column",{attrs:{type:"selection",width:"55"}}),t._v(" "),a("el-table-column",{attrs:{label:"数据集名称",width:"120",prop:"setName"}}),t._v(" "),a("el-table-column",{attrs:{prop:"setDesc",label:"数据集描述",width:"180"}}),t._v(" "),a("el-table-column",{attrs:{prop:"setCode",label:"数据集编码","show-overflow-tooltip":""}})],1),t._v(" "),a("div",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:function(e){t.outerVisible=!1}}},[t._v("取 消")]),t._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:function(e){return t.checkDataSet()}}},[t._v("确定 ")])],1)],1)],1)},[],!1,null,"1682d268",null));b.options.__file="index.vue";e.default=b.exports},qkZ5:function(t,e,a){"use strict";var r=a("FZcH");a.n(r).a},ttk2:function(t,e,a){},yOJ8:function(t,e,a){"use strict";var r=a("FE7L");a.n(r).a}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-dd63.308430ba.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-dd63.308430ba.js index 9663aaec9..e66212e58 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-dd63.308430ba.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-dd63.308430ba.js @@ -3,4 +3,4 @@ Copyright (c) 2014 Taylor Hakes Copyright (c) 2014 Forbes Lindesay */ -!function(e,t){t()}(0,function(){"use strict";function t(e){var t=this.constructor;return this.then(function(n){return t.resolve(e()).then(function(){return n})},function(n){return t.resolve(e()).then(function(){return t.reject(n)})})}var n=setTimeout;function i(){}function o(e){if(!(this instanceof o))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],l(e,this)}function r(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,o._immediateFn(function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null!==n){var i;try{i=n(e._value)}catch(e){return void a(t.promise,e)}s(t.promise,i)}else(1===e._state?s:a)(t.promise,e._value)})):e._deferreds.push(t)}function s(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&&("object"==typeof t||"function"==typeof t)){var n=t.then;if(t instanceof o)return e._state=3,e._value=t,void u(e);if("function"==typeof n)return void l(function(e,t){return function(){e.apply(t,arguments)}}(n,t),e)}e._state=1,e._value=t,u(e)}catch(t){a(e,t)}}function a(e,t){e._state=2,e._value=t,u(e)}function u(e){2===e._state&&0===e._deferreds.length&&o._immediateFn(function(){e._handled||o._unhandledRejectionFn(e._value)});for(var t=0,n=e._deferreds.length;t<n;t++)r(e,e._deferreds[t]);e._deferreds=null}function l(e,t){var n=!1;try{e(function(e){n||(n=!0,s(t,e))},function(e){n||(n=!0,a(t,e))})}catch(e){if(n)return;n=!0,a(t,e)}}o.prototype.catch=function(e){return this.then(null,e)},o.prototype.then=function(e,t){var n=new this.constructor(i);return r(this,new function(e,t,n){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.promise=n}(e,t,n)),n},o.prototype.finally=t,o.all=function(e){return new o(function(t,n){if(!e||void 0===e.length)throw new TypeError("Promise.all accepts an array");var i=Array.prototype.slice.call(e);if(0===i.length)return t([]);var o=i.length;function r(e,s){try{if(s&&("object"==typeof s||"function"==typeof s)){var a=s.then;if("function"==typeof a)return void a.call(s,function(t){r(e,t)},n)}i[e]=s,0==--o&&t(i)}catch(e){n(e)}}for(var s=0;s<i.length;s++)r(s,i[s])})},o.resolve=function(e){return e&&"object"==typeof e&&e.constructor===o?e:new o(function(t){t(e)})},o.reject=function(e){return new o(function(t,n){n(e)})},o.race=function(e){return new o(function(t,n){for(var i=0,o=e.length;i<o;i++)e[i].then(t,n)})},o._immediateFn="function"==typeof setImmediate&&function(e){setImmediate(e)}||function(e){n(e,0)},o._unhandledRejectionFn=function(e){"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",e)};var c=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if(void 0!==e)return e;throw new Error("unable to locate global object")}();"Promise"in c?c.Promise.prototype.finally||(c.Promise.prototype.finally=t):c.Promise=o})}).call(this,n("nagk"))}}]); \ No newline at end of file +!function(e,t){t()}(0,function(){"use strict";function t(e){var t=this.constructor;return this.then(function(n){return t.resolve(e()).then(function(){return n})},function(n){return t.resolve(e()).then(function(){return t.reject(n)})})}var n=setTimeout;function i(){}function o(e){if(!(this instanceof o))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],l(e,this)}function r(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,o._immediateFn(function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null!==n){var i;try{i=n(e._value)}catch(e){return void a(t.promise,e)}s(t.promise,i)}else(1===e._state?s:a)(t.promise,e._value)})):e._deferreds.push(t)}function s(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&&("object"==typeof t||"function"==typeof t)){var n=t.then;if(t instanceof o)return e._state=3,e._value=t,void u(e);if("function"==typeof n)return void l(function(e,t){return function(){e.apply(t,arguments)}}(n,t),e)}e._state=1,e._value=t,u(e)}catch(t){a(e,t)}}function a(e,t){e._state=2,e._value=t,u(e)}function u(e){2===e._state&&0===e._deferreds.length&&o._immediateFn(function(){e._handled||o._unhandledRejectionFn(e._value)});for(var t=0,n=e._deferreds.length;t<n;t++)r(e,e._deferreds[t]);e._deferreds=null}function l(e,t){var n=!1;try{e(function(e){n||(n=!0,s(t,e))},function(e){n||(n=!0,a(t,e))})}catch(e){if(n)return;n=!0,a(t,e)}}o.prototype.catch=function(e){return this.then(null,e)},o.prototype.then=function(e,t){var n=new this.constructor(i);return r(this,new function(e,t,n){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.promise=n}(e,t,n)),n},o.prototype.finally=t,o.all=function(e){return new o(function(t,n){if(!e||void 0===e.length)throw new TypeError("Promise.all accepts an array");var i=Array.prototype.slice.call(e);if(0===i.length)return t([]);var o=i.length;function r(e,s){try{if(s&&("object"==typeof s||"function"==typeof s)){var a=s.then;if("function"==typeof a)return void a.call(s,function(t){r(e,t)},n)}i[e]=s,0==--o&&t(i)}catch(e){n(e)}}for(var s=0;s<i.length;s++)r(s,i[s])})},o.resolve=function(e){return e&&"object"==typeof e&&e.constructor===o?e:new o(function(t){t(e)})},o.reject=function(e){return new o(function(t,n){n(e)})},o.race=function(e){return new o(function(t,n){for(var i=0,o=e.length;i<o;i++)e[i].then(t,n)})},o._immediateFn="function"==typeof setImmediate&&function(e){setImmediate(e)}||function(e){n(e,0)},o._unhandledRejectionFn=function(e){"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",e)};var c=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if(void 0!==e)return e;throw new Error("unable to locate global object")}();"Promise"in c?c.Promise.prototype.finally||(c.Promise.prototype.finally=t):c.Promise=o})}).call(this,n("nagk"))}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-f079.86ef3b0d.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-f079.86ef3b0d.js index e0143349e..3a87ea4b5 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-f079.86ef3b0d.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-f079.86ef3b0d.js @@ -5,4 +5,4 @@ * @author owenm <owen23355@gmail.com> * @license MIT */ -function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(){return(i=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])}return t}).apply(this,arguments)}function a(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),o.forEach(function(e){r(t,e,n[e])})}return t}function l(t,e){if(null==t)return{};var n,o,r=function(t,e){if(null==t)return{};var n,o,r={},i=Object.keys(t);for(o=0;o<i.length;o++)n=i[o],e.indexOf(n)>=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(o=0;o<i.length;o++)n=i[o],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function s(t){return function(t){if(Array.isArray(t)){for(var e=0,n=new Array(t.length);e<t.length;e++)n[e]=t[e];return n}}(t)||function(t){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t))return Array.from(t)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}n.r(e),n.d(e,"MultiDrag",function(){return ye}),n.d(e,"Sortable",function(){return Xt}),n.d(e,"Swap",function(){return se});function c(t){if("undefined"!=typeof window&&window.navigator)return!!navigator.userAgent.match(t)}var u=c(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),f=c(/Edge/i),d=c(/firefox/i),h=c(/safari/i)&&!c(/chrome/i)&&!c(/android/i),p=c(/iP(ad|od|hone)/i),v=c(/chrome/i)&&c(/android/i),g={capture:!1,passive:!1};function m(t,e,n){t.addEventListener(e,n,!u&&g)}function b(t,e,n){t.removeEventListener(e,n,!u&&g)}function y(t,e){if(e){if(">"===e[0]&&(e=e.substring(1)),t)try{if(t.matches)return t.matches(e);if(t.msMatchesSelector)return t.msMatchesSelector(e);if(t.webkitMatchesSelector)return t.webkitMatchesSelector(e)}catch(t){return!1}return!1}}function w(t){return t.host&&t!==document&&t.host.nodeType?t.host:t.parentNode}function x(t,e,n,o){if(t){n=n||document;do{if(null!=e&&(">"===e[0]?t.parentNode===n&&y(t,e):y(t,e))||o&&t===n)return t;if(t===n)break}while(t=w(t))}return null}var S,E=/\s+/g;function D(t,e,n){if(t&&e)if(t.classList)t.classList[n?"add":"remove"](e);else{var o=(" "+t.className+" ").replace(E," ").replace(" "+e+" "," ");t.className=(o+(n?" "+e:"")).replace(E," ")}}function _(t,e,n){var o=t&&t.style;if(o){if(void 0===n)return document.defaultView&&document.defaultView.getComputedStyle?n=document.defaultView.getComputedStyle(t,""):t.currentStyle&&(n=t.currentStyle),void 0===e?n:n[e];e in o||-1!==e.indexOf("webkit")||(e="-webkit-"+e),o[e]=n+("string"==typeof n?"":"px")}}function O(t,e){var n="";if("string"==typeof t)n=t;else do{var o=_(t,"transform");o&&"none"!==o&&(n=o+" "+n)}while(!e&&(t=t.parentNode));var r=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return r&&new r(n)}function C(t,e,n){if(t){var o=t.getElementsByTagName(e),r=0,i=o.length;if(n)for(;r<i;r++)n(o[r],r);return o}return[]}function T(){var t=document.scrollingElement;return t||document.documentElement}function M(t,e,n,o,r){if(t.getBoundingClientRect||t===window){var i,a,l,s,c,f,d;if(t!==window&&t!==T()?(a=(i=t.getBoundingClientRect()).top,l=i.left,s=i.bottom,c=i.right,f=i.height,d=i.width):(a=0,l=0,s=window.innerHeight,c=window.innerWidth,f=window.innerHeight,d=window.innerWidth),(e||n)&&t!==window&&(r=r||t.parentNode,!u))do{if(r&&r.getBoundingClientRect&&("none"!==_(r,"transform")||n&&"static"!==_(r,"position"))){var h=r.getBoundingClientRect();a-=h.top+parseInt(_(r,"border-top-width")),l-=h.left+parseInt(_(r,"border-left-width")),s=a+i.height,c=l+i.width;break}}while(r=r.parentNode);if(o&&t!==window){var p=O(r||t),v=p&&p.a,g=p&&p.d;p&&(s=(a/=g)+(f/=g),c=(l/=v)+(d/=v))}return{top:a,left:l,bottom:s,right:c,width:d,height:f}}}function I(t,e,n){for(var o=j(t,!0),r=M(t)[e];o;){var i=M(o)[n];if(!("top"===n||"left"===n?r>=i:r<=i))return o;if(o===T())break;o=j(o,!1)}return!1}function A(t,e,n){for(var o=0,r=0,i=t.children;r<i.length;){if("none"!==i[r].style.display&&i[r]!==Xt.ghost&&i[r]!==Xt.dragged&&x(i[r],n.draggable,t,!1)){if(o===e)return i[r];o++}r++}return null}function P(t,e){for(var n=t.lastElementChild;n&&(n===Xt.ghost||"none"===_(n,"display")||e&&!y(n,e));)n=n.previousElementSibling;return n||null}function N(t,e){var n=0;if(!t||!t.parentNode)return-1;for(;t=t.previousElementSibling;)"TEMPLATE"===t.nodeName.toUpperCase()||t===Xt.clone||e&&!y(t,e)||n++;return n}function k(t){var e=0,n=0,o=T();if(t)do{var r=O(t),i=r.a,a=r.d;e+=t.scrollLeft*i,n+=t.scrollTop*a}while(t!==o&&(t=t.parentNode));return[e,n]}function j(t,e){if(!t||!t.getBoundingClientRect)return T();var n=t,o=!1;do{if(n.clientWidth<n.scrollWidth||n.clientHeight<n.scrollHeight){var r=_(n);if(n.clientWidth<n.scrollWidth&&("auto"==r.overflowX||"scroll"==r.overflowX)||n.clientHeight<n.scrollHeight&&("auto"==r.overflowY||"scroll"==r.overflowY)){if(!n.getBoundingClientRect||n===document.body)return T();if(o||e)return n;o=!0}}}while(n=n.parentNode);return T()}function L(t,e){return Math.round(t.top)===Math.round(e.top)&&Math.round(t.left)===Math.round(e.left)&&Math.round(t.height)===Math.round(e.height)&&Math.round(t.width)===Math.round(e.width)}function R(t,e){return function(){if(!S){var n=arguments;1===n.length?t.call(this,n[0]):t.apply(this,n),S=setTimeout(function(){S=void 0},e)}}}function F(t,e,n){t.scrollLeft+=e,t.scrollTop+=n}function $(t){var e=window.Polymer,n=window.jQuery||window.Zepto;return e&&e.dom?e.dom(t).cloneNode(!0):n?n(t).clone(!0)[0]:t.cloneNode(!0)}function X(t,e){_(t,"position","absolute"),_(t,"top",e.top),_(t,"left",e.left),_(t,"width",e.width),_(t,"height",e.height)}function B(t){_(t,"position",""),_(t,"top",""),_(t,"left",""),_(t,"width",""),_(t,"height","")}var Y="Sortable"+(new Date).getTime();function H(){var t,e=[];return{captureAnimationState:function(){(e=[],this.options.animation)&&[].slice.call(this.el.children).forEach(function(t){if("none"!==_(t,"display")&&t!==Xt.ghost){e.push({target:t,rect:M(t)});var n=a({},e[e.length-1].rect);if(t.thisAnimationDuration){var o=O(t,!0);o&&(n.top-=o.f,n.left-=o.e)}t.fromRect=n}})},addAnimationState:function(t){e.push(t)},removeAnimationState:function(t){e.splice(function(t,e){for(var n in t)if(t.hasOwnProperty(n))for(var o in e)if(e.hasOwnProperty(o)&&e[o]===t[n][o])return Number(n);return-1}(e,{target:t}),1)},animateAll:function(n){var o=this;if(!this.options.animation)return clearTimeout(t),void("function"==typeof n&&n());var r=!1,i=0;e.forEach(function(t){var e=0,n=t.target,a=n.fromRect,l=M(n),s=n.prevFromRect,c=n.prevToRect,u=t.rect,f=O(n,!0);f&&(l.top-=f.f,l.left-=f.e),n.toRect=l,n.thisAnimationDuration&&L(s,l)&&!L(a,l)&&(u.top-l.top)/(u.left-l.left)==(a.top-l.top)/(a.left-l.left)&&(e=function(t,e,n,o){return Math.sqrt(Math.pow(e.top-t.top,2)+Math.pow(e.left-t.left,2))/Math.sqrt(Math.pow(e.top-n.top,2)+Math.pow(e.left-n.left,2))*o.animation}(u,s,c,o.options)),L(l,a)||(n.prevFromRect=a,n.prevToRect=l,e||(e=o.options.animation),o.animate(n,u,l,e)),e&&(r=!0,i=Math.max(i,e),clearTimeout(n.animationResetTimer),n.animationResetTimer=setTimeout(function(){n.animationTime=0,n.prevFromRect=null,n.fromRect=null,n.prevToRect=null,n.thisAnimationDuration=null},e),n.thisAnimationDuration=e)}),clearTimeout(t),r?t=setTimeout(function(){"function"==typeof n&&n()},i):"function"==typeof n&&n(),e=[]},animate:function(t,e,n,o){if(o){_(t,"transition",""),_(t,"transform","");var r=O(this.el),i=r&&r.a,a=r&&r.d,l=(e.left-n.left)/(i||1),s=(e.top-n.top)/(a||1);t.animatingX=!!l,t.animatingY=!!s,_(t,"transform","translate3d("+l+"px,"+s+"px,0)"),function(t){t.offsetWidth}(t),_(t,"transition","transform "+o+"ms"+(this.options.easing?" "+this.options.easing:"")),_(t,"transform","translate3d(0,0,0)"),"number"==typeof t.animated&&clearTimeout(t.animated),t.animated=setTimeout(function(){_(t,"transition",""),_(t,"transform",""),t.animated=!1,t.animatingX=!1,t.animatingY=!1},o)}}}}var V=[],W={initializeByDefault:!0},U={mount:function(t){for(var e in W)!W.hasOwnProperty(e)||e in t||(t[e]=W[e]);V.push(t)},pluginEvent:function(t,e,n){var o=this;this.eventCanceled=!1,n.cancel=function(){o.eventCanceled=!0};var r=t+"Global";V.forEach(function(o){e[o.pluginName]&&(e[o.pluginName][r]&&e[o.pluginName][r](a({sortable:e},n)),e.options[o.pluginName]&&e[o.pluginName][t]&&e[o.pluginName][t](a({sortable:e},n)))})},initializePlugins:function(t,e,n,o){for(var r in V.forEach(function(o){var r=o.pluginName;if(t.options[r]||o.initializeByDefault){var a=new o(t,e,t.options);a.sortable=t,a.options=t.options,t[r]=a,i(n,a.defaults)}}),t.options)if(t.options.hasOwnProperty(r)){var a=this.modifyOption(t,r,t.options[r]);void 0!==a&&(t.options[r]=a)}},getEventProperties:function(t,e){var n={};return V.forEach(function(o){"function"==typeof o.eventProperties&&i(n,o.eventProperties.call(e[o.pluginName],t))}),n},modifyOption:function(t,e,n){var o;return V.forEach(function(r){t[r.pluginName]&&r.optionListeners&&"function"==typeof r.optionListeners[e]&&(o=r.optionListeners[e].call(t[r.pluginName],n))}),o}};function G(t){var e=t.sortable,n=t.rootEl,o=t.name,r=t.targetEl,i=t.cloneEl,l=t.toEl,s=t.fromEl,c=t.oldIndex,d=t.newIndex,h=t.oldDraggableIndex,p=t.newDraggableIndex,v=t.originalEvent,g=t.putSortable,m=t.extraEventProperties;if(e=e||n&&n[Y]){var b,y=e.options,w="on"+o.charAt(0).toUpperCase()+o.substr(1);!window.CustomEvent||u||f?(b=document.createEvent("Event")).initEvent(o,!0,!0):b=new CustomEvent(o,{bubbles:!0,cancelable:!0}),b.to=l||n,b.from=s||n,b.item=r||n,b.clone=i,b.oldIndex=c,b.newIndex=d,b.oldDraggableIndex=h,b.newDraggableIndex=p,b.originalEvent=v,b.pullMode=g?g.lastPutMode:void 0;var x=a({},m,U.getEventProperties(o,e));for(var S in x)b[S]=x[S];n&&n.dispatchEvent(b),y[w]&&y[w].call(e,b)}}var K=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=n.evt,r=l(n,["evt"]);U.pluginEvent.bind(Xt)(t,e,a({dragEl:q,parentEl:J,ghostEl:Z,rootEl:Q,nextEl:tt,lastDownEl:et,cloneEl:nt,cloneHidden:ot,dragStarted:gt,putSortable:ct,activeSortable:Xt.active,originalEvent:o,oldIndex:rt,oldDraggableIndex:at,newIndex:it,newDraggableIndex:lt,hideGhostForTarget:Lt,unhideGhostForTarget:Rt,cloneNowHidden:function(){ot=!0},cloneNowShown:function(){ot=!1},dispatchSortableEvent:function(t){z({sortable:e,name:t,originalEvent:o})}},r))};function z(t){G(a({putSortable:ct,cloneEl:nt,targetEl:q,rootEl:Q,oldIndex:rt,oldDraggableIndex:at,newIndex:it,newDraggableIndex:lt},t))}var q,J,Z,Q,tt,et,nt,ot,rt,it,at,lt,st,ct,ut,ft,dt,ht,pt,vt,gt,mt,bt,yt,wt,xt=!1,St=!1,Et=[],Dt=!1,_t=!1,Ot=[],Ct=!1,Tt=[],Mt="undefined"!=typeof document,It=p,At=f||u?"cssFloat":"float",Pt=Mt&&!v&&!p&&"draggable"in document.createElement("div"),Nt=function(){if(Mt){if(u)return!1;var t=document.createElement("x");return t.style.cssText="pointer-events:auto","auto"===t.style.pointerEvents}}(),kt=function(t,e){var n=_(t),o=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),r=A(t,0,e),i=A(t,1,e),a=r&&_(r),l=i&&_(i),s=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+M(r).width,c=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+M(i).width;if("flex"===n.display)return"column"===n.flexDirection||"column-reverse"===n.flexDirection?"vertical":"horizontal";if("grid"===n.display)return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(r&&a.float&&"none"!==a.float){var u="left"===a.float?"left":"right";return!i||"both"!==l.clear&&l.clear!==u?"horizontal":"vertical"}return r&&("block"===a.display||"flex"===a.display||"table"===a.display||"grid"===a.display||s>=o&&"none"===n[At]||i&&"none"===n[At]&&s+c>o)?"vertical":"horizontal"},jt=function(t){function e(t,n){return function(o,r,i,a){var l=o.options.group.name&&r.options.group.name&&o.options.group.name===r.options.group.name;if(null==t&&(n||l))return!0;if(null==t||!1===t)return!1;if(n&&"clone"===t)return t;if("function"==typeof t)return e(t(o,r,i,a),n)(o,r,i,a);var s=(n?o:r).options.group.name;return!0===t||"string"==typeof t&&t===s||t.join&&t.indexOf(s)>-1}}var n={},r=t.group;r&&"object"==o(r)||(r={name:r}),n.name=r.name,n.checkPull=e(r.pull,!0),n.checkPut=e(r.put),n.revertClone=r.revertClone,t.group=n},Lt=function(){!Nt&&Z&&_(Z,"display","none")},Rt=function(){!Nt&&Z&&_(Z,"display","")};Mt&&document.addEventListener("click",function(t){if(St)return t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.stopImmediatePropagation&&t.stopImmediatePropagation(),St=!1,!1},!0);var Ft=function(t){if(q){var e=function(t,e){var n;return Et.some(function(o){if(!P(o)){var r=M(o),i=o[Y].options.emptyInsertThreshold,a=t>=r.left-i&&t<=r.right+i,l=e>=r.top-i&&e<=r.bottom+i;return i&&a&&l?n=o:void 0}}),n}((t=t.touches?t.touches[0]:t).clientX,t.clientY);if(e){var n={};for(var o in t)t.hasOwnProperty(o)&&(n[o]=t[o]);n.target=n.rootEl=e,n.preventDefault=void 0,n.stopPropagation=void 0,e[Y]._onDragOver(n)}}},$t=function(t){q&&q.parentNode[Y]._isOutsideThisEl(t.target)};function Xt(t,e){if(!t||!t.nodeType||1!==t.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(t));this.el=t,this.options=e=i({},e),t[Y]=this;var n={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(t.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return kt(t,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(t,e){t.setData("Text",e.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==Xt.supportPointer&&"PointerEvent"in window,emptyInsertThreshold:5};for(var o in U.initializePlugins(this,t,n),n)!(o in e)&&(e[o]=n[o]);for(var r in jt(e),this)"_"===r.charAt(0)&&"function"==typeof this[r]&&(this[r]=this[r].bind(this));this.nativeDraggable=!e.forceFallback&&Pt,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?m(t,"pointerdown",this._onTapStart):(m(t,"mousedown",this._onTapStart),m(t,"touchstart",this._onTapStart)),this.nativeDraggable&&(m(t,"dragover",this),m(t,"dragenter",this)),Et.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[]),i(this,H())}function Bt(t,e,n,o,r,i,a,l){var s,c,d=t[Y],h=d.options.onMove;return!window.CustomEvent||u||f?(s=document.createEvent("Event")).initEvent("move",!0,!0):s=new CustomEvent("move",{bubbles:!0,cancelable:!0}),s.to=e,s.from=t,s.dragged=n,s.draggedRect=o,s.related=r||e,s.relatedRect=i||M(e),s.willInsertAfter=l,s.originalEvent=a,t.dispatchEvent(s),h&&(c=h.call(d,s,a)),c}function Yt(t){t.draggable=!1}function Ht(){Ct=!1}function Vt(t){for(var e=t.tagName+t.className+t.src+t.href+t.textContent,n=e.length,o=0;n--;)o+=e.charCodeAt(n);return o.toString(36)}function Wt(t){return setTimeout(t,0)}function Ut(t){return clearTimeout(t)}Xt.prototype={constructor:Xt,_isOutsideThisEl:function(t){this.el.contains(t)||t===this.el||(mt=null)},_getDirection:function(t,e){return"function"==typeof this.options.direction?this.options.direction.call(this,t,e,q):this.options.direction},_onTapStart:function(t){if(t.cancelable){var e=this,n=this.el,o=this.options,r=o.preventOnFilter,i=t.type,a=t.touches&&t.touches[0]||t.pointerType&&"touch"===t.pointerType&&t,l=(a||t).target,s=t.target.shadowRoot&&(t.path&&t.path[0]||t.composedPath&&t.composedPath()[0])||l,c=o.filter;if(function(t){Tt.length=0;var e=t.getElementsByTagName("input"),n=e.length;for(;n--;){var o=e[n];o.checked&&Tt.push(o)}}(n),!q&&!(/mousedown|pointerdown/.test(i)&&0!==t.button||o.disabled||s.isContentEditable||(l=x(l,o.draggable,n,!1))&&l.animated||et===l)){if(rt=N(l),at=N(l,o.draggable),"function"==typeof c){if(c.call(this,t,l,this))return z({sortable:e,rootEl:s,name:"filter",targetEl:l,toEl:n,fromEl:n}),K("filter",e,{evt:t}),void(r&&t.cancelable&&t.preventDefault())}else if(c&&(c=c.split(",").some(function(o){if(o=x(s,o.trim(),n,!1))return z({sortable:e,rootEl:o,name:"filter",targetEl:l,fromEl:n,toEl:n}),K("filter",e,{evt:t}),!0})))return void(r&&t.cancelable&&t.preventDefault());o.handle&&!x(s,o.handle,n,!1)||this._prepareDragStart(t,a,l)}}},_prepareDragStart:function(t,e,n){var o,r=this,i=r.el,a=r.options,l=i.ownerDocument;if(n&&!q&&n.parentNode===i){var s=M(n);if(Q=i,J=(q=n).parentNode,tt=q.nextSibling,et=n,st=a.group,Xt.dragged=q,ut={target:q,clientX:(e||t).clientX,clientY:(e||t).clientY},pt=ut.clientX-s.left,vt=ut.clientY-s.top,this._lastX=(e||t).clientX,this._lastY=(e||t).clientY,q.style["will-change"]="all",o=function(){K("delayEnded",r,{evt:t}),Xt.eventCanceled?r._onDrop():(r._disableDelayedDragEvents(),!d&&r.nativeDraggable&&(q.draggable=!0),r._triggerDragStart(t,e),z({sortable:r,name:"choose",originalEvent:t}),D(q,a.chosenClass,!0))},a.ignore.split(",").forEach(function(t){C(q,t.trim(),Yt)}),m(l,"dragover",Ft),m(l,"mousemove",Ft),m(l,"touchmove",Ft),m(l,"mouseup",r._onDrop),m(l,"touchend",r._onDrop),m(l,"touchcancel",r._onDrop),d&&this.nativeDraggable&&(this.options.touchStartThreshold=4,q.draggable=!0),K("delayStart",this,{evt:t}),!a.delay||a.delayOnTouchOnly&&!e||this.nativeDraggable&&(f||u))o();else{if(Xt.eventCanceled)return void this._onDrop();m(l,"mouseup",r._disableDelayedDrag),m(l,"touchend",r._disableDelayedDrag),m(l,"touchcancel",r._disableDelayedDrag),m(l,"mousemove",r._delayedDragTouchMoveHandler),m(l,"touchmove",r._delayedDragTouchMoveHandler),a.supportPointer&&m(l,"pointermove",r._delayedDragTouchMoveHandler),r._dragStartTimer=setTimeout(o,a.delay)}}},_delayedDragTouchMoveHandler:function(t){var e=t.touches?t.touches[0]:t;Math.max(Math.abs(e.clientX-this._lastX),Math.abs(e.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){q&&Yt(q),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;b(t,"mouseup",this._disableDelayedDrag),b(t,"touchend",this._disableDelayedDrag),b(t,"touchcancel",this._disableDelayedDrag),b(t,"mousemove",this._delayedDragTouchMoveHandler),b(t,"touchmove",this._delayedDragTouchMoveHandler),b(t,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(t,e){e=e||"touch"==t.pointerType&&t,!this.nativeDraggable||e?this.options.supportPointer?m(document,"pointermove",this._onTouchMove):m(document,e?"touchmove":"mousemove",this._onTouchMove):(m(q,"dragend",this),m(Q,"dragstart",this._onDragStart));try{document.selection?Wt(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch(t){}},_dragStarted:function(t,e){if(xt=!1,Q&&q){K("dragStarted",this,{evt:e}),this.nativeDraggable&&m(document,"dragover",$t);var n=this.options;!t&&D(q,n.dragClass,!1),D(q,n.ghostClass,!0),Xt.active=this,t&&this._appendGhost(),z({sortable:this,name:"start",originalEvent:e})}else this._nulling()},_emulateDragOver:function(){if(ft){this._lastX=ft.clientX,this._lastY=ft.clientY,Lt();for(var t=document.elementFromPoint(ft.clientX,ft.clientY),e=t;t&&t.shadowRoot&&(t=t.shadowRoot.elementFromPoint(ft.clientX,ft.clientY))!==e;)e=t;if(q.parentNode[Y]._isOutsideThisEl(t),e)do{if(e[Y]){if(e[Y]._onDragOver({clientX:ft.clientX,clientY:ft.clientY,target:t,rootEl:e})&&!this.options.dragoverBubble)break}t=e}while(e=e.parentNode);Rt()}},_onTouchMove:function(t){if(ut){var e=this.options,n=e.fallbackTolerance,o=e.fallbackOffset,r=t.touches?t.touches[0]:t,i=Z&&O(Z,!0),a=Z&&i&&i.a,l=Z&&i&&i.d,s=It&&wt&&k(wt),c=(r.clientX-ut.clientX+o.x)/(a||1)+(s?s[0]-Ot[0]:0)/(a||1),u=(r.clientY-ut.clientY+o.y)/(l||1)+(s?s[1]-Ot[1]:0)/(l||1);if(!Xt.active&&!xt){if(n&&Math.max(Math.abs(r.clientX-this._lastX),Math.abs(r.clientY-this._lastY))<n)return;this._onDragStart(t,!0)}if(Z){i?(i.e+=c-(dt||0),i.f+=u-(ht||0)):i={a:1,b:0,c:0,d:1,e:c,f:u};var f="matrix(".concat(i.a,",").concat(i.b,",").concat(i.c,",").concat(i.d,",").concat(i.e,",").concat(i.f,")");_(Z,"webkitTransform",f),_(Z,"mozTransform",f),_(Z,"msTransform",f),_(Z,"transform",f),dt=c,ht=u,ft=r}t.cancelable&&t.preventDefault()}},_appendGhost:function(){if(!Z){var t=this.options.fallbackOnBody?document.body:Q,e=M(q,!0,It,!0,t),n=this.options;if(It){for(wt=t;"static"===_(wt,"position")&&"none"===_(wt,"transform")&&wt!==document;)wt=wt.parentNode;wt!==document.body&&wt!==document.documentElement?(wt===document&&(wt=T()),e.top+=wt.scrollTop,e.left+=wt.scrollLeft):wt=T(),Ot=k(wt)}D(Z=q.cloneNode(!0),n.ghostClass,!1),D(Z,n.fallbackClass,!0),D(Z,n.dragClass,!0),_(Z,"transition",""),_(Z,"transform",""),_(Z,"box-sizing","border-box"),_(Z,"margin",0),_(Z,"top",e.top),_(Z,"left",e.left),_(Z,"width",e.width),_(Z,"height",e.height),_(Z,"opacity","0.8"),_(Z,"position",It?"absolute":"fixed"),_(Z,"zIndex","100000"),_(Z,"pointerEvents","none"),Xt.ghost=Z,t.appendChild(Z),_(Z,"transform-origin",pt/parseInt(Z.style.width)*100+"% "+vt/parseInt(Z.style.height)*100+"%")}},_onDragStart:function(t,e){var n=this,o=t.dataTransfer,r=n.options;K("dragStart",this,{evt:t}),Xt.eventCanceled?this._onDrop():(K("setupClone",this),Xt.eventCanceled||((nt=$(q)).draggable=!1,nt.style["will-change"]="",this._hideClone(),D(nt,this.options.chosenClass,!1),Xt.clone=nt),n.cloneId=Wt(function(){K("clone",n),Xt.eventCanceled||(n.options.removeCloneOnHide||Q.insertBefore(nt,q),n._hideClone(),z({sortable:n,name:"clone"}))}),!e&&D(q,r.dragClass,!0),e?(St=!0,n._loopId=setInterval(n._emulateDragOver,50)):(b(document,"mouseup",n._onDrop),b(document,"touchend",n._onDrop),b(document,"touchcancel",n._onDrop),o&&(o.effectAllowed="move",r.setData&&r.setData.call(n,o,q)),m(document,"drop",n),_(q,"transform","translateZ(0)")),xt=!0,n._dragStartId=Wt(n._dragStarted.bind(n,e,t)),m(document,"selectstart",n),gt=!0,h&&_(document.body,"user-select","none"))},_onDragOver:function(t){var e,n,o,r,i=this.el,l=t.target,s=this.options,c=s.group,u=Xt.active,f=st===c,d=s.sort,h=ct||u,p=this,v=!1;if(!Ct){if(void 0!==t.preventDefault&&t.cancelable&&t.preventDefault(),l=x(l,s.draggable,i,!0),L("dragOver"),Xt.eventCanceled)return v;if(q.contains(t.target)||l.animated&&l.animatingX&&l.animatingY||p._ignoreWhileAnimating===l)return $(!1);if(St=!1,u&&!s.disabled&&(f?d||(o=!Q.contains(q)):ct===this||(this.lastPutMode=st.checkPull(this,u,q,t))&&c.checkPut(this,u,q,t))){if(r="vertical"===this._getDirection(t,l),e=M(q),L("dragOverValid"),Xt.eventCanceled)return v;if(o)return J=Q,R(),this._hideClone(),L("revert"),Xt.eventCanceled||(tt?Q.insertBefore(q,tt):Q.appendChild(q)),$(!0);var g=P(i,s.draggable);if(!g||function(t,e,n){var o=M(P(n.el,n.options.draggable));return e?t.clientX>o.right+10||t.clientX<=o.right&&t.clientY>o.bottom&&t.clientX>=o.left:t.clientX>o.right&&t.clientY>o.top||t.clientX<=o.right&&t.clientY>o.bottom+10}(t,r,this)&&!g.animated){if(g===q)return $(!1);if(g&&i===t.target&&(l=g),l&&(n=M(l)),!1!==Bt(Q,i,q,e,l,n,t,!!l))return R(),i.appendChild(q),J=i,X(),$(!0)}else if(l.parentNode===i){n=M(l);var m,b,y,w=q.parentNode!==i,S=!function(t,e,n){var o=n?t.left:t.top,r=n?t.right:t.bottom,i=n?t.width:t.height,a=n?e.left:e.top,l=n?e.right:e.bottom,s=n?e.width:e.height;return o===a||r===l||o+i/2===a+s/2}(q.animated&&q.toRect||e,l.animated&&l.toRect||n,r),E=r?"top":"left",O=I(l,"top","top")||I(q,"top","top"),C=O?O.scrollTop:void 0;if(mt!==l&&(b=n[E],Dt=!1,_t=!S&&s.invertSwap||w),0!==(m=function(t,e,n,o,r,i,a,l){var s=o?t.clientY:t.clientX,c=o?n.height:n.width,u=o?n.top:n.left,f=o?n.bottom:n.right,d=!1;if(!a)if(l&&yt<c*r){if(!Dt&&(1===bt?s>u+c*i/2:s<f-c*i/2)&&(Dt=!0),Dt)d=!0;else if(1===bt?s<u+yt:s>f-yt)return-bt}else if(s>u+c*(1-r)/2&&s<f-c*(1-r)/2)return function(t){return N(q)<N(t)?1:-1}(e);if((d=d||a)&&(s<u+c*i/2||s>f-c*i/2))return s>u+c/2?1:-1;return 0}(t,l,n,r,S?1:s.swapThreshold,null==s.invertedSwapThreshold?s.swapThreshold:s.invertedSwapThreshold,_t,mt===l))){var T=N(q);do{T-=m,y=J.children[T]}while(y&&("none"===_(y,"display")||y===Z))}if(0===m||y===l)return $(!1);mt=l,bt=m;var A=l.nextElementSibling,k=!1,j=Bt(Q,i,q,e,l,n,t,k=1===m);if(!1!==j)return 1!==j&&-1!==j||(k=1===j),Ct=!0,setTimeout(Ht,30),R(),k&&!A?i.appendChild(q):l.parentNode.insertBefore(q,k?A:l),O&&F(O,0,C-O.scrollTop),J=q.parentNode,void 0===b||_t||(yt=Math.abs(b-M(l)[E])),X(),$(!0)}if(i.contains(q))return $(!1)}return!1}function L(s,c){K(s,p,a({evt:t,isOwner:f,axis:r?"vertical":"horizontal",revert:o,dragRect:e,targetRect:n,canSort:d,fromSortable:h,target:l,completed:$,onMove:function(n,o){return Bt(Q,i,q,e,n,M(n),t,o)},changed:X},c))}function R(){L("dragOverAnimationCapture"),p.captureAnimationState(),p!==h&&h.captureAnimationState()}function $(e){return L("dragOverCompleted",{insertion:e}),e&&(f?u._hideClone():u._showClone(p),p!==h&&(D(q,ct?ct.options.ghostClass:u.options.ghostClass,!1),D(q,s.ghostClass,!0)),ct!==p&&p!==Xt.active?ct=p:p===Xt.active&&ct&&(ct=null),h===p&&(p._ignoreWhileAnimating=l),p.animateAll(function(){L("dragOverAnimationComplete"),p._ignoreWhileAnimating=null}),p!==h&&(h.animateAll(),h._ignoreWhileAnimating=null)),(l===q&&!q.animated||l===i&&!l.animated)&&(mt=null),s.dragoverBubble||t.rootEl||l===document||(q.parentNode[Y]._isOutsideThisEl(t.target),!e&&Ft(t)),!s.dragoverBubble&&t.stopPropagation&&t.stopPropagation(),v=!0}function X(){it=N(q),lt=N(q,s.draggable),z({sortable:p,name:"change",toEl:i,newIndex:it,newDraggableIndex:lt,originalEvent:t})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){b(document,"mousemove",this._onTouchMove),b(document,"touchmove",this._onTouchMove),b(document,"pointermove",this._onTouchMove),b(document,"dragover",Ft),b(document,"mousemove",Ft),b(document,"touchmove",Ft)},_offUpEvents:function(){var t=this.el.ownerDocument;b(t,"mouseup",this._onDrop),b(t,"touchend",this._onDrop),b(t,"pointerup",this._onDrop),b(t,"touchcancel",this._onDrop),b(document,"selectstart",this)},_onDrop:function(t){var e=this.el,n=this.options;it=N(q),lt=N(q,n.draggable),K("drop",this,{evt:t}),J=q&&q.parentNode,it=N(q),lt=N(q,n.draggable),Xt.eventCanceled?this._nulling():(xt=!1,_t=!1,Dt=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),Ut(this.cloneId),Ut(this._dragStartId),this.nativeDraggable&&(b(document,"drop",this),b(e,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),h&&_(document.body,"user-select",""),_(q,"transform",""),t&&(gt&&(t.cancelable&&t.preventDefault(),!n.dropBubble&&t.stopPropagation()),Z&&Z.parentNode&&Z.parentNode.removeChild(Z),(Q===J||ct&&"clone"!==ct.lastPutMode)&&nt&&nt.parentNode&&nt.parentNode.removeChild(nt),q&&(this.nativeDraggable&&b(q,"dragend",this),Yt(q),q.style["will-change"]="",gt&&!xt&&D(q,ct?ct.options.ghostClass:this.options.ghostClass,!1),D(q,this.options.chosenClass,!1),z({sortable:this,name:"unchoose",toEl:J,newIndex:null,newDraggableIndex:null,originalEvent:t}),Q!==J?(it>=0&&(z({rootEl:J,name:"add",toEl:J,fromEl:Q,originalEvent:t}),z({sortable:this,name:"remove",toEl:J,originalEvent:t}),z({rootEl:J,name:"sort",toEl:J,fromEl:Q,originalEvent:t}),z({sortable:this,name:"sort",toEl:J,originalEvent:t})),ct&&ct.save()):it!==rt&&it>=0&&(z({sortable:this,name:"update",toEl:J,originalEvent:t}),z({sortable:this,name:"sort",toEl:J,originalEvent:t})),Xt.active&&(null!=it&&-1!==it||(it=rt,lt=at),z({sortable:this,name:"end",toEl:J,originalEvent:t}),this.save()))),this._nulling())},_nulling:function(){K("nulling",this),Q=q=J=Z=tt=nt=et=ot=ut=ft=gt=it=lt=rt=at=mt=bt=ct=st=Xt.dragged=Xt.ghost=Xt.clone=Xt.active=null,Tt.forEach(function(t){t.checked=!0}),Tt.length=dt=ht=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragenter":case"dragover":q&&(this._onDragOver(t),function(t){t.dataTransfer&&(t.dataTransfer.dropEffect="move");t.cancelable&&t.preventDefault()}(t));break;case"selectstart":t.preventDefault()}},toArray:function(){for(var t,e=[],n=this.el.children,o=0,r=n.length,i=this.options;o<r;o++)x(t=n[o],i.draggable,this.el,!1)&&e.push(t.getAttribute(i.dataIdAttr)||Vt(t));return e},sort:function(t){var e={},n=this.el;this.toArray().forEach(function(t,o){var r=n.children[o];x(r,this.options.draggable,n,!1)&&(e[t]=r)},this),t.forEach(function(t){e[t]&&(n.removeChild(e[t]),n.appendChild(e[t]))})},save:function(){var t=this.options.store;t&&t.set&&t.set(this)},closest:function(t,e){return x(t,e||this.options.draggable,this.el,!1)},option:function(t,e){var n=this.options;if(void 0===e)return n[t];var o=U.modifyOption(this,t,e);n[t]=void 0!==o?o:e,"group"===t&&jt(n)},destroy:function(){K("destroy",this);var t=this.el;t[Y]=null,b(t,"mousedown",this._onTapStart),b(t,"touchstart",this._onTapStart),b(t,"pointerdown",this._onTapStart),this.nativeDraggable&&(b(t,"dragover",this),b(t,"dragenter",this)),Array.prototype.forEach.call(t.querySelectorAll("[draggable]"),function(t){t.removeAttribute("draggable")}),this._onDrop(),this._disableDelayedDragEvents(),Et.splice(Et.indexOf(this.el),1),this.el=t=null},_hideClone:function(){if(!ot){if(K("hideClone",this),Xt.eventCanceled)return;_(nt,"display","none"),this.options.removeCloneOnHide&&nt.parentNode&&nt.parentNode.removeChild(nt),ot=!0}},_showClone:function(t){if("clone"===t.lastPutMode){if(ot){if(K("showClone",this),Xt.eventCanceled)return;Q.contains(q)&&!this.options.group.revertClone?Q.insertBefore(nt,q):tt?Q.insertBefore(nt,tt):Q.appendChild(nt),this.options.group.revertClone&&this.animate(q,nt),_(nt,"display",""),ot=!1}}else this._hideClone()}},Mt&&m(document,"touchmove",function(t){(Xt.active||xt)&&t.cancelable&&t.preventDefault()}),Xt.utils={on:m,off:b,css:_,find:C,is:function(t,e){return!!x(t,e,t,!1)},extend:function(t,e){if(t&&e)for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t},throttle:R,closest:x,toggleClass:D,clone:$,index:N,nextTick:Wt,cancelNextTick:Ut,detectDirection:kt,getChild:A},Xt.get=function(t){return t[Y]},Xt.mount=function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];e[0].constructor===Array&&(e=e[0]),e.forEach(function(t){if(!t.prototype||!t.prototype.constructor)throw"Sortable: Mounted plugin must be a constructor function, not ".concat({}.toString.call(t));t.utils&&(Xt.utils=a({},Xt.utils,t.utils)),U.mount(t)})},Xt.create=function(t,e){return new Xt(t,e)},Xt.version="1.10.2";var Gt,Kt,zt,qt,Jt,Zt,Qt=[],te=!1;function ee(){Qt.forEach(function(t){clearInterval(t.pid)}),Qt=[]}function ne(){clearInterval(Zt)}var oe,re=R(function(t,e,n,o){if(e.scroll){var r,i=(t.touches?t.touches[0]:t).clientX,a=(t.touches?t.touches[0]:t).clientY,l=e.scrollSensitivity,s=e.scrollSpeed,c=T(),u=!1;Kt!==n&&(Kt=n,ee(),Gt=e.scroll,r=e.scrollFn,!0===Gt&&(Gt=j(n,!0)));var f=0,d=Gt;do{var h=d,p=M(h),v=p.top,g=p.bottom,m=p.left,b=p.right,y=p.width,w=p.height,x=void 0,S=void 0,E=h.scrollWidth,D=h.scrollHeight,O=_(h),C=h.scrollLeft,I=h.scrollTop;h===c?(x=y<E&&("auto"===O.overflowX||"scroll"===O.overflowX||"visible"===O.overflowX),S=w<D&&("auto"===O.overflowY||"scroll"===O.overflowY||"visible"===O.overflowY)):(x=y<E&&("auto"===O.overflowX||"scroll"===O.overflowX),S=w<D&&("auto"===O.overflowY||"scroll"===O.overflowY));var A=x&&(Math.abs(b-i)<=l&&C+y<E)-(Math.abs(m-i)<=l&&!!C),P=S&&(Math.abs(g-a)<=l&&I+w<D)-(Math.abs(v-a)<=l&&!!I);if(!Qt[f])for(var N=0;N<=f;N++)Qt[N]||(Qt[N]={});Qt[f].vx==A&&Qt[f].vy==P&&Qt[f].el===h||(Qt[f].el=h,Qt[f].vx=A,Qt[f].vy=P,clearInterval(Qt[f].pid),0==A&&0==P||(u=!0,Qt[f].pid=setInterval(function(){o&&0===this.layer&&Xt.active._onTouchMove(Jt);var e=Qt[this.layer].vy?Qt[this.layer].vy*s:0,n=Qt[this.layer].vx?Qt[this.layer].vx*s:0;"function"==typeof r&&"continue"!==r.call(Xt.dragged.parentNode[Y],n,e,t,Jt,Qt[this.layer].el)||F(Qt[this.layer].el,n,e)}.bind({layer:f}),24))),f++}while(e.bubbleScroll&&d!==c&&(d=j(d,!1)));te=u}},30),ie=function(t){var e=t.originalEvent,n=t.putSortable,o=t.dragEl,r=t.activeSortable,i=t.dispatchSortableEvent,a=t.hideGhostForTarget,l=t.unhideGhostForTarget;if(e){var s=n||r;a();var c=e.changedTouches&&e.changedTouches.length?e.changedTouches[0]:e,u=document.elementFromPoint(c.clientX,c.clientY);l(),s&&!s.el.contains(u)&&(i("spill"),this.onSpill({dragEl:o,putSortable:n}))}};function ae(){}function le(){}function se(){function t(){this.defaults={swapClass:"sortable-swap-highlight"}}return t.prototype={dragStart:function(t){var e=t.dragEl;oe=e},dragOverValid:function(t){var e=t.completed,n=t.target,o=t.onMove,r=t.activeSortable,i=t.changed,a=t.cancel;if(r.options.swap){var l=this.sortable.el,s=this.options;if(n&&n!==l){var c=oe;!1!==o(n)?(D(n,s.swapClass,!0),oe=n):oe=null,c&&c!==oe&&D(c,s.swapClass,!1)}i(),e(!0),a()}},drop:function(t){var e=t.activeSortable,n=t.putSortable,o=t.dragEl,r=n||this.sortable,i=this.options;oe&&D(oe,i.swapClass,!1),oe&&(i.swap||n&&n.options.swap)&&o!==oe&&(r.captureAnimationState(),r!==e&&e.captureAnimationState(),function(t,e){var n,o,r=t.parentNode,i=e.parentNode;if(!r||!i||r.isEqualNode(e)||i.isEqualNode(t))return;n=N(t),o=N(e),r.isEqualNode(i)&&n<o&&o++;r.insertBefore(e,r.children[n]),i.insertBefore(t,i.children[o])}(o,oe),r.animateAll(),r!==e&&e.animateAll())},nulling:function(){oe=null}},i(t,{pluginName:"swap",eventProperties:function(){return{swapItem:oe}}})}ae.prototype={startIndex:null,dragStart:function(t){var e=t.oldDraggableIndex;this.startIndex=e},onSpill:function(t){var e=t.dragEl,n=t.putSortable;this.sortable.captureAnimationState(),n&&n.captureAnimationState();var o=A(this.sortable.el,this.startIndex,this.options);o?this.sortable.el.insertBefore(e,o):this.sortable.el.appendChild(e),this.sortable.animateAll(),n&&n.animateAll()},drop:ie},i(ae,{pluginName:"revertOnSpill"}),le.prototype={onSpill:function(t){var e=t.dragEl,n=t.putSortable||this.sortable;n.captureAnimationState(),e.parentNode&&e.parentNode.removeChild(e),n.animateAll()},drop:ie},i(le,{pluginName:"removeOnSpill"});var ce,ue,fe,de,he,pe=[],ve=[],ge=!1,me=!1,be=!1;function ye(){function t(t){for(var e in this)"_"===e.charAt(0)&&"function"==typeof this[e]&&(this[e]=this[e].bind(this));t.options.supportPointer?m(document,"pointerup",this._deselectMultiDrag):(m(document,"mouseup",this._deselectMultiDrag),m(document,"touchend",this._deselectMultiDrag)),m(document,"keydown",this._checkKeyDown),m(document,"keyup",this._checkKeyUp),this.defaults={selectedClass:"sortable-selected",multiDragKey:null,setData:function(e,n){var o="";pe.length&&ue===t?pe.forEach(function(t,e){o+=(e?", ":"")+t.textContent}):o=n.textContent,e.setData("Text",o)}}}return t.prototype={multiDragKeyDown:!1,isMultiDrag:!1,delayStartGlobal:function(t){var e=t.dragEl;fe=e},delayEnded:function(){this.isMultiDrag=~pe.indexOf(fe)},setupClone:function(t){var e=t.sortable,n=t.cancel;if(this.isMultiDrag){for(var o=0;o<pe.length;o++)ve.push($(pe[o])),ve[o].sortableIndex=pe[o].sortableIndex,ve[o].draggable=!1,ve[o].style["will-change"]="",D(ve[o],this.options.selectedClass,!1),pe[o]===fe&&D(ve[o],this.options.chosenClass,!1);e._hideClone(),n()}},clone:function(t){var e=t.sortable,n=t.rootEl,o=t.dispatchSortableEvent,r=t.cancel;this.isMultiDrag&&(this.options.removeCloneOnHide||pe.length&&ue===e&&(we(!0,n),o("clone"),r()))},showClone:function(t){var e=t.cloneNowShown,n=t.rootEl,o=t.cancel;this.isMultiDrag&&(we(!1,n),ve.forEach(function(t){_(t,"display","")}),e(),he=!1,o())},hideClone:function(t){var e=this,n=(t.sortable,t.cloneNowHidden),o=t.cancel;this.isMultiDrag&&(ve.forEach(function(t){_(t,"display","none"),e.options.removeCloneOnHide&&t.parentNode&&t.parentNode.removeChild(t)}),n(),he=!0,o())},dragStartGlobal:function(t){t.sortable;!this.isMultiDrag&&ue&&ue.multiDrag._deselectMultiDrag(),pe.forEach(function(t){t.sortableIndex=N(t)}),pe=pe.sort(function(t,e){return t.sortableIndex-e.sortableIndex}),be=!0},dragStarted:function(t){var e=this,n=t.sortable;if(this.isMultiDrag){if(this.options.sort&&(n.captureAnimationState(),this.options.animation)){pe.forEach(function(t){t!==fe&&_(t,"position","absolute")});var o=M(fe,!1,!0,!0);pe.forEach(function(t){t!==fe&&X(t,o)}),me=!0,ge=!0}n.animateAll(function(){me=!1,ge=!1,e.options.animation&&pe.forEach(function(t){B(t)}),e.options.sort&&xe()})}},dragOver:function(t){var e=t.target,n=t.completed,o=t.cancel;me&&~pe.indexOf(e)&&(n(!1),o())},revert:function(t){var e=t.fromSortable,n=t.rootEl,o=t.sortable,r=t.dragRect;pe.length>1&&(pe.forEach(function(t){o.addAnimationState({target:t,rect:me?M(t):r}),B(t),t.fromRect=r,e.removeAnimationState(t)}),me=!1,function(t,e){pe.forEach(function(n,o){var r=e.children[n.sortableIndex+(t?Number(o):0)];r?e.insertBefore(n,r):e.appendChild(n)})}(!this.options.removeCloneOnHide,n))},dragOverCompleted:function(t){var e=t.sortable,n=t.isOwner,o=t.insertion,r=t.activeSortable,i=t.parentEl,a=t.putSortable,l=this.options;if(o){if(n&&r._hideClone(),ge=!1,l.animation&&pe.length>1&&(me||!n&&!r.options.sort&&!a)){var s=M(fe,!1,!0,!0);pe.forEach(function(t){t!==fe&&(X(t,s),i.appendChild(t))}),me=!0}if(!n)if(me||xe(),pe.length>1){var c=he;r._showClone(e),r.options.animation&&!he&&c&&ve.forEach(function(t){r.addAnimationState({target:t,rect:de}),t.fromRect=de,t.thisAnimationDuration=null})}else r._showClone(e)}},dragOverAnimationCapture:function(t){var e=t.dragRect,n=t.isOwner,o=t.activeSortable;if(pe.forEach(function(t){t.thisAnimationDuration=null}),o.options.animation&&!n&&o.multiDrag.isMultiDrag){de=i({},e);var r=O(fe,!0);de.top-=r.f,de.left-=r.e}},dragOverAnimationComplete:function(){me&&(me=!1,xe())},drop:function(t){var e=t.originalEvent,n=t.rootEl,o=t.parentEl,r=t.sortable,i=t.dispatchSortableEvent,a=t.oldIndex,l=t.putSortable,s=l||this.sortable;if(e){var c=this.options,u=o.children;if(!be)if(c.multiDragKey&&!this.multiDragKeyDown&&this._deselectMultiDrag(),D(fe,c.selectedClass,!~pe.indexOf(fe)),~pe.indexOf(fe))pe.splice(pe.indexOf(fe),1),ce=null,G({sortable:r,rootEl:n,name:"deselect",targetEl:fe,originalEvt:e});else{if(pe.push(fe),G({sortable:r,rootEl:n,name:"select",targetEl:fe,originalEvt:e}),e.shiftKey&&ce&&r.el.contains(ce)){var f,d,h=N(ce),p=N(fe);if(~h&&~p&&h!==p)for(p>h?(d=h,f=p):(d=p,f=h+1);d<f;d++)~pe.indexOf(u[d])||(D(u[d],c.selectedClass,!0),pe.push(u[d]),G({sortable:r,rootEl:n,name:"select",targetEl:u[d],originalEvt:e}))}else ce=fe;ue=s}if(be&&this.isMultiDrag){if((o[Y].options.sort||o!==n)&&pe.length>1){var v=M(fe),g=N(fe,":not(."+this.options.selectedClass+")");if(!ge&&c.animation&&(fe.thisAnimationDuration=null),s.captureAnimationState(),!ge&&(c.animation&&(fe.fromRect=v,pe.forEach(function(t){if(t.thisAnimationDuration=null,t!==fe){var e=me?M(t):v;t.fromRect=e,s.addAnimationState({target:t,rect:e})}})),xe(),pe.forEach(function(t){u[g]?o.insertBefore(t,u[g]):o.appendChild(t),g++}),a===N(fe))){var m=!1;pe.forEach(function(t){t.sortableIndex===N(t)||(m=!0)}),m&&i("update")}pe.forEach(function(t){B(t)}),s.animateAll()}ue=s}(n===o||l&&"clone"!==l.lastPutMode)&&ve.forEach(function(t){t.parentNode&&t.parentNode.removeChild(t)})}},nullingGlobal:function(){this.isMultiDrag=be=!1,ve.length=0},destroyGlobal:function(){this._deselectMultiDrag(),b(document,"pointerup",this._deselectMultiDrag),b(document,"mouseup",this._deselectMultiDrag),b(document,"touchend",this._deselectMultiDrag),b(document,"keydown",this._checkKeyDown),b(document,"keyup",this._checkKeyUp)},_deselectMultiDrag:function(t){if(!(void 0!==be&&be||ue!==this.sortable||t&&x(t.target,this.options.draggable,this.sortable.el,!1)||t&&0!==t.button))for(;pe.length;){var e=pe[0];D(e,this.options.selectedClass,!1),pe.shift(),G({sortable:this.sortable,rootEl:this.sortable.el,name:"deselect",targetEl:e,originalEvt:t})}},_checkKeyDown:function(t){t.key===this.options.multiDragKey&&(this.multiDragKeyDown=!0)},_checkKeyUp:function(t){t.key===this.options.multiDragKey&&(this.multiDragKeyDown=!1)}},i(t,{pluginName:"multiDrag",utils:{select:function(t){var e=t.parentNode[Y];e&&e.options.multiDrag&&!~pe.indexOf(t)&&(ue&&ue!==e&&(ue.multiDrag._deselectMultiDrag(),ue=e),D(t,e.options.selectedClass,!0),pe.push(t))},deselect:function(t){var e=t.parentNode[Y],n=pe.indexOf(t);e&&e.options.multiDrag&&~n&&(D(t,e.options.selectedClass,!1),pe.splice(n,1))}},eventProperties:function(){var t=this,e=[],n=[];return pe.forEach(function(o){var r;e.push({multiDragElement:o,index:o.sortableIndex}),r=me&&o!==fe?-1:me?N(o,":not(."+t.options.selectedClass+")"):N(o),n.push({multiDragElement:o,index:r})}),{items:s(pe),clones:[].concat(ve),oldIndicies:e,newIndicies:n}},optionListeners:{multiDragKey:function(t){return"ctrl"===(t=t.toLowerCase())?t="Control":t.length>1&&(t=t.charAt(0).toUpperCase()+t.substr(1)),t}}})}function we(t,e){ve.forEach(function(n,o){var r=e.children[n.sortableIndex+(t?Number(o):0)];r?e.insertBefore(n,r):e.appendChild(n)})}function xe(){pe.forEach(function(t){t!==fe&&t.parentNode&&t.parentNode.removeChild(t)})}Xt.mount(new function(){function t(){for(var t in this.defaults={scroll:!0,scrollSensitivity:30,scrollSpeed:10,bubbleScroll:!0},this)"_"===t.charAt(0)&&"function"==typeof this[t]&&(this[t]=this[t].bind(this))}return t.prototype={dragStarted:function(t){var e=t.originalEvent;this.sortable.nativeDraggable?m(document,"dragover",this._handleAutoScroll):this.options.supportPointer?m(document,"pointermove",this._handleFallbackAutoScroll):e.touches?m(document,"touchmove",this._handleFallbackAutoScroll):m(document,"mousemove",this._handleFallbackAutoScroll)},dragOverCompleted:function(t){var e=t.originalEvent;this.options.dragOverBubble||e.rootEl||this._handleAutoScroll(e)},drop:function(){this.sortable.nativeDraggable?b(document,"dragover",this._handleAutoScroll):(b(document,"pointermove",this._handleFallbackAutoScroll),b(document,"touchmove",this._handleFallbackAutoScroll),b(document,"mousemove",this._handleFallbackAutoScroll)),ne(),ee(),clearTimeout(S),S=void 0},nulling:function(){Jt=Kt=Gt=te=Zt=zt=qt=null,Qt.length=0},_handleFallbackAutoScroll:function(t){this._handleAutoScroll(t,!0)},_handleAutoScroll:function(t,e){var n=this,o=(t.touches?t.touches[0]:t).clientX,r=(t.touches?t.touches[0]:t).clientY,i=document.elementFromPoint(o,r);if(Jt=t,e||f||u||h){re(t,this.options,i,e);var a=j(i,!0);!te||Zt&&o===zt&&r===qt||(Zt&&ne(),Zt=setInterval(function(){var i=j(document.elementFromPoint(o,r),!0);i!==a&&(a=i,ee()),re(t,n.options,i,e)},10),zt=o,qt=r)}else{if(!this.options.bubbleScroll||j(i,!0)===T())return void ee();re(t,this.options,j(i,!1),!1)}}},i(t,{pluginName:"scroll",initializeByDefault:!0})}),Xt.mount(le,ae),e.default=Xt},MzXy:function(t,e,n){!function(e,o){t.exports=o(n("JID6"))}("undefined"!=typeof self&&self,function(t){return function(t){var e={};function n(o){if(e[o])return e[o].exports;var r=e[o]={i:o,l:!1,exports:{}};return t[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=t,n.c=e,n.d=function(t,e,o){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)n.d(o,r,function(e){return t[e]}.bind(null,r));return o},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s="fb15")}({"01f9":function(t,e,n){"use strict";var o=n("2d00"),r=n("5ca1"),i=n("2aba"),a=n("32e9"),l=n("84f2"),s=n("41a0"),c=n("7f20"),u=n("38fd"),f=n("2b4c")("iterator"),d=!([].keys&&"next"in[].keys()),h=function(){return this};t.exports=function(t,e,n,p,v,g,m){s(n,e,p);var b,y,w,x=function(t){if(!d&&t in _)return _[t];switch(t){case"keys":case"values":return function(){return new n(this,t)}}return function(){return new n(this,t)}},S=e+" Iterator",E="values"==v,D=!1,_=t.prototype,O=_[f]||_["@@iterator"]||v&&_[v],C=O||x(v),T=v?E?x("entries"):C:void 0,M="Array"==e&&_.entries||O;if(M&&(w=u(M.call(new t)))!==Object.prototype&&w.next&&(c(w,S,!0),o||"function"==typeof w[f]||a(w,f,h)),E&&O&&"values"!==O.name&&(D=!0,C=function(){return O.call(this)}),o&&!m||!d&&!D&&_[f]||a(_,f,C),l[e]=C,l[S]=h,v)if(b={values:E?C:x("values"),keys:g?C:x("keys"),entries:T},m)for(y in b)y in _||i(_,y,b[y]);else r(r.P+r.F*(d||D),e,b);return b}},"02f4":function(t,e,n){var o=n("4588"),r=n("be13");t.exports=function(t){return function(e,n){var i,a,l=String(r(e)),s=o(n),c=l.length;return s<0||s>=c?t?"":void 0:(i=l.charCodeAt(s))<55296||i>56319||s+1===c||(a=l.charCodeAt(s+1))<56320||a>57343?t?l.charAt(s):i:t?l.slice(s,s+2):a-56320+(i-55296<<10)+65536}}},"0390":function(t,e,n){"use strict";var o=n("02f4")(!0);t.exports=function(t,e,n){return e+(n?o(t,e).length:1)}},"0bfb":function(t,e,n){"use strict";var o=n("cb7c");t.exports=function(){var t=o(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},"0d58":function(t,e,n){var o=n("ce10"),r=n("e11e");t.exports=Object.keys||function(t){return o(t,r)}},1495:function(t,e,n){var o=n("86cc"),r=n("cb7c"),i=n("0d58");t.exports=n("9e1e")?Object.defineProperties:function(t,e){r(t);for(var n,a=i(e),l=a.length,s=0;l>s;)o.f(t,n=a[s++],e[n]);return t}},"214f":function(t,e,n){"use strict";n("b0c5");var o=n("2aba"),r=n("32e9"),i=n("79e5"),a=n("be13"),l=n("2b4c"),s=n("520a"),c=l("species"),u=!i(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")}),f=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();t.exports=function(t,e,n){var d=l(t),h=!i(function(){var e={};return e[d]=function(){return 7},7!=""[t](e)}),p=h?!i(function(){var e=!1,n=/a/;return n.exec=function(){return e=!0,null},"split"===t&&(n.constructor={},n.constructor[c]=function(){return n}),n[d](""),!e}):void 0;if(!h||!p||"replace"===t&&!u||"split"===t&&!f){var v=/./[d],g=n(a,d,""[t],function(t,e,n,o,r){return e.exec===s?h&&!r?{done:!0,value:v.call(e,n,o)}:{done:!0,value:t.call(n,e,o)}:{done:!1}}),m=g[0],b=g[1];o(String.prototype,t,m),r(RegExp.prototype,d,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}}},"230e":function(t,e,n){var o=n("d3f4"),r=n("7726").document,i=o(r)&&o(r.createElement);t.exports=function(t){return i?r.createElement(t):{}}},"23c6":function(t,e,n){var o=n("2d95"),r=n("2b4c")("toStringTag"),i="Arguments"==o(function(){return arguments}());t.exports=function(t){var e,n,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),r))?n:i?o(e):"Object"==(a=o(e))&&"function"==typeof e.callee?"Arguments":a}},2621:function(t,e){e.f=Object.getOwnPropertySymbols},"2aba":function(t,e,n){var o=n("7726"),r=n("32e9"),i=n("69a8"),a=n("ca5a")("src"),l=n("fa5b"),s=(""+l).split("toString");n("8378").inspectSource=function(t){return l.call(t)},(t.exports=function(t,e,n,l){var c="function"==typeof n;c&&(i(n,"name")||r(n,"name",e)),t[e]!==n&&(c&&(i(n,a)||r(n,a,t[e]?""+t[e]:s.join(String(e)))),t===o?t[e]=n:l?t[e]?t[e]=n:r(t,e,n):(delete t[e],r(t,e,n)))})(Function.prototype,"toString",function(){return"function"==typeof this&&this[a]||l.call(this)})},"2aeb":function(t,e,n){var o=n("cb7c"),r=n("1495"),i=n("e11e"),a=n("613b")("IE_PROTO"),l=function(){},s=function(){var t,e=n("230e")("iframe"),o=i.length;for(e.style.display="none",n("fab2").appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),s=t.F;o--;)delete s.prototype[i[o]];return s()};t.exports=Object.create||function(t,e){var n;return null!==t?(l.prototype=o(t),n=new l,l.prototype=null,n[a]=t):n=s(),void 0===e?n:r(n,e)}},"2b4c":function(t,e,n){var o=n("5537")("wks"),r=n("ca5a"),i=n("7726").Symbol,a="function"==typeof i;(t.exports=function(t){return o[t]||(o[t]=a&&i[t]||(a?i:r)("Symbol."+t))}).store=o},"2d00":function(t,e){t.exports=!1},"2d95":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"2fdb":function(t,e,n){"use strict";var o=n("5ca1"),r=n("d2c8");o(o.P+o.F*n("5147")("includes"),"String",{includes:function(t){return!!~r(this,t,"includes").indexOf(t,arguments.length>1?arguments[1]:void 0)}})},"32e9":function(t,e,n){var o=n("86cc"),r=n("4630");t.exports=n("9e1e")?function(t,e,n){return o.f(t,e,r(1,n))}:function(t,e,n){return t[e]=n,t}},"38fd":function(t,e,n){var o=n("69a8"),r=n("4bf8"),i=n("613b")("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=r(t),o(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},"41a0":function(t,e,n){"use strict";var o=n("2aeb"),r=n("4630"),i=n("7f20"),a={};n("32e9")(a,n("2b4c")("iterator"),function(){return this}),t.exports=function(t,e,n){t.prototype=o(a,{next:r(1,n)}),i(t,e+" Iterator")}},"456d":function(t,e,n){var o=n("4bf8"),r=n("0d58");n("5eda")("keys",function(){return function(t){return r(o(t))}})},4588:function(t,e){var n=Math.ceil,o=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?o:n)(t)}},4630:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"4bf8":function(t,e,n){var o=n("be13");t.exports=function(t){return Object(o(t))}},5147:function(t,e,n){var o=n("2b4c")("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[o]=!1,!"/./"[t](e)}catch(t){}}return!0}},"520a":function(t,e,n){"use strict";var o=n("0bfb"),r=RegExp.prototype.exec,i=String.prototype.replace,a=r,l=function(){var t=/a/,e=/b*/g;return r.call(t,"a"),r.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),s=void 0!==/()??/.exec("")[1];(l||s)&&(a=function(t){var e,n,a,c,u=this;return s&&(n=new RegExp("^"+u.source+"$(?!\\s)",o.call(u))),l&&(e=u.lastIndex),a=r.call(u,t),l&&a&&(u.lastIndex=u.global?a.index+a[0].length:e),s&&a&&a.length>1&&i.call(a[0],n,function(){for(c=1;c<arguments.length-2;c++)void 0===arguments[c]&&(a[c]=void 0)}),a}),t.exports=a},"52a7":function(t,e){e.f={}.propertyIsEnumerable},5537:function(t,e,n){var o=n("8378"),r=n("7726"),i=r["__core-js_shared__"]||(r["__core-js_shared__"]={});(t.exports=function(t,e){return i[t]||(i[t]=void 0!==e?e:{})})("versions",[]).push({version:o.version,mode:n("2d00")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},"5ca1":function(t,e,n){var o=n("7726"),r=n("8378"),i=n("32e9"),a=n("2aba"),l=n("9b43"),s=function(t,e,n){var c,u,f,d,h=t&s.F,p=t&s.G,v=t&s.S,g=t&s.P,m=t&s.B,b=p?o:v?o[e]||(o[e]={}):(o[e]||{}).prototype,y=p?r:r[e]||(r[e]={}),w=y.prototype||(y.prototype={});for(c in p&&(n=e),n)f=((u=!h&&b&&void 0!==b[c])?b:n)[c],d=m&&u?l(f,o):g&&"function"==typeof f?l(Function.call,f):f,b&&a(b,c,f,t&s.U),y[c]!=f&&i(y,c,d),g&&w[c]!=f&&(w[c]=f)};o.core=r,s.F=1,s.G=2,s.S=4,s.P=8,s.B=16,s.W=32,s.U=64,s.R=128,t.exports=s},"5eda":function(t,e,n){var o=n("5ca1"),r=n("8378"),i=n("79e5");t.exports=function(t,e){var n=(r.Object||{})[t]||Object[t],a={};a[t]=e(n),o(o.S+o.F*i(function(){n(1)}),"Object",a)}},"5f1b":function(t,e,n){"use strict";var o=n("23c6"),r=RegExp.prototype.exec;t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==o(t))throw new TypeError("RegExp#exec called on incompatible receiver");return r.call(t,e)}},"613b":function(t,e,n){var o=n("5537")("keys"),r=n("ca5a");t.exports=function(t){return o[t]||(o[t]=r(t))}},"626a":function(t,e,n){var o=n("2d95");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==o(t)?t.split(""):Object(t)}},6762:function(t,e,n){"use strict";var o=n("5ca1"),r=n("c366")(!0);o(o.P,"Array",{includes:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),n("9c6c")("includes")},6821:function(t,e,n){var o=n("626a"),r=n("be13");t.exports=function(t){return o(r(t))}},"69a8":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"6a99":function(t,e,n){var o=n("d3f4");t.exports=function(t,e){if(!o(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!o(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!o(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!o(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")}},7333:function(t,e,n){"use strict";var o=n("0d58"),r=n("2621"),i=n("52a7"),a=n("4bf8"),l=n("626a"),s=Object.assign;t.exports=!s||n("79e5")(function(){var t={},e={},n=Symbol(),o="abcdefghijklmnopqrst";return t[n]=7,o.split("").forEach(function(t){e[t]=t}),7!=s({},t)[n]||Object.keys(s({},e)).join("")!=o})?function(t,e){for(var n=a(t),s=arguments.length,c=1,u=r.f,f=i.f;s>c;)for(var d,h=l(arguments[c++]),p=u?o(h).concat(u(h)):o(h),v=p.length,g=0;v>g;)f.call(h,d=p[g++])&&(n[d]=h[d]);return n}:s},7726:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},"77f1":function(t,e,n){var o=n("4588"),r=Math.max,i=Math.min;t.exports=function(t,e){return(t=o(t))<0?r(t+e,0):i(t,e)}},"79e5":function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},"7f20":function(t,e,n){var o=n("86cc").f,r=n("69a8"),i=n("2b4c")("toStringTag");t.exports=function(t,e,n){t&&!r(t=n?t:t.prototype,i)&&o(t,i,{configurable:!0,value:e})}},8378:function(t,e){var n=t.exports={version:"2.6.5"};"number"==typeof __e&&(__e=n)},"84f2":function(t,e){t.exports={}},"86cc":function(t,e,n){var o=n("cb7c"),r=n("c69a"),i=n("6a99"),a=Object.defineProperty;e.f=n("9e1e")?Object.defineProperty:function(t,e,n){if(o(t),e=i(e,!0),o(n),r)try{return a(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},"9b43":function(t,e,n){var o=n("d8e8");t.exports=function(t,e,n){if(o(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,o){return t.call(e,n,o)};case 3:return function(n,o,r){return t.call(e,n,o,r)}}return function(){return t.apply(e,arguments)}}},"9c6c":function(t,e,n){var o=n("2b4c")("unscopables"),r=Array.prototype;void 0==r[o]&&n("32e9")(r,o,{}),t.exports=function(t){r[o][t]=!0}},"9def":function(t,e,n){var o=n("4588"),r=Math.min;t.exports=function(t){return t>0?r(o(t),9007199254740991):0}},"9e1e":function(t,e,n){t.exports=!n("79e5")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},a352:function(e,n){e.exports=t},a481:function(t,e,n){"use strict";var o=n("cb7c"),r=n("4bf8"),i=n("9def"),a=n("4588"),l=n("0390"),s=n("5f1b"),c=Math.max,u=Math.min,f=Math.floor,d=/\$([$&`']|\d\d?|<[^>]*>)/g,h=/\$([$&`']|\d\d?)/g,p=function(t){return void 0===t?t:String(t)};n("214f")("replace",2,function(t,e,n,v){return[function(o,r){var i=t(this),a=void 0==o?void 0:o[e];return void 0!==a?a.call(o,i,r):n.call(String(i),o,r)},function(t,e){var r=v(n,t,this,e);if(r.done)return r.value;var f=o(t),d=String(this),h="function"==typeof e;h||(e=String(e));var m=f.global;if(m){var b=f.unicode;f.lastIndex=0}for(var y=[];;){var w=s(f,d);if(null===w)break;if(y.push(w),!m)break;""===String(w[0])&&(f.lastIndex=l(d,i(f.lastIndex),b))}for(var x="",S=0,E=0;E<y.length;E++){w=y[E];for(var D=String(w[0]),_=c(u(a(w.index),d.length),0),O=[],C=1;C<w.length;C++)O.push(p(w[C]));var T=w.groups;if(h){var M=[D].concat(O,_,d);void 0!==T&&M.push(T);var I=String(e.apply(void 0,M))}else I=g(D,d,_,O,T,e);_>=S&&(x+=d.slice(S,_)+I,S=_+D.length)}return x+d.slice(S)}];function g(t,e,o,i,a,l){var s=o+t.length,c=i.length,u=h;return void 0!==a&&(a=r(a),u=d),n.call(l,u,function(n,r){var l;switch(r.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,o);case"'":return e.slice(s);case"<":l=a[r.slice(1,-1)];break;default:var u=+r;if(0===u)return n;if(u>c){var d=f(u/10);return 0===d?n:d<=c?void 0===i[d-1]?r.charAt(1):i[d-1]+r.charAt(1):n}l=i[u-1]}return void 0===l?"":l})}})},aae3:function(t,e,n){var o=n("d3f4"),r=n("2d95"),i=n("2b4c")("match");t.exports=function(t){var e;return o(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==r(t))}},ac6a:function(t,e,n){for(var o=n("cadf"),r=n("0d58"),i=n("2aba"),a=n("7726"),l=n("32e9"),s=n("84f2"),c=n("2b4c"),u=c("iterator"),f=c("toStringTag"),d=s.Array,h={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},p=r(h),v=0;v<p.length;v++){var g,m=p[v],b=h[m],y=a[m],w=y&&y.prototype;if(w&&(w[u]||l(w,u,d),w[f]||l(w,f,m),s[m]=d,b))for(g in o)w[g]||i(w,g,o[g],!0)}},b0c5:function(t,e,n){"use strict";var o=n("520a");n("5ca1")({target:"RegExp",proto:!0,forced:o!==/./.exec},{exec:o})},be13:function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},c366:function(t,e,n){var o=n("6821"),r=n("9def"),i=n("77f1");t.exports=function(t){return function(e,n,a){var l,s=o(e),c=r(s.length),u=i(a,c);if(t&&n!=n){for(;c>u;)if((l=s[u++])!=l)return!0}else for(;c>u;u++)if((t||u in s)&&s[u]===n)return t||u||0;return!t&&-1}}},c649:function(t,e,n){"use strict";(function(t){n.d(e,"c",function(){return l}),n.d(e,"a",function(){return i}),n.d(e,"b",function(){return o}),n.d(e,"d",function(){return a});n("a481");var o="undefined"!=typeof window?window.console:t.console;var r=/-(\w)/g,i=function(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}(function(t){return t.replace(r,function(t,e){return e?e.toUpperCase():""})});function a(t){null!==t.parentElement&&t.parentElement.removeChild(t)}function l(t,e,n){var o=0===n?t.children[0]:t.children[n-1].nextSibling;t.insertBefore(e,o)}}).call(this,n("c8ba"))},c69a:function(t,e,n){t.exports=!n("9e1e")&&!n("79e5")(function(){return 7!=Object.defineProperty(n("230e")("div"),"a",{get:function(){return 7}}).a})},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},ca5a:function(t,e){var n=0,o=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+o).toString(36))}},cadf:function(t,e,n){"use strict";var o=n("9c6c"),r=n("d53b"),i=n("84f2"),a=n("6821");t.exports=n("01f9")(Array,"Array",function(t,e){this._t=a(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,r(1)):r(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])},"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},cb7c:function(t,e,n){var o=n("d3f4");t.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}},ce10:function(t,e,n){var o=n("69a8"),r=n("6821"),i=n("c366")(!1),a=n("613b")("IE_PROTO");t.exports=function(t,e){var n,l=r(t),s=0,c=[];for(n in l)n!=a&&o(l,n)&&c.push(n);for(;e.length>s;)o(l,n=e[s++])&&(~i(c,n)||c.push(n));return c}},d2c8:function(t,e,n){var o=n("aae3"),r=n("be13");t.exports=function(t,e,n){if(o(e))throw TypeError("String#"+n+" doesn't accept regex!");return String(r(t))}},d3f4:function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},d53b:function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},d8e8:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},e11e:function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},f559:function(t,e,n){"use strict";var o=n("5ca1"),r=n("9def"),i=n("d2c8"),a="".startsWith;o(o.P+o.F*n("5147")("startsWith"),"String",{startsWith:function(t){var e=i(this,t,"startsWith"),n=r(Math.min(arguments.length>1?arguments[1]:void 0,e.length)),o=String(t);return a?a.call(e,o,n):e.slice(n,n+o.length)===o}})},f6fd:function(t,e){!function(t){var e=t.getElementsByTagName("script");"currentScript"in t||Object.defineProperty(t,"currentScript",{get:function(){try{throw new Error}catch(o){var t,n=(/.*at [^\(]*\((.*):.+:.+\)$/gi.exec(o.stack)||[!1])[1];for(t in e)if(e[t].src==n||"interactive"==e[t].readyState)return e[t];return null}}})}(document)},f751:function(t,e,n){var o=n("5ca1");o(o.S+o.F,"Object",{assign:n("7333")})},fa5b:function(t,e,n){t.exports=n("5537")("native-function-to-string",Function.toString)},fab2:function(t,e,n){var o=n("7726").document;t.exports=o&&o.documentElement},fb15:function(t,e,n){"use strict";var o;(n.r(e),"undefined"!=typeof window)&&(n("f6fd"),(o=window.document.currentScript)&&(o=o.src.match(/(.+\/)[^/]+\.js(\?.*)?$/))&&(n.p=o[1]));n("f751"),n("f559"),n("ac6a"),n("cadf"),n("456d");function r(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}function i(t,e){if(t){if("string"==typeof t)return r(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(t,e):void 0}}function a(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],o=!0,r=!1,i=void 0;try{for(var a,l=t[Symbol.iterator]();!(o=(a=l.next()).done)&&(n.push(a.value),!e||n.length!==e);o=!0);}catch(t){r=!0,i=t}finally{try{o||null==l.return||l.return()}finally{if(r)throw i}}return n}}(t,e)||i(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}n("6762"),n("2fdb");function l(t){return function(t){if(Array.isArray(t))return r(t)}(t)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||i(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var s=n("a352"),c=n.n(s),u=n("c649");function f(t,e){var n=this;this.$nextTick(function(){return n.$emit(t.toLowerCase(),e)})}function d(t){return["transition-group","TransitionGroup"].includes(t)}function h(t,e,n){return t[n]||(e[n]?e[n]():void 0)}var p=["Start","Add","Remove","Update","End"],v=["Choose","Unchoose","Sort","Filter","Clone"],g=["Move"].concat(p,v).map(function(t){return"on"+t}),m=null,b={name:"draggable",inheritAttrs:!1,props:{options:Object,list:{type:Array,required:!1,default:null},value:{type:Array,required:!1,default:null},noTransitionOnDrag:{type:Boolean,default:!1},clone:{type:Function,default:function(t){return t}},element:{type:String,default:"div"},tag:{type:String,default:null},move:{type:Function,default:null},componentData:{type:Object,required:!1,default:null}},data:function(){return{transitionMode:!1,noneFunctionalComponentMode:!1}},render:function(t){var e=this.$slots.default;this.transitionMode=function(t){if(!t||1!==t.length)return!1;var e=a(t,1)[0].componentOptions;return!!e&&d(e.tag)}(e);var n=function(t,e,n){var o=0,r=0,i=h(e,n,"header");i&&(o=i.length,t=t?[].concat(l(i),l(t)):l(i));var a=h(e,n,"footer");return a&&(r=a.length,t=t?[].concat(l(t),l(a)):l(a)),{children:t,headerOffset:o,footerOffset:r}}(e,this.$slots,this.$scopedSlots),o=n.children,r=n.headerOffset,i=n.footerOffset;this.headerOffset=r,this.footerOffset=i;var s=function(t,e){var n=null,o=function(t,e){n=function(t,e,n){return void 0===n?t:((t=t||{})[e]=n,t)}(n,t,e)};if(o("attrs",Object.keys(t).filter(function(t){return"id"===t||t.startsWith("data-")}).reduce(function(e,n){return e[n]=t[n],e},{})),!e)return n;var r=e.on,i=e.props,a=e.attrs;return o("on",r),o("props",i),Object.assign(n.attrs,a),n}(this.$attrs,this.componentData);return t(this.getTag(),s,o)},created:function(){null!==this.list&&null!==this.value&&u.b.error("Value and list props are mutually exclusive! Please set one or another."),"div"!==this.element&&u.b.warn("Element props is deprecated please use tag props instead. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#element-props"),void 0!==this.options&&u.b.warn("Options props is deprecated, add sortable options directly as vue.draggable item, or use v-bind. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#options-props")},mounted:function(){var t=this;if(this.noneFunctionalComponentMode=this.getTag().toLowerCase()!==this.$el.nodeName.toLowerCase()&&!this.getIsFunctional(),this.noneFunctionalComponentMode&&this.transitionMode)throw new Error("Transition-group inside component is not supported. Please alter tag value or remove transition-group. Current tag value: ".concat(this.getTag()));var e={};p.forEach(function(n){e["on"+n]=function(t){var e=this;return function(n){null!==e.realList&&e["onDrag"+t](n),f.call(e,t,n)}}.call(t,n)}),v.forEach(function(n){e["on"+n]=f.bind(t,n)});var n=Object.keys(this.$attrs).reduce(function(e,n){return e[Object(u.a)(n)]=t.$attrs[n],e},{}),o=Object.assign({},this.options,n,e,{onMove:function(e,n){return t.onDragMove(e,n)}});!("draggable"in o)&&(o.draggable=">*"),this._sortable=new c.a(this.rootContainer,o),this.computeIndexes()},beforeDestroy:function(){void 0!==this._sortable&&this._sortable.destroy()},computed:{rootContainer:function(){return this.transitionMode?this.$el.children[0]:this.$el},realList:function(){return this.list?this.list:this.value}},watch:{options:{handler:function(t){this.updateOptions(t)},deep:!0},$attrs:{handler:function(t){this.updateOptions(t)},deep:!0},realList:function(){this.computeIndexes()}},methods:{getIsFunctional:function(){var t=this._vnode.fnOptions;return t&&t.functional},getTag:function(){return this.tag||this.element},updateOptions:function(t){for(var e in t){var n=Object(u.a)(e);-1===g.indexOf(n)&&this._sortable.option(n,t[e])}},getChildrenNodes:function(){if(this.noneFunctionalComponentMode)return this.$children[0].$slots.default;var t=this.$slots.default;return this.transitionMode?t[0].child.$slots.default:t},computeIndexes:function(){var t=this;this.$nextTick(function(){t.visibleIndexes=function(t,e,n,o){if(!t)return[];var r=t.map(function(t){return t.elm}),i=e.length-o,a=l(e).map(function(t,e){return e>=i?r.length:r.indexOf(t)});return n?a.filter(function(t){return-1!==t}):a}(t.getChildrenNodes(),t.rootContainer.children,t.transitionMode,t.footerOffset)})},getUnderlyingVm:function(t){var e=function(t,e){return t.map(function(t){return t.elm}).indexOf(e)}(this.getChildrenNodes()||[],t);return-1===e?null:{index:e,element:this.realList[e]}},getUnderlyingPotencialDraggableComponent:function(t){var e=t.__vue__;return e&&e.$options&&d(e.$options._componentTag)?e.$parent:!("realList"in e)&&1===e.$children.length&&"realList"in e.$children[0]?e.$children[0]:e},emitChanges:function(t){var e=this;this.$nextTick(function(){e.$emit("change",t)})},alterList:function(t){if(this.list)t(this.list);else{var e=l(this.value);t(e),this.$emit("input",e)}},spliceList:function(){var t=arguments,e=function(e){return e.splice.apply(e,l(t))};this.alterList(e)},updatePosition:function(t,e){var n=function(n){return n.splice(e,0,n.splice(t,1)[0])};this.alterList(n)},getRelatedContextFromMoveEvent:function(t){var e=t.to,n=t.related,o=this.getUnderlyingPotencialDraggableComponent(e);if(!o)return{component:o};var r=o.realList,i={list:r,component:o};if(e!==n&&r&&o.getUnderlyingVm){var a=o.getUnderlyingVm(n);if(a)return Object.assign(a,i)}return i},getVmIndex:function(t){var e=this.visibleIndexes,n=e.length;return t>n-1?n:e[t]},getComponent:function(){return this.$slots.default[0].componentInstance},resetTransitionData:function(t){if(this.noTransitionOnDrag&&this.transitionMode){this.getChildrenNodes()[t].data=null;var e=this.getComponent();e.children=[],e.kept=void 0}},onDragStart:function(t){this.context=this.getUnderlyingVm(t.item),t.item._underlying_vm_=this.clone(this.context.element),m=t.item},onDragAdd:function(t){var e=t.item._underlying_vm_;if(void 0!==e){Object(u.d)(t.item);var n=this.getVmIndex(t.newIndex);this.spliceList(n,0,e),this.computeIndexes();var o={element:e,newIndex:n};this.emitChanges({added:o})}},onDragRemove:function(t){if(Object(u.c)(this.rootContainer,t.item,t.oldIndex),"clone"!==t.pullMode){var e=this.context.index;this.spliceList(e,1);var n={element:this.context.element,oldIndex:e};this.resetTransitionData(e),this.emitChanges({removed:n})}else Object(u.d)(t.clone)},onDragUpdate:function(t){Object(u.d)(t.item),Object(u.c)(t.from,t.item,t.oldIndex);var e=this.context.index,n=this.getVmIndex(t.newIndex);this.updatePosition(e,n);var o={element:this.context.element,oldIndex:e,newIndex:n};this.emitChanges({moved:o})},updateProperty:function(t,e){t.hasOwnProperty(e)&&(t[e]+=this.headerOffset)},computeFutureIndex:function(t,e){if(!t.element)return 0;var n=l(e.to.children).filter(function(t){return"none"!==t.style.display}),o=n.indexOf(e.related),r=t.component.getVmIndex(o);return-1!==n.indexOf(m)||!e.willInsertAfter?r:r+1},onDragMove:function(t,e){var n=this.move;if(!n||!this.realList)return!0;var o=this.getRelatedContextFromMoveEvent(t),r=this.context,i=this.computeFutureIndex(o,t);return Object.assign(r,{futureIndex:i}),n(Object.assign({},t,{relatedContext:o,draggedContext:r}),e)},onDragEnd:function(){this.computeIndexes(),m=null}}};"undefined"!=typeof window&&"Vue"in window&&window.Vue.component("draggable",b);var y=b;e.default=y}}).default})}}]); \ No newline at end of file +function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(){return(i=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])}return t}).apply(this,arguments)}function a(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),o.forEach(function(e){r(t,e,n[e])})}return t}function l(t,e){if(null==t)return{};var n,o,r=function(t,e){if(null==t)return{};var n,o,r={},i=Object.keys(t);for(o=0;o<i.length;o++)n=i[o],e.indexOf(n)>=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(o=0;o<i.length;o++)n=i[o],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function s(t){return function(t){if(Array.isArray(t)){for(var e=0,n=new Array(t.length);e<t.length;e++)n[e]=t[e];return n}}(t)||function(t){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t))return Array.from(t)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}n.r(e),n.d(e,"MultiDrag",function(){return ye}),n.d(e,"Sortable",function(){return Xt}),n.d(e,"Swap",function(){return se});function c(t){if("undefined"!=typeof window&&window.navigator)return!!navigator.userAgent.match(t)}var u=c(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),f=c(/Edge/i),d=c(/firefox/i),h=c(/safari/i)&&!c(/chrome/i)&&!c(/android/i),p=c(/iP(ad|od|hone)/i),v=c(/chrome/i)&&c(/android/i),g={capture:!1,passive:!1};function m(t,e,n){t.addEventListener(e,n,!u&&g)}function b(t,e,n){t.removeEventListener(e,n,!u&&g)}function y(t,e){if(e){if(">"===e[0]&&(e=e.substring(1)),t)try{if(t.matches)return t.matches(e);if(t.msMatchesSelector)return t.msMatchesSelector(e);if(t.webkitMatchesSelector)return t.webkitMatchesSelector(e)}catch(t){return!1}return!1}}function w(t){return t.host&&t!==document&&t.host.nodeType?t.host:t.parentNode}function x(t,e,n,o){if(t){n=n||document;do{if(null!=e&&(">"===e[0]?t.parentNode===n&&y(t,e):y(t,e))||o&&t===n)return t;if(t===n)break}while(t=w(t))}return null}var S,E=/\s+/g;function D(t,e,n){if(t&&e)if(t.classList)t.classList[n?"add":"remove"](e);else{var o=(" "+t.className+" ").replace(E," ").replace(" "+e+" "," ");t.className=(o+(n?" "+e:"")).replace(E," ")}}function _(t,e,n){var o=t&&t.style;if(o){if(void 0===n)return document.defaultView&&document.defaultView.getComputedStyle?n=document.defaultView.getComputedStyle(t,""):t.currentStyle&&(n=t.currentStyle),void 0===e?n:n[e];e in o||-1!==e.indexOf("webkit")||(e="-webkit-"+e),o[e]=n+("string"==typeof n?"":"px")}}function O(t,e){var n="";if("string"==typeof t)n=t;else do{var o=_(t,"transform");o&&"none"!==o&&(n=o+" "+n)}while(!e&&(t=t.parentNode));var r=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return r&&new r(n)}function C(t,e,n){if(t){var o=t.getElementsByTagName(e),r=0,i=o.length;if(n)for(;r<i;r++)n(o[r],r);return o}return[]}function T(){var t=document.scrollingElement;return t||document.documentElement}function M(t,e,n,o,r){if(t.getBoundingClientRect||t===window){var i,a,l,s,c,f,d;if(t!==window&&t!==T()?(a=(i=t.getBoundingClientRect()).top,l=i.left,s=i.bottom,c=i.right,f=i.height,d=i.width):(a=0,l=0,s=window.innerHeight,c=window.innerWidth,f=window.innerHeight,d=window.innerWidth),(e||n)&&t!==window&&(r=r||t.parentNode,!u))do{if(r&&r.getBoundingClientRect&&("none"!==_(r,"transform")||n&&"static"!==_(r,"position"))){var h=r.getBoundingClientRect();a-=h.top+parseInt(_(r,"border-top-width")),l-=h.left+parseInt(_(r,"border-left-width")),s=a+i.height,c=l+i.width;break}}while(r=r.parentNode);if(o&&t!==window){var p=O(r||t),v=p&&p.a,g=p&&p.d;p&&(s=(a/=g)+(f/=g),c=(l/=v)+(d/=v))}return{top:a,left:l,bottom:s,right:c,width:d,height:f}}}function I(t,e,n){for(var o=j(t,!0),r=M(t)[e];o;){var i=M(o)[n];if(!("top"===n||"left"===n?r>=i:r<=i))return o;if(o===T())break;o=j(o,!1)}return!1}function A(t,e,n){for(var o=0,r=0,i=t.children;r<i.length;){if("none"!==i[r].style.display&&i[r]!==Xt.ghost&&i[r]!==Xt.dragged&&x(i[r],n.draggable,t,!1)){if(o===e)return i[r];o++}r++}return null}function P(t,e){for(var n=t.lastElementChild;n&&(n===Xt.ghost||"none"===_(n,"display")||e&&!y(n,e));)n=n.previousElementSibling;return n||null}function N(t,e){var n=0;if(!t||!t.parentNode)return-1;for(;t=t.previousElementSibling;)"TEMPLATE"===t.nodeName.toUpperCase()||t===Xt.clone||e&&!y(t,e)||n++;return n}function k(t){var e=0,n=0,o=T();if(t)do{var r=O(t),i=r.a,a=r.d;e+=t.scrollLeft*i,n+=t.scrollTop*a}while(t!==o&&(t=t.parentNode));return[e,n]}function j(t,e){if(!t||!t.getBoundingClientRect)return T();var n=t,o=!1;do{if(n.clientWidth<n.scrollWidth||n.clientHeight<n.scrollHeight){var r=_(n);if(n.clientWidth<n.scrollWidth&&("auto"==r.overflowX||"scroll"==r.overflowX)||n.clientHeight<n.scrollHeight&&("auto"==r.overflowY||"scroll"==r.overflowY)){if(!n.getBoundingClientRect||n===document.body)return T();if(o||e)return n;o=!0}}}while(n=n.parentNode);return T()}function L(t,e){return Math.round(t.top)===Math.round(e.top)&&Math.round(t.left)===Math.round(e.left)&&Math.round(t.height)===Math.round(e.height)&&Math.round(t.width)===Math.round(e.width)}function R(t,e){return function(){if(!S){var n=arguments;1===n.length?t.call(this,n[0]):t.apply(this,n),S=setTimeout(function(){S=void 0},e)}}}function F(t,e,n){t.scrollLeft+=e,t.scrollTop+=n}function $(t){var e=window.Polymer,n=window.jQuery||window.Zepto;return e&&e.dom?e.dom(t).cloneNode(!0):n?n(t).clone(!0)[0]:t.cloneNode(!0)}function X(t,e){_(t,"position","absolute"),_(t,"top",e.top),_(t,"left",e.left),_(t,"width",e.width),_(t,"height",e.height)}function B(t){_(t,"position",""),_(t,"top",""),_(t,"left",""),_(t,"width",""),_(t,"height","")}var Y="Sortable"+(new Date).getTime();function H(){var t,e=[];return{captureAnimationState:function(){(e=[],this.options.animation)&&[].slice.call(this.el.children).forEach(function(t){if("none"!==_(t,"display")&&t!==Xt.ghost){e.push({target:t,rect:M(t)});var n=a({},e[e.length-1].rect);if(t.thisAnimationDuration){var o=O(t,!0);o&&(n.top-=o.f,n.left-=o.e)}t.fromRect=n}})},addAnimationState:function(t){e.push(t)},removeAnimationState:function(t){e.splice(function(t,e){for(var n in t)if(t.hasOwnProperty(n))for(var o in e)if(e.hasOwnProperty(o)&&e[o]===t[n][o])return Number(n);return-1}(e,{target:t}),1)},animateAll:function(n){var o=this;if(!this.options.animation)return clearTimeout(t),void("function"==typeof n&&n());var r=!1,i=0;e.forEach(function(t){var e=0,n=t.target,a=n.fromRect,l=M(n),s=n.prevFromRect,c=n.prevToRect,u=t.rect,f=O(n,!0);f&&(l.top-=f.f,l.left-=f.e),n.toRect=l,n.thisAnimationDuration&&L(s,l)&&!L(a,l)&&(u.top-l.top)/(u.left-l.left)==(a.top-l.top)/(a.left-l.left)&&(e=function(t,e,n,o){return Math.sqrt(Math.pow(e.top-t.top,2)+Math.pow(e.left-t.left,2))/Math.sqrt(Math.pow(e.top-n.top,2)+Math.pow(e.left-n.left,2))*o.animation}(u,s,c,o.options)),L(l,a)||(n.prevFromRect=a,n.prevToRect=l,e||(e=o.options.animation),o.animate(n,u,l,e)),e&&(r=!0,i=Math.max(i,e),clearTimeout(n.animationResetTimer),n.animationResetTimer=setTimeout(function(){n.animationTime=0,n.prevFromRect=null,n.fromRect=null,n.prevToRect=null,n.thisAnimationDuration=null},e),n.thisAnimationDuration=e)}),clearTimeout(t),r?t=setTimeout(function(){"function"==typeof n&&n()},i):"function"==typeof n&&n(),e=[]},animate:function(t,e,n,o){if(o){_(t,"transition",""),_(t,"transform","");var r=O(this.el),i=r&&r.a,a=r&&r.d,l=(e.left-n.left)/(i||1),s=(e.top-n.top)/(a||1);t.animatingX=!!l,t.animatingY=!!s,_(t,"transform","translate3d("+l+"px,"+s+"px,0)"),function(t){t.offsetWidth}(t),_(t,"transition","transform "+o+"ms"+(this.options.easing?" "+this.options.easing:"")),_(t,"transform","translate3d(0,0,0)"),"number"==typeof t.animated&&clearTimeout(t.animated),t.animated=setTimeout(function(){_(t,"transition",""),_(t,"transform",""),t.animated=!1,t.animatingX=!1,t.animatingY=!1},o)}}}}var V=[],W={initializeByDefault:!0},U={mount:function(t){for(var e in W)!W.hasOwnProperty(e)||e in t||(t[e]=W[e]);V.push(t)},pluginEvent:function(t,e,n){var o=this;this.eventCanceled=!1,n.cancel=function(){o.eventCanceled=!0};var r=t+"Global";V.forEach(function(o){e[o.pluginName]&&(e[o.pluginName][r]&&e[o.pluginName][r](a({sortable:e},n)),e.options[o.pluginName]&&e[o.pluginName][t]&&e[o.pluginName][t](a({sortable:e},n)))})},initializePlugins:function(t,e,n,o){for(var r in V.forEach(function(o){var r=o.pluginName;if(t.options[r]||o.initializeByDefault){var a=new o(t,e,t.options);a.sortable=t,a.options=t.options,t[r]=a,i(n,a.defaults)}}),t.options)if(t.options.hasOwnProperty(r)){var a=this.modifyOption(t,r,t.options[r]);void 0!==a&&(t.options[r]=a)}},getEventProperties:function(t,e){var n={};return V.forEach(function(o){"function"==typeof o.eventProperties&&i(n,o.eventProperties.call(e[o.pluginName],t))}),n},modifyOption:function(t,e,n){var o;return V.forEach(function(r){t[r.pluginName]&&r.optionListeners&&"function"==typeof r.optionListeners[e]&&(o=r.optionListeners[e].call(t[r.pluginName],n))}),o}};function G(t){var e=t.sortable,n=t.rootEl,o=t.name,r=t.targetEl,i=t.cloneEl,l=t.toEl,s=t.fromEl,c=t.oldIndex,d=t.newIndex,h=t.oldDraggableIndex,p=t.newDraggableIndex,v=t.originalEvent,g=t.putSortable,m=t.extraEventProperties;if(e=e||n&&n[Y]){var b,y=e.options,w="on"+o.charAt(0).toUpperCase()+o.substr(1);!window.CustomEvent||u||f?(b=document.createEvent("Event")).initEvent(o,!0,!0):b=new CustomEvent(o,{bubbles:!0,cancelable:!0}),b.to=l||n,b.from=s||n,b.item=r||n,b.clone=i,b.oldIndex=c,b.newIndex=d,b.oldDraggableIndex=h,b.newDraggableIndex=p,b.originalEvent=v,b.pullMode=g?g.lastPutMode:void 0;var x=a({},m,U.getEventProperties(o,e));for(var S in x)b[S]=x[S];n&&n.dispatchEvent(b),y[w]&&y[w].call(e,b)}}var K=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=n.evt,r=l(n,["evt"]);U.pluginEvent.bind(Xt)(t,e,a({dragEl:q,parentEl:J,ghostEl:Z,rootEl:Q,nextEl:tt,lastDownEl:et,cloneEl:nt,cloneHidden:ot,dragStarted:gt,putSortable:ct,activeSortable:Xt.active,originalEvent:o,oldIndex:rt,oldDraggableIndex:at,newIndex:it,newDraggableIndex:lt,hideGhostForTarget:Lt,unhideGhostForTarget:Rt,cloneNowHidden:function(){ot=!0},cloneNowShown:function(){ot=!1},dispatchSortableEvent:function(t){z({sortable:e,name:t,originalEvent:o})}},r))};function z(t){G(a({putSortable:ct,cloneEl:nt,targetEl:q,rootEl:Q,oldIndex:rt,oldDraggableIndex:at,newIndex:it,newDraggableIndex:lt},t))}var q,J,Z,Q,tt,et,nt,ot,rt,it,at,lt,st,ct,ut,ft,dt,ht,pt,vt,gt,mt,bt,yt,wt,xt=!1,St=!1,Et=[],Dt=!1,_t=!1,Ot=[],Ct=!1,Tt=[],Mt="undefined"!=typeof document,It=p,At=f||u?"cssFloat":"float",Pt=Mt&&!v&&!p&&"draggable"in document.createElement("div"),Nt=function(){if(Mt){if(u)return!1;var t=document.createElement("x");return t.style.cssText="pointer-events:auto","auto"===t.style.pointerEvents}}(),kt=function(t,e){var n=_(t),o=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),r=A(t,0,e),i=A(t,1,e),a=r&&_(r),l=i&&_(i),s=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+M(r).width,c=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+M(i).width;if("flex"===n.display)return"column"===n.flexDirection||"column-reverse"===n.flexDirection?"vertical":"horizontal";if("grid"===n.display)return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(r&&a.float&&"none"!==a.float){var u="left"===a.float?"left":"right";return!i||"both"!==l.clear&&l.clear!==u?"horizontal":"vertical"}return r&&("block"===a.display||"flex"===a.display||"table"===a.display||"grid"===a.display||s>=o&&"none"===n[At]||i&&"none"===n[At]&&s+c>o)?"vertical":"horizontal"},jt=function(t){function e(t,n){return function(o,r,i,a){var l=o.options.group.name&&r.options.group.name&&o.options.group.name===r.options.group.name;if(null==t&&(n||l))return!0;if(null==t||!1===t)return!1;if(n&&"clone"===t)return t;if("function"==typeof t)return e(t(o,r,i,a),n)(o,r,i,a);var s=(n?o:r).options.group.name;return!0===t||"string"==typeof t&&t===s||t.join&&t.indexOf(s)>-1}}var n={},r=t.group;r&&"object"==o(r)||(r={name:r}),n.name=r.name,n.checkPull=e(r.pull,!0),n.checkPut=e(r.put),n.revertClone=r.revertClone,t.group=n},Lt=function(){!Nt&&Z&&_(Z,"display","none")},Rt=function(){!Nt&&Z&&_(Z,"display","")};Mt&&document.addEventListener("click",function(t){if(St)return t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.stopImmediatePropagation&&t.stopImmediatePropagation(),St=!1,!1},!0);var Ft=function(t){if(q){var e=function(t,e){var n;return Et.some(function(o){if(!P(o)){var r=M(o),i=o[Y].options.emptyInsertThreshold,a=t>=r.left-i&&t<=r.right+i,l=e>=r.top-i&&e<=r.bottom+i;return i&&a&&l?n=o:void 0}}),n}((t=t.touches?t.touches[0]:t).clientX,t.clientY);if(e){var n={};for(var o in t)t.hasOwnProperty(o)&&(n[o]=t[o]);n.target=n.rootEl=e,n.preventDefault=void 0,n.stopPropagation=void 0,e[Y]._onDragOver(n)}}},$t=function(t){q&&q.parentNode[Y]._isOutsideThisEl(t.target)};function Xt(t,e){if(!t||!t.nodeType||1!==t.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(t));this.el=t,this.options=e=i({},e),t[Y]=this;var n={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(t.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return kt(t,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(t,e){t.setData("Text",e.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==Xt.supportPointer&&"PointerEvent"in window,emptyInsertThreshold:5};for(var o in U.initializePlugins(this,t,n),n)!(o in e)&&(e[o]=n[o]);for(var r in jt(e),this)"_"===r.charAt(0)&&"function"==typeof this[r]&&(this[r]=this[r].bind(this));this.nativeDraggable=!e.forceFallback&&Pt,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?m(t,"pointerdown",this._onTapStart):(m(t,"mousedown",this._onTapStart),m(t,"touchstart",this._onTapStart)),this.nativeDraggable&&(m(t,"dragover",this),m(t,"dragenter",this)),Et.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[]),i(this,H())}function Bt(t,e,n,o,r,i,a,l){var s,c,d=t[Y],h=d.options.onMove;return!window.CustomEvent||u||f?(s=document.createEvent("Event")).initEvent("move",!0,!0):s=new CustomEvent("move",{bubbles:!0,cancelable:!0}),s.to=e,s.from=t,s.dragged=n,s.draggedRect=o,s.related=r||e,s.relatedRect=i||M(e),s.willInsertAfter=l,s.originalEvent=a,t.dispatchEvent(s),h&&(c=h.call(d,s,a)),c}function Yt(t){t.draggable=!1}function Ht(){Ct=!1}function Vt(t){for(var e=t.tagName+t.className+t.src+t.href+t.textContent,n=e.length,o=0;n--;)o+=e.charCodeAt(n);return o.toString(36)}function Wt(t){return setTimeout(t,0)}function Ut(t){return clearTimeout(t)}Xt.prototype={constructor:Xt,_isOutsideThisEl:function(t){this.el.contains(t)||t===this.el||(mt=null)},_getDirection:function(t,e){return"function"==typeof this.options.direction?this.options.direction.call(this,t,e,q):this.options.direction},_onTapStart:function(t){if(t.cancelable){var e=this,n=this.el,o=this.options,r=o.preventOnFilter,i=t.type,a=t.touches&&t.touches[0]||t.pointerType&&"touch"===t.pointerType&&t,l=(a||t).target,s=t.target.shadowRoot&&(t.path&&t.path[0]||t.composedPath&&t.composedPath()[0])||l,c=o.filter;if(function(t){Tt.length=0;var e=t.getElementsByTagName("input"),n=e.length;for(;n--;){var o=e[n];o.checked&&Tt.push(o)}}(n),!q&&!(/mousedown|pointerdown/.test(i)&&0!==t.button||o.disabled||s.isContentEditable||(l=x(l,o.draggable,n,!1))&&l.animated||et===l)){if(rt=N(l),at=N(l,o.draggable),"function"==typeof c){if(c.call(this,t,l,this))return z({sortable:e,rootEl:s,name:"filter",targetEl:l,toEl:n,fromEl:n}),K("filter",e,{evt:t}),void(r&&t.cancelable&&t.preventDefault())}else if(c&&(c=c.split(",").some(function(o){if(o=x(s,o.trim(),n,!1))return z({sortable:e,rootEl:o,name:"filter",targetEl:l,fromEl:n,toEl:n}),K("filter",e,{evt:t}),!0})))return void(r&&t.cancelable&&t.preventDefault());o.handle&&!x(s,o.handle,n,!1)||this._prepareDragStart(t,a,l)}}},_prepareDragStart:function(t,e,n){var o,r=this,i=r.el,a=r.options,l=i.ownerDocument;if(n&&!q&&n.parentNode===i){var s=M(n);if(Q=i,J=(q=n).parentNode,tt=q.nextSibling,et=n,st=a.group,Xt.dragged=q,ut={target:q,clientX:(e||t).clientX,clientY:(e||t).clientY},pt=ut.clientX-s.left,vt=ut.clientY-s.top,this._lastX=(e||t).clientX,this._lastY=(e||t).clientY,q.style["will-change"]="all",o=function(){K("delayEnded",r,{evt:t}),Xt.eventCanceled?r._onDrop():(r._disableDelayedDragEvents(),!d&&r.nativeDraggable&&(q.draggable=!0),r._triggerDragStart(t,e),z({sortable:r,name:"choose",originalEvent:t}),D(q,a.chosenClass,!0))},a.ignore.split(",").forEach(function(t){C(q,t.trim(),Yt)}),m(l,"dragover",Ft),m(l,"mousemove",Ft),m(l,"touchmove",Ft),m(l,"mouseup",r._onDrop),m(l,"touchend",r._onDrop),m(l,"touchcancel",r._onDrop),d&&this.nativeDraggable&&(this.options.touchStartThreshold=4,q.draggable=!0),K("delayStart",this,{evt:t}),!a.delay||a.delayOnTouchOnly&&!e||this.nativeDraggable&&(f||u))o();else{if(Xt.eventCanceled)return void this._onDrop();m(l,"mouseup",r._disableDelayedDrag),m(l,"touchend",r._disableDelayedDrag),m(l,"touchcancel",r._disableDelayedDrag),m(l,"mousemove",r._delayedDragTouchMoveHandler),m(l,"touchmove",r._delayedDragTouchMoveHandler),a.supportPointer&&m(l,"pointermove",r._delayedDragTouchMoveHandler),r._dragStartTimer=setTimeout(o,a.delay)}}},_delayedDragTouchMoveHandler:function(t){var e=t.touches?t.touches[0]:t;Math.max(Math.abs(e.clientX-this._lastX),Math.abs(e.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){q&&Yt(q),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;b(t,"mouseup",this._disableDelayedDrag),b(t,"touchend",this._disableDelayedDrag),b(t,"touchcancel",this._disableDelayedDrag),b(t,"mousemove",this._delayedDragTouchMoveHandler),b(t,"touchmove",this._delayedDragTouchMoveHandler),b(t,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(t,e){e=e||"touch"==t.pointerType&&t,!this.nativeDraggable||e?this.options.supportPointer?m(document,"pointermove",this._onTouchMove):m(document,e?"touchmove":"mousemove",this._onTouchMove):(m(q,"dragend",this),m(Q,"dragstart",this._onDragStart));try{document.selection?Wt(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch(t){}},_dragStarted:function(t,e){if(xt=!1,Q&&q){K("dragStarted",this,{evt:e}),this.nativeDraggable&&m(document,"dragover",$t);var n=this.options;!t&&D(q,n.dragClass,!1),D(q,n.ghostClass,!0),Xt.active=this,t&&this._appendGhost(),z({sortable:this,name:"start",originalEvent:e})}else this._nulling()},_emulateDragOver:function(){if(ft){this._lastX=ft.clientX,this._lastY=ft.clientY,Lt();for(var t=document.elementFromPoint(ft.clientX,ft.clientY),e=t;t&&t.shadowRoot&&(t=t.shadowRoot.elementFromPoint(ft.clientX,ft.clientY))!==e;)e=t;if(q.parentNode[Y]._isOutsideThisEl(t),e)do{if(e[Y]){if(e[Y]._onDragOver({clientX:ft.clientX,clientY:ft.clientY,target:t,rootEl:e})&&!this.options.dragoverBubble)break}t=e}while(e=e.parentNode);Rt()}},_onTouchMove:function(t){if(ut){var e=this.options,n=e.fallbackTolerance,o=e.fallbackOffset,r=t.touches?t.touches[0]:t,i=Z&&O(Z,!0),a=Z&&i&&i.a,l=Z&&i&&i.d,s=It&&wt&&k(wt),c=(r.clientX-ut.clientX+o.x)/(a||1)+(s?s[0]-Ot[0]:0)/(a||1),u=(r.clientY-ut.clientY+o.y)/(l||1)+(s?s[1]-Ot[1]:0)/(l||1);if(!Xt.active&&!xt){if(n&&Math.max(Math.abs(r.clientX-this._lastX),Math.abs(r.clientY-this._lastY))<n)return;this._onDragStart(t,!0)}if(Z){i?(i.e+=c-(dt||0),i.f+=u-(ht||0)):i={a:1,b:0,c:0,d:1,e:c,f:u};var f="matrix(".concat(i.a,",").concat(i.b,",").concat(i.c,",").concat(i.d,",").concat(i.e,",").concat(i.f,")");_(Z,"webkitTransform",f),_(Z,"mozTransform",f),_(Z,"msTransform",f),_(Z,"transform",f),dt=c,ht=u,ft=r}t.cancelable&&t.preventDefault()}},_appendGhost:function(){if(!Z){var t=this.options.fallbackOnBody?document.body:Q,e=M(q,!0,It,!0,t),n=this.options;if(It){for(wt=t;"static"===_(wt,"position")&&"none"===_(wt,"transform")&&wt!==document;)wt=wt.parentNode;wt!==document.body&&wt!==document.documentElement?(wt===document&&(wt=T()),e.top+=wt.scrollTop,e.left+=wt.scrollLeft):wt=T(),Ot=k(wt)}D(Z=q.cloneNode(!0),n.ghostClass,!1),D(Z,n.fallbackClass,!0),D(Z,n.dragClass,!0),_(Z,"transition",""),_(Z,"transform",""),_(Z,"box-sizing","border-box"),_(Z,"margin",0),_(Z,"top",e.top),_(Z,"left",e.left),_(Z,"width",e.width),_(Z,"height",e.height),_(Z,"opacity","0.8"),_(Z,"position",It?"absolute":"fixed"),_(Z,"zIndex","100000"),_(Z,"pointerEvents","none"),Xt.ghost=Z,t.appendChild(Z),_(Z,"transform-origin",pt/parseInt(Z.style.width)*100+"% "+vt/parseInt(Z.style.height)*100+"%")}},_onDragStart:function(t,e){var n=this,o=t.dataTransfer,r=n.options;K("dragStart",this,{evt:t}),Xt.eventCanceled?this._onDrop():(K("setupClone",this),Xt.eventCanceled||((nt=$(q)).draggable=!1,nt.style["will-change"]="",this._hideClone(),D(nt,this.options.chosenClass,!1),Xt.clone=nt),n.cloneId=Wt(function(){K("clone",n),Xt.eventCanceled||(n.options.removeCloneOnHide||Q.insertBefore(nt,q),n._hideClone(),z({sortable:n,name:"clone"}))}),!e&&D(q,r.dragClass,!0),e?(St=!0,n._loopId=setInterval(n._emulateDragOver,50)):(b(document,"mouseup",n._onDrop),b(document,"touchend",n._onDrop),b(document,"touchcancel",n._onDrop),o&&(o.effectAllowed="move",r.setData&&r.setData.call(n,o,q)),m(document,"drop",n),_(q,"transform","translateZ(0)")),xt=!0,n._dragStartId=Wt(n._dragStarted.bind(n,e,t)),m(document,"selectstart",n),gt=!0,h&&_(document.body,"user-select","none"))},_onDragOver:function(t){var e,n,o,r,i=this.el,l=t.target,s=this.options,c=s.group,u=Xt.active,f=st===c,d=s.sort,h=ct||u,p=this,v=!1;if(!Ct){if(void 0!==t.preventDefault&&t.cancelable&&t.preventDefault(),l=x(l,s.draggable,i,!0),L("dragOver"),Xt.eventCanceled)return v;if(q.contains(t.target)||l.animated&&l.animatingX&&l.animatingY||p._ignoreWhileAnimating===l)return $(!1);if(St=!1,u&&!s.disabled&&(f?d||(o=!Q.contains(q)):ct===this||(this.lastPutMode=st.checkPull(this,u,q,t))&&c.checkPut(this,u,q,t))){if(r="vertical"===this._getDirection(t,l),e=M(q),L("dragOverValid"),Xt.eventCanceled)return v;if(o)return J=Q,R(),this._hideClone(),L("revert"),Xt.eventCanceled||(tt?Q.insertBefore(q,tt):Q.appendChild(q)),$(!0);var g=P(i,s.draggable);if(!g||function(t,e,n){var o=M(P(n.el,n.options.draggable));return e?t.clientX>o.right+10||t.clientX<=o.right&&t.clientY>o.bottom&&t.clientX>=o.left:t.clientX>o.right&&t.clientY>o.top||t.clientX<=o.right&&t.clientY>o.bottom+10}(t,r,this)&&!g.animated){if(g===q)return $(!1);if(g&&i===t.target&&(l=g),l&&(n=M(l)),!1!==Bt(Q,i,q,e,l,n,t,!!l))return R(),i.appendChild(q),J=i,X(),$(!0)}else if(l.parentNode===i){n=M(l);var m,b,y,w=q.parentNode!==i,S=!function(t,e,n){var o=n?t.left:t.top,r=n?t.right:t.bottom,i=n?t.width:t.height,a=n?e.left:e.top,l=n?e.right:e.bottom,s=n?e.width:e.height;return o===a||r===l||o+i/2===a+s/2}(q.animated&&q.toRect||e,l.animated&&l.toRect||n,r),E=r?"top":"left",O=I(l,"top","top")||I(q,"top","top"),C=O?O.scrollTop:void 0;if(mt!==l&&(b=n[E],Dt=!1,_t=!S&&s.invertSwap||w),0!==(m=function(t,e,n,o,r,i,a,l){var s=o?t.clientY:t.clientX,c=o?n.height:n.width,u=o?n.top:n.left,f=o?n.bottom:n.right,d=!1;if(!a)if(l&&yt<c*r){if(!Dt&&(1===bt?s>u+c*i/2:s<f-c*i/2)&&(Dt=!0),Dt)d=!0;else if(1===bt?s<u+yt:s>f-yt)return-bt}else if(s>u+c*(1-r)/2&&s<f-c*(1-r)/2)return function(t){return N(q)<N(t)?1:-1}(e);if((d=d||a)&&(s<u+c*i/2||s>f-c*i/2))return s>u+c/2?1:-1;return 0}(t,l,n,r,S?1:s.swapThreshold,null==s.invertedSwapThreshold?s.swapThreshold:s.invertedSwapThreshold,_t,mt===l))){var T=N(q);do{T-=m,y=J.children[T]}while(y&&("none"===_(y,"display")||y===Z))}if(0===m||y===l)return $(!1);mt=l,bt=m;var A=l.nextElementSibling,k=!1,j=Bt(Q,i,q,e,l,n,t,k=1===m);if(!1!==j)return 1!==j&&-1!==j||(k=1===j),Ct=!0,setTimeout(Ht,30),R(),k&&!A?i.appendChild(q):l.parentNode.insertBefore(q,k?A:l),O&&F(O,0,C-O.scrollTop),J=q.parentNode,void 0===b||_t||(yt=Math.abs(b-M(l)[E])),X(),$(!0)}if(i.contains(q))return $(!1)}return!1}function L(s,c){K(s,p,a({evt:t,isOwner:f,axis:r?"vertical":"horizontal",revert:o,dragRect:e,targetRect:n,canSort:d,fromSortable:h,target:l,completed:$,onMove:function(n,o){return Bt(Q,i,q,e,n,M(n),t,o)},changed:X},c))}function R(){L("dragOverAnimationCapture"),p.captureAnimationState(),p!==h&&h.captureAnimationState()}function $(e){return L("dragOverCompleted",{insertion:e}),e&&(f?u._hideClone():u._showClone(p),p!==h&&(D(q,ct?ct.options.ghostClass:u.options.ghostClass,!1),D(q,s.ghostClass,!0)),ct!==p&&p!==Xt.active?ct=p:p===Xt.active&&ct&&(ct=null),h===p&&(p._ignoreWhileAnimating=l),p.animateAll(function(){L("dragOverAnimationComplete"),p._ignoreWhileAnimating=null}),p!==h&&(h.animateAll(),h._ignoreWhileAnimating=null)),(l===q&&!q.animated||l===i&&!l.animated)&&(mt=null),s.dragoverBubble||t.rootEl||l===document||(q.parentNode[Y]._isOutsideThisEl(t.target),!e&&Ft(t)),!s.dragoverBubble&&t.stopPropagation&&t.stopPropagation(),v=!0}function X(){it=N(q),lt=N(q,s.draggable),z({sortable:p,name:"change",toEl:i,newIndex:it,newDraggableIndex:lt,originalEvent:t})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){b(document,"mousemove",this._onTouchMove),b(document,"touchmove",this._onTouchMove),b(document,"pointermove",this._onTouchMove),b(document,"dragover",Ft),b(document,"mousemove",Ft),b(document,"touchmove",Ft)},_offUpEvents:function(){var t=this.el.ownerDocument;b(t,"mouseup",this._onDrop),b(t,"touchend",this._onDrop),b(t,"pointerup",this._onDrop),b(t,"touchcancel",this._onDrop),b(document,"selectstart",this)},_onDrop:function(t){var e=this.el,n=this.options;it=N(q),lt=N(q,n.draggable),K("drop",this,{evt:t}),J=q&&q.parentNode,it=N(q),lt=N(q,n.draggable),Xt.eventCanceled?this._nulling():(xt=!1,_t=!1,Dt=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),Ut(this.cloneId),Ut(this._dragStartId),this.nativeDraggable&&(b(document,"drop",this),b(e,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),h&&_(document.body,"user-select",""),_(q,"transform",""),t&&(gt&&(t.cancelable&&t.preventDefault(),!n.dropBubble&&t.stopPropagation()),Z&&Z.parentNode&&Z.parentNode.removeChild(Z),(Q===J||ct&&"clone"!==ct.lastPutMode)&&nt&&nt.parentNode&&nt.parentNode.removeChild(nt),q&&(this.nativeDraggable&&b(q,"dragend",this),Yt(q),q.style["will-change"]="",gt&&!xt&&D(q,ct?ct.options.ghostClass:this.options.ghostClass,!1),D(q,this.options.chosenClass,!1),z({sortable:this,name:"unchoose",toEl:J,newIndex:null,newDraggableIndex:null,originalEvent:t}),Q!==J?(it>=0&&(z({rootEl:J,name:"add",toEl:J,fromEl:Q,originalEvent:t}),z({sortable:this,name:"remove",toEl:J,originalEvent:t}),z({rootEl:J,name:"sort",toEl:J,fromEl:Q,originalEvent:t}),z({sortable:this,name:"sort",toEl:J,originalEvent:t})),ct&&ct.save()):it!==rt&&it>=0&&(z({sortable:this,name:"update",toEl:J,originalEvent:t}),z({sortable:this,name:"sort",toEl:J,originalEvent:t})),Xt.active&&(null!=it&&-1!==it||(it=rt,lt=at),z({sortable:this,name:"end",toEl:J,originalEvent:t}),this.save()))),this._nulling())},_nulling:function(){K("nulling",this),Q=q=J=Z=tt=nt=et=ot=ut=ft=gt=it=lt=rt=at=mt=bt=ct=st=Xt.dragged=Xt.ghost=Xt.clone=Xt.active=null,Tt.forEach(function(t){t.checked=!0}),Tt.length=dt=ht=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragenter":case"dragover":q&&(this._onDragOver(t),function(t){t.dataTransfer&&(t.dataTransfer.dropEffect="move");t.cancelable&&t.preventDefault()}(t));break;case"selectstart":t.preventDefault()}},toArray:function(){for(var t,e=[],n=this.el.children,o=0,r=n.length,i=this.options;o<r;o++)x(t=n[o],i.draggable,this.el,!1)&&e.push(t.getAttribute(i.dataIdAttr)||Vt(t));return e},sort:function(t){var e={},n=this.el;this.toArray().forEach(function(t,o){var r=n.children[o];x(r,this.options.draggable,n,!1)&&(e[t]=r)},this),t.forEach(function(t){e[t]&&(n.removeChild(e[t]),n.appendChild(e[t]))})},save:function(){var t=this.options.store;t&&t.set&&t.set(this)},closest:function(t,e){return x(t,e||this.options.draggable,this.el,!1)},option:function(t,e){var n=this.options;if(void 0===e)return n[t];var o=U.modifyOption(this,t,e);n[t]=void 0!==o?o:e,"group"===t&&jt(n)},destroy:function(){K("destroy",this);var t=this.el;t[Y]=null,b(t,"mousedown",this._onTapStart),b(t,"touchstart",this._onTapStart),b(t,"pointerdown",this._onTapStart),this.nativeDraggable&&(b(t,"dragover",this),b(t,"dragenter",this)),Array.prototype.forEach.call(t.querySelectorAll("[draggable]"),function(t){t.removeAttribute("draggable")}),this._onDrop(),this._disableDelayedDragEvents(),Et.splice(Et.indexOf(this.el),1),this.el=t=null},_hideClone:function(){if(!ot){if(K("hideClone",this),Xt.eventCanceled)return;_(nt,"display","none"),this.options.removeCloneOnHide&&nt.parentNode&&nt.parentNode.removeChild(nt),ot=!0}},_showClone:function(t){if("clone"===t.lastPutMode){if(ot){if(K("showClone",this),Xt.eventCanceled)return;Q.contains(q)&&!this.options.group.revertClone?Q.insertBefore(nt,q):tt?Q.insertBefore(nt,tt):Q.appendChild(nt),this.options.group.revertClone&&this.animate(q,nt),_(nt,"display",""),ot=!1}}else this._hideClone()}},Mt&&m(document,"touchmove",function(t){(Xt.active||xt)&&t.cancelable&&t.preventDefault()}),Xt.utils={on:m,off:b,css:_,find:C,is:function(t,e){return!!x(t,e,t,!1)},extend:function(t,e){if(t&&e)for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t},throttle:R,closest:x,toggleClass:D,clone:$,index:N,nextTick:Wt,cancelNextTick:Ut,detectDirection:kt,getChild:A},Xt.get=function(t){return t[Y]},Xt.mount=function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];e[0].constructor===Array&&(e=e[0]),e.forEach(function(t){if(!t.prototype||!t.prototype.constructor)throw"Sortable: Mounted plugin must be a constructor function, not ".concat({}.toString.call(t));t.utils&&(Xt.utils=a({},Xt.utils,t.utils)),U.mount(t)})},Xt.create=function(t,e){return new Xt(t,e)},Xt.version="1.10.2";var Gt,Kt,zt,qt,Jt,Zt,Qt=[],te=!1;function ee(){Qt.forEach(function(t){clearInterval(t.pid)}),Qt=[]}function ne(){clearInterval(Zt)}var oe,re=R(function(t,e,n,o){if(e.scroll){var r,i=(t.touches?t.touches[0]:t).clientX,a=(t.touches?t.touches[0]:t).clientY,l=e.scrollSensitivity,s=e.scrollSpeed,c=T(),u=!1;Kt!==n&&(Kt=n,ee(),Gt=e.scroll,r=e.scrollFn,!0===Gt&&(Gt=j(n,!0)));var f=0,d=Gt;do{var h=d,p=M(h),v=p.top,g=p.bottom,m=p.left,b=p.right,y=p.width,w=p.height,x=void 0,S=void 0,E=h.scrollWidth,D=h.scrollHeight,O=_(h),C=h.scrollLeft,I=h.scrollTop;h===c?(x=y<E&&("auto"===O.overflowX||"scroll"===O.overflowX||"visible"===O.overflowX),S=w<D&&("auto"===O.overflowY||"scroll"===O.overflowY||"visible"===O.overflowY)):(x=y<E&&("auto"===O.overflowX||"scroll"===O.overflowX),S=w<D&&("auto"===O.overflowY||"scroll"===O.overflowY));var A=x&&(Math.abs(b-i)<=l&&C+y<E)-(Math.abs(m-i)<=l&&!!C),P=S&&(Math.abs(g-a)<=l&&I+w<D)-(Math.abs(v-a)<=l&&!!I);if(!Qt[f])for(var N=0;N<=f;N++)Qt[N]||(Qt[N]={});Qt[f].vx==A&&Qt[f].vy==P&&Qt[f].el===h||(Qt[f].el=h,Qt[f].vx=A,Qt[f].vy=P,clearInterval(Qt[f].pid),0==A&&0==P||(u=!0,Qt[f].pid=setInterval(function(){o&&0===this.layer&&Xt.active._onTouchMove(Jt);var e=Qt[this.layer].vy?Qt[this.layer].vy*s:0,n=Qt[this.layer].vx?Qt[this.layer].vx*s:0;"function"==typeof r&&"continue"!==r.call(Xt.dragged.parentNode[Y],n,e,t,Jt,Qt[this.layer].el)||F(Qt[this.layer].el,n,e)}.bind({layer:f}),24))),f++}while(e.bubbleScroll&&d!==c&&(d=j(d,!1)));te=u}},30),ie=function(t){var e=t.originalEvent,n=t.putSortable,o=t.dragEl,r=t.activeSortable,i=t.dispatchSortableEvent,a=t.hideGhostForTarget,l=t.unhideGhostForTarget;if(e){var s=n||r;a();var c=e.changedTouches&&e.changedTouches.length?e.changedTouches[0]:e,u=document.elementFromPoint(c.clientX,c.clientY);l(),s&&!s.el.contains(u)&&(i("spill"),this.onSpill({dragEl:o,putSortable:n}))}};function ae(){}function le(){}function se(){function t(){this.defaults={swapClass:"sortable-swap-highlight"}}return t.prototype={dragStart:function(t){var e=t.dragEl;oe=e},dragOverValid:function(t){var e=t.completed,n=t.target,o=t.onMove,r=t.activeSortable,i=t.changed,a=t.cancel;if(r.options.swap){var l=this.sortable.el,s=this.options;if(n&&n!==l){var c=oe;!1!==o(n)?(D(n,s.swapClass,!0),oe=n):oe=null,c&&c!==oe&&D(c,s.swapClass,!1)}i(),e(!0),a()}},drop:function(t){var e=t.activeSortable,n=t.putSortable,o=t.dragEl,r=n||this.sortable,i=this.options;oe&&D(oe,i.swapClass,!1),oe&&(i.swap||n&&n.options.swap)&&o!==oe&&(r.captureAnimationState(),r!==e&&e.captureAnimationState(),function(t,e){var n,o,r=t.parentNode,i=e.parentNode;if(!r||!i||r.isEqualNode(e)||i.isEqualNode(t))return;n=N(t),o=N(e),r.isEqualNode(i)&&n<o&&o++;r.insertBefore(e,r.children[n]),i.insertBefore(t,i.children[o])}(o,oe),r.animateAll(),r!==e&&e.animateAll())},nulling:function(){oe=null}},i(t,{pluginName:"swap",eventProperties:function(){return{swapItem:oe}}})}ae.prototype={startIndex:null,dragStart:function(t){var e=t.oldDraggableIndex;this.startIndex=e},onSpill:function(t){var e=t.dragEl,n=t.putSortable;this.sortable.captureAnimationState(),n&&n.captureAnimationState();var o=A(this.sortable.el,this.startIndex,this.options);o?this.sortable.el.insertBefore(e,o):this.sortable.el.appendChild(e),this.sortable.animateAll(),n&&n.animateAll()},drop:ie},i(ae,{pluginName:"revertOnSpill"}),le.prototype={onSpill:function(t){var e=t.dragEl,n=t.putSortable||this.sortable;n.captureAnimationState(),e.parentNode&&e.parentNode.removeChild(e),n.animateAll()},drop:ie},i(le,{pluginName:"removeOnSpill"});var ce,ue,fe,de,he,pe=[],ve=[],ge=!1,me=!1,be=!1;function ye(){function t(t){for(var e in this)"_"===e.charAt(0)&&"function"==typeof this[e]&&(this[e]=this[e].bind(this));t.options.supportPointer?m(document,"pointerup",this._deselectMultiDrag):(m(document,"mouseup",this._deselectMultiDrag),m(document,"touchend",this._deselectMultiDrag)),m(document,"keydown",this._checkKeyDown),m(document,"keyup",this._checkKeyUp),this.defaults={selectedClass:"sortable-selected",multiDragKey:null,setData:function(e,n){var o="";pe.length&&ue===t?pe.forEach(function(t,e){o+=(e?", ":"")+t.textContent}):o=n.textContent,e.setData("Text",o)}}}return t.prototype={multiDragKeyDown:!1,isMultiDrag:!1,delayStartGlobal:function(t){var e=t.dragEl;fe=e},delayEnded:function(){this.isMultiDrag=~pe.indexOf(fe)},setupClone:function(t){var e=t.sortable,n=t.cancel;if(this.isMultiDrag){for(var o=0;o<pe.length;o++)ve.push($(pe[o])),ve[o].sortableIndex=pe[o].sortableIndex,ve[o].draggable=!1,ve[o].style["will-change"]="",D(ve[o],this.options.selectedClass,!1),pe[o]===fe&&D(ve[o],this.options.chosenClass,!1);e._hideClone(),n()}},clone:function(t){var e=t.sortable,n=t.rootEl,o=t.dispatchSortableEvent,r=t.cancel;this.isMultiDrag&&(this.options.removeCloneOnHide||pe.length&&ue===e&&(we(!0,n),o("clone"),r()))},showClone:function(t){var e=t.cloneNowShown,n=t.rootEl,o=t.cancel;this.isMultiDrag&&(we(!1,n),ve.forEach(function(t){_(t,"display","")}),e(),he=!1,o())},hideClone:function(t){var e=this,n=(t.sortable,t.cloneNowHidden),o=t.cancel;this.isMultiDrag&&(ve.forEach(function(t){_(t,"display","none"),e.options.removeCloneOnHide&&t.parentNode&&t.parentNode.removeChild(t)}),n(),he=!0,o())},dragStartGlobal:function(t){t.sortable;!this.isMultiDrag&&ue&&ue.multiDrag._deselectMultiDrag(),pe.forEach(function(t){t.sortableIndex=N(t)}),pe=pe.sort(function(t,e){return t.sortableIndex-e.sortableIndex}),be=!0},dragStarted:function(t){var e=this,n=t.sortable;if(this.isMultiDrag){if(this.options.sort&&(n.captureAnimationState(),this.options.animation)){pe.forEach(function(t){t!==fe&&_(t,"position","absolute")});var o=M(fe,!1,!0,!0);pe.forEach(function(t){t!==fe&&X(t,o)}),me=!0,ge=!0}n.animateAll(function(){me=!1,ge=!1,e.options.animation&&pe.forEach(function(t){B(t)}),e.options.sort&&xe()})}},dragOver:function(t){var e=t.target,n=t.completed,o=t.cancel;me&&~pe.indexOf(e)&&(n(!1),o())},revert:function(t){var e=t.fromSortable,n=t.rootEl,o=t.sortable,r=t.dragRect;pe.length>1&&(pe.forEach(function(t){o.addAnimationState({target:t,rect:me?M(t):r}),B(t),t.fromRect=r,e.removeAnimationState(t)}),me=!1,function(t,e){pe.forEach(function(n,o){var r=e.children[n.sortableIndex+(t?Number(o):0)];r?e.insertBefore(n,r):e.appendChild(n)})}(!this.options.removeCloneOnHide,n))},dragOverCompleted:function(t){var e=t.sortable,n=t.isOwner,o=t.insertion,r=t.activeSortable,i=t.parentEl,a=t.putSortable,l=this.options;if(o){if(n&&r._hideClone(),ge=!1,l.animation&&pe.length>1&&(me||!n&&!r.options.sort&&!a)){var s=M(fe,!1,!0,!0);pe.forEach(function(t){t!==fe&&(X(t,s),i.appendChild(t))}),me=!0}if(!n)if(me||xe(),pe.length>1){var c=he;r._showClone(e),r.options.animation&&!he&&c&&ve.forEach(function(t){r.addAnimationState({target:t,rect:de}),t.fromRect=de,t.thisAnimationDuration=null})}else r._showClone(e)}},dragOverAnimationCapture:function(t){var e=t.dragRect,n=t.isOwner,o=t.activeSortable;if(pe.forEach(function(t){t.thisAnimationDuration=null}),o.options.animation&&!n&&o.multiDrag.isMultiDrag){de=i({},e);var r=O(fe,!0);de.top-=r.f,de.left-=r.e}},dragOverAnimationComplete:function(){me&&(me=!1,xe())},drop:function(t){var e=t.originalEvent,n=t.rootEl,o=t.parentEl,r=t.sortable,i=t.dispatchSortableEvent,a=t.oldIndex,l=t.putSortable,s=l||this.sortable;if(e){var c=this.options,u=o.children;if(!be)if(c.multiDragKey&&!this.multiDragKeyDown&&this._deselectMultiDrag(),D(fe,c.selectedClass,!~pe.indexOf(fe)),~pe.indexOf(fe))pe.splice(pe.indexOf(fe),1),ce=null,G({sortable:r,rootEl:n,name:"deselect",targetEl:fe,originalEvt:e});else{if(pe.push(fe),G({sortable:r,rootEl:n,name:"select",targetEl:fe,originalEvt:e}),e.shiftKey&&ce&&r.el.contains(ce)){var f,d,h=N(ce),p=N(fe);if(~h&&~p&&h!==p)for(p>h?(d=h,f=p):(d=p,f=h+1);d<f;d++)~pe.indexOf(u[d])||(D(u[d],c.selectedClass,!0),pe.push(u[d]),G({sortable:r,rootEl:n,name:"select",targetEl:u[d],originalEvt:e}))}else ce=fe;ue=s}if(be&&this.isMultiDrag){if((o[Y].options.sort||o!==n)&&pe.length>1){var v=M(fe),g=N(fe,":not(."+this.options.selectedClass+")");if(!ge&&c.animation&&(fe.thisAnimationDuration=null),s.captureAnimationState(),!ge&&(c.animation&&(fe.fromRect=v,pe.forEach(function(t){if(t.thisAnimationDuration=null,t!==fe){var e=me?M(t):v;t.fromRect=e,s.addAnimationState({target:t,rect:e})}})),xe(),pe.forEach(function(t){u[g]?o.insertBefore(t,u[g]):o.appendChild(t),g++}),a===N(fe))){var m=!1;pe.forEach(function(t){t.sortableIndex===N(t)||(m=!0)}),m&&i("update")}pe.forEach(function(t){B(t)}),s.animateAll()}ue=s}(n===o||l&&"clone"!==l.lastPutMode)&&ve.forEach(function(t){t.parentNode&&t.parentNode.removeChild(t)})}},nullingGlobal:function(){this.isMultiDrag=be=!1,ve.length=0},destroyGlobal:function(){this._deselectMultiDrag(),b(document,"pointerup",this._deselectMultiDrag),b(document,"mouseup",this._deselectMultiDrag),b(document,"touchend",this._deselectMultiDrag),b(document,"keydown",this._checkKeyDown),b(document,"keyup",this._checkKeyUp)},_deselectMultiDrag:function(t){if(!(void 0!==be&&be||ue!==this.sortable||t&&x(t.target,this.options.draggable,this.sortable.el,!1)||t&&0!==t.button))for(;pe.length;){var e=pe[0];D(e,this.options.selectedClass,!1),pe.shift(),G({sortable:this.sortable,rootEl:this.sortable.el,name:"deselect",targetEl:e,originalEvt:t})}},_checkKeyDown:function(t){t.key===this.options.multiDragKey&&(this.multiDragKeyDown=!0)},_checkKeyUp:function(t){t.key===this.options.multiDragKey&&(this.multiDragKeyDown=!1)}},i(t,{pluginName:"multiDrag",utils:{select:function(t){var e=t.parentNode[Y];e&&e.options.multiDrag&&!~pe.indexOf(t)&&(ue&&ue!==e&&(ue.multiDrag._deselectMultiDrag(),ue=e),D(t,e.options.selectedClass,!0),pe.push(t))},deselect:function(t){var e=t.parentNode[Y],n=pe.indexOf(t);e&&e.options.multiDrag&&~n&&(D(t,e.options.selectedClass,!1),pe.splice(n,1))}},eventProperties:function(){var t=this,e=[],n=[];return pe.forEach(function(o){var r;e.push({multiDragElement:o,index:o.sortableIndex}),r=me&&o!==fe?-1:me?N(o,":not(."+t.options.selectedClass+")"):N(o),n.push({multiDragElement:o,index:r})}),{items:s(pe),clones:[].concat(ve),oldIndicies:e,newIndicies:n}},optionListeners:{multiDragKey:function(t){return"ctrl"===(t=t.toLowerCase())?t="Control":t.length>1&&(t=t.charAt(0).toUpperCase()+t.substr(1)),t}}})}function we(t,e){ve.forEach(function(n,o){var r=e.children[n.sortableIndex+(t?Number(o):0)];r?e.insertBefore(n,r):e.appendChild(n)})}function xe(){pe.forEach(function(t){t!==fe&&t.parentNode&&t.parentNode.removeChild(t)})}Xt.mount(new function(){function t(){for(var t in this.defaults={scroll:!0,scrollSensitivity:30,scrollSpeed:10,bubbleScroll:!0},this)"_"===t.charAt(0)&&"function"==typeof this[t]&&(this[t]=this[t].bind(this))}return t.prototype={dragStarted:function(t){var e=t.originalEvent;this.sortable.nativeDraggable?m(document,"dragover",this._handleAutoScroll):this.options.supportPointer?m(document,"pointermove",this._handleFallbackAutoScroll):e.touches?m(document,"touchmove",this._handleFallbackAutoScroll):m(document,"mousemove",this._handleFallbackAutoScroll)},dragOverCompleted:function(t){var e=t.originalEvent;this.options.dragOverBubble||e.rootEl||this._handleAutoScroll(e)},drop:function(){this.sortable.nativeDraggable?b(document,"dragover",this._handleAutoScroll):(b(document,"pointermove",this._handleFallbackAutoScroll),b(document,"touchmove",this._handleFallbackAutoScroll),b(document,"mousemove",this._handleFallbackAutoScroll)),ne(),ee(),clearTimeout(S),S=void 0},nulling:function(){Jt=Kt=Gt=te=Zt=zt=qt=null,Qt.length=0},_handleFallbackAutoScroll:function(t){this._handleAutoScroll(t,!0)},_handleAutoScroll:function(t,e){var n=this,o=(t.touches?t.touches[0]:t).clientX,r=(t.touches?t.touches[0]:t).clientY,i=document.elementFromPoint(o,r);if(Jt=t,e||f||u||h){re(t,this.options,i,e);var a=j(i,!0);!te||Zt&&o===zt&&r===qt||(Zt&&ne(),Zt=setInterval(function(){var i=j(document.elementFromPoint(o,r),!0);i!==a&&(a=i,ee()),re(t,n.options,i,e)},10),zt=o,qt=r)}else{if(!this.options.bubbleScroll||j(i,!0)===T())return void ee();re(t,this.options,j(i,!1),!1)}}},i(t,{pluginName:"scroll",initializeByDefault:!0})}),Xt.mount(le,ae),e.default=Xt},MzXy:function(t,e,n){!function(e,o){t.exports=o(n("JID6"))}("undefined"!=typeof self&&self,function(t){return function(t){var e={};function n(o){if(e[o])return e[o].exports;var r=e[o]={i:o,l:!1,exports:{}};return t[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=t,n.c=e,n.d=function(t,e,o){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)n.d(o,r,function(e){return t[e]}.bind(null,r));return o},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s="fb15")}({"01f9":function(t,e,n){"use strict";var o=n("2d00"),r=n("5ca1"),i=n("2aba"),a=n("32e9"),l=n("84f2"),s=n("41a0"),c=n("7f20"),u=n("38fd"),f=n("2b4c")("iterator"),d=!([].keys&&"next"in[].keys()),h=function(){return this};t.exports=function(t,e,n,p,v,g,m){s(n,e,p);var b,y,w,x=function(t){if(!d&&t in _)return _[t];switch(t){case"keys":case"values":return function(){return new n(this,t)}}return function(){return new n(this,t)}},S=e+" Iterator",E="values"==v,D=!1,_=t.prototype,O=_[f]||_["@@iterator"]||v&&_[v],C=O||x(v),T=v?E?x("entries"):C:void 0,M="Array"==e&&_.entries||O;if(M&&(w=u(M.call(new t)))!==Object.prototype&&w.next&&(c(w,S,!0),o||"function"==typeof w[f]||a(w,f,h)),E&&O&&"values"!==O.name&&(D=!0,C=function(){return O.call(this)}),o&&!m||!d&&!D&&_[f]||a(_,f,C),l[e]=C,l[S]=h,v)if(b={values:E?C:x("values"),keys:g?C:x("keys"),entries:T},m)for(y in b)y in _||i(_,y,b[y]);else r(r.P+r.F*(d||D),e,b);return b}},"02f4":function(t,e,n){var o=n("4588"),r=n("be13");t.exports=function(t){return function(e,n){var i,a,l=String(r(e)),s=o(n),c=l.length;return s<0||s>=c?t?"":void 0:(i=l.charCodeAt(s))<55296||i>56319||s+1===c||(a=l.charCodeAt(s+1))<56320||a>57343?t?l.charAt(s):i:t?l.slice(s,s+2):a-56320+(i-55296<<10)+65536}}},"0390":function(t,e,n){"use strict";var o=n("02f4")(!0);t.exports=function(t,e,n){return e+(n?o(t,e).length:1)}},"0bfb":function(t,e,n){"use strict";var o=n("cb7c");t.exports=function(){var t=o(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},"0d58":function(t,e,n){var o=n("ce10"),r=n("e11e");t.exports=Object.keys||function(t){return o(t,r)}},1495:function(t,e,n){var o=n("86cc"),r=n("cb7c"),i=n("0d58");t.exports=n("9e1e")?Object.defineProperties:function(t,e){r(t);for(var n,a=i(e),l=a.length,s=0;l>s;)o.f(t,n=a[s++],e[n]);return t}},"214f":function(t,e,n){"use strict";n("b0c5");var o=n("2aba"),r=n("32e9"),i=n("79e5"),a=n("be13"),l=n("2b4c"),s=n("520a"),c=l("species"),u=!i(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")}),f=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();t.exports=function(t,e,n){var d=l(t),h=!i(function(){var e={};return e[d]=function(){return 7},7!=""[t](e)}),p=h?!i(function(){var e=!1,n=/a/;return n.exec=function(){return e=!0,null},"split"===t&&(n.constructor={},n.constructor[c]=function(){return n}),n[d](""),!e}):void 0;if(!h||!p||"replace"===t&&!u||"split"===t&&!f){var v=/./[d],g=n(a,d,""[t],function(t,e,n,o,r){return e.exec===s?h&&!r?{done:!0,value:v.call(e,n,o)}:{done:!0,value:t.call(n,e,o)}:{done:!1}}),m=g[0],b=g[1];o(String.prototype,t,m),r(RegExp.prototype,d,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}}},"230e":function(t,e,n){var o=n("d3f4"),r=n("7726").document,i=o(r)&&o(r.createElement);t.exports=function(t){return i?r.createElement(t):{}}},"23c6":function(t,e,n){var o=n("2d95"),r=n("2b4c")("toStringTag"),i="Arguments"==o(function(){return arguments}());t.exports=function(t){var e,n,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),r))?n:i?o(e):"Object"==(a=o(e))&&"function"==typeof e.callee?"Arguments":a}},2621:function(t,e){e.f=Object.getOwnPropertySymbols},"2aba":function(t,e,n){var o=n("7726"),r=n("32e9"),i=n("69a8"),a=n("ca5a")("src"),l=n("fa5b"),s=(""+l).split("toString");n("8378").inspectSource=function(t){return l.call(t)},(t.exports=function(t,e,n,l){var c="function"==typeof n;c&&(i(n,"name")||r(n,"name",e)),t[e]!==n&&(c&&(i(n,a)||r(n,a,t[e]?""+t[e]:s.join(String(e)))),t===o?t[e]=n:l?t[e]?t[e]=n:r(t,e,n):(delete t[e],r(t,e,n)))})(Function.prototype,"toString",function(){return"function"==typeof this&&this[a]||l.call(this)})},"2aeb":function(t,e,n){var o=n("cb7c"),r=n("1495"),i=n("e11e"),a=n("613b")("IE_PROTO"),l=function(){},s=function(){var t,e=n("230e")("iframe"),o=i.length;for(e.style.display="none",n("fab2").appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),s=t.F;o--;)delete s.prototype[i[o]];return s()};t.exports=Object.create||function(t,e){var n;return null!==t?(l.prototype=o(t),n=new l,l.prototype=null,n[a]=t):n=s(),void 0===e?n:r(n,e)}},"2b4c":function(t,e,n){var o=n("5537")("wks"),r=n("ca5a"),i=n("7726").Symbol,a="function"==typeof i;(t.exports=function(t){return o[t]||(o[t]=a&&i[t]||(a?i:r)("Symbol."+t))}).store=o},"2d00":function(t,e){t.exports=!1},"2d95":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"2fdb":function(t,e,n){"use strict";var o=n("5ca1"),r=n("d2c8");o(o.P+o.F*n("5147")("includes"),"String",{includes:function(t){return!!~r(this,t,"includes").indexOf(t,arguments.length>1?arguments[1]:void 0)}})},"32e9":function(t,e,n){var o=n("86cc"),r=n("4630");t.exports=n("9e1e")?function(t,e,n){return o.f(t,e,r(1,n))}:function(t,e,n){return t[e]=n,t}},"38fd":function(t,e,n){var o=n("69a8"),r=n("4bf8"),i=n("613b")("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=r(t),o(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},"41a0":function(t,e,n){"use strict";var o=n("2aeb"),r=n("4630"),i=n("7f20"),a={};n("32e9")(a,n("2b4c")("iterator"),function(){return this}),t.exports=function(t,e,n){t.prototype=o(a,{next:r(1,n)}),i(t,e+" Iterator")}},"456d":function(t,e,n){var o=n("4bf8"),r=n("0d58");n("5eda")("keys",function(){return function(t){return r(o(t))}})},4588:function(t,e){var n=Math.ceil,o=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?o:n)(t)}},4630:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"4bf8":function(t,e,n){var o=n("be13");t.exports=function(t){return Object(o(t))}},5147:function(t,e,n){var o=n("2b4c")("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[o]=!1,!"/./"[t](e)}catch(t){}}return!0}},"520a":function(t,e,n){"use strict";var o=n("0bfb"),r=RegExp.prototype.exec,i=String.prototype.replace,a=r,l=function(){var t=/a/,e=/b*/g;return r.call(t,"a"),r.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),s=void 0!==/()??/.exec("")[1];(l||s)&&(a=function(t){var e,n,a,c,u=this;return s&&(n=new RegExp("^"+u.source+"$(?!\\s)",o.call(u))),l&&(e=u.lastIndex),a=r.call(u,t),l&&a&&(u.lastIndex=u.global?a.index+a[0].length:e),s&&a&&a.length>1&&i.call(a[0],n,function(){for(c=1;c<arguments.length-2;c++)void 0===arguments[c]&&(a[c]=void 0)}),a}),t.exports=a},"52a7":function(t,e){e.f={}.propertyIsEnumerable},5537:function(t,e,n){var o=n("8378"),r=n("7726"),i=r["__core-js_shared__"]||(r["__core-js_shared__"]={});(t.exports=function(t,e){return i[t]||(i[t]=void 0!==e?e:{})})("versions",[]).push({version:o.version,mode:n("2d00")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},"5ca1":function(t,e,n){var o=n("7726"),r=n("8378"),i=n("32e9"),a=n("2aba"),l=n("9b43"),s=function(t,e,n){var c,u,f,d,h=t&s.F,p=t&s.G,v=t&s.S,g=t&s.P,m=t&s.B,b=p?o:v?o[e]||(o[e]={}):(o[e]||{}).prototype,y=p?r:r[e]||(r[e]={}),w=y.prototype||(y.prototype={});for(c in p&&(n=e),n)f=((u=!h&&b&&void 0!==b[c])?b:n)[c],d=m&&u?l(f,o):g&&"function"==typeof f?l(Function.call,f):f,b&&a(b,c,f,t&s.U),y[c]!=f&&i(y,c,d),g&&w[c]!=f&&(w[c]=f)};o.core=r,s.F=1,s.G=2,s.S=4,s.P=8,s.B=16,s.W=32,s.U=64,s.R=128,t.exports=s},"5eda":function(t,e,n){var o=n("5ca1"),r=n("8378"),i=n("79e5");t.exports=function(t,e){var n=(r.Object||{})[t]||Object[t],a={};a[t]=e(n),o(o.S+o.F*i(function(){n(1)}),"Object",a)}},"5f1b":function(t,e,n){"use strict";var o=n("23c6"),r=RegExp.prototype.exec;t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==o(t))throw new TypeError("RegExp#exec called on incompatible receiver");return r.call(t,e)}},"613b":function(t,e,n){var o=n("5537")("keys"),r=n("ca5a");t.exports=function(t){return o[t]||(o[t]=r(t))}},"626a":function(t,e,n){var o=n("2d95");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==o(t)?t.split(""):Object(t)}},6762:function(t,e,n){"use strict";var o=n("5ca1"),r=n("c366")(!0);o(o.P,"Array",{includes:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),n("9c6c")("includes")},6821:function(t,e,n){var o=n("626a"),r=n("be13");t.exports=function(t){return o(r(t))}},"69a8":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"6a99":function(t,e,n){var o=n("d3f4");t.exports=function(t,e){if(!o(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!o(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!o(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!o(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")}},7333:function(t,e,n){"use strict";var o=n("0d58"),r=n("2621"),i=n("52a7"),a=n("4bf8"),l=n("626a"),s=Object.assign;t.exports=!s||n("79e5")(function(){var t={},e={},n=Symbol(),o="abcdefghijklmnopqrst";return t[n]=7,o.split("").forEach(function(t){e[t]=t}),7!=s({},t)[n]||Object.keys(s({},e)).join("")!=o})?function(t,e){for(var n=a(t),s=arguments.length,c=1,u=r.f,f=i.f;s>c;)for(var d,h=l(arguments[c++]),p=u?o(h).concat(u(h)):o(h),v=p.length,g=0;v>g;)f.call(h,d=p[g++])&&(n[d]=h[d]);return n}:s},7726:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},"77f1":function(t,e,n){var o=n("4588"),r=Math.max,i=Math.min;t.exports=function(t,e){return(t=o(t))<0?r(t+e,0):i(t,e)}},"79e5":function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},"7f20":function(t,e,n){var o=n("86cc").f,r=n("69a8"),i=n("2b4c")("toStringTag");t.exports=function(t,e,n){t&&!r(t=n?t:t.prototype,i)&&o(t,i,{configurable:!0,value:e})}},8378:function(t,e){var n=t.exports={version:"2.6.5"};"number"==typeof __e&&(__e=n)},"84f2":function(t,e){t.exports={}},"86cc":function(t,e,n){var o=n("cb7c"),r=n("c69a"),i=n("6a99"),a=Object.defineProperty;e.f=n("9e1e")?Object.defineProperty:function(t,e,n){if(o(t),e=i(e,!0),o(n),r)try{return a(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},"9b43":function(t,e,n){var o=n("d8e8");t.exports=function(t,e,n){if(o(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,o){return t.call(e,n,o)};case 3:return function(n,o,r){return t.call(e,n,o,r)}}return function(){return t.apply(e,arguments)}}},"9c6c":function(t,e,n){var o=n("2b4c")("unscopables"),r=Array.prototype;void 0==r[o]&&n("32e9")(r,o,{}),t.exports=function(t){r[o][t]=!0}},"9def":function(t,e,n){var o=n("4588"),r=Math.min;t.exports=function(t){return t>0?r(o(t),9007199254740991):0}},"9e1e":function(t,e,n){t.exports=!n("79e5")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},a352:function(e,n){e.exports=t},a481:function(t,e,n){"use strict";var o=n("cb7c"),r=n("4bf8"),i=n("9def"),a=n("4588"),l=n("0390"),s=n("5f1b"),c=Math.max,u=Math.min,f=Math.floor,d=/\$([$&`']|\d\d?|<[^>]*>)/g,h=/\$([$&`']|\d\d?)/g,p=function(t){return void 0===t?t:String(t)};n("214f")("replace",2,function(t,e,n,v){return[function(o,r){var i=t(this),a=void 0==o?void 0:o[e];return void 0!==a?a.call(o,i,r):n.call(String(i),o,r)},function(t,e){var r=v(n,t,this,e);if(r.done)return r.value;var f=o(t),d=String(this),h="function"==typeof e;h||(e=String(e));var m=f.global;if(m){var b=f.unicode;f.lastIndex=0}for(var y=[];;){var w=s(f,d);if(null===w)break;if(y.push(w),!m)break;""===String(w[0])&&(f.lastIndex=l(d,i(f.lastIndex),b))}for(var x="",S=0,E=0;E<y.length;E++){w=y[E];for(var D=String(w[0]),_=c(u(a(w.index),d.length),0),O=[],C=1;C<w.length;C++)O.push(p(w[C]));var T=w.groups;if(h){var M=[D].concat(O,_,d);void 0!==T&&M.push(T);var I=String(e.apply(void 0,M))}else I=g(D,d,_,O,T,e);_>=S&&(x+=d.slice(S,_)+I,S=_+D.length)}return x+d.slice(S)}];function g(t,e,o,i,a,l){var s=o+t.length,c=i.length,u=h;return void 0!==a&&(a=r(a),u=d),n.call(l,u,function(n,r){var l;switch(r.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,o);case"'":return e.slice(s);case"<":l=a[r.slice(1,-1)];break;default:var u=+r;if(0===u)return n;if(u>c){var d=f(u/10);return 0===d?n:d<=c?void 0===i[d-1]?r.charAt(1):i[d-1]+r.charAt(1):n}l=i[u-1]}return void 0===l?"":l})}})},aae3:function(t,e,n){var o=n("d3f4"),r=n("2d95"),i=n("2b4c")("match");t.exports=function(t){var e;return o(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==r(t))}},ac6a:function(t,e,n){for(var o=n("cadf"),r=n("0d58"),i=n("2aba"),a=n("7726"),l=n("32e9"),s=n("84f2"),c=n("2b4c"),u=c("iterator"),f=c("toStringTag"),d=s.Array,h={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},p=r(h),v=0;v<p.length;v++){var g,m=p[v],b=h[m],y=a[m],w=y&&y.prototype;if(w&&(w[u]||l(w,u,d),w[f]||l(w,f,m),s[m]=d,b))for(g in o)w[g]||i(w,g,o[g],!0)}},b0c5:function(t,e,n){"use strict";var o=n("520a");n("5ca1")({target:"RegExp",proto:!0,forced:o!==/./.exec},{exec:o})},be13:function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},c366:function(t,e,n){var o=n("6821"),r=n("9def"),i=n("77f1");t.exports=function(t){return function(e,n,a){var l,s=o(e),c=r(s.length),u=i(a,c);if(t&&n!=n){for(;c>u;)if((l=s[u++])!=l)return!0}else for(;c>u;u++)if((t||u in s)&&s[u]===n)return t||u||0;return!t&&-1}}},c649:function(t,e,n){"use strict";(function(t){n.d(e,"c",function(){return l}),n.d(e,"a",function(){return i}),n.d(e,"b",function(){return o}),n.d(e,"d",function(){return a});n("a481");var o="undefined"!=typeof window?window.console:t.console;var r=/-(\w)/g,i=function(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}(function(t){return t.replace(r,function(t,e){return e?e.toUpperCase():""})});function a(t){null!==t.parentElement&&t.parentElement.removeChild(t)}function l(t,e,n){var o=0===n?t.children[0]:t.children[n-1].nextSibling;t.insertBefore(e,o)}}).call(this,n("c8ba"))},c69a:function(t,e,n){t.exports=!n("9e1e")&&!n("79e5")(function(){return 7!=Object.defineProperty(n("230e")("div"),"a",{get:function(){return 7}}).a})},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},ca5a:function(t,e){var n=0,o=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+o).toString(36))}},cadf:function(t,e,n){"use strict";var o=n("9c6c"),r=n("d53b"),i=n("84f2"),a=n("6821");t.exports=n("01f9")(Array,"Array",function(t,e){this._t=a(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,r(1)):r(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])},"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},cb7c:function(t,e,n){var o=n("d3f4");t.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}},ce10:function(t,e,n){var o=n("69a8"),r=n("6821"),i=n("c366")(!1),a=n("613b")("IE_PROTO");t.exports=function(t,e){var n,l=r(t),s=0,c=[];for(n in l)n!=a&&o(l,n)&&c.push(n);for(;e.length>s;)o(l,n=e[s++])&&(~i(c,n)||c.push(n));return c}},d2c8:function(t,e,n){var o=n("aae3"),r=n("be13");t.exports=function(t,e,n){if(o(e))throw TypeError("String#"+n+" doesn't accept regex!");return String(r(t))}},d3f4:function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},d53b:function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},d8e8:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},e11e:function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},f559:function(t,e,n){"use strict";var o=n("5ca1"),r=n("9def"),i=n("d2c8"),a="".startsWith;o(o.P+o.F*n("5147")("startsWith"),"String",{startsWith:function(t){var e=i(this,t,"startsWith"),n=r(Math.min(arguments.length>1?arguments[1]:void 0,e.length)),o=String(t);return a?a.call(e,o,n):e.slice(n,n+o.length)===o}})},f6fd:function(t,e){!function(t){var e=t.getElementsByTagName("script");"currentScript"in t||Object.defineProperty(t,"currentScript",{get:function(){try{throw new Error}catch(o){var t,n=(/.*at [^\(]*\((.*):.+:.+\)$/gi.exec(o.stack)||[!1])[1];for(t in e)if(e[t].src==n||"interactive"==e[t].readyState)return e[t];return null}}})}(document)},f751:function(t,e,n){var o=n("5ca1");o(o.S+o.F,"Object",{assign:n("7333")})},fa5b:function(t,e,n){t.exports=n("5537")("native-function-to-string",Function.toString)},fab2:function(t,e,n){var o=n("7726").document;t.exports=o&&o.documentElement},fb15:function(t,e,n){"use strict";var o;(n.r(e),"undefined"!=typeof window)&&(n("f6fd"),(o=window.document.currentScript)&&(o=o.src.match(/(.+\/)[^/]+\.js(\?.*)?$/))&&(n.p=o[1]));n("f751"),n("f559"),n("ac6a"),n("cadf"),n("456d");function r(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}function i(t,e){if(t){if("string"==typeof t)return r(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(t,e):void 0}}function a(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],o=!0,r=!1,i=void 0;try{for(var a,l=t[Symbol.iterator]();!(o=(a=l.next()).done)&&(n.push(a.value),!e||n.length!==e);o=!0);}catch(t){r=!0,i=t}finally{try{o||null==l.return||l.return()}finally{if(r)throw i}}return n}}(t,e)||i(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}n("6762"),n("2fdb");function l(t){return function(t){if(Array.isArray(t))return r(t)}(t)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||i(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var s=n("a352"),c=n.n(s),u=n("c649");function f(t,e){var n=this;this.$nextTick(function(){return n.$emit(t.toLowerCase(),e)})}function d(t){return["transition-group","TransitionGroup"].includes(t)}function h(t,e,n){return t[n]||(e[n]?e[n]():void 0)}var p=["Start","Add","Remove","Update","End"],v=["Choose","Unchoose","Sort","Filter","Clone"],g=["Move"].concat(p,v).map(function(t){return"on"+t}),m=null,b={name:"draggable",inheritAttrs:!1,props:{options:Object,list:{type:Array,required:!1,default:null},value:{type:Array,required:!1,default:null},noTransitionOnDrag:{type:Boolean,default:!1},clone:{type:Function,default:function(t){return t}},element:{type:String,default:"div"},tag:{type:String,default:null},move:{type:Function,default:null},componentData:{type:Object,required:!1,default:null}},data:function(){return{transitionMode:!1,noneFunctionalComponentMode:!1}},render:function(t){var e=this.$slots.default;this.transitionMode=function(t){if(!t||1!==t.length)return!1;var e=a(t,1)[0].componentOptions;return!!e&&d(e.tag)}(e);var n=function(t,e,n){var o=0,r=0,i=h(e,n,"header");i&&(o=i.length,t=t?[].concat(l(i),l(t)):l(i));var a=h(e,n,"footer");return a&&(r=a.length,t=t?[].concat(l(t),l(a)):l(a)),{children:t,headerOffset:o,footerOffset:r}}(e,this.$slots,this.$scopedSlots),o=n.children,r=n.headerOffset,i=n.footerOffset;this.headerOffset=r,this.footerOffset=i;var s=function(t,e){var n=null,o=function(t,e){n=function(t,e,n){return void 0===n?t:((t=t||{})[e]=n,t)}(n,t,e)};if(o("attrs",Object.keys(t).filter(function(t){return"id"===t||t.startsWith("data-")}).reduce(function(e,n){return e[n]=t[n],e},{})),!e)return n;var r=e.on,i=e.props,a=e.attrs;return o("on",r),o("props",i),Object.assign(n.attrs,a),n}(this.$attrs,this.componentData);return t(this.getTag(),s,o)},created:function(){null!==this.list&&null!==this.value&&u.b.error("Value and list props are mutually exclusive! Please set one or another."),"div"!==this.element&&u.b.warn("Element props is deprecated please use tag props instead. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#element-props"),void 0!==this.options&&u.b.warn("Options props is deprecated, add sortable options directly as vue.draggable item, or use v-bind. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#options-props")},mounted:function(){var t=this;if(this.noneFunctionalComponentMode=this.getTag().toLowerCase()!==this.$el.nodeName.toLowerCase()&&!this.getIsFunctional(),this.noneFunctionalComponentMode&&this.transitionMode)throw new Error("Transition-group inside component is not supported. Please alter tag value or remove transition-group. Current tag value: ".concat(this.getTag()));var e={};p.forEach(function(n){e["on"+n]=function(t){var e=this;return function(n){null!==e.realList&&e["onDrag"+t](n),f.call(e,t,n)}}.call(t,n)}),v.forEach(function(n){e["on"+n]=f.bind(t,n)});var n=Object.keys(this.$attrs).reduce(function(e,n){return e[Object(u.a)(n)]=t.$attrs[n],e},{}),o=Object.assign({},this.options,n,e,{onMove:function(e,n){return t.onDragMove(e,n)}});!("draggable"in o)&&(o.draggable=">*"),this._sortable=new c.a(this.rootContainer,o),this.computeIndexes()},beforeDestroy:function(){void 0!==this._sortable&&this._sortable.destroy()},computed:{rootContainer:function(){return this.transitionMode?this.$el.children[0]:this.$el},realList:function(){return this.list?this.list:this.value}},watch:{options:{handler:function(t){this.updateOptions(t)},deep:!0},$attrs:{handler:function(t){this.updateOptions(t)},deep:!0},realList:function(){this.computeIndexes()}},methods:{getIsFunctional:function(){var t=this._vnode.fnOptions;return t&&t.functional},getTag:function(){return this.tag||this.element},updateOptions:function(t){for(var e in t){var n=Object(u.a)(e);-1===g.indexOf(n)&&this._sortable.option(n,t[e])}},getChildrenNodes:function(){if(this.noneFunctionalComponentMode)return this.$children[0].$slots.default;var t=this.$slots.default;return this.transitionMode?t[0].child.$slots.default:t},computeIndexes:function(){var t=this;this.$nextTick(function(){t.visibleIndexes=function(t,e,n,o){if(!t)return[];var r=t.map(function(t){return t.elm}),i=e.length-o,a=l(e).map(function(t,e){return e>=i?r.length:r.indexOf(t)});return n?a.filter(function(t){return-1!==t}):a}(t.getChildrenNodes(),t.rootContainer.children,t.transitionMode,t.footerOffset)})},getUnderlyingVm:function(t){var e=function(t,e){return t.map(function(t){return t.elm}).indexOf(e)}(this.getChildrenNodes()||[],t);return-1===e?null:{index:e,element:this.realList[e]}},getUnderlyingPotencialDraggableComponent:function(t){var e=t.__vue__;return e&&e.$options&&d(e.$options._componentTag)?e.$parent:!("realList"in e)&&1===e.$children.length&&"realList"in e.$children[0]?e.$children[0]:e},emitChanges:function(t){var e=this;this.$nextTick(function(){e.$emit("change",t)})},alterList:function(t){if(this.list)t(this.list);else{var e=l(this.value);t(e),this.$emit("input",e)}},spliceList:function(){var t=arguments,e=function(e){return e.splice.apply(e,l(t))};this.alterList(e)},updatePosition:function(t,e){var n=function(n){return n.splice(e,0,n.splice(t,1)[0])};this.alterList(n)},getRelatedContextFromMoveEvent:function(t){var e=t.to,n=t.related,o=this.getUnderlyingPotencialDraggableComponent(e);if(!o)return{component:o};var r=o.realList,i={list:r,component:o};if(e!==n&&r&&o.getUnderlyingVm){var a=o.getUnderlyingVm(n);if(a)return Object.assign(a,i)}return i},getVmIndex:function(t){var e=this.visibleIndexes,n=e.length;return t>n-1?n:e[t]},getComponent:function(){return this.$slots.default[0].componentInstance},resetTransitionData:function(t){if(this.noTransitionOnDrag&&this.transitionMode){this.getChildrenNodes()[t].data=null;var e=this.getComponent();e.children=[],e.kept=void 0}},onDragStart:function(t){this.context=this.getUnderlyingVm(t.item),t.item._underlying_vm_=this.clone(this.context.element),m=t.item},onDragAdd:function(t){var e=t.item._underlying_vm_;if(void 0!==e){Object(u.d)(t.item);var n=this.getVmIndex(t.newIndex);this.spliceList(n,0,e),this.computeIndexes();var o={element:e,newIndex:n};this.emitChanges({added:o})}},onDragRemove:function(t){if(Object(u.c)(this.rootContainer,t.item,t.oldIndex),"clone"!==t.pullMode){var e=this.context.index;this.spliceList(e,1);var n={element:this.context.element,oldIndex:e};this.resetTransitionData(e),this.emitChanges({removed:n})}else Object(u.d)(t.clone)},onDragUpdate:function(t){Object(u.d)(t.item),Object(u.c)(t.from,t.item,t.oldIndex);var e=this.context.index,n=this.getVmIndex(t.newIndex);this.updatePosition(e,n);var o={element:this.context.element,oldIndex:e,newIndex:n};this.emitChanges({moved:o})},updateProperty:function(t,e){t.hasOwnProperty(e)&&(t[e]+=this.headerOffset)},computeFutureIndex:function(t,e){if(!t.element)return 0;var n=l(e.to.children).filter(function(t){return"none"!==t.style.display}),o=n.indexOf(e.related),r=t.component.getVmIndex(o);return-1!==n.indexOf(m)||!e.willInsertAfter?r:r+1},onDragMove:function(t,e){var n=this.move;if(!n||!this.realList)return!0;var o=this.getRelatedContextFromMoveEvent(t),r=this.context,i=this.computeFutureIndex(o,t);return Object.assign(r,{futureIndex:i}),n(Object.assign({},t,{relatedContext:o,draggedContext:r}),e)},onDragEnd:function(){this.computeIndexes(),m=null}}};"undefined"!=typeof window&&"Vue"in window&&window.Vue.component("draggable",b);var y=b;e.default=y}}).default})}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-f259.b3588244.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-f259.b3588244.js index cc7addab8..919ae7785 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-f259.b3588244.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-f259.b3588244.js @@ -28,4 +28,4 @@ * @version 5.5.11 * @date 2017-01-06 */ -!function(e,t){module.exports=t()}(0,function(){return function(e){var t={};function i(n){if(t[n])return t[n].exports;var r=t[n]={exports:{},id:n,loaded:!1};return e[n].call(r.exports,r,r.exports,i),r.loaded=!0,r.exports}return i.m=e,i.c=t,i.p="",i(0)}([function(e,t,i){"use strict";var n;try{n=i(1)}catch(e){}var r=i(51),o=i(62),s=i(54);function a(e,t,i){if(!(this instanceof a))throw new Error('JSONEditor constructor called without "new".');var n=s.getInternetExplorerVersion();if(-1!=n&&n<9)throw new Error("Unsupported browser, IE9 or newer required. Please install the newest version of your browser.");if(t&&(t.error&&(console.warn('Option "error" has been renamed to "onError"'),t.onError=t.error,delete t.error),t.change&&(console.warn('Option "change" has been renamed to "onChange"'),t.onChange=t.change,delete t.change),t.editable&&(console.warn('Option "editable" has been renamed to "onEditable"'),t.onEditable=t.editable,delete t.editable),t)){var r=["ace","theme","ajv","schema","onChange","onEditable","onError","onModeChange","escapeUnicode","history","search","mode","modes","name","indentation","sortObjectKeys"];Object.keys(t).forEach(function(e){-1===r.indexOf(e)&&console.warn('Unknown option "'+e+'". This option will be ignored')})}arguments.length&&this._create(e,t,i)}a.modes={},a.prototype.DEBOUNCE_INTERVAL=150,a.prototype._create=function(e,t,i){this.container=e,this.options=t||{},this.json=i||{};var n=this.options.mode||"tree";this.setMode(n)},a.prototype.destroy=function(){},a.prototype.set=function(e){this.json=e},a.prototype.get=function(){return this.json},a.prototype.setText=function(e){this.json=s.parse(e)},a.prototype.getText=function(){return JSON.stringify(this.json)},a.prototype.setName=function(e){this.options||(this.options={}),this.options.name=e},a.prototype.getName=function(){return this.options&&this.options.name},a.prototype.setMode=function(e){var t,i,n=this.container,r=s.extend({},this.options),o=r.mode;r.mode=e;var l=a.modes[e];if(!l)throw new Error('Unknown mode "'+r.mode+'"');try{var c="text"==l.data;if(i=this.getName(),t=this[c?"getText":"get"](),this.destroy(),s.clear(this),s.extend(this,l.mixin),this.create(n,r),this.setName(i),this[c?"setText":"set"](t),"function"==typeof l.load)try{l.load.call(this)}catch(e){console.error(e)}if("function"==typeof r.onModeChange&&e!==o)try{r.onModeChange(e,o)}catch(e){console.error(e)}}catch(e){this._onError(e)}},a.prototype.getMode=function(){return this.options.mode},a.prototype._onError=function(e){if(!this.options||"function"!=typeof this.options.onError)throw e;this.options.onError(e)},a.prototype.setSchema=function(e){if(e){var t;try{t=this.options.ajv||n({allErrors:!0,verbose:!0})}catch(e){console.warn("Failed to create an instance of Ajv, JSON Schema validation is not available. Please use a JSONEditor bundle including Ajv, or pass an instance of Ajv as via the configuration option `ajv`.")}t&&(this.validateSchema=t.compile(e),this.options.schema=e,this.validate()),this.refresh()}else this.validateSchema=null,this.options.schema=null,this.validate(),this.refresh()},a.prototype.validate=function(){},a.prototype.refresh=function(){},a.registerMode=function(e){var t,i;if(s.isArray(e))for(t=0;t<e.length;t++)a.registerMode(e[t]);else{if(!("mode"in e))throw new Error('Property "mode" missing');if(!("mixin"in e))throw new Error('Property "mixin" missing');if(!("data"in e))throw new Error('Property "data" missing');var n=e.mode;if(n in a.modes)throw new Error('Mode "'+n+'" already registered');if("function"!=typeof e.mixin.create)throw new Error('Required function "create" missing on mixin');var r=["setMode","registerMode","modes"];for(t=0;t<r.length;t++)if((i=r[t])in e.mixin)throw new Error('Reserved property "'+i+'" not allowed in mixin');a.modes[n]=e}},a.registerMode(r),a.registerMode(o),e.exports=a},function(e,t,i){"use strict";var n=i(2),r=i(3),o=i(21),s=i(16),a=i(12),l=i(22),c=i(23),h=i(43),u=i(11),d=i(17),f=i(19);e.exports=y,y.prototype.compileAsync=d.compile,y.prototype.addKeyword=i(49),y.ValidationError=i(20);var p="http://json-schema.org/draft-04/schema",m=/^(?:(?:[a-z][a-z0-9+-.]*:)?\/\/)?[^\s]*$/i;function g(e){return m.test(e)}var v=["removeAdditional","useDefaults","coerceTypes"];function y(e){if(!(this instanceof y))return new y(e);var t=this;function w(e,i){var n;if("string"==typeof e){if(!(n=E(e)))throw new Error('no schema with key or ref "'+e+'"')}else{var r=S(e);n=r.validate||k(r)}var o=n(i);return n.async?"*"==t._opts.async?f(o):o:(t.errors=n.errors,o)}function b(e,i,n,o){if(Array.isArray(e))for(var s=0;s<e.length;s++)b(e[s],void 0,n,o);else $(i=r.normalizeId(i||e.id)),(t._schemas[i]=S(e,n,!0)).meta=o}function C(e,t,i){b(e,t,i,!0)}function A(e,i){var n=e.$schema||t._opts.defaultMeta||function(){var e=t._opts.meta;return t._opts.defaultMeta="object"==typeof e?e.id||e:t._opts.v5?h.META_SCHEMA_ID:p,t._opts.defaultMeta}(),r=t._formats.uri;t._formats.uri="function"==typeof r?g:m;var o=w(n,e);if(t._formats.uri=r,!o&&i){var s="schema is invalid:"+_();if("log"!=t._opts.validateSchema)throw new Error(s);console.error(s)}return o}function E(e){var t=x(e);switch(typeof t){case"object":return t.validate||k(t);case"string":return E(t)}}function x(e){return e=r.normalizeId(e),t._schemas[e]||t._refs[e]}function F(e,i){for(var n in e){var r=e[n];r.meta||i&&!i.test(n)||(t._cache.del(r.jsonStr),delete e[n])}}function S(e,i,n){if("object"!=typeof e)throw new Error("schema should be object");var o=a(e),l=t._cache.get(o);if(l)return l;n=n||!1!==t._opts.addUsedSchema;var c=r.normalizeId(e.id);c&&n&&$(c),!1===t._opts.validateSchema||i||A(e,!0);var h=r.ids.call(t,e),u=new s({id:c,schema:e,localRefs:h,jsonStr:o});return"#"!=c[0]&&n&&(t._refs[c]=u),t._cache.put(o,u),u}function k(e,i){if(e.compiling)return e.validate=s,s.schema=e.schema,s.errors=null,s.root=i||s,!0===e.schema.$async&&(s.async=!0),s;var r,o;e.compiling=!0,e.meta&&(r=t._opts,t._opts=t._metaOpts);try{o=n.call(t,e.schema,i,e.localRefs)}finally{e.compiling=!1,e.meta&&(t._opts=r)}return e.validate=o,e.refs=o.refs,e.refVal=o.refVal,e.root=o.root,o;function s(){var t=e.validate,i=t.apply(null,arguments);return s.errors=t.errors,i}}function _(e,i){if(!(e=e||t.errors))return"No errors";for(var n=void 0===(i=i||{}).separator?", ":i.separator,r=void 0===i.dataVar?"data":i.dataVar,o="",s=0;s<e.length;s++){var a=e[s];a&&(o+=r+a.dataPath+" "+a.message+n)}return o.slice(0,-n.length)}function D(e,i){"string"==typeof i&&(i=new RegExp(i)),t._formats[e]=i}function $(e){if(t._schemas[e]||t._refs[e])throw new Error('schema with key or id "'+e+'" already exists')}e=this._opts=u.copy(e)||{},this._schemas={},this._refs={},this._formats=l(e.format),this._cache=e.cache||new o,this._loadingSchemas={},this.RULES=c(),this.validate=w,this.compile=function(e){var t=S(e);return t.validate||k(t)},this.addSchema=b,this.addMetaSchema=C,this.validateSchema=A,this.getSchema=E,this.removeSchema=function(e){switch(typeof e){case"undefined":return F(t._schemas),F(t._refs),void t._cache.clear();case"string":var i=x(e);return i&&t._cache.del(i.jsonStr),delete t._schemas[e],void delete t._refs[e];case"object":if(e instanceof RegExp)return F(t._schemas,e),void F(t._refs,e);var n=a(e);t._cache.del(n);var o=e.id;o&&(o=r.normalizeId(o),delete t._schemas[o],delete t._refs[o])}},this.addFormat=D,this.errorsText=_,this._addSchema=S,this._compile=k,e.loopRequired=e.loopRequired||1/0,(e.async||e.transpile)&&d.setup(e),!0===e.beautify&&(e.beautify={indent_size:2}),"property"==e.errorDataPath&&(e._errorDataPathProperty=!0),this._metaOpts=function(){for(var e=u.copy(t._opts),i=0;i<v.length;i++)delete e[v[i]];return e}(),function(){if(!1!==t._opts.meta){var e=i(50);C(e,p,!0),t._refs["http://json-schema.org/schema"]=p}var n=t._opts.schemas;if(!n)return;if(Array.isArray(n))b(n);else for(var r in n)b(n[r],r)}(),e.formats&&function(){for(var e in t._opts.formats){var i=t._opts.formats[e];D(e,i)}}(),e.v5&&h.enable(this),"object"==typeof e.meta&&C(e.meta)}},function(module,exports,__webpack_require__){"use strict";var resolve=__webpack_require__(3),util=__webpack_require__(11),stableStringify=__webpack_require__(12),async=__webpack_require__(17),beautify=function(){try{return __webpack_require__(!function(){var e=new Error('Cannot find module "js-beautify"');throw e.code="MODULE_NOT_FOUND",e}()).js_beautify}catch(e){}}(),validateGenerator=__webpack_require__(18);function compile(schema,root,localRefs,baseId){var self=this,opts=this._opts,refVal=[void 0],refs={},patterns=[],patternsHash={},defaults=[],defaultsHash={},customRules=[];root=root||{schema:schema,refVal:refVal,refs:refs};var formats=this._formats,RULES=this.RULES;return localCompile(schema,root,localRefs,baseId);function localCompile(_schema,_root,localRefs,baseId){var isRoot=!_root||_root&&_root.schema==_schema;if(_root.schema!=root.schema)return compile.call(self,_schema,_root,localRefs,baseId);var $async=!0===_schema.$async;$async&&!opts.transpile&&async.setup(opts);var sourceCode=validateGenerator({isTop:!0,schema:_schema,isRoot:isRoot,baseId:baseId,root:_root,schemaPath:"",errSchemaPath:"#",errorPath:'""',RULES:RULES,validate:validateGenerator,util:util,resolve:resolve,resolveRef:resolveRef,usePattern:usePattern,useDefault:useDefault,useCustomRule:useCustomRule,opts:opts,formats:formats,self:self});sourceCode=vars(refVal,refValCode)+vars(patterns,patternCode)+vars(defaults,defaultCode)+vars(customRules,customRuleCode)+sourceCode,opts.beautify&&(beautify?sourceCode=beautify(sourceCode,opts.beautify):console.error('"npm install js-beautify" to use beautify option'));var validate,validateCode,transpile=opts._transpileFunc;try{validateCode=$async&&transpile?transpile(sourceCode):sourceCode,eval(validateCode),refVal[0]=validate}catch(e){throw console.error("Error compiling schema, function code:",validateCode),e}return validate.schema=_schema,validate.errors=null,validate.refs=refs,validate.refVal=refVal,validate.root=isRoot?validate:_root,$async&&(validate.async=!0),validate.sourceCode=sourceCode,validate}function resolveRef(e,t,i){t=resolve.url(e,t);var n,r,o=refs[t];if(void 0!==o)return resolvedRef(n=refVal[o],r="refVal["+o+"]");if(!i){var s=root.refs[t];if(void 0!==s)return resolvedRef(n=root.refVal[s],r=addLocalRef(t,n))}r=addLocalRef(t);var a=resolve.call(self,localCompile,root,t);if(!a){var l=localRefs&&localRefs[t];l&&(a=resolve.inlineRef(l,opts.inlineRefs)?l:compile.call(self,l,root,localRefs,e))}return a?(replaceLocalRef(t,a),resolvedRef(a,r)):void 0}function addLocalRef(e,t){var i=refVal.length;return refVal[i]=t,refs[e]=i,"refVal"+i}function replaceLocalRef(e,t){var i=refs[e];refVal[i]=t}function resolvedRef(e,t){return"object"==typeof e?{code:t,schema:e,inline:!0}:{code:t,async:e&&e.async}}function usePattern(e){var t=patternsHash[e];return void 0===t&&(t=patternsHash[e]=patterns.length,patterns[t]=e),"pattern"+t}function useDefault(e){switch(typeof e){case"boolean":case"number":return""+e;case"string":return util.toQuotedString(e);case"object":if(null===e)return"null";var t=stableStringify(e),i=defaultsHash[t];return void 0===i&&(i=defaultsHash[t]=defaults.length,defaults[i]=e),"default"+i}}function useCustomRule(e,t,i,n){var r,o=e.definition.compile,s=e.definition.inline,a=e.definition.macro;o?r=o.call(self,t,i):a?(r=a.call(self,t,i),!1!==opts.validateSchema&&self.validateSchema(r,!0)):r=s?s.call(self,n,e.keyword,t,i):e.definition.validate;var l=customRules.length;return customRules[l]=r,{code:"customRule"+l,validate:r}}}function patternCode(e,t){return"var pattern"+e+" = new RegExp("+util.toQuotedString(t[e])+");"}function defaultCode(e){return"var default"+e+" = defaults["+e+"];"}function refValCode(e,t){return t[e]?"var refVal"+e+" = refVal["+e+"];":""}function customRuleCode(e){return"var customRule"+e+" = customRules["+e+"];"}function vars(e,t){if(!e.length)return"";for(var i="",n=0;n<e.length;n++)i+=t(n,e);return i}module.exports=compile;var co=__webpack_require__(19),ucs2length=util.ucs2length,equal=__webpack_require__(10),ValidationError=__webpack_require__(20)},function(e,t,i){"use strict";var n=i(4),r=i(10),o=i(11),s=i(16);function a(e,t,i){var n=this._refs[i];if("string"==typeof n){if(!this._refs[n])return a.call(this,e,t,n);n=this._refs[n]}if((n=n||this._schemas[i])instanceof s)return d(n.schema,this._opts.inlineRefs)?n.schema:n.validate||this._compile(n);var r,o,c,h=l.call(this,t,i);return h&&(r=h.schema,t=h.root,c=h.baseId),r instanceof s?o=r.validate||e.call(this,r.schema,t,void 0,c):r&&(o=d(r,this._opts.inlineRefs)?r:e.call(this,r,t,void 0,c)),o}function l(e,t){var i=n.parse(t,!1,!0),r=p(i),o=f(e.schema.id);if(r!==o){var a=g(r),c=this._refs[a];if("string"==typeof c)return function(e,t,i){var n=l.call(this,e,t);if(n){var r=n.schema,o=n.baseId;return e=n.root,r.id&&(o=v(o,r.id)),h.call(this,i,o,r,e)}}.call(this,e,c,i);if(c instanceof s)c.validate||this._compile(c),e=c;else if((c=this._schemas[a])instanceof s){if(c.validate||this._compile(c),a==g(t))return{schema:c,root:e,baseId:o};e=c}if(!e.schema)return;o=f(e.schema.id)}return h.call(this,i,o,e.schema,e)}e.exports=a,a.normalizeId=g,a.fullPath=f,a.url=v,a.ids=function(e){var t=g(e.id),i={};return function e(t,s,a){if(Array.isArray(t))for(var l=0;l<t.length;l++)e.call(this,t[l],s+"/"+l,a);else if(t&&"object"==typeof t){if("string"==typeof t.id){var c=a=a?n.resolve(a,t.id):t.id;c=g(c);var h=this._refs[c];if("string"==typeof h&&(h=this._refs[h]),h&&h.schema){if(!r(t,h.schema))throw new Error('id "'+c+'" resolves to more than one schema')}else if(c!=g(s))if("#"==c[0]){if(i[c]&&!r(t,i[c]))throw new Error('id "'+c+'" resolves to more than one schema');i[c]=t}else this._refs[c]=s}for(var u in t)e.call(this,t[u],s+"/"+o.escapeFragment(u),a)}}.call(this,e,f(t,!1),t),i},a.inlineRef=d;var c=o.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function h(e,t,i,n){if(e.hash=e.hash||"","#/"==e.hash.slice(0,2)){for(var r=e.hash.split("/"),s=1;s<r.length;s++){var a=r[s];if(a){if(!(i=i[a=o.unescapeFragment(a)]))break;if(i.id&&!c[a]&&(t=v(t,i.id)),i.$ref){var h=v(t,i.$ref),u=l.call(this,n,h);u&&(i=u.schema,n=u.root,t=u.baseId)}}}return i&&i!=n.schema?{schema:i,root:n,baseId:t}:void 0}}var u=o.toHash(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum"]);function d(e,t){return!1!==t&&(void 0===t||!0===t?function e(t){var i;if(Array.isArray(t)){for(var n=0;n<t.length;n++)if("object"==typeof(i=t[n])&&!e(i))return!1}else for(var r in t){if("$ref"==r)return!1;if("object"==typeof(i=t[r])&&!e(i))return!1}return!0}(e):t?function e(t){var i,n=0;if(Array.isArray(t)){for(var r=0;r<t.length;r++)if("object"==typeof(i=t[r])&&(n+=e(i)),n==1/0)return 1/0}else for(var o in t){if("$ref"==o)return 1/0;if(u[o])n++;else if("object"==typeof(i=t[o])&&(n+=e(i)+1),n==1/0)return 1/0}return n}(e)<=t:void 0)}function f(e,t){return!1!==t&&(e=g(e)),p(n.parse(e,!1,!0))}function p(e){return(e.protocol||"")+(e.protocol?"//":"")+(e.host||"")+(e.path||"")+"#"}var m=/#\/?$/;function g(e){return e?e.replace(m,""):""}function v(e,t){return t=g(t),n.resolve(e,t)}},function(e,t,i){var n=i(5);function r(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}t.parse=v,t.resolve=function(e,t){return v(e,!1,!0).resolve(t)},t.resolveObject=function(e,t){return e?v(e,!1,!0).resolveObject(t):t},t.format=function(e){y(e)&&(e=v(e));return e instanceof r?e.format():r.prototype.format.call(e)},t.Url=r;var o=/^([a-z0-9.+-]+:)/i,s=/:[0-9]*$/,a=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),l=["'"].concat(a),c=["%","/","?",";","#"].concat(l),h=["/","?","#"],u=/^[a-z0-9A-Z_-]{0,63}$/,d=/^([a-z0-9A-Z_-]{0,63})(.*)$/,f={javascript:!0,"javascript:":!0},p={javascript:!0,"javascript:":!0},m={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},g=i(7);function v(e,t,i){if(e&&w(e)&&e instanceof r)return e;var n=new r;return n.parse(e,t,i),n}function y(e){return"string"==typeof e}function w(e){return"object"==typeof e&&null!==e}function b(e){return null===e}r.prototype.parse=function(e,t,i){if(!y(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var r=e;r=r.trim();var s=o.exec(r);if(s){var a=(s=s[0]).toLowerCase();this.protocol=a,r=r.substr(s.length)}if(i||s||r.match(/^\/\/[^@\/]+@[^@\/]+/)){var v="//"===r.substr(0,2);!v||s&&p[s]||(r=r.substr(2),this.slashes=!0)}if(!p[s]&&(v||s&&!m[s])){for(var w,b,C=-1,A=0;A<h.length;A++){-1!==(E=r.indexOf(h[A]))&&(-1===C||E<C)&&(C=E)}-1!==(b=-1===C?r.lastIndexOf("@"):r.lastIndexOf("@",C))&&(w=r.slice(0,b),r=r.slice(b+1),this.auth=decodeURIComponent(w)),C=-1;for(A=0;A<c.length;A++){var E;-1!==(E=r.indexOf(c[A]))&&(-1===C||E<C)&&(C=E)}-1===C&&(C=r.length),this.host=r.slice(0,C),r=r.slice(C),this.parseHost(),this.hostname=this.hostname||"";var x="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!x)for(var F=this.hostname.split(/\./),S=(A=0,F.length);A<S;A++){var k=F[A];if(k&&!k.match(u)){for(var _="",D=0,$=k.length;D<$;D++)k.charCodeAt(D)>127?_+="x":_+=k[D];if(!_.match(u)){var L=F.slice(0,A),B=F.slice(A+1),R=k.match(d);R&&(L.push(R[1]),B.unshift(R[2])),B.length&&(r="/"+B.join(".")+r),this.hostname=L.join(".");break}}}if(this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),!x){var T=this.hostname.split("."),M=[];for(A=0;A<T.length;++A){var O=T[A];M.push(O.match(/[^A-Za-z0-9_-]/)?"xn--"+n.encode(O):O)}this.hostname=M.join(".")}var P=this.port?":"+this.port:"",N=this.hostname||"";this.host=N+P,this.href+=this.host,x&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==r[0]&&(r="/"+r))}if(!f[a])for(A=0,S=l.length;A<S;A++){var I=l[A],j=encodeURIComponent(I);j===I&&(j=escape(I)),r=r.split(I).join(j)}var W=r.indexOf("#");-1!==W&&(this.hash=r.substr(W),r=r.slice(0,W));var H=r.indexOf("?");if(-1!==H?(this.search=r.substr(H),this.query=r.substr(H+1),t&&(this.query=g.parse(this.query)),r=r.slice(0,H)):t&&(this.search="",this.query={}),r&&(this.pathname=r),m[a]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){P=this.pathname||"",O=this.search||"";this.path=P+O}return this.href=this.format(),this},r.prototype.format=function(){var e=this.auth||"";e&&(e=(e=encodeURIComponent(e)).replace(/%3A/i,":"),e+="@");var t=this.protocol||"",i=this.pathname||"",n=this.hash||"",r=!1,o="";this.host?r=e+this.host:this.hostname&&(r=e+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(r+=":"+this.port)),this.query&&w(this.query)&&Object.keys(this.query).length&&(o=g.stringify(this.query));var s=this.search||o&&"?"+o||"";return t&&":"!==t.substr(-1)&&(t+=":"),this.slashes||(!t||m[t])&&!1!==r?(r="//"+(r||""),i&&"/"!==i.charAt(0)&&(i="/"+i)):r||(r=""),n&&"#"!==n.charAt(0)&&(n="#"+n),s&&"?"!==s.charAt(0)&&(s="?"+s),t+r+(i=i.replace(/[?#]/g,function(e){return encodeURIComponent(e)}))+(s=s.replace("#","%23"))+n},r.prototype.resolve=function(e){return this.resolveObject(v(e,!1,!0)).format()},r.prototype.resolveObject=function(e){if(y(e)){var t=new r;t.parse(e,!1,!0),e=t}var i=new r;if(Object.keys(this).forEach(function(e){i[e]=this[e]},this),i.hash=e.hash,""===e.href)return i.href=i.format(),i;if(e.slashes&&!e.protocol)return Object.keys(e).forEach(function(t){"protocol"!==t&&(i[t]=e[t])}),m[i.protocol]&&i.hostname&&!i.pathname&&(i.path=i.pathname="/"),i.href=i.format(),i;if(e.protocol&&e.protocol!==i.protocol){if(!m[e.protocol])return Object.keys(e).forEach(function(t){i[t]=e[t]}),i.href=i.format(),i;if(i.protocol=e.protocol,e.host||p[e.protocol])i.pathname=e.pathname;else{for(var n=(e.pathname||"").split("/");n.length&&!(e.host=n.shift()););e.host||(e.host=""),e.hostname||(e.hostname=""),""!==n[0]&&n.unshift(""),n.length<2&&n.unshift(""),i.pathname=n.join("/")}if(i.search=e.search,i.query=e.query,i.host=e.host||"",i.auth=e.auth,i.hostname=e.hostname||e.host,i.port=e.port,i.pathname||i.search){var o=i.pathname||"",s=i.search||"";i.path=o+s}return i.slashes=i.slashes||e.slashes,i.href=i.format(),i}var a=i.pathname&&"/"===i.pathname.charAt(0),l=e.host||e.pathname&&"/"===e.pathname.charAt(0),c=l||a||i.host&&e.pathname,h=c,u=i.pathname&&i.pathname.split("/")||[],d=(n=e.pathname&&e.pathname.split("/")||[],i.protocol&&!m[i.protocol]);if(d&&(i.hostname="",i.port=null,i.host&&(""===u[0]?u[0]=i.host:u.unshift(i.host)),i.host="",e.protocol&&(e.hostname=null,e.port=null,e.host&&(""===n[0]?n[0]=e.host:n.unshift(e.host)),e.host=null),c=c&&(""===n[0]||""===u[0])),l)i.host=e.host||""===e.host?e.host:i.host,i.hostname=e.hostname||""===e.hostname?e.hostname:i.hostname,i.search=e.search,i.query=e.query,u=n;else if(n.length)u||(u=[]),u.pop(),u=u.concat(n),i.search=e.search,i.query=e.query;else if(!function(e){return null==e}(e.search)){if(d)i.hostname=i.host=u.shift(),(C=!!(i.host&&i.host.indexOf("@")>0)&&i.host.split("@"))&&(i.auth=C.shift(),i.host=i.hostname=C.shift());return i.search=e.search,i.query=e.query,b(i.pathname)&&b(i.search)||(i.path=(i.pathname?i.pathname:"")+(i.search?i.search:"")),i.href=i.format(),i}if(!u.length)return i.pathname=null,i.search?i.path="/"+i.search:i.path=null,i.href=i.format(),i;for(var f=u.slice(-1)[0],g=(i.host||e.host)&&("."===f||".."===f)||""===f,v=0,w=u.length;w>=0;w--)"."==(f=u[w])?u.splice(w,1):".."===f?(u.splice(w,1),v++):v&&(u.splice(w,1),v--);if(!c&&!h)for(;v--;v)u.unshift("..");!c||""===u[0]||u[0]&&"/"===u[0].charAt(0)||u.unshift(""),g&&"/"!==u.join("/").substr(-1)&&u.push("");var C,A=""===u[0]||u[0]&&"/"===u[0].charAt(0);d&&(i.hostname=i.host=A?"":u.length?u.shift():"",(C=!!(i.host&&i.host.indexOf("@")>0)&&i.host.split("@"))&&(i.auth=C.shift(),i.host=i.hostname=C.shift()));return(c=c||i.host&&u.length)&&!A&&u.unshift(""),u.length?i.pathname=u.join("/"):(i.pathname=null,i.path=null),b(i.pathname)&&b(i.search)||(i.path=(i.pathname?i.pathname:"")+(i.search?i.search:"")),i.auth=e.auth||i.auth,i.slashes=i.slashes||e.slashes,i.href=i.format(),i},r.prototype.parseHost=function(){var e=this.host,t=s.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},function(e,t,i){var n;(function(e,r){!function(o){"object"==typeof t&&t&&t.nodeType,"object"==typeof e&&e&&e.nodeType;var s="object"==typeof r&&r;s.global!==s&&s.window!==s&&s.self;var a,l=2147483647,c=36,h=1,u=26,d=38,f=700,p=72,m=128,g="-",v=/^xn--/,y=/[^\x20-\x7E]/,w=/[\x2E\u3002\uFF0E\uFF61]/g,b={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},C=c-h,A=Math.floor,E=String.fromCharCode;function x(e){throw RangeError(b[e])}function F(e,t){for(var i=e.length,n=[];i--;)n[i]=t(e[i]);return n}function S(e,t){var i=e.split("@"),n="";return i.length>1&&(n=i[0]+"@",e=i[1]),n+F((e=e.replace(w,".")).split("."),t).join(".")}function k(e){for(var t,i,n=[],r=0,o=e.length;r<o;)(t=e.charCodeAt(r++))>=55296&&t<=56319&&r<o?56320==(64512&(i=e.charCodeAt(r++)))?n.push(((1023&t)<<10)+(1023&i)+65536):(n.push(t),r--):n.push(t);return n}function _(e){return F(e,function(e){var t="";return e>65535&&(t+=E((e-=65536)>>>10&1023|55296),e=56320|1023&e),t+=E(e)}).join("")}function D(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:c}function $(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function L(e,t,i){var n=0;for(e=i?A(e/f):e>>1,e+=A(e/t);e>C*u>>1;n+=c)e=A(e/C);return A(n+(C+1)*e/(e+d))}function B(e){var t,i,n,r,o,s,a,d,f,v,y=[],w=e.length,b=0,C=m,E=p;for((i=e.lastIndexOf(g))<0&&(i=0),n=0;n<i;++n)e.charCodeAt(n)>=128&&x("not-basic"),y.push(e.charCodeAt(n));for(r=i>0?i+1:0;r<w;){for(o=b,s=1,a=c;r>=w&&x("invalid-input"),((d=D(e.charCodeAt(r++)))>=c||d>A((l-b)/s))&&x("overflow"),b+=d*s,!(d<(f=a<=E?h:a>=E+u?u:a-E));a+=c)s>A(l/(v=c-f))&&x("overflow"),s*=v;E=L(b-o,t=y.length+1,0==o),A(b/t)>l-C&&x("overflow"),C+=A(b/t),b%=t,y.splice(b++,0,C)}return _(y)}function R(e){var t,i,n,r,o,s,a,d,f,v,y,w,b,C,F,S=[];for(w=(e=k(e)).length,t=m,i=0,o=p,s=0;s<w;++s)(y=e[s])<128&&S.push(E(y));for(n=r=S.length,r&&S.push(g);n<w;){for(a=l,s=0;s<w;++s)(y=e[s])>=t&&y<a&&(a=y);for(a-t>A((l-i)/(b=n+1))&&x("overflow"),i+=(a-t)*b,t=a,s=0;s<w;++s)if((y=e[s])<t&&++i>l&&x("overflow"),y==t){for(d=i,f=c;!(d<(v=f<=o?h:f>=o+u?u:f-o));f+=c)F=d-v,C=c-v,S.push(E($(v+F%C,0))),d=A(F/C);S.push(E($(d,0))),o=L(i,b,n==r),i=0,++n}++i,++t}return S.join("")}a={version:"1.3.2",ucs2:{decode:k,encode:_},decode:B,encode:R,toASCII:function(e){return S(e,function(e){return y.test(e)?"xn--"+R(e):e})},toUnicode:function(e){return S(e,function(e){return v.test(e)?B(e.slice(4).toLowerCase()):e})}},void 0===(n=function(){return a}.call(t,i,t,e))||(e.exports=n)}()}).call(t,i(6)(e),function(){return this}())},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children=[],e.webpackPolyfill=1),e}},function(e,t,i){"use strict";t.decode=t.parse=i(8),t.encode=t.stringify=i(9)},function(e,t){"use strict";function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.exports=function(e,t,n,r){t=t||"&",n=n||"=";var o={};if("string"!=typeof e||0===e.length)return o;var s=/\+/g;e=e.split(t);var a=1e3;r&&"number"==typeof r.maxKeys&&(a=r.maxKeys);var l=e.length;a>0&&l>a&&(l=a);for(var c=0;c<l;++c){var h,u,d,f,p=e[c].replace(s,"%20"),m=p.indexOf(n);m>=0?(h=p.substr(0,m),u=p.substr(m+1)):(h=p,u=""),d=decodeURIComponent(h),f=decodeURIComponent(u),i(o,d)?Array.isArray(o[d])?o[d].push(f):o[d]=[o[d],f]:o[d]=f}return o}},function(e,t){"use strict";var i=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}};e.exports=function(e,t,n,r){return t=t||"&",n=n||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map(function(r){var o=encodeURIComponent(i(r))+n;return Array.isArray(e[r])?e[r].map(function(e){return o+encodeURIComponent(i(e))}).join(t):o+encodeURIComponent(i(e[r]))}).join(t):r?encodeURIComponent(i(r))+n+encodeURIComponent(i(e)):""}},function(e,t){"use strict";e.exports=function e(t,i){if(t===i)return!0;var n,r=Array.isArray(t),o=Array.isArray(i);if(r&&o){if(t.length!=i.length)return!1;for(n=0;n<t.length;n++)if(!e(t[n],i[n]))return!1;return!0}if(r!=o)return!1;if(t&&i&&"object"==typeof t&&"object"==typeof i){var s=Object.keys(t);if(s.length!==Object.keys(i).length)return!1;for(n=0;n<s.length;n++)if(void 0===i[s[n]])return!1;for(n=0;n<s.length;n++)if(!e(t[s[n]],i[s[n]]))return!1;return!0}return!1}},function(e,t,i){"use strict";function n(e,t,i){var n=i?" !== ":" === ",r=i?" || ":" && ",o=i?"!":"",s=i?"":"!";switch(e){case"null":return t+n+"null";case"array":return o+"Array.isArray("+t+")";case"object":return"("+o+t+r+"typeof "+t+n+'"object"'+r+s+"Array.isArray("+t+"))";case"integer":return"(typeof "+t+n+'"number"'+r+s+"("+t+" % 1))";default:return"typeof "+t+n+'"'+e+'"'}}e.exports={copy:function(e,t){for(var i in t=t||{},e)t[i]=e[i];return t},checkDataType:n,checkDataTypes:function(e,t){switch(e.length){case 1:return n(e[0],t,!0);default:var i="",r=o(e);for(var s in r.array&&r.object&&(i=r.null?"(":"(!"+t+" || ",i+="typeof "+t+' !== "object")',delete r.null,delete r.array,delete r.object),r.number&&delete r.integer,r)i+=(i?" && ":"")+n(s,t,!0);return i}},coerceToTypes:function(e){if(Array.isArray(e)){for(var t=[],i=0;i<e.length;i++){var n=e[i];r[n]&&(t[t.length]=n)}if(t.length)return t}else if(r[e])return[e]},toHash:o,getProperty:l,escapeQuotes:c,ucs2length:function(e){var t,i=0,n=e.length,r=0;for(;r<n;)i++,(t=e.charCodeAt(r++))>=55296&&t<=56319&&r<n&&56320==(64512&(t=e.charCodeAt(r)))&&r++;return i},varOccurences:function(e,t){t+="[^0-9]";var i=e.match(new RegExp(t,"g"));return i?i.length:0},varReplace:function(e,t,i){return t+="([^0-9])",i=i.replace(/\$/g,"$$$$"),e.replace(new RegExp(t,"g"),i+"$1")},cleanUpCode:function(e){return e.replace(h,"").replace(u,"").replace(d,"if (!($1))")},cleanUpVarErrors:function(e,t){var i=e.match(f);return i&&2===i.length?t?e.replace(m,"").replace(y,w):e.replace(p,"").replace(g,v):e},schemaHasRules:function(e,t){for(var i in e)if(t[i])return!0},stableStringify:i(12),toQuotedString:b,getPathExpr:function(e,t,i,n){return A(e,i?"'/' + "+t+(n?"":".replace(/~/g, '~0').replace(/\\//g, '~1')"):n?"'[' + "+t+" + ']'":"'[\\'' + "+t+" + '\\']'")},getPath:function(e,t,i){var n=b(i?"/"+E(t):l(t));return A(e,n)},getData:function(e,t,i){var n=e.match(C);if(!n)throw new Error("Invalid relative JSON-pointer: "+e);var r=+n[1],o=n[2];if("#"==o){if(r>=t)throw new Error("Cannot access property/index "+r+" levels up, current level is "+t);return i[t-r]}if(r>t)throw new Error("Cannot access data "+r+" levels up, current level is "+t);var s="data"+(t-r||"");if(!o)return s;for(var a=s,c=o.split("/"),h=0;h<c.length;h++){var u=c[h];u&&(s+=l(x(u)),a+=" && "+s)}return a},unescapeFragment:function(e){return x(decodeURIComponent(e))},escapeFragment:function(e){return encodeURIComponent(E(e))},escapeJsonPointer:E};var r=o(["string","number","integer","boolean","null"]);function o(e){for(var t={},i=0;i<e.length;i++)t[e[i]]=!0;return t}var s=/^[a-z$_][a-z$_0-9]*$/i,a=/'|\\/g;function l(e){return"number"==typeof e?"["+e+"]":s.test(e)?"."+e:"['"+e.replace(a,"\\$&")+"']"}function c(e){return e.replace(a,"\\$&")}var h=/else\s*{\s*}/g,u=/if\s*\([^)]+\)\s*\{\s*\}(?!\s*else)/g,d=/if\s*\(([^)]+)\)\s*\{\s*\}\s*else(?!\s*if)/g;var f=/[^v\.]errors/g,p=/var errors = 0;|var vErrors = null;|validate.errors = vErrors;/g,m=/var errors = 0;|var vErrors = null;/g,g="return errors === 0;",v="validate.errors = null; return true;",y=/if \(errors === 0\) return true;\s*else throw new ValidationError\(vErrors\);/,w="return true;";function b(e){return"'"+c(e)+"'"}var C=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function A(e,t){return'""'==e?t:(e+" + "+t).replace(/' \+ '/g,"")}function E(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function x(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}},function(e,t,i){var n="undefined"!=typeof JSON?JSON:i(13);e.exports=function(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});var i=t.space||"";"number"==typeof i&&(i=Array(i+1).join(" "));var s="boolean"==typeof t.cycles&&t.cycles,a=t.replacer||function(e,t){return t},l=t.cmp&&function(e){return function(t){return function(i,n){var r={key:i,value:t[i]},o={key:n,value:t[n]};return e(r,o)}}}(t.cmp),c=[];return function e(t,h,u,d){var f=i?"\n"+new Array(d+1).join(i):"",p=i?": ":":";if(u&&u.toJSON&&"function"==typeof u.toJSON&&(u=u.toJSON()),void 0!==(u=a.call(t,h,u))){if("object"!=typeof u||null===u)return n.stringify(u);if(r(u)){for(var m=[],g=0;g<u.length;g++){var v=e(u,g,u[g],d+1)||n.stringify(null);m.push(f+i+v)}return"["+m.join(",")+f+"]"}if(-1!==c.indexOf(u)){if(s)return n.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}c.push(u);var y=o(u).sort(l&&l(u));for(m=[],g=0;g<y.length;g++){var w=e(u,h=y[g],u[h],d+1);if(w){var b=n.stringify(h)+p+w;m.push(f+i+b)}}return c.splice(c.indexOf(u),1),"{"+m.join(",")+f+"}"}}({"":e},"",e,0)};var r=Array.isArray||function(e){return"[object Array]"==={}.toString.call(e)},o=Object.keys||function(e){var t=Object.prototype.hasOwnProperty||function(){return!0},i=[];for(var n in e)t.call(e,n)&&i.push(n);return i}},function(e,t,i){t.parse=i(14),t.stringify=i(15)},function(e,t){var i,n,r,o,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"},a=function(e){throw{name:"SyntaxError",message:e,at:i,text:r}},l=function(e){return e&&e!==n&&a("Expected '"+e+"' instead of '"+n+"'"),n=r.charAt(i),i+=1,n},c=function(){var e,t="";for("-"===n&&(t="-",l("-"));n>="0"&&n<="9";)t+=n,l();if("."===n)for(t+=".";l()&&n>="0"&&n<="9";)t+=n;if("e"===n||"E"===n)for(t+=n,l(),"-"!==n&&"+"!==n||(t+=n,l());n>="0"&&n<="9";)t+=n,l();if(e=+t,isFinite(e))return e;a("Bad number")},h=function(){var e,t,i,r="";if('"'===n)for(;l();){if('"'===n)return l(),r;if("\\"===n)if(l(),"u"===n){for(i=0,t=0;t<4&&(e=parseInt(l(),16),isFinite(e));t+=1)i=16*i+e;r+=String.fromCharCode(i)}else{if("string"!=typeof s[n])break;r+=s[n]}else r+=n}a("Bad string")},u=function(){for(;n&&n<=" ";)l()};o=function(){switch(u(),n){case"{":return function(){var e,t={};if("{"===n){if(l("{"),u(),"}"===n)return l("}"),t;for(;n;){if(e=h(),u(),l(":"),Object.hasOwnProperty.call(t,e)&&a('Duplicate key "'+e+'"'),t[e]=o(),u(),"}"===n)return l("}"),t;l(","),u()}}a("Bad object")}();case"[":return function(){var e=[];if("["===n){if(l("["),u(),"]"===n)return l("]"),e;for(;n;){if(e.push(o()),u(),"]"===n)return l("]"),e;l(","),u()}}a("Bad array")}();case'"':return h();case"-":return c();default:return n>="0"&&n<="9"?c():function(){switch(n){case"t":return l("t"),l("r"),l("u"),l("e"),!0;case"f":return l("f"),l("a"),l("l"),l("s"),l("e"),!1;case"n":return l("n"),l("u"),l("l"),l("l"),null}a("Unexpected '"+n+"'")}()}},e.exports=function(e,t){var s;return r=e,i=0,n=" ",s=o(),u(),n&&a("Syntax error"),"function"==typeof t?function e(i,n){var r,o,s=i[n];if(s&&"object"==typeof s)for(r in s)Object.prototype.hasOwnProperty.call(s,r)&&(void 0!==(o=e(s,r))?s[r]=o:delete s[r]);return t.call(i,n,s)}({"":s},""):s}},function(e,t){var i,n,r,o=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,s={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function a(e){return o.lastIndex=0,o.test(e)?'"'+e.replace(o,function(e){var t=s[e];return"string"==typeof t?t:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+e+'"'}e.exports=function(e,t,o){var s;if(i="",n="","number"==typeof o)for(s=0;s<o;s+=1)n+=" ";else"string"==typeof o&&(n=o);if(r=t,t&&"function"!=typeof t&&("object"!=typeof t||"number"!=typeof t.length))throw new Error("JSON.stringify");return function e(t,o){var s,l,c,h,u,d=i,f=o[t];switch(f&&"object"==typeof f&&"function"==typeof f.toJSON&&(f=f.toJSON(t)),"function"==typeof r&&(f=r.call(o,t,f)),typeof f){case"string":return a(f);case"number":return isFinite(f)?String(f):"null";case"boolean":case"null":return String(f);case"object":if(!f)return"null";if(i+=n,u=[],"[object Array]"===Object.prototype.toString.apply(f)){for(h=f.length,s=0;s<h;s+=1)u[s]=e(s,f)||"null";return c=0===u.length?"[]":i?"[\n"+i+u.join(",\n"+i)+"\n"+d+"]":"["+u.join(",")+"]",i=d,c}if(r&&"object"==typeof r)for(h=r.length,s=0;s<h;s+=1)"string"==typeof(l=r[s])&&(c=e(l,f))&&u.push(a(l)+(i?": ":":")+c);else for(l in f)Object.prototype.hasOwnProperty.call(f,l)&&(c=e(l,f))&&u.push(a(l)+(i?": ":":")+c);return c=0===u.length?"{}":i?"{\n"+i+u.join(",\n"+i)+"\n"+d+"}":"{"+u.join(",")+"}",i=d,c}}("",{"":e})}},function(e,t,i){"use strict";var n=i(11);e.exports=function(e){n.copy(e,this)}},function(module,exports,__webpack_require__){"use strict";module.exports={setup:setupAsync,compile:compileAsync};var util=__webpack_require__(11),ASYNC={"*":checkGenerators,"co*":checkGenerators,es7:checkAsyncFunction},TRANSPILE={nodent:getNodent,regenerator:getRegenerator},MODES=[{async:"co*"},{async:"es7",transpile:"nodent"},{async:"co*",transpile:"regenerator"}],regenerator,nodent;function setupAsync(e,t){!1!==t&&(t=!0);var i,n=e.async,r=e.transpile;switch(typeof r){case"string":var o=TRANSPILE[r];if(!o)throw new Error("bad transpiler: "+r);return e._transpileFunc=o(e,t);case"undefined":case"boolean":if("string"==typeof n){if(!(i=ASYNC[n]))throw new Error("bad async mode: "+n);return e.transpile=i(e,t)}for(var s=0;s<MODES.length;s++){var a=MODES[s];if(setupAsync(a,!1))return util.copy(a,e),e.transpile}throw new Error("generators, nodent and regenerator are not available");case"function":return e._transpileFunc=e.transpile;default:throw new Error("bad transpiler: "+r)}}function checkGenerators(opts,required){try{return eval("(function*(){})()"),!0}catch(e){if(required)throw new Error("generators not supported")}}function checkAsyncFunction(opts,required){try{return eval("(async function(){})()"),!0}catch(e){if(required)throw new Error("es7 async functions not supported")}}function getRegenerator(e,t){try{return regenerator||(regenerator=__webpack_require__(!function(){var e=new Error('Cannot find module "regenerator"');throw e.code="MODULE_NOT_FOUND",e}())).runtime(),e.async&&!0!==e.async||(e.async="es7"),regeneratorTranspile}catch(e){if(t)throw new Error("regenerator not available")}}function regeneratorTranspile(e){return regenerator.compile(e).code}function getNodent(e,t){try{return nodent||(nodent=__webpack_require__(!function(){var e=new Error('Cannot find module "nodent"');throw e.code="MODULE_NOT_FOUND",e}())({log:!1,dontInstallRequireHook:!0})),"es7"!=e.async&&(e.async&&!0!==e.async&&console.warn("nodent transpiles only es7 async functions"),e.async="es7"),nodentTranspile}catch(e){if(t)throw new Error("nodent not available")}}function nodentTranspile(e){return nodent.compile(e,"",{promises:!0,sourcemap:!1}).code}function compileAsync(e,t){var i,n=this;try{i=this._addSchema(e)}catch(e){return void setTimeout(function(){t(e)})}if(i.validate)setTimeout(function(){t(null,i.validate)});else{if("function"!=typeof this._opts.loadSchema)throw new Error("options.loadSchema should be a function");!function e(t,i,r){var o;try{o=n.compile(t)}catch(e){return void(e.missingSchema?function s(e){var r=e.missingSchema;if(n._refs[r]||n._schemas[r])return i(new Error("Schema "+r+" is loaded but"+e.missingRef+"cannot be resolved"));var o=n._loadingSchemas[r];o?"function"==typeof o?n._loadingSchemas[r]=[o,s]:o[o.length]=s:(n._loadingSchemas[r]=s,n._opts.loadSchema(r,function(e,t){var i=n._loadingSchemas[r];if(delete n._loadingSchemas[r],"function"==typeof i)i(e,t);else for(var o=0;o<i.length;o++)i[o](e,t)}));function s(e,o){if(e)return i(e);if(!n._refs[r]&&!n._schemas[r])try{n.addSchema(o,r)}catch(e){return void i(e)}!function e(t,i,r){var o;try{o=n.compile(t)}catch(e){return void(e.missingSchema?s(e):a(e))}a(null,o);function s(r){var o=r.missingSchema;if(n._refs[o]||n._schemas[o])return i(new Error("Schema "+o+" is loaded but"+r.missingRef+"cannot be resolved"));var s=n._loadingSchemas[o];function a(r,s){if(r)return i(r);if(!n._refs[o]&&!n._schemas[o])try{n.addSchema(s,o)}catch(e){return void i(e)}e(t,i)}s?"function"==typeof s?n._loadingSchemas[o]=[s,a]:s[s.length]=a:(n._loadingSchemas[o]=a,n._opts.loadSchema(o,function(e,t){var i=n._loadingSchemas[o];if(delete n._loadingSchemas[o],"function"==typeof i)i(e,t);else for(var r=0;r<i.length;r++)i[r](e,t)}))}function a(e,t){if(!r)return i(e,t);setTimeout(function(){i(e,t)})}}(t,i)}}(e):a(e))}a(null,o);function s(r){var o=r.missingSchema;if(n._refs[o]||n._schemas[o])return i(new Error("Schema "+o+" is loaded but"+r.missingRef+"cannot be resolved"));var s=n._loadingSchemas[o];function a(r,s){if(r)return i(r);if(!n._refs[o]&&!n._schemas[o])try{n.addSchema(s,o)}catch(e){return void i(e)}e(t,i)}s?"function"==typeof s?n._loadingSchemas[o]=[s,a]:s[s.length]=a:(n._loadingSchemas[o]=a,n._opts.loadSchema(o,function(e,t){var i=n._loadingSchemas[o];if(delete n._loadingSchemas[o],"function"==typeof i)i(e,t);else for(var r=0;r<i.length;r++)i[r](e,t)}))}function a(e,t){if(!r)return i(e,t);setTimeout(function(){i(e,t)})}}(e,t,!0)}}},function(e,t){"use strict";e.exports=function(e,t){var i="",n=!0===e.schema.$async;if(e.isTop){var r=e.isTop,o=e.level=0,s=e.dataLevel=0,a="data";if(e.rootId=e.resolve.fullPath(e.root.schema.id),e.baseId=e.baseId||e.rootId,n){e.async=!0;var l="es7"==e.opts.async;e.yieldAwait=l?"await":"yield"}delete e.isTop,e.dataPathArr=[void 0],i+=" validate = ",n?l?i+=" (async function ":("co*"==e.opts.async&&(i+="co.wrap"),i+="(function* "):i+=" (function ",i+=" (data, dataPath, parentData, parentDataProperty) { 'use strict'; var vErrors = null; ",i+=" var errors = 0; "}else{o=e.level,a="data"+((s=e.dataLevel)||"");if(e.schema.id&&(e.baseId=e.resolve.url(e.baseId,e.schema.id)),n&&!e.async)throw new Error("async schema in sync schema");i+=" var errs_"+o+" = errors;"}var c,h="valid"+o,u=!e.opts.allErrors,d="",f="",p=e.schema.type,m=Array.isArray(p);if(p&&e.opts.coerceTypes){var g=e.util.coerceToTypes(p);if(g){var v=e.schemaPath+".type",y=e.errSchemaPath+"/type",w=m?"checkDataTypes":"checkDataType";i+=" if ("+e.util[w](p,a,!0)+") { ";var b="dataType"+o,C="coerced"+o;i+=" var "+b+" = typeof "+a+"; var "+C+" = undefined; ";var A="",E=g;if(E)for(var x,F=-1,S=E.length-1;F<S;)x=E[F+=1],F&&(i+=" if ("+C+" === undefined) { ",A+="}"),"string"==x?i+=" if ("+b+" == 'number' || "+b+" == 'boolean') "+C+" = '' + "+a+"; else if ("+a+" === null) "+C+" = ''; ":"number"==x||"integer"==x?(i+=" if ("+b+" == 'boolean' || "+a+" === null || ("+b+" == 'string' && "+a+" && "+a+" == +"+a+" ","integer"==x&&(i+=" && !("+a+" % 1)"),i+=")) "+C+" = +"+a+"; "):"boolean"==x?i+=" if ("+a+" === 'false' || "+a+" === 0 || "+a+" === null) "+C+" = false; else if ("+a+" === 'true' || "+a+" === 1) "+C+" = true; ":"null"==x&&(i+=" if ("+a+" === '' || "+a+" === 0 || "+a+" === false) "+C+" = null; ");i+=" "+A+" if ("+C+" === undefined) { ",(oe=oe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(c||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+y+"\" , params: { type: '",i+=m?""+p.join(","):""+p,i+="' } ",!1!==e.opts.messages&&(i+=" , message: 'should be ",i+=m?""+p.join(","):""+p,i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+v+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+a+" "),i+=" } "):i+=" {} ";var k=i;if(i=oe.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+k+"]); ":i+=" validate.errors = ["+k+"]; return false; ":i+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { ",s)i+=" "+a+" = "+("data"+(s-1||""))+"["+e.dataPathArr[s]+"] = "+C+"; ";else i+=" data = "+C+"; if (parentData !== undefined) parentData[parentDataProperty] = "+C+"; ";i+=" } } "}}var _=e.RULES;if(_)for(var D,$=-1,L=_.length-1;$<L;)if(se(D=_[$+=1])){if(D.type&&(i+=" if ("+e.util.checkDataType(D.type,a)+") { "),e.opts.useDefaults&&!e.compositeRule)if("object"==D.type&&e.schema.properties){var B=e.schema.properties,R=Object.keys(B);if(R)for(var T,M=-1,O=R.length-1;M<O;){if(void 0!==(N=B[T=R[M+=1]]).default)i+=" if ("+(j=a+e.util.getProperty(T))+" === undefined) "+j+" = ","clone"==e.opts.useDefaults?i+=" "+JSON.stringify(N.default)+" ":i+=" "+e.useDefault(N.default)+" ",i+="; "}}else if("array"==D.type&&Array.isArray(e.schema.items)){var P=e.schema.items;if(P){F=-1;for(var N,I=P.length-1;F<I;){var j;if(void 0!==(N=P[F+=1]).default)i+=" if ("+(j=a+"["+F+"]")+" === undefined) "+j+" = ","clone"==e.opts.useDefaults?i+=" "+JSON.stringify(N.default)+" ":i+=" "+e.useDefault(N.default)+" ",i+="; "}}}var W=D.rules;if(W)for(var H,z=-1,V=W.length-1;z<V;)if(ae(H=W[z+=1])){if(H.custom){B=e.schema[H.keyword];var U=e.useCustomRule(H,B,e.schema,e),q=U.code+".errors",K=(v=e.schemaPath+"."+H.keyword,y=e.errSchemaPath+"/"+H.keyword,"errs"+o),G=(F="i"+o,"ruleErr"+o),Y=H.definition,Q=Y.async,X=Y.inline,J=Y.macro;if(Q&&!e.async)throw new Error("async keyword in sync schema");if(X||J||(i+=q+" = null;"),i+="var "+K+" = errors;var valid"+o+";",X&&Y.statements)i+=" "+U.validate;else if(J){var Z=e.util.copy(e);Z.level++,Z.schema=U.validate,Z.schemaPath="";var ee=e.compositeRule;e.compositeRule=Z.compositeRule=!0;var te=e.validate(Z).replace(/validate\.schema/g,U.code);e.compositeRule=Z.compositeRule=ee,i+=" "+te}else if(Y.compile||Y.validate){(oe=oe||[]).push(i),i="",i+=" "+U.code+".call( ",e.opts.passContext?i+="this":i+="self";U.validate.length;Y.compile||!1===Y.schema?i+=" , "+a+" ":i+=" , validate.schema"+v+" , "+a+" , validate.schema"+e.schemaPath+" ",i+=" , (dataPath || '')",'""'!=e.errorPath&&(i+=" + "+e.errorPath),i+=s?" , data"+(s-1||"")+" , "+e.dataPathArr[s]+" ":" , parentData , parentDataProperty ";var ie=i+=" ) ";i=oe.pop(),!1!==Y.errors&&(i+=Q?" var "+(q="customErrors"+o)+" = null; try { valid"+o+" = "+e.yieldAwait+ie+"; } catch (e) { valid"+o+" = false; if (e instanceof ValidationError) "+q+" = e.errors; else throw e; } ":" "+U.code+".errors = null; ")}i+="if (! ",X?Y.statements?i+=" valid"+o+" ":i+=" ("+U.validate+") ":J?i+=" valid"+Z.level+" ":Q?!1===Y.errors?i+=" ("+e.yieldAwait+ie+") ":i+=" valid"+o+" ":i+=" "+ie+" ",i+=") { ",c=H.keyword,(oe=oe||[]).push(i),i="",(oe=oe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(c||"custom")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+y+"\" , params: { keyword: '"+H.keyword+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should pass \""+H.keyword+"\" keyword validation' "),e.opts.verbose&&(i+=" , schema: validate.schema"+v+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+a+" "),i+=" } "):i+=" {} ";k=i;i=oe.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+k+"]); ":i+=" validate.errors = ["+k+"]; return false; ":i+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";var ne=i;i=oe.pop(),X?Y.errors?"full"!=Y.errors&&(i+=" for (var "+F+"="+K+"; "+F+"<errors; "+F+"++) { var "+G+" = vErrors["+F+"]; if ("+G+".dataPath === undefined) { "+G+".dataPath = (dataPath || '') + "+e.errorPath+"; } if ("+G+".schemaPath === undefined) { "+G+'.schemaPath = "'+y+'"; } ',e.opts.verbose&&(i+=" "+G+".schema = validate.schema"+v+"; "+G+".data = "+a+"; "),i+=" } "):!1===Y.errors?i+=" "+ne+" ":(i+=" if ("+K+" == errors) { "+ne+" } else { for (var "+F+"="+K+"; "+F+"<errors; "+F+"++) { var "+G+" = vErrors["+F+"]; if ("+G+".dataPath === undefined) { "+G+".dataPath = (dataPath || '') + "+e.errorPath+"; } if ("+G+".schemaPath === undefined) { "+G+'.schemaPath = "'+y+'"; } ',e.opts.verbose&&(i+=" "+G+".schema = validate.schema"+v+"; "+G+".data = "+a+"; "),i+=" } } "):J?(i+=" var err = ",!1!==e.createErrors?(i+=" { keyword: '"+(c||"custom")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+y+"\" , params: { keyword: '"+H.keyword+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should pass \""+H.keyword+"\" keyword validation' "),e.opts.verbose&&(i+=" , schema: validate.schema"+v+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+a+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&u&&(e.async?i+=" throw new ValidationError(vErrors); ":i+=" validate.errors = vErrors; return false ")):!1===Y.errors?i+=" "+ne+" ":(i+=" if (Array.isArray("+q+")) { if (vErrors === null) vErrors = "+q+"; else vErrors.concat("+q+"); errors = vErrors.length; for (var "+F+"="+K+"; "+F+"<errors; "+F+"++) { var "+G+" = vErrors["+F+"]; "+G+".dataPath = (dataPath || '') + "+e.errorPath+"; "+G+'.schemaPath = "'+y+'"; ',e.opts.verbose&&(i+=" "+G+".schema = validate.schema"+v+"; "+G+".data = "+a+"; "),i+=" } } else { "+ne+" } "),c=void 0,i+=" } ",u&&(i+=" else { ")}else i+=" "+H.code(e,H.keyword)+" ";u&&(d+="}")}if(u&&(i+=" "+d+" ",d=""),D.type&&(i+=" } ",p&&p===D.type)){var re=!0;i+=" else { ";v=e.schemaPath+".type",y=e.errSchemaPath+"/type";(oe=oe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(c||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+y+"\" , params: { type: '",i+=m?""+p.join(","):""+p,i+="' } ",!1!==e.opts.messages&&(i+=" , message: 'should be ",i+=m?""+p.join(","):""+p,i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+v+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+a+" "),i+=" } "):i+=" {} ";k=i;i=oe.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+k+"]); ":i+=" validate.errors = ["+k+"]; return false; ":i+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } "}u&&(i+=" if (errors === ",i+=r?"0":"errs_"+o,i+=") { ",f+="}")}if(p&&!re&&(!e.opts.coerceTypes||!g)){var oe;v=e.schemaPath+".type",y=e.errSchemaPath+"/type",w=m?"checkDataTypes":"checkDataType";i+=" if ("+e.util[w](p,a,!0)+") { ",(oe=oe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(c||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+y+"\" , params: { type: '",i+=m?""+p.join(","):""+p,i+="' } ",!1!==e.opts.messages&&(i+=" , message: 'should be ",i+=m?""+p.join(","):""+p,i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+v+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+a+" "),i+=" } "):i+=" {} ";k=i;i=oe.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+k+"]); ":i+=" validate.errors = ["+k+"]; return false; ":i+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" }"}function se(e){for(var t=0;t<e.rules.length;t++)if(ae(e.rules[t]))return!0}function ae(t){return void 0!==e.schema[t.keyword]||"properties"==t.keyword&&(!1===e.schema.additionalProperties||"object"==typeof e.schema.additionalProperties||e.schema.patternProperties&&Object.keys(e.schema.patternProperties).length||e.opts.v5&&e.schema.patternGroups&&Object.keys(e.schema.patternGroups).length)}return u&&(i+=" "+f+" "),r?(n?(i+=" if (errors === 0) return true; ",i+=" else throw new ValidationError(vErrors); "):(i+=" validate.errors = vErrors; ",i+=" return errors === 0; "),i+=" });"):i+=" var "+h+" = errors === errs_"+o+";",i=e.util.cleanUpCode(i),r&&u&&(i=e.util.cleanUpVarErrors(i,n)),i}},function(e,t){var i=Array.prototype.slice;function n(e){var t=this,n=i.call(arguments,1);return new Promise(function(i,s){if("function"==typeof e&&(e=e.apply(t,n)),!e||"function"!=typeof e.next)return i(e);function a(t){var i;try{i=e.next(t)}catch(e){return s(e)}c(i)}function l(t){var i;try{i=e.throw(t)}catch(e){return s(e)}c(i)}function c(e){if(e.done)return i(e.value);var n=r.call(t,e.value);return n&&o(n)?n.then(a,l):l(new TypeError('You may only yield a function, promise, generator, array, or object, but the following object was passed: "'+String(e.value)+'"'))}a()})}function r(e){return e?o(e)?e:function(e){var t=e.constructor;return!!t&&("GeneratorFunction"===t.name||"GeneratorFunction"===t.displayName||s(t.prototype))}(e)||s(e)?n.call(this,e):"function"==typeof e?function(e){var t=this;return new Promise(function(n,r){e.call(t,function(e,t){if(e)return r(e);arguments.length>2&&(t=i.call(arguments,1)),n(t)})})}.call(this,e):Array.isArray(e)?function(e){return Promise.all(e.map(r,this))}.call(this,e):function(e){return Object==e.constructor}(e)?function(e){for(var t=new e.constructor,i=Object.keys(e),n=[],s=0;s<i.length;s++){var a=i[s],l=r.call(this,e[a]);l&&o(l)?c(l,a):t[a]=e[a]}return Promise.all(n).then(function(){return t});function c(e,i){t[i]=void 0,n.push(e.then(function(e){t[i]=e}))}}.call(this,e):e:e}function o(e){return"function"==typeof e.then}function s(e){return"function"==typeof e.next&&"function"==typeof e.throw}e.exports=n.default=n.co=n,n.wrap=function(e){return t.__generatorFunction__=e,t;function t(){return n.call(this,e.apply(this,arguments))}}},function(e,t){"use strict";function i(e){this.message="validation failed",this.errors=e,this.ajv=this.validation=!0}e.exports=i,i.prototype=Object.create(Error.prototype),i.prototype.constructor=i},function(e,t){"use strict";var i=e.exports=function(){this._cache={}};i.prototype.put=function(e,t){this._cache[e]=t},i.prototype.get=function(e){return this._cache[e]},i.prototype.del=function(e){delete this._cache[e]},i.prototype.clear=function(){this._cache={}}},function(e,t,i){"use strict";var n=i(11),r=/^\d\d\d\d-(\d\d)-(\d\d)$/,o=[0,31,29,31,30,31,30,31,31,30,31,30,31],s=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d:\d\d)?$/i,a=/^[a-z](?:(?:[-0-9a-z]{0,61})?[0-9a-z])?(\.[a-z](?:(?:[-0-9a-z]{0,61})?[0-9a-z])?)*$/i,l=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@\/?]|%[0-9a-f]{2})*)?(?:\#(?:[a-z0-9\-._~!$&'()*+,;=:@\/?]|%[0-9a-f]{2})*)?$/i,c=/^(?:urn\:uuid\:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,h=/^(?:\/(?:[^~\/]|~0|~1)+)*(?:\/)?$|^\#(?:\/(?:[a-z0-9_\-\.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)+)*(?:\/)?$/i,u=/^(?:0|[1-9][0-9]*)(?:\#|(?:\/(?:[^~\/]|~0|~1)+)*(?:\/)?)$/;function d(e){e="full"==e?"full":"fast";var t=n.copy(d[e]);for(var i in d.compare)t[i]={validate:t[i],compare:d.compare[i]};return t}function f(e){var t=e.match(r);if(!t)return!1;var i=+t[1],n=+t[2];return i>=1&&i<=12&&n>=1&&n<=o[i]}function p(e,t){var i=e.match(s);if(!i)return!1;var n=i[1],r=i[2],o=i[3],a=i[5];return n<=23&&r<=59&&o<=59&&(!t||a)}e.exports=d,d.fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^[0-2]\d:[0-5]\d:[0-5]\d(?:\.\d+)?(?:z|[+-]\d\d:\d\d)?$/i,"date-time":/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s][0-2]\d:[0-5]\d:[0-5]\d(?:\.\d+)?(?:z|[+-]\d\d:\d\d)$/i,uri:/^(?:[a-z][a-z0-9+-.]*)?(?:\:|\/)\/?[^\s]*$/i,email:/^[a-z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,hostname:a,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:v,uuid:c,"json-pointer":h,"relative-json-pointer":u},d.full={date:f,time:p,"date-time":function(e){var t=e.split(m);return f(t[0])&&p(t[1],!0)},uri:function(e){return g.test(e)&&l.test(e)},email:/^[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&''*+\/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:function(e){return e.length<=255&&a.test(e)},ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:v,uuid:c,"json-pointer":h,"relative-json-pointer":u},d.compare={date:y,time:w,"date-time":function(e,t){if(!e||!t)return;e=e.split(m),t=t.split(m);var i=y(e[0],t[0]);if(void 0===i)return;return i||w(e[1],t[1])}};var m=/t|\s/i;var g=/\/|\:/;function v(e){try{return new RegExp(e),!0}catch(e){return!1}}function y(e,t){if(e&&t)return e>t?1:e<t?-1:e===t?0:void 0}function w(e,t){if(e&&t&&(e=e.match(s),t=t.match(s),e&&t))return(e=e[1]+e[2]+e[3]+(e[4]||""))>(t=t[1]+t[2]+t[3]+(t[4]||""))?1:e<t?-1:e===t?0:void 0}},function(e,t,i){"use strict";var n=i(24),r=i(11);e.exports=function(){var e=[{type:"number",rules:["maximum","minimum","multipleOf"]},{type:"string",rules:["maxLength","minLength","pattern","format"]},{type:"array",rules:["maxItems","minItems","uniqueItems","items"]},{type:"object",rules:["maxProperties","minProperties","required","dependencies","properties"]},{rules:["$ref","enum","not","anyOf","oneOf","allOf"]}];return e.all=["type","additionalProperties","patternProperties"],e.keywords=["additionalItems","$schema","id","title","description","default"],e.types=["number","integer","string","array","object","boolean","null"],e.forEach(function(t){t.rules=t.rules.map(function(t){return e.all.push(t),{keyword:t,code:n[t]}})}),e.keywords=r.toHash(e.all.concat(e.keywords)),e.all=r.toHash(e.all),e.types=r.toHash(e.types),e}},function(e,t,i){"use strict";e.exports={$ref:i(25),allOf:i(26),anyOf:i(27),dependencies:i(28),enum:i(29),format:i(30),items:i(31),maximum:i(32),minimum:i(32),maxItems:i(33),minItems:i(33),maxLength:i(34),minLength:i(34),maxProperties:i(35),minProperties:i(35),multipleOf:i(36),not:i(37),oneOf:i(38),pattern:i(39),properties:i(40),required:i(41),uniqueItems:i(42),validate:i(18)}},function(e,t){"use strict";e.exports=function(e,t){var i,n,r=" ",o=e.level,s=e.dataLevel,a=e.schema[t],l=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,h="data"+(s||""),u="valid"+o;if("#"==a||"#/"==a)e.isRoot?(i=e.async,n="validate"):(i=!0===e.root.schema.$async,n="root.refVal[0]");else{var d=e.resolveRef(e.baseId,a,e.isRoot);if(void 0===d){var f="can't resolve reference "+a+" from id "+e.baseId;if("fail"==e.opts.missingRefs){console.log(f),(v=v||[]).push(r),r="",!1!==e.createErrors?(r+=" { keyword: '$ref' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+l+"\" , params: { ref: '"+e.util.escapeQuotes(a)+"' } ",!1!==e.opts.messages&&(r+=" , message: 'can\\'t resolve reference "+e.util.escapeQuotes(a)+"' "),e.opts.verbose&&(r+=" , schema: "+e.util.toQuotedString(a)+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),r+=" } "):r+=" {} ";var p=r;r=v.pop(),!e.compositeRule&&c?e.async?r+=" throw new ValidationError(["+p+"]); ":r+=" validate.errors = ["+p+"]; return false; ":r+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",c&&(r+=" if (false) { ")}else{if("ignore"!=e.opts.missingRefs){var m=new Error(f);throw m.missingRef=e.resolve.url(e.baseId,a),m.missingSchema=e.resolve.normalizeId(e.resolve.fullPath(m.missingRef)),m}console.log(f),c&&(r+=" if (true) { ")}}else if(d.inline){var g=e.util.copy(e);g.level++,g.schema=d.schema,g.schemaPath="",g.errSchemaPath=a,r+=" "+e.validate(g).replace(/validate\.schema/g,d.code)+" ",c&&(r+=" if (valid"+g.level+") { ")}else i=d.async,n=d.code}if(n){var v;(v=v||[]).push(r),r="",e.opts.passContext?r+=" "+n+".call(this, ":r+=" "+n+"( ",r+=" "+h+", (dataPath || '')",'""'!=e.errorPath&&(r+=" + "+e.errorPath),r+=s?" , data"+(s-1||"")+" , "+e.dataPathArr[s]+" ":" , parentData , parentDataProperty ";var y=r+=") ";if(r=v.pop(),i){if(!e.async)throw new Error("async schema referenced by sync schema");r+=" try { ",c&&(r+="var "+u+" ="),r+=" "+e.yieldAwait+" "+y+"; } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; } ",c&&(r+=" if ("+u+") { ")}else r+=" if (!"+y+") { if (vErrors === null) vErrors = "+n+".errors; else vErrors = vErrors.concat("+n+".errors); errors = vErrors.length; } ",c&&(r+=" else { ")}return r}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.schema[t],r=e.schemaPath+"."+t,o=e.errSchemaPath+"/"+t,s=!e.opts.allErrors,a=e.util.copy(e),l="";a.level++;var c=n;if(c)for(var h,u=-1,d=c.length-1;u<d;)h=c[u+=1],e.util.schemaHasRules(h,e.RULES.all)&&(a.schema=h,a.schemaPath=r+"["+u+"]",a.errSchemaPath=o+"/"+u,i+=" "+e.validate(a)+" ",s&&(i+=" if (valid"+a.level+") { ",l+="}"));return s&&(i+=" "+l.slice(0,-1)),i=e.util.cleanUpCode(i)}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="errs__"+n,d=e.util.copy(e),f="";if(d.level++,o.every(function(t){return e.util.schemaHasRules(t,e.RULES.all)})){i+=" var "+u+" = errors; var "+h+" = false; ";var p=e.compositeRule;e.compositeRule=d.compositeRule=!0;var m=o;if(m)for(var g,v=-1,y=m.length-1;v<y;)g=m[v+=1],d.schema=g,d.schemaPath=s+"["+v+"]",d.errSchemaPath=a+"/"+v,i+=" "+e.validate(d)+" "+h+" = "+h+" || valid"+d.level+"; if (!"+h+") { ",f+="}";e.compositeRule=d.compositeRule=p,i+=" "+f+" if (!"+h+") { var err = ",!1!==e.createErrors?(i+=" { keyword: 'anyOf' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should match some schema in anyOf' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else { errors = "+u+"; if (vErrors !== null) { if ("+u+") vErrors.length = "+u+"; else vErrors = null; } ",e.opts.allErrors&&(i+=" } "),i=e.util.cleanUpCode(i)}else l&&(i+=" if (true) { ");return i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="errs__"+n,u=e.util.copy(e),d="";u.level++;var f={},p={};for(y in o){var m=o[y],g=Array.isArray(m)?p:f;g[y]=m}i+="var "+h+" = errors;";var v=e.errorPath;for(var y in i+="var missing"+n+";",p){g=p[y],i+=" if ("+c+e.util.getProperty(y)+" !== undefined && ( ";var w=g;if(w)for(var b,C=-1,A=w.length-1;C<A;){b=w[C+=1],C&&(i+=" || ");var E=e.util.getProperty(b);i+=" ( "+c+E+" === undefined && (missing"+n+" = "+e.util.toQuotedString(e.opts.jsonPointers?b:E)+") ) "}i+=")) { ";var x="missing"+n,F="' + "+x+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.opts.jsonPointers?e.util.getPathExpr(v,x,!0):v+" + "+x);var S=S||[];S.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { property: '"+e.util.escapeQuotes(y)+"', missingProperty: '"+F+"', depsCount: "+g.length+", deps: '"+e.util.escapeQuotes(1==g.length?g[0]:g.join(", "))+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should have ",1==g.length?i+="property "+e.util.escapeQuotes(g[0]):i+="properties "+e.util.escapeQuotes(g.join(", ")),i+=" when property "+e.util.escapeQuotes(y)+" is present' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var k=i;i=S.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+k+"]); ":i+=" validate.errors = ["+k+"]; return false; ":i+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",l&&(d+="}",i+=" else { ")}for(var y in e.errorPath=v,f){m=f[y];e.util.schemaHasRules(m,e.RULES.all)&&(i+=" valid"+u.level+" = true; if ("+c+"['"+y+"'] !== undefined) { ",u.schema=m,u.schemaPath=s+e.util.getProperty(y),u.errSchemaPath=a+"/"+e.util.escapeFragment(y),i+=" "+e.validate(u)+" } ",l&&(i+=" if (valid"+u.level+") { ",d+="}"))}return l&&(i+=" "+d+" if ("+h+" == errors) {"),i=e.util.cleanUpCode(i)}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u=e.opts.v5&&o.$data,d=u?e.util.getData(o.$data,r,e.dataPathArr):o;u&&(i+=" var schema"+n+" = "+d+"; ",d="schema"+n);var f="i"+n;u||(i+=" var schema"+n+" = validate.schema"+s+";"),i+="var "+h+";",u&&(i+=" if (schema"+n+" === undefined) "+h+" = true; else if (!Array.isArray(schema"+n+")) "+h+" = false; else {"),i+=h+" = false;for (var "+f+"=0; "+f+"<schema"+n+".length; "+f+"++) if (equal("+c+", schema"+n+"["+f+"])) { "+h+" = true; break; }",u&&(i+=" } "),i+=" if (!"+h+") { ";var p=p||[];p.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'enum' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should be equal to one of the allowed values' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var m=i;return i=p.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+m+"]); ":i+=" validate.errors = ["+m+"]; return false; ":i+=" var err = "+m+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" }",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||"");if(!1===e.opts.format)return l&&(i+=" if (true) { "),i;var h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;if(h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n),h){i+=" var "+(d="format"+n)+" = formats["+u+"]; var isObject"+n+" = typeof "+d+" == 'object' && !("+d+" instanceof RegExp) && "+d+".validate; if (isObject"+n+") { var async"+n+" = "+d+".async; "+d+" = "+d+".validate; } if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'string') || "),i+=" ("+d+" && !(typeof "+d+" == 'function' ? ",e.async?i+=" (async"+n+" ? "+e.yieldAwait+" "+d+"("+c+") : "+d+"("+c+")) ":i+=" "+d+"("+c+") ",i+=" : "+d+".test("+c+")))) {"}else{var d;if(!(d=e.formats[o]))return l&&(i+=" if (true) { "),i;var f="object"==typeof d&&!(d instanceof RegExp)&&d.validate;if(f){var p=!0===d.async;d=d.validate}if(p){if(!e.async)throw new Error("async format in sync schema");var m="formats"+e.util.getProperty(o)+".validate";i+=" if (!("+e.yieldAwait+" "+m+"("+c+"))) { "}else{i+=" if (! ";m="formats"+e.util.getProperty(o);f&&(m+=".validate"),i+="function"==typeof d?" "+m+"("+c+") ":" "+m+".test("+c+") ",i+=") { "}}var g=g||[];g.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'format' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { format: ',i+=h?""+u:""+e.util.toQuotedString(o),i+=" } ",!1!==e.opts.messages&&(i+=" , message: 'should match format \"",i+=h?"' + "+u+" + '":""+e.util.escapeQuotes(o),i+="\"' "),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+e.util.toQuotedString(o),i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var v=i;return i=g.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+v+"]); ":i+=" validate.errors = ["+v+"]; return false; ":i+=" var err = "+v+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="errs__"+n,d=e.util.copy(e),f="";d.level++;var p=d.dataLevel=e.dataLevel+1,m="data"+p;if(i+="var "+u+" = errors;var "+h+";",Array.isArray(o)){var g=e.schema.additionalItems;if(!1===g){i+=" "+h+" = "+c+".length <= "+o.length+"; ";var v=a;a=e.errSchemaPath+"/additionalItems",i+=" if (!"+h+") { ";var y=y||[];y.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'additionalItems' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { limit: '+o.length+" } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have more than "+o.length+" items' "),e.opts.verbose&&(i+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var w=i;i=y.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+w+"]); ":i+=" validate.errors = ["+w+"]; return false; ":i+=" var err = "+w+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",a=v,l&&(f+="}",i+=" else { ")}var b=o;if(b)for(var C,A=-1,E=b.length-1;A<E;)if(C=b[A+=1],e.util.schemaHasRules(C,e.RULES.all)){i+=" valid"+d.level+" = true; if ("+c+".length > "+A+") { ";var x=c+"["+A+"]";d.schema=C,d.schemaPath=s+"["+A+"]",d.errSchemaPath=a+"/"+A,d.errorPath=e.util.getPathExpr(e.errorPath,A,e.opts.jsonPointers,!0),d.dataPathArr[p]=A;var F=e.validate(d);e.util.varOccurences(F,m)<2?i+=" "+e.util.varReplace(F,m,x)+" ":i+=" var "+m+" = "+x+"; "+F+" ",i+=" } ",l&&(i+=" if (valid"+d.level+") { ",f+="}")}if("object"==typeof g&&e.util.schemaHasRules(g,e.RULES.all)){d.schema=g,d.schemaPath=e.schemaPath+".additionalItems",d.errSchemaPath=e.errSchemaPath+"/additionalItems",i+=" valid"+d.level+" = true; if ("+c+".length > "+o.length+") { for (var i"+n+" = "+o.length+"; i"+n+" < "+c+".length; i"+n+"++) { ",d.errorPath=e.util.getPathExpr(e.errorPath,"i"+n,e.opts.jsonPointers,!0);x=c+"[i"+n+"]";d.dataPathArr[p]="i"+n;F=e.validate(d);e.util.varOccurences(F,m)<2?i+=" "+e.util.varReplace(F,m,x)+" ":i+=" var "+m+" = "+x+"; "+F+" ",l&&(i+=" if (!valid"+d.level+") break; "),i+=" } } ",l&&(i+=" if (valid"+d.level+") { ",f+="}")}}else if(e.util.schemaHasRules(o,e.RULES.all)){d.schema=o,d.schemaPath=s,d.errSchemaPath=a,i+=" for (var i"+n+" = 0; i"+n+" < "+c+".length; i"+n+"++) { ",d.errorPath=e.util.getPathExpr(e.errorPath,"i"+n,e.opts.jsonPointers,!0);x=c+"[i"+n+"]";d.dataPathArr[p]="i"+n;F=e.validate(d);e.util.varOccurences(F,m)<2?i+=" "+e.util.varReplace(F,m,x)+" ":i+=" var "+m+" = "+x+"; "+F+" ",l&&(i+=" if (!valid"+d.level+") break; "),i+=" } ",l&&(i+=" if (valid"+d.level+") { ",f+="}")}return l&&(i+=" "+f+" if ("+u+" == errors) {"),i=e.util.cleanUpCode(i)}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n);var d="maximum"==t,f=d?"exclusiveMaximum":"exclusiveMinimum",p=e.schema[f],m=e.opts.v5&&p&&p.$data,g=d?"<":">",v=d?">":"<";if(m){var y=e.util.getData(p.$data,r,e.dataPathArr),w="exclusive"+n,b="' + "+(E="op"+n)+" + '";i+=" var schemaExcl"+n+" = "+y+"; ",i+=" var exclusive"+n+"; if (typeof "+(y="schemaExcl"+n)+" != 'boolean' && typeof "+y+" != 'undefined') { ";var C=f;(x=x||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(C||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: '"+f+" should be boolean' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var A=i;i=x.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+A+"]); ":i+=" validate.errors = ["+A+"]; return false; ":i+=" var err = "+A+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else if( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'number') || "),i+=" ((exclusive"+n+" = "+y+" === true) ? "+c+" "+v+"= "+u+" : "+c+" "+v+" "+u+")) { var op"+n+" = exclusive"+n+" ? '"+g+"' : '"+g+"=';"}else{b=g;(w=!0===p)||(b+="=");var E="'"+b+"'";i+=" if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'number') || "),i+=" "+c+" "+v,w&&(i+="="),i+=" "+u+") {"}var x;C=t;(x=x||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(C||"_limit")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { comparison: '+E+", limit: "+u+", exclusive: "+w+" } ",!1!==e.opts.messages&&(i+=" , message: 'should be "+b+" ",i+=h?"' + "+u:o+"'"),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";A=i;return i=x.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+A+"]); ":i+=" validate.errors = ["+A+"]; return false; ":i+=" var err = "+A+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n),i+="if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'number') || "),i+=" "+c+".length "+("maxItems"==t?">":"<")+" "+u+") { ";var d=t,f=f||[];f.push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(d||"_limitItems")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { limit: '+u+" } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have ",i+="maxItems"==t?"more":"less",i+=" than ",i+=h?"' + "+u+" + '":""+o,i+=" items' "),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var p=i;return i=f.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+p+"]); ":i+=" validate.errors = ["+p+"]; return false; ":i+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n);var d="maxLength"==t?">":"<";i+="if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'number') || "),!1===e.opts.unicode?i+=" "+c+".length ":i+=" ucs2length("+c+") ",i+=" "+d+" "+u+") { ";var f=t,p=p||[];p.push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(f||"_limitLength")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { limit: '+u+" } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT be ",i+="maxLength"==t?"longer":"shorter",i+=" than ",i+=h?"' + "+u+" + '":""+o,i+=" characters' "),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var m=i;return i=p.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+m+"]); ":i+=" validate.errors = ["+m+"]; return false; ":i+=" var err = "+m+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n),i+="if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'number') || "),i+=" Object.keys("+c+").length "+("maxProperties"==t?">":"<")+" "+u+") { ";var d=t,f=f||[];f.push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(d||"_limitProperties")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { limit: '+u+" } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have ",i+="maxProperties"==t?"more":"less",i+=" than ",i+=h?"' + "+u+" + '":""+o,i+=" properties' "),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var p=i;return i=f.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+p+"]); ":i+=" validate.errors = ["+p+"]; return false; ":i+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n),i+="var division"+n+";if (",h&&(i+=" "+u+" !== undefined && ( typeof "+u+" != 'number' || "),i+=" (division"+n+" = "+c+" / "+u+", ",e.opts.multipleOfPrecision?i+=" Math.abs(Math.round(division"+n+") - division"+n+") > 1e-"+e.opts.multipleOfPrecision+" ":i+=" division"+n+" !== parseInt(division"+n+") ",i+=" ) ",h&&(i+=" ) "),i+=" ) { ";var d=d||[];d.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'multipleOf' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { multipleOf: '+u+" } ",!1!==e.opts.messages&&(i+=" , message: 'should be multiple of ",i+=h?"' + "+u:o+"'"),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var f=i;return i=d.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+f+"]); ":i+=" validate.errors = ["+f+"]; return false; ":i+=" var err = "+f+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="errs__"+n,u=e.util.copy(e);if(u.level++,e.util.schemaHasRules(o,e.RULES.all)){u.schema=o,u.schemaPath=s,u.errSchemaPath=a,i+=" var "+h+" = errors; ";var d,f=e.compositeRule;e.compositeRule=u.compositeRule=!0,u.createErrors=!1,u.opts.allErrors&&(d=u.opts.allErrors,u.opts.allErrors=!1),i+=" "+e.validate(u)+" ",u.createErrors=!0,d&&(u.opts.allErrors=d),e.compositeRule=u.compositeRule=f,i+=" if (valid"+u.level+") { ";var p=p||[];p.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'not' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should NOT be valid' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var m=i;i=p.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+m+"]); ":i+=" validate.errors = ["+m+"]; return false; ":i+=" var err = "+m+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { errors = "+h+"; if (vErrors !== null) { if ("+h+") vErrors.length = "+h+"; else vErrors = null; } ",e.opts.allErrors&&(i+=" } ")}else i+=" var err = ",!1!==e.createErrors?(i+=" { keyword: 'not' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should NOT be valid' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",l&&(i+=" if (false) { ");return i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="errs__"+n,d=e.util.copy(e),f="";d.level++,i+="var "+u+" = errors;var prevValid"+n+" = false;var "+h+" = false; ";var p=e.compositeRule;e.compositeRule=d.compositeRule=!0;var m=o;if(m)for(var g,v=-1,y=m.length-1;v<y;)g=m[v+=1],e.util.schemaHasRules(g,e.RULES.all)?(d.schema=g,d.schemaPath=s+"["+v+"]",d.errSchemaPath=a+"/"+v,i+=" "+e.validate(d)+" "):i+=" var valid"+d.level+" = true; ",v&&(i+=" if (valid"+d.level+" && prevValid"+n+") "+h+" = false; else { ",f+="}"),i+=" if (valid"+d.level+") "+h+" = prevValid"+n+" = true;";e.compositeRule=d.compositeRule=p,i+=f+"if (!"+h+") { ";var w=w||[];w.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'oneOf' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should match exactly one schema in oneOf' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var b=i;return i=w.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+b+"]); ":i+=" validate.errors = ["+b+"]; return false; ":i+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} else { errors = "+u+"; if (vErrors !== null) { if ("+u+") vErrors.length = "+u+"; else vErrors = null; }",e.opts.allErrors&&(i+=" } "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n);var d=h?"(new RegExp("+u+"))":e.usePattern(o);i+="if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'string') || "),i+=" !"+d+".test("+c+") ) { ";var f=f||[];f.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'pattern' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { pattern: ',i+=h?""+u:""+e.util.toQuotedString(o),i+=" } ",!1!==e.opts.messages&&(i+=" , message: 'should match pattern \"",i+=h?"' + "+u+" + '":""+e.util.escapeQuotes(o),i+="\"' "),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+e.util.toQuotedString(o),i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var p=i;return i=f.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+p+"]); ":i+=" validate.errors = ["+p+"]; return false; ":i+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="errs__"+n,d=e.util.copy(e),f="";d.level++;var p=d.dataLevel=e.dataLevel+1,m="data"+p,g=Object.keys(o||{}),v=e.schema.patternProperties||{},y=Object.keys(v),w=e.schema.additionalProperties,b=g.length||y.length,C=!1===w,A="object"==typeof w&&Object.keys(w).length,E=e.opts.removeAdditional,x=C||A||E,F=e.schema.required;if(F&&(!e.opts.v5||!F.$data)&&F.length<e.opts.loopRequired)var S=e.util.toHash(F);if(e.opts.v5)var k=e.schema.patternGroups||{},_=Object.keys(k);if(i+="var "+u+" = errors;var valid"+d.level+" = true;",x){if(i+=" for (var key"+n+" in "+c+") { ",b){if(i+=" var isAdditional"+n+" = !(false ",g.length)if(g.length>5)i+=" || validate.schema"+s+"[key"+n+"] ";else{var D=g;if(D)for(var $=-1,L=D.length-1;$<L;)q=D[$+=1],i+=" || key"+n+" == "+e.util.toQuotedString(q)+" "}if(y.length){var B=y;if(B)for(var R=-1,T=B.length-1;R<T;)te=B[R+=1],i+=" || "+e.usePattern(te)+".test(key"+n+") "}if(e.opts.v5&&_&&_.length){var M=_;if(M){R=-1;for(var O=M.length-1;R<O;)oe=M[R+=1],i+=" || "+e.usePattern(oe)+".test(key"+n+") "}}i+=" ); if (isAdditional"+n+") { "}if("all"==E)i+=" delete "+c+"[key"+n+"]; ";else{var P=e.errorPath,N="' + key"+n+" + '";if(e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(e.errorPath,"key"+n,e.opts.jsonPointers)),C)if(E)i+=" delete "+c+"[key"+n+"]; ";else{i+=" valid"+d.level+" = false; ";var I=a;a=e.errSchemaPath+"/additionalProperties",(pe=pe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'additionalProperties' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { additionalProperty: '"+N+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have additional properties' "),e.opts.verbose&&(i+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var j=i;i=pe.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+j+"]); ":i+=" validate.errors = ["+j+"]; return false; ":i+=" var err = "+j+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a=I,l&&(i+=" break; ")}else if(A)if("failing"==E){i+=" var "+u+" = errors; ";var W=e.compositeRule;e.compositeRule=d.compositeRule=!0,d.schema=w,d.schemaPath=e.schemaPath+".additionalProperties",d.errSchemaPath=e.errSchemaPath+"/additionalProperties",d.errorPath=e.opts._errorDataPathProperty?e.errorPath:e.util.getPathExpr(e.errorPath,"key"+n,e.opts.jsonPointers);var H=c+"[key"+n+"]";d.dataPathArr[p]="key"+n;var z=e.validate(d);e.util.varOccurences(z,m)<2?i+=" "+e.util.varReplace(z,m,H)+" ":i+=" var "+m+" = "+H+"; "+z+" ",i+=" if (!valid"+d.level+") { errors = "+u+"; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete "+c+"[key"+n+"]; } ",e.compositeRule=d.compositeRule=W}else{d.schema=w,d.schemaPath=e.schemaPath+".additionalProperties",d.errSchemaPath=e.errSchemaPath+"/additionalProperties",d.errorPath=e.opts._errorDataPathProperty?e.errorPath:e.util.getPathExpr(e.errorPath,"key"+n,e.opts.jsonPointers);H=c+"[key"+n+"]";d.dataPathArr[p]="key"+n;z=e.validate(d);e.util.varOccurences(z,m)<2?i+=" "+e.util.varReplace(z,m,H)+" ":i+=" var "+m+" = "+H+"; "+z+" ",l&&(i+=" if (!valid"+d.level+") break; ")}e.errorPath=P}b&&(i+=" } "),i+=" } ",l&&(i+=" if (valid"+d.level+") { ",f+="}")}var V=e.opts.useDefaults&&!e.compositeRule;if(g.length){var U=g;if(U)for(var q,K=-1,G=U.length-1;K<G;){var Y=o[q=U[K+=1]];if(e.util.schemaHasRules(Y,e.RULES.all)){var Q=e.util.getProperty(q),X=(H=c+Q,V&&void 0!==Y.default);d.schema=Y,d.schemaPath=s+Q,d.errSchemaPath=a+"/"+e.util.escapeFragment(q),d.errorPath=e.util.getPath(e.errorPath,q,e.opts.jsonPointers),d.dataPathArr[p]=e.util.toQuotedString(q);z=e.validate(d);if(e.util.varOccurences(z,m)<2){z=e.util.varReplace(z,m,H);var J=H}else{J=m;i+=" var "+m+" = "+H+"; "}if(X)i+=" "+z+" ";else{if(S&&S[q]){i+=" if ("+J+" === undefined) { valid"+d.level+" = false; ";P=e.errorPath,I=a;var Z=e.util.escapeQuotes(q);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(P,q,e.opts.jsonPointers)),a=e.errSchemaPath+"/required",(pe=pe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+Z+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+Z+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";j=i;i=pe.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+j+"]); ":i+=" validate.errors = ["+j+"]; return false; ":i+=" var err = "+j+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a=I,e.errorPath=P,i+=" } else { "}else i+=l?" if ("+J+" === undefined) { valid"+d.level+" = true; } else { ":" if ("+J+" !== undefined) { ";i+=" "+z+" } "}}l&&(i+=" if (valid"+d.level+") { ",f+="}")}}var ee=y;if(ee)for(var te,ie=-1,ne=ee.length-1;ie<ne;){Y=v[te=ee[ie+=1]];if(e.util.schemaHasRules(Y,e.RULES.all)){d.schema=Y,d.schemaPath=e.schemaPath+".patternProperties"+e.util.getProperty(te),d.errSchemaPath=e.errSchemaPath+"/patternProperties/"+e.util.escapeFragment(te),i+=" for (var key"+n+" in "+c+") { if ("+e.usePattern(te)+".test(key"+n+")) { ",d.errorPath=e.util.getPathExpr(e.errorPath,"key"+n,e.opts.jsonPointers);H=c+"[key"+n+"]";d.dataPathArr[p]="key"+n;z=e.validate(d);e.util.varOccurences(z,m)<2?i+=" "+e.util.varReplace(z,m,H)+" ":i+=" var "+m+" = "+H+"; "+z+" ",l&&(i+=" if (!valid"+d.level+") break; "),i+=" } ",l&&(i+=" else valid"+d.level+" = true; "),i+=" } ",l&&(i+=" if (valid"+d.level+") { ",f+="}")}}if(e.opts.v5){var re=_;if(re)for(var oe,se=-1,ae=re.length-1;se<ae;){var le=k[oe=re[se+=1]];Y=le.schema;if(e.util.schemaHasRules(Y,e.RULES.all)){d.schema=Y,d.schemaPath=e.schemaPath+".patternGroups"+e.util.getProperty(oe)+".schema",d.errSchemaPath=e.errSchemaPath+"/patternGroups/"+e.util.escapeFragment(oe)+"/schema",i+=" var pgPropCount"+n+" = 0; for (var key"+n+" in "+c+") { if ("+e.usePattern(oe)+".test(key"+n+")) { pgPropCount"+n+"++; ",d.errorPath=e.util.getPathExpr(e.errorPath,"key"+n,e.opts.jsonPointers);H=c+"[key"+n+"]";d.dataPathArr[p]="key"+n;z=e.validate(d);e.util.varOccurences(z,m)<2?i+=" "+e.util.varReplace(z,m,H)+" ":i+=" var "+m+" = "+H+"; "+z+" ",l&&(i+=" if (!valid"+d.level+") break; "),i+=" } ",l&&(i+=" else valid"+d.level+" = true; "),i+=" } ",l&&(i+=" if (valid"+d.level+") { ",f+="}");var ce=le.minimum,he=le.maximum;if(void 0!==ce||void 0!==he){i+=" var "+h+" = true; ";I=a;if(void 0!==ce){var ue=ce,de="minimum",fe="less";i+=" "+h+" = pgPropCount"+n+" >= "+ce+"; ",a=e.errSchemaPath+"/patternGroups/minimum",i+=" if (!"+h+") { ",(pe=pe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'patternGroups' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { reason: '"+de+"', limit: "+ue+", pattern: '"+e.util.escapeQuotes(oe)+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have "+fe+" than "+ue+' properties matching pattern "'+e.util.escapeQuotes(oe)+"\"' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";j=i;i=pe.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+j+"]); ":i+=" validate.errors = ["+j+"]; return false; ":i+=" var err = "+j+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",void 0!==he&&(i+=" else ")}if(void 0!==he){var pe;ue=he,de="maximum",fe="more";i+=" "+h+" = pgPropCount"+n+" <= "+he+"; ",a=e.errSchemaPath+"/patternGroups/maximum",i+=" if (!"+h+") { ",(pe=pe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'patternGroups' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { reason: '"+de+"', limit: "+ue+", pattern: '"+e.util.escapeQuotes(oe)+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have "+fe+" than "+ue+' properties matching pattern "'+e.util.escapeQuotes(oe)+"\"' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";j=i;i=pe.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+j+"]); ":i+=" validate.errors = ["+j+"]; return false; ":i+=" var err = "+j+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } "}a=I,l&&(i+=" if ("+h+") { ",f+="}")}}}}return l&&(i+=" "+f+" if ("+u+" == errors) {"),i=e.util.cleanUpCode(i)}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u=e.opts.v5&&o.$data,d=u?e.util.getData(o.$data,r,e.dataPathArr):o;if(u&&(i+=" var schema"+n+" = "+d+"; ",d="schema"+n),!u)if(o.length<e.opts.loopRequired&&e.schema.properties&&Object.keys(e.schema.properties).length){var f=[],p=o;if(p)for(var m=-1,g=p.length-1;m<g;){D=p[m+=1];var v=e.schema.properties[D];v&&e.util.schemaHasRules(v,e.RULES.all)||(f[f.length]=D)}}else f=o;if(u||f.length){var y=e.errorPath,w=u||f.length>=e.opts.loopRequired;if(l)if(i+=" var missing"+n+"; ",w){u||(i+=" var schema"+n+" = validate.schema"+s+"; ");var b="' + "+(k="schema"+n+"["+(x="i"+n)+"]")+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(y,k,e.opts.jsonPointers)),i+=" var "+h+" = true; ",u&&(i+=" if (schema"+n+" === undefined) "+h+" = true; else if (!Array.isArray(schema"+n+")) "+h+" = false; else {"),i+=" for (var "+x+" = 0; "+x+" < schema"+n+".length; "+x+"++) { "+h+" = "+c+"[schema"+n+"["+x+"]] !== undefined; if (!"+h+") break; } ",u&&(i+=" } "),i+=" if (!"+h+") { ",(S=S||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+b+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+b+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var C=i;i=S.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+C+"]); ":i+=" validate.errors = ["+C+"]; return false; ":i+=" var err = "+C+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { "}else{i+=" if ( ";var A=f;if(A)for(var E,x=-1,F=A.length-1;x<F;){E=A[x+=1],x&&(i+=" || "),i+=" ( "+c+(L=e.util.getProperty(E))+" === undefined && (missing"+n+" = "+e.util.toQuotedString(e.opts.jsonPointers?E:L)+") ) "}i+=") { ";var S;b="' + "+(k="missing"+n)+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.opts.jsonPointers?e.util.getPathExpr(y,k,!0):y+" + "+k),(S=S||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+b+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+b+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";C=i;i=S.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+C+"]); ":i+=" validate.errors = ["+C+"]; return false; ":i+=" var err = "+C+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { "}else if(w){u||(i+=" var schema"+n+" = validate.schema"+s+"; ");var k;b="' + "+(k="schema"+n+"["+(x="i"+n)+"]")+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(y,k,e.opts.jsonPointers)),u&&(i+=" if (schema"+n+" && !Array.isArray(schema"+n+")) { var err = ",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+b+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+b+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if (schema"+n+" !== undefined) { "),i+=" for (var "+x+" = 0; "+x+" < schema"+n+".length; "+x+"++) { if ("+c+"[schema"+n+"["+x+"]] === undefined) { var err = ",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+b+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+b+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ",u&&(i+=" } ")}else{var _=f;if(_){x=-1;for(var D,$=_.length-1;x<$;){D=_[x+=1];var L=e.util.getProperty(D);b=e.util.escapeQuotes(D);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(y,D,e.opts.jsonPointers)),i+=" if ("+c+L+" === undefined) { var err = ",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+b+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+b+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}}e.errorPath=y}else l&&(i+=" if (true) {");return i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u=e.opts.v5&&o.$data,d=u?e.util.getData(o.$data,r,e.dataPathArr):o;if(u&&(i+=" var schema"+n+" = "+d+"; ",d="schema"+n),(o||u)&&!1!==e.opts.uniqueItems){u&&(i+=" var "+h+"; if ("+d+" === false || "+d+" === undefined) "+h+" = true; else if (typeof "+d+" != 'boolean') "+h+" = false; else { "),i+=" var "+h+" = true; if ("+c+".length > 1) { var i = "+c+".length, j; outer: for (;i--;) { for (j = i; j--;) { if (equal("+c+"[i], "+c+"[j])) { "+h+" = false; break outer; } } } } ",u&&(i+=" } "),i+=" if (!"+h+") { ";var f=f||[];f.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'uniqueItems' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { i: i, j: j } ',!1!==e.opts.messages&&(i+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' "),e.opts.verbose&&(i+=" , schema: ",i+=u?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var p=i;i=f.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+p+"]); ":i+=" validate.errors = ["+p+"]; return false; ":i+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",l&&(i+=" else { ")}else l&&(i+=" if (true) { ");return i}},function(e,t,i){"use strict";var n="https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/json-schema-v5.json";function r(e){return{not:{items:{not:e}}}}e.exports={enable:function(e){var t={switch:i(44),constant:i(45),_formatLimit:i(46),patternRequired:i(47)};if(!1!==e._opts.meta){var o=i(48);e.addMetaSchema(o,n)}function s(i,n,r){var o={inline:r||t[i],statements:!0,errors:"full"};n&&(o.type=n),e.addKeyword(i,o)}s("constant"),e.addKeyword("contains",{type:"array",macro:r}),s("formatMaximum","string",t._formatLimit),s("formatMinimum","string",t._formatLimit),e.addKeyword("exclusiveFormatMaximum"),e.addKeyword("exclusiveFormatMinimum"),e.addKeyword("patternGroups"),s("patternRequired","object"),s("switch")},META_SCHEMA_ID:n}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="errs__"+n,d=e.util.copy(e),f="";d.level++;var p,m="ifPassed"+e.level;i+="var "+m+";";var g=o;if(g)for(var v,y=-1,w=g.length-1;y<w;){if(v=g[y+=1],y&&!p&&(i+=" if (!"+m+") { ",f+="}"),v.if&&e.util.schemaHasRules(v.if,e.RULES.all)){i+=" var "+u+" = errors; ";var b=e.compositeRule;if(e.compositeRule=d.compositeRule=!0,d.createErrors=!1,d.schema=v.if,d.schemaPath=s+"["+y+"].if",d.errSchemaPath=a+"/"+y+"/if",i+=" "+e.validate(d)+" ",d.createErrors=!0,e.compositeRule=d.compositeRule=b,i+=" "+m+" = valid"+d.level+"; if ("+m+") { ","boolean"==typeof v.then){if(!1===v.then){(A=A||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'switch' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { caseIndex: '+y+" } ",!1!==e.opts.messages&&(i+=" , message: 'should pass \"switch\" keyword validation' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var C=i;i=A.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+C+"]); ":i+=" validate.errors = ["+C+"]; return false; ":i+=" var err = "+C+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}i+=" var valid"+d.level+" = "+v.then+"; "}else d.schema=v.then,d.schemaPath=s+"["+y+"].then",d.errSchemaPath=a+"/"+y+"/then",i+=" "+e.validate(d)+" ";i+=" } else { errors = "+u+"; if (vErrors !== null) { if ("+u+") vErrors.length = "+u+"; else vErrors = null; } } "}else if(i+=" "+m+" = true; ","boolean"==typeof v.then){if(!1===v.then){var A;(A=A||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'switch' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { caseIndex: '+y+" } ",!1!==e.opts.messages&&(i+=" , message: 'should pass \"switch\" keyword validation' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";C=i;i=A.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+C+"]); ":i+=" validate.errors = ["+C+"]; return false; ":i+=" var err = "+C+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}i+=" var valid"+d.level+" = "+v.then+"; "}else d.schema=v.then,d.schemaPath=s+"["+y+"].then",d.errSchemaPath=a+"/"+y+"/then",i+=" "+e.validate(d)+" ";p=v.continue}return i+=f+"var "+h+" = valid"+d.level+"; ",i=e.util.cleanUpCode(i)}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u=e.opts.v5&&o.$data,d=u?e.util.getData(o.$data,r,e.dataPathArr):o;u&&(i+=" var schema"+n+" = "+d+"; ",d="schema"+n),u||(i+=" var schema"+n+" = validate.schema"+s+";"),i+="var "+h+" = equal("+c+", schema"+n+"); if (!"+h+") { ";var f=f||[];f.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'constant' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should be equal to constant' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var p=i;return i=f.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+p+"]); ":i+=" validate.errors = ["+p+"]; return false; ":i+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" }"}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n;if(i+="var "+h+" = undefined;",!1===e.opts.format)return i+=" "+h+" = true; ";var u=e.schema.format,d=e.opts.v5&&u.$data,f="";if(d){var p=e.util.getData(u.$data,r,e.dataPathArr);i+=" var "+(m="format"+n)+" = formats["+p+"] , "+(g="compare"+n)+" = "+m+" && "+m+".compare;"}else{var m;if(!(m=e.formats[u])||!m.compare)return i+=" "+h+" = true; ";var g="formats"+e.util.getProperty(u)+".compare"}var v="formatMaximum"==t,y="exclusiveFormat"+(v?"Maximum":"Minimum"),w=e.schema[y],b=e.opts.v5&&w&&w.$data,C=v?"<":">",A="result"+n,E=e.opts.v5&&o.$data,x=E?e.util.getData(o.$data,r,e.dataPathArr):o;if(E&&(i+=" var schema"+n+" = "+x+"; ",x="schema"+n),b){var F=e.util.getData(w.$data,r,e.dataPathArr),S="exclusive"+n,k="' + "+("op"+n)+" + '";i+=" var schemaExcl"+n+" = "+F+"; ",i+=" if (typeof "+(F="schemaExcl"+n)+" != 'boolean' && "+F+" !== undefined) { "+h+" = false; ";var _=y;($=$||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(_||"_exclusiveFormatLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: '"+y+" should be boolean' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var D=i;i=$.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+D+"]); ":i+=" validate.errors = ["+D+"]; return false; ":i+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",l&&(f+="}",i+=" else { "),E&&(i+=" if ("+x+" === undefined) "+h+" = true; else if (typeof "+x+" != 'string') "+h+" = false; else { ",f+="}"),d&&(i+=" if (!"+g+") "+h+" = true; else { ",f+="}"),i+=" var "+A+" = "+g+"("+c+", ",i+=E?""+x:""+e.util.toQuotedString(o),i+=" ); if ("+A+" === undefined) "+h+" = false; var exclusive"+n+" = "+F+" === true; if ("+h+" === undefined) { "+h+" = exclusive"+n+" ? "+A+" "+C+" 0 : "+A+" "+C+"= 0; } if (!"+h+") var op"+n+" = exclusive"+n+" ? '"+C+"' : '"+C+"=';"}else{k=C;(S=!0===w)||(k+="=");E&&(i+=" if ("+x+" === undefined) "+h+" = true; else if (typeof "+x+" != 'string') "+h+" = false; else { ",f+="}"),d&&(i+=" if (!"+g+") "+h+" = true; else { ",f+="}"),i+=" var "+A+" = "+g+"("+c+", ",i+=E?""+x:""+e.util.toQuotedString(o),i+=" ); if ("+A+" === undefined) "+h+" = false; if ("+h+" === undefined) "+h+" = "+A+" "+C,S||(i+="="),i+=" 0;"}i+=f+"if (!"+h+") { ";var $;_=t;($=$||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(_||"_formatLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { limit: ',i+=E?""+x:""+e.util.toQuotedString(o),i+=" } ",!1!==e.opts.messages&&(i+=" , message: 'should be "+k+' "',i+=E?"' + "+x+" + '":""+e.util.escapeQuotes(o),i+="\"' "),e.opts.verbose&&(i+=" , schema: ",i+=E?"validate.schema"+s:""+e.util.toQuotedString(o),i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";D=i;return i=$.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+D+"]); ":i+=" validate.errors = ["+D+"]; return false; ":i+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="}"}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="key"+n,d="patternMatched"+n,f="";i+="var "+h+" = true;";var p=o;if(p)for(var m,g=-1,v=p.length-1;g<v;){m=p[g+=1],i+=" var "+d+" = false; for (var "+u+" in "+c+") { "+d+" = "+e.usePattern(m)+".test("+u+"); if ("+d+") break; } ";var y=e.util.escapeQuotes(m);i+=" if (!"+d+") { "+h+" = false; var err = ",!1!==e.createErrors?(i+=" { keyword: 'patternRequired' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingPattern: '"+y+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should have property matching pattern \\'"+y+"\\'' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } ",l&&(f+="}",i+=" else { ")}return i+=""+f}},function(e,t){e.exports={id:"https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/json-schema-v5.json#",$schema:"http://json-schema.org/draft-04/schema#",description:"Core schema meta-schema (v5 proposals)",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0},$data:{type:"object",required:["$data"],properties:{$data:{type:"string",format:"relative-json-pointer"}},additionalProperties:!1}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{anyOf:[{type:"number",minimum:0,exclusiveMinimum:!0},{$ref:"#/definitions/$data"}]},maximum:{anyOf:[{type:"number"},{$ref:"#/definitions/$data"}]},exclusiveMaximum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},minimum:{anyOf:[{type:"number"},{$ref:"#/definitions/$data"}]},exclusiveMinimum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},maxLength:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minLength:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},pattern:{anyOf:[{type:"string",format:"regex"},{$ref:"#/definitions/$data"}]},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"},{$ref:"#/definitions/$data"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minItems:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},uniqueItems:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},maxProperties:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minProperties:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},required:{anyOf:[{$ref:"#/definitions/stringArray"},{$ref:"#/definitions/$data"}]},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"},{$ref:"#/definitions/$data"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{anyOf:[{type:"array",minItems:1,uniqueItems:!0},{$ref:"#/definitions/$data"}]},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"},format:{anyOf:[{type:"string"},{$ref:"#/definitions/$data"}]},formatMaximum:{anyOf:[{type:"string"},{$ref:"#/definitions/$data"}]},formatMinimum:{anyOf:[{type:"string"},{$ref:"#/definitions/$data"}]},exclusiveFormatMaximum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},exclusiveFormatMinimum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},constant:{anyOf:[{},{$ref:"#/definitions/$data"}]},contains:{$ref:"#"},patternGroups:{type:"object",additionalProperties:{type:"object",required:["schema"],properties:{maximum:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minimum:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},schema:{$ref:"#"}},additionalProperties:!1},default:{}},switch:{type:"array",items:{required:["then"],properties:{if:{$ref:"#"},then:{anyOf:[{type:"boolean"},{$ref:"#"}]},continue:{type:"boolean"}},additionalProperties:!1,dependencies:{continue:["if"]}}}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"],formatMaximum:["format"],formatMinimum:["format"],exclusiveFormatMaximum:["formatMaximum"],exclusiveFormatMinimum:["formatMinimum"]},default:{}}},function(e,t){"use strict";var i=/^[a-z_$][a-z0-9_$]*$/i;e.exports=function(e,t){var n=this;if(this.RULES.keywords[e])throw new Error("Keyword "+e+" is already defined");if(!i.test(e))throw new Error("Keyword "+e+" is not a valid identifier");if(t){var r=t.type;if(Array.isArray(r)){var o,s=r.length;for(o=0;o<s;o++)l(r[o]);for(o=0;o<s;o++)a(e,r[o],t)}else r&&l(r),a(e,r,t)}function a(e,t,i){for(var r,o=0;o<n.RULES.length;o++){var s=n.RULES[o];if(s.type==t){r=s;break}}r||(r={type:t,rules:[]},n.RULES.push(r));var a={keyword:e,definition:i,custom:!0};r.rules.push(a)}function l(e){if(!n.RULES.types[e])throw new Error("Unknown type "+e)}this.RULES.keywords[e]=!0,this.RULES.all[e]=!0}},function(e,t){e.exports={id:"http://json-schema.org/draft-04/schema#",$schema:"http://json-schema.org/draft-04/schema#",description:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{type:"number",minimum:0,exclusiveMinimum:!0},maximum:{type:"number"},exclusiveMaximum:{type:"boolean",default:!1},minimum:{type:"number"},exclusiveMinimum:{type:"boolean",default:!1},maxLength:{$ref:"#/definitions/positiveInteger"},minLength:{$ref:"#/definitions/positiveIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{$ref:"#/definitions/positiveInteger"},minItems:{$ref:"#/definitions/positiveIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxProperties:{$ref:"#/definitions/positiveInteger"},minProperties:{$ref:"#/definitions/positiveIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{type:"array",minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"]},default:{}}},function(e,t,i){"use strict";var n=i(52),r=i(53),o=i(56),s=i(57),a=i(58),l=i(61),c=i(54),h={create:function(e,t){if(!e)throw new Error("No container element provided.");this.container=e,this.dom={},this.highlighter=new n,this.selection=void 0,this.multiselection={nodes:[]},this.validateSchema=null,this.errorNodes=[],this.node=null,this.focusTarget=null,this._setOptions(t),this.options.history&&"view"!==this.options.mode&&(this.history=new r(this)),this._createFrame(),this._createTable()},destroy:function(){this.frame&&this.container&&this.frame.parentNode==this.container&&(this.container.removeChild(this.frame),this.frame=null),this.container=null,this.dom=null,this.clear(),this.node=null,this.focusTarget=null,this.selection=null,this.multiselection=null,this.errorNodes=null,this.validateSchema=null,this._debouncedValidate=null,this.history&&(this.history.destroy(),this.history=null),this.searchBox&&(this.searchBox.destroy(),this.searchBox=null),this.modeSwitcher&&(this.modeSwitcher.destroy(),this.modeSwitcher=null)},_setOptions:function(e){if(this.options={search:!0,history:!0,mode:"tree",name:void 0,schema:null},e)for(var t in e)e.hasOwnProperty(t)&&(this.options[t]=e[t]);this.setSchema(this.options.schema),this._debouncedValidate=c.debounce(this.validate.bind(this),this.DEBOUNCE_INTERVAL)},set:function(e,t){if(t&&(console.warn('Second parameter "name" is deprecated. Use setName(name) instead.'),this.options.name=t),e instanceof Function||void 0===e)this.clear();else{this.content.removeChild(this.table);var i={field:this.options.name,value:e},n=new a(this,i);this._setRoot(n),this.validate();this.node.expand(!1),this.content.appendChild(this.table)}this.history&&this.history.clear(),this.searchBox&&this.searchBox.clear()},get:function(){if(this.focusTarget){var e=a.getNodeFromTarget(this.focusTarget);e&&e.blur()}return this.node?this.node.getValue():void 0},getText:function(){return JSON.stringify(this.get())},setText:function(e){this.set(c.parse(e))},setName:function(e){this.options.name=e,this.node&&this.node.updateField(this.options.name)},getName:function(){return this.options.name},focus:function(){var e=this.content.querySelector("[contenteditable=true]");e?e.focus():this.node.dom.expand?this.node.dom.expand.focus():this.node.dom.menu?this.node.dom.menu.focus():(e=this.frame.querySelector("button"))&&e.focus()},clear:function(){this.node&&(this.node.collapse(),this.tbody.removeChild(this.node.getDom()),delete this.node)},_setRoot:function(e){this.clear(),this.node=e,this.tbody.appendChild(e.getDom())},search:function(e){var t;return this.node?(this.content.removeChild(this.table),t=this.node.search(e),this.content.appendChild(this.table)):t=[],t},expandAll:function(){this.node&&(this.content.removeChild(this.table),this.node.expand(),this.content.appendChild(this.table))},collapseAll:function(){this.node&&(this.content.removeChild(this.table),this.node.collapse(),this.content.appendChild(this.table))},_onAction:function(e,t){this.history&&this.history.add(e,t),this._onChange()},_onChange:function(){if(this._debouncedValidate(),this.options.onChange)try{this.options.onChange()}catch(e){console.error("Error in onChange callback: ",e)}},validate:function(){this.errorNodes&&this.errorNodes.forEach(function(e){e.setError(null)});var e=this.node;if(e){var t=e.validate(),i=[];if(this.validateSchema)this.validateSchema(e.getValue())||(i=this.validateSchema.errors.map(function(e){return c.improveSchemaError(e)}).map(function(t){return{node:e.findNode(t.dataPath),error:t}}).filter(function(e){return null!=e.node}));this.errorNodes=t.concat(i).reduce(function(e,t){return t.node.findParents().map(function(e){return{node:e,child:t.node,error:{message:"object"===e.type?"Contains invalid properties":"Contains invalid items"}}}).concat(e,[t])},[]).map(function(e){return e.node.setError(e.error,e.child),e.node})}},refresh:function(){this.node&&this.node.updateDom({recurse:!0})},startAutoScroll:function(e){var t=this,i=this.content,n=c.getAbsoluteTop(i),r=i.clientHeight,o=n+r;e<n+24&&i.scrollTop>0?this.autoScrollStep=(n+24-e)/3:e>o-24&&r+i.scrollTop<i.scrollHeight?this.autoScrollStep=(o-24-e)/3:this.autoScrollStep=void 0,this.autoScrollStep?this.autoScrollTimer||(this.autoScrollTimer=setInterval(function(){t.autoScrollStep?i.scrollTop-=t.autoScrollStep:t.stopAutoScroll()},50)):this.stopAutoScroll()},stopAutoScroll:function(){this.autoScrollTimer&&(clearTimeout(this.autoScrollTimer),delete this.autoScrollTimer),this.autoScrollStep&&delete this.autoScrollStep},setSelection:function(e){e&&("scrollTop"in e&&this.content&&(this.content.scrollTop=e.scrollTop),e.nodes&&this.select(e.nodes),e.range&&c.setSelectionOffset(e.range),e.dom&&e.dom.focus())},getSelection:function(){var e=c.getSelectionOffset();return e&&"DIV"!==e.container.nodeName&&(e=null),{dom:this.focusTarget,range:e,nodes:this.multiselection.nodes.slice(0),scrollTop:this.content?this.content.scrollTop:0}},scrollTo:function(e,t){var i=this.content;if(i){var n=this;n.animateTimeout&&(clearTimeout(n.animateTimeout),delete n.animateTimeout),n.animateCallback&&(n.animateCallback(!1),delete n.animateCallback);var r=i.clientHeight,o=i.scrollHeight-r,s=Math.min(Math.max(e-r/4,0),o),a=function(){var e=i.scrollTop,r=s-e;Math.abs(r)>3?(i.scrollTop+=r/3,n.animateCallback=t,n.animateTimeout=setTimeout(a,50)):(t&&t(!0),i.scrollTop=s,delete n.animateTimeout,delete n.animateCallback)};a()}else t&&t(!1)},_createFrame:function(){this.frame=document.createElement("div"),this.frame.className="jsoneditor jsoneditor-mode-"+this.options.mode,this.container.appendChild(this.frame);var e=this;function t(t){e._onEvent&&e._onEvent(t)}this.frame.onclick=function(e){var i=e.target;t(e),"BUTTON"==i.nodeName&&e.preventDefault()},this.frame.oninput=t,this.frame.onchange=t,this.frame.onkeydown=t,this.frame.onkeyup=t,this.frame.oncut=t,this.frame.onpaste=t,this.frame.onmousedown=t,this.frame.onmouseup=t,this.frame.onmouseover=t,this.frame.onmouseout=t,c.addEventListener(this.frame,"focus",t,!0),c.addEventListener(this.frame,"blur",t,!0),this.frame.onfocusin=t,this.frame.onfocusout=t,this.menu=document.createElement("div"),this.menu.className="jsoneditor-menu",this.frame.appendChild(this.menu);var i=document.createElement("button");i.type="button",i.className="jsoneditor-expand-all",i.title="Expand all fields",i.onclick=function(){e.expandAll()},this.menu.appendChild(i);var n=document.createElement("button");if(n.type="button",n.title="Collapse all fields",n.className="jsoneditor-collapse-all",n.onclick=function(){e.collapseAll()},this.menu.appendChild(n),this.history){var r=document.createElement("button");r.type="button",r.className="jsoneditor-undo jsoneditor-separator",r.title="Undo last action (Ctrl+Z)",r.onclick=function(){e._onUndo()},this.menu.appendChild(r),this.dom.undo=r;var s=document.createElement("button");s.type="button",s.className="jsoneditor-redo",s.title="Redo (Ctrl+Shift+Z)",s.onclick=function(){e._onRedo()},this.menu.appendChild(s),this.dom.redo=s,this.history.onChange=function(){r.disabled=!e.history.canUndo(),s.disabled=!e.history.canRedo()},this.history.onChange()}if(this.options&&this.options.modes&&this.options.modes.length){var a=this;this.modeSwitcher=new l(this.menu,this.options.modes,this.options.mode,function(e){a.modeSwitcher.destroy(),a.setMode(e),a.modeSwitcher.focus()})}this.options.search&&(this.searchBox=new o(this,this.menu))},_onUndo:function(){this.history&&(this.history.undo(),this._onChange())},_onRedo:function(){this.history&&(this.history.redo(),this._onChange())},_onEvent:function(e){"keydown"==e.type&&this._onKeyDown(e),"focus"==e.type&&(this.focusTarget=e.target),"mousedown"==e.type&&this._startDragDistance(e),"mousemove"!=e.type&&"mouseup"!=e.type&&"click"!=e.type||this._updateDragDistance(e);var t=a.getNodeFromTarget(e.target);if(t&&t.selected){if("click"==e.type){if(e.target==t.dom.menu)return void this.showContextMenu(e.target);e.hasMoved||this.deselect()}"mousedown"==e.type&&a.onDragStart(this.multiselection.nodes,e)}else"mousedown"==e.type&&(this.deselect(),t&&e.target==t.dom.drag?a.onDragStart(t,e):(!t||e.target!=t.dom.field&&e.target!=t.dom.value&&e.target!=t.dom.select)&&this._onMultiSelectStart(e));t&&t.onEvent(e)},_startDragDistance:function(e){this.dragDistanceEvent={initialTarget:e.target,initialPageX:e.pageX,initialPageY:e.pageY,dragDistance:0,hasMoved:!1}},_updateDragDistance:function(e){this.dragDistanceEvent||this._startDragDistance(e);var t=e.pageX-this.dragDistanceEvent.initialPageX,i=e.pageY-this.dragDistanceEvent.initialPageY;return this.dragDistanceEvent.dragDistance=Math.sqrt(t*t+i*i),this.dragDistanceEvent.hasMoved=this.dragDistanceEvent.hasMoved||this.dragDistanceEvent.dragDistance>10,e.dragDistance=this.dragDistanceEvent.dragDistance,e.hasMoved=this.dragDistanceEvent.hasMoved,e.dragDistance},_onMultiSelectStart:function(e){var t=a.getNodeFromTarget(e.target);if("tree"===this.options.mode&&void 0===this.options.onEditable){this.multiselection={start:t||null,end:null,nodes:[]},this._startDragDistance(e);var i=this;this.mousemove||(this.mousemove=c.addEventListener(window,"mousemove",function(e){i._onMultiSelect(e)})),this.mouseup||(this.mouseup=c.addEventListener(window,"mouseup",function(e){i._onMultiSelectEnd(e)}))}},_onMultiSelect:function(e){if(e.preventDefault(),this._updateDragDistance(e),e.hasMoved){var t=a.getNodeFromTarget(e.target);t&&(null==this.multiselection.start&&(this.multiselection.start=t),this.multiselection.end=t),this.deselect();var i=this.multiselection.start,n=this.multiselection.end||this.multiselection.start;i&&n&&(this.multiselection.nodes=this._findTopLevelNodes(i,n),this.select(this.multiselection.nodes))}},_onMultiSelectEnd:function(e){this.multiselection.nodes[0]&&this.multiselection.nodes[0].dom.menu.focus(),this.multiselection.start=null,this.multiselection.end=null,this.mousemove&&(c.removeEventListener(window,"mousemove",this.mousemove),delete this.mousemove),this.mouseup&&(c.removeEventListener(window,"mouseup",this.mouseup),delete this.mouseup)},deselect:function(e){this.multiselection.nodes.forEach(function(e){e.setSelected(!1)}),this.multiselection.nodes=[],e&&(this.multiselection.start=null,this.multiselection.end=null)},select:function(e){if(!Array.isArray(e))return this.select([e]);if(e){this.deselect(),this.multiselection.nodes=e.slice(0);var t=e[0];e.forEach(function(e){e.setSelected(!0,e===t)})}},_findTopLevelNodes:function(e,t){for(var i=e.getNodePath(),n=t.getNodePath(),r=0;r<i.length&&i[r]===n[r];)r++;var o=i[r-1],s=i[r],a=n[r];if(s&&a||(o.parent?(s=o,a=o,o=o.parent):(s=o.childs[0],a=o.childs[o.childs.length-1])),o&&s&&a){var l=o.childs.indexOf(s),c=o.childs.indexOf(a),h=Math.min(l,c),u=Math.max(l,c);return o.childs.slice(h,u+1)}return[]},_onKeyDown:function(e){var t=e.which||e.keyCode,i=e.ctrlKey,n=e.shiftKey,r=!1;if(9==t){var o=this;setTimeout(function(){c.selectContentEditable(o.focusTarget)},0)}if(this.searchBox)if(i&&70==t)this.searchBox.dom.search.focus(),this.searchBox.dom.search.select(),r=!0;else if(114==t||i&&71==t){n?this.searchBox.previous(!0):this.searchBox.next(!0),r=!0}this.history&&(i&&!n&&90==t?(this._onUndo(),r=!0):i&&n&&90==t&&(this._onRedo(),r=!0)),r&&(e.preventDefault(),e.stopPropagation())},_createTable:function(){var e,t=document.createElement("div");t.className="jsoneditor-outer",this.contentOuter=t,this.content=document.createElement("div"),this.content.className="jsoneditor-tree",t.appendChild(this.content),this.table=document.createElement("table"),this.table.className="jsoneditor-tree",this.content.appendChild(this.table),this.colgroupContent=document.createElement("colgroup"),"tree"===this.options.mode&&((e=document.createElement("col")).width="24px",this.colgroupContent.appendChild(e)),(e=document.createElement("col")).width="24px",this.colgroupContent.appendChild(e),e=document.createElement("col"),this.colgroupContent.appendChild(e),this.table.appendChild(this.colgroupContent),this.tbody=document.createElement("tbody"),this.table.appendChild(this.tbody),this.frame.appendChild(t)},showContextMenu:function(e,t){var i=[],n=this;i.push({text:"Duplicate",title:"Duplicate selected fields (Ctrl+D)",className:"jsoneditor-duplicate",click:function(){a.onDuplicate(n.multiselection.nodes)}}),i.push({text:"Remove",title:"Remove selected fields (Ctrl+Del)",className:"jsoneditor-remove",click:function(){a.onRemove(n.multiselection.nodes)}}),new s(i,{close:t}).show(e,this.content)}};e.exports=[{mode:"tree",mixin:h,data:"json"},{mode:"view",mixin:h,data:"json"},{mode:"form",mixin:h,data:"json"}]},function(e,t){"use strict";function i(){this.locked=!1}i.prototype.highlight=function(e){this.locked||(this.node!=e&&(this.node&&this.node.setHighlight(!1),this.node=e,this.node.setHighlight(!0)),this._cancelUnhighlight())},i.prototype.unhighlight=function(){if(!this.locked){var e=this;this.node&&(this._cancelUnhighlight(),this.unhighlightTimer=setTimeout(function(){e.node.setHighlight(!1),e.node=void 0,e.unhighlightTimer=void 0},0))}},i.prototype._cancelUnhighlight=function(){this.unhighlightTimer&&(clearTimeout(this.unhighlightTimer),this.unhighlightTimer=void 0)},i.prototype.lock=function(){this.locked=!0},i.prototype.unlock=function(){this.locked=!1},e.exports=i},function(e,t,i){"use strict";i(54);function n(e){this.editor=e,this.history=[],this.index=-1,this.clear(),this.actions={editField:{undo:function(e){e.node.updateField(e.oldValue)},redo:function(e){e.node.updateField(e.newValue)}},editValue:{undo:function(e){e.node.updateValue(e.oldValue)},redo:function(e){e.node.updateValue(e.newValue)}},changeType:{undo:function(e){e.node.changeType(e.oldType)},redo:function(e){e.node.changeType(e.newType)}},appendNodes:{undo:function(e){e.nodes.forEach(function(t){e.parent.removeChild(t)})},redo:function(e){e.nodes.forEach(function(t){e.parent.appendChild(t)})}},insertBeforeNodes:{undo:function(e){e.nodes.forEach(function(t){e.parent.removeChild(t)})},redo:function(e){e.nodes.forEach(function(t){e.parent.insertBefore(t,e.beforeNode)})}},insertAfterNodes:{undo:function(e){e.nodes.forEach(function(t){e.parent.removeChild(t)})},redo:function(e){var t=e.afterNode;e.nodes.forEach(function(i){e.parent.insertAfter(e.node,t),t=i})}},removeNodes:{undo:function(e){var t=e.parent,i=t.childs[e.index]||t.append;e.nodes.forEach(function(e){t.insertBefore(e,i)})},redo:function(e){e.nodes.forEach(function(t){e.parent.removeChild(t)})}},duplicateNodes:{undo:function(e){e.nodes.forEach(function(t){e.parent.removeChild(t)})},redo:function(e){var t=e.afterNode;e.nodes.forEach(function(i){e.parent.insertAfter(i,t),t=i})}},moveNodes:{undo:function(e){e.nodes.forEach(function(t){e.oldBeforeNode.parent.moveBefore(t,e.oldBeforeNode)})},redo:function(e){e.nodes.forEach(function(t){e.newBeforeNode.parent.moveBefore(t,e.newBeforeNode)})}},sort:{undo:function(e){var t=e.node;t.hideChilds(),t.sort=e.oldSort,t.childs=e.oldChilds,t.showChilds()},redo:function(e){var t=e.node;t.hideChilds(),t.sort=e.newSort,t.childs=e.newChilds,t.showChilds()}}}}n.prototype.onChange=function(){},n.prototype.add=function(e,t){this.index++,this.history[this.index]={action:e,params:t,timestamp:new Date},this.index<this.history.length-1&&this.history.splice(this.index+1,this.history.length-this.index-1),this.onChange()},n.prototype.clear=function(){this.history=[],this.index=-1,this.onChange()},n.prototype.canUndo=function(){return this.index>=0},n.prototype.canRedo=function(){return this.index<this.history.length-1},n.prototype.undo=function(){if(this.canUndo()){var e=this.history[this.index];if(e){var t=this.actions[e.action];t&&t.undo?(t.undo(e.params),e.params.oldSelection&&this.editor.setSelection(e.params.oldSelection)):console.error(new Error('unknown action "'+e.action+'"'))}this.index--,this.onChange()}},n.prototype.redo=function(){if(this.canRedo()){this.index++;var e=this.history[this.index];if(e){var t=this.actions[e.action];t&&t.redo?(t.redo(e.params),e.params.newSelection&&this.editor.setSelection(e.params.newSelection)):console.error(new Error('unknown action "'+e.action+'"'))}this.onChange()}},n.prototype.destroy=function(){this.editor=null,this.history=[],this.index=-1},e.exports=n},function(e,t,i){"use strict";var n=i(55);t.parse=function(e){try{return JSON.parse(e)}catch(i){throw t.validate(e),i}},t.sanitize=function(e){var t=[],i=0,n=e.match(/^\s*(\/\*(.|[\r\n])*?\*\/)?\s*[\da-zA-Z_$]+\s*\(([\s\S]*)\)\s*;?\s*$/);function r(){return e.charAt(i)}function o(){return e.charAt(i+1)}function s(){for(var e=t.length-1;e>=0;){var i=t[e];if(" "!==i&&"\n"!==i&&"\r"!==i&&"\t"!==i)return i;e--}return""}function a(){for(i+=2;i<e.length&&("*"!==r()||"/"!==o());)i++;i+=2}function l(){for(i+=2;i<e.length&&"\n"!==r();)i++}function c(n){t.push('"'),i++;for(var o=r();i<e.length&&o!==n;)'"'===o&&"\\"!==e.charAt(i-1)&&t.push("\\"),"\\"===o&&(i++,"'"!==(o=r())&&t.push("\\")),t.push(o),i++,o=r();o===n&&(t.push('"'),i++)}function h(){for(var e="",n=r(),o=/[a-zA-Z_$\d]/;o.test(n);)e+=n,i++,n=r();-1===["null","true","false"].indexOf(e)?t.push('"'+e+'"'):t.push(e)}for(n&&(e=n[3]);i<e.length;){var u=r();"/"===u&&"*"===o()?a():"/"===u&&"/"===o()?l():"'"===u||'"'===u?c(u):/[a-zA-Z_$]/.test(u)&&-1!==["{",","].indexOf(s())?h():(t.push(u),i++)}return t.join("")},t.escapeUnicodeChars=function(e){return e.replace(/[\u007F-\uFFFF]/g,function(e){return"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})},t.validate=function(e){void 0!==n?n.parse(e):JSON.parse(e)},t.extend=function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i]);return e},t.clear=function(e){for(var t in e)e.hasOwnProperty(t)&&delete e[t];return e},t.type=function(e){return null===e?"null":void 0===e?"undefined":e instanceof Number||"number"==typeof e?"number":e instanceof String||"string"==typeof e?"string":e instanceof Boolean||"boolean"==typeof e?"boolean":e instanceof RegExp||"regexp"==typeof e?"regexp":t.isArray(e)?"array":"object"};var r=/^https?:\/\/\S+$/;t.isUrl=function(e){return("string"==typeof e||e instanceof String)&&r.test(e)},t.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)},t.getAbsoluteLeft=function(e){return e.getBoundingClientRect().left+window.pageXOffset||document.scrollLeft||0},t.getAbsoluteTop=function(e){return e.getBoundingClientRect().top+window.pageYOffset||document.scrollTop||0},t.addClassName=function(e,t){var i=e.className.split(" ");-1==i.indexOf(t)&&(i.push(t),e.className=i.join(" "))},t.removeClassName=function(e,t){var i=e.className.split(" "),n=i.indexOf(t);-1!=n&&(i.splice(n,1),e.className=i.join(" "))},t.stripFormatting=function(e){for(var i=e.childNodes,n=0,r=i.length;n<r;n++){var o=i[n];o.style&&o.removeAttribute("style");var s=o.attributes;if(s)for(var a=s.length-1;a>=0;a--){var l=s[a];!0===l.specified&&o.removeAttribute(l.name)}t.stripFormatting(o)}},t.setEndOfContentEditable=function(e){var t,i;document.createRange&&((t=document.createRange()).selectNodeContents(e),t.collapse(!1),(i=window.getSelection()).removeAllRanges(),i.addRange(t))},t.selectContentEditable=function(e){var t,i;e&&"DIV"==e.nodeName&&(window.getSelection&&document.createRange&&((i=document.createRange()).selectNodeContents(e),(t=window.getSelection()).removeAllRanges(),t.addRange(i)))},t.getSelection=function(){if(window.getSelection){var e=window.getSelection();if(e.getRangeAt&&e.rangeCount)return e.getRangeAt(0)}return null},t.setSelection=function(e){if(e&&window.getSelection){var t=window.getSelection();t.removeAllRanges(),t.addRange(e)}},t.getSelectionOffset=function(){var e=t.getSelection();return e&&"startOffset"in e&&"endOffset"in e&&e.startContainer&&e.startContainer==e.endContainer?{startOffset:e.startOffset,endOffset:e.endOffset,container:e.startContainer.parentNode}:null},t.setSelectionOffset=function(e){if(document.createRange&&window.getSelection&&window.getSelection()){var i=document.createRange();e.container.firstChild||e.container.appendChild(document.createTextNode("")),i.setStart(e.container.firstChild,e.startOffset),i.setEnd(e.container.firstChild,e.endOffset),t.setSelection(i)}},t.getInnerText=function(e,i){if(void 0==i&&(i={text:"",flush:function(){var e=this.text;return this.text="",e},set:function(e){this.text=e}}),e.nodeValue)return i.flush()+e.nodeValue;if(e.hasChildNodes()){for(var n=e.childNodes,r="",o=0,s=n.length;o<s;o++){var a=n[o];if("DIV"==a.nodeName||"P"==a.nodeName){var l=n[o-1],c=l?l.nodeName:void 0;c&&"DIV"!=c&&"P"!=c&&"BR"!=c&&(r+="\n",i.flush()),r+=t.getInnerText(a,i),i.set("\n")}else"BR"==a.nodeName?(r+=i.flush(),i.set("\n")):r+=t.getInnerText(a,i)}return r}return"P"==e.nodeName&&-1!=t.getInternetExplorerVersion()?i.flush():""},t.getInternetExplorerVersion=function(){if(-1==o){var e=-1;if("Microsoft Internet Explorer"==navigator.appName){var t=navigator.userAgent;null!=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})").exec(t)&&(e=parseFloat(RegExp.$1))}o=e}return o},t.isFirefox=function(){return-1!=navigator.userAgent.indexOf("Firefox")};var o=-1;t.addEventListener=function(e,i,n,r){if(e.addEventListener)return void 0===r&&(r=!1),"mousewheel"===i&&t.isFirefox()&&(i="DOMMouseScroll"),e.addEventListener(i,n,r),n;if(e.attachEvent){var o=function(){return n.call(e,window.event)};return e.attachEvent("on"+i,o),o}},t.removeEventListener=function(e,i,n,r){e.removeEventListener?(void 0===r&&(r=!1),"mousewheel"===i&&t.isFirefox()&&(i="DOMMouseScroll"),e.removeEventListener(i,n,r)):e.detachEvent&&e.detachEvent("on"+i,n)},t.parsePath=function e(t){var i,n;if(0===t.length)return[];var r=t.match(/^\.(\w+)/);if(r)i=r[1],n=t.substr(i.length+1);else{if("["!==t[0])throw new SyntaxError("Failed to parse path");var o=t.indexOf("]");if(-1===o)throw new SyntaxError("Character ] expected in path");if(1===o)throw new SyntaxError("Index expected after [");var s=t.substring(1,o);"'"===s[0]&&(s='"'+s.substring(1,s.length-1)+'"'),i="*"===s?s:JSON.parse(s),n=t.substr(o+1)}return[i].concat(e(n))},t.improveSchemaError=function(e){if("enum"===e.keyword&&Array.isArray(e.schema)){var t=e.schema;if(t){if((t=t.map(function(e){return JSON.stringify(e)})).length>5){var i=["("+(t.length-5)+" more...)"];(t=t.slice(0,5)).push(i)}e.message="should be equal to one of: "+t.join(", ")}}return"additionalProperties"===e.keyword&&(e.message="should NOT have additional property: "+e.params.additionalProperty),e},t.insideRect=function(e,t,i){var n=void 0!==i?i:0;return t.left-n>=e.left&&t.right+n<=e.right&&t.top-n>=e.top&&t.bottom+n<=e.bottom},t.debounce=function(e,t,i){var n;return function(){var r=this,o=arguments,s=i&&!n;clearTimeout(n),n=setTimeout(function(){n=null,i||e.apply(r,o)},t),s&&e.apply(r,o)}},t.textDiff=function(e,t){for(var i=t.length,n=0,r=e.length,o=t.length;t.charAt(n)===e.charAt(n)&&n<i;)n++;for(;t.charAt(o-1)===e.charAt(r-1)&&o>n&&r>0;)o--,r--;return{start:n,end:o}}},function(e,t,i){var n=function(){var e={trace:function(){},yy:{},symbols_:{error:2,JSONString:3,STRING:4,JSONNumber:5,NUMBER:6,JSONNullLiteral:7,NULL:8,JSONBooleanLiteral:9,TRUE:10,FALSE:11,JSONText:12,JSONValue:13,EOF:14,JSONObject:15,JSONArray:16,"{":17,"}":18,JSONMemberList:19,JSONMember:20,":":21,",":22,"[":23,"]":24,JSONElementList:25,$accept:0,$end:1},terminals_:{2:"error",4:"STRING",6:"NUMBER",8:"NULL",10:"TRUE",11:"FALSE",14:"EOF",17:"{",18:"}",21:":",22:",",23:"[",24:"]"},productions_:[0,[3,1],[5,1],[7,1],[9,1],[9,1],[12,2],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[15,2],[15,3],[20,3],[19,1],[19,3],[16,2],[16,3],[25,1],[25,3]],performAction:function(e,t,i,n,r,o,s){var a=o.length-1;switch(r){case 1:this.$=e.replace(/\\(\\|")/g,"$1").replace(/\\n/g,"\n").replace(/\\r/g,"\r").replace(/\\t/g,"\t").replace(/\\v/g,"\v").replace(/\\f/g,"\f").replace(/\\b/g,"\b");break;case 2:this.$=Number(e);break;case 3:this.$=null;break;case 4:this.$=!0;break;case 5:this.$=!1;break;case 6:return this.$=o[a-1];case 13:this.$={};break;case 14:this.$=o[a-1];break;case 15:this.$=[o[a-2],o[a]];break;case 16:this.$={},this.$[o[a][0]]=o[a][1];break;case 17:this.$=o[a-2],o[a-2][o[a][0]]=o[a][1];break;case 18:this.$=[];break;case 19:this.$=o[a-1];break;case 20:this.$=[o[a]];break;case 21:this.$=o[a-2],o[a-2].push(o[a])}},table:[{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],12:1,13:2,15:7,16:8,17:[1,14],23:[1,15]},{1:[3]},{14:[1,16]},{14:[2,7],18:[2,7],22:[2,7],24:[2,7]},{14:[2,8],18:[2,8],22:[2,8],24:[2,8]},{14:[2,9],18:[2,9],22:[2,9],24:[2,9]},{14:[2,10],18:[2,10],22:[2,10],24:[2,10]},{14:[2,11],18:[2,11],22:[2,11],24:[2,11]},{14:[2,12],18:[2,12],22:[2,12],24:[2,12]},{14:[2,3],18:[2,3],22:[2,3],24:[2,3]},{14:[2,4],18:[2,4],22:[2,4],24:[2,4]},{14:[2,5],18:[2,5],22:[2,5],24:[2,5]},{14:[2,1],18:[2,1],21:[2,1],22:[2,1],24:[2,1]},{14:[2,2],18:[2,2],22:[2,2],24:[2,2]},{3:20,4:[1,12],18:[1,17],19:18,20:19},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:23,15:7,16:8,17:[1,14],23:[1,15],24:[1,21],25:22},{1:[2,6]},{14:[2,13],18:[2,13],22:[2,13],24:[2,13]},{18:[1,24],22:[1,25]},{18:[2,16],22:[2,16]},{21:[1,26]},{14:[2,18],18:[2,18],22:[2,18],24:[2,18]},{22:[1,28],24:[1,27]},{22:[2,20],24:[2,20]},{14:[2,14],18:[2,14],22:[2,14],24:[2,14]},{3:20,4:[1,12],20:29},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:30,15:7,16:8,17:[1,14],23:[1,15]},{14:[2,19],18:[2,19],22:[2,19],24:[2,19]},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:31,15:7,16:8,17:[1,14],23:[1,15]},{18:[2,17],22:[2,17]},{18:[2,15],22:[2,15]},{22:[2,21],24:[2,21]}],defaultActions:{16:[2,6]},parseError:function(e,t){throw new Error(e)},parse:function(e){var t=this,i=[0],n=[null],r=[],o=this.table,s="",a=0,l=0,c=0;this.lexer.setInput(e),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,void 0===this.lexer.yylloc&&(this.lexer.yylloc={});var h=this.lexer.yylloc;function u(e){i.length=i.length-2*e,n.length=n.length-e,r.length=r.length-e}function d(){var e;return"number"!=typeof(e=t.lexer.lex()||1)&&(e=t.symbols_[e]||e),e}r.push(h),"function"==typeof this.yy.parseError&&(this.parseError=this.yy.parseError);for(var f,p,m,g,v,y,w,b,C,A={};;){if(m=i[i.length-1],this.defaultActions[m]?g=this.defaultActions[m]:(null==f&&(f=d()),g=o[m]&&o[m][f]),void 0===g||!g.length||!g[0]){if(!c){for(y in C=[],o[m])this.terminals_[y]&&y>2&&C.push("'"+this.terminals_[y]+"'");var E="";E=this.lexer.showPosition?"Parse error on line "+(a+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+C.join(", ")+", got '"+this.terminals_[f]+"'":"Parse error on line "+(a+1)+": Unexpected "+(1==f?"end of input":"'"+(this.terminals_[f]||f)+"'"),this.parseError(E,{text:this.lexer.match,token:this.terminals_[f]||f,line:this.lexer.yylineno,loc:h,expected:C})}if(3==c){if(1==f)throw new Error(E||"Parsing halted.");l=this.lexer.yyleng,s=this.lexer.yytext,a=this.lexer.yylineno,h=this.lexer.yylloc,f=d()}for(;!(2..toString()in o[m]);){if(0==m)throw new Error(E||"Parsing halted.");u(1),m=i[i.length-1]}p=f,f=2,g=o[m=i[i.length-1]]&&o[m][2],c=3}if(g[0]instanceof Array&&g.length>1)throw new Error("Parse Error: multiple actions possible at state: "+m+", token: "+f);switch(g[0]){case 1:i.push(f),n.push(this.lexer.yytext),r.push(this.lexer.yylloc),i.push(g[1]),f=null,p?(f=p,p=null):(l=this.lexer.yyleng,s=this.lexer.yytext,a=this.lexer.yylineno,h=this.lexer.yylloc,c>0&&c--);break;case 2:if(w=this.productions_[g[1]][1],A.$=n[n.length-w],A._$={first_line:r[r.length-(w||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(w||1)].first_column,last_column:r[r.length-1].last_column},void 0!==(v=this.performAction.call(A,s,l,a,this.yy,g[1],n,r)))return v;w&&(i=i.slice(0,-1*w*2),n=n.slice(0,-1*w),r=r.slice(0,-1*w)),i.push(this.productions_[g[1]][0]),n.push(A.$),r.push(A._$),b=o[i[i.length-2]][i[i.length-1]],i.push(b);break;case 3:return!0}}return!0}},t=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parseError)throw new Error(e);this.yy.parseError(e,t)},setInput:function(e){return this._input=e,this._more=this._less=this.done=!1,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},this},input:function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.match+=e,this.matched+=e,e.match(/\n/)&&this.yylineno++,this._input=this._input.slice(1),e},unput:function(e){return this._input=e+this._input,this},more:function(){return this._more=!0,this},less:function(e){this._input=this.match.slice(e)+this._input},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},next:function(){if(this.done)return this.EOF;var e,t,i,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var o=this._currentRules(),s=0;s<o.length&&(!(i=this._input.match(this.rules[o[s]]))||t&&!(i[0].length>t[0].length)||(t=i,n=s,this.options.flex));s++);return t?((r=t[0].match(/\n.*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-1:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.yyleng=this.yytext.length,this._more=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,o[n],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e||void 0):""===this._input?this.EOF:void this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var e=this.next();return void 0!==e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(e){this.begin(e)},options:{},performAction:function(e,t,i,n){switch(i){case 0:break;case 1:return 6;case 2:return t.yytext=t.yytext.substr(1,t.yyleng-2),4;case 3:return 17;case 4:return 18;case 5:return 23;case 6:return 24;case 7:return 22;case 8:return 21;case 9:return 10;case 10:return 11;case 11:return 8;case 12:return 14;case 13:return"INVALID"}},rules:[/^(?:\s+)/,/^(?:(-?([0-9]|[1-9][0-9]+))(\.[0-9]+)?([eE][-+]?[0-9]+)?\b)/,/^(?:"(?:\\[\\"bfnrt/]|\\u[a-fA-F0-9]{4}|[^\\\0-\x09\x0a-\x1f"])*")/,/^(?:\{)/,/^(?:\})/,/^(?:\[)/,/^(?:\])/,/^(?:,)/,/^(?::)/,/^(?:true\b)/,/^(?:false\b)/,/^(?:null\b)/,/^(?:$)/,/^(?:.)/],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],inclusive:!0}}};return e}();return e.lexer=t,e}();t.parser=n,t.parse=n.parse.bind(n)},function(e,t){"use strict";function i(e,t){var i=this;this.editor=e,this.timeout=void 0,this.delay=200,this.lastText=void 0,this.dom={},this.dom.container=t;var n=document.createElement("table");this.dom.table=n,n.className="jsoneditor-search",t.appendChild(n);var r=document.createElement("tbody");this.dom.tbody=r,n.appendChild(r);var o=document.createElement("tr");r.appendChild(o);var s=document.createElement("td");o.appendChild(s);var a=document.createElement("div");this.dom.results=a,a.className="jsoneditor-results",s.appendChild(a),s=document.createElement("td"),o.appendChild(s);var l=document.createElement("div");this.dom.input=l,l.className="jsoneditor-frame",l.title="Search fields and values",s.appendChild(l);var c=document.createElement("table");l.appendChild(c);var h=document.createElement("tbody");c.appendChild(h),o=document.createElement("tr"),h.appendChild(o);var u=document.createElement("button");u.type="button",u.className="jsoneditor-refresh",(s=document.createElement("td")).appendChild(u),o.appendChild(s);var d=document.createElement("input");this.dom.search=d,d.oninput=function(e){i._onDelayedSearch(e)},d.onchange=function(e){i._onSearch()},d.onkeydown=function(e){i._onKeyDown(e)},d.onkeyup=function(e){i._onKeyUp(e)},u.onclick=function(e){d.select()},(s=document.createElement("td")).appendChild(d),o.appendChild(s);var f=document.createElement("button");f.type="button",f.title="Next result (Enter)",f.className="jsoneditor-next",f.onclick=function(){i.next()},(s=document.createElement("td")).appendChild(f),o.appendChild(s);var p=document.createElement("button");p.type="button",p.title="Previous result (Shift+Enter)",p.className="jsoneditor-previous",p.onclick=function(){i.previous()},(s=document.createElement("td")).appendChild(p),o.appendChild(s)}i.prototype.next=function(e){if(void 0!=this.results){var t=void 0!=this.resultIndex?this.resultIndex+1:0;t>this.results.length-1&&(t=0),this._setActiveResult(t,e)}},i.prototype.previous=function(e){if(void 0!=this.results){var t=this.results.length-1,i=void 0!=this.resultIndex?this.resultIndex-1:t;i<0&&(i=t),this._setActiveResult(i,e)}},i.prototype._setActiveResult=function(e,t){if(this.activeResult){var i=this.activeResult.node;"field"==this.activeResult.elem?delete i.searchFieldActive:delete i.searchValueActive,i.updateDom()}if(!this.results||!this.results[e])return this.resultIndex=void 0,void(this.activeResult=void 0);this.resultIndex=e;var n=this.results[this.resultIndex].node,r=this.results[this.resultIndex].elem;"field"==r?n.searchFieldActive=!0:n.searchValueActive=!0,this.activeResult=this.results[this.resultIndex],n.updateDom(),n.scrollTo(function(){t&&n.focus(r)})},i.prototype._clearDelay=function(){void 0!=this.timeout&&(clearTimeout(this.timeout),delete this.timeout)},i.prototype._onDelayedSearch=function(e){this._clearDelay();var t=this;this.timeout=setTimeout(function(e){t._onSearch()},this.delay)},i.prototype._onSearch=function(e){this._clearDelay();var t=this.dom.search.value,i=t.length>0?t:void 0;if(i!=this.lastText||e)if(this.lastText=i,this.results=this.editor.search(i),this._setActiveResult(void 0),void 0!=i){var n=this.results.length;switch(n){case 0:this.dom.results.innerHTML="no results";break;case 1:this.dom.results.innerHTML="1 result";break;default:this.dom.results.innerHTML=n+" results"}}else this.dom.results.innerHTML=""},i.prototype._onKeyDown=function(e){var t=e.which;27==t?(this.dom.search.value="",this._onSearch(),e.preventDefault(),e.stopPropagation()):13==t&&(e.ctrlKey?this._onSearch(!0):e.shiftKey?this.previous():this.next(),e.preventDefault(),e.stopPropagation())},i.prototype._onKeyUp=function(e){var t=e.keyCode;27!=t&&13!=t&&this._onDelayedSearch(e)},i.prototype.clear=function(){this.dom.search.value="",this._onSearch()},i.prototype.destroy=function(){this.editor=null,this.dom.container.removeChild(this.dom.table),this.dom=null,this.results=null,this.activeResult=null,this._clearDelay()},e.exports=i},function(e,t,i){"use strict";var n=i(54);function r(e,t){this.dom={};var i=this,n=this.dom;this.anchor=void 0,this.items=e,this.eventListeners={},this.selection=void 0,this.onClose=t?t.close:void 0;var r=document.createElement("div");r.className="jsoneditor-contextmenu-root",n.root=r;var o=document.createElement("div");o.className="jsoneditor-contextmenu",n.menu=o,r.appendChild(o);var s=document.createElement("ul");s.className="jsoneditor-menu",o.appendChild(s),n.list=s,n.items=[];var a=document.createElement("button");a.type="button",n.focusButton=a;var l=document.createElement("li");l.style.overflow="hidden",l.style.height="0",l.appendChild(a),s.appendChild(l),function e(t,n,r){r.forEach(function(r){if("separator"==r.type){var o=document.createElement("div");o.className="jsoneditor-separator",(a=document.createElement("li")).appendChild(o),t.appendChild(a)}else{var s={},a=document.createElement("li");t.appendChild(a);var l=document.createElement("button");if(l.type="button",l.className=r.className,s.button=l,r.title&&(l.title=r.title),r.click&&(l.onclick=function(e){e.preventDefault(),i.hide(),r.click()}),a.appendChild(l),r.submenu){var c,h=document.createElement("div");if(h.className="jsoneditor-icon",l.appendChild(h),l.appendChild(document.createTextNode(r.text)),r.click){l.className+=" jsoneditor-default";var u=document.createElement("button");u.type="button",s.buttonExpand=u,u.className="jsoneditor-expand",u.innerHTML='<div class="jsoneditor-expand"></div>',a.appendChild(u),r.submenuTitle&&(u.title=r.submenuTitle),c=u}else{var d=document.createElement("div");d.className="jsoneditor-expand",l.appendChild(d),c=l}c.onclick=function(e){e.preventDefault(),i._onExpandItem(s),c.focus()};var f=[];s.subItems=f;var p=document.createElement("ul");s.ul=p,p.className="jsoneditor-menu",p.style.height="0",a.appendChild(p),e(p,f,r.submenu)}else l.innerHTML='<div class="jsoneditor-icon"></div>'+r.text;n.push(s)}})}(s,this.dom.items,e),this.maxHeight=0,e.forEach(function(t){var n=24*(e.length+(t.submenu?t.submenu.length:0));i.maxHeight=Math.max(i.maxHeight,n)})}r.prototype._getVisibleButtons=function(){var e=[],t=this;return this.dom.items.forEach(function(i){e.push(i.button),i.buttonExpand&&e.push(i.buttonExpand),i.subItems&&i==t.expandedItem&&i.subItems.forEach(function(t){e.push(t.button),t.buttonExpand&&e.push(t.buttonExpand)})}),e},r.visibleMenu=void 0,r.prototype.show=function(e,t){this.hide();var i=!0;if(t){var o=e.getBoundingClientRect(),s=t.getBoundingClientRect();o.bottom+this.maxHeight<s.bottom||o.top-this.maxHeight>s.top&&(i=!1)}if(i){var a=e.offsetHeight;this.dom.menu.style.left="0px",this.dom.menu.style.top=a+"px",this.dom.menu.style.bottom=""}else this.dom.menu.style.left="0px",this.dom.menu.style.top="",this.dom.menu.style.bottom="0px";var l=e.parentNode;l.insertBefore(this.dom.root,l.firstChild);var c=this,h=this.dom.list;this.eventListeners.mousedown=n.addEventListener(window,"mousedown",function(e){var t=e.target;t==h||c._isChildOf(t,h)||(c.hide(),e.stopPropagation(),e.preventDefault())}),this.eventListeners.keydown=n.addEventListener(window,"keydown",function(e){c._onKeyDown(e)}),this.selection=n.getSelection(),this.anchor=e,setTimeout(function(){c.dom.focusButton.focus()},0),r.visibleMenu&&r.visibleMenu.hide(),r.visibleMenu=this},r.prototype.hide=function(){for(var e in this.dom.root.parentNode&&(this.dom.root.parentNode.removeChild(this.dom.root),this.onClose&&this.onClose()),this.eventListeners)if(this.eventListeners.hasOwnProperty(e)){var t=this.eventListeners[e];t&&n.removeEventListener(window,e,t),delete this.eventListeners[e]}r.visibleMenu==this&&(r.visibleMenu=void 0)},r.prototype._onExpandItem=function(e){var t=this,i=e==this.expandedItem,r=this.expandedItem;if(r&&(r.ul.style.height="0",r.ul.style.padding="",setTimeout(function(){t.expandedItem!=r&&(r.ul.style.display="",n.removeClassName(r.ul.parentNode,"jsoneditor-selected"))},300),this.expandedItem=void 0),!i){var o=e.ul;o.style.display="block";o.clientHeight;setTimeout(function(){t.expandedItem==e&&(o.style.height=24*o.childNodes.length+"px",o.style.padding="5px 10px")},0),n.addClassName(o.parentNode,"jsoneditor-selected"),this.expandedItem=e}},r.prototype._onKeyDown=function(e){var t,i,r,o,s=e.target,a=e.which,l=!1;27==a?(this.selection&&n.setSelection(this.selection),this.anchor&&this.anchor.focus(),this.hide(),l=!0):9==a?e.shiftKey?0==(i=(t=this._getVisibleButtons()).indexOf(s))&&(t[t.length-1].focus(),l=!0):(i=(t=this._getVisibleButtons()).indexOf(s))==t.length-1&&(t[0].focus(),l=!0):37==a?("jsoneditor-expand"==s.className&&(r=(t=this._getVisibleButtons())[(i=t.indexOf(s))-1])&&r.focus(),l=!0):38==a?((r=(t=this._getVisibleButtons())[(i=t.indexOf(s))-1])&&"jsoneditor-expand"==r.className&&(r=t[i-2]),r||(r=t[t.length-1]),r&&r.focus(),l=!0):39==a?((o=(t=this._getVisibleButtons())[(i=t.indexOf(s))+1])&&"jsoneditor-expand"==o.className&&o.focus(),l=!0):40==a&&((o=(t=this._getVisibleButtons())[(i=t.indexOf(s))+1])&&"jsoneditor-expand"==o.className&&(o=t[i+2]),o||(o=t[0]),o&&(o.focus(),l=!0),l=!0),l&&(e.stopPropagation(),e.preventDefault())},r.prototype._isChildOf=function(e,t){for(var i=e.parentNode;i;){if(i==t)return!0;i=i.parentNode}return!1},e.exports=r},function(e,t,i){"use strict";var n=i(59),r=i(57),o=i(60),s=i(54);function a(e,t){this.editor=e,this.dom={},this.expanded=!1,t&&t instanceof Object?(this.setField(t.field,t.fieldEditable),this.setValue(t.value,t.type)):(this.setField(""),this.setValue(null)),this._debouncedOnChangeValue=s.debounce(this._onChangeValue.bind(this),a.prototype.DEBOUNCE_INTERVAL),this._debouncedOnChangeField=s.debounce(this._onChangeField.bind(this),a.prototype.DEBOUNCE_INTERVAL)}a.prototype.DEBOUNCE_INTERVAL=150,a.prototype._updateEditability=function(){if(this.editable={field:!0,value:!0},this.editor&&(this.editable.field="tree"===this.editor.options.mode,this.editable.value="view"!==this.editor.options.mode,("tree"===this.editor.options.mode||"form"===this.editor.options.mode)&&"function"==typeof this.editor.options.onEditable)){var e=this.editor.options.onEditable({field:this.field,value:this.value,path:this.getPath()});"boolean"==typeof e?(this.editable.field=e,this.editable.value=e):("boolean"==typeof e.field&&(this.editable.field=e.field),"boolean"==typeof e.value&&(this.editable.value=e.value))}},a.prototype.getPath=function(){for(var e=this,t=[];e;){var i=e.parent?"array"!=e.parent.type?e.field:e.index:void 0;void 0!==i&&t.unshift(i),e=e.parent}return t},a.prototype.findNode=function(e){for(var t=s.parsePath(e),i=this;i&&t.length>0;){var n=t.shift();if("number"==typeof n){if("array"!==i.type)throw new Error("Cannot get child node at index "+n+": node is no array");i=i.childs[n]}else{if("object"!==i.type)throw new Error("Cannot get child node "+n+": node is no object");i=i.childs.filter(function(e){return e.field===n})[0]}}return i},a.prototype.findParents=function(){for(var e=[],t=this.parent;t;)e.unshift(t),t=t.parent;return e},a.prototype.setError=function(e,t){this.getDom(),this.error=e;var i=this.dom.tdError;if(e){i||(i=document.createElement("td"),this.dom.tdError=i,this.dom.tdValue.parentNode.appendChild(i));var n=document.createElement("div");n.className="jsoneditor-popover jsoneditor-right",n.appendChild(document.createTextNode(e.message));var r=document.createElement("button");for(r.type="button",r.className="jsoneditor-schema-error",r.appendChild(n),r.onmouseover=r.onfocus=function(){for(var e=["right","above","below","left"],t=0;t<e.length;t++){var i=e[t];n.className="jsoneditor-popover jsoneditor-"+i;var r=this.editor.content.getBoundingClientRect(),o=n.getBoundingClientRect();if(s.insideRect(r,o,20))break}}.bind(this),t&&(r.onclick=function(){t.findParents().forEach(function(e){e.expand(!1)}),t.scrollTo(function(){t.focus()})});i.firstChild;)i.removeChild(i.firstChild);i.appendChild(r)}else i&&(this.dom.tdError.parentNode.removeChild(this.dom.tdError),delete this.dom.tdError)},a.prototype.getIndex=function(){return this.parent?this.parent.childs.indexOf(this):-1},a.prototype.setParent=function(e){this.parent=e},a.prototype.setField=function(e,t){this.field=e,this.previousField=e,this.fieldEditable=!0===t},a.prototype.getField=function(){return void 0===this.field&&this._getDomField(),this.field},a.prototype.setValue=function(e,t){var i,n,r=this.childs;if(r)for(;r.length;)this.removeChild(r[0]);if(this.type=this._getType(e),t&&t!=this.type){if("string"!=t||"auto"!=this.type)throw new Error('Type mismatch: cannot cast value of type "'+this.type+' to the specified type "'+t+'"');this.type=t}if("array"==this.type){this.childs=[];for(var o=0,s=e.length;o<s;o++)void 0===(i=e[o])||i instanceof Function||(n=new a(this.editor,{value:i}),this.appendChild(n));this.value=""}else if("object"==this.type){for(var l in this.childs=[],e)e.hasOwnProperty(l)&&(void 0===(i=e[l])||i instanceof Function||(n=new a(this.editor,{field:l,value:i}),this.appendChild(n)));this.value="",!0===this.editor.options.sortObjectKeys&&this.sort("asc")}else this.childs=void 0,this.value=e;this.previousValue=this.value},a.prototype.getValue=function(){if("array"==this.type){var e=[];return this.childs.forEach(function(t){e.push(t.getValue())}),e}if("object"==this.type){var t={};return this.childs.forEach(function(e){t[e.getField()]=e.getValue()}),t}return void 0===this.value&&this._getDomValue(),this.value},a.prototype.getLevel=function(){return this.parent?this.parent.getLevel()+1:0},a.prototype.getNodePath=function(){var e=this.parent?this.parent.getNodePath():[];return e.push(this),e},a.prototype.clone=function(){var e=new a(this.editor);if(e.type=this.type,e.field=this.field,e.fieldInnerText=this.fieldInnerText,e.fieldEditable=this.fieldEditable,e.value=this.value,e.valueInnerText=this.valueInnerText,e.expanded=this.expanded,this.childs){var t=[];this.childs.forEach(function(i){var n=i.clone();n.setParent(e),t.push(n)}),e.childs=t}else e.childs=void 0;return e},a.prototype.expand=function(e){this.childs&&(this.expanded=!0,this.dom.expand&&(this.dom.expand.className="jsoneditor-expanded"),this.showChilds(),!1!==e&&this.childs.forEach(function(t){t.expand(e)}))},a.prototype.collapse=function(e){this.childs&&(this.hideChilds(),!1!==e&&this.childs.forEach(function(t){t.collapse(e)}),this.dom.expand&&(this.dom.expand.className="jsoneditor-collapsed"),this.expanded=!1)},a.prototype.showChilds=function(){if(this.childs&&this.expanded){var e=this.dom.tr,t=e?e.parentNode:void 0;if(t){var i=this.getAppend(),n=e.nextSibling;n?t.insertBefore(i,n):t.appendChild(i),this.childs.forEach(function(e){t.insertBefore(e.getDom(),i),e.showChilds()})}}},a.prototype.hide=function(){var e=this.dom.tr,t=e?e.parentNode:void 0;t&&t.removeChild(e),this.hideChilds()},a.prototype.hideChilds=function(){if(this.childs&&this.expanded){var e=this.getAppend();e.parentNode&&e.parentNode.removeChild(e),this.childs.forEach(function(e){e.hide()})}},a.prototype.appendChild=function(e){if(this._hasChilds()){if(e.setParent(this),e.fieldEditable="object"==this.type,"array"==this.type&&(e.index=this.childs.length),this.childs.push(e),this.expanded){var t=e.getDom(),i=this.getAppend(),n=i?i.parentNode:void 0;i&&n&&n.insertBefore(t,i),e.showChilds()}this.updateDom({updateIndexes:!0}),e.updateDom({recurse:!0})}},a.prototype.moveBefore=function(e,t){if(this._hasChilds()){var i=this.dom.tr?this.dom.tr.parentNode:void 0;if(i){var n=document.createElement("tr");n.style.height=i.clientHeight+"px",i.appendChild(n)}e.parent&&e.parent.removeChild(e),t instanceof l?this.appendChild(e):this.insertBefore(e,t),i&&i.removeChild(n)}},a.prototype.moveTo=function(e,t){e.parent==this&&(this.childs.indexOf(e)<t&&t++);var i=this.childs[t]||this.append;this.moveBefore(e,i)},a.prototype.insertBefore=function(e,t){if(this._hasChilds()){if(t==this.append)e.setParent(this),e.fieldEditable="object"==this.type,this.childs.push(e);else{var i=this.childs.indexOf(t);if(-1==i)throw new Error("Node not found");e.setParent(this),e.fieldEditable="object"==this.type,this.childs.splice(i,0,e)}if(this.expanded){var n=e.getDom(),r=t.getDom(),o=r?r.parentNode:void 0;r&&o&&o.insertBefore(n,r),e.showChilds()}this.updateDom({updateIndexes:!0}),e.updateDom({recurse:!0})}},a.prototype.insertAfter=function(e,t){if(this._hasChilds()){var i=this.childs.indexOf(t),n=this.childs[i+1];n?this.insertBefore(e,n):this.appendChild(e)}},a.prototype.search=function(e){var t=[],i=e?e.toLowerCase():void 0;(delete this.searchField,delete this.searchValue,void 0!=this.field)&&(-1!=String(this.field).toLowerCase().indexOf(i)&&(this.searchField=!0,t.push({node:this,elem:"field"})),this._updateDomField());if(this._hasChilds()){if(this.childs){var n=[];this.childs.forEach(function(t){n=n.concat(t.search(e))}),t=t.concat(n)}if(void 0!=i){0==n.length?this.collapse(!1):this.expand(!1)}}else{if(void 0!=this.value)-1!=String(this.value).toLowerCase().indexOf(i)&&(this.searchValue=!0,t.push({node:this,elem:"value"}));this._updateDomValue()}return t},a.prototype.scrollTo=function(e){if(!this.dom.tr||!this.dom.tr.parentNode)for(var t=this.parent;t;)t.expand(!1),t=t.parent;this.dom.tr&&this.dom.tr.parentNode&&this.editor.scrollTo(this.dom.tr.offsetTop,e)},a.focusElement=void 0,a.prototype.focus=function(e){if(a.focusElement=e,this.dom.tr&&this.dom.tr.parentNode){var t=this.dom;switch(e){case"drag":t.drag?t.drag.focus():t.menu.focus();break;case"menu":t.menu.focus();break;case"expand":this._hasChilds()?t.expand.focus():t.field&&this.fieldEditable?(t.field.focus(),s.selectContentEditable(t.field)):t.value&&!this._hasChilds()?(t.value.focus(),s.selectContentEditable(t.value)):t.menu.focus();break;case"field":t.field&&this.fieldEditable?(t.field.focus(),s.selectContentEditable(t.field)):t.value&&!this._hasChilds()?(t.value.focus(),s.selectContentEditable(t.value)):this._hasChilds()?t.expand.focus():t.menu.focus();break;case"value":default:t.value&&!this._hasChilds()?(t.value.focus(),s.selectContentEditable(t.value)):t.field&&this.fieldEditable?(t.field.focus(),s.selectContentEditable(t.field)):this._hasChilds()?t.expand.focus():t.menu.focus()}}},a.select=function(e){setTimeout(function(){s.selectContentEditable(e)},0)},a.prototype.blur=function(){this._getDomValue(!1),this._getDomField(!1)},a.prototype.containsNode=function(e){if(this==e)return!0;var t=this.childs;if(t)for(var i=0,n=t.length;i<n;i++)if(t[i].containsNode(e))return!0;return!1},a.prototype._move=function(e,t){if(e!=t){if(e.containsNode(this))throw new Error("Cannot move a field into a child of itself");e.parent&&e.parent.removeChild(e);var i=e.clone();e.clearDom(),t?this.insertBefore(i,t):this.appendChild(i)}},a.prototype.removeChild=function(e){if(this.childs){var t=this.childs.indexOf(e);if(-1!=t){e.hide(),delete e.searchField,delete e.searchValue;var i=this.childs.splice(t,1)[0];return i.parent=null,this.updateDom({updateIndexes:!0}),i}}},a.prototype._remove=function(e){this.removeChild(e)},a.prototype.changeType=function(e){var t=this.type;if(t!=e){if("string"!=e&&"auto"!=e||"string"!=t&&"auto"!=t){var i,n=this.dom.tr?this.dom.tr.parentNode:void 0,r=(i=this.expanded?this.getAppend():this.getDom())&&i.parentNode?i.nextSibling:void 0;this.hide(),this.clearDom(),this.type=e,"object"==e?(this.childs||(this.childs=[]),this.childs.forEach(function(e,t){e.clearDom(),delete e.index,e.fieldEditable=!0,void 0==e.field&&(e.field="")}),"string"!=t&&"auto"!=t||(this.expanded=!0)):"array"==e?(this.childs||(this.childs=[]),this.childs.forEach(function(e,t){e.clearDom(),e.fieldEditable=!1,e.index=t}),"string"!=t&&"auto"!=t||(this.expanded=!0)):this.expanded=!1,n&&(r?n.insertBefore(this.getDom(),r):n.appendChild(this.getDom())),this.showChilds()}else this.type=e;"auto"!=e&&"string"!=e||(this.value="string"==e?String(this.value):this._stringCast(String(this.value)),this.focus()),this.updateDom({updateIndexes:!0})}},a.prototype._getDomValue=function(e){if(this.dom.value&&"array"!=this.type&&"object"!=this.type&&(this.valueInnerText=s.getInnerText(this.dom.value)),void 0!=this.valueInnerText)try{var t;if("string"==this.type)t=this._unescapeHTML(this.valueInnerText);else{var i=this._unescapeHTML(this.valueInnerText);t=this._stringCast(i)}t!==this.value&&(this.value=t,this._debouncedOnChangeValue())}catch(t){if(this.value=void 0,!0!==e)throw t}},a.prototype._onChangeValue=function(){var e=this.editor.getSelection();if(e.range){var t=s.textDiff(String(this.value),String(this.previousValue));e.range.startOffset=t.start,e.range.endOffset=t.end}var i=this.editor.getSelection();if(i.range){var n=s.textDiff(String(this.previousValue),String(this.value));i.range.startOffset=n.start,i.range.endOffset=n.end}this.editor._onAction("editValue",{node:this,oldValue:this.previousValue,newValue:this.value,oldSelection:e,newSelection:i}),this.previousValue=this.value},a.prototype._onChangeField=function(){var e=this.editor.getSelection();if(e.range){var t=s.textDiff(this.field,this.previousField);e.range.startOffset=t.start,e.range.endOffset=t.end}var i=this.editor.getSelection();if(i.range){var n=s.textDiff(this.previousField,this.field);i.range.startOffset=n.start,i.range.endOffset=n.end}this.editor._onAction("editField",{node:this,oldValue:this.previousField,newValue:this.field,oldSelection:e,newSelection:i}),this.previousField=this.field},a.prototype._updateDomValue=function(){var e=this.dom.value;if(e){var t=["jsoneditor-value"],i=this.value,n="auto"==this.type?s.type(i):this.type,r="string"==n&&s.isUrl(i);if(t.push("jsoneditor-"+n),r&&t.push("jsoneditor-url"),""==String(this.value)&&"array"!=this.type&&"object"!=this.type&&t.push("jsoneditor-empty"),this.searchValueActive&&t.push("jsoneditor-highlight-active"),this.searchValue&&t.push("jsoneditor-highlight"),e.className=t.join(" "),"array"==n||"object"==n){var o=this.childs?this.childs.length:0;e.title=this.type+" containing "+o+" items"}else r&&this.editable.value?e.title="Ctrl+Click or Ctrl+Enter to open url in new window":e.title="";if("boolean"===n&&this.editable.value?(this.dom.checkbox||(this.dom.checkbox=document.createElement("input"),this.dom.checkbox.type="checkbox",this.dom.tdCheckbox=document.createElement("td"),this.dom.tdCheckbox.className="jsoneditor-tree",this.dom.tdCheckbox.appendChild(this.dom.checkbox),this.dom.tdValue.parentNode.insertBefore(this.dom.tdCheckbox,this.dom.tdValue)),this.dom.checkbox.checked=this.value):this.dom.tdCheckbox&&(this.dom.tdCheckbox.parentNode.removeChild(this.dom.tdCheckbox),delete this.dom.tdCheckbox,delete this.dom.checkbox),this.enum&&this.editable.value){if(!this.dom.select){this.dom.select=document.createElement("select"),this.id=this.field+"_"+(new Date).getUTCMilliseconds(),this.dom.select.id=this.id,this.dom.select.name=this.dom.select.id,this.dom.select.option=document.createElement("option"),this.dom.select.option.value="",this.dom.select.option.innerHTML="--",this.dom.select.appendChild(this.dom.select.option);for(var a=0;a<this.enum.length;a++)this.dom.select.option=document.createElement("option"),this.dom.select.option.value=this.enum[a],this.dom.select.option.innerHTML=this.enum[a],this.dom.select.option.value==this.value&&(this.dom.select.option.selected=!0),this.dom.select.appendChild(this.dom.select.option);this.dom.tdSelect=document.createElement("td"),this.dom.tdSelect.className="jsoneditor-tree",this.dom.tdSelect.appendChild(this.dom.select),this.dom.tdValue.parentNode.insertBefore(this.dom.tdSelect,this.dom.tdValue)}!this.schema||this.schema.hasOwnProperty("oneOf")||this.schema.hasOwnProperty("anyOf")||this.schema.hasOwnProperty("allOf")?delete this.valueFieldHTML:(this.valueFieldHTML=this.dom.tdValue.innerHTML,this.dom.tdValue.style.visibility="hidden",this.dom.tdValue.innerHTML="")}else this.dom.tdSelect&&(this.dom.tdSelect.parentNode.removeChild(this.dom.tdSelect),delete this.dom.tdSelect,delete this.dom.select,this.dom.tdValue.innerHTML=this.valueFieldHTML,this.dom.tdValue.style.visibility="",delete this.valueFieldHTML);s.stripFormatting(e)}},a.prototype._updateDomField=function(){var e=this.dom.field;e&&(""==String(this.field)&&"array"!=this.parent.type?s.addClassName(e,"jsoneditor-empty"):s.removeClassName(e,"jsoneditor-empty"),this.searchFieldActive?s.addClassName(e,"jsoneditor-highlight-active"):s.removeClassName(e,"jsoneditor-highlight-active"),this.searchField?s.addClassName(e,"jsoneditor-highlight"):s.removeClassName(e,"jsoneditor-highlight"),s.stripFormatting(e))},a.prototype._getDomField=function(e){if(this.dom.field&&this.fieldEditable&&(this.fieldInnerText=s.getInnerText(this.dom.field)),void 0!=this.fieldInnerText)try{var t=this._unescapeHTML(this.fieldInnerText);t!==this.field&&(this.field=t,this._debouncedOnChangeField())}catch(t){if(this.field=void 0,!0!==e)throw t}},a.prototype.validate=function(){var e=[];if("object"===this.type){for(var t={},i=[],n=0;n<this.childs.length;n++){var r=this.childs[n];t.hasOwnProperty(r.field)&&i.push(r.field),t[r.field]=!0}i.length>0&&(e=this.childs.filter(function(e){return-1!==i.indexOf(e.field)}).map(function(e){return{node:e,error:{message:'duplicate key "'+e.field+'"'}}}))}if(this.childs)for(n=0;n<this.childs.length;n++){var o=this.childs[n].validate();o.length>0&&(e=e.concat(o))}return e},a.prototype.clearDom=function(){this.dom={}},a.prototype.getDom=function(){var e=this.dom;if(e.tr)return e.tr;if(this._updateEditability(),e.tr=document.createElement("tr"),e.tr.node=this,"tree"===this.editor.options.mode){var t=document.createElement("td");if(this.editable.field&&this.parent){var i=document.createElement("button");i.type="button",e.drag=i,i.className="jsoneditor-dragarea",i.title="Drag to move this field (Alt+Shift+Arrows)",t.appendChild(i)}e.tr.appendChild(t);var n=document.createElement("td"),r=document.createElement("button");r.type="button",e.menu=r,r.className="jsoneditor-contextmenu",r.title="Click to open the actions menu (Ctrl+M)",n.appendChild(e.menu),e.tr.appendChild(n)}var o=document.createElement("td");return e.tr.appendChild(o),e.tree=this._createDomTree(),o.appendChild(e.tree),this.updateDom({updateIndexes:!0}),e.tr},a.onDragStart=function(e,t){if(!Array.isArray(e))return a.onDragStart([e],t);if(0!==e.length){var i=e[0],n=e[e.length-1],r=a.getNodeFromTarget(t.target),o=n._nextSibling(),l=i.editor,c=s.getAbsoluteTop(r.dom.tr)-s.getAbsoluteTop(i.dom.tr);l.mousemove||(l.mousemove=s.addEventListener(window,"mousemove",function(t){a.onDrag(e,t)})),l.mouseup||(l.mouseup=s.addEventListener(window,"mouseup",function(t){a.onDragEnd(e,t)})),l.highlighter.lock(),l.drag={oldCursor:document.body.style.cursor,oldSelection:l.getSelection(),oldBeforeNode:o,mouseX:t.pageX,offsetY:c,level:i.getLevel()},document.body.style.cursor="move",t.preventDefault()}},a.onDrag=function(e,t){if(!Array.isArray(e))return a.onDrag([e],t);if(0!==e.length){var i,n,r,o,c,h,u,d,f,p,m,g,v,y,w=e[0].editor,b=t.pageY-w.drag.offsetY,C=t.pageX,A=!1,E=e[0];if(i=E.dom.tr,f=s.getAbsoluteTop(i),g=i.offsetHeight,b<f){n=i;do{n=n.previousSibling,u=a.getNodeFromTarget(n),p=n?s.getAbsoluteTop(n):0}while(n&&b<p);u&&!u.parent&&(u=void 0),u||(n=(h=i.parentNode.firstChild)?h.nextSibling:void 0,(u=a.getNodeFromTarget(n))==E&&(u=void 0)),u&&b>(p=(n=u.dom.tr)?s.getAbsoluteTop(n):0)+g&&(u=void 0),u&&(e.forEach(function(e){u.parent.moveBefore(e,u)}),A=!0)}else{var x=e[e.length-1];if(o=(c=x.expanded&&x.append?x.append.getDom():x.dom.tr)?c.nextSibling:void 0){m=s.getAbsoluteTop(o),r=o;do{d=a.getNodeFromTarget(r),r&&(v=r.nextSibling?s.getAbsoluteTop(r.nextSibling):0,y=r?v-m:0,d.parent.childs.length==e.length&&d.parent.childs[e.length-1]==x&&(f+=27)),r=r.nextSibling}while(r&&b>f+y);if(d&&d.parent){var F=C-w.drag.mouseX,S=Math.round(F/24/2),k=w.drag.level+S,_=d.getLevel();for(n=d.dom.tr.previousSibling;_<k&&n;){if(u=a.getNodeFromTarget(n),e.some(function(e){return e===u||u._isChildOf(e)}));else{if(!(u instanceof l))break;var D=u.parent.childs;if(D.length==e.length&&D[e.length-1]==x)break;_=(d=a.getNodeFromTarget(n)).getLevel()}n=n.previousSibling}c.nextSibling!=d.dom.tr&&(e.forEach(function(e){d.parent.moveBefore(e,d)}),A=!0)}}}A&&(w.drag.mouseX=C,w.drag.level=E.getLevel()),w.startAutoScroll(b),t.preventDefault()}},a.onDragEnd=function(e,t){if(!Array.isArray(e))return a.onDrag([e],t);if(0!==e.length){var i=e[0],n=i.editor,r=i.parent,o=r.childs.indexOf(i),l=r.childs[o+e.length]||r.append;e[0]&&e[0].dom.menu.focus();var c={nodes:e,oldSelection:n.drag.oldSelection,newSelection:n.getSelection(),oldBeforeNode:n.drag.oldBeforeNode,newBeforeNode:l};c.oldBeforeNode!=c.newBeforeNode&&n._onAction("moveNodes",c),document.body.style.cursor=n.drag.oldCursor,n.highlighter.unlock(),e.forEach(function(e){t.target!==e.dom.drag&&t.target!==e.dom.menu&&n.highlighter.unhighlight()}),delete n.drag,n.mousemove&&(s.removeEventListener(window,"mousemove",n.mousemove),delete n.mousemove),n.mouseup&&(s.removeEventListener(window,"mouseup",n.mouseup),delete n.mouseup),n.stopAutoScroll(),t.preventDefault()}},a.prototype._isChildOf=function(e){for(var t=this.parent;t;){if(t==e)return!0;t=t.parent}return!1},a.prototype._createDomField=function(){return document.createElement("div")},a.prototype.setHighlight=function(e){this.dom.tr&&(e?s.addClassName(this.dom.tr,"jsoneditor-highlight"):s.removeClassName(this.dom.tr,"jsoneditor-highlight"),this.append&&this.append.setHighlight(e),this.childs&&this.childs.forEach(function(t){t.setHighlight(e)}))},a.prototype.setSelected=function(e,t){this.selected=e,this.dom.tr&&(e?s.addClassName(this.dom.tr,"jsoneditor-selected"):s.removeClassName(this.dom.tr,"jsoneditor-selected"),t?s.addClassName(this.dom.tr,"jsoneditor-first"):s.removeClassName(this.dom.tr,"jsoneditor-first"),this.append&&this.append.setSelected(e),this.childs&&this.childs.forEach(function(t){t.setSelected(e)}))},a.prototype.updateValue=function(e){this.value=e,this.updateDom()},a.prototype.updateField=function(e){this.field=e,this.updateDom()},a.prototype.updateDom=function(e){var t=this.dom.tree;t&&(t.style.marginLeft=24*this.getLevel()+"px");var i,n=this.dom.field;n&&(this.fieldEditable?(n.contentEditable=this.editable.field,n.spellcheck=!1,n.className="jsoneditor-field"):n.className="jsoneditor-readonly",i=void 0!=this.index?this.index:void 0!=this.field?this.field:this._hasChilds()?this.type:"",n.innerHTML=this._escapeHTML(i),this._updateSchema());var r=this.dom.value;if(r){var o=this.childs?this.childs.length:0;"array"==this.type?(r.innerHTML="["+o+"]",s.addClassName(this.dom.tr,"jsoneditor-expandable")):"object"==this.type?(r.innerHTML="{"+o+"}",s.addClassName(this.dom.tr,"jsoneditor-expandable")):(r.innerHTML=this._escapeHTML(this.value),s.removeClassName(this.dom.tr,"jsoneditor-expandable"))}this._updateDomField(),this._updateDomValue(),e&&!0===e.updateIndexes&&this._updateDomIndexes(),e&&!0===e.recurse&&this.childs&&this.childs.forEach(function(t){t.updateDom(e)}),this.append&&this.append.updateDom()},a.prototype._updateSchema=function(){this.editor&&this.editor.options&&(this.schema=a._findSchema(this.editor.options.schema,this.getPath()),this.schema?this.enum=a._findEnum(this.schema):delete this.enum)},a._findEnum=function(e){if(e.enum)return e.enum;var t=e.oneOf||e.anyOf||e.allOf;if(t){var i=t.filter(function(e){return e.enum});if(i.length>0)return i[0].enum}return null},a._findSchema=function(e,t){for(var i=e,n=0;n<t.length&&i;n++){var r=t[n];"string"==typeof r&&i.properties?i=i.properties[r]||null:"number"==typeof r&&i.items&&(i=i.items)}return i},a.prototype._updateDomIndexes=function(){var e=this.dom.value,t=this.childs;e&&t&&("array"==this.type?t.forEach(function(e,t){e.index=t;var i=e.dom.field;i&&(i.innerHTML=t)}):"object"==this.type&&t.forEach(function(e){void 0!=e.index&&(delete e.index,void 0==e.field&&(e.field=""))}))},a.prototype._createDomValue=function(){var e;return"array"==this.type?(e=document.createElement("div")).innerHTML="[...]":"object"==this.type?(e=document.createElement("div")).innerHTML="{...}":!this.editable.value&&s.isUrl(this.value)?((e=document.createElement("a")).href=this.value,e.target="_blank",e.innerHTML=this._escapeHTML(this.value)):((e=document.createElement("div")).contentEditable=this.editable.value,e.spellcheck=!1,e.innerHTML=this._escapeHTML(this.value)),e},a.prototype._createDomExpandButton=function(){var e=document.createElement("button");return e.type="button",this._hasChilds()?(e.className=this.expanded?"jsoneditor-expanded":"jsoneditor-collapsed",e.title="Click to expand/collapse this field (Ctrl+E). \nCtrl+Click to expand/collapse including all childs."):(e.className="jsoneditor-invisible",e.title=""),e},a.prototype._createDomTree=function(){var e=this.dom,t=document.createElement("table"),i=document.createElement("tbody");t.style.borderCollapse="collapse",t.className="jsoneditor-values",t.appendChild(i);var n=document.createElement("tr");i.appendChild(n);var r=document.createElement("td");r.className="jsoneditor-tree",n.appendChild(r),e.expand=this._createDomExpandButton(),r.appendChild(e.expand),e.tdExpand=r;var o=document.createElement("td");o.className="jsoneditor-tree",n.appendChild(o),e.field=this._createDomField(),o.appendChild(e.field),e.tdField=o;var s=document.createElement("td");s.className="jsoneditor-tree",n.appendChild(s),"object"!=this.type&&"array"!=this.type&&(s.appendChild(document.createTextNode(":")),s.className="jsoneditor-separator"),e.tdSeparator=s;var a=document.createElement("td");return a.className="jsoneditor-tree",n.appendChild(a),e.value=this._createDomValue(),a.appendChild(e.value),e.tdValue=a,t},a.prototype.onEvent=function(e){var t=e.type,i=e.target||e.srcElement,n=this.dom,r=this,o=this._hasChilds();if(i!=n.drag&&i!=n.menu||("mouseover"==t?this.editor.highlighter.highlight(this):"mouseout"==t&&this.editor.highlighter.unhighlight()),"click"==t&&i==n.menu){var a=r.editor.highlighter;a.highlight(r),a.lock(),s.addClassName(n.menu,"jsoneditor-selected"),this.showContextMenu(n.menu,function(){s.removeClassName(n.menu,"jsoneditor-selected"),a.unlock(),a.unhighlight()})}if("click"==t&&(i==n.expand||("view"===r.editor.options.mode||"form"===r.editor.options.mode)&&"DIV"===i.nodeName)&&o){var l=e.ctrlKey;this._onExpand(l)}"change"==t&&i==n.checkbox&&(this.dom.value.innerHTML=!this.value,this._getDomValue()),"change"==t&&i==n.select&&(this.dom.value.innerHTML=n.select.value,this._getDomValue(),this._updateDomValue());var c=n.value;if(i==c)switch(t){case"blur":case"change":this._getDomValue(!0),this._updateDomValue(),this.value&&(c.innerHTML=this._escapeHTML(this.value));break;case"input":this._getDomValue(!0),this._updateDomValue();break;case"keydown":case"mousedown":this.editor.selection=this.editor.getSelection();break;case"click":!e.ctrlKey&&this.editable.value||s.isUrl(this.value)&&window.open(this.value,"_blank");break;case"keyup":this._getDomValue(!0),this._updateDomValue();break;case"cut":case"paste":setTimeout(function(){r._getDomValue(!0),r._updateDomValue()},1)}var h=n.field;if(i==h)switch(t){case"blur":case"change":this._getDomField(!0),this._updateDomField(),this.field&&(h.innerHTML=this._escapeHTML(this.field));break;case"input":this._getDomField(!0),this._updateSchema(),this._updateDomField(),this._updateDomValue();break;case"keydown":case"mousedown":this.editor.selection=this.editor.getSelection();break;case"keyup":this._getDomField(!0),this._updateDomField();break;case"cut":case"paste":setTimeout(function(){r._getDomField(!0),r._updateDomField()},1)}i!=n.tree.parentNode||"click"!=t||e.hasMoved||((void 0!=e.offsetX?e.offsetX<24*(this.getLevel()+1):e.pageX<s.getAbsoluteLeft(n.tdSeparator))||o?h&&(s.setEndOfContentEditable(h),h.focus()):c&&!this.enum&&(s.setEndOfContentEditable(c),c.focus()));(i!=n.tdExpand||o)&&i!=n.tdField&&i!=n.tdSeparator||"click"!=t||e.hasMoved||h&&(s.setEndOfContentEditable(h),h.focus()),"keydown"==t&&this.onKeyDown(e)},a.prototype.onKeyDown=function(e){var t,i,n,r,o,c,h,u,d=e.which||e.keyCode,f=e.target||e.srcElement,p=e.ctrlKey,m=e.shiftKey,g=e.altKey,v=!1,y="tree"===this.editor.options.mode,w=this.editor.multiselection.nodes.length>0?this.editor.multiselection.nodes:[this],b=w[0],C=w[w.length-1];if(13==d){if(f==this.dom.value)this.editable.value&&!e.ctrlKey||s.isUrl(this.value)&&(window.open(this.value,"_blank"),v=!0);else if(f==this.dom.expand){if(this._hasChilds()){var A=e.ctrlKey;this._onExpand(A),f.focus(),v=!0}}}else if(68==d)p&&y&&(a.onDuplicate(w),v=!0);else if(69==d)p&&(this._onExpand(m),f.focus(),v=!0);else if(77==d&&y)p&&(this.showContextMenu(f),v=!0);else if(46==d&&y)p&&(a.onRemove(w),v=!0);else if(45==d&&y)p&&!m?(this._onInsertBefore(),v=!0):p&&m&&(this._onInsertAfter(),v=!0);else if(35==d){if(g){var E=this._lastNode();E&&E.focus(a.focusElement||this._getElementName(f)),v=!0}}else if(36==d){if(g){var x=this._firstNode();x&&x.focus(a.focusElement||this._getElementName(f)),v=!0}}else if(37==d){if(g&&!m){var F=this._previousElement(f);F&&this.focus(this._getElementName(F)),v=!0}else if(g&&m&&y){if(C.expanded){var S=C.getAppend();n=S?S.nextSibling:void 0}else{var k=C.getDom();n=k.nextSibling}n&&(i=a.getNodeFromTarget(n),r=n.nextSibling,$=a.getNodeFromTarget(r),i&&i instanceof l&&1!=C.parent.childs.length&&$&&$.parent&&(o=this.editor.getSelection(),c=C._nextSibling(),w.forEach(function(e){$.parent.moveBefore(e,$)}),this.focus(a.focusElement||this._getElementName(f)),this.editor._onAction("moveNodes",{nodes:w,oldBeforeNode:c,newBeforeNode:$,oldSelection:o,newSelection:this.editor.getSelection()})))}}else if(38==d)g&&!m?((t=this._previousNode())&&(this.editor.deselect(!0),t.focus(a.focusElement||this._getElementName(f))),v=!0):!g&&p&&m&&y?((t=this._previousNode())&&((u=this.editor.multiselection).start=u.start||this,u.end=t,h=this.editor._findTopLevelNodes(u.start,u.end),this.editor.select(h),t.focus("field")),v=!0):g&&m&&y&&((t=b._previousNode())&&t.parent&&(o=this.editor.getSelection(),c=C._nextSibling(),w.forEach(function(e){t.parent.moveBefore(e,t)}),this.focus(a.focusElement||this._getElementName(f)),this.editor._onAction("moveNodes",{nodes:w,oldBeforeNode:c,newBeforeNode:t,oldSelection:o,newSelection:this.editor.getSelection()})),v=!0);else if(39==d){if(g&&!m){var _=this._nextElement(f);_&&this.focus(this._getElementName(_)),v=!0}else if(g&&m&&y){var D=(k=b.getDom()).previousSibling;D&&(t=a.getNodeFromTarget(D))&&t.parent&&t instanceof l&&!t.isVisible()&&(o=this.editor.getSelection(),c=C._nextSibling(),w.forEach(function(e){t.parent.moveBefore(e,t)}),this.focus(a.focusElement||this._getElementName(f)),this.editor._onAction("moveNodes",{nodes:w,oldBeforeNode:c,newBeforeNode:t,oldSelection:o,newSelection:this.editor.getSelection()}))}}else if(40==d)if(g&&!m)(i=this._nextNode())&&(this.editor.deselect(!0),i.focus(a.focusElement||this._getElementName(f))),v=!0;else if(!g&&p&&m&&y)(i=this._nextNode())&&((u=this.editor.multiselection).start=u.start||this,u.end=i,h=this.editor._findTopLevelNodes(u.start,u.end),this.editor.select(h),i.focus("field")),v=!0;else if(g&&m&&y){var $=(i=C.expanded?C.append?C.append._nextNode():void 0:C._nextNode())&&(i._nextNode()||i.parent.append);$&&$.parent&&(o=this.editor.getSelection(),c=C._nextSibling(),w.forEach(function(e){$.parent.moveBefore(e,$)}),this.focus(a.focusElement||this._getElementName(f)),this.editor._onAction("moveNodes",{nodes:w,oldBeforeNode:c,newBeforeNode:$,oldSelection:o,newSelection:this.editor.getSelection()})),v=!0}v&&(e.preventDefault(),e.stopPropagation())},a.prototype._onExpand=function(e){if(e){var t=this.dom.tr.parentNode,i=t.parentNode,n=i.scrollTop;i.removeChild(t)}this.expanded?this.collapse(e):this.expand(e),e&&(i.appendChild(t),i.scrollTop=n)},a.onRemove=function(e){if(!Array.isArray(e))return a.onRemove([e]);if(e&&e.length>0){var t=e[0],i=t.parent,n=t.editor,r=t.getIndex();n.highlighter.unhighlight();var o=n.getSelection();a.blurNodes(e);var s=n.getSelection();e.forEach(function(e){e.parent._remove(e)}),n._onAction("removeNodes",{nodes:e.slice(0),parent:i,index:r,oldSelection:o,newSelection:s})}},a.onDuplicate=function(e){if(!Array.isArray(e))return a.onDuplicate([e]);if(e&&e.length>0){var t=e[e.length-1],i=t.parent,n=t.editor;n.deselect(n.multiselection.nodes);var r=n.getSelection(),o=t,s=e.map(function(e){var t=e.clone();return i.insertAfter(t,o),o=t,t});1===e.length?s[0].focus():n.select(s);var l=n.getSelection();n._onAction("duplicateNodes",{afterNode:t,nodes:s,parent:i,oldSelection:r,newSelection:l})}},a.prototype._onInsertBefore=function(e,t,i){var n=this.editor.getSelection(),r=new a(this.editor,{field:void 0!=e?e:"",value:void 0!=t?t:"",type:i});r.expand(!0),this.parent.insertBefore(r,this),this.editor.highlighter.unhighlight(),r.focus("field");var o=this.editor.getSelection();this.editor._onAction("insertBeforeNodes",{nodes:[r],beforeNode:this,parent:this.parent,oldSelection:n,newSelection:o})},a.prototype._onInsertAfter=function(e,t,i){var n=this.editor.getSelection(),r=new a(this.editor,{field:void 0!=e?e:"",value:void 0!=t?t:"",type:i});r.expand(!0),this.parent.insertAfter(r,this),this.editor.highlighter.unhighlight(),r.focus("field");var o=this.editor.getSelection();this.editor._onAction("insertAfterNodes",{nodes:[r],afterNode:this,parent:this.parent,oldSelection:n,newSelection:o})},a.prototype._onAppend=function(e,t,i){var n=this.editor.getSelection(),r=new a(this.editor,{field:void 0!=e?e:"",value:void 0!=t?t:"",type:i});r.expand(!0),this.parent.appendChild(r),this.editor.highlighter.unhighlight(),r.focus("field");var o=this.editor.getSelection();this.editor._onAction("appendNodes",{nodes:[r],parent:this.parent,oldSelection:n,newSelection:o})},a.prototype._onChangeType=function(e){var t=this.type;if(e!=t){var i=this.editor.getSelection();this.changeType(e);var n=this.editor.getSelection();this.editor._onAction("changeType",{node:this,oldType:t,newType:e,oldSelection:i,newSelection:n})}},a.prototype.sort=function(e){if(this._hasChilds()){var t="desc"==e?-1:1,i="array"==this.type?"value":"field";this.hideChilds();var r=this.childs,o=this.sortOrder;this.childs=this.childs.concat(),this.childs.sort(function(e,r){return t*n(e[i],r[i])}),this.sortOrder=1==t?"asc":"desc",this.editor._onAction("sort",{node:this,oldChilds:r,oldSort:o,newChilds:this.childs,newSort:this.sortOrder}),this.showChilds()}},a.prototype.getAppend=function(){return this.append||(this.append=new l(this.editor),this.append.setParent(this)),this.append.getDom()},a.getNodeFromTarget=function(e){for(;e;){if(e.node)return e.node;e=e.parentNode}},a.blurNodes=function(e){if(Array.isArray(e)){var t=e[0],i=t.parent,n=t.getIndex();i.childs[n+e.length]?i.childs[n+e.length].focus():i.childs[n-1]?i.childs[n-1].focus():i.focus()}else a.blurNodes([e])},a.prototype._nextSibling=function(){var e=this.parent.childs.indexOf(this);return this.parent.childs[e+1]||this.parent.append},a.prototype._previousNode=function(){var e=null,t=this.getDom();if(t&&t.parentNode){var i=t;do{i=i.previousSibling,e=a.getNodeFromTarget(i)}while(i&&e instanceof l&&!e.isVisible())}return e},a.prototype._nextNode=function(){var e=null,t=this.getDom();if(t&&t.parentNode){var i=t;do{i=i.nextSibling,e=a.getNodeFromTarget(i)}while(i&&e instanceof l&&!e.isVisible())}return e},a.prototype._firstNode=function(){var e=null,t=this.getDom();if(t&&t.parentNode){var i=t.parentNode.firstChild;e=a.getNodeFromTarget(i)}return e},a.prototype._lastNode=function(){var e=null,t=this.getDom();if(t&&t.parentNode){var i=t.parentNode.lastChild;for(e=a.getNodeFromTarget(i);i&&e instanceof l&&!e.isVisible();)i=i.previousSibling,e=a.getNodeFromTarget(i)}return e},a.prototype._previousElement=function(e){var t=this.dom;switch(e){case t.value:if(this.fieldEditable)return t.field;case t.field:if(this._hasChilds())return t.expand;case t.expand:return t.menu;case t.menu:if(t.drag)return t.drag;default:return null}},a.prototype._nextElement=function(e){var t=this.dom;switch(e){case t.drag:return t.menu;case t.menu:if(this._hasChilds())return t.expand;case t.expand:if(this.fieldEditable)return t.field;case t.field:if(!this._hasChilds())return t.value;default:return null}},a.prototype._getElementName=function(e){var t=this.dom;for(var i in t)if(t.hasOwnProperty(i)&&t[i]==e)return i;return null},a.prototype._hasChilds=function(){return"array"==this.type||"object"==this.type},a.TYPE_TITLES={auto:'Field type "auto". The field type is automatically determined from the value and can be a string, number, boolean, or null.',object:'Field type "object". An object contains an unordered set of key/value pairs.',array:'Field type "array". An array contains an ordered collection of values.',string:'Field type "string". Field type is not determined from the value, but always returned as string.'},a.prototype.showContextMenu=function(e,t){var i=this,n=a.TYPE_TITLES,o=[];if(this.editable.value&&o.push({text:"Type",title:"Change the type of this field",className:"jsoneditor-type-"+this.type,submenu:[{text:"Auto",className:"jsoneditor-type-auto"+("auto"==this.type?" jsoneditor-selected":""),title:n.auto,click:function(){i._onChangeType("auto")}},{text:"Array",className:"jsoneditor-type-array"+("array"==this.type?" jsoneditor-selected":""),title:n.array,click:function(){i._onChangeType("array")}},{text:"Object",className:"jsoneditor-type-object"+("object"==this.type?" jsoneditor-selected":""),title:n.object,click:function(){i._onChangeType("object")}},{text:"String",className:"jsoneditor-type-string"+("string"==this.type?" jsoneditor-selected":""),title:n.string,click:function(){i._onChangeType("string")}}]}),this._hasChilds()){var s="asc"==this.sortOrder?"desc":"asc";o.push({text:"Sort",title:"Sort the childs of this "+this.type,className:"jsoneditor-sort-"+s,click:function(){i.sort(s)},submenu:[{text:"Ascending",className:"jsoneditor-sort-asc",title:"Sort the childs of this "+this.type+" in ascending order",click:function(){i.sort("asc")}},{text:"Descending",className:"jsoneditor-sort-desc",title:"Sort the childs of this "+this.type+" in descending order",click:function(){i.sort("desc")}}]})}if(this.parent&&this.parent._hasChilds()){o.length&&o.push({type:"separator"});var l=i.parent.childs;i==l[l.length-1]&&o.push({text:"Append",title:"Append a new field with type 'auto' after this field (Ctrl+Shift+Ins)",submenuTitle:"Select the type of the field to be appended",className:"jsoneditor-append",click:function(){i._onAppend("","","auto")},submenu:[{text:"Auto",className:"jsoneditor-type-auto",title:n.auto,click:function(){i._onAppend("","","auto")}},{text:"Array",className:"jsoneditor-type-array",title:n.array,click:function(){i._onAppend("",[])}},{text:"Object",className:"jsoneditor-type-object",title:n.object,click:function(){i._onAppend("",{})}},{text:"String",className:"jsoneditor-type-string",title:n.string,click:function(){i._onAppend("","","string")}}]}),o.push({text:"Insert",title:"Insert a new field with type 'auto' before this field (Ctrl+Ins)",submenuTitle:"Select the type of the field to be inserted",className:"jsoneditor-insert",click:function(){i._onInsertBefore("","","auto")},submenu:[{text:"Auto",className:"jsoneditor-type-auto",title:n.auto,click:function(){i._onInsertBefore("","","auto")}},{text:"Array",className:"jsoneditor-type-array",title:n.array,click:function(){i._onInsertBefore("",[])}},{text:"Object",className:"jsoneditor-type-object",title:n.object,click:function(){i._onInsertBefore("",{})}},{text:"String",className:"jsoneditor-type-string",title:n.string,click:function(){i._onInsertBefore("","","string")}}]}),this.editable.field&&(o.push({text:"Duplicate",title:"Duplicate this field (Ctrl+D)",className:"jsoneditor-duplicate",click:function(){a.onDuplicate(i)}}),o.push({text:"Remove",title:"Remove this field (Ctrl+Del)",className:"jsoneditor-remove",click:function(){a.onRemove(i)}}))}new r(o,{close:t}).show(e,this.editor.content)},a.prototype._getType=function(e){return e instanceof Array?"array":e instanceof Object?"object":"string"==typeof e&&"string"!=typeof this._stringCast(e)?"string":"auto"},a.prototype._stringCast=function(e){var t=e.toLowerCase(),i=Number(e),n=parseFloat(e);return""==e?"":"null"==t?null:"true"==t||"false"!=t&&(isNaN(i)||isNaN(n)?e:i)},a.prototype._escapeHTML=function(e){if("string"!=typeof e)return String(e);var t=String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/ /g,"  ").replace(/^ /," ").replace(/ $/," "),i=JSON.stringify(t),n=i.substring(1,i.length-1);return!0===this.editor.options.escapeUnicode&&(n=s.escapeUnicodeChars(n)),n},a.prototype._unescapeHTML=function(e){var t='"'+this._escapeJSON(e)+'"';return s.parse(t).replace(/</g,"<").replace(/>/g,">").replace(/ |\u00A0/g," ").replace(/&/g,"&")},a.prototype._escapeJSON=function(e){for(var t="",i=0;i<e.length;){var n=e.charAt(i);"\n"==n?t+="\\n":"\\"==n?(t+=n,i++,""!==(n=e.charAt(i))&&-1!='"\\/bfnrtu'.indexOf(n)||(t+="\\"),t+=n):t+='"'==n?'\\"':n,i++}return t};var l=o(a);e.exports=a},function(e,t){e.exports=function e(t,i){"use strict";var n,r,o=/(^([+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?)?$|^0x[0-9a-f]+$|\d+)/gi,s=/(^[ ]*|[ ]*$)/g,a=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,l=/^0x[0-9a-f]+$/i,c=/^0/,h=function(t){return e.insensitive&&(""+t).toLowerCase()||""+t},u=h(t).replace(s,"")||"",d=h(i).replace(s,"")||"",f=u.replace(o,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),p=d.replace(o,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),m=parseInt(u.match(l),16)||1!==f.length&&u.match(a)&&Date.parse(u),g=parseInt(d.match(l),16)||m&&d.match(a)&&Date.parse(d)||null;if(g){if(m<g)return-1;if(m>g)return 1}for(var v=0,y=Math.max(f.length,p.length);v<y;v++){if(n=!(f[v]||"").match(c)&&parseFloat(f[v])||f[v]||0,r=!(p[v]||"").match(c)&&parseFloat(p[v])||p[v]||0,isNaN(n)!==isNaN(r))return isNaN(n)?1:-1;if(typeof n!=typeof r&&(n+="",r+=""),n<r)return-1;if(n>r)return 1}return 0}},function(e,t,i){"use strict";var n=i(54),r=i(57);e.exports=function(e){function t(e){this.editor=e,this.dom={}}return t.prototype=new e,t.prototype.getDom=function(){var e=this.dom;if(e.tr)return e.tr;this._updateEditability();var t=document.createElement("tr");if(t.node=this,e.tr=t,"tree"===this.editor.options.mode){e.tdDrag=document.createElement("td");var i=document.createElement("td");e.tdMenu=i;var n=document.createElement("button");n.type="button",n.className="jsoneditor-contextmenu",n.title="Click to open the actions menu (Ctrl+M)",e.menu=n,i.appendChild(e.menu)}var r=document.createElement("td"),o=document.createElement("div");return o.innerHTML="(empty)",o.className="jsoneditor-readonly",r.appendChild(o),e.td=r,e.text=o,this.updateDom(),t},t.prototype.updateDom=function(){var e=this.dom,t=e.td;t&&(t.style.paddingLeft=24*this.getLevel()+26+"px");var i=e.text;i&&(i.innerHTML="(empty "+this.parent.type+")");var n=e.tr;this.isVisible()?e.tr.firstChild||(e.tdDrag&&n.appendChild(e.tdDrag),e.tdMenu&&n.appendChild(e.tdMenu),n.appendChild(t)):e.tr.firstChild&&(e.tdDrag&&n.removeChild(e.tdDrag),e.tdMenu&&n.removeChild(e.tdMenu),n.removeChild(t))},t.prototype.isVisible=function(){return 0==this.parent.childs.length},t.prototype.showContextMenu=function(t,i){var n=this,o=e.TYPE_TITLES,s=[{text:"Append",title:"Append a new field with type 'auto' (Ctrl+Shift+Ins)",submenuTitle:"Select the type of the field to be appended",className:"jsoneditor-insert",click:function(){n._onAppend("","","auto")},submenu:[{text:"Auto",className:"jsoneditor-type-auto",title:o.auto,click:function(){n._onAppend("","","auto")}},{text:"Array",className:"jsoneditor-type-array",title:o.array,click:function(){n._onAppend("",[])}},{text:"Object",className:"jsoneditor-type-object",title:o.object,click:function(){n._onAppend("",{})}},{text:"String",className:"jsoneditor-type-string",title:o.string,click:function(){n._onAppend("","","string")}}]}];new r(s,{close:i}).show(t,this.editor.content)},t.prototype.onEvent=function(e){var t=e.type,i=e.target||e.srcElement,r=this.dom;if(i==r.menu&&("mouseover"==t?this.editor.highlighter.highlight(this.parent):"mouseout"==t&&this.editor.highlighter.unhighlight()),"click"==t&&i==r.menu){var o=this.editor.highlighter;o.highlight(this.parent),o.lock(),n.addClassName(r.menu,"jsoneditor-selected"),this.showContextMenu(r.menu,function(){n.removeClassName(r.menu,"jsoneditor-selected"),o.unlock(),o.unhighlight()})}"keydown"==t&&this.onKeyDown(e)},t}},function(e,t,i){"use strict";var n=i(57);function r(e,t,i,r){for(var o={code:{text:"Code",title:"Switch to code highlighter",click:function(){r("code")}},form:{text:"Form",title:"Switch to form editor",click:function(){r("form")}},text:{text:"Text",title:"Switch to plain text editor",click:function(){r("text")}},tree:{text:"Tree",title:"Switch to tree editor",click:function(){r("tree")}},view:{text:"View",title:"Switch to tree view",click:function(){r("view")}}},s=[],a=0;a<t.length;a++){var l=t[a],c=o[l];if(!c)throw new Error('Unknown mode "'+l+'"');c.className="jsoneditor-type-modes"+(i==l?" jsoneditor-selected":""),s.push(c)}var h=o[i];if(!h)throw new Error('Unknown mode "'+i+'"');var u=h.text,d=document.createElement("button");d.type="button",d.className="jsoneditor-modes jsoneditor-separator",d.innerHTML=u+" ▾",d.title="Switch editor mode",d.onclick=function(){new n(s).show(d)};var f=document.createElement("div");f.className="jsoneditor-modes",f.style.position="relative",f.appendChild(d),e.appendChild(f),this.dom={container:e,box:d,frame:f}}r.prototype.focus=function(){this.dom.box.focus()},r.prototype.destroy=function(){this.dom&&this.dom.frame&&this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame),this.dom=null},e.exports=r},function(e,t,i){"use strict";var n;try{n=i(63)}catch(e){}var r=i(61),o=i(54),s={};s.create=function(e,t){t=t||{},this.options=t,t.indentation?this.indentation=Number(t.indentation):this.indentation=2;var s=t.ace?t.ace:n;this.mode="code"==t.mode?"code":"text","code"==this.mode&&void 0===s&&(this.mode="text",console.warn("Failed to load Ace editor, falling back to plain text mode. Please use a JSONEditor bundle including Ace, or pass Ace as via the configuration option `ace`.")),this.theme=t.theme||"ace/theme/jsoneditor","ace/theme/jsoneditor"===this.theme&&window.ace&&i(70);var a=this;this.container=e,this.dom={},this.aceEditor=void 0,this.textarea=void 0,this.validateSchema=null,this._debouncedValidate=o.debounce(this.validate.bind(this),this.DEBOUNCE_INTERVAL),this.width=e.clientWidth,this.height=e.clientHeight,this.frame=document.createElement("div"),this.frame.className="jsoneditor jsoneditor-mode-"+this.options.mode,this.frame.onclick=function(e){e.preventDefault()},this.frame.onkeydown=function(e){a._onKeyDown(e)},this.menu=document.createElement("div"),this.menu.className="jsoneditor-menu",this.frame.appendChild(this.menu);var l=document.createElement("button");l.type="button",l.className="jsoneditor-format",l.title="Format JSON data, with proper indentation and line feeds (Ctrl+\\)",this.menu.appendChild(l),l.onclick=function(){try{a.format(),a._onChange()}catch(e){a._onError(e)}};var c=document.createElement("button");if(c.type="button",c.className="jsoneditor-compact",c.title="Compact JSON data, remove all whitespaces (Ctrl+Shift+\\)",this.menu.appendChild(c),c.onclick=function(){try{a.compact(),a._onChange()}catch(e){a._onError(e)}},this.options&&this.options.modes&&this.options.modes.length&&(this.modeSwitcher=new r(this.menu,this.options.modes,this.options.mode,function(e){a.setMode(e),a.modeSwitcher.focus()})),this.content=document.createElement("div"),this.content.className="jsoneditor-outer",this.frame.appendChild(this.content),this.container.appendChild(this.frame),"code"==this.mode){this.editorDom=document.createElement("div"),this.editorDom.style.height="100%",this.editorDom.style.width="100%",this.content.appendChild(this.editorDom);var h=s.edit(this.editorDom);h.$blockScrolling=1/0,h.setTheme(this.theme),h.setShowPrintMargin(!1),h.setFontSize(13),h.getSession().setMode("ace/mode/json"),h.getSession().setTabSize(this.indentation),h.getSession().setUseSoftTabs(!0),h.getSession().setUseWrapMode(!0),h.commands.bindKey("Ctrl-L",null),h.commands.bindKey("Command-L",null),this.aceEditor=h,this.hasOwnProperty("editor")||Object.defineProperty(this,"editor",{get:function(){return console.warn('Property "editor" has been renamed to "aceEditor".'),a.aceEditor},set:function(e){console.warn('Property "editor" has been renamed to "aceEditor".'),a.aceEditor=e}});var u=document.createElement("a");u.appendChild(document.createTextNode("powered by ace")),u.href="http://ace.ajax.org",u.target="_blank",u.className="jsoneditor-poweredBy",u.onclick=function(){window.open(u.href,u.target)},this.menu.appendChild(u),h.on("change",this._onChange.bind(this))}else{var d=document.createElement("textarea");d.className="jsoneditor-text",d.spellcheck=!1,this.content.appendChild(d),this.textarea=d,null===this.textarea.oninput?this.textarea.oninput=this._onChange.bind(this):this.textarea.onchange=this._onChange.bind(this)}this.setSchema(this.options.schema)},s._onChange=function(){if(this._debouncedValidate(),this.options.onChange)try{this.options.onChange()}catch(e){console.error("Error in onChange callback: ",e)}},s._onKeyDown=function(e){var t=!1;220==(e.which||e.keyCode)&&e.ctrlKey&&(e.shiftKey?(this.compact(),this._onChange()):(this.format(),this._onChange()),t=!0),t&&(e.preventDefault(),e.stopPropagation())},s.destroy=function(){this.aceEditor&&(this.aceEditor.destroy(),this.aceEditor=null),this.frame&&this.container&&this.frame.parentNode==this.container&&this.container.removeChild(this.frame),this.modeSwitcher&&(this.modeSwitcher.destroy(),this.modeSwitcher=null),this.textarea=null,this._debouncedValidate=null},s.compact=function(){var e=this.get(),t=JSON.stringify(e);this.setText(t)},s.format=function(){var e=this.get(),t=JSON.stringify(e,null,this.indentation);this.setText(t)},s.focus=function(){this.textarea&&this.textarea.focus(),this.aceEditor&&this.aceEditor.focus()},s.resize=function(){if(this.aceEditor){this.aceEditor.resize(!1)}},s.set=function(e){this.setText(JSON.stringify(e,null,this.indentation))},s.get=function(){var e,t=this.getText();try{e=o.parse(t)}catch(i){t=o.sanitize(t),e=o.parse(t)}return e},s.getText=function(){return this.textarea?this.textarea.value:this.aceEditor?this.aceEditor.getValue():""},s.setText=function(e){var t;if(t=!0===this.options.escapeUnicode?o.escapeUnicodeChars(e):e,this.textarea&&(this.textarea.value=t),this.aceEditor){var i=this.options.onChange;this.options.onChange=null,this.aceEditor.setValue(t,-1),this.options.onChange=i}this.validate()},s.validate=function(){this.dom.validationErrors&&(this.dom.validationErrors.parentNode.removeChild(this.dom.validationErrors),this.dom.validationErrors=null,this.content.style.marginBottom="",this.content.style.paddingBottom="");var e,t=!1,i=[];try{e=this.get(),t=!0}catch(e){}t&&this.validateSchema&&(this.validateSchema(e)||(i=this.validateSchema.errors.map(function(e){return o.improveSchemaError(e)})));if(i.length>0){if(i.length>3){i=i.slice(0,3);var n=this.validateSchema.errors.length-3;i.push("("+n+" more errors...)")}var r=document.createElement("div");r.innerHTML='<table class="jsoneditor-text-errors"><tbody>'+i.map(function(e){return'<tr><td><button class="jsoneditor-schema-error"></button></td>'+("string"==typeof e?'<td colspan="2"><pre>'+e+"</pre></td>":"<td>"+e.dataPath+"</td><td>"+e.message+"</td>")+"</tr>"}).join("")+"</tbody></table>",this.dom.validationErrors=r,this.frame.appendChild(r);var s=r.clientHeight;this.content.style.marginBottom=-s+"px",this.content.style.paddingBottom=s+"px"}if(this.aceEditor){this.aceEditor.resize(!1)}},e.exports=[{mode:"text",mixin:s,data:"text",load:s.format},{mode:"code",mixin:s,data:"text",load:s.format}]},function(e,t,i){var n=i(64);i(67),i(69),e.exports=n},function(e,t,i){!function(){var e=function(){return this}();e||"undefined"==typeof window||(e=window);var t=function(e,i,n){"string"==typeof e?(2==arguments.length&&(n=i),t.modules[e]||(t.payloads[e]=n,t.modules[e]=null)):t.original?t.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace())};t.modules={},t.payloads={};var i=function(e,t,i){if("string"==typeof t){var r=o(e,t);if(void 0!=r)return i&&i(),r}else if("[object Array]"===Object.prototype.toString.call(t)){for(var s=[],a=0,l=t.length;a<l;++a){var c=o(e,t[a]);if(void 0==c&&n.original)return;s.push(c)}return i&&i.apply(null,s)||!0}},n=function(e,t){var r=i("",e,t);return void 0==r&&n.original?n.original.apply(this,arguments):r},r=function(e,t){if(-1!==t.indexOf("!")){var i=t.split("!");return r(e,i[0])+"!"+r(e,i[1])}if("."==t.charAt(0))for(t=e.split("/").slice(0,-1).join("/")+"/"+t;-1!==t.indexOf(".")&&n!=t;){var n=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}return t},o=function(e,n){n=r(e,n);var o=t.modules[n];if(!o){if("function"==typeof(o=t.payloads[n])){var s={},a={id:n,uri:"",exports:s,packaged:!0};s=o(function(e,t){return i(n,e,t)},s,a)||a.exports,t.modules[n]=s,delete t.payloads[n]}o=t.modules[n]=s||o}return o};!function(i){var r=e;i&&(e[i]||(e[i]={}),r=e[i]),r.define&&r.define.packaged||(t.original=r.define,r.define=t,r.define.packaged=!0),r.acequire&&r.acequire.packaged||(n.original=r.acequire,r.acequire=n,r.acequire.packaged=!0)}("ace")}(),ace.define("ace/lib/regexp",["require","exports","module"],function(e,t,i){"use strict";var n={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},r=void 0===n.exec.call(/()??/,"")[1],o=function(){var e=/^/g;return n.test.call(e,""),!e.lastIndex}();o&&r||(RegExp.prototype.exec=function(e){var t,i,s=n.exec.apply(this,arguments);if("string"==typeof e&&s){if(!r&&s.length>1&&function(e,t,i){if(Array.prototype.indexOf)return e.indexOf(t,i);for(var n=i||0;n<e.length;n++)if(e[n]===t)return n;return-1}(s,"")>-1&&(i=RegExp(this.source,n.replace.call(function(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}(this),"g","")),n.replace.call(e.slice(s.index),i,function(){for(var e=1;e<arguments.length-2;e++)void 0===arguments[e]&&(s[e]=void 0)})),this._xregexp&&this._xregexp.captureNames)for(var a=1;a<s.length;a++)(t=this._xregexp.captureNames[a-1])&&(s[t]=s[a]);!o&&this.global&&!s[0].length&&this.lastIndex>s.index&&this.lastIndex--}return s},o||(RegExp.prototype.test=function(e){var t=n.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t}))}),ace.define("ace/lib/es5-shim",["require","exports","module"],function(e,t,i){function n(){}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if("function"!=typeof t)throw new TypeError("Function.prototype.bind called on incompatible "+t);var i=d.call(arguments,1),r=function(){if(this instanceof r){var n=t.apply(this,i.concat(d.call(arguments)));return Object(n)===n?n:this}return t.apply(e,i.concat(d.call(arguments)))};return t.prototype&&(n.prototype=t.prototype,r.prototype=new n,n.prototype=null),r});var r,o,s,a,l,c=Function.prototype.call,h=Array.prototype,u=Object.prototype,d=h.slice,f=c.bind(u.toString),p=c.bind(u.hasOwnProperty);if((l=p(u,"__defineGetter__"))&&(r=c.bind(u.__defineGetter__),o=c.bind(u.__defineSetter__),s=c.bind(u.__lookupGetter__),a=c.bind(u.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t,i=[];if(i.splice.apply(i,e(20)),i.splice.apply(i,e(26)),t=i.length,i.splice(5,0,"XXX"),i.length,t+1==i.length)return!0}()){var m=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?m.apply(this,[void 0===e?0:e,void 0===t?this.length-e:t].concat(d.call(arguments,2))):[]}}else Array.prototype.splice=function(e,t){var i=this.length;e>0?e>i&&(e=i):void 0==e?e=0:e<0&&(e=Math.max(i+e,0)),e+t<i||(t=i-e);var n=this.slice(e,e+t),r=d.call(arguments,2),o=r.length;if(e===i)o&&this.push.apply(this,r);else{var s=Math.min(t,i-e),a=e+s,l=a+o-s,c=i-a,h=i-s;if(l<a)for(var u=0;u<c;++u)this[l+u]=this[a+u];else if(l>a)for(u=c;u--;)this[l+u]=this[a+u];if(o&&e===h)this.length=h,this.push.apply(this,r);else for(this.length=h+o,u=0;u<o;++u)this[e+u]=r[u]}return n};Array.isArray||(Array.isArray=function(e){return"[object Array]"==f(e)});var g,v=Object("a"),y="a"!=v[0]||!(0 in v);if(Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=arguments[1],r=-1,o=i.length>>>0;if("[object Function]"!=f(e))throw new TypeError;for(;++r<o;)r in i&&e.call(n,i[r],r,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=i.length>>>0,r=Array(n),o=arguments[1];if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");for(var s=0;s<n;s++)s in i&&(r[s]=e.call(o,i[s],s,t));return r}),Array.prototype.filter||(Array.prototype.filter=function(e){var t,i=L(this),n=y&&"[object String]"==f(this)?this.split(""):i,r=n.length>>>0,o=[],s=arguments[1];if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");for(var a=0;a<r;a++)a in n&&(t=n[a],e.call(s,t,a,i)&&o.push(t));return o}),Array.prototype.every||(Array.prototype.every=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=i.length>>>0,r=arguments[1];if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");for(var o=0;o<n;o++)if(o in i&&!e.call(r,i[o],o,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=i.length>>>0,r=arguments[1];if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");for(var o=0;o<n;o++)if(o in i&&e.call(r,i[o],o,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=i.length>>>0;if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");if(!n&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var r,o=0;if(arguments.length>=2)r=arguments[1];else for(;;){if(o in i){r=i[o++];break}if(++o>=n)throw new TypeError("reduce of empty array with no initial value")}for(;o<n;o++)o in i&&(r=e.call(void 0,r,i[o],o,t));return r}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=i.length>>>0;if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");if(!n&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var r,o=n-1;if(arguments.length>=2)r=arguments[1];else for(;;){if(o in i){r=i[o--];break}if(--o<0)throw new TypeError("reduceRight of empty array with no initial value")}do{o in this&&(r=e.call(void 0,r,i[o],o,t))}while(o--);return r}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(e){var t=y&&"[object String]"==f(this)?this.split(""):L(this),i=t.length>>>0;if(!i)return-1;var n=0;for(arguments.length>1&&(n=$(arguments[1])),n=n>=0?n:Math.max(0,i+n);n<i;n++)if(n in t&&t[n]===e)return n;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(e){var t=y&&"[object String]"==f(this)?this.split(""):L(this),i=t.length>>>0;if(!i)return-1;var n=i-1;for(arguments.length>1&&(n=Math.min(n,$(arguments[1]))),n=n>=0?n:i-Math.abs(n);n>=0;n--)if(n in t&&e===t[n])return n;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:u)}),!Object.getOwnPropertyDescriptor){Object.getOwnPropertyDescriptor=function(e,t){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError("Object.getOwnPropertyDescriptor called on a non-object: "+e);if(p(e,t)){var i;if(i={enumerable:!0,configurable:!0},l){var n=e.__proto__;e.__proto__=u;var r=s(e,t),o=a(e,t);if(e.__proto__=n,r||o)return r&&(i.get=r),o&&(i.set=o),i}return i.value=e[t],i}}}(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)}),Object.create)||(g=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var i;if(null===e)i=g();else{if("object"!=typeof e)throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var n=function(){};n.prototype=e,(i=new n).__proto__=e}return void 0!==t&&Object.defineProperties(i,t),i});function w(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(e){}}if(Object.defineProperty){var b=w({}),C="undefined"==typeof document||w(document.createElement("div"));if(!b||!C)var A=Object.defineProperty}if(!Object.defineProperty||A){Object.defineProperty=function(e,t,i){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError("Object.defineProperty called on non-object: "+e);if("object"!=typeof i&&"function"!=typeof i||null===i)throw new TypeError("Property description must be an object: "+i);if(A)try{return A.call(Object,e,t,i)}catch(e){}if(p(i,"value"))if(l&&(s(e,t)||a(e,t))){var n=e.__proto__;e.__proto__=u,delete e[t],e[t]=i.value,e.__proto__=n}else e[t]=i.value;else{if(!l)throw new TypeError("getters & setters can not be defined on this javascript engine");p(i,"get")&&r(e,t,i.get),p(i,"set")&&o(e,t,i.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var i in t)p(t,i)&&Object.defineProperty(e,i,t[i]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(e){Object.freeze=function(e){return function(t){return"function"==typeof t?t:e(t)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;for(var t="";p(e,t);)t+="?";e[t]=!0;var i=p(e,t);return delete e[t],i}),!Object.keys){var E=!0,x=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],F=x.length;for(var S in{toString:null})E=!1;Object.keys=function(e){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError("Object.keys called on a non-object");var t=[];for(var i in e)p(e,i)&&t.push(i);if(E)for(var n=0,r=F;n<r;n++){var o=x[n];p(e,o)&&t.push(o)}return t}}Date.now||(Date.now=function(){return(new Date).getTime()});var k="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff";if(!String.prototype.trim||k.trim()){k="["+k+"]";var _=new RegExp("^"+k+k+"*"),D=new RegExp(k+k+"*$");String.prototype.trim=function(){return String(this).replace(_,"").replace(D,"")}}function $(e){return(e=+e)!=e?e=0:0!==e&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}var L=function(e){if(null==e)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),ace.define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,i){"use strict";e("./regexp"),e("./es5-shim")}),ace.define("ace/lib/dom",["require","exports","module"],function(e,t,i){"use strict";t.getDocumentHead=function(e){return e||(e=document),e.head||e.getElementsByTagName("head")[0]||e.documentElement},t.createElement=function(e,t){return document.createElementNS?document.createElementNS(t||"http://www.w3.org/1999/xhtml",e):document.createElement(e)},t.hasCssClass=function(e,t){return-1!==(e.className||"").split(/\s+/g).indexOf(t)},t.addCssClass=function(e,i){t.hasCssClass(e,i)||(e.className+=" "+i)},t.removeCssClass=function(e,t){for(var i=e.className.split(/\s+/g);;){var n=i.indexOf(t);if(-1==n)break;i.splice(n,1)}e.className=i.join(" ")},t.toggleCssClass=function(e,t){for(var i=e.className.split(/\s+/g),n=!0;;){var r=i.indexOf(t);if(-1==r)break;n=!1,i.splice(r,1)}return n&&i.push(t),e.className=i.join(" "),n},t.setCssClass=function(e,i,n){n?t.addCssClass(e,i):t.removeCssClass(e,i)},t.hasCssString=function(e,t){var i,n=0;if((t=t||document).createStyleSheet&&(i=t.styleSheets)){for(;n<i.length;)if(i[n++].owningElement.id===e)return!0}else if(i=t.getElementsByTagName("style"))for(;n<i.length;)if(i[n++].id===e)return!0;return!1},t.importCssString=function(e,i,n){if(n=n||document,i&&t.hasCssString(i,n))return null;var r;i&&(e+="\n/*# sourceURL=ace/css/"+i+" */"),n.createStyleSheet?((r=n.createStyleSheet()).cssText=e,i&&(r.owningElement.id=i)):((r=t.createElement("style")).appendChild(n.createTextNode(e)),i&&(r.id=i),t.getDocumentHead(n).appendChild(r))},t.importCssStylsheet=function(e,i){if(i.createStyleSheet)i.createStyleSheet(e);else{var n=t.createElement("link");n.rel="stylesheet",n.href=e,t.getDocumentHead(i).appendChild(n)}},t.getInnerWidth=function(e){return parseInt(t.computedStyle(e,"paddingLeft"),10)+parseInt(t.computedStyle(e,"paddingRight"),10)+e.clientWidth},t.getInnerHeight=function(e){return parseInt(t.computedStyle(e,"paddingTop"),10)+parseInt(t.computedStyle(e,"paddingBottom"),10)+e.clientHeight},t.scrollbarWidth=function(e){var i=t.createElement("ace_inner");i.style.width="100%",i.style.minWidth="0px",i.style.height="200px",i.style.display="block";var n=t.createElement("ace_outer"),r=n.style;r.position="absolute",r.left="-10000px",r.overflow="hidden",r.width="200px",r.minWidth="0px",r.height="150px",r.display="block",n.appendChild(i);var o=e.documentElement;o.appendChild(n);var s=i.offsetWidth;r.overflow="scroll";var a=i.offsetWidth;return s==a&&(a=n.clientWidth),o.removeChild(n),s-a},"undefined"!=typeof document?(void 0!==window.pageYOffset?(t.getPageScrollTop=function(){return window.pageYOffset},t.getPageScrollLeft=function(){return window.pageXOffset}):(t.getPageScrollTop=function(){return document.body.scrollTop},t.getPageScrollLeft=function(){return document.body.scrollLeft}),window.getComputedStyle?t.computedStyle=function(e,t){return t?(window.getComputedStyle(e,"")||{})[t]||"":window.getComputedStyle(e,"")||{}}:t.computedStyle=function(e,t){return t?e.currentStyle[t]:e.currentStyle},t.setInnerHtml=function(e,t){var i=e.cloneNode(!1);return i.innerHTML=t,e.parentNode.replaceChild(i,e),i},"textContent"in document.documentElement?(t.setInnerText=function(e,t){e.textContent=t},t.getInnerText=function(e){return e.textContent}):(t.setInnerText=function(e,t){e.innerText=t},t.getInnerText=function(e){return e.innerText}),t.getParentWindow=function(e){return e.defaultView||e.parentWindow}):t.importCssString=function(){}}),ace.define("ace/lib/oop",["require","exports","module"],function(e,t,i){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var i in t)e[i]=t[i];return e},t.implement=function(e,i){t.mixin(e,i)}}),ace.define("ace/lib/keys",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop"],function(e,t,i){"use strict";e("./fixoldbrowsers");var n=e("./oop"),r=function(){var e,t,i={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,super:8,meta:8,command:8,cmd:8},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",111:"/",106:"*"}};for(t in i.FUNCTION_KEYS)e=i.FUNCTION_KEYS[t].toLowerCase(),i[e]=parseInt(t,10);for(t in i.PRINTABLE_KEYS)e=i.PRINTABLE_KEYS[t].toLowerCase(),i[e]=parseInt(t,10);return n.mixin(i,i.MODIFIER_KEYS),n.mixin(i,i.PRINTABLE_KEYS),n.mixin(i,i.FUNCTION_KEYS),i.enter=i.return,i.escape=i.esc,i.del=i.delete,i[173]="-",function(){for(var e=["cmd","ctrl","alt","shift"],t=Math.pow(2,e.length);t--;)i.KEY_MODS[t]=e.filter(function(e){return t&i.KEY_MODS[e]}).join("-")+"-"}(),i.KEY_MODS[0]="",i.KEY_MODS[-1]="input-",i}();n.mixin(t,r),t.keyCodeToString=function(e){var t=r[e];return"string"!=typeof t&&(t=String.fromCharCode(e)),t.toLowerCase()}}),ace.define("ace/lib/useragent",["require","exports","module"],function(e,t,i){"use strict";if(t.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},t.getOS=function(){return t.isMac?t.OS.MAC:t.isLinux?t.OS.LINUX:t.OS.WINDOWS},"object"==typeof navigator){var n=(navigator.platform.match(/mac|win|linux/i)||["other"])[0].toLowerCase(),r=navigator.userAgent;t.isWin="win"==n,t.isMac="mac"==n,t.isLinux="linux"==n,t.isIE="Microsoft Internet Explorer"==navigator.appName||navigator.appName.indexOf("MSAppHost")>=0?parseFloat((r.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((r.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),t.isOldIE=t.isIE&&t.isIE<9,t.isGecko=t.isMozilla=(window.Controllers||window.controllers)&&"Gecko"===window.navigator.product,t.isOldGecko=t.isGecko&&parseInt((r.match(/rv\:(\d+)/)||[])[1],10)<4,t.isOpera=window.opera&&"[object Opera]"==Object.prototype.toString.call(window.opera),t.isWebKit=parseFloat(r.split("WebKit/")[1])||void 0,t.isChrome=parseFloat(r.split(" Chrome/")[1])||void 0,t.isAIR=r.indexOf("AdobeAIR")>=0,t.isIPad=r.indexOf("iPad")>=0,t.isTouchPad=r.indexOf("TouchPad")>=0,t.isChromeOS=r.indexOf(" CrOS ")>=0}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,i){"use strict";var n=e("./keys"),r=e("./useragent"),o=null,s=0;t.addListener=function(e,t,i){if(e.addEventListener)return e.addEventListener(t,i,!1);if(e.attachEvent){var n=function(){i.call(e,window.event)};i._wrapper=n,e.attachEvent("on"+t,n)}},t.removeListener=function(e,t,i){if(e.removeEventListener)return e.removeEventListener(t,i,!1);e.detachEvent&&e.detachEvent("on"+t,i._wrapper||i)},t.stopEvent=function(e){return t.stopPropagation(e),t.preventDefault(e),!1},t.stopPropagation=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0},t.preventDefault=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1},t.getButton=function(e){return"dblclick"==e.type?0:"contextmenu"==e.type||r.isMac&&e.ctrlKey&&!e.altKey&&!e.shiftKey?2:e.preventDefault?e.button:{1:0,2:2,4:1}[e.button]},t.capture=function(e,i,n){function r(e){i&&i(e),n&&n(e),t.removeListener(document,"mousemove",i,!0),t.removeListener(document,"mouseup",r,!0),t.removeListener(document,"dragstart",r,!0)}return t.addListener(document,"mousemove",i,!0),t.addListener(document,"mouseup",r,!0),t.addListener(document,"dragstart",r,!0),r},t.addTouchMoveListener=function(e,i){var n,r;"ontouchmove"in e&&(t.addListener(e,"touchstart",function(e){var t=e.changedTouches[0];n=t.clientX,r=t.clientY}),t.addListener(e,"touchmove",function(e){var t=e.changedTouches[0];e.wheelX=-(t.clientX-n)/1,e.wheelY=-(t.clientY-r)/1,n=t.clientX,r=t.clientY,i(e)}))},t.addMouseWheelListener=function(e,i){"onmousewheel"in e?t.addListener(e,"mousewheel",function(e){void 0!==e.wheelDeltaX?(e.wheelX=-e.wheelDeltaX/8,e.wheelY=-e.wheelDeltaY/8):(e.wheelX=0,e.wheelY=-e.wheelDelta/8),i(e)}):"onwheel"in e?t.addListener(e,"wheel",function(e){switch(e.deltaMode){case e.DOM_DELTA_PIXEL:e.wheelX=.35*e.deltaX||0,e.wheelY=.35*e.deltaY||0;break;case e.DOM_DELTA_LINE:case e.DOM_DELTA_PAGE:e.wheelX=5*(e.deltaX||0),e.wheelY=5*(e.deltaY||0)}i(e)}):t.addListener(e,"DOMMouseScroll",function(e){e.axis&&e.axis==e.HORIZONTAL_AXIS?(e.wheelX=5*(e.detail||0),e.wheelY=0):(e.wheelX=0,e.wheelY=5*(e.detail||0)),i(e)})},t.addMultiMouseDownListener=function(e,i,n,o){var s,a,l,c=0,h={2:"dblclick",3:"tripleclick",4:"quadclick"};function u(e){if(0!==t.getButton(e)?c=0:e.detail>1?++c>4&&(c=1):c=1,r.isIE){var u=Math.abs(e.clientX-s)>5||Math.abs(e.clientY-a)>5;l&&!u||(c=1),l&&clearTimeout(l),l=setTimeout(function(){l=null},i[c-1]||600),1==c&&(s=e.clientX,a=e.clientY)}if(e._clicks=c,n[o]("mousedown",e),c>4)c=0;else if(c>1)return n[o](h[c],e)}function d(e){c=2,l&&clearTimeout(l),l=setTimeout(function(){l=null},i[c-1]||600),n[o]("mousedown",e),n[o](h[c],e)}Array.isArray(e)||(e=[e]),e.forEach(function(e){t.addListener(e,"mousedown",u),r.isOldIE&&t.addListener(e,"dblclick",d)})};var a=!r.isMac||!r.isOpera||"KeyboardEvent"in window?function(e){return 0|(e.ctrlKey?1:0)|(e.altKey?2:0)|(e.shiftKey?4:0)|(e.metaKey?8:0)}:function(e){return 0|(e.metaKey?1:0)|(e.altKey?2:0)|(e.shiftKey?4:0)|(e.ctrlKey?8:0)};function l(e,t,i){var l=a(t);if(!r.isMac&&o){if(o.OSKey&&(l|=8),o.altGr){if(3==(3&l))return;o.altGr=0}if(18===i||17===i){var c="location"in t?t.location:t.keyLocation;if(17===i&&1===c)1==o[i]&&(s=t.timeStamp);else if(18===i&&3===l&&2===c){t.timeStamp-s<50&&(o.altGr=!0)}}}if((i in n.MODIFIER_KEYS&&(i=-1),8&l&&i>=91&&i<=93&&(i=-1),!l&&13===i)&&(3===(c="location"in t?t.location:t.keyLocation)&&(e(t,l,-i),t.defaultPrevented)))return;if(r.isChromeOS&&8&l){if(e(t,l,i),t.defaultPrevented)return;l&=-9}return!!(l||i in n.FUNCTION_KEYS||i in n.PRINTABLE_KEYS)&&e(t,l,i)}function c(){(o=Object.create(null)).count=0,o.lastT=0}if(t.getModifierString=function(e){return n.KEY_MODS[a(e)]},t.addCommandKeyListener=function(e,i){var n=t.addListener;if(r.isOldGecko||r.isOpera&&!("KeyboardEvent"in window)){var s=null;n(e,"keydown",function(e){s=e.keyCode}),n(e,"keypress",function(e){return l(i,e,s)})}else{var a=null;n(e,"keydown",function(e){var t=e.keyCode;o[t]=(o[t]||0)+1,91==t||92==t?o.OSKey=!0:o.OSKey&&e.timeStamp-o.lastT>200&&1==o.count&&c(),1==o[t]&&o.count++,o.lastT=e.timeStamp;var n=l(i,e,t);return a=e.defaultPrevented,n}),n(e,"keypress",function(e){a&&(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey)&&(t.stopEvent(e),a=null)}),n(e,"keyup",function(e){var t=e.keyCode;o[t]?o.count=Math.max(o.count-1,0):c(),91!=t&&92!=t||(o.OSKey=!1),o[t]=null}),o||(c(),n(window,"focus",c))}},"object"==typeof window&&window.postMessage&&!r.isOldIE){t.nextTick=function(e,i){i=i||window;t.addListener(i,"message",function n(r){"zero-timeout-message-1"==r.data&&(t.stopPropagation(r),t.removeListener(i,"message",n),e())}),i.postMessage("zero-timeout-message-1","*")}}t.nextFrame="object"==typeof window&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),t.nextFrame?t.nextFrame=t.nextFrame.bind(window):t.nextFrame=function(e){setTimeout(e,17)}}),ace.define("ace/lib/lang",["require","exports","module"],function(e,t,i){"use strict";t.last=function(e){return e[e.length-1]},t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){for(var i="";t>0;)1&t&&(i+=e),(t>>=1)&&(e+=e);return i};var n=/^\s\s*/,r=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(n,"")},t.stringTrimRight=function(e){return e.replace(r,"")},t.copyObject=function(e){var t={};for(var i in e)t[i]=e[i];return t},t.copyArray=function(e){for(var t=[],i=0,n=e.length;i<n;i++)e[i]&&"object"==typeof e[i]?t[i]=this.copyObject(e[i]):t[i]=e[i];return t},t.deepCopy=function e(t){if("object"!=typeof t||!t)return t;var i;if(Array.isArray(t)){i=[];for(var n=0;n<t.length;n++)i[n]=e(t[n]);return i}var r=t.constructor;if(r===RegExp)return t;for(var n in i=r(),t)i[n]=e(t[n]);return i},t.arrayToMap=function(e){for(var t={},i=0;i<e.length;i++)t[e[i]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var i in e)t[i]=e[i];return t},t.arrayRemove=function(e,t){for(var i=0;i<=e.length;i++)t===e[i]&&e.splice(i,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<")},t.getMatchOffsets=function(e,t){var i=[];return e.replace(t,function(e){i.push({offset:arguments[arguments.length-2],length:e.length})}),i},t.deferredCall=function(e){var t=null,i=function(){t=null,e()},n=function(e){return n.cancel(),t=setTimeout(i,e||0),n};return n.schedule=n,n.call=function(){return this.cancel(),e(),n},n.cancel=function(){return clearTimeout(t),t=null,n},n.isPending=function(){return t},n},t.delayedCall=function(e,t){var i=null,n=function(){i=null,e()},r=function(e){null==i&&(i=setTimeout(n,e||t))};return r.delay=function(e){i&&clearTimeout(i),i=setTimeout(n,e||t)},r.schedule=r,r.call=function(){this.cancel(),e()},r.cancel=function(){i&&clearTimeout(i),i=null},r.isPending=function(){return i},r}}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang"],function(e,t,i){"use strict";var n=e("../lib/event"),r=e("../lib/useragent"),o=e("../lib/dom"),s=e("../lib/lang"),a=r.isChrome<18,l=r.isIE;t.TextInput=function(e,t){var i=o.createElement("textarea");i.className="ace_text-input",r.isTouchPad&&i.setAttribute("x-palm-disable-auto-cap",!0),i.setAttribute("wrap","off"),i.setAttribute("autocorrect","off"),i.setAttribute("autocapitalize","off"),i.setAttribute("spellcheck",!1),i.style.opacity="0",r.isOldIE&&(i.style.top="-1000px"),e.insertBefore(i,e.firstChild);var c="",h=!1,u=!1,d=!1,f="",p=!0;try{var m=document.activeElement===i}catch(e){}n.addListener(i,"blur",function(e){t.onBlur(e),m=!1}),n.addListener(i,"focus",function(e){m=!0,t.onFocus(e),y()}),this.focus=function(){if(f)return i.focus();var e=i.style.top;i.style.position="fixed",i.style.top="0px",i.focus(),setTimeout(function(){i.style.position="","0px"==i.style.top&&(i.style.top=e)},0)},this.blur=function(){i.blur()},this.isFocused=function(){return m};var g=s.delayedCall(function(){m&&y(p)}),v=s.delayedCall(function(){d||(i.value=c,m&&y())});function y(e){if(!d){if(d=!0,F)t=0,n=e?0:i.value.length-1;else var t=e?2:1,n=2;try{i.setSelectionRange(t,n)}catch(e){}d=!1}}function w(){d||(i.value=c,r.isWebKit&&v.schedule())}r.isWebKit||t.addEventListener("changeSelection",function(){t.selection.isEmpty()!=p&&(p=!p,g.schedule())}),w(),m&&t.onFocus();var b=function(e){return 0===e.selectionStart&&e.selectionEnd===e.value.length};if(!i.setSelectionRange&&i.createTextRange&&(i.setSelectionRange=function(e,t){var i=this.createTextRange();i.collapse(!0),i.moveStart("character",e),i.moveEnd("character",t),i.select()},b=function(e){try{var t=e.ownerDocument.selection.createRange()}catch(e){}return!(!t||t.parentElement()!=e)&&t.text==e.value}),r.isOldIE){var C=!1,A=function(e){if(!C){var t=i.value;if(!d&&t&&t!=c){if(e&&t==c[0])return E.schedule();k(t),C=!0,w(),C=!1}}},E=s.delayedCall(A);n.addListener(i,"propertychange",A);var x={13:1,27:1};n.addListener(i,"keyup",function(e){if(!d||i.value&&!x[e.keyCode]||setTimeout(O,0),(i.value.charCodeAt(0)||0)<129)return E.call();d?M():T()}),n.addListener(i,"keydown",function(e){E.schedule(50)})}var F=null;this.setInputHandler=function(e){F=e},this.getInputHandler=function(){return F};var S=!1,k=function(e){F&&(e=F(e),F=null),u?(y(),e&&t.onPaste(e),u=!1):e==c.charAt(0)?S?t.execCommand("del",{source:"ace"}):t.execCommand("backspace",{source:"ace"}):(e.substring(0,2)==c?e=e.substr(2):e.charAt(0)==c.charAt(0)?e=e.substr(1):e.charAt(e.length-1)==c.charAt(0)&&(e=e.slice(0,-1)),e.charAt(e.length-1)==c.charAt(0)&&(e=e.slice(0,-1)),e&&t.onTextInput(e)),S&&(S=!1)},_=function(e,t){var i=e.clipboardData||window.clipboardData;if(i&&!a){var n=l?"Text":"text/plain";return t?!1!==i.setData(n,t):i.getData(n)}},D=function(e,r){var o=t.getCopyText();if(!o)return n.preventDefault(e);_(e,o)?(r?t.onCut():t.onCopy(),n.preventDefault(e)):(h=!0,i.value=o,i.select(),setTimeout(function(){h=!1,w(),y(),r?t.onCut():t.onCopy()}))},$=function(e){D(e,!0)},L=function(e){D(e,!1)},B=function(e){var o=_(e);"string"==typeof o?(o&&t.onPaste(o,e),r.isIE&&setTimeout(y),n.preventDefault(e)):(i.value="",u=!0)};n.addCommandKeyListener(i,t.onCommandKey.bind(t)),n.addListener(i,"select",function(e){h?h=!1:b(i)?(t.selectAll(),y()):F&&y(t.selection.isEmpty())}),n.addListener(i,"input",function(e){if(!d){var t=i.value;k(t),w()}}),n.addListener(i,"cut",$),n.addListener(i,"copy",L),n.addListener(i,"paste",B),"oncut"in i&&"oncopy"in i&&"onpaste"in i||n.addListener(e,"keydown",function(e){if((!r.isMac||e.metaKey)&&e.ctrlKey)switch(e.keyCode){case 67:L(e);break;case 86:B(e);break;case 88:$(e)}});var R,T=function(e){d||!t.onCompositionStart||t.$readOnly||(d={},t.onCompositionStart(),setTimeout(M,0),t.on("mousedown",O),t.selection.isEmpty()||(t.insert(""),t.session.markUndoGroup(),t.selection.clearSelection()),t.session.markUndoGroup())},M=function(){if(d&&t.onCompositionUpdate&&!t.$readOnly){var e=i.value.replace(/\x01/g,"");if(d.lastValue!==e&&(t.onCompositionUpdate(e),d.lastValue&&t.undo(),d.lastValue=e,d.lastValue)){var n=t.selection.getRange();t.insert(d.lastValue),t.session.markUndoGroup(),d.range=t.selection.getRange(),t.selection.setRange(n),t.selection.clearSelection()}}},O=function(e){if(t.onCompositionEnd&&!t.$readOnly){var n=d;d=!1;var r=setTimeout(function(){r=null;var e=i.value.replace(/\x01/g,"");d||(e==n.lastValue?w():!n.lastValue&&e&&(w(),k(e)))});F=function(e){return r&&clearTimeout(r),(e=e.replace(/\x01/g,""))==n.lastValue?"":(n.lastValue&&r&&t.undo(),e)},t.onCompositionEnd(),t.removeListener("mousedown",O),"compositionend"==e.type&&n.range&&t.selection.setRange(n.range)}},P=s.delayedCall(M,50);function N(){clearTimeout(R),R=setTimeout(function(){f&&(i.style.cssText=f,f=""),null==t.renderer.$keepTextAreaAtCursor&&(t.renderer.$keepTextAreaAtCursor=!0,t.renderer.$moveTextAreaToCursor())},r.isOldIE?200:0)}n.addListener(i,"compositionstart",T),r.isGecko?n.addListener(i,"text",function(){P.schedule()}):(n.addListener(i,"keyup",function(){P.schedule()}),n.addListener(i,"keydown",function(){P.schedule()})),n.addListener(i,"compositionend",O),this.getElement=function(){return i},this.setReadOnly=function(e){i.readOnly=e},this.onContextMenu=function(e){S=!0,y(t.selection.isEmpty()),t._emit("nativecontextmenu",{target:t,domEvent:e}),this.moveToMouse(e,!0)},this.moveToMouse=function(e,s){if(s||!r.isOldIE){f||(f=i.style.cssText),i.style.cssText=(s?"z-index:100000;":"")+"height:"+i.style.height+";"+(r.isIE?"opacity:0.1;":"");var a=t.container.getBoundingClientRect(),l=o.computedStyle(t.container),c=a.top+(parseInt(l.borderTopWidth)||0),h=a.left+(parseInt(a.borderLeftWidth)||0),u=a.bottom-c-i.clientHeight-2,d=function(e){i.style.left=e.clientX-h-2+"px",i.style.top=Math.min(e.clientY-c-2,u)+"px"};d(e),"mousedown"==e.type&&(t.renderer.$keepTextAreaAtCursor&&(t.renderer.$keepTextAreaAtCursor=null),clearTimeout(R),r.isWin&&!r.isOldIE&&n.capture(t.container,d,N))}},this.onContextMenuClose=N;var I=function(e){t.textInput.onContextMenu(e),N()};n.addListener(i,"mouseup",I),n.addListener(i,"mousedown",function(e){e.preventDefault(),N()}),n.addListener(t.renderer.scroller,"contextmenu",I),n.addListener(i,"contextmenu",I)}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,i){"use strict";e("../lib/dom"),e("../lib/event"),e("../lib/useragent");function n(e){e.$clickSelection=null;var t=e.editor;t.setDefaultHandler("mousedown",this.onMouseDown.bind(e)),t.setDefaultHandler("dblclick",this.onDoubleClick.bind(e)),t.setDefaultHandler("tripleclick",this.onTripleClick.bind(e)),t.setDefaultHandler("quadclick",this.onQuadClick.bind(e)),t.setDefaultHandler("mousewheel",this.onMouseWheel.bind(e)),t.setDefaultHandler("touchmove",this.onTouchMove.bind(e));["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"].forEach(function(t){e[t]=this[t]},this),e.selectByLines=this.extendSelectionBy.bind(e,"getLineRange"),e.selectByWords=this.extendSelectionBy.bind(e,"getWordRange")}function r(e,t){if(e.start.row==e.end.row)var i=2*t.column-e.start.column-e.end.column;else if(e.start.row!=e.end.row-1||e.start.column||e.end.column)i=2*t.row-e.start.row-e.end.row;else var i=t.column-4;return i<0?{cursor:e.start,anchor:e.end}:{cursor:e.end,anchor:e.start}}(function(){this.onMouseDown=function(e){var t=e.inSelection(),i=e.getDocumentPosition();this.mousedownEvent=e;var n=this.editor,r=e.getButton();if(0!==r){var o=n.getSelectionRange().isEmpty();return n.$blockScrolling++,(o||1==r)&&n.selection.moveToPosition(i),n.$blockScrolling--,void(2==r&&n.textInput.onContextMenu(e.domEvent))}return this.mousedownEvent.time=Date.now(),!t||n.isFocused()||(n.focus(),!this.$focusTimout||this.$clickSelection||n.inMultiSelectMode)?(this.captureMouse(e),this.startSelect(i,e.domEvent._clicks>1),e.preventDefault()):(this.setState("focusWait"),void this.captureMouse(e))},this.startSelect=function(e,t){e=e||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var i=this.editor;i.$blockScrolling++,this.mousedownEvent.getShiftKey()?i.selection.selectToPosition(e):t||i.selection.moveToPosition(e),t||this.select(),i.renderer.scroller.setCapture&&i.renderer.scroller.setCapture(),i.setStyle("ace_selecting"),this.setState("select"),i.$blockScrolling--},this.select=function(){var e,t=this.editor,i=t.renderer.screenToTextCoordinates(this.x,this.y);if(t.$blockScrolling++,this.$clickSelection){var n=this.$clickSelection.comparePoint(i);if(-1==n)e=this.$clickSelection.end;else if(1==n)e=this.$clickSelection.start;else{var o=r(this.$clickSelection,i);i=o.cursor,e=o.anchor}t.selection.setSelectionAnchor(e.row,e.column)}t.selection.selectToPosition(i),t.$blockScrolling--,t.renderer.scrollCursorIntoView()},this.extendSelectionBy=function(e){var t,i=this.editor,n=i.renderer.screenToTextCoordinates(this.x,this.y),o=i.selection[e](n.row,n.column);if(i.$blockScrolling++,this.$clickSelection){var s=this.$clickSelection.comparePoint(o.start),a=this.$clickSelection.comparePoint(o.end);if(-1==s&&a<=0)t=this.$clickSelection.end,o.end.row==n.row&&o.end.column==n.column||(n=o.start);else if(1==a&&s>=0)t=this.$clickSelection.start,o.start.row==n.row&&o.start.column==n.column||(n=o.end);else if(-1==s&&1==a)n=o.end,t=o.start;else{var l=r(this.$clickSelection,n);n=l.cursor,t=l.anchor}i.selection.setSelectionAnchor(t.row,t.column)}i.selection.selectToPosition(n),i.$blockScrolling--,i.renderer.scrollCursorIntoView()},this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting"),this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()},this.focusWait=function(){var e=function(e,t,i,n){return Math.sqrt(Math.pow(i-e,2)+Math.pow(n-t,2))}(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(e>0||t-this.mousedownEvent.time>this.$focusTimout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},this.onDoubleClick=function(e){var t=e.getDocumentPosition(),i=this.editor,n=i.session.getBracketRange(t);n?(n.isEmpty()&&(n.start.column--,n.end.column++),this.setState("select")):(n=i.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=n,this.select()},this.onTripleClick=function(e){var t=e.getDocumentPosition(),i=this.editor;this.setState("selectByLines");var n=i.getSelectionRange();n.isMultiLine()&&n.contains(t.row,t.column)?(this.$clickSelection=i.selection.getLineRange(n.start.row),this.$clickSelection.end=i.selection.getLineRange(n.end.row).end):this.$clickSelection=i.selection.getLineRange(t.row),this.select()},this.onQuadClick=function(e){var t=this.editor;t.selectAll(),this.$clickSelection=t.getSelectionRange(),this.setState("selectAll")},this.onMouseWheel=function(e){if(!e.getAccelKey()){e.getShiftKey()&&e.wheelY&&!e.wheelX&&(e.wheelX=e.wheelY,e.wheelY=0);var t=e.domEvent.timeStamp,i=t-(this.$lastScrollTime||0),n=this.editor;return n.renderer.isScrollableBy(e.wheelX*e.speed,e.wheelY*e.speed)||i<200?(this.$lastScrollTime=t,n.renderer.scrollBy(e.wheelX*e.speed,e.wheelY*e.speed),e.stop()):void 0}},this.onTouchMove=function(e){var t=e.domEvent.timeStamp,i=t-(this.$lastScrollTime||0),n=this.editor;if(n.renderer.isScrollableBy(e.wheelX*e.speed,e.wheelY*e.speed)||i<200)return this.$lastScrollTime=t,n.renderer.scrollBy(e.wheelX*e.speed,e.wheelY*e.speed),e.stop()}}).call(n.prototype),t.DefaultHandlers=n}),ace.define("ace/tooltip",["require","exports","module","ace/lib/oop","ace/lib/dom"],function(e,t,i){"use strict";e("./lib/oop");var n=e("./lib/dom");function r(e){this.isOpen=!1,this.$element=null,this.$parentNode=e}(function(){this.$init=function(){return this.$element=n.createElement("div"),this.$element.className="ace_tooltip",this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},this.getElement=function(){return this.$element||this.$init()},this.setText=function(e){n.setInnerText(this.getElement(),e)},this.setHtml=function(e){this.getElement().innerHTML=e},this.setPosition=function(e,t){this.getElement().style.left=e+"px",this.getElement().style.top=t+"px"},this.setClassName=function(e){n.addCssClass(this.getElement(),e)},this.show=function(e,t,i){null!=e&&this.setText(e),null!=t&&null!=i&&this.setPosition(t,i),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},this.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.isOpen=!1)},this.getHeight=function(){return this.getElement().offsetHeight},this.getWidth=function(){return this.getElement().offsetWidth}}).call(r.prototype),t.Tooltip=r}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event","ace/tooltip"],function(e,t,i){"use strict";var n=e("../lib/dom"),r=e("../lib/oop"),o=e("../lib/event"),s=e("../tooltip").Tooltip;function a(e){s.call(this,e)}r.inherits(a,s),function(){this.setPosition=function(e,t){var i=window.innerWidth||document.documentElement.clientWidth,n=window.innerHeight||document.documentElement.clientHeight,r=this.getWidth(),o=this.getHeight();t+=15,(e+=15)+r>i&&(e-=e+r-i),t+o>n&&(t-=20+o),s.prototype.setPosition.call(this,e,t)}}.call(a.prototype),t.GutterHandler=function(e){var t,i,r,s=e.editor,l=s.renderer.$gutterLayer,c=new a(s.container);function h(){t&&(t=clearTimeout(t)),r&&(c.hide(),r=null,s.removeEventListener("mousewheel",h))}function u(e){c.setPosition(e.x,e.y)}e.editor.setDefaultHandler("guttermousedown",function(t){if(s.isFocused()&&0==t.getButton()&&"foldWidgets"!=l.getRegion(t)){var i=t.getDocumentPosition().row,n=s.session.selection;if(t.getShiftKey())n.selectTo(i,0);else{if(2==t.domEvent.detail)return s.selectAll(),t.preventDefault();e.$clickSelection=s.selection.getLineRange(i)}return e.setState("selectByLines"),e.captureMouse(t),t.preventDefault()}}),e.editor.setDefaultHandler("guttermousemove",function(o){var a=o.domEvent.target||o.domEvent.srcElement;if(n.hasCssClass(a,"ace_fold-widget"))return h();r&&e.$tooltipFollowsMouse&&u(o),i=o,t||(t=setTimeout(function(){t=null,i&&!e.isMousePressed?function(){var t=i.getDocumentPosition().row,n=l.$annotations[t];if(!n)return h();if(t==s.session.getLength()){var o=s.renderer.pixelToScreenCoordinates(0,i.y).row,a=i.$pos;if(o>s.session.documentToScreenRow(a.row,a.column))return h()}if(r!=n)if(r=n.text.join("<br/>"),c.setHtml(r),c.show(),s.on("mousewheel",h),e.$tooltipFollowsMouse)u(i);else{var d=i.domEvent.target.getBoundingClientRect(),f=c.getElement().style;f.left=d.right+"px",f.top=d.bottom+"px"}}():h()},50))}),o.addListener(s.renderer.$gutter,"mouseout",function(e){i=null,r&&!t&&(t=setTimeout(function(){t=null,h()},50))}),s.on("changeSession",h)}}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,i){"use strict";var n=e("../lib/event"),r=e("../lib/useragent"),o=t.MouseEvent=function(e,t){this.domEvent=e,this.editor=t,this.x=this.clientX=e.clientX,this.y=this.clientY=e.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1};(function(){this.stopPropagation=function(){n.stopPropagation(this.domEvent),this.propagationStopped=!0},this.preventDefault=function(){n.preventDefault(this.domEvent),this.defaultPrevented=!0},this.stop=function(){this.stopPropagation(),this.preventDefault()},this.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},this.inSelection=function(){if(null!==this.$inSelection)return this.$inSelection;var e=this.editor.getSelectionRange();if(e.isEmpty())this.$inSelection=!1;else{var t=this.getDocumentPosition();this.$inSelection=e.contains(t.row,t.column)}return this.$inSelection},this.getButton=function(){return n.getButton(this.domEvent)},this.getShiftKey=function(){return this.domEvent.shiftKey},this.getAccelKey=r.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(o.prototype)}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,i){"use strict";var n=e("../lib/dom"),r=e("../lib/event"),o=e("../lib/useragent"),s=200,a=200,l=5;function c(e){var t=e.editor,i=n.createElement("img");i.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",o.isOpera&&(i.style.cssText="width:1px;height:1px;position:fixed;top:0;left:0;z-index:2147483647;opacity:0;");["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"].forEach(function(t){e[t]=this[t]},this),t.addEventListener("mousedown",this.onMouseDown.bind(e));var c,u,d,f,p,m,g,v,y,w,b,C=t.container,A=0;function E(){var e=m;(function(e,i){var n=Date.now(),r=!i||e.row!=i.row,o=!i||e.column!=i.column;!w||r||o?(t.$blockScrolling+=1,t.moveCursorToPosition(e),t.$blockScrolling-=1,w=n,b={x:u,y:d}):h(b.x,b.y,u,d)>l?w=null:n-w>=a&&(t.renderer.scrollCursorIntoView(),w=null)})(m=t.renderer.screenToTextCoordinates(u,d),e),function(e,i){var n=Date.now(),r=t.renderer.layerConfig.lineHeight,o=t.renderer.layerConfig.characterWidth,a=t.renderer.scroller.getBoundingClientRect(),l={x:{left:u-a.left,right:a.right-u},y:{top:d-a.top,bottom:a.bottom-d}},c=Math.min(l.x.left,l.x.right),h=Math.min(l.y.top,l.y.bottom),f={row:e.row,column:e.column};c/o<=2&&(f.column+=l.x.left<l.x.right?-3:2),h/r<=1&&(f.row+=l.y.top<l.y.bottom?-1:1);var p=e.row!=f.row,m=e.column!=f.column,g=!i||e.row!=i.row;p||m&&!g?y?n-y>=s&&t.renderer.scrollCursorIntoView(f):y=n:y=null}(m,e)}function x(){p=t.selection.toOrientedRange(),c=t.session.addMarker(p,"ace_selection",t.getSelectionStyle()),t.clearSelection(),t.isFocused()&&t.renderer.$cursorLayer.setBlinking(!1),clearInterval(f),E(),f=setInterval(E,20),A=0,r.addListener(document,"mousemove",k)}function F(){clearInterval(f),t.session.removeMarker(c),c=null,t.$blockScrolling+=1,t.selection.fromOrientedRange(p),t.$blockScrolling-=1,t.isFocused()&&!v&&t.renderer.$cursorLayer.setBlinking(!t.getReadOnly()),p=null,m=null,A=0,y=null,w=null,r.removeListener(document,"mousemove",k)}this.onDragStart=function(e){if(this.cancelDrag||!C.draggable){var n=this;return setTimeout(function(){n.startSelect(),n.captureMouse(e)},0),e.preventDefault()}p=t.getSelectionRange();var r=e.dataTransfer;r.effectAllowed=t.getReadOnly()?"copy":"copyMove",o.isOpera&&(t.container.appendChild(i),i.scrollTop=0),r.setDragImage&&r.setDragImage(i,0,0),o.isOpera&&t.container.removeChild(i),r.clearData(),r.setData("Text",t.session.getTextRange()),v=!0,this.setState("drag")},this.onDragEnd=function(e){if(C.draggable=!1,v=!1,this.setState(null),!t.getReadOnly()){var i=e.dataTransfer.dropEffect;g||"move"!=i||t.session.remove(t.getSelectionRange()),t.renderer.$cursorLayer.setBlinking(!0)}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(e){if(!t.getReadOnly()&&_(e.dataTransfer))return u=e.clientX,d=e.clientY,c||x(),A++,e.dataTransfer.dropEffect=g=D(e),r.preventDefault(e)},this.onDragOver=function(e){if(!t.getReadOnly()&&_(e.dataTransfer))return u=e.clientX,d=e.clientY,c||(x(),A++),null!==S&&(S=null),e.dataTransfer.dropEffect=g=D(e),r.preventDefault(e)},this.onDragLeave=function(e){if(--A<=0&&c)return F(),g=null,r.preventDefault(e)},this.onDrop=function(e){if(m){var i=e.dataTransfer;if(v)switch(g){case"move":p=p.contains(m.row,m.column)?{start:m,end:m}:t.moveText(p,m);break;case"copy":p=t.moveText(p,m,!0)}else{var n=i.getData("Text");p={start:m,end:t.session.insert(m,n)},t.focus(),g=null}return F(),r.preventDefault(e)}},r.addListener(C,"dragstart",this.onDragStart.bind(e)),r.addListener(C,"dragend",this.onDragEnd.bind(e)),r.addListener(C,"dragenter",this.onDragEnter.bind(e)),r.addListener(C,"dragover",this.onDragOver.bind(e)),r.addListener(C,"dragleave",this.onDragLeave.bind(e)),r.addListener(C,"drop",this.onDrop.bind(e));var S=null;function k(){null==S&&(S=setTimeout(function(){null!=S&&c&&F()},20))}function _(e){var t=e.types;return!t||Array.prototype.some.call(t,function(e){return"text/plain"==e||"Text"==e})}function D(e){var t=["copy","copymove","all","uninitialized"],i=o.isMac?e.altKey:e.ctrlKey,n="uninitialized";try{n=e.dataTransfer.effectAllowed.toLowerCase()}catch(e){}var r="none";return i&&t.indexOf(n)>=0?r="copy":["move","copymove","linkmove","all","uninitialized"].indexOf(n)>=0?r="move":t.indexOf(n)>=0&&(r="copy"),r}}function h(e,t,i,n){return Math.sqrt(Math.pow(i-e,2)+Math.pow(n-t,2))}(function(){this.dragWait=function(){Date.now()-this.mousedownEvent.time>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){this.editor.container.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(e){this.editor.renderer.$cursorLayer.setBlinking(!this.editor.getReadOnly()),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var e=this.editor;e.container.draggable=!0,e.renderer.$cursorLayer.setBlinking(!1),e.setStyle("ace_dragging");var t=o.isWin?"default":"move";e.renderer.setCursorStyle(t),this.setState("dragReady")},this.onMouseDrag=function(e){var t=this.editor.container;o.isIE&&"dragReady"==this.state&&(h(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y)>3&&t.dragDrop());"dragWait"===this.state&&(h(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y)>0&&(t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition())))},this.onMouseDown=function(e){if(this.$dragEnabled){this.mousedownEvent=e;var t=this.editor,i=e.inSelection(),n=e.getButton();if(1===(e.domEvent.detail||1)&&0===n&&i){if(e.editor.inMultiSelectMode&&(e.getAccelKey()||e.getShiftKey()))return;this.mousedownEvent.time=Date.now();var r=e.domEvent.target||e.domEvent.srcElement;if("unselectable"in r&&(r.unselectable="on"),t.getDragDelay()){if(o.isWebKit)this.cancelDrag=!0,t.container.draggable=!0;this.setState("dragWait")}else this.startDrag();this.captureMouse(e,this.onMouseDrag.bind(this)),e.defaultPrevented=!0}}}}).call(c.prototype),t.DragdropHandler=c}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,t,i){"use strict";var n=e("./dom");t.get=function(e,t){var i=new XMLHttpRequest;i.open("GET",e,!0),i.onreadystatechange=function(){4===i.readyState&&t(i.responseText)},i.send(null)},t.loadScript=function(e,t){var i=n.getDocumentHead(),r=document.createElement("script");r.src=e,i.appendChild(r),r.onload=r.onreadystatechange=function(e,i){!i&&r.readyState&&"loaded"!=r.readyState&&"complete"!=r.readyState||(r=r.onload=r.onreadystatechange=null,i||t())}},t.qualifyURL=function(e){var t=document.createElement("a");return t.href=e,t.href}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(e,t,i){"use strict";var n={},r=function(){this.propagationStopped=!0},o=function(){this.defaultPrevented=!0};n._emit=n._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var i=this._eventRegistry[e]||[],n=this._defaultHandlers[e];if(i.length||n){"object"==typeof t&&t||(t={}),t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=r),t.preventDefault||(t.preventDefault=o),i=i.slice();for(var s=0;s<i.length&&(i[s](t,this),!t.propagationStopped);s++);return n&&!t.defaultPrevented?n(t,this):void 0}},n._signal=function(e,t){var i=(this._eventRegistry||{})[e];if(i){i=i.slice();for(var n=0;n<i.length;n++)i[n](t,this)}},n.once=function(e,t){var i=this;t&&this.addEventListener(e,function n(){i.removeEventListener(e,n),t.apply(null,arguments)})},n.setDefaultHandler=function(e,t){var i=this._defaultHandlers;if(i||(i=this._defaultHandlers={_disabled_:{}}),i[e]){var n=i[e],r=i._disabled_[e];r||(i._disabled_[e]=r=[]),r.push(n);var o=r.indexOf(t);-1!=o&&r.splice(o,1)}i[e]=t},n.removeDefaultHandler=function(e,t){var i=this._defaultHandlers;if(i){var n=i._disabled_[e];if(i[e]==t){i[e];n&&this.setDefaultHandler(e,n.pop())}else if(n){var r=n.indexOf(t);-1!=r&&n.splice(r,1)}}},n.on=n.addEventListener=function(e,t,i){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];return n||(n=this._eventRegistry[e]=[]),-1==n.indexOf(t)&&n[i?"unshift":"push"](t),t},n.off=n.removeListener=n.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var i=this._eventRegistry[e];if(i){var n=i.indexOf(t);-1!==n&&i.splice(n,1)}},n.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=n}),ace.define("ace/lib/app_config",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,i){"no use strict";var n=e("./oop"),r=e("./event_emitter").EventEmitter,o={setOptions:function(e){Object.keys(e).forEach(function(t){this.setOption(t,e[t])},this)},getOptions:function(e){var t={};return e?Array.isArray(e)||(t=e,e=Object.keys(t)):e=Object.keys(this.$options),e.forEach(function(e){t[e]=this.getOption(e)},this),t},setOption:function(e,t){if(this["$"+e]!==t){var i=this.$options[e];if(!i)return s('misspelled option "'+e+'"');if(i.forwardTo)return this[i.forwardTo]&&this[i.forwardTo].setOption(e,t);i.handlesSet||(this["$"+e]=t),i&&i.set&&i.set.call(this,t)}},getOption:function(e){var t=this.$options[e];return t?t.forwardTo?this[t.forwardTo]&&this[t.forwardTo].getOption(e):t&&t.get?t.get.call(this):this["$"+e]:s('misspelled option "'+e+'"')}};function s(e){"undefined"!=typeof console&&console.warn&&console.warn.apply(console,arguments)}function a(e,t){var i=new Error(e);i.data=t,"object"==typeof console&&console.error&&console.error(i),setTimeout(function(){throw i})}var l=function(){this.$defaultOptions={}};(function(){n.implement(this,r),this.defineOptions=function(e,t,i){return e.$options||(this.$defaultOptions[t]=e.$options={}),Object.keys(i).forEach(function(t){var n=i[t];"string"==typeof n&&(n={forwardTo:n}),n.name||(n.name=t),e.$options[n.name]=n,"initialValue"in n&&(e["$"+n.name]=n.initialValue)}),n.implement(e,o),this},this.resetOptions=function(e){Object.keys(e.$options).forEach(function(t){var i=e.$options[t];"value"in i&&e.setOption(t,i.value)})},this.setDefaultValue=function(e,t,i){var n=this.$defaultOptions[e]||(this.$defaultOptions[e]={});n[t]&&(n.forwardTo?this.setDefaultValue(n.forwardTo,t,i):n[t].value=i)},this.setDefaultValues=function(e,t){Object.keys(t).forEach(function(i){this.setDefaultValue(e,i,t[i])},this)},this.warn=s,this.reportError=a}).call(l.prototype),t.AppConfig=l}),ace.define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/lib/net","ace/lib/app_config"],function(e,t,n){"no use strict";var r=e("./lib/lang"),o=(e("./lib/oop"),e("./lib/net")),s=e("./lib/app_config").AppConfig;n.exports=t=new s;var a=function(){return this||"undefined"!=typeof window&&window}(),l={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{}};function c(r){if(a&&a.document){l.packaged=r||e.packaged||n.packaged||a.define&&i(65).packaged;for(var o={},s="",c=document.currentScript||document._currentScript,u=(c&&c.ownerDocument||document).getElementsByTagName("script"),d=0;d<u.length;d++){var f=u[d],p=f.src||f.getAttribute("src");if(p){for(var m=f.attributes,g=0,v=m.length;g<v;g++){var y=m[g];0===y.name.indexOf("data-ace-")&&(o[h(y.name.replace(/^data-ace-/,""))]=y.value)}var w=p.match(/^(.*)\/ace(\-\w+)?\.js(\?|$)/);w&&(s=w[1])}}for(var b in s&&(o.base=o.base||s,o.packaged=!0),o.basePath=o.base,o.workerPath=o.workerPath||o.base,o.modePath=o.modePath||o.base,o.themePath=o.themePath||o.base,delete o.base,o)void 0!==o[b]&&t.set(b,o[b])}}function h(e){return e.replace(/-(.)/g,function(e,t){return t.toUpperCase()})}t.get=function(e){if(!l.hasOwnProperty(e))throw new Error("Unknown config key: "+e);return l[e]},t.set=function(e,t){if(!l.hasOwnProperty(e))throw new Error("Unknown config key: "+e);l[e]=t},t.all=function(){return r.copyObject(l)},t.moduleUrl=function(e,t){if(l.$moduleUrls[e])return l.$moduleUrls[e];var i=e.split("/"),n="snippets"==(t=t||i[i.length-2]||"")?"/":"-",r=i[i.length-1];if("worker"==t&&"-"==n){var o=new RegExp("^"+t+"[\\-_]|[\\-_]"+t+"$","g");r=r.replace(o,"")}(!r||r==t)&&i.length>1&&(r=i[i.length-2]);var s=l[t+"Path"];return null==s?s=l.basePath:"/"==n&&(t=n=""),s&&"/"!=s.slice(-1)&&(s+="/"),s+t+n+r+this.get("suffix")},t.setModuleUrl=function(e,t){return l.$moduleUrls[e]=t},t.$loading={},t.loadModule=function(i,n){var r,s;Array.isArray(i)&&(s=i[0],i=i[1]);try{r=e(i)}catch(e){}if(r&&!t.$loading[i])return n&&n(r);if(t.$loading[i]||(t.$loading[i]=[]),t.$loading[i].push(n),!(t.$loading[i].length>1)){var a=function(){e([i],function(e){t._emit("load.module",{name:i,module:e});var n=t.$loading[i];t.$loading[i]=null,n.forEach(function(t){t&&t(e)})})};if(!t.get("packaged"))return a();o.loadScript(t.moduleUrl(i,s),a)}},c(!0),t.init=c}),ace.define("ace/mouse/mouse_handler",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/mouse/default_handlers","ace/mouse/default_gutter_handler","ace/mouse/mouse_event","ace/mouse/dragdrop_handler","ace/config"],function(e,t,i){"use strict";var n=e("../lib/event"),r=e("../lib/useragent"),o=e("./default_handlers").DefaultHandlers,s=e("./default_gutter_handler").GutterHandler,a=e("./mouse_event").MouseEvent,l=e("./dragdrop_handler").DragdropHandler,c=e("../config"),h=function(e){var t=this;this.editor=e,new o(this),new s(this),new l(this);var i=function(t){(!document.hasFocus||!document.hasFocus()||!e.isFocused()&&document.activeElement==(e.textInput&&e.textInput.getElement()))&&window.focus(),e.focus()},a=e.renderer.getMouseEventTarget();n.addListener(a,"click",this.onMouseEvent.bind(this,"click")),n.addListener(a,"mousemove",this.onMouseMove.bind(this,"mousemove")),n.addMultiMouseDownListener([a,e.renderer.scrollBarV&&e.renderer.scrollBarV.inner,e.renderer.scrollBarH&&e.renderer.scrollBarH.inner,e.textInput&&e.textInput.getElement()].filter(Boolean),[400,300,250],this,"onMouseEvent"),n.addMouseWheelListener(e.container,this.onMouseWheel.bind(this,"mousewheel")),n.addTouchMoveListener(e.container,this.onTouchMove.bind(this,"touchmove"));var c=e.renderer.$gutter;n.addListener(c,"mousedown",this.onMouseEvent.bind(this,"guttermousedown")),n.addListener(c,"click",this.onMouseEvent.bind(this,"gutterclick")),n.addListener(c,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick")),n.addListener(c,"mousemove",this.onMouseEvent.bind(this,"guttermousemove")),n.addListener(a,"mousedown",i),n.addListener(c,"mousedown",i),r.isIE&&e.renderer.scrollBarV&&(n.addListener(e.renderer.scrollBarV.element,"mousedown",i),n.addListener(e.renderer.scrollBarH.element,"mousedown",i)),e.on("mousemove",function(i){if(!t.state&&!t.$dragDelay&&t.$dragEnabled){var n=e.renderer.screenToTextCoordinates(i.x,i.y),r=e.session.selection.getRange(),o=e.renderer;!r.isEmpty()&&r.insideStart(n.row,n.column)?o.setCursorStyle("default"):o.setCursorStyle("")}})};(function(){this.onMouseEvent=function(e,t){this.editor._emit(e,new a(t,this.editor))},this.onMouseMove=function(e,t){var i=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;i&&i.length&&this.editor._emit(e,new a(t,this.editor))},this.onMouseWheel=function(e,t){var i=new a(t,this.editor);i.speed=2*this.$scrollSpeed,i.wheelX=t.wheelX,i.wheelY=t.wheelY,this.editor._emit(e,i)},this.onTouchMove=function(e,t){var i=new a(t,this.editor);i.speed=1,i.wheelX=t.wheelX,i.wheelY=t.wheelY,this.editor._emit(e,i)},this.setState=function(e){this.state=e},this.captureMouse=function(e,t){this.x=e.x,this.y=e.y,this.isMousePressed=!0;var i=this.editor.renderer;i.$keepTextAreaAtCursor&&(i.$keepTextAreaAtCursor=null);var o=this,s=function(e){if(e){if(r.isWebKit&&!e.which&&o.releaseMouse)return o.releaseMouse();o.x=e.clientX,o.y=e.clientY,t&&t(e),o.mouseEvent=new a(e,o.editor),o.$mouseMoved=!0}},l=function(e){clearInterval(h),c(),o[o.state+"End"]&&o[o.state+"End"](e),o.state="",null==i.$keepTextAreaAtCursor&&(i.$keepTextAreaAtCursor=!0,i.$moveTextAreaToCursor()),o.isMousePressed=!1,o.$onCaptureMouseMove=o.releaseMouse=null,e&&o.onMouseEvent("mouseup",e)},c=function(){o[o.state]&&o[o.state](),o.$mouseMoved=!1};if(r.isOldIE&&"dblclick"==e.domEvent.type)return setTimeout(function(){l(e)});o.$onCaptureMouseMove=s,o.releaseMouse=n.capture(this.editor.container,s,l);var h=setInterval(c,20)},this.releaseMouse=null,this.cancelContextMenu=function(){var e=function(t){t&&t.domEvent&&"contextmenu"!=t.domEvent.type||(this.editor.off("nativecontextmenu",e),t&&t.domEvent&&n.stopEvent(t.domEvent))}.bind(this);setTimeout(e,10),this.editor.on("nativecontextmenu",e)}}).call(h.prototype),c.defineOptions(h.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:r.isMac?150:0},dragEnabled:{initialValue:!0},focusTimout:{initialValue:0},tooltipFollowsMouse:{initialValue:!0}}),t.MouseHandler=h}),ace.define("ace/mouse/fold_handler",["require","exports","module"],function(e,t,i){"use strict";t.FoldHandler=function(e){e.on("click",function(t){var i=t.getDocumentPosition(),n=e.session,r=n.getFoldAt(i.row,i.column,1);r&&(t.getAccelKey()?n.removeFold(r):n.expandFold(r),t.stop())}),e.on("gutterclick",function(t){if("foldWidgets"==e.renderer.$gutterLayer.getRegion(t)){var i=t.getDocumentPosition().row,n=e.session;n.foldWidgets&&n.foldWidgets[i]&&e.session.onFoldWidgetClick(i,t),e.isFocused()||e.focus(),t.stop()}}),e.on("gutterdblclick",function(t){if("foldWidgets"==e.renderer.$gutterLayer.getRegion(t)){var i=t.getDocumentPosition().row,n=e.session,r=n.getParentFoldRangeData(i,!0),o=r.range||r.firstRange;if(o){i=o.start.row;var s=n.getFoldAt(i,n.getLine(i).length,1);s?n.removeFold(s):(n.addFold("...",o),e.renderer.scrollCursorIntoView({row:o.start.row,column:0}))}t.stop()}})}}),ace.define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(e,t,i){"use strict";var n=e("../lib/keys"),r=e("../lib/event"),o=function(e){this.$editor=e,this.$data={editor:e},this.$handlers=[],this.setDefaultHandler(e.commands)};(function(){this.setDefaultHandler=function(e){this.removeKeyboardHandler(this.$defaultHandler),this.$defaultHandler=e,this.addKeyboardHandler(e,0)},this.setKeyboardHandler=function(e){var t=this.$handlers;if(t[t.length-1]!=e){for(;t[t.length-1]&&t[t.length-1]!=this.$defaultHandler;)this.removeKeyboardHandler(t[t.length-1]);this.addKeyboardHandler(e,1)}},this.addKeyboardHandler=function(e,t){if(e){"function"!=typeof e||e.handleKeyboard||(e.handleKeyboard=e);var i=this.$handlers.indexOf(e);-1!=i&&this.$handlers.splice(i,1),void 0==t?this.$handlers.push(e):this.$handlers.splice(t,0,e),-1==i&&e.attach&&e.attach(this.$editor)}},this.removeKeyboardHandler=function(e){var t=this.$handlers.indexOf(e);return-1!=t&&(this.$handlers.splice(t,1),e.detach&&e.detach(this.$editor),!0)},this.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]},this.getStatusText=function(){var e=this.$data,t=e.editor;return this.$handlers.map(function(i){return i.getStatusText&&i.getStatusText(t,e)||""}).filter(Boolean).join(" ")},this.$callKeyboardHandlers=function(e,t,i,n){for(var o,s=!1,a=this.$editor.commands,l=this.$handlers.length;l--&&!((o=this.$handlers[l].handleKeyboard(this.$data,e,t,i,n))&&o.command&&((s="null"==o.command||a.exec(o.command,this.$editor,o.args,n))&&n&&-1!=e&&1!=o.passEvent&&1!=o.command.passEvent&&r.stopEvent(n),s)););return s||-1!=e||(o={command:"insertstring"},s=a.exec("insertstring",this.$editor,t)),s&&this.$editor._signal("keyboardActivity",o),s},this.onCommandKey=function(e,t,i){var r=n.keyCodeToString(i);this.$callKeyboardHandlers(t,r,i,e)},this.onTextInput=function(e){this.$callKeyboardHandlers(-1,e)}}).call(o.prototype),t.KeyBinding=o}),ace.define("ace/range",["require","exports","module"],function(e,t,i){"use strict";var n=function(e,t,i,n){this.start={row:e,column:t},this.end={row:i,column:n}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return 0==this.compare(e,t)},this.compareRange=function(e){var t,i=e.end,n=e.start;return 1==(t=this.compare(i.row,i.column))?1==(t=this.compare(n.row,n.column))?2:0==t?1:0:-1==t?-2:-1==(t=this.compare(n.row,n.column))?-1:1==t?42:0},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return 0==this.comparePoint(e.start)&&0==this.comparePoint(e.end)},this.intersects=function(e){var t=this.compareRange(e);return-1==t||0==t||1==t},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){"object"==typeof e?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){"object"==typeof e?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return 0==this.compare(e,t)&&(!this.isEnd(e,t)&&!this.isStart(e,t))},this.insideStart=function(e,t){return 0==this.compare(e,t)&&!this.isEnd(e,t)},this.insideEnd=function(e,t){return 0==this.compare(e,t)&&!this.isStart(e,t)},this.compare=function(e,t){return this.isMultiLine()||e!==this.start.row?e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0:t<this.start.column?-1:t>this.end.column?1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var i={row:t+1,column:0};else if(this.end.row<e)i={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)r={row:e,column:0};return n.fromPoints(r||this.start,i||this.end)},this.extend=function(e,t){var i=this.compare(e,t);if(0==i)return this;if(-1==i)var r={row:e,column:t};else var o={row:e,column:t};return n.fromPoints(r||this.start,o||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return n.fromPoints(this.start,this.end)},this.collapseRows=function(){return 0==this.end.column?new n(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new n(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),i=e.documentToScreenPosition(this.end);return new n(t.row,t.column,i.row,i.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(n.prototype),n.fromPoints=function(e,t){return new n(e.row,e.column,t.row,t.column)},n.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},n.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=n}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/lang"),o=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,a=function(e){this.session=e,this.doc=e.getDocument(),this.clearSelection(),this.lead=this.selectionLead=this.doc.createAnchor(0,0),this.anchor=this.selectionAnchor=this.doc.createAnchor(0,0);var t=this;this.lead.on("change",function(e){t._emit("changeCursor"),t.$isEmpty||t._emit("changeSelection"),t.$keepDesiredColumnOnChange||e.old.column==e.value.column||(t.$desiredColumn=null)}),this.selectionAnchor.on("change",function(){t.$isEmpty||t._emit("changeSelection")})};(function(){n.implement(this,o),this.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},this.isMultiLine=function(){return!this.isEmpty()&&this.getRange().isMultiLine()},this.getCursor=function(){return this.lead.getPosition()},this.setSelectionAnchor=function(e,t){this.anchor.setPosition(e,t),this.$isEmpty&&(this.$isEmpty=!1,this._emit("changeSelection"))},this.getSelectionAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},this.getSelectionLead=function(){return this.lead.getPosition()},this.shiftSelection=function(e){if(this.$isEmpty)this.moveCursorTo(this.lead.row,this.lead.column+e);else{var t=this.getSelectionAnchor(),i=this.getSelectionLead(),n=this.isBackwards();n&&0===t.column||this.setSelectionAnchor(t.row,t.column+e),(n||0!==i.column)&&this.$moveSelection(function(){this.moveCursorTo(i.row,i.column+e)})}},this.isBackwards=function(){var e=this.anchor,t=this.lead;return e.row>t.row||e.row==t.row&&e.column>t.column},this.getRange=function(){var e=this.anchor,t=this.lead;return this.isEmpty()?s.fromPoints(t,t):this.isBackwards()?s.fromPoints(t,e):s.fromPoints(e,t)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){var e=this.doc.getLength()-1;this.setSelectionAnchor(0,0),this.moveCursorTo(e,this.doc.getLine(e).length)},this.setRange=this.setSelectionRange=function(e,t){t?(this.setSelectionAnchor(e.end.row,e.end.column),this.selectTo(e.start.row,e.start.column)):(this.setSelectionAnchor(e.start.row,e.start.column),this.selectTo(e.end.row,e.end.column)),this.getRange().isEmpty()&&(this.$isEmpty=!0),this.$desiredColumn=null},this.$moveSelection=function(e){var t=this.lead;this.$isEmpty&&this.setSelectionAnchor(t.row,t.column),e.call(this)},this.selectTo=function(e,t){this.$moveSelection(function(){this.moveCursorTo(e,t)})},this.selectToPosition=function(e){this.$moveSelection(function(){this.moveCursorToPosition(e)})},this.moveTo=function(e,t){this.clearSelection(),this.moveCursorTo(e,t)},this.moveToPosition=function(e){this.clearSelection(),this.moveCursorToPosition(e)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(e,t){if(void 0===t){var i=e||this.lead;e=i.row,t=i.column}return this.session.getWordRange(e,t)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var e=this.getCursor(),t=this.session.getAWordRange(e.row,e.column);this.setSelectionRange(t)},this.getLineRange=function(e,t){var i,n="number"==typeof e?e:this.lead.row,r=this.session.getFoldLine(n);return r?(n=r.start.row,i=r.end.row):i=n,!0===t?new s(n,0,i,this.session.getLine(i).length):new s(n,0,i+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.moveCursorLeft=function(){var e,t=this.lead.getPosition();if(e=this.session.getFoldAt(t.row,t.column,-1))this.moveCursorTo(e.start.row,e.start.column);else if(0===t.column)t.row>0&&this.moveCursorTo(t.row-1,this.doc.getLine(t.row-1).length);else{var i=this.session.getTabSize();this.session.isTabStop(t)&&this.doc.getLine(t.row).slice(t.column-i,t.column).split(" ").length-1==i?this.moveCursorBy(0,-i):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var e,t=this.lead.getPosition();if(e=this.session.getFoldAt(t.row,t.column,1))this.moveCursorTo(e.end.row,e.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row<this.doc.getLength()-1&&this.moveCursorTo(this.lead.row+1,0);else{var i=this.session.getTabSize();t=this.lead;this.session.isTabStop(t)&&this.doc.getLine(t.row).slice(t.column,t.column+i).split(" ").length-1==i?this.moveCursorBy(0,i):this.moveCursorBy(0,1)}},this.moveCursorLineStart=function(){var e=this.lead.row,t=this.lead.column,i=this.session.documentToScreenRow(e,t),n=this.session.screenToDocumentPosition(i,0),r=this.session.getDisplayLine(e,null,n.row,n.column).match(/^\s*/);r[0].length==t||this.session.$useEmacsStyleLineStart||(n.column+=r[0].length),this.moveCursorToPosition(n)},this.moveCursorLineEnd=function(){var e=this.lead,t=this.session.getDocumentLastRowColumnPosition(e.row,e.column);if(this.lead.column==t.column){var i=this.session.getLine(t.row);if(t.column==i.length){var n=i.search(/\s+$/);n>0&&(t.column=n)}}this.moveCursorTo(t.row,t.column)},this.moveCursorFileEnd=function(){var e=this.doc.getLength()-1,t=this.doc.getLine(e).length;this.moveCursorTo(e,t)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var e=this.lead.row,t=this.lead.column,i=this.doc.getLine(e),n=i.substring(t);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var r=this.session.getFoldAt(e,t,1);if(r)this.moveCursorTo(r.end.row,r.end.column);else{if(this.session.nonTokenRe.exec(n)&&(t+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,n=i.substring(t)),t>=i.length)return this.moveCursorTo(e,i.length),this.moveCursorRight(),void(e<this.doc.getLength()-1&&this.moveCursorWordRight());this.session.tokenRe.exec(n)&&(t+=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(e,t)}},this.moveCursorLongWordLeft=function(){var e,t=this.lead.row,i=this.lead.column;if(e=this.session.getFoldAt(t,i,-1))this.moveCursorTo(e.start.row,e.start.column);else{var n=this.session.getFoldStringAt(t,i,-1);null==n&&(n=this.doc.getLine(t).substring(0,i));var o=r.stringReverse(n);if(this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0,this.session.nonTokenRe.exec(o)&&(i-=this.session.nonTokenRe.lastIndex,o=o.slice(this.session.nonTokenRe.lastIndex),this.session.nonTokenRe.lastIndex=0),i<=0)return this.moveCursorTo(t,0),this.moveCursorLeft(),void(t>0&&this.moveCursorWordLeft());this.session.tokenRe.exec(o)&&(i-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(t,i)}},this.$shortWordEndIndex=function(e){var t,i=0,n=/\s/,r=this.session.tokenRe;if(r.lastIndex=0,this.session.tokenRe.exec(e))i=this.session.tokenRe.lastIndex;else{for(;(t=e[i])&&n.test(t);)i++;if(i<1)for(r.lastIndex=0;(t=e[i])&&!r.test(t);)if(r.lastIndex=0,i++,n.test(t)){if(i>2){i--;break}for(;(t=e[i])&&n.test(t);)i++;if(i>2)break}}return r.lastIndex=0,i},this.moveCursorShortWordRight=function(){var e=this.lead.row,t=this.lead.column,i=this.doc.getLine(e),n=i.substring(t),r=this.session.getFoldAt(e,t,1);if(r)return this.moveCursorTo(r.end.row,r.end.column);if(t==i.length){var o=this.doc.getLength();do{e++,n=this.doc.getLine(e)}while(e<o&&/^\s*$/.test(n));/^\s+/.test(n)||(n=""),t=0}var s=this.$shortWordEndIndex(n);this.moveCursorTo(e,t+s)},this.moveCursorShortWordLeft=function(){var e,t=this.lead.row,i=this.lead.column;if(e=this.session.getFoldAt(t,i,-1))return this.moveCursorTo(e.start.row,e.start.column);var n=this.session.getLine(t).substring(0,i);if(0===i){do{t--,n=this.doc.getLine(t)}while(t>0&&/^\s*$/.test(n));i=n.length,/\s+$/.test(n)||(n="")}var o=r.stringReverse(n),s=this.$shortWordEndIndex(o);return this.moveCursorTo(t,i-s)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(e,t){var i=this.session.documentToScreenPosition(this.lead.row,this.lead.column);0===t&&(this.$desiredColumn?i.column=this.$desiredColumn:this.$desiredColumn=i.column);var n=this.session.screenToDocumentPosition(i.row+e,i.column);0!==e&&0===t&&n.row===this.lead.row&&n.column===this.lead.column&&this.session.lineWidgets&&this.session.lineWidgets[n.row]&&(n.row>0||e>0)&&n.row++,this.moveCursorTo(n.row,n.column+t,0===t)},this.moveCursorToPosition=function(e){this.moveCursorTo(e.row,e.column)},this.moveCursorTo=function(e,t,i){var n=this.session.getFoldAt(e,t,1);n&&(e=n.start.row,t=n.start.column),this.$keepDesiredColumnOnChange=!0,this.lead.setPosition(e,t),this.$keepDesiredColumnOnChange=!1,i||(this.$desiredColumn=null)},this.moveCursorToScreen=function(e,t,i){var n=this.session.screenToDocumentPosition(e,t);this.moveCursorTo(n.row,n.column,i)},this.detach=function(){this.lead.detach(),this.anchor.detach(),this.session=this.doc=null},this.fromOrientedRange=function(e){this.setSelectionRange(e,e.cursor==e.start),this.$desiredColumn=e.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(e){var t=this.getRange();return e?(e.start.column=t.start.column,e.start.row=t.start.row,e.end.column=t.end.column,e.end.row=t.end.row):e=t,e.cursor=this.isBackwards()?e.start:e.end,e.desiredColumn=this.$desiredColumn,e},this.getRangeOfMovements=function(e){var t=this.getCursor();try{e(this);var i=this.getCursor();return s.fromPoints(t,i)}catch(e){return s.fromPoints(t,t)}finally{this.moveCursorToPosition(t)}},this.toJSON=function(){if(this.rangeCount)var e=this.ranges.map(function(e){var t=e.clone();return t.isBackwards=e.cursor==e.start,t});else(e=this.getRange()).isBackwards=this.isBackwards();return e},this.fromJSON=function(e){if(void 0==e.start){if(this.rangeList){this.toSingleRange(e[0]);for(var t=e.length;t--;){var i=s.fromPoints(e[t].start,e[t].end);e[t].isBackwards&&(i.cursor=i.start),this.addRange(i,!0)}return}e=e[0]}this.rangeList&&this.toSingleRange(e),this.setSelectionRange(e,e.isBackwards)},this.isEqual=function(e){if((e.length||this.rangeCount)&&e.length!=this.rangeCount)return!1;if(!e.length||!this.ranges)return this.getRange().isEqual(e);for(var t=this.ranges.length;t--;)if(!this.ranges[t].isEqual(e[t]))return!1;return!0}}).call(a.prototype),t.Selection=a}),ace.define("ace/tokenizer",["require","exports","module","ace/config"],function(e,t,i){"use strict";var n=e("./config"),r=2e3,o=function(e){for(var t in this.states=e,this.regExps={},this.matchMappings={},this.states){for(var i=this.states[t],n=[],r=0,o=this.matchMappings[t]={defaultToken:"text"},s="g",a=[],l=0;l<i.length;l++){var c=i[l];if(c.defaultToken&&(o.defaultToken=c.defaultToken),c.caseInsensitive&&(s="gi"),null!=c.regex){c.regex instanceof RegExp&&(c.regex=c.regex.toString().slice(1,-1));var h=c.regex,u=new RegExp("(?:("+h+")|(.))").exec("a").length-2;Array.isArray(c.token)?1==c.token.length||1==u?c.token=c.token[0]:u-1!=c.token.length?(this.reportError("number of classes and regexp groups doesn't match",{rule:c,groupCount:u-1}),c.token=c.token[0]):(c.tokenArray=c.token,c.token=null,c.onMatch=this.$arrayTokens):"function"!=typeof c.token||c.onMatch||(c.onMatch=u>1?this.$applyToken:c.token),u>1&&(/\\\d/.test(c.regex)?h=c.regex.replace(/\\([0-9]+)/g,function(e,t){return"\\"+(parseInt(t,10)+r+1)}):(u=1,h=this.removeCapturingGroups(c.regex)),c.splitRegex||"string"==typeof c.token||a.push(c)),o[r]=l,r+=u,n.push(h),c.onMatch||(c.onMatch=null)}}n.length||(o[0]=0,n.push("$")),a.forEach(function(e){e.splitRegex=this.createSplitterRegexp(e.regex,s)},this),this.regExps[t]=new RegExp("("+n.join(")|(")+")|($)",s)}};(function(){this.$setMaxTokenCount=function(e){r=0|e},this.$applyToken=function(e){var t=this.splitRegex.exec(e).slice(1),i=this.token.apply(this,t);if("string"==typeof i)return[{type:i,value:e}];for(var n=[],r=0,o=i.length;r<o;r++)t[r]&&(n[n.length]={type:i[r],value:t[r]});return n},this.$arrayTokens=function(e){if(!e)return[];var t=this.splitRegex.exec(e);if(!t)return"text";for(var i=[],n=this.tokenArray,r=0,o=n.length;r<o;r++)t[r+1]&&(i[i.length]={type:n[r],value:t[r+1]});return i},this.removeCapturingGroups=function(e){return e.replace(/\[(?:\\.|[^\]])*?\]|\\.|\(\?[:=!]|(\()/g,function(e,t){return t?"(?:":e})},this.createSplitterRegexp=function(e,t){if(-1!=e.indexOf("(?=")){var i=0,n=!1,r={};e.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(e,t,o,s,a,l){return n?n="]"!=a:a?n=!0:s?(i==r.stack&&(r.end=l+1,r.stack=-1),i--):o&&(i++,1!=o.length&&(r.stack=i,r.start=l)),e}),null!=r.end&&/^\)*$/.test(e.substr(r.end))&&(e=e.substring(0,r.start)+e.substr(r.end))}return"^"!=e.charAt(0)&&(e="^"+e),"$"!=e.charAt(e.length-1)&&(e+="$"),new RegExp(e,(t||"").replace("g",""))},this.getLineTokens=function(e,t){if(t&&"string"!=typeof t)"#tmp"===(t=(i=t.slice(0))[0])&&(i.shift(),t=i.shift());else var i=[];var n=t||"start",o=this.states[n];o||(n="start",o=this.states[n]);var s=this.matchMappings[n],a=this.regExps[n];a.lastIndex=0;for(var l,c=[],h=0,u=0,d={type:null,value:""};l=a.exec(e);){var f=s.defaultToken,p=null,m=l[0],g=a.lastIndex;if(g-m.length>h){var v=e.substring(h,g-m.length);d.type==f?d.value+=v:(d.type&&c.push(d),d={type:f,value:v})}for(var y=0;y<l.length-2;y++)if(void 0!==l[y+1]){f=(p=o[s[y]]).onMatch?p.onMatch(m,n,i):p.token,p.next&&(n="string"==typeof p.next?p.next:p.next(n,i),(o=this.states[n])||(this.reportError("state doesn't exist",n),n="start",o=this.states[n]),s=this.matchMappings[n],h=g,(a=this.regExps[n]).lastIndex=g);break}if(m)if("string"==typeof f)p&&!1===p.merge||d.type!==f?(d.type&&c.push(d),d={type:f,value:m}):d.value+=m;else if(f){d.type&&c.push(d),d={type:null,value:""};for(y=0;y<f.length;y++)c.push(f[y])}if(h==e.length)break;if(h=g,u++>r){for(u>2*e.length&&this.reportError("infinite loop with in ace tokenizer",{startState:t,line:e});h<e.length;)d.type&&c.push(d),d={value:e.substring(h,h+=2e3),type:"overflow"};n="start",i=[];break}}return d.type&&c.push(d),i.length>1&&i[0]!==n&&i.unshift("#tmp",n),{tokens:c,state:i.length?i:n}},this.reportError=n.reportError}).call(o.prototype),t.Tokenizer=o}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(e,t,i){"use strict";var n=e("../lib/lang"),r=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(e,t){if(t)for(var i in e){for(var n=e[i],r=0;r<n.length;r++){var o=n[r];(o.next||o.onMatch)&&("string"==typeof o.next&&0!==o.next.indexOf(t)&&(o.next=t+o.next),o.nextState&&0!==o.nextState.indexOf(t)&&(o.nextState=t+o.nextState))}this.$rules[t+i]=n}else for(var i in e)this.$rules[i]=e[i]},this.getRules=function(){return this.$rules},this.embedRules=function(e,t,i,r,o){var s="function"==typeof e?(new e).getRules():e;if(r)for(var a=0;a<r.length;a++)r[a]=t+r[a];else for(var l in r=[],s)r.push(t+l);if(this.addRules(s,t),i){var c=Array.prototype[o?"push":"unshift"];for(a=0;a<r.length;a++)c.apply(this.$rules[r[a]],n.deepCopy(i))}this.$embeds||(this.$embeds=[]),this.$embeds.push(t)},this.getEmbeds=function(){return this.$embeds};var e=function(e,t){return("start"!=e||t.length)&&t.unshift(this.nextState,e),this.nextState},t=function(e,t){return t.shift(),t.shift()||"start"};this.normalizeRules=function(){var i=0,n=this.$rules;Object.keys(n).forEach(function r(o){var s=n[o];s.processed=!0;for(var a=0;a<s.length;a++){var l=s[a];!l.regex&&l.start&&(l.regex=l.start,l.next||(l.next=[]),l.next.push({defaultToken:l.token},{token:l.token+".end",regex:l.end||l.start,next:"pop"}),l.token=l.token+".start",l.push=!0);var c=l.next||l.push;if(c&&Array.isArray(c)){var h=l.stateName;h||("string"!=typeof(h=l.token)&&(h=h[0]||""),n[h]&&(h+=i++)),n[h]=c,l.next=h,r(h)}else"pop"==c&&(l.next=t);if(l.push&&(l.nextState=l.next||l.push,l.next=e,delete l.push),l.rules)for(var u in l.rules)n[u]?n[u].push&&n[u].push.apply(n[u],l.rules[u]):n[u]=l.rules[u];if(l.include||"string"==typeof l)var d=l.include||l,f=n[d];else Array.isArray(l)&&(f=l);if(f){var p=[a,1].concat(f);l.noEscape&&(p=p.filter(function(e){return!e.next})),s.splice.apply(s,p),a--,f=null}l.keywordMap&&(l.token=this.createKeywordMapper(l.keywordMap,l.defaultToken||"text",l.caseInsensitive),delete l.defaultToken)}},this)},this.createKeywordMapper=function(e,t,i,n){var r=Object.create(null);return Object.keys(e).forEach(function(t){var o=e[t];i&&(o=o.toLowerCase());for(var s=o.split(n||"|"),a=s.length;a--;)r[s[a]]=t}),Object.getPrototypeOf(r)&&(r.__proto__=null),this.$keywordList=Object.keys(r),e=null,i?function(e){return r[e.toLowerCase()]||t}:function(e){return r[e]||t}},this.getKeywords=function(){return this.$keywords}}).call(r.prototype),t.TextHighlightRules=r}),ace.define("ace/mode/behaviour",["require","exports","module"],function(e,t,i){"use strict";var n=function(){this.$behaviours={}};(function(){this.add=function(e,t,i){switch(void 0){case this.$behaviours:this.$behaviours={};case this.$behaviours[e]:this.$behaviours[e]={}}this.$behaviours[e][t]=i},this.addBehaviours=function(e){for(var t in e)for(var i in e[t])this.add(t,i,e[t][i])},this.remove=function(e){this.$behaviours&&this.$behaviours[e]&&delete this.$behaviours[e]},this.inherit=function(e,t){if("function"==typeof e)var i=(new e).getBehaviours(t);else i=e.getBehaviours(t);this.addBehaviours(i)},this.getBehaviours=function(e){if(e){for(var t={},i=0;i<e.length;i++)this.$behaviours[e[i]]&&(t[e[i]]=this.$behaviours[e[i]]);return t}return this.$behaviours}}).call(n.prototype),t.Behaviour=n}),ace.define("ace/unicode",["require","exports","module"],function(e,t,i){"use strict";t.packages={},function(e){var i=/\w{4}/g;for(var n in e)t.packages[n]=e[n].replace(i,"\\u$&")}({L:"0041-005A0061-007A00AA00B500BA00C0-00D600D8-00F600F8-02C102C6-02D102E0-02E402EC02EE0370-037403760377037A-037D03860388-038A038C038E-03A103A3-03F503F7-0481048A-05250531-055605590561-058705D0-05EA05F0-05F20621-064A066E066F0671-06D306D506E506E606EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA07F407F507FA0800-0815081A082408280904-0939093D09500958-0961097109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E460E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EC60EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10A0-10C510D0-10FA10FC1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317D717DC1820-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541AA71B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C7D1CE9-1CEC1CEE-1CF11D00-1DBF1E00-1F151F18-1F1D1F20-1F451F48-1F4D1F50-1F571F591F5B1F5D1F5F-1F7D1F80-1FB41FB6-1FBC1FBE1FC2-1FC41FC6-1FCC1FD0-1FD31FD6-1FDB1FE0-1FEC1FF2-1FF41FF6-1FFC2071207F2090-209421022107210A-211321152119-211D212421262128212A-212D212F-2139213C-213F2145-2149214E218321842C00-2C2E2C30-2C5E2C60-2CE42CEB-2CEE2D00-2D252D30-2D652D6F2D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE2E2F300530063031-3035303B303C3041-3096309D-309F30A1-30FA30FC-30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A48CA4D0-A4FDA500-A60CA610-A61FA62AA62BA640-A65FA662-A66EA67F-A697A6A0-A6E5A717-A71FA722-A788A78BA78CA7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2A9CFAA00-AA28AA40-AA42AA44-AA4BAA60-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADB-AADDABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB00-FB06FB13-FB17FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF21-FF3AFF41-FF5AFF66-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",Ll:"0061-007A00AA00B500BA00DF-00F600F8-00FF01010103010501070109010B010D010F01110113011501170119011B011D011F01210123012501270129012B012D012F01310133013501370138013A013C013E014001420144014601480149014B014D014F01510153015501570159015B015D015F01610163016501670169016B016D016F0171017301750177017A017C017E-0180018301850188018C018D019201950199-019B019E01A101A301A501A801AA01AB01AD01B001B401B601B901BA01BD-01BF01C601C901CC01CE01D001D201D401D601D801DA01DC01DD01DF01E101E301E501E701E901EB01ED01EF01F001F301F501F901FB01FD01FF02010203020502070209020B020D020F02110213021502170219021B021D021F02210223022502270229022B022D022F02310233-0239023C023F0240024202470249024B024D024F-02930295-02AF037103730377037B-037D039003AC-03CE03D003D103D5-03D703D903DB03DD03DF03E103E303E503E703E903EB03ED03EF-03F303F503F803FB03FC0430-045F04610463046504670469046B046D046F04710473047504770479047B047D047F0481048B048D048F04910493049504970499049B049D049F04A104A304A504A704A904AB04AD04AF04B104B304B504B704B904BB04BD04BF04C204C404C604C804CA04CC04CE04CF04D104D304D504D704D904DB04DD04DF04E104E304E504E704E904EB04ED04EF04F104F304F504F704F904FB04FD04FF05010503050505070509050B050D050F05110513051505170519051B051D051F0521052305250561-05871D00-1D2B1D62-1D771D79-1D9A1E011E031E051E071E091E0B1E0D1E0F1E111E131E151E171E191E1B1E1D1E1F1E211E231E251E271E291E2B1E2D1E2F1E311E331E351E371E391E3B1E3D1E3F1E411E431E451E471E491E4B1E4D1E4F1E511E531E551E571E591E5B1E5D1E5F1E611E631E651E671E691E6B1E6D1E6F1E711E731E751E771E791E7B1E7D1E7F1E811E831E851E871E891E8B1E8D1E8F1E911E931E95-1E9D1E9F1EA11EA31EA51EA71EA91EAB1EAD1EAF1EB11EB31EB51EB71EB91EBB1EBD1EBF1EC11EC31EC51EC71EC91ECB1ECD1ECF1ED11ED31ED51ED71ED91EDB1EDD1EDF1EE11EE31EE51EE71EE91EEB1EED1EEF1EF11EF31EF51EF71EF91EFB1EFD1EFF-1F071F10-1F151F20-1F271F30-1F371F40-1F451F50-1F571F60-1F671F70-1F7D1F80-1F871F90-1F971FA0-1FA71FB0-1FB41FB61FB71FBE1FC2-1FC41FC61FC71FD0-1FD31FD61FD71FE0-1FE71FF2-1FF41FF61FF7210A210E210F2113212F21342139213C213D2146-2149214E21842C30-2C5E2C612C652C662C682C6A2C6C2C712C732C742C76-2C7C2C812C832C852C872C892C8B2C8D2C8F2C912C932C952C972C992C9B2C9D2C9F2CA12CA32CA52CA72CA92CAB2CAD2CAF2CB12CB32CB52CB72CB92CBB2CBD2CBF2CC12CC32CC52CC72CC92CCB2CCD2CCF2CD12CD32CD52CD72CD92CDB2CDD2CDF2CE12CE32CE42CEC2CEE2D00-2D25A641A643A645A647A649A64BA64DA64FA651A653A655A657A659A65BA65DA65FA663A665A667A669A66BA66DA681A683A685A687A689A68BA68DA68FA691A693A695A697A723A725A727A729A72BA72DA72F-A731A733A735A737A739A73BA73DA73FA741A743A745A747A749A74BA74DA74FA751A753A755A757A759A75BA75DA75FA761A763A765A767A769A76BA76DA76FA771-A778A77AA77CA77FA781A783A785A787A78CFB00-FB06FB13-FB17FF41-FF5A",Lu:"0041-005A00C0-00D600D8-00DE01000102010401060108010A010C010E01100112011401160118011A011C011E01200122012401260128012A012C012E01300132013401360139013B013D013F0141014301450147014A014C014E01500152015401560158015A015C015E01600162016401660168016A016C016E017001720174017601780179017B017D018101820184018601870189-018B018E-0191019301940196-0198019C019D019F01A001A201A401A601A701A901AC01AE01AF01B1-01B301B501B701B801BC01C401C701CA01CD01CF01D101D301D501D701D901DB01DE01E001E201E401E601E801EA01EC01EE01F101F401F6-01F801FA01FC01FE02000202020402060208020A020C020E02100212021402160218021A021C021E02200222022402260228022A022C022E02300232023A023B023D023E02410243-02460248024A024C024E03700372037603860388-038A038C038E038F0391-03A103A3-03AB03CF03D2-03D403D803DA03DC03DE03E003E203E403E603E803EA03EC03EE03F403F703F903FA03FD-042F04600462046404660468046A046C046E04700472047404760478047A047C047E0480048A048C048E04900492049404960498049A049C049E04A004A204A404A604A804AA04AC04AE04B004B204B404B604B804BA04BC04BE04C004C104C304C504C704C904CB04CD04D004D204D404D604D804DA04DC04DE04E004E204E404E604E804EA04EC04EE04F004F204F404F604F804FA04FC04FE05000502050405060508050A050C050E05100512051405160518051A051C051E0520052205240531-055610A0-10C51E001E021E041E061E081E0A1E0C1E0E1E101E121E141E161E181E1A1E1C1E1E1E201E221E241E261E281E2A1E2C1E2E1E301E321E341E361E381E3A1E3C1E3E1E401E421E441E461E481E4A1E4C1E4E1E501E521E541E561E581E5A1E5C1E5E1E601E621E641E661E681E6A1E6C1E6E1E701E721E741E761E781E7A1E7C1E7E1E801E821E841E861E881E8A1E8C1E8E1E901E921E941E9E1EA01EA21EA41EA61EA81EAA1EAC1EAE1EB01EB21EB41EB61EB81EBA1EBC1EBE1EC01EC21EC41EC61EC81ECA1ECC1ECE1ED01ED21ED41ED61ED81EDA1EDC1EDE1EE01EE21EE41EE61EE81EEA1EEC1EEE1EF01EF21EF41EF61EF81EFA1EFC1EFE1F08-1F0F1F18-1F1D1F28-1F2F1F38-1F3F1F48-1F4D1F591F5B1F5D1F5F1F68-1F6F1FB8-1FBB1FC8-1FCB1FD8-1FDB1FE8-1FEC1FF8-1FFB21022107210B-210D2110-211221152119-211D212421262128212A-212D2130-2133213E213F214521832C00-2C2E2C602C62-2C642C672C692C6B2C6D-2C702C722C752C7E-2C802C822C842C862C882C8A2C8C2C8E2C902C922C942C962C982C9A2C9C2C9E2CA02CA22CA42CA62CA82CAA2CAC2CAE2CB02CB22CB42CB62CB82CBA2CBC2CBE2CC02CC22CC42CC62CC82CCA2CCC2CCE2CD02CD22CD42CD62CD82CDA2CDC2CDE2CE02CE22CEB2CEDA640A642A644A646A648A64AA64CA64EA650A652A654A656A658A65AA65CA65EA662A664A666A668A66AA66CA680A682A684A686A688A68AA68CA68EA690A692A694A696A722A724A726A728A72AA72CA72EA732A734A736A738A73AA73CA73EA740A742A744A746A748A74AA74CA74EA750A752A754A756A758A75AA75CA75EA760A762A764A766A768A76AA76CA76EA779A77BA77DA77EA780A782A784A786A78BFF21-FF3A",Lt:"01C501C801CB01F21F88-1F8F1F98-1F9F1FA8-1FAF1FBC1FCC1FFC",Lm:"02B0-02C102C6-02D102E0-02E402EC02EE0374037A0559064006E506E607F407F507FA081A0824082809710E460EC610FC17D718431AA71C78-1C7D1D2C-1D611D781D9B-1DBF2071207F2090-20942C7D2D6F2E2F30053031-3035303B309D309E30FC-30FEA015A4F8-A4FDA60CA67FA717-A71FA770A788A9CFAA70AADDFF70FF9EFF9F",Lo:"01BB01C0-01C3029405D0-05EA05F0-05F20621-063F0641-064A066E066F0671-06D306D506EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA0800-08150904-0939093D09500958-096109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E450E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10D0-10FA1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317DC1820-18421844-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C771CE9-1CEC1CEE-1CF12135-21382D30-2D652D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE3006303C3041-3096309F30A1-30FA30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A014A016-A48CA4D0-A4F7A500-A60BA610-A61FA62AA62BA66EA6A0-A6E5A7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2AA00-AA28AA40-AA42AA44-AA4BAA60-AA6FAA71-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADBAADCABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF66-FF6FFF71-FF9DFFA0-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",M:"0300-036F0483-04890591-05BD05BF05C105C205C405C505C70610-061A064B-065E067006D6-06DC06DE-06E406E706E806EA-06ED07110730-074A07A6-07B007EB-07F30816-0819081B-08230825-08270829-082D0900-0903093C093E-094E0951-0955096209630981-098309BC09BE-09C409C709C809CB-09CD09D709E209E30A01-0A030A3C0A3E-0A420A470A480A4B-0A4D0A510A700A710A750A81-0A830ABC0ABE-0AC50AC7-0AC90ACB-0ACD0AE20AE30B01-0B030B3C0B3E-0B440B470B480B4B-0B4D0B560B570B620B630B820BBE-0BC20BC6-0BC80BCA-0BCD0BD70C01-0C030C3E-0C440C46-0C480C4A-0C4D0C550C560C620C630C820C830CBC0CBE-0CC40CC6-0CC80CCA-0CCD0CD50CD60CE20CE30D020D030D3E-0D440D46-0D480D4A-0D4D0D570D620D630D820D830DCA0DCF-0DD40DD60DD8-0DDF0DF20DF30E310E34-0E3A0E47-0E4E0EB10EB4-0EB90EBB0EBC0EC8-0ECD0F180F190F350F370F390F3E0F3F0F71-0F840F860F870F90-0F970F99-0FBC0FC6102B-103E1056-1059105E-10601062-10641067-106D1071-10741082-108D108F109A-109D135F1712-17141732-1734175217531772177317B6-17D317DD180B-180D18A91920-192B1930-193B19B0-19C019C819C91A17-1A1B1A55-1A5E1A60-1A7C1A7F1B00-1B041B34-1B441B6B-1B731B80-1B821BA1-1BAA1C24-1C371CD0-1CD21CD4-1CE81CED1CF21DC0-1DE61DFD-1DFF20D0-20F02CEF-2CF12DE0-2DFF302A-302F3099309AA66F-A672A67CA67DA6F0A6F1A802A806A80BA823-A827A880A881A8B4-A8C4A8E0-A8F1A926-A92DA947-A953A980-A983A9B3-A9C0AA29-AA36AA43AA4CAA4DAA7BAAB0AAB2-AAB4AAB7AAB8AABEAABFAAC1ABE3-ABEAABECABEDFB1EFE00-FE0FFE20-FE26",Mn:"0300-036F0483-04870591-05BD05BF05C105C205C405C505C70610-061A064B-065E067006D6-06DC06DF-06E406E706E806EA-06ED07110730-074A07A6-07B007EB-07F30816-0819081B-08230825-08270829-082D0900-0902093C0941-0948094D0951-095509620963098109BC09C1-09C409CD09E209E30A010A020A3C0A410A420A470A480A4B-0A4D0A510A700A710A750A810A820ABC0AC1-0AC50AC70AC80ACD0AE20AE30B010B3C0B3F0B41-0B440B4D0B560B620B630B820BC00BCD0C3E-0C400C46-0C480C4A-0C4D0C550C560C620C630CBC0CBF0CC60CCC0CCD0CE20CE30D41-0D440D4D0D620D630DCA0DD2-0DD40DD60E310E34-0E3A0E47-0E4E0EB10EB4-0EB90EBB0EBC0EC8-0ECD0F180F190F350F370F390F71-0F7E0F80-0F840F860F870F90-0F970F99-0FBC0FC6102D-10301032-10371039103A103D103E10581059105E-10601071-1074108210851086108D109D135F1712-17141732-1734175217531772177317B7-17BD17C617C9-17D317DD180B-180D18A91920-19221927192819321939-193B1A171A181A561A58-1A5E1A601A621A65-1A6C1A73-1A7C1A7F1B00-1B031B341B36-1B3A1B3C1B421B6B-1B731B801B811BA2-1BA51BA81BA91C2C-1C331C361C371CD0-1CD21CD4-1CE01CE2-1CE81CED1DC0-1DE61DFD-1DFF20D0-20DC20E120E5-20F02CEF-2CF12DE0-2DFF302A-302F3099309AA66FA67CA67DA6F0A6F1A802A806A80BA825A826A8C4A8E0-A8F1A926-A92DA947-A951A980-A982A9B3A9B6-A9B9A9BCAA29-AA2EAA31AA32AA35AA36AA43AA4CAAB0AAB2-AAB4AAB7AAB8AABEAABFAAC1ABE5ABE8ABEDFB1EFE00-FE0FFE20-FE26",Mc:"0903093E-09400949-094C094E0982098309BE-09C009C709C809CB09CC09D70A030A3E-0A400A830ABE-0AC00AC90ACB0ACC0B020B030B3E0B400B470B480B4B0B4C0B570BBE0BBF0BC10BC20BC6-0BC80BCA-0BCC0BD70C01-0C030C41-0C440C820C830CBE0CC0-0CC40CC70CC80CCA0CCB0CD50CD60D020D030D3E-0D400D46-0D480D4A-0D4C0D570D820D830DCF-0DD10DD8-0DDF0DF20DF30F3E0F3F0F7F102B102C10311038103B103C105610571062-10641067-106D108310841087-108C108F109A-109C17B617BE-17C517C717C81923-19261929-192B193019311933-193819B0-19C019C819C91A19-1A1B1A551A571A611A631A641A6D-1A721B041B351B3B1B3D-1B411B431B441B821BA11BA61BA71BAA1C24-1C2B1C341C351CE11CF2A823A824A827A880A881A8B4-A8C3A952A953A983A9B4A9B5A9BAA9BBA9BD-A9C0AA2FAA30AA33AA34AA4DAA7BABE3ABE4ABE6ABE7ABE9ABEAABEC",Me:"0488048906DE20DD-20E020E2-20E4A670-A672",N:"0030-003900B200B300B900BC-00BE0660-066906F0-06F907C0-07C90966-096F09E6-09EF09F4-09F90A66-0A6F0AE6-0AEF0B66-0B6F0BE6-0BF20C66-0C6F0C78-0C7E0CE6-0CEF0D66-0D750E50-0E590ED0-0ED90F20-0F331040-10491090-10991369-137C16EE-16F017E0-17E917F0-17F91810-18191946-194F19D0-19DA1A80-1A891A90-1A991B50-1B591BB0-1BB91C40-1C491C50-1C5920702074-20792080-20892150-21822185-21892460-249B24EA-24FF2776-27932CFD30073021-30293038-303A3192-31953220-32293251-325F3280-328932B1-32BFA620-A629A6E6-A6EFA830-A835A8D0-A8D9A900-A909A9D0-A9D9AA50-AA59ABF0-ABF9FF10-FF19",Nd:"0030-00390660-066906F0-06F907C0-07C90966-096F09E6-09EF0A66-0A6F0AE6-0AEF0B66-0B6F0BE6-0BEF0C66-0C6F0CE6-0CEF0D66-0D6F0E50-0E590ED0-0ED90F20-0F291040-10491090-109917E0-17E91810-18191946-194F19D0-19DA1A80-1A891A90-1A991B50-1B591BB0-1BB91C40-1C491C50-1C59A620-A629A8D0-A8D9A900-A909A9D0-A9D9AA50-AA59ABF0-ABF9FF10-FF19",Nl:"16EE-16F02160-21822185-218830073021-30293038-303AA6E6-A6EF",No:"00B200B300B900BC-00BE09F4-09F90BF0-0BF20C78-0C7E0D70-0D750F2A-0F331369-137C17F0-17F920702074-20792080-20892150-215F21892460-249B24EA-24FF2776-27932CFD3192-31953220-32293251-325F3280-328932B1-32BFA830-A835",P:"0021-00230025-002A002C-002F003A003B003F0040005B-005D005F007B007D00A100AB00B700BB00BF037E0387055A-055F0589058A05BE05C005C305C605F305F40609060A060C060D061B061E061F066A-066D06D40700-070D07F7-07F90830-083E0964096509700DF40E4F0E5A0E5B0F04-0F120F3A-0F3D0F850FD0-0FD4104A-104F10FB1361-13681400166D166E169B169C16EB-16ED1735173617D4-17D617D8-17DA1800-180A1944194519DE19DF1A1E1A1F1AA0-1AA61AA8-1AAD1B5A-1B601C3B-1C3F1C7E1C7F1CD32010-20272030-20432045-20512053-205E207D207E208D208E2329232A2768-277527C527C627E6-27EF2983-299829D8-29DB29FC29FD2CF9-2CFC2CFE2CFF2E00-2E2E2E302E313001-30033008-30113014-301F3030303D30A030FBA4FEA4FFA60D-A60FA673A67EA6F2-A6F7A874-A877A8CEA8CFA8F8-A8FAA92EA92FA95FA9C1-A9CDA9DEA9DFAA5C-AA5FAADEAADFABEBFD3EFD3FFE10-FE19FE30-FE52FE54-FE61FE63FE68FE6AFE6BFF01-FF03FF05-FF0AFF0C-FF0FFF1AFF1BFF1FFF20FF3B-FF3DFF3FFF5BFF5DFF5F-FF65",Pd:"002D058A05BE140018062010-20152E172E1A301C303030A0FE31FE32FE58FE63FF0D",Ps:"0028005B007B0F3A0F3C169B201A201E2045207D208D23292768276A276C276E27702772277427C527E627E827EA27EC27EE2983298529872989298B298D298F299129932995299729D829DA29FC2E222E242E262E283008300A300C300E3010301430163018301A301DFD3EFE17FE35FE37FE39FE3BFE3DFE3FFE41FE43FE47FE59FE5BFE5DFF08FF3BFF5BFF5FFF62",Pe:"0029005D007D0F3B0F3D169C2046207E208E232A2769276B276D276F27712773277527C627E727E927EB27ED27EF298429862988298A298C298E2990299229942996299829D929DB29FD2E232E252E272E293009300B300D300F3011301530173019301B301E301FFD3FFE18FE36FE38FE3AFE3CFE3EFE40FE42FE44FE48FE5AFE5CFE5EFF09FF3DFF5DFF60FF63",Pi:"00AB2018201B201C201F20392E022E042E092E0C2E1C2E20",Pf:"00BB2019201D203A2E032E052E0A2E0D2E1D2E21",Pc:"005F203F20402054FE33FE34FE4D-FE4FFF3F",Po:"0021-00230025-0027002A002C002E002F003A003B003F0040005C00A100B700BF037E0387055A-055F058905C005C305C605F305F40609060A060C060D061B061E061F066A-066D06D40700-070D07F7-07F90830-083E0964096509700DF40E4F0E5A0E5B0F04-0F120F850FD0-0FD4104A-104F10FB1361-1368166D166E16EB-16ED1735173617D4-17D617D8-17DA1800-18051807-180A1944194519DE19DF1A1E1A1F1AA0-1AA61AA8-1AAD1B5A-1B601C3B-1C3F1C7E1C7F1CD3201620172020-20272030-2038203B-203E2041-20432047-205120532055-205E2CF9-2CFC2CFE2CFF2E002E012E06-2E082E0B2E0E-2E162E182E192E1B2E1E2E1F2E2A-2E2E2E302E313001-3003303D30FBA4FEA4FFA60D-A60FA673A67EA6F2-A6F7A874-A877A8CEA8CFA8F8-A8FAA92EA92FA95FA9C1-A9CDA9DEA9DFAA5C-AA5FAADEAADFABEBFE10-FE16FE19FE30FE45FE46FE49-FE4CFE50-FE52FE54-FE57FE5F-FE61FE68FE6AFE6BFF01-FF03FF05-FF07FF0AFF0CFF0EFF0FFF1AFF1BFF1FFF20FF3CFF61FF64FF65",S:"0024002B003C-003E005E0060007C007E00A2-00A900AC00AE-00B100B400B600B800D700F702C2-02C502D2-02DF02E5-02EB02ED02EF-02FF03750384038503F604820606-0608060B060E060F06E906FD06FE07F609F209F309FA09FB0AF10B700BF3-0BFA0C7F0CF10CF20D790E3F0F01-0F030F13-0F170F1A-0F1F0F340F360F380FBE-0FC50FC7-0FCC0FCE0FCF0FD5-0FD8109E109F13601390-139917DB194019E0-19FF1B61-1B6A1B74-1B7C1FBD1FBF-1FC11FCD-1FCF1FDD-1FDF1FED-1FEF1FFD1FFE20442052207A-207C208A-208C20A0-20B8210021012103-21062108210921142116-2118211E-2123212521272129212E213A213B2140-2144214A-214D214F2190-2328232B-23E82400-24262440-244A249C-24E92500-26CD26CF-26E126E326E8-26FF2701-27042706-2709270C-27272729-274B274D274F-27522756-275E2761-276727942798-27AF27B1-27BE27C0-27C427C7-27CA27CC27D0-27E527F0-29822999-29D729DC-29FB29FE-2B4C2B50-2B592CE5-2CEA2E80-2E992E9B-2EF32F00-2FD52FF0-2FFB300430123013302030363037303E303F309B309C319031913196-319F31C0-31E33200-321E322A-32503260-327F328A-32B032C0-32FE3300-33FF4DC0-4DFFA490-A4C6A700-A716A720A721A789A78AA828-A82BA836-A839AA77-AA79FB29FDFCFDFDFE62FE64-FE66FE69FF04FF0BFF1C-FF1EFF3EFF40FF5CFF5EFFE0-FFE6FFE8-FFEEFFFCFFFD",Sm:"002B003C-003E007C007E00AC00B100D700F703F60606-060820442052207A-207C208A-208C2140-2144214B2190-2194219A219B21A021A321A621AE21CE21CF21D221D421F4-22FF2308-230B23202321237C239B-23B323DC-23E125B725C125F8-25FF266F27C0-27C427C7-27CA27CC27D0-27E527F0-27FF2900-29822999-29D729DC-29FB29FE-2AFF2B30-2B442B47-2B4CFB29FE62FE64-FE66FF0BFF1C-FF1EFF5CFF5EFFE2FFE9-FFEC",Sc:"002400A2-00A5060B09F209F309FB0AF10BF90E3F17DB20A0-20B8A838FDFCFE69FF04FFE0FFE1FFE5FFE6",Sk:"005E006000A800AF00B400B802C2-02C502D2-02DF02E5-02EB02ED02EF-02FF0375038403851FBD1FBF-1FC11FCD-1FCF1FDD-1FDF1FED-1FEF1FFD1FFE309B309CA700-A716A720A721A789A78AFF3EFF40FFE3",So:"00A600A700A900AE00B000B60482060E060F06E906FD06FE07F609FA0B700BF3-0BF80BFA0C7F0CF10CF20D790F01-0F030F13-0F170F1A-0F1F0F340F360F380FBE-0FC50FC7-0FCC0FCE0FCF0FD5-0FD8109E109F13601390-1399194019E0-19FF1B61-1B6A1B74-1B7C210021012103-21062108210921142116-2118211E-2123212521272129212E213A213B214A214C214D214F2195-2199219C-219F21A121A221A421A521A7-21AD21AF-21CD21D021D121D321D5-21F32300-2307230C-231F2322-2328232B-237B237D-239A23B4-23DB23E2-23E82400-24262440-244A249C-24E92500-25B625B8-25C025C2-25F72600-266E2670-26CD26CF-26E126E326E8-26FF2701-27042706-2709270C-27272729-274B274D274F-27522756-275E2761-276727942798-27AF27B1-27BE2800-28FF2B00-2B2F2B452B462B50-2B592CE5-2CEA2E80-2E992E9B-2EF32F00-2FD52FF0-2FFB300430123013302030363037303E303F319031913196-319F31C0-31E33200-321E322A-32503260-327F328A-32B032C0-32FE3300-33FF4DC0-4DFFA490-A4C6A828-A82BA836A837A839AA77-AA79FDFDFFE4FFE8FFEDFFEEFFFCFFFD",Z:"002000A01680180E2000-200A20282029202F205F3000",Zs:"002000A01680180E2000-200A202F205F3000",Zl:"2028",Zp:"2029",C:"0000-001F007F-009F00AD03780379037F-0383038B038D03A20526-05300557055805600588058B-059005C8-05CF05EB-05EF05F5-0605061C061D0620065F06DD070E070F074B074C07B2-07BF07FB-07FF082E082F083F-08FF093A093B094F095609570973-097809800984098D098E0991099209A909B109B3-09B509BA09BB09C509C609C909CA09CF-09D609D8-09DB09DE09E409E509FC-0A000A040A0B-0A0E0A110A120A290A310A340A370A3A0A3B0A3D0A43-0A460A490A4A0A4E-0A500A52-0A580A5D0A5F-0A650A76-0A800A840A8E0A920AA90AB10AB40ABA0ABB0AC60ACA0ACE0ACF0AD1-0ADF0AE40AE50AF00AF2-0B000B040B0D0B0E0B110B120B290B310B340B3A0B3B0B450B460B490B4A0B4E-0B550B58-0B5B0B5E0B640B650B72-0B810B840B8B-0B8D0B910B96-0B980B9B0B9D0BA0-0BA20BA5-0BA70BAB-0BAD0BBA-0BBD0BC3-0BC50BC90BCE0BCF0BD1-0BD60BD8-0BE50BFB-0C000C040C0D0C110C290C340C3A-0C3C0C450C490C4E-0C540C570C5A-0C5F0C640C650C70-0C770C800C810C840C8D0C910CA90CB40CBA0CBB0CC50CC90CCE-0CD40CD7-0CDD0CDF0CE40CE50CF00CF3-0D010D040D0D0D110D290D3A-0D3C0D450D490D4E-0D560D58-0D5F0D640D650D76-0D780D800D810D840D97-0D990DB20DBC0DBE0DBF0DC7-0DC90DCB-0DCE0DD50DD70DE0-0DF10DF5-0E000E3B-0E3E0E5C-0E800E830E850E860E890E8B0E8C0E8E-0E930E980EA00EA40EA60EA80EA90EAC0EBA0EBE0EBF0EC50EC70ECE0ECF0EDA0EDB0EDE-0EFF0F480F6D-0F700F8C-0F8F0F980FBD0FCD0FD9-0FFF10C6-10CF10FD-10FF1249124E124F12571259125E125F1289128E128F12B112B612B712BF12C112C612C712D7131113161317135B-135E137D-137F139A-139F13F5-13FF169D-169F16F1-16FF170D1715-171F1737-173F1754-175F176D17711774-177F17B417B517DE17DF17EA-17EF17FA-17FF180F181A-181F1878-187F18AB-18AF18F6-18FF191D-191F192C-192F193C-193F1941-1943196E196F1975-197F19AC-19AF19CA-19CF19DB-19DD1A1C1A1D1A5F1A7D1A7E1A8A-1A8F1A9A-1A9F1AAE-1AFF1B4C-1B4F1B7D-1B7F1BAB-1BAD1BBA-1BFF1C38-1C3A1C4A-1C4C1C80-1CCF1CF3-1CFF1DE7-1DFC1F161F171F1E1F1F1F461F471F4E1F4F1F581F5A1F5C1F5E1F7E1F7F1FB51FC51FD41FD51FDC1FF01FF11FF51FFF200B-200F202A-202E2060-206F20722073208F2095-209F20B9-20CF20F1-20FF218A-218F23E9-23FF2427-243F244B-245F26CE26E226E4-26E727002705270A270B2728274C274E2753-2755275F27602795-279727B027BF27CB27CD-27CF2B4D-2B4F2B5A-2BFF2C2F2C5F2CF2-2CF82D26-2D2F2D66-2D6E2D70-2D7F2D97-2D9F2DA72DAF2DB72DBF2DC72DCF2DD72DDF2E32-2E7F2E9A2EF4-2EFF2FD6-2FEF2FFC-2FFF3040309730983100-3104312E-3130318F31B8-31BF31E4-31EF321F32FF4DB6-4DBF9FCC-9FFFA48D-A48FA4C7-A4CFA62C-A63FA660A661A674-A67BA698-A69FA6F8-A6FFA78D-A7FAA82C-A82FA83A-A83FA878-A87FA8C5-A8CDA8DA-A8DFA8FC-A8FFA954-A95EA97D-A97FA9CEA9DA-A9DDA9E0-A9FFAA37-AA3FAA4EAA4FAA5AAA5BAA7C-AA7FAAC3-AADAAAE0-ABBFABEEABEFABFA-ABFFD7A4-D7AFD7C7-D7CAD7FC-F8FFFA2EFA2FFA6EFA6FFADA-FAFFFB07-FB12FB18-FB1CFB37FB3DFB3FFB42FB45FBB2-FBD2FD40-FD4FFD90FD91FDC8-FDEFFDFEFDFFFE1A-FE1FFE27-FE2FFE53FE67FE6C-FE6FFE75FEFD-FF00FFBF-FFC1FFC8FFC9FFD0FFD1FFD8FFD9FFDD-FFDFFFE7FFEF-FFFBFFFEFFFF",Cc:"0000-001F007F-009F",Cf:"00AD0600-060306DD070F17B417B5200B-200F202A-202E2060-2064206A-206FFEFFFFF9-FFFB",Co:"E000-F8FF",Cs:"D800-DFFF",Cn:"03780379037F-0383038B038D03A20526-05300557055805600588058B-059005C8-05CF05EB-05EF05F5-05FF06040605061C061D0620065F070E074B074C07B2-07BF07FB-07FF082E082F083F-08FF093A093B094F095609570973-097809800984098D098E0991099209A909B109B3-09B509BA09BB09C509C609C909CA09CF-09D609D8-09DB09DE09E409E509FC-0A000A040A0B-0A0E0A110A120A290A310A340A370A3A0A3B0A3D0A43-0A460A490A4A0A4E-0A500A52-0A580A5D0A5F-0A650A76-0A800A840A8E0A920AA90AB10AB40ABA0ABB0AC60ACA0ACE0ACF0AD1-0ADF0AE40AE50AF00AF2-0B000B040B0D0B0E0B110B120B290B310B340B3A0B3B0B450B460B490B4A0B4E-0B550B58-0B5B0B5E0B640B650B72-0B810B840B8B-0B8D0B910B96-0B980B9B0B9D0BA0-0BA20BA5-0BA70BAB-0BAD0BBA-0BBD0BC3-0BC50BC90BCE0BCF0BD1-0BD60BD8-0BE50BFB-0C000C040C0D0C110C290C340C3A-0C3C0C450C490C4E-0C540C570C5A-0C5F0C640C650C70-0C770C800C810C840C8D0C910CA90CB40CBA0CBB0CC50CC90CCE-0CD40CD7-0CDD0CDF0CE40CE50CF00CF3-0D010D040D0D0D110D290D3A-0D3C0D450D490D4E-0D560D58-0D5F0D640D650D76-0D780D800D810D840D97-0D990DB20DBC0DBE0DBF0DC7-0DC90DCB-0DCE0DD50DD70DE0-0DF10DF5-0E000E3B-0E3E0E5C-0E800E830E850E860E890E8B0E8C0E8E-0E930E980EA00EA40EA60EA80EA90EAC0EBA0EBE0EBF0EC50EC70ECE0ECF0EDA0EDB0EDE-0EFF0F480F6D-0F700F8C-0F8F0F980FBD0FCD0FD9-0FFF10C6-10CF10FD-10FF1249124E124F12571259125E125F1289128E128F12B112B612B712BF12C112C612C712D7131113161317135B-135E137D-137F139A-139F13F5-13FF169D-169F16F1-16FF170D1715-171F1737-173F1754-175F176D17711774-177F17DE17DF17EA-17EF17FA-17FF180F181A-181F1878-187F18AB-18AF18F6-18FF191D-191F192C-192F193C-193F1941-1943196E196F1975-197F19AC-19AF19CA-19CF19DB-19DD1A1C1A1D1A5F1A7D1A7E1A8A-1A8F1A9A-1A9F1AAE-1AFF1B4C-1B4F1B7D-1B7F1BAB-1BAD1BBA-1BFF1C38-1C3A1C4A-1C4C1C80-1CCF1CF3-1CFF1DE7-1DFC1F161F171F1E1F1F1F461F471F4E1F4F1F581F5A1F5C1F5E1F7E1F7F1FB51FC51FD41FD51FDC1FF01FF11FF51FFF2065-206920722073208F2095-209F20B9-20CF20F1-20FF218A-218F23E9-23FF2427-243F244B-245F26CE26E226E4-26E727002705270A270B2728274C274E2753-2755275F27602795-279727B027BF27CB27CD-27CF2B4D-2B4F2B5A-2BFF2C2F2C5F2CF2-2CF82D26-2D2F2D66-2D6E2D70-2D7F2D97-2D9F2DA72DAF2DB72DBF2DC72DCF2DD72DDF2E32-2E7F2E9A2EF4-2EFF2FD6-2FEF2FFC-2FFF3040309730983100-3104312E-3130318F31B8-31BF31E4-31EF321F32FF4DB6-4DBF9FCC-9FFFA48D-A48FA4C7-A4CFA62C-A63FA660A661A674-A67BA698-A69FA6F8-A6FFA78D-A7FAA82C-A82FA83A-A83FA878-A87FA8C5-A8CDA8DA-A8DFA8FC-A8FFA954-A95EA97D-A97FA9CEA9DA-A9DDA9E0-A9FFAA37-AA3FAA4EAA4FAA5AAA5BAA7C-AA7FAAC3-AADAAAE0-ABBFABEEABEFABFA-ABFFD7A4-D7AFD7C7-D7CAD7FC-D7FFFA2EFA2FFA6EFA6FFADA-FAFFFB07-FB12FB18-FB1CFB37FB3DFB3FFB42FB45FBB2-FBD2FD40-FD4FFD90FD91FDC8-FDEFFDFEFDFFFE1A-FE1FFE27-FE2FFE53FE67FE6C-FE6FFE75FEFDFEFEFF00FFBF-FFC1FFC8FFC9FFD0FFD1FFD8FFD9FFDD-FFDFFFE7FFEF-FFF8FFFEFFFF"})}),ace.define("ace/token_iterator",["require","exports","module"],function(e,t,i){"use strict";var n=function(e,t,i){this.$session=e,this.$row=t,this.$rowTokens=e.getTokens(t);var n=e.getTokenAt(t,i);this.$tokenIndex=n?n.index:-1};(function(){this.stepBackward=function(){for(this.$tokenIndex-=1;this.$tokenIndex<0;){if(this.$row-=1,this.$row<0)return this.$row=0,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=this.$rowTokens.length-1}return this.$rowTokens[this.$tokenIndex]},this.stepForward=function(){var e;for(this.$tokenIndex+=1;this.$tokenIndex>=this.$rowTokens.length;){if(this.$row+=1,e||(e=this.$session.getLength()),this.$row>=e)return this.$row=e-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},this.getCurrentTokenRow=function(){return this.$row},this.getCurrentTokenColumn=function(){var e=this.$rowTokens,t=this.$tokenIndex,i=e[t].start;if(void 0!==i)return i;for(i=0;t>0;)i+=e[t-=1].value.length;return i},this.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}}}).call(n.prototype),t.TokenIterator=n}),ace.define("ace/mode/text",["require","exports","module","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour","ace/unicode","ace/lib/lang","ace/token_iterator","ace/range"],function(e,t,i){"use strict";var n=e("../tokenizer").Tokenizer,r=e("./text_highlight_rules").TextHighlightRules,o=e("./behaviour").Behaviour,s=e("../unicode"),a=e("../lib/lang"),l=e("../token_iterator").TokenIterator,c=e("../range").Range,h=function(){this.HighlightRules=r,this.$behaviour=new o};(function(){this.tokenRe=new RegExp("^["+s.packages.L+s.packages.Mn+s.packages.Mc+s.packages.Nd+s.packages.Pc+"\\$_]+","g"),this.nonTokenRe=new RegExp("^(?:[^"+s.packages.L+s.packages.Mn+s.packages.Mc+s.packages.Nd+s.packages.Pc+"\\$_]|\\s])+","g"),this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=this.$highlightRules||new this.HighlightRules,this.$tokenizer=new n(this.$highlightRules.getRules())),this.$tokenizer},this.lineCommentStart="",this.blockComment="",this.toggleCommentLines=function(e,t,i,n){var r=t.doc,o=!0,s=!0,l=1/0,c=t.getTabSize(),h=!1;if(this.lineCommentStart){if(Array.isArray(this.lineCommentStart))m=this.lineCommentStart.map(a.escapeRegExp).join("|"),f=this.lineCommentStart[0];else m=a.escapeRegExp(this.lineCommentStart),f=this.lineCommentStart;m=new RegExp("^(\\s*)(?:"+m+") ?"),h=t.getUseSoftTabs();y=function(e,t){var i=e.match(m);if(i){var n=i[1].length,o=i[0].length;d(e,n,o)||" "!=i[0][o-1]||o--,r.removeInLine(t,n,o)}};var u=f+" ",d=(v=function(e,t){o&&!/\S/.test(e)||(d(e,l,l)?r.insertInLine({row:t,column:l},u):r.insertInLine({row:t,column:l},f))},w=function(e,t){return m.test(e)},function(e,t,i){for(var n=0;t--&&" "==e.charAt(t);)n++;if(n%c!=0)return!1;for(n=0;" "==e.charAt(i++);)n++;return c>2?n%c!=c-1:n%c==0})}else{if(!this.blockComment)return!1;var f=this.blockComment.start,p=this.blockComment.end,m=new RegExp("^(\\s*)(?:"+a.escapeRegExp(f)+")"),g=new RegExp("(?:"+a.escapeRegExp(p)+")\\s*$"),v=function(e,t){w(e,t)||o&&!/\S/.test(e)||(r.insertInLine({row:t,column:e.length},p),r.insertInLine({row:t,column:l},f))},y=function(e,t){var i;(i=e.match(g))&&r.removeInLine(t,e.length-i[0].length,e.length),(i=e.match(m))&&r.removeInLine(t,i[1].length,i[0].length)},w=function(e,i){if(m.test(e))return!0;for(var n=t.getTokens(i),r=0;r<n.length;r++)if("comment"===n[r].type)return!0}}function b(e){for(var t=i;t<=n;t++)e(r.getLine(t),t)}var C=1/0;b(function(e,t){var i=e.search(/\S/);-1!==i?(i<l&&(l=i),s&&!w(e,t)&&(s=!1)):C>e.length&&(C=e.length)}),l==1/0&&(l=C,o=!1,s=!1),h&&l%c!=0&&(l=Math.floor(l/c)*c),b(s?y:v)},this.toggleBlockComment=function(e,t,i,n){var r=this.blockComment;if(r){!r.start&&r[0]&&(r=r[0]);var o,s,a=(m=new l(t,n.row,n.column)).getCurrentToken(),h=(t.selection,t.selection.toOrientedRange());if(a&&/comment/.test(a.type)){for(var u,d;a&&/comment/.test(a.type);){if(-1!=(g=a.value.indexOf(r.start))){var f=m.getCurrentTokenRow(),p=m.getCurrentTokenColumn()+g;u=new c(f,p,f,p+r.start.length);break}a=m.stepBackward()}var m;for(a=(m=new l(t,n.row,n.column)).getCurrentToken();a&&/comment/.test(a.type);){var g;if(-1!=(g=a.value.indexOf(r.end))){f=m.getCurrentTokenRow(),p=m.getCurrentTokenColumn()+g;d=new c(f,p,f,p+r.end.length);break}a=m.stepForward()}d&&t.remove(d),u&&(t.remove(u),o=u.start.row,s=-r.start.length)}else s=r.start.length,o=i.start.row,t.insert(i.end,r.end),t.insert(i.start,r.start);h.start.row==o&&(h.start.column+=s),h.end.row==o&&(h.end.column+=s),t.selection.fromOrientedRange(h)}},this.getNextLineIndent=function(e,t,i){return this.$getIndent(t)},this.checkOutdent=function(e,t,i){return!1},this.autoOutdent=function(e,t,i){},this.$getIndent=function(e){return e.match(/^\s*/)[0]},this.createWorker=function(e){return null},this.createModeDelegates=function(e){for(var t in this.$embeds=[],this.$modes={},e)e[t]&&(this.$embeds.push(t),this.$modes[t]=new e[t]);var i=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"];for(t=0;t<i.length;t++)!function(e){var n=i[t],r=e[n];e[i[t]]=function(){return this.$delegator(n,arguments,r)}}(this)},this.$delegator=function(e,t,i){var n=t[0];"string"!=typeof n&&(n=n[0]);for(var r=0;r<this.$embeds.length;r++)if(this.$modes[this.$embeds[r]]){var o=n.split(this.$embeds[r]);if(!o[0]&&o[1]){t[0]=o[1];var s=this.$modes[this.$embeds[r]];return s[e].apply(s,t)}}var a=i.apply(this,t);return i?a:void 0},this.transformAction=function(e,t,i,n,r){if(this.$behaviour){var o=this.$behaviour.getBehaviours();for(var s in o)if(o[s][t]){var a=o[s][t].apply(this,arguments);if(a)return a}}},this.getKeywords=function(e){if(!this.completionKeywords){var t=this.$tokenizer.rules,i=[];for(var n in t)for(var r=t[n],o=0,s=r.length;o<s;o++)if("string"==typeof r[o].token)/keyword|support|storage/.test(r[o].token)&&i.push(r[o].regex);else if("object"==typeof r[o].token)for(var a=0,l=r[o].token.length;a<l;a++)if(/keyword|support|storage/.test(r[o].token[a])){n=r[o].regex.match(/\(.+?\)/g)[a];i.push(n.substr(1,n.length-2))}this.completionKeywords=i}return e?i.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(e,t,i,n){return(this.$keywordList||this.$createKeywordList()).map(function(e){return{name:e,value:e,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(h.prototype),t.Mode=h}),ace.define("ace/apply_delta",["require","exports","module"],function(e,t,i){"use strict";t.applyDelta=function(e,t,i){var n=t.start.row,r=t.start.column,o=e[n]||"";switch(t.action){case"insert":if(1===t.lines.length)e[n]=o.substring(0,r)+t.lines[0]+o.substring(r);else{var s=[n,1].concat(t.lines);e.splice.apply(e,s),e[n]=o.substring(0,r)+e[n],e[n+t.lines.length-1]+=o.substring(r)}break;case"remove":var a=t.end.column,l=t.end.row;n===l?e[n]=o.substring(0,r)+o.substring(a):e.splice(n,l-n+1,o.substring(0,r)+e[l].substring(a))}}}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/event_emitter").EventEmitter,o=t.Anchor=function(e,t,i){this.$onChange=this.onChange.bind(this),this.attach(e),void 0===i?this.setPosition(t.row,t.column):this.setPosition(t,i)};(function(){function e(e,t,i){var n=i?e.column<=t.column:e.column<t.column;return e.row<t.row||e.row==t.row&&n}n.implement(this,r),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(t){if(!(t.start.row==t.end.row&&t.start.row!=this.row||t.start.row>this.row)){var i=function(t,i,n){var r="insert"==t.action,o=(r?1:-1)*(t.end.row-t.start.row),s=(r?1:-1)*(t.end.column-t.start.column),a=t.start,l=r?a:t.end;if(e(i,a,n))return{row:i.row,column:i.column};if(e(l,i,!n))return{row:i.row+o,column:i.column+(i.row==l.row?s:0)};return{row:a.row,column:a.column}}(t,{row:this.row,column:this.column},this.$insertRight);this.setPosition(i.row,i.column,!0)}},this.setPosition=function(e,t,i){var n;if(n=i?{row:e,column:t}:this.$clipPositionToDocument(e,t),this.row!=n.row||this.column!=n.column){var r={row:this.row,column:this.column};this.row=n.row,this.column=n.column,this._signal("change",{old:r,value:n})}},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var i={};return e>=this.document.getLength()?(i.row=Math.max(0,this.document.getLength()-1),i.column=this.document.getLine(i.row).length):e<0?(i.row=0,i.column=0):(i.row=e,i.column=Math.min(this.document.getLine(i.row).length,Math.max(0,t))),t<0&&(i.column=0),i}}).call(o.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./apply_delta").applyDelta,o=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,a=e("./anchor").Anchor,l=function(e){this.$lines=[""],0===e.length?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)};(function(){n.implement(this,o),this.setValue=function(e){var t=this.getLength()-1;this.remove(new s(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new a(this,e,t)},0==="aaa".split(/a/).length?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(e){this.$newLineMode!==e&&(this.$newLineMode=e,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return"\r\n"==e||"\r"==e||"\n"==e},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},this.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{(t=this.getLines(e.start.row,e.end.row))[0]=(t[0]||"").substring(e.start.column);var i=t.length-1;e.end.row-e.start.row==i&&(t[i]=t[i].substring(0,e.end.column))}return t},this.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},this.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},this.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},this.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},this.insertInLine=function(e,t){var i=this.clippedPos(e.row,e.column),n=this.pos(e.row,e.column+t.length);return this.applyDelta({start:i,end:n,action:"insert",lines:[t]},!0),this.clonePos(n)},this.clippedPos=function(e,t){var i=this.getLength();void 0===e?e=i:e<0?e=0:e>=i&&(e=i-1,t=void 0);var n=this.getLine(e);return void 0==t&&(t=n.length),{row:e,column:t=Math.min(Math.max(t,0),n.length)}},this.clonePos=function(e){return{row:e.row,column:e.column}},this.pos=function(e,t){return{row:e,column:t}},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},this.insertFullLines=function(e,t){var i=0;(e=Math.min(Math.max(e,0),this.getLength()))<this.getLength()?(t=t.concat([""]),i=0):(t=[""].concat(t),e--,i=this.$lines[e].length),this.insertMergedLines({row:e,column:i},t)},this.insertMergedLines=function(e,t){var i=this.clippedPos(e.row,e.column),n={row:i.row+t.length-1,column:(1==t.length?i.column:0)+t[t.length-1].length};return this.applyDelta({start:i,end:n,action:"insert",lines:t}),this.clonePos(n)},this.remove=function(e){var t=this.clippedPos(e.start.row,e.start.column),i=this.clippedPos(e.end.row,e.end.column);return this.applyDelta({start:t,end:i,action:"remove",lines:this.getLinesForRange({start:t,end:i})}),this.clonePos(t)},this.removeInLine=function(e,t,i){var n=this.clippedPos(e,t),r=this.clippedPos(e,i);return this.applyDelta({start:n,end:r,action:"remove",lines:this.getLinesForRange({start:n,end:r})},!0),this.clonePos(n)},this.removeFullLines=function(e,t){e=Math.min(Math.max(0,e),this.getLength()-1);var i=(t=Math.min(Math.max(0,t),this.getLength()-1))==this.getLength()-1&&e>0,n=t<this.getLength()-1,r=i?e-1:e,o=i?this.getLine(r).length:0,a=n?t+1:t,l=n?0:this.getLine(a).length,c=new s(r,o,a,l),h=this.$lines.slice(e,t+1);return this.applyDelta({start:c.start,end:c.end,action:"remove",lines:this.getLinesForRange(c)}),h},this.removeNewLine=function(e){e<this.getLength()-1&&e>=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},this.replace=function(e,t){return e instanceof s||(e=s.fromPoints(e.start,e.end)),0===t.length&&e.isEmpty()?e.start:t==this.getTextRange(e)?e.end:(this.remove(e),t?this.insert(e.start,t):e.start)},this.applyDeltas=function(e){for(var t=0;t<e.length;t++)this.applyDelta(e[t])},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--)this.revertDelta(e[t])},this.applyDelta=function(e,t){var i="insert"==e.action;(i?e.lines.length<=1&&!e.lines[0]:!s.comparePoints(e.start,e.end))||(i&&e.lines.length>2e4&&this.$splitAndapplyLargeDelta(e,2e4),r(this.$lines,e,t),this._signal("change",e))},this.$splitAndapplyLargeDelta=function(e,t){for(var i=e.lines,n=i.length,r=e.start.row,o=e.start.column,s=0,a=0;;){s=a,a+=t-1;var l=i.slice(s,a);if(a>n){e.lines=l,e.start.row=r+s,e.start.column=o;break}l.push(""),this.applyDelta({start:this.pos(r+s,o),end:this.pos(r+a,o=0),action:e.action,lines:l},!0)}},this.revertDelta=function(e){this.applyDelta({start:this.clonePos(e.start),end:this.clonePos(e.end),action:"insert"==e.action?"remove":"insert",lines:e.lines.slice()})},this.indexToPosition=function(e,t){for(var i=this.$lines||this.getAllLines(),n=this.getNewLineCharacter().length,r=t||0,o=i.length;r<o;r++)if((e-=i[r].length+n)<0)return{row:r,column:e+i[r].length+n};return{row:o-1,column:i[o-1].length}},this.positionToIndex=function(e,t){for(var i=this.$lines||this.getAllLines(),n=this.getNewLineCharacter().length,r=0,o=Math.min(e.row,i.length),s=t||0;s<o;++s)r+=i[s].length+n;return r+e.column}}).call(l.prototype),t.Document=l}),ace.define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/event_emitter").EventEmitter,o=function(e,t){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=e;var i=this;this.$worker=function(){if(i.running){for(var e=new Date,t=i.currentLine,n=-1,r=i.doc,o=t;i.lines[t];)t++;var s=r.getLength(),a=0;for(i.running=!1;t<s;){i.$tokenizeRow(t),n=t;do{t++}while(i.lines[t]);if(++a%5==0&&new Date-e>20){i.running=setTimeout(i.$worker,20);break}}i.currentLine=t,o<=n&&i.fireUpdateEvent(o,n)}}};(function(){n.implement(this,r),this.setTokenizer=function(e){this.tokenizer=e,this.lines=[],this.states=[],this.start(0)},this.setDocument=function(e){this.doc=e,this.lines=[],this.states=[],this.stop()},this.fireUpdateEvent=function(e,t){var i={first:e,last:t};this._signal("update",{data:i})},this.start=function(e){this.currentLine=Math.min(e||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},this.$updateOnChange=function(e){var t=e.start.row,i=e.end.row-t;if(0===i)this.lines[t]=null;else if("remove"==e.action)this.lines.splice(t,i+1,null),this.states.splice(t,i+1,null);else{var n=Array(i+1);n.unshift(t,1),this.lines.splice.apply(this.lines,n),this.states.splice.apply(this.states,n)}this.currentLine=Math.min(t,this.currentLine,this.doc.getLength()),this.stop()},this.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},this.getTokens=function(e){return this.lines[e]||this.$tokenizeRow(e)},this.getState=function(e){return this.currentLine==e&&this.$tokenizeRow(e),this.states[e]||"start"},this.$tokenizeRow=function(e){var t=this.doc.getLine(e),i=this.states[e-1],n=this.tokenizer.getLineTokens(t,i,e);return this.states[e]+""!=n.state+""?(this.states[e]=n.state,this.lines[e+1]=null,this.currentLine>e+1&&(this.currentLine=e+1)):this.currentLine==e&&(this.currentLine=e+1),this.lines[e]=n.tokens}}).call(o.prototype),t.BackgroundTokenizer=o}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,i){"use strict";var n=e("./lib/lang"),r=(e("./lib/oop"),e("./range").Range),o=function(e,t,i){this.setRegexp(e),this.clazz=t,this.type=i||"text"};(function(){this.MAX_RANGES=500,this.setRegexp=function(e){this.regExp+""!=e+""&&(this.regExp=e,this.cache=[])},this.update=function(e,t,i,o){if(this.regExp)for(var s=o.firstRow,a=o.lastRow,l=s;l<=a;l++){var c=this.cache[l];null==c&&((c=n.getMatchOffsets(i.getLine(l),this.regExp)).length>this.MAX_RANGES&&(c=c.slice(0,this.MAX_RANGES)),c=c.map(function(e){return new r(l,e.offset,l,e.offset+e.length)}),this.cache[l]=c.length?c:"");for(var h=c.length;h--;)t.drawSingleLineMarker(e,c[h].toScreenRange(i),this.clazz,o)}}}).call(o.prototype),t.SearchHighlight=o}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("../range").Range;function r(e,t){this.foldData=e,Array.isArray(t)?this.folds=t:t=this.folds=[t];var i=t[t.length-1];this.range=new n(t[0].start.row,t[0].start.column,i.end.row,i.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(e){e.setFoldLine(this)},this)}(function(){this.shiftRow=function(e){this.start.row+=e,this.end.row+=e,this.folds.forEach(function(t){t.start.row+=e,t.end.row+=e})},this.addFold=function(e){if(e.sameRow){if(e.start.row<this.startRow||e.endRow>this.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(e),this.folds.sort(function(e,t){return-e.range.compareEnd(t.start.row,t.start.column)}),this.range.compareEnd(e.start.row,e.start.column)>0?(this.end.row=e.end.row,this.end.column=e.end.column):this.range.compareStart(e.end.row,e.end.column)<0&&(this.start.row=e.start.row,this.start.column=e.start.column)}else if(e.start.row==this.end.row)this.folds.push(e),this.end.row=e.end.row,this.end.column=e.end.column;else{if(e.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(e),this.start.row=e.start.row,this.start.column=e.start.column}e.foldLine=this},this.containsRow=function(e){return e>=this.start.row&&e<=this.end.row},this.walk=function(e,t,i){var n,r,o=0,s=this.folds,a=!0;null==t&&(t=this.end.row,i=this.end.column);for(var l=0;l<s.length;l++){if(-1==(r=(n=s[l]).range.compareStart(t,i)))return void e(null,t,i,o,a);if(!e(null,n.start.row,n.start.column,o,a)&&e(n.placeholder,n.start.row,n.start.column,o)||0===r)return;a=!n.sameRow,o=n.end.column}e(null,t,i,o,a)},this.getNextFoldTo=function(e,t){for(var i,n,r=0;r<this.folds.length;r++){if(-1==(n=(i=this.folds[r]).range.compareEnd(e,t)))return{fold:i,kind:"after"};if(0===n)return{fold:i,kind:"inside"}}return null},this.addRemoveChars=function(e,t,i){var n,r,o=this.getNextFoldTo(e,t);if(o)if(n=o.fold,"inside"==o.kind&&n.start.column!=t&&n.start.row!=e)window.console&&window.console.log(e,t,n);else if(n.start.row==e){var s=(r=this.folds).indexOf(n);for(0===s&&(this.start.column+=i);s<r.length;s++){if((n=r[s]).start.column+=i,!n.sameRow)return;n.end.column+=i}this.end.column+=i}},this.split=function(e,t){var i=this.getNextFoldTo(e,t);if(!i||"inside"==i.kind)return null;var n=i.fold,o=this.folds,s=this.foldData,a=o.indexOf(n),l=o[a-1];this.end.row=l.end.row,this.end.column=l.end.column;var c=new r(s,o=o.splice(a,o.length-a));return s.splice(s.indexOf(this)+1,0,c),c},this.merge=function(e){for(var t=e.folds,i=0;i<t.length;i++)this.addFold(t[i]);var n=this.foldData;n.splice(n.indexOf(e),1)},this.toString=function(){var e=[this.range.toString()+": ["];return this.folds.forEach(function(t){e.push(" "+t.toString())}),e.push("]"),e.join("\n")},this.idxToPosition=function(e){for(var t=0,i=0;i<this.folds.length;i++){var n=this.folds[i];if((e-=n.start.column-t)<0)return{row:n.start.row,column:n.start.column+e};if((e-=n.placeholder.length)<0)return n.start;t=n.end.column}return{row:this.end.row,column:this.end.column+e}}}).call(r.prototype),t.FoldLine=r}),ace.define("ace/range_list",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("./range").Range.comparePoints,r=function(){this.ranges=[]};(function(){this.comparePoints=n,this.pointIndex=function(e,t,i){for(var r=this.ranges,o=i||0;o<r.length;o++){var s=r[o],a=n(e,s.end);if(!(a>0)){var l=n(e,s.start);return 0===a?t&&0!==l?-o-2:o:l>0||0===l&&!t?o:-o-1}}return-o-1},this.add=function(e){var t=!e.isEmpty(),i=this.pointIndex(e.start,t);i<0&&(i=-i-1);var n=this.pointIndex(e.end,t,i);return n<0?n=-n-1:n++,this.ranges.splice(i,n-i,e)},this.addList=function(e){for(var t=[],i=e.length;i--;)t.push.apply(t,this.add(e[i]));return t},this.substractPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges.splice(t,1)},this.merge=function(){for(var e,t=[],i=this.ranges,r=(i=i.sort(function(e,t){return n(e.start,t.start)}))[0],o=1;o<i.length;o++){e=r,r=i[o];var s=n(e.end,r.start);s<0||(0!=s||e.isEmpty()||r.isEmpty())&&(n(e.end,r.end)<0&&(e.end.row=r.end.row,e.end.column=r.end.column),i.splice(o,1),t.push(r),r=e,o--)}return this.ranges=i,t},this.contains=function(e,t){return this.pointIndex({row:e,column:t})>=0},this.containsPoint=function(e){return this.pointIndex(e)>=0},this.rangeAtPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges[t]},this.clipRows=function(e,t){var i=this.ranges;if(i[0].start.row>t||i[i.length-1].start.row<e)return[];var n=this.pointIndex({row:e,column:0});n<0&&(n=-n-1);var r=this.pointIndex({row:t,column:0},n);r<0&&(r=-r-1);for(var o=[],s=n;s<r;s++)o.push(i[s]);return o},this.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},this.attach=function(e){this.session&&this.detach(),this.session=e,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},this.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)},this.$onChange=function(e){if("insert"==e.action)var t=e.start,i=e.end;else i=e.start,t=e.end;for(var n=t.row,r=i.row-n,o=-t.column+i.column,s=this.ranges,a=0,l=s.length;a<l;a++){if(!((c=s[a]).end.row<n)){if(c.start.row>n)break;if(c.start.row==n&&c.start.column>=t.column&&(c.start.column==t.column&&this.$insertRight||(c.start.column+=o,c.start.row+=r)),c.end.row==n&&c.end.column>=t.column){if(c.end.column==t.column&&this.$insertRight)continue;c.end.column==t.column&&o>0&&a<l-1&&c.end.column>c.start.column&&c.end.column==s[a+1].start.column&&(c.end.column-=o),c.end.column+=o,c.end.row+=r}}}if(0!=r&&a<l)for(;a<l;a++){var c;(c=s[a]).start.row+=r,c.end.row+=r}}}).call(r.prototype),t.RangeList=r}),ace.define("ace/edit_session/fold",["require","exports","module","ace/range","ace/range_list","ace/lib/oop"],function(e,t,i){"use strict";e("../range").Range;var n=e("../range_list").RangeList,r=e("../lib/oop"),o=t.Fold=function(e,t){this.foldLine=null,this.placeholder=t,this.range=e,this.start=e.start,this.end=e.end,this.sameRow=e.start.row==e.end.row,this.subFolds=this.ranges=[]};function s(e,t){e.row-=t.row,0==e.row&&(e.column-=t.column)}function a(e,t){0==e.row&&(e.column+=t.column),e.row+=t.row}r.inherits(o,n),function(){this.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},this.setFoldLine=function(e){this.foldLine=e,this.subFolds.forEach(function(t){t.setFoldLine(e)})},this.clone=function(){var e=this.range.clone(),t=new o(e,this.placeholder);return this.subFolds.forEach(function(e){t.subFolds.push(e.clone())}),t.collapseChildren=this.collapseChildren,t},this.addSubFold=function(e){if(!this.range.isEqual(e)){if(!this.range.containsRange(e))throw new Error("A fold can't intersect already existing fold"+e.range+this.range);!function(e,t){s(e.start,t),s(e.end,t)}(e,this.start);for(var t=e.start.row,i=e.start.column,n=0,r=-1;n<this.subFolds.length&&1==(r=this.subFolds[n].range.compare(t,i));n++);var o=this.subFolds[n];if(0==r)return o.addSubFold(e);t=e.range.end.row,i=e.range.end.column;var a=n;for(r=-1;a<this.subFolds.length&&1==(r=this.subFolds[a].range.compare(t,i));a++);this.subFolds[a];if(0==r)throw new Error("A fold can't intersect already existing fold"+e.range+this.range);this.subFolds.splice(n,a-n,e);return e.setFoldLine(this.foldLine),e}},this.restoreRange=function(e){return function(e,t){a(e.start,t),a(e.end,t)}(e,this.start)}}.call(o.prototype)}),ace.define("ace/edit_session/folding",["require","exports","module","ace/range","ace/edit_session/fold_line","ace/edit_session/fold","ace/token_iterator"],function(e,t,i){"use strict";var n=e("../range").Range,r=e("./fold_line").FoldLine,o=e("./fold").Fold,s=e("../token_iterator").TokenIterator;t.Folding=function(){this.getFoldAt=function(e,t,i){var n=this.getFoldLine(e);if(!n)return null;for(var r=n.folds,o=0;o<r.length;o++){var s=r[o];if(s.range.contains(e,t)){if(1==i&&s.range.isEnd(e,t))continue;if(-1==i&&s.range.isStart(e,t))continue;return s}}},this.getFoldsInRange=function(e){var t=e.start,i=e.end,n=this.$foldData,r=[];t.column+=1,i.column-=1;for(var o=0;o<n.length;o++){var s=n[o].range.compareRange(e);if(2!=s){if(-2==s)break;for(var a=n[o].folds,l=0;l<a.length;l++){var c=a[l];if(-2==(s=c.range.compareRange(e)))break;if(2!=s){if(42==s)break;r.push(c)}}}}return t.column-=1,i.column+=1,r},this.getFoldsInRangeList=function(e){if(Array.isArray(e)){var t=[];e.forEach(function(e){t=t.concat(this.getFoldsInRange(e))},this)}else t=this.getFoldsInRange(e);return t},this.getAllFolds=function(){for(var e=[],t=this.$foldData,i=0;i<t.length;i++)for(var n=0;n<t[i].folds.length;n++)e.push(t[i].folds[n]);return e},this.getFoldStringAt=function(e,t,i,n){if(!(n=n||this.getFoldLine(e)))return null;for(var r,o,s={end:{column:0}},a=0;a<n.folds.length;a++){var l=(o=n.folds[a]).range.compareEnd(e,t);if(-1==l){r=this.getLine(o.start.row).substring(s.end.column,o.start.column);break}if(0===l)return null;s=o}return r||(r=this.getLine(o.start.row).substring(s.end.column)),-1==i?r.substring(0,t-s.end.column):1==i?r.substring(t-s.end.column):r},this.getFoldLine=function(e,t){var i=this.$foldData,n=0;for(t&&(n=i.indexOf(t)),-1==n&&(n=0);n<i.length;n++){var r=i[n];if(r.start.row<=e&&r.end.row>=e)return r;if(r.end.row>e)return null}return null},this.getNextFoldLine=function(e,t){var i=this.$foldData,n=0;for(t&&(n=i.indexOf(t)),-1==n&&(n=0);n<i.length;n++){var r=i[n];if(r.end.row>=e)return r}return null},this.getFoldedRowCount=function(e,t){for(var i=this.$foldData,n=t-e+1,r=0;r<i.length;r++){var o=i[r],s=o.end.row,a=o.start.row;if(s>=t){a<t&&(a>=e?n-=t-a:n=0);break}s>=e&&(n-=a>=e?s-a:s-e+1)}return n},this.$addFoldLine=function(e){return this.$foldData.push(e),this.$foldData.sort(function(e,t){return e.start.row-t.start.row}),e},this.addFold=function(e,t){var i,n=this.$foldData,s=!1;e instanceof o?i=e:(i=new o(t,e)).collapseChildren=t.collapseChildren,this.$clipRangeToDocument(i.range);var a=i.start.row,l=i.start.column,c=i.end.row,h=i.end.column;if(!(a<c||a==c&&l<=h-2))throw new Error("The range has to be at least 2 characters width");var u=this.getFoldAt(a,l,1),d=this.getFoldAt(c,h,-1);if(u&&d==u)return u.addSubFold(i);u&&!u.range.isStart(a,l)&&this.removeFold(u),d&&!d.range.isEnd(c,h)&&this.removeFold(d);var f=this.getFoldsInRange(i.range);f.length>0&&(this.removeFolds(f),f.forEach(function(e){i.addSubFold(e)}));for(var p=0;p<n.length;p++){var m=n[p];if(c==m.start.row){m.addFold(i),s=!0;break}if(a==m.end.row){if(m.addFold(i),s=!0,!i.sameRow){var g=n[p+1];if(g&&g.start.row==c){m.merge(g);break}}break}if(c<=m.start.row)break}return s||(m=this.$addFoldLine(new r(this.$foldData,i))),this.$useWrapMode?this.$updateWrapData(m.start.row,m.start.row):this.$updateRowLengthCache(m.start.row,m.start.row),this.$modified=!0,this._signal("changeFold",{data:i,action:"add"}),i},this.addFolds=function(e){e.forEach(function(e){this.addFold(e)},this)},this.removeFold=function(e){var t=e.foldLine,i=t.start.row,n=t.end.row,r=this.$foldData,o=t.folds;if(1==o.length)r.splice(r.indexOf(t),1);else if(t.range.isEnd(e.end.row,e.end.column))o.pop(),t.end.row=o[o.length-1].end.row,t.end.column=o[o.length-1].end.column;else if(t.range.isStart(e.start.row,e.start.column))o.shift(),t.start.row=o[0].start.row,t.start.column=o[0].start.column;else if(e.sameRow)o.splice(o.indexOf(e),1);else{var s=t.split(e.start.row,e.start.column);(o=s.folds).shift(),s.start.row=o[0].start.row,s.start.column=o[0].start.column}this.$updating||(this.$useWrapMode?this.$updateWrapData(i,n):this.$updateRowLengthCache(i,n)),this.$modified=!0,this._signal("changeFold",{data:e,action:"remove"})},this.removeFolds=function(e){for(var t=[],i=0;i<e.length;i++)t.push(e[i]);t.forEach(function(e){this.removeFold(e)},this),this.$modified=!0},this.expandFold=function(e){this.removeFold(e),e.subFolds.forEach(function(t){e.restoreRange(t),this.addFold(t)},this),e.collapseChildren>0&&this.foldAll(e.start.row+1,e.end.row,e.collapseChildren-1),e.subFolds=[]},this.expandFolds=function(e){e.forEach(function(e){this.expandFold(e)},this)},this.unfold=function(e,t){var i,r;if(null==e?(i=new n(0,0,this.getLength(),0),t=!0):i="number"==typeof e?new n(e,0,e,this.getLine(e).length):"row"in e?n.fromPoints(e,e):e,r=this.getFoldsInRangeList(i),t)this.removeFolds(r);else for(var o=r;o.length;)this.expandFolds(o),o=this.getFoldsInRangeList(i);if(r.length)return r},this.isRowFolded=function(e,t){return!!this.getFoldLine(e,t)},this.getRowFoldEnd=function(e,t){var i=this.getFoldLine(e,t);return i?i.end.row:e},this.getRowFoldStart=function(e,t){var i=this.getFoldLine(e,t);return i?i.start.row:e},this.getFoldDisplayLine=function(e,t,i,n,r){null==n&&(n=e.start.row),null==r&&(r=0),null==t&&(t=e.end.row),null==i&&(i=this.getLine(t).length);var o=this.doc,s="";return e.walk(function(e,t,i,a){if(!(t<n)){if(t==n){if(i<r)return;a=Math.max(r,a)}s+=null!=e?e:o.getLine(t).substring(a,i)}},t,i),s},this.getDisplayLine=function(e,t,i,n){var r,o=this.getFoldLine(e);return o?this.getFoldDisplayLine(o,e,t,i,n):(r=this.doc.getLine(e)).substring(n||0,t||r.length)},this.$cloneFoldData=function(){var e=[];return e=this.$foldData.map(function(t){var i=t.folds.map(function(e){return e.clone()});return new r(e,i)})},this.toggleFold=function(e){var t,i,n=this.selection.getRange();if(n.isEmpty()){var r=n.start;if(t=this.getFoldAt(r.row,r.column))return void this.expandFold(t);(i=this.findMatchingBracket(r))?1==n.comparePoint(i)?n.end=i:(n.start=i,n.start.column++,n.end.column--):(i=this.findMatchingBracket({row:r.row,column:r.column+1}))?(1==n.comparePoint(i)?n.end=i:n.start=i,n.start.column++):n=this.getCommentFoldRange(r.row,r.column)||n}else{var o=this.getFoldsInRange(n);if(e&&o.length)return void this.expandFolds(o);1==o.length&&(t=o[0])}if(t||(t=this.getFoldAt(n.start.row,n.start.column)),t&&t.range.toString()==n.toString())this.expandFold(t);else{var s="...";if(!n.isMultiLine()){if((s=this.getTextRange(n)).length<4)return;s=s.trim().substring(0,2)+".."}this.addFold(s,n)}},this.getCommentFoldRange=function(e,t,i){var r=new s(this,e,t),o=r.getCurrentToken();if(o&&/^comment|string/.test(o.type)){var a=new n,l=new RegExp(o.type.replace(/\..*/,"\\."));if(1!=i){do{o=r.stepBackward()}while(o&&l.test(o.type));r.stepForward()}if(a.start.row=r.getCurrentTokenRow(),a.start.column=r.getCurrentTokenColumn()+2,r=new s(this,e,t),-1!=i){do{o=r.stepForward()}while(o&&l.test(o.type));o=r.stepBackward()}else o=r.getCurrentToken();return a.end.row=r.getCurrentTokenRow(),a.end.column=r.getCurrentTokenColumn()+o.value.length-2,a}},this.foldAll=function(e,t,i){void 0==i&&(i=1e5);var n=this.foldWidgets;if(n){t=t||this.getLength();for(var r=e=e||0;r<t;r++)if(null==n[r]&&(n[r]=this.getFoldWidget(r)),"start"==n[r]){var o=this.getFoldWidgetRange(r);if(o&&o.isMultiLine()&&o.end.row<=t&&o.start.row>=e){r=o.end.row;try{var s=this.addFold("...",o);s&&(s.collapseChildren=i)}catch(e){}}}}},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(e){if(!this.$foldStyles[e])throw new Error("invalid fold style: "+e+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle!=e){this.$foldStyle=e,"manual"==e&&this.unfold();var t=this.$foldMode;this.$setFolding(null),this.$setFolding(t)}},this.$setFolding=function(e){this.$foldMode!=e&&(this.$foldMode=e,this.off("change",this.$updateFoldWidgets),this.off("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets),this._signal("changeAnnotation"),e&&"manual"!=this.$foldStyle?(this.foldWidgets=[],this.getFoldWidget=e.getFoldWidget.bind(e,this,this.$foldStyle),this.getFoldWidgetRange=e.getFoldWidgetRange.bind(e,this,this.$foldStyle),this.$updateFoldWidgets=this.updateFoldWidgets.bind(this),this.$tokenizerUpdateFoldWidgets=this.tokenizerUpdateFoldWidgets.bind(this),this.on("change",this.$updateFoldWidgets),this.on("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets)):this.foldWidgets=null)},this.getParentFoldRangeData=function(e,t){var i=this.foldWidgets;if(!i||t&&i[e])return{};for(var n,r=e-1;r>=0;){var o=i[r];if(null==o&&(o=i[r]=this.getFoldWidget(r)),"start"==o){var s=this.getFoldWidgetRange(r);if(n||(n=s),s&&s.end.row>=e)break}r--}return{range:-1!==r&&s,firstRange:n}},this.onFoldWidgetClick=function(e,t){var i={children:(t=t.domEvent).shiftKey,all:t.ctrlKey||t.metaKey,siblings:t.altKey};if(!this.$toggleFoldWidget(e,i)){var n=t.target||t.srcElement;n&&/ace_fold-widget/.test(n.className)&&(n.className+=" ace_invalid")}},this.$toggleFoldWidget=function(e,t){if(this.getFoldWidget){var i=this.getFoldWidget(e),n=this.getLine(e),r="end"===i?-1:1,o=this.getFoldAt(e,-1===r?0:n.length,r);if(o)t.children||t.all?this.removeFold(o):this.expandFold(o);else{var s=this.getFoldWidgetRange(e,!0);if(!s||s.isMultiLine()||!(o=this.getFoldAt(s.start.row,s.start.column,1))||!s.isEqual(o.range)){if(t.siblings){var a=this.getParentFoldRangeData(e);if(a.range)var l=a.range.start.row+1,c=a.range.end.row;this.foldAll(l,c,t.all?1e4:0)}else t.children?(c=s?s.end.row:this.getLength(),this.foldAll(e+1,c,t.all?1e4:0)):s&&(t.all&&(s.collapseChildren=1e4),this.addFold("...",s));return s}this.removeFold(o)}}},this.toggleFoldWidget=function(e){var t=this.selection.getCursor().row;t=this.getRowFoldStart(t);var i=this.$toggleFoldWidget(t,{});if(!i){var n=this.getParentFoldRangeData(t,!0);if(i=n.range||n.firstRange){t=i.start.row;var r=this.getFoldAt(t,this.getLine(t).length,1);r?this.removeFold(r):this.addFold("...",i)}}},this.updateFoldWidgets=function(e){var t=e.start.row,i=e.end.row-t;if(0===i)this.foldWidgets[t]=null;else if("remove"==e.action)this.foldWidgets.splice(t,i+1,null);else{var n=Array(i+1);n.unshift(t,1),this.foldWidgets.splice.apply(this.foldWidgets,n)}},this.tokenizerUpdateFoldWidgets=function(e){var t=e.data;t.first!=t.last&&this.foldWidgets.length>t.first&&this.foldWidgets.splice(t.first,this.foldWidgets.length)}}}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,t,i){"use strict";var n=e("../token_iterator").TokenIterator,r=e("../range").Range;t.BracketMatch=function(){this.findMatchingBracket=function(e,t){if(0==e.column)return null;var i=t||this.getLine(e.row).charAt(e.column-1);if(""==i)return null;var n=i.match(/([\(\[\{])|([\)\]\}])/);return n?n[1]?this.$findClosingBracket(n[1],e):this.$findOpeningBracket(n[2],e):null},this.getBracketRange=function(e){var t,i=this.getLine(e.row),n=!0,o=i.charAt(e.column-1),s=o&&o.match(/([\(\[\{])|([\)\]\}])/);if(s||(o=i.charAt(e.column),e={row:e.row,column:e.column+1},s=o&&o.match(/([\(\[\{])|([\)\]\}])/),n=!1),!s)return null;if(s[1]){if(!(a=this.$findClosingBracket(s[1],e)))return null;t=r.fromPoints(e,a),n||(t.end.column++,t.start.column--),t.cursor=t.end}else{var a;if(!(a=this.$findOpeningBracket(s[2],e)))return null;t=r.fromPoints(a,e),n||(t.start.column++,t.end.column--),t.cursor=t.start}return t},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{"},this.$findOpeningBracket=function(e,t,i){var r=this.$brackets[e],o=1,s=new n(this,t.row,t.column),a=s.getCurrentToken();if(a||(a=s.stepForward()),a){i||(i=new RegExp("(\\.?"+a.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)")+")+"));for(var l=t.column-s.getCurrentTokenColumn()-2,c=a.value;;){for(;l>=0;){var h=c.charAt(l);if(h==r){if(0==(o-=1))return{row:s.getCurrentTokenRow(),column:l+s.getCurrentTokenColumn()}}else h==e&&(o+=1);l-=1}do{a=s.stepBackward()}while(a&&!i.test(a.type));if(null==a)break;l=(c=a.value).length-1}return null}},this.$findClosingBracket=function(e,t,i){var r=this.$brackets[e],o=1,s=new n(this,t.row,t.column),a=s.getCurrentToken();if(a||(a=s.stepForward()),a){i||(i=new RegExp("(\\.?"+a.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)")+")+"));for(var l=t.column-s.getCurrentTokenColumn();;){for(var c=a.value,h=c.length;l<h;){var u=c.charAt(l);if(u==r){if(0==(o-=1))return{row:s.getCurrentTokenRow(),column:l+s.getCurrentTokenColumn()}}else u==e&&(o+=1);l+=1}do{a=s.stepForward()}while(a&&!i.test(a.type));if(null==a)break;l=0}return null}}}}),ace.define("ace/edit_session",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/config","ace/lib/event_emitter","ace/selection","ace/mode/text","ace/range","ace/document","ace/background_tokenizer","ace/search_highlight","ace/edit_session/folding","ace/edit_session/bracket_match"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/lang"),o=e("./config"),s=e("./lib/event_emitter").EventEmitter,a=e("./selection").Selection,l=e("./mode/text").Mode,c=e("./range").Range,h=e("./document").Document,u=e("./background_tokenizer").BackgroundTokenizer,d=e("./search_highlight").SearchHighlight,f=function(e,t){this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$foldData=[],this.$foldData.toString=function(){return this.join("\n")},this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this),"object"==typeof e&&e.getLine||(e=new h(e)),this.setDocument(e),this.selection=new a(this),o.resetOptions(this),this.setMode(t),o._signal("session",this)};(function(){n.implement(this,s),this.setDocument=function(e){this.doc&&this.doc.removeListener("change",this.$onChange),this.doc=e,e.on("change",this.$onChange),this.bgTokenizer&&this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},this.getDocument=function(){return this.doc},this.$resetRowCache=function(e){if(!e)return this.$docRowCache=[],void(this.$screenRowCache=[]);var t=this.$docRowCache.length,i=this.$getRowCacheIndex(this.$docRowCache,e)+1;t>i&&(this.$docRowCache.splice(i,t),this.$screenRowCache.splice(i,t))},this.$getRowCacheIndex=function(e,t){for(var i=0,n=e.length-1;i<=n;){var r=i+n>>1,o=e[r];if(t>o)i=r+1;else{if(!(t<o))return r;n=r-1}}return i-1},this.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.bgTokenizer&&this.bgTokenizer.start(0)},this.onChangeFold=function(e){var t=e.data;this.$resetRowCache(t.start.row)},this.onChange=function(e){this.$modified=!0,this.$resetRowCache(e.start.row);var t=this.$updateInternalDataOnChange(e);this.$fromUndo||!this.$undoManager||e.ignore||(this.$deltasDoc.push(e),t&&0!=t.length&&this.$deltasFold.push({action:"removeFolds",folds:t}),this.$informUndoManager.schedule()),this.bgTokenizer&&this.bgTokenizer.$updateOnChange(e),this._signal("change",e)},this.setValue=function(e){this.doc.setValue(e),this.selection.moveTo(0,0),this.$resetRowCache(0),this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},this.getValue=this.toString=function(){return this.doc.getValue()},this.getSelection=function(){return this.selection},this.getState=function(e){return this.bgTokenizer.getState(e)},this.getTokens=function(e){return this.bgTokenizer.getTokens(e)},this.getTokenAt=function(e,t){var i,n=this.bgTokenizer.getTokens(e),r=0;if(null==t)o=n.length-1,r=this.getLine(e).length;else for(var o=0;o<n.length&&!((r+=n[o].value.length)>=t);o++);return(i=n[o])?(i.index=o,i.start=r-i.value.length,i):null},this.setUndoManager=function(e){if(this.$undoManager=e,this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.$informUndoManager&&this.$informUndoManager.cancel(),e){var t=this;this.$syncInformUndoManager=function(){t.$informUndoManager.cancel(),t.$deltasFold.length&&(t.$deltas.push({group:"fold",deltas:t.$deltasFold}),t.$deltasFold=[]),t.$deltasDoc.length&&(t.$deltas.push({group:"doc",deltas:t.$deltasDoc}),t.$deltasDoc=[]),t.$deltas.length>0&&e.execute({action:"aceupdate",args:[t.$deltas,t],merge:t.mergeUndoDeltas}),t.mergeUndoDeltas=!1,t.$deltas=[]},this.$informUndoManager=r.delayedCall(this.$syncInformUndoManager)}},this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},this.$defaultUndoManager={undo:function(){},redo:function(){},reset:function(){}},this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},this.getTabString=function(){return this.getUseSoftTabs()?r.stringRepeat(" ",this.getTabSize()):"\t"},this.setUseSoftTabs=function(e){this.setOption("useSoftTabs",e)},this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},this.setTabSize=function(e){this.setOption("tabSize",e)},this.getTabSize=function(){return this.$tabSize},this.isTabStop=function(e){return this.$useSoftTabs&&e.column%this.$tabSize==0},this.$overwrite=!1,this.setOverwrite=function(e){this.setOption("overwrite",e)},this.getOverwrite=function(){return this.$overwrite},this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},this.addGutterDecoration=function(e,t){this.$decorations[e]||(this.$decorations[e]=""),this.$decorations[e]+=" "+t,this._signal("changeBreakpoint",{})},this.removeGutterDecoration=function(e,t){this.$decorations[e]=(this.$decorations[e]||"").replace(" "+t,""),this._signal("changeBreakpoint",{})},this.getBreakpoints=function(){return this.$breakpoints},this.setBreakpoints=function(e){this.$breakpoints=[];for(var t=0;t<e.length;t++)this.$breakpoints[e[t]]="ace_breakpoint";this._signal("changeBreakpoint",{})},this.clearBreakpoints=function(){this.$breakpoints=[],this._signal("changeBreakpoint",{})},this.setBreakpoint=function(e,t){void 0===t&&(t="ace_breakpoint"),t?this.$breakpoints[e]=t:delete this.$breakpoints[e],this._signal("changeBreakpoint",{})},this.clearBreakpoint=function(e){delete this.$breakpoints[e],this._signal("changeBreakpoint",{})},this.addMarker=function(e,t,i,n){var r=this.$markerId++,o={range:e,type:i||"line",renderer:"function"==typeof i?i:null,clazz:t,inFront:!!n,id:r};return n?(this.$frontMarkers[r]=o,this._signal("changeFrontMarker")):(this.$backMarkers[r]=o,this._signal("changeBackMarker")),r},this.addDynamicMarker=function(e,t){if(e.update){var i=this.$markerId++;return e.id=i,e.inFront=!!t,t?(this.$frontMarkers[i]=e,this._signal("changeFrontMarker")):(this.$backMarkers[i]=e,this._signal("changeBackMarker")),e}},this.removeMarker=function(e){var t=this.$frontMarkers[e]||this.$backMarkers[e];if(t){var i=t.inFront?this.$frontMarkers:this.$backMarkers;t&&(delete i[e],this._signal(t.inFront?"changeFrontMarker":"changeBackMarker"))}},this.getMarkers=function(e){return e?this.$frontMarkers:this.$backMarkers},this.highlight=function(e){if(!this.$searchHighlight){var t=new d(null,"ace_selected-word","text");this.$searchHighlight=this.addDynamicMarker(t)}this.$searchHighlight.setRegexp(e)},this.highlightLines=function(e,t,i,n){"number"!=typeof t&&(i=t,t=e),i||(i="ace_step");var r=new c(e,0,t,1/0);return r.id=this.addMarker(r,i,"fullLine",n),r},this.setAnnotations=function(e){this.$annotations=e,this._signal("changeAnnotation",{})},this.getAnnotations=function(){return this.$annotations||[]},this.clearAnnotations=function(){this.setAnnotations([])},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r?\n)/m);this.$autoNewLine=t?t[1]:"\n"},this.getWordRange=function(e,t){var i=this.getLine(e),n=!1;if(t>0&&(n=!!i.charAt(t-1).match(this.tokenRe)),n||(n=!!i.charAt(t).match(this.tokenRe)),n)var r=this.tokenRe;else if(/^\s+$/.test(i.slice(t-1,t+1)))r=/\s/;else r=this.nonTokenRe;var o=t;if(o>0){do{o--}while(o>=0&&i.charAt(o).match(r));o++}for(var s=t;s<i.length&&i.charAt(s).match(r);)s++;return new c(e,o,e,s)},this.getAWordRange=function(e,t){for(var i=this.getWordRange(e,t),n=this.getLine(i.end.row);n.charAt(i.end.column).match(/[ \t]/);)i.end.column+=1;return i},this.setNewLineMode=function(e){this.doc.setNewLineMode(e)},this.getNewLineMode=function(){return this.doc.getNewLineMode()},this.setUseWorker=function(e){this.setOption("useWorker",e)},this.getUseWorker=function(){return this.$useWorker},this.onReloadTokenizer=function(e){var t=e.data;this.bgTokenizer.start(t.first),this._signal("tokenizerUpdate",e)},this.$modes={},this.$mode=null,this.$modeId=null,this.setMode=function(e,t){if(e&&"object"==typeof e){if(e.getTokenizer)return this.$onChangeMode(e);var i=e,n=i.path}else n=e||"ace/mode/text";if(this.$modes["ace/mode/text"]||(this.$modes["ace/mode/text"]=new l),this.$modes[n]&&!i)return this.$onChangeMode(this.$modes[n]),void(t&&t());this.$modeId=n,o.loadModule(["mode",n],function(e){if(this.$modeId!==n)return t&&t();this.$modes[n]&&!i?this.$onChangeMode(this.$modes[n]):e&&e.Mode&&(e=new e.Mode(i),i||(this.$modes[n]=e,e.$id=n),this.$onChangeMode(e)),t&&t()}.bind(this)),this.$mode||this.$onChangeMode(this.$modes["ace/mode/text"],!0)},this.$onChangeMode=function(e,t){if(t||(this.$modeId=e.$id),this.$mode!==e){this.$mode=e,this.$stopWorker(),this.$useWorker&&this.$startWorker();var i=e.getTokenizer();if(void 0!==i.addEventListener){var n=this.onReloadTokenizer.bind(this);i.addEventListener("update",n)}if(this.bgTokenizer)this.bgTokenizer.setTokenizer(i);else{this.bgTokenizer=new u(i);var r=this;this.bgTokenizer.addEventListener("update",function(e){r._signal("tokenizerUpdate",e)})}this.bgTokenizer.setDocument(this.getDocument()),this.tokenRe=e.tokenRe,this.nonTokenRe=e.nonTokenRe,t||(e.attachToSession&&e.attachToSession(this),this.$options.wrapMethod.set.call(this,this.$wrapMethod),this.$setFolding(e.foldingRules),this.bgTokenizer.start(0),this._emit("changeMode"))}},this.$stopWorker=function(){this.$worker&&(this.$worker.terminate(),this.$worker=null)},this.$startWorker=function(){try{this.$worker=this.$mode.createWorker(this)}catch(e){o.warn("Could not load worker",e),this.$worker=null}},this.getMode=function(){return this.$mode},this.$scrollTop=0,this.setScrollTop=function(e){this.$scrollTop===e||isNaN(e)||(this.$scrollTop=e,this._signal("changeScrollTop",e))},this.getScrollTop=function(){return this.$scrollTop},this.$scrollLeft=0,this.setScrollLeft=function(e){this.$scrollLeft===e||isNaN(e)||(this.$scrollLeft=e,this._signal("changeScrollLeft",e))},this.getScrollLeft=function(){return this.$scrollLeft},this.getScreenWidth=function(){return this.$computeWidth(),this.lineWidgets?Math.max(this.getLineWidgetMaxWidth(),this.screenWidth):this.screenWidth},this.getLineWidgetMaxWidth=function(){if(null!=this.lineWidgetsWidth)return this.lineWidgetsWidth;var e=0;return this.lineWidgets.forEach(function(t){t&&t.screenWidth>e&&(e=t.screenWidth)}),this.lineWidgetWidth=e},this.$computeWidth=function(e){if(this.$modified||e){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var t=this.doc.getAllLines(),i=this.$rowLengthCache,n=0,r=0,o=this.$foldData[r],s=o?o.start.row:1/0,a=t.length,l=0;l<a;l++){if(l>s){if((l=o.end.row+1)>=a)break;s=(o=this.$foldData[r++])?o.start.row:1/0}null==i[l]&&(i[l]=this.$getStringScreenWidth(t[l])[0]),i[l]>n&&(n=i[l])}this.screenWidth=n}},this.getLine=function(e){return this.doc.getLine(e)},this.getLines=function(e,t){return this.doc.getLines(e,t)},this.getLength=function(){return this.doc.getLength()},this.getTextRange=function(e){return this.doc.getTextRange(e||this.selection.getRange())},this.insert=function(e,t){return this.doc.insert(e,t)},this.remove=function(e){return this.doc.remove(e)},this.removeFullLines=function(e,t){return this.doc.removeFullLines(e,t)},this.undoChanges=function(e,t){if(e.length){this.$fromUndo=!0;for(var i=null,n=e.length-1;-1!=n;n--){var r=e[n];"doc"==r.group?(this.doc.revertDeltas(r.deltas),i=this.$getUndoSelection(r.deltas,!0,i)):r.deltas.forEach(function(e){this.addFolds(e.folds)},this)}return this.$fromUndo=!1,i&&this.$undoSelect&&!t&&this.selection.setSelectionRange(i),i}},this.redoChanges=function(e,t){if(e.length){this.$fromUndo=!0;for(var i=null,n=0;n<e.length;n++){var r=e[n];"doc"==r.group&&(this.doc.applyDeltas(r.deltas),i=this.$getUndoSelection(r.deltas,!1,i))}return this.$fromUndo=!1,i&&this.$undoSelect&&!t&&this.selection.setSelectionRange(i),i}},this.setUndoSelect=function(e){this.$undoSelect=e},this.$getUndoSelection=function(e,t,i){function n(e){return t?"insert"!==e.action:"insert"===e.action}var r,o,s=e[0];n(s)?r=c.fromPoints(s.start,s.end):r=c.fromPoints(s.start,s.start);for(var a=1;a<e.length;a++)n(s=e[a])?(o=s.start,-1==r.compare(o.row,o.column)&&r.setStart(o),o=s.end,1==r.compare(o.row,o.column)&&r.setEnd(o),!0):(o=s.start,-1==r.compare(o.row,o.column)&&(r=c.fromPoints(s.start,s.start)),!1);if(null!=i){0===c.comparePoints(i.start,r.start)&&(i.start.column+=r.end.column-r.start.column,i.end.column+=r.end.column-r.start.column);var l=i.compareRange(r);1==l?r.setStart(i.start):-1==l&&r.setEnd(i.end)}return r},this.replace=function(e,t){return this.doc.replace(e,t)},this.moveText=function(e,t,i){var n=this.getTextRange(e),r=this.getFoldsInRange(e),o=c.fromPoints(t,t);if(!i){this.remove(e);var s=e.start.row-e.end.row;(h=s?-e.end.column:e.start.column-e.end.column)&&(o.start.row==e.end.row&&o.start.column>e.end.column&&(o.start.column+=h),o.end.row==e.end.row&&o.end.column>e.end.column&&(o.end.column+=h)),s&&o.start.row>=e.end.row&&(o.start.row+=s,o.end.row+=s)}if(o.end=this.insert(o.start,n),r.length){var a=e.start,l=o.start,h=(s=l.row-a.row,l.column-a.column);this.addFolds(r.map(function(e){return(e=e.clone()).start.row==a.row&&(e.start.column+=h),e.end.row==a.row&&(e.end.column+=h),e.start.row+=s,e.end.row+=s,e}))}return o},this.indentRows=function(e,t,i){i=i.replace(/\t/g,this.getTabString());for(var n=e;n<=t;n++)this.doc.insertInLine({row:n,column:0},i)},this.outdentRows=function(e){for(var t=e.collapseRows(),i=new c(0,0,0,0),n=this.getTabSize(),r=t.start.row;r<=t.end.row;++r){var o=this.getLine(r);i.start.row=r,i.end.row=r;for(var s=0;s<n&&" "==o.charAt(s);++s);s<n&&"\t"==o.charAt(s)?(i.start.column=s,i.end.column=s+1):(i.start.column=0,i.end.column=s),this.remove(i)}},this.$moveLines=function(e,t,i){if(e=this.getRowFoldStart(e),t=this.getRowFoldEnd(t),i<0){if((r=this.getRowFoldStart(e+i))<0)return 0;var n=r-e}else if(i>0){var r;if((r=this.getRowFoldEnd(t+i))>this.doc.getLength()-1)return 0;n=r-t}else{e=this.$clipRowToDocument(e);n=(t=this.$clipRowToDocument(t))-e+1}var o=new c(e,0,t,Number.MAX_VALUE),s=this.getFoldsInRange(o).map(function(e){return(e=e.clone()).start.row+=n,e.end.row+=n,e}),a=0==i?this.doc.getLines(e,t):this.doc.removeFullLines(e,t);return this.doc.insertFullLines(e+n,a),s.length&&this.addFolds(s),n},this.moveLinesUp=function(e,t){return this.$moveLines(e,t,-1)},this.moveLinesDown=function(e,t){return this.$moveLines(e,t,1)},this.duplicateLines=function(e,t){return this.$moveLines(e,t,0)},this.$clipRowToDocument=function(e){return Math.max(0,Math.min(e,this.doc.getLength()-1))},this.$clipColumnToRow=function(e,t){return t<0?0:Math.min(this.doc.getLine(e).length,t)},this.$clipPositionToDocument=function(e,t){if(t=Math.max(0,t),e<0)e=0,t=0;else{var i=this.doc.getLength();e>=i?(e=i-1,t=this.doc.getLine(i-1).length):t=Math.min(this.doc.getLine(e).length,t)}return{row:e,column:t}},this.$clipRangeToDocument=function(e){e.start.row<0?(e.start.row=0,e.start.column=0):e.start.column=this.$clipColumnToRow(e.start.row,e.start.column);var t=this.doc.getLength()-1;return e.end.row>t?(e.end.row=t,e.end.column=this.doc.getLine(t).length):e.end.column=this.$clipColumnToRow(e.end.row,e.end.column),e},this.$wrapLimit=80,this.$useWrapMode=!1,this.$wrapLimitRange={min:null,max:null},this.setUseWrapMode=function(e){if(e!=this.$useWrapMode){if(this.$useWrapMode=e,this.$modified=!0,this.$resetRowCache(0),e){var t=this.getLength();this.$wrapData=Array(t),this.$updateWrapData(0,t-1)}this._signal("changeWrapMode")}},this.getUseWrapMode=function(){return this.$useWrapMode},this.setWrapLimitRange=function(e,t){this.$wrapLimitRange.min===e&&this.$wrapLimitRange.max===t||(this.$wrapLimitRange={min:e,max:t},this.$modified=!0,this.$useWrapMode&&this._signal("changeWrapMode"))},this.adjustWrapLimit=function(e,t){var i=this.$wrapLimitRange;i.max<0&&(i={min:t,max:t});var n=this.$constrainWrapLimit(e,i.min,i.max);return n!=this.$wrapLimit&&n>1&&(this.$wrapLimit=n,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0)},this.$constrainWrapLimit=function(e,t,i){return t&&(e=Math.max(t,e)),i&&(e=Math.min(i,e)),e},this.getWrapLimit=function(){return this.$wrapLimit},this.setWrapLimit=function(e){this.setWrapLimitRange(e,e)},this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},this.$updateInternalDataOnChange=function(e){var t=this.$useWrapMode,i=e.action,n=e.start,r=e.end,o=n.row,s=r.row,a=s-o,l=null;if(this.$updating=!0,0!=a)if("remove"===i){this[t?"$wrapData":"$rowLengthCache"].splice(o,a);var c=this.$foldData;l=this.getFoldsInRange(e),this.removeFolds(l);var h=0;if(m=this.getFoldLine(r.row)){m.addRemoveChars(r.row,r.column,n.column-r.column),m.shiftRow(-a);var u=this.getFoldLine(o);u&&u!==m&&(u.merge(m),m=u),h=c.indexOf(m)+1}for(;h<c.length;h++){(m=c[h]).start.row>=r.row&&m.shiftRow(-a)}s=o}else{var d=Array(a);d.unshift(o,0);var f=t?this.$wrapData:this.$rowLengthCache;f.splice.apply(f,d);c=this.$foldData,h=0;if(m=this.getFoldLine(o)){var p=m.range.compareInside(n.row,n.column);0==p?(m=m.split(n.row,n.column))&&(m.shiftRow(a),m.addRemoveChars(s,0,r.column-n.column)):-1==p&&(m.addRemoveChars(o,0,r.column-n.column),m.shiftRow(a)),h=c.indexOf(m)+1}for(;h<c.length;h++){var m;(m=c[h]).start.row>=o&&m.shiftRow(a)}}else a=Math.abs(e.start.column-e.end.column),"remove"===i&&(l=this.getFoldsInRange(e),this.removeFolds(l),a=-a),(m=this.getFoldLine(o))&&m.addRemoveChars(o,n.column,a);return t&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,t?this.$updateWrapData(o,s):this.$updateRowLengthCache(o,s),l},this.$updateRowLengthCache=function(e,t,i){this.$rowLengthCache[e]=null,this.$rowLengthCache[t]=null},this.$updateWrapData=function(i,n){var r,o,s=this.doc.getAllLines(),a=this.getTabSize(),l=this.$wrapData,c=this.$wrapLimit,h=i;for(n=Math.min(n,s.length-1);h<=n;)(o=this.getFoldLine(h,o))?(r=[],o.walk(function(i,n,o,a){var l;if(null!=i){(l=this.$getDisplayTokens(i,r.length))[0]=e;for(var c=1;c<l.length;c++)l[c]=t}else l=this.$getDisplayTokens(s[n].substring(a,o),r.length);r=r.concat(l)}.bind(this),o.end.row,s[o.end.row].length+1),l[o.start.row]=this.$computeWrapSplits(r,c,a),h=o.end.row+1):(r=this.$getDisplayTokens(s[h]),l[h]=this.$computeWrapSplits(r,c,a),h++)};var e=3,t=4,i=10,a=11,h=12;function f(e){return!(e<4352)&&(e>=4352&&e<=4447||e>=4515&&e<=4519||e>=4602&&e<=4607||e>=9001&&e<=9002||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12283||e>=12288&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12589||e>=12593&&e<=12686||e>=12688&&e<=12730||e>=12736&&e<=12771||e>=12784&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=13054||e>=13056&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=55216&&e<=55238||e>=55243&&e<=55291||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=65281&&e<=65376||e>=65504&&e<=65510)}this.$computeWrapSplits=function(n,r,o){if(0==n.length)return[];var s=[],l=n.length,c=0,u=0,d=this.$wrapAsCode,f=this.$indentedSoftWrap,p=r<=Math.max(2*o,8)||!1===f?0:Math.floor(r/2);function m(e){var t=n.slice(c,e),r=t.length;t.join("").replace(/12/g,function(){r-=1}).replace(/2/g,function(){r-=1}),s.length||(g=function(){var e=0;if(0===p)return e;if(f)for(var t=0;t<n.length;t++){var r=n[t];if(r==i)e+=1;else{if(r!=a){if(r==h)continue;break}e+=o}}return d&&!1!==f&&(e+=o),Math.min(e,p)}(),s.indent=g),u+=r,s.push(u),c=e}for(var g=0;l-c>r-g;){var v=c+r-g;if(n[v-1]>=i&&n[v]>=i)m(v);else if(n[v]!=e&&n[v]!=t){for(var y=Math.max(v-(r-(r>>2)),c-1);v>y&&n[v]<e;)v--;if(d){for(;v>y&&n[v]<e;)v--;for(;v>y&&9==n[v];)v--}else for(;v>y&&n[v]<i;)v--;v>y?m(++v):(2==n[v=c+r]&&v--,m(v-g))}else{for(;v!=c-1&&n[v]!=e;v--);if(v>c){m(v);continue}for(v=c+r;v<n.length&&n[v]==t;v++);if(v==n.length)break;m(v)}}return s},this.$getDisplayTokens=function(e,t){var n,r=[];t=t||0;for(var o=0;o<e.length;o++){var s=e.charCodeAt(o);if(9==s){n=this.getScreenTabSize(r.length+t),r.push(a);for(var l=1;l<n;l++)r.push(h)}else 32==s?r.push(i):s>39&&s<48||s>57&&s<64?r.push(9):s>=4352&&f(s)?r.push(1,2):r.push(1)}return r},this.$getStringScreenWidth=function(e,t,i){if(0==t)return[0,0];var n,r;for(null==t&&(t=1/0),i=i||0,r=0;r<e.length&&(9==(n=e.charCodeAt(r))?i+=this.getScreenTabSize(i):n>=4352&&f(n)?i+=2:i+=1,!(i>t));r++);return[i,r]},this.lineWidgets=null,this.getRowLength=function(e){if(this.lineWidgets)var t=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0;else t=0;return this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1+t:1+t},this.getRowLineCount=function(e){return this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1:1},this.getRowWrapIndent=function(e){if(this.$useWrapMode){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE),i=this.$wrapData[t.row];return i.length&&i[0]<t.column?i.indent:0}return 0},this.getScreenLastRowColumn=function(e){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE);return this.documentToScreenColumn(t.row,t.column)},this.getDocumentLastRowColumn=function(e,t){var i=this.documentToScreenRow(e,t);return this.getScreenLastRowColumn(i)},this.getDocumentLastRowColumnPosition=function(e,t){var i=this.documentToScreenRow(e,t);return this.screenToDocumentPosition(i,Number.MAX_VALUE/10)},this.getRowSplitData=function(e){return this.$useWrapMode?this.$wrapData[e]:void 0},this.getScreenTabSize=function(e){return this.$tabSize-e%this.$tabSize},this.screenToDocumentRow=function(e,t){return this.screenToDocumentPosition(e,t).row},this.screenToDocumentColumn=function(e,t){return this.screenToDocumentPosition(e,t).column},this.screenToDocumentPosition=function(e,t){if(e<0)return{row:0,column:0};var i,n,r=0,o=0,s=0,a=0,l=this.$screenRowCache,c=this.$getRowCacheIndex(l,e),h=l.length;if(h&&c>=0){s=l[c],r=this.$docRowCache[c];var u=e>l[h-1]}else u=!h;for(var d=this.getLength()-1,f=this.getNextFoldLine(r),p=f?f.start.row:1/0;s<=e&&!(s+(a=this.getRowLength(r))>e||r>=d);)s+=a,++r>p&&(r=f.end.row+1,p=(f=this.getNextFoldLine(r,f))?f.start.row:1/0),u&&(this.$docRowCache.push(r),this.$screenRowCache.push(s));if(f&&f.start.row<=r)i=this.getFoldDisplayLine(f),r=f.start.row;else{if(s+a<=e||r>d)return{row:d,column:this.getLine(d).length};i=this.getLine(r),f=null}var m=0;if(this.$useWrapMode){var g=this.$wrapData[r];if(g){var v=Math.floor(e-s);n=g[v],v>0&&g.length&&(m=g.indent,o=g[v-1]||g[g.length-1],i=i.substring(o))}}return o+=this.$getStringScreenWidth(i,t-m)[1],this.$useWrapMode&&o>=n&&(o=n-1),f?f.idxToPosition(o):{row:r,column:o}},this.documentToScreenPosition=function(e,t){if(void 0===t)var i=this.$clipPositionToDocument(e.row,e.column);else i=this.$clipPositionToDocument(e,t);e=i.row,t=i.column;var n,r=0,o=null;(n=this.getFoldAt(e,t,1))&&(e=n.start.row,t=n.start.column);var s,a=0,l=this.$docRowCache,c=this.$getRowCacheIndex(l,e),h=l.length;if(h&&c>=0){a=l[c],r=this.$screenRowCache[c];var u=e>l[h-1]}else u=!h;for(var d=this.getNextFoldLine(a),f=d?d.start.row:1/0;a<e;){if(a>=f){if((s=d.end.row+1)>e)break;f=(d=this.getNextFoldLine(s,d))?d.start.row:1/0}else s=a+1;r+=this.getRowLength(a),a=s,u&&(this.$docRowCache.push(a),this.$screenRowCache.push(r))}var p="";d&&a>=f?(p=this.getFoldDisplayLine(d,e,t),o=d.start.row):(p=this.getLine(e).substring(0,t),o=e);var m=0;if(this.$useWrapMode){var g=this.$wrapData[o];if(g){for(var v=0;p.length>=g[v];)r++,v++;p=p.substring(g[v-1]||0,p.length),m=v>0?g.indent:0}}return{row:r,column:m+this.$getStringScreenWidth(p)[0]}},this.documentToScreenColumn=function(e,t){return this.documentToScreenPosition(e,t).column},this.documentToScreenRow=function(e,t){return this.documentToScreenPosition(e,t).row},this.getScreenLength=function(){var e=0,t=null;if(this.$useWrapMode)for(var i=this.$wrapData.length,n=0,r=(a=0,(t=this.$foldData[a++])?t.start.row:1/0);n<i;){var o=this.$wrapData[n];e+=o?o.length+1:1,++n>r&&(n=t.end.row+1,r=(t=this.$foldData[a++])?t.start.row:1/0)}else{e=this.getLength();for(var s=this.$foldData,a=0;a<s.length;a++)e-=(t=s[a]).end.row-t.start.row}return this.lineWidgets&&(e+=this.$getWidgetScreenLength()),e},this.$setFontMetrics=function(e){this.$enableVarChar&&(this.$getStringScreenWidth=function(t,i,n){if(0===i)return[0,0];var r,o;for(i||(i=1/0),n=n||0,o=0;o<t.length&&!((n+="\t"===(r=t.charAt(o))?this.getScreenTabSize(n):e.getCharacterWidth(r))>i);o++);return[n,o]})},this.destroy=function(){this.bgTokenizer&&(this.bgTokenizer.setDocument(null),this.bgTokenizer=null),this.$stopWorker()}}).call(f.prototype),e("./edit_session/folding").Folding.call(f.prototype),e("./edit_session/bracket_match").BracketMatch.call(f.prototype),o.defineOptions(f.prototype,"session",{wrap:{set:function(e){if(e&&"off"!=e?"free"==e?e=!0:"printMargin"==e?e=-1:"string"==typeof e&&(e=parseInt(e,10)||!1):e=!1,this.$wrap!=e)if(this.$wrap=e,e){var t="number"==typeof e?e:null;this.setWrapLimitRange(t,t),this.setUseWrapMode(!0)}else this.setUseWrapMode(!1)},get:function(){return this.getUseWrapMode()?-1==this.$wrap?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(e){(e="auto"==e?"text"!=this.$mode.type:"text"!=e)!=this.$wrapAsCode&&(this.$wrapAsCode=e,this.$useWrapMode&&(this.$modified=!0,this.$resetRowCache(0),this.$updateWrapData(0,this.getLength()-1)))},initialValue:"auto"},indentedSoftWrap:{initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(e){this.$useWorker=e,this.$stopWorker(),e&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(e){isNaN(e)||this.$tabSize===e||(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=e,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},overwrite:{set:function(e){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(e){this.doc.setNewLineMode(e)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(e){this.setMode(e)},get:function(){return this.$modeId}}}),t.EditSession=f}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,i){"use strict";var n=e("./lib/lang"),r=e("./lib/oop"),o=e("./range").Range,s=function(){this.$options={}};(function(){this.set=function(e){return r.mixin(this.$options,e),this},this.getOptions=function(){return n.copyObject(this.$options)},this.setOptions=function(e){this.$options=e},this.find=function(e){var t=this.$options,i=this.$matchIterator(e,t);if(!i)return!1;var n=null;return i.forEach(function(e,i,r){if(e.start)n=e;else{var s=e.offset+(r||0);if(n=new o(i,s,i,s+e.length),!e.length&&t.start&&t.start.start&&0!=t.skipCurrent&&n.isEqual(t.start))return n=null,!1}return!0}),n},this.findAll=function(e){var t=this.$options;if(!t.needle)return[];this.$assembleRegExp(t);var i=t.range,r=i?e.getLines(i.start.row,i.end.row):e.doc.getAllLines(),s=[],a=t.re;if(t.$isMultiLine){var l,c=a.length,h=r.length-c;e:for(var u=a.offset||0;u<=h;u++){for(var d=0;d<c;d++)if(-1==r[u+d].search(a[d]))continue e;var f=r[u],p=r[u+c-1],m=f.length-f.match(a[0])[0].length,g=p.match(a[c-1])[0].length;l&&l.end.row===u&&l.end.column>m||(s.push(l=new o(u,m,u+c-1,g)),c>2&&(u=u+c-2))}}else for(var v=0;v<r.length;v++){var y=n.getMatchOffsets(r[v],a);for(d=0;d<y.length;d++){var w=y[d];s.push(new o(v,w.offset,v,w.offset+w.length))}}if(i){var b=i.start.column,C=i.start.column;for(v=0,d=s.length-1;v<d&&s[v].start.column<b&&s[v].start.row==i.start.row;)v++;for(;v<d&&s[d].end.column>C&&s[d].end.row==i.end.row;)d--;for(s=s.slice(v,d+1),v=0,d=s.length;v<d;v++)s[v].start.row+=i.start.row,s[v].end.row+=i.start.row}return s},this.replace=function(e,t){var i=this.$options,n=this.$assembleRegExp(i);if(i.$isMultiLine)return t;if(n){var r=n.exec(e);if(!r||r[0].length!=e.length)return null;if(t=e.replace(n,t),i.preserveCase){t=t.split("");for(var o=Math.min(e.length,e.length);o--;){var s=e[o];s&&s.toLowerCase()!=s?t[o]=t[o].toUpperCase():t[o]=t[o].toLowerCase()}t=t.join("")}return t}},this.$matchIterator=function(e,t){var i,r=this.$assembleRegExp(t);if(!r)return!1;if(t.$isMultiLine)var s=r.length,a=function(t,n,a){var l=t.search(r[0]);if(-1!=l){for(var c=1;c<s;c++)if(-1==(t=e.getLine(n+c)).search(r[c]))return;var h=t.match(r[s-1])[0].length,u=new o(n,l,n+s-1,h);return 1==r.offset?(u.start.row--,u.start.column=Number.MAX_VALUE):a&&(u.start.column+=a),!!i(u)||void 0}};else if(t.backwards)a=function(e,t,o){for(var s=n.getMatchOffsets(e,r),a=s.length-1;a>=0;a--)if(i(s[a],t,o))return!0};else a=function(e,t,o){for(var s=n.getMatchOffsets(e,r),a=0;a<s.length;a++)if(i(s[a],t,o))return!0};var l=this.$lineIterator(e,t);return{forEach:function(e){i=e,l.forEach(a)}}},this.$assembleRegExp=function(e,t){if(e.needle instanceof RegExp)return e.re=e.needle;var i=e.needle;if(!e.needle)return e.re=!1;e.regExp||(i=n.escapeRegExp(i)),e.wholeWord&&(i="\\b"+i+"\\b");var r=e.caseSensitive?"gm":"gmi";if(e.$isMultiLine=!t&&/[\n\r]/.test(i),e.$isMultiLine)return e.re=this.$assembleMultilineRegExp(i,r);try{var o=new RegExp(i,r)}catch(e){o=!1}return e.re=o},this.$assembleMultilineRegExp=function(e,t){for(var i=e.replace(/\r\n|\r|\n/g,"$\n^").split("\n"),n=[],r=0;r<i.length;r++)try{n.push(new RegExp(i[r],t))}catch(e){return!1}return""==i[0]?(n.shift(),n.offset=1):n.offset=0,n},this.$lineIterator=function(e,t){var i=1==t.backwards,n=0!=t.skipCurrent,r=t.range,o=t.start;o||(o=r?r[i?"end":"start"]:e.selection.getRange()),o.start&&(o=o[n!=i?"end":"start"]);var s=r?r.start.row:0,a=r?r.end.row:e.getLength()-1;return{forEach:i?function(i){var n=o.row;if(!i(e.getLine(n).substring(0,o.column),n)){for(n--;n>=s;n--)if(i(e.getLine(n),n))return;if(0!=t.wrap)for(n=a,s=o.row;n>=s;n--)if(i(e.getLine(n),n))return}}:function(i){var n=o.row;if(!i(e.getLine(n).substr(o.column),n,o.column)){for(n+=1;n<=a;n++)if(i(e.getLine(n),n))return;if(0!=t.wrap)for(n=s,a=o.row;n<=a;n++)if(i(e.getLine(n),n))return}}}}}).call(s.prototype),t.Search=s}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,i){"use strict";var n=e("../lib/keys"),r=e("../lib/useragent"),o=n.KEY_MODS;function s(e,t){this.platform=t||(r.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(e),this.$singleCommand=!0}function a(e,t){s.call(this,e,t),this.$singleCommand=!1}a.prototype=s.prototype,function(){function e(e){return"object"==typeof e&&e.bindKey&&e.bindKey.position||0}this.addCommand=function(e){this.commands[e.name]&&this.removeCommand(e),this.commands[e.name]=e,e.bindKey&&this._buildKeyHash(e)},this.removeCommand=function(e,t){var i=e&&("string"==typeof e?e:e.name);e=this.commands[i],t||delete this.commands[i];var n=this.commandKeyBinding;for(var r in n){var o=n[r];if(o==e)delete n[r];else if(Array.isArray(o)){var s=o.indexOf(e);-1!=s&&(o.splice(s,1),1==o.length&&(n[r]=o[0]))}}},this.bindKey=function(e,t,i){if("object"==typeof e&&e&&(void 0==i&&(i=e.position),e=e[this.platform]),e)return"function"==typeof t?this.addCommand({exec:t,bindKey:e,name:t.name||e}):void e.split("|").forEach(function(e){var n="";if(-1!=e.indexOf(" ")){var r=e.split(/\s+/);e=r.pop(),r.forEach(function(e){var t=this.parseKeys(e),i=o[t.hashId]+t.key;n+=(n?" ":"")+i,this._addCommandToBinding(n,"chainKeys")},this),n+=" "}var s=this.parseKeys(e),a=o[s.hashId]+s.key;this._addCommandToBinding(n+a,t,i)},this)},this._addCommandToBinding=function(t,i,n){var r,o=this.commandKeyBinding;if(i)if(!o[t]||this.$singleCommand)o[t]=i;else{Array.isArray(o[t])?-1!=(r=o[t].indexOf(i))&&o[t].splice(r,1):o[t]=[o[t]],"number"!=typeof n&&(n=n||i.isDefault?-100:e(i));var s=o[t];for(r=0;r<s.length;r++){if(e(s[r])>n)break}s.splice(r,0,i)}else delete o[t]},this.addCommands=function(e){e&&Object.keys(e).forEach(function(t){var i=e[t];if(i){if("string"==typeof i)return this.bindKey(i,t);"function"==typeof i&&(i={exec:i}),"object"==typeof i&&(i.name||(i.name=t),this.addCommand(i))}},this)},this.removeCommands=function(e){Object.keys(e).forEach(function(t){this.removeCommand(e[t])},this)},this.bindKeys=function(e){Object.keys(e).forEach(function(t){this.bindKey(t,e[t])},this)},this._buildKeyHash=function(e){this.bindKey(e.bindKey,e)},this.parseKeys=function(e){var t=e.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(e){return e}),i=t.pop(),r=n[i];if(n.FUNCTION_KEYS[r])i=n.FUNCTION_KEYS[r].toLowerCase();else{if(!t.length)return{key:i,hashId:-1};if(1==t.length&&"shift"==t[0])return{key:i.toUpperCase(),hashId:-1}}for(var o=0,s=t.length;s--;){var a=n.KEY_MODS[t[s]];if(null==a)return"undefined"!=typeof console&&console.error("invalid modifier "+t[s]+" in "+e),!1;o|=a}return{key:i,hashId:o}},this.findKeyCommand=function(e,t){var i=o[e]+t;return this.commandKeyBinding[i]},this.handleKeyboard=function(e,t,i,n){if(!(n<0)){var r=o[t]+i,s=this.commandKeyBinding[r];return e.$keyChain&&(e.$keyChain+=" "+r,s=this.commandKeyBinding[e.$keyChain]||s),!s||"chainKeys"!=s&&"chainKeys"!=s[s.length-1]?(e.$keyChain&&(t&&4!=t||1!=i.length?(-1==t||n>0)&&(e.$keyChain=""):e.$keyChain=e.$keyChain.slice(0,-r.length-1)),{command:s}):(e.$keyChain=e.$keyChain||r,{command:"null"})}},this.getStatusText=function(e,t){return t.$keyChain||""}}.call(s.prototype),t.HashHandler=s,t.MultiHashHandler=a}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("../lib/oop"),r=e("../keyboard/hash_handler").MultiHashHandler,o=e("../lib/event_emitter").EventEmitter,s=function(e,t){r.call(this,t,e),this.byName=this.commands,this.setDefaultHandler("exec",function(e){return e.command.exec(e.editor,e.args||{})})};n.inherits(s,r),function(){n.implement(this,o),this.exec=function(e,t,i){if(Array.isArray(e)){for(var n=e.length;n--;)if(this.exec(e[n],t,i))return!0;return!1}if("string"==typeof e&&(e=this.commands[e]),!e)return!1;if(t&&t.$readOnly&&!e.readOnly)return!1;var r={editor:t,command:e,args:i};return r.returnValue=this._emit("exec",r),this._signal("afterExec",r),!1!==r.returnValue},this.toggleRecording=function(e){if(!this.$inReplay)return e&&e._emit("changeStatus"),this.recording?(this.macro.pop(),this.removeEventListener("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(e){this.macro.push([e.command,e.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},this.replay=function(e){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(e);try{this.$inReplay=!0,this.macro.forEach(function(t){"string"==typeof t?this.exec(t,e):this.exec(t[0],e,t[1])},this)}finally{this.$inReplay=!1}}},this.trimMacro=function(e){return e.map(function(e){return"string"!=typeof e[0]&&(e[0]=e[0].name),e[1]||(e=e[0]),e})}}.call(s.prototype),t.CommandManager=s}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(e,t,i){"use strict";var n=e("../lib/lang"),r=e("../config"),o=e("../range").Range;function s(e,t){return{win:e,mac:t}}t.commands=[{name:"showSettingsMenu",bindKey:s("Ctrl-,","Command-,"),exec:function(e){r.loadModule("ace/ext/settings_menu",function(t){t.init(e),e.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",bindKey:s("Alt-E","Ctrl-E"),exec:function(e){r.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",bindKey:s("Alt-Shift-E","Ctrl-Shift-E"),exec:function(e){r.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",bindKey:s("Ctrl-A","Command-A"),exec:function(e){e.selectAll()},readOnly:!0},{name:"centerselection",bindKey:s(null,"Ctrl-L"),exec:function(e){e.centerSelection()},readOnly:!0},{name:"gotoline",bindKey:s("Ctrl-L","Command-L"),exec:function(e){var t=parseInt(prompt("Enter line number:"),10);isNaN(t)||e.gotoLine(t)},readOnly:!0},{name:"fold",bindKey:s("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(e){e.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:s("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(e){e.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",bindKey:s("F2","F2"),exec:function(e){e.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",bindKey:s("Alt-F2","Alt-F2"),exec:function(e){e.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",bindKey:s(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",bindKey:s("Alt-0","Command-Option-0"),exec:function(e){e.session.foldAll(),e.session.unfold(e.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",bindKey:s("Alt-Shift-0","Command-Option-Shift-0"),exec:function(e){e.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",bindKey:s("Ctrl-K","Command-G"),exec:function(e){e.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",bindKey:s("Ctrl-Shift-K","Command-Shift-G"),exec:function(e){e.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",bindKey:s("Alt-K","Ctrl-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findNext()},readOnly:!0},{name:"selectOrFindPrevious",bindKey:s("Alt-Shift-K","Ctrl-Shift-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findPrevious()},readOnly:!0},{name:"find",bindKey:s("Ctrl-F","Command-F"),exec:function(e){r.loadModule("ace/ext/searchbox",function(t){t.Search(e)})},readOnly:!0},{name:"overwrite",bindKey:"Insert",exec:function(e){e.toggleOverwrite()},readOnly:!0},{name:"selecttostart",bindKey:s("Ctrl-Shift-Home","Command-Shift-Up"),exec:function(e){e.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",bindKey:s("Ctrl-Home","Command-Home|Command-Up"),exec:function(e){e.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",bindKey:s("Shift-Up","Shift-Up"),exec:function(e){e.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",bindKey:s("Up","Up|Ctrl-P"),exec:function(e,t){e.navigateUp(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",bindKey:s("Ctrl-Shift-End","Command-Shift-Down"),exec:function(e){e.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",bindKey:s("Ctrl-End","Command-End|Command-Down"),exec:function(e){e.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",bindKey:s("Shift-Down","Shift-Down"),exec:function(e){e.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",bindKey:s("Down","Down|Ctrl-N"),exec:function(e,t){e.navigateDown(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",bindKey:s("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(e){e.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",bindKey:s("Ctrl-Left","Option-Left"),exec:function(e){e.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",bindKey:s("Alt-Shift-Left","Command-Shift-Left"),exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",bindKey:s("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(e){e.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",bindKey:s("Shift-Left","Shift-Left"),exec:function(e){e.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",bindKey:s("Left","Left|Ctrl-B"),exec:function(e,t){e.navigateLeft(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",bindKey:s("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(e){e.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",bindKey:s("Ctrl-Right","Option-Right"),exec:function(e){e.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",bindKey:s("Alt-Shift-Right","Command-Shift-Right"),exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",bindKey:s("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(e){e.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",bindKey:s("Shift-Right","Shift-Right"),exec:function(e){e.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",bindKey:s("Right","Right|Ctrl-F"),exec:function(e,t){e.navigateRight(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",bindKey:"Shift-PageDown",exec:function(e){e.selectPageDown()},readOnly:!0},{name:"pagedown",bindKey:s(null,"Option-PageDown"),exec:function(e){e.scrollPageDown()},readOnly:!0},{name:"gotopagedown",bindKey:s("PageDown","PageDown|Ctrl-V"),exec:function(e){e.gotoPageDown()},readOnly:!0},{name:"selectpageup",bindKey:"Shift-PageUp",exec:function(e){e.selectPageUp()},readOnly:!0},{name:"pageup",bindKey:s(null,"Option-PageUp"),exec:function(e){e.scrollPageUp()},readOnly:!0},{name:"gotopageup",bindKey:"PageUp",exec:function(e){e.gotoPageUp()},readOnly:!0},{name:"scrollup",bindKey:s("Ctrl-Up",null),exec:function(e){e.renderer.scrollBy(0,-2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",bindKey:s("Ctrl-Down",null),exec:function(e){e.renderer.scrollBy(0,2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",bindKey:"Shift-Home",exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",bindKey:"Shift-End",exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",bindKey:s("Ctrl-Alt-E","Command-Option-E"),exec:function(e){e.commands.toggleRecording(e)},readOnly:!0},{name:"replaymacro",bindKey:s("Ctrl-Shift-E","Command-Shift-E"),exec:function(e){e.commands.replay(e)},readOnly:!0},{name:"jumptomatching",bindKey:s("Ctrl-P","Ctrl-P"),exec:function(e){e.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",bindKey:s("Ctrl-Shift-P","Ctrl-Shift-P"),exec:function(e){e.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",bindKey:s("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(e){e.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",bindKey:s(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",exec:function(e){},readOnly:!0},{name:"cut",exec:function(e){var t=e.getSelectionRange();e._emit("cut",t),e.selection.isEmpty()||(e.session.remove(t),e.clearSelection())},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",exec:function(e,t){e.$handlePaste(t)},scrollIntoView:"cursor"},{name:"removeline",bindKey:s("Ctrl-D","Command-D"),exec:function(e){e.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",bindKey:s("Ctrl-Shift-D","Command-Shift-D"),exec:function(e){e.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",bindKey:s("Ctrl-Alt-S","Command-Alt-S"),exec:function(e){e.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",bindKey:s("Ctrl-/","Command-/"),exec:function(e){e.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",bindKey:s("Ctrl-Shift-/","Command-Shift-/"),exec:function(e){e.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",bindKey:s("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(e){e.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",bindKey:s("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(e){e.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",bindKey:s("Ctrl-H","Command-Option-F"),exec:function(e){r.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"undo",bindKey:s("Ctrl-Z","Command-Z"),exec:function(e){e.undo()}},{name:"redo",bindKey:s("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(e){e.redo()}},{name:"copylinesup",bindKey:s("Alt-Shift-Up","Command-Option-Up"),exec:function(e){e.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",bindKey:s("Alt-Up","Option-Up"),exec:function(e){e.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",bindKey:s("Alt-Shift-Down","Command-Option-Down"),exec:function(e){e.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",bindKey:s("Alt-Down","Option-Down"),exec:function(e){e.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",bindKey:s("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(e){e.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",bindKey:s("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(e){e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",bindKey:s("Shift-Delete",null),exec:function(e){if(!e.selection.isEmpty())return!1;e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",bindKey:s("Alt-Backspace","Command-Backspace"),exec:function(e){e.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",bindKey:s("Alt-Delete","Ctrl-K"),exec:function(e){e.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",bindKey:s("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(e){e.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",bindKey:s("Ctrl-Delete","Alt-Delete"),exec:function(e){e.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",bindKey:s("Shift-Tab","Shift-Tab"),exec:function(e){e.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",bindKey:s("Tab","Tab"),exec:function(e){e.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",bindKey:s("Ctrl-[","Ctrl-["),exec:function(e){e.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",bindKey:s("Ctrl-]","Ctrl-]"),exec:function(e){e.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",exec:function(e,t){e.insert(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",exec:function(e,t){e.insert(n.stringRepeat(t.text||"",t.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",bindKey:s(null,"Ctrl-O"),exec:function(e){e.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",bindKey:s("Ctrl-T","Ctrl-T"),exec:function(e){e.transposeLetters()},multiSelectAction:function(e){e.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",bindKey:s("Ctrl-U","Ctrl-U"),exec:function(e){e.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",bindKey:s("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(e){e.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"expandtoline",bindKey:s("Ctrl-Shift-L","Command-Shift-L"),exec:function(e){var t=e.selection.getRange();t.start.column=t.end.column=0,t.end.row++,e.selection.setRange(t,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"joinlines",bindKey:s(null,null),exec:function(e){for(var t=e.selection.isBackwards(),i=t?e.selection.getSelectionLead():e.selection.getSelectionAnchor(),r=t?e.selection.getSelectionAnchor():e.selection.getSelectionLead(),s=e.session.doc.getLine(i.row).length,a=e.session.doc.getTextRange(e.selection.getRange()).replace(/\n\s*/," ").length,l=e.session.doc.getLine(i.row),c=i.row+1;c<=r.row+1;c++){var h=n.stringTrimLeft(n.stringTrimRight(e.session.doc.getLine(c)));0!==h.length&&(h=" "+h),l+=h}r.row+1<e.session.doc.getLength()-1&&(l+=e.session.doc.getNewLineCharacter()),e.clearSelection(),e.session.doc.replace(new o(i.row,0,r.row+2,0),l),a>0?(e.selection.moveCursorTo(i.row,i.column),e.selection.selectTo(i.row,i.column+a)):(s=e.session.doc.getLine(i.row).length>s?s+1:s,e.selection.moveCursorTo(i.row,s))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",bindKey:s(null,null),exec:function(e){var t=e.session.doc.getLength()-1,i=e.session.doc.getLine(t).length,n=e.selection.rangeList.ranges,r=[];n.length<1&&(n=[e.selection.getRange()]);for(var s=0;s<n.length;s++)s==n.length-1&&(n[s].end.row===t&&n[s].end.column===i||r.push(new o(n[s].end.row,n[s].end.column,t,i))),0===s?0===n[s].start.row&&0===n[s].start.column||r.push(new o(0,0,n[s].start.row,n[s].start.column)):r.push(new o(n[s-1].end.row,n[s-1].end.column,n[s].start.row,n[s].start.column));e.exitMultiSelectMode(),e.clearSelection();for(s=0;s<r.length;s++)e.selection.addRange(r[s],!1)},readOnly:!0,scrollIntoView:"none"}]}),ace.define("ace/editor",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/keyboard/textinput","ace/mouse/mouse_handler","ace/mouse/fold_handler","ace/keyboard/keybinding","ace/edit_session","ace/search","ace/range","ace/lib/event_emitter","ace/commands/command_manager","ace/commands/default_commands","ace/config","ace/token_iterator"],function(e,t,i){"use strict";e("./lib/fixoldbrowsers");var n=e("./lib/oop"),r=e("./lib/dom"),o=e("./lib/lang"),s=e("./lib/useragent"),a=e("./keyboard/textinput").TextInput,l=e("./mouse/mouse_handler").MouseHandler,c=e("./mouse/fold_handler").FoldHandler,h=e("./keyboard/keybinding").KeyBinding,u=e("./edit_session").EditSession,d=e("./search").Search,f=e("./range").Range,p=e("./lib/event_emitter").EventEmitter,m=e("./commands/command_manager").CommandManager,g=e("./commands/default_commands").commands,v=e("./config"),y=e("./token_iterator").TokenIterator,w=function(e,t){var i=e.getContainerElement();this.container=i,this.renderer=e,this.commands=new m(s.isMac?"mac":"win",g),this.textInput=new a(e.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.keyBinding=new h(this),this.$mouseHandler=new l(this),new c(this),this.$blockScrolling=0,this.$search=(new d).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=o.delayedCall(function(){this._signal("input",{}),this.session&&this.session.bgTokenizer&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(e,t){t._$emitInputEvent.schedule(31)}),this.setSession(t||new u("")),v.resetOptions(this),v._signal("editor",this)};(function(){n.implement(this,p),this.$initOperationListeners=function(){this.selections=[],this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0),this.$opResetTimer=o.delayedCall(this.endOperation.bind(this)),this.on("change",function(){this.curOp||this.startOperation(),this.curOp.docChanged=!0}.bind(this),!0),this.on("changeSelection",function(){this.curOp||this.startOperation(),this.curOp.selectionChanged=!0}.bind(this),!0)},this.curOp=null,this.prevOp={},this.startOperation=function(e){if(this.curOp){if(!e||this.curOp.command)return;this.prevOp=this.curOp}e||(this.previousCommand=null,e={}),this.$opResetTimer.schedule(),this.curOp={command:e.command||{},args:e.args,scrollTop:this.renderer.scrollTop},this.curOp.command.name&&void 0!==this.curOp.command.scrollIntoView&&this.$blockScrolling++},this.endOperation=function(e){if(this.curOp){if(e&&!1===e.returnValue)return this.curOp=null;this._signal("beforeEndOperation");var t=this.curOp.command;t.name&&this.$blockScrolling>0&&this.$blockScrolling--;var i=t&&t.scrollIntoView;if(i){switch(i){case"center-animate":i="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var n=this.selection.getRange(),r=this.renderer.layerConfig;(n.start.row>=r.lastRow||n.end.row<=r.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}"animate"==i&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.prevOp=this.curOp,this.curOp=null}},this.$mergeableCommands=["backspace","del","insertstring"],this.$historyTracker=function(e){if(this.$mergeUndoDeltas){var t=this.prevOp,i=this.$mergeableCommands,n=t.command&&e.command.name==t.command.name;if("insertstring"==e.command.name){var r=e.args;void 0===this.mergeNextCommand&&(this.mergeNextCommand=!0),n=n&&this.mergeNextCommand&&(!/\s/.test(r)||/\s/.test(t.args)),this.mergeNextCommand=!0}else n=n&&-1!==i.indexOf(e.command.name);"always"!=this.$mergeUndoDeltas&&Date.now()-this.sequenceStartTime>2e3&&(n=!1),n?this.session.mergeUndoDeltas=!0:-1!==i.indexOf(e.command.name)&&(this.sequenceStartTime=Date.now())}},this.setKeyboardHandler=function(e,t){if(e&&"string"==typeof e){this.$keybindingId=e;var i=this;v.loadModule(["keybinding",e],function(n){i.$keybindingId==e&&i.keyBinding.setKeyboardHandler(n&&n.handler),t&&t()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(e),t&&t()},this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},this.setSession=function(e){if(this.session!=e){this.curOp&&this.endOperation(),this.curOp={};var t=this.session;if(t){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange);var i=this.session.getSelection();i.off("changeCursor",this.$onCursorChange),i.off("changeSelection",this.$onSelectionChange)}this.session=e,e?(this.$onDocumentChange=this.onDocumentChange.bind(this),e.on("change",this.$onDocumentChange),this.renderer.setSession(e),this.$onChangeMode=this.onChangeMode.bind(this),e.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),e.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),e.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),e.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),e.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),e.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=e.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.$blockScrolling+=1,this.onCursorChange(),this.$blockScrolling-=1,this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(e)),this._signal("changeSession",{session:e,oldSession:t}),this.curOp=null,t&&t._signal("changeEditor",{oldEditor:this}),e&&e._signal("changeEditor",{editor:this})}},this.getSession=function(){return this.session},this.setValue=function(e,t){return this.session.doc.setValue(e),t?1==t?this.navigateFileEnd():-1==t&&this.navigateFileStart():this.selectAll(),e},this.getValue=function(){return this.session.getValue()},this.getSelection=function(){return this.selection},this.resize=function(e){this.renderer.onResize(e)},this.setTheme=function(e,t){this.renderer.setTheme(e,t)},this.getTheme=function(){return this.renderer.getTheme()},this.setStyle=function(e){this.renderer.setStyle(e)},this.unsetStyle=function(e){this.renderer.unsetStyle(e)},this.getFontSize=function(){return this.getOption("fontSize")||r.computedStyle(this.container,"fontSize")},this.setFontSize=function(e){this.setOption("fontSize",e)},this.$highlightBrackets=function(){if(this.session.$bracketHighlight&&(this.session.removeMarker(this.session.$bracketHighlight),this.session.$bracketHighlight=null),!this.$highlightPending){var e=this;this.$highlightPending=!0,setTimeout(function(){e.$highlightPending=!1;var t=e.session;if(t&&t.bgTokenizer){var i=t.findMatchingBracket(e.getCursorPosition());if(i)var n=new f(i.row,i.column,i.row,i.column+1);else if(t.$mode.getMatching)n=t.$mode.getMatching(e.session);n&&(t.$bracketHighlight=t.addMarker(n,"ace_bracket","text"))}},50)}},this.$highlightTags=function(){if(!this.$highlightTagPending){var e=this;this.$highlightTagPending=!0,setTimeout(function(){e.$highlightTagPending=!1;var t=e.session;if(t&&t.bgTokenizer){var i=e.getCursorPosition(),n=new y(e.session,i.row,i.column),r=n.getCurrentToken();if(!r||!/\b(?:tag-open|tag-name)/.test(r.type))return t.removeMarker(t.$tagHighlight),void(t.$tagHighlight=null);if(-1==r.type.indexOf("tag-open")||(r=n.stepForward())){var o=r.value,s=0,a=n.stepBackward();if("<"==a.value)do{a=r,(r=n.stepForward())&&r.value===o&&-1!==r.type.indexOf("tag-name")&&("<"===a.value?s++:"</"===a.value&&s--)}while(r&&s>=0);else{do{r=a,a=n.stepBackward(),r&&r.value===o&&-1!==r.type.indexOf("tag-name")&&("<"===a.value?s++:"</"===a.value&&s--)}while(a&&s<=0);n.stepForward()}if(!r)return t.removeMarker(t.$tagHighlight),void(t.$tagHighlight=null);var l=n.getCurrentTokenRow(),c=n.getCurrentTokenColumn(),h=new f(l,c,l,c+r.value.length);t.$tagHighlight&&0!==h.compareRange(t.$backMarkers[t.$tagHighlight].range)&&(t.removeMarker(t.$tagHighlight),t.$tagHighlight=null),h&&!t.$tagHighlight&&(t.$tagHighlight=t.addMarker(h,"ace_bracket","text"))}}},50)}},this.focus=function(){var e=this;setTimeout(function(){e.textInput.focus()}),this.textInput.focus()},this.isFocused=function(){return this.textInput.isFocused()},this.blur=function(){this.textInput.blur()},this.onFocus=function(e){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",e))},this.onBlur=function(e){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",e))},this.$cursorChange=function(){this.renderer.updateCursor()},this.onDocumentChange=function(e){var t=this.session.$useWrapMode,i=e.start.row==e.end.row?e.end.row:1/0;this.renderer.updateLines(e.start.row,i,t),this._signal("change",e),this.$cursorChange(),this.$updateHighlightActiveLine()},this.onTokenizerUpdate=function(e){var t=e.data;this.renderer.updateLines(t.first,t.last)},this.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},this.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},this.onCursorChange=function(){this.$cursorChange(),this.$blockScrolling||(v.warn("Automatically scrolling cursor into view after selection change","this will be disabled in the next version","set editor.$blockScrolling = Infinity to disable this message"),this.renderer.scrollCursorIntoView()),this.$highlightBrackets(),this.$highlightTags(),this.$updateHighlightActiveLine(),this._signal("changeSelection")},this.$updateHighlightActiveLine=function(){var e,t=this.getSession();if(this.$highlightActiveLine&&("line"==this.$selectionStyle&&this.selection.isMultiLine()||(e=this.getCursorPosition()),!this.renderer.$maxLines||1!==this.session.getLength()||this.renderer.$minLines>1||(e=!1)),t.$highlightLineMarker&&!e)t.removeMarker(t.$highlightLineMarker.id),t.$highlightLineMarker=null;else if(!t.$highlightLineMarker&&e){var i=new f(e.row,e.column,e.row,1/0);i.id=t.addMarker(i,"ace_active-line","screenLine"),t.$highlightLineMarker=i}else e&&(t.$highlightLineMarker.start.row=e.row,t.$highlightLineMarker.end.row=e.row,t.$highlightLineMarker.start.column=e.column,t._signal("changeBackMarker"))},this.onSelectionChange=function(e){var t=this.session;if(t.$selectionMarker&&t.removeMarker(t.$selectionMarker),t.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var i=this.selection.getRange(),n=this.getSelectionStyle();t.$selectionMarker=t.addMarker(i,"ace_selection",n)}var r=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(r),this._signal("changeSelection")},this.$getSelectionHighLightRegexp=function(){var e=this.session,t=this.getSelectionRange();if(!t.isEmpty()&&!t.isMultiLine()){var i=t.start.column-1,n=t.end.column+1,r=e.getLine(t.start.row),o=r.length,s=r.substring(Math.max(i,0),Math.min(n,o));if(!(i>=0&&/^[\w\d]/.test(s)||n<=o&&/[\w\d]$/.test(s)))if(s=r.substring(t.start.column,t.end.column),/^[\w\d]+$/.test(s))return this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:s})}},this.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},this.onChangeMode=function(e){this.renderer.updateText(),this._emit("changeMode",e)},this.onChangeWrapLimit=function(){this.renderer.updateFull()},this.onChangeWrapMode=function(){this.renderer.onResize(!0)},this.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},this.getCopyText=function(){var e=this.getSelectedText();return this._signal("copy",e),e},this.onCopy=function(){this.commands.exec("copy",this)},this.onCut=function(){this.commands.exec("cut",this)},this.onPaste=function(e,t){var i={text:e,event:t};this.commands.exec("paste",this,i)},this.$handlePaste=function(e){"string"==typeof e&&(e={text:e}),this._signal("paste",e);var t=e.text;if(!this.inMultiSelectMode||this.inVirtualSelectionMode)this.insert(t);else{var i=t.split(/\r\n|\r|\n/),n=this.selection.rangeList.ranges;if(i.length>n.length||i.length<2||!i[1])return this.commands.exec("insertstring",this,t);for(var r=n.length;r--;){var o=n[r];o.isEmpty()||this.session.remove(o),this.session.insert(o.start,i[r])}}},this.execCommand=function(e,t){return this.commands.exec(e,this,t)},this.insert=function(e,t){var i=this.session,n=i.getMode(),r=this.getCursorPosition();if(this.getBehavioursEnabled()&&!t){var o=n.transformAction(i.getState(r.row),"insertion",this,i,e);o&&(e!==o.text&&(this.session.mergeUndoDeltas=!1,this.$mergeNextCommand=!1),e=o.text)}if("\t"==e&&(e=this.session.getTabString()),this.selection.isEmpty()){if(this.session.getOverwrite()){(s=new f.fromPoints(r,r)).end.column+=e.length,this.session.remove(s)}}else{var s=this.getSelectionRange();r=this.session.remove(s),this.clearSelection()}if("\n"==e||"\r\n"==e){var a=i.getLine(r.row);if(r.column>a.search(/\S|$/)){var l=a.substr(r.column).search(/\S|$/);i.doc.removeInLine(r.row,r.column,r.column+l)}}this.clearSelection();var c=r.column,h=i.getState(r.row),u=(a=i.getLine(r.row),n.checkOutdent(h,a,e));i.insert(r,e);if(o&&o.selection&&(2==o.selection.length?this.selection.setSelectionRange(new f(r.row,c+o.selection[0],r.row,c+o.selection[1])):this.selection.setSelectionRange(new f(r.row+o.selection[0],o.selection[1],r.row+o.selection[2],o.selection[3]))),i.getDocument().isNewLine(e)){var d=n.getNextLineIndent(h,a.slice(0,r.column),i.getTabString());i.insert({row:r.row+1,column:0},d)}u&&n.autoOutdent(h,i,r.row)},this.onTextInput=function(e){this.keyBinding.onTextInput(e)},this.onCommandKey=function(e,t,i){this.keyBinding.onCommandKey(e,t,i)},this.setOverwrite=function(e){this.session.setOverwrite(e)},this.getOverwrite=function(){return this.session.getOverwrite()},this.toggleOverwrite=function(){this.session.toggleOverwrite()},this.setScrollSpeed=function(e){this.setOption("scrollSpeed",e)},this.getScrollSpeed=function(){return this.getOption("scrollSpeed")},this.setDragDelay=function(e){this.setOption("dragDelay",e)},this.getDragDelay=function(){return this.getOption("dragDelay")},this.setSelectionStyle=function(e){this.setOption("selectionStyle",e)},this.getSelectionStyle=function(){return this.getOption("selectionStyle")},this.setHighlightActiveLine=function(e){this.setOption("highlightActiveLine",e)},this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.setHighlightSelectedWord=function(e){this.setOption("highlightSelectedWord",e)},this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},this.setAnimatedScroll=function(e){this.renderer.setAnimatedScroll(e)},this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},this.setShowInvisibles=function(e){this.renderer.setShowInvisibles(e)},this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},this.setDisplayIndentGuides=function(e){this.renderer.setDisplayIndentGuides(e)},this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},this.setShowPrintMargin=function(e){this.renderer.setShowPrintMargin(e)},this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},this.setPrintMarginColumn=function(e){this.renderer.setPrintMarginColumn(e)},this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},this.setReadOnly=function(e){this.setOption("readOnly",e)},this.getReadOnly=function(){return this.getOption("readOnly")},this.setBehavioursEnabled=function(e){this.setOption("behavioursEnabled",e)},this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},this.setWrapBehavioursEnabled=function(e){this.setOption("wrapBehavioursEnabled",e)},this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},this.setShowFoldWidgets=function(e){this.setOption("showFoldWidgets",e)},this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.remove=function(e){this.selection.isEmpty()&&("left"==e?this.selection.selectLeft():this.selection.selectRight());var t=this.getSelectionRange();if(this.getBehavioursEnabled()){var i=this.session,n=i.getState(t.start.row),r=i.getMode().transformAction(n,"deletion",this,i,t);if(0===t.end.column){var o=i.getTextRange(t);if("\n"==o[o.length-1]){var s=i.getLine(t.end.row);/^\s+$/.test(s)&&(t.end.column=s.length)}}r&&(t=r)}this.session.remove(t),this.clearSelection()},this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var e=this.getSelectionRange();e.start.column==e.end.column&&e.start.row==e.end.row&&(e.end.column=0,e.end.row++),this.session.remove(e),this.clearSelection()},this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var e=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(e)},this.transposeLetters=function(){if(this.selection.isEmpty()){var e=this.getCursorPosition(),t=e.column;if(0!==t){var i,n,r=this.session.getLine(e.row);t<r.length?(i=r.charAt(t)+r.charAt(t-1),n=new f(e.row,t-1,e.row,t+1)):(i=r.charAt(t-1)+r.charAt(t-2),n=new f(e.row,t-2,e.row,t)),this.session.replace(n,i)}}},this.toLowerCase=function(){var e=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var t=this.getSelectionRange(),i=this.session.getTextRange(t);this.session.replace(t,i.toLowerCase()),this.selection.setSelectionRange(e)},this.toUpperCase=function(){var e=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var t=this.getSelectionRange(),i=this.session.getTextRange(t);this.session.replace(t,i.toUpperCase()),this.selection.setSelectionRange(e)},this.indent=function(){var e=this.session,t=this.getSelectionRange();if(!(t.start.row<t.end.row)){if(t.start.column<t.end.column){var i=e.getTextRange(t);if(!/^\s+$/.test(i)){h=this.$getSelectedRows();return void e.indentRows(h.first,h.last,"\t")}}var n=e.getLine(t.start.row),r=t.start,s=e.getTabSize(),a=e.documentToScreenColumn(r.row,r.column);if(this.session.getUseSoftTabs())var l=s-a%s,c=o.stringRepeat(" ",l);else{for(l=a%s;" "==n[t.start.column]&&l;)t.start.column--,l--;this.selection.setSelectionRange(t),c="\t"}return this.insert(c)}var h=this.$getSelectedRows();e.indentRows(h.first,h.last,"\t")},this.blockIndent=function(){var e=this.$getSelectedRows();this.session.indentRows(e.first,e.last,"\t")},this.blockOutdent=function(){var e=this.session.getSelection();this.session.outdentRows(e.getRange())},this.sortLines=function(){var e=this.$getSelectedRows(),t=this.session,i=[];for(r=e.first;r<=e.last;r++)i.push(t.getLine(r));i.sort(function(e,t){return e.toLowerCase()<t.toLowerCase()?-1:e.toLowerCase()>t.toLowerCase()?1:0});for(var n=new f(0,0,0,0),r=e.first;r<=e.last;r++){var o=t.getLine(r);n.start.row=r,n.end.row=r,n.end.column=o.length,t.replace(n,i[r-e.first])}},this.toggleCommentLines=function(){var e=this.session.getState(this.getCursorPosition().row),t=this.$getSelectedRows();this.session.getMode().toggleCommentLines(e,this.session,t.first,t.last)},this.toggleBlockComment=function(){var e=this.getCursorPosition(),t=this.session.getState(e.row),i=this.getSelectionRange();this.session.getMode().toggleBlockComment(t,this.session,i,e)},this.getNumberAt=function(e,t){var i=/[\-]?[0-9]+(?:\.[0-9]+)?/g;i.lastIndex=0;for(var n=this.session.getLine(e);i.lastIndex<t;){var r=i.exec(n);if(r.index<=t&&r.index+r[0].length>=t)return{value:r[0],start:r.index,end:r.index+r[0].length}}return null},this.modifyNumber=function(e){var t=this.selection.getCursor().row,i=this.selection.getCursor().column,n=new f(t,i-1,t,i),r=this.session.getTextRange(n);if(!isNaN(parseFloat(r))&&isFinite(r)){var o=this.getNumberAt(t,i);if(o){var s=o.value.indexOf(".")>=0?o.start+o.value.indexOf(".")+1:o.end,a=o.start+o.value.length-s,l=parseFloat(o.value);l*=Math.pow(10,a),s!==o.end&&i<s?e*=Math.pow(10,o.end-i-1):e*=Math.pow(10,o.end-i),l+=e;var c=(l/=Math.pow(10,a)).toFixed(a),h=new f(t,o.start,t,o.end);this.session.replace(h,c),this.moveCursorTo(t,Math.max(o.start+1,i+c.length-o.value.length))}}},this.removeLines=function(){var e=this.$getSelectedRows();this.session.removeFullLines(e.first,e.last),this.clearSelection()},this.duplicateSelection=function(){var e=this.selection,t=this.session,i=e.getRange(),n=e.isBackwards();if(i.isEmpty()){var r=i.start.row;t.duplicateLines(r,r)}else{var o=n?i.start:i.end,s=t.insert(o,t.getTextRange(i),!1);i.start=o,i.end=s,e.setSelectionRange(i,n)}},this.moveLinesDown=function(){this.$moveLines(1,!1)},this.moveLinesUp=function(){this.$moveLines(-1,!1)},this.moveText=function(e,t,i){return this.session.moveText(e,t,i)},this.copyLinesUp=function(){this.$moveLines(-1,!0)},this.copyLinesDown=function(){this.$moveLines(1,!0)},this.$moveLines=function(e,t){var i,n,r=this.selection;if(!r.inMultiSelectMode||this.inVirtualSelectionMode){var o=r.toOrientedRange();i=this.$getSelectedRows(o),n=this.session.$moveLines(i.first,i.last,t?0:e),t&&-1==e&&(n=0),o.moveBy(n,0),r.fromOrientedRange(o)}else{var s=r.rangeList.ranges;r.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;for(var a=0,l=0,c=s.length,h=0;h<c;h++){var u=h;s[h].moveBy(a,0);for(var d=(i=this.$getSelectedRows(s[h])).first,f=i.last;++h<c;){l&&s[h].moveBy(l,0);var p=this.$getSelectedRows(s[h]);if(t&&p.first!=f)break;if(!t&&p.first>f+1)break;f=p.last}for(h--,a=this.session.$moveLines(d,f,t?0:e),t&&-1==e&&(u=h+1);u<=h;)s[u].moveBy(a,0),u++;t||(a=0),l+=a}r.fromOrientedRange(r.ranges[0]),r.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},this.$getSelectedRows=function(e){return e=(e||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(e.start.row),last:this.session.getRowFoldEnd(e.end.row)}},this.onCompositionStart=function(e){this.renderer.showComposition(this.getCursorPosition())},this.onCompositionUpdate=function(e){this.renderer.setCompositionText(e)},this.onCompositionEnd=function(){this.renderer.hideComposition()},this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},this.isRowVisible=function(e){return e>=this.getFirstVisibleRow()&&e<=this.getLastVisibleRow()},this.isRowFullyVisible=function(e){return e>=this.renderer.getFirstFullyVisibleRow()&&e<=this.renderer.getLastFullyVisibleRow()},this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},this.$moveByPage=function(e,t){var i=this.renderer,n=this.renderer.layerConfig,r=e*Math.floor(n.height/n.lineHeight);this.$blockScrolling++,!0===t?this.selection.$moveSelection(function(){this.moveCursorBy(r,0)}):!1===t&&(this.selection.moveCursorBy(r,0),this.selection.clearSelection()),this.$blockScrolling--;var o=i.scrollTop;i.scrollBy(0,r*n.lineHeight),null!=t&&i.scrollCursorIntoView(null,.5),i.animateScrolling(o)},this.selectPageDown=function(){this.$moveByPage(1,!0)},this.selectPageUp=function(){this.$moveByPage(-1,!0)},this.gotoPageDown=function(){this.$moveByPage(1,!1)},this.gotoPageUp=function(){this.$moveByPage(-1,!1)},this.scrollPageDown=function(){this.$moveByPage(1)},this.scrollPageUp=function(){this.$moveByPage(-1)},this.scrollToRow=function(e){this.renderer.scrollToRow(e)},this.scrollToLine=function(e,t,i,n){this.renderer.scrollToLine(e,t,i,n)},this.centerSelection=function(){var e=this.getSelectionRange(),t={row:Math.floor(e.start.row+(e.end.row-e.start.row)/2),column:Math.floor(e.start.column+(e.end.column-e.start.column)/2)};this.renderer.alignCursor(t,.5)},this.getCursorPosition=function(){return this.selection.getCursor()},this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},this.getSelectionRange=function(){return this.selection.getRange()},this.selectAll=function(){this.$blockScrolling+=1,this.selection.selectAll(),this.$blockScrolling-=1},this.clearSelection=function(){this.selection.clearSelection()},this.moveCursorTo=function(e,t){this.selection.moveCursorTo(e,t)},this.moveCursorToPosition=function(e){this.selection.moveCursorToPosition(e)},this.jumpToMatching=function(e,t){var i=this.getCursorPosition(),n=new y(this.session,i.row,i.column),r=n.getCurrentToken(),o=r||n.stepForward();if(o){var s,a,l=!1,c={},h=i.column-o.start,u={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(o.value.match(/[{}()\[\]]/g)){for(;h<o.value.length&&!l;h++)if(u[o.value[h]])switch(a=u[o.value[h]]+"."+o.type.replace("rparen","lparen"),isNaN(c[a])&&(c[a]=0),o.value[h]){case"(":case"[":case"{":c[a]++;break;case")":case"]":case"}":c[a]--,-1===c[a]&&(s="bracket",l=!0)}}else o&&-1!==o.type.indexOf("tag-name")&&(isNaN(c[o.value])&&(c[o.value]=0),"<"===r.value?c[o.value]++:"</"===r.value&&c[o.value]--,-1===c[o.value]&&(s="tag",l=!0));l||(r=o,o=n.stepForward(),h=0)}while(o&&!l);if(s){var d,p;if("bracket"===s)(d=this.session.getBracketRange(i))||(p=(d=new f(n.getCurrentTokenRow(),n.getCurrentTokenColumn()+h-1,n.getCurrentTokenRow(),n.getCurrentTokenColumn()+h-1)).start,(t||p.row===i.row&&Math.abs(p.column-i.column)<2)&&(d=this.session.getBracketRange(p)));else if("tag"===s){if(!o||-1===o.type.indexOf("tag-name"))return;var m=o.value;if(0===(d=new f(n.getCurrentTokenRow(),n.getCurrentTokenColumn()-2,n.getCurrentTokenRow(),n.getCurrentTokenColumn()-2)).compare(i.row,i.column)){l=!1;do{o=r,(r=n.stepBackward())&&(-1!==r.type.indexOf("tag-close")&&d.setEnd(n.getCurrentTokenRow(),n.getCurrentTokenColumn()+1),o.value===m&&-1!==o.type.indexOf("tag-name")&&("<"===r.value?c[m]++:"</"===r.value&&c[m]--,0===c[m]&&(l=!0)))}while(r&&!l)}o&&o.type.indexOf("tag-name")&&(p=d.start).row==i.row&&Math.abs(p.column-i.column)<2&&(p=d.end)}(p=d&&d.cursor||p)&&(e?d&&t?this.selection.setRange(d):d&&d.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo(p.row,p.column):this.selection.moveTo(p.row,p.column))}}},this.gotoLine=function(e,t,i){this.selection.clearSelection(),this.session.unfold({row:e-1,column:t||0}),this.$blockScrolling+=1,this.exitMultiSelectMode&&this.exitMultiSelectMode(),this.moveCursorTo(e-1,t||0),this.$blockScrolling-=1,this.isRowFullyVisible(e-1)||this.scrollToLine(e-1,!0,i)},this.navigateTo=function(e,t){this.selection.moveTo(e,t)},this.navigateUp=function(e){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection(),this.selection.moveCursorBy(-e||-1,0)},this.navigateDown=function(e){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection(),this.selection.moveCursorBy(e||1,0)},this.navigateLeft=function(e){if(this.selection.isEmpty())for(e=e||1;e--;)this.selection.moveCursorLeft();else{var t=this.getSelectionRange().start;this.moveCursorToPosition(t)}this.clearSelection()},this.navigateRight=function(e){if(this.selection.isEmpty())for(e=e||1;e--;)this.selection.moveCursorRight();else{var t=this.getSelectionRange().end;this.moveCursorToPosition(t)}this.clearSelection()},this.navigateLineStart=function(){this.selection.moveCursorLineStart(),this.clearSelection()},this.navigateLineEnd=function(){this.selection.moveCursorLineEnd(),this.clearSelection()},this.navigateFileEnd=function(){this.selection.moveCursorFileEnd(),this.clearSelection()},this.navigateFileStart=function(){this.selection.moveCursorFileStart(),this.clearSelection()},this.navigateWordRight=function(){this.selection.moveCursorWordRight(),this.clearSelection()},this.navigateWordLeft=function(){this.selection.moveCursorWordLeft(),this.clearSelection()},this.replace=function(e,t){t&&this.$search.set(t);var i=this.$search.find(this.session),n=0;return i?(this.$tryReplace(i,e)&&(n=1),null!==i&&(this.selection.setSelectionRange(i),this.renderer.scrollSelectionIntoView(i.start,i.end)),n):n},this.replaceAll=function(e,t){t&&this.$search.set(t);var i=this.$search.findAll(this.session),n=0;if(!i.length)return n;this.$blockScrolling+=1;var r=this.getSelectionRange();this.selection.moveTo(0,0);for(var o=i.length-1;o>=0;--o)this.$tryReplace(i[o],e)&&n++;return this.selection.setSelectionRange(r),this.$blockScrolling-=1,n},this.$tryReplace=function(e,t){var i=this.session.getTextRange(e);return null!==(t=this.$search.replace(i,t))?(e.end=this.session.replace(e,t),e):null},this.getLastSearchOptions=function(){return this.$search.getOptions()},this.find=function(e,t,i){t||(t={}),"string"==typeof e||e instanceof RegExp?t.needle=e:"object"==typeof e&&n.mixin(t,e);var r=this.selection.getRange();null==t.needle&&((e=this.session.getTextRange(r)||this.$search.$options.needle)||(r=this.session.getWordRange(r.start.row,r.start.column),e=this.session.getTextRange(r)),this.$search.set({needle:e})),this.$search.set(t),t.start||this.$search.set({start:r});var o=this.$search.find(this.session);return t.preventScroll?o:o?(this.revealRange(o,i),o):(t.backwards?r.start=r.end:r.end=r.start,void this.selection.setRange(r))},this.findNext=function(e,t){this.find({skipCurrent:!0,backwards:!1},e,t)},this.findPrevious=function(e,t){this.find(e,{skipCurrent:!0,backwards:!0},t)},this.revealRange=function(e,t){this.$blockScrolling+=1,this.session.unfold(e),this.selection.setSelectionRange(e),this.$blockScrolling-=1;var i=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(e.start,e.end,.5),!1!==t&&this.renderer.animateScrolling(i)},this.undo=function(){this.$blockScrolling++,this.session.getUndoManager().undo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.redo=function(){this.$blockScrolling++,this.session.getUndoManager().redo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.destroy=function(){this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy()},this.setAutoScrollEditorIntoView=function(e){if(e){var t,i=this,n=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var r=this.$scrollAnchor;r.style.cssText="position:absolute",this.container.insertBefore(r,this.container.firstChild);var o=this.on("changeSelection",function(){n=!0}),s=this.renderer.on("beforeRender",function(){n&&(t=i.renderer.container.getBoundingClientRect())}),a=this.renderer.on("afterRender",function(){if(n&&t&&(i.isFocused()||i.searchBox&&i.searchBox.isFocused())){var e=i.renderer,o=e.$cursorLayer.$pixelPos,s=e.layerConfig,a=o.top-s.offset;null!=(n=o.top>=0&&a+t.top<0||!(o.top<s.height&&o.top+t.top+s.lineHeight>window.innerHeight)&&null)&&(r.style.top=a+"px",r.style.left=o.left+"px",r.style.height=s.lineHeight+"px",r.scrollIntoView(n)),n=t=null}});this.setAutoScrollEditorIntoView=function(e){e||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",o),this.renderer.off("afterRender",a),this.renderer.off("beforeRender",s))}}},this.$resetCursorStyle=function(){var e=this.$cursorStyle||"ace",t=this.renderer.$cursorLayer;t&&(t.setSmoothBlinking(/smooth/.test(e)),t.isBlinking=!this.$readOnly&&"wide"!=e,r.setCssClass(t.element,"ace_slim-cursors",/slim/.test(e)))}}).call(w.prototype),v.defineOptions(w.prototype,"editor",{selectionStyle:{set:function(e){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:e})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(e){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(e){this.$resetCursorStyle()},initialValue:!1},cursorStyle:{set:function(e){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},autoScrollEditorIntoView:{set:function(e){this.setAutoScrollEditorIntoView(e)}},keyboardHandler:{set:function(e){this.setKeyboardHandler(e)},get:function(){return this.keybindingId},handlesSet:!0},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",showLineNumbers:"renderer",showGutter:"renderer",displayIndentGuides:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"}),t.Editor=w}),ace.define("ace/undomanager",["require","exports","module"],function(e,t,i){"use strict";var n=function(){this.reset()};(function(){function e(e){return{action:e.action,start:e.start,end:e.end,lines:1==e.lines.length?null:e.lines,text:1==e.lines.length?e.lines[0]:null}}function t(e){return{action:e.action,start:e.start,end:e.end,lines:e.lines||[e.text]}}function i(e,t){for(var i=new Array(e.length),n=0;n<e.length;n++){for(var r=e[n],o={group:r.group,deltas:new Array(r.length)},s=0;s<r.deltas.length;s++){var a=r.deltas[s];o.deltas[s]=t(a)}i[n]=o}return i}this.execute=function(e){var t=e.args[0];this.$doc=e.args[1],e.merge&&this.hasUndo()&&(this.dirtyCounter--,t=this.$undoStack.pop().concat(t)),this.$undoStack.push(t),this.$redoStack=[],this.dirtyCounter<0&&(this.dirtyCounter=NaN),this.dirtyCounter++},this.undo=function(e){var t=this.$undoStack.pop(),i=null;return t&&(i=this.$doc.undoChanges(t,e),this.$redoStack.push(t),this.dirtyCounter--),i},this.redo=function(e){var t=this.$redoStack.pop(),i=null;return t&&(i=this.$doc.redoChanges(this.$deserializeDeltas(t),e),this.$undoStack.push(t),this.dirtyCounter++),i},this.reset=function(){this.$undoStack=[],this.$redoStack=[],this.dirtyCounter=0},this.hasUndo=function(){return this.$undoStack.length>0},this.hasRedo=function(){return this.$redoStack.length>0},this.markClean=function(){this.dirtyCounter=0},this.isClean=function(){return 0===this.dirtyCounter},this.$serializeDeltas=function(t){return i(t,e)},this.$deserializeDeltas=function(e){return i(e,t)}}).call(n.prototype),t.UndoManager=n}),ace.define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("../lib/dom"),r=e("../lib/oop"),o=e("../lib/lang"),s=e("../lib/event_emitter").EventEmitter,a=function(e){this.element=n.createElement("div"),this.element.className="ace_layer ace_gutter-layer",e.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$cells=[]};(function(){r.implement(this,s),this.setSession=function(e){this.session&&this.session.removeEventListener("change",this.$updateAnnotations),this.session=e,e&&e.on("change",this.$updateAnnotations)},this.addGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(e,t)},this.setAnnotations=function(e){this.$annotations=[];for(var t=0;t<e.length;t++){var i=e[t],n=i.row,r=this.$annotations[n];r||(r=this.$annotations[n]={text:[]});var s=i.text;s=s?o.escapeHTML(s):i.html||"",-1===r.text.indexOf(s)&&r.text.push(s);var a=i.type;"error"==a?r.className=" ace_error":"warning"==a&&" ace_error"!=r.className?r.className=" ace_warning":"info"!=a||r.className||(r.className=" ace_info")}},this.$updateAnnotations=function(e){if(this.$annotations.length){var t=e.start.row,i=e.end.row-t;if(0===i);else if("remove"==e.action)this.$annotations.splice(t,i+1,null);else{var n=new Array(i+1);n.unshift(t,1),this.$annotations.splice.apply(this.$annotations,n)}}},this.update=function(e){for(var t=this.session,i=e.firstRow,r=Math.min(e.lastRow+e.gutterOffset,t.getLength()-1),o=t.getNextFoldLine(i),s=o?o.start.row:1/0,a=this.$showFoldWidgets&&t.foldWidgets,l=t.$breakpoints,c=t.$decorations,h=t.$firstLineNumber,u=0,d=t.gutterRenderer||this.$renderer,f=null,p=-1,m=i;;){if(m>s&&(m=o.end.row+1,s=(o=t.getNextFoldLine(m,o))?o.start.row:1/0),m>r){for(;this.$cells.length>p+1;)f=this.$cells.pop(),this.element.removeChild(f.element);break}(f=this.$cells[++p])||((f={element:null,textNode:null,foldWidget:null}).element=n.createElement("div"),f.textNode=document.createTextNode(""),f.element.appendChild(f.textNode),this.element.appendChild(f.element),this.$cells[p]=f);var g="ace_gutter-cell ";if(l[m]&&(g+=l[m]),c[m]&&(g+=c[m]),this.$annotations[m]&&(g+=this.$annotations[m].className),f.element.className!=g&&(f.element.className=g),(y=t.getRowLength(m)*e.lineHeight+"px")!=f.element.style.height&&(f.element.style.height=y),a){var v=a[m];null==v&&(v=a[m]=t.getFoldWidget(m))}if(v){f.foldWidget||(f.foldWidget=n.createElement("span"),f.element.appendChild(f.foldWidget));g="ace_fold-widget ace_"+v;"start"==v&&m==s&&m<o.end.row?g+=" ace_closed":g+=" ace_open",f.foldWidget.className!=g&&(f.foldWidget.className=g);var y=e.lineHeight+"px";f.foldWidget.style.height!=y&&(f.foldWidget.style.height=y)}else f.foldWidget&&(f.element.removeChild(f.foldWidget),f.foldWidget=null);var w=u=d?d.getText(t,m):m+h;w!=f.textNode.data&&(f.textNode.data=w),m++}this.element.style.height=e.minHeight+"px",(this.$fixedWidth||t.$useWrapMode)&&(u=t.getLength()+h);var b=d?d.getWidth(t,u,e):u.toString().length*e.characterWidth,C=this.$padding||this.$computePadding();(b+=C.left+C.right)===this.gutterWidth||isNaN(b)||(this.gutterWidth=b,this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._emit("changeGutterWidth",b))},this.$fixedWidth=!1,this.$showLineNumbers=!0,this.$renderer="",this.setShowLineNumbers=function(e){this.$renderer=!e&&{getWidth:function(){return""},getText:function(){return""}}},this.getShowLineNumbers=function(){return this.$showLineNumbers},this.$showFoldWidgets=!0,this.setShowFoldWidgets=function(e){e?n.addCssClass(this.element,"ace_folding-enabled"):n.removeCssClass(this.element,"ace_folding-enabled"),this.$showFoldWidgets=e,this.$padding=null},this.getShowFoldWidgets=function(){return this.$showFoldWidgets},this.$computePadding=function(){if(!this.element.firstChild)return{left:0,right:0};var e=n.computedStyle(this.element.firstChild);return this.$padding={},this.$padding.left=parseInt(e.paddingLeft)+1||0,this.$padding.right=parseInt(e.paddingRight)||0,this.$padding},this.getRegion=function(e){var t=this.$padding||this.$computePadding(),i=this.element.getBoundingClientRect();return e.x<t.left+i.left?"markers":this.$showFoldWidgets&&e.x>i.right-t.right?"foldWidgets":void 0}}).call(a.prototype),t.Gutter=a}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,t,i){"use strict";var n=e("../range").Range,r=e("../lib/dom"),o=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_marker-layer",e.appendChild(this.element)};(function(){function e(e,t,i,n){return(e?1:0)|(t?2:0)|(i?4:0)|(n?8:0)}this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setMarkers=function(e){this.markers=e},this.update=function(e){if(e=e||this.config){this.config=e;var t=[];for(var i in this.markers){var n=this.markers[i];if(n.range){var r=n.range.clipRows(e.firstRow,e.lastRow);if(!r.isEmpty())if(r=r.toScreenRange(this.session),n.renderer){var o=this.$getTop(r.start.row,e),s=this.$padding+r.start.column*e.characterWidth;n.renderer(t,r,s,o,e)}else"fullLine"==n.type?this.drawFullLineMarker(t,r,n.clazz,e):"screenLine"==n.type?this.drawScreenLineMarker(t,r,n.clazz,e):r.isMultiLine()?"text"==n.type?this.drawTextMarker(t,r,n.clazz,e):this.drawMultiLineMarker(t,r,n.clazz,e):this.drawSingleLineMarker(t,r,n.clazz+" ace_start ace_br15",e)}else n.update(t,this,this.session,e)}this.element.innerHTML=t.join("")}},this.$getTop=function(e,t){return(e-t.firstRowScreen)*t.lineHeight},this.drawTextMarker=function(t,i,r,o,s){for(var a=this.session,l=i.start.row,c=i.end.row,h=l,u=0,d=0,f=a.getScreenLastRowColumn(h),p=new n(h,i.start.column,h,d);h<=c;h++)p.start.row=p.end.row=h,p.start.column=h==l?i.start.column:a.getRowWrapIndent(h),p.end.column=f,u=d,d=f,f=h+1<c?a.getScreenLastRowColumn(h+1):h==c?0:i.end.column,this.drawSingleLineMarker(t,p,r+(h==l?" ace_start":"")+" ace_br"+e(h==l||h==l+1&&i.start.column,u<d,d>f,h==c),o,h==c?0:1,s)},this.drawMultiLineMarker=function(e,t,i,n,r){var o=this.$padding,s=n.lineHeight,a=this.$getTop(t.start.row,n),l=o+t.start.column*n.characterWidth;r=r||"",e.push("<div class='",i," ace_br1 ace_start' style='","height:",s,"px;","right:0;","top:",a,"px;","left:",l,"px;",r,"'></div>"),a=this.$getTop(t.end.row,n);var c=t.end.column*n.characterWidth;if(e.push("<div class='",i," ace_br12' style='","height:",s,"px;","width:",c,"px;","top:",a,"px;","left:",o,"px;",r,"'></div>"),!((s=(t.end.row-t.start.row-1)*n.lineHeight)<=0)){a=this.$getTop(t.start.row+1,n);var h=(t.start.column?1:0)|(t.end.column?0:8);e.push("<div class='",i,h?" ace_br"+h:"","' style='","height:",s,"px;","right:0;","top:",a,"px;","left:",o,"px;",r,"'></div>")}},this.drawSingleLineMarker=function(e,t,i,n,r,o){var s=n.lineHeight,a=(t.end.column+(r||0)-t.start.column)*n.characterWidth,l=this.$getTop(t.start.row,n),c=this.$padding+t.start.column*n.characterWidth;e.push("<div class='",i,"' style='","height:",s,"px;","width:",a,"px;","top:",l,"px;","left:",c,"px;",o||"","'></div>")},this.drawFullLineMarker=function(e,t,i,n,r){var o=this.$getTop(t.start.row,n),s=n.lineHeight;t.start.row!=t.end.row&&(s+=this.$getTop(t.end.row,n)-o),e.push("<div class='",i,"' style='","height:",s,"px;","top:",o,"px;","left:0;right:0;",r||"","'></div>")},this.drawScreenLineMarker=function(e,t,i,n,r){var o=this.$getTop(t.start.row,n),s=n.lineHeight;e.push("<div class='",i,"' style='","height:",s,"px;","top:",o,"px;","left:0;right:0;",r||"","'></div>")}}).call(o.prototype),t.Marker=o}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("../lib/oop"),r=e("../lib/dom"),o=e("../lib/lang"),s=(e("../lib/useragent"),e("../lib/event_emitter").EventEmitter),a=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_text-layer",e.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this)};(function(){n.implement(this,s),this.EOF_CHAR="¶",this.EOL_CHAR_LF="¬",this.EOL_CHAR_CRLF="¤",this.EOL_CHAR=this.EOL_CHAR_LF,this.TAB_CHAR="—",this.SPACE_CHAR="·",this.$padding=0,this.$updateEolChar=function(){var e="\n"==this.session.doc.getNewLineCharacter()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=e)return this.EOL_CHAR=e,!0},this.setPadding=function(e){this.$padding=e,this.element.style.padding="0 "+e+"px"},this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},this.$setFontMetrics=function(e){this.$fontMetrics=e,this.$fontMetrics.on("changeCharacterSize",function(e){this._signal("changeCharacterSize",e)}.bind(this)),this.$pollSizeChanges()},this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},this.setSession=function(e){this.session=e,e&&this.$computeTabString()},this.showInvisibles=!1,this.setShowInvisibles=function(e){return this.showInvisibles!=e&&(this.showInvisibles=e,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(e){return this.displayIndentGuides!=e&&(this.displayIndentGuides=e,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var e=this.session.getTabSize();this.tabSize=e;for(var t=this.$tabStrings=[0],i=1;i<e+1;i++)this.showInvisibles?t.push("<span class='ace_invisible ace_invisible_tab'>"+o.stringRepeat(this.TAB_CHAR,i)+"</span>"):t.push(o.stringRepeat(" ",i));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var n="ace_indent-guide",r="",s="";if(this.showInvisibles){n+=" ace_invisible",r=" ace_invisible_space",s=" ace_invisible_tab";var a=o.stringRepeat(this.SPACE_CHAR,this.tabSize),l=o.stringRepeat(this.TAB_CHAR,this.tabSize)}else l=a=o.stringRepeat(" ",this.tabSize);this.$tabStrings[" "]="<span class='"+n+r+"'>"+a+"</span>",this.$tabStrings["\t"]="<span class='"+n+s+"'>"+l+"</span>"}},this.updateLines=function(e,t,i){this.config.lastRow==e.lastRow&&this.config.firstRow==e.firstRow||this.scrollLines(e),this.config=e;for(var n=Math.max(t,e.firstRow),r=Math.min(i,e.lastRow),o=this.element.childNodes,s=0,a=e.firstRow;a<n;a++){if(l=this.session.getFoldLine(a)){if(l.containsRow(n)){n=l.start.row;break}a=l.end.row}s++}a=n;for(var l,c=(l=this.session.getNextFoldLine(a))?l.start.row:1/0;a>c&&(a=l.end.row+1,c=(l=this.session.getNextFoldLine(a,l))?l.start.row:1/0),!(a>r);){var h=o[s++];if(h){var u=[];this.$renderLine(u,a,!this.$useLineGroups(),a==c&&l),h.style.height=e.lineHeight*this.session.getRowLength(a)+"px",h.innerHTML=u.join("")}a++}},this.scrollLines=function(e){var t=this.config;if(this.config=e,!t||t.lastRow<e.firstRow)return this.update(e);if(e.lastRow<t.firstRow)return this.update(e);var i=this.element;if(t.firstRow<e.firstRow)for(var n=this.session.getFoldedRowCount(t.firstRow,e.firstRow-1);n>0;n--)i.removeChild(i.firstChild);if(t.lastRow>e.lastRow)for(n=this.session.getFoldedRowCount(e.lastRow+1,t.lastRow);n>0;n--)i.removeChild(i.lastChild);if(e.firstRow<t.firstRow){var r=this.$renderLinesFragment(e,e.firstRow,t.firstRow-1);i.firstChild?i.insertBefore(r,i.firstChild):i.appendChild(r)}if(e.lastRow>t.lastRow){r=this.$renderLinesFragment(e,t.lastRow+1,e.lastRow);i.appendChild(r)}},this.$renderLinesFragment=function(e,t,i){for(var n=this.element.ownerDocument.createDocumentFragment(),o=t,s=this.session.getNextFoldLine(o),a=s?s.start.row:1/0;o>a&&(o=s.end.row+1,a=(s=this.session.getNextFoldLine(o,s))?s.start.row:1/0),!(o>i);){var l=r.createElement("div"),c=[];if(this.$renderLine(c,o,!1,o==a&&s),l.innerHTML=c.join(""),this.$useLineGroups())l.className="ace_line_group",n.appendChild(l),l.style.height=e.lineHeight*this.session.getRowLength(o)+"px";else for(;l.firstChild;)n.appendChild(l.firstChild);o++}return n},this.update=function(e){this.config=e;for(var t=[],i=e.firstRow,n=e.lastRow,r=i,o=this.session.getNextFoldLine(r),s=o?o.start.row:1/0;r>s&&(r=o.end.row+1,s=(o=this.session.getNextFoldLine(r,o))?o.start.row:1/0),!(r>n);)this.$useLineGroups()&&t.push("<div class='ace_line_group' style='height:",e.lineHeight*this.session.getRowLength(r),"px'>"),this.$renderLine(t,r,!1,r==s&&o),this.$useLineGroups()&&t.push("</div>"),r++;this.element.innerHTML=t.join("")},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(e,t,i,n){var r=this,s=n.replace(/\t|&|<|>|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\u3000\uFEFF\uFFF9-\uFFFC])|[\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3000-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]/g,function(e,i,n,s,a){if(i)return r.showInvisibles?"<span class='ace_invisible ace_invisible_space'>"+o.stringRepeat(r.SPACE_CHAR,e.length)+"</span>":e;if("&"==e)return"&";if("<"==e)return"<";if(">"==e)return">";if("\t"==e){var l=r.session.getScreenTabSize(t+s);return t+=l-1,r.$tabStrings[l]}if(" "==e){var c=r.showInvisibles?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",h=r.showInvisibles?r.SPACE_CHAR:"";return t+=1,"<span class='"+c+"' style='width:"+2*r.config.characterWidth+"px'>"+h+"</span>"}return n?"<span class='ace_invisible ace_invisible_space ace_invalid'>"+r.SPACE_CHAR+"</span>":(t+=1,"<span class='ace_cjk' style='width:"+2*r.config.characterWidth+"px'>"+e+"</span>")});if(this.$textToken[i.type])e.push(s);else{var a="ace_"+i.type.replace(/\./g," ace_"),l="";"fold"==i.type&&(l=" style='width:"+i.value.length*this.config.characterWidth+"px;' "),e.push("<span class='",a,"'",l,">",s,"</span>")}return t+n.length},this.renderIndentGuide=function(e,t,i){var n=t.search(this.$indentGuideRe);return n<=0||n>=i?t:" "==t[0]?(n-=n%this.tabSize,e.push(o.stringRepeat(this.$tabStrings[" "],n/this.tabSize)),t.substr(n)):"\t"==t[0]?(e.push(o.stringRepeat(this.$tabStrings["\t"],n)),t.substr(n)):t},this.$renderWrappedLine=function(e,t,i,n){for(var r=0,s=0,a=i[0],l=0,c=0;c<t.length;c++){var h=t[c],u=h.value;if(0==c&&this.displayIndentGuides){if(r=u.length,!(u=this.renderIndentGuide(e,u,a)))continue;r-=u.length}if(r+u.length<a)l=this.$renderToken(e,l,h,u),r+=u.length;else{for(;r+u.length>=a;)l=this.$renderToken(e,l,h,u.substring(0,a-r)),u=u.substring(a-r),r=a,n||e.push("</div>","<div class='ace_line' style='height:",this.config.lineHeight,"px'>"),e.push(o.stringRepeat(" ",i.indent)),l=0,a=i[++s]||Number.MAX_VALUE;0!=u.length&&(r+=u.length,l=this.$renderToken(e,l,h,u))}}},this.$renderSimpleLine=function(e,t){var i=0,n=t[0],r=n.value;this.displayIndentGuides&&(r=this.renderIndentGuide(e,r)),r&&(i=this.$renderToken(e,i,n,r));for(var o=1;o<t.length;o++)r=(n=t[o]).value,i=this.$renderToken(e,i,n,r)},this.$renderLine=function(e,t,i,n){if(n||0==n||(n=this.session.getFoldLine(t)),n)var r=this.$getFoldLineTokens(t,n);else r=this.session.getTokens(t);if(i||e.push("<div class='ace_line' style='height:",this.config.lineHeight*(this.$useLineGroups()?1:this.session.getRowLength(t)),"px'>"),r.length){var o=this.session.getRowSplitData(t);o&&o.length?this.$renderWrappedLine(e,r,o,i):this.$renderSimpleLine(e,r)}this.showInvisibles&&(n&&(t=n.end.row),e.push("<span class='ace_invisible ace_invisible_eol'>",t==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,"</span>")),i||e.push("</div>")},this.$getFoldLineTokens=function(e,t){var i=this.session,n=[];var r=i.getTokens(e);return t.walk(function(e,t,o,s,a){null!=e?n.push({type:"fold",value:e}):(a&&(r=i.getTokens(t)),r.length&&function(e,t,i){for(var r=0,o=0;o+e[r].value.length<t;)if(o+=e[r].value.length,++r==e.length)return;for(o!=t&&((s=e[r].value.substring(t-o)).length>i-t&&(s=s.substring(0,i-t)),n.push({type:e[r].type,value:s}),o=t+s.length,r+=1);o<i&&r<e.length;){var s;(s=e[r].value).length+o>i?n.push({type:e[r].type,value:s.substring(0,i-o)}):n.push(e[r]),o+=s.length,r+=1}}(r,s,o))},t.end.row,this.session.getLine(t.end.row).length),n},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$measureNode&&this.$measureNode.parentNode.removeChild(this.$measureNode),delete this.$measureNode}}).call(a.prototype),t.Text=a}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,t,i){"use strict";var n,r=e("../lib/dom"),o=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_cursor-layer",e.appendChild(this.element),void 0===n&&(n=!("opacity"in this.element.style)),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),r.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=(n?this.$updateVisibility:this.$updateOpacity).bind(this)};(function(){this.$updateVisibility=function(e){for(var t=this.cursors,i=t.length;i--;)t[i].style.visibility=e?"":"hidden"},this.$updateOpacity=function(e){for(var t=this.cursors,i=t.length;i--;)t[i].style.opacity=e?"":"0"},this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setBlinking=function(e){e!=this.isBlinking&&(this.isBlinking=e,this.restartTimer())},this.setBlinkInterval=function(e){e!=this.blinkInterval&&(this.blinkInterval=e,this.restartTimer())},this.setSmoothBlinking=function(e){e==this.smoothBlinking||n||(this.smoothBlinking=e,r.setCssClass(this.element,"ace_smooth-blinking",e),this.$updateCursors(!0),this.$updateCursors=this.$updateOpacity.bind(this),this.restartTimer())},this.addCursor=function(){var e=r.createElement("div");return e.className="ace_cursor",this.element.appendChild(e),this.cursors.push(e),e},this.removeCursor=function(){if(this.cursors.length>1){var e=this.cursors.pop();return e.parentNode.removeChild(e),e}},this.hideCursor=function(){this.isVisible=!1,r.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,r.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){var e=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.smoothBlinking&&r.removeCssClass(this.element,"ace_smooth-blinking"),e(!0),this.isBlinking&&this.blinkInterval&&this.isVisible){this.smoothBlinking&&setTimeout(function(){r.addCssClass(this.element,"ace_smooth-blinking")}.bind(this));var t=function(){this.timeoutId=setTimeout(function(){e(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){e(!0),t()},this.blinkInterval),t()}},this.getPixelPosition=function(e,t){if(!this.config||!this.session)return{left:0,top:0};e||(e=this.session.selection.getCursor());var i=this.session.documentToScreenPosition(e);return{left:this.$padding+i.column*this.config.characterWidth,top:(i.row-(t?this.config.firstRowScreen:0))*this.config.lineHeight}},this.update=function(e){this.config=e;var t=this.session.$selectionMarkers,i=0,n=0;void 0!==t&&0!==t.length||(t=[{cursor:null}]);i=0;for(var r=t.length;i<r;i++){var o=this.getPixelPosition(t[i].cursor,!0);if(!((o.top>e.height+e.offset||o.top<0)&&i>1)){var s=(this.cursors[n++]||this.addCursor()).style;this.drawCursor?this.drawCursor(s,o,e,t[i],this.session):(s.left=o.left+"px",s.top=o.top+"px",s.width=e.characterWidth+"px",s.height=e.lineHeight+"px")}}for(;this.cursors.length>n;)this.removeCursor();var a=this.session.getOverwrite();this.$setOverwrite(a),this.$pixelPos=o,this.restartTimer()},this.drawCursor=null,this.$setOverwrite=function(e){e!=this.overwrite&&(this.overwrite=e,e?r.addCssClass(this.element,"ace_overwrite-cursors"):r.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(o.prototype),t.Cursor=o}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/dom"),o=e("./lib/event"),s=e("./lib/event_emitter").EventEmitter,a=function(e){this.element=r.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=r.createElement("div"),this.inner.className="ace_scrollbar-inner",this.element.appendChild(this.inner),e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,o.addListener(this.element,"scroll",this.onScroll.bind(this)),o.addListener(this.element,"mousedown",o.preventDefault)};(function(){n.implement(this,s),this.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e}}).call(a.prototype);var l=function(e,t){a.call(this,e),this.scrollTop=0,t.$scrollbarWidth=this.width=r.scrollbarWidth(e.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px"};n.inherits(l,a),function(){this.classSuffix="-v",this.onScroll=function(){this.skipEvent||(this.scrollTop=this.element.scrollTop,this._emit("scroll",{data:this.scrollTop})),this.skipEvent=!1},this.getWidth=function(){return this.isVisible?this.width:0},this.setHeight=function(e){this.element.style.height=e+"px"},this.setInnerHeight=function(e){this.inner.style.height=e+"px"},this.setScrollHeight=function(e){this.inner.style.height=e+"px"},this.setScrollTop=function(e){this.scrollTop!=e&&(this.skipEvent=!0,this.scrollTop=this.element.scrollTop=e)}}.call(l.prototype);var c=function(e,t){a.call(this,e),this.scrollLeft=0,this.height=t.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};n.inherits(c,a),function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(e){this.element.style.width=e+"px"},this.setInnerWidth=function(e){this.inner.style.width=e+"px"},this.setScrollWidth=function(e){this.inner.style.width=e+"px"},this.setScrollLeft=function(e){this.scrollLeft!=e&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=e)}}.call(c.prototype),t.ScrollBar=l,t.ScrollBarV=l,t.ScrollBarH=c,t.VScrollBar=l,t.HScrollBar=c}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,t,i){"use strict";var n=e("./lib/event"),r=function(e,t){this.onRender=e,this.pending=!1,this.changes=0,this.window=t||window};(function(){this.schedule=function(e){if(this.changes=this.changes|e,!this.pending&&this.changes){this.pending=!0;var t=this;n.nextFrame(function(){var e;for(t.pending=!1;e=t.changes;)t.changes=0,t.onRender(e)},this.window)}}}).call(r.prototype),t.RenderLoop=r}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,i){var n=e("../lib/oop"),r=e("../lib/dom"),o=e("../lib/lang"),s=e("../lib/useragent"),a=e("../lib/event_emitter").EventEmitter,l=0,c=t.FontMetrics=function(e){this.el=r.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=r.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=r.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),e.appendChild(this.el),l||this.$testFractionalRect(),this.$measureNode.innerHTML=o.stringRepeat("X",l),this.$characterSize={width:0,height:0},this.checkForSizeChanges()};(function(){n.implement(this,a),this.$characterSize={width:0,height:0},this.$testFractionalRect=function(){var e=r.createElement("div");this.$setMeasureNodeStyles(e.style),e.style.width="0.2px",document.documentElement.appendChild(e);var t=e.getBoundingClientRect().width;l=t>0&&t<1?50:100,e.parentNode.removeChild(e)},this.$setMeasureNodeStyles=function(e,t){e.width=e.height="auto",e.left=e.top="0px",e.visibility="hidden",e.position="absolute",e.whiteSpace="pre",s.isIE<8?e["font-family"]="inherit":e.font="inherit",e.overflow=t?"hidden":"visible"},this.checkForSizeChanges=function(){var e=this.$measureSizes();if(e&&(this.$characterSize.width!==e.width||this.$characterSize.height!==e.height)){this.$measureNode.style.fontWeight="bold";var t=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=e,this.charSizes=Object.create(null),this.allowBoldFonts=t&&t.width===e.width&&t.height===e.height,this._emit("changeCharacterSize",{data:e})}},this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer)return this.$pollSizeChangesTimer;var e=this;return this.$pollSizeChangesTimer=setInterval(function(){e.checkForSizeChanges()},500)},this.setPolling=function(e){e?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},this.$measureSizes=function(){if(50===l){var e=null;try{e=this.$measureNode.getBoundingClientRect()}catch(t){e={width:0,height:0}}var t={height:e.height,width:e.width/l}}else t={height:this.$measureNode.clientHeight,width:this.$measureNode.clientWidth/l};return 0===t.width||0===t.height?null:t},this.$measureCharWidth=function(e){return this.$main.innerHTML=o.stringRepeat(e,l),this.$main.getBoundingClientRect().width/l},this.getCharacterWidth=function(e){var t=this.charSizes[e];return void 0===t&&(t=this.charSizes[e]=this.$measureCharWidth(e)/this.$characterSize.width),t},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)}}).call(c.prototype)}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/config","ace/lib/useragent","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/dom"),o=e("./config"),s=e("./lib/useragent"),a=e("./layer/gutter").Gutter,l=e("./layer/marker").Marker,c=e("./layer/text").Text,h=e("./layer/cursor").Cursor,u=e("./scrollbar").HScrollBar,d=e("./scrollbar").VScrollBar,f=e("./renderloop").RenderLoop,p=e("./layer/font_metrics").FontMetrics,m=e("./lib/event_emitter").EventEmitter;r.importCssString('.ace_editor {\tposition: relative;\toverflow: hidden;\tfont: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'source-code-pro\', monospace;\tdirection: ltr;\t}\t.ace_scroller {\tposition: absolute;\toverflow: hidden;\ttop: 0;\tbottom: 0;\tbackground-color: inherit;\t-ms-user-select: none;\t-moz-user-select: none;\t-webkit-user-select: none;\tuser-select: none;\tcursor: text;\t}\t.ace_content {\tposition: absolute;\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tmin-width: 100%;\t}\t.ace_dragging .ace_scroller:before{\tposition: absolute;\ttop: 0;\tleft: 0;\tright: 0;\tbottom: 0;\tcontent: \'\';\tbackground: rgba(250, 250, 250, 0.01);\tz-index: 1000;\t}\t.ace_dragging.ace_dark .ace_scroller:before{\tbackground: rgba(0, 0, 0, 0.01);\t}\t.ace_selecting, .ace_selecting * {\tcursor: text !important;\t}\t.ace_gutter {\tposition: absolute;\toverflow : hidden;\twidth: auto;\ttop: 0;\tbottom: 0;\tleft: 0;\tcursor: default;\tz-index: 4;\t-ms-user-select: none;\t-moz-user-select: none;\t-webkit-user-select: none;\tuser-select: none;\t}\t.ace_gutter-active-line {\tposition: absolute;\tleft: 0;\tright: 0;\t}\t.ace_scroller.ace_scroll-left {\tbox-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;\t}\t.ace_gutter-cell {\tpadding-left: 19px;\tpadding-right: 6px;\tbackground-repeat: no-repeat;\t}\t.ace_gutter-cell.ace_error {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");\tbackground-repeat: no-repeat;\tbackground-position: 2px center;\t}\t.ace_gutter-cell.ace_warning {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");\tbackground-position: 2px center;\t}\t.ace_gutter-cell.ace_info {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");\tbackground-position: 2px center;\t}\t.ace_dark .ace_gutter-cell.ace_info {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");\t}\t.ace_scrollbar {\tposition: absolute;\tright: 0;\tbottom: 0;\tz-index: 6;\t}\t.ace_scrollbar-inner {\tposition: absolute;\tcursor: text;\tleft: 0;\ttop: 0;\t}\t.ace_scrollbar-v{\toverflow-x: hidden;\toverflow-y: scroll;\ttop: 0;\t}\t.ace_scrollbar-h {\toverflow-x: scroll;\toverflow-y: hidden;\tleft: 0;\t}\t.ace_print-margin {\tposition: absolute;\theight: 100%;\t}\t.ace_text-input {\tposition: absolute;\tz-index: 0;\twidth: 0.5em;\theight: 1em;\topacity: 0;\tbackground: transparent;\t-moz-appearance: none;\tappearance: none;\tborder: none;\tresize: none;\toutline: none;\toverflow: hidden;\tfont: inherit;\tpadding: 0 1px;\tmargin: 0 -1px;\ttext-indent: -1em;\t-ms-user-select: text;\t-moz-user-select: text;\t-webkit-user-select: text;\tuser-select: text;\twhite-space: pre!important;\t}\t.ace_text-input.ace_composition {\tbackground: inherit;\tcolor: inherit;\tz-index: 1000;\topacity: 1;\ttext-indent: 0;\t}\t.ace_layer {\tz-index: 1;\tposition: absolute;\toverflow: hidden;\tword-wrap: normal;\twhite-space: pre;\theight: 100%;\twidth: 100%;\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tpointer-events: none;\t}\t.ace_gutter-layer {\tposition: relative;\twidth: auto;\ttext-align: right;\tpointer-events: auto;\t}\t.ace_text-layer {\tfont: inherit !important;\t}\t.ace_cjk {\tdisplay: inline-block;\ttext-align: center;\t}\t.ace_cursor-layer {\tz-index: 4;\t}\t.ace_cursor {\tz-index: 4;\tposition: absolute;\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tborder-left: 2px solid;\ttransform: translatez(0);\t}\t.ace_slim-cursors .ace_cursor {\tborder-left-width: 1px;\t}\t.ace_overwrite-cursors .ace_cursor {\tborder-left-width: 0;\tborder-bottom: 1px solid;\t}\t.ace_hidden-cursors .ace_cursor {\topacity: 0.2;\t}\t.ace_smooth-blinking .ace_cursor {\t-webkit-transition: opacity 0.18s;\ttransition: opacity 0.18s;\t}\t.ace_editor.ace_multiselect .ace_cursor {\tborder-left-width: 1px;\t}\t.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {\tposition: absolute;\tz-index: 3;\t}\t.ace_marker-layer .ace_selection {\tposition: absolute;\tz-index: 5;\t}\t.ace_marker-layer .ace_bracket {\tposition: absolute;\tz-index: 6;\t}\t.ace_marker-layer .ace_active-line {\tposition: absolute;\tz-index: 2;\t}\t.ace_marker-layer .ace_selected-word {\tposition: absolute;\tz-index: 4;\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\t}\t.ace_line .ace_fold {\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tdisplay: inline-block;\theight: 11px;\tmargin-top: -2px;\tvertical-align: middle;\tbackground-image:\turl("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),\turl("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");\tbackground-repeat: no-repeat, repeat-x;\tbackground-position: center center, top left;\tcolor: transparent;\tborder: 1px solid black;\tborder-radius: 2px;\tcursor: pointer;\tpointer-events: auto;\t}\t.ace_dark .ace_fold {\t}\t.ace_fold:hover{\tbackground-image:\turl("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),\turl("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");\t}\t.ace_tooltip {\tbackground-color: #FFF;\tbackground-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1));\tbackground-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));\tborder: 1px solid gray;\tborder-radius: 1px;\tbox-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);\tcolor: black;\tmax-width: 100%;\tpadding: 3px 4px;\tposition: fixed;\tz-index: 999999;\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tcursor: default;\twhite-space: pre;\tword-wrap: break-word;\tline-height: normal;\tfont-style: normal;\tfont-weight: normal;\tletter-spacing: normal;\tpointer-events: none;\t}\t.ace_folding-enabled > .ace_gutter-cell {\tpadding-right: 13px;\t}\t.ace_fold-widget {\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tmargin: 0 -12px 0 1px;\tdisplay: none;\twidth: 11px;\tvertical-align: top;\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");\tbackground-repeat: no-repeat;\tbackground-position: center;\tborder-radius: 3px;\tborder: 1px solid transparent;\tcursor: pointer;\t}\t.ace_folding-enabled .ace_fold-widget {\tdisplay: inline-block; \t}\t.ace_fold-widget.ace_end {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");\t}\t.ace_fold-widget.ace_closed {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");\t}\t.ace_fold-widget:hover {\tborder: 1px solid rgba(0, 0, 0, 0.3);\tbackground-color: rgba(255, 255, 255, 0.2);\tbox-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);\t}\t.ace_fold-widget:active {\tborder: 1px solid rgba(0, 0, 0, 0.4);\tbackground-color: rgba(0, 0, 0, 0.05);\tbox-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);\t}\t.ace_dark .ace_fold-widget {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");\t}\t.ace_dark .ace_fold-widget.ace_end {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");\t}\t.ace_dark .ace_fold-widget.ace_closed {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");\t}\t.ace_dark .ace_fold-widget:hover {\tbox-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\tbackground-color: rgba(255, 255, 255, 0.1);\t}\t.ace_dark .ace_fold-widget:active {\tbox-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\t}\t.ace_fold-widget.ace_invalid {\tbackground-color: #FFB4B4;\tborder-color: #DE5555;\t}\t.ace_fade-fold-widgets .ace_fold-widget {\t-webkit-transition: opacity 0.4s ease 0.05s;\ttransition: opacity 0.4s ease 0.05s;\topacity: 0;\t}\t.ace_fade-fold-widgets:hover .ace_fold-widget {\t-webkit-transition: opacity 0.05s ease 0.05s;\ttransition: opacity 0.05s ease 0.05s;\topacity:1;\t}\t.ace_underline {\ttext-decoration: underline;\t}\t.ace_bold {\tfont-weight: bold;\t}\t.ace_nobold .ace_bold {\tfont-weight: normal;\t}\t.ace_italic {\tfont-style: italic;\t}\t.ace_error-marker {\tbackground-color: rgba(255, 0, 0,0.2);\tposition: absolute;\tz-index: 9;\t}\t.ace_highlight-marker {\tbackground-color: rgba(255, 255, 0,0.2);\tposition: absolute;\tz-index: 8;\t}\t.ace_br1 {border-top-left-radius : 3px;}\t.ace_br2 {border-top-right-radius : 3px;}\t.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}\t.ace_br4 {border-bottom-right-radius: 3px;}\t.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}\t.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}\t.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}\t.ace_br8 {border-bottom-left-radius : 3px;}\t.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}\t.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}\t.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}\t.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\t.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\t.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\t.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\t',"ace_editor.css");var g=function(e,t){var i=this;this.container=e||r.createElement("div"),this.$keepTextAreaAtCursor=!s.isOldIE,r.addCssClass(this.container,"ace_editor"),this.setTheme(t),this.$gutter=r.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.scroller=r.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=r.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new a(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new l(this.content);var n=this.$textLayer=new c(this.content);this.canvas=n.element,this.$markerFront=new l(this.content),this.$cursorLayer=new h(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new d(this.container,this),this.scrollBarH=new u(this.container,this),this.scrollBarV.addEventListener("scroll",function(e){i.$scrollAnimation||i.session.setScrollTop(e.data-i.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(e){i.$scrollAnimation||i.session.setScrollLeft(e.data-i.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new p(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.addEventListener("changeCharacterSize",function(e){i.updateCharacterSize(),i.onResize(!0,i.gutterWidth,i.$size.width,i.$size.height),i._signal("changeCharacterSize",e)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$loop=new f(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),o.resetOptions(this),o._emit("renderer",this)};(function(){this.CHANGE_CURSOR=1,this.CHANGE_MARKER=2,this.CHANGE_GUTTER=4,this.CHANGE_SCROLL=8,this.CHANGE_LINES=16,this.CHANGE_TEXT=32,this.CHANGE_SIZE=64,this.CHANGE_MARKER_BACK=128,this.CHANGE_MARKER_FRONT=256,this.CHANGE_FULL=512,this.CHANGE_H_SCROLL=1024,n.implement(this,m),this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin()},this.setSession=function(e){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=e,e&&this.scrollMargin.top&&e.getScrollTop()<=0&&e.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(e),this.$markerBack.setSession(e),this.$markerFront.setSession(e),this.$gutterLayer.setSession(e),this.$textLayer.setSession(e),e&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},this.updateLines=function(e,t,i){if(void 0===t&&(t=1/0),this.$changedLines?(this.$changedLines.firstRow>e&&(this.$changedLines.firstRow=e),this.$changedLines.lastRow<t&&(this.$changedLines.lastRow=t)):this.$changedLines={firstRow:e,lastRow:t},this.$changedLines.lastRow<this.layerConfig.firstRow){if(!i)return;this.$changedLines.lastRow=this.layerConfig.lastRow}this.$changedLines.firstRow>this.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},this.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar()},this.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},this.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},this.updateFull=function(e){e?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},this.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},this.$changes=0,this.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},this.onResize=function(e,t,i,n){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=e?1:0;var r=this.container;n||(n=r.clientHeight||r.scrollHeight),i||(i=r.clientWidth||r.scrollWidth);var o=this.$updateCachedSize(e,t,i,n);if(!this.$size.scrollerHeight||!i&&!n)return this.resizing=0;e&&(this.$gutterLayer.$padding=null),e?this.$renderChanges(o|this.$changes,!0):this.$loop.schedule(o|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarV.scrollLeft=this.scrollBarV.scrollTop=null}},this.$updateCachedSize=function(e,t,i,n){n-=this.$extraHeight||0;var r=0,o=this.$size,s={width:o.width,height:o.height,scrollerHeight:o.scrollerHeight,scrollerWidth:o.scrollerWidth};return n&&(e||o.height!=n)&&(o.height=n,r|=this.CHANGE_SIZE,o.scrollerHeight=o.height,this.$horizScroll&&(o.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",r|=this.CHANGE_SCROLL),i&&(e||o.width!=i)&&(r|=this.CHANGE_SIZE,o.width=i,null==t&&(t=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=t,this.scrollBarH.element.style.left=this.scroller.style.left=t+"px",o.scrollerWidth=Math.max(0,i-t-this.scrollBarV.getWidth()),this.scrollBarH.element.style.right=this.scroller.style.right=this.scrollBarV.getWidth()+"px",this.scroller.style.bottom=this.scrollBarH.getHeight()+"px",(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||e)&&(r|=this.CHANGE_FULL)),o.$dirty=!i||!n,r&&this._signal("resize",s),r},this.onGutterResize=function(){var e=this.$showGutter?this.$gutter.offsetWidth:0;e!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,e,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):(this.$computeLayerConfig(),this.$loop.schedule(this.CHANGE_MARKER))},this.adjustWrapLimit=function(){var e=this.$size.scrollerWidth-2*this.$padding,t=Math.floor(e/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)},this.setAnimatedScroll=function(e){this.setOption("animatedScroll",e)},this.getAnimatedScroll=function(){return this.$animatedScroll},this.setShowInvisibles=function(e){this.setOption("showInvisibles",e)},this.getShowInvisibles=function(){return this.getOption("showInvisibles")},this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},this.setDisplayIndentGuides=function(e){this.setOption("displayIndentGuides",e)},this.setShowPrintMargin=function(e){this.setOption("showPrintMargin",e)},this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},this.setPrintMarginColumn=function(e){this.setOption("printMarginColumn",e)},this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},this.getShowGutter=function(){return this.getOption("showGutter")},this.setShowGutter=function(e){return this.setOption("showGutter",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.$updateGutterLineHighlight=function(){var e=this.$cursorLayer.$pixelPos,t=this.layerConfig.lineHeight;if(this.session.getUseWrapMode()){var i=this.session.selection.getCursor();i.column=0,e=this.$cursorLayer.getPixelPosition(i,!0),t*=this.session.getRowLength(i.row)}this.$gutterLineHighlight.style.top=e.top-this.layerConfig.offset+"px",this.$gutterLineHighlight.style.height=t+"px"},this.$updatePrintMargin=function(){if(this.$showPrintMargin||this.$printMarginEl){if(!this.$printMarginEl){var e=r.createElement("div");e.className="ace_layer ace_print-margin-layer",this.$printMarginEl=r.createElement("div"),this.$printMarginEl.className="ace_print-margin",e.appendChild(this.$printMarginEl),this.content.insertBefore(e,this.content.firstChild)}var t=this.$printMarginEl.style;t.left=this.characterWidth*this.$printMarginColumn+this.$padding+"px",t.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&-1==this.session.$wrap&&this.adjustWrapLimit()}},this.getContainerElement=function(){return this.container},this.getMouseEventTarget=function(){return this.scroller},this.getTextAreaContainer=function(){return this.container},this.$moveTextAreaToCursor=function(){if(this.$keepTextAreaAtCursor){var e=this.layerConfig,t=this.$cursorLayer.$pixelPos.top,i=this.$cursorLayer.$pixelPos.left;t-=e.offset;var n=this.textarea.style,r=this.lineHeight;if(t<0||t>e.height-r)n.top=n.left="0";else{var o=this.characterWidth;if(this.$composition){var s=this.textarea.value.replace(/^\x01+/,"");o*=this.session.$getStringScreenWidth(s)[0]+2,r+=2}(i-=this.scrollLeft)>this.$size.scrollerWidth-o&&(i=this.$size.scrollerWidth-o),i+=this.gutterWidth,n.height=r+"px",n.width=o+"px",n.left=Math.min(i,this.$size.scrollerWidth-o)+"px",n.top=Math.min(t,this.$size.height-r)+"px"}}},this.getFirstVisibleRow=function(){return this.layerConfig.firstRow},this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(0===this.layerConfig.offset?0:1)},this.getLastFullyVisibleRow=function(){var e=this.layerConfig,t=e.lastRow;return this.session.documentToScreenRow(t,0)*e.lineHeight-this.session.getScrollTop()>e.height-e.lineHeight?t-1:t},this.getLastVisibleRow=function(){return this.layerConfig.lastRow},this.$padding=null,this.setPadding=function(e){this.$padding=e,this.$textLayer.setPadding(e),this.$cursorLayer.setPadding(e),this.$markerFront.setPadding(e),this.$markerBack.setPadding(e),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},this.setScrollMargin=function(e,t,i,n){var r=this.scrollMargin;r.top=0|e,r.bottom=0|t,r.right=0|n,r.left=0|i,r.v=r.top+r.bottom,r.h=r.left+r.right,r.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-r.top),this.updateFull()},this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setHScrollBarAlwaysVisible=function(e){this.setOption("hScrollBarAlwaysVisible",e)},this.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},this.setVScrollBarAlwaysVisible=function(e){this.setOption("vScrollBarAlwaysVisible",e)},this.$updateScrollBarV=function(){var e=this.layerConfig.maxHeight,t=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(e-=(t-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>e-t&&(e=this.scrollTop+t,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(e+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},this.$frozen=!1,this.freeze=function(){this.$frozen=!0},this.unfreeze=function(){this.$frozen=!1},this.$renderChanges=function(e,t){if(this.$changes&&(e|=this.$changes,this.$changes=0),this.session&&this.container.offsetWidth&&!this.$frozen&&(e||t)){if(this.$size.$dirty)return this.$changes|=e,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender");var i=this.layerConfig;if(e&this.CHANGE_FULL||e&this.CHANGE_SIZE||e&this.CHANGE_TEXT||e&this.CHANGE_LINES||e&this.CHANGE_SCROLL||e&this.CHANGE_H_SCROLL){if(e|=this.$computeLayerConfig(),i.firstRow!=this.layerConfig.firstRow&&i.firstRowScreen==this.layerConfig.firstRowScreen){var n=this.scrollTop+(i.firstRow-this.layerConfig.firstRow)*this.lineHeight;n>0&&(this.scrollTop=n,e|=this.CHANGE_SCROLL,e|=this.$computeLayerConfig())}i=this.layerConfig,this.$updateScrollBarV(),e&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),this.$gutterLayer.element.style.marginTop=-i.offset+"px",this.content.style.marginTop=-i.offset+"px",this.content.style.width=i.width+2*this.$padding+"px",this.content.style.height=i.minHeight+"px"}if(e&this.CHANGE_H_SCROLL&&(this.content.style.marginLeft=-this.scrollLeft+"px",this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left"),e&this.CHANGE_FULL)return this.$textLayer.update(i),this.$showGutter&&this.$gutterLayer.update(i),this.$markerBack.update(i),this.$markerFront.update(i),this.$cursorLayer.update(i),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),void this._signal("afterRender");if(e&this.CHANGE_SCROLL)return e&this.CHANGE_TEXT||e&this.CHANGE_LINES?this.$textLayer.update(i):this.$textLayer.scrollLines(i),this.$showGutter&&this.$gutterLayer.update(i),this.$markerBack.update(i),this.$markerFront.update(i),this.$cursorLayer.update(i),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),this.$moveTextAreaToCursor(),void this._signal("afterRender");e&this.CHANGE_TEXT?(this.$textLayer.update(i),this.$showGutter&&this.$gutterLayer.update(i)):e&this.CHANGE_LINES?(this.$updateLines()||e&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(i):(e&this.CHANGE_TEXT||e&this.CHANGE_GUTTER)&&this.$showGutter&&this.$gutterLayer.update(i),e&this.CHANGE_CURSOR&&(this.$cursorLayer.update(i),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight()),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(i),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(i),this._signal("afterRender")}else this.$changes|=e},this.$autosize=function(){var e=this.session.getScreenLength()*this.lineHeight,t=this.$maxLines*this.lineHeight,i=Math.max((this.$minLines||1)*this.lineHeight,Math.min(t,e))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(i+=this.scrollBarH.getHeight());var n=e>t;if(i!=this.desiredHeight||this.$size.height!=this.desiredHeight||n!=this.$vScroll){n!=this.$vScroll&&(this.$vScroll=n,this.scrollBarV.setVisible(n));var r=this.container.clientWidth;this.container.style.height=i+"px",this.$updateCachedSize(!0,this.$gutterWidth,r,i),this.desiredHeight=i,this._signal("autosize")}},this.$computeLayerConfig=function(){var e=this.session,t=this.$size,i=t.height<=2*this.lineHeight,n=this.session.getScreenLength()*this.lineHeight,r=this.$getLongestLine(),o=!i&&(this.$hScrollBarAlwaysVisible||t.scrollerWidth-r-2*this.$padding<0),s=this.$horizScroll!==o;s&&(this.$horizScroll=o,this.scrollBarH.setVisible(o));var a=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var l=this.scrollTop%this.lineHeight,c=t.scrollerHeight+this.lineHeight,h=!this.$maxLines&&this.$scrollPastEnd?(t.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;n+=h;var u=this.scrollMargin;this.session.setScrollTop(Math.max(-u.top,Math.min(this.scrollTop,n-t.scrollerHeight+u.bottom))),this.session.setScrollLeft(Math.max(-u.left,Math.min(this.scrollLeft,r+2*this.$padding-t.scrollerWidth+u.right)));var d=!i&&(this.$vScrollBarAlwaysVisible||t.scrollerHeight-n+h<0||this.scrollTop>u.top),f=a!==d;f&&(this.$vScroll=d,this.scrollBarV.setVisible(d));var p,m,g=Math.ceil(c/this.lineHeight)-1,v=Math.max(0,Math.round((this.scrollTop-l)/this.lineHeight)),y=v+g,w=this.lineHeight;v=e.screenToDocumentRow(v,0);var b=e.getFoldLine(v);b&&(v=b.start.row),p=e.documentToScreenRow(v,0),m=e.getRowLength(v)*w,y=Math.min(e.screenToDocumentRow(y,0),e.getLength()-1),c=t.scrollerHeight+e.getRowLength(y)*w+m,l=this.scrollTop-p*w;var C=0;return this.layerConfig.width!=r&&(C=this.CHANGE_H_SCROLL),(s||f)&&(C=this.$updateCachedSize(!0,this.gutterWidth,t.width,t.height),this._signal("scrollbarVisibilityChanged"),f&&(r=this.$getLongestLine())),this.layerConfig={width:r,padding:this.$padding,firstRow:v,firstRowScreen:p,lastRow:y,lineHeight:w,characterWidth:this.characterWidth,minHeight:c,maxHeight:n,offset:l,gutterOffset:Math.max(0,Math.ceil((l+t.height-t.scrollerHeight)/w)),height:this.$size.scrollerHeight},C},this.$updateLines=function(){var e=this.$changedLines.firstRow,t=this.$changedLines.lastRow;this.$changedLines=null;var i=this.layerConfig;if(!(e>i.lastRow+1||t<i.firstRow))return t===1/0?(this.$showGutter&&this.$gutterLayer.update(i),void this.$textLayer.update(i)):(this.$textLayer.updateLines(i,e,t),!0)},this.$getLongestLine=function(){var e=this.session.getScreenWidth();return this.showInvisibles&&!this.session.$useWrapMode&&(e+=1),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(e*this.characterWidth))},this.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},this.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},this.addGutterDecoration=function(e,t){this.$gutterLayer.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){this.$gutterLayer.removeGutterDecoration(e,t)},this.updateBreakpoints=function(e){this.$loop.schedule(this.CHANGE_GUTTER)},this.setAnnotations=function(e){this.$gutterLayer.setAnnotations(e),this.$loop.schedule(this.CHANGE_GUTTER)},this.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},this.hideCursor=function(){this.$cursorLayer.hideCursor()},this.showCursor=function(){this.$cursorLayer.showCursor()},this.scrollSelectionIntoView=function(e,t,i){this.scrollCursorIntoView(e,i),this.scrollCursorIntoView(t,i)},this.scrollCursorIntoView=function(e,t,i){if(0!==this.$size.scrollerHeight){var n=this.$cursorLayer.getPixelPosition(e),r=n.left,o=n.top,s=i&&i.top||0,a=i&&i.bottom||0,l=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;l+s>o?(t&&l+s>o+this.lineHeight&&(o-=t*this.$size.scrollerHeight),0===o&&(o=-this.scrollMargin.top),this.session.setScrollTop(o)):l+this.$size.scrollerHeight-a<o+this.lineHeight&&(t&&l+this.$size.scrollerHeight-a<o-this.lineHeight&&(o+=t*this.$size.scrollerHeight),this.session.setScrollTop(o+this.lineHeight-this.$size.scrollerHeight));var c=this.scrollLeft;c>r?(r<this.$padding+2*this.layerConfig.characterWidth&&(r=-this.scrollMargin.left),this.session.setScrollLeft(r)):c+this.$size.scrollerWidth<r+this.characterWidth?this.session.setScrollLeft(Math.round(r+this.characterWidth-this.$size.scrollerWidth)):c<=this.$padding&&r-c<this.characterWidth&&this.session.setScrollLeft(0)}},this.getScrollTop=function(){return this.session.getScrollTop()},this.getScrollLeft=function(){return this.session.getScrollLeft()},this.getScrollTopRow=function(){return this.scrollTop/this.lineHeight},this.getScrollBottomRow=function(){return Math.max(0,Math.floor((this.scrollTop+this.$size.scrollerHeight)/this.lineHeight)-1)},this.scrollToRow=function(e){this.session.setScrollTop(e*this.lineHeight)},this.alignCursor=function(e,t){"number"==typeof e&&(e={row:e,column:0});var i=this.$cursorLayer.getPixelPosition(e),n=this.$size.scrollerHeight-this.lineHeight,r=i.top-n*(t||0);return this.session.setScrollTop(r),r},this.STEPS=8,this.$calcSteps=function(e,t){var i=0,n=this.STEPS,r=[],o=function(e,t,i){return i*(Math.pow(e-1,3)+1)+t};for(i=0;i<n;++i)r.push(o(i/this.STEPS,e,t-e));return r},this.scrollToLine=function(e,t,i,n){var r=this.$cursorLayer.getPixelPosition({row:e,column:0}).top;t&&(r-=this.$size.scrollerHeight/2);var o=this.scrollTop;this.session.setScrollTop(r),!1!==i&&this.animateScrolling(o,n)},this.animateScrolling=function(e,t){var i=this.scrollTop;if(this.$animatedScroll){var n=this;if(e!=i){if(this.$scrollAnimation){var r=this.$scrollAnimation.steps;if(r.length&&(e=r[0])==i)return}var o=n.$calcSteps(e,i);this.$scrollAnimation={from:e,to:i,steps:o},clearInterval(this.$timer),n.session.setScrollTop(o.shift()),n.session.$scrollTop=i,this.$timer=setInterval(function(){o.length?(n.session.setScrollTop(o.shift()),n.session.$scrollTop=i):null!=i?(n.session.$scrollTop=-1,n.session.setScrollTop(i),i=null):(n.$timer=clearInterval(n.$timer),n.$scrollAnimation=null,t&&t())},10)}}},this.scrollToY=function(e){this.scrollTop!==e&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=e)},this.scrollToX=function(e){this.scrollLeft!==e&&(this.scrollLeft=e),this.$loop.schedule(this.CHANGE_H_SCROLL)},this.scrollTo=function(e,t){this.session.setScrollTop(t),this.session.setScrollLeft(t)},this.scrollBy=function(e,t){t&&this.session.setScrollTop(this.session.getScrollTop()+t),e&&this.session.setScrollLeft(this.session.getScrollLeft()+e)},this.isScrollableBy=function(e,t){return t<0&&this.session.getScrollTop()>=1-this.scrollMargin.top||(t>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom||(e<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left||(e>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right||void 0)))},this.pixelToScreenCoordinates=function(e,t){var i=this.scroller.getBoundingClientRect(),n=(e+this.scrollLeft-i.left-this.$padding)/this.characterWidth,r=Math.floor((t+this.scrollTop-i.top)/this.lineHeight),o=Math.round(n);return{row:r,column:o,side:n-o>0?1:-1}},this.screenToTextCoordinates=function(e,t){var i=this.scroller.getBoundingClientRect(),n=Math.round((e+this.scrollLeft-i.left-this.$padding)/this.characterWidth),r=(t+this.scrollTop-i.top)/this.lineHeight;return this.session.screenToDocumentPosition(r,Math.max(n,0))},this.textToScreenCoordinates=function(e,t){var i=this.scroller.getBoundingClientRect(),n=this.session.documentToScreenPosition(e,t),r=this.$padding+Math.round(n.column*this.characterWidth),o=n.row*this.lineHeight;return{pageX:i.left+r-this.scrollLeft,pageY:i.top+o-this.scrollTop}},this.visualizeFocus=function(){r.addCssClass(this.container,"ace_focus")},this.visualizeBlur=function(){r.removeCssClass(this.container,"ace_focus")},this.showComposition=function(e){this.$composition||(this.$composition={keepTextAreaAtCursor:this.$keepTextAreaAtCursor,cssText:this.textarea.style.cssText}),this.$keepTextAreaAtCursor=!0,r.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor()},this.setCompositionText=function(e){this.$moveTextAreaToCursor()},this.hideComposition=function(){this.$composition&&(r.removeCssClass(this.textarea,"ace_composition"),this.$keepTextAreaAtCursor=this.$composition.keepTextAreaAtCursor,this.textarea.style.cssText=this.$composition.cssText,this.$composition=null)},this.setTheme=function(e,t){var i=this;if(this.$themeId=e,i._dispatchEvent("themeChange",{theme:e}),e&&"string"!=typeof e)s(e);else{var n=e||this.$options.theme.initialValue;o.loadModule(["theme",n],s)}function s(n){if(i.$themeId!=e)return t&&t();if(n.cssClass){r.importCssString(n.cssText,n.cssClass,i.container.ownerDocument),i.theme&&r.removeCssClass(i.container,i.theme.cssClass);var o="padding"in n?n.padding:"padding"in(i.theme||{})?4:i.$padding;i.$padding&&o!=i.$padding&&i.setPadding(o),i.$theme=n.cssClass,i.theme=n,r.addCssClass(i.container,n.cssClass),r.setCssClass(i.container,"ace_dark",n.isDark),i.$size&&(i.$size.width=0,i.$updateSizeAsync()),i._dispatchEvent("themeLoaded",{theme:n}),t&&t()}}},this.getTheme=function(){return this.$themeId},this.setStyle=function(e,t){r.setCssClass(this.container,e,!1!==t)},this.unsetStyle=function(e){r.removeCssClass(this.container,e)},this.setCursorStyle=function(e){this.scroller.style.cursor!=e&&(this.scroller.style.cursor=e)},this.setMouseCursor=function(e){this.scroller.style.cursor=e},this.destroy=function(){this.$textLayer.destroy(),this.$cursorLayer.destroy()}}).call(g.prototype),o.defineOptions(g.prototype,"renderer",{animatedScroll:{initialValue:!1},showInvisibles:{set:function(e){this.$textLayer.setShowInvisibles(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(e){"number"==typeof e&&(this.$printMarginColumn=e),this.$showPrintMargin=!!e,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(e){this.$gutter.style.display=e?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},fadeFoldWidgets:{set:function(e){r.setCssClass(this.$gutter,"ace_fade-fold-widgets",e)},initialValue:!1},showFoldWidgets:{set:function(e){this.$gutterLayer.setShowFoldWidgets(e)},initialValue:!0},showLineNumbers:{set:function(e){this.$gutterLayer.setShowLineNumbers(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(e){this.$textLayer.setDisplayIndentGuides(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightGutterLine:{set:function(e){if(!this.$gutterLineHighlight)return this.$gutterLineHighlight=r.createElement("div"),this.$gutterLineHighlight.className="ace_gutter-active-line",void this.$gutter.appendChild(this.$gutterLineHighlight);this.$gutterLineHighlight.style.display=e?"":"none",this.$cursorLayer.$pixelPos&&this.$updateGutterLineHighlight()},initialValue:!1,value:!0},hScrollBarAlwaysVisible:{set:function(e){this.$hScrollBarAlwaysVisible&&this.$horizScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(e){this.$vScrollBarAlwaysVisible&&this.$vScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(e){"number"==typeof e&&(e+="px"),this.container.style.fontSize=e,this.updateFontSize()},initialValue:12},fontFamily:{set:function(e){this.container.style.fontFamily=e,this.updateFontSize()}},maxLines:{set:function(e){this.updateFull()}},minLines:{set:function(e){this.updateFull()}},scrollPastEnd:{set:function(e){e=+e||0,this.$scrollPastEnd!=e&&(this.$scrollPastEnd=e,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(e){this.$gutterLayer.$fixedWidth=!!e,this.$loop.schedule(this.CHANGE_GUTTER)}},theme:{set:function(e){this.setTheme(e)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0}}),t.VirtualRenderer=g}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(e,t,n){"use strict";var r=e("../lib/oop"),o=e("../lib/net"),s=e("../lib/event_emitter").EventEmitter,a=e("../config"),l=function(t,n,r,o){if(this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl),a.get("packaged")||!e.toUrl)o=o||a.moduleUrl(n.id,"worker");else{var s=this.$normalizePath;o=o||s(e.toUrl("ace/worker/worker.js",null,"_"));var l={};t.forEach(function(t){l[t]=s(e.toUrl(t,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}try{var c=n.src,h=new(i(66))([c],{type:"application/javascript"}),u=(window.URL||window.webkitURL).createObjectURL(h);this.$worker=new Worker(u)}catch(e){if(!(e instanceof window.DOMException))throw e;h=this.$workerBlob(o);var d=window.URL||window.webkitURL,f=d.createObjectURL(h);this.$worker=new Worker(f),d.revokeObjectURL(f)}this.$worker.postMessage({init:!0,tlns:l,module:n.id,classname:r}),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){r.implement(this,s),this.onMessage=function(e){var t=e.data;switch(t.type){case"event":this._signal(t.name,{data:t.data});break;case"call":var i=this.callbacks[t.id];i&&(i(t.data),delete this.callbacks[t.id]);break;case"error":this.reportError(t.data);break;case"log":window.console&&console.log&&console.log.apply(console,t.data)}},this.reportError=function(e){window.console&&console.error&&console.error(e)},this.$normalizePath=function(e){return o.qualifyURL(e)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(e,t){this.$worker.postMessage({command:e,args:t})},this.call=function(e,t,i){if(i){var n=this.callbackId++;this.callbacks[n]=i,t.push(n)}this.send(e,t)},this.emit=function(e,t){try{this.$worker.postMessage({event:e,data:{data:t.data}})}catch(e){console.error(e.stack)}},this.attachToDocument=function(e){this.$doc&&this.terminate(),this.$doc=e,this.call("setValue",[e.getValue()]),e.on("change",this.changeListener)},this.changeListener=function(e){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),"insert"==e.action?this.deltaQueue.push(e.start,e.lines):this.deltaQueue.push(e.start,e.end)},this.$sendDeltaQueue=function(){var e=this.deltaQueue;e&&(this.deltaQueue=null,e.length>50&&e.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:e}))},this.$workerBlob=function(e){var t="importScripts('"+o.qualifyURL(e)+"');";try{return new Blob([t],{type:"application/javascript"})}catch(e){var i=new(window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder);return i.append(t),i.getBlob("application/javascript")}}}).call(l.prototype);var c=function(e,t,i){this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.callbackId=1,this.callbacks={},this.messageBuffer=[];var n=null,r=!1,o=Object.create(s),l=this;this.$worker={},this.$worker.terminate=function(){},this.$worker.postMessage=function(e){l.messageBuffer.push(e),n&&(r?setTimeout(c):c())},this.setEmitSync=function(e){r=e};var c=function(){var e=l.messageBuffer.shift();e.command?n[e.command].apply(n,e.args):e.event&&o._signal(e.event,e.data)};o.postMessage=function(e){l.onMessage({data:e})},o.callback=function(e,t){this.postMessage({type:"call",id:t,data:e})},o.emit=function(e,t){this.postMessage({type:"event",name:e,data:t})},a.loadModule(["worker",t],function(e){for(n=new e[i](o);l.messageBuffer.length;)c()})};c.prototype=l.prototype,t.UIWorkerClient=c,t.WorkerClient=l}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,t,i){"use strict";var n=e("./range").Range,r=e("./lib/event_emitter").EventEmitter,o=e("./lib/oop"),s=function(e,t,i,n,r,o){var s=this;this.length=t,this.session=e,this.doc=e.getDocument(),this.mainClass=r,this.othersClass=o,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=n,this.$onCursorChange=function(){setTimeout(function(){s.onCursorChange()})},this.$pos=i;var a=e.getUndoManager().$undoStack||e.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=a.length,this.setup(),e.selection.on("changeCursor",this.$onCursorChange)};(function(){o.implement(this,r),this.setup=function(){var e=this,t=this.doc,i=this.session;this.selectionBefore=i.selection.toJSON(),i.selection.inMultiSelectMode&&i.selection.toSingleRange(),this.pos=t.createAnchor(this.$pos.row,this.$pos.column);var r=this.pos;r.$insertRight=!0,r.detach(),r.markerId=i.addMarker(new n(r.row,r.column,r.row,r.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(i){var n=t.createAnchor(i.row,i.column);n.$insertRight=!0,n.detach(),e.others.push(n)}),i.setUndoSelect(!1)},this.showOtherMarkers=function(){if(!this.othersActive){var e=this.session,t=this;this.othersActive=!0,this.others.forEach(function(i){i.markerId=e.addMarker(new n(i.row,i.column,i.row,i.column+t.length),t.othersClass,null,!1)})}},this.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var e=0;e<this.others.length;e++)this.session.removeMarker(this.others[e].markerId)}},this.onUpdate=function(e){if(this.$updating)return this.updateAnchors(e);var t=e;if(t.start.row===t.end.row&&t.start.row===this.pos.row){this.$updating=!0;var i="insert"===e.action?t.end.column-t.start.column:t.start.column-t.end.column,r=t.start.column>=this.pos.column&&t.start.column<=this.pos.column+this.length+1,o=t.start.column-this.pos.column;if(this.updateAnchors(e),r&&(this.length+=i),r&&!this.session.$fromUndo)if("insert"===e.action)for(var s=this.others.length-1;s>=0;s--){var a={row:(l=this.others[s]).row,column:l.column+o};this.doc.insertMergedLines(a,e.lines)}else if("remove"===e.action)for(s=this.others.length-1;s>=0;s--){var l;a={row:(l=this.others[s]).row,column:l.column+o};this.doc.remove(new n(a.row,a.column,a.row,a.column-i))}this.$updating=!1,this.updateMarkers()}},this.updateAnchors=function(e){this.pos.onChange(e);for(var t=this.others.length;t--;)this.others[t].onChange(e);this.updateMarkers()},this.updateMarkers=function(){if(!this.$updating){var e=this,t=this.session,i=function(i,r){t.removeMarker(i.markerId),i.markerId=t.addMarker(new n(i.row,i.column,i.row,i.column+e.length),r,null,!1)};i(this.pos,this.mainClass);for(var r=this.others.length;r--;)i(this.others[r],this.othersClass)}},this.onCursorChange=function(e){if(!this.$updating&&this.session){var t=this.session.selection.getCursor();t.row===this.pos.row&&t.column>=this.pos.column&&t.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",e)):(this.hideOtherMarkers(),this._emit("cursorLeave",e))}},this.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.removeEventListener("change",this.$onUpdate),this.session.selection.removeEventListener("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},this.cancel=function(){if(-1!==this.$undoStackDepth){for(var e=this.session.getUndoManager(),t=(e.$undoStack||e.$undostack).length-this.$undoStackDepth,i=0;i<t;i++)e.undo(!0);this.selectionBefore&&this.session.selection.fromJSON(this.selectionBefore)}}}).call(s.prototype),t.PlaceHolder=s}),ace.define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,i){var n=e("../lib/event"),r=e("../lib/useragent");function o(e,t){return e.row==t.row&&e.column==t.column}t.onMouseDown=function(e){var t=e.domEvent,i=t.altKey,s=t.shiftKey,a=t.ctrlKey,l=e.getAccelKey(),c=e.getButton();if(a&&r.isMac&&(c=t.button),e.editor.inMultiSelectMode&&2==c)e.editor.textInput.onContextMenu(e.domEvent);else if(a||i||l){if(0===c){var h,u=e.editor,d=u.selection,f=u.inMultiSelectMode,p=e.getDocumentPosition(),m=d.getCursor(),g=e.inSelection()||d.isEmpty()&&o(p,m),v=e.x,y=e.y,w=u.session,b=u.renderer.pixelToScreenCoordinates(v,y),C=b;if(u.$mouseHandler.$enableJumpToDef)a&&i||l&&i?h=s?"block":"add":i&&u.$blockSelectEnabled&&(h="block");else if(l&&!i){if(h="add",!f&&s)return}else i&&u.$blockSelectEnabled&&(h="block");if(h&&r.isMac&&t.ctrlKey&&u.$mouseHandler.cancelContextMenu(),"add"==h){if(!f&&g)return;if(!f){var A=d.toOrientedRange();u.addSelectionMarker(A)}var E=d.rangeList.rangeAtPoint(p);u.$blockScrolling++,u.inVirtualSelectionMode=!0,s&&(E=null,A=d.ranges[0]||A,u.removeSelectionMarker(A)),u.once("mouseup",function(){var e=d.toOrientedRange();E&&e.isEmpty()&&o(E.cursor,e.cursor)?d.substractPoint(e.cursor):(s?d.substractPoint(A.cursor):A&&(u.removeSelectionMarker(A),d.addRange(A)),d.addRange(e)),u.$blockScrolling--,u.inVirtualSelectionMode=!1})}else if("block"==h){var x;e.stop(),u.inVirtualSelectionMode=!0;var F=[];u.$blockScrolling++,f&&!l?d.toSingleRange():!f&&l&&(x=d.toOrientedRange(),u.addSelectionMarker(x)),s?b=w.documentToScreenPosition(d.lead):d.moveToPosition(p),u.$blockScrolling--,C={row:-1,column:-1};var S=function(){var e=u.renderer.pixelToScreenCoordinates(v,y),t=w.screenToDocumentPosition(e.row,e.column);o(C,e)&&o(t,d.lead)||(C=e,u.$blockScrolling++,u.selection.moveToPosition(t),u.renderer.scrollCursorIntoView(),u.removeSelectionMarkers(F),F=d.rectangularRangeBlock(C,b),u.$mouseHandler.$clickSelection&&1==F.length&&F[0].isEmpty()&&(F[0]=u.$mouseHandler.$clickSelection.clone()),F.forEach(u.addSelectionMarker,u),u.updateSelectionMarkers(),u.$blockScrolling--)};n.capture(u.container,function(e){v=e.clientX,y=e.clientY},function(e){clearInterval(k),u.removeSelectionMarkers(F),F.length||(F=[d.toOrientedRange()]),u.$blockScrolling++,x&&(u.removeSelectionMarker(x),d.toSingleRange(x));for(var t=0;t<F.length;t++)d.addRange(F[t]);u.inVirtualSelectionMode=!1,u.$mouseHandler.$clickSelection=null,u.$blockScrolling--});var k=setInterval(function(){S()},20);return e.preventDefault()}}}else 0===c&&e.editor.inMultiSelectMode&&e.editor.exitMultiSelectMode()}}),ace.define("ace/commands/multi_select_commands",["require","exports","module","ace/keyboard/hash_handler"],function(e,t,i){t.defaultCommands=[{name:"addCursorAbove",exec:function(e){e.selectMoreLines(-1)},bindKey:{win:"Ctrl-Alt-Up",mac:"Ctrl-Alt-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelow",exec:function(e){e.selectMoreLines(1)},bindKey:{win:"Ctrl-Alt-Down",mac:"Ctrl-Alt-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorAboveSkipCurrent",exec:function(e){e.selectMoreLines(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Up",mac:"Ctrl-Alt-Shift-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelowSkipCurrent",exec:function(e){e.selectMoreLines(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Down",mac:"Ctrl-Alt-Shift-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreBefore",exec:function(e){e.selectMore(-1)},bindKey:{win:"Ctrl-Alt-Left",mac:"Ctrl-Alt-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreAfter",exec:function(e){e.selectMore(1)},bindKey:{win:"Ctrl-Alt-Right",mac:"Ctrl-Alt-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextBefore",exec:function(e){e.selectMore(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Left",mac:"Ctrl-Alt-Shift-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextAfter",exec:function(e){e.selectMore(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Right",mac:"Ctrl-Alt-Shift-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"splitIntoLines",exec:function(e){e.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"alignCursors",exec:function(e){e.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",exec:function(e){e.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],t.multiSelectCommands=[{name:"singleSelection",bindKey:"esc",exec:function(e){e.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(e){return e&&e.inMultiSelectMode}}];var n=e("../keyboard/hash_handler").HashHandler;t.keyboardHandler=new n(t.multiSelectCommands)}),ace.define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(e,t,i){var n=e("./range_list").RangeList,r=e("./range").Range,o=e("./selection").Selection,s=e("./mouse/multi_select_handler").onMouseDown,a=e("./lib/event"),l=e("./lib/lang"),c=e("./commands/multi_select_commands");t.commands=c.defaultCommands.concat(c.multiSelectCommands);var h=new(0,e("./search").Search);var u=e("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(u.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(e,t){if(e){if(!this.inMultiSelectMode&&0===this.rangeCount){var i=this.toOrientedRange();if(this.rangeList.add(i),this.rangeList.add(e),2!=this.rangeList.ranges.length)return this.rangeList.removeAll(),t||this.fromOrientedRange(e);this.rangeList.removeAll(),this.rangeList.add(i),this.$onAddRange(i)}e.cursor||(e.cursor=e.end);var n=this.rangeList.add(e);return this.$onAddRange(e),n.length&&this.$onRemoveRange(n),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),t||this.fromOrientedRange(e)}},this.toSingleRange=function(e){e=e||this.ranges[0];var t=this.rangeList.removeAll();t.length&&this.$onRemoveRange(t),e&&this.fromOrientedRange(e)},this.substractPoint=function(e){var t=this.rangeList.substractPoint(e);if(t)return this.$onRemoveRange(t),t[0]},this.mergeOverlappingRanges=function(){var e=this.rangeList.merge();e.length?this.$onRemoveRange(e):this.ranges[0]&&this.fromOrientedRange(this.ranges[0])},this.$onAddRange=function(e){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(e),this._signal("addRange",{range:e})},this.$onRemoveRange=function(e){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var t=this.rangeList.ranges.pop();e.push(t),this.rangeCount=0}for(var i=e.length;i--;){var n=this.ranges.indexOf(e[i]);this.ranges.splice(n,1)}this._signal("removeRange",{ranges:e}),0===this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),(t=t||this.ranges[0])&&!t.isEqual(this.getRange())&&this.fromOrientedRange(t)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new n,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],i=r.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(i,t.cursor==t.start)}else{i=this.getRange();var n=this.isBackwards(),o=i.start.row,s=i.end.row;if(o==s){if(n)var a=i.end,l=i.start;else a=i.start,l=i.end;return this.addRange(r.fromPoints(l,l)),void this.addRange(r.fromPoints(a,a))}var c=[],h=this.getLineRange(o,!0);h.start.column=i.start.column,c.push(h);for(var u=o+1;u<s;u++)c.push(this.getLineRange(u,!0));(h=this.getLineRange(s,!0)).end.column=i.end.column,c.push(h),c.forEach(this.addRange,this)}},this.toggleBlockSelection=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],i=r.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(i,t.cursor==t.start)}else{var n=this.session.documentToScreenPosition(this.selectionLead),o=this.session.documentToScreenPosition(this.selectionAnchor);this.rectangularRangeBlock(n,o).forEach(this.addRange,this)}},this.rectangularRangeBlock=function(e,t,i){var n=[],o=e.column<t.column;if(o)var s=e.column,a=t.column;else s=t.column,a=e.column;var l=e.row<t.row;if(l)var c=e.row,h=t.row;else c=t.row,h=e.row;s<0&&(s=0),c<0&&(c=0),c==h&&(i=!0);for(var u=c;u<=h;u++){var d=r.fromPoints(this.session.screenToDocumentPosition(u,s),this.session.screenToDocumentPosition(u,a));if(d.isEmpty()){if(p&&f(d.end,p))break;var p=d.end}d.cursor=o?d.start:d.end,n.push(d)}if(l&&n.reverse(),!i){for(var m=n.length-1;n[m].isEmpty()&&m>0;)m--;if(m>0)for(var g=0;n[g].isEmpty();)g++;for(var v=m;v>=g;v--)n[v].isEmpty()&&n.splice(v,1)}return n}}.call(o.prototype);var d=e("./editor").Editor;function f(e,t){return e.row==t.row&&e.column==t.column}function p(e){e.$multiselectOnSessionChange||(e.$onAddRange=e.$onAddRange.bind(e),e.$onRemoveRange=e.$onRemoveRange.bind(e),e.$onMultiSelect=e.$onMultiSelect.bind(e),e.$onSingleSelect=e.$onSingleSelect.bind(e),e.$multiselectOnSessionChange=t.onSessionChange.bind(e),e.$checkMultiselectChange=e.$checkMultiselectChange.bind(e),e.$multiselectOnSessionChange(e),e.on("changeSession",e.$multiselectOnSessionChange),e.on("mousedown",s),e.commands.addCommands(c.defaultCommands),function(e){var t=e.textInput.getElement(),i=!1;function n(t){i&&(e.renderer.setMouseCursor(""),i=!1)}a.addListener(t,"keydown",function(t){var r=18==t.keyCode&&!(t.ctrlKey||t.shiftKey||t.metaKey);e.$blockSelectEnabled&&r?i||(e.renderer.setMouseCursor("crosshair"),i=!0):i&&n()}),a.addListener(t,"keyup",n),a.addListener(t,"blur",n)}(e))}(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(e){e.cursor||(e.cursor=e.end);var t=this.getSelectionStyle();return e.marker=this.session.addMarker(e,"ace_selection",t),this.session.$selectionMarkers.push(e),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,e},this.removeSelectionMarker=function(e){if(e.marker){this.session.removeMarker(e.marker);var t=this.session.$selectionMarkers.indexOf(e);-1!=t&&this.session.$selectionMarkers.splice(t,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(e){for(var t=this.session.$selectionMarkers,i=e.length;i--;){var n=e[i];if(n.marker){this.session.removeMarker(n.marker);var r=t.indexOf(n);-1!=r&&t.splice(r,1)}}this.session.selectionMarkerCount=t.length},this.$onAddRange=function(e){this.addSelectionMarker(e.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(e){this.removeSelectionMarkers(e.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(e){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(c.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(e){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(c.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(e){var t=e.command,i=e.editor;if(i.multiSelect){if(t.multiSelectAction)"forEach"==t.multiSelectAction?n=i.forEachSelection(t,e.args):"forEachLine"==t.multiSelectAction?n=i.forEachSelection(t,e.args,!0):"single"==t.multiSelectAction?(i.exitMultiSelectMode(),n=t.exec(i,e.args||{})):n=t.multiSelectAction(i,e.args||{});else{var n=t.exec(i,e.args||{});i.multiSelect.addRange(i.multiSelect.toOrientedRange()),i.multiSelect.mergeOverlappingRanges()}return n}},this.forEachSelection=function(e,t,i){if(!this.inVirtualSelectionMode){var n,r=i&&i.keepOrder,s=1==i||i&&i.$byLines,a=this.session,l=this.selection,c=l.rangeList,h=(r?l:c).ranges;if(!h.length)return e.exec?e.exec(this,t||{}):e(this,t||{});var u=l._eventRegistry;l._eventRegistry={};var d=new o(a);this.inVirtualSelectionMode=!0;for(var f=h.length;f--;){if(s)for(;f>0&&h[f].start.row==h[f-1].end.row;)f--;d.fromOrientedRange(h[f]),d.index=f,this.selection=a.selection=d;var p=e.exec?e.exec(this,t||{}):e(this,t||{});n||void 0===p||(n=p),d.toOrientedRange(h[f])}d.detach(),this.selection=a.selection=l,this.inVirtualSelectionMode=!1,l._eventRegistry=u,l.mergeOverlappingRanges();var m=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),m&&m.from==m.to&&this.renderer.animateScrolling(m.from),n}},this.exitMultiSelectMode=function(){this.inMultiSelectMode&&!this.inVirtualSelectionMode&&this.multiSelect.toSingleRange()},this.getSelectedText=function(){var e="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var t=this.multiSelect.rangeList.ranges,i=[],n=0;n<t.length;n++)i.push(this.session.getTextRange(t[n]));var r=this.session.getDocument().getNewLineCharacter();(e=i.join(r)).length==(i.length-1)*r.length&&(e="")}else this.selection.isEmpty()||(e=this.session.getTextRange(this.getSelectionRange()));return e},this.$checkMultiselectChange=function(e,t){if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var i=this.multiSelect.ranges[0];if(this.multiSelect.isEmpty()&&t==this.multiSelect.anchor)return;var n=t==this.multiSelect.anchor?i.cursor==i.start?i.end:i.start:i.cursor;n.row==t.row&&this.session.$clipPositionToDocument(n.row,n.column).column==t.column||this.multiSelect.toSingleRange(this.multiSelect.toOrientedRange())}},this.findAll=function(e,t,i){if((t=t||{}).needle=e||t.needle,void 0==t.needle){var n=this.selection.isEmpty()?this.selection.getWordRange():this.selection.getRange();t.needle=this.session.getTextRange(n)}this.$search.set(t);var r=this.$search.findAll(this.session);if(!r.length)return 0;this.$blockScrolling+=1;var o=this.multiSelect;i||o.toSingleRange(r[0]);for(var s=r.length;s--;)o.addRange(r[s],!0);return n&&o.rangeList.rangeAtPoint(n.start)&&o.addRange(n,!0),this.$blockScrolling-=1,r.length},this.selectMoreLines=function(e,t){var i=this.selection.toOrientedRange(),n=i.cursor==i.end,o=this.session.documentToScreenPosition(i.cursor);this.selection.$desiredColumn&&(o.column=this.selection.$desiredColumn);var s,a=this.session.screenToDocumentPosition(o.row+e,o.column);if(i.isEmpty())c=a;else var l=this.session.documentToScreenPosition(n?i.end:i.start),c=this.session.screenToDocumentPosition(l.row+e,l.column);n?(s=r.fromPoints(a,c)).cursor=s.start:(s=r.fromPoints(c,a)).cursor=s.end;if(s.desiredColumn=o.column,this.selection.inMultiSelectMode){if(t)var h=i.cursor}else this.selection.addRange(i);this.selection.addRange(s),h&&this.selection.substractPoint(h)},this.transposeSelections=function(e){for(var t=this.session,i=t.multiSelect,n=i.ranges,r=n.length;r--;){if((a=n[r]).isEmpty()){var o=t.getWordRange(a.start.row,a.start.column);a.start.row=o.start.row,a.start.column=o.start.column,a.end.row=o.end.row,a.end.column=o.end.column}}i.mergeOverlappingRanges();var s=[];for(r=n.length;r--;){var a=n[r];s.unshift(t.getTextRange(a))}e<0?s.unshift(s.pop()):s.push(s.shift());for(r=n.length;r--;){o=(a=n[r]).clone();t.replace(a,s[r]),a.start.row=o.start.row,a.start.column=o.start.column}},this.selectMore=function(e,t,i){var n=this.session,r=n.multiSelect.toOrientedRange();if(!r.isEmpty()||((r=n.getWordRange(r.start.row,r.start.column)).cursor=-1==e?r.start:r.end,this.multiSelect.addRange(r),!i)){var o=function(e,t,i){return h.$options.wrap=!0,h.$options.needle=t,h.$options.backwards=-1==i,h.find(e)}(n,n.getTextRange(r),e);o&&(o.cursor=-1==e?o.start:o.end,this.$blockScrolling+=1,this.session.unfold(o),this.multiSelect.addRange(o),this.$blockScrolling-=1,this.renderer.scrollCursorIntoView(null,.5)),t&&this.multiSelect.substractPoint(r.cursor)}},this.alignCursors=function(){var e=this.session,t=e.multiSelect,i=t.ranges,n=-1,o=i.filter(function(e){if(e.cursor.row==n)return!0;n=e.cursor.row});if(i.length&&o.length!=i.length-1){o.forEach(function(e){t.substractPoint(e.cursor)});var s=0,a=1/0,c=i.map(function(t){var i=t.cursor,n=e.getLine(i.row).substr(i.column).search(/\S/g);return-1==n&&(n=0),i.column>s&&(s=i.column),n<a&&(a=n),n});i.forEach(function(t,i){var n=t.cursor,o=s-n.column,h=c[i]-a;o>h?e.insert(n,l.stringRepeat(" ",o-h)):e.remove(new r(n.row,n.column,n.row,n.column-o+h)),t.start.column=t.end.column=s,t.start.row=t.end.row=n.row,t.cursor=t.end}),t.fromOrientedRange(i[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var h=this.selection.getRange(),u=h.start.row,d=h.end.row,f=u==d;if(f){var p,m=this.session.getLength();do{p=this.session.getLine(d)}while(/[=:]/.test(p)&&++d<m);do{p=this.session.getLine(u)}while(/[=:]/.test(p)&&--u>0);u<0&&(u=0),d>=m&&(d=m-1)}var g=this.session.removeFullLines(u,d);g=this.$reAlignText(g,f),this.session.insert({row:u,column:0},g.join("\n")+"\n"),f||(h.start.column=0,h.end.column=g[g.length-1].length),this.selection.setRange(h)}},this.$reAlignText=function(e,t){var i,n,r,o=!0,s=!0;return e.map(function(e){var t=e.match(/(\s*)(.*?)(\s*)([=:].*)/);return t?null==i?(i=t[1].length,n=t[2].length,r=t[3].length,t):(i+n+r!=t[1].length+t[2].length+t[3].length&&(s=!1),i!=t[1].length&&(o=!1),i>t[1].length&&(i=t[1].length),n<t[2].length&&(n=t[2].length),r>t[3].length&&(r=t[3].length),t):[e]}).map(t?c:o?s?function(e){return e[2]?a(i+n-e[2].length)+e[2]+a(r)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}:c:function(e){return e[2]?a(i)+e[2]+a(r)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]});function a(e){return l.stringRepeat(" ",e)}function c(e){return e[2]?a(i)+e[2]+a(n-e[2].length+r)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}}}).call(d.prototype),t.onSessionChange=function(e){var t=e.session;t&&!t.multiSelect&&(t.$selectionMarkers=[],t.selection.$initRangeList(),t.multiSelect=t.selection),this.multiSelect=t&&t.multiSelect;var i=e.oldSession;i&&(i.multiSelect.off("addRange",this.$onAddRange),i.multiSelect.off("removeRange",this.$onRemoveRange),i.multiSelect.off("multiSelect",this.$onMultiSelect),i.multiSelect.off("singleSelect",this.$onSingleSelect),i.multiSelect.lead.off("change",this.$checkMultiselectChange),i.multiSelect.anchor.off("change",this.$checkMultiselectChange)),t&&(t.multiSelect.on("addRange",this.$onAddRange),t.multiSelect.on("removeRange",this.$onRemoveRange),t.multiSelect.on("multiSelect",this.$onMultiSelect),t.multiSelect.on("singleSelect",this.$onSingleSelect),t.multiSelect.lead.on("change",this.$checkMultiselectChange),t.multiSelect.anchor.on("change",this.$checkMultiselectChange)),t&&this.inMultiSelectMode!=t.selection.inMultiSelectMode&&(t.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},t.MultiSelect=p,e("./config").defineOptions(d.prototype,"editor",{enableMultiselect:{set:function(e){p(this),e?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",s)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",s))},value:!0},enableBlockSelect:{set:function(e){this.$blockSelectEnabled=e},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("../../range").Range,r=t.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(e,t,i){var n=e.getLine(i);return this.foldingStartMarker.test(n)?"start":"markbeginend"==t&&this.foldingStopMarker&&this.foldingStopMarker.test(n)?"end":""},this.getFoldWidgetRange=function(e,t,i){return null},this.indentationBlock=function(e,t,i){var r=/\S/,o=e.getLine(t),s=o.search(r);if(-1!=s){for(var a=i||o.length,l=e.getLength(),c=t,h=t;++t<l;){var u=e.getLine(t).search(r);if(-1!=u){if(u<=s)break;h=t}}if(h>c){var d=e.getLine(h).length;return new n(c,a,h,d)}}},this.openingBracketBlock=function(e,t,i,r,o){var s={row:i,column:r+1},a=e.$findClosingBracket(t,s,o);if(a){var l=e.foldWidgets[a.row];return null==l&&(l=e.getFoldWidget(a.row)),"start"==l&&a.row>s.row&&(a.row--,a.column=e.getLine(a.row).length),n.fromPoints(s,a)}},this.closingBracketBlock=function(e,t,i,r,o){var s={row:i,column:r},a=e.$findOpeningBracket(t,s);if(a)return a.column++,s.column--,n.fromPoints(a,s)}}).call(r.prototype)}),ace.define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(e,t,i){"use strict";t.isDark=!1,t.cssClass="ace-tm",t.cssText='.ace-tm .ace_gutter {\tbackground: #f0f0f0;\tcolor: #333;\t}\t.ace-tm .ace_print-margin {\twidth: 1px;\tbackground: #e8e8e8;\t}\t.ace-tm .ace_fold {\tbackground-color: #6B72E6;\t}\t.ace-tm {\tbackground-color: #FFFFFF;\tcolor: black;\t}\t.ace-tm .ace_cursor {\tcolor: black;\t}\t.ace-tm .ace_invisible {\tcolor: rgb(191, 191, 191);\t}\t.ace-tm .ace_storage,\t.ace-tm .ace_keyword {\tcolor: blue;\t}\t.ace-tm .ace_constant {\tcolor: rgb(197, 6, 11);\t}\t.ace-tm .ace_constant.ace_buildin {\tcolor: rgb(88, 72, 246);\t}\t.ace-tm .ace_constant.ace_language {\tcolor: rgb(88, 92, 246);\t}\t.ace-tm .ace_constant.ace_library {\tcolor: rgb(6, 150, 14);\t}\t.ace-tm .ace_invalid {\tbackground-color: rgba(255, 0, 0, 0.1);\tcolor: red;\t}\t.ace-tm .ace_support.ace_function {\tcolor: rgb(60, 76, 114);\t}\t.ace-tm .ace_support.ace_constant {\tcolor: rgb(6, 150, 14);\t}\t.ace-tm .ace_support.ace_type,\t.ace-tm .ace_support.ace_class {\tcolor: rgb(109, 121, 222);\t}\t.ace-tm .ace_keyword.ace_operator {\tcolor: rgb(104, 118, 135);\t}\t.ace-tm .ace_string {\tcolor: rgb(3, 106, 7);\t}\t.ace-tm .ace_comment {\tcolor: rgb(76, 136, 107);\t}\t.ace-tm .ace_comment.ace_doc {\tcolor: rgb(0, 102, 255);\t}\t.ace-tm .ace_comment.ace_doc.ace_tag {\tcolor: rgb(128, 159, 191);\t}\t.ace-tm .ace_constant.ace_numeric {\tcolor: rgb(0, 0, 205);\t}\t.ace-tm .ace_variable {\tcolor: rgb(49, 132, 149);\t}\t.ace-tm .ace_xml-pe {\tcolor: rgb(104, 104, 91);\t}\t.ace-tm .ace_entity.ace_name.ace_function {\tcolor: #0000A2;\t}\t.ace-tm .ace_heading {\tcolor: rgb(12, 7, 255);\t}\t.ace-tm .ace_list {\tcolor:rgb(185, 6, 144);\t}\t.ace-tm .ace_meta.ace_tag {\tcolor:rgb(0, 22, 142);\t}\t.ace-tm .ace_string.ace_regex {\tcolor: rgb(255, 0, 0)\t}\t.ace-tm .ace_marker-layer .ace_selection {\tbackground: rgb(181, 213, 255);\t}\t.ace-tm.ace_multiselect .ace_selection.ace_start {\tbox-shadow: 0 0 3px 0px white;\t}\t.ace-tm .ace_marker-layer .ace_step {\tbackground: rgb(252, 255, 0);\t}\t.ace-tm .ace_marker-layer .ace_stack {\tbackground: rgb(164, 229, 101);\t}\t.ace-tm .ace_marker-layer .ace_bracket {\tmargin: -1px 0 0 -1px;\tborder: 1px solid rgb(192, 192, 192);\t}\t.ace-tm .ace_marker-layer .ace_active-line {\tbackground: rgba(0, 0, 0, 0.07);\t}\t.ace-tm .ace_gutter-active-line {\tbackground-color : #dcdcdc;\t}\t.ace-tm .ace_marker-layer .ace_selected-word {\tbackground: rgb(250, 250, 255);\tborder: 1px solid rgb(200, 200, 250);\t}\t.ace-tm .ace_indent-guide {\tbackground: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;\t}\t',e("../lib/dom").importCssString(t.cssText,t.cssClass)}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/range"],function(e,t,i){"use strict";e("./lib/oop");var n=e("./lib/dom");e("./range").Range;function r(e){this.session=e,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.$onChangeEditor=this.$onChangeEditor.bind(this),this.session.on("change",this.updateOnChange),this.session.on("changeFold",this.updateOnFold),this.session.on("changeEditor",this.$onChangeEditor)}(function(){this.getRowLength=function(e){var t;return t=this.lineWidgets&&this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0,this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1+t:1+t},this.$getWidgetScreenLength=function(){var e=0;return this.lineWidgets.forEach(function(t){t&&t.rowCount&&!t.hidden&&(e+=t.rowCount)}),e},this.$onChangeEditor=function(e){this.attach(e.editor)},this.attach=function(e){e&&e.widgetManager&&e.widgetManager!=this&&e.widgetManager.detach(),this.editor!=e&&(this.detach(),this.editor=e,e&&(e.widgetManager=this,e.renderer.on("beforeRender",this.measureWidgets),e.renderer.on("afterRender",this.renderWidgets)))},this.detach=function(e){var t=this.editor;if(t){this.editor=null,t.widgetManager=null,t.renderer.off("beforeRender",this.measureWidgets),t.renderer.off("afterRender",this.renderWidgets);var i=this.session.lineWidgets;i&&i.forEach(function(e){e&&e.el&&e.el.parentNode&&(e._inDocument=!1,e.el.parentNode.removeChild(e.el))})}},this.updateOnFold=function(e,t){var i=t.lineWidgets;if(i&&e.action){for(var n=e.data,r=n.start.row,o=n.end.row,s="add"==e.action,a=r+1;a<o;a++)i[a]&&(i[a].hidden=s);i[o]&&(s?i[r]?i[o].hidden=s:i[r]=i[o]:(i[r]==i[o]&&(i[r]=void 0),i[o].hidden=s))}},this.updateOnChange=function(e){var t=this.session.lineWidgets;if(t){var i=e.start.row,n=e.end.row-i;if(0===n);else if("remove"==e.action){t.splice(i+1,n).forEach(function(e){e&&this.removeLineWidget(e)},this),this.$updateRows()}else{var r=new Array(n);r.unshift(i,0),t.splice.apply(t,r),this.$updateRows()}}},this.$updateRows=function(){var e=this.session.lineWidgets;if(e){var t=!0;e.forEach(function(e,i){if(e)for(t=!1,e.row=i;e.$oldWidget;)e.$oldWidget.row=i,e=e.$oldWidget}),t&&(this.session.lineWidgets=null)}},this.addLineWidget=function(e){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var t=this.session.lineWidgets[e.row];t&&(e.$oldWidget=t,t.el&&t.el.parentNode&&(t.el.parentNode.removeChild(t.el),t._inDocument=!1)),this.session.lineWidgets[e.row]=e,e.session=this.session;var i=this.editor.renderer;e.html&&!e.el&&(e.el=n.createElement("div"),e.el.innerHTML=e.html),e.el&&(n.addCssClass(e.el,"ace_lineWidgetContainer"),e.el.style.position="absolute",e.el.style.zIndex=5,i.container.appendChild(e.el),e._inDocument=!0),e.coverGutter||(e.el.style.zIndex=3),e.pixelHeight||(e.pixelHeight=e.el.offsetHeight),null==e.rowCount&&(e.rowCount=e.pixelHeight/i.layerConfig.lineHeight);var r=this.session.getFoldAt(e.row,0);if(e.$fold=r,r){var o=this.session.lineWidgets;e.row!=r.end.row||o[r.start.row]?e.hidden=!0:o[r.start.row]=e}return this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows(),this.renderWidgets(null,i),this.onWidgetChanged(e),e},this.removeLineWidget=function(e){if(e._inDocument=!1,e.session=null,e.el&&e.el.parentNode&&e.el.parentNode.removeChild(e.el),e.editor&&e.editor.destroy)try{e.editor.destroy()}catch(e){}if(this.session.lineWidgets){var t=this.session.lineWidgets[e.row];if(t==e)this.session.lineWidgets[e.row]=e.$oldWidget,e.$oldWidget&&this.onWidgetChanged(e.$oldWidget);else for(;t;){if(t.$oldWidget==e){t.$oldWidget=e.$oldWidget;break}t=t.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows()},this.getWidgetsAtRow=function(e){for(var t=this.session.lineWidgets,i=t&&t[e],n=[];i;)n.push(i),i=i.$oldWidget;return n},this.onWidgetChanged=function(e){this.session._changedWidgets.push(e),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(e,t){var i=this.session._changedWidgets,n=t.layerConfig;if(i&&i.length){for(var r=1/0,o=0;o<i.length;o++){var s=i[o];if(s&&s.el&&s.session==this.session){if(!s._inDocument){if(this.session.lineWidgets[s.row]!=s)continue;s._inDocument=!0,t.container.appendChild(s.el)}s.h=s.el.offsetHeight,s.fixedWidth||(s.w=s.el.offsetWidth,s.screenWidth=Math.ceil(s.w/n.characterWidth));var a=s.h/n.lineHeight;s.coverLine&&(a-=this.session.getRowLineCount(s.row))<0&&(a=0),s.rowCount!=a&&(s.rowCount=a,s.row<r&&(r=s.row))}}r!=1/0&&(this.session._emit("changeFold",{data:{start:{row:r}}}),this.session.lineWidgetWidth=null),this.session._changedWidgets=[]}},this.renderWidgets=function(e,t){var i=t.layerConfig,n=this.session.lineWidgets;if(n){for(var r=Math.min(this.firstRow,i.firstRow),o=Math.max(this.lastRow,i.lastRow,n.length);r>0&&!n[r];)r--;this.firstRow=i.firstRow,this.lastRow=i.lastRow,t.$cursorLayer.config=i;for(var s=r;s<=o;s++){var a=n[s];if(a&&a.el)if(a.hidden)a.el.style.top=-100-(a.pixelHeight||0)+"px";else{a._inDocument||(a._inDocument=!0,t.container.appendChild(a.el));var l=t.$cursorLayer.getPixelPosition({row:s,column:0},!0).top;a.coverLine||(l+=i.lineHeight*this.session.getRowLineCount(a.row)),a.el.style.top=l-i.offset+"px";var c=a.coverGutter?0:t.gutterWidth;a.fixedWidth||(c-=t.scrollLeft),a.el.style.left=c+"px",a.fullWidth&&a.screenWidth&&(a.el.style.minWidth=i.width+2*i.padding+"px"),a.fixedWidth?a.el.style.right=t.scrollBar.getWidth()+"px":a.el.style.right=""}}}}}).call(r.prototype),t.LineWidgets=r}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(e,t,i){"use strict";var n=e("../line_widgets").LineWidgets,r=e("../lib/dom"),o=e("../range").Range;t.showErrorMarker=function(e,t){var i=e.session;i.widgetManager||(i.widgetManager=new n(i),i.widgetManager.attach(e));var s=e.getCursorPosition(),a=s.row,l=i.widgetManager.getWidgetsAtRow(a).filter(function(e){return"errorMarker"==e.type})[0];l?l.destroy():a-=t;var c,h=function(e,t,i){var n=e.getAnnotations().sort(o.comparePoints);if(n.length){var r=function(e,t,i){for(var n=0,r=e.length-1;n<=r;){var o=n+r>>1,s=i(t,e[o]);if(s>0)n=o+1;else{if(!(s<0))return o;r=o-1}}return-(n+1)}(n,{row:t,column:-1},o.comparePoints);r<0&&(r=-r-1),r>=n.length?r=i>0?0:n.length-1:0===r&&i<0&&(r=n.length-1);var s=n[r];if(s&&i){if(s.row===t){do{s=n[r+=i]}while(s&&s.row===t);if(!s)return n.slice()}var a=[];t=s.row;do{a[i<0?"unshift":"push"](s),s=n[r+=i]}while(s&&s.row==t);return a.length&&a}}}(i,a,t);if(h){var u=h[0];s.column=(u.pos&&"number"!=typeof u.column?u.pos.sc:u.column)||0,s.row=u.row,c=e.renderer.$gutterLayer.$annotations[s.row]}else{if(l)return;c={text:["Looks good!"],className:"ace_ok"}}e.session.unfold(s.row),e.selection.moveToPosition(s);var d={row:s.row,fixedWidth:!0,coverGutter:!0,el:r.createElement("div"),type:"errorMarker"},f=d.el.appendChild(r.createElement("div")),p=d.el.appendChild(r.createElement("div"));p.className="error_widget_arrow "+c.className;var m=e.renderer.$cursorLayer.getPixelPosition(s).left;p.style.left=m+e.renderer.gutterWidth-5+"px",d.el.className="error_widget_wrapper",f.className="error_widget "+c.className,f.innerHTML=c.text.join("<br>"),f.appendChild(r.createElement("div"));var g=function(e,t,i){if(0===t&&("esc"===i||"return"===i))return d.destroy(),{command:"null"}};d.destroy=function(){e.$mouseHandler.isMousePressed||(e.keyBinding.removeKeyboardHandler(g),i.widgetManager.removeLineWidget(d),e.off("changeSelection",d.destroy),e.off("changeSession",d.destroy),e.off("mouseup",d.destroy),e.off("change",d.destroy))},e.keyBinding.addKeyboardHandler(g),e.on("changeSelection",d.destroy),e.on("changeSession",d.destroy),e.on("mouseup",d.destroy),e.on("change",d.destroy),e.session.widgetManager.addLineWidget(d),d.el.onmousedown=e.focus.bind(e),e.renderer.scrollCursorIntoView(null,.5,{bottom:d.el.offsetHeight})},r.importCssString("\t .error_widget_wrapper {\t background: inherit;\t color: inherit;\t border:none\t }\t .error_widget {\t border-top: solid 2px;\t border-bottom: solid 2px;\t margin: 5px 0;\t padding: 10px 40px;\t white-space: pre-wrap;\t }\t .error_widget.ace_error, .error_widget_arrow.ace_error{\t border-color: #ff5a5a\t }\t .error_widget.ace_warning, .error_widget_arrow.ace_warning{\t border-color: #F1D817\t }\t .error_widget.ace_info, .error_widget_arrow.ace_info{\t border-color: #5a5a5a\t }\t .error_widget.ace_ok, .error_widget_arrow.ace_ok{\t border-color: #5aaa5a\t }\t .error_widget_arrow {\t position: absolute;\t border: solid 5px;\t border-top-color: transparent!important;\t border-right-color: transparent!important;\t border-left-color: transparent!important;\t top: -5px;\t }\t","")}),ace.define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(e,t,i){"use strict";e("./lib/fixoldbrowsers");var n=e("./lib/dom"),r=e("./lib/event"),o=e("./editor").Editor,s=e("./edit_session").EditSession,a=e("./undomanager").UndoManager,l=e("./virtual_renderer").VirtualRenderer;e("./worker/worker_client"),e("./keyboard/hash_handler"),e("./placeholder"),e("./multi_select"),e("./mode/folding/fold_mode"),e("./theme/textmate"),e("./ext/error_marker"),t.config=e("./config"),t.acequire=e,t.edit=function(e){if("string"==typeof e){var i=e;if(!(e=document.getElementById(i)))throw new Error("ace.edit can't find div #"+i)}if(e&&e.env&&e.env.editor instanceof o)return e.env.editor;var s="";if(e&&/input|textarea/i.test(e.tagName)){var a=e;s=a.value,e=n.createElement("pre"),a.parentNode.replaceChild(e,a)}else e&&(s=n.getInnerText(e),e.innerHTML="");var c=t.createEditSession(s),h=new o(new l(e));h.setSession(c);var u={document:c,editor:h,onResize:h.resize.bind(h,null)};return a&&(u.textarea=a),r.addListener(window,"resize",u.onResize),h.on("destroy",function(){r.removeListener(window,"resize",u.onResize),u.editor.container.env=null}),h.container.env=h.env=u,h},t.createEditSession=function(e,t){var i=new s(e,t);return i.setUndoManager(new a),i},t.EditSession=s,t.UndoManager=a,t.version="1.2.3"}),ace.acequire(["ace/ace"],function(e){for(var t in e&&e.config.init(!0),window.ace||(window.ace=e),e)e.hasOwnProperty(t)&&(window.ace[t]=e[t])}),e.exports=window.ace.acequire("ace/ace")},function(e,t){e.exports=function(){throw new Error("define cannot be used indirect")}},function(e,t){(function(t){e.exports=function(){if(t.Blob)try{return new Blob(["asdf"],{type:"text/plain"}),Blob}catch(e){}var e=t.WebKitBlobBuilder||t.MozBlobBuilder||t.MSBlobBuilder;return function(t,i){var n=new e,r=i.endings,o=i.type;if(r)for(var s=0,a=t.length;s<a;++s)n.append(t[s],r);else for(var s=0,a=t.length;s<a;++s)n.append(t[s]);return o?n.getBlob(o):n.getBlob()}}()}).call(t,function(){return this}())},function(e,t,i){ace.define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,i){"use strict";var n=e("../lib/oop"),r=e("./text_highlight_rules").TextHighlightRules,o=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"invalid.illegal",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"invalid.illegal",regex:"\\/\\/.*$"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'[^"\\\\]+'},{token:"string",regex:'"',next:"start"},{token:"string",regex:"",next:"start"}]}};n.inherits(o,r),t.JsonHighlightRules=o}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("../range").Range,r=function(){};(function(){this.checkOutdent=function(e,t){return!!/^\s+$/.test(e)&&/^\s*\}/.test(t)},this.autoOutdent=function(e,t){var i=e.getLine(t).match(/^(\s*\})/);if(!i)return 0;var r=i[1].length,o=e.findMatchingBracket({row:t,column:r});if(!o||o.row==t)return 0;var s=this.$getIndent(e.getLine(o.row));e.replace(new n(t,0,t,r-1),s)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(r.prototype),t.MatchingBraceOutdent=r}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,i){"use strict";var n,r=e("../../lib/oop"),o=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,a=e("../../lib/lang"),l=["text","paren.rparen","punctuation.operator"],c=["text","paren.rparen","punctuation.operator","comment"],h={},u=function(e){var t=-1;if(e.multiSelect&&(t=e.selection.index,h.rangeCount!=e.multiSelect.rangeCount&&(h={rangeCount:e.multiSelect.rangeCount})),h[t])return n=h[t];n=h[t]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},d=function(e,t,i,n){var r=e.end.row-e.start.row;return{text:i+t+n,selection:[0,e.start.column+1,r,e.end.column+(r?0:1)]}},f=function(){this.add("braces","insertion",function(e,t,i,r,o){var s=i.getCursorPosition(),l=r.doc.getLine(s.row);if("{"==o){u(i);var c=i.getSelectionRange(),h=r.doc.getTextRange(c);if(""!==h&&"{"!==h&&i.getWrapBehavioursEnabled())return d(c,h,"{","}");if(f.isSaneInsertion(i,r))return/[\]\}\)]/.test(l[s.column])||i.inMultiSelectMode?(f.recordAutoInsert(i,r,"}"),{text:"{}",selection:[1,1]}):(f.recordMaybeInsert(i,r,"{"),{text:"{",selection:[1,1]})}else if("}"==o){if(u(i),"}"==l.substring(s.column,s.column+1))if(null!==r.$findOpeningBracket("}",{column:s.column+1,row:s.row})&&f.isAutoInsertedClosing(s,l,o))return f.popAutoInsertedClosing(),{text:"",selection:[1,1]}}else{if("\n"==o||"\r\n"==o){u(i);var p="";if(f.isMaybeInsertedClosing(s,l)&&(p=a.stringRepeat("}",n.maybeInsertedBrackets),f.clearMaybeInsertedClosing()),"}"===l.substring(s.column,s.column+1)){var m=r.findMatchingBracket({row:s.row,column:s.column+1},"}");if(!m)return null;var g=this.$getIndent(r.getLine(m.row))}else{if(!p)return void f.clearMaybeInsertedClosing();g=this.$getIndent(l)}var v=g+r.getTabString();return{text:"\n"+v+"\n"+g+p,selection:[1,v.length,1,v.length]}}f.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(e,t,i,r,o){var s=r.doc.getTextRange(o);if(!o.isMultiLine()&&"{"==s){if(u(i),"}"==r.doc.getLine(o.start.row).substring(o.end.column,o.end.column+1))return o.end.column++,o;n.maybeInsertedBrackets--}}),this.add("parens","insertion",function(e,t,i,n,r){if("("==r){u(i);var o=i.getSelectionRange(),s=n.doc.getTextRange(o);if(""!==s&&i.getWrapBehavioursEnabled())return d(o,s,"(",")");if(f.isSaneInsertion(i,n))return f.recordAutoInsert(i,n,")"),{text:"()",selection:[1,1]}}else if(")"==r){u(i);var a=i.getCursorPosition(),l=n.doc.getLine(a.row);if(")"==l.substring(a.column,a.column+1))if(null!==n.$findOpeningBracket(")",{column:a.column+1,row:a.row})&&f.isAutoInsertedClosing(a,l,r))return f.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}),this.add("parens","deletion",function(e,t,i,n,r){var o=n.doc.getTextRange(r);if(!r.isMultiLine()&&"("==o&&(u(i),")"==n.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2)))return r.end.column++,r}),this.add("brackets","insertion",function(e,t,i,n,r){if("["==r){u(i);var o=i.getSelectionRange(),s=n.doc.getTextRange(o);if(""!==s&&i.getWrapBehavioursEnabled())return d(o,s,"[","]");if(f.isSaneInsertion(i,n))return f.recordAutoInsert(i,n,"]"),{text:"[]",selection:[1,1]}}else if("]"==r){u(i);var a=i.getCursorPosition(),l=n.doc.getLine(a.row);if("]"==l.substring(a.column,a.column+1))if(null!==n.$findOpeningBracket("]",{column:a.column+1,row:a.row})&&f.isAutoInsertedClosing(a,l,r))return f.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}),this.add("brackets","deletion",function(e,t,i,n,r){var o=n.doc.getTextRange(r);if(!r.isMultiLine()&&"["==o&&(u(i),"]"==n.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2)))return r.end.column++,r}),this.add("string_dquotes","insertion",function(e,t,i,n,r){if('"'==r||"'"==r){u(i);var o=r,s=i.getSelectionRange(),a=n.doc.getTextRange(s);if(""!==a&&"'"!==a&&'"'!=a&&i.getWrapBehavioursEnabled())return d(s,a,o,o);if(!a){var l=i.getCursorPosition(),c=n.doc.getLine(l.row),h=c.substring(l.column-1,l.column),f=c.substring(l.column,l.column+1),p=n.getTokenAt(l.row,l.column),m=n.getTokenAt(l.row,l.column+1);if("\\"==h&&p&&/escape/.test(p.type))return null;var g,v=p&&/string|escape/.test(p.type),y=!m||/string|escape/.test(m.type);if(f==o)g=v!==y;else{if(v&&!y)return null;if(v&&y)return null;var w=n.$mode.tokenRe;w.lastIndex=0;var b=w.test(h);w.lastIndex=0;var C=w.test(h);if(b||C)return null;if(f&&!/[\s;,.})\]\\]/.test(f))return null;g=!0}return{text:g?o+o:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(e,t,i,n,r){var o=n.doc.getTextRange(r);if(!r.isMultiLine()&&('"'==o||"'"==o)&&(u(i),n.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2)==o))return r.end.column++,r})};f.isSaneInsertion=function(e,t){var i=e.getCursorPosition(),n=new s(t,i.row,i.column);if(!this.$matchTokenType(n.getCurrentToken()||"text",l)){var r=new s(t,i.row,i.column+1);if(!this.$matchTokenType(r.getCurrentToken()||"text",l))return!1}return n.stepForward(),n.getCurrentTokenRow()!==i.row||this.$matchTokenType(n.getCurrentToken()||"text",c)},f.$matchTokenType=function(e,t){return t.indexOf(e.type||e)>-1},f.recordAutoInsert=function(e,t,i){var r=e.getCursorPosition(),o=t.doc.getLine(r.row);this.isAutoInsertedClosing(r,o,n.autoInsertedLineEnd[0])||(n.autoInsertedBrackets=0),n.autoInsertedRow=r.row,n.autoInsertedLineEnd=i+o.substr(r.column),n.autoInsertedBrackets++},f.recordMaybeInsert=function(e,t,i){var r=e.getCursorPosition(),o=t.doc.getLine(r.row);this.isMaybeInsertedClosing(r,o)||(n.maybeInsertedBrackets=0),n.maybeInsertedRow=r.row,n.maybeInsertedLineStart=o.substr(0,r.column)+i,n.maybeInsertedLineEnd=o.substr(r.column),n.maybeInsertedBrackets++},f.isAutoInsertedClosing=function(e,t,i){return n.autoInsertedBrackets>0&&e.row===n.autoInsertedRow&&i===n.autoInsertedLineEnd[0]&&t.substr(e.column)===n.autoInsertedLineEnd},f.isMaybeInsertedClosing=function(e,t){return n.maybeInsertedBrackets>0&&e.row===n.maybeInsertedRow&&t.substr(e.column)===n.maybeInsertedLineEnd&&t.substr(0,e.column)==n.maybeInsertedLineStart},f.popAutoInsertedClosing=function(){n.autoInsertedLineEnd=n.autoInsertedLineEnd.substr(1),n.autoInsertedBrackets--},f.clearMaybeInsertedClosing=function(){n&&(n.maybeInsertedBrackets=0,n.maybeInsertedRow=-1)},r.inherits(f,o),t.CstyleBehaviour=f}),ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,i){"use strict";var n=e("../../lib/oop"),r=e("../../range").Range,o=e("./fold_mode").FoldMode,s=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};n.inherits(s,o),function(){this.foldingStartMarker=/(\{|\[)[^\}\]]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,i){var n=e.getLine(i);if(this.singleLineBlockCommentRe.test(n)&&!this.startRegionRe.test(n)&&!this.tripleStarBlockCommentRe.test(n))return"";var r=this._getFoldWidgetBase(e,t,i);return!r&&this.startRegionRe.test(n)?"start":r},this.getFoldWidgetRange=function(e,t,i,n){var r,o=e.getLine(i);if(this.startRegionRe.test(o))return this.getCommentRegionBlock(e,o,i);if(r=o.match(this.foldingStartMarker)){var s=r.index;if(r[1])return this.openingBracketBlock(e,r[1],i,s);var a=e.getCommentFoldRange(i,s+r[0].length,1);return a&&!a.isMultiLine()&&(n?a=this.getSectionRange(e,i):"all"!=t&&(a=null)),a}if("markbegin"!==t&&(r=o.match(this.foldingStopMarker))){s=r.index+r[0].length;return r[1]?this.closingBracketBlock(e,r[1],i,s):e.getCommentFoldRange(i,s,-1)}},this.getSectionRange=function(e,t){for(var i=e.getLine(t),n=i.search(/\S/),o=t,s=i.length,a=t+=1,l=e.getLength();++t<l;){var c=(i=e.getLine(t)).search(/\S/);if(-1!==c){if(n>c)break;var h=this.getFoldWidgetRange(e,"all",t);if(h){if(h.start.row<=o)break;if(h.isMultiLine())t=h.end.row;else if(n==c)break}a=t}}return new r(o,s,a,e.getLine(a).length)},this.getCommentRegionBlock=function(e,t,i){for(var n=t.search(/\s*$/),o=e.getLength(),s=i,a=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,l=1;++i<o;){t=e.getLine(i);var c=a.exec(t);if(c&&(c[1]?l--:l++,!l))break}if(i>s)return new r(s,n,i,t.length)}}.call(s.prototype)}),ace.define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(e,t,n){"use strict";var r=e("../lib/oop"),o=e("./text").Mode,s=e("./json_highlight_rules").JsonHighlightRules,a=e("./matching_brace_outdent").MatchingBraceOutdent,l=e("./behaviour/cstyle").CstyleBehaviour,c=e("./folding/cstyle").FoldMode,h=e("../worker/worker_client").WorkerClient,u=function(){this.HighlightRules=s,this.$outdent=new a,this.$behaviour=new l,this.foldingRules=new c};r.inherits(u,o),function(){this.getNextLineIndent=function(e,t,i){var n=this.$getIndent(t);"start"==e&&(t.match(/^.*[\{\(\[]\s*$/)&&(n+=i));return n},this.checkOutdent=function(e,t,i){return this.$outdent.checkOutdent(t,i)},this.autoOutdent=function(e,t,i){this.$outdent.autoOutdent(t,i)},this.createWorker=function(e){var t=new h(["ace"],i(68),"JsonWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/json"}.call(u.prototype),t.Mode=u})},function(e,t){e.exports.id="ace/mode/json_worker",e.exports.src='"no use strict";(function(window){function resolveModuleId(id,paths){for(var testPath=id,tail="";testPath;){var alias=paths[testPath];if("string"==typeof alias)return alias+tail;if(alias)return alias.location.replace(/\\/*$/,"/")+(tail||alias.main||alias.name);if(alias===!1)return"";var i=testPath.lastIndexOf("/");if(-1===i)break;tail=testPath.substr(i)+tail,testPath=testPath.slice(0,i)}return id}if(!(void 0!==window.window&&window.document||window.acequire&&window.define)){window.console||(window.console=function(){var msgs=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:msgs})},window.console.error=window.console.warn=window.console.log=window.console.trace=window.console),window.window=window,window.ace=window,window.onerror=function(message,file,line,col,err){postMessage({type:"error",data:{message:message,data:err.data,file:file,line:line,col:col,stack:err.stack}})},window.normalizeModule=function(parentId,moduleName){if(-1!==moduleName.indexOf("!")){var chunks=moduleName.split("!");return window.normalizeModule(parentId,chunks[0])+"!"+window.normalizeModule(parentId,chunks[1])}if("."==moduleName.charAt(0)){var base=parentId.split("/").slice(0,-1).join("/");for(moduleName=(base?base+"/":"")+moduleName;-1!==moduleName.indexOf(".")&&previous!=moduleName;){var previous=moduleName;moduleName=moduleName.replace(/^\\.\\//,"").replace(/\\/\\.\\//,"/").replace(/[^\\/]+\\/\\.\\.\\//,"")}}return moduleName},window.acequire=function acequire(parentId,id){if(id||(id=parentId,parentId=null),!id.charAt)throw Error("worker.js acequire() accepts only (parentId, id) as arguments");id=window.normalizeModule(parentId,id);var module=window.acequire.modules[id];if(module)return module.initialized||(module.initialized=!0,module.exports=module.factory().exports),module.exports;if(!window.acequire.tlns)return console.log("unable to load "+id);var path=resolveModuleId(id,window.acequire.tlns);return".js"!=path.slice(-3)&&(path+=".js"),window.acequire.id=id,window.acequire.modules[id]={},importScripts(path),window.acequire(parentId,id)},window.acequire.modules={},window.acequire.tlns={},window.define=function(id,deps,factory){if(2==arguments.length?(factory=deps,"string"!=typeof id&&(deps=id,id=window.acequire.id)):1==arguments.length&&(factory=id,deps=[],id=window.acequire.id),"function"!=typeof factory)return window.acequire.modules[id]={exports:factory,initialized:!0},void 0;deps.length||(deps=["require","exports","module"]);var req=function(childId){return window.acequire(id,childId)};window.acequire.modules[id]={exports:{},factory:function(){var module=this,returnExports=factory.apply(this,deps.map(function(dep){switch(dep){case"require":return req;case"exports":return module.exports;case"module":return module;default:return req(dep)}}));return returnExports&&(module.exports=returnExports),module}}},window.define.amd={},acequire.tlns={},window.initBaseUrls=function(topLevelNamespaces){for(var i in topLevelNamespaces)acequire.tlns[i]=topLevelNamespaces[i]},window.initSender=function(){var EventEmitter=window.acequire("ace/lib/event_emitter").EventEmitter,oop=window.acequire("ace/lib/oop"),Sender=function(){};return function(){oop.implement(this,EventEmitter),this.callback=function(data,callbackId){postMessage({type:"call",id:callbackId,data:data})},this.emit=function(name,data){postMessage({type:"event",name:name,data:data})}}.call(Sender.prototype),new Sender};var main=window.main=null,sender=window.sender=null;window.onmessage=function(e){var msg=e.data;if(msg.event&&sender)sender._signal(msg.event,msg.data);else if(msg.command)if(main[msg.command])main[msg.command].apply(main,msg.args);else{if(!window[msg.command])throw Error("Unknown command:"+msg.command);window[msg.command].apply(window,msg.args)}else if(msg.init){window.initBaseUrls(msg.tlns),acequire("ace/lib/es5-shim"),sender=window.sender=window.initSender();var clazz=acequire(msg.module)[msg.classname];main=window.main=new clazz(sender)}}}})(this),ace.define("ace/lib/oop",["require","exports","module"],function(acequire,exports){"use strict";exports.inherits=function(ctor,superCtor){ctor.super_=superCtor,ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:!1,writable:!0,configurable:!0}})},exports.mixin=function(obj,mixin){for(var key in mixin)obj[key]=mixin[key];return obj},exports.implement=function(proto,mixin){exports.mixin(proto,mixin)}}),ace.define("ace/range",["require","exports","module"],function(acequire,exports){"use strict";var comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},Range=function(startRow,startColumn,endRow,endColumn){this.start={row:startRow,column:startColumn},this.end={row:endRow,column:endColumn}};(function(){this.isEqual=function(range){return this.start.row===range.start.row&&this.end.row===range.end.row&&this.start.column===range.start.column&&this.end.column===range.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(row,column){return 0==this.compare(row,column)},this.compareRange=function(range){var cmp,end=range.end,start=range.start;return cmp=this.compare(end.row,end.column),1==cmp?(cmp=this.compare(start.row,start.column),1==cmp?2:0==cmp?1:0):-1==cmp?-2:(cmp=this.compare(start.row,start.column),-1==cmp?-1:1==cmp?42:0)},this.comparePoint=function(p){return this.compare(p.row,p.column)},this.containsRange=function(range){return 0==this.comparePoint(range.start)&&0==this.comparePoint(range.end)},this.intersects=function(range){var cmp=this.compareRange(range);return-1==cmp||0==cmp||1==cmp},this.isEnd=function(row,column){return this.end.row==row&&this.end.column==column},this.isStart=function(row,column){return this.start.row==row&&this.start.column==column},this.setStart=function(row,column){"object"==typeof row?(this.start.column=row.column,this.start.row=row.row):(this.start.row=row,this.start.column=column)},this.setEnd=function(row,column){"object"==typeof row?(this.end.column=row.column,this.end.row=row.row):(this.end.row=row,this.end.column=column)},this.inside=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)||this.isStart(row,column)?!1:!0:!1},this.insideStart=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)?!1:!0:!1},this.insideEnd=function(row,column){return 0==this.compare(row,column)?this.isStart(row,column)?!1:!0:!1},this.compare=function(row,column){return this.isMultiLine()||row!==this.start.row?this.start.row>row?-1:row>this.end.row?1:this.start.row===row?column>=this.start.column?0:-1:this.end.row===row?this.end.column>=column?0:1:0:this.start.column>column?-1:column>this.end.column?1:0},this.compareStart=function(row,column){return this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.compareEnd=function(row,column){return this.end.row==row&&this.end.column==column?1:this.compare(row,column)},this.compareInside=function(row,column){return this.end.row==row&&this.end.column==column?1:this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.clipRows=function(firstRow,lastRow){if(this.end.row>lastRow)var end={row:lastRow+1,column:0};else if(firstRow>this.end.row)var end={row:firstRow,column:0};if(this.start.row>lastRow)var start={row:lastRow+1,column:0};else if(firstRow>this.start.row)var start={row:firstRow,column:0};return Range.fromPoints(start||this.start,end||this.end)},this.extend=function(row,column){var cmp=this.compare(row,column);if(0==cmp)return this;if(-1==cmp)var start={row:row,column:column};else var end={row:row,column:column};return Range.fromPoints(start||this.start,end||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return Range.fromPoints(this.start,this.end)},this.collapseRows=function(){return 0==this.end.column?new Range(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new Range(this.start.row,0,this.end.row,0)},this.toScreenRange=function(session){var screenPosStart=session.documentToScreenPosition(this.start),screenPosEnd=session.documentToScreenPosition(this.end);return new Range(screenPosStart.row,screenPosStart.column,screenPosEnd.row,screenPosEnd.column)},this.moveBy=function(row,column){this.start.row+=row,this.start.column+=column,this.end.row+=row,this.end.column+=column}}).call(Range.prototype),Range.fromPoints=function(start,end){return new Range(start.row,start.column,end.row,end.column)},Range.comparePoints=comparePoints,Range.comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},exports.Range=Range}),ace.define("ace/apply_delta",["require","exports","module"],function(acequire,exports){"use strict";exports.applyDelta=function(docLines,delta){var row=delta.start.row,startColumn=delta.start.column,line=docLines[row]||"";switch(delta.action){case"insert":var lines=delta.lines;if(1===lines.length)docLines[row]=line.substring(0,startColumn)+delta.lines[0]+line.substring(startColumn);else{var args=[row,1].concat(delta.lines);docLines.splice.apply(docLines,args),docLines[row]=line.substring(0,startColumn)+docLines[row],docLines[row+delta.lines.length-1]+=line.substring(startColumn)}break;case"remove":var endColumn=delta.end.column,endRow=delta.end.row;row===endRow?docLines[row]=line.substring(0,startColumn)+line.substring(endColumn):docLines.splice(row,endRow-row+1,line.substring(0,startColumn)+docLines[endRow].substring(endColumn))}}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(acequire,exports){"use strict";var EventEmitter={},stopPropagation=function(){this.propagationStopped=!0},preventDefault=function(){this.defaultPrevented=!0};EventEmitter._emit=EventEmitter._dispatchEvent=function(eventName,e){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var listeners=this._eventRegistry[eventName]||[],defaultHandler=this._defaultHandlers[eventName];if(listeners.length||defaultHandler){"object"==typeof e&&e||(e={}),e.type||(e.type=eventName),e.stopPropagation||(e.stopPropagation=stopPropagation),e.preventDefault||(e.preventDefault=preventDefault),listeners=listeners.slice();for(var i=0;listeners.length>i&&(listeners[i](e,this),!e.propagationStopped);i++);return defaultHandler&&!e.defaultPrevented?defaultHandler(e,this):void 0}},EventEmitter._signal=function(eventName,e){var listeners=(this._eventRegistry||{})[eventName];if(listeners){listeners=listeners.slice();for(var i=0;listeners.length>i;i++)listeners[i](e,this)}},EventEmitter.once=function(eventName,callback){var _self=this;callback&&this.addEventListener(eventName,function newCallback(){_self.removeEventListener(eventName,newCallback),callback.apply(null,arguments)})},EventEmitter.setDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers||(handlers=this._defaultHandlers={_disabled_:{}}),handlers[eventName]){var old=handlers[eventName],disabled=handlers._disabled_[eventName];disabled||(handlers._disabled_[eventName]=disabled=[]),disabled.push(old);var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}handlers[eventName]=callback},EventEmitter.removeDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers){var disabled=handlers._disabled_[eventName];if(handlers[eventName]==callback)handlers[eventName],disabled&&this.setDefaultHandler(eventName,disabled.pop());else if(disabled){var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}}},EventEmitter.on=EventEmitter.addEventListener=function(eventName,callback,capturing){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];return listeners||(listeners=this._eventRegistry[eventName]=[]),-1==listeners.indexOf(callback)&&listeners[capturing?"unshift":"push"](callback),callback},EventEmitter.off=EventEmitter.removeListener=EventEmitter.removeEventListener=function(eventName,callback){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];if(listeners){var index=listeners.indexOf(callback);-1!==index&&listeners.splice(index,1)}},EventEmitter.removeAllListeners=function(eventName){this._eventRegistry&&(this._eventRegistry[eventName]=[])},exports.EventEmitter=EventEmitter}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(acequire,exports){"use strict";var oop=acequire("./lib/oop"),EventEmitter=acequire("./lib/event_emitter").EventEmitter,Anchor=exports.Anchor=function(doc,row,column){this.$onChange=this.onChange.bind(this),this.attach(doc),column===void 0?this.setPosition(row.row,row.column):this.setPosition(row,column)};(function(){function $pointsInOrder(point1,point2,equalPointsInOrder){var bColIsAfter=equalPointsInOrder?point1.column<=point2.column:point1.column<point2.column;return point1.row<point2.row||point1.row==point2.row&&bColIsAfter}function $getTransformedPoint(delta,point,moveIfEqual){var deltaIsInsert="insert"==delta.action,deltaRowShift=(deltaIsInsert?1:-1)*(delta.end.row-delta.start.row),deltaColShift=(deltaIsInsert?1:-1)*(delta.end.column-delta.start.column),deltaStart=delta.start,deltaEnd=deltaIsInsert?deltaStart:delta.end;return $pointsInOrder(point,deltaStart,moveIfEqual)?{row:point.row,column:point.column}:$pointsInOrder(deltaEnd,point,!moveIfEqual)?{row:point.row+deltaRowShift,column:point.column+(point.row==deltaEnd.row?deltaColShift:0)}:{row:deltaStart.row,column:deltaStart.column}}oop.implement(this,EventEmitter),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(delta){if(!(delta.start.row==delta.end.row&&delta.start.row!=this.row||delta.start.row>this.row)){var point=$getTransformedPoint(delta,{row:this.row,column:this.column},this.$insertRight);this.setPosition(point.row,point.column,!0)}},this.setPosition=function(row,column,noClip){var pos;if(pos=noClip?{row:row,column:column}:this.$clipPositionToDocument(row,column),this.row!=pos.row||this.column!=pos.column){var old={row:this.row,column:this.column};this.row=pos.row,this.column=pos.column,this._signal("change",{old:old,value:pos})}},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.attach=function(doc){this.document=doc||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(row,column){var pos={};return row>=this.document.getLength()?(pos.row=Math.max(0,this.document.getLength()-1),pos.column=this.document.getLine(pos.row).length):0>row?(pos.row=0,pos.column=0):(pos.row=row,pos.column=Math.min(this.document.getLine(pos.row).length,Math.max(0,column))),0>column&&(pos.column=0),pos}}).call(Anchor.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(acequire,exports){"use strict";var oop=acequire("./lib/oop"),applyDelta=acequire("./apply_delta").applyDelta,EventEmitter=acequire("./lib/event_emitter").EventEmitter,Range=acequire("./range").Range,Anchor=acequire("./anchor").Anchor,Document=function(textOrLines){this.$lines=[""],0===textOrLines.length?this.$lines=[""]:Array.isArray(textOrLines)?this.insertMergedLines({row:0,column:0},textOrLines):this.insert({row:0,column:0},textOrLines)};(function(){oop.implement(this,EventEmitter),this.setValue=function(text){var len=this.getLength()-1;this.remove(new Range(0,0,len,this.getLine(len).length)),this.insert({row:0,column:0},text)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(row,column){return new Anchor(this,row,column)},this.$split=0==="aaa".split(/a/).length?function(text){return text.replace(/\\r\\n|\\r/g,"\\n").split("\\n")}:function(text){return text.split(/\\r\\n|\\r|\\n/)},this.$detectNewLine=function(text){var match=text.match(/^.*?(\\r\\n|\\r|\\n)/m);this.$autoNewLine=match?match[1]:"\\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\\r\\n";case"unix":return"\\n";default:return this.$autoNewLine||"\\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(newLineMode){this.$newLineMode!==newLineMode&&(this.$newLineMode=newLineMode,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(text){return"\\r\\n"==text||"\\r"==text||"\\n"==text},this.getLine=function(row){return this.$lines[row]||""},this.getLines=function(firstRow,lastRow){return this.$lines.slice(firstRow,lastRow+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(range){return this.getLinesForRange(range).join(this.getNewLineCharacter())},this.getLinesForRange=function(range){var lines;if(range.start.row===range.end.row)lines=[this.getLine(range.start.row).substring(range.start.column,range.end.column)];else{lines=this.getLines(range.start.row,range.end.row),lines[0]=(lines[0]||"").substring(range.start.column);var l=lines.length-1;range.end.row-range.start.row==l&&(lines[l]=lines[l].substring(0,range.end.column))}return lines},this.insertLines=function(row,lines){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(row,lines)},this.removeLines=function(firstRow,lastRow){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(firstRow,lastRow)},this.insertNewLine=function(position){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, [\'\', \'\']) instead."),this.insertMergedLines(position,["",""])},this.insert=function(position,text){return 1>=this.getLength()&&this.$detectNewLine(text),this.insertMergedLines(position,this.$split(text))},this.insertInLine=function(position,text){var start=this.clippedPos(position.row,position.column),end=this.pos(position.row,position.column+text.length);return this.applyDelta({start:start,end:end,action:"insert",lines:[text]},!0),this.clonePos(end)},this.clippedPos=function(row,column){var length=this.getLength();void 0===row?row=length:0>row?row=0:row>=length&&(row=length-1,column=void 0);var line=this.getLine(row);return void 0==column&&(column=line.length),column=Math.min(Math.max(column,0),line.length),{row:row,column:column}},this.clonePos=function(pos){return{row:pos.row,column:pos.column}},this.pos=function(row,column){return{row:row,column:column}},this.$clipPosition=function(position){var length=this.getLength();return position.row>=length?(position.row=Math.max(0,length-1),position.column=this.getLine(length-1).length):(position.row=Math.max(0,position.row),position.column=Math.min(Math.max(position.column,0),this.getLine(position.row).length)),position},this.insertFullLines=function(row,lines){row=Math.min(Math.max(row,0),this.getLength());var column=0;this.getLength()>row?(lines=lines.concat([""]),column=0):(lines=[""].concat(lines),row--,column=this.$lines[row].length),this.insertMergedLines({row:row,column:column},lines)},this.insertMergedLines=function(position,lines){var start=this.clippedPos(position.row,position.column),end={row:start.row+lines.length-1,column:(1==lines.length?start.column:0)+lines[lines.length-1].length};return this.applyDelta({start:start,end:end,action:"insert",lines:lines}),this.clonePos(end)},this.remove=function(range){var start=this.clippedPos(range.start.row,range.start.column),end=this.clippedPos(range.end.row,range.end.column);return this.applyDelta({start:start,end:end,action:"remove",lines:this.getLinesForRange({start:start,end:end})}),this.clonePos(start)},this.removeInLine=function(row,startColumn,endColumn){var start=this.clippedPos(row,startColumn),end=this.clippedPos(row,endColumn);return this.applyDelta({start:start,end:end,action:"remove",lines:this.getLinesForRange({start:start,end:end})},!0),this.clonePos(start)},this.removeFullLines=function(firstRow,lastRow){firstRow=Math.min(Math.max(0,firstRow),this.getLength()-1),lastRow=Math.min(Math.max(0,lastRow),this.getLength()-1);var deleteFirstNewLine=lastRow==this.getLength()-1&&firstRow>0,deleteLastNewLine=this.getLength()-1>lastRow,startRow=deleteFirstNewLine?firstRow-1:firstRow,startCol=deleteFirstNewLine?this.getLine(startRow).length:0,endRow=deleteLastNewLine?lastRow+1:lastRow,endCol=deleteLastNewLine?0:this.getLine(endRow).length,range=new Range(startRow,startCol,endRow,endCol),deletedLines=this.$lines.slice(firstRow,lastRow+1);return this.applyDelta({start:range.start,end:range.end,action:"remove",lines:this.getLinesForRange(range)}),deletedLines},this.removeNewLine=function(row){this.getLength()-1>row&&row>=0&&this.applyDelta({start:this.pos(row,this.getLine(row).length),end:this.pos(row+1,0),action:"remove",lines:["",""]})},this.replace=function(range,text){if(range instanceof Range||(range=Range.fromPoints(range.start,range.end)),0===text.length&&range.isEmpty())return range.start;if(text==this.getTextRange(range))return range.end;this.remove(range);var end;return end=text?this.insert(range.start,text):range.start},this.applyDeltas=function(deltas){for(var i=0;deltas.length>i;i++)this.applyDelta(deltas[i])},this.revertDeltas=function(deltas){for(var i=deltas.length-1;i>=0;i--)this.revertDelta(deltas[i])},this.applyDelta=function(delta,doNotValidate){var isInsert="insert"==delta.action;(isInsert?1>=delta.lines.length&&!delta.lines[0]:!Range.comparePoints(delta.start,delta.end))||(isInsert&&delta.lines.length>2e4&&this.$splitAndapplyLargeDelta(delta,2e4),applyDelta(this.$lines,delta,doNotValidate),this._signal("change",delta))},this.$splitAndapplyLargeDelta=function(delta,MAX){for(var lines=delta.lines,l=lines.length,row=delta.start.row,column=delta.start.column,from=0,to=0;;){from=to,to+=MAX-1;var chunk=lines.slice(from,to);if(to>l){delta.lines=chunk,delta.start.row=row+from,delta.start.column=column;break}chunk.push(""),this.applyDelta({start:this.pos(row+from,column),end:this.pos(row+to,column=0),action:delta.action,lines:chunk},!0)}},this.revertDelta=function(delta){this.applyDelta({start:this.clonePos(delta.start),end:this.clonePos(delta.end),action:"insert"==delta.action?"remove":"insert",lines:delta.lines.slice()})},this.indexToPosition=function(index,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,i=startRow||0,l=lines.length;l>i;i++)if(index-=lines[i].length+newlineLength,0>index)return{row:i,column:index+lines[i].length+newlineLength};return{row:l-1,column:lines[l-1].length}},this.positionToIndex=function(pos,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,index=0,row=Math.min(pos.row,lines.length),i=startRow||0;row>i;++i)index+=lines[i].length+newlineLength;return index+pos.column}}).call(Document.prototype),exports.Document=Document}),ace.define("ace/lib/lang",["require","exports","module"],function(acequire,exports){"use strict";exports.last=function(a){return a[a.length-1]},exports.stringReverse=function(string){return string.split("").reverse().join("")},exports.stringRepeat=function(string,count){for(var result="";count>0;)1&count&&(result+=string),(count>>=1)&&(string+=string);return result};var trimBeginRegexp=/^\\s\\s*/,trimEndRegexp=/\\s\\s*$/;exports.stringTrimLeft=function(string){return string.replace(trimBeginRegexp,"")},exports.stringTrimRight=function(string){return string.replace(trimEndRegexp,"")},exports.copyObject=function(obj){var copy={};for(var key in obj)copy[key]=obj[key];return copy},exports.copyArray=function(array){for(var copy=[],i=0,l=array.length;l>i;i++)copy[i]=array[i]&&"object"==typeof array[i]?this.copyObject(array[i]):array[i];return copy},exports.deepCopy=function deepCopy(obj){if("object"!=typeof obj||!obj)return obj;var copy;if(Array.isArray(obj)){copy=[];for(var key=0;obj.length>key;key++)copy[key]=deepCopy(obj[key]);return copy}var cons=obj.constructor;if(cons===RegExp)return obj;copy=cons();for(var key in obj)copy[key]=deepCopy(obj[key]);return copy},exports.arrayToMap=function(arr){for(var map={},i=0;arr.length>i;i++)map[arr[i]]=1;return map},exports.createMap=function(props){var map=Object.create(null);for(var i in props)map[i]=props[i];return map},exports.arrayRemove=function(array,value){for(var i=0;array.length>=i;i++)value===array[i]&&array.splice(i,1)},exports.escapeRegExp=function(str){return str.replace(/([.*+?^${}()|[\\]\\/\\\\])/g,"\\\\$1")},exports.escapeHTML=function(str){return str.replace(/&/g,"&").replace(/"/g,""").replace(/\'/g,"'").replace(/</g,"<")},exports.getMatchOffsets=function(string,regExp){var matches=[];return string.replace(regExp,function(str){matches.push({offset:arguments[arguments.length-2],length:str.length})}),matches},exports.deferredCall=function(fcn){var timer=null,callback=function(){timer=null,fcn()},deferred=function(timeout){return deferred.cancel(),timer=setTimeout(callback,timeout||0),deferred};return deferred.schedule=deferred,deferred.call=function(){return this.cancel(),fcn(),deferred},deferred.cancel=function(){return clearTimeout(timer),timer=null,deferred},deferred.isPending=function(){return timer},deferred},exports.delayedCall=function(fcn,defaultTimeout){var timer=null,callback=function(){timer=null,fcn()},_self=function(timeout){null==timer&&(timer=setTimeout(callback,timeout||defaultTimeout))};return _self.delay=function(timeout){timer&&clearTimeout(timer),timer=setTimeout(callback,timeout||defaultTimeout)},_self.schedule=_self,_self.call=function(){this.cancel(),fcn()},_self.cancel=function(){timer&&clearTimeout(timer),timer=null},_self.isPending=function(){return timer},_self}}),ace.define("ace/worker/mirror",["require","exports","module","ace/range","ace/document","ace/lib/lang"],function(acequire,exports){"use strict";acequire("../range").Range;var Document=acequire("../document").Document,lang=acequire("../lib/lang"),Mirror=exports.Mirror=function(sender){this.sender=sender;var doc=this.doc=new Document(""),deferredUpdate=this.deferredUpdate=lang.delayedCall(this.onUpdate.bind(this)),_self=this;sender.on("change",function(e){var data=e.data;if(data[0].start)doc.applyDeltas(data);else for(var i=0;data.length>i;i+=2){if(Array.isArray(data[i+1]))var d={action:"insert",start:data[i],lines:data[i+1]};else var d={action:"remove",start:data[i],end:data[i+1]};doc.applyDelta(d,!0)}return _self.$timeout?deferredUpdate.schedule(_self.$timeout):(_self.onUpdate(),void 0)})};(function(){this.$timeout=500,this.setTimeout=function(timeout){this.$timeout=timeout},this.setValue=function(value){this.doc.setValue(value),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(callbackId){this.sender.callback(this.doc.getValue(),callbackId)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(Mirror.prototype)}),ace.define("ace/mode/json/json_parse",["require","exports","module"],function(){"use strict";var at,ch,text,value,escapee={\'"\':\'"\',"\\\\":"\\\\","/":"/",b:"\\b",f:"\\f",n:"\\n",r:"\\r",t:"\t"},error=function(m){throw{name:"SyntaxError",message:m,at:at,text:text}},next=function(c){return c&&c!==ch&&error("Expected \'"+c+"\' instead of \'"+ch+"\'"),ch=text.charAt(at),at+=1,ch},number=function(){var number,string="";for("-"===ch&&(string="-",next("-"));ch>="0"&&"9">=ch;)string+=ch,next();if("."===ch)for(string+=".";next()&&ch>="0"&&"9">=ch;)string+=ch;if("e"===ch||"E"===ch)for(string+=ch,next(),("-"===ch||"+"===ch)&&(string+=ch,next());ch>="0"&&"9">=ch;)string+=ch,next();return number=+string,isNaN(number)?(error("Bad number"),void 0):number},string=function(){var hex,i,uffff,string="";if(\'"\'===ch)for(;next();){if(\'"\'===ch)return next(),string;if("\\\\"===ch)if(next(),"u"===ch){for(uffff=0,i=0;4>i&&(hex=parseInt(next(),16),isFinite(hex));i+=1)uffff=16*uffff+hex;string+=String.fromCharCode(uffff)}else{if("string"!=typeof escapee[ch])break;string+=escapee[ch]}else string+=ch}error("Bad string")},white=function(){for(;ch&&" ">=ch;)next()},word=function(){switch(ch){case"t":return next("t"),next("r"),next("u"),next("e"),!0;case"f":return next("f"),next("a"),next("l"),next("s"),next("e"),!1;case"n":return next("n"),next("u"),next("l"),next("l"),null}error("Unexpected \'"+ch+"\'")},array=function(){var array=[];if("["===ch){if(next("["),white(),"]"===ch)return next("]"),array;for(;ch;){if(array.push(value()),white(),"]"===ch)return next("]"),array;next(","),white()}}error("Bad array")},object=function(){var key,object={};if("{"===ch){if(next("{"),white(),"}"===ch)return next("}"),object;for(;ch;){if(key=string(),white(),next(":"),Object.hasOwnProperty.call(object,key)&&error(\'Duplicate key "\'+key+\'"\'),object[key]=value(),white(),"}"===ch)return next("}"),object;next(","),white()}}error("Bad object")};return value=function(){switch(white(),ch){case"{":return object();case"[":return array();case\'"\':return string();case"-":return number();default:return ch>="0"&&"9">=ch?number():word()}},function(source,reviver){var result;return text=source,at=0,ch=" ",result=value(),white(),ch&&error("Syntax error"),"function"==typeof reviver?function walk(holder,key){var k,v,value=holder[key];if(value&&"object"==typeof value)for(k in value)Object.hasOwnProperty.call(value,k)&&(v=walk(value,k),void 0!==v?value[k]=v:delete value[k]);return reviver.call(holder,key,value)}({"":result},""):result}}),ace.define("ace/mode/json_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/json/json_parse"],function(acequire,exports){"use strict";var oop=acequire("../lib/oop"),Mirror=acequire("../worker/mirror").Mirror,parse=acequire("./json/json_parse"),JsonWorker=exports.JsonWorker=function(sender){Mirror.call(this,sender),this.setTimeout(200)};oop.inherits(JsonWorker,Mirror),function(){this.onUpdate=function(){var value=this.doc.getValue(),errors=[];try{value&&parse(value)}catch(e){var pos=this.doc.indexToPosition(e.at-1);errors.push({row:pos.row,column:pos.column,text:e.message,type:"error"})}this.sender.emit("annotate",errors)}}.call(JsonWorker.prototype)}),ace.define("ace/lib/es5-shim",["require","exports","module"],function(){function Empty(){}function doesDefinePropertyWork(object){try{return Object.defineProperty(object,"sentinel",{}),"sentinel"in object}catch(exception){}}function toInteger(n){return n=+n,n!==n?n=0:0!==n&&n!==1/0&&n!==-(1/0)&&(n=(n>0||-1)*Math.floor(Math.abs(n))),n}Function.prototype.bind||(Function.prototype.bind=function(that){var target=this;if("function"!=typeof target)throw new TypeError("Function.prototype.bind called on incompatible "+target);var args=slice.call(arguments,1),bound=function(){if(this instanceof bound){var result=target.apply(this,args.concat(slice.call(arguments)));return Object(result)===result?result:this}return target.apply(that,args.concat(slice.call(arguments)))};return target.prototype&&(Empty.prototype=target.prototype,bound.prototype=new Empty,Empty.prototype=null),bound});var defineGetter,defineSetter,lookupGetter,lookupSetter,supportsAccessors,call=Function.prototype.call,prototypeOfArray=Array.prototype,prototypeOfObject=Object.prototype,slice=prototypeOfArray.slice,_toString=call.bind(prototypeOfObject.toString),owns=call.bind(prototypeOfObject.hasOwnProperty);if((supportsAccessors=owns(prototypeOfObject,"__defineGetter__"))&&(defineGetter=call.bind(prototypeOfObject.__defineGetter__),defineSetter=call.bind(prototypeOfObject.__defineSetter__),lookupGetter=call.bind(prototypeOfObject.__lookupGetter__),lookupSetter=call.bind(prototypeOfObject.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function makeArray(l){var a=Array(l+2);return a[0]=a[1]=0,a}var lengthBefore,array=[];return array.splice.apply(array,makeArray(20)),array.splice.apply(array,makeArray(26)),lengthBefore=array.length,array.splice(5,0,"XXX"),lengthBefore+1==array.length,lengthBefore+1==array.length?!0:void 0\n}()){var array_splice=Array.prototype.splice;Array.prototype.splice=function(start,deleteCount){return arguments.length?array_splice.apply(this,[void 0===start?0:start,void 0===deleteCount?this.length-start:deleteCount].concat(slice.call(arguments,2))):[]}}else Array.prototype.splice=function(pos,removeCount){var length=this.length;pos>0?pos>length&&(pos=length):void 0==pos?pos=0:0>pos&&(pos=Math.max(length+pos,0)),length>pos+removeCount||(removeCount=length-pos);var removed=this.slice(pos,pos+removeCount),insert=slice.call(arguments,2),add=insert.length;if(pos===length)add&&this.push.apply(this,insert);else{var remove=Math.min(removeCount,length-pos),tailOldPos=pos+remove,tailNewPos=tailOldPos+add-remove,tailCount=length-tailOldPos,lengthAfterRemove=length-remove;if(tailOldPos>tailNewPos)for(var i=0;tailCount>i;++i)this[tailNewPos+i]=this[tailOldPos+i];else if(tailNewPos>tailOldPos)for(i=tailCount;i--;)this[tailNewPos+i]=this[tailOldPos+i];if(add&&pos===lengthAfterRemove)this.length=lengthAfterRemove,this.push.apply(this,insert);else for(this.length=lengthAfterRemove+add,i=0;add>i;++i)this[pos+i]=insert[i]}return removed};Array.isArray||(Array.isArray=function(obj){return"[object Array]"==_toString(obj)});var boxedString=Object("a"),splitString="a"!=boxedString[0]||!(0 in boxedString);if(Array.prototype.forEach||(Array.prototype.forEach=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,thisp=arguments[1],i=-1,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError;for(;length>++i;)i in self&&fun.call(thisp,self[i],i,object)}),Array.prototype.map||(Array.prototype.map=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,result=Array(length),thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)i in self&&(result[i]=fun.call(thisp,self[i],i,object));return result}),Array.prototype.filter||(Array.prototype.filter=function(fun){var value,object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,result=[],thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)i in self&&(value=self[i],fun.call(thisp,value,i,object)&&result.push(value));return result}),Array.prototype.every||(Array.prototype.every=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)if(i in self&&!fun.call(thisp,self[i],i,object))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)if(i in self&&fun.call(thisp,self[i],i,object))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");if(!length&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var result,i=0;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i++];break}if(++i>=length)throw new TypeError("reduce of empty array with no initial value")}for(;length>i;i++)i in self&&(result=fun.call(void 0,result,self[i],i,object));return result}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");if(!length&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var result,i=length-1;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i--];break}if(0>--i)throw new TypeError("reduceRight of empty array with no initial value")}do i in this&&(result=fun.call(void 0,result,self[i],i,object));while(i--);return result}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(sought){var self=splitString&&"[object String]"==_toString(this)?this.split(""):toObject(this),length=self.length>>>0;if(!length)return-1;var i=0;for(arguments.length>1&&(i=toInteger(arguments[1])),i=i>=0?i:Math.max(0,length+i);length>i;i++)if(i in self&&self[i]===sought)return i;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(sought){var self=splitString&&"[object String]"==_toString(this)?this.split(""):toObject(this),length=self.length>>>0;if(!length)return-1;var i=length-1;for(arguments.length>1&&(i=Math.min(i,toInteger(arguments[1]))),i=i>=0?i:length-Math.abs(i);i>=0;i--)if(i in self&&sought===self[i])return i;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(object){return object.__proto__||(object.constructor?object.constructor.prototype:prototypeOfObject)}),!Object.getOwnPropertyDescriptor){var ERR_NON_OBJECT="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(object,property){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT+object);if(owns(object,property)){var descriptor,getter,setter;if(descriptor={enumerable:!0,configurable:!0},supportsAccessors){var prototype=object.__proto__;object.__proto__=prototypeOfObject;var getter=lookupGetter(object,property),setter=lookupSetter(object,property);if(object.__proto__=prototype,getter||setter)return getter&&(descriptor.get=getter),setter&&(descriptor.set=setter),descriptor}return descriptor.value=object[property],descriptor}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(object){return Object.keys(object)}),!Object.create){var createEmpty;createEmpty=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var empty={};for(var i in empty)empty[i]=null;return empty.constructor=empty.hasOwnProperty=empty.propertyIsEnumerable=empty.isPrototypeOf=empty.toLocaleString=empty.toString=empty.valueOf=empty.__proto__=null,empty},Object.create=function(prototype,properties){var object;if(null===prototype)object=createEmpty();else{if("object"!=typeof prototype)throw new TypeError("typeof prototype["+typeof prototype+"] != \'object\'");var Type=function(){};Type.prototype=prototype,object=new Type,object.__proto__=prototype}return void 0!==properties&&Object.defineProperties(object,properties),object}}if(Object.defineProperty){var definePropertyWorksOnObject=doesDefinePropertyWork({}),definePropertyWorksOnDom="undefined"==typeof document||doesDefinePropertyWork(document.createElement("div"));if(!definePropertyWorksOnObject||!definePropertyWorksOnDom)var definePropertyFallback=Object.defineProperty}if(!Object.defineProperty||definePropertyFallback){var ERR_NON_OBJECT_DESCRIPTOR="Property description must be an object: ",ERR_NON_OBJECT_TARGET="Object.defineProperty called on non-object: ",ERR_ACCESSORS_NOT_SUPPORTED="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(object,property,descriptor){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT_TARGET+object);if("object"!=typeof descriptor&&"function"!=typeof descriptor||null===descriptor)throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR+descriptor);if(definePropertyFallback)try{return definePropertyFallback.call(Object,object,property,descriptor)}catch(exception){}if(owns(descriptor,"value"))if(supportsAccessors&&(lookupGetter(object,property)||lookupSetter(object,property))){var prototype=object.__proto__;object.__proto__=prototypeOfObject,delete object[property],object[property]=descriptor.value,object.__proto__=prototype}else object[property]=descriptor.value;else{if(!supportsAccessors)throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);owns(descriptor,"get")&&defineGetter(object,property,descriptor.get),owns(descriptor,"set")&&defineSetter(object,property,descriptor.set)}return object}}Object.defineProperties||(Object.defineProperties=function(object,properties){for(var property in properties)owns(properties,property)&&Object.defineProperty(object,property,properties[property]);return object}),Object.seal||(Object.seal=function(object){return object}),Object.freeze||(Object.freeze=function(object){return object});try{Object.freeze(function(){})}catch(exception){Object.freeze=function(freezeObject){return function(object){return"function"==typeof object?object:freezeObject(object)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(object){return object}),Object.isSealed||(Object.isSealed=function(){return!1}),Object.isFrozen||(Object.isFrozen=function(){return!1}),Object.isExtensible||(Object.isExtensible=function(object){if(Object(object)===object)throw new TypeError;for(var name="";owns(object,name);)name+="?";object[name]=!0;var returnValue=owns(object,name);return delete object[name],returnValue}),!Object.keys){var hasDontEnumBug=!0,dontEnums=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],dontEnumsLength=dontEnums.length;for(var key in{toString:null})hasDontEnumBug=!1;Object.keys=function(object){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError("Object.keys called on a non-object");var keys=[];for(var name in object)owns(object,name)&&keys.push(name);if(hasDontEnumBug)for(var i=0,ii=dontEnumsLength;ii>i;i++){var dontEnum=dontEnums[i];owns(object,dontEnum)&&keys.push(dontEnum)}return keys}}Date.now||(Date.now=function(){return(new Date).getTime()});var ws="\t\\n\v\\f\\r   ᠎              \\u2028\\u2029\ufeff";if(!String.prototype.trim||ws.trim()){ws="["+ws+"]";var trimBeginRegexp=RegExp("^"+ws+ws+"*"),trimEndRegexp=RegExp(ws+ws+"*$");String.prototype.trim=function(){return(this+"").replace(trimBeginRegexp,"").replace(trimEndRegexp,"")}}var toObject=function(o){if(null==o)throw new TypeError("can\'t convert "+o+" to object");return Object(o)}});'},function(e,t){ace.define("ace/ext/searchbox",["require","exports","module","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/keyboard/hash_handler","ace/lib/keys"],function(e,t,i){"use strict";var n=e("../lib/dom"),r=e("../lib/lang"),o=e("../lib/event"),s=e("../keyboard/hash_handler").HashHandler,a=e("../lib/keys");n.importCssString("\t.ace_search {\tbackground-color: #ddd;\tborder: 1px solid #cbcbcb;\tborder-top: 0 none;\tmax-width: 325px;\toverflow: hidden;\tmargin: 0;\tpadding: 4px;\tpadding-right: 6px;\tpadding-bottom: 0;\tposition: absolute;\ttop: 0px;\tz-index: 99;\twhite-space: normal;\t}\t.ace_search.left {\tborder-left: 0 none;\tborder-radius: 0px 0px 5px 0px;\tleft: 0;\t}\t.ace_search.right {\tborder-radius: 0px 0px 0px 5px;\tborder-right: 0 none;\tright: 0;\t}\t.ace_search_form, .ace_replace_form {\tborder-radius: 3px;\tborder: 1px solid #cbcbcb;\tfloat: left;\tmargin-bottom: 4px;\toverflow: hidden;\t}\t.ace_search_form.ace_nomatch {\toutline: 1px solid red;\t}\t.ace_search_field {\tbackground-color: white;\tborder-right: 1px solid #cbcbcb;\tborder: 0 none;\t-webkit-box-sizing: border-box;\t-moz-box-sizing: border-box;\tbox-sizing: border-box;\tfloat: left;\theight: 22px;\toutline: 0;\tpadding: 0 7px;\twidth: 214px;\tmargin: 0;\t}\t.ace_searchbtn,\t.ace_replacebtn {\tbackground: #fff;\tborder: 0 none;\tborder-left: 1px solid #dcdcdc;\tcursor: pointer;\tfloat: left;\theight: 22px;\tmargin: 0;\tposition: relative;\t}\t.ace_searchbtn:last-child,\t.ace_replacebtn:last-child {\tborder-top-right-radius: 3px;\tborder-bottom-right-radius: 3px;\t}\t.ace_searchbtn:disabled {\tbackground: none;\tcursor: default;\t}\t.ace_searchbtn {\tbackground-position: 50% 50%;\tbackground-repeat: no-repeat;\twidth: 27px;\t}\t.ace_searchbtn.prev {\tbackground-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADFJREFUeNpiSU1NZUAC/6E0I0yACYskCpsJiySKIiY0SUZk40FyTEgCjGgKwTRAgAEAQJUIPCE+qfkAAAAASUVORK5CYII=); \t}\t.ace_searchbtn.next {\tbackground-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADRJREFUeNpiTE1NZQCC/0DMyIAKwGJMUAYDEo3M/s+EpvM/mkKwCQxYjIeLMaELoLMBAgwAU7UJObTKsvAAAAAASUVORK5CYII=); \t}\t.ace_searchbtn_close {\tbackground: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAcCAYAAABRVo5BAAAAZ0lEQVR42u2SUQrAMAhDvazn8OjZBilCkYVVxiis8H4CT0VrAJb4WHT3C5xU2a2IQZXJjiQIRMdkEoJ5Q2yMqpfDIo+XY4k6h+YXOyKqTIj5REaxloNAd0xiKmAtsTHqW8sR2W5f7gCu5nWFUpVjZwAAAABJRU5ErkJggg==) no-repeat 50% 0;\tborder-radius: 50%;\tborder: 0 none;\tcolor: #656565;\tcursor: pointer;\tfloat: right;\tfont: 16px/16px Arial;\theight: 14px;\tmargin: 5px 1px 9px 5px;\tpadding: 0;\ttext-align: center;\twidth: 14px;\t}\t.ace_searchbtn_close:hover {\tbackground-color: #656565;\tbackground-position: 50% 100%;\tcolor: white;\t}\t.ace_replacebtn.prev {\twidth: 54px\t}\t.ace_replacebtn.next {\twidth: 27px\t}\t.ace_button {\tmargin-left: 2px;\tcursor: pointer;\t-webkit-user-select: none;\t-moz-user-select: none;\t-o-user-select: none;\t-ms-user-select: none;\tuser-select: none;\toverflow: hidden;\topacity: 0.7;\tborder: 1px solid rgba(100,100,100,0.23);\tpadding: 1px;\t-moz-box-sizing: border-box;\tbox-sizing: border-box;\tcolor: black;\t}\t.ace_button:hover {\tbackground-color: #eee;\topacity:1;\t}\t.ace_button:active {\tbackground-color: #ddd;\t}\t.ace_button.checked {\tborder-color: #3399ff;\topacity:1;\t}\t.ace_search_options{\tmargin-bottom: 3px;\ttext-align: right;\t-webkit-user-select: none;\t-moz-user-select: none;\t-o-user-select: none;\t-ms-user-select: none;\tuser-select: none;\t}","ace_searchbox");var l='<div class="ace_search right">\t <button type="button" action="hide" class="ace_searchbtn_close"></button>\t <div class="ace_search_form">\t <input class="ace_search_field" placeholder="Search for" spellcheck="false"></input>\t <button type="button" action="findNext" class="ace_searchbtn next"></button>\t <button type="button" action="findPrev" class="ace_searchbtn prev"></button>\t <button type="button" action="findAll" class="ace_searchbtn" title="Alt-Enter">All</button>\t </div>\t <div class="ace_replace_form">\t <input class="ace_search_field" placeholder="Replace with" spellcheck="false"></input>\t <button type="button" action="replaceAndFindNext" class="ace_replacebtn">Replace</button>\t <button type="button" action="replaceAll" class="ace_replacebtn">All</button>\t </div>\t <div class="ace_search_options">\t <span action="toggleRegexpMode" class="ace_button" title="RegExp Search">.*</span>\t <span action="toggleCaseSensitive" class="ace_button" title="CaseSensitive Search">Aa</span>\t <span action="toggleWholeWords" class="ace_button" title="Whole Word Search">\\b</span>\t </div>\t</div>'.replace(/>\s+/g,">"),c=function(e,t,i){var r=n.createElement("div");r.innerHTML=l,this.element=r.firstChild,this.$init(),this.setEditor(e)};(function(){this.setEditor=function(e){e.searchBox=this,e.container.appendChild(this.element),this.editor=e},this.$initElements=function(e){this.searchBox=e.querySelector(".ace_search_form"),this.replaceBox=e.querySelector(".ace_replace_form"),this.searchOptions=e.querySelector(".ace_search_options"),this.regExpOption=e.querySelector("[action=toggleRegexpMode]"),this.caseSensitiveOption=e.querySelector("[action=toggleCaseSensitive]"),this.wholeWordOption=e.querySelector("[action=toggleWholeWords]"),this.searchInput=this.searchBox.querySelector(".ace_search_field"),this.replaceInput=this.replaceBox.querySelector(".ace_search_field")},this.$init=function(){var e=this.element;this.$initElements(e);var t=this;o.addListener(e,"mousedown",function(e){setTimeout(function(){t.activeInput.focus()},0),o.stopPropagation(e)}),o.addListener(e,"click",function(e){var i=(e.target||e.srcElement).getAttribute("action");i&&t[i]?t[i]():t.$searchBarKb.commands[i]&&t.$searchBarKb.commands[i].exec(t),o.stopPropagation(e)}),o.addCommandKeyListener(e,function(e,i,n){var r=a.keyCodeToString(n),s=t.$searchBarKb.findKeyCommand(i,r);s&&s.exec&&(s.exec(t),o.stopEvent(e))}),this.$onChange=r.delayedCall(function(){t.find(!1,!1)}),o.addListener(this.searchInput,"input",function(){t.$onChange.schedule(20)}),o.addListener(this.searchInput,"focus",function(){t.activeInput=t.searchInput,t.searchInput.value&&t.highlight()}),o.addListener(this.replaceInput,"focus",function(){t.activeInput=t.replaceInput,t.searchInput.value&&t.highlight()})},this.$closeSearchBarKb=new s([{bindKey:"Esc",name:"closeSearchBar",exec:function(e){e.searchBox.hide()}}]),this.$searchBarKb=new s,this.$searchBarKb.bindKeys({"Ctrl-f|Command-f":function(e){var t=e.isReplace=!e.isReplace;e.replaceBox.style.display=t?"":"none",e.searchInput.focus()},"Ctrl-H|Command-Option-F":function(e){e.replaceBox.style.display="",e.replaceInput.focus()},"Ctrl-G|Command-G":function(e){e.findNext()},"Ctrl-Shift-G|Command-Shift-G":function(e){e.findPrev()},esc:function(e){setTimeout(function(){e.hide()})},Return:function(e){e.activeInput==e.replaceInput&&e.replace(),e.findNext()},"Shift-Return":function(e){e.activeInput==e.replaceInput&&e.replace(),e.findPrev()},"Alt-Return":function(e){e.activeInput==e.replaceInput&&e.replaceAll(),e.findAll()},Tab:function(e){(e.activeInput==e.replaceInput?e.searchInput:e.replaceInput).focus()}}),this.$searchBarKb.addCommands([{name:"toggleRegexpMode",bindKey:{win:"Alt-R|Alt-/",mac:"Ctrl-Alt-R|Ctrl-Alt-/"},exec:function(e){e.regExpOption.checked=!e.regExpOption.checked,e.$syncOptions()}},{name:"toggleCaseSensitive",bindKey:{win:"Alt-C|Alt-I",mac:"Ctrl-Alt-R|Ctrl-Alt-I"},exec:function(e){e.caseSensitiveOption.checked=!e.caseSensitiveOption.checked,e.$syncOptions()}},{name:"toggleWholeWords",bindKey:{win:"Alt-B|Alt-W",mac:"Ctrl-Alt-B|Ctrl-Alt-W"},exec:function(e){e.wholeWordOption.checked=!e.wholeWordOption.checked,e.$syncOptions()}}]),this.$syncOptions=function(){n.setCssClass(this.regExpOption,"checked",this.regExpOption.checked),n.setCssClass(this.wholeWordOption,"checked",this.wholeWordOption.checked),n.setCssClass(this.caseSensitiveOption,"checked",this.caseSensitiveOption.checked),this.find(!1,!1)},this.highlight=function(e){this.editor.session.highlight(e||this.editor.$search.$options.re),this.editor.renderer.updateBackMarkers()},this.find=function(e,t,i){var r=!this.editor.find(this.searchInput.value,{skipCurrent:e,backwards:t,wrap:!0,regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked,preventScroll:i})&&this.searchInput.value;n.setCssClass(this.searchBox,"ace_nomatch",r),this.editor._emit("findSearchBox",{match:!r}),this.highlight()},this.findNext=function(){this.find(!0,!1)},this.findPrev=function(){this.find(!0,!0)},this.findAll=function(){var e=!this.editor.findAll(this.searchInput.value,{regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked})&&this.searchInput.value;n.setCssClass(this.searchBox,"ace_nomatch",e),this.editor._emit("findSearchBox",{match:!e}),this.highlight(),this.hide()},this.replace=function(){this.editor.getReadOnly()||this.editor.replace(this.replaceInput.value)},this.replaceAndFindNext=function(){this.editor.getReadOnly()||(this.editor.replace(this.replaceInput.value),this.findNext())},this.replaceAll=function(){this.editor.getReadOnly()||this.editor.replaceAll(this.replaceInput.value)},this.hide=function(){this.element.style.display="none",this.editor.keyBinding.removeKeyboardHandler(this.$closeSearchBarKb),this.editor.focus()},this.show=function(e,t){this.element.style.display="",this.replaceBox.style.display=t?"":"none",this.isReplace=t,e&&(this.searchInput.value=e),this.find(!1,!1,!0),this.searchInput.focus(),this.searchInput.select(),this.editor.keyBinding.addKeyboardHandler(this.$closeSearchBarKb)},this.isFocused=function(){var e=document.activeElement;return e==this.searchInput||e==this.replaceInput}}).call(c.prototype),t.SearchBox=c,t.Search=function(e,t){(e.searchBox||new c(e)).show(e.session.getTextRange(),t)}}),ace.acequire(["ace/ext/searchbox"],function(){})},function(e,t){ace.define("ace/theme/jsoneditor",["require","exports","module","ace/lib/dom"],function(e,t,i){t.isDark=!1,t.cssClass="ace-jsoneditor",t.cssText='.ace-jsoneditor .ace_gutter {\tbackground: #ebebeb;\tcolor: #333\t}\t\t.ace-jsoneditor.ace_editor {\tfont-family: droid sans mono, consolas, monospace, courier new, courier, sans-serif;\tline-height: 1.3;\t}\t.ace-jsoneditor .ace_print-margin {\twidth: 1px;\tbackground: #e8e8e8\t}\t.ace-jsoneditor .ace_scroller {\tbackground-color: #FFFFFF\t}\t.ace-jsoneditor .ace_text-layer {\tcolor: gray\t}\t.ace-jsoneditor .ace_variable {\tcolor: #1a1a1a\t}\t.ace-jsoneditor .ace_cursor {\tborder-left: 2px solid #000000\t}\t.ace-jsoneditor .ace_overwrite-cursors .ace_cursor {\tborder-left: 0px;\tborder-bottom: 1px solid #000000\t}\t.ace-jsoneditor .ace_marker-layer .ace_selection {\tbackground: lightgray\t}\t.ace-jsoneditor.ace_multiselect .ace_selection.ace_start {\tbox-shadow: 0 0 3px 0px #FFFFFF;\tborder-radius: 2px\t}\t.ace-jsoneditor .ace_marker-layer .ace_step {\tbackground: rgb(255, 255, 0)\t}\t.ace-jsoneditor .ace_marker-layer .ace_bracket {\tmargin: -1px 0 0 -1px;\tborder: 1px solid #BFBFBF\t}\t.ace-jsoneditor .ace_marker-layer .ace_active-line {\tbackground: #FFFBD1\t}\t.ace-jsoneditor .ace_gutter-active-line {\tbackground-color : #dcdcdc\t}\t.ace-jsoneditor .ace_marker-layer .ace_selected-word {\tborder: 1px solid lightgray\t}\t.ace-jsoneditor .ace_invisible {\tcolor: #BFBFBF\t}\t.ace-jsoneditor .ace_keyword,\t.ace-jsoneditor .ace_meta,\t.ace-jsoneditor .ace_support.ace_constant.ace_property-value {\tcolor: #AF956F\t}\t.ace-jsoneditor .ace_keyword.ace_operator {\tcolor: #484848\t}\t.ace-jsoneditor .ace_keyword.ace_other.ace_unit {\tcolor: #96DC5F\t}\t.ace-jsoneditor .ace_constant.ace_language {\tcolor: darkorange\t}\t.ace-jsoneditor .ace_constant.ace_numeric {\tcolor: red\t}\t.ace-jsoneditor .ace_constant.ace_character.ace_entity {\tcolor: #BF78CC\t}\t.ace-jsoneditor .ace_invalid {\tcolor: #FFFFFF;\tbackground-color: #FF002A;\t}\t.ace-jsoneditor .ace_fold {\tbackground-color: #AF956F;\tborder-color: #000000\t}\t.ace-jsoneditor .ace_storage,\t.ace-jsoneditor .ace_support.ace_class,\t.ace-jsoneditor .ace_support.ace_function,\t.ace-jsoneditor .ace_support.ace_other,\t.ace-jsoneditor .ace_support.ace_type {\tcolor: #C52727\t}\t.ace-jsoneditor .ace_string {\tcolor: green\t}\t.ace-jsoneditor .ace_comment {\tcolor: #BCC8BA\t}\t.ace-jsoneditor .ace_entity.ace_name.ace_tag,\t.ace-jsoneditor .ace_entity.ace_other.ace_attribute-name {\tcolor: #606060\t}\t.ace-jsoneditor .ace_markup.ace_underline {\ttext-decoration: underline\t}\t.ace-jsoneditor .ace_indent-guide {\tbackground: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y\t}',e("../lib/dom").importCssString(t.cssText,t.cssClass)})}])})},LD0F:function(e,t,i){"use strict";var n=i("copg"),r=i("fCtq"),o=i("MhL/"),s=i("QGqC"),a=i("W6+j"),l=i("+GGc"),c=i("/fmy"),h=i("rMDH");r(r.S+r.F*!i("FwU0")(function(e){Array.from(e)}),"Array",{from:function(e){var t,i,r,u,d=o(e),f="function"==typeof this?this:Array,p=arguments.length,m=p>1?arguments[1]:void 0,g=void 0!==m,v=0,y=h(d);if(g&&(m=n(m,p>2?arguments[2]:void 0,2)),void 0==y||f==Array&&a(y))for(i=new f(t=l(d.length));t>v;v++)c(i,v,g?m(d[v],v):d[v]);else for(u=y.call(d),i=new f;!(r=u.next()).done;v++)c(i,v,g?s(u,m,[r.value,v],!0):r.value);return i.length=v,i}})},LGhb:function(e,t,i){e.exports={default:i("z/Td"),__esModule:!0}},atyl:function(e,t,i){"use strict";i("3WK3");var n=i("Cofy"),r=i.n(n),o={props:{value:[String,Number,Object,Array],showBtns:[Boolean],expandedOnStart:{type:Boolean,default:!1},mode:{type:String,default:"tree"},modes:{type:Array,default:function(){return["tree","code","form","text","view"]}},lang:{type:String,default:"en"}},watch:{value:{immediate:!0,async handler(e){this.internalChange||(await this.setEditor(e),this.error=!1,this.expandAll())},deep:!0}},data(){return{editor:null,error:!1,json:this.value,internalChange:!1,expandedModes:["tree","view","form"],locale:{it:{save:"SALVA"},en:{save:"SAVE"},zh:{save:"保存"}}}},mounted(){let e=this,t={mode:this.mode,modes:this.modes,onChange(){try{let t=e.editor.get();e.json=t,e.error=!1,e.$emit("json-change",t),e.internalChange=!0,e.$emit("input",t),e.$nextTick(function(){e.internalChange=!1})}catch(t){e.error=!0,e.$emit("has-error",t)}},onModeChange(){e.expandAll()}};this.editor=new r.a(this.$el.querySelector(".jsoneditor-vue"),t,this.json)},methods:{expandAll(){this.expandedOnStart&&this.expandedModes.includes(this.editor.getMode())&&this.editor.expandAll()},onSave(){this.$emit("json-save",this.json)},async setEditor(e){this.editor&&this.editor.set(e)}}},s=(i("mGGr"),i("ZrdR")),a=Object(s.a)(o,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"jsoneditor-vue"}),e._v(" "),!1!==e.showBtns?i("div",{staticClass:"jsoneditor-btns"},[i("button",{staticClass:"json-save-btn",attrs:{type:"button",disabled:e.error},on:{click:function(t){return e.onSave()}}},[e._v(e._s(e.locale[e.lang].save))])]):e._e()])},[],!1,null,"6a8ba07e",null);a.options.__file="vue-json-editor.vue";t.a=a.exports},mGGr:function(e,t,i){"use strict";var n=i("nqXe");i.n(n).a},nqXe:function(e,t,i){},oMrk:function(e,t,i){},"opU+":function(e,t,i){!function(e){"use strict";e.defineMode("javascript",function(t,i){var n,r,o=t.indentUnit,s=i.statementIndent,a=i.jsonld,l=i.json||a,c=!1!==i.trackScope,h=i.typescript,u=i.wordCharacters||/[\w$\xa1-\uffff]/,d=function(){function e(e){return{type:e,style:"keyword"}}var t=e("keyword a"),i=e("keyword b"),n=e("keyword c"),r=e("keyword d"),o=e("operator"),s={type:"atom",style:"atom"};return{if:e("if"),while:t,with:t,else:i,do:i,try:i,finally:i,return:r,break:r,continue:r,new:e("new"),delete:n,void:n,throw:n,debugger:e("debugger"),var:e("var"),const:e("var"),let:e("var"),function:e("function"),catch:e("catch"),for:e("for"),switch:e("switch"),case:e("case"),default:e("default"),in:o,typeof:o,instanceof:o,true:s,false:s,null:s,undefined:s,NaN:s,Infinity:s,this:e("this"),class:e("class"),super:e("atom"),yield:n,export:e("export"),import:e("import"),extends:n,await:n}}(),f=/[+\-*&%=<>!?|~^@]/,p=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function m(e,t,i){return n=e,r=i,t}function g(e,t){var i=e.next();if('"'==i||"'"==i)return t.tokenize=function(e){return function(t,i){var n,r=!1;if(a&&"@"==t.peek()&&t.match(p))return i.tokenize=g,m("jsonld-keyword","meta");for(;null!=(n=t.next())&&(n!=e||r);)r=!r&&"\\"==n;return r||(i.tokenize=g),m("string","string")}}(i),t.tokenize(e,t);if("."==i&&e.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return m("number","number");if("."==i&&e.match(".."))return m("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(i))return m(i);if("="==i&&e.eat(">"))return m("=>","operator");if("0"==i&&e.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return m("number","number");if(/\d/.test(i))return e.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),m("number","number");if("/"==i)return e.eat("*")?(t.tokenize=v,v(e,t)):e.eat("/")?(e.skipToEnd(),m("comment","comment")):Ze(e,t,1)?(function(e){for(var t,i=!1,n=!1;null!=(t=e.next());){if(!i){if("/"==t&&!n)return;"["==t?n=!0:n&&"]"==t&&(n=!1)}i=!i&&"\\"==t}}(e),e.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),m("regexp","string-2")):(e.eat("="),m("operator","operator",e.current()));if("`"==i)return t.tokenize=y,y(e,t);if("#"==i&&"!"==e.peek())return e.skipToEnd(),m("meta","meta");if("#"==i&&e.eatWhile(u))return m("variable","property");if("<"==i&&e.match("!--")||"-"==i&&e.match("->")&&!/\S/.test(e.string.slice(0,e.start)))return e.skipToEnd(),m("comment","comment");if(f.test(i))return">"==i&&t.lexical&&">"==t.lexical.type||(e.eat("=")?"!"!=i&&"="!=i||e.eat("="):/[<>*+\-|&?]/.test(i)&&(e.eat(i),">"==i&&e.eat(i))),"?"==i&&e.eat(".")?m("."):m("operator","operator",e.current());if(u.test(i)){e.eatWhile(u);var n=e.current();if("."!=t.lastType){if(d.propertyIsEnumerable(n)){var r=d[n];return m(r.type,r.style,n)}if("async"==n&&e.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return m("async","keyword",n)}return m("variable","variable",n)}}function v(e,t){for(var i,n=!1;i=e.next();){if("/"==i&&n){t.tokenize=g;break}n="*"==i}return m("comment","comment")}function y(e,t){for(var i,n=!1;null!=(i=e.next());){if(!n&&("`"==i||"$"==i&&e.eat("{"))){t.tokenize=g;break}n=!n&&"\\"==i}return m("quasi","string-2",e.current())}var w="([{}])";function b(e,t){t.fatArrowAt&&(t.fatArrowAt=null);var i=e.string.indexOf("=>",e.start);if(!(i<0)){if(h){var n=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(e.string.slice(e.start,i));n&&(i=n.index)}for(var r=0,o=!1,s=i-1;s>=0;--s){var a=e.string.charAt(s),l=w.indexOf(a);if(l>=0&&l<3){if(!r){++s;break}if(0==--r){"("==a&&(o=!0);break}}else if(l>=3&&l<6)++r;else if(u.test(a))o=!0;else if(/["'\/`]/.test(a))for(;;--s){if(0==s)return;var c=e.string.charAt(s-1);if(c==a&&"\\"!=e.string.charAt(s-2)){s--;break}}else if(o&&!r){++s;break}}o&&!r&&(t.fatArrowAt=s)}}var C={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function A(e,t,i,n,r,o){this.indented=e,this.column=t,this.type=i,this.prev=r,this.info=o,null!=n&&(this.align=n)}function E(e,t){if(!c)return!1;for(var i=e.localVars;i;i=i.next)if(i.name==t)return!0;for(var n=e.context;n;n=n.prev)for(var i=n.vars;i;i=i.next)if(i.name==t)return!0}function x(e,t,i,n,r){var o=e.cc;for(F.state=e,F.stream=r,F.marked=null,F.cc=o,F.style=t,e.lexical.hasOwnProperty("align")||(e.lexical.align=!0);;){var s=o.length?o.pop():l?H:j;if(s(i,n)){for(;o.length&&o[o.length-1].lex;)o.pop()();return F.marked?F.marked:"variable"==i&&E(e,n)?"variable-2":t}}}var F={state:null,column:null,marked:null,cc:null};function S(){for(var e=arguments.length-1;e>=0;e--)F.cc.push(arguments[e])}function k(){return S.apply(null,arguments),!0}function _(e,t){for(var i=t;i;i=i.next)if(i.name==e)return!0;return!1}function D(e){var t=F.state;if(F.marked="def",c){if(t.context)if("var"==t.lexical.info&&t.context&&t.context.block){var n=function e(t,i){if(i){if(i.block){var n=e(t,i.prev);return n?n==i.prev?i:new L(n,i.vars,!0):null}return _(t,i.vars)?i:new L(i.prev,new B(t,i.vars),!1)}return null}(e,t.context);if(null!=n)return void(t.context=n)}else if(!_(e,t.localVars))return void(t.localVars=new B(e,t.localVars));i.globalVars&&!_(e,t.globalVars)&&(t.globalVars=new B(e,t.globalVars))}}function $(e){return"public"==e||"private"==e||"protected"==e||"abstract"==e||"readonly"==e}function L(e,t,i){this.prev=e,this.vars=t,this.block=i}function B(e,t){this.name=e,this.next=t}var R=new B("this",new B("arguments",null));function T(){F.state.context=new L(F.state.context,F.state.localVars,!1),F.state.localVars=R}function M(){F.state.context=new L(F.state.context,F.state.localVars,!0),F.state.localVars=null}function O(){F.state.localVars=F.state.context.vars,F.state.context=F.state.context.prev}function P(e,t){var i=function(){var i=F.state,n=i.indented;if("stat"==i.lexical.type)n=i.lexical.indented;else for(var r=i.lexical;r&&")"==r.type&&r.align;r=r.prev)n=r.indented;i.lexical=new A(n,F.stream.column(),e,null,i.lexical,t)};return i.lex=!0,i}function N(){var e=F.state;e.lexical.prev&&(")"==e.lexical.type&&(e.indented=e.lexical.indented),e.lexical=e.lexical.prev)}function I(e){return function t(i){return i==e?k():";"==e||"}"==i||")"==i||"]"==i?S():k(t)}}function j(e,t){return"var"==e?k(P("vardef",t),xe,I(";"),N):"keyword a"==e?k(P("form"),V,j,N):"keyword b"==e?k(P("form"),j,N):"keyword d"==e?F.stream.match(/^\s*$/,!1)?k():k(P("stat"),q,I(";"),N):"debugger"==e?k(I(";")):"{"==e?k(P("}"),M,le,N,O):";"==e?k():"if"==e?("else"==F.state.lexical.info&&F.state.cc[F.state.cc.length-1]==N&&F.state.cc.pop()(),k(P("form"),V,j,N,$e)):"function"==e?k(Te):"for"==e?k(P("form"),M,Le,j,O,N):"class"==e||h&&"interface"==t?(F.marked="keyword",k(P("form","class"==e?e:t),Ie,N)):"variable"==e?h&&"declare"==t?(F.marked="keyword",k(j)):h&&("module"==t||"enum"==t||"type"==t)&&F.stream.match(/^\s*\w/,!1)?(F.marked="keyword","enum"==t?k(Xe):"type"==t?k(Oe,I("operator"),fe,I(";")):k(P("form"),Fe,I("{"),P("}"),le,N,N)):h&&"namespace"==t?(F.marked="keyword",k(P("form"),H,j,N)):h&&"abstract"==t?(F.marked="keyword",k(j)):k(P("stat"),te):"switch"==e?k(P("form"),V,I("{"),P("}","switch"),M,le,N,N,O):"case"==e?k(H,I(":")):"default"==e?k(I(":")):"catch"==e?k(P("form"),T,W,j,N,O):"export"==e?k(P("stat"),ze,N):"import"==e?k(P("stat"),Ue,N):"async"==e?k(j):"@"==t?k(H,j):S(P("stat"),H,I(";"),N)}function W(e){if("("==e)return k(Pe,I(")"))}function H(e,t){return U(e,t,!1)}function z(e,t){return U(e,t,!0)}function V(e){return"("!=e?S():k(P(")"),q,I(")"),N)}function U(e,t,i){if(F.state.fatArrowAt==F.stream.start){var n=i?J:X;if("("==e)return k(T,P(")"),se(Pe,")"),N,I("=>"),n,O);if("variable"==e)return S(T,Fe,I("=>"),n,O)}var r=i?G:K;return C.hasOwnProperty(e)?k(r):"function"==e?k(Te,r):"class"==e||h&&"interface"==t?(F.marked="keyword",k(P("form"),Ne,N)):"keyword c"==e||"async"==e?k(i?z:H):"("==e?k(P(")"),q,I(")"),N,r):"operator"==e||"spread"==e?k(i?z:H):"["==e?k(P("]"),Qe,N,r):"{"==e?ae(ne,"}",null,r):"quasi"==e?S(Y,r):"new"==e?k(function(e){return function(t){return"."==t?k(e?ee:Z):"variable"==t&&h?k(Ce,e?G:K):S(e?z:H)}}(i)):k()}function q(e){return e.match(/[;\}\)\],]/)?S():S(H)}function K(e,t){return","==e?k(q):G(e,t,!1)}function G(e,t,i){var n=0==i?K:G,r=0==i?H:z;return"=>"==e?k(T,i?J:X,O):"operator"==e?/\+\+|--/.test(t)||h&&"!"==t?k(n):h&&"<"==t&&F.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?k(P(">"),se(fe,">"),N,n):"?"==t?k(H,I(":"),r):k(r):"quasi"==e?S(Y,n):";"!=e?"("==e?ae(z,")","call",n):"."==e?k(ie,n):"["==e?k(P("]"),q,I("]"),N,n):h&&"as"==t?(F.marked="keyword",k(fe,n)):"regexp"==e?(F.state.lastType=F.marked="operator",F.stream.backUp(F.stream.pos-F.stream.start-1),k(r)):void 0:void 0}function Y(e,t){return"quasi"!=e?S():"${"!=t.slice(t.length-2)?k(Y):k(q,Q)}function Q(e){if("}"==e)return F.marked="string-2",F.state.tokenize=y,k(Y)}function X(e){return b(F.stream,F.state),S("{"==e?j:H)}function J(e){return b(F.stream,F.state),S("{"==e?j:z)}function Z(e,t){if("target"==t)return F.marked="keyword",k(K)}function ee(e,t){if("target"==t)return F.marked="keyword",k(G)}function te(e){return":"==e?k(N,j):S(K,I(";"),N)}function ie(e){if("variable"==e)return F.marked="property",k()}function ne(e,t){if("async"==e)return F.marked="property",k(ne);if("variable"==e||"keyword"==F.style){return F.marked="property","get"==t||"set"==t?k(re):(h&&F.state.fatArrowAt==F.stream.start&&(i=F.stream.match(/^\s*:\s*/,!1))&&(F.state.fatArrowAt=F.stream.pos+i[0].length),k(oe));var i}else{if("number"==e||"string"==e)return F.marked=a?"property":F.style+" property",k(oe);if("jsonld-keyword"==e)return k(oe);if(h&&$(t))return F.marked="keyword",k(ne);if("["==e)return k(H,ce,I("]"),oe);if("spread"==e)return k(z,oe);if("*"==t)return F.marked="keyword",k(ne);if(":"==e)return S(oe)}}function re(e){return"variable"!=e?S(oe):(F.marked="property",k(Te))}function oe(e){return":"==e?k(z):"("==e?S(Te):void 0}function se(e,t,i){function n(r,o){if(i?i.indexOf(r)>-1:","==r){var s=F.state.lexical;return"call"==s.info&&(s.pos=(s.pos||0)+1),k(function(i,n){return i==t||n==t?S():S(e)},n)}return r==t||o==t?k():i&&i.indexOf(";")>-1?S(e):k(I(t))}return function(i,r){return i==t||r==t?k():S(e,n)}}function ae(e,t,i){for(var n=3;n<arguments.length;n++)F.cc.push(arguments[n]);return k(P(t,i),se(e,t),N)}function le(e){return"}"==e?k():S(j,le)}function ce(e,t){if(h){if(":"==e)return k(fe);if("?"==t)return k(ce)}}function he(e,t){if(h&&(":"==e||"in"==t))return k(fe)}function ue(e){if(h&&":"==e)return F.stream.match(/^\s*\w+\s+is\b/,!1)?k(H,de,fe):k(fe)}function de(e,t){if("is"==t)return F.marked="keyword",k()}function fe(e,t){return"keyof"==t||"typeof"==t||"infer"==t||"readonly"==t?(F.marked="keyword",k("typeof"==t?z:fe)):"variable"==e||"void"==t?(F.marked="type",k(be)):"|"==t||"&"==t?k(fe):"string"==e||"number"==e||"atom"==e?k(be):"["==e?k(P("]"),se(fe,"]",","),N,be):"{"==e?k(P("}"),me,N,be):"("==e?k(se(we,")"),pe,be):"<"==e?k(se(fe,">"),fe):"quasi"==e?S(ve,be):void 0}function pe(e){if("=>"==e)return k(fe)}function me(e){return e.match(/[\}\)\]]/)?k():","==e||";"==e?k(me):S(ge,me)}function ge(e,t){return"variable"==e||"keyword"==F.style?(F.marked="property",k(ge)):"?"==t||"number"==e||"string"==e?k(ge):":"==e?k(fe):"["==e?k(I("variable"),he,I("]"),ge):"("==e?S(Me,ge):e.match(/[;\}\)\],]/)?void 0:k()}function ve(e,t){return"quasi"!=e?S():"${"!=t.slice(t.length-2)?k(ve):k(fe,ye)}function ye(e){if("}"==e)return F.marked="string-2",F.state.tokenize=y,k(ve)}function we(e,t){return"variable"==e&&F.stream.match(/^\s*[?:]/,!1)||"?"==t?k(we):":"==e?k(fe):"spread"==e?k(we):S(fe)}function be(e,t){return"<"==t?k(P(">"),se(fe,">"),N,be):"|"==t||"."==e||"&"==t?k(fe):"["==e?k(fe,I("]"),be):"extends"==t||"implements"==t?(F.marked="keyword",k(fe)):"?"==t?k(fe,I(":"),fe):void 0}function Ce(e,t){if("<"==t)return k(P(">"),se(fe,">"),N,be)}function Ae(){return S(fe,Ee)}function Ee(e,t){if("="==t)return k(fe)}function xe(e,t){return"enum"==t?(F.marked="keyword",k(Xe)):S(Fe,ce,_e,De)}function Fe(e,t){return h&&$(t)?(F.marked="keyword",k(Fe)):"variable"==e?(D(t),k()):"spread"==e?k(Fe):"["==e?ae(ke,"]"):"{"==e?ae(Se,"}"):void 0}function Se(e,t){return"variable"!=e||F.stream.match(/^\s*:/,!1)?("variable"==e&&(F.marked="property"),"spread"==e?k(Fe):"}"==e?S():"["==e?k(H,I("]"),I(":"),Se):k(I(":"),Fe,_e)):(D(t),k(_e))}function ke(){return S(Fe,_e)}function _e(e,t){if("="==t)return k(z)}function De(e){if(","==e)return k(xe)}function $e(e,t){if("keyword b"==e&&"else"==t)return k(P("form","else"),j,N)}function Le(e,t){return"await"==t?k(Le):"("==e?k(P(")"),Be,N):void 0}function Be(e){return"var"==e?k(xe,Re):"variable"==e?k(Re):S(Re)}function Re(e,t){return")"==e?k():";"==e?k(Re):"in"==t||"of"==t?(F.marked="keyword",k(H,Re)):S(H,Re)}function Te(e,t){return"*"==t?(F.marked="keyword",k(Te)):"variable"==e?(D(t),k(Te)):"("==e?k(T,P(")"),se(Pe,")"),N,ue,j,O):h&&"<"==t?k(P(">"),se(Ae,">"),N,Te):void 0}function Me(e,t){return"*"==t?(F.marked="keyword",k(Me)):"variable"==e?(D(t),k(Me)):"("==e?k(T,P(")"),se(Pe,")"),N,ue,O):h&&"<"==t?k(P(">"),se(Ae,">"),N,Me):void 0}function Oe(e,t){return"keyword"==e||"variable"==e?(F.marked="type",k(Oe)):"<"==t?k(P(">"),se(Ae,">"),N):void 0}function Pe(e,t){return"@"==t&&k(H,Pe),"spread"==e?k(Pe):h&&$(t)?(F.marked="keyword",k(Pe)):h&&"this"==e?k(ce,_e):S(Fe,ce,_e)}function Ne(e,t){return"variable"==e?Ie(e,t):je(e,t)}function Ie(e,t){if("variable"==e)return D(t),k(je)}function je(e,t){return"<"==t?k(P(">"),se(Ae,">"),N,je):"extends"==t||"implements"==t||h&&","==e?("implements"==t&&(F.marked="keyword"),k(h?fe:H,je)):"{"==e?k(P("}"),We,N):void 0}function We(e,t){return"async"==e||"variable"==e&&("static"==t||"get"==t||"set"==t||h&&$(t))&&F.stream.match(/^\s+[\w$\xa1-\uffff]/,!1)?(F.marked="keyword",k(We)):"variable"==e||"keyword"==F.style?(F.marked="property",k(He,We)):"number"==e||"string"==e?k(He,We):"["==e?k(H,ce,I("]"),He,We):"*"==t?(F.marked="keyword",k(We)):h&&"("==e?S(Me,We):";"==e||","==e?k(We):"}"==e?k():"@"==t?k(H,We):void 0}function He(e,t){if("!"==t)return k(He);if("?"==t)return k(He);if(":"==e)return k(fe,_e);if("="==t)return k(z);var i=F.state.lexical.prev,n=i&&"interface"==i.info;return S(n?Me:Te)}function ze(e,t){return"*"==t?(F.marked="keyword",k(Ye,I(";"))):"default"==t?(F.marked="keyword",k(H,I(";"))):"{"==e?k(se(Ve,"}"),Ye,I(";")):S(j)}function Ve(e,t){return"as"==t?(F.marked="keyword",k(I("variable"))):"variable"==e?S(z,Ve):void 0}function Ue(e){return"string"==e?k():"("==e?S(H):"."==e?S(K):S(qe,Ke,Ye)}function qe(e,t){return"{"==e?ae(qe,"}"):("variable"==e&&D(t),"*"==t&&(F.marked="keyword"),k(Ge))}function Ke(e){if(","==e)return k(qe,Ke)}function Ge(e,t){if("as"==t)return F.marked="keyword",k(qe)}function Ye(e,t){if("from"==t)return F.marked="keyword",k(H)}function Qe(e){return"]"==e?k():S(se(z,"]"))}function Xe(){return S(P("form"),Fe,I("{"),P("}"),se(Je,"}"),N,N)}function Je(){return S(Fe,_e)}function Ze(e,t,i){return t.tokenize==g&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(t.lastType)||"quasi"==t.lastType&&/\{\s*$/.test(e.string.slice(0,e.pos-(i||0)))}return T.lex=M.lex=!0,O.lex=!0,N.lex=!0,{startState:function(e){var t={tokenize:g,lastType:"sof",cc:[],lexical:new A((e||0)-o,0,"block",!1),localVars:i.localVars,context:i.localVars&&new L(null,null,!1),indented:e||0};return i.globalVars&&"object"==typeof i.globalVars&&(t.globalVars=i.globalVars),t},token:function(e,t){if(e.sol()&&(t.lexical.hasOwnProperty("align")||(t.lexical.align=!1),t.indented=e.indentation(),b(e,t)),t.tokenize!=v&&e.eatSpace())return null;var i=t.tokenize(e,t);return"comment"==n?i:(t.lastType="operator"!=n||"++"!=r&&"--"!=r?n:"incdec",x(t,i,n,r,e))},indent:function(t,n){if(t.tokenize==v||t.tokenize==y)return e.Pass;if(t.tokenize!=g)return 0;var r,a=n&&n.charAt(0),l=t.lexical;if(!/^\s*else\b/.test(n))for(var c=t.cc.length-1;c>=0;--c){var h=t.cc[c];if(h==N)l=l.prev;else if(h!=$e&&h!=O)break}for(;("stat"==l.type||"form"==l.type)&&("}"==a||(r=t.cc[t.cc.length-1])&&(r==K||r==G)&&!/^[,\.=+\-*:?[\(]/.test(n));)l=l.prev;s&&")"==l.type&&"stat"==l.prev.type&&(l=l.prev);var u=l.type,d=a==u;return"vardef"==u?l.indented+("operator"==t.lastType||","==t.lastType?l.info.length+1:0):"form"==u&&"{"==a?l.indented:"form"==u?l.indented+o:"stat"==u?l.indented+(function(e,t){return"operator"==e.lastType||","==e.lastType||f.test(t.charAt(0))||/[,.]/.test(t.charAt(0))}(t,n)?s||o:0):"switch"!=l.info||d||0==i.doubleIndentSwitch?l.align?l.column+(d?0:1):l.indented+(d?0:o):l.indented+(/^(?:case|default)\b/.test(n)?o:2*o)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:l?null:"/*",blockCommentEnd:l?null:"*/",blockCommentContinue:l?null:" * ",lineComment:l?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:l?"json":"javascript",jsonldMode:a,jsonMode:l,expressionAllowed:Ze,skipExpression:function(t){x(t,"atom","atom","true",new e.StringStream("",2,null))}}}),e.registerHelper("wordChars","javascript",/[\w$]/),e.defineMIME("text/javascript","javascript"),e.defineMIME("text/ecmascript","javascript"),e.defineMIME("application/javascript","javascript"),e.defineMIME("application/x-javascript","javascript"),e.defineMIME("application/ecmascript","javascript"),e.defineMIME("application/json",{name:"javascript",json:!0}),e.defineMIME("application/x-json",{name:"javascript",json:!0}),e.defineMIME("application/manifest+json",{name:"javascript",json:!0}),e.defineMIME("application/ld+json",{name:"javascript",jsonld:!0}),e.defineMIME("text/typescript",{name:"javascript",typescript:!0}),e.defineMIME("application/typescript",{name:"javascript",typescript:!0})}(i("xhvv"))},unDg:function(e,t,i){"use strict";t.__esModule=!0;var n=function(e){return e&&e.__esModule?e:{default:e}}(i("LGhb"));t.default=function(e){if(Array.isArray(e)){for(var t=0,i=Array(e.length);t<e.length;t++)i[t]=e[t];return i}return(0,n.default)(e)}},xhvv:function(e,t,i){e.exports=function(){"use strict";var e=navigator.userAgent,t=navigator.platform,i=/gecko\/\d/i.test(e),n=/MSIE \d/.test(e),r=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(e),o=/Edge\/(\d+)/.exec(e),s=n||r||o,a=s&&(n?document.documentMode||6:+(o||r)[1]),l=!o&&/WebKit\//.test(e),c=l&&/Qt\/\d+\.\d+/.test(e),h=!o&&/Chrome\//.test(e),u=/Opera\//.test(e),d=/Apple Computer/.test(navigator.vendor),f=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(e),p=/PhantomJS/.test(e),m=d&&(/Mobile\/\w+/.test(e)||navigator.maxTouchPoints>2),g=/Android/.test(e),v=m||g||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(e),y=m||/Mac/.test(t),w=/\bCrOS\b/.test(e),b=/win/i.test(t),C=u&&e.match(/Version\/(\d*\.\d*)/);C&&(C=Number(C[1])),C&&C>=15&&(u=!1,l=!0);var A=y&&(c||u&&(null==C||C<12.11)),E=i||s&&a>=9;function x(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var F,S=function(e,t){var i=e.className,n=x(t).exec(i);if(n){var r=i.slice(n.index+n[0].length);e.className=i.slice(0,n.index)+(r?n[1]+r:"")}};function k(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function _(e,t){return k(e).appendChild(t)}function D(e,t,i,n){var r=document.createElement(e);if(i&&(r.className=i),n&&(r.style.cssText=n),"string"==typeof t)r.appendChild(document.createTextNode(t));else if(t)for(var o=0;o<t.length;++o)r.appendChild(t[o]);return r}function $(e,t,i,n){var r=D(e,t,i,n);return r.setAttribute("role","presentation"),r}function L(e,t){if(3==t.nodeType&&(t=t.parentNode),e.contains)return e.contains(t);do{if(11==t.nodeType&&(t=t.host),t==e)return!0}while(t=t.parentNode)}function B(){var e;try{e=document.activeElement}catch(t){e=document.body||null}for(;e&&e.shadowRoot&&e.shadowRoot.activeElement;)e=e.shadowRoot.activeElement;return e}function R(e,t){var i=e.className;x(t).test(i)||(e.className+=(i?" ":"")+t)}function T(e,t){for(var i=e.split(" "),n=0;n<i.length;n++)i[n]&&!x(i[n]).test(t)&&(t+=" "+i[n]);return t}F=document.createRange?function(e,t,i,n){var r=document.createRange();return r.setEnd(n||e,i),r.setStart(e,t),r}:function(e,t,i){var n=document.body.createTextRange();try{n.moveToElementText(e.parentNode)}catch(e){return n}return n.collapse(!0),n.moveEnd("character",i),n.moveStart("character",t),n};var M=function(e){e.select()};function O(e){var t=Array.prototype.slice.call(arguments,1);return function(){return e.apply(null,t)}}function P(e,t,i){for(var n in t||(t={}),e)!e.hasOwnProperty(n)||!1===i&&t.hasOwnProperty(n)||(t[n]=e[n]);return t}function N(e,t,i,n,r){null==t&&-1==(t=e.search(/[^\s\u00a0]/))&&(t=e.length);for(var o=n||0,s=r||0;;){var a=e.indexOf("\t",o);if(a<0||a>=t)return s+(t-o);s+=a-o,s+=i-s%i,o=a+1}}m?M=function(e){e.selectionStart=0,e.selectionEnd=e.value.length}:s&&(M=function(e){try{e.select()}catch(e){}});var I=function(){this.id=null,this.f=null,this.time=0,this.handler=O(this.onTimeout,this)};function j(e,t){for(var i=0;i<e.length;++i)if(e[i]==t)return i;return-1}I.prototype.onTimeout=function(e){e.id=0,e.time<=+new Date?e.f():setTimeout(e.handler,e.time-+new Date)},I.prototype.set=function(e,t){this.f=t;var i=+new Date+e;(!this.id||i<this.time)&&(clearTimeout(this.id),this.id=setTimeout(this.handler,e),this.time=i)};var W=50,H={toString:function(){return"CodeMirror.Pass"}},z={scroll:!1},V={origin:"*mouse"},U={origin:"+move"};function q(e,t,i){for(var n=0,r=0;;){var o=e.indexOf("\t",n);-1==o&&(o=e.length);var s=o-n;if(o==e.length||r+s>=t)return n+Math.min(s,t-r);if(r+=o-n,n=o+1,(r+=i-r%i)>=t)return n}}var K=[""];function G(e){for(;K.length<=e;)K.push(Y(K)+" ");return K[e]}function Y(e){return e[e.length-1]}function Q(e,t){for(var i=[],n=0;n<e.length;n++)i[n]=t(e[n],n);return i}function X(){}function J(e,t){var i;return Object.create?i=Object.create(e):(X.prototype=e,i=new X),t&&P(t,i),i}var Z=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;function ee(e){return/\w/.test(e)||e>"€"&&(e.toUpperCase()!=e.toLowerCase()||Z.test(e))}function te(e,t){return t?!!(t.source.indexOf("\\w")>-1&&ee(e))||t.test(e):ee(e)}function ie(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var ne=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function re(e){return e.charCodeAt(0)>=768&&ne.test(e)}function oe(e,t,i){for(;(i<0?t>0:t<e.length)&&re(e.charAt(t));)t+=i;return t}function se(e,t,i){for(var n=t>i?-1:1;;){if(t==i)return t;var r=(t+i)/2,o=n<0?Math.ceil(r):Math.floor(r);if(o==t)return e(o)?t:i;e(o)?i=o:t=o+n}}var ae=null;function le(e,t,i){var n;ae=null;for(var r=0;r<e.length;++r){var o=e[r];if(o.from<t&&o.to>t)return r;o.to==t&&(o.from!=o.to&&"before"==i?n=r:ae=r),o.from==t&&(o.from!=o.to&&"before"!=i?n=r:ae=r)}return null!=n?n:ae}var ce=function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function i(i){return i<=247?e.charAt(i):1424<=i&&i<=1524?"R":1536<=i&&i<=1785?t.charAt(i-1536):1774<=i&&i<=2220?"r":8192<=i&&i<=8203?"w":8204==i?"b":"L"}var n=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,r=/[stwN]/,o=/[LRr]/,s=/[Lb1n]/,a=/[1n]/;function l(e,t,i){this.level=e,this.from=t,this.to=i}return function(e,t){var c="ltr"==t?"L":"R";if(0==e.length||"ltr"==t&&!n.test(e))return!1;for(var h=e.length,u=[],d=0;d<h;++d)u.push(i(e.charCodeAt(d)));for(var f=0,p=c;f<h;++f){var m=u[f];"m"==m?u[f]=p:p=m}for(var g=0,v=c;g<h;++g){var y=u[g];"1"==y&&"r"==v?u[g]="n":o.test(y)&&(v=y,"r"==y&&(u[g]="R"))}for(var w=1,b=u[0];w<h-1;++w){var C=u[w];"+"==C&&"1"==b&&"1"==u[w+1]?u[w]="1":","!=C||b!=u[w+1]||"1"!=b&&"n"!=b||(u[w]=b),b=C}for(var A=0;A<h;++A){var E=u[A];if(","==E)u[A]="N";else if("%"==E){var x=void 0;for(x=A+1;x<h&&"%"==u[x];++x);for(var F=A&&"!"==u[A-1]||x<h&&"1"==u[x]?"1":"N",S=A;S<x;++S)u[S]=F;A=x-1}}for(var k=0,_=c;k<h;++k){var D=u[k];"L"==_&&"1"==D?u[k]="L":o.test(D)&&(_=D)}for(var $=0;$<h;++$)if(r.test(u[$])){var L=void 0;for(L=$+1;L<h&&r.test(u[L]);++L);for(var B="L"==($?u[$-1]:c),R="L"==(L<h?u[L]:c),T=B==R?B?"L":"R":c,M=$;M<L;++M)u[M]=T;$=L-1}for(var O,P=[],N=0;N<h;)if(s.test(u[N])){var I=N;for(++N;N<h&&s.test(u[N]);++N);P.push(new l(0,I,N))}else{var j=N,W=P.length,H="rtl"==t?1:0;for(++N;N<h&&"L"!=u[N];++N);for(var z=j;z<N;)if(a.test(u[z])){j<z&&(P.splice(W,0,new l(1,j,z)),W+=H);var V=z;for(++z;z<N&&a.test(u[z]);++z);P.splice(W,0,new l(2,V,z)),W+=H,j=z}else++z;j<N&&P.splice(W,0,new l(1,j,N))}return"ltr"==t&&(1==P[0].level&&(O=e.match(/^\s+/))&&(P[0].from=O[0].length,P.unshift(new l(0,0,O[0].length))),1==Y(P).level&&(O=e.match(/\s+$/))&&(Y(P).to-=O[0].length,P.push(new l(0,h-O[0].length,h)))),"rtl"==t?P.reverse():P}}();function he(e,t){var i=e.order;return null==i&&(i=e.order=ce(e.text,t)),i}var ue=[],de=function(e,t,i){if(e.addEventListener)e.addEventListener(t,i,!1);else if(e.attachEvent)e.attachEvent("on"+t,i);else{var n=e._handlers||(e._handlers={});n[t]=(n[t]||ue).concat(i)}};function fe(e,t){return e._handlers&&e._handlers[t]||ue}function pe(e,t,i){if(e.removeEventListener)e.removeEventListener(t,i,!1);else if(e.detachEvent)e.detachEvent("on"+t,i);else{var n=e._handlers,r=n&&n[t];if(r){var o=j(r,i);o>-1&&(n[t]=r.slice(0,o).concat(r.slice(o+1)))}}}function me(e,t){var i=fe(e,t);if(i.length)for(var n=Array.prototype.slice.call(arguments,2),r=0;r<i.length;++r)i[r].apply(null,n)}function ge(e,t,i){return"string"==typeof t&&(t={type:t,preventDefault:function(){this.defaultPrevented=!0}}),me(e,i||t.type,e,t),Ae(t)||t.codemirrorIgnore}function ve(e){var t=e._handlers&&e._handlers.cursorActivity;if(t)for(var i=e.curOp.cursorActivityHandlers||(e.curOp.cursorActivityHandlers=[]),n=0;n<t.length;++n)-1==j(i,t[n])&&i.push(t[n])}function ye(e,t){return fe(e,t).length>0}function we(e){e.prototype.on=function(e,t){de(this,e,t)},e.prototype.off=function(e,t){pe(this,e,t)}}function be(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function Ce(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function Ae(e){return null!=e.defaultPrevented?e.defaultPrevented:0==e.returnValue}function Ee(e){be(e),Ce(e)}function xe(e){return e.target||e.srcElement}function Fe(e){var t=e.which;return null==t&&(1&e.button?t=1:2&e.button?t=3:4&e.button&&(t=2)),y&&e.ctrlKey&&1==t&&(t=3),t}var Se,ke,_e=function(){if(s&&a<9)return!1;var e=D("div");return"draggable"in e||"dragDrop"in e}();function De(e){if(null==Se){var t=D("span","​");_(e,D("span",[t,document.createTextNode("x")])),0!=e.firstChild.offsetHeight&&(Se=t.offsetWidth<=1&&t.offsetHeight>2&&!(s&&a<8))}var i=Se?D("span","​"):D("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px");return i.setAttribute("cm-text",""),i}function $e(e){if(null!=ke)return ke;var t=_(e,document.createTextNode("AخA")),i=F(t,0,1).getBoundingClientRect(),n=F(t,1,2).getBoundingClientRect();return k(e),!(!i||i.left==i.right)&&(ke=n.right-i.right<3)}var Le=3!="\n\nb".split(/\n/).length?function(e){for(var t=0,i=[],n=e.length;t<=n;){var r=e.indexOf("\n",t);-1==r&&(r=e.length);var o=e.slice(t,"\r"==e.charAt(r-1)?r-1:r),s=o.indexOf("\r");-1!=s?(i.push(o.slice(0,s)),t+=s+1):(i.push(o),t=r+1)}return i}:function(e){return e.split(/\r\n?|\n/)},Be=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch(e){return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch(e){}return!(!t||t.parentElement()!=e)&&0!=t.compareEndPoints("StartToEnd",t)},Re=function(){var e=D("div");return"oncopy"in e||(e.setAttribute("oncopy","return;"),"function"==typeof e.oncopy)}(),Te=null,Me={},Oe={};function Pe(e){if("string"==typeof e&&Oe.hasOwnProperty(e))e=Oe[e];else if(e&&"string"==typeof e.name&&Oe.hasOwnProperty(e.name)){var t=Oe[e.name];"string"==typeof t&&(t={name:t}),(e=J(t,e)).name=t.name}else{if("string"==typeof e&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return Pe("application/xml");if("string"==typeof e&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return Pe("application/json")}return"string"==typeof e?{name:e}:e||{name:"null"}}function Ne(e,t){t=Pe(t);var i=Me[t.name];if(!i)return Ne(e,"text/plain");var n=i(e,t);if(Ie.hasOwnProperty(t.name)){var r=Ie[t.name];for(var o in r)r.hasOwnProperty(o)&&(n.hasOwnProperty(o)&&(n["_"+o]=n[o]),n[o]=r[o])}if(n.name=t.name,t.helperType&&(n.helperType=t.helperType),t.modeProps)for(var s in t.modeProps)n[s]=t.modeProps[s];return n}var Ie={};function je(e,t){var i=Ie.hasOwnProperty(e)?Ie[e]:Ie[e]={};P(t,i)}function We(e,t){if(!0===t)return t;if(e.copyState)return e.copyState(t);var i={};for(var n in t){var r=t[n];r instanceof Array&&(r=r.concat([])),i[n]=r}return i}function He(e,t){for(var i;e.innerMode&&(i=e.innerMode(t))&&i.mode!=e;)t=i.state,e=i.mode;return i||{mode:e,state:t}}function ze(e,t,i){return!e.startState||e.startState(t,i)}var Ve=function(e,t,i){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=i};function Ue(e,t){if((t-=e.first)<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");for(var i=e;!i.lines;)for(var n=0;;++n){var r=i.children[n],o=r.chunkSize();if(t<o){i=r;break}t-=o}return i.lines[t]}function qe(e,t,i){var n=[],r=t.line;return e.iter(t.line,i.line+1,function(e){var o=e.text;r==i.line&&(o=o.slice(0,i.ch)),r==t.line&&(o=o.slice(t.ch)),n.push(o),++r}),n}function Ke(e,t,i){var n=[];return e.iter(t,i,function(e){n.push(e.text)}),n}function Ge(e,t){var i=t-e.height;if(i)for(var n=e;n;n=n.parent)n.height+=i}function Ye(e){if(null==e.parent)return null;for(var t=e.parent,i=j(t.lines,e),n=t.parent;n;t=n,n=n.parent)for(var r=0;n.children[r]!=t;++r)i+=n.children[r].chunkSize();return i+t.first}function Qe(e,t){var i=e.first;e:do{for(var n=0;n<e.children.length;++n){var r=e.children[n],o=r.height;if(t<o){e=r;continue e}t-=o,i+=r.chunkSize()}return i}while(!e.lines);for(var s=0;s<e.lines.length;++s){var a=e.lines[s],l=a.height;if(t<l)break;t-=l}return i+s}function Xe(e,t){return t>=e.first&&t<e.first+e.size}function Je(e,t){return String(e.lineNumberFormatter(t+e.firstLineNumber))}function Ze(e,t,i){if(void 0===i&&(i=null),!(this instanceof Ze))return new Ze(e,t,i);this.line=e,this.ch=t,this.sticky=i}function et(e,t){return e.line-t.line||e.ch-t.ch}function tt(e,t){return e.sticky==t.sticky&&0==et(e,t)}function it(e){return Ze(e.line,e.ch)}function nt(e,t){return et(e,t)<0?t:e}function rt(e,t){return et(e,t)<0?e:t}function ot(e,t){return Math.max(e.first,Math.min(t,e.first+e.size-1))}function st(e,t){if(t.line<e.first)return Ze(e.first,0);var i=e.first+e.size-1;return t.line>i?Ze(i,Ue(e,i).text.length):function(e,t){var i=e.ch;return null==i||i>t?Ze(e.line,t):i<0?Ze(e.line,0):e}(t,Ue(e,t.line).text.length)}function at(e,t){for(var i=[],n=0;n<t.length;n++)i[n]=st(e,t[n]);return i}Ve.prototype.eol=function(){return this.pos>=this.string.length},Ve.prototype.sol=function(){return this.pos==this.lineStart},Ve.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},Ve.prototype.next=function(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)},Ve.prototype.eat=function(e){var t=this.string.charAt(this.pos);if("string"==typeof e?t==e:t&&(e.test?e.test(t):e(t)))return++this.pos,t},Ve.prototype.eatWhile=function(e){for(var t=this.pos;this.eat(e););return this.pos>t},Ve.prototype.eatSpace=function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},Ve.prototype.skipToEnd=function(){this.pos=this.string.length},Ve.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},Ve.prototype.backUp=function(e){this.pos-=e},Ve.prototype.column=function(){return this.lastColumnPos<this.start&&(this.lastColumnValue=N(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue-(this.lineStart?N(this.string,this.lineStart,this.tabSize):0)},Ve.prototype.indentation=function(){return N(this.string,null,this.tabSize)-(this.lineStart?N(this.string,this.lineStart,this.tabSize):0)},Ve.prototype.match=function(e,t,i){if("string"!=typeof e){var n=this.string.slice(this.pos).match(e);return n&&n.index>0?null:(n&&!1!==t&&(this.pos+=n[0].length),n)}var r=function(e){return i?e.toLowerCase():e},o=this.string.substr(this.pos,e.length);if(r(o)==r(e))return!1!==t&&(this.pos+=e.length),!0},Ve.prototype.current=function(){return this.string.slice(this.start,this.pos)},Ve.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},Ve.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},Ve.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};var lt=function(e,t){this.state=e,this.lookAhead=t},ct=function(e,t,i,n){this.state=t,this.doc=e,this.line=i,this.maxLookAhead=n||0,this.baseTokens=null,this.baseTokenPos=1};function ht(e,t,i,n){var r=[e.state.modeGen],o={};wt(e,t.text,e.doc.mode,i,function(e,t){return r.push(e,t)},o,n);for(var s=i.state,a=function(n){i.baseTokens=r;var a=e.state.overlays[n],l=1,c=0;i.state=!0,wt(e,t.text,a.mode,i,function(e,t){for(var i=l;c<e;){var n=r[l];n>e&&r.splice(l,1,e,r[l+1],n),l+=2,c=Math.min(e,n)}if(t)if(a.opaque)r.splice(i,l-i,e,"overlay "+t),l=i+2;else for(;i<l;i+=2){var o=r[i+1];r[i+1]=(o?o+" ":"")+"overlay "+t}},o),i.state=s,i.baseTokens=null,i.baseTokenPos=1},l=0;l<e.state.overlays.length;++l)a(l);return{styles:r,classes:o.bgClass||o.textClass?o:null}}function ut(e,t,i){if(!t.styles||t.styles[0]!=e.state.modeGen){var n=dt(e,Ye(t)),r=t.text.length>e.options.maxHighlightLength&&We(e.doc.mode,n.state),o=ht(e,t,n);r&&(n.state=r),t.stateAfter=n.save(!r),t.styles=o.styles,o.classes?t.styleClasses=o.classes:t.styleClasses&&(t.styleClasses=null),i===e.doc.highlightFrontier&&(e.doc.modeFrontier=Math.max(e.doc.modeFrontier,++e.doc.highlightFrontier))}return t.styles}function dt(e,t,i){var n=e.doc,r=e.display;if(!n.mode.startState)return new ct(n,!0,t);var o=function(e,t,i){for(var n,r,o=e.doc,s=i?-1:t-(e.doc.mode.innerMode?1e3:100),a=t;a>s;--a){if(a<=o.first)return o.first;var l=Ue(o,a-1),c=l.stateAfter;if(c&&(!i||a+(c instanceof lt?c.lookAhead:0)<=o.modeFrontier))return a;var h=N(l.text,null,e.options.tabSize);(null==r||n>h)&&(r=a-1,n=h)}return r}(e,t,i),s=o>n.first&&Ue(n,o-1).stateAfter,a=s?ct.fromSaved(n,s,o):new ct(n,ze(n.mode),o);return n.iter(o,t,function(i){ft(e,i.text,a);var n=a.line;i.stateAfter=n==t-1||n%5==0||n>=r.viewFrom&&n<r.viewTo?a.save():null,a.nextLine()}),i&&(n.modeFrontier=a.line),a}function ft(e,t,i,n){var r=e.doc.mode,o=new Ve(t,e.options.tabSize,i);for(o.start=o.pos=n||0,""==t&&pt(r,i.state);!o.eol();)mt(r,o,i.state),o.start=o.pos}function pt(e,t){if(e.blankLine)return e.blankLine(t);if(e.innerMode){var i=He(e,t);return i.mode.blankLine?i.mode.blankLine(i.state):void 0}}function mt(e,t,i,n){for(var r=0;r<10;r++){n&&(n[0]=He(e,i).mode);var o=e.token(t,i);if(t.pos>t.start)return o}throw new Error("Mode "+e.name+" failed to advance stream.")}ct.prototype.lookAhead=function(e){var t=this.doc.getLine(this.line+e);return null!=t&&e>this.maxLookAhead&&(this.maxLookAhead=e),t},ct.prototype.baseToken=function(e){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=e;)this.baseTokenPos+=2;var t=this.baseTokens[this.baseTokenPos+1];return{type:t&&t.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-e}},ct.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},ct.fromSaved=function(e,t,i){return t instanceof lt?new ct(e,We(e.mode,t.state),i,t.lookAhead):new ct(e,We(e.mode,t),i)},ct.prototype.save=function(e){var t=!1!==e?We(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new lt(t,this.maxLookAhead):t};var gt=function(e,t,i){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=i};function vt(e,t,i,n){var r,o=e.doc,s=o.mode;t=st(o,t);var a,l=Ue(o,t.line),c=dt(e,t.line,i),h=new Ve(l.text,e.options.tabSize,c);for(n&&(a=[]);(n||h.pos<t.ch)&&!h.eol();)h.start=h.pos,r=mt(s,h,c.state),n&&a.push(new gt(h,r,We(o.mode,c.state)));return n?a:new gt(h,r,c.state)}function yt(e,t){if(e)for(;;){var i=e.match(/(?:^|\s+)line-(background-)?(\S+)/);if(!i)break;e=e.slice(0,i.index)+e.slice(i.index+i[0].length);var n=i[1]?"bgClass":"textClass";null==t[n]?t[n]=i[2]:new RegExp("(?:^|\\s)"+i[2]+"(?:$|\\s)").test(t[n])||(t[n]+=" "+i[2])}return e}function wt(e,t,i,n,r,o,s){var a=i.flattenSpans;null==a&&(a=e.options.flattenSpans);var l,c=0,h=null,u=new Ve(t,e.options.tabSize,n),d=e.options.addModeClass&&[null];for(""==t&&yt(pt(i,n.state),o);!u.eol();){if(u.pos>e.options.maxHighlightLength?(a=!1,s&&ft(e,t,n,u.pos),u.pos=t.length,l=null):l=yt(mt(i,u,n.state,d),o),d){var f=d[0].name;f&&(l="m-"+(l?f+" "+l:f))}if(!a||h!=l){for(;c<u.start;)c=Math.min(u.start,c+5e3),r(c,h);h=l}u.start=u.pos}for(;c<u.pos;){var p=Math.min(u.pos,c+5e3);r(p,h),c=p}}var bt=!1,Ct=!1;function At(e,t,i){this.marker=e,this.from=t,this.to=i}function Et(e,t){if(e)for(var i=0;i<e.length;++i){var n=e[i];if(n.marker==t)return n}}function xt(e,t){for(var i,n=0;n<e.length;++n)e[n]!=t&&(i||(i=[])).push(e[n]);return i}function Ft(e,t){if(t.full)return null;var i=Xe(e,t.from.line)&&Ue(e,t.from.line).markedSpans,n=Xe(e,t.to.line)&&Ue(e,t.to.line).markedSpans;if(!i&&!n)return null;var r=t.from.ch,o=t.to.ch,s=0==et(t.from,t.to),a=function(e,t,i){var n;if(e)for(var r=0;r<e.length;++r){var o=e[r],s=o.marker,a=null==o.from||(s.inclusiveLeft?o.from<=t:o.from<t);if(a||o.from==t&&"bookmark"==s.type&&(!i||!o.marker.insertLeft)){var l=null==o.to||(s.inclusiveRight?o.to>=t:o.to>t);(n||(n=[])).push(new At(s,o.from,l?null:o.to))}}return n}(i,r,s),l=function(e,t,i){var n;if(e)for(var r=0;r<e.length;++r){var o=e[r],s=o.marker,a=null==o.to||(s.inclusiveRight?o.to>=t:o.to>t);if(a||o.from==t&&"bookmark"==s.type&&(!i||o.marker.insertLeft)){var l=null==o.from||(s.inclusiveLeft?o.from<=t:o.from<t);(n||(n=[])).push(new At(s,l?null:o.from-t,null==o.to?null:o.to-t))}}return n}(n,o,s),c=1==t.text.length,h=Y(t.text).length+(c?r:0);if(a)for(var u=0;u<a.length;++u){var d=a[u];if(null==d.to){var f=Et(l,d.marker);f?c&&(d.to=null==f.to?null:f.to+h):d.to=r}}if(l)for(var p=0;p<l.length;++p){var m=l[p];if(null!=m.to&&(m.to+=h),null==m.from){var g=Et(a,m.marker);g||(m.from=h,c&&(a||(a=[])).push(m))}else m.from+=h,c&&(a||(a=[])).push(m)}a&&(a=St(a)),l&&l!=a&&(l=St(l));var v=[a];if(!c){var y,w=t.text.length-2;if(w>0&&a)for(var b=0;b<a.length;++b)null==a[b].to&&(y||(y=[])).push(new At(a[b].marker,null,null));for(var C=0;C<w;++C)v.push(y);v.push(l)}return v}function St(e){for(var t=0;t<e.length;++t){var i=e[t];null!=i.from&&i.from==i.to&&!1!==i.marker.clearWhenEmpty&&e.splice(t--,1)}return e.length?e:null}function kt(e){var t=e.markedSpans;if(t){for(var i=0;i<t.length;++i)t[i].marker.detachLine(e);e.markedSpans=null}}function _t(e,t){if(t){for(var i=0;i<t.length;++i)t[i].marker.attachLine(e);e.markedSpans=t}}function Dt(e){return e.inclusiveLeft?-1:0}function $t(e){return e.inclusiveRight?1:0}function Lt(e,t){var i=e.lines.length-t.lines.length;if(0!=i)return i;var n=e.find(),r=t.find(),o=et(n.from,r.from)||Dt(e)-Dt(t);if(o)return-o;var s=et(n.to,r.to)||$t(e)-$t(t);return s||t.id-e.id}function Bt(e,t){var i,n=Ct&&e.markedSpans;if(n)for(var r=void 0,o=0;o<n.length;++o)(r=n[o]).marker.collapsed&&null==(t?r.from:r.to)&&(!i||Lt(i,r.marker)<0)&&(i=r.marker);return i}function Rt(e){return Bt(e,!0)}function Tt(e){return Bt(e,!1)}function Mt(e,t){var i,n=Ct&&e.markedSpans;if(n)for(var r=0;r<n.length;++r){var o=n[r];o.marker.collapsed&&(null==o.from||o.from<t)&&(null==o.to||o.to>t)&&(!i||Lt(i,o.marker)<0)&&(i=o.marker)}return i}function Ot(e,t,i,n,r){var o=Ue(e,t),s=Ct&&o.markedSpans;if(s)for(var a=0;a<s.length;++a){var l=s[a];if(l.marker.collapsed){var c=l.marker.find(0),h=et(c.from,i)||Dt(l.marker)-Dt(r),u=et(c.to,n)||$t(l.marker)-$t(r);if(!(h>=0&&u<=0||h<=0&&u>=0)&&(h<=0&&(l.marker.inclusiveRight&&r.inclusiveLeft?et(c.to,i)>=0:et(c.to,i)>0)||h>=0&&(l.marker.inclusiveRight&&r.inclusiveLeft?et(c.from,n)<=0:et(c.from,n)<0)))return!0}}}function Pt(e){for(var t;t=Rt(e);)e=t.find(-1,!0).line;return e}function Nt(e,t){var i=Ue(e,t),n=Pt(i);return i==n?t:Ye(n)}function It(e,t){if(t>e.lastLine())return t;var i,n=Ue(e,t);if(!jt(e,n))return t;for(;i=Tt(n);)n=i.find(1,!0).line;return Ye(n)+1}function jt(e,t){var i=Ct&&t.markedSpans;if(i)for(var n=void 0,r=0;r<i.length;++r)if((n=i[r]).marker.collapsed){if(null==n.from)return!0;if(!n.marker.widgetNode&&0==n.from&&n.marker.inclusiveLeft&&Wt(e,t,n))return!0}}function Wt(e,t,i){if(null==i.to){var n=i.marker.find(1,!0);return Wt(e,n.line,Et(n.line.markedSpans,i.marker))}if(i.marker.inclusiveRight&&i.to==t.text.length)return!0;for(var r=void 0,o=0;o<t.markedSpans.length;++o)if((r=t.markedSpans[o]).marker.collapsed&&!r.marker.widgetNode&&r.from==i.to&&(null==r.to||r.to!=i.from)&&(r.marker.inclusiveLeft||i.marker.inclusiveRight)&&Wt(e,t,r))return!0}function Ht(e){for(var t=0,i=(e=Pt(e)).parent,n=0;n<i.lines.length;++n){var r=i.lines[n];if(r==e)break;t+=r.height}for(var o=i.parent;o;o=(i=o).parent)for(var s=0;s<o.children.length;++s){var a=o.children[s];if(a==i)break;t+=a.height}return t}function zt(e){if(0==e.height)return 0;for(var t,i=e.text.length,n=e;t=Rt(n);){var r=t.find(0,!0);n=r.from.line,i+=r.from.ch-r.to.ch}for(n=e;t=Tt(n);){var o=t.find(0,!0);i-=n.text.length-o.from.ch,n=o.to.line,i+=n.text.length-o.to.ch}return i}function Vt(e){var t=e.display,i=e.doc;t.maxLine=Ue(i,i.first),t.maxLineLength=zt(t.maxLine),t.maxLineChanged=!0,i.iter(function(e){var i=zt(e);i>t.maxLineLength&&(t.maxLineLength=i,t.maxLine=e)})}var Ut=function(e,t,i){this.text=e,_t(this,t),this.height=i?i(this):1};function qt(e){e.parent=null,kt(e)}Ut.prototype.lineNo=function(){return Ye(this)},we(Ut);var Kt={},Gt={};function Yt(e,t){if(!e||/^\s*$/.test(e))return null;var i=t.addModeClass?Gt:Kt;return i[e]||(i[e]=e.replace(/\S+/g,"cm-$&"))}function Qt(e,t){var i=$("span",null,null,l?"padding-right: .1px":null),n={pre:$("pre",[i],"CodeMirror-line"),content:i,col:0,pos:0,cm:e,trailingSpace:!1,splitSpaces:e.getOption("lineWrapping")};t.measure={};for(var r=0;r<=(t.rest?t.rest.length:0);r++){var o=r?t.rest[r-1]:t.line,s=void 0;n.pos=0,n.addToken=Jt,$e(e.display.measure)&&(s=he(o,e.doc.direction))&&(n.addToken=Zt(n.addToken,s)),n.map=[];var a=t!=e.display.externalMeasured&&Ye(o);ti(o,n,ut(e,o,a)),o.styleClasses&&(o.styleClasses.bgClass&&(n.bgClass=T(o.styleClasses.bgClass,n.bgClass||"")),o.styleClasses.textClass&&(n.textClass=T(o.styleClasses.textClass,n.textClass||""))),0==n.map.length&&n.map.push(0,0,n.content.appendChild(De(e.display.measure))),0==r?(t.measure.map=n.map,t.measure.cache={}):((t.measure.maps||(t.measure.maps=[])).push(n.map),(t.measure.caches||(t.measure.caches=[])).push({}))}if(l){var c=n.content.lastChild;(/\bcm-tab\b/.test(c.className)||c.querySelector&&c.querySelector(".cm-tab"))&&(n.content.className="cm-tab-wrap-hack")}return me(e,"renderLine",e,t.line,n.pre),n.pre.className&&(n.textClass=T(n.pre.className,n.textClass||"")),n}function Xt(e){var t=D("span","•","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function Jt(e,t,i,n,r,o,l){if(t){var c,h=e.splitSpaces?function(e,t){if(e.length>1&&!/ /.test(e))return e;for(var i=t,n="",r=0;r<e.length;r++){var o=e.charAt(r);" "!=o||!i||r!=e.length-1&&32!=e.charCodeAt(r+1)||(o=" "),n+=o,i=" "==o}return n}(t,e.trailingSpace):t,u=e.cm.state.specialChars,d=!1;if(u.test(t)){c=document.createDocumentFragment();for(var f=0;;){u.lastIndex=f;var p=u.exec(t),m=p?p.index-f:t.length-f;if(m){var g=document.createTextNode(h.slice(f,f+m));s&&a<9?c.appendChild(D("span",[g])):c.appendChild(g),e.map.push(e.pos,e.pos+m,g),e.col+=m,e.pos+=m}if(!p)break;f+=m+1;var v=void 0;if("\t"==p[0]){var y=e.cm.options.tabSize,w=y-e.col%y;(v=c.appendChild(D("span",G(w),"cm-tab"))).setAttribute("role","presentation"),v.setAttribute("cm-text","\t"),e.col+=w}else"\r"==p[0]||"\n"==p[0]?((v=c.appendChild(D("span","\r"==p[0]?"␍":"␤","cm-invalidchar"))).setAttribute("cm-text",p[0]),e.col+=1):((v=e.cm.options.specialCharPlaceholder(p[0])).setAttribute("cm-text",p[0]),s&&a<9?c.appendChild(D("span",[v])):c.appendChild(v),e.col+=1);e.map.push(e.pos,e.pos+1,v),e.pos++}}else e.col+=t.length,c=document.createTextNode(h),e.map.push(e.pos,e.pos+t.length,c),s&&a<9&&(d=!0),e.pos+=t.length;if(e.trailingSpace=32==h.charCodeAt(t.length-1),i||n||r||d||o||l){var b=i||"";n&&(b+=n),r&&(b+=r);var C=D("span",[c],b,o);if(l)for(var A in l)l.hasOwnProperty(A)&&"style"!=A&&"class"!=A&&C.setAttribute(A,l[A]);return e.content.appendChild(C)}e.content.appendChild(c)}}function Zt(e,t){return function(i,n,r,o,s,a,l){r=r?r+" cm-force-border":"cm-force-border";for(var c=i.pos,h=c+n.length;;){for(var u=void 0,d=0;d<t.length&&!((u=t[d]).to>c&&u.from<=c);d++);if(u.to>=h)return e(i,n,r,o,s,a,l);e(i,n.slice(0,u.to-c),r,o,null,a,l),o=null,n=n.slice(u.to-c),c=u.to}}}function ei(e,t,i,n){var r=!n&&i.widgetNode;r&&e.map.push(e.pos,e.pos+t,r),!n&&e.cm.display.input.needsContentAttribute&&(r||(r=e.content.appendChild(document.createElement("span"))),r.setAttribute("cm-marker",i.id)),r&&(e.cm.display.input.setUneditable(r),e.content.appendChild(r)),e.pos+=t,e.trailingSpace=!1}function ti(e,t,i){var n=e.markedSpans,r=e.text,o=0;if(n)for(var s,a,l,c,h,u,d,f=r.length,p=0,m=1,g="",v=0;;){if(v==p){l=c=h=a="",d=null,u=null,v=1/0;for(var y=[],w=void 0,b=0;b<n.length;++b){var C=n[b],A=C.marker;if("bookmark"==A.type&&C.from==p&&A.widgetNode)y.push(A);else if(C.from<=p&&(null==C.to||C.to>p||A.collapsed&&C.to==p&&C.from==p)){if(null!=C.to&&C.to!=p&&v>C.to&&(v=C.to,c=""),A.className&&(l+=" "+A.className),A.css&&(a=(a?a+";":"")+A.css),A.startStyle&&C.from==p&&(h+=" "+A.startStyle),A.endStyle&&C.to==v&&(w||(w=[])).push(A.endStyle,C.to),A.title&&((d||(d={})).title=A.title),A.attributes)for(var E in A.attributes)(d||(d={}))[E]=A.attributes[E];A.collapsed&&(!u||Lt(u.marker,A)<0)&&(u=C)}else C.from>p&&v>C.from&&(v=C.from)}if(w)for(var x=0;x<w.length;x+=2)w[x+1]==v&&(c+=" "+w[x]);if(!u||u.from==p)for(var F=0;F<y.length;++F)ei(t,0,y[F]);if(u&&(u.from||0)==p){if(ei(t,(null==u.to?f+1:u.to)-p,u.marker,null==u.from),null==u.to)return;u.to==p&&(u=!1)}}if(p>=f)break;for(var S=Math.min(f,v);;){if(g){var k=p+g.length;if(!u){var _=k>S?g.slice(0,S-p):g;t.addToken(t,_,s?s+l:l,h,p+_.length==v?c:"",a,d)}if(k>=S){g=g.slice(S-p),p=S;break}p=k,h=""}g=r.slice(o,o=i[m++]),s=Yt(i[m++],t.cm.options)}}else for(var D=1;D<i.length;D+=2)t.addToken(t,r.slice(o,o=i[D]),Yt(i[D+1],t.cm.options))}function ii(e,t,i){this.line=t,this.rest=function(e){for(var t,i;t=Tt(e);)e=t.find(1,!0).line,(i||(i=[])).push(e);return i}(t),this.size=this.rest?Ye(Y(this.rest))-i+1:1,this.node=this.text=null,this.hidden=jt(e,t)}function ni(e,t,i){for(var n,r=[],o=t;o<i;o=n){var s=new ii(e.doc,Ue(e.doc,o),o);n=o+s.size,r.push(s)}return r}var ri=null,oi=null;function si(e,t){var i=fe(e,t);if(i.length){var n,r=Array.prototype.slice.call(arguments,2);ri?n=ri.delayedCallbacks:oi?n=oi:(n=oi=[],setTimeout(ai,0));for(var o=function(e){n.push(function(){return i[e].apply(null,r)})},s=0;s<i.length;++s)o(s)}}function ai(){var e=oi;oi=null;for(var t=0;t<e.length;++t)e[t]()}function li(e,t,i,n){for(var r=0;r<t.changes.length;r++){var o=t.changes[r];"text"==o?ui(e,t):"gutter"==o?fi(e,t,i,n):"class"==o?di(e,t):"widget"==o&&pi(e,t,n)}t.changes=null}function ci(e){return e.node==e.text&&(e.node=D("div",null,null,"position: relative"),e.text.parentNode&&e.text.parentNode.replaceChild(e.node,e.text),e.node.appendChild(e.text),s&&a<8&&(e.node.style.zIndex=2)),e.node}function hi(e,t){var i=e.display.externalMeasured;return i&&i.line==t.line?(e.display.externalMeasured=null,t.measure=i.measure,i.built):Qt(e,t)}function ui(e,t){var i=t.text.className,n=hi(e,t);t.text==t.node&&(t.node=n.pre),t.text.parentNode.replaceChild(n.pre,t.text),t.text=n.pre,n.bgClass!=t.bgClass||n.textClass!=t.textClass?(t.bgClass=n.bgClass,t.textClass=n.textClass,di(e,t)):i&&(t.text.className=i)}function di(e,t){!function(e,t){var i=t.bgClass?t.bgClass+" "+(t.line.bgClass||""):t.line.bgClass;if(i&&(i+=" CodeMirror-linebackground"),t.background)i?t.background.className=i:(t.background.parentNode.removeChild(t.background),t.background=null);else if(i){var n=ci(t);t.background=n.insertBefore(D("div",null,i),n.firstChild),e.display.input.setUneditable(t.background)}}(e,t),t.line.wrapClass?ci(t).className=t.line.wrapClass:t.node!=t.text&&(t.node.className="");var i=t.textClass?t.textClass+" "+(t.line.textClass||""):t.line.textClass;t.text.className=i||""}function fi(e,t,i,n){if(t.gutter&&(t.node.removeChild(t.gutter),t.gutter=null),t.gutterBackground&&(t.node.removeChild(t.gutterBackground),t.gutterBackground=null),t.line.gutterClass){var r=ci(t);t.gutterBackground=D("div",null,"CodeMirror-gutter-background "+t.line.gutterClass,"left: "+(e.options.fixedGutter?n.fixedPos:-n.gutterTotalWidth)+"px; width: "+n.gutterTotalWidth+"px"),e.display.input.setUneditable(t.gutterBackground),r.insertBefore(t.gutterBackground,t.text)}var o=t.line.gutterMarkers;if(e.options.lineNumbers||o){var s=ci(t),a=t.gutter=D("div",null,"CodeMirror-gutter-wrapper","left: "+(e.options.fixedGutter?n.fixedPos:-n.gutterTotalWidth)+"px");if(a.setAttribute("aria-hidden","true"),e.display.input.setUneditable(a),s.insertBefore(a,t.text),t.line.gutterClass&&(a.className+=" "+t.line.gutterClass),!e.options.lineNumbers||o&&o["CodeMirror-linenumbers"]||(t.lineNumber=a.appendChild(D("div",Je(e.options,i),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+n.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+e.display.lineNumInnerWidth+"px"))),o)for(var l=0;l<e.display.gutterSpecs.length;++l){var c=e.display.gutterSpecs[l].className,h=o.hasOwnProperty(c)&&o[c];h&&a.appendChild(D("div",[h],"CodeMirror-gutter-elt","left: "+n.gutterLeft[c]+"px; width: "+n.gutterWidth[c]+"px"))}}}function pi(e,t,i){t.alignable&&(t.alignable=null);for(var n=x("CodeMirror-linewidget"),r=t.node.firstChild,o=void 0;r;r=o)o=r.nextSibling,n.test(r.className)&&t.node.removeChild(r);gi(e,t,i)}function mi(e,t,i,n){var r=hi(e,t);return t.text=t.node=r.pre,r.bgClass&&(t.bgClass=r.bgClass),r.textClass&&(t.textClass=r.textClass),di(e,t),fi(e,t,i,n),gi(e,t,n),t.node}function gi(e,t,i){if(vi(e,t.line,t,i,!0),t.rest)for(var n=0;n<t.rest.length;n++)vi(e,t.rest[n],t,i,!1)}function vi(e,t,i,n,r){if(t.widgets)for(var o=ci(i),s=0,a=t.widgets;s<a.length;++s){var l=a[s],c=D("div",[l.node],"CodeMirror-linewidget"+(l.className?" "+l.className:""));l.handleMouseEvents||c.setAttribute("cm-ignore-events","true"),yi(l,c,i,n),e.display.input.setUneditable(c),r&&l.above?o.insertBefore(c,i.gutter||i.text):o.appendChild(c),si(l,"redraw")}}function yi(e,t,i,n){if(e.noHScroll){(i.alignable||(i.alignable=[])).push(t);var r=n.wrapperWidth;t.style.left=n.fixedPos+"px",e.coverGutter||(r-=n.gutterTotalWidth,t.style.paddingLeft=n.gutterTotalWidth+"px"),t.style.width=r+"px"}e.coverGutter&&(t.style.zIndex=5,t.style.position="relative",e.noHScroll||(t.style.marginLeft=-n.gutterTotalWidth+"px"))}function wi(e){if(null!=e.height)return e.height;var t=e.doc.cm;if(!t)return 0;if(!L(document.body,e.node)){var i="position: relative;";e.coverGutter&&(i+="margin-left: -"+t.display.gutters.offsetWidth+"px;"),e.noHScroll&&(i+="width: "+t.display.wrapper.clientWidth+"px;"),_(t.display.measure,D("div",[e.node],null,i))}return e.height=e.node.parentNode.offsetHeight}function bi(e,t){for(var i=xe(t);i!=e.wrapper;i=i.parentNode)if(!i||1==i.nodeType&&"true"==i.getAttribute("cm-ignore-events")||i.parentNode==e.sizer&&i!=e.mover)return!0}function Ci(e){return e.lineSpace.offsetTop}function Ai(e){return e.mover.offsetHeight-e.lineSpace.offsetHeight}function Ei(e){if(e.cachedPaddingH)return e.cachedPaddingH;var t=_(e.measure,D("pre","x","CodeMirror-line-like")),i=window.getComputedStyle?window.getComputedStyle(t):t.currentStyle,n={left:parseInt(i.paddingLeft),right:parseInt(i.paddingRight)};return isNaN(n.left)||isNaN(n.right)||(e.cachedPaddingH=n),n}function xi(e){return W-e.display.nativeBarWidth}function Fi(e){return e.display.scroller.clientWidth-xi(e)-e.display.barWidth}function Si(e){return e.display.scroller.clientHeight-xi(e)-e.display.barHeight}function ki(e,t,i){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};if(e.rest){for(var n=0;n<e.rest.length;n++)if(e.rest[n]==t)return{map:e.measure.maps[n],cache:e.measure.caches[n]};for(var r=0;r<e.rest.length;r++)if(Ye(e.rest[r])>i)return{map:e.measure.maps[r],cache:e.measure.caches[r],before:!0}}}function _i(e,t,i,n){return Li(e,$i(e,t),i,n)}function Di(e,t){if(t>=e.display.viewFrom&&t<e.display.viewTo)return e.display.view[an(e,t)];var i=e.display.externalMeasured;return i&&t>=i.lineN&&t<i.lineN+i.size?i:void 0}function $i(e,t){var i=Ye(t),n=Di(e,i);n&&!n.text?n=null:n&&n.changes&&(li(e,n,i,tn(e)),e.curOp.forceUpdate=!0),n||(n=function(e,t){var i=Ye(t=Pt(t)),n=e.display.externalMeasured=new ii(e.doc,t,i);n.lineN=i;var r=n.built=Qt(e,n);return n.text=r.pre,_(e.display.lineMeasure,r.pre),n}(e,t));var r=ki(n,t,i);return{line:t,view:n,rect:null,map:r.map,cache:r.cache,before:r.before,hasHeights:!1}}function Li(e,t,i,n,r){t.before&&(i=-1);var o,l=i+(n||"");return t.cache.hasOwnProperty(l)?o=t.cache[l]:(t.rect||(t.rect=t.view.text.getBoundingClientRect()),t.hasHeights||(function(e,t,i){var n=e.options.lineWrapping,r=n&&Fi(e);if(!t.measure.heights||n&&t.measure.width!=r){var o=t.measure.heights=[];if(n){t.measure.width=r;for(var s=t.text.firstChild.getClientRects(),a=0;a<s.length-1;a++){var l=s[a],c=s[a+1];Math.abs(l.bottom-c.bottom)>2&&o.push((l.bottom+c.top)/2-i.top)}}o.push(i.bottom-i.top)}}(e,t.view,t.rect),t.hasHeights=!0),(o=function(e,t,i,n){var r,o=Ti(t.map,i,n),l=o.node,c=o.start,h=o.end,u=o.collapse;if(3==l.nodeType){for(var d=0;d<4;d++){for(;c&&re(t.line.text.charAt(o.coverStart+c));)--c;for(;o.coverStart+h<o.coverEnd&&re(t.line.text.charAt(o.coverStart+h));)++h;if((r=s&&a<9&&0==c&&h==o.coverEnd-o.coverStart?l.parentNode.getBoundingClientRect():Mi(F(l,c,h).getClientRects(),n)).left||r.right||0==c)break;h=c,c-=1,u="right"}s&&a<11&&(r=function(e,t){if(!window.screen||null==screen.logicalXDPI||screen.logicalXDPI==screen.deviceXDPI||!function(e){if(null!=Te)return Te;var t=_(e,D("span","x")),i=t.getBoundingClientRect(),n=F(t,0,1).getBoundingClientRect();return Te=Math.abs(i.left-n.left)>1}(e))return t;var i=screen.logicalXDPI/screen.deviceXDPI,n=screen.logicalYDPI/screen.deviceYDPI;return{left:t.left*i,right:t.right*i,top:t.top*n,bottom:t.bottom*n}}(e.display.measure,r))}else{var f;c>0&&(u=n="right"),r=e.options.lineWrapping&&(f=l.getClientRects()).length>1?f["right"==n?f.length-1:0]:l.getBoundingClientRect()}if(s&&a<9&&!c&&(!r||!r.left&&!r.right)){var p=l.parentNode.getClientRects()[0];r=p?{left:p.left,right:p.left+en(e.display),top:p.top,bottom:p.bottom}:Ri}for(var m=r.top-t.rect.top,g=r.bottom-t.rect.top,v=(m+g)/2,y=t.view.measure.heights,w=0;w<y.length-1&&!(v<y[w]);w++);var b=w?y[w-1]:0,C=y[w],A={left:("right"==u?r.right:r.left)-t.rect.left,right:("left"==u?r.left:r.right)-t.rect.left,top:b,bottom:C};return r.left||r.right||(A.bogus=!0),e.options.singleCursorHeightPerLine||(A.rtop=m,A.rbottom=g),A}(e,t,i,n)).bogus||(t.cache[l]=o)),{left:o.left,right:o.right,top:r?o.rtop:o.top,bottom:r?o.rbottom:o.bottom}}var Bi,Ri={left:0,right:0,top:0,bottom:0};function Ti(e,t,i){for(var n,r,o,s,a,l,c=0;c<e.length;c+=3)if(a=e[c],l=e[c+1],t<a?(r=0,o=1,s="left"):t<l?o=1+(r=t-a):(c==e.length-3||t==l&&e[c+3]>t)&&(r=(o=l-a)-1,t>=l&&(s="right")),null!=r){if(n=e[c+2],a==l&&i==(n.insertLeft?"left":"right")&&(s=i),"left"==i&&0==r)for(;c&&e[c-2]==e[c-3]&&e[c-1].insertLeft;)n=e[2+(c-=3)],s="left";if("right"==i&&r==l-a)for(;c<e.length-3&&e[c+3]==e[c+4]&&!e[c+5].insertLeft;)n=e[(c+=3)+2],s="right";break}return{node:n,start:r,end:o,collapse:s,coverStart:a,coverEnd:l}}function Mi(e,t){var i=Ri;if("left"==t)for(var n=0;n<e.length&&(i=e[n]).left==i.right;n++);else for(var r=e.length-1;r>=0&&(i=e[r]).left==i.right;r--);return i}function Oi(e){if(e.measure&&(e.measure.cache={},e.measure.heights=null,e.rest))for(var t=0;t<e.rest.length;t++)e.measure.caches[t]={}}function Pi(e){e.display.externalMeasure=null,k(e.display.lineMeasure);for(var t=0;t<e.display.view.length;t++)Oi(e.display.view[t])}function Ni(e){Pi(e),e.display.cachedCharWidth=e.display.cachedTextHeight=e.display.cachedPaddingH=null,e.options.lineWrapping||(e.display.maxLineChanged=!0),e.display.lineNumChars=null}function Ii(){return h&&g?-(document.body.getBoundingClientRect().left-parseInt(getComputedStyle(document.body).marginLeft)):window.pageXOffset||(document.documentElement||document.body).scrollLeft}function ji(){return h&&g?-(document.body.getBoundingClientRect().top-parseInt(getComputedStyle(document.body).marginTop)):window.pageYOffset||(document.documentElement||document.body).scrollTop}function Wi(e){var t=Pt(e),i=t.widgets,n=0;if(i)for(var r=0;r<i.length;++r)i[r].above&&(n+=wi(i[r]));return n}function Hi(e,t,i,n,r){if(!r){var o=Wi(t);i.top+=o,i.bottom+=o}if("line"==n)return i;n||(n="local");var s=Ht(t);if("local"==n?s+=Ci(e.display):s-=e.display.viewOffset,"page"==n||"window"==n){var a=e.display.lineSpace.getBoundingClientRect();s+=a.top+("window"==n?0:ji());var l=a.left+("window"==n?0:Ii());i.left+=l,i.right+=l}return i.top+=s,i.bottom+=s,i}function zi(e,t,i){if("div"==i)return t;var n=t.left,r=t.top;if("page"==i)n-=Ii(),r-=ji();else if("local"==i||!i){var o=e.display.sizer.getBoundingClientRect();n+=o.left,r+=o.top}var s=e.display.lineSpace.getBoundingClientRect();return{left:n-s.left,top:r-s.top}}function Vi(e,t,i,n,r){return n||(n=Ue(e.doc,t.line)),Hi(e,n,_i(e,n,t.ch,r),i)}function Ui(e,t,i,n,r,o){function s(t,s){var a=Li(e,r,t,s?"right":"left",o);return s?a.left=a.right:a.right=a.left,Hi(e,n,a,i)}n=n||Ue(e.doc,t.line),r||(r=$i(e,n));var a=he(n,e.doc.direction),l=t.ch,c=t.sticky;if(l>=n.text.length?(l=n.text.length,c="before"):l<=0&&(l=0,c="after"),!a)return s("before"==c?l-1:l,"before"==c);function h(e,t,i){var n=a[t],r=1==n.level;return s(i?e-1:e,r!=i)}var u=le(a,l,c),d=ae,f=h(l,u,"before"==c);return null!=d&&(f.other=h(l,d,"before"!=c)),f}function qi(e,t){var i=0;t=st(e.doc,t),e.options.lineWrapping||(i=en(e.display)*t.ch);var n=Ue(e.doc,t.line),r=Ht(n)+Ci(e.display);return{left:i,right:i,top:r,bottom:r+n.height}}function Ki(e,t,i,n,r){var o=Ze(e,t,i);return o.xRel=r,n&&(o.outside=n),o}function Gi(e,t,i){var n=e.doc;if((i+=e.display.viewOffset)<0)return Ki(n.first,0,null,-1,-1);var r=Qe(n,i),o=n.first+n.size-1;if(r>o)return Ki(n.first+n.size-1,Ue(n,o).text.length,null,1,1);t<0&&(t=0);for(var s=Ue(n,r);;){var a=Ji(e,s,r,t,i),l=Mt(s,a.ch+(a.xRel>0||a.outside>0?1:0));if(!l)return a;var c=l.find(1);if(c.line==r)return c;s=Ue(n,r=c.line)}}function Yi(e,t,i,n){n-=Wi(t);var r=t.text.length,o=se(function(t){return Li(e,i,t-1).bottom<=n},r,0);return r=se(function(t){return Li(e,i,t).top>n},o,r),{begin:o,end:r}}function Qi(e,t,i,n){i||(i=$i(e,t));var r=Hi(e,t,Li(e,i,n),"line").top;return Yi(e,t,i,r)}function Xi(e,t,i,n){return!(e.bottom<=i)&&(e.top>i||(n?e.left:e.right)>t)}function Ji(e,t,i,n,r){r-=Ht(t);var o=$i(e,t),s=Wi(t),a=0,l=t.text.length,c=!0,h=he(t,e.doc.direction);if(h){var u=(e.options.lineWrapping?function(e,t,i,n,r,o,s){var a=Yi(e,t,n,s),l=a.begin,c=a.end;/\s/.test(t.text.charAt(c-1))&&c--;for(var h=null,u=null,d=0;d<r.length;d++){var f=r[d];if(!(f.from>=c||f.to<=l)){var p=1!=f.level,m=Li(e,n,p?Math.min(c,f.to)-1:Math.max(l,f.from)).right,g=m<o?o-m+1e9:m-o;(!h||u>g)&&(h=f,u=g)}}return h||(h=r[r.length-1]),h.from<l&&(h={from:l,to:h.to,level:h.level}),h.to>c&&(h={from:h.from,to:c,level:h.level}),h}:function(e,t,i,n,r,o,s){var a=se(function(a){var l=r[a],c=1!=l.level;return Xi(Ui(e,Ze(i,c?l.to:l.from,c?"before":"after"),"line",t,n),o,s,!0)},0,r.length-1),l=r[a];if(a>0){var c=1!=l.level,h=Ui(e,Ze(i,c?l.from:l.to,c?"after":"before"),"line",t,n);Xi(h,o,s,!0)&&h.top>s&&(l=r[a-1])}return l})(e,t,i,o,h,n,r);c=1!=u.level,a=c?u.from:u.to-1,l=c?u.to:u.from-1}var d,f,p=null,m=null,g=se(function(t){var i=Li(e,o,t);return i.top+=s,i.bottom+=s,!!Xi(i,n,r,!1)&&(i.top<=r&&i.left<=n&&(p=t,m=i),!0)},a,l),v=!1;if(m){var y=n-m.left<m.right-n,w=y==c;g=p+(w?0:1),f=w?"after":"before",d=y?m.left:m.right}else{c||g!=l&&g!=a||g++,f=0==g?"after":g==t.text.length?"before":Li(e,o,g-(c?1:0)).bottom+s<=r==c?"after":"before";var b=Ui(e,Ze(i,g,f),"line",t,o);d=b.left,v=r<b.top?-1:r>=b.bottom?1:0}return g=oe(t.text,g,1),Ki(i,g,f,v,n-d)}function Zi(e){if(null!=e.cachedTextHeight)return e.cachedTextHeight;if(null==Bi){Bi=D("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)Bi.appendChild(document.createTextNode("x")),Bi.appendChild(D("br"));Bi.appendChild(document.createTextNode("x"))}_(e.measure,Bi);var i=Bi.offsetHeight/50;return i>3&&(e.cachedTextHeight=i),k(e.measure),i||1}function en(e){if(null!=e.cachedCharWidth)return e.cachedCharWidth;var t=D("span","xxxxxxxxxx"),i=D("pre",[t],"CodeMirror-line-like");_(e.measure,i);var n=t.getBoundingClientRect(),r=(n.right-n.left)/10;return r>2&&(e.cachedCharWidth=r),r||10}function tn(e){for(var t=e.display,i={},n={},r=t.gutters.clientLeft,o=t.gutters.firstChild,s=0;o;o=o.nextSibling,++s){var a=e.display.gutterSpecs[s].className;i[a]=o.offsetLeft+o.clientLeft+r,n[a]=o.clientWidth}return{fixedPos:nn(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:i,gutterWidth:n,wrapperWidth:t.wrapper.clientWidth}}function nn(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function rn(e){var t=Zi(e.display),i=e.options.lineWrapping,n=i&&Math.max(5,e.display.scroller.clientWidth/en(e.display)-3);return function(r){if(jt(e.doc,r))return 0;var o=0;if(r.widgets)for(var s=0;s<r.widgets.length;s++)r.widgets[s].height&&(o+=r.widgets[s].height);return i?o+(Math.ceil(r.text.length/n)||1)*t:o+t}}function on(e){var t=e.doc,i=rn(e);t.iter(function(e){var t=i(e);t!=e.height&&Ge(e,t)})}function sn(e,t,i,n){var r=e.display;if(!i&&"true"==xe(t).getAttribute("cm-not-content"))return null;var o,s,a=r.lineSpace.getBoundingClientRect();try{o=t.clientX-a.left,s=t.clientY-a.top}catch(e){return null}var l,c=Gi(e,o,s);if(n&&c.xRel>0&&(l=Ue(e.doc,c.line).text).length==c.ch){var h=N(l,l.length,e.options.tabSize)-l.length;c=Ze(c.line,Math.max(0,Math.round((o-Ei(e.display).left)/en(e.display))-h))}return c}function an(e,t){if(t>=e.display.viewTo)return null;if((t-=e.display.viewFrom)<0)return null;for(var i=e.display.view,n=0;n<i.length;n++)if((t-=i[n].size)<0)return n}function ln(e,t,i,n){null==t&&(t=e.doc.first),null==i&&(i=e.doc.first+e.doc.size),n||(n=0);var r=e.display;if(n&&i<r.viewTo&&(null==r.updateLineNumbers||r.updateLineNumbers>t)&&(r.updateLineNumbers=t),e.curOp.viewChanged=!0,t>=r.viewTo)Ct&&Nt(e.doc,t)<r.viewTo&&hn(e);else if(i<=r.viewFrom)Ct&&It(e.doc,i+n)>r.viewFrom?hn(e):(r.viewFrom+=n,r.viewTo+=n);else if(t<=r.viewFrom&&i>=r.viewTo)hn(e);else if(t<=r.viewFrom){var o=un(e,i,i+n,1);o?(r.view=r.view.slice(o.index),r.viewFrom=o.lineN,r.viewTo+=n):hn(e)}else if(i>=r.viewTo){var s=un(e,t,t,-1);s?(r.view=r.view.slice(0,s.index),r.viewTo=s.lineN):hn(e)}else{var a=un(e,t,t,-1),l=un(e,i,i+n,1);a&&l?(r.view=r.view.slice(0,a.index).concat(ni(e,a.lineN,l.lineN)).concat(r.view.slice(l.index)),r.viewTo+=n):hn(e)}var c=r.externalMeasured;c&&(i<c.lineN?c.lineN+=n:t<c.lineN+c.size&&(r.externalMeasured=null))}function cn(e,t,i){e.curOp.viewChanged=!0;var n=e.display,r=e.display.externalMeasured;if(r&&t>=r.lineN&&t<r.lineN+r.size&&(n.externalMeasured=null),!(t<n.viewFrom||t>=n.viewTo)){var o=n.view[an(e,t)];if(null!=o.node){var s=o.changes||(o.changes=[]);-1==j(s,i)&&s.push(i)}}}function hn(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function un(e,t,i,n){var r,o=an(e,t),s=e.display.view;if(!Ct||i==e.doc.first+e.doc.size)return{index:o,lineN:i};for(var a=e.display.viewFrom,l=0;l<o;l++)a+=s[l].size;if(a!=t){if(n>0){if(o==s.length-1)return null;r=a+s[o].size-t,o++}else r=a-t;t+=r,i+=r}for(;Nt(e.doc,i)!=i;){if(o==(n<0?0:s.length-1))return null;i+=n*s[o-(n<0?1:0)].size,o+=n}return{index:o,lineN:i}}function dn(e){for(var t=e.display.view,i=0,n=0;n<t.length;n++){var r=t[n];r.hidden||r.node&&!r.changes||++i}return i}function fn(e){e.display.input.showSelection(e.display.input.prepareSelection())}function pn(e,t){void 0===t&&(t=!0);var i=e.doc,n={},r=n.cursors=document.createDocumentFragment(),o=n.selection=document.createDocumentFragment(),s=e.options.$customCursor;s&&(t=!0);for(var a=0;a<i.sel.ranges.length;a++)if(t||a!=i.sel.primIndex){var l=i.sel.ranges[a];if(!(l.from().line>=e.display.viewTo||l.to().line<e.display.viewFrom)){var c=l.empty();if(s){var h=s(e,l);h&&mn(e,h,r)}else(c||e.options.showCursorWhenSelecting)&&mn(e,l.head,r);c||vn(e,l,o)}}return n}function mn(e,t,i){var n=Ui(e,t,"div",null,null,!e.options.singleCursorHeightPerLine),r=i.appendChild(D("div"," ","CodeMirror-cursor"));if(r.style.left=n.left+"px",r.style.top=n.top+"px",r.style.height=Math.max(0,n.bottom-n.top)*e.options.cursorHeight+"px",/\bcm-fat-cursor\b/.test(e.getWrapperElement().className)){var o=Vi(e,t,"div",null,null),s=o.right-o.left;r.style.width=(s>0?s:e.defaultCharWidth())+"px"}if(n.other){var a=i.appendChild(D("div"," ","CodeMirror-cursor CodeMirror-secondarycursor"));a.style.display="",a.style.left=n.other.left+"px",a.style.top=n.other.top+"px",a.style.height=.85*(n.other.bottom-n.other.top)+"px"}}function gn(e,t){return e.top-t.top||e.left-t.left}function vn(e,t,i){var n=e.display,r=e.doc,o=document.createDocumentFragment(),s=Ei(e.display),a=s.left,l=Math.max(n.sizerWidth,Fi(e)-n.sizer.offsetLeft)-s.right,c="ltr"==r.direction;function h(e,t,i,n){t<0&&(t=0),t=Math.round(t),n=Math.round(n),o.appendChild(D("div",null,"CodeMirror-selected","position: absolute; left: "+e+"px;\n top: "+t+"px; width: "+(null==i?l-e:i)+"px;\n height: "+(n-t)+"px"))}function u(t,i,n){var o,s,u=Ue(r,t),d=u.text.length;function f(i,n){return Vi(e,Ze(t,i),"div",u,n)}function p(t,i,n){var r=Qi(e,u,null,t),o="ltr"==i==("after"==n)?"left":"right",s="after"==n?r.begin:r.end-(/\s/.test(u.text.charAt(r.end-1))?2:1);return f(s,o)[o]}var m=he(u,r.direction);return function(e,t,i,n){if(!e)return n(t,i,"ltr",0);for(var r=!1,o=0;o<e.length;++o){var s=e[o];(s.from<i&&s.to>t||t==i&&s.to==t)&&(n(Math.max(s.from,t),Math.min(s.to,i),1==s.level?"rtl":"ltr",o),r=!0)}r||n(t,i,"ltr")}(m,i||0,null==n?d:n,function(e,t,r,u){var g="ltr"==r,v=f(e,g?"left":"right"),y=f(t-1,g?"right":"left"),w=null==i&&0==e,b=null==n&&t==d,C=0==u,A=!m||u==m.length-1;if(y.top-v.top<=3){var E=(c?w:b)&&C,x=(c?b:w)&&A,F=E?a:(g?v:y).left,S=x?l:(g?y:v).right;h(F,v.top,S-F,v.bottom)}else{var k,_,D,$;g?(k=c&&w&&C?a:v.left,_=c?l:p(e,r,"before"),D=c?a:p(t,r,"after"),$=c&&b&&A?l:y.right):(k=c?p(e,r,"before"):a,_=!c&&w&&C?l:v.right,D=!c&&b&&A?a:y.left,$=c?p(t,r,"after"):l),h(k,v.top,_-k,v.bottom),v.bottom<y.top&&h(a,v.bottom,null,y.top),h(D,y.top,$-D,y.bottom)}(!o||gn(v,o)<0)&&(o=v),gn(y,o)<0&&(o=y),(!s||gn(v,s)<0)&&(s=v),gn(y,s)<0&&(s=y)}),{start:o,end:s}}var d=t.from(),f=t.to();if(d.line==f.line)u(d.line,d.ch,f.ch);else{var p=Ue(r,d.line),m=Ue(r,f.line),g=Pt(p)==Pt(m),v=u(d.line,d.ch,g?p.text.length+1:null).end,y=u(f.line,g?0:null,f.ch).start;g&&(v.top<y.top-2?(h(v.right,v.top,null,v.bottom),h(a,y.top,y.left,y.bottom)):h(v.right,v.top,y.left-v.right,v.bottom)),v.bottom<y.top&&h(a,v.bottom,null,y.top)}i.appendChild(o)}function yn(e){if(e.state.focused){var t=e.display;clearInterval(t.blinker);var i=!0;t.cursorDiv.style.visibility="",e.options.cursorBlinkRate>0?t.blinker=setInterval(function(){e.hasFocus()||An(e),t.cursorDiv.style.visibility=(i=!i)?"":"hidden"},e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function wn(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||Cn(e))}function bn(e){e.state.delayingBlurEvent=!0,setTimeout(function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&An(e))},100)}function Cn(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),"nocursor"!=e.options.readOnly&&(e.state.focused||(me(e,"focus",e,t),e.state.focused=!0,R(e.display.wrapper,"CodeMirror-focused"),e.curOp||e.display.selForContextMenu==e.doc.sel||(e.display.input.reset(),l&&setTimeout(function(){return e.display.input.reset(!0)},20)),e.display.input.receivedFocus()),yn(e))}function An(e,t){e.state.delayingBlurEvent||(e.state.focused&&(me(e,"blur",e,t),e.state.focused=!1,S(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout(function(){e.state.focused||(e.display.shift=!1)},150))}function En(e){for(var t=e.display,i=t.lineDiv.offsetTop,n=Math.max(0,t.scroller.getBoundingClientRect().top),r=t.lineDiv.getBoundingClientRect().top,o=0,l=0;l<t.view.length;l++){var c=t.view[l],h=e.options.lineWrapping,u=void 0,d=0;if(!c.hidden){if(r+=c.line.height,s&&a<8){var f=c.node.offsetTop+c.node.offsetHeight;u=f-i,i=f}else{var p=c.node.getBoundingClientRect();u=p.bottom-p.top,!h&&c.text.firstChild&&(d=c.text.firstChild.getBoundingClientRect().right-p.left-1)}var m=c.line.height-u;if((m>.005||m<-.005)&&(r<n&&(o-=m),Ge(c.line,u),xn(c.line),c.rest))for(var g=0;g<c.rest.length;g++)xn(c.rest[g]);if(d>e.display.sizerWidth){var v=Math.ceil(d/en(e.display));v>e.display.maxLineLength&&(e.display.maxLineLength=v,e.display.maxLine=c.line,e.display.maxLineChanged=!0)}}}Math.abs(o)>2&&(t.scroller.scrollTop+=o)}function xn(e){if(e.widgets)for(var t=0;t<e.widgets.length;++t){var i=e.widgets[t],n=i.node.parentNode;n&&(i.height=n.offsetHeight)}}function Fn(e,t,i){var n=i&&null!=i.top?Math.max(0,i.top):e.scroller.scrollTop;n=Math.floor(n-Ci(e));var r=i&&null!=i.bottom?i.bottom:n+e.wrapper.clientHeight,o=Qe(t,n),s=Qe(t,r);if(i&&i.ensure){var a=i.ensure.from.line,l=i.ensure.to.line;a<o?(o=a,s=Qe(t,Ht(Ue(t,a))+e.wrapper.clientHeight)):Math.min(l,t.lastLine())>=s&&(o=Qe(t,Ht(Ue(t,l))-e.wrapper.clientHeight),s=l)}return{from:o,to:Math.max(s,o+1)}}function Sn(e,t){var i=e.display,n=Zi(e.display);t.top<0&&(t.top=0);var r=e.curOp&&null!=e.curOp.scrollTop?e.curOp.scrollTop:i.scroller.scrollTop,o=Si(e),s={};t.bottom-t.top>o&&(t.bottom=t.top+o);var a=e.doc.height+Ai(i),l=t.top<n,c=t.bottom>a-n;if(t.top<r)s.scrollTop=l?0:t.top;else if(t.bottom>r+o){var h=Math.min(t.top,(c?a:t.bottom)-o);h!=r&&(s.scrollTop=h)}var u=e.options.fixedGutter?0:i.gutters.offsetWidth,d=e.curOp&&null!=e.curOp.scrollLeft?e.curOp.scrollLeft:i.scroller.scrollLeft-u,f=Fi(e)-i.gutters.offsetWidth,p=t.right-t.left>f;return p&&(t.right=t.left+f),t.left<10?s.scrollLeft=0:t.left<d?s.scrollLeft=Math.max(0,t.left+u-(p?0:10)):t.right>f+d-3&&(s.scrollLeft=t.right+(p?0:10)-f),s}function kn(e,t){null!=t&&($n(e),e.curOp.scrollTop=(null==e.curOp.scrollTop?e.doc.scrollTop:e.curOp.scrollTop)+t)}function _n(e){$n(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function Dn(e,t,i){null==t&&null==i||$n(e),null!=t&&(e.curOp.scrollLeft=t),null!=i&&(e.curOp.scrollTop=i)}function $n(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var i=qi(e,t.from),n=qi(e,t.to);Ln(e,i,n,t.margin)}}function Ln(e,t,i,n){var r=Sn(e,{left:Math.min(t.left,i.left),top:Math.min(t.top,i.top)-n,right:Math.max(t.right,i.right),bottom:Math.max(t.bottom,i.bottom)+n});Dn(e,r.scrollLeft,r.scrollTop)}function Bn(e,t){Math.abs(e.doc.scrollTop-t)<2||(i||or(e,{top:t}),Rn(e,t,!0),i&&or(e),er(e,100))}function Rn(e,t,i){t=Math.max(0,Math.min(e.display.scroller.scrollHeight-e.display.scroller.clientHeight,t)),(e.display.scroller.scrollTop!=t||i)&&(e.doc.scrollTop=t,e.display.scrollbars.setScrollTop(t),e.display.scroller.scrollTop!=t&&(e.display.scroller.scrollTop=t))}function Tn(e,t,i,n){t=Math.max(0,Math.min(t,e.display.scroller.scrollWidth-e.display.scroller.clientWidth)),(i?t==e.doc.scrollLeft:Math.abs(e.doc.scrollLeft-t)<2)&&!n||(e.doc.scrollLeft=t,lr(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function Mn(e){var t=e.display,i=t.gutters.offsetWidth,n=Math.round(e.doc.height+Ai(e.display));return{clientHeight:t.scroller.clientHeight,viewHeight:t.wrapper.clientHeight,scrollWidth:t.scroller.scrollWidth,clientWidth:t.scroller.clientWidth,viewWidth:t.wrapper.clientWidth,barLeft:e.options.fixedGutter?i:0,docHeight:n,scrollHeight:n+xi(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:i}}var On=function(e,t,i){this.cm=i;var n=this.vert=D("div",[D("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),r=this.horiz=D("div",[D("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");n.tabIndex=r.tabIndex=-1,e(n),e(r),de(n,"scroll",function(){n.clientHeight&&t(n.scrollTop,"vertical")}),de(r,"scroll",function(){r.clientWidth&&t(r.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,s&&a<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};On.prototype.update=function(e){var t=e.scrollWidth>e.clientWidth+1,i=e.scrollHeight>e.clientHeight+1,n=e.nativeBarWidth;if(i){this.vert.style.display="block",this.vert.style.bottom=t?n+"px":"0";var r=e.viewHeight-(t?n:0);this.vert.firstChild.style.height=Math.max(0,e.scrollHeight-e.clientHeight+r)+"px"}else this.vert.scrollTop=0,this.vert.style.display="",this.vert.firstChild.style.height="0";if(t){this.horiz.style.display="block",this.horiz.style.right=i?n+"px":"0",this.horiz.style.left=e.barLeft+"px";var o=e.viewWidth-e.barLeft-(i?n:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+o)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(0==n&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:i?n:0,bottom:t?n:0}},On.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},On.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},On.prototype.zeroWidthHack=function(){var e=y&&!f?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.pointerEvents=this.vert.style.pointerEvents="none",this.disableHoriz=new I,this.disableVert=new I},On.prototype.enableZeroWidthBar=function(e,t,i){e.style.pointerEvents="auto",t.set(1e3,function n(){var r=e.getBoundingClientRect(),o="vert"==i?document.elementFromPoint(r.right-1,(r.top+r.bottom)/2):document.elementFromPoint((r.right+r.left)/2,r.bottom-1);o!=e?e.style.pointerEvents="none":t.set(1e3,n)})},On.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var Pn=function(){};function Nn(e,t){t||(t=Mn(e));var i=e.display.barWidth,n=e.display.barHeight;In(e,t);for(var r=0;r<4&&i!=e.display.barWidth||n!=e.display.barHeight;r++)i!=e.display.barWidth&&e.options.lineWrapping&&En(e),In(e,Mn(e)),i=e.display.barWidth,n=e.display.barHeight}function In(e,t){var i=e.display,n=i.scrollbars.update(t);i.sizer.style.paddingRight=(i.barWidth=n.right)+"px",i.sizer.style.paddingBottom=(i.barHeight=n.bottom)+"px",i.heightForcer.style.borderBottom=n.bottom+"px solid transparent",n.right&&n.bottom?(i.scrollbarFiller.style.display="block",i.scrollbarFiller.style.height=n.bottom+"px",i.scrollbarFiller.style.width=n.right+"px"):i.scrollbarFiller.style.display="",n.bottom&&e.options.coverGutterNextToScrollbar&&e.options.fixedGutter?(i.gutterFiller.style.display="block",i.gutterFiller.style.height=n.bottom+"px",i.gutterFiller.style.width=t.gutterWidth+"px"):i.gutterFiller.style.display=""}Pn.prototype.update=function(){return{bottom:0,right:0}},Pn.prototype.setScrollLeft=function(){},Pn.prototype.setScrollTop=function(){},Pn.prototype.clear=function(){};var jn={native:On,null:Pn};function Wn(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&S(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new jn[e.options.scrollbarStyle](function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),de(t,"mousedown",function(){e.state.focused&&setTimeout(function(){return e.display.input.focus()},0)}),t.setAttribute("cm-not-content","true")},function(t,i){"horizontal"==i?Tn(e,t):Bn(e,t)},e),e.display.scrollbars.addClass&&R(e.display.wrapper,e.display.scrollbars.addClass)}var Hn=0;function zn(e){e.curOp={cm:e,viewChanged:!1,startHeight:e.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++Hn,markArrays:null},function(e){ri?ri.ops.push(e):e.ownsGroup=ri={ops:[e],delayedCallbacks:[]}}(e.curOp)}function Vn(e){var t=e.curOp;t&&function(e,t){var i=e.ownsGroup;if(i)try{!function(e){var t=e.delayedCallbacks,i=0;do{for(;i<t.length;i++)t[i].call(null);for(var n=0;n<e.ops.length;n++){var r=e.ops[n];if(r.cursorActivityHandlers)for(;r.cursorActivityCalled<r.cursorActivityHandlers.length;)r.cursorActivityHandlers[r.cursorActivityCalled++].call(null,r.cm)}}while(i<t.length)}(i)}finally{ri=null,t(i)}}(t,function(e){for(var t=0;t<e.ops.length;t++)e.ops[t].cm.curOp=null;!function(e){for(var t=e.ops,i=0;i<t.length;i++)Un(t[i]);for(var n=0;n<t.length;n++)qn(t[n]);for(var r=0;r<t.length;r++)Kn(t[r]);for(var o=0;o<t.length;o++)Gn(t[o]);for(var s=0;s<t.length;s++)Yn(t[s])}(e)})}function Un(e){var t=e.cm,i=t.display;!function(e){var t=e.display;!t.scrollbarsClipped&&t.scroller.offsetWidth&&(t.nativeBarWidth=t.scroller.offsetWidth-t.scroller.clientWidth,t.heightForcer.style.height=xi(e)+"px",t.sizer.style.marginBottom=-t.nativeBarWidth+"px",t.sizer.style.borderRightWidth=xi(e)+"px",t.scrollbarsClipped=!0)}(t),e.updateMaxLine&&Vt(t),e.mustUpdate=e.viewChanged||e.forceUpdate||null!=e.scrollTop||e.scrollToPos&&(e.scrollToPos.from.line<i.viewFrom||e.scrollToPos.to.line>=i.viewTo)||i.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new ir(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function qn(e){e.updatedDisplay=e.mustUpdate&&nr(e.cm,e.update)}function Kn(e){var t=e.cm,i=t.display;e.updatedDisplay&&En(t),e.barMeasure=Mn(t),i.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=_i(t,i.maxLine,i.maxLine.text.length).left+3,t.display.sizerWidth=e.adjustWidthTo,e.barMeasure.scrollWidth=Math.max(i.scroller.clientWidth,i.sizer.offsetLeft+e.adjustWidthTo+xi(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,i.sizer.offsetLeft+e.adjustWidthTo-Fi(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=i.input.prepareSelection())}function Gn(e){var t=e.cm;null!=e.adjustWidthTo&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft<t.doc.scrollLeft&&Tn(t,Math.min(t.display.scroller.scrollLeft,e.maxScrollLeft),!0),t.display.maxLineChanged=!1);var i=e.focus&&e.focus==B();e.preparedSelection&&t.display.input.showSelection(e.preparedSelection,i),(e.updatedDisplay||e.startHeight!=t.doc.height)&&Nn(t,e.barMeasure),e.updatedDisplay&&ar(t,e.barMeasure),e.selectionChanged&&yn(t),t.state.focused&&e.updateInput&&t.display.input.reset(e.typing),i&&wn(e.cm)}function Yn(e){var t=e.cm,i=t.display,n=t.doc;if(e.updatedDisplay&&rr(t,e.update),null==i.wheelStartX||null==e.scrollTop&&null==e.scrollLeft&&!e.scrollToPos||(i.wheelStartX=i.wheelStartY=null),null!=e.scrollTop&&Rn(t,e.scrollTop,e.forceScroll),null!=e.scrollLeft&&Tn(t,e.scrollLeft,!0,!0),e.scrollToPos){var r=function(e,t,i,n){var r;null==n&&(n=0),e.options.lineWrapping||t!=i||(i="before"==t.sticky?Ze(t.line,t.ch+1,"before"):t,t=t.ch?Ze(t.line,"before"==t.sticky?t.ch-1:t.ch,"after"):t);for(var o=0;o<5;o++){var s=!1,a=Ui(e,t),l=i&&i!=t?Ui(e,i):a;r={left:Math.min(a.left,l.left),top:Math.min(a.top,l.top)-n,right:Math.max(a.left,l.left),bottom:Math.max(a.bottom,l.bottom)+n};var c=Sn(e,r),h=e.doc.scrollTop,u=e.doc.scrollLeft;if(null!=c.scrollTop&&(Bn(e,c.scrollTop),Math.abs(e.doc.scrollTop-h)>1&&(s=!0)),null!=c.scrollLeft&&(Tn(e,c.scrollLeft),Math.abs(e.doc.scrollLeft-u)>1&&(s=!0)),!s)break}return r}(t,st(n,e.scrollToPos.from),st(n,e.scrollToPos.to),e.scrollToPos.margin);!function(e,t){if(!ge(e,"scrollCursorIntoView")){var i=e.display,n=i.sizer.getBoundingClientRect(),r=null;if(t.top+n.top<0?r=!0:t.bottom+n.top>(window.innerHeight||document.documentElement.clientHeight)&&(r=!1),null!=r&&!p){var o=D("div","​",null,"position: absolute;\n top: "+(t.top-i.viewOffset-Ci(e.display))+"px;\n height: "+(t.bottom-t.top+xi(e)+i.barHeight)+"px;\n left: "+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(o),o.scrollIntoView(r),e.display.lineSpace.removeChild(o)}}}(t,r)}var o=e.maybeHiddenMarkers,s=e.maybeUnhiddenMarkers;if(o)for(var a=0;a<o.length;++a)o[a].lines.length||me(o[a],"hide");if(s)for(var l=0;l<s.length;++l)s[l].lines.length&&me(s[l],"unhide");i.wrapper.offsetHeight&&(n.scrollTop=t.display.scroller.scrollTop),e.changeObjs&&me(t,"changes",t,e.changeObjs),e.update&&e.update.finish()}function Qn(e,t){if(e.curOp)return t();zn(e);try{return t()}finally{Vn(e)}}function Xn(e,t){return function(){if(e.curOp)return t.apply(e,arguments);zn(e);try{return t.apply(e,arguments)}finally{Vn(e)}}}function Jn(e){return function(){if(this.curOp)return e.apply(this,arguments);zn(this);try{return e.apply(this,arguments)}finally{Vn(this)}}}function Zn(e){return function(){var t=this.cm;if(!t||t.curOp)return e.apply(this,arguments);zn(t);try{return e.apply(this,arguments)}finally{Vn(t)}}}function er(e,t){e.doc.highlightFrontier<e.display.viewTo&&e.state.highlight.set(t,O(tr,e))}function tr(e){var t=e.doc;if(!(t.highlightFrontier>=e.display.viewTo)){var i=+new Date+e.options.workTime,n=dt(e,t.highlightFrontier),r=[];t.iter(n.line,Math.min(t.first+t.size,e.display.viewTo+500),function(o){if(n.line>=e.display.viewFrom){var s=o.styles,a=o.text.length>e.options.maxHighlightLength?We(t.mode,n.state):null,l=ht(e,o,n,!0);a&&(n.state=a),o.styles=l.styles;var c=o.styleClasses,h=l.classes;h?o.styleClasses=h:c&&(o.styleClasses=null);for(var u=!s||s.length!=o.styles.length||c!=h&&(!c||!h||c.bgClass!=h.bgClass||c.textClass!=h.textClass),d=0;!u&&d<s.length;++d)u=s[d]!=o.styles[d];u&&r.push(n.line),o.stateAfter=n.save(),n.nextLine()}else o.text.length<=e.options.maxHighlightLength&&ft(e,o.text,n),o.stateAfter=n.line%5==0?n.save():null,n.nextLine();if(+new Date>i)return er(e,e.options.workDelay),!0}),t.highlightFrontier=n.line,t.modeFrontier=Math.max(t.modeFrontier,n.line),r.length&&Qn(e,function(){for(var t=0;t<r.length;t++)cn(e,r[t],"text")})}}var ir=function(e,t,i){var n=e.display;this.viewport=t,this.visible=Fn(n,e.doc,t),this.editorIsHidden=!n.wrapper.offsetWidth,this.wrapperHeight=n.wrapper.clientHeight,this.wrapperWidth=n.wrapper.clientWidth,this.oldDisplayWidth=Fi(e),this.force=i,this.dims=tn(e),this.events=[]};function nr(e,t){var i=e.display,n=e.doc;if(t.editorIsHidden)return hn(e),!1;if(!t.force&&t.visible.from>=i.viewFrom&&t.visible.to<=i.viewTo&&(null==i.updateLineNumbers||i.updateLineNumbers>=i.viewTo)&&i.renderedView==i.view&&0==dn(e))return!1;cr(e)&&(hn(e),t.dims=tn(e));var r=n.first+n.size,o=Math.max(t.visible.from-e.options.viewportMargin,n.first),s=Math.min(r,t.visible.to+e.options.viewportMargin);i.viewFrom<o&&o-i.viewFrom<20&&(o=Math.max(n.first,i.viewFrom)),i.viewTo>s&&i.viewTo-s<20&&(s=Math.min(r,i.viewTo)),Ct&&(o=Nt(e.doc,o),s=It(e.doc,s));var a=o!=i.viewFrom||s!=i.viewTo||i.lastWrapHeight!=t.wrapperHeight||i.lastWrapWidth!=t.wrapperWidth;!function(e,t,i){var n=e.display;0==n.view.length||t>=n.viewTo||i<=n.viewFrom?(n.view=ni(e,t,i),n.viewFrom=t):(n.viewFrom>t?n.view=ni(e,t,n.viewFrom).concat(n.view):n.viewFrom<t&&(n.view=n.view.slice(an(e,t))),n.viewFrom=t,n.viewTo<i?n.view=n.view.concat(ni(e,n.viewTo,i)):n.viewTo>i&&(n.view=n.view.slice(0,an(e,i)))),n.viewTo=i}(e,o,s),i.viewOffset=Ht(Ue(e.doc,i.viewFrom)),e.display.mover.style.top=i.viewOffset+"px";var c=dn(e);if(!a&&0==c&&!t.force&&i.renderedView==i.view&&(null==i.updateLineNumbers||i.updateLineNumbers>=i.viewTo))return!1;var h=function(e){if(e.hasFocus())return null;var t=B();if(!t||!L(e.display.lineDiv,t))return null;var i={activeElt:t};if(window.getSelection){var n=window.getSelection();n.anchorNode&&n.extend&&L(e.display.lineDiv,n.anchorNode)&&(i.anchorNode=n.anchorNode,i.anchorOffset=n.anchorOffset,i.focusNode=n.focusNode,i.focusOffset=n.focusOffset)}return i}(e);return c>4&&(i.lineDiv.style.display="none"),function(e,t,i){var n=e.display,r=e.options.lineNumbers,o=n.lineDiv,s=o.firstChild;function a(t){var i=t.nextSibling;return l&&y&&e.display.currentWheelTarget==t?t.style.display="none":t.parentNode.removeChild(t),i}for(var c=n.view,h=n.viewFrom,u=0;u<c.length;u++){var d=c[u];if(d.hidden);else if(d.node&&d.node.parentNode==o){for(;s!=d.node;)s=a(s);var f=r&&null!=t&&t<=h&&d.lineNumber;d.changes&&(j(d.changes,"gutter")>-1&&(f=!1),li(e,d,h,i)),f&&(k(d.lineNumber),d.lineNumber.appendChild(document.createTextNode(Je(e.options,h)))),s=d.node.nextSibling}else{var p=mi(e,d,h,i);o.insertBefore(p,s)}h+=d.size}for(;s;)s=a(s)}(e,i.updateLineNumbers,t.dims),c>4&&(i.lineDiv.style.display=""),i.renderedView=i.view,function(e){if(e&&e.activeElt&&e.activeElt!=B()&&(e.activeElt.focus(),!/^(INPUT|TEXTAREA)$/.test(e.activeElt.nodeName)&&e.anchorNode&&L(document.body,e.anchorNode)&&L(document.body,e.focusNode))){var t=window.getSelection(),i=document.createRange();i.setEnd(e.anchorNode,e.anchorOffset),i.collapse(!1),t.removeAllRanges(),t.addRange(i),t.extend(e.focusNode,e.focusOffset)}}(h),k(i.cursorDiv),k(i.selectionDiv),i.gutters.style.height=i.sizer.style.minHeight=0,a&&(i.lastWrapHeight=t.wrapperHeight,i.lastWrapWidth=t.wrapperWidth,er(e,400)),i.updateLineNumbers=null,!0}function rr(e,t){for(var i=t.viewport,n=!0;;n=!1){if(n&&e.options.lineWrapping&&t.oldDisplayWidth!=Fi(e))n&&(t.visible=Fn(e.display,e.doc,i));else if(i&&null!=i.top&&(i={top:Math.min(e.doc.height+Ai(e.display)-Si(e),i.top)}),t.visible=Fn(e.display,e.doc,i),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break;if(!nr(e,t))break;En(e);var r=Mn(e);fn(e),Nn(e,r),ar(e,r),t.force=!1}t.signal(e,"update",e),e.display.viewFrom==e.display.reportedViewFrom&&e.display.viewTo==e.display.reportedViewTo||(t.signal(e,"viewportChange",e,e.display.viewFrom,e.display.viewTo),e.display.reportedViewFrom=e.display.viewFrom,e.display.reportedViewTo=e.display.viewTo)}function or(e,t){var i=new ir(e,t);if(nr(e,i)){En(e),rr(e,i);var n=Mn(e);fn(e),Nn(e,n),ar(e,n),i.finish()}}function sr(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px",si(e,"gutterChanged",e)}function ar(e,t){e.display.sizer.style.minHeight=t.docHeight+"px",e.display.heightForcer.style.top=t.docHeight+"px",e.display.gutters.style.height=t.docHeight+e.display.barHeight+xi(e)+"px"}function lr(e){var t=e.display,i=t.view;if(t.alignWidgets||t.gutters.firstChild&&e.options.fixedGutter){for(var n=nn(t)-t.scroller.scrollLeft+e.doc.scrollLeft,r=t.gutters.offsetWidth,o=n+"px",s=0;s<i.length;s++)if(!i[s].hidden){e.options.fixedGutter&&(i[s].gutter&&(i[s].gutter.style.left=o),i[s].gutterBackground&&(i[s].gutterBackground.style.left=o));var a=i[s].alignable;if(a)for(var l=0;l<a.length;l++)a[l].style.left=o}e.options.fixedGutter&&(t.gutters.style.left=n+r+"px")}}function cr(e){if(!e.options.lineNumbers)return!1;var t=e.doc,i=Je(e.options,t.first+t.size-1),n=e.display;if(i.length!=n.lineNumChars){var r=n.measure.appendChild(D("div",[D("div",i)],"CodeMirror-linenumber CodeMirror-gutter-elt")),o=r.firstChild.offsetWidth,s=r.offsetWidth-o;return n.lineGutter.style.width="",n.lineNumInnerWidth=Math.max(o,n.lineGutter.offsetWidth-s)+1,n.lineNumWidth=n.lineNumInnerWidth+s,n.lineNumChars=n.lineNumInnerWidth?i.length:-1,n.lineGutter.style.width=n.lineNumWidth+"px",sr(e.display),!0}return!1}function hr(e,t){for(var i=[],n=!1,r=0;r<e.length;r++){var o=e[r],s=null;if("string"!=typeof o&&(s=o.style,o=o.className),"CodeMirror-linenumbers"==o){if(!t)continue;n=!0}i.push({className:o,style:s})}return t&&!n&&i.push({className:"CodeMirror-linenumbers",style:null}),i}function ur(e){var t=e.gutters,i=e.gutterSpecs;k(t),e.lineGutter=null;for(var n=0;n<i.length;++n){var r=i[n],o=r.className,s=r.style,a=t.appendChild(D("div",null,"CodeMirror-gutter "+o));s&&(a.style.cssText=s),"CodeMirror-linenumbers"==o&&(e.lineGutter=a,a.style.width=(e.lineNumWidth||1)+"px")}t.style.display=i.length?"":"none",sr(e)}function dr(e){ur(e.display),ln(e),lr(e)}ir.prototype.signal=function(e,t){ye(e,t)&&this.events.push(arguments)},ir.prototype.finish=function(){for(var e=0;e<this.events.length;e++)me.apply(null,this.events[e])};var fr=0,pr=null;function mr(e){var t=e.wheelDeltaX,i=e.wheelDeltaY;return null==t&&e.detail&&e.axis==e.HORIZONTAL_AXIS&&(t=e.detail),null==i&&e.detail&&e.axis==e.VERTICAL_AXIS?i=e.detail:null==i&&(i=e.wheelDelta),{x:t,y:i}}function gr(e){var t=mr(e);return t.x*=pr,t.y*=pr,t}function vr(e,t){var n=mr(t),r=n.x,o=n.y,s=pr;0===t.deltaMode&&(r=t.deltaX,o=t.deltaY,s=1);var a=e.display,c=a.scroller,h=c.scrollWidth>c.clientWidth,d=c.scrollHeight>c.clientHeight;if(r&&h||o&&d){if(o&&y&&l)e:for(var f=t.target,p=a.view;f!=c;f=f.parentNode)for(var m=0;m<p.length;m++)if(p[m].node==f){e.display.currentWheelTarget=f;break e}if(r&&!i&&!u&&null!=s)return o&&d&&Bn(e,Math.max(0,c.scrollTop+o*s)),Tn(e,Math.max(0,c.scrollLeft+r*s)),(!o||o&&d)&&be(t),void(a.wheelStartX=null);if(o&&null!=s){var g=o*s,v=e.doc.scrollTop,w=v+a.wrapper.clientHeight;g<0?v=Math.max(0,v+g-50):w=Math.min(e.doc.height,w+g+50),or(e,{top:v,bottom:w})}fr<20&&0!==t.deltaMode&&(null==a.wheelStartX?(a.wheelStartX=c.scrollLeft,a.wheelStartY=c.scrollTop,a.wheelDX=r,a.wheelDY=o,setTimeout(function(){if(null!=a.wheelStartX){var e=c.scrollLeft-a.wheelStartX,t=c.scrollTop-a.wheelStartY,i=t&&a.wheelDY&&t/a.wheelDY||e&&a.wheelDX&&e/a.wheelDX;a.wheelStartX=a.wheelStartY=null,i&&(pr=(pr*fr+i)/(fr+1),++fr)}},200)):(a.wheelDX+=r,a.wheelDY+=o))}}s?pr=-.53:i?pr=15:h?pr=-.7:d&&(pr=-1/3);var yr=function(e,t){this.ranges=e,this.primIndex=t};yr.prototype.primary=function(){return this.ranges[this.primIndex]},yr.prototype.equals=function(e){if(e==this)return!0;if(e.primIndex!=this.primIndex||e.ranges.length!=this.ranges.length)return!1;for(var t=0;t<this.ranges.length;t++){var i=this.ranges[t],n=e.ranges[t];if(!tt(i.anchor,n.anchor)||!tt(i.head,n.head))return!1}return!0},yr.prototype.deepCopy=function(){for(var e=[],t=0;t<this.ranges.length;t++)e[t]=new wr(it(this.ranges[t].anchor),it(this.ranges[t].head));return new yr(e,this.primIndex)},yr.prototype.somethingSelected=function(){for(var e=0;e<this.ranges.length;e++)if(!this.ranges[e].empty())return!0;return!1},yr.prototype.contains=function(e,t){t||(t=e);for(var i=0;i<this.ranges.length;i++){var n=this.ranges[i];if(et(t,n.from())>=0&&et(e,n.to())<=0)return i}return-1};var wr=function(e,t){this.anchor=e,this.head=t};function br(e,t,i){var n=e&&e.options.selectionsMayTouch,r=t[i];t.sort(function(e,t){return et(e.from(),t.from())}),i=j(t,r);for(var o=1;o<t.length;o++){var s=t[o],a=t[o-1],l=et(a.to(),s.from());if(n&&!s.empty()?l>0:l>=0){var c=rt(a.from(),s.from()),h=nt(a.to(),s.to()),u=a.empty()?s.from()==s.head:a.from()==a.head;o<=i&&--i,t.splice(--o,2,new wr(u?h:c,u?c:h))}}return new yr(t,i)}function Cr(e,t){return new yr([new wr(e,t||e)],0)}function Ar(e){return e.text?Ze(e.from.line+e.text.length-1,Y(e.text).length+(1==e.text.length?e.from.ch:0)):e.to}function Er(e,t){if(et(e,t.from)<0)return e;if(et(e,t.to)<=0)return Ar(t);var i=e.line+t.text.length-(t.to.line-t.from.line)-1,n=e.ch;return e.line==t.to.line&&(n+=Ar(t).ch-t.to.ch),Ze(i,n)}function xr(e,t){for(var i=[],n=0;n<e.sel.ranges.length;n++){var r=e.sel.ranges[n];i.push(new wr(Er(r.anchor,t),Er(r.head,t)))}return br(e.cm,i,e.sel.primIndex)}function Fr(e,t,i){return e.line==t.line?Ze(i.line,e.ch-t.ch+i.ch):Ze(i.line+(e.line-t.line),e.ch)}function Sr(e){e.doc.mode=Ne(e.options,e.doc.modeOption),kr(e)}function kr(e){e.doc.iter(function(e){e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null)}),e.doc.modeFrontier=e.doc.highlightFrontier=e.doc.first,er(e,100),e.state.modeGen++,e.curOp&&ln(e)}function _r(e,t){return 0==t.from.ch&&0==t.to.ch&&""==Y(t.text)&&(!e.cm||e.cm.options.wholeLineUpdateBefore)}function Dr(e,t,i,n){function r(e){return i?i[e]:null}function o(e,i,r){!function(e,t,i,n){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),null!=e.order&&(e.order=null),kt(e),_t(e,i);var r=n?n(e):1;r!=e.height&&Ge(e,r)}(e,i,r,n),si(e,"change",e,t)}function s(e,t){for(var i=[],o=e;o<t;++o)i.push(new Ut(c[o],r(o),n));return i}var a=t.from,l=t.to,c=t.text,h=Ue(e,a.line),u=Ue(e,l.line),d=Y(c),f=r(c.length-1),p=l.line-a.line;if(t.full)e.insert(0,s(0,c.length)),e.remove(c.length,e.size-c.length);else if(_r(e,t)){var m=s(0,c.length-1);o(u,u.text,f),p&&e.remove(a.line,p),m.length&&e.insert(a.line,m)}else if(h==u)if(1==c.length)o(h,h.text.slice(0,a.ch)+d+h.text.slice(l.ch),f);else{var g=s(1,c.length-1);g.push(new Ut(d+h.text.slice(l.ch),f,n)),o(h,h.text.slice(0,a.ch)+c[0],r(0)),e.insert(a.line+1,g)}else if(1==c.length)o(h,h.text.slice(0,a.ch)+c[0]+u.text.slice(l.ch),r(0)),e.remove(a.line+1,p);else{o(h,h.text.slice(0,a.ch)+c[0],r(0)),o(u,d+u.text.slice(l.ch),f);var v=s(1,c.length-1);p>1&&e.remove(a.line+1,p-1),e.insert(a.line+1,v)}si(e,"change",e,t)}function $r(e,t,i){!function e(n,r,o){if(n.linked)for(var s=0;s<n.linked.length;++s){var a=n.linked[s];if(a.doc!=r){var l=o&&a.sharedHist;i&&!l||(t(a.doc,l),e(a.doc,n,l))}}}(e,null,!0)}function Lr(e,t){if(t.cm)throw new Error("This document is already in use.");e.doc=t,t.cm=e,on(e),Sr(e),Br(e),e.options.direction=t.direction,e.options.lineWrapping||Vt(e),e.options.mode=t.modeOption,ln(e)}function Br(e){("rtl"==e.doc.direction?R:S)(e.display.lineDiv,"CodeMirror-rtl")}function Rr(e){this.done=[],this.undone=[],this.undoDepth=e?e.undoDepth:1/0,this.lastModTime=this.lastSelTime=0,this.lastOp=this.lastSelOp=null,this.lastOrigin=this.lastSelOrigin=null,this.generation=this.maxGeneration=e?e.maxGeneration:1}function Tr(e,t){var i={from:it(t.from),to:Ar(t),text:qe(e,t.from,t.to)};return Ir(e,i,t.from.line,t.to.line+1),$r(e,function(e){return Ir(e,i,t.from.line,t.to.line+1)},!0),i}function Mr(e){for(;e.length;){var t=Y(e);if(!t.ranges)break;e.pop()}}function Or(e,t,i,n){var r=e.history;r.undone.length=0;var o,s,a=+new Date;if((r.lastOp==n||r.lastOrigin==t.origin&&t.origin&&("+"==t.origin.charAt(0)&&r.lastModTime>a-(e.cm?e.cm.options.historyEventDelay:500)||"*"==t.origin.charAt(0)))&&(o=function(e,t){return t?(Mr(e.done),Y(e.done)):e.done.length&&!Y(e.done).ranges?Y(e.done):e.done.length>1&&!e.done[e.done.length-2].ranges?(e.done.pop(),Y(e.done)):void 0}(r,r.lastOp==n)))s=Y(o.changes),0==et(t.from,t.to)&&0==et(t.from,s.to)?s.to=Ar(t):o.changes.push(Tr(e,t));else{var l=Y(r.done);for(l&&l.ranges||Nr(e.sel,r.done),o={changes:[Tr(e,t)],generation:r.generation},r.done.push(o);r.done.length>r.undoDepth;)r.done.shift(),r.done[0].ranges||r.done.shift()}r.done.push(i),r.generation=++r.maxGeneration,r.lastModTime=r.lastSelTime=a,r.lastOp=r.lastSelOp=n,r.lastOrigin=r.lastSelOrigin=t.origin,s||me(e,"historyAdded")}function Pr(e,t,i,n){var r=e.history,o=n&&n.origin;i==r.lastSelOp||o&&r.lastSelOrigin==o&&(r.lastModTime==r.lastSelTime&&r.lastOrigin==o||function(e,t,i,n){var r=t.charAt(0);return"*"==r||"+"==r&&i.ranges.length==n.ranges.length&&i.somethingSelected()==n.somethingSelected()&&new Date-e.history.lastSelTime<=(e.cm?e.cm.options.historyEventDelay:500)}(e,o,Y(r.done),t))?r.done[r.done.length-1]=t:Nr(t,r.done),r.lastSelTime=+new Date,r.lastSelOrigin=o,r.lastSelOp=i,n&&!1!==n.clearRedo&&Mr(r.undone)}function Nr(e,t){var i=Y(t);i&&i.ranges&&i.equals(e)||t.push(e)}function Ir(e,t,i,n){var r=t["spans_"+e.id],o=0;e.iter(Math.max(e.first,i),Math.min(e.first+e.size,n),function(i){i.markedSpans&&((r||(r=t["spans_"+e.id]={}))[o]=i.markedSpans),++o})}function jr(e){if(!e)return null;for(var t,i=0;i<e.length;++i)e[i].marker.explicitlyCleared?t||(t=e.slice(0,i)):t&&t.push(e[i]);return t?t.length?t:null:e}function Wr(e,t){var i=function(e,t){var i=t["spans_"+e.id];if(!i)return null;for(var n=[],r=0;r<t.text.length;++r)n.push(jr(i[r]));return n}(e,t),n=Ft(e,t);if(!i)return n;if(!n)return i;for(var r=0;r<i.length;++r){var o=i[r],s=n[r];if(o&&s)e:for(var a=0;a<s.length;++a){for(var l=s[a],c=0;c<o.length;++c)if(o[c].marker==l.marker)continue e;o.push(l)}else s&&(i[r]=s)}return i}function Hr(e,t,i){for(var n=[],r=0;r<e.length;++r){var o=e[r];if(o.ranges)n.push(i?yr.prototype.deepCopy.call(o):o);else{var s=o.changes,a=[];n.push({changes:a});for(var l=0;l<s.length;++l){var c=s[l],h=void 0;if(a.push({from:c.from,to:c.to,text:c.text}),t)for(var u in c)(h=u.match(/^spans_(\d+)$/))&&j(t,Number(h[1]))>-1&&(Y(a)[u]=c[u],delete c[u])}}}return n}function zr(e,t,i,n){if(n){var r=e.anchor;if(i){var o=et(t,r)<0;o!=et(i,r)<0?(r=t,t=i):o!=et(t,i)<0&&(t=i)}return new wr(r,t)}return new wr(i||t,t)}function Vr(e,t,i,n,r){null==r&&(r=e.cm&&(e.cm.display.shift||e.extend)),Yr(e,new yr([zr(e.sel.primary(),t,i,r)],0),n)}function Ur(e,t,i){for(var n=[],r=e.cm&&(e.cm.display.shift||e.extend),o=0;o<e.sel.ranges.length;o++)n[o]=zr(e.sel.ranges[o],t[o],null,r);var s=br(e.cm,n,e.sel.primIndex);Yr(e,s,i)}function qr(e,t,i,n){var r=e.sel.ranges.slice(0);r[t]=i,Yr(e,br(e.cm,r,e.sel.primIndex),n)}function Kr(e,t,i,n){Yr(e,Cr(t,i),n)}function Gr(e,t,i){var n=e.history.done,r=Y(n);r&&r.ranges?(n[n.length-1]=t,Qr(e,t,i)):Yr(e,t,i)}function Yr(e,t,i){Qr(e,t,i),Pr(e,e.sel,e.cm?e.cm.curOp.id:NaN,i)}function Qr(e,t,i){(ye(e,"beforeSelectionChange")||e.cm&&ye(e.cm,"beforeSelectionChange"))&&(t=function(e,t,i){var n={ranges:t.ranges,update:function(t){this.ranges=[];for(var i=0;i<t.length;i++)this.ranges[i]=new wr(st(e,t[i].anchor),st(e,t[i].head))},origin:i&&i.origin};return me(e,"beforeSelectionChange",e,n),e.cm&&me(e.cm,"beforeSelectionChange",e.cm,n),n.ranges!=t.ranges?br(e.cm,n.ranges,n.ranges.length-1):t}(e,t,i));var n=i&&i.bias||(et(t.primary().head,e.sel.primary().head)<0?-1:1);Xr(e,Zr(e,t,n,!0)),i&&!1===i.scroll||!e.cm||"nocursor"==e.cm.getOption("readOnly")||_n(e.cm)}function Xr(e,t){t.equals(e.sel)||(e.sel=t,e.cm&&(e.cm.curOp.updateInput=1,e.cm.curOp.selectionChanged=!0,ve(e.cm)),si(e,"cursorActivity",e))}function Jr(e){Xr(e,Zr(e,e.sel,null,!1))}function Zr(e,t,i,n){for(var r,o=0;o<t.ranges.length;o++){var s=t.ranges[o],a=t.ranges.length==e.sel.ranges.length&&e.sel.ranges[o],l=to(e,s.anchor,a&&a.anchor,i,n),c=to(e,s.head,a&&a.head,i,n);(r||l!=s.anchor||c!=s.head)&&(r||(r=t.ranges.slice(0,o)),r[o]=new wr(l,c))}return r?br(e.cm,r,t.primIndex):t}function eo(e,t,i,n,r){var o=Ue(e,t.line);if(o.markedSpans)for(var s=0;s<o.markedSpans.length;++s){var a=o.markedSpans[s],l=a.marker,c="selectLeft"in l?!l.selectLeft:l.inclusiveLeft,h="selectRight"in l?!l.selectRight:l.inclusiveRight;if((null==a.from||(c?a.from<=t.ch:a.from<t.ch))&&(null==a.to||(h?a.to>=t.ch:a.to>t.ch))){if(r&&(me(l,"beforeCursorEnter"),l.explicitlyCleared)){if(o.markedSpans){--s;continue}break}if(!l.atomic)continue;if(i){var u=l.find(n<0?1:-1),d=void 0;if((n<0?h:c)&&(u=io(e,u,-n,u&&u.line==t.line?o:null)),u&&u.line==t.line&&(d=et(u,i))&&(n<0?d<0:d>0))return eo(e,u,t,n,r)}var f=l.find(n<0?-1:1);return(n<0?c:h)&&(f=io(e,f,n,f.line==t.line?o:null)),f?eo(e,f,t,n,r):null}}return t}function to(e,t,i,n,r){var o=n||1,s=eo(e,t,i,o,r)||!r&&eo(e,t,i,o,!0)||eo(e,t,i,-o,r)||!r&&eo(e,t,i,-o,!0);return s||(e.cantEdit=!0,Ze(e.first,0))}function io(e,t,i,n){return i<0&&0==t.ch?t.line>e.first?st(e,Ze(t.line-1)):null:i>0&&t.ch==(n||Ue(e,t.line)).text.length?t.line<e.first+e.size-1?Ze(t.line+1,0):null:new Ze(t.line,t.ch+i)}function no(e){e.setSelection(Ze(e.firstLine(),0),Ze(e.lastLine()),z)}function ro(e,t,i){var n={canceled:!1,from:t.from,to:t.to,text:t.text,origin:t.origin,cancel:function(){return n.canceled=!0}};return i&&(n.update=function(t,i,r,o){t&&(n.from=st(e,t)),i&&(n.to=st(e,i)),r&&(n.text=r),void 0!==o&&(n.origin=o)}),me(e,"beforeChange",e,n),e.cm&&me(e.cm,"beforeChange",e.cm,n),n.canceled?(e.cm&&(e.cm.curOp.updateInput=2),null):{from:n.from,to:n.to,text:n.text,origin:n.origin}}function oo(e,t,i){if(e.cm){if(!e.cm.curOp)return Xn(e.cm,oo)(e,t,i);if(e.cm.state.suppressEdits)return}if(!(ye(e,"beforeChange")||e.cm&&ye(e.cm,"beforeChange"))||(t=ro(e,t,!0))){var n=bt&&!i&&function(e,t,i){var n=null;if(e.iter(t.line,i.line+1,function(e){if(e.markedSpans)for(var t=0;t<e.markedSpans.length;++t){var i=e.markedSpans[t].marker;!i.readOnly||n&&-1!=j(n,i)||(n||(n=[])).push(i)}}),!n)return null;for(var r=[{from:t,to:i}],o=0;o<n.length;++o)for(var s=n[o],a=s.find(0),l=0;l<r.length;++l){var c=r[l];if(!(et(c.to,a.from)<0||et(c.from,a.to)>0)){var h=[l,1],u=et(c.from,a.from),d=et(c.to,a.to);(u<0||!s.inclusiveLeft&&!u)&&h.push({from:c.from,to:a.from}),(d>0||!s.inclusiveRight&&!d)&&h.push({from:a.to,to:c.to}),r.splice.apply(r,h),l+=h.length-3}}return r}(e,t.from,t.to);if(n)for(var r=n.length-1;r>=0;--r)so(e,{from:n[r].from,to:n[r].to,text:r?[""]:t.text,origin:t.origin});else so(e,t)}}function so(e,t){if(1!=t.text.length||""!=t.text[0]||0!=et(t.from,t.to)){var i=xr(e,t);Or(e,t,i,e.cm?e.cm.curOp.id:NaN),co(e,t,i,Ft(e,t));var n=[];$r(e,function(e,i){i||-1!=j(n,e.history)||(po(e.history,t),n.push(e.history)),co(e,t,null,Ft(e,t))})}}function ao(e,t,i){var n=e.cm&&e.cm.state.suppressEdits;if(!n||i){for(var r,o=e.history,s=e.sel,a="undo"==t?o.done:o.undone,l="undo"==t?o.undone:o.done,c=0;c<a.length&&(r=a[c],i?!r.ranges||r.equals(e.sel):r.ranges);c++);if(c!=a.length){for(o.lastOrigin=o.lastSelOrigin=null;;){if(!(r=a.pop()).ranges){if(n)return void a.push(r);break}if(Nr(r,l),i&&!r.equals(e.sel))return void Yr(e,r,{clearRedo:!1});s=r}var h=[];Nr(s,l),l.push({changes:h,generation:o.generation}),o.generation=r.generation||++o.maxGeneration;for(var u=ye(e,"beforeChange")||e.cm&&ye(e.cm,"beforeChange"),d=function(i){var n=r.changes[i];if(n.origin=t,u&&!ro(e,n,!1))return a.length=0,{};h.push(Tr(e,n));var o=i?xr(e,n):Y(a);co(e,n,o,Wr(e,n)),!i&&e.cm&&e.cm.scrollIntoView({from:n.from,to:Ar(n)});var s=[];$r(e,function(e,t){t||-1!=j(s,e.history)||(po(e.history,n),s.push(e.history)),co(e,n,null,Wr(e,n))})},f=r.changes.length-1;f>=0;--f){var p=d(f);if(p)return p.v}}}}function lo(e,t){if(0!=t&&(e.first+=t,e.sel=new yr(Q(e.sel.ranges,function(e){return new wr(Ze(e.anchor.line+t,e.anchor.ch),Ze(e.head.line+t,e.head.ch))}),e.sel.primIndex),e.cm)){ln(e.cm,e.first,e.first-t,t);for(var i=e.cm.display,n=i.viewFrom;n<i.viewTo;n++)cn(e.cm,n,"gutter")}}function co(e,t,i,n){if(e.cm&&!e.cm.curOp)return Xn(e.cm,co)(e,t,i,n);if(t.to.line<e.first)lo(e,t.text.length-1-(t.to.line-t.from.line));else if(!(t.from.line>e.lastLine())){if(t.from.line<e.first){var r=t.text.length-1-(e.first-t.from.line);lo(e,r),t={from:Ze(e.first,0),to:Ze(t.to.line+r,t.to.ch),text:[Y(t.text)],origin:t.origin}}var o=e.lastLine();t.to.line>o&&(t={from:t.from,to:Ze(o,Ue(e,o).text.length),text:[t.text[0]],origin:t.origin}),t.removed=qe(e,t.from,t.to),i||(i=xr(e,t)),e.cm?function(e,t,i){var n=e.doc,r=e.display,o=t.from,s=t.to,a=!1,l=o.line;e.options.lineWrapping||(l=Ye(Pt(Ue(n,o.line))),n.iter(l,s.line+1,function(e){if(e==r.maxLine)return a=!0,!0})),n.sel.contains(t.from,t.to)>-1&&ve(e),Dr(n,t,i,rn(e)),e.options.lineWrapping||(n.iter(l,o.line+t.text.length,function(e){var t=zt(e);t>r.maxLineLength&&(r.maxLine=e,r.maxLineLength=t,r.maxLineChanged=!0,a=!1)}),a&&(e.curOp.updateMaxLine=!0)),function(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontier<t-10)){for(var i=e.first,n=t-1;n>i;n--){var r=Ue(e,n).stateAfter;if(r&&(!(r instanceof lt)||n+r.lookAhead<t)){i=n+1;break}}e.highlightFrontier=Math.min(e.highlightFrontier,i)}}(n,o.line),er(e,400);var c=t.text.length-(s.line-o.line)-1;t.full?ln(e):o.line!=s.line||1!=t.text.length||_r(e.doc,t)?ln(e,o.line,s.line+1,c):cn(e,o.line,"text");var h=ye(e,"changes"),u=ye(e,"change");if(u||h){var d={from:o,to:s,text:t.text,removed:t.removed,origin:t.origin};u&&si(e,"change",e,d),h&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(d)}e.display.selForContextMenu=null}(e.cm,t,n):Dr(e,t,n),Qr(e,i,z),e.cantEdit&&to(e,Ze(e.firstLine(),0))&&(e.cantEdit=!1)}}function ho(e,t,i,n,r){var o;n||(n=i),et(n,i)<0&&(i=(o=[n,i])[0],n=o[1]),"string"==typeof t&&(t=e.splitLines(t)),oo(e,{from:i,to:n,text:t,origin:r})}function uo(e,t,i,n){i<e.line?e.line+=n:t<e.line&&(e.line=t,e.ch=0)}function fo(e,t,i,n){for(var r=0;r<e.length;++r){var o=e[r],s=!0;if(o.ranges){o.copied||((o=e[r]=o.deepCopy()).copied=!0);for(var a=0;a<o.ranges.length;a++)uo(o.ranges[a].anchor,t,i,n),uo(o.ranges[a].head,t,i,n)}else{for(var l=0;l<o.changes.length;++l){var c=o.changes[l];if(i<c.from.line)c.from=Ze(c.from.line+n,c.from.ch),c.to=Ze(c.to.line+n,c.to.ch);else if(t<=c.to.line){s=!1;break}}s||(e.splice(0,r+1),r=0)}}}function po(e,t){var i=t.from.line,n=t.to.line,r=t.text.length-(n-i)-1;fo(e.done,i,n,r),fo(e.undone,i,n,r)}function mo(e,t,i,n){var r=t,o=t;return"number"==typeof t?o=Ue(e,ot(e,t)):r=Ye(t),null==r?null:(n(o,r)&&e.cm&&cn(e.cm,r,i),o)}function go(e){this.lines=e,this.parent=null;for(var t=0,i=0;i<e.length;++i)e[i].parent=this,t+=e[i].height;this.height=t}function vo(e){this.children=e;for(var t=0,i=0,n=0;n<e.length;++n){var r=e[n];t+=r.chunkSize(),i+=r.height,r.parent=this}this.size=t,this.height=i,this.parent=null}wr.prototype.from=function(){return rt(this.anchor,this.head)},wr.prototype.to=function(){return nt(this.anchor,this.head)},wr.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch},go.prototype={chunkSize:function(){return this.lines.length},removeInner:function(e,t){for(var i=e,n=e+t;i<n;++i){var r=this.lines[i];this.height-=r.height,qt(r),si(r,"delete")}this.lines.splice(e,t)},collapse:function(e){e.push.apply(e,this.lines)},insertInner:function(e,t,i){this.height+=i,this.lines=this.lines.slice(0,e).concat(t).concat(this.lines.slice(e));for(var n=0;n<t.length;++n)t[n].parent=this},iterN:function(e,t,i){for(var n=e+t;e<n;++e)if(i(this.lines[e]))return!0}},vo.prototype={chunkSize:function(){return this.size},removeInner:function(e,t){this.size-=t;for(var i=0;i<this.children.length;++i){var n=this.children[i],r=n.chunkSize();if(e<r){var o=Math.min(t,r-e),s=n.height;if(n.removeInner(e,o),this.height-=s-n.height,r==o&&(this.children.splice(i--,1),n.parent=null),0==(t-=o))break;e=0}else e-=r}if(this.size-t<25&&(this.children.length>1||!(this.children[0]instanceof go))){var a=[];this.collapse(a),this.children=[new go(a)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t<this.children.length;++t)this.children[t].collapse(e)},insertInner:function(e,t,i){this.size+=t.length,this.height+=i;for(var n=0;n<this.children.length;++n){var r=this.children[n],o=r.chunkSize();if(e<=o){if(r.insertInner(e,t,i),r.lines&&r.lines.length>50){for(var s=r.lines.length%25+25,a=s;a<r.lines.length;){var l=new go(r.lines.slice(a,a+=25));r.height-=l.height,this.children.splice(++n,0,l),l.parent=this}r.lines=r.lines.slice(0,s),this.maybeSpill()}break}e-=o}},maybeSpill:function(){if(!(this.children.length<=10)){var e=this;do{var t=e.children.splice(e.children.length-5,5),i=new vo(t);if(e.parent){e.size-=i.size,e.height-=i.height;var n=j(e.parent.children,e);e.parent.children.splice(n+1,0,i)}else{var r=new vo(e.children);r.parent=e,e.children=[r,i],e=r}i.parent=e.parent}while(e.children.length>10);e.parent.maybeSpill()}},iterN:function(e,t,i){for(var n=0;n<this.children.length;++n){var r=this.children[n],o=r.chunkSize();if(e<o){var s=Math.min(t,o-e);if(r.iterN(e,s,i))return!0;if(0==(t-=s))break;e=0}else e-=o}}};var yo=function(e,t,i){if(i)for(var n in i)i.hasOwnProperty(n)&&(this[n]=i[n]);this.doc=e,this.node=t};function wo(e,t,i){Ht(t)<(e.curOp&&e.curOp.scrollTop||e.doc.scrollTop)&&kn(e,i)}yo.prototype.clear=function(){var e=this.doc.cm,t=this.line.widgets,i=this.line,n=Ye(i);if(null!=n&&t){for(var r=0;r<t.length;++r)t[r]==this&&t.splice(r--,1);t.length||(i.widgets=null);var o=wi(this);Ge(i,Math.max(0,i.height-o)),e&&(Qn(e,function(){wo(e,i,-o),cn(e,n,"widget")}),si(e,"lineWidgetCleared",e,this,n))}},yo.prototype.changed=function(){var e=this,t=this.height,i=this.doc.cm,n=this.line;this.height=null;var r=wi(this)-t;r&&(jt(this.doc,n)||Ge(n,n.height+r),i&&Qn(i,function(){i.curOp.forceUpdate=!0,wo(i,n,r),si(i,"lineWidgetChanged",i,e,Ye(n))}))},we(yo);var bo=0,Co=function(e,t){this.lines=[],this.type=t,this.doc=e,this.id=++bo};function Ao(e,t,i,n,r){if(n&&n.shared)return function(e,t,i,n,r){(n=P(n)).shared=!1;var o=[Ao(e,t,i,n,r)],s=o[0],a=n.widgetNode;return $r(e,function(e){a&&(n.widgetNode=a.cloneNode(!0)),o.push(Ao(e,st(e,t),st(e,i),n,r));for(var l=0;l<e.linked.length;++l)if(e.linked[l].isParent)return;s=Y(o)}),new Eo(o,s)}(e,t,i,n,r);if(e.cm&&!e.cm.curOp)return Xn(e.cm,Ao)(e,t,i,n,r);var o=new Co(e,r),s=et(t,i);if(n&&P(n,o,!1),s>0||0==s&&!1!==o.clearWhenEmpty)return o;if(o.replacedWith&&(o.collapsed=!0,o.widgetNode=$("span",[o.replacedWith],"CodeMirror-widget"),n.handleMouseEvents||o.widgetNode.setAttribute("cm-ignore-events","true"),n.insertLeft&&(o.widgetNode.insertLeft=!0)),o.collapsed){if(Ot(e,t.line,t,i,o)||t.line!=i.line&&Ot(e,i.line,t,i,o))throw new Error("Inserting collapsed marker partially overlapping an existing one");Ct=!0}o.addToHistory&&Or(e,{from:t,to:i,origin:"markText"},e.sel,NaN);var a,l=t.line,c=e.cm;if(e.iter(l,i.line+1,function(n){c&&o.collapsed&&!c.options.lineWrapping&&Pt(n)==c.display.maxLine&&(a=!0),o.collapsed&&l!=t.line&&Ge(n,0),function(e,t,i){var n=i&&window.WeakSet&&(i.markedSpans||(i.markedSpans=new WeakSet));n&&n.has(e.markedSpans)?e.markedSpans.push(t):(e.markedSpans=e.markedSpans?e.markedSpans.concat([t]):[t],n&&n.add(e.markedSpans)),t.marker.attachLine(e)}(n,new At(o,l==t.line?t.ch:null,l==i.line?i.ch:null),e.cm&&e.cm.curOp),++l}),o.collapsed&&e.iter(t.line,i.line+1,function(t){jt(e,t)&&Ge(t,0)}),o.clearOnEnter&&de(o,"beforeCursorEnter",function(){return o.clear()}),o.readOnly&&(bt=!0,(e.history.done.length||e.history.undone.length)&&e.clearHistory()),o.collapsed&&(o.id=++bo,o.atomic=!0),c){if(a&&(c.curOp.updateMaxLine=!0),o.collapsed)ln(c,t.line,i.line+1);else if(o.className||o.startStyle||o.endStyle||o.css||o.attributes||o.title)for(var h=t.line;h<=i.line;h++)cn(c,h,"text");o.atomic&&Jr(c.doc),si(c,"markerAdded",c,o)}return o}Co.prototype.clear=function(){if(!this.explicitlyCleared){var e=this.doc.cm,t=e&&!e.curOp;if(t&&zn(e),ye(this,"clear")){var i=this.find();i&&si(this,"clear",i.from,i.to)}for(var n=null,r=null,o=0;o<this.lines.length;++o){var s=this.lines[o],a=Et(s.markedSpans,this);e&&!this.collapsed?cn(e,Ye(s),"text"):e&&(null!=a.to&&(r=Ye(s)),null!=a.from&&(n=Ye(s))),s.markedSpans=xt(s.markedSpans,a),null==a.from&&this.collapsed&&!jt(this.doc,s)&&e&&Ge(s,Zi(e.display))}if(e&&this.collapsed&&!e.options.lineWrapping)for(var l=0;l<this.lines.length;++l){var c=Pt(this.lines[l]),h=zt(c);h>e.display.maxLineLength&&(e.display.maxLine=c,e.display.maxLineLength=h,e.display.maxLineChanged=!0)}null!=n&&e&&this.collapsed&&ln(e,n,r+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&Jr(e.doc)),e&&si(e,"markerCleared",e,this,n,r),t&&Vn(e),this.parent&&this.parent.clear()}},Co.prototype.find=function(e,t){var i,n;null==e&&"bookmark"==this.type&&(e=1);for(var r=0;r<this.lines.length;++r){var o=this.lines[r],s=Et(o.markedSpans,this);if(null!=s.from&&(i=Ze(t?o:Ye(o),s.from),-1==e))return i;if(null!=s.to&&(n=Ze(t?o:Ye(o),s.to),1==e))return n}return i&&{from:i,to:n}},Co.prototype.changed=function(){var e=this,t=this.find(-1,!0),i=this,n=this.doc.cm;t&&n&&Qn(n,function(){var r=t.line,o=Ye(t.line),s=Di(n,o);if(s&&(Oi(s),n.curOp.selectionChanged=n.curOp.forceUpdate=!0),n.curOp.updateMaxLine=!0,!jt(i.doc,r)&&null!=i.height){var a=i.height;i.height=null;var l=wi(i)-a;l&&Ge(r,r.height+l)}si(n,"markerChanged",n,e)})},Co.prototype.attachLine=function(e){if(!this.lines.length&&this.doc.cm){var t=this.doc.cm.curOp;t.maybeHiddenMarkers&&-1!=j(t.maybeHiddenMarkers,this)||(t.maybeUnhiddenMarkers||(t.maybeUnhiddenMarkers=[])).push(this)}this.lines.push(e)},Co.prototype.detachLine=function(e){if(this.lines.splice(j(this.lines,e),1),!this.lines.length&&this.doc.cm){var t=this.doc.cm.curOp;(t.maybeHiddenMarkers||(t.maybeHiddenMarkers=[])).push(this)}},we(Co);var Eo=function(e,t){this.markers=e,this.primary=t;for(var i=0;i<e.length;++i)e[i].parent=this};function xo(e){return e.findMarks(Ze(e.first,0),e.clipPos(Ze(e.lastLine())),function(e){return e.parent})}function Fo(e){for(var t=function(t){var i=e[t],n=[i.primary.doc];$r(i.primary.doc,function(e){return n.push(e)});for(var r=0;r<i.markers.length;r++){var o=i.markers[r];-1==j(n,o.doc)&&(o.parent=null,i.markers.splice(r--,1))}},i=0;i<e.length;i++)t(i)}Eo.prototype.clear=function(){if(!this.explicitlyCleared){this.explicitlyCleared=!0;for(var e=0;e<this.markers.length;++e)this.markers[e].clear();si(this,"clear")}},Eo.prototype.find=function(e,t){return this.primary.find(e,t)},we(Eo);var So=0,ko=function(e,t,i,n,r){if(!(this instanceof ko))return new ko(e,t,i,n,r);null==i&&(i=0),vo.call(this,[new go([new Ut("",null)])]),this.first=i,this.scrollTop=this.scrollLeft=0,this.cantEdit=!1,this.cleanGeneration=1,this.modeFrontier=this.highlightFrontier=i;var o=Ze(i,0);this.sel=Cr(o),this.history=new Rr(null),this.id=++So,this.modeOption=t,this.lineSep=n,this.direction="rtl"==r?"rtl":"ltr",this.extend=!1,"string"==typeof e&&(e=this.splitLines(e)),Dr(this,{from:o,to:o,text:e}),Yr(this,Cr(o),z)};ko.prototype=J(vo.prototype,{constructor:ko,iter:function(e,t,i){i?this.iterN(e-this.first,t-e,i):this.iterN(this.first,this.first+this.size,e)},insert:function(e,t){for(var i=0,n=0;n<t.length;++n)i+=t[n].height;this.insertInner(e-this.first,t,i)},remove:function(e,t){this.removeInner(e-this.first,t)},getValue:function(e){var t=Ke(this,this.first,this.first+this.size);return!1===e?t:t.join(e||this.lineSeparator())},setValue:Zn(function(e){var t=Ze(this.first,0),i=this.first+this.size-1;oo(this,{from:t,to:Ze(i,Ue(this,i).text.length),text:this.splitLines(e),origin:"setValue",full:!0},!0),this.cm&&Dn(this.cm,0,0),Yr(this,Cr(t),z)}),replaceRange:function(e,t,i,n){t=st(this,t),i=i?st(this,i):t,ho(this,e,t,i,n)},getRange:function(e,t,i){var n=qe(this,st(this,e),st(this,t));return!1===i?n:""===i?n.join(""):n.join(i||this.lineSeparator())},getLine:function(e){var t=this.getLineHandle(e);return t&&t.text},getLineHandle:function(e){if(Xe(this,e))return Ue(this,e)},getLineNumber:function(e){return Ye(e)},getLineHandleVisualStart:function(e){return"number"==typeof e&&(e=Ue(this,e)),Pt(e)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(e){return st(this,e)},getCursor:function(e){var t=this.sel.primary();return null==e||"head"==e?t.head:"anchor"==e?t.anchor:"end"==e||"to"==e||!1===e?t.to():t.from()},listSelections:function(){return this.sel.ranges},somethingSelected:function(){return this.sel.somethingSelected()},setCursor:Zn(function(e,t,i){Kr(this,st(this,"number"==typeof e?Ze(e,t||0):e),null,i)}),setSelection:Zn(function(e,t,i){Kr(this,st(this,e),st(this,t||e),i)}),extendSelection:Zn(function(e,t,i){Vr(this,st(this,e),t&&st(this,t),i)}),extendSelections:Zn(function(e,t){Ur(this,at(this,e),t)}),extendSelectionsBy:Zn(function(e,t){var i=Q(this.sel.ranges,e);Ur(this,at(this,i),t)}),setSelections:Zn(function(e,t,i){if(e.length){for(var n=[],r=0;r<e.length;r++)n[r]=new wr(st(this,e[r].anchor),st(this,e[r].head||e[r].anchor));null==t&&(t=Math.min(e.length-1,this.sel.primIndex)),Yr(this,br(this.cm,n,t),i)}}),addSelection:Zn(function(e,t,i){var n=this.sel.ranges.slice(0);n.push(new wr(st(this,e),st(this,t||e))),Yr(this,br(this.cm,n,n.length-1),i)}),getSelection:function(e){for(var t,i=this.sel.ranges,n=0;n<i.length;n++){var r=qe(this,i[n].from(),i[n].to());t=t?t.concat(r):r}return!1===e?t:t.join(e||this.lineSeparator())},getSelections:function(e){for(var t=[],i=this.sel.ranges,n=0;n<i.length;n++){var r=qe(this,i[n].from(),i[n].to());!1!==e&&(r=r.join(e||this.lineSeparator())),t[n]=r}return t},replaceSelection:function(e,t,i){for(var n=[],r=0;r<this.sel.ranges.length;r++)n[r]=e;this.replaceSelections(n,t,i||"+input")},replaceSelections:Zn(function(e,t,i){for(var n=[],r=this.sel,o=0;o<r.ranges.length;o++){var s=r.ranges[o];n[o]={from:s.from(),to:s.to(),text:this.splitLines(e[o]),origin:i}}for(var a=t&&"end"!=t&&function(e,t,i){for(var n=[],r=Ze(e.first,0),o=r,s=0;s<t.length;s++){var a=t[s],l=Fr(a.from,r,o),c=Fr(Ar(a),r,o);if(r=a.to,o=c,"around"==i){var h=e.sel.ranges[s],u=et(h.head,h.anchor)<0;n[s]=new wr(u?c:l,u?l:c)}else n[s]=new wr(l,l)}return new yr(n,e.sel.primIndex)}(this,n,t),l=n.length-1;l>=0;l--)oo(this,n[l]);a?Gr(this,a):this.cm&&_n(this.cm)}),undo:Zn(function(){ao(this,"undo")}),redo:Zn(function(){ao(this,"redo")}),undoSelection:Zn(function(){ao(this,"undo",!0)}),redoSelection:Zn(function(){ao(this,"redo",!0)}),setExtending:function(e){this.extend=e},getExtending:function(){return this.extend},historySize:function(){for(var e=this.history,t=0,i=0,n=0;n<e.done.length;n++)e.done[n].ranges||++t;for(var r=0;r<e.undone.length;r++)e.undone[r].ranges||++i;return{undo:t,redo:i}},clearHistory:function(){var e=this;this.history=new Rr(this.history),$r(this,function(t){return t.history=e.history},!0)},markClean:function(){this.cleanGeneration=this.changeGeneration(!0)},changeGeneration:function(e){return e&&(this.history.lastOp=this.history.lastSelOp=this.history.lastOrigin=null),this.history.generation},isClean:function(e){return this.history.generation==(e||this.cleanGeneration)},getHistory:function(){return{done:Hr(this.history.done),undone:Hr(this.history.undone)}},setHistory:function(e){var t=this.history=new Rr(this.history);t.done=Hr(e.done.slice(0),null,!0),t.undone=Hr(e.undone.slice(0),null,!0)},setGutterMarker:Zn(function(e,t,i){return mo(this,e,"gutter",function(e){var n=e.gutterMarkers||(e.gutterMarkers={});return n[t]=i,!i&&ie(n)&&(e.gutterMarkers=null),!0})}),clearGutter:Zn(function(e){var t=this;this.iter(function(i){i.gutterMarkers&&i.gutterMarkers[e]&&mo(t,i,"gutter",function(){return i.gutterMarkers[e]=null,ie(i.gutterMarkers)&&(i.gutterMarkers=null),!0})})}),lineInfo:function(e){var t;if("number"==typeof e){if(!Xe(this,e))return null;if(t=e,!(e=Ue(this,e)))return null}else if(null==(t=Ye(e)))return null;return{line:t,handle:e,text:e.text,gutterMarkers:e.gutterMarkers,textClass:e.textClass,bgClass:e.bgClass,wrapClass:e.wrapClass,widgets:e.widgets}},addLineClass:Zn(function(e,t,i){return mo(this,e,"gutter"==t?"gutter":"class",function(e){var n="text"==t?"textClass":"background"==t?"bgClass":"gutter"==t?"gutterClass":"wrapClass";if(e[n]){if(x(i).test(e[n]))return!1;e[n]+=" "+i}else e[n]=i;return!0})}),removeLineClass:Zn(function(e,t,i){return mo(this,e,"gutter"==t?"gutter":"class",function(e){var n="text"==t?"textClass":"background"==t?"bgClass":"gutter"==t?"gutterClass":"wrapClass",r=e[n];if(!r)return!1;if(null==i)e[n]=null;else{var o=r.match(x(i));if(!o)return!1;var s=o.index+o[0].length;e[n]=r.slice(0,o.index)+(o.index&&s!=r.length?" ":"")+r.slice(s)||null}return!0})}),addLineWidget:Zn(function(e,t,i){return function(e,t,i,n){var r=new yo(e,i,n),o=e.cm;return o&&r.noHScroll&&(o.display.alignWidgets=!0),mo(e,t,"widget",function(t){var i=t.widgets||(t.widgets=[]);if(null==r.insertAt?i.push(r):i.splice(Math.min(i.length,Math.max(0,r.insertAt)),0,r),r.line=t,o&&!jt(e,t)){var n=Ht(t)<e.scrollTop;Ge(t,t.height+wi(r)),n&&kn(o,r.height),o.curOp.forceUpdate=!0}return!0}),o&&si(o,"lineWidgetAdded",o,r,"number"==typeof t?t:Ye(t)),r}(this,e,t,i)}),removeLineWidget:function(e){e.clear()},markText:function(e,t,i){return Ao(this,st(this,e),st(this,t),i,i&&i.type||"range")},setBookmark:function(e,t){var i={replacedWith:t&&(null==t.nodeType?t.widget:t),insertLeft:t&&t.insertLeft,clearWhenEmpty:!1,shared:t&&t.shared,handleMouseEvents:t&&t.handleMouseEvents};return Ao(this,e=st(this,e),e,i,"bookmark")},findMarksAt:function(e){var t=[],i=Ue(this,(e=st(this,e)).line).markedSpans;if(i)for(var n=0;n<i.length;++n){var r=i[n];(null==r.from||r.from<=e.ch)&&(null==r.to||r.to>=e.ch)&&t.push(r.marker.parent||r.marker)}return t},findMarks:function(e,t,i){e=st(this,e),t=st(this,t);var n=[],r=e.line;return this.iter(e.line,t.line+1,function(o){var s=o.markedSpans;if(s)for(var a=0;a<s.length;a++){var l=s[a];null!=l.to&&r==e.line&&e.ch>=l.to||null==l.from&&r!=e.line||null!=l.from&&r==t.line&&l.from>=t.ch||i&&!i(l.marker)||n.push(l.marker.parent||l.marker)}++r}),n},getAllMarks:function(){var e=[];return this.iter(function(t){var i=t.markedSpans;if(i)for(var n=0;n<i.length;++n)null!=i[n].from&&e.push(i[n].marker)}),e},posFromIndex:function(e){var t,i=this.first,n=this.lineSeparator().length;return this.iter(function(r){var o=r.text.length+n;if(o>e)return t=e,!0;e-=o,++i}),st(this,Ze(i,t))},indexFromPos:function(e){var t=(e=st(this,e)).ch;if(e.line<this.first||e.ch<0)return 0;var i=this.lineSeparator().length;return this.iter(this.first,e.line,function(e){t+=e.text.length+i}),t},copy:function(e){var t=new ko(Ke(this,this.first,this.first+this.size),this.modeOption,this.first,this.lineSep,this.direction);return t.scrollTop=this.scrollTop,t.scrollLeft=this.scrollLeft,t.sel=this.sel,t.extend=!1,e&&(t.history.undoDepth=this.history.undoDepth,t.setHistory(this.getHistory())),t},linkedDoc:function(e){e||(e={});var t=this.first,i=this.first+this.size;null!=e.from&&e.from>t&&(t=e.from),null!=e.to&&e.to<i&&(i=e.to);var n=new ko(Ke(this,t,i),e.mode||this.modeOption,t,this.lineSep,this.direction);return e.sharedHist&&(n.history=this.history),(this.linked||(this.linked=[])).push({doc:n,sharedHist:e.sharedHist}),n.linked=[{doc:this,isParent:!0,sharedHist:e.sharedHist}],function(e,t){for(var i=0;i<t.length;i++){var n=t[i],r=n.find(),o=e.clipPos(r.from),s=e.clipPos(r.to);if(et(o,s)){var a=Ao(e,o,s,n.primary,n.primary.type);n.markers.push(a),a.parent=n}}}(n,xo(this)),n},unlinkDoc:function(e){if(e instanceof Es&&(e=e.doc),this.linked)for(var t=0;t<this.linked.length;++t){var i=this.linked[t];if(i.doc==e){this.linked.splice(t,1),e.unlinkDoc(this),Fo(xo(this));break}}if(e.history==this.history){var n=[e.id];$r(e,function(e){return n.push(e.id)},!0),e.history=new Rr(null),e.history.done=Hr(this.history.done,n),e.history.undone=Hr(this.history.undone,n)}},iterLinkedDocs:function(e){$r(this,e)},getMode:function(){return this.mode},getEditor:function(){return this.cm},splitLines:function(e){return this.lineSep?e.split(this.lineSep):Le(e)},lineSeparator:function(){return this.lineSep||"\n"},setDirection:Zn(function(e){"rtl"!=e&&(e="ltr"),e!=this.direction&&(this.direction=e,this.iter(function(e){return e.order=null}),this.cm&&function(e){Qn(e,function(){Br(e),ln(e)})}(this.cm))})}),ko.prototype.eachLine=ko.prototype.iter;var _o=0;function Do(e){var t=this;if($o(t),!ge(t,e)&&!bi(t.display,e)){be(e),s&&(_o=+new Date);var i=sn(t,e,!0),n=e.dataTransfer.files;if(i&&!t.isReadOnly())if(n&&n.length&&window.FileReader&&window.File)for(var r=n.length,o=Array(r),a=0,l=function(){++a==r&&Xn(t,function(){var e={from:i=st(t.doc,i),to:i,text:t.doc.splitLines(o.filter(function(e){return null!=e}).join(t.doc.lineSeparator())),origin:"paste"};oo(t.doc,e),Gr(t.doc,Cr(st(t.doc,i),st(t.doc,Ar(e))))})()},c=function(e,i){if(t.options.allowDropFileTypes&&-1==j(t.options.allowDropFileTypes,e.type))l();else{var n=new FileReader;n.onerror=function(){return l()},n.onload=function(){var e=n.result;/[\x00-\x08\x0e-\x1f]{2}/.test(e)?l():(o[i]=e,l())},n.readAsText(e)}},h=0;h<n.length;h++)c(n[h],h);else{if(t.state.draggingText&&t.doc.sel.contains(i)>-1)return t.state.draggingText(e),void setTimeout(function(){return t.display.input.focus()},20);try{var u=e.dataTransfer.getData("Text");if(u){var d;if(t.state.draggingText&&!t.state.draggingText.copy&&(d=t.listSelections()),Qr(t.doc,Cr(i,i)),d)for(var f=0;f<d.length;++f)ho(t.doc,"",d[f].anchor,d[f].head,"drag");t.replaceSelection(u,"around","paste"),t.display.input.focus()}}catch(e){}}}}function $o(e){e.display.dragCursor&&(e.display.lineSpace.removeChild(e.display.dragCursor),e.display.dragCursor=null)}function Lo(e){if(document.getElementsByClassName){for(var t=document.getElementsByClassName("CodeMirror"),i=[],n=0;n<t.length;n++){var r=t[n].CodeMirror;r&&i.push(r)}i.length&&i[0].operation(function(){for(var t=0;t<i.length;t++)e(i[t])})}}var Bo=!1;function Ro(){Bo||(function(){var e;de(window,"resize",function(){null==e&&(e=setTimeout(function(){e=null,Lo(To)},100))}),de(window,"blur",function(){return Lo(An)})}(),Bo=!0)}function To(e){var t=e.display;t.cachedCharWidth=t.cachedTextHeight=t.cachedPaddingH=null,t.scrollbarsClipped=!1,e.setSize()}for(var Mo={3:"Pause",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"=",91:"Mod",92:"Mod",93:"Mod",106:"*",107:"=",109:"-",110:".",111:"/",145:"ScrollLock",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",224:"Mod",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home",63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"},Oo=0;Oo<10;Oo++)Mo[Oo+48]=Mo[Oo+96]=String(Oo);for(var Po=65;Po<=90;Po++)Mo[Po]=String.fromCharCode(Po);for(var No=1;No<=12;No++)Mo[No+111]=Mo[No+63235]="F"+No;var Io={};function jo(e){var t,i,n,r,o=e.split(/-(?!$)/);e=o[o.length-1];for(var s=0;s<o.length-1;s++){var a=o[s];if(/^(cmd|meta|m)$/i.test(a))r=!0;else if(/^a(lt)?$/i.test(a))t=!0;else if(/^(c|ctrl|control)$/i.test(a))i=!0;else{if(!/^s(hift)?$/i.test(a))throw new Error("Unrecognized modifier name: "+a);n=!0}}return t&&(e="Alt-"+e),i&&(e="Ctrl-"+e),r&&(e="Cmd-"+e),n&&(e="Shift-"+e),e}function Wo(e){var t={};for(var i in e)if(e.hasOwnProperty(i)){var n=e[i];if(/^(name|fallthrough|(de|at)tach)$/.test(i))continue;if("..."==n){delete e[i];continue}for(var r=Q(i.split(" "),jo),o=0;o<r.length;o++){var s=void 0,a=void 0;o==r.length-1?(a=r.join(" "),s=n):(a=r.slice(0,o+1).join(" "),s="...");var l=t[a];if(l){if(l!=s)throw new Error("Inconsistent bindings for "+a)}else t[a]=s}delete e[i]}for(var c in t)e[c]=t[c];return e}function Ho(e,t,i,n){var r=(t=qo(t)).call?t.call(e,n):t[e];if(!1===r)return"nothing";if("..."===r)return"multi";if(null!=r&&i(r))return"handled";if(t.fallthrough){if("[object Array]"!=Object.prototype.toString.call(t.fallthrough))return Ho(e,t.fallthrough,i,n);for(var o=0;o<t.fallthrough.length;o++){var s=Ho(e,t.fallthrough[o],i,n);if(s)return s}}}function zo(e){var t="string"==typeof e?e:Mo[e.keyCode];return"Ctrl"==t||"Alt"==t||"Shift"==t||"Mod"==t}function Vo(e,t,i){var n=e;return t.altKey&&"Alt"!=n&&(e="Alt-"+e),(A?t.metaKey:t.ctrlKey)&&"Ctrl"!=n&&(e="Ctrl-"+e),(A?t.ctrlKey:t.metaKey)&&"Mod"!=n&&(e="Cmd-"+e),!i&&t.shiftKey&&"Shift"!=n&&(e="Shift-"+e),e}function Uo(e,t){if(u&&34==e.keyCode&&e.char)return!1;var i=Mo[e.keyCode];return null!=i&&!e.altGraphKey&&(3==e.keyCode&&e.code&&(i=e.code),Vo(i,e,t))}function qo(e){return"string"==typeof e?Io[e]:e}function Ko(e,t){for(var i=e.doc.sel.ranges,n=[],r=0;r<i.length;r++){for(var o=t(i[r]);n.length&&et(o.from,Y(n).to)<=0;){var s=n.pop();if(et(s.from,o.from)<0){o.from=s.from;break}}n.push(o)}Qn(e,function(){for(var t=n.length-1;t>=0;t--)ho(e.doc,"",n[t].from,n[t].to,"+delete");_n(e)})}function Go(e,t,i){var n=oe(e.text,t+i,i);return n<0||n>e.text.length?null:n}function Yo(e,t,i){var n=Go(e,t.ch,i);return null==n?null:new Ze(t.line,n,i<0?"after":"before")}function Qo(e,t,i,n,r){if(e){"rtl"==t.doc.direction&&(r=-r);var o=he(i,t.doc.direction);if(o){var s,a=r<0?Y(o):o[0],l=r<0==(1==a.level),c=l?"after":"before";if(a.level>0||"rtl"==t.doc.direction){var h=$i(t,i);s=r<0?i.text.length-1:0;var u=Li(t,h,s).top;s=se(function(e){return Li(t,h,e).top==u},r<0==(1==a.level)?a.from:a.to-1,s),"before"==c&&(s=Go(i,s,1))}else s=r<0?a.to:a.from;return new Ze(n,s,c)}}return new Ze(n,r<0?i.text.length:0,r<0?"before":"after")}Io.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"},Io.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Up":"goLineUp","Ctrl-Down":"goLineDown","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection","Alt-U":"redoSelection",fallthrough:"basic"},Io.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars","Ctrl-O":"openLine"},Io.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Home":"goDocStart","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineLeft","Cmd-Right":"goLineRight","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]},Io.default=y?Io.macDefault:Io.pcDefault;var Xo={selectAll:no,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),z)},killLine:function(e){return Ko(e,function(t){if(t.empty()){var i=Ue(e.doc,t.head.line).text.length;return t.head.ch==i&&t.head.line<e.lastLine()?{from:t.head,to:Ze(t.head.line+1,0)}:{from:t.head,to:Ze(t.head.line,i)}}return{from:t.from(),to:t.to()}})},deleteLine:function(e){return Ko(e,function(t){return{from:Ze(t.from().line,0),to:st(e.doc,Ze(t.to().line+1,0))}})},delLineLeft:function(e){return Ko(e,function(e){return{from:Ze(e.from().line,0),to:e.from()}})},delWrappedLineLeft:function(e){return Ko(e,function(t){var i=e.charCoords(t.head,"div").top+5,n=e.coordsChar({left:0,top:i},"div");return{from:n,to:t.from()}})},delWrappedLineRight:function(e){return Ko(e,function(t){var i=e.charCoords(t.head,"div").top+5,n=e.coordsChar({left:e.display.lineDiv.offsetWidth+100,top:i},"div");return{from:t.from(),to:n}})},undo:function(e){return e.undo()},redo:function(e){return e.redo()},undoSelection:function(e){return e.undoSelection()},redoSelection:function(e){return e.redoSelection()},goDocStart:function(e){return e.extendSelection(Ze(e.firstLine(),0))},goDocEnd:function(e){return e.extendSelection(Ze(e.lastLine()))},goLineStart:function(e){return e.extendSelectionsBy(function(t){return Jo(e,t.head.line)},{origin:"+move",bias:1})},goLineStartSmart:function(e){return e.extendSelectionsBy(function(t){return Zo(e,t.head)},{origin:"+move",bias:1})},goLineEnd:function(e){return e.extendSelectionsBy(function(t){return function(e,t){var i=Ue(e.doc,t),n=function(e){for(var t;t=Tt(e);)e=t.find(1,!0).line;return e}(i);return n!=i&&(t=Ye(n)),Qo(!0,e,i,t,-1)}(e,t.head.line)},{origin:"+move",bias:-1})},goLineRight:function(e){return e.extendSelectionsBy(function(t){var i=e.cursorCoords(t.head,"div").top+5;return e.coordsChar({left:e.display.lineDiv.offsetWidth+100,top:i},"div")},U)},goLineLeft:function(e){return e.extendSelectionsBy(function(t){var i=e.cursorCoords(t.head,"div").top+5;return e.coordsChar({left:0,top:i},"div")},U)},goLineLeftSmart:function(e){return e.extendSelectionsBy(function(t){var i=e.cursorCoords(t.head,"div").top+5,n=e.coordsChar({left:0,top:i},"div");return n.ch<e.getLine(n.line).search(/\S/)?Zo(e,t.head):n},U)},goLineUp:function(e){return e.moveV(-1,"line")},goLineDown:function(e){return e.moveV(1,"line")},goPageUp:function(e){return e.moveV(-1,"page")},goPageDown:function(e){return e.moveV(1,"page")},goCharLeft:function(e){return e.moveH(-1,"char")},goCharRight:function(e){return e.moveH(1,"char")},goColumnLeft:function(e){return e.moveH(-1,"column")},goColumnRight:function(e){return e.moveH(1,"column")},goWordLeft:function(e){return e.moveH(-1,"word")},goGroupRight:function(e){return e.moveH(1,"group")},goGroupLeft:function(e){return e.moveH(-1,"group")},goWordRight:function(e){return e.moveH(1,"word")},delCharBefore:function(e){return e.deleteH(-1,"codepoint")},delCharAfter:function(e){return e.deleteH(1,"char")},delWordBefore:function(e){return e.deleteH(-1,"word")},delWordAfter:function(e){return e.deleteH(1,"word")},delGroupBefore:function(e){return e.deleteH(-1,"group")},delGroupAfter:function(e){return e.deleteH(1,"group")},indentAuto:function(e){return e.indentSelection("smart")},indentMore:function(e){return e.indentSelection("add")},indentLess:function(e){return e.indentSelection("subtract")},insertTab:function(e){return e.replaceSelection("\t")},insertSoftTab:function(e){for(var t=[],i=e.listSelections(),n=e.options.tabSize,r=0;r<i.length;r++){var o=i[r].from(),s=N(e.getLine(o.line),o.ch,n);t.push(G(n-s%n))}e.replaceSelections(t)},defaultTab:function(e){e.somethingSelected()?e.indentSelection("add"):e.execCommand("insertTab")},transposeChars:function(e){return Qn(e,function(){for(var t=e.listSelections(),i=[],n=0;n<t.length;n++)if(t[n].empty()){var r=t[n].head,o=Ue(e.doc,r.line).text;if(o)if(r.ch==o.length&&(r=new Ze(r.line,r.ch-1)),r.ch>0)r=new Ze(r.line,r.ch+1),e.replaceRange(o.charAt(r.ch-1)+o.charAt(r.ch-2),Ze(r.line,r.ch-2),r,"+transpose");else if(r.line>e.doc.first){var s=Ue(e.doc,r.line-1).text;s&&(r=new Ze(r.line,1),e.replaceRange(o.charAt(0)+e.doc.lineSeparator()+s.charAt(s.length-1),Ze(r.line-1,s.length-1),r,"+transpose"))}i.push(new wr(r,r))}e.setSelections(i)})},newlineAndIndent:function(e){return Qn(e,function(){for(var t=e.listSelections(),i=t.length-1;i>=0;i--)e.replaceRange(e.doc.lineSeparator(),t[i].anchor,t[i].head,"+input");t=e.listSelections();for(var n=0;n<t.length;n++)e.indentLine(t[n].from().line,null,!0);_n(e)})},openLine:function(e){return e.replaceSelection("\n","start")},toggleOverwrite:function(e){return e.toggleOverwrite()}};function Jo(e,t){var i=Ue(e.doc,t),n=Pt(i);return n!=i&&(t=Ye(n)),Qo(!0,e,n,t,1)}function Zo(e,t){var i=Jo(e,t.line),n=Ue(e.doc,i.line),r=he(n,e.doc.direction);if(!r||0==r[0].level){var o=Math.max(i.ch,n.text.search(/\S/)),s=t.line==i.line&&t.ch<=o&&t.ch;return Ze(i.line,s?0:o,i.sticky)}return i}function es(e,t,i){if("string"==typeof t&&!(t=Xo[t]))return!1;e.display.input.ensurePolled();var n=e.display.shift,r=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),i&&(e.display.shift=!1),r=t(e)!=H}finally{e.display.shift=n,e.state.suppressEdits=!1}return r}var ts=new I;function is(e,t,i,n){var r=e.state.keySeq;if(r){if(zo(t))return"handled";if(/\'$/.test(t)?e.state.keySeq=null:ts.set(50,function(){e.state.keySeq==r&&(e.state.keySeq=null,e.display.input.reset())}),ns(e,r+" "+t,i,n))return!0}return ns(e,t,i,n)}function ns(e,t,i,n){var r=function(e,t,i){for(var n=0;n<e.state.keyMaps.length;n++){var r=Ho(t,e.state.keyMaps[n],i,e);if(r)return r}return e.options.extraKeys&&Ho(t,e.options.extraKeys,i,e)||Ho(t,e.options.keyMap,i,e)}(e,t,n);return"multi"==r&&(e.state.keySeq=t),"handled"==r&&si(e,"keyHandled",e,t,i),"handled"!=r&&"multi"!=r||(be(i),yn(e)),!!r}function rs(e,t){var i=Uo(t,!0);return!!i&&(t.shiftKey&&!e.state.keySeq?is(e,"Shift-"+i,t,function(t){return es(e,t,!0)})||is(e,i,t,function(t){if("string"==typeof t?/^go[A-Z]/.test(t):t.motion)return es(e,t)}):is(e,i,t,function(t){return es(e,t)}))}var os=null;function ss(e){var t=this;if(!(e.target&&e.target!=t.display.input.getField()||(t.curOp.focus=B(),ge(t,e)))){s&&a<11&&27==e.keyCode&&(e.returnValue=!1);var n=e.keyCode;t.display.shift=16==n||e.shiftKey;var r=rs(t,e);u&&(os=r?n:null,!r&&88==n&&!Re&&(y?e.metaKey:e.ctrlKey)&&t.replaceSelection("",null,"cut")),i&&!y&&!r&&46==n&&e.shiftKey&&!e.ctrlKey&&document.execCommand&&document.execCommand("cut"),18!=n||/\bCodeMirror-crosshair\b/.test(t.display.lineDiv.className)||function(e){var t=e.display.lineDiv;function i(e){18!=e.keyCode&&e.altKey||(S(t,"CodeMirror-crosshair"),pe(document,"keyup",i),pe(document,"mouseover",i))}R(t,"CodeMirror-crosshair"),de(document,"keyup",i),de(document,"mouseover",i)}(t)}}function as(e){16==e.keyCode&&(this.doc.sel.shift=!1),ge(this,e)}function ls(e){var t=this;if(!(e.target&&e.target!=t.display.input.getField()||bi(t.display,e)||ge(t,e)||e.ctrlKey&&!e.altKey||y&&e.metaKey)){var i=e.keyCode,n=e.charCode;if(u&&i==os)return os=null,void be(e);if(!u||e.which&&!(e.which<10)||!rs(t,e)){var r=String.fromCharCode(null==n?i:n);"\b"!=r&&(function(e,t,i){return is(e,"'"+i+"'",t,function(t){return es(e,t,!0)})}(t,e,r)||t.display.input.onKeyPress(e))}}}var cs,hs,us=function(e,t,i){this.time=e,this.pos=t,this.button=i};function ds(e){var t=this,i=t.display;if(!(ge(t,e)||i.activeTouch&&i.input.supportsTouch()))if(i.input.ensurePolled(),i.shift=e.shiftKey,bi(i,e))l||(i.scroller.draggable=!1,setTimeout(function(){return i.scroller.draggable=!0},100));else if(!ms(t,e)){var n=sn(t,e),r=Fe(e),o=n?function(e,t){var i=+new Date;return hs&&hs.compare(i,e,t)?(cs=hs=null,"triple"):cs&&cs.compare(i,e,t)?(hs=new us(i,e,t),cs=null,"double"):(cs=new us(i,e,t),hs=null,"single")}(n,r):"single";window.focus(),1==r&&t.state.selectingText&&t.state.selectingText(e),n&&function(e,t,i,n,r){var o="Click";return"double"==n?o="Double"+o:"triple"==n&&(o="Triple"+o),is(e,Vo(o=(1==t?"Left":2==t?"Middle":"Right")+o,r),r,function(t){if("string"==typeof t&&(t=Xo[t]),!t)return!1;var n=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),n=t(e,i)!=H}finally{e.state.suppressEdits=!1}return n})}(t,r,n,o,e)||(1==r?n?function(e,t,i,n){s?setTimeout(O(wn,e),0):e.curOp.focus=B();var r,o=function(e,t,i){var n=e.getOption("configureMouse"),r=n?n(e,t,i):{};if(null==r.unit){var o=w?i.shiftKey&&i.metaKey:i.altKey;r.unit=o?"rectangle":"single"==t?"char":"double"==t?"word":"line"}return(null==r.extend||e.doc.extend)&&(r.extend=e.doc.extend||i.shiftKey),null==r.addNew&&(r.addNew=y?i.metaKey:i.ctrlKey),null==r.moveOnDrag&&(r.moveOnDrag=!(y?i.altKey:i.ctrlKey)),r}(e,i,n),c=e.doc.sel;e.options.dragDrop&&_e&&!e.isReadOnly()&&"single"==i&&(r=c.contains(t))>-1&&(et((r=c.ranges[r]).from(),t)<0||t.xRel>0)&&(et(r.to(),t)>0||t.xRel<0)?function(e,t,i,n){var r=e.display,o=!1,c=Xn(e,function(t){l&&(r.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:bn(e)),pe(r.wrapper.ownerDocument,"mouseup",c),pe(r.wrapper.ownerDocument,"mousemove",h),pe(r.scroller,"dragstart",u),pe(r.scroller,"drop",c),o||(be(t),n.addNew||Vr(e.doc,i,null,null,n.extend),l&&!d||s&&9==a?setTimeout(function(){r.wrapper.ownerDocument.body.focus({preventScroll:!0}),r.input.focus()},20):r.input.focus())}),h=function(e){o=o||Math.abs(t.clientX-e.clientX)+Math.abs(t.clientY-e.clientY)>=10},u=function(){return o=!0};l&&(r.scroller.draggable=!0),e.state.draggingText=c,c.copy=!n.moveOnDrag,de(r.wrapper.ownerDocument,"mouseup",c),de(r.wrapper.ownerDocument,"mousemove",h),de(r.scroller,"dragstart",u),de(r.scroller,"drop",c),e.state.delayingBlurEvent=!0,setTimeout(function(){return r.input.focus()},20),r.scroller.dragDrop&&r.scroller.dragDrop()}(e,n,t,o):function(e,t,i,n){s&&bn(e);var r=e.display,o=e.doc;be(t);var a,l,c=o.sel,h=c.ranges;if(n.addNew&&!n.extend?(l=o.sel.contains(i),a=l>-1?h[l]:new wr(i,i)):(a=o.sel.primary(),l=o.sel.primIndex),"rectangle"==n.unit)n.addNew||(a=new wr(i,i)),i=sn(e,t,!0,!0),l=-1;else{var u=fs(e,i,n.unit);a=n.extend?zr(a,u.anchor,u.head,n.extend):u}n.addNew?-1==l?(l=h.length,Yr(o,br(e,h.concat([a]),l),{scroll:!1,origin:"*mouse"})):h.length>1&&h[l].empty()&&"char"==n.unit&&!n.extend?(Yr(o,br(e,h.slice(0,l).concat(h.slice(l+1)),0),{scroll:!1,origin:"*mouse"}),c=o.sel):qr(o,l,a,V):(l=0,Yr(o,new yr([a],0),V),c=o.sel);var d=i;function f(t){if(0!=et(d,t))if(d=t,"rectangle"==n.unit){for(var r=[],s=e.options.tabSize,h=N(Ue(o,i.line).text,i.ch,s),u=N(Ue(o,t.line).text,t.ch,s),f=Math.min(h,u),p=Math.max(h,u),m=Math.min(i.line,t.line),g=Math.min(e.lastLine(),Math.max(i.line,t.line));m<=g;m++){var v=Ue(o,m).text,y=q(v,f,s);f==p?r.push(new wr(Ze(m,y),Ze(m,y))):v.length>y&&r.push(new wr(Ze(m,y),Ze(m,q(v,p,s))))}r.length||r.push(new wr(i,i)),Yr(o,br(e,c.ranges.slice(0,l).concat(r),l),{origin:"*mouse",scroll:!1}),e.scrollIntoView(t)}else{var w,b=a,C=fs(e,t,n.unit),A=b.anchor;et(C.anchor,A)>0?(w=C.head,A=rt(b.from(),C.anchor)):(w=C.anchor,A=nt(b.to(),C.head));var E=c.ranges.slice(0);E[l]=function(e,t){var i=t.anchor,n=t.head,r=Ue(e.doc,i.line);if(0==et(i,n)&&i.sticky==n.sticky)return t;var o=he(r);if(!o)return t;var s=le(o,i.ch,i.sticky),a=o[s];if(a.from!=i.ch&&a.to!=i.ch)return t;var l,c=s+(a.from==i.ch==(1!=a.level)?0:1);if(0==c||c==o.length)return t;if(n.line!=i.line)l=(n.line-i.line)*("ltr"==e.doc.direction?1:-1)>0;else{var h=le(o,n.ch,n.sticky),u=h-s||(n.ch-i.ch)*(1==a.level?-1:1);l=h==c-1||h==c?u<0:u>0}var d=o[c+(l?-1:0)],f=l==(1==d.level),p=f?d.from:d.to,m=f?"after":"before";return i.ch==p&&i.sticky==m?t:new wr(new Ze(i.line,p,m),n)}(e,new wr(st(o,A),w)),Yr(o,br(e,E,l),V)}}var p=r.wrapper.getBoundingClientRect(),m=0;function g(t){e.state.selectingText=!1,m=1/0,t&&(be(t),r.input.focus()),pe(r.wrapper.ownerDocument,"mousemove",v),pe(r.wrapper.ownerDocument,"mouseup",y),o.history.lastSelOrigin=null}var v=Xn(e,function(t){0!==t.buttons&&Fe(t)?function t(i){var s=++m,a=sn(e,i,!0,"rectangle"==n.unit);if(a)if(0!=et(a,d)){e.curOp.focus=B(),f(a);var l=Fn(r,o);(a.line>=l.to||a.line<l.from)&&setTimeout(Xn(e,function(){m==s&&t(i)}),150)}else{var c=i.clientY<p.top?-20:i.clientY>p.bottom?20:0;c&&setTimeout(Xn(e,function(){m==s&&(r.scroller.scrollTop+=c,t(i))}),50)}}(t):g(t)}),y=Xn(e,g);e.state.selectingText=y,de(r.wrapper.ownerDocument,"mousemove",v),de(r.wrapper.ownerDocument,"mouseup",y)}(e,n,t,o)}(t,n,o,e):xe(e)==i.scroller&&be(e):2==r?(n&&Vr(t.doc,n),setTimeout(function(){return i.input.focus()},20)):3==r&&(E?t.display.input.onContextMenu(e):bn(t)))}}function fs(e,t,i){if("char"==i)return new wr(t,t);if("word"==i)return e.findWordAt(t);if("line"==i)return new wr(Ze(t.line,0),st(e.doc,Ze(t.line+1,0)));var n=i(e,t);return new wr(n.from,n.to)}function ps(e,t,i,n){var r,o;if(t.touches)r=t.touches[0].clientX,o=t.touches[0].clientY;else try{r=t.clientX,o=t.clientY}catch(e){return!1}if(r>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;n&&be(t);var s=e.display,a=s.lineDiv.getBoundingClientRect();if(o>a.bottom||!ye(e,i))return Ae(t);o-=a.top-s.viewOffset;for(var l=0;l<e.display.gutterSpecs.length;++l){var c=s.gutters.childNodes[l];if(c&&c.getBoundingClientRect().right>=r){var h=Qe(e.doc,o),u=e.display.gutterSpecs[l];return me(e,i,e,h,u.className,t),Ae(t)}}}function ms(e,t){return ps(e,t,"gutterClick",!0)}function gs(e,t){bi(e.display,t)||function(e,t){return!!ye(e,"gutterContextMenu")&&ps(e,t,"gutterContextMenu",!1)}(e,t)||ge(e,t,"contextmenu")||E||e.display.input.onContextMenu(t)}function vs(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),Ni(e)}us.prototype.compare=function(e,t,i){return this.time+400>e&&0==et(t,this.pos)&&i==this.button};var ys={toString:function(){return"CodeMirror.Init"}},ws={},bs={};function Cs(e,t,i){var n=i&&i!=ys;if(!t!=!n){var r=e.display.dragFunctions,o=t?de:pe;o(e.display.scroller,"dragstart",r.start),o(e.display.scroller,"dragenter",r.enter),o(e.display.scroller,"dragover",r.over),o(e.display.scroller,"dragleave",r.leave),o(e.display.scroller,"drop",r.drop)}}function As(e){e.options.lineWrapping?(R(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(S(e.display.wrapper,"CodeMirror-wrap"),Vt(e)),on(e),ln(e),Ni(e),setTimeout(function(){return Nn(e)},100)}function Es(e,t){var n=this;if(!(this instanceof Es))return new Es(e,t);this.options=t=t?P(t):{},P(ws,t,!1);var r=t.value;"string"==typeof r?r=new ko(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var o=new Es.inputStyles[t.inputStyle](this),c=this.display=new function(e,t,n,r){var o=this;this.input=n,o.scrollbarFiller=D("div",null,"CodeMirror-scrollbar-filler"),o.scrollbarFiller.setAttribute("cm-not-content","true"),o.gutterFiller=D("div",null,"CodeMirror-gutter-filler"),o.gutterFiller.setAttribute("cm-not-content","true"),o.lineDiv=$("div",null,"CodeMirror-code"),o.selectionDiv=D("div",null,null,"position: relative; z-index: 1"),o.cursorDiv=D("div",null,"CodeMirror-cursors"),o.measure=D("div",null,"CodeMirror-measure"),o.lineMeasure=D("div",null,"CodeMirror-measure"),o.lineSpace=$("div",[o.measure,o.lineMeasure,o.selectionDiv,o.cursorDiv,o.lineDiv],null,"position: relative; outline: none");var c=$("div",[o.lineSpace],"CodeMirror-lines");o.mover=D("div",[c],null,"position: relative"),o.sizer=D("div",[o.mover],"CodeMirror-sizer"),o.sizerWidth=null,o.heightForcer=D("div",null,null,"position: absolute; height: "+W+"px; width: 1px;"),o.gutters=D("div",null,"CodeMirror-gutters"),o.lineGutter=null,o.scroller=D("div",[o.sizer,o.heightForcer,o.gutters],"CodeMirror-scroll"),o.scroller.setAttribute("tabIndex","-1"),o.wrapper=D("div",[o.scrollbarFiller,o.gutterFiller,o.scroller],"CodeMirror"),o.wrapper.setAttribute("translate","no"),s&&a<8&&(o.gutters.style.zIndex=-1,o.scroller.style.paddingRight=0),l||i&&v||(o.scroller.draggable=!0),e&&(e.appendChild?e.appendChild(o.wrapper):e(o.wrapper)),o.viewFrom=o.viewTo=t.first,o.reportedViewFrom=o.reportedViewTo=t.first,o.view=[],o.renderedView=null,o.externalMeasured=null,o.viewOffset=0,o.lastWrapHeight=o.lastWrapWidth=0,o.updateLineNumbers=null,o.nativeBarWidth=o.barHeight=o.barWidth=0,o.scrollbarsClipped=!1,o.lineNumWidth=o.lineNumInnerWidth=o.lineNumChars=null,o.alignWidgets=!1,o.cachedCharWidth=o.cachedTextHeight=o.cachedPaddingH=null,o.maxLine=null,o.maxLineLength=0,o.maxLineChanged=!1,o.wheelDX=o.wheelDY=o.wheelStartX=o.wheelStartY=null,o.shift=!1,o.selForContextMenu=null,o.activeTouch=null,o.gutterSpecs=hr(r.gutters,r.lineNumbers),ur(o),n.init(o)}(e,r,o,t);for(var h in c.wrapper.CodeMirror=this,vs(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),Wn(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new I,keySeq:null,specialChars:null},t.autofocus&&!v&&c.input.focus(),s&&a<11&&setTimeout(function(){return n.display.input.reset(!0)},20),function(e){var t=e.display;de(t.scroller,"mousedown",Xn(e,ds)),de(t.scroller,"dblclick",s&&a<11?Xn(e,function(t){if(!ge(e,t)){var i=sn(e,t);if(i&&!ms(e,t)&&!bi(e.display,t)){be(t);var n=e.findWordAt(i);Vr(e.doc,n.anchor,n.head)}}}):function(t){return ge(e,t)||be(t)}),de(t.scroller,"contextmenu",function(t){return gs(e,t)}),de(t.input.getField(),"contextmenu",function(i){t.scroller.contains(i.target)||gs(e,i)});var i,n={end:0};function r(){t.activeTouch&&(i=setTimeout(function(){return t.activeTouch=null},1e3),(n=t.activeTouch).end=+new Date)}function o(e,t){if(null==t.left)return!0;var i=t.left-e.left,n=t.top-e.top;return i*i+n*n>400}de(t.scroller,"touchstart",function(r){if(!ge(e,r)&&!function(e){if(1!=e.touches.length)return!1;var t=e.touches[0];return t.radiusX<=1&&t.radiusY<=1}(r)&&!ms(e,r)){t.input.ensurePolled(),clearTimeout(i);var o=+new Date;t.activeTouch={start:o,moved:!1,prev:o-n.end<=300?n:null},1==r.touches.length&&(t.activeTouch.left=r.touches[0].pageX,t.activeTouch.top=r.touches[0].pageY)}}),de(t.scroller,"touchmove",function(){t.activeTouch&&(t.activeTouch.moved=!0)}),de(t.scroller,"touchend",function(i){var n=t.activeTouch;if(n&&!bi(t,i)&&null!=n.left&&!n.moved&&new Date-n.start<300){var s,a=e.coordsChar(t.activeTouch,"page");s=!n.prev||o(n,n.prev)?new wr(a,a):!n.prev.prev||o(n,n.prev.prev)?e.findWordAt(a):new wr(Ze(a.line,0),st(e.doc,Ze(a.line+1,0))),e.setSelection(s.anchor,s.head),e.focus(),be(i)}r()}),de(t.scroller,"touchcancel",r),de(t.scroller,"scroll",function(){t.scroller.clientHeight&&(Bn(e,t.scroller.scrollTop),Tn(e,t.scroller.scrollLeft,!0),me(e,"scroll",e))}),de(t.scroller,"mousewheel",function(t){return vr(e,t)}),de(t.scroller,"DOMMouseScroll",function(t){return vr(e,t)}),de(t.wrapper,"scroll",function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0}),t.dragFunctions={enter:function(t){ge(e,t)||Ee(t)},over:function(t){ge(e,t)||(function(e,t){var i=sn(e,t);if(i){var n=document.createDocumentFragment();mn(e,i,n),e.display.dragCursor||(e.display.dragCursor=D("div",null,"CodeMirror-cursors CodeMirror-dragcursors"),e.display.lineSpace.insertBefore(e.display.dragCursor,e.display.cursorDiv)),_(e.display.dragCursor,n)}}(e,t),Ee(t))},start:function(t){return function(e,t){if(s&&(!e.state.draggingText||+new Date-_o<100))Ee(t);else if(!ge(e,t)&&!bi(e.display,t)&&(t.dataTransfer.setData("Text",e.getSelection()),t.dataTransfer.effectAllowed="copyMove",t.dataTransfer.setDragImage&&!d)){var i=D("img",null,null,"position: fixed; left: 0; top: 0;");i.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",u&&(i.width=i.height=1,e.display.wrapper.appendChild(i),i._top=i.offsetTop),t.dataTransfer.setDragImage(i,0,0),u&&i.parentNode.removeChild(i)}}(e,t)},drop:Xn(e,Do),leave:function(t){ge(e,t)||$o(e)}};var l=t.input.getField();de(l,"keyup",function(t){return as.call(e,t)}),de(l,"keydown",Xn(e,ss)),de(l,"keypress",Xn(e,ls)),de(l,"focus",function(t){return Cn(e,t)}),de(l,"blur",function(t){return An(e,t)})}(this),Ro(),zn(this),this.curOp.forceUpdate=!0,Lr(this,r),t.autofocus&&!v||this.hasFocus()?setTimeout(function(){n.hasFocus()&&!n.state.focused&&Cn(n)},20):An(this),bs)bs.hasOwnProperty(h)&&bs[h](this,t[h],ys);cr(this),t.finishInit&&t.finishInit(this);for(var f=0;f<xs.length;++f)xs[f](this);Vn(this),l&&t.lineWrapping&&"optimizelegibility"==getComputedStyle(c.lineDiv).textRendering&&(c.lineDiv.style.textRendering="auto")}Es.defaults=ws,Es.optionHandlers=bs;var xs=[];function Fs(e,t,i,n){var r,o=e.doc;null==i&&(i="add"),"smart"==i&&(o.mode.indent?r=dt(e,t).state:i="prev");var s=e.options.tabSize,a=Ue(o,t),l=N(a.text,null,s);a.stateAfter&&(a.stateAfter=null);var c,h=a.text.match(/^\s*/)[0];if(n||/\S/.test(a.text)){if("smart"==i&&((c=o.mode.indent(r,a.text.slice(h.length),a.text))==H||c>150)){if(!n)return;i="prev"}}else c=0,i="not";"prev"==i?c=t>o.first?N(Ue(o,t-1).text,null,s):0:"add"==i?c=l+e.options.indentUnit:"subtract"==i?c=l-e.options.indentUnit:"number"==typeof i&&(c=l+i),c=Math.max(0,c);var u="",d=0;if(e.options.indentWithTabs)for(var f=Math.floor(c/s);f;--f)d+=s,u+="\t";if(d<c&&(u+=G(c-d)),u!=h)return ho(o,u,Ze(t,0),Ze(t,h.length),"+input"),a.stateAfter=null,!0;for(var p=0;p<o.sel.ranges.length;p++){var m=o.sel.ranges[p];if(m.head.line==t&&m.head.ch<h.length){var g=Ze(t,h.length);qr(o,p,new wr(g,g));break}}}Es.defineInitHook=function(e){return xs.push(e)};var Ss=null;function ks(e){Ss=e}function _s(e,t,i,n,r){var o=e.doc;e.display.shift=!1,n||(n=o.sel);var s=+new Date-200,a="paste"==r||e.state.pasteIncoming>s,l=Le(t),c=null;if(a&&n.ranges.length>1)if(Ss&&Ss.text.join("\n")==t){if(n.ranges.length%Ss.text.length==0){c=[];for(var h=0;h<Ss.text.length;h++)c.push(o.splitLines(Ss.text[h]))}}else l.length==n.ranges.length&&e.options.pasteLinesPerSelection&&(c=Q(l,function(e){return[e]}));for(var u=e.curOp.updateInput,d=n.ranges.length-1;d>=0;d--){var f=n.ranges[d],p=f.from(),m=f.to();f.empty()&&(i&&i>0?p=Ze(p.line,p.ch-i):e.state.overwrite&&!a?m=Ze(m.line,Math.min(Ue(o,m.line).text.length,m.ch+Y(l).length)):a&&Ss&&Ss.lineWise&&Ss.text.join("\n")==l.join("\n")&&(p=m=Ze(p.line,0)));var g={from:p,to:m,text:c?c[d%c.length]:l,origin:r||(a?"paste":e.state.cutIncoming>s?"cut":"+input")};oo(e.doc,g),si(e,"inputRead",e,g)}t&&!a&&$s(e,t),_n(e),e.curOp.updateInput<2&&(e.curOp.updateInput=u),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function Ds(e,t){var i=e.clipboardData&&e.clipboardData.getData("Text");if(i)return e.preventDefault(),t.isReadOnly()||t.options.disableInput||Qn(t,function(){return _s(t,i,0,null,"paste")}),!0}function $s(e,t){if(e.options.electricChars&&e.options.smartIndent)for(var i=e.doc.sel,n=i.ranges.length-1;n>=0;n--){var r=i.ranges[n];if(!(r.head.ch>100||n&&i.ranges[n-1].head.line==r.head.line)){var o=e.getModeAt(r.head),s=!1;if(o.electricChars){for(var a=0;a<o.electricChars.length;a++)if(t.indexOf(o.electricChars.charAt(a))>-1){s=Fs(e,r.head.line,"smart");break}}else o.electricInput&&o.electricInput.test(Ue(e.doc,r.head.line).text.slice(0,r.head.ch))&&(s=Fs(e,r.head.line,"smart"));s&&si(e,"electricInput",e,r.head.line)}}}function Ls(e){for(var t=[],i=[],n=0;n<e.doc.sel.ranges.length;n++){var r=e.doc.sel.ranges[n].head.line,o={anchor:Ze(r,0),head:Ze(r+1,0)};i.push(o),t.push(e.getRange(o.anchor,o.head))}return{text:t,ranges:i}}function Bs(e,t,i,n){e.setAttribute("autocorrect",i?"":"off"),e.setAttribute("autocapitalize",n?"":"off"),e.setAttribute("spellcheck",!!t)}function Rs(){var e=D("textarea",null,null,"position: absolute; bottom: -1em; padding: 0; width: 1px; height: 1em; min-height: 1em; outline: none"),t=D("div",[e],null,"overflow: hidden; position: relative; width: 3px; height: 0px;");return l?e.style.width="1000px":e.setAttribute("wrap","off"),m&&(e.style.border="1px solid black"),Bs(e),t}function Ts(e,t,i,n,r){var o=t,s=i,a=Ue(e,t.line),l=r&&"rtl"==e.direction?-i:i;function c(o){var s;if("codepoint"==n){var c=a.text.charCodeAt(t.ch+(i>0?0:-1));if(isNaN(c))s=null;else{var h=i>0?c>=55296&&c<56320:c>=56320&&c<57343;s=new Ze(t.line,Math.max(0,Math.min(a.text.length,t.ch+i*(h?2:1))),-i)}}else s=r?function(e,t,i,n){var r=he(t,e.doc.direction);if(!r)return Yo(t,i,n);i.ch>=t.text.length?(i.ch=t.text.length,i.sticky="before"):i.ch<=0&&(i.ch=0,i.sticky="after");var o=le(r,i.ch,i.sticky),s=r[o];if("ltr"==e.doc.direction&&s.level%2==0&&(n>0?s.to>i.ch:s.from<i.ch))return Yo(t,i,n);var a,l=function(e,i){return Go(t,e instanceof Ze?e.ch:e,i)},c=function(i){return e.options.lineWrapping?(a=a||$i(e,t),Qi(e,t,a,i)):{begin:0,end:t.text.length}},h=c("before"==i.sticky?l(i,-1):i.ch);if("rtl"==e.doc.direction||1==s.level){var u=1==s.level==n<0,d=l(i,u?1:-1);if(null!=d&&(u?d<=s.to&&d<=h.end:d>=s.from&&d>=h.begin)){var f=u?"before":"after";return new Ze(i.line,d,f)}}var p=function(e,t,n){for(var o=function(e,t){return t?new Ze(i.line,l(e,1),"before"):new Ze(i.line,e,"after")};e>=0&&e<r.length;e+=t){var s=r[e],a=t>0==(1!=s.level),c=a?n.begin:l(n.end,-1);if(s.from<=c&&c<s.to)return o(c,a);if(c=a?s.from:l(s.to,-1),n.begin<=c&&c<n.end)return o(c,a)}},m=p(o+n,n,h);if(m)return m;var g=n>0?h.end:l(h.begin,-1);return null==g||n>0&&g==t.text.length||!(m=p(n>0?0:r.length-1,n,c(g)))?null:m}(e.cm,a,t,i):Yo(a,t,i);if(null==s){if(o||!function(){var i=t.line+l;return!(i<e.first||i>=e.first+e.size)&&(t=new Ze(i,t.ch,t.sticky),a=Ue(e,i))}())return!1;t=Qo(r,e.cm,a,t.line,l)}else t=s;return!0}if("char"==n||"codepoint"==n)c();else if("column"==n)c(!0);else if("word"==n||"group"==n)for(var h=null,u="group"==n,d=e.cm&&e.cm.getHelper(t,"wordChars"),f=!0;!(i<0)||c(!f);f=!1){var p=a.text.charAt(t.ch)||"\n",m=te(p,d)?"w":u&&"\n"==p?"n":!u||/\s/.test(p)?null:"p";if(!u||f||m||(m="s"),h&&h!=m){i<0&&(i=1,c(),t.sticky="after");break}if(m&&(h=m),i>0&&!c(!f))break}var g=to(e,t,o,s,!0);return tt(o,g)&&(g.hitSide=!0),g}function Ms(e,t,i,n){var r,o,s=e.doc,a=t.left;if("page"==n){var l=Math.min(e.display.wrapper.clientHeight,window.innerHeight||document.documentElement.clientHeight),c=Math.max(l-.5*Zi(e.display),3);r=(i>0?t.bottom:t.top)+i*c}else"line"==n&&(r=i>0?t.bottom+3:t.top-3);for(;(o=Gi(e,a,r)).outside;){if(i<0?r<=0:r>=s.height){o.hitSide=!0;break}r+=5*i}return o}var Os=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new I,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};function Ps(e,t){var i=Di(e,t.line);if(!i||i.hidden)return null;var n=Ue(e.doc,t.line),r=ki(i,n,t.line),o=he(n,e.doc.direction),s="left";if(o){var a=le(o,t.ch);s=a%2?"right":"left"}var l=Ti(r.map,t.ch,s);return l.offset="right"==l.collapse?l.end:l.start,l}function Ns(e,t){return t&&(e.bad=!0),e}function Is(e,t,i){var n;if(t==e.display.lineDiv){if(!(n=e.display.lineDiv.childNodes[i]))return Ns(e.clipPos(Ze(e.display.viewTo-1)),!0);t=null,i=0}else for(n=t;;n=n.parentNode){if(!n||n==e.display.lineDiv)return null;if(n.parentNode&&n.parentNode==e.display.lineDiv)break}for(var r=0;r<e.display.view.length;r++){var o=e.display.view[r];if(o.node==n)return js(o,t,i)}}function js(e,t,i){var n=e.text.firstChild,r=!1;if(!t||!L(n,t))return Ns(Ze(Ye(e.line),0),!0);if(t==n&&(r=!0,t=n.childNodes[i],i=0,!t)){var o=e.rest?Y(e.rest):e.line;return Ns(Ze(Ye(o),o.text.length),r)}var s=3==t.nodeType?t:null,a=t;for(s||1!=t.childNodes.length||3!=t.firstChild.nodeType||(s=t.firstChild,i&&(i=s.nodeValue.length));a.parentNode!=n;)a=a.parentNode;var l=e.measure,c=l.maps;function h(t,i,n){for(var r=-1;r<(c?c.length:0);r++)for(var o=r<0?l.map:c[r],s=0;s<o.length;s+=3){var a=o[s+2];if(a==t||a==i){var h=Ye(r<0?e.line:e.rest[r]),u=o[s]+n;return(n<0||a!=t)&&(u=o[s+(n?1:0)]),Ze(h,u)}}}var u=h(s,a,i);if(u)return Ns(u,r);for(var d=a.nextSibling,f=s?s.nodeValue.length-i:0;d;d=d.nextSibling){if(u=h(d,d.firstChild,0))return Ns(Ze(u.line,u.ch-f),r);f+=d.textContent.length}for(var p=a.previousSibling,m=i;p;p=p.previousSibling){if(u=h(p,p.firstChild,-1))return Ns(Ze(u.line,u.ch+m),r);m+=p.textContent.length}}Os.prototype.init=function(e){var t=this,i=this,n=i.cm,r=i.div=e.lineDiv;function o(e){for(var t=e.target;t;t=t.parentNode){if(t==r)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(t.className))break}return!1}function s(e){if(o(e)&&!ge(n,e)){if(n.somethingSelected())ks({lineWise:!1,text:n.getSelections()}),"cut"==e.type&&n.replaceSelection("",null,"cut");else{if(!n.options.lineWiseCopyCut)return;var t=Ls(n);ks({lineWise:!0,text:t.text}),"cut"==e.type&&n.operation(function(){n.setSelections(t.ranges,0,z),n.replaceSelection("",null,"cut")})}if(e.clipboardData){e.clipboardData.clearData();var s=Ss.text.join("\n");if(e.clipboardData.setData("Text",s),e.clipboardData.getData("Text")==s)return void e.preventDefault()}var a=Rs(),l=a.firstChild;n.display.lineSpace.insertBefore(a,n.display.lineSpace.firstChild),l.value=Ss.text.join("\n");var c=B();M(l),setTimeout(function(){n.display.lineSpace.removeChild(a),c.focus(),c==r&&i.showPrimarySelection()},50)}}r.contentEditable=!0,Bs(r,n.options.spellcheck,n.options.autocorrect,n.options.autocapitalize),de(r,"paste",function(e){!o(e)||ge(n,e)||Ds(e,n)||a<=11&&setTimeout(Xn(n,function(){return t.updateFromDOM()}),20)}),de(r,"compositionstart",function(e){t.composing={data:e.data,done:!1}}),de(r,"compositionupdate",function(e){t.composing||(t.composing={data:e.data,done:!1})}),de(r,"compositionend",function(e){t.composing&&(e.data!=t.composing.data&&t.readFromDOMSoon(),t.composing.done=!0)}),de(r,"touchstart",function(){return i.forceCompositionEnd()}),de(r,"input",function(){t.composing||t.readFromDOMSoon()}),de(r,"copy",s),de(r,"cut",s)},Os.prototype.screenReaderLabelChanged=function(e){e?this.div.setAttribute("aria-label",e):this.div.removeAttribute("aria-label")},Os.prototype.prepareSelection=function(){var e=pn(this.cm,!1);return e.focus=B()==this.div,e},Os.prototype.showSelection=function(e,t){e&&this.cm.display.view.length&&((e.focus||t)&&this.showPrimarySelection(),this.showMultipleSelections(e))},Os.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},Os.prototype.showPrimarySelection=function(){var e=this.getSelection(),t=this.cm,n=t.doc.sel.primary(),r=n.from(),o=n.to();if(t.display.viewTo==t.display.viewFrom||r.line>=t.display.viewTo||o.line<t.display.viewFrom)e.removeAllRanges();else{var s=Is(t,e.anchorNode,e.anchorOffset),a=Is(t,e.focusNode,e.focusOffset);if(!s||s.bad||!a||a.bad||0!=et(rt(s,a),r)||0!=et(nt(s,a),o)){var l=t.display.view,c=r.line>=t.display.viewFrom&&Ps(t,r)||{node:l[0].measure.map[2],offset:0},h=o.line<t.display.viewTo&&Ps(t,o);if(!h){var u=l[l.length-1].measure,d=u.maps?u.maps[u.maps.length-1]:u.map;h={node:d[d.length-1],offset:d[d.length-2]-d[d.length-3]}}if(c&&h){var f,p=e.rangeCount&&e.getRangeAt(0);try{f=F(c.node,c.offset,h.offset,h.node)}catch(e){}f&&(!i&&t.state.focused?(e.collapse(c.node,c.offset),f.collapsed||(e.removeAllRanges(),e.addRange(f))):(e.removeAllRanges(),e.addRange(f)),p&&null==e.anchorNode?e.addRange(p):i&&this.startGracePeriod()),this.rememberSelection()}else e.removeAllRanges()}}},Os.prototype.startGracePeriod=function(){var e=this;clearTimeout(this.gracePeriod),this.gracePeriod=setTimeout(function(){e.gracePeriod=!1,e.selectionChanged()&&e.cm.operation(function(){return e.cm.curOp.selectionChanged=!0})},20)},Os.prototype.showMultipleSelections=function(e){_(this.cm.display.cursorDiv,e.cursors),_(this.cm.display.selectionDiv,e.selection)},Os.prototype.rememberSelection=function(){var e=this.getSelection();this.lastAnchorNode=e.anchorNode,this.lastAnchorOffset=e.anchorOffset,this.lastFocusNode=e.focusNode,this.lastFocusOffset=e.focusOffset},Os.prototype.selectionInEditor=function(){var e=this.getSelection();if(!e.rangeCount)return!1;var t=e.getRangeAt(0).commonAncestorContainer;return L(this.div,t)},Os.prototype.focus=function(){"nocursor"!=this.cm.options.readOnly&&(this.selectionInEditor()&&B()==this.div||this.showSelection(this.prepareSelection(),!0),this.div.focus())},Os.prototype.blur=function(){this.div.blur()},Os.prototype.getField=function(){return this.div},Os.prototype.supportsTouch=function(){return!0},Os.prototype.receivedFocus=function(){var e=this,t=this;this.selectionInEditor()?setTimeout(function(){return e.pollSelection()},20):Qn(this.cm,function(){return t.cm.curOp.selectionChanged=!0}),this.polling.set(this.cm.options.pollInterval,function e(){t.cm.state.focused&&(t.pollSelection(),t.polling.set(t.cm.options.pollInterval,e))})},Os.prototype.selectionChanged=function(){var e=this.getSelection();return e.anchorNode!=this.lastAnchorNode||e.anchorOffset!=this.lastAnchorOffset||e.focusNode!=this.lastFocusNode||e.focusOffset!=this.lastFocusOffset},Os.prototype.pollSelection=function(){if(null==this.readDOMTimeout&&!this.gracePeriod&&this.selectionChanged()){var e=this.getSelection(),t=this.cm;if(g&&h&&this.cm.display.gutterSpecs.length&&function(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}(e.anchorNode))return this.cm.triggerOnKeyDown({type:"keydown",keyCode:8,preventDefault:Math.abs}),this.blur(),void this.focus();if(!this.composing){this.rememberSelection();var i=Is(t,e.anchorNode,e.anchorOffset),n=Is(t,e.focusNode,e.focusOffset);i&&n&&Qn(t,function(){Yr(t.doc,Cr(i,n),z),(i.bad||n.bad)&&(t.curOp.selectionChanged=!0)})}}},Os.prototype.pollContent=function(){null!=this.readDOMTimeout&&(clearTimeout(this.readDOMTimeout),this.readDOMTimeout=null);var e,t,i,n=this.cm,r=n.display,o=n.doc.sel.primary(),s=o.from(),a=o.to();if(0==s.ch&&s.line>n.firstLine()&&(s=Ze(s.line-1,Ue(n.doc,s.line-1).length)),a.ch==Ue(n.doc,a.line).text.length&&a.line<n.lastLine()&&(a=Ze(a.line+1,0)),s.line<r.viewFrom||a.line>r.viewTo-1)return!1;s.line==r.viewFrom||0==(e=an(n,s.line))?(t=Ye(r.view[0].line),i=r.view[0].node):(t=Ye(r.view[e].line),i=r.view[e-1].node.nextSibling);var l,c,h=an(n,a.line);if(h==r.view.length-1?(l=r.viewTo-1,c=r.lineDiv.lastChild):(l=Ye(r.view[h+1].line)-1,c=r.view[h+1].node.previousSibling),!i)return!1;for(var u=n.doc.splitLines(function(e,t,i,n,r){var o="",s=!1,a=e.doc.lineSeparator(),l=!1;function c(){s&&(o+=a,l&&(o+=a),s=l=!1)}function h(e){e&&(c(),o+=e)}function u(t){if(1==t.nodeType){var i=t.getAttribute("cm-text");if(i)return void h(i);var o,d=t.getAttribute("cm-marker");if(d){var f=e.findMarks(Ze(n,0),Ze(r+1,0),function(e){return function(t){return t.id==e}}(+d));return void(f.length&&(o=f[0].find(0))&&h(qe(e.doc,o.from,o.to).join(a)))}if("false"==t.getAttribute("contenteditable"))return;var p=/^(pre|div|p|li|table|br)$/i.test(t.nodeName);if(!/^br$/i.test(t.nodeName)&&0==t.textContent.length)return;p&&c();for(var m=0;m<t.childNodes.length;m++)u(t.childNodes[m]);/^(pre|p)$/i.test(t.nodeName)&&(l=!0),p&&(s=!0)}else 3==t.nodeType&&h(t.nodeValue.replace(/\u200b/g,"").replace(/\u00a0/g," "))}for(;u(t),t!=i;)t=t.nextSibling,l=!1;return o}(n,i,c,t,l)),d=qe(n.doc,Ze(t,0),Ze(l,Ue(n.doc,l).text.length));u.length>1&&d.length>1;)if(Y(u)==Y(d))u.pop(),d.pop(),l--;else{if(u[0]!=d[0])break;u.shift(),d.shift(),t++}for(var f=0,p=0,m=u[0],g=d[0],v=Math.min(m.length,g.length);f<v&&m.charCodeAt(f)==g.charCodeAt(f);)++f;for(var y=Y(u),w=Y(d),b=Math.min(y.length-(1==u.length?f:0),w.length-(1==d.length?f:0));p<b&&y.charCodeAt(y.length-p-1)==w.charCodeAt(w.length-p-1);)++p;if(1==u.length&&1==d.length&&t==s.line)for(;f&&f>s.ch&&y.charCodeAt(y.length-p-1)==w.charCodeAt(w.length-p-1);)f--,p++;u[u.length-1]=y.slice(0,y.length-p).replace(/^\u200b+/,""),u[0]=u[0].slice(f).replace(/\u200b+$/,"");var C=Ze(t,f),A=Ze(l,d.length?Y(d).length-p:0);return u.length>1||u[0]||et(C,A)?(ho(n.doc,u,C,A,"+input"),!0):void 0},Os.prototype.ensurePolled=function(){this.forceCompositionEnd()},Os.prototype.reset=function(){this.forceCompositionEnd()},Os.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},Os.prototype.readFromDOMSoon=function(){var e=this;null==this.readDOMTimeout&&(this.readDOMTimeout=setTimeout(function(){if(e.readDOMTimeout=null,e.composing){if(!e.composing.done)return;e.composing=null}e.updateFromDOM()},80))},Os.prototype.updateFromDOM=function(){var e=this;!this.cm.isReadOnly()&&this.pollContent()||Qn(this.cm,function(){return ln(e.cm)})},Os.prototype.setUneditable=function(e){e.contentEditable="false"},Os.prototype.onKeyPress=function(e){0==e.charCode||this.composing||(e.preventDefault(),this.cm.isReadOnly()||Xn(this.cm,_s)(this.cm,String.fromCharCode(null==e.charCode?e.keyCode:e.charCode),0))},Os.prototype.readOnlyChanged=function(e){this.div.contentEditable=String("nocursor"!=e)},Os.prototype.onContextMenu=function(){},Os.prototype.resetPosition=function(){},Os.prototype.needsContentAttribute=!0;var Ws=function(e){this.cm=e,this.prevInput="",this.pollingFast=!1,this.polling=new I,this.hasSelection=!1,this.composing=null};Ws.prototype.init=function(e){var t=this,i=this,n=this.cm;this.createField(e);var r=this.textarea;function o(e){if(!ge(n,e)){if(n.somethingSelected())ks({lineWise:!1,text:n.getSelections()});else{if(!n.options.lineWiseCopyCut)return;var t=Ls(n);ks({lineWise:!0,text:t.text}),"cut"==e.type?n.setSelections(t.ranges,null,z):(i.prevInput="",r.value=t.text.join("\n"),M(r))}"cut"==e.type&&(n.state.cutIncoming=+new Date)}}e.wrapper.insertBefore(this.wrapper,e.wrapper.firstChild),m&&(r.style.width="0px"),de(r,"input",function(){s&&a>=9&&t.hasSelection&&(t.hasSelection=null),i.poll()}),de(r,"paste",function(e){ge(n,e)||Ds(e,n)||(n.state.pasteIncoming=+new Date,i.fastPoll())}),de(r,"cut",o),de(r,"copy",o),de(e.scroller,"paste",function(t){if(!bi(e,t)&&!ge(n,t)){if(!r.dispatchEvent)return n.state.pasteIncoming=+new Date,void i.focus();var o=new Event("paste");o.clipboardData=t.clipboardData,r.dispatchEvent(o)}}),de(e.lineSpace,"selectstart",function(t){bi(e,t)||be(t)}),de(r,"compositionstart",function(){var e=n.getCursor("from");i.composing&&i.composing.range.clear(),i.composing={start:e,range:n.markText(e,n.getCursor("to"),{className:"CodeMirror-composing"})}}),de(r,"compositionend",function(){i.composing&&(i.poll(),i.composing.range.clear(),i.composing=null)})},Ws.prototype.createField=function(e){this.wrapper=Rs(),this.textarea=this.wrapper.firstChild},Ws.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},Ws.prototype.prepareSelection=function(){var e=this.cm,t=e.display,i=e.doc,n=pn(e);if(e.options.moveInputWithCursor){var r=Ui(e,i.sel.primary().head,"div"),o=t.wrapper.getBoundingClientRect(),s=t.lineDiv.getBoundingClientRect();n.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,r.top+s.top-o.top)),n.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,r.left+s.left-o.left))}return n},Ws.prototype.showSelection=function(e){var t=this.cm,i=t.display;_(i.cursorDiv,e.cursors),_(i.selectionDiv,e.selection),null!=e.teTop&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},Ws.prototype.reset=function(e){if(!this.contextMenuPending&&!this.composing){var t=this.cm;if(t.somethingSelected()){this.prevInput="";var i=t.getSelection();this.textarea.value=i,t.state.focused&&M(this.textarea),s&&a>=9&&(this.hasSelection=i)}else e||(this.prevInput=this.textarea.value="",s&&a>=9&&(this.hasSelection=null))}},Ws.prototype.getField=function(){return this.textarea},Ws.prototype.supportsTouch=function(){return!1},Ws.prototype.focus=function(){if("nocursor"!=this.cm.options.readOnly&&(!v||B()!=this.textarea))try{this.textarea.focus()}catch(e){}},Ws.prototype.blur=function(){this.textarea.blur()},Ws.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},Ws.prototype.receivedFocus=function(){this.slowPoll()},Ws.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){e.poll(),e.cm.state.focused&&e.slowPoll()})},Ws.prototype.fastPoll=function(){var e=!1,t=this;t.pollingFast=!0,t.polling.set(20,function i(){var n=t.poll();n||e?(t.pollingFast=!1,t.slowPoll()):(e=!0,t.polling.set(60,i))})},Ws.prototype.poll=function(){var e=this,t=this.cm,i=this.textarea,n=this.prevInput;if(this.contextMenuPending||!t.state.focused||Be(i)&&!n&&!this.composing||t.isReadOnly()||t.options.disableInput||t.state.keySeq)return!1;var r=i.value;if(r==n&&!t.somethingSelected())return!1;if(s&&a>=9&&this.hasSelection===r||y&&/[\uf700-\uf7ff]/.test(r))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var o=r.charCodeAt(0);if(8203!=o||n||(n="​"),8666==o)return this.reset(),this.cm.execCommand("undo")}for(var l=0,c=Math.min(n.length,r.length);l<c&&n.charCodeAt(l)==r.charCodeAt(l);)++l;return Qn(t,function(){_s(t,r.slice(l),n.length-l,null,e.composing?"*compose":null),r.length>1e3||r.indexOf("\n")>-1?i.value=e.prevInput="":e.prevInput=r,e.composing&&(e.composing.range.clear(),e.composing.range=t.markText(e.composing.start,t.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},Ws.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},Ws.prototype.onKeyPress=function(){s&&a>=9&&(this.hasSelection=null),this.fastPoll()},Ws.prototype.onContextMenu=function(e){var t=this,i=t.cm,n=i.display,r=t.textarea;t.contextMenuPending&&t.contextMenuPending();var o=sn(i,e),c=n.scroller.scrollTop;if(o&&!u){var h=i.options.resetSelectionOnContextMenu;h&&-1==i.doc.sel.contains(o)&&Xn(i,Yr)(i.doc,Cr(o),z);var d,f=r.style.cssText,p=t.wrapper.style.cssText,m=t.wrapper.offsetParent.getBoundingClientRect();if(t.wrapper.style.cssText="position: static",r.style.cssText="position: absolute; width: 30px; height: 30px;\n top: "+(e.clientY-m.top-5)+"px; left: "+(e.clientX-m.left-5)+"px;\n z-index: 1000; background: "+(s?"rgba(255, 255, 255, .05)":"transparent")+";\n outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);",l&&(d=window.scrollY),n.input.focus(),l&&window.scrollTo(null,d),n.input.reset(),i.somethingSelected()||(r.value=t.prevInput=" "),t.contextMenuPending=y,n.selForContextMenu=i.doc.sel,clearTimeout(n.detectingSelectAll),s&&a>=9&&v(),E){Ee(e);var g=function(){pe(window,"mouseup",g),setTimeout(y,20)};de(window,"mouseup",g)}else setTimeout(y,50)}function v(){if(null!=r.selectionStart){var e=i.somethingSelected(),o="​"+(e?r.value:"");r.value="⇚",r.value=o,t.prevInput=e?"":"​",r.selectionStart=1,r.selectionEnd=o.length,n.selForContextMenu=i.doc.sel}}function y(){if(t.contextMenuPending==y&&(t.contextMenuPending=!1,t.wrapper.style.cssText=p,r.style.cssText=f,s&&a<9&&n.scrollbars.setScrollTop(n.scroller.scrollTop=c),null!=r.selectionStart)){(!s||s&&a<9)&&v();var e=0,o=function(){n.selForContextMenu==i.doc.sel&&0==r.selectionStart&&r.selectionEnd>0&&"​"==t.prevInput?Xn(i,no)(i):e++<10?n.detectingSelectAll=setTimeout(o,500):(n.selForContextMenu=null,n.input.reset())};n.detectingSelectAll=setTimeout(o,200)}}},Ws.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled="nocursor"==e,this.textarea.readOnly=!!e},Ws.prototype.setUneditable=function(){},Ws.prototype.needsContentAttribute=!1,function(e){var t=e.optionHandlers;function i(i,n,r,o){e.defaults[i]=n,r&&(t[i]=o?function(e,t,i){i!=ys&&r(e,t,i)}:r)}e.defineOption=i,e.Init=ys,i("value","",function(e,t){return e.setValue(t)},!0),i("mode",null,function(e,t){e.doc.modeOption=t,Sr(e)},!0),i("indentUnit",2,Sr,!0),i("indentWithTabs",!1),i("smartIndent",!0),i("tabSize",4,function(e){kr(e),Ni(e),ln(e)},!0),i("lineSeparator",null,function(e,t){if(e.doc.lineSep=t,t){var i=[],n=e.doc.first;e.doc.iter(function(e){for(var r=0;;){var o=e.text.indexOf(t,r);if(-1==o)break;r=o+t.length,i.push(Ze(n,o))}n++});for(var r=i.length-1;r>=0;r--)ho(e.doc,t,i[r],Ze(i[r].line,i[r].ch+t.length))}}),i("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\ufeff\ufff9-\ufffc]/g,function(e,t,i){e.state.specialChars=new RegExp(t.source+(t.test("\t")?"":"|\t"),"g"),i!=ys&&e.refresh()}),i("specialCharPlaceholder",Xt,function(e){return e.refresh()},!0),i("electricChars",!0),i("inputStyle",v?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),i("spellcheck",!1,function(e,t){return e.getInputField().spellcheck=t},!0),i("autocorrect",!1,function(e,t){return e.getInputField().autocorrect=t},!0),i("autocapitalize",!1,function(e,t){return e.getInputField().autocapitalize=t},!0),i("rtlMoveVisually",!b),i("wholeLineUpdateBefore",!0),i("theme","default",function(e){vs(e),dr(e)},!0),i("keyMap","default",function(e,t,i){var n=qo(t),r=i!=ys&&qo(i);r&&r.detach&&r.detach(e,n),n.attach&&n.attach(e,r||null)}),i("extraKeys",null),i("configureMouse",null),i("lineWrapping",!1,As,!0),i("gutters",[],function(e,t){e.display.gutterSpecs=hr(t,e.options.lineNumbers),dr(e)},!0),i("fixedGutter",!0,function(e,t){e.display.gutters.style.left=t?nn(e.display)+"px":"0",e.refresh()},!0),i("coverGutterNextToScrollbar",!1,function(e){return Nn(e)},!0),i("scrollbarStyle","native",function(e){Wn(e),Nn(e),e.display.scrollbars.setScrollTop(e.doc.scrollTop),e.display.scrollbars.setScrollLeft(e.doc.scrollLeft)},!0),i("lineNumbers",!1,function(e,t){e.display.gutterSpecs=hr(e.options.gutters,t),dr(e)},!0),i("firstLineNumber",1,dr,!0),i("lineNumberFormatter",function(e){return e},dr,!0),i("showCursorWhenSelecting",!1,fn,!0),i("resetSelectionOnContextMenu",!0),i("lineWiseCopyCut",!0),i("pasteLinesPerSelection",!0),i("selectionsMayTouch",!1),i("readOnly",!1,function(e,t){"nocursor"==t&&(An(e),e.display.input.blur()),e.display.input.readOnlyChanged(t)}),i("screenReaderLabel",null,function(e,t){t=""===t?null:t,e.display.input.screenReaderLabelChanged(t)}),i("disableInput",!1,function(e,t){t||e.display.input.reset()},!0),i("dragDrop",!0,Cs),i("allowDropFileTypes",null),i("cursorBlinkRate",530),i("cursorScrollMargin",0),i("cursorHeight",1,fn,!0),i("singleCursorHeightPerLine",!0,fn,!0),i("workTime",100),i("workDelay",100),i("flattenSpans",!0,kr,!0),i("addModeClass",!1,kr,!0),i("pollInterval",100),i("undoDepth",200,function(e,t){return e.doc.history.undoDepth=t}),i("historyEventDelay",1250),i("viewportMargin",10,function(e){return e.refresh()},!0),i("maxHighlightLength",1e4,kr,!0),i("moveInputWithCursor",!0,function(e,t){t||e.display.input.resetPosition()}),i("tabindex",null,function(e,t){return e.display.input.getField().tabIndex=t||""}),i("autofocus",null),i("direction","ltr",function(e,t){return e.doc.setDirection(t)},!0),i("phrases",null)}(Es),function(e){var t=e.optionHandlers,i=e.helpers={};e.prototype={constructor:e,focus:function(){window.focus(),this.display.input.focus()},setOption:function(e,i){var n=this.options,r=n[e];n[e]==i&&"mode"!=e||(n[e]=i,t.hasOwnProperty(e)&&Xn(this,t[e])(this,i,r),me(this,"optionChange",this,e))},getOption:function(e){return this.options[e]},getDoc:function(){return this.doc},addKeyMap:function(e,t){this.state.keyMaps[t?"push":"unshift"](qo(e))},removeKeyMap:function(e){for(var t=this.state.keyMaps,i=0;i<t.length;++i)if(t[i]==e||t[i].name==e)return t.splice(i,1),!0},addOverlay:Jn(function(t,i){var n=t.token?t:e.getMode(this.options,t);if(n.startState)throw new Error("Overlays may not be stateful.");!function(e,t,i){for(var n=0,r=i(t);n<e.length&&i(e[n])<=r;)n++;e.splice(n,0,t)}(this.state.overlays,{mode:n,modeSpec:t,opaque:i&&i.opaque,priority:i&&i.priority||0},function(e){return e.priority}),this.state.modeGen++,ln(this)}),removeOverlay:Jn(function(e){for(var t=this.state.overlays,i=0;i<t.length;++i){var n=t[i].modeSpec;if(n==e||"string"==typeof e&&n.name==e)return t.splice(i,1),this.state.modeGen++,void ln(this)}}),indentLine:Jn(function(e,t,i){"string"!=typeof t&&"number"!=typeof t&&(t=null==t?this.options.smartIndent?"smart":"prev":t?"add":"subtract"),Xe(this.doc,e)&&Fs(this,e,t,i)}),indentSelection:Jn(function(e){for(var t=this.doc.sel.ranges,i=-1,n=0;n<t.length;n++){var r=t[n];if(r.empty())r.head.line>i&&(Fs(this,r.head.line,e,!0),i=r.head.line,n==this.doc.sel.primIndex&&_n(this));else{var o=r.from(),s=r.to(),a=Math.max(i,o.line);i=Math.min(this.lastLine(),s.line-(s.ch?0:1))+1;for(var l=a;l<i;++l)Fs(this,l,e);var c=this.doc.sel.ranges;0==o.ch&&t.length==c.length&&c[n].from().ch>0&&qr(this.doc,n,new wr(o,c[n].to()),z)}}}),getTokenAt:function(e,t){return vt(this,e,t)},getLineTokens:function(e,t){return vt(this,Ze(e),t,!0)},getTokenTypeAt:function(e){e=st(this.doc,e);var t,i=ut(this,Ue(this.doc,e.line)),n=0,r=(i.length-1)/2,o=e.ch;if(0==o)t=i[2];else for(;;){var s=n+r>>1;if((s?i[2*s-1]:0)>=o)r=s;else{if(!(i[2*s+1]<o)){t=i[2*s+2];break}n=s+1}}var a=t?t.indexOf("overlay "):-1;return a<0?t:0==a?null:t.slice(0,a-1)},getModeAt:function(t){var i=this.doc.mode;return i.innerMode?e.innerMode(i,this.getTokenAt(t).state).mode:i},getHelper:function(e,t){return this.getHelpers(e,t)[0]},getHelpers:function(e,t){var n=[];if(!i.hasOwnProperty(t))return n;var r=i[t],o=this.getModeAt(e);if("string"==typeof o[t])r[o[t]]&&n.push(r[o[t]]);else if(o[t])for(var s=0;s<o[t].length;s++){var a=r[o[t][s]];a&&n.push(a)}else o.helperType&&r[o.helperType]?n.push(r[o.helperType]):r[o.name]&&n.push(r[o.name]);for(var l=0;l<r._global.length;l++){var c=r._global[l];c.pred(o,this)&&-1==j(n,c.val)&&n.push(c.val)}return n},getStateAfter:function(e,t){var i=this.doc;return dt(this,(e=ot(i,null==e?i.first+i.size-1:e))+1,t).state},cursorCoords:function(e,t){var i=this.doc.sel.primary();return Ui(this,null==e?i.head:"object"==typeof e?st(this.doc,e):e?i.from():i.to(),t||"page")},charCoords:function(e,t){return Vi(this,st(this.doc,e),t||"page")},coordsChar:function(e,t){return Gi(this,(e=zi(this,e,t||"page")).left,e.top)},lineAtHeight:function(e,t){return e=zi(this,{top:e,left:0},t||"page").top,Qe(this.doc,e+this.display.viewOffset)},heightAtLine:function(e,t,i){var n,r=!1;if("number"==typeof e){var o=this.doc.first+this.doc.size-1;e<this.doc.first?e=this.doc.first:e>o&&(e=o,r=!0),n=Ue(this.doc,e)}else n=e;return Hi(this,n,{top:0,left:0},t||"page",i||r).top+(r?this.doc.height-Ht(n):0)},defaultTextHeight:function(){return Zi(this.display)},defaultCharWidth:function(){return en(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(e,t,i,n,r){var o=this.display,s=(e=Ui(this,st(this.doc,e))).bottom,a=e.left;if(t.style.position="absolute",t.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(t),o.sizer.appendChild(t),"over"==n)s=e.top;else if("above"==n||"near"==n){var l=Math.max(o.wrapper.clientHeight,this.doc.height),c=Math.max(o.sizer.clientWidth,o.lineSpace.clientWidth);("above"==n||e.bottom+t.offsetHeight>l)&&e.top>t.offsetHeight?s=e.top-t.offsetHeight:e.bottom+t.offsetHeight<=l&&(s=e.bottom),a+t.offsetWidth>c&&(a=c-t.offsetWidth)}t.style.top=s+"px",t.style.left=t.style.right="","right"==r?(a=o.sizer.clientWidth-t.offsetWidth,t.style.right="0px"):("left"==r?a=0:"middle"==r&&(a=(o.sizer.clientWidth-t.offsetWidth)/2),t.style.left=a+"px"),i&&function(e,t){var i=Sn(e,t);null!=i.scrollTop&&Bn(e,i.scrollTop),null!=i.scrollLeft&&Tn(e,i.scrollLeft)}(this,{left:a,top:s,right:a+t.offsetWidth,bottom:s+t.offsetHeight})},triggerOnKeyDown:Jn(ss),triggerOnKeyPress:Jn(ls),triggerOnKeyUp:as,triggerOnMouseDown:Jn(ds),execCommand:function(e){if(Xo.hasOwnProperty(e))return Xo[e].call(null,this)},triggerElectric:Jn(function(e){$s(this,e)}),findPosH:function(e,t,i,n){var r=1;t<0&&(r=-1,t=-t);for(var o=st(this.doc,e),s=0;s<t&&!(o=Ts(this.doc,o,r,i,n)).hitSide;++s);return o},moveH:Jn(function(e,t){var i=this;this.extendSelectionsBy(function(n){return i.display.shift||i.doc.extend||n.empty()?Ts(i.doc,n.head,e,t,i.options.rtlMoveVisually):e<0?n.from():n.to()},U)}),deleteH:Jn(function(e,t){var i=this.doc.sel,n=this.doc;i.somethingSelected()?n.replaceSelection("",null,"+delete"):Ko(this,function(i){var r=Ts(n,i.head,e,t,!1);return e<0?{from:r,to:i.head}:{from:i.head,to:r}})}),findPosV:function(e,t,i,n){var r=1,o=n;t<0&&(r=-1,t=-t);for(var s=st(this.doc,e),a=0;a<t;++a){var l=Ui(this,s,"div");if(null==o?o=l.left:l.left=o,(s=Ms(this,l,r,i)).hitSide)break}return s},moveV:Jn(function(e,t){var i=this,n=this.doc,r=[],o=!this.display.shift&&!n.extend&&n.sel.somethingSelected();if(n.extendSelectionsBy(function(s){if(o)return e<0?s.from():s.to();var a=Ui(i,s.head,"div");null!=s.goalColumn&&(a.left=s.goalColumn),r.push(a.left);var l=Ms(i,a,e,t);return"page"==t&&s==n.sel.primary()&&kn(i,Vi(i,l,"div").top-a.top),l},U),r.length)for(var s=0;s<n.sel.ranges.length;s++)n.sel.ranges[s].goalColumn=r[s]}),findWordAt:function(e){var t=this.doc,i=Ue(t,e.line).text,n=e.ch,r=e.ch;if(i){var o=this.getHelper(e,"wordChars");"before"!=e.sticky&&r!=i.length||!n?++r:--n;for(var s=i.charAt(n),a=te(s,o)?function(e){return te(e,o)}:/\s/.test(s)?function(e){return/\s/.test(e)}:function(e){return!/\s/.test(e)&&!te(e)};n>0&&a(i.charAt(n-1));)--n;for(;r<i.length&&a(i.charAt(r));)++r}return new wr(Ze(e.line,n),Ze(e.line,r))},toggleOverwrite:function(e){null!=e&&e==this.state.overwrite||((this.state.overwrite=!this.state.overwrite)?R(this.display.cursorDiv,"CodeMirror-overwrite"):S(this.display.cursorDiv,"CodeMirror-overwrite"),me(this,"overwriteToggle",this,this.state.overwrite))},hasFocus:function(){return this.display.input.getField()==B()},isReadOnly:function(){return!(!this.options.readOnly&&!this.doc.cantEdit)},scrollTo:Jn(function(e,t){Dn(this,e,t)}),getScrollInfo:function(){var e=this.display.scroller;return{left:e.scrollLeft,top:e.scrollTop,height:e.scrollHeight-xi(this)-this.display.barHeight,width:e.scrollWidth-xi(this)-this.display.barWidth,clientHeight:Si(this),clientWidth:Fi(this)}},scrollIntoView:Jn(function(e,t){null==e?(e={from:this.doc.sel.primary().head,to:null},null==t&&(t=this.options.cursorScrollMargin)):"number"==typeof e?e={from:Ze(e,0),to:null}:null==e.from&&(e={from:e,to:null}),e.to||(e.to=e.from),e.margin=t||0,null!=e.from.line?function(e,t){$n(e),e.curOp.scrollToPos=t}(this,e):Ln(this,e.from,e.to,e.margin)}),setSize:Jn(function(e,t){var i=this,n=function(e){return"number"==typeof e||/^\d+$/.test(String(e))?e+"px":e};null!=e&&(this.display.wrapper.style.width=n(e)),null!=t&&(this.display.wrapper.style.height=n(t)),this.options.lineWrapping&&Pi(this);var r=this.display.viewFrom;this.doc.iter(r,this.display.viewTo,function(e){if(e.widgets)for(var t=0;t<e.widgets.length;t++)if(e.widgets[t].noHScroll){cn(i,r,"widget");break}++r}),this.curOp.forceUpdate=!0,me(this,"refresh",this)}),operation:function(e){return Qn(this,e)},startOperation:function(){return zn(this)},endOperation:function(){return Vn(this)},refresh:Jn(function(){var e=this.display.cachedTextHeight;ln(this),this.curOp.forceUpdate=!0,Ni(this),Dn(this,this.doc.scrollLeft,this.doc.scrollTop),sr(this.display),(null==e||Math.abs(e-Zi(this.display))>.5||this.options.lineWrapping)&&on(this),me(this,"refresh",this)}),swapDoc:Jn(function(e){var t=this.doc;return t.cm=null,this.state.selectingText&&this.state.selectingText(),Lr(this,e),Ni(this),this.display.input.reset(),Dn(this,e.scrollLeft,e.scrollTop),this.curOp.forceScroll=!0,si(this,"swapDoc",this,t),t}),phrase:function(e){var t=this.options.phrases;return t&&Object.prototype.hasOwnProperty.call(t,e)?t[e]:e},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},we(e),e.registerHelper=function(t,n,r){i.hasOwnProperty(t)||(i[t]=e[t]={_global:[]}),i[t][n]=r},e.registerGlobalHelper=function(t,n,r,o){e.registerHelper(t,n,o),i[t]._global.push({pred:r,val:o})}}(Es);var Hs="iter insert remove copy getEditor constructor".split(" ");for(var zs in ko.prototype)ko.prototype.hasOwnProperty(zs)&&j(Hs,zs)<0&&(Es.prototype[zs]=function(e){return function(){return e.apply(this.doc,arguments)}}(ko.prototype[zs]));return we(ko),Es.inputStyles={textarea:Ws,contenteditable:Os},Es.defineMode=function(e){Es.defaults.mode||"null"==e||(Es.defaults.mode=e),function(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),Me[e]=t}.apply(this,arguments)},Es.defineMIME=function(e,t){Oe[e]=t},Es.defineMode("null",function(){return{token:function(e){return e.skipToEnd()}}}),Es.defineMIME("text/plain","null"),Es.defineExtension=function(e,t){Es.prototype[e]=t},Es.defineDocExtension=function(e,t){ko.prototype[e]=t},Es.fromTextArea=function(e,t){if((t=t?P(t):{}).value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),null==t.autofocus){var i=B();t.autofocus=i==e||null!=e.getAttribute("autofocus")&&i==document.body}function n(){e.value=a.getValue()}var r;if(e.form&&(de(e.form,"submit",n),!t.leaveSubmitMethodAlone)){var o=e.form;r=o.submit;try{var s=o.submit=function(){n(),o.submit=r,o.submit(),o.submit=s}}catch(e){}}t.finishInit=function(i){i.save=n,i.getTextArea=function(){return e},i.toTextArea=function(){i.toTextArea=isNaN,n(),e.parentNode.removeChild(i.getWrapperElement()),e.style.display="",e.form&&(pe(e.form,"submit",n),t.leaveSubmitMethodAlone||"function"!=typeof e.form.submit||(e.form.submit=r))}},e.style.display="none";var a=Es(function(t){return e.parentNode.insertBefore(t,e.nextSibling)},t);return a},function(e){e.off=pe,e.on=de,e.wheelEventPixels=gr,e.Doc=ko,e.splitLines=Le,e.countColumn=N,e.findColumn=q,e.isWordChar=ee,e.Pass=H,e.signal=me,e.Line=Ut,e.changeEnd=Ar,e.scrollbarModel=jn,e.Pos=Ze,e.cmpPos=et,e.modes=Me,e.mimeModes=Oe,e.resolveMode=Pe,e.getMode=Ne,e.modeExtensions=Ie,e.extendMode=je,e.copyState=We,e.startState=ze,e.innerMode=He,e.commands=Xo,e.keyMap=Io,e.keyName=Uo,e.isModifierKey=zo,e.lookupKey=Ho,e.normalizeKeyMap=Wo,e.StringStream=Ve,e.SharedTextMarker=Eo,e.TextMarker=Co,e.LineWidget=yo,e.e_preventDefault=be,e.e_stopPropagation=Ce,e.e_stop=Ee,e.addClass=R,e.contains=L,e.rmClass=S,e.keyNames=Mo}(Es),Es.version="5.65.1",Es}()},yY5G:function(e,t,i){},"z/Td":function(e,t,i){i("h6RU"),i("LD0F"),e.exports=i("zpmP").Array.from}}]); \ No newline at end of file +!function(e,t){module.exports=t()}(0,function(){return function(e){var t={};function i(n){if(t[n])return t[n].exports;var r=t[n]={exports:{},id:n,loaded:!1};return e[n].call(r.exports,r,r.exports,i),r.loaded=!0,r.exports}return i.m=e,i.c=t,i.p="",i(0)}([function(e,t,i){"use strict";var n;try{n=i(1)}catch(e){}var r=i(51),o=i(62),s=i(54);function a(e,t,i){if(!(this instanceof a))throw new Error('JSONEditor constructor called without "new".');var n=s.getInternetExplorerVersion();if(-1!=n&&n<9)throw new Error("Unsupported browser, IE9 or newer required. Please install the newest version of your browser.");if(t&&(t.error&&(console.warn('Option "error" has been renamed to "onError"'),t.onError=t.error,delete t.error),t.change&&(console.warn('Option "change" has been renamed to "onChange"'),t.onChange=t.change,delete t.change),t.editable&&(console.warn('Option "editable" has been renamed to "onEditable"'),t.onEditable=t.editable,delete t.editable),t)){var r=["ace","theme","ajv","schema","onChange","onEditable","onError","onModeChange","escapeUnicode","history","search","mode","modes","name","indentation","sortObjectKeys"];Object.keys(t).forEach(function(e){-1===r.indexOf(e)&&console.warn('Unknown option "'+e+'". This option will be ignored')})}arguments.length&&this._create(e,t,i)}a.modes={},a.prototype.DEBOUNCE_INTERVAL=150,a.prototype._create=function(e,t,i){this.container=e,this.options=t||{},this.json=i||{};var n=this.options.mode||"tree";this.setMode(n)},a.prototype.destroy=function(){},a.prototype.set=function(e){this.json=e},a.prototype.get=function(){return this.json},a.prototype.setText=function(e){this.json=s.parse(e)},a.prototype.getText=function(){return JSON.stringify(this.json)},a.prototype.setName=function(e){this.options||(this.options={}),this.options.name=e},a.prototype.getName=function(){return this.options&&this.options.name},a.prototype.setMode=function(e){var t,i,n=this.container,r=s.extend({},this.options),o=r.mode;r.mode=e;var l=a.modes[e];if(!l)throw new Error('Unknown mode "'+r.mode+'"');try{var c="text"==l.data;if(i=this.getName(),t=this[c?"getText":"get"](),this.destroy(),s.clear(this),s.extend(this,l.mixin),this.create(n,r),this.setName(i),this[c?"setText":"set"](t),"function"==typeof l.load)try{l.load.call(this)}catch(e){console.error(e)}if("function"==typeof r.onModeChange&&e!==o)try{r.onModeChange(e,o)}catch(e){console.error(e)}}catch(e){this._onError(e)}},a.prototype.getMode=function(){return this.options.mode},a.prototype._onError=function(e){if(!this.options||"function"!=typeof this.options.onError)throw e;this.options.onError(e)},a.prototype.setSchema=function(e){if(e){var t;try{t=this.options.ajv||n({allErrors:!0,verbose:!0})}catch(e){console.warn("Failed to create an instance of Ajv, JSON Schema validation is not available. Please use a JSONEditor bundle including Ajv, or pass an instance of Ajv as via the configuration option `ajv`.")}t&&(this.validateSchema=t.compile(e),this.options.schema=e,this.validate()),this.refresh()}else this.validateSchema=null,this.options.schema=null,this.validate(),this.refresh()},a.prototype.validate=function(){},a.prototype.refresh=function(){},a.registerMode=function(e){var t,i;if(s.isArray(e))for(t=0;t<e.length;t++)a.registerMode(e[t]);else{if(!("mode"in e))throw new Error('Property "mode" missing');if(!("mixin"in e))throw new Error('Property "mixin" missing');if(!("data"in e))throw new Error('Property "data" missing');var n=e.mode;if(n in a.modes)throw new Error('Mode "'+n+'" already registered');if("function"!=typeof e.mixin.create)throw new Error('Required function "create" missing on mixin');var r=["setMode","registerMode","modes"];for(t=0;t<r.length;t++)if((i=r[t])in e.mixin)throw new Error('Reserved property "'+i+'" not allowed in mixin');a.modes[n]=e}},a.registerMode(r),a.registerMode(o),e.exports=a},function(e,t,i){"use strict";var n=i(2),r=i(3),o=i(21),s=i(16),a=i(12),l=i(22),c=i(23),h=i(43),u=i(11),d=i(17),f=i(19);e.exports=y,y.prototype.compileAsync=d.compile,y.prototype.addKeyword=i(49),y.ValidationError=i(20);var p="http://json-schema.org/draft-04/schema",m=/^(?:(?:[a-z][a-z0-9+-.]*:)?\/\/)?[^\s]*$/i;function g(e){return m.test(e)}var v=["removeAdditional","useDefaults","coerceTypes"];function y(e){if(!(this instanceof y))return new y(e);var t=this;function w(e,i){var n;if("string"==typeof e){if(!(n=E(e)))throw new Error('no schema with key or ref "'+e+'"')}else{var r=S(e);n=r.validate||k(r)}var o=n(i);return n.async?"*"==t._opts.async?f(o):o:(t.errors=n.errors,o)}function b(e,i,n,o){if(Array.isArray(e))for(var s=0;s<e.length;s++)b(e[s],void 0,n,o);else $(i=r.normalizeId(i||e.id)),(t._schemas[i]=S(e,n,!0)).meta=o}function C(e,t,i){b(e,t,i,!0)}function A(e,i){var n=e.$schema||t._opts.defaultMeta||function(){var e=t._opts.meta;return t._opts.defaultMeta="object"==typeof e?e.id||e:t._opts.v5?h.META_SCHEMA_ID:p,t._opts.defaultMeta}(),r=t._formats.uri;t._formats.uri="function"==typeof r?g:m;var o=w(n,e);if(t._formats.uri=r,!o&&i){var s="schema is invalid:"+_();if("log"!=t._opts.validateSchema)throw new Error(s);console.error(s)}return o}function E(e){var t=x(e);switch(typeof t){case"object":return t.validate||k(t);case"string":return E(t)}}function x(e){return e=r.normalizeId(e),t._schemas[e]||t._refs[e]}function F(e,i){for(var n in e){var r=e[n];r.meta||i&&!i.test(n)||(t._cache.del(r.jsonStr),delete e[n])}}function S(e,i,n){if("object"!=typeof e)throw new Error("schema should be object");var o=a(e),l=t._cache.get(o);if(l)return l;n=n||!1!==t._opts.addUsedSchema;var c=r.normalizeId(e.id);c&&n&&$(c),!1===t._opts.validateSchema||i||A(e,!0);var h=r.ids.call(t,e),u=new s({id:c,schema:e,localRefs:h,jsonStr:o});return"#"!=c[0]&&n&&(t._refs[c]=u),t._cache.put(o,u),u}function k(e,i){if(e.compiling)return e.validate=s,s.schema=e.schema,s.errors=null,s.root=i||s,!0===e.schema.$async&&(s.async=!0),s;var r,o;e.compiling=!0,e.meta&&(r=t._opts,t._opts=t._metaOpts);try{o=n.call(t,e.schema,i,e.localRefs)}finally{e.compiling=!1,e.meta&&(t._opts=r)}return e.validate=o,e.refs=o.refs,e.refVal=o.refVal,e.root=o.root,o;function s(){var t=e.validate,i=t.apply(null,arguments);return s.errors=t.errors,i}}function _(e,i){if(!(e=e||t.errors))return"No errors";for(var n=void 0===(i=i||{}).separator?", ":i.separator,r=void 0===i.dataVar?"data":i.dataVar,o="",s=0;s<e.length;s++){var a=e[s];a&&(o+=r+a.dataPath+" "+a.message+n)}return o.slice(0,-n.length)}function D(e,i){"string"==typeof i&&(i=new RegExp(i)),t._formats[e]=i}function $(e){if(t._schemas[e]||t._refs[e])throw new Error('schema with key or id "'+e+'" already exists')}e=this._opts=u.copy(e)||{},this._schemas={},this._refs={},this._formats=l(e.format),this._cache=e.cache||new o,this._loadingSchemas={},this.RULES=c(),this.validate=w,this.compile=function(e){var t=S(e);return t.validate||k(t)},this.addSchema=b,this.addMetaSchema=C,this.validateSchema=A,this.getSchema=E,this.removeSchema=function(e){switch(typeof e){case"undefined":return F(t._schemas),F(t._refs),void t._cache.clear();case"string":var i=x(e);return i&&t._cache.del(i.jsonStr),delete t._schemas[e],void delete t._refs[e];case"object":if(e instanceof RegExp)return F(t._schemas,e),void F(t._refs,e);var n=a(e);t._cache.del(n);var o=e.id;o&&(o=r.normalizeId(o),delete t._schemas[o],delete t._refs[o])}},this.addFormat=D,this.errorsText=_,this._addSchema=S,this._compile=k,e.loopRequired=e.loopRequired||1/0,(e.async||e.transpile)&&d.setup(e),!0===e.beautify&&(e.beautify={indent_size:2}),"property"==e.errorDataPath&&(e._errorDataPathProperty=!0),this._metaOpts=function(){for(var e=u.copy(t._opts),i=0;i<v.length;i++)delete e[v[i]];return e}(),function(){if(!1!==t._opts.meta){var e=i(50);C(e,p,!0),t._refs["http://json-schema.org/schema"]=p}var n=t._opts.schemas;if(!n)return;if(Array.isArray(n))b(n);else for(var r in n)b(n[r],r)}(),e.formats&&function(){for(var e in t._opts.formats){var i=t._opts.formats[e];D(e,i)}}(),e.v5&&h.enable(this),"object"==typeof e.meta&&C(e.meta)}},function(module,exports,__webpack_require__){"use strict";var resolve=__webpack_require__(3),util=__webpack_require__(11),stableStringify=__webpack_require__(12),async=__webpack_require__(17),beautify=function(){try{return __webpack_require__(!function(){var e=new Error('Cannot find module "js-beautify"');throw e.code="MODULE_NOT_FOUND",e}()).js_beautify}catch(e){}}(),validateGenerator=__webpack_require__(18);function compile(schema,root,localRefs,baseId){var self=this,opts=this._opts,refVal=[void 0],refs={},patterns=[],patternsHash={},defaults=[],defaultsHash={},customRules=[];root=root||{schema:schema,refVal:refVal,refs:refs};var formats=this._formats,RULES=this.RULES;return localCompile(schema,root,localRefs,baseId);function localCompile(_schema,_root,localRefs,baseId){var isRoot=!_root||_root&&_root.schema==_schema;if(_root.schema!=root.schema)return compile.call(self,_schema,_root,localRefs,baseId);var $async=!0===_schema.$async;$async&&!opts.transpile&&async.setup(opts);var sourceCode=validateGenerator({isTop:!0,schema:_schema,isRoot:isRoot,baseId:baseId,root:_root,schemaPath:"",errSchemaPath:"#",errorPath:'""',RULES:RULES,validate:validateGenerator,util:util,resolve:resolve,resolveRef:resolveRef,usePattern:usePattern,useDefault:useDefault,useCustomRule:useCustomRule,opts:opts,formats:formats,self:self});sourceCode=vars(refVal,refValCode)+vars(patterns,patternCode)+vars(defaults,defaultCode)+vars(customRules,customRuleCode)+sourceCode,opts.beautify&&(beautify?sourceCode=beautify(sourceCode,opts.beautify):console.error('"npm install js-beautify" to use beautify option'));var validate,validateCode,transpile=opts._transpileFunc;try{validateCode=$async&&transpile?transpile(sourceCode):sourceCode,eval(validateCode),refVal[0]=validate}catch(e){throw console.error("Error compiling schema, function code:",validateCode),e}return validate.schema=_schema,validate.errors=null,validate.refs=refs,validate.refVal=refVal,validate.root=isRoot?validate:_root,$async&&(validate.async=!0),validate.sourceCode=sourceCode,validate}function resolveRef(e,t,i){t=resolve.url(e,t);var n,r,o=refs[t];if(void 0!==o)return resolvedRef(n=refVal[o],r="refVal["+o+"]");if(!i){var s=root.refs[t];if(void 0!==s)return resolvedRef(n=root.refVal[s],r=addLocalRef(t,n))}r=addLocalRef(t);var a=resolve.call(self,localCompile,root,t);if(!a){var l=localRefs&&localRefs[t];l&&(a=resolve.inlineRef(l,opts.inlineRefs)?l:compile.call(self,l,root,localRefs,e))}return a?(replaceLocalRef(t,a),resolvedRef(a,r)):void 0}function addLocalRef(e,t){var i=refVal.length;return refVal[i]=t,refs[e]=i,"refVal"+i}function replaceLocalRef(e,t){var i=refs[e];refVal[i]=t}function resolvedRef(e,t){return"object"==typeof e?{code:t,schema:e,inline:!0}:{code:t,async:e&&e.async}}function usePattern(e){var t=patternsHash[e];return void 0===t&&(t=patternsHash[e]=patterns.length,patterns[t]=e),"pattern"+t}function useDefault(e){switch(typeof e){case"boolean":case"number":return""+e;case"string":return util.toQuotedString(e);case"object":if(null===e)return"null";var t=stableStringify(e),i=defaultsHash[t];return void 0===i&&(i=defaultsHash[t]=defaults.length,defaults[i]=e),"default"+i}}function useCustomRule(e,t,i,n){var r,o=e.definition.compile,s=e.definition.inline,a=e.definition.macro;o?r=o.call(self,t,i):a?(r=a.call(self,t,i),!1!==opts.validateSchema&&self.validateSchema(r,!0)):r=s?s.call(self,n,e.keyword,t,i):e.definition.validate;var l=customRules.length;return customRules[l]=r,{code:"customRule"+l,validate:r}}}function patternCode(e,t){return"var pattern"+e+" = new RegExp("+util.toQuotedString(t[e])+");"}function defaultCode(e){return"var default"+e+" = defaults["+e+"];"}function refValCode(e,t){return t[e]?"var refVal"+e+" = refVal["+e+"];":""}function customRuleCode(e){return"var customRule"+e+" = customRules["+e+"];"}function vars(e,t){if(!e.length)return"";for(var i="",n=0;n<e.length;n++)i+=t(n,e);return i}module.exports=compile;var co=__webpack_require__(19),ucs2length=util.ucs2length,equal=__webpack_require__(10),ValidationError=__webpack_require__(20)},function(e,t,i){"use strict";var n=i(4),r=i(10),o=i(11),s=i(16);function a(e,t,i){var n=this._refs[i];if("string"==typeof n){if(!this._refs[n])return a.call(this,e,t,n);n=this._refs[n]}if((n=n||this._schemas[i])instanceof s)return d(n.schema,this._opts.inlineRefs)?n.schema:n.validate||this._compile(n);var r,o,c,h=l.call(this,t,i);return h&&(r=h.schema,t=h.root,c=h.baseId),r instanceof s?o=r.validate||e.call(this,r.schema,t,void 0,c):r&&(o=d(r,this._opts.inlineRefs)?r:e.call(this,r,t,void 0,c)),o}function l(e,t){var i=n.parse(t,!1,!0),r=p(i),o=f(e.schema.id);if(r!==o){var a=g(r),c=this._refs[a];if("string"==typeof c)return function(e,t,i){var n=l.call(this,e,t);if(n){var r=n.schema,o=n.baseId;return e=n.root,r.id&&(o=v(o,r.id)),h.call(this,i,o,r,e)}}.call(this,e,c,i);if(c instanceof s)c.validate||this._compile(c),e=c;else if((c=this._schemas[a])instanceof s){if(c.validate||this._compile(c),a==g(t))return{schema:c,root:e,baseId:o};e=c}if(!e.schema)return;o=f(e.schema.id)}return h.call(this,i,o,e.schema,e)}e.exports=a,a.normalizeId=g,a.fullPath=f,a.url=v,a.ids=function(e){var t=g(e.id),i={};return function e(t,s,a){if(Array.isArray(t))for(var l=0;l<t.length;l++)e.call(this,t[l],s+"/"+l,a);else if(t&&"object"==typeof t){if("string"==typeof t.id){var c=a=a?n.resolve(a,t.id):t.id;c=g(c);var h=this._refs[c];if("string"==typeof h&&(h=this._refs[h]),h&&h.schema){if(!r(t,h.schema))throw new Error('id "'+c+'" resolves to more than one schema')}else if(c!=g(s))if("#"==c[0]){if(i[c]&&!r(t,i[c]))throw new Error('id "'+c+'" resolves to more than one schema');i[c]=t}else this._refs[c]=s}for(var u in t)e.call(this,t[u],s+"/"+o.escapeFragment(u),a)}}.call(this,e,f(t,!1),t),i},a.inlineRef=d;var c=o.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function h(e,t,i,n){if(e.hash=e.hash||"","#/"==e.hash.slice(0,2)){for(var r=e.hash.split("/"),s=1;s<r.length;s++){var a=r[s];if(a){if(!(i=i[a=o.unescapeFragment(a)]))break;if(i.id&&!c[a]&&(t=v(t,i.id)),i.$ref){var h=v(t,i.$ref),u=l.call(this,n,h);u&&(i=u.schema,n=u.root,t=u.baseId)}}}return i&&i!=n.schema?{schema:i,root:n,baseId:t}:void 0}}var u=o.toHash(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum"]);function d(e,t){return!1!==t&&(void 0===t||!0===t?function e(t){var i;if(Array.isArray(t)){for(var n=0;n<t.length;n++)if("object"==typeof(i=t[n])&&!e(i))return!1}else for(var r in t){if("$ref"==r)return!1;if("object"==typeof(i=t[r])&&!e(i))return!1}return!0}(e):t?function e(t){var i,n=0;if(Array.isArray(t)){for(var r=0;r<t.length;r++)if("object"==typeof(i=t[r])&&(n+=e(i)),n==1/0)return 1/0}else for(var o in t){if("$ref"==o)return 1/0;if(u[o])n++;else if("object"==typeof(i=t[o])&&(n+=e(i)+1),n==1/0)return 1/0}return n}(e)<=t:void 0)}function f(e,t){return!1!==t&&(e=g(e)),p(n.parse(e,!1,!0))}function p(e){return(e.protocol||"")+(e.protocol?"//":"")+(e.host||"")+(e.path||"")+"#"}var m=/#\/?$/;function g(e){return e?e.replace(m,""):""}function v(e,t){return t=g(t),n.resolve(e,t)}},function(e,t,i){var n=i(5);function r(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}t.parse=v,t.resolve=function(e,t){return v(e,!1,!0).resolve(t)},t.resolveObject=function(e,t){return e?v(e,!1,!0).resolveObject(t):t},t.format=function(e){y(e)&&(e=v(e));return e instanceof r?e.format():r.prototype.format.call(e)},t.Url=r;var o=/^([a-z0-9.+-]+:)/i,s=/:[0-9]*$/,a=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),l=["'"].concat(a),c=["%","/","?",";","#"].concat(l),h=["/","?","#"],u=/^[a-z0-9A-Z_-]{0,63}$/,d=/^([a-z0-9A-Z_-]{0,63})(.*)$/,f={javascript:!0,"javascript:":!0},p={javascript:!0,"javascript:":!0},m={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},g=i(7);function v(e,t,i){if(e&&w(e)&&e instanceof r)return e;var n=new r;return n.parse(e,t,i),n}function y(e){return"string"==typeof e}function w(e){return"object"==typeof e&&null!==e}function b(e){return null===e}r.prototype.parse=function(e,t,i){if(!y(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var r=e;r=r.trim();var s=o.exec(r);if(s){var a=(s=s[0]).toLowerCase();this.protocol=a,r=r.substr(s.length)}if(i||s||r.match(/^\/\/[^@\/]+@[^@\/]+/)){var v="//"===r.substr(0,2);!v||s&&p[s]||(r=r.substr(2),this.slashes=!0)}if(!p[s]&&(v||s&&!m[s])){for(var w,b,C=-1,A=0;A<h.length;A++){-1!==(E=r.indexOf(h[A]))&&(-1===C||E<C)&&(C=E)}-1!==(b=-1===C?r.lastIndexOf("@"):r.lastIndexOf("@",C))&&(w=r.slice(0,b),r=r.slice(b+1),this.auth=decodeURIComponent(w)),C=-1;for(A=0;A<c.length;A++){var E;-1!==(E=r.indexOf(c[A]))&&(-1===C||E<C)&&(C=E)}-1===C&&(C=r.length),this.host=r.slice(0,C),r=r.slice(C),this.parseHost(),this.hostname=this.hostname||"";var x="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!x)for(var F=this.hostname.split(/\./),S=(A=0,F.length);A<S;A++){var k=F[A];if(k&&!k.match(u)){for(var _="",D=0,$=k.length;D<$;D++)k.charCodeAt(D)>127?_+="x":_+=k[D];if(!_.match(u)){var L=F.slice(0,A),B=F.slice(A+1),R=k.match(d);R&&(L.push(R[1]),B.unshift(R[2])),B.length&&(r="/"+B.join(".")+r),this.hostname=L.join(".");break}}}if(this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),!x){var T=this.hostname.split("."),M=[];for(A=0;A<T.length;++A){var O=T[A];M.push(O.match(/[^A-Za-z0-9_-]/)?"xn--"+n.encode(O):O)}this.hostname=M.join(".")}var P=this.port?":"+this.port:"",N=this.hostname||"";this.host=N+P,this.href+=this.host,x&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==r[0]&&(r="/"+r))}if(!f[a])for(A=0,S=l.length;A<S;A++){var I=l[A],j=encodeURIComponent(I);j===I&&(j=escape(I)),r=r.split(I).join(j)}var W=r.indexOf("#");-1!==W&&(this.hash=r.substr(W),r=r.slice(0,W));var H=r.indexOf("?");if(-1!==H?(this.search=r.substr(H),this.query=r.substr(H+1),t&&(this.query=g.parse(this.query)),r=r.slice(0,H)):t&&(this.search="",this.query={}),r&&(this.pathname=r),m[a]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){P=this.pathname||"",O=this.search||"";this.path=P+O}return this.href=this.format(),this},r.prototype.format=function(){var e=this.auth||"";e&&(e=(e=encodeURIComponent(e)).replace(/%3A/i,":"),e+="@");var t=this.protocol||"",i=this.pathname||"",n=this.hash||"",r=!1,o="";this.host?r=e+this.host:this.hostname&&(r=e+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(r+=":"+this.port)),this.query&&w(this.query)&&Object.keys(this.query).length&&(o=g.stringify(this.query));var s=this.search||o&&"?"+o||"";return t&&":"!==t.substr(-1)&&(t+=":"),this.slashes||(!t||m[t])&&!1!==r?(r="//"+(r||""),i&&"/"!==i.charAt(0)&&(i="/"+i)):r||(r=""),n&&"#"!==n.charAt(0)&&(n="#"+n),s&&"?"!==s.charAt(0)&&(s="?"+s),t+r+(i=i.replace(/[?#]/g,function(e){return encodeURIComponent(e)}))+(s=s.replace("#","%23"))+n},r.prototype.resolve=function(e){return this.resolveObject(v(e,!1,!0)).format()},r.prototype.resolveObject=function(e){if(y(e)){var t=new r;t.parse(e,!1,!0),e=t}var i=new r;if(Object.keys(this).forEach(function(e){i[e]=this[e]},this),i.hash=e.hash,""===e.href)return i.href=i.format(),i;if(e.slashes&&!e.protocol)return Object.keys(e).forEach(function(t){"protocol"!==t&&(i[t]=e[t])}),m[i.protocol]&&i.hostname&&!i.pathname&&(i.path=i.pathname="/"),i.href=i.format(),i;if(e.protocol&&e.protocol!==i.protocol){if(!m[e.protocol])return Object.keys(e).forEach(function(t){i[t]=e[t]}),i.href=i.format(),i;if(i.protocol=e.protocol,e.host||p[e.protocol])i.pathname=e.pathname;else{for(var n=(e.pathname||"").split("/");n.length&&!(e.host=n.shift()););e.host||(e.host=""),e.hostname||(e.hostname=""),""!==n[0]&&n.unshift(""),n.length<2&&n.unshift(""),i.pathname=n.join("/")}if(i.search=e.search,i.query=e.query,i.host=e.host||"",i.auth=e.auth,i.hostname=e.hostname||e.host,i.port=e.port,i.pathname||i.search){var o=i.pathname||"",s=i.search||"";i.path=o+s}return i.slashes=i.slashes||e.slashes,i.href=i.format(),i}var a=i.pathname&&"/"===i.pathname.charAt(0),l=e.host||e.pathname&&"/"===e.pathname.charAt(0),c=l||a||i.host&&e.pathname,h=c,u=i.pathname&&i.pathname.split("/")||[],d=(n=e.pathname&&e.pathname.split("/")||[],i.protocol&&!m[i.protocol]);if(d&&(i.hostname="",i.port=null,i.host&&(""===u[0]?u[0]=i.host:u.unshift(i.host)),i.host="",e.protocol&&(e.hostname=null,e.port=null,e.host&&(""===n[0]?n[0]=e.host:n.unshift(e.host)),e.host=null),c=c&&(""===n[0]||""===u[0])),l)i.host=e.host||""===e.host?e.host:i.host,i.hostname=e.hostname||""===e.hostname?e.hostname:i.hostname,i.search=e.search,i.query=e.query,u=n;else if(n.length)u||(u=[]),u.pop(),u=u.concat(n),i.search=e.search,i.query=e.query;else if(!function(e){return null==e}(e.search)){if(d)i.hostname=i.host=u.shift(),(C=!!(i.host&&i.host.indexOf("@")>0)&&i.host.split("@"))&&(i.auth=C.shift(),i.host=i.hostname=C.shift());return i.search=e.search,i.query=e.query,b(i.pathname)&&b(i.search)||(i.path=(i.pathname?i.pathname:"")+(i.search?i.search:"")),i.href=i.format(),i}if(!u.length)return i.pathname=null,i.search?i.path="/"+i.search:i.path=null,i.href=i.format(),i;for(var f=u.slice(-1)[0],g=(i.host||e.host)&&("."===f||".."===f)||""===f,v=0,w=u.length;w>=0;w--)"."==(f=u[w])?u.splice(w,1):".."===f?(u.splice(w,1),v++):v&&(u.splice(w,1),v--);if(!c&&!h)for(;v--;v)u.unshift("..");!c||""===u[0]||u[0]&&"/"===u[0].charAt(0)||u.unshift(""),g&&"/"!==u.join("/").substr(-1)&&u.push("");var C,A=""===u[0]||u[0]&&"/"===u[0].charAt(0);d&&(i.hostname=i.host=A?"":u.length?u.shift():"",(C=!!(i.host&&i.host.indexOf("@")>0)&&i.host.split("@"))&&(i.auth=C.shift(),i.host=i.hostname=C.shift()));return(c=c||i.host&&u.length)&&!A&&u.unshift(""),u.length?i.pathname=u.join("/"):(i.pathname=null,i.path=null),b(i.pathname)&&b(i.search)||(i.path=(i.pathname?i.pathname:"")+(i.search?i.search:"")),i.auth=e.auth||i.auth,i.slashes=i.slashes||e.slashes,i.href=i.format(),i},r.prototype.parseHost=function(){var e=this.host,t=s.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},function(e,t,i){var n;(function(e,r){!function(o){"object"==typeof t&&t&&t.nodeType,"object"==typeof e&&e&&e.nodeType;var s="object"==typeof r&&r;s.global!==s&&s.window!==s&&s.self;var a,l=2147483647,c=36,h=1,u=26,d=38,f=700,p=72,m=128,g="-",v=/^xn--/,y=/[^\x20-\x7E]/,w=/[\x2E\u3002\uFF0E\uFF61]/g,b={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},C=c-h,A=Math.floor,E=String.fromCharCode;function x(e){throw RangeError(b[e])}function F(e,t){for(var i=e.length,n=[];i--;)n[i]=t(e[i]);return n}function S(e,t){var i=e.split("@"),n="";return i.length>1&&(n=i[0]+"@",e=i[1]),n+F((e=e.replace(w,".")).split("."),t).join(".")}function k(e){for(var t,i,n=[],r=0,o=e.length;r<o;)(t=e.charCodeAt(r++))>=55296&&t<=56319&&r<o?56320==(64512&(i=e.charCodeAt(r++)))?n.push(((1023&t)<<10)+(1023&i)+65536):(n.push(t),r--):n.push(t);return n}function _(e){return F(e,function(e){var t="";return e>65535&&(t+=E((e-=65536)>>>10&1023|55296),e=56320|1023&e),t+=E(e)}).join("")}function D(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:c}function $(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function L(e,t,i){var n=0;for(e=i?A(e/f):e>>1,e+=A(e/t);e>C*u>>1;n+=c)e=A(e/C);return A(n+(C+1)*e/(e+d))}function B(e){var t,i,n,r,o,s,a,d,f,v,y=[],w=e.length,b=0,C=m,E=p;for((i=e.lastIndexOf(g))<0&&(i=0),n=0;n<i;++n)e.charCodeAt(n)>=128&&x("not-basic"),y.push(e.charCodeAt(n));for(r=i>0?i+1:0;r<w;){for(o=b,s=1,a=c;r>=w&&x("invalid-input"),((d=D(e.charCodeAt(r++)))>=c||d>A((l-b)/s))&&x("overflow"),b+=d*s,!(d<(f=a<=E?h:a>=E+u?u:a-E));a+=c)s>A(l/(v=c-f))&&x("overflow"),s*=v;E=L(b-o,t=y.length+1,0==o),A(b/t)>l-C&&x("overflow"),C+=A(b/t),b%=t,y.splice(b++,0,C)}return _(y)}function R(e){var t,i,n,r,o,s,a,d,f,v,y,w,b,C,F,S=[];for(w=(e=k(e)).length,t=m,i=0,o=p,s=0;s<w;++s)(y=e[s])<128&&S.push(E(y));for(n=r=S.length,r&&S.push(g);n<w;){for(a=l,s=0;s<w;++s)(y=e[s])>=t&&y<a&&(a=y);for(a-t>A((l-i)/(b=n+1))&&x("overflow"),i+=(a-t)*b,t=a,s=0;s<w;++s)if((y=e[s])<t&&++i>l&&x("overflow"),y==t){for(d=i,f=c;!(d<(v=f<=o?h:f>=o+u?u:f-o));f+=c)F=d-v,C=c-v,S.push(E($(v+F%C,0))),d=A(F/C);S.push(E($(d,0))),o=L(i,b,n==r),i=0,++n}++i,++t}return S.join("")}a={version:"1.3.2",ucs2:{decode:k,encode:_},decode:B,encode:R,toASCII:function(e){return S(e,function(e){return y.test(e)?"xn--"+R(e):e})},toUnicode:function(e){return S(e,function(e){return v.test(e)?B(e.slice(4).toLowerCase()):e})}},void 0===(n=function(){return a}.call(t,i,t,e))||(e.exports=n)}()}).call(t,i(6)(e),function(){return this}())},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children=[],e.webpackPolyfill=1),e}},function(e,t,i){"use strict";t.decode=t.parse=i(8),t.encode=t.stringify=i(9)},function(e,t){"use strict";function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.exports=function(e,t,n,r){t=t||"&",n=n||"=";var o={};if("string"!=typeof e||0===e.length)return o;var s=/\+/g;e=e.split(t);var a=1e3;r&&"number"==typeof r.maxKeys&&(a=r.maxKeys);var l=e.length;a>0&&l>a&&(l=a);for(var c=0;c<l;++c){var h,u,d,f,p=e[c].replace(s,"%20"),m=p.indexOf(n);m>=0?(h=p.substr(0,m),u=p.substr(m+1)):(h=p,u=""),d=decodeURIComponent(h),f=decodeURIComponent(u),i(o,d)?Array.isArray(o[d])?o[d].push(f):o[d]=[o[d],f]:o[d]=f}return o}},function(e,t){"use strict";var i=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}};e.exports=function(e,t,n,r){return t=t||"&",n=n||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map(function(r){var o=encodeURIComponent(i(r))+n;return Array.isArray(e[r])?e[r].map(function(e){return o+encodeURIComponent(i(e))}).join(t):o+encodeURIComponent(i(e[r]))}).join(t):r?encodeURIComponent(i(r))+n+encodeURIComponent(i(e)):""}},function(e,t){"use strict";e.exports=function e(t,i){if(t===i)return!0;var n,r=Array.isArray(t),o=Array.isArray(i);if(r&&o){if(t.length!=i.length)return!1;for(n=0;n<t.length;n++)if(!e(t[n],i[n]))return!1;return!0}if(r!=o)return!1;if(t&&i&&"object"==typeof t&&"object"==typeof i){var s=Object.keys(t);if(s.length!==Object.keys(i).length)return!1;for(n=0;n<s.length;n++)if(void 0===i[s[n]])return!1;for(n=0;n<s.length;n++)if(!e(t[s[n]],i[s[n]]))return!1;return!0}return!1}},function(e,t,i){"use strict";function n(e,t,i){var n=i?" !== ":" === ",r=i?" || ":" && ",o=i?"!":"",s=i?"":"!";switch(e){case"null":return t+n+"null";case"array":return o+"Array.isArray("+t+")";case"object":return"("+o+t+r+"typeof "+t+n+'"object"'+r+s+"Array.isArray("+t+"))";case"integer":return"(typeof "+t+n+'"number"'+r+s+"("+t+" % 1))";default:return"typeof "+t+n+'"'+e+'"'}}e.exports={copy:function(e,t){for(var i in t=t||{},e)t[i]=e[i];return t},checkDataType:n,checkDataTypes:function(e,t){switch(e.length){case 1:return n(e[0],t,!0);default:var i="",r=o(e);for(var s in r.array&&r.object&&(i=r.null?"(":"(!"+t+" || ",i+="typeof "+t+' !== "object")',delete r.null,delete r.array,delete r.object),r.number&&delete r.integer,r)i+=(i?" && ":"")+n(s,t,!0);return i}},coerceToTypes:function(e){if(Array.isArray(e)){for(var t=[],i=0;i<e.length;i++){var n=e[i];r[n]&&(t[t.length]=n)}if(t.length)return t}else if(r[e])return[e]},toHash:o,getProperty:l,escapeQuotes:c,ucs2length:function(e){var t,i=0,n=e.length,r=0;for(;r<n;)i++,(t=e.charCodeAt(r++))>=55296&&t<=56319&&r<n&&56320==(64512&(t=e.charCodeAt(r)))&&r++;return i},varOccurences:function(e,t){t+="[^0-9]";var i=e.match(new RegExp(t,"g"));return i?i.length:0},varReplace:function(e,t,i){return t+="([^0-9])",i=i.replace(/\$/g,"$$$$"),e.replace(new RegExp(t,"g"),i+"$1")},cleanUpCode:function(e){return e.replace(h,"").replace(u,"").replace(d,"if (!($1))")},cleanUpVarErrors:function(e,t){var i=e.match(f);return i&&2===i.length?t?e.replace(m,"").replace(y,w):e.replace(p,"").replace(g,v):e},schemaHasRules:function(e,t){for(var i in e)if(t[i])return!0},stableStringify:i(12),toQuotedString:b,getPathExpr:function(e,t,i,n){return A(e,i?"'/' + "+t+(n?"":".replace(/~/g, '~0').replace(/\\//g, '~1')"):n?"'[' + "+t+" + ']'":"'[\\'' + "+t+" + '\\']'")},getPath:function(e,t,i){var n=b(i?"/"+E(t):l(t));return A(e,n)},getData:function(e,t,i){var n=e.match(C);if(!n)throw new Error("Invalid relative JSON-pointer: "+e);var r=+n[1],o=n[2];if("#"==o){if(r>=t)throw new Error("Cannot access property/index "+r+" levels up, current level is "+t);return i[t-r]}if(r>t)throw new Error("Cannot access data "+r+" levels up, current level is "+t);var s="data"+(t-r||"");if(!o)return s;for(var a=s,c=o.split("/"),h=0;h<c.length;h++){var u=c[h];u&&(s+=l(x(u)),a+=" && "+s)}return a},unescapeFragment:function(e){return x(decodeURIComponent(e))},escapeFragment:function(e){return encodeURIComponent(E(e))},escapeJsonPointer:E};var r=o(["string","number","integer","boolean","null"]);function o(e){for(var t={},i=0;i<e.length;i++)t[e[i]]=!0;return t}var s=/^[a-z$_][a-z$_0-9]*$/i,a=/'|\\/g;function l(e){return"number"==typeof e?"["+e+"]":s.test(e)?"."+e:"['"+e.replace(a,"\\$&")+"']"}function c(e){return e.replace(a,"\\$&")}var h=/else\s*{\s*}/g,u=/if\s*\([^)]+\)\s*\{\s*\}(?!\s*else)/g,d=/if\s*\(([^)]+)\)\s*\{\s*\}\s*else(?!\s*if)/g;var f=/[^v\.]errors/g,p=/var errors = 0;|var vErrors = null;|validate.errors = vErrors;/g,m=/var errors = 0;|var vErrors = null;/g,g="return errors === 0;",v="validate.errors = null; return true;",y=/if \(errors === 0\) return true;\s*else throw new ValidationError\(vErrors\);/,w="return true;";function b(e){return"'"+c(e)+"'"}var C=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function A(e,t){return'""'==e?t:(e+" + "+t).replace(/' \+ '/g,"")}function E(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function x(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}},function(e,t,i){var n="undefined"!=typeof JSON?JSON:i(13);e.exports=function(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});var i=t.space||"";"number"==typeof i&&(i=Array(i+1).join(" "));var s="boolean"==typeof t.cycles&&t.cycles,a=t.replacer||function(e,t){return t},l=t.cmp&&function(e){return function(t){return function(i,n){var r={key:i,value:t[i]},o={key:n,value:t[n]};return e(r,o)}}}(t.cmp),c=[];return function e(t,h,u,d){var f=i?"\n"+new Array(d+1).join(i):"",p=i?": ":":";if(u&&u.toJSON&&"function"==typeof u.toJSON&&(u=u.toJSON()),void 0!==(u=a.call(t,h,u))){if("object"!=typeof u||null===u)return n.stringify(u);if(r(u)){for(var m=[],g=0;g<u.length;g++){var v=e(u,g,u[g],d+1)||n.stringify(null);m.push(f+i+v)}return"["+m.join(",")+f+"]"}if(-1!==c.indexOf(u)){if(s)return n.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}c.push(u);var y=o(u).sort(l&&l(u));for(m=[],g=0;g<y.length;g++){var w=e(u,h=y[g],u[h],d+1);if(w){var b=n.stringify(h)+p+w;m.push(f+i+b)}}return c.splice(c.indexOf(u),1),"{"+m.join(",")+f+"}"}}({"":e},"",e,0)};var r=Array.isArray||function(e){return"[object Array]"==={}.toString.call(e)},o=Object.keys||function(e){var t=Object.prototype.hasOwnProperty||function(){return!0},i=[];for(var n in e)t.call(e,n)&&i.push(n);return i}},function(e,t,i){t.parse=i(14),t.stringify=i(15)},function(e,t){var i,n,r,o,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"},a=function(e){throw{name:"SyntaxError",message:e,at:i,text:r}},l=function(e){return e&&e!==n&&a("Expected '"+e+"' instead of '"+n+"'"),n=r.charAt(i),i+=1,n},c=function(){var e,t="";for("-"===n&&(t="-",l("-"));n>="0"&&n<="9";)t+=n,l();if("."===n)for(t+=".";l()&&n>="0"&&n<="9";)t+=n;if("e"===n||"E"===n)for(t+=n,l(),"-"!==n&&"+"!==n||(t+=n,l());n>="0"&&n<="9";)t+=n,l();if(e=+t,isFinite(e))return e;a("Bad number")},h=function(){var e,t,i,r="";if('"'===n)for(;l();){if('"'===n)return l(),r;if("\\"===n)if(l(),"u"===n){for(i=0,t=0;t<4&&(e=parseInt(l(),16),isFinite(e));t+=1)i=16*i+e;r+=String.fromCharCode(i)}else{if("string"!=typeof s[n])break;r+=s[n]}else r+=n}a("Bad string")},u=function(){for(;n&&n<=" ";)l()};o=function(){switch(u(),n){case"{":return function(){var e,t={};if("{"===n){if(l("{"),u(),"}"===n)return l("}"),t;for(;n;){if(e=h(),u(),l(":"),Object.hasOwnProperty.call(t,e)&&a('Duplicate key "'+e+'"'),t[e]=o(),u(),"}"===n)return l("}"),t;l(","),u()}}a("Bad object")}();case"[":return function(){var e=[];if("["===n){if(l("["),u(),"]"===n)return l("]"),e;for(;n;){if(e.push(o()),u(),"]"===n)return l("]"),e;l(","),u()}}a("Bad array")}();case'"':return h();case"-":return c();default:return n>="0"&&n<="9"?c():function(){switch(n){case"t":return l("t"),l("r"),l("u"),l("e"),!0;case"f":return l("f"),l("a"),l("l"),l("s"),l("e"),!1;case"n":return l("n"),l("u"),l("l"),l("l"),null}a("Unexpected '"+n+"'")}()}},e.exports=function(e,t){var s;return r=e,i=0,n=" ",s=o(),u(),n&&a("Syntax error"),"function"==typeof t?function e(i,n){var r,o,s=i[n];if(s&&"object"==typeof s)for(r in s)Object.prototype.hasOwnProperty.call(s,r)&&(void 0!==(o=e(s,r))?s[r]=o:delete s[r]);return t.call(i,n,s)}({"":s},""):s}},function(e,t){var i,n,r,o=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,s={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function a(e){return o.lastIndex=0,o.test(e)?'"'+e.replace(o,function(e){var t=s[e];return"string"==typeof t?t:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+e+'"'}e.exports=function(e,t,o){var s;if(i="",n="","number"==typeof o)for(s=0;s<o;s+=1)n+=" ";else"string"==typeof o&&(n=o);if(r=t,t&&"function"!=typeof t&&("object"!=typeof t||"number"!=typeof t.length))throw new Error("JSON.stringify");return function e(t,o){var s,l,c,h,u,d=i,f=o[t];switch(f&&"object"==typeof f&&"function"==typeof f.toJSON&&(f=f.toJSON(t)),"function"==typeof r&&(f=r.call(o,t,f)),typeof f){case"string":return a(f);case"number":return isFinite(f)?String(f):"null";case"boolean":case"null":return String(f);case"object":if(!f)return"null";if(i+=n,u=[],"[object Array]"===Object.prototype.toString.apply(f)){for(h=f.length,s=0;s<h;s+=1)u[s]=e(s,f)||"null";return c=0===u.length?"[]":i?"[\n"+i+u.join(",\n"+i)+"\n"+d+"]":"["+u.join(",")+"]",i=d,c}if(r&&"object"==typeof r)for(h=r.length,s=0;s<h;s+=1)"string"==typeof(l=r[s])&&(c=e(l,f))&&u.push(a(l)+(i?": ":":")+c);else for(l in f)Object.prototype.hasOwnProperty.call(f,l)&&(c=e(l,f))&&u.push(a(l)+(i?": ":":")+c);return c=0===u.length?"{}":i?"{\n"+i+u.join(",\n"+i)+"\n"+d+"}":"{"+u.join(",")+"}",i=d,c}}("",{"":e})}},function(e,t,i){"use strict";var n=i(11);e.exports=function(e){n.copy(e,this)}},function(module,exports,__webpack_require__){"use strict";module.exports={setup:setupAsync,compile:compileAsync};var util=__webpack_require__(11),ASYNC={"*":checkGenerators,"co*":checkGenerators,es7:checkAsyncFunction},TRANSPILE={nodent:getNodent,regenerator:getRegenerator},MODES=[{async:"co*"},{async:"es7",transpile:"nodent"},{async:"co*",transpile:"regenerator"}],regenerator,nodent;function setupAsync(e,t){!1!==t&&(t=!0);var i,n=e.async,r=e.transpile;switch(typeof r){case"string":var o=TRANSPILE[r];if(!o)throw new Error("bad transpiler: "+r);return e._transpileFunc=o(e,t);case"undefined":case"boolean":if("string"==typeof n){if(!(i=ASYNC[n]))throw new Error("bad async mode: "+n);return e.transpile=i(e,t)}for(var s=0;s<MODES.length;s++){var a=MODES[s];if(setupAsync(a,!1))return util.copy(a,e),e.transpile}throw new Error("generators, nodent and regenerator are not available");case"function":return e._transpileFunc=e.transpile;default:throw new Error("bad transpiler: "+r)}}function checkGenerators(opts,required){try{return eval("(function*(){})()"),!0}catch(e){if(required)throw new Error("generators not supported")}}function checkAsyncFunction(opts,required){try{return eval("(async function(){})()"),!0}catch(e){if(required)throw new Error("es7 async functions not supported")}}function getRegenerator(e,t){try{return regenerator||(regenerator=__webpack_require__(!function(){var e=new Error('Cannot find module "regenerator"');throw e.code="MODULE_NOT_FOUND",e}())).runtime(),e.async&&!0!==e.async||(e.async="es7"),regeneratorTranspile}catch(e){if(t)throw new Error("regenerator not available")}}function regeneratorTranspile(e){return regenerator.compile(e).code}function getNodent(e,t){try{return nodent||(nodent=__webpack_require__(!function(){var e=new Error('Cannot find module "nodent"');throw e.code="MODULE_NOT_FOUND",e}())({log:!1,dontInstallRequireHook:!0})),"es7"!=e.async&&(e.async&&!0!==e.async&&console.warn("nodent transpiles only es7 async functions"),e.async="es7"),nodentTranspile}catch(e){if(t)throw new Error("nodent not available")}}function nodentTranspile(e){return nodent.compile(e,"",{promises:!0,sourcemap:!1}).code}function compileAsync(e,t){var i,n=this;try{i=this._addSchema(e)}catch(e){return void setTimeout(function(){t(e)})}if(i.validate)setTimeout(function(){t(null,i.validate)});else{if("function"!=typeof this._opts.loadSchema)throw new Error("options.loadSchema should be a function");!function e(t,i,r){var o;try{o=n.compile(t)}catch(e){return void(e.missingSchema?function s(e){var r=e.missingSchema;if(n._refs[r]||n._schemas[r])return i(new Error("Schema "+r+" is loaded but"+e.missingRef+"cannot be resolved"));var o=n._loadingSchemas[r];o?"function"==typeof o?n._loadingSchemas[r]=[o,s]:o[o.length]=s:(n._loadingSchemas[r]=s,n._opts.loadSchema(r,function(e,t){var i=n._loadingSchemas[r];if(delete n._loadingSchemas[r],"function"==typeof i)i(e,t);else for(var o=0;o<i.length;o++)i[o](e,t)}));function s(e,o){if(e)return i(e);if(!n._refs[r]&&!n._schemas[r])try{n.addSchema(o,r)}catch(e){return void i(e)}!function e(t,i,r){var o;try{o=n.compile(t)}catch(e){return void(e.missingSchema?s(e):a(e))}a(null,o);function s(r){var o=r.missingSchema;if(n._refs[o]||n._schemas[o])return i(new Error("Schema "+o+" is loaded but"+r.missingRef+"cannot be resolved"));var s=n._loadingSchemas[o];function a(r,s){if(r)return i(r);if(!n._refs[o]&&!n._schemas[o])try{n.addSchema(s,o)}catch(e){return void i(e)}e(t,i)}s?"function"==typeof s?n._loadingSchemas[o]=[s,a]:s[s.length]=a:(n._loadingSchemas[o]=a,n._opts.loadSchema(o,function(e,t){var i=n._loadingSchemas[o];if(delete n._loadingSchemas[o],"function"==typeof i)i(e,t);else for(var r=0;r<i.length;r++)i[r](e,t)}))}function a(e,t){if(!r)return i(e,t);setTimeout(function(){i(e,t)})}}(t,i)}}(e):a(e))}a(null,o);function s(r){var o=r.missingSchema;if(n._refs[o]||n._schemas[o])return i(new Error("Schema "+o+" is loaded but"+r.missingRef+"cannot be resolved"));var s=n._loadingSchemas[o];function a(r,s){if(r)return i(r);if(!n._refs[o]&&!n._schemas[o])try{n.addSchema(s,o)}catch(e){return void i(e)}e(t,i)}s?"function"==typeof s?n._loadingSchemas[o]=[s,a]:s[s.length]=a:(n._loadingSchemas[o]=a,n._opts.loadSchema(o,function(e,t){var i=n._loadingSchemas[o];if(delete n._loadingSchemas[o],"function"==typeof i)i(e,t);else for(var r=0;r<i.length;r++)i[r](e,t)}))}function a(e,t){if(!r)return i(e,t);setTimeout(function(){i(e,t)})}}(e,t,!0)}}},function(e,t){"use strict";e.exports=function(e,t){var i="",n=!0===e.schema.$async;if(e.isTop){var r=e.isTop,o=e.level=0,s=e.dataLevel=0,a="data";if(e.rootId=e.resolve.fullPath(e.root.schema.id),e.baseId=e.baseId||e.rootId,n){e.async=!0;var l="es7"==e.opts.async;e.yieldAwait=l?"await":"yield"}delete e.isTop,e.dataPathArr=[void 0],i+=" validate = ",n?l?i+=" (async function ":("co*"==e.opts.async&&(i+="co.wrap"),i+="(function* "):i+=" (function ",i+=" (data, dataPath, parentData, parentDataProperty) { 'use strict'; var vErrors = null; ",i+=" var errors = 0; "}else{o=e.level,a="data"+((s=e.dataLevel)||"");if(e.schema.id&&(e.baseId=e.resolve.url(e.baseId,e.schema.id)),n&&!e.async)throw new Error("async schema in sync schema");i+=" var errs_"+o+" = errors;"}var c,h="valid"+o,u=!e.opts.allErrors,d="",f="",p=e.schema.type,m=Array.isArray(p);if(p&&e.opts.coerceTypes){var g=e.util.coerceToTypes(p);if(g){var v=e.schemaPath+".type",y=e.errSchemaPath+"/type",w=m?"checkDataTypes":"checkDataType";i+=" if ("+e.util[w](p,a,!0)+") { ";var b="dataType"+o,C="coerced"+o;i+=" var "+b+" = typeof "+a+"; var "+C+" = undefined; ";var A="",E=g;if(E)for(var x,F=-1,S=E.length-1;F<S;)x=E[F+=1],F&&(i+=" if ("+C+" === undefined) { ",A+="}"),"string"==x?i+=" if ("+b+" == 'number' || "+b+" == 'boolean') "+C+" = '' + "+a+"; else if ("+a+" === null) "+C+" = ''; ":"number"==x||"integer"==x?(i+=" if ("+b+" == 'boolean' || "+a+" === null || ("+b+" == 'string' && "+a+" && "+a+" == +"+a+" ","integer"==x&&(i+=" && !("+a+" % 1)"),i+=")) "+C+" = +"+a+"; "):"boolean"==x?i+=" if ("+a+" === 'false' || "+a+" === 0 || "+a+" === null) "+C+" = false; else if ("+a+" === 'true' || "+a+" === 1) "+C+" = true; ":"null"==x&&(i+=" if ("+a+" === '' || "+a+" === 0 || "+a+" === false) "+C+" = null; ");i+=" "+A+" if ("+C+" === undefined) { ",(oe=oe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(c||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+y+"\" , params: { type: '",i+=m?""+p.join(","):""+p,i+="' } ",!1!==e.opts.messages&&(i+=" , message: 'should be ",i+=m?""+p.join(","):""+p,i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+v+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+a+" "),i+=" } "):i+=" {} ";var k=i;if(i=oe.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+k+"]); ":i+=" validate.errors = ["+k+"]; return false; ":i+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { ",s)i+=" "+a+" = "+("data"+(s-1||""))+"["+e.dataPathArr[s]+"] = "+C+"; ";else i+=" data = "+C+"; if (parentData !== undefined) parentData[parentDataProperty] = "+C+"; ";i+=" } } "}}var _=e.RULES;if(_)for(var D,$=-1,L=_.length-1;$<L;)if(se(D=_[$+=1])){if(D.type&&(i+=" if ("+e.util.checkDataType(D.type,a)+") { "),e.opts.useDefaults&&!e.compositeRule)if("object"==D.type&&e.schema.properties){var B=e.schema.properties,R=Object.keys(B);if(R)for(var T,M=-1,O=R.length-1;M<O;){if(void 0!==(N=B[T=R[M+=1]]).default)i+=" if ("+(j=a+e.util.getProperty(T))+" === undefined) "+j+" = ","clone"==e.opts.useDefaults?i+=" "+JSON.stringify(N.default)+" ":i+=" "+e.useDefault(N.default)+" ",i+="; "}}else if("array"==D.type&&Array.isArray(e.schema.items)){var P=e.schema.items;if(P){F=-1;for(var N,I=P.length-1;F<I;){var j;if(void 0!==(N=P[F+=1]).default)i+=" if ("+(j=a+"["+F+"]")+" === undefined) "+j+" = ","clone"==e.opts.useDefaults?i+=" "+JSON.stringify(N.default)+" ":i+=" "+e.useDefault(N.default)+" ",i+="; "}}}var W=D.rules;if(W)for(var H,z=-1,V=W.length-1;z<V;)if(ae(H=W[z+=1])){if(H.custom){B=e.schema[H.keyword];var U=e.useCustomRule(H,B,e.schema,e),q=U.code+".errors",K=(v=e.schemaPath+"."+H.keyword,y=e.errSchemaPath+"/"+H.keyword,"errs"+o),G=(F="i"+o,"ruleErr"+o),Y=H.definition,Q=Y.async,X=Y.inline,J=Y.macro;if(Q&&!e.async)throw new Error("async keyword in sync schema");if(X||J||(i+=q+" = null;"),i+="var "+K+" = errors;var valid"+o+";",X&&Y.statements)i+=" "+U.validate;else if(J){var Z=e.util.copy(e);Z.level++,Z.schema=U.validate,Z.schemaPath="";var ee=e.compositeRule;e.compositeRule=Z.compositeRule=!0;var te=e.validate(Z).replace(/validate\.schema/g,U.code);e.compositeRule=Z.compositeRule=ee,i+=" "+te}else if(Y.compile||Y.validate){(oe=oe||[]).push(i),i="",i+=" "+U.code+".call( ",e.opts.passContext?i+="this":i+="self";U.validate.length;Y.compile||!1===Y.schema?i+=" , "+a+" ":i+=" , validate.schema"+v+" , "+a+" , validate.schema"+e.schemaPath+" ",i+=" , (dataPath || '')",'""'!=e.errorPath&&(i+=" + "+e.errorPath),i+=s?" , data"+(s-1||"")+" , "+e.dataPathArr[s]+" ":" , parentData , parentDataProperty ";var ie=i+=" ) ";i=oe.pop(),!1!==Y.errors&&(i+=Q?" var "+(q="customErrors"+o)+" = null; try { valid"+o+" = "+e.yieldAwait+ie+"; } catch (e) { valid"+o+" = false; if (e instanceof ValidationError) "+q+" = e.errors; else throw e; } ":" "+U.code+".errors = null; ")}i+="if (! ",X?Y.statements?i+=" valid"+o+" ":i+=" ("+U.validate+") ":J?i+=" valid"+Z.level+" ":Q?!1===Y.errors?i+=" ("+e.yieldAwait+ie+") ":i+=" valid"+o+" ":i+=" "+ie+" ",i+=") { ",c=H.keyword,(oe=oe||[]).push(i),i="",(oe=oe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(c||"custom")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+y+"\" , params: { keyword: '"+H.keyword+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should pass \""+H.keyword+"\" keyword validation' "),e.opts.verbose&&(i+=" , schema: validate.schema"+v+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+a+" "),i+=" } "):i+=" {} ";k=i;i=oe.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+k+"]); ":i+=" validate.errors = ["+k+"]; return false; ":i+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";var ne=i;i=oe.pop(),X?Y.errors?"full"!=Y.errors&&(i+=" for (var "+F+"="+K+"; "+F+"<errors; "+F+"++) { var "+G+" = vErrors["+F+"]; if ("+G+".dataPath === undefined) { "+G+".dataPath = (dataPath || '') + "+e.errorPath+"; } if ("+G+".schemaPath === undefined) { "+G+'.schemaPath = "'+y+'"; } ',e.opts.verbose&&(i+=" "+G+".schema = validate.schema"+v+"; "+G+".data = "+a+"; "),i+=" } "):!1===Y.errors?i+=" "+ne+" ":(i+=" if ("+K+" == errors) { "+ne+" } else { for (var "+F+"="+K+"; "+F+"<errors; "+F+"++) { var "+G+" = vErrors["+F+"]; if ("+G+".dataPath === undefined) { "+G+".dataPath = (dataPath || '') + "+e.errorPath+"; } if ("+G+".schemaPath === undefined) { "+G+'.schemaPath = "'+y+'"; } ',e.opts.verbose&&(i+=" "+G+".schema = validate.schema"+v+"; "+G+".data = "+a+"; "),i+=" } } "):J?(i+=" var err = ",!1!==e.createErrors?(i+=" { keyword: '"+(c||"custom")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+y+"\" , params: { keyword: '"+H.keyword+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should pass \""+H.keyword+"\" keyword validation' "),e.opts.verbose&&(i+=" , schema: validate.schema"+v+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+a+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&u&&(e.async?i+=" throw new ValidationError(vErrors); ":i+=" validate.errors = vErrors; return false ")):!1===Y.errors?i+=" "+ne+" ":(i+=" if (Array.isArray("+q+")) { if (vErrors === null) vErrors = "+q+"; else vErrors.concat("+q+"); errors = vErrors.length; for (var "+F+"="+K+"; "+F+"<errors; "+F+"++) { var "+G+" = vErrors["+F+"]; "+G+".dataPath = (dataPath || '') + "+e.errorPath+"; "+G+'.schemaPath = "'+y+'"; ',e.opts.verbose&&(i+=" "+G+".schema = validate.schema"+v+"; "+G+".data = "+a+"; "),i+=" } } else { "+ne+" } "),c=void 0,i+=" } ",u&&(i+=" else { ")}else i+=" "+H.code(e,H.keyword)+" ";u&&(d+="}")}if(u&&(i+=" "+d+" ",d=""),D.type&&(i+=" } ",p&&p===D.type)){var re=!0;i+=" else { ";v=e.schemaPath+".type",y=e.errSchemaPath+"/type";(oe=oe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(c||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+y+"\" , params: { type: '",i+=m?""+p.join(","):""+p,i+="' } ",!1!==e.opts.messages&&(i+=" , message: 'should be ",i+=m?""+p.join(","):""+p,i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+v+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+a+" "),i+=" } "):i+=" {} ";k=i;i=oe.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+k+"]); ":i+=" validate.errors = ["+k+"]; return false; ":i+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } "}u&&(i+=" if (errors === ",i+=r?"0":"errs_"+o,i+=") { ",f+="}")}if(p&&!re&&(!e.opts.coerceTypes||!g)){var oe;v=e.schemaPath+".type",y=e.errSchemaPath+"/type",w=m?"checkDataTypes":"checkDataType";i+=" if ("+e.util[w](p,a,!0)+") { ",(oe=oe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(c||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+y+"\" , params: { type: '",i+=m?""+p.join(","):""+p,i+="' } ",!1!==e.opts.messages&&(i+=" , message: 'should be ",i+=m?""+p.join(","):""+p,i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+v+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+a+" "),i+=" } "):i+=" {} ";k=i;i=oe.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+k+"]); ":i+=" validate.errors = ["+k+"]; return false; ":i+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" }"}function se(e){for(var t=0;t<e.rules.length;t++)if(ae(e.rules[t]))return!0}function ae(t){return void 0!==e.schema[t.keyword]||"properties"==t.keyword&&(!1===e.schema.additionalProperties||"object"==typeof e.schema.additionalProperties||e.schema.patternProperties&&Object.keys(e.schema.patternProperties).length||e.opts.v5&&e.schema.patternGroups&&Object.keys(e.schema.patternGroups).length)}return u&&(i+=" "+f+" "),r?(n?(i+=" if (errors === 0) return true; ",i+=" else throw new ValidationError(vErrors); "):(i+=" validate.errors = vErrors; ",i+=" return errors === 0; "),i+=" });"):i+=" var "+h+" = errors === errs_"+o+";",i=e.util.cleanUpCode(i),r&&u&&(i=e.util.cleanUpVarErrors(i,n)),i}},function(e,t){var i=Array.prototype.slice;function n(e){var t=this,n=i.call(arguments,1);return new Promise(function(i,s){if("function"==typeof e&&(e=e.apply(t,n)),!e||"function"!=typeof e.next)return i(e);function a(t){var i;try{i=e.next(t)}catch(e){return s(e)}c(i)}function l(t){var i;try{i=e.throw(t)}catch(e){return s(e)}c(i)}function c(e){if(e.done)return i(e.value);var n=r.call(t,e.value);return n&&o(n)?n.then(a,l):l(new TypeError('You may only yield a function, promise, generator, array, or object, but the following object was passed: "'+String(e.value)+'"'))}a()})}function r(e){return e?o(e)?e:function(e){var t=e.constructor;return!!t&&("GeneratorFunction"===t.name||"GeneratorFunction"===t.displayName||s(t.prototype))}(e)||s(e)?n.call(this,e):"function"==typeof e?function(e){var t=this;return new Promise(function(n,r){e.call(t,function(e,t){if(e)return r(e);arguments.length>2&&(t=i.call(arguments,1)),n(t)})})}.call(this,e):Array.isArray(e)?function(e){return Promise.all(e.map(r,this))}.call(this,e):function(e){return Object==e.constructor}(e)?function(e){for(var t=new e.constructor,i=Object.keys(e),n=[],s=0;s<i.length;s++){var a=i[s],l=r.call(this,e[a]);l&&o(l)?c(l,a):t[a]=e[a]}return Promise.all(n).then(function(){return t});function c(e,i){t[i]=void 0,n.push(e.then(function(e){t[i]=e}))}}.call(this,e):e:e}function o(e){return"function"==typeof e.then}function s(e){return"function"==typeof e.next&&"function"==typeof e.throw}e.exports=n.default=n.co=n,n.wrap=function(e){return t.__generatorFunction__=e,t;function t(){return n.call(this,e.apply(this,arguments))}}},function(e,t){"use strict";function i(e){this.message="validation failed",this.errors=e,this.ajv=this.validation=!0}e.exports=i,i.prototype=Object.create(Error.prototype),i.prototype.constructor=i},function(e,t){"use strict";var i=e.exports=function(){this._cache={}};i.prototype.put=function(e,t){this._cache[e]=t},i.prototype.get=function(e){return this._cache[e]},i.prototype.del=function(e){delete this._cache[e]},i.prototype.clear=function(){this._cache={}}},function(e,t,i){"use strict";var n=i(11),r=/^\d\d\d\d-(\d\d)-(\d\d)$/,o=[0,31,29,31,30,31,30,31,31,30,31,30,31],s=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d:\d\d)?$/i,a=/^[a-z](?:(?:[-0-9a-z]{0,61})?[0-9a-z])?(\.[a-z](?:(?:[-0-9a-z]{0,61})?[0-9a-z])?)*$/i,l=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@\/?]|%[0-9a-f]{2})*)?(?:\#(?:[a-z0-9\-._~!$&'()*+,;=:@\/?]|%[0-9a-f]{2})*)?$/i,c=/^(?:urn\:uuid\:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,h=/^(?:\/(?:[^~\/]|~0|~1)+)*(?:\/)?$|^\#(?:\/(?:[a-z0-9_\-\.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)+)*(?:\/)?$/i,u=/^(?:0|[1-9][0-9]*)(?:\#|(?:\/(?:[^~\/]|~0|~1)+)*(?:\/)?)$/;function d(e){e="full"==e?"full":"fast";var t=n.copy(d[e]);for(var i in d.compare)t[i]={validate:t[i],compare:d.compare[i]};return t}function f(e){var t=e.match(r);if(!t)return!1;var i=+t[1],n=+t[2];return i>=1&&i<=12&&n>=1&&n<=o[i]}function p(e,t){var i=e.match(s);if(!i)return!1;var n=i[1],r=i[2],o=i[3],a=i[5];return n<=23&&r<=59&&o<=59&&(!t||a)}e.exports=d,d.fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^[0-2]\d:[0-5]\d:[0-5]\d(?:\.\d+)?(?:z|[+-]\d\d:\d\d)?$/i,"date-time":/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s][0-2]\d:[0-5]\d:[0-5]\d(?:\.\d+)?(?:z|[+-]\d\d:\d\d)$/i,uri:/^(?:[a-z][a-z0-9+-.]*)?(?:\:|\/)\/?[^\s]*$/i,email:/^[a-z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,hostname:a,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:v,uuid:c,"json-pointer":h,"relative-json-pointer":u},d.full={date:f,time:p,"date-time":function(e){var t=e.split(m);return f(t[0])&&p(t[1],!0)},uri:function(e){return g.test(e)&&l.test(e)},email:/^[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&''*+\/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:function(e){return e.length<=255&&a.test(e)},ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:v,uuid:c,"json-pointer":h,"relative-json-pointer":u},d.compare={date:y,time:w,"date-time":function(e,t){if(!e||!t)return;e=e.split(m),t=t.split(m);var i=y(e[0],t[0]);if(void 0===i)return;return i||w(e[1],t[1])}};var m=/t|\s/i;var g=/\/|\:/;function v(e){try{return new RegExp(e),!0}catch(e){return!1}}function y(e,t){if(e&&t)return e>t?1:e<t?-1:e===t?0:void 0}function w(e,t){if(e&&t&&(e=e.match(s),t=t.match(s),e&&t))return(e=e[1]+e[2]+e[3]+(e[4]||""))>(t=t[1]+t[2]+t[3]+(t[4]||""))?1:e<t?-1:e===t?0:void 0}},function(e,t,i){"use strict";var n=i(24),r=i(11);e.exports=function(){var e=[{type:"number",rules:["maximum","minimum","multipleOf"]},{type:"string",rules:["maxLength","minLength","pattern","format"]},{type:"array",rules:["maxItems","minItems","uniqueItems","items"]},{type:"object",rules:["maxProperties","minProperties","required","dependencies","properties"]},{rules:["$ref","enum","not","anyOf","oneOf","allOf"]}];return e.all=["type","additionalProperties","patternProperties"],e.keywords=["additionalItems","$schema","id","title","description","default"],e.types=["number","integer","string","array","object","boolean","null"],e.forEach(function(t){t.rules=t.rules.map(function(t){return e.all.push(t),{keyword:t,code:n[t]}})}),e.keywords=r.toHash(e.all.concat(e.keywords)),e.all=r.toHash(e.all),e.types=r.toHash(e.types),e}},function(e,t,i){"use strict";e.exports={$ref:i(25),allOf:i(26),anyOf:i(27),dependencies:i(28),enum:i(29),format:i(30),items:i(31),maximum:i(32),minimum:i(32),maxItems:i(33),minItems:i(33),maxLength:i(34),minLength:i(34),maxProperties:i(35),minProperties:i(35),multipleOf:i(36),not:i(37),oneOf:i(38),pattern:i(39),properties:i(40),required:i(41),uniqueItems:i(42),validate:i(18)}},function(e,t){"use strict";e.exports=function(e,t){var i,n,r=" ",o=e.level,s=e.dataLevel,a=e.schema[t],l=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,h="data"+(s||""),u="valid"+o;if("#"==a||"#/"==a)e.isRoot?(i=e.async,n="validate"):(i=!0===e.root.schema.$async,n="root.refVal[0]");else{var d=e.resolveRef(e.baseId,a,e.isRoot);if(void 0===d){var f="can't resolve reference "+a+" from id "+e.baseId;if("fail"==e.opts.missingRefs){console.log(f),(v=v||[]).push(r),r="",!1!==e.createErrors?(r+=" { keyword: '$ref' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+l+"\" , params: { ref: '"+e.util.escapeQuotes(a)+"' } ",!1!==e.opts.messages&&(r+=" , message: 'can\\'t resolve reference "+e.util.escapeQuotes(a)+"' "),e.opts.verbose&&(r+=" , schema: "+e.util.toQuotedString(a)+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),r+=" } "):r+=" {} ";var p=r;r=v.pop(),!e.compositeRule&&c?e.async?r+=" throw new ValidationError(["+p+"]); ":r+=" validate.errors = ["+p+"]; return false; ":r+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",c&&(r+=" if (false) { ")}else{if("ignore"!=e.opts.missingRefs){var m=new Error(f);throw m.missingRef=e.resolve.url(e.baseId,a),m.missingSchema=e.resolve.normalizeId(e.resolve.fullPath(m.missingRef)),m}console.log(f),c&&(r+=" if (true) { ")}}else if(d.inline){var g=e.util.copy(e);g.level++,g.schema=d.schema,g.schemaPath="",g.errSchemaPath=a,r+=" "+e.validate(g).replace(/validate\.schema/g,d.code)+" ",c&&(r+=" if (valid"+g.level+") { ")}else i=d.async,n=d.code}if(n){var v;(v=v||[]).push(r),r="",e.opts.passContext?r+=" "+n+".call(this, ":r+=" "+n+"( ",r+=" "+h+", (dataPath || '')",'""'!=e.errorPath&&(r+=" + "+e.errorPath),r+=s?" , data"+(s-1||"")+" , "+e.dataPathArr[s]+" ":" , parentData , parentDataProperty ";var y=r+=") ";if(r=v.pop(),i){if(!e.async)throw new Error("async schema referenced by sync schema");r+=" try { ",c&&(r+="var "+u+" ="),r+=" "+e.yieldAwait+" "+y+"; } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; } ",c&&(r+=" if ("+u+") { ")}else r+=" if (!"+y+") { if (vErrors === null) vErrors = "+n+".errors; else vErrors = vErrors.concat("+n+".errors); errors = vErrors.length; } ",c&&(r+=" else { ")}return r}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.schema[t],r=e.schemaPath+"."+t,o=e.errSchemaPath+"/"+t,s=!e.opts.allErrors,a=e.util.copy(e),l="";a.level++;var c=n;if(c)for(var h,u=-1,d=c.length-1;u<d;)h=c[u+=1],e.util.schemaHasRules(h,e.RULES.all)&&(a.schema=h,a.schemaPath=r+"["+u+"]",a.errSchemaPath=o+"/"+u,i+=" "+e.validate(a)+" ",s&&(i+=" if (valid"+a.level+") { ",l+="}"));return s&&(i+=" "+l.slice(0,-1)),i=e.util.cleanUpCode(i)}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="errs__"+n,d=e.util.copy(e),f="";if(d.level++,o.every(function(t){return e.util.schemaHasRules(t,e.RULES.all)})){i+=" var "+u+" = errors; var "+h+" = false; ";var p=e.compositeRule;e.compositeRule=d.compositeRule=!0;var m=o;if(m)for(var g,v=-1,y=m.length-1;v<y;)g=m[v+=1],d.schema=g,d.schemaPath=s+"["+v+"]",d.errSchemaPath=a+"/"+v,i+=" "+e.validate(d)+" "+h+" = "+h+" || valid"+d.level+"; if (!"+h+") { ",f+="}";e.compositeRule=d.compositeRule=p,i+=" "+f+" if (!"+h+") { var err = ",!1!==e.createErrors?(i+=" { keyword: 'anyOf' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should match some schema in anyOf' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else { errors = "+u+"; if (vErrors !== null) { if ("+u+") vErrors.length = "+u+"; else vErrors = null; } ",e.opts.allErrors&&(i+=" } "),i=e.util.cleanUpCode(i)}else l&&(i+=" if (true) { ");return i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="errs__"+n,u=e.util.copy(e),d="";u.level++;var f={},p={};for(y in o){var m=o[y],g=Array.isArray(m)?p:f;g[y]=m}i+="var "+h+" = errors;";var v=e.errorPath;for(var y in i+="var missing"+n+";",p){g=p[y],i+=" if ("+c+e.util.getProperty(y)+" !== undefined && ( ";var w=g;if(w)for(var b,C=-1,A=w.length-1;C<A;){b=w[C+=1],C&&(i+=" || ");var E=e.util.getProperty(b);i+=" ( "+c+E+" === undefined && (missing"+n+" = "+e.util.toQuotedString(e.opts.jsonPointers?b:E)+") ) "}i+=")) { ";var x="missing"+n,F="' + "+x+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.opts.jsonPointers?e.util.getPathExpr(v,x,!0):v+" + "+x);var S=S||[];S.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { property: '"+e.util.escapeQuotes(y)+"', missingProperty: '"+F+"', depsCount: "+g.length+", deps: '"+e.util.escapeQuotes(1==g.length?g[0]:g.join(", "))+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should have ",1==g.length?i+="property "+e.util.escapeQuotes(g[0]):i+="properties "+e.util.escapeQuotes(g.join(", ")),i+=" when property "+e.util.escapeQuotes(y)+" is present' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var k=i;i=S.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+k+"]); ":i+=" validate.errors = ["+k+"]; return false; ":i+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",l&&(d+="}",i+=" else { ")}for(var y in e.errorPath=v,f){m=f[y];e.util.schemaHasRules(m,e.RULES.all)&&(i+=" valid"+u.level+" = true; if ("+c+"['"+y+"'] !== undefined) { ",u.schema=m,u.schemaPath=s+e.util.getProperty(y),u.errSchemaPath=a+"/"+e.util.escapeFragment(y),i+=" "+e.validate(u)+" } ",l&&(i+=" if (valid"+u.level+") { ",d+="}"))}return l&&(i+=" "+d+" if ("+h+" == errors) {"),i=e.util.cleanUpCode(i)}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u=e.opts.v5&&o.$data,d=u?e.util.getData(o.$data,r,e.dataPathArr):o;u&&(i+=" var schema"+n+" = "+d+"; ",d="schema"+n);var f="i"+n;u||(i+=" var schema"+n+" = validate.schema"+s+";"),i+="var "+h+";",u&&(i+=" if (schema"+n+" === undefined) "+h+" = true; else if (!Array.isArray(schema"+n+")) "+h+" = false; else {"),i+=h+" = false;for (var "+f+"=0; "+f+"<schema"+n+".length; "+f+"++) if (equal("+c+", schema"+n+"["+f+"])) { "+h+" = true; break; }",u&&(i+=" } "),i+=" if (!"+h+") { ";var p=p||[];p.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'enum' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should be equal to one of the allowed values' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var m=i;return i=p.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+m+"]); ":i+=" validate.errors = ["+m+"]; return false; ":i+=" var err = "+m+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" }",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||"");if(!1===e.opts.format)return l&&(i+=" if (true) { "),i;var h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;if(h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n),h){i+=" var "+(d="format"+n)+" = formats["+u+"]; var isObject"+n+" = typeof "+d+" == 'object' && !("+d+" instanceof RegExp) && "+d+".validate; if (isObject"+n+") { var async"+n+" = "+d+".async; "+d+" = "+d+".validate; } if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'string') || "),i+=" ("+d+" && !(typeof "+d+" == 'function' ? ",e.async?i+=" (async"+n+" ? "+e.yieldAwait+" "+d+"("+c+") : "+d+"("+c+")) ":i+=" "+d+"("+c+") ",i+=" : "+d+".test("+c+")))) {"}else{var d;if(!(d=e.formats[o]))return l&&(i+=" if (true) { "),i;var f="object"==typeof d&&!(d instanceof RegExp)&&d.validate;if(f){var p=!0===d.async;d=d.validate}if(p){if(!e.async)throw new Error("async format in sync schema");var m="formats"+e.util.getProperty(o)+".validate";i+=" if (!("+e.yieldAwait+" "+m+"("+c+"))) { "}else{i+=" if (! ";m="formats"+e.util.getProperty(o);f&&(m+=".validate"),i+="function"==typeof d?" "+m+"("+c+") ":" "+m+".test("+c+") ",i+=") { "}}var g=g||[];g.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'format' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { format: ',i+=h?""+u:""+e.util.toQuotedString(o),i+=" } ",!1!==e.opts.messages&&(i+=" , message: 'should match format \"",i+=h?"' + "+u+" + '":""+e.util.escapeQuotes(o),i+="\"' "),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+e.util.toQuotedString(o),i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var v=i;return i=g.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+v+"]); ":i+=" validate.errors = ["+v+"]; return false; ":i+=" var err = "+v+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="errs__"+n,d=e.util.copy(e),f="";d.level++;var p=d.dataLevel=e.dataLevel+1,m="data"+p;if(i+="var "+u+" = errors;var "+h+";",Array.isArray(o)){var g=e.schema.additionalItems;if(!1===g){i+=" "+h+" = "+c+".length <= "+o.length+"; ";var v=a;a=e.errSchemaPath+"/additionalItems",i+=" if (!"+h+") { ";var y=y||[];y.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'additionalItems' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { limit: '+o.length+" } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have more than "+o.length+" items' "),e.opts.verbose&&(i+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var w=i;i=y.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+w+"]); ":i+=" validate.errors = ["+w+"]; return false; ":i+=" var err = "+w+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",a=v,l&&(f+="}",i+=" else { ")}var b=o;if(b)for(var C,A=-1,E=b.length-1;A<E;)if(C=b[A+=1],e.util.schemaHasRules(C,e.RULES.all)){i+=" valid"+d.level+" = true; if ("+c+".length > "+A+") { ";var x=c+"["+A+"]";d.schema=C,d.schemaPath=s+"["+A+"]",d.errSchemaPath=a+"/"+A,d.errorPath=e.util.getPathExpr(e.errorPath,A,e.opts.jsonPointers,!0),d.dataPathArr[p]=A;var F=e.validate(d);e.util.varOccurences(F,m)<2?i+=" "+e.util.varReplace(F,m,x)+" ":i+=" var "+m+" = "+x+"; "+F+" ",i+=" } ",l&&(i+=" if (valid"+d.level+") { ",f+="}")}if("object"==typeof g&&e.util.schemaHasRules(g,e.RULES.all)){d.schema=g,d.schemaPath=e.schemaPath+".additionalItems",d.errSchemaPath=e.errSchemaPath+"/additionalItems",i+=" valid"+d.level+" = true; if ("+c+".length > "+o.length+") { for (var i"+n+" = "+o.length+"; i"+n+" < "+c+".length; i"+n+"++) { ",d.errorPath=e.util.getPathExpr(e.errorPath,"i"+n,e.opts.jsonPointers,!0);x=c+"[i"+n+"]";d.dataPathArr[p]="i"+n;F=e.validate(d);e.util.varOccurences(F,m)<2?i+=" "+e.util.varReplace(F,m,x)+" ":i+=" var "+m+" = "+x+"; "+F+" ",l&&(i+=" if (!valid"+d.level+") break; "),i+=" } } ",l&&(i+=" if (valid"+d.level+") { ",f+="}")}}else if(e.util.schemaHasRules(o,e.RULES.all)){d.schema=o,d.schemaPath=s,d.errSchemaPath=a,i+=" for (var i"+n+" = 0; i"+n+" < "+c+".length; i"+n+"++) { ",d.errorPath=e.util.getPathExpr(e.errorPath,"i"+n,e.opts.jsonPointers,!0);x=c+"[i"+n+"]";d.dataPathArr[p]="i"+n;F=e.validate(d);e.util.varOccurences(F,m)<2?i+=" "+e.util.varReplace(F,m,x)+" ":i+=" var "+m+" = "+x+"; "+F+" ",l&&(i+=" if (!valid"+d.level+") break; "),i+=" } ",l&&(i+=" if (valid"+d.level+") { ",f+="}")}return l&&(i+=" "+f+" if ("+u+" == errors) {"),i=e.util.cleanUpCode(i)}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n);var d="maximum"==t,f=d?"exclusiveMaximum":"exclusiveMinimum",p=e.schema[f],m=e.opts.v5&&p&&p.$data,g=d?"<":">",v=d?">":"<";if(m){var y=e.util.getData(p.$data,r,e.dataPathArr),w="exclusive"+n,b="' + "+(E="op"+n)+" + '";i+=" var schemaExcl"+n+" = "+y+"; ",i+=" var exclusive"+n+"; if (typeof "+(y="schemaExcl"+n)+" != 'boolean' && typeof "+y+" != 'undefined') { ";var C=f;(x=x||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(C||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: '"+f+" should be boolean' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var A=i;i=x.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+A+"]); ":i+=" validate.errors = ["+A+"]; return false; ":i+=" var err = "+A+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else if( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'number') || "),i+=" ((exclusive"+n+" = "+y+" === true) ? "+c+" "+v+"= "+u+" : "+c+" "+v+" "+u+")) { var op"+n+" = exclusive"+n+" ? '"+g+"' : '"+g+"=';"}else{b=g;(w=!0===p)||(b+="=");var E="'"+b+"'";i+=" if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'number') || "),i+=" "+c+" "+v,w&&(i+="="),i+=" "+u+") {"}var x;C=t;(x=x||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(C||"_limit")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { comparison: '+E+", limit: "+u+", exclusive: "+w+" } ",!1!==e.opts.messages&&(i+=" , message: 'should be "+b+" ",i+=h?"' + "+u:o+"'"),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";A=i;return i=x.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+A+"]); ":i+=" validate.errors = ["+A+"]; return false; ":i+=" var err = "+A+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n),i+="if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'number') || "),i+=" "+c+".length "+("maxItems"==t?">":"<")+" "+u+") { ";var d=t,f=f||[];f.push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(d||"_limitItems")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { limit: '+u+" } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have ",i+="maxItems"==t?"more":"less",i+=" than ",i+=h?"' + "+u+" + '":""+o,i+=" items' "),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var p=i;return i=f.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+p+"]); ":i+=" validate.errors = ["+p+"]; return false; ":i+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n);var d="maxLength"==t?">":"<";i+="if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'number') || "),!1===e.opts.unicode?i+=" "+c+".length ":i+=" ucs2length("+c+") ",i+=" "+d+" "+u+") { ";var f=t,p=p||[];p.push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(f||"_limitLength")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { limit: '+u+" } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT be ",i+="maxLength"==t?"longer":"shorter",i+=" than ",i+=h?"' + "+u+" + '":""+o,i+=" characters' "),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var m=i;return i=p.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+m+"]); ":i+=" validate.errors = ["+m+"]; return false; ":i+=" var err = "+m+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n),i+="if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'number') || "),i+=" Object.keys("+c+").length "+("maxProperties"==t?">":"<")+" "+u+") { ";var d=t,f=f||[];f.push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(d||"_limitProperties")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { limit: '+u+" } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have ",i+="maxProperties"==t?"more":"less",i+=" than ",i+=h?"' + "+u+" + '":""+o,i+=" properties' "),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var p=i;return i=f.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+p+"]); ":i+=" validate.errors = ["+p+"]; return false; ":i+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n),i+="var division"+n+";if (",h&&(i+=" "+u+" !== undefined && ( typeof "+u+" != 'number' || "),i+=" (division"+n+" = "+c+" / "+u+", ",e.opts.multipleOfPrecision?i+=" Math.abs(Math.round(division"+n+") - division"+n+") > 1e-"+e.opts.multipleOfPrecision+" ":i+=" division"+n+" !== parseInt(division"+n+") ",i+=" ) ",h&&(i+=" ) "),i+=" ) { ";var d=d||[];d.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'multipleOf' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { multipleOf: '+u+" } ",!1!==e.opts.messages&&(i+=" , message: 'should be multiple of ",i+=h?"' + "+u:o+"'"),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var f=i;return i=d.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+f+"]); ":i+=" validate.errors = ["+f+"]; return false; ":i+=" var err = "+f+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="errs__"+n,u=e.util.copy(e);if(u.level++,e.util.schemaHasRules(o,e.RULES.all)){u.schema=o,u.schemaPath=s,u.errSchemaPath=a,i+=" var "+h+" = errors; ";var d,f=e.compositeRule;e.compositeRule=u.compositeRule=!0,u.createErrors=!1,u.opts.allErrors&&(d=u.opts.allErrors,u.opts.allErrors=!1),i+=" "+e.validate(u)+" ",u.createErrors=!0,d&&(u.opts.allErrors=d),e.compositeRule=u.compositeRule=f,i+=" if (valid"+u.level+") { ";var p=p||[];p.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'not' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should NOT be valid' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var m=i;i=p.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+m+"]); ":i+=" validate.errors = ["+m+"]; return false; ":i+=" var err = "+m+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { errors = "+h+"; if (vErrors !== null) { if ("+h+") vErrors.length = "+h+"; else vErrors = null; } ",e.opts.allErrors&&(i+=" } ")}else i+=" var err = ",!1!==e.createErrors?(i+=" { keyword: 'not' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should NOT be valid' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",l&&(i+=" if (false) { ");return i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="errs__"+n,d=e.util.copy(e),f="";d.level++,i+="var "+u+" = errors;var prevValid"+n+" = false;var "+h+" = false; ";var p=e.compositeRule;e.compositeRule=d.compositeRule=!0;var m=o;if(m)for(var g,v=-1,y=m.length-1;v<y;)g=m[v+=1],e.util.schemaHasRules(g,e.RULES.all)?(d.schema=g,d.schemaPath=s+"["+v+"]",d.errSchemaPath=a+"/"+v,i+=" "+e.validate(d)+" "):i+=" var valid"+d.level+" = true; ",v&&(i+=" if (valid"+d.level+" && prevValid"+n+") "+h+" = false; else { ",f+="}"),i+=" if (valid"+d.level+") "+h+" = prevValid"+n+" = true;";e.compositeRule=d.compositeRule=p,i+=f+"if (!"+h+") { ";var w=w||[];w.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'oneOf' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should match exactly one schema in oneOf' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var b=i;return i=w.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+b+"]); ":i+=" validate.errors = ["+b+"]; return false; ":i+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} else { errors = "+u+"; if (vErrors !== null) { if ("+u+") vErrors.length = "+u+"; else vErrors = null; }",e.opts.allErrors&&(i+=" } "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h=e.opts.v5&&o.$data,u=h?e.util.getData(o.$data,r,e.dataPathArr):o;h&&(i+=" var schema"+n+" = "+u+"; ",u="schema"+n);var d=h?"(new RegExp("+u+"))":e.usePattern(o);i+="if ( ",h&&(i+=" ("+u+" !== undefined && typeof "+u+" != 'string') || "),i+=" !"+d+".test("+c+") ) { ";var f=f||[];f.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'pattern' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { pattern: ',i+=h?""+u:""+e.util.toQuotedString(o),i+=" } ",!1!==e.opts.messages&&(i+=" , message: 'should match pattern \"",i+=h?"' + "+u+" + '":""+e.util.escapeQuotes(o),i+="\"' "),e.opts.verbose&&(i+=" , schema: ",i+=h?"validate.schema"+s:""+e.util.toQuotedString(o),i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var p=i;return i=f.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+p+"]); ":i+=" validate.errors = ["+p+"]; return false; ":i+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",l&&(i+=" else { "),i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="errs__"+n,d=e.util.copy(e),f="";d.level++;var p=d.dataLevel=e.dataLevel+1,m="data"+p,g=Object.keys(o||{}),v=e.schema.patternProperties||{},y=Object.keys(v),w=e.schema.additionalProperties,b=g.length||y.length,C=!1===w,A="object"==typeof w&&Object.keys(w).length,E=e.opts.removeAdditional,x=C||A||E,F=e.schema.required;if(F&&(!e.opts.v5||!F.$data)&&F.length<e.opts.loopRequired)var S=e.util.toHash(F);if(e.opts.v5)var k=e.schema.patternGroups||{},_=Object.keys(k);if(i+="var "+u+" = errors;var valid"+d.level+" = true;",x){if(i+=" for (var key"+n+" in "+c+") { ",b){if(i+=" var isAdditional"+n+" = !(false ",g.length)if(g.length>5)i+=" || validate.schema"+s+"[key"+n+"] ";else{var D=g;if(D)for(var $=-1,L=D.length-1;$<L;)q=D[$+=1],i+=" || key"+n+" == "+e.util.toQuotedString(q)+" "}if(y.length){var B=y;if(B)for(var R=-1,T=B.length-1;R<T;)te=B[R+=1],i+=" || "+e.usePattern(te)+".test(key"+n+") "}if(e.opts.v5&&_&&_.length){var M=_;if(M){R=-1;for(var O=M.length-1;R<O;)oe=M[R+=1],i+=" || "+e.usePattern(oe)+".test(key"+n+") "}}i+=" ); if (isAdditional"+n+") { "}if("all"==E)i+=" delete "+c+"[key"+n+"]; ";else{var P=e.errorPath,N="' + key"+n+" + '";if(e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(e.errorPath,"key"+n,e.opts.jsonPointers)),C)if(E)i+=" delete "+c+"[key"+n+"]; ";else{i+=" valid"+d.level+" = false; ";var I=a;a=e.errSchemaPath+"/additionalProperties",(pe=pe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'additionalProperties' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { additionalProperty: '"+N+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have additional properties' "),e.opts.verbose&&(i+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var j=i;i=pe.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+j+"]); ":i+=" validate.errors = ["+j+"]; return false; ":i+=" var err = "+j+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a=I,l&&(i+=" break; ")}else if(A)if("failing"==E){i+=" var "+u+" = errors; ";var W=e.compositeRule;e.compositeRule=d.compositeRule=!0,d.schema=w,d.schemaPath=e.schemaPath+".additionalProperties",d.errSchemaPath=e.errSchemaPath+"/additionalProperties",d.errorPath=e.opts._errorDataPathProperty?e.errorPath:e.util.getPathExpr(e.errorPath,"key"+n,e.opts.jsonPointers);var H=c+"[key"+n+"]";d.dataPathArr[p]="key"+n;var z=e.validate(d);e.util.varOccurences(z,m)<2?i+=" "+e.util.varReplace(z,m,H)+" ":i+=" var "+m+" = "+H+"; "+z+" ",i+=" if (!valid"+d.level+") { errors = "+u+"; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete "+c+"[key"+n+"]; } ",e.compositeRule=d.compositeRule=W}else{d.schema=w,d.schemaPath=e.schemaPath+".additionalProperties",d.errSchemaPath=e.errSchemaPath+"/additionalProperties",d.errorPath=e.opts._errorDataPathProperty?e.errorPath:e.util.getPathExpr(e.errorPath,"key"+n,e.opts.jsonPointers);H=c+"[key"+n+"]";d.dataPathArr[p]="key"+n;z=e.validate(d);e.util.varOccurences(z,m)<2?i+=" "+e.util.varReplace(z,m,H)+" ":i+=" var "+m+" = "+H+"; "+z+" ",l&&(i+=" if (!valid"+d.level+") break; ")}e.errorPath=P}b&&(i+=" } "),i+=" } ",l&&(i+=" if (valid"+d.level+") { ",f+="}")}var V=e.opts.useDefaults&&!e.compositeRule;if(g.length){var U=g;if(U)for(var q,K=-1,G=U.length-1;K<G;){var Y=o[q=U[K+=1]];if(e.util.schemaHasRules(Y,e.RULES.all)){var Q=e.util.getProperty(q),X=(H=c+Q,V&&void 0!==Y.default);d.schema=Y,d.schemaPath=s+Q,d.errSchemaPath=a+"/"+e.util.escapeFragment(q),d.errorPath=e.util.getPath(e.errorPath,q,e.opts.jsonPointers),d.dataPathArr[p]=e.util.toQuotedString(q);z=e.validate(d);if(e.util.varOccurences(z,m)<2){z=e.util.varReplace(z,m,H);var J=H}else{J=m;i+=" var "+m+" = "+H+"; "}if(X)i+=" "+z+" ";else{if(S&&S[q]){i+=" if ("+J+" === undefined) { valid"+d.level+" = false; ";P=e.errorPath,I=a;var Z=e.util.escapeQuotes(q);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(P,q,e.opts.jsonPointers)),a=e.errSchemaPath+"/required",(pe=pe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+Z+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+Z+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";j=i;i=pe.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+j+"]); ":i+=" validate.errors = ["+j+"]; return false; ":i+=" var err = "+j+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a=I,e.errorPath=P,i+=" } else { "}else i+=l?" if ("+J+" === undefined) { valid"+d.level+" = true; } else { ":" if ("+J+" !== undefined) { ";i+=" "+z+" } "}}l&&(i+=" if (valid"+d.level+") { ",f+="}")}}var ee=y;if(ee)for(var te,ie=-1,ne=ee.length-1;ie<ne;){Y=v[te=ee[ie+=1]];if(e.util.schemaHasRules(Y,e.RULES.all)){d.schema=Y,d.schemaPath=e.schemaPath+".patternProperties"+e.util.getProperty(te),d.errSchemaPath=e.errSchemaPath+"/patternProperties/"+e.util.escapeFragment(te),i+=" for (var key"+n+" in "+c+") { if ("+e.usePattern(te)+".test(key"+n+")) { ",d.errorPath=e.util.getPathExpr(e.errorPath,"key"+n,e.opts.jsonPointers);H=c+"[key"+n+"]";d.dataPathArr[p]="key"+n;z=e.validate(d);e.util.varOccurences(z,m)<2?i+=" "+e.util.varReplace(z,m,H)+" ":i+=" var "+m+" = "+H+"; "+z+" ",l&&(i+=" if (!valid"+d.level+") break; "),i+=" } ",l&&(i+=" else valid"+d.level+" = true; "),i+=" } ",l&&(i+=" if (valid"+d.level+") { ",f+="}")}}if(e.opts.v5){var re=_;if(re)for(var oe,se=-1,ae=re.length-1;se<ae;){var le=k[oe=re[se+=1]];Y=le.schema;if(e.util.schemaHasRules(Y,e.RULES.all)){d.schema=Y,d.schemaPath=e.schemaPath+".patternGroups"+e.util.getProperty(oe)+".schema",d.errSchemaPath=e.errSchemaPath+"/patternGroups/"+e.util.escapeFragment(oe)+"/schema",i+=" var pgPropCount"+n+" = 0; for (var key"+n+" in "+c+") { if ("+e.usePattern(oe)+".test(key"+n+")) { pgPropCount"+n+"++; ",d.errorPath=e.util.getPathExpr(e.errorPath,"key"+n,e.opts.jsonPointers);H=c+"[key"+n+"]";d.dataPathArr[p]="key"+n;z=e.validate(d);e.util.varOccurences(z,m)<2?i+=" "+e.util.varReplace(z,m,H)+" ":i+=" var "+m+" = "+H+"; "+z+" ",l&&(i+=" if (!valid"+d.level+") break; "),i+=" } ",l&&(i+=" else valid"+d.level+" = true; "),i+=" } ",l&&(i+=" if (valid"+d.level+") { ",f+="}");var ce=le.minimum,he=le.maximum;if(void 0!==ce||void 0!==he){i+=" var "+h+" = true; ";I=a;if(void 0!==ce){var ue=ce,de="minimum",fe="less";i+=" "+h+" = pgPropCount"+n+" >= "+ce+"; ",a=e.errSchemaPath+"/patternGroups/minimum",i+=" if (!"+h+") { ",(pe=pe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'patternGroups' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { reason: '"+de+"', limit: "+ue+", pattern: '"+e.util.escapeQuotes(oe)+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have "+fe+" than "+ue+' properties matching pattern "'+e.util.escapeQuotes(oe)+"\"' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";j=i;i=pe.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+j+"]); ":i+=" validate.errors = ["+j+"]; return false; ":i+=" var err = "+j+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",void 0!==he&&(i+=" else ")}if(void 0!==he){var pe;ue=he,de="maximum",fe="more";i+=" "+h+" = pgPropCount"+n+" <= "+he+"; ",a=e.errSchemaPath+"/patternGroups/maximum",i+=" if (!"+h+") { ",(pe=pe||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'patternGroups' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { reason: '"+de+"', limit: "+ue+", pattern: '"+e.util.escapeQuotes(oe)+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have "+fe+" than "+ue+' properties matching pattern "'+e.util.escapeQuotes(oe)+"\"' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";j=i;i=pe.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+j+"]); ":i+=" validate.errors = ["+j+"]; return false; ":i+=" var err = "+j+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } "}a=I,l&&(i+=" if ("+h+") { ",f+="}")}}}}return l&&(i+=" "+f+" if ("+u+" == errors) {"),i=e.util.cleanUpCode(i)}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u=e.opts.v5&&o.$data,d=u?e.util.getData(o.$data,r,e.dataPathArr):o;if(u&&(i+=" var schema"+n+" = "+d+"; ",d="schema"+n),!u)if(o.length<e.opts.loopRequired&&e.schema.properties&&Object.keys(e.schema.properties).length){var f=[],p=o;if(p)for(var m=-1,g=p.length-1;m<g;){D=p[m+=1];var v=e.schema.properties[D];v&&e.util.schemaHasRules(v,e.RULES.all)||(f[f.length]=D)}}else f=o;if(u||f.length){var y=e.errorPath,w=u||f.length>=e.opts.loopRequired;if(l)if(i+=" var missing"+n+"; ",w){u||(i+=" var schema"+n+" = validate.schema"+s+"; ");var b="' + "+(k="schema"+n+"["+(x="i"+n)+"]")+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(y,k,e.opts.jsonPointers)),i+=" var "+h+" = true; ",u&&(i+=" if (schema"+n+" === undefined) "+h+" = true; else if (!Array.isArray(schema"+n+")) "+h+" = false; else {"),i+=" for (var "+x+" = 0; "+x+" < schema"+n+".length; "+x+"++) { "+h+" = "+c+"[schema"+n+"["+x+"]] !== undefined; if (!"+h+") break; } ",u&&(i+=" } "),i+=" if (!"+h+") { ",(S=S||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+b+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+b+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var C=i;i=S.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+C+"]); ":i+=" validate.errors = ["+C+"]; return false; ":i+=" var err = "+C+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { "}else{i+=" if ( ";var A=f;if(A)for(var E,x=-1,F=A.length-1;x<F;){E=A[x+=1],x&&(i+=" || "),i+=" ( "+c+(L=e.util.getProperty(E))+" === undefined && (missing"+n+" = "+e.util.toQuotedString(e.opts.jsonPointers?E:L)+") ) "}i+=") { ";var S;b="' + "+(k="missing"+n)+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.opts.jsonPointers?e.util.getPathExpr(y,k,!0):y+" + "+k),(S=S||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+b+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+b+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";C=i;i=S.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+C+"]); ":i+=" validate.errors = ["+C+"]; return false; ":i+=" var err = "+C+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { "}else if(w){u||(i+=" var schema"+n+" = validate.schema"+s+"; ");var k;b="' + "+(k="schema"+n+"["+(x="i"+n)+"]")+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(y,k,e.opts.jsonPointers)),u&&(i+=" if (schema"+n+" && !Array.isArray(schema"+n+")) { var err = ",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+b+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+b+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if (schema"+n+" !== undefined) { "),i+=" for (var "+x+" = 0; "+x+" < schema"+n+".length; "+x+"++) { if ("+c+"[schema"+n+"["+x+"]] === undefined) { var err = ",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+b+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+b+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ",u&&(i+=" } ")}else{var _=f;if(_){x=-1;for(var D,$=_.length-1;x<$;){D=_[x+=1];var L=e.util.getProperty(D);b=e.util.escapeQuotes(D);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(y,D,e.opts.jsonPointers)),i+=" if ("+c+L+" === undefined) { var err = ",!1!==e.createErrors?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingProperty: '"+b+"' } ",!1!==e.opts.messages&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+b+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}}e.errorPath=y}else l&&(i+=" if (true) {");return i}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u=e.opts.v5&&o.$data,d=u?e.util.getData(o.$data,r,e.dataPathArr):o;if(u&&(i+=" var schema"+n+" = "+d+"; ",d="schema"+n),(o||u)&&!1!==e.opts.uniqueItems){u&&(i+=" var "+h+"; if ("+d+" === false || "+d+" === undefined) "+h+" = true; else if (typeof "+d+" != 'boolean') "+h+" = false; else { "),i+=" var "+h+" = true; if ("+c+".length > 1) { var i = "+c+".length, j; outer: for (;i--;) { for (j = i; j--;) { if (equal("+c+"[i], "+c+"[j])) { "+h+" = false; break outer; } } } } ",u&&(i+=" } "),i+=" if (!"+h+") { ";var f=f||[];f.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'uniqueItems' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { i: i, j: j } ',!1!==e.opts.messages&&(i+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' "),e.opts.verbose&&(i+=" , schema: ",i+=u?"validate.schema"+s:""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var p=i;i=f.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+p+"]); ":i+=" validate.errors = ["+p+"]; return false; ":i+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",l&&(i+=" else { ")}else l&&(i+=" if (true) { ");return i}},function(e,t,i){"use strict";var n="https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/json-schema-v5.json";function r(e){return{not:{items:{not:e}}}}e.exports={enable:function(e){var t={switch:i(44),constant:i(45),_formatLimit:i(46),patternRequired:i(47)};if(!1!==e._opts.meta){var o=i(48);e.addMetaSchema(o,n)}function s(i,n,r){var o={inline:r||t[i],statements:!0,errors:"full"};n&&(o.type=n),e.addKeyword(i,o)}s("constant"),e.addKeyword("contains",{type:"array",macro:r}),s("formatMaximum","string",t._formatLimit),s("formatMinimum","string",t._formatLimit),e.addKeyword("exclusiveFormatMaximum"),e.addKeyword("exclusiveFormatMinimum"),e.addKeyword("patternGroups"),s("patternRequired","object"),s("switch")},META_SCHEMA_ID:n}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="errs__"+n,d=e.util.copy(e),f="";d.level++;var p,m="ifPassed"+e.level;i+="var "+m+";";var g=o;if(g)for(var v,y=-1,w=g.length-1;y<w;){if(v=g[y+=1],y&&!p&&(i+=" if (!"+m+") { ",f+="}"),v.if&&e.util.schemaHasRules(v.if,e.RULES.all)){i+=" var "+u+" = errors; ";var b=e.compositeRule;if(e.compositeRule=d.compositeRule=!0,d.createErrors=!1,d.schema=v.if,d.schemaPath=s+"["+y+"].if",d.errSchemaPath=a+"/"+y+"/if",i+=" "+e.validate(d)+" ",d.createErrors=!0,e.compositeRule=d.compositeRule=b,i+=" "+m+" = valid"+d.level+"; if ("+m+") { ","boolean"==typeof v.then){if(!1===v.then){(A=A||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'switch' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { caseIndex: '+y+" } ",!1!==e.opts.messages&&(i+=" , message: 'should pass \"switch\" keyword validation' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var C=i;i=A.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+C+"]); ":i+=" validate.errors = ["+C+"]; return false; ":i+=" var err = "+C+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}i+=" var valid"+d.level+" = "+v.then+"; "}else d.schema=v.then,d.schemaPath=s+"["+y+"].then",d.errSchemaPath=a+"/"+y+"/then",i+=" "+e.validate(d)+" ";i+=" } else { errors = "+u+"; if (vErrors !== null) { if ("+u+") vErrors.length = "+u+"; else vErrors = null; } } "}else if(i+=" "+m+" = true; ","boolean"==typeof v.then){if(!1===v.then){var A;(A=A||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'switch' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { caseIndex: '+y+" } ",!1!==e.opts.messages&&(i+=" , message: 'should pass \"switch\" keyword validation' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";C=i;i=A.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+C+"]); ":i+=" validate.errors = ["+C+"]; return false; ":i+=" var err = "+C+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}i+=" var valid"+d.level+" = "+v.then+"; "}else d.schema=v.then,d.schemaPath=s+"["+y+"].then",d.errSchemaPath=a+"/"+y+"/then",i+=" "+e.validate(d)+" ";p=v.continue}return i+=f+"var "+h+" = valid"+d.level+"; ",i=e.util.cleanUpCode(i)}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u=e.opts.v5&&o.$data,d=u?e.util.getData(o.$data,r,e.dataPathArr):o;u&&(i+=" var schema"+n+" = "+d+"; ",d="schema"+n),u||(i+=" var schema"+n+" = validate.schema"+s+";"),i+="var "+h+" = equal("+c+", schema"+n+"); if (!"+h+") { ";var f=f||[];f.push(i),i="",!1!==e.createErrors?(i+=" { keyword: 'constant' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: 'should be equal to constant' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var p=i;return i=f.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+p+"]); ":i+=" validate.errors = ["+p+"]; return false; ":i+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" }"}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n;if(i+="var "+h+" = undefined;",!1===e.opts.format)return i+=" "+h+" = true; ";var u=e.schema.format,d=e.opts.v5&&u.$data,f="";if(d){var p=e.util.getData(u.$data,r,e.dataPathArr);i+=" var "+(m="format"+n)+" = formats["+p+"] , "+(g="compare"+n)+" = "+m+" && "+m+".compare;"}else{var m;if(!(m=e.formats[u])||!m.compare)return i+=" "+h+" = true; ";var g="formats"+e.util.getProperty(u)+".compare"}var v="formatMaximum"==t,y="exclusiveFormat"+(v?"Maximum":"Minimum"),w=e.schema[y],b=e.opts.v5&&w&&w.$data,C=v?"<":">",A="result"+n,E=e.opts.v5&&o.$data,x=E?e.util.getData(o.$data,r,e.dataPathArr):o;if(E&&(i+=" var schema"+n+" = "+x+"; ",x="schema"+n),b){var F=e.util.getData(w.$data,r,e.dataPathArr),S="exclusive"+n,k="' + "+("op"+n)+" + '";i+=" var schemaExcl"+n+" = "+F+"; ",i+=" if (typeof "+(F="schemaExcl"+n)+" != 'boolean' && "+F+" !== undefined) { "+h+" = false; ";var _=y;($=$||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(_||"_exclusiveFormatLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: {} ',!1!==e.opts.messages&&(i+=" , message: '"+y+" should be boolean' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var D=i;i=$.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+D+"]); ":i+=" validate.errors = ["+D+"]; return false; ":i+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",l&&(f+="}",i+=" else { "),E&&(i+=" if ("+x+" === undefined) "+h+" = true; else if (typeof "+x+" != 'string') "+h+" = false; else { ",f+="}"),d&&(i+=" if (!"+g+") "+h+" = true; else { ",f+="}"),i+=" var "+A+" = "+g+"("+c+", ",i+=E?""+x:""+e.util.toQuotedString(o),i+=" ); if ("+A+" === undefined) "+h+" = false; var exclusive"+n+" = "+F+" === true; if ("+h+" === undefined) { "+h+" = exclusive"+n+" ? "+A+" "+C+" 0 : "+A+" "+C+"= 0; } if (!"+h+") var op"+n+" = exclusive"+n+" ? '"+C+"' : '"+C+"=';"}else{k=C;(S=!0===w)||(k+="=");E&&(i+=" if ("+x+" === undefined) "+h+" = true; else if (typeof "+x+" != 'string') "+h+" = false; else { ",f+="}"),d&&(i+=" if (!"+g+") "+h+" = true; else { ",f+="}"),i+=" var "+A+" = "+g+"("+c+", ",i+=E?""+x:""+e.util.toQuotedString(o),i+=" ); if ("+A+" === undefined) "+h+" = false; if ("+h+" === undefined) "+h+" = "+A+" "+C,S||(i+="="),i+=" 0;"}i+=f+"if (!"+h+") { ";var $;_=t;($=$||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(_||"_formatLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+'" , params: { limit: ',i+=E?""+x:""+e.util.toQuotedString(o),i+=" } ",!1!==e.opts.messages&&(i+=" , message: 'should be "+k+' "',i+=E?"' + "+x+" + '":""+e.util.escapeQuotes(o),i+="\"' "),e.opts.verbose&&(i+=" , schema: ",i+=E?"validate.schema"+s:""+e.util.toQuotedString(o),i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";D=i;return i=$.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+D+"]); ":i+=" validate.errors = ["+D+"]; return false; ":i+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="}"}},function(e,t){"use strict";e.exports=function(e,t){var i=" ",n=e.level,r=e.dataLevel,o=e.schema[t],s=e.schemaPath+"."+t,a=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,c="data"+(r||""),h="valid"+n,u="key"+n,d="patternMatched"+n,f="";i+="var "+h+" = true;";var p=o;if(p)for(var m,g=-1,v=p.length-1;g<v;){m=p[g+=1],i+=" var "+d+" = false; for (var "+u+" in "+c+") { "+d+" = "+e.usePattern(m)+".test("+u+"); if ("+d+") break; } ";var y=e.util.escapeQuotes(m);i+=" if (!"+d+") { "+h+" = false; var err = ",!1!==e.createErrors?(i+=" { keyword: 'patternRequired' , dataPath: (dataPath || '') + "+e.errorPath+' , schemaPath: "'+a+"\" , params: { missingPattern: '"+y+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should have property matching pattern \\'"+y+"\\'' "),e.opts.verbose&&(i+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } ",l&&(f+="}",i+=" else { ")}return i+=""+f}},function(e,t){e.exports={id:"https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/json-schema-v5.json#",$schema:"http://json-schema.org/draft-04/schema#",description:"Core schema meta-schema (v5 proposals)",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0},$data:{type:"object",required:["$data"],properties:{$data:{type:"string",format:"relative-json-pointer"}},additionalProperties:!1}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{anyOf:[{type:"number",minimum:0,exclusiveMinimum:!0},{$ref:"#/definitions/$data"}]},maximum:{anyOf:[{type:"number"},{$ref:"#/definitions/$data"}]},exclusiveMaximum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},minimum:{anyOf:[{type:"number"},{$ref:"#/definitions/$data"}]},exclusiveMinimum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},maxLength:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minLength:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},pattern:{anyOf:[{type:"string",format:"regex"},{$ref:"#/definitions/$data"}]},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"},{$ref:"#/definitions/$data"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minItems:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},uniqueItems:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},maxProperties:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minProperties:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},required:{anyOf:[{$ref:"#/definitions/stringArray"},{$ref:"#/definitions/$data"}]},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"},{$ref:"#/definitions/$data"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{anyOf:[{type:"array",minItems:1,uniqueItems:!0},{$ref:"#/definitions/$data"}]},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"},format:{anyOf:[{type:"string"},{$ref:"#/definitions/$data"}]},formatMaximum:{anyOf:[{type:"string"},{$ref:"#/definitions/$data"}]},formatMinimum:{anyOf:[{type:"string"},{$ref:"#/definitions/$data"}]},exclusiveFormatMaximum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},exclusiveFormatMinimum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},constant:{anyOf:[{},{$ref:"#/definitions/$data"}]},contains:{$ref:"#"},patternGroups:{type:"object",additionalProperties:{type:"object",required:["schema"],properties:{maximum:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minimum:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},schema:{$ref:"#"}},additionalProperties:!1},default:{}},switch:{type:"array",items:{required:["then"],properties:{if:{$ref:"#"},then:{anyOf:[{type:"boolean"},{$ref:"#"}]},continue:{type:"boolean"}},additionalProperties:!1,dependencies:{continue:["if"]}}}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"],formatMaximum:["format"],formatMinimum:["format"],exclusiveFormatMaximum:["formatMaximum"],exclusiveFormatMinimum:["formatMinimum"]},default:{}}},function(e,t){"use strict";var i=/^[a-z_$][a-z0-9_$]*$/i;e.exports=function(e,t){var n=this;if(this.RULES.keywords[e])throw new Error("Keyword "+e+" is already defined");if(!i.test(e))throw new Error("Keyword "+e+" is not a valid identifier");if(t){var r=t.type;if(Array.isArray(r)){var o,s=r.length;for(o=0;o<s;o++)l(r[o]);for(o=0;o<s;o++)a(e,r[o],t)}else r&&l(r),a(e,r,t)}function a(e,t,i){for(var r,o=0;o<n.RULES.length;o++){var s=n.RULES[o];if(s.type==t){r=s;break}}r||(r={type:t,rules:[]},n.RULES.push(r));var a={keyword:e,definition:i,custom:!0};r.rules.push(a)}function l(e){if(!n.RULES.types[e])throw new Error("Unknown type "+e)}this.RULES.keywords[e]=!0,this.RULES.all[e]=!0}},function(e,t){e.exports={id:"http://json-schema.org/draft-04/schema#",$schema:"http://json-schema.org/draft-04/schema#",description:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{type:"number",minimum:0,exclusiveMinimum:!0},maximum:{type:"number"},exclusiveMaximum:{type:"boolean",default:!1},minimum:{type:"number"},exclusiveMinimum:{type:"boolean",default:!1},maxLength:{$ref:"#/definitions/positiveInteger"},minLength:{$ref:"#/definitions/positiveIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{$ref:"#/definitions/positiveInteger"},minItems:{$ref:"#/definitions/positiveIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxProperties:{$ref:"#/definitions/positiveInteger"},minProperties:{$ref:"#/definitions/positiveIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{type:"array",minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"]},default:{}}},function(e,t,i){"use strict";var n=i(52),r=i(53),o=i(56),s=i(57),a=i(58),l=i(61),c=i(54),h={create:function(e,t){if(!e)throw new Error("No container element provided.");this.container=e,this.dom={},this.highlighter=new n,this.selection=void 0,this.multiselection={nodes:[]},this.validateSchema=null,this.errorNodes=[],this.node=null,this.focusTarget=null,this._setOptions(t),this.options.history&&"view"!==this.options.mode&&(this.history=new r(this)),this._createFrame(),this._createTable()},destroy:function(){this.frame&&this.container&&this.frame.parentNode==this.container&&(this.container.removeChild(this.frame),this.frame=null),this.container=null,this.dom=null,this.clear(),this.node=null,this.focusTarget=null,this.selection=null,this.multiselection=null,this.errorNodes=null,this.validateSchema=null,this._debouncedValidate=null,this.history&&(this.history.destroy(),this.history=null),this.searchBox&&(this.searchBox.destroy(),this.searchBox=null),this.modeSwitcher&&(this.modeSwitcher.destroy(),this.modeSwitcher=null)},_setOptions:function(e){if(this.options={search:!0,history:!0,mode:"tree",name:void 0,schema:null},e)for(var t in e)e.hasOwnProperty(t)&&(this.options[t]=e[t]);this.setSchema(this.options.schema),this._debouncedValidate=c.debounce(this.validate.bind(this),this.DEBOUNCE_INTERVAL)},set:function(e,t){if(t&&(console.warn('Second parameter "name" is deprecated. Use setName(name) instead.'),this.options.name=t),e instanceof Function||void 0===e)this.clear();else{this.content.removeChild(this.table);var i={field:this.options.name,value:e},n=new a(this,i);this._setRoot(n),this.validate();this.node.expand(!1),this.content.appendChild(this.table)}this.history&&this.history.clear(),this.searchBox&&this.searchBox.clear()},get:function(){if(this.focusTarget){var e=a.getNodeFromTarget(this.focusTarget);e&&e.blur()}return this.node?this.node.getValue():void 0},getText:function(){return JSON.stringify(this.get())},setText:function(e){this.set(c.parse(e))},setName:function(e){this.options.name=e,this.node&&this.node.updateField(this.options.name)},getName:function(){return this.options.name},focus:function(){var e=this.content.querySelector("[contenteditable=true]");e?e.focus():this.node.dom.expand?this.node.dom.expand.focus():this.node.dom.menu?this.node.dom.menu.focus():(e=this.frame.querySelector("button"))&&e.focus()},clear:function(){this.node&&(this.node.collapse(),this.tbody.removeChild(this.node.getDom()),delete this.node)},_setRoot:function(e){this.clear(),this.node=e,this.tbody.appendChild(e.getDom())},search:function(e){var t;return this.node?(this.content.removeChild(this.table),t=this.node.search(e),this.content.appendChild(this.table)):t=[],t},expandAll:function(){this.node&&(this.content.removeChild(this.table),this.node.expand(),this.content.appendChild(this.table))},collapseAll:function(){this.node&&(this.content.removeChild(this.table),this.node.collapse(),this.content.appendChild(this.table))},_onAction:function(e,t){this.history&&this.history.add(e,t),this._onChange()},_onChange:function(){if(this._debouncedValidate(),this.options.onChange)try{this.options.onChange()}catch(e){console.error("Error in onChange callback: ",e)}},validate:function(){this.errorNodes&&this.errorNodes.forEach(function(e){e.setError(null)});var e=this.node;if(e){var t=e.validate(),i=[];if(this.validateSchema)this.validateSchema(e.getValue())||(i=this.validateSchema.errors.map(function(e){return c.improveSchemaError(e)}).map(function(t){return{node:e.findNode(t.dataPath),error:t}}).filter(function(e){return null!=e.node}));this.errorNodes=t.concat(i).reduce(function(e,t){return t.node.findParents().map(function(e){return{node:e,child:t.node,error:{message:"object"===e.type?"Contains invalid properties":"Contains invalid items"}}}).concat(e,[t])},[]).map(function(e){return e.node.setError(e.error,e.child),e.node})}},refresh:function(){this.node&&this.node.updateDom({recurse:!0})},startAutoScroll:function(e){var t=this,i=this.content,n=c.getAbsoluteTop(i),r=i.clientHeight,o=n+r;e<n+24&&i.scrollTop>0?this.autoScrollStep=(n+24-e)/3:e>o-24&&r+i.scrollTop<i.scrollHeight?this.autoScrollStep=(o-24-e)/3:this.autoScrollStep=void 0,this.autoScrollStep?this.autoScrollTimer||(this.autoScrollTimer=setInterval(function(){t.autoScrollStep?i.scrollTop-=t.autoScrollStep:t.stopAutoScroll()},50)):this.stopAutoScroll()},stopAutoScroll:function(){this.autoScrollTimer&&(clearTimeout(this.autoScrollTimer),delete this.autoScrollTimer),this.autoScrollStep&&delete this.autoScrollStep},setSelection:function(e){e&&("scrollTop"in e&&this.content&&(this.content.scrollTop=e.scrollTop),e.nodes&&this.select(e.nodes),e.range&&c.setSelectionOffset(e.range),e.dom&&e.dom.focus())},getSelection:function(){var e=c.getSelectionOffset();return e&&"DIV"!==e.container.nodeName&&(e=null),{dom:this.focusTarget,range:e,nodes:this.multiselection.nodes.slice(0),scrollTop:this.content?this.content.scrollTop:0}},scrollTo:function(e,t){var i=this.content;if(i){var n=this;n.animateTimeout&&(clearTimeout(n.animateTimeout),delete n.animateTimeout),n.animateCallback&&(n.animateCallback(!1),delete n.animateCallback);var r=i.clientHeight,o=i.scrollHeight-r,s=Math.min(Math.max(e-r/4,0),o),a=function(){var e=i.scrollTop,r=s-e;Math.abs(r)>3?(i.scrollTop+=r/3,n.animateCallback=t,n.animateTimeout=setTimeout(a,50)):(t&&t(!0),i.scrollTop=s,delete n.animateTimeout,delete n.animateCallback)};a()}else t&&t(!1)},_createFrame:function(){this.frame=document.createElement("div"),this.frame.className="jsoneditor jsoneditor-mode-"+this.options.mode,this.container.appendChild(this.frame);var e=this;function t(t){e._onEvent&&e._onEvent(t)}this.frame.onclick=function(e){var i=e.target;t(e),"BUTTON"==i.nodeName&&e.preventDefault()},this.frame.oninput=t,this.frame.onchange=t,this.frame.onkeydown=t,this.frame.onkeyup=t,this.frame.oncut=t,this.frame.onpaste=t,this.frame.onmousedown=t,this.frame.onmouseup=t,this.frame.onmouseover=t,this.frame.onmouseout=t,c.addEventListener(this.frame,"focus",t,!0),c.addEventListener(this.frame,"blur",t,!0),this.frame.onfocusin=t,this.frame.onfocusout=t,this.menu=document.createElement("div"),this.menu.className="jsoneditor-menu",this.frame.appendChild(this.menu);var i=document.createElement("button");i.type="button",i.className="jsoneditor-expand-all",i.title="Expand all fields",i.onclick=function(){e.expandAll()},this.menu.appendChild(i);var n=document.createElement("button");if(n.type="button",n.title="Collapse all fields",n.className="jsoneditor-collapse-all",n.onclick=function(){e.collapseAll()},this.menu.appendChild(n),this.history){var r=document.createElement("button");r.type="button",r.className="jsoneditor-undo jsoneditor-separator",r.title="Undo last action (Ctrl+Z)",r.onclick=function(){e._onUndo()},this.menu.appendChild(r),this.dom.undo=r;var s=document.createElement("button");s.type="button",s.className="jsoneditor-redo",s.title="Redo (Ctrl+Shift+Z)",s.onclick=function(){e._onRedo()},this.menu.appendChild(s),this.dom.redo=s,this.history.onChange=function(){r.disabled=!e.history.canUndo(),s.disabled=!e.history.canRedo()},this.history.onChange()}if(this.options&&this.options.modes&&this.options.modes.length){var a=this;this.modeSwitcher=new l(this.menu,this.options.modes,this.options.mode,function(e){a.modeSwitcher.destroy(),a.setMode(e),a.modeSwitcher.focus()})}this.options.search&&(this.searchBox=new o(this,this.menu))},_onUndo:function(){this.history&&(this.history.undo(),this._onChange())},_onRedo:function(){this.history&&(this.history.redo(),this._onChange())},_onEvent:function(e){"keydown"==e.type&&this._onKeyDown(e),"focus"==e.type&&(this.focusTarget=e.target),"mousedown"==e.type&&this._startDragDistance(e),"mousemove"!=e.type&&"mouseup"!=e.type&&"click"!=e.type||this._updateDragDistance(e);var t=a.getNodeFromTarget(e.target);if(t&&t.selected){if("click"==e.type){if(e.target==t.dom.menu)return void this.showContextMenu(e.target);e.hasMoved||this.deselect()}"mousedown"==e.type&&a.onDragStart(this.multiselection.nodes,e)}else"mousedown"==e.type&&(this.deselect(),t&&e.target==t.dom.drag?a.onDragStart(t,e):(!t||e.target!=t.dom.field&&e.target!=t.dom.value&&e.target!=t.dom.select)&&this._onMultiSelectStart(e));t&&t.onEvent(e)},_startDragDistance:function(e){this.dragDistanceEvent={initialTarget:e.target,initialPageX:e.pageX,initialPageY:e.pageY,dragDistance:0,hasMoved:!1}},_updateDragDistance:function(e){this.dragDistanceEvent||this._startDragDistance(e);var t=e.pageX-this.dragDistanceEvent.initialPageX,i=e.pageY-this.dragDistanceEvent.initialPageY;return this.dragDistanceEvent.dragDistance=Math.sqrt(t*t+i*i),this.dragDistanceEvent.hasMoved=this.dragDistanceEvent.hasMoved||this.dragDistanceEvent.dragDistance>10,e.dragDistance=this.dragDistanceEvent.dragDistance,e.hasMoved=this.dragDistanceEvent.hasMoved,e.dragDistance},_onMultiSelectStart:function(e){var t=a.getNodeFromTarget(e.target);if("tree"===this.options.mode&&void 0===this.options.onEditable){this.multiselection={start:t||null,end:null,nodes:[]},this._startDragDistance(e);var i=this;this.mousemove||(this.mousemove=c.addEventListener(window,"mousemove",function(e){i._onMultiSelect(e)})),this.mouseup||(this.mouseup=c.addEventListener(window,"mouseup",function(e){i._onMultiSelectEnd(e)}))}},_onMultiSelect:function(e){if(e.preventDefault(),this._updateDragDistance(e),e.hasMoved){var t=a.getNodeFromTarget(e.target);t&&(null==this.multiselection.start&&(this.multiselection.start=t),this.multiselection.end=t),this.deselect();var i=this.multiselection.start,n=this.multiselection.end||this.multiselection.start;i&&n&&(this.multiselection.nodes=this._findTopLevelNodes(i,n),this.select(this.multiselection.nodes))}},_onMultiSelectEnd:function(e){this.multiselection.nodes[0]&&this.multiselection.nodes[0].dom.menu.focus(),this.multiselection.start=null,this.multiselection.end=null,this.mousemove&&(c.removeEventListener(window,"mousemove",this.mousemove),delete this.mousemove),this.mouseup&&(c.removeEventListener(window,"mouseup",this.mouseup),delete this.mouseup)},deselect:function(e){this.multiselection.nodes.forEach(function(e){e.setSelected(!1)}),this.multiselection.nodes=[],e&&(this.multiselection.start=null,this.multiselection.end=null)},select:function(e){if(!Array.isArray(e))return this.select([e]);if(e){this.deselect(),this.multiselection.nodes=e.slice(0);var t=e[0];e.forEach(function(e){e.setSelected(!0,e===t)})}},_findTopLevelNodes:function(e,t){for(var i=e.getNodePath(),n=t.getNodePath(),r=0;r<i.length&&i[r]===n[r];)r++;var o=i[r-1],s=i[r],a=n[r];if(s&&a||(o.parent?(s=o,a=o,o=o.parent):(s=o.childs[0],a=o.childs[o.childs.length-1])),o&&s&&a){var l=o.childs.indexOf(s),c=o.childs.indexOf(a),h=Math.min(l,c),u=Math.max(l,c);return o.childs.slice(h,u+1)}return[]},_onKeyDown:function(e){var t=e.which||e.keyCode,i=e.ctrlKey,n=e.shiftKey,r=!1;if(9==t){var o=this;setTimeout(function(){c.selectContentEditable(o.focusTarget)},0)}if(this.searchBox)if(i&&70==t)this.searchBox.dom.search.focus(),this.searchBox.dom.search.select(),r=!0;else if(114==t||i&&71==t){n?this.searchBox.previous(!0):this.searchBox.next(!0),r=!0}this.history&&(i&&!n&&90==t?(this._onUndo(),r=!0):i&&n&&90==t&&(this._onRedo(),r=!0)),r&&(e.preventDefault(),e.stopPropagation())},_createTable:function(){var e,t=document.createElement("div");t.className="jsoneditor-outer",this.contentOuter=t,this.content=document.createElement("div"),this.content.className="jsoneditor-tree",t.appendChild(this.content),this.table=document.createElement("table"),this.table.className="jsoneditor-tree",this.content.appendChild(this.table),this.colgroupContent=document.createElement("colgroup"),"tree"===this.options.mode&&((e=document.createElement("col")).width="24px",this.colgroupContent.appendChild(e)),(e=document.createElement("col")).width="24px",this.colgroupContent.appendChild(e),e=document.createElement("col"),this.colgroupContent.appendChild(e),this.table.appendChild(this.colgroupContent),this.tbody=document.createElement("tbody"),this.table.appendChild(this.tbody),this.frame.appendChild(t)},showContextMenu:function(e,t){var i=[],n=this;i.push({text:"Duplicate",title:"Duplicate selected fields (Ctrl+D)",className:"jsoneditor-duplicate",click:function(){a.onDuplicate(n.multiselection.nodes)}}),i.push({text:"Remove",title:"Remove selected fields (Ctrl+Del)",className:"jsoneditor-remove",click:function(){a.onRemove(n.multiselection.nodes)}}),new s(i,{close:t}).show(e,this.content)}};e.exports=[{mode:"tree",mixin:h,data:"json"},{mode:"view",mixin:h,data:"json"},{mode:"form",mixin:h,data:"json"}]},function(e,t){"use strict";function i(){this.locked=!1}i.prototype.highlight=function(e){this.locked||(this.node!=e&&(this.node&&this.node.setHighlight(!1),this.node=e,this.node.setHighlight(!0)),this._cancelUnhighlight())},i.prototype.unhighlight=function(){if(!this.locked){var e=this;this.node&&(this._cancelUnhighlight(),this.unhighlightTimer=setTimeout(function(){e.node.setHighlight(!1),e.node=void 0,e.unhighlightTimer=void 0},0))}},i.prototype._cancelUnhighlight=function(){this.unhighlightTimer&&(clearTimeout(this.unhighlightTimer),this.unhighlightTimer=void 0)},i.prototype.lock=function(){this.locked=!0},i.prototype.unlock=function(){this.locked=!1},e.exports=i},function(e,t,i){"use strict";i(54);function n(e){this.editor=e,this.history=[],this.index=-1,this.clear(),this.actions={editField:{undo:function(e){e.node.updateField(e.oldValue)},redo:function(e){e.node.updateField(e.newValue)}},editValue:{undo:function(e){e.node.updateValue(e.oldValue)},redo:function(e){e.node.updateValue(e.newValue)}},changeType:{undo:function(e){e.node.changeType(e.oldType)},redo:function(e){e.node.changeType(e.newType)}},appendNodes:{undo:function(e){e.nodes.forEach(function(t){e.parent.removeChild(t)})},redo:function(e){e.nodes.forEach(function(t){e.parent.appendChild(t)})}},insertBeforeNodes:{undo:function(e){e.nodes.forEach(function(t){e.parent.removeChild(t)})},redo:function(e){e.nodes.forEach(function(t){e.parent.insertBefore(t,e.beforeNode)})}},insertAfterNodes:{undo:function(e){e.nodes.forEach(function(t){e.parent.removeChild(t)})},redo:function(e){var t=e.afterNode;e.nodes.forEach(function(i){e.parent.insertAfter(e.node,t),t=i})}},removeNodes:{undo:function(e){var t=e.parent,i=t.childs[e.index]||t.append;e.nodes.forEach(function(e){t.insertBefore(e,i)})},redo:function(e){e.nodes.forEach(function(t){e.parent.removeChild(t)})}},duplicateNodes:{undo:function(e){e.nodes.forEach(function(t){e.parent.removeChild(t)})},redo:function(e){var t=e.afterNode;e.nodes.forEach(function(i){e.parent.insertAfter(i,t),t=i})}},moveNodes:{undo:function(e){e.nodes.forEach(function(t){e.oldBeforeNode.parent.moveBefore(t,e.oldBeforeNode)})},redo:function(e){e.nodes.forEach(function(t){e.newBeforeNode.parent.moveBefore(t,e.newBeforeNode)})}},sort:{undo:function(e){var t=e.node;t.hideChilds(),t.sort=e.oldSort,t.childs=e.oldChilds,t.showChilds()},redo:function(e){var t=e.node;t.hideChilds(),t.sort=e.newSort,t.childs=e.newChilds,t.showChilds()}}}}n.prototype.onChange=function(){},n.prototype.add=function(e,t){this.index++,this.history[this.index]={action:e,params:t,timestamp:new Date},this.index<this.history.length-1&&this.history.splice(this.index+1,this.history.length-this.index-1),this.onChange()},n.prototype.clear=function(){this.history=[],this.index=-1,this.onChange()},n.prototype.canUndo=function(){return this.index>=0},n.prototype.canRedo=function(){return this.index<this.history.length-1},n.prototype.undo=function(){if(this.canUndo()){var e=this.history[this.index];if(e){var t=this.actions[e.action];t&&t.undo?(t.undo(e.params),e.params.oldSelection&&this.editor.setSelection(e.params.oldSelection)):console.error(new Error('unknown action "'+e.action+'"'))}this.index--,this.onChange()}},n.prototype.redo=function(){if(this.canRedo()){this.index++;var e=this.history[this.index];if(e){var t=this.actions[e.action];t&&t.redo?(t.redo(e.params),e.params.newSelection&&this.editor.setSelection(e.params.newSelection)):console.error(new Error('unknown action "'+e.action+'"'))}this.onChange()}},n.prototype.destroy=function(){this.editor=null,this.history=[],this.index=-1},e.exports=n},function(e,t,i){"use strict";var n=i(55);t.parse=function(e){try{return JSON.parse(e)}catch(i){throw t.validate(e),i}},t.sanitize=function(e){var t=[],i=0,n=e.match(/^\s*(\/\*(.|[\r\n])*?\*\/)?\s*[\da-zA-Z_$]+\s*\(([\s\S]*)\)\s*;?\s*$/);function r(){return e.charAt(i)}function o(){return e.charAt(i+1)}function s(){for(var e=t.length-1;e>=0;){var i=t[e];if(" "!==i&&"\n"!==i&&"\r"!==i&&"\t"!==i)return i;e--}return""}function a(){for(i+=2;i<e.length&&("*"!==r()||"/"!==o());)i++;i+=2}function l(){for(i+=2;i<e.length&&"\n"!==r();)i++}function c(n){t.push('"'),i++;for(var o=r();i<e.length&&o!==n;)'"'===o&&"\\"!==e.charAt(i-1)&&t.push("\\"),"\\"===o&&(i++,"'"!==(o=r())&&t.push("\\")),t.push(o),i++,o=r();o===n&&(t.push('"'),i++)}function h(){for(var e="",n=r(),o=/[a-zA-Z_$\d]/;o.test(n);)e+=n,i++,n=r();-1===["null","true","false"].indexOf(e)?t.push('"'+e+'"'):t.push(e)}for(n&&(e=n[3]);i<e.length;){var u=r();"/"===u&&"*"===o()?a():"/"===u&&"/"===o()?l():"'"===u||'"'===u?c(u):/[a-zA-Z_$]/.test(u)&&-1!==["{",","].indexOf(s())?h():(t.push(u),i++)}return t.join("")},t.escapeUnicodeChars=function(e){return e.replace(/[\u007F-\uFFFF]/g,function(e){return"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})},t.validate=function(e){void 0!==n?n.parse(e):JSON.parse(e)},t.extend=function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i]);return e},t.clear=function(e){for(var t in e)e.hasOwnProperty(t)&&delete e[t];return e},t.type=function(e){return null===e?"null":void 0===e?"undefined":e instanceof Number||"number"==typeof e?"number":e instanceof String||"string"==typeof e?"string":e instanceof Boolean||"boolean"==typeof e?"boolean":e instanceof RegExp||"regexp"==typeof e?"regexp":t.isArray(e)?"array":"object"};var r=/^https?:\/\/\S+$/;t.isUrl=function(e){return("string"==typeof e||e instanceof String)&&r.test(e)},t.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)},t.getAbsoluteLeft=function(e){return e.getBoundingClientRect().left+window.pageXOffset||document.scrollLeft||0},t.getAbsoluteTop=function(e){return e.getBoundingClientRect().top+window.pageYOffset||document.scrollTop||0},t.addClassName=function(e,t){var i=e.className.split(" ");-1==i.indexOf(t)&&(i.push(t),e.className=i.join(" "))},t.removeClassName=function(e,t){var i=e.className.split(" "),n=i.indexOf(t);-1!=n&&(i.splice(n,1),e.className=i.join(" "))},t.stripFormatting=function(e){for(var i=e.childNodes,n=0,r=i.length;n<r;n++){var o=i[n];o.style&&o.removeAttribute("style");var s=o.attributes;if(s)for(var a=s.length-1;a>=0;a--){var l=s[a];!0===l.specified&&o.removeAttribute(l.name)}t.stripFormatting(o)}},t.setEndOfContentEditable=function(e){var t,i;document.createRange&&((t=document.createRange()).selectNodeContents(e),t.collapse(!1),(i=window.getSelection()).removeAllRanges(),i.addRange(t))},t.selectContentEditable=function(e){var t,i;e&&"DIV"==e.nodeName&&(window.getSelection&&document.createRange&&((i=document.createRange()).selectNodeContents(e),(t=window.getSelection()).removeAllRanges(),t.addRange(i)))},t.getSelection=function(){if(window.getSelection){var e=window.getSelection();if(e.getRangeAt&&e.rangeCount)return e.getRangeAt(0)}return null},t.setSelection=function(e){if(e&&window.getSelection){var t=window.getSelection();t.removeAllRanges(),t.addRange(e)}},t.getSelectionOffset=function(){var e=t.getSelection();return e&&"startOffset"in e&&"endOffset"in e&&e.startContainer&&e.startContainer==e.endContainer?{startOffset:e.startOffset,endOffset:e.endOffset,container:e.startContainer.parentNode}:null},t.setSelectionOffset=function(e){if(document.createRange&&window.getSelection&&window.getSelection()){var i=document.createRange();e.container.firstChild||e.container.appendChild(document.createTextNode("")),i.setStart(e.container.firstChild,e.startOffset),i.setEnd(e.container.firstChild,e.endOffset),t.setSelection(i)}},t.getInnerText=function(e,i){if(void 0==i&&(i={text:"",flush:function(){var e=this.text;return this.text="",e},set:function(e){this.text=e}}),e.nodeValue)return i.flush()+e.nodeValue;if(e.hasChildNodes()){for(var n=e.childNodes,r="",o=0,s=n.length;o<s;o++){var a=n[o];if("DIV"==a.nodeName||"P"==a.nodeName){var l=n[o-1],c=l?l.nodeName:void 0;c&&"DIV"!=c&&"P"!=c&&"BR"!=c&&(r+="\n",i.flush()),r+=t.getInnerText(a,i),i.set("\n")}else"BR"==a.nodeName?(r+=i.flush(),i.set("\n")):r+=t.getInnerText(a,i)}return r}return"P"==e.nodeName&&-1!=t.getInternetExplorerVersion()?i.flush():""},t.getInternetExplorerVersion=function(){if(-1==o){var e=-1;if("Microsoft Internet Explorer"==navigator.appName){var t=navigator.userAgent;null!=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})").exec(t)&&(e=parseFloat(RegExp.$1))}o=e}return o},t.isFirefox=function(){return-1!=navigator.userAgent.indexOf("Firefox")};var o=-1;t.addEventListener=function(e,i,n,r){if(e.addEventListener)return void 0===r&&(r=!1),"mousewheel"===i&&t.isFirefox()&&(i="DOMMouseScroll"),e.addEventListener(i,n,r),n;if(e.attachEvent){var o=function(){return n.call(e,window.event)};return e.attachEvent("on"+i,o),o}},t.removeEventListener=function(e,i,n,r){e.removeEventListener?(void 0===r&&(r=!1),"mousewheel"===i&&t.isFirefox()&&(i="DOMMouseScroll"),e.removeEventListener(i,n,r)):e.detachEvent&&e.detachEvent("on"+i,n)},t.parsePath=function e(t){var i,n;if(0===t.length)return[];var r=t.match(/^\.(\w+)/);if(r)i=r[1],n=t.substr(i.length+1);else{if("["!==t[0])throw new SyntaxError("Failed to parse path");var o=t.indexOf("]");if(-1===o)throw new SyntaxError("Character ] expected in path");if(1===o)throw new SyntaxError("Index expected after [");var s=t.substring(1,o);"'"===s[0]&&(s='"'+s.substring(1,s.length-1)+'"'),i="*"===s?s:JSON.parse(s),n=t.substr(o+1)}return[i].concat(e(n))},t.improveSchemaError=function(e){if("enum"===e.keyword&&Array.isArray(e.schema)){var t=e.schema;if(t){if((t=t.map(function(e){return JSON.stringify(e)})).length>5){var i=["("+(t.length-5)+" more...)"];(t=t.slice(0,5)).push(i)}e.message="should be equal to one of: "+t.join(", ")}}return"additionalProperties"===e.keyword&&(e.message="should NOT have additional property: "+e.params.additionalProperty),e},t.insideRect=function(e,t,i){var n=void 0!==i?i:0;return t.left-n>=e.left&&t.right+n<=e.right&&t.top-n>=e.top&&t.bottom+n<=e.bottom},t.debounce=function(e,t,i){var n;return function(){var r=this,o=arguments,s=i&&!n;clearTimeout(n),n=setTimeout(function(){n=null,i||e.apply(r,o)},t),s&&e.apply(r,o)}},t.textDiff=function(e,t){for(var i=t.length,n=0,r=e.length,o=t.length;t.charAt(n)===e.charAt(n)&&n<i;)n++;for(;t.charAt(o-1)===e.charAt(r-1)&&o>n&&r>0;)o--,r--;return{start:n,end:o}}},function(e,t,i){var n=function(){var e={trace:function(){},yy:{},symbols_:{error:2,JSONString:3,STRING:4,JSONNumber:5,NUMBER:6,JSONNullLiteral:7,NULL:8,JSONBooleanLiteral:9,TRUE:10,FALSE:11,JSONText:12,JSONValue:13,EOF:14,JSONObject:15,JSONArray:16,"{":17,"}":18,JSONMemberList:19,JSONMember:20,":":21,",":22,"[":23,"]":24,JSONElementList:25,$accept:0,$end:1},terminals_:{2:"error",4:"STRING",6:"NUMBER",8:"NULL",10:"TRUE",11:"FALSE",14:"EOF",17:"{",18:"}",21:":",22:",",23:"[",24:"]"},productions_:[0,[3,1],[5,1],[7,1],[9,1],[9,1],[12,2],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[15,2],[15,3],[20,3],[19,1],[19,3],[16,2],[16,3],[25,1],[25,3]],performAction:function(e,t,i,n,r,o,s){var a=o.length-1;switch(r){case 1:this.$=e.replace(/\\(\\|")/g,"$1").replace(/\\n/g,"\n").replace(/\\r/g,"\r").replace(/\\t/g,"\t").replace(/\\v/g,"\v").replace(/\\f/g,"\f").replace(/\\b/g,"\b");break;case 2:this.$=Number(e);break;case 3:this.$=null;break;case 4:this.$=!0;break;case 5:this.$=!1;break;case 6:return this.$=o[a-1];case 13:this.$={};break;case 14:this.$=o[a-1];break;case 15:this.$=[o[a-2],o[a]];break;case 16:this.$={},this.$[o[a][0]]=o[a][1];break;case 17:this.$=o[a-2],o[a-2][o[a][0]]=o[a][1];break;case 18:this.$=[];break;case 19:this.$=o[a-1];break;case 20:this.$=[o[a]];break;case 21:this.$=o[a-2],o[a-2].push(o[a])}},table:[{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],12:1,13:2,15:7,16:8,17:[1,14],23:[1,15]},{1:[3]},{14:[1,16]},{14:[2,7],18:[2,7],22:[2,7],24:[2,7]},{14:[2,8],18:[2,8],22:[2,8],24:[2,8]},{14:[2,9],18:[2,9],22:[2,9],24:[2,9]},{14:[2,10],18:[2,10],22:[2,10],24:[2,10]},{14:[2,11],18:[2,11],22:[2,11],24:[2,11]},{14:[2,12],18:[2,12],22:[2,12],24:[2,12]},{14:[2,3],18:[2,3],22:[2,3],24:[2,3]},{14:[2,4],18:[2,4],22:[2,4],24:[2,4]},{14:[2,5],18:[2,5],22:[2,5],24:[2,5]},{14:[2,1],18:[2,1],21:[2,1],22:[2,1],24:[2,1]},{14:[2,2],18:[2,2],22:[2,2],24:[2,2]},{3:20,4:[1,12],18:[1,17],19:18,20:19},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:23,15:7,16:8,17:[1,14],23:[1,15],24:[1,21],25:22},{1:[2,6]},{14:[2,13],18:[2,13],22:[2,13],24:[2,13]},{18:[1,24],22:[1,25]},{18:[2,16],22:[2,16]},{21:[1,26]},{14:[2,18],18:[2,18],22:[2,18],24:[2,18]},{22:[1,28],24:[1,27]},{22:[2,20],24:[2,20]},{14:[2,14],18:[2,14],22:[2,14],24:[2,14]},{3:20,4:[1,12],20:29},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:30,15:7,16:8,17:[1,14],23:[1,15]},{14:[2,19],18:[2,19],22:[2,19],24:[2,19]},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:31,15:7,16:8,17:[1,14],23:[1,15]},{18:[2,17],22:[2,17]},{18:[2,15],22:[2,15]},{22:[2,21],24:[2,21]}],defaultActions:{16:[2,6]},parseError:function(e,t){throw new Error(e)},parse:function(e){var t=this,i=[0],n=[null],r=[],o=this.table,s="",a=0,l=0,c=0;this.lexer.setInput(e),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,void 0===this.lexer.yylloc&&(this.lexer.yylloc={});var h=this.lexer.yylloc;function u(e){i.length=i.length-2*e,n.length=n.length-e,r.length=r.length-e}function d(){var e;return"number"!=typeof(e=t.lexer.lex()||1)&&(e=t.symbols_[e]||e),e}r.push(h),"function"==typeof this.yy.parseError&&(this.parseError=this.yy.parseError);for(var f,p,m,g,v,y,w,b,C,A={};;){if(m=i[i.length-1],this.defaultActions[m]?g=this.defaultActions[m]:(null==f&&(f=d()),g=o[m]&&o[m][f]),void 0===g||!g.length||!g[0]){if(!c){for(y in C=[],o[m])this.terminals_[y]&&y>2&&C.push("'"+this.terminals_[y]+"'");var E="";E=this.lexer.showPosition?"Parse error on line "+(a+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+C.join(", ")+", got '"+this.terminals_[f]+"'":"Parse error on line "+(a+1)+": Unexpected "+(1==f?"end of input":"'"+(this.terminals_[f]||f)+"'"),this.parseError(E,{text:this.lexer.match,token:this.terminals_[f]||f,line:this.lexer.yylineno,loc:h,expected:C})}if(3==c){if(1==f)throw new Error(E||"Parsing halted.");l=this.lexer.yyleng,s=this.lexer.yytext,a=this.lexer.yylineno,h=this.lexer.yylloc,f=d()}for(;!(2..toString()in o[m]);){if(0==m)throw new Error(E||"Parsing halted.");u(1),m=i[i.length-1]}p=f,f=2,g=o[m=i[i.length-1]]&&o[m][2],c=3}if(g[0]instanceof Array&&g.length>1)throw new Error("Parse Error: multiple actions possible at state: "+m+", token: "+f);switch(g[0]){case 1:i.push(f),n.push(this.lexer.yytext),r.push(this.lexer.yylloc),i.push(g[1]),f=null,p?(f=p,p=null):(l=this.lexer.yyleng,s=this.lexer.yytext,a=this.lexer.yylineno,h=this.lexer.yylloc,c>0&&c--);break;case 2:if(w=this.productions_[g[1]][1],A.$=n[n.length-w],A._$={first_line:r[r.length-(w||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(w||1)].first_column,last_column:r[r.length-1].last_column},void 0!==(v=this.performAction.call(A,s,l,a,this.yy,g[1],n,r)))return v;w&&(i=i.slice(0,-1*w*2),n=n.slice(0,-1*w),r=r.slice(0,-1*w)),i.push(this.productions_[g[1]][0]),n.push(A.$),r.push(A._$),b=o[i[i.length-2]][i[i.length-1]],i.push(b);break;case 3:return!0}}return!0}},t=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parseError)throw new Error(e);this.yy.parseError(e,t)},setInput:function(e){return this._input=e,this._more=this._less=this.done=!1,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},this},input:function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.match+=e,this.matched+=e,e.match(/\n/)&&this.yylineno++,this._input=this._input.slice(1),e},unput:function(e){return this._input=e+this._input,this},more:function(){return this._more=!0,this},less:function(e){this._input=this.match.slice(e)+this._input},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},next:function(){if(this.done)return this.EOF;var e,t,i,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var o=this._currentRules(),s=0;s<o.length&&(!(i=this._input.match(this.rules[o[s]]))||t&&!(i[0].length>t[0].length)||(t=i,n=s,this.options.flex));s++);return t?((r=t[0].match(/\n.*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-1:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.yyleng=this.yytext.length,this._more=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,o[n],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e||void 0):""===this._input?this.EOF:void this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var e=this.next();return void 0!==e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(e){this.begin(e)},options:{},performAction:function(e,t,i,n){switch(i){case 0:break;case 1:return 6;case 2:return t.yytext=t.yytext.substr(1,t.yyleng-2),4;case 3:return 17;case 4:return 18;case 5:return 23;case 6:return 24;case 7:return 22;case 8:return 21;case 9:return 10;case 10:return 11;case 11:return 8;case 12:return 14;case 13:return"INVALID"}},rules:[/^(?:\s+)/,/^(?:(-?([0-9]|[1-9][0-9]+))(\.[0-9]+)?([eE][-+]?[0-9]+)?\b)/,/^(?:"(?:\\[\\"bfnrt/]|\\u[a-fA-F0-9]{4}|[^\\\0-\x09\x0a-\x1f"])*")/,/^(?:\{)/,/^(?:\})/,/^(?:\[)/,/^(?:\])/,/^(?:,)/,/^(?::)/,/^(?:true\b)/,/^(?:false\b)/,/^(?:null\b)/,/^(?:$)/,/^(?:.)/],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],inclusive:!0}}};return e}();return e.lexer=t,e}();t.parser=n,t.parse=n.parse.bind(n)},function(e,t){"use strict";function i(e,t){var i=this;this.editor=e,this.timeout=void 0,this.delay=200,this.lastText=void 0,this.dom={},this.dom.container=t;var n=document.createElement("table");this.dom.table=n,n.className="jsoneditor-search",t.appendChild(n);var r=document.createElement("tbody");this.dom.tbody=r,n.appendChild(r);var o=document.createElement("tr");r.appendChild(o);var s=document.createElement("td");o.appendChild(s);var a=document.createElement("div");this.dom.results=a,a.className="jsoneditor-results",s.appendChild(a),s=document.createElement("td"),o.appendChild(s);var l=document.createElement("div");this.dom.input=l,l.className="jsoneditor-frame",l.title="Search fields and values",s.appendChild(l);var c=document.createElement("table");l.appendChild(c);var h=document.createElement("tbody");c.appendChild(h),o=document.createElement("tr"),h.appendChild(o);var u=document.createElement("button");u.type="button",u.className="jsoneditor-refresh",(s=document.createElement("td")).appendChild(u),o.appendChild(s);var d=document.createElement("input");this.dom.search=d,d.oninput=function(e){i._onDelayedSearch(e)},d.onchange=function(e){i._onSearch()},d.onkeydown=function(e){i._onKeyDown(e)},d.onkeyup=function(e){i._onKeyUp(e)},u.onclick=function(e){d.select()},(s=document.createElement("td")).appendChild(d),o.appendChild(s);var f=document.createElement("button");f.type="button",f.title="Next result (Enter)",f.className="jsoneditor-next",f.onclick=function(){i.next()},(s=document.createElement("td")).appendChild(f),o.appendChild(s);var p=document.createElement("button");p.type="button",p.title="Previous result (Shift+Enter)",p.className="jsoneditor-previous",p.onclick=function(){i.previous()},(s=document.createElement("td")).appendChild(p),o.appendChild(s)}i.prototype.next=function(e){if(void 0!=this.results){var t=void 0!=this.resultIndex?this.resultIndex+1:0;t>this.results.length-1&&(t=0),this._setActiveResult(t,e)}},i.prototype.previous=function(e){if(void 0!=this.results){var t=this.results.length-1,i=void 0!=this.resultIndex?this.resultIndex-1:t;i<0&&(i=t),this._setActiveResult(i,e)}},i.prototype._setActiveResult=function(e,t){if(this.activeResult){var i=this.activeResult.node;"field"==this.activeResult.elem?delete i.searchFieldActive:delete i.searchValueActive,i.updateDom()}if(!this.results||!this.results[e])return this.resultIndex=void 0,void(this.activeResult=void 0);this.resultIndex=e;var n=this.results[this.resultIndex].node,r=this.results[this.resultIndex].elem;"field"==r?n.searchFieldActive=!0:n.searchValueActive=!0,this.activeResult=this.results[this.resultIndex],n.updateDom(),n.scrollTo(function(){t&&n.focus(r)})},i.prototype._clearDelay=function(){void 0!=this.timeout&&(clearTimeout(this.timeout),delete this.timeout)},i.prototype._onDelayedSearch=function(e){this._clearDelay();var t=this;this.timeout=setTimeout(function(e){t._onSearch()},this.delay)},i.prototype._onSearch=function(e){this._clearDelay();var t=this.dom.search.value,i=t.length>0?t:void 0;if(i!=this.lastText||e)if(this.lastText=i,this.results=this.editor.search(i),this._setActiveResult(void 0),void 0!=i){var n=this.results.length;switch(n){case 0:this.dom.results.innerHTML="no results";break;case 1:this.dom.results.innerHTML="1 result";break;default:this.dom.results.innerHTML=n+" results"}}else this.dom.results.innerHTML=""},i.prototype._onKeyDown=function(e){var t=e.which;27==t?(this.dom.search.value="",this._onSearch(),e.preventDefault(),e.stopPropagation()):13==t&&(e.ctrlKey?this._onSearch(!0):e.shiftKey?this.previous():this.next(),e.preventDefault(),e.stopPropagation())},i.prototype._onKeyUp=function(e){var t=e.keyCode;27!=t&&13!=t&&this._onDelayedSearch(e)},i.prototype.clear=function(){this.dom.search.value="",this._onSearch()},i.prototype.destroy=function(){this.editor=null,this.dom.container.removeChild(this.dom.table),this.dom=null,this.results=null,this.activeResult=null,this._clearDelay()},e.exports=i},function(e,t,i){"use strict";var n=i(54);function r(e,t){this.dom={};var i=this,n=this.dom;this.anchor=void 0,this.items=e,this.eventListeners={},this.selection=void 0,this.onClose=t?t.close:void 0;var r=document.createElement("div");r.className="jsoneditor-contextmenu-root",n.root=r;var o=document.createElement("div");o.className="jsoneditor-contextmenu",n.menu=o,r.appendChild(o);var s=document.createElement("ul");s.className="jsoneditor-menu",o.appendChild(s),n.list=s,n.items=[];var a=document.createElement("button");a.type="button",n.focusButton=a;var l=document.createElement("li");l.style.overflow="hidden",l.style.height="0",l.appendChild(a),s.appendChild(l),function e(t,n,r){r.forEach(function(r){if("separator"==r.type){var o=document.createElement("div");o.className="jsoneditor-separator",(a=document.createElement("li")).appendChild(o),t.appendChild(a)}else{var s={},a=document.createElement("li");t.appendChild(a);var l=document.createElement("button");if(l.type="button",l.className=r.className,s.button=l,r.title&&(l.title=r.title),r.click&&(l.onclick=function(e){e.preventDefault(),i.hide(),r.click()}),a.appendChild(l),r.submenu){var c,h=document.createElement("div");if(h.className="jsoneditor-icon",l.appendChild(h),l.appendChild(document.createTextNode(r.text)),r.click){l.className+=" jsoneditor-default";var u=document.createElement("button");u.type="button",s.buttonExpand=u,u.className="jsoneditor-expand",u.innerHTML='<div class="jsoneditor-expand"></div>',a.appendChild(u),r.submenuTitle&&(u.title=r.submenuTitle),c=u}else{var d=document.createElement("div");d.className="jsoneditor-expand",l.appendChild(d),c=l}c.onclick=function(e){e.preventDefault(),i._onExpandItem(s),c.focus()};var f=[];s.subItems=f;var p=document.createElement("ul");s.ul=p,p.className="jsoneditor-menu",p.style.height="0",a.appendChild(p),e(p,f,r.submenu)}else l.innerHTML='<div class="jsoneditor-icon"></div>'+r.text;n.push(s)}})}(s,this.dom.items,e),this.maxHeight=0,e.forEach(function(t){var n=24*(e.length+(t.submenu?t.submenu.length:0));i.maxHeight=Math.max(i.maxHeight,n)})}r.prototype._getVisibleButtons=function(){var e=[],t=this;return this.dom.items.forEach(function(i){e.push(i.button),i.buttonExpand&&e.push(i.buttonExpand),i.subItems&&i==t.expandedItem&&i.subItems.forEach(function(t){e.push(t.button),t.buttonExpand&&e.push(t.buttonExpand)})}),e},r.visibleMenu=void 0,r.prototype.show=function(e,t){this.hide();var i=!0;if(t){var o=e.getBoundingClientRect(),s=t.getBoundingClientRect();o.bottom+this.maxHeight<s.bottom||o.top-this.maxHeight>s.top&&(i=!1)}if(i){var a=e.offsetHeight;this.dom.menu.style.left="0px",this.dom.menu.style.top=a+"px",this.dom.menu.style.bottom=""}else this.dom.menu.style.left="0px",this.dom.menu.style.top="",this.dom.menu.style.bottom="0px";var l=e.parentNode;l.insertBefore(this.dom.root,l.firstChild);var c=this,h=this.dom.list;this.eventListeners.mousedown=n.addEventListener(window,"mousedown",function(e){var t=e.target;t==h||c._isChildOf(t,h)||(c.hide(),e.stopPropagation(),e.preventDefault())}),this.eventListeners.keydown=n.addEventListener(window,"keydown",function(e){c._onKeyDown(e)}),this.selection=n.getSelection(),this.anchor=e,setTimeout(function(){c.dom.focusButton.focus()},0),r.visibleMenu&&r.visibleMenu.hide(),r.visibleMenu=this},r.prototype.hide=function(){for(var e in this.dom.root.parentNode&&(this.dom.root.parentNode.removeChild(this.dom.root),this.onClose&&this.onClose()),this.eventListeners)if(this.eventListeners.hasOwnProperty(e)){var t=this.eventListeners[e];t&&n.removeEventListener(window,e,t),delete this.eventListeners[e]}r.visibleMenu==this&&(r.visibleMenu=void 0)},r.prototype._onExpandItem=function(e){var t=this,i=e==this.expandedItem,r=this.expandedItem;if(r&&(r.ul.style.height="0",r.ul.style.padding="",setTimeout(function(){t.expandedItem!=r&&(r.ul.style.display="",n.removeClassName(r.ul.parentNode,"jsoneditor-selected"))},300),this.expandedItem=void 0),!i){var o=e.ul;o.style.display="block";o.clientHeight;setTimeout(function(){t.expandedItem==e&&(o.style.height=24*o.childNodes.length+"px",o.style.padding="5px 10px")},0),n.addClassName(o.parentNode,"jsoneditor-selected"),this.expandedItem=e}},r.prototype._onKeyDown=function(e){var t,i,r,o,s=e.target,a=e.which,l=!1;27==a?(this.selection&&n.setSelection(this.selection),this.anchor&&this.anchor.focus(),this.hide(),l=!0):9==a?e.shiftKey?0==(i=(t=this._getVisibleButtons()).indexOf(s))&&(t[t.length-1].focus(),l=!0):(i=(t=this._getVisibleButtons()).indexOf(s))==t.length-1&&(t[0].focus(),l=!0):37==a?("jsoneditor-expand"==s.className&&(r=(t=this._getVisibleButtons())[(i=t.indexOf(s))-1])&&r.focus(),l=!0):38==a?((r=(t=this._getVisibleButtons())[(i=t.indexOf(s))-1])&&"jsoneditor-expand"==r.className&&(r=t[i-2]),r||(r=t[t.length-1]),r&&r.focus(),l=!0):39==a?((o=(t=this._getVisibleButtons())[(i=t.indexOf(s))+1])&&"jsoneditor-expand"==o.className&&o.focus(),l=!0):40==a&&((o=(t=this._getVisibleButtons())[(i=t.indexOf(s))+1])&&"jsoneditor-expand"==o.className&&(o=t[i+2]),o||(o=t[0]),o&&(o.focus(),l=!0),l=!0),l&&(e.stopPropagation(),e.preventDefault())},r.prototype._isChildOf=function(e,t){for(var i=e.parentNode;i;){if(i==t)return!0;i=i.parentNode}return!1},e.exports=r},function(e,t,i){"use strict";var n=i(59),r=i(57),o=i(60),s=i(54);function a(e,t){this.editor=e,this.dom={},this.expanded=!1,t&&t instanceof Object?(this.setField(t.field,t.fieldEditable),this.setValue(t.value,t.type)):(this.setField(""),this.setValue(null)),this._debouncedOnChangeValue=s.debounce(this._onChangeValue.bind(this),a.prototype.DEBOUNCE_INTERVAL),this._debouncedOnChangeField=s.debounce(this._onChangeField.bind(this),a.prototype.DEBOUNCE_INTERVAL)}a.prototype.DEBOUNCE_INTERVAL=150,a.prototype._updateEditability=function(){if(this.editable={field:!0,value:!0},this.editor&&(this.editable.field="tree"===this.editor.options.mode,this.editable.value="view"!==this.editor.options.mode,("tree"===this.editor.options.mode||"form"===this.editor.options.mode)&&"function"==typeof this.editor.options.onEditable)){var e=this.editor.options.onEditable({field:this.field,value:this.value,path:this.getPath()});"boolean"==typeof e?(this.editable.field=e,this.editable.value=e):("boolean"==typeof e.field&&(this.editable.field=e.field),"boolean"==typeof e.value&&(this.editable.value=e.value))}},a.prototype.getPath=function(){for(var e=this,t=[];e;){var i=e.parent?"array"!=e.parent.type?e.field:e.index:void 0;void 0!==i&&t.unshift(i),e=e.parent}return t},a.prototype.findNode=function(e){for(var t=s.parsePath(e),i=this;i&&t.length>0;){var n=t.shift();if("number"==typeof n){if("array"!==i.type)throw new Error("Cannot get child node at index "+n+": node is no array");i=i.childs[n]}else{if("object"!==i.type)throw new Error("Cannot get child node "+n+": node is no object");i=i.childs.filter(function(e){return e.field===n})[0]}}return i},a.prototype.findParents=function(){for(var e=[],t=this.parent;t;)e.unshift(t),t=t.parent;return e},a.prototype.setError=function(e,t){this.getDom(),this.error=e;var i=this.dom.tdError;if(e){i||(i=document.createElement("td"),this.dom.tdError=i,this.dom.tdValue.parentNode.appendChild(i));var n=document.createElement("div");n.className="jsoneditor-popover jsoneditor-right",n.appendChild(document.createTextNode(e.message));var r=document.createElement("button");for(r.type="button",r.className="jsoneditor-schema-error",r.appendChild(n),r.onmouseover=r.onfocus=function(){for(var e=["right","above","below","left"],t=0;t<e.length;t++){var i=e[t];n.className="jsoneditor-popover jsoneditor-"+i;var r=this.editor.content.getBoundingClientRect(),o=n.getBoundingClientRect();if(s.insideRect(r,o,20))break}}.bind(this),t&&(r.onclick=function(){t.findParents().forEach(function(e){e.expand(!1)}),t.scrollTo(function(){t.focus()})});i.firstChild;)i.removeChild(i.firstChild);i.appendChild(r)}else i&&(this.dom.tdError.parentNode.removeChild(this.dom.tdError),delete this.dom.tdError)},a.prototype.getIndex=function(){return this.parent?this.parent.childs.indexOf(this):-1},a.prototype.setParent=function(e){this.parent=e},a.prototype.setField=function(e,t){this.field=e,this.previousField=e,this.fieldEditable=!0===t},a.prototype.getField=function(){return void 0===this.field&&this._getDomField(),this.field},a.prototype.setValue=function(e,t){var i,n,r=this.childs;if(r)for(;r.length;)this.removeChild(r[0]);if(this.type=this._getType(e),t&&t!=this.type){if("string"!=t||"auto"!=this.type)throw new Error('Type mismatch: cannot cast value of type "'+this.type+' to the specified type "'+t+'"');this.type=t}if("array"==this.type){this.childs=[];for(var o=0,s=e.length;o<s;o++)void 0===(i=e[o])||i instanceof Function||(n=new a(this.editor,{value:i}),this.appendChild(n));this.value=""}else if("object"==this.type){for(var l in this.childs=[],e)e.hasOwnProperty(l)&&(void 0===(i=e[l])||i instanceof Function||(n=new a(this.editor,{field:l,value:i}),this.appendChild(n)));this.value="",!0===this.editor.options.sortObjectKeys&&this.sort("asc")}else this.childs=void 0,this.value=e;this.previousValue=this.value},a.prototype.getValue=function(){if("array"==this.type){var e=[];return this.childs.forEach(function(t){e.push(t.getValue())}),e}if("object"==this.type){var t={};return this.childs.forEach(function(e){t[e.getField()]=e.getValue()}),t}return void 0===this.value&&this._getDomValue(),this.value},a.prototype.getLevel=function(){return this.parent?this.parent.getLevel()+1:0},a.prototype.getNodePath=function(){var e=this.parent?this.parent.getNodePath():[];return e.push(this),e},a.prototype.clone=function(){var e=new a(this.editor);if(e.type=this.type,e.field=this.field,e.fieldInnerText=this.fieldInnerText,e.fieldEditable=this.fieldEditable,e.value=this.value,e.valueInnerText=this.valueInnerText,e.expanded=this.expanded,this.childs){var t=[];this.childs.forEach(function(i){var n=i.clone();n.setParent(e),t.push(n)}),e.childs=t}else e.childs=void 0;return e},a.prototype.expand=function(e){this.childs&&(this.expanded=!0,this.dom.expand&&(this.dom.expand.className="jsoneditor-expanded"),this.showChilds(),!1!==e&&this.childs.forEach(function(t){t.expand(e)}))},a.prototype.collapse=function(e){this.childs&&(this.hideChilds(),!1!==e&&this.childs.forEach(function(t){t.collapse(e)}),this.dom.expand&&(this.dom.expand.className="jsoneditor-collapsed"),this.expanded=!1)},a.prototype.showChilds=function(){if(this.childs&&this.expanded){var e=this.dom.tr,t=e?e.parentNode:void 0;if(t){var i=this.getAppend(),n=e.nextSibling;n?t.insertBefore(i,n):t.appendChild(i),this.childs.forEach(function(e){t.insertBefore(e.getDom(),i),e.showChilds()})}}},a.prototype.hide=function(){var e=this.dom.tr,t=e?e.parentNode:void 0;t&&t.removeChild(e),this.hideChilds()},a.prototype.hideChilds=function(){if(this.childs&&this.expanded){var e=this.getAppend();e.parentNode&&e.parentNode.removeChild(e),this.childs.forEach(function(e){e.hide()})}},a.prototype.appendChild=function(e){if(this._hasChilds()){if(e.setParent(this),e.fieldEditable="object"==this.type,"array"==this.type&&(e.index=this.childs.length),this.childs.push(e),this.expanded){var t=e.getDom(),i=this.getAppend(),n=i?i.parentNode:void 0;i&&n&&n.insertBefore(t,i),e.showChilds()}this.updateDom({updateIndexes:!0}),e.updateDom({recurse:!0})}},a.prototype.moveBefore=function(e,t){if(this._hasChilds()){var i=this.dom.tr?this.dom.tr.parentNode:void 0;if(i){var n=document.createElement("tr");n.style.height=i.clientHeight+"px",i.appendChild(n)}e.parent&&e.parent.removeChild(e),t instanceof l?this.appendChild(e):this.insertBefore(e,t),i&&i.removeChild(n)}},a.prototype.moveTo=function(e,t){e.parent==this&&(this.childs.indexOf(e)<t&&t++);var i=this.childs[t]||this.append;this.moveBefore(e,i)},a.prototype.insertBefore=function(e,t){if(this._hasChilds()){if(t==this.append)e.setParent(this),e.fieldEditable="object"==this.type,this.childs.push(e);else{var i=this.childs.indexOf(t);if(-1==i)throw new Error("Node not found");e.setParent(this),e.fieldEditable="object"==this.type,this.childs.splice(i,0,e)}if(this.expanded){var n=e.getDom(),r=t.getDom(),o=r?r.parentNode:void 0;r&&o&&o.insertBefore(n,r),e.showChilds()}this.updateDom({updateIndexes:!0}),e.updateDom({recurse:!0})}},a.prototype.insertAfter=function(e,t){if(this._hasChilds()){var i=this.childs.indexOf(t),n=this.childs[i+1];n?this.insertBefore(e,n):this.appendChild(e)}},a.prototype.search=function(e){var t=[],i=e?e.toLowerCase():void 0;(delete this.searchField,delete this.searchValue,void 0!=this.field)&&(-1!=String(this.field).toLowerCase().indexOf(i)&&(this.searchField=!0,t.push({node:this,elem:"field"})),this._updateDomField());if(this._hasChilds()){if(this.childs){var n=[];this.childs.forEach(function(t){n=n.concat(t.search(e))}),t=t.concat(n)}if(void 0!=i){0==n.length?this.collapse(!1):this.expand(!1)}}else{if(void 0!=this.value)-1!=String(this.value).toLowerCase().indexOf(i)&&(this.searchValue=!0,t.push({node:this,elem:"value"}));this._updateDomValue()}return t},a.prototype.scrollTo=function(e){if(!this.dom.tr||!this.dom.tr.parentNode)for(var t=this.parent;t;)t.expand(!1),t=t.parent;this.dom.tr&&this.dom.tr.parentNode&&this.editor.scrollTo(this.dom.tr.offsetTop,e)},a.focusElement=void 0,a.prototype.focus=function(e){if(a.focusElement=e,this.dom.tr&&this.dom.tr.parentNode){var t=this.dom;switch(e){case"drag":t.drag?t.drag.focus():t.menu.focus();break;case"menu":t.menu.focus();break;case"expand":this._hasChilds()?t.expand.focus():t.field&&this.fieldEditable?(t.field.focus(),s.selectContentEditable(t.field)):t.value&&!this._hasChilds()?(t.value.focus(),s.selectContentEditable(t.value)):t.menu.focus();break;case"field":t.field&&this.fieldEditable?(t.field.focus(),s.selectContentEditable(t.field)):t.value&&!this._hasChilds()?(t.value.focus(),s.selectContentEditable(t.value)):this._hasChilds()?t.expand.focus():t.menu.focus();break;case"value":default:t.value&&!this._hasChilds()?(t.value.focus(),s.selectContentEditable(t.value)):t.field&&this.fieldEditable?(t.field.focus(),s.selectContentEditable(t.field)):this._hasChilds()?t.expand.focus():t.menu.focus()}}},a.select=function(e){setTimeout(function(){s.selectContentEditable(e)},0)},a.prototype.blur=function(){this._getDomValue(!1),this._getDomField(!1)},a.prototype.containsNode=function(e){if(this==e)return!0;var t=this.childs;if(t)for(var i=0,n=t.length;i<n;i++)if(t[i].containsNode(e))return!0;return!1},a.prototype._move=function(e,t){if(e!=t){if(e.containsNode(this))throw new Error("Cannot move a field into a child of itself");e.parent&&e.parent.removeChild(e);var i=e.clone();e.clearDom(),t?this.insertBefore(i,t):this.appendChild(i)}},a.prototype.removeChild=function(e){if(this.childs){var t=this.childs.indexOf(e);if(-1!=t){e.hide(),delete e.searchField,delete e.searchValue;var i=this.childs.splice(t,1)[0];return i.parent=null,this.updateDom({updateIndexes:!0}),i}}},a.prototype._remove=function(e){this.removeChild(e)},a.prototype.changeType=function(e){var t=this.type;if(t!=e){if("string"!=e&&"auto"!=e||"string"!=t&&"auto"!=t){var i,n=this.dom.tr?this.dom.tr.parentNode:void 0,r=(i=this.expanded?this.getAppend():this.getDom())&&i.parentNode?i.nextSibling:void 0;this.hide(),this.clearDom(),this.type=e,"object"==e?(this.childs||(this.childs=[]),this.childs.forEach(function(e,t){e.clearDom(),delete e.index,e.fieldEditable=!0,void 0==e.field&&(e.field="")}),"string"!=t&&"auto"!=t||(this.expanded=!0)):"array"==e?(this.childs||(this.childs=[]),this.childs.forEach(function(e,t){e.clearDom(),e.fieldEditable=!1,e.index=t}),"string"!=t&&"auto"!=t||(this.expanded=!0)):this.expanded=!1,n&&(r?n.insertBefore(this.getDom(),r):n.appendChild(this.getDom())),this.showChilds()}else this.type=e;"auto"!=e&&"string"!=e||(this.value="string"==e?String(this.value):this._stringCast(String(this.value)),this.focus()),this.updateDom({updateIndexes:!0})}},a.prototype._getDomValue=function(e){if(this.dom.value&&"array"!=this.type&&"object"!=this.type&&(this.valueInnerText=s.getInnerText(this.dom.value)),void 0!=this.valueInnerText)try{var t;if("string"==this.type)t=this._unescapeHTML(this.valueInnerText);else{var i=this._unescapeHTML(this.valueInnerText);t=this._stringCast(i)}t!==this.value&&(this.value=t,this._debouncedOnChangeValue())}catch(t){if(this.value=void 0,!0!==e)throw t}},a.prototype._onChangeValue=function(){var e=this.editor.getSelection();if(e.range){var t=s.textDiff(String(this.value),String(this.previousValue));e.range.startOffset=t.start,e.range.endOffset=t.end}var i=this.editor.getSelection();if(i.range){var n=s.textDiff(String(this.previousValue),String(this.value));i.range.startOffset=n.start,i.range.endOffset=n.end}this.editor._onAction("editValue",{node:this,oldValue:this.previousValue,newValue:this.value,oldSelection:e,newSelection:i}),this.previousValue=this.value},a.prototype._onChangeField=function(){var e=this.editor.getSelection();if(e.range){var t=s.textDiff(this.field,this.previousField);e.range.startOffset=t.start,e.range.endOffset=t.end}var i=this.editor.getSelection();if(i.range){var n=s.textDiff(this.previousField,this.field);i.range.startOffset=n.start,i.range.endOffset=n.end}this.editor._onAction("editField",{node:this,oldValue:this.previousField,newValue:this.field,oldSelection:e,newSelection:i}),this.previousField=this.field},a.prototype._updateDomValue=function(){var e=this.dom.value;if(e){var t=["jsoneditor-value"],i=this.value,n="auto"==this.type?s.type(i):this.type,r="string"==n&&s.isUrl(i);if(t.push("jsoneditor-"+n),r&&t.push("jsoneditor-url"),""==String(this.value)&&"array"!=this.type&&"object"!=this.type&&t.push("jsoneditor-empty"),this.searchValueActive&&t.push("jsoneditor-highlight-active"),this.searchValue&&t.push("jsoneditor-highlight"),e.className=t.join(" "),"array"==n||"object"==n){var o=this.childs?this.childs.length:0;e.title=this.type+" containing "+o+" items"}else r&&this.editable.value?e.title="Ctrl+Click or Ctrl+Enter to open url in new window":e.title="";if("boolean"===n&&this.editable.value?(this.dom.checkbox||(this.dom.checkbox=document.createElement("input"),this.dom.checkbox.type="checkbox",this.dom.tdCheckbox=document.createElement("td"),this.dom.tdCheckbox.className="jsoneditor-tree",this.dom.tdCheckbox.appendChild(this.dom.checkbox),this.dom.tdValue.parentNode.insertBefore(this.dom.tdCheckbox,this.dom.tdValue)),this.dom.checkbox.checked=this.value):this.dom.tdCheckbox&&(this.dom.tdCheckbox.parentNode.removeChild(this.dom.tdCheckbox),delete this.dom.tdCheckbox,delete this.dom.checkbox),this.enum&&this.editable.value){if(!this.dom.select){this.dom.select=document.createElement("select"),this.id=this.field+"_"+(new Date).getUTCMilliseconds(),this.dom.select.id=this.id,this.dom.select.name=this.dom.select.id,this.dom.select.option=document.createElement("option"),this.dom.select.option.value="",this.dom.select.option.innerHTML="--",this.dom.select.appendChild(this.dom.select.option);for(var a=0;a<this.enum.length;a++)this.dom.select.option=document.createElement("option"),this.dom.select.option.value=this.enum[a],this.dom.select.option.innerHTML=this.enum[a],this.dom.select.option.value==this.value&&(this.dom.select.option.selected=!0),this.dom.select.appendChild(this.dom.select.option);this.dom.tdSelect=document.createElement("td"),this.dom.tdSelect.className="jsoneditor-tree",this.dom.tdSelect.appendChild(this.dom.select),this.dom.tdValue.parentNode.insertBefore(this.dom.tdSelect,this.dom.tdValue)}!this.schema||this.schema.hasOwnProperty("oneOf")||this.schema.hasOwnProperty("anyOf")||this.schema.hasOwnProperty("allOf")?delete this.valueFieldHTML:(this.valueFieldHTML=this.dom.tdValue.innerHTML,this.dom.tdValue.style.visibility="hidden",this.dom.tdValue.innerHTML="")}else this.dom.tdSelect&&(this.dom.tdSelect.parentNode.removeChild(this.dom.tdSelect),delete this.dom.tdSelect,delete this.dom.select,this.dom.tdValue.innerHTML=this.valueFieldHTML,this.dom.tdValue.style.visibility="",delete this.valueFieldHTML);s.stripFormatting(e)}},a.prototype._updateDomField=function(){var e=this.dom.field;e&&(""==String(this.field)&&"array"!=this.parent.type?s.addClassName(e,"jsoneditor-empty"):s.removeClassName(e,"jsoneditor-empty"),this.searchFieldActive?s.addClassName(e,"jsoneditor-highlight-active"):s.removeClassName(e,"jsoneditor-highlight-active"),this.searchField?s.addClassName(e,"jsoneditor-highlight"):s.removeClassName(e,"jsoneditor-highlight"),s.stripFormatting(e))},a.prototype._getDomField=function(e){if(this.dom.field&&this.fieldEditable&&(this.fieldInnerText=s.getInnerText(this.dom.field)),void 0!=this.fieldInnerText)try{var t=this._unescapeHTML(this.fieldInnerText);t!==this.field&&(this.field=t,this._debouncedOnChangeField())}catch(t){if(this.field=void 0,!0!==e)throw t}},a.prototype.validate=function(){var e=[];if("object"===this.type){for(var t={},i=[],n=0;n<this.childs.length;n++){var r=this.childs[n];t.hasOwnProperty(r.field)&&i.push(r.field),t[r.field]=!0}i.length>0&&(e=this.childs.filter(function(e){return-1!==i.indexOf(e.field)}).map(function(e){return{node:e,error:{message:'duplicate key "'+e.field+'"'}}}))}if(this.childs)for(n=0;n<this.childs.length;n++){var o=this.childs[n].validate();o.length>0&&(e=e.concat(o))}return e},a.prototype.clearDom=function(){this.dom={}},a.prototype.getDom=function(){var e=this.dom;if(e.tr)return e.tr;if(this._updateEditability(),e.tr=document.createElement("tr"),e.tr.node=this,"tree"===this.editor.options.mode){var t=document.createElement("td");if(this.editable.field&&this.parent){var i=document.createElement("button");i.type="button",e.drag=i,i.className="jsoneditor-dragarea",i.title="Drag to move this field (Alt+Shift+Arrows)",t.appendChild(i)}e.tr.appendChild(t);var n=document.createElement("td"),r=document.createElement("button");r.type="button",e.menu=r,r.className="jsoneditor-contextmenu",r.title="Click to open the actions menu (Ctrl+M)",n.appendChild(e.menu),e.tr.appendChild(n)}var o=document.createElement("td");return e.tr.appendChild(o),e.tree=this._createDomTree(),o.appendChild(e.tree),this.updateDom({updateIndexes:!0}),e.tr},a.onDragStart=function(e,t){if(!Array.isArray(e))return a.onDragStart([e],t);if(0!==e.length){var i=e[0],n=e[e.length-1],r=a.getNodeFromTarget(t.target),o=n._nextSibling(),l=i.editor,c=s.getAbsoluteTop(r.dom.tr)-s.getAbsoluteTop(i.dom.tr);l.mousemove||(l.mousemove=s.addEventListener(window,"mousemove",function(t){a.onDrag(e,t)})),l.mouseup||(l.mouseup=s.addEventListener(window,"mouseup",function(t){a.onDragEnd(e,t)})),l.highlighter.lock(),l.drag={oldCursor:document.body.style.cursor,oldSelection:l.getSelection(),oldBeforeNode:o,mouseX:t.pageX,offsetY:c,level:i.getLevel()},document.body.style.cursor="move",t.preventDefault()}},a.onDrag=function(e,t){if(!Array.isArray(e))return a.onDrag([e],t);if(0!==e.length){var i,n,r,o,c,h,u,d,f,p,m,g,v,y,w=e[0].editor,b=t.pageY-w.drag.offsetY,C=t.pageX,A=!1,E=e[0];if(i=E.dom.tr,f=s.getAbsoluteTop(i),g=i.offsetHeight,b<f){n=i;do{n=n.previousSibling,u=a.getNodeFromTarget(n),p=n?s.getAbsoluteTop(n):0}while(n&&b<p);u&&!u.parent&&(u=void 0),u||(n=(h=i.parentNode.firstChild)?h.nextSibling:void 0,(u=a.getNodeFromTarget(n))==E&&(u=void 0)),u&&b>(p=(n=u.dom.tr)?s.getAbsoluteTop(n):0)+g&&(u=void 0),u&&(e.forEach(function(e){u.parent.moveBefore(e,u)}),A=!0)}else{var x=e[e.length-1];if(o=(c=x.expanded&&x.append?x.append.getDom():x.dom.tr)?c.nextSibling:void 0){m=s.getAbsoluteTop(o),r=o;do{d=a.getNodeFromTarget(r),r&&(v=r.nextSibling?s.getAbsoluteTop(r.nextSibling):0,y=r?v-m:0,d.parent.childs.length==e.length&&d.parent.childs[e.length-1]==x&&(f+=27)),r=r.nextSibling}while(r&&b>f+y);if(d&&d.parent){var F=C-w.drag.mouseX,S=Math.round(F/24/2),k=w.drag.level+S,_=d.getLevel();for(n=d.dom.tr.previousSibling;_<k&&n;){if(u=a.getNodeFromTarget(n),e.some(function(e){return e===u||u._isChildOf(e)}));else{if(!(u instanceof l))break;var D=u.parent.childs;if(D.length==e.length&&D[e.length-1]==x)break;_=(d=a.getNodeFromTarget(n)).getLevel()}n=n.previousSibling}c.nextSibling!=d.dom.tr&&(e.forEach(function(e){d.parent.moveBefore(e,d)}),A=!0)}}}A&&(w.drag.mouseX=C,w.drag.level=E.getLevel()),w.startAutoScroll(b),t.preventDefault()}},a.onDragEnd=function(e,t){if(!Array.isArray(e))return a.onDrag([e],t);if(0!==e.length){var i=e[0],n=i.editor,r=i.parent,o=r.childs.indexOf(i),l=r.childs[o+e.length]||r.append;e[0]&&e[0].dom.menu.focus();var c={nodes:e,oldSelection:n.drag.oldSelection,newSelection:n.getSelection(),oldBeforeNode:n.drag.oldBeforeNode,newBeforeNode:l};c.oldBeforeNode!=c.newBeforeNode&&n._onAction("moveNodes",c),document.body.style.cursor=n.drag.oldCursor,n.highlighter.unlock(),e.forEach(function(e){t.target!==e.dom.drag&&t.target!==e.dom.menu&&n.highlighter.unhighlight()}),delete n.drag,n.mousemove&&(s.removeEventListener(window,"mousemove",n.mousemove),delete n.mousemove),n.mouseup&&(s.removeEventListener(window,"mouseup",n.mouseup),delete n.mouseup),n.stopAutoScroll(),t.preventDefault()}},a.prototype._isChildOf=function(e){for(var t=this.parent;t;){if(t==e)return!0;t=t.parent}return!1},a.prototype._createDomField=function(){return document.createElement("div")},a.prototype.setHighlight=function(e){this.dom.tr&&(e?s.addClassName(this.dom.tr,"jsoneditor-highlight"):s.removeClassName(this.dom.tr,"jsoneditor-highlight"),this.append&&this.append.setHighlight(e),this.childs&&this.childs.forEach(function(t){t.setHighlight(e)}))},a.prototype.setSelected=function(e,t){this.selected=e,this.dom.tr&&(e?s.addClassName(this.dom.tr,"jsoneditor-selected"):s.removeClassName(this.dom.tr,"jsoneditor-selected"),t?s.addClassName(this.dom.tr,"jsoneditor-first"):s.removeClassName(this.dom.tr,"jsoneditor-first"),this.append&&this.append.setSelected(e),this.childs&&this.childs.forEach(function(t){t.setSelected(e)}))},a.prototype.updateValue=function(e){this.value=e,this.updateDom()},a.prototype.updateField=function(e){this.field=e,this.updateDom()},a.prototype.updateDom=function(e){var t=this.dom.tree;t&&(t.style.marginLeft=24*this.getLevel()+"px");var i,n=this.dom.field;n&&(this.fieldEditable?(n.contentEditable=this.editable.field,n.spellcheck=!1,n.className="jsoneditor-field"):n.className="jsoneditor-readonly",i=void 0!=this.index?this.index:void 0!=this.field?this.field:this._hasChilds()?this.type:"",n.innerHTML=this._escapeHTML(i),this._updateSchema());var r=this.dom.value;if(r){var o=this.childs?this.childs.length:0;"array"==this.type?(r.innerHTML="["+o+"]",s.addClassName(this.dom.tr,"jsoneditor-expandable")):"object"==this.type?(r.innerHTML="{"+o+"}",s.addClassName(this.dom.tr,"jsoneditor-expandable")):(r.innerHTML=this._escapeHTML(this.value),s.removeClassName(this.dom.tr,"jsoneditor-expandable"))}this._updateDomField(),this._updateDomValue(),e&&!0===e.updateIndexes&&this._updateDomIndexes(),e&&!0===e.recurse&&this.childs&&this.childs.forEach(function(t){t.updateDom(e)}),this.append&&this.append.updateDom()},a.prototype._updateSchema=function(){this.editor&&this.editor.options&&(this.schema=a._findSchema(this.editor.options.schema,this.getPath()),this.schema?this.enum=a._findEnum(this.schema):delete this.enum)},a._findEnum=function(e){if(e.enum)return e.enum;var t=e.oneOf||e.anyOf||e.allOf;if(t){var i=t.filter(function(e){return e.enum});if(i.length>0)return i[0].enum}return null},a._findSchema=function(e,t){for(var i=e,n=0;n<t.length&&i;n++){var r=t[n];"string"==typeof r&&i.properties?i=i.properties[r]||null:"number"==typeof r&&i.items&&(i=i.items)}return i},a.prototype._updateDomIndexes=function(){var e=this.dom.value,t=this.childs;e&&t&&("array"==this.type?t.forEach(function(e,t){e.index=t;var i=e.dom.field;i&&(i.innerHTML=t)}):"object"==this.type&&t.forEach(function(e){void 0!=e.index&&(delete e.index,void 0==e.field&&(e.field=""))}))},a.prototype._createDomValue=function(){var e;return"array"==this.type?(e=document.createElement("div")).innerHTML="[...]":"object"==this.type?(e=document.createElement("div")).innerHTML="{...}":!this.editable.value&&s.isUrl(this.value)?((e=document.createElement("a")).href=this.value,e.target="_blank",e.innerHTML=this._escapeHTML(this.value)):((e=document.createElement("div")).contentEditable=this.editable.value,e.spellcheck=!1,e.innerHTML=this._escapeHTML(this.value)),e},a.prototype._createDomExpandButton=function(){var e=document.createElement("button");return e.type="button",this._hasChilds()?(e.className=this.expanded?"jsoneditor-expanded":"jsoneditor-collapsed",e.title="Click to expand/collapse this field (Ctrl+E). \nCtrl+Click to expand/collapse including all childs."):(e.className="jsoneditor-invisible",e.title=""),e},a.prototype._createDomTree=function(){var e=this.dom,t=document.createElement("table"),i=document.createElement("tbody");t.style.borderCollapse="collapse",t.className="jsoneditor-values",t.appendChild(i);var n=document.createElement("tr");i.appendChild(n);var r=document.createElement("td");r.className="jsoneditor-tree",n.appendChild(r),e.expand=this._createDomExpandButton(),r.appendChild(e.expand),e.tdExpand=r;var o=document.createElement("td");o.className="jsoneditor-tree",n.appendChild(o),e.field=this._createDomField(),o.appendChild(e.field),e.tdField=o;var s=document.createElement("td");s.className="jsoneditor-tree",n.appendChild(s),"object"!=this.type&&"array"!=this.type&&(s.appendChild(document.createTextNode(":")),s.className="jsoneditor-separator"),e.tdSeparator=s;var a=document.createElement("td");return a.className="jsoneditor-tree",n.appendChild(a),e.value=this._createDomValue(),a.appendChild(e.value),e.tdValue=a,t},a.prototype.onEvent=function(e){var t=e.type,i=e.target||e.srcElement,n=this.dom,r=this,o=this._hasChilds();if(i!=n.drag&&i!=n.menu||("mouseover"==t?this.editor.highlighter.highlight(this):"mouseout"==t&&this.editor.highlighter.unhighlight()),"click"==t&&i==n.menu){var a=r.editor.highlighter;a.highlight(r),a.lock(),s.addClassName(n.menu,"jsoneditor-selected"),this.showContextMenu(n.menu,function(){s.removeClassName(n.menu,"jsoneditor-selected"),a.unlock(),a.unhighlight()})}if("click"==t&&(i==n.expand||("view"===r.editor.options.mode||"form"===r.editor.options.mode)&&"DIV"===i.nodeName)&&o){var l=e.ctrlKey;this._onExpand(l)}"change"==t&&i==n.checkbox&&(this.dom.value.innerHTML=!this.value,this._getDomValue()),"change"==t&&i==n.select&&(this.dom.value.innerHTML=n.select.value,this._getDomValue(),this._updateDomValue());var c=n.value;if(i==c)switch(t){case"blur":case"change":this._getDomValue(!0),this._updateDomValue(),this.value&&(c.innerHTML=this._escapeHTML(this.value));break;case"input":this._getDomValue(!0),this._updateDomValue();break;case"keydown":case"mousedown":this.editor.selection=this.editor.getSelection();break;case"click":!e.ctrlKey&&this.editable.value||s.isUrl(this.value)&&window.open(this.value,"_blank");break;case"keyup":this._getDomValue(!0),this._updateDomValue();break;case"cut":case"paste":setTimeout(function(){r._getDomValue(!0),r._updateDomValue()},1)}var h=n.field;if(i==h)switch(t){case"blur":case"change":this._getDomField(!0),this._updateDomField(),this.field&&(h.innerHTML=this._escapeHTML(this.field));break;case"input":this._getDomField(!0),this._updateSchema(),this._updateDomField(),this._updateDomValue();break;case"keydown":case"mousedown":this.editor.selection=this.editor.getSelection();break;case"keyup":this._getDomField(!0),this._updateDomField();break;case"cut":case"paste":setTimeout(function(){r._getDomField(!0),r._updateDomField()},1)}i!=n.tree.parentNode||"click"!=t||e.hasMoved||((void 0!=e.offsetX?e.offsetX<24*(this.getLevel()+1):e.pageX<s.getAbsoluteLeft(n.tdSeparator))||o?h&&(s.setEndOfContentEditable(h),h.focus()):c&&!this.enum&&(s.setEndOfContentEditable(c),c.focus()));(i!=n.tdExpand||o)&&i!=n.tdField&&i!=n.tdSeparator||"click"!=t||e.hasMoved||h&&(s.setEndOfContentEditable(h),h.focus()),"keydown"==t&&this.onKeyDown(e)},a.prototype.onKeyDown=function(e){var t,i,n,r,o,c,h,u,d=e.which||e.keyCode,f=e.target||e.srcElement,p=e.ctrlKey,m=e.shiftKey,g=e.altKey,v=!1,y="tree"===this.editor.options.mode,w=this.editor.multiselection.nodes.length>0?this.editor.multiselection.nodes:[this],b=w[0],C=w[w.length-1];if(13==d){if(f==this.dom.value)this.editable.value&&!e.ctrlKey||s.isUrl(this.value)&&(window.open(this.value,"_blank"),v=!0);else if(f==this.dom.expand){if(this._hasChilds()){var A=e.ctrlKey;this._onExpand(A),f.focus(),v=!0}}}else if(68==d)p&&y&&(a.onDuplicate(w),v=!0);else if(69==d)p&&(this._onExpand(m),f.focus(),v=!0);else if(77==d&&y)p&&(this.showContextMenu(f),v=!0);else if(46==d&&y)p&&(a.onRemove(w),v=!0);else if(45==d&&y)p&&!m?(this._onInsertBefore(),v=!0):p&&m&&(this._onInsertAfter(),v=!0);else if(35==d){if(g){var E=this._lastNode();E&&E.focus(a.focusElement||this._getElementName(f)),v=!0}}else if(36==d){if(g){var x=this._firstNode();x&&x.focus(a.focusElement||this._getElementName(f)),v=!0}}else if(37==d){if(g&&!m){var F=this._previousElement(f);F&&this.focus(this._getElementName(F)),v=!0}else if(g&&m&&y){if(C.expanded){var S=C.getAppend();n=S?S.nextSibling:void 0}else{var k=C.getDom();n=k.nextSibling}n&&(i=a.getNodeFromTarget(n),r=n.nextSibling,$=a.getNodeFromTarget(r),i&&i instanceof l&&1!=C.parent.childs.length&&$&&$.parent&&(o=this.editor.getSelection(),c=C._nextSibling(),w.forEach(function(e){$.parent.moveBefore(e,$)}),this.focus(a.focusElement||this._getElementName(f)),this.editor._onAction("moveNodes",{nodes:w,oldBeforeNode:c,newBeforeNode:$,oldSelection:o,newSelection:this.editor.getSelection()})))}}else if(38==d)g&&!m?((t=this._previousNode())&&(this.editor.deselect(!0),t.focus(a.focusElement||this._getElementName(f))),v=!0):!g&&p&&m&&y?((t=this._previousNode())&&((u=this.editor.multiselection).start=u.start||this,u.end=t,h=this.editor._findTopLevelNodes(u.start,u.end),this.editor.select(h),t.focus("field")),v=!0):g&&m&&y&&((t=b._previousNode())&&t.parent&&(o=this.editor.getSelection(),c=C._nextSibling(),w.forEach(function(e){t.parent.moveBefore(e,t)}),this.focus(a.focusElement||this._getElementName(f)),this.editor._onAction("moveNodes",{nodes:w,oldBeforeNode:c,newBeforeNode:t,oldSelection:o,newSelection:this.editor.getSelection()})),v=!0);else if(39==d){if(g&&!m){var _=this._nextElement(f);_&&this.focus(this._getElementName(_)),v=!0}else if(g&&m&&y){var D=(k=b.getDom()).previousSibling;D&&(t=a.getNodeFromTarget(D))&&t.parent&&t instanceof l&&!t.isVisible()&&(o=this.editor.getSelection(),c=C._nextSibling(),w.forEach(function(e){t.parent.moveBefore(e,t)}),this.focus(a.focusElement||this._getElementName(f)),this.editor._onAction("moveNodes",{nodes:w,oldBeforeNode:c,newBeforeNode:t,oldSelection:o,newSelection:this.editor.getSelection()}))}}else if(40==d)if(g&&!m)(i=this._nextNode())&&(this.editor.deselect(!0),i.focus(a.focusElement||this._getElementName(f))),v=!0;else if(!g&&p&&m&&y)(i=this._nextNode())&&((u=this.editor.multiselection).start=u.start||this,u.end=i,h=this.editor._findTopLevelNodes(u.start,u.end),this.editor.select(h),i.focus("field")),v=!0;else if(g&&m&&y){var $=(i=C.expanded?C.append?C.append._nextNode():void 0:C._nextNode())&&(i._nextNode()||i.parent.append);$&&$.parent&&(o=this.editor.getSelection(),c=C._nextSibling(),w.forEach(function(e){$.parent.moveBefore(e,$)}),this.focus(a.focusElement||this._getElementName(f)),this.editor._onAction("moveNodes",{nodes:w,oldBeforeNode:c,newBeforeNode:$,oldSelection:o,newSelection:this.editor.getSelection()})),v=!0}v&&(e.preventDefault(),e.stopPropagation())},a.prototype._onExpand=function(e){if(e){var t=this.dom.tr.parentNode,i=t.parentNode,n=i.scrollTop;i.removeChild(t)}this.expanded?this.collapse(e):this.expand(e),e&&(i.appendChild(t),i.scrollTop=n)},a.onRemove=function(e){if(!Array.isArray(e))return a.onRemove([e]);if(e&&e.length>0){var t=e[0],i=t.parent,n=t.editor,r=t.getIndex();n.highlighter.unhighlight();var o=n.getSelection();a.blurNodes(e);var s=n.getSelection();e.forEach(function(e){e.parent._remove(e)}),n._onAction("removeNodes",{nodes:e.slice(0),parent:i,index:r,oldSelection:o,newSelection:s})}},a.onDuplicate=function(e){if(!Array.isArray(e))return a.onDuplicate([e]);if(e&&e.length>0){var t=e[e.length-1],i=t.parent,n=t.editor;n.deselect(n.multiselection.nodes);var r=n.getSelection(),o=t,s=e.map(function(e){var t=e.clone();return i.insertAfter(t,o),o=t,t});1===e.length?s[0].focus():n.select(s);var l=n.getSelection();n._onAction("duplicateNodes",{afterNode:t,nodes:s,parent:i,oldSelection:r,newSelection:l})}},a.prototype._onInsertBefore=function(e,t,i){var n=this.editor.getSelection(),r=new a(this.editor,{field:void 0!=e?e:"",value:void 0!=t?t:"",type:i});r.expand(!0),this.parent.insertBefore(r,this),this.editor.highlighter.unhighlight(),r.focus("field");var o=this.editor.getSelection();this.editor._onAction("insertBeforeNodes",{nodes:[r],beforeNode:this,parent:this.parent,oldSelection:n,newSelection:o})},a.prototype._onInsertAfter=function(e,t,i){var n=this.editor.getSelection(),r=new a(this.editor,{field:void 0!=e?e:"",value:void 0!=t?t:"",type:i});r.expand(!0),this.parent.insertAfter(r,this),this.editor.highlighter.unhighlight(),r.focus("field");var o=this.editor.getSelection();this.editor._onAction("insertAfterNodes",{nodes:[r],afterNode:this,parent:this.parent,oldSelection:n,newSelection:o})},a.prototype._onAppend=function(e,t,i){var n=this.editor.getSelection(),r=new a(this.editor,{field:void 0!=e?e:"",value:void 0!=t?t:"",type:i});r.expand(!0),this.parent.appendChild(r),this.editor.highlighter.unhighlight(),r.focus("field");var o=this.editor.getSelection();this.editor._onAction("appendNodes",{nodes:[r],parent:this.parent,oldSelection:n,newSelection:o})},a.prototype._onChangeType=function(e){var t=this.type;if(e!=t){var i=this.editor.getSelection();this.changeType(e);var n=this.editor.getSelection();this.editor._onAction("changeType",{node:this,oldType:t,newType:e,oldSelection:i,newSelection:n})}},a.prototype.sort=function(e){if(this._hasChilds()){var t="desc"==e?-1:1,i="array"==this.type?"value":"field";this.hideChilds();var r=this.childs,o=this.sortOrder;this.childs=this.childs.concat(),this.childs.sort(function(e,r){return t*n(e[i],r[i])}),this.sortOrder=1==t?"asc":"desc",this.editor._onAction("sort",{node:this,oldChilds:r,oldSort:o,newChilds:this.childs,newSort:this.sortOrder}),this.showChilds()}},a.prototype.getAppend=function(){return this.append||(this.append=new l(this.editor),this.append.setParent(this)),this.append.getDom()},a.getNodeFromTarget=function(e){for(;e;){if(e.node)return e.node;e=e.parentNode}},a.blurNodes=function(e){if(Array.isArray(e)){var t=e[0],i=t.parent,n=t.getIndex();i.childs[n+e.length]?i.childs[n+e.length].focus():i.childs[n-1]?i.childs[n-1].focus():i.focus()}else a.blurNodes([e])},a.prototype._nextSibling=function(){var e=this.parent.childs.indexOf(this);return this.parent.childs[e+1]||this.parent.append},a.prototype._previousNode=function(){var e=null,t=this.getDom();if(t&&t.parentNode){var i=t;do{i=i.previousSibling,e=a.getNodeFromTarget(i)}while(i&&e instanceof l&&!e.isVisible())}return e},a.prototype._nextNode=function(){var e=null,t=this.getDom();if(t&&t.parentNode){var i=t;do{i=i.nextSibling,e=a.getNodeFromTarget(i)}while(i&&e instanceof l&&!e.isVisible())}return e},a.prototype._firstNode=function(){var e=null,t=this.getDom();if(t&&t.parentNode){var i=t.parentNode.firstChild;e=a.getNodeFromTarget(i)}return e},a.prototype._lastNode=function(){var e=null,t=this.getDom();if(t&&t.parentNode){var i=t.parentNode.lastChild;for(e=a.getNodeFromTarget(i);i&&e instanceof l&&!e.isVisible();)i=i.previousSibling,e=a.getNodeFromTarget(i)}return e},a.prototype._previousElement=function(e){var t=this.dom;switch(e){case t.value:if(this.fieldEditable)return t.field;case t.field:if(this._hasChilds())return t.expand;case t.expand:return t.menu;case t.menu:if(t.drag)return t.drag;default:return null}},a.prototype._nextElement=function(e){var t=this.dom;switch(e){case t.drag:return t.menu;case t.menu:if(this._hasChilds())return t.expand;case t.expand:if(this.fieldEditable)return t.field;case t.field:if(!this._hasChilds())return t.value;default:return null}},a.prototype._getElementName=function(e){var t=this.dom;for(var i in t)if(t.hasOwnProperty(i)&&t[i]==e)return i;return null},a.prototype._hasChilds=function(){return"array"==this.type||"object"==this.type},a.TYPE_TITLES={auto:'Field type "auto". The field type is automatically determined from the value and can be a string, number, boolean, or null.',object:'Field type "object". An object contains an unordered set of key/value pairs.',array:'Field type "array". An array contains an ordered collection of values.',string:'Field type "string". Field type is not determined from the value, but always returned as string.'},a.prototype.showContextMenu=function(e,t){var i=this,n=a.TYPE_TITLES,o=[];if(this.editable.value&&o.push({text:"Type",title:"Change the type of this field",className:"jsoneditor-type-"+this.type,submenu:[{text:"Auto",className:"jsoneditor-type-auto"+("auto"==this.type?" jsoneditor-selected":""),title:n.auto,click:function(){i._onChangeType("auto")}},{text:"Array",className:"jsoneditor-type-array"+("array"==this.type?" jsoneditor-selected":""),title:n.array,click:function(){i._onChangeType("array")}},{text:"Object",className:"jsoneditor-type-object"+("object"==this.type?" jsoneditor-selected":""),title:n.object,click:function(){i._onChangeType("object")}},{text:"String",className:"jsoneditor-type-string"+("string"==this.type?" jsoneditor-selected":""),title:n.string,click:function(){i._onChangeType("string")}}]}),this._hasChilds()){var s="asc"==this.sortOrder?"desc":"asc";o.push({text:"Sort",title:"Sort the childs of this "+this.type,className:"jsoneditor-sort-"+s,click:function(){i.sort(s)},submenu:[{text:"Ascending",className:"jsoneditor-sort-asc",title:"Sort the childs of this "+this.type+" in ascending order",click:function(){i.sort("asc")}},{text:"Descending",className:"jsoneditor-sort-desc",title:"Sort the childs of this "+this.type+" in descending order",click:function(){i.sort("desc")}}]})}if(this.parent&&this.parent._hasChilds()){o.length&&o.push({type:"separator"});var l=i.parent.childs;i==l[l.length-1]&&o.push({text:"Append",title:"Append a new field with type 'auto' after this field (Ctrl+Shift+Ins)",submenuTitle:"Select the type of the field to be appended",className:"jsoneditor-append",click:function(){i._onAppend("","","auto")},submenu:[{text:"Auto",className:"jsoneditor-type-auto",title:n.auto,click:function(){i._onAppend("","","auto")}},{text:"Array",className:"jsoneditor-type-array",title:n.array,click:function(){i._onAppend("",[])}},{text:"Object",className:"jsoneditor-type-object",title:n.object,click:function(){i._onAppend("",{})}},{text:"String",className:"jsoneditor-type-string",title:n.string,click:function(){i._onAppend("","","string")}}]}),o.push({text:"Insert",title:"Insert a new field with type 'auto' before this field (Ctrl+Ins)",submenuTitle:"Select the type of the field to be inserted",className:"jsoneditor-insert",click:function(){i._onInsertBefore("","","auto")},submenu:[{text:"Auto",className:"jsoneditor-type-auto",title:n.auto,click:function(){i._onInsertBefore("","","auto")}},{text:"Array",className:"jsoneditor-type-array",title:n.array,click:function(){i._onInsertBefore("",[])}},{text:"Object",className:"jsoneditor-type-object",title:n.object,click:function(){i._onInsertBefore("",{})}},{text:"String",className:"jsoneditor-type-string",title:n.string,click:function(){i._onInsertBefore("","","string")}}]}),this.editable.field&&(o.push({text:"Duplicate",title:"Duplicate this field (Ctrl+D)",className:"jsoneditor-duplicate",click:function(){a.onDuplicate(i)}}),o.push({text:"Remove",title:"Remove this field (Ctrl+Del)",className:"jsoneditor-remove",click:function(){a.onRemove(i)}}))}new r(o,{close:t}).show(e,this.editor.content)},a.prototype._getType=function(e){return e instanceof Array?"array":e instanceof Object?"object":"string"==typeof e&&"string"!=typeof this._stringCast(e)?"string":"auto"},a.prototype._stringCast=function(e){var t=e.toLowerCase(),i=Number(e),n=parseFloat(e);return""==e?"":"null"==t?null:"true"==t||"false"!=t&&(isNaN(i)||isNaN(n)?e:i)},a.prototype._escapeHTML=function(e){if("string"!=typeof e)return String(e);var t=String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/ /g,"  ").replace(/^ /," ").replace(/ $/," "),i=JSON.stringify(t),n=i.substring(1,i.length-1);return!0===this.editor.options.escapeUnicode&&(n=s.escapeUnicodeChars(n)),n},a.prototype._unescapeHTML=function(e){var t='"'+this._escapeJSON(e)+'"';return s.parse(t).replace(/</g,"<").replace(/>/g,">").replace(/ |\u00A0/g," ").replace(/&/g,"&")},a.prototype._escapeJSON=function(e){for(var t="",i=0;i<e.length;){var n=e.charAt(i);"\n"==n?t+="\\n":"\\"==n?(t+=n,i++,""!==(n=e.charAt(i))&&-1!='"\\/bfnrtu'.indexOf(n)||(t+="\\"),t+=n):t+='"'==n?'\\"':n,i++}return t};var l=o(a);e.exports=a},function(e,t){e.exports=function e(t,i){"use strict";var n,r,o=/(^([+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?)?$|^0x[0-9a-f]+$|\d+)/gi,s=/(^[ ]*|[ ]*$)/g,a=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,l=/^0x[0-9a-f]+$/i,c=/^0/,h=function(t){return e.insensitive&&(""+t).toLowerCase()||""+t},u=h(t).replace(s,"")||"",d=h(i).replace(s,"")||"",f=u.replace(o,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),p=d.replace(o,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),m=parseInt(u.match(l),16)||1!==f.length&&u.match(a)&&Date.parse(u),g=parseInt(d.match(l),16)||m&&d.match(a)&&Date.parse(d)||null;if(g){if(m<g)return-1;if(m>g)return 1}for(var v=0,y=Math.max(f.length,p.length);v<y;v++){if(n=!(f[v]||"").match(c)&&parseFloat(f[v])||f[v]||0,r=!(p[v]||"").match(c)&&parseFloat(p[v])||p[v]||0,isNaN(n)!==isNaN(r))return isNaN(n)?1:-1;if(typeof n!=typeof r&&(n+="",r+=""),n<r)return-1;if(n>r)return 1}return 0}},function(e,t,i){"use strict";var n=i(54),r=i(57);e.exports=function(e){function t(e){this.editor=e,this.dom={}}return t.prototype=new e,t.prototype.getDom=function(){var e=this.dom;if(e.tr)return e.tr;this._updateEditability();var t=document.createElement("tr");if(t.node=this,e.tr=t,"tree"===this.editor.options.mode){e.tdDrag=document.createElement("td");var i=document.createElement("td");e.tdMenu=i;var n=document.createElement("button");n.type="button",n.className="jsoneditor-contextmenu",n.title="Click to open the actions menu (Ctrl+M)",e.menu=n,i.appendChild(e.menu)}var r=document.createElement("td"),o=document.createElement("div");return o.innerHTML="(empty)",o.className="jsoneditor-readonly",r.appendChild(o),e.td=r,e.text=o,this.updateDom(),t},t.prototype.updateDom=function(){var e=this.dom,t=e.td;t&&(t.style.paddingLeft=24*this.getLevel()+26+"px");var i=e.text;i&&(i.innerHTML="(empty "+this.parent.type+")");var n=e.tr;this.isVisible()?e.tr.firstChild||(e.tdDrag&&n.appendChild(e.tdDrag),e.tdMenu&&n.appendChild(e.tdMenu),n.appendChild(t)):e.tr.firstChild&&(e.tdDrag&&n.removeChild(e.tdDrag),e.tdMenu&&n.removeChild(e.tdMenu),n.removeChild(t))},t.prototype.isVisible=function(){return 0==this.parent.childs.length},t.prototype.showContextMenu=function(t,i){var n=this,o=e.TYPE_TITLES,s=[{text:"Append",title:"Append a new field with type 'auto' (Ctrl+Shift+Ins)",submenuTitle:"Select the type of the field to be appended",className:"jsoneditor-insert",click:function(){n._onAppend("","","auto")},submenu:[{text:"Auto",className:"jsoneditor-type-auto",title:o.auto,click:function(){n._onAppend("","","auto")}},{text:"Array",className:"jsoneditor-type-array",title:o.array,click:function(){n._onAppend("",[])}},{text:"Object",className:"jsoneditor-type-object",title:o.object,click:function(){n._onAppend("",{})}},{text:"String",className:"jsoneditor-type-string",title:o.string,click:function(){n._onAppend("","","string")}}]}];new r(s,{close:i}).show(t,this.editor.content)},t.prototype.onEvent=function(e){var t=e.type,i=e.target||e.srcElement,r=this.dom;if(i==r.menu&&("mouseover"==t?this.editor.highlighter.highlight(this.parent):"mouseout"==t&&this.editor.highlighter.unhighlight()),"click"==t&&i==r.menu){var o=this.editor.highlighter;o.highlight(this.parent),o.lock(),n.addClassName(r.menu,"jsoneditor-selected"),this.showContextMenu(r.menu,function(){n.removeClassName(r.menu,"jsoneditor-selected"),o.unlock(),o.unhighlight()})}"keydown"==t&&this.onKeyDown(e)},t}},function(e,t,i){"use strict";var n=i(57);function r(e,t,i,r){for(var o={code:{text:"Code",title:"Switch to code highlighter",click:function(){r("code")}},form:{text:"Form",title:"Switch to form editor",click:function(){r("form")}},text:{text:"Text",title:"Switch to plain text editor",click:function(){r("text")}},tree:{text:"Tree",title:"Switch to tree editor",click:function(){r("tree")}},view:{text:"View",title:"Switch to tree view",click:function(){r("view")}}},s=[],a=0;a<t.length;a++){var l=t[a],c=o[l];if(!c)throw new Error('Unknown mode "'+l+'"');c.className="jsoneditor-type-modes"+(i==l?" jsoneditor-selected":""),s.push(c)}var h=o[i];if(!h)throw new Error('Unknown mode "'+i+'"');var u=h.text,d=document.createElement("button");d.type="button",d.className="jsoneditor-modes jsoneditor-separator",d.innerHTML=u+" ▾",d.title="Switch editor mode",d.onclick=function(){new n(s).show(d)};var f=document.createElement("div");f.className="jsoneditor-modes",f.style.position="relative",f.appendChild(d),e.appendChild(f),this.dom={container:e,box:d,frame:f}}r.prototype.focus=function(){this.dom.box.focus()},r.prototype.destroy=function(){this.dom&&this.dom.frame&&this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame),this.dom=null},e.exports=r},function(e,t,i){"use strict";var n;try{n=i(63)}catch(e){}var r=i(61),o=i(54),s={};s.create=function(e,t){t=t||{},this.options=t,t.indentation?this.indentation=Number(t.indentation):this.indentation=2;var s=t.ace?t.ace:n;this.mode="code"==t.mode?"code":"text","code"==this.mode&&void 0===s&&(this.mode="text",console.warn("Failed to load Ace editor, falling back to plain text mode. Please use a JSONEditor bundle including Ace, or pass Ace as via the configuration option `ace`.")),this.theme=t.theme||"ace/theme/jsoneditor","ace/theme/jsoneditor"===this.theme&&window.ace&&i(70);var a=this;this.container=e,this.dom={},this.aceEditor=void 0,this.textarea=void 0,this.validateSchema=null,this._debouncedValidate=o.debounce(this.validate.bind(this),this.DEBOUNCE_INTERVAL),this.width=e.clientWidth,this.height=e.clientHeight,this.frame=document.createElement("div"),this.frame.className="jsoneditor jsoneditor-mode-"+this.options.mode,this.frame.onclick=function(e){e.preventDefault()},this.frame.onkeydown=function(e){a._onKeyDown(e)},this.menu=document.createElement("div"),this.menu.className="jsoneditor-menu",this.frame.appendChild(this.menu);var l=document.createElement("button");l.type="button",l.className="jsoneditor-format",l.title="Format JSON data, with proper indentation and line feeds (Ctrl+\\)",this.menu.appendChild(l),l.onclick=function(){try{a.format(),a._onChange()}catch(e){a._onError(e)}};var c=document.createElement("button");if(c.type="button",c.className="jsoneditor-compact",c.title="Compact JSON data, remove all whitespaces (Ctrl+Shift+\\)",this.menu.appendChild(c),c.onclick=function(){try{a.compact(),a._onChange()}catch(e){a._onError(e)}},this.options&&this.options.modes&&this.options.modes.length&&(this.modeSwitcher=new r(this.menu,this.options.modes,this.options.mode,function(e){a.setMode(e),a.modeSwitcher.focus()})),this.content=document.createElement("div"),this.content.className="jsoneditor-outer",this.frame.appendChild(this.content),this.container.appendChild(this.frame),"code"==this.mode){this.editorDom=document.createElement("div"),this.editorDom.style.height="100%",this.editorDom.style.width="100%",this.content.appendChild(this.editorDom);var h=s.edit(this.editorDom);h.$blockScrolling=1/0,h.setTheme(this.theme),h.setShowPrintMargin(!1),h.setFontSize(13),h.getSession().setMode("ace/mode/json"),h.getSession().setTabSize(this.indentation),h.getSession().setUseSoftTabs(!0),h.getSession().setUseWrapMode(!0),h.commands.bindKey("Ctrl-L",null),h.commands.bindKey("Command-L",null),this.aceEditor=h,this.hasOwnProperty("editor")||Object.defineProperty(this,"editor",{get:function(){return console.warn('Property "editor" has been renamed to "aceEditor".'),a.aceEditor},set:function(e){console.warn('Property "editor" has been renamed to "aceEditor".'),a.aceEditor=e}});var u=document.createElement("a");u.appendChild(document.createTextNode("powered by ace")),u.href="http://ace.ajax.org",u.target="_blank",u.className="jsoneditor-poweredBy",u.onclick=function(){window.open(u.href,u.target)},this.menu.appendChild(u),h.on("change",this._onChange.bind(this))}else{var d=document.createElement("textarea");d.className="jsoneditor-text",d.spellcheck=!1,this.content.appendChild(d),this.textarea=d,null===this.textarea.oninput?this.textarea.oninput=this._onChange.bind(this):this.textarea.onchange=this._onChange.bind(this)}this.setSchema(this.options.schema)},s._onChange=function(){if(this._debouncedValidate(),this.options.onChange)try{this.options.onChange()}catch(e){console.error("Error in onChange callback: ",e)}},s._onKeyDown=function(e){var t=!1;220==(e.which||e.keyCode)&&e.ctrlKey&&(e.shiftKey?(this.compact(),this._onChange()):(this.format(),this._onChange()),t=!0),t&&(e.preventDefault(),e.stopPropagation())},s.destroy=function(){this.aceEditor&&(this.aceEditor.destroy(),this.aceEditor=null),this.frame&&this.container&&this.frame.parentNode==this.container&&this.container.removeChild(this.frame),this.modeSwitcher&&(this.modeSwitcher.destroy(),this.modeSwitcher=null),this.textarea=null,this._debouncedValidate=null},s.compact=function(){var e=this.get(),t=JSON.stringify(e);this.setText(t)},s.format=function(){var e=this.get(),t=JSON.stringify(e,null,this.indentation);this.setText(t)},s.focus=function(){this.textarea&&this.textarea.focus(),this.aceEditor&&this.aceEditor.focus()},s.resize=function(){if(this.aceEditor){this.aceEditor.resize(!1)}},s.set=function(e){this.setText(JSON.stringify(e,null,this.indentation))},s.get=function(){var e,t=this.getText();try{e=o.parse(t)}catch(i){t=o.sanitize(t),e=o.parse(t)}return e},s.getText=function(){return this.textarea?this.textarea.value:this.aceEditor?this.aceEditor.getValue():""},s.setText=function(e){var t;if(t=!0===this.options.escapeUnicode?o.escapeUnicodeChars(e):e,this.textarea&&(this.textarea.value=t),this.aceEditor){var i=this.options.onChange;this.options.onChange=null,this.aceEditor.setValue(t,-1),this.options.onChange=i}this.validate()},s.validate=function(){this.dom.validationErrors&&(this.dom.validationErrors.parentNode.removeChild(this.dom.validationErrors),this.dom.validationErrors=null,this.content.style.marginBottom="",this.content.style.paddingBottom="");var e,t=!1,i=[];try{e=this.get(),t=!0}catch(e){}t&&this.validateSchema&&(this.validateSchema(e)||(i=this.validateSchema.errors.map(function(e){return o.improveSchemaError(e)})));if(i.length>0){if(i.length>3){i=i.slice(0,3);var n=this.validateSchema.errors.length-3;i.push("("+n+" more errors...)")}var r=document.createElement("div");r.innerHTML='<table class="jsoneditor-text-errors"><tbody>'+i.map(function(e){return'<tr><td><button class="jsoneditor-schema-error"></button></td>'+("string"==typeof e?'<td colspan="2"><pre>'+e+"</pre></td>":"<td>"+e.dataPath+"</td><td>"+e.message+"</td>")+"</tr>"}).join("")+"</tbody></table>",this.dom.validationErrors=r,this.frame.appendChild(r);var s=r.clientHeight;this.content.style.marginBottom=-s+"px",this.content.style.paddingBottom=s+"px"}if(this.aceEditor){this.aceEditor.resize(!1)}},e.exports=[{mode:"text",mixin:s,data:"text",load:s.format},{mode:"code",mixin:s,data:"text",load:s.format}]},function(e,t,i){var n=i(64);i(67),i(69),e.exports=n},function(e,t,i){!function(){var e=function(){return this}();e||"undefined"==typeof window||(e=window);var t=function(e,i,n){"string"==typeof e?(2==arguments.length&&(n=i),t.modules[e]||(t.payloads[e]=n,t.modules[e]=null)):t.original?t.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace())};t.modules={},t.payloads={};var i=function(e,t,i){if("string"==typeof t){var r=o(e,t);if(void 0!=r)return i&&i(),r}else if("[object Array]"===Object.prototype.toString.call(t)){for(var s=[],a=0,l=t.length;a<l;++a){var c=o(e,t[a]);if(void 0==c&&n.original)return;s.push(c)}return i&&i.apply(null,s)||!0}},n=function(e,t){var r=i("",e,t);return void 0==r&&n.original?n.original.apply(this,arguments):r},r=function(e,t){if(-1!==t.indexOf("!")){var i=t.split("!");return r(e,i[0])+"!"+r(e,i[1])}if("."==t.charAt(0))for(t=e.split("/").slice(0,-1).join("/")+"/"+t;-1!==t.indexOf(".")&&n!=t;){var n=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}return t},o=function(e,n){n=r(e,n);var o=t.modules[n];if(!o){if("function"==typeof(o=t.payloads[n])){var s={},a={id:n,uri:"",exports:s,packaged:!0};s=o(function(e,t){return i(n,e,t)},s,a)||a.exports,t.modules[n]=s,delete t.payloads[n]}o=t.modules[n]=s||o}return o};!function(i){var r=e;i&&(e[i]||(e[i]={}),r=e[i]),r.define&&r.define.packaged||(t.original=r.define,r.define=t,r.define.packaged=!0),r.acequire&&r.acequire.packaged||(n.original=r.acequire,r.acequire=n,r.acequire.packaged=!0)}("ace")}(),ace.define("ace/lib/regexp",["require","exports","module"],function(e,t,i){"use strict";var n={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},r=void 0===n.exec.call(/()??/,"")[1],o=function(){var e=/^/g;return n.test.call(e,""),!e.lastIndex}();o&&r||(RegExp.prototype.exec=function(e){var t,i,s=n.exec.apply(this,arguments);if("string"==typeof e&&s){if(!r&&s.length>1&&function(e,t,i){if(Array.prototype.indexOf)return e.indexOf(t,i);for(var n=i||0;n<e.length;n++)if(e[n]===t)return n;return-1}(s,"")>-1&&(i=RegExp(this.source,n.replace.call(function(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}(this),"g","")),n.replace.call(e.slice(s.index),i,function(){for(var e=1;e<arguments.length-2;e++)void 0===arguments[e]&&(s[e]=void 0)})),this._xregexp&&this._xregexp.captureNames)for(var a=1;a<s.length;a++)(t=this._xregexp.captureNames[a-1])&&(s[t]=s[a]);!o&&this.global&&!s[0].length&&this.lastIndex>s.index&&this.lastIndex--}return s},o||(RegExp.prototype.test=function(e){var t=n.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t}))}),ace.define("ace/lib/es5-shim",["require","exports","module"],function(e,t,i){function n(){}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if("function"!=typeof t)throw new TypeError("Function.prototype.bind called on incompatible "+t);var i=d.call(arguments,1),r=function(){if(this instanceof r){var n=t.apply(this,i.concat(d.call(arguments)));return Object(n)===n?n:this}return t.apply(e,i.concat(d.call(arguments)))};return t.prototype&&(n.prototype=t.prototype,r.prototype=new n,n.prototype=null),r});var r,o,s,a,l,c=Function.prototype.call,h=Array.prototype,u=Object.prototype,d=h.slice,f=c.bind(u.toString),p=c.bind(u.hasOwnProperty);if((l=p(u,"__defineGetter__"))&&(r=c.bind(u.__defineGetter__),o=c.bind(u.__defineSetter__),s=c.bind(u.__lookupGetter__),a=c.bind(u.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t,i=[];if(i.splice.apply(i,e(20)),i.splice.apply(i,e(26)),t=i.length,i.splice(5,0,"XXX"),i.length,t+1==i.length)return!0}()){var m=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?m.apply(this,[void 0===e?0:e,void 0===t?this.length-e:t].concat(d.call(arguments,2))):[]}}else Array.prototype.splice=function(e,t){var i=this.length;e>0?e>i&&(e=i):void 0==e?e=0:e<0&&(e=Math.max(i+e,0)),e+t<i||(t=i-e);var n=this.slice(e,e+t),r=d.call(arguments,2),o=r.length;if(e===i)o&&this.push.apply(this,r);else{var s=Math.min(t,i-e),a=e+s,l=a+o-s,c=i-a,h=i-s;if(l<a)for(var u=0;u<c;++u)this[l+u]=this[a+u];else if(l>a)for(u=c;u--;)this[l+u]=this[a+u];if(o&&e===h)this.length=h,this.push.apply(this,r);else for(this.length=h+o,u=0;u<o;++u)this[e+u]=r[u]}return n};Array.isArray||(Array.isArray=function(e){return"[object Array]"==f(e)});var g,v=Object("a"),y="a"!=v[0]||!(0 in v);if(Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=arguments[1],r=-1,o=i.length>>>0;if("[object Function]"!=f(e))throw new TypeError;for(;++r<o;)r in i&&e.call(n,i[r],r,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=i.length>>>0,r=Array(n),o=arguments[1];if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");for(var s=0;s<n;s++)s in i&&(r[s]=e.call(o,i[s],s,t));return r}),Array.prototype.filter||(Array.prototype.filter=function(e){var t,i=L(this),n=y&&"[object String]"==f(this)?this.split(""):i,r=n.length>>>0,o=[],s=arguments[1];if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");for(var a=0;a<r;a++)a in n&&(t=n[a],e.call(s,t,a,i)&&o.push(t));return o}),Array.prototype.every||(Array.prototype.every=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=i.length>>>0,r=arguments[1];if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");for(var o=0;o<n;o++)if(o in i&&!e.call(r,i[o],o,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=i.length>>>0,r=arguments[1];if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");for(var o=0;o<n;o++)if(o in i&&e.call(r,i[o],o,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=i.length>>>0;if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");if(!n&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var r,o=0;if(arguments.length>=2)r=arguments[1];else for(;;){if(o in i){r=i[o++];break}if(++o>=n)throw new TypeError("reduce of empty array with no initial value")}for(;o<n;o++)o in i&&(r=e.call(void 0,r,i[o],o,t));return r}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=L(this),i=y&&"[object String]"==f(this)?this.split(""):t,n=i.length>>>0;if("[object Function]"!=f(e))throw new TypeError(e+" is not a function");if(!n&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var r,o=n-1;if(arguments.length>=2)r=arguments[1];else for(;;){if(o in i){r=i[o--];break}if(--o<0)throw new TypeError("reduceRight of empty array with no initial value")}do{o in this&&(r=e.call(void 0,r,i[o],o,t))}while(o--);return r}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(e){var t=y&&"[object String]"==f(this)?this.split(""):L(this),i=t.length>>>0;if(!i)return-1;var n=0;for(arguments.length>1&&(n=$(arguments[1])),n=n>=0?n:Math.max(0,i+n);n<i;n++)if(n in t&&t[n]===e)return n;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(e){var t=y&&"[object String]"==f(this)?this.split(""):L(this),i=t.length>>>0;if(!i)return-1;var n=i-1;for(arguments.length>1&&(n=Math.min(n,$(arguments[1]))),n=n>=0?n:i-Math.abs(n);n>=0;n--)if(n in t&&e===t[n])return n;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:u)}),!Object.getOwnPropertyDescriptor){Object.getOwnPropertyDescriptor=function(e,t){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError("Object.getOwnPropertyDescriptor called on a non-object: "+e);if(p(e,t)){var i;if(i={enumerable:!0,configurable:!0},l){var n=e.__proto__;e.__proto__=u;var r=s(e,t),o=a(e,t);if(e.__proto__=n,r||o)return r&&(i.get=r),o&&(i.set=o),i}return i.value=e[t],i}}}(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)}),Object.create)||(g=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var i;if(null===e)i=g();else{if("object"!=typeof e)throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var n=function(){};n.prototype=e,(i=new n).__proto__=e}return void 0!==t&&Object.defineProperties(i,t),i});function w(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(e){}}if(Object.defineProperty){var b=w({}),C="undefined"==typeof document||w(document.createElement("div"));if(!b||!C)var A=Object.defineProperty}if(!Object.defineProperty||A){Object.defineProperty=function(e,t,i){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError("Object.defineProperty called on non-object: "+e);if("object"!=typeof i&&"function"!=typeof i||null===i)throw new TypeError("Property description must be an object: "+i);if(A)try{return A.call(Object,e,t,i)}catch(e){}if(p(i,"value"))if(l&&(s(e,t)||a(e,t))){var n=e.__proto__;e.__proto__=u,delete e[t],e[t]=i.value,e.__proto__=n}else e[t]=i.value;else{if(!l)throw new TypeError("getters & setters can not be defined on this javascript engine");p(i,"get")&&r(e,t,i.get),p(i,"set")&&o(e,t,i.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var i in t)p(t,i)&&Object.defineProperty(e,i,t[i]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(e){Object.freeze=function(e){return function(t){return"function"==typeof t?t:e(t)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;for(var t="";p(e,t);)t+="?";e[t]=!0;var i=p(e,t);return delete e[t],i}),!Object.keys){var E=!0,x=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],F=x.length;for(var S in{toString:null})E=!1;Object.keys=function(e){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError("Object.keys called on a non-object");var t=[];for(var i in e)p(e,i)&&t.push(i);if(E)for(var n=0,r=F;n<r;n++){var o=x[n];p(e,o)&&t.push(o)}return t}}Date.now||(Date.now=function(){return(new Date).getTime()});var k="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff";if(!String.prototype.trim||k.trim()){k="["+k+"]";var _=new RegExp("^"+k+k+"*"),D=new RegExp(k+k+"*$");String.prototype.trim=function(){return String(this).replace(_,"").replace(D,"")}}function $(e){return(e=+e)!=e?e=0:0!==e&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}var L=function(e){if(null==e)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),ace.define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,i){"use strict";e("./regexp"),e("./es5-shim")}),ace.define("ace/lib/dom",["require","exports","module"],function(e,t,i){"use strict";t.getDocumentHead=function(e){return e||(e=document),e.head||e.getElementsByTagName("head")[0]||e.documentElement},t.createElement=function(e,t){return document.createElementNS?document.createElementNS(t||"http://www.w3.org/1999/xhtml",e):document.createElement(e)},t.hasCssClass=function(e,t){return-1!==(e.className||"").split(/\s+/g).indexOf(t)},t.addCssClass=function(e,i){t.hasCssClass(e,i)||(e.className+=" "+i)},t.removeCssClass=function(e,t){for(var i=e.className.split(/\s+/g);;){var n=i.indexOf(t);if(-1==n)break;i.splice(n,1)}e.className=i.join(" ")},t.toggleCssClass=function(e,t){for(var i=e.className.split(/\s+/g),n=!0;;){var r=i.indexOf(t);if(-1==r)break;n=!1,i.splice(r,1)}return n&&i.push(t),e.className=i.join(" "),n},t.setCssClass=function(e,i,n){n?t.addCssClass(e,i):t.removeCssClass(e,i)},t.hasCssString=function(e,t){var i,n=0;if((t=t||document).createStyleSheet&&(i=t.styleSheets)){for(;n<i.length;)if(i[n++].owningElement.id===e)return!0}else if(i=t.getElementsByTagName("style"))for(;n<i.length;)if(i[n++].id===e)return!0;return!1},t.importCssString=function(e,i,n){if(n=n||document,i&&t.hasCssString(i,n))return null;var r;i&&(e+="\n/*# sourceURL=ace/css/"+i+" */"),n.createStyleSheet?((r=n.createStyleSheet()).cssText=e,i&&(r.owningElement.id=i)):((r=t.createElement("style")).appendChild(n.createTextNode(e)),i&&(r.id=i),t.getDocumentHead(n).appendChild(r))},t.importCssStylsheet=function(e,i){if(i.createStyleSheet)i.createStyleSheet(e);else{var n=t.createElement("link");n.rel="stylesheet",n.href=e,t.getDocumentHead(i).appendChild(n)}},t.getInnerWidth=function(e){return parseInt(t.computedStyle(e,"paddingLeft"),10)+parseInt(t.computedStyle(e,"paddingRight"),10)+e.clientWidth},t.getInnerHeight=function(e){return parseInt(t.computedStyle(e,"paddingTop"),10)+parseInt(t.computedStyle(e,"paddingBottom"),10)+e.clientHeight},t.scrollbarWidth=function(e){var i=t.createElement("ace_inner");i.style.width="100%",i.style.minWidth="0px",i.style.height="200px",i.style.display="block";var n=t.createElement("ace_outer"),r=n.style;r.position="absolute",r.left="-10000px",r.overflow="hidden",r.width="200px",r.minWidth="0px",r.height="150px",r.display="block",n.appendChild(i);var o=e.documentElement;o.appendChild(n);var s=i.offsetWidth;r.overflow="scroll";var a=i.offsetWidth;return s==a&&(a=n.clientWidth),o.removeChild(n),s-a},"undefined"!=typeof document?(void 0!==window.pageYOffset?(t.getPageScrollTop=function(){return window.pageYOffset},t.getPageScrollLeft=function(){return window.pageXOffset}):(t.getPageScrollTop=function(){return document.body.scrollTop},t.getPageScrollLeft=function(){return document.body.scrollLeft}),window.getComputedStyle?t.computedStyle=function(e,t){return t?(window.getComputedStyle(e,"")||{})[t]||"":window.getComputedStyle(e,"")||{}}:t.computedStyle=function(e,t){return t?e.currentStyle[t]:e.currentStyle},t.setInnerHtml=function(e,t){var i=e.cloneNode(!1);return i.innerHTML=t,e.parentNode.replaceChild(i,e),i},"textContent"in document.documentElement?(t.setInnerText=function(e,t){e.textContent=t},t.getInnerText=function(e){return e.textContent}):(t.setInnerText=function(e,t){e.innerText=t},t.getInnerText=function(e){return e.innerText}),t.getParentWindow=function(e){return e.defaultView||e.parentWindow}):t.importCssString=function(){}}),ace.define("ace/lib/oop",["require","exports","module"],function(e,t,i){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var i in t)e[i]=t[i];return e},t.implement=function(e,i){t.mixin(e,i)}}),ace.define("ace/lib/keys",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop"],function(e,t,i){"use strict";e("./fixoldbrowsers");var n=e("./oop"),r=function(){var e,t,i={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,super:8,meta:8,command:8,cmd:8},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",111:"/",106:"*"}};for(t in i.FUNCTION_KEYS)e=i.FUNCTION_KEYS[t].toLowerCase(),i[e]=parseInt(t,10);for(t in i.PRINTABLE_KEYS)e=i.PRINTABLE_KEYS[t].toLowerCase(),i[e]=parseInt(t,10);return n.mixin(i,i.MODIFIER_KEYS),n.mixin(i,i.PRINTABLE_KEYS),n.mixin(i,i.FUNCTION_KEYS),i.enter=i.return,i.escape=i.esc,i.del=i.delete,i[173]="-",function(){for(var e=["cmd","ctrl","alt","shift"],t=Math.pow(2,e.length);t--;)i.KEY_MODS[t]=e.filter(function(e){return t&i.KEY_MODS[e]}).join("-")+"-"}(),i.KEY_MODS[0]="",i.KEY_MODS[-1]="input-",i}();n.mixin(t,r),t.keyCodeToString=function(e){var t=r[e];return"string"!=typeof t&&(t=String.fromCharCode(e)),t.toLowerCase()}}),ace.define("ace/lib/useragent",["require","exports","module"],function(e,t,i){"use strict";if(t.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},t.getOS=function(){return t.isMac?t.OS.MAC:t.isLinux?t.OS.LINUX:t.OS.WINDOWS},"object"==typeof navigator){var n=(navigator.platform.match(/mac|win|linux/i)||["other"])[0].toLowerCase(),r=navigator.userAgent;t.isWin="win"==n,t.isMac="mac"==n,t.isLinux="linux"==n,t.isIE="Microsoft Internet Explorer"==navigator.appName||navigator.appName.indexOf("MSAppHost")>=0?parseFloat((r.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((r.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),t.isOldIE=t.isIE&&t.isIE<9,t.isGecko=t.isMozilla=(window.Controllers||window.controllers)&&"Gecko"===window.navigator.product,t.isOldGecko=t.isGecko&&parseInt((r.match(/rv\:(\d+)/)||[])[1],10)<4,t.isOpera=window.opera&&"[object Opera]"==Object.prototype.toString.call(window.opera),t.isWebKit=parseFloat(r.split("WebKit/")[1])||void 0,t.isChrome=parseFloat(r.split(" Chrome/")[1])||void 0,t.isAIR=r.indexOf("AdobeAIR")>=0,t.isIPad=r.indexOf("iPad")>=0,t.isTouchPad=r.indexOf("TouchPad")>=0,t.isChromeOS=r.indexOf(" CrOS ")>=0}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,i){"use strict";var n=e("./keys"),r=e("./useragent"),o=null,s=0;t.addListener=function(e,t,i){if(e.addEventListener)return e.addEventListener(t,i,!1);if(e.attachEvent){var n=function(){i.call(e,window.event)};i._wrapper=n,e.attachEvent("on"+t,n)}},t.removeListener=function(e,t,i){if(e.removeEventListener)return e.removeEventListener(t,i,!1);e.detachEvent&&e.detachEvent("on"+t,i._wrapper||i)},t.stopEvent=function(e){return t.stopPropagation(e),t.preventDefault(e),!1},t.stopPropagation=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0},t.preventDefault=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1},t.getButton=function(e){return"dblclick"==e.type?0:"contextmenu"==e.type||r.isMac&&e.ctrlKey&&!e.altKey&&!e.shiftKey?2:e.preventDefault?e.button:{1:0,2:2,4:1}[e.button]},t.capture=function(e,i,n){function r(e){i&&i(e),n&&n(e),t.removeListener(document,"mousemove",i,!0),t.removeListener(document,"mouseup",r,!0),t.removeListener(document,"dragstart",r,!0)}return t.addListener(document,"mousemove",i,!0),t.addListener(document,"mouseup",r,!0),t.addListener(document,"dragstart",r,!0),r},t.addTouchMoveListener=function(e,i){var n,r;"ontouchmove"in e&&(t.addListener(e,"touchstart",function(e){var t=e.changedTouches[0];n=t.clientX,r=t.clientY}),t.addListener(e,"touchmove",function(e){var t=e.changedTouches[0];e.wheelX=-(t.clientX-n)/1,e.wheelY=-(t.clientY-r)/1,n=t.clientX,r=t.clientY,i(e)}))},t.addMouseWheelListener=function(e,i){"onmousewheel"in e?t.addListener(e,"mousewheel",function(e){void 0!==e.wheelDeltaX?(e.wheelX=-e.wheelDeltaX/8,e.wheelY=-e.wheelDeltaY/8):(e.wheelX=0,e.wheelY=-e.wheelDelta/8),i(e)}):"onwheel"in e?t.addListener(e,"wheel",function(e){switch(e.deltaMode){case e.DOM_DELTA_PIXEL:e.wheelX=.35*e.deltaX||0,e.wheelY=.35*e.deltaY||0;break;case e.DOM_DELTA_LINE:case e.DOM_DELTA_PAGE:e.wheelX=5*(e.deltaX||0),e.wheelY=5*(e.deltaY||0)}i(e)}):t.addListener(e,"DOMMouseScroll",function(e){e.axis&&e.axis==e.HORIZONTAL_AXIS?(e.wheelX=5*(e.detail||0),e.wheelY=0):(e.wheelX=0,e.wheelY=5*(e.detail||0)),i(e)})},t.addMultiMouseDownListener=function(e,i,n,o){var s,a,l,c=0,h={2:"dblclick",3:"tripleclick",4:"quadclick"};function u(e){if(0!==t.getButton(e)?c=0:e.detail>1?++c>4&&(c=1):c=1,r.isIE){var u=Math.abs(e.clientX-s)>5||Math.abs(e.clientY-a)>5;l&&!u||(c=1),l&&clearTimeout(l),l=setTimeout(function(){l=null},i[c-1]||600),1==c&&(s=e.clientX,a=e.clientY)}if(e._clicks=c,n[o]("mousedown",e),c>4)c=0;else if(c>1)return n[o](h[c],e)}function d(e){c=2,l&&clearTimeout(l),l=setTimeout(function(){l=null},i[c-1]||600),n[o]("mousedown",e),n[o](h[c],e)}Array.isArray(e)||(e=[e]),e.forEach(function(e){t.addListener(e,"mousedown",u),r.isOldIE&&t.addListener(e,"dblclick",d)})};var a=!r.isMac||!r.isOpera||"KeyboardEvent"in window?function(e){return 0|(e.ctrlKey?1:0)|(e.altKey?2:0)|(e.shiftKey?4:0)|(e.metaKey?8:0)}:function(e){return 0|(e.metaKey?1:0)|(e.altKey?2:0)|(e.shiftKey?4:0)|(e.ctrlKey?8:0)};function l(e,t,i){var l=a(t);if(!r.isMac&&o){if(o.OSKey&&(l|=8),o.altGr){if(3==(3&l))return;o.altGr=0}if(18===i||17===i){var c="location"in t?t.location:t.keyLocation;if(17===i&&1===c)1==o[i]&&(s=t.timeStamp);else if(18===i&&3===l&&2===c){t.timeStamp-s<50&&(o.altGr=!0)}}}if((i in n.MODIFIER_KEYS&&(i=-1),8&l&&i>=91&&i<=93&&(i=-1),!l&&13===i)&&(3===(c="location"in t?t.location:t.keyLocation)&&(e(t,l,-i),t.defaultPrevented)))return;if(r.isChromeOS&&8&l){if(e(t,l,i),t.defaultPrevented)return;l&=-9}return!!(l||i in n.FUNCTION_KEYS||i in n.PRINTABLE_KEYS)&&e(t,l,i)}function c(){(o=Object.create(null)).count=0,o.lastT=0}if(t.getModifierString=function(e){return n.KEY_MODS[a(e)]},t.addCommandKeyListener=function(e,i){var n=t.addListener;if(r.isOldGecko||r.isOpera&&!("KeyboardEvent"in window)){var s=null;n(e,"keydown",function(e){s=e.keyCode}),n(e,"keypress",function(e){return l(i,e,s)})}else{var a=null;n(e,"keydown",function(e){var t=e.keyCode;o[t]=(o[t]||0)+1,91==t||92==t?o.OSKey=!0:o.OSKey&&e.timeStamp-o.lastT>200&&1==o.count&&c(),1==o[t]&&o.count++,o.lastT=e.timeStamp;var n=l(i,e,t);return a=e.defaultPrevented,n}),n(e,"keypress",function(e){a&&(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey)&&(t.stopEvent(e),a=null)}),n(e,"keyup",function(e){var t=e.keyCode;o[t]?o.count=Math.max(o.count-1,0):c(),91!=t&&92!=t||(o.OSKey=!1),o[t]=null}),o||(c(),n(window,"focus",c))}},"object"==typeof window&&window.postMessage&&!r.isOldIE){t.nextTick=function(e,i){i=i||window;t.addListener(i,"message",function n(r){"zero-timeout-message-1"==r.data&&(t.stopPropagation(r),t.removeListener(i,"message",n),e())}),i.postMessage("zero-timeout-message-1","*")}}t.nextFrame="object"==typeof window&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),t.nextFrame?t.nextFrame=t.nextFrame.bind(window):t.nextFrame=function(e){setTimeout(e,17)}}),ace.define("ace/lib/lang",["require","exports","module"],function(e,t,i){"use strict";t.last=function(e){return e[e.length-1]},t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){for(var i="";t>0;)1&t&&(i+=e),(t>>=1)&&(e+=e);return i};var n=/^\s\s*/,r=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(n,"")},t.stringTrimRight=function(e){return e.replace(r,"")},t.copyObject=function(e){var t={};for(var i in e)t[i]=e[i];return t},t.copyArray=function(e){for(var t=[],i=0,n=e.length;i<n;i++)e[i]&&"object"==typeof e[i]?t[i]=this.copyObject(e[i]):t[i]=e[i];return t},t.deepCopy=function e(t){if("object"!=typeof t||!t)return t;var i;if(Array.isArray(t)){i=[];for(var n=0;n<t.length;n++)i[n]=e(t[n]);return i}var r=t.constructor;if(r===RegExp)return t;for(var n in i=r(),t)i[n]=e(t[n]);return i},t.arrayToMap=function(e){for(var t={},i=0;i<e.length;i++)t[e[i]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var i in e)t[i]=e[i];return t},t.arrayRemove=function(e,t){for(var i=0;i<=e.length;i++)t===e[i]&&e.splice(i,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<")},t.getMatchOffsets=function(e,t){var i=[];return e.replace(t,function(e){i.push({offset:arguments[arguments.length-2],length:e.length})}),i},t.deferredCall=function(e){var t=null,i=function(){t=null,e()},n=function(e){return n.cancel(),t=setTimeout(i,e||0),n};return n.schedule=n,n.call=function(){return this.cancel(),e(),n},n.cancel=function(){return clearTimeout(t),t=null,n},n.isPending=function(){return t},n},t.delayedCall=function(e,t){var i=null,n=function(){i=null,e()},r=function(e){null==i&&(i=setTimeout(n,e||t))};return r.delay=function(e){i&&clearTimeout(i),i=setTimeout(n,e||t)},r.schedule=r,r.call=function(){this.cancel(),e()},r.cancel=function(){i&&clearTimeout(i),i=null},r.isPending=function(){return i},r}}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang"],function(e,t,i){"use strict";var n=e("../lib/event"),r=e("../lib/useragent"),o=e("../lib/dom"),s=e("../lib/lang"),a=r.isChrome<18,l=r.isIE;t.TextInput=function(e,t){var i=o.createElement("textarea");i.className="ace_text-input",r.isTouchPad&&i.setAttribute("x-palm-disable-auto-cap",!0),i.setAttribute("wrap","off"),i.setAttribute("autocorrect","off"),i.setAttribute("autocapitalize","off"),i.setAttribute("spellcheck",!1),i.style.opacity="0",r.isOldIE&&(i.style.top="-1000px"),e.insertBefore(i,e.firstChild);var c="",h=!1,u=!1,d=!1,f="",p=!0;try{var m=document.activeElement===i}catch(e){}n.addListener(i,"blur",function(e){t.onBlur(e),m=!1}),n.addListener(i,"focus",function(e){m=!0,t.onFocus(e),y()}),this.focus=function(){if(f)return i.focus();var e=i.style.top;i.style.position="fixed",i.style.top="0px",i.focus(),setTimeout(function(){i.style.position="","0px"==i.style.top&&(i.style.top=e)},0)},this.blur=function(){i.blur()},this.isFocused=function(){return m};var g=s.delayedCall(function(){m&&y(p)}),v=s.delayedCall(function(){d||(i.value=c,m&&y())});function y(e){if(!d){if(d=!0,F)t=0,n=e?0:i.value.length-1;else var t=e?2:1,n=2;try{i.setSelectionRange(t,n)}catch(e){}d=!1}}function w(){d||(i.value=c,r.isWebKit&&v.schedule())}r.isWebKit||t.addEventListener("changeSelection",function(){t.selection.isEmpty()!=p&&(p=!p,g.schedule())}),w(),m&&t.onFocus();var b=function(e){return 0===e.selectionStart&&e.selectionEnd===e.value.length};if(!i.setSelectionRange&&i.createTextRange&&(i.setSelectionRange=function(e,t){var i=this.createTextRange();i.collapse(!0),i.moveStart("character",e),i.moveEnd("character",t),i.select()},b=function(e){try{var t=e.ownerDocument.selection.createRange()}catch(e){}return!(!t||t.parentElement()!=e)&&t.text==e.value}),r.isOldIE){var C=!1,A=function(e){if(!C){var t=i.value;if(!d&&t&&t!=c){if(e&&t==c[0])return E.schedule();k(t),C=!0,w(),C=!1}}},E=s.delayedCall(A);n.addListener(i,"propertychange",A);var x={13:1,27:1};n.addListener(i,"keyup",function(e){if(!d||i.value&&!x[e.keyCode]||setTimeout(O,0),(i.value.charCodeAt(0)||0)<129)return E.call();d?M():T()}),n.addListener(i,"keydown",function(e){E.schedule(50)})}var F=null;this.setInputHandler=function(e){F=e},this.getInputHandler=function(){return F};var S=!1,k=function(e){F&&(e=F(e),F=null),u?(y(),e&&t.onPaste(e),u=!1):e==c.charAt(0)?S?t.execCommand("del",{source:"ace"}):t.execCommand("backspace",{source:"ace"}):(e.substring(0,2)==c?e=e.substr(2):e.charAt(0)==c.charAt(0)?e=e.substr(1):e.charAt(e.length-1)==c.charAt(0)&&(e=e.slice(0,-1)),e.charAt(e.length-1)==c.charAt(0)&&(e=e.slice(0,-1)),e&&t.onTextInput(e)),S&&(S=!1)},_=function(e,t){var i=e.clipboardData||window.clipboardData;if(i&&!a){var n=l?"Text":"text/plain";return t?!1!==i.setData(n,t):i.getData(n)}},D=function(e,r){var o=t.getCopyText();if(!o)return n.preventDefault(e);_(e,o)?(r?t.onCut():t.onCopy(),n.preventDefault(e)):(h=!0,i.value=o,i.select(),setTimeout(function(){h=!1,w(),y(),r?t.onCut():t.onCopy()}))},$=function(e){D(e,!0)},L=function(e){D(e,!1)},B=function(e){var o=_(e);"string"==typeof o?(o&&t.onPaste(o,e),r.isIE&&setTimeout(y),n.preventDefault(e)):(i.value="",u=!0)};n.addCommandKeyListener(i,t.onCommandKey.bind(t)),n.addListener(i,"select",function(e){h?h=!1:b(i)?(t.selectAll(),y()):F&&y(t.selection.isEmpty())}),n.addListener(i,"input",function(e){if(!d){var t=i.value;k(t),w()}}),n.addListener(i,"cut",$),n.addListener(i,"copy",L),n.addListener(i,"paste",B),"oncut"in i&&"oncopy"in i&&"onpaste"in i||n.addListener(e,"keydown",function(e){if((!r.isMac||e.metaKey)&&e.ctrlKey)switch(e.keyCode){case 67:L(e);break;case 86:B(e);break;case 88:$(e)}});var R,T=function(e){d||!t.onCompositionStart||t.$readOnly||(d={},t.onCompositionStart(),setTimeout(M,0),t.on("mousedown",O),t.selection.isEmpty()||(t.insert(""),t.session.markUndoGroup(),t.selection.clearSelection()),t.session.markUndoGroup())},M=function(){if(d&&t.onCompositionUpdate&&!t.$readOnly){var e=i.value.replace(/\x01/g,"");if(d.lastValue!==e&&(t.onCompositionUpdate(e),d.lastValue&&t.undo(),d.lastValue=e,d.lastValue)){var n=t.selection.getRange();t.insert(d.lastValue),t.session.markUndoGroup(),d.range=t.selection.getRange(),t.selection.setRange(n),t.selection.clearSelection()}}},O=function(e){if(t.onCompositionEnd&&!t.$readOnly){var n=d;d=!1;var r=setTimeout(function(){r=null;var e=i.value.replace(/\x01/g,"");d||(e==n.lastValue?w():!n.lastValue&&e&&(w(),k(e)))});F=function(e){return r&&clearTimeout(r),(e=e.replace(/\x01/g,""))==n.lastValue?"":(n.lastValue&&r&&t.undo(),e)},t.onCompositionEnd(),t.removeListener("mousedown",O),"compositionend"==e.type&&n.range&&t.selection.setRange(n.range)}},P=s.delayedCall(M,50);function N(){clearTimeout(R),R=setTimeout(function(){f&&(i.style.cssText=f,f=""),null==t.renderer.$keepTextAreaAtCursor&&(t.renderer.$keepTextAreaAtCursor=!0,t.renderer.$moveTextAreaToCursor())},r.isOldIE?200:0)}n.addListener(i,"compositionstart",T),r.isGecko?n.addListener(i,"text",function(){P.schedule()}):(n.addListener(i,"keyup",function(){P.schedule()}),n.addListener(i,"keydown",function(){P.schedule()})),n.addListener(i,"compositionend",O),this.getElement=function(){return i},this.setReadOnly=function(e){i.readOnly=e},this.onContextMenu=function(e){S=!0,y(t.selection.isEmpty()),t._emit("nativecontextmenu",{target:t,domEvent:e}),this.moveToMouse(e,!0)},this.moveToMouse=function(e,s){if(s||!r.isOldIE){f||(f=i.style.cssText),i.style.cssText=(s?"z-index:100000;":"")+"height:"+i.style.height+";"+(r.isIE?"opacity:0.1;":"");var a=t.container.getBoundingClientRect(),l=o.computedStyle(t.container),c=a.top+(parseInt(l.borderTopWidth)||0),h=a.left+(parseInt(a.borderLeftWidth)||0),u=a.bottom-c-i.clientHeight-2,d=function(e){i.style.left=e.clientX-h-2+"px",i.style.top=Math.min(e.clientY-c-2,u)+"px"};d(e),"mousedown"==e.type&&(t.renderer.$keepTextAreaAtCursor&&(t.renderer.$keepTextAreaAtCursor=null),clearTimeout(R),r.isWin&&!r.isOldIE&&n.capture(t.container,d,N))}},this.onContextMenuClose=N;var I=function(e){t.textInput.onContextMenu(e),N()};n.addListener(i,"mouseup",I),n.addListener(i,"mousedown",function(e){e.preventDefault(),N()}),n.addListener(t.renderer.scroller,"contextmenu",I),n.addListener(i,"contextmenu",I)}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,i){"use strict";e("../lib/dom"),e("../lib/event"),e("../lib/useragent");function n(e){e.$clickSelection=null;var t=e.editor;t.setDefaultHandler("mousedown",this.onMouseDown.bind(e)),t.setDefaultHandler("dblclick",this.onDoubleClick.bind(e)),t.setDefaultHandler("tripleclick",this.onTripleClick.bind(e)),t.setDefaultHandler("quadclick",this.onQuadClick.bind(e)),t.setDefaultHandler("mousewheel",this.onMouseWheel.bind(e)),t.setDefaultHandler("touchmove",this.onTouchMove.bind(e));["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"].forEach(function(t){e[t]=this[t]},this),e.selectByLines=this.extendSelectionBy.bind(e,"getLineRange"),e.selectByWords=this.extendSelectionBy.bind(e,"getWordRange")}function r(e,t){if(e.start.row==e.end.row)var i=2*t.column-e.start.column-e.end.column;else if(e.start.row!=e.end.row-1||e.start.column||e.end.column)i=2*t.row-e.start.row-e.end.row;else var i=t.column-4;return i<0?{cursor:e.start,anchor:e.end}:{cursor:e.end,anchor:e.start}}(function(){this.onMouseDown=function(e){var t=e.inSelection(),i=e.getDocumentPosition();this.mousedownEvent=e;var n=this.editor,r=e.getButton();if(0!==r){var o=n.getSelectionRange().isEmpty();return n.$blockScrolling++,(o||1==r)&&n.selection.moveToPosition(i),n.$blockScrolling--,void(2==r&&n.textInput.onContextMenu(e.domEvent))}return this.mousedownEvent.time=Date.now(),!t||n.isFocused()||(n.focus(),!this.$focusTimout||this.$clickSelection||n.inMultiSelectMode)?(this.captureMouse(e),this.startSelect(i,e.domEvent._clicks>1),e.preventDefault()):(this.setState("focusWait"),void this.captureMouse(e))},this.startSelect=function(e,t){e=e||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var i=this.editor;i.$blockScrolling++,this.mousedownEvent.getShiftKey()?i.selection.selectToPosition(e):t||i.selection.moveToPosition(e),t||this.select(),i.renderer.scroller.setCapture&&i.renderer.scroller.setCapture(),i.setStyle("ace_selecting"),this.setState("select"),i.$blockScrolling--},this.select=function(){var e,t=this.editor,i=t.renderer.screenToTextCoordinates(this.x,this.y);if(t.$blockScrolling++,this.$clickSelection){var n=this.$clickSelection.comparePoint(i);if(-1==n)e=this.$clickSelection.end;else if(1==n)e=this.$clickSelection.start;else{var o=r(this.$clickSelection,i);i=o.cursor,e=o.anchor}t.selection.setSelectionAnchor(e.row,e.column)}t.selection.selectToPosition(i),t.$blockScrolling--,t.renderer.scrollCursorIntoView()},this.extendSelectionBy=function(e){var t,i=this.editor,n=i.renderer.screenToTextCoordinates(this.x,this.y),o=i.selection[e](n.row,n.column);if(i.$blockScrolling++,this.$clickSelection){var s=this.$clickSelection.comparePoint(o.start),a=this.$clickSelection.comparePoint(o.end);if(-1==s&&a<=0)t=this.$clickSelection.end,o.end.row==n.row&&o.end.column==n.column||(n=o.start);else if(1==a&&s>=0)t=this.$clickSelection.start,o.start.row==n.row&&o.start.column==n.column||(n=o.end);else if(-1==s&&1==a)n=o.end,t=o.start;else{var l=r(this.$clickSelection,n);n=l.cursor,t=l.anchor}i.selection.setSelectionAnchor(t.row,t.column)}i.selection.selectToPosition(n),i.$blockScrolling--,i.renderer.scrollCursorIntoView()},this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting"),this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()},this.focusWait=function(){var e=function(e,t,i,n){return Math.sqrt(Math.pow(i-e,2)+Math.pow(n-t,2))}(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(e>0||t-this.mousedownEvent.time>this.$focusTimout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},this.onDoubleClick=function(e){var t=e.getDocumentPosition(),i=this.editor,n=i.session.getBracketRange(t);n?(n.isEmpty()&&(n.start.column--,n.end.column++),this.setState("select")):(n=i.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=n,this.select()},this.onTripleClick=function(e){var t=e.getDocumentPosition(),i=this.editor;this.setState("selectByLines");var n=i.getSelectionRange();n.isMultiLine()&&n.contains(t.row,t.column)?(this.$clickSelection=i.selection.getLineRange(n.start.row),this.$clickSelection.end=i.selection.getLineRange(n.end.row).end):this.$clickSelection=i.selection.getLineRange(t.row),this.select()},this.onQuadClick=function(e){var t=this.editor;t.selectAll(),this.$clickSelection=t.getSelectionRange(),this.setState("selectAll")},this.onMouseWheel=function(e){if(!e.getAccelKey()){e.getShiftKey()&&e.wheelY&&!e.wheelX&&(e.wheelX=e.wheelY,e.wheelY=0);var t=e.domEvent.timeStamp,i=t-(this.$lastScrollTime||0),n=this.editor;return n.renderer.isScrollableBy(e.wheelX*e.speed,e.wheelY*e.speed)||i<200?(this.$lastScrollTime=t,n.renderer.scrollBy(e.wheelX*e.speed,e.wheelY*e.speed),e.stop()):void 0}},this.onTouchMove=function(e){var t=e.domEvent.timeStamp,i=t-(this.$lastScrollTime||0),n=this.editor;if(n.renderer.isScrollableBy(e.wheelX*e.speed,e.wheelY*e.speed)||i<200)return this.$lastScrollTime=t,n.renderer.scrollBy(e.wheelX*e.speed,e.wheelY*e.speed),e.stop()}}).call(n.prototype),t.DefaultHandlers=n}),ace.define("ace/tooltip",["require","exports","module","ace/lib/oop","ace/lib/dom"],function(e,t,i){"use strict";e("./lib/oop");var n=e("./lib/dom");function r(e){this.isOpen=!1,this.$element=null,this.$parentNode=e}(function(){this.$init=function(){return this.$element=n.createElement("div"),this.$element.className="ace_tooltip",this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},this.getElement=function(){return this.$element||this.$init()},this.setText=function(e){n.setInnerText(this.getElement(),e)},this.setHtml=function(e){this.getElement().innerHTML=e},this.setPosition=function(e,t){this.getElement().style.left=e+"px",this.getElement().style.top=t+"px"},this.setClassName=function(e){n.addCssClass(this.getElement(),e)},this.show=function(e,t,i){null!=e&&this.setText(e),null!=t&&null!=i&&this.setPosition(t,i),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},this.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.isOpen=!1)},this.getHeight=function(){return this.getElement().offsetHeight},this.getWidth=function(){return this.getElement().offsetWidth}}).call(r.prototype),t.Tooltip=r}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event","ace/tooltip"],function(e,t,i){"use strict";var n=e("../lib/dom"),r=e("../lib/oop"),o=e("../lib/event"),s=e("../tooltip").Tooltip;function a(e){s.call(this,e)}r.inherits(a,s),function(){this.setPosition=function(e,t){var i=window.innerWidth||document.documentElement.clientWidth,n=window.innerHeight||document.documentElement.clientHeight,r=this.getWidth(),o=this.getHeight();t+=15,(e+=15)+r>i&&(e-=e+r-i),t+o>n&&(t-=20+o),s.prototype.setPosition.call(this,e,t)}}.call(a.prototype),t.GutterHandler=function(e){var t,i,r,s=e.editor,l=s.renderer.$gutterLayer,c=new a(s.container);function h(){t&&(t=clearTimeout(t)),r&&(c.hide(),r=null,s.removeEventListener("mousewheel",h))}function u(e){c.setPosition(e.x,e.y)}e.editor.setDefaultHandler("guttermousedown",function(t){if(s.isFocused()&&0==t.getButton()&&"foldWidgets"!=l.getRegion(t)){var i=t.getDocumentPosition().row,n=s.session.selection;if(t.getShiftKey())n.selectTo(i,0);else{if(2==t.domEvent.detail)return s.selectAll(),t.preventDefault();e.$clickSelection=s.selection.getLineRange(i)}return e.setState("selectByLines"),e.captureMouse(t),t.preventDefault()}}),e.editor.setDefaultHandler("guttermousemove",function(o){var a=o.domEvent.target||o.domEvent.srcElement;if(n.hasCssClass(a,"ace_fold-widget"))return h();r&&e.$tooltipFollowsMouse&&u(o),i=o,t||(t=setTimeout(function(){t=null,i&&!e.isMousePressed?function(){var t=i.getDocumentPosition().row,n=l.$annotations[t];if(!n)return h();if(t==s.session.getLength()){var o=s.renderer.pixelToScreenCoordinates(0,i.y).row,a=i.$pos;if(o>s.session.documentToScreenRow(a.row,a.column))return h()}if(r!=n)if(r=n.text.join("<br/>"),c.setHtml(r),c.show(),s.on("mousewheel",h),e.$tooltipFollowsMouse)u(i);else{var d=i.domEvent.target.getBoundingClientRect(),f=c.getElement().style;f.left=d.right+"px",f.top=d.bottom+"px"}}():h()},50))}),o.addListener(s.renderer.$gutter,"mouseout",function(e){i=null,r&&!t&&(t=setTimeout(function(){t=null,h()},50))}),s.on("changeSession",h)}}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,i){"use strict";var n=e("../lib/event"),r=e("../lib/useragent"),o=t.MouseEvent=function(e,t){this.domEvent=e,this.editor=t,this.x=this.clientX=e.clientX,this.y=this.clientY=e.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1};(function(){this.stopPropagation=function(){n.stopPropagation(this.domEvent),this.propagationStopped=!0},this.preventDefault=function(){n.preventDefault(this.domEvent),this.defaultPrevented=!0},this.stop=function(){this.stopPropagation(),this.preventDefault()},this.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},this.inSelection=function(){if(null!==this.$inSelection)return this.$inSelection;var e=this.editor.getSelectionRange();if(e.isEmpty())this.$inSelection=!1;else{var t=this.getDocumentPosition();this.$inSelection=e.contains(t.row,t.column)}return this.$inSelection},this.getButton=function(){return n.getButton(this.domEvent)},this.getShiftKey=function(){return this.domEvent.shiftKey},this.getAccelKey=r.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(o.prototype)}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,i){"use strict";var n=e("../lib/dom"),r=e("../lib/event"),o=e("../lib/useragent"),s=200,a=200,l=5;function c(e){var t=e.editor,i=n.createElement("img");i.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",o.isOpera&&(i.style.cssText="width:1px;height:1px;position:fixed;top:0;left:0;z-index:2147483647;opacity:0;");["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"].forEach(function(t){e[t]=this[t]},this),t.addEventListener("mousedown",this.onMouseDown.bind(e));var c,u,d,f,p,m,g,v,y,w,b,C=t.container,A=0;function E(){var e=m;(function(e,i){var n=Date.now(),r=!i||e.row!=i.row,o=!i||e.column!=i.column;!w||r||o?(t.$blockScrolling+=1,t.moveCursorToPosition(e),t.$blockScrolling-=1,w=n,b={x:u,y:d}):h(b.x,b.y,u,d)>l?w=null:n-w>=a&&(t.renderer.scrollCursorIntoView(),w=null)})(m=t.renderer.screenToTextCoordinates(u,d),e),function(e,i){var n=Date.now(),r=t.renderer.layerConfig.lineHeight,o=t.renderer.layerConfig.characterWidth,a=t.renderer.scroller.getBoundingClientRect(),l={x:{left:u-a.left,right:a.right-u},y:{top:d-a.top,bottom:a.bottom-d}},c=Math.min(l.x.left,l.x.right),h=Math.min(l.y.top,l.y.bottom),f={row:e.row,column:e.column};c/o<=2&&(f.column+=l.x.left<l.x.right?-3:2),h/r<=1&&(f.row+=l.y.top<l.y.bottom?-1:1);var p=e.row!=f.row,m=e.column!=f.column,g=!i||e.row!=i.row;p||m&&!g?y?n-y>=s&&t.renderer.scrollCursorIntoView(f):y=n:y=null}(m,e)}function x(){p=t.selection.toOrientedRange(),c=t.session.addMarker(p,"ace_selection",t.getSelectionStyle()),t.clearSelection(),t.isFocused()&&t.renderer.$cursorLayer.setBlinking(!1),clearInterval(f),E(),f=setInterval(E,20),A=0,r.addListener(document,"mousemove",k)}function F(){clearInterval(f),t.session.removeMarker(c),c=null,t.$blockScrolling+=1,t.selection.fromOrientedRange(p),t.$blockScrolling-=1,t.isFocused()&&!v&&t.renderer.$cursorLayer.setBlinking(!t.getReadOnly()),p=null,m=null,A=0,y=null,w=null,r.removeListener(document,"mousemove",k)}this.onDragStart=function(e){if(this.cancelDrag||!C.draggable){var n=this;return setTimeout(function(){n.startSelect(),n.captureMouse(e)},0),e.preventDefault()}p=t.getSelectionRange();var r=e.dataTransfer;r.effectAllowed=t.getReadOnly()?"copy":"copyMove",o.isOpera&&(t.container.appendChild(i),i.scrollTop=0),r.setDragImage&&r.setDragImage(i,0,0),o.isOpera&&t.container.removeChild(i),r.clearData(),r.setData("Text",t.session.getTextRange()),v=!0,this.setState("drag")},this.onDragEnd=function(e){if(C.draggable=!1,v=!1,this.setState(null),!t.getReadOnly()){var i=e.dataTransfer.dropEffect;g||"move"!=i||t.session.remove(t.getSelectionRange()),t.renderer.$cursorLayer.setBlinking(!0)}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(e){if(!t.getReadOnly()&&_(e.dataTransfer))return u=e.clientX,d=e.clientY,c||x(),A++,e.dataTransfer.dropEffect=g=D(e),r.preventDefault(e)},this.onDragOver=function(e){if(!t.getReadOnly()&&_(e.dataTransfer))return u=e.clientX,d=e.clientY,c||(x(),A++),null!==S&&(S=null),e.dataTransfer.dropEffect=g=D(e),r.preventDefault(e)},this.onDragLeave=function(e){if(--A<=0&&c)return F(),g=null,r.preventDefault(e)},this.onDrop=function(e){if(m){var i=e.dataTransfer;if(v)switch(g){case"move":p=p.contains(m.row,m.column)?{start:m,end:m}:t.moveText(p,m);break;case"copy":p=t.moveText(p,m,!0)}else{var n=i.getData("Text");p={start:m,end:t.session.insert(m,n)},t.focus(),g=null}return F(),r.preventDefault(e)}},r.addListener(C,"dragstart",this.onDragStart.bind(e)),r.addListener(C,"dragend",this.onDragEnd.bind(e)),r.addListener(C,"dragenter",this.onDragEnter.bind(e)),r.addListener(C,"dragover",this.onDragOver.bind(e)),r.addListener(C,"dragleave",this.onDragLeave.bind(e)),r.addListener(C,"drop",this.onDrop.bind(e));var S=null;function k(){null==S&&(S=setTimeout(function(){null!=S&&c&&F()},20))}function _(e){var t=e.types;return!t||Array.prototype.some.call(t,function(e){return"text/plain"==e||"Text"==e})}function D(e){var t=["copy","copymove","all","uninitialized"],i=o.isMac?e.altKey:e.ctrlKey,n="uninitialized";try{n=e.dataTransfer.effectAllowed.toLowerCase()}catch(e){}var r="none";return i&&t.indexOf(n)>=0?r="copy":["move","copymove","linkmove","all","uninitialized"].indexOf(n)>=0?r="move":t.indexOf(n)>=0&&(r="copy"),r}}function h(e,t,i,n){return Math.sqrt(Math.pow(i-e,2)+Math.pow(n-t,2))}(function(){this.dragWait=function(){Date.now()-this.mousedownEvent.time>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){this.editor.container.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(e){this.editor.renderer.$cursorLayer.setBlinking(!this.editor.getReadOnly()),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var e=this.editor;e.container.draggable=!0,e.renderer.$cursorLayer.setBlinking(!1),e.setStyle("ace_dragging");var t=o.isWin?"default":"move";e.renderer.setCursorStyle(t),this.setState("dragReady")},this.onMouseDrag=function(e){var t=this.editor.container;o.isIE&&"dragReady"==this.state&&(h(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y)>3&&t.dragDrop());"dragWait"===this.state&&(h(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y)>0&&(t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition())))},this.onMouseDown=function(e){if(this.$dragEnabled){this.mousedownEvent=e;var t=this.editor,i=e.inSelection(),n=e.getButton();if(1===(e.domEvent.detail||1)&&0===n&&i){if(e.editor.inMultiSelectMode&&(e.getAccelKey()||e.getShiftKey()))return;this.mousedownEvent.time=Date.now();var r=e.domEvent.target||e.domEvent.srcElement;if("unselectable"in r&&(r.unselectable="on"),t.getDragDelay()){if(o.isWebKit)this.cancelDrag=!0,t.container.draggable=!0;this.setState("dragWait")}else this.startDrag();this.captureMouse(e,this.onMouseDrag.bind(this)),e.defaultPrevented=!0}}}}).call(c.prototype),t.DragdropHandler=c}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,t,i){"use strict";var n=e("./dom");t.get=function(e,t){var i=new XMLHttpRequest;i.open("GET",e,!0),i.onreadystatechange=function(){4===i.readyState&&t(i.responseText)},i.send(null)},t.loadScript=function(e,t){var i=n.getDocumentHead(),r=document.createElement("script");r.src=e,i.appendChild(r),r.onload=r.onreadystatechange=function(e,i){!i&&r.readyState&&"loaded"!=r.readyState&&"complete"!=r.readyState||(r=r.onload=r.onreadystatechange=null,i||t())}},t.qualifyURL=function(e){var t=document.createElement("a");return t.href=e,t.href}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(e,t,i){"use strict";var n={},r=function(){this.propagationStopped=!0},o=function(){this.defaultPrevented=!0};n._emit=n._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var i=this._eventRegistry[e]||[],n=this._defaultHandlers[e];if(i.length||n){"object"==typeof t&&t||(t={}),t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=r),t.preventDefault||(t.preventDefault=o),i=i.slice();for(var s=0;s<i.length&&(i[s](t,this),!t.propagationStopped);s++);return n&&!t.defaultPrevented?n(t,this):void 0}},n._signal=function(e,t){var i=(this._eventRegistry||{})[e];if(i){i=i.slice();for(var n=0;n<i.length;n++)i[n](t,this)}},n.once=function(e,t){var i=this;t&&this.addEventListener(e,function n(){i.removeEventListener(e,n),t.apply(null,arguments)})},n.setDefaultHandler=function(e,t){var i=this._defaultHandlers;if(i||(i=this._defaultHandlers={_disabled_:{}}),i[e]){var n=i[e],r=i._disabled_[e];r||(i._disabled_[e]=r=[]),r.push(n);var o=r.indexOf(t);-1!=o&&r.splice(o,1)}i[e]=t},n.removeDefaultHandler=function(e,t){var i=this._defaultHandlers;if(i){var n=i._disabled_[e];if(i[e]==t){i[e];n&&this.setDefaultHandler(e,n.pop())}else if(n){var r=n.indexOf(t);-1!=r&&n.splice(r,1)}}},n.on=n.addEventListener=function(e,t,i){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];return n||(n=this._eventRegistry[e]=[]),-1==n.indexOf(t)&&n[i?"unshift":"push"](t),t},n.off=n.removeListener=n.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var i=this._eventRegistry[e];if(i){var n=i.indexOf(t);-1!==n&&i.splice(n,1)}},n.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=n}),ace.define("ace/lib/app_config",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,i){"no use strict";var n=e("./oop"),r=e("./event_emitter").EventEmitter,o={setOptions:function(e){Object.keys(e).forEach(function(t){this.setOption(t,e[t])},this)},getOptions:function(e){var t={};return e?Array.isArray(e)||(t=e,e=Object.keys(t)):e=Object.keys(this.$options),e.forEach(function(e){t[e]=this.getOption(e)},this),t},setOption:function(e,t){if(this["$"+e]!==t){var i=this.$options[e];if(!i)return s('misspelled option "'+e+'"');if(i.forwardTo)return this[i.forwardTo]&&this[i.forwardTo].setOption(e,t);i.handlesSet||(this["$"+e]=t),i&&i.set&&i.set.call(this,t)}},getOption:function(e){var t=this.$options[e];return t?t.forwardTo?this[t.forwardTo]&&this[t.forwardTo].getOption(e):t&&t.get?t.get.call(this):this["$"+e]:s('misspelled option "'+e+'"')}};function s(e){"undefined"!=typeof console&&console.warn&&console.warn.apply(console,arguments)}function a(e,t){var i=new Error(e);i.data=t,"object"==typeof console&&console.error&&console.error(i),setTimeout(function(){throw i})}var l=function(){this.$defaultOptions={}};(function(){n.implement(this,r),this.defineOptions=function(e,t,i){return e.$options||(this.$defaultOptions[t]=e.$options={}),Object.keys(i).forEach(function(t){var n=i[t];"string"==typeof n&&(n={forwardTo:n}),n.name||(n.name=t),e.$options[n.name]=n,"initialValue"in n&&(e["$"+n.name]=n.initialValue)}),n.implement(e,o),this},this.resetOptions=function(e){Object.keys(e.$options).forEach(function(t){var i=e.$options[t];"value"in i&&e.setOption(t,i.value)})},this.setDefaultValue=function(e,t,i){var n=this.$defaultOptions[e]||(this.$defaultOptions[e]={});n[t]&&(n.forwardTo?this.setDefaultValue(n.forwardTo,t,i):n[t].value=i)},this.setDefaultValues=function(e,t){Object.keys(t).forEach(function(i){this.setDefaultValue(e,i,t[i])},this)},this.warn=s,this.reportError=a}).call(l.prototype),t.AppConfig=l}),ace.define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/lib/net","ace/lib/app_config"],function(e,t,n){"no use strict";var r=e("./lib/lang"),o=(e("./lib/oop"),e("./lib/net")),s=e("./lib/app_config").AppConfig;n.exports=t=new s;var a=function(){return this||"undefined"!=typeof window&&window}(),l={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{}};function c(r){if(a&&a.document){l.packaged=r||e.packaged||n.packaged||a.define&&i(65).packaged;for(var o={},s="",c=document.currentScript||document._currentScript,u=(c&&c.ownerDocument||document).getElementsByTagName("script"),d=0;d<u.length;d++){var f=u[d],p=f.src||f.getAttribute("src");if(p){for(var m=f.attributes,g=0,v=m.length;g<v;g++){var y=m[g];0===y.name.indexOf("data-ace-")&&(o[h(y.name.replace(/^data-ace-/,""))]=y.value)}var w=p.match(/^(.*)\/ace(\-\w+)?\.js(\?|$)/);w&&(s=w[1])}}for(var b in s&&(o.base=o.base||s,o.packaged=!0),o.basePath=o.base,o.workerPath=o.workerPath||o.base,o.modePath=o.modePath||o.base,o.themePath=o.themePath||o.base,delete o.base,o)void 0!==o[b]&&t.set(b,o[b])}}function h(e){return e.replace(/-(.)/g,function(e,t){return t.toUpperCase()})}t.get=function(e){if(!l.hasOwnProperty(e))throw new Error("Unknown config key: "+e);return l[e]},t.set=function(e,t){if(!l.hasOwnProperty(e))throw new Error("Unknown config key: "+e);l[e]=t},t.all=function(){return r.copyObject(l)},t.moduleUrl=function(e,t){if(l.$moduleUrls[e])return l.$moduleUrls[e];var i=e.split("/"),n="snippets"==(t=t||i[i.length-2]||"")?"/":"-",r=i[i.length-1];if("worker"==t&&"-"==n){var o=new RegExp("^"+t+"[\\-_]|[\\-_]"+t+"$","g");r=r.replace(o,"")}(!r||r==t)&&i.length>1&&(r=i[i.length-2]);var s=l[t+"Path"];return null==s?s=l.basePath:"/"==n&&(t=n=""),s&&"/"!=s.slice(-1)&&(s+="/"),s+t+n+r+this.get("suffix")},t.setModuleUrl=function(e,t){return l.$moduleUrls[e]=t},t.$loading={},t.loadModule=function(i,n){var r,s;Array.isArray(i)&&(s=i[0],i=i[1]);try{r=e(i)}catch(e){}if(r&&!t.$loading[i])return n&&n(r);if(t.$loading[i]||(t.$loading[i]=[]),t.$loading[i].push(n),!(t.$loading[i].length>1)){var a=function(){e([i],function(e){t._emit("load.module",{name:i,module:e});var n=t.$loading[i];t.$loading[i]=null,n.forEach(function(t){t&&t(e)})})};if(!t.get("packaged"))return a();o.loadScript(t.moduleUrl(i,s),a)}},c(!0),t.init=c}),ace.define("ace/mouse/mouse_handler",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/mouse/default_handlers","ace/mouse/default_gutter_handler","ace/mouse/mouse_event","ace/mouse/dragdrop_handler","ace/config"],function(e,t,i){"use strict";var n=e("../lib/event"),r=e("../lib/useragent"),o=e("./default_handlers").DefaultHandlers,s=e("./default_gutter_handler").GutterHandler,a=e("./mouse_event").MouseEvent,l=e("./dragdrop_handler").DragdropHandler,c=e("../config"),h=function(e){var t=this;this.editor=e,new o(this),new s(this),new l(this);var i=function(t){(!document.hasFocus||!document.hasFocus()||!e.isFocused()&&document.activeElement==(e.textInput&&e.textInput.getElement()))&&window.focus(),e.focus()},a=e.renderer.getMouseEventTarget();n.addListener(a,"click",this.onMouseEvent.bind(this,"click")),n.addListener(a,"mousemove",this.onMouseMove.bind(this,"mousemove")),n.addMultiMouseDownListener([a,e.renderer.scrollBarV&&e.renderer.scrollBarV.inner,e.renderer.scrollBarH&&e.renderer.scrollBarH.inner,e.textInput&&e.textInput.getElement()].filter(Boolean),[400,300,250],this,"onMouseEvent"),n.addMouseWheelListener(e.container,this.onMouseWheel.bind(this,"mousewheel")),n.addTouchMoveListener(e.container,this.onTouchMove.bind(this,"touchmove"));var c=e.renderer.$gutter;n.addListener(c,"mousedown",this.onMouseEvent.bind(this,"guttermousedown")),n.addListener(c,"click",this.onMouseEvent.bind(this,"gutterclick")),n.addListener(c,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick")),n.addListener(c,"mousemove",this.onMouseEvent.bind(this,"guttermousemove")),n.addListener(a,"mousedown",i),n.addListener(c,"mousedown",i),r.isIE&&e.renderer.scrollBarV&&(n.addListener(e.renderer.scrollBarV.element,"mousedown",i),n.addListener(e.renderer.scrollBarH.element,"mousedown",i)),e.on("mousemove",function(i){if(!t.state&&!t.$dragDelay&&t.$dragEnabled){var n=e.renderer.screenToTextCoordinates(i.x,i.y),r=e.session.selection.getRange(),o=e.renderer;!r.isEmpty()&&r.insideStart(n.row,n.column)?o.setCursorStyle("default"):o.setCursorStyle("")}})};(function(){this.onMouseEvent=function(e,t){this.editor._emit(e,new a(t,this.editor))},this.onMouseMove=function(e,t){var i=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;i&&i.length&&this.editor._emit(e,new a(t,this.editor))},this.onMouseWheel=function(e,t){var i=new a(t,this.editor);i.speed=2*this.$scrollSpeed,i.wheelX=t.wheelX,i.wheelY=t.wheelY,this.editor._emit(e,i)},this.onTouchMove=function(e,t){var i=new a(t,this.editor);i.speed=1,i.wheelX=t.wheelX,i.wheelY=t.wheelY,this.editor._emit(e,i)},this.setState=function(e){this.state=e},this.captureMouse=function(e,t){this.x=e.x,this.y=e.y,this.isMousePressed=!0;var i=this.editor.renderer;i.$keepTextAreaAtCursor&&(i.$keepTextAreaAtCursor=null);var o=this,s=function(e){if(e){if(r.isWebKit&&!e.which&&o.releaseMouse)return o.releaseMouse();o.x=e.clientX,o.y=e.clientY,t&&t(e),o.mouseEvent=new a(e,o.editor),o.$mouseMoved=!0}},l=function(e){clearInterval(h),c(),o[o.state+"End"]&&o[o.state+"End"](e),o.state="",null==i.$keepTextAreaAtCursor&&(i.$keepTextAreaAtCursor=!0,i.$moveTextAreaToCursor()),o.isMousePressed=!1,o.$onCaptureMouseMove=o.releaseMouse=null,e&&o.onMouseEvent("mouseup",e)},c=function(){o[o.state]&&o[o.state](),o.$mouseMoved=!1};if(r.isOldIE&&"dblclick"==e.domEvent.type)return setTimeout(function(){l(e)});o.$onCaptureMouseMove=s,o.releaseMouse=n.capture(this.editor.container,s,l);var h=setInterval(c,20)},this.releaseMouse=null,this.cancelContextMenu=function(){var e=function(t){t&&t.domEvent&&"contextmenu"!=t.domEvent.type||(this.editor.off("nativecontextmenu",e),t&&t.domEvent&&n.stopEvent(t.domEvent))}.bind(this);setTimeout(e,10),this.editor.on("nativecontextmenu",e)}}).call(h.prototype),c.defineOptions(h.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:r.isMac?150:0},dragEnabled:{initialValue:!0},focusTimout:{initialValue:0},tooltipFollowsMouse:{initialValue:!0}}),t.MouseHandler=h}),ace.define("ace/mouse/fold_handler",["require","exports","module"],function(e,t,i){"use strict";t.FoldHandler=function(e){e.on("click",function(t){var i=t.getDocumentPosition(),n=e.session,r=n.getFoldAt(i.row,i.column,1);r&&(t.getAccelKey()?n.removeFold(r):n.expandFold(r),t.stop())}),e.on("gutterclick",function(t){if("foldWidgets"==e.renderer.$gutterLayer.getRegion(t)){var i=t.getDocumentPosition().row,n=e.session;n.foldWidgets&&n.foldWidgets[i]&&e.session.onFoldWidgetClick(i,t),e.isFocused()||e.focus(),t.stop()}}),e.on("gutterdblclick",function(t){if("foldWidgets"==e.renderer.$gutterLayer.getRegion(t)){var i=t.getDocumentPosition().row,n=e.session,r=n.getParentFoldRangeData(i,!0),o=r.range||r.firstRange;if(o){i=o.start.row;var s=n.getFoldAt(i,n.getLine(i).length,1);s?n.removeFold(s):(n.addFold("...",o),e.renderer.scrollCursorIntoView({row:o.start.row,column:0}))}t.stop()}})}}),ace.define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(e,t,i){"use strict";var n=e("../lib/keys"),r=e("../lib/event"),o=function(e){this.$editor=e,this.$data={editor:e},this.$handlers=[],this.setDefaultHandler(e.commands)};(function(){this.setDefaultHandler=function(e){this.removeKeyboardHandler(this.$defaultHandler),this.$defaultHandler=e,this.addKeyboardHandler(e,0)},this.setKeyboardHandler=function(e){var t=this.$handlers;if(t[t.length-1]!=e){for(;t[t.length-1]&&t[t.length-1]!=this.$defaultHandler;)this.removeKeyboardHandler(t[t.length-1]);this.addKeyboardHandler(e,1)}},this.addKeyboardHandler=function(e,t){if(e){"function"!=typeof e||e.handleKeyboard||(e.handleKeyboard=e);var i=this.$handlers.indexOf(e);-1!=i&&this.$handlers.splice(i,1),void 0==t?this.$handlers.push(e):this.$handlers.splice(t,0,e),-1==i&&e.attach&&e.attach(this.$editor)}},this.removeKeyboardHandler=function(e){var t=this.$handlers.indexOf(e);return-1!=t&&(this.$handlers.splice(t,1),e.detach&&e.detach(this.$editor),!0)},this.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]},this.getStatusText=function(){var e=this.$data,t=e.editor;return this.$handlers.map(function(i){return i.getStatusText&&i.getStatusText(t,e)||""}).filter(Boolean).join(" ")},this.$callKeyboardHandlers=function(e,t,i,n){for(var o,s=!1,a=this.$editor.commands,l=this.$handlers.length;l--&&!((o=this.$handlers[l].handleKeyboard(this.$data,e,t,i,n))&&o.command&&((s="null"==o.command||a.exec(o.command,this.$editor,o.args,n))&&n&&-1!=e&&1!=o.passEvent&&1!=o.command.passEvent&&r.stopEvent(n),s)););return s||-1!=e||(o={command:"insertstring"},s=a.exec("insertstring",this.$editor,t)),s&&this.$editor._signal("keyboardActivity",o),s},this.onCommandKey=function(e,t,i){var r=n.keyCodeToString(i);this.$callKeyboardHandlers(t,r,i,e)},this.onTextInput=function(e){this.$callKeyboardHandlers(-1,e)}}).call(o.prototype),t.KeyBinding=o}),ace.define("ace/range",["require","exports","module"],function(e,t,i){"use strict";var n=function(e,t,i,n){this.start={row:e,column:t},this.end={row:i,column:n}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return 0==this.compare(e,t)},this.compareRange=function(e){var t,i=e.end,n=e.start;return 1==(t=this.compare(i.row,i.column))?1==(t=this.compare(n.row,n.column))?2:0==t?1:0:-1==t?-2:-1==(t=this.compare(n.row,n.column))?-1:1==t?42:0},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return 0==this.comparePoint(e.start)&&0==this.comparePoint(e.end)},this.intersects=function(e){var t=this.compareRange(e);return-1==t||0==t||1==t},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){"object"==typeof e?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){"object"==typeof e?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return 0==this.compare(e,t)&&(!this.isEnd(e,t)&&!this.isStart(e,t))},this.insideStart=function(e,t){return 0==this.compare(e,t)&&!this.isEnd(e,t)},this.insideEnd=function(e,t){return 0==this.compare(e,t)&&!this.isStart(e,t)},this.compare=function(e,t){return this.isMultiLine()||e!==this.start.row?e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0:t<this.start.column?-1:t>this.end.column?1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var i={row:t+1,column:0};else if(this.end.row<e)i={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)r={row:e,column:0};return n.fromPoints(r||this.start,i||this.end)},this.extend=function(e,t){var i=this.compare(e,t);if(0==i)return this;if(-1==i)var r={row:e,column:t};else var o={row:e,column:t};return n.fromPoints(r||this.start,o||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return n.fromPoints(this.start,this.end)},this.collapseRows=function(){return 0==this.end.column?new n(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new n(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),i=e.documentToScreenPosition(this.end);return new n(t.row,t.column,i.row,i.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(n.prototype),n.fromPoints=function(e,t){return new n(e.row,e.column,t.row,t.column)},n.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},n.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=n}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/lang"),o=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,a=function(e){this.session=e,this.doc=e.getDocument(),this.clearSelection(),this.lead=this.selectionLead=this.doc.createAnchor(0,0),this.anchor=this.selectionAnchor=this.doc.createAnchor(0,0);var t=this;this.lead.on("change",function(e){t._emit("changeCursor"),t.$isEmpty||t._emit("changeSelection"),t.$keepDesiredColumnOnChange||e.old.column==e.value.column||(t.$desiredColumn=null)}),this.selectionAnchor.on("change",function(){t.$isEmpty||t._emit("changeSelection")})};(function(){n.implement(this,o),this.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},this.isMultiLine=function(){return!this.isEmpty()&&this.getRange().isMultiLine()},this.getCursor=function(){return this.lead.getPosition()},this.setSelectionAnchor=function(e,t){this.anchor.setPosition(e,t),this.$isEmpty&&(this.$isEmpty=!1,this._emit("changeSelection"))},this.getSelectionAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},this.getSelectionLead=function(){return this.lead.getPosition()},this.shiftSelection=function(e){if(this.$isEmpty)this.moveCursorTo(this.lead.row,this.lead.column+e);else{var t=this.getSelectionAnchor(),i=this.getSelectionLead(),n=this.isBackwards();n&&0===t.column||this.setSelectionAnchor(t.row,t.column+e),(n||0!==i.column)&&this.$moveSelection(function(){this.moveCursorTo(i.row,i.column+e)})}},this.isBackwards=function(){var e=this.anchor,t=this.lead;return e.row>t.row||e.row==t.row&&e.column>t.column},this.getRange=function(){var e=this.anchor,t=this.lead;return this.isEmpty()?s.fromPoints(t,t):this.isBackwards()?s.fromPoints(t,e):s.fromPoints(e,t)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){var e=this.doc.getLength()-1;this.setSelectionAnchor(0,0),this.moveCursorTo(e,this.doc.getLine(e).length)},this.setRange=this.setSelectionRange=function(e,t){t?(this.setSelectionAnchor(e.end.row,e.end.column),this.selectTo(e.start.row,e.start.column)):(this.setSelectionAnchor(e.start.row,e.start.column),this.selectTo(e.end.row,e.end.column)),this.getRange().isEmpty()&&(this.$isEmpty=!0),this.$desiredColumn=null},this.$moveSelection=function(e){var t=this.lead;this.$isEmpty&&this.setSelectionAnchor(t.row,t.column),e.call(this)},this.selectTo=function(e,t){this.$moveSelection(function(){this.moveCursorTo(e,t)})},this.selectToPosition=function(e){this.$moveSelection(function(){this.moveCursorToPosition(e)})},this.moveTo=function(e,t){this.clearSelection(),this.moveCursorTo(e,t)},this.moveToPosition=function(e){this.clearSelection(),this.moveCursorToPosition(e)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(e,t){if(void 0===t){var i=e||this.lead;e=i.row,t=i.column}return this.session.getWordRange(e,t)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var e=this.getCursor(),t=this.session.getAWordRange(e.row,e.column);this.setSelectionRange(t)},this.getLineRange=function(e,t){var i,n="number"==typeof e?e:this.lead.row,r=this.session.getFoldLine(n);return r?(n=r.start.row,i=r.end.row):i=n,!0===t?new s(n,0,i,this.session.getLine(i).length):new s(n,0,i+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.moveCursorLeft=function(){var e,t=this.lead.getPosition();if(e=this.session.getFoldAt(t.row,t.column,-1))this.moveCursorTo(e.start.row,e.start.column);else if(0===t.column)t.row>0&&this.moveCursorTo(t.row-1,this.doc.getLine(t.row-1).length);else{var i=this.session.getTabSize();this.session.isTabStop(t)&&this.doc.getLine(t.row).slice(t.column-i,t.column).split(" ").length-1==i?this.moveCursorBy(0,-i):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var e,t=this.lead.getPosition();if(e=this.session.getFoldAt(t.row,t.column,1))this.moveCursorTo(e.end.row,e.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row<this.doc.getLength()-1&&this.moveCursorTo(this.lead.row+1,0);else{var i=this.session.getTabSize();t=this.lead;this.session.isTabStop(t)&&this.doc.getLine(t.row).slice(t.column,t.column+i).split(" ").length-1==i?this.moveCursorBy(0,i):this.moveCursorBy(0,1)}},this.moveCursorLineStart=function(){var e=this.lead.row,t=this.lead.column,i=this.session.documentToScreenRow(e,t),n=this.session.screenToDocumentPosition(i,0),r=this.session.getDisplayLine(e,null,n.row,n.column).match(/^\s*/);r[0].length==t||this.session.$useEmacsStyleLineStart||(n.column+=r[0].length),this.moveCursorToPosition(n)},this.moveCursorLineEnd=function(){var e=this.lead,t=this.session.getDocumentLastRowColumnPosition(e.row,e.column);if(this.lead.column==t.column){var i=this.session.getLine(t.row);if(t.column==i.length){var n=i.search(/\s+$/);n>0&&(t.column=n)}}this.moveCursorTo(t.row,t.column)},this.moveCursorFileEnd=function(){var e=this.doc.getLength()-1,t=this.doc.getLine(e).length;this.moveCursorTo(e,t)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var e=this.lead.row,t=this.lead.column,i=this.doc.getLine(e),n=i.substring(t);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var r=this.session.getFoldAt(e,t,1);if(r)this.moveCursorTo(r.end.row,r.end.column);else{if(this.session.nonTokenRe.exec(n)&&(t+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,n=i.substring(t)),t>=i.length)return this.moveCursorTo(e,i.length),this.moveCursorRight(),void(e<this.doc.getLength()-1&&this.moveCursorWordRight());this.session.tokenRe.exec(n)&&(t+=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(e,t)}},this.moveCursorLongWordLeft=function(){var e,t=this.lead.row,i=this.lead.column;if(e=this.session.getFoldAt(t,i,-1))this.moveCursorTo(e.start.row,e.start.column);else{var n=this.session.getFoldStringAt(t,i,-1);null==n&&(n=this.doc.getLine(t).substring(0,i));var o=r.stringReverse(n);if(this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0,this.session.nonTokenRe.exec(o)&&(i-=this.session.nonTokenRe.lastIndex,o=o.slice(this.session.nonTokenRe.lastIndex),this.session.nonTokenRe.lastIndex=0),i<=0)return this.moveCursorTo(t,0),this.moveCursorLeft(),void(t>0&&this.moveCursorWordLeft());this.session.tokenRe.exec(o)&&(i-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(t,i)}},this.$shortWordEndIndex=function(e){var t,i=0,n=/\s/,r=this.session.tokenRe;if(r.lastIndex=0,this.session.tokenRe.exec(e))i=this.session.tokenRe.lastIndex;else{for(;(t=e[i])&&n.test(t);)i++;if(i<1)for(r.lastIndex=0;(t=e[i])&&!r.test(t);)if(r.lastIndex=0,i++,n.test(t)){if(i>2){i--;break}for(;(t=e[i])&&n.test(t);)i++;if(i>2)break}}return r.lastIndex=0,i},this.moveCursorShortWordRight=function(){var e=this.lead.row,t=this.lead.column,i=this.doc.getLine(e),n=i.substring(t),r=this.session.getFoldAt(e,t,1);if(r)return this.moveCursorTo(r.end.row,r.end.column);if(t==i.length){var o=this.doc.getLength();do{e++,n=this.doc.getLine(e)}while(e<o&&/^\s*$/.test(n));/^\s+/.test(n)||(n=""),t=0}var s=this.$shortWordEndIndex(n);this.moveCursorTo(e,t+s)},this.moveCursorShortWordLeft=function(){var e,t=this.lead.row,i=this.lead.column;if(e=this.session.getFoldAt(t,i,-1))return this.moveCursorTo(e.start.row,e.start.column);var n=this.session.getLine(t).substring(0,i);if(0===i){do{t--,n=this.doc.getLine(t)}while(t>0&&/^\s*$/.test(n));i=n.length,/\s+$/.test(n)||(n="")}var o=r.stringReverse(n),s=this.$shortWordEndIndex(o);return this.moveCursorTo(t,i-s)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(e,t){var i=this.session.documentToScreenPosition(this.lead.row,this.lead.column);0===t&&(this.$desiredColumn?i.column=this.$desiredColumn:this.$desiredColumn=i.column);var n=this.session.screenToDocumentPosition(i.row+e,i.column);0!==e&&0===t&&n.row===this.lead.row&&n.column===this.lead.column&&this.session.lineWidgets&&this.session.lineWidgets[n.row]&&(n.row>0||e>0)&&n.row++,this.moveCursorTo(n.row,n.column+t,0===t)},this.moveCursorToPosition=function(e){this.moveCursorTo(e.row,e.column)},this.moveCursorTo=function(e,t,i){var n=this.session.getFoldAt(e,t,1);n&&(e=n.start.row,t=n.start.column),this.$keepDesiredColumnOnChange=!0,this.lead.setPosition(e,t),this.$keepDesiredColumnOnChange=!1,i||(this.$desiredColumn=null)},this.moveCursorToScreen=function(e,t,i){var n=this.session.screenToDocumentPosition(e,t);this.moveCursorTo(n.row,n.column,i)},this.detach=function(){this.lead.detach(),this.anchor.detach(),this.session=this.doc=null},this.fromOrientedRange=function(e){this.setSelectionRange(e,e.cursor==e.start),this.$desiredColumn=e.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(e){var t=this.getRange();return e?(e.start.column=t.start.column,e.start.row=t.start.row,e.end.column=t.end.column,e.end.row=t.end.row):e=t,e.cursor=this.isBackwards()?e.start:e.end,e.desiredColumn=this.$desiredColumn,e},this.getRangeOfMovements=function(e){var t=this.getCursor();try{e(this);var i=this.getCursor();return s.fromPoints(t,i)}catch(e){return s.fromPoints(t,t)}finally{this.moveCursorToPosition(t)}},this.toJSON=function(){if(this.rangeCount)var e=this.ranges.map(function(e){var t=e.clone();return t.isBackwards=e.cursor==e.start,t});else(e=this.getRange()).isBackwards=this.isBackwards();return e},this.fromJSON=function(e){if(void 0==e.start){if(this.rangeList){this.toSingleRange(e[0]);for(var t=e.length;t--;){var i=s.fromPoints(e[t].start,e[t].end);e[t].isBackwards&&(i.cursor=i.start),this.addRange(i,!0)}return}e=e[0]}this.rangeList&&this.toSingleRange(e),this.setSelectionRange(e,e.isBackwards)},this.isEqual=function(e){if((e.length||this.rangeCount)&&e.length!=this.rangeCount)return!1;if(!e.length||!this.ranges)return this.getRange().isEqual(e);for(var t=this.ranges.length;t--;)if(!this.ranges[t].isEqual(e[t]))return!1;return!0}}).call(a.prototype),t.Selection=a}),ace.define("ace/tokenizer",["require","exports","module","ace/config"],function(e,t,i){"use strict";var n=e("./config"),r=2e3,o=function(e){for(var t in this.states=e,this.regExps={},this.matchMappings={},this.states){for(var i=this.states[t],n=[],r=0,o=this.matchMappings[t]={defaultToken:"text"},s="g",a=[],l=0;l<i.length;l++){var c=i[l];if(c.defaultToken&&(o.defaultToken=c.defaultToken),c.caseInsensitive&&(s="gi"),null!=c.regex){c.regex instanceof RegExp&&(c.regex=c.regex.toString().slice(1,-1));var h=c.regex,u=new RegExp("(?:("+h+")|(.))").exec("a").length-2;Array.isArray(c.token)?1==c.token.length||1==u?c.token=c.token[0]:u-1!=c.token.length?(this.reportError("number of classes and regexp groups doesn't match",{rule:c,groupCount:u-1}),c.token=c.token[0]):(c.tokenArray=c.token,c.token=null,c.onMatch=this.$arrayTokens):"function"!=typeof c.token||c.onMatch||(c.onMatch=u>1?this.$applyToken:c.token),u>1&&(/\\\d/.test(c.regex)?h=c.regex.replace(/\\([0-9]+)/g,function(e,t){return"\\"+(parseInt(t,10)+r+1)}):(u=1,h=this.removeCapturingGroups(c.regex)),c.splitRegex||"string"==typeof c.token||a.push(c)),o[r]=l,r+=u,n.push(h),c.onMatch||(c.onMatch=null)}}n.length||(o[0]=0,n.push("$")),a.forEach(function(e){e.splitRegex=this.createSplitterRegexp(e.regex,s)},this),this.regExps[t]=new RegExp("("+n.join(")|(")+")|($)",s)}};(function(){this.$setMaxTokenCount=function(e){r=0|e},this.$applyToken=function(e){var t=this.splitRegex.exec(e).slice(1),i=this.token.apply(this,t);if("string"==typeof i)return[{type:i,value:e}];for(var n=[],r=0,o=i.length;r<o;r++)t[r]&&(n[n.length]={type:i[r],value:t[r]});return n},this.$arrayTokens=function(e){if(!e)return[];var t=this.splitRegex.exec(e);if(!t)return"text";for(var i=[],n=this.tokenArray,r=0,o=n.length;r<o;r++)t[r+1]&&(i[i.length]={type:n[r],value:t[r+1]});return i},this.removeCapturingGroups=function(e){return e.replace(/\[(?:\\.|[^\]])*?\]|\\.|\(\?[:=!]|(\()/g,function(e,t){return t?"(?:":e})},this.createSplitterRegexp=function(e,t){if(-1!=e.indexOf("(?=")){var i=0,n=!1,r={};e.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(e,t,o,s,a,l){return n?n="]"!=a:a?n=!0:s?(i==r.stack&&(r.end=l+1,r.stack=-1),i--):o&&(i++,1!=o.length&&(r.stack=i,r.start=l)),e}),null!=r.end&&/^\)*$/.test(e.substr(r.end))&&(e=e.substring(0,r.start)+e.substr(r.end))}return"^"!=e.charAt(0)&&(e="^"+e),"$"!=e.charAt(e.length-1)&&(e+="$"),new RegExp(e,(t||"").replace("g",""))},this.getLineTokens=function(e,t){if(t&&"string"!=typeof t)"#tmp"===(t=(i=t.slice(0))[0])&&(i.shift(),t=i.shift());else var i=[];var n=t||"start",o=this.states[n];o||(n="start",o=this.states[n]);var s=this.matchMappings[n],a=this.regExps[n];a.lastIndex=0;for(var l,c=[],h=0,u=0,d={type:null,value:""};l=a.exec(e);){var f=s.defaultToken,p=null,m=l[0],g=a.lastIndex;if(g-m.length>h){var v=e.substring(h,g-m.length);d.type==f?d.value+=v:(d.type&&c.push(d),d={type:f,value:v})}for(var y=0;y<l.length-2;y++)if(void 0!==l[y+1]){f=(p=o[s[y]]).onMatch?p.onMatch(m,n,i):p.token,p.next&&(n="string"==typeof p.next?p.next:p.next(n,i),(o=this.states[n])||(this.reportError("state doesn't exist",n),n="start",o=this.states[n]),s=this.matchMappings[n],h=g,(a=this.regExps[n]).lastIndex=g);break}if(m)if("string"==typeof f)p&&!1===p.merge||d.type!==f?(d.type&&c.push(d),d={type:f,value:m}):d.value+=m;else if(f){d.type&&c.push(d),d={type:null,value:""};for(y=0;y<f.length;y++)c.push(f[y])}if(h==e.length)break;if(h=g,u++>r){for(u>2*e.length&&this.reportError("infinite loop with in ace tokenizer",{startState:t,line:e});h<e.length;)d.type&&c.push(d),d={value:e.substring(h,h+=2e3),type:"overflow"};n="start",i=[];break}}return d.type&&c.push(d),i.length>1&&i[0]!==n&&i.unshift("#tmp",n),{tokens:c,state:i.length?i:n}},this.reportError=n.reportError}).call(o.prototype),t.Tokenizer=o}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(e,t,i){"use strict";var n=e("../lib/lang"),r=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(e,t){if(t)for(var i in e){for(var n=e[i],r=0;r<n.length;r++){var o=n[r];(o.next||o.onMatch)&&("string"==typeof o.next&&0!==o.next.indexOf(t)&&(o.next=t+o.next),o.nextState&&0!==o.nextState.indexOf(t)&&(o.nextState=t+o.nextState))}this.$rules[t+i]=n}else for(var i in e)this.$rules[i]=e[i]},this.getRules=function(){return this.$rules},this.embedRules=function(e,t,i,r,o){var s="function"==typeof e?(new e).getRules():e;if(r)for(var a=0;a<r.length;a++)r[a]=t+r[a];else for(var l in r=[],s)r.push(t+l);if(this.addRules(s,t),i){var c=Array.prototype[o?"push":"unshift"];for(a=0;a<r.length;a++)c.apply(this.$rules[r[a]],n.deepCopy(i))}this.$embeds||(this.$embeds=[]),this.$embeds.push(t)},this.getEmbeds=function(){return this.$embeds};var e=function(e,t){return("start"!=e||t.length)&&t.unshift(this.nextState,e),this.nextState},t=function(e,t){return t.shift(),t.shift()||"start"};this.normalizeRules=function(){var i=0,n=this.$rules;Object.keys(n).forEach(function r(o){var s=n[o];s.processed=!0;for(var a=0;a<s.length;a++){var l=s[a];!l.regex&&l.start&&(l.regex=l.start,l.next||(l.next=[]),l.next.push({defaultToken:l.token},{token:l.token+".end",regex:l.end||l.start,next:"pop"}),l.token=l.token+".start",l.push=!0);var c=l.next||l.push;if(c&&Array.isArray(c)){var h=l.stateName;h||("string"!=typeof(h=l.token)&&(h=h[0]||""),n[h]&&(h+=i++)),n[h]=c,l.next=h,r(h)}else"pop"==c&&(l.next=t);if(l.push&&(l.nextState=l.next||l.push,l.next=e,delete l.push),l.rules)for(var u in l.rules)n[u]?n[u].push&&n[u].push.apply(n[u],l.rules[u]):n[u]=l.rules[u];if(l.include||"string"==typeof l)var d=l.include||l,f=n[d];else Array.isArray(l)&&(f=l);if(f){var p=[a,1].concat(f);l.noEscape&&(p=p.filter(function(e){return!e.next})),s.splice.apply(s,p),a--,f=null}l.keywordMap&&(l.token=this.createKeywordMapper(l.keywordMap,l.defaultToken||"text",l.caseInsensitive),delete l.defaultToken)}},this)},this.createKeywordMapper=function(e,t,i,n){var r=Object.create(null);return Object.keys(e).forEach(function(t){var o=e[t];i&&(o=o.toLowerCase());for(var s=o.split(n||"|"),a=s.length;a--;)r[s[a]]=t}),Object.getPrototypeOf(r)&&(r.__proto__=null),this.$keywordList=Object.keys(r),e=null,i?function(e){return r[e.toLowerCase()]||t}:function(e){return r[e]||t}},this.getKeywords=function(){return this.$keywords}}).call(r.prototype),t.TextHighlightRules=r}),ace.define("ace/mode/behaviour",["require","exports","module"],function(e,t,i){"use strict";var n=function(){this.$behaviours={}};(function(){this.add=function(e,t,i){switch(void 0){case this.$behaviours:this.$behaviours={};case this.$behaviours[e]:this.$behaviours[e]={}}this.$behaviours[e][t]=i},this.addBehaviours=function(e){for(var t in e)for(var i in e[t])this.add(t,i,e[t][i])},this.remove=function(e){this.$behaviours&&this.$behaviours[e]&&delete this.$behaviours[e]},this.inherit=function(e,t){if("function"==typeof e)var i=(new e).getBehaviours(t);else i=e.getBehaviours(t);this.addBehaviours(i)},this.getBehaviours=function(e){if(e){for(var t={},i=0;i<e.length;i++)this.$behaviours[e[i]]&&(t[e[i]]=this.$behaviours[e[i]]);return t}return this.$behaviours}}).call(n.prototype),t.Behaviour=n}),ace.define("ace/unicode",["require","exports","module"],function(e,t,i){"use strict";t.packages={},function(e){var i=/\w{4}/g;for(var n in e)t.packages[n]=e[n].replace(i,"\\u$&")}({L:"0041-005A0061-007A00AA00B500BA00C0-00D600D8-00F600F8-02C102C6-02D102E0-02E402EC02EE0370-037403760377037A-037D03860388-038A038C038E-03A103A3-03F503F7-0481048A-05250531-055605590561-058705D0-05EA05F0-05F20621-064A066E066F0671-06D306D506E506E606EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA07F407F507FA0800-0815081A082408280904-0939093D09500958-0961097109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E460E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EC60EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10A0-10C510D0-10FA10FC1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317D717DC1820-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541AA71B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C7D1CE9-1CEC1CEE-1CF11D00-1DBF1E00-1F151F18-1F1D1F20-1F451F48-1F4D1F50-1F571F591F5B1F5D1F5F-1F7D1F80-1FB41FB6-1FBC1FBE1FC2-1FC41FC6-1FCC1FD0-1FD31FD6-1FDB1FE0-1FEC1FF2-1FF41FF6-1FFC2071207F2090-209421022107210A-211321152119-211D212421262128212A-212D212F-2139213C-213F2145-2149214E218321842C00-2C2E2C30-2C5E2C60-2CE42CEB-2CEE2D00-2D252D30-2D652D6F2D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE2E2F300530063031-3035303B303C3041-3096309D-309F30A1-30FA30FC-30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A48CA4D0-A4FDA500-A60CA610-A61FA62AA62BA640-A65FA662-A66EA67F-A697A6A0-A6E5A717-A71FA722-A788A78BA78CA7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2A9CFAA00-AA28AA40-AA42AA44-AA4BAA60-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADB-AADDABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB00-FB06FB13-FB17FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF21-FF3AFF41-FF5AFF66-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",Ll:"0061-007A00AA00B500BA00DF-00F600F8-00FF01010103010501070109010B010D010F01110113011501170119011B011D011F01210123012501270129012B012D012F01310133013501370138013A013C013E014001420144014601480149014B014D014F01510153015501570159015B015D015F01610163016501670169016B016D016F0171017301750177017A017C017E-0180018301850188018C018D019201950199-019B019E01A101A301A501A801AA01AB01AD01B001B401B601B901BA01BD-01BF01C601C901CC01CE01D001D201D401D601D801DA01DC01DD01DF01E101E301E501E701E901EB01ED01EF01F001F301F501F901FB01FD01FF02010203020502070209020B020D020F02110213021502170219021B021D021F02210223022502270229022B022D022F02310233-0239023C023F0240024202470249024B024D024F-02930295-02AF037103730377037B-037D039003AC-03CE03D003D103D5-03D703D903DB03DD03DF03E103E303E503E703E903EB03ED03EF-03F303F503F803FB03FC0430-045F04610463046504670469046B046D046F04710473047504770479047B047D047F0481048B048D048F04910493049504970499049B049D049F04A104A304A504A704A904AB04AD04AF04B104B304B504B704B904BB04BD04BF04C204C404C604C804CA04CC04CE04CF04D104D304D504D704D904DB04DD04DF04E104E304E504E704E904EB04ED04EF04F104F304F504F704F904FB04FD04FF05010503050505070509050B050D050F05110513051505170519051B051D051F0521052305250561-05871D00-1D2B1D62-1D771D79-1D9A1E011E031E051E071E091E0B1E0D1E0F1E111E131E151E171E191E1B1E1D1E1F1E211E231E251E271E291E2B1E2D1E2F1E311E331E351E371E391E3B1E3D1E3F1E411E431E451E471E491E4B1E4D1E4F1E511E531E551E571E591E5B1E5D1E5F1E611E631E651E671E691E6B1E6D1E6F1E711E731E751E771E791E7B1E7D1E7F1E811E831E851E871E891E8B1E8D1E8F1E911E931E95-1E9D1E9F1EA11EA31EA51EA71EA91EAB1EAD1EAF1EB11EB31EB51EB71EB91EBB1EBD1EBF1EC11EC31EC51EC71EC91ECB1ECD1ECF1ED11ED31ED51ED71ED91EDB1EDD1EDF1EE11EE31EE51EE71EE91EEB1EED1EEF1EF11EF31EF51EF71EF91EFB1EFD1EFF-1F071F10-1F151F20-1F271F30-1F371F40-1F451F50-1F571F60-1F671F70-1F7D1F80-1F871F90-1F971FA0-1FA71FB0-1FB41FB61FB71FBE1FC2-1FC41FC61FC71FD0-1FD31FD61FD71FE0-1FE71FF2-1FF41FF61FF7210A210E210F2113212F21342139213C213D2146-2149214E21842C30-2C5E2C612C652C662C682C6A2C6C2C712C732C742C76-2C7C2C812C832C852C872C892C8B2C8D2C8F2C912C932C952C972C992C9B2C9D2C9F2CA12CA32CA52CA72CA92CAB2CAD2CAF2CB12CB32CB52CB72CB92CBB2CBD2CBF2CC12CC32CC52CC72CC92CCB2CCD2CCF2CD12CD32CD52CD72CD92CDB2CDD2CDF2CE12CE32CE42CEC2CEE2D00-2D25A641A643A645A647A649A64BA64DA64FA651A653A655A657A659A65BA65DA65FA663A665A667A669A66BA66DA681A683A685A687A689A68BA68DA68FA691A693A695A697A723A725A727A729A72BA72DA72F-A731A733A735A737A739A73BA73DA73FA741A743A745A747A749A74BA74DA74FA751A753A755A757A759A75BA75DA75FA761A763A765A767A769A76BA76DA76FA771-A778A77AA77CA77FA781A783A785A787A78CFB00-FB06FB13-FB17FF41-FF5A",Lu:"0041-005A00C0-00D600D8-00DE01000102010401060108010A010C010E01100112011401160118011A011C011E01200122012401260128012A012C012E01300132013401360139013B013D013F0141014301450147014A014C014E01500152015401560158015A015C015E01600162016401660168016A016C016E017001720174017601780179017B017D018101820184018601870189-018B018E-0191019301940196-0198019C019D019F01A001A201A401A601A701A901AC01AE01AF01B1-01B301B501B701B801BC01C401C701CA01CD01CF01D101D301D501D701D901DB01DE01E001E201E401E601E801EA01EC01EE01F101F401F6-01F801FA01FC01FE02000202020402060208020A020C020E02100212021402160218021A021C021E02200222022402260228022A022C022E02300232023A023B023D023E02410243-02460248024A024C024E03700372037603860388-038A038C038E038F0391-03A103A3-03AB03CF03D2-03D403D803DA03DC03DE03E003E203E403E603E803EA03EC03EE03F403F703F903FA03FD-042F04600462046404660468046A046C046E04700472047404760478047A047C047E0480048A048C048E04900492049404960498049A049C049E04A004A204A404A604A804AA04AC04AE04B004B204B404B604B804BA04BC04BE04C004C104C304C504C704C904CB04CD04D004D204D404D604D804DA04DC04DE04E004E204E404E604E804EA04EC04EE04F004F204F404F604F804FA04FC04FE05000502050405060508050A050C050E05100512051405160518051A051C051E0520052205240531-055610A0-10C51E001E021E041E061E081E0A1E0C1E0E1E101E121E141E161E181E1A1E1C1E1E1E201E221E241E261E281E2A1E2C1E2E1E301E321E341E361E381E3A1E3C1E3E1E401E421E441E461E481E4A1E4C1E4E1E501E521E541E561E581E5A1E5C1E5E1E601E621E641E661E681E6A1E6C1E6E1E701E721E741E761E781E7A1E7C1E7E1E801E821E841E861E881E8A1E8C1E8E1E901E921E941E9E1EA01EA21EA41EA61EA81EAA1EAC1EAE1EB01EB21EB41EB61EB81EBA1EBC1EBE1EC01EC21EC41EC61EC81ECA1ECC1ECE1ED01ED21ED41ED61ED81EDA1EDC1EDE1EE01EE21EE41EE61EE81EEA1EEC1EEE1EF01EF21EF41EF61EF81EFA1EFC1EFE1F08-1F0F1F18-1F1D1F28-1F2F1F38-1F3F1F48-1F4D1F591F5B1F5D1F5F1F68-1F6F1FB8-1FBB1FC8-1FCB1FD8-1FDB1FE8-1FEC1FF8-1FFB21022107210B-210D2110-211221152119-211D212421262128212A-212D2130-2133213E213F214521832C00-2C2E2C602C62-2C642C672C692C6B2C6D-2C702C722C752C7E-2C802C822C842C862C882C8A2C8C2C8E2C902C922C942C962C982C9A2C9C2C9E2CA02CA22CA42CA62CA82CAA2CAC2CAE2CB02CB22CB42CB62CB82CBA2CBC2CBE2CC02CC22CC42CC62CC82CCA2CCC2CCE2CD02CD22CD42CD62CD82CDA2CDC2CDE2CE02CE22CEB2CEDA640A642A644A646A648A64AA64CA64EA650A652A654A656A658A65AA65CA65EA662A664A666A668A66AA66CA680A682A684A686A688A68AA68CA68EA690A692A694A696A722A724A726A728A72AA72CA72EA732A734A736A738A73AA73CA73EA740A742A744A746A748A74AA74CA74EA750A752A754A756A758A75AA75CA75EA760A762A764A766A768A76AA76CA76EA779A77BA77DA77EA780A782A784A786A78BFF21-FF3A",Lt:"01C501C801CB01F21F88-1F8F1F98-1F9F1FA8-1FAF1FBC1FCC1FFC",Lm:"02B0-02C102C6-02D102E0-02E402EC02EE0374037A0559064006E506E607F407F507FA081A0824082809710E460EC610FC17D718431AA71C78-1C7D1D2C-1D611D781D9B-1DBF2071207F2090-20942C7D2D6F2E2F30053031-3035303B309D309E30FC-30FEA015A4F8-A4FDA60CA67FA717-A71FA770A788A9CFAA70AADDFF70FF9EFF9F",Lo:"01BB01C0-01C3029405D0-05EA05F0-05F20621-063F0641-064A066E066F0671-06D306D506EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA0800-08150904-0939093D09500958-096109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E450E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10D0-10FA1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317DC1820-18421844-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C771CE9-1CEC1CEE-1CF12135-21382D30-2D652D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE3006303C3041-3096309F30A1-30FA30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A014A016-A48CA4D0-A4F7A500-A60BA610-A61FA62AA62BA66EA6A0-A6E5A7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2AA00-AA28AA40-AA42AA44-AA4BAA60-AA6FAA71-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADBAADCABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF66-FF6FFF71-FF9DFFA0-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",M:"0300-036F0483-04890591-05BD05BF05C105C205C405C505C70610-061A064B-065E067006D6-06DC06DE-06E406E706E806EA-06ED07110730-074A07A6-07B007EB-07F30816-0819081B-08230825-08270829-082D0900-0903093C093E-094E0951-0955096209630981-098309BC09BE-09C409C709C809CB-09CD09D709E209E30A01-0A030A3C0A3E-0A420A470A480A4B-0A4D0A510A700A710A750A81-0A830ABC0ABE-0AC50AC7-0AC90ACB-0ACD0AE20AE30B01-0B030B3C0B3E-0B440B470B480B4B-0B4D0B560B570B620B630B820BBE-0BC20BC6-0BC80BCA-0BCD0BD70C01-0C030C3E-0C440C46-0C480C4A-0C4D0C550C560C620C630C820C830CBC0CBE-0CC40CC6-0CC80CCA-0CCD0CD50CD60CE20CE30D020D030D3E-0D440D46-0D480D4A-0D4D0D570D620D630D820D830DCA0DCF-0DD40DD60DD8-0DDF0DF20DF30E310E34-0E3A0E47-0E4E0EB10EB4-0EB90EBB0EBC0EC8-0ECD0F180F190F350F370F390F3E0F3F0F71-0F840F860F870F90-0F970F99-0FBC0FC6102B-103E1056-1059105E-10601062-10641067-106D1071-10741082-108D108F109A-109D135F1712-17141732-1734175217531772177317B6-17D317DD180B-180D18A91920-192B1930-193B19B0-19C019C819C91A17-1A1B1A55-1A5E1A60-1A7C1A7F1B00-1B041B34-1B441B6B-1B731B80-1B821BA1-1BAA1C24-1C371CD0-1CD21CD4-1CE81CED1CF21DC0-1DE61DFD-1DFF20D0-20F02CEF-2CF12DE0-2DFF302A-302F3099309AA66F-A672A67CA67DA6F0A6F1A802A806A80BA823-A827A880A881A8B4-A8C4A8E0-A8F1A926-A92DA947-A953A980-A983A9B3-A9C0AA29-AA36AA43AA4CAA4DAA7BAAB0AAB2-AAB4AAB7AAB8AABEAABFAAC1ABE3-ABEAABECABEDFB1EFE00-FE0FFE20-FE26",Mn:"0300-036F0483-04870591-05BD05BF05C105C205C405C505C70610-061A064B-065E067006D6-06DC06DF-06E406E706E806EA-06ED07110730-074A07A6-07B007EB-07F30816-0819081B-08230825-08270829-082D0900-0902093C0941-0948094D0951-095509620963098109BC09C1-09C409CD09E209E30A010A020A3C0A410A420A470A480A4B-0A4D0A510A700A710A750A810A820ABC0AC1-0AC50AC70AC80ACD0AE20AE30B010B3C0B3F0B41-0B440B4D0B560B620B630B820BC00BCD0C3E-0C400C46-0C480C4A-0C4D0C550C560C620C630CBC0CBF0CC60CCC0CCD0CE20CE30D41-0D440D4D0D620D630DCA0DD2-0DD40DD60E310E34-0E3A0E47-0E4E0EB10EB4-0EB90EBB0EBC0EC8-0ECD0F180F190F350F370F390F71-0F7E0F80-0F840F860F870F90-0F970F99-0FBC0FC6102D-10301032-10371039103A103D103E10581059105E-10601071-1074108210851086108D109D135F1712-17141732-1734175217531772177317B7-17BD17C617C9-17D317DD180B-180D18A91920-19221927192819321939-193B1A171A181A561A58-1A5E1A601A621A65-1A6C1A73-1A7C1A7F1B00-1B031B341B36-1B3A1B3C1B421B6B-1B731B801B811BA2-1BA51BA81BA91C2C-1C331C361C371CD0-1CD21CD4-1CE01CE2-1CE81CED1DC0-1DE61DFD-1DFF20D0-20DC20E120E5-20F02CEF-2CF12DE0-2DFF302A-302F3099309AA66FA67CA67DA6F0A6F1A802A806A80BA825A826A8C4A8E0-A8F1A926-A92DA947-A951A980-A982A9B3A9B6-A9B9A9BCAA29-AA2EAA31AA32AA35AA36AA43AA4CAAB0AAB2-AAB4AAB7AAB8AABEAABFAAC1ABE5ABE8ABEDFB1EFE00-FE0FFE20-FE26",Mc:"0903093E-09400949-094C094E0982098309BE-09C009C709C809CB09CC09D70A030A3E-0A400A830ABE-0AC00AC90ACB0ACC0B020B030B3E0B400B470B480B4B0B4C0B570BBE0BBF0BC10BC20BC6-0BC80BCA-0BCC0BD70C01-0C030C41-0C440C820C830CBE0CC0-0CC40CC70CC80CCA0CCB0CD50CD60D020D030D3E-0D400D46-0D480D4A-0D4C0D570D820D830DCF-0DD10DD8-0DDF0DF20DF30F3E0F3F0F7F102B102C10311038103B103C105610571062-10641067-106D108310841087-108C108F109A-109C17B617BE-17C517C717C81923-19261929-192B193019311933-193819B0-19C019C819C91A19-1A1B1A551A571A611A631A641A6D-1A721B041B351B3B1B3D-1B411B431B441B821BA11BA61BA71BAA1C24-1C2B1C341C351CE11CF2A823A824A827A880A881A8B4-A8C3A952A953A983A9B4A9B5A9BAA9BBA9BD-A9C0AA2FAA30AA33AA34AA4DAA7BABE3ABE4ABE6ABE7ABE9ABEAABEC",Me:"0488048906DE20DD-20E020E2-20E4A670-A672",N:"0030-003900B200B300B900BC-00BE0660-066906F0-06F907C0-07C90966-096F09E6-09EF09F4-09F90A66-0A6F0AE6-0AEF0B66-0B6F0BE6-0BF20C66-0C6F0C78-0C7E0CE6-0CEF0D66-0D750E50-0E590ED0-0ED90F20-0F331040-10491090-10991369-137C16EE-16F017E0-17E917F0-17F91810-18191946-194F19D0-19DA1A80-1A891A90-1A991B50-1B591BB0-1BB91C40-1C491C50-1C5920702074-20792080-20892150-21822185-21892460-249B24EA-24FF2776-27932CFD30073021-30293038-303A3192-31953220-32293251-325F3280-328932B1-32BFA620-A629A6E6-A6EFA830-A835A8D0-A8D9A900-A909A9D0-A9D9AA50-AA59ABF0-ABF9FF10-FF19",Nd:"0030-00390660-066906F0-06F907C0-07C90966-096F09E6-09EF0A66-0A6F0AE6-0AEF0B66-0B6F0BE6-0BEF0C66-0C6F0CE6-0CEF0D66-0D6F0E50-0E590ED0-0ED90F20-0F291040-10491090-109917E0-17E91810-18191946-194F19D0-19DA1A80-1A891A90-1A991B50-1B591BB0-1BB91C40-1C491C50-1C59A620-A629A8D0-A8D9A900-A909A9D0-A9D9AA50-AA59ABF0-ABF9FF10-FF19",Nl:"16EE-16F02160-21822185-218830073021-30293038-303AA6E6-A6EF",No:"00B200B300B900BC-00BE09F4-09F90BF0-0BF20C78-0C7E0D70-0D750F2A-0F331369-137C17F0-17F920702074-20792080-20892150-215F21892460-249B24EA-24FF2776-27932CFD3192-31953220-32293251-325F3280-328932B1-32BFA830-A835",P:"0021-00230025-002A002C-002F003A003B003F0040005B-005D005F007B007D00A100AB00B700BB00BF037E0387055A-055F0589058A05BE05C005C305C605F305F40609060A060C060D061B061E061F066A-066D06D40700-070D07F7-07F90830-083E0964096509700DF40E4F0E5A0E5B0F04-0F120F3A-0F3D0F850FD0-0FD4104A-104F10FB1361-13681400166D166E169B169C16EB-16ED1735173617D4-17D617D8-17DA1800-180A1944194519DE19DF1A1E1A1F1AA0-1AA61AA8-1AAD1B5A-1B601C3B-1C3F1C7E1C7F1CD32010-20272030-20432045-20512053-205E207D207E208D208E2329232A2768-277527C527C627E6-27EF2983-299829D8-29DB29FC29FD2CF9-2CFC2CFE2CFF2E00-2E2E2E302E313001-30033008-30113014-301F3030303D30A030FBA4FEA4FFA60D-A60FA673A67EA6F2-A6F7A874-A877A8CEA8CFA8F8-A8FAA92EA92FA95FA9C1-A9CDA9DEA9DFAA5C-AA5FAADEAADFABEBFD3EFD3FFE10-FE19FE30-FE52FE54-FE61FE63FE68FE6AFE6BFF01-FF03FF05-FF0AFF0C-FF0FFF1AFF1BFF1FFF20FF3B-FF3DFF3FFF5BFF5DFF5F-FF65",Pd:"002D058A05BE140018062010-20152E172E1A301C303030A0FE31FE32FE58FE63FF0D",Ps:"0028005B007B0F3A0F3C169B201A201E2045207D208D23292768276A276C276E27702772277427C527E627E827EA27EC27EE2983298529872989298B298D298F299129932995299729D829DA29FC2E222E242E262E283008300A300C300E3010301430163018301A301DFD3EFE17FE35FE37FE39FE3BFE3DFE3FFE41FE43FE47FE59FE5BFE5DFF08FF3BFF5BFF5FFF62",Pe:"0029005D007D0F3B0F3D169C2046207E208E232A2769276B276D276F27712773277527C627E727E927EB27ED27EF298429862988298A298C298E2990299229942996299829D929DB29FD2E232E252E272E293009300B300D300F3011301530173019301B301E301FFD3FFE18FE36FE38FE3AFE3CFE3EFE40FE42FE44FE48FE5AFE5CFE5EFF09FF3DFF5DFF60FF63",Pi:"00AB2018201B201C201F20392E022E042E092E0C2E1C2E20",Pf:"00BB2019201D203A2E032E052E0A2E0D2E1D2E21",Pc:"005F203F20402054FE33FE34FE4D-FE4FFF3F",Po:"0021-00230025-0027002A002C002E002F003A003B003F0040005C00A100B700BF037E0387055A-055F058905C005C305C605F305F40609060A060C060D061B061E061F066A-066D06D40700-070D07F7-07F90830-083E0964096509700DF40E4F0E5A0E5B0F04-0F120F850FD0-0FD4104A-104F10FB1361-1368166D166E16EB-16ED1735173617D4-17D617D8-17DA1800-18051807-180A1944194519DE19DF1A1E1A1F1AA0-1AA61AA8-1AAD1B5A-1B601C3B-1C3F1C7E1C7F1CD3201620172020-20272030-2038203B-203E2041-20432047-205120532055-205E2CF9-2CFC2CFE2CFF2E002E012E06-2E082E0B2E0E-2E162E182E192E1B2E1E2E1F2E2A-2E2E2E302E313001-3003303D30FBA4FEA4FFA60D-A60FA673A67EA6F2-A6F7A874-A877A8CEA8CFA8F8-A8FAA92EA92FA95FA9C1-A9CDA9DEA9DFAA5C-AA5FAADEAADFABEBFE10-FE16FE19FE30FE45FE46FE49-FE4CFE50-FE52FE54-FE57FE5F-FE61FE68FE6AFE6BFF01-FF03FF05-FF07FF0AFF0CFF0EFF0FFF1AFF1BFF1FFF20FF3CFF61FF64FF65",S:"0024002B003C-003E005E0060007C007E00A2-00A900AC00AE-00B100B400B600B800D700F702C2-02C502D2-02DF02E5-02EB02ED02EF-02FF03750384038503F604820606-0608060B060E060F06E906FD06FE07F609F209F309FA09FB0AF10B700BF3-0BFA0C7F0CF10CF20D790E3F0F01-0F030F13-0F170F1A-0F1F0F340F360F380FBE-0FC50FC7-0FCC0FCE0FCF0FD5-0FD8109E109F13601390-139917DB194019E0-19FF1B61-1B6A1B74-1B7C1FBD1FBF-1FC11FCD-1FCF1FDD-1FDF1FED-1FEF1FFD1FFE20442052207A-207C208A-208C20A0-20B8210021012103-21062108210921142116-2118211E-2123212521272129212E213A213B2140-2144214A-214D214F2190-2328232B-23E82400-24262440-244A249C-24E92500-26CD26CF-26E126E326E8-26FF2701-27042706-2709270C-27272729-274B274D274F-27522756-275E2761-276727942798-27AF27B1-27BE27C0-27C427C7-27CA27CC27D0-27E527F0-29822999-29D729DC-29FB29FE-2B4C2B50-2B592CE5-2CEA2E80-2E992E9B-2EF32F00-2FD52FF0-2FFB300430123013302030363037303E303F309B309C319031913196-319F31C0-31E33200-321E322A-32503260-327F328A-32B032C0-32FE3300-33FF4DC0-4DFFA490-A4C6A700-A716A720A721A789A78AA828-A82BA836-A839AA77-AA79FB29FDFCFDFDFE62FE64-FE66FE69FF04FF0BFF1C-FF1EFF3EFF40FF5CFF5EFFE0-FFE6FFE8-FFEEFFFCFFFD",Sm:"002B003C-003E007C007E00AC00B100D700F703F60606-060820442052207A-207C208A-208C2140-2144214B2190-2194219A219B21A021A321A621AE21CE21CF21D221D421F4-22FF2308-230B23202321237C239B-23B323DC-23E125B725C125F8-25FF266F27C0-27C427C7-27CA27CC27D0-27E527F0-27FF2900-29822999-29D729DC-29FB29FE-2AFF2B30-2B442B47-2B4CFB29FE62FE64-FE66FF0BFF1C-FF1EFF5CFF5EFFE2FFE9-FFEC",Sc:"002400A2-00A5060B09F209F309FB0AF10BF90E3F17DB20A0-20B8A838FDFCFE69FF04FFE0FFE1FFE5FFE6",Sk:"005E006000A800AF00B400B802C2-02C502D2-02DF02E5-02EB02ED02EF-02FF0375038403851FBD1FBF-1FC11FCD-1FCF1FDD-1FDF1FED-1FEF1FFD1FFE309B309CA700-A716A720A721A789A78AFF3EFF40FFE3",So:"00A600A700A900AE00B000B60482060E060F06E906FD06FE07F609FA0B700BF3-0BF80BFA0C7F0CF10CF20D790F01-0F030F13-0F170F1A-0F1F0F340F360F380FBE-0FC50FC7-0FCC0FCE0FCF0FD5-0FD8109E109F13601390-1399194019E0-19FF1B61-1B6A1B74-1B7C210021012103-21062108210921142116-2118211E-2123212521272129212E213A213B214A214C214D214F2195-2199219C-219F21A121A221A421A521A7-21AD21AF-21CD21D021D121D321D5-21F32300-2307230C-231F2322-2328232B-237B237D-239A23B4-23DB23E2-23E82400-24262440-244A249C-24E92500-25B625B8-25C025C2-25F72600-266E2670-26CD26CF-26E126E326E8-26FF2701-27042706-2709270C-27272729-274B274D274F-27522756-275E2761-276727942798-27AF27B1-27BE2800-28FF2B00-2B2F2B452B462B50-2B592CE5-2CEA2E80-2E992E9B-2EF32F00-2FD52FF0-2FFB300430123013302030363037303E303F319031913196-319F31C0-31E33200-321E322A-32503260-327F328A-32B032C0-32FE3300-33FF4DC0-4DFFA490-A4C6A828-A82BA836A837A839AA77-AA79FDFDFFE4FFE8FFEDFFEEFFFCFFFD",Z:"002000A01680180E2000-200A20282029202F205F3000",Zs:"002000A01680180E2000-200A202F205F3000",Zl:"2028",Zp:"2029",C:"0000-001F007F-009F00AD03780379037F-0383038B038D03A20526-05300557055805600588058B-059005C8-05CF05EB-05EF05F5-0605061C061D0620065F06DD070E070F074B074C07B2-07BF07FB-07FF082E082F083F-08FF093A093B094F095609570973-097809800984098D098E0991099209A909B109B3-09B509BA09BB09C509C609C909CA09CF-09D609D8-09DB09DE09E409E509FC-0A000A040A0B-0A0E0A110A120A290A310A340A370A3A0A3B0A3D0A43-0A460A490A4A0A4E-0A500A52-0A580A5D0A5F-0A650A76-0A800A840A8E0A920AA90AB10AB40ABA0ABB0AC60ACA0ACE0ACF0AD1-0ADF0AE40AE50AF00AF2-0B000B040B0D0B0E0B110B120B290B310B340B3A0B3B0B450B460B490B4A0B4E-0B550B58-0B5B0B5E0B640B650B72-0B810B840B8B-0B8D0B910B96-0B980B9B0B9D0BA0-0BA20BA5-0BA70BAB-0BAD0BBA-0BBD0BC3-0BC50BC90BCE0BCF0BD1-0BD60BD8-0BE50BFB-0C000C040C0D0C110C290C340C3A-0C3C0C450C490C4E-0C540C570C5A-0C5F0C640C650C70-0C770C800C810C840C8D0C910CA90CB40CBA0CBB0CC50CC90CCE-0CD40CD7-0CDD0CDF0CE40CE50CF00CF3-0D010D040D0D0D110D290D3A-0D3C0D450D490D4E-0D560D58-0D5F0D640D650D76-0D780D800D810D840D97-0D990DB20DBC0DBE0DBF0DC7-0DC90DCB-0DCE0DD50DD70DE0-0DF10DF5-0E000E3B-0E3E0E5C-0E800E830E850E860E890E8B0E8C0E8E-0E930E980EA00EA40EA60EA80EA90EAC0EBA0EBE0EBF0EC50EC70ECE0ECF0EDA0EDB0EDE-0EFF0F480F6D-0F700F8C-0F8F0F980FBD0FCD0FD9-0FFF10C6-10CF10FD-10FF1249124E124F12571259125E125F1289128E128F12B112B612B712BF12C112C612C712D7131113161317135B-135E137D-137F139A-139F13F5-13FF169D-169F16F1-16FF170D1715-171F1737-173F1754-175F176D17711774-177F17B417B517DE17DF17EA-17EF17FA-17FF180F181A-181F1878-187F18AB-18AF18F6-18FF191D-191F192C-192F193C-193F1941-1943196E196F1975-197F19AC-19AF19CA-19CF19DB-19DD1A1C1A1D1A5F1A7D1A7E1A8A-1A8F1A9A-1A9F1AAE-1AFF1B4C-1B4F1B7D-1B7F1BAB-1BAD1BBA-1BFF1C38-1C3A1C4A-1C4C1C80-1CCF1CF3-1CFF1DE7-1DFC1F161F171F1E1F1F1F461F471F4E1F4F1F581F5A1F5C1F5E1F7E1F7F1FB51FC51FD41FD51FDC1FF01FF11FF51FFF200B-200F202A-202E2060-206F20722073208F2095-209F20B9-20CF20F1-20FF218A-218F23E9-23FF2427-243F244B-245F26CE26E226E4-26E727002705270A270B2728274C274E2753-2755275F27602795-279727B027BF27CB27CD-27CF2B4D-2B4F2B5A-2BFF2C2F2C5F2CF2-2CF82D26-2D2F2D66-2D6E2D70-2D7F2D97-2D9F2DA72DAF2DB72DBF2DC72DCF2DD72DDF2E32-2E7F2E9A2EF4-2EFF2FD6-2FEF2FFC-2FFF3040309730983100-3104312E-3130318F31B8-31BF31E4-31EF321F32FF4DB6-4DBF9FCC-9FFFA48D-A48FA4C7-A4CFA62C-A63FA660A661A674-A67BA698-A69FA6F8-A6FFA78D-A7FAA82C-A82FA83A-A83FA878-A87FA8C5-A8CDA8DA-A8DFA8FC-A8FFA954-A95EA97D-A97FA9CEA9DA-A9DDA9E0-A9FFAA37-AA3FAA4EAA4FAA5AAA5BAA7C-AA7FAAC3-AADAAAE0-ABBFABEEABEFABFA-ABFFD7A4-D7AFD7C7-D7CAD7FC-F8FFFA2EFA2FFA6EFA6FFADA-FAFFFB07-FB12FB18-FB1CFB37FB3DFB3FFB42FB45FBB2-FBD2FD40-FD4FFD90FD91FDC8-FDEFFDFEFDFFFE1A-FE1FFE27-FE2FFE53FE67FE6C-FE6FFE75FEFD-FF00FFBF-FFC1FFC8FFC9FFD0FFD1FFD8FFD9FFDD-FFDFFFE7FFEF-FFFBFFFEFFFF",Cc:"0000-001F007F-009F",Cf:"00AD0600-060306DD070F17B417B5200B-200F202A-202E2060-2064206A-206FFEFFFFF9-FFFB",Co:"E000-F8FF",Cs:"D800-DFFF",Cn:"03780379037F-0383038B038D03A20526-05300557055805600588058B-059005C8-05CF05EB-05EF05F5-05FF06040605061C061D0620065F070E074B074C07B2-07BF07FB-07FF082E082F083F-08FF093A093B094F095609570973-097809800984098D098E0991099209A909B109B3-09B509BA09BB09C509C609C909CA09CF-09D609D8-09DB09DE09E409E509FC-0A000A040A0B-0A0E0A110A120A290A310A340A370A3A0A3B0A3D0A43-0A460A490A4A0A4E-0A500A52-0A580A5D0A5F-0A650A76-0A800A840A8E0A920AA90AB10AB40ABA0ABB0AC60ACA0ACE0ACF0AD1-0ADF0AE40AE50AF00AF2-0B000B040B0D0B0E0B110B120B290B310B340B3A0B3B0B450B460B490B4A0B4E-0B550B58-0B5B0B5E0B640B650B72-0B810B840B8B-0B8D0B910B96-0B980B9B0B9D0BA0-0BA20BA5-0BA70BAB-0BAD0BBA-0BBD0BC3-0BC50BC90BCE0BCF0BD1-0BD60BD8-0BE50BFB-0C000C040C0D0C110C290C340C3A-0C3C0C450C490C4E-0C540C570C5A-0C5F0C640C650C70-0C770C800C810C840C8D0C910CA90CB40CBA0CBB0CC50CC90CCE-0CD40CD7-0CDD0CDF0CE40CE50CF00CF3-0D010D040D0D0D110D290D3A-0D3C0D450D490D4E-0D560D58-0D5F0D640D650D76-0D780D800D810D840D97-0D990DB20DBC0DBE0DBF0DC7-0DC90DCB-0DCE0DD50DD70DE0-0DF10DF5-0E000E3B-0E3E0E5C-0E800E830E850E860E890E8B0E8C0E8E-0E930E980EA00EA40EA60EA80EA90EAC0EBA0EBE0EBF0EC50EC70ECE0ECF0EDA0EDB0EDE-0EFF0F480F6D-0F700F8C-0F8F0F980FBD0FCD0FD9-0FFF10C6-10CF10FD-10FF1249124E124F12571259125E125F1289128E128F12B112B612B712BF12C112C612C712D7131113161317135B-135E137D-137F139A-139F13F5-13FF169D-169F16F1-16FF170D1715-171F1737-173F1754-175F176D17711774-177F17DE17DF17EA-17EF17FA-17FF180F181A-181F1878-187F18AB-18AF18F6-18FF191D-191F192C-192F193C-193F1941-1943196E196F1975-197F19AC-19AF19CA-19CF19DB-19DD1A1C1A1D1A5F1A7D1A7E1A8A-1A8F1A9A-1A9F1AAE-1AFF1B4C-1B4F1B7D-1B7F1BAB-1BAD1BBA-1BFF1C38-1C3A1C4A-1C4C1C80-1CCF1CF3-1CFF1DE7-1DFC1F161F171F1E1F1F1F461F471F4E1F4F1F581F5A1F5C1F5E1F7E1F7F1FB51FC51FD41FD51FDC1FF01FF11FF51FFF2065-206920722073208F2095-209F20B9-20CF20F1-20FF218A-218F23E9-23FF2427-243F244B-245F26CE26E226E4-26E727002705270A270B2728274C274E2753-2755275F27602795-279727B027BF27CB27CD-27CF2B4D-2B4F2B5A-2BFF2C2F2C5F2CF2-2CF82D26-2D2F2D66-2D6E2D70-2D7F2D97-2D9F2DA72DAF2DB72DBF2DC72DCF2DD72DDF2E32-2E7F2E9A2EF4-2EFF2FD6-2FEF2FFC-2FFF3040309730983100-3104312E-3130318F31B8-31BF31E4-31EF321F32FF4DB6-4DBF9FCC-9FFFA48D-A48FA4C7-A4CFA62C-A63FA660A661A674-A67BA698-A69FA6F8-A6FFA78D-A7FAA82C-A82FA83A-A83FA878-A87FA8C5-A8CDA8DA-A8DFA8FC-A8FFA954-A95EA97D-A97FA9CEA9DA-A9DDA9E0-A9FFAA37-AA3FAA4EAA4FAA5AAA5BAA7C-AA7FAAC3-AADAAAE0-ABBFABEEABEFABFA-ABFFD7A4-D7AFD7C7-D7CAD7FC-D7FFFA2EFA2FFA6EFA6FFADA-FAFFFB07-FB12FB18-FB1CFB37FB3DFB3FFB42FB45FBB2-FBD2FD40-FD4FFD90FD91FDC8-FDEFFDFEFDFFFE1A-FE1FFE27-FE2FFE53FE67FE6C-FE6FFE75FEFDFEFEFF00FFBF-FFC1FFC8FFC9FFD0FFD1FFD8FFD9FFDD-FFDFFFE7FFEF-FFF8FFFEFFFF"})}),ace.define("ace/token_iterator",["require","exports","module"],function(e,t,i){"use strict";var n=function(e,t,i){this.$session=e,this.$row=t,this.$rowTokens=e.getTokens(t);var n=e.getTokenAt(t,i);this.$tokenIndex=n?n.index:-1};(function(){this.stepBackward=function(){for(this.$tokenIndex-=1;this.$tokenIndex<0;){if(this.$row-=1,this.$row<0)return this.$row=0,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=this.$rowTokens.length-1}return this.$rowTokens[this.$tokenIndex]},this.stepForward=function(){var e;for(this.$tokenIndex+=1;this.$tokenIndex>=this.$rowTokens.length;){if(this.$row+=1,e||(e=this.$session.getLength()),this.$row>=e)return this.$row=e-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},this.getCurrentTokenRow=function(){return this.$row},this.getCurrentTokenColumn=function(){var e=this.$rowTokens,t=this.$tokenIndex,i=e[t].start;if(void 0!==i)return i;for(i=0;t>0;)i+=e[t-=1].value.length;return i},this.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}}}).call(n.prototype),t.TokenIterator=n}),ace.define("ace/mode/text",["require","exports","module","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour","ace/unicode","ace/lib/lang","ace/token_iterator","ace/range"],function(e,t,i){"use strict";var n=e("../tokenizer").Tokenizer,r=e("./text_highlight_rules").TextHighlightRules,o=e("./behaviour").Behaviour,s=e("../unicode"),a=e("../lib/lang"),l=e("../token_iterator").TokenIterator,c=e("../range").Range,h=function(){this.HighlightRules=r,this.$behaviour=new o};(function(){this.tokenRe=new RegExp("^["+s.packages.L+s.packages.Mn+s.packages.Mc+s.packages.Nd+s.packages.Pc+"\\$_]+","g"),this.nonTokenRe=new RegExp("^(?:[^"+s.packages.L+s.packages.Mn+s.packages.Mc+s.packages.Nd+s.packages.Pc+"\\$_]|\\s])+","g"),this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=this.$highlightRules||new this.HighlightRules,this.$tokenizer=new n(this.$highlightRules.getRules())),this.$tokenizer},this.lineCommentStart="",this.blockComment="",this.toggleCommentLines=function(e,t,i,n){var r=t.doc,o=!0,s=!0,l=1/0,c=t.getTabSize(),h=!1;if(this.lineCommentStart){if(Array.isArray(this.lineCommentStart))m=this.lineCommentStart.map(a.escapeRegExp).join("|"),f=this.lineCommentStart[0];else m=a.escapeRegExp(this.lineCommentStart),f=this.lineCommentStart;m=new RegExp("^(\\s*)(?:"+m+") ?"),h=t.getUseSoftTabs();y=function(e,t){var i=e.match(m);if(i){var n=i[1].length,o=i[0].length;d(e,n,o)||" "!=i[0][o-1]||o--,r.removeInLine(t,n,o)}};var u=f+" ",d=(v=function(e,t){o&&!/\S/.test(e)||(d(e,l,l)?r.insertInLine({row:t,column:l},u):r.insertInLine({row:t,column:l},f))},w=function(e,t){return m.test(e)},function(e,t,i){for(var n=0;t--&&" "==e.charAt(t);)n++;if(n%c!=0)return!1;for(n=0;" "==e.charAt(i++);)n++;return c>2?n%c!=c-1:n%c==0})}else{if(!this.blockComment)return!1;var f=this.blockComment.start,p=this.blockComment.end,m=new RegExp("^(\\s*)(?:"+a.escapeRegExp(f)+")"),g=new RegExp("(?:"+a.escapeRegExp(p)+")\\s*$"),v=function(e,t){w(e,t)||o&&!/\S/.test(e)||(r.insertInLine({row:t,column:e.length},p),r.insertInLine({row:t,column:l},f))},y=function(e,t){var i;(i=e.match(g))&&r.removeInLine(t,e.length-i[0].length,e.length),(i=e.match(m))&&r.removeInLine(t,i[1].length,i[0].length)},w=function(e,i){if(m.test(e))return!0;for(var n=t.getTokens(i),r=0;r<n.length;r++)if("comment"===n[r].type)return!0}}function b(e){for(var t=i;t<=n;t++)e(r.getLine(t),t)}var C=1/0;b(function(e,t){var i=e.search(/\S/);-1!==i?(i<l&&(l=i),s&&!w(e,t)&&(s=!1)):C>e.length&&(C=e.length)}),l==1/0&&(l=C,o=!1,s=!1),h&&l%c!=0&&(l=Math.floor(l/c)*c),b(s?y:v)},this.toggleBlockComment=function(e,t,i,n){var r=this.blockComment;if(r){!r.start&&r[0]&&(r=r[0]);var o,s,a=(m=new l(t,n.row,n.column)).getCurrentToken(),h=(t.selection,t.selection.toOrientedRange());if(a&&/comment/.test(a.type)){for(var u,d;a&&/comment/.test(a.type);){if(-1!=(g=a.value.indexOf(r.start))){var f=m.getCurrentTokenRow(),p=m.getCurrentTokenColumn()+g;u=new c(f,p,f,p+r.start.length);break}a=m.stepBackward()}var m;for(a=(m=new l(t,n.row,n.column)).getCurrentToken();a&&/comment/.test(a.type);){var g;if(-1!=(g=a.value.indexOf(r.end))){f=m.getCurrentTokenRow(),p=m.getCurrentTokenColumn()+g;d=new c(f,p,f,p+r.end.length);break}a=m.stepForward()}d&&t.remove(d),u&&(t.remove(u),o=u.start.row,s=-r.start.length)}else s=r.start.length,o=i.start.row,t.insert(i.end,r.end),t.insert(i.start,r.start);h.start.row==o&&(h.start.column+=s),h.end.row==o&&(h.end.column+=s),t.selection.fromOrientedRange(h)}},this.getNextLineIndent=function(e,t,i){return this.$getIndent(t)},this.checkOutdent=function(e,t,i){return!1},this.autoOutdent=function(e,t,i){},this.$getIndent=function(e){return e.match(/^\s*/)[0]},this.createWorker=function(e){return null},this.createModeDelegates=function(e){for(var t in this.$embeds=[],this.$modes={},e)e[t]&&(this.$embeds.push(t),this.$modes[t]=new e[t]);var i=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"];for(t=0;t<i.length;t++)!function(e){var n=i[t],r=e[n];e[i[t]]=function(){return this.$delegator(n,arguments,r)}}(this)},this.$delegator=function(e,t,i){var n=t[0];"string"!=typeof n&&(n=n[0]);for(var r=0;r<this.$embeds.length;r++)if(this.$modes[this.$embeds[r]]){var o=n.split(this.$embeds[r]);if(!o[0]&&o[1]){t[0]=o[1];var s=this.$modes[this.$embeds[r]];return s[e].apply(s,t)}}var a=i.apply(this,t);return i?a:void 0},this.transformAction=function(e,t,i,n,r){if(this.$behaviour){var o=this.$behaviour.getBehaviours();for(var s in o)if(o[s][t]){var a=o[s][t].apply(this,arguments);if(a)return a}}},this.getKeywords=function(e){if(!this.completionKeywords){var t=this.$tokenizer.rules,i=[];for(var n in t)for(var r=t[n],o=0,s=r.length;o<s;o++)if("string"==typeof r[o].token)/keyword|support|storage/.test(r[o].token)&&i.push(r[o].regex);else if("object"==typeof r[o].token)for(var a=0,l=r[o].token.length;a<l;a++)if(/keyword|support|storage/.test(r[o].token[a])){n=r[o].regex.match(/\(.+?\)/g)[a];i.push(n.substr(1,n.length-2))}this.completionKeywords=i}return e?i.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(e,t,i,n){return(this.$keywordList||this.$createKeywordList()).map(function(e){return{name:e,value:e,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(h.prototype),t.Mode=h}),ace.define("ace/apply_delta",["require","exports","module"],function(e,t,i){"use strict";t.applyDelta=function(e,t,i){var n=t.start.row,r=t.start.column,o=e[n]||"";switch(t.action){case"insert":if(1===t.lines.length)e[n]=o.substring(0,r)+t.lines[0]+o.substring(r);else{var s=[n,1].concat(t.lines);e.splice.apply(e,s),e[n]=o.substring(0,r)+e[n],e[n+t.lines.length-1]+=o.substring(r)}break;case"remove":var a=t.end.column,l=t.end.row;n===l?e[n]=o.substring(0,r)+o.substring(a):e.splice(n,l-n+1,o.substring(0,r)+e[l].substring(a))}}}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/event_emitter").EventEmitter,o=t.Anchor=function(e,t,i){this.$onChange=this.onChange.bind(this),this.attach(e),void 0===i?this.setPosition(t.row,t.column):this.setPosition(t,i)};(function(){function e(e,t,i){var n=i?e.column<=t.column:e.column<t.column;return e.row<t.row||e.row==t.row&&n}n.implement(this,r),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(t){if(!(t.start.row==t.end.row&&t.start.row!=this.row||t.start.row>this.row)){var i=function(t,i,n){var r="insert"==t.action,o=(r?1:-1)*(t.end.row-t.start.row),s=(r?1:-1)*(t.end.column-t.start.column),a=t.start,l=r?a:t.end;if(e(i,a,n))return{row:i.row,column:i.column};if(e(l,i,!n))return{row:i.row+o,column:i.column+(i.row==l.row?s:0)};return{row:a.row,column:a.column}}(t,{row:this.row,column:this.column},this.$insertRight);this.setPosition(i.row,i.column,!0)}},this.setPosition=function(e,t,i){var n;if(n=i?{row:e,column:t}:this.$clipPositionToDocument(e,t),this.row!=n.row||this.column!=n.column){var r={row:this.row,column:this.column};this.row=n.row,this.column=n.column,this._signal("change",{old:r,value:n})}},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var i={};return e>=this.document.getLength()?(i.row=Math.max(0,this.document.getLength()-1),i.column=this.document.getLine(i.row).length):e<0?(i.row=0,i.column=0):(i.row=e,i.column=Math.min(this.document.getLine(i.row).length,Math.max(0,t))),t<0&&(i.column=0),i}}).call(o.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./apply_delta").applyDelta,o=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,a=e("./anchor").Anchor,l=function(e){this.$lines=[""],0===e.length?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)};(function(){n.implement(this,o),this.setValue=function(e){var t=this.getLength()-1;this.remove(new s(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new a(this,e,t)},0==="aaa".split(/a/).length?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(e){this.$newLineMode!==e&&(this.$newLineMode=e,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return"\r\n"==e||"\r"==e||"\n"==e},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},this.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{(t=this.getLines(e.start.row,e.end.row))[0]=(t[0]||"").substring(e.start.column);var i=t.length-1;e.end.row-e.start.row==i&&(t[i]=t[i].substring(0,e.end.column))}return t},this.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},this.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},this.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},this.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},this.insertInLine=function(e,t){var i=this.clippedPos(e.row,e.column),n=this.pos(e.row,e.column+t.length);return this.applyDelta({start:i,end:n,action:"insert",lines:[t]},!0),this.clonePos(n)},this.clippedPos=function(e,t){var i=this.getLength();void 0===e?e=i:e<0?e=0:e>=i&&(e=i-1,t=void 0);var n=this.getLine(e);return void 0==t&&(t=n.length),{row:e,column:t=Math.min(Math.max(t,0),n.length)}},this.clonePos=function(e){return{row:e.row,column:e.column}},this.pos=function(e,t){return{row:e,column:t}},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},this.insertFullLines=function(e,t){var i=0;(e=Math.min(Math.max(e,0),this.getLength()))<this.getLength()?(t=t.concat([""]),i=0):(t=[""].concat(t),e--,i=this.$lines[e].length),this.insertMergedLines({row:e,column:i},t)},this.insertMergedLines=function(e,t){var i=this.clippedPos(e.row,e.column),n={row:i.row+t.length-1,column:(1==t.length?i.column:0)+t[t.length-1].length};return this.applyDelta({start:i,end:n,action:"insert",lines:t}),this.clonePos(n)},this.remove=function(e){var t=this.clippedPos(e.start.row,e.start.column),i=this.clippedPos(e.end.row,e.end.column);return this.applyDelta({start:t,end:i,action:"remove",lines:this.getLinesForRange({start:t,end:i})}),this.clonePos(t)},this.removeInLine=function(e,t,i){var n=this.clippedPos(e,t),r=this.clippedPos(e,i);return this.applyDelta({start:n,end:r,action:"remove",lines:this.getLinesForRange({start:n,end:r})},!0),this.clonePos(n)},this.removeFullLines=function(e,t){e=Math.min(Math.max(0,e),this.getLength()-1);var i=(t=Math.min(Math.max(0,t),this.getLength()-1))==this.getLength()-1&&e>0,n=t<this.getLength()-1,r=i?e-1:e,o=i?this.getLine(r).length:0,a=n?t+1:t,l=n?0:this.getLine(a).length,c=new s(r,o,a,l),h=this.$lines.slice(e,t+1);return this.applyDelta({start:c.start,end:c.end,action:"remove",lines:this.getLinesForRange(c)}),h},this.removeNewLine=function(e){e<this.getLength()-1&&e>=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},this.replace=function(e,t){return e instanceof s||(e=s.fromPoints(e.start,e.end)),0===t.length&&e.isEmpty()?e.start:t==this.getTextRange(e)?e.end:(this.remove(e),t?this.insert(e.start,t):e.start)},this.applyDeltas=function(e){for(var t=0;t<e.length;t++)this.applyDelta(e[t])},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--)this.revertDelta(e[t])},this.applyDelta=function(e,t){var i="insert"==e.action;(i?e.lines.length<=1&&!e.lines[0]:!s.comparePoints(e.start,e.end))||(i&&e.lines.length>2e4&&this.$splitAndapplyLargeDelta(e,2e4),r(this.$lines,e,t),this._signal("change",e))},this.$splitAndapplyLargeDelta=function(e,t){for(var i=e.lines,n=i.length,r=e.start.row,o=e.start.column,s=0,a=0;;){s=a,a+=t-1;var l=i.slice(s,a);if(a>n){e.lines=l,e.start.row=r+s,e.start.column=o;break}l.push(""),this.applyDelta({start:this.pos(r+s,o),end:this.pos(r+a,o=0),action:e.action,lines:l},!0)}},this.revertDelta=function(e){this.applyDelta({start:this.clonePos(e.start),end:this.clonePos(e.end),action:"insert"==e.action?"remove":"insert",lines:e.lines.slice()})},this.indexToPosition=function(e,t){for(var i=this.$lines||this.getAllLines(),n=this.getNewLineCharacter().length,r=t||0,o=i.length;r<o;r++)if((e-=i[r].length+n)<0)return{row:r,column:e+i[r].length+n};return{row:o-1,column:i[o-1].length}},this.positionToIndex=function(e,t){for(var i=this.$lines||this.getAllLines(),n=this.getNewLineCharacter().length,r=0,o=Math.min(e.row,i.length),s=t||0;s<o;++s)r+=i[s].length+n;return r+e.column}}).call(l.prototype),t.Document=l}),ace.define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/event_emitter").EventEmitter,o=function(e,t){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=e;var i=this;this.$worker=function(){if(i.running){for(var e=new Date,t=i.currentLine,n=-1,r=i.doc,o=t;i.lines[t];)t++;var s=r.getLength(),a=0;for(i.running=!1;t<s;){i.$tokenizeRow(t),n=t;do{t++}while(i.lines[t]);if(++a%5==0&&new Date-e>20){i.running=setTimeout(i.$worker,20);break}}i.currentLine=t,o<=n&&i.fireUpdateEvent(o,n)}}};(function(){n.implement(this,r),this.setTokenizer=function(e){this.tokenizer=e,this.lines=[],this.states=[],this.start(0)},this.setDocument=function(e){this.doc=e,this.lines=[],this.states=[],this.stop()},this.fireUpdateEvent=function(e,t){var i={first:e,last:t};this._signal("update",{data:i})},this.start=function(e){this.currentLine=Math.min(e||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},this.$updateOnChange=function(e){var t=e.start.row,i=e.end.row-t;if(0===i)this.lines[t]=null;else if("remove"==e.action)this.lines.splice(t,i+1,null),this.states.splice(t,i+1,null);else{var n=Array(i+1);n.unshift(t,1),this.lines.splice.apply(this.lines,n),this.states.splice.apply(this.states,n)}this.currentLine=Math.min(t,this.currentLine,this.doc.getLength()),this.stop()},this.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},this.getTokens=function(e){return this.lines[e]||this.$tokenizeRow(e)},this.getState=function(e){return this.currentLine==e&&this.$tokenizeRow(e),this.states[e]||"start"},this.$tokenizeRow=function(e){var t=this.doc.getLine(e),i=this.states[e-1],n=this.tokenizer.getLineTokens(t,i,e);return this.states[e]+""!=n.state+""?(this.states[e]=n.state,this.lines[e+1]=null,this.currentLine>e+1&&(this.currentLine=e+1)):this.currentLine==e&&(this.currentLine=e+1),this.lines[e]=n.tokens}}).call(o.prototype),t.BackgroundTokenizer=o}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,i){"use strict";var n=e("./lib/lang"),r=(e("./lib/oop"),e("./range").Range),o=function(e,t,i){this.setRegexp(e),this.clazz=t,this.type=i||"text"};(function(){this.MAX_RANGES=500,this.setRegexp=function(e){this.regExp+""!=e+""&&(this.regExp=e,this.cache=[])},this.update=function(e,t,i,o){if(this.regExp)for(var s=o.firstRow,a=o.lastRow,l=s;l<=a;l++){var c=this.cache[l];null==c&&((c=n.getMatchOffsets(i.getLine(l),this.regExp)).length>this.MAX_RANGES&&(c=c.slice(0,this.MAX_RANGES)),c=c.map(function(e){return new r(l,e.offset,l,e.offset+e.length)}),this.cache[l]=c.length?c:"");for(var h=c.length;h--;)t.drawSingleLineMarker(e,c[h].toScreenRange(i),this.clazz,o)}}}).call(o.prototype),t.SearchHighlight=o}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("../range").Range;function r(e,t){this.foldData=e,Array.isArray(t)?this.folds=t:t=this.folds=[t];var i=t[t.length-1];this.range=new n(t[0].start.row,t[0].start.column,i.end.row,i.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(e){e.setFoldLine(this)},this)}(function(){this.shiftRow=function(e){this.start.row+=e,this.end.row+=e,this.folds.forEach(function(t){t.start.row+=e,t.end.row+=e})},this.addFold=function(e){if(e.sameRow){if(e.start.row<this.startRow||e.endRow>this.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(e),this.folds.sort(function(e,t){return-e.range.compareEnd(t.start.row,t.start.column)}),this.range.compareEnd(e.start.row,e.start.column)>0?(this.end.row=e.end.row,this.end.column=e.end.column):this.range.compareStart(e.end.row,e.end.column)<0&&(this.start.row=e.start.row,this.start.column=e.start.column)}else if(e.start.row==this.end.row)this.folds.push(e),this.end.row=e.end.row,this.end.column=e.end.column;else{if(e.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(e),this.start.row=e.start.row,this.start.column=e.start.column}e.foldLine=this},this.containsRow=function(e){return e>=this.start.row&&e<=this.end.row},this.walk=function(e,t,i){var n,r,o=0,s=this.folds,a=!0;null==t&&(t=this.end.row,i=this.end.column);for(var l=0;l<s.length;l++){if(-1==(r=(n=s[l]).range.compareStart(t,i)))return void e(null,t,i,o,a);if(!e(null,n.start.row,n.start.column,o,a)&&e(n.placeholder,n.start.row,n.start.column,o)||0===r)return;a=!n.sameRow,o=n.end.column}e(null,t,i,o,a)},this.getNextFoldTo=function(e,t){for(var i,n,r=0;r<this.folds.length;r++){if(-1==(n=(i=this.folds[r]).range.compareEnd(e,t)))return{fold:i,kind:"after"};if(0===n)return{fold:i,kind:"inside"}}return null},this.addRemoveChars=function(e,t,i){var n,r,o=this.getNextFoldTo(e,t);if(o)if(n=o.fold,"inside"==o.kind&&n.start.column!=t&&n.start.row!=e)window.console&&window.console.log(e,t,n);else if(n.start.row==e){var s=(r=this.folds).indexOf(n);for(0===s&&(this.start.column+=i);s<r.length;s++){if((n=r[s]).start.column+=i,!n.sameRow)return;n.end.column+=i}this.end.column+=i}},this.split=function(e,t){var i=this.getNextFoldTo(e,t);if(!i||"inside"==i.kind)return null;var n=i.fold,o=this.folds,s=this.foldData,a=o.indexOf(n),l=o[a-1];this.end.row=l.end.row,this.end.column=l.end.column;var c=new r(s,o=o.splice(a,o.length-a));return s.splice(s.indexOf(this)+1,0,c),c},this.merge=function(e){for(var t=e.folds,i=0;i<t.length;i++)this.addFold(t[i]);var n=this.foldData;n.splice(n.indexOf(e),1)},this.toString=function(){var e=[this.range.toString()+": ["];return this.folds.forEach(function(t){e.push(" "+t.toString())}),e.push("]"),e.join("\n")},this.idxToPosition=function(e){for(var t=0,i=0;i<this.folds.length;i++){var n=this.folds[i];if((e-=n.start.column-t)<0)return{row:n.start.row,column:n.start.column+e};if((e-=n.placeholder.length)<0)return n.start;t=n.end.column}return{row:this.end.row,column:this.end.column+e}}}).call(r.prototype),t.FoldLine=r}),ace.define("ace/range_list",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("./range").Range.comparePoints,r=function(){this.ranges=[]};(function(){this.comparePoints=n,this.pointIndex=function(e,t,i){for(var r=this.ranges,o=i||0;o<r.length;o++){var s=r[o],a=n(e,s.end);if(!(a>0)){var l=n(e,s.start);return 0===a?t&&0!==l?-o-2:o:l>0||0===l&&!t?o:-o-1}}return-o-1},this.add=function(e){var t=!e.isEmpty(),i=this.pointIndex(e.start,t);i<0&&(i=-i-1);var n=this.pointIndex(e.end,t,i);return n<0?n=-n-1:n++,this.ranges.splice(i,n-i,e)},this.addList=function(e){for(var t=[],i=e.length;i--;)t.push.apply(t,this.add(e[i]));return t},this.substractPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges.splice(t,1)},this.merge=function(){for(var e,t=[],i=this.ranges,r=(i=i.sort(function(e,t){return n(e.start,t.start)}))[0],o=1;o<i.length;o++){e=r,r=i[o];var s=n(e.end,r.start);s<0||(0!=s||e.isEmpty()||r.isEmpty())&&(n(e.end,r.end)<0&&(e.end.row=r.end.row,e.end.column=r.end.column),i.splice(o,1),t.push(r),r=e,o--)}return this.ranges=i,t},this.contains=function(e,t){return this.pointIndex({row:e,column:t})>=0},this.containsPoint=function(e){return this.pointIndex(e)>=0},this.rangeAtPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges[t]},this.clipRows=function(e,t){var i=this.ranges;if(i[0].start.row>t||i[i.length-1].start.row<e)return[];var n=this.pointIndex({row:e,column:0});n<0&&(n=-n-1);var r=this.pointIndex({row:t,column:0},n);r<0&&(r=-r-1);for(var o=[],s=n;s<r;s++)o.push(i[s]);return o},this.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},this.attach=function(e){this.session&&this.detach(),this.session=e,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},this.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)},this.$onChange=function(e){if("insert"==e.action)var t=e.start,i=e.end;else i=e.start,t=e.end;for(var n=t.row,r=i.row-n,o=-t.column+i.column,s=this.ranges,a=0,l=s.length;a<l;a++){if(!((c=s[a]).end.row<n)){if(c.start.row>n)break;if(c.start.row==n&&c.start.column>=t.column&&(c.start.column==t.column&&this.$insertRight||(c.start.column+=o,c.start.row+=r)),c.end.row==n&&c.end.column>=t.column){if(c.end.column==t.column&&this.$insertRight)continue;c.end.column==t.column&&o>0&&a<l-1&&c.end.column>c.start.column&&c.end.column==s[a+1].start.column&&(c.end.column-=o),c.end.column+=o,c.end.row+=r}}}if(0!=r&&a<l)for(;a<l;a++){var c;(c=s[a]).start.row+=r,c.end.row+=r}}}).call(r.prototype),t.RangeList=r}),ace.define("ace/edit_session/fold",["require","exports","module","ace/range","ace/range_list","ace/lib/oop"],function(e,t,i){"use strict";e("../range").Range;var n=e("../range_list").RangeList,r=e("../lib/oop"),o=t.Fold=function(e,t){this.foldLine=null,this.placeholder=t,this.range=e,this.start=e.start,this.end=e.end,this.sameRow=e.start.row==e.end.row,this.subFolds=this.ranges=[]};function s(e,t){e.row-=t.row,0==e.row&&(e.column-=t.column)}function a(e,t){0==e.row&&(e.column+=t.column),e.row+=t.row}r.inherits(o,n),function(){this.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},this.setFoldLine=function(e){this.foldLine=e,this.subFolds.forEach(function(t){t.setFoldLine(e)})},this.clone=function(){var e=this.range.clone(),t=new o(e,this.placeholder);return this.subFolds.forEach(function(e){t.subFolds.push(e.clone())}),t.collapseChildren=this.collapseChildren,t},this.addSubFold=function(e){if(!this.range.isEqual(e)){if(!this.range.containsRange(e))throw new Error("A fold can't intersect already existing fold"+e.range+this.range);!function(e,t){s(e.start,t),s(e.end,t)}(e,this.start);for(var t=e.start.row,i=e.start.column,n=0,r=-1;n<this.subFolds.length&&1==(r=this.subFolds[n].range.compare(t,i));n++);var o=this.subFolds[n];if(0==r)return o.addSubFold(e);t=e.range.end.row,i=e.range.end.column;var a=n;for(r=-1;a<this.subFolds.length&&1==(r=this.subFolds[a].range.compare(t,i));a++);this.subFolds[a];if(0==r)throw new Error("A fold can't intersect already existing fold"+e.range+this.range);this.subFolds.splice(n,a-n,e);return e.setFoldLine(this.foldLine),e}},this.restoreRange=function(e){return function(e,t){a(e.start,t),a(e.end,t)}(e,this.start)}}.call(o.prototype)}),ace.define("ace/edit_session/folding",["require","exports","module","ace/range","ace/edit_session/fold_line","ace/edit_session/fold","ace/token_iterator"],function(e,t,i){"use strict";var n=e("../range").Range,r=e("./fold_line").FoldLine,o=e("./fold").Fold,s=e("../token_iterator").TokenIterator;t.Folding=function(){this.getFoldAt=function(e,t,i){var n=this.getFoldLine(e);if(!n)return null;for(var r=n.folds,o=0;o<r.length;o++){var s=r[o];if(s.range.contains(e,t)){if(1==i&&s.range.isEnd(e,t))continue;if(-1==i&&s.range.isStart(e,t))continue;return s}}},this.getFoldsInRange=function(e){var t=e.start,i=e.end,n=this.$foldData,r=[];t.column+=1,i.column-=1;for(var o=0;o<n.length;o++){var s=n[o].range.compareRange(e);if(2!=s){if(-2==s)break;for(var a=n[o].folds,l=0;l<a.length;l++){var c=a[l];if(-2==(s=c.range.compareRange(e)))break;if(2!=s){if(42==s)break;r.push(c)}}}}return t.column-=1,i.column+=1,r},this.getFoldsInRangeList=function(e){if(Array.isArray(e)){var t=[];e.forEach(function(e){t=t.concat(this.getFoldsInRange(e))},this)}else t=this.getFoldsInRange(e);return t},this.getAllFolds=function(){for(var e=[],t=this.$foldData,i=0;i<t.length;i++)for(var n=0;n<t[i].folds.length;n++)e.push(t[i].folds[n]);return e},this.getFoldStringAt=function(e,t,i,n){if(!(n=n||this.getFoldLine(e)))return null;for(var r,o,s={end:{column:0}},a=0;a<n.folds.length;a++){var l=(o=n.folds[a]).range.compareEnd(e,t);if(-1==l){r=this.getLine(o.start.row).substring(s.end.column,o.start.column);break}if(0===l)return null;s=o}return r||(r=this.getLine(o.start.row).substring(s.end.column)),-1==i?r.substring(0,t-s.end.column):1==i?r.substring(t-s.end.column):r},this.getFoldLine=function(e,t){var i=this.$foldData,n=0;for(t&&(n=i.indexOf(t)),-1==n&&(n=0);n<i.length;n++){var r=i[n];if(r.start.row<=e&&r.end.row>=e)return r;if(r.end.row>e)return null}return null},this.getNextFoldLine=function(e,t){var i=this.$foldData,n=0;for(t&&(n=i.indexOf(t)),-1==n&&(n=0);n<i.length;n++){var r=i[n];if(r.end.row>=e)return r}return null},this.getFoldedRowCount=function(e,t){for(var i=this.$foldData,n=t-e+1,r=0;r<i.length;r++){var o=i[r],s=o.end.row,a=o.start.row;if(s>=t){a<t&&(a>=e?n-=t-a:n=0);break}s>=e&&(n-=a>=e?s-a:s-e+1)}return n},this.$addFoldLine=function(e){return this.$foldData.push(e),this.$foldData.sort(function(e,t){return e.start.row-t.start.row}),e},this.addFold=function(e,t){var i,n=this.$foldData,s=!1;e instanceof o?i=e:(i=new o(t,e)).collapseChildren=t.collapseChildren,this.$clipRangeToDocument(i.range);var a=i.start.row,l=i.start.column,c=i.end.row,h=i.end.column;if(!(a<c||a==c&&l<=h-2))throw new Error("The range has to be at least 2 characters width");var u=this.getFoldAt(a,l,1),d=this.getFoldAt(c,h,-1);if(u&&d==u)return u.addSubFold(i);u&&!u.range.isStart(a,l)&&this.removeFold(u),d&&!d.range.isEnd(c,h)&&this.removeFold(d);var f=this.getFoldsInRange(i.range);f.length>0&&(this.removeFolds(f),f.forEach(function(e){i.addSubFold(e)}));for(var p=0;p<n.length;p++){var m=n[p];if(c==m.start.row){m.addFold(i),s=!0;break}if(a==m.end.row){if(m.addFold(i),s=!0,!i.sameRow){var g=n[p+1];if(g&&g.start.row==c){m.merge(g);break}}break}if(c<=m.start.row)break}return s||(m=this.$addFoldLine(new r(this.$foldData,i))),this.$useWrapMode?this.$updateWrapData(m.start.row,m.start.row):this.$updateRowLengthCache(m.start.row,m.start.row),this.$modified=!0,this._signal("changeFold",{data:i,action:"add"}),i},this.addFolds=function(e){e.forEach(function(e){this.addFold(e)},this)},this.removeFold=function(e){var t=e.foldLine,i=t.start.row,n=t.end.row,r=this.$foldData,o=t.folds;if(1==o.length)r.splice(r.indexOf(t),1);else if(t.range.isEnd(e.end.row,e.end.column))o.pop(),t.end.row=o[o.length-1].end.row,t.end.column=o[o.length-1].end.column;else if(t.range.isStart(e.start.row,e.start.column))o.shift(),t.start.row=o[0].start.row,t.start.column=o[0].start.column;else if(e.sameRow)o.splice(o.indexOf(e),1);else{var s=t.split(e.start.row,e.start.column);(o=s.folds).shift(),s.start.row=o[0].start.row,s.start.column=o[0].start.column}this.$updating||(this.$useWrapMode?this.$updateWrapData(i,n):this.$updateRowLengthCache(i,n)),this.$modified=!0,this._signal("changeFold",{data:e,action:"remove"})},this.removeFolds=function(e){for(var t=[],i=0;i<e.length;i++)t.push(e[i]);t.forEach(function(e){this.removeFold(e)},this),this.$modified=!0},this.expandFold=function(e){this.removeFold(e),e.subFolds.forEach(function(t){e.restoreRange(t),this.addFold(t)},this),e.collapseChildren>0&&this.foldAll(e.start.row+1,e.end.row,e.collapseChildren-1),e.subFolds=[]},this.expandFolds=function(e){e.forEach(function(e){this.expandFold(e)},this)},this.unfold=function(e,t){var i,r;if(null==e?(i=new n(0,0,this.getLength(),0),t=!0):i="number"==typeof e?new n(e,0,e,this.getLine(e).length):"row"in e?n.fromPoints(e,e):e,r=this.getFoldsInRangeList(i),t)this.removeFolds(r);else for(var o=r;o.length;)this.expandFolds(o),o=this.getFoldsInRangeList(i);if(r.length)return r},this.isRowFolded=function(e,t){return!!this.getFoldLine(e,t)},this.getRowFoldEnd=function(e,t){var i=this.getFoldLine(e,t);return i?i.end.row:e},this.getRowFoldStart=function(e,t){var i=this.getFoldLine(e,t);return i?i.start.row:e},this.getFoldDisplayLine=function(e,t,i,n,r){null==n&&(n=e.start.row),null==r&&(r=0),null==t&&(t=e.end.row),null==i&&(i=this.getLine(t).length);var o=this.doc,s="";return e.walk(function(e,t,i,a){if(!(t<n)){if(t==n){if(i<r)return;a=Math.max(r,a)}s+=null!=e?e:o.getLine(t).substring(a,i)}},t,i),s},this.getDisplayLine=function(e,t,i,n){var r,o=this.getFoldLine(e);return o?this.getFoldDisplayLine(o,e,t,i,n):(r=this.doc.getLine(e)).substring(n||0,t||r.length)},this.$cloneFoldData=function(){var e=[];return e=this.$foldData.map(function(t){var i=t.folds.map(function(e){return e.clone()});return new r(e,i)})},this.toggleFold=function(e){var t,i,n=this.selection.getRange();if(n.isEmpty()){var r=n.start;if(t=this.getFoldAt(r.row,r.column))return void this.expandFold(t);(i=this.findMatchingBracket(r))?1==n.comparePoint(i)?n.end=i:(n.start=i,n.start.column++,n.end.column--):(i=this.findMatchingBracket({row:r.row,column:r.column+1}))?(1==n.comparePoint(i)?n.end=i:n.start=i,n.start.column++):n=this.getCommentFoldRange(r.row,r.column)||n}else{var o=this.getFoldsInRange(n);if(e&&o.length)return void this.expandFolds(o);1==o.length&&(t=o[0])}if(t||(t=this.getFoldAt(n.start.row,n.start.column)),t&&t.range.toString()==n.toString())this.expandFold(t);else{var s="...";if(!n.isMultiLine()){if((s=this.getTextRange(n)).length<4)return;s=s.trim().substring(0,2)+".."}this.addFold(s,n)}},this.getCommentFoldRange=function(e,t,i){var r=new s(this,e,t),o=r.getCurrentToken();if(o&&/^comment|string/.test(o.type)){var a=new n,l=new RegExp(o.type.replace(/\..*/,"\\."));if(1!=i){do{o=r.stepBackward()}while(o&&l.test(o.type));r.stepForward()}if(a.start.row=r.getCurrentTokenRow(),a.start.column=r.getCurrentTokenColumn()+2,r=new s(this,e,t),-1!=i){do{o=r.stepForward()}while(o&&l.test(o.type));o=r.stepBackward()}else o=r.getCurrentToken();return a.end.row=r.getCurrentTokenRow(),a.end.column=r.getCurrentTokenColumn()+o.value.length-2,a}},this.foldAll=function(e,t,i){void 0==i&&(i=1e5);var n=this.foldWidgets;if(n){t=t||this.getLength();for(var r=e=e||0;r<t;r++)if(null==n[r]&&(n[r]=this.getFoldWidget(r)),"start"==n[r]){var o=this.getFoldWidgetRange(r);if(o&&o.isMultiLine()&&o.end.row<=t&&o.start.row>=e){r=o.end.row;try{var s=this.addFold("...",o);s&&(s.collapseChildren=i)}catch(e){}}}}},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(e){if(!this.$foldStyles[e])throw new Error("invalid fold style: "+e+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle!=e){this.$foldStyle=e,"manual"==e&&this.unfold();var t=this.$foldMode;this.$setFolding(null),this.$setFolding(t)}},this.$setFolding=function(e){this.$foldMode!=e&&(this.$foldMode=e,this.off("change",this.$updateFoldWidgets),this.off("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets),this._signal("changeAnnotation"),e&&"manual"!=this.$foldStyle?(this.foldWidgets=[],this.getFoldWidget=e.getFoldWidget.bind(e,this,this.$foldStyle),this.getFoldWidgetRange=e.getFoldWidgetRange.bind(e,this,this.$foldStyle),this.$updateFoldWidgets=this.updateFoldWidgets.bind(this),this.$tokenizerUpdateFoldWidgets=this.tokenizerUpdateFoldWidgets.bind(this),this.on("change",this.$updateFoldWidgets),this.on("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets)):this.foldWidgets=null)},this.getParentFoldRangeData=function(e,t){var i=this.foldWidgets;if(!i||t&&i[e])return{};for(var n,r=e-1;r>=0;){var o=i[r];if(null==o&&(o=i[r]=this.getFoldWidget(r)),"start"==o){var s=this.getFoldWidgetRange(r);if(n||(n=s),s&&s.end.row>=e)break}r--}return{range:-1!==r&&s,firstRange:n}},this.onFoldWidgetClick=function(e,t){var i={children:(t=t.domEvent).shiftKey,all:t.ctrlKey||t.metaKey,siblings:t.altKey};if(!this.$toggleFoldWidget(e,i)){var n=t.target||t.srcElement;n&&/ace_fold-widget/.test(n.className)&&(n.className+=" ace_invalid")}},this.$toggleFoldWidget=function(e,t){if(this.getFoldWidget){var i=this.getFoldWidget(e),n=this.getLine(e),r="end"===i?-1:1,o=this.getFoldAt(e,-1===r?0:n.length,r);if(o)t.children||t.all?this.removeFold(o):this.expandFold(o);else{var s=this.getFoldWidgetRange(e,!0);if(!s||s.isMultiLine()||!(o=this.getFoldAt(s.start.row,s.start.column,1))||!s.isEqual(o.range)){if(t.siblings){var a=this.getParentFoldRangeData(e);if(a.range)var l=a.range.start.row+1,c=a.range.end.row;this.foldAll(l,c,t.all?1e4:0)}else t.children?(c=s?s.end.row:this.getLength(),this.foldAll(e+1,c,t.all?1e4:0)):s&&(t.all&&(s.collapseChildren=1e4),this.addFold("...",s));return s}this.removeFold(o)}}},this.toggleFoldWidget=function(e){var t=this.selection.getCursor().row;t=this.getRowFoldStart(t);var i=this.$toggleFoldWidget(t,{});if(!i){var n=this.getParentFoldRangeData(t,!0);if(i=n.range||n.firstRange){t=i.start.row;var r=this.getFoldAt(t,this.getLine(t).length,1);r?this.removeFold(r):this.addFold("...",i)}}},this.updateFoldWidgets=function(e){var t=e.start.row,i=e.end.row-t;if(0===i)this.foldWidgets[t]=null;else if("remove"==e.action)this.foldWidgets.splice(t,i+1,null);else{var n=Array(i+1);n.unshift(t,1),this.foldWidgets.splice.apply(this.foldWidgets,n)}},this.tokenizerUpdateFoldWidgets=function(e){var t=e.data;t.first!=t.last&&this.foldWidgets.length>t.first&&this.foldWidgets.splice(t.first,this.foldWidgets.length)}}}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,t,i){"use strict";var n=e("../token_iterator").TokenIterator,r=e("../range").Range;t.BracketMatch=function(){this.findMatchingBracket=function(e,t){if(0==e.column)return null;var i=t||this.getLine(e.row).charAt(e.column-1);if(""==i)return null;var n=i.match(/([\(\[\{])|([\)\]\}])/);return n?n[1]?this.$findClosingBracket(n[1],e):this.$findOpeningBracket(n[2],e):null},this.getBracketRange=function(e){var t,i=this.getLine(e.row),n=!0,o=i.charAt(e.column-1),s=o&&o.match(/([\(\[\{])|([\)\]\}])/);if(s||(o=i.charAt(e.column),e={row:e.row,column:e.column+1},s=o&&o.match(/([\(\[\{])|([\)\]\}])/),n=!1),!s)return null;if(s[1]){if(!(a=this.$findClosingBracket(s[1],e)))return null;t=r.fromPoints(e,a),n||(t.end.column++,t.start.column--),t.cursor=t.end}else{var a;if(!(a=this.$findOpeningBracket(s[2],e)))return null;t=r.fromPoints(a,e),n||(t.start.column++,t.end.column--),t.cursor=t.start}return t},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{"},this.$findOpeningBracket=function(e,t,i){var r=this.$brackets[e],o=1,s=new n(this,t.row,t.column),a=s.getCurrentToken();if(a||(a=s.stepForward()),a){i||(i=new RegExp("(\\.?"+a.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)")+")+"));for(var l=t.column-s.getCurrentTokenColumn()-2,c=a.value;;){for(;l>=0;){var h=c.charAt(l);if(h==r){if(0==(o-=1))return{row:s.getCurrentTokenRow(),column:l+s.getCurrentTokenColumn()}}else h==e&&(o+=1);l-=1}do{a=s.stepBackward()}while(a&&!i.test(a.type));if(null==a)break;l=(c=a.value).length-1}return null}},this.$findClosingBracket=function(e,t,i){var r=this.$brackets[e],o=1,s=new n(this,t.row,t.column),a=s.getCurrentToken();if(a||(a=s.stepForward()),a){i||(i=new RegExp("(\\.?"+a.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)")+")+"));for(var l=t.column-s.getCurrentTokenColumn();;){for(var c=a.value,h=c.length;l<h;){var u=c.charAt(l);if(u==r){if(0==(o-=1))return{row:s.getCurrentTokenRow(),column:l+s.getCurrentTokenColumn()}}else u==e&&(o+=1);l+=1}do{a=s.stepForward()}while(a&&!i.test(a.type));if(null==a)break;l=0}return null}}}}),ace.define("ace/edit_session",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/config","ace/lib/event_emitter","ace/selection","ace/mode/text","ace/range","ace/document","ace/background_tokenizer","ace/search_highlight","ace/edit_session/folding","ace/edit_session/bracket_match"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/lang"),o=e("./config"),s=e("./lib/event_emitter").EventEmitter,a=e("./selection").Selection,l=e("./mode/text").Mode,c=e("./range").Range,h=e("./document").Document,u=e("./background_tokenizer").BackgroundTokenizer,d=e("./search_highlight").SearchHighlight,f=function(e,t){this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$foldData=[],this.$foldData.toString=function(){return this.join("\n")},this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this),"object"==typeof e&&e.getLine||(e=new h(e)),this.setDocument(e),this.selection=new a(this),o.resetOptions(this),this.setMode(t),o._signal("session",this)};(function(){n.implement(this,s),this.setDocument=function(e){this.doc&&this.doc.removeListener("change",this.$onChange),this.doc=e,e.on("change",this.$onChange),this.bgTokenizer&&this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},this.getDocument=function(){return this.doc},this.$resetRowCache=function(e){if(!e)return this.$docRowCache=[],void(this.$screenRowCache=[]);var t=this.$docRowCache.length,i=this.$getRowCacheIndex(this.$docRowCache,e)+1;t>i&&(this.$docRowCache.splice(i,t),this.$screenRowCache.splice(i,t))},this.$getRowCacheIndex=function(e,t){for(var i=0,n=e.length-1;i<=n;){var r=i+n>>1,o=e[r];if(t>o)i=r+1;else{if(!(t<o))return r;n=r-1}}return i-1},this.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.bgTokenizer&&this.bgTokenizer.start(0)},this.onChangeFold=function(e){var t=e.data;this.$resetRowCache(t.start.row)},this.onChange=function(e){this.$modified=!0,this.$resetRowCache(e.start.row);var t=this.$updateInternalDataOnChange(e);this.$fromUndo||!this.$undoManager||e.ignore||(this.$deltasDoc.push(e),t&&0!=t.length&&this.$deltasFold.push({action:"removeFolds",folds:t}),this.$informUndoManager.schedule()),this.bgTokenizer&&this.bgTokenizer.$updateOnChange(e),this._signal("change",e)},this.setValue=function(e){this.doc.setValue(e),this.selection.moveTo(0,0),this.$resetRowCache(0),this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},this.getValue=this.toString=function(){return this.doc.getValue()},this.getSelection=function(){return this.selection},this.getState=function(e){return this.bgTokenizer.getState(e)},this.getTokens=function(e){return this.bgTokenizer.getTokens(e)},this.getTokenAt=function(e,t){var i,n=this.bgTokenizer.getTokens(e),r=0;if(null==t)o=n.length-1,r=this.getLine(e).length;else for(var o=0;o<n.length&&!((r+=n[o].value.length)>=t);o++);return(i=n[o])?(i.index=o,i.start=r-i.value.length,i):null},this.setUndoManager=function(e){if(this.$undoManager=e,this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.$informUndoManager&&this.$informUndoManager.cancel(),e){var t=this;this.$syncInformUndoManager=function(){t.$informUndoManager.cancel(),t.$deltasFold.length&&(t.$deltas.push({group:"fold",deltas:t.$deltasFold}),t.$deltasFold=[]),t.$deltasDoc.length&&(t.$deltas.push({group:"doc",deltas:t.$deltasDoc}),t.$deltasDoc=[]),t.$deltas.length>0&&e.execute({action:"aceupdate",args:[t.$deltas,t],merge:t.mergeUndoDeltas}),t.mergeUndoDeltas=!1,t.$deltas=[]},this.$informUndoManager=r.delayedCall(this.$syncInformUndoManager)}},this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},this.$defaultUndoManager={undo:function(){},redo:function(){},reset:function(){}},this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},this.getTabString=function(){return this.getUseSoftTabs()?r.stringRepeat(" ",this.getTabSize()):"\t"},this.setUseSoftTabs=function(e){this.setOption("useSoftTabs",e)},this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},this.setTabSize=function(e){this.setOption("tabSize",e)},this.getTabSize=function(){return this.$tabSize},this.isTabStop=function(e){return this.$useSoftTabs&&e.column%this.$tabSize==0},this.$overwrite=!1,this.setOverwrite=function(e){this.setOption("overwrite",e)},this.getOverwrite=function(){return this.$overwrite},this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},this.addGutterDecoration=function(e,t){this.$decorations[e]||(this.$decorations[e]=""),this.$decorations[e]+=" "+t,this._signal("changeBreakpoint",{})},this.removeGutterDecoration=function(e,t){this.$decorations[e]=(this.$decorations[e]||"").replace(" "+t,""),this._signal("changeBreakpoint",{})},this.getBreakpoints=function(){return this.$breakpoints},this.setBreakpoints=function(e){this.$breakpoints=[];for(var t=0;t<e.length;t++)this.$breakpoints[e[t]]="ace_breakpoint";this._signal("changeBreakpoint",{})},this.clearBreakpoints=function(){this.$breakpoints=[],this._signal("changeBreakpoint",{})},this.setBreakpoint=function(e,t){void 0===t&&(t="ace_breakpoint"),t?this.$breakpoints[e]=t:delete this.$breakpoints[e],this._signal("changeBreakpoint",{})},this.clearBreakpoint=function(e){delete this.$breakpoints[e],this._signal("changeBreakpoint",{})},this.addMarker=function(e,t,i,n){var r=this.$markerId++,o={range:e,type:i||"line",renderer:"function"==typeof i?i:null,clazz:t,inFront:!!n,id:r};return n?(this.$frontMarkers[r]=o,this._signal("changeFrontMarker")):(this.$backMarkers[r]=o,this._signal("changeBackMarker")),r},this.addDynamicMarker=function(e,t){if(e.update){var i=this.$markerId++;return e.id=i,e.inFront=!!t,t?(this.$frontMarkers[i]=e,this._signal("changeFrontMarker")):(this.$backMarkers[i]=e,this._signal("changeBackMarker")),e}},this.removeMarker=function(e){var t=this.$frontMarkers[e]||this.$backMarkers[e];if(t){var i=t.inFront?this.$frontMarkers:this.$backMarkers;t&&(delete i[e],this._signal(t.inFront?"changeFrontMarker":"changeBackMarker"))}},this.getMarkers=function(e){return e?this.$frontMarkers:this.$backMarkers},this.highlight=function(e){if(!this.$searchHighlight){var t=new d(null,"ace_selected-word","text");this.$searchHighlight=this.addDynamicMarker(t)}this.$searchHighlight.setRegexp(e)},this.highlightLines=function(e,t,i,n){"number"!=typeof t&&(i=t,t=e),i||(i="ace_step");var r=new c(e,0,t,1/0);return r.id=this.addMarker(r,i,"fullLine",n),r},this.setAnnotations=function(e){this.$annotations=e,this._signal("changeAnnotation",{})},this.getAnnotations=function(){return this.$annotations||[]},this.clearAnnotations=function(){this.setAnnotations([])},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r?\n)/m);this.$autoNewLine=t?t[1]:"\n"},this.getWordRange=function(e,t){var i=this.getLine(e),n=!1;if(t>0&&(n=!!i.charAt(t-1).match(this.tokenRe)),n||(n=!!i.charAt(t).match(this.tokenRe)),n)var r=this.tokenRe;else if(/^\s+$/.test(i.slice(t-1,t+1)))r=/\s/;else r=this.nonTokenRe;var o=t;if(o>0){do{o--}while(o>=0&&i.charAt(o).match(r));o++}for(var s=t;s<i.length&&i.charAt(s).match(r);)s++;return new c(e,o,e,s)},this.getAWordRange=function(e,t){for(var i=this.getWordRange(e,t),n=this.getLine(i.end.row);n.charAt(i.end.column).match(/[ \t]/);)i.end.column+=1;return i},this.setNewLineMode=function(e){this.doc.setNewLineMode(e)},this.getNewLineMode=function(){return this.doc.getNewLineMode()},this.setUseWorker=function(e){this.setOption("useWorker",e)},this.getUseWorker=function(){return this.$useWorker},this.onReloadTokenizer=function(e){var t=e.data;this.bgTokenizer.start(t.first),this._signal("tokenizerUpdate",e)},this.$modes={},this.$mode=null,this.$modeId=null,this.setMode=function(e,t){if(e&&"object"==typeof e){if(e.getTokenizer)return this.$onChangeMode(e);var i=e,n=i.path}else n=e||"ace/mode/text";if(this.$modes["ace/mode/text"]||(this.$modes["ace/mode/text"]=new l),this.$modes[n]&&!i)return this.$onChangeMode(this.$modes[n]),void(t&&t());this.$modeId=n,o.loadModule(["mode",n],function(e){if(this.$modeId!==n)return t&&t();this.$modes[n]&&!i?this.$onChangeMode(this.$modes[n]):e&&e.Mode&&(e=new e.Mode(i),i||(this.$modes[n]=e,e.$id=n),this.$onChangeMode(e)),t&&t()}.bind(this)),this.$mode||this.$onChangeMode(this.$modes["ace/mode/text"],!0)},this.$onChangeMode=function(e,t){if(t||(this.$modeId=e.$id),this.$mode!==e){this.$mode=e,this.$stopWorker(),this.$useWorker&&this.$startWorker();var i=e.getTokenizer();if(void 0!==i.addEventListener){var n=this.onReloadTokenizer.bind(this);i.addEventListener("update",n)}if(this.bgTokenizer)this.bgTokenizer.setTokenizer(i);else{this.bgTokenizer=new u(i);var r=this;this.bgTokenizer.addEventListener("update",function(e){r._signal("tokenizerUpdate",e)})}this.bgTokenizer.setDocument(this.getDocument()),this.tokenRe=e.tokenRe,this.nonTokenRe=e.nonTokenRe,t||(e.attachToSession&&e.attachToSession(this),this.$options.wrapMethod.set.call(this,this.$wrapMethod),this.$setFolding(e.foldingRules),this.bgTokenizer.start(0),this._emit("changeMode"))}},this.$stopWorker=function(){this.$worker&&(this.$worker.terminate(),this.$worker=null)},this.$startWorker=function(){try{this.$worker=this.$mode.createWorker(this)}catch(e){o.warn("Could not load worker",e),this.$worker=null}},this.getMode=function(){return this.$mode},this.$scrollTop=0,this.setScrollTop=function(e){this.$scrollTop===e||isNaN(e)||(this.$scrollTop=e,this._signal("changeScrollTop",e))},this.getScrollTop=function(){return this.$scrollTop},this.$scrollLeft=0,this.setScrollLeft=function(e){this.$scrollLeft===e||isNaN(e)||(this.$scrollLeft=e,this._signal("changeScrollLeft",e))},this.getScrollLeft=function(){return this.$scrollLeft},this.getScreenWidth=function(){return this.$computeWidth(),this.lineWidgets?Math.max(this.getLineWidgetMaxWidth(),this.screenWidth):this.screenWidth},this.getLineWidgetMaxWidth=function(){if(null!=this.lineWidgetsWidth)return this.lineWidgetsWidth;var e=0;return this.lineWidgets.forEach(function(t){t&&t.screenWidth>e&&(e=t.screenWidth)}),this.lineWidgetWidth=e},this.$computeWidth=function(e){if(this.$modified||e){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var t=this.doc.getAllLines(),i=this.$rowLengthCache,n=0,r=0,o=this.$foldData[r],s=o?o.start.row:1/0,a=t.length,l=0;l<a;l++){if(l>s){if((l=o.end.row+1)>=a)break;s=(o=this.$foldData[r++])?o.start.row:1/0}null==i[l]&&(i[l]=this.$getStringScreenWidth(t[l])[0]),i[l]>n&&(n=i[l])}this.screenWidth=n}},this.getLine=function(e){return this.doc.getLine(e)},this.getLines=function(e,t){return this.doc.getLines(e,t)},this.getLength=function(){return this.doc.getLength()},this.getTextRange=function(e){return this.doc.getTextRange(e||this.selection.getRange())},this.insert=function(e,t){return this.doc.insert(e,t)},this.remove=function(e){return this.doc.remove(e)},this.removeFullLines=function(e,t){return this.doc.removeFullLines(e,t)},this.undoChanges=function(e,t){if(e.length){this.$fromUndo=!0;for(var i=null,n=e.length-1;-1!=n;n--){var r=e[n];"doc"==r.group?(this.doc.revertDeltas(r.deltas),i=this.$getUndoSelection(r.deltas,!0,i)):r.deltas.forEach(function(e){this.addFolds(e.folds)},this)}return this.$fromUndo=!1,i&&this.$undoSelect&&!t&&this.selection.setSelectionRange(i),i}},this.redoChanges=function(e,t){if(e.length){this.$fromUndo=!0;for(var i=null,n=0;n<e.length;n++){var r=e[n];"doc"==r.group&&(this.doc.applyDeltas(r.deltas),i=this.$getUndoSelection(r.deltas,!1,i))}return this.$fromUndo=!1,i&&this.$undoSelect&&!t&&this.selection.setSelectionRange(i),i}},this.setUndoSelect=function(e){this.$undoSelect=e},this.$getUndoSelection=function(e,t,i){function n(e){return t?"insert"!==e.action:"insert"===e.action}var r,o,s=e[0];n(s)?r=c.fromPoints(s.start,s.end):r=c.fromPoints(s.start,s.start);for(var a=1;a<e.length;a++)n(s=e[a])?(o=s.start,-1==r.compare(o.row,o.column)&&r.setStart(o),o=s.end,1==r.compare(o.row,o.column)&&r.setEnd(o),!0):(o=s.start,-1==r.compare(o.row,o.column)&&(r=c.fromPoints(s.start,s.start)),!1);if(null!=i){0===c.comparePoints(i.start,r.start)&&(i.start.column+=r.end.column-r.start.column,i.end.column+=r.end.column-r.start.column);var l=i.compareRange(r);1==l?r.setStart(i.start):-1==l&&r.setEnd(i.end)}return r},this.replace=function(e,t){return this.doc.replace(e,t)},this.moveText=function(e,t,i){var n=this.getTextRange(e),r=this.getFoldsInRange(e),o=c.fromPoints(t,t);if(!i){this.remove(e);var s=e.start.row-e.end.row;(h=s?-e.end.column:e.start.column-e.end.column)&&(o.start.row==e.end.row&&o.start.column>e.end.column&&(o.start.column+=h),o.end.row==e.end.row&&o.end.column>e.end.column&&(o.end.column+=h)),s&&o.start.row>=e.end.row&&(o.start.row+=s,o.end.row+=s)}if(o.end=this.insert(o.start,n),r.length){var a=e.start,l=o.start,h=(s=l.row-a.row,l.column-a.column);this.addFolds(r.map(function(e){return(e=e.clone()).start.row==a.row&&(e.start.column+=h),e.end.row==a.row&&(e.end.column+=h),e.start.row+=s,e.end.row+=s,e}))}return o},this.indentRows=function(e,t,i){i=i.replace(/\t/g,this.getTabString());for(var n=e;n<=t;n++)this.doc.insertInLine({row:n,column:0},i)},this.outdentRows=function(e){for(var t=e.collapseRows(),i=new c(0,0,0,0),n=this.getTabSize(),r=t.start.row;r<=t.end.row;++r){var o=this.getLine(r);i.start.row=r,i.end.row=r;for(var s=0;s<n&&" "==o.charAt(s);++s);s<n&&"\t"==o.charAt(s)?(i.start.column=s,i.end.column=s+1):(i.start.column=0,i.end.column=s),this.remove(i)}},this.$moveLines=function(e,t,i){if(e=this.getRowFoldStart(e),t=this.getRowFoldEnd(t),i<0){if((r=this.getRowFoldStart(e+i))<0)return 0;var n=r-e}else if(i>0){var r;if((r=this.getRowFoldEnd(t+i))>this.doc.getLength()-1)return 0;n=r-t}else{e=this.$clipRowToDocument(e);n=(t=this.$clipRowToDocument(t))-e+1}var o=new c(e,0,t,Number.MAX_VALUE),s=this.getFoldsInRange(o).map(function(e){return(e=e.clone()).start.row+=n,e.end.row+=n,e}),a=0==i?this.doc.getLines(e,t):this.doc.removeFullLines(e,t);return this.doc.insertFullLines(e+n,a),s.length&&this.addFolds(s),n},this.moveLinesUp=function(e,t){return this.$moveLines(e,t,-1)},this.moveLinesDown=function(e,t){return this.$moveLines(e,t,1)},this.duplicateLines=function(e,t){return this.$moveLines(e,t,0)},this.$clipRowToDocument=function(e){return Math.max(0,Math.min(e,this.doc.getLength()-1))},this.$clipColumnToRow=function(e,t){return t<0?0:Math.min(this.doc.getLine(e).length,t)},this.$clipPositionToDocument=function(e,t){if(t=Math.max(0,t),e<0)e=0,t=0;else{var i=this.doc.getLength();e>=i?(e=i-1,t=this.doc.getLine(i-1).length):t=Math.min(this.doc.getLine(e).length,t)}return{row:e,column:t}},this.$clipRangeToDocument=function(e){e.start.row<0?(e.start.row=0,e.start.column=0):e.start.column=this.$clipColumnToRow(e.start.row,e.start.column);var t=this.doc.getLength()-1;return e.end.row>t?(e.end.row=t,e.end.column=this.doc.getLine(t).length):e.end.column=this.$clipColumnToRow(e.end.row,e.end.column),e},this.$wrapLimit=80,this.$useWrapMode=!1,this.$wrapLimitRange={min:null,max:null},this.setUseWrapMode=function(e){if(e!=this.$useWrapMode){if(this.$useWrapMode=e,this.$modified=!0,this.$resetRowCache(0),e){var t=this.getLength();this.$wrapData=Array(t),this.$updateWrapData(0,t-1)}this._signal("changeWrapMode")}},this.getUseWrapMode=function(){return this.$useWrapMode},this.setWrapLimitRange=function(e,t){this.$wrapLimitRange.min===e&&this.$wrapLimitRange.max===t||(this.$wrapLimitRange={min:e,max:t},this.$modified=!0,this.$useWrapMode&&this._signal("changeWrapMode"))},this.adjustWrapLimit=function(e,t){var i=this.$wrapLimitRange;i.max<0&&(i={min:t,max:t});var n=this.$constrainWrapLimit(e,i.min,i.max);return n!=this.$wrapLimit&&n>1&&(this.$wrapLimit=n,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0)},this.$constrainWrapLimit=function(e,t,i){return t&&(e=Math.max(t,e)),i&&(e=Math.min(i,e)),e},this.getWrapLimit=function(){return this.$wrapLimit},this.setWrapLimit=function(e){this.setWrapLimitRange(e,e)},this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},this.$updateInternalDataOnChange=function(e){var t=this.$useWrapMode,i=e.action,n=e.start,r=e.end,o=n.row,s=r.row,a=s-o,l=null;if(this.$updating=!0,0!=a)if("remove"===i){this[t?"$wrapData":"$rowLengthCache"].splice(o,a);var c=this.$foldData;l=this.getFoldsInRange(e),this.removeFolds(l);var h=0;if(m=this.getFoldLine(r.row)){m.addRemoveChars(r.row,r.column,n.column-r.column),m.shiftRow(-a);var u=this.getFoldLine(o);u&&u!==m&&(u.merge(m),m=u),h=c.indexOf(m)+1}for(;h<c.length;h++){(m=c[h]).start.row>=r.row&&m.shiftRow(-a)}s=o}else{var d=Array(a);d.unshift(o,0);var f=t?this.$wrapData:this.$rowLengthCache;f.splice.apply(f,d);c=this.$foldData,h=0;if(m=this.getFoldLine(o)){var p=m.range.compareInside(n.row,n.column);0==p?(m=m.split(n.row,n.column))&&(m.shiftRow(a),m.addRemoveChars(s,0,r.column-n.column)):-1==p&&(m.addRemoveChars(o,0,r.column-n.column),m.shiftRow(a)),h=c.indexOf(m)+1}for(;h<c.length;h++){var m;(m=c[h]).start.row>=o&&m.shiftRow(a)}}else a=Math.abs(e.start.column-e.end.column),"remove"===i&&(l=this.getFoldsInRange(e),this.removeFolds(l),a=-a),(m=this.getFoldLine(o))&&m.addRemoveChars(o,n.column,a);return t&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,t?this.$updateWrapData(o,s):this.$updateRowLengthCache(o,s),l},this.$updateRowLengthCache=function(e,t,i){this.$rowLengthCache[e]=null,this.$rowLengthCache[t]=null},this.$updateWrapData=function(i,n){var r,o,s=this.doc.getAllLines(),a=this.getTabSize(),l=this.$wrapData,c=this.$wrapLimit,h=i;for(n=Math.min(n,s.length-1);h<=n;)(o=this.getFoldLine(h,o))?(r=[],o.walk(function(i,n,o,a){var l;if(null!=i){(l=this.$getDisplayTokens(i,r.length))[0]=e;for(var c=1;c<l.length;c++)l[c]=t}else l=this.$getDisplayTokens(s[n].substring(a,o),r.length);r=r.concat(l)}.bind(this),o.end.row,s[o.end.row].length+1),l[o.start.row]=this.$computeWrapSplits(r,c,a),h=o.end.row+1):(r=this.$getDisplayTokens(s[h]),l[h]=this.$computeWrapSplits(r,c,a),h++)};var e=3,t=4,i=10,a=11,h=12;function f(e){return!(e<4352)&&(e>=4352&&e<=4447||e>=4515&&e<=4519||e>=4602&&e<=4607||e>=9001&&e<=9002||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12283||e>=12288&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12589||e>=12593&&e<=12686||e>=12688&&e<=12730||e>=12736&&e<=12771||e>=12784&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=13054||e>=13056&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=55216&&e<=55238||e>=55243&&e<=55291||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=65281&&e<=65376||e>=65504&&e<=65510)}this.$computeWrapSplits=function(n,r,o){if(0==n.length)return[];var s=[],l=n.length,c=0,u=0,d=this.$wrapAsCode,f=this.$indentedSoftWrap,p=r<=Math.max(2*o,8)||!1===f?0:Math.floor(r/2);function m(e){var t=n.slice(c,e),r=t.length;t.join("").replace(/12/g,function(){r-=1}).replace(/2/g,function(){r-=1}),s.length||(g=function(){var e=0;if(0===p)return e;if(f)for(var t=0;t<n.length;t++){var r=n[t];if(r==i)e+=1;else{if(r!=a){if(r==h)continue;break}e+=o}}return d&&!1!==f&&(e+=o),Math.min(e,p)}(),s.indent=g),u+=r,s.push(u),c=e}for(var g=0;l-c>r-g;){var v=c+r-g;if(n[v-1]>=i&&n[v]>=i)m(v);else if(n[v]!=e&&n[v]!=t){for(var y=Math.max(v-(r-(r>>2)),c-1);v>y&&n[v]<e;)v--;if(d){for(;v>y&&n[v]<e;)v--;for(;v>y&&9==n[v];)v--}else for(;v>y&&n[v]<i;)v--;v>y?m(++v):(2==n[v=c+r]&&v--,m(v-g))}else{for(;v!=c-1&&n[v]!=e;v--);if(v>c){m(v);continue}for(v=c+r;v<n.length&&n[v]==t;v++);if(v==n.length)break;m(v)}}return s},this.$getDisplayTokens=function(e,t){var n,r=[];t=t||0;for(var o=0;o<e.length;o++){var s=e.charCodeAt(o);if(9==s){n=this.getScreenTabSize(r.length+t),r.push(a);for(var l=1;l<n;l++)r.push(h)}else 32==s?r.push(i):s>39&&s<48||s>57&&s<64?r.push(9):s>=4352&&f(s)?r.push(1,2):r.push(1)}return r},this.$getStringScreenWidth=function(e,t,i){if(0==t)return[0,0];var n,r;for(null==t&&(t=1/0),i=i||0,r=0;r<e.length&&(9==(n=e.charCodeAt(r))?i+=this.getScreenTabSize(i):n>=4352&&f(n)?i+=2:i+=1,!(i>t));r++);return[i,r]},this.lineWidgets=null,this.getRowLength=function(e){if(this.lineWidgets)var t=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0;else t=0;return this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1+t:1+t},this.getRowLineCount=function(e){return this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1:1},this.getRowWrapIndent=function(e){if(this.$useWrapMode){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE),i=this.$wrapData[t.row];return i.length&&i[0]<t.column?i.indent:0}return 0},this.getScreenLastRowColumn=function(e){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE);return this.documentToScreenColumn(t.row,t.column)},this.getDocumentLastRowColumn=function(e,t){var i=this.documentToScreenRow(e,t);return this.getScreenLastRowColumn(i)},this.getDocumentLastRowColumnPosition=function(e,t){var i=this.documentToScreenRow(e,t);return this.screenToDocumentPosition(i,Number.MAX_VALUE/10)},this.getRowSplitData=function(e){return this.$useWrapMode?this.$wrapData[e]:void 0},this.getScreenTabSize=function(e){return this.$tabSize-e%this.$tabSize},this.screenToDocumentRow=function(e,t){return this.screenToDocumentPosition(e,t).row},this.screenToDocumentColumn=function(e,t){return this.screenToDocumentPosition(e,t).column},this.screenToDocumentPosition=function(e,t){if(e<0)return{row:0,column:0};var i,n,r=0,o=0,s=0,a=0,l=this.$screenRowCache,c=this.$getRowCacheIndex(l,e),h=l.length;if(h&&c>=0){s=l[c],r=this.$docRowCache[c];var u=e>l[h-1]}else u=!h;for(var d=this.getLength()-1,f=this.getNextFoldLine(r),p=f?f.start.row:1/0;s<=e&&!(s+(a=this.getRowLength(r))>e||r>=d);)s+=a,++r>p&&(r=f.end.row+1,p=(f=this.getNextFoldLine(r,f))?f.start.row:1/0),u&&(this.$docRowCache.push(r),this.$screenRowCache.push(s));if(f&&f.start.row<=r)i=this.getFoldDisplayLine(f),r=f.start.row;else{if(s+a<=e||r>d)return{row:d,column:this.getLine(d).length};i=this.getLine(r),f=null}var m=0;if(this.$useWrapMode){var g=this.$wrapData[r];if(g){var v=Math.floor(e-s);n=g[v],v>0&&g.length&&(m=g.indent,o=g[v-1]||g[g.length-1],i=i.substring(o))}}return o+=this.$getStringScreenWidth(i,t-m)[1],this.$useWrapMode&&o>=n&&(o=n-1),f?f.idxToPosition(o):{row:r,column:o}},this.documentToScreenPosition=function(e,t){if(void 0===t)var i=this.$clipPositionToDocument(e.row,e.column);else i=this.$clipPositionToDocument(e,t);e=i.row,t=i.column;var n,r=0,o=null;(n=this.getFoldAt(e,t,1))&&(e=n.start.row,t=n.start.column);var s,a=0,l=this.$docRowCache,c=this.$getRowCacheIndex(l,e),h=l.length;if(h&&c>=0){a=l[c],r=this.$screenRowCache[c];var u=e>l[h-1]}else u=!h;for(var d=this.getNextFoldLine(a),f=d?d.start.row:1/0;a<e;){if(a>=f){if((s=d.end.row+1)>e)break;f=(d=this.getNextFoldLine(s,d))?d.start.row:1/0}else s=a+1;r+=this.getRowLength(a),a=s,u&&(this.$docRowCache.push(a),this.$screenRowCache.push(r))}var p="";d&&a>=f?(p=this.getFoldDisplayLine(d,e,t),o=d.start.row):(p=this.getLine(e).substring(0,t),o=e);var m=0;if(this.$useWrapMode){var g=this.$wrapData[o];if(g){for(var v=0;p.length>=g[v];)r++,v++;p=p.substring(g[v-1]||0,p.length),m=v>0?g.indent:0}}return{row:r,column:m+this.$getStringScreenWidth(p)[0]}},this.documentToScreenColumn=function(e,t){return this.documentToScreenPosition(e,t).column},this.documentToScreenRow=function(e,t){return this.documentToScreenPosition(e,t).row},this.getScreenLength=function(){var e=0,t=null;if(this.$useWrapMode)for(var i=this.$wrapData.length,n=0,r=(a=0,(t=this.$foldData[a++])?t.start.row:1/0);n<i;){var o=this.$wrapData[n];e+=o?o.length+1:1,++n>r&&(n=t.end.row+1,r=(t=this.$foldData[a++])?t.start.row:1/0)}else{e=this.getLength();for(var s=this.$foldData,a=0;a<s.length;a++)e-=(t=s[a]).end.row-t.start.row}return this.lineWidgets&&(e+=this.$getWidgetScreenLength()),e},this.$setFontMetrics=function(e){this.$enableVarChar&&(this.$getStringScreenWidth=function(t,i,n){if(0===i)return[0,0];var r,o;for(i||(i=1/0),n=n||0,o=0;o<t.length&&!((n+="\t"===(r=t.charAt(o))?this.getScreenTabSize(n):e.getCharacterWidth(r))>i);o++);return[n,o]})},this.destroy=function(){this.bgTokenizer&&(this.bgTokenizer.setDocument(null),this.bgTokenizer=null),this.$stopWorker()}}).call(f.prototype),e("./edit_session/folding").Folding.call(f.prototype),e("./edit_session/bracket_match").BracketMatch.call(f.prototype),o.defineOptions(f.prototype,"session",{wrap:{set:function(e){if(e&&"off"!=e?"free"==e?e=!0:"printMargin"==e?e=-1:"string"==typeof e&&(e=parseInt(e,10)||!1):e=!1,this.$wrap!=e)if(this.$wrap=e,e){var t="number"==typeof e?e:null;this.setWrapLimitRange(t,t),this.setUseWrapMode(!0)}else this.setUseWrapMode(!1)},get:function(){return this.getUseWrapMode()?-1==this.$wrap?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(e){(e="auto"==e?"text"!=this.$mode.type:"text"!=e)!=this.$wrapAsCode&&(this.$wrapAsCode=e,this.$useWrapMode&&(this.$modified=!0,this.$resetRowCache(0),this.$updateWrapData(0,this.getLength()-1)))},initialValue:"auto"},indentedSoftWrap:{initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(e){this.$useWorker=e,this.$stopWorker(),e&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(e){isNaN(e)||this.$tabSize===e||(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=e,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},overwrite:{set:function(e){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(e){this.doc.setNewLineMode(e)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(e){this.setMode(e)},get:function(){return this.$modeId}}}),t.EditSession=f}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,i){"use strict";var n=e("./lib/lang"),r=e("./lib/oop"),o=e("./range").Range,s=function(){this.$options={}};(function(){this.set=function(e){return r.mixin(this.$options,e),this},this.getOptions=function(){return n.copyObject(this.$options)},this.setOptions=function(e){this.$options=e},this.find=function(e){var t=this.$options,i=this.$matchIterator(e,t);if(!i)return!1;var n=null;return i.forEach(function(e,i,r){if(e.start)n=e;else{var s=e.offset+(r||0);if(n=new o(i,s,i,s+e.length),!e.length&&t.start&&t.start.start&&0!=t.skipCurrent&&n.isEqual(t.start))return n=null,!1}return!0}),n},this.findAll=function(e){var t=this.$options;if(!t.needle)return[];this.$assembleRegExp(t);var i=t.range,r=i?e.getLines(i.start.row,i.end.row):e.doc.getAllLines(),s=[],a=t.re;if(t.$isMultiLine){var l,c=a.length,h=r.length-c;e:for(var u=a.offset||0;u<=h;u++){for(var d=0;d<c;d++)if(-1==r[u+d].search(a[d]))continue e;var f=r[u],p=r[u+c-1],m=f.length-f.match(a[0])[0].length,g=p.match(a[c-1])[0].length;l&&l.end.row===u&&l.end.column>m||(s.push(l=new o(u,m,u+c-1,g)),c>2&&(u=u+c-2))}}else for(var v=0;v<r.length;v++){var y=n.getMatchOffsets(r[v],a);for(d=0;d<y.length;d++){var w=y[d];s.push(new o(v,w.offset,v,w.offset+w.length))}}if(i){var b=i.start.column,C=i.start.column;for(v=0,d=s.length-1;v<d&&s[v].start.column<b&&s[v].start.row==i.start.row;)v++;for(;v<d&&s[d].end.column>C&&s[d].end.row==i.end.row;)d--;for(s=s.slice(v,d+1),v=0,d=s.length;v<d;v++)s[v].start.row+=i.start.row,s[v].end.row+=i.start.row}return s},this.replace=function(e,t){var i=this.$options,n=this.$assembleRegExp(i);if(i.$isMultiLine)return t;if(n){var r=n.exec(e);if(!r||r[0].length!=e.length)return null;if(t=e.replace(n,t),i.preserveCase){t=t.split("");for(var o=Math.min(e.length,e.length);o--;){var s=e[o];s&&s.toLowerCase()!=s?t[o]=t[o].toUpperCase():t[o]=t[o].toLowerCase()}t=t.join("")}return t}},this.$matchIterator=function(e,t){var i,r=this.$assembleRegExp(t);if(!r)return!1;if(t.$isMultiLine)var s=r.length,a=function(t,n,a){var l=t.search(r[0]);if(-1!=l){for(var c=1;c<s;c++)if(-1==(t=e.getLine(n+c)).search(r[c]))return;var h=t.match(r[s-1])[0].length,u=new o(n,l,n+s-1,h);return 1==r.offset?(u.start.row--,u.start.column=Number.MAX_VALUE):a&&(u.start.column+=a),!!i(u)||void 0}};else if(t.backwards)a=function(e,t,o){for(var s=n.getMatchOffsets(e,r),a=s.length-1;a>=0;a--)if(i(s[a],t,o))return!0};else a=function(e,t,o){for(var s=n.getMatchOffsets(e,r),a=0;a<s.length;a++)if(i(s[a],t,o))return!0};var l=this.$lineIterator(e,t);return{forEach:function(e){i=e,l.forEach(a)}}},this.$assembleRegExp=function(e,t){if(e.needle instanceof RegExp)return e.re=e.needle;var i=e.needle;if(!e.needle)return e.re=!1;e.regExp||(i=n.escapeRegExp(i)),e.wholeWord&&(i="\\b"+i+"\\b");var r=e.caseSensitive?"gm":"gmi";if(e.$isMultiLine=!t&&/[\n\r]/.test(i),e.$isMultiLine)return e.re=this.$assembleMultilineRegExp(i,r);try{var o=new RegExp(i,r)}catch(e){o=!1}return e.re=o},this.$assembleMultilineRegExp=function(e,t){for(var i=e.replace(/\r\n|\r|\n/g,"$\n^").split("\n"),n=[],r=0;r<i.length;r++)try{n.push(new RegExp(i[r],t))}catch(e){return!1}return""==i[0]?(n.shift(),n.offset=1):n.offset=0,n},this.$lineIterator=function(e,t){var i=1==t.backwards,n=0!=t.skipCurrent,r=t.range,o=t.start;o||(o=r?r[i?"end":"start"]:e.selection.getRange()),o.start&&(o=o[n!=i?"end":"start"]);var s=r?r.start.row:0,a=r?r.end.row:e.getLength()-1;return{forEach:i?function(i){var n=o.row;if(!i(e.getLine(n).substring(0,o.column),n)){for(n--;n>=s;n--)if(i(e.getLine(n),n))return;if(0!=t.wrap)for(n=a,s=o.row;n>=s;n--)if(i(e.getLine(n),n))return}}:function(i){var n=o.row;if(!i(e.getLine(n).substr(o.column),n,o.column)){for(n+=1;n<=a;n++)if(i(e.getLine(n),n))return;if(0!=t.wrap)for(n=s,a=o.row;n<=a;n++)if(i(e.getLine(n),n))return}}}}}).call(s.prototype),t.Search=s}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,i){"use strict";var n=e("../lib/keys"),r=e("../lib/useragent"),o=n.KEY_MODS;function s(e,t){this.platform=t||(r.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(e),this.$singleCommand=!0}function a(e,t){s.call(this,e,t),this.$singleCommand=!1}a.prototype=s.prototype,function(){function e(e){return"object"==typeof e&&e.bindKey&&e.bindKey.position||0}this.addCommand=function(e){this.commands[e.name]&&this.removeCommand(e),this.commands[e.name]=e,e.bindKey&&this._buildKeyHash(e)},this.removeCommand=function(e,t){var i=e&&("string"==typeof e?e:e.name);e=this.commands[i],t||delete this.commands[i];var n=this.commandKeyBinding;for(var r in n){var o=n[r];if(o==e)delete n[r];else if(Array.isArray(o)){var s=o.indexOf(e);-1!=s&&(o.splice(s,1),1==o.length&&(n[r]=o[0]))}}},this.bindKey=function(e,t,i){if("object"==typeof e&&e&&(void 0==i&&(i=e.position),e=e[this.platform]),e)return"function"==typeof t?this.addCommand({exec:t,bindKey:e,name:t.name||e}):void e.split("|").forEach(function(e){var n="";if(-1!=e.indexOf(" ")){var r=e.split(/\s+/);e=r.pop(),r.forEach(function(e){var t=this.parseKeys(e),i=o[t.hashId]+t.key;n+=(n?" ":"")+i,this._addCommandToBinding(n,"chainKeys")},this),n+=" "}var s=this.parseKeys(e),a=o[s.hashId]+s.key;this._addCommandToBinding(n+a,t,i)},this)},this._addCommandToBinding=function(t,i,n){var r,o=this.commandKeyBinding;if(i)if(!o[t]||this.$singleCommand)o[t]=i;else{Array.isArray(o[t])?-1!=(r=o[t].indexOf(i))&&o[t].splice(r,1):o[t]=[o[t]],"number"!=typeof n&&(n=n||i.isDefault?-100:e(i));var s=o[t];for(r=0;r<s.length;r++){if(e(s[r])>n)break}s.splice(r,0,i)}else delete o[t]},this.addCommands=function(e){e&&Object.keys(e).forEach(function(t){var i=e[t];if(i){if("string"==typeof i)return this.bindKey(i,t);"function"==typeof i&&(i={exec:i}),"object"==typeof i&&(i.name||(i.name=t),this.addCommand(i))}},this)},this.removeCommands=function(e){Object.keys(e).forEach(function(t){this.removeCommand(e[t])},this)},this.bindKeys=function(e){Object.keys(e).forEach(function(t){this.bindKey(t,e[t])},this)},this._buildKeyHash=function(e){this.bindKey(e.bindKey,e)},this.parseKeys=function(e){var t=e.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(e){return e}),i=t.pop(),r=n[i];if(n.FUNCTION_KEYS[r])i=n.FUNCTION_KEYS[r].toLowerCase();else{if(!t.length)return{key:i,hashId:-1};if(1==t.length&&"shift"==t[0])return{key:i.toUpperCase(),hashId:-1}}for(var o=0,s=t.length;s--;){var a=n.KEY_MODS[t[s]];if(null==a)return"undefined"!=typeof console&&console.error("invalid modifier "+t[s]+" in "+e),!1;o|=a}return{key:i,hashId:o}},this.findKeyCommand=function(e,t){var i=o[e]+t;return this.commandKeyBinding[i]},this.handleKeyboard=function(e,t,i,n){if(!(n<0)){var r=o[t]+i,s=this.commandKeyBinding[r];return e.$keyChain&&(e.$keyChain+=" "+r,s=this.commandKeyBinding[e.$keyChain]||s),!s||"chainKeys"!=s&&"chainKeys"!=s[s.length-1]?(e.$keyChain&&(t&&4!=t||1!=i.length?(-1==t||n>0)&&(e.$keyChain=""):e.$keyChain=e.$keyChain.slice(0,-r.length-1)),{command:s}):(e.$keyChain=e.$keyChain||r,{command:"null"})}},this.getStatusText=function(e,t){return t.$keyChain||""}}.call(s.prototype),t.HashHandler=s,t.MultiHashHandler=a}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("../lib/oop"),r=e("../keyboard/hash_handler").MultiHashHandler,o=e("../lib/event_emitter").EventEmitter,s=function(e,t){r.call(this,t,e),this.byName=this.commands,this.setDefaultHandler("exec",function(e){return e.command.exec(e.editor,e.args||{})})};n.inherits(s,r),function(){n.implement(this,o),this.exec=function(e,t,i){if(Array.isArray(e)){for(var n=e.length;n--;)if(this.exec(e[n],t,i))return!0;return!1}if("string"==typeof e&&(e=this.commands[e]),!e)return!1;if(t&&t.$readOnly&&!e.readOnly)return!1;var r={editor:t,command:e,args:i};return r.returnValue=this._emit("exec",r),this._signal("afterExec",r),!1!==r.returnValue},this.toggleRecording=function(e){if(!this.$inReplay)return e&&e._emit("changeStatus"),this.recording?(this.macro.pop(),this.removeEventListener("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(e){this.macro.push([e.command,e.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},this.replay=function(e){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(e);try{this.$inReplay=!0,this.macro.forEach(function(t){"string"==typeof t?this.exec(t,e):this.exec(t[0],e,t[1])},this)}finally{this.$inReplay=!1}}},this.trimMacro=function(e){return e.map(function(e){return"string"!=typeof e[0]&&(e[0]=e[0].name),e[1]||(e=e[0]),e})}}.call(s.prototype),t.CommandManager=s}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(e,t,i){"use strict";var n=e("../lib/lang"),r=e("../config"),o=e("../range").Range;function s(e,t){return{win:e,mac:t}}t.commands=[{name:"showSettingsMenu",bindKey:s("Ctrl-,","Command-,"),exec:function(e){r.loadModule("ace/ext/settings_menu",function(t){t.init(e),e.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",bindKey:s("Alt-E","Ctrl-E"),exec:function(e){r.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",bindKey:s("Alt-Shift-E","Ctrl-Shift-E"),exec:function(e){r.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",bindKey:s("Ctrl-A","Command-A"),exec:function(e){e.selectAll()},readOnly:!0},{name:"centerselection",bindKey:s(null,"Ctrl-L"),exec:function(e){e.centerSelection()},readOnly:!0},{name:"gotoline",bindKey:s("Ctrl-L","Command-L"),exec:function(e){var t=parseInt(prompt("Enter line number:"),10);isNaN(t)||e.gotoLine(t)},readOnly:!0},{name:"fold",bindKey:s("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(e){e.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:s("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(e){e.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",bindKey:s("F2","F2"),exec:function(e){e.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",bindKey:s("Alt-F2","Alt-F2"),exec:function(e){e.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",bindKey:s(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",bindKey:s("Alt-0","Command-Option-0"),exec:function(e){e.session.foldAll(),e.session.unfold(e.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",bindKey:s("Alt-Shift-0","Command-Option-Shift-0"),exec:function(e){e.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",bindKey:s("Ctrl-K","Command-G"),exec:function(e){e.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",bindKey:s("Ctrl-Shift-K","Command-Shift-G"),exec:function(e){e.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",bindKey:s("Alt-K","Ctrl-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findNext()},readOnly:!0},{name:"selectOrFindPrevious",bindKey:s("Alt-Shift-K","Ctrl-Shift-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findPrevious()},readOnly:!0},{name:"find",bindKey:s("Ctrl-F","Command-F"),exec:function(e){r.loadModule("ace/ext/searchbox",function(t){t.Search(e)})},readOnly:!0},{name:"overwrite",bindKey:"Insert",exec:function(e){e.toggleOverwrite()},readOnly:!0},{name:"selecttostart",bindKey:s("Ctrl-Shift-Home","Command-Shift-Up"),exec:function(e){e.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",bindKey:s("Ctrl-Home","Command-Home|Command-Up"),exec:function(e){e.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",bindKey:s("Shift-Up","Shift-Up"),exec:function(e){e.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",bindKey:s("Up","Up|Ctrl-P"),exec:function(e,t){e.navigateUp(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",bindKey:s("Ctrl-Shift-End","Command-Shift-Down"),exec:function(e){e.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",bindKey:s("Ctrl-End","Command-End|Command-Down"),exec:function(e){e.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",bindKey:s("Shift-Down","Shift-Down"),exec:function(e){e.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",bindKey:s("Down","Down|Ctrl-N"),exec:function(e,t){e.navigateDown(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",bindKey:s("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(e){e.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",bindKey:s("Ctrl-Left","Option-Left"),exec:function(e){e.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",bindKey:s("Alt-Shift-Left","Command-Shift-Left"),exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",bindKey:s("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(e){e.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",bindKey:s("Shift-Left","Shift-Left"),exec:function(e){e.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",bindKey:s("Left","Left|Ctrl-B"),exec:function(e,t){e.navigateLeft(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",bindKey:s("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(e){e.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",bindKey:s("Ctrl-Right","Option-Right"),exec:function(e){e.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",bindKey:s("Alt-Shift-Right","Command-Shift-Right"),exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",bindKey:s("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(e){e.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",bindKey:s("Shift-Right","Shift-Right"),exec:function(e){e.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",bindKey:s("Right","Right|Ctrl-F"),exec:function(e,t){e.navigateRight(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",bindKey:"Shift-PageDown",exec:function(e){e.selectPageDown()},readOnly:!0},{name:"pagedown",bindKey:s(null,"Option-PageDown"),exec:function(e){e.scrollPageDown()},readOnly:!0},{name:"gotopagedown",bindKey:s("PageDown","PageDown|Ctrl-V"),exec:function(e){e.gotoPageDown()},readOnly:!0},{name:"selectpageup",bindKey:"Shift-PageUp",exec:function(e){e.selectPageUp()},readOnly:!0},{name:"pageup",bindKey:s(null,"Option-PageUp"),exec:function(e){e.scrollPageUp()},readOnly:!0},{name:"gotopageup",bindKey:"PageUp",exec:function(e){e.gotoPageUp()},readOnly:!0},{name:"scrollup",bindKey:s("Ctrl-Up",null),exec:function(e){e.renderer.scrollBy(0,-2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",bindKey:s("Ctrl-Down",null),exec:function(e){e.renderer.scrollBy(0,2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",bindKey:"Shift-Home",exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",bindKey:"Shift-End",exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",bindKey:s("Ctrl-Alt-E","Command-Option-E"),exec:function(e){e.commands.toggleRecording(e)},readOnly:!0},{name:"replaymacro",bindKey:s("Ctrl-Shift-E","Command-Shift-E"),exec:function(e){e.commands.replay(e)},readOnly:!0},{name:"jumptomatching",bindKey:s("Ctrl-P","Ctrl-P"),exec:function(e){e.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",bindKey:s("Ctrl-Shift-P","Ctrl-Shift-P"),exec:function(e){e.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",bindKey:s("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(e){e.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",bindKey:s(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",exec:function(e){},readOnly:!0},{name:"cut",exec:function(e){var t=e.getSelectionRange();e._emit("cut",t),e.selection.isEmpty()||(e.session.remove(t),e.clearSelection())},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",exec:function(e,t){e.$handlePaste(t)},scrollIntoView:"cursor"},{name:"removeline",bindKey:s("Ctrl-D","Command-D"),exec:function(e){e.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",bindKey:s("Ctrl-Shift-D","Command-Shift-D"),exec:function(e){e.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",bindKey:s("Ctrl-Alt-S","Command-Alt-S"),exec:function(e){e.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",bindKey:s("Ctrl-/","Command-/"),exec:function(e){e.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",bindKey:s("Ctrl-Shift-/","Command-Shift-/"),exec:function(e){e.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",bindKey:s("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(e){e.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",bindKey:s("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(e){e.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",bindKey:s("Ctrl-H","Command-Option-F"),exec:function(e){r.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"undo",bindKey:s("Ctrl-Z","Command-Z"),exec:function(e){e.undo()}},{name:"redo",bindKey:s("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(e){e.redo()}},{name:"copylinesup",bindKey:s("Alt-Shift-Up","Command-Option-Up"),exec:function(e){e.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",bindKey:s("Alt-Up","Option-Up"),exec:function(e){e.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",bindKey:s("Alt-Shift-Down","Command-Option-Down"),exec:function(e){e.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",bindKey:s("Alt-Down","Option-Down"),exec:function(e){e.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",bindKey:s("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(e){e.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",bindKey:s("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(e){e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",bindKey:s("Shift-Delete",null),exec:function(e){if(!e.selection.isEmpty())return!1;e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",bindKey:s("Alt-Backspace","Command-Backspace"),exec:function(e){e.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",bindKey:s("Alt-Delete","Ctrl-K"),exec:function(e){e.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",bindKey:s("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(e){e.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",bindKey:s("Ctrl-Delete","Alt-Delete"),exec:function(e){e.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",bindKey:s("Shift-Tab","Shift-Tab"),exec:function(e){e.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",bindKey:s("Tab","Tab"),exec:function(e){e.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",bindKey:s("Ctrl-[","Ctrl-["),exec:function(e){e.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",bindKey:s("Ctrl-]","Ctrl-]"),exec:function(e){e.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",exec:function(e,t){e.insert(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",exec:function(e,t){e.insert(n.stringRepeat(t.text||"",t.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",bindKey:s(null,"Ctrl-O"),exec:function(e){e.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",bindKey:s("Ctrl-T","Ctrl-T"),exec:function(e){e.transposeLetters()},multiSelectAction:function(e){e.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",bindKey:s("Ctrl-U","Ctrl-U"),exec:function(e){e.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",bindKey:s("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(e){e.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"expandtoline",bindKey:s("Ctrl-Shift-L","Command-Shift-L"),exec:function(e){var t=e.selection.getRange();t.start.column=t.end.column=0,t.end.row++,e.selection.setRange(t,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"joinlines",bindKey:s(null,null),exec:function(e){for(var t=e.selection.isBackwards(),i=t?e.selection.getSelectionLead():e.selection.getSelectionAnchor(),r=t?e.selection.getSelectionAnchor():e.selection.getSelectionLead(),s=e.session.doc.getLine(i.row).length,a=e.session.doc.getTextRange(e.selection.getRange()).replace(/\n\s*/," ").length,l=e.session.doc.getLine(i.row),c=i.row+1;c<=r.row+1;c++){var h=n.stringTrimLeft(n.stringTrimRight(e.session.doc.getLine(c)));0!==h.length&&(h=" "+h),l+=h}r.row+1<e.session.doc.getLength()-1&&(l+=e.session.doc.getNewLineCharacter()),e.clearSelection(),e.session.doc.replace(new o(i.row,0,r.row+2,0),l),a>0?(e.selection.moveCursorTo(i.row,i.column),e.selection.selectTo(i.row,i.column+a)):(s=e.session.doc.getLine(i.row).length>s?s+1:s,e.selection.moveCursorTo(i.row,s))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",bindKey:s(null,null),exec:function(e){var t=e.session.doc.getLength()-1,i=e.session.doc.getLine(t).length,n=e.selection.rangeList.ranges,r=[];n.length<1&&(n=[e.selection.getRange()]);for(var s=0;s<n.length;s++)s==n.length-1&&(n[s].end.row===t&&n[s].end.column===i||r.push(new o(n[s].end.row,n[s].end.column,t,i))),0===s?0===n[s].start.row&&0===n[s].start.column||r.push(new o(0,0,n[s].start.row,n[s].start.column)):r.push(new o(n[s-1].end.row,n[s-1].end.column,n[s].start.row,n[s].start.column));e.exitMultiSelectMode(),e.clearSelection();for(s=0;s<r.length;s++)e.selection.addRange(r[s],!1)},readOnly:!0,scrollIntoView:"none"}]}),ace.define("ace/editor",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/keyboard/textinput","ace/mouse/mouse_handler","ace/mouse/fold_handler","ace/keyboard/keybinding","ace/edit_session","ace/search","ace/range","ace/lib/event_emitter","ace/commands/command_manager","ace/commands/default_commands","ace/config","ace/token_iterator"],function(e,t,i){"use strict";e("./lib/fixoldbrowsers");var n=e("./lib/oop"),r=e("./lib/dom"),o=e("./lib/lang"),s=e("./lib/useragent"),a=e("./keyboard/textinput").TextInput,l=e("./mouse/mouse_handler").MouseHandler,c=e("./mouse/fold_handler").FoldHandler,h=e("./keyboard/keybinding").KeyBinding,u=e("./edit_session").EditSession,d=e("./search").Search,f=e("./range").Range,p=e("./lib/event_emitter").EventEmitter,m=e("./commands/command_manager").CommandManager,g=e("./commands/default_commands").commands,v=e("./config"),y=e("./token_iterator").TokenIterator,w=function(e,t){var i=e.getContainerElement();this.container=i,this.renderer=e,this.commands=new m(s.isMac?"mac":"win",g),this.textInput=new a(e.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.keyBinding=new h(this),this.$mouseHandler=new l(this),new c(this),this.$blockScrolling=0,this.$search=(new d).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=o.delayedCall(function(){this._signal("input",{}),this.session&&this.session.bgTokenizer&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(e,t){t._$emitInputEvent.schedule(31)}),this.setSession(t||new u("")),v.resetOptions(this),v._signal("editor",this)};(function(){n.implement(this,p),this.$initOperationListeners=function(){this.selections=[],this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0),this.$opResetTimer=o.delayedCall(this.endOperation.bind(this)),this.on("change",function(){this.curOp||this.startOperation(),this.curOp.docChanged=!0}.bind(this),!0),this.on("changeSelection",function(){this.curOp||this.startOperation(),this.curOp.selectionChanged=!0}.bind(this),!0)},this.curOp=null,this.prevOp={},this.startOperation=function(e){if(this.curOp){if(!e||this.curOp.command)return;this.prevOp=this.curOp}e||(this.previousCommand=null,e={}),this.$opResetTimer.schedule(),this.curOp={command:e.command||{},args:e.args,scrollTop:this.renderer.scrollTop},this.curOp.command.name&&void 0!==this.curOp.command.scrollIntoView&&this.$blockScrolling++},this.endOperation=function(e){if(this.curOp){if(e&&!1===e.returnValue)return this.curOp=null;this._signal("beforeEndOperation");var t=this.curOp.command;t.name&&this.$blockScrolling>0&&this.$blockScrolling--;var i=t&&t.scrollIntoView;if(i){switch(i){case"center-animate":i="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var n=this.selection.getRange(),r=this.renderer.layerConfig;(n.start.row>=r.lastRow||n.end.row<=r.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}"animate"==i&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.prevOp=this.curOp,this.curOp=null}},this.$mergeableCommands=["backspace","del","insertstring"],this.$historyTracker=function(e){if(this.$mergeUndoDeltas){var t=this.prevOp,i=this.$mergeableCommands,n=t.command&&e.command.name==t.command.name;if("insertstring"==e.command.name){var r=e.args;void 0===this.mergeNextCommand&&(this.mergeNextCommand=!0),n=n&&this.mergeNextCommand&&(!/\s/.test(r)||/\s/.test(t.args)),this.mergeNextCommand=!0}else n=n&&-1!==i.indexOf(e.command.name);"always"!=this.$mergeUndoDeltas&&Date.now()-this.sequenceStartTime>2e3&&(n=!1),n?this.session.mergeUndoDeltas=!0:-1!==i.indexOf(e.command.name)&&(this.sequenceStartTime=Date.now())}},this.setKeyboardHandler=function(e,t){if(e&&"string"==typeof e){this.$keybindingId=e;var i=this;v.loadModule(["keybinding",e],function(n){i.$keybindingId==e&&i.keyBinding.setKeyboardHandler(n&&n.handler),t&&t()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(e),t&&t()},this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},this.setSession=function(e){if(this.session!=e){this.curOp&&this.endOperation(),this.curOp={};var t=this.session;if(t){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange);var i=this.session.getSelection();i.off("changeCursor",this.$onCursorChange),i.off("changeSelection",this.$onSelectionChange)}this.session=e,e?(this.$onDocumentChange=this.onDocumentChange.bind(this),e.on("change",this.$onDocumentChange),this.renderer.setSession(e),this.$onChangeMode=this.onChangeMode.bind(this),e.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),e.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),e.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),e.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),e.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),e.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=e.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.$blockScrolling+=1,this.onCursorChange(),this.$blockScrolling-=1,this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(e)),this._signal("changeSession",{session:e,oldSession:t}),this.curOp=null,t&&t._signal("changeEditor",{oldEditor:this}),e&&e._signal("changeEditor",{editor:this})}},this.getSession=function(){return this.session},this.setValue=function(e,t){return this.session.doc.setValue(e),t?1==t?this.navigateFileEnd():-1==t&&this.navigateFileStart():this.selectAll(),e},this.getValue=function(){return this.session.getValue()},this.getSelection=function(){return this.selection},this.resize=function(e){this.renderer.onResize(e)},this.setTheme=function(e,t){this.renderer.setTheme(e,t)},this.getTheme=function(){return this.renderer.getTheme()},this.setStyle=function(e){this.renderer.setStyle(e)},this.unsetStyle=function(e){this.renderer.unsetStyle(e)},this.getFontSize=function(){return this.getOption("fontSize")||r.computedStyle(this.container,"fontSize")},this.setFontSize=function(e){this.setOption("fontSize",e)},this.$highlightBrackets=function(){if(this.session.$bracketHighlight&&(this.session.removeMarker(this.session.$bracketHighlight),this.session.$bracketHighlight=null),!this.$highlightPending){var e=this;this.$highlightPending=!0,setTimeout(function(){e.$highlightPending=!1;var t=e.session;if(t&&t.bgTokenizer){var i=t.findMatchingBracket(e.getCursorPosition());if(i)var n=new f(i.row,i.column,i.row,i.column+1);else if(t.$mode.getMatching)n=t.$mode.getMatching(e.session);n&&(t.$bracketHighlight=t.addMarker(n,"ace_bracket","text"))}},50)}},this.$highlightTags=function(){if(!this.$highlightTagPending){var e=this;this.$highlightTagPending=!0,setTimeout(function(){e.$highlightTagPending=!1;var t=e.session;if(t&&t.bgTokenizer){var i=e.getCursorPosition(),n=new y(e.session,i.row,i.column),r=n.getCurrentToken();if(!r||!/\b(?:tag-open|tag-name)/.test(r.type))return t.removeMarker(t.$tagHighlight),void(t.$tagHighlight=null);if(-1==r.type.indexOf("tag-open")||(r=n.stepForward())){var o=r.value,s=0,a=n.stepBackward();if("<"==a.value)do{a=r,(r=n.stepForward())&&r.value===o&&-1!==r.type.indexOf("tag-name")&&("<"===a.value?s++:"</"===a.value&&s--)}while(r&&s>=0);else{do{r=a,a=n.stepBackward(),r&&r.value===o&&-1!==r.type.indexOf("tag-name")&&("<"===a.value?s++:"</"===a.value&&s--)}while(a&&s<=0);n.stepForward()}if(!r)return t.removeMarker(t.$tagHighlight),void(t.$tagHighlight=null);var l=n.getCurrentTokenRow(),c=n.getCurrentTokenColumn(),h=new f(l,c,l,c+r.value.length);t.$tagHighlight&&0!==h.compareRange(t.$backMarkers[t.$tagHighlight].range)&&(t.removeMarker(t.$tagHighlight),t.$tagHighlight=null),h&&!t.$tagHighlight&&(t.$tagHighlight=t.addMarker(h,"ace_bracket","text"))}}},50)}},this.focus=function(){var e=this;setTimeout(function(){e.textInput.focus()}),this.textInput.focus()},this.isFocused=function(){return this.textInput.isFocused()},this.blur=function(){this.textInput.blur()},this.onFocus=function(e){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",e))},this.onBlur=function(e){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",e))},this.$cursorChange=function(){this.renderer.updateCursor()},this.onDocumentChange=function(e){var t=this.session.$useWrapMode,i=e.start.row==e.end.row?e.end.row:1/0;this.renderer.updateLines(e.start.row,i,t),this._signal("change",e),this.$cursorChange(),this.$updateHighlightActiveLine()},this.onTokenizerUpdate=function(e){var t=e.data;this.renderer.updateLines(t.first,t.last)},this.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},this.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},this.onCursorChange=function(){this.$cursorChange(),this.$blockScrolling||(v.warn("Automatically scrolling cursor into view after selection change","this will be disabled in the next version","set editor.$blockScrolling = Infinity to disable this message"),this.renderer.scrollCursorIntoView()),this.$highlightBrackets(),this.$highlightTags(),this.$updateHighlightActiveLine(),this._signal("changeSelection")},this.$updateHighlightActiveLine=function(){var e,t=this.getSession();if(this.$highlightActiveLine&&("line"==this.$selectionStyle&&this.selection.isMultiLine()||(e=this.getCursorPosition()),!this.renderer.$maxLines||1!==this.session.getLength()||this.renderer.$minLines>1||(e=!1)),t.$highlightLineMarker&&!e)t.removeMarker(t.$highlightLineMarker.id),t.$highlightLineMarker=null;else if(!t.$highlightLineMarker&&e){var i=new f(e.row,e.column,e.row,1/0);i.id=t.addMarker(i,"ace_active-line","screenLine"),t.$highlightLineMarker=i}else e&&(t.$highlightLineMarker.start.row=e.row,t.$highlightLineMarker.end.row=e.row,t.$highlightLineMarker.start.column=e.column,t._signal("changeBackMarker"))},this.onSelectionChange=function(e){var t=this.session;if(t.$selectionMarker&&t.removeMarker(t.$selectionMarker),t.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var i=this.selection.getRange(),n=this.getSelectionStyle();t.$selectionMarker=t.addMarker(i,"ace_selection",n)}var r=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(r),this._signal("changeSelection")},this.$getSelectionHighLightRegexp=function(){var e=this.session,t=this.getSelectionRange();if(!t.isEmpty()&&!t.isMultiLine()){var i=t.start.column-1,n=t.end.column+1,r=e.getLine(t.start.row),o=r.length,s=r.substring(Math.max(i,0),Math.min(n,o));if(!(i>=0&&/^[\w\d]/.test(s)||n<=o&&/[\w\d]$/.test(s)))if(s=r.substring(t.start.column,t.end.column),/^[\w\d]+$/.test(s))return this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:s})}},this.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},this.onChangeMode=function(e){this.renderer.updateText(),this._emit("changeMode",e)},this.onChangeWrapLimit=function(){this.renderer.updateFull()},this.onChangeWrapMode=function(){this.renderer.onResize(!0)},this.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},this.getCopyText=function(){var e=this.getSelectedText();return this._signal("copy",e),e},this.onCopy=function(){this.commands.exec("copy",this)},this.onCut=function(){this.commands.exec("cut",this)},this.onPaste=function(e,t){var i={text:e,event:t};this.commands.exec("paste",this,i)},this.$handlePaste=function(e){"string"==typeof e&&(e={text:e}),this._signal("paste",e);var t=e.text;if(!this.inMultiSelectMode||this.inVirtualSelectionMode)this.insert(t);else{var i=t.split(/\r\n|\r|\n/),n=this.selection.rangeList.ranges;if(i.length>n.length||i.length<2||!i[1])return this.commands.exec("insertstring",this,t);for(var r=n.length;r--;){var o=n[r];o.isEmpty()||this.session.remove(o),this.session.insert(o.start,i[r])}}},this.execCommand=function(e,t){return this.commands.exec(e,this,t)},this.insert=function(e,t){var i=this.session,n=i.getMode(),r=this.getCursorPosition();if(this.getBehavioursEnabled()&&!t){var o=n.transformAction(i.getState(r.row),"insertion",this,i,e);o&&(e!==o.text&&(this.session.mergeUndoDeltas=!1,this.$mergeNextCommand=!1),e=o.text)}if("\t"==e&&(e=this.session.getTabString()),this.selection.isEmpty()){if(this.session.getOverwrite()){(s=new f.fromPoints(r,r)).end.column+=e.length,this.session.remove(s)}}else{var s=this.getSelectionRange();r=this.session.remove(s),this.clearSelection()}if("\n"==e||"\r\n"==e){var a=i.getLine(r.row);if(r.column>a.search(/\S|$/)){var l=a.substr(r.column).search(/\S|$/);i.doc.removeInLine(r.row,r.column,r.column+l)}}this.clearSelection();var c=r.column,h=i.getState(r.row),u=(a=i.getLine(r.row),n.checkOutdent(h,a,e));i.insert(r,e);if(o&&o.selection&&(2==o.selection.length?this.selection.setSelectionRange(new f(r.row,c+o.selection[0],r.row,c+o.selection[1])):this.selection.setSelectionRange(new f(r.row+o.selection[0],o.selection[1],r.row+o.selection[2],o.selection[3]))),i.getDocument().isNewLine(e)){var d=n.getNextLineIndent(h,a.slice(0,r.column),i.getTabString());i.insert({row:r.row+1,column:0},d)}u&&n.autoOutdent(h,i,r.row)},this.onTextInput=function(e){this.keyBinding.onTextInput(e)},this.onCommandKey=function(e,t,i){this.keyBinding.onCommandKey(e,t,i)},this.setOverwrite=function(e){this.session.setOverwrite(e)},this.getOverwrite=function(){return this.session.getOverwrite()},this.toggleOverwrite=function(){this.session.toggleOverwrite()},this.setScrollSpeed=function(e){this.setOption("scrollSpeed",e)},this.getScrollSpeed=function(){return this.getOption("scrollSpeed")},this.setDragDelay=function(e){this.setOption("dragDelay",e)},this.getDragDelay=function(){return this.getOption("dragDelay")},this.setSelectionStyle=function(e){this.setOption("selectionStyle",e)},this.getSelectionStyle=function(){return this.getOption("selectionStyle")},this.setHighlightActiveLine=function(e){this.setOption("highlightActiveLine",e)},this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.setHighlightSelectedWord=function(e){this.setOption("highlightSelectedWord",e)},this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},this.setAnimatedScroll=function(e){this.renderer.setAnimatedScroll(e)},this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},this.setShowInvisibles=function(e){this.renderer.setShowInvisibles(e)},this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},this.setDisplayIndentGuides=function(e){this.renderer.setDisplayIndentGuides(e)},this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},this.setShowPrintMargin=function(e){this.renderer.setShowPrintMargin(e)},this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},this.setPrintMarginColumn=function(e){this.renderer.setPrintMarginColumn(e)},this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},this.setReadOnly=function(e){this.setOption("readOnly",e)},this.getReadOnly=function(){return this.getOption("readOnly")},this.setBehavioursEnabled=function(e){this.setOption("behavioursEnabled",e)},this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},this.setWrapBehavioursEnabled=function(e){this.setOption("wrapBehavioursEnabled",e)},this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},this.setShowFoldWidgets=function(e){this.setOption("showFoldWidgets",e)},this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.remove=function(e){this.selection.isEmpty()&&("left"==e?this.selection.selectLeft():this.selection.selectRight());var t=this.getSelectionRange();if(this.getBehavioursEnabled()){var i=this.session,n=i.getState(t.start.row),r=i.getMode().transformAction(n,"deletion",this,i,t);if(0===t.end.column){var o=i.getTextRange(t);if("\n"==o[o.length-1]){var s=i.getLine(t.end.row);/^\s+$/.test(s)&&(t.end.column=s.length)}}r&&(t=r)}this.session.remove(t),this.clearSelection()},this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var e=this.getSelectionRange();e.start.column==e.end.column&&e.start.row==e.end.row&&(e.end.column=0,e.end.row++),this.session.remove(e),this.clearSelection()},this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var e=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(e)},this.transposeLetters=function(){if(this.selection.isEmpty()){var e=this.getCursorPosition(),t=e.column;if(0!==t){var i,n,r=this.session.getLine(e.row);t<r.length?(i=r.charAt(t)+r.charAt(t-1),n=new f(e.row,t-1,e.row,t+1)):(i=r.charAt(t-1)+r.charAt(t-2),n=new f(e.row,t-2,e.row,t)),this.session.replace(n,i)}}},this.toLowerCase=function(){var e=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var t=this.getSelectionRange(),i=this.session.getTextRange(t);this.session.replace(t,i.toLowerCase()),this.selection.setSelectionRange(e)},this.toUpperCase=function(){var e=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var t=this.getSelectionRange(),i=this.session.getTextRange(t);this.session.replace(t,i.toUpperCase()),this.selection.setSelectionRange(e)},this.indent=function(){var e=this.session,t=this.getSelectionRange();if(!(t.start.row<t.end.row)){if(t.start.column<t.end.column){var i=e.getTextRange(t);if(!/^\s+$/.test(i)){h=this.$getSelectedRows();return void e.indentRows(h.first,h.last,"\t")}}var n=e.getLine(t.start.row),r=t.start,s=e.getTabSize(),a=e.documentToScreenColumn(r.row,r.column);if(this.session.getUseSoftTabs())var l=s-a%s,c=o.stringRepeat(" ",l);else{for(l=a%s;" "==n[t.start.column]&&l;)t.start.column--,l--;this.selection.setSelectionRange(t),c="\t"}return this.insert(c)}var h=this.$getSelectedRows();e.indentRows(h.first,h.last,"\t")},this.blockIndent=function(){var e=this.$getSelectedRows();this.session.indentRows(e.first,e.last,"\t")},this.blockOutdent=function(){var e=this.session.getSelection();this.session.outdentRows(e.getRange())},this.sortLines=function(){var e=this.$getSelectedRows(),t=this.session,i=[];for(r=e.first;r<=e.last;r++)i.push(t.getLine(r));i.sort(function(e,t){return e.toLowerCase()<t.toLowerCase()?-1:e.toLowerCase()>t.toLowerCase()?1:0});for(var n=new f(0,0,0,0),r=e.first;r<=e.last;r++){var o=t.getLine(r);n.start.row=r,n.end.row=r,n.end.column=o.length,t.replace(n,i[r-e.first])}},this.toggleCommentLines=function(){var e=this.session.getState(this.getCursorPosition().row),t=this.$getSelectedRows();this.session.getMode().toggleCommentLines(e,this.session,t.first,t.last)},this.toggleBlockComment=function(){var e=this.getCursorPosition(),t=this.session.getState(e.row),i=this.getSelectionRange();this.session.getMode().toggleBlockComment(t,this.session,i,e)},this.getNumberAt=function(e,t){var i=/[\-]?[0-9]+(?:\.[0-9]+)?/g;i.lastIndex=0;for(var n=this.session.getLine(e);i.lastIndex<t;){var r=i.exec(n);if(r.index<=t&&r.index+r[0].length>=t)return{value:r[0],start:r.index,end:r.index+r[0].length}}return null},this.modifyNumber=function(e){var t=this.selection.getCursor().row,i=this.selection.getCursor().column,n=new f(t,i-1,t,i),r=this.session.getTextRange(n);if(!isNaN(parseFloat(r))&&isFinite(r)){var o=this.getNumberAt(t,i);if(o){var s=o.value.indexOf(".")>=0?o.start+o.value.indexOf(".")+1:o.end,a=o.start+o.value.length-s,l=parseFloat(o.value);l*=Math.pow(10,a),s!==o.end&&i<s?e*=Math.pow(10,o.end-i-1):e*=Math.pow(10,o.end-i),l+=e;var c=(l/=Math.pow(10,a)).toFixed(a),h=new f(t,o.start,t,o.end);this.session.replace(h,c),this.moveCursorTo(t,Math.max(o.start+1,i+c.length-o.value.length))}}},this.removeLines=function(){var e=this.$getSelectedRows();this.session.removeFullLines(e.first,e.last),this.clearSelection()},this.duplicateSelection=function(){var e=this.selection,t=this.session,i=e.getRange(),n=e.isBackwards();if(i.isEmpty()){var r=i.start.row;t.duplicateLines(r,r)}else{var o=n?i.start:i.end,s=t.insert(o,t.getTextRange(i),!1);i.start=o,i.end=s,e.setSelectionRange(i,n)}},this.moveLinesDown=function(){this.$moveLines(1,!1)},this.moveLinesUp=function(){this.$moveLines(-1,!1)},this.moveText=function(e,t,i){return this.session.moveText(e,t,i)},this.copyLinesUp=function(){this.$moveLines(-1,!0)},this.copyLinesDown=function(){this.$moveLines(1,!0)},this.$moveLines=function(e,t){var i,n,r=this.selection;if(!r.inMultiSelectMode||this.inVirtualSelectionMode){var o=r.toOrientedRange();i=this.$getSelectedRows(o),n=this.session.$moveLines(i.first,i.last,t?0:e),t&&-1==e&&(n=0),o.moveBy(n,0),r.fromOrientedRange(o)}else{var s=r.rangeList.ranges;r.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;for(var a=0,l=0,c=s.length,h=0;h<c;h++){var u=h;s[h].moveBy(a,0);for(var d=(i=this.$getSelectedRows(s[h])).first,f=i.last;++h<c;){l&&s[h].moveBy(l,0);var p=this.$getSelectedRows(s[h]);if(t&&p.first!=f)break;if(!t&&p.first>f+1)break;f=p.last}for(h--,a=this.session.$moveLines(d,f,t?0:e),t&&-1==e&&(u=h+1);u<=h;)s[u].moveBy(a,0),u++;t||(a=0),l+=a}r.fromOrientedRange(r.ranges[0]),r.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},this.$getSelectedRows=function(e){return e=(e||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(e.start.row),last:this.session.getRowFoldEnd(e.end.row)}},this.onCompositionStart=function(e){this.renderer.showComposition(this.getCursorPosition())},this.onCompositionUpdate=function(e){this.renderer.setCompositionText(e)},this.onCompositionEnd=function(){this.renderer.hideComposition()},this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},this.isRowVisible=function(e){return e>=this.getFirstVisibleRow()&&e<=this.getLastVisibleRow()},this.isRowFullyVisible=function(e){return e>=this.renderer.getFirstFullyVisibleRow()&&e<=this.renderer.getLastFullyVisibleRow()},this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},this.$moveByPage=function(e,t){var i=this.renderer,n=this.renderer.layerConfig,r=e*Math.floor(n.height/n.lineHeight);this.$blockScrolling++,!0===t?this.selection.$moveSelection(function(){this.moveCursorBy(r,0)}):!1===t&&(this.selection.moveCursorBy(r,0),this.selection.clearSelection()),this.$blockScrolling--;var o=i.scrollTop;i.scrollBy(0,r*n.lineHeight),null!=t&&i.scrollCursorIntoView(null,.5),i.animateScrolling(o)},this.selectPageDown=function(){this.$moveByPage(1,!0)},this.selectPageUp=function(){this.$moveByPage(-1,!0)},this.gotoPageDown=function(){this.$moveByPage(1,!1)},this.gotoPageUp=function(){this.$moveByPage(-1,!1)},this.scrollPageDown=function(){this.$moveByPage(1)},this.scrollPageUp=function(){this.$moveByPage(-1)},this.scrollToRow=function(e){this.renderer.scrollToRow(e)},this.scrollToLine=function(e,t,i,n){this.renderer.scrollToLine(e,t,i,n)},this.centerSelection=function(){var e=this.getSelectionRange(),t={row:Math.floor(e.start.row+(e.end.row-e.start.row)/2),column:Math.floor(e.start.column+(e.end.column-e.start.column)/2)};this.renderer.alignCursor(t,.5)},this.getCursorPosition=function(){return this.selection.getCursor()},this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},this.getSelectionRange=function(){return this.selection.getRange()},this.selectAll=function(){this.$blockScrolling+=1,this.selection.selectAll(),this.$blockScrolling-=1},this.clearSelection=function(){this.selection.clearSelection()},this.moveCursorTo=function(e,t){this.selection.moveCursorTo(e,t)},this.moveCursorToPosition=function(e){this.selection.moveCursorToPosition(e)},this.jumpToMatching=function(e,t){var i=this.getCursorPosition(),n=new y(this.session,i.row,i.column),r=n.getCurrentToken(),o=r||n.stepForward();if(o){var s,a,l=!1,c={},h=i.column-o.start,u={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(o.value.match(/[{}()\[\]]/g)){for(;h<o.value.length&&!l;h++)if(u[o.value[h]])switch(a=u[o.value[h]]+"."+o.type.replace("rparen","lparen"),isNaN(c[a])&&(c[a]=0),o.value[h]){case"(":case"[":case"{":c[a]++;break;case")":case"]":case"}":c[a]--,-1===c[a]&&(s="bracket",l=!0)}}else o&&-1!==o.type.indexOf("tag-name")&&(isNaN(c[o.value])&&(c[o.value]=0),"<"===r.value?c[o.value]++:"</"===r.value&&c[o.value]--,-1===c[o.value]&&(s="tag",l=!0));l||(r=o,o=n.stepForward(),h=0)}while(o&&!l);if(s){var d,p;if("bracket"===s)(d=this.session.getBracketRange(i))||(p=(d=new f(n.getCurrentTokenRow(),n.getCurrentTokenColumn()+h-1,n.getCurrentTokenRow(),n.getCurrentTokenColumn()+h-1)).start,(t||p.row===i.row&&Math.abs(p.column-i.column)<2)&&(d=this.session.getBracketRange(p)));else if("tag"===s){if(!o||-1===o.type.indexOf("tag-name"))return;var m=o.value;if(0===(d=new f(n.getCurrentTokenRow(),n.getCurrentTokenColumn()-2,n.getCurrentTokenRow(),n.getCurrentTokenColumn()-2)).compare(i.row,i.column)){l=!1;do{o=r,(r=n.stepBackward())&&(-1!==r.type.indexOf("tag-close")&&d.setEnd(n.getCurrentTokenRow(),n.getCurrentTokenColumn()+1),o.value===m&&-1!==o.type.indexOf("tag-name")&&("<"===r.value?c[m]++:"</"===r.value&&c[m]--,0===c[m]&&(l=!0)))}while(r&&!l)}o&&o.type.indexOf("tag-name")&&(p=d.start).row==i.row&&Math.abs(p.column-i.column)<2&&(p=d.end)}(p=d&&d.cursor||p)&&(e?d&&t?this.selection.setRange(d):d&&d.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo(p.row,p.column):this.selection.moveTo(p.row,p.column))}}},this.gotoLine=function(e,t,i){this.selection.clearSelection(),this.session.unfold({row:e-1,column:t||0}),this.$blockScrolling+=1,this.exitMultiSelectMode&&this.exitMultiSelectMode(),this.moveCursorTo(e-1,t||0),this.$blockScrolling-=1,this.isRowFullyVisible(e-1)||this.scrollToLine(e-1,!0,i)},this.navigateTo=function(e,t){this.selection.moveTo(e,t)},this.navigateUp=function(e){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection(),this.selection.moveCursorBy(-e||-1,0)},this.navigateDown=function(e){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection(),this.selection.moveCursorBy(e||1,0)},this.navigateLeft=function(e){if(this.selection.isEmpty())for(e=e||1;e--;)this.selection.moveCursorLeft();else{var t=this.getSelectionRange().start;this.moveCursorToPosition(t)}this.clearSelection()},this.navigateRight=function(e){if(this.selection.isEmpty())for(e=e||1;e--;)this.selection.moveCursorRight();else{var t=this.getSelectionRange().end;this.moveCursorToPosition(t)}this.clearSelection()},this.navigateLineStart=function(){this.selection.moveCursorLineStart(),this.clearSelection()},this.navigateLineEnd=function(){this.selection.moveCursorLineEnd(),this.clearSelection()},this.navigateFileEnd=function(){this.selection.moveCursorFileEnd(),this.clearSelection()},this.navigateFileStart=function(){this.selection.moveCursorFileStart(),this.clearSelection()},this.navigateWordRight=function(){this.selection.moveCursorWordRight(),this.clearSelection()},this.navigateWordLeft=function(){this.selection.moveCursorWordLeft(),this.clearSelection()},this.replace=function(e,t){t&&this.$search.set(t);var i=this.$search.find(this.session),n=0;return i?(this.$tryReplace(i,e)&&(n=1),null!==i&&(this.selection.setSelectionRange(i),this.renderer.scrollSelectionIntoView(i.start,i.end)),n):n},this.replaceAll=function(e,t){t&&this.$search.set(t);var i=this.$search.findAll(this.session),n=0;if(!i.length)return n;this.$blockScrolling+=1;var r=this.getSelectionRange();this.selection.moveTo(0,0);for(var o=i.length-1;o>=0;--o)this.$tryReplace(i[o],e)&&n++;return this.selection.setSelectionRange(r),this.$blockScrolling-=1,n},this.$tryReplace=function(e,t){var i=this.session.getTextRange(e);return null!==(t=this.$search.replace(i,t))?(e.end=this.session.replace(e,t),e):null},this.getLastSearchOptions=function(){return this.$search.getOptions()},this.find=function(e,t,i){t||(t={}),"string"==typeof e||e instanceof RegExp?t.needle=e:"object"==typeof e&&n.mixin(t,e);var r=this.selection.getRange();null==t.needle&&((e=this.session.getTextRange(r)||this.$search.$options.needle)||(r=this.session.getWordRange(r.start.row,r.start.column),e=this.session.getTextRange(r)),this.$search.set({needle:e})),this.$search.set(t),t.start||this.$search.set({start:r});var o=this.$search.find(this.session);return t.preventScroll?o:o?(this.revealRange(o,i),o):(t.backwards?r.start=r.end:r.end=r.start,void this.selection.setRange(r))},this.findNext=function(e,t){this.find({skipCurrent:!0,backwards:!1},e,t)},this.findPrevious=function(e,t){this.find(e,{skipCurrent:!0,backwards:!0},t)},this.revealRange=function(e,t){this.$blockScrolling+=1,this.session.unfold(e),this.selection.setSelectionRange(e),this.$blockScrolling-=1;var i=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(e.start,e.end,.5),!1!==t&&this.renderer.animateScrolling(i)},this.undo=function(){this.$blockScrolling++,this.session.getUndoManager().undo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.redo=function(){this.$blockScrolling++,this.session.getUndoManager().redo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.destroy=function(){this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy()},this.setAutoScrollEditorIntoView=function(e){if(e){var t,i=this,n=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var r=this.$scrollAnchor;r.style.cssText="position:absolute",this.container.insertBefore(r,this.container.firstChild);var o=this.on("changeSelection",function(){n=!0}),s=this.renderer.on("beforeRender",function(){n&&(t=i.renderer.container.getBoundingClientRect())}),a=this.renderer.on("afterRender",function(){if(n&&t&&(i.isFocused()||i.searchBox&&i.searchBox.isFocused())){var e=i.renderer,o=e.$cursorLayer.$pixelPos,s=e.layerConfig,a=o.top-s.offset;null!=(n=o.top>=0&&a+t.top<0||!(o.top<s.height&&o.top+t.top+s.lineHeight>window.innerHeight)&&null)&&(r.style.top=a+"px",r.style.left=o.left+"px",r.style.height=s.lineHeight+"px",r.scrollIntoView(n)),n=t=null}});this.setAutoScrollEditorIntoView=function(e){e||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",o),this.renderer.off("afterRender",a),this.renderer.off("beforeRender",s))}}},this.$resetCursorStyle=function(){var e=this.$cursorStyle||"ace",t=this.renderer.$cursorLayer;t&&(t.setSmoothBlinking(/smooth/.test(e)),t.isBlinking=!this.$readOnly&&"wide"!=e,r.setCssClass(t.element,"ace_slim-cursors",/slim/.test(e)))}}).call(w.prototype),v.defineOptions(w.prototype,"editor",{selectionStyle:{set:function(e){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:e})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(e){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(e){this.$resetCursorStyle()},initialValue:!1},cursorStyle:{set:function(e){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},autoScrollEditorIntoView:{set:function(e){this.setAutoScrollEditorIntoView(e)}},keyboardHandler:{set:function(e){this.setKeyboardHandler(e)},get:function(){return this.keybindingId},handlesSet:!0},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",showLineNumbers:"renderer",showGutter:"renderer",displayIndentGuides:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"}),t.Editor=w}),ace.define("ace/undomanager",["require","exports","module"],function(e,t,i){"use strict";var n=function(){this.reset()};(function(){function e(e){return{action:e.action,start:e.start,end:e.end,lines:1==e.lines.length?null:e.lines,text:1==e.lines.length?e.lines[0]:null}}function t(e){return{action:e.action,start:e.start,end:e.end,lines:e.lines||[e.text]}}function i(e,t){for(var i=new Array(e.length),n=0;n<e.length;n++){for(var r=e[n],o={group:r.group,deltas:new Array(r.length)},s=0;s<r.deltas.length;s++){var a=r.deltas[s];o.deltas[s]=t(a)}i[n]=o}return i}this.execute=function(e){var t=e.args[0];this.$doc=e.args[1],e.merge&&this.hasUndo()&&(this.dirtyCounter--,t=this.$undoStack.pop().concat(t)),this.$undoStack.push(t),this.$redoStack=[],this.dirtyCounter<0&&(this.dirtyCounter=NaN),this.dirtyCounter++},this.undo=function(e){var t=this.$undoStack.pop(),i=null;return t&&(i=this.$doc.undoChanges(t,e),this.$redoStack.push(t),this.dirtyCounter--),i},this.redo=function(e){var t=this.$redoStack.pop(),i=null;return t&&(i=this.$doc.redoChanges(this.$deserializeDeltas(t),e),this.$undoStack.push(t),this.dirtyCounter++),i},this.reset=function(){this.$undoStack=[],this.$redoStack=[],this.dirtyCounter=0},this.hasUndo=function(){return this.$undoStack.length>0},this.hasRedo=function(){return this.$redoStack.length>0},this.markClean=function(){this.dirtyCounter=0},this.isClean=function(){return 0===this.dirtyCounter},this.$serializeDeltas=function(t){return i(t,e)},this.$deserializeDeltas=function(e){return i(e,t)}}).call(n.prototype),t.UndoManager=n}),ace.define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("../lib/dom"),r=e("../lib/oop"),o=e("../lib/lang"),s=e("../lib/event_emitter").EventEmitter,a=function(e){this.element=n.createElement("div"),this.element.className="ace_layer ace_gutter-layer",e.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$cells=[]};(function(){r.implement(this,s),this.setSession=function(e){this.session&&this.session.removeEventListener("change",this.$updateAnnotations),this.session=e,e&&e.on("change",this.$updateAnnotations)},this.addGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(e,t)},this.setAnnotations=function(e){this.$annotations=[];for(var t=0;t<e.length;t++){var i=e[t],n=i.row,r=this.$annotations[n];r||(r=this.$annotations[n]={text:[]});var s=i.text;s=s?o.escapeHTML(s):i.html||"",-1===r.text.indexOf(s)&&r.text.push(s);var a=i.type;"error"==a?r.className=" ace_error":"warning"==a&&" ace_error"!=r.className?r.className=" ace_warning":"info"!=a||r.className||(r.className=" ace_info")}},this.$updateAnnotations=function(e){if(this.$annotations.length){var t=e.start.row,i=e.end.row-t;if(0===i);else if("remove"==e.action)this.$annotations.splice(t,i+1,null);else{var n=new Array(i+1);n.unshift(t,1),this.$annotations.splice.apply(this.$annotations,n)}}},this.update=function(e){for(var t=this.session,i=e.firstRow,r=Math.min(e.lastRow+e.gutterOffset,t.getLength()-1),o=t.getNextFoldLine(i),s=o?o.start.row:1/0,a=this.$showFoldWidgets&&t.foldWidgets,l=t.$breakpoints,c=t.$decorations,h=t.$firstLineNumber,u=0,d=t.gutterRenderer||this.$renderer,f=null,p=-1,m=i;;){if(m>s&&(m=o.end.row+1,s=(o=t.getNextFoldLine(m,o))?o.start.row:1/0),m>r){for(;this.$cells.length>p+1;)f=this.$cells.pop(),this.element.removeChild(f.element);break}(f=this.$cells[++p])||((f={element:null,textNode:null,foldWidget:null}).element=n.createElement("div"),f.textNode=document.createTextNode(""),f.element.appendChild(f.textNode),this.element.appendChild(f.element),this.$cells[p]=f);var g="ace_gutter-cell ";if(l[m]&&(g+=l[m]),c[m]&&(g+=c[m]),this.$annotations[m]&&(g+=this.$annotations[m].className),f.element.className!=g&&(f.element.className=g),(y=t.getRowLength(m)*e.lineHeight+"px")!=f.element.style.height&&(f.element.style.height=y),a){var v=a[m];null==v&&(v=a[m]=t.getFoldWidget(m))}if(v){f.foldWidget||(f.foldWidget=n.createElement("span"),f.element.appendChild(f.foldWidget));g="ace_fold-widget ace_"+v;"start"==v&&m==s&&m<o.end.row?g+=" ace_closed":g+=" ace_open",f.foldWidget.className!=g&&(f.foldWidget.className=g);var y=e.lineHeight+"px";f.foldWidget.style.height!=y&&(f.foldWidget.style.height=y)}else f.foldWidget&&(f.element.removeChild(f.foldWidget),f.foldWidget=null);var w=u=d?d.getText(t,m):m+h;w!=f.textNode.data&&(f.textNode.data=w),m++}this.element.style.height=e.minHeight+"px",(this.$fixedWidth||t.$useWrapMode)&&(u=t.getLength()+h);var b=d?d.getWidth(t,u,e):u.toString().length*e.characterWidth,C=this.$padding||this.$computePadding();(b+=C.left+C.right)===this.gutterWidth||isNaN(b)||(this.gutterWidth=b,this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._emit("changeGutterWidth",b))},this.$fixedWidth=!1,this.$showLineNumbers=!0,this.$renderer="",this.setShowLineNumbers=function(e){this.$renderer=!e&&{getWidth:function(){return""},getText:function(){return""}}},this.getShowLineNumbers=function(){return this.$showLineNumbers},this.$showFoldWidgets=!0,this.setShowFoldWidgets=function(e){e?n.addCssClass(this.element,"ace_folding-enabled"):n.removeCssClass(this.element,"ace_folding-enabled"),this.$showFoldWidgets=e,this.$padding=null},this.getShowFoldWidgets=function(){return this.$showFoldWidgets},this.$computePadding=function(){if(!this.element.firstChild)return{left:0,right:0};var e=n.computedStyle(this.element.firstChild);return this.$padding={},this.$padding.left=parseInt(e.paddingLeft)+1||0,this.$padding.right=parseInt(e.paddingRight)||0,this.$padding},this.getRegion=function(e){var t=this.$padding||this.$computePadding(),i=this.element.getBoundingClientRect();return e.x<t.left+i.left?"markers":this.$showFoldWidgets&&e.x>i.right-t.right?"foldWidgets":void 0}}).call(a.prototype),t.Gutter=a}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,t,i){"use strict";var n=e("../range").Range,r=e("../lib/dom"),o=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_marker-layer",e.appendChild(this.element)};(function(){function e(e,t,i,n){return(e?1:0)|(t?2:0)|(i?4:0)|(n?8:0)}this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setMarkers=function(e){this.markers=e},this.update=function(e){if(e=e||this.config){this.config=e;var t=[];for(var i in this.markers){var n=this.markers[i];if(n.range){var r=n.range.clipRows(e.firstRow,e.lastRow);if(!r.isEmpty())if(r=r.toScreenRange(this.session),n.renderer){var o=this.$getTop(r.start.row,e),s=this.$padding+r.start.column*e.characterWidth;n.renderer(t,r,s,o,e)}else"fullLine"==n.type?this.drawFullLineMarker(t,r,n.clazz,e):"screenLine"==n.type?this.drawScreenLineMarker(t,r,n.clazz,e):r.isMultiLine()?"text"==n.type?this.drawTextMarker(t,r,n.clazz,e):this.drawMultiLineMarker(t,r,n.clazz,e):this.drawSingleLineMarker(t,r,n.clazz+" ace_start ace_br15",e)}else n.update(t,this,this.session,e)}this.element.innerHTML=t.join("")}},this.$getTop=function(e,t){return(e-t.firstRowScreen)*t.lineHeight},this.drawTextMarker=function(t,i,r,o,s){for(var a=this.session,l=i.start.row,c=i.end.row,h=l,u=0,d=0,f=a.getScreenLastRowColumn(h),p=new n(h,i.start.column,h,d);h<=c;h++)p.start.row=p.end.row=h,p.start.column=h==l?i.start.column:a.getRowWrapIndent(h),p.end.column=f,u=d,d=f,f=h+1<c?a.getScreenLastRowColumn(h+1):h==c?0:i.end.column,this.drawSingleLineMarker(t,p,r+(h==l?" ace_start":"")+" ace_br"+e(h==l||h==l+1&&i.start.column,u<d,d>f,h==c),o,h==c?0:1,s)},this.drawMultiLineMarker=function(e,t,i,n,r){var o=this.$padding,s=n.lineHeight,a=this.$getTop(t.start.row,n),l=o+t.start.column*n.characterWidth;r=r||"",e.push("<div class='",i," ace_br1 ace_start' style='","height:",s,"px;","right:0;","top:",a,"px;","left:",l,"px;",r,"'></div>"),a=this.$getTop(t.end.row,n);var c=t.end.column*n.characterWidth;if(e.push("<div class='",i," ace_br12' style='","height:",s,"px;","width:",c,"px;","top:",a,"px;","left:",o,"px;",r,"'></div>"),!((s=(t.end.row-t.start.row-1)*n.lineHeight)<=0)){a=this.$getTop(t.start.row+1,n);var h=(t.start.column?1:0)|(t.end.column?0:8);e.push("<div class='",i,h?" ace_br"+h:"","' style='","height:",s,"px;","right:0;","top:",a,"px;","left:",o,"px;",r,"'></div>")}},this.drawSingleLineMarker=function(e,t,i,n,r,o){var s=n.lineHeight,a=(t.end.column+(r||0)-t.start.column)*n.characterWidth,l=this.$getTop(t.start.row,n),c=this.$padding+t.start.column*n.characterWidth;e.push("<div class='",i,"' style='","height:",s,"px;","width:",a,"px;","top:",l,"px;","left:",c,"px;",o||"","'></div>")},this.drawFullLineMarker=function(e,t,i,n,r){var o=this.$getTop(t.start.row,n),s=n.lineHeight;t.start.row!=t.end.row&&(s+=this.$getTop(t.end.row,n)-o),e.push("<div class='",i,"' style='","height:",s,"px;","top:",o,"px;","left:0;right:0;",r||"","'></div>")},this.drawScreenLineMarker=function(e,t,i,n,r){var o=this.$getTop(t.start.row,n),s=n.lineHeight;e.push("<div class='",i,"' style='","height:",s,"px;","top:",o,"px;","left:0;right:0;",r||"","'></div>")}}).call(o.prototype),t.Marker=o}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("../lib/oop"),r=e("../lib/dom"),o=e("../lib/lang"),s=(e("../lib/useragent"),e("../lib/event_emitter").EventEmitter),a=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_text-layer",e.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this)};(function(){n.implement(this,s),this.EOF_CHAR="¶",this.EOL_CHAR_LF="¬",this.EOL_CHAR_CRLF="¤",this.EOL_CHAR=this.EOL_CHAR_LF,this.TAB_CHAR="—",this.SPACE_CHAR="·",this.$padding=0,this.$updateEolChar=function(){var e="\n"==this.session.doc.getNewLineCharacter()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=e)return this.EOL_CHAR=e,!0},this.setPadding=function(e){this.$padding=e,this.element.style.padding="0 "+e+"px"},this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},this.$setFontMetrics=function(e){this.$fontMetrics=e,this.$fontMetrics.on("changeCharacterSize",function(e){this._signal("changeCharacterSize",e)}.bind(this)),this.$pollSizeChanges()},this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},this.setSession=function(e){this.session=e,e&&this.$computeTabString()},this.showInvisibles=!1,this.setShowInvisibles=function(e){return this.showInvisibles!=e&&(this.showInvisibles=e,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(e){return this.displayIndentGuides!=e&&(this.displayIndentGuides=e,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var e=this.session.getTabSize();this.tabSize=e;for(var t=this.$tabStrings=[0],i=1;i<e+1;i++)this.showInvisibles?t.push("<span class='ace_invisible ace_invisible_tab'>"+o.stringRepeat(this.TAB_CHAR,i)+"</span>"):t.push(o.stringRepeat(" ",i));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var n="ace_indent-guide",r="",s="";if(this.showInvisibles){n+=" ace_invisible",r=" ace_invisible_space",s=" ace_invisible_tab";var a=o.stringRepeat(this.SPACE_CHAR,this.tabSize),l=o.stringRepeat(this.TAB_CHAR,this.tabSize)}else l=a=o.stringRepeat(" ",this.tabSize);this.$tabStrings[" "]="<span class='"+n+r+"'>"+a+"</span>",this.$tabStrings["\t"]="<span class='"+n+s+"'>"+l+"</span>"}},this.updateLines=function(e,t,i){this.config.lastRow==e.lastRow&&this.config.firstRow==e.firstRow||this.scrollLines(e),this.config=e;for(var n=Math.max(t,e.firstRow),r=Math.min(i,e.lastRow),o=this.element.childNodes,s=0,a=e.firstRow;a<n;a++){if(l=this.session.getFoldLine(a)){if(l.containsRow(n)){n=l.start.row;break}a=l.end.row}s++}a=n;for(var l,c=(l=this.session.getNextFoldLine(a))?l.start.row:1/0;a>c&&(a=l.end.row+1,c=(l=this.session.getNextFoldLine(a,l))?l.start.row:1/0),!(a>r);){var h=o[s++];if(h){var u=[];this.$renderLine(u,a,!this.$useLineGroups(),a==c&&l),h.style.height=e.lineHeight*this.session.getRowLength(a)+"px",h.innerHTML=u.join("")}a++}},this.scrollLines=function(e){var t=this.config;if(this.config=e,!t||t.lastRow<e.firstRow)return this.update(e);if(e.lastRow<t.firstRow)return this.update(e);var i=this.element;if(t.firstRow<e.firstRow)for(var n=this.session.getFoldedRowCount(t.firstRow,e.firstRow-1);n>0;n--)i.removeChild(i.firstChild);if(t.lastRow>e.lastRow)for(n=this.session.getFoldedRowCount(e.lastRow+1,t.lastRow);n>0;n--)i.removeChild(i.lastChild);if(e.firstRow<t.firstRow){var r=this.$renderLinesFragment(e,e.firstRow,t.firstRow-1);i.firstChild?i.insertBefore(r,i.firstChild):i.appendChild(r)}if(e.lastRow>t.lastRow){r=this.$renderLinesFragment(e,t.lastRow+1,e.lastRow);i.appendChild(r)}},this.$renderLinesFragment=function(e,t,i){for(var n=this.element.ownerDocument.createDocumentFragment(),o=t,s=this.session.getNextFoldLine(o),a=s?s.start.row:1/0;o>a&&(o=s.end.row+1,a=(s=this.session.getNextFoldLine(o,s))?s.start.row:1/0),!(o>i);){var l=r.createElement("div"),c=[];if(this.$renderLine(c,o,!1,o==a&&s),l.innerHTML=c.join(""),this.$useLineGroups())l.className="ace_line_group",n.appendChild(l),l.style.height=e.lineHeight*this.session.getRowLength(o)+"px";else for(;l.firstChild;)n.appendChild(l.firstChild);o++}return n},this.update=function(e){this.config=e;for(var t=[],i=e.firstRow,n=e.lastRow,r=i,o=this.session.getNextFoldLine(r),s=o?o.start.row:1/0;r>s&&(r=o.end.row+1,s=(o=this.session.getNextFoldLine(r,o))?o.start.row:1/0),!(r>n);)this.$useLineGroups()&&t.push("<div class='ace_line_group' style='height:",e.lineHeight*this.session.getRowLength(r),"px'>"),this.$renderLine(t,r,!1,r==s&&o),this.$useLineGroups()&&t.push("</div>"),r++;this.element.innerHTML=t.join("")},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(e,t,i,n){var r=this,s=n.replace(/\t|&|<|>|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\u3000\uFEFF\uFFF9-\uFFFC])|[\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3000-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]/g,function(e,i,n,s,a){if(i)return r.showInvisibles?"<span class='ace_invisible ace_invisible_space'>"+o.stringRepeat(r.SPACE_CHAR,e.length)+"</span>":e;if("&"==e)return"&";if("<"==e)return"<";if(">"==e)return">";if("\t"==e){var l=r.session.getScreenTabSize(t+s);return t+=l-1,r.$tabStrings[l]}if(" "==e){var c=r.showInvisibles?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",h=r.showInvisibles?r.SPACE_CHAR:"";return t+=1,"<span class='"+c+"' style='width:"+2*r.config.characterWidth+"px'>"+h+"</span>"}return n?"<span class='ace_invisible ace_invisible_space ace_invalid'>"+r.SPACE_CHAR+"</span>":(t+=1,"<span class='ace_cjk' style='width:"+2*r.config.characterWidth+"px'>"+e+"</span>")});if(this.$textToken[i.type])e.push(s);else{var a="ace_"+i.type.replace(/\./g," ace_"),l="";"fold"==i.type&&(l=" style='width:"+i.value.length*this.config.characterWidth+"px;' "),e.push("<span class='",a,"'",l,">",s,"</span>")}return t+n.length},this.renderIndentGuide=function(e,t,i){var n=t.search(this.$indentGuideRe);return n<=0||n>=i?t:" "==t[0]?(n-=n%this.tabSize,e.push(o.stringRepeat(this.$tabStrings[" "],n/this.tabSize)),t.substr(n)):"\t"==t[0]?(e.push(o.stringRepeat(this.$tabStrings["\t"],n)),t.substr(n)):t},this.$renderWrappedLine=function(e,t,i,n){for(var r=0,s=0,a=i[0],l=0,c=0;c<t.length;c++){var h=t[c],u=h.value;if(0==c&&this.displayIndentGuides){if(r=u.length,!(u=this.renderIndentGuide(e,u,a)))continue;r-=u.length}if(r+u.length<a)l=this.$renderToken(e,l,h,u),r+=u.length;else{for(;r+u.length>=a;)l=this.$renderToken(e,l,h,u.substring(0,a-r)),u=u.substring(a-r),r=a,n||e.push("</div>","<div class='ace_line' style='height:",this.config.lineHeight,"px'>"),e.push(o.stringRepeat(" ",i.indent)),l=0,a=i[++s]||Number.MAX_VALUE;0!=u.length&&(r+=u.length,l=this.$renderToken(e,l,h,u))}}},this.$renderSimpleLine=function(e,t){var i=0,n=t[0],r=n.value;this.displayIndentGuides&&(r=this.renderIndentGuide(e,r)),r&&(i=this.$renderToken(e,i,n,r));for(var o=1;o<t.length;o++)r=(n=t[o]).value,i=this.$renderToken(e,i,n,r)},this.$renderLine=function(e,t,i,n){if(n||0==n||(n=this.session.getFoldLine(t)),n)var r=this.$getFoldLineTokens(t,n);else r=this.session.getTokens(t);if(i||e.push("<div class='ace_line' style='height:",this.config.lineHeight*(this.$useLineGroups()?1:this.session.getRowLength(t)),"px'>"),r.length){var o=this.session.getRowSplitData(t);o&&o.length?this.$renderWrappedLine(e,r,o,i):this.$renderSimpleLine(e,r)}this.showInvisibles&&(n&&(t=n.end.row),e.push("<span class='ace_invisible ace_invisible_eol'>",t==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,"</span>")),i||e.push("</div>")},this.$getFoldLineTokens=function(e,t){var i=this.session,n=[];var r=i.getTokens(e);return t.walk(function(e,t,o,s,a){null!=e?n.push({type:"fold",value:e}):(a&&(r=i.getTokens(t)),r.length&&function(e,t,i){for(var r=0,o=0;o+e[r].value.length<t;)if(o+=e[r].value.length,++r==e.length)return;for(o!=t&&((s=e[r].value.substring(t-o)).length>i-t&&(s=s.substring(0,i-t)),n.push({type:e[r].type,value:s}),o=t+s.length,r+=1);o<i&&r<e.length;){var s;(s=e[r].value).length+o>i?n.push({type:e[r].type,value:s.substring(0,i-o)}):n.push(e[r]),o+=s.length,r+=1}}(r,s,o))},t.end.row,this.session.getLine(t.end.row).length),n},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$measureNode&&this.$measureNode.parentNode.removeChild(this.$measureNode),delete this.$measureNode}}).call(a.prototype),t.Text=a}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,t,i){"use strict";var n,r=e("../lib/dom"),o=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_cursor-layer",e.appendChild(this.element),void 0===n&&(n=!("opacity"in this.element.style)),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),r.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=(n?this.$updateVisibility:this.$updateOpacity).bind(this)};(function(){this.$updateVisibility=function(e){for(var t=this.cursors,i=t.length;i--;)t[i].style.visibility=e?"":"hidden"},this.$updateOpacity=function(e){for(var t=this.cursors,i=t.length;i--;)t[i].style.opacity=e?"":"0"},this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setBlinking=function(e){e!=this.isBlinking&&(this.isBlinking=e,this.restartTimer())},this.setBlinkInterval=function(e){e!=this.blinkInterval&&(this.blinkInterval=e,this.restartTimer())},this.setSmoothBlinking=function(e){e==this.smoothBlinking||n||(this.smoothBlinking=e,r.setCssClass(this.element,"ace_smooth-blinking",e),this.$updateCursors(!0),this.$updateCursors=this.$updateOpacity.bind(this),this.restartTimer())},this.addCursor=function(){var e=r.createElement("div");return e.className="ace_cursor",this.element.appendChild(e),this.cursors.push(e),e},this.removeCursor=function(){if(this.cursors.length>1){var e=this.cursors.pop();return e.parentNode.removeChild(e),e}},this.hideCursor=function(){this.isVisible=!1,r.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,r.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){var e=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.smoothBlinking&&r.removeCssClass(this.element,"ace_smooth-blinking"),e(!0),this.isBlinking&&this.blinkInterval&&this.isVisible){this.smoothBlinking&&setTimeout(function(){r.addCssClass(this.element,"ace_smooth-blinking")}.bind(this));var t=function(){this.timeoutId=setTimeout(function(){e(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){e(!0),t()},this.blinkInterval),t()}},this.getPixelPosition=function(e,t){if(!this.config||!this.session)return{left:0,top:0};e||(e=this.session.selection.getCursor());var i=this.session.documentToScreenPosition(e);return{left:this.$padding+i.column*this.config.characterWidth,top:(i.row-(t?this.config.firstRowScreen:0))*this.config.lineHeight}},this.update=function(e){this.config=e;var t=this.session.$selectionMarkers,i=0,n=0;void 0!==t&&0!==t.length||(t=[{cursor:null}]);i=0;for(var r=t.length;i<r;i++){var o=this.getPixelPosition(t[i].cursor,!0);if(!((o.top>e.height+e.offset||o.top<0)&&i>1)){var s=(this.cursors[n++]||this.addCursor()).style;this.drawCursor?this.drawCursor(s,o,e,t[i],this.session):(s.left=o.left+"px",s.top=o.top+"px",s.width=e.characterWidth+"px",s.height=e.lineHeight+"px")}}for(;this.cursors.length>n;)this.removeCursor();var a=this.session.getOverwrite();this.$setOverwrite(a),this.$pixelPos=o,this.restartTimer()},this.drawCursor=null,this.$setOverwrite=function(e){e!=this.overwrite&&(this.overwrite=e,e?r.addCssClass(this.element,"ace_overwrite-cursors"):r.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(o.prototype),t.Cursor=o}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/dom"),o=e("./lib/event"),s=e("./lib/event_emitter").EventEmitter,a=function(e){this.element=r.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=r.createElement("div"),this.inner.className="ace_scrollbar-inner",this.element.appendChild(this.inner),e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,o.addListener(this.element,"scroll",this.onScroll.bind(this)),o.addListener(this.element,"mousedown",o.preventDefault)};(function(){n.implement(this,s),this.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e}}).call(a.prototype);var l=function(e,t){a.call(this,e),this.scrollTop=0,t.$scrollbarWidth=this.width=r.scrollbarWidth(e.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px"};n.inherits(l,a),function(){this.classSuffix="-v",this.onScroll=function(){this.skipEvent||(this.scrollTop=this.element.scrollTop,this._emit("scroll",{data:this.scrollTop})),this.skipEvent=!1},this.getWidth=function(){return this.isVisible?this.width:0},this.setHeight=function(e){this.element.style.height=e+"px"},this.setInnerHeight=function(e){this.inner.style.height=e+"px"},this.setScrollHeight=function(e){this.inner.style.height=e+"px"},this.setScrollTop=function(e){this.scrollTop!=e&&(this.skipEvent=!0,this.scrollTop=this.element.scrollTop=e)}}.call(l.prototype);var c=function(e,t){a.call(this,e),this.scrollLeft=0,this.height=t.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};n.inherits(c,a),function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(e){this.element.style.width=e+"px"},this.setInnerWidth=function(e){this.inner.style.width=e+"px"},this.setScrollWidth=function(e){this.inner.style.width=e+"px"},this.setScrollLeft=function(e){this.scrollLeft!=e&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=e)}}.call(c.prototype),t.ScrollBar=l,t.ScrollBarV=l,t.ScrollBarH=c,t.VScrollBar=l,t.HScrollBar=c}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,t,i){"use strict";var n=e("./lib/event"),r=function(e,t){this.onRender=e,this.pending=!1,this.changes=0,this.window=t||window};(function(){this.schedule=function(e){if(this.changes=this.changes|e,!this.pending&&this.changes){this.pending=!0;var t=this;n.nextFrame(function(){var e;for(t.pending=!1;e=t.changes;)t.changes=0,t.onRender(e)},this.window)}}}).call(r.prototype),t.RenderLoop=r}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,i){var n=e("../lib/oop"),r=e("../lib/dom"),o=e("../lib/lang"),s=e("../lib/useragent"),a=e("../lib/event_emitter").EventEmitter,l=0,c=t.FontMetrics=function(e){this.el=r.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=r.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=r.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),e.appendChild(this.el),l||this.$testFractionalRect(),this.$measureNode.innerHTML=o.stringRepeat("X",l),this.$characterSize={width:0,height:0},this.checkForSizeChanges()};(function(){n.implement(this,a),this.$characterSize={width:0,height:0},this.$testFractionalRect=function(){var e=r.createElement("div");this.$setMeasureNodeStyles(e.style),e.style.width="0.2px",document.documentElement.appendChild(e);var t=e.getBoundingClientRect().width;l=t>0&&t<1?50:100,e.parentNode.removeChild(e)},this.$setMeasureNodeStyles=function(e,t){e.width=e.height="auto",e.left=e.top="0px",e.visibility="hidden",e.position="absolute",e.whiteSpace="pre",s.isIE<8?e["font-family"]="inherit":e.font="inherit",e.overflow=t?"hidden":"visible"},this.checkForSizeChanges=function(){var e=this.$measureSizes();if(e&&(this.$characterSize.width!==e.width||this.$characterSize.height!==e.height)){this.$measureNode.style.fontWeight="bold";var t=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=e,this.charSizes=Object.create(null),this.allowBoldFonts=t&&t.width===e.width&&t.height===e.height,this._emit("changeCharacterSize",{data:e})}},this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer)return this.$pollSizeChangesTimer;var e=this;return this.$pollSizeChangesTimer=setInterval(function(){e.checkForSizeChanges()},500)},this.setPolling=function(e){e?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},this.$measureSizes=function(){if(50===l){var e=null;try{e=this.$measureNode.getBoundingClientRect()}catch(t){e={width:0,height:0}}var t={height:e.height,width:e.width/l}}else t={height:this.$measureNode.clientHeight,width:this.$measureNode.clientWidth/l};return 0===t.width||0===t.height?null:t},this.$measureCharWidth=function(e){return this.$main.innerHTML=o.stringRepeat(e,l),this.$main.getBoundingClientRect().width/l},this.getCharacterWidth=function(e){var t=this.charSizes[e];return void 0===t&&(t=this.charSizes[e]=this.$measureCharWidth(e)/this.$characterSize.width),t},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)}}).call(c.prototype)}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/config","ace/lib/useragent","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),r=e("./lib/dom"),o=e("./config"),s=e("./lib/useragent"),a=e("./layer/gutter").Gutter,l=e("./layer/marker").Marker,c=e("./layer/text").Text,h=e("./layer/cursor").Cursor,u=e("./scrollbar").HScrollBar,d=e("./scrollbar").VScrollBar,f=e("./renderloop").RenderLoop,p=e("./layer/font_metrics").FontMetrics,m=e("./lib/event_emitter").EventEmitter;r.importCssString('.ace_editor {\tposition: relative;\toverflow: hidden;\tfont: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'source-code-pro\', monospace;\tdirection: ltr;\t}\t.ace_scroller {\tposition: absolute;\toverflow: hidden;\ttop: 0;\tbottom: 0;\tbackground-color: inherit;\t-ms-user-select: none;\t-moz-user-select: none;\t-webkit-user-select: none;\tuser-select: none;\tcursor: text;\t}\t.ace_content {\tposition: absolute;\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tmin-width: 100%;\t}\t.ace_dragging .ace_scroller:before{\tposition: absolute;\ttop: 0;\tleft: 0;\tright: 0;\tbottom: 0;\tcontent: \'\';\tbackground: rgba(250, 250, 250, 0.01);\tz-index: 1000;\t}\t.ace_dragging.ace_dark .ace_scroller:before{\tbackground: rgba(0, 0, 0, 0.01);\t}\t.ace_selecting, .ace_selecting * {\tcursor: text !important;\t}\t.ace_gutter {\tposition: absolute;\toverflow : hidden;\twidth: auto;\ttop: 0;\tbottom: 0;\tleft: 0;\tcursor: default;\tz-index: 4;\t-ms-user-select: none;\t-moz-user-select: none;\t-webkit-user-select: none;\tuser-select: none;\t}\t.ace_gutter-active-line {\tposition: absolute;\tleft: 0;\tright: 0;\t}\t.ace_scroller.ace_scroll-left {\tbox-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;\t}\t.ace_gutter-cell {\tpadding-left: 19px;\tpadding-right: 6px;\tbackground-repeat: no-repeat;\t}\t.ace_gutter-cell.ace_error {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");\tbackground-repeat: no-repeat;\tbackground-position: 2px center;\t}\t.ace_gutter-cell.ace_warning {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");\tbackground-position: 2px center;\t}\t.ace_gutter-cell.ace_info {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");\tbackground-position: 2px center;\t}\t.ace_dark .ace_gutter-cell.ace_info {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");\t}\t.ace_scrollbar {\tposition: absolute;\tright: 0;\tbottom: 0;\tz-index: 6;\t}\t.ace_scrollbar-inner {\tposition: absolute;\tcursor: text;\tleft: 0;\ttop: 0;\t}\t.ace_scrollbar-v{\toverflow-x: hidden;\toverflow-y: scroll;\ttop: 0;\t}\t.ace_scrollbar-h {\toverflow-x: scroll;\toverflow-y: hidden;\tleft: 0;\t}\t.ace_print-margin {\tposition: absolute;\theight: 100%;\t}\t.ace_text-input {\tposition: absolute;\tz-index: 0;\twidth: 0.5em;\theight: 1em;\topacity: 0;\tbackground: transparent;\t-moz-appearance: none;\tappearance: none;\tborder: none;\tresize: none;\toutline: none;\toverflow: hidden;\tfont: inherit;\tpadding: 0 1px;\tmargin: 0 -1px;\ttext-indent: -1em;\t-ms-user-select: text;\t-moz-user-select: text;\t-webkit-user-select: text;\tuser-select: text;\twhite-space: pre!important;\t}\t.ace_text-input.ace_composition {\tbackground: inherit;\tcolor: inherit;\tz-index: 1000;\topacity: 1;\ttext-indent: 0;\t}\t.ace_layer {\tz-index: 1;\tposition: absolute;\toverflow: hidden;\tword-wrap: normal;\twhite-space: pre;\theight: 100%;\twidth: 100%;\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tpointer-events: none;\t}\t.ace_gutter-layer {\tposition: relative;\twidth: auto;\ttext-align: right;\tpointer-events: auto;\t}\t.ace_text-layer {\tfont: inherit !important;\t}\t.ace_cjk {\tdisplay: inline-block;\ttext-align: center;\t}\t.ace_cursor-layer {\tz-index: 4;\t}\t.ace_cursor {\tz-index: 4;\tposition: absolute;\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tborder-left: 2px solid;\ttransform: translatez(0);\t}\t.ace_slim-cursors .ace_cursor {\tborder-left-width: 1px;\t}\t.ace_overwrite-cursors .ace_cursor {\tborder-left-width: 0;\tborder-bottom: 1px solid;\t}\t.ace_hidden-cursors .ace_cursor {\topacity: 0.2;\t}\t.ace_smooth-blinking .ace_cursor {\t-webkit-transition: opacity 0.18s;\ttransition: opacity 0.18s;\t}\t.ace_editor.ace_multiselect .ace_cursor {\tborder-left-width: 1px;\t}\t.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {\tposition: absolute;\tz-index: 3;\t}\t.ace_marker-layer .ace_selection {\tposition: absolute;\tz-index: 5;\t}\t.ace_marker-layer .ace_bracket {\tposition: absolute;\tz-index: 6;\t}\t.ace_marker-layer .ace_active-line {\tposition: absolute;\tz-index: 2;\t}\t.ace_marker-layer .ace_selected-word {\tposition: absolute;\tz-index: 4;\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\t}\t.ace_line .ace_fold {\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tdisplay: inline-block;\theight: 11px;\tmargin-top: -2px;\tvertical-align: middle;\tbackground-image:\turl("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),\turl("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");\tbackground-repeat: no-repeat, repeat-x;\tbackground-position: center center, top left;\tcolor: transparent;\tborder: 1px solid black;\tborder-radius: 2px;\tcursor: pointer;\tpointer-events: auto;\t}\t.ace_dark .ace_fold {\t}\t.ace_fold:hover{\tbackground-image:\turl("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),\turl("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");\t}\t.ace_tooltip {\tbackground-color: #FFF;\tbackground-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1));\tbackground-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));\tborder: 1px solid gray;\tborder-radius: 1px;\tbox-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);\tcolor: black;\tmax-width: 100%;\tpadding: 3px 4px;\tposition: fixed;\tz-index: 999999;\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tcursor: default;\twhite-space: pre;\tword-wrap: break-word;\tline-height: normal;\tfont-style: normal;\tfont-weight: normal;\tletter-spacing: normal;\tpointer-events: none;\t}\t.ace_folding-enabled > .ace_gutter-cell {\tpadding-right: 13px;\t}\t.ace_fold-widget {\t-moz-box-sizing: border-box;\t-webkit-box-sizing: border-box;\tbox-sizing: border-box;\tmargin: 0 -12px 0 1px;\tdisplay: none;\twidth: 11px;\tvertical-align: top;\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");\tbackground-repeat: no-repeat;\tbackground-position: center;\tborder-radius: 3px;\tborder: 1px solid transparent;\tcursor: pointer;\t}\t.ace_folding-enabled .ace_fold-widget {\tdisplay: inline-block; \t}\t.ace_fold-widget.ace_end {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");\t}\t.ace_fold-widget.ace_closed {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");\t}\t.ace_fold-widget:hover {\tborder: 1px solid rgba(0, 0, 0, 0.3);\tbackground-color: rgba(255, 255, 255, 0.2);\tbox-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);\t}\t.ace_fold-widget:active {\tborder: 1px solid rgba(0, 0, 0, 0.4);\tbackground-color: rgba(0, 0, 0, 0.05);\tbox-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);\t}\t.ace_dark .ace_fold-widget {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");\t}\t.ace_dark .ace_fold-widget.ace_end {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");\t}\t.ace_dark .ace_fold-widget.ace_closed {\tbackground-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");\t}\t.ace_dark .ace_fold-widget:hover {\tbox-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\tbackground-color: rgba(255, 255, 255, 0.1);\t}\t.ace_dark .ace_fold-widget:active {\tbox-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\t}\t.ace_fold-widget.ace_invalid {\tbackground-color: #FFB4B4;\tborder-color: #DE5555;\t}\t.ace_fade-fold-widgets .ace_fold-widget {\t-webkit-transition: opacity 0.4s ease 0.05s;\ttransition: opacity 0.4s ease 0.05s;\topacity: 0;\t}\t.ace_fade-fold-widgets:hover .ace_fold-widget {\t-webkit-transition: opacity 0.05s ease 0.05s;\ttransition: opacity 0.05s ease 0.05s;\topacity:1;\t}\t.ace_underline {\ttext-decoration: underline;\t}\t.ace_bold {\tfont-weight: bold;\t}\t.ace_nobold .ace_bold {\tfont-weight: normal;\t}\t.ace_italic {\tfont-style: italic;\t}\t.ace_error-marker {\tbackground-color: rgba(255, 0, 0,0.2);\tposition: absolute;\tz-index: 9;\t}\t.ace_highlight-marker {\tbackground-color: rgba(255, 255, 0,0.2);\tposition: absolute;\tz-index: 8;\t}\t.ace_br1 {border-top-left-radius : 3px;}\t.ace_br2 {border-top-right-radius : 3px;}\t.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}\t.ace_br4 {border-bottom-right-radius: 3px;}\t.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}\t.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}\t.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}\t.ace_br8 {border-bottom-left-radius : 3px;}\t.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}\t.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}\t.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}\t.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\t.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\t.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\t.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\t',"ace_editor.css");var g=function(e,t){var i=this;this.container=e||r.createElement("div"),this.$keepTextAreaAtCursor=!s.isOldIE,r.addCssClass(this.container,"ace_editor"),this.setTheme(t),this.$gutter=r.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.scroller=r.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=r.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new a(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new l(this.content);var n=this.$textLayer=new c(this.content);this.canvas=n.element,this.$markerFront=new l(this.content),this.$cursorLayer=new h(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new d(this.container,this),this.scrollBarH=new u(this.container,this),this.scrollBarV.addEventListener("scroll",function(e){i.$scrollAnimation||i.session.setScrollTop(e.data-i.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(e){i.$scrollAnimation||i.session.setScrollLeft(e.data-i.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new p(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.addEventListener("changeCharacterSize",function(e){i.updateCharacterSize(),i.onResize(!0,i.gutterWidth,i.$size.width,i.$size.height),i._signal("changeCharacterSize",e)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$loop=new f(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),o.resetOptions(this),o._emit("renderer",this)};(function(){this.CHANGE_CURSOR=1,this.CHANGE_MARKER=2,this.CHANGE_GUTTER=4,this.CHANGE_SCROLL=8,this.CHANGE_LINES=16,this.CHANGE_TEXT=32,this.CHANGE_SIZE=64,this.CHANGE_MARKER_BACK=128,this.CHANGE_MARKER_FRONT=256,this.CHANGE_FULL=512,this.CHANGE_H_SCROLL=1024,n.implement(this,m),this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin()},this.setSession=function(e){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=e,e&&this.scrollMargin.top&&e.getScrollTop()<=0&&e.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(e),this.$markerBack.setSession(e),this.$markerFront.setSession(e),this.$gutterLayer.setSession(e),this.$textLayer.setSession(e),e&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},this.updateLines=function(e,t,i){if(void 0===t&&(t=1/0),this.$changedLines?(this.$changedLines.firstRow>e&&(this.$changedLines.firstRow=e),this.$changedLines.lastRow<t&&(this.$changedLines.lastRow=t)):this.$changedLines={firstRow:e,lastRow:t},this.$changedLines.lastRow<this.layerConfig.firstRow){if(!i)return;this.$changedLines.lastRow=this.layerConfig.lastRow}this.$changedLines.firstRow>this.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},this.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar()},this.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},this.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},this.updateFull=function(e){e?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},this.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},this.$changes=0,this.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},this.onResize=function(e,t,i,n){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=e?1:0;var r=this.container;n||(n=r.clientHeight||r.scrollHeight),i||(i=r.clientWidth||r.scrollWidth);var o=this.$updateCachedSize(e,t,i,n);if(!this.$size.scrollerHeight||!i&&!n)return this.resizing=0;e&&(this.$gutterLayer.$padding=null),e?this.$renderChanges(o|this.$changes,!0):this.$loop.schedule(o|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarV.scrollLeft=this.scrollBarV.scrollTop=null}},this.$updateCachedSize=function(e,t,i,n){n-=this.$extraHeight||0;var r=0,o=this.$size,s={width:o.width,height:o.height,scrollerHeight:o.scrollerHeight,scrollerWidth:o.scrollerWidth};return n&&(e||o.height!=n)&&(o.height=n,r|=this.CHANGE_SIZE,o.scrollerHeight=o.height,this.$horizScroll&&(o.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",r|=this.CHANGE_SCROLL),i&&(e||o.width!=i)&&(r|=this.CHANGE_SIZE,o.width=i,null==t&&(t=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=t,this.scrollBarH.element.style.left=this.scroller.style.left=t+"px",o.scrollerWidth=Math.max(0,i-t-this.scrollBarV.getWidth()),this.scrollBarH.element.style.right=this.scroller.style.right=this.scrollBarV.getWidth()+"px",this.scroller.style.bottom=this.scrollBarH.getHeight()+"px",(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||e)&&(r|=this.CHANGE_FULL)),o.$dirty=!i||!n,r&&this._signal("resize",s),r},this.onGutterResize=function(){var e=this.$showGutter?this.$gutter.offsetWidth:0;e!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,e,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):(this.$computeLayerConfig(),this.$loop.schedule(this.CHANGE_MARKER))},this.adjustWrapLimit=function(){var e=this.$size.scrollerWidth-2*this.$padding,t=Math.floor(e/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)},this.setAnimatedScroll=function(e){this.setOption("animatedScroll",e)},this.getAnimatedScroll=function(){return this.$animatedScroll},this.setShowInvisibles=function(e){this.setOption("showInvisibles",e)},this.getShowInvisibles=function(){return this.getOption("showInvisibles")},this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},this.setDisplayIndentGuides=function(e){this.setOption("displayIndentGuides",e)},this.setShowPrintMargin=function(e){this.setOption("showPrintMargin",e)},this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},this.setPrintMarginColumn=function(e){this.setOption("printMarginColumn",e)},this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},this.getShowGutter=function(){return this.getOption("showGutter")},this.setShowGutter=function(e){return this.setOption("showGutter",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.$updateGutterLineHighlight=function(){var e=this.$cursorLayer.$pixelPos,t=this.layerConfig.lineHeight;if(this.session.getUseWrapMode()){var i=this.session.selection.getCursor();i.column=0,e=this.$cursorLayer.getPixelPosition(i,!0),t*=this.session.getRowLength(i.row)}this.$gutterLineHighlight.style.top=e.top-this.layerConfig.offset+"px",this.$gutterLineHighlight.style.height=t+"px"},this.$updatePrintMargin=function(){if(this.$showPrintMargin||this.$printMarginEl){if(!this.$printMarginEl){var e=r.createElement("div");e.className="ace_layer ace_print-margin-layer",this.$printMarginEl=r.createElement("div"),this.$printMarginEl.className="ace_print-margin",e.appendChild(this.$printMarginEl),this.content.insertBefore(e,this.content.firstChild)}var t=this.$printMarginEl.style;t.left=this.characterWidth*this.$printMarginColumn+this.$padding+"px",t.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&-1==this.session.$wrap&&this.adjustWrapLimit()}},this.getContainerElement=function(){return this.container},this.getMouseEventTarget=function(){return this.scroller},this.getTextAreaContainer=function(){return this.container},this.$moveTextAreaToCursor=function(){if(this.$keepTextAreaAtCursor){var e=this.layerConfig,t=this.$cursorLayer.$pixelPos.top,i=this.$cursorLayer.$pixelPos.left;t-=e.offset;var n=this.textarea.style,r=this.lineHeight;if(t<0||t>e.height-r)n.top=n.left="0";else{var o=this.characterWidth;if(this.$composition){var s=this.textarea.value.replace(/^\x01+/,"");o*=this.session.$getStringScreenWidth(s)[0]+2,r+=2}(i-=this.scrollLeft)>this.$size.scrollerWidth-o&&(i=this.$size.scrollerWidth-o),i+=this.gutterWidth,n.height=r+"px",n.width=o+"px",n.left=Math.min(i,this.$size.scrollerWidth-o)+"px",n.top=Math.min(t,this.$size.height-r)+"px"}}},this.getFirstVisibleRow=function(){return this.layerConfig.firstRow},this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(0===this.layerConfig.offset?0:1)},this.getLastFullyVisibleRow=function(){var e=this.layerConfig,t=e.lastRow;return this.session.documentToScreenRow(t,0)*e.lineHeight-this.session.getScrollTop()>e.height-e.lineHeight?t-1:t},this.getLastVisibleRow=function(){return this.layerConfig.lastRow},this.$padding=null,this.setPadding=function(e){this.$padding=e,this.$textLayer.setPadding(e),this.$cursorLayer.setPadding(e),this.$markerFront.setPadding(e),this.$markerBack.setPadding(e),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},this.setScrollMargin=function(e,t,i,n){var r=this.scrollMargin;r.top=0|e,r.bottom=0|t,r.right=0|n,r.left=0|i,r.v=r.top+r.bottom,r.h=r.left+r.right,r.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-r.top),this.updateFull()},this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setHScrollBarAlwaysVisible=function(e){this.setOption("hScrollBarAlwaysVisible",e)},this.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},this.setVScrollBarAlwaysVisible=function(e){this.setOption("vScrollBarAlwaysVisible",e)},this.$updateScrollBarV=function(){var e=this.layerConfig.maxHeight,t=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(e-=(t-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>e-t&&(e=this.scrollTop+t,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(e+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},this.$frozen=!1,this.freeze=function(){this.$frozen=!0},this.unfreeze=function(){this.$frozen=!1},this.$renderChanges=function(e,t){if(this.$changes&&(e|=this.$changes,this.$changes=0),this.session&&this.container.offsetWidth&&!this.$frozen&&(e||t)){if(this.$size.$dirty)return this.$changes|=e,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender");var i=this.layerConfig;if(e&this.CHANGE_FULL||e&this.CHANGE_SIZE||e&this.CHANGE_TEXT||e&this.CHANGE_LINES||e&this.CHANGE_SCROLL||e&this.CHANGE_H_SCROLL){if(e|=this.$computeLayerConfig(),i.firstRow!=this.layerConfig.firstRow&&i.firstRowScreen==this.layerConfig.firstRowScreen){var n=this.scrollTop+(i.firstRow-this.layerConfig.firstRow)*this.lineHeight;n>0&&(this.scrollTop=n,e|=this.CHANGE_SCROLL,e|=this.$computeLayerConfig())}i=this.layerConfig,this.$updateScrollBarV(),e&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),this.$gutterLayer.element.style.marginTop=-i.offset+"px",this.content.style.marginTop=-i.offset+"px",this.content.style.width=i.width+2*this.$padding+"px",this.content.style.height=i.minHeight+"px"}if(e&this.CHANGE_H_SCROLL&&(this.content.style.marginLeft=-this.scrollLeft+"px",this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left"),e&this.CHANGE_FULL)return this.$textLayer.update(i),this.$showGutter&&this.$gutterLayer.update(i),this.$markerBack.update(i),this.$markerFront.update(i),this.$cursorLayer.update(i),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),void this._signal("afterRender");if(e&this.CHANGE_SCROLL)return e&this.CHANGE_TEXT||e&this.CHANGE_LINES?this.$textLayer.update(i):this.$textLayer.scrollLines(i),this.$showGutter&&this.$gutterLayer.update(i),this.$markerBack.update(i),this.$markerFront.update(i),this.$cursorLayer.update(i),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),this.$moveTextAreaToCursor(),void this._signal("afterRender");e&this.CHANGE_TEXT?(this.$textLayer.update(i),this.$showGutter&&this.$gutterLayer.update(i)):e&this.CHANGE_LINES?(this.$updateLines()||e&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(i):(e&this.CHANGE_TEXT||e&this.CHANGE_GUTTER)&&this.$showGutter&&this.$gutterLayer.update(i),e&this.CHANGE_CURSOR&&(this.$cursorLayer.update(i),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight()),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(i),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(i),this._signal("afterRender")}else this.$changes|=e},this.$autosize=function(){var e=this.session.getScreenLength()*this.lineHeight,t=this.$maxLines*this.lineHeight,i=Math.max((this.$minLines||1)*this.lineHeight,Math.min(t,e))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(i+=this.scrollBarH.getHeight());var n=e>t;if(i!=this.desiredHeight||this.$size.height!=this.desiredHeight||n!=this.$vScroll){n!=this.$vScroll&&(this.$vScroll=n,this.scrollBarV.setVisible(n));var r=this.container.clientWidth;this.container.style.height=i+"px",this.$updateCachedSize(!0,this.$gutterWidth,r,i),this.desiredHeight=i,this._signal("autosize")}},this.$computeLayerConfig=function(){var e=this.session,t=this.$size,i=t.height<=2*this.lineHeight,n=this.session.getScreenLength()*this.lineHeight,r=this.$getLongestLine(),o=!i&&(this.$hScrollBarAlwaysVisible||t.scrollerWidth-r-2*this.$padding<0),s=this.$horizScroll!==o;s&&(this.$horizScroll=o,this.scrollBarH.setVisible(o));var a=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var l=this.scrollTop%this.lineHeight,c=t.scrollerHeight+this.lineHeight,h=!this.$maxLines&&this.$scrollPastEnd?(t.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;n+=h;var u=this.scrollMargin;this.session.setScrollTop(Math.max(-u.top,Math.min(this.scrollTop,n-t.scrollerHeight+u.bottom))),this.session.setScrollLeft(Math.max(-u.left,Math.min(this.scrollLeft,r+2*this.$padding-t.scrollerWidth+u.right)));var d=!i&&(this.$vScrollBarAlwaysVisible||t.scrollerHeight-n+h<0||this.scrollTop>u.top),f=a!==d;f&&(this.$vScroll=d,this.scrollBarV.setVisible(d));var p,m,g=Math.ceil(c/this.lineHeight)-1,v=Math.max(0,Math.round((this.scrollTop-l)/this.lineHeight)),y=v+g,w=this.lineHeight;v=e.screenToDocumentRow(v,0);var b=e.getFoldLine(v);b&&(v=b.start.row),p=e.documentToScreenRow(v,0),m=e.getRowLength(v)*w,y=Math.min(e.screenToDocumentRow(y,0),e.getLength()-1),c=t.scrollerHeight+e.getRowLength(y)*w+m,l=this.scrollTop-p*w;var C=0;return this.layerConfig.width!=r&&(C=this.CHANGE_H_SCROLL),(s||f)&&(C=this.$updateCachedSize(!0,this.gutterWidth,t.width,t.height),this._signal("scrollbarVisibilityChanged"),f&&(r=this.$getLongestLine())),this.layerConfig={width:r,padding:this.$padding,firstRow:v,firstRowScreen:p,lastRow:y,lineHeight:w,characterWidth:this.characterWidth,minHeight:c,maxHeight:n,offset:l,gutterOffset:Math.max(0,Math.ceil((l+t.height-t.scrollerHeight)/w)),height:this.$size.scrollerHeight},C},this.$updateLines=function(){var e=this.$changedLines.firstRow,t=this.$changedLines.lastRow;this.$changedLines=null;var i=this.layerConfig;if(!(e>i.lastRow+1||t<i.firstRow))return t===1/0?(this.$showGutter&&this.$gutterLayer.update(i),void this.$textLayer.update(i)):(this.$textLayer.updateLines(i,e,t),!0)},this.$getLongestLine=function(){var e=this.session.getScreenWidth();return this.showInvisibles&&!this.session.$useWrapMode&&(e+=1),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(e*this.characterWidth))},this.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},this.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},this.addGutterDecoration=function(e,t){this.$gutterLayer.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){this.$gutterLayer.removeGutterDecoration(e,t)},this.updateBreakpoints=function(e){this.$loop.schedule(this.CHANGE_GUTTER)},this.setAnnotations=function(e){this.$gutterLayer.setAnnotations(e),this.$loop.schedule(this.CHANGE_GUTTER)},this.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},this.hideCursor=function(){this.$cursorLayer.hideCursor()},this.showCursor=function(){this.$cursorLayer.showCursor()},this.scrollSelectionIntoView=function(e,t,i){this.scrollCursorIntoView(e,i),this.scrollCursorIntoView(t,i)},this.scrollCursorIntoView=function(e,t,i){if(0!==this.$size.scrollerHeight){var n=this.$cursorLayer.getPixelPosition(e),r=n.left,o=n.top,s=i&&i.top||0,a=i&&i.bottom||0,l=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;l+s>o?(t&&l+s>o+this.lineHeight&&(o-=t*this.$size.scrollerHeight),0===o&&(o=-this.scrollMargin.top),this.session.setScrollTop(o)):l+this.$size.scrollerHeight-a<o+this.lineHeight&&(t&&l+this.$size.scrollerHeight-a<o-this.lineHeight&&(o+=t*this.$size.scrollerHeight),this.session.setScrollTop(o+this.lineHeight-this.$size.scrollerHeight));var c=this.scrollLeft;c>r?(r<this.$padding+2*this.layerConfig.characterWidth&&(r=-this.scrollMargin.left),this.session.setScrollLeft(r)):c+this.$size.scrollerWidth<r+this.characterWidth?this.session.setScrollLeft(Math.round(r+this.characterWidth-this.$size.scrollerWidth)):c<=this.$padding&&r-c<this.characterWidth&&this.session.setScrollLeft(0)}},this.getScrollTop=function(){return this.session.getScrollTop()},this.getScrollLeft=function(){return this.session.getScrollLeft()},this.getScrollTopRow=function(){return this.scrollTop/this.lineHeight},this.getScrollBottomRow=function(){return Math.max(0,Math.floor((this.scrollTop+this.$size.scrollerHeight)/this.lineHeight)-1)},this.scrollToRow=function(e){this.session.setScrollTop(e*this.lineHeight)},this.alignCursor=function(e,t){"number"==typeof e&&(e={row:e,column:0});var i=this.$cursorLayer.getPixelPosition(e),n=this.$size.scrollerHeight-this.lineHeight,r=i.top-n*(t||0);return this.session.setScrollTop(r),r},this.STEPS=8,this.$calcSteps=function(e,t){var i=0,n=this.STEPS,r=[],o=function(e,t,i){return i*(Math.pow(e-1,3)+1)+t};for(i=0;i<n;++i)r.push(o(i/this.STEPS,e,t-e));return r},this.scrollToLine=function(e,t,i,n){var r=this.$cursorLayer.getPixelPosition({row:e,column:0}).top;t&&(r-=this.$size.scrollerHeight/2);var o=this.scrollTop;this.session.setScrollTop(r),!1!==i&&this.animateScrolling(o,n)},this.animateScrolling=function(e,t){var i=this.scrollTop;if(this.$animatedScroll){var n=this;if(e!=i){if(this.$scrollAnimation){var r=this.$scrollAnimation.steps;if(r.length&&(e=r[0])==i)return}var o=n.$calcSteps(e,i);this.$scrollAnimation={from:e,to:i,steps:o},clearInterval(this.$timer),n.session.setScrollTop(o.shift()),n.session.$scrollTop=i,this.$timer=setInterval(function(){o.length?(n.session.setScrollTop(o.shift()),n.session.$scrollTop=i):null!=i?(n.session.$scrollTop=-1,n.session.setScrollTop(i),i=null):(n.$timer=clearInterval(n.$timer),n.$scrollAnimation=null,t&&t())},10)}}},this.scrollToY=function(e){this.scrollTop!==e&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=e)},this.scrollToX=function(e){this.scrollLeft!==e&&(this.scrollLeft=e),this.$loop.schedule(this.CHANGE_H_SCROLL)},this.scrollTo=function(e,t){this.session.setScrollTop(t),this.session.setScrollLeft(t)},this.scrollBy=function(e,t){t&&this.session.setScrollTop(this.session.getScrollTop()+t),e&&this.session.setScrollLeft(this.session.getScrollLeft()+e)},this.isScrollableBy=function(e,t){return t<0&&this.session.getScrollTop()>=1-this.scrollMargin.top||(t>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom||(e<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left||(e>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right||void 0)))},this.pixelToScreenCoordinates=function(e,t){var i=this.scroller.getBoundingClientRect(),n=(e+this.scrollLeft-i.left-this.$padding)/this.characterWidth,r=Math.floor((t+this.scrollTop-i.top)/this.lineHeight),o=Math.round(n);return{row:r,column:o,side:n-o>0?1:-1}},this.screenToTextCoordinates=function(e,t){var i=this.scroller.getBoundingClientRect(),n=Math.round((e+this.scrollLeft-i.left-this.$padding)/this.characterWidth),r=(t+this.scrollTop-i.top)/this.lineHeight;return this.session.screenToDocumentPosition(r,Math.max(n,0))},this.textToScreenCoordinates=function(e,t){var i=this.scroller.getBoundingClientRect(),n=this.session.documentToScreenPosition(e,t),r=this.$padding+Math.round(n.column*this.characterWidth),o=n.row*this.lineHeight;return{pageX:i.left+r-this.scrollLeft,pageY:i.top+o-this.scrollTop}},this.visualizeFocus=function(){r.addCssClass(this.container,"ace_focus")},this.visualizeBlur=function(){r.removeCssClass(this.container,"ace_focus")},this.showComposition=function(e){this.$composition||(this.$composition={keepTextAreaAtCursor:this.$keepTextAreaAtCursor,cssText:this.textarea.style.cssText}),this.$keepTextAreaAtCursor=!0,r.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor()},this.setCompositionText=function(e){this.$moveTextAreaToCursor()},this.hideComposition=function(){this.$composition&&(r.removeCssClass(this.textarea,"ace_composition"),this.$keepTextAreaAtCursor=this.$composition.keepTextAreaAtCursor,this.textarea.style.cssText=this.$composition.cssText,this.$composition=null)},this.setTheme=function(e,t){var i=this;if(this.$themeId=e,i._dispatchEvent("themeChange",{theme:e}),e&&"string"!=typeof e)s(e);else{var n=e||this.$options.theme.initialValue;o.loadModule(["theme",n],s)}function s(n){if(i.$themeId!=e)return t&&t();if(n.cssClass){r.importCssString(n.cssText,n.cssClass,i.container.ownerDocument),i.theme&&r.removeCssClass(i.container,i.theme.cssClass);var o="padding"in n?n.padding:"padding"in(i.theme||{})?4:i.$padding;i.$padding&&o!=i.$padding&&i.setPadding(o),i.$theme=n.cssClass,i.theme=n,r.addCssClass(i.container,n.cssClass),r.setCssClass(i.container,"ace_dark",n.isDark),i.$size&&(i.$size.width=0,i.$updateSizeAsync()),i._dispatchEvent("themeLoaded",{theme:n}),t&&t()}}},this.getTheme=function(){return this.$themeId},this.setStyle=function(e,t){r.setCssClass(this.container,e,!1!==t)},this.unsetStyle=function(e){r.removeCssClass(this.container,e)},this.setCursorStyle=function(e){this.scroller.style.cursor!=e&&(this.scroller.style.cursor=e)},this.setMouseCursor=function(e){this.scroller.style.cursor=e},this.destroy=function(){this.$textLayer.destroy(),this.$cursorLayer.destroy()}}).call(g.prototype),o.defineOptions(g.prototype,"renderer",{animatedScroll:{initialValue:!1},showInvisibles:{set:function(e){this.$textLayer.setShowInvisibles(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(e){"number"==typeof e&&(this.$printMarginColumn=e),this.$showPrintMargin=!!e,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(e){this.$gutter.style.display=e?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},fadeFoldWidgets:{set:function(e){r.setCssClass(this.$gutter,"ace_fade-fold-widgets",e)},initialValue:!1},showFoldWidgets:{set:function(e){this.$gutterLayer.setShowFoldWidgets(e)},initialValue:!0},showLineNumbers:{set:function(e){this.$gutterLayer.setShowLineNumbers(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(e){this.$textLayer.setDisplayIndentGuides(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightGutterLine:{set:function(e){if(!this.$gutterLineHighlight)return this.$gutterLineHighlight=r.createElement("div"),this.$gutterLineHighlight.className="ace_gutter-active-line",void this.$gutter.appendChild(this.$gutterLineHighlight);this.$gutterLineHighlight.style.display=e?"":"none",this.$cursorLayer.$pixelPos&&this.$updateGutterLineHighlight()},initialValue:!1,value:!0},hScrollBarAlwaysVisible:{set:function(e){this.$hScrollBarAlwaysVisible&&this.$horizScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(e){this.$vScrollBarAlwaysVisible&&this.$vScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(e){"number"==typeof e&&(e+="px"),this.container.style.fontSize=e,this.updateFontSize()},initialValue:12},fontFamily:{set:function(e){this.container.style.fontFamily=e,this.updateFontSize()}},maxLines:{set:function(e){this.updateFull()}},minLines:{set:function(e){this.updateFull()}},scrollPastEnd:{set:function(e){e=+e||0,this.$scrollPastEnd!=e&&(this.$scrollPastEnd=e,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(e){this.$gutterLayer.$fixedWidth=!!e,this.$loop.schedule(this.CHANGE_GUTTER)}},theme:{set:function(e){this.setTheme(e)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0}}),t.VirtualRenderer=g}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(e,t,n){"use strict";var r=e("../lib/oop"),o=e("../lib/net"),s=e("../lib/event_emitter").EventEmitter,a=e("../config"),l=function(t,n,r,o){if(this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl),a.get("packaged")||!e.toUrl)o=o||a.moduleUrl(n.id,"worker");else{var s=this.$normalizePath;o=o||s(e.toUrl("ace/worker/worker.js",null,"_"));var l={};t.forEach(function(t){l[t]=s(e.toUrl(t,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}try{var c=n.src,h=new(i(66))([c],{type:"application/javascript"}),u=(window.URL||window.webkitURL).createObjectURL(h);this.$worker=new Worker(u)}catch(e){if(!(e instanceof window.DOMException))throw e;h=this.$workerBlob(o);var d=window.URL||window.webkitURL,f=d.createObjectURL(h);this.$worker=new Worker(f),d.revokeObjectURL(f)}this.$worker.postMessage({init:!0,tlns:l,module:n.id,classname:r}),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){r.implement(this,s),this.onMessage=function(e){var t=e.data;switch(t.type){case"event":this._signal(t.name,{data:t.data});break;case"call":var i=this.callbacks[t.id];i&&(i(t.data),delete this.callbacks[t.id]);break;case"error":this.reportError(t.data);break;case"log":window.console&&console.log&&console.log.apply(console,t.data)}},this.reportError=function(e){window.console&&console.error&&console.error(e)},this.$normalizePath=function(e){return o.qualifyURL(e)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(e,t){this.$worker.postMessage({command:e,args:t})},this.call=function(e,t,i){if(i){var n=this.callbackId++;this.callbacks[n]=i,t.push(n)}this.send(e,t)},this.emit=function(e,t){try{this.$worker.postMessage({event:e,data:{data:t.data}})}catch(e){console.error(e.stack)}},this.attachToDocument=function(e){this.$doc&&this.terminate(),this.$doc=e,this.call("setValue",[e.getValue()]),e.on("change",this.changeListener)},this.changeListener=function(e){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),"insert"==e.action?this.deltaQueue.push(e.start,e.lines):this.deltaQueue.push(e.start,e.end)},this.$sendDeltaQueue=function(){var e=this.deltaQueue;e&&(this.deltaQueue=null,e.length>50&&e.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:e}))},this.$workerBlob=function(e){var t="importScripts('"+o.qualifyURL(e)+"');";try{return new Blob([t],{type:"application/javascript"})}catch(e){var i=new(window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder);return i.append(t),i.getBlob("application/javascript")}}}).call(l.prototype);var c=function(e,t,i){this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.callbackId=1,this.callbacks={},this.messageBuffer=[];var n=null,r=!1,o=Object.create(s),l=this;this.$worker={},this.$worker.terminate=function(){},this.$worker.postMessage=function(e){l.messageBuffer.push(e),n&&(r?setTimeout(c):c())},this.setEmitSync=function(e){r=e};var c=function(){var e=l.messageBuffer.shift();e.command?n[e.command].apply(n,e.args):e.event&&o._signal(e.event,e.data)};o.postMessage=function(e){l.onMessage({data:e})},o.callback=function(e,t){this.postMessage({type:"call",id:t,data:e})},o.emit=function(e,t){this.postMessage({type:"event",name:e,data:t})},a.loadModule(["worker",t],function(e){for(n=new e[i](o);l.messageBuffer.length;)c()})};c.prototype=l.prototype,t.UIWorkerClient=c,t.WorkerClient=l}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,t,i){"use strict";var n=e("./range").Range,r=e("./lib/event_emitter").EventEmitter,o=e("./lib/oop"),s=function(e,t,i,n,r,o){var s=this;this.length=t,this.session=e,this.doc=e.getDocument(),this.mainClass=r,this.othersClass=o,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=n,this.$onCursorChange=function(){setTimeout(function(){s.onCursorChange()})},this.$pos=i;var a=e.getUndoManager().$undoStack||e.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=a.length,this.setup(),e.selection.on("changeCursor",this.$onCursorChange)};(function(){o.implement(this,r),this.setup=function(){var e=this,t=this.doc,i=this.session;this.selectionBefore=i.selection.toJSON(),i.selection.inMultiSelectMode&&i.selection.toSingleRange(),this.pos=t.createAnchor(this.$pos.row,this.$pos.column);var r=this.pos;r.$insertRight=!0,r.detach(),r.markerId=i.addMarker(new n(r.row,r.column,r.row,r.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(i){var n=t.createAnchor(i.row,i.column);n.$insertRight=!0,n.detach(),e.others.push(n)}),i.setUndoSelect(!1)},this.showOtherMarkers=function(){if(!this.othersActive){var e=this.session,t=this;this.othersActive=!0,this.others.forEach(function(i){i.markerId=e.addMarker(new n(i.row,i.column,i.row,i.column+t.length),t.othersClass,null,!1)})}},this.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var e=0;e<this.others.length;e++)this.session.removeMarker(this.others[e].markerId)}},this.onUpdate=function(e){if(this.$updating)return this.updateAnchors(e);var t=e;if(t.start.row===t.end.row&&t.start.row===this.pos.row){this.$updating=!0;var i="insert"===e.action?t.end.column-t.start.column:t.start.column-t.end.column,r=t.start.column>=this.pos.column&&t.start.column<=this.pos.column+this.length+1,o=t.start.column-this.pos.column;if(this.updateAnchors(e),r&&(this.length+=i),r&&!this.session.$fromUndo)if("insert"===e.action)for(var s=this.others.length-1;s>=0;s--){var a={row:(l=this.others[s]).row,column:l.column+o};this.doc.insertMergedLines(a,e.lines)}else if("remove"===e.action)for(s=this.others.length-1;s>=0;s--){var l;a={row:(l=this.others[s]).row,column:l.column+o};this.doc.remove(new n(a.row,a.column,a.row,a.column-i))}this.$updating=!1,this.updateMarkers()}},this.updateAnchors=function(e){this.pos.onChange(e);for(var t=this.others.length;t--;)this.others[t].onChange(e);this.updateMarkers()},this.updateMarkers=function(){if(!this.$updating){var e=this,t=this.session,i=function(i,r){t.removeMarker(i.markerId),i.markerId=t.addMarker(new n(i.row,i.column,i.row,i.column+e.length),r,null,!1)};i(this.pos,this.mainClass);for(var r=this.others.length;r--;)i(this.others[r],this.othersClass)}},this.onCursorChange=function(e){if(!this.$updating&&this.session){var t=this.session.selection.getCursor();t.row===this.pos.row&&t.column>=this.pos.column&&t.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",e)):(this.hideOtherMarkers(),this._emit("cursorLeave",e))}},this.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.removeEventListener("change",this.$onUpdate),this.session.selection.removeEventListener("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},this.cancel=function(){if(-1!==this.$undoStackDepth){for(var e=this.session.getUndoManager(),t=(e.$undoStack||e.$undostack).length-this.$undoStackDepth,i=0;i<t;i++)e.undo(!0);this.selectionBefore&&this.session.selection.fromJSON(this.selectionBefore)}}}).call(s.prototype),t.PlaceHolder=s}),ace.define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,i){var n=e("../lib/event"),r=e("../lib/useragent");function o(e,t){return e.row==t.row&&e.column==t.column}t.onMouseDown=function(e){var t=e.domEvent,i=t.altKey,s=t.shiftKey,a=t.ctrlKey,l=e.getAccelKey(),c=e.getButton();if(a&&r.isMac&&(c=t.button),e.editor.inMultiSelectMode&&2==c)e.editor.textInput.onContextMenu(e.domEvent);else if(a||i||l){if(0===c){var h,u=e.editor,d=u.selection,f=u.inMultiSelectMode,p=e.getDocumentPosition(),m=d.getCursor(),g=e.inSelection()||d.isEmpty()&&o(p,m),v=e.x,y=e.y,w=u.session,b=u.renderer.pixelToScreenCoordinates(v,y),C=b;if(u.$mouseHandler.$enableJumpToDef)a&&i||l&&i?h=s?"block":"add":i&&u.$blockSelectEnabled&&(h="block");else if(l&&!i){if(h="add",!f&&s)return}else i&&u.$blockSelectEnabled&&(h="block");if(h&&r.isMac&&t.ctrlKey&&u.$mouseHandler.cancelContextMenu(),"add"==h){if(!f&&g)return;if(!f){var A=d.toOrientedRange();u.addSelectionMarker(A)}var E=d.rangeList.rangeAtPoint(p);u.$blockScrolling++,u.inVirtualSelectionMode=!0,s&&(E=null,A=d.ranges[0]||A,u.removeSelectionMarker(A)),u.once("mouseup",function(){var e=d.toOrientedRange();E&&e.isEmpty()&&o(E.cursor,e.cursor)?d.substractPoint(e.cursor):(s?d.substractPoint(A.cursor):A&&(u.removeSelectionMarker(A),d.addRange(A)),d.addRange(e)),u.$blockScrolling--,u.inVirtualSelectionMode=!1})}else if("block"==h){var x;e.stop(),u.inVirtualSelectionMode=!0;var F=[];u.$blockScrolling++,f&&!l?d.toSingleRange():!f&&l&&(x=d.toOrientedRange(),u.addSelectionMarker(x)),s?b=w.documentToScreenPosition(d.lead):d.moveToPosition(p),u.$blockScrolling--,C={row:-1,column:-1};var S=function(){var e=u.renderer.pixelToScreenCoordinates(v,y),t=w.screenToDocumentPosition(e.row,e.column);o(C,e)&&o(t,d.lead)||(C=e,u.$blockScrolling++,u.selection.moveToPosition(t),u.renderer.scrollCursorIntoView(),u.removeSelectionMarkers(F),F=d.rectangularRangeBlock(C,b),u.$mouseHandler.$clickSelection&&1==F.length&&F[0].isEmpty()&&(F[0]=u.$mouseHandler.$clickSelection.clone()),F.forEach(u.addSelectionMarker,u),u.updateSelectionMarkers(),u.$blockScrolling--)};n.capture(u.container,function(e){v=e.clientX,y=e.clientY},function(e){clearInterval(k),u.removeSelectionMarkers(F),F.length||(F=[d.toOrientedRange()]),u.$blockScrolling++,x&&(u.removeSelectionMarker(x),d.toSingleRange(x));for(var t=0;t<F.length;t++)d.addRange(F[t]);u.inVirtualSelectionMode=!1,u.$mouseHandler.$clickSelection=null,u.$blockScrolling--});var k=setInterval(function(){S()},20);return e.preventDefault()}}}else 0===c&&e.editor.inMultiSelectMode&&e.editor.exitMultiSelectMode()}}),ace.define("ace/commands/multi_select_commands",["require","exports","module","ace/keyboard/hash_handler"],function(e,t,i){t.defaultCommands=[{name:"addCursorAbove",exec:function(e){e.selectMoreLines(-1)},bindKey:{win:"Ctrl-Alt-Up",mac:"Ctrl-Alt-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelow",exec:function(e){e.selectMoreLines(1)},bindKey:{win:"Ctrl-Alt-Down",mac:"Ctrl-Alt-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorAboveSkipCurrent",exec:function(e){e.selectMoreLines(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Up",mac:"Ctrl-Alt-Shift-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelowSkipCurrent",exec:function(e){e.selectMoreLines(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Down",mac:"Ctrl-Alt-Shift-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreBefore",exec:function(e){e.selectMore(-1)},bindKey:{win:"Ctrl-Alt-Left",mac:"Ctrl-Alt-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreAfter",exec:function(e){e.selectMore(1)},bindKey:{win:"Ctrl-Alt-Right",mac:"Ctrl-Alt-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextBefore",exec:function(e){e.selectMore(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Left",mac:"Ctrl-Alt-Shift-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextAfter",exec:function(e){e.selectMore(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Right",mac:"Ctrl-Alt-Shift-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"splitIntoLines",exec:function(e){e.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"alignCursors",exec:function(e){e.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",exec:function(e){e.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],t.multiSelectCommands=[{name:"singleSelection",bindKey:"esc",exec:function(e){e.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(e){return e&&e.inMultiSelectMode}}];var n=e("../keyboard/hash_handler").HashHandler;t.keyboardHandler=new n(t.multiSelectCommands)}),ace.define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(e,t,i){var n=e("./range_list").RangeList,r=e("./range").Range,o=e("./selection").Selection,s=e("./mouse/multi_select_handler").onMouseDown,a=e("./lib/event"),l=e("./lib/lang"),c=e("./commands/multi_select_commands");t.commands=c.defaultCommands.concat(c.multiSelectCommands);var h=new(0,e("./search").Search);var u=e("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(u.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(e,t){if(e){if(!this.inMultiSelectMode&&0===this.rangeCount){var i=this.toOrientedRange();if(this.rangeList.add(i),this.rangeList.add(e),2!=this.rangeList.ranges.length)return this.rangeList.removeAll(),t||this.fromOrientedRange(e);this.rangeList.removeAll(),this.rangeList.add(i),this.$onAddRange(i)}e.cursor||(e.cursor=e.end);var n=this.rangeList.add(e);return this.$onAddRange(e),n.length&&this.$onRemoveRange(n),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),t||this.fromOrientedRange(e)}},this.toSingleRange=function(e){e=e||this.ranges[0];var t=this.rangeList.removeAll();t.length&&this.$onRemoveRange(t),e&&this.fromOrientedRange(e)},this.substractPoint=function(e){var t=this.rangeList.substractPoint(e);if(t)return this.$onRemoveRange(t),t[0]},this.mergeOverlappingRanges=function(){var e=this.rangeList.merge();e.length?this.$onRemoveRange(e):this.ranges[0]&&this.fromOrientedRange(this.ranges[0])},this.$onAddRange=function(e){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(e),this._signal("addRange",{range:e})},this.$onRemoveRange=function(e){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var t=this.rangeList.ranges.pop();e.push(t),this.rangeCount=0}for(var i=e.length;i--;){var n=this.ranges.indexOf(e[i]);this.ranges.splice(n,1)}this._signal("removeRange",{ranges:e}),0===this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),(t=t||this.ranges[0])&&!t.isEqual(this.getRange())&&this.fromOrientedRange(t)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new n,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],i=r.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(i,t.cursor==t.start)}else{i=this.getRange();var n=this.isBackwards(),o=i.start.row,s=i.end.row;if(o==s){if(n)var a=i.end,l=i.start;else a=i.start,l=i.end;return this.addRange(r.fromPoints(l,l)),void this.addRange(r.fromPoints(a,a))}var c=[],h=this.getLineRange(o,!0);h.start.column=i.start.column,c.push(h);for(var u=o+1;u<s;u++)c.push(this.getLineRange(u,!0));(h=this.getLineRange(s,!0)).end.column=i.end.column,c.push(h),c.forEach(this.addRange,this)}},this.toggleBlockSelection=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],i=r.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(i,t.cursor==t.start)}else{var n=this.session.documentToScreenPosition(this.selectionLead),o=this.session.documentToScreenPosition(this.selectionAnchor);this.rectangularRangeBlock(n,o).forEach(this.addRange,this)}},this.rectangularRangeBlock=function(e,t,i){var n=[],o=e.column<t.column;if(o)var s=e.column,a=t.column;else s=t.column,a=e.column;var l=e.row<t.row;if(l)var c=e.row,h=t.row;else c=t.row,h=e.row;s<0&&(s=0),c<0&&(c=0),c==h&&(i=!0);for(var u=c;u<=h;u++){var d=r.fromPoints(this.session.screenToDocumentPosition(u,s),this.session.screenToDocumentPosition(u,a));if(d.isEmpty()){if(p&&f(d.end,p))break;var p=d.end}d.cursor=o?d.start:d.end,n.push(d)}if(l&&n.reverse(),!i){for(var m=n.length-1;n[m].isEmpty()&&m>0;)m--;if(m>0)for(var g=0;n[g].isEmpty();)g++;for(var v=m;v>=g;v--)n[v].isEmpty()&&n.splice(v,1)}return n}}.call(o.prototype);var d=e("./editor").Editor;function f(e,t){return e.row==t.row&&e.column==t.column}function p(e){e.$multiselectOnSessionChange||(e.$onAddRange=e.$onAddRange.bind(e),e.$onRemoveRange=e.$onRemoveRange.bind(e),e.$onMultiSelect=e.$onMultiSelect.bind(e),e.$onSingleSelect=e.$onSingleSelect.bind(e),e.$multiselectOnSessionChange=t.onSessionChange.bind(e),e.$checkMultiselectChange=e.$checkMultiselectChange.bind(e),e.$multiselectOnSessionChange(e),e.on("changeSession",e.$multiselectOnSessionChange),e.on("mousedown",s),e.commands.addCommands(c.defaultCommands),function(e){var t=e.textInput.getElement(),i=!1;function n(t){i&&(e.renderer.setMouseCursor(""),i=!1)}a.addListener(t,"keydown",function(t){var r=18==t.keyCode&&!(t.ctrlKey||t.shiftKey||t.metaKey);e.$blockSelectEnabled&&r?i||(e.renderer.setMouseCursor("crosshair"),i=!0):i&&n()}),a.addListener(t,"keyup",n),a.addListener(t,"blur",n)}(e))}(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(e){e.cursor||(e.cursor=e.end);var t=this.getSelectionStyle();return e.marker=this.session.addMarker(e,"ace_selection",t),this.session.$selectionMarkers.push(e),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,e},this.removeSelectionMarker=function(e){if(e.marker){this.session.removeMarker(e.marker);var t=this.session.$selectionMarkers.indexOf(e);-1!=t&&this.session.$selectionMarkers.splice(t,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(e){for(var t=this.session.$selectionMarkers,i=e.length;i--;){var n=e[i];if(n.marker){this.session.removeMarker(n.marker);var r=t.indexOf(n);-1!=r&&t.splice(r,1)}}this.session.selectionMarkerCount=t.length},this.$onAddRange=function(e){this.addSelectionMarker(e.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(e){this.removeSelectionMarkers(e.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(e){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(c.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(e){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(c.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(e){var t=e.command,i=e.editor;if(i.multiSelect){if(t.multiSelectAction)"forEach"==t.multiSelectAction?n=i.forEachSelection(t,e.args):"forEachLine"==t.multiSelectAction?n=i.forEachSelection(t,e.args,!0):"single"==t.multiSelectAction?(i.exitMultiSelectMode(),n=t.exec(i,e.args||{})):n=t.multiSelectAction(i,e.args||{});else{var n=t.exec(i,e.args||{});i.multiSelect.addRange(i.multiSelect.toOrientedRange()),i.multiSelect.mergeOverlappingRanges()}return n}},this.forEachSelection=function(e,t,i){if(!this.inVirtualSelectionMode){var n,r=i&&i.keepOrder,s=1==i||i&&i.$byLines,a=this.session,l=this.selection,c=l.rangeList,h=(r?l:c).ranges;if(!h.length)return e.exec?e.exec(this,t||{}):e(this,t||{});var u=l._eventRegistry;l._eventRegistry={};var d=new o(a);this.inVirtualSelectionMode=!0;for(var f=h.length;f--;){if(s)for(;f>0&&h[f].start.row==h[f-1].end.row;)f--;d.fromOrientedRange(h[f]),d.index=f,this.selection=a.selection=d;var p=e.exec?e.exec(this,t||{}):e(this,t||{});n||void 0===p||(n=p),d.toOrientedRange(h[f])}d.detach(),this.selection=a.selection=l,this.inVirtualSelectionMode=!1,l._eventRegistry=u,l.mergeOverlappingRanges();var m=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),m&&m.from==m.to&&this.renderer.animateScrolling(m.from),n}},this.exitMultiSelectMode=function(){this.inMultiSelectMode&&!this.inVirtualSelectionMode&&this.multiSelect.toSingleRange()},this.getSelectedText=function(){var e="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var t=this.multiSelect.rangeList.ranges,i=[],n=0;n<t.length;n++)i.push(this.session.getTextRange(t[n]));var r=this.session.getDocument().getNewLineCharacter();(e=i.join(r)).length==(i.length-1)*r.length&&(e="")}else this.selection.isEmpty()||(e=this.session.getTextRange(this.getSelectionRange()));return e},this.$checkMultiselectChange=function(e,t){if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var i=this.multiSelect.ranges[0];if(this.multiSelect.isEmpty()&&t==this.multiSelect.anchor)return;var n=t==this.multiSelect.anchor?i.cursor==i.start?i.end:i.start:i.cursor;n.row==t.row&&this.session.$clipPositionToDocument(n.row,n.column).column==t.column||this.multiSelect.toSingleRange(this.multiSelect.toOrientedRange())}},this.findAll=function(e,t,i){if((t=t||{}).needle=e||t.needle,void 0==t.needle){var n=this.selection.isEmpty()?this.selection.getWordRange():this.selection.getRange();t.needle=this.session.getTextRange(n)}this.$search.set(t);var r=this.$search.findAll(this.session);if(!r.length)return 0;this.$blockScrolling+=1;var o=this.multiSelect;i||o.toSingleRange(r[0]);for(var s=r.length;s--;)o.addRange(r[s],!0);return n&&o.rangeList.rangeAtPoint(n.start)&&o.addRange(n,!0),this.$blockScrolling-=1,r.length},this.selectMoreLines=function(e,t){var i=this.selection.toOrientedRange(),n=i.cursor==i.end,o=this.session.documentToScreenPosition(i.cursor);this.selection.$desiredColumn&&(o.column=this.selection.$desiredColumn);var s,a=this.session.screenToDocumentPosition(o.row+e,o.column);if(i.isEmpty())c=a;else var l=this.session.documentToScreenPosition(n?i.end:i.start),c=this.session.screenToDocumentPosition(l.row+e,l.column);n?(s=r.fromPoints(a,c)).cursor=s.start:(s=r.fromPoints(c,a)).cursor=s.end;if(s.desiredColumn=o.column,this.selection.inMultiSelectMode){if(t)var h=i.cursor}else this.selection.addRange(i);this.selection.addRange(s),h&&this.selection.substractPoint(h)},this.transposeSelections=function(e){for(var t=this.session,i=t.multiSelect,n=i.ranges,r=n.length;r--;){if((a=n[r]).isEmpty()){var o=t.getWordRange(a.start.row,a.start.column);a.start.row=o.start.row,a.start.column=o.start.column,a.end.row=o.end.row,a.end.column=o.end.column}}i.mergeOverlappingRanges();var s=[];for(r=n.length;r--;){var a=n[r];s.unshift(t.getTextRange(a))}e<0?s.unshift(s.pop()):s.push(s.shift());for(r=n.length;r--;){o=(a=n[r]).clone();t.replace(a,s[r]),a.start.row=o.start.row,a.start.column=o.start.column}},this.selectMore=function(e,t,i){var n=this.session,r=n.multiSelect.toOrientedRange();if(!r.isEmpty()||((r=n.getWordRange(r.start.row,r.start.column)).cursor=-1==e?r.start:r.end,this.multiSelect.addRange(r),!i)){var o=function(e,t,i){return h.$options.wrap=!0,h.$options.needle=t,h.$options.backwards=-1==i,h.find(e)}(n,n.getTextRange(r),e);o&&(o.cursor=-1==e?o.start:o.end,this.$blockScrolling+=1,this.session.unfold(o),this.multiSelect.addRange(o),this.$blockScrolling-=1,this.renderer.scrollCursorIntoView(null,.5)),t&&this.multiSelect.substractPoint(r.cursor)}},this.alignCursors=function(){var e=this.session,t=e.multiSelect,i=t.ranges,n=-1,o=i.filter(function(e){if(e.cursor.row==n)return!0;n=e.cursor.row});if(i.length&&o.length!=i.length-1){o.forEach(function(e){t.substractPoint(e.cursor)});var s=0,a=1/0,c=i.map(function(t){var i=t.cursor,n=e.getLine(i.row).substr(i.column).search(/\S/g);return-1==n&&(n=0),i.column>s&&(s=i.column),n<a&&(a=n),n});i.forEach(function(t,i){var n=t.cursor,o=s-n.column,h=c[i]-a;o>h?e.insert(n,l.stringRepeat(" ",o-h)):e.remove(new r(n.row,n.column,n.row,n.column-o+h)),t.start.column=t.end.column=s,t.start.row=t.end.row=n.row,t.cursor=t.end}),t.fromOrientedRange(i[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var h=this.selection.getRange(),u=h.start.row,d=h.end.row,f=u==d;if(f){var p,m=this.session.getLength();do{p=this.session.getLine(d)}while(/[=:]/.test(p)&&++d<m);do{p=this.session.getLine(u)}while(/[=:]/.test(p)&&--u>0);u<0&&(u=0),d>=m&&(d=m-1)}var g=this.session.removeFullLines(u,d);g=this.$reAlignText(g,f),this.session.insert({row:u,column:0},g.join("\n")+"\n"),f||(h.start.column=0,h.end.column=g[g.length-1].length),this.selection.setRange(h)}},this.$reAlignText=function(e,t){var i,n,r,o=!0,s=!0;return e.map(function(e){var t=e.match(/(\s*)(.*?)(\s*)([=:].*)/);return t?null==i?(i=t[1].length,n=t[2].length,r=t[3].length,t):(i+n+r!=t[1].length+t[2].length+t[3].length&&(s=!1),i!=t[1].length&&(o=!1),i>t[1].length&&(i=t[1].length),n<t[2].length&&(n=t[2].length),r>t[3].length&&(r=t[3].length),t):[e]}).map(t?c:o?s?function(e){return e[2]?a(i+n-e[2].length)+e[2]+a(r)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}:c:function(e){return e[2]?a(i)+e[2]+a(r)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]});function a(e){return l.stringRepeat(" ",e)}function c(e){return e[2]?a(i)+e[2]+a(n-e[2].length+r)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}}}).call(d.prototype),t.onSessionChange=function(e){var t=e.session;t&&!t.multiSelect&&(t.$selectionMarkers=[],t.selection.$initRangeList(),t.multiSelect=t.selection),this.multiSelect=t&&t.multiSelect;var i=e.oldSession;i&&(i.multiSelect.off("addRange",this.$onAddRange),i.multiSelect.off("removeRange",this.$onRemoveRange),i.multiSelect.off("multiSelect",this.$onMultiSelect),i.multiSelect.off("singleSelect",this.$onSingleSelect),i.multiSelect.lead.off("change",this.$checkMultiselectChange),i.multiSelect.anchor.off("change",this.$checkMultiselectChange)),t&&(t.multiSelect.on("addRange",this.$onAddRange),t.multiSelect.on("removeRange",this.$onRemoveRange),t.multiSelect.on("multiSelect",this.$onMultiSelect),t.multiSelect.on("singleSelect",this.$onSingleSelect),t.multiSelect.lead.on("change",this.$checkMultiselectChange),t.multiSelect.anchor.on("change",this.$checkMultiselectChange)),t&&this.inMultiSelectMode!=t.selection.inMultiSelectMode&&(t.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},t.MultiSelect=p,e("./config").defineOptions(d.prototype,"editor",{enableMultiselect:{set:function(e){p(this),e?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",s)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",s))},value:!0},enableBlockSelect:{set:function(e){this.$blockSelectEnabled=e},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("../../range").Range,r=t.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(e,t,i){var n=e.getLine(i);return this.foldingStartMarker.test(n)?"start":"markbeginend"==t&&this.foldingStopMarker&&this.foldingStopMarker.test(n)?"end":""},this.getFoldWidgetRange=function(e,t,i){return null},this.indentationBlock=function(e,t,i){var r=/\S/,o=e.getLine(t),s=o.search(r);if(-1!=s){for(var a=i||o.length,l=e.getLength(),c=t,h=t;++t<l;){var u=e.getLine(t).search(r);if(-1!=u){if(u<=s)break;h=t}}if(h>c){var d=e.getLine(h).length;return new n(c,a,h,d)}}},this.openingBracketBlock=function(e,t,i,r,o){var s={row:i,column:r+1},a=e.$findClosingBracket(t,s,o);if(a){var l=e.foldWidgets[a.row];return null==l&&(l=e.getFoldWidget(a.row)),"start"==l&&a.row>s.row&&(a.row--,a.column=e.getLine(a.row).length),n.fromPoints(s,a)}},this.closingBracketBlock=function(e,t,i,r,o){var s={row:i,column:r},a=e.$findOpeningBracket(t,s);if(a)return a.column++,s.column--,n.fromPoints(a,s)}}).call(r.prototype)}),ace.define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(e,t,i){"use strict";t.isDark=!1,t.cssClass="ace-tm",t.cssText='.ace-tm .ace_gutter {\tbackground: #f0f0f0;\tcolor: #333;\t}\t.ace-tm .ace_print-margin {\twidth: 1px;\tbackground: #e8e8e8;\t}\t.ace-tm .ace_fold {\tbackground-color: #6B72E6;\t}\t.ace-tm {\tbackground-color: #FFFFFF;\tcolor: black;\t}\t.ace-tm .ace_cursor {\tcolor: black;\t}\t.ace-tm .ace_invisible {\tcolor: rgb(191, 191, 191);\t}\t.ace-tm .ace_storage,\t.ace-tm .ace_keyword {\tcolor: blue;\t}\t.ace-tm .ace_constant {\tcolor: rgb(197, 6, 11);\t}\t.ace-tm .ace_constant.ace_buildin {\tcolor: rgb(88, 72, 246);\t}\t.ace-tm .ace_constant.ace_language {\tcolor: rgb(88, 92, 246);\t}\t.ace-tm .ace_constant.ace_library {\tcolor: rgb(6, 150, 14);\t}\t.ace-tm .ace_invalid {\tbackground-color: rgba(255, 0, 0, 0.1);\tcolor: red;\t}\t.ace-tm .ace_support.ace_function {\tcolor: rgb(60, 76, 114);\t}\t.ace-tm .ace_support.ace_constant {\tcolor: rgb(6, 150, 14);\t}\t.ace-tm .ace_support.ace_type,\t.ace-tm .ace_support.ace_class {\tcolor: rgb(109, 121, 222);\t}\t.ace-tm .ace_keyword.ace_operator {\tcolor: rgb(104, 118, 135);\t}\t.ace-tm .ace_string {\tcolor: rgb(3, 106, 7);\t}\t.ace-tm .ace_comment {\tcolor: rgb(76, 136, 107);\t}\t.ace-tm .ace_comment.ace_doc {\tcolor: rgb(0, 102, 255);\t}\t.ace-tm .ace_comment.ace_doc.ace_tag {\tcolor: rgb(128, 159, 191);\t}\t.ace-tm .ace_constant.ace_numeric {\tcolor: rgb(0, 0, 205);\t}\t.ace-tm .ace_variable {\tcolor: rgb(49, 132, 149);\t}\t.ace-tm .ace_xml-pe {\tcolor: rgb(104, 104, 91);\t}\t.ace-tm .ace_entity.ace_name.ace_function {\tcolor: #0000A2;\t}\t.ace-tm .ace_heading {\tcolor: rgb(12, 7, 255);\t}\t.ace-tm .ace_list {\tcolor:rgb(185, 6, 144);\t}\t.ace-tm .ace_meta.ace_tag {\tcolor:rgb(0, 22, 142);\t}\t.ace-tm .ace_string.ace_regex {\tcolor: rgb(255, 0, 0)\t}\t.ace-tm .ace_marker-layer .ace_selection {\tbackground: rgb(181, 213, 255);\t}\t.ace-tm.ace_multiselect .ace_selection.ace_start {\tbox-shadow: 0 0 3px 0px white;\t}\t.ace-tm .ace_marker-layer .ace_step {\tbackground: rgb(252, 255, 0);\t}\t.ace-tm .ace_marker-layer .ace_stack {\tbackground: rgb(164, 229, 101);\t}\t.ace-tm .ace_marker-layer .ace_bracket {\tmargin: -1px 0 0 -1px;\tborder: 1px solid rgb(192, 192, 192);\t}\t.ace-tm .ace_marker-layer .ace_active-line {\tbackground: rgba(0, 0, 0, 0.07);\t}\t.ace-tm .ace_gutter-active-line {\tbackground-color : #dcdcdc;\t}\t.ace-tm .ace_marker-layer .ace_selected-word {\tbackground: rgb(250, 250, 255);\tborder: 1px solid rgb(200, 200, 250);\t}\t.ace-tm .ace_indent-guide {\tbackground: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;\t}\t',e("../lib/dom").importCssString(t.cssText,t.cssClass)}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/range"],function(e,t,i){"use strict";e("./lib/oop");var n=e("./lib/dom");e("./range").Range;function r(e){this.session=e,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.$onChangeEditor=this.$onChangeEditor.bind(this),this.session.on("change",this.updateOnChange),this.session.on("changeFold",this.updateOnFold),this.session.on("changeEditor",this.$onChangeEditor)}(function(){this.getRowLength=function(e){var t;return t=this.lineWidgets&&this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0,this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1+t:1+t},this.$getWidgetScreenLength=function(){var e=0;return this.lineWidgets.forEach(function(t){t&&t.rowCount&&!t.hidden&&(e+=t.rowCount)}),e},this.$onChangeEditor=function(e){this.attach(e.editor)},this.attach=function(e){e&&e.widgetManager&&e.widgetManager!=this&&e.widgetManager.detach(),this.editor!=e&&(this.detach(),this.editor=e,e&&(e.widgetManager=this,e.renderer.on("beforeRender",this.measureWidgets),e.renderer.on("afterRender",this.renderWidgets)))},this.detach=function(e){var t=this.editor;if(t){this.editor=null,t.widgetManager=null,t.renderer.off("beforeRender",this.measureWidgets),t.renderer.off("afterRender",this.renderWidgets);var i=this.session.lineWidgets;i&&i.forEach(function(e){e&&e.el&&e.el.parentNode&&(e._inDocument=!1,e.el.parentNode.removeChild(e.el))})}},this.updateOnFold=function(e,t){var i=t.lineWidgets;if(i&&e.action){for(var n=e.data,r=n.start.row,o=n.end.row,s="add"==e.action,a=r+1;a<o;a++)i[a]&&(i[a].hidden=s);i[o]&&(s?i[r]?i[o].hidden=s:i[r]=i[o]:(i[r]==i[o]&&(i[r]=void 0),i[o].hidden=s))}},this.updateOnChange=function(e){var t=this.session.lineWidgets;if(t){var i=e.start.row,n=e.end.row-i;if(0===n);else if("remove"==e.action){t.splice(i+1,n).forEach(function(e){e&&this.removeLineWidget(e)},this),this.$updateRows()}else{var r=new Array(n);r.unshift(i,0),t.splice.apply(t,r),this.$updateRows()}}},this.$updateRows=function(){var e=this.session.lineWidgets;if(e){var t=!0;e.forEach(function(e,i){if(e)for(t=!1,e.row=i;e.$oldWidget;)e.$oldWidget.row=i,e=e.$oldWidget}),t&&(this.session.lineWidgets=null)}},this.addLineWidget=function(e){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var t=this.session.lineWidgets[e.row];t&&(e.$oldWidget=t,t.el&&t.el.parentNode&&(t.el.parentNode.removeChild(t.el),t._inDocument=!1)),this.session.lineWidgets[e.row]=e,e.session=this.session;var i=this.editor.renderer;e.html&&!e.el&&(e.el=n.createElement("div"),e.el.innerHTML=e.html),e.el&&(n.addCssClass(e.el,"ace_lineWidgetContainer"),e.el.style.position="absolute",e.el.style.zIndex=5,i.container.appendChild(e.el),e._inDocument=!0),e.coverGutter||(e.el.style.zIndex=3),e.pixelHeight||(e.pixelHeight=e.el.offsetHeight),null==e.rowCount&&(e.rowCount=e.pixelHeight/i.layerConfig.lineHeight);var r=this.session.getFoldAt(e.row,0);if(e.$fold=r,r){var o=this.session.lineWidgets;e.row!=r.end.row||o[r.start.row]?e.hidden=!0:o[r.start.row]=e}return this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows(),this.renderWidgets(null,i),this.onWidgetChanged(e),e},this.removeLineWidget=function(e){if(e._inDocument=!1,e.session=null,e.el&&e.el.parentNode&&e.el.parentNode.removeChild(e.el),e.editor&&e.editor.destroy)try{e.editor.destroy()}catch(e){}if(this.session.lineWidgets){var t=this.session.lineWidgets[e.row];if(t==e)this.session.lineWidgets[e.row]=e.$oldWidget,e.$oldWidget&&this.onWidgetChanged(e.$oldWidget);else for(;t;){if(t.$oldWidget==e){t.$oldWidget=e.$oldWidget;break}t=t.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows()},this.getWidgetsAtRow=function(e){for(var t=this.session.lineWidgets,i=t&&t[e],n=[];i;)n.push(i),i=i.$oldWidget;return n},this.onWidgetChanged=function(e){this.session._changedWidgets.push(e),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(e,t){var i=this.session._changedWidgets,n=t.layerConfig;if(i&&i.length){for(var r=1/0,o=0;o<i.length;o++){var s=i[o];if(s&&s.el&&s.session==this.session){if(!s._inDocument){if(this.session.lineWidgets[s.row]!=s)continue;s._inDocument=!0,t.container.appendChild(s.el)}s.h=s.el.offsetHeight,s.fixedWidth||(s.w=s.el.offsetWidth,s.screenWidth=Math.ceil(s.w/n.characterWidth));var a=s.h/n.lineHeight;s.coverLine&&(a-=this.session.getRowLineCount(s.row))<0&&(a=0),s.rowCount!=a&&(s.rowCount=a,s.row<r&&(r=s.row))}}r!=1/0&&(this.session._emit("changeFold",{data:{start:{row:r}}}),this.session.lineWidgetWidth=null),this.session._changedWidgets=[]}},this.renderWidgets=function(e,t){var i=t.layerConfig,n=this.session.lineWidgets;if(n){for(var r=Math.min(this.firstRow,i.firstRow),o=Math.max(this.lastRow,i.lastRow,n.length);r>0&&!n[r];)r--;this.firstRow=i.firstRow,this.lastRow=i.lastRow,t.$cursorLayer.config=i;for(var s=r;s<=o;s++){var a=n[s];if(a&&a.el)if(a.hidden)a.el.style.top=-100-(a.pixelHeight||0)+"px";else{a._inDocument||(a._inDocument=!0,t.container.appendChild(a.el));var l=t.$cursorLayer.getPixelPosition({row:s,column:0},!0).top;a.coverLine||(l+=i.lineHeight*this.session.getRowLineCount(a.row)),a.el.style.top=l-i.offset+"px";var c=a.coverGutter?0:t.gutterWidth;a.fixedWidth||(c-=t.scrollLeft),a.el.style.left=c+"px",a.fullWidth&&a.screenWidth&&(a.el.style.minWidth=i.width+2*i.padding+"px"),a.fixedWidth?a.el.style.right=t.scrollBar.getWidth()+"px":a.el.style.right=""}}}}}).call(r.prototype),t.LineWidgets=r}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(e,t,i){"use strict";var n=e("../line_widgets").LineWidgets,r=e("../lib/dom"),o=e("../range").Range;t.showErrorMarker=function(e,t){var i=e.session;i.widgetManager||(i.widgetManager=new n(i),i.widgetManager.attach(e));var s=e.getCursorPosition(),a=s.row,l=i.widgetManager.getWidgetsAtRow(a).filter(function(e){return"errorMarker"==e.type})[0];l?l.destroy():a-=t;var c,h=function(e,t,i){var n=e.getAnnotations().sort(o.comparePoints);if(n.length){var r=function(e,t,i){for(var n=0,r=e.length-1;n<=r;){var o=n+r>>1,s=i(t,e[o]);if(s>0)n=o+1;else{if(!(s<0))return o;r=o-1}}return-(n+1)}(n,{row:t,column:-1},o.comparePoints);r<0&&(r=-r-1),r>=n.length?r=i>0?0:n.length-1:0===r&&i<0&&(r=n.length-1);var s=n[r];if(s&&i){if(s.row===t){do{s=n[r+=i]}while(s&&s.row===t);if(!s)return n.slice()}var a=[];t=s.row;do{a[i<0?"unshift":"push"](s),s=n[r+=i]}while(s&&s.row==t);return a.length&&a}}}(i,a,t);if(h){var u=h[0];s.column=(u.pos&&"number"!=typeof u.column?u.pos.sc:u.column)||0,s.row=u.row,c=e.renderer.$gutterLayer.$annotations[s.row]}else{if(l)return;c={text:["Looks good!"],className:"ace_ok"}}e.session.unfold(s.row),e.selection.moveToPosition(s);var d={row:s.row,fixedWidth:!0,coverGutter:!0,el:r.createElement("div"),type:"errorMarker"},f=d.el.appendChild(r.createElement("div")),p=d.el.appendChild(r.createElement("div"));p.className="error_widget_arrow "+c.className;var m=e.renderer.$cursorLayer.getPixelPosition(s).left;p.style.left=m+e.renderer.gutterWidth-5+"px",d.el.className="error_widget_wrapper",f.className="error_widget "+c.className,f.innerHTML=c.text.join("<br>"),f.appendChild(r.createElement("div"));var g=function(e,t,i){if(0===t&&("esc"===i||"return"===i))return d.destroy(),{command:"null"}};d.destroy=function(){e.$mouseHandler.isMousePressed||(e.keyBinding.removeKeyboardHandler(g),i.widgetManager.removeLineWidget(d),e.off("changeSelection",d.destroy),e.off("changeSession",d.destroy),e.off("mouseup",d.destroy),e.off("change",d.destroy))},e.keyBinding.addKeyboardHandler(g),e.on("changeSelection",d.destroy),e.on("changeSession",d.destroy),e.on("mouseup",d.destroy),e.on("change",d.destroy),e.session.widgetManager.addLineWidget(d),d.el.onmousedown=e.focus.bind(e),e.renderer.scrollCursorIntoView(null,.5,{bottom:d.el.offsetHeight})},r.importCssString("\t .error_widget_wrapper {\t background: inherit;\t color: inherit;\t border:none\t }\t .error_widget {\t border-top: solid 2px;\t border-bottom: solid 2px;\t margin: 5px 0;\t padding: 10px 40px;\t white-space: pre-wrap;\t }\t .error_widget.ace_error, .error_widget_arrow.ace_error{\t border-color: #ff5a5a\t }\t .error_widget.ace_warning, .error_widget_arrow.ace_warning{\t border-color: #F1D817\t }\t .error_widget.ace_info, .error_widget_arrow.ace_info{\t border-color: #5a5a5a\t }\t .error_widget.ace_ok, .error_widget_arrow.ace_ok{\t border-color: #5aaa5a\t }\t .error_widget_arrow {\t position: absolute;\t border: solid 5px;\t border-top-color: transparent!important;\t border-right-color: transparent!important;\t border-left-color: transparent!important;\t top: -5px;\t }\t","")}),ace.define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(e,t,i){"use strict";e("./lib/fixoldbrowsers");var n=e("./lib/dom"),r=e("./lib/event"),o=e("./editor").Editor,s=e("./edit_session").EditSession,a=e("./undomanager").UndoManager,l=e("./virtual_renderer").VirtualRenderer;e("./worker/worker_client"),e("./keyboard/hash_handler"),e("./placeholder"),e("./multi_select"),e("./mode/folding/fold_mode"),e("./theme/textmate"),e("./ext/error_marker"),t.config=e("./config"),t.acequire=e,t.edit=function(e){if("string"==typeof e){var i=e;if(!(e=document.getElementById(i)))throw new Error("ace.edit can't find div #"+i)}if(e&&e.env&&e.env.editor instanceof o)return e.env.editor;var s="";if(e&&/input|textarea/i.test(e.tagName)){var a=e;s=a.value,e=n.createElement("pre"),a.parentNode.replaceChild(e,a)}else e&&(s=n.getInnerText(e),e.innerHTML="");var c=t.createEditSession(s),h=new o(new l(e));h.setSession(c);var u={document:c,editor:h,onResize:h.resize.bind(h,null)};return a&&(u.textarea=a),r.addListener(window,"resize",u.onResize),h.on("destroy",function(){r.removeListener(window,"resize",u.onResize),u.editor.container.env=null}),h.container.env=h.env=u,h},t.createEditSession=function(e,t){var i=new s(e,t);return i.setUndoManager(new a),i},t.EditSession=s,t.UndoManager=a,t.version="1.2.3"}),ace.acequire(["ace/ace"],function(e){for(var t in e&&e.config.init(!0),window.ace||(window.ace=e),e)e.hasOwnProperty(t)&&(window.ace[t]=e[t])}),e.exports=window.ace.acequire("ace/ace")},function(e,t){e.exports=function(){throw new Error("define cannot be used indirect")}},function(e,t){(function(t){e.exports=function(){if(t.Blob)try{return new Blob(["asdf"],{type:"text/plain"}),Blob}catch(e){}var e=t.WebKitBlobBuilder||t.MozBlobBuilder||t.MSBlobBuilder;return function(t,i){var n=new e,r=i.endings,o=i.type;if(r)for(var s=0,a=t.length;s<a;++s)n.append(t[s],r);else for(var s=0,a=t.length;s<a;++s)n.append(t[s]);return o?n.getBlob(o):n.getBlob()}}()}).call(t,function(){return this}())},function(e,t,i){ace.define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,i){"use strict";var n=e("../lib/oop"),r=e("./text_highlight_rules").TextHighlightRules,o=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"invalid.illegal",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"invalid.illegal",regex:"\\/\\/.*$"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'[^"\\\\]+'},{token:"string",regex:'"',next:"start"},{token:"string",regex:"",next:"start"}]}};n.inherits(o,r),t.JsonHighlightRules=o}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("../range").Range,r=function(){};(function(){this.checkOutdent=function(e,t){return!!/^\s+$/.test(e)&&/^\s*\}/.test(t)},this.autoOutdent=function(e,t){var i=e.getLine(t).match(/^(\s*\})/);if(!i)return 0;var r=i[1].length,o=e.findMatchingBracket({row:t,column:r});if(!o||o.row==t)return 0;var s=this.$getIndent(e.getLine(o.row));e.replace(new n(t,0,t,r-1),s)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(r.prototype),t.MatchingBraceOutdent=r}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,i){"use strict";var n,r=e("../../lib/oop"),o=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,a=e("../../lib/lang"),l=["text","paren.rparen","punctuation.operator"],c=["text","paren.rparen","punctuation.operator","comment"],h={},u=function(e){var t=-1;if(e.multiSelect&&(t=e.selection.index,h.rangeCount!=e.multiSelect.rangeCount&&(h={rangeCount:e.multiSelect.rangeCount})),h[t])return n=h[t];n=h[t]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},d=function(e,t,i,n){var r=e.end.row-e.start.row;return{text:i+t+n,selection:[0,e.start.column+1,r,e.end.column+(r?0:1)]}},f=function(){this.add("braces","insertion",function(e,t,i,r,o){var s=i.getCursorPosition(),l=r.doc.getLine(s.row);if("{"==o){u(i);var c=i.getSelectionRange(),h=r.doc.getTextRange(c);if(""!==h&&"{"!==h&&i.getWrapBehavioursEnabled())return d(c,h,"{","}");if(f.isSaneInsertion(i,r))return/[\]\}\)]/.test(l[s.column])||i.inMultiSelectMode?(f.recordAutoInsert(i,r,"}"),{text:"{}",selection:[1,1]}):(f.recordMaybeInsert(i,r,"{"),{text:"{",selection:[1,1]})}else if("}"==o){if(u(i),"}"==l.substring(s.column,s.column+1))if(null!==r.$findOpeningBracket("}",{column:s.column+1,row:s.row})&&f.isAutoInsertedClosing(s,l,o))return f.popAutoInsertedClosing(),{text:"",selection:[1,1]}}else{if("\n"==o||"\r\n"==o){u(i);var p="";if(f.isMaybeInsertedClosing(s,l)&&(p=a.stringRepeat("}",n.maybeInsertedBrackets),f.clearMaybeInsertedClosing()),"}"===l.substring(s.column,s.column+1)){var m=r.findMatchingBracket({row:s.row,column:s.column+1},"}");if(!m)return null;var g=this.$getIndent(r.getLine(m.row))}else{if(!p)return void f.clearMaybeInsertedClosing();g=this.$getIndent(l)}var v=g+r.getTabString();return{text:"\n"+v+"\n"+g+p,selection:[1,v.length,1,v.length]}}f.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(e,t,i,r,o){var s=r.doc.getTextRange(o);if(!o.isMultiLine()&&"{"==s){if(u(i),"}"==r.doc.getLine(o.start.row).substring(o.end.column,o.end.column+1))return o.end.column++,o;n.maybeInsertedBrackets--}}),this.add("parens","insertion",function(e,t,i,n,r){if("("==r){u(i);var o=i.getSelectionRange(),s=n.doc.getTextRange(o);if(""!==s&&i.getWrapBehavioursEnabled())return d(o,s,"(",")");if(f.isSaneInsertion(i,n))return f.recordAutoInsert(i,n,")"),{text:"()",selection:[1,1]}}else if(")"==r){u(i);var a=i.getCursorPosition(),l=n.doc.getLine(a.row);if(")"==l.substring(a.column,a.column+1))if(null!==n.$findOpeningBracket(")",{column:a.column+1,row:a.row})&&f.isAutoInsertedClosing(a,l,r))return f.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}),this.add("parens","deletion",function(e,t,i,n,r){var o=n.doc.getTextRange(r);if(!r.isMultiLine()&&"("==o&&(u(i),")"==n.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2)))return r.end.column++,r}),this.add("brackets","insertion",function(e,t,i,n,r){if("["==r){u(i);var o=i.getSelectionRange(),s=n.doc.getTextRange(o);if(""!==s&&i.getWrapBehavioursEnabled())return d(o,s,"[","]");if(f.isSaneInsertion(i,n))return f.recordAutoInsert(i,n,"]"),{text:"[]",selection:[1,1]}}else if("]"==r){u(i);var a=i.getCursorPosition(),l=n.doc.getLine(a.row);if("]"==l.substring(a.column,a.column+1))if(null!==n.$findOpeningBracket("]",{column:a.column+1,row:a.row})&&f.isAutoInsertedClosing(a,l,r))return f.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}),this.add("brackets","deletion",function(e,t,i,n,r){var o=n.doc.getTextRange(r);if(!r.isMultiLine()&&"["==o&&(u(i),"]"==n.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2)))return r.end.column++,r}),this.add("string_dquotes","insertion",function(e,t,i,n,r){if('"'==r||"'"==r){u(i);var o=r,s=i.getSelectionRange(),a=n.doc.getTextRange(s);if(""!==a&&"'"!==a&&'"'!=a&&i.getWrapBehavioursEnabled())return d(s,a,o,o);if(!a){var l=i.getCursorPosition(),c=n.doc.getLine(l.row),h=c.substring(l.column-1,l.column),f=c.substring(l.column,l.column+1),p=n.getTokenAt(l.row,l.column),m=n.getTokenAt(l.row,l.column+1);if("\\"==h&&p&&/escape/.test(p.type))return null;var g,v=p&&/string|escape/.test(p.type),y=!m||/string|escape/.test(m.type);if(f==o)g=v!==y;else{if(v&&!y)return null;if(v&&y)return null;var w=n.$mode.tokenRe;w.lastIndex=0;var b=w.test(h);w.lastIndex=0;var C=w.test(h);if(b||C)return null;if(f&&!/[\s;,.})\]\\]/.test(f))return null;g=!0}return{text:g?o+o:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(e,t,i,n,r){var o=n.doc.getTextRange(r);if(!r.isMultiLine()&&('"'==o||"'"==o)&&(u(i),n.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2)==o))return r.end.column++,r})};f.isSaneInsertion=function(e,t){var i=e.getCursorPosition(),n=new s(t,i.row,i.column);if(!this.$matchTokenType(n.getCurrentToken()||"text",l)){var r=new s(t,i.row,i.column+1);if(!this.$matchTokenType(r.getCurrentToken()||"text",l))return!1}return n.stepForward(),n.getCurrentTokenRow()!==i.row||this.$matchTokenType(n.getCurrentToken()||"text",c)},f.$matchTokenType=function(e,t){return t.indexOf(e.type||e)>-1},f.recordAutoInsert=function(e,t,i){var r=e.getCursorPosition(),o=t.doc.getLine(r.row);this.isAutoInsertedClosing(r,o,n.autoInsertedLineEnd[0])||(n.autoInsertedBrackets=0),n.autoInsertedRow=r.row,n.autoInsertedLineEnd=i+o.substr(r.column),n.autoInsertedBrackets++},f.recordMaybeInsert=function(e,t,i){var r=e.getCursorPosition(),o=t.doc.getLine(r.row);this.isMaybeInsertedClosing(r,o)||(n.maybeInsertedBrackets=0),n.maybeInsertedRow=r.row,n.maybeInsertedLineStart=o.substr(0,r.column)+i,n.maybeInsertedLineEnd=o.substr(r.column),n.maybeInsertedBrackets++},f.isAutoInsertedClosing=function(e,t,i){return n.autoInsertedBrackets>0&&e.row===n.autoInsertedRow&&i===n.autoInsertedLineEnd[0]&&t.substr(e.column)===n.autoInsertedLineEnd},f.isMaybeInsertedClosing=function(e,t){return n.maybeInsertedBrackets>0&&e.row===n.maybeInsertedRow&&t.substr(e.column)===n.maybeInsertedLineEnd&&t.substr(0,e.column)==n.maybeInsertedLineStart},f.popAutoInsertedClosing=function(){n.autoInsertedLineEnd=n.autoInsertedLineEnd.substr(1),n.autoInsertedBrackets--},f.clearMaybeInsertedClosing=function(){n&&(n.maybeInsertedBrackets=0,n.maybeInsertedRow=-1)},r.inherits(f,o),t.CstyleBehaviour=f}),ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,i){"use strict";var n=e("../../lib/oop"),r=e("../../range").Range,o=e("./fold_mode").FoldMode,s=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};n.inherits(s,o),function(){this.foldingStartMarker=/(\{|\[)[^\}\]]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,i){var n=e.getLine(i);if(this.singleLineBlockCommentRe.test(n)&&!this.startRegionRe.test(n)&&!this.tripleStarBlockCommentRe.test(n))return"";var r=this._getFoldWidgetBase(e,t,i);return!r&&this.startRegionRe.test(n)?"start":r},this.getFoldWidgetRange=function(e,t,i,n){var r,o=e.getLine(i);if(this.startRegionRe.test(o))return this.getCommentRegionBlock(e,o,i);if(r=o.match(this.foldingStartMarker)){var s=r.index;if(r[1])return this.openingBracketBlock(e,r[1],i,s);var a=e.getCommentFoldRange(i,s+r[0].length,1);return a&&!a.isMultiLine()&&(n?a=this.getSectionRange(e,i):"all"!=t&&(a=null)),a}if("markbegin"!==t&&(r=o.match(this.foldingStopMarker))){s=r.index+r[0].length;return r[1]?this.closingBracketBlock(e,r[1],i,s):e.getCommentFoldRange(i,s,-1)}},this.getSectionRange=function(e,t){for(var i=e.getLine(t),n=i.search(/\S/),o=t,s=i.length,a=t+=1,l=e.getLength();++t<l;){var c=(i=e.getLine(t)).search(/\S/);if(-1!==c){if(n>c)break;var h=this.getFoldWidgetRange(e,"all",t);if(h){if(h.start.row<=o)break;if(h.isMultiLine())t=h.end.row;else if(n==c)break}a=t}}return new r(o,s,a,e.getLine(a).length)},this.getCommentRegionBlock=function(e,t,i){for(var n=t.search(/\s*$/),o=e.getLength(),s=i,a=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,l=1;++i<o;){t=e.getLine(i);var c=a.exec(t);if(c&&(c[1]?l--:l++,!l))break}if(i>s)return new r(s,n,i,t.length)}}.call(s.prototype)}),ace.define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(e,t,n){"use strict";var r=e("../lib/oop"),o=e("./text").Mode,s=e("./json_highlight_rules").JsonHighlightRules,a=e("./matching_brace_outdent").MatchingBraceOutdent,l=e("./behaviour/cstyle").CstyleBehaviour,c=e("./folding/cstyle").FoldMode,h=e("../worker/worker_client").WorkerClient,u=function(){this.HighlightRules=s,this.$outdent=new a,this.$behaviour=new l,this.foldingRules=new c};r.inherits(u,o),function(){this.getNextLineIndent=function(e,t,i){var n=this.$getIndent(t);"start"==e&&(t.match(/^.*[\{\(\[]\s*$/)&&(n+=i));return n},this.checkOutdent=function(e,t,i){return this.$outdent.checkOutdent(t,i)},this.autoOutdent=function(e,t,i){this.$outdent.autoOutdent(t,i)},this.createWorker=function(e){var t=new h(["ace"],i(68),"JsonWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/json"}.call(u.prototype),t.Mode=u})},function(e,t){e.exports.id="ace/mode/json_worker",e.exports.src='"no use strict";(function(window){function resolveModuleId(id,paths){for(var testPath=id,tail="";testPath;){var alias=paths[testPath];if("string"==typeof alias)return alias+tail;if(alias)return alias.location.replace(/\\/*$/,"/")+(tail||alias.main||alias.name);if(alias===!1)return"";var i=testPath.lastIndexOf("/");if(-1===i)break;tail=testPath.substr(i)+tail,testPath=testPath.slice(0,i)}return id}if(!(void 0!==window.window&&window.document||window.acequire&&window.define)){window.console||(window.console=function(){var msgs=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:msgs})},window.console.error=window.console.warn=window.console.log=window.console.trace=window.console),window.window=window,window.ace=window,window.onerror=function(message,file,line,col,err){postMessage({type:"error",data:{message:message,data:err.data,file:file,line:line,col:col,stack:err.stack}})},window.normalizeModule=function(parentId,moduleName){if(-1!==moduleName.indexOf("!")){var chunks=moduleName.split("!");return window.normalizeModule(parentId,chunks[0])+"!"+window.normalizeModule(parentId,chunks[1])}if("."==moduleName.charAt(0)){var base=parentId.split("/").slice(0,-1).join("/");for(moduleName=(base?base+"/":"")+moduleName;-1!==moduleName.indexOf(".")&&previous!=moduleName;){var previous=moduleName;moduleName=moduleName.replace(/^\\.\\//,"").replace(/\\/\\.\\//,"/").replace(/[^\\/]+\\/\\.\\.\\//,"")}}return moduleName},window.acequire=function acequire(parentId,id){if(id||(id=parentId,parentId=null),!id.charAt)throw Error("worker.js acequire() accepts only (parentId, id) as arguments");id=window.normalizeModule(parentId,id);var module=window.acequire.modules[id];if(module)return module.initialized||(module.initialized=!0,module.exports=module.factory().exports),module.exports;if(!window.acequire.tlns)return console.log("unable to load "+id);var path=resolveModuleId(id,window.acequire.tlns);return".js"!=path.slice(-3)&&(path+=".js"),window.acequire.id=id,window.acequire.modules[id]={},importScripts(path),window.acequire(parentId,id)},window.acequire.modules={},window.acequire.tlns={},window.define=function(id,deps,factory){if(2==arguments.length?(factory=deps,"string"!=typeof id&&(deps=id,id=window.acequire.id)):1==arguments.length&&(factory=id,deps=[],id=window.acequire.id),"function"!=typeof factory)return window.acequire.modules[id]={exports:factory,initialized:!0},void 0;deps.length||(deps=["require","exports","module"]);var req=function(childId){return window.acequire(id,childId)};window.acequire.modules[id]={exports:{},factory:function(){var module=this,returnExports=factory.apply(this,deps.map(function(dep){switch(dep){case"require":return req;case"exports":return module.exports;case"module":return module;default:return req(dep)}}));return returnExports&&(module.exports=returnExports),module}}},window.define.amd={},acequire.tlns={},window.initBaseUrls=function(topLevelNamespaces){for(var i in topLevelNamespaces)acequire.tlns[i]=topLevelNamespaces[i]},window.initSender=function(){var EventEmitter=window.acequire("ace/lib/event_emitter").EventEmitter,oop=window.acequire("ace/lib/oop"),Sender=function(){};return function(){oop.implement(this,EventEmitter),this.callback=function(data,callbackId){postMessage({type:"call",id:callbackId,data:data})},this.emit=function(name,data){postMessage({type:"event",name:name,data:data})}}.call(Sender.prototype),new Sender};var main=window.main=null,sender=window.sender=null;window.onmessage=function(e){var msg=e.data;if(msg.event&&sender)sender._signal(msg.event,msg.data);else if(msg.command)if(main[msg.command])main[msg.command].apply(main,msg.args);else{if(!window[msg.command])throw Error("Unknown command:"+msg.command);window[msg.command].apply(window,msg.args)}else if(msg.init){window.initBaseUrls(msg.tlns),acequire("ace/lib/es5-shim"),sender=window.sender=window.initSender();var clazz=acequire(msg.module)[msg.classname];main=window.main=new clazz(sender)}}}})(this),ace.define("ace/lib/oop",["require","exports","module"],function(acequire,exports){"use strict";exports.inherits=function(ctor,superCtor){ctor.super_=superCtor,ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:!1,writable:!0,configurable:!0}})},exports.mixin=function(obj,mixin){for(var key in mixin)obj[key]=mixin[key];return obj},exports.implement=function(proto,mixin){exports.mixin(proto,mixin)}}),ace.define("ace/range",["require","exports","module"],function(acequire,exports){"use strict";var comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},Range=function(startRow,startColumn,endRow,endColumn){this.start={row:startRow,column:startColumn},this.end={row:endRow,column:endColumn}};(function(){this.isEqual=function(range){return this.start.row===range.start.row&&this.end.row===range.end.row&&this.start.column===range.start.column&&this.end.column===range.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(row,column){return 0==this.compare(row,column)},this.compareRange=function(range){var cmp,end=range.end,start=range.start;return cmp=this.compare(end.row,end.column),1==cmp?(cmp=this.compare(start.row,start.column),1==cmp?2:0==cmp?1:0):-1==cmp?-2:(cmp=this.compare(start.row,start.column),-1==cmp?-1:1==cmp?42:0)},this.comparePoint=function(p){return this.compare(p.row,p.column)},this.containsRange=function(range){return 0==this.comparePoint(range.start)&&0==this.comparePoint(range.end)},this.intersects=function(range){var cmp=this.compareRange(range);return-1==cmp||0==cmp||1==cmp},this.isEnd=function(row,column){return this.end.row==row&&this.end.column==column},this.isStart=function(row,column){return this.start.row==row&&this.start.column==column},this.setStart=function(row,column){"object"==typeof row?(this.start.column=row.column,this.start.row=row.row):(this.start.row=row,this.start.column=column)},this.setEnd=function(row,column){"object"==typeof row?(this.end.column=row.column,this.end.row=row.row):(this.end.row=row,this.end.column=column)},this.inside=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)||this.isStart(row,column)?!1:!0:!1},this.insideStart=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)?!1:!0:!1},this.insideEnd=function(row,column){return 0==this.compare(row,column)?this.isStart(row,column)?!1:!0:!1},this.compare=function(row,column){return this.isMultiLine()||row!==this.start.row?this.start.row>row?-1:row>this.end.row?1:this.start.row===row?column>=this.start.column?0:-1:this.end.row===row?this.end.column>=column?0:1:0:this.start.column>column?-1:column>this.end.column?1:0},this.compareStart=function(row,column){return this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.compareEnd=function(row,column){return this.end.row==row&&this.end.column==column?1:this.compare(row,column)},this.compareInside=function(row,column){return this.end.row==row&&this.end.column==column?1:this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.clipRows=function(firstRow,lastRow){if(this.end.row>lastRow)var end={row:lastRow+1,column:0};else if(firstRow>this.end.row)var end={row:firstRow,column:0};if(this.start.row>lastRow)var start={row:lastRow+1,column:0};else if(firstRow>this.start.row)var start={row:firstRow,column:0};return Range.fromPoints(start||this.start,end||this.end)},this.extend=function(row,column){var cmp=this.compare(row,column);if(0==cmp)return this;if(-1==cmp)var start={row:row,column:column};else var end={row:row,column:column};return Range.fromPoints(start||this.start,end||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return Range.fromPoints(this.start,this.end)},this.collapseRows=function(){return 0==this.end.column?new Range(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new Range(this.start.row,0,this.end.row,0)},this.toScreenRange=function(session){var screenPosStart=session.documentToScreenPosition(this.start),screenPosEnd=session.documentToScreenPosition(this.end);return new Range(screenPosStart.row,screenPosStart.column,screenPosEnd.row,screenPosEnd.column)},this.moveBy=function(row,column){this.start.row+=row,this.start.column+=column,this.end.row+=row,this.end.column+=column}}).call(Range.prototype),Range.fromPoints=function(start,end){return new Range(start.row,start.column,end.row,end.column)},Range.comparePoints=comparePoints,Range.comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},exports.Range=Range}),ace.define("ace/apply_delta",["require","exports","module"],function(acequire,exports){"use strict";exports.applyDelta=function(docLines,delta){var row=delta.start.row,startColumn=delta.start.column,line=docLines[row]||"";switch(delta.action){case"insert":var lines=delta.lines;if(1===lines.length)docLines[row]=line.substring(0,startColumn)+delta.lines[0]+line.substring(startColumn);else{var args=[row,1].concat(delta.lines);docLines.splice.apply(docLines,args),docLines[row]=line.substring(0,startColumn)+docLines[row],docLines[row+delta.lines.length-1]+=line.substring(startColumn)}break;case"remove":var endColumn=delta.end.column,endRow=delta.end.row;row===endRow?docLines[row]=line.substring(0,startColumn)+line.substring(endColumn):docLines.splice(row,endRow-row+1,line.substring(0,startColumn)+docLines[endRow].substring(endColumn))}}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(acequire,exports){"use strict";var EventEmitter={},stopPropagation=function(){this.propagationStopped=!0},preventDefault=function(){this.defaultPrevented=!0};EventEmitter._emit=EventEmitter._dispatchEvent=function(eventName,e){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var listeners=this._eventRegistry[eventName]||[],defaultHandler=this._defaultHandlers[eventName];if(listeners.length||defaultHandler){"object"==typeof e&&e||(e={}),e.type||(e.type=eventName),e.stopPropagation||(e.stopPropagation=stopPropagation),e.preventDefault||(e.preventDefault=preventDefault),listeners=listeners.slice();for(var i=0;listeners.length>i&&(listeners[i](e,this),!e.propagationStopped);i++);return defaultHandler&&!e.defaultPrevented?defaultHandler(e,this):void 0}},EventEmitter._signal=function(eventName,e){var listeners=(this._eventRegistry||{})[eventName];if(listeners){listeners=listeners.slice();for(var i=0;listeners.length>i;i++)listeners[i](e,this)}},EventEmitter.once=function(eventName,callback){var _self=this;callback&&this.addEventListener(eventName,function newCallback(){_self.removeEventListener(eventName,newCallback),callback.apply(null,arguments)})},EventEmitter.setDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers||(handlers=this._defaultHandlers={_disabled_:{}}),handlers[eventName]){var old=handlers[eventName],disabled=handlers._disabled_[eventName];disabled||(handlers._disabled_[eventName]=disabled=[]),disabled.push(old);var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}handlers[eventName]=callback},EventEmitter.removeDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers){var disabled=handlers._disabled_[eventName];if(handlers[eventName]==callback)handlers[eventName],disabled&&this.setDefaultHandler(eventName,disabled.pop());else if(disabled){var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}}},EventEmitter.on=EventEmitter.addEventListener=function(eventName,callback,capturing){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];return listeners||(listeners=this._eventRegistry[eventName]=[]),-1==listeners.indexOf(callback)&&listeners[capturing?"unshift":"push"](callback),callback},EventEmitter.off=EventEmitter.removeListener=EventEmitter.removeEventListener=function(eventName,callback){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];if(listeners){var index=listeners.indexOf(callback);-1!==index&&listeners.splice(index,1)}},EventEmitter.removeAllListeners=function(eventName){this._eventRegistry&&(this._eventRegistry[eventName]=[])},exports.EventEmitter=EventEmitter}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(acequire,exports){"use strict";var oop=acequire("./lib/oop"),EventEmitter=acequire("./lib/event_emitter").EventEmitter,Anchor=exports.Anchor=function(doc,row,column){this.$onChange=this.onChange.bind(this),this.attach(doc),column===void 0?this.setPosition(row.row,row.column):this.setPosition(row,column)};(function(){function $pointsInOrder(point1,point2,equalPointsInOrder){var bColIsAfter=equalPointsInOrder?point1.column<=point2.column:point1.column<point2.column;return point1.row<point2.row||point1.row==point2.row&&bColIsAfter}function $getTransformedPoint(delta,point,moveIfEqual){var deltaIsInsert="insert"==delta.action,deltaRowShift=(deltaIsInsert?1:-1)*(delta.end.row-delta.start.row),deltaColShift=(deltaIsInsert?1:-1)*(delta.end.column-delta.start.column),deltaStart=delta.start,deltaEnd=deltaIsInsert?deltaStart:delta.end;return $pointsInOrder(point,deltaStart,moveIfEqual)?{row:point.row,column:point.column}:$pointsInOrder(deltaEnd,point,!moveIfEqual)?{row:point.row+deltaRowShift,column:point.column+(point.row==deltaEnd.row?deltaColShift:0)}:{row:deltaStart.row,column:deltaStart.column}}oop.implement(this,EventEmitter),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(delta){if(!(delta.start.row==delta.end.row&&delta.start.row!=this.row||delta.start.row>this.row)){var point=$getTransformedPoint(delta,{row:this.row,column:this.column},this.$insertRight);this.setPosition(point.row,point.column,!0)}},this.setPosition=function(row,column,noClip){var pos;if(pos=noClip?{row:row,column:column}:this.$clipPositionToDocument(row,column),this.row!=pos.row||this.column!=pos.column){var old={row:this.row,column:this.column};this.row=pos.row,this.column=pos.column,this._signal("change",{old:old,value:pos})}},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.attach=function(doc){this.document=doc||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(row,column){var pos={};return row>=this.document.getLength()?(pos.row=Math.max(0,this.document.getLength()-1),pos.column=this.document.getLine(pos.row).length):0>row?(pos.row=0,pos.column=0):(pos.row=row,pos.column=Math.min(this.document.getLine(pos.row).length,Math.max(0,column))),0>column&&(pos.column=0),pos}}).call(Anchor.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(acequire,exports){"use strict";var oop=acequire("./lib/oop"),applyDelta=acequire("./apply_delta").applyDelta,EventEmitter=acequire("./lib/event_emitter").EventEmitter,Range=acequire("./range").Range,Anchor=acequire("./anchor").Anchor,Document=function(textOrLines){this.$lines=[""],0===textOrLines.length?this.$lines=[""]:Array.isArray(textOrLines)?this.insertMergedLines({row:0,column:0},textOrLines):this.insert({row:0,column:0},textOrLines)};(function(){oop.implement(this,EventEmitter),this.setValue=function(text){var len=this.getLength()-1;this.remove(new Range(0,0,len,this.getLine(len).length)),this.insert({row:0,column:0},text)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(row,column){return new Anchor(this,row,column)},this.$split=0==="aaa".split(/a/).length?function(text){return text.replace(/\\r\\n|\\r/g,"\\n").split("\\n")}:function(text){return text.split(/\\r\\n|\\r|\\n/)},this.$detectNewLine=function(text){var match=text.match(/^.*?(\\r\\n|\\r|\\n)/m);this.$autoNewLine=match?match[1]:"\\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\\r\\n";case"unix":return"\\n";default:return this.$autoNewLine||"\\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(newLineMode){this.$newLineMode!==newLineMode&&(this.$newLineMode=newLineMode,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(text){return"\\r\\n"==text||"\\r"==text||"\\n"==text},this.getLine=function(row){return this.$lines[row]||""},this.getLines=function(firstRow,lastRow){return this.$lines.slice(firstRow,lastRow+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(range){return this.getLinesForRange(range).join(this.getNewLineCharacter())},this.getLinesForRange=function(range){var lines;if(range.start.row===range.end.row)lines=[this.getLine(range.start.row).substring(range.start.column,range.end.column)];else{lines=this.getLines(range.start.row,range.end.row),lines[0]=(lines[0]||"").substring(range.start.column);var l=lines.length-1;range.end.row-range.start.row==l&&(lines[l]=lines[l].substring(0,range.end.column))}return lines},this.insertLines=function(row,lines){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(row,lines)},this.removeLines=function(firstRow,lastRow){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(firstRow,lastRow)},this.insertNewLine=function(position){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, [\'\', \'\']) instead."),this.insertMergedLines(position,["",""])},this.insert=function(position,text){return 1>=this.getLength()&&this.$detectNewLine(text),this.insertMergedLines(position,this.$split(text))},this.insertInLine=function(position,text){var start=this.clippedPos(position.row,position.column),end=this.pos(position.row,position.column+text.length);return this.applyDelta({start:start,end:end,action:"insert",lines:[text]},!0),this.clonePos(end)},this.clippedPos=function(row,column){var length=this.getLength();void 0===row?row=length:0>row?row=0:row>=length&&(row=length-1,column=void 0);var line=this.getLine(row);return void 0==column&&(column=line.length),column=Math.min(Math.max(column,0),line.length),{row:row,column:column}},this.clonePos=function(pos){return{row:pos.row,column:pos.column}},this.pos=function(row,column){return{row:row,column:column}},this.$clipPosition=function(position){var length=this.getLength();return position.row>=length?(position.row=Math.max(0,length-1),position.column=this.getLine(length-1).length):(position.row=Math.max(0,position.row),position.column=Math.min(Math.max(position.column,0),this.getLine(position.row).length)),position},this.insertFullLines=function(row,lines){row=Math.min(Math.max(row,0),this.getLength());var column=0;this.getLength()>row?(lines=lines.concat([""]),column=0):(lines=[""].concat(lines),row--,column=this.$lines[row].length),this.insertMergedLines({row:row,column:column},lines)},this.insertMergedLines=function(position,lines){var start=this.clippedPos(position.row,position.column),end={row:start.row+lines.length-1,column:(1==lines.length?start.column:0)+lines[lines.length-1].length};return this.applyDelta({start:start,end:end,action:"insert",lines:lines}),this.clonePos(end)},this.remove=function(range){var start=this.clippedPos(range.start.row,range.start.column),end=this.clippedPos(range.end.row,range.end.column);return this.applyDelta({start:start,end:end,action:"remove",lines:this.getLinesForRange({start:start,end:end})}),this.clonePos(start)},this.removeInLine=function(row,startColumn,endColumn){var start=this.clippedPos(row,startColumn),end=this.clippedPos(row,endColumn);return this.applyDelta({start:start,end:end,action:"remove",lines:this.getLinesForRange({start:start,end:end})},!0),this.clonePos(start)},this.removeFullLines=function(firstRow,lastRow){firstRow=Math.min(Math.max(0,firstRow),this.getLength()-1),lastRow=Math.min(Math.max(0,lastRow),this.getLength()-1);var deleteFirstNewLine=lastRow==this.getLength()-1&&firstRow>0,deleteLastNewLine=this.getLength()-1>lastRow,startRow=deleteFirstNewLine?firstRow-1:firstRow,startCol=deleteFirstNewLine?this.getLine(startRow).length:0,endRow=deleteLastNewLine?lastRow+1:lastRow,endCol=deleteLastNewLine?0:this.getLine(endRow).length,range=new Range(startRow,startCol,endRow,endCol),deletedLines=this.$lines.slice(firstRow,lastRow+1);return this.applyDelta({start:range.start,end:range.end,action:"remove",lines:this.getLinesForRange(range)}),deletedLines},this.removeNewLine=function(row){this.getLength()-1>row&&row>=0&&this.applyDelta({start:this.pos(row,this.getLine(row).length),end:this.pos(row+1,0),action:"remove",lines:["",""]})},this.replace=function(range,text){if(range instanceof Range||(range=Range.fromPoints(range.start,range.end)),0===text.length&&range.isEmpty())return range.start;if(text==this.getTextRange(range))return range.end;this.remove(range);var end;return end=text?this.insert(range.start,text):range.start},this.applyDeltas=function(deltas){for(var i=0;deltas.length>i;i++)this.applyDelta(deltas[i])},this.revertDeltas=function(deltas){for(var i=deltas.length-1;i>=0;i--)this.revertDelta(deltas[i])},this.applyDelta=function(delta,doNotValidate){var isInsert="insert"==delta.action;(isInsert?1>=delta.lines.length&&!delta.lines[0]:!Range.comparePoints(delta.start,delta.end))||(isInsert&&delta.lines.length>2e4&&this.$splitAndapplyLargeDelta(delta,2e4),applyDelta(this.$lines,delta,doNotValidate),this._signal("change",delta))},this.$splitAndapplyLargeDelta=function(delta,MAX){for(var lines=delta.lines,l=lines.length,row=delta.start.row,column=delta.start.column,from=0,to=0;;){from=to,to+=MAX-1;var chunk=lines.slice(from,to);if(to>l){delta.lines=chunk,delta.start.row=row+from,delta.start.column=column;break}chunk.push(""),this.applyDelta({start:this.pos(row+from,column),end:this.pos(row+to,column=0),action:delta.action,lines:chunk},!0)}},this.revertDelta=function(delta){this.applyDelta({start:this.clonePos(delta.start),end:this.clonePos(delta.end),action:"insert"==delta.action?"remove":"insert",lines:delta.lines.slice()})},this.indexToPosition=function(index,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,i=startRow||0,l=lines.length;l>i;i++)if(index-=lines[i].length+newlineLength,0>index)return{row:i,column:index+lines[i].length+newlineLength};return{row:l-1,column:lines[l-1].length}},this.positionToIndex=function(pos,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,index=0,row=Math.min(pos.row,lines.length),i=startRow||0;row>i;++i)index+=lines[i].length+newlineLength;return index+pos.column}}).call(Document.prototype),exports.Document=Document}),ace.define("ace/lib/lang",["require","exports","module"],function(acequire,exports){"use strict";exports.last=function(a){return a[a.length-1]},exports.stringReverse=function(string){return string.split("").reverse().join("")},exports.stringRepeat=function(string,count){for(var result="";count>0;)1&count&&(result+=string),(count>>=1)&&(string+=string);return result};var trimBeginRegexp=/^\\s\\s*/,trimEndRegexp=/\\s\\s*$/;exports.stringTrimLeft=function(string){return string.replace(trimBeginRegexp,"")},exports.stringTrimRight=function(string){return string.replace(trimEndRegexp,"")},exports.copyObject=function(obj){var copy={};for(var key in obj)copy[key]=obj[key];return copy},exports.copyArray=function(array){for(var copy=[],i=0,l=array.length;l>i;i++)copy[i]=array[i]&&"object"==typeof array[i]?this.copyObject(array[i]):array[i];return copy},exports.deepCopy=function deepCopy(obj){if("object"!=typeof obj||!obj)return obj;var copy;if(Array.isArray(obj)){copy=[];for(var key=0;obj.length>key;key++)copy[key]=deepCopy(obj[key]);return copy}var cons=obj.constructor;if(cons===RegExp)return obj;copy=cons();for(var key in obj)copy[key]=deepCopy(obj[key]);return copy},exports.arrayToMap=function(arr){for(var map={},i=0;arr.length>i;i++)map[arr[i]]=1;return map},exports.createMap=function(props){var map=Object.create(null);for(var i in props)map[i]=props[i];return map},exports.arrayRemove=function(array,value){for(var i=0;array.length>=i;i++)value===array[i]&&array.splice(i,1)},exports.escapeRegExp=function(str){return str.replace(/([.*+?^${}()|[\\]\\/\\\\])/g,"\\\\$1")},exports.escapeHTML=function(str){return str.replace(/&/g,"&").replace(/"/g,""").replace(/\'/g,"'").replace(/</g,"<")},exports.getMatchOffsets=function(string,regExp){var matches=[];return string.replace(regExp,function(str){matches.push({offset:arguments[arguments.length-2],length:str.length})}),matches},exports.deferredCall=function(fcn){var timer=null,callback=function(){timer=null,fcn()},deferred=function(timeout){return deferred.cancel(),timer=setTimeout(callback,timeout||0),deferred};return deferred.schedule=deferred,deferred.call=function(){return this.cancel(),fcn(),deferred},deferred.cancel=function(){return clearTimeout(timer),timer=null,deferred},deferred.isPending=function(){return timer},deferred},exports.delayedCall=function(fcn,defaultTimeout){var timer=null,callback=function(){timer=null,fcn()},_self=function(timeout){null==timer&&(timer=setTimeout(callback,timeout||defaultTimeout))};return _self.delay=function(timeout){timer&&clearTimeout(timer),timer=setTimeout(callback,timeout||defaultTimeout)},_self.schedule=_self,_self.call=function(){this.cancel(),fcn()},_self.cancel=function(){timer&&clearTimeout(timer),timer=null},_self.isPending=function(){return timer},_self}}),ace.define("ace/worker/mirror",["require","exports","module","ace/range","ace/document","ace/lib/lang"],function(acequire,exports){"use strict";acequire("../range").Range;var Document=acequire("../document").Document,lang=acequire("../lib/lang"),Mirror=exports.Mirror=function(sender){this.sender=sender;var doc=this.doc=new Document(""),deferredUpdate=this.deferredUpdate=lang.delayedCall(this.onUpdate.bind(this)),_self=this;sender.on("change",function(e){var data=e.data;if(data[0].start)doc.applyDeltas(data);else for(var i=0;data.length>i;i+=2){if(Array.isArray(data[i+1]))var d={action:"insert",start:data[i],lines:data[i+1]};else var d={action:"remove",start:data[i],end:data[i+1]};doc.applyDelta(d,!0)}return _self.$timeout?deferredUpdate.schedule(_self.$timeout):(_self.onUpdate(),void 0)})};(function(){this.$timeout=500,this.setTimeout=function(timeout){this.$timeout=timeout},this.setValue=function(value){this.doc.setValue(value),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(callbackId){this.sender.callback(this.doc.getValue(),callbackId)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(Mirror.prototype)}),ace.define("ace/mode/json/json_parse",["require","exports","module"],function(){"use strict";var at,ch,text,value,escapee={\'"\':\'"\',"\\\\":"\\\\","/":"/",b:"\\b",f:"\\f",n:"\\n",r:"\\r",t:"\t"},error=function(m){throw{name:"SyntaxError",message:m,at:at,text:text}},next=function(c){return c&&c!==ch&&error("Expected \'"+c+"\' instead of \'"+ch+"\'"),ch=text.charAt(at),at+=1,ch},number=function(){var number,string="";for("-"===ch&&(string="-",next("-"));ch>="0"&&"9">=ch;)string+=ch,next();if("."===ch)for(string+=".";next()&&ch>="0"&&"9">=ch;)string+=ch;if("e"===ch||"E"===ch)for(string+=ch,next(),("-"===ch||"+"===ch)&&(string+=ch,next());ch>="0"&&"9">=ch;)string+=ch,next();return number=+string,isNaN(number)?(error("Bad number"),void 0):number},string=function(){var hex,i,uffff,string="";if(\'"\'===ch)for(;next();){if(\'"\'===ch)return next(),string;if("\\\\"===ch)if(next(),"u"===ch){for(uffff=0,i=0;4>i&&(hex=parseInt(next(),16),isFinite(hex));i+=1)uffff=16*uffff+hex;string+=String.fromCharCode(uffff)}else{if("string"!=typeof escapee[ch])break;string+=escapee[ch]}else string+=ch}error("Bad string")},white=function(){for(;ch&&" ">=ch;)next()},word=function(){switch(ch){case"t":return next("t"),next("r"),next("u"),next("e"),!0;case"f":return next("f"),next("a"),next("l"),next("s"),next("e"),!1;case"n":return next("n"),next("u"),next("l"),next("l"),null}error("Unexpected \'"+ch+"\'")},array=function(){var array=[];if("["===ch){if(next("["),white(),"]"===ch)return next("]"),array;for(;ch;){if(array.push(value()),white(),"]"===ch)return next("]"),array;next(","),white()}}error("Bad array")},object=function(){var key,object={};if("{"===ch){if(next("{"),white(),"}"===ch)return next("}"),object;for(;ch;){if(key=string(),white(),next(":"),Object.hasOwnProperty.call(object,key)&&error(\'Duplicate key "\'+key+\'"\'),object[key]=value(),white(),"}"===ch)return next("}"),object;next(","),white()}}error("Bad object")};return value=function(){switch(white(),ch){case"{":return object();case"[":return array();case\'"\':return string();case"-":return number();default:return ch>="0"&&"9">=ch?number():word()}},function(source,reviver){var result;return text=source,at=0,ch=" ",result=value(),white(),ch&&error("Syntax error"),"function"==typeof reviver?function walk(holder,key){var k,v,value=holder[key];if(value&&"object"==typeof value)for(k in value)Object.hasOwnProperty.call(value,k)&&(v=walk(value,k),void 0!==v?value[k]=v:delete value[k]);return reviver.call(holder,key,value)}({"":result},""):result}}),ace.define("ace/mode/json_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/json/json_parse"],function(acequire,exports){"use strict";var oop=acequire("../lib/oop"),Mirror=acequire("../worker/mirror").Mirror,parse=acequire("./json/json_parse"),JsonWorker=exports.JsonWorker=function(sender){Mirror.call(this,sender),this.setTimeout(200)};oop.inherits(JsonWorker,Mirror),function(){this.onUpdate=function(){var value=this.doc.getValue(),errors=[];try{value&&parse(value)}catch(e){var pos=this.doc.indexToPosition(e.at-1);errors.push({row:pos.row,column:pos.column,text:e.message,type:"error"})}this.sender.emit("annotate",errors)}}.call(JsonWorker.prototype)}),ace.define("ace/lib/es5-shim",["require","exports","module"],function(){function Empty(){}function doesDefinePropertyWork(object){try{return Object.defineProperty(object,"sentinel",{}),"sentinel"in object}catch(exception){}}function toInteger(n){return n=+n,n!==n?n=0:0!==n&&n!==1/0&&n!==-(1/0)&&(n=(n>0||-1)*Math.floor(Math.abs(n))),n}Function.prototype.bind||(Function.prototype.bind=function(that){var target=this;if("function"!=typeof target)throw new TypeError("Function.prototype.bind called on incompatible "+target);var args=slice.call(arguments,1),bound=function(){if(this instanceof bound){var result=target.apply(this,args.concat(slice.call(arguments)));return Object(result)===result?result:this}return target.apply(that,args.concat(slice.call(arguments)))};return target.prototype&&(Empty.prototype=target.prototype,bound.prototype=new Empty,Empty.prototype=null),bound});var defineGetter,defineSetter,lookupGetter,lookupSetter,supportsAccessors,call=Function.prototype.call,prototypeOfArray=Array.prototype,prototypeOfObject=Object.prototype,slice=prototypeOfArray.slice,_toString=call.bind(prototypeOfObject.toString),owns=call.bind(prototypeOfObject.hasOwnProperty);if((supportsAccessors=owns(prototypeOfObject,"__defineGetter__"))&&(defineGetter=call.bind(prototypeOfObject.__defineGetter__),defineSetter=call.bind(prototypeOfObject.__defineSetter__),lookupGetter=call.bind(prototypeOfObject.__lookupGetter__),lookupSetter=call.bind(prototypeOfObject.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function makeArray(l){var a=Array(l+2);return a[0]=a[1]=0,a}var lengthBefore,array=[];return array.splice.apply(array,makeArray(20)),array.splice.apply(array,makeArray(26)),lengthBefore=array.length,array.splice(5,0,"XXX"),lengthBefore+1==array.length,lengthBefore+1==array.length?!0:void 0\n}()){var array_splice=Array.prototype.splice;Array.prototype.splice=function(start,deleteCount){return arguments.length?array_splice.apply(this,[void 0===start?0:start,void 0===deleteCount?this.length-start:deleteCount].concat(slice.call(arguments,2))):[]}}else Array.prototype.splice=function(pos,removeCount){var length=this.length;pos>0?pos>length&&(pos=length):void 0==pos?pos=0:0>pos&&(pos=Math.max(length+pos,0)),length>pos+removeCount||(removeCount=length-pos);var removed=this.slice(pos,pos+removeCount),insert=slice.call(arguments,2),add=insert.length;if(pos===length)add&&this.push.apply(this,insert);else{var remove=Math.min(removeCount,length-pos),tailOldPos=pos+remove,tailNewPos=tailOldPos+add-remove,tailCount=length-tailOldPos,lengthAfterRemove=length-remove;if(tailOldPos>tailNewPos)for(var i=0;tailCount>i;++i)this[tailNewPos+i]=this[tailOldPos+i];else if(tailNewPos>tailOldPos)for(i=tailCount;i--;)this[tailNewPos+i]=this[tailOldPos+i];if(add&&pos===lengthAfterRemove)this.length=lengthAfterRemove,this.push.apply(this,insert);else for(this.length=lengthAfterRemove+add,i=0;add>i;++i)this[pos+i]=insert[i]}return removed};Array.isArray||(Array.isArray=function(obj){return"[object Array]"==_toString(obj)});var boxedString=Object("a"),splitString="a"!=boxedString[0]||!(0 in boxedString);if(Array.prototype.forEach||(Array.prototype.forEach=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,thisp=arguments[1],i=-1,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError;for(;length>++i;)i in self&&fun.call(thisp,self[i],i,object)}),Array.prototype.map||(Array.prototype.map=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,result=Array(length),thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)i in self&&(result[i]=fun.call(thisp,self[i],i,object));return result}),Array.prototype.filter||(Array.prototype.filter=function(fun){var value,object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,result=[],thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)i in self&&(value=self[i],fun.call(thisp,value,i,object)&&result.push(value));return result}),Array.prototype.every||(Array.prototype.every=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)if(i in self&&!fun.call(thisp,self[i],i,object))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)if(i in self&&fun.call(thisp,self[i],i,object))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");if(!length&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var result,i=0;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i++];break}if(++i>=length)throw new TypeError("reduce of empty array with no initial value")}for(;length>i;i++)i in self&&(result=fun.call(void 0,result,self[i],i,object));return result}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");if(!length&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var result,i=length-1;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i--];break}if(0>--i)throw new TypeError("reduceRight of empty array with no initial value")}do i in this&&(result=fun.call(void 0,result,self[i],i,object));while(i--);return result}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(sought){var self=splitString&&"[object String]"==_toString(this)?this.split(""):toObject(this),length=self.length>>>0;if(!length)return-1;var i=0;for(arguments.length>1&&(i=toInteger(arguments[1])),i=i>=0?i:Math.max(0,length+i);length>i;i++)if(i in self&&self[i]===sought)return i;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(sought){var self=splitString&&"[object String]"==_toString(this)?this.split(""):toObject(this),length=self.length>>>0;if(!length)return-1;var i=length-1;for(arguments.length>1&&(i=Math.min(i,toInteger(arguments[1]))),i=i>=0?i:length-Math.abs(i);i>=0;i--)if(i in self&&sought===self[i])return i;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(object){return object.__proto__||(object.constructor?object.constructor.prototype:prototypeOfObject)}),!Object.getOwnPropertyDescriptor){var ERR_NON_OBJECT="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(object,property){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT+object);if(owns(object,property)){var descriptor,getter,setter;if(descriptor={enumerable:!0,configurable:!0},supportsAccessors){var prototype=object.__proto__;object.__proto__=prototypeOfObject;var getter=lookupGetter(object,property),setter=lookupSetter(object,property);if(object.__proto__=prototype,getter||setter)return getter&&(descriptor.get=getter),setter&&(descriptor.set=setter),descriptor}return descriptor.value=object[property],descriptor}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(object){return Object.keys(object)}),!Object.create){var createEmpty;createEmpty=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var empty={};for(var i in empty)empty[i]=null;return empty.constructor=empty.hasOwnProperty=empty.propertyIsEnumerable=empty.isPrototypeOf=empty.toLocaleString=empty.toString=empty.valueOf=empty.__proto__=null,empty},Object.create=function(prototype,properties){var object;if(null===prototype)object=createEmpty();else{if("object"!=typeof prototype)throw new TypeError("typeof prototype["+typeof prototype+"] != \'object\'");var Type=function(){};Type.prototype=prototype,object=new Type,object.__proto__=prototype}return void 0!==properties&&Object.defineProperties(object,properties),object}}if(Object.defineProperty){var definePropertyWorksOnObject=doesDefinePropertyWork({}),definePropertyWorksOnDom="undefined"==typeof document||doesDefinePropertyWork(document.createElement("div"));if(!definePropertyWorksOnObject||!definePropertyWorksOnDom)var definePropertyFallback=Object.defineProperty}if(!Object.defineProperty||definePropertyFallback){var ERR_NON_OBJECT_DESCRIPTOR="Property description must be an object: ",ERR_NON_OBJECT_TARGET="Object.defineProperty called on non-object: ",ERR_ACCESSORS_NOT_SUPPORTED="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(object,property,descriptor){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT_TARGET+object);if("object"!=typeof descriptor&&"function"!=typeof descriptor||null===descriptor)throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR+descriptor);if(definePropertyFallback)try{return definePropertyFallback.call(Object,object,property,descriptor)}catch(exception){}if(owns(descriptor,"value"))if(supportsAccessors&&(lookupGetter(object,property)||lookupSetter(object,property))){var prototype=object.__proto__;object.__proto__=prototypeOfObject,delete object[property],object[property]=descriptor.value,object.__proto__=prototype}else object[property]=descriptor.value;else{if(!supportsAccessors)throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);owns(descriptor,"get")&&defineGetter(object,property,descriptor.get),owns(descriptor,"set")&&defineSetter(object,property,descriptor.set)}return object}}Object.defineProperties||(Object.defineProperties=function(object,properties){for(var property in properties)owns(properties,property)&&Object.defineProperty(object,property,properties[property]);return object}),Object.seal||(Object.seal=function(object){return object}),Object.freeze||(Object.freeze=function(object){return object});try{Object.freeze(function(){})}catch(exception){Object.freeze=function(freezeObject){return function(object){return"function"==typeof object?object:freezeObject(object)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(object){return object}),Object.isSealed||(Object.isSealed=function(){return!1}),Object.isFrozen||(Object.isFrozen=function(){return!1}),Object.isExtensible||(Object.isExtensible=function(object){if(Object(object)===object)throw new TypeError;for(var name="";owns(object,name);)name+="?";object[name]=!0;var returnValue=owns(object,name);return delete object[name],returnValue}),!Object.keys){var hasDontEnumBug=!0,dontEnums=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],dontEnumsLength=dontEnums.length;for(var key in{toString:null})hasDontEnumBug=!1;Object.keys=function(object){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError("Object.keys called on a non-object");var keys=[];for(var name in object)owns(object,name)&&keys.push(name);if(hasDontEnumBug)for(var i=0,ii=dontEnumsLength;ii>i;i++){var dontEnum=dontEnums[i];owns(object,dontEnum)&&keys.push(dontEnum)}return keys}}Date.now||(Date.now=function(){return(new Date).getTime()});var ws="\t\\n\v\\f\\r   ᠎              \\u2028\\u2029\ufeff";if(!String.prototype.trim||ws.trim()){ws="["+ws+"]";var trimBeginRegexp=RegExp("^"+ws+ws+"*"),trimEndRegexp=RegExp(ws+ws+"*$");String.prototype.trim=function(){return(this+"").replace(trimBeginRegexp,"").replace(trimEndRegexp,"")}}var toObject=function(o){if(null==o)throw new TypeError("can\'t convert "+o+" to object");return Object(o)}});'},function(e,t){ace.define("ace/ext/searchbox",["require","exports","module","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/keyboard/hash_handler","ace/lib/keys"],function(e,t,i){"use strict";var n=e("../lib/dom"),r=e("../lib/lang"),o=e("../lib/event"),s=e("../keyboard/hash_handler").HashHandler,a=e("../lib/keys");n.importCssString("\t.ace_search {\tbackground-color: #ddd;\tborder: 1px solid #cbcbcb;\tborder-top: 0 none;\tmax-width: 325px;\toverflow: hidden;\tmargin: 0;\tpadding: 4px;\tpadding-right: 6px;\tpadding-bottom: 0;\tposition: absolute;\ttop: 0px;\tz-index: 99;\twhite-space: normal;\t}\t.ace_search.left {\tborder-left: 0 none;\tborder-radius: 0px 0px 5px 0px;\tleft: 0;\t}\t.ace_search.right {\tborder-radius: 0px 0px 0px 5px;\tborder-right: 0 none;\tright: 0;\t}\t.ace_search_form, .ace_replace_form {\tborder-radius: 3px;\tborder: 1px solid #cbcbcb;\tfloat: left;\tmargin-bottom: 4px;\toverflow: hidden;\t}\t.ace_search_form.ace_nomatch {\toutline: 1px solid red;\t}\t.ace_search_field {\tbackground-color: white;\tborder-right: 1px solid #cbcbcb;\tborder: 0 none;\t-webkit-box-sizing: border-box;\t-moz-box-sizing: border-box;\tbox-sizing: border-box;\tfloat: left;\theight: 22px;\toutline: 0;\tpadding: 0 7px;\twidth: 214px;\tmargin: 0;\t}\t.ace_searchbtn,\t.ace_replacebtn {\tbackground: #fff;\tborder: 0 none;\tborder-left: 1px solid #dcdcdc;\tcursor: pointer;\tfloat: left;\theight: 22px;\tmargin: 0;\tposition: relative;\t}\t.ace_searchbtn:last-child,\t.ace_replacebtn:last-child {\tborder-top-right-radius: 3px;\tborder-bottom-right-radius: 3px;\t}\t.ace_searchbtn:disabled {\tbackground: none;\tcursor: default;\t}\t.ace_searchbtn {\tbackground-position: 50% 50%;\tbackground-repeat: no-repeat;\twidth: 27px;\t}\t.ace_searchbtn.prev {\tbackground-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADFJREFUeNpiSU1NZUAC/6E0I0yACYskCpsJiySKIiY0SUZk40FyTEgCjGgKwTRAgAEAQJUIPCE+qfkAAAAASUVORK5CYII=); \t}\t.ace_searchbtn.next {\tbackground-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADRJREFUeNpiTE1NZQCC/0DMyIAKwGJMUAYDEo3M/s+EpvM/mkKwCQxYjIeLMaELoLMBAgwAU7UJObTKsvAAAAAASUVORK5CYII=); \t}\t.ace_searchbtn_close {\tbackground: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAcCAYAAABRVo5BAAAAZ0lEQVR42u2SUQrAMAhDvazn8OjZBilCkYVVxiis8H4CT0VrAJb4WHT3C5xU2a2IQZXJjiQIRMdkEoJ5Q2yMqpfDIo+XY4k6h+YXOyKqTIj5REaxloNAd0xiKmAtsTHqW8sR2W5f7gCu5nWFUpVjZwAAAABJRU5ErkJggg==) no-repeat 50% 0;\tborder-radius: 50%;\tborder: 0 none;\tcolor: #656565;\tcursor: pointer;\tfloat: right;\tfont: 16px/16px Arial;\theight: 14px;\tmargin: 5px 1px 9px 5px;\tpadding: 0;\ttext-align: center;\twidth: 14px;\t}\t.ace_searchbtn_close:hover {\tbackground-color: #656565;\tbackground-position: 50% 100%;\tcolor: white;\t}\t.ace_replacebtn.prev {\twidth: 54px\t}\t.ace_replacebtn.next {\twidth: 27px\t}\t.ace_button {\tmargin-left: 2px;\tcursor: pointer;\t-webkit-user-select: none;\t-moz-user-select: none;\t-o-user-select: none;\t-ms-user-select: none;\tuser-select: none;\toverflow: hidden;\topacity: 0.7;\tborder: 1px solid rgba(100,100,100,0.23);\tpadding: 1px;\t-moz-box-sizing: border-box;\tbox-sizing: border-box;\tcolor: black;\t}\t.ace_button:hover {\tbackground-color: #eee;\topacity:1;\t}\t.ace_button:active {\tbackground-color: #ddd;\t}\t.ace_button.checked {\tborder-color: #3399ff;\topacity:1;\t}\t.ace_search_options{\tmargin-bottom: 3px;\ttext-align: right;\t-webkit-user-select: none;\t-moz-user-select: none;\t-o-user-select: none;\t-ms-user-select: none;\tuser-select: none;\t}","ace_searchbox");var l='<div class="ace_search right">\t <button type="button" action="hide" class="ace_searchbtn_close"></button>\t <div class="ace_search_form">\t <input class="ace_search_field" placeholder="Search for" spellcheck="false"></input>\t <button type="button" action="findNext" class="ace_searchbtn next"></button>\t <button type="button" action="findPrev" class="ace_searchbtn prev"></button>\t <button type="button" action="findAll" class="ace_searchbtn" title="Alt-Enter">All</button>\t </div>\t <div class="ace_replace_form">\t <input class="ace_search_field" placeholder="Replace with" spellcheck="false"></input>\t <button type="button" action="replaceAndFindNext" class="ace_replacebtn">Replace</button>\t <button type="button" action="replaceAll" class="ace_replacebtn">All</button>\t </div>\t <div class="ace_search_options">\t <span action="toggleRegexpMode" class="ace_button" title="RegExp Search">.*</span>\t <span action="toggleCaseSensitive" class="ace_button" title="CaseSensitive Search">Aa</span>\t <span action="toggleWholeWords" class="ace_button" title="Whole Word Search">\\b</span>\t </div>\t</div>'.replace(/>\s+/g,">"),c=function(e,t,i){var r=n.createElement("div");r.innerHTML=l,this.element=r.firstChild,this.$init(),this.setEditor(e)};(function(){this.setEditor=function(e){e.searchBox=this,e.container.appendChild(this.element),this.editor=e},this.$initElements=function(e){this.searchBox=e.querySelector(".ace_search_form"),this.replaceBox=e.querySelector(".ace_replace_form"),this.searchOptions=e.querySelector(".ace_search_options"),this.regExpOption=e.querySelector("[action=toggleRegexpMode]"),this.caseSensitiveOption=e.querySelector("[action=toggleCaseSensitive]"),this.wholeWordOption=e.querySelector("[action=toggleWholeWords]"),this.searchInput=this.searchBox.querySelector(".ace_search_field"),this.replaceInput=this.replaceBox.querySelector(".ace_search_field")},this.$init=function(){var e=this.element;this.$initElements(e);var t=this;o.addListener(e,"mousedown",function(e){setTimeout(function(){t.activeInput.focus()},0),o.stopPropagation(e)}),o.addListener(e,"click",function(e){var i=(e.target||e.srcElement).getAttribute("action");i&&t[i]?t[i]():t.$searchBarKb.commands[i]&&t.$searchBarKb.commands[i].exec(t),o.stopPropagation(e)}),o.addCommandKeyListener(e,function(e,i,n){var r=a.keyCodeToString(n),s=t.$searchBarKb.findKeyCommand(i,r);s&&s.exec&&(s.exec(t),o.stopEvent(e))}),this.$onChange=r.delayedCall(function(){t.find(!1,!1)}),o.addListener(this.searchInput,"input",function(){t.$onChange.schedule(20)}),o.addListener(this.searchInput,"focus",function(){t.activeInput=t.searchInput,t.searchInput.value&&t.highlight()}),o.addListener(this.replaceInput,"focus",function(){t.activeInput=t.replaceInput,t.searchInput.value&&t.highlight()})},this.$closeSearchBarKb=new s([{bindKey:"Esc",name:"closeSearchBar",exec:function(e){e.searchBox.hide()}}]),this.$searchBarKb=new s,this.$searchBarKb.bindKeys({"Ctrl-f|Command-f":function(e){var t=e.isReplace=!e.isReplace;e.replaceBox.style.display=t?"":"none",e.searchInput.focus()},"Ctrl-H|Command-Option-F":function(e){e.replaceBox.style.display="",e.replaceInput.focus()},"Ctrl-G|Command-G":function(e){e.findNext()},"Ctrl-Shift-G|Command-Shift-G":function(e){e.findPrev()},esc:function(e){setTimeout(function(){e.hide()})},Return:function(e){e.activeInput==e.replaceInput&&e.replace(),e.findNext()},"Shift-Return":function(e){e.activeInput==e.replaceInput&&e.replace(),e.findPrev()},"Alt-Return":function(e){e.activeInput==e.replaceInput&&e.replaceAll(),e.findAll()},Tab:function(e){(e.activeInput==e.replaceInput?e.searchInput:e.replaceInput).focus()}}),this.$searchBarKb.addCommands([{name:"toggleRegexpMode",bindKey:{win:"Alt-R|Alt-/",mac:"Ctrl-Alt-R|Ctrl-Alt-/"},exec:function(e){e.regExpOption.checked=!e.regExpOption.checked,e.$syncOptions()}},{name:"toggleCaseSensitive",bindKey:{win:"Alt-C|Alt-I",mac:"Ctrl-Alt-R|Ctrl-Alt-I"},exec:function(e){e.caseSensitiveOption.checked=!e.caseSensitiveOption.checked,e.$syncOptions()}},{name:"toggleWholeWords",bindKey:{win:"Alt-B|Alt-W",mac:"Ctrl-Alt-B|Ctrl-Alt-W"},exec:function(e){e.wholeWordOption.checked=!e.wholeWordOption.checked,e.$syncOptions()}}]),this.$syncOptions=function(){n.setCssClass(this.regExpOption,"checked",this.regExpOption.checked),n.setCssClass(this.wholeWordOption,"checked",this.wholeWordOption.checked),n.setCssClass(this.caseSensitiveOption,"checked",this.caseSensitiveOption.checked),this.find(!1,!1)},this.highlight=function(e){this.editor.session.highlight(e||this.editor.$search.$options.re),this.editor.renderer.updateBackMarkers()},this.find=function(e,t,i){var r=!this.editor.find(this.searchInput.value,{skipCurrent:e,backwards:t,wrap:!0,regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked,preventScroll:i})&&this.searchInput.value;n.setCssClass(this.searchBox,"ace_nomatch",r),this.editor._emit("findSearchBox",{match:!r}),this.highlight()},this.findNext=function(){this.find(!0,!1)},this.findPrev=function(){this.find(!0,!0)},this.findAll=function(){var e=!this.editor.findAll(this.searchInput.value,{regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked})&&this.searchInput.value;n.setCssClass(this.searchBox,"ace_nomatch",e),this.editor._emit("findSearchBox",{match:!e}),this.highlight(),this.hide()},this.replace=function(){this.editor.getReadOnly()||this.editor.replace(this.replaceInput.value)},this.replaceAndFindNext=function(){this.editor.getReadOnly()||(this.editor.replace(this.replaceInput.value),this.findNext())},this.replaceAll=function(){this.editor.getReadOnly()||this.editor.replaceAll(this.replaceInput.value)},this.hide=function(){this.element.style.display="none",this.editor.keyBinding.removeKeyboardHandler(this.$closeSearchBarKb),this.editor.focus()},this.show=function(e,t){this.element.style.display="",this.replaceBox.style.display=t?"":"none",this.isReplace=t,e&&(this.searchInput.value=e),this.find(!1,!1,!0),this.searchInput.focus(),this.searchInput.select(),this.editor.keyBinding.addKeyboardHandler(this.$closeSearchBarKb)},this.isFocused=function(){var e=document.activeElement;return e==this.searchInput||e==this.replaceInput}}).call(c.prototype),t.SearchBox=c,t.Search=function(e,t){(e.searchBox||new c(e)).show(e.session.getTextRange(),t)}}),ace.acequire(["ace/ext/searchbox"],function(){})},function(e,t){ace.define("ace/theme/jsoneditor",["require","exports","module","ace/lib/dom"],function(e,t,i){t.isDark=!1,t.cssClass="ace-jsoneditor",t.cssText='.ace-jsoneditor .ace_gutter {\tbackground: #ebebeb;\tcolor: #333\t}\t\t.ace-jsoneditor.ace_editor {\tfont-family: droid sans mono, consolas, monospace, courier new, courier, sans-serif;\tline-height: 1.3;\t}\t.ace-jsoneditor .ace_print-margin {\twidth: 1px;\tbackground: #e8e8e8\t}\t.ace-jsoneditor .ace_scroller {\tbackground-color: #FFFFFF\t}\t.ace-jsoneditor .ace_text-layer {\tcolor: gray\t}\t.ace-jsoneditor .ace_variable {\tcolor: #1a1a1a\t}\t.ace-jsoneditor .ace_cursor {\tborder-left: 2px solid #000000\t}\t.ace-jsoneditor .ace_overwrite-cursors .ace_cursor {\tborder-left: 0px;\tborder-bottom: 1px solid #000000\t}\t.ace-jsoneditor .ace_marker-layer .ace_selection {\tbackground: lightgray\t}\t.ace-jsoneditor.ace_multiselect .ace_selection.ace_start {\tbox-shadow: 0 0 3px 0px #FFFFFF;\tborder-radius: 2px\t}\t.ace-jsoneditor .ace_marker-layer .ace_step {\tbackground: rgb(255, 255, 0)\t}\t.ace-jsoneditor .ace_marker-layer .ace_bracket {\tmargin: -1px 0 0 -1px;\tborder: 1px solid #BFBFBF\t}\t.ace-jsoneditor .ace_marker-layer .ace_active-line {\tbackground: #FFFBD1\t}\t.ace-jsoneditor .ace_gutter-active-line {\tbackground-color : #dcdcdc\t}\t.ace-jsoneditor .ace_marker-layer .ace_selected-word {\tborder: 1px solid lightgray\t}\t.ace-jsoneditor .ace_invisible {\tcolor: #BFBFBF\t}\t.ace-jsoneditor .ace_keyword,\t.ace-jsoneditor .ace_meta,\t.ace-jsoneditor .ace_support.ace_constant.ace_property-value {\tcolor: #AF956F\t}\t.ace-jsoneditor .ace_keyword.ace_operator {\tcolor: #484848\t}\t.ace-jsoneditor .ace_keyword.ace_other.ace_unit {\tcolor: #96DC5F\t}\t.ace-jsoneditor .ace_constant.ace_language {\tcolor: darkorange\t}\t.ace-jsoneditor .ace_constant.ace_numeric {\tcolor: red\t}\t.ace-jsoneditor .ace_constant.ace_character.ace_entity {\tcolor: #BF78CC\t}\t.ace-jsoneditor .ace_invalid {\tcolor: #FFFFFF;\tbackground-color: #FF002A;\t}\t.ace-jsoneditor .ace_fold {\tbackground-color: #AF956F;\tborder-color: #000000\t}\t.ace-jsoneditor .ace_storage,\t.ace-jsoneditor .ace_support.ace_class,\t.ace-jsoneditor .ace_support.ace_function,\t.ace-jsoneditor .ace_support.ace_other,\t.ace-jsoneditor .ace_support.ace_type {\tcolor: #C52727\t}\t.ace-jsoneditor .ace_string {\tcolor: green\t}\t.ace-jsoneditor .ace_comment {\tcolor: #BCC8BA\t}\t.ace-jsoneditor .ace_entity.ace_name.ace_tag,\t.ace-jsoneditor .ace_entity.ace_other.ace_attribute-name {\tcolor: #606060\t}\t.ace-jsoneditor .ace_markup.ace_underline {\ttext-decoration: underline\t}\t.ace-jsoneditor .ace_indent-guide {\tbackground: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y\t}',e("../lib/dom").importCssString(t.cssText,t.cssClass)})}])})},LD0F:function(e,t,i){"use strict";var n=i("copg"),r=i("fCtq"),o=i("MhL/"),s=i("QGqC"),a=i("W6+j"),l=i("+GGc"),c=i("/fmy"),h=i("rMDH");r(r.S+r.F*!i("FwU0")(function(e){Array.from(e)}),"Array",{from:function(e){var t,i,r,u,d=o(e),f="function"==typeof this?this:Array,p=arguments.length,m=p>1?arguments[1]:void 0,g=void 0!==m,v=0,y=h(d);if(g&&(m=n(m,p>2?arguments[2]:void 0,2)),void 0==y||f==Array&&a(y))for(i=new f(t=l(d.length));t>v;v++)c(i,v,g?m(d[v],v):d[v]);else for(u=y.call(d),i=new f;!(r=u.next()).done;v++)c(i,v,g?s(u,m,[r.value,v],!0):r.value);return i.length=v,i}})},LGhb:function(e,t,i){e.exports={default:i("z/Td"),__esModule:!0}},atyl:function(e,t,i){"use strict";i("3WK3");var n=i("Cofy"),r=i.n(n),o={props:{value:[String,Number,Object,Array],showBtns:[Boolean],expandedOnStart:{type:Boolean,default:!1},mode:{type:String,default:"tree"},modes:{type:Array,default:function(){return["tree","code","form","text","view"]}},lang:{type:String,default:"en"}},watch:{value:{immediate:!0,async handler(e){this.internalChange||(await this.setEditor(e),this.error=!1,this.expandAll())},deep:!0}},data(){return{editor:null,error:!1,json:this.value,internalChange:!1,expandedModes:["tree","view","form"],locale:{it:{save:"SALVA"},en:{save:"SAVE"},zh:{save:"保存"}}}},mounted(){let e=this,t={mode:this.mode,modes:this.modes,onChange(){try{let t=e.editor.get();e.json=t,e.error=!1,e.$emit("json-change",t),e.internalChange=!0,e.$emit("input",t),e.$nextTick(function(){e.internalChange=!1})}catch(t){e.error=!0,e.$emit("has-error",t)}},onModeChange(){e.expandAll()}};this.editor=new r.a(this.$el.querySelector(".jsoneditor-vue"),t,this.json)},methods:{expandAll(){this.expandedOnStart&&this.expandedModes.includes(this.editor.getMode())&&this.editor.expandAll()},onSave(){this.$emit("json-save",this.json)},async setEditor(e){this.editor&&this.editor.set(e)}}},s=(i("mGGr"),i("ZrdR")),a=Object(s.a)(o,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"jsoneditor-vue"}),e._v(" "),!1!==e.showBtns?i("div",{staticClass:"jsoneditor-btns"},[i("button",{staticClass:"json-save-btn",attrs:{type:"button",disabled:e.error},on:{click:function(t){return e.onSave()}}},[e._v(e._s(e.locale[e.lang].save))])]):e._e()])},[],!1,null,"6a8ba07e",null);a.options.__file="vue-json-editor.vue";t.a=a.exports},mGGr:function(e,t,i){"use strict";var n=i("nqXe");i.n(n).a},nqXe:function(e,t,i){},oMrk:function(e,t,i){},"opU+":function(e,t,i){!function(e){"use strict";e.defineMode("javascript",function(t,i){var n,r,o=t.indentUnit,s=i.statementIndent,a=i.jsonld,l=i.json||a,c=!1!==i.trackScope,h=i.typescript,u=i.wordCharacters||/[\w$\xa1-\uffff]/,d=function(){function e(e){return{type:e,style:"keyword"}}var t=e("keyword a"),i=e("keyword b"),n=e("keyword c"),r=e("keyword d"),o=e("operator"),s={type:"atom",style:"atom"};return{if:e("if"),while:t,with:t,else:i,do:i,try:i,finally:i,return:r,break:r,continue:r,new:e("new"),delete:n,void:n,throw:n,debugger:e("debugger"),var:e("var"),const:e("var"),let:e("var"),function:e("function"),catch:e("catch"),for:e("for"),switch:e("switch"),case:e("case"),default:e("default"),in:o,typeof:o,instanceof:o,true:s,false:s,null:s,undefined:s,NaN:s,Infinity:s,this:e("this"),class:e("class"),super:e("atom"),yield:n,export:e("export"),import:e("import"),extends:n,await:n}}(),f=/[+\-*&%=<>!?|~^@]/,p=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function m(e,t,i){return n=e,r=i,t}function g(e,t){var i=e.next();if('"'==i||"'"==i)return t.tokenize=function(e){return function(t,i){var n,r=!1;if(a&&"@"==t.peek()&&t.match(p))return i.tokenize=g,m("jsonld-keyword","meta");for(;null!=(n=t.next())&&(n!=e||r);)r=!r&&"\\"==n;return r||(i.tokenize=g),m("string","string")}}(i),t.tokenize(e,t);if("."==i&&e.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return m("number","number");if("."==i&&e.match(".."))return m("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(i))return m(i);if("="==i&&e.eat(">"))return m("=>","operator");if("0"==i&&e.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return m("number","number");if(/\d/.test(i))return e.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),m("number","number");if("/"==i)return e.eat("*")?(t.tokenize=v,v(e,t)):e.eat("/")?(e.skipToEnd(),m("comment","comment")):Ze(e,t,1)?(function(e){for(var t,i=!1,n=!1;null!=(t=e.next());){if(!i){if("/"==t&&!n)return;"["==t?n=!0:n&&"]"==t&&(n=!1)}i=!i&&"\\"==t}}(e),e.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),m("regexp","string-2")):(e.eat("="),m("operator","operator",e.current()));if("`"==i)return t.tokenize=y,y(e,t);if("#"==i&&"!"==e.peek())return e.skipToEnd(),m("meta","meta");if("#"==i&&e.eatWhile(u))return m("variable","property");if("<"==i&&e.match("!--")||"-"==i&&e.match("->")&&!/\S/.test(e.string.slice(0,e.start)))return e.skipToEnd(),m("comment","comment");if(f.test(i))return">"==i&&t.lexical&&">"==t.lexical.type||(e.eat("=")?"!"!=i&&"="!=i||e.eat("="):/[<>*+\-|&?]/.test(i)&&(e.eat(i),">"==i&&e.eat(i))),"?"==i&&e.eat(".")?m("."):m("operator","operator",e.current());if(u.test(i)){e.eatWhile(u);var n=e.current();if("."!=t.lastType){if(d.propertyIsEnumerable(n)){var r=d[n];return m(r.type,r.style,n)}if("async"==n&&e.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return m("async","keyword",n)}return m("variable","variable",n)}}function v(e,t){for(var i,n=!1;i=e.next();){if("/"==i&&n){t.tokenize=g;break}n="*"==i}return m("comment","comment")}function y(e,t){for(var i,n=!1;null!=(i=e.next());){if(!n&&("`"==i||"$"==i&&e.eat("{"))){t.tokenize=g;break}n=!n&&"\\"==i}return m("quasi","string-2",e.current())}var w="([{}])";function b(e,t){t.fatArrowAt&&(t.fatArrowAt=null);var i=e.string.indexOf("=>",e.start);if(!(i<0)){if(h){var n=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(e.string.slice(e.start,i));n&&(i=n.index)}for(var r=0,o=!1,s=i-1;s>=0;--s){var a=e.string.charAt(s),l=w.indexOf(a);if(l>=0&&l<3){if(!r){++s;break}if(0==--r){"("==a&&(o=!0);break}}else if(l>=3&&l<6)++r;else if(u.test(a))o=!0;else if(/["'\/`]/.test(a))for(;;--s){if(0==s)return;var c=e.string.charAt(s-1);if(c==a&&"\\"!=e.string.charAt(s-2)){s--;break}}else if(o&&!r){++s;break}}o&&!r&&(t.fatArrowAt=s)}}var C={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function A(e,t,i,n,r,o){this.indented=e,this.column=t,this.type=i,this.prev=r,this.info=o,null!=n&&(this.align=n)}function E(e,t){if(!c)return!1;for(var i=e.localVars;i;i=i.next)if(i.name==t)return!0;for(var n=e.context;n;n=n.prev)for(var i=n.vars;i;i=i.next)if(i.name==t)return!0}function x(e,t,i,n,r){var o=e.cc;for(F.state=e,F.stream=r,F.marked=null,F.cc=o,F.style=t,e.lexical.hasOwnProperty("align")||(e.lexical.align=!0);;){var s=o.length?o.pop():l?H:j;if(s(i,n)){for(;o.length&&o[o.length-1].lex;)o.pop()();return F.marked?F.marked:"variable"==i&&E(e,n)?"variable-2":t}}}var F={state:null,column:null,marked:null,cc:null};function S(){for(var e=arguments.length-1;e>=0;e--)F.cc.push(arguments[e])}function k(){return S.apply(null,arguments),!0}function _(e,t){for(var i=t;i;i=i.next)if(i.name==e)return!0;return!1}function D(e){var t=F.state;if(F.marked="def",c){if(t.context)if("var"==t.lexical.info&&t.context&&t.context.block){var n=function e(t,i){if(i){if(i.block){var n=e(t,i.prev);return n?n==i.prev?i:new L(n,i.vars,!0):null}return _(t,i.vars)?i:new L(i.prev,new B(t,i.vars),!1)}return null}(e,t.context);if(null!=n)return void(t.context=n)}else if(!_(e,t.localVars))return void(t.localVars=new B(e,t.localVars));i.globalVars&&!_(e,t.globalVars)&&(t.globalVars=new B(e,t.globalVars))}}function $(e){return"public"==e||"private"==e||"protected"==e||"abstract"==e||"readonly"==e}function L(e,t,i){this.prev=e,this.vars=t,this.block=i}function B(e,t){this.name=e,this.next=t}var R=new B("this",new B("arguments",null));function T(){F.state.context=new L(F.state.context,F.state.localVars,!1),F.state.localVars=R}function M(){F.state.context=new L(F.state.context,F.state.localVars,!0),F.state.localVars=null}function O(){F.state.localVars=F.state.context.vars,F.state.context=F.state.context.prev}function P(e,t){var i=function(){var i=F.state,n=i.indented;if("stat"==i.lexical.type)n=i.lexical.indented;else for(var r=i.lexical;r&&")"==r.type&&r.align;r=r.prev)n=r.indented;i.lexical=new A(n,F.stream.column(),e,null,i.lexical,t)};return i.lex=!0,i}function N(){var e=F.state;e.lexical.prev&&(")"==e.lexical.type&&(e.indented=e.lexical.indented),e.lexical=e.lexical.prev)}function I(e){return function t(i){return i==e?k():";"==e||"}"==i||")"==i||"]"==i?S():k(t)}}function j(e,t){return"var"==e?k(P("vardef",t),xe,I(";"),N):"keyword a"==e?k(P("form"),V,j,N):"keyword b"==e?k(P("form"),j,N):"keyword d"==e?F.stream.match(/^\s*$/,!1)?k():k(P("stat"),q,I(";"),N):"debugger"==e?k(I(";")):"{"==e?k(P("}"),M,le,N,O):";"==e?k():"if"==e?("else"==F.state.lexical.info&&F.state.cc[F.state.cc.length-1]==N&&F.state.cc.pop()(),k(P("form"),V,j,N,$e)):"function"==e?k(Te):"for"==e?k(P("form"),M,Le,j,O,N):"class"==e||h&&"interface"==t?(F.marked="keyword",k(P("form","class"==e?e:t),Ie,N)):"variable"==e?h&&"declare"==t?(F.marked="keyword",k(j)):h&&("module"==t||"enum"==t||"type"==t)&&F.stream.match(/^\s*\w/,!1)?(F.marked="keyword","enum"==t?k(Xe):"type"==t?k(Oe,I("operator"),fe,I(";")):k(P("form"),Fe,I("{"),P("}"),le,N,N)):h&&"namespace"==t?(F.marked="keyword",k(P("form"),H,j,N)):h&&"abstract"==t?(F.marked="keyword",k(j)):k(P("stat"),te):"switch"==e?k(P("form"),V,I("{"),P("}","switch"),M,le,N,N,O):"case"==e?k(H,I(":")):"default"==e?k(I(":")):"catch"==e?k(P("form"),T,W,j,N,O):"export"==e?k(P("stat"),ze,N):"import"==e?k(P("stat"),Ue,N):"async"==e?k(j):"@"==t?k(H,j):S(P("stat"),H,I(";"),N)}function W(e){if("("==e)return k(Pe,I(")"))}function H(e,t){return U(e,t,!1)}function z(e,t){return U(e,t,!0)}function V(e){return"("!=e?S():k(P(")"),q,I(")"),N)}function U(e,t,i){if(F.state.fatArrowAt==F.stream.start){var n=i?J:X;if("("==e)return k(T,P(")"),se(Pe,")"),N,I("=>"),n,O);if("variable"==e)return S(T,Fe,I("=>"),n,O)}var r=i?G:K;return C.hasOwnProperty(e)?k(r):"function"==e?k(Te,r):"class"==e||h&&"interface"==t?(F.marked="keyword",k(P("form"),Ne,N)):"keyword c"==e||"async"==e?k(i?z:H):"("==e?k(P(")"),q,I(")"),N,r):"operator"==e||"spread"==e?k(i?z:H):"["==e?k(P("]"),Qe,N,r):"{"==e?ae(ne,"}",null,r):"quasi"==e?S(Y,r):"new"==e?k(function(e){return function(t){return"."==t?k(e?ee:Z):"variable"==t&&h?k(Ce,e?G:K):S(e?z:H)}}(i)):k()}function q(e){return e.match(/[;\}\)\],]/)?S():S(H)}function K(e,t){return","==e?k(q):G(e,t,!1)}function G(e,t,i){var n=0==i?K:G,r=0==i?H:z;return"=>"==e?k(T,i?J:X,O):"operator"==e?/\+\+|--/.test(t)||h&&"!"==t?k(n):h&&"<"==t&&F.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?k(P(">"),se(fe,">"),N,n):"?"==t?k(H,I(":"),r):k(r):"quasi"==e?S(Y,n):";"!=e?"("==e?ae(z,")","call",n):"."==e?k(ie,n):"["==e?k(P("]"),q,I("]"),N,n):h&&"as"==t?(F.marked="keyword",k(fe,n)):"regexp"==e?(F.state.lastType=F.marked="operator",F.stream.backUp(F.stream.pos-F.stream.start-1),k(r)):void 0:void 0}function Y(e,t){return"quasi"!=e?S():"${"!=t.slice(t.length-2)?k(Y):k(q,Q)}function Q(e){if("}"==e)return F.marked="string-2",F.state.tokenize=y,k(Y)}function X(e){return b(F.stream,F.state),S("{"==e?j:H)}function J(e){return b(F.stream,F.state),S("{"==e?j:z)}function Z(e,t){if("target"==t)return F.marked="keyword",k(K)}function ee(e,t){if("target"==t)return F.marked="keyword",k(G)}function te(e){return":"==e?k(N,j):S(K,I(";"),N)}function ie(e){if("variable"==e)return F.marked="property",k()}function ne(e,t){if("async"==e)return F.marked="property",k(ne);if("variable"==e||"keyword"==F.style){return F.marked="property","get"==t||"set"==t?k(re):(h&&F.state.fatArrowAt==F.stream.start&&(i=F.stream.match(/^\s*:\s*/,!1))&&(F.state.fatArrowAt=F.stream.pos+i[0].length),k(oe));var i}else{if("number"==e||"string"==e)return F.marked=a?"property":F.style+" property",k(oe);if("jsonld-keyword"==e)return k(oe);if(h&&$(t))return F.marked="keyword",k(ne);if("["==e)return k(H,ce,I("]"),oe);if("spread"==e)return k(z,oe);if("*"==t)return F.marked="keyword",k(ne);if(":"==e)return S(oe)}}function re(e){return"variable"!=e?S(oe):(F.marked="property",k(Te))}function oe(e){return":"==e?k(z):"("==e?S(Te):void 0}function se(e,t,i){function n(r,o){if(i?i.indexOf(r)>-1:","==r){var s=F.state.lexical;return"call"==s.info&&(s.pos=(s.pos||0)+1),k(function(i,n){return i==t||n==t?S():S(e)},n)}return r==t||o==t?k():i&&i.indexOf(";")>-1?S(e):k(I(t))}return function(i,r){return i==t||r==t?k():S(e,n)}}function ae(e,t,i){for(var n=3;n<arguments.length;n++)F.cc.push(arguments[n]);return k(P(t,i),se(e,t),N)}function le(e){return"}"==e?k():S(j,le)}function ce(e,t){if(h){if(":"==e)return k(fe);if("?"==t)return k(ce)}}function he(e,t){if(h&&(":"==e||"in"==t))return k(fe)}function ue(e){if(h&&":"==e)return F.stream.match(/^\s*\w+\s+is\b/,!1)?k(H,de,fe):k(fe)}function de(e,t){if("is"==t)return F.marked="keyword",k()}function fe(e,t){return"keyof"==t||"typeof"==t||"infer"==t||"readonly"==t?(F.marked="keyword",k("typeof"==t?z:fe)):"variable"==e||"void"==t?(F.marked="type",k(be)):"|"==t||"&"==t?k(fe):"string"==e||"number"==e||"atom"==e?k(be):"["==e?k(P("]"),se(fe,"]",","),N,be):"{"==e?k(P("}"),me,N,be):"("==e?k(se(we,")"),pe,be):"<"==e?k(se(fe,">"),fe):"quasi"==e?S(ve,be):void 0}function pe(e){if("=>"==e)return k(fe)}function me(e){return e.match(/[\}\)\]]/)?k():","==e||";"==e?k(me):S(ge,me)}function ge(e,t){return"variable"==e||"keyword"==F.style?(F.marked="property",k(ge)):"?"==t||"number"==e||"string"==e?k(ge):":"==e?k(fe):"["==e?k(I("variable"),he,I("]"),ge):"("==e?S(Me,ge):e.match(/[;\}\)\],]/)?void 0:k()}function ve(e,t){return"quasi"!=e?S():"${"!=t.slice(t.length-2)?k(ve):k(fe,ye)}function ye(e){if("}"==e)return F.marked="string-2",F.state.tokenize=y,k(ve)}function we(e,t){return"variable"==e&&F.stream.match(/^\s*[?:]/,!1)||"?"==t?k(we):":"==e?k(fe):"spread"==e?k(we):S(fe)}function be(e,t){return"<"==t?k(P(">"),se(fe,">"),N,be):"|"==t||"."==e||"&"==t?k(fe):"["==e?k(fe,I("]"),be):"extends"==t||"implements"==t?(F.marked="keyword",k(fe)):"?"==t?k(fe,I(":"),fe):void 0}function Ce(e,t){if("<"==t)return k(P(">"),se(fe,">"),N,be)}function Ae(){return S(fe,Ee)}function Ee(e,t){if("="==t)return k(fe)}function xe(e,t){return"enum"==t?(F.marked="keyword",k(Xe)):S(Fe,ce,_e,De)}function Fe(e,t){return h&&$(t)?(F.marked="keyword",k(Fe)):"variable"==e?(D(t),k()):"spread"==e?k(Fe):"["==e?ae(ke,"]"):"{"==e?ae(Se,"}"):void 0}function Se(e,t){return"variable"!=e||F.stream.match(/^\s*:/,!1)?("variable"==e&&(F.marked="property"),"spread"==e?k(Fe):"}"==e?S():"["==e?k(H,I("]"),I(":"),Se):k(I(":"),Fe,_e)):(D(t),k(_e))}function ke(){return S(Fe,_e)}function _e(e,t){if("="==t)return k(z)}function De(e){if(","==e)return k(xe)}function $e(e,t){if("keyword b"==e&&"else"==t)return k(P("form","else"),j,N)}function Le(e,t){return"await"==t?k(Le):"("==e?k(P(")"),Be,N):void 0}function Be(e){return"var"==e?k(xe,Re):"variable"==e?k(Re):S(Re)}function Re(e,t){return")"==e?k():";"==e?k(Re):"in"==t||"of"==t?(F.marked="keyword",k(H,Re)):S(H,Re)}function Te(e,t){return"*"==t?(F.marked="keyword",k(Te)):"variable"==e?(D(t),k(Te)):"("==e?k(T,P(")"),se(Pe,")"),N,ue,j,O):h&&"<"==t?k(P(">"),se(Ae,">"),N,Te):void 0}function Me(e,t){return"*"==t?(F.marked="keyword",k(Me)):"variable"==e?(D(t),k(Me)):"("==e?k(T,P(")"),se(Pe,")"),N,ue,O):h&&"<"==t?k(P(">"),se(Ae,">"),N,Me):void 0}function Oe(e,t){return"keyword"==e||"variable"==e?(F.marked="type",k(Oe)):"<"==t?k(P(">"),se(Ae,">"),N):void 0}function Pe(e,t){return"@"==t&&k(H,Pe),"spread"==e?k(Pe):h&&$(t)?(F.marked="keyword",k(Pe)):h&&"this"==e?k(ce,_e):S(Fe,ce,_e)}function Ne(e,t){return"variable"==e?Ie(e,t):je(e,t)}function Ie(e,t){if("variable"==e)return D(t),k(je)}function je(e,t){return"<"==t?k(P(">"),se(Ae,">"),N,je):"extends"==t||"implements"==t||h&&","==e?("implements"==t&&(F.marked="keyword"),k(h?fe:H,je)):"{"==e?k(P("}"),We,N):void 0}function We(e,t){return"async"==e||"variable"==e&&("static"==t||"get"==t||"set"==t||h&&$(t))&&F.stream.match(/^\s+[\w$\xa1-\uffff]/,!1)?(F.marked="keyword",k(We)):"variable"==e||"keyword"==F.style?(F.marked="property",k(He,We)):"number"==e||"string"==e?k(He,We):"["==e?k(H,ce,I("]"),He,We):"*"==t?(F.marked="keyword",k(We)):h&&"("==e?S(Me,We):";"==e||","==e?k(We):"}"==e?k():"@"==t?k(H,We):void 0}function He(e,t){if("!"==t)return k(He);if("?"==t)return k(He);if(":"==e)return k(fe,_e);if("="==t)return k(z);var i=F.state.lexical.prev,n=i&&"interface"==i.info;return S(n?Me:Te)}function ze(e,t){return"*"==t?(F.marked="keyword",k(Ye,I(";"))):"default"==t?(F.marked="keyword",k(H,I(";"))):"{"==e?k(se(Ve,"}"),Ye,I(";")):S(j)}function Ve(e,t){return"as"==t?(F.marked="keyword",k(I("variable"))):"variable"==e?S(z,Ve):void 0}function Ue(e){return"string"==e?k():"("==e?S(H):"."==e?S(K):S(qe,Ke,Ye)}function qe(e,t){return"{"==e?ae(qe,"}"):("variable"==e&&D(t),"*"==t&&(F.marked="keyword"),k(Ge))}function Ke(e){if(","==e)return k(qe,Ke)}function Ge(e,t){if("as"==t)return F.marked="keyword",k(qe)}function Ye(e,t){if("from"==t)return F.marked="keyword",k(H)}function Qe(e){return"]"==e?k():S(se(z,"]"))}function Xe(){return S(P("form"),Fe,I("{"),P("}"),se(Je,"}"),N,N)}function Je(){return S(Fe,_e)}function Ze(e,t,i){return t.tokenize==g&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(t.lastType)||"quasi"==t.lastType&&/\{\s*$/.test(e.string.slice(0,e.pos-(i||0)))}return T.lex=M.lex=!0,O.lex=!0,N.lex=!0,{startState:function(e){var t={tokenize:g,lastType:"sof",cc:[],lexical:new A((e||0)-o,0,"block",!1),localVars:i.localVars,context:i.localVars&&new L(null,null,!1),indented:e||0};return i.globalVars&&"object"==typeof i.globalVars&&(t.globalVars=i.globalVars),t},token:function(e,t){if(e.sol()&&(t.lexical.hasOwnProperty("align")||(t.lexical.align=!1),t.indented=e.indentation(),b(e,t)),t.tokenize!=v&&e.eatSpace())return null;var i=t.tokenize(e,t);return"comment"==n?i:(t.lastType="operator"!=n||"++"!=r&&"--"!=r?n:"incdec",x(t,i,n,r,e))},indent:function(t,n){if(t.tokenize==v||t.tokenize==y)return e.Pass;if(t.tokenize!=g)return 0;var r,a=n&&n.charAt(0),l=t.lexical;if(!/^\s*else\b/.test(n))for(var c=t.cc.length-1;c>=0;--c){var h=t.cc[c];if(h==N)l=l.prev;else if(h!=$e&&h!=O)break}for(;("stat"==l.type||"form"==l.type)&&("}"==a||(r=t.cc[t.cc.length-1])&&(r==K||r==G)&&!/^[,\.=+\-*:?[\(]/.test(n));)l=l.prev;s&&")"==l.type&&"stat"==l.prev.type&&(l=l.prev);var u=l.type,d=a==u;return"vardef"==u?l.indented+("operator"==t.lastType||","==t.lastType?l.info.length+1:0):"form"==u&&"{"==a?l.indented:"form"==u?l.indented+o:"stat"==u?l.indented+(function(e,t){return"operator"==e.lastType||","==e.lastType||f.test(t.charAt(0))||/[,.]/.test(t.charAt(0))}(t,n)?s||o:0):"switch"!=l.info||d||0==i.doubleIndentSwitch?l.align?l.column+(d?0:1):l.indented+(d?0:o):l.indented+(/^(?:case|default)\b/.test(n)?o:2*o)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:l?null:"/*",blockCommentEnd:l?null:"*/",blockCommentContinue:l?null:" * ",lineComment:l?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:l?"json":"javascript",jsonldMode:a,jsonMode:l,expressionAllowed:Ze,skipExpression:function(t){x(t,"atom","atom","true",new e.StringStream("",2,null))}}}),e.registerHelper("wordChars","javascript",/[\w$]/),e.defineMIME("text/javascript","javascript"),e.defineMIME("text/ecmascript","javascript"),e.defineMIME("application/javascript","javascript"),e.defineMIME("application/x-javascript","javascript"),e.defineMIME("application/ecmascript","javascript"),e.defineMIME("application/json",{name:"javascript",json:!0}),e.defineMIME("application/x-json",{name:"javascript",json:!0}),e.defineMIME("application/manifest+json",{name:"javascript",json:!0}),e.defineMIME("application/ld+json",{name:"javascript",jsonld:!0}),e.defineMIME("text/typescript",{name:"javascript",typescript:!0}),e.defineMIME("application/typescript",{name:"javascript",typescript:!0})}(i("xhvv"))},unDg:function(e,t,i){"use strict";t.__esModule=!0;var n=function(e){return e&&e.__esModule?e:{default:e}}(i("LGhb"));t.default=function(e){if(Array.isArray(e)){for(var t=0,i=Array(e.length);t<e.length;t++)i[t]=e[t];return i}return(0,n.default)(e)}},xhvv:function(e,t,i){e.exports=function(){"use strict";var e=navigator.userAgent,t=navigator.platform,i=/gecko\/\d/i.test(e),n=/MSIE \d/.test(e),r=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(e),o=/Edge\/(\d+)/.exec(e),s=n||r||o,a=s&&(n?document.documentMode||6:+(o||r)[1]),l=!o&&/WebKit\//.test(e),c=l&&/Qt\/\d+\.\d+/.test(e),h=!o&&/Chrome\//.test(e),u=/Opera\//.test(e),d=/Apple Computer/.test(navigator.vendor),f=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(e),p=/PhantomJS/.test(e),m=d&&(/Mobile\/\w+/.test(e)||navigator.maxTouchPoints>2),g=/Android/.test(e),v=m||g||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(e),y=m||/Mac/.test(t),w=/\bCrOS\b/.test(e),b=/win/i.test(t),C=u&&e.match(/Version\/(\d*\.\d*)/);C&&(C=Number(C[1])),C&&C>=15&&(u=!1,l=!0);var A=y&&(c||u&&(null==C||C<12.11)),E=i||s&&a>=9;function x(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var F,S=function(e,t){var i=e.className,n=x(t).exec(i);if(n){var r=i.slice(n.index+n[0].length);e.className=i.slice(0,n.index)+(r?n[1]+r:"")}};function k(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function _(e,t){return k(e).appendChild(t)}function D(e,t,i,n){var r=document.createElement(e);if(i&&(r.className=i),n&&(r.style.cssText=n),"string"==typeof t)r.appendChild(document.createTextNode(t));else if(t)for(var o=0;o<t.length;++o)r.appendChild(t[o]);return r}function $(e,t,i,n){var r=D(e,t,i,n);return r.setAttribute("role","presentation"),r}function L(e,t){if(3==t.nodeType&&(t=t.parentNode),e.contains)return e.contains(t);do{if(11==t.nodeType&&(t=t.host),t==e)return!0}while(t=t.parentNode)}function B(){var e;try{e=document.activeElement}catch(t){e=document.body||null}for(;e&&e.shadowRoot&&e.shadowRoot.activeElement;)e=e.shadowRoot.activeElement;return e}function R(e,t){var i=e.className;x(t).test(i)||(e.className+=(i?" ":"")+t)}function T(e,t){for(var i=e.split(" "),n=0;n<i.length;n++)i[n]&&!x(i[n]).test(t)&&(t+=" "+i[n]);return t}F=document.createRange?function(e,t,i,n){var r=document.createRange();return r.setEnd(n||e,i),r.setStart(e,t),r}:function(e,t,i){var n=document.body.createTextRange();try{n.moveToElementText(e.parentNode)}catch(e){return n}return n.collapse(!0),n.moveEnd("character",i),n.moveStart("character",t),n};var M=function(e){e.select()};function O(e){var t=Array.prototype.slice.call(arguments,1);return function(){return e.apply(null,t)}}function P(e,t,i){for(var n in t||(t={}),e)!e.hasOwnProperty(n)||!1===i&&t.hasOwnProperty(n)||(t[n]=e[n]);return t}function N(e,t,i,n,r){null==t&&-1==(t=e.search(/[^\s\u00a0]/))&&(t=e.length);for(var o=n||0,s=r||0;;){var a=e.indexOf("\t",o);if(a<0||a>=t)return s+(t-o);s+=a-o,s+=i-s%i,o=a+1}}m?M=function(e){e.selectionStart=0,e.selectionEnd=e.value.length}:s&&(M=function(e){try{e.select()}catch(e){}});var I=function(){this.id=null,this.f=null,this.time=0,this.handler=O(this.onTimeout,this)};function j(e,t){for(var i=0;i<e.length;++i)if(e[i]==t)return i;return-1}I.prototype.onTimeout=function(e){e.id=0,e.time<=+new Date?e.f():setTimeout(e.handler,e.time-+new Date)},I.prototype.set=function(e,t){this.f=t;var i=+new Date+e;(!this.id||i<this.time)&&(clearTimeout(this.id),this.id=setTimeout(this.handler,e),this.time=i)};var W=50,H={toString:function(){return"CodeMirror.Pass"}},z={scroll:!1},V={origin:"*mouse"},U={origin:"+move"};function q(e,t,i){for(var n=0,r=0;;){var o=e.indexOf("\t",n);-1==o&&(o=e.length);var s=o-n;if(o==e.length||r+s>=t)return n+Math.min(s,t-r);if(r+=o-n,n=o+1,(r+=i-r%i)>=t)return n}}var K=[""];function G(e){for(;K.length<=e;)K.push(Y(K)+" ");return K[e]}function Y(e){return e[e.length-1]}function Q(e,t){for(var i=[],n=0;n<e.length;n++)i[n]=t(e[n],n);return i}function X(){}function J(e,t){var i;return Object.create?i=Object.create(e):(X.prototype=e,i=new X),t&&P(t,i),i}var Z=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;function ee(e){return/\w/.test(e)||e>"€"&&(e.toUpperCase()!=e.toLowerCase()||Z.test(e))}function te(e,t){return t?!!(t.source.indexOf("\\w")>-1&&ee(e))||t.test(e):ee(e)}function ie(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var ne=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function re(e){return e.charCodeAt(0)>=768&&ne.test(e)}function oe(e,t,i){for(;(i<0?t>0:t<e.length)&&re(e.charAt(t));)t+=i;return t}function se(e,t,i){for(var n=t>i?-1:1;;){if(t==i)return t;var r=(t+i)/2,o=n<0?Math.ceil(r):Math.floor(r);if(o==t)return e(o)?t:i;e(o)?i=o:t=o+n}}var ae=null;function le(e,t,i){var n;ae=null;for(var r=0;r<e.length;++r){var o=e[r];if(o.from<t&&o.to>t)return r;o.to==t&&(o.from!=o.to&&"before"==i?n=r:ae=r),o.from==t&&(o.from!=o.to&&"before"!=i?n=r:ae=r)}return null!=n?n:ae}var ce=function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function i(i){return i<=247?e.charAt(i):1424<=i&&i<=1524?"R":1536<=i&&i<=1785?t.charAt(i-1536):1774<=i&&i<=2220?"r":8192<=i&&i<=8203?"w":8204==i?"b":"L"}var n=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,r=/[stwN]/,o=/[LRr]/,s=/[Lb1n]/,a=/[1n]/;function l(e,t,i){this.level=e,this.from=t,this.to=i}return function(e,t){var c="ltr"==t?"L":"R";if(0==e.length||"ltr"==t&&!n.test(e))return!1;for(var h=e.length,u=[],d=0;d<h;++d)u.push(i(e.charCodeAt(d)));for(var f=0,p=c;f<h;++f){var m=u[f];"m"==m?u[f]=p:p=m}for(var g=0,v=c;g<h;++g){var y=u[g];"1"==y&&"r"==v?u[g]="n":o.test(y)&&(v=y,"r"==y&&(u[g]="R"))}for(var w=1,b=u[0];w<h-1;++w){var C=u[w];"+"==C&&"1"==b&&"1"==u[w+1]?u[w]="1":","!=C||b!=u[w+1]||"1"!=b&&"n"!=b||(u[w]=b),b=C}for(var A=0;A<h;++A){var E=u[A];if(","==E)u[A]="N";else if("%"==E){var x=void 0;for(x=A+1;x<h&&"%"==u[x];++x);for(var F=A&&"!"==u[A-1]||x<h&&"1"==u[x]?"1":"N",S=A;S<x;++S)u[S]=F;A=x-1}}for(var k=0,_=c;k<h;++k){var D=u[k];"L"==_&&"1"==D?u[k]="L":o.test(D)&&(_=D)}for(var $=0;$<h;++$)if(r.test(u[$])){var L=void 0;for(L=$+1;L<h&&r.test(u[L]);++L);for(var B="L"==($?u[$-1]:c),R="L"==(L<h?u[L]:c),T=B==R?B?"L":"R":c,M=$;M<L;++M)u[M]=T;$=L-1}for(var O,P=[],N=0;N<h;)if(s.test(u[N])){var I=N;for(++N;N<h&&s.test(u[N]);++N);P.push(new l(0,I,N))}else{var j=N,W=P.length,H="rtl"==t?1:0;for(++N;N<h&&"L"!=u[N];++N);for(var z=j;z<N;)if(a.test(u[z])){j<z&&(P.splice(W,0,new l(1,j,z)),W+=H);var V=z;for(++z;z<N&&a.test(u[z]);++z);P.splice(W,0,new l(2,V,z)),W+=H,j=z}else++z;j<N&&P.splice(W,0,new l(1,j,N))}return"ltr"==t&&(1==P[0].level&&(O=e.match(/^\s+/))&&(P[0].from=O[0].length,P.unshift(new l(0,0,O[0].length))),1==Y(P).level&&(O=e.match(/\s+$/))&&(Y(P).to-=O[0].length,P.push(new l(0,h-O[0].length,h)))),"rtl"==t?P.reverse():P}}();function he(e,t){var i=e.order;return null==i&&(i=e.order=ce(e.text,t)),i}var ue=[],de=function(e,t,i){if(e.addEventListener)e.addEventListener(t,i,!1);else if(e.attachEvent)e.attachEvent("on"+t,i);else{var n=e._handlers||(e._handlers={});n[t]=(n[t]||ue).concat(i)}};function fe(e,t){return e._handlers&&e._handlers[t]||ue}function pe(e,t,i){if(e.removeEventListener)e.removeEventListener(t,i,!1);else if(e.detachEvent)e.detachEvent("on"+t,i);else{var n=e._handlers,r=n&&n[t];if(r){var o=j(r,i);o>-1&&(n[t]=r.slice(0,o).concat(r.slice(o+1)))}}}function me(e,t){var i=fe(e,t);if(i.length)for(var n=Array.prototype.slice.call(arguments,2),r=0;r<i.length;++r)i[r].apply(null,n)}function ge(e,t,i){return"string"==typeof t&&(t={type:t,preventDefault:function(){this.defaultPrevented=!0}}),me(e,i||t.type,e,t),Ae(t)||t.codemirrorIgnore}function ve(e){var t=e._handlers&&e._handlers.cursorActivity;if(t)for(var i=e.curOp.cursorActivityHandlers||(e.curOp.cursorActivityHandlers=[]),n=0;n<t.length;++n)-1==j(i,t[n])&&i.push(t[n])}function ye(e,t){return fe(e,t).length>0}function we(e){e.prototype.on=function(e,t){de(this,e,t)},e.prototype.off=function(e,t){pe(this,e,t)}}function be(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function Ce(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function Ae(e){return null!=e.defaultPrevented?e.defaultPrevented:0==e.returnValue}function Ee(e){be(e),Ce(e)}function xe(e){return e.target||e.srcElement}function Fe(e){var t=e.which;return null==t&&(1&e.button?t=1:2&e.button?t=3:4&e.button&&(t=2)),y&&e.ctrlKey&&1==t&&(t=3),t}var Se,ke,_e=function(){if(s&&a<9)return!1;var e=D("div");return"draggable"in e||"dragDrop"in e}();function De(e){if(null==Se){var t=D("span","​");_(e,D("span",[t,document.createTextNode("x")])),0!=e.firstChild.offsetHeight&&(Se=t.offsetWidth<=1&&t.offsetHeight>2&&!(s&&a<8))}var i=Se?D("span","​"):D("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px");return i.setAttribute("cm-text",""),i}function $e(e){if(null!=ke)return ke;var t=_(e,document.createTextNode("AخA")),i=F(t,0,1).getBoundingClientRect(),n=F(t,1,2).getBoundingClientRect();return k(e),!(!i||i.left==i.right)&&(ke=n.right-i.right<3)}var Le=3!="\n\nb".split(/\n/).length?function(e){for(var t=0,i=[],n=e.length;t<=n;){var r=e.indexOf("\n",t);-1==r&&(r=e.length);var o=e.slice(t,"\r"==e.charAt(r-1)?r-1:r),s=o.indexOf("\r");-1!=s?(i.push(o.slice(0,s)),t+=s+1):(i.push(o),t=r+1)}return i}:function(e){return e.split(/\r\n?|\n/)},Be=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch(e){return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch(e){}return!(!t||t.parentElement()!=e)&&0!=t.compareEndPoints("StartToEnd",t)},Re=function(){var e=D("div");return"oncopy"in e||(e.setAttribute("oncopy","return;"),"function"==typeof e.oncopy)}(),Te=null,Me={},Oe={};function Pe(e){if("string"==typeof e&&Oe.hasOwnProperty(e))e=Oe[e];else if(e&&"string"==typeof e.name&&Oe.hasOwnProperty(e.name)){var t=Oe[e.name];"string"==typeof t&&(t={name:t}),(e=J(t,e)).name=t.name}else{if("string"==typeof e&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return Pe("application/xml");if("string"==typeof e&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return Pe("application/json")}return"string"==typeof e?{name:e}:e||{name:"null"}}function Ne(e,t){t=Pe(t);var i=Me[t.name];if(!i)return Ne(e,"text/plain");var n=i(e,t);if(Ie.hasOwnProperty(t.name)){var r=Ie[t.name];for(var o in r)r.hasOwnProperty(o)&&(n.hasOwnProperty(o)&&(n["_"+o]=n[o]),n[o]=r[o])}if(n.name=t.name,t.helperType&&(n.helperType=t.helperType),t.modeProps)for(var s in t.modeProps)n[s]=t.modeProps[s];return n}var Ie={};function je(e,t){var i=Ie.hasOwnProperty(e)?Ie[e]:Ie[e]={};P(t,i)}function We(e,t){if(!0===t)return t;if(e.copyState)return e.copyState(t);var i={};for(var n in t){var r=t[n];r instanceof Array&&(r=r.concat([])),i[n]=r}return i}function He(e,t){for(var i;e.innerMode&&(i=e.innerMode(t))&&i.mode!=e;)t=i.state,e=i.mode;return i||{mode:e,state:t}}function ze(e,t,i){return!e.startState||e.startState(t,i)}var Ve=function(e,t,i){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=i};function Ue(e,t){if((t-=e.first)<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");for(var i=e;!i.lines;)for(var n=0;;++n){var r=i.children[n],o=r.chunkSize();if(t<o){i=r;break}t-=o}return i.lines[t]}function qe(e,t,i){var n=[],r=t.line;return e.iter(t.line,i.line+1,function(e){var o=e.text;r==i.line&&(o=o.slice(0,i.ch)),r==t.line&&(o=o.slice(t.ch)),n.push(o),++r}),n}function Ke(e,t,i){var n=[];return e.iter(t,i,function(e){n.push(e.text)}),n}function Ge(e,t){var i=t-e.height;if(i)for(var n=e;n;n=n.parent)n.height+=i}function Ye(e){if(null==e.parent)return null;for(var t=e.parent,i=j(t.lines,e),n=t.parent;n;t=n,n=n.parent)for(var r=0;n.children[r]!=t;++r)i+=n.children[r].chunkSize();return i+t.first}function Qe(e,t){var i=e.first;e:do{for(var n=0;n<e.children.length;++n){var r=e.children[n],o=r.height;if(t<o){e=r;continue e}t-=o,i+=r.chunkSize()}return i}while(!e.lines);for(var s=0;s<e.lines.length;++s){var a=e.lines[s],l=a.height;if(t<l)break;t-=l}return i+s}function Xe(e,t){return t>=e.first&&t<e.first+e.size}function Je(e,t){return String(e.lineNumberFormatter(t+e.firstLineNumber))}function Ze(e,t,i){if(void 0===i&&(i=null),!(this instanceof Ze))return new Ze(e,t,i);this.line=e,this.ch=t,this.sticky=i}function et(e,t){return e.line-t.line||e.ch-t.ch}function tt(e,t){return e.sticky==t.sticky&&0==et(e,t)}function it(e){return Ze(e.line,e.ch)}function nt(e,t){return et(e,t)<0?t:e}function rt(e,t){return et(e,t)<0?e:t}function ot(e,t){return Math.max(e.first,Math.min(t,e.first+e.size-1))}function st(e,t){if(t.line<e.first)return Ze(e.first,0);var i=e.first+e.size-1;return t.line>i?Ze(i,Ue(e,i).text.length):function(e,t){var i=e.ch;return null==i||i>t?Ze(e.line,t):i<0?Ze(e.line,0):e}(t,Ue(e,t.line).text.length)}function at(e,t){for(var i=[],n=0;n<t.length;n++)i[n]=st(e,t[n]);return i}Ve.prototype.eol=function(){return this.pos>=this.string.length},Ve.prototype.sol=function(){return this.pos==this.lineStart},Ve.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},Ve.prototype.next=function(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)},Ve.prototype.eat=function(e){var t=this.string.charAt(this.pos);if("string"==typeof e?t==e:t&&(e.test?e.test(t):e(t)))return++this.pos,t},Ve.prototype.eatWhile=function(e){for(var t=this.pos;this.eat(e););return this.pos>t},Ve.prototype.eatSpace=function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},Ve.prototype.skipToEnd=function(){this.pos=this.string.length},Ve.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},Ve.prototype.backUp=function(e){this.pos-=e},Ve.prototype.column=function(){return this.lastColumnPos<this.start&&(this.lastColumnValue=N(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue-(this.lineStart?N(this.string,this.lineStart,this.tabSize):0)},Ve.prototype.indentation=function(){return N(this.string,null,this.tabSize)-(this.lineStart?N(this.string,this.lineStart,this.tabSize):0)},Ve.prototype.match=function(e,t,i){if("string"!=typeof e){var n=this.string.slice(this.pos).match(e);return n&&n.index>0?null:(n&&!1!==t&&(this.pos+=n[0].length),n)}var r=function(e){return i?e.toLowerCase():e},o=this.string.substr(this.pos,e.length);if(r(o)==r(e))return!1!==t&&(this.pos+=e.length),!0},Ve.prototype.current=function(){return this.string.slice(this.start,this.pos)},Ve.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},Ve.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},Ve.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};var lt=function(e,t){this.state=e,this.lookAhead=t},ct=function(e,t,i,n){this.state=t,this.doc=e,this.line=i,this.maxLookAhead=n||0,this.baseTokens=null,this.baseTokenPos=1};function ht(e,t,i,n){var r=[e.state.modeGen],o={};wt(e,t.text,e.doc.mode,i,function(e,t){return r.push(e,t)},o,n);for(var s=i.state,a=function(n){i.baseTokens=r;var a=e.state.overlays[n],l=1,c=0;i.state=!0,wt(e,t.text,a.mode,i,function(e,t){for(var i=l;c<e;){var n=r[l];n>e&&r.splice(l,1,e,r[l+1],n),l+=2,c=Math.min(e,n)}if(t)if(a.opaque)r.splice(i,l-i,e,"overlay "+t),l=i+2;else for(;i<l;i+=2){var o=r[i+1];r[i+1]=(o?o+" ":"")+"overlay "+t}},o),i.state=s,i.baseTokens=null,i.baseTokenPos=1},l=0;l<e.state.overlays.length;++l)a(l);return{styles:r,classes:o.bgClass||o.textClass?o:null}}function ut(e,t,i){if(!t.styles||t.styles[0]!=e.state.modeGen){var n=dt(e,Ye(t)),r=t.text.length>e.options.maxHighlightLength&&We(e.doc.mode,n.state),o=ht(e,t,n);r&&(n.state=r),t.stateAfter=n.save(!r),t.styles=o.styles,o.classes?t.styleClasses=o.classes:t.styleClasses&&(t.styleClasses=null),i===e.doc.highlightFrontier&&(e.doc.modeFrontier=Math.max(e.doc.modeFrontier,++e.doc.highlightFrontier))}return t.styles}function dt(e,t,i){var n=e.doc,r=e.display;if(!n.mode.startState)return new ct(n,!0,t);var o=function(e,t,i){for(var n,r,o=e.doc,s=i?-1:t-(e.doc.mode.innerMode?1e3:100),a=t;a>s;--a){if(a<=o.first)return o.first;var l=Ue(o,a-1),c=l.stateAfter;if(c&&(!i||a+(c instanceof lt?c.lookAhead:0)<=o.modeFrontier))return a;var h=N(l.text,null,e.options.tabSize);(null==r||n>h)&&(r=a-1,n=h)}return r}(e,t,i),s=o>n.first&&Ue(n,o-1).stateAfter,a=s?ct.fromSaved(n,s,o):new ct(n,ze(n.mode),o);return n.iter(o,t,function(i){ft(e,i.text,a);var n=a.line;i.stateAfter=n==t-1||n%5==0||n>=r.viewFrom&&n<r.viewTo?a.save():null,a.nextLine()}),i&&(n.modeFrontier=a.line),a}function ft(e,t,i,n){var r=e.doc.mode,o=new Ve(t,e.options.tabSize,i);for(o.start=o.pos=n||0,""==t&&pt(r,i.state);!o.eol();)mt(r,o,i.state),o.start=o.pos}function pt(e,t){if(e.blankLine)return e.blankLine(t);if(e.innerMode){var i=He(e,t);return i.mode.blankLine?i.mode.blankLine(i.state):void 0}}function mt(e,t,i,n){for(var r=0;r<10;r++){n&&(n[0]=He(e,i).mode);var o=e.token(t,i);if(t.pos>t.start)return o}throw new Error("Mode "+e.name+" failed to advance stream.")}ct.prototype.lookAhead=function(e){var t=this.doc.getLine(this.line+e);return null!=t&&e>this.maxLookAhead&&(this.maxLookAhead=e),t},ct.prototype.baseToken=function(e){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=e;)this.baseTokenPos+=2;var t=this.baseTokens[this.baseTokenPos+1];return{type:t&&t.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-e}},ct.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},ct.fromSaved=function(e,t,i){return t instanceof lt?new ct(e,We(e.mode,t.state),i,t.lookAhead):new ct(e,We(e.mode,t),i)},ct.prototype.save=function(e){var t=!1!==e?We(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new lt(t,this.maxLookAhead):t};var gt=function(e,t,i){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=i};function vt(e,t,i,n){var r,o=e.doc,s=o.mode;t=st(o,t);var a,l=Ue(o,t.line),c=dt(e,t.line,i),h=new Ve(l.text,e.options.tabSize,c);for(n&&(a=[]);(n||h.pos<t.ch)&&!h.eol();)h.start=h.pos,r=mt(s,h,c.state),n&&a.push(new gt(h,r,We(o.mode,c.state)));return n?a:new gt(h,r,c.state)}function yt(e,t){if(e)for(;;){var i=e.match(/(?:^|\s+)line-(background-)?(\S+)/);if(!i)break;e=e.slice(0,i.index)+e.slice(i.index+i[0].length);var n=i[1]?"bgClass":"textClass";null==t[n]?t[n]=i[2]:new RegExp("(?:^|\\s)"+i[2]+"(?:$|\\s)").test(t[n])||(t[n]+=" "+i[2])}return e}function wt(e,t,i,n,r,o,s){var a=i.flattenSpans;null==a&&(a=e.options.flattenSpans);var l,c=0,h=null,u=new Ve(t,e.options.tabSize,n),d=e.options.addModeClass&&[null];for(""==t&&yt(pt(i,n.state),o);!u.eol();){if(u.pos>e.options.maxHighlightLength?(a=!1,s&&ft(e,t,n,u.pos),u.pos=t.length,l=null):l=yt(mt(i,u,n.state,d),o),d){var f=d[0].name;f&&(l="m-"+(l?f+" "+l:f))}if(!a||h!=l){for(;c<u.start;)c=Math.min(u.start,c+5e3),r(c,h);h=l}u.start=u.pos}for(;c<u.pos;){var p=Math.min(u.pos,c+5e3);r(p,h),c=p}}var bt=!1,Ct=!1;function At(e,t,i){this.marker=e,this.from=t,this.to=i}function Et(e,t){if(e)for(var i=0;i<e.length;++i){var n=e[i];if(n.marker==t)return n}}function xt(e,t){for(var i,n=0;n<e.length;++n)e[n]!=t&&(i||(i=[])).push(e[n]);return i}function Ft(e,t){if(t.full)return null;var i=Xe(e,t.from.line)&&Ue(e,t.from.line).markedSpans,n=Xe(e,t.to.line)&&Ue(e,t.to.line).markedSpans;if(!i&&!n)return null;var r=t.from.ch,o=t.to.ch,s=0==et(t.from,t.to),a=function(e,t,i){var n;if(e)for(var r=0;r<e.length;++r){var o=e[r],s=o.marker,a=null==o.from||(s.inclusiveLeft?o.from<=t:o.from<t);if(a||o.from==t&&"bookmark"==s.type&&(!i||!o.marker.insertLeft)){var l=null==o.to||(s.inclusiveRight?o.to>=t:o.to>t);(n||(n=[])).push(new At(s,o.from,l?null:o.to))}}return n}(i,r,s),l=function(e,t,i){var n;if(e)for(var r=0;r<e.length;++r){var o=e[r],s=o.marker,a=null==o.to||(s.inclusiveRight?o.to>=t:o.to>t);if(a||o.from==t&&"bookmark"==s.type&&(!i||o.marker.insertLeft)){var l=null==o.from||(s.inclusiveLeft?o.from<=t:o.from<t);(n||(n=[])).push(new At(s,l?null:o.from-t,null==o.to?null:o.to-t))}}return n}(n,o,s),c=1==t.text.length,h=Y(t.text).length+(c?r:0);if(a)for(var u=0;u<a.length;++u){var d=a[u];if(null==d.to){var f=Et(l,d.marker);f?c&&(d.to=null==f.to?null:f.to+h):d.to=r}}if(l)for(var p=0;p<l.length;++p){var m=l[p];if(null!=m.to&&(m.to+=h),null==m.from){var g=Et(a,m.marker);g||(m.from=h,c&&(a||(a=[])).push(m))}else m.from+=h,c&&(a||(a=[])).push(m)}a&&(a=St(a)),l&&l!=a&&(l=St(l));var v=[a];if(!c){var y,w=t.text.length-2;if(w>0&&a)for(var b=0;b<a.length;++b)null==a[b].to&&(y||(y=[])).push(new At(a[b].marker,null,null));for(var C=0;C<w;++C)v.push(y);v.push(l)}return v}function St(e){for(var t=0;t<e.length;++t){var i=e[t];null!=i.from&&i.from==i.to&&!1!==i.marker.clearWhenEmpty&&e.splice(t--,1)}return e.length?e:null}function kt(e){var t=e.markedSpans;if(t){for(var i=0;i<t.length;++i)t[i].marker.detachLine(e);e.markedSpans=null}}function _t(e,t){if(t){for(var i=0;i<t.length;++i)t[i].marker.attachLine(e);e.markedSpans=t}}function Dt(e){return e.inclusiveLeft?-1:0}function $t(e){return e.inclusiveRight?1:0}function Lt(e,t){var i=e.lines.length-t.lines.length;if(0!=i)return i;var n=e.find(),r=t.find(),o=et(n.from,r.from)||Dt(e)-Dt(t);if(o)return-o;var s=et(n.to,r.to)||$t(e)-$t(t);return s||t.id-e.id}function Bt(e,t){var i,n=Ct&&e.markedSpans;if(n)for(var r=void 0,o=0;o<n.length;++o)(r=n[o]).marker.collapsed&&null==(t?r.from:r.to)&&(!i||Lt(i,r.marker)<0)&&(i=r.marker);return i}function Rt(e){return Bt(e,!0)}function Tt(e){return Bt(e,!1)}function Mt(e,t){var i,n=Ct&&e.markedSpans;if(n)for(var r=0;r<n.length;++r){var o=n[r];o.marker.collapsed&&(null==o.from||o.from<t)&&(null==o.to||o.to>t)&&(!i||Lt(i,o.marker)<0)&&(i=o.marker)}return i}function Ot(e,t,i,n,r){var o=Ue(e,t),s=Ct&&o.markedSpans;if(s)for(var a=0;a<s.length;++a){var l=s[a];if(l.marker.collapsed){var c=l.marker.find(0),h=et(c.from,i)||Dt(l.marker)-Dt(r),u=et(c.to,n)||$t(l.marker)-$t(r);if(!(h>=0&&u<=0||h<=0&&u>=0)&&(h<=0&&(l.marker.inclusiveRight&&r.inclusiveLeft?et(c.to,i)>=0:et(c.to,i)>0)||h>=0&&(l.marker.inclusiveRight&&r.inclusiveLeft?et(c.from,n)<=0:et(c.from,n)<0)))return!0}}}function Pt(e){for(var t;t=Rt(e);)e=t.find(-1,!0).line;return e}function Nt(e,t){var i=Ue(e,t),n=Pt(i);return i==n?t:Ye(n)}function It(e,t){if(t>e.lastLine())return t;var i,n=Ue(e,t);if(!jt(e,n))return t;for(;i=Tt(n);)n=i.find(1,!0).line;return Ye(n)+1}function jt(e,t){var i=Ct&&t.markedSpans;if(i)for(var n=void 0,r=0;r<i.length;++r)if((n=i[r]).marker.collapsed){if(null==n.from)return!0;if(!n.marker.widgetNode&&0==n.from&&n.marker.inclusiveLeft&&Wt(e,t,n))return!0}}function Wt(e,t,i){if(null==i.to){var n=i.marker.find(1,!0);return Wt(e,n.line,Et(n.line.markedSpans,i.marker))}if(i.marker.inclusiveRight&&i.to==t.text.length)return!0;for(var r=void 0,o=0;o<t.markedSpans.length;++o)if((r=t.markedSpans[o]).marker.collapsed&&!r.marker.widgetNode&&r.from==i.to&&(null==r.to||r.to!=i.from)&&(r.marker.inclusiveLeft||i.marker.inclusiveRight)&&Wt(e,t,r))return!0}function Ht(e){for(var t=0,i=(e=Pt(e)).parent,n=0;n<i.lines.length;++n){var r=i.lines[n];if(r==e)break;t+=r.height}for(var o=i.parent;o;o=(i=o).parent)for(var s=0;s<o.children.length;++s){var a=o.children[s];if(a==i)break;t+=a.height}return t}function zt(e){if(0==e.height)return 0;for(var t,i=e.text.length,n=e;t=Rt(n);){var r=t.find(0,!0);n=r.from.line,i+=r.from.ch-r.to.ch}for(n=e;t=Tt(n);){var o=t.find(0,!0);i-=n.text.length-o.from.ch,n=o.to.line,i+=n.text.length-o.to.ch}return i}function Vt(e){var t=e.display,i=e.doc;t.maxLine=Ue(i,i.first),t.maxLineLength=zt(t.maxLine),t.maxLineChanged=!0,i.iter(function(e){var i=zt(e);i>t.maxLineLength&&(t.maxLineLength=i,t.maxLine=e)})}var Ut=function(e,t,i){this.text=e,_t(this,t),this.height=i?i(this):1};function qt(e){e.parent=null,kt(e)}Ut.prototype.lineNo=function(){return Ye(this)},we(Ut);var Kt={},Gt={};function Yt(e,t){if(!e||/^\s*$/.test(e))return null;var i=t.addModeClass?Gt:Kt;return i[e]||(i[e]=e.replace(/\S+/g,"cm-$&"))}function Qt(e,t){var i=$("span",null,null,l?"padding-right: .1px":null),n={pre:$("pre",[i],"CodeMirror-line"),content:i,col:0,pos:0,cm:e,trailingSpace:!1,splitSpaces:e.getOption("lineWrapping")};t.measure={};for(var r=0;r<=(t.rest?t.rest.length:0);r++){var o=r?t.rest[r-1]:t.line,s=void 0;n.pos=0,n.addToken=Jt,$e(e.display.measure)&&(s=he(o,e.doc.direction))&&(n.addToken=Zt(n.addToken,s)),n.map=[];var a=t!=e.display.externalMeasured&&Ye(o);ti(o,n,ut(e,o,a)),o.styleClasses&&(o.styleClasses.bgClass&&(n.bgClass=T(o.styleClasses.bgClass,n.bgClass||"")),o.styleClasses.textClass&&(n.textClass=T(o.styleClasses.textClass,n.textClass||""))),0==n.map.length&&n.map.push(0,0,n.content.appendChild(De(e.display.measure))),0==r?(t.measure.map=n.map,t.measure.cache={}):((t.measure.maps||(t.measure.maps=[])).push(n.map),(t.measure.caches||(t.measure.caches=[])).push({}))}if(l){var c=n.content.lastChild;(/\bcm-tab\b/.test(c.className)||c.querySelector&&c.querySelector(".cm-tab"))&&(n.content.className="cm-tab-wrap-hack")}return me(e,"renderLine",e,t.line,n.pre),n.pre.className&&(n.textClass=T(n.pre.className,n.textClass||"")),n}function Xt(e){var t=D("span","•","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function Jt(e,t,i,n,r,o,l){if(t){var c,h=e.splitSpaces?function(e,t){if(e.length>1&&!/ /.test(e))return e;for(var i=t,n="",r=0;r<e.length;r++){var o=e.charAt(r);" "!=o||!i||r!=e.length-1&&32!=e.charCodeAt(r+1)||(o=" "),n+=o,i=" "==o}return n}(t,e.trailingSpace):t,u=e.cm.state.specialChars,d=!1;if(u.test(t)){c=document.createDocumentFragment();for(var f=0;;){u.lastIndex=f;var p=u.exec(t),m=p?p.index-f:t.length-f;if(m){var g=document.createTextNode(h.slice(f,f+m));s&&a<9?c.appendChild(D("span",[g])):c.appendChild(g),e.map.push(e.pos,e.pos+m,g),e.col+=m,e.pos+=m}if(!p)break;f+=m+1;var v=void 0;if("\t"==p[0]){var y=e.cm.options.tabSize,w=y-e.col%y;(v=c.appendChild(D("span",G(w),"cm-tab"))).setAttribute("role","presentation"),v.setAttribute("cm-text","\t"),e.col+=w}else"\r"==p[0]||"\n"==p[0]?((v=c.appendChild(D("span","\r"==p[0]?"␍":"␤","cm-invalidchar"))).setAttribute("cm-text",p[0]),e.col+=1):((v=e.cm.options.specialCharPlaceholder(p[0])).setAttribute("cm-text",p[0]),s&&a<9?c.appendChild(D("span",[v])):c.appendChild(v),e.col+=1);e.map.push(e.pos,e.pos+1,v),e.pos++}}else e.col+=t.length,c=document.createTextNode(h),e.map.push(e.pos,e.pos+t.length,c),s&&a<9&&(d=!0),e.pos+=t.length;if(e.trailingSpace=32==h.charCodeAt(t.length-1),i||n||r||d||o||l){var b=i||"";n&&(b+=n),r&&(b+=r);var C=D("span",[c],b,o);if(l)for(var A in l)l.hasOwnProperty(A)&&"style"!=A&&"class"!=A&&C.setAttribute(A,l[A]);return e.content.appendChild(C)}e.content.appendChild(c)}}function Zt(e,t){return function(i,n,r,o,s,a,l){r=r?r+" cm-force-border":"cm-force-border";for(var c=i.pos,h=c+n.length;;){for(var u=void 0,d=0;d<t.length&&!((u=t[d]).to>c&&u.from<=c);d++);if(u.to>=h)return e(i,n,r,o,s,a,l);e(i,n.slice(0,u.to-c),r,o,null,a,l),o=null,n=n.slice(u.to-c),c=u.to}}}function ei(e,t,i,n){var r=!n&&i.widgetNode;r&&e.map.push(e.pos,e.pos+t,r),!n&&e.cm.display.input.needsContentAttribute&&(r||(r=e.content.appendChild(document.createElement("span"))),r.setAttribute("cm-marker",i.id)),r&&(e.cm.display.input.setUneditable(r),e.content.appendChild(r)),e.pos+=t,e.trailingSpace=!1}function ti(e,t,i){var n=e.markedSpans,r=e.text,o=0;if(n)for(var s,a,l,c,h,u,d,f=r.length,p=0,m=1,g="",v=0;;){if(v==p){l=c=h=a="",d=null,u=null,v=1/0;for(var y=[],w=void 0,b=0;b<n.length;++b){var C=n[b],A=C.marker;if("bookmark"==A.type&&C.from==p&&A.widgetNode)y.push(A);else if(C.from<=p&&(null==C.to||C.to>p||A.collapsed&&C.to==p&&C.from==p)){if(null!=C.to&&C.to!=p&&v>C.to&&(v=C.to,c=""),A.className&&(l+=" "+A.className),A.css&&(a=(a?a+";":"")+A.css),A.startStyle&&C.from==p&&(h+=" "+A.startStyle),A.endStyle&&C.to==v&&(w||(w=[])).push(A.endStyle,C.to),A.title&&((d||(d={})).title=A.title),A.attributes)for(var E in A.attributes)(d||(d={}))[E]=A.attributes[E];A.collapsed&&(!u||Lt(u.marker,A)<0)&&(u=C)}else C.from>p&&v>C.from&&(v=C.from)}if(w)for(var x=0;x<w.length;x+=2)w[x+1]==v&&(c+=" "+w[x]);if(!u||u.from==p)for(var F=0;F<y.length;++F)ei(t,0,y[F]);if(u&&(u.from||0)==p){if(ei(t,(null==u.to?f+1:u.to)-p,u.marker,null==u.from),null==u.to)return;u.to==p&&(u=!1)}}if(p>=f)break;for(var S=Math.min(f,v);;){if(g){var k=p+g.length;if(!u){var _=k>S?g.slice(0,S-p):g;t.addToken(t,_,s?s+l:l,h,p+_.length==v?c:"",a,d)}if(k>=S){g=g.slice(S-p),p=S;break}p=k,h=""}g=r.slice(o,o=i[m++]),s=Yt(i[m++],t.cm.options)}}else for(var D=1;D<i.length;D+=2)t.addToken(t,r.slice(o,o=i[D]),Yt(i[D+1],t.cm.options))}function ii(e,t,i){this.line=t,this.rest=function(e){for(var t,i;t=Tt(e);)e=t.find(1,!0).line,(i||(i=[])).push(e);return i}(t),this.size=this.rest?Ye(Y(this.rest))-i+1:1,this.node=this.text=null,this.hidden=jt(e,t)}function ni(e,t,i){for(var n,r=[],o=t;o<i;o=n){var s=new ii(e.doc,Ue(e.doc,o),o);n=o+s.size,r.push(s)}return r}var ri=null,oi=null;function si(e,t){var i=fe(e,t);if(i.length){var n,r=Array.prototype.slice.call(arguments,2);ri?n=ri.delayedCallbacks:oi?n=oi:(n=oi=[],setTimeout(ai,0));for(var o=function(e){n.push(function(){return i[e].apply(null,r)})},s=0;s<i.length;++s)o(s)}}function ai(){var e=oi;oi=null;for(var t=0;t<e.length;++t)e[t]()}function li(e,t,i,n){for(var r=0;r<t.changes.length;r++){var o=t.changes[r];"text"==o?ui(e,t):"gutter"==o?fi(e,t,i,n):"class"==o?di(e,t):"widget"==o&&pi(e,t,n)}t.changes=null}function ci(e){return e.node==e.text&&(e.node=D("div",null,null,"position: relative"),e.text.parentNode&&e.text.parentNode.replaceChild(e.node,e.text),e.node.appendChild(e.text),s&&a<8&&(e.node.style.zIndex=2)),e.node}function hi(e,t){var i=e.display.externalMeasured;return i&&i.line==t.line?(e.display.externalMeasured=null,t.measure=i.measure,i.built):Qt(e,t)}function ui(e,t){var i=t.text.className,n=hi(e,t);t.text==t.node&&(t.node=n.pre),t.text.parentNode.replaceChild(n.pre,t.text),t.text=n.pre,n.bgClass!=t.bgClass||n.textClass!=t.textClass?(t.bgClass=n.bgClass,t.textClass=n.textClass,di(e,t)):i&&(t.text.className=i)}function di(e,t){!function(e,t){var i=t.bgClass?t.bgClass+" "+(t.line.bgClass||""):t.line.bgClass;if(i&&(i+=" CodeMirror-linebackground"),t.background)i?t.background.className=i:(t.background.parentNode.removeChild(t.background),t.background=null);else if(i){var n=ci(t);t.background=n.insertBefore(D("div",null,i),n.firstChild),e.display.input.setUneditable(t.background)}}(e,t),t.line.wrapClass?ci(t).className=t.line.wrapClass:t.node!=t.text&&(t.node.className="");var i=t.textClass?t.textClass+" "+(t.line.textClass||""):t.line.textClass;t.text.className=i||""}function fi(e,t,i,n){if(t.gutter&&(t.node.removeChild(t.gutter),t.gutter=null),t.gutterBackground&&(t.node.removeChild(t.gutterBackground),t.gutterBackground=null),t.line.gutterClass){var r=ci(t);t.gutterBackground=D("div",null,"CodeMirror-gutter-background "+t.line.gutterClass,"left: "+(e.options.fixedGutter?n.fixedPos:-n.gutterTotalWidth)+"px; width: "+n.gutterTotalWidth+"px"),e.display.input.setUneditable(t.gutterBackground),r.insertBefore(t.gutterBackground,t.text)}var o=t.line.gutterMarkers;if(e.options.lineNumbers||o){var s=ci(t),a=t.gutter=D("div",null,"CodeMirror-gutter-wrapper","left: "+(e.options.fixedGutter?n.fixedPos:-n.gutterTotalWidth)+"px");if(a.setAttribute("aria-hidden","true"),e.display.input.setUneditable(a),s.insertBefore(a,t.text),t.line.gutterClass&&(a.className+=" "+t.line.gutterClass),!e.options.lineNumbers||o&&o["CodeMirror-linenumbers"]||(t.lineNumber=a.appendChild(D("div",Je(e.options,i),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+n.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+e.display.lineNumInnerWidth+"px"))),o)for(var l=0;l<e.display.gutterSpecs.length;++l){var c=e.display.gutterSpecs[l].className,h=o.hasOwnProperty(c)&&o[c];h&&a.appendChild(D("div",[h],"CodeMirror-gutter-elt","left: "+n.gutterLeft[c]+"px; width: "+n.gutterWidth[c]+"px"))}}}function pi(e,t,i){t.alignable&&(t.alignable=null);for(var n=x("CodeMirror-linewidget"),r=t.node.firstChild,o=void 0;r;r=o)o=r.nextSibling,n.test(r.className)&&t.node.removeChild(r);gi(e,t,i)}function mi(e,t,i,n){var r=hi(e,t);return t.text=t.node=r.pre,r.bgClass&&(t.bgClass=r.bgClass),r.textClass&&(t.textClass=r.textClass),di(e,t),fi(e,t,i,n),gi(e,t,n),t.node}function gi(e,t,i){if(vi(e,t.line,t,i,!0),t.rest)for(var n=0;n<t.rest.length;n++)vi(e,t.rest[n],t,i,!1)}function vi(e,t,i,n,r){if(t.widgets)for(var o=ci(i),s=0,a=t.widgets;s<a.length;++s){var l=a[s],c=D("div",[l.node],"CodeMirror-linewidget"+(l.className?" "+l.className:""));l.handleMouseEvents||c.setAttribute("cm-ignore-events","true"),yi(l,c,i,n),e.display.input.setUneditable(c),r&&l.above?o.insertBefore(c,i.gutter||i.text):o.appendChild(c),si(l,"redraw")}}function yi(e,t,i,n){if(e.noHScroll){(i.alignable||(i.alignable=[])).push(t);var r=n.wrapperWidth;t.style.left=n.fixedPos+"px",e.coverGutter||(r-=n.gutterTotalWidth,t.style.paddingLeft=n.gutterTotalWidth+"px"),t.style.width=r+"px"}e.coverGutter&&(t.style.zIndex=5,t.style.position="relative",e.noHScroll||(t.style.marginLeft=-n.gutterTotalWidth+"px"))}function wi(e){if(null!=e.height)return e.height;var t=e.doc.cm;if(!t)return 0;if(!L(document.body,e.node)){var i="position: relative;";e.coverGutter&&(i+="margin-left: -"+t.display.gutters.offsetWidth+"px;"),e.noHScroll&&(i+="width: "+t.display.wrapper.clientWidth+"px;"),_(t.display.measure,D("div",[e.node],null,i))}return e.height=e.node.parentNode.offsetHeight}function bi(e,t){for(var i=xe(t);i!=e.wrapper;i=i.parentNode)if(!i||1==i.nodeType&&"true"==i.getAttribute("cm-ignore-events")||i.parentNode==e.sizer&&i!=e.mover)return!0}function Ci(e){return e.lineSpace.offsetTop}function Ai(e){return e.mover.offsetHeight-e.lineSpace.offsetHeight}function Ei(e){if(e.cachedPaddingH)return e.cachedPaddingH;var t=_(e.measure,D("pre","x","CodeMirror-line-like")),i=window.getComputedStyle?window.getComputedStyle(t):t.currentStyle,n={left:parseInt(i.paddingLeft),right:parseInt(i.paddingRight)};return isNaN(n.left)||isNaN(n.right)||(e.cachedPaddingH=n),n}function xi(e){return W-e.display.nativeBarWidth}function Fi(e){return e.display.scroller.clientWidth-xi(e)-e.display.barWidth}function Si(e){return e.display.scroller.clientHeight-xi(e)-e.display.barHeight}function ki(e,t,i){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};if(e.rest){for(var n=0;n<e.rest.length;n++)if(e.rest[n]==t)return{map:e.measure.maps[n],cache:e.measure.caches[n]};for(var r=0;r<e.rest.length;r++)if(Ye(e.rest[r])>i)return{map:e.measure.maps[r],cache:e.measure.caches[r],before:!0}}}function _i(e,t,i,n){return Li(e,$i(e,t),i,n)}function Di(e,t){if(t>=e.display.viewFrom&&t<e.display.viewTo)return e.display.view[an(e,t)];var i=e.display.externalMeasured;return i&&t>=i.lineN&&t<i.lineN+i.size?i:void 0}function $i(e,t){var i=Ye(t),n=Di(e,i);n&&!n.text?n=null:n&&n.changes&&(li(e,n,i,tn(e)),e.curOp.forceUpdate=!0),n||(n=function(e,t){var i=Ye(t=Pt(t)),n=e.display.externalMeasured=new ii(e.doc,t,i);n.lineN=i;var r=n.built=Qt(e,n);return n.text=r.pre,_(e.display.lineMeasure,r.pre),n}(e,t));var r=ki(n,t,i);return{line:t,view:n,rect:null,map:r.map,cache:r.cache,before:r.before,hasHeights:!1}}function Li(e,t,i,n,r){t.before&&(i=-1);var o,l=i+(n||"");return t.cache.hasOwnProperty(l)?o=t.cache[l]:(t.rect||(t.rect=t.view.text.getBoundingClientRect()),t.hasHeights||(function(e,t,i){var n=e.options.lineWrapping,r=n&&Fi(e);if(!t.measure.heights||n&&t.measure.width!=r){var o=t.measure.heights=[];if(n){t.measure.width=r;for(var s=t.text.firstChild.getClientRects(),a=0;a<s.length-1;a++){var l=s[a],c=s[a+1];Math.abs(l.bottom-c.bottom)>2&&o.push((l.bottom+c.top)/2-i.top)}}o.push(i.bottom-i.top)}}(e,t.view,t.rect),t.hasHeights=!0),(o=function(e,t,i,n){var r,o=Ti(t.map,i,n),l=o.node,c=o.start,h=o.end,u=o.collapse;if(3==l.nodeType){for(var d=0;d<4;d++){for(;c&&re(t.line.text.charAt(o.coverStart+c));)--c;for(;o.coverStart+h<o.coverEnd&&re(t.line.text.charAt(o.coverStart+h));)++h;if((r=s&&a<9&&0==c&&h==o.coverEnd-o.coverStart?l.parentNode.getBoundingClientRect():Mi(F(l,c,h).getClientRects(),n)).left||r.right||0==c)break;h=c,c-=1,u="right"}s&&a<11&&(r=function(e,t){if(!window.screen||null==screen.logicalXDPI||screen.logicalXDPI==screen.deviceXDPI||!function(e){if(null!=Te)return Te;var t=_(e,D("span","x")),i=t.getBoundingClientRect(),n=F(t,0,1).getBoundingClientRect();return Te=Math.abs(i.left-n.left)>1}(e))return t;var i=screen.logicalXDPI/screen.deviceXDPI,n=screen.logicalYDPI/screen.deviceYDPI;return{left:t.left*i,right:t.right*i,top:t.top*n,bottom:t.bottom*n}}(e.display.measure,r))}else{var f;c>0&&(u=n="right"),r=e.options.lineWrapping&&(f=l.getClientRects()).length>1?f["right"==n?f.length-1:0]:l.getBoundingClientRect()}if(s&&a<9&&!c&&(!r||!r.left&&!r.right)){var p=l.parentNode.getClientRects()[0];r=p?{left:p.left,right:p.left+en(e.display),top:p.top,bottom:p.bottom}:Ri}for(var m=r.top-t.rect.top,g=r.bottom-t.rect.top,v=(m+g)/2,y=t.view.measure.heights,w=0;w<y.length-1&&!(v<y[w]);w++);var b=w?y[w-1]:0,C=y[w],A={left:("right"==u?r.right:r.left)-t.rect.left,right:("left"==u?r.left:r.right)-t.rect.left,top:b,bottom:C};return r.left||r.right||(A.bogus=!0),e.options.singleCursorHeightPerLine||(A.rtop=m,A.rbottom=g),A}(e,t,i,n)).bogus||(t.cache[l]=o)),{left:o.left,right:o.right,top:r?o.rtop:o.top,bottom:r?o.rbottom:o.bottom}}var Bi,Ri={left:0,right:0,top:0,bottom:0};function Ti(e,t,i){for(var n,r,o,s,a,l,c=0;c<e.length;c+=3)if(a=e[c],l=e[c+1],t<a?(r=0,o=1,s="left"):t<l?o=1+(r=t-a):(c==e.length-3||t==l&&e[c+3]>t)&&(r=(o=l-a)-1,t>=l&&(s="right")),null!=r){if(n=e[c+2],a==l&&i==(n.insertLeft?"left":"right")&&(s=i),"left"==i&&0==r)for(;c&&e[c-2]==e[c-3]&&e[c-1].insertLeft;)n=e[2+(c-=3)],s="left";if("right"==i&&r==l-a)for(;c<e.length-3&&e[c+3]==e[c+4]&&!e[c+5].insertLeft;)n=e[(c+=3)+2],s="right";break}return{node:n,start:r,end:o,collapse:s,coverStart:a,coverEnd:l}}function Mi(e,t){var i=Ri;if("left"==t)for(var n=0;n<e.length&&(i=e[n]).left==i.right;n++);else for(var r=e.length-1;r>=0&&(i=e[r]).left==i.right;r--);return i}function Oi(e){if(e.measure&&(e.measure.cache={},e.measure.heights=null,e.rest))for(var t=0;t<e.rest.length;t++)e.measure.caches[t]={}}function Pi(e){e.display.externalMeasure=null,k(e.display.lineMeasure);for(var t=0;t<e.display.view.length;t++)Oi(e.display.view[t])}function Ni(e){Pi(e),e.display.cachedCharWidth=e.display.cachedTextHeight=e.display.cachedPaddingH=null,e.options.lineWrapping||(e.display.maxLineChanged=!0),e.display.lineNumChars=null}function Ii(){return h&&g?-(document.body.getBoundingClientRect().left-parseInt(getComputedStyle(document.body).marginLeft)):window.pageXOffset||(document.documentElement||document.body).scrollLeft}function ji(){return h&&g?-(document.body.getBoundingClientRect().top-parseInt(getComputedStyle(document.body).marginTop)):window.pageYOffset||(document.documentElement||document.body).scrollTop}function Wi(e){var t=Pt(e),i=t.widgets,n=0;if(i)for(var r=0;r<i.length;++r)i[r].above&&(n+=wi(i[r]));return n}function Hi(e,t,i,n,r){if(!r){var o=Wi(t);i.top+=o,i.bottom+=o}if("line"==n)return i;n||(n="local");var s=Ht(t);if("local"==n?s+=Ci(e.display):s-=e.display.viewOffset,"page"==n||"window"==n){var a=e.display.lineSpace.getBoundingClientRect();s+=a.top+("window"==n?0:ji());var l=a.left+("window"==n?0:Ii());i.left+=l,i.right+=l}return i.top+=s,i.bottom+=s,i}function zi(e,t,i){if("div"==i)return t;var n=t.left,r=t.top;if("page"==i)n-=Ii(),r-=ji();else if("local"==i||!i){var o=e.display.sizer.getBoundingClientRect();n+=o.left,r+=o.top}var s=e.display.lineSpace.getBoundingClientRect();return{left:n-s.left,top:r-s.top}}function Vi(e,t,i,n,r){return n||(n=Ue(e.doc,t.line)),Hi(e,n,_i(e,n,t.ch,r),i)}function Ui(e,t,i,n,r,o){function s(t,s){var a=Li(e,r,t,s?"right":"left",o);return s?a.left=a.right:a.right=a.left,Hi(e,n,a,i)}n=n||Ue(e.doc,t.line),r||(r=$i(e,n));var a=he(n,e.doc.direction),l=t.ch,c=t.sticky;if(l>=n.text.length?(l=n.text.length,c="before"):l<=0&&(l=0,c="after"),!a)return s("before"==c?l-1:l,"before"==c);function h(e,t,i){var n=a[t],r=1==n.level;return s(i?e-1:e,r!=i)}var u=le(a,l,c),d=ae,f=h(l,u,"before"==c);return null!=d&&(f.other=h(l,d,"before"!=c)),f}function qi(e,t){var i=0;t=st(e.doc,t),e.options.lineWrapping||(i=en(e.display)*t.ch);var n=Ue(e.doc,t.line),r=Ht(n)+Ci(e.display);return{left:i,right:i,top:r,bottom:r+n.height}}function Ki(e,t,i,n,r){var o=Ze(e,t,i);return o.xRel=r,n&&(o.outside=n),o}function Gi(e,t,i){var n=e.doc;if((i+=e.display.viewOffset)<0)return Ki(n.first,0,null,-1,-1);var r=Qe(n,i),o=n.first+n.size-1;if(r>o)return Ki(n.first+n.size-1,Ue(n,o).text.length,null,1,1);t<0&&(t=0);for(var s=Ue(n,r);;){var a=Ji(e,s,r,t,i),l=Mt(s,a.ch+(a.xRel>0||a.outside>0?1:0));if(!l)return a;var c=l.find(1);if(c.line==r)return c;s=Ue(n,r=c.line)}}function Yi(e,t,i,n){n-=Wi(t);var r=t.text.length,o=se(function(t){return Li(e,i,t-1).bottom<=n},r,0);return r=se(function(t){return Li(e,i,t).top>n},o,r),{begin:o,end:r}}function Qi(e,t,i,n){i||(i=$i(e,t));var r=Hi(e,t,Li(e,i,n),"line").top;return Yi(e,t,i,r)}function Xi(e,t,i,n){return!(e.bottom<=i)&&(e.top>i||(n?e.left:e.right)>t)}function Ji(e,t,i,n,r){r-=Ht(t);var o=$i(e,t),s=Wi(t),a=0,l=t.text.length,c=!0,h=he(t,e.doc.direction);if(h){var u=(e.options.lineWrapping?function(e,t,i,n,r,o,s){var a=Yi(e,t,n,s),l=a.begin,c=a.end;/\s/.test(t.text.charAt(c-1))&&c--;for(var h=null,u=null,d=0;d<r.length;d++){var f=r[d];if(!(f.from>=c||f.to<=l)){var p=1!=f.level,m=Li(e,n,p?Math.min(c,f.to)-1:Math.max(l,f.from)).right,g=m<o?o-m+1e9:m-o;(!h||u>g)&&(h=f,u=g)}}return h||(h=r[r.length-1]),h.from<l&&(h={from:l,to:h.to,level:h.level}),h.to>c&&(h={from:h.from,to:c,level:h.level}),h}:function(e,t,i,n,r,o,s){var a=se(function(a){var l=r[a],c=1!=l.level;return Xi(Ui(e,Ze(i,c?l.to:l.from,c?"before":"after"),"line",t,n),o,s,!0)},0,r.length-1),l=r[a];if(a>0){var c=1!=l.level,h=Ui(e,Ze(i,c?l.from:l.to,c?"after":"before"),"line",t,n);Xi(h,o,s,!0)&&h.top>s&&(l=r[a-1])}return l})(e,t,i,o,h,n,r);c=1!=u.level,a=c?u.from:u.to-1,l=c?u.to:u.from-1}var d,f,p=null,m=null,g=se(function(t){var i=Li(e,o,t);return i.top+=s,i.bottom+=s,!!Xi(i,n,r,!1)&&(i.top<=r&&i.left<=n&&(p=t,m=i),!0)},a,l),v=!1;if(m){var y=n-m.left<m.right-n,w=y==c;g=p+(w?0:1),f=w?"after":"before",d=y?m.left:m.right}else{c||g!=l&&g!=a||g++,f=0==g?"after":g==t.text.length?"before":Li(e,o,g-(c?1:0)).bottom+s<=r==c?"after":"before";var b=Ui(e,Ze(i,g,f),"line",t,o);d=b.left,v=r<b.top?-1:r>=b.bottom?1:0}return g=oe(t.text,g,1),Ki(i,g,f,v,n-d)}function Zi(e){if(null!=e.cachedTextHeight)return e.cachedTextHeight;if(null==Bi){Bi=D("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)Bi.appendChild(document.createTextNode("x")),Bi.appendChild(D("br"));Bi.appendChild(document.createTextNode("x"))}_(e.measure,Bi);var i=Bi.offsetHeight/50;return i>3&&(e.cachedTextHeight=i),k(e.measure),i||1}function en(e){if(null!=e.cachedCharWidth)return e.cachedCharWidth;var t=D("span","xxxxxxxxxx"),i=D("pre",[t],"CodeMirror-line-like");_(e.measure,i);var n=t.getBoundingClientRect(),r=(n.right-n.left)/10;return r>2&&(e.cachedCharWidth=r),r||10}function tn(e){for(var t=e.display,i={},n={},r=t.gutters.clientLeft,o=t.gutters.firstChild,s=0;o;o=o.nextSibling,++s){var a=e.display.gutterSpecs[s].className;i[a]=o.offsetLeft+o.clientLeft+r,n[a]=o.clientWidth}return{fixedPos:nn(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:i,gutterWidth:n,wrapperWidth:t.wrapper.clientWidth}}function nn(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function rn(e){var t=Zi(e.display),i=e.options.lineWrapping,n=i&&Math.max(5,e.display.scroller.clientWidth/en(e.display)-3);return function(r){if(jt(e.doc,r))return 0;var o=0;if(r.widgets)for(var s=0;s<r.widgets.length;s++)r.widgets[s].height&&(o+=r.widgets[s].height);return i?o+(Math.ceil(r.text.length/n)||1)*t:o+t}}function on(e){var t=e.doc,i=rn(e);t.iter(function(e){var t=i(e);t!=e.height&&Ge(e,t)})}function sn(e,t,i,n){var r=e.display;if(!i&&"true"==xe(t).getAttribute("cm-not-content"))return null;var o,s,a=r.lineSpace.getBoundingClientRect();try{o=t.clientX-a.left,s=t.clientY-a.top}catch(e){return null}var l,c=Gi(e,o,s);if(n&&c.xRel>0&&(l=Ue(e.doc,c.line).text).length==c.ch){var h=N(l,l.length,e.options.tabSize)-l.length;c=Ze(c.line,Math.max(0,Math.round((o-Ei(e.display).left)/en(e.display))-h))}return c}function an(e,t){if(t>=e.display.viewTo)return null;if((t-=e.display.viewFrom)<0)return null;for(var i=e.display.view,n=0;n<i.length;n++)if((t-=i[n].size)<0)return n}function ln(e,t,i,n){null==t&&(t=e.doc.first),null==i&&(i=e.doc.first+e.doc.size),n||(n=0);var r=e.display;if(n&&i<r.viewTo&&(null==r.updateLineNumbers||r.updateLineNumbers>t)&&(r.updateLineNumbers=t),e.curOp.viewChanged=!0,t>=r.viewTo)Ct&&Nt(e.doc,t)<r.viewTo&&hn(e);else if(i<=r.viewFrom)Ct&&It(e.doc,i+n)>r.viewFrom?hn(e):(r.viewFrom+=n,r.viewTo+=n);else if(t<=r.viewFrom&&i>=r.viewTo)hn(e);else if(t<=r.viewFrom){var o=un(e,i,i+n,1);o?(r.view=r.view.slice(o.index),r.viewFrom=o.lineN,r.viewTo+=n):hn(e)}else if(i>=r.viewTo){var s=un(e,t,t,-1);s?(r.view=r.view.slice(0,s.index),r.viewTo=s.lineN):hn(e)}else{var a=un(e,t,t,-1),l=un(e,i,i+n,1);a&&l?(r.view=r.view.slice(0,a.index).concat(ni(e,a.lineN,l.lineN)).concat(r.view.slice(l.index)),r.viewTo+=n):hn(e)}var c=r.externalMeasured;c&&(i<c.lineN?c.lineN+=n:t<c.lineN+c.size&&(r.externalMeasured=null))}function cn(e,t,i){e.curOp.viewChanged=!0;var n=e.display,r=e.display.externalMeasured;if(r&&t>=r.lineN&&t<r.lineN+r.size&&(n.externalMeasured=null),!(t<n.viewFrom||t>=n.viewTo)){var o=n.view[an(e,t)];if(null!=o.node){var s=o.changes||(o.changes=[]);-1==j(s,i)&&s.push(i)}}}function hn(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function un(e,t,i,n){var r,o=an(e,t),s=e.display.view;if(!Ct||i==e.doc.first+e.doc.size)return{index:o,lineN:i};for(var a=e.display.viewFrom,l=0;l<o;l++)a+=s[l].size;if(a!=t){if(n>0){if(o==s.length-1)return null;r=a+s[o].size-t,o++}else r=a-t;t+=r,i+=r}for(;Nt(e.doc,i)!=i;){if(o==(n<0?0:s.length-1))return null;i+=n*s[o-(n<0?1:0)].size,o+=n}return{index:o,lineN:i}}function dn(e){for(var t=e.display.view,i=0,n=0;n<t.length;n++){var r=t[n];r.hidden||r.node&&!r.changes||++i}return i}function fn(e){e.display.input.showSelection(e.display.input.prepareSelection())}function pn(e,t){void 0===t&&(t=!0);var i=e.doc,n={},r=n.cursors=document.createDocumentFragment(),o=n.selection=document.createDocumentFragment(),s=e.options.$customCursor;s&&(t=!0);for(var a=0;a<i.sel.ranges.length;a++)if(t||a!=i.sel.primIndex){var l=i.sel.ranges[a];if(!(l.from().line>=e.display.viewTo||l.to().line<e.display.viewFrom)){var c=l.empty();if(s){var h=s(e,l);h&&mn(e,h,r)}else(c||e.options.showCursorWhenSelecting)&&mn(e,l.head,r);c||vn(e,l,o)}}return n}function mn(e,t,i){var n=Ui(e,t,"div",null,null,!e.options.singleCursorHeightPerLine),r=i.appendChild(D("div"," ","CodeMirror-cursor"));if(r.style.left=n.left+"px",r.style.top=n.top+"px",r.style.height=Math.max(0,n.bottom-n.top)*e.options.cursorHeight+"px",/\bcm-fat-cursor\b/.test(e.getWrapperElement().className)){var o=Vi(e,t,"div",null,null),s=o.right-o.left;r.style.width=(s>0?s:e.defaultCharWidth())+"px"}if(n.other){var a=i.appendChild(D("div"," ","CodeMirror-cursor CodeMirror-secondarycursor"));a.style.display="",a.style.left=n.other.left+"px",a.style.top=n.other.top+"px",a.style.height=.85*(n.other.bottom-n.other.top)+"px"}}function gn(e,t){return e.top-t.top||e.left-t.left}function vn(e,t,i){var n=e.display,r=e.doc,o=document.createDocumentFragment(),s=Ei(e.display),a=s.left,l=Math.max(n.sizerWidth,Fi(e)-n.sizer.offsetLeft)-s.right,c="ltr"==r.direction;function h(e,t,i,n){t<0&&(t=0),t=Math.round(t),n=Math.round(n),o.appendChild(D("div",null,"CodeMirror-selected","position: absolute; left: "+e+"px;\n top: "+t+"px; width: "+(null==i?l-e:i)+"px;\n height: "+(n-t)+"px"))}function u(t,i,n){var o,s,u=Ue(r,t),d=u.text.length;function f(i,n){return Vi(e,Ze(t,i),"div",u,n)}function p(t,i,n){var r=Qi(e,u,null,t),o="ltr"==i==("after"==n)?"left":"right",s="after"==n?r.begin:r.end-(/\s/.test(u.text.charAt(r.end-1))?2:1);return f(s,o)[o]}var m=he(u,r.direction);return function(e,t,i,n){if(!e)return n(t,i,"ltr",0);for(var r=!1,o=0;o<e.length;++o){var s=e[o];(s.from<i&&s.to>t||t==i&&s.to==t)&&(n(Math.max(s.from,t),Math.min(s.to,i),1==s.level?"rtl":"ltr",o),r=!0)}r||n(t,i,"ltr")}(m,i||0,null==n?d:n,function(e,t,r,u){var g="ltr"==r,v=f(e,g?"left":"right"),y=f(t-1,g?"right":"left"),w=null==i&&0==e,b=null==n&&t==d,C=0==u,A=!m||u==m.length-1;if(y.top-v.top<=3){var E=(c?w:b)&&C,x=(c?b:w)&&A,F=E?a:(g?v:y).left,S=x?l:(g?y:v).right;h(F,v.top,S-F,v.bottom)}else{var k,_,D,$;g?(k=c&&w&&C?a:v.left,_=c?l:p(e,r,"before"),D=c?a:p(t,r,"after"),$=c&&b&&A?l:y.right):(k=c?p(e,r,"before"):a,_=!c&&w&&C?l:v.right,D=!c&&b&&A?a:y.left,$=c?p(t,r,"after"):l),h(k,v.top,_-k,v.bottom),v.bottom<y.top&&h(a,v.bottom,null,y.top),h(D,y.top,$-D,y.bottom)}(!o||gn(v,o)<0)&&(o=v),gn(y,o)<0&&(o=y),(!s||gn(v,s)<0)&&(s=v),gn(y,s)<0&&(s=y)}),{start:o,end:s}}var d=t.from(),f=t.to();if(d.line==f.line)u(d.line,d.ch,f.ch);else{var p=Ue(r,d.line),m=Ue(r,f.line),g=Pt(p)==Pt(m),v=u(d.line,d.ch,g?p.text.length+1:null).end,y=u(f.line,g?0:null,f.ch).start;g&&(v.top<y.top-2?(h(v.right,v.top,null,v.bottom),h(a,y.top,y.left,y.bottom)):h(v.right,v.top,y.left-v.right,v.bottom)),v.bottom<y.top&&h(a,v.bottom,null,y.top)}i.appendChild(o)}function yn(e){if(e.state.focused){var t=e.display;clearInterval(t.blinker);var i=!0;t.cursorDiv.style.visibility="",e.options.cursorBlinkRate>0?t.blinker=setInterval(function(){e.hasFocus()||An(e),t.cursorDiv.style.visibility=(i=!i)?"":"hidden"},e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function wn(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||Cn(e))}function bn(e){e.state.delayingBlurEvent=!0,setTimeout(function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&An(e))},100)}function Cn(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),"nocursor"!=e.options.readOnly&&(e.state.focused||(me(e,"focus",e,t),e.state.focused=!0,R(e.display.wrapper,"CodeMirror-focused"),e.curOp||e.display.selForContextMenu==e.doc.sel||(e.display.input.reset(),l&&setTimeout(function(){return e.display.input.reset(!0)},20)),e.display.input.receivedFocus()),yn(e))}function An(e,t){e.state.delayingBlurEvent||(e.state.focused&&(me(e,"blur",e,t),e.state.focused=!1,S(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout(function(){e.state.focused||(e.display.shift=!1)},150))}function En(e){for(var t=e.display,i=t.lineDiv.offsetTop,n=Math.max(0,t.scroller.getBoundingClientRect().top),r=t.lineDiv.getBoundingClientRect().top,o=0,l=0;l<t.view.length;l++){var c=t.view[l],h=e.options.lineWrapping,u=void 0,d=0;if(!c.hidden){if(r+=c.line.height,s&&a<8){var f=c.node.offsetTop+c.node.offsetHeight;u=f-i,i=f}else{var p=c.node.getBoundingClientRect();u=p.bottom-p.top,!h&&c.text.firstChild&&(d=c.text.firstChild.getBoundingClientRect().right-p.left-1)}var m=c.line.height-u;if((m>.005||m<-.005)&&(r<n&&(o-=m),Ge(c.line,u),xn(c.line),c.rest))for(var g=0;g<c.rest.length;g++)xn(c.rest[g]);if(d>e.display.sizerWidth){var v=Math.ceil(d/en(e.display));v>e.display.maxLineLength&&(e.display.maxLineLength=v,e.display.maxLine=c.line,e.display.maxLineChanged=!0)}}}Math.abs(o)>2&&(t.scroller.scrollTop+=o)}function xn(e){if(e.widgets)for(var t=0;t<e.widgets.length;++t){var i=e.widgets[t],n=i.node.parentNode;n&&(i.height=n.offsetHeight)}}function Fn(e,t,i){var n=i&&null!=i.top?Math.max(0,i.top):e.scroller.scrollTop;n=Math.floor(n-Ci(e));var r=i&&null!=i.bottom?i.bottom:n+e.wrapper.clientHeight,o=Qe(t,n),s=Qe(t,r);if(i&&i.ensure){var a=i.ensure.from.line,l=i.ensure.to.line;a<o?(o=a,s=Qe(t,Ht(Ue(t,a))+e.wrapper.clientHeight)):Math.min(l,t.lastLine())>=s&&(o=Qe(t,Ht(Ue(t,l))-e.wrapper.clientHeight),s=l)}return{from:o,to:Math.max(s,o+1)}}function Sn(e,t){var i=e.display,n=Zi(e.display);t.top<0&&(t.top=0);var r=e.curOp&&null!=e.curOp.scrollTop?e.curOp.scrollTop:i.scroller.scrollTop,o=Si(e),s={};t.bottom-t.top>o&&(t.bottom=t.top+o);var a=e.doc.height+Ai(i),l=t.top<n,c=t.bottom>a-n;if(t.top<r)s.scrollTop=l?0:t.top;else if(t.bottom>r+o){var h=Math.min(t.top,(c?a:t.bottom)-o);h!=r&&(s.scrollTop=h)}var u=e.options.fixedGutter?0:i.gutters.offsetWidth,d=e.curOp&&null!=e.curOp.scrollLeft?e.curOp.scrollLeft:i.scroller.scrollLeft-u,f=Fi(e)-i.gutters.offsetWidth,p=t.right-t.left>f;return p&&(t.right=t.left+f),t.left<10?s.scrollLeft=0:t.left<d?s.scrollLeft=Math.max(0,t.left+u-(p?0:10)):t.right>f+d-3&&(s.scrollLeft=t.right+(p?0:10)-f),s}function kn(e,t){null!=t&&($n(e),e.curOp.scrollTop=(null==e.curOp.scrollTop?e.doc.scrollTop:e.curOp.scrollTop)+t)}function _n(e){$n(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function Dn(e,t,i){null==t&&null==i||$n(e),null!=t&&(e.curOp.scrollLeft=t),null!=i&&(e.curOp.scrollTop=i)}function $n(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var i=qi(e,t.from),n=qi(e,t.to);Ln(e,i,n,t.margin)}}function Ln(e,t,i,n){var r=Sn(e,{left:Math.min(t.left,i.left),top:Math.min(t.top,i.top)-n,right:Math.max(t.right,i.right),bottom:Math.max(t.bottom,i.bottom)+n});Dn(e,r.scrollLeft,r.scrollTop)}function Bn(e,t){Math.abs(e.doc.scrollTop-t)<2||(i||or(e,{top:t}),Rn(e,t,!0),i&&or(e),er(e,100))}function Rn(e,t,i){t=Math.max(0,Math.min(e.display.scroller.scrollHeight-e.display.scroller.clientHeight,t)),(e.display.scroller.scrollTop!=t||i)&&(e.doc.scrollTop=t,e.display.scrollbars.setScrollTop(t),e.display.scroller.scrollTop!=t&&(e.display.scroller.scrollTop=t))}function Tn(e,t,i,n){t=Math.max(0,Math.min(t,e.display.scroller.scrollWidth-e.display.scroller.clientWidth)),(i?t==e.doc.scrollLeft:Math.abs(e.doc.scrollLeft-t)<2)&&!n||(e.doc.scrollLeft=t,lr(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function Mn(e){var t=e.display,i=t.gutters.offsetWidth,n=Math.round(e.doc.height+Ai(e.display));return{clientHeight:t.scroller.clientHeight,viewHeight:t.wrapper.clientHeight,scrollWidth:t.scroller.scrollWidth,clientWidth:t.scroller.clientWidth,viewWidth:t.wrapper.clientWidth,barLeft:e.options.fixedGutter?i:0,docHeight:n,scrollHeight:n+xi(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:i}}var On=function(e,t,i){this.cm=i;var n=this.vert=D("div",[D("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),r=this.horiz=D("div",[D("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");n.tabIndex=r.tabIndex=-1,e(n),e(r),de(n,"scroll",function(){n.clientHeight&&t(n.scrollTop,"vertical")}),de(r,"scroll",function(){r.clientWidth&&t(r.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,s&&a<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};On.prototype.update=function(e){var t=e.scrollWidth>e.clientWidth+1,i=e.scrollHeight>e.clientHeight+1,n=e.nativeBarWidth;if(i){this.vert.style.display="block",this.vert.style.bottom=t?n+"px":"0";var r=e.viewHeight-(t?n:0);this.vert.firstChild.style.height=Math.max(0,e.scrollHeight-e.clientHeight+r)+"px"}else this.vert.scrollTop=0,this.vert.style.display="",this.vert.firstChild.style.height="0";if(t){this.horiz.style.display="block",this.horiz.style.right=i?n+"px":"0",this.horiz.style.left=e.barLeft+"px";var o=e.viewWidth-e.barLeft-(i?n:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+o)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(0==n&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:i?n:0,bottom:t?n:0}},On.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},On.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},On.prototype.zeroWidthHack=function(){var e=y&&!f?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.pointerEvents=this.vert.style.pointerEvents="none",this.disableHoriz=new I,this.disableVert=new I},On.prototype.enableZeroWidthBar=function(e,t,i){e.style.pointerEvents="auto",t.set(1e3,function n(){var r=e.getBoundingClientRect(),o="vert"==i?document.elementFromPoint(r.right-1,(r.top+r.bottom)/2):document.elementFromPoint((r.right+r.left)/2,r.bottom-1);o!=e?e.style.pointerEvents="none":t.set(1e3,n)})},On.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var Pn=function(){};function Nn(e,t){t||(t=Mn(e));var i=e.display.barWidth,n=e.display.barHeight;In(e,t);for(var r=0;r<4&&i!=e.display.barWidth||n!=e.display.barHeight;r++)i!=e.display.barWidth&&e.options.lineWrapping&&En(e),In(e,Mn(e)),i=e.display.barWidth,n=e.display.barHeight}function In(e,t){var i=e.display,n=i.scrollbars.update(t);i.sizer.style.paddingRight=(i.barWidth=n.right)+"px",i.sizer.style.paddingBottom=(i.barHeight=n.bottom)+"px",i.heightForcer.style.borderBottom=n.bottom+"px solid transparent",n.right&&n.bottom?(i.scrollbarFiller.style.display="block",i.scrollbarFiller.style.height=n.bottom+"px",i.scrollbarFiller.style.width=n.right+"px"):i.scrollbarFiller.style.display="",n.bottom&&e.options.coverGutterNextToScrollbar&&e.options.fixedGutter?(i.gutterFiller.style.display="block",i.gutterFiller.style.height=n.bottom+"px",i.gutterFiller.style.width=t.gutterWidth+"px"):i.gutterFiller.style.display=""}Pn.prototype.update=function(){return{bottom:0,right:0}},Pn.prototype.setScrollLeft=function(){},Pn.prototype.setScrollTop=function(){},Pn.prototype.clear=function(){};var jn={native:On,null:Pn};function Wn(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&S(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new jn[e.options.scrollbarStyle](function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),de(t,"mousedown",function(){e.state.focused&&setTimeout(function(){return e.display.input.focus()},0)}),t.setAttribute("cm-not-content","true")},function(t,i){"horizontal"==i?Tn(e,t):Bn(e,t)},e),e.display.scrollbars.addClass&&R(e.display.wrapper,e.display.scrollbars.addClass)}var Hn=0;function zn(e){e.curOp={cm:e,viewChanged:!1,startHeight:e.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++Hn,markArrays:null},function(e){ri?ri.ops.push(e):e.ownsGroup=ri={ops:[e],delayedCallbacks:[]}}(e.curOp)}function Vn(e){var t=e.curOp;t&&function(e,t){var i=e.ownsGroup;if(i)try{!function(e){var t=e.delayedCallbacks,i=0;do{for(;i<t.length;i++)t[i].call(null);for(var n=0;n<e.ops.length;n++){var r=e.ops[n];if(r.cursorActivityHandlers)for(;r.cursorActivityCalled<r.cursorActivityHandlers.length;)r.cursorActivityHandlers[r.cursorActivityCalled++].call(null,r.cm)}}while(i<t.length)}(i)}finally{ri=null,t(i)}}(t,function(e){for(var t=0;t<e.ops.length;t++)e.ops[t].cm.curOp=null;!function(e){for(var t=e.ops,i=0;i<t.length;i++)Un(t[i]);for(var n=0;n<t.length;n++)qn(t[n]);for(var r=0;r<t.length;r++)Kn(t[r]);for(var o=0;o<t.length;o++)Gn(t[o]);for(var s=0;s<t.length;s++)Yn(t[s])}(e)})}function Un(e){var t=e.cm,i=t.display;!function(e){var t=e.display;!t.scrollbarsClipped&&t.scroller.offsetWidth&&(t.nativeBarWidth=t.scroller.offsetWidth-t.scroller.clientWidth,t.heightForcer.style.height=xi(e)+"px",t.sizer.style.marginBottom=-t.nativeBarWidth+"px",t.sizer.style.borderRightWidth=xi(e)+"px",t.scrollbarsClipped=!0)}(t),e.updateMaxLine&&Vt(t),e.mustUpdate=e.viewChanged||e.forceUpdate||null!=e.scrollTop||e.scrollToPos&&(e.scrollToPos.from.line<i.viewFrom||e.scrollToPos.to.line>=i.viewTo)||i.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new ir(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function qn(e){e.updatedDisplay=e.mustUpdate&&nr(e.cm,e.update)}function Kn(e){var t=e.cm,i=t.display;e.updatedDisplay&&En(t),e.barMeasure=Mn(t),i.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=_i(t,i.maxLine,i.maxLine.text.length).left+3,t.display.sizerWidth=e.adjustWidthTo,e.barMeasure.scrollWidth=Math.max(i.scroller.clientWidth,i.sizer.offsetLeft+e.adjustWidthTo+xi(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,i.sizer.offsetLeft+e.adjustWidthTo-Fi(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=i.input.prepareSelection())}function Gn(e){var t=e.cm;null!=e.adjustWidthTo&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft<t.doc.scrollLeft&&Tn(t,Math.min(t.display.scroller.scrollLeft,e.maxScrollLeft),!0),t.display.maxLineChanged=!1);var i=e.focus&&e.focus==B();e.preparedSelection&&t.display.input.showSelection(e.preparedSelection,i),(e.updatedDisplay||e.startHeight!=t.doc.height)&&Nn(t,e.barMeasure),e.updatedDisplay&&ar(t,e.barMeasure),e.selectionChanged&&yn(t),t.state.focused&&e.updateInput&&t.display.input.reset(e.typing),i&&wn(e.cm)}function Yn(e){var t=e.cm,i=t.display,n=t.doc;if(e.updatedDisplay&&rr(t,e.update),null==i.wheelStartX||null==e.scrollTop&&null==e.scrollLeft&&!e.scrollToPos||(i.wheelStartX=i.wheelStartY=null),null!=e.scrollTop&&Rn(t,e.scrollTop,e.forceScroll),null!=e.scrollLeft&&Tn(t,e.scrollLeft,!0,!0),e.scrollToPos){var r=function(e,t,i,n){var r;null==n&&(n=0),e.options.lineWrapping||t!=i||(i="before"==t.sticky?Ze(t.line,t.ch+1,"before"):t,t=t.ch?Ze(t.line,"before"==t.sticky?t.ch-1:t.ch,"after"):t);for(var o=0;o<5;o++){var s=!1,a=Ui(e,t),l=i&&i!=t?Ui(e,i):a;r={left:Math.min(a.left,l.left),top:Math.min(a.top,l.top)-n,right:Math.max(a.left,l.left),bottom:Math.max(a.bottom,l.bottom)+n};var c=Sn(e,r),h=e.doc.scrollTop,u=e.doc.scrollLeft;if(null!=c.scrollTop&&(Bn(e,c.scrollTop),Math.abs(e.doc.scrollTop-h)>1&&(s=!0)),null!=c.scrollLeft&&(Tn(e,c.scrollLeft),Math.abs(e.doc.scrollLeft-u)>1&&(s=!0)),!s)break}return r}(t,st(n,e.scrollToPos.from),st(n,e.scrollToPos.to),e.scrollToPos.margin);!function(e,t){if(!ge(e,"scrollCursorIntoView")){var i=e.display,n=i.sizer.getBoundingClientRect(),r=null;if(t.top+n.top<0?r=!0:t.bottom+n.top>(window.innerHeight||document.documentElement.clientHeight)&&(r=!1),null!=r&&!p){var o=D("div","​",null,"position: absolute;\n top: "+(t.top-i.viewOffset-Ci(e.display))+"px;\n height: "+(t.bottom-t.top+xi(e)+i.barHeight)+"px;\n left: "+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(o),o.scrollIntoView(r),e.display.lineSpace.removeChild(o)}}}(t,r)}var o=e.maybeHiddenMarkers,s=e.maybeUnhiddenMarkers;if(o)for(var a=0;a<o.length;++a)o[a].lines.length||me(o[a],"hide");if(s)for(var l=0;l<s.length;++l)s[l].lines.length&&me(s[l],"unhide");i.wrapper.offsetHeight&&(n.scrollTop=t.display.scroller.scrollTop),e.changeObjs&&me(t,"changes",t,e.changeObjs),e.update&&e.update.finish()}function Qn(e,t){if(e.curOp)return t();zn(e);try{return t()}finally{Vn(e)}}function Xn(e,t){return function(){if(e.curOp)return t.apply(e,arguments);zn(e);try{return t.apply(e,arguments)}finally{Vn(e)}}}function Jn(e){return function(){if(this.curOp)return e.apply(this,arguments);zn(this);try{return e.apply(this,arguments)}finally{Vn(this)}}}function Zn(e){return function(){var t=this.cm;if(!t||t.curOp)return e.apply(this,arguments);zn(t);try{return e.apply(this,arguments)}finally{Vn(t)}}}function er(e,t){e.doc.highlightFrontier<e.display.viewTo&&e.state.highlight.set(t,O(tr,e))}function tr(e){var t=e.doc;if(!(t.highlightFrontier>=e.display.viewTo)){var i=+new Date+e.options.workTime,n=dt(e,t.highlightFrontier),r=[];t.iter(n.line,Math.min(t.first+t.size,e.display.viewTo+500),function(o){if(n.line>=e.display.viewFrom){var s=o.styles,a=o.text.length>e.options.maxHighlightLength?We(t.mode,n.state):null,l=ht(e,o,n,!0);a&&(n.state=a),o.styles=l.styles;var c=o.styleClasses,h=l.classes;h?o.styleClasses=h:c&&(o.styleClasses=null);for(var u=!s||s.length!=o.styles.length||c!=h&&(!c||!h||c.bgClass!=h.bgClass||c.textClass!=h.textClass),d=0;!u&&d<s.length;++d)u=s[d]!=o.styles[d];u&&r.push(n.line),o.stateAfter=n.save(),n.nextLine()}else o.text.length<=e.options.maxHighlightLength&&ft(e,o.text,n),o.stateAfter=n.line%5==0?n.save():null,n.nextLine();if(+new Date>i)return er(e,e.options.workDelay),!0}),t.highlightFrontier=n.line,t.modeFrontier=Math.max(t.modeFrontier,n.line),r.length&&Qn(e,function(){for(var t=0;t<r.length;t++)cn(e,r[t],"text")})}}var ir=function(e,t,i){var n=e.display;this.viewport=t,this.visible=Fn(n,e.doc,t),this.editorIsHidden=!n.wrapper.offsetWidth,this.wrapperHeight=n.wrapper.clientHeight,this.wrapperWidth=n.wrapper.clientWidth,this.oldDisplayWidth=Fi(e),this.force=i,this.dims=tn(e),this.events=[]};function nr(e,t){var i=e.display,n=e.doc;if(t.editorIsHidden)return hn(e),!1;if(!t.force&&t.visible.from>=i.viewFrom&&t.visible.to<=i.viewTo&&(null==i.updateLineNumbers||i.updateLineNumbers>=i.viewTo)&&i.renderedView==i.view&&0==dn(e))return!1;cr(e)&&(hn(e),t.dims=tn(e));var r=n.first+n.size,o=Math.max(t.visible.from-e.options.viewportMargin,n.first),s=Math.min(r,t.visible.to+e.options.viewportMargin);i.viewFrom<o&&o-i.viewFrom<20&&(o=Math.max(n.first,i.viewFrom)),i.viewTo>s&&i.viewTo-s<20&&(s=Math.min(r,i.viewTo)),Ct&&(o=Nt(e.doc,o),s=It(e.doc,s));var a=o!=i.viewFrom||s!=i.viewTo||i.lastWrapHeight!=t.wrapperHeight||i.lastWrapWidth!=t.wrapperWidth;!function(e,t,i){var n=e.display;0==n.view.length||t>=n.viewTo||i<=n.viewFrom?(n.view=ni(e,t,i),n.viewFrom=t):(n.viewFrom>t?n.view=ni(e,t,n.viewFrom).concat(n.view):n.viewFrom<t&&(n.view=n.view.slice(an(e,t))),n.viewFrom=t,n.viewTo<i?n.view=n.view.concat(ni(e,n.viewTo,i)):n.viewTo>i&&(n.view=n.view.slice(0,an(e,i)))),n.viewTo=i}(e,o,s),i.viewOffset=Ht(Ue(e.doc,i.viewFrom)),e.display.mover.style.top=i.viewOffset+"px";var c=dn(e);if(!a&&0==c&&!t.force&&i.renderedView==i.view&&(null==i.updateLineNumbers||i.updateLineNumbers>=i.viewTo))return!1;var h=function(e){if(e.hasFocus())return null;var t=B();if(!t||!L(e.display.lineDiv,t))return null;var i={activeElt:t};if(window.getSelection){var n=window.getSelection();n.anchorNode&&n.extend&&L(e.display.lineDiv,n.anchorNode)&&(i.anchorNode=n.anchorNode,i.anchorOffset=n.anchorOffset,i.focusNode=n.focusNode,i.focusOffset=n.focusOffset)}return i}(e);return c>4&&(i.lineDiv.style.display="none"),function(e,t,i){var n=e.display,r=e.options.lineNumbers,o=n.lineDiv,s=o.firstChild;function a(t){var i=t.nextSibling;return l&&y&&e.display.currentWheelTarget==t?t.style.display="none":t.parentNode.removeChild(t),i}for(var c=n.view,h=n.viewFrom,u=0;u<c.length;u++){var d=c[u];if(d.hidden);else if(d.node&&d.node.parentNode==o){for(;s!=d.node;)s=a(s);var f=r&&null!=t&&t<=h&&d.lineNumber;d.changes&&(j(d.changes,"gutter")>-1&&(f=!1),li(e,d,h,i)),f&&(k(d.lineNumber),d.lineNumber.appendChild(document.createTextNode(Je(e.options,h)))),s=d.node.nextSibling}else{var p=mi(e,d,h,i);o.insertBefore(p,s)}h+=d.size}for(;s;)s=a(s)}(e,i.updateLineNumbers,t.dims),c>4&&(i.lineDiv.style.display=""),i.renderedView=i.view,function(e){if(e&&e.activeElt&&e.activeElt!=B()&&(e.activeElt.focus(),!/^(INPUT|TEXTAREA)$/.test(e.activeElt.nodeName)&&e.anchorNode&&L(document.body,e.anchorNode)&&L(document.body,e.focusNode))){var t=window.getSelection(),i=document.createRange();i.setEnd(e.anchorNode,e.anchorOffset),i.collapse(!1),t.removeAllRanges(),t.addRange(i),t.extend(e.focusNode,e.focusOffset)}}(h),k(i.cursorDiv),k(i.selectionDiv),i.gutters.style.height=i.sizer.style.minHeight=0,a&&(i.lastWrapHeight=t.wrapperHeight,i.lastWrapWidth=t.wrapperWidth,er(e,400)),i.updateLineNumbers=null,!0}function rr(e,t){for(var i=t.viewport,n=!0;;n=!1){if(n&&e.options.lineWrapping&&t.oldDisplayWidth!=Fi(e))n&&(t.visible=Fn(e.display,e.doc,i));else if(i&&null!=i.top&&(i={top:Math.min(e.doc.height+Ai(e.display)-Si(e),i.top)}),t.visible=Fn(e.display,e.doc,i),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break;if(!nr(e,t))break;En(e);var r=Mn(e);fn(e),Nn(e,r),ar(e,r),t.force=!1}t.signal(e,"update",e),e.display.viewFrom==e.display.reportedViewFrom&&e.display.viewTo==e.display.reportedViewTo||(t.signal(e,"viewportChange",e,e.display.viewFrom,e.display.viewTo),e.display.reportedViewFrom=e.display.viewFrom,e.display.reportedViewTo=e.display.viewTo)}function or(e,t){var i=new ir(e,t);if(nr(e,i)){En(e),rr(e,i);var n=Mn(e);fn(e),Nn(e,n),ar(e,n),i.finish()}}function sr(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px",si(e,"gutterChanged",e)}function ar(e,t){e.display.sizer.style.minHeight=t.docHeight+"px",e.display.heightForcer.style.top=t.docHeight+"px",e.display.gutters.style.height=t.docHeight+e.display.barHeight+xi(e)+"px"}function lr(e){var t=e.display,i=t.view;if(t.alignWidgets||t.gutters.firstChild&&e.options.fixedGutter){for(var n=nn(t)-t.scroller.scrollLeft+e.doc.scrollLeft,r=t.gutters.offsetWidth,o=n+"px",s=0;s<i.length;s++)if(!i[s].hidden){e.options.fixedGutter&&(i[s].gutter&&(i[s].gutter.style.left=o),i[s].gutterBackground&&(i[s].gutterBackground.style.left=o));var a=i[s].alignable;if(a)for(var l=0;l<a.length;l++)a[l].style.left=o}e.options.fixedGutter&&(t.gutters.style.left=n+r+"px")}}function cr(e){if(!e.options.lineNumbers)return!1;var t=e.doc,i=Je(e.options,t.first+t.size-1),n=e.display;if(i.length!=n.lineNumChars){var r=n.measure.appendChild(D("div",[D("div",i)],"CodeMirror-linenumber CodeMirror-gutter-elt")),o=r.firstChild.offsetWidth,s=r.offsetWidth-o;return n.lineGutter.style.width="",n.lineNumInnerWidth=Math.max(o,n.lineGutter.offsetWidth-s)+1,n.lineNumWidth=n.lineNumInnerWidth+s,n.lineNumChars=n.lineNumInnerWidth?i.length:-1,n.lineGutter.style.width=n.lineNumWidth+"px",sr(e.display),!0}return!1}function hr(e,t){for(var i=[],n=!1,r=0;r<e.length;r++){var o=e[r],s=null;if("string"!=typeof o&&(s=o.style,o=o.className),"CodeMirror-linenumbers"==o){if(!t)continue;n=!0}i.push({className:o,style:s})}return t&&!n&&i.push({className:"CodeMirror-linenumbers",style:null}),i}function ur(e){var t=e.gutters,i=e.gutterSpecs;k(t),e.lineGutter=null;for(var n=0;n<i.length;++n){var r=i[n],o=r.className,s=r.style,a=t.appendChild(D("div",null,"CodeMirror-gutter "+o));s&&(a.style.cssText=s),"CodeMirror-linenumbers"==o&&(e.lineGutter=a,a.style.width=(e.lineNumWidth||1)+"px")}t.style.display=i.length?"":"none",sr(e)}function dr(e){ur(e.display),ln(e),lr(e)}ir.prototype.signal=function(e,t){ye(e,t)&&this.events.push(arguments)},ir.prototype.finish=function(){for(var e=0;e<this.events.length;e++)me.apply(null,this.events[e])};var fr=0,pr=null;function mr(e){var t=e.wheelDeltaX,i=e.wheelDeltaY;return null==t&&e.detail&&e.axis==e.HORIZONTAL_AXIS&&(t=e.detail),null==i&&e.detail&&e.axis==e.VERTICAL_AXIS?i=e.detail:null==i&&(i=e.wheelDelta),{x:t,y:i}}function gr(e){var t=mr(e);return t.x*=pr,t.y*=pr,t}function vr(e,t){var n=mr(t),r=n.x,o=n.y,s=pr;0===t.deltaMode&&(r=t.deltaX,o=t.deltaY,s=1);var a=e.display,c=a.scroller,h=c.scrollWidth>c.clientWidth,d=c.scrollHeight>c.clientHeight;if(r&&h||o&&d){if(o&&y&&l)e:for(var f=t.target,p=a.view;f!=c;f=f.parentNode)for(var m=0;m<p.length;m++)if(p[m].node==f){e.display.currentWheelTarget=f;break e}if(r&&!i&&!u&&null!=s)return o&&d&&Bn(e,Math.max(0,c.scrollTop+o*s)),Tn(e,Math.max(0,c.scrollLeft+r*s)),(!o||o&&d)&&be(t),void(a.wheelStartX=null);if(o&&null!=s){var g=o*s,v=e.doc.scrollTop,w=v+a.wrapper.clientHeight;g<0?v=Math.max(0,v+g-50):w=Math.min(e.doc.height,w+g+50),or(e,{top:v,bottom:w})}fr<20&&0!==t.deltaMode&&(null==a.wheelStartX?(a.wheelStartX=c.scrollLeft,a.wheelStartY=c.scrollTop,a.wheelDX=r,a.wheelDY=o,setTimeout(function(){if(null!=a.wheelStartX){var e=c.scrollLeft-a.wheelStartX,t=c.scrollTop-a.wheelStartY,i=t&&a.wheelDY&&t/a.wheelDY||e&&a.wheelDX&&e/a.wheelDX;a.wheelStartX=a.wheelStartY=null,i&&(pr=(pr*fr+i)/(fr+1),++fr)}},200)):(a.wheelDX+=r,a.wheelDY+=o))}}s?pr=-.53:i?pr=15:h?pr=-.7:d&&(pr=-1/3);var yr=function(e,t){this.ranges=e,this.primIndex=t};yr.prototype.primary=function(){return this.ranges[this.primIndex]},yr.prototype.equals=function(e){if(e==this)return!0;if(e.primIndex!=this.primIndex||e.ranges.length!=this.ranges.length)return!1;for(var t=0;t<this.ranges.length;t++){var i=this.ranges[t],n=e.ranges[t];if(!tt(i.anchor,n.anchor)||!tt(i.head,n.head))return!1}return!0},yr.prototype.deepCopy=function(){for(var e=[],t=0;t<this.ranges.length;t++)e[t]=new wr(it(this.ranges[t].anchor),it(this.ranges[t].head));return new yr(e,this.primIndex)},yr.prototype.somethingSelected=function(){for(var e=0;e<this.ranges.length;e++)if(!this.ranges[e].empty())return!0;return!1},yr.prototype.contains=function(e,t){t||(t=e);for(var i=0;i<this.ranges.length;i++){var n=this.ranges[i];if(et(t,n.from())>=0&&et(e,n.to())<=0)return i}return-1};var wr=function(e,t){this.anchor=e,this.head=t};function br(e,t,i){var n=e&&e.options.selectionsMayTouch,r=t[i];t.sort(function(e,t){return et(e.from(),t.from())}),i=j(t,r);for(var o=1;o<t.length;o++){var s=t[o],a=t[o-1],l=et(a.to(),s.from());if(n&&!s.empty()?l>0:l>=0){var c=rt(a.from(),s.from()),h=nt(a.to(),s.to()),u=a.empty()?s.from()==s.head:a.from()==a.head;o<=i&&--i,t.splice(--o,2,new wr(u?h:c,u?c:h))}}return new yr(t,i)}function Cr(e,t){return new yr([new wr(e,t||e)],0)}function Ar(e){return e.text?Ze(e.from.line+e.text.length-1,Y(e.text).length+(1==e.text.length?e.from.ch:0)):e.to}function Er(e,t){if(et(e,t.from)<0)return e;if(et(e,t.to)<=0)return Ar(t);var i=e.line+t.text.length-(t.to.line-t.from.line)-1,n=e.ch;return e.line==t.to.line&&(n+=Ar(t).ch-t.to.ch),Ze(i,n)}function xr(e,t){for(var i=[],n=0;n<e.sel.ranges.length;n++){var r=e.sel.ranges[n];i.push(new wr(Er(r.anchor,t),Er(r.head,t)))}return br(e.cm,i,e.sel.primIndex)}function Fr(e,t,i){return e.line==t.line?Ze(i.line,e.ch-t.ch+i.ch):Ze(i.line+(e.line-t.line),e.ch)}function Sr(e){e.doc.mode=Ne(e.options,e.doc.modeOption),kr(e)}function kr(e){e.doc.iter(function(e){e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null)}),e.doc.modeFrontier=e.doc.highlightFrontier=e.doc.first,er(e,100),e.state.modeGen++,e.curOp&&ln(e)}function _r(e,t){return 0==t.from.ch&&0==t.to.ch&&""==Y(t.text)&&(!e.cm||e.cm.options.wholeLineUpdateBefore)}function Dr(e,t,i,n){function r(e){return i?i[e]:null}function o(e,i,r){!function(e,t,i,n){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),null!=e.order&&(e.order=null),kt(e),_t(e,i);var r=n?n(e):1;r!=e.height&&Ge(e,r)}(e,i,r,n),si(e,"change",e,t)}function s(e,t){for(var i=[],o=e;o<t;++o)i.push(new Ut(c[o],r(o),n));return i}var a=t.from,l=t.to,c=t.text,h=Ue(e,a.line),u=Ue(e,l.line),d=Y(c),f=r(c.length-1),p=l.line-a.line;if(t.full)e.insert(0,s(0,c.length)),e.remove(c.length,e.size-c.length);else if(_r(e,t)){var m=s(0,c.length-1);o(u,u.text,f),p&&e.remove(a.line,p),m.length&&e.insert(a.line,m)}else if(h==u)if(1==c.length)o(h,h.text.slice(0,a.ch)+d+h.text.slice(l.ch),f);else{var g=s(1,c.length-1);g.push(new Ut(d+h.text.slice(l.ch),f,n)),o(h,h.text.slice(0,a.ch)+c[0],r(0)),e.insert(a.line+1,g)}else if(1==c.length)o(h,h.text.slice(0,a.ch)+c[0]+u.text.slice(l.ch),r(0)),e.remove(a.line+1,p);else{o(h,h.text.slice(0,a.ch)+c[0],r(0)),o(u,d+u.text.slice(l.ch),f);var v=s(1,c.length-1);p>1&&e.remove(a.line+1,p-1),e.insert(a.line+1,v)}si(e,"change",e,t)}function $r(e,t,i){!function e(n,r,o){if(n.linked)for(var s=0;s<n.linked.length;++s){var a=n.linked[s];if(a.doc!=r){var l=o&&a.sharedHist;i&&!l||(t(a.doc,l),e(a.doc,n,l))}}}(e,null,!0)}function Lr(e,t){if(t.cm)throw new Error("This document is already in use.");e.doc=t,t.cm=e,on(e),Sr(e),Br(e),e.options.direction=t.direction,e.options.lineWrapping||Vt(e),e.options.mode=t.modeOption,ln(e)}function Br(e){("rtl"==e.doc.direction?R:S)(e.display.lineDiv,"CodeMirror-rtl")}function Rr(e){this.done=[],this.undone=[],this.undoDepth=e?e.undoDepth:1/0,this.lastModTime=this.lastSelTime=0,this.lastOp=this.lastSelOp=null,this.lastOrigin=this.lastSelOrigin=null,this.generation=this.maxGeneration=e?e.maxGeneration:1}function Tr(e,t){var i={from:it(t.from),to:Ar(t),text:qe(e,t.from,t.to)};return Ir(e,i,t.from.line,t.to.line+1),$r(e,function(e){return Ir(e,i,t.from.line,t.to.line+1)},!0),i}function Mr(e){for(;e.length;){var t=Y(e);if(!t.ranges)break;e.pop()}}function Or(e,t,i,n){var r=e.history;r.undone.length=0;var o,s,a=+new Date;if((r.lastOp==n||r.lastOrigin==t.origin&&t.origin&&("+"==t.origin.charAt(0)&&r.lastModTime>a-(e.cm?e.cm.options.historyEventDelay:500)||"*"==t.origin.charAt(0)))&&(o=function(e,t){return t?(Mr(e.done),Y(e.done)):e.done.length&&!Y(e.done).ranges?Y(e.done):e.done.length>1&&!e.done[e.done.length-2].ranges?(e.done.pop(),Y(e.done)):void 0}(r,r.lastOp==n)))s=Y(o.changes),0==et(t.from,t.to)&&0==et(t.from,s.to)?s.to=Ar(t):o.changes.push(Tr(e,t));else{var l=Y(r.done);for(l&&l.ranges||Nr(e.sel,r.done),o={changes:[Tr(e,t)],generation:r.generation},r.done.push(o);r.done.length>r.undoDepth;)r.done.shift(),r.done[0].ranges||r.done.shift()}r.done.push(i),r.generation=++r.maxGeneration,r.lastModTime=r.lastSelTime=a,r.lastOp=r.lastSelOp=n,r.lastOrigin=r.lastSelOrigin=t.origin,s||me(e,"historyAdded")}function Pr(e,t,i,n){var r=e.history,o=n&&n.origin;i==r.lastSelOp||o&&r.lastSelOrigin==o&&(r.lastModTime==r.lastSelTime&&r.lastOrigin==o||function(e,t,i,n){var r=t.charAt(0);return"*"==r||"+"==r&&i.ranges.length==n.ranges.length&&i.somethingSelected()==n.somethingSelected()&&new Date-e.history.lastSelTime<=(e.cm?e.cm.options.historyEventDelay:500)}(e,o,Y(r.done),t))?r.done[r.done.length-1]=t:Nr(t,r.done),r.lastSelTime=+new Date,r.lastSelOrigin=o,r.lastSelOp=i,n&&!1!==n.clearRedo&&Mr(r.undone)}function Nr(e,t){var i=Y(t);i&&i.ranges&&i.equals(e)||t.push(e)}function Ir(e,t,i,n){var r=t["spans_"+e.id],o=0;e.iter(Math.max(e.first,i),Math.min(e.first+e.size,n),function(i){i.markedSpans&&((r||(r=t["spans_"+e.id]={}))[o]=i.markedSpans),++o})}function jr(e){if(!e)return null;for(var t,i=0;i<e.length;++i)e[i].marker.explicitlyCleared?t||(t=e.slice(0,i)):t&&t.push(e[i]);return t?t.length?t:null:e}function Wr(e,t){var i=function(e,t){var i=t["spans_"+e.id];if(!i)return null;for(var n=[],r=0;r<t.text.length;++r)n.push(jr(i[r]));return n}(e,t),n=Ft(e,t);if(!i)return n;if(!n)return i;for(var r=0;r<i.length;++r){var o=i[r],s=n[r];if(o&&s)e:for(var a=0;a<s.length;++a){for(var l=s[a],c=0;c<o.length;++c)if(o[c].marker==l.marker)continue e;o.push(l)}else s&&(i[r]=s)}return i}function Hr(e,t,i){for(var n=[],r=0;r<e.length;++r){var o=e[r];if(o.ranges)n.push(i?yr.prototype.deepCopy.call(o):o);else{var s=o.changes,a=[];n.push({changes:a});for(var l=0;l<s.length;++l){var c=s[l],h=void 0;if(a.push({from:c.from,to:c.to,text:c.text}),t)for(var u in c)(h=u.match(/^spans_(\d+)$/))&&j(t,Number(h[1]))>-1&&(Y(a)[u]=c[u],delete c[u])}}}return n}function zr(e,t,i,n){if(n){var r=e.anchor;if(i){var o=et(t,r)<0;o!=et(i,r)<0?(r=t,t=i):o!=et(t,i)<0&&(t=i)}return new wr(r,t)}return new wr(i||t,t)}function Vr(e,t,i,n,r){null==r&&(r=e.cm&&(e.cm.display.shift||e.extend)),Yr(e,new yr([zr(e.sel.primary(),t,i,r)],0),n)}function Ur(e,t,i){for(var n=[],r=e.cm&&(e.cm.display.shift||e.extend),o=0;o<e.sel.ranges.length;o++)n[o]=zr(e.sel.ranges[o],t[o],null,r);var s=br(e.cm,n,e.sel.primIndex);Yr(e,s,i)}function qr(e,t,i,n){var r=e.sel.ranges.slice(0);r[t]=i,Yr(e,br(e.cm,r,e.sel.primIndex),n)}function Kr(e,t,i,n){Yr(e,Cr(t,i),n)}function Gr(e,t,i){var n=e.history.done,r=Y(n);r&&r.ranges?(n[n.length-1]=t,Qr(e,t,i)):Yr(e,t,i)}function Yr(e,t,i){Qr(e,t,i),Pr(e,e.sel,e.cm?e.cm.curOp.id:NaN,i)}function Qr(e,t,i){(ye(e,"beforeSelectionChange")||e.cm&&ye(e.cm,"beforeSelectionChange"))&&(t=function(e,t,i){var n={ranges:t.ranges,update:function(t){this.ranges=[];for(var i=0;i<t.length;i++)this.ranges[i]=new wr(st(e,t[i].anchor),st(e,t[i].head))},origin:i&&i.origin};return me(e,"beforeSelectionChange",e,n),e.cm&&me(e.cm,"beforeSelectionChange",e.cm,n),n.ranges!=t.ranges?br(e.cm,n.ranges,n.ranges.length-1):t}(e,t,i));var n=i&&i.bias||(et(t.primary().head,e.sel.primary().head)<0?-1:1);Xr(e,Zr(e,t,n,!0)),i&&!1===i.scroll||!e.cm||"nocursor"==e.cm.getOption("readOnly")||_n(e.cm)}function Xr(e,t){t.equals(e.sel)||(e.sel=t,e.cm&&(e.cm.curOp.updateInput=1,e.cm.curOp.selectionChanged=!0,ve(e.cm)),si(e,"cursorActivity",e))}function Jr(e){Xr(e,Zr(e,e.sel,null,!1))}function Zr(e,t,i,n){for(var r,o=0;o<t.ranges.length;o++){var s=t.ranges[o],a=t.ranges.length==e.sel.ranges.length&&e.sel.ranges[o],l=to(e,s.anchor,a&&a.anchor,i,n),c=to(e,s.head,a&&a.head,i,n);(r||l!=s.anchor||c!=s.head)&&(r||(r=t.ranges.slice(0,o)),r[o]=new wr(l,c))}return r?br(e.cm,r,t.primIndex):t}function eo(e,t,i,n,r){var o=Ue(e,t.line);if(o.markedSpans)for(var s=0;s<o.markedSpans.length;++s){var a=o.markedSpans[s],l=a.marker,c="selectLeft"in l?!l.selectLeft:l.inclusiveLeft,h="selectRight"in l?!l.selectRight:l.inclusiveRight;if((null==a.from||(c?a.from<=t.ch:a.from<t.ch))&&(null==a.to||(h?a.to>=t.ch:a.to>t.ch))){if(r&&(me(l,"beforeCursorEnter"),l.explicitlyCleared)){if(o.markedSpans){--s;continue}break}if(!l.atomic)continue;if(i){var u=l.find(n<0?1:-1),d=void 0;if((n<0?h:c)&&(u=io(e,u,-n,u&&u.line==t.line?o:null)),u&&u.line==t.line&&(d=et(u,i))&&(n<0?d<0:d>0))return eo(e,u,t,n,r)}var f=l.find(n<0?-1:1);return(n<0?c:h)&&(f=io(e,f,n,f.line==t.line?o:null)),f?eo(e,f,t,n,r):null}}return t}function to(e,t,i,n,r){var o=n||1,s=eo(e,t,i,o,r)||!r&&eo(e,t,i,o,!0)||eo(e,t,i,-o,r)||!r&&eo(e,t,i,-o,!0);return s||(e.cantEdit=!0,Ze(e.first,0))}function io(e,t,i,n){return i<0&&0==t.ch?t.line>e.first?st(e,Ze(t.line-1)):null:i>0&&t.ch==(n||Ue(e,t.line)).text.length?t.line<e.first+e.size-1?Ze(t.line+1,0):null:new Ze(t.line,t.ch+i)}function no(e){e.setSelection(Ze(e.firstLine(),0),Ze(e.lastLine()),z)}function ro(e,t,i){var n={canceled:!1,from:t.from,to:t.to,text:t.text,origin:t.origin,cancel:function(){return n.canceled=!0}};return i&&(n.update=function(t,i,r,o){t&&(n.from=st(e,t)),i&&(n.to=st(e,i)),r&&(n.text=r),void 0!==o&&(n.origin=o)}),me(e,"beforeChange",e,n),e.cm&&me(e.cm,"beforeChange",e.cm,n),n.canceled?(e.cm&&(e.cm.curOp.updateInput=2),null):{from:n.from,to:n.to,text:n.text,origin:n.origin}}function oo(e,t,i){if(e.cm){if(!e.cm.curOp)return Xn(e.cm,oo)(e,t,i);if(e.cm.state.suppressEdits)return}if(!(ye(e,"beforeChange")||e.cm&&ye(e.cm,"beforeChange"))||(t=ro(e,t,!0))){var n=bt&&!i&&function(e,t,i){var n=null;if(e.iter(t.line,i.line+1,function(e){if(e.markedSpans)for(var t=0;t<e.markedSpans.length;++t){var i=e.markedSpans[t].marker;!i.readOnly||n&&-1!=j(n,i)||(n||(n=[])).push(i)}}),!n)return null;for(var r=[{from:t,to:i}],o=0;o<n.length;++o)for(var s=n[o],a=s.find(0),l=0;l<r.length;++l){var c=r[l];if(!(et(c.to,a.from)<0||et(c.from,a.to)>0)){var h=[l,1],u=et(c.from,a.from),d=et(c.to,a.to);(u<0||!s.inclusiveLeft&&!u)&&h.push({from:c.from,to:a.from}),(d>0||!s.inclusiveRight&&!d)&&h.push({from:a.to,to:c.to}),r.splice.apply(r,h),l+=h.length-3}}return r}(e,t.from,t.to);if(n)for(var r=n.length-1;r>=0;--r)so(e,{from:n[r].from,to:n[r].to,text:r?[""]:t.text,origin:t.origin});else so(e,t)}}function so(e,t){if(1!=t.text.length||""!=t.text[0]||0!=et(t.from,t.to)){var i=xr(e,t);Or(e,t,i,e.cm?e.cm.curOp.id:NaN),co(e,t,i,Ft(e,t));var n=[];$r(e,function(e,i){i||-1!=j(n,e.history)||(po(e.history,t),n.push(e.history)),co(e,t,null,Ft(e,t))})}}function ao(e,t,i){var n=e.cm&&e.cm.state.suppressEdits;if(!n||i){for(var r,o=e.history,s=e.sel,a="undo"==t?o.done:o.undone,l="undo"==t?o.undone:o.done,c=0;c<a.length&&(r=a[c],i?!r.ranges||r.equals(e.sel):r.ranges);c++);if(c!=a.length){for(o.lastOrigin=o.lastSelOrigin=null;;){if(!(r=a.pop()).ranges){if(n)return void a.push(r);break}if(Nr(r,l),i&&!r.equals(e.sel))return void Yr(e,r,{clearRedo:!1});s=r}var h=[];Nr(s,l),l.push({changes:h,generation:o.generation}),o.generation=r.generation||++o.maxGeneration;for(var u=ye(e,"beforeChange")||e.cm&&ye(e.cm,"beforeChange"),d=function(i){var n=r.changes[i];if(n.origin=t,u&&!ro(e,n,!1))return a.length=0,{};h.push(Tr(e,n));var o=i?xr(e,n):Y(a);co(e,n,o,Wr(e,n)),!i&&e.cm&&e.cm.scrollIntoView({from:n.from,to:Ar(n)});var s=[];$r(e,function(e,t){t||-1!=j(s,e.history)||(po(e.history,n),s.push(e.history)),co(e,n,null,Wr(e,n))})},f=r.changes.length-1;f>=0;--f){var p=d(f);if(p)return p.v}}}}function lo(e,t){if(0!=t&&(e.first+=t,e.sel=new yr(Q(e.sel.ranges,function(e){return new wr(Ze(e.anchor.line+t,e.anchor.ch),Ze(e.head.line+t,e.head.ch))}),e.sel.primIndex),e.cm)){ln(e.cm,e.first,e.first-t,t);for(var i=e.cm.display,n=i.viewFrom;n<i.viewTo;n++)cn(e.cm,n,"gutter")}}function co(e,t,i,n){if(e.cm&&!e.cm.curOp)return Xn(e.cm,co)(e,t,i,n);if(t.to.line<e.first)lo(e,t.text.length-1-(t.to.line-t.from.line));else if(!(t.from.line>e.lastLine())){if(t.from.line<e.first){var r=t.text.length-1-(e.first-t.from.line);lo(e,r),t={from:Ze(e.first,0),to:Ze(t.to.line+r,t.to.ch),text:[Y(t.text)],origin:t.origin}}var o=e.lastLine();t.to.line>o&&(t={from:t.from,to:Ze(o,Ue(e,o).text.length),text:[t.text[0]],origin:t.origin}),t.removed=qe(e,t.from,t.to),i||(i=xr(e,t)),e.cm?function(e,t,i){var n=e.doc,r=e.display,o=t.from,s=t.to,a=!1,l=o.line;e.options.lineWrapping||(l=Ye(Pt(Ue(n,o.line))),n.iter(l,s.line+1,function(e){if(e==r.maxLine)return a=!0,!0})),n.sel.contains(t.from,t.to)>-1&&ve(e),Dr(n,t,i,rn(e)),e.options.lineWrapping||(n.iter(l,o.line+t.text.length,function(e){var t=zt(e);t>r.maxLineLength&&(r.maxLine=e,r.maxLineLength=t,r.maxLineChanged=!0,a=!1)}),a&&(e.curOp.updateMaxLine=!0)),function(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontier<t-10)){for(var i=e.first,n=t-1;n>i;n--){var r=Ue(e,n).stateAfter;if(r&&(!(r instanceof lt)||n+r.lookAhead<t)){i=n+1;break}}e.highlightFrontier=Math.min(e.highlightFrontier,i)}}(n,o.line),er(e,400);var c=t.text.length-(s.line-o.line)-1;t.full?ln(e):o.line!=s.line||1!=t.text.length||_r(e.doc,t)?ln(e,o.line,s.line+1,c):cn(e,o.line,"text");var h=ye(e,"changes"),u=ye(e,"change");if(u||h){var d={from:o,to:s,text:t.text,removed:t.removed,origin:t.origin};u&&si(e,"change",e,d),h&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(d)}e.display.selForContextMenu=null}(e.cm,t,n):Dr(e,t,n),Qr(e,i,z),e.cantEdit&&to(e,Ze(e.firstLine(),0))&&(e.cantEdit=!1)}}function ho(e,t,i,n,r){var o;n||(n=i),et(n,i)<0&&(i=(o=[n,i])[0],n=o[1]),"string"==typeof t&&(t=e.splitLines(t)),oo(e,{from:i,to:n,text:t,origin:r})}function uo(e,t,i,n){i<e.line?e.line+=n:t<e.line&&(e.line=t,e.ch=0)}function fo(e,t,i,n){for(var r=0;r<e.length;++r){var o=e[r],s=!0;if(o.ranges){o.copied||((o=e[r]=o.deepCopy()).copied=!0);for(var a=0;a<o.ranges.length;a++)uo(o.ranges[a].anchor,t,i,n),uo(o.ranges[a].head,t,i,n)}else{for(var l=0;l<o.changes.length;++l){var c=o.changes[l];if(i<c.from.line)c.from=Ze(c.from.line+n,c.from.ch),c.to=Ze(c.to.line+n,c.to.ch);else if(t<=c.to.line){s=!1;break}}s||(e.splice(0,r+1),r=0)}}}function po(e,t){var i=t.from.line,n=t.to.line,r=t.text.length-(n-i)-1;fo(e.done,i,n,r),fo(e.undone,i,n,r)}function mo(e,t,i,n){var r=t,o=t;return"number"==typeof t?o=Ue(e,ot(e,t)):r=Ye(t),null==r?null:(n(o,r)&&e.cm&&cn(e.cm,r,i),o)}function go(e){this.lines=e,this.parent=null;for(var t=0,i=0;i<e.length;++i)e[i].parent=this,t+=e[i].height;this.height=t}function vo(e){this.children=e;for(var t=0,i=0,n=0;n<e.length;++n){var r=e[n];t+=r.chunkSize(),i+=r.height,r.parent=this}this.size=t,this.height=i,this.parent=null}wr.prototype.from=function(){return rt(this.anchor,this.head)},wr.prototype.to=function(){return nt(this.anchor,this.head)},wr.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch},go.prototype={chunkSize:function(){return this.lines.length},removeInner:function(e,t){for(var i=e,n=e+t;i<n;++i){var r=this.lines[i];this.height-=r.height,qt(r),si(r,"delete")}this.lines.splice(e,t)},collapse:function(e){e.push.apply(e,this.lines)},insertInner:function(e,t,i){this.height+=i,this.lines=this.lines.slice(0,e).concat(t).concat(this.lines.slice(e));for(var n=0;n<t.length;++n)t[n].parent=this},iterN:function(e,t,i){for(var n=e+t;e<n;++e)if(i(this.lines[e]))return!0}},vo.prototype={chunkSize:function(){return this.size},removeInner:function(e,t){this.size-=t;for(var i=0;i<this.children.length;++i){var n=this.children[i],r=n.chunkSize();if(e<r){var o=Math.min(t,r-e),s=n.height;if(n.removeInner(e,o),this.height-=s-n.height,r==o&&(this.children.splice(i--,1),n.parent=null),0==(t-=o))break;e=0}else e-=r}if(this.size-t<25&&(this.children.length>1||!(this.children[0]instanceof go))){var a=[];this.collapse(a),this.children=[new go(a)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t<this.children.length;++t)this.children[t].collapse(e)},insertInner:function(e,t,i){this.size+=t.length,this.height+=i;for(var n=0;n<this.children.length;++n){var r=this.children[n],o=r.chunkSize();if(e<=o){if(r.insertInner(e,t,i),r.lines&&r.lines.length>50){for(var s=r.lines.length%25+25,a=s;a<r.lines.length;){var l=new go(r.lines.slice(a,a+=25));r.height-=l.height,this.children.splice(++n,0,l),l.parent=this}r.lines=r.lines.slice(0,s),this.maybeSpill()}break}e-=o}},maybeSpill:function(){if(!(this.children.length<=10)){var e=this;do{var t=e.children.splice(e.children.length-5,5),i=new vo(t);if(e.parent){e.size-=i.size,e.height-=i.height;var n=j(e.parent.children,e);e.parent.children.splice(n+1,0,i)}else{var r=new vo(e.children);r.parent=e,e.children=[r,i],e=r}i.parent=e.parent}while(e.children.length>10);e.parent.maybeSpill()}},iterN:function(e,t,i){for(var n=0;n<this.children.length;++n){var r=this.children[n],o=r.chunkSize();if(e<o){var s=Math.min(t,o-e);if(r.iterN(e,s,i))return!0;if(0==(t-=s))break;e=0}else e-=o}}};var yo=function(e,t,i){if(i)for(var n in i)i.hasOwnProperty(n)&&(this[n]=i[n]);this.doc=e,this.node=t};function wo(e,t,i){Ht(t)<(e.curOp&&e.curOp.scrollTop||e.doc.scrollTop)&&kn(e,i)}yo.prototype.clear=function(){var e=this.doc.cm,t=this.line.widgets,i=this.line,n=Ye(i);if(null!=n&&t){for(var r=0;r<t.length;++r)t[r]==this&&t.splice(r--,1);t.length||(i.widgets=null);var o=wi(this);Ge(i,Math.max(0,i.height-o)),e&&(Qn(e,function(){wo(e,i,-o),cn(e,n,"widget")}),si(e,"lineWidgetCleared",e,this,n))}},yo.prototype.changed=function(){var e=this,t=this.height,i=this.doc.cm,n=this.line;this.height=null;var r=wi(this)-t;r&&(jt(this.doc,n)||Ge(n,n.height+r),i&&Qn(i,function(){i.curOp.forceUpdate=!0,wo(i,n,r),si(i,"lineWidgetChanged",i,e,Ye(n))}))},we(yo);var bo=0,Co=function(e,t){this.lines=[],this.type=t,this.doc=e,this.id=++bo};function Ao(e,t,i,n,r){if(n&&n.shared)return function(e,t,i,n,r){(n=P(n)).shared=!1;var o=[Ao(e,t,i,n,r)],s=o[0],a=n.widgetNode;return $r(e,function(e){a&&(n.widgetNode=a.cloneNode(!0)),o.push(Ao(e,st(e,t),st(e,i),n,r));for(var l=0;l<e.linked.length;++l)if(e.linked[l].isParent)return;s=Y(o)}),new Eo(o,s)}(e,t,i,n,r);if(e.cm&&!e.cm.curOp)return Xn(e.cm,Ao)(e,t,i,n,r);var o=new Co(e,r),s=et(t,i);if(n&&P(n,o,!1),s>0||0==s&&!1!==o.clearWhenEmpty)return o;if(o.replacedWith&&(o.collapsed=!0,o.widgetNode=$("span",[o.replacedWith],"CodeMirror-widget"),n.handleMouseEvents||o.widgetNode.setAttribute("cm-ignore-events","true"),n.insertLeft&&(o.widgetNode.insertLeft=!0)),o.collapsed){if(Ot(e,t.line,t,i,o)||t.line!=i.line&&Ot(e,i.line,t,i,o))throw new Error("Inserting collapsed marker partially overlapping an existing one");Ct=!0}o.addToHistory&&Or(e,{from:t,to:i,origin:"markText"},e.sel,NaN);var a,l=t.line,c=e.cm;if(e.iter(l,i.line+1,function(n){c&&o.collapsed&&!c.options.lineWrapping&&Pt(n)==c.display.maxLine&&(a=!0),o.collapsed&&l!=t.line&&Ge(n,0),function(e,t,i){var n=i&&window.WeakSet&&(i.markedSpans||(i.markedSpans=new WeakSet));n&&n.has(e.markedSpans)?e.markedSpans.push(t):(e.markedSpans=e.markedSpans?e.markedSpans.concat([t]):[t],n&&n.add(e.markedSpans)),t.marker.attachLine(e)}(n,new At(o,l==t.line?t.ch:null,l==i.line?i.ch:null),e.cm&&e.cm.curOp),++l}),o.collapsed&&e.iter(t.line,i.line+1,function(t){jt(e,t)&&Ge(t,0)}),o.clearOnEnter&&de(o,"beforeCursorEnter",function(){return o.clear()}),o.readOnly&&(bt=!0,(e.history.done.length||e.history.undone.length)&&e.clearHistory()),o.collapsed&&(o.id=++bo,o.atomic=!0),c){if(a&&(c.curOp.updateMaxLine=!0),o.collapsed)ln(c,t.line,i.line+1);else if(o.className||o.startStyle||o.endStyle||o.css||o.attributes||o.title)for(var h=t.line;h<=i.line;h++)cn(c,h,"text");o.atomic&&Jr(c.doc),si(c,"markerAdded",c,o)}return o}Co.prototype.clear=function(){if(!this.explicitlyCleared){var e=this.doc.cm,t=e&&!e.curOp;if(t&&zn(e),ye(this,"clear")){var i=this.find();i&&si(this,"clear",i.from,i.to)}for(var n=null,r=null,o=0;o<this.lines.length;++o){var s=this.lines[o],a=Et(s.markedSpans,this);e&&!this.collapsed?cn(e,Ye(s),"text"):e&&(null!=a.to&&(r=Ye(s)),null!=a.from&&(n=Ye(s))),s.markedSpans=xt(s.markedSpans,a),null==a.from&&this.collapsed&&!jt(this.doc,s)&&e&&Ge(s,Zi(e.display))}if(e&&this.collapsed&&!e.options.lineWrapping)for(var l=0;l<this.lines.length;++l){var c=Pt(this.lines[l]),h=zt(c);h>e.display.maxLineLength&&(e.display.maxLine=c,e.display.maxLineLength=h,e.display.maxLineChanged=!0)}null!=n&&e&&this.collapsed&&ln(e,n,r+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&Jr(e.doc)),e&&si(e,"markerCleared",e,this,n,r),t&&Vn(e),this.parent&&this.parent.clear()}},Co.prototype.find=function(e,t){var i,n;null==e&&"bookmark"==this.type&&(e=1);for(var r=0;r<this.lines.length;++r){var o=this.lines[r],s=Et(o.markedSpans,this);if(null!=s.from&&(i=Ze(t?o:Ye(o),s.from),-1==e))return i;if(null!=s.to&&(n=Ze(t?o:Ye(o),s.to),1==e))return n}return i&&{from:i,to:n}},Co.prototype.changed=function(){var e=this,t=this.find(-1,!0),i=this,n=this.doc.cm;t&&n&&Qn(n,function(){var r=t.line,o=Ye(t.line),s=Di(n,o);if(s&&(Oi(s),n.curOp.selectionChanged=n.curOp.forceUpdate=!0),n.curOp.updateMaxLine=!0,!jt(i.doc,r)&&null!=i.height){var a=i.height;i.height=null;var l=wi(i)-a;l&&Ge(r,r.height+l)}si(n,"markerChanged",n,e)})},Co.prototype.attachLine=function(e){if(!this.lines.length&&this.doc.cm){var t=this.doc.cm.curOp;t.maybeHiddenMarkers&&-1!=j(t.maybeHiddenMarkers,this)||(t.maybeUnhiddenMarkers||(t.maybeUnhiddenMarkers=[])).push(this)}this.lines.push(e)},Co.prototype.detachLine=function(e){if(this.lines.splice(j(this.lines,e),1),!this.lines.length&&this.doc.cm){var t=this.doc.cm.curOp;(t.maybeHiddenMarkers||(t.maybeHiddenMarkers=[])).push(this)}},we(Co);var Eo=function(e,t){this.markers=e,this.primary=t;for(var i=0;i<e.length;++i)e[i].parent=this};function xo(e){return e.findMarks(Ze(e.first,0),e.clipPos(Ze(e.lastLine())),function(e){return e.parent})}function Fo(e){for(var t=function(t){var i=e[t],n=[i.primary.doc];$r(i.primary.doc,function(e){return n.push(e)});for(var r=0;r<i.markers.length;r++){var o=i.markers[r];-1==j(n,o.doc)&&(o.parent=null,i.markers.splice(r--,1))}},i=0;i<e.length;i++)t(i)}Eo.prototype.clear=function(){if(!this.explicitlyCleared){this.explicitlyCleared=!0;for(var e=0;e<this.markers.length;++e)this.markers[e].clear();si(this,"clear")}},Eo.prototype.find=function(e,t){return this.primary.find(e,t)},we(Eo);var So=0,ko=function(e,t,i,n,r){if(!(this instanceof ko))return new ko(e,t,i,n,r);null==i&&(i=0),vo.call(this,[new go([new Ut("",null)])]),this.first=i,this.scrollTop=this.scrollLeft=0,this.cantEdit=!1,this.cleanGeneration=1,this.modeFrontier=this.highlightFrontier=i;var o=Ze(i,0);this.sel=Cr(o),this.history=new Rr(null),this.id=++So,this.modeOption=t,this.lineSep=n,this.direction="rtl"==r?"rtl":"ltr",this.extend=!1,"string"==typeof e&&(e=this.splitLines(e)),Dr(this,{from:o,to:o,text:e}),Yr(this,Cr(o),z)};ko.prototype=J(vo.prototype,{constructor:ko,iter:function(e,t,i){i?this.iterN(e-this.first,t-e,i):this.iterN(this.first,this.first+this.size,e)},insert:function(e,t){for(var i=0,n=0;n<t.length;++n)i+=t[n].height;this.insertInner(e-this.first,t,i)},remove:function(e,t){this.removeInner(e-this.first,t)},getValue:function(e){var t=Ke(this,this.first,this.first+this.size);return!1===e?t:t.join(e||this.lineSeparator())},setValue:Zn(function(e){var t=Ze(this.first,0),i=this.first+this.size-1;oo(this,{from:t,to:Ze(i,Ue(this,i).text.length),text:this.splitLines(e),origin:"setValue",full:!0},!0),this.cm&&Dn(this.cm,0,0),Yr(this,Cr(t),z)}),replaceRange:function(e,t,i,n){t=st(this,t),i=i?st(this,i):t,ho(this,e,t,i,n)},getRange:function(e,t,i){var n=qe(this,st(this,e),st(this,t));return!1===i?n:""===i?n.join(""):n.join(i||this.lineSeparator())},getLine:function(e){var t=this.getLineHandle(e);return t&&t.text},getLineHandle:function(e){if(Xe(this,e))return Ue(this,e)},getLineNumber:function(e){return Ye(e)},getLineHandleVisualStart:function(e){return"number"==typeof e&&(e=Ue(this,e)),Pt(e)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(e){return st(this,e)},getCursor:function(e){var t=this.sel.primary();return null==e||"head"==e?t.head:"anchor"==e?t.anchor:"end"==e||"to"==e||!1===e?t.to():t.from()},listSelections:function(){return this.sel.ranges},somethingSelected:function(){return this.sel.somethingSelected()},setCursor:Zn(function(e,t,i){Kr(this,st(this,"number"==typeof e?Ze(e,t||0):e),null,i)}),setSelection:Zn(function(e,t,i){Kr(this,st(this,e),st(this,t||e),i)}),extendSelection:Zn(function(e,t,i){Vr(this,st(this,e),t&&st(this,t),i)}),extendSelections:Zn(function(e,t){Ur(this,at(this,e),t)}),extendSelectionsBy:Zn(function(e,t){var i=Q(this.sel.ranges,e);Ur(this,at(this,i),t)}),setSelections:Zn(function(e,t,i){if(e.length){for(var n=[],r=0;r<e.length;r++)n[r]=new wr(st(this,e[r].anchor),st(this,e[r].head||e[r].anchor));null==t&&(t=Math.min(e.length-1,this.sel.primIndex)),Yr(this,br(this.cm,n,t),i)}}),addSelection:Zn(function(e,t,i){var n=this.sel.ranges.slice(0);n.push(new wr(st(this,e),st(this,t||e))),Yr(this,br(this.cm,n,n.length-1),i)}),getSelection:function(e){for(var t,i=this.sel.ranges,n=0;n<i.length;n++){var r=qe(this,i[n].from(),i[n].to());t=t?t.concat(r):r}return!1===e?t:t.join(e||this.lineSeparator())},getSelections:function(e){for(var t=[],i=this.sel.ranges,n=0;n<i.length;n++){var r=qe(this,i[n].from(),i[n].to());!1!==e&&(r=r.join(e||this.lineSeparator())),t[n]=r}return t},replaceSelection:function(e,t,i){for(var n=[],r=0;r<this.sel.ranges.length;r++)n[r]=e;this.replaceSelections(n,t,i||"+input")},replaceSelections:Zn(function(e,t,i){for(var n=[],r=this.sel,o=0;o<r.ranges.length;o++){var s=r.ranges[o];n[o]={from:s.from(),to:s.to(),text:this.splitLines(e[o]),origin:i}}for(var a=t&&"end"!=t&&function(e,t,i){for(var n=[],r=Ze(e.first,0),o=r,s=0;s<t.length;s++){var a=t[s],l=Fr(a.from,r,o),c=Fr(Ar(a),r,o);if(r=a.to,o=c,"around"==i){var h=e.sel.ranges[s],u=et(h.head,h.anchor)<0;n[s]=new wr(u?c:l,u?l:c)}else n[s]=new wr(l,l)}return new yr(n,e.sel.primIndex)}(this,n,t),l=n.length-1;l>=0;l--)oo(this,n[l]);a?Gr(this,a):this.cm&&_n(this.cm)}),undo:Zn(function(){ao(this,"undo")}),redo:Zn(function(){ao(this,"redo")}),undoSelection:Zn(function(){ao(this,"undo",!0)}),redoSelection:Zn(function(){ao(this,"redo",!0)}),setExtending:function(e){this.extend=e},getExtending:function(){return this.extend},historySize:function(){for(var e=this.history,t=0,i=0,n=0;n<e.done.length;n++)e.done[n].ranges||++t;for(var r=0;r<e.undone.length;r++)e.undone[r].ranges||++i;return{undo:t,redo:i}},clearHistory:function(){var e=this;this.history=new Rr(this.history),$r(this,function(t){return t.history=e.history},!0)},markClean:function(){this.cleanGeneration=this.changeGeneration(!0)},changeGeneration:function(e){return e&&(this.history.lastOp=this.history.lastSelOp=this.history.lastOrigin=null),this.history.generation},isClean:function(e){return this.history.generation==(e||this.cleanGeneration)},getHistory:function(){return{done:Hr(this.history.done),undone:Hr(this.history.undone)}},setHistory:function(e){var t=this.history=new Rr(this.history);t.done=Hr(e.done.slice(0),null,!0),t.undone=Hr(e.undone.slice(0),null,!0)},setGutterMarker:Zn(function(e,t,i){return mo(this,e,"gutter",function(e){var n=e.gutterMarkers||(e.gutterMarkers={});return n[t]=i,!i&&ie(n)&&(e.gutterMarkers=null),!0})}),clearGutter:Zn(function(e){var t=this;this.iter(function(i){i.gutterMarkers&&i.gutterMarkers[e]&&mo(t,i,"gutter",function(){return i.gutterMarkers[e]=null,ie(i.gutterMarkers)&&(i.gutterMarkers=null),!0})})}),lineInfo:function(e){var t;if("number"==typeof e){if(!Xe(this,e))return null;if(t=e,!(e=Ue(this,e)))return null}else if(null==(t=Ye(e)))return null;return{line:t,handle:e,text:e.text,gutterMarkers:e.gutterMarkers,textClass:e.textClass,bgClass:e.bgClass,wrapClass:e.wrapClass,widgets:e.widgets}},addLineClass:Zn(function(e,t,i){return mo(this,e,"gutter"==t?"gutter":"class",function(e){var n="text"==t?"textClass":"background"==t?"bgClass":"gutter"==t?"gutterClass":"wrapClass";if(e[n]){if(x(i).test(e[n]))return!1;e[n]+=" "+i}else e[n]=i;return!0})}),removeLineClass:Zn(function(e,t,i){return mo(this,e,"gutter"==t?"gutter":"class",function(e){var n="text"==t?"textClass":"background"==t?"bgClass":"gutter"==t?"gutterClass":"wrapClass",r=e[n];if(!r)return!1;if(null==i)e[n]=null;else{var o=r.match(x(i));if(!o)return!1;var s=o.index+o[0].length;e[n]=r.slice(0,o.index)+(o.index&&s!=r.length?" ":"")+r.slice(s)||null}return!0})}),addLineWidget:Zn(function(e,t,i){return function(e,t,i,n){var r=new yo(e,i,n),o=e.cm;return o&&r.noHScroll&&(o.display.alignWidgets=!0),mo(e,t,"widget",function(t){var i=t.widgets||(t.widgets=[]);if(null==r.insertAt?i.push(r):i.splice(Math.min(i.length,Math.max(0,r.insertAt)),0,r),r.line=t,o&&!jt(e,t)){var n=Ht(t)<e.scrollTop;Ge(t,t.height+wi(r)),n&&kn(o,r.height),o.curOp.forceUpdate=!0}return!0}),o&&si(o,"lineWidgetAdded",o,r,"number"==typeof t?t:Ye(t)),r}(this,e,t,i)}),removeLineWidget:function(e){e.clear()},markText:function(e,t,i){return Ao(this,st(this,e),st(this,t),i,i&&i.type||"range")},setBookmark:function(e,t){var i={replacedWith:t&&(null==t.nodeType?t.widget:t),insertLeft:t&&t.insertLeft,clearWhenEmpty:!1,shared:t&&t.shared,handleMouseEvents:t&&t.handleMouseEvents};return Ao(this,e=st(this,e),e,i,"bookmark")},findMarksAt:function(e){var t=[],i=Ue(this,(e=st(this,e)).line).markedSpans;if(i)for(var n=0;n<i.length;++n){var r=i[n];(null==r.from||r.from<=e.ch)&&(null==r.to||r.to>=e.ch)&&t.push(r.marker.parent||r.marker)}return t},findMarks:function(e,t,i){e=st(this,e),t=st(this,t);var n=[],r=e.line;return this.iter(e.line,t.line+1,function(o){var s=o.markedSpans;if(s)for(var a=0;a<s.length;a++){var l=s[a];null!=l.to&&r==e.line&&e.ch>=l.to||null==l.from&&r!=e.line||null!=l.from&&r==t.line&&l.from>=t.ch||i&&!i(l.marker)||n.push(l.marker.parent||l.marker)}++r}),n},getAllMarks:function(){var e=[];return this.iter(function(t){var i=t.markedSpans;if(i)for(var n=0;n<i.length;++n)null!=i[n].from&&e.push(i[n].marker)}),e},posFromIndex:function(e){var t,i=this.first,n=this.lineSeparator().length;return this.iter(function(r){var o=r.text.length+n;if(o>e)return t=e,!0;e-=o,++i}),st(this,Ze(i,t))},indexFromPos:function(e){var t=(e=st(this,e)).ch;if(e.line<this.first||e.ch<0)return 0;var i=this.lineSeparator().length;return this.iter(this.first,e.line,function(e){t+=e.text.length+i}),t},copy:function(e){var t=new ko(Ke(this,this.first,this.first+this.size),this.modeOption,this.first,this.lineSep,this.direction);return t.scrollTop=this.scrollTop,t.scrollLeft=this.scrollLeft,t.sel=this.sel,t.extend=!1,e&&(t.history.undoDepth=this.history.undoDepth,t.setHistory(this.getHistory())),t},linkedDoc:function(e){e||(e={});var t=this.first,i=this.first+this.size;null!=e.from&&e.from>t&&(t=e.from),null!=e.to&&e.to<i&&(i=e.to);var n=new ko(Ke(this,t,i),e.mode||this.modeOption,t,this.lineSep,this.direction);return e.sharedHist&&(n.history=this.history),(this.linked||(this.linked=[])).push({doc:n,sharedHist:e.sharedHist}),n.linked=[{doc:this,isParent:!0,sharedHist:e.sharedHist}],function(e,t){for(var i=0;i<t.length;i++){var n=t[i],r=n.find(),o=e.clipPos(r.from),s=e.clipPos(r.to);if(et(o,s)){var a=Ao(e,o,s,n.primary,n.primary.type);n.markers.push(a),a.parent=n}}}(n,xo(this)),n},unlinkDoc:function(e){if(e instanceof Es&&(e=e.doc),this.linked)for(var t=0;t<this.linked.length;++t){var i=this.linked[t];if(i.doc==e){this.linked.splice(t,1),e.unlinkDoc(this),Fo(xo(this));break}}if(e.history==this.history){var n=[e.id];$r(e,function(e){return n.push(e.id)},!0),e.history=new Rr(null),e.history.done=Hr(this.history.done,n),e.history.undone=Hr(this.history.undone,n)}},iterLinkedDocs:function(e){$r(this,e)},getMode:function(){return this.mode},getEditor:function(){return this.cm},splitLines:function(e){return this.lineSep?e.split(this.lineSep):Le(e)},lineSeparator:function(){return this.lineSep||"\n"},setDirection:Zn(function(e){"rtl"!=e&&(e="ltr"),e!=this.direction&&(this.direction=e,this.iter(function(e){return e.order=null}),this.cm&&function(e){Qn(e,function(){Br(e),ln(e)})}(this.cm))})}),ko.prototype.eachLine=ko.prototype.iter;var _o=0;function Do(e){var t=this;if($o(t),!ge(t,e)&&!bi(t.display,e)){be(e),s&&(_o=+new Date);var i=sn(t,e,!0),n=e.dataTransfer.files;if(i&&!t.isReadOnly())if(n&&n.length&&window.FileReader&&window.File)for(var r=n.length,o=Array(r),a=0,l=function(){++a==r&&Xn(t,function(){var e={from:i=st(t.doc,i),to:i,text:t.doc.splitLines(o.filter(function(e){return null!=e}).join(t.doc.lineSeparator())),origin:"paste"};oo(t.doc,e),Gr(t.doc,Cr(st(t.doc,i),st(t.doc,Ar(e))))})()},c=function(e,i){if(t.options.allowDropFileTypes&&-1==j(t.options.allowDropFileTypes,e.type))l();else{var n=new FileReader;n.onerror=function(){return l()},n.onload=function(){var e=n.result;/[\x00-\x08\x0e-\x1f]{2}/.test(e)?l():(o[i]=e,l())},n.readAsText(e)}},h=0;h<n.length;h++)c(n[h],h);else{if(t.state.draggingText&&t.doc.sel.contains(i)>-1)return t.state.draggingText(e),void setTimeout(function(){return t.display.input.focus()},20);try{var u=e.dataTransfer.getData("Text");if(u){var d;if(t.state.draggingText&&!t.state.draggingText.copy&&(d=t.listSelections()),Qr(t.doc,Cr(i,i)),d)for(var f=0;f<d.length;++f)ho(t.doc,"",d[f].anchor,d[f].head,"drag");t.replaceSelection(u,"around","paste"),t.display.input.focus()}}catch(e){}}}}function $o(e){e.display.dragCursor&&(e.display.lineSpace.removeChild(e.display.dragCursor),e.display.dragCursor=null)}function Lo(e){if(document.getElementsByClassName){for(var t=document.getElementsByClassName("CodeMirror"),i=[],n=0;n<t.length;n++){var r=t[n].CodeMirror;r&&i.push(r)}i.length&&i[0].operation(function(){for(var t=0;t<i.length;t++)e(i[t])})}}var Bo=!1;function Ro(){Bo||(function(){var e;de(window,"resize",function(){null==e&&(e=setTimeout(function(){e=null,Lo(To)},100))}),de(window,"blur",function(){return Lo(An)})}(),Bo=!0)}function To(e){var t=e.display;t.cachedCharWidth=t.cachedTextHeight=t.cachedPaddingH=null,t.scrollbarsClipped=!1,e.setSize()}for(var Mo={3:"Pause",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"=",91:"Mod",92:"Mod",93:"Mod",106:"*",107:"=",109:"-",110:".",111:"/",145:"ScrollLock",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",224:"Mod",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home",63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"},Oo=0;Oo<10;Oo++)Mo[Oo+48]=Mo[Oo+96]=String(Oo);for(var Po=65;Po<=90;Po++)Mo[Po]=String.fromCharCode(Po);for(var No=1;No<=12;No++)Mo[No+111]=Mo[No+63235]="F"+No;var Io={};function jo(e){var t,i,n,r,o=e.split(/-(?!$)/);e=o[o.length-1];for(var s=0;s<o.length-1;s++){var a=o[s];if(/^(cmd|meta|m)$/i.test(a))r=!0;else if(/^a(lt)?$/i.test(a))t=!0;else if(/^(c|ctrl|control)$/i.test(a))i=!0;else{if(!/^s(hift)?$/i.test(a))throw new Error("Unrecognized modifier name: "+a);n=!0}}return t&&(e="Alt-"+e),i&&(e="Ctrl-"+e),r&&(e="Cmd-"+e),n&&(e="Shift-"+e),e}function Wo(e){var t={};for(var i in e)if(e.hasOwnProperty(i)){var n=e[i];if(/^(name|fallthrough|(de|at)tach)$/.test(i))continue;if("..."==n){delete e[i];continue}for(var r=Q(i.split(" "),jo),o=0;o<r.length;o++){var s=void 0,a=void 0;o==r.length-1?(a=r.join(" "),s=n):(a=r.slice(0,o+1).join(" "),s="...");var l=t[a];if(l){if(l!=s)throw new Error("Inconsistent bindings for "+a)}else t[a]=s}delete e[i]}for(var c in t)e[c]=t[c];return e}function Ho(e,t,i,n){var r=(t=qo(t)).call?t.call(e,n):t[e];if(!1===r)return"nothing";if("..."===r)return"multi";if(null!=r&&i(r))return"handled";if(t.fallthrough){if("[object Array]"!=Object.prototype.toString.call(t.fallthrough))return Ho(e,t.fallthrough,i,n);for(var o=0;o<t.fallthrough.length;o++){var s=Ho(e,t.fallthrough[o],i,n);if(s)return s}}}function zo(e){var t="string"==typeof e?e:Mo[e.keyCode];return"Ctrl"==t||"Alt"==t||"Shift"==t||"Mod"==t}function Vo(e,t,i){var n=e;return t.altKey&&"Alt"!=n&&(e="Alt-"+e),(A?t.metaKey:t.ctrlKey)&&"Ctrl"!=n&&(e="Ctrl-"+e),(A?t.ctrlKey:t.metaKey)&&"Mod"!=n&&(e="Cmd-"+e),!i&&t.shiftKey&&"Shift"!=n&&(e="Shift-"+e),e}function Uo(e,t){if(u&&34==e.keyCode&&e.char)return!1;var i=Mo[e.keyCode];return null!=i&&!e.altGraphKey&&(3==e.keyCode&&e.code&&(i=e.code),Vo(i,e,t))}function qo(e){return"string"==typeof e?Io[e]:e}function Ko(e,t){for(var i=e.doc.sel.ranges,n=[],r=0;r<i.length;r++){for(var o=t(i[r]);n.length&&et(o.from,Y(n).to)<=0;){var s=n.pop();if(et(s.from,o.from)<0){o.from=s.from;break}}n.push(o)}Qn(e,function(){for(var t=n.length-1;t>=0;t--)ho(e.doc,"",n[t].from,n[t].to,"+delete");_n(e)})}function Go(e,t,i){var n=oe(e.text,t+i,i);return n<0||n>e.text.length?null:n}function Yo(e,t,i){var n=Go(e,t.ch,i);return null==n?null:new Ze(t.line,n,i<0?"after":"before")}function Qo(e,t,i,n,r){if(e){"rtl"==t.doc.direction&&(r=-r);var o=he(i,t.doc.direction);if(o){var s,a=r<0?Y(o):o[0],l=r<0==(1==a.level),c=l?"after":"before";if(a.level>0||"rtl"==t.doc.direction){var h=$i(t,i);s=r<0?i.text.length-1:0;var u=Li(t,h,s).top;s=se(function(e){return Li(t,h,e).top==u},r<0==(1==a.level)?a.from:a.to-1,s),"before"==c&&(s=Go(i,s,1))}else s=r<0?a.to:a.from;return new Ze(n,s,c)}}return new Ze(n,r<0?i.text.length:0,r<0?"before":"after")}Io.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"},Io.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Up":"goLineUp","Ctrl-Down":"goLineDown","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection","Alt-U":"redoSelection",fallthrough:"basic"},Io.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars","Ctrl-O":"openLine"},Io.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Home":"goDocStart","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineLeft","Cmd-Right":"goLineRight","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]},Io.default=y?Io.macDefault:Io.pcDefault;var Xo={selectAll:no,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),z)},killLine:function(e){return Ko(e,function(t){if(t.empty()){var i=Ue(e.doc,t.head.line).text.length;return t.head.ch==i&&t.head.line<e.lastLine()?{from:t.head,to:Ze(t.head.line+1,0)}:{from:t.head,to:Ze(t.head.line,i)}}return{from:t.from(),to:t.to()}})},deleteLine:function(e){return Ko(e,function(t){return{from:Ze(t.from().line,0),to:st(e.doc,Ze(t.to().line+1,0))}})},delLineLeft:function(e){return Ko(e,function(e){return{from:Ze(e.from().line,0),to:e.from()}})},delWrappedLineLeft:function(e){return Ko(e,function(t){var i=e.charCoords(t.head,"div").top+5,n=e.coordsChar({left:0,top:i},"div");return{from:n,to:t.from()}})},delWrappedLineRight:function(e){return Ko(e,function(t){var i=e.charCoords(t.head,"div").top+5,n=e.coordsChar({left:e.display.lineDiv.offsetWidth+100,top:i},"div");return{from:t.from(),to:n}})},undo:function(e){return e.undo()},redo:function(e){return e.redo()},undoSelection:function(e){return e.undoSelection()},redoSelection:function(e){return e.redoSelection()},goDocStart:function(e){return e.extendSelection(Ze(e.firstLine(),0))},goDocEnd:function(e){return e.extendSelection(Ze(e.lastLine()))},goLineStart:function(e){return e.extendSelectionsBy(function(t){return Jo(e,t.head.line)},{origin:"+move",bias:1})},goLineStartSmart:function(e){return e.extendSelectionsBy(function(t){return Zo(e,t.head)},{origin:"+move",bias:1})},goLineEnd:function(e){return e.extendSelectionsBy(function(t){return function(e,t){var i=Ue(e.doc,t),n=function(e){for(var t;t=Tt(e);)e=t.find(1,!0).line;return e}(i);return n!=i&&(t=Ye(n)),Qo(!0,e,i,t,-1)}(e,t.head.line)},{origin:"+move",bias:-1})},goLineRight:function(e){return e.extendSelectionsBy(function(t){var i=e.cursorCoords(t.head,"div").top+5;return e.coordsChar({left:e.display.lineDiv.offsetWidth+100,top:i},"div")},U)},goLineLeft:function(e){return e.extendSelectionsBy(function(t){var i=e.cursorCoords(t.head,"div").top+5;return e.coordsChar({left:0,top:i},"div")},U)},goLineLeftSmart:function(e){return e.extendSelectionsBy(function(t){var i=e.cursorCoords(t.head,"div").top+5,n=e.coordsChar({left:0,top:i},"div");return n.ch<e.getLine(n.line).search(/\S/)?Zo(e,t.head):n},U)},goLineUp:function(e){return e.moveV(-1,"line")},goLineDown:function(e){return e.moveV(1,"line")},goPageUp:function(e){return e.moveV(-1,"page")},goPageDown:function(e){return e.moveV(1,"page")},goCharLeft:function(e){return e.moveH(-1,"char")},goCharRight:function(e){return e.moveH(1,"char")},goColumnLeft:function(e){return e.moveH(-1,"column")},goColumnRight:function(e){return e.moveH(1,"column")},goWordLeft:function(e){return e.moveH(-1,"word")},goGroupRight:function(e){return e.moveH(1,"group")},goGroupLeft:function(e){return e.moveH(-1,"group")},goWordRight:function(e){return e.moveH(1,"word")},delCharBefore:function(e){return e.deleteH(-1,"codepoint")},delCharAfter:function(e){return e.deleteH(1,"char")},delWordBefore:function(e){return e.deleteH(-1,"word")},delWordAfter:function(e){return e.deleteH(1,"word")},delGroupBefore:function(e){return e.deleteH(-1,"group")},delGroupAfter:function(e){return e.deleteH(1,"group")},indentAuto:function(e){return e.indentSelection("smart")},indentMore:function(e){return e.indentSelection("add")},indentLess:function(e){return e.indentSelection("subtract")},insertTab:function(e){return e.replaceSelection("\t")},insertSoftTab:function(e){for(var t=[],i=e.listSelections(),n=e.options.tabSize,r=0;r<i.length;r++){var o=i[r].from(),s=N(e.getLine(o.line),o.ch,n);t.push(G(n-s%n))}e.replaceSelections(t)},defaultTab:function(e){e.somethingSelected()?e.indentSelection("add"):e.execCommand("insertTab")},transposeChars:function(e){return Qn(e,function(){for(var t=e.listSelections(),i=[],n=0;n<t.length;n++)if(t[n].empty()){var r=t[n].head,o=Ue(e.doc,r.line).text;if(o)if(r.ch==o.length&&(r=new Ze(r.line,r.ch-1)),r.ch>0)r=new Ze(r.line,r.ch+1),e.replaceRange(o.charAt(r.ch-1)+o.charAt(r.ch-2),Ze(r.line,r.ch-2),r,"+transpose");else if(r.line>e.doc.first){var s=Ue(e.doc,r.line-1).text;s&&(r=new Ze(r.line,1),e.replaceRange(o.charAt(0)+e.doc.lineSeparator()+s.charAt(s.length-1),Ze(r.line-1,s.length-1),r,"+transpose"))}i.push(new wr(r,r))}e.setSelections(i)})},newlineAndIndent:function(e){return Qn(e,function(){for(var t=e.listSelections(),i=t.length-1;i>=0;i--)e.replaceRange(e.doc.lineSeparator(),t[i].anchor,t[i].head,"+input");t=e.listSelections();for(var n=0;n<t.length;n++)e.indentLine(t[n].from().line,null,!0);_n(e)})},openLine:function(e){return e.replaceSelection("\n","start")},toggleOverwrite:function(e){return e.toggleOverwrite()}};function Jo(e,t){var i=Ue(e.doc,t),n=Pt(i);return n!=i&&(t=Ye(n)),Qo(!0,e,n,t,1)}function Zo(e,t){var i=Jo(e,t.line),n=Ue(e.doc,i.line),r=he(n,e.doc.direction);if(!r||0==r[0].level){var o=Math.max(i.ch,n.text.search(/\S/)),s=t.line==i.line&&t.ch<=o&&t.ch;return Ze(i.line,s?0:o,i.sticky)}return i}function es(e,t,i){if("string"==typeof t&&!(t=Xo[t]))return!1;e.display.input.ensurePolled();var n=e.display.shift,r=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),i&&(e.display.shift=!1),r=t(e)!=H}finally{e.display.shift=n,e.state.suppressEdits=!1}return r}var ts=new I;function is(e,t,i,n){var r=e.state.keySeq;if(r){if(zo(t))return"handled";if(/\'$/.test(t)?e.state.keySeq=null:ts.set(50,function(){e.state.keySeq==r&&(e.state.keySeq=null,e.display.input.reset())}),ns(e,r+" "+t,i,n))return!0}return ns(e,t,i,n)}function ns(e,t,i,n){var r=function(e,t,i){for(var n=0;n<e.state.keyMaps.length;n++){var r=Ho(t,e.state.keyMaps[n],i,e);if(r)return r}return e.options.extraKeys&&Ho(t,e.options.extraKeys,i,e)||Ho(t,e.options.keyMap,i,e)}(e,t,n);return"multi"==r&&(e.state.keySeq=t),"handled"==r&&si(e,"keyHandled",e,t,i),"handled"!=r&&"multi"!=r||(be(i),yn(e)),!!r}function rs(e,t){var i=Uo(t,!0);return!!i&&(t.shiftKey&&!e.state.keySeq?is(e,"Shift-"+i,t,function(t){return es(e,t,!0)})||is(e,i,t,function(t){if("string"==typeof t?/^go[A-Z]/.test(t):t.motion)return es(e,t)}):is(e,i,t,function(t){return es(e,t)}))}var os=null;function ss(e){var t=this;if(!(e.target&&e.target!=t.display.input.getField()||(t.curOp.focus=B(),ge(t,e)))){s&&a<11&&27==e.keyCode&&(e.returnValue=!1);var n=e.keyCode;t.display.shift=16==n||e.shiftKey;var r=rs(t,e);u&&(os=r?n:null,!r&&88==n&&!Re&&(y?e.metaKey:e.ctrlKey)&&t.replaceSelection("",null,"cut")),i&&!y&&!r&&46==n&&e.shiftKey&&!e.ctrlKey&&document.execCommand&&document.execCommand("cut"),18!=n||/\bCodeMirror-crosshair\b/.test(t.display.lineDiv.className)||function(e){var t=e.display.lineDiv;function i(e){18!=e.keyCode&&e.altKey||(S(t,"CodeMirror-crosshair"),pe(document,"keyup",i),pe(document,"mouseover",i))}R(t,"CodeMirror-crosshair"),de(document,"keyup",i),de(document,"mouseover",i)}(t)}}function as(e){16==e.keyCode&&(this.doc.sel.shift=!1),ge(this,e)}function ls(e){var t=this;if(!(e.target&&e.target!=t.display.input.getField()||bi(t.display,e)||ge(t,e)||e.ctrlKey&&!e.altKey||y&&e.metaKey)){var i=e.keyCode,n=e.charCode;if(u&&i==os)return os=null,void be(e);if(!u||e.which&&!(e.which<10)||!rs(t,e)){var r=String.fromCharCode(null==n?i:n);"\b"!=r&&(function(e,t,i){return is(e,"'"+i+"'",t,function(t){return es(e,t,!0)})}(t,e,r)||t.display.input.onKeyPress(e))}}}var cs,hs,us=function(e,t,i){this.time=e,this.pos=t,this.button=i};function ds(e){var t=this,i=t.display;if(!(ge(t,e)||i.activeTouch&&i.input.supportsTouch()))if(i.input.ensurePolled(),i.shift=e.shiftKey,bi(i,e))l||(i.scroller.draggable=!1,setTimeout(function(){return i.scroller.draggable=!0},100));else if(!ms(t,e)){var n=sn(t,e),r=Fe(e),o=n?function(e,t){var i=+new Date;return hs&&hs.compare(i,e,t)?(cs=hs=null,"triple"):cs&&cs.compare(i,e,t)?(hs=new us(i,e,t),cs=null,"double"):(cs=new us(i,e,t),hs=null,"single")}(n,r):"single";window.focus(),1==r&&t.state.selectingText&&t.state.selectingText(e),n&&function(e,t,i,n,r){var o="Click";return"double"==n?o="Double"+o:"triple"==n&&(o="Triple"+o),is(e,Vo(o=(1==t?"Left":2==t?"Middle":"Right")+o,r),r,function(t){if("string"==typeof t&&(t=Xo[t]),!t)return!1;var n=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),n=t(e,i)!=H}finally{e.state.suppressEdits=!1}return n})}(t,r,n,o,e)||(1==r?n?function(e,t,i,n){s?setTimeout(O(wn,e),0):e.curOp.focus=B();var r,o=function(e,t,i){var n=e.getOption("configureMouse"),r=n?n(e,t,i):{};if(null==r.unit){var o=w?i.shiftKey&&i.metaKey:i.altKey;r.unit=o?"rectangle":"single"==t?"char":"double"==t?"word":"line"}return(null==r.extend||e.doc.extend)&&(r.extend=e.doc.extend||i.shiftKey),null==r.addNew&&(r.addNew=y?i.metaKey:i.ctrlKey),null==r.moveOnDrag&&(r.moveOnDrag=!(y?i.altKey:i.ctrlKey)),r}(e,i,n),c=e.doc.sel;e.options.dragDrop&&_e&&!e.isReadOnly()&&"single"==i&&(r=c.contains(t))>-1&&(et((r=c.ranges[r]).from(),t)<0||t.xRel>0)&&(et(r.to(),t)>0||t.xRel<0)?function(e,t,i,n){var r=e.display,o=!1,c=Xn(e,function(t){l&&(r.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:bn(e)),pe(r.wrapper.ownerDocument,"mouseup",c),pe(r.wrapper.ownerDocument,"mousemove",h),pe(r.scroller,"dragstart",u),pe(r.scroller,"drop",c),o||(be(t),n.addNew||Vr(e.doc,i,null,null,n.extend),l&&!d||s&&9==a?setTimeout(function(){r.wrapper.ownerDocument.body.focus({preventScroll:!0}),r.input.focus()},20):r.input.focus())}),h=function(e){o=o||Math.abs(t.clientX-e.clientX)+Math.abs(t.clientY-e.clientY)>=10},u=function(){return o=!0};l&&(r.scroller.draggable=!0),e.state.draggingText=c,c.copy=!n.moveOnDrag,de(r.wrapper.ownerDocument,"mouseup",c),de(r.wrapper.ownerDocument,"mousemove",h),de(r.scroller,"dragstart",u),de(r.scroller,"drop",c),e.state.delayingBlurEvent=!0,setTimeout(function(){return r.input.focus()},20),r.scroller.dragDrop&&r.scroller.dragDrop()}(e,n,t,o):function(e,t,i,n){s&&bn(e);var r=e.display,o=e.doc;be(t);var a,l,c=o.sel,h=c.ranges;if(n.addNew&&!n.extend?(l=o.sel.contains(i),a=l>-1?h[l]:new wr(i,i)):(a=o.sel.primary(),l=o.sel.primIndex),"rectangle"==n.unit)n.addNew||(a=new wr(i,i)),i=sn(e,t,!0,!0),l=-1;else{var u=fs(e,i,n.unit);a=n.extend?zr(a,u.anchor,u.head,n.extend):u}n.addNew?-1==l?(l=h.length,Yr(o,br(e,h.concat([a]),l),{scroll:!1,origin:"*mouse"})):h.length>1&&h[l].empty()&&"char"==n.unit&&!n.extend?(Yr(o,br(e,h.slice(0,l).concat(h.slice(l+1)),0),{scroll:!1,origin:"*mouse"}),c=o.sel):qr(o,l,a,V):(l=0,Yr(o,new yr([a],0),V),c=o.sel);var d=i;function f(t){if(0!=et(d,t))if(d=t,"rectangle"==n.unit){for(var r=[],s=e.options.tabSize,h=N(Ue(o,i.line).text,i.ch,s),u=N(Ue(o,t.line).text,t.ch,s),f=Math.min(h,u),p=Math.max(h,u),m=Math.min(i.line,t.line),g=Math.min(e.lastLine(),Math.max(i.line,t.line));m<=g;m++){var v=Ue(o,m).text,y=q(v,f,s);f==p?r.push(new wr(Ze(m,y),Ze(m,y))):v.length>y&&r.push(new wr(Ze(m,y),Ze(m,q(v,p,s))))}r.length||r.push(new wr(i,i)),Yr(o,br(e,c.ranges.slice(0,l).concat(r),l),{origin:"*mouse",scroll:!1}),e.scrollIntoView(t)}else{var w,b=a,C=fs(e,t,n.unit),A=b.anchor;et(C.anchor,A)>0?(w=C.head,A=rt(b.from(),C.anchor)):(w=C.anchor,A=nt(b.to(),C.head));var E=c.ranges.slice(0);E[l]=function(e,t){var i=t.anchor,n=t.head,r=Ue(e.doc,i.line);if(0==et(i,n)&&i.sticky==n.sticky)return t;var o=he(r);if(!o)return t;var s=le(o,i.ch,i.sticky),a=o[s];if(a.from!=i.ch&&a.to!=i.ch)return t;var l,c=s+(a.from==i.ch==(1!=a.level)?0:1);if(0==c||c==o.length)return t;if(n.line!=i.line)l=(n.line-i.line)*("ltr"==e.doc.direction?1:-1)>0;else{var h=le(o,n.ch,n.sticky),u=h-s||(n.ch-i.ch)*(1==a.level?-1:1);l=h==c-1||h==c?u<0:u>0}var d=o[c+(l?-1:0)],f=l==(1==d.level),p=f?d.from:d.to,m=f?"after":"before";return i.ch==p&&i.sticky==m?t:new wr(new Ze(i.line,p,m),n)}(e,new wr(st(o,A),w)),Yr(o,br(e,E,l),V)}}var p=r.wrapper.getBoundingClientRect(),m=0;function g(t){e.state.selectingText=!1,m=1/0,t&&(be(t),r.input.focus()),pe(r.wrapper.ownerDocument,"mousemove",v),pe(r.wrapper.ownerDocument,"mouseup",y),o.history.lastSelOrigin=null}var v=Xn(e,function(t){0!==t.buttons&&Fe(t)?function t(i){var s=++m,a=sn(e,i,!0,"rectangle"==n.unit);if(a)if(0!=et(a,d)){e.curOp.focus=B(),f(a);var l=Fn(r,o);(a.line>=l.to||a.line<l.from)&&setTimeout(Xn(e,function(){m==s&&t(i)}),150)}else{var c=i.clientY<p.top?-20:i.clientY>p.bottom?20:0;c&&setTimeout(Xn(e,function(){m==s&&(r.scroller.scrollTop+=c,t(i))}),50)}}(t):g(t)}),y=Xn(e,g);e.state.selectingText=y,de(r.wrapper.ownerDocument,"mousemove",v),de(r.wrapper.ownerDocument,"mouseup",y)}(e,n,t,o)}(t,n,o,e):xe(e)==i.scroller&&be(e):2==r?(n&&Vr(t.doc,n),setTimeout(function(){return i.input.focus()},20)):3==r&&(E?t.display.input.onContextMenu(e):bn(t)))}}function fs(e,t,i){if("char"==i)return new wr(t,t);if("word"==i)return e.findWordAt(t);if("line"==i)return new wr(Ze(t.line,0),st(e.doc,Ze(t.line+1,0)));var n=i(e,t);return new wr(n.from,n.to)}function ps(e,t,i,n){var r,o;if(t.touches)r=t.touches[0].clientX,o=t.touches[0].clientY;else try{r=t.clientX,o=t.clientY}catch(e){return!1}if(r>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;n&&be(t);var s=e.display,a=s.lineDiv.getBoundingClientRect();if(o>a.bottom||!ye(e,i))return Ae(t);o-=a.top-s.viewOffset;for(var l=0;l<e.display.gutterSpecs.length;++l){var c=s.gutters.childNodes[l];if(c&&c.getBoundingClientRect().right>=r){var h=Qe(e.doc,o),u=e.display.gutterSpecs[l];return me(e,i,e,h,u.className,t),Ae(t)}}}function ms(e,t){return ps(e,t,"gutterClick",!0)}function gs(e,t){bi(e.display,t)||function(e,t){return!!ye(e,"gutterContextMenu")&&ps(e,t,"gutterContextMenu",!1)}(e,t)||ge(e,t,"contextmenu")||E||e.display.input.onContextMenu(t)}function vs(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),Ni(e)}us.prototype.compare=function(e,t,i){return this.time+400>e&&0==et(t,this.pos)&&i==this.button};var ys={toString:function(){return"CodeMirror.Init"}},ws={},bs={};function Cs(e,t,i){var n=i&&i!=ys;if(!t!=!n){var r=e.display.dragFunctions,o=t?de:pe;o(e.display.scroller,"dragstart",r.start),o(e.display.scroller,"dragenter",r.enter),o(e.display.scroller,"dragover",r.over),o(e.display.scroller,"dragleave",r.leave),o(e.display.scroller,"drop",r.drop)}}function As(e){e.options.lineWrapping?(R(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(S(e.display.wrapper,"CodeMirror-wrap"),Vt(e)),on(e),ln(e),Ni(e),setTimeout(function(){return Nn(e)},100)}function Es(e,t){var n=this;if(!(this instanceof Es))return new Es(e,t);this.options=t=t?P(t):{},P(ws,t,!1);var r=t.value;"string"==typeof r?r=new ko(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var o=new Es.inputStyles[t.inputStyle](this),c=this.display=new function(e,t,n,r){var o=this;this.input=n,o.scrollbarFiller=D("div",null,"CodeMirror-scrollbar-filler"),o.scrollbarFiller.setAttribute("cm-not-content","true"),o.gutterFiller=D("div",null,"CodeMirror-gutter-filler"),o.gutterFiller.setAttribute("cm-not-content","true"),o.lineDiv=$("div",null,"CodeMirror-code"),o.selectionDiv=D("div",null,null,"position: relative; z-index: 1"),o.cursorDiv=D("div",null,"CodeMirror-cursors"),o.measure=D("div",null,"CodeMirror-measure"),o.lineMeasure=D("div",null,"CodeMirror-measure"),o.lineSpace=$("div",[o.measure,o.lineMeasure,o.selectionDiv,o.cursorDiv,o.lineDiv],null,"position: relative; outline: none");var c=$("div",[o.lineSpace],"CodeMirror-lines");o.mover=D("div",[c],null,"position: relative"),o.sizer=D("div",[o.mover],"CodeMirror-sizer"),o.sizerWidth=null,o.heightForcer=D("div",null,null,"position: absolute; height: "+W+"px; width: 1px;"),o.gutters=D("div",null,"CodeMirror-gutters"),o.lineGutter=null,o.scroller=D("div",[o.sizer,o.heightForcer,o.gutters],"CodeMirror-scroll"),o.scroller.setAttribute("tabIndex","-1"),o.wrapper=D("div",[o.scrollbarFiller,o.gutterFiller,o.scroller],"CodeMirror"),o.wrapper.setAttribute("translate","no"),s&&a<8&&(o.gutters.style.zIndex=-1,o.scroller.style.paddingRight=0),l||i&&v||(o.scroller.draggable=!0),e&&(e.appendChild?e.appendChild(o.wrapper):e(o.wrapper)),o.viewFrom=o.viewTo=t.first,o.reportedViewFrom=o.reportedViewTo=t.first,o.view=[],o.renderedView=null,o.externalMeasured=null,o.viewOffset=0,o.lastWrapHeight=o.lastWrapWidth=0,o.updateLineNumbers=null,o.nativeBarWidth=o.barHeight=o.barWidth=0,o.scrollbarsClipped=!1,o.lineNumWidth=o.lineNumInnerWidth=o.lineNumChars=null,o.alignWidgets=!1,o.cachedCharWidth=o.cachedTextHeight=o.cachedPaddingH=null,o.maxLine=null,o.maxLineLength=0,o.maxLineChanged=!1,o.wheelDX=o.wheelDY=o.wheelStartX=o.wheelStartY=null,o.shift=!1,o.selForContextMenu=null,o.activeTouch=null,o.gutterSpecs=hr(r.gutters,r.lineNumbers),ur(o),n.init(o)}(e,r,o,t);for(var h in c.wrapper.CodeMirror=this,vs(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),Wn(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new I,keySeq:null,specialChars:null},t.autofocus&&!v&&c.input.focus(),s&&a<11&&setTimeout(function(){return n.display.input.reset(!0)},20),function(e){var t=e.display;de(t.scroller,"mousedown",Xn(e,ds)),de(t.scroller,"dblclick",s&&a<11?Xn(e,function(t){if(!ge(e,t)){var i=sn(e,t);if(i&&!ms(e,t)&&!bi(e.display,t)){be(t);var n=e.findWordAt(i);Vr(e.doc,n.anchor,n.head)}}}):function(t){return ge(e,t)||be(t)}),de(t.scroller,"contextmenu",function(t){return gs(e,t)}),de(t.input.getField(),"contextmenu",function(i){t.scroller.contains(i.target)||gs(e,i)});var i,n={end:0};function r(){t.activeTouch&&(i=setTimeout(function(){return t.activeTouch=null},1e3),(n=t.activeTouch).end=+new Date)}function o(e,t){if(null==t.left)return!0;var i=t.left-e.left,n=t.top-e.top;return i*i+n*n>400}de(t.scroller,"touchstart",function(r){if(!ge(e,r)&&!function(e){if(1!=e.touches.length)return!1;var t=e.touches[0];return t.radiusX<=1&&t.radiusY<=1}(r)&&!ms(e,r)){t.input.ensurePolled(),clearTimeout(i);var o=+new Date;t.activeTouch={start:o,moved:!1,prev:o-n.end<=300?n:null},1==r.touches.length&&(t.activeTouch.left=r.touches[0].pageX,t.activeTouch.top=r.touches[0].pageY)}}),de(t.scroller,"touchmove",function(){t.activeTouch&&(t.activeTouch.moved=!0)}),de(t.scroller,"touchend",function(i){var n=t.activeTouch;if(n&&!bi(t,i)&&null!=n.left&&!n.moved&&new Date-n.start<300){var s,a=e.coordsChar(t.activeTouch,"page");s=!n.prev||o(n,n.prev)?new wr(a,a):!n.prev.prev||o(n,n.prev.prev)?e.findWordAt(a):new wr(Ze(a.line,0),st(e.doc,Ze(a.line+1,0))),e.setSelection(s.anchor,s.head),e.focus(),be(i)}r()}),de(t.scroller,"touchcancel",r),de(t.scroller,"scroll",function(){t.scroller.clientHeight&&(Bn(e,t.scroller.scrollTop),Tn(e,t.scroller.scrollLeft,!0),me(e,"scroll",e))}),de(t.scroller,"mousewheel",function(t){return vr(e,t)}),de(t.scroller,"DOMMouseScroll",function(t){return vr(e,t)}),de(t.wrapper,"scroll",function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0}),t.dragFunctions={enter:function(t){ge(e,t)||Ee(t)},over:function(t){ge(e,t)||(function(e,t){var i=sn(e,t);if(i){var n=document.createDocumentFragment();mn(e,i,n),e.display.dragCursor||(e.display.dragCursor=D("div",null,"CodeMirror-cursors CodeMirror-dragcursors"),e.display.lineSpace.insertBefore(e.display.dragCursor,e.display.cursorDiv)),_(e.display.dragCursor,n)}}(e,t),Ee(t))},start:function(t){return function(e,t){if(s&&(!e.state.draggingText||+new Date-_o<100))Ee(t);else if(!ge(e,t)&&!bi(e.display,t)&&(t.dataTransfer.setData("Text",e.getSelection()),t.dataTransfer.effectAllowed="copyMove",t.dataTransfer.setDragImage&&!d)){var i=D("img",null,null,"position: fixed; left: 0; top: 0;");i.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",u&&(i.width=i.height=1,e.display.wrapper.appendChild(i),i._top=i.offsetTop),t.dataTransfer.setDragImage(i,0,0),u&&i.parentNode.removeChild(i)}}(e,t)},drop:Xn(e,Do),leave:function(t){ge(e,t)||$o(e)}};var l=t.input.getField();de(l,"keyup",function(t){return as.call(e,t)}),de(l,"keydown",Xn(e,ss)),de(l,"keypress",Xn(e,ls)),de(l,"focus",function(t){return Cn(e,t)}),de(l,"blur",function(t){return An(e,t)})}(this),Ro(),zn(this),this.curOp.forceUpdate=!0,Lr(this,r),t.autofocus&&!v||this.hasFocus()?setTimeout(function(){n.hasFocus()&&!n.state.focused&&Cn(n)},20):An(this),bs)bs.hasOwnProperty(h)&&bs[h](this,t[h],ys);cr(this),t.finishInit&&t.finishInit(this);for(var f=0;f<xs.length;++f)xs[f](this);Vn(this),l&&t.lineWrapping&&"optimizelegibility"==getComputedStyle(c.lineDiv).textRendering&&(c.lineDiv.style.textRendering="auto")}Es.defaults=ws,Es.optionHandlers=bs;var xs=[];function Fs(e,t,i,n){var r,o=e.doc;null==i&&(i="add"),"smart"==i&&(o.mode.indent?r=dt(e,t).state:i="prev");var s=e.options.tabSize,a=Ue(o,t),l=N(a.text,null,s);a.stateAfter&&(a.stateAfter=null);var c,h=a.text.match(/^\s*/)[0];if(n||/\S/.test(a.text)){if("smart"==i&&((c=o.mode.indent(r,a.text.slice(h.length),a.text))==H||c>150)){if(!n)return;i="prev"}}else c=0,i="not";"prev"==i?c=t>o.first?N(Ue(o,t-1).text,null,s):0:"add"==i?c=l+e.options.indentUnit:"subtract"==i?c=l-e.options.indentUnit:"number"==typeof i&&(c=l+i),c=Math.max(0,c);var u="",d=0;if(e.options.indentWithTabs)for(var f=Math.floor(c/s);f;--f)d+=s,u+="\t";if(d<c&&(u+=G(c-d)),u!=h)return ho(o,u,Ze(t,0),Ze(t,h.length),"+input"),a.stateAfter=null,!0;for(var p=0;p<o.sel.ranges.length;p++){var m=o.sel.ranges[p];if(m.head.line==t&&m.head.ch<h.length){var g=Ze(t,h.length);qr(o,p,new wr(g,g));break}}}Es.defineInitHook=function(e){return xs.push(e)};var Ss=null;function ks(e){Ss=e}function _s(e,t,i,n,r){var o=e.doc;e.display.shift=!1,n||(n=o.sel);var s=+new Date-200,a="paste"==r||e.state.pasteIncoming>s,l=Le(t),c=null;if(a&&n.ranges.length>1)if(Ss&&Ss.text.join("\n")==t){if(n.ranges.length%Ss.text.length==0){c=[];for(var h=0;h<Ss.text.length;h++)c.push(o.splitLines(Ss.text[h]))}}else l.length==n.ranges.length&&e.options.pasteLinesPerSelection&&(c=Q(l,function(e){return[e]}));for(var u=e.curOp.updateInput,d=n.ranges.length-1;d>=0;d--){var f=n.ranges[d],p=f.from(),m=f.to();f.empty()&&(i&&i>0?p=Ze(p.line,p.ch-i):e.state.overwrite&&!a?m=Ze(m.line,Math.min(Ue(o,m.line).text.length,m.ch+Y(l).length)):a&&Ss&&Ss.lineWise&&Ss.text.join("\n")==l.join("\n")&&(p=m=Ze(p.line,0)));var g={from:p,to:m,text:c?c[d%c.length]:l,origin:r||(a?"paste":e.state.cutIncoming>s?"cut":"+input")};oo(e.doc,g),si(e,"inputRead",e,g)}t&&!a&&$s(e,t),_n(e),e.curOp.updateInput<2&&(e.curOp.updateInput=u),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function Ds(e,t){var i=e.clipboardData&&e.clipboardData.getData("Text");if(i)return e.preventDefault(),t.isReadOnly()||t.options.disableInput||Qn(t,function(){return _s(t,i,0,null,"paste")}),!0}function $s(e,t){if(e.options.electricChars&&e.options.smartIndent)for(var i=e.doc.sel,n=i.ranges.length-1;n>=0;n--){var r=i.ranges[n];if(!(r.head.ch>100||n&&i.ranges[n-1].head.line==r.head.line)){var o=e.getModeAt(r.head),s=!1;if(o.electricChars){for(var a=0;a<o.electricChars.length;a++)if(t.indexOf(o.electricChars.charAt(a))>-1){s=Fs(e,r.head.line,"smart");break}}else o.electricInput&&o.electricInput.test(Ue(e.doc,r.head.line).text.slice(0,r.head.ch))&&(s=Fs(e,r.head.line,"smart"));s&&si(e,"electricInput",e,r.head.line)}}}function Ls(e){for(var t=[],i=[],n=0;n<e.doc.sel.ranges.length;n++){var r=e.doc.sel.ranges[n].head.line,o={anchor:Ze(r,0),head:Ze(r+1,0)};i.push(o),t.push(e.getRange(o.anchor,o.head))}return{text:t,ranges:i}}function Bs(e,t,i,n){e.setAttribute("autocorrect",i?"":"off"),e.setAttribute("autocapitalize",n?"":"off"),e.setAttribute("spellcheck",!!t)}function Rs(){var e=D("textarea",null,null,"position: absolute; bottom: -1em; padding: 0; width: 1px; height: 1em; min-height: 1em; outline: none"),t=D("div",[e],null,"overflow: hidden; position: relative; width: 3px; height: 0px;");return l?e.style.width="1000px":e.setAttribute("wrap","off"),m&&(e.style.border="1px solid black"),Bs(e),t}function Ts(e,t,i,n,r){var o=t,s=i,a=Ue(e,t.line),l=r&&"rtl"==e.direction?-i:i;function c(o){var s;if("codepoint"==n){var c=a.text.charCodeAt(t.ch+(i>0?0:-1));if(isNaN(c))s=null;else{var h=i>0?c>=55296&&c<56320:c>=56320&&c<57343;s=new Ze(t.line,Math.max(0,Math.min(a.text.length,t.ch+i*(h?2:1))),-i)}}else s=r?function(e,t,i,n){var r=he(t,e.doc.direction);if(!r)return Yo(t,i,n);i.ch>=t.text.length?(i.ch=t.text.length,i.sticky="before"):i.ch<=0&&(i.ch=0,i.sticky="after");var o=le(r,i.ch,i.sticky),s=r[o];if("ltr"==e.doc.direction&&s.level%2==0&&(n>0?s.to>i.ch:s.from<i.ch))return Yo(t,i,n);var a,l=function(e,i){return Go(t,e instanceof Ze?e.ch:e,i)},c=function(i){return e.options.lineWrapping?(a=a||$i(e,t),Qi(e,t,a,i)):{begin:0,end:t.text.length}},h=c("before"==i.sticky?l(i,-1):i.ch);if("rtl"==e.doc.direction||1==s.level){var u=1==s.level==n<0,d=l(i,u?1:-1);if(null!=d&&(u?d<=s.to&&d<=h.end:d>=s.from&&d>=h.begin)){var f=u?"before":"after";return new Ze(i.line,d,f)}}var p=function(e,t,n){for(var o=function(e,t){return t?new Ze(i.line,l(e,1),"before"):new Ze(i.line,e,"after")};e>=0&&e<r.length;e+=t){var s=r[e],a=t>0==(1!=s.level),c=a?n.begin:l(n.end,-1);if(s.from<=c&&c<s.to)return o(c,a);if(c=a?s.from:l(s.to,-1),n.begin<=c&&c<n.end)return o(c,a)}},m=p(o+n,n,h);if(m)return m;var g=n>0?h.end:l(h.begin,-1);return null==g||n>0&&g==t.text.length||!(m=p(n>0?0:r.length-1,n,c(g)))?null:m}(e.cm,a,t,i):Yo(a,t,i);if(null==s){if(o||!function(){var i=t.line+l;return!(i<e.first||i>=e.first+e.size)&&(t=new Ze(i,t.ch,t.sticky),a=Ue(e,i))}())return!1;t=Qo(r,e.cm,a,t.line,l)}else t=s;return!0}if("char"==n||"codepoint"==n)c();else if("column"==n)c(!0);else if("word"==n||"group"==n)for(var h=null,u="group"==n,d=e.cm&&e.cm.getHelper(t,"wordChars"),f=!0;!(i<0)||c(!f);f=!1){var p=a.text.charAt(t.ch)||"\n",m=te(p,d)?"w":u&&"\n"==p?"n":!u||/\s/.test(p)?null:"p";if(!u||f||m||(m="s"),h&&h!=m){i<0&&(i=1,c(),t.sticky="after");break}if(m&&(h=m),i>0&&!c(!f))break}var g=to(e,t,o,s,!0);return tt(o,g)&&(g.hitSide=!0),g}function Ms(e,t,i,n){var r,o,s=e.doc,a=t.left;if("page"==n){var l=Math.min(e.display.wrapper.clientHeight,window.innerHeight||document.documentElement.clientHeight),c=Math.max(l-.5*Zi(e.display),3);r=(i>0?t.bottom:t.top)+i*c}else"line"==n&&(r=i>0?t.bottom+3:t.top-3);for(;(o=Gi(e,a,r)).outside;){if(i<0?r<=0:r>=s.height){o.hitSide=!0;break}r+=5*i}return o}var Os=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new I,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};function Ps(e,t){var i=Di(e,t.line);if(!i||i.hidden)return null;var n=Ue(e.doc,t.line),r=ki(i,n,t.line),o=he(n,e.doc.direction),s="left";if(o){var a=le(o,t.ch);s=a%2?"right":"left"}var l=Ti(r.map,t.ch,s);return l.offset="right"==l.collapse?l.end:l.start,l}function Ns(e,t){return t&&(e.bad=!0),e}function Is(e,t,i){var n;if(t==e.display.lineDiv){if(!(n=e.display.lineDiv.childNodes[i]))return Ns(e.clipPos(Ze(e.display.viewTo-1)),!0);t=null,i=0}else for(n=t;;n=n.parentNode){if(!n||n==e.display.lineDiv)return null;if(n.parentNode&&n.parentNode==e.display.lineDiv)break}for(var r=0;r<e.display.view.length;r++){var o=e.display.view[r];if(o.node==n)return js(o,t,i)}}function js(e,t,i){var n=e.text.firstChild,r=!1;if(!t||!L(n,t))return Ns(Ze(Ye(e.line),0),!0);if(t==n&&(r=!0,t=n.childNodes[i],i=0,!t)){var o=e.rest?Y(e.rest):e.line;return Ns(Ze(Ye(o),o.text.length),r)}var s=3==t.nodeType?t:null,a=t;for(s||1!=t.childNodes.length||3!=t.firstChild.nodeType||(s=t.firstChild,i&&(i=s.nodeValue.length));a.parentNode!=n;)a=a.parentNode;var l=e.measure,c=l.maps;function h(t,i,n){for(var r=-1;r<(c?c.length:0);r++)for(var o=r<0?l.map:c[r],s=0;s<o.length;s+=3){var a=o[s+2];if(a==t||a==i){var h=Ye(r<0?e.line:e.rest[r]),u=o[s]+n;return(n<0||a!=t)&&(u=o[s+(n?1:0)]),Ze(h,u)}}}var u=h(s,a,i);if(u)return Ns(u,r);for(var d=a.nextSibling,f=s?s.nodeValue.length-i:0;d;d=d.nextSibling){if(u=h(d,d.firstChild,0))return Ns(Ze(u.line,u.ch-f),r);f+=d.textContent.length}for(var p=a.previousSibling,m=i;p;p=p.previousSibling){if(u=h(p,p.firstChild,-1))return Ns(Ze(u.line,u.ch+m),r);m+=p.textContent.length}}Os.prototype.init=function(e){var t=this,i=this,n=i.cm,r=i.div=e.lineDiv;function o(e){for(var t=e.target;t;t=t.parentNode){if(t==r)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(t.className))break}return!1}function s(e){if(o(e)&&!ge(n,e)){if(n.somethingSelected())ks({lineWise:!1,text:n.getSelections()}),"cut"==e.type&&n.replaceSelection("",null,"cut");else{if(!n.options.lineWiseCopyCut)return;var t=Ls(n);ks({lineWise:!0,text:t.text}),"cut"==e.type&&n.operation(function(){n.setSelections(t.ranges,0,z),n.replaceSelection("",null,"cut")})}if(e.clipboardData){e.clipboardData.clearData();var s=Ss.text.join("\n");if(e.clipboardData.setData("Text",s),e.clipboardData.getData("Text")==s)return void e.preventDefault()}var a=Rs(),l=a.firstChild;n.display.lineSpace.insertBefore(a,n.display.lineSpace.firstChild),l.value=Ss.text.join("\n");var c=B();M(l),setTimeout(function(){n.display.lineSpace.removeChild(a),c.focus(),c==r&&i.showPrimarySelection()},50)}}r.contentEditable=!0,Bs(r,n.options.spellcheck,n.options.autocorrect,n.options.autocapitalize),de(r,"paste",function(e){!o(e)||ge(n,e)||Ds(e,n)||a<=11&&setTimeout(Xn(n,function(){return t.updateFromDOM()}),20)}),de(r,"compositionstart",function(e){t.composing={data:e.data,done:!1}}),de(r,"compositionupdate",function(e){t.composing||(t.composing={data:e.data,done:!1})}),de(r,"compositionend",function(e){t.composing&&(e.data!=t.composing.data&&t.readFromDOMSoon(),t.composing.done=!0)}),de(r,"touchstart",function(){return i.forceCompositionEnd()}),de(r,"input",function(){t.composing||t.readFromDOMSoon()}),de(r,"copy",s),de(r,"cut",s)},Os.prototype.screenReaderLabelChanged=function(e){e?this.div.setAttribute("aria-label",e):this.div.removeAttribute("aria-label")},Os.prototype.prepareSelection=function(){var e=pn(this.cm,!1);return e.focus=B()==this.div,e},Os.prototype.showSelection=function(e,t){e&&this.cm.display.view.length&&((e.focus||t)&&this.showPrimarySelection(),this.showMultipleSelections(e))},Os.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},Os.prototype.showPrimarySelection=function(){var e=this.getSelection(),t=this.cm,n=t.doc.sel.primary(),r=n.from(),o=n.to();if(t.display.viewTo==t.display.viewFrom||r.line>=t.display.viewTo||o.line<t.display.viewFrom)e.removeAllRanges();else{var s=Is(t,e.anchorNode,e.anchorOffset),a=Is(t,e.focusNode,e.focusOffset);if(!s||s.bad||!a||a.bad||0!=et(rt(s,a),r)||0!=et(nt(s,a),o)){var l=t.display.view,c=r.line>=t.display.viewFrom&&Ps(t,r)||{node:l[0].measure.map[2],offset:0},h=o.line<t.display.viewTo&&Ps(t,o);if(!h){var u=l[l.length-1].measure,d=u.maps?u.maps[u.maps.length-1]:u.map;h={node:d[d.length-1],offset:d[d.length-2]-d[d.length-3]}}if(c&&h){var f,p=e.rangeCount&&e.getRangeAt(0);try{f=F(c.node,c.offset,h.offset,h.node)}catch(e){}f&&(!i&&t.state.focused?(e.collapse(c.node,c.offset),f.collapsed||(e.removeAllRanges(),e.addRange(f))):(e.removeAllRanges(),e.addRange(f)),p&&null==e.anchorNode?e.addRange(p):i&&this.startGracePeriod()),this.rememberSelection()}else e.removeAllRanges()}}},Os.prototype.startGracePeriod=function(){var e=this;clearTimeout(this.gracePeriod),this.gracePeriod=setTimeout(function(){e.gracePeriod=!1,e.selectionChanged()&&e.cm.operation(function(){return e.cm.curOp.selectionChanged=!0})},20)},Os.prototype.showMultipleSelections=function(e){_(this.cm.display.cursorDiv,e.cursors),_(this.cm.display.selectionDiv,e.selection)},Os.prototype.rememberSelection=function(){var e=this.getSelection();this.lastAnchorNode=e.anchorNode,this.lastAnchorOffset=e.anchorOffset,this.lastFocusNode=e.focusNode,this.lastFocusOffset=e.focusOffset},Os.prototype.selectionInEditor=function(){var e=this.getSelection();if(!e.rangeCount)return!1;var t=e.getRangeAt(0).commonAncestorContainer;return L(this.div,t)},Os.prototype.focus=function(){"nocursor"!=this.cm.options.readOnly&&(this.selectionInEditor()&&B()==this.div||this.showSelection(this.prepareSelection(),!0),this.div.focus())},Os.prototype.blur=function(){this.div.blur()},Os.prototype.getField=function(){return this.div},Os.prototype.supportsTouch=function(){return!0},Os.prototype.receivedFocus=function(){var e=this,t=this;this.selectionInEditor()?setTimeout(function(){return e.pollSelection()},20):Qn(this.cm,function(){return t.cm.curOp.selectionChanged=!0}),this.polling.set(this.cm.options.pollInterval,function e(){t.cm.state.focused&&(t.pollSelection(),t.polling.set(t.cm.options.pollInterval,e))})},Os.prototype.selectionChanged=function(){var e=this.getSelection();return e.anchorNode!=this.lastAnchorNode||e.anchorOffset!=this.lastAnchorOffset||e.focusNode!=this.lastFocusNode||e.focusOffset!=this.lastFocusOffset},Os.prototype.pollSelection=function(){if(null==this.readDOMTimeout&&!this.gracePeriod&&this.selectionChanged()){var e=this.getSelection(),t=this.cm;if(g&&h&&this.cm.display.gutterSpecs.length&&function(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}(e.anchorNode))return this.cm.triggerOnKeyDown({type:"keydown",keyCode:8,preventDefault:Math.abs}),this.blur(),void this.focus();if(!this.composing){this.rememberSelection();var i=Is(t,e.anchorNode,e.anchorOffset),n=Is(t,e.focusNode,e.focusOffset);i&&n&&Qn(t,function(){Yr(t.doc,Cr(i,n),z),(i.bad||n.bad)&&(t.curOp.selectionChanged=!0)})}}},Os.prototype.pollContent=function(){null!=this.readDOMTimeout&&(clearTimeout(this.readDOMTimeout),this.readDOMTimeout=null);var e,t,i,n=this.cm,r=n.display,o=n.doc.sel.primary(),s=o.from(),a=o.to();if(0==s.ch&&s.line>n.firstLine()&&(s=Ze(s.line-1,Ue(n.doc,s.line-1).length)),a.ch==Ue(n.doc,a.line).text.length&&a.line<n.lastLine()&&(a=Ze(a.line+1,0)),s.line<r.viewFrom||a.line>r.viewTo-1)return!1;s.line==r.viewFrom||0==(e=an(n,s.line))?(t=Ye(r.view[0].line),i=r.view[0].node):(t=Ye(r.view[e].line),i=r.view[e-1].node.nextSibling);var l,c,h=an(n,a.line);if(h==r.view.length-1?(l=r.viewTo-1,c=r.lineDiv.lastChild):(l=Ye(r.view[h+1].line)-1,c=r.view[h+1].node.previousSibling),!i)return!1;for(var u=n.doc.splitLines(function(e,t,i,n,r){var o="",s=!1,a=e.doc.lineSeparator(),l=!1;function c(){s&&(o+=a,l&&(o+=a),s=l=!1)}function h(e){e&&(c(),o+=e)}function u(t){if(1==t.nodeType){var i=t.getAttribute("cm-text");if(i)return void h(i);var o,d=t.getAttribute("cm-marker");if(d){var f=e.findMarks(Ze(n,0),Ze(r+1,0),function(e){return function(t){return t.id==e}}(+d));return void(f.length&&(o=f[0].find(0))&&h(qe(e.doc,o.from,o.to).join(a)))}if("false"==t.getAttribute("contenteditable"))return;var p=/^(pre|div|p|li|table|br)$/i.test(t.nodeName);if(!/^br$/i.test(t.nodeName)&&0==t.textContent.length)return;p&&c();for(var m=0;m<t.childNodes.length;m++)u(t.childNodes[m]);/^(pre|p)$/i.test(t.nodeName)&&(l=!0),p&&(s=!0)}else 3==t.nodeType&&h(t.nodeValue.replace(/\u200b/g,"").replace(/\u00a0/g," "))}for(;u(t),t!=i;)t=t.nextSibling,l=!1;return o}(n,i,c,t,l)),d=qe(n.doc,Ze(t,0),Ze(l,Ue(n.doc,l).text.length));u.length>1&&d.length>1;)if(Y(u)==Y(d))u.pop(),d.pop(),l--;else{if(u[0]!=d[0])break;u.shift(),d.shift(),t++}for(var f=0,p=0,m=u[0],g=d[0],v=Math.min(m.length,g.length);f<v&&m.charCodeAt(f)==g.charCodeAt(f);)++f;for(var y=Y(u),w=Y(d),b=Math.min(y.length-(1==u.length?f:0),w.length-(1==d.length?f:0));p<b&&y.charCodeAt(y.length-p-1)==w.charCodeAt(w.length-p-1);)++p;if(1==u.length&&1==d.length&&t==s.line)for(;f&&f>s.ch&&y.charCodeAt(y.length-p-1)==w.charCodeAt(w.length-p-1);)f--,p++;u[u.length-1]=y.slice(0,y.length-p).replace(/^\u200b+/,""),u[0]=u[0].slice(f).replace(/\u200b+$/,"");var C=Ze(t,f),A=Ze(l,d.length?Y(d).length-p:0);return u.length>1||u[0]||et(C,A)?(ho(n.doc,u,C,A,"+input"),!0):void 0},Os.prototype.ensurePolled=function(){this.forceCompositionEnd()},Os.prototype.reset=function(){this.forceCompositionEnd()},Os.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},Os.prototype.readFromDOMSoon=function(){var e=this;null==this.readDOMTimeout&&(this.readDOMTimeout=setTimeout(function(){if(e.readDOMTimeout=null,e.composing){if(!e.composing.done)return;e.composing=null}e.updateFromDOM()},80))},Os.prototype.updateFromDOM=function(){var e=this;!this.cm.isReadOnly()&&this.pollContent()||Qn(this.cm,function(){return ln(e.cm)})},Os.prototype.setUneditable=function(e){e.contentEditable="false"},Os.prototype.onKeyPress=function(e){0==e.charCode||this.composing||(e.preventDefault(),this.cm.isReadOnly()||Xn(this.cm,_s)(this.cm,String.fromCharCode(null==e.charCode?e.keyCode:e.charCode),0))},Os.prototype.readOnlyChanged=function(e){this.div.contentEditable=String("nocursor"!=e)},Os.prototype.onContextMenu=function(){},Os.prototype.resetPosition=function(){},Os.prototype.needsContentAttribute=!0;var Ws=function(e){this.cm=e,this.prevInput="",this.pollingFast=!1,this.polling=new I,this.hasSelection=!1,this.composing=null};Ws.prototype.init=function(e){var t=this,i=this,n=this.cm;this.createField(e);var r=this.textarea;function o(e){if(!ge(n,e)){if(n.somethingSelected())ks({lineWise:!1,text:n.getSelections()});else{if(!n.options.lineWiseCopyCut)return;var t=Ls(n);ks({lineWise:!0,text:t.text}),"cut"==e.type?n.setSelections(t.ranges,null,z):(i.prevInput="",r.value=t.text.join("\n"),M(r))}"cut"==e.type&&(n.state.cutIncoming=+new Date)}}e.wrapper.insertBefore(this.wrapper,e.wrapper.firstChild),m&&(r.style.width="0px"),de(r,"input",function(){s&&a>=9&&t.hasSelection&&(t.hasSelection=null),i.poll()}),de(r,"paste",function(e){ge(n,e)||Ds(e,n)||(n.state.pasteIncoming=+new Date,i.fastPoll())}),de(r,"cut",o),de(r,"copy",o),de(e.scroller,"paste",function(t){if(!bi(e,t)&&!ge(n,t)){if(!r.dispatchEvent)return n.state.pasteIncoming=+new Date,void i.focus();var o=new Event("paste");o.clipboardData=t.clipboardData,r.dispatchEvent(o)}}),de(e.lineSpace,"selectstart",function(t){bi(e,t)||be(t)}),de(r,"compositionstart",function(){var e=n.getCursor("from");i.composing&&i.composing.range.clear(),i.composing={start:e,range:n.markText(e,n.getCursor("to"),{className:"CodeMirror-composing"})}}),de(r,"compositionend",function(){i.composing&&(i.poll(),i.composing.range.clear(),i.composing=null)})},Ws.prototype.createField=function(e){this.wrapper=Rs(),this.textarea=this.wrapper.firstChild},Ws.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},Ws.prototype.prepareSelection=function(){var e=this.cm,t=e.display,i=e.doc,n=pn(e);if(e.options.moveInputWithCursor){var r=Ui(e,i.sel.primary().head,"div"),o=t.wrapper.getBoundingClientRect(),s=t.lineDiv.getBoundingClientRect();n.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,r.top+s.top-o.top)),n.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,r.left+s.left-o.left))}return n},Ws.prototype.showSelection=function(e){var t=this.cm,i=t.display;_(i.cursorDiv,e.cursors),_(i.selectionDiv,e.selection),null!=e.teTop&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},Ws.prototype.reset=function(e){if(!this.contextMenuPending&&!this.composing){var t=this.cm;if(t.somethingSelected()){this.prevInput="";var i=t.getSelection();this.textarea.value=i,t.state.focused&&M(this.textarea),s&&a>=9&&(this.hasSelection=i)}else e||(this.prevInput=this.textarea.value="",s&&a>=9&&(this.hasSelection=null))}},Ws.prototype.getField=function(){return this.textarea},Ws.prototype.supportsTouch=function(){return!1},Ws.prototype.focus=function(){if("nocursor"!=this.cm.options.readOnly&&(!v||B()!=this.textarea))try{this.textarea.focus()}catch(e){}},Ws.prototype.blur=function(){this.textarea.blur()},Ws.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},Ws.prototype.receivedFocus=function(){this.slowPoll()},Ws.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){e.poll(),e.cm.state.focused&&e.slowPoll()})},Ws.prototype.fastPoll=function(){var e=!1,t=this;t.pollingFast=!0,t.polling.set(20,function i(){var n=t.poll();n||e?(t.pollingFast=!1,t.slowPoll()):(e=!0,t.polling.set(60,i))})},Ws.prototype.poll=function(){var e=this,t=this.cm,i=this.textarea,n=this.prevInput;if(this.contextMenuPending||!t.state.focused||Be(i)&&!n&&!this.composing||t.isReadOnly()||t.options.disableInput||t.state.keySeq)return!1;var r=i.value;if(r==n&&!t.somethingSelected())return!1;if(s&&a>=9&&this.hasSelection===r||y&&/[\uf700-\uf7ff]/.test(r))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var o=r.charCodeAt(0);if(8203!=o||n||(n="​"),8666==o)return this.reset(),this.cm.execCommand("undo")}for(var l=0,c=Math.min(n.length,r.length);l<c&&n.charCodeAt(l)==r.charCodeAt(l);)++l;return Qn(t,function(){_s(t,r.slice(l),n.length-l,null,e.composing?"*compose":null),r.length>1e3||r.indexOf("\n")>-1?i.value=e.prevInput="":e.prevInput=r,e.composing&&(e.composing.range.clear(),e.composing.range=t.markText(e.composing.start,t.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},Ws.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},Ws.prototype.onKeyPress=function(){s&&a>=9&&(this.hasSelection=null),this.fastPoll()},Ws.prototype.onContextMenu=function(e){var t=this,i=t.cm,n=i.display,r=t.textarea;t.contextMenuPending&&t.contextMenuPending();var o=sn(i,e),c=n.scroller.scrollTop;if(o&&!u){var h=i.options.resetSelectionOnContextMenu;h&&-1==i.doc.sel.contains(o)&&Xn(i,Yr)(i.doc,Cr(o),z);var d,f=r.style.cssText,p=t.wrapper.style.cssText,m=t.wrapper.offsetParent.getBoundingClientRect();if(t.wrapper.style.cssText="position: static",r.style.cssText="position: absolute; width: 30px; height: 30px;\n top: "+(e.clientY-m.top-5)+"px; left: "+(e.clientX-m.left-5)+"px;\n z-index: 1000; background: "+(s?"rgba(255, 255, 255, .05)":"transparent")+";\n outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);",l&&(d=window.scrollY),n.input.focus(),l&&window.scrollTo(null,d),n.input.reset(),i.somethingSelected()||(r.value=t.prevInput=" "),t.contextMenuPending=y,n.selForContextMenu=i.doc.sel,clearTimeout(n.detectingSelectAll),s&&a>=9&&v(),E){Ee(e);var g=function(){pe(window,"mouseup",g),setTimeout(y,20)};de(window,"mouseup",g)}else setTimeout(y,50)}function v(){if(null!=r.selectionStart){var e=i.somethingSelected(),o="​"+(e?r.value:"");r.value="⇚",r.value=o,t.prevInput=e?"":"​",r.selectionStart=1,r.selectionEnd=o.length,n.selForContextMenu=i.doc.sel}}function y(){if(t.contextMenuPending==y&&(t.contextMenuPending=!1,t.wrapper.style.cssText=p,r.style.cssText=f,s&&a<9&&n.scrollbars.setScrollTop(n.scroller.scrollTop=c),null!=r.selectionStart)){(!s||s&&a<9)&&v();var e=0,o=function(){n.selForContextMenu==i.doc.sel&&0==r.selectionStart&&r.selectionEnd>0&&"​"==t.prevInput?Xn(i,no)(i):e++<10?n.detectingSelectAll=setTimeout(o,500):(n.selForContextMenu=null,n.input.reset())};n.detectingSelectAll=setTimeout(o,200)}}},Ws.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled="nocursor"==e,this.textarea.readOnly=!!e},Ws.prototype.setUneditable=function(){},Ws.prototype.needsContentAttribute=!1,function(e){var t=e.optionHandlers;function i(i,n,r,o){e.defaults[i]=n,r&&(t[i]=o?function(e,t,i){i!=ys&&r(e,t,i)}:r)}e.defineOption=i,e.Init=ys,i("value","",function(e,t){return e.setValue(t)},!0),i("mode",null,function(e,t){e.doc.modeOption=t,Sr(e)},!0),i("indentUnit",2,Sr,!0),i("indentWithTabs",!1),i("smartIndent",!0),i("tabSize",4,function(e){kr(e),Ni(e),ln(e)},!0),i("lineSeparator",null,function(e,t){if(e.doc.lineSep=t,t){var i=[],n=e.doc.first;e.doc.iter(function(e){for(var r=0;;){var o=e.text.indexOf(t,r);if(-1==o)break;r=o+t.length,i.push(Ze(n,o))}n++});for(var r=i.length-1;r>=0;r--)ho(e.doc,t,i[r],Ze(i[r].line,i[r].ch+t.length))}}),i("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\ufeff\ufff9-\ufffc]/g,function(e,t,i){e.state.specialChars=new RegExp(t.source+(t.test("\t")?"":"|\t"),"g"),i!=ys&&e.refresh()}),i("specialCharPlaceholder",Xt,function(e){return e.refresh()},!0),i("electricChars",!0),i("inputStyle",v?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),i("spellcheck",!1,function(e,t){return e.getInputField().spellcheck=t},!0),i("autocorrect",!1,function(e,t){return e.getInputField().autocorrect=t},!0),i("autocapitalize",!1,function(e,t){return e.getInputField().autocapitalize=t},!0),i("rtlMoveVisually",!b),i("wholeLineUpdateBefore",!0),i("theme","default",function(e){vs(e),dr(e)},!0),i("keyMap","default",function(e,t,i){var n=qo(t),r=i!=ys&&qo(i);r&&r.detach&&r.detach(e,n),n.attach&&n.attach(e,r||null)}),i("extraKeys",null),i("configureMouse",null),i("lineWrapping",!1,As,!0),i("gutters",[],function(e,t){e.display.gutterSpecs=hr(t,e.options.lineNumbers),dr(e)},!0),i("fixedGutter",!0,function(e,t){e.display.gutters.style.left=t?nn(e.display)+"px":"0",e.refresh()},!0),i("coverGutterNextToScrollbar",!1,function(e){return Nn(e)},!0),i("scrollbarStyle","native",function(e){Wn(e),Nn(e),e.display.scrollbars.setScrollTop(e.doc.scrollTop),e.display.scrollbars.setScrollLeft(e.doc.scrollLeft)},!0),i("lineNumbers",!1,function(e,t){e.display.gutterSpecs=hr(e.options.gutters,t),dr(e)},!0),i("firstLineNumber",1,dr,!0),i("lineNumberFormatter",function(e){return e},dr,!0),i("showCursorWhenSelecting",!1,fn,!0),i("resetSelectionOnContextMenu",!0),i("lineWiseCopyCut",!0),i("pasteLinesPerSelection",!0),i("selectionsMayTouch",!1),i("readOnly",!1,function(e,t){"nocursor"==t&&(An(e),e.display.input.blur()),e.display.input.readOnlyChanged(t)}),i("screenReaderLabel",null,function(e,t){t=""===t?null:t,e.display.input.screenReaderLabelChanged(t)}),i("disableInput",!1,function(e,t){t||e.display.input.reset()},!0),i("dragDrop",!0,Cs),i("allowDropFileTypes",null),i("cursorBlinkRate",530),i("cursorScrollMargin",0),i("cursorHeight",1,fn,!0),i("singleCursorHeightPerLine",!0,fn,!0),i("workTime",100),i("workDelay",100),i("flattenSpans",!0,kr,!0),i("addModeClass",!1,kr,!0),i("pollInterval",100),i("undoDepth",200,function(e,t){return e.doc.history.undoDepth=t}),i("historyEventDelay",1250),i("viewportMargin",10,function(e){return e.refresh()},!0),i("maxHighlightLength",1e4,kr,!0),i("moveInputWithCursor",!0,function(e,t){t||e.display.input.resetPosition()}),i("tabindex",null,function(e,t){return e.display.input.getField().tabIndex=t||""}),i("autofocus",null),i("direction","ltr",function(e,t){return e.doc.setDirection(t)},!0),i("phrases",null)}(Es),function(e){var t=e.optionHandlers,i=e.helpers={};e.prototype={constructor:e,focus:function(){window.focus(),this.display.input.focus()},setOption:function(e,i){var n=this.options,r=n[e];n[e]==i&&"mode"!=e||(n[e]=i,t.hasOwnProperty(e)&&Xn(this,t[e])(this,i,r),me(this,"optionChange",this,e))},getOption:function(e){return this.options[e]},getDoc:function(){return this.doc},addKeyMap:function(e,t){this.state.keyMaps[t?"push":"unshift"](qo(e))},removeKeyMap:function(e){for(var t=this.state.keyMaps,i=0;i<t.length;++i)if(t[i]==e||t[i].name==e)return t.splice(i,1),!0},addOverlay:Jn(function(t,i){var n=t.token?t:e.getMode(this.options,t);if(n.startState)throw new Error("Overlays may not be stateful.");!function(e,t,i){for(var n=0,r=i(t);n<e.length&&i(e[n])<=r;)n++;e.splice(n,0,t)}(this.state.overlays,{mode:n,modeSpec:t,opaque:i&&i.opaque,priority:i&&i.priority||0},function(e){return e.priority}),this.state.modeGen++,ln(this)}),removeOverlay:Jn(function(e){for(var t=this.state.overlays,i=0;i<t.length;++i){var n=t[i].modeSpec;if(n==e||"string"==typeof e&&n.name==e)return t.splice(i,1),this.state.modeGen++,void ln(this)}}),indentLine:Jn(function(e,t,i){"string"!=typeof t&&"number"!=typeof t&&(t=null==t?this.options.smartIndent?"smart":"prev":t?"add":"subtract"),Xe(this.doc,e)&&Fs(this,e,t,i)}),indentSelection:Jn(function(e){for(var t=this.doc.sel.ranges,i=-1,n=0;n<t.length;n++){var r=t[n];if(r.empty())r.head.line>i&&(Fs(this,r.head.line,e,!0),i=r.head.line,n==this.doc.sel.primIndex&&_n(this));else{var o=r.from(),s=r.to(),a=Math.max(i,o.line);i=Math.min(this.lastLine(),s.line-(s.ch?0:1))+1;for(var l=a;l<i;++l)Fs(this,l,e);var c=this.doc.sel.ranges;0==o.ch&&t.length==c.length&&c[n].from().ch>0&&qr(this.doc,n,new wr(o,c[n].to()),z)}}}),getTokenAt:function(e,t){return vt(this,e,t)},getLineTokens:function(e,t){return vt(this,Ze(e),t,!0)},getTokenTypeAt:function(e){e=st(this.doc,e);var t,i=ut(this,Ue(this.doc,e.line)),n=0,r=(i.length-1)/2,o=e.ch;if(0==o)t=i[2];else for(;;){var s=n+r>>1;if((s?i[2*s-1]:0)>=o)r=s;else{if(!(i[2*s+1]<o)){t=i[2*s+2];break}n=s+1}}var a=t?t.indexOf("overlay "):-1;return a<0?t:0==a?null:t.slice(0,a-1)},getModeAt:function(t){var i=this.doc.mode;return i.innerMode?e.innerMode(i,this.getTokenAt(t).state).mode:i},getHelper:function(e,t){return this.getHelpers(e,t)[0]},getHelpers:function(e,t){var n=[];if(!i.hasOwnProperty(t))return n;var r=i[t],o=this.getModeAt(e);if("string"==typeof o[t])r[o[t]]&&n.push(r[o[t]]);else if(o[t])for(var s=0;s<o[t].length;s++){var a=r[o[t][s]];a&&n.push(a)}else o.helperType&&r[o.helperType]?n.push(r[o.helperType]):r[o.name]&&n.push(r[o.name]);for(var l=0;l<r._global.length;l++){var c=r._global[l];c.pred(o,this)&&-1==j(n,c.val)&&n.push(c.val)}return n},getStateAfter:function(e,t){var i=this.doc;return dt(this,(e=ot(i,null==e?i.first+i.size-1:e))+1,t).state},cursorCoords:function(e,t){var i=this.doc.sel.primary();return Ui(this,null==e?i.head:"object"==typeof e?st(this.doc,e):e?i.from():i.to(),t||"page")},charCoords:function(e,t){return Vi(this,st(this.doc,e),t||"page")},coordsChar:function(e,t){return Gi(this,(e=zi(this,e,t||"page")).left,e.top)},lineAtHeight:function(e,t){return e=zi(this,{top:e,left:0},t||"page").top,Qe(this.doc,e+this.display.viewOffset)},heightAtLine:function(e,t,i){var n,r=!1;if("number"==typeof e){var o=this.doc.first+this.doc.size-1;e<this.doc.first?e=this.doc.first:e>o&&(e=o,r=!0),n=Ue(this.doc,e)}else n=e;return Hi(this,n,{top:0,left:0},t||"page",i||r).top+(r?this.doc.height-Ht(n):0)},defaultTextHeight:function(){return Zi(this.display)},defaultCharWidth:function(){return en(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(e,t,i,n,r){var o=this.display,s=(e=Ui(this,st(this.doc,e))).bottom,a=e.left;if(t.style.position="absolute",t.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(t),o.sizer.appendChild(t),"over"==n)s=e.top;else if("above"==n||"near"==n){var l=Math.max(o.wrapper.clientHeight,this.doc.height),c=Math.max(o.sizer.clientWidth,o.lineSpace.clientWidth);("above"==n||e.bottom+t.offsetHeight>l)&&e.top>t.offsetHeight?s=e.top-t.offsetHeight:e.bottom+t.offsetHeight<=l&&(s=e.bottom),a+t.offsetWidth>c&&(a=c-t.offsetWidth)}t.style.top=s+"px",t.style.left=t.style.right="","right"==r?(a=o.sizer.clientWidth-t.offsetWidth,t.style.right="0px"):("left"==r?a=0:"middle"==r&&(a=(o.sizer.clientWidth-t.offsetWidth)/2),t.style.left=a+"px"),i&&function(e,t){var i=Sn(e,t);null!=i.scrollTop&&Bn(e,i.scrollTop),null!=i.scrollLeft&&Tn(e,i.scrollLeft)}(this,{left:a,top:s,right:a+t.offsetWidth,bottom:s+t.offsetHeight})},triggerOnKeyDown:Jn(ss),triggerOnKeyPress:Jn(ls),triggerOnKeyUp:as,triggerOnMouseDown:Jn(ds),execCommand:function(e){if(Xo.hasOwnProperty(e))return Xo[e].call(null,this)},triggerElectric:Jn(function(e){$s(this,e)}),findPosH:function(e,t,i,n){var r=1;t<0&&(r=-1,t=-t);for(var o=st(this.doc,e),s=0;s<t&&!(o=Ts(this.doc,o,r,i,n)).hitSide;++s);return o},moveH:Jn(function(e,t){var i=this;this.extendSelectionsBy(function(n){return i.display.shift||i.doc.extend||n.empty()?Ts(i.doc,n.head,e,t,i.options.rtlMoveVisually):e<0?n.from():n.to()},U)}),deleteH:Jn(function(e,t){var i=this.doc.sel,n=this.doc;i.somethingSelected()?n.replaceSelection("",null,"+delete"):Ko(this,function(i){var r=Ts(n,i.head,e,t,!1);return e<0?{from:r,to:i.head}:{from:i.head,to:r}})}),findPosV:function(e,t,i,n){var r=1,o=n;t<0&&(r=-1,t=-t);for(var s=st(this.doc,e),a=0;a<t;++a){var l=Ui(this,s,"div");if(null==o?o=l.left:l.left=o,(s=Ms(this,l,r,i)).hitSide)break}return s},moveV:Jn(function(e,t){var i=this,n=this.doc,r=[],o=!this.display.shift&&!n.extend&&n.sel.somethingSelected();if(n.extendSelectionsBy(function(s){if(o)return e<0?s.from():s.to();var a=Ui(i,s.head,"div");null!=s.goalColumn&&(a.left=s.goalColumn),r.push(a.left);var l=Ms(i,a,e,t);return"page"==t&&s==n.sel.primary()&&kn(i,Vi(i,l,"div").top-a.top),l},U),r.length)for(var s=0;s<n.sel.ranges.length;s++)n.sel.ranges[s].goalColumn=r[s]}),findWordAt:function(e){var t=this.doc,i=Ue(t,e.line).text,n=e.ch,r=e.ch;if(i){var o=this.getHelper(e,"wordChars");"before"!=e.sticky&&r!=i.length||!n?++r:--n;for(var s=i.charAt(n),a=te(s,o)?function(e){return te(e,o)}:/\s/.test(s)?function(e){return/\s/.test(e)}:function(e){return!/\s/.test(e)&&!te(e)};n>0&&a(i.charAt(n-1));)--n;for(;r<i.length&&a(i.charAt(r));)++r}return new wr(Ze(e.line,n),Ze(e.line,r))},toggleOverwrite:function(e){null!=e&&e==this.state.overwrite||((this.state.overwrite=!this.state.overwrite)?R(this.display.cursorDiv,"CodeMirror-overwrite"):S(this.display.cursorDiv,"CodeMirror-overwrite"),me(this,"overwriteToggle",this,this.state.overwrite))},hasFocus:function(){return this.display.input.getField()==B()},isReadOnly:function(){return!(!this.options.readOnly&&!this.doc.cantEdit)},scrollTo:Jn(function(e,t){Dn(this,e,t)}),getScrollInfo:function(){var e=this.display.scroller;return{left:e.scrollLeft,top:e.scrollTop,height:e.scrollHeight-xi(this)-this.display.barHeight,width:e.scrollWidth-xi(this)-this.display.barWidth,clientHeight:Si(this),clientWidth:Fi(this)}},scrollIntoView:Jn(function(e,t){null==e?(e={from:this.doc.sel.primary().head,to:null},null==t&&(t=this.options.cursorScrollMargin)):"number"==typeof e?e={from:Ze(e,0),to:null}:null==e.from&&(e={from:e,to:null}),e.to||(e.to=e.from),e.margin=t||0,null!=e.from.line?function(e,t){$n(e),e.curOp.scrollToPos=t}(this,e):Ln(this,e.from,e.to,e.margin)}),setSize:Jn(function(e,t){var i=this,n=function(e){return"number"==typeof e||/^\d+$/.test(String(e))?e+"px":e};null!=e&&(this.display.wrapper.style.width=n(e)),null!=t&&(this.display.wrapper.style.height=n(t)),this.options.lineWrapping&&Pi(this);var r=this.display.viewFrom;this.doc.iter(r,this.display.viewTo,function(e){if(e.widgets)for(var t=0;t<e.widgets.length;t++)if(e.widgets[t].noHScroll){cn(i,r,"widget");break}++r}),this.curOp.forceUpdate=!0,me(this,"refresh",this)}),operation:function(e){return Qn(this,e)},startOperation:function(){return zn(this)},endOperation:function(){return Vn(this)},refresh:Jn(function(){var e=this.display.cachedTextHeight;ln(this),this.curOp.forceUpdate=!0,Ni(this),Dn(this,this.doc.scrollLeft,this.doc.scrollTop),sr(this.display),(null==e||Math.abs(e-Zi(this.display))>.5||this.options.lineWrapping)&&on(this),me(this,"refresh",this)}),swapDoc:Jn(function(e){var t=this.doc;return t.cm=null,this.state.selectingText&&this.state.selectingText(),Lr(this,e),Ni(this),this.display.input.reset(),Dn(this,e.scrollLeft,e.scrollTop),this.curOp.forceScroll=!0,si(this,"swapDoc",this,t),t}),phrase:function(e){var t=this.options.phrases;return t&&Object.prototype.hasOwnProperty.call(t,e)?t[e]:e},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},we(e),e.registerHelper=function(t,n,r){i.hasOwnProperty(t)||(i[t]=e[t]={_global:[]}),i[t][n]=r},e.registerGlobalHelper=function(t,n,r,o){e.registerHelper(t,n,o),i[t]._global.push({pred:r,val:o})}}(Es);var Hs="iter insert remove copy getEditor constructor".split(" ");for(var zs in ko.prototype)ko.prototype.hasOwnProperty(zs)&&j(Hs,zs)<0&&(Es.prototype[zs]=function(e){return function(){return e.apply(this.doc,arguments)}}(ko.prototype[zs]));return we(ko),Es.inputStyles={textarea:Ws,contenteditable:Os},Es.defineMode=function(e){Es.defaults.mode||"null"==e||(Es.defaults.mode=e),function(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),Me[e]=t}.apply(this,arguments)},Es.defineMIME=function(e,t){Oe[e]=t},Es.defineMode("null",function(){return{token:function(e){return e.skipToEnd()}}}),Es.defineMIME("text/plain","null"),Es.defineExtension=function(e,t){Es.prototype[e]=t},Es.defineDocExtension=function(e,t){ko.prototype[e]=t},Es.fromTextArea=function(e,t){if((t=t?P(t):{}).value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),null==t.autofocus){var i=B();t.autofocus=i==e||null!=e.getAttribute("autofocus")&&i==document.body}function n(){e.value=a.getValue()}var r;if(e.form&&(de(e.form,"submit",n),!t.leaveSubmitMethodAlone)){var o=e.form;r=o.submit;try{var s=o.submit=function(){n(),o.submit=r,o.submit(),o.submit=s}}catch(e){}}t.finishInit=function(i){i.save=n,i.getTextArea=function(){return e},i.toTextArea=function(){i.toTextArea=isNaN,n(),e.parentNode.removeChild(i.getWrapperElement()),e.style.display="",e.form&&(pe(e.form,"submit",n),t.leaveSubmitMethodAlone||"function"!=typeof e.form.submit||(e.form.submit=r))}},e.style.display="none";var a=Es(function(t){return e.parentNode.insertBefore(t,e.nextSibling)},t);return a},function(e){e.off=pe,e.on=de,e.wheelEventPixels=gr,e.Doc=ko,e.splitLines=Le,e.countColumn=N,e.findColumn=q,e.isWordChar=ee,e.Pass=H,e.signal=me,e.Line=Ut,e.changeEnd=Ar,e.scrollbarModel=jn,e.Pos=Ze,e.cmpPos=et,e.modes=Me,e.mimeModes=Oe,e.resolveMode=Pe,e.getMode=Ne,e.modeExtensions=Ie,e.extendMode=je,e.copyState=We,e.startState=ze,e.innerMode=He,e.commands=Xo,e.keyMap=Io,e.keyName=Uo,e.isModifierKey=zo,e.lookupKey=Ho,e.normalizeKeyMap=Wo,e.StringStream=Ve,e.SharedTextMarker=Eo,e.TextMarker=Co,e.LineWidget=yo,e.e_preventDefault=be,e.e_stopPropagation=Ce,e.e_stop=Ee,e.addClass=R,e.contains=L,e.rmClass=S,e.keyNames=Mo}(Es),Es.version="5.65.1",Es}()},yY5G:function(e,t,i){},"z/Td":function(e,t,i){i("h6RU"),i("LD0F"),e.exports=i("zpmP").Array.from}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-fd33.5cf62cd3.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-fd33.5cf62cd3.js index e7c7187b0..1665daa0d 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-fd33.5cf62cd3.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-fd33.5cf62cd3.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-fd33"],{"Y8y/":function(s,t,i){},e18q:function(s,t,i){s.exports=i.p+"static/img/404.a57b6f3.png"},jNvO:function(s,t,i){"use strict";i.r(t);var n=[function(){var s=this.$createElement,t=this._self._c||s;return t("div",{staticClass:"pic-404"},[t("img",{staticClass:"pic-404__parent",attrs:{src:i("e18q"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child left",attrs:{src:i("rMUB"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child mid",attrs:{src:i("rMUB"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child right",attrs:{src:i("rMUB"),alt:"404"}})])},function(){var s=this.$createElement,t=this._self._c||s;return t("div",{staticClass:"bullshit__info"},[this._v("版权所有\n "),t("a",{staticClass:"link-type",attrs:{href:"https://www.anji-plus.com",target:"_blank"}},[this._v("安吉加加")])])}],r={name:"Page404",computed:{message:function(){return"网管说这个页面你不能进......"}}},e=(i("quDT"),i("ZrdR")),l=Object(e.a)(r,function(){var s=this,t=s.$createElement,i=s._self._c||t;return i("div",{staticClass:"wscn-http404-container"},[i("div",{staticClass:"wscn-http404"},[s._m(0),s._v(" "),i("div",{staticClass:"bullshit"},[i("div",{staticClass:"bullshit__oops"},[s._v("OOPS!")]),s._v(" "),s._m(1),s._v(" "),i("div",{staticClass:"bullshit__headline"},[s._v(s._s(s.message))]),s._v(" "),i("div",{staticClass:"bullshit__info"},[s._v("请检查您输入的网址是否正确,请点击以下按钮返回主页或者发送错误报告")]),s._v(" "),i("a",{staticClass:"bullshit__return-home",attrs:{href:""}},[s._v("返回首页")])])])])},n,!1,null,"0e9cfd02",null);l.options.__file="404.vue";t.default=l.exports},quDT:function(s,t,i){"use strict";var n=i("Y8y/");i.n(n).a},rMUB:function(s,t){s.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAACKCAYAAABW3IOxAAAAAXNSR0IArs4c6QAAElhJREFUeAHtnXuQHMV9x7tndvdOQkgCWZKxkITEQ5YB87AVCT9iEqgyTsXlyA42QVRcScXYzvOPkKeJLSrOy8RVxMSVBNuVqrhIxS7KJk5BKlWpQKiKX4hgwOII6CzLAk6H0Pt0e/uY6Xx+p7vT3Gl2b2e3Z2d2t7vqdzuP7l//+tvf6+75dU+PVi5kioAxZl01UDtMEG43Wu/AmOuUUYeVVqNKmVGjvX2+HAdqX6mkfqS1Pp2pwQkz1wnju+gdIACZlpTr6npU7FChETIh5uJkKvWYPkO+fUp7oyZUowWt9hWLahTyHU2mK/3YjmApYjxlzGWmSuukQ4iktwP2NZCsmFqWWh9D96hWZp+nvb2lgvompNubWn4tKHYEawGkVqJAnBWVutpmZlono2mdjFnVSlqbcTytnynSpHlaXYPeV5F3QLIDNvNIossRLAlaM3Ehk1etqitDIZGidTKMnbTayvVM8IRAZQj1dNHXF9N9blhQpBc4f2dW3WcmgCwAIPenEGdNJVDbGYhDpOmB+DaunZ+14VrpV31fjxb96dZqeRN7vs29m4WITeKkcssRbAGsEKdUq6lrQ7o6M9M6GWU2LYiW6Snd4HO+p8sFX70dQ7wWjfkW8T4IyYIW41uJNvAEKxuzUQbiSocMwqdbp+sh2ZAVdC0qgRhVur8nS75+A79b2lT9AHo+3mbatpINHMEgz/JKqH7ZmPBtJtA3J3cTtIVz+4m0PsyYfS8D9ytRsrp9RXMpd0Oye+bOUj4YOIJNVsJvQKqdgitAh8aocQbIr/P0d4pLNbmMDOPsXKk9tSYMzUrOux6wbaTg6SN0g9vI3HaLeif6v9SNQg0UwSZr5ndVGP51EmCpiJPEH4OAxwFLBskyhilyvozBzyp+L5JxWxKdjeKSl+j+Xqmgl0D66xrFs3Bd8tlJfv9mQVdTFQNDMMj1Tm3M45Ch0BSRhDeppBqtnXjXZXrnlApV1TAKxwe2hHsreEBYw/015NsYazzwdIM/KBT0ZURa6GZIaFHL0eWf5SZs/E7LKdqI2LjQbSjLaxIqd3W5ap6ma1yXiY2MowB6nLyPQbZJ7dE1Kzz6Ri2hG6zMdINZuD2OYNO7IJn4ylIJfU8wyOVN1cx/8MuAPj+BSq0PFabnFddnbNUB8r8Be8bSsKNVH0oaeXdF51Q13J03cknB8WM9TUeaNbnElI3Iv4NRM0etxGsr9HULRsv1XoAT8HJVToZozw8V9VvaqrH0Ej2G6ltoyao2s+jbFmzSmPX4IB7MG7mowIlSUa+xWYmWdP0Mev7JNl59STBAKqqa+XoWqxkWq+yCr1+iOX3DYvEyuv8R8r3bZt59SbByDV+XmV7QZxOrjnUx7tpT8FL1b3VsIwq22lAyq6PvCDZZMbfy+P/bswXMz68ew4FqtfLyU7bGlvQVwVhBeoXW5iuNi5vNHcZdhkH9cXI/LxsLssu1bwjGuGuJqZmH+M3CYdm0Bnlp49tM/Qxc6yWgWJ02aYpyyjenauHfMXF9dcrZJFZP6/UiKyG2J07YJwn6ogVjGujXINdH81YnkGuKrlFWQvTNP3JSjHueYNWquZY5xvuTFrwb8Zln3INLQjzlAxt6n2BBeBdPjaxm0CZPtYg9e5jEfleebMrClp5vuk9Vwl1CLqZf9nuePljy1YTvqxKku4iB9eUM+m0v1lu8nrR+fbioB7rlmgWp5wkmBYFEOjBmcxCqzbX6bNFkaao+4fvmh3RVRwu+Z3iau5CLl5LggrOx7B/h7xpF68AO7KOI9gXBogWKHrPmakU9UG+rB/SetWD6Fq1dQEv3Eu8QjtHCVYueWso4aT1xraxsQPcTEPmno3YM8nFfEyyuYmnt/CAwlweBujx6n0WARwqe9+OCF55kOodDbzXE20z8lpdD02LuZ42X7D3hwgwCA0ewRjVvQrOqFgar5K2PMyGQl0JqdK//xxzi6wzYA1qmFazhugTSrZiNNfsrcSHXBOebZq+53wH2z7RS+RCpWAvMFnrXLdPvG80kohscLxW8l30dln3PG+ZR/E2QcATy3dSK3kGK41qwNmqbV9nWTlWDtWeSnhnbrT6/kNclOG2U0F6SnveD2YOiY03unzUGQkewGFDcJXsIOILZw9JpikHAESwGFHfJHgKOYPawdJpiEHAEiwHFXbKHgCOYPSydphgEHMFiQHGX7CHgCGYPS6cpBgFHsBhQ3CV7CDiC2cPSaYpBwE1vxIAy4Jd+gUn+V1rA4Ani3CHr65rFdQRrhs5g3ltCsUUWC7cRQbYX/XiziK6LbIaOu7cYAnfS2t3TLJIjWDN03L1WEPg0JPtko4iOYI2QcdeTIPC3kOxDcQkcweJQcdeSIiA8ks3+blyY0BFsISLuvF0E5P3ThyGZfEZwLjiCzUHhDiwgIC/DyJ64cy++OIJZQNWpmIfARZzJtvHT31VyBJuHjTuxhIC8c/ooJJPP7bjgEEgFAfmW5UOOYKlg65TOIHCTI5jjQqoIOIKlCq9T7gjmOJAqAo5gqcLrlDuCOQ6kikBPEww/yw2+7z3FvlynU0XJKW8bgZ5bcAipZDHcLyG/gVy/+owrr16tq2fLNXO0UgtWhopPtmSxN2vb1dC/CdnErzcCxLoUSz+B/Cpy4SJWlys1M1KuhyeqdcP3svWbSe8vkqaj22zfFPqe6ukeoSMA4hPXc00wSCEVdgsirdX7kLbsZYfWE3yc9AW+fltmQ7mLjNJXoLstXdgQGxzBYmHJJ8GofGmhfgX5dWRzrOkdXOSrIIf5OsiLtHB1NgneQH6bOlA3ndQRLBbBfBGMipYNdKW1kjFWKy8exJYq6cXQqJch3GilFupqIIQ2FyfV4QgWi1j2BINUsovzrchvIjtizezyRfbb38cDw0E+sFXgeAs2LvoJZEew2ErKjmBU2gZMkleePoZMrx2KNTH7i2EtVCO0cIdo4ZaGodrKnvorF5rlCLYQkenz7hMMYt1M1tINvh9J9cluuoj2/9T4msjeybo5DOFWmFBdCeHOcwSLBbo7BINUy8n+o4gQa0usKb17cbJSV4+VCurneCy1+mTau5DMWZ4uwSDWVWQlpLoDWTaXbf8cvERR5FPJ2/qnSFZLUrfuyYdUonMnIsR6j1Vz86PsJ5jyMnID4lqtJvViDRyIJYv975yRNzXJs5dvjWO8tFrytGv9n7OXgWlg+2sdEwxivRvl0lp9ECk2yKjXL0s3+CwiXWHX/HM9DNppbL8PubdtgkGsN/INn78s+upnUbS+h8FoZroAtQe5DpEHFReaI1Dl9j8gn2Vbp9ckatsEK1eDrzHl8mEUhSj5AR+D4qOf6gp0in+r14MA9T1kK+K+QbR4bcoeYV9FdsOHA9HobRFsqm7eFwbho1FFcoxymUF+Zubzd/Ju3MaFcXJ+HmLfd5FLkH4dR1I0q+EbaLubuh+J05qYYHSNS6eqZi/OxUviFM5emyHbs0I2vqF9KRk1jT+bLsPf75P3amRThjb0Utb/ibF/RD3LEKJhSEywqUpwL//mdzXUGHNDyMaSmef4uOdhutG8ke1pTF6K9JsDOKYmrFySoYMQ67FWtCUiWLVqrgmU2UMr1tEjOsb9kJZtHLJtwgDry3FaKThx9iIydnhri/EHPZrgJV3hw0mAaJlgkMpjhcF3WIr8U0kyWCwuBu+dIdslXSLbPmwSt4O82u7C4gjsJ8pnkAepKxmjJgotE4xx12+FJvxCIu0JI1OAEcg2Rsu2EcNkibTNcBBlryDbkZbLbdOAHtN1CHs/izxAvZz9lHnCQrQENK3XOpYcj/B7fkL9bUenUPIx9lch24YOySb+GPG+C7E66trbLkxvJZTW/XPI31AHk52a3hLBJishj6JG5hczCRT0Rcj2CmRbj8GXtWiEAPUcsg0ZbjHNIEcTMkkP9VfgLdhZCYsSrFI3HwiC8GEruVlQQuH3QbaDBQ+y6ViyCVBPIdciXWtxLRQtKxXS/T2AiPddukWroSnB6BKXMfZ6Hp9XLqeCeOF2lFfFDhZ8vQ6ybQQZ8WWJ932VVZT6U5kM2B9EPgOxZCCfSmhKsMlqcJ8y6ndSydmiUgAKhor6dQqz1qLaflb1rxTuU+AmrodUQ0OC4fN6Oz6v79KK5X5Zs+/rl0u+TvwmUKrI5lP5f2HWH0MscZZ2JcQSTEiFz+tJfF6yiiDXAbAmhou6H1fL2sT9SZQJsWR6p6sh9rG9XKdb7AFyCVJFv30fTVeRziYzmYAW77tMSGcSzmnByvI6WY2BvTHnZWJRgkw1c5vDBb06QZJBiXqAgu5Gvgq5ZDoss3BOC2aq5ov4vHJPLkGMcZds/O/CWQTEqfxnyN9DLFnTlnmYRzB8Xr+Iz+vnM7eqBQM8Tx/ytHpjC1EHIcoJCnkvch/EOp2nAs91kXSJK3h7mT57+uWNPNl4ji2AWMMtUZwz/pwYA3OhTEnvR8T7fjSPpZ5rwdiH4S8wUN4Myn3Ai38Kcl2Ye0PTM1C8719B/hRivZpeNp1rnm4E8HntwOf1P7RiXucq09UAoCdxSyxPN5fcajdY9i/In4DDaG6tjBhWgFQFVko80AvkErtxSwxF7B+kw/+msHdBrKZLlPMGiDdVV3dBrqvzZlicPbgljjD3OGgEE1/WByDWjb1GLqlDjy3+buR1oCNxFZqna4Brhnw9SJPYsrLhE8jVlP1beaqLJLboseM1tizV1VLB+9+SH0762mM1Qv6eJFkxcYzu8YIkhevRuOJm+DzyOYiVK5dDO3ieIVgkJYUKqcxn8JAfw890GWTbELmdySE2VRjY93vXKB73f0RkAG99XVYmFUem5xBsoSG4BEaGCvpQ0ffWsy4MwnU/FAteGTuWdD/nruX4CDn9PsR6vms5dimjRQkWtcMvePuHff0TXqRdw5uOsrAv9eBpfQqnar+uTH0KAOXJ8PHUgcwog0QEi9rIVM3YkqLH8mVzASR4S1pujqGiZ+iq+81p/2OwvBv5Z8glvq2+DW0TLIqI53tHadle4KWMpZDhKvGtRe+3e8za+xOlQl9NaB8Diz9H7odYlXZx6aV0VggWLTBPoRNF34yUitBOs0Fum98MogJCxn40jlHtPXssKxu+iMjUjpBsYIJ1gkWRgx7VkqefZ1lNnXHbVsjW8jIgnmQncUssjerrwWPp/r6OyF4O+3vQ/o5NTpVgUeukRYIwI7gbJmnZ5FtBDddyEXeKeMPR9D14LFM7v0dZnuxB262Z3DWCLbQYx+5LeOaPez6bnxgzz0PPvYApody/bLKwTDPnMrXzhxCrZ73vDcrV1uXMCBa1tljQB0u+GmfItR7CLWPs1XJXGtWT8bE4R+9BvgS5Ml2mnDEO87LPBcGiFp0/7KvzhnpqZD87tXMvxJqIlsUd53AzEGYLqJeeIFhfTu3Y/qew4q+ybVQP6OvbqR3b2DuCJUNUpnbkyfCxZMkGN3bul0jnpGoOYMcdyDZHrmQ14lqw5njJPlkytfMFiDUQUzvN4Uh+1xEsHrPZqR3ZMyuXr4PFm52/q45g8+tk4Kd25sPR+Zkj2FkMn+BQ1mYN9NTOWTjsHDmCKfUCUP4BxHJTO3Y4NU/LID9FjoPEJ5GrHLnmccLqySC2YG5qxyqFmisrsBp5gumZQdghcHZq59O0WGPNYXF3bSHgrV3hrwXwXcgjSNtfdLBlUEp6HkXvNZTvY4gjV0ogx6mdN6t88qRZVQ7DDxsd7mLC+R0sCpx3P06B7WvLhj3W61gbGrqpHdsVlFBfQwIdK5uNlUp4u1Lh7TiHrkqot+3olggmUzufQvr+rZ22ge5SwoYEi+Y/PmHequr1XaHSt6X9pneHBHNTO9GKy8FxSwSbtVO6zMMT6t2hCW7nC6O3stTZ+iZwbRLMTe3MVlLOfhMRLGo7ZCuOnwpuYX3gLsj2flo2K28AJSTY7NSO7AH/o6h97jgfCLRNsKj5r/FNI3My2MnHb3ah8GbI1/YLGwkIJlM7sjbr+1Fb3HG+ELBCsGiRDp0ya1QYfmT64cCoHdF7rRy3QDA3tdMKkDmJY51g0XKNHzebcXnwFIrbw6g3R+81Om5CMJna2Y18mVar3ii9u54vBFIlWLSoh0+b6+u1+u3MHNzGzMG66L3ocQzB5PuPn0dkQzb31k4UrB447hrBZrFgfOYdmqi/RwcaZ676EGRbOXtPfiMEc1M7UWDccXIEINvQ+Mn6zrHj9YfGTtTLsp3nqamAy+YR5MrkGl0Kh0ADBI4Ys/zUVPj4sdPBPQ2iuMsOAYeAQ2A+Av8Pby5Qwk3kUm8AAAAASUVORK5CYII="}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-fd33"],{"Y8y/":function(s,t,i){},e18q:function(s,t,i){s.exports=i.p+"static/img/404.a57b6f3.png"},jNvO:function(s,t,i){"use strict";i.r(t);var n=[function(){var s=this.$createElement,t=this._self._c||s;return t("div",{staticClass:"pic-404"},[t("img",{staticClass:"pic-404__parent",attrs:{src:i("e18q"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child left",attrs:{src:i("rMUB"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child mid",attrs:{src:i("rMUB"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child right",attrs:{src:i("rMUB"),alt:"404"}})])},function(){var s=this.$createElement,t=this._self._c||s;return t("div",{staticClass:"bullshit__info"},[this._v("版权所有\n "),t("a",{staticClass:"link-type",attrs:{href:"https://www.anji-plus.com",target:"_blank"}},[this._v("安吉加加")])])}],r={name:"Page404",computed:{message:function(){return"网管说这个页面你不能进......"}}},e=(i("quDT"),i("ZrdR")),l=Object(e.a)(r,function(){var s=this,t=s.$createElement,i=s._self._c||t;return i("div",{staticClass:"wscn-http404-container"},[i("div",{staticClass:"wscn-http404"},[s._m(0),s._v(" "),i("div",{staticClass:"bullshit"},[i("div",{staticClass:"bullshit__oops"},[s._v("OOPS!")]),s._v(" "),s._m(1),s._v(" "),i("div",{staticClass:"bullshit__headline"},[s._v(s._s(s.message))]),s._v(" "),i("div",{staticClass:"bullshit__info"},[s._v("请检查您输入的网址是否正确,请点击以下按钮返回主页或者发送错误报告")]),s._v(" "),i("a",{staticClass:"bullshit__return-home",attrs:{href:""}},[s._v("返回首页")])])])])},n,!1,null,"0e9cfd02",null);l.options.__file="404.vue";t.default=l.exports},quDT:function(s,t,i){"use strict";var n=i("Y8y/");i.n(n).a},rMUB:function(s,t){s.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAACKCAYAAABW3IOxAAAAAXNSR0IArs4c6QAAElhJREFUeAHtnXuQHMV9x7tndvdOQkgCWZKxkITEQ5YB87AVCT9iEqgyTsXlyA42QVRcScXYzvOPkKeJLSrOy8RVxMSVBNuVqrhIxS7KJk5BKlWpQKiKX4hgwOII6CzLAk6H0Pt0e/uY6Xx+p7vT3Gl2b2e3Z2d2t7vqdzuP7l//+tvf6+75dU+PVi5kioAxZl01UDtMEG43Wu/AmOuUUYeVVqNKmVGjvX2+HAdqX6mkfqS1Pp2pwQkz1wnju+gdIACZlpTr6npU7FChETIh5uJkKvWYPkO+fUp7oyZUowWt9hWLahTyHU2mK/3YjmApYjxlzGWmSuukQ4iktwP2NZCsmFqWWh9D96hWZp+nvb2lgvompNubWn4tKHYEawGkVqJAnBWVutpmZlono2mdjFnVSlqbcTytnynSpHlaXYPeV5F3QLIDNvNIossRLAlaM3Ehk1etqitDIZGidTKMnbTayvVM8IRAZQj1dNHXF9N9blhQpBc4f2dW3WcmgCwAIPenEGdNJVDbGYhDpOmB+DaunZ+14VrpV31fjxb96dZqeRN7vs29m4WITeKkcssRbAGsEKdUq6lrQ7o6M9M6GWU2LYiW6Snd4HO+p8sFX70dQ7wWjfkW8T4IyYIW41uJNvAEKxuzUQbiSocMwqdbp+sh2ZAVdC0qgRhVur8nS75+A79b2lT9AHo+3mbatpINHMEgz/JKqH7ZmPBtJtA3J3cTtIVz+4m0PsyYfS8D9ytRsrp9RXMpd0Oye+bOUj4YOIJNVsJvQKqdgitAh8aocQbIr/P0d4pLNbmMDOPsXKk9tSYMzUrOux6wbaTg6SN0g9vI3HaLeif6v9SNQg0UwSZr5ndVGP51EmCpiJPEH4OAxwFLBskyhilyvozBzyp+L5JxWxKdjeKSl+j+Xqmgl0D66xrFs3Bd8tlJfv9mQVdTFQNDMMj1Tm3M45Ch0BSRhDeppBqtnXjXZXrnlApV1TAKxwe2hHsreEBYw/015NsYazzwdIM/KBT0ZURa6GZIaFHL0eWf5SZs/E7LKdqI2LjQbSjLaxIqd3W5ap6ma1yXiY2MowB6nLyPQbZJ7dE1Kzz6Ri2hG6zMdINZuD2OYNO7IJn4ylIJfU8wyOVN1cx/8MuAPj+BSq0PFabnFddnbNUB8r8Be8bSsKNVH0oaeXdF51Q13J03cknB8WM9TUeaNbnElI3Iv4NRM0etxGsr9HULRsv1XoAT8HJVToZozw8V9VvaqrH0Ej2G6ltoyao2s+jbFmzSmPX4IB7MG7mowIlSUa+xWYmWdP0Mev7JNl59STBAKqqa+XoWqxkWq+yCr1+iOX3DYvEyuv8R8r3bZt59SbByDV+XmV7QZxOrjnUx7tpT8FL1b3VsIwq22lAyq6PvCDZZMbfy+P/bswXMz68ew4FqtfLyU7bGlvQVwVhBeoXW5iuNi5vNHcZdhkH9cXI/LxsLssu1bwjGuGuJqZmH+M3CYdm0Bnlp49tM/Qxc6yWgWJ02aYpyyjenauHfMXF9dcrZJFZP6/UiKyG2J07YJwn6ogVjGujXINdH81YnkGuKrlFWQvTNP3JSjHueYNWquZY5xvuTFrwb8Zln3INLQjzlAxt6n2BBeBdPjaxm0CZPtYg9e5jEfleebMrClp5vuk9Vwl1CLqZf9nuePljy1YTvqxKku4iB9eUM+m0v1lu8nrR+fbioB7rlmgWp5wkmBYFEOjBmcxCqzbX6bNFkaao+4fvmh3RVRwu+Z3iau5CLl5LggrOx7B/h7xpF68AO7KOI9gXBogWKHrPmakU9UG+rB/SetWD6Fq1dQEv3Eu8QjtHCVYueWso4aT1xraxsQPcTEPmno3YM8nFfEyyuYmnt/CAwlweBujx6n0WARwqe9+OCF55kOodDbzXE20z8lpdD02LuZ42X7D3hwgwCA0ewRjVvQrOqFgar5K2PMyGQl0JqdK//xxzi6wzYA1qmFazhugTSrZiNNfsrcSHXBOebZq+53wH2z7RS+RCpWAvMFnrXLdPvG80kohscLxW8l30dln3PG+ZR/E2QcATy3dSK3kGK41qwNmqbV9nWTlWDtWeSnhnbrT6/kNclOG2U0F6SnveD2YOiY03unzUGQkewGFDcJXsIOILZw9JpikHAESwGFHfJHgKOYPawdJpiEHAEiwHFXbKHgCOYPSydphgEHMFiQHGX7CHgCGYPS6cpBgFHsBhQ3CV7CDiC2cPSaYpBwE1vxIAy4Jd+gUn+V1rA4Ani3CHr65rFdQRrhs5g3ltCsUUWC7cRQbYX/XiziK6LbIaOu7cYAnfS2t3TLJIjWDN03L1WEPg0JPtko4iOYI2QcdeTIPC3kOxDcQkcweJQcdeSIiA8ks3+blyY0BFsISLuvF0E5P3ThyGZfEZwLjiCzUHhDiwgIC/DyJ64cy++OIJZQNWpmIfARZzJtvHT31VyBJuHjTuxhIC8c/ooJJPP7bjgEEgFAfmW5UOOYKlg65TOIHCTI5jjQqoIOIKlCq9T7gjmOJAqAo5gqcLrlDuCOQ6kikBPEww/yw2+7z3FvlynU0XJKW8bgZ5bcAipZDHcLyG/gVy/+owrr16tq2fLNXO0UgtWhopPtmSxN2vb1dC/CdnErzcCxLoUSz+B/Cpy4SJWlys1M1KuhyeqdcP3svWbSe8vkqaj22zfFPqe6ukeoSMA4hPXc00wSCEVdgsirdX7kLbsZYfWE3yc9AW+fltmQ7mLjNJXoLstXdgQGxzBYmHJJ8GofGmhfgX5dWRzrOkdXOSrIIf5OsiLtHB1NgneQH6bOlA3ndQRLBbBfBGMipYNdKW1kjFWKy8exJYq6cXQqJch3GilFupqIIQ2FyfV4QgWi1j2BINUsovzrchvIjtizezyRfbb38cDw0E+sFXgeAs2LvoJZEew2ErKjmBU2gZMkleePoZMrx2KNTH7i2EtVCO0cIdo4ZaGodrKnvorF5rlCLYQkenz7hMMYt1M1tINvh9J9cluuoj2/9T4msjeybo5DOFWmFBdCeHOcwSLBbo7BINUy8n+o4gQa0usKb17cbJSV4+VCurneCy1+mTau5DMWZ4uwSDWVWQlpLoDWTaXbf8cvERR5FPJ2/qnSFZLUrfuyYdUonMnIsR6j1Vz86PsJ5jyMnID4lqtJvViDRyIJYv975yRNzXJs5dvjWO8tFrytGv9n7OXgWlg+2sdEwxivRvl0lp9ECk2yKjXL0s3+CwiXWHX/HM9DNppbL8PubdtgkGsN/INn78s+upnUbS+h8FoZroAtQe5DpEHFReaI1Dl9j8gn2Vbp9ckatsEK1eDrzHl8mEUhSj5AR+D4qOf6gp0in+r14MA9T1kK+K+QbR4bcoeYV9FdsOHA9HobRFsqm7eFwbho1FFcoxymUF+Zubzd/Ju3MaFcXJ+HmLfd5FLkH4dR1I0q+EbaLubuh+J05qYYHSNS6eqZi/OxUviFM5emyHbs0I2vqF9KRk1jT+bLsPf75P3amRThjb0Utb/ibF/RD3LEKJhSEywqUpwL//mdzXUGHNDyMaSmef4uOdhutG8ke1pTF6K9JsDOKYmrFySoYMQ67FWtCUiWLVqrgmU2UMr1tEjOsb9kJZtHLJtwgDry3FaKThx9iIydnhri/EHPZrgJV3hw0mAaJlgkMpjhcF3WIr8U0kyWCwuBu+dIdslXSLbPmwSt4O82u7C4gjsJ8pnkAepKxmjJgotE4xx12+FJvxCIu0JI1OAEcg2Rsu2EcNkibTNcBBlryDbkZbLbdOAHtN1CHs/izxAvZz9lHnCQrQENK3XOpYcj/B7fkL9bUenUPIx9lch24YOySb+GPG+C7E66trbLkxvJZTW/XPI31AHk52a3hLBJishj6JG5hczCRT0Rcj2CmRbj8GXtWiEAPUcsg0ZbjHNIEcTMkkP9VfgLdhZCYsSrFI3HwiC8GEruVlQQuH3QbaDBQ+y6ViyCVBPIdciXWtxLRQtKxXS/T2AiPddukWroSnB6BKXMfZ6Hp9XLqeCeOF2lFfFDhZ8vQ6ybQQZ8WWJ932VVZT6U5kM2B9EPgOxZCCfSmhKsMlqcJ8y6ndSydmiUgAKhor6dQqz1qLaflb1rxTuU+AmrodUQ0OC4fN6Oz6v79KK5X5Zs+/rl0u+TvwmUKrI5lP5f2HWH0MscZZ2JcQSTEiFz+tJfF6yiiDXAbAmhou6H1fL2sT9SZQJsWR6p6sh9rG9XKdb7AFyCVJFv30fTVeRziYzmYAW77tMSGcSzmnByvI6WY2BvTHnZWJRgkw1c5vDBb06QZJBiXqAgu5Gvgq5ZDoss3BOC2aq5ov4vHJPLkGMcZds/O/CWQTEqfxnyN9DLFnTlnmYRzB8Xr+Iz+vnM7eqBQM8Tx/ytHpjC1EHIcoJCnkvch/EOp2nAs91kXSJK3h7mT57+uWNPNl4ji2AWMMtUZwz/pwYA3OhTEnvR8T7fjSPpZ5rwdiH4S8wUN4Myn3Ai38Kcl2Ye0PTM1C8719B/hRivZpeNp1rnm4E8HntwOf1P7RiXucq09UAoCdxSyxPN5fcajdY9i/In4DDaG6tjBhWgFQFVko80AvkErtxSwxF7B+kw/+msHdBrKZLlPMGiDdVV3dBrqvzZlicPbgljjD3OGgEE1/WByDWjb1GLqlDjy3+buR1oCNxFZqna4Brhnw9SJPYsrLhE8jVlP1beaqLJLboseM1tizV1VLB+9+SH0762mM1Qv6eJFkxcYzu8YIkhevRuOJm+DzyOYiVK5dDO3ieIVgkJYUKqcxn8JAfw890GWTbELmdySE2VRjY93vXKB73f0RkAG99XVYmFUem5xBsoSG4BEaGCvpQ0ffWsy4MwnU/FAteGTuWdD/nruX4CDn9PsR6vms5dimjRQkWtcMvePuHff0TXqRdw5uOsrAv9eBpfQqnar+uTH0KAOXJ8PHUgcwog0QEi9rIVM3YkqLH8mVzASR4S1pujqGiZ+iq+81p/2OwvBv5Z8glvq2+DW0TLIqI53tHadle4KWMpZDhKvGtRe+3e8za+xOlQl9NaB8Diz9H7odYlXZx6aV0VggWLTBPoRNF34yUitBOs0Fum98MogJCxn40jlHtPXssKxu+iMjUjpBsYIJ1gkWRgx7VkqefZ1lNnXHbVsjW8jIgnmQncUssjerrwWPp/r6OyF4O+3vQ/o5NTpVgUeukRYIwI7gbJmnZ5FtBDddyEXeKeMPR9D14LFM7v0dZnuxB262Z3DWCLbQYx+5LeOaPez6bnxgzz0PPvYApody/bLKwTDPnMrXzhxCrZ73vDcrV1uXMCBa1tljQB0u+GmfItR7CLWPs1XJXGtWT8bE4R+9BvgS5Ml2mnDEO87LPBcGiFp0/7KvzhnpqZD87tXMvxJqIlsUd53AzEGYLqJeeIFhfTu3Y/qew4q+ybVQP6OvbqR3b2DuCJUNUpnbkyfCxZMkGN3bul0jnpGoOYMcdyDZHrmQ14lqw5njJPlkytfMFiDUQUzvN4Uh+1xEsHrPZqR3ZMyuXr4PFm52/q45g8+tk4Kd25sPR+Zkj2FkMn+BQ1mYN9NTOWTjsHDmCKfUCUP4BxHJTO3Y4NU/LID9FjoPEJ5GrHLnmccLqySC2YG5qxyqFmisrsBp5gumZQdghcHZq59O0WGPNYXF3bSHgrV3hrwXwXcgjSNtfdLBlUEp6HkXvNZTvY4gjV0ogx6mdN6t88qRZVQ7DDxsd7mLC+R0sCpx3P06B7WvLhj3W61gbGrqpHdsVlFBfQwIdK5uNlUp4u1Lh7TiHrkqot+3olggmUzufQvr+rZ22ge5SwoYEi+Y/PmHequr1XaHSt6X9pneHBHNTO9GKy8FxSwSbtVO6zMMT6t2hCW7nC6O3stTZ+iZwbRLMTe3MVlLOfhMRLGo7ZCuOnwpuYX3gLsj2flo2K28AJSTY7NSO7AH/o6h97jgfCLRNsKj5r/FNI3My2MnHb3ah8GbI1/YLGwkIJlM7sjbr+1Fb3HG+ELBCsGiRDp0ya1QYfmT64cCoHdF7rRy3QDA3tdMKkDmJY51g0XKNHzebcXnwFIrbw6g3R+81Om5CMJna2Y18mVar3ii9u54vBFIlWLSoh0+b6+u1+u3MHNzGzMG66L3ocQzB5PuPn0dkQzb31k4UrB447hrBZrFgfOYdmqi/RwcaZ676EGRbOXtPfiMEc1M7UWDccXIEINvQ+Mn6zrHj9YfGTtTLsp3nqamAy+YR5MrkGl0Kh0ADBI4Ys/zUVPj4sdPBPQ2iuMsOAYeAQ2A+Av8Pby5Qwk3kUm8AAAAASUVORK5CYII="}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-libs.d7aae815.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-libs.d7aae815.js index 22dfa1e2c..469a9f8d7 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-libs.d7aae815.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/chunk-libs.d7aae815.js @@ -96,4 +96,4 @@ return e.mode.CTRGladman=function(){var t=e.lib.BlockCipherMode.extend();functio * vue-router v3.0.1 * (c) 2017 Evan You * @license MIT - */function i(e,t){0}function r(e){return Object.prototype.toString.call(e).indexOf("Error")>-1}var o={name:"router-view",functional:!0,props:{name:{type:String,default:"default"}},render:function(e,t){var n=t.props,i=t.children,r=t.parent,o=t.data;o.routerView=!0;for(var a=r.$createElement,s=n.name,l=r.$route,c=r._routerViewCache||(r._routerViewCache={}),u=0,d=!1;r&&r._routerRoot!==r;)r.$vnode&&r.$vnode.data.routerView&&u++,r._inactive&&(d=!0),r=r.$parent;if(o.routerViewDepth=u,d)return a(c[s],o,i);var h=l.matched[u];if(!h)return c[s]=null,a();var f=c[s]=h.components[s];o.registerRouteInstance=function(e,t){var n=h.instances[s];(t&&n!==e||!t&&n===e)&&(h.instances[s]=t)},(o.hook||(o.hook={})).prepatch=function(e,t){h.instances[s]=t.componentInstance};var p=o.props=function(e,t){switch(typeof t){case"undefined":return;case"object":return t;case"function":return t(e);case"boolean":return t?e.params:void 0;default:0}}(l,h.props&&h.props[s]);if(p){p=o.props=function(e,t){for(var n in t)e[n]=t[n];return e}({},p);var m=o.attrs=o.attrs||{};for(var g in p)f.props&&g in f.props||(m[g]=p[g],delete p[g])}return a(f,o,i)}};var a=/[!'()*]/g,s=function(e){return"%"+e.charCodeAt(0).toString(16)},l=/%2C/g,c=function(e){return encodeURIComponent(e).replace(a,s).replace(l,",")},u=decodeURIComponent;function d(e){var t={};return(e=e.trim().replace(/^(\?|#|&)/,""))?(e.split("&").forEach(function(e){var n=e.replace(/\+/g," ").split("="),i=u(n.shift()),r=n.length>0?u(n.join("=")):null;void 0===t[i]?t[i]=r:Array.isArray(t[i])?t[i].push(r):t[i]=[t[i],r]}),t):t}function h(e){var t=e?Object.keys(e).map(function(t){var n=e[t];if(void 0===n)return"";if(null===n)return c(t);if(Array.isArray(n)){var i=[];return n.forEach(function(e){void 0!==e&&(null===e?i.push(c(t)):i.push(c(t)+"="+c(e)))}),i.join("&")}return c(t)+"="+c(n)}).filter(function(e){return e.length>0}).join("&"):null;return t?"?"+t:""}var f=/\/?$/;function p(e,t,n,i){var r=i&&i.options.stringifyQuery,o=t.query||{};try{o=m(o)}catch(e){}var a={name:t.name||e&&e.name,meta:e&&e.meta||{},path:t.path||"/",hash:t.hash||"",query:o,params:t.params||{},fullPath:v(t,r),matched:e?function(e){var t=[];for(;e;)t.unshift(e),e=e.parent;return t}(e):[]};return n&&(a.redirectedFrom=v(n,r)),Object.freeze(a)}function m(e){if(Array.isArray(e))return e.map(m);if(e&&"object"==typeof e){var t={};for(var n in e)t[n]=m(e[n]);return t}return e}var g=p(null,{path:"/"});function v(e,t){var n=e.path,i=e.query;void 0===i&&(i={});var r=e.hash;return void 0===r&&(r=""),(n||"/")+(t||h)(i)+r}function y(e,t){return t===g?e===t:!!t&&(e.path&&t.path?e.path.replace(f,"")===t.path.replace(f,"")&&e.hash===t.hash&&b(e.query,t.query):!(!e.name||!t.name)&&(e.name===t.name&&e.hash===t.hash&&b(e.query,t.query)&&b(e.params,t.params)))}function b(e,t){if(void 0===e&&(e={}),void 0===t&&(t={}),!e||!t)return e===t;var n=Object.keys(e),i=Object.keys(t);return n.length===i.length&&n.every(function(n){var i=e[n],r=t[n];return"object"==typeof i&&"object"==typeof r?b(i,r):String(i)===String(r)})}var _,x=[String,Object],w=[String,Array],S={name:"router-link",props:{to:{type:x,required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,event:{type:w,default:"click"}},render:function(e){var t=this,n=this.$router,i=this.$route,r=n.resolve(this.to,i,this.append),o=r.location,a=r.route,s=r.href,l={},c=n.options.linkActiveClass,u=n.options.linkExactActiveClass,d=null==c?"router-link-active":c,h=null==u?"router-link-exact-active":u,m=null==this.activeClass?d:this.activeClass,g=null==this.exactActiveClass?h:this.exactActiveClass,v=o.path?p(null,o,null,n):a;l[g]=y(i,v),l[m]=this.exact?l[g]:function(e,t){return 0===e.path.replace(f,"/").indexOf(t.path.replace(f,"/"))&&(!t.hash||e.hash===t.hash)&&function(e,t){for(var n in t)if(!(n in e))return!1;return!0}(e.query,t.query)}(i,v);var b=function(e){C(e)&&(t.replace?n.replace(o):n.push(o))},x={click:C};Array.isArray(this.event)?this.event.forEach(function(e){x[e]=b}):x[this.event]=b;var w={class:l};if("a"===this.tag)w.on=x,w.attrs={href:s};else{var S=function e(t){if(t)for(var n,i=0;i<t.length;i++){if("a"===(n=t[i]).tag)return n;if(n.children&&(n=e(n.children)))return n}}(this.$slots.default);if(S){S.isStatic=!1;var k=_.util.extend;(S.data=k({},S.data)).on=x,(S.data.attrs=k({},S.data.attrs)).href=s}else w.on=x}return e(this.tag,w,this.$slots.default)}};function C(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey||e.defaultPrevented||void 0!==e.button&&0!==e.button)){if(e.currentTarget&&e.currentTarget.getAttribute){var t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function k(e){if(!k.installed||_!==e){k.installed=!0,_=e;var t=function(e){return void 0!==e},n=function(e,n){var i=e.$options._parentVnode;t(i)&&t(i=i.data)&&t(i=i.registerRouteInstance)&&i(e,n)};e.mixin({beforeCreate:function(){t(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,n(this,this)},destroyed:function(){n(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("router-view",o),e.component("router-link",S);var i=e.config.optionMergeStrategies;i.beforeRouteEnter=i.beforeRouteLeave=i.beforeRouteUpdate=i.created}}var M="undefined"!=typeof window;function O(e,t,n){var i=e.charAt(0);if("/"===i)return e;if("?"===i||"#"===i)return t+e;var r=t.split("/");n&&r[r.length-1]||r.pop();for(var o=e.replace(/^\//,"").split("/"),a=0;a<o.length;a++){var s=o[a];".."===s?r.pop():"."!==s&&r.push(s)}return""!==r[0]&&r.unshift(""),r.join("/")}function D(e){return e.replace(/\/\//g,"/")}var T=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)},A=G,I=B,E=function(e,t){return j(B(e,t))},P=j,L=W,N=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function B(e,t){for(var n,i=[],r=0,o=0,a="",s=t&&t.delimiter||"/";null!=(n=N.exec(e));){var l=n[0],c=n[1],u=n.index;if(a+=e.slice(o,u),o=u+l.length,c)a+=c[1];else{var d=e[o],h=n[2],f=n[3],p=n[4],m=n[5],g=n[6],v=n[7];a&&(i.push(a),a="");var y=null!=h&&null!=d&&d!==h,b="+"===g||"*"===g,_="?"===g||"*"===g,x=n[2]||s,w=p||m;i.push({name:f||r++,prefix:h||"",delimiter:x,optional:_,repeat:b,partial:y,asterisk:!!v,pattern:w?F(w):v?".*":"[^"+R(x)+"]+?"})}}return o<e.length&&(a+=e.substr(o)),a&&i.push(a),i}function z(e){return encodeURI(e).replace(/[\/?#]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}function $(e){return encodeURI(e).replace(/[?#]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}function j(e){for(var t=new Array(e.length),n=0;n<e.length;n++)"object"==typeof e[n]&&(t[n]=new RegExp("^(?:"+e[n].pattern+")$"));return function(n,i){for(var r="",o=n||{},a=(i||{}).pretty?z:encodeURIComponent,s=0;s<e.length;s++){var l=e[s];if("string"!=typeof l){var c,u=o[l.name];if(null==u){if(l.optional){l.partial&&(r+=l.prefix);continue}throw new TypeError('Expected "'+l.name+'" to be defined')}if(T(u)){if(!l.repeat)throw new TypeError('Expected "'+l.name+'" to not repeat, but received `'+JSON.stringify(u)+"`");if(0===u.length){if(l.optional)continue;throw new TypeError('Expected "'+l.name+'" to not be empty')}for(var d=0;d<u.length;d++){if(c=a(u[d]),!t[s].test(c))throw new TypeError('Expected all "'+l.name+'" to match "'+l.pattern+'", but received `'+JSON.stringify(c)+"`");r+=(0===d?l.prefix:l.delimiter)+c}}else{if(c=l.asterisk?$(u):a(u),!t[s].test(c))throw new TypeError('Expected "'+l.name+'" to match "'+l.pattern+'", but received "'+c+'"');r+=l.prefix+c}}else r+=l}return r}}function R(e){return e.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function F(e){return e.replace(/([=!:$\/()])/g,"\\$1")}function V(e,t){return e.keys=t,e}function H(e){return e.sensitive?"":"i"}function W(e,t,n){T(t)||(n=t||n,t=[]);for(var i=(n=n||{}).strict,r=!1!==n.end,o="",a=0;a<e.length;a++){var s=e[a];if("string"==typeof s)o+=R(s);else{var l=R(s.prefix),c="(?:"+s.pattern+")";t.push(s),s.repeat&&(c+="(?:"+l+c+")*"),o+=c=s.optional?s.partial?l+"("+c+")?":"(?:"+l+"("+c+"))?":l+"("+c+")"}}var u=R(n.delimiter||"/"),d=o.slice(-u.length)===u;return i||(o=(d?o.slice(0,-u.length):o)+"(?:"+u+"(?=$))?"),o+=r?"$":i&&d?"":"(?="+u+"|$)",V(new RegExp("^"+o,H(n)),t)}function G(e,t,n){return T(t)||(n=t||n,t=[]),n=n||{},e instanceof RegExp?function(e,t){var n=e.source.match(/\((?!\?)/g);if(n)for(var i=0;i<n.length;i++)t.push({name:i,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,asterisk:!1,pattern:null});return V(e,t)}(e,t):T(e)?function(e,t,n){for(var i=[],r=0;r<e.length;r++)i.push(G(e[r],t,n).source);return V(new RegExp("(?:"+i.join("|")+")",H(n)),t)}(e,t,n):function(e,t,n){return W(B(e,n),t,n)}(e,t,n)}A.parse=I,A.compile=E,A.tokensToFunction=P,A.tokensToRegExp=L;var q=Object.create(null);function U(e,t,n){try{return(q[e]||(q[e]=A.compile(e)))(t||{},{pretty:!0})}catch(e){return""}}function Y(e,t,n,i){var r=t||[],o=n||Object.create(null),a=i||Object.create(null);e.forEach(function(e){!function e(t,n,i,r,o,a){var s=r.path;var l=r.name;0;var c=r.pathToRegexpOptions||{};var u=function(e,t,n){n||(e=e.replace(/\/$/,""));if("/"===e[0])return e;if(null==t)return e;return D(t.path+"/"+e)}(s,o,c.strict);"boolean"==typeof r.caseSensitive&&(c.sensitive=r.caseSensitive);var d={path:u,regex:function(e,t){var n=A(e,[],t);0;return n}(u,c),components:r.components||{default:r.component},instances:{},name:l,parent:o,matchAs:a,redirect:r.redirect,beforeEnter:r.beforeEnter,meta:r.meta||{},props:null==r.props?{}:r.components?r.props:{default:r.props}};r.children&&r.children.forEach(function(r){var o=a?D(a+"/"+r.path):void 0;e(t,n,i,r,d,o)});if(void 0!==r.alias){var h=Array.isArray(r.alias)?r.alias:[r.alias];h.forEach(function(a){var s={path:a,children:r.children};e(t,n,i,s,o,d.path||"/")})}n[d.path]||(t.push(d.path),n[d.path]=d);l&&(i[l]||(i[l]=d))}(r,o,a,e)});for(var s=0,l=r.length;s<l;s++)"*"===r[s]&&(r.push(r.splice(s,1)[0]),l--,s--);return{pathList:r,pathMap:o,nameMap:a}}function K(e,t,n,i){var r="string"==typeof e?{path:e}:e;if(r.name||r._normalized)return r;if(!r.path&&r.params&&t){(r=X({},r))._normalized=!0;var o=X(X({},t.params),r.params);if(t.name)r.name=t.name,r.params=o;else if(t.matched.length){var a=t.matched[t.matched.length-1].path;r.path=U(a,o,t.path)}else 0;return r}var s=function(e){var t="",n="",i=e.indexOf("#");i>=0&&(t=e.slice(i),e=e.slice(0,i));var r=e.indexOf("?");return r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),{path:e,query:n,hash:t}}(r.path||""),l=t&&t.path||"/",c=s.path?O(s.path,l,n||r.append):l,u=function(e,t,n){void 0===t&&(t={});var i,r=n||d;try{i=r(e||"")}catch(e){i={}}for(var o in t)i[o]=t[o];return i}(s.query,r.query,i&&i.options.parseQuery),h=r.hash||s.hash;return h&&"#"!==h.charAt(0)&&(h="#"+h),{_normalized:!0,path:c,query:u,hash:h}}function X(e,t){for(var n in t)e[n]=t[n];return e}function Z(e,t){var n=Y(e),i=n.pathList,r=n.pathMap,o=n.nameMap;function a(e,n,a){var s=K(e,n,!1,t),c=s.name;if(c){var u=o[c];if(!u)return l(null,s);var d=u.regex.keys.filter(function(e){return!e.optional}).map(function(e){return e.name});if("object"!=typeof s.params&&(s.params={}),n&&"object"==typeof n.params)for(var h in n.params)!(h in s.params)&&d.indexOf(h)>-1&&(s.params[h]=n.params[h]);if(u)return s.path=U(u.path,s.params),l(u,s,a)}else if(s.path){s.params={};for(var f=0;f<i.length;f++){var p=i[f],m=r[p];if(Q(m.regex,s.path,s.params))return l(m,s,a)}}return l(null,s)}function s(e,n){var i=e.redirect,r="function"==typeof i?i(p(e,n,null,t)):i;if("string"==typeof r&&(r={path:r}),!r||"object"!=typeof r)return l(null,n);var s=r,c=s.name,u=s.path,d=n.query,h=n.hash,f=n.params;if(d=s.hasOwnProperty("query")?s.query:d,h=s.hasOwnProperty("hash")?s.hash:h,f=s.hasOwnProperty("params")?s.params:f,c){o[c];return a({_normalized:!0,name:c,query:d,hash:h,params:f},void 0,n)}if(u){var m=function(e,t){return O(e,t.parent?t.parent.path:"/",!0)}(u,e);return a({_normalized:!0,path:U(m,f),query:d,hash:h},void 0,n)}return l(null,n)}function l(e,n,i){return e&&e.redirect?s(e,i||n):e&&e.matchAs?function(e,t,n){var i=a({_normalized:!0,path:U(n,t.params)});if(i){var r=i.matched,o=r[r.length-1];return t.params=i.params,l(o,t)}return l(null,t)}(0,n,e.matchAs):p(e,n,i,t)}return{match:a,addRoutes:function(e){Y(e,i,r,o)}}}function Q(e,t,n){var i=t.match(e);if(!i)return!1;if(!n)return!0;for(var r=1,o=i.length;r<o;++r){var a=e.keys[r-1],s="string"==typeof i[r]?decodeURIComponent(i[r]):i[r];a&&(n[a.name]=s)}return!0}var J=Object.create(null);function ee(){window.history.replaceState({key:de()},""),window.addEventListener("popstate",function(e){ne(),e.state&&e.state.key&&function(e){ce=e}(e.state.key)})}function te(e,t,n,i){if(e.app){var r=e.options.scrollBehavior;r&&e.app.$nextTick(function(){var e=function(){var e=de();if(e)return J[e]}(),o=r(t,n,i?e:null);o&&("function"==typeof o.then?o.then(function(t){ae(t,e)}).catch(function(e){0}):ae(o,e))})}}function ne(){var e=de();e&&(J[e]={x:window.pageXOffset,y:window.pageYOffset})}function ie(e){return oe(e.x)||oe(e.y)}function re(e){return{x:oe(e.x)?e.x:window.pageXOffset,y:oe(e.y)?e.y:window.pageYOffset}}function oe(e){return"number"==typeof e}function ae(e,t){var n="object"==typeof e;if(n&&"string"==typeof e.selector){var i=document.querySelector(e.selector);if(i){var r=e.offset&&"object"==typeof e.offset?e.offset:{};t=function(e,t){var n=document.documentElement.getBoundingClientRect(),i=e.getBoundingClientRect();return{x:i.left-n.left-t.x,y:i.top-n.top-t.y}}(i,r=function(e){return{x:oe(e.x)?e.x:0,y:oe(e.y)?e.y:0}}(r))}else ie(e)&&(t=re(e))}else n&&ie(e)&&(t=re(e));t&&window.scrollTo(t.x,t.y)}var se=M&&function(){var e=window.navigator.userAgent;return(-1===e.indexOf("Android 2.")&&-1===e.indexOf("Android 4.0")||-1===e.indexOf("Mobile Safari")||-1!==e.indexOf("Chrome")||-1!==e.indexOf("Windows Phone"))&&(window.history&&"pushState"in window.history)}(),le=M&&window.performance&&window.performance.now?window.performance:Date,ce=ue();function ue(){return le.now().toFixed(3)}function de(){return ce}function he(e,t){ne();var n=window.history;try{t?n.replaceState({key:ce},"",e):(ce=ue(),n.pushState({key:ce},"",e))}catch(n){window.location[t?"replace":"assign"](e)}}function fe(e){he(e,!0)}function pe(e,t,n){var i=function(r){r>=e.length?n():e[r]?t(e[r],function(){i(r+1)}):i(r+1)};i(0)}function me(e){return function(t,n,i){var o=!1,a=0,s=null;ge(e,function(e,t,n,l){if("function"==typeof e&&void 0===e.cid){o=!0,a++;var c,u=be(function(t){(function(e){return e.__esModule||ye&&"Module"===e[Symbol.toStringTag]})(t)&&(t=t.default),e.resolved="function"==typeof t?t:_.extend(t),n.components[l]=t,--a<=0&&i()}),d=be(function(e){var t="Failed to resolve async component "+l+": "+e;s||(s=r(e)?e:new Error(t),i(s))});try{c=e(u,d)}catch(e){d(e)}if(c)if("function"==typeof c.then)c.then(u,d);else{var h=c.component;h&&"function"==typeof h.then&&h.then(u,d)}}}),o||i()}}function ge(e,t){return ve(e.map(function(e){return Object.keys(e.components).map(function(n){return t(e.components[n],e.instances[n],e,n)})}))}function ve(e){return Array.prototype.concat.apply([],e)}var ye="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function be(e){var t=!1;return function(){for(var n=[],i=arguments.length;i--;)n[i]=arguments[i];if(!t)return t=!0,e.apply(this,n)}}var _e=function(e,t){this.router=e,this.base=function(e){if(!e)if(M){var t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else e="/";"/"!==e.charAt(0)&&(e="/"+e);return e.replace(/\/$/,"")}(t),this.current=g,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function xe(e,t,n,i){var r=ge(e,function(e,i,r,o){var a=function(e,t){"function"!=typeof e&&(e=_.extend(e));return e.options[t]}(e,t);if(a)return Array.isArray(a)?a.map(function(e){return n(e,i,r,o)}):n(a,i,r,o)});return ve(i?r.reverse():r)}function we(e,t){if(t)return function(){return e.apply(t,arguments)}}_e.prototype.listen=function(e){this.cb=e},_e.prototype.onReady=function(e,t){this.ready?e():(this.readyCbs.push(e),t&&this.readyErrorCbs.push(t))},_e.prototype.onError=function(e){this.errorCbs.push(e)},_e.prototype.transitionTo=function(e,t,n){var i=this,r=this.router.match(e,this.current);this.confirmTransition(r,function(){i.updateRoute(r),t&&t(r),i.ensureURL(),i.ready||(i.ready=!0,i.readyCbs.forEach(function(e){e(r)}))},function(e){n&&n(e),e&&!i.ready&&(i.ready=!0,i.readyErrorCbs.forEach(function(t){t(e)}))})},_e.prototype.confirmTransition=function(e,t,n){var o=this,a=this.current,s=function(e){r(e)&&(o.errorCbs.length?o.errorCbs.forEach(function(t){t(e)}):(i(),console.error(e))),n&&n(e)};if(y(e,a)&&e.matched.length===a.matched.length)return this.ensureURL(),s();var l=function(e,t){var n,i=Math.max(e.length,t.length);for(n=0;n<i&&e[n]===t[n];n++);return{updated:t.slice(0,n),activated:t.slice(n),deactivated:e.slice(n)}}(this.current.matched,e.matched),c=l.updated,u=l.deactivated,d=l.activated,h=[].concat(function(e){return xe(e,"beforeRouteLeave",we,!0)}(u),this.router.beforeHooks,function(e){return xe(e,"beforeRouteUpdate",we)}(c),d.map(function(e){return e.beforeEnter}),me(d));this.pending=e;var f=function(t,n){if(o.pending!==e)return s();try{t(e,a,function(e){!1===e||r(e)?(o.ensureURL(!0),s(e)):"string"==typeof e||"object"==typeof e&&("string"==typeof e.path||"string"==typeof e.name)?(s(),"object"==typeof e&&e.replace?o.replace(e):o.push(e)):n(e)})}catch(e){s(e)}};pe(h,f,function(){var n=[];pe(function(e,t,n){return xe(e,"beforeRouteEnter",function(e,i,r,o){return function(e,t,n,i,r){return function(o,a,s){return e(o,a,function(e){s(e),"function"==typeof e&&i.push(function(){!function e(t,n,i,r){n[i]?t(n[i]):r()&&setTimeout(function(){e(t,n,i,r)},16)}(e,t.instances,n,r)})})}}(e,r,o,t,n)})}(d,n,function(){return o.current===e}).concat(o.router.resolveHooks),f,function(){if(o.pending!==e)return s();o.pending=null,t(e),o.router.app&&o.router.app.$nextTick(function(){n.forEach(function(e){e()})})})})},_e.prototype.updateRoute=function(e){var t=this.current;this.current=e,this.cb&&this.cb(e),this.router.afterHooks.forEach(function(n){n&&n(e,t)})};var Se=function(e){function t(t,n){var i=this;e.call(this,t,n);var r=t.options.scrollBehavior;r&&ee();var o=Ce(this.base);window.addEventListener("popstate",function(e){var n=i.current,a=Ce(i.base);i.current===g&&a===o||i.transitionTo(a,function(e){r&&te(t,e,n,!0)})})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.go=function(e){window.history.go(e)},t.prototype.push=function(e,t,n){var i=this,r=this.current;this.transitionTo(e,function(e){he(D(i.base+e.fullPath)),te(i.router,e,r,!1),t&&t(e)},n)},t.prototype.replace=function(e,t,n){var i=this,r=this.current;this.transitionTo(e,function(e){fe(D(i.base+e.fullPath)),te(i.router,e,r,!1),t&&t(e)},n)},t.prototype.ensureURL=function(e){if(Ce(this.base)!==this.current.fullPath){var t=D(this.base+this.current.fullPath);e?he(t):fe(t)}},t.prototype.getCurrentLocation=function(){return Ce(this.base)},t}(_e);function Ce(e){var t=window.location.pathname;return e&&0===t.indexOf(e)&&(t=t.slice(e.length)),(t||"/")+window.location.search+window.location.hash}var ke=function(e){function t(t,n,i){e.call(this,t,n),i&&function(e){var t=Ce(e);if(!/^\/#/.test(t))return window.location.replace(D(e+"/#"+t)),!0}(this.base)||Me()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.setupListeners=function(){var e=this,t=this.router.options.scrollBehavior,n=se&&t;n&&ee(),window.addEventListener(se?"popstate":"hashchange",function(){var t=e.current;Me()&&e.transitionTo(Oe(),function(i){n&&te(e.router,i,t,!0),se||Ae(i.fullPath)})})},t.prototype.push=function(e,t,n){var i=this,r=this.current;this.transitionTo(e,function(e){Te(e.fullPath),te(i.router,e,r,!1),t&&t(e)},n)},t.prototype.replace=function(e,t,n){var i=this,r=this.current;this.transitionTo(e,function(e){Ae(e.fullPath),te(i.router,e,r,!1),t&&t(e)},n)},t.prototype.go=function(e){window.history.go(e)},t.prototype.ensureURL=function(e){var t=this.current.fullPath;Oe()!==t&&(e?Te(t):Ae(t))},t.prototype.getCurrentLocation=function(){return Oe()},t}(_e);function Me(){var e=Oe();return"/"===e.charAt(0)||(Ae("/"+e),!1)}function Oe(){var e=window.location.href,t=e.indexOf("#");return-1===t?"":e.slice(t+1)}function De(e){var t=window.location.href,n=t.indexOf("#");return(n>=0?t.slice(0,n):t)+"#"+e}function Te(e){se?he(De(e)):window.location.hash=e}function Ae(e){se?fe(De(e)):window.location.replace(De(e))}var Ie=function(e){function t(t,n){e.call(this,t,n),this.stack=[],this.index=-1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.push=function(e,t,n){var i=this;this.transitionTo(e,function(e){i.stack=i.stack.slice(0,i.index+1).concat(e),i.index++,t&&t(e)},n)},t.prototype.replace=function(e,t,n){var i=this;this.transitionTo(e,function(e){i.stack=i.stack.slice(0,i.index).concat(e),t&&t(e)},n)},t.prototype.go=function(e){var t=this,n=this.index+e;if(!(n<0||n>=this.stack.length)){var i=this.stack[n];this.confirmTransition(i,function(){t.index=n,t.updateRoute(i)})}},t.prototype.getCurrentLocation=function(){var e=this.stack[this.stack.length-1];return e?e.fullPath:"/"},t.prototype.ensureURL=function(){},t}(_e),Ee=function(e){void 0===e&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Z(e.routes||[],this);var t=e.mode||"hash";switch(this.fallback="history"===t&&!se&&!1!==e.fallback,this.fallback&&(t="hash"),M||(t="abstract"),this.mode=t,t){case"history":this.history=new Se(this,e.base);break;case"hash":this.history=new ke(this,e.base,this.fallback);break;case"abstract":this.history=new Ie(this,e.base);break;default:0}},Pe={currentRoute:{configurable:!0}};function Le(e,t){return e.push(t),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}Ee.prototype.match=function(e,t,n){return this.matcher.match(e,t,n)},Pe.currentRoute.get=function(){return this.history&&this.history.current},Ee.prototype.init=function(e){var t=this;if(this.apps.push(e),!this.app){this.app=e;var n=this.history;if(n instanceof Se)n.transitionTo(n.getCurrentLocation());else if(n instanceof ke){var i=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),i,i)}n.listen(function(e){t.apps.forEach(function(t){t._route=e})})}},Ee.prototype.beforeEach=function(e){return Le(this.beforeHooks,e)},Ee.prototype.beforeResolve=function(e){return Le(this.resolveHooks,e)},Ee.prototype.afterEach=function(e){return Le(this.afterHooks,e)},Ee.prototype.onReady=function(e,t){this.history.onReady(e,t)},Ee.prototype.onError=function(e){this.history.onError(e)},Ee.prototype.push=function(e,t,n){this.history.push(e,t,n)},Ee.prototype.replace=function(e,t,n){this.history.replace(e,t,n)},Ee.prototype.go=function(e){this.history.go(e)},Ee.prototype.back=function(){this.go(-1)},Ee.prototype.forward=function(){this.go(1)},Ee.prototype.getMatchedComponents=function(e){var t=e?e.matched?e:this.resolve(e).route:this.currentRoute;return t?[].concat.apply([],t.matched.map(function(e){return Object.keys(e.components).map(function(t){return e.components[t]})})):[]},Ee.prototype.resolve=function(e,t,n){var i=K(e,t||this.history.current,n,this),r=this.match(i,t),o=r.redirectedFrom||r.fullPath;return{location:i,route:r,href:function(e,t,n){var i="hash"===n?"#"+t:t;return e?D(e+"/"+i):i}(this.history.base,o,this.mode),normalizedTo:i,resolved:r}},Ee.prototype.addRoutes=function(e){this.matcher.addRoutes(e),this.history.current!==g&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ee.prototype,Pe),Ee.install=k,Ee.version="3.0.1",M&&window.Vue&&window.Vue.use(Ee),t.a=Ee},uYoA:function(e,t,n){var i=n("MWS/").extend({type:"markLine",defaultOption:{zlevel:0,z:5,symbol:["circle","arrow"],symbolSize:[8,16],precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end",distance:5},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"}});e.exports=i},uieq:function(e,t,n){var i=n("zYjg"),r=n("LLn1").createSymbol,o=n("o2YK"),a=i.extendShape({shape:{points:null},symbolProxy:null,softClipShape:null,buildPath:function(e,t){var n=t.points,i=t.size,r=this.symbolProxy,o=r.shape;if(!((e.getContext?e.getContext():e)&&i[0]<4))for(var a=0;a<n.length;){var s=n[a++],l=n[a++];isNaN(s)||isNaN(l)||(this.softClipShape&&!this.softClipShape.contain(s,l)||(o.x=s-i[0]/2,o.y=l-i[1]/2,o.width=i[0],o.height=i[1],r.buildPath(e,o,!0)))}},afterBrush:function(e){var t=this.shape,n=t.points,i=t.size;if(i[0]<4){this.setTransform(e);for(var r=0;r<n.length;){var o=n[r++],a=n[r++];isNaN(o)||isNaN(a)||(this.softClipShape&&!this.softClipShape.contain(o,a)||e.fillRect(o-i[0]/2,a-i[1]/2,i[0],i[1]))}this.restoreTransform(e)}},findDataIndex:function(e,t){for(var n=this.shape,i=n.points,r=n.size,o=Math.max(r[0],4),a=Math.max(r[1],4),s=i.length/2-1;s>=0;s--){var l=2*s,c=i[l]-o/2,u=i[l+1]-a/2;if(e>=c&&t>=u&&e<=c+o&&t<=u+a)return s}return-1}});function s(){this.group=new i.Group}var l=s.prototype;l.isPersistent=function(){return!this._incremental},l.updateData=function(e,t){this.group.removeAll();var n=new a({rectHover:!0,cursor:"default"});n.setShape({points:e.getLayout("symbolPoints")}),this._setCommon(n,e,!1,t),this.group.add(n),this._incremental=null},l.updateLayout=function(e){if(!this._incremental){var t=e.getLayout("symbolPoints");this.group.eachChild(function(e){if(null!=e.startIndex){var n=2*(e.endIndex-e.startIndex),i=4*e.startIndex*2;t=new Float32Array(t.buffer,i,n)}e.setShape("points",t)})}},l.incrementalPrepareUpdate=function(e){this.group.removeAll(),this._clearIncremental(),e.count()>2e6?(this._incremental||(this._incremental=new o({silent:!0})),this.group.add(this._incremental)):this._incremental=null},l.incrementalUpdate=function(e,t,n){var i;this._incremental?(i=new a,this._incremental.addDisplayable(i,!0)):((i=new a({rectHover:!0,cursor:"default",startIndex:e.start,endIndex:e.end})).incremental=!0,this.group.add(i)),i.setShape({points:t.getLayout("symbolPoints")}),this._setCommon(i,t,!!this._incremental,n)},l._setCommon=function(e,t,n,i){var o=t.hostModel;i=i||{};var a=t.getVisual("symbolSize");e.setShape("size",a instanceof Array?a:[a,a]),e.softClipShape=i.clipShape||null,e.symbolProxy=r(t.getVisual("symbol"),0,0,0,0),e.setColor=e.symbolProxy.setColor;var s=e.shape.size[0]<4;e.useStyle(o.getModel("itemStyle").getItemStyle(s?["color","shadowBlur","shadowColor"]:["color"]));var l=t.getVisual("color");l&&e.setColor(l),n||(e.seriesIndex=o.seriesIndex,e.on("mousemove",function(t){e.dataIndex=null;var n=e.findDataIndex(t.offsetX,t.offsetY);n>=0&&(e.dataIndex=n+(e.startIndex||0))}))},l.remove=function(){this._clearIncremental(),this._incremental=null,this.group.removeAll()},l._clearIncremental=function(){var e=this._incremental;e&&e.clearDisplaybles()};var c=s;e.exports=c},up9U:function(e,t,n){},urLD:function(e,t,n){e.exports=function(e){return e.mode.CTR=function(){var t=e.lib.BlockCipherMode.extend(),n=t.Encryptor=t.extend({processBlock:function(e,t){var n=this._cipher,i=n.blockSize,r=this._iv,o=this._counter;r&&(o=this._counter=r.slice(0),this._iv=void 0);var a=o.slice(0);n.encryptBlock(a,0),o[i-1]=o[i-1]+1|0;for(var s=0;s<i;s++)e[t+s]^=a[s]}});return t.Decryptor=n,t}(),e.mode.CTR}(n("zBii"),n("pSdL"))},v08p:function(e,t,n){var i=n("zYjg"),r=.3;function o(e,t,n,i){for(var r=[],o=0;o<n.length;o++){var a=n[o],s=e.get(e.mapDimension(a),t);c(s,i.getAxis(a).type)||r.push(i.dataToPoint(s,a))}return r}function a(e,t,n,r,a){var s=o(e,n,r,a),l=new i.Polyline({shape:{points:s},silent:!0,z2:10});return t.add(l),e.setItemGraphicEl(n,l),l}function s(e){var t=e.get("smooth",!0);return!0===t&&(t=r),{lineStyle:e.getModel("lineStyle").getLineStyle(),smooth:null!=t?t:r}}function l(e,t,n,i){var r=i.lineStyle;t.hasItemOption&&(r=t.getItemModel(n).getModel("lineStyle").getLineStyle());e.useStyle(r);var o=e.style;o.fill=null,o.stroke=t.getItemVisual(n,"color"),o.opacity=t.getItemVisual(n,"opacity"),i.smooth&&(e.shape.smooth=i.smooth)}function c(e,t){return"category"===t?null==e:null==e||isNaN(e)}var u=n("F62y").extend({type:"parallel",init:function(){this._dataGroup=new i.Group,this.group.add(this._dataGroup),this._data,this._initialized},render:function(e,t,n,r){var c=this._dataGroup,u=e.getData(),d=this._data,h=e.coordinateSystem,f=h.dimensions,p=s(e);if(u.diff(d).add(function(e){l(a(u,c,e,f,h),u,e,p)}).update(function(t,n){var a=d.getItemGraphicEl(n),s=o(u,t,f,h);u.setItemGraphicEl(t,a);var c=r&&!1===r.animation?null:e;i.updateProps(a,{shape:{points:s}},c,t),l(a,u,t,p)}).remove(function(e){var t=d.getItemGraphicEl(e);c.remove(t)}).execute(),!this._initialized){this._initialized=!0;var m=function(e,t,n){var r=e.model,o=e.getRect(),a=new i.Rect({shape:{x:o.x,y:o.y,width:o.width,height:o.height}}),s="horizontal"===r.get("layout")?"width":"height";return a.setShape(s,0),i.initProps(a,{shape:{width:o.width,height:o.height}},t,n),a}(h,e,function(){setTimeout(function(){c.removeClipPath()})});c.setClipPath(m)}this._data=u},incrementalPrepareRender:function(e,t,n){this._initialized=!0,this._data=null,this._dataGroup.removeAll()},incrementalRender:function(e,t,n){for(var i=t.getData(),r=t.coordinateSystem,o=r.dimensions,c=s(t),u=e.start;u<e.end;u++){var d=a(i,this._dataGroup,u,o,r);d.incremental=!0,l(d,i,u,c)}},dispose:function(){},remove:function(){this._dataGroup&&this._dataGroup.removeAll(),this._data=null}});e.exports=u},v4Ri:function(e,t){e.exports=!0},vNgM:function(e,t,n){var i=n("oEo5"),r=n("Auwy"),o=n("zYjg"),a=n("LLn1").createSymbol,s=n("SSBM"),l=n("Zec6"),c=r.extend({type:"visualMap.piecewise",doRender:function(){var e=this.group;e.removeAll();var t=this.visualMapModel,n=t.get("textGap"),r=t.textStyleModel,a=r.getFont(),l=r.getTextColor(),c=this._getItemAlign(),u=t.itemSize,d=this._getViewData(),h=d.endsText,f=i.retrieve(t.get("showLabel",!0),!h);h&&this._renderEndsText(e,h[0],u,f,c),i.each(d.viewPieceList,function(r){var s=r.piece,d=new o.Group;d.onclick=i.bind(this._onItemClick,this,s),this._enableHoverLink(d,r.indexInModelPieceList);var h=t.getRepresentValue(s);if(this._createItemSymbol(d,h,[0,0,u[0],u[1]]),f){var p=this.visualMapModel.getValueState(h);d.add(new o.Text({style:{x:"right"===c?-n:u[0]+n,y:u[1]/2,text:s.text,textVerticalAlign:"middle",textAlign:c,textFont:a,textFill:l,opacity:"outOfRange"===p?.5:1}}))}e.add(d)},this),h&&this._renderEndsText(e,h[1],u,f,c),s.box(t.get("orient"),e,t.get("itemGap")),this.renderBackground(e),this.positionGroup(e)},_enableHoverLink:function(e,t){function n(e){var n=this.visualMapModel;n.option.hoverLink&&this.api.dispatchAction({type:e,batch:l.makeHighDownBatch(n.findTargetDataIndices(t),n)})}e.on("mouseover",i.bind(n,this,"highlight")).on("mouseout",i.bind(n,this,"downplay"))},_getItemAlign:function(){var e=this.visualMapModel,t=e.option;if("vertical"===t.orient)return l.getItemAlign(e,this.api,e.itemSize);var n=t.align;return n&&"auto"!==n||(n="left"),n},_renderEndsText:function(e,t,n,i,r){if(t){var a=new o.Group,s=this.visualMapModel.textStyleModel;a.add(new o.Text({style:{x:i?"right"===r?n[0]:0:n[0]/2,y:n[1]/2,textVerticalAlign:"middle",textAlign:i?r:"center",text:t,textFont:s.getFont(),textFill:s.getTextColor()}})),e.add(a)}},_getViewData:function(){var e=this.visualMapModel,t=i.map(e.getPieceList(),function(e,t){return{piece:e,indexInModelPieceList:t}}),n=e.get("text"),r=e.get("orient"),o=e.get("inverse");return("horizontal"===r?o:!o)?t.reverse():n&&(n=n.slice().reverse()),{viewPieceList:t,endsText:n}},_createItemSymbol:function(e,t,n){e.add(a(this.getControllerVisual(t,"symbol"),n[0],n[1],n[2],n[3],this.getControllerVisual(t,"color")))},_onItemClick:function(e){var t=this.visualMapModel,n=t.option,r=i.clone(n.selected),o=t.getSelectedMapKey(e);"single"===n.selectedMode?(r[o]=!0,i.each(r,function(e,t){r[t]=t===o})):r[o]=!r[o],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:r})}});e.exports=c},vOhS:function(e,t,n){var i=n("gPqb"),r=n("ie0D"),o=n("oEo5"),a=n("2DdH");function s(e){i.call(this,e)}s.prototype={constructor:s,type:"image",brush:function(e,t){var n=this.style,i=n.image;n.bind(e,this,t);var r=this._image=a.createOrUpdateImage(i,this._image,this,this.onload);if(r&&a.isImageReady(r)){var o=n.x||0,s=n.y||0,l=n.width,c=n.height,u=r.width/r.height;if(null==l&&null!=c?l=c*u:null==c&&null!=l?c=l/u:null==l&&null==c&&(l=r.width,c=r.height),this.setTransform(e),n.sWidth&&n.sHeight){var d=n.sx||0,h=n.sy||0;e.drawImage(r,d,h,n.sWidth,n.sHeight,o,s,l,c)}else if(n.sx&&n.sy){var f=l-(d=n.sx),p=c-(h=n.sy);e.drawImage(r,d,h,f,p,o,s,l,c)}else e.drawImage(r,o,s,l,c);null!=n.text&&(this.restoreTransform(e),this.drawRectText(e,this.getBoundingRect()))}},getBoundingRect:function(){var e=this.style;return this._rect||(this._rect=new r(e.x||0,e.y||0,e.width||0,e.height||0)),this._rect}},o.inherits(s,i);var l=s;e.exports=l},vXmO:function(e,t,n){var i=n("Q6Bq"),r=n("5xMV");n("QRYH"),n("QHKB"),n("WPhg"),n("vNgM"),n("kZpV"),i.registerPreprocessor(r)},vfQ3:function(e,t,n){var i=n("86p4"),r=n("D2WO"),o=n("oEo5").each;function a(e){return parseInt(e,10)}function s(e,t){r.initVML(),this.root=e,this.storage=t;var n=document.createElement("div"),i=document.createElement("div");n.style.cssText="display:inline-block;overflow:hidden;position:relative;width:300px;height:150px;",i.style.cssText="position:absolute;left:0;top:0;",e.appendChild(n),this._vmlRoot=i,this._vmlViewport=n,this.resize();var o=t.delFromStorage,a=t.addToStorage;t.delFromStorage=function(e){o.call(t,e),e&&e.onRemove&&e.onRemove(i)},t.addToStorage=function(e){e.onAdd&&e.onAdd(i),a.call(t,e)},this._firstPaint=!0}s.prototype={constructor:s,getType:function(){return"vml"},getViewportRoot:function(){return this._vmlViewport},getViewportRootOffset:function(){var e=this.getViewportRoot();if(e)return{offsetLeft:e.offsetLeft||0,offsetTop:e.offsetTop||0}},refresh:function(){var e=this.storage.getDisplayList(!0,!0);this._paintList(e)},_paintList:function(e){for(var t=this._vmlRoot,n=0;n<e.length;n++){var i=e[n];i.invisible||i.ignore?(i.__alreadyNotVisible||i.onRemove(t),i.__alreadyNotVisible=!0):(i.__alreadyNotVisible&&i.onAdd(t),i.__alreadyNotVisible=!1,i.__dirty&&(i.beforeBrush&&i.beforeBrush(),(i.brushVML||i.brush).call(i,t),i.afterBrush&&i.afterBrush())),i.__dirty=!1}this._firstPaint&&(this._vmlViewport.appendChild(t),this._firstPaint=!1)},resize:function(e,t){e=null==e?this._getWidth():e,t=null==t?this._getHeight():t;if(this._width!==e||this._height!==t){this._width=e,this._height=t;var n=this._vmlViewport.style;n.width=e+"px",n.height=t+"px"}},dispose:function(){this.root.innerHTML="",this._vmlRoot=this._vmlViewport=this.storage=null},getWidth:function(){return this._width},getHeight:function(){return this._height},clear:function(){this._vmlViewport&&this.root.removeChild(this._vmlViewport)},_getWidth:function(){var e=this.root,t=e.currentStyle;return(e.clientWidth||a(t.width))-a(t.paddingLeft)-a(t.paddingRight)|0},_getHeight:function(){var e=this.root,t=e.currentStyle;return(e.clientHeight||a(t.height))-a(t.paddingTop)-a(t.paddingBottom)|0}},o(["getLayer","insertLayer","eachLayer","eachBuiltinLayer","eachOtherLayer","getLayers","modLayer","delLayer","clearLayer","toDataURL","pathToImage"],function(e){s.prototype[e]=function(e){return function(){i('In IE8.0 VML mode painter not support method "'+e+'"')}}(e)});var l=s;e.exports=l},vgo9:function(e,t,n){n("IPcT").__DEV__;var i=n("oEo5"),r=n("spGK").fromPoints,o=n("6q22"),a=n("DMEU"),s=n("BGny"),l=n("zYjg"),c=n("QV7q"),u=n("si9V"),d=u.Polyline,h=u.Polygon,f=n("F62y"),p=n("6vYt"),m=p.prepareDataCoordInfo,g=p.getStackedOnPoint,v=n("PyNg"),y=v.createGridClipPath,b=v.createPolarClipPath;function _(e,t){if(e.length===t.length){for(var n=0;n<e.length;n++){var i=e[n],r=t[n];if(i[0]!==r[0]||i[1]!==r[1])return}return!0}}function x(e,t){var n=[],i=[],o=[],a=[];return r(e,n,i),r(t,o,a),Math.max(Math.abs(n[0]-o[0]),Math.abs(n[1]-o[1]),Math.abs(i[0]-a[0]),Math.abs(i[1]-a[1]))}function w(e){return"number"==typeof e?e:e?.5:0}function S(e,t,n){for(var i=t.getBaseAxis(),r="x"===i.dim||"radius"===i.dim?0:1,o=[],a=0;a<e.length-1;a++){var s=e[a+1],l=e[a];o.push(l);var c=[];switch(n){case"end":c[r]=s[r],c[1-r]=l[1-r],o.push(c);break;case"middle":var u=(l[r]+s[r])/2,d=[];c[r]=d[r]=u,c[1-r]=l[1-r],d[1-r]=s[1-r],o.push(c),o.push(d);break;default:c[r]=l[r],c[1-r]=s[1-r],o.push(c)}}return e[a]&&o.push(e[a]),o}function C(e,t,n){var r=e.get("showAllSymbol"),o="auto"===r;if(!r||o){var s=n.getAxesByScale("ordinal")[0];if(s&&(!o||!function(e,t){var n=e.getExtent(),i=Math.abs(n[1]-n[0])/e.scale.count();isNaN(i)&&(i=0);for(var r=t.count(),o=Math.max(1,Math.round(r/5)),s=0;s<r;s+=o)if(1.5*a.getSymbolSize(t,s)[e.isHorizontal()?1:0]>i)return!1;return!0}(s,t))){var l=t.mapDimension(s.dim),c={};return i.each(s.getViewLabels(),function(e){c[e.tickValue]=1}),function(e){return!c.hasOwnProperty(t.get(l,e))}}}}function k(e,t,n){if("cartesian2d"===e.type){var i=e.getBaseAxis().isHorizontal(),r=y(e,t,n);if(!n.get("clip",!0)){var o=r.shape,a=Math.max(o.width,o.height);i?(o.y-=a,o.height+=2*a):(o.x-=a,o.width+=2*a)}return r}return b(e,t,n)}var M=f.extend({type:"line",init:function(){var e=new l.Group,t=new o;this.group.add(t.group),this._symbolDraw=t,this._lineGroup=e},render:function(e,t,n){var r=e.coordinateSystem,o=this.group,a=e.getData(),s=e.getModel("lineStyle"),c=e.getModel("areaStyle"),u=a.mapArray(a.getItemLayout),d="polar"===r.type,h=this._coordSys,f=this._symbolDraw,p=this._polyline,v=this._polygon,y=this._lineGroup,b=e.get("animation"),x=!c.isEmpty(),M=c.get("origin"),O=function(e,t,n){if(!n.valueDim)return[];for(var i=[],r=0,o=t.count();r<o;r++)i.push(g(n,e,t,r));return i}(r,a,m(r,a,M)),D=e.get("showSymbol"),T=D&&!d&&C(e,a,r),A=this._data;A&&A.eachItemGraphicEl(function(e,t){e.__temp&&(o.remove(e),A.setItemGraphicEl(t,null))}),D||f.remove(),o.add(y);var I,E=!d&&e.get("step");r&&r.getArea&&e.get("clip",!0)&&(null!=(I=r.getArea()).width?(I.x-=.1,I.y-=.1,I.width+=.2,I.height+=.2):I.r0&&(I.r0-=.5,I.r1+=.5)),this._clipShapeForSymbol=I,p&&h.type===r.type&&E===this._step?(x&&!v?v=this._newPolygon(u,O,r,b):v&&!x&&(y.remove(v),v=this._polygon=null),y.setClipPath(k(r,!1,e)),D&&f.updateData(a,{isIgnore:T,clipShape:I}),a.eachItemGraphicEl(function(e){e.stopAnimation(!0)}),_(this._stackedOnPoints,O)&&_(this._points,u)||(b?this._updateAnimation(a,O,r,n,E,M):(E&&(u=S(u,r,E),O=S(O,r,E)),p.setShape({points:u}),v&&v.setShape({points:u,stackedOnPoints:O})))):(D&&f.updateData(a,{isIgnore:T,clipShape:I}),E&&(u=S(u,r,E),O=S(O,r,E)),p=this._newPolyline(u,r,b),x&&(v=this._newPolygon(u,O,r,b)),y.setClipPath(k(r,!0,e)));var P=function(e,t){var n=e.getVisual("visualMeta");if(n&&n.length&&e.count()&&"cartesian2d"===t.type){for(var r,o,a=n.length-1;a>=0;a--){var s=n[a].dimension,c=e.dimensions[s],u=e.getDimensionInfo(c);if("x"===(r=u&&u.coordDim)||"y"===r){o=n[a];break}}if(o){var d=t.getAxis(r),h=i.map(o.stops,function(e){return{coord:d.toGlobalCoord(d.dataToCoord(e.value)),color:e.color}}),f=h.length,p=o.outerColors.slice();f&&h[0].coord>h[f-1].coord&&(h.reverse(),p.reverse());var m=h[0].coord-10,g=h[f-1].coord+10,v=g-m;if(v<.001)return"transparent";i.each(h,function(e){e.offset=(e.coord-m)/v}),h.push({offset:f?h[f-1].offset:.5,color:p[1]||"transparent"}),h.unshift({offset:f?h[0].offset:.5,color:p[0]||"transparent"});var y=new l.LinearGradient(0,0,0,0,h,!0);return y[r]=m,y[r+"2"]=g,y}}}(a,r)||a.getVisual("color");p.useStyle(i.defaults(s.getLineStyle(),{fill:"none",stroke:P,lineJoin:"bevel"}));var L=e.get("smooth");if(L=w(e.get("smooth")),p.setShape({smooth:L,smoothMonotone:e.get("smoothMonotone"),connectNulls:e.get("connectNulls")}),v){var N=a.getCalculationInfo("stackedOnSeries"),B=0;v.useStyle(i.defaults(c.getAreaStyle(),{fill:P,opacity:.7,lineJoin:"bevel"})),N&&(B=w(N.get("smooth"))),v.setShape({smooth:L,stackedOnSmooth:B,smoothMonotone:e.get("smoothMonotone"),connectNulls:e.get("connectNulls")})}this._data=a,this._coordSys=r,this._stackedOnPoints=O,this._points=u,this._step=E,this._valueOrigin=M},dispose:function(){},highlight:function(e,t,n,i){var r=e.getData(),o=c.queryDataIndex(r,i);if(!(o instanceof Array)&&null!=o&&o>=0){var s=r.getItemGraphicEl(o);if(!s){var l=r.getItemLayout(o);if(!l)return;if(this._clipShapeForSymbol&&!this._clipShapeForSymbol.contain(l[0],l[1]))return;(s=new a(r,o)).position=l,s.setZ(e.get("zlevel"),e.get("z")),s.ignore=isNaN(l[0])||isNaN(l[1]),s.__temp=!0,r.setItemGraphicEl(o,s),s.stopSymbolAnimation(!0),this.group.add(s)}s.highlight()}else f.prototype.highlight.call(this,e,t,n,i)},downplay:function(e,t,n,i){var r=e.getData(),o=c.queryDataIndex(r,i);if(null!=o&&o>=0){var a=r.getItemGraphicEl(o);a&&(a.__temp?(r.setItemGraphicEl(o,null),this.group.remove(a)):a.downplay())}else f.prototype.downplay.call(this,e,t,n,i)},_newPolyline:function(e){var t=this._polyline;return t&&this._lineGroup.remove(t),t=new d({shape:{points:e},silent:!0,z2:10}),this._lineGroup.add(t),this._polyline=t,t},_newPolygon:function(e,t){var n=this._polygon;return n&&this._lineGroup.remove(n),n=new h({shape:{points:e,stackedOnPoints:t},silent:!0}),this._lineGroup.add(n),this._polygon=n,n},_updateAnimation:function(e,t,n,i,r,o){var a=this._polyline,c=this._polygon,u=e.hostModel,d=s(this._data,e,this._stackedOnPoints,t,this._coordSys,n,this._valueOrigin,o),h=d.current,f=d.stackedOnCurrent,p=d.next,m=d.stackedOnNext;if(r&&(h=S(d.current,n,r),f=S(d.stackedOnCurrent,n,r),p=S(d.next,n,r),m=S(d.stackedOnNext,n,r)),x(h,p)>3e3||c&&x(f,m)>3e3)return a.setShape({points:p}),void(c&&c.setShape({points:p,stackedOnPoints:m}));a.shape.__points=d.current,a.shape.points=h,l.updateProps(a,{shape:{points:p}},u),c&&(c.setShape({points:h,stackedOnPoints:f}),l.updateProps(c,{shape:{points:p,stackedOnPoints:m}},u));for(var g=[],v=d.status,y=0;y<v.length;y++){if("="===v[y].cmd){var b=e.getItemGraphicEl(v[y].idx1);b&&g.push({el:b,ptIdx:y})}}a.animators&&a.animators.length&&a.animators[0].during(function(){for(var e=0;e<g.length;e++){g[e].el.attr("position",a.shape.__points[g[e].ptIdx])}})},remove:function(e){var t=this.group,n=this._data;this._lineGroup.removeAll(),this._symbolDraw.remove(!0),n&&n.eachItemGraphicEl(function(e,i){e.__temp&&(t.remove(e),n.setItemGraphicEl(i,null))}),this._polyline=this._polygon=this._coordSys=this._points=this._stackedOnPoints=this._data=null}});e.exports=M},vmuv:function(e,t,n){var i=n("342z").extend({type:"echartsGaugePointer",shape:{angle:0,width:10,r:10,x:0,y:0},buildPath:function(e,t){var n=Math.cos,i=Math.sin,r=t.r,o=t.width,a=t.angle,s=t.x-n(a)*o*(o>=r/3?1:2),l=t.y-i(a)*o*(o>=r/3?1:2);a=t.angle-Math.PI/2,e.moveTo(s,l),e.lineTo(t.x+n(a)*o,t.y+i(a)*o),e.lineTo(t.x+n(t.angle)*r,t.y+i(t.angle)*r),e.lineTo(t.x-n(a)*o,t.y-i(a)*o),e.lineTo(s,l)}});e.exports=i},"vqL+":function(e,t,n){"use strict";function i(){var e=arguments[0];"string"==typeof e&&/^[\d-: ]*$/.test(e)&&(arguments[0]=e.replace(/-/g,"/"));var t=new(Function.prototype.bind.apply(Date,[Date].concat(Array.prototype.slice.call(arguments))));return Object.setPrototypeOf(t,i.prototype),Object.setPrototypeOf(i.prototype,Date.prototype),t}Object.setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e};var r=["日","一","二","三","四","五","六"];function o(e,t,n){switch(t){case"YY":case"YYYY":e=n?e:this.getFullYear()+e,this.setFullYear(e);break;case"MM":e=n?e-1:this.getMonth()+e,this.setMonth(e);break;case"DD":e=n?e:this.getDate()+e,this.setDate(e);break;case"hh":e=n?e:this.getHours()+e,this.setHours(e);break;case"mm":e=n?e:this.getMinutes()+e,this.setMinutes(e);break;case"ss":e=n?e:this.getSeconds()+e,this.setSeconds(e);break;case"SSS":e=n?e:this.getMilliseconds()+e,this.setMilliseconds(e);break;case"ww":case"WW":n?(this.setMonth(0),this.setDate(1),this.setDate(7*e),a.call(this)):this.setDate(this.getDate()+7*e)}}function a(){return this.setDate(this.getDate()-this.getDay()),this}i.prototype.format=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"YYYY-MM-DD hh:mm:ss",t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=void 0,o=void 0,a=void 0,s=void 0,l=void 0,c=void 0,u=void 0,d=void 0;if(t){var h=void 0,f=void 0;this.__distance_begin__>this.__distance_end__?(h=i(this.__distance_begin__),f=i(this.__distance_end__)):(h=i(this.__distance_end__),f=i(this.__distance_begin__)),n=h.getFullYear()-f.getFullYear(),o=h.getMonth()-f.getMonth(),a=h.getDate()-f.getDate(),s=h.getHours()-f.getHours(),l=h.getMinutes()-f.getMinutes(),c=h.getSeconds()-f.getSeconds(),u=Math.abs(h.getDay()-f.getDay()),(d=Math.abs(h.getMilliseconds()-f.getMilliseconds()))<0&&(d+=1e3,c--),c<0&&(c+=60,l--),l<0&&(l+=60,s--),s<0&&(s+=24,a--),a<0&&(a+=f.daysInMonth(),o--),o<0&&(o+=12,n--)}else n=this.getFullYear(),o=this.getMonth()+1,a=this.getDate(),s=this.getHours(),l=this.getMinutes(),c=this.getSeconds(),u=this.getDay(),d=this.getMilliseconds();return e=e.replace("YYYY",n).replace("MM",String(o)[1]?o:"0"+o).replace("DD",String(a)[1]?a:"0"+a).replace("hh",String(s)[1]?s:"0"+s).replace("mm",String(l)[1]?l:"0"+l).replace("ss",String(c)[1]?c:"0"+c).replace("SSS",d).replace("ww",u),e=t?e.replace("WW",u):e.replace("WW",r[u])},i.prototype.stamp=function(){return this.valueOf()},i.prototype.json=function(){return{year:this.getFullYear(),month:this.getMonth()+1,date:this.getDate(),hour:this.getHours(),minute:this.getMinutes(),second:this.getSeconds(),day:this.getDay(),millisecond:this.getMilliseconds()}},i.prototype.get=function(e){var t=String(function(e){switch(e){case"YYYY":return this.getFullYear();case"MM":return this.getMonth()+1;case"DD":return this.getDate();case"hh":return this.getHours();case"mm":return this.getMinutes();case"ss":return this.getSeconds();case"ww":case"WW":return this.getDay();case"SSS":return this.getMilliseconds()}return"00"}.call(this,e));return t[1]||"SSS"===e||"millisecond"===e?t:"0"+t},i.prototype.diff=function(e,t){return t?i(e).valueOf()-i(t).valueOf():this.valueOf()-i(e).valueOf()},i.prototype.isBefore=function(e){return this.valueOf()<i(e).valueOf()},i.prototype.isAfter=function(e){return this.valueOf()>i(e).valueOf()},i.prototype.isBetween=function(e,t){e=i(e).valueOf(),t=i(t).valueOf();var n=this.valueOf();return e>n&&t<n||e<n&&t>n},i.prototype.daysInMonth=function(){return i(this.getFullYear(),this.getMonth()+1,0).getDate()},i.prototype.add=function(e,t){return e||(e=0),o.call(this,e,t),this},i.prototype.sub=function(e,t){return e||(e=0),o.call(this,-e,t),this},i.prototype.set=function(e,t){return e||(e=0),o.call(this,e,t,!0),this},i.prototype.distance=function(e,t){var n=void 0,r=void 0;t?(n=i(e).valueOf(),r=i(t).valueOf()):(n=this.valueOf(),r=i(e).valueOf());var o=i(n-r);return o.__distance_begin__=n,o.__distance_end__=r,o},i.prototype.startOf=function(){switch(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"DD"){case"mm":return i(this.format("YYYY-MM-DD hh:mm:00"));case"hh":return i(this.format("YYYY-MM-DD hh:00:00"));case"DD":return i(this.format("YYYY-MM-DD 00:00:00"));case"ww":case"WW":return i(this.firstDayOfWeek().format("YYYY-MM-DD 00:00:00"));case"MM":return i(this.format("YYYY-MM-01 00:00:00"));case"YY":case"YYYY":return i(this.format("YYYY-01-01 00:00:00"))}},i.prototype.endOf=function(){switch(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"DD"){case"mm":return i(this.format("YYYY-MM-DD hh:mm:59"));case"hh":return i(this.format("YYYY-MM-DD hh:59:59"));case"DD":return i(this.format("YYYY-MM-DD 23:59:59"));case"ww":case"WW":return i(this.firstDayOfWeek().add(6,"DD").format("YYYY-MM-DD 23:59:59"));case"MM":return i(this.lastDay().format("YYYY-MM-DD 23:59:59"));case"YY":case"YYYY":return i(this.set(12,"MM").lastDay().format("YYYY-MM-DD 23:59:59"))}},i.prototype.firstDay=function(){return i(this.getFullYear(),this.getMonth(),1)},i.prototype.lastDay=function(){return i(this.getFullYear(),this.getMonth()+1,0)},i.prototype.firstDayOfWeek=a;var s=i;e.exports=s},vrPM:function(e,t){e.exports=function(e){var t=e.getRect(),n=e.getRangeInfo();return{coordSys:{type:"calendar",x:t.x,y:t.y,width:t.width,height:t.height,cellWidth:e.getCellWidth(),cellHeight:e.getCellHeight(),rangeInfo:{start:n.start,end:n.end,weeks:n.weeks,dayCount:n.allDay}},api:{coord:function(t,n){return e.dataToPoint(t,n)}}}}},vtWr:function(e,t,n){var i=n("Q6Bq"),r=n("oEo5"),o=n("cARS"),a=n("2Myu");n("BqSt"),n("kmpg"),n("5Gbn");i.extendComponentView({type:"parallel",render:function(e,t,n){this._model=e,this._api=n,this._handlers||(this._handlers={},r.each(s,function(e,t){n.getZr().on(t,this._handlers[t]=r.bind(e,this))},this)),o.createOrUpdate(this,"_throttledDispatchExpand",e.get("axisExpandRate"),"fixRate")},dispose:function(e,t){r.each(this._handlers,function(e,n){t.getZr().off(n,e)}),this._handlers=null},_throttledDispatchExpand:function(e){this._dispatchExpand(e)},_dispatchExpand:function(e){e&&this._api.dispatchAction(r.extend({type:"parallelAxisExpand"},e))}});var s={mousedown:function(e){l(this,"click")&&(this._mouseDownPoint=[e.offsetX,e.offsetY])},mouseup:function(e){var t=this._mouseDownPoint;if(l(this,"click")&&t){var n=[e.offsetX,e.offsetY];if(Math.pow(t[0]-n[0],2)+Math.pow(t[1]-n[1],2)>5)return;var i=this._model.coordinateSystem.getSlidedAxisExpandWindow([e.offsetX,e.offsetY]);"none"!==i.behavior&&this._dispatchExpand({axisExpandWindow:i.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(e){if(!this._mouseDownPoint&&l(this,"mousemove")){var t=this._model,n=t.coordinateSystem.getSlidedAxisExpandWindow([e.offsetX,e.offsetY]),i=n.behavior;"jump"===i&&this._throttledDispatchExpand.debounceNextCall(t.get("axisExpandDebounce")),this._throttledDispatchExpand("none"===i?null:{axisExpandWindow:n.axisExpandWindow,animation:"jump"===i&&null})}}};function l(e,t){var n=e._model;return n.get("axisExpandable")&&n.get("axisExpandTriggerOn")===t}i.registerPreprocessor(a)},vwaK:function(e,t,n){var i=n("oEo5"),r=i.createHashMap,o=i.isTypedArray,a=n("1JkX").enableClassCheck,s=n("3uc+"),l=s.SOURCE_FORMAT_ORIGINAL,c=s.SERIES_LAYOUT_BY_COLUMN,u=s.SOURCE_FORMAT_UNKNOWN,d=s.SOURCE_FORMAT_TYPED_ARRAY,h=s.SOURCE_FORMAT_KEYED_COLUMNS;function f(e){this.fromDataset=e.fromDataset,this.data=e.data||(e.sourceFormat===h?{}:[]),this.sourceFormat=e.sourceFormat||u,this.seriesLayoutBy=e.seriesLayoutBy||c,this.dimensionsDefine=e.dimensionsDefine,this.encodeDefine=e.encodeDefine&&r(e.encodeDefine),this.startIndex=e.startIndex||0,this.dimensionsDetectCount=e.dimensionsDetectCount}f.seriesDataToSource=function(e){return new f({data:e,sourceFormat:o(e)?d:l,fromDataset:!1})},a(f);var p=f;e.exports=p},w8Gd:function(e,t,n){var i=n("MWS/").extend({type:"markPoint",defaultOption:{zlevel:0,z:5,symbol:"pin",symbolSize:50,tooltip:{trigger:"item"},label:{show:!0,position:"inside"},itemStyle:{borderWidth:2},emphasis:{label:{show:!0}}}});e.exports=i},w9ct:function(e,t){t.getNodeGlobalScale=function(e){var t=e.coordinateSystem;if("view"!==t.type)return 1;var n=e.option.nodeScaleRatio,i=t.scale,r=i&&i[0]||1;return((t.getZoom()-1)*n+1)/r},t.getSymbolSize=function(e){var t=e.getVisual("symbolSize");return t instanceof Array&&(t=(t[0]+t[1])/2),+t}},wBVS:function(e,t,n){var i=n("sVUS"),r=Object.prototype,o=r.hasOwnProperty,a=r.toString,s=i?i.toStringTag:void 0;e.exports=function(e){var t=o.call(e,s),n=e[s];try{e[s]=void 0;var i=!0}catch(e){}var r=a.call(e);return i&&(t?e[s]=n:delete e[s]),r}},wCui:function(e,t,n){n("tFbR"),n("lLgp")},wKys:function(e,t,n){var i=n("QLFg").normalizeRadian,r=2*Math.PI;t.containStroke=function(e,t,n,o,a,s,l,c,u){if(0===l)return!1;var d=l;c-=e,u-=t;var h=Math.sqrt(c*c+u*u);if(h-d>n||h+d<n)return!1;if(Math.abs(o-a)%r<1e-4)return!0;if(s){var f=o;o=i(a),a=i(f)}else o=i(o),a=i(a);o>a&&(a+=r);var p=Math.atan2(u,c);return p<0&&(p+=r),p>=o&&p<=a||p+r>=o&&p+r<=a}},wWuX:function(e,t,n){e.exports=function(e){return function(){if("function"==typeof ArrayBuffer){var t=e.lib.WordArray,n=t.init;(t.init=function(e){if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),(e instanceof Int8Array||"undefined"!=typeof Uint8ClampedArray&&e instanceof Uint8ClampedArray||e instanceof Int16Array||e instanceof Uint16Array||e instanceof Int32Array||e instanceof Uint32Array||e instanceof Float32Array||e instanceof Float64Array)&&(e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength)),e instanceof Uint8Array){for(var t=e.byteLength,i=[],r=0;r<t;r++)i[r>>>2]|=e[r]<<24-r%4*8;n.call(this,i,t)}else n.apply(this,arguments)}).prototype=t}}(),e.lib.WordArray}(n("zBii"))},wkHe:function(e,t,n){e.exports=function(e){return function(t){var n=e,i=n.lib.CipherParams,r=n.enc.Hex;n.format.Hex={stringify:function(e){return e.ciphertext.toString(r)},parse:function(e){var t=r.parse(e);return i.create({ciphertext:t})}}}(),e.format.Hex}(n("zBii"),n("pSdL"))},wnZI:function(e,t,n){var i=n("zYjg"),r=n("yuiD").getDefaultLabel;function o(e,t){"outside"===e.textPosition&&(e.textPosition=t)}t.setLabel=function(e,t,n,a,s,l,c){var u=n.getModel("label"),d=n.getModel("emphasis.label");i.setLabelStyle(e,t,u,d,{labelFetcher:s,labelDataIndex:l,defaultText:r(s.getData(),l),isRectText:!0,autoColor:a}),o(e),o(t)}},wpu7:function(e,t,n){var i=n("IT7P").createElement,r=n("2OMI"),o=n("ie0D"),a=n("4uqo"),s=n("F2Ao"),l=n("2Cb2"),c=n("ode/"),u=r.CMD,d=Array.prototype.join,h="none",f=Math.round,p=Math.sin,m=Math.cos,g=Math.PI,v=2*Math.PI,y=180/g,b=1e-4;function _(e){return f(1e4*e)/1e4}function x(e){return e<b&&e>-b}function w(e,t){t&&S(e,"transform","matrix("+d.call(t,",")+")")}function S(e,t,n){(!n||"linear"!==n.type&&"radial"!==n.type)&&e.setAttribute(t,n)}function C(e,t,n,i){if(function(e,t){var n=t?e.textFill:e.fill;return null!=n&&n!==h}(t,n)){var r=n?t.textFill:t.fill;S(e,"fill",r="transparent"===r?h:r),S(e,"fill-opacity",null!=t.fillOpacity?t.fillOpacity*t.opacity:t.opacity)}else S(e,"fill",h);if(function(e,t){var n=t?e.textStroke:e.stroke;return null!=n&&n!==h}(t,n)){var o=n?t.textStroke:t.stroke;S(e,"stroke",o="transparent"===o?h:o),S(e,"stroke-width",(n?t.textStrokeWidth:t.lineWidth)/(!n&&t.strokeNoScale?i.getLineScale():1)),S(e,"paint-order",n?"stroke":"fill"),S(e,"stroke-opacity",null!=t.strokeOpacity?t.strokeOpacity:t.opacity),t.lineDash?(S(e,"stroke-dasharray",t.lineDash.join(",")),S(e,"stroke-dashoffset",f(t.lineDashOffset||0))):S(e,"stroke-dasharray",""),t.lineCap&&S(e,"stroke-linecap",t.lineCap),t.lineJoin&&S(e,"stroke-linejoin",t.lineJoin),t.miterLimit&&S(e,"stroke-miterlimit",t.miterLimit)}else S(e,"stroke",h)}var k={};k.brush=function(e){var t=e.style,n=e.__svgEl;n||(n=i("path"),e.__svgEl=n),e.path||e.createPathProxy();var r=e.path;if(e.__dirtyPath){r.beginPath(),r.subPixelOptimize=!1,e.buildPath(r,e.shape),e.__dirtyPath=!1;var o=function(e){for(var t=[],n=e.data,i=e.len(),r=0;r<i;){var o="",a=0;switch(n[r++]){case u.M:o="M",a=2;break;case u.L:o="L",a=2;break;case u.Q:o="Q",a=4;break;case u.C:o="C",a=6;break;case u.A:var s=n[r++],l=n[r++],c=n[r++],d=n[r++],h=n[r++],b=n[r++],w=n[r++],S=n[r++],C=Math.abs(b),k=x(C-v)||(S?b>=v:-b>=v),M=b>0?b%v:b%v+v,O=!1;O=!!k||!x(C)&&M>=g==!!S;var D=_(s+c*m(h)),T=_(l+d*p(h));k&&(b=S?v-1e-4:1e-4-v,O=!0,9===r&&t.push("M",D,T));var A=_(s+c*m(h+b)),I=_(l+d*p(h+b));t.push("A",_(c),_(d),f(w*y),+O,+S,A,I);break;case u.Z:o="Z";break;case u.R:A=_(n[r++]),I=_(n[r++]);var E=_(n[r++]),P=_(n[r++]);t.push("M",A,I,"L",A+E,I,"L",A+E,I+P,"L",A,I+P,"L",A,I)}o&&t.push(o);for(var L=0;L<a;L++)t.push(_(n[r++]))}return t.join(" ")}(r);o.indexOf("NaN")<0&&S(n,"d",o)}C(n,t,!1,e),w(n,e.transform),null!=t.text?E(e,e.getBoundingRect()):L(e)};var M={brush:function(e){var t=e.style,n=t.image;n instanceof HTMLImageElement&&(n=n.src);if(n){var r=t.x||0,o=t.y||0,a=t.width,s=t.height,l=e.__svgEl;l||(l=i("image"),e.__svgEl=l),n!==e.__imageSrc&&(!function(e,t,n){e.setAttributeNS("http://www.w3.org/1999/xlink",t,n)}(l,"href",n),e.__imageSrc=n),S(l,"width",a),S(l,"height",s),S(l,"x",r),S(l,"y",o),w(l,e.transform),null!=t.text?E(e,e.getBoundingRect()):L(e)}}},O={},D=new o,T={},A=[],I={left:"start",right:"end",center:"middle",middle:"middle"},E=function(e,t){var n=e.style,r=e.transform,o=e instanceof c||n.transformText;e.__dirty&&l.normalizeTextStyle(n,!0);var u=n.text;if(null!=u&&(u+=""),l.needDrawText(u,n)){null==u&&(u=""),!o&&r&&(D.copy(t),D.applyTransform(r),t=D);var d=e.__textSvgEl;d||(d=i("text"),e.__textSvgEl=d);var h=d.style,f=n.font||s.DEFAULT_FONT,p=d.__computedFont;f!==d.__styleFont&&(h.font=d.__styleFont=f,p=d.__computedFont=h.font);var m=n.textPadding,g=n.textLineHeight,v=e.__textCotentBlock;v&&!e.__dirtyText||(v=e.__textCotentBlock=s.parsePlainText(u,p,m,g,n.truncate));var y=v.outerHeight,b=v.lineHeight;l.getBoxPosition(T,e,n,t);var _=T.baseX,x=T.baseY,S=T.textAlign||"left",k=T.textVerticalAlign;!function(e,t,n,i,r,o,s){a.identity(A),t&&n&&a.copy(A,n);var l=i.textRotation;if(r&&l){var c=i.textOrigin;"center"===c?(o=r.width/2+r.x,s=r.height/2+r.y):c&&(o=c[0]+r.x,s=c[1]+r.y),A[4]-=o,A[5]-=s,a.rotate(A,A,l),A[4]+=o,A[5]+=s}w(e,A)}(d,o,r,n,t,_,x);var M=_,O=s.adjustTextY(x,y,k);m&&(M=function(e,t,n){return"right"===t?e-n[1]:"center"===t?e+n[3]/2-n[1]/2:e+n[3]}(_,S,m),O+=m[0]),O+=b/2,C(d,n,!0,e);var I=v.canCacheByTextString,E=e.__tspanList||(e.__tspanList=[]),L=E.length;if(I&&e.__canCacheByTextString&&e.__text===u){if(e.__dirtyText&&L)for(var N=0;N<L;++N)P(E[N],S,M,O+N*b)}else{e.__text=u,e.__canCacheByTextString=I;var B=v.lines,z=B.length;for(N=0;N<z;N++){var $=E[N],j=B[N];$?$.__zrText!==j&&($.innerHTML="",$.appendChild(document.createTextNode(j))):($=E[N]=i("tspan"),d.appendChild($),$.appendChild(document.createTextNode(j))),P($,S,M,O+N*b)}if(L>z){for(;N<L;N++)d.removeChild(E[N]);E.length=z}}}};function P(e,t,n,i){S(e,"dominant-baseline","middle"),S(e,"text-anchor",I[t]),S(e,"x",n),S(e,"y",i)}function L(e){e&&e.__textSvgEl&&(e.__textSvgEl.parentNode&&e.__textSvgEl.parentNode.removeChild(e.__textSvgEl),e.__textSvgEl=null,e.__tspanList=[],e.__text=null)}O.drawRectText=E,O.brush=function(e){null!=e.style.text?E(e,!1):L(e)},t.path=k,t.image=M,t.text=O},wu4H:function(e,t){e.exports=d,e.exports.parse=o,e.exports.compile=function(e,t){return a(o(e,t))},e.exports.tokensToFunction=a,e.exports.tokensToRegExp=u;var n="/",i="./",r=new RegExp(["(\\\\.)","(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?"].join("|"),"g");function o(e,t){for(var o,a=[],c=0,u=0,d="",h=t&&t.delimiter||n,f=t&&t.delimiters||i,p=!1;null!==(o=r.exec(e));){var m=o[0],g=o[1],v=o.index;if(d+=e.slice(u,v),u=v+m.length,g)d+=g[1],p=!0;else{var y="",b=e[u],_=o[2],x=o[3],w=o[4],S=o[5];if(!p&&d.length){var C=d.length-1;f.indexOf(d[C])>-1&&(y=d[C],d=d.slice(0,C))}d&&(a.push(d),d="",p=!1);var k=""!==y&&void 0!==b&&b!==y,M="+"===S||"*"===S,O="?"===S||"*"===S,D=y||h,T=x||w;a.push({name:_||c++,prefix:y,delimiter:D,optional:O,repeat:M,partial:k,pattern:T?l(T):"[^"+s(D)+"]+?"})}}return(d||u<e.length)&&a.push(d+e.substr(u)),a}function a(e){for(var t=new Array(e.length),n=0;n<e.length;n++)"object"==typeof e[n]&&(t[n]=new RegExp("^(?:"+e[n].pattern+")$"));return function(n,i){for(var r="",o=i&&i.encode||encodeURIComponent,a=0;a<e.length;a++){var s=e[a];if("string"!=typeof s){var l,c=n?n[s.name]:void 0;if(Array.isArray(c)){if(!s.repeat)throw new TypeError('Expected "'+s.name+'" to not repeat, but got array');if(0===c.length){if(s.optional)continue;throw new TypeError('Expected "'+s.name+'" to not be empty')}for(var u=0;u<c.length;u++){if(l=o(c[u],s),!t[a].test(l))throw new TypeError('Expected all "'+s.name+'" to match "'+s.pattern+'"');r+=(0===u?s.prefix:s.delimiter)+l}}else if("string"!=typeof c&&"number"!=typeof c&&"boolean"!=typeof c){if(!s.optional)throw new TypeError('Expected "'+s.name+'" to be '+(s.repeat?"an array":"a string"));s.partial&&(r+=s.prefix)}else{if(l=o(String(c),s),!t[a].test(l))throw new TypeError('Expected "'+s.name+'" to match "'+s.pattern+'", but got "'+l+'"');r+=s.prefix+l}}else r+=s}return r}}function s(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function l(e){return e.replace(/([=!:$/()])/g,"\\$1")}function c(e){return e&&e.sensitive?"":"i"}function u(e,t,r){for(var o=(r=r||{}).strict,a=!1!==r.start,l=!1!==r.end,u=s(r.delimiter||n),d=r.delimiters||i,h=[].concat(r.endsWith||[]).map(s).concat("$").join("|"),f=a?"^":"",p=0===e.length,m=0;m<e.length;m++){var g=e[m];if("string"==typeof g)f+=s(g),p=m===e.length-1&&d.indexOf(g[g.length-1])>-1;else{var v=g.repeat?"(?:"+g.pattern+")(?:"+s(g.delimiter)+"(?:"+g.pattern+"))*":g.pattern;t&&t.push(g),g.optional?g.partial?f+=s(g.prefix)+"("+v+")?":f+="(?:"+s(g.prefix)+"("+v+"))?":f+=s(g.prefix)+"("+v+")"}}return l?(o||(f+="(?:"+u+")?"),f+="$"===h?"$":"(?="+h+")"):(o||(f+="(?:"+u+"(?="+h+"))?"),p||(f+="(?="+u+"|"+h+")")),new RegExp(f,c(r))}function d(e,t,n){return e instanceof RegExp?function(e,t){if(!t)return e;var n=e.source.match(/\((?!\?)/g);if(n)for(var i=0;i<n.length;i++)t.push({name:i,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,pattern:null});return e}(e,t):Array.isArray(e)?function(e,t,n){for(var i=[],r=0;r<e.length;r++)i.push(d(e[r],t,n).source);return new RegExp("(?:"+i.join("|")+")",c(n))}(e,t,n):function(e,t,n){return u(o(e,n),t,n)}(e,t,n)}},ww29:function(e,t,n){var i=n("2OMI"),r=n("Wa83").applyTransform,o=i.CMD,a=[[],[],[]],s=Math.sqrt,l=Math.atan2;e.exports=function(e,t){var n,i,c,u,d,h=e.data,f=o.M,p=o.C,m=o.L,g=o.R,v=o.A,y=o.Q;for(c=0,u=0;c<h.length;){switch(n=h[c++],u=c,i=0,n){case f:case m:i=1;break;case p:i=3;break;case y:i=2;break;case v:var b=t[4],_=t[5],x=s(t[0]*t[0]+t[1]*t[1]),w=s(t[2]*t[2]+t[3]*t[3]),S=l(-t[1]/w,t[0]/x);h[c]*=x,h[c++]+=b,h[c]*=w,h[c++]+=_,h[c++]*=x,h[c++]*=w,h[c++]+=S,h[c++]+=S,u=c+=2;break;case g:C[0]=h[c++],C[1]=h[c++],r(C,C,t),h[u++]=C[0],h[u++]=C[1],C[0]+=h[c++],C[1]+=h[c++],r(C,C,t),h[u++]=C[0],h[u++]=C[1]}for(d=0;d<i;d++){var C;(C=a[d])[0]=h[c++],C[1]=h[c++],r(C,C,t),h[u++]=C[0],h[u++]=C[1]}}}},wxYR:function(e,t,n){var i=n("G8fk")([["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]]),r={getAreaStyle:function(e,t){return i(this,e,t)}};e.exports=r},x0lj:function(e,t,n){var i=n("oEo5"),r=n("Jjzi").parsePercent,o=i.each;e.exports=function(e){var t=function(e){var t=[],n=[];return e.eachSeriesByType("boxplot",function(e){var r=e.getBaseAxis(),o=i.indexOf(n,r);o<0&&(o=n.length,n[o]=r,t[o]={axis:r,seriesModels:[]}),t[o].seriesModels.push(e)}),t}(e);o(t,function(e){var t=e.seriesModels;t.length&&(function(e){var t,n,a=e.axis,s=e.seriesModels,l=s.length,c=e.boxWidthList=[],u=e.boxOffsetList=[],d=[];if("category"===a.type)n=a.getBandWidth();else{var h=0;o(s,function(e){h=Math.max(h,e.getData().count())}),t=a.getExtent(),Math.abs(t[1]-t[0])}o(s,function(e){var t=e.get("boxWidth");i.isArray(t)||(t=[t,t]),d.push([r(t[0],n)||0,r(t[1],n)||0])});var f=.8*n-2,p=f/l*.3,m=(f-p*(l-1))/l,g=m/2-f/2;o(s,function(e,t){u.push(g),g+=p+m,c.push(Math.min(Math.max(m,d[t][0]),d[t][1]))})}(e),o(t,function(t,n){!function(e,t,n){var i=e.coordinateSystem,r=e.getData(),o=n/2,a="horizontal"===e.get("layout")?0:1,s=1-a,l=["x","y"],c=r.mapDimension(l[a]),u=r.mapDimension(l[s],!0);if(!(null==c||u.length<5))for(var d=0;d<r.count();d++){var h=r.get(c,d),f=b(h,u[2],d),p=b(h,u[0],d),m=b(h,u[1],d),g=b(h,u[3],d),v=b(h,u[4],d),y=[];_(y,m,0),_(y,g,1),y.push(p,m,v,g),x(y,p),x(y,v),x(y,f),r.setItemLayout(d,{initBaseline:f[s],ends:y})}function b(e,n,o){var l,c=r.get(n,o),u=[];return u[a]=e,u[s]=c,isNaN(e)||isNaN(c)?l=[NaN,NaN]:(l=i.dataToPoint(u))[a]+=t,l}function _(e,t,n){var i=t.slice(),r=t.slice();i[a]+=o,r[a]-=o,n?e.push(i,r):e.push(r,i)}function x(e,t){var n=t.slice(),i=t.slice();n[a]-=o,i[a]+=o,e.push(n,i)}}(t,e.boxOffsetList[n],e.boxWidthList[n])}))})}},x4UA:function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:300,i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!e||!t)throw new Error("instance & callback is required");var r=!1,o=function(){r||(r=!0,t&&t.apply(null,arguments))};i?e.$once("after-leave",o):e.$on("after-leave",o),setTimeout(function(){o()},n+100)}},x83A:function(e,t,n){"use strict";t.__esModule=!0;var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.default=function(e){return function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];return 1===n.length&&"object"===i(n[0])&&(n=n[0]),n&&n.hasOwnProperty||(n={}),e.replace(o,function(t,i,o,a){var s=void 0;return"{"===e[a-1]&&"}"===e[a+t.length]?o:null===(s=(0,r.hasOwn)(n,o)?n[o]:null)||void 0===s?"":s})}};var r=n("5Xzl"),o=/(%|)\{([0-9a-zA-Z_]+)\}/g},xCJu:function(e,t,n){var i=n("oEo5"),r=n("gyjJ"),o=(0,n("QV7q").makeInner)(),a=i.each;function s(e,t,n){e.handler("leave",null,n)}function l(e,t,n,i){t.handler(e,n,i)}t.register=function(e,t,n){if(!r.node){var c=t.getZr();o(c).records||(o(c).records={}),function(e,t){function n(n,i){e.on(n,function(n){var r=function(e){var t={showTip:[],hideTip:[]},n=function(i){var r=t[i.type];r?r.push(i):(i.dispatchAction=n,e.dispatchAction(i))};return{dispatchAction:n,pendings:t}}(t);a(o(e).records,function(e){e&&i(e,n,r.dispatchAction)}),function(e,t){var n,i=e.showTip.length,r=e.hideTip.length;i?n=e.showTip[i-1]:r&&(n=e.hideTip[r-1]),n&&(n.dispatchAction=null,t.dispatchAction(n))}(r.pendings,t)})}o(e).initialized||(o(e).initialized=!0,n("click",i.curry(l,"click")),n("mousemove",i.curry(l,"mousemove")),n("globalout",s))}(c,t),(o(c).records[e]||(o(c).records[e]={})).handler=n}},t.unregister=function(e,t){if(!r.node){var n=t.getZr();(o(n).records||{})[e]&&(o(n).records[e]=null)}}},xCdF:function(e,t,n){"use strict";t.__esModule=!0;var i=i||{};i.Utils=i.Utils||{},i.Utils.focusFirstDescendant=function(e){for(var t=0;t<e.childNodes.length;t++){var n=e.childNodes[t];if(i.Utils.attemptFocus(n)||i.Utils.focusFirstDescendant(n))return!0}return!1},i.Utils.focusLastDescendant=function(e){for(var t=e.childNodes.length-1;t>=0;t--){var n=e.childNodes[t];if(i.Utils.attemptFocus(n)||i.Utils.focusLastDescendant(n))return!0}return!1},i.Utils.attemptFocus=function(e){if(!i.Utils.isFocusable(e))return!1;i.Utils.IgnoreUtilFocusChanges=!0;try{e.focus()}catch(e){}return i.Utils.IgnoreUtilFocusChanges=!1,document.activeElement===e},i.Utils.isFocusable=function(e){if(e.tabIndex>0||0===e.tabIndex&&null!==e.getAttribute("tabIndex"))return!0;if(e.disabled)return!1;switch(e.nodeName){case"A":return!!e.href&&"ignore"!==e.rel;case"INPUT":return"hidden"!==e.type&&"file"!==e.type;case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}},i.Utils.triggerEvent=function(e,t){var n=void 0;n=/^mouse|click/.test(t)?"MouseEvents":/^key/.test(t)?"KeyboardEvent":"HTMLEvents";for(var i=document.createEvent(n),r=arguments.length,o=Array(r>2?r-2:0),a=2;a<r;a++)o[a-2]=arguments[a];return i.initEvent.apply(i,[t].concat(o)),e.dispatchEvent?e.dispatchEvent(i):e.fireEvent("on"+t,i),e},i.Utils.keys={tab:9,enter:13,space:32,left:37,up:38,right:39,down:40,esc:27},t.default=i.Utils},xHkS:function(e,t,n){var i=n("Q6Bq");n("l2wO"),n("+AkH"),n("TymS");var r=n("IO27"),o=n("luy6");i.registerVisual(r),i.registerLayout(o)},xNMw:function(e,t,n){var i=n("k+fg").extend({type:"series.bar",dependencies:["grid","polar"],brushSelector:"rect",getProgressive:function(){return!!this.get("large")&&this.get("progressive")},getProgressiveThreshold:function(){var e=this.get("progressiveThreshold"),t=this.get("largeThreshold");return t>e&&(e=t),e},defaultOption:{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1}}});e.exports=i},xOJF:function(e,t,n){var i=function(){return this}()||Function("return this")(),r=i.regeneratorRuntime&&Object.getOwnPropertyNames(i).indexOf("regeneratorRuntime")>=0,o=r&&i.regeneratorRuntime;if(i.regeneratorRuntime=void 0,e.exports=n("k4Ii"),r)i.regeneratorRuntime=o;else try{delete i.regeneratorRuntime}catch(e){i.regeneratorRuntime=void 0}},xPmE:function(e,t){var n=["lineStyle","normal","opacity"],i={seriesType:"parallel",reset:function(e,t,i){var r=e.getModel("itemStyle"),o=e.getModel("lineStyle"),a=t.get("color"),s=o.get("color")||r.get("color")||a[e.seriesIndex%a.length],l=e.get("inactiveOpacity"),c=e.get("activeOpacity"),u=e.getModel("lineStyle").getLineStyle(),d=e.coordinateSystem,h=e.getData(),f={normal:u.opacity,active:c,inactive:l};return h.setVisual("color",s),{progress:function(e,t){d.eachActiveState(t,function(e,i){var r=f[e];if("normal"===e&&t.hasItemOption){var o=t.getItemModel(i).get(n,!0);null!=o&&(r=o)}t.setItemVisual(i,"opacity",r)},e.start,e.end)}}}};e.exports=i},xQxv:function(e,t,n){var i=n("lwtk"),r=n("ltg/"),o=n("7uuy")("species");e.exports=function(e,t){var n,a=i(e).constructor;return void 0===a||void 0==(n=i(a)[o])?t:r(n)}},xSEk:function(e,t,n){n("8DEy"),e.exports=n("zpmP").Object.keys},xTec:function(e,t,n){var i=n("Q6Bq"),r=n("oEo5"),o=n("P0S0"),a=n("QV7q").isNameSpecified,s=n("B2QF").legend.selector,l={all:{type:"all",title:r.clone(s.all)},inverse:{type:"inverse",title:r.clone(s.inverse)}},c=i.extendComponentModel({type:"legend.plain",dependencies:["series"],layoutMode:{type:"box",ignoreSize:!0},init:function(e,t,n){this.mergeDefaultAndTheme(e,n),e.selected=e.selected||{},this._updateSelector(e)},mergeOption:function(e){c.superCall(this,"mergeOption",e),this._updateSelector(e)},_updateSelector:function(e){var t=e.selector;!0===t&&(t=e.selector=["all","inverse"]),r.isArray(t)&&r.each(t,function(e,n){r.isString(e)&&(e={type:e}),t[n]=r.merge(e,l[e.type])})},optionUpdated:function(){this._updateData(this.ecModel);var e=this._data;if(e[0]&&"single"===this.get("selectedMode")){for(var t=!1,n=0;n<e.length;n++){var i=e[n].get("name");if(this.isSelected(i)){this.select(i),t=!0;break}}!t&&this.select(e[0].get("name"))}},_updateData:function(e){var t=[],n=[];e.eachRawSeries(function(i){var r,o=i.name;if(n.push(o),i.legendVisualProvider){var s=i.legendVisualProvider.getAllNames();e.isSeriesFiltered(i)||(n=n.concat(s)),s.length?t=t.concat(s):r=!0}else r=!0;r&&a(i)&&t.push(i.name)}),this._availableNames=n;var i=this.get("data")||t,s=r.map(i,function(e){return"string"!=typeof e&&"number"!=typeof e||(e={name:e}),new o(e,this,this.ecModel)},this);this._data=s},getData:function(){return this._data},select:function(e){var t=this.option.selected;if("single"===this.get("selectedMode")){var n=this._data;r.each(n,function(e){t[e.get("name")]=!1})}t[e]=!0},unSelect:function(e){"single"!==this.get("selectedMode")&&(this.option.selected[e]=!1)},toggleSelected:function(e){var t=this.option.selected;t.hasOwnProperty(e)||(t[e]=!0),this[t[e]?"unSelect":"select"](e)},allSelect:function(){var e=this._data,t=this.option.selected;r.each(e,function(e){t[e.get("name",!0)]=!0})},inverseSelect:function(){var e=this._data,t=this.option.selected;r.each(e,function(e){var n=e.get("name",!0);t.hasOwnProperty(n)||(t[n]=!0),t[n]=!t[n]})},isSelected:function(e){var t=this.option.selected;return!(t.hasOwnProperty(e)&&!t[e])&&r.indexOf(this._availableNames,e)>=0},getOrient:function(){return"vertical"===this.get("orient")?{index:1,name:"vertical"}:{index:0,name:"horizontal"}},defaultOption:{zlevel:0,z:4,show:!0,orient:"horizontal",left:"center",top:0,align:"auto",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemGap:10,itemWidth:25,itemHeight:14,inactiveColor:"#ccc",inactiveBorderColor:"#ccc",itemStyle:{borderWidth:0},textStyle:{color:"#333"},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:" sans-serif",color:"#666",borderWidth:1,borderColor:"#666"},emphasis:{selectorLabel:{show:!0,color:"#eee",backgroundColor:"#666"}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1}}}),u=c;e.exports=u},xYud:function(e,t,n){var i=n("9mCu"),r=n("oEo5"),o=n("86p4"),a=n("XTQn");function s(e,t){i.call(this,e,t,["linearGradient","radialGradient"],"__gradient_in_use__")}r.inherits(s,i),s.prototype.addWithoutUpdate=function(e,t){if(t&&t.style){var n=this;r.each(["fill","stroke"],function(i){if(t.style[i]&&("linear"===t.style[i].type||"radial"===t.style[i].type)){var r,o=t.style[i],a=n.getDefs(!0);o._dom?(r=o._dom,a.contains(o._dom)||n.addDom(r)):r=n.add(o),n.markUsed(t);var s=r.getAttribute("id");e.setAttribute(i,"url(#"+s+")")}})}},s.prototype.add=function(e){var t;if("linear"===e.type)t=this.createElement("linearGradient");else{if("radial"!==e.type)return o("Illegal gradient type."),null;t=this.createElement("radialGradient")}return e.id=e.id||this.nextId++,t.setAttribute("id","zr"+this._zrId+"-gradient-"+e.id),this.updateDom(e,t),this.addDom(t),t},s.prototype.update=function(e){var t=this;i.prototype.update.call(this,e,function(){var n=e.type,i=e._dom.tagName;"linear"===n&&"linearGradient"===i||"radial"===n&&"radialGradient"===i?t.updateDom(e,e._dom):(t.removeDom(e),t.add(e))})},s.prototype.updateDom=function(e,t){if("linear"===e.type)t.setAttribute("x1",e.x),t.setAttribute("y1",e.y),t.setAttribute("x2",e.x2),t.setAttribute("y2",e.y2);else{if("radial"!==e.type)return void o("Illegal gradient type.");t.setAttribute("cx",e.x),t.setAttribute("cy",e.y),t.setAttribute("r",e.r)}e.global?t.setAttribute("gradientUnits","userSpaceOnUse"):t.setAttribute("gradientUnits","objectBoundingBox"),t.innerHTML="";for(var n=e.colorStops,i=0,r=n.length;i<r;++i){var s=this.createElement("stop");s.setAttribute("offset",100*n[i].offset+"%");var l=n[i].color;if(l.indexOf("rgba")>-1){var c=a.parse(l)[3],u=a.toHex(l);s.setAttribute("stop-color","#"+u),s.setAttribute("stop-opacity",c)}else s.setAttribute("stop-color",n[i].color);t.appendChild(s)}e._dom=t},s.prototype.markUsed=function(e){if(e.style){var t=e.style.fill;t&&t._dom&&i.prototype.markUsed.call(this,t._dom),(t=e.style.stroke)&&t._dom&&i.prototype.markUsed.call(this,t._dom)}};var l=s;e.exports=l},xdc2:function(e,t,n){var i=n("+Vnd"),r=n("Zmji"),o=n("CQhY").encodeHTML,a=n("P0S0"),s=(n("IPcT").__DEV__,i.extend({type:"series.sankey",layoutInfo:null,levelModels:null,getInitialData:function(e,t){for(var n=e.edges||e.links,i=e.data||e.nodes,o=e.levels,s=this.levelModels={},l=0;l<o.length;l++)null!=o[l].depth&&o[l].depth>=0&&(s[o[l].depth]=new a(o[l],this,t));if(i&&n)return r(i,n,this,!0,function(e,t){e.wrapMethod("getItemModel",function(e,t){return e.customizeGetParent(function(e){var n=this.parentModel,i=n.getData().getItemLayout(t).depth,r=n.levelModels[i];return r||this.parentModel}),e}),t.wrapMethod("getItemModel",function(e,t){return e.customizeGetParent(function(e){var n=this.parentModel,i=n.getGraph().getEdgeByIndex(t),r=i.node1.getLayout().depth,o=n.levelModels[r];return o||this.parentModel}),e})}).data},setNodePosition:function(e,t){var n=this.option.data[e];n.localX=t[0],n.localY=t[1]},getGraph:function(){return this.getData().graph},getEdgeData:function(){return this.getGraph().edgeData},formatTooltip:function(e,t,n){if("edge"===n){var i=this.getDataParams(e,n),r=i.data,a=r.source+" -- "+r.target;return i.value&&(a+=" : "+i.value),o(a)}if("node"===n){var l=this.getGraph().getNodeByIndex(e).getLayout().value,c=this.getDataParams(e,n).data.name;if(l)a=c+" : "+l;return o(a)}return s.superCall(this,"formatTooltip",e,t)},optionUpdated:function(){var e=this.option;!0===e.focusNodeAdjacency&&(e.focusNodeAdjacency="allEdges")},getDataParams:function(e,t){var n=s.superCall(this,"getDataParams",e,t);if(null==n.value&&"node"===t){var i=this.getGraph().getNodeByIndex(e).getLayout().value;n.value=i}return n},defaultOption:{zlevel:0,z:2,coordinateSystem:"view",layout:null,left:"5%",top:"5%",right:"20%",bottom:"5%",orient:"horizontal",nodeWidth:20,nodeGap:8,draggable:!0,focusNodeAdjacency:!1,layoutIterations:32,label:{show:!0,position:"right",color:"#000",fontSize:12},levels:[],nodeAlign:"justify",itemStyle:{borderWidth:1,borderColor:"#333"},lineStyle:{color:"#314656",opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},animationEasing:"linear",animationDuration:1e3}})),l=s;e.exports=l},xjlc:function(e,t,n){var i=n("Q6Bq");n("xdc2"),n("QAa3"),n("XSBz");var r=n("0+Dw"),o=n("peMG");i.registerLayout(r),i.registerVisual(o)},xx5k:function(e,t,n){var i=n("oEo5"),r=n("F62y"),o=n("zYjg"),a=n("342z"),s=n("PyNg").createClipPath,l=["itemStyle"],c=["emphasis","itemStyle"],u=["color","color0","borderColor","borderColor0"],d=r.extend({type:"candlestick",render:function(e,t,n){this.group.removeClipPath(),this._updateDrawMode(e),this._isLargeDraw?this._renderLarge(e):this._renderNormal(e)},incrementalPrepareRender:function(e,t,n){this._clear(),this._updateDrawMode(e)},incrementalRender:function(e,t,n,i){this._isLargeDraw?this._incrementalRenderLarge(e,t):this._incrementalRenderNormal(e,t)},_updateDrawMode:function(e){var t=e.pipelineContext.large;(null==this._isLargeDraw||t^this._isLargeDraw)&&(this._isLargeDraw=t,this._clear())},_renderNormal:function(e){var t=e.getData(),n=this._data,i=this.group,r=t.getLayout("isSimpleBox"),a=e.get("clip",!0),s=e.coordinateSystem,l=s.getArea&&s.getArea();this._data||i.removeAll(),t.diff(n).add(function(n){if(t.hasValue(n)){var s,c=t.getItemLayout(n);if(a&&p(l,c))return;s=f(c,n,!0),o.initProps(s,{shape:{points:c.ends}},e,n),m(s,t,n,r),i.add(s),t.setItemGraphicEl(n,s)}}).update(function(s,c){var u=n.getItemGraphicEl(c);if(t.hasValue(s)){var d=t.getItemLayout(s);a&&p(l,d)?i.remove(u):(u?o.updateProps(u,{shape:{points:d.ends}},e,s):u=f(d,s),m(u,t,s,r),i.add(u),t.setItemGraphicEl(s,u))}else i.remove(u)}).remove(function(e){var t=n.getItemGraphicEl(e);t&&i.remove(t)}).execute(),this._data=t},_renderLarge:function(e){this._clear(),v(e,this.group);var t=e.get("clip",!0)?s(e.coordinateSystem,!1,e):null;t?this.group.setClipPath(t):this.group.removeClipPath()},_incrementalRenderNormal:function(e,t){for(var n,i=t.getData(),r=i.getLayout("isSimpleBox");null!=(n=e.next());){var o;m(o=f(i.getItemLayout(n),n),i,n,r),o.incremental=!0,this.group.add(o)}},_incrementalRenderLarge:function(e,t){v(t,this.group,!0)},remove:function(e){this._clear()},_clear:function(){this.group.removeAll(),this._data=null},dispose:i.noop}),h=a.extend({type:"normalCandlestickBox",shape:{},buildPath:function(e,t){var n=t.points;this.__simpleBox?(e.moveTo(n[4][0],n[4][1]),e.lineTo(n[6][0],n[6][1])):(e.moveTo(n[0][0],n[0][1]),e.lineTo(n[1][0],n[1][1]),e.lineTo(n[2][0],n[2][1]),e.lineTo(n[3][0],n[3][1]),e.closePath(),e.moveTo(n[4][0],n[4][1]),e.lineTo(n[5][0],n[5][1]),e.moveTo(n[6][0],n[6][1]),e.lineTo(n[7][0],n[7][1]))}});function f(e,t,n){var r=e.ends;return new h({shape:{points:n?function(e,t){return i.map(e,function(e){return(e=e.slice())[1]=t.initBaseline,e})}(r,e):r},z2:100})}function p(e,t){for(var n=!0,i=0;i<t.ends.length;i++)if(e.contain(t.ends[i][0],t.ends[i][1])){n=!1;break}return n}function m(e,t,n,i){var r=t.getItemModel(n),a=r.getModel(l),s=t.getItemVisual(n,"color"),d=t.getItemVisual(n,"borderColor")||s,h=a.getItemStyle(u);e.useStyle(h),e.style.strokeNoScale=!0,e.style.fill=s,e.style.stroke=d,e.__simpleBox=i;var f=r.getModel(c).getItemStyle();o.setHoverStyle(e,f)}var g=a.extend({type:"largeCandlestickBox",shape:{},buildPath:function(e,t){for(var n=t.points,i=0;i<n.length;)if(this.__sign===n[i++]){var r=n[i++];e.moveTo(r,n[i++]),e.lineTo(r,n[i++])}else i+=3}});function v(e,t,n){var i=e.getData(),r=i.getLayout("largePoints"),o=new g({shape:{points:r},__sign:1});t.add(o);var a=new g({shape:{points:r},__sign:-1});t.add(a),y(1,o,e,i),y(-1,a,e,i),n&&(o.incremental=!0,a.incremental=!0)}function y(e,t,n,i){var r=e>0?"P":"N",o=i.getVisual("borderColor"+r)||i.getVisual("color"+r),a=n.getModel(l).getItemStyle(u);t.useStyle(a),t.style.fill=null,t.style.stroke=o}var b=d;e.exports=b},xxVc:function(e,t,n){var i=n("oEo5"),r=n("XTQn"),o=n("YsOP"),a=n("Jjzi"),s=n("zYjg"),l=n("aiPM"),c=function(e,t,n,r){var o=l.dataTransform(e,r[0]),a=l.dataTransform(e,r[1]),s=i.retrieve,c=o.coord,u=a.coord;c[0]=s(c[0],-1/0),c[1]=s(c[1],-1/0),u[0]=s(u[0],1/0),u[1]=s(u[1],1/0);var d=i.mergeAll([{},o,a]);return d.coord=[o.coord,a.coord],d.x0=o.x,d.y0=o.y,d.x1=a.x,d.y1=a.y,d};function u(e){return!isNaN(e)&&!isFinite(e)}function d(e,t,n,i){var r=1-e;return u(t[r])&&u(n[r])}function h(e,t){var n=t.coord[0],i=t.coord[1];return!("cartesian2d"!==e.type||!n||!i||!d(1,n,i)&&!d(0,n,i))||(l.dataFilter(e,{coord:n,x:t.x0,y:t.y0})||l.dataFilter(e,{coord:i,x:t.x1,y:t.y1}))}function f(e,t,n,i,r){var o,s=i.coordinateSystem,l=e.getItemModel(t),c=a.parsePercent(l.get(n[0]),r.getWidth()),d=a.parsePercent(l.get(n[1]),r.getHeight());if(isNaN(c)||isNaN(d)){if(i.getMarkerPosition)o=i.getMarkerPosition(e.getValues(n,t));else{var h=[m=e.get(n[0],t),g=e.get(n[1],t)];s.clampData&&s.clampData(h,h),o=s.dataToPoint(h,!0)}if("cartesian2d"===s.type){var f=s.getAxis("x"),p=s.getAxis("y"),m=e.get(n[0],t),g=e.get(n[1],t);u(m)?o[0]=f.toGlobalCoord(f.getExtent()["x0"===n[0]?0:1]):u(g)&&(o[1]=p.toGlobalCoord(p.getExtent()["y0"===n[1]?0:1]))}isNaN(c)||(o[0]=c),isNaN(d)||(o[1]=d)}else o=[c,d];return o}var p=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]];n("4M5R").extend({type:"markArea",updateTransform:function(e,t,n){t.eachSeries(function(e){var t=e.markAreaModel;if(t){var r=t.getData();r.each(function(t){var o=i.map(p,function(i){return f(r,t,i,e,n)});r.setItemLayout(t,o),r.getItemGraphicEl(t).setShape("points",o)})}},this)},renderSeries:function(e,t,n,a){var l=e.coordinateSystem,d=e.id,m=e.getData(),g=this.markerGroupMap,v=g.get(d)||g.set(d,{group:new s.Group});this.group.add(v.group),v.__keep=!0;var y=function(e,t,n){var r,a;e?(r=i.map(e&&e.dimensions,function(e){var n=t.getData(),r=n.getDimensionInfo(n.mapDimension(e))||{};return i.defaults({name:e},r)}),a=new o(i.map(["x0","y0","x1","y1"],function(e,t){return{name:e,type:r[t%2].type}}),n)):a=new o(r=[{name:"value",type:"float"}],n);var s=i.map(n.get("data"),i.curry(c,t,e,n));e&&(s=i.filter(s,i.curry(h,e)));var l=e?function(e,t,n,i){return e.coord[Math.floor(i/2)][i%2]}:function(e){return e.value};return a.initData(s,null,l),a.hasItemOption=!0,a}(l,e,t);t.setData(y),y.each(function(t){var n=i.map(p,function(n){return f(y,t,n,e,a)}),r=!0;i.each(p,function(e){if(r){var n=y.get(e[0],t),i=y.get(e[1],t);(u(n)||l.getAxis("x").containData(n))&&(u(i)||l.getAxis("y").containData(i))&&(r=!1)}}),y.setItemLayout(t,{points:n,allClipped:r}),y.setItemVisual(t,{color:m.getVisual("color")})}),y.diff(v.__data).add(function(e){var t=y.getItemLayout(e);if(!t.allClipped){var n=new s.Polygon({shape:{points:t.points}});y.setItemGraphicEl(e,n),v.group.add(n)}}).update(function(e,n){var i=v.__data.getItemGraphicEl(n),r=y.getItemLayout(e);r.allClipped?i&&v.group.remove(i):(i?s.updateProps(i,{shape:{points:r.points}},t,e):i=new s.Polygon({shape:{points:r.points}}),y.setItemGraphicEl(e,i),v.group.add(i))}).remove(function(e){var t=v.__data.getItemGraphicEl(e);v.group.remove(t)}).execute(),y.eachItemGraphicEl(function(e,n){var o=y.getItemModel(n),a=o.getModel("label"),l=o.getModel("emphasis.label"),c=y.getItemVisual(n,"color");e.useStyle(i.defaults(o.getModel("itemStyle").getItemStyle(),{fill:r.modifyAlpha(c,.4),stroke:c})),e.hoverStyle=o.getModel("emphasis.itemStyle").getItemStyle(),s.setLabelStyle(e.style,e.hoverStyle,a,l,{labelFetcher:t,labelDataIndex:n,defaultText:y.getName(n)||"",isRectText:!0,autoColor:c}),s.setHoverStyle(e,{}),e.dataModel=t}),v.__data=y,v.group.silent=t.get("silent")||e.get("silent")}})},"y+8q":function(e,t,n){var i=n("zYjg"),r=n("o2YK"),o=n("oMIb"),a=n("Og4i"),s=i.extendShape({shape:{polyline:!1,curveness:0,segs:[]},buildPath:function(e,t){var n=t.segs,i=t.curveness;if(t.polyline)for(var r=0;r<n.length;){var o=n[r++];if(o>0){e.moveTo(n[r++],n[r++]);for(var a=1;a<o;a++)e.lineTo(n[r++],n[r++])}}else for(r=0;r<n.length;){var s=n[r++],l=n[r++],c=n[r++],u=n[r++];if(e.moveTo(s,l),i>0){var d=(s+c)/2-(l-u)*i,h=(l+u)/2-(c-s)*i;e.quadraticCurveTo(d,h,c,u)}else e.lineTo(c,u)}},findDataIndex:function(e,t){var n=this.shape,i=n.segs,r=n.curveness;if(n.polyline)for(var s=0,l=0;l<i.length;){var c=i[l++];if(c>0)for(var u=i[l++],d=i[l++],h=1;h<c;h++){var f=i[l++],p=i[l++];if(o.containStroke(u,d,f,p))return s}s++}else for(s=0,l=0;l<i.length;){u=i[l++],d=i[l++],f=i[l++],p=i[l++];if(r>0){var m=(u+f)/2-(d-p)*r,g=(d+p)/2-(f-u)*r;if(a.containStroke(u,d,m,g,f,p))return s}else if(o.containStroke(u,d,f,p))return s;s++}return-1}});function l(){this.group=new i.Group}var c=l.prototype;c.isPersistent=function(){return!this._incremental},c.updateData=function(e){this.group.removeAll();var t=new s({rectHover:!0,cursor:"default"});t.setShape({segs:e.getLayout("linesPoints")}),this._setCommon(t,e),this.group.add(t),this._incremental=null},c.incrementalPrepareUpdate=function(e){this.group.removeAll(),this._clearIncremental(),e.count()>5e5?(this._incremental||(this._incremental=new r({silent:!0})),this.group.add(this._incremental)):this._incremental=null},c.incrementalUpdate=function(e,t){var n=new s;n.setShape({segs:t.getLayout("linesPoints")}),this._setCommon(n,t,!!this._incremental),this._incremental?this._incremental.addDisplayable(n,!0):(n.rectHover=!0,n.cursor="default",n.__startIndex=e.start,this.group.add(n))},c.remove=function(){this._clearIncremental(),this._incremental=null,this.group.removeAll()},c._setCommon=function(e,t,n){var i=t.hostModel;e.setShape({polyline:i.get("polyline"),curveness:i.get("lineStyle.curveness")}),e.useStyle(i.getModel("lineStyle").getLineStyle()),e.style.strokeNoScale=!0;var r=t.getVisual("color");r&&e.setStyle("stroke",r),e.setStyle("fill"),n||(e.seriesIndex=i.seriesIndex,e.on("mousemove",function(t){e.dataIndex=null;var n=e.findDataIndex(t.offsetX,t.offsetY);n>0&&(e.dataIndex=n+e.__startIndex)}))},c._clearIncremental=function(){var e=this._incremental;e&&e.clearDisplaybles()};var u=l;e.exports=u},y6TG:function(e,t,n){var i=n("oEo5"),r={updateSelectedMap:function(e){this._targetList=i.isArray(e)?e.slice():[],this._selectTargetMap=i.reduce(e||[],function(e,t){return e.set(t.name,t),e},i.createHashMap())},select:function(e,t){var n=null!=t?this._targetList[t]:this._selectTargetMap.get(e);"single"===this.get("selectedMode")&&this._selectTargetMap.each(function(e){e.selected=!1}),n&&(n.selected=!0)},unSelect:function(e,t){var n=null!=t?this._targetList[t]:this._selectTargetMap.get(e);n&&(n.selected=!1)},toggleSelected:function(e,t){var n=null!=t?this._targetList[t]:this._selectTargetMap.get(e);if(null!=n)return this[n.selected?"unSelect":"select"](e,t),n.selected},isSelected:function(e,t){var n=null!=t?this._targetList[t]:this._selectTargetMap.get(e);return n&&n.selected}};e.exports=r},yBoc:function(e,t,n){var i=n("E5vS"),r=n("H4kY"),o=n("qhWv"),a="Expected a function",s=Math.max,l=Math.min;e.exports=function(e,t,n){var c,u,d,h,f,p,m=0,g=!1,v=!1,y=!0;if("function"!=typeof e)throw new TypeError(a);function b(t){var n=c,i=u;return c=u=void 0,m=t,h=e.apply(i,n)}function _(e){var n=e-p;return void 0===p||n>=t||n<0||v&&e-m>=d}function x(){var e=r();if(_(e))return w(e);f=setTimeout(x,function(e){var n=t-(e-p);return v?l(n,d-(e-m)):n}(e))}function w(e){return f=void 0,y&&c?b(e):(c=u=void 0,h)}function S(){var e=r(),n=_(e);if(c=arguments,u=this,p=e,n){if(void 0===f)return function(e){return m=e,f=setTimeout(x,t),g?b(e):h}(p);if(v)return clearTimeout(f),f=setTimeout(x,t),b(p)}return void 0===f&&(f=setTimeout(x,t)),h}return t=o(t)||0,i(n)&&(g=!!n.leading,d=(v="maxWait"in n)?s(o(n.maxWait)||0,t):d,y="trailing"in n?!!n.trailing:y),S.cancel=function(){void 0!==f&&clearTimeout(f),m=0,c=p=u=f=void 0},S.flush=function(){return void 0===f?h:w(r())},S}},yMz6:function(e,t){t.updateCenterAndZoom=function(e,t,n){var i=e.getZoom(),r=e.getCenter(),o=t.zoom,a=e.dataToPoint(r);null!=t.dx&&null!=t.dy&&(a[0]-=t.dx,a[1]-=t.dy,r=e.pointToData(a),e.setCenter(r));if(null!=o){if(n){var s=n.min||0,l=n.max||1/0;o=Math.max(Math.min(i*o,l),s)/i}e.scale[0]*=o,e.scale[1]*=o;var c=e.position,u=(t.originX-c[0])*(o-1),d=(t.originY-c[1])*(o-1);c[0]-=u,c[1]-=d,e.updateTransform(),r=e.pointToData(a),e.setCenter(r),e.setZoom(o*i)}return{center:e.getCenter(),zoom:e.getZoom()}}},"yOV+":function(e,t,n){var i=n("oEo5");t.layout=function(e,t){t=t||{};var n=e.coordinateSystem,r=e.axis,o={},a=r.position,s=r.orient,l=n.getRect(),c=[l.x,l.x+l.width,l.y,l.y+l.height],u={horizontal:{top:c[2],bottom:c[3]},vertical:{left:c[0],right:c[1]}};o.position=["vertical"===s?u.vertical[a]:c[0],"horizontal"===s?u.horizontal[a]:c[3]],o.rotation=Math.PI/2*{horizontal:0,vertical:1}[s],o.labelDirection=o.tickDirection=o.nameDirection={top:-1,bottom:1,right:1,left:-1}[a],e.get("axisTick.inside")&&(o.tickDirection=-o.tickDirection),i.retrieve(t.labelInside,e.get("axisLabel.inside"))&&(o.labelDirection=-o.labelDirection);var d=t.rotate;return null==d&&(d=e.get("axisLabel.rotate")),o.labelRotation="top"===a?-d:d,o.z2=1,o}},yZ6v:function(e,t,n){var i=n("Q6Bq"),r=n("5xMV");n("QRYH"),n("QHKB"),n("KZcC"),n("mJA3"),n("kZpV"),i.registerPreprocessor(r)},yZUZ:function(e,t,n){var i=n("+Vnd"),r=n("4+FC"),o=n("CQhY").encodeHTML,a=n("P0S0"),s=i.extend({type:"series.tree",layoutInfo:null,layoutMode:"box",getInitialData:function(e){var t={name:e.name,children:e.data},n=e.leaves||{},i=new a(n,this,this.ecModel),o=r.createTree(t,this,function(e){e.wrapMethod("getItemModel",function(e,t){var n=o.getNodeByDataIndex(t);return n.children.length&&n.isExpand||(e.parentModel=i),e})});var s=0;o.eachNode("preorder",function(e){e.depth>s&&(s=e.depth)});var l=e.expandAndCollapse&&e.initialTreeDepth>=0?e.initialTreeDepth:s;return o.root.eachNode("preorder",function(e){var t=e.hostTree.data.getRawDataItem(e.dataIndex);e.isExpand=t&&null!=t.collapsed?!t.collapsed:e.depth<=l}),o.data},getOrient:function(){var e=this.get("orient");return"horizontal"===e?e="LR":"vertical"===e&&(e="TB"),e},setZoom:function(e){this.option.zoom=e},setCenter:function(e){this.option.center=e},formatTooltip:function(e){for(var t=this.getData().tree,n=t.root.children[0],i=t.getNodeByDataIndex(e),r=i.getValue(),a=i.name;i&&i!==n;)a=i.parentNode.name+"."+a,i=i.parentNode;return o(a+(isNaN(r)||null==r?"":" : "+r))},defaultOption:{zlevel:0,z:2,coordinateSystem:"view",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderColor:"#c23531",borderWidth:1.5},label:{show:!0,color:"#555"},leaves:{label:{show:!0}},animationEasing:"linear",animationDuration:700,animationDurationUpdate:1e3}});e.exports=s},ycch:function(e,t,n){var i=n("oEo5");function r(e){for(var t=[];e;)(e=e.parentNode)&&t.push(e);return t.reverse()}t.retrieveTargetInfo=function(e,t,n){if(e&&i.indexOf(t,e.type)>=0){var r=n.getData().tree.root,o=e.targetNode;if("string"==typeof o&&(o=r.getNodeById(o)),o&&r.contains(o))return{node:o};var a=e.targetNodeId;if(null!=a&&(o=r.getNodeById(a)))return{node:o}}},t.getPathToRoot=r,t.aboveViewRoot=function(e,t){var n=r(e);return i.indexOf(n,t)>=0},t.wrapTreePathInfo=function(e,t){for(var n=[];e;){var i=e.dataIndex;n.push({name:e.name,dataIndex:i,value:t.getRawValue(i)}),e=e.parentNode}return n.reverse(),n}},ykdM:function(e,t,n){var i=n("YPjC");e.exports=function(e,t,n){return void 0===n?i(e,t,!1):i(e,n,!1!==t)}},yuiD:function(e,t,n){var i=n("Vw6a").retrieveRawValue;t.getDefaultLabel=function(e,t){var n=e.mapDimension("defaultedLabel",!0),r=n.length;if(1===r)return i(e,t,n[0]);if(r){for(var o=[],a=0;a<n.length;a++){var s=i(e,t,n[a]);o.push(s)}return o.join(" ")}}},yvNr:function(e,t,n){var i=n("oEo5"),r=n("EgZf"),o=function(e,t,n,i,o){r.call(this,e,t,n),this.type=i||"value",this.position=o||"bottom"};o.prototype={constructor:o,index:0,getAxesOnZeroOf:null,model:null,isHorizontal:function(){var e=this.position;return"top"===e||"bottom"===e},getGlobalExtent:function(e){var t=this.getExtent();return t[0]=this.toGlobalCoord(t[0]),t[1]=this.toGlobalCoord(t[1]),e&&t[0]>t[1]&&t.reverse(),t},getOtherAxis:function(){this.grid.getOtherAxis()},pointToData:function(e,t){return this.coordToData(this.toLocalCoord(e["x"===this.dim?0:1]),t)},toLocalCoord:null,toGlobalCoord:null},i.inherits(o,r);var a=o;e.exports=a},z3wO:function(e,t,n){e.exports=function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/",n(n.s=73)}({0:function(e,t,n){"use strict";function i(e,t,n,i,r,o,a,s){var l,c="function"==typeof e?e.options:e;if(t&&(c.render=t,c.staticRenderFns=n,c._compiled=!0),i&&(c.functional=!0),o&&(c._scopeId="data-v-"+o),a?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},c._ssrRegister=l):r&&(l=s?function(){r.call(this,this.$root.$options.shadowRoot)}:r),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(e,t){return l.call(t),u(e,t)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:e,options:c}}n.d(t,"a",function(){return i})},11:function(e,t){e.exports=n("BEcG")},21:function(e,t){e.exports=n("hUGL")},4:function(e,t){e.exports=n("mQu0")},73:function(e,t,n){"use strict";n.r(t);var i=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{class:["textarea"===e.type?"el-textarea":"el-input",e.inputSize?"el-input--"+e.inputSize:"",{"is-disabled":e.inputDisabled,"is-exceed":e.inputExceed,"el-input-group":e.$slots.prepend||e.$slots.append,"el-input-group--append":e.$slots.append,"el-input-group--prepend":e.$slots.prepend,"el-input--prefix":e.$slots.prefix||e.prefixIcon,"el-input--suffix":e.$slots.suffix||e.suffixIcon||e.clearable||e.showPassword}],on:{mouseenter:function(t){e.hovering=!0},mouseleave:function(t){e.hovering=!1}}},["textarea"!==e.type?[e.$slots.prepend?n("div",{staticClass:"el-input-group__prepend"},[e._t("prepend")],2):e._e(),"textarea"!==e.type?n("input",e._b({ref:"input",staticClass:"el-input__inner",attrs:{tabindex:e.tabindex,type:e.showPassword?e.passwordVisible?"text":"password":e.type,disabled:e.inputDisabled,readonly:e.readonly,autocomplete:e.autoComplete||e.autocomplete,"aria-label":e.label},on:{compositionstart:e.handleCompositionStart,compositionupdate:e.handleCompositionUpdate,compositionend:e.handleCompositionEnd,input:e.handleInput,focus:e.handleFocus,blur:e.handleBlur,change:e.handleChange}},"input",e.$attrs,!1)):e._e(),e.$slots.prefix||e.prefixIcon?n("span",{staticClass:"el-input__prefix"},[e._t("prefix"),e.prefixIcon?n("i",{staticClass:"el-input__icon",class:e.prefixIcon}):e._e()],2):e._e(),e.getSuffixVisible()?n("span",{staticClass:"el-input__suffix"},[n("span",{staticClass:"el-input__suffix-inner"},[e.showClear&&e.showPwdVisible&&e.isWordLimitVisible?e._e():[e._t("suffix"),e.suffixIcon?n("i",{staticClass:"el-input__icon",class:e.suffixIcon}):e._e()],e.showClear?n("i",{staticClass:"el-input__icon el-icon-circle-close el-input__clear",on:{mousedown:function(e){e.preventDefault()},click:e.clear}}):e._e(),e.showPwdVisible?n("i",{staticClass:"el-input__icon el-icon-view el-input__clear",on:{click:e.handlePasswordVisible}}):e._e(),e.isWordLimitVisible?n("span",{staticClass:"el-input__count"},[n("span",{staticClass:"el-input__count-inner"},[e._v("\n "+e._s(e.textLength)+"/"+e._s(e.upperLimit)+"\n ")])]):e._e()],2),e.validateState?n("i",{staticClass:"el-input__icon",class:["el-input__validateIcon",e.validateIcon]}):e._e()]):e._e(),e.$slots.append?n("div",{staticClass:"el-input-group__append"},[e._t("append")],2):e._e()]:n("textarea",e._b({ref:"textarea",staticClass:"el-textarea__inner",style:e.textareaStyle,attrs:{tabindex:e.tabindex,disabled:e.inputDisabled,readonly:e.readonly,autocomplete:e.autoComplete||e.autocomplete,"aria-label":e.label},on:{compositionstart:e.handleCompositionStart,compositionupdate:e.handleCompositionUpdate,compositionend:e.handleCompositionEnd,input:e.handleInput,focus:e.handleFocus,blur:e.handleBlur,change:e.handleChange}},"textarea",e.$attrs,!1)),e.isWordLimitVisible&&"textarea"===e.type?n("span",{staticClass:"el-input__count"},[e._v(e._s(e.textLength)+"/"+e._s(e.upperLimit))]):e._e()],2)};i._withStripped=!0;var r=n(4),o=n.n(r),a=n(11),s=n.n(a),l=void 0,c="\n height:0 !important;\n visibility:hidden !important;\n overflow:hidden !important;\n position:absolute !important;\n z-index:-1000 !important;\n top:0 !important;\n right:0 !important\n",u=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing"];function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;l||(l=document.createElement("textarea"),document.body.appendChild(l));var i=function(e){var t=window.getComputedStyle(e),n=t.getPropertyValue("box-sizing"),i=parseFloat(t.getPropertyValue("padding-bottom"))+parseFloat(t.getPropertyValue("padding-top")),r=parseFloat(t.getPropertyValue("border-bottom-width"))+parseFloat(t.getPropertyValue("border-top-width"));return{contextStyle:u.map(function(e){return e+":"+t.getPropertyValue(e)}).join(";"),paddingSize:i,borderSize:r,boxSizing:n}}(e),r=i.paddingSize,o=i.borderSize,a=i.boxSizing,s=i.contextStyle;l.setAttribute("style",s+";"+c),l.value=e.value||e.placeholder||"";var d=l.scrollHeight,h={};"border-box"===a?d+=o:"content-box"===a&&(d-=r),l.value="";var f=l.scrollHeight-r;if(null!==t){var p=f*t;"border-box"===a&&(p=p+r+o),d=Math.max(p,d),h.minHeight=p+"px"}if(null!==n){var m=f*n;"border-box"===a&&(m=m+r+o),d=Math.min(m,d)}return h.height=d+"px",l.parentNode&&l.parentNode.removeChild(l),l=null,h}var h=n(9),f=n.n(h),p=n(21),m={name:"ElInput",componentName:"ElInput",mixins:[o.a,s.a],inheritAttrs:!1,inject:{elForm:{default:""},elFormItem:{default:""}},data:function(){return{textareaCalcStyle:{},hovering:!1,focused:!1,isComposing:!1,passwordVisible:!1}},props:{value:[String,Number],size:String,resize:String,form:String,disabled:Boolean,readonly:Boolean,type:{type:String,default:"text"},autosize:{type:[Boolean,Object],default:!1},autocomplete:{type:String,default:"off"},autoComplete:{type:String,validator:function(e){return!0}},validateEvent:{type:Boolean,default:!0},suffixIcon:String,prefixIcon:String,label:String,clearable:{type:Boolean,default:!1},showPassword:{type:Boolean,default:!1},showWordLimit:{type:Boolean,default:!1},tabindex:String},computed:{_elFormItemSize:function(){return(this.elFormItem||{}).elFormItemSize},validateState:function(){return this.elFormItem?this.elFormItem.validateState:""},needStatusIcon:function(){return!!this.elForm&&this.elForm.statusIcon},validateIcon:function(){return{validating:"el-icon-loading",success:"el-icon-circle-check",error:"el-icon-circle-close"}[this.validateState]},textareaStyle:function(){return f()({},this.textareaCalcStyle,{resize:this.resize})},inputSize:function(){return this.size||this._elFormItemSize||(this.$ELEMENT||{}).size},inputDisabled:function(){return this.disabled||(this.elForm||{}).disabled},nativeInputValue:function(){return null===this.value||void 0===this.value?"":String(this.value)},showClear:function(){return this.clearable&&!this.inputDisabled&&!this.readonly&&this.nativeInputValue&&(this.focused||this.hovering)},showPwdVisible:function(){return this.showPassword&&!this.inputDisabled&&!this.readonly&&(!!this.nativeInputValue||this.focused)},isWordLimitVisible:function(){return this.showWordLimit&&this.$attrs.maxlength&&("text"===this.type||"textarea"===this.type)&&!this.inputDisabled&&!this.readonly&&!this.showPassword},upperLimit:function(){return this.$attrs.maxlength},textLength:function(){return"number"==typeof this.value?String(this.value).length:(this.value||"").length},inputExceed:function(){return this.isWordLimitVisible&&this.textLength>this.upperLimit}},watch:{value:function(e){this.$nextTick(this.resizeTextarea),this.validateEvent&&this.dispatch("ElFormItem","el.form.change",[e])},nativeInputValue:function(){this.setNativeInputValue()},type:function(){var e=this;this.$nextTick(function(){e.setNativeInputValue(),e.resizeTextarea(),e.updateIconOffset()})}},methods:{focus:function(){this.getInput().focus()},blur:function(){this.getInput().blur()},getMigratingConfig:function(){return{props:{icon:"icon is removed, use suffix-icon / prefix-icon instead.","on-icon-click":"on-icon-click is removed."},events:{click:"click is removed."}}},handleBlur:function(e){this.focused=!1,this.$emit("blur",e),this.validateEvent&&this.dispatch("ElFormItem","el.form.blur",[this.value])},select:function(){this.getInput().select()},resizeTextarea:function(){if(!this.$isServer){var e=this.autosize;if("textarea"===this.type)if(e){var t=e.minRows,n=e.maxRows;this.textareaCalcStyle=d(this.$refs.textarea,t,n)}else this.textareaCalcStyle={minHeight:d(this.$refs.textarea).minHeight}}},setNativeInputValue:function(){var e=this.getInput();e&&e.value!==this.nativeInputValue&&(e.value=this.nativeInputValue)},handleFocus:function(e){this.focused=!0,this.$emit("focus",e)},handleCompositionStart:function(){this.isComposing=!0},handleCompositionUpdate:function(e){var t=e.target.value,n=t[t.length-1]||"";this.isComposing=!Object(p.isKorean)(n)},handleCompositionEnd:function(e){this.isComposing&&(this.isComposing=!1,this.handleInput(e))},handleInput:function(e){this.isComposing||e.target.value!==this.nativeInputValue&&(this.$emit("input",e.target.value),this.$nextTick(this.setNativeInputValue))},handleChange:function(e){this.$emit("change",e.target.value)},calcIconOffset:function(e){var t=[].slice.call(this.$el.querySelectorAll(".el-input__"+e)||[]);if(t.length){for(var n=null,i=0;i<t.length;i++)if(t[i].parentNode===this.$el){n=t[i];break}if(n){var r={suffix:"append",prefix:"prepend"}[e];this.$slots[r]?n.style.transform="translateX("+("suffix"===e?"-":"")+this.$el.querySelector(".el-input-group__"+r).offsetWidth+"px)":n.removeAttribute("style")}}},updateIconOffset:function(){this.calcIconOffset("prefix"),this.calcIconOffset("suffix")},clear:function(){this.$emit("input",""),this.$emit("change",""),this.$emit("clear")},handlePasswordVisible:function(){var e=this;this.passwordVisible=!this.passwordVisible,this.$nextTick(function(){e.focus()})},getInput:function(){return this.$refs.input||this.$refs.textarea},getSuffixVisible:function(){return this.$slots.suffix||this.suffixIcon||this.showClear||this.showPassword||this.isWordLimitVisible||this.validateState&&this.needStatusIcon}},created:function(){this.$on("inputSelect",this.select)},mounted:function(){this.setNativeInputValue(),this.resizeTextarea(),this.updateIconOffset()},updated:function(){this.$nextTick(this.updateIconOffset)}},g=n(0),v=Object(g.a)(m,i,[],!1,null,null,null);v.options.__file="packages/input/src/input.vue";var y=v.exports;y.install=function(e){e.component(y.name,y)};t.default=y},9:function(e,t){e.exports=n("+Gpz")}})},z8PH:function(e,t,n){var i=n("oEo5"),r=n("SSBM"),o=n("Jjzi"),a=n("kN/v");function s(e,t,n){this._model=e}function l(e,t,n,i){var r=n.calendarModel,o=n.seriesModel,a=r?r.coordinateSystem:o?o.coordinateSystem:null;return a===this?a[e](i):null}s.prototype={constructor:s,type:"calendar",dimensions:["time","value"],getDimensionsInfo:function(){return[{name:"time",type:"time"},"value"]},getRangeInfo:function(){return this._rangeInfo},getModel:function(){return this._model},getRect:function(){return this._rect},getCellWidth:function(){return this._sw},getCellHeight:function(){return this._sh},getOrient:function(){return this._orient},getFirstDayOfWeek:function(){return this._firstDayOfWeek},getDateInfo:function(e){var t=(e=o.parseDate(e)).getFullYear(),n=e.getMonth()+1;n=n<10?"0"+n:n;var i=e.getDate();i=i<10?"0"+i:i;var r=e.getDay();return{y:t,m:n,d:i,day:r=Math.abs((r+7-this.getFirstDayOfWeek())%7),time:e.getTime(),formatedDate:t+"-"+n+"-"+i,date:e}},getNextNDay:function(e,t){return 0===(t=t||0)?this.getDateInfo(e):((e=new Date(this.getDateInfo(e).time)).setDate(e.getDate()+t),this.getDateInfo(e))},update:function(e,t){this._firstDayOfWeek=+this._model.getModel("dayLabel").get("firstDay"),this._orient=this._model.get("orient"),this._lineWidth=this._model.getModel("itemStyle").getItemStyle().lineWidth||0,this._rangeInfo=this._getRangeInfo(this._initRangeOption());var n=this._rangeInfo.weeks||1,o=["width","height"],a=this._model.get("cellSize").slice(),s=this._model.getBoxLayoutParams(),l="horizontal"===this._orient?[n,7]:[7,n];i.each([0,1],function(e){d(a,e)&&(s[o[e]]=a[e]*l[e])});var c={width:t.getWidth(),height:t.getHeight()},u=this._rect=r.getLayoutRect(s,c);function d(e,t){return null!=e[t]&&"auto"!==e[t]}i.each([0,1],function(e){d(a,e)||(a[e]=u[o[e]]/l[e])}),this._sw=a[0],this._sh=a[1]},dataToPoint:function(e,t){i.isArray(e)&&(e=e[0]),null==t&&(t=!0);var n=this.getDateInfo(e),r=this._rangeInfo,o=n.formatedDate;if(t&&!(n.time>=r.start.time&&n.time<r.end.time+864e5))return[NaN,NaN];var a=n.day,s=this._getRangeInfo([r.start.time,o]).nthWeek;return"vertical"===this._orient?[this._rect.x+a*this._sw+this._sw/2,this._rect.y+s*this._sh+this._sh/2]:[this._rect.x+s*this._sw+this._sw/2,this._rect.y+a*this._sh+this._sh/2]},pointToData:function(e){var t=this.pointToDate(e);return t&&t.time},dataToRect:function(e,t){var n=this.dataToPoint(e,t);return{contentShape:{x:n[0]-(this._sw-this._lineWidth)/2,y:n[1]-(this._sh-this._lineWidth)/2,width:this._sw-this._lineWidth,height:this._sh-this._lineWidth},center:n,tl:[n[0]-this._sw/2,n[1]-this._sh/2],tr:[n[0]+this._sw/2,n[1]-this._sh/2],br:[n[0]+this._sw/2,n[1]+this._sh/2],bl:[n[0]-this._sw/2,n[1]+this._sh/2]}},pointToDate:function(e){var t=Math.floor((e[0]-this._rect.x)/this._sw)+1,n=Math.floor((e[1]-this._rect.y)/this._sh)+1,i=this._rangeInfo.range;return"vertical"===this._orient?this._getDateByWeeksAndDay(n,t-1,i):this._getDateByWeeksAndDay(t,n-1,i)},convertToPixel:i.curry(l,"dataToPoint"),convertFromPixel:i.curry(l,"pointToData"),_initRangeOption:function(){var e=this._model.get("range"),t=e;if(i.isArray(t)&&1===t.length&&(t=t[0]),/^\d{4}$/.test(t)&&(e=[t+"-01-01",t+"-12-31"]),/^\d{4}[\/|-]\d{1,2}$/.test(t)){var n=this.getDateInfo(t),r=n.date;r.setMonth(r.getMonth()+1);var o=this.getNextNDay(r,-1);e=[n.formatedDate,o.formatedDate]}/^\d{4}[\/|-]\d{1,2}[\/|-]\d{1,2}$/.test(t)&&(e=[t,t]);var a=this._getRangeInfo(e);return a.start.time>a.end.time&&e.reverse(),e},_getRangeInfo:function(e){var t;(e=[this.getDateInfo(e[0]),this.getDateInfo(e[1])])[0].time>e[1].time&&(t=!0,e.reverse());var n=Math.floor(e[1].time/864e5)-Math.floor(e[0].time/864e5)+1,i=new Date(e[0].time),r=i.getDate(),o=e[1].date.getDate();i.setDate(r+n-1);var a=i.getDate();if(a!==o)for(var s=i.getTime()-e[1].time>0?1:-1;(a=i.getDate())!==o&&(i.getTime()-e[1].time)*s>0;)n-=s,i.setDate(a-s);var l=Math.floor((n+e[0].day+6)/7),c=t?1-l:l-1;return t&&e.reverse(),{range:[e[0].formatedDate,e[1].formatedDate],start:e[0],end:e[1],allDay:n,weeks:l,nthWeek:c,fweek:e[0].day,lweek:e[1].day}},_getDateByWeeksAndDay:function(e,t,n){var i=this._getRangeInfo(n);if(e>i.weeks||0===e&&t<i.fweek||e===i.weeks&&t>i.lweek)return!1;var r=7*(e-1)-i.fweek+t,o=new Date(i.start.time);return o.setDate(i.start.d+r),this.getDateInfo(o)}},s.dimensions=s.prototype.dimensions,s.getDimensionsInfo=s.prototype.getDimensionsInfo,s.create=function(e,t){var n=[];return e.eachComponent("calendar",function(i){var r=new s(i,e,t);n.push(r),i.coordinateSystem=r}),e.eachSeries(function(e){"calendar"===e.get("coordinateSystem")&&(e.coordinateSystem=n[e.get("calendarIndex")||0])}),n},a.register("calendar",s);var c=s;e.exports=c},zBii:function(e,t,n){e.exports=function(){var e=e||function(e,t){var n=Object.create||function(){function e(){}return function(t){var n;return e.prototype=t,n=new e,e.prototype=null,n}}(),i={},r=i.lib={},o=r.Base={extend:function(e){var t=n(this);return e&&t.mixIn(e),t.hasOwnProperty("init")&&this.init!==t.init||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},a=r.WordArray=o.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=void 0!=t?t:4*e.length},toString:function(e){return(e||l).stringify(this)},concat:function(e){var t=this.words,n=e.words,i=this.sigBytes,r=e.sigBytes;if(this.clamp(),i%4)for(var o=0;o<r;o++){var a=n[o>>>2]>>>24-o%4*8&255;t[i+o>>>2]|=a<<24-(i+o)%4*8}else for(var o=0;o<r;o+=4)t[i+o>>>2]=n[o>>>2];return this.sigBytes+=r,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=o.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n,i=[],r=function(t){var t=t,n=987654321,i=4294967295;return function(){var r=((n=36969*(65535&n)+(n>>16)&i)<<16)+(t=18e3*(65535&t)+(t>>16)&i)&i;return r/=4294967296,(r+=.5)*(e.random()>.5?1:-1)}},o=0;o<t;o+=4){var s=r(4294967296*(n||e.random()));n=987654071*s(),i.push(4294967296*s()|0)}return new a.init(i,t)}}),s=i.enc={},l=s.Hex={stringify:function(e){for(var t=e.words,n=e.sigBytes,i=[],r=0;r<n;r++){var o=t[r>>>2]>>>24-r%4*8&255;i.push((o>>>4).toString(16)),i.push((15&o).toString(16))}return i.join("")},parse:function(e){for(var t=e.length,n=[],i=0;i<t;i+=2)n[i>>>3]|=parseInt(e.substr(i,2),16)<<24-i%8*4;return new a.init(n,t/2)}},c=s.Latin1={stringify:function(e){for(var t=e.words,n=e.sigBytes,i=[],r=0;r<n;r++){var o=t[r>>>2]>>>24-r%4*8&255;i.push(String.fromCharCode(o))}return i.join("")},parse:function(e){for(var t=e.length,n=[],i=0;i<t;i++)n[i>>>2]|=(255&e.charCodeAt(i))<<24-i%4*8;return new a.init(n,t)}},u=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(c.stringify(e)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(e){return c.parse(unescape(encodeURIComponent(e)))}},d=r.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new a.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=u.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,i=n.words,r=n.sigBytes,o=this.blockSize,s=4*o,l=r/s,c=(l=t?e.ceil(l):e.max((0|l)-this._minBufferSize,0))*o,u=e.min(4*c,r);if(c){for(var d=0;d<c;d+=o)this._doProcessBlock(i,d);var h=i.splice(0,c);n.sigBytes-=u}return new a.init(h,u)},clone:function(){var e=o.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0}),h=(r.Hasher=d.extend({cfg:o.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){d.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){e&&this._append(e);var t=this._doFinalize();return t},blockSize:16,_createHelper:function(e){return function(t,n){return new e.init(n).finalize(t)}},_createHmacHelper:function(e){return function(t,n){return new h.HMAC.init(e,n).finalize(t)}}}),i.algo={});return i}(Math);return e}()},zCY1:function(e,t){var n=["itemStyle","borderColor"];e.exports=function(e,t){var i=e.get("color");e.eachRawSeriesByType("boxplot",function(t){var r=i[t.seriesIndex%i.length],o=t.getData();o.setVisual({legendSymbol:"roundRect",color:t.get(n)||r}),e.isSeriesFiltered(t)||o.each(function(e){var t=o.getItemModel(e);o.setItemVisual(e,{color:t.get(n,!0)})})})}},zYK1:function(e,t,n){n("IPcT").__DEV__;var i=n("oEo5"),r=i.each,o=i.createHashMap,a=n("ICLB"),s=n("6/iG"),l=n("Gz2F"),c=n("ie0D"),u={geoJSON:s,svg:l},d={load:function(e,t,n){var i,a=[],s=o(),l=o(),d=f(e);return r(d,function(o){var c=u[o.type].load(e,o,n);r(c.regions,function(e){var n=e.name;t&&t.hasOwnProperty(n)&&(e=e.cloneShallow(n=t[n])),a.push(e),s.set(n,e),l.set(n,e.center)});var d=c.boundingRect;d&&(i?i.union(d):i=d.clone())}),{regions:a,regionsMap:s,nameCoordMap:l,boundingRect:i||new c(0,0,0,0)}},makeGraphic:h("makeGraphic"),removeGraphic:h("removeGraphic")};function h(e){return function(t,n){var i=f(t),o=[];return r(i,function(i){var r=u[i.type][e];r&&o.push(r(t,i,n))}),o}}function f(e){return a.retrieveMap(e)||[]}e.exports=d},zYTh:function(e,t,n){var i=n("Q6Bq");i.registerAction({type:"axisAreaSelect",event:"axisAreaSelected"},function(e,t){t.eachComponent({mainType:"parallelAxis",query:e},function(t){t.axis.model.setActiveIntervals(e.intervals)})}),i.registerAction("parallelAxisExpand",function(e,t){t.eachComponent({mainType:"parallel",query:e},function(t){t.setAxisExpand(e)})})},zYjg:function(e,t,n){var i=n("oEo5"),r=n("8Bkq"),o=n("XTQn"),a=n("4uqo"),s=n("Wa83"),l=n("342z"),c=n("G+ZC"),u=n("vOhS");t.Image=u;var d=n("TmiR");t.Group=d;var h=n("ode/");t.Text=h;var f=n("a9RO");t.Circle=f;var p=n("o9iD");t.Sector=p;var m=n("oAve");t.Ring=m;var g=n("VOjM");t.Polygon=g;var v=n("k++z");t.Polyline=v;var y=n("7JZK");t.Rect=y;var b=n("tV39");t.Line=b;var _=n("JoY0");t.BezierCurve=_;var x=n("QI2D");t.Arc=x;var w=n("RA7y");t.CompoundPath=w;var S=n("I1OY");t.LinearGradient=S;var C=n("GS3z");t.RadialGradient=C;var k=n("ie0D");t.BoundingRect=k;var M=n("o2YK");t.IncrementalDisplayable=M;var O=n("afA4"),D=Math.max,T=Math.min,A={},I=1,E="emphasis",P="normal",L=1,N={},B={};function z(e,t){B[e]=t}function $(e,t,n,i){var o=r.createFromString(e,t);return n&&("center"===i&&(n=j(n,o.getBoundingRect())),F(o,n)),o}function j(e,t){var n,i=t.width/t.height,r=e.height*i;return n=r<=e.width?e.height:(r=e.width)/i,{x:e.x+e.width/2-r/2,y:e.y+e.height/2-n/2,width:r,height:n}}var R=r.mergePath;function F(e,t){if(e.applyTransform){var n=e.getBoundingRect().calculateTransform(t);e.applyTransform(n)}}var V=O.subPixelOptimize;function H(e){return null!=e&&"none"!==e}var W=i.createHashMap(),G=0;function q(e){var t=e.__hoverStl;if(t&&!e.__highlighted){var n=e.__zr,i=e.useHoverLayer&&n&&"canvas"===n.painter.type;if(e.__highlighted=i?"layer":"plain",!(e.isGroup||!n&&e.useHoverLayer)){var r=e,o=e.style;i&&(o=(r=n.addHover(e)).style),le(o),i||function(e){if(e.__hoverStlDirty){e.__hoverStlDirty=!1;var t=e.__hoverStl;if(t){var n=e.__cachedNormalStl={};e.__cachedNormalZ2=e.z2;var i=e.style;for(var r in t)null!=t[r]&&(n[r]=i[r]);n.fill=i.fill,n.stroke=i.stroke}else e.__cachedNormalStl=e.__cachedNormalZ2=null}}(r),o.extendFrom(t),U(o,t,"fill"),U(o,t,"stroke"),se(o),i||(e.dirty(!1),e.z2+=I)}}}function U(e,t,n){!H(t[n])&&H(e[n])&&(e[n]=function(e){if("string"!=typeof e)return e;var t=W.get(e);return t||(t=o.lift(e,-.1),G<1e4&&(W.set(e,t),G++)),t}(e[n]))}function Y(e){var t=e.__highlighted;if(t&&(e.__highlighted=!1,!e.isGroup))if("layer"===t)e.__zr&&e.__zr.removeHover(e);else{var n=e.style,i=e.__cachedNormalStl;i&&(le(n),e.setStyle(i),se(n));var r=e.__cachedNormalZ2;null!=r&&e.z2-r===I&&(e.z2=r)}}function K(e,t,n){var i,r=P,o=P;e.__highlighted&&(r=E,i=!0),t(e,n),e.__highlighted&&(o=E,i=!0),e.isGroup&&e.traverse(function(e){!e.isGroup&&t(e,n)}),i&&e.__highDownOnUpdate&&e.__highDownOnUpdate(r,o)}function X(e,t){t=e.__hoverStl=!1!==t&&(e.hoverStyle||t||{}),e.__hoverStlDirty=!0,e.__highlighted&&(e.__cachedNormalStl=null,Y(e),q(e))}function Z(e){!te(this,e)&&!this.__highByOuter&&K(this,q)}function Q(e){!te(this,e)&&!this.__highByOuter&&K(this,Y)}function J(e){this.__highByOuter|=1<<(e||0),K(this,q)}function ee(e){!(this.__highByOuter&=~(1<<(e||0)))&&K(this,Y)}function te(e,t){return e.__highDownSilentOnTouch&&t.zrByTouch}function ne(e,t){var n=!1===t;if(e.__highDownSilentOnTouch=e.highDownSilentOnTouch,e.__highDownOnUpdate=e.highDownOnUpdate,!n||e.__highDownDispatcher){var i=n?"off":"on";e[i]("mouseover",Z)[i]("mouseout",Q),e[i]("emphasis",J)[i]("normal",ee),e.__highByOuter=e.__highByOuter||0,e.__highDownDispatcher=!n}}function ie(e,t,n,r,o){return re(e,t,r,o),n&&i.extend(e,n),e}function re(e,t,n,r){if((n=n||A).isRectText){var o;n.getTextPosition?o=n.getTextPosition(t,r):"outside"===(o=t.getShallow("position")||(r?null:"inside"))&&(o="top"),e.textPosition=o,e.textOffset=t.getShallow("offset");var a=t.getShallow("rotate");null!=a&&(a*=Math.PI/180),e.textRotation=a,e.textDistance=i.retrieve2(t.getShallow("distance"),r?null:5)}var s,l=t.ecModel,c=l&&l.option.textStyle,u=function(e){var t;for(;e&&e!==e.ecModel;){var n=(e.option||A).rich;if(n)for(var i in t=t||{},n)n.hasOwnProperty(i)&&(t[i]=1);e=e.parentModel}return t}(t);if(u)for(var d in s={},u)if(u.hasOwnProperty(d)){var h=t.getModel(["rich",d]);oe(s[d]={},h,c,n,r)}return e.rich=s,oe(e,t,c,n,r,!0),n.forceRich&&!n.textStyle&&(n.textStyle={}),e}function oe(e,t,n,r,o,a){n=!o&&n||A,e.textFill=ae(t.getShallow("color"),r)||n.color,e.textStroke=ae(t.getShallow("textBorderColor"),r)||n.textBorderColor,e.textStrokeWidth=i.retrieve2(t.getShallow("textBorderWidth"),n.textBorderWidth),o||(a&&(e.insideRollbackOpt=r,se(e)),null==e.textFill&&(e.textFill=r.autoColor)),e.fontStyle=t.getShallow("fontStyle")||n.fontStyle,e.fontWeight=t.getShallow("fontWeight")||n.fontWeight,e.fontSize=t.getShallow("fontSize")||n.fontSize,e.fontFamily=t.getShallow("fontFamily")||n.fontFamily,e.textAlign=t.getShallow("align"),e.textVerticalAlign=t.getShallow("verticalAlign")||t.getShallow("baseline"),e.textLineHeight=t.getShallow("lineHeight"),e.textWidth=t.getShallow("width"),e.textHeight=t.getShallow("height"),e.textTag=t.getShallow("tag"),a&&r.disableBox||(e.textBackgroundColor=ae(t.getShallow("backgroundColor"),r),e.textPadding=t.getShallow("padding"),e.textBorderColor=ae(t.getShallow("borderColor"),r),e.textBorderWidth=t.getShallow("borderWidth"),e.textBorderRadius=t.getShallow("borderRadius"),e.textBoxShadowColor=t.getShallow("shadowColor"),e.textBoxShadowBlur=t.getShallow("shadowBlur"),e.textBoxShadowOffsetX=t.getShallow("shadowOffsetX"),e.textBoxShadowOffsetY=t.getShallow("shadowOffsetY")),e.textShadowColor=t.getShallow("textShadowColor")||n.textShadowColor,e.textShadowBlur=t.getShallow("textShadowBlur")||n.textShadowBlur,e.textShadowOffsetX=t.getShallow("textShadowOffsetX")||n.textShadowOffsetX,e.textShadowOffsetY=t.getShallow("textShadowOffsetY")||n.textShadowOffsetY}function ae(e,t){return"auto"!==e?e:t&&t.autoColor?t.autoColor:null}function se(e){var t,n=e.textPosition,i=e.insideRollbackOpt;if(i&&null==e.textFill){var r=i.autoColor,o=i.isRectText,a=i.useInsideStyle,s=!1!==a&&(!0===a||o&&n&&"string"==typeof n&&n.indexOf("inside")>=0),l=!s&&null!=r;(s||l)&&(t={textFill:e.textFill,textStroke:e.textStroke,textStrokeWidth:e.textStrokeWidth}),s&&(e.textFill="#fff",null==e.textStroke&&(e.textStroke=r,null==e.textStrokeWidth&&(e.textStrokeWidth=2))),l&&(e.textFill=r)}e.insideRollback=t}function le(e){var t=e.insideRollback;t&&(e.textFill=t.textFill,e.textStroke=t.textStroke,e.textStrokeWidth=t.textStrokeWidth,e.insideRollback=null)}function ce(e,t,n,i,r,o){if("function"==typeof r&&(o=r,r=null),i&&i.isAnimationEnabled()){var a=e?"Update":"",s=i.getShallow("animationDuration"+a),l=i.getShallow("animationEasing"+a),c=i.getShallow("animationDelay"+a);"function"==typeof c&&(c=c(r,i.getAnimationDelayParams?i.getAnimationDelayParams(t,r):null)),"function"==typeof s&&(s=s(r)),s>0?t.animateTo(n,s,c||0,l,o,!!o):(t.stopAnimation(),t.attr(n),o&&o())}else t.stopAnimation(),t.attr(n),o&&o()}function ue(e,t,n,i,r){ce(!0,e,t,n,i,r)}function de(e,t,n){return t&&!i.isArrayLike(t)&&(t=c.getLocalTransform(t)),n&&(t=a.invert([],t)),s.applyTransform([],e,t)}function he(e,t,n,i,r,o,a,s){var l=n-e,c=i-t,u=a-r,d=s-o,h=fe(u,d,l,c);if(function(e){return e<=1e-6&&e>=-1e-6}(h))return!1;var f=e-r,p=t-o,m=fe(f,p,l,c)/h;if(m<0||m>1)return!1;var g=fe(f,p,u,d)/h;return!(g<0||g>1)}function fe(e,t,n,i){return e*i-n*t}z("circle",f),z("sector",p),z("ring",m),z("polygon",g),z("polyline",v),z("rect",y),z("line",b),z("bezierCurve",_),z("arc",x),t.Z2_EMPHASIS_LIFT=I,t.CACHED_LABEL_STYLE_PROPERTIES={color:"textFill",textBorderColor:"textStroke",textBorderWidth:"textStrokeWidth"},t.extendShape=function(e){return l.extend(e)},t.extendPath=function(e,t){return r.extendFromString(e,t)},t.registerShape=z,t.getShapeClass=function(e){if(B.hasOwnProperty(e))return B[e]},t.makePath=$,t.makeImage=function(e,t,n){var i=new u({style:{image:e,x:t.x,y:t.y,width:t.width,height:t.height},onload:function(e){if("center"===n){var r={width:e.width,height:e.height};i.setStyle(j(t,r))}}});return i},t.mergePath=R,t.resizePath=F,t.subPixelOptimizeLine=function(e){return O.subPixelOptimizeLine(e.shape,e.shape,e.style),e},t.subPixelOptimizeRect=function(e){return O.subPixelOptimizeRect(e.shape,e.shape,e.style),e},t.subPixelOptimize=V,t.setElementHoverStyle=X,t.setHoverStyle=function(e,t){ne(e,!0),K(e,X,t)},t.setAsHighDownDispatcher=ne,t.isHighDownDispatcher=function(e){return!(!e||!e.__highDownDispatcher)},t.getHighlightDigit=function(e){var t=N[e];return null==t&&L<=32&&(t=N[e]=L++),t},t.setLabelStyle=function(e,t,n,r,o,a,s){var l,c=(o=o||A).labelFetcher,u=o.labelDataIndex,d=o.labelDimIndex,h=o.labelProp,f=n.getShallow("show"),p=r.getShallow("show");(f||p)&&(c&&(l=c.getFormattedLabel(u,"normal",null,d,h)),null==l&&(l=i.isFunction(o.defaultText)?o.defaultText(u,o):o.defaultText));var m=f?l:null,g=p?i.retrieve2(c?c.getFormattedLabel(u,"emphasis",null,d,h):null,l):null;null==m&&null==g||(ie(e,n,a,o),ie(t,r,s,o,!0)),e.text=m,t.text=g},t.modifyLabelStyle=function(e,t,n){var r=e.style;t&&(le(r),e.setStyle(t),se(r)),r=e.__hoverStl,n&&r&&(le(r),i.extend(r,n),se(r))},t.setTextStyle=ie,t.setText=function(e,t,n){var i,r={isRectText:!0};!1===n?i=!0:r.autoColor=n,re(e,t,r,i)},t.getFont=function(e,t){var n=t&&t.getModel("textStyle");return i.trim([e.fontStyle||n&&n.getShallow("fontStyle")||"",e.fontWeight||n&&n.getShallow("fontWeight")||"",(e.fontSize||n&&n.getShallow("fontSize")||12)+"px",e.fontFamily||n&&n.getShallow("fontFamily")||"sans-serif"].join(" "))},t.updateProps=ue,t.initProps=function(e,t,n,i,r){ce(!1,e,t,n,i,r)},t.getTransform=function(e,t){for(var n=a.identity([]);e&&e!==t;)a.mul(n,e.getLocalTransform(),n),e=e.parent;return n},t.applyTransform=de,t.transformDirection=function(e,t,n){var i=0===t[4]||0===t[5]||0===t[0]?1:Math.abs(2*t[4]/t[0]),r=0===t[4]||0===t[5]||0===t[2]?1:Math.abs(2*t[4]/t[2]),o=["left"===e?-i:"right"===e?i:0,"top"===e?-r:"bottom"===e?r:0];return o=de(o,t,n),Math.abs(o[0])>Math.abs(o[1])?o[0]>0?"right":"left":o[1]>0?"bottom":"top"},t.groupTransition=function(e,t,n,r){if(e&&t){var o=function(e){var t={};return e.traverse(function(e){!e.isGroup&&e.anid&&(t[e.anid]=e)}),t}(e);t.traverse(function(e){if(!e.isGroup&&e.anid){var t=o[e.anid];if(t){var i=a(e);e.attr(a(t)),ue(e,i,n,e.dataIndex)}}})}function a(e){var t={position:s.clone(e.position),rotation:e.rotation};return e.shape&&(t.shape=i.extend({},e.shape)),t}},t.clipPointsByRect=function(e,t){return i.map(e,function(e){var n=e[0];n=D(n,t.x),n=T(n,t.x+t.width);var i=e[1];return i=D(i,t.y),[n,i=T(i,t.y+t.height)]})},t.clipRectByRect=function(e,t){var n=D(e.x,t.x),i=T(e.x+e.width,t.x+t.width),r=D(e.y,t.y),o=T(e.y+e.height,t.y+t.height);if(i>=n&&o>=r)return{x:n,y:r,width:i-n,height:o-r}},t.createIcon=function(e,t,n){var r=(t=i.extend({rectHover:!0},t)).style={strokeNoScale:!0};if(n=n||{x:-1,y:-1,width:2,height:2},e)return 0===e.indexOf("image://")?(r.image=e.slice(8),i.defaults(r,n),new u(t)):$(e.replace("path://",""),t,n,"center")},t.linePolygonIntersect=function(e,t,n,i,r){for(var o=0,a=r[r.length-1];o<r.length;o++){var s=r[o];if(he(e,t,n,i,s[0],s[1],a[0],a[1]))return!0;a=s}},t.lineLineIntersect=he},zfxY:function(e,t,n){var i="\0_ec_interaction_mutex";function r(e){return e[i]||(e[i]={})}n("Q6Bq").registerAction({type:"takeGlobalCursor",event:"globalCursorTaken",update:"update"},function(){}),t.take=function(e,t,n){r(e)[t]=n},t.release=function(e,t,n){var i=r(e);i[t]===n&&(i[t]=null)},t.isTaken=function(e,t){return!!r(e)[t]}},zpmP:function(e,t){var n=e.exports={version:"2.6.12"};"number"==typeof __e&&(__e=n)},"zw+m":function(e,t,n){var i=n("oEo5"),r=n("EgZf"),o=function(e,t,n,i,o){r.call(this,e,t,n),this.type=i||"value",this.axisIndex=o};o.prototype={constructor:o,model:null,isHorizontal:function(){return"horizontal"!==this.coordinateSystem.getModel().get("layout")}},i.inherits(o,r);var a=o;e.exports=a}}]); \ No newline at end of file + */function i(e,t){0}function r(e){return Object.prototype.toString.call(e).indexOf("Error")>-1}var o={name:"router-view",functional:!0,props:{name:{type:String,default:"default"}},render:function(e,t){var n=t.props,i=t.children,r=t.parent,o=t.data;o.routerView=!0;for(var a=r.$createElement,s=n.name,l=r.$route,c=r._routerViewCache||(r._routerViewCache={}),u=0,d=!1;r&&r._routerRoot!==r;)r.$vnode&&r.$vnode.data.routerView&&u++,r._inactive&&(d=!0),r=r.$parent;if(o.routerViewDepth=u,d)return a(c[s],o,i);var h=l.matched[u];if(!h)return c[s]=null,a();var f=c[s]=h.components[s];o.registerRouteInstance=function(e,t){var n=h.instances[s];(t&&n!==e||!t&&n===e)&&(h.instances[s]=t)},(o.hook||(o.hook={})).prepatch=function(e,t){h.instances[s]=t.componentInstance};var p=o.props=function(e,t){switch(typeof t){case"undefined":return;case"object":return t;case"function":return t(e);case"boolean":return t?e.params:void 0;default:0}}(l,h.props&&h.props[s]);if(p){p=o.props=function(e,t){for(var n in t)e[n]=t[n];return e}({},p);var m=o.attrs=o.attrs||{};for(var g in p)f.props&&g in f.props||(m[g]=p[g],delete p[g])}return a(f,o,i)}};var a=/[!'()*]/g,s=function(e){return"%"+e.charCodeAt(0).toString(16)},l=/%2C/g,c=function(e){return encodeURIComponent(e).replace(a,s).replace(l,",")},u=decodeURIComponent;function d(e){var t={};return(e=e.trim().replace(/^(\?|#|&)/,""))?(e.split("&").forEach(function(e){var n=e.replace(/\+/g," ").split("="),i=u(n.shift()),r=n.length>0?u(n.join("=")):null;void 0===t[i]?t[i]=r:Array.isArray(t[i])?t[i].push(r):t[i]=[t[i],r]}),t):t}function h(e){var t=e?Object.keys(e).map(function(t){var n=e[t];if(void 0===n)return"";if(null===n)return c(t);if(Array.isArray(n)){var i=[];return n.forEach(function(e){void 0!==e&&(null===e?i.push(c(t)):i.push(c(t)+"="+c(e)))}),i.join("&")}return c(t)+"="+c(n)}).filter(function(e){return e.length>0}).join("&"):null;return t?"?"+t:""}var f=/\/?$/;function p(e,t,n,i){var r=i&&i.options.stringifyQuery,o=t.query||{};try{o=m(o)}catch(e){}var a={name:t.name||e&&e.name,meta:e&&e.meta||{},path:t.path||"/",hash:t.hash||"",query:o,params:t.params||{},fullPath:v(t,r),matched:e?function(e){var t=[];for(;e;)t.unshift(e),e=e.parent;return t}(e):[]};return n&&(a.redirectedFrom=v(n,r)),Object.freeze(a)}function m(e){if(Array.isArray(e))return e.map(m);if(e&&"object"==typeof e){var t={};for(var n in e)t[n]=m(e[n]);return t}return e}var g=p(null,{path:"/"});function v(e,t){var n=e.path,i=e.query;void 0===i&&(i={});var r=e.hash;return void 0===r&&(r=""),(n||"/")+(t||h)(i)+r}function y(e,t){return t===g?e===t:!!t&&(e.path&&t.path?e.path.replace(f,"")===t.path.replace(f,"")&&e.hash===t.hash&&b(e.query,t.query):!(!e.name||!t.name)&&(e.name===t.name&&e.hash===t.hash&&b(e.query,t.query)&&b(e.params,t.params)))}function b(e,t){if(void 0===e&&(e={}),void 0===t&&(t={}),!e||!t)return e===t;var n=Object.keys(e),i=Object.keys(t);return n.length===i.length&&n.every(function(n){var i=e[n],r=t[n];return"object"==typeof i&&"object"==typeof r?b(i,r):String(i)===String(r)})}var _,x=[String,Object],w=[String,Array],S={name:"router-link",props:{to:{type:x,required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,event:{type:w,default:"click"}},render:function(e){var t=this,n=this.$router,i=this.$route,r=n.resolve(this.to,i,this.append),o=r.location,a=r.route,s=r.href,l={},c=n.options.linkActiveClass,u=n.options.linkExactActiveClass,d=null==c?"router-link-active":c,h=null==u?"router-link-exact-active":u,m=null==this.activeClass?d:this.activeClass,g=null==this.exactActiveClass?h:this.exactActiveClass,v=o.path?p(null,o,null,n):a;l[g]=y(i,v),l[m]=this.exact?l[g]:function(e,t){return 0===e.path.replace(f,"/").indexOf(t.path.replace(f,"/"))&&(!t.hash||e.hash===t.hash)&&function(e,t){for(var n in t)if(!(n in e))return!1;return!0}(e.query,t.query)}(i,v);var b=function(e){C(e)&&(t.replace?n.replace(o):n.push(o))},x={click:C};Array.isArray(this.event)?this.event.forEach(function(e){x[e]=b}):x[this.event]=b;var w={class:l};if("a"===this.tag)w.on=x,w.attrs={href:s};else{var S=function e(t){if(t)for(var n,i=0;i<t.length;i++){if("a"===(n=t[i]).tag)return n;if(n.children&&(n=e(n.children)))return n}}(this.$slots.default);if(S){S.isStatic=!1;var k=_.util.extend;(S.data=k({},S.data)).on=x,(S.data.attrs=k({},S.data.attrs)).href=s}else w.on=x}return e(this.tag,w,this.$slots.default)}};function C(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey||e.defaultPrevented||void 0!==e.button&&0!==e.button)){if(e.currentTarget&&e.currentTarget.getAttribute){var t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function k(e){if(!k.installed||_!==e){k.installed=!0,_=e;var t=function(e){return void 0!==e},n=function(e,n){var i=e.$options._parentVnode;t(i)&&t(i=i.data)&&t(i=i.registerRouteInstance)&&i(e,n)};e.mixin({beforeCreate:function(){t(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,n(this,this)},destroyed:function(){n(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("router-view",o),e.component("router-link",S);var i=e.config.optionMergeStrategies;i.beforeRouteEnter=i.beforeRouteLeave=i.beforeRouteUpdate=i.created}}var M="undefined"!=typeof window;function O(e,t,n){var i=e.charAt(0);if("/"===i)return e;if("?"===i||"#"===i)return t+e;var r=t.split("/");n&&r[r.length-1]||r.pop();for(var o=e.replace(/^\//,"").split("/"),a=0;a<o.length;a++){var s=o[a];".."===s?r.pop():"."!==s&&r.push(s)}return""!==r[0]&&r.unshift(""),r.join("/")}function D(e){return e.replace(/\/\//g,"/")}var T=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)},A=G,I=B,E=function(e,t){return j(B(e,t))},P=j,L=W,N=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function B(e,t){for(var n,i=[],r=0,o=0,a="",s=t&&t.delimiter||"/";null!=(n=N.exec(e));){var l=n[0],c=n[1],u=n.index;if(a+=e.slice(o,u),o=u+l.length,c)a+=c[1];else{var d=e[o],h=n[2],f=n[3],p=n[4],m=n[5],g=n[6],v=n[7];a&&(i.push(a),a="");var y=null!=h&&null!=d&&d!==h,b="+"===g||"*"===g,_="?"===g||"*"===g,x=n[2]||s,w=p||m;i.push({name:f||r++,prefix:h||"",delimiter:x,optional:_,repeat:b,partial:y,asterisk:!!v,pattern:w?F(w):v?".*":"[^"+R(x)+"]+?"})}}return o<e.length&&(a+=e.substr(o)),a&&i.push(a),i}function z(e){return encodeURI(e).replace(/[\/?#]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}function $(e){return encodeURI(e).replace(/[?#]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}function j(e){for(var t=new Array(e.length),n=0;n<e.length;n++)"object"==typeof e[n]&&(t[n]=new RegExp("^(?:"+e[n].pattern+")$"));return function(n,i){for(var r="",o=n||{},a=(i||{}).pretty?z:encodeURIComponent,s=0;s<e.length;s++){var l=e[s];if("string"!=typeof l){var c,u=o[l.name];if(null==u){if(l.optional){l.partial&&(r+=l.prefix);continue}throw new TypeError('Expected "'+l.name+'" to be defined')}if(T(u)){if(!l.repeat)throw new TypeError('Expected "'+l.name+'" to not repeat, but received `'+JSON.stringify(u)+"`");if(0===u.length){if(l.optional)continue;throw new TypeError('Expected "'+l.name+'" to not be empty')}for(var d=0;d<u.length;d++){if(c=a(u[d]),!t[s].test(c))throw new TypeError('Expected all "'+l.name+'" to match "'+l.pattern+'", but received `'+JSON.stringify(c)+"`");r+=(0===d?l.prefix:l.delimiter)+c}}else{if(c=l.asterisk?$(u):a(u),!t[s].test(c))throw new TypeError('Expected "'+l.name+'" to match "'+l.pattern+'", but received "'+c+'"');r+=l.prefix+c}}else r+=l}return r}}function R(e){return e.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function F(e){return e.replace(/([=!:$\/()])/g,"\\$1")}function V(e,t){return e.keys=t,e}function H(e){return e.sensitive?"":"i"}function W(e,t,n){T(t)||(n=t||n,t=[]);for(var i=(n=n||{}).strict,r=!1!==n.end,o="",a=0;a<e.length;a++){var s=e[a];if("string"==typeof s)o+=R(s);else{var l=R(s.prefix),c="(?:"+s.pattern+")";t.push(s),s.repeat&&(c+="(?:"+l+c+")*"),o+=c=s.optional?s.partial?l+"("+c+")?":"(?:"+l+"("+c+"))?":l+"("+c+")"}}var u=R(n.delimiter||"/"),d=o.slice(-u.length)===u;return i||(o=(d?o.slice(0,-u.length):o)+"(?:"+u+"(?=$))?"),o+=r?"$":i&&d?"":"(?="+u+"|$)",V(new RegExp("^"+o,H(n)),t)}function G(e,t,n){return T(t)||(n=t||n,t=[]),n=n||{},e instanceof RegExp?function(e,t){var n=e.source.match(/\((?!\?)/g);if(n)for(var i=0;i<n.length;i++)t.push({name:i,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,asterisk:!1,pattern:null});return V(e,t)}(e,t):T(e)?function(e,t,n){for(var i=[],r=0;r<e.length;r++)i.push(G(e[r],t,n).source);return V(new RegExp("(?:"+i.join("|")+")",H(n)),t)}(e,t,n):function(e,t,n){return W(B(e,n),t,n)}(e,t,n)}A.parse=I,A.compile=E,A.tokensToFunction=P,A.tokensToRegExp=L;var q=Object.create(null);function U(e,t,n){try{return(q[e]||(q[e]=A.compile(e)))(t||{},{pretty:!0})}catch(e){return""}}function Y(e,t,n,i){var r=t||[],o=n||Object.create(null),a=i||Object.create(null);e.forEach(function(e){!function e(t,n,i,r,o,a){var s=r.path;var l=r.name;0;var c=r.pathToRegexpOptions||{};var u=function(e,t,n){n||(e=e.replace(/\/$/,""));if("/"===e[0])return e;if(null==t)return e;return D(t.path+"/"+e)}(s,o,c.strict);"boolean"==typeof r.caseSensitive&&(c.sensitive=r.caseSensitive);var d={path:u,regex:function(e,t){var n=A(e,[],t);0;return n}(u,c),components:r.components||{default:r.component},instances:{},name:l,parent:o,matchAs:a,redirect:r.redirect,beforeEnter:r.beforeEnter,meta:r.meta||{},props:null==r.props?{}:r.components?r.props:{default:r.props}};r.children&&r.children.forEach(function(r){var o=a?D(a+"/"+r.path):void 0;e(t,n,i,r,d,o)});if(void 0!==r.alias){var h=Array.isArray(r.alias)?r.alias:[r.alias];h.forEach(function(a){var s={path:a,children:r.children};e(t,n,i,s,o,d.path||"/")})}n[d.path]||(t.push(d.path),n[d.path]=d);l&&(i[l]||(i[l]=d))}(r,o,a,e)});for(var s=0,l=r.length;s<l;s++)"*"===r[s]&&(r.push(r.splice(s,1)[0]),l--,s--);return{pathList:r,pathMap:o,nameMap:a}}function K(e,t,n,i){var r="string"==typeof e?{path:e}:e;if(r.name||r._normalized)return r;if(!r.path&&r.params&&t){(r=X({},r))._normalized=!0;var o=X(X({},t.params),r.params);if(t.name)r.name=t.name,r.params=o;else if(t.matched.length){var a=t.matched[t.matched.length-1].path;r.path=U(a,o,t.path)}else 0;return r}var s=function(e){var t="",n="",i=e.indexOf("#");i>=0&&(t=e.slice(i),e=e.slice(0,i));var r=e.indexOf("?");return r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),{path:e,query:n,hash:t}}(r.path||""),l=t&&t.path||"/",c=s.path?O(s.path,l,n||r.append):l,u=function(e,t,n){void 0===t&&(t={});var i,r=n||d;try{i=r(e||"")}catch(e){i={}}for(var o in t)i[o]=t[o];return i}(s.query,r.query,i&&i.options.parseQuery),h=r.hash||s.hash;return h&&"#"!==h.charAt(0)&&(h="#"+h),{_normalized:!0,path:c,query:u,hash:h}}function X(e,t){for(var n in t)e[n]=t[n];return e}function Z(e,t){var n=Y(e),i=n.pathList,r=n.pathMap,o=n.nameMap;function a(e,n,a){var s=K(e,n,!1,t),c=s.name;if(c){var u=o[c];if(!u)return l(null,s);var d=u.regex.keys.filter(function(e){return!e.optional}).map(function(e){return e.name});if("object"!=typeof s.params&&(s.params={}),n&&"object"==typeof n.params)for(var h in n.params)!(h in s.params)&&d.indexOf(h)>-1&&(s.params[h]=n.params[h]);if(u)return s.path=U(u.path,s.params),l(u,s,a)}else if(s.path){s.params={};for(var f=0;f<i.length;f++){var p=i[f],m=r[p];if(Q(m.regex,s.path,s.params))return l(m,s,a)}}return l(null,s)}function s(e,n){var i=e.redirect,r="function"==typeof i?i(p(e,n,null,t)):i;if("string"==typeof r&&(r={path:r}),!r||"object"!=typeof r)return l(null,n);var s=r,c=s.name,u=s.path,d=n.query,h=n.hash,f=n.params;if(d=s.hasOwnProperty("query")?s.query:d,h=s.hasOwnProperty("hash")?s.hash:h,f=s.hasOwnProperty("params")?s.params:f,c){o[c];return a({_normalized:!0,name:c,query:d,hash:h,params:f},void 0,n)}if(u){var m=function(e,t){return O(e,t.parent?t.parent.path:"/",!0)}(u,e);return a({_normalized:!0,path:U(m,f),query:d,hash:h},void 0,n)}return l(null,n)}function l(e,n,i){return e&&e.redirect?s(e,i||n):e&&e.matchAs?function(e,t,n){var i=a({_normalized:!0,path:U(n,t.params)});if(i){var r=i.matched,o=r[r.length-1];return t.params=i.params,l(o,t)}return l(null,t)}(0,n,e.matchAs):p(e,n,i,t)}return{match:a,addRoutes:function(e){Y(e,i,r,o)}}}function Q(e,t,n){var i=t.match(e);if(!i)return!1;if(!n)return!0;for(var r=1,o=i.length;r<o;++r){var a=e.keys[r-1],s="string"==typeof i[r]?decodeURIComponent(i[r]):i[r];a&&(n[a.name]=s)}return!0}var J=Object.create(null);function ee(){window.history.replaceState({key:de()},""),window.addEventListener("popstate",function(e){ne(),e.state&&e.state.key&&function(e){ce=e}(e.state.key)})}function te(e,t,n,i){if(e.app){var r=e.options.scrollBehavior;r&&e.app.$nextTick(function(){var e=function(){var e=de();if(e)return J[e]}(),o=r(t,n,i?e:null);o&&("function"==typeof o.then?o.then(function(t){ae(t,e)}).catch(function(e){0}):ae(o,e))})}}function ne(){var e=de();e&&(J[e]={x:window.pageXOffset,y:window.pageYOffset})}function ie(e){return oe(e.x)||oe(e.y)}function re(e){return{x:oe(e.x)?e.x:window.pageXOffset,y:oe(e.y)?e.y:window.pageYOffset}}function oe(e){return"number"==typeof e}function ae(e,t){var n="object"==typeof e;if(n&&"string"==typeof e.selector){var i=document.querySelector(e.selector);if(i){var r=e.offset&&"object"==typeof e.offset?e.offset:{};t=function(e,t){var n=document.documentElement.getBoundingClientRect(),i=e.getBoundingClientRect();return{x:i.left-n.left-t.x,y:i.top-n.top-t.y}}(i,r=function(e){return{x:oe(e.x)?e.x:0,y:oe(e.y)?e.y:0}}(r))}else ie(e)&&(t=re(e))}else n&&ie(e)&&(t=re(e));t&&window.scrollTo(t.x,t.y)}var se=M&&function(){var e=window.navigator.userAgent;return(-1===e.indexOf("Android 2.")&&-1===e.indexOf("Android 4.0")||-1===e.indexOf("Mobile Safari")||-1!==e.indexOf("Chrome")||-1!==e.indexOf("Windows Phone"))&&(window.history&&"pushState"in window.history)}(),le=M&&window.performance&&window.performance.now?window.performance:Date,ce=ue();function ue(){return le.now().toFixed(3)}function de(){return ce}function he(e,t){ne();var n=window.history;try{t?n.replaceState({key:ce},"",e):(ce=ue(),n.pushState({key:ce},"",e))}catch(n){window.location[t?"replace":"assign"](e)}}function fe(e){he(e,!0)}function pe(e,t,n){var i=function(r){r>=e.length?n():e[r]?t(e[r],function(){i(r+1)}):i(r+1)};i(0)}function me(e){return function(t,n,i){var o=!1,a=0,s=null;ge(e,function(e,t,n,l){if("function"==typeof e&&void 0===e.cid){o=!0,a++;var c,u=be(function(t){(function(e){return e.__esModule||ye&&"Module"===e[Symbol.toStringTag]})(t)&&(t=t.default),e.resolved="function"==typeof t?t:_.extend(t),n.components[l]=t,--a<=0&&i()}),d=be(function(e){var t="Failed to resolve async component "+l+": "+e;s||(s=r(e)?e:new Error(t),i(s))});try{c=e(u,d)}catch(e){d(e)}if(c)if("function"==typeof c.then)c.then(u,d);else{var h=c.component;h&&"function"==typeof h.then&&h.then(u,d)}}}),o||i()}}function ge(e,t){return ve(e.map(function(e){return Object.keys(e.components).map(function(n){return t(e.components[n],e.instances[n],e,n)})}))}function ve(e){return Array.prototype.concat.apply([],e)}var ye="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function be(e){var t=!1;return function(){for(var n=[],i=arguments.length;i--;)n[i]=arguments[i];if(!t)return t=!0,e.apply(this,n)}}var _e=function(e,t){this.router=e,this.base=function(e){if(!e)if(M){var t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else e="/";"/"!==e.charAt(0)&&(e="/"+e);return e.replace(/\/$/,"")}(t),this.current=g,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function xe(e,t,n,i){var r=ge(e,function(e,i,r,o){var a=function(e,t){"function"!=typeof e&&(e=_.extend(e));return e.options[t]}(e,t);if(a)return Array.isArray(a)?a.map(function(e){return n(e,i,r,o)}):n(a,i,r,o)});return ve(i?r.reverse():r)}function we(e,t){if(t)return function(){return e.apply(t,arguments)}}_e.prototype.listen=function(e){this.cb=e},_e.prototype.onReady=function(e,t){this.ready?e():(this.readyCbs.push(e),t&&this.readyErrorCbs.push(t))},_e.prototype.onError=function(e){this.errorCbs.push(e)},_e.prototype.transitionTo=function(e,t,n){var i=this,r=this.router.match(e,this.current);this.confirmTransition(r,function(){i.updateRoute(r),t&&t(r),i.ensureURL(),i.ready||(i.ready=!0,i.readyCbs.forEach(function(e){e(r)}))},function(e){n&&n(e),e&&!i.ready&&(i.ready=!0,i.readyErrorCbs.forEach(function(t){t(e)}))})},_e.prototype.confirmTransition=function(e,t,n){var o=this,a=this.current,s=function(e){r(e)&&(o.errorCbs.length?o.errorCbs.forEach(function(t){t(e)}):(i(),console.error(e))),n&&n(e)};if(y(e,a)&&e.matched.length===a.matched.length)return this.ensureURL(),s();var l=function(e,t){var n,i=Math.max(e.length,t.length);for(n=0;n<i&&e[n]===t[n];n++);return{updated:t.slice(0,n),activated:t.slice(n),deactivated:e.slice(n)}}(this.current.matched,e.matched),c=l.updated,u=l.deactivated,d=l.activated,h=[].concat(function(e){return xe(e,"beforeRouteLeave",we,!0)}(u),this.router.beforeHooks,function(e){return xe(e,"beforeRouteUpdate",we)}(c),d.map(function(e){return e.beforeEnter}),me(d));this.pending=e;var f=function(t,n){if(o.pending!==e)return s();try{t(e,a,function(e){!1===e||r(e)?(o.ensureURL(!0),s(e)):"string"==typeof e||"object"==typeof e&&("string"==typeof e.path||"string"==typeof e.name)?(s(),"object"==typeof e&&e.replace?o.replace(e):o.push(e)):n(e)})}catch(e){s(e)}};pe(h,f,function(){var n=[];pe(function(e,t,n){return xe(e,"beforeRouteEnter",function(e,i,r,o){return function(e,t,n,i,r){return function(o,a,s){return e(o,a,function(e){s(e),"function"==typeof e&&i.push(function(){!function e(t,n,i,r){n[i]?t(n[i]):r()&&setTimeout(function(){e(t,n,i,r)},16)}(e,t.instances,n,r)})})}}(e,r,o,t,n)})}(d,n,function(){return o.current===e}).concat(o.router.resolveHooks),f,function(){if(o.pending!==e)return s();o.pending=null,t(e),o.router.app&&o.router.app.$nextTick(function(){n.forEach(function(e){e()})})})})},_e.prototype.updateRoute=function(e){var t=this.current;this.current=e,this.cb&&this.cb(e),this.router.afterHooks.forEach(function(n){n&&n(e,t)})};var Se=function(e){function t(t,n){var i=this;e.call(this,t,n);var r=t.options.scrollBehavior;r&&ee();var o=Ce(this.base);window.addEventListener("popstate",function(e){var n=i.current,a=Ce(i.base);i.current===g&&a===o||i.transitionTo(a,function(e){r&&te(t,e,n,!0)})})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.go=function(e){window.history.go(e)},t.prototype.push=function(e,t,n){var i=this,r=this.current;this.transitionTo(e,function(e){he(D(i.base+e.fullPath)),te(i.router,e,r,!1),t&&t(e)},n)},t.prototype.replace=function(e,t,n){var i=this,r=this.current;this.transitionTo(e,function(e){fe(D(i.base+e.fullPath)),te(i.router,e,r,!1),t&&t(e)},n)},t.prototype.ensureURL=function(e){if(Ce(this.base)!==this.current.fullPath){var t=D(this.base+this.current.fullPath);e?he(t):fe(t)}},t.prototype.getCurrentLocation=function(){return Ce(this.base)},t}(_e);function Ce(e){var t=window.location.pathname;return e&&0===t.indexOf(e)&&(t=t.slice(e.length)),(t||"/")+window.location.search+window.location.hash}var ke=function(e){function t(t,n,i){e.call(this,t,n),i&&function(e){var t=Ce(e);if(!/^\/#/.test(t))return window.location.replace(D(e+"/#"+t)),!0}(this.base)||Me()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.setupListeners=function(){var e=this,t=this.router.options.scrollBehavior,n=se&&t;n&&ee(),window.addEventListener(se?"popstate":"hashchange",function(){var t=e.current;Me()&&e.transitionTo(Oe(),function(i){n&&te(e.router,i,t,!0),se||Ae(i.fullPath)})})},t.prototype.push=function(e,t,n){var i=this,r=this.current;this.transitionTo(e,function(e){Te(e.fullPath),te(i.router,e,r,!1),t&&t(e)},n)},t.prototype.replace=function(e,t,n){var i=this,r=this.current;this.transitionTo(e,function(e){Ae(e.fullPath),te(i.router,e,r,!1),t&&t(e)},n)},t.prototype.go=function(e){window.history.go(e)},t.prototype.ensureURL=function(e){var t=this.current.fullPath;Oe()!==t&&(e?Te(t):Ae(t))},t.prototype.getCurrentLocation=function(){return Oe()},t}(_e);function Me(){var e=Oe();return"/"===e.charAt(0)||(Ae("/"+e),!1)}function Oe(){var e=window.location.href,t=e.indexOf("#");return-1===t?"":e.slice(t+1)}function De(e){var t=window.location.href,n=t.indexOf("#");return(n>=0?t.slice(0,n):t)+"#"+e}function Te(e){se?he(De(e)):window.location.hash=e}function Ae(e){se?fe(De(e)):window.location.replace(De(e))}var Ie=function(e){function t(t,n){e.call(this,t,n),this.stack=[],this.index=-1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.push=function(e,t,n){var i=this;this.transitionTo(e,function(e){i.stack=i.stack.slice(0,i.index+1).concat(e),i.index++,t&&t(e)},n)},t.prototype.replace=function(e,t,n){var i=this;this.transitionTo(e,function(e){i.stack=i.stack.slice(0,i.index).concat(e),t&&t(e)},n)},t.prototype.go=function(e){var t=this,n=this.index+e;if(!(n<0||n>=this.stack.length)){var i=this.stack[n];this.confirmTransition(i,function(){t.index=n,t.updateRoute(i)})}},t.prototype.getCurrentLocation=function(){var e=this.stack[this.stack.length-1];return e?e.fullPath:"/"},t.prototype.ensureURL=function(){},t}(_e),Ee=function(e){void 0===e&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Z(e.routes||[],this);var t=e.mode||"hash";switch(this.fallback="history"===t&&!se&&!1!==e.fallback,this.fallback&&(t="hash"),M||(t="abstract"),this.mode=t,t){case"history":this.history=new Se(this,e.base);break;case"hash":this.history=new ke(this,e.base,this.fallback);break;case"abstract":this.history=new Ie(this,e.base);break;default:0}},Pe={currentRoute:{configurable:!0}};function Le(e,t){return e.push(t),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}Ee.prototype.match=function(e,t,n){return this.matcher.match(e,t,n)},Pe.currentRoute.get=function(){return this.history&&this.history.current},Ee.prototype.init=function(e){var t=this;if(this.apps.push(e),!this.app){this.app=e;var n=this.history;if(n instanceof Se)n.transitionTo(n.getCurrentLocation());else if(n instanceof ke){var i=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),i,i)}n.listen(function(e){t.apps.forEach(function(t){t._route=e})})}},Ee.prototype.beforeEach=function(e){return Le(this.beforeHooks,e)},Ee.prototype.beforeResolve=function(e){return Le(this.resolveHooks,e)},Ee.prototype.afterEach=function(e){return Le(this.afterHooks,e)},Ee.prototype.onReady=function(e,t){this.history.onReady(e,t)},Ee.prototype.onError=function(e){this.history.onError(e)},Ee.prototype.push=function(e,t,n){this.history.push(e,t,n)},Ee.prototype.replace=function(e,t,n){this.history.replace(e,t,n)},Ee.prototype.go=function(e){this.history.go(e)},Ee.prototype.back=function(){this.go(-1)},Ee.prototype.forward=function(){this.go(1)},Ee.prototype.getMatchedComponents=function(e){var t=e?e.matched?e:this.resolve(e).route:this.currentRoute;return t?[].concat.apply([],t.matched.map(function(e){return Object.keys(e.components).map(function(t){return e.components[t]})})):[]},Ee.prototype.resolve=function(e,t,n){var i=K(e,t||this.history.current,n,this),r=this.match(i,t),o=r.redirectedFrom||r.fullPath;return{location:i,route:r,href:function(e,t,n){var i="hash"===n?"#"+t:t;return e?D(e+"/"+i):i}(this.history.base,o,this.mode),normalizedTo:i,resolved:r}},Ee.prototype.addRoutes=function(e){this.matcher.addRoutes(e),this.history.current!==g&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ee.prototype,Pe),Ee.install=k,Ee.version="3.0.1",M&&window.Vue&&window.Vue.use(Ee),t.a=Ee},uYoA:function(e,t,n){var i=n("MWS/").extend({type:"markLine",defaultOption:{zlevel:0,z:5,symbol:["circle","arrow"],symbolSize:[8,16],precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end",distance:5},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"}});e.exports=i},uieq:function(e,t,n){var i=n("zYjg"),r=n("LLn1").createSymbol,o=n("o2YK"),a=i.extendShape({shape:{points:null},symbolProxy:null,softClipShape:null,buildPath:function(e,t){var n=t.points,i=t.size,r=this.symbolProxy,o=r.shape;if(!((e.getContext?e.getContext():e)&&i[0]<4))for(var a=0;a<n.length;){var s=n[a++],l=n[a++];isNaN(s)||isNaN(l)||(this.softClipShape&&!this.softClipShape.contain(s,l)||(o.x=s-i[0]/2,o.y=l-i[1]/2,o.width=i[0],o.height=i[1],r.buildPath(e,o,!0)))}},afterBrush:function(e){var t=this.shape,n=t.points,i=t.size;if(i[0]<4){this.setTransform(e);for(var r=0;r<n.length;){var o=n[r++],a=n[r++];isNaN(o)||isNaN(a)||(this.softClipShape&&!this.softClipShape.contain(o,a)||e.fillRect(o-i[0]/2,a-i[1]/2,i[0],i[1]))}this.restoreTransform(e)}},findDataIndex:function(e,t){for(var n=this.shape,i=n.points,r=n.size,o=Math.max(r[0],4),a=Math.max(r[1],4),s=i.length/2-1;s>=0;s--){var l=2*s,c=i[l]-o/2,u=i[l+1]-a/2;if(e>=c&&t>=u&&e<=c+o&&t<=u+a)return s}return-1}});function s(){this.group=new i.Group}var l=s.prototype;l.isPersistent=function(){return!this._incremental},l.updateData=function(e,t){this.group.removeAll();var n=new a({rectHover:!0,cursor:"default"});n.setShape({points:e.getLayout("symbolPoints")}),this._setCommon(n,e,!1,t),this.group.add(n),this._incremental=null},l.updateLayout=function(e){if(!this._incremental){var t=e.getLayout("symbolPoints");this.group.eachChild(function(e){if(null!=e.startIndex){var n=2*(e.endIndex-e.startIndex),i=4*e.startIndex*2;t=new Float32Array(t.buffer,i,n)}e.setShape("points",t)})}},l.incrementalPrepareUpdate=function(e){this.group.removeAll(),this._clearIncremental(),e.count()>2e6?(this._incremental||(this._incremental=new o({silent:!0})),this.group.add(this._incremental)):this._incremental=null},l.incrementalUpdate=function(e,t,n){var i;this._incremental?(i=new a,this._incremental.addDisplayable(i,!0)):((i=new a({rectHover:!0,cursor:"default",startIndex:e.start,endIndex:e.end})).incremental=!0,this.group.add(i)),i.setShape({points:t.getLayout("symbolPoints")}),this._setCommon(i,t,!!this._incremental,n)},l._setCommon=function(e,t,n,i){var o=t.hostModel;i=i||{};var a=t.getVisual("symbolSize");e.setShape("size",a instanceof Array?a:[a,a]),e.softClipShape=i.clipShape||null,e.symbolProxy=r(t.getVisual("symbol"),0,0,0,0),e.setColor=e.symbolProxy.setColor;var s=e.shape.size[0]<4;e.useStyle(o.getModel("itemStyle").getItemStyle(s?["color","shadowBlur","shadowColor"]:["color"]));var l=t.getVisual("color");l&&e.setColor(l),n||(e.seriesIndex=o.seriesIndex,e.on("mousemove",function(t){e.dataIndex=null;var n=e.findDataIndex(t.offsetX,t.offsetY);n>=0&&(e.dataIndex=n+(e.startIndex||0))}))},l.remove=function(){this._clearIncremental(),this._incremental=null,this.group.removeAll()},l._clearIncremental=function(){var e=this._incremental;e&&e.clearDisplaybles()};var c=s;e.exports=c},up9U:function(e,t,n){},urLD:function(e,t,n){e.exports=function(e){return e.mode.CTR=function(){var t=e.lib.BlockCipherMode.extend(),n=t.Encryptor=t.extend({processBlock:function(e,t){var n=this._cipher,i=n.blockSize,r=this._iv,o=this._counter;r&&(o=this._counter=r.slice(0),this._iv=void 0);var a=o.slice(0);n.encryptBlock(a,0),o[i-1]=o[i-1]+1|0;for(var s=0;s<i;s++)e[t+s]^=a[s]}});return t.Decryptor=n,t}(),e.mode.CTR}(n("zBii"),n("pSdL"))},v08p:function(e,t,n){var i=n("zYjg"),r=.3;function o(e,t,n,i){for(var r=[],o=0;o<n.length;o++){var a=n[o],s=e.get(e.mapDimension(a),t);c(s,i.getAxis(a).type)||r.push(i.dataToPoint(s,a))}return r}function a(e,t,n,r,a){var s=o(e,n,r,a),l=new i.Polyline({shape:{points:s},silent:!0,z2:10});return t.add(l),e.setItemGraphicEl(n,l),l}function s(e){var t=e.get("smooth",!0);return!0===t&&(t=r),{lineStyle:e.getModel("lineStyle").getLineStyle(),smooth:null!=t?t:r}}function l(e,t,n,i){var r=i.lineStyle;t.hasItemOption&&(r=t.getItemModel(n).getModel("lineStyle").getLineStyle());e.useStyle(r);var o=e.style;o.fill=null,o.stroke=t.getItemVisual(n,"color"),o.opacity=t.getItemVisual(n,"opacity"),i.smooth&&(e.shape.smooth=i.smooth)}function c(e,t){return"category"===t?null==e:null==e||isNaN(e)}var u=n("F62y").extend({type:"parallel",init:function(){this._dataGroup=new i.Group,this.group.add(this._dataGroup),this._data,this._initialized},render:function(e,t,n,r){var c=this._dataGroup,u=e.getData(),d=this._data,h=e.coordinateSystem,f=h.dimensions,p=s(e);if(u.diff(d).add(function(e){l(a(u,c,e,f,h),u,e,p)}).update(function(t,n){var a=d.getItemGraphicEl(n),s=o(u,t,f,h);u.setItemGraphicEl(t,a);var c=r&&!1===r.animation?null:e;i.updateProps(a,{shape:{points:s}},c,t),l(a,u,t,p)}).remove(function(e){var t=d.getItemGraphicEl(e);c.remove(t)}).execute(),!this._initialized){this._initialized=!0;var m=function(e,t,n){var r=e.model,o=e.getRect(),a=new i.Rect({shape:{x:o.x,y:o.y,width:o.width,height:o.height}}),s="horizontal"===r.get("layout")?"width":"height";return a.setShape(s,0),i.initProps(a,{shape:{width:o.width,height:o.height}},t,n),a}(h,e,function(){setTimeout(function(){c.removeClipPath()})});c.setClipPath(m)}this._data=u},incrementalPrepareRender:function(e,t,n){this._initialized=!0,this._data=null,this._dataGroup.removeAll()},incrementalRender:function(e,t,n){for(var i=t.getData(),r=t.coordinateSystem,o=r.dimensions,c=s(t),u=e.start;u<e.end;u++){var d=a(i,this._dataGroup,u,o,r);d.incremental=!0,l(d,i,u,c)}},dispose:function(){},remove:function(){this._dataGroup&&this._dataGroup.removeAll(),this._data=null}});e.exports=u},v4Ri:function(e,t){e.exports=!0},vNgM:function(e,t,n){var i=n("oEo5"),r=n("Auwy"),o=n("zYjg"),a=n("LLn1").createSymbol,s=n("SSBM"),l=n("Zec6"),c=r.extend({type:"visualMap.piecewise",doRender:function(){var e=this.group;e.removeAll();var t=this.visualMapModel,n=t.get("textGap"),r=t.textStyleModel,a=r.getFont(),l=r.getTextColor(),c=this._getItemAlign(),u=t.itemSize,d=this._getViewData(),h=d.endsText,f=i.retrieve(t.get("showLabel",!0),!h);h&&this._renderEndsText(e,h[0],u,f,c),i.each(d.viewPieceList,function(r){var s=r.piece,d=new o.Group;d.onclick=i.bind(this._onItemClick,this,s),this._enableHoverLink(d,r.indexInModelPieceList);var h=t.getRepresentValue(s);if(this._createItemSymbol(d,h,[0,0,u[0],u[1]]),f){var p=this.visualMapModel.getValueState(h);d.add(new o.Text({style:{x:"right"===c?-n:u[0]+n,y:u[1]/2,text:s.text,textVerticalAlign:"middle",textAlign:c,textFont:a,textFill:l,opacity:"outOfRange"===p?.5:1}}))}e.add(d)},this),h&&this._renderEndsText(e,h[1],u,f,c),s.box(t.get("orient"),e,t.get("itemGap")),this.renderBackground(e),this.positionGroup(e)},_enableHoverLink:function(e,t){function n(e){var n=this.visualMapModel;n.option.hoverLink&&this.api.dispatchAction({type:e,batch:l.makeHighDownBatch(n.findTargetDataIndices(t),n)})}e.on("mouseover",i.bind(n,this,"highlight")).on("mouseout",i.bind(n,this,"downplay"))},_getItemAlign:function(){var e=this.visualMapModel,t=e.option;if("vertical"===t.orient)return l.getItemAlign(e,this.api,e.itemSize);var n=t.align;return n&&"auto"!==n||(n="left"),n},_renderEndsText:function(e,t,n,i,r){if(t){var a=new o.Group,s=this.visualMapModel.textStyleModel;a.add(new o.Text({style:{x:i?"right"===r?n[0]:0:n[0]/2,y:n[1]/2,textVerticalAlign:"middle",textAlign:i?r:"center",text:t,textFont:s.getFont(),textFill:s.getTextColor()}})),e.add(a)}},_getViewData:function(){var e=this.visualMapModel,t=i.map(e.getPieceList(),function(e,t){return{piece:e,indexInModelPieceList:t}}),n=e.get("text"),r=e.get("orient"),o=e.get("inverse");return("horizontal"===r?o:!o)?t.reverse():n&&(n=n.slice().reverse()),{viewPieceList:t,endsText:n}},_createItemSymbol:function(e,t,n){e.add(a(this.getControllerVisual(t,"symbol"),n[0],n[1],n[2],n[3],this.getControllerVisual(t,"color")))},_onItemClick:function(e){var t=this.visualMapModel,n=t.option,r=i.clone(n.selected),o=t.getSelectedMapKey(e);"single"===n.selectedMode?(r[o]=!0,i.each(r,function(e,t){r[t]=t===o})):r[o]=!r[o],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:r})}});e.exports=c},vOhS:function(e,t,n){var i=n("gPqb"),r=n("ie0D"),o=n("oEo5"),a=n("2DdH");function s(e){i.call(this,e)}s.prototype={constructor:s,type:"image",brush:function(e,t){var n=this.style,i=n.image;n.bind(e,this,t);var r=this._image=a.createOrUpdateImage(i,this._image,this,this.onload);if(r&&a.isImageReady(r)){var o=n.x||0,s=n.y||0,l=n.width,c=n.height,u=r.width/r.height;if(null==l&&null!=c?l=c*u:null==c&&null!=l?c=l/u:null==l&&null==c&&(l=r.width,c=r.height),this.setTransform(e),n.sWidth&&n.sHeight){var d=n.sx||0,h=n.sy||0;e.drawImage(r,d,h,n.sWidth,n.sHeight,o,s,l,c)}else if(n.sx&&n.sy){var f=l-(d=n.sx),p=c-(h=n.sy);e.drawImage(r,d,h,f,p,o,s,l,c)}else e.drawImage(r,o,s,l,c);null!=n.text&&(this.restoreTransform(e),this.drawRectText(e,this.getBoundingRect()))}},getBoundingRect:function(){var e=this.style;return this._rect||(this._rect=new r(e.x||0,e.y||0,e.width||0,e.height||0)),this._rect}},o.inherits(s,i);var l=s;e.exports=l},vXmO:function(e,t,n){var i=n("Q6Bq"),r=n("5xMV");n("QRYH"),n("QHKB"),n("WPhg"),n("vNgM"),n("kZpV"),i.registerPreprocessor(r)},vfQ3:function(e,t,n){var i=n("86p4"),r=n("D2WO"),o=n("oEo5").each;function a(e){return parseInt(e,10)}function s(e,t){r.initVML(),this.root=e,this.storage=t;var n=document.createElement("div"),i=document.createElement("div");n.style.cssText="display:inline-block;overflow:hidden;position:relative;width:300px;height:150px;",i.style.cssText="position:absolute;left:0;top:0;",e.appendChild(n),this._vmlRoot=i,this._vmlViewport=n,this.resize();var o=t.delFromStorage,a=t.addToStorage;t.delFromStorage=function(e){o.call(t,e),e&&e.onRemove&&e.onRemove(i)},t.addToStorage=function(e){e.onAdd&&e.onAdd(i),a.call(t,e)},this._firstPaint=!0}s.prototype={constructor:s,getType:function(){return"vml"},getViewportRoot:function(){return this._vmlViewport},getViewportRootOffset:function(){var e=this.getViewportRoot();if(e)return{offsetLeft:e.offsetLeft||0,offsetTop:e.offsetTop||0}},refresh:function(){var e=this.storage.getDisplayList(!0,!0);this._paintList(e)},_paintList:function(e){for(var t=this._vmlRoot,n=0;n<e.length;n++){var i=e[n];i.invisible||i.ignore?(i.__alreadyNotVisible||i.onRemove(t),i.__alreadyNotVisible=!0):(i.__alreadyNotVisible&&i.onAdd(t),i.__alreadyNotVisible=!1,i.__dirty&&(i.beforeBrush&&i.beforeBrush(),(i.brushVML||i.brush).call(i,t),i.afterBrush&&i.afterBrush())),i.__dirty=!1}this._firstPaint&&(this._vmlViewport.appendChild(t),this._firstPaint=!1)},resize:function(e,t){e=null==e?this._getWidth():e,t=null==t?this._getHeight():t;if(this._width!==e||this._height!==t){this._width=e,this._height=t;var n=this._vmlViewport.style;n.width=e+"px",n.height=t+"px"}},dispose:function(){this.root.innerHTML="",this._vmlRoot=this._vmlViewport=this.storage=null},getWidth:function(){return this._width},getHeight:function(){return this._height},clear:function(){this._vmlViewport&&this.root.removeChild(this._vmlViewport)},_getWidth:function(){var e=this.root,t=e.currentStyle;return(e.clientWidth||a(t.width))-a(t.paddingLeft)-a(t.paddingRight)|0},_getHeight:function(){var e=this.root,t=e.currentStyle;return(e.clientHeight||a(t.height))-a(t.paddingTop)-a(t.paddingBottom)|0}},o(["getLayer","insertLayer","eachLayer","eachBuiltinLayer","eachOtherLayer","getLayers","modLayer","delLayer","clearLayer","toDataURL","pathToImage"],function(e){s.prototype[e]=function(e){return function(){i('In IE8.0 VML mode painter not support method "'+e+'"')}}(e)});var l=s;e.exports=l},vgo9:function(e,t,n){n("IPcT").__DEV__;var i=n("oEo5"),r=n("spGK").fromPoints,o=n("6q22"),a=n("DMEU"),s=n("BGny"),l=n("zYjg"),c=n("QV7q"),u=n("si9V"),d=u.Polyline,h=u.Polygon,f=n("F62y"),p=n("6vYt"),m=p.prepareDataCoordInfo,g=p.getStackedOnPoint,v=n("PyNg"),y=v.createGridClipPath,b=v.createPolarClipPath;function _(e,t){if(e.length===t.length){for(var n=0;n<e.length;n++){var i=e[n],r=t[n];if(i[0]!==r[0]||i[1]!==r[1])return}return!0}}function x(e,t){var n=[],i=[],o=[],a=[];return r(e,n,i),r(t,o,a),Math.max(Math.abs(n[0]-o[0]),Math.abs(n[1]-o[1]),Math.abs(i[0]-a[0]),Math.abs(i[1]-a[1]))}function w(e){return"number"==typeof e?e:e?.5:0}function S(e,t,n){for(var i=t.getBaseAxis(),r="x"===i.dim||"radius"===i.dim?0:1,o=[],a=0;a<e.length-1;a++){var s=e[a+1],l=e[a];o.push(l);var c=[];switch(n){case"end":c[r]=s[r],c[1-r]=l[1-r],o.push(c);break;case"middle":var u=(l[r]+s[r])/2,d=[];c[r]=d[r]=u,c[1-r]=l[1-r],d[1-r]=s[1-r],o.push(c),o.push(d);break;default:c[r]=l[r],c[1-r]=s[1-r],o.push(c)}}return e[a]&&o.push(e[a]),o}function C(e,t,n){var r=e.get("showAllSymbol"),o="auto"===r;if(!r||o){var s=n.getAxesByScale("ordinal")[0];if(s&&(!o||!function(e,t){var n=e.getExtent(),i=Math.abs(n[1]-n[0])/e.scale.count();isNaN(i)&&(i=0);for(var r=t.count(),o=Math.max(1,Math.round(r/5)),s=0;s<r;s+=o)if(1.5*a.getSymbolSize(t,s)[e.isHorizontal()?1:0]>i)return!1;return!0}(s,t))){var l=t.mapDimension(s.dim),c={};return i.each(s.getViewLabels(),function(e){c[e.tickValue]=1}),function(e){return!c.hasOwnProperty(t.get(l,e))}}}}function k(e,t,n){if("cartesian2d"===e.type){var i=e.getBaseAxis().isHorizontal(),r=y(e,t,n);if(!n.get("clip",!0)){var o=r.shape,a=Math.max(o.width,o.height);i?(o.y-=a,o.height+=2*a):(o.x-=a,o.width+=2*a)}return r}return b(e,t,n)}var M=f.extend({type:"line",init:function(){var e=new l.Group,t=new o;this.group.add(t.group),this._symbolDraw=t,this._lineGroup=e},render:function(e,t,n){var r=e.coordinateSystem,o=this.group,a=e.getData(),s=e.getModel("lineStyle"),c=e.getModel("areaStyle"),u=a.mapArray(a.getItemLayout),d="polar"===r.type,h=this._coordSys,f=this._symbolDraw,p=this._polyline,v=this._polygon,y=this._lineGroup,b=e.get("animation"),x=!c.isEmpty(),M=c.get("origin"),O=function(e,t,n){if(!n.valueDim)return[];for(var i=[],r=0,o=t.count();r<o;r++)i.push(g(n,e,t,r));return i}(r,a,m(r,a,M)),D=e.get("showSymbol"),T=D&&!d&&C(e,a,r),A=this._data;A&&A.eachItemGraphicEl(function(e,t){e.__temp&&(o.remove(e),A.setItemGraphicEl(t,null))}),D||f.remove(),o.add(y);var I,E=!d&&e.get("step");r&&r.getArea&&e.get("clip",!0)&&(null!=(I=r.getArea()).width?(I.x-=.1,I.y-=.1,I.width+=.2,I.height+=.2):I.r0&&(I.r0-=.5,I.r1+=.5)),this._clipShapeForSymbol=I,p&&h.type===r.type&&E===this._step?(x&&!v?v=this._newPolygon(u,O,r,b):v&&!x&&(y.remove(v),v=this._polygon=null),y.setClipPath(k(r,!1,e)),D&&f.updateData(a,{isIgnore:T,clipShape:I}),a.eachItemGraphicEl(function(e){e.stopAnimation(!0)}),_(this._stackedOnPoints,O)&&_(this._points,u)||(b?this._updateAnimation(a,O,r,n,E,M):(E&&(u=S(u,r,E),O=S(O,r,E)),p.setShape({points:u}),v&&v.setShape({points:u,stackedOnPoints:O})))):(D&&f.updateData(a,{isIgnore:T,clipShape:I}),E&&(u=S(u,r,E),O=S(O,r,E)),p=this._newPolyline(u,r,b),x&&(v=this._newPolygon(u,O,r,b)),y.setClipPath(k(r,!0,e)));var P=function(e,t){var n=e.getVisual("visualMeta");if(n&&n.length&&e.count()&&"cartesian2d"===t.type){for(var r,o,a=n.length-1;a>=0;a--){var s=n[a].dimension,c=e.dimensions[s],u=e.getDimensionInfo(c);if("x"===(r=u&&u.coordDim)||"y"===r){o=n[a];break}}if(o){var d=t.getAxis(r),h=i.map(o.stops,function(e){return{coord:d.toGlobalCoord(d.dataToCoord(e.value)),color:e.color}}),f=h.length,p=o.outerColors.slice();f&&h[0].coord>h[f-1].coord&&(h.reverse(),p.reverse());var m=h[0].coord-10,g=h[f-1].coord+10,v=g-m;if(v<.001)return"transparent";i.each(h,function(e){e.offset=(e.coord-m)/v}),h.push({offset:f?h[f-1].offset:.5,color:p[1]||"transparent"}),h.unshift({offset:f?h[0].offset:.5,color:p[0]||"transparent"});var y=new l.LinearGradient(0,0,0,0,h,!0);return y[r]=m,y[r+"2"]=g,y}}}(a,r)||a.getVisual("color");p.useStyle(i.defaults(s.getLineStyle(),{fill:"none",stroke:P,lineJoin:"bevel"}));var L=e.get("smooth");if(L=w(e.get("smooth")),p.setShape({smooth:L,smoothMonotone:e.get("smoothMonotone"),connectNulls:e.get("connectNulls")}),v){var N=a.getCalculationInfo("stackedOnSeries"),B=0;v.useStyle(i.defaults(c.getAreaStyle(),{fill:P,opacity:.7,lineJoin:"bevel"})),N&&(B=w(N.get("smooth"))),v.setShape({smooth:L,stackedOnSmooth:B,smoothMonotone:e.get("smoothMonotone"),connectNulls:e.get("connectNulls")})}this._data=a,this._coordSys=r,this._stackedOnPoints=O,this._points=u,this._step=E,this._valueOrigin=M},dispose:function(){},highlight:function(e,t,n,i){var r=e.getData(),o=c.queryDataIndex(r,i);if(!(o instanceof Array)&&null!=o&&o>=0){var s=r.getItemGraphicEl(o);if(!s){var l=r.getItemLayout(o);if(!l)return;if(this._clipShapeForSymbol&&!this._clipShapeForSymbol.contain(l[0],l[1]))return;(s=new a(r,o)).position=l,s.setZ(e.get("zlevel"),e.get("z")),s.ignore=isNaN(l[0])||isNaN(l[1]),s.__temp=!0,r.setItemGraphicEl(o,s),s.stopSymbolAnimation(!0),this.group.add(s)}s.highlight()}else f.prototype.highlight.call(this,e,t,n,i)},downplay:function(e,t,n,i){var r=e.getData(),o=c.queryDataIndex(r,i);if(null!=o&&o>=0){var a=r.getItemGraphicEl(o);a&&(a.__temp?(r.setItemGraphicEl(o,null),this.group.remove(a)):a.downplay())}else f.prototype.downplay.call(this,e,t,n,i)},_newPolyline:function(e){var t=this._polyline;return t&&this._lineGroup.remove(t),t=new d({shape:{points:e},silent:!0,z2:10}),this._lineGroup.add(t),this._polyline=t,t},_newPolygon:function(e,t){var n=this._polygon;return n&&this._lineGroup.remove(n),n=new h({shape:{points:e,stackedOnPoints:t},silent:!0}),this._lineGroup.add(n),this._polygon=n,n},_updateAnimation:function(e,t,n,i,r,o){var a=this._polyline,c=this._polygon,u=e.hostModel,d=s(this._data,e,this._stackedOnPoints,t,this._coordSys,n,this._valueOrigin,o),h=d.current,f=d.stackedOnCurrent,p=d.next,m=d.stackedOnNext;if(r&&(h=S(d.current,n,r),f=S(d.stackedOnCurrent,n,r),p=S(d.next,n,r),m=S(d.stackedOnNext,n,r)),x(h,p)>3e3||c&&x(f,m)>3e3)return a.setShape({points:p}),void(c&&c.setShape({points:p,stackedOnPoints:m}));a.shape.__points=d.current,a.shape.points=h,l.updateProps(a,{shape:{points:p}},u),c&&(c.setShape({points:h,stackedOnPoints:f}),l.updateProps(c,{shape:{points:p,stackedOnPoints:m}},u));for(var g=[],v=d.status,y=0;y<v.length;y++){if("="===v[y].cmd){var b=e.getItemGraphicEl(v[y].idx1);b&&g.push({el:b,ptIdx:y})}}a.animators&&a.animators.length&&a.animators[0].during(function(){for(var e=0;e<g.length;e++){g[e].el.attr("position",a.shape.__points[g[e].ptIdx])}})},remove:function(e){var t=this.group,n=this._data;this._lineGroup.removeAll(),this._symbolDraw.remove(!0),n&&n.eachItemGraphicEl(function(e,i){e.__temp&&(t.remove(e),n.setItemGraphicEl(i,null))}),this._polyline=this._polygon=this._coordSys=this._points=this._stackedOnPoints=this._data=null}});e.exports=M},vmuv:function(e,t,n){var i=n("342z").extend({type:"echartsGaugePointer",shape:{angle:0,width:10,r:10,x:0,y:0},buildPath:function(e,t){var n=Math.cos,i=Math.sin,r=t.r,o=t.width,a=t.angle,s=t.x-n(a)*o*(o>=r/3?1:2),l=t.y-i(a)*o*(o>=r/3?1:2);a=t.angle-Math.PI/2,e.moveTo(s,l),e.lineTo(t.x+n(a)*o,t.y+i(a)*o),e.lineTo(t.x+n(t.angle)*r,t.y+i(t.angle)*r),e.lineTo(t.x-n(a)*o,t.y-i(a)*o),e.lineTo(s,l)}});e.exports=i},"vqL+":function(e,t,n){"use strict";function i(){var e=arguments[0];"string"==typeof e&&/^[\d-: ]*$/.test(e)&&(arguments[0]=e.replace(/-/g,"/"));var t=new(Function.prototype.bind.apply(Date,[Date].concat(Array.prototype.slice.call(arguments))));return Object.setPrototypeOf(t,i.prototype),Object.setPrototypeOf(i.prototype,Date.prototype),t}Object.setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e};var r=["日","一","二","三","四","五","六"];function o(e,t,n){switch(t){case"YY":case"YYYY":e=n?e:this.getFullYear()+e,this.setFullYear(e);break;case"MM":e=n?e-1:this.getMonth()+e,this.setMonth(e);break;case"DD":e=n?e:this.getDate()+e,this.setDate(e);break;case"hh":e=n?e:this.getHours()+e,this.setHours(e);break;case"mm":e=n?e:this.getMinutes()+e,this.setMinutes(e);break;case"ss":e=n?e:this.getSeconds()+e,this.setSeconds(e);break;case"SSS":e=n?e:this.getMilliseconds()+e,this.setMilliseconds(e);break;case"ww":case"WW":n?(this.setMonth(0),this.setDate(1),this.setDate(7*e),a.call(this)):this.setDate(this.getDate()+7*e)}}function a(){return this.setDate(this.getDate()-this.getDay()),this}i.prototype.format=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"YYYY-MM-DD hh:mm:ss",t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=void 0,o=void 0,a=void 0,s=void 0,l=void 0,c=void 0,u=void 0,d=void 0;if(t){var h=void 0,f=void 0;this.__distance_begin__>this.__distance_end__?(h=i(this.__distance_begin__),f=i(this.__distance_end__)):(h=i(this.__distance_end__),f=i(this.__distance_begin__)),n=h.getFullYear()-f.getFullYear(),o=h.getMonth()-f.getMonth(),a=h.getDate()-f.getDate(),s=h.getHours()-f.getHours(),l=h.getMinutes()-f.getMinutes(),c=h.getSeconds()-f.getSeconds(),u=Math.abs(h.getDay()-f.getDay()),(d=Math.abs(h.getMilliseconds()-f.getMilliseconds()))<0&&(d+=1e3,c--),c<0&&(c+=60,l--),l<0&&(l+=60,s--),s<0&&(s+=24,a--),a<0&&(a+=f.daysInMonth(),o--),o<0&&(o+=12,n--)}else n=this.getFullYear(),o=this.getMonth()+1,a=this.getDate(),s=this.getHours(),l=this.getMinutes(),c=this.getSeconds(),u=this.getDay(),d=this.getMilliseconds();return e=e.replace("YYYY",n).replace("MM",String(o)[1]?o:"0"+o).replace("DD",String(a)[1]?a:"0"+a).replace("hh",String(s)[1]?s:"0"+s).replace("mm",String(l)[1]?l:"0"+l).replace("ss",String(c)[1]?c:"0"+c).replace("SSS",d).replace("ww",u),e=t?e.replace("WW",u):e.replace("WW",r[u])},i.prototype.stamp=function(){return this.valueOf()},i.prototype.json=function(){return{year:this.getFullYear(),month:this.getMonth()+1,date:this.getDate(),hour:this.getHours(),minute:this.getMinutes(),second:this.getSeconds(),day:this.getDay(),millisecond:this.getMilliseconds()}},i.prototype.get=function(e){var t=String(function(e){switch(e){case"YYYY":return this.getFullYear();case"MM":return this.getMonth()+1;case"DD":return this.getDate();case"hh":return this.getHours();case"mm":return this.getMinutes();case"ss":return this.getSeconds();case"ww":case"WW":return this.getDay();case"SSS":return this.getMilliseconds()}return"00"}.call(this,e));return t[1]||"SSS"===e||"millisecond"===e?t:"0"+t},i.prototype.diff=function(e,t){return t?i(e).valueOf()-i(t).valueOf():this.valueOf()-i(e).valueOf()},i.prototype.isBefore=function(e){return this.valueOf()<i(e).valueOf()},i.prototype.isAfter=function(e){return this.valueOf()>i(e).valueOf()},i.prototype.isBetween=function(e,t){e=i(e).valueOf(),t=i(t).valueOf();var n=this.valueOf();return e>n&&t<n||e<n&&t>n},i.prototype.daysInMonth=function(){return i(this.getFullYear(),this.getMonth()+1,0).getDate()},i.prototype.add=function(e,t){return e||(e=0),o.call(this,e,t),this},i.prototype.sub=function(e,t){return e||(e=0),o.call(this,-e,t),this},i.prototype.set=function(e,t){return e||(e=0),o.call(this,e,t,!0),this},i.prototype.distance=function(e,t){var n=void 0,r=void 0;t?(n=i(e).valueOf(),r=i(t).valueOf()):(n=this.valueOf(),r=i(e).valueOf());var o=i(n-r);return o.__distance_begin__=n,o.__distance_end__=r,o},i.prototype.startOf=function(){switch(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"DD"){case"mm":return i(this.format("YYYY-MM-DD hh:mm:00"));case"hh":return i(this.format("YYYY-MM-DD hh:00:00"));case"DD":return i(this.format("YYYY-MM-DD 00:00:00"));case"ww":case"WW":return i(this.firstDayOfWeek().format("YYYY-MM-DD 00:00:00"));case"MM":return i(this.format("YYYY-MM-01 00:00:00"));case"YY":case"YYYY":return i(this.format("YYYY-01-01 00:00:00"))}},i.prototype.endOf=function(){switch(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"DD"){case"mm":return i(this.format("YYYY-MM-DD hh:mm:59"));case"hh":return i(this.format("YYYY-MM-DD hh:59:59"));case"DD":return i(this.format("YYYY-MM-DD 23:59:59"));case"ww":case"WW":return i(this.firstDayOfWeek().add(6,"DD").format("YYYY-MM-DD 23:59:59"));case"MM":return i(this.lastDay().format("YYYY-MM-DD 23:59:59"));case"YY":case"YYYY":return i(this.set(12,"MM").lastDay().format("YYYY-MM-DD 23:59:59"))}},i.prototype.firstDay=function(){return i(this.getFullYear(),this.getMonth(),1)},i.prototype.lastDay=function(){return i(this.getFullYear(),this.getMonth()+1,0)},i.prototype.firstDayOfWeek=a;var s=i;e.exports=s},vrPM:function(e,t){e.exports=function(e){var t=e.getRect(),n=e.getRangeInfo();return{coordSys:{type:"calendar",x:t.x,y:t.y,width:t.width,height:t.height,cellWidth:e.getCellWidth(),cellHeight:e.getCellHeight(),rangeInfo:{start:n.start,end:n.end,weeks:n.weeks,dayCount:n.allDay}},api:{coord:function(t,n){return e.dataToPoint(t,n)}}}}},vtWr:function(e,t,n){var i=n("Q6Bq"),r=n("oEo5"),o=n("cARS"),a=n("2Myu");n("BqSt"),n("kmpg"),n("5Gbn");i.extendComponentView({type:"parallel",render:function(e,t,n){this._model=e,this._api=n,this._handlers||(this._handlers={},r.each(s,function(e,t){n.getZr().on(t,this._handlers[t]=r.bind(e,this))},this)),o.createOrUpdate(this,"_throttledDispatchExpand",e.get("axisExpandRate"),"fixRate")},dispose:function(e,t){r.each(this._handlers,function(e,n){t.getZr().off(n,e)}),this._handlers=null},_throttledDispatchExpand:function(e){this._dispatchExpand(e)},_dispatchExpand:function(e){e&&this._api.dispatchAction(r.extend({type:"parallelAxisExpand"},e))}});var s={mousedown:function(e){l(this,"click")&&(this._mouseDownPoint=[e.offsetX,e.offsetY])},mouseup:function(e){var t=this._mouseDownPoint;if(l(this,"click")&&t){var n=[e.offsetX,e.offsetY];if(Math.pow(t[0]-n[0],2)+Math.pow(t[1]-n[1],2)>5)return;var i=this._model.coordinateSystem.getSlidedAxisExpandWindow([e.offsetX,e.offsetY]);"none"!==i.behavior&&this._dispatchExpand({axisExpandWindow:i.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(e){if(!this._mouseDownPoint&&l(this,"mousemove")){var t=this._model,n=t.coordinateSystem.getSlidedAxisExpandWindow([e.offsetX,e.offsetY]),i=n.behavior;"jump"===i&&this._throttledDispatchExpand.debounceNextCall(t.get("axisExpandDebounce")),this._throttledDispatchExpand("none"===i?null:{axisExpandWindow:n.axisExpandWindow,animation:"jump"===i&&null})}}};function l(e,t){var n=e._model;return n.get("axisExpandable")&&n.get("axisExpandTriggerOn")===t}i.registerPreprocessor(a)},vwaK:function(e,t,n){var i=n("oEo5"),r=i.createHashMap,o=i.isTypedArray,a=n("1JkX").enableClassCheck,s=n("3uc+"),l=s.SOURCE_FORMAT_ORIGINAL,c=s.SERIES_LAYOUT_BY_COLUMN,u=s.SOURCE_FORMAT_UNKNOWN,d=s.SOURCE_FORMAT_TYPED_ARRAY,h=s.SOURCE_FORMAT_KEYED_COLUMNS;function f(e){this.fromDataset=e.fromDataset,this.data=e.data||(e.sourceFormat===h?{}:[]),this.sourceFormat=e.sourceFormat||u,this.seriesLayoutBy=e.seriesLayoutBy||c,this.dimensionsDefine=e.dimensionsDefine,this.encodeDefine=e.encodeDefine&&r(e.encodeDefine),this.startIndex=e.startIndex||0,this.dimensionsDetectCount=e.dimensionsDetectCount}f.seriesDataToSource=function(e){return new f({data:e,sourceFormat:o(e)?d:l,fromDataset:!1})},a(f);var p=f;e.exports=p},w8Gd:function(e,t,n){var i=n("MWS/").extend({type:"markPoint",defaultOption:{zlevel:0,z:5,symbol:"pin",symbolSize:50,tooltip:{trigger:"item"},label:{show:!0,position:"inside"},itemStyle:{borderWidth:2},emphasis:{label:{show:!0}}}});e.exports=i},w9ct:function(e,t){t.getNodeGlobalScale=function(e){var t=e.coordinateSystem;if("view"!==t.type)return 1;var n=e.option.nodeScaleRatio,i=t.scale,r=i&&i[0]||1;return((t.getZoom()-1)*n+1)/r},t.getSymbolSize=function(e){var t=e.getVisual("symbolSize");return t instanceof Array&&(t=(t[0]+t[1])/2),+t}},wBVS:function(e,t,n){var i=n("sVUS"),r=Object.prototype,o=r.hasOwnProperty,a=r.toString,s=i?i.toStringTag:void 0;e.exports=function(e){var t=o.call(e,s),n=e[s];try{e[s]=void 0;var i=!0}catch(e){}var r=a.call(e);return i&&(t?e[s]=n:delete e[s]),r}},wCui:function(e,t,n){n("tFbR"),n("lLgp")},wKys:function(e,t,n){var i=n("QLFg").normalizeRadian,r=2*Math.PI;t.containStroke=function(e,t,n,o,a,s,l,c,u){if(0===l)return!1;var d=l;c-=e,u-=t;var h=Math.sqrt(c*c+u*u);if(h-d>n||h+d<n)return!1;if(Math.abs(o-a)%r<1e-4)return!0;if(s){var f=o;o=i(a),a=i(f)}else o=i(o),a=i(a);o>a&&(a+=r);var p=Math.atan2(u,c);return p<0&&(p+=r),p>=o&&p<=a||p+r>=o&&p+r<=a}},wWuX:function(e,t,n){e.exports=function(e){return function(){if("function"==typeof ArrayBuffer){var t=e.lib.WordArray,n=t.init;(t.init=function(e){if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),(e instanceof Int8Array||"undefined"!=typeof Uint8ClampedArray&&e instanceof Uint8ClampedArray||e instanceof Int16Array||e instanceof Uint16Array||e instanceof Int32Array||e instanceof Uint32Array||e instanceof Float32Array||e instanceof Float64Array)&&(e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength)),e instanceof Uint8Array){for(var t=e.byteLength,i=[],r=0;r<t;r++)i[r>>>2]|=e[r]<<24-r%4*8;n.call(this,i,t)}else n.apply(this,arguments)}).prototype=t}}(),e.lib.WordArray}(n("zBii"))},wkHe:function(e,t,n){e.exports=function(e){return function(t){var n=e,i=n.lib.CipherParams,r=n.enc.Hex;n.format.Hex={stringify:function(e){return e.ciphertext.toString(r)},parse:function(e){var t=r.parse(e);return i.create({ciphertext:t})}}}(),e.format.Hex}(n("zBii"),n("pSdL"))},wnZI:function(e,t,n){var i=n("zYjg"),r=n("yuiD").getDefaultLabel;function o(e,t){"outside"===e.textPosition&&(e.textPosition=t)}t.setLabel=function(e,t,n,a,s,l,c){var u=n.getModel("label"),d=n.getModel("emphasis.label");i.setLabelStyle(e,t,u,d,{labelFetcher:s,labelDataIndex:l,defaultText:r(s.getData(),l),isRectText:!0,autoColor:a}),o(e),o(t)}},wpu7:function(e,t,n){var i=n("IT7P").createElement,r=n("2OMI"),o=n("ie0D"),a=n("4uqo"),s=n("F2Ao"),l=n("2Cb2"),c=n("ode/"),u=r.CMD,d=Array.prototype.join,h="none",f=Math.round,p=Math.sin,m=Math.cos,g=Math.PI,v=2*Math.PI,y=180/g,b=1e-4;function _(e){return f(1e4*e)/1e4}function x(e){return e<b&&e>-b}function w(e,t){t&&S(e,"transform","matrix("+d.call(t,",")+")")}function S(e,t,n){(!n||"linear"!==n.type&&"radial"!==n.type)&&e.setAttribute(t,n)}function C(e,t,n,i){if(function(e,t){var n=t?e.textFill:e.fill;return null!=n&&n!==h}(t,n)){var r=n?t.textFill:t.fill;S(e,"fill",r="transparent"===r?h:r),S(e,"fill-opacity",null!=t.fillOpacity?t.fillOpacity*t.opacity:t.opacity)}else S(e,"fill",h);if(function(e,t){var n=t?e.textStroke:e.stroke;return null!=n&&n!==h}(t,n)){var o=n?t.textStroke:t.stroke;S(e,"stroke",o="transparent"===o?h:o),S(e,"stroke-width",(n?t.textStrokeWidth:t.lineWidth)/(!n&&t.strokeNoScale?i.getLineScale():1)),S(e,"paint-order",n?"stroke":"fill"),S(e,"stroke-opacity",null!=t.strokeOpacity?t.strokeOpacity:t.opacity),t.lineDash?(S(e,"stroke-dasharray",t.lineDash.join(",")),S(e,"stroke-dashoffset",f(t.lineDashOffset||0))):S(e,"stroke-dasharray",""),t.lineCap&&S(e,"stroke-linecap",t.lineCap),t.lineJoin&&S(e,"stroke-linejoin",t.lineJoin),t.miterLimit&&S(e,"stroke-miterlimit",t.miterLimit)}else S(e,"stroke",h)}var k={};k.brush=function(e){var t=e.style,n=e.__svgEl;n||(n=i("path"),e.__svgEl=n),e.path||e.createPathProxy();var r=e.path;if(e.__dirtyPath){r.beginPath(),r.subPixelOptimize=!1,e.buildPath(r,e.shape),e.__dirtyPath=!1;var o=function(e){for(var t=[],n=e.data,i=e.len(),r=0;r<i;){var o="",a=0;switch(n[r++]){case u.M:o="M",a=2;break;case u.L:o="L",a=2;break;case u.Q:o="Q",a=4;break;case u.C:o="C",a=6;break;case u.A:var s=n[r++],l=n[r++],c=n[r++],d=n[r++],h=n[r++],b=n[r++],w=n[r++],S=n[r++],C=Math.abs(b),k=x(C-v)||(S?b>=v:-b>=v),M=b>0?b%v:b%v+v,O=!1;O=!!k||!x(C)&&M>=g==!!S;var D=_(s+c*m(h)),T=_(l+d*p(h));k&&(b=S?v-1e-4:1e-4-v,O=!0,9===r&&t.push("M",D,T));var A=_(s+c*m(h+b)),I=_(l+d*p(h+b));t.push("A",_(c),_(d),f(w*y),+O,+S,A,I);break;case u.Z:o="Z";break;case u.R:A=_(n[r++]),I=_(n[r++]);var E=_(n[r++]),P=_(n[r++]);t.push("M",A,I,"L",A+E,I,"L",A+E,I+P,"L",A,I+P,"L",A,I)}o&&t.push(o);for(var L=0;L<a;L++)t.push(_(n[r++]))}return t.join(" ")}(r);o.indexOf("NaN")<0&&S(n,"d",o)}C(n,t,!1,e),w(n,e.transform),null!=t.text?E(e,e.getBoundingRect()):L(e)};var M={brush:function(e){var t=e.style,n=t.image;n instanceof HTMLImageElement&&(n=n.src);if(n){var r=t.x||0,o=t.y||0,a=t.width,s=t.height,l=e.__svgEl;l||(l=i("image"),e.__svgEl=l),n!==e.__imageSrc&&(!function(e,t,n){e.setAttributeNS("http://www.w3.org/1999/xlink",t,n)}(l,"href",n),e.__imageSrc=n),S(l,"width",a),S(l,"height",s),S(l,"x",r),S(l,"y",o),w(l,e.transform),null!=t.text?E(e,e.getBoundingRect()):L(e)}}},O={},D=new o,T={},A=[],I={left:"start",right:"end",center:"middle",middle:"middle"},E=function(e,t){var n=e.style,r=e.transform,o=e instanceof c||n.transformText;e.__dirty&&l.normalizeTextStyle(n,!0);var u=n.text;if(null!=u&&(u+=""),l.needDrawText(u,n)){null==u&&(u=""),!o&&r&&(D.copy(t),D.applyTransform(r),t=D);var d=e.__textSvgEl;d||(d=i("text"),e.__textSvgEl=d);var h=d.style,f=n.font||s.DEFAULT_FONT,p=d.__computedFont;f!==d.__styleFont&&(h.font=d.__styleFont=f,p=d.__computedFont=h.font);var m=n.textPadding,g=n.textLineHeight,v=e.__textCotentBlock;v&&!e.__dirtyText||(v=e.__textCotentBlock=s.parsePlainText(u,p,m,g,n.truncate));var y=v.outerHeight,b=v.lineHeight;l.getBoxPosition(T,e,n,t);var _=T.baseX,x=T.baseY,S=T.textAlign||"left",k=T.textVerticalAlign;!function(e,t,n,i,r,o,s){a.identity(A),t&&n&&a.copy(A,n);var l=i.textRotation;if(r&&l){var c=i.textOrigin;"center"===c?(o=r.width/2+r.x,s=r.height/2+r.y):c&&(o=c[0]+r.x,s=c[1]+r.y),A[4]-=o,A[5]-=s,a.rotate(A,A,l),A[4]+=o,A[5]+=s}w(e,A)}(d,o,r,n,t,_,x);var M=_,O=s.adjustTextY(x,y,k);m&&(M=function(e,t,n){return"right"===t?e-n[1]:"center"===t?e+n[3]/2-n[1]/2:e+n[3]}(_,S,m),O+=m[0]),O+=b/2,C(d,n,!0,e);var I=v.canCacheByTextString,E=e.__tspanList||(e.__tspanList=[]),L=E.length;if(I&&e.__canCacheByTextString&&e.__text===u){if(e.__dirtyText&&L)for(var N=0;N<L;++N)P(E[N],S,M,O+N*b)}else{e.__text=u,e.__canCacheByTextString=I;var B=v.lines,z=B.length;for(N=0;N<z;N++){var $=E[N],j=B[N];$?$.__zrText!==j&&($.innerHTML="",$.appendChild(document.createTextNode(j))):($=E[N]=i("tspan"),d.appendChild($),$.appendChild(document.createTextNode(j))),P($,S,M,O+N*b)}if(L>z){for(;N<L;N++)d.removeChild(E[N]);E.length=z}}}};function P(e,t,n,i){S(e,"dominant-baseline","middle"),S(e,"text-anchor",I[t]),S(e,"x",n),S(e,"y",i)}function L(e){e&&e.__textSvgEl&&(e.__textSvgEl.parentNode&&e.__textSvgEl.parentNode.removeChild(e.__textSvgEl),e.__textSvgEl=null,e.__tspanList=[],e.__text=null)}O.drawRectText=E,O.brush=function(e){null!=e.style.text?E(e,!1):L(e)},t.path=k,t.image=M,t.text=O},wu4H:function(e,t){e.exports=d,e.exports.parse=o,e.exports.compile=function(e,t){return a(o(e,t))},e.exports.tokensToFunction=a,e.exports.tokensToRegExp=u;var n="/",i="./",r=new RegExp(["(\\\\.)","(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?"].join("|"),"g");function o(e,t){for(var o,a=[],c=0,u=0,d="",h=t&&t.delimiter||n,f=t&&t.delimiters||i,p=!1;null!==(o=r.exec(e));){var m=o[0],g=o[1],v=o.index;if(d+=e.slice(u,v),u=v+m.length,g)d+=g[1],p=!0;else{var y="",b=e[u],_=o[2],x=o[3],w=o[4],S=o[5];if(!p&&d.length){var C=d.length-1;f.indexOf(d[C])>-1&&(y=d[C],d=d.slice(0,C))}d&&(a.push(d),d="",p=!1);var k=""!==y&&void 0!==b&&b!==y,M="+"===S||"*"===S,O="?"===S||"*"===S,D=y||h,T=x||w;a.push({name:_||c++,prefix:y,delimiter:D,optional:O,repeat:M,partial:k,pattern:T?l(T):"[^"+s(D)+"]+?"})}}return(d||u<e.length)&&a.push(d+e.substr(u)),a}function a(e){for(var t=new Array(e.length),n=0;n<e.length;n++)"object"==typeof e[n]&&(t[n]=new RegExp("^(?:"+e[n].pattern+")$"));return function(n,i){for(var r="",o=i&&i.encode||encodeURIComponent,a=0;a<e.length;a++){var s=e[a];if("string"!=typeof s){var l,c=n?n[s.name]:void 0;if(Array.isArray(c)){if(!s.repeat)throw new TypeError('Expected "'+s.name+'" to not repeat, but got array');if(0===c.length){if(s.optional)continue;throw new TypeError('Expected "'+s.name+'" to not be empty')}for(var u=0;u<c.length;u++){if(l=o(c[u],s),!t[a].test(l))throw new TypeError('Expected all "'+s.name+'" to match "'+s.pattern+'"');r+=(0===u?s.prefix:s.delimiter)+l}}else if("string"!=typeof c&&"number"!=typeof c&&"boolean"!=typeof c){if(!s.optional)throw new TypeError('Expected "'+s.name+'" to be '+(s.repeat?"an array":"a string"));s.partial&&(r+=s.prefix)}else{if(l=o(String(c),s),!t[a].test(l))throw new TypeError('Expected "'+s.name+'" to match "'+s.pattern+'", but got "'+l+'"');r+=s.prefix+l}}else r+=s}return r}}function s(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function l(e){return e.replace(/([=!:$/()])/g,"\\$1")}function c(e){return e&&e.sensitive?"":"i"}function u(e,t,r){for(var o=(r=r||{}).strict,a=!1!==r.start,l=!1!==r.end,u=s(r.delimiter||n),d=r.delimiters||i,h=[].concat(r.endsWith||[]).map(s).concat("$").join("|"),f=a?"^":"",p=0===e.length,m=0;m<e.length;m++){var g=e[m];if("string"==typeof g)f+=s(g),p=m===e.length-1&&d.indexOf(g[g.length-1])>-1;else{var v=g.repeat?"(?:"+g.pattern+")(?:"+s(g.delimiter)+"(?:"+g.pattern+"))*":g.pattern;t&&t.push(g),g.optional?g.partial?f+=s(g.prefix)+"("+v+")?":f+="(?:"+s(g.prefix)+"("+v+"))?":f+=s(g.prefix)+"("+v+")"}}return l?(o||(f+="(?:"+u+")?"),f+="$"===h?"$":"(?="+h+")"):(o||(f+="(?:"+u+"(?="+h+"))?"),p||(f+="(?="+u+"|"+h+")")),new RegExp(f,c(r))}function d(e,t,n){return e instanceof RegExp?function(e,t){if(!t)return e;var n=e.source.match(/\((?!\?)/g);if(n)for(var i=0;i<n.length;i++)t.push({name:i,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,pattern:null});return e}(e,t):Array.isArray(e)?function(e,t,n){for(var i=[],r=0;r<e.length;r++)i.push(d(e[r],t,n).source);return new RegExp("(?:"+i.join("|")+")",c(n))}(e,t,n):function(e,t,n){return u(o(e,n),t,n)}(e,t,n)}},ww29:function(e,t,n){var i=n("2OMI"),r=n("Wa83").applyTransform,o=i.CMD,a=[[],[],[]],s=Math.sqrt,l=Math.atan2;e.exports=function(e,t){var n,i,c,u,d,h=e.data,f=o.M,p=o.C,m=o.L,g=o.R,v=o.A,y=o.Q;for(c=0,u=0;c<h.length;){switch(n=h[c++],u=c,i=0,n){case f:case m:i=1;break;case p:i=3;break;case y:i=2;break;case v:var b=t[4],_=t[5],x=s(t[0]*t[0]+t[1]*t[1]),w=s(t[2]*t[2]+t[3]*t[3]),S=l(-t[1]/w,t[0]/x);h[c]*=x,h[c++]+=b,h[c]*=w,h[c++]+=_,h[c++]*=x,h[c++]*=w,h[c++]+=S,h[c++]+=S,u=c+=2;break;case g:C[0]=h[c++],C[1]=h[c++],r(C,C,t),h[u++]=C[0],h[u++]=C[1],C[0]+=h[c++],C[1]+=h[c++],r(C,C,t),h[u++]=C[0],h[u++]=C[1]}for(d=0;d<i;d++){var C;(C=a[d])[0]=h[c++],C[1]=h[c++],r(C,C,t),h[u++]=C[0],h[u++]=C[1]}}}},wxYR:function(e,t,n){var i=n("G8fk")([["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]]),r={getAreaStyle:function(e,t){return i(this,e,t)}};e.exports=r},x0lj:function(e,t,n){var i=n("oEo5"),r=n("Jjzi").parsePercent,o=i.each;e.exports=function(e){var t=function(e){var t=[],n=[];return e.eachSeriesByType("boxplot",function(e){var r=e.getBaseAxis(),o=i.indexOf(n,r);o<0&&(o=n.length,n[o]=r,t[o]={axis:r,seriesModels:[]}),t[o].seriesModels.push(e)}),t}(e);o(t,function(e){var t=e.seriesModels;t.length&&(function(e){var t,n,a=e.axis,s=e.seriesModels,l=s.length,c=e.boxWidthList=[],u=e.boxOffsetList=[],d=[];if("category"===a.type)n=a.getBandWidth();else{var h=0;o(s,function(e){h=Math.max(h,e.getData().count())}),t=a.getExtent(),Math.abs(t[1]-t[0])}o(s,function(e){var t=e.get("boxWidth");i.isArray(t)||(t=[t,t]),d.push([r(t[0],n)||0,r(t[1],n)||0])});var f=.8*n-2,p=f/l*.3,m=(f-p*(l-1))/l,g=m/2-f/2;o(s,function(e,t){u.push(g),g+=p+m,c.push(Math.min(Math.max(m,d[t][0]),d[t][1]))})}(e),o(t,function(t,n){!function(e,t,n){var i=e.coordinateSystem,r=e.getData(),o=n/2,a="horizontal"===e.get("layout")?0:1,s=1-a,l=["x","y"],c=r.mapDimension(l[a]),u=r.mapDimension(l[s],!0);if(!(null==c||u.length<5))for(var d=0;d<r.count();d++){var h=r.get(c,d),f=b(h,u[2],d),p=b(h,u[0],d),m=b(h,u[1],d),g=b(h,u[3],d),v=b(h,u[4],d),y=[];_(y,m,0),_(y,g,1),y.push(p,m,v,g),x(y,p),x(y,v),x(y,f),r.setItemLayout(d,{initBaseline:f[s],ends:y})}function b(e,n,o){var l,c=r.get(n,o),u=[];return u[a]=e,u[s]=c,isNaN(e)||isNaN(c)?l=[NaN,NaN]:(l=i.dataToPoint(u))[a]+=t,l}function _(e,t,n){var i=t.slice(),r=t.slice();i[a]+=o,r[a]-=o,n?e.push(i,r):e.push(r,i)}function x(e,t){var n=t.slice(),i=t.slice();n[a]-=o,i[a]+=o,e.push(n,i)}}(t,e.boxOffsetList[n],e.boxWidthList[n])}))})}},x4UA:function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:300,i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!e||!t)throw new Error("instance & callback is required");var r=!1,o=function(){r||(r=!0,t&&t.apply(null,arguments))};i?e.$once("after-leave",o):e.$on("after-leave",o),setTimeout(function(){o()},n+100)}},x83A:function(e,t,n){"use strict";t.__esModule=!0;var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.default=function(e){return function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];return 1===n.length&&"object"===i(n[0])&&(n=n[0]),n&&n.hasOwnProperty||(n={}),e.replace(o,function(t,i,o,a){var s=void 0;return"{"===e[a-1]&&"}"===e[a+t.length]?o:null===(s=(0,r.hasOwn)(n,o)?n[o]:null)||void 0===s?"":s})}};var r=n("5Xzl"),o=/(%|)\{([0-9a-zA-Z_]+)\}/g},xCJu:function(e,t,n){var i=n("oEo5"),r=n("gyjJ"),o=(0,n("QV7q").makeInner)(),a=i.each;function s(e,t,n){e.handler("leave",null,n)}function l(e,t,n,i){t.handler(e,n,i)}t.register=function(e,t,n){if(!r.node){var c=t.getZr();o(c).records||(o(c).records={}),function(e,t){function n(n,i){e.on(n,function(n){var r=function(e){var t={showTip:[],hideTip:[]},n=function(i){var r=t[i.type];r?r.push(i):(i.dispatchAction=n,e.dispatchAction(i))};return{dispatchAction:n,pendings:t}}(t);a(o(e).records,function(e){e&&i(e,n,r.dispatchAction)}),function(e,t){var n,i=e.showTip.length,r=e.hideTip.length;i?n=e.showTip[i-1]:r&&(n=e.hideTip[r-1]),n&&(n.dispatchAction=null,t.dispatchAction(n))}(r.pendings,t)})}o(e).initialized||(o(e).initialized=!0,n("click",i.curry(l,"click")),n("mousemove",i.curry(l,"mousemove")),n("globalout",s))}(c,t),(o(c).records[e]||(o(c).records[e]={})).handler=n}},t.unregister=function(e,t){if(!r.node){var n=t.getZr();(o(n).records||{})[e]&&(o(n).records[e]=null)}}},xCdF:function(e,t,n){"use strict";t.__esModule=!0;var i=i||{};i.Utils=i.Utils||{},i.Utils.focusFirstDescendant=function(e){for(var t=0;t<e.childNodes.length;t++){var n=e.childNodes[t];if(i.Utils.attemptFocus(n)||i.Utils.focusFirstDescendant(n))return!0}return!1},i.Utils.focusLastDescendant=function(e){for(var t=e.childNodes.length-1;t>=0;t--){var n=e.childNodes[t];if(i.Utils.attemptFocus(n)||i.Utils.focusLastDescendant(n))return!0}return!1},i.Utils.attemptFocus=function(e){if(!i.Utils.isFocusable(e))return!1;i.Utils.IgnoreUtilFocusChanges=!0;try{e.focus()}catch(e){}return i.Utils.IgnoreUtilFocusChanges=!1,document.activeElement===e},i.Utils.isFocusable=function(e){if(e.tabIndex>0||0===e.tabIndex&&null!==e.getAttribute("tabIndex"))return!0;if(e.disabled)return!1;switch(e.nodeName){case"A":return!!e.href&&"ignore"!==e.rel;case"INPUT":return"hidden"!==e.type&&"file"!==e.type;case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}},i.Utils.triggerEvent=function(e,t){var n=void 0;n=/^mouse|click/.test(t)?"MouseEvents":/^key/.test(t)?"KeyboardEvent":"HTMLEvents";for(var i=document.createEvent(n),r=arguments.length,o=Array(r>2?r-2:0),a=2;a<r;a++)o[a-2]=arguments[a];return i.initEvent.apply(i,[t].concat(o)),e.dispatchEvent?e.dispatchEvent(i):e.fireEvent("on"+t,i),e},i.Utils.keys={tab:9,enter:13,space:32,left:37,up:38,right:39,down:40,esc:27},t.default=i.Utils},xHkS:function(e,t,n){var i=n("Q6Bq");n("l2wO"),n("+AkH"),n("TymS");var r=n("IO27"),o=n("luy6");i.registerVisual(r),i.registerLayout(o)},xNMw:function(e,t,n){var i=n("k+fg").extend({type:"series.bar",dependencies:["grid","polar"],brushSelector:"rect",getProgressive:function(){return!!this.get("large")&&this.get("progressive")},getProgressiveThreshold:function(){var e=this.get("progressiveThreshold"),t=this.get("largeThreshold");return t>e&&(e=t),e},defaultOption:{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1}}});e.exports=i},xOJF:function(e,t,n){var i=function(){return this}()||Function("return this")(),r=i.regeneratorRuntime&&Object.getOwnPropertyNames(i).indexOf("regeneratorRuntime")>=0,o=r&&i.regeneratorRuntime;if(i.regeneratorRuntime=void 0,e.exports=n("k4Ii"),r)i.regeneratorRuntime=o;else try{delete i.regeneratorRuntime}catch(e){i.regeneratorRuntime=void 0}},xPmE:function(e,t){var n=["lineStyle","normal","opacity"],i={seriesType:"parallel",reset:function(e,t,i){var r=e.getModel("itemStyle"),o=e.getModel("lineStyle"),a=t.get("color"),s=o.get("color")||r.get("color")||a[e.seriesIndex%a.length],l=e.get("inactiveOpacity"),c=e.get("activeOpacity"),u=e.getModel("lineStyle").getLineStyle(),d=e.coordinateSystem,h=e.getData(),f={normal:u.opacity,active:c,inactive:l};return h.setVisual("color",s),{progress:function(e,t){d.eachActiveState(t,function(e,i){var r=f[e];if("normal"===e&&t.hasItemOption){var o=t.getItemModel(i).get(n,!0);null!=o&&(r=o)}t.setItemVisual(i,"opacity",r)},e.start,e.end)}}}};e.exports=i},xQxv:function(e,t,n){var i=n("lwtk"),r=n("ltg/"),o=n("7uuy")("species");e.exports=function(e,t){var n,a=i(e).constructor;return void 0===a||void 0==(n=i(a)[o])?t:r(n)}},xSEk:function(e,t,n){n("8DEy"),e.exports=n("zpmP").Object.keys},xTec:function(e,t,n){var i=n("Q6Bq"),r=n("oEo5"),o=n("P0S0"),a=n("QV7q").isNameSpecified,s=n("B2QF").legend.selector,l={all:{type:"all",title:r.clone(s.all)},inverse:{type:"inverse",title:r.clone(s.inverse)}},c=i.extendComponentModel({type:"legend.plain",dependencies:["series"],layoutMode:{type:"box",ignoreSize:!0},init:function(e,t,n){this.mergeDefaultAndTheme(e,n),e.selected=e.selected||{},this._updateSelector(e)},mergeOption:function(e){c.superCall(this,"mergeOption",e),this._updateSelector(e)},_updateSelector:function(e){var t=e.selector;!0===t&&(t=e.selector=["all","inverse"]),r.isArray(t)&&r.each(t,function(e,n){r.isString(e)&&(e={type:e}),t[n]=r.merge(e,l[e.type])})},optionUpdated:function(){this._updateData(this.ecModel);var e=this._data;if(e[0]&&"single"===this.get("selectedMode")){for(var t=!1,n=0;n<e.length;n++){var i=e[n].get("name");if(this.isSelected(i)){this.select(i),t=!0;break}}!t&&this.select(e[0].get("name"))}},_updateData:function(e){var t=[],n=[];e.eachRawSeries(function(i){var r,o=i.name;if(n.push(o),i.legendVisualProvider){var s=i.legendVisualProvider.getAllNames();e.isSeriesFiltered(i)||(n=n.concat(s)),s.length?t=t.concat(s):r=!0}else r=!0;r&&a(i)&&t.push(i.name)}),this._availableNames=n;var i=this.get("data")||t,s=r.map(i,function(e){return"string"!=typeof e&&"number"!=typeof e||(e={name:e}),new o(e,this,this.ecModel)},this);this._data=s},getData:function(){return this._data},select:function(e){var t=this.option.selected;if("single"===this.get("selectedMode")){var n=this._data;r.each(n,function(e){t[e.get("name")]=!1})}t[e]=!0},unSelect:function(e){"single"!==this.get("selectedMode")&&(this.option.selected[e]=!1)},toggleSelected:function(e){var t=this.option.selected;t.hasOwnProperty(e)||(t[e]=!0),this[t[e]?"unSelect":"select"](e)},allSelect:function(){var e=this._data,t=this.option.selected;r.each(e,function(e){t[e.get("name",!0)]=!0})},inverseSelect:function(){var e=this._data,t=this.option.selected;r.each(e,function(e){var n=e.get("name",!0);t.hasOwnProperty(n)||(t[n]=!0),t[n]=!t[n]})},isSelected:function(e){var t=this.option.selected;return!(t.hasOwnProperty(e)&&!t[e])&&r.indexOf(this._availableNames,e)>=0},getOrient:function(){return"vertical"===this.get("orient")?{index:1,name:"vertical"}:{index:0,name:"horizontal"}},defaultOption:{zlevel:0,z:4,show:!0,orient:"horizontal",left:"center",top:0,align:"auto",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemGap:10,itemWidth:25,itemHeight:14,inactiveColor:"#ccc",inactiveBorderColor:"#ccc",itemStyle:{borderWidth:0},textStyle:{color:"#333"},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:" sans-serif",color:"#666",borderWidth:1,borderColor:"#666"},emphasis:{selectorLabel:{show:!0,color:"#eee",backgroundColor:"#666"}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1}}}),u=c;e.exports=u},xYud:function(e,t,n){var i=n("9mCu"),r=n("oEo5"),o=n("86p4"),a=n("XTQn");function s(e,t){i.call(this,e,t,["linearGradient","radialGradient"],"__gradient_in_use__")}r.inherits(s,i),s.prototype.addWithoutUpdate=function(e,t){if(t&&t.style){var n=this;r.each(["fill","stroke"],function(i){if(t.style[i]&&("linear"===t.style[i].type||"radial"===t.style[i].type)){var r,o=t.style[i],a=n.getDefs(!0);o._dom?(r=o._dom,a.contains(o._dom)||n.addDom(r)):r=n.add(o),n.markUsed(t);var s=r.getAttribute("id");e.setAttribute(i,"url(#"+s+")")}})}},s.prototype.add=function(e){var t;if("linear"===e.type)t=this.createElement("linearGradient");else{if("radial"!==e.type)return o("Illegal gradient type."),null;t=this.createElement("radialGradient")}return e.id=e.id||this.nextId++,t.setAttribute("id","zr"+this._zrId+"-gradient-"+e.id),this.updateDom(e,t),this.addDom(t),t},s.prototype.update=function(e){var t=this;i.prototype.update.call(this,e,function(){var n=e.type,i=e._dom.tagName;"linear"===n&&"linearGradient"===i||"radial"===n&&"radialGradient"===i?t.updateDom(e,e._dom):(t.removeDom(e),t.add(e))})},s.prototype.updateDom=function(e,t){if("linear"===e.type)t.setAttribute("x1",e.x),t.setAttribute("y1",e.y),t.setAttribute("x2",e.x2),t.setAttribute("y2",e.y2);else{if("radial"!==e.type)return void o("Illegal gradient type.");t.setAttribute("cx",e.x),t.setAttribute("cy",e.y),t.setAttribute("r",e.r)}e.global?t.setAttribute("gradientUnits","userSpaceOnUse"):t.setAttribute("gradientUnits","objectBoundingBox"),t.innerHTML="";for(var n=e.colorStops,i=0,r=n.length;i<r;++i){var s=this.createElement("stop");s.setAttribute("offset",100*n[i].offset+"%");var l=n[i].color;if(l.indexOf("rgba")>-1){var c=a.parse(l)[3],u=a.toHex(l);s.setAttribute("stop-color","#"+u),s.setAttribute("stop-opacity",c)}else s.setAttribute("stop-color",n[i].color);t.appendChild(s)}e._dom=t},s.prototype.markUsed=function(e){if(e.style){var t=e.style.fill;t&&t._dom&&i.prototype.markUsed.call(this,t._dom),(t=e.style.stroke)&&t._dom&&i.prototype.markUsed.call(this,t._dom)}};var l=s;e.exports=l},xdc2:function(e,t,n){var i=n("+Vnd"),r=n("Zmji"),o=n("CQhY").encodeHTML,a=n("P0S0"),s=(n("IPcT").__DEV__,i.extend({type:"series.sankey",layoutInfo:null,levelModels:null,getInitialData:function(e,t){for(var n=e.edges||e.links,i=e.data||e.nodes,o=e.levels,s=this.levelModels={},l=0;l<o.length;l++)null!=o[l].depth&&o[l].depth>=0&&(s[o[l].depth]=new a(o[l],this,t));if(i&&n)return r(i,n,this,!0,function(e,t){e.wrapMethod("getItemModel",function(e,t){return e.customizeGetParent(function(e){var n=this.parentModel,i=n.getData().getItemLayout(t).depth,r=n.levelModels[i];return r||this.parentModel}),e}),t.wrapMethod("getItemModel",function(e,t){return e.customizeGetParent(function(e){var n=this.parentModel,i=n.getGraph().getEdgeByIndex(t),r=i.node1.getLayout().depth,o=n.levelModels[r];return o||this.parentModel}),e})}).data},setNodePosition:function(e,t){var n=this.option.data[e];n.localX=t[0],n.localY=t[1]},getGraph:function(){return this.getData().graph},getEdgeData:function(){return this.getGraph().edgeData},formatTooltip:function(e,t,n){if("edge"===n){var i=this.getDataParams(e,n),r=i.data,a=r.source+" -- "+r.target;return i.value&&(a+=" : "+i.value),o(a)}if("node"===n){var l=this.getGraph().getNodeByIndex(e).getLayout().value,c=this.getDataParams(e,n).data.name;if(l)a=c+" : "+l;return o(a)}return s.superCall(this,"formatTooltip",e,t)},optionUpdated:function(){var e=this.option;!0===e.focusNodeAdjacency&&(e.focusNodeAdjacency="allEdges")},getDataParams:function(e,t){var n=s.superCall(this,"getDataParams",e,t);if(null==n.value&&"node"===t){var i=this.getGraph().getNodeByIndex(e).getLayout().value;n.value=i}return n},defaultOption:{zlevel:0,z:2,coordinateSystem:"view",layout:null,left:"5%",top:"5%",right:"20%",bottom:"5%",orient:"horizontal",nodeWidth:20,nodeGap:8,draggable:!0,focusNodeAdjacency:!1,layoutIterations:32,label:{show:!0,position:"right",color:"#000",fontSize:12},levels:[],nodeAlign:"justify",itemStyle:{borderWidth:1,borderColor:"#333"},lineStyle:{color:"#314656",opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},animationEasing:"linear",animationDuration:1e3}})),l=s;e.exports=l},xjlc:function(e,t,n){var i=n("Q6Bq");n("xdc2"),n("QAa3"),n("XSBz");var r=n("0+Dw"),o=n("peMG");i.registerLayout(r),i.registerVisual(o)},xx5k:function(e,t,n){var i=n("oEo5"),r=n("F62y"),o=n("zYjg"),a=n("342z"),s=n("PyNg").createClipPath,l=["itemStyle"],c=["emphasis","itemStyle"],u=["color","color0","borderColor","borderColor0"],d=r.extend({type:"candlestick",render:function(e,t,n){this.group.removeClipPath(),this._updateDrawMode(e),this._isLargeDraw?this._renderLarge(e):this._renderNormal(e)},incrementalPrepareRender:function(e,t,n){this._clear(),this._updateDrawMode(e)},incrementalRender:function(e,t,n,i){this._isLargeDraw?this._incrementalRenderLarge(e,t):this._incrementalRenderNormal(e,t)},_updateDrawMode:function(e){var t=e.pipelineContext.large;(null==this._isLargeDraw||t^this._isLargeDraw)&&(this._isLargeDraw=t,this._clear())},_renderNormal:function(e){var t=e.getData(),n=this._data,i=this.group,r=t.getLayout("isSimpleBox"),a=e.get("clip",!0),s=e.coordinateSystem,l=s.getArea&&s.getArea();this._data||i.removeAll(),t.diff(n).add(function(n){if(t.hasValue(n)){var s,c=t.getItemLayout(n);if(a&&p(l,c))return;s=f(c,n,!0),o.initProps(s,{shape:{points:c.ends}},e,n),m(s,t,n,r),i.add(s),t.setItemGraphicEl(n,s)}}).update(function(s,c){var u=n.getItemGraphicEl(c);if(t.hasValue(s)){var d=t.getItemLayout(s);a&&p(l,d)?i.remove(u):(u?o.updateProps(u,{shape:{points:d.ends}},e,s):u=f(d,s),m(u,t,s,r),i.add(u),t.setItemGraphicEl(s,u))}else i.remove(u)}).remove(function(e){var t=n.getItemGraphicEl(e);t&&i.remove(t)}).execute(),this._data=t},_renderLarge:function(e){this._clear(),v(e,this.group);var t=e.get("clip",!0)?s(e.coordinateSystem,!1,e):null;t?this.group.setClipPath(t):this.group.removeClipPath()},_incrementalRenderNormal:function(e,t){for(var n,i=t.getData(),r=i.getLayout("isSimpleBox");null!=(n=e.next());){var o;m(o=f(i.getItemLayout(n),n),i,n,r),o.incremental=!0,this.group.add(o)}},_incrementalRenderLarge:function(e,t){v(t,this.group,!0)},remove:function(e){this._clear()},_clear:function(){this.group.removeAll(),this._data=null},dispose:i.noop}),h=a.extend({type:"normalCandlestickBox",shape:{},buildPath:function(e,t){var n=t.points;this.__simpleBox?(e.moveTo(n[4][0],n[4][1]),e.lineTo(n[6][0],n[6][1])):(e.moveTo(n[0][0],n[0][1]),e.lineTo(n[1][0],n[1][1]),e.lineTo(n[2][0],n[2][1]),e.lineTo(n[3][0],n[3][1]),e.closePath(),e.moveTo(n[4][0],n[4][1]),e.lineTo(n[5][0],n[5][1]),e.moveTo(n[6][0],n[6][1]),e.lineTo(n[7][0],n[7][1]))}});function f(e,t,n){var r=e.ends;return new h({shape:{points:n?function(e,t){return i.map(e,function(e){return(e=e.slice())[1]=t.initBaseline,e})}(r,e):r},z2:100})}function p(e,t){for(var n=!0,i=0;i<t.ends.length;i++)if(e.contain(t.ends[i][0],t.ends[i][1])){n=!1;break}return n}function m(e,t,n,i){var r=t.getItemModel(n),a=r.getModel(l),s=t.getItemVisual(n,"color"),d=t.getItemVisual(n,"borderColor")||s,h=a.getItemStyle(u);e.useStyle(h),e.style.strokeNoScale=!0,e.style.fill=s,e.style.stroke=d,e.__simpleBox=i;var f=r.getModel(c).getItemStyle();o.setHoverStyle(e,f)}var g=a.extend({type:"largeCandlestickBox",shape:{},buildPath:function(e,t){for(var n=t.points,i=0;i<n.length;)if(this.__sign===n[i++]){var r=n[i++];e.moveTo(r,n[i++]),e.lineTo(r,n[i++])}else i+=3}});function v(e,t,n){var i=e.getData(),r=i.getLayout("largePoints"),o=new g({shape:{points:r},__sign:1});t.add(o);var a=new g({shape:{points:r},__sign:-1});t.add(a),y(1,o,e,i),y(-1,a,e,i),n&&(o.incremental=!0,a.incremental=!0)}function y(e,t,n,i){var r=e>0?"P":"N",o=i.getVisual("borderColor"+r)||i.getVisual("color"+r),a=n.getModel(l).getItemStyle(u);t.useStyle(a),t.style.fill=null,t.style.stroke=o}var b=d;e.exports=b},xxVc:function(e,t,n){var i=n("oEo5"),r=n("XTQn"),o=n("YsOP"),a=n("Jjzi"),s=n("zYjg"),l=n("aiPM"),c=function(e,t,n,r){var o=l.dataTransform(e,r[0]),a=l.dataTransform(e,r[1]),s=i.retrieve,c=o.coord,u=a.coord;c[0]=s(c[0],-1/0),c[1]=s(c[1],-1/0),u[0]=s(u[0],1/0),u[1]=s(u[1],1/0);var d=i.mergeAll([{},o,a]);return d.coord=[o.coord,a.coord],d.x0=o.x,d.y0=o.y,d.x1=a.x,d.y1=a.y,d};function u(e){return!isNaN(e)&&!isFinite(e)}function d(e,t,n,i){var r=1-e;return u(t[r])&&u(n[r])}function h(e,t){var n=t.coord[0],i=t.coord[1];return!("cartesian2d"!==e.type||!n||!i||!d(1,n,i)&&!d(0,n,i))||(l.dataFilter(e,{coord:n,x:t.x0,y:t.y0})||l.dataFilter(e,{coord:i,x:t.x1,y:t.y1}))}function f(e,t,n,i,r){var o,s=i.coordinateSystem,l=e.getItemModel(t),c=a.parsePercent(l.get(n[0]),r.getWidth()),d=a.parsePercent(l.get(n[1]),r.getHeight());if(isNaN(c)||isNaN(d)){if(i.getMarkerPosition)o=i.getMarkerPosition(e.getValues(n,t));else{var h=[m=e.get(n[0],t),g=e.get(n[1],t)];s.clampData&&s.clampData(h,h),o=s.dataToPoint(h,!0)}if("cartesian2d"===s.type){var f=s.getAxis("x"),p=s.getAxis("y"),m=e.get(n[0],t),g=e.get(n[1],t);u(m)?o[0]=f.toGlobalCoord(f.getExtent()["x0"===n[0]?0:1]):u(g)&&(o[1]=p.toGlobalCoord(p.getExtent()["y0"===n[1]?0:1]))}isNaN(c)||(o[0]=c),isNaN(d)||(o[1]=d)}else o=[c,d];return o}var p=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]];n("4M5R").extend({type:"markArea",updateTransform:function(e,t,n){t.eachSeries(function(e){var t=e.markAreaModel;if(t){var r=t.getData();r.each(function(t){var o=i.map(p,function(i){return f(r,t,i,e,n)});r.setItemLayout(t,o),r.getItemGraphicEl(t).setShape("points",o)})}},this)},renderSeries:function(e,t,n,a){var l=e.coordinateSystem,d=e.id,m=e.getData(),g=this.markerGroupMap,v=g.get(d)||g.set(d,{group:new s.Group});this.group.add(v.group),v.__keep=!0;var y=function(e,t,n){var r,a;e?(r=i.map(e&&e.dimensions,function(e){var n=t.getData(),r=n.getDimensionInfo(n.mapDimension(e))||{};return i.defaults({name:e},r)}),a=new o(i.map(["x0","y0","x1","y1"],function(e,t){return{name:e,type:r[t%2].type}}),n)):a=new o(r=[{name:"value",type:"float"}],n);var s=i.map(n.get("data"),i.curry(c,t,e,n));e&&(s=i.filter(s,i.curry(h,e)));var l=e?function(e,t,n,i){return e.coord[Math.floor(i/2)][i%2]}:function(e){return e.value};return a.initData(s,null,l),a.hasItemOption=!0,a}(l,e,t);t.setData(y),y.each(function(t){var n=i.map(p,function(n){return f(y,t,n,e,a)}),r=!0;i.each(p,function(e){if(r){var n=y.get(e[0],t),i=y.get(e[1],t);(u(n)||l.getAxis("x").containData(n))&&(u(i)||l.getAxis("y").containData(i))&&(r=!1)}}),y.setItemLayout(t,{points:n,allClipped:r}),y.setItemVisual(t,{color:m.getVisual("color")})}),y.diff(v.__data).add(function(e){var t=y.getItemLayout(e);if(!t.allClipped){var n=new s.Polygon({shape:{points:t.points}});y.setItemGraphicEl(e,n),v.group.add(n)}}).update(function(e,n){var i=v.__data.getItemGraphicEl(n),r=y.getItemLayout(e);r.allClipped?i&&v.group.remove(i):(i?s.updateProps(i,{shape:{points:r.points}},t,e):i=new s.Polygon({shape:{points:r.points}}),y.setItemGraphicEl(e,i),v.group.add(i))}).remove(function(e){var t=v.__data.getItemGraphicEl(e);v.group.remove(t)}).execute(),y.eachItemGraphicEl(function(e,n){var o=y.getItemModel(n),a=o.getModel("label"),l=o.getModel("emphasis.label"),c=y.getItemVisual(n,"color");e.useStyle(i.defaults(o.getModel("itemStyle").getItemStyle(),{fill:r.modifyAlpha(c,.4),stroke:c})),e.hoverStyle=o.getModel("emphasis.itemStyle").getItemStyle(),s.setLabelStyle(e.style,e.hoverStyle,a,l,{labelFetcher:t,labelDataIndex:n,defaultText:y.getName(n)||"",isRectText:!0,autoColor:c}),s.setHoverStyle(e,{}),e.dataModel=t}),v.__data=y,v.group.silent=t.get("silent")||e.get("silent")}})},"y+8q":function(e,t,n){var i=n("zYjg"),r=n("o2YK"),o=n("oMIb"),a=n("Og4i"),s=i.extendShape({shape:{polyline:!1,curveness:0,segs:[]},buildPath:function(e,t){var n=t.segs,i=t.curveness;if(t.polyline)for(var r=0;r<n.length;){var o=n[r++];if(o>0){e.moveTo(n[r++],n[r++]);for(var a=1;a<o;a++)e.lineTo(n[r++],n[r++])}}else for(r=0;r<n.length;){var s=n[r++],l=n[r++],c=n[r++],u=n[r++];if(e.moveTo(s,l),i>0){var d=(s+c)/2-(l-u)*i,h=(l+u)/2-(c-s)*i;e.quadraticCurveTo(d,h,c,u)}else e.lineTo(c,u)}},findDataIndex:function(e,t){var n=this.shape,i=n.segs,r=n.curveness;if(n.polyline)for(var s=0,l=0;l<i.length;){var c=i[l++];if(c>0)for(var u=i[l++],d=i[l++],h=1;h<c;h++){var f=i[l++],p=i[l++];if(o.containStroke(u,d,f,p))return s}s++}else for(s=0,l=0;l<i.length;){u=i[l++],d=i[l++],f=i[l++],p=i[l++];if(r>0){var m=(u+f)/2-(d-p)*r,g=(d+p)/2-(f-u)*r;if(a.containStroke(u,d,m,g,f,p))return s}else if(o.containStroke(u,d,f,p))return s;s++}return-1}});function l(){this.group=new i.Group}var c=l.prototype;c.isPersistent=function(){return!this._incremental},c.updateData=function(e){this.group.removeAll();var t=new s({rectHover:!0,cursor:"default"});t.setShape({segs:e.getLayout("linesPoints")}),this._setCommon(t,e),this.group.add(t),this._incremental=null},c.incrementalPrepareUpdate=function(e){this.group.removeAll(),this._clearIncremental(),e.count()>5e5?(this._incremental||(this._incremental=new r({silent:!0})),this.group.add(this._incremental)):this._incremental=null},c.incrementalUpdate=function(e,t){var n=new s;n.setShape({segs:t.getLayout("linesPoints")}),this._setCommon(n,t,!!this._incremental),this._incremental?this._incremental.addDisplayable(n,!0):(n.rectHover=!0,n.cursor="default",n.__startIndex=e.start,this.group.add(n))},c.remove=function(){this._clearIncremental(),this._incremental=null,this.group.removeAll()},c._setCommon=function(e,t,n){var i=t.hostModel;e.setShape({polyline:i.get("polyline"),curveness:i.get("lineStyle.curveness")}),e.useStyle(i.getModel("lineStyle").getLineStyle()),e.style.strokeNoScale=!0;var r=t.getVisual("color");r&&e.setStyle("stroke",r),e.setStyle("fill"),n||(e.seriesIndex=i.seriesIndex,e.on("mousemove",function(t){e.dataIndex=null;var n=e.findDataIndex(t.offsetX,t.offsetY);n>0&&(e.dataIndex=n+e.__startIndex)}))},c._clearIncremental=function(){var e=this._incremental;e&&e.clearDisplaybles()};var u=l;e.exports=u},y6TG:function(e,t,n){var i=n("oEo5"),r={updateSelectedMap:function(e){this._targetList=i.isArray(e)?e.slice():[],this._selectTargetMap=i.reduce(e||[],function(e,t){return e.set(t.name,t),e},i.createHashMap())},select:function(e,t){var n=null!=t?this._targetList[t]:this._selectTargetMap.get(e);"single"===this.get("selectedMode")&&this._selectTargetMap.each(function(e){e.selected=!1}),n&&(n.selected=!0)},unSelect:function(e,t){var n=null!=t?this._targetList[t]:this._selectTargetMap.get(e);n&&(n.selected=!1)},toggleSelected:function(e,t){var n=null!=t?this._targetList[t]:this._selectTargetMap.get(e);if(null!=n)return this[n.selected?"unSelect":"select"](e,t),n.selected},isSelected:function(e,t){var n=null!=t?this._targetList[t]:this._selectTargetMap.get(e);return n&&n.selected}};e.exports=r},yBoc:function(e,t,n){var i=n("E5vS"),r=n("H4kY"),o=n("qhWv"),a="Expected a function",s=Math.max,l=Math.min;e.exports=function(e,t,n){var c,u,d,h,f,p,m=0,g=!1,v=!1,y=!0;if("function"!=typeof e)throw new TypeError(a);function b(t){var n=c,i=u;return c=u=void 0,m=t,h=e.apply(i,n)}function _(e){var n=e-p;return void 0===p||n>=t||n<0||v&&e-m>=d}function x(){var e=r();if(_(e))return w(e);f=setTimeout(x,function(e){var n=t-(e-p);return v?l(n,d-(e-m)):n}(e))}function w(e){return f=void 0,y&&c?b(e):(c=u=void 0,h)}function S(){var e=r(),n=_(e);if(c=arguments,u=this,p=e,n){if(void 0===f)return function(e){return m=e,f=setTimeout(x,t),g?b(e):h}(p);if(v)return clearTimeout(f),f=setTimeout(x,t),b(p)}return void 0===f&&(f=setTimeout(x,t)),h}return t=o(t)||0,i(n)&&(g=!!n.leading,d=(v="maxWait"in n)?s(o(n.maxWait)||0,t):d,y="trailing"in n?!!n.trailing:y),S.cancel=function(){void 0!==f&&clearTimeout(f),m=0,c=p=u=f=void 0},S.flush=function(){return void 0===f?h:w(r())},S}},yMz6:function(e,t){t.updateCenterAndZoom=function(e,t,n){var i=e.getZoom(),r=e.getCenter(),o=t.zoom,a=e.dataToPoint(r);null!=t.dx&&null!=t.dy&&(a[0]-=t.dx,a[1]-=t.dy,r=e.pointToData(a),e.setCenter(r));if(null!=o){if(n){var s=n.min||0,l=n.max||1/0;o=Math.max(Math.min(i*o,l),s)/i}e.scale[0]*=o,e.scale[1]*=o;var c=e.position,u=(t.originX-c[0])*(o-1),d=(t.originY-c[1])*(o-1);c[0]-=u,c[1]-=d,e.updateTransform(),r=e.pointToData(a),e.setCenter(r),e.setZoom(o*i)}return{center:e.getCenter(),zoom:e.getZoom()}}},"yOV+":function(e,t,n){var i=n("oEo5");t.layout=function(e,t){t=t||{};var n=e.coordinateSystem,r=e.axis,o={},a=r.position,s=r.orient,l=n.getRect(),c=[l.x,l.x+l.width,l.y,l.y+l.height],u={horizontal:{top:c[2],bottom:c[3]},vertical:{left:c[0],right:c[1]}};o.position=["vertical"===s?u.vertical[a]:c[0],"horizontal"===s?u.horizontal[a]:c[3]],o.rotation=Math.PI/2*{horizontal:0,vertical:1}[s],o.labelDirection=o.tickDirection=o.nameDirection={top:-1,bottom:1,right:1,left:-1}[a],e.get("axisTick.inside")&&(o.tickDirection=-o.tickDirection),i.retrieve(t.labelInside,e.get("axisLabel.inside"))&&(o.labelDirection=-o.labelDirection);var d=t.rotate;return null==d&&(d=e.get("axisLabel.rotate")),o.labelRotation="top"===a?-d:d,o.z2=1,o}},yZ6v:function(e,t,n){var i=n("Q6Bq"),r=n("5xMV");n("QRYH"),n("QHKB"),n("KZcC"),n("mJA3"),n("kZpV"),i.registerPreprocessor(r)},yZUZ:function(e,t,n){var i=n("+Vnd"),r=n("4+FC"),o=n("CQhY").encodeHTML,a=n("P0S0"),s=i.extend({type:"series.tree",layoutInfo:null,layoutMode:"box",getInitialData:function(e){var t={name:e.name,children:e.data},n=e.leaves||{},i=new a(n,this,this.ecModel),o=r.createTree(t,this,function(e){e.wrapMethod("getItemModel",function(e,t){var n=o.getNodeByDataIndex(t);return n.children.length&&n.isExpand||(e.parentModel=i),e})});var s=0;o.eachNode("preorder",function(e){e.depth>s&&(s=e.depth)});var l=e.expandAndCollapse&&e.initialTreeDepth>=0?e.initialTreeDepth:s;return o.root.eachNode("preorder",function(e){var t=e.hostTree.data.getRawDataItem(e.dataIndex);e.isExpand=t&&null!=t.collapsed?!t.collapsed:e.depth<=l}),o.data},getOrient:function(){var e=this.get("orient");return"horizontal"===e?e="LR":"vertical"===e&&(e="TB"),e},setZoom:function(e){this.option.zoom=e},setCenter:function(e){this.option.center=e},formatTooltip:function(e){for(var t=this.getData().tree,n=t.root.children[0],i=t.getNodeByDataIndex(e),r=i.getValue(),a=i.name;i&&i!==n;)a=i.parentNode.name+"."+a,i=i.parentNode;return o(a+(isNaN(r)||null==r?"":" : "+r))},defaultOption:{zlevel:0,z:2,coordinateSystem:"view",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderColor:"#c23531",borderWidth:1.5},label:{show:!0,color:"#555"},leaves:{label:{show:!0}},animationEasing:"linear",animationDuration:700,animationDurationUpdate:1e3}});e.exports=s},ycch:function(e,t,n){var i=n("oEo5");function r(e){for(var t=[];e;)(e=e.parentNode)&&t.push(e);return t.reverse()}t.retrieveTargetInfo=function(e,t,n){if(e&&i.indexOf(t,e.type)>=0){var r=n.getData().tree.root,o=e.targetNode;if("string"==typeof o&&(o=r.getNodeById(o)),o&&r.contains(o))return{node:o};var a=e.targetNodeId;if(null!=a&&(o=r.getNodeById(a)))return{node:o}}},t.getPathToRoot=r,t.aboveViewRoot=function(e,t){var n=r(e);return i.indexOf(n,t)>=0},t.wrapTreePathInfo=function(e,t){for(var n=[];e;){var i=e.dataIndex;n.push({name:e.name,dataIndex:i,value:t.getRawValue(i)}),e=e.parentNode}return n.reverse(),n}},ykdM:function(e,t,n){var i=n("YPjC");e.exports=function(e,t,n){return void 0===n?i(e,t,!1):i(e,n,!1!==t)}},yuiD:function(e,t,n){var i=n("Vw6a").retrieveRawValue;t.getDefaultLabel=function(e,t){var n=e.mapDimension("defaultedLabel",!0),r=n.length;if(1===r)return i(e,t,n[0]);if(r){for(var o=[],a=0;a<n.length;a++){var s=i(e,t,n[a]);o.push(s)}return o.join(" ")}}},yvNr:function(e,t,n){var i=n("oEo5"),r=n("EgZf"),o=function(e,t,n,i,o){r.call(this,e,t,n),this.type=i||"value",this.position=o||"bottom"};o.prototype={constructor:o,index:0,getAxesOnZeroOf:null,model:null,isHorizontal:function(){var e=this.position;return"top"===e||"bottom"===e},getGlobalExtent:function(e){var t=this.getExtent();return t[0]=this.toGlobalCoord(t[0]),t[1]=this.toGlobalCoord(t[1]),e&&t[0]>t[1]&&t.reverse(),t},getOtherAxis:function(){this.grid.getOtherAxis()},pointToData:function(e,t){return this.coordToData(this.toLocalCoord(e["x"===this.dim?0:1]),t)},toLocalCoord:null,toGlobalCoord:null},i.inherits(o,r);var a=o;e.exports=a},z3wO:function(e,t,n){e.exports=function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/",n(n.s=73)}({0:function(e,t,n){"use strict";function i(e,t,n,i,r,o,a,s){var l,c="function"==typeof e?e.options:e;if(t&&(c.render=t,c.staticRenderFns=n,c._compiled=!0),i&&(c.functional=!0),o&&(c._scopeId="data-v-"+o),a?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},c._ssrRegister=l):r&&(l=s?function(){r.call(this,this.$root.$options.shadowRoot)}:r),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(e,t){return l.call(t),u(e,t)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:e,options:c}}n.d(t,"a",function(){return i})},11:function(e,t){e.exports=n("BEcG")},21:function(e,t){e.exports=n("hUGL")},4:function(e,t){e.exports=n("mQu0")},73:function(e,t,n){"use strict";n.r(t);var i=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{class:["textarea"===e.type?"el-textarea":"el-input",e.inputSize?"el-input--"+e.inputSize:"",{"is-disabled":e.inputDisabled,"is-exceed":e.inputExceed,"el-input-group":e.$slots.prepend||e.$slots.append,"el-input-group--append":e.$slots.append,"el-input-group--prepend":e.$slots.prepend,"el-input--prefix":e.$slots.prefix||e.prefixIcon,"el-input--suffix":e.$slots.suffix||e.suffixIcon||e.clearable||e.showPassword}],on:{mouseenter:function(t){e.hovering=!0},mouseleave:function(t){e.hovering=!1}}},["textarea"!==e.type?[e.$slots.prepend?n("div",{staticClass:"el-input-group__prepend"},[e._t("prepend")],2):e._e(),"textarea"!==e.type?n("input",e._b({ref:"input",staticClass:"el-input__inner",attrs:{tabindex:e.tabindex,type:e.showPassword?e.passwordVisible?"text":"password":e.type,disabled:e.inputDisabled,readonly:e.readonly,autocomplete:e.autoComplete||e.autocomplete,"aria-label":e.label},on:{compositionstart:e.handleCompositionStart,compositionupdate:e.handleCompositionUpdate,compositionend:e.handleCompositionEnd,input:e.handleInput,focus:e.handleFocus,blur:e.handleBlur,change:e.handleChange}},"input",e.$attrs,!1)):e._e(),e.$slots.prefix||e.prefixIcon?n("span",{staticClass:"el-input__prefix"},[e._t("prefix"),e.prefixIcon?n("i",{staticClass:"el-input__icon",class:e.prefixIcon}):e._e()],2):e._e(),e.getSuffixVisible()?n("span",{staticClass:"el-input__suffix"},[n("span",{staticClass:"el-input__suffix-inner"},[e.showClear&&e.showPwdVisible&&e.isWordLimitVisible?e._e():[e._t("suffix"),e.suffixIcon?n("i",{staticClass:"el-input__icon",class:e.suffixIcon}):e._e()],e.showClear?n("i",{staticClass:"el-input__icon el-icon-circle-close el-input__clear",on:{mousedown:function(e){e.preventDefault()},click:e.clear}}):e._e(),e.showPwdVisible?n("i",{staticClass:"el-input__icon el-icon-view el-input__clear",on:{click:e.handlePasswordVisible}}):e._e(),e.isWordLimitVisible?n("span",{staticClass:"el-input__count"},[n("span",{staticClass:"el-input__count-inner"},[e._v("\n "+e._s(e.textLength)+"/"+e._s(e.upperLimit)+"\n ")])]):e._e()],2),e.validateState?n("i",{staticClass:"el-input__icon",class:["el-input__validateIcon",e.validateIcon]}):e._e()]):e._e(),e.$slots.append?n("div",{staticClass:"el-input-group__append"},[e._t("append")],2):e._e()]:n("textarea",e._b({ref:"textarea",staticClass:"el-textarea__inner",style:e.textareaStyle,attrs:{tabindex:e.tabindex,disabled:e.inputDisabled,readonly:e.readonly,autocomplete:e.autoComplete||e.autocomplete,"aria-label":e.label},on:{compositionstart:e.handleCompositionStart,compositionupdate:e.handleCompositionUpdate,compositionend:e.handleCompositionEnd,input:e.handleInput,focus:e.handleFocus,blur:e.handleBlur,change:e.handleChange}},"textarea",e.$attrs,!1)),e.isWordLimitVisible&&"textarea"===e.type?n("span",{staticClass:"el-input__count"},[e._v(e._s(e.textLength)+"/"+e._s(e.upperLimit))]):e._e()],2)};i._withStripped=!0;var r=n(4),o=n.n(r),a=n(11),s=n.n(a),l=void 0,c="\n height:0 !important;\n visibility:hidden !important;\n overflow:hidden !important;\n position:absolute !important;\n z-index:-1000 !important;\n top:0 !important;\n right:0 !important\n",u=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing"];function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;l||(l=document.createElement("textarea"),document.body.appendChild(l));var i=function(e){var t=window.getComputedStyle(e),n=t.getPropertyValue("box-sizing"),i=parseFloat(t.getPropertyValue("padding-bottom"))+parseFloat(t.getPropertyValue("padding-top")),r=parseFloat(t.getPropertyValue("border-bottom-width"))+parseFloat(t.getPropertyValue("border-top-width"));return{contextStyle:u.map(function(e){return e+":"+t.getPropertyValue(e)}).join(";"),paddingSize:i,borderSize:r,boxSizing:n}}(e),r=i.paddingSize,o=i.borderSize,a=i.boxSizing,s=i.contextStyle;l.setAttribute("style",s+";"+c),l.value=e.value||e.placeholder||"";var d=l.scrollHeight,h={};"border-box"===a?d+=o:"content-box"===a&&(d-=r),l.value="";var f=l.scrollHeight-r;if(null!==t){var p=f*t;"border-box"===a&&(p=p+r+o),d=Math.max(p,d),h.minHeight=p+"px"}if(null!==n){var m=f*n;"border-box"===a&&(m=m+r+o),d=Math.min(m,d)}return h.height=d+"px",l.parentNode&&l.parentNode.removeChild(l),l=null,h}var h=n(9),f=n.n(h),p=n(21),m={name:"ElInput",componentName:"ElInput",mixins:[o.a,s.a],inheritAttrs:!1,inject:{elForm:{default:""},elFormItem:{default:""}},data:function(){return{textareaCalcStyle:{},hovering:!1,focused:!1,isComposing:!1,passwordVisible:!1}},props:{value:[String,Number],size:String,resize:String,form:String,disabled:Boolean,readonly:Boolean,type:{type:String,default:"text"},autosize:{type:[Boolean,Object],default:!1},autocomplete:{type:String,default:"off"},autoComplete:{type:String,validator:function(e){return!0}},validateEvent:{type:Boolean,default:!0},suffixIcon:String,prefixIcon:String,label:String,clearable:{type:Boolean,default:!1},showPassword:{type:Boolean,default:!1},showWordLimit:{type:Boolean,default:!1},tabindex:String},computed:{_elFormItemSize:function(){return(this.elFormItem||{}).elFormItemSize},validateState:function(){return this.elFormItem?this.elFormItem.validateState:""},needStatusIcon:function(){return!!this.elForm&&this.elForm.statusIcon},validateIcon:function(){return{validating:"el-icon-loading",success:"el-icon-circle-check",error:"el-icon-circle-close"}[this.validateState]},textareaStyle:function(){return f()({},this.textareaCalcStyle,{resize:this.resize})},inputSize:function(){return this.size||this._elFormItemSize||(this.$ELEMENT||{}).size},inputDisabled:function(){return this.disabled||(this.elForm||{}).disabled},nativeInputValue:function(){return null===this.value||void 0===this.value?"":String(this.value)},showClear:function(){return this.clearable&&!this.inputDisabled&&!this.readonly&&this.nativeInputValue&&(this.focused||this.hovering)},showPwdVisible:function(){return this.showPassword&&!this.inputDisabled&&!this.readonly&&(!!this.nativeInputValue||this.focused)},isWordLimitVisible:function(){return this.showWordLimit&&this.$attrs.maxlength&&("text"===this.type||"textarea"===this.type)&&!this.inputDisabled&&!this.readonly&&!this.showPassword},upperLimit:function(){return this.$attrs.maxlength},textLength:function(){return"number"==typeof this.value?String(this.value).length:(this.value||"").length},inputExceed:function(){return this.isWordLimitVisible&&this.textLength>this.upperLimit}},watch:{value:function(e){this.$nextTick(this.resizeTextarea),this.validateEvent&&this.dispatch("ElFormItem","el.form.change",[e])},nativeInputValue:function(){this.setNativeInputValue()},type:function(){var e=this;this.$nextTick(function(){e.setNativeInputValue(),e.resizeTextarea(),e.updateIconOffset()})}},methods:{focus:function(){this.getInput().focus()},blur:function(){this.getInput().blur()},getMigratingConfig:function(){return{props:{icon:"icon is removed, use suffix-icon / prefix-icon instead.","on-icon-click":"on-icon-click is removed."},events:{click:"click is removed."}}},handleBlur:function(e){this.focused=!1,this.$emit("blur",e),this.validateEvent&&this.dispatch("ElFormItem","el.form.blur",[this.value])},select:function(){this.getInput().select()},resizeTextarea:function(){if(!this.$isServer){var e=this.autosize;if("textarea"===this.type)if(e){var t=e.minRows,n=e.maxRows;this.textareaCalcStyle=d(this.$refs.textarea,t,n)}else this.textareaCalcStyle={minHeight:d(this.$refs.textarea).minHeight}}},setNativeInputValue:function(){var e=this.getInput();e&&e.value!==this.nativeInputValue&&(e.value=this.nativeInputValue)},handleFocus:function(e){this.focused=!0,this.$emit("focus",e)},handleCompositionStart:function(){this.isComposing=!0},handleCompositionUpdate:function(e){var t=e.target.value,n=t[t.length-1]||"";this.isComposing=!Object(p.isKorean)(n)},handleCompositionEnd:function(e){this.isComposing&&(this.isComposing=!1,this.handleInput(e))},handleInput:function(e){this.isComposing||e.target.value!==this.nativeInputValue&&(this.$emit("input",e.target.value),this.$nextTick(this.setNativeInputValue))},handleChange:function(e){this.$emit("change",e.target.value)},calcIconOffset:function(e){var t=[].slice.call(this.$el.querySelectorAll(".el-input__"+e)||[]);if(t.length){for(var n=null,i=0;i<t.length;i++)if(t[i].parentNode===this.$el){n=t[i];break}if(n){var r={suffix:"append",prefix:"prepend"}[e];this.$slots[r]?n.style.transform="translateX("+("suffix"===e?"-":"")+this.$el.querySelector(".el-input-group__"+r).offsetWidth+"px)":n.removeAttribute("style")}}},updateIconOffset:function(){this.calcIconOffset("prefix"),this.calcIconOffset("suffix")},clear:function(){this.$emit("input",""),this.$emit("change",""),this.$emit("clear")},handlePasswordVisible:function(){var e=this;this.passwordVisible=!this.passwordVisible,this.$nextTick(function(){e.focus()})},getInput:function(){return this.$refs.input||this.$refs.textarea},getSuffixVisible:function(){return this.$slots.suffix||this.suffixIcon||this.showClear||this.showPassword||this.isWordLimitVisible||this.validateState&&this.needStatusIcon}},created:function(){this.$on("inputSelect",this.select)},mounted:function(){this.setNativeInputValue(),this.resizeTextarea(),this.updateIconOffset()},updated:function(){this.$nextTick(this.updateIconOffset)}},g=n(0),v=Object(g.a)(m,i,[],!1,null,null,null);v.options.__file="packages/input/src/input.vue";var y=v.exports;y.install=function(e){e.component(y.name,y)};t.default=y},9:function(e,t){e.exports=n("+Gpz")}})},z8PH:function(e,t,n){var i=n("oEo5"),r=n("SSBM"),o=n("Jjzi"),a=n("kN/v");function s(e,t,n){this._model=e}function l(e,t,n,i){var r=n.calendarModel,o=n.seriesModel,a=r?r.coordinateSystem:o?o.coordinateSystem:null;return a===this?a[e](i):null}s.prototype={constructor:s,type:"calendar",dimensions:["time","value"],getDimensionsInfo:function(){return[{name:"time",type:"time"},"value"]},getRangeInfo:function(){return this._rangeInfo},getModel:function(){return this._model},getRect:function(){return this._rect},getCellWidth:function(){return this._sw},getCellHeight:function(){return this._sh},getOrient:function(){return this._orient},getFirstDayOfWeek:function(){return this._firstDayOfWeek},getDateInfo:function(e){var t=(e=o.parseDate(e)).getFullYear(),n=e.getMonth()+1;n=n<10?"0"+n:n;var i=e.getDate();i=i<10?"0"+i:i;var r=e.getDay();return{y:t,m:n,d:i,day:r=Math.abs((r+7-this.getFirstDayOfWeek())%7),time:e.getTime(),formatedDate:t+"-"+n+"-"+i,date:e}},getNextNDay:function(e,t){return 0===(t=t||0)?this.getDateInfo(e):((e=new Date(this.getDateInfo(e).time)).setDate(e.getDate()+t),this.getDateInfo(e))},update:function(e,t){this._firstDayOfWeek=+this._model.getModel("dayLabel").get("firstDay"),this._orient=this._model.get("orient"),this._lineWidth=this._model.getModel("itemStyle").getItemStyle().lineWidth||0,this._rangeInfo=this._getRangeInfo(this._initRangeOption());var n=this._rangeInfo.weeks||1,o=["width","height"],a=this._model.get("cellSize").slice(),s=this._model.getBoxLayoutParams(),l="horizontal"===this._orient?[n,7]:[7,n];i.each([0,1],function(e){d(a,e)&&(s[o[e]]=a[e]*l[e])});var c={width:t.getWidth(),height:t.getHeight()},u=this._rect=r.getLayoutRect(s,c);function d(e,t){return null!=e[t]&&"auto"!==e[t]}i.each([0,1],function(e){d(a,e)||(a[e]=u[o[e]]/l[e])}),this._sw=a[0],this._sh=a[1]},dataToPoint:function(e,t){i.isArray(e)&&(e=e[0]),null==t&&(t=!0);var n=this.getDateInfo(e),r=this._rangeInfo,o=n.formatedDate;if(t&&!(n.time>=r.start.time&&n.time<r.end.time+864e5))return[NaN,NaN];var a=n.day,s=this._getRangeInfo([r.start.time,o]).nthWeek;return"vertical"===this._orient?[this._rect.x+a*this._sw+this._sw/2,this._rect.y+s*this._sh+this._sh/2]:[this._rect.x+s*this._sw+this._sw/2,this._rect.y+a*this._sh+this._sh/2]},pointToData:function(e){var t=this.pointToDate(e);return t&&t.time},dataToRect:function(e,t){var n=this.dataToPoint(e,t);return{contentShape:{x:n[0]-(this._sw-this._lineWidth)/2,y:n[1]-(this._sh-this._lineWidth)/2,width:this._sw-this._lineWidth,height:this._sh-this._lineWidth},center:n,tl:[n[0]-this._sw/2,n[1]-this._sh/2],tr:[n[0]+this._sw/2,n[1]-this._sh/2],br:[n[0]+this._sw/2,n[1]+this._sh/2],bl:[n[0]-this._sw/2,n[1]+this._sh/2]}},pointToDate:function(e){var t=Math.floor((e[0]-this._rect.x)/this._sw)+1,n=Math.floor((e[1]-this._rect.y)/this._sh)+1,i=this._rangeInfo.range;return"vertical"===this._orient?this._getDateByWeeksAndDay(n,t-1,i):this._getDateByWeeksAndDay(t,n-1,i)},convertToPixel:i.curry(l,"dataToPoint"),convertFromPixel:i.curry(l,"pointToData"),_initRangeOption:function(){var e=this._model.get("range"),t=e;if(i.isArray(t)&&1===t.length&&(t=t[0]),/^\d{4}$/.test(t)&&(e=[t+"-01-01",t+"-12-31"]),/^\d{4}[\/|-]\d{1,2}$/.test(t)){var n=this.getDateInfo(t),r=n.date;r.setMonth(r.getMonth()+1);var o=this.getNextNDay(r,-1);e=[n.formatedDate,o.formatedDate]}/^\d{4}[\/|-]\d{1,2}[\/|-]\d{1,2}$/.test(t)&&(e=[t,t]);var a=this._getRangeInfo(e);return a.start.time>a.end.time&&e.reverse(),e},_getRangeInfo:function(e){var t;(e=[this.getDateInfo(e[0]),this.getDateInfo(e[1])])[0].time>e[1].time&&(t=!0,e.reverse());var n=Math.floor(e[1].time/864e5)-Math.floor(e[0].time/864e5)+1,i=new Date(e[0].time),r=i.getDate(),o=e[1].date.getDate();i.setDate(r+n-1);var a=i.getDate();if(a!==o)for(var s=i.getTime()-e[1].time>0?1:-1;(a=i.getDate())!==o&&(i.getTime()-e[1].time)*s>0;)n-=s,i.setDate(a-s);var l=Math.floor((n+e[0].day+6)/7),c=t?1-l:l-1;return t&&e.reverse(),{range:[e[0].formatedDate,e[1].formatedDate],start:e[0],end:e[1],allDay:n,weeks:l,nthWeek:c,fweek:e[0].day,lweek:e[1].day}},_getDateByWeeksAndDay:function(e,t,n){var i=this._getRangeInfo(n);if(e>i.weeks||0===e&&t<i.fweek||e===i.weeks&&t>i.lweek)return!1;var r=7*(e-1)-i.fweek+t,o=new Date(i.start.time);return o.setDate(i.start.d+r),this.getDateInfo(o)}},s.dimensions=s.prototype.dimensions,s.getDimensionsInfo=s.prototype.getDimensionsInfo,s.create=function(e,t){var n=[];return e.eachComponent("calendar",function(i){var r=new s(i,e,t);n.push(r),i.coordinateSystem=r}),e.eachSeries(function(e){"calendar"===e.get("coordinateSystem")&&(e.coordinateSystem=n[e.get("calendarIndex")||0])}),n},a.register("calendar",s);var c=s;e.exports=c},zBii:function(e,t,n){e.exports=function(){var e=e||function(e,t){var n=Object.create||function(){function e(){}return function(t){var n;return e.prototype=t,n=new e,e.prototype=null,n}}(),i={},r=i.lib={},o=r.Base={extend:function(e){var t=n(this);return e&&t.mixIn(e),t.hasOwnProperty("init")&&this.init!==t.init||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},a=r.WordArray=o.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=void 0!=t?t:4*e.length},toString:function(e){return(e||l).stringify(this)},concat:function(e){var t=this.words,n=e.words,i=this.sigBytes,r=e.sigBytes;if(this.clamp(),i%4)for(var o=0;o<r;o++){var a=n[o>>>2]>>>24-o%4*8&255;t[i+o>>>2]|=a<<24-(i+o)%4*8}else for(var o=0;o<r;o+=4)t[i+o>>>2]=n[o>>>2];return this.sigBytes+=r,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=o.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n,i=[],r=function(t){var t=t,n=987654321,i=4294967295;return function(){var r=((n=36969*(65535&n)+(n>>16)&i)<<16)+(t=18e3*(65535&t)+(t>>16)&i)&i;return r/=4294967296,(r+=.5)*(e.random()>.5?1:-1)}},o=0;o<t;o+=4){var s=r(4294967296*(n||e.random()));n=987654071*s(),i.push(4294967296*s()|0)}return new a.init(i,t)}}),s=i.enc={},l=s.Hex={stringify:function(e){for(var t=e.words,n=e.sigBytes,i=[],r=0;r<n;r++){var o=t[r>>>2]>>>24-r%4*8&255;i.push((o>>>4).toString(16)),i.push((15&o).toString(16))}return i.join("")},parse:function(e){for(var t=e.length,n=[],i=0;i<t;i+=2)n[i>>>3]|=parseInt(e.substr(i,2),16)<<24-i%8*4;return new a.init(n,t/2)}},c=s.Latin1={stringify:function(e){for(var t=e.words,n=e.sigBytes,i=[],r=0;r<n;r++){var o=t[r>>>2]>>>24-r%4*8&255;i.push(String.fromCharCode(o))}return i.join("")},parse:function(e){for(var t=e.length,n=[],i=0;i<t;i++)n[i>>>2]|=(255&e.charCodeAt(i))<<24-i%4*8;return new a.init(n,t)}},u=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(c.stringify(e)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(e){return c.parse(unescape(encodeURIComponent(e)))}},d=r.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new a.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=u.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,i=n.words,r=n.sigBytes,o=this.blockSize,s=4*o,l=r/s,c=(l=t?e.ceil(l):e.max((0|l)-this._minBufferSize,0))*o,u=e.min(4*c,r);if(c){for(var d=0;d<c;d+=o)this._doProcessBlock(i,d);var h=i.splice(0,c);n.sigBytes-=u}return new a.init(h,u)},clone:function(){var e=o.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0}),h=(r.Hasher=d.extend({cfg:o.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){d.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){e&&this._append(e);var t=this._doFinalize();return t},blockSize:16,_createHelper:function(e){return function(t,n){return new e.init(n).finalize(t)}},_createHmacHelper:function(e){return function(t,n){return new h.HMAC.init(e,n).finalize(t)}}}),i.algo={});return i}(Math);return e}()},zCY1:function(e,t){var n=["itemStyle","borderColor"];e.exports=function(e,t){var i=e.get("color");e.eachRawSeriesByType("boxplot",function(t){var r=i[t.seriesIndex%i.length],o=t.getData();o.setVisual({legendSymbol:"roundRect",color:t.get(n)||r}),e.isSeriesFiltered(t)||o.each(function(e){var t=o.getItemModel(e);o.setItemVisual(e,{color:t.get(n,!0)})})})}},zYK1:function(e,t,n){n("IPcT").__DEV__;var i=n("oEo5"),r=i.each,o=i.createHashMap,a=n("ICLB"),s=n("6/iG"),l=n("Gz2F"),c=n("ie0D"),u={geoJSON:s,svg:l},d={load:function(e,t,n){var i,a=[],s=o(),l=o(),d=f(e);return r(d,function(o){var c=u[o.type].load(e,o,n);r(c.regions,function(e){var n=e.name;t&&t.hasOwnProperty(n)&&(e=e.cloneShallow(n=t[n])),a.push(e),s.set(n,e),l.set(n,e.center)});var d=c.boundingRect;d&&(i?i.union(d):i=d.clone())}),{regions:a,regionsMap:s,nameCoordMap:l,boundingRect:i||new c(0,0,0,0)}},makeGraphic:h("makeGraphic"),removeGraphic:h("removeGraphic")};function h(e){return function(t,n){var i=f(t),o=[];return r(i,function(i){var r=u[i.type][e];r&&o.push(r(t,i,n))}),o}}function f(e){return a.retrieveMap(e)||[]}e.exports=d},zYTh:function(e,t,n){var i=n("Q6Bq");i.registerAction({type:"axisAreaSelect",event:"axisAreaSelected"},function(e,t){t.eachComponent({mainType:"parallelAxis",query:e},function(t){t.axis.model.setActiveIntervals(e.intervals)})}),i.registerAction("parallelAxisExpand",function(e,t){t.eachComponent({mainType:"parallel",query:e},function(t){t.setAxisExpand(e)})})},zYjg:function(e,t,n){var i=n("oEo5"),r=n("8Bkq"),o=n("XTQn"),a=n("4uqo"),s=n("Wa83"),l=n("342z"),c=n("G+ZC"),u=n("vOhS");t.Image=u;var d=n("TmiR");t.Group=d;var h=n("ode/");t.Text=h;var f=n("a9RO");t.Circle=f;var p=n("o9iD");t.Sector=p;var m=n("oAve");t.Ring=m;var g=n("VOjM");t.Polygon=g;var v=n("k++z");t.Polyline=v;var y=n("7JZK");t.Rect=y;var b=n("tV39");t.Line=b;var _=n("JoY0");t.BezierCurve=_;var x=n("QI2D");t.Arc=x;var w=n("RA7y");t.CompoundPath=w;var S=n("I1OY");t.LinearGradient=S;var C=n("GS3z");t.RadialGradient=C;var k=n("ie0D");t.BoundingRect=k;var M=n("o2YK");t.IncrementalDisplayable=M;var O=n("afA4"),D=Math.max,T=Math.min,A={},I=1,E="emphasis",P="normal",L=1,N={},B={};function z(e,t){B[e]=t}function $(e,t,n,i){var o=r.createFromString(e,t);return n&&("center"===i&&(n=j(n,o.getBoundingRect())),F(o,n)),o}function j(e,t){var n,i=t.width/t.height,r=e.height*i;return n=r<=e.width?e.height:(r=e.width)/i,{x:e.x+e.width/2-r/2,y:e.y+e.height/2-n/2,width:r,height:n}}var R=r.mergePath;function F(e,t){if(e.applyTransform){var n=e.getBoundingRect().calculateTransform(t);e.applyTransform(n)}}var V=O.subPixelOptimize;function H(e){return null!=e&&"none"!==e}var W=i.createHashMap(),G=0;function q(e){var t=e.__hoverStl;if(t&&!e.__highlighted){var n=e.__zr,i=e.useHoverLayer&&n&&"canvas"===n.painter.type;if(e.__highlighted=i?"layer":"plain",!(e.isGroup||!n&&e.useHoverLayer)){var r=e,o=e.style;i&&(o=(r=n.addHover(e)).style),le(o),i||function(e){if(e.__hoverStlDirty){e.__hoverStlDirty=!1;var t=e.__hoverStl;if(t){var n=e.__cachedNormalStl={};e.__cachedNormalZ2=e.z2;var i=e.style;for(var r in t)null!=t[r]&&(n[r]=i[r]);n.fill=i.fill,n.stroke=i.stroke}else e.__cachedNormalStl=e.__cachedNormalZ2=null}}(r),o.extendFrom(t),U(o,t,"fill"),U(o,t,"stroke"),se(o),i||(e.dirty(!1),e.z2+=I)}}}function U(e,t,n){!H(t[n])&&H(e[n])&&(e[n]=function(e){if("string"!=typeof e)return e;var t=W.get(e);return t||(t=o.lift(e,-.1),G<1e4&&(W.set(e,t),G++)),t}(e[n]))}function Y(e){var t=e.__highlighted;if(t&&(e.__highlighted=!1,!e.isGroup))if("layer"===t)e.__zr&&e.__zr.removeHover(e);else{var n=e.style,i=e.__cachedNormalStl;i&&(le(n),e.setStyle(i),se(n));var r=e.__cachedNormalZ2;null!=r&&e.z2-r===I&&(e.z2=r)}}function K(e,t,n){var i,r=P,o=P;e.__highlighted&&(r=E,i=!0),t(e,n),e.__highlighted&&(o=E,i=!0),e.isGroup&&e.traverse(function(e){!e.isGroup&&t(e,n)}),i&&e.__highDownOnUpdate&&e.__highDownOnUpdate(r,o)}function X(e,t){t=e.__hoverStl=!1!==t&&(e.hoverStyle||t||{}),e.__hoverStlDirty=!0,e.__highlighted&&(e.__cachedNormalStl=null,Y(e),q(e))}function Z(e){!te(this,e)&&!this.__highByOuter&&K(this,q)}function Q(e){!te(this,e)&&!this.__highByOuter&&K(this,Y)}function J(e){this.__highByOuter|=1<<(e||0),K(this,q)}function ee(e){!(this.__highByOuter&=~(1<<(e||0)))&&K(this,Y)}function te(e,t){return e.__highDownSilentOnTouch&&t.zrByTouch}function ne(e,t){var n=!1===t;if(e.__highDownSilentOnTouch=e.highDownSilentOnTouch,e.__highDownOnUpdate=e.highDownOnUpdate,!n||e.__highDownDispatcher){var i=n?"off":"on";e[i]("mouseover",Z)[i]("mouseout",Q),e[i]("emphasis",J)[i]("normal",ee),e.__highByOuter=e.__highByOuter||0,e.__highDownDispatcher=!n}}function ie(e,t,n,r,o){return re(e,t,r,o),n&&i.extend(e,n),e}function re(e,t,n,r){if((n=n||A).isRectText){var o;n.getTextPosition?o=n.getTextPosition(t,r):"outside"===(o=t.getShallow("position")||(r?null:"inside"))&&(o="top"),e.textPosition=o,e.textOffset=t.getShallow("offset");var a=t.getShallow("rotate");null!=a&&(a*=Math.PI/180),e.textRotation=a,e.textDistance=i.retrieve2(t.getShallow("distance"),r?null:5)}var s,l=t.ecModel,c=l&&l.option.textStyle,u=function(e){var t;for(;e&&e!==e.ecModel;){var n=(e.option||A).rich;if(n)for(var i in t=t||{},n)n.hasOwnProperty(i)&&(t[i]=1);e=e.parentModel}return t}(t);if(u)for(var d in s={},u)if(u.hasOwnProperty(d)){var h=t.getModel(["rich",d]);oe(s[d]={},h,c,n,r)}return e.rich=s,oe(e,t,c,n,r,!0),n.forceRich&&!n.textStyle&&(n.textStyle={}),e}function oe(e,t,n,r,o,a){n=!o&&n||A,e.textFill=ae(t.getShallow("color"),r)||n.color,e.textStroke=ae(t.getShallow("textBorderColor"),r)||n.textBorderColor,e.textStrokeWidth=i.retrieve2(t.getShallow("textBorderWidth"),n.textBorderWidth),o||(a&&(e.insideRollbackOpt=r,se(e)),null==e.textFill&&(e.textFill=r.autoColor)),e.fontStyle=t.getShallow("fontStyle")||n.fontStyle,e.fontWeight=t.getShallow("fontWeight")||n.fontWeight,e.fontSize=t.getShallow("fontSize")||n.fontSize,e.fontFamily=t.getShallow("fontFamily")||n.fontFamily,e.textAlign=t.getShallow("align"),e.textVerticalAlign=t.getShallow("verticalAlign")||t.getShallow("baseline"),e.textLineHeight=t.getShallow("lineHeight"),e.textWidth=t.getShallow("width"),e.textHeight=t.getShallow("height"),e.textTag=t.getShallow("tag"),a&&r.disableBox||(e.textBackgroundColor=ae(t.getShallow("backgroundColor"),r),e.textPadding=t.getShallow("padding"),e.textBorderColor=ae(t.getShallow("borderColor"),r),e.textBorderWidth=t.getShallow("borderWidth"),e.textBorderRadius=t.getShallow("borderRadius"),e.textBoxShadowColor=t.getShallow("shadowColor"),e.textBoxShadowBlur=t.getShallow("shadowBlur"),e.textBoxShadowOffsetX=t.getShallow("shadowOffsetX"),e.textBoxShadowOffsetY=t.getShallow("shadowOffsetY")),e.textShadowColor=t.getShallow("textShadowColor")||n.textShadowColor,e.textShadowBlur=t.getShallow("textShadowBlur")||n.textShadowBlur,e.textShadowOffsetX=t.getShallow("textShadowOffsetX")||n.textShadowOffsetX,e.textShadowOffsetY=t.getShallow("textShadowOffsetY")||n.textShadowOffsetY}function ae(e,t){return"auto"!==e?e:t&&t.autoColor?t.autoColor:null}function se(e){var t,n=e.textPosition,i=e.insideRollbackOpt;if(i&&null==e.textFill){var r=i.autoColor,o=i.isRectText,a=i.useInsideStyle,s=!1!==a&&(!0===a||o&&n&&"string"==typeof n&&n.indexOf("inside")>=0),l=!s&&null!=r;(s||l)&&(t={textFill:e.textFill,textStroke:e.textStroke,textStrokeWidth:e.textStrokeWidth}),s&&(e.textFill="#fff",null==e.textStroke&&(e.textStroke=r,null==e.textStrokeWidth&&(e.textStrokeWidth=2))),l&&(e.textFill=r)}e.insideRollback=t}function le(e){var t=e.insideRollback;t&&(e.textFill=t.textFill,e.textStroke=t.textStroke,e.textStrokeWidth=t.textStrokeWidth,e.insideRollback=null)}function ce(e,t,n,i,r,o){if("function"==typeof r&&(o=r,r=null),i&&i.isAnimationEnabled()){var a=e?"Update":"",s=i.getShallow("animationDuration"+a),l=i.getShallow("animationEasing"+a),c=i.getShallow("animationDelay"+a);"function"==typeof c&&(c=c(r,i.getAnimationDelayParams?i.getAnimationDelayParams(t,r):null)),"function"==typeof s&&(s=s(r)),s>0?t.animateTo(n,s,c||0,l,o,!!o):(t.stopAnimation(),t.attr(n),o&&o())}else t.stopAnimation(),t.attr(n),o&&o()}function ue(e,t,n,i,r){ce(!0,e,t,n,i,r)}function de(e,t,n){return t&&!i.isArrayLike(t)&&(t=c.getLocalTransform(t)),n&&(t=a.invert([],t)),s.applyTransform([],e,t)}function he(e,t,n,i,r,o,a,s){var l=n-e,c=i-t,u=a-r,d=s-o,h=fe(u,d,l,c);if(function(e){return e<=1e-6&&e>=-1e-6}(h))return!1;var f=e-r,p=t-o,m=fe(f,p,l,c)/h;if(m<0||m>1)return!1;var g=fe(f,p,u,d)/h;return!(g<0||g>1)}function fe(e,t,n,i){return e*i-n*t}z("circle",f),z("sector",p),z("ring",m),z("polygon",g),z("polyline",v),z("rect",y),z("line",b),z("bezierCurve",_),z("arc",x),t.Z2_EMPHASIS_LIFT=I,t.CACHED_LABEL_STYLE_PROPERTIES={color:"textFill",textBorderColor:"textStroke",textBorderWidth:"textStrokeWidth"},t.extendShape=function(e){return l.extend(e)},t.extendPath=function(e,t){return r.extendFromString(e,t)},t.registerShape=z,t.getShapeClass=function(e){if(B.hasOwnProperty(e))return B[e]},t.makePath=$,t.makeImage=function(e,t,n){var i=new u({style:{image:e,x:t.x,y:t.y,width:t.width,height:t.height},onload:function(e){if("center"===n){var r={width:e.width,height:e.height};i.setStyle(j(t,r))}}});return i},t.mergePath=R,t.resizePath=F,t.subPixelOptimizeLine=function(e){return O.subPixelOptimizeLine(e.shape,e.shape,e.style),e},t.subPixelOptimizeRect=function(e){return O.subPixelOptimizeRect(e.shape,e.shape,e.style),e},t.subPixelOptimize=V,t.setElementHoverStyle=X,t.setHoverStyle=function(e,t){ne(e,!0),K(e,X,t)},t.setAsHighDownDispatcher=ne,t.isHighDownDispatcher=function(e){return!(!e||!e.__highDownDispatcher)},t.getHighlightDigit=function(e){var t=N[e];return null==t&&L<=32&&(t=N[e]=L++),t},t.setLabelStyle=function(e,t,n,r,o,a,s){var l,c=(o=o||A).labelFetcher,u=o.labelDataIndex,d=o.labelDimIndex,h=o.labelProp,f=n.getShallow("show"),p=r.getShallow("show");(f||p)&&(c&&(l=c.getFormattedLabel(u,"normal",null,d,h)),null==l&&(l=i.isFunction(o.defaultText)?o.defaultText(u,o):o.defaultText));var m=f?l:null,g=p?i.retrieve2(c?c.getFormattedLabel(u,"emphasis",null,d,h):null,l):null;null==m&&null==g||(ie(e,n,a,o),ie(t,r,s,o,!0)),e.text=m,t.text=g},t.modifyLabelStyle=function(e,t,n){var r=e.style;t&&(le(r),e.setStyle(t),se(r)),r=e.__hoverStl,n&&r&&(le(r),i.extend(r,n),se(r))},t.setTextStyle=ie,t.setText=function(e,t,n){var i,r={isRectText:!0};!1===n?i=!0:r.autoColor=n,re(e,t,r,i)},t.getFont=function(e,t){var n=t&&t.getModel("textStyle");return i.trim([e.fontStyle||n&&n.getShallow("fontStyle")||"",e.fontWeight||n&&n.getShallow("fontWeight")||"",(e.fontSize||n&&n.getShallow("fontSize")||12)+"px",e.fontFamily||n&&n.getShallow("fontFamily")||"sans-serif"].join(" "))},t.updateProps=ue,t.initProps=function(e,t,n,i,r){ce(!1,e,t,n,i,r)},t.getTransform=function(e,t){for(var n=a.identity([]);e&&e!==t;)a.mul(n,e.getLocalTransform(),n),e=e.parent;return n},t.applyTransform=de,t.transformDirection=function(e,t,n){var i=0===t[4]||0===t[5]||0===t[0]?1:Math.abs(2*t[4]/t[0]),r=0===t[4]||0===t[5]||0===t[2]?1:Math.abs(2*t[4]/t[2]),o=["left"===e?-i:"right"===e?i:0,"top"===e?-r:"bottom"===e?r:0];return o=de(o,t,n),Math.abs(o[0])>Math.abs(o[1])?o[0]>0?"right":"left":o[1]>0?"bottom":"top"},t.groupTransition=function(e,t,n,r){if(e&&t){var o=function(e){var t={};return e.traverse(function(e){!e.isGroup&&e.anid&&(t[e.anid]=e)}),t}(e);t.traverse(function(e){if(!e.isGroup&&e.anid){var t=o[e.anid];if(t){var i=a(e);e.attr(a(t)),ue(e,i,n,e.dataIndex)}}})}function a(e){var t={position:s.clone(e.position),rotation:e.rotation};return e.shape&&(t.shape=i.extend({},e.shape)),t}},t.clipPointsByRect=function(e,t){return i.map(e,function(e){var n=e[0];n=D(n,t.x),n=T(n,t.x+t.width);var i=e[1];return i=D(i,t.y),[n,i=T(i,t.y+t.height)]})},t.clipRectByRect=function(e,t){var n=D(e.x,t.x),i=T(e.x+e.width,t.x+t.width),r=D(e.y,t.y),o=T(e.y+e.height,t.y+t.height);if(i>=n&&o>=r)return{x:n,y:r,width:i-n,height:o-r}},t.createIcon=function(e,t,n){var r=(t=i.extend({rectHover:!0},t)).style={strokeNoScale:!0};if(n=n||{x:-1,y:-1,width:2,height:2},e)return 0===e.indexOf("image://")?(r.image=e.slice(8),i.defaults(r,n),new u(t)):$(e.replace("path://",""),t,n,"center")},t.linePolygonIntersect=function(e,t,n,i,r){for(var o=0,a=r[r.length-1];o<r.length;o++){var s=r[o];if(he(e,t,n,i,s[0],s[1],a[0],a[1]))return!0;a=s}},t.lineLineIntersect=he},zfxY:function(e,t,n){var i="\0_ec_interaction_mutex";function r(e){return e[i]||(e[i]={})}n("Q6Bq").registerAction({type:"takeGlobalCursor",event:"globalCursorTaken",update:"update"},function(){}),t.take=function(e,t,n){r(e)[t]=n},t.release=function(e,t,n){var i=r(e);i[t]===n&&(i[t]=null)},t.isTaken=function(e,t){return!!r(e)[t]}},zpmP:function(e,t){var n=e.exports={version:"2.6.12"};"number"==typeof __e&&(__e=n)},"zw+m":function(e,t,n){var i=n("oEo5"),r=n("EgZf"),o=function(e,t,n,i,o){r.call(this,e,t,n),this.type=i||"value",this.axisIndex=o};o.prototype={constructor:o,model:null,isHorizontal:function(){return"horizontal"!==this.coordinateSystem.getModel().get("layout")}},i.inherits(o,r);var a=o;e.exports=a}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/dUiO.ed59e9e7.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/dUiO.ed59e9e7.js index 1e261bcc5..f9e9c545e 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/dUiO.ed59e9e7.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/dUiO.ed59e9e7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["dUiO"],{dUiO:function(e,n,i){"use strict";i.r(n),i.d(n,"conf",function(){return t}),i.d(n,"language",function(){return o});var t={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},o={defaultToken:"",tokenPostfix:".kt",keywords:["as","as?","break","class","continue","do","else","false","for","fun","if","in","!in","interface","is","!is","null","object","package","return","super","this","throw","true","try","typealias","val","var","when","while","by","catch","constructor","delegate","dynamic","field","file","finally","get","import","init","param","property","receiver","set","setparam","where","actual","abstract","annotation","companion","const","crossinline","data","enum","expect","external","final","infix","inline","inner","internal","lateinit","noinline","open","operator","out","override","private","protected","public","reified","sealed","suspend","tailrec","vararg","field","it"],operators:["+","-","*","/","%","=","+=","-=","*=","/=","%=","++","--","&&","||","!","==","!=","===","!==",">","<","<=",">=","[","]","!!","?.","?:","::","..",":","?","->","@",";","$","_"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[A-Z][\w\$]*/,"type.identifier"],[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/0[xX](@hexdigits)[Ll]?/,"number.hex"],[/0(@octaldigits)[Ll]?/,"number.octal"],[/0[bB](@binarydigits)[Ll]?/,"number.binary"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string","@multistring"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@javadoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment","@comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],javadoc:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc","@push"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],multistring:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"""/,"string","@pop"],[/./,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["dUiO"],{dUiO:function(e,n,i){"use strict";i.r(n),i.d(n,"conf",function(){return t}),i.d(n,"language",function(){return o});var t={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},o={defaultToken:"",tokenPostfix:".kt",keywords:["as","as?","break","class","continue","do","else","false","for","fun","if","in","!in","interface","is","!is","null","object","package","return","super","this","throw","true","try","typealias","val","var","when","while","by","catch","constructor","delegate","dynamic","field","file","finally","get","import","init","param","property","receiver","set","setparam","where","actual","abstract","annotation","companion","const","crossinline","data","enum","expect","external","final","infix","inline","inner","internal","lateinit","noinline","open","operator","out","override","private","protected","public","reified","sealed","suspend","tailrec","vararg","field","it"],operators:["+","-","*","/","%","=","+=","-=","*=","/=","%=","++","--","&&","||","!","==","!=","===","!==",">","<","<=",">=","[","]","!!","?.","?:","::","..",":","?","->","@",";","$","_"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[A-Z][\w\$]*/,"type.identifier"],[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/0[xX](@hexdigits)[Ll]?/,"number.hex"],[/0(@octaldigits)[Ll]?/,"number.octal"],[/0[bB](@binarydigits)[Ll]?/,"number.binary"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string","@multistring"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@javadoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment","@comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],javadoc:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc","@push"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],multistring:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"""/,"string","@pop"],[/./,"string"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/eFaw.16775445.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/eFaw.16775445.js index e6bbef5f9..d11fc8efb 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/eFaw.16775445.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/eFaw.16775445.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["eFaw"],{eFaw:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",function(){return n}),o.d(t,"language",function(){return r});var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["{","}"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\{\\$REGION(\\s\\'.*\\')?\\}"),end:new RegExp("^\\s*\\{\\$ENDREGION\\}")}}},r={defaultToken:"",tokenPostfix:".pascal",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["absolute","abstract","all","and_then","array","as","asm","attribute","begin","bindable","case","class","const","contains","default","div","else","end","except","exports","external","far","file","finalization","finally","forward","generic","goto","if","implements","import","in","index","inherited","initialization","interrupt","is","label","library","mod","module","name","near","not","object","of","on","only","operator","or_else","otherwise","override","package","packed","pow","private","program","protected","public","published","interface","implementation","qualified","read","record","resident","requires","resourcestring","restricted","segment","set","shl","shr","specialize","stored","then","threadvar","to","try","type","unit","uses","var","view","virtual","dynamic","overload","reintroduce","with","write","xor","true","false","procedure","function","constructor","destructor","property","break","continue","exit","abort","while","do","for","raise","repeat","until"],typeKeywords:["boolean","double","byte","integer","shortint","char","longint","float","string"],operators:["=",">","<","<=",">=","<>",":",":=","and","or","+","-","*","/","@","&","^","%"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\*\}]+/,"comment"],[/\}/,"comment","@pop"],[/[\{]/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\{/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["eFaw"],{eFaw:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",function(){return n}),o.d(t,"language",function(){return r});var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["{","}"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\{\\$REGION(\\s\\'.*\\')?\\}"),end:new RegExp("^\\s*\\{\\$ENDREGION\\}")}}},r={defaultToken:"",tokenPostfix:".pascal",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["absolute","abstract","all","and_then","array","as","asm","attribute","begin","bindable","case","class","const","contains","default","div","else","end","except","exports","external","far","file","finalization","finally","forward","generic","goto","if","implements","import","in","index","inherited","initialization","interrupt","is","label","library","mod","module","name","near","not","object","of","on","only","operator","or_else","otherwise","override","package","packed","pow","private","program","protected","public","published","interface","implementation","qualified","read","record","resident","requires","resourcestring","restricted","segment","set","shl","shr","specialize","stored","then","threadvar","to","try","type","unit","uses","var","view","virtual","dynamic","overload","reintroduce","with","write","xor","true","false","procedure","function","constructor","destructor","property","break","continue","exit","abort","while","do","for","raise","repeat","until"],typeKeywords:["boolean","double","byte","integer","shortint","char","longint","float","string"],operators:["=",">","<","<=",">=","<>",":",":=","and","or","+","-","*","/","@","&","^","%"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\*\}]+/,"comment"],[/\}/,"comment","@pop"],[/[\{]/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\{/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/eyLi.74e2b880.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/eyLi.74e2b880.js index 7dab2919c..35db48025 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/eyLi.74e2b880.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/eyLi.74e2b880.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["eyLi"],{eyLi:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return a});var o={comments:{lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}],folding:{offSide:!0}},a={defaultToken:"",tokenPostfix:".pug",ignoreCase:!0,brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],keywords:["append","block","case","default","doctype","each","else","extends","for","if","in","include","mixin","typeof","unless","var","when"],tags:["a","abbr","acronym","address","area","article","aside","audio","b","base","basefont","bdi","bdo","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","command","datalist","dd","del","details","dfn","div","dl","dt","em","embed","fieldset","figcaption","figure","font","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","keygen","kbd","label","li","link","map","mark","menu","meta","meter","nav","noframes","noscript","object","ol","optgroup","option","output","p","param","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strike","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","tracks","tt","u","ul","video","wbr"],symbols:/[\+\-\*\%\&\|\!\=\/\.\,\:]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^(\s*)([a-zA-Z_-][\w-]*)/,{cases:{"$2@tags":{cases:{"@eos":["","tag"],"@default":["",{token:"tag",next:"@tag.$1"}]}},"$2@keywords":["",{token:"keyword.$2"}],"@default":["",""]}}],[/^(\s*)(#[a-zA-Z_-][\w-]*)/,{cases:{"@eos":["","tag.id"],"@default":["",{token:"tag.id",next:"@tag.$1"}]}}],[/^(\s*)(\.[a-zA-Z_-][\w-]*)/,{cases:{"@eos":["","tag.class"],"@default":["",{token:"tag.class",next:"@tag.$1"}]}}],[/^(\s*)(\|.*)$/,""],{include:"@whitespace"},[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":""}}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\d+/,"number"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],tag:[[/(\.)(\s*$)/,[{token:"delimiter",next:"@blockText.$S2."},""]],[/\s+/,{token:"",next:"@simpleText"}],[/#[a-zA-Z_-][\w-]*/,{cases:{"@eos":{token:"tag.id",next:"@pop"},"@default":"tag.id"}}],[/\.[a-zA-Z_-][\w-]*/,{cases:{"@eos":{token:"tag.class",next:"@pop"},"@default":"tag.class"}}],[/\(/,{token:"delimiter.parenthesis",next:"@attributeList"}]],simpleText:[[/[^#]+$/,{token:"",next:"@popall"}],[/[^#]+/,{token:""}],[/(#{)([^}]*)(})/,{cases:{"@eos":["interpolation.delimiter","interpolation",{token:"interpolation.delimiter",next:"@popall"}],"@default":["interpolation.delimiter","interpolation","interpolation.delimiter"]}}],[/#$/,{token:"",next:"@popall"}],[/#/,""]],attributeList:[[/\s+/,""],[/(\w+)(\s*=\s*)("|')/,["attribute.name","delimiter",{token:"attribute.value",next:"@value.$3"}]],[/\w+/,"attribute.name"],[/,/,{cases:{"@eos":{token:"attribute.delimiter",next:"@popall"},"@default":"attribute.delimiter"}}],[/\)$/,{token:"delimiter.parenthesis",next:"@popall"}],[/\)/,{token:"delimiter.parenthesis",next:"@pop"}]],whitespace:[[/^(\s*)(\/\/.*)$/,{token:"comment",next:"@blockText.$1.comment"}],[/[ \t\r\n]+/,""],[/<!--/,{token:"comment",next:"@comment"}]],blockText:[[/^\s+.*$/,{cases:{"($S2\\s+.*$)":{token:"$S3"},"@default":{token:"@rematch",next:"@popall"}}}],[/./,{token:"@rematch",next:"@popall"}]],comment:[[/[^<\-]+/,"comment.content"],[/-->/,{token:"comment",next:"@pop"}],[/<!--/,"comment.content.invalid"],[/[<\-]/,"comment.content"]],string:[[/[^\\"'#]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,{cases:{"@eos":{token:"string.escape",next:"@popall"},"@default":"string.escape"}}],[/\\./,{cases:{"@eos":{token:"string.escape.invalid",next:"@popall"},"@default":"string.escape.invalid"}}],[/(#{)([^}]*)(})/,["interpolation.delimiter","interpolation","interpolation.delimiter"]],[/#/,"string"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":{token:"string"}}}]],value:[[/[^\\"']+/,{cases:{"@eos":{token:"attribute.value",next:"@popall"},"@default":"attribute.value"}}],[/\\./,{cases:{"@eos":{token:"attribute.value",next:"@popall"},"@default":"attribute.value"}}],[/["']/,{cases:{"$#==$S2":{token:"attribute.value",next:"@pop"},"@default":{token:"attribute.value"}}}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["eyLi"],{eyLi:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return a});var o={comments:{lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}],folding:{offSide:!0}},a={defaultToken:"",tokenPostfix:".pug",ignoreCase:!0,brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],keywords:["append","block","case","default","doctype","each","else","extends","for","if","in","include","mixin","typeof","unless","var","when"],tags:["a","abbr","acronym","address","area","article","aside","audio","b","base","basefont","bdi","bdo","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","command","datalist","dd","del","details","dfn","div","dl","dt","em","embed","fieldset","figcaption","figure","font","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","keygen","kbd","label","li","link","map","mark","menu","meta","meter","nav","noframes","noscript","object","ol","optgroup","option","output","p","param","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strike","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","tracks","tt","u","ul","video","wbr"],symbols:/[\+\-\*\%\&\|\!\=\/\.\,\:]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^(\s*)([a-zA-Z_-][\w-]*)/,{cases:{"$2@tags":{cases:{"@eos":["","tag"],"@default":["",{token:"tag",next:"@tag.$1"}]}},"$2@keywords":["",{token:"keyword.$2"}],"@default":["",""]}}],[/^(\s*)(#[a-zA-Z_-][\w-]*)/,{cases:{"@eos":["","tag.id"],"@default":["",{token:"tag.id",next:"@tag.$1"}]}}],[/^(\s*)(\.[a-zA-Z_-][\w-]*)/,{cases:{"@eos":["","tag.class"],"@default":["",{token:"tag.class",next:"@tag.$1"}]}}],[/^(\s*)(\|.*)$/,""],{include:"@whitespace"},[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":""}}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\d+/,"number"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],tag:[[/(\.)(\s*$)/,[{token:"delimiter",next:"@blockText.$S2."},""]],[/\s+/,{token:"",next:"@simpleText"}],[/#[a-zA-Z_-][\w-]*/,{cases:{"@eos":{token:"tag.id",next:"@pop"},"@default":"tag.id"}}],[/\.[a-zA-Z_-][\w-]*/,{cases:{"@eos":{token:"tag.class",next:"@pop"},"@default":"tag.class"}}],[/\(/,{token:"delimiter.parenthesis",next:"@attributeList"}]],simpleText:[[/[^#]+$/,{token:"",next:"@popall"}],[/[^#]+/,{token:""}],[/(#{)([^}]*)(})/,{cases:{"@eos":["interpolation.delimiter","interpolation",{token:"interpolation.delimiter",next:"@popall"}],"@default":["interpolation.delimiter","interpolation","interpolation.delimiter"]}}],[/#$/,{token:"",next:"@popall"}],[/#/,""]],attributeList:[[/\s+/,""],[/(\w+)(\s*=\s*)("|')/,["attribute.name","delimiter",{token:"attribute.value",next:"@value.$3"}]],[/\w+/,"attribute.name"],[/,/,{cases:{"@eos":{token:"attribute.delimiter",next:"@popall"},"@default":"attribute.delimiter"}}],[/\)$/,{token:"delimiter.parenthesis",next:"@popall"}],[/\)/,{token:"delimiter.parenthesis",next:"@pop"}]],whitespace:[[/^(\s*)(\/\/.*)$/,{token:"comment",next:"@blockText.$1.comment"}],[/[ \t\r\n]+/,""],[/<!--/,{token:"comment",next:"@comment"}]],blockText:[[/^\s+.*$/,{cases:{"($S2\\s+.*$)":{token:"$S3"},"@default":{token:"@rematch",next:"@popall"}}}],[/./,{token:"@rematch",next:"@popall"}]],comment:[[/[^<\-]+/,"comment.content"],[/-->/,{token:"comment",next:"@pop"}],[/<!--/,"comment.content.invalid"],[/[<\-]/,"comment.content"]],string:[[/[^\\"'#]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,{cases:{"@eos":{token:"string.escape",next:"@popall"},"@default":"string.escape"}}],[/\\./,{cases:{"@eos":{token:"string.escape.invalid",next:"@popall"},"@default":"string.escape.invalid"}}],[/(#{)([^}]*)(})/,["interpolation.delimiter","interpolation","interpolation.delimiter"]],[/#/,"string"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":{token:"string"}}}]],value:[[/[^\\"']+/,{cases:{"@eos":{token:"attribute.value",next:"@popall"},"@default":"attribute.value"}}],[/\\./,{cases:{"@eos":{token:"attribute.value",next:"@popall"},"@default":"attribute.value"}}],[/["']/,{cases:{"$#==$S2":{token:"attribute.value",next:"@pop"},"@default":{token:"attribute.value"}}}]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/g/9i.4eb3925e.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/g/9i.4eb3925e.js index b9e1858f9..c98b560ce 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/g/9i.4eb3925e.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/g/9i.4eb3925e.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["g/9i"],{"g/9i":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return i});var o={wordPattern:/(#?-?\d*\.\d\w*%?)|([@$#!.:]?[\w-?]+%?)|[@#!.]/g,comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},i={defaultToken:"",tokenPostfix:".scss",ws:"[ \t\n\r\f]*",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@selector"}],selector:[{include:"@comments"},{include:"@import"},{include:"@variabledeclaration"},{include:"@warndebug"},["[@](include)",{token:"keyword",next:"@includedeclaration"}],["[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",{token:"keyword",next:"@keyframedeclaration"}],["[@](page|content|font-face|-moz-document)",{token:"keyword"}],["[@](charset|namespace)",{token:"keyword",next:"@declarationbody"}],["[@](function)",{token:"keyword",next:"@functiondeclaration"}],["[@](mixin)",{token:"keyword",next:"@mixindeclaration"}],["url(\\-prefix)?\\(",{token:"meta",next:"@urldeclaration"}],{include:"@controlstatement"},{include:"@selectorname"},["[&\\*]","tag"],["[>\\+,]","delimiter"],["\\[",{token:"delimiter.bracket",next:"@selectorattribute"}],["{",{token:"delimiter.curly",next:"@selectorbody"}]],selectorbody:[["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))","attribute.name","@rulevalue"],{include:"@selector"},["[@](extend)",{token:"keyword",next:"@extendbody"}],["[@](return)",{token:"keyword",next:"@declarationbody"}],["}",{token:"delimiter.curly",next:"@pop"}]],selectorname:[["#{",{token:"meta",next:"@variableinterpolation"}],["(\\.|#(?=[^{])|%|(@identifier)|:)+","tag"]],selectorattribute:[{include:"@term"},["]",{token:"delimiter.bracket",next:"@pop"}]],term:[{include:"@comments"},["url(\\-prefix)?\\(",{token:"meta",next:"@urldeclaration"}],{include:"@functioninvocation"},{include:"@numbers"},{include:"@strings"},{include:"@variablereference"},["(and\\b|or\\b|not\\b)","operator"],{include:"@name"},["([<>=\\+\\-\\*\\/\\^\\|\\~,])","operator"],[",","delimiter"],["!default","literal"],["\\(",{token:"delimiter.parenthesis",next:"@parenthizedterm"}]],rulevalue:[{include:"@term"},["!important","literal"],[";","delimiter","@pop"],["{",{token:"delimiter.curly",switchTo:"@nestedproperty"}],["(?=})",{token:"",next:"@pop"}]],nestedproperty:[["[*_]?@identifier@ws:","attribute.name","@rulevalue"],{include:"@comments"},["}",{token:"delimiter.curly",next:"@pop"}]],warndebug:[["[@](warn|debug)",{token:"keyword",next:"@declarationbody"}]],import:[["[@](import)",{token:"keyword",next:"@declarationbody"}]],variabledeclaration:[["\\$@identifier@ws:","variable.decl","@declarationbody"]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"meta",next:"@pop"}]],parenthizedterm:[{include:"@term"},["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],declarationbody:[{include:"@term"},[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],extendbody:[{include:"@selectorname"},["!optional","literal"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],variablereference:[["\\$@identifier","variable.ref"],["\\.\\.\\.","operator"],["#{",{token:"meta",next:"@variableinterpolation"}]],variableinterpolation:[{include:"@variablereference"},["}",{token:"meta",next:"@pop"}]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],name:[["@identifier","attribute.value"]],numbers:[["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","number.hex"]],units:[["(em|ex|ch|rem|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","number","@pop"]],functiondeclaration:[["@identifier@ws\\(",{token:"meta",next:"@parameterdeclaration"}],["{",{token:"delimiter.curly",switchTo:"@functionbody"}]],mixindeclaration:[["@identifier@ws\\(",{token:"meta",next:"@parameterdeclaration"}],["@identifier","meta"],["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],parameterdeclaration:[["\\$@identifier@ws:","variable.decl"],["\\.\\.\\.","operator"],[",","delimiter"],{include:"@term"},["\\)",{token:"meta",next:"@pop"}]],includedeclaration:[{include:"@functioninvocation"},["@identifier","meta"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}],["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],keyframedeclaration:[["@identifier","meta"],["{",{token:"delimiter.curly",switchTo:"@keyframebody"}]],keyframebody:[{include:"@term"},["{",{token:"delimiter.curly",next:"@selectorbody"}],["}",{token:"delimiter.curly",next:"@pop"}]],controlstatement:[["[@](if|else|for|while|each|media)",{token:"keyword.flow",next:"@controlstatementdeclaration"}]],controlstatementdeclaration:[["(in|from|through|if|to)\\b",{token:"keyword.flow"}],{include:"@term"},["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],functionbody:[["[@](return)",{token:"keyword"}],{include:"@variabledeclaration"},{include:"@term"},{include:"@controlstatement"},[";","delimiter"],["}",{token:"delimiter.curly",next:"@pop"}]],functioninvocation:[["@identifier\\(",{token:"meta",next:"@functionarguments"}]],functionarguments:[["\\$@identifier@ws:","attribute.name"],["[,]","delimiter"],{include:"@term"},["\\)",{token:"meta",next:"@pop"}]],strings:[['~?"',{token:"string.delimiter",next:"@stringenddoublequote"}],["~?'",{token:"string.delimiter",next:"@stringendquote"}]],stringenddoublequote:[["\\\\.","string"],['"',{token:"string.delimiter",next:"@pop"}],[".","string"]],stringendquote:[["\\\\.","string"],["'",{token:"string.delimiter",next:"@pop"}],[".","string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["g/9i"],{"g/9i":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return i});var o={wordPattern:/(#?-?\d*\.\d\w*%?)|([@$#!.:]?[\w-?]+%?)|[@#!.]/g,comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},i={defaultToken:"",tokenPostfix:".scss",ws:"[ \t\n\r\f]*",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@selector"}],selector:[{include:"@comments"},{include:"@import"},{include:"@variabledeclaration"},{include:"@warndebug"},["[@](include)",{token:"keyword",next:"@includedeclaration"}],["[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",{token:"keyword",next:"@keyframedeclaration"}],["[@](page|content|font-face|-moz-document)",{token:"keyword"}],["[@](charset|namespace)",{token:"keyword",next:"@declarationbody"}],["[@](function)",{token:"keyword",next:"@functiondeclaration"}],["[@](mixin)",{token:"keyword",next:"@mixindeclaration"}],["url(\\-prefix)?\\(",{token:"meta",next:"@urldeclaration"}],{include:"@controlstatement"},{include:"@selectorname"},["[&\\*]","tag"],["[>\\+,]","delimiter"],["\\[",{token:"delimiter.bracket",next:"@selectorattribute"}],["{",{token:"delimiter.curly",next:"@selectorbody"}]],selectorbody:[["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))","attribute.name","@rulevalue"],{include:"@selector"},["[@](extend)",{token:"keyword",next:"@extendbody"}],["[@](return)",{token:"keyword",next:"@declarationbody"}],["}",{token:"delimiter.curly",next:"@pop"}]],selectorname:[["#{",{token:"meta",next:"@variableinterpolation"}],["(\\.|#(?=[^{])|%|(@identifier)|:)+","tag"]],selectorattribute:[{include:"@term"},["]",{token:"delimiter.bracket",next:"@pop"}]],term:[{include:"@comments"},["url(\\-prefix)?\\(",{token:"meta",next:"@urldeclaration"}],{include:"@functioninvocation"},{include:"@numbers"},{include:"@strings"},{include:"@variablereference"},["(and\\b|or\\b|not\\b)","operator"],{include:"@name"},["([<>=\\+\\-\\*\\/\\^\\|\\~,])","operator"],[",","delimiter"],["!default","literal"],["\\(",{token:"delimiter.parenthesis",next:"@parenthizedterm"}]],rulevalue:[{include:"@term"},["!important","literal"],[";","delimiter","@pop"],["{",{token:"delimiter.curly",switchTo:"@nestedproperty"}],["(?=})",{token:"",next:"@pop"}]],nestedproperty:[["[*_]?@identifier@ws:","attribute.name","@rulevalue"],{include:"@comments"},["}",{token:"delimiter.curly",next:"@pop"}]],warndebug:[["[@](warn|debug)",{token:"keyword",next:"@declarationbody"}]],import:[["[@](import)",{token:"keyword",next:"@declarationbody"}]],variabledeclaration:[["\\$@identifier@ws:","variable.decl","@declarationbody"]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"meta",next:"@pop"}]],parenthizedterm:[{include:"@term"},["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],declarationbody:[{include:"@term"},[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],extendbody:[{include:"@selectorname"},["!optional","literal"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],variablereference:[["\\$@identifier","variable.ref"],["\\.\\.\\.","operator"],["#{",{token:"meta",next:"@variableinterpolation"}]],variableinterpolation:[{include:"@variablereference"},["}",{token:"meta",next:"@pop"}]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],name:[["@identifier","attribute.value"]],numbers:[["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","number.hex"]],units:[["(em|ex|ch|rem|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","number","@pop"]],functiondeclaration:[["@identifier@ws\\(",{token:"meta",next:"@parameterdeclaration"}],["{",{token:"delimiter.curly",switchTo:"@functionbody"}]],mixindeclaration:[["@identifier@ws\\(",{token:"meta",next:"@parameterdeclaration"}],["@identifier","meta"],["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],parameterdeclaration:[["\\$@identifier@ws:","variable.decl"],["\\.\\.\\.","operator"],[",","delimiter"],{include:"@term"},["\\)",{token:"meta",next:"@pop"}]],includedeclaration:[{include:"@functioninvocation"},["@identifier","meta"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}],["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],keyframedeclaration:[["@identifier","meta"],["{",{token:"delimiter.curly",switchTo:"@keyframebody"}]],keyframebody:[{include:"@term"},["{",{token:"delimiter.curly",next:"@selectorbody"}],["}",{token:"delimiter.curly",next:"@pop"}]],controlstatement:[["[@](if|else|for|while|each|media)",{token:"keyword.flow",next:"@controlstatementdeclaration"}]],controlstatementdeclaration:[["(in|from|through|if|to)\\b",{token:"keyword.flow"}],{include:"@term"},["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],functionbody:[["[@](return)",{token:"keyword"}],{include:"@variabledeclaration"},{include:"@term"},{include:"@controlstatement"},[";","delimiter"],["}",{token:"delimiter.curly",next:"@pop"}]],functioninvocation:[["@identifier\\(",{token:"meta",next:"@functionarguments"}]],functionarguments:[["\\$@identifier@ws:","attribute.name"],["[,]","delimiter"],{include:"@term"},["\\)",{token:"meta",next:"@pop"}]],strings:[['~?"',{token:"string.delimiter",next:"@stringenddoublequote"}],["~?'",{token:"string.delimiter",next:"@stringendquote"}]],stringenddoublequote:[["\\\\.","string"],['"',{token:"string.delimiter",next:"@pop"}],[".","string"]],stringendquote:[["\\\\.","string"],["'",{token:"string.delimiter",next:"@pop"}],[".","string"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/gJ75.d4a0e0e9.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/gJ75.d4a0e0e9.js index 9241c76a6..b734cc73c 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/gJ75.d4a0e0e9.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/gJ75.d4a0e0e9.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["gJ75"],{gJ75:function(e,t,i){"use strict";i.r(t);var l=i("t3Un");function a(e){return Object(l.a)({url:"/gaeaDictItem/pageList",method:"GET",params:e})}function d(e){return Object(l.a)({url:"/gaeaDictItem",method:"POST",data:e})}function r(e){return Object(l.a)({url:"/gaeaDictItem",method:"PUT",data:e})}function u(e){return Object(l.a)({url:"/gaeaDictItem/delete/batch",method:"POST",data:e})}function n(e){return Object(l.a)({url:"/gaeaDictItem/"+e.id,method:"get",params:{accessKey:e.accessKey}})}var s={name:"DictItem",components:{anjiCrud:i("sYqA").default},data:function(){var e=this;return{searchForm:{project:this.$route.query.project,dictCode:this.$route.query.dictCode,itemCode:null,itemLabel:null,itemValue:null,remark:null,pageNumber:1,pageSize:10},crudOption:{title:"字典项",labelWidth:"120px",queryFormFields:[{inputType:"input",label:"字典编码",field:"dictCode",disabled:0==this.isBlank(this.$route.query.dictCode),defaultValue:this.$route.query.dictCode},{inputType:"input",label:"显示文字",field:"itemLabel"},{inputType:"input",label:"提交值",field:"itemValue"},{inputType:"input",label:"备注",field:"remark"},{label:"语言标识",inputType:"anji-select",anjiSelectOption:{dictCode:"LOCALE"},field:"locale"}],buttons:{query:{api:a,permission:"dictItemManage:query"},queryByPrimarykey:{api:n,permission:"dictItemManage:query"},add:{api:d,permission:"dictItemManage:insert"},delete:{api:u,permission:"dictItemManage:delete"},edit:{api:r,permission:"dictItemManage:update"},customButton:{operationWidth:"150px"}},columns:[{label:"",field:"id",primaryKey:!0,tableHide:!0,editHide:!0},{label:"字典编码",placeholder:"",field:"dictCode",editField:"dictCode",inputType:"input",rules:[{required:!0,message:"字典编码不能为空",trigger:"blur"},{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:0==this.isBlank(this.$route.query.dictCode),defaultValue:this.$route.query.dictCode},{label:"字典项名称",placeholder:"",field:"itemName",editField:"itemName",inputType:"input",rules:[{required:!0,message:"字典项名称不能为空",trigger:"blur"},{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:!1},{label:"提交值",placeholder:"",field:"itemValue",editField:"itemValue",inputType:"input",rules:[{required:!0,message:"提交值不能为空",trigger:"blur"},{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:"disableOnEdit"},{label:"语言标识",placeholder:"",field:"locale",editField:"locale",fieldTableRowRenderer:function(t){return e.getDictLabelByCode("LOCALE",t.locale)},inputType:"anji-select",anjiSelectOption:{dictCode:"LOCALE"},rules:[{required:!0,message:"语言标识不能为空",trigger:"blur"}],disabled:!1,defaultValue:"zh"},{label:"状态",placeholder:"",field:"enabled",fieldTableRowRenderer:function(t){return e.getDictLabelByCode("ENABLE_FLAG",t.enabled)},colorStyle:{0:"table-danger",1:"table-success"},editField:"enabled",inputType:"anji-select",anjiSelectOption:{dictCode:"ENABLE_FLAG"},rules:[{required:!0,message:"状态不能为空",trigger:"blur"}],disabled:!1,defaultValue:1},{label:"排序",placeholder:"",field:"sort",editField:"sort",inputType:"input",rules:[],disabled:!1},{label:"描述",placeholder:"",field:"remark",editField:"remark",inputType:"input",rules:[{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:!1,tableHide:!0},{label:"扩展项",placeholder:"",field:"itemExtend",editField:"itemExtend",inputType:"input",rules:[{min:1,max:2048,message:"不超过2048个字符",trigger:"blur"}],disabled:!1,tableHide:!0},{label:"创建人",placeholder:"",field:"updateBy",editField:"updateBy",inputType:"input",disabled:!1,editHide:!0}]}}}},o=i("ZrdR"),p=Object(o.a)(s,function(){var e=this.$createElement;return(this._self._c||e)("anji-crud",{ref:"listPage",attrs:{option:this.crudOption}})},[],!1,null,null,null);p.options.__file="dict-item.vue";t.default=p.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["gJ75"],{gJ75:function(e,t,i){"use strict";i.r(t);var l=i("t3Un");function a(e){return Object(l.a)({url:"/gaeaDictItem/pageList",method:"GET",params:e})}function d(e){return Object(l.a)({url:"/gaeaDictItem",method:"POST",data:e})}function r(e){return Object(l.a)({url:"/gaeaDictItem",method:"PUT",data:e})}function u(e){return Object(l.a)({url:"/gaeaDictItem/delete/batch",method:"POST",data:e})}function n(e){return Object(l.a)({url:"/gaeaDictItem/"+e.id,method:"get",params:{accessKey:e.accessKey}})}var s={name:"DictItem",components:{anjiCrud:i("sYqA").default},data:function(){var e=this;return{searchForm:{project:this.$route.query.project,dictCode:this.$route.query.dictCode,itemCode:null,itemLabel:null,itemValue:null,remark:null,pageNumber:1,pageSize:10},crudOption:{title:"字典项",labelWidth:"120px",queryFormFields:[{inputType:"input",label:"字典编码",field:"dictCode",disabled:0==this.isBlank(this.$route.query.dictCode),defaultValue:this.$route.query.dictCode},{inputType:"input",label:"显示文字",field:"itemLabel"},{inputType:"input",label:"提交值",field:"itemValue"},{inputType:"input",label:"备注",field:"remark"},{label:"语言标识",inputType:"anji-select",anjiSelectOption:{dictCode:"LOCALE"},field:"locale"}],buttons:{query:{api:a,permission:"dictItemManage:query"},queryByPrimarykey:{api:n,permission:"dictItemManage:query"},add:{api:d,permission:"dictItemManage:insert"},delete:{api:u,permission:"dictItemManage:delete"},edit:{api:r,permission:"dictItemManage:update"},customButton:{operationWidth:"150px"}},columns:[{label:"",field:"id",primaryKey:!0,tableHide:!0,editHide:!0},{label:"字典编码",placeholder:"",field:"dictCode",editField:"dictCode",inputType:"input",rules:[{required:!0,message:"字典编码不能为空",trigger:"blur"},{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:0==this.isBlank(this.$route.query.dictCode),defaultValue:this.$route.query.dictCode},{label:"字典项名称",placeholder:"",field:"itemName",editField:"itemName",inputType:"input",rules:[{required:!0,message:"字典项名称不能为空",trigger:"blur"},{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:!1},{label:"提交值",placeholder:"",field:"itemValue",editField:"itemValue",inputType:"input",rules:[{required:!0,message:"提交值不能为空",trigger:"blur"},{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:"disableOnEdit"},{label:"语言标识",placeholder:"",field:"locale",editField:"locale",fieldTableRowRenderer:function(t){return e.getDictLabelByCode("LOCALE",t.locale)},inputType:"anji-select",anjiSelectOption:{dictCode:"LOCALE"},rules:[{required:!0,message:"语言标识不能为空",trigger:"blur"}],disabled:!1,defaultValue:"zh"},{label:"状态",placeholder:"",field:"enabled",fieldTableRowRenderer:function(t){return e.getDictLabelByCode("ENABLE_FLAG",t.enabled)},colorStyle:{0:"table-danger",1:"table-success"},editField:"enabled",inputType:"anji-select",anjiSelectOption:{dictCode:"ENABLE_FLAG"},rules:[{required:!0,message:"状态不能为空",trigger:"blur"}],disabled:!1,defaultValue:1},{label:"排序",placeholder:"",field:"sort",editField:"sort",inputType:"input",rules:[],disabled:!1},{label:"描述",placeholder:"",field:"remark",editField:"remark",inputType:"input",rules:[{min:1,max:64,message:"不超过64个字符",trigger:"blur"}],disabled:!1,tableHide:!0},{label:"扩展项",placeholder:"",field:"itemExtend",editField:"itemExtend",inputType:"input",rules:[{min:1,max:2048,message:"不超过2048个字符",trigger:"blur"}],disabled:!1,tableHide:!0},{label:"创建人",placeholder:"",field:"updateBy",editField:"updateBy",inputType:"input",disabled:!1,editHide:!0}]}}}},o=i("ZrdR"),p=Object(o.a)(s,function(){var e=this.$createElement;return(this._self._c||e)("anji-crud",{ref:"listPage",attrs:{option:this.crudOption}})},[],!1,null,null,null);p.options.__file="dict-item.vue";t.default=p.exports}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/i7BE.fe4043e5.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/i7BE.fe4043e5.js index c24912a1e..acb43c1da 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/i7BE.fe4043e5.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/i7BE.fe4043e5.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["i7BE"],{i7BE:function(e,r,o){"use strict";o.r(r),o.d(r,"conf",function(){return i}),o.d(r,"language",function(){return t});var i={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},t={defaultToken:"",ignoreCase:!0,tokenPostfix:".shell",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["if","then","do","else","elif","while","until","for","in","esac","fi","fin","fil","done","exit","set","unset","export","function"],builtins:["ab","awk","bash","beep","cat","cc","cd","chown","chmod","chroot","clear","cp","curl","cut","diff","echo","find","gawk","gcc","get","git","grep","hg","kill","killall","ln","ls","make","mkdir","openssl","mv","nc","node","npm","ping","ps","restart","rm","rmdir","sed","service","sh","shopt","shred","source","sort","sleep","ssh","start","stop","su","sudo","svn","tee","telnet","top","touch","vi","vim","wall","wc","wget","who","write","yes","zsh"],symbols:/[=><!~?&|+\-*\/\^;\.,]+/,tokenizer:{root:[{include:"@whitespace"},[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@builtins":"type.identifier","@default":""}}],{include:"@strings"},{include:"@parameters"},{include:"@heredoc"},[/[{}\[\]()]/,"@brackets"],[/-+\w+/,"attribute.name"],[/@symbols/,"delimiter"],{include:"@numbers"},[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"],[/(^#!.*$)/,"metatag"],[/(^#.*$)/,"comment"]],numbers:[[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"]],strings:[[/'/,"string","@stringBody"],[/"/,"string","@dblStringBody"]],stringBody:[[/'/,"string","@popall"],[/./,"string"]],dblStringBody:[[/"/,"string","@popall"],[/./,"string"]],heredoc:[[/(<<[-<]?)(\s*)(['"`]?)([\w\-]+)(['"`]?)/,["constants","white","string.heredoc.delimiter","string.heredoc","string.heredoc.delimiter"]]],parameters:[[/\$\d+/,"variable.predefined"],[/\$\w+/,"variable"],[/\$[*@#?\-$!0_]/,"variable"],[/\$'/,"variable","@parameterBodyQuote"],[/\$"/,"variable","@parameterBodyDoubleQuote"],[/\$\(/,"variable","@parameterBodyParen"],[/\$\{/,"variable","@parameterBodyCurlyBrace"]],parameterBodyQuote:[[/[^#:%*@\-!_']+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[']/,"variable","@pop"]],parameterBodyDoubleQuote:[[/[^#:%*@\-!_"]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/["]/,"variable","@pop"]],parameterBodyParen:[[/[^#:%*@\-!_)]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[)]/,"variable","@pop"]],parameterBodyCurlyBrace:[[/[^#:%*@\-!_}]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[}]/,"variable","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["i7BE"],{i7BE:function(e,r,o){"use strict";o.r(r),o.d(r,"conf",function(){return i}),o.d(r,"language",function(){return t});var i={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},t={defaultToken:"",ignoreCase:!0,tokenPostfix:".shell",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["if","then","do","else","elif","while","until","for","in","esac","fi","fin","fil","done","exit","set","unset","export","function"],builtins:["ab","awk","bash","beep","cat","cc","cd","chown","chmod","chroot","clear","cp","curl","cut","diff","echo","find","gawk","gcc","get","git","grep","hg","kill","killall","ln","ls","make","mkdir","openssl","mv","nc","node","npm","ping","ps","restart","rm","rmdir","sed","service","sh","shopt","shred","source","sort","sleep","ssh","start","stop","su","sudo","svn","tee","telnet","top","touch","vi","vim","wall","wc","wget","who","write","yes","zsh"],symbols:/[=><!~?&|+\-*\/\^;\.,]+/,tokenizer:{root:[{include:"@whitespace"},[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@builtins":"type.identifier","@default":""}}],{include:"@strings"},{include:"@parameters"},{include:"@heredoc"},[/[{}\[\]()]/,"@brackets"],[/-+\w+/,"attribute.name"],[/@symbols/,"delimiter"],{include:"@numbers"},[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"],[/(^#!.*$)/,"metatag"],[/(^#.*$)/,"comment"]],numbers:[[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"]],strings:[[/'/,"string","@stringBody"],[/"/,"string","@dblStringBody"]],stringBody:[[/'/,"string","@popall"],[/./,"string"]],dblStringBody:[[/"/,"string","@popall"],[/./,"string"]],heredoc:[[/(<<[-<]?)(\s*)(['"`]?)([\w\-]+)(['"`]?)/,["constants","white","string.heredoc.delimiter","string.heredoc","string.heredoc.delimiter"]]],parameters:[[/\$\d+/,"variable.predefined"],[/\$\w+/,"variable"],[/\$[*@#?\-$!0_]/,"variable"],[/\$'/,"variable","@parameterBodyQuote"],[/\$"/,"variable","@parameterBodyDoubleQuote"],[/\$\(/,"variable","@parameterBodyParen"],[/\$\{/,"variable","@parameterBodyCurlyBrace"]],parameterBodyQuote:[[/[^#:%*@\-!_']+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[']/,"variable","@pop"]],parameterBodyDoubleQuote:[[/[^#:%*@\-!_"]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/["]/,"variable","@pop"]],parameterBodyParen:[[/[^#:%*@\-!_)]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[)]/,"variable","@pop"]],parameterBodyCurlyBrace:[[/[^#:%*@\-!_}]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[}]/,"variable","@pop"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/kBTG.4ade4ea4.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/kBTG.4ade4ea4.js index 674f2b6eb..577fe4e7e 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/kBTG.4ade4ea4.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/kBTG.4ade4ea4.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["kBTG"],{kBTG:function(e,t,p){"use strict";p.r(t),p.d(t,"conf",function(){return n}),p.d(t,"language",function(){return i});var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string"]},{open:"[",close:"]",notIn:["string"]},{open:"(",close:")",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],folding:{markers:{start:new RegExp("^\\s*(#|//)region\\b"),end:new RegExp("^\\s*(#|//)endregion\\b")}}},i={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.root"}],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@comment"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/[^<]+/]],doctype:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.comment"}],[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],phpInSimpleState:[[/<\?((php)|=)?/,"metatag.php"],[/\?>/,{token:"metatag.php",switchTo:"@$S2.$S3"}],{include:"phpRoot"}],phpInEmbeddedState:[[/<\?((php)|=)?/,"metatag.php"],[/\?>/,{token:"metatag.php",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],{include:"phpRoot"}],phpRoot:[[/[a-zA-Z_]\w*/,{cases:{"@phpKeywords":{token:"keyword.php"},"@phpCompileTimeConstants":{token:"constant.php"},"@default":"identifier.php"}}],[/[$a-zA-Z_]\w*/,{cases:{"@phpPreDefinedVariables":{token:"variable.predefined.php"},"@default":"variable.php"}}],[/[{}]/,"delimiter.bracket.php"],[/[\[\]]/,"delimiter.array.php"],[/[()]/,"delimiter.parenthesis.php"],[/[ \t\r\n]+/],[/(#|\/\/)$/,"comment.php"],[/(#|\/\/)/,"comment.php","@phpLineComment"],[/\/\*/,"comment.php","@phpComment"],[/"/,"string.php","@phpDoubleQuoteString"],[/'/,"string.php","@phpSingleQuoteString"],[/[\+\-\*\%\&\|\^\~\!\=\<\>\/\?\;\:\.\,\@]/,"delimiter.php"],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float.php"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float.php"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex.php"],[/0[0-7']*[0-7]/,"number.octal.php"],[/0[bB][0-1']*[0-1]/,"number.binary.php"],[/\d[\d']*/,"number.php"],[/\d/,"number.php"]],phpComment:[[/\*\//,"comment.php","@pop"],[/[^*]+/,"comment.php"],[/./,"comment.php"]],phpLineComment:[[/\?>/,{token:"@rematch",next:"@pop"}],[/.$/,"comment.php","@pop"],[/[^?]+$/,"comment.php","@pop"],[/[^?]+/,"comment.php"],[/./,"comment.php"]],phpDoubleQuoteString:[[/[^\\"]+/,"string.php"],[/@escapes/,"string.escape.php"],[/\\./,"string.escape.invalid.php"],[/"/,"string.php","@pop"]],phpSingleQuoteString:[[/[^\\']+/,"string.php"],[/@escapes/,"string.escape.php"],[/\\./,"string.escape.invalid.php"],[/'/,"string.php","@pop"]]},phpKeywords:["abstract","and","array","as","break","callable","case","catch","cfunction","class","clone","const","continue","declare","default","do","else","elseif","enddeclare","endfor","endforeach","endif","endswitch","endwhile","extends","false","final","for","foreach","function","global","goto","if","implements","interface","instanceof","insteadof","namespace","new","null","object","old_function","or","private","protected","public","resource","static","switch","throw","trait","try","true","use","var","while","xor","die","echo","empty","exit","eval","include","include_once","isset","list","require","require_once","return","print","unset","yield","__construct"],phpCompileTimeConstants:["__CLASS__","__DIR__","__FILE__","__LINE__","__NAMESPACE__","__METHOD__","__FUNCTION__","__TRAIT__"],phpPreDefinedVariables:["$GLOBALS","$_SERVER","$_GET","$_POST","$_FILES","$_REQUEST","$_SESSION","$_ENV","$_COOKIE","$php_errormsg","$HTTP_RAW_POST_DATA","$http_response_header","$argc","$argv"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["kBTG"],{kBTG:function(e,t,p){"use strict";p.r(t),p.d(t,"conf",function(){return n}),p.d(t,"language",function(){return i});var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string"]},{open:"[",close:"]",notIn:["string"]},{open:"(",close:")",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],folding:{markers:{start:new RegExp("^\\s*(#|//)region\\b"),end:new RegExp("^\\s*(#|//)endregion\\b")}}},i={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.root"}],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@comment"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/[^<]+/]],doctype:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.comment"}],[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],phpInSimpleState:[[/<\?((php)|=)?/,"metatag.php"],[/\?>/,{token:"metatag.php",switchTo:"@$S2.$S3"}],{include:"phpRoot"}],phpInEmbeddedState:[[/<\?((php)|=)?/,"metatag.php"],[/\?>/,{token:"metatag.php",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],{include:"phpRoot"}],phpRoot:[[/[a-zA-Z_]\w*/,{cases:{"@phpKeywords":{token:"keyword.php"},"@phpCompileTimeConstants":{token:"constant.php"},"@default":"identifier.php"}}],[/[$a-zA-Z_]\w*/,{cases:{"@phpPreDefinedVariables":{token:"variable.predefined.php"},"@default":"variable.php"}}],[/[{}]/,"delimiter.bracket.php"],[/[\[\]]/,"delimiter.array.php"],[/[()]/,"delimiter.parenthesis.php"],[/[ \t\r\n]+/],[/(#|\/\/)$/,"comment.php"],[/(#|\/\/)/,"comment.php","@phpLineComment"],[/\/\*/,"comment.php","@phpComment"],[/"/,"string.php","@phpDoubleQuoteString"],[/'/,"string.php","@phpSingleQuoteString"],[/[\+\-\*\%\&\|\^\~\!\=\<\>\/\?\;\:\.\,\@]/,"delimiter.php"],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float.php"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float.php"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex.php"],[/0[0-7']*[0-7]/,"number.octal.php"],[/0[bB][0-1']*[0-1]/,"number.binary.php"],[/\d[\d']*/,"number.php"],[/\d/,"number.php"]],phpComment:[[/\*\//,"comment.php","@pop"],[/[^*]+/,"comment.php"],[/./,"comment.php"]],phpLineComment:[[/\?>/,{token:"@rematch",next:"@pop"}],[/.$/,"comment.php","@pop"],[/[^?]+$/,"comment.php","@pop"],[/[^?]+/,"comment.php"],[/./,"comment.php"]],phpDoubleQuoteString:[[/[^\\"]+/,"string.php"],[/@escapes/,"string.escape.php"],[/\\./,"string.escape.invalid.php"],[/"/,"string.php","@pop"]],phpSingleQuoteString:[[/[^\\']+/,"string.php"],[/@escapes/,"string.escape.php"],[/\\./,"string.escape.invalid.php"],[/'/,"string.php","@pop"]]},phpKeywords:["abstract","and","array","as","break","callable","case","catch","cfunction","class","clone","const","continue","declare","default","do","else","elseif","enddeclare","endfor","endforeach","endif","endswitch","endwhile","extends","false","final","for","foreach","function","global","goto","if","implements","interface","instanceof","insteadof","namespace","new","null","object","old_function","or","private","protected","public","resource","static","switch","throw","trait","try","true","use","var","while","xor","die","echo","empty","exit","eval","include","include_once","isset","list","require","require_once","return","print","unset","yield","__construct"],phpCompileTimeConstants:["__CLASS__","__DIR__","__FILE__","__LINE__","__NAMESPACE__","__METHOD__","__FUNCTION__","__TRAIT__"],phpPreDefinedVariables:["$GLOBALS","$_SERVER","$_GET","$_POST","$_FILES","$_REQUEST","$_SESSION","$_ENV","$_COOKIE","$php_errormsg","$HTTP_RAW_POST_DATA","$http_response_header","$argc","$argv"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/l1w1.2dac6be6.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/l1w1.2dac6be6.js index 93c1a4fa4..c855cd973 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/l1w1.2dac6be6.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/l1w1.2dac6be6.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["l1w1"],{l1w1:function(e,o,n){"use strict";n.r(o),n.d(o,"conf",function(){return t}),n.d(o,"language",function(){return s});var t={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".pascaligo",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["begin","block","case","const","else","end","fail","for","from","function","if","is","nil","of","remove","return","skip","then","type","var","while","with","option","None","transaction"],typeKeywords:["bool","int","list","map","nat","record","string","unit","address","map","mtz","xtz"],operators:["=",">","<","<=",">=","<>",":",":=","and","mod","or","+","-","*","/","@","&","^","%"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\(\*]+/,"comment"],[/\*\)/,"comment","@pop"],[/\(\*/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["l1w1"],{l1w1:function(e,o,n){"use strict";n.r(o),n.d(o,"conf",function(){return t}),n.d(o,"language",function(){return s});var t={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".pascaligo",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["begin","block","case","const","else","end","fail","for","from","function","if","is","nil","of","remove","return","skip","then","type","var","while","with","option","None","transaction"],typeKeywords:["bool","int","list","map","nat","record","string","unit","address","map","mtz","xtz"],operators:["=",">","<","<=",">=","<>",":",":=","and","mod","or","+","-","*","/","@","&","^","%"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\(\*]+/,"comment"],[/\*\)/,"comment","@pop"],[/\(\*/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/lcj6.cc6a2109.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/lcj6.cc6a2109.js index 0597e7024..cd352a343 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/lcj6.cc6a2109.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/lcj6.cc6a2109.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["lcj6"],{lcj6:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return t}),o.d(n,"language",function(){return s});var t={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".objective-c",keywords:["#import","#include","#define","#else","#endif","#if","#ifdef","#ifndef","#ident","#undef","@class","@defs","@dynamic","@encode","@end","@implementation","@interface","@package","@private","@protected","@property","@protocol","@public","@selector","@synthesize","__declspec","assign","auto","BOOL","break","bycopy","byref","case","char","Class","const","copy","continue","default","do","double","else","enum","extern","FALSE","false","float","for","goto","if","in","int","id","inout","IMP","long","nil","nonatomic","NULL","oneway","out","private","public","protected","readwrite","readonly","register","return","SEL","self","short","signed","sizeof","static","struct","super","switch","typedef","TRUE","true","union","unsigned","volatile","void","while"],decpart:/\d(_?\d)*/,decimal:/0|@decpart/,tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()<>]/,"@brackets"],[/[a-zA-Z@#]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[<>=\\+\\-\\*\\/\\^\\|\\~,]|and\\b|or\\b|not\\b]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],numbers:[[/0[xX][0-9a-fA-F]*(_?[0-9a-fA-F])*/,"number.hex"],[/@decimal((\.@decpart)?([eE][\-+]?@decpart)?)[fF]*/,{cases:{"(\\d)*":"number",$0:"number.float"}}]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["lcj6"],{lcj6:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return t}),o.d(n,"language",function(){return s});var t={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".objective-c",keywords:["#import","#include","#define","#else","#endif","#if","#ifdef","#ifndef","#ident","#undef","@class","@defs","@dynamic","@encode","@end","@implementation","@interface","@package","@private","@protected","@property","@protocol","@public","@selector","@synthesize","__declspec","assign","auto","BOOL","break","bycopy","byref","case","char","Class","const","copy","continue","default","do","double","else","enum","extern","FALSE","false","float","for","goto","if","in","int","id","inout","IMP","long","nil","nonatomic","NULL","oneway","out","private","public","protected","readwrite","readonly","register","return","SEL","self","short","signed","sizeof","static","struct","super","switch","typedef","TRUE","true","union","unsigned","volatile","void","while"],decpart:/\d(_?\d)*/,decimal:/0|@decpart/,tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()<>]/,"@brackets"],[/[a-zA-Z@#]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[<>=\\+\\-\\*\\/\\^\\|\\~,]|and\\b|or\\b|not\\b]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],numbers:[[/0[xX][0-9a-fA-F]*(_?[0-9a-fA-F])*/,"number.hex"],[/@decimal((\.@decpart)?([eE][\-+]?@decpart)?)[fF]*/,{cases:{"(\\d)*":"number",$0:"number.float"}}]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/mzqm.79e8db46.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/mzqm.79e8db46.js index d76a00cbd..45e51b699 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/mzqm.79e8db46.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/mzqm.79e8db46.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["mzqm"],{mzqm:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return s}),o.d(n,"language",function(){return t});var s={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},t={defaultToken:"",tokenPostfix:".dockerfile",variable:/\${?[\w]+}?/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},[/(ONBUILD)(\s+)/,["keyword",""]],[/(ENV)(\s+)([\w]+)/,["keyword","",{token:"variable",next:"@arguments"}]],[/(FROM|MAINTAINER|RUN|EXPOSE|ENV|ADD|ARG|VOLUME|LABEL|USER|WORKDIR|COPY|CMD|STOPSIGNAL|SHELL|HEALTHCHECK|ENTRYPOINT)/,{token:"keyword",next:"@arguments"}]],arguments:[{include:"@whitespace"},{include:"@strings"},[/(@variable)/,{cases:{"@eos":{token:"variable",next:"@popall"},"@default":"variable"}}],[/\\/,{cases:{"@eos":"","@default":""}}],[/./,{cases:{"@eos":{token:"",next:"@popall"},"@default":""}}]],whitespace:[[/\s+/,{cases:{"@eos":{token:"",next:"@popall"},"@default":""}}]],comment:[[/(^#.*$)/,"comment","@popall"]],strings:[[/'$/,"string","@popall"],[/'/,"string","@stringBody"],[/"$/,"string","@popall"],[/"/,"string","@dblStringBody"]],stringBody:[[/[^\\\$']/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/\\./,"string.escape"],[/'$/,"string","@popall"],[/'/,"string","@pop"],[/(@variable)/,"variable"],[/\\$/,"string"],[/$/,"string","@popall"]],dblStringBody:[[/[^\\\$"]/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/\\./,"string.escape"],[/"$/,"string","@popall"],[/"/,"string","@pop"],[/(@variable)/,"variable"],[/\\$/,"string"],[/$/,"string","@popall"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["mzqm"],{mzqm:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return s}),o.d(n,"language",function(){return t});var s={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},t={defaultToken:"",tokenPostfix:".dockerfile",variable:/\${?[\w]+}?/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},[/(ONBUILD)(\s+)/,["keyword",""]],[/(ENV)(\s+)([\w]+)/,["keyword","",{token:"variable",next:"@arguments"}]],[/(FROM|MAINTAINER|RUN|EXPOSE|ENV|ADD|ARG|VOLUME|LABEL|USER|WORKDIR|COPY|CMD|STOPSIGNAL|SHELL|HEALTHCHECK|ENTRYPOINT)/,{token:"keyword",next:"@arguments"}]],arguments:[{include:"@whitespace"},{include:"@strings"},[/(@variable)/,{cases:{"@eos":{token:"variable",next:"@popall"},"@default":"variable"}}],[/\\/,{cases:{"@eos":"","@default":""}}],[/./,{cases:{"@eos":{token:"",next:"@popall"},"@default":""}}]],whitespace:[[/\s+/,{cases:{"@eos":{token:"",next:"@popall"},"@default":""}}]],comment:[[/(^#.*$)/,"comment","@popall"]],strings:[[/'$/,"string","@popall"],[/'/,"string","@stringBody"],[/"$/,"string","@popall"],[/"/,"string","@dblStringBody"]],stringBody:[[/[^\\\$']/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/\\./,"string.escape"],[/'$/,"string","@popall"],[/'/,"string","@pop"],[/(@variable)/,"variable"],[/\\$/,"string"],[/$/,"string","@popall"]],dblStringBody:[[/[^\\\$"]/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/\\./,"string.escape"],[/"$/,"string","@popall"],[/"/,"string","@pop"],[/(@variable)/,"variable"],[/\\$/,"string"],[/$/,"string","@popall"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/n60k.d39497c4.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/n60k.d39497c4.js index 6b9461b2c..e95fe2014 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/n60k.d39497c4.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/n60k.d39497c4.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["n60k"],{n60k:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return r}),t.d(n,"language",function(){return o});var r={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{offSide:!0}},o={tokenPostfix:".yaml",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["true","True","TRUE","false","False","FALSE","null","Null","Null","~"],numberInteger:/(?:0|[+-]?[0-9]+)/,numberFloat:/(?:0|[+-]?[0-9]+)(?:\.[0-9]+)?(?:e[-+][1-9][0-9]*)?/,numberOctal:/0o[0-7]+/,numberHex:/0x[0-9a-fA-F]+/,numberInfinity:/[+-]?\.(?:inf|Inf|INF)/,numberNaN:/\.(?:nan|Nan|NAN)/,numberDate:/\d{4}-\d\d-\d\d([Tt ]\d\d:\d\d:\d\d(\.\d+)?(( ?[+-]\d\d?(:\d\d)?)|Z)?)?/,escapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},[/%[^ ]+.*$/,"meta.directive"],[/---/,"operators.directivesEnd"],[/\.{3}/,"operators.documentEnd"],[/[-?:](?= )/,"operators"],{include:"@anchor"},{include:"@tagHandle"},{include:"@flowCollections"},{include:"@blockStyle"},[/@numberInteger(?![ \t]*\S+)/,"number"],[/@numberFloat(?![ \t]*\S+)/,"number.float"],[/@numberOctal(?![ \t]*\S+)/,"number.octal"],[/@numberHex(?![ \t]*\S+)/,"number.hex"],[/@numberInfinity(?![ \t]*\S+)/,"number.infinity"],[/@numberNaN(?![ \t]*\S+)/,"number.nan"],[/@numberDate(?![ \t]*\S+)/,"number.date"],[/(".*?"|'.*?'|.*?)([ \t]*)(:)( |$)/,["type","white","operators","white"]],{include:"@flowScalars"},[/.+$/,{cases:{"@keywords":"keyword","@default":"string"}}]],object:[{include:"@whitespace"},{include:"@comment"},[/\}/,"@brackets","@pop"],[/,/,"delimiter.comma"],[/:(?= )/,"operators"],[/(?:".*?"|'.*?'|[^,\{\[]+?)(?=: )/,"type"],{include:"@flowCollections"},{include:"@flowScalars"},{include:"@tagHandle"},{include:"@anchor"},{include:"@flowNumber"},[/[^\},]+/,{cases:{"@keywords":"keyword","@default":"string"}}]],array:[{include:"@whitespace"},{include:"@comment"},[/\]/,"@brackets","@pop"],[/,/,"delimiter.comma"],{include:"@flowCollections"},{include:"@flowScalars"},{include:"@tagHandle"},{include:"@anchor"},{include:"@flowNumber"},[/[^\],]+/,{cases:{"@keywords":"keyword","@default":"string"}}]],multiString:[[/^( +).+$/,"string","@multiStringContinued.$1"]],multiStringContinued:[[/^( *).+$/,{cases:{"$1==$S2":"string","@default":{token:"@rematch",next:"@popall"}}}]],whitespace:[[/[ \t\r\n]+/,"white"]],comment:[[/#.*$/,"comment"]],flowCollections:[[/\[/,"@brackets","@array"],[/\{/,"@brackets","@object"]],flowScalars:[[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'[^']*'/,"string"],[/"/,"string","@doubleQuotedString"]],doubleQuotedString:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],blockStyle:[[/[>|][0-9]*[+-]?$/,"operators","@multiString"]],flowNumber:[[/@numberInteger(?=[ \t]*[,\]\}])/,"number"],[/@numberFloat(?=[ \t]*[,\]\}])/,"number.float"],[/@numberOctal(?=[ \t]*[,\]\}])/,"number.octal"],[/@numberHex(?=[ \t]*[,\]\}])/,"number.hex"],[/@numberInfinity(?=[ \t]*[,\]\}])/,"number.infinity"],[/@numberNaN(?=[ \t]*[,\]\}])/,"number.nan"],[/@numberDate(?=[ \t]*[,\]\}])/,"number.date"]],tagHandle:[[/\![^ ]*/,"tag"]],anchor:[[/[&*][^ ]+/,"namespace"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["n60k"],{n60k:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return r}),t.d(n,"language",function(){return o});var r={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{offSide:!0}},o={tokenPostfix:".yaml",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["true","True","TRUE","false","False","FALSE","null","Null","Null","~"],numberInteger:/(?:0|[+-]?[0-9]+)/,numberFloat:/(?:0|[+-]?[0-9]+)(?:\.[0-9]+)?(?:e[-+][1-9][0-9]*)?/,numberOctal:/0o[0-7]+/,numberHex:/0x[0-9a-fA-F]+/,numberInfinity:/[+-]?\.(?:inf|Inf|INF)/,numberNaN:/\.(?:nan|Nan|NAN)/,numberDate:/\d{4}-\d\d-\d\d([Tt ]\d\d:\d\d:\d\d(\.\d+)?(( ?[+-]\d\d?(:\d\d)?)|Z)?)?/,escapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},[/%[^ ]+.*$/,"meta.directive"],[/---/,"operators.directivesEnd"],[/\.{3}/,"operators.documentEnd"],[/[-?:](?= )/,"operators"],{include:"@anchor"},{include:"@tagHandle"},{include:"@flowCollections"},{include:"@blockStyle"},[/@numberInteger(?![ \t]*\S+)/,"number"],[/@numberFloat(?![ \t]*\S+)/,"number.float"],[/@numberOctal(?![ \t]*\S+)/,"number.octal"],[/@numberHex(?![ \t]*\S+)/,"number.hex"],[/@numberInfinity(?![ \t]*\S+)/,"number.infinity"],[/@numberNaN(?![ \t]*\S+)/,"number.nan"],[/@numberDate(?![ \t]*\S+)/,"number.date"],[/(".*?"|'.*?'|.*?)([ \t]*)(:)( |$)/,["type","white","operators","white"]],{include:"@flowScalars"},[/.+$/,{cases:{"@keywords":"keyword","@default":"string"}}]],object:[{include:"@whitespace"},{include:"@comment"},[/\}/,"@brackets","@pop"],[/,/,"delimiter.comma"],[/:(?= )/,"operators"],[/(?:".*?"|'.*?'|[^,\{\[]+?)(?=: )/,"type"],{include:"@flowCollections"},{include:"@flowScalars"},{include:"@tagHandle"},{include:"@anchor"},{include:"@flowNumber"},[/[^\},]+/,{cases:{"@keywords":"keyword","@default":"string"}}]],array:[{include:"@whitespace"},{include:"@comment"},[/\]/,"@brackets","@pop"],[/,/,"delimiter.comma"],{include:"@flowCollections"},{include:"@flowScalars"},{include:"@tagHandle"},{include:"@anchor"},{include:"@flowNumber"},[/[^\],]+/,{cases:{"@keywords":"keyword","@default":"string"}}]],multiString:[[/^( +).+$/,"string","@multiStringContinued.$1"]],multiStringContinued:[[/^( *).+$/,{cases:{"$1==$S2":"string","@default":{token:"@rematch",next:"@popall"}}}]],whitespace:[[/[ \t\r\n]+/,"white"]],comment:[[/#.*$/,"comment"]],flowCollections:[[/\[/,"@brackets","@array"],[/\{/,"@brackets","@object"]],flowScalars:[[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'[^']*'/,"string"],[/"/,"string","@doubleQuotedString"]],doubleQuotedString:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],blockStyle:[[/[>|][0-9]*[+-]?$/,"operators","@multiString"]],flowNumber:[[/@numberInteger(?=[ \t]*[,\]\}])/,"number"],[/@numberFloat(?=[ \t]*[,\]\}])/,"number.float"],[/@numberOctal(?=[ \t]*[,\]\}])/,"number.octal"],[/@numberHex(?=[ \t]*[,\]\}])/,"number.hex"],[/@numberInfinity(?=[ \t]*[,\]\}])/,"number.infinity"],[/@numberNaN(?=[ \t]*[,\]\}])/,"number.nan"],[/@numberDate(?=[ \t]*[,\]\}])/,"number.date"]],tagHandle:[[/\![^ ]*/,"tag"]],anchor:[[/[&*][^ ]+/,"namespace"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/nXTE.41c266c3.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/nXTE.41c266c3.js index d5673ecac..6d7c9bc2b 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/nXTE.41c266c3.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/nXTE.41c266c3.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["nXTE"],{nXTE:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return r}),n.d(t,"language",function(){return s});var r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:["###","###"],lineComment:"#"},folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",ignoreCase:!1,tokenPostfix:".mips",regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:[".data",".text","syscall","trap","add","addu","addi","addiu","and","andi","div","divu","mult","multu","nor","or","ori","sll","slv","sra","srav","srl","srlv","sub","subu","xor","xori","lhi","lho","lhi","llo","slt","slti","sltu","sltiu","beq","bgtz","blez","bne","j","jal","jalr","jr","lb","lbu","lh","lhu","lw","li","la","sb","sh","sw","mfhi","mflo","mthi","mtlo","move"],symbols:/[\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\$[a-zA-Z_]\w*/,"variable.predefined"],[/[.a-zA-Z_]\w*/,{cases:{this:"variable.predefined","@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/#.*$/,"comment"],["///",{token:"regexp",next:"@hereregexp"}],[/^(\s*)(@regEx)/,["","regexp"]],[/(\,)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\:)(\s*)(@regEx)/,["delimiter","","regexp"]],[/@symbols/,"delimiter"],[/\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/0[0-7]+(?!\d)/,"number.octal"],[/\d+/,"number"],[/[,.]/,"delimiter"],[/"""/,"string",'@herestring."""'],[/'''/,"string","@herestring.'''"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\#\\]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/\./,"string.escape.invalid"],[/#{/,{cases:{'$S2=="':{token:"string",next:"root.interpolatedstring"},"@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/#/,"string"]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^#\\'"]+/,"string"],[/['"]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/#{/,{token:"string.quote",next:"root.interpolatedstring"}],[/#/,"string"]],comment:[[/[^#]+/,"comment"],[/#/,"comment"]],hereregexp:[[/[^\\\/#]+/,"regexp"],[/\\./,"regexp"],[/#.*$/,"comment"],["///[igm]*",{token:"regexp",next:"@pop"}],[/\//,"regexp"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["nXTE"],{nXTE:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return r}),n.d(t,"language",function(){return s});var r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:["###","###"],lineComment:"#"},folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",ignoreCase:!1,tokenPostfix:".mips",regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:[".data",".text","syscall","trap","add","addu","addi","addiu","and","andi","div","divu","mult","multu","nor","or","ori","sll","slv","sra","srav","srl","srlv","sub","subu","xor","xori","lhi","lho","lhi","llo","slt","slti","sltu","sltiu","beq","bgtz","blez","bne","j","jal","jalr","jr","lb","lbu","lh","lhu","lw","li","la","sb","sh","sw","mfhi","mflo","mthi","mtlo","move"],symbols:/[\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\$[a-zA-Z_]\w*/,"variable.predefined"],[/[.a-zA-Z_]\w*/,{cases:{this:"variable.predefined","@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/#.*$/,"comment"],["///",{token:"regexp",next:"@hereregexp"}],[/^(\s*)(@regEx)/,["","regexp"]],[/(\,)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\:)(\s*)(@regEx)/,["delimiter","","regexp"]],[/@symbols/,"delimiter"],[/\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/0[0-7]+(?!\d)/,"number.octal"],[/\d+/,"number"],[/[,.]/,"delimiter"],[/"""/,"string",'@herestring."""'],[/'''/,"string","@herestring.'''"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\#\\]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/\./,"string.escape.invalid"],[/#{/,{cases:{'$S2=="':{token:"string",next:"root.interpolatedstring"},"@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/#/,"string"]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^#\\'"]+/,"string"],[/['"]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/#{/,{token:"string.quote",next:"root.interpolatedstring"}],[/#/,"string"]],comment:[[/[^#]+/,"comment"],[/#/,"comment"]],hereregexp:[[/[^\\\/#]+/,"regexp"],[/\\./,"regexp"],[/#.*$/,"comment"],["///[igm]*",{token:"regexp",next:"@pop"}],[/\//,"regexp"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/o8L2.e6adedeb.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/o8L2.e6adedeb.js index a3fe7379a..7f8814df0 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/o8L2.e6adedeb.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/o8L2.e6adedeb.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["o8L2"],{o8L2:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return s});var o={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={tokenPostfix:".tcl",specialFunctions:["set","unset","rename","variable","proc","coroutine","foreach","incr","append","lappend","linsert","lreplace"],mainFunctions:["if","then","elseif","else","case","switch","while","for","break","continue","return","package","namespace","catch","exit","eval","expr","uplevel","upvar"],builtinFunctions:["file","info","concat","join","lindex","list","llength","lrange","lsearch","lsort","split","array","parray","binary","format","regexp","regsub","scan","string","subst","dict","cd","clock","exec","glob","pid","pwd","close","eof","fblocked","fconfigure","fcopy","fileevent","flush","gets","open","puts","read","seek","socket","tell","interp","after","auto_execok","auto_load","auto_mkindex","auto_reset","bgerror","error","global","history","load","source","time","trace","unknown","unset","update","vwait","winfo","wm","bind","event","pack","place","grid","font","bell","clipboard","destroy","focus","grab","lower","option","raise","selection","send","tk","tkwait","tk_bisque","tk_focusNext","tk_focusPrev","tk_focusFollowsMouse","tk_popup","tk_setPalette"],symbols:/[=><!~?:&|+\-*\/\^%]+/,brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],escapes:/\\(?:[abfnrtv\\"'\[\]\{\};\$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,variables:/(?:\$+(?:(?:\:\:?)?[a-zA-Z_]\w*)+)/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@specialFunctions":{token:"keyword.flow",next:"@specialFunc"},"@mainFunctions":"keyword","@builtinFunctions":"variable","@default":"operator.scss"}}],[/\s+\-+(?!\d|\.)\w*|{\*}/,"metatag"],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/@symbols/,"operator"],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/\.(?!\d|\.)[\w\-]*/,"operator.sql"],[/\d+(\.\d+)?/,"number"],[/\d+/,"number"],[/;/,"delimiter"],[/"/,{token:"string.quote",bracket:"@open",next:"@dstring"}],[/'/,{token:"string.quote",bracket:"@open",next:"@sstring"}]],dstring:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/[^\\$\[\]"]+/,"string"],[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],sstring:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/[^\\$\[\]']+/,"string"],[/@escapes/,"string.escape"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/#.*\\$/,{token:"comment",next:"@newlineComment"}],[/#.*(?!\\)$/,"comment"]],newlineComment:[[/.*\\$/,"comment"],[/.*(?!\\)$/,{token:"comment",next:"@pop"}]],nestedVariable:[[/[^\{\}\$]+/,"type.identifier"],[/\}/,{token:"identifier",next:"@pop"}]],nestedCall:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\]/,{token:"@brackets",next:"@pop"}],{include:"root"}],specialFunc:[[/"/,{token:"string",next:"@dstring"}],[/'/,{token:"string",next:"@sstring"}],[/\S+/,{token:"type",next:"@pop"}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["o8L2"],{o8L2:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return s});var o={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={tokenPostfix:".tcl",specialFunctions:["set","unset","rename","variable","proc","coroutine","foreach","incr","append","lappend","linsert","lreplace"],mainFunctions:["if","then","elseif","else","case","switch","while","for","break","continue","return","package","namespace","catch","exit","eval","expr","uplevel","upvar"],builtinFunctions:["file","info","concat","join","lindex","list","llength","lrange","lsearch","lsort","split","array","parray","binary","format","regexp","regsub","scan","string","subst","dict","cd","clock","exec","glob","pid","pwd","close","eof","fblocked","fconfigure","fcopy","fileevent","flush","gets","open","puts","read","seek","socket","tell","interp","after","auto_execok","auto_load","auto_mkindex","auto_reset","bgerror","error","global","history","load","source","time","trace","unknown","unset","update","vwait","winfo","wm","bind","event","pack","place","grid","font","bell","clipboard","destroy","focus","grab","lower","option","raise","selection","send","tk","tkwait","tk_bisque","tk_focusNext","tk_focusPrev","tk_focusFollowsMouse","tk_popup","tk_setPalette"],symbols:/[=><!~?:&|+\-*\/\^%]+/,brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],escapes:/\\(?:[abfnrtv\\"'\[\]\{\};\$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,variables:/(?:\$+(?:(?:\:\:?)?[a-zA-Z_]\w*)+)/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@specialFunctions":{token:"keyword.flow",next:"@specialFunc"},"@mainFunctions":"keyword","@builtinFunctions":"variable","@default":"operator.scss"}}],[/\s+\-+(?!\d|\.)\w*|{\*}/,"metatag"],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/@symbols/,"operator"],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/\.(?!\d|\.)[\w\-]*/,"operator.sql"],[/\d+(\.\d+)?/,"number"],[/\d+/,"number"],[/;/,"delimiter"],[/"/,{token:"string.quote",bracket:"@open",next:"@dstring"}],[/'/,{token:"string.quote",bracket:"@open",next:"@sstring"}]],dstring:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/[^\\$\[\]"]+/,"string"],[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],sstring:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/[^\\$\[\]']+/,"string"],[/@escapes/,"string.escape"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/#.*\\$/,{token:"comment",next:"@newlineComment"}],[/#.*(?!\\)$/,"comment"]],newlineComment:[[/.*\\$/,"comment"],[/.*(?!\\)$/,{token:"comment",next:"@pop"}]],nestedVariable:[[/[^\{\}\$]+/,"type.identifier"],[/\}/,{token:"identifier",next:"@pop"}]],nestedCall:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\]/,{token:"@brackets",next:"@pop"}],{include:"root"}],specialFunc:[[/"/,{token:"string",next:"@dstring"}],[/'/,{token:"string",next:"@sstring"}],[/\S+/,{token:"type",next:"@pop"}]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/pHlb.0998c21f.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/pHlb.0998c21f.js index 223831e3d..c37cb4b0b 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/pHlb.0998c21f.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/pHlb.0998c21f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["pHlb"],{pHlb:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return r}),t.d(n,"language",function(){return o});var s="undefined"==typeof monaco?self.monaco:monaco,r={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp("^\\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\\s*$"),action:{indentAction:s.languages.IndentAction.Indent}}],folding:{offSide:!0,markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},o={defaultToken:"",tokenPostfix:".python",keywords:["and","as","assert","break","class","continue","def","del","elif","else","except","exec","finally","for","from","global","if","import","in","is","lambda","None","not","or","pass","print","raise","return","self","try","while","with","yield","int","float","long","complex","hex","abs","all","any","apply","basestring","bin","bool","buffer","bytearray","callable","chr","classmethod","cmp","coerce","compile","complex","delattr","dict","dir","divmod","enumerate","eval","execfile","file","filter","format","frozenset","getattr","globals","hasattr","hash","help","id","input","intern","isinstance","issubclass","iter","len","locals","list","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","reversed","range","raw_input","reduce","reload","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","unichr","unicode","vars","xrange","zip","True","False","__dict__","__methods__","__members__","__class__","__bases__","__name__","__mro__","__subclasses__","__init__","__import__"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()]/,"@brackets"],[/@[a-zA-Z]\w*/,"tag"],[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}]],whitespace:[[/\s+/,"white"],[/(^#.*$)/,"comment"],[/'''/,"string","@endDocString"],[/"""/,"string","@endDblDocString"]],endDocString:[[/[^']+/,"string"],[/\\'/,"string"],[/'''/,"string","@popall"],[/'/,"string"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string","@popall"],[/"/,"string"]],numbers:[[/-?0x([abcdef]|[ABCDEF]|\d)+[lL]?/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?[jJ]?[lL]?/,"number"]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["pHlb"],{pHlb:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return r}),t.d(n,"language",function(){return o});var s="undefined"==typeof monaco?self.monaco:monaco,r={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp("^\\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\\s*$"),action:{indentAction:s.languages.IndentAction.Indent}}],folding:{offSide:!0,markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},o={defaultToken:"",tokenPostfix:".python",keywords:["and","as","assert","break","class","continue","def","del","elif","else","except","exec","finally","for","from","global","if","import","in","is","lambda","None","not","or","pass","print","raise","return","self","try","while","with","yield","int","float","long","complex","hex","abs","all","any","apply","basestring","bin","bool","buffer","bytearray","callable","chr","classmethod","cmp","coerce","compile","complex","delattr","dict","dir","divmod","enumerate","eval","execfile","file","filter","format","frozenset","getattr","globals","hasattr","hash","help","id","input","intern","isinstance","issubclass","iter","len","locals","list","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","reversed","range","raw_input","reduce","reload","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","unichr","unicode","vars","xrange","zip","True","False","__dict__","__methods__","__members__","__class__","__bases__","__name__","__mro__","__subclasses__","__init__","__import__"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()]/,"@brackets"],[/@[a-zA-Z]\w*/,"tag"],[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}]],whitespace:[[/\s+/,"white"],[/(^#.*$)/,"comment"],[/'''/,"string","@endDocString"],[/"""/,"string","@endDblDocString"]],endDocString:[[/[^']+/,"string"],[/\\'/,"string"],[/'''/,"string","@popall"],[/'/,"string"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string","@popall"],[/"/,"string"]],numbers:[[/-?0x([abcdef]|[ABCDEF]|\d)+[lL]?/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?[jJ]?[lL]?/,"number"]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/qngS.9d46c418.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/qngS.9d46c418.js index 077bdeeb9..e7ee2c193 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/qngS.9d46c418.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/qngS.9d46c418.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["qngS"],{qngS:function(e,n,r){"use strict";r.r(n),r.d(n,"conf",function(){return t}),r.d(n,"language",function(){return s});var t={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:["###","###"],lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".coffee",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:["and","or","is","isnt","not","on","yes","@","no","off","true","false","null","this","new","delete","typeof","in","instanceof","return","throw","break","continue","debugger","if","else","switch","for","while","do","try","catch","finally","class","extends","super","undefined","then","unless","until","loop","of","by","when"],symbols:/[=><!~?&%|+\-*\/\^\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\@[a-zA-Z_]\w*/,"variable.predefined"],[/[a-zA-Z_]\w*/,{cases:{this:"variable.predefined","@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/###/,"comment","@comment"],[/#.*$/,"comment"],["///",{token:"regexp",next:"@hereregexp"}],[/^(\s*)(@regEx)/,["","regexp"]],[/(\()(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\,)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\=)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\:)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\[)(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\!)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\&)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\|)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\?)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\{)(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\;)(\s*)(@regEx)/,["","","regexp"]],[/}/,{cases:{"$S2==interpolatedstring":{token:"string",next:"@pop"},"@default":"@brackets"}}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/0[0-7]+(?!\d)/,"number.octal"],[/\d+/,"number"],[/[,.]/,"delimiter"],[/"""/,"string",'@herestring."""'],[/'''/,"string","@herestring.'''"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\#\\]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/\./,"string.escape.invalid"],[/#{/,{cases:{'$S2=="':{token:"string",next:"root.interpolatedstring"},"@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/#/,"string"]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^#\\'"]+/,"string"],[/['"]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/#{/,{token:"string.quote",next:"root.interpolatedstring"}],[/#/,"string"]],comment:[[/[^#]+/,"comment"],[/###/,"comment","@pop"],[/#/,"comment"]],hereregexp:[[/[^\\\/#]+/,"regexp"],[/\\./,"regexp"],[/#.*$/,"comment"],["///[igm]*",{token:"regexp",next:"@pop"}],[/\//,"regexp"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["qngS"],{qngS:function(e,n,r){"use strict";r.r(n),r.d(n,"conf",function(){return t}),r.d(n,"language",function(){return s});var t={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:["###","###"],lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".coffee",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:["and","or","is","isnt","not","on","yes","@","no","off","true","false","null","this","new","delete","typeof","in","instanceof","return","throw","break","continue","debugger","if","else","switch","for","while","do","try","catch","finally","class","extends","super","undefined","then","unless","until","loop","of","by","when"],symbols:/[=><!~?&%|+\-*\/\^\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\@[a-zA-Z_]\w*/,"variable.predefined"],[/[a-zA-Z_]\w*/,{cases:{this:"variable.predefined","@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/###/,"comment","@comment"],[/#.*$/,"comment"],["///",{token:"regexp",next:"@hereregexp"}],[/^(\s*)(@regEx)/,["","regexp"]],[/(\()(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\,)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\=)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\:)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\[)(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\!)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\&)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\|)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\?)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\{)(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\;)(\s*)(@regEx)/,["","","regexp"]],[/}/,{cases:{"$S2==interpolatedstring":{token:"string",next:"@pop"},"@default":"@brackets"}}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/0[0-7]+(?!\d)/,"number.octal"],[/\d+/,"number"],[/[,.]/,"delimiter"],[/"""/,"string",'@herestring."""'],[/'''/,"string","@herestring.'''"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\#\\]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/\./,"string.escape.invalid"],[/#{/,{cases:{'$S2=="':{token:"string",next:"root.interpolatedstring"},"@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/#/,"string"]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^#\\'"]+/,"string"],[/['"]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/#{/,{token:"string.quote",next:"root.interpolatedstring"}],[/#/,"string"]],comment:[[/[^#]+/,"comment"],[/###/,"comment","@pop"],[/#/,"comment"]],hereregexp:[[/[^\\\/#]+/,"regexp"],[/\\./,"regexp"],[/#.*$/,"comment"],["///[igm]*",{token:"regexp",next:"@pop"}],[/\//,"regexp"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/r5mX.8e8c0b19.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/r5mX.8e8c0b19.js index e2300a123..dbb55b877 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/r5mX.8e8c0b19.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/r5mX.8e8c0b19.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["r5mX"],{r5mX:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",function(){return t}),s.d(n,"language",function(){return o});var t={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"#",blockComment:["<#","#>"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},o={defaultToken:"",ignoreCase:!0,tokenPostfix:".ps1",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],keywords:["begin","break","catch","class","continue","data","define","do","dynamicparam","else","elseif","end","exit","filter","finally","for","foreach","from","function","if","in","param","process","return","switch","throw","trap","try","until","using","var","while","workflow","parallel","sequence","inlinescript","configuration"],helpKeywords:/SYNOPSIS|DESCRIPTION|PARAMETER|EXAMPLE|INPUTS|OUTPUTS|NOTES|LINK|COMPONENT|ROLE|FUNCTIONALITY|FORWARDHELPTARGETNAME|FORWARDHELPCATEGORY|REMOTEHELPRUNSPACE|EXTERNALHELP/,symbols:/[=><!~?&%|+\-*\/\^;\.,]+/,escapes:/`(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_][\w-]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/^:\w*/,"metatag"],[/\$(\{((global|local|private|script|using):)?[\w]+\}|((global|local|private|script|using):)?[\w]+)/,"variable"],[/<#/,"comment","@comment"],[/#.*$/,"comment"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+?/,"number"],[/[;,.]/,"delimiter"],[/\@"/,"string",'@herestring."'],[/\@'/,"string","@herestring.'"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\$`]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,{cases:{"@eos":{token:"string.escape",next:"@popall"},"@default":"string.escape"}}],[/`./,{cases:{"@eos":{token:"string.escape.invalid",next:"@popall"},"@default":"string.escape.invalid"}}],[/\$[\w]+$/,{cases:{'$S2=="':{token:"variable",next:"@popall"},"@default":{token:"string",next:"@popall"}}}],[/\$[\w]+/,{cases:{'$S2=="':"variable","@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}}}]],herestring:[[/^\s*(["'])@/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^\$`]+/,"string"],[/@escapes/,"string.escape"],[/`./,"string.escape.invalid"],[/\$[\w]+/,{cases:{'$S2=="':"variable","@default":"string"}}]],comment:[[/[^#\.]+/,"comment"],[/#>/,"comment","@pop"],[/(\.)(@helpKeywords)(?!\w)/,{token:"comment.keyword.$2"}],[/[\.#]/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["r5mX"],{r5mX:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",function(){return t}),s.d(n,"language",function(){return o});var t={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"#",blockComment:["<#","#>"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},o={defaultToken:"",ignoreCase:!0,tokenPostfix:".ps1",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],keywords:["begin","break","catch","class","continue","data","define","do","dynamicparam","else","elseif","end","exit","filter","finally","for","foreach","from","function","if","in","param","process","return","switch","throw","trap","try","until","using","var","while","workflow","parallel","sequence","inlinescript","configuration"],helpKeywords:/SYNOPSIS|DESCRIPTION|PARAMETER|EXAMPLE|INPUTS|OUTPUTS|NOTES|LINK|COMPONENT|ROLE|FUNCTIONALITY|FORWARDHELPTARGETNAME|FORWARDHELPCATEGORY|REMOTEHELPRUNSPACE|EXTERNALHELP/,symbols:/[=><!~?&%|+\-*\/\^;\.,]+/,escapes:/`(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_][\w-]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/^:\w*/,"metatag"],[/\$(\{((global|local|private|script|using):)?[\w]+\}|((global|local|private|script|using):)?[\w]+)/,"variable"],[/<#/,"comment","@comment"],[/#.*$/,"comment"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+?/,"number"],[/[;,.]/,"delimiter"],[/\@"/,"string",'@herestring."'],[/\@'/,"string","@herestring.'"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\$`]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,{cases:{"@eos":{token:"string.escape",next:"@popall"},"@default":"string.escape"}}],[/`./,{cases:{"@eos":{token:"string.escape.invalid",next:"@popall"},"@default":"string.escape.invalid"}}],[/\$[\w]+$/,{cases:{'$S2=="':{token:"variable",next:"@popall"},"@default":{token:"string",next:"@popall"}}}],[/\$[\w]+/,{cases:{'$S2=="':"variable","@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}}}]],herestring:[[/^\s*(["'])@/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^\$`]+/,"string"],[/@escapes/,"string.escape"],[/`./,"string.escape.invalid"],[/\$[\w]+/,{cases:{'$S2=="':"variable","@default":"string"}}]],comment:[[/[^#\.]+/,"comment"],[/#>/,"comment","@pop"],[/(\.)(@helpKeywords)(?!\w)/,{token:"comment.keyword.$2"}],[/[\.#]/,"comment"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rbDI.b92223d4.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rbDI.b92223d4.js index 4fdce1939..d5ff239c2 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rbDI.b92223d4.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rbDI.b92223d4.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["rbDI"],{rbDI:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return s});var o={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},s={defaultToken:"",tokenPostfix:".aes",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["contract","library","entrypoint","function","stateful","state","hash","signature","tuple","list","address","string","bool","int","record","datatype","type","option","oracle","oracle_query","Call","Bits","Bytes","Oracle","String","Crypto","Address","Auth","Chain","None","Some","bits","bytes","event","let","map","private","public","true","false","var","if","else","throw"],operators:["=",">","<","!","~","?","::",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,floatsuffix:/[fFlL]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/int\d*/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["rbDI"],{rbDI:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return s});var o={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},s={defaultToken:"",tokenPostfix:".aes",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["contract","library","entrypoint","function","stateful","state","hash","signature","tuple","list","address","string","bool","int","record","datatype","type","option","oracle","oracle_query","Call","Bits","Bytes","Oracle","String","Crypto","Address","Auth","Chain","None","Some","bits","bytes","event","let","map","private","public","true","false","var","if","else","throw"],operators:["=",">","<","!","~","?","::",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,floatsuffix:/[fFlL]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/int\d*/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rj1P.a7bcc72a.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rj1P.a7bcc72a.js index e0b93ba52..e2b2d2059 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rj1P.a7bcc72a.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rj1P.a7bcc72a.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["rj1P"],{rj1P:function(e,t,s){"use strict";s.r(t),s.d(t,"conf",function(){return n}),s.d(t,"language",function(){return r});var n={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},r={defaultToken:"",tokenPostfix:".perl",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["__DATA__","else","lock","__END__","elsif","lt","__FILE__","eq","__LINE__","exp","ne","sub","__PACKAGE__","for","no","and","foreach","or","unless","cmp","ge","package","until","continue","gt","while","CORE","if","xor","do","le","__DIE__","__WARN__"],builtinFunctions:["-A","END","length","setpgrp","-B","endgrent","link","setpriority","-b","endhostent","listen","setprotoent","-C","endnetent","local","setpwent","-c","endprotoent","localtime","setservent","-d","endpwent","log","setsockopt","-e","endservent","lstat","shift","-f","eof","map","shmctl","-g","eval","mkdir","shmget","-k","exec","msgctl","shmread","-l","exists","msgget","shmwrite","-M","exit","msgrcv","shutdown","-O","fcntl","msgsnd","sin","-o","fileno","my","sleep","-p","flock","next","socket","-r","fork","not","socketpair","-R","format","oct","sort","-S","formline","open","splice","-s","getc","opendir","split","-T","getgrent","ord","sprintf","-t","getgrgid","our","sqrt","-u","getgrnam","pack","srand","-w","gethostbyaddr","pipe","stat","-W","gethostbyname","pop","state","-X","gethostent","pos","study","-x","getlogin","print","substr","-z","getnetbyaddr","printf","symlink","abs","getnetbyname","prototype","syscall","accept","getnetent","push","sysopen","alarm","getpeername","quotemeta","sysread","atan2","getpgrp","rand","sysseek","AUTOLOAD","getppid","read","system","BEGIN","getpriority","readdir","syswrite","bind","getprotobyname","readline","tell","binmode","getprotobynumber","readlink","telldir","bless","getprotoent","readpipe","tie","break","getpwent","recv","tied","caller","getpwnam","redo","time","chdir","getpwuid","ref","times","CHECK","getservbyname","rename","truncate","chmod","getservbyport","require","uc","chomp","getservent","reset","ucfirst","chop","getsockname","return","umask","chown","getsockopt","reverse","undef","chr","glob","rewinddir","UNITCHECK","chroot","gmtime","rindex","unlink","close","goto","rmdir","unpack","closedir","grep","say","unshift","connect","hex","scalar","untie","cos","index","seek","use","crypt","INIT","seekdir","utime","dbmclose","int","select","values","dbmopen","ioctl","semctl","vec","defined","join","semget","wait","delete","keys","semop","waitpid","DESTROY","kill","send","wantarray","die","last","setgrent","warn","dump","lc","sethostent","write","each","lcfirst","setnetent"],builtinFileHandlers:["ARGV","STDERR","STDOUT","ARGVOUT","STDIN","ENV"],builtinVariables:["$!","$^RE_TRIE_MAXBUF","$LAST_REGEXP_CODE_RESULT",'$"',"$^S","$LIST_SEPARATOR","$#","$^T","$MATCH","$$","$^TAINT","$MULTILINE_MATCHING","$%","$^UNICODE","$NR","$&","$^UTF8LOCALE","$OFMT","$'","$^V","$OFS","$(","$^W","$ORS","$)","$^WARNING_BITS","$OS_ERROR","$*","$^WIDE_SYSTEM_CALLS","$OSNAME","$+","$^X","$OUTPUT_AUTO_FLUSH","$,","$_","$OUTPUT_FIELD_SEPARATOR","$-","$`","$OUTPUT_RECORD_SEPARATOR","$.","$a","$PERL_VERSION","$/","$ACCUMULATOR","$PERLDB","$0","$ARG","$PID","$:","$ARGV","$POSTMATCH","$;","$b","$PREMATCH","$<","$BASETIME","$PROCESS_ID","$=","$CHILD_ERROR","$PROGRAM_NAME","$>","$COMPILING","$REAL_GROUP_ID","$?","$DEBUGGING","$REAL_USER_ID","$@","$EFFECTIVE_GROUP_ID","$RS","$[","$EFFECTIVE_USER_ID","$SUBSCRIPT_SEPARATOR","$\\","$EGID","$SUBSEP","$]","$ERRNO","$SYSTEM_FD_MAX","$^","$EUID","$UID","$^A","$EVAL_ERROR","$WARNING","$^C","$EXCEPTIONS_BEING_CAUGHT","$|","$^CHILD_ERROR_NATIVE","$EXECUTABLE_NAME","$~","$^D","$EXTENDED_OS_ERROR","%!","$^E","$FORMAT_FORMFEED","%^H","$^ENCODING","$FORMAT_LINE_BREAK_CHARACTERS","%ENV","$^F","$FORMAT_LINES_LEFT","%INC","$^H","$FORMAT_LINES_PER_PAGE","%OVERLOAD","$^I","$FORMAT_NAME","%SIG","$^L","$FORMAT_PAGE_NUMBER","@+","$^M","$FORMAT_TOP_NAME","@-","$^N","$GID","@_","$^O","$INPLACE_EDIT","@ARGV","$^OPEN","$INPUT_LINE_NUMBER","@INC","$^P","$INPUT_RECORD_SEPARATOR","@LAST_MATCH_START","$^R","$LAST_MATCH_END","$^RE_DEBUG_FLAGS","$LAST_PAREN_MATCH"],symbols:/[:+\-\^*$&%@=<>!?|\/~\.]/,quoteLikeOps:["qr","m","s","q","qq","qx","qw","tr","y"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/[a-zA-Z\-_][\w\-_]*/,{cases:{"@keywords":"keyword","@builtinFunctions":"type.identifier","@builtinFileHandlers":"variable.predefined","@quoteLikeOps":{token:"@rematch",next:"quotedConstructs"},"@default":""}}],[/[\$@%][*@#?\+\-\$!\w\\\^><~:;\.]+/,{cases:{"@builtinVariables":"variable.predefined","@default":"variable"}}],{include:"@strings"},{include:"@dblStrings"},{include:"@perldoc"},{include:"@heredoc"},[/[{}\[\]()]/,"@brackets"],[/[\/](?:(?:\[(?:\\]|[^\]])+\])|(?:\\\/|[^\]\/]))*[\/]\w*\s*(?=[).,;]|$)/,"regexp"],[/@symbols/,"operators"],{include:"@numbers"},[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"],[/(^#!.*$)/,"metatag"],[/(^#.*$)/,"comment"]],numbers:[[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"]],strings:[[/'/,"string","@stringBody"]],stringBody:[[/'/,"string","@popall"],[/\\'/,"string.escape"],[/./,"string"]],dblStrings:[[/"/,"string","@dblStringBody"]],dblStringBody:[[/"/,"string","@popall"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],{include:"@variables"},[/./,"string"]],quotedConstructs:[[/(q|qw|tr|y)\s*\(/,{token:"string.delim",switchTo:"@qstring.(.)"}],[/(q|qw|tr|y)\s*\[/,{token:"string.delim",switchTo:"@qstring.[.]"}],[/(q|qw|tr|y)\s*\{/,{token:"string.delim",switchTo:"@qstring.{.}"}],[/(q|qw|tr|y)\s*</,{token:"string.delim",switchTo:"@qstring.<.>"}],[/(q|qw|tr|y)#/,{token:"string.delim",switchTo:"@qstring.#.#"}],[/(q|qw|tr|y)\s*([^A-Za-z0-9#\s])/,{token:"string.delim",switchTo:"@qstring.$2.$2"}],[/(q|qw|tr|y)\s+(\w)/,{token:"string.delim",switchTo:"@qstring.$2.$2"}],[/(qr|m|s)\s*\(/,{token:"regexp.delim",switchTo:"@qregexp.(.)"}],[/(qr|m|s)\s*\[/,{token:"regexp.delim",switchTo:"@qregexp.[.]"}],[/(qr|m|s)\s*\{/,{token:"regexp.delim",switchTo:"@qregexp.{.}"}],[/(qr|m|s)\s*</,{token:"regexp.delim",switchTo:"@qregexp.<.>"}],[/(qr|m|s)#/,{token:"regexp.delim",switchTo:"@qregexp.#.#"}],[/(qr|m|s)\s*([^A-Za-z0-9_#\s])/,{token:"regexp.delim",switchTo:"@qregexp.$2.$2"}],[/(qr|m|s)\s+(\w)/,{token:"regexp.delim",switchTo:"@qregexp.$2.$2"}],[/(qq|qx)\s*\(/,{token:"string.delim",switchTo:"@qqstring.(.)"}],[/(qq|qx)\s*\[/,{token:"string.delim",switchTo:"@qqstring.[.]"}],[/(qq|qx)\s*\{/,{token:"string.delim",switchTo:"@qqstring.{.}"}],[/(qq|qx)\s*</,{token:"string.delim",switchTo:"@qqstring.<.>"}],[/(qq|qx)#/,{token:"string.delim",switchTo:"@qqstring.#.#"}],[/(qq|qx)\s*([^A-Za-z0-9#\s])/,{token:"string.delim",switchTo:"@qqstring.$2.$2"}],[/(qq|qx)\s+(\w)/,{token:"string.delim",switchTo:"@qqstring.$2.$2"}]],qstring:[[/\\./,"string.escape"],[/./,{cases:{"$#==$S3":{token:"string.delim",next:"@pop"},"$#==$S2":{token:"string.delim",next:"@push"},"@default":"string"}}]],qregexp:[{include:"@variables"},[/\\./,"regexp.escape"],[/./,{cases:{"$#==$S3":{token:"regexp.delim",next:"@regexpModifiers"},"$#==$S2":{token:"regexp.delim",next:"@push"},"@default":"regexp"}}]],regexpModifiers:[[/[msixpodualngcer]+/,{token:"regexp.modifier",next:"@popall"}]],qqstring:[{include:"@variables"},{include:"@qstring"}],heredoc:[[/<<\s*['"`]?([\w\-]+)['"`]?/,{token:"string.heredoc.delimiter",next:"@heredocBody.$1"}]],heredocBody:[[/^([\w\-]+)$/,{cases:{"$1==$S2":[{token:"string.heredoc.delimiter",next:"@popall"}],"@default":"string.heredoc"}}],[/./,"string.heredoc"]],perldoc:[[/^=\w/,"comment.doc","@perldocBody"]],perldocBody:[[/^=cut\b/,"type.identifier","@popall"],[/./,"comment.doc"]],variables:[[/\$\w+/,"variable"],[/@\w+/,"variable"],[/%\w+/,"variable"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["rj1P"],{rj1P:function(e,t,s){"use strict";s.r(t),s.d(t,"conf",function(){return n}),s.d(t,"language",function(){return r});var n={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},r={defaultToken:"",tokenPostfix:".perl",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["__DATA__","else","lock","__END__","elsif","lt","__FILE__","eq","__LINE__","exp","ne","sub","__PACKAGE__","for","no","and","foreach","or","unless","cmp","ge","package","until","continue","gt","while","CORE","if","xor","do","le","__DIE__","__WARN__"],builtinFunctions:["-A","END","length","setpgrp","-B","endgrent","link","setpriority","-b","endhostent","listen","setprotoent","-C","endnetent","local","setpwent","-c","endprotoent","localtime","setservent","-d","endpwent","log","setsockopt","-e","endservent","lstat","shift","-f","eof","map","shmctl","-g","eval","mkdir","shmget","-k","exec","msgctl","shmread","-l","exists","msgget","shmwrite","-M","exit","msgrcv","shutdown","-O","fcntl","msgsnd","sin","-o","fileno","my","sleep","-p","flock","next","socket","-r","fork","not","socketpair","-R","format","oct","sort","-S","formline","open","splice","-s","getc","opendir","split","-T","getgrent","ord","sprintf","-t","getgrgid","our","sqrt","-u","getgrnam","pack","srand","-w","gethostbyaddr","pipe","stat","-W","gethostbyname","pop","state","-X","gethostent","pos","study","-x","getlogin","print","substr","-z","getnetbyaddr","printf","symlink","abs","getnetbyname","prototype","syscall","accept","getnetent","push","sysopen","alarm","getpeername","quotemeta","sysread","atan2","getpgrp","rand","sysseek","AUTOLOAD","getppid","read","system","BEGIN","getpriority","readdir","syswrite","bind","getprotobyname","readline","tell","binmode","getprotobynumber","readlink","telldir","bless","getprotoent","readpipe","tie","break","getpwent","recv","tied","caller","getpwnam","redo","time","chdir","getpwuid","ref","times","CHECK","getservbyname","rename","truncate","chmod","getservbyport","require","uc","chomp","getservent","reset","ucfirst","chop","getsockname","return","umask","chown","getsockopt","reverse","undef","chr","glob","rewinddir","UNITCHECK","chroot","gmtime","rindex","unlink","close","goto","rmdir","unpack","closedir","grep","say","unshift","connect","hex","scalar","untie","cos","index","seek","use","crypt","INIT","seekdir","utime","dbmclose","int","select","values","dbmopen","ioctl","semctl","vec","defined","join","semget","wait","delete","keys","semop","waitpid","DESTROY","kill","send","wantarray","die","last","setgrent","warn","dump","lc","sethostent","write","each","lcfirst","setnetent"],builtinFileHandlers:["ARGV","STDERR","STDOUT","ARGVOUT","STDIN","ENV"],builtinVariables:["$!","$^RE_TRIE_MAXBUF","$LAST_REGEXP_CODE_RESULT",'$"',"$^S","$LIST_SEPARATOR","$#","$^T","$MATCH","$$","$^TAINT","$MULTILINE_MATCHING","$%","$^UNICODE","$NR","$&","$^UTF8LOCALE","$OFMT","$'","$^V","$OFS","$(","$^W","$ORS","$)","$^WARNING_BITS","$OS_ERROR","$*","$^WIDE_SYSTEM_CALLS","$OSNAME","$+","$^X","$OUTPUT_AUTO_FLUSH","$,","$_","$OUTPUT_FIELD_SEPARATOR","$-","$`","$OUTPUT_RECORD_SEPARATOR","$.","$a","$PERL_VERSION","$/","$ACCUMULATOR","$PERLDB","$0","$ARG","$PID","$:","$ARGV","$POSTMATCH","$;","$b","$PREMATCH","$<","$BASETIME","$PROCESS_ID","$=","$CHILD_ERROR","$PROGRAM_NAME","$>","$COMPILING","$REAL_GROUP_ID","$?","$DEBUGGING","$REAL_USER_ID","$@","$EFFECTIVE_GROUP_ID","$RS","$[","$EFFECTIVE_USER_ID","$SUBSCRIPT_SEPARATOR","$\\","$EGID","$SUBSEP","$]","$ERRNO","$SYSTEM_FD_MAX","$^","$EUID","$UID","$^A","$EVAL_ERROR","$WARNING","$^C","$EXCEPTIONS_BEING_CAUGHT","$|","$^CHILD_ERROR_NATIVE","$EXECUTABLE_NAME","$~","$^D","$EXTENDED_OS_ERROR","%!","$^E","$FORMAT_FORMFEED","%^H","$^ENCODING","$FORMAT_LINE_BREAK_CHARACTERS","%ENV","$^F","$FORMAT_LINES_LEFT","%INC","$^H","$FORMAT_LINES_PER_PAGE","%OVERLOAD","$^I","$FORMAT_NAME","%SIG","$^L","$FORMAT_PAGE_NUMBER","@+","$^M","$FORMAT_TOP_NAME","@-","$^N","$GID","@_","$^O","$INPLACE_EDIT","@ARGV","$^OPEN","$INPUT_LINE_NUMBER","@INC","$^P","$INPUT_RECORD_SEPARATOR","@LAST_MATCH_START","$^R","$LAST_MATCH_END","$^RE_DEBUG_FLAGS","$LAST_PAREN_MATCH"],symbols:/[:+\-\^*$&%@=<>!?|\/~\.]/,quoteLikeOps:["qr","m","s","q","qq","qx","qw","tr","y"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/[a-zA-Z\-_][\w\-_]*/,{cases:{"@keywords":"keyword","@builtinFunctions":"type.identifier","@builtinFileHandlers":"variable.predefined","@quoteLikeOps":{token:"@rematch",next:"quotedConstructs"},"@default":""}}],[/[\$@%][*@#?\+\-\$!\w\\\^><~:;\.]+/,{cases:{"@builtinVariables":"variable.predefined","@default":"variable"}}],{include:"@strings"},{include:"@dblStrings"},{include:"@perldoc"},{include:"@heredoc"},[/[{}\[\]()]/,"@brackets"],[/[\/](?:(?:\[(?:\\]|[^\]])+\])|(?:\\\/|[^\]\/]))*[\/]\w*\s*(?=[).,;]|$)/,"regexp"],[/@symbols/,"operators"],{include:"@numbers"},[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"],[/(^#!.*$)/,"metatag"],[/(^#.*$)/,"comment"]],numbers:[[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"]],strings:[[/'/,"string","@stringBody"]],stringBody:[[/'/,"string","@popall"],[/\\'/,"string.escape"],[/./,"string"]],dblStrings:[[/"/,"string","@dblStringBody"]],dblStringBody:[[/"/,"string","@popall"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],{include:"@variables"},[/./,"string"]],quotedConstructs:[[/(q|qw|tr|y)\s*\(/,{token:"string.delim",switchTo:"@qstring.(.)"}],[/(q|qw|tr|y)\s*\[/,{token:"string.delim",switchTo:"@qstring.[.]"}],[/(q|qw|tr|y)\s*\{/,{token:"string.delim",switchTo:"@qstring.{.}"}],[/(q|qw|tr|y)\s*</,{token:"string.delim",switchTo:"@qstring.<.>"}],[/(q|qw|tr|y)#/,{token:"string.delim",switchTo:"@qstring.#.#"}],[/(q|qw|tr|y)\s*([^A-Za-z0-9#\s])/,{token:"string.delim",switchTo:"@qstring.$2.$2"}],[/(q|qw|tr|y)\s+(\w)/,{token:"string.delim",switchTo:"@qstring.$2.$2"}],[/(qr|m|s)\s*\(/,{token:"regexp.delim",switchTo:"@qregexp.(.)"}],[/(qr|m|s)\s*\[/,{token:"regexp.delim",switchTo:"@qregexp.[.]"}],[/(qr|m|s)\s*\{/,{token:"regexp.delim",switchTo:"@qregexp.{.}"}],[/(qr|m|s)\s*</,{token:"regexp.delim",switchTo:"@qregexp.<.>"}],[/(qr|m|s)#/,{token:"regexp.delim",switchTo:"@qregexp.#.#"}],[/(qr|m|s)\s*([^A-Za-z0-9_#\s])/,{token:"regexp.delim",switchTo:"@qregexp.$2.$2"}],[/(qr|m|s)\s+(\w)/,{token:"regexp.delim",switchTo:"@qregexp.$2.$2"}],[/(qq|qx)\s*\(/,{token:"string.delim",switchTo:"@qqstring.(.)"}],[/(qq|qx)\s*\[/,{token:"string.delim",switchTo:"@qqstring.[.]"}],[/(qq|qx)\s*\{/,{token:"string.delim",switchTo:"@qqstring.{.}"}],[/(qq|qx)\s*</,{token:"string.delim",switchTo:"@qqstring.<.>"}],[/(qq|qx)#/,{token:"string.delim",switchTo:"@qqstring.#.#"}],[/(qq|qx)\s*([^A-Za-z0-9#\s])/,{token:"string.delim",switchTo:"@qqstring.$2.$2"}],[/(qq|qx)\s+(\w)/,{token:"string.delim",switchTo:"@qqstring.$2.$2"}]],qstring:[[/\\./,"string.escape"],[/./,{cases:{"$#==$S3":{token:"string.delim",next:"@pop"},"$#==$S2":{token:"string.delim",next:"@push"},"@default":"string"}}]],qregexp:[{include:"@variables"},[/\\./,"regexp.escape"],[/./,{cases:{"$#==$S3":{token:"regexp.delim",next:"@regexpModifiers"},"$#==$S2":{token:"regexp.delim",next:"@push"},"@default":"regexp"}}]],regexpModifiers:[[/[msixpodualngcer]+/,{token:"regexp.modifier",next:"@popall"}]],qqstring:[{include:"@variables"},{include:"@qstring"}],heredoc:[[/<<\s*['"`]?([\w\-]+)['"`]?/,{token:"string.heredoc.delimiter",next:"@heredocBody.$1"}]],heredocBody:[[/^([\w\-]+)$/,{cases:{"$1==$S2":[{token:"string.heredoc.delimiter",next:"@popall"}],"@default":"string.heredoc"}}],[/./,"string.heredoc"]],perldoc:[[/^=\w/,"comment.doc","@perldocBody"]],perldocBody:[[/^=cut\b/,"type.identifier","@popall"],[/./,"comment.doc"]],variables:[[/\$\w+/,"variable"],[/@\w+/,"variable"],[/%\w+/,"variable"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rkyD.0ff211af.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rkyD.0ff211af.js index 7ef1460ba..3db0be253 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rkyD.0ff211af.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/rkyD.0ff211af.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["rkyD"],{rkyD:function(E,T,R){"use strict";R.r(T),R.d(T,"conf",function(){return A}),R.d(T,"language",function(){return I});var A={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},I={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["ABORT_AFTER_WAIT","ABSENT","ABSOLUTE","ACCENT_SENSITIVITY","ACTION","ACTIVATION","ACTIVE","ADD","ADDRESS","ADMIN","AES","AES_128","AES_192","AES_256","AFFINITY","AFTER","AGGREGATE","ALGORITHM","ALL_CONSTRAINTS","ALL_ERRORMSGS","ALL_INDEXES","ALL_LEVELS","ALL_SPARSE_COLUMNS","ALLOW_CONNECTIONS","ALLOW_MULTIPLE_EVENT_LOSS","ALLOW_PAGE_LOCKS","ALLOW_ROW_LOCKS","ALLOW_SINGLE_EVENT_LOSS","ALLOW_SNAPSHOT_ISOLATION","ALLOWED","ALTER","ANONYMOUS","ANSI_DEFAULTS","ANSI_NULL_DEFAULT","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_NULLS","ANSI_PADDING","ANSI_WARNINGS","APPEND","APPLICATION","APPLICATION_LOG","ARITHABORT","ARITHIGNORE","AS","ASC","ASSEMBLY","ASYMMETRIC","ASYNCHRONOUS_COMMIT","AT","ATOMIC","ATTACH","ATTACH_REBUILD_LOG","AUDIT","AUDIT_GUID","AUTHENTICATION","AUTHORIZATION","AUTO","AUTO_CLEANUP","AUTO_CLOSE","AUTO_CREATE_STATISTICS","AUTO_SHRINK","AUTO_UPDATE_STATISTICS","AUTO_UPDATE_STATISTICS_ASYNC","AUTOMATED_BACKUP_PREFERENCE","AUTOMATIC","AVAILABILITY","AVAILABILITY_MODE","BACKUP","BACKUP_PRIORITY","BASE64","BATCHSIZE","BEGIN","BEGIN_DIALOG","BIGINT","BINARY","BINDING","BIT","BLOCKERS","BLOCKSIZE","BOUNDING_BOX","BREAK","BROKER","BROKER_INSTANCE","BROWSE","BUCKET_COUNT","BUFFER","BUFFERCOUNT","BULK","BULK_LOGGED","BY","CACHE","CALL","CALLED","CALLER","CAP_CPU_PERCENT","CASCADE","CASE","CATALOG","CATCH","CELLS_PER_OBJECT","CERTIFICATE","CHANGE_RETENTION","CHANGE_TRACKING","CHANGES","CHAR","CHARACTER","CHECK","CHECK_CONSTRAINTS","CHECK_EXPIRATION","CHECK_POLICY","CHECKALLOC","CHECKCATALOG","CHECKCONSTRAINTS","CHECKDB","CHECKFILEGROUP","CHECKIDENT","CHECKPOINT","CHECKTABLE","CLASSIFIER_FUNCTION","CLEANTABLE","CLEANUP","CLEAR","CLOSE","CLUSTER","CLUSTERED","CODEPAGE","COLLATE","COLLECTION","COLUMN","COLUMN_SET","COLUMNS","COLUMNSTORE","COLUMNSTORE_ARCHIVE","COMMIT","COMMITTED","COMPATIBILITY_LEVEL","COMPRESSION","COMPUTE","CONCAT","CONCAT_NULL_YIELDS_NULL","CONFIGURATION","CONNECT","CONSTRAINT","CONTAINMENT","CONTENT","CONTEXT","CONTINUE","CONTINUE_AFTER_ERROR","CONTRACT","CONTRACT_NAME","CONTROL","CONVERSATION","COOKIE","COPY_ONLY","COUNTER","CPU","CREATE","CREATE_NEW","CREATION_DISPOSITION","CREDENTIAL","CRYPTOGRAPHIC","CUBE","CURRENT","CURRENT_DATE","CURSOR","CURSOR_CLOSE_ON_COMMIT","CURSOR_DEFAULT","CYCLE","DATA","DATA_COMPRESSION","DATA_PURITY","DATABASE","DATABASE_DEFAULT","DATABASE_MIRRORING","DATABASE_SNAPSHOT","DATAFILETYPE","DATE","DATE_CORRELATION_OPTIMIZATION","DATEFIRST","DATEFORMAT","DATETIME","DATETIME2","DATETIMEOFFSET","DAY","DAYOFYEAR","DAYS","DB_CHAINING","DBCC","DBREINDEX","DDL_DATABASE_LEVEL_EVENTS","DEADLOCK_PRIORITY","DEALLOCATE","DEC","DECIMAL","DECLARE","DECRYPTION","DEFAULT","DEFAULT_DATABASE","DEFAULT_FULLTEXT_LANGUAGE","DEFAULT_LANGUAGE","DEFAULT_SCHEMA","DEFINITION","DELAY","DELAYED_DURABILITY","DELETE","DELETED","DENSITY_VECTOR","DENY","DEPENDENTS","DES","DESC","DESCRIPTION","DESX","DHCP","DIAGNOSTICS","DIALOG","DIFFERENTIAL","DIRECTORY_NAME","DISABLE","DISABLE_BROKER","DISABLED","DISK","DISTINCT","DISTRIBUTED","DOCUMENT","DOUBLE","DROP","DROP_EXISTING","DROPCLEANBUFFERS","DUMP","DURABILITY","DYNAMIC","EDITION","ELEMENTS","ELSE","EMERGENCY","EMPTY","EMPTYFILE","ENABLE","ENABLE_BROKER","ENABLED","ENCRYPTION","END","ENDPOINT","ENDPOINT_URL","ERRLVL","ERROR","ERROR_BROKER_CONVERSATIONS","ERRORFILE","ESCAPE","ESTIMATEONLY","EVENT","EVENT_RETENTION_MODE","EXEC","EXECUTABLE","EXECUTE","EXIT","EXPAND","EXPIREDATE","EXPIRY_DATE","EXPLICIT","EXTENDED_LOGICAL_CHECKS","EXTENSION","EXTERNAL","EXTERNAL_ACCESS","FAIL_OPERATION","FAILOVER","FAILOVER_MODE","FAILURE_CONDITION_LEVEL","FALSE","FAN_IN","FAST","FAST_FORWARD","FETCH","FIELDTERMINATOR","FILE","FILEGROUP","FILEGROWTH","FILELISTONLY","FILENAME","FILEPATH","FILESTREAM","FILESTREAM_ON","FILETABLE_COLLATE_FILENAME","FILETABLE_DIRECTORY","FILETABLE_FULLPATH_UNIQUE_CONSTRAINT_NAME","FILETABLE_NAMESPACE","FILETABLE_PRIMARY_KEY_CONSTRAINT_NAME","FILETABLE_STREAMID_UNIQUE_CONSTRAINT_NAME","FILLFACTOR","FILTERING","FIRE_TRIGGERS","FIRST","FIRSTROW","FLOAT","FMTONLY","FOLLOWING","FOR","FORCE","FORCE_FAILOVER_ALLOW_DATA_LOSS","FORCE_SERVICE_ALLOW_DATA_LOSS","FORCED","FORCEPLAN","FORCESCAN","FORCESEEK","FOREIGN","FORMATFILE","FORMSOF","FORWARD_ONLY","FREE","FREEPROCCACHE","FREESESSIONCACHE","FREESYSTEMCACHE","FROM","FULL","FULLSCAN","FULLTEXT","FUNCTION","GB","GEOGRAPHY_AUTO_GRID","GEOGRAPHY_GRID","GEOMETRY_AUTO_GRID","GEOMETRY_GRID","GET","GLOBAL","GO","GOTO","GOVERNOR","GRANT","GRIDS","GROUP","GROUP_MAX_REQUESTS","HADR","HASH","HASHED","HAVING","HEADERONLY","HEALTH_CHECK_TIMEOUT","HELP","HIERARCHYID","HIGH","HINT","HISTOGRAM","HOLDLOCK","HONOR_BROKER_PRIORITY","HOUR","HOURS","IDENTITY","IDENTITY_INSERT","IDENTITY_VALUE","IDENTITYCOL","IF","IGNORE_CONSTRAINTS","IGNORE_DUP_KEY","IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX","IGNORE_TRIGGERS","IMAGE","IMMEDIATE","IMPERSONATE","IMPLICIT_TRANSACTIONS","IMPORTANCE","INCLUDE","INCREMENT","INCREMENTAL","INDEX","INDEXDEFRAG","INFINITE","INFLECTIONAL","INIT","INITIATOR","INPUT","INPUTBUFFER","INSENSITIVE","INSERT","INSERTED","INSTEAD","INT","INTEGER","INTO","IO","IP","ISABOUT","ISOLATION","JOB","KB","KEEP","KEEP_CDC","KEEP_NULLS","KEEP_REPLICATION","KEEPDEFAULTS","KEEPFIXED","KEEPIDENTITY","KEEPNULLS","KERBEROS","KEY","KEY_SOURCE","KEYS","KEYSET","KILL","KILOBYTES_PER_BATCH","LABELONLY","LANGUAGE","LAST","LASTROW","LEVEL","LEVEL_1","LEVEL_2","LEVEL_3","LEVEL_4","LIFETIME","LIMIT","LINENO","LIST","LISTENER","LISTENER_IP","LISTENER_PORT","LOAD","LOADHISTORY","LOB_COMPACTION","LOCAL","LOCAL_SERVICE_NAME","LOCK_ESCALATION","LOCK_TIMEOUT","LOGIN","LOGSPACE","LOOP","LOW","MANUAL","MARK","MARK_IN_USE_FOR_REMOVAL","MASTER","MAX_CPU_PERCENT","MAX_DISPATCH_LATENCY","MAX_DOP","MAX_DURATION","MAX_EVENT_SIZE","MAX_FILES","MAX_IOPS_PER_VOLUME","MAX_MEMORY","MAX_MEMORY_PERCENT","MAX_QUEUE_READERS","MAX_ROLLOVER_FILES","MAX_SIZE","MAXDOP","MAXERRORS","MAXLENGTH","MAXRECURSION","MAXSIZE","MAXTRANSFERSIZE","MAXVALUE","MB","MEDIADESCRIPTION","MEDIANAME","MEDIAPASSWORD","MEDIUM","MEMBER","MEMORY_OPTIMIZED","MEMORY_OPTIMIZED_DATA","MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT","MEMORY_PARTITION_MODE","MERGE","MESSAGE","MESSAGE_FORWARD_SIZE","MESSAGE_FORWARDING","MICROSECOND","MILLISECOND","MIN_CPU_PERCENT","MIN_IOPS_PER_VOLUME","MIN_MEMORY_PERCENT","MINUTE","MINUTES","MINVALUE","MIRROR","MIRROR_ADDRESS","MODIFY","MONEY","MONTH","MOVE","MULTI_USER","MUST_CHANGE","NAME","NANOSECOND","NATIONAL","NATIVE_COMPILATION","NCHAR","NEGOTIATE","NESTED_TRIGGERS","NEW_ACCOUNT","NEW_BROKER","NEW_PASSWORD","NEWNAME","NEXT","NO","NO_BROWSETABLE","NO_CHECKSUM","NO_COMPRESSION","NO_EVENT_LOSS","NO_INFOMSGS","NO_TRUNCATE","NO_WAIT","NOCHECK","NOCOUNT","NOEXEC","NOEXPAND","NOFORMAT","NOINDEX","NOINIT","NOLOCK","NON","NON_TRANSACTED_ACCESS","NONCLUSTERED","NONE","NORECOMPUTE","NORECOVERY","NORESEED","NORESET","NOREWIND","NORMAL","NOSKIP","NOTIFICATION","NOTRUNCATE","NOUNLOAD","NOWAIT","NTEXT","NTLM","NUMANODE","NUMERIC","NUMERIC_ROUNDABORT","NVARCHAR","OBJECT","OF","OFF","OFFLINE","OFFSET","OFFSETS","OLD_ACCOUNT","OLD_PASSWORD","ON","ON_FAILURE","ONLINE","ONLY","OPEN","OPEN_EXISTING","OPENTRAN","OPTIMISTIC","OPTIMIZE","OPTION","ORDER","OUT","OUTPUT","OUTPUTBUFFER","OVER","OVERRIDE","OWNER","OWNERSHIP","PAD_INDEX","PAGE","PAGE_VERIFY","PAGECOUNT","PAGLOCK","PARAMETERIZATION","PARSEONLY","PARTIAL","PARTITION","PARTITIONS","PARTNER","PASSWORD","PATH","PER_CPU","PER_NODE","PERCENT","PERMISSION_SET","PERSISTED","PHYSICAL_ONLY","PLAN","POISON_MESSAGE_HANDLING","POOL","POPULATION","PORT","PRECEDING","PRECISION","PRIMARY","PRIMARY_ROLE","PRINT","PRIOR","PRIORITY","PRIORITY_LEVEL","PRIVATE","PRIVILEGES","PROC","PROCCACHE","PROCEDURE","PROCEDURE_NAME","PROCESS","PROFILE","PROPERTY","PROPERTY_DESCRIPTION","PROPERTY_INT_ID","PROPERTY_SET_GUID","PROVIDER","PROVIDER_KEY_NAME","PUBLIC","PUT","QUARTER","QUERY","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUEUE_DELAY","QUOTED_IDENTIFIER","RAISERROR","RANGE","RAW","RC2","RC4","RC4_128","READ","READ_COMMITTED_SNAPSHOT","READ_ONLY","READ_ONLY_ROUTING_LIST","READ_ONLY_ROUTING_URL","READ_WRITE","READ_WRITE_FILEGROUPS","READCOMMITTED","READCOMMITTEDLOCK","READONLY","READPAST","READTEXT","READUNCOMMITTED","READWRITE","REAL","REBUILD","RECEIVE","RECOMPILE","RECONFIGURE","RECOVERY","RECURSIVE","RECURSIVE_TRIGGERS","REFERENCES","REGENERATE","RELATED_CONVERSATION","RELATED_CONVERSATION_GROUP","RELATIVE","REMOTE","REMOTE_PROC_TRANSACTIONS","REMOTE_SERVICE_NAME","REMOVE","REORGANIZE","REPAIR_ALLOW_DATA_LOSS","REPAIR_FAST","REPAIR_REBUILD","REPEATABLE","REPEATABLEREAD","REPLICA","REPLICATION","REQUEST_MAX_CPU_TIME_SEC","REQUEST_MAX_MEMORY_GRANT_PERCENT","REQUEST_MEMORY_GRANT_TIMEOUT_SEC","REQUIRED","RESAMPLE","RESEED","RESERVE_DISK_SPACE","RESET","RESOURCE","RESTART","RESTORE","RESTRICT","RESTRICTED_USER","RESULT","RESUME","RETAINDAYS","RETENTION","RETURN","RETURNS","REVERT","REVOKE","REWIND","REWINDONLY","ROBUST","ROLE","ROLLBACK","ROLLUP","ROOT","ROUTE","ROW","ROWCOUNT","ROWGUIDCOL","ROWLOCK","ROWS","ROWS_PER_BATCH","ROWTERMINATOR","ROWVERSION","RSA_1024","RSA_2048","RSA_512","RULE","SAFE","SAFETY","SAMPLE","SAVE","SCHEDULER","SCHEMA","SCHEMA_AND_DATA","SCHEMA_ONLY","SCHEMABINDING","SCHEME","SCROLL","SCROLL_LOCKS","SEARCH","SECOND","SECONDARY","SECONDARY_ONLY","SECONDARY_ROLE","SECONDS","SECRET","SECURITY_LOG","SECURITYAUDIT","SELECT","SELECTIVE","SELF","SEND","SENT","SEQUENCE","SERIALIZABLE","SERVER","SERVICE","SERVICE_BROKER","SERVICE_NAME","SESSION","SESSION_TIMEOUT","SET","SETS","SETUSER","SHOW_STATISTICS","SHOWCONTIG","SHOWPLAN","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SHRINKDATABASE","SHRINKFILE","SHUTDOWN","SID","SIGNATURE","SIMPLE","SINGLE_BLOB","SINGLE_CLOB","SINGLE_NCLOB","SINGLE_USER","SINGLETON","SIZE","SKIP","SMALLDATETIME","SMALLINT","SMALLMONEY","SNAPSHOT","SORT_IN_TEMPDB","SOURCE","SPARSE","SPATIAL","SPATIAL_WINDOW_MAX_CELLS","SPECIFICATION","SPLIT","SQL","SQL_VARIANT","SQLPERF","STANDBY","START","START_DATE","STARTED","STARTUP_STATE","STAT_HEADER","STATE","STATEMENT","STATIC","STATISTICAL_SEMANTICS","STATISTICS","STATISTICS_INCREMENTAL","STATISTICS_NORECOMPUTE","STATS","STATS_STREAM","STATUS","STATUSONLY","STOP","STOP_ON_ERROR","STOPAT","STOPATMARK","STOPBEFOREMARK","STOPLIST","STOPPED","SUBJECT","SUBSCRIPTION","SUPPORTED","SUSPEND","SWITCH","SYMMETRIC","SYNCHRONOUS_COMMIT","SYNONYM","SYSNAME","SYSTEM","TABLE","TABLERESULTS","TABLESAMPLE","TABLOCK","TABLOCKX","TAKE","TAPE","TARGET","TARGET_RECOVERY_TIME","TB","TCP","TEXT","TEXTIMAGE_ON","TEXTSIZE","THEN","THESAURUS","THROW","TIES","TIME","TIMEOUT","TIMER","TIMESTAMP","TINYINT","TO","TOP","TORN_PAGE_DETECTION","TRACEOFF","TRACEON","TRACESTATUS","TRACK_CAUSALITY","TRACK_COLUMNS_UPDATED","TRAN","TRANSACTION","TRANSFER","TRANSFORM_NOISE_WORDS","TRIGGER","TRIPLE_DES","TRIPLE_DES_3KEY","TRUE","TRUNCATE","TRUNCATEONLY","TRUSTWORTHY","TRY","TSQL","TWO_DIGIT_YEAR_CUTOFF","TYPE","TYPE_WARNING","UNBOUNDED","UNCHECKED","UNCOMMITTED","UNDEFINED","UNIQUE","UNIQUEIDENTIFIER","UNKNOWN","UNLIMITED","UNLOAD","UNSAFE","UPDATE","UPDATETEXT","UPDATEUSAGE","UPDLOCK","URL","USE","USED","USER","USEROPTIONS","USING","VALID_XML","VALIDATION","VALUE","VALUES","VARBINARY","VARCHAR","VARYING","VERIFYONLY","VERSION","VIEW","VIEW_METADATA","VIEWS","VISIBILITY","WAIT_AT_LOW_PRIORITY","WAITFOR","WEEK","WEIGHT","WELL_FORMED_XML","WHEN","WHERE","WHILE","WINDOWS","WITH","WITHIN","WITHOUT","WITNESS","WORK","WORKLOAD","WRITETEXT","XACT_ABORT","XLOCK","XMAX","XMIN","XML","XMLDATA","XMLNAMESPACES","XMLSCHEMA","XQUERY","XSINIL","YEAR","YMAX","YMIN"],operators:["ALL","AND","ANY","BETWEEN","EXISTS","IN","LIKE","NOT","OR","SOME","EXCEPT","INTERSECT","UNION","APPLY","CROSS","FULL","INNER","JOIN","LEFT","OUTER","RIGHT","CONTAINS","FREETEXT","IS","NULL","PIVOT","UNPIVOT","MATCHED"],builtinFunctions:["AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","SUM","STDEV","STDEVP","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","COLLATE","COLLATIONPROPERTY","TERTIARY_WEIGHTS","FEDERATION_FILTERING_VALUE","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","CURRENT_TIMESTAMP","DATEADD","DATEDIFF","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","CHOOSE","COALESCE","IIF","NULLIF","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASE_PRINCIPAL_ID","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STUFF","SUBSTRING","UNICODE","UPPER","BINARY_CHECKSUM","CHECKSUM","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","ERROR_LINE","ERROR_NUMBER","ERROR_MESSAGE","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GETANSINULL","GET_FILESTREAM_TRANSACTION_CONTEXT","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","XACT_STATE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","CHANGETABLE","CHANGE_TRACKING_CONTEXT","CHANGE_TRACKING_CURRENT_VERSION","CHANGE_TRACKING_IS_COLUMN_IN_MASK","CHANGE_TRACKING_MIN_VALID_VERSION","CONTAINSTABLE","FREETEXTTABLE","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","FILETABLEROOTPATH","GETFILENAMESPACEPATH","GETPATHLOCATOR","PATHNAME","GET_TRANSMISSION_STATUS"],builtinVariables:["@@DATEFIRST","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","@@CURSOR_ROWS","@@FETCH_STATUS","@@DATEFIRST","@@PROCID","@@ERROR","@@IDENTITY","@@ROWCOUNT","@@TRANCOUNT","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACKET_ERRORS","@@PACK_RECEIVED","@@PACK_SENT","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE"],pseudoColumns:["$ACTION","$IDENTITY","$ROWGUID","$PARTITION"],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/N'/,{token:"string",next:"@string"}],[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/\[/,{token:"identifier.quote",next:"@bracketedIdentifier"}],[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],bracketedIdentifier:[[/[^\]]+/,"identifier"],[/]]/,"identifier"],[/]/,{token:"identifier.quote",next:"@pop"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[[/BEGIN\s+(DISTRIBUTED\s+)?TRAN(SACTION)?\b/i,"keyword"],[/BEGIN\s+TRY\b/i,{token:"keyword.try"}],[/END\s+TRY\b/i,{token:"keyword.try"}],[/BEGIN\s+CATCH\b/i,{token:"keyword.catch"}],[/END\s+CATCH\b/i,{token:"keyword.catch"}],[/(BEGIN|CASE)\b/i,{token:"keyword.block"}],[/END\b/i,{token:"keyword.block"}],[/WHEN\b/i,{token:"keyword.choice"}],[/THEN\b/i,{token:"keyword.choice"}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["rkyD"],{rkyD:function(E,T,R){"use strict";R.r(T),R.d(T,"conf",function(){return A}),R.d(T,"language",function(){return I});var A={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},I={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["ABORT_AFTER_WAIT","ABSENT","ABSOLUTE","ACCENT_SENSITIVITY","ACTION","ACTIVATION","ACTIVE","ADD","ADDRESS","ADMIN","AES","AES_128","AES_192","AES_256","AFFINITY","AFTER","AGGREGATE","ALGORITHM","ALL_CONSTRAINTS","ALL_ERRORMSGS","ALL_INDEXES","ALL_LEVELS","ALL_SPARSE_COLUMNS","ALLOW_CONNECTIONS","ALLOW_MULTIPLE_EVENT_LOSS","ALLOW_PAGE_LOCKS","ALLOW_ROW_LOCKS","ALLOW_SINGLE_EVENT_LOSS","ALLOW_SNAPSHOT_ISOLATION","ALLOWED","ALTER","ANONYMOUS","ANSI_DEFAULTS","ANSI_NULL_DEFAULT","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_NULLS","ANSI_PADDING","ANSI_WARNINGS","APPEND","APPLICATION","APPLICATION_LOG","ARITHABORT","ARITHIGNORE","AS","ASC","ASSEMBLY","ASYMMETRIC","ASYNCHRONOUS_COMMIT","AT","ATOMIC","ATTACH","ATTACH_REBUILD_LOG","AUDIT","AUDIT_GUID","AUTHENTICATION","AUTHORIZATION","AUTO","AUTO_CLEANUP","AUTO_CLOSE","AUTO_CREATE_STATISTICS","AUTO_SHRINK","AUTO_UPDATE_STATISTICS","AUTO_UPDATE_STATISTICS_ASYNC","AUTOMATED_BACKUP_PREFERENCE","AUTOMATIC","AVAILABILITY","AVAILABILITY_MODE","BACKUP","BACKUP_PRIORITY","BASE64","BATCHSIZE","BEGIN","BEGIN_DIALOG","BIGINT","BINARY","BINDING","BIT","BLOCKERS","BLOCKSIZE","BOUNDING_BOX","BREAK","BROKER","BROKER_INSTANCE","BROWSE","BUCKET_COUNT","BUFFER","BUFFERCOUNT","BULK","BULK_LOGGED","BY","CACHE","CALL","CALLED","CALLER","CAP_CPU_PERCENT","CASCADE","CASE","CATALOG","CATCH","CELLS_PER_OBJECT","CERTIFICATE","CHANGE_RETENTION","CHANGE_TRACKING","CHANGES","CHAR","CHARACTER","CHECK","CHECK_CONSTRAINTS","CHECK_EXPIRATION","CHECK_POLICY","CHECKALLOC","CHECKCATALOG","CHECKCONSTRAINTS","CHECKDB","CHECKFILEGROUP","CHECKIDENT","CHECKPOINT","CHECKTABLE","CLASSIFIER_FUNCTION","CLEANTABLE","CLEANUP","CLEAR","CLOSE","CLUSTER","CLUSTERED","CODEPAGE","COLLATE","COLLECTION","COLUMN","COLUMN_SET","COLUMNS","COLUMNSTORE","COLUMNSTORE_ARCHIVE","COMMIT","COMMITTED","COMPATIBILITY_LEVEL","COMPRESSION","COMPUTE","CONCAT","CONCAT_NULL_YIELDS_NULL","CONFIGURATION","CONNECT","CONSTRAINT","CONTAINMENT","CONTENT","CONTEXT","CONTINUE","CONTINUE_AFTER_ERROR","CONTRACT","CONTRACT_NAME","CONTROL","CONVERSATION","COOKIE","COPY_ONLY","COUNTER","CPU","CREATE","CREATE_NEW","CREATION_DISPOSITION","CREDENTIAL","CRYPTOGRAPHIC","CUBE","CURRENT","CURRENT_DATE","CURSOR","CURSOR_CLOSE_ON_COMMIT","CURSOR_DEFAULT","CYCLE","DATA","DATA_COMPRESSION","DATA_PURITY","DATABASE","DATABASE_DEFAULT","DATABASE_MIRRORING","DATABASE_SNAPSHOT","DATAFILETYPE","DATE","DATE_CORRELATION_OPTIMIZATION","DATEFIRST","DATEFORMAT","DATETIME","DATETIME2","DATETIMEOFFSET","DAY","DAYOFYEAR","DAYS","DB_CHAINING","DBCC","DBREINDEX","DDL_DATABASE_LEVEL_EVENTS","DEADLOCK_PRIORITY","DEALLOCATE","DEC","DECIMAL","DECLARE","DECRYPTION","DEFAULT","DEFAULT_DATABASE","DEFAULT_FULLTEXT_LANGUAGE","DEFAULT_LANGUAGE","DEFAULT_SCHEMA","DEFINITION","DELAY","DELAYED_DURABILITY","DELETE","DELETED","DENSITY_VECTOR","DENY","DEPENDENTS","DES","DESC","DESCRIPTION","DESX","DHCP","DIAGNOSTICS","DIALOG","DIFFERENTIAL","DIRECTORY_NAME","DISABLE","DISABLE_BROKER","DISABLED","DISK","DISTINCT","DISTRIBUTED","DOCUMENT","DOUBLE","DROP","DROP_EXISTING","DROPCLEANBUFFERS","DUMP","DURABILITY","DYNAMIC","EDITION","ELEMENTS","ELSE","EMERGENCY","EMPTY","EMPTYFILE","ENABLE","ENABLE_BROKER","ENABLED","ENCRYPTION","END","ENDPOINT","ENDPOINT_URL","ERRLVL","ERROR","ERROR_BROKER_CONVERSATIONS","ERRORFILE","ESCAPE","ESTIMATEONLY","EVENT","EVENT_RETENTION_MODE","EXEC","EXECUTABLE","EXECUTE","EXIT","EXPAND","EXPIREDATE","EXPIRY_DATE","EXPLICIT","EXTENDED_LOGICAL_CHECKS","EXTENSION","EXTERNAL","EXTERNAL_ACCESS","FAIL_OPERATION","FAILOVER","FAILOVER_MODE","FAILURE_CONDITION_LEVEL","FALSE","FAN_IN","FAST","FAST_FORWARD","FETCH","FIELDTERMINATOR","FILE","FILEGROUP","FILEGROWTH","FILELISTONLY","FILENAME","FILEPATH","FILESTREAM","FILESTREAM_ON","FILETABLE_COLLATE_FILENAME","FILETABLE_DIRECTORY","FILETABLE_FULLPATH_UNIQUE_CONSTRAINT_NAME","FILETABLE_NAMESPACE","FILETABLE_PRIMARY_KEY_CONSTRAINT_NAME","FILETABLE_STREAMID_UNIQUE_CONSTRAINT_NAME","FILLFACTOR","FILTERING","FIRE_TRIGGERS","FIRST","FIRSTROW","FLOAT","FMTONLY","FOLLOWING","FOR","FORCE","FORCE_FAILOVER_ALLOW_DATA_LOSS","FORCE_SERVICE_ALLOW_DATA_LOSS","FORCED","FORCEPLAN","FORCESCAN","FORCESEEK","FOREIGN","FORMATFILE","FORMSOF","FORWARD_ONLY","FREE","FREEPROCCACHE","FREESESSIONCACHE","FREESYSTEMCACHE","FROM","FULL","FULLSCAN","FULLTEXT","FUNCTION","GB","GEOGRAPHY_AUTO_GRID","GEOGRAPHY_GRID","GEOMETRY_AUTO_GRID","GEOMETRY_GRID","GET","GLOBAL","GO","GOTO","GOVERNOR","GRANT","GRIDS","GROUP","GROUP_MAX_REQUESTS","HADR","HASH","HASHED","HAVING","HEADERONLY","HEALTH_CHECK_TIMEOUT","HELP","HIERARCHYID","HIGH","HINT","HISTOGRAM","HOLDLOCK","HONOR_BROKER_PRIORITY","HOUR","HOURS","IDENTITY","IDENTITY_INSERT","IDENTITY_VALUE","IDENTITYCOL","IF","IGNORE_CONSTRAINTS","IGNORE_DUP_KEY","IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX","IGNORE_TRIGGERS","IMAGE","IMMEDIATE","IMPERSONATE","IMPLICIT_TRANSACTIONS","IMPORTANCE","INCLUDE","INCREMENT","INCREMENTAL","INDEX","INDEXDEFRAG","INFINITE","INFLECTIONAL","INIT","INITIATOR","INPUT","INPUTBUFFER","INSENSITIVE","INSERT","INSERTED","INSTEAD","INT","INTEGER","INTO","IO","IP","ISABOUT","ISOLATION","JOB","KB","KEEP","KEEP_CDC","KEEP_NULLS","KEEP_REPLICATION","KEEPDEFAULTS","KEEPFIXED","KEEPIDENTITY","KEEPNULLS","KERBEROS","KEY","KEY_SOURCE","KEYS","KEYSET","KILL","KILOBYTES_PER_BATCH","LABELONLY","LANGUAGE","LAST","LASTROW","LEVEL","LEVEL_1","LEVEL_2","LEVEL_3","LEVEL_4","LIFETIME","LIMIT","LINENO","LIST","LISTENER","LISTENER_IP","LISTENER_PORT","LOAD","LOADHISTORY","LOB_COMPACTION","LOCAL","LOCAL_SERVICE_NAME","LOCK_ESCALATION","LOCK_TIMEOUT","LOGIN","LOGSPACE","LOOP","LOW","MANUAL","MARK","MARK_IN_USE_FOR_REMOVAL","MASTER","MAX_CPU_PERCENT","MAX_DISPATCH_LATENCY","MAX_DOP","MAX_DURATION","MAX_EVENT_SIZE","MAX_FILES","MAX_IOPS_PER_VOLUME","MAX_MEMORY","MAX_MEMORY_PERCENT","MAX_QUEUE_READERS","MAX_ROLLOVER_FILES","MAX_SIZE","MAXDOP","MAXERRORS","MAXLENGTH","MAXRECURSION","MAXSIZE","MAXTRANSFERSIZE","MAXVALUE","MB","MEDIADESCRIPTION","MEDIANAME","MEDIAPASSWORD","MEDIUM","MEMBER","MEMORY_OPTIMIZED","MEMORY_OPTIMIZED_DATA","MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT","MEMORY_PARTITION_MODE","MERGE","MESSAGE","MESSAGE_FORWARD_SIZE","MESSAGE_FORWARDING","MICROSECOND","MILLISECOND","MIN_CPU_PERCENT","MIN_IOPS_PER_VOLUME","MIN_MEMORY_PERCENT","MINUTE","MINUTES","MINVALUE","MIRROR","MIRROR_ADDRESS","MODIFY","MONEY","MONTH","MOVE","MULTI_USER","MUST_CHANGE","NAME","NANOSECOND","NATIONAL","NATIVE_COMPILATION","NCHAR","NEGOTIATE","NESTED_TRIGGERS","NEW_ACCOUNT","NEW_BROKER","NEW_PASSWORD","NEWNAME","NEXT","NO","NO_BROWSETABLE","NO_CHECKSUM","NO_COMPRESSION","NO_EVENT_LOSS","NO_INFOMSGS","NO_TRUNCATE","NO_WAIT","NOCHECK","NOCOUNT","NOEXEC","NOEXPAND","NOFORMAT","NOINDEX","NOINIT","NOLOCK","NON","NON_TRANSACTED_ACCESS","NONCLUSTERED","NONE","NORECOMPUTE","NORECOVERY","NORESEED","NORESET","NOREWIND","NORMAL","NOSKIP","NOTIFICATION","NOTRUNCATE","NOUNLOAD","NOWAIT","NTEXT","NTLM","NUMANODE","NUMERIC","NUMERIC_ROUNDABORT","NVARCHAR","OBJECT","OF","OFF","OFFLINE","OFFSET","OFFSETS","OLD_ACCOUNT","OLD_PASSWORD","ON","ON_FAILURE","ONLINE","ONLY","OPEN","OPEN_EXISTING","OPENTRAN","OPTIMISTIC","OPTIMIZE","OPTION","ORDER","OUT","OUTPUT","OUTPUTBUFFER","OVER","OVERRIDE","OWNER","OWNERSHIP","PAD_INDEX","PAGE","PAGE_VERIFY","PAGECOUNT","PAGLOCK","PARAMETERIZATION","PARSEONLY","PARTIAL","PARTITION","PARTITIONS","PARTNER","PASSWORD","PATH","PER_CPU","PER_NODE","PERCENT","PERMISSION_SET","PERSISTED","PHYSICAL_ONLY","PLAN","POISON_MESSAGE_HANDLING","POOL","POPULATION","PORT","PRECEDING","PRECISION","PRIMARY","PRIMARY_ROLE","PRINT","PRIOR","PRIORITY","PRIORITY_LEVEL","PRIVATE","PRIVILEGES","PROC","PROCCACHE","PROCEDURE","PROCEDURE_NAME","PROCESS","PROFILE","PROPERTY","PROPERTY_DESCRIPTION","PROPERTY_INT_ID","PROPERTY_SET_GUID","PROVIDER","PROVIDER_KEY_NAME","PUBLIC","PUT","QUARTER","QUERY","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUEUE_DELAY","QUOTED_IDENTIFIER","RAISERROR","RANGE","RAW","RC2","RC4","RC4_128","READ","READ_COMMITTED_SNAPSHOT","READ_ONLY","READ_ONLY_ROUTING_LIST","READ_ONLY_ROUTING_URL","READ_WRITE","READ_WRITE_FILEGROUPS","READCOMMITTED","READCOMMITTEDLOCK","READONLY","READPAST","READTEXT","READUNCOMMITTED","READWRITE","REAL","REBUILD","RECEIVE","RECOMPILE","RECONFIGURE","RECOVERY","RECURSIVE","RECURSIVE_TRIGGERS","REFERENCES","REGENERATE","RELATED_CONVERSATION","RELATED_CONVERSATION_GROUP","RELATIVE","REMOTE","REMOTE_PROC_TRANSACTIONS","REMOTE_SERVICE_NAME","REMOVE","REORGANIZE","REPAIR_ALLOW_DATA_LOSS","REPAIR_FAST","REPAIR_REBUILD","REPEATABLE","REPEATABLEREAD","REPLICA","REPLICATION","REQUEST_MAX_CPU_TIME_SEC","REQUEST_MAX_MEMORY_GRANT_PERCENT","REQUEST_MEMORY_GRANT_TIMEOUT_SEC","REQUIRED","RESAMPLE","RESEED","RESERVE_DISK_SPACE","RESET","RESOURCE","RESTART","RESTORE","RESTRICT","RESTRICTED_USER","RESULT","RESUME","RETAINDAYS","RETENTION","RETURN","RETURNS","REVERT","REVOKE","REWIND","REWINDONLY","ROBUST","ROLE","ROLLBACK","ROLLUP","ROOT","ROUTE","ROW","ROWCOUNT","ROWGUIDCOL","ROWLOCK","ROWS","ROWS_PER_BATCH","ROWTERMINATOR","ROWVERSION","RSA_1024","RSA_2048","RSA_512","RULE","SAFE","SAFETY","SAMPLE","SAVE","SCHEDULER","SCHEMA","SCHEMA_AND_DATA","SCHEMA_ONLY","SCHEMABINDING","SCHEME","SCROLL","SCROLL_LOCKS","SEARCH","SECOND","SECONDARY","SECONDARY_ONLY","SECONDARY_ROLE","SECONDS","SECRET","SECURITY_LOG","SECURITYAUDIT","SELECT","SELECTIVE","SELF","SEND","SENT","SEQUENCE","SERIALIZABLE","SERVER","SERVICE","SERVICE_BROKER","SERVICE_NAME","SESSION","SESSION_TIMEOUT","SET","SETS","SETUSER","SHOW_STATISTICS","SHOWCONTIG","SHOWPLAN","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SHRINKDATABASE","SHRINKFILE","SHUTDOWN","SID","SIGNATURE","SIMPLE","SINGLE_BLOB","SINGLE_CLOB","SINGLE_NCLOB","SINGLE_USER","SINGLETON","SIZE","SKIP","SMALLDATETIME","SMALLINT","SMALLMONEY","SNAPSHOT","SORT_IN_TEMPDB","SOURCE","SPARSE","SPATIAL","SPATIAL_WINDOW_MAX_CELLS","SPECIFICATION","SPLIT","SQL","SQL_VARIANT","SQLPERF","STANDBY","START","START_DATE","STARTED","STARTUP_STATE","STAT_HEADER","STATE","STATEMENT","STATIC","STATISTICAL_SEMANTICS","STATISTICS","STATISTICS_INCREMENTAL","STATISTICS_NORECOMPUTE","STATS","STATS_STREAM","STATUS","STATUSONLY","STOP","STOP_ON_ERROR","STOPAT","STOPATMARK","STOPBEFOREMARK","STOPLIST","STOPPED","SUBJECT","SUBSCRIPTION","SUPPORTED","SUSPEND","SWITCH","SYMMETRIC","SYNCHRONOUS_COMMIT","SYNONYM","SYSNAME","SYSTEM","TABLE","TABLERESULTS","TABLESAMPLE","TABLOCK","TABLOCKX","TAKE","TAPE","TARGET","TARGET_RECOVERY_TIME","TB","TCP","TEXT","TEXTIMAGE_ON","TEXTSIZE","THEN","THESAURUS","THROW","TIES","TIME","TIMEOUT","TIMER","TIMESTAMP","TINYINT","TO","TOP","TORN_PAGE_DETECTION","TRACEOFF","TRACEON","TRACESTATUS","TRACK_CAUSALITY","TRACK_COLUMNS_UPDATED","TRAN","TRANSACTION","TRANSFER","TRANSFORM_NOISE_WORDS","TRIGGER","TRIPLE_DES","TRIPLE_DES_3KEY","TRUE","TRUNCATE","TRUNCATEONLY","TRUSTWORTHY","TRY","TSQL","TWO_DIGIT_YEAR_CUTOFF","TYPE","TYPE_WARNING","UNBOUNDED","UNCHECKED","UNCOMMITTED","UNDEFINED","UNIQUE","UNIQUEIDENTIFIER","UNKNOWN","UNLIMITED","UNLOAD","UNSAFE","UPDATE","UPDATETEXT","UPDATEUSAGE","UPDLOCK","URL","USE","USED","USER","USEROPTIONS","USING","VALID_XML","VALIDATION","VALUE","VALUES","VARBINARY","VARCHAR","VARYING","VERIFYONLY","VERSION","VIEW","VIEW_METADATA","VIEWS","VISIBILITY","WAIT_AT_LOW_PRIORITY","WAITFOR","WEEK","WEIGHT","WELL_FORMED_XML","WHEN","WHERE","WHILE","WINDOWS","WITH","WITHIN","WITHOUT","WITNESS","WORK","WORKLOAD","WRITETEXT","XACT_ABORT","XLOCK","XMAX","XMIN","XML","XMLDATA","XMLNAMESPACES","XMLSCHEMA","XQUERY","XSINIL","YEAR","YMAX","YMIN"],operators:["ALL","AND","ANY","BETWEEN","EXISTS","IN","LIKE","NOT","OR","SOME","EXCEPT","INTERSECT","UNION","APPLY","CROSS","FULL","INNER","JOIN","LEFT","OUTER","RIGHT","CONTAINS","FREETEXT","IS","NULL","PIVOT","UNPIVOT","MATCHED"],builtinFunctions:["AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","SUM","STDEV","STDEVP","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","COLLATE","COLLATIONPROPERTY","TERTIARY_WEIGHTS","FEDERATION_FILTERING_VALUE","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","CURRENT_TIMESTAMP","DATEADD","DATEDIFF","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","CHOOSE","COALESCE","IIF","NULLIF","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASE_PRINCIPAL_ID","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STUFF","SUBSTRING","UNICODE","UPPER","BINARY_CHECKSUM","CHECKSUM","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","ERROR_LINE","ERROR_NUMBER","ERROR_MESSAGE","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GETANSINULL","GET_FILESTREAM_TRANSACTION_CONTEXT","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","XACT_STATE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","CHANGETABLE","CHANGE_TRACKING_CONTEXT","CHANGE_TRACKING_CURRENT_VERSION","CHANGE_TRACKING_IS_COLUMN_IN_MASK","CHANGE_TRACKING_MIN_VALID_VERSION","CONTAINSTABLE","FREETEXTTABLE","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","FILETABLEROOTPATH","GETFILENAMESPACEPATH","GETPATHLOCATOR","PATHNAME","GET_TRANSMISSION_STATUS"],builtinVariables:["@@DATEFIRST","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","@@CURSOR_ROWS","@@FETCH_STATUS","@@DATEFIRST","@@PROCID","@@ERROR","@@IDENTITY","@@ROWCOUNT","@@TRANCOUNT","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACKET_ERRORS","@@PACK_RECEIVED","@@PACK_SENT","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE"],pseudoColumns:["$ACTION","$IDENTITY","$ROWGUID","$PARTITION"],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/N'/,{token:"string",next:"@string"}],[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/\[/,{token:"identifier.quote",next:"@bracketedIdentifier"}],[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],bracketedIdentifier:[[/[^\]]+/,"identifier"],[/]]/,"identifier"],[/]/,{token:"identifier.quote",next:"@pop"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[[/BEGIN\s+(DISTRIBUTED\s+)?TRAN(SACTION)?\b/i,"keyword"],[/BEGIN\s+TRY\b/i,{token:"keyword.try"}],[/END\s+TRY\b/i,{token:"keyword.try"}],[/BEGIN\s+CATCH\b/i,{token:"keyword.catch"}],[/END\s+CATCH\b/i,{token:"keyword.catch"}],[/(BEGIN|CASE)\b/i,{token:"keyword.block"}],[/END\b/i,{token:"keyword.block"}],[/WHEN\b/i,{token:"keyword.choice"}],[/THEN\b/i,{token:"keyword.choice"}]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/swx7.435195ff.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/swx7.435195ff.js index a46a1c031..29cf9297b 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/swx7.435195ff.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/swx7.435195ff.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["swx7"],{swx7:function(e,s,o){"use strict";o.r(s),o.d(s,"conf",function(){return n}),o.d(s,"language",function(){return t});var n={comments:{lineComment:"REM"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],folding:{markers:{start:new RegExp("^\\s*(::\\s*|REM\\s+)#region"),end:new RegExp("^\\s*(::\\s*|REM\\s+)#endregion")}}},t={defaultToken:"",ignoreCase:!0,tokenPostfix:".bat",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:/call|defined|echo|errorlevel|exist|for|goto|if|pause|set|shift|start|title|not|pushd|popd/,symbols:/[=><!~?&|+\-*\/\^;\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^(\s*)(rem(?:\s.*|))$/,["","comment"]],[/(\@?)(@keywords)(?!\w)/,[{token:"keyword"},{token:"keyword.$2"}]],[/[ \t\r\n]+/,""],[/setlocal(?!\w)/,"keyword.tag-setlocal"],[/endlocal(?!\w)/,"keyword.tag-setlocal"],[/[a-zA-Z_]\w*/,""],[/:\w*/,"metatag"],[/%[^%]+%/,"variable"],[/%%[\w]+(?!\w)/,"variable"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],string:[[/[^\\"'%]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/%[\w ]+%/,"variable"],[/%%[\w]+(?!\w)/,"variable"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/$/,"string","@popall"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["swx7"],{swx7:function(e,s,o){"use strict";o.r(s),o.d(s,"conf",function(){return n}),o.d(s,"language",function(){return t});var n={comments:{lineComment:"REM"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],folding:{markers:{start:new RegExp("^\\s*(::\\s*|REM\\s+)#region"),end:new RegExp("^\\s*(::\\s*|REM\\s+)#endregion")}}},t={defaultToken:"",ignoreCase:!0,tokenPostfix:".bat",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:/call|defined|echo|errorlevel|exist|for|goto|if|pause|set|shift|start|title|not|pushd|popd/,symbols:/[=><!~?&|+\-*\/\^;\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^(\s*)(rem(?:\s.*|))$/,["","comment"]],[/(\@?)(@keywords)(?!\w)/,[{token:"keyword"},{token:"keyword.$2"}]],[/[ \t\r\n]+/,""],[/setlocal(?!\w)/,"keyword.tag-setlocal"],[/endlocal(?!\w)/,"keyword.tag-setlocal"],[/[a-zA-Z_]\w*/,""],[/:\w*/,"metatag"],[/%[^%]+%/,"variable"],[/%%[\w]+(?!\w)/,"variable"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],string:[[/[^\\"'%]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/%[\w ]+%/,"variable"],[/%%[\w]+(?!\w)/,"variable"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/$/,"string","@popall"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/t0vp.35c5ead1.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/t0vp.35c5ead1.js index eefbf080c..f8b187b03 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/t0vp.35c5ead1.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/t0vp.35c5ead1.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["t0vp"],{t0vp:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return s}),n.d(t,"language",function(){return o});var s={comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">",notIn:["string"]}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"`",close:"`"}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#?region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#?endregion\\b.*--\x3e")}}},o={defaultToken:"",tokenPostfix:".md",control:/[\\`*_\[\]{}()#+\-\.!]/,noncontrol:/[^\\`*_\[\]{}()#+\-\.!]/,escapes:/\\(?:@control)/,jsescapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,empty:["area","base","basefont","br","col","frame","hr","img","input","isindex","link","meta","param"],tokenizer:{root:[[/^\s*\|/,"@rematch","@table_header"],[/^(\s{0,3})(#+)((?:[^\\#]|@escapes)+)((?:#+)?)/,["white","keyword","keyword","keyword"]],[/^\s*(=+|\-+)\s*$/,"keyword"],[/^\s*((\*[ ]?)+)\s*$/,"meta.separator"],[/^\s*>+/,"comment"],[/^\s*([\*\-+:]|\d+\.)\s/,"keyword"],[/^(\t|[ ]{4})[^ ].*$/,"string"],[/^\s*~~~\s*((?:\w|[\/\-#])+)?\s*$/,{token:"string",next:"@codeblock"}],[/^\s*```\s*((?:\w|[\/\-#])+).*$/,{token:"string",next:"@codeblockgh",nextEmbedded:"$1"}],[/^\s*```\s*$/,{token:"string",next:"@codeblock"}],{include:"@linecontent"}],table_header:[{include:"@table_common"},[/[^\|]+/,"keyword.table.header"]],table_body:[{include:"@table_common"},{include:"@linecontent"}],table_common:[[/\s*[\-:]+\s*/,{token:"keyword",switchTo:"table_body"}],[/^\s*\|/,"keyword.table.left"],[/^\s*[^\|]/,"@rematch","@pop"],[/^\s*$/,"@rematch","@pop"],[/\|/,{cases:{"@eos":"keyword.table.right","@default":"keyword.table.middle"}}]],codeblock:[[/^\s*~~~\s*$/,{token:"string",next:"@pop"}],[/^\s*```\s*$/,{token:"string",next:"@pop"}],[/.*$/,"variable.source"]],codeblockgh:[[/```\s*$/,{token:"variable.source",next:"@pop",nextEmbedded:"@pop"}],[/[^`]+/,"variable.source"]],linecontent:[[/&\w+;/,"string.escape"],[/@escapes/,"escape"],[/\b__([^\\_]|@escapes|_(?!_))+__\b/,"strong"],[/\*\*([^\\*]|@escapes|\*(?!\*))+\*\*/,"strong"],[/\b_[^_]+_\b/,"emphasis"],[/\*([^\\*]|@escapes)+\*/,"emphasis"],[/`([^\\`]|@escapes)+`/,"variable"],[/\{+[^}]+\}+/,"string.target"],[/(!?\[)((?:[^\]\\]|@escapes)*)(\]\([^\)]+\))/,["string.link","","string.link"]],[/(!?\[)((?:[^\]\\]|@escapes)*)(\])/,"string.link"],{include:"html"}],html:[[/<(\w+)\/>/,"tag"],[/<(\w+)/,{cases:{"@empty":{token:"tag",next:"@tag.$1"},"@default":{token:"tag",next:"@tag.$1"}}}],[/<\/(\w+)\s*>/,{token:"tag"}],[/<!--/,"comment","@comment"]],comment:[[/[^<\-]+/,"comment.content"],[/-->/,"comment","@pop"],[/<!--/,"comment.content.invalid"],[/[<\-]/,"comment.content"]],tag:[[/[ \t\r\n]+/,"white"],[/(type)(\s*=\s*)(")([^"]+)(")/,["attribute.name.html","delimiter.html","string.html",{token:"string.html",switchTo:"@tag.$S2.$4"},"string.html"]],[/(type)(\s*=\s*)(')([^']+)(')/,["attribute.name.html","delimiter.html","string.html",{token:"string.html",switchTo:"@tag.$S2.$4"},"string.html"]],[/(\w+)(\s*=\s*)("[^"]*"|'[^']*')/,["attribute.name.html","delimiter.html","string.html"]],[/\w+/,"attribute.name.html"],[/\/>/,"tag","@pop"],[/>/,{cases:{"$S2==style":{token:"tag",switchTo:"embeddedStyle",nextEmbedded:"text/css"},"$S2==script":{cases:{$S3:{token:"tag",switchTo:"embeddedScript",nextEmbedded:"$S3"},"@default":{token:"tag",switchTo:"embeddedScript",nextEmbedded:"text/javascript"}}},"@default":{token:"tag",next:"@pop"}}}]],embeddedStyle:[[/[^<]+/,""],[/<\/style\s*>/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/</,""]],embeddedScript:[[/[^<]+/,""],[/<\/script\s*>/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/</,""]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["t0vp"],{t0vp:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return s}),n.d(t,"language",function(){return o});var s={comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">",notIn:["string"]}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"`",close:"`"}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#?region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#?endregion\\b.*--\x3e")}}},o={defaultToken:"",tokenPostfix:".md",control:/[\\`*_\[\]{}()#+\-\.!]/,noncontrol:/[^\\`*_\[\]{}()#+\-\.!]/,escapes:/\\(?:@control)/,jsescapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,empty:["area","base","basefont","br","col","frame","hr","img","input","isindex","link","meta","param"],tokenizer:{root:[[/^\s*\|/,"@rematch","@table_header"],[/^(\s{0,3})(#+)((?:[^\\#]|@escapes)+)((?:#+)?)/,["white","keyword","keyword","keyword"]],[/^\s*(=+|\-+)\s*$/,"keyword"],[/^\s*((\*[ ]?)+)\s*$/,"meta.separator"],[/^\s*>+/,"comment"],[/^\s*([\*\-+:]|\d+\.)\s/,"keyword"],[/^(\t|[ ]{4})[^ ].*$/,"string"],[/^\s*~~~\s*((?:\w|[\/\-#])+)?\s*$/,{token:"string",next:"@codeblock"}],[/^\s*```\s*((?:\w|[\/\-#])+).*$/,{token:"string",next:"@codeblockgh",nextEmbedded:"$1"}],[/^\s*```\s*$/,{token:"string",next:"@codeblock"}],{include:"@linecontent"}],table_header:[{include:"@table_common"},[/[^\|]+/,"keyword.table.header"]],table_body:[{include:"@table_common"},{include:"@linecontent"}],table_common:[[/\s*[\-:]+\s*/,{token:"keyword",switchTo:"table_body"}],[/^\s*\|/,"keyword.table.left"],[/^\s*[^\|]/,"@rematch","@pop"],[/^\s*$/,"@rematch","@pop"],[/\|/,{cases:{"@eos":"keyword.table.right","@default":"keyword.table.middle"}}]],codeblock:[[/^\s*~~~\s*$/,{token:"string",next:"@pop"}],[/^\s*```\s*$/,{token:"string",next:"@pop"}],[/.*$/,"variable.source"]],codeblockgh:[[/```\s*$/,{token:"variable.source",next:"@pop",nextEmbedded:"@pop"}],[/[^`]+/,"variable.source"]],linecontent:[[/&\w+;/,"string.escape"],[/@escapes/,"escape"],[/\b__([^\\_]|@escapes|_(?!_))+__\b/,"strong"],[/\*\*([^\\*]|@escapes|\*(?!\*))+\*\*/,"strong"],[/\b_[^_]+_\b/,"emphasis"],[/\*([^\\*]|@escapes)+\*/,"emphasis"],[/`([^\\`]|@escapes)+`/,"variable"],[/\{+[^}]+\}+/,"string.target"],[/(!?\[)((?:[^\]\\]|@escapes)*)(\]\([^\)]+\))/,["string.link","","string.link"]],[/(!?\[)((?:[^\]\\]|@escapes)*)(\])/,"string.link"],{include:"html"}],html:[[/<(\w+)\/>/,"tag"],[/<(\w+)/,{cases:{"@empty":{token:"tag",next:"@tag.$1"},"@default":{token:"tag",next:"@tag.$1"}}}],[/<\/(\w+)\s*>/,{token:"tag"}],[/<!--/,"comment","@comment"]],comment:[[/[^<\-]+/,"comment.content"],[/-->/,"comment","@pop"],[/<!--/,"comment.content.invalid"],[/[<\-]/,"comment.content"]],tag:[[/[ \t\r\n]+/,"white"],[/(type)(\s*=\s*)(")([^"]+)(")/,["attribute.name.html","delimiter.html","string.html",{token:"string.html",switchTo:"@tag.$S2.$4"},"string.html"]],[/(type)(\s*=\s*)(')([^']+)(')/,["attribute.name.html","delimiter.html","string.html",{token:"string.html",switchTo:"@tag.$S2.$4"},"string.html"]],[/(\w+)(\s*=\s*)("[^"]*"|'[^']*')/,["attribute.name.html","delimiter.html","string.html"]],[/\w+/,"attribute.name.html"],[/\/>/,"tag","@pop"],[/>/,{cases:{"$S2==style":{token:"tag",switchTo:"embeddedStyle",nextEmbedded:"text/css"},"$S2==script":{cases:{$S3:{token:"tag",switchTo:"embeddedScript",nextEmbedded:"$S3"},"@default":{token:"tag",switchTo:"embeddedScript",nextEmbedded:"text/javascript"}}},"@default":{token:"tag",next:"@pop"}}}]],embeddedStyle:[[/[^<]+/,""],[/<\/style\s*>/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/</,""]],embeddedScript:[[/[^<]+/,""],[/<\/script\s*>/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/</,""]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/t3Iv.9e3d0e85.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/t3Iv.9e3d0e85.js index ae670ef83..93a52d450 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/t3Iv.9e3d0e85.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/t3Iv.9e3d0e85.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["t3Iv"],{t3Iv:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return s}),t.d(n,"language",function(){return o});var s={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*//\\s*#region\\b|^\\s*\\(\\*\\s*#region(.*)\\*\\)"),end:new RegExp("^\\s*//\\s*#endregion\\b|^\\s*\\(\\*\\s*#endregion\\s*\\*\\)")}}},o={defaultToken:"",tokenPostfix:".fs",keywords:["abstract","and","atomic","as","assert","asr","base","begin","break","checked","component","const","constraint","constructor","continue","class","default","delegate","do","done","downcast","downto","elif","else","end","exception","eager","event","external","extern","false","finally","for","fun","function","fixed","functor","global","if","in","include","inherit","inline","interface","internal","land","lor","lsl","lsr","lxor","lazy","let","match","member","mod","module","mutable","namespace","method","mixin","new","not","null","of","open","or","object","override","private","parallel","process","protected","pure","public","rec","return","static","sealed","struct","sig","then","to","true","tailcall","trait","try","type","upcast","use","val","void","virtual","volatile","when","while","with","yield"],symbols:/[=><!~?:&|+\-*\^%;\.,\/]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/[uU]?[yslnLI]?/,floatsuffix:/[fFmM]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[<.*>\]/,"annotation"],[/^#(if|else|endif)/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0x[0-9a-fA-F]+LF/,"number.float"],[/0x[0-9a-fA-F]+(@integersuffix)/,"number.hex"],[/0b[0-1]+(@integersuffix)/,"number.bin"],[/\d+(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string",'@string."""'],[/"/,"string",'@string."'],[/\@"/,{token:"string.quote",next:"@litstring"}],[/'[^\\']'B?/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\(\*(?!\))/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^*(]+/,"comment"],[/\*\)/,"comment","@pop"],[/\*/,"comment"],[/\(\*\)/,"comment"],[/\(/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/("""|"B?)/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]],litstring:[[/[^"]+/,"string"],[/""/,"string.escape"],[/"/,{token:"string.quote",next:"@pop"}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["t3Iv"],{t3Iv:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",function(){return s}),t.d(n,"language",function(){return o});var s={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*//\\s*#region\\b|^\\s*\\(\\*\\s*#region(.*)\\*\\)"),end:new RegExp("^\\s*//\\s*#endregion\\b|^\\s*\\(\\*\\s*#endregion\\s*\\*\\)")}}},o={defaultToken:"",tokenPostfix:".fs",keywords:["abstract","and","atomic","as","assert","asr","base","begin","break","checked","component","const","constraint","constructor","continue","class","default","delegate","do","done","downcast","downto","elif","else","end","exception","eager","event","external","extern","false","finally","for","fun","function","fixed","functor","global","if","in","include","inherit","inline","interface","internal","land","lor","lsl","lsr","lxor","lazy","let","match","member","mod","module","mutable","namespace","method","mixin","new","not","null","of","open","or","object","override","private","parallel","process","protected","pure","public","rec","return","static","sealed","struct","sig","then","to","true","tailcall","trait","try","type","upcast","use","val","void","virtual","volatile","when","while","with","yield"],symbols:/[=><!~?:&|+\-*\^%;\.,\/]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/[uU]?[yslnLI]?/,floatsuffix:/[fFmM]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[<.*>\]/,"annotation"],[/^#(if|else|endif)/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0x[0-9a-fA-F]+LF/,"number.float"],[/0x[0-9a-fA-F]+(@integersuffix)/,"number.hex"],[/0b[0-1]+(@integersuffix)/,"number.bin"],[/\d+(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string",'@string."""'],[/"/,"string",'@string."'],[/\@"/,{token:"string.quote",next:"@litstring"}],[/'[^\\']'B?/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\(\*(?!\))/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^*(]+/,"comment"],[/\*\)/,"comment","@pop"],[/\*/,"comment"],[/\(\*\)/,"comment"],[/\(/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/("""|"B?)/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]],litstring:[[/[^"]+/,"string"],[/""/,"string.escape"],[/"/,{token:"string.quote",next:"@pop"}]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/vi59.ae65cdf1.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/vi59.ae65cdf1.js index fd21e8096..03034e8e9 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/vi59.ae65cdf1.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/vi59.ae65cdf1.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["vi59"],{vi59:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return t}),o.d(n,"language",function(){return s});var t={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".go",keywords:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var","bool","true","false","uint8","uint16","uint32","uint64","int8","int16","int32","int64","float32","float64","complex64","complex128","byte","rune","uint","int","uintptr","string","nil"],operators:["+","-","*","/","%","&","|","^","<<",">>","&^","+=","-=","*=","/=","%=","&=","|=","^=","<<=",">>=","&^=","&&","||","<-","++","--","==","<",">","=","!","!=","<=",">=",":=","...","(",")","","]","{","}",",",";",".",":"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex"],[/0[0-7']*[0-7]/,"number.octal"],[/0[bB][0-1']*[0-1]/,"number.binary"],[/\d[\d']*/,"number"],[/\d/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/`/,"string","@rawstring"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],rawstring:[[/[^\`]/,"string"],[/`/,"string","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["vi59"],{vi59:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",function(){return t}),o.d(n,"language",function(){return s});var t={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".go",keywords:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var","bool","true","false","uint8","uint16","uint32","uint64","int8","int16","int32","int64","float32","float64","complex64","complex128","byte","rune","uint","int","uintptr","string","nil"],operators:["+","-","*","/","%","&","|","^","<<",">>","&^","+=","-=","*=","/=","%=","&=","|=","^=","<<=",">>=","&^=","&&","||","<-","++","--","==","<",">","=","!","!=","<=",">=",":=","...","(",")","","]","{","}",",",";",".",":"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex"],[/0[0-7']*[0-7]/,"number.octal"],[/0[bB][0-1']*[0-1]/,"number.binary"],[/\d[\d']*/,"number"],[/\d/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/`/,"string","@rawstring"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],rawstring:[[/[^\`]/,"string"],[/`/,"string","@pop"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/wXL/.d0092b1f.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/wXL/.d0092b1f.js index 0468f61b6..269891bbf 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/wXL/.d0092b1f.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/wXL/.d0092b1f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["wXL/"],{"wXL/":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return r}),n.d(t,"language",function(){return s});var r={comments:{lineComment:";;"},brackets:[["[","]"],["(",")"],["{","}"]],autoClosingPairs:[{open:"[",close:"]"},{open:'"',close:'"'},{open:"(",close:")"},{open:"{",close:"}"}],surroundingPairs:[{open:"[",close:"]"},{open:'"',close:'"'},{open:"(",close:")"},{open:"{",close:"}"}]},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".clj",brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"}],constants:["true","false","nil"],numbers:/^(?:[+\-]?\d+(?:(?:N|(?:[eE][+\-]?\d+))|(?:\.?\d*(?:M|(?:[eE][+\-]?\d+))?)|\/\d+|[xX][0-9a-fA-F]+|r[0-9a-zA-Z]+)?(?=[\\\[\]\s"#'(),;@^`{}~]|$))/,characters:/^(?:\\(?:backspace|formfeed|newline|return|space|tab|o[0-7]{3}|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{4}|.)?(?=[\\\[\]\s"(),;@^`{}~]|$))/,escapes:/^\\(?:["'\\bfnrt]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,qualifiedSymbols:/^(?:(?:[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*(?:\.[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*\/)?(?:\/|[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*(?=[\\\[\]\s"(),;@^`{}~]|$))/,specialForms:[".","catch","def","do","if","monitor-enter","monitor-exit","new","quote","recur","set!","throw","try","var"],coreSymbols:["*","*'","*1","*2","*3","*agent*","*allow-unresolved-vars*","*assert*","*clojure-version*","*command-line-args*","*compile-files*","*compile-path*","*compiler-options*","*data-readers*","*default-data-reader-fn*","*e","*err*","*file*","*flush-on-newline*","*fn-loader*","*in*","*math-context*","*ns*","*out*","*print-dup*","*print-length*","*print-level*","*print-meta*","*print-namespace-maps*","*print-readably*","*read-eval*","*reader-resolver*","*source-path*","*suppress-read*","*unchecked-math*","*use-context-classloader*","*verbose-defrecords*","*warn-on-reflection*","+","+'","-","-'","->","->>","->ArrayChunk","->Eduction","->Vec","->VecNode","->VecSeq","-cache-protocol-fn","-reset-methods","..","/","<","<=","=","==",">",">=","EMPTY-NODE","Inst","StackTraceElement->vec","Throwable->map","accessor","aclone","add-classpath","add-watch","agent","agent-error","agent-errors","aget","alength","alias","all-ns","alter","alter-meta!","alter-var-root","amap","ancestors","and","any?","apply","areduce","array-map","as->","aset","aset-boolean","aset-byte","aset-char","aset-double","aset-float","aset-int","aset-long","aset-short","assert","assoc","assoc!","assoc-in","associative?","atom","await","await-for","await1","bases","bean","bigdec","bigint","biginteger","binding","bit-and","bit-and-not","bit-clear","bit-flip","bit-not","bit-or","bit-set","bit-shift-left","bit-shift-right","bit-test","bit-xor","boolean","boolean-array","boolean?","booleans","bound-fn","bound-fn*","bound?","bounded-count","butlast","byte","byte-array","bytes","bytes?","case","cast","cat","char","char-array","char-escape-string","char-name-string","char?","chars","chunk","chunk-append","chunk-buffer","chunk-cons","chunk-first","chunk-next","chunk-rest","chunked-seq?","class","class?","clear-agent-errors","clojure-version","coll?","comment","commute","comp","comparator","compare","compare-and-set!","compile","complement","completing","concat","cond","cond->","cond->>","condp","conj","conj!","cons","constantly","construct-proxy","contains?","count","counted?","create-ns","create-struct","cycle","dec","dec'","decimal?","declare","dedupe","default-data-readers","definline","definterface","defmacro","defmethod","defmulti","defn","defn-","defonce","defprotocol","defrecord","defstruct","deftype","delay","delay?","deliver","denominator","deref","derive","descendants","destructure","disj","disj!","dissoc","dissoc!","distinct","distinct?","doall","dorun","doseq","dosync","dotimes","doto","double","double-array","double?","doubles","drop","drop-last","drop-while","eduction","empty","empty?","ensure","ensure-reduced","enumeration-seq","error-handler","error-mode","eval","even?","every-pred","every?","ex-data","ex-info","extend","extend-protocol","extend-type","extenders","extends?","false?","ffirst","file-seq","filter","filterv","find","find-keyword","find-ns","find-protocol-impl","find-protocol-method","find-var","first","flatten","float","float-array","float?","floats","flush","fn","fn?","fnext","fnil","for","force","format","frequencies","future","future-call","future-cancel","future-cancelled?","future-done?","future?","gen-class","gen-interface","gensym","get","get-in","get-method","get-proxy-class","get-thread-bindings","get-validator","group-by","halt-when","hash","hash-combine","hash-map","hash-ordered-coll","hash-set","hash-unordered-coll","ident?","identical?","identity","if-let","if-not","if-some","ifn?","import","in-ns","inc","inc'","indexed?","init-proxy","inst-ms","inst-ms*","inst?","instance?","int","int-array","int?","integer?","interleave","intern","interpose","into","into-array","ints","io!","isa?","iterate","iterator-seq","juxt","keep","keep-indexed","key","keys","keyword","keyword?","last","lazy-cat","lazy-seq","let","letfn","line-seq","list","list*","list?","load","load-file","load-reader","load-string","loaded-libs","locking","long","long-array","longs","loop","macroexpand","macroexpand-1","make-array","make-hierarchy","map","map-entry?","map-indexed","map?","mapcat","mapv","max","max-key","memfn","memoize","merge","merge-with","meta","method-sig","methods","min","min-key","mix-collection-hash","mod","munge","name","namespace","namespace-munge","nat-int?","neg-int?","neg?","newline","next","nfirst","nil?","nnext","not","not-any?","not-empty","not-every?","not=","ns","ns-aliases","ns-imports","ns-interns","ns-map","ns-name","ns-publics","ns-refers","ns-resolve","ns-unalias","ns-unmap","nth","nthnext","nthrest","num","number?","numerator","object-array","odd?","or","parents","partial","partition","partition-all","partition-by","pcalls","peek","persistent!","pmap","pop","pop!","pop-thread-bindings","pos-int?","pos?","pr","pr-str","prefer-method","prefers","primitives-classnames","print","print-ctor","print-dup","print-method","print-simple","print-str","printf","println","println-str","prn","prn-str","promise","proxy","proxy-call-with-super","proxy-mappings","proxy-name","proxy-super","push-thread-bindings","pvalues","qualified-ident?","qualified-keyword?","qualified-symbol?","quot","rand","rand-int","rand-nth","random-sample","range","ratio?","rational?","rationalize","re-find","re-groups","re-matcher","re-matches","re-pattern","re-seq","read","read-line","read-string","reader-conditional","reader-conditional?","realized?","record?","reduce","reduce-kv","reduced","reduced?","reductions","ref","ref-history-count","ref-max-history","ref-min-history","ref-set","refer","refer-clojure","reify","release-pending-sends","rem","remove","remove-all-methods","remove-method","remove-ns","remove-watch","repeat","repeatedly","replace","replicate","require","reset!","reset-meta!","reset-vals!","resolve","rest","restart-agent","resultset-seq","reverse","reversible?","rseq","rsubseq","run!","satisfies?","second","select-keys","send","send-off","send-via","seq","seq?","seqable?","seque","sequence","sequential?","set","set-agent-send-executor!","set-agent-send-off-executor!","set-error-handler!","set-error-mode!","set-validator!","set?","short","short-array","shorts","shuffle","shutdown-agents","simple-ident?","simple-keyword?","simple-symbol?","slurp","some","some->","some->>","some-fn","some?","sort","sort-by","sorted-map","sorted-map-by","sorted-set","sorted-set-by","sorted?","special-symbol?","spit","split-at","split-with","str","string?","struct","struct-map","subs","subseq","subvec","supers","swap!","swap-vals!","symbol","symbol?","sync","tagged-literal","tagged-literal?","take","take-last","take-nth","take-while","test","the-ns","thread-bound?","time","to-array","to-array-2d","trampoline","transduce","transient","tree-seq","true?","type","unchecked-add","unchecked-add-int","unchecked-byte","unchecked-char","unchecked-dec","unchecked-dec-int","unchecked-divide-int","unchecked-double","unchecked-float","unchecked-inc","unchecked-inc-int","unchecked-int","unchecked-long","unchecked-multiply","unchecked-multiply-int","unchecked-negate","unchecked-negate-int","unchecked-remainder-int","unchecked-short","unchecked-subtract","unchecked-subtract-int","underive","unquote","unquote-splicing","unreduced","unsigned-bit-shift-right","update","update-in","update-proxy","uri?","use","uuid?","val","vals","var-get","var-set","var?","vary-meta","vec","vector","vector-of","vector?","volatile!","volatile?","vreset!","vswap!","when","when-first","when-let","when-not","when-some","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn","xml-seq","zero?","zipmap"],tokenizer:{root:[{include:"@whitespace"},[/@numbers/,"number"],[/@characters/,"string"],{include:"@string"},[/[()\[\]{}]/,"@brackets"],[/\/#"(?:\.|(?:")|[^"\n])*"\/g/,"regexp"],[/[#'@^`~]/,"meta"],[/@qualifiedSymbols/,{cases:{"^:.+$":"constant","@specialForms":"keyword","@coreSymbols":"keyword","@constants":"constant","@default":"identifier"}}]],whitespace:[[/[\s,]+/,"white"],[/;.*$/,"comment"],[/\(comment\b/,"comment","@comment"]],comment:[[/\(/,"comment","@push"],[/\)/,"comment","@pop"],[/[^()]/,"comment"]],string:[[/"/,"string","@multiLineString"]],multiLineString:[[/"/,"string","@popall"],[/@escapes/,"string.escape"],[/./,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["wXL/"],{"wXL/":function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return r}),n.d(t,"language",function(){return s});var r={comments:{lineComment:";;"},brackets:[["[","]"],["(",")"],["{","}"]],autoClosingPairs:[{open:"[",close:"]"},{open:'"',close:'"'},{open:"(",close:")"},{open:"{",close:"}"}],surroundingPairs:[{open:"[",close:"]"},{open:'"',close:'"'},{open:"(",close:")"},{open:"{",close:"}"}]},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".clj",brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"}],constants:["true","false","nil"],numbers:/^(?:[+\-]?\d+(?:(?:N|(?:[eE][+\-]?\d+))|(?:\.?\d*(?:M|(?:[eE][+\-]?\d+))?)|\/\d+|[xX][0-9a-fA-F]+|r[0-9a-zA-Z]+)?(?=[\\\[\]\s"#'(),;@^`{}~]|$))/,characters:/^(?:\\(?:backspace|formfeed|newline|return|space|tab|o[0-7]{3}|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{4}|.)?(?=[\\\[\]\s"(),;@^`{}~]|$))/,escapes:/^\\(?:["'\\bfnrt]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,qualifiedSymbols:/^(?:(?:[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*(?:\.[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*\/)?(?:\/|[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*(?=[\\\[\]\s"(),;@^`{}~]|$))/,specialForms:[".","catch","def","do","if","monitor-enter","monitor-exit","new","quote","recur","set!","throw","try","var"],coreSymbols:["*","*'","*1","*2","*3","*agent*","*allow-unresolved-vars*","*assert*","*clojure-version*","*command-line-args*","*compile-files*","*compile-path*","*compiler-options*","*data-readers*","*default-data-reader-fn*","*e","*err*","*file*","*flush-on-newline*","*fn-loader*","*in*","*math-context*","*ns*","*out*","*print-dup*","*print-length*","*print-level*","*print-meta*","*print-namespace-maps*","*print-readably*","*read-eval*","*reader-resolver*","*source-path*","*suppress-read*","*unchecked-math*","*use-context-classloader*","*verbose-defrecords*","*warn-on-reflection*","+","+'","-","-'","->","->>","->ArrayChunk","->Eduction","->Vec","->VecNode","->VecSeq","-cache-protocol-fn","-reset-methods","..","/","<","<=","=","==",">",">=","EMPTY-NODE","Inst","StackTraceElement->vec","Throwable->map","accessor","aclone","add-classpath","add-watch","agent","agent-error","agent-errors","aget","alength","alias","all-ns","alter","alter-meta!","alter-var-root","amap","ancestors","and","any?","apply","areduce","array-map","as->","aset","aset-boolean","aset-byte","aset-char","aset-double","aset-float","aset-int","aset-long","aset-short","assert","assoc","assoc!","assoc-in","associative?","atom","await","await-for","await1","bases","bean","bigdec","bigint","biginteger","binding","bit-and","bit-and-not","bit-clear","bit-flip","bit-not","bit-or","bit-set","bit-shift-left","bit-shift-right","bit-test","bit-xor","boolean","boolean-array","boolean?","booleans","bound-fn","bound-fn*","bound?","bounded-count","butlast","byte","byte-array","bytes","bytes?","case","cast","cat","char","char-array","char-escape-string","char-name-string","char?","chars","chunk","chunk-append","chunk-buffer","chunk-cons","chunk-first","chunk-next","chunk-rest","chunked-seq?","class","class?","clear-agent-errors","clojure-version","coll?","comment","commute","comp","comparator","compare","compare-and-set!","compile","complement","completing","concat","cond","cond->","cond->>","condp","conj","conj!","cons","constantly","construct-proxy","contains?","count","counted?","create-ns","create-struct","cycle","dec","dec'","decimal?","declare","dedupe","default-data-readers","definline","definterface","defmacro","defmethod","defmulti","defn","defn-","defonce","defprotocol","defrecord","defstruct","deftype","delay","delay?","deliver","denominator","deref","derive","descendants","destructure","disj","disj!","dissoc","dissoc!","distinct","distinct?","doall","dorun","doseq","dosync","dotimes","doto","double","double-array","double?","doubles","drop","drop-last","drop-while","eduction","empty","empty?","ensure","ensure-reduced","enumeration-seq","error-handler","error-mode","eval","even?","every-pred","every?","ex-data","ex-info","extend","extend-protocol","extend-type","extenders","extends?","false?","ffirst","file-seq","filter","filterv","find","find-keyword","find-ns","find-protocol-impl","find-protocol-method","find-var","first","flatten","float","float-array","float?","floats","flush","fn","fn?","fnext","fnil","for","force","format","frequencies","future","future-call","future-cancel","future-cancelled?","future-done?","future?","gen-class","gen-interface","gensym","get","get-in","get-method","get-proxy-class","get-thread-bindings","get-validator","group-by","halt-when","hash","hash-combine","hash-map","hash-ordered-coll","hash-set","hash-unordered-coll","ident?","identical?","identity","if-let","if-not","if-some","ifn?","import","in-ns","inc","inc'","indexed?","init-proxy","inst-ms","inst-ms*","inst?","instance?","int","int-array","int?","integer?","interleave","intern","interpose","into","into-array","ints","io!","isa?","iterate","iterator-seq","juxt","keep","keep-indexed","key","keys","keyword","keyword?","last","lazy-cat","lazy-seq","let","letfn","line-seq","list","list*","list?","load","load-file","load-reader","load-string","loaded-libs","locking","long","long-array","longs","loop","macroexpand","macroexpand-1","make-array","make-hierarchy","map","map-entry?","map-indexed","map?","mapcat","mapv","max","max-key","memfn","memoize","merge","merge-with","meta","method-sig","methods","min","min-key","mix-collection-hash","mod","munge","name","namespace","namespace-munge","nat-int?","neg-int?","neg?","newline","next","nfirst","nil?","nnext","not","not-any?","not-empty","not-every?","not=","ns","ns-aliases","ns-imports","ns-interns","ns-map","ns-name","ns-publics","ns-refers","ns-resolve","ns-unalias","ns-unmap","nth","nthnext","nthrest","num","number?","numerator","object-array","odd?","or","parents","partial","partition","partition-all","partition-by","pcalls","peek","persistent!","pmap","pop","pop!","pop-thread-bindings","pos-int?","pos?","pr","pr-str","prefer-method","prefers","primitives-classnames","print","print-ctor","print-dup","print-method","print-simple","print-str","printf","println","println-str","prn","prn-str","promise","proxy","proxy-call-with-super","proxy-mappings","proxy-name","proxy-super","push-thread-bindings","pvalues","qualified-ident?","qualified-keyword?","qualified-symbol?","quot","rand","rand-int","rand-nth","random-sample","range","ratio?","rational?","rationalize","re-find","re-groups","re-matcher","re-matches","re-pattern","re-seq","read","read-line","read-string","reader-conditional","reader-conditional?","realized?","record?","reduce","reduce-kv","reduced","reduced?","reductions","ref","ref-history-count","ref-max-history","ref-min-history","ref-set","refer","refer-clojure","reify","release-pending-sends","rem","remove","remove-all-methods","remove-method","remove-ns","remove-watch","repeat","repeatedly","replace","replicate","require","reset!","reset-meta!","reset-vals!","resolve","rest","restart-agent","resultset-seq","reverse","reversible?","rseq","rsubseq","run!","satisfies?","second","select-keys","send","send-off","send-via","seq","seq?","seqable?","seque","sequence","sequential?","set","set-agent-send-executor!","set-agent-send-off-executor!","set-error-handler!","set-error-mode!","set-validator!","set?","short","short-array","shorts","shuffle","shutdown-agents","simple-ident?","simple-keyword?","simple-symbol?","slurp","some","some->","some->>","some-fn","some?","sort","sort-by","sorted-map","sorted-map-by","sorted-set","sorted-set-by","sorted?","special-symbol?","spit","split-at","split-with","str","string?","struct","struct-map","subs","subseq","subvec","supers","swap!","swap-vals!","symbol","symbol?","sync","tagged-literal","tagged-literal?","take","take-last","take-nth","take-while","test","the-ns","thread-bound?","time","to-array","to-array-2d","trampoline","transduce","transient","tree-seq","true?","type","unchecked-add","unchecked-add-int","unchecked-byte","unchecked-char","unchecked-dec","unchecked-dec-int","unchecked-divide-int","unchecked-double","unchecked-float","unchecked-inc","unchecked-inc-int","unchecked-int","unchecked-long","unchecked-multiply","unchecked-multiply-int","unchecked-negate","unchecked-negate-int","unchecked-remainder-int","unchecked-short","unchecked-subtract","unchecked-subtract-int","underive","unquote","unquote-splicing","unreduced","unsigned-bit-shift-right","update","update-in","update-proxy","uri?","use","uuid?","val","vals","var-get","var-set","var?","vary-meta","vec","vector","vector-of","vector?","volatile!","volatile?","vreset!","vswap!","when","when-first","when-let","when-not","when-some","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn","xml-seq","zero?","zipmap"],tokenizer:{root:[{include:"@whitespace"},[/@numbers/,"number"],[/@characters/,"string"],{include:"@string"},[/[()\[\]{}]/,"@brackets"],[/\/#"(?:\.|(?:")|[^"\n])*"\/g/,"regexp"],[/[#'@^`~]/,"meta"],[/@qualifiedSymbols/,{cases:{"^:.+$":"constant","@specialForms":"keyword","@coreSymbols":"keyword","@constants":"constant","@default":"identifier"}}]],whitespace:[[/[\s,]+/,"white"],[/;.*$/,"comment"],[/\(comment\b/,"comment","@comment"]],comment:[[/\(/,"comment","@push"],[/\)/,"comment","@pop"],[/[^()]/,"comment"]],string:[[/"/,"string","@multiLineString"]],multiLineString:[[/"/,"string","@popall"],[/@escapes/,"string.escape"],[/./,"string"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/whva.6cce7b03.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/whva.6cce7b03.js index 831c6dfb0..1fdd77542 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/whva.6cce7b03.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/whva.6cce7b03.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["whva"],{whva:function(E,T,S){"use strict";S.r(T),S.d(T,"conf",function(){return R}),S.d(T,"language",function(){return A});var R={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},A={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["ACCESSIBLE","ACCOUNT","ACTION","ADD","AFTER","AGAINST","AGGREGATE","ALGORITHM","ALL","ALTER","ALWAYS","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASCII","ASENSITIVE","AT","AUTOEXTEND_SIZE","AUTO_INCREMENT","AVG","AVG_ROW_LENGTH","BACKUP","BEFORE","BEGIN","BETWEEN","BIGINT","BINARY","BINLOG","BIT","BLOB","BLOCK","BOOL","BOOLEAN","BOTH","BTREE","BY","BYTE","CACHE","CALL","CASCADE","CASCADED","CASE","CATALOG_NAME","CHAIN","CHANGE","CHANGED","CHANNEL","CHAR","CHARACTER","CHARSET","CHECK","CHECKSUM","CIPHER","CLASS_ORIGIN","CLIENT","CLOSE","COALESCE","CODE","COLLATE","COLLATION","COLUMN","COLUMNS","COLUMN_FORMAT","COLUMN_NAME","COMMENT","COMMIT","COMMITTED","COMPACT","COMPLETION","COMPRESSED","COMPRESSION","CONCURRENT","CONDITION","CONNECTION","CONSISTENT","CONSTRAINT","CONSTRAINT_CATALOG","CONSTRAINT_NAME","CONSTRAINT_SCHEMA","CONTAINS","CONTEXT","CONTINUE","CONVERT","CPU","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","CURSOR_NAME","DATA","DATABASE","DATABASES","DATAFILE","DATE","DATETIME","DAY","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEALLOCATE","DEC","DECIMAL","DECLARE","DEFAULT","DEFAULT_AUTH","DEFINER","DELAYED","DELAY_KEY_WRITE","DELETE","DESC","DESCRIBE","DES_KEY_FILE","DETERMINISTIC","DIAGNOSTICS","DIRECTORY","DISABLE","DISCARD","DISK","DISTINCT","DISTINCTROW","DIV","DO","DOUBLE","DROP","DUAL","DUMPFILE","DUPLICATE","DYNAMIC","EACH","ELSE","ELSEIF","ENABLE","ENCLOSED","ENCRYPTION","END","ENDS","ENGINE","ENGINES","ENUM","ERROR","ERRORS","ESCAPE","ESCAPED","EVENT","EVENTS","EVERY","EXCHANGE","EXECUTE","EXISTS","EXIT","EXPANSION","EXPIRE","EXPLAIN","EXPORT","EXTENDED","EXTENT_SIZE","FALSE","FAST","FAULTS","FETCH","FIELDS","FILE","FILE_BLOCK_SIZE","FILTER","FIRST","FIXED","FLOAT","FLOAT4","FLOAT8","FLUSH","FOLLOWS","FOR","FORCE","FOREIGN","FORMAT","FOUND","FROM","FULL","FULLTEXT","FUNCTION","GENERAL","GENERATED","GEOMETRY","GEOMETRYCOLLECTION","GET","GET_FORMAT","GLOBAL","GRANT","GRANTS","GROUP","GROUP_REPLICATION","HANDLER","HASH","HAVING","HELP","HIGH_PRIORITY","HOST","HOSTS","HOUR","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IDENTIFIED","IF","IGNORE","IGNORE_SERVER_IDS","IMPORT","INDEX","INDEXES","INFILE","INITIAL_SIZE","INNER","INOUT","INSENSITIVE","INSERT","INSERT_METHOD","INSTALL","INSTANCE","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","INTERVAL","INTO","INVOKER","IO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IO_THREAD","IPC","ISOLATION","ISSUER","ITERATE","JOIN","JSON","KEY","KEYS","KEY_BLOCK_SIZE","KILL","LANGUAGE","LAST","LEADING","LEAVE","LEAVES","LEFT","LESS","LEVEL","LIKE","LIMIT","LINEAR","LINES","LINESTRING","LIST","LOAD","LOCAL","LOCALTIME","LOCALTIMESTAMP","LOCK","LOCKS","LOGFILE","LOGS","LONG","LONGBLOB","LONGTEXT","LOOP","LOW_PRIORITY","MASTER","MASTER_AUTO_POSITION","MASTER_BIND","MASTER_CONNECT_RETRY","MASTER_DELAY","MASTER_HEARTBEAT_PERIOD","MASTER_HOST","MASTER_LOG_FILE","MASTER_LOG_POS","MASTER_PASSWORD","MASTER_PORT","MASTER_RETRY_COUNT","MASTER_SERVER_ID","MASTER_SSL","MASTER_SSL_CA","MASTER_SSL_CAPATH","MASTER_SSL_CERT","MASTER_SSL_CIPHER","MASTER_SSL_CRL","MASTER_SSL_CRLPATH","MASTER_SSL_KEY","MASTER_SSL_VERIFY_SERVER_CERT","MASTER_TLS_VERSION","MASTER_USER","MATCH","MAXVALUE","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_SIZE","MAX_STATEMENT_TIME","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MEMORY","MERGE","MESSAGE_TEXT","MICROSECOND","MIDDLEINT","MIGRATE","MINUTE","MINUTE_MICROSECOND","MINUTE_SECOND","MIN_ROWS","MOD","MODE","MODIFIES","MODIFY","MONTH","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","MUTEX","MYSQL_ERRNO","NAME","NAMES","NATIONAL","NATURAL","NCHAR","NDB","NDBCLUSTER","NEVER","NEW","NEXT","NO","NODEGROUP","NONBLOCKING","NONE","NO_WAIT","NO_WRITE_TO_BINLOG","NUMBER","NUMERIC","NVARCHAR","OFFSET","OLD_PASSWORD","ON","ONE","ONLY","OPEN","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OPTIONS","OR","ORDER","OUT","OUTER","OUTFILE","OWNER","PACK_KEYS","PAGE","PARSER","PARSE_GCOL_EXPR","PARTIAL","PARTITION","PARTITIONING","PARTITIONS","PASSWORD","PHASE","PLUGIN","PLUGINS","PLUGIN_DIR","POINT","POLYGON","PORT","PRECEDES","PRECISION","PREPARE","PRESERVE","PREV","PRIMARY","PRIVILEGES","PROCEDURE","PROCESSLIST","PROFILE","PROFILES","PROXY","PURGE","QUARTER","QUERY","QUICK","RANGE","READ","READS","READ_ONLY","READ_WRITE","REAL","REBUILD","RECOVER","REDOFILE","REDO_BUFFER_SIZE","REDUNDANT","REFERENCES","REGEXP","RELAY","RELAYLOG","RELAY_LOG_FILE","RELAY_LOG_POS","RELAY_THREAD","RELEASE","RELOAD","REMOVE","RENAME","REORGANIZE","REPAIR","REPEAT","REPEATABLE","REPLACE","REPLICATE_DO_DB","REPLICATE_DO_TABLE","REPLICATE_IGNORE_DB","REPLICATE_IGNORE_TABLE","REPLICATE_REWRITE_DB","REPLICATE_WILD_DO_TABLE","REPLICATE_WILD_IGNORE_TABLE","REPLICATION","REQUIRE","RESET","RESIGNAL","RESTORE","RESTRICT","RESUME","RETURN","RETURNED_SQLSTATE","RETURNS","REVERSE","REVOKE","RIGHT","RLIKE","ROLLBACK","ROLLUP","ROTATE","ROUTINE","ROW","ROWS","ROW_COUNT","ROW_FORMAT","RTREE","SAVEPOINT","SCHEDULE","SCHEMA","SCHEMAS","SCHEMA_NAME","SECOND","SECOND_MICROSECOND","SECURITY","SELECT","SENSITIVE","SEPARATOR","SERIAL","SERIALIZABLE","SERVER","SESSION","SET","SHARE","SHOW","SHUTDOWN","SIGNAL","SIGNED","SIMPLE","SLAVE","SLOW","SMALLINT","SNAPSHOT","SOCKET","SOME","SONAME","SOUNDS","SOURCE","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_AFTER_GTIDS","SQL_AFTER_MTS_GAPS","SQL_BEFORE_GTIDS","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQL_NO_CACHE","SQL_SMALL_RESULT","SQL_THREAD","SQL_TSI_DAY","SQL_TSI_HOUR","SQL_TSI_MINUTE","SQL_TSI_MONTH","SQL_TSI_QUARTER","SQL_TSI_SECOND","SQL_TSI_WEEK","SQL_TSI_YEAR","SSL","STACKED","START","STARTING","STARTS","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STATUS","STOP","STORAGE","STORED","STRAIGHT_JOIN","STRING","SUBCLASS_ORIGIN","SUBJECT","SUBPARTITION","SUBPARTITIONS","SUPER","SUSPEND","SWAPS","SWITCHES","TABLE","TABLES","TABLESPACE","TABLE_CHECKSUM","TABLE_NAME","TEMPORARY","TEMPTABLE","TERMINATED","TEXT","THAN","THEN","TIME","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TINYBLOB","TINYINT","TINYTEXT","TO","TRAILING","TRANSACTION","TRIGGER","TRIGGERS","TRUE","TRUNCATE","TYPE","TYPES","UNCOMMITTED","UNDEFINED","UNDO","UNDOFILE","UNDO_BUFFER_SIZE","UNICODE","UNINSTALL","UNION","UNIQUE","UNKNOWN","UNLOCK","UNSIGNED","UNTIL","UPDATE","UPGRADE","USAGE","USE","USER","USER_RESOURCES","USE_FRM","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALIDATION","VALUE","VALUES","VARBINARY","VARCHAR","VARCHARACTER","VARIABLES","VARYING","VIEW","VIRTUAL","WAIT","WARNINGS","WEEK","WEIGHT_STRING","WHEN","WHERE","WHILE","WITH","WITHOUT","WORK","WRAPPER","WRITE","X509","XA","XID","XML","XOR","YEAR","YEAR_MONTH","ZEROFILL"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","Area","AsBinary","AsWKB","ASCII","ASIN","AsText","AsWKT","ASYMMETRIC_DECRYPT","ASYMMETRIC_DERIVE","ASYMMETRIC_ENCRYPT","ASYMMETRIC_SIGN","ASYMMETRIC_VERIFY","ATAN","ATAN2","ATAN","AVG","BENCHMARK","BIN","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","Buffer","CAST","CEIL","CEILING","Centroid","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","Contains","CONV","CONVERT","CONVERT_TZ","ConvexHull","COS","COT","COUNT","CRC32","CREATE_ASYMMETRIC_PRIV_KEY","CREATE_ASYMMETRIC_PUB_KEY","CREATE_DH_PARAMETERS","CREATE_DIGEST","Crosses","CURDATE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DES_DECRYPT","DES_ENCRYPT","Dimension","Disjoint","Distance","ELT","ENCODE","ENCRYPT","EndPoint","Envelope","Equals","EXP","EXPORT_SET","ExteriorRing","EXTRACT","ExtractValue","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GeomCollFromText","GeometryCollectionFromText","GeomCollFromWKB","GeometryCollectionFromWKB","GeometryCollection","GeometryN","GeometryType","GeomFromText","GeometryFromText","GeomFromWKB","GeometryFromWKB","GET_FORMAT","GET_LOCK","GLength","GREATEST","GROUP_CONCAT","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","InteriorRingN","Intersects","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IsClosed","IsEmpty","ISNULL","IsSimple","JSON_APPEND","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAST_INSERT_ID","LCASE","LEAST","LEFT","LENGTH","LineFromText","LineStringFromText","LineFromWKB","LineStringFromWKB","LineString","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MBRContains","MBRCoveredBy","MBRCovers","MBRDisjoint","MBREqual","MBREquals","MBRIntersects","MBROverlaps","MBRTouches","MBRWithin","MD5","MICROSECOND","MID","MIN","MINUTE","MLineFromText","MultiLineStringFromText","MLineFromWKB","MultiLineStringFromWKB","MOD","MONTH","MONTHNAME","MPointFromText","MultiPointFromText","MPointFromWKB","MultiPointFromWKB","MPolyFromText","MultiPolygonFromText","MPolyFromWKB","MultiPolygonFromWKB","MultiLineString","MultiPoint","MultiPolygon","NAME_CONST","NOT IN","NOW","NULLIF","NumGeometries","NumInteriorRings","NumPoints","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","Overlaps","PASSWORD","PERIOD_ADD","PERIOD_DIFF","PI","Point","PointFromText","PointFromWKB","PointN","PolyFromText","PolygonFromText","PolyFromWKB","PolygonFromWKB","Polygon","POSITION","POW","POWER","PROCEDURE ANALYSE","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","ROUND","ROW_COUNT","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","SRID","ST_Area","ST_AsBinary","ST_AsWKB","ST_AsGeoJSON","ST_AsText","ST_AsWKT","ST_Buffer","ST_Buffer_Strategy","ST_Centroid","ST_Contains","ST_ConvexHull","ST_Crosses","ST_Difference","ST_Dimension","ST_Disjoint","ST_Distance","ST_Distance_Sphere","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_GeoHash","ST_GeomCollFromText","ST_GeometryCollectionFromText","ST_GeomCollFromTxt","ST_GeomCollFromWKB","ST_GeometryCollectionFromWKB","ST_GeometryN","ST_GeometryType","ST_GeomFromGeoJSON","ST_GeomFromText","ST_GeometryFromText","ST_GeomFromWKB","ST_GeometryFromWKB","ST_InteriorRingN","ST_Intersection","ST_Intersects","ST_IsClosed","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_LatFromGeoHash","ST_Length","ST_LineFromText","ST_LineStringFromText","ST_LineFromWKB","ST_LineStringFromWKB","ST_LongFromGeoHash","ST_MakeEnvelope","ST_MLineFromText","ST_MultiLineStringFromText","ST_MLineFromWKB","ST_MultiLineStringFromWKB","ST_MPointFromText","ST_MultiPointFromText","ST_MPointFromWKB","ST_MultiPointFromWKB","ST_MPolyFromText","ST_MultiPolygonFromText","ST_MPolyFromWKB","ST_MultiPolygonFromWKB","ST_NumGeometries","ST_NumInteriorRing","ST_NumInteriorRings","ST_NumPoints","ST_Overlaps","ST_PointFromGeoHash","ST_PointFromText","ST_PointFromWKB","ST_PointN","ST_PolyFromText","ST_PolygonFromText","ST_PolyFromWKB","ST_PolygonFromWKB","ST_Simplify","ST_SRID","ST_StartPoint","ST_SymDifference","ST_Touches","ST_Union","ST_Validate","ST_Within","ST_X","ST_Y","StartPoint","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","Touches","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UpdateXML","UPPER","USER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","Within","X","Y","YEAR","YEARWEEK"],builtinVariables:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/#+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}],[/"/,{token:"string.double",next:"@stringDouble"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],stringDouble:[[/[^"]+/,"string.double"],[/""/,"string.double"],[/"/,{token:"string.double",next:"@pop"}]],complexIdentifiers:[[/`/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^`]+/,"identifier"],[/``/,"identifier"],[/`/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["whva"],{whva:function(E,T,S){"use strict";S.r(T),S.d(T,"conf",function(){return R}),S.d(T,"language",function(){return A});var R={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},A={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["ACCESSIBLE","ACCOUNT","ACTION","ADD","AFTER","AGAINST","AGGREGATE","ALGORITHM","ALL","ALTER","ALWAYS","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASCII","ASENSITIVE","AT","AUTOEXTEND_SIZE","AUTO_INCREMENT","AVG","AVG_ROW_LENGTH","BACKUP","BEFORE","BEGIN","BETWEEN","BIGINT","BINARY","BINLOG","BIT","BLOB","BLOCK","BOOL","BOOLEAN","BOTH","BTREE","BY","BYTE","CACHE","CALL","CASCADE","CASCADED","CASE","CATALOG_NAME","CHAIN","CHANGE","CHANGED","CHANNEL","CHAR","CHARACTER","CHARSET","CHECK","CHECKSUM","CIPHER","CLASS_ORIGIN","CLIENT","CLOSE","COALESCE","CODE","COLLATE","COLLATION","COLUMN","COLUMNS","COLUMN_FORMAT","COLUMN_NAME","COMMENT","COMMIT","COMMITTED","COMPACT","COMPLETION","COMPRESSED","COMPRESSION","CONCURRENT","CONDITION","CONNECTION","CONSISTENT","CONSTRAINT","CONSTRAINT_CATALOG","CONSTRAINT_NAME","CONSTRAINT_SCHEMA","CONTAINS","CONTEXT","CONTINUE","CONVERT","CPU","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","CURSOR_NAME","DATA","DATABASE","DATABASES","DATAFILE","DATE","DATETIME","DAY","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEALLOCATE","DEC","DECIMAL","DECLARE","DEFAULT","DEFAULT_AUTH","DEFINER","DELAYED","DELAY_KEY_WRITE","DELETE","DESC","DESCRIBE","DES_KEY_FILE","DETERMINISTIC","DIAGNOSTICS","DIRECTORY","DISABLE","DISCARD","DISK","DISTINCT","DISTINCTROW","DIV","DO","DOUBLE","DROP","DUAL","DUMPFILE","DUPLICATE","DYNAMIC","EACH","ELSE","ELSEIF","ENABLE","ENCLOSED","ENCRYPTION","END","ENDS","ENGINE","ENGINES","ENUM","ERROR","ERRORS","ESCAPE","ESCAPED","EVENT","EVENTS","EVERY","EXCHANGE","EXECUTE","EXISTS","EXIT","EXPANSION","EXPIRE","EXPLAIN","EXPORT","EXTENDED","EXTENT_SIZE","FALSE","FAST","FAULTS","FETCH","FIELDS","FILE","FILE_BLOCK_SIZE","FILTER","FIRST","FIXED","FLOAT","FLOAT4","FLOAT8","FLUSH","FOLLOWS","FOR","FORCE","FOREIGN","FORMAT","FOUND","FROM","FULL","FULLTEXT","FUNCTION","GENERAL","GENERATED","GEOMETRY","GEOMETRYCOLLECTION","GET","GET_FORMAT","GLOBAL","GRANT","GRANTS","GROUP","GROUP_REPLICATION","HANDLER","HASH","HAVING","HELP","HIGH_PRIORITY","HOST","HOSTS","HOUR","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IDENTIFIED","IF","IGNORE","IGNORE_SERVER_IDS","IMPORT","INDEX","INDEXES","INFILE","INITIAL_SIZE","INNER","INOUT","INSENSITIVE","INSERT","INSERT_METHOD","INSTALL","INSTANCE","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","INTERVAL","INTO","INVOKER","IO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IO_THREAD","IPC","ISOLATION","ISSUER","ITERATE","JOIN","JSON","KEY","KEYS","KEY_BLOCK_SIZE","KILL","LANGUAGE","LAST","LEADING","LEAVE","LEAVES","LEFT","LESS","LEVEL","LIKE","LIMIT","LINEAR","LINES","LINESTRING","LIST","LOAD","LOCAL","LOCALTIME","LOCALTIMESTAMP","LOCK","LOCKS","LOGFILE","LOGS","LONG","LONGBLOB","LONGTEXT","LOOP","LOW_PRIORITY","MASTER","MASTER_AUTO_POSITION","MASTER_BIND","MASTER_CONNECT_RETRY","MASTER_DELAY","MASTER_HEARTBEAT_PERIOD","MASTER_HOST","MASTER_LOG_FILE","MASTER_LOG_POS","MASTER_PASSWORD","MASTER_PORT","MASTER_RETRY_COUNT","MASTER_SERVER_ID","MASTER_SSL","MASTER_SSL_CA","MASTER_SSL_CAPATH","MASTER_SSL_CERT","MASTER_SSL_CIPHER","MASTER_SSL_CRL","MASTER_SSL_CRLPATH","MASTER_SSL_KEY","MASTER_SSL_VERIFY_SERVER_CERT","MASTER_TLS_VERSION","MASTER_USER","MATCH","MAXVALUE","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_SIZE","MAX_STATEMENT_TIME","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MEMORY","MERGE","MESSAGE_TEXT","MICROSECOND","MIDDLEINT","MIGRATE","MINUTE","MINUTE_MICROSECOND","MINUTE_SECOND","MIN_ROWS","MOD","MODE","MODIFIES","MODIFY","MONTH","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","MUTEX","MYSQL_ERRNO","NAME","NAMES","NATIONAL","NATURAL","NCHAR","NDB","NDBCLUSTER","NEVER","NEW","NEXT","NO","NODEGROUP","NONBLOCKING","NONE","NO_WAIT","NO_WRITE_TO_BINLOG","NUMBER","NUMERIC","NVARCHAR","OFFSET","OLD_PASSWORD","ON","ONE","ONLY","OPEN","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OPTIONS","OR","ORDER","OUT","OUTER","OUTFILE","OWNER","PACK_KEYS","PAGE","PARSER","PARSE_GCOL_EXPR","PARTIAL","PARTITION","PARTITIONING","PARTITIONS","PASSWORD","PHASE","PLUGIN","PLUGINS","PLUGIN_DIR","POINT","POLYGON","PORT","PRECEDES","PRECISION","PREPARE","PRESERVE","PREV","PRIMARY","PRIVILEGES","PROCEDURE","PROCESSLIST","PROFILE","PROFILES","PROXY","PURGE","QUARTER","QUERY","QUICK","RANGE","READ","READS","READ_ONLY","READ_WRITE","REAL","REBUILD","RECOVER","REDOFILE","REDO_BUFFER_SIZE","REDUNDANT","REFERENCES","REGEXP","RELAY","RELAYLOG","RELAY_LOG_FILE","RELAY_LOG_POS","RELAY_THREAD","RELEASE","RELOAD","REMOVE","RENAME","REORGANIZE","REPAIR","REPEAT","REPEATABLE","REPLACE","REPLICATE_DO_DB","REPLICATE_DO_TABLE","REPLICATE_IGNORE_DB","REPLICATE_IGNORE_TABLE","REPLICATE_REWRITE_DB","REPLICATE_WILD_DO_TABLE","REPLICATE_WILD_IGNORE_TABLE","REPLICATION","REQUIRE","RESET","RESIGNAL","RESTORE","RESTRICT","RESUME","RETURN","RETURNED_SQLSTATE","RETURNS","REVERSE","REVOKE","RIGHT","RLIKE","ROLLBACK","ROLLUP","ROTATE","ROUTINE","ROW","ROWS","ROW_COUNT","ROW_FORMAT","RTREE","SAVEPOINT","SCHEDULE","SCHEMA","SCHEMAS","SCHEMA_NAME","SECOND","SECOND_MICROSECOND","SECURITY","SELECT","SENSITIVE","SEPARATOR","SERIAL","SERIALIZABLE","SERVER","SESSION","SET","SHARE","SHOW","SHUTDOWN","SIGNAL","SIGNED","SIMPLE","SLAVE","SLOW","SMALLINT","SNAPSHOT","SOCKET","SOME","SONAME","SOUNDS","SOURCE","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_AFTER_GTIDS","SQL_AFTER_MTS_GAPS","SQL_BEFORE_GTIDS","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQL_NO_CACHE","SQL_SMALL_RESULT","SQL_THREAD","SQL_TSI_DAY","SQL_TSI_HOUR","SQL_TSI_MINUTE","SQL_TSI_MONTH","SQL_TSI_QUARTER","SQL_TSI_SECOND","SQL_TSI_WEEK","SQL_TSI_YEAR","SSL","STACKED","START","STARTING","STARTS","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STATUS","STOP","STORAGE","STORED","STRAIGHT_JOIN","STRING","SUBCLASS_ORIGIN","SUBJECT","SUBPARTITION","SUBPARTITIONS","SUPER","SUSPEND","SWAPS","SWITCHES","TABLE","TABLES","TABLESPACE","TABLE_CHECKSUM","TABLE_NAME","TEMPORARY","TEMPTABLE","TERMINATED","TEXT","THAN","THEN","TIME","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TINYBLOB","TINYINT","TINYTEXT","TO","TRAILING","TRANSACTION","TRIGGER","TRIGGERS","TRUE","TRUNCATE","TYPE","TYPES","UNCOMMITTED","UNDEFINED","UNDO","UNDOFILE","UNDO_BUFFER_SIZE","UNICODE","UNINSTALL","UNION","UNIQUE","UNKNOWN","UNLOCK","UNSIGNED","UNTIL","UPDATE","UPGRADE","USAGE","USE","USER","USER_RESOURCES","USE_FRM","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALIDATION","VALUE","VALUES","VARBINARY","VARCHAR","VARCHARACTER","VARIABLES","VARYING","VIEW","VIRTUAL","WAIT","WARNINGS","WEEK","WEIGHT_STRING","WHEN","WHERE","WHILE","WITH","WITHOUT","WORK","WRAPPER","WRITE","X509","XA","XID","XML","XOR","YEAR","YEAR_MONTH","ZEROFILL"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","Area","AsBinary","AsWKB","ASCII","ASIN","AsText","AsWKT","ASYMMETRIC_DECRYPT","ASYMMETRIC_DERIVE","ASYMMETRIC_ENCRYPT","ASYMMETRIC_SIGN","ASYMMETRIC_VERIFY","ATAN","ATAN2","ATAN","AVG","BENCHMARK","BIN","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","Buffer","CAST","CEIL","CEILING","Centroid","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","Contains","CONV","CONVERT","CONVERT_TZ","ConvexHull","COS","COT","COUNT","CRC32","CREATE_ASYMMETRIC_PRIV_KEY","CREATE_ASYMMETRIC_PUB_KEY","CREATE_DH_PARAMETERS","CREATE_DIGEST","Crosses","CURDATE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DES_DECRYPT","DES_ENCRYPT","Dimension","Disjoint","Distance","ELT","ENCODE","ENCRYPT","EndPoint","Envelope","Equals","EXP","EXPORT_SET","ExteriorRing","EXTRACT","ExtractValue","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GeomCollFromText","GeometryCollectionFromText","GeomCollFromWKB","GeometryCollectionFromWKB","GeometryCollection","GeometryN","GeometryType","GeomFromText","GeometryFromText","GeomFromWKB","GeometryFromWKB","GET_FORMAT","GET_LOCK","GLength","GREATEST","GROUP_CONCAT","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","InteriorRingN","Intersects","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IsClosed","IsEmpty","ISNULL","IsSimple","JSON_APPEND","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAST_INSERT_ID","LCASE","LEAST","LEFT","LENGTH","LineFromText","LineStringFromText","LineFromWKB","LineStringFromWKB","LineString","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MBRContains","MBRCoveredBy","MBRCovers","MBRDisjoint","MBREqual","MBREquals","MBRIntersects","MBROverlaps","MBRTouches","MBRWithin","MD5","MICROSECOND","MID","MIN","MINUTE","MLineFromText","MultiLineStringFromText","MLineFromWKB","MultiLineStringFromWKB","MOD","MONTH","MONTHNAME","MPointFromText","MultiPointFromText","MPointFromWKB","MultiPointFromWKB","MPolyFromText","MultiPolygonFromText","MPolyFromWKB","MultiPolygonFromWKB","MultiLineString","MultiPoint","MultiPolygon","NAME_CONST","NOT IN","NOW","NULLIF","NumGeometries","NumInteriorRings","NumPoints","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","Overlaps","PASSWORD","PERIOD_ADD","PERIOD_DIFF","PI","Point","PointFromText","PointFromWKB","PointN","PolyFromText","PolygonFromText","PolyFromWKB","PolygonFromWKB","Polygon","POSITION","POW","POWER","PROCEDURE ANALYSE","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","ROUND","ROW_COUNT","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","SRID","ST_Area","ST_AsBinary","ST_AsWKB","ST_AsGeoJSON","ST_AsText","ST_AsWKT","ST_Buffer","ST_Buffer_Strategy","ST_Centroid","ST_Contains","ST_ConvexHull","ST_Crosses","ST_Difference","ST_Dimension","ST_Disjoint","ST_Distance","ST_Distance_Sphere","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_GeoHash","ST_GeomCollFromText","ST_GeometryCollectionFromText","ST_GeomCollFromTxt","ST_GeomCollFromWKB","ST_GeometryCollectionFromWKB","ST_GeometryN","ST_GeometryType","ST_GeomFromGeoJSON","ST_GeomFromText","ST_GeometryFromText","ST_GeomFromWKB","ST_GeometryFromWKB","ST_InteriorRingN","ST_Intersection","ST_Intersects","ST_IsClosed","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_LatFromGeoHash","ST_Length","ST_LineFromText","ST_LineStringFromText","ST_LineFromWKB","ST_LineStringFromWKB","ST_LongFromGeoHash","ST_MakeEnvelope","ST_MLineFromText","ST_MultiLineStringFromText","ST_MLineFromWKB","ST_MultiLineStringFromWKB","ST_MPointFromText","ST_MultiPointFromText","ST_MPointFromWKB","ST_MultiPointFromWKB","ST_MPolyFromText","ST_MultiPolygonFromText","ST_MPolyFromWKB","ST_MultiPolygonFromWKB","ST_NumGeometries","ST_NumInteriorRing","ST_NumInteriorRings","ST_NumPoints","ST_Overlaps","ST_PointFromGeoHash","ST_PointFromText","ST_PointFromWKB","ST_PointN","ST_PolyFromText","ST_PolygonFromText","ST_PolyFromWKB","ST_PolygonFromWKB","ST_Simplify","ST_SRID","ST_StartPoint","ST_SymDifference","ST_Touches","ST_Union","ST_Validate","ST_Within","ST_X","ST_Y","StartPoint","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","Touches","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UpdateXML","UPPER","USER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","Within","X","Y","YEAR","YEARWEEK"],builtinVariables:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/#+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}],[/"/,{token:"string.double",next:"@stringDouble"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],stringDouble:[[/[^"]+/,"string.double"],[/""/,"string.double"],[/"/,{token:"string.double",next:"@pop"}]],complexIdentifiers:[[/`/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^`]+/,"identifier"],[/``/,"identifier"],[/`/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/z260.b08db9bb.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/z260.b08db9bb.js index ae3eb65fb..edd3a818d 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/z260.b08db9bb.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/z260.b08db9bb.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["z260"],{z260:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return i});var o={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},s=[];["abstract","activate","and","any","array","as","asc","assert","autonomous","begin","bigdecimal","blob","boolean","break","bulk","by","case","cast","catch","char","class","collect","commit","const","continue","convertcurrency","decimal","default","delete","desc","do","double","else","end","enum","exception","exit","export","extends","false","final","finally","float","for","from","future","get","global","goto","group","having","hint","if","implements","import","in","inner","insert","instanceof","int","interface","into","join","last_90_days","last_month","last_n_days","last_week","like","limit","list","long","loop","map","merge","native","new","next_90_days","next_month","next_n_days","next_week","not","null","nulls","number","object","of","on","or","outer","override","package","parallel","pragma","private","protected","public","retrieve","return","returning","rollback","savepoint","search","select","set","short","sort","stat","static","strictfp","super","switch","synchronized","system","testmethod","then","this","this_month","this_week","throw","throws","today","tolabel","tomorrow","transaction","transient","trigger","true","try","type","undelete","update","upsert","using","virtual","void","volatile","webservice","when","where","while","yesterday"].forEach(function(e){s.push(e),s.push(e.toUpperCase()),s.push(function(e){return e.charAt(0).toUpperCase()+e.substr(1)}(e))});var i={defaultToken:"",tokenPostfix:".apex",keywords:s,operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[a-z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/[A-Z][\w\$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"type.identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@apexdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],apexdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["z260"],{z260:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",function(){return o}),n.d(t,"language",function(){return i});var o={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},s=[];["abstract","activate","and","any","array","as","asc","assert","autonomous","begin","bigdecimal","blob","boolean","break","bulk","by","case","cast","catch","char","class","collect","commit","const","continue","convertcurrency","decimal","default","delete","desc","do","double","else","end","enum","exception","exit","export","extends","false","final","finally","float","for","from","future","get","global","goto","group","having","hint","if","implements","import","in","inner","insert","instanceof","int","interface","into","join","last_90_days","last_month","last_n_days","last_week","like","limit","list","long","loop","map","merge","native","new","next_90_days","next_month","next_n_days","next_week","not","null","nulls","number","object","of","on","or","outer","override","package","parallel","pragma","private","protected","public","retrieve","return","returning","rollback","savepoint","search","select","set","short","sort","stat","static","strictfp","super","switch","synchronized","system","testmethod","then","this","this_month","this_week","throw","throws","today","tolabel","tomorrow","transaction","transient","trigger","true","try","type","undelete","update","upsert","using","virtual","void","volatile","webservice","when","where","while","yesterday"].forEach(function(e){s.push(e),s.push(e.toUpperCase()),s.push(function(e){return e.charAt(0).toUpperCase()+e.substr(1)}(e))});var i={defaultToken:"",tokenPostfix:".apex",keywords:s,operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[a-z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/[A-Z][\w\$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"type.identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@apexdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],apexdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/zO9b.1e7eb784.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/zO9b.1e7eb784.js index 3b7e01531..d997793a6 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/zO9b.1e7eb784.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/js/zO9b.1e7eb784.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["zO9b"],{zO9b:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",function(){return n}),o.d(t,"language",function(){return s});var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},s={defaultToken:"",tokenPostfix:".java",keywords:["abstract","continue","for","new","switch","assert","default","goto","package","synchronized","boolean","do","if","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","true","false"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/0[xX](@hexdigits)[Ll]?/,"number.hex"],[/0(@octaldigits)[Ll]?/,"number.octal"],[/0[bB](@binarydigits)[Ll]?/,"number.binary"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@javadoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],javadoc:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([["zO9b"],{zO9b:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",function(){return n}),o.d(t,"language",function(){return s});var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},s={defaultToken:"",tokenPostfix:".java",keywords:["abstract","continue","for","new","switch","assert","default","goto","package","synchronized","boolean","do","if","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","true","false"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/0[xX](@hexdigits)[Ll]?/,"number.hex"],[/0(@octaldigits)[Ll]?/,"number.octal"],[/0[bB](@binarydigits)[Ll]?/,"number.binary"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@javadoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],javadoc:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/demo_index.html b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/demo_index.html index b24698ab6..0200f9922 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/demo_index.html +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/demo_index.html @@ -22,674 +22,674 @@ <li class="dib"><span>Font class</span></li> <li class="dib"><span>Symbol</span></li> </ul> - + <a href="https://www.iconfont.cn/manage/index?manage_type=myprojects&projectId=1990368" target="_blank" class="nav-more">查看项目</a> - + </div> <div class="tab-container"> <div class="content unicode" style="display: block;"> <ul class="icon_lists dib-box"> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">链接</div> <div class="code-name">&#xe7f8;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">打印区域</div> <div class="code-name">&#xe7f5;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">打印页面配置</div> <div class="code-name">&#xe7f6;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">打印标题</div> <div class="code-name">&#xe7f7;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">分页预览</div> <div class="code-name">&#xe7f2;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">普通</div> <div class="code-name">&#xe7f3;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">页面布局</div> <div class="code-name">&#xe7f4;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">表格锁定</div> <div class="code-name">&#xe7ee;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">转到</div> <div class="code-name">&#xe7f1;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">右箭头</div> <div class="code-name">&#xe7ed;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">菜单</div> <div class="code-name">&#xe7ef;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">替换</div> <div class="code-name">&#xe7f0;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">冻结</div> <div class="code-name">&#xe7e1;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">剪</div> <div class="code-name">&#xe7e2;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">加</div> <div class="code-name">&#xe7e3;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">溢出</div> <div class="code-name">&#xe7e4;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">升序</div> <div class="code-name">&#xe7e5;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">内框线</div> <div class="code-name">&#xe7e6;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">清除筛选</div> <div class="code-name">&#xe7e7;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">文本向上</div> <div class="code-name">&#xe7e8;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">降序</div> <div class="code-name">&#xe7e9;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">内框横线</div> <div class="code-name">&#xe7ea;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">内框竖线</div> <div class="code-name">&#xe7eb;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">自定义排序</div> <div class="code-name">&#xe7ec;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">logo2</div> <div class="code-name">&#xe7df;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">logo</div> <div class="code-name">&#xe7e0;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">文本倾斜</div> <div class="code-name">&#xe7de;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">加粗</div> <div class="code-name">&#xe7d9;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">搜索</div> <div class="code-name">&#xe78a;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">关闭</div> <div class="code-name">&#xe78b;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">下一个</div> <div class="code-name">&#xe78c;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">下拉</div> <div class="code-name">&#xe78d;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">文本颜色</div> <div class="code-name">&#xe78e;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">上一个</div> <div class="code-name">&#xe78f;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">数据透视</div> <div class="code-name">&#xe790;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">填充</div> <div class="code-name">&#xe791;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">增加小数位</div> <div class="code-name">&#xe792;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">编辑2</div> <div class="code-name">&#xe793;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">截屏</div> <div class="code-name">&#xe794;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">减小小数位</div> <div class="code-name">&#xe796;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">菜单</div> <div class="code-name">&#xe797;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">数据库</div> <div class="code-name">&#xe798;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">无边框</div> <div class="code-name">&#xe799;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">编辑</div> <div class="code-name">&#xe79a;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">清除样式</div> <div class="code-name">&#xe79b;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">删除</div> <div class="code-name">&#xe79c;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">文本居中对齐</div> <div class="code-name">&#xe79d;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">打印</div> <div class="code-name">&#xe79e;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">文本分割</div> <div class="code-name">&#xe79f;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">函数‘</div> <div class="code-name">&#xe7a0;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">降序</div> <div class="code-name">&#xe7a1;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">顶部对齐</div> <div class="code-name">&#xe7a2;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">图片</div> <div class="code-name">&#xe7a3;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">向下90</div> <div class="code-name">&#xe7a4;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">竖排文字</div> <div class="code-name">&#xe7a5;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">全加边框</div> <div class="code-name">&#xe7a6;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">升序</div> <div class="code-name">&#xe7a7;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">裁剪</div> <div class="code-name">&#xe7a8;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">金额</div> <div class="code-name">&#xe7a9;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">菜单1</div> <div class="code-name">&#xe7aa;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">取消合并</div> <div class="code-name">&#xe7ab;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">文本下划线</div> <div class="code-name">&#xe7ac;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">上边框</div> <div class="code-name">&#xe7ad;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">定位</div> <div class="code-name">&#xe7ae;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">四周加边框</div> <div class="code-name">&#xe7af;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">侧边栏收起</div> <div class="code-name">&#xe7b0;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">合并</div> <div class="code-name">&#xe7b1;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">向上倾斜</div> <div class="code-name">&#xe7b2;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">水平对齐</div> <div class="code-name">&#xe7b3;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">文本删除线</div> <div class="code-name">&#xe7b4;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">文本右对齐</div> <div class="code-name">&#xe7b5;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">前进</div> <div class="code-name">&#xe7b6;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">图表</div> <div class="code-name">&#xe7b7;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">右边框</div> <div class="code-name">&#xe7b8;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">百分号</div> <div class="code-name">&#xe7b9;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">格式刷</div> <div class="code-name">&#xe7ba;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">保存</div> <div class="code-name">&#xe7bb;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">数据验证</div> <div class="code-name">&#xe7bc;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">截断</div> <div class="code-name">&#xe7bd;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">格式条件</div> <div class="code-name">&#xe7be;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">自动换行</div> <div class="code-name">&#xe7bf;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">侧边栏展开</div> <div class="code-name">&#xe7c0;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">筛选2</div> <div class="code-name">&#xe7c1;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">向下倾斜</div> <div class="code-name">&#xe7c2;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">溢出</div> <div class="code-name">&#xe7c3;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">垂直合并</div> <div class="code-name">&#xe7c4;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">文本分散对齐</div> <div class="code-name">&#xe7c5;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">左边框</div> <div class="code-name">&#xe7c6;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">分页查看</div> <div class="code-name">&#xe7c7;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">运行</div> <div class="code-name">&#xe7c8;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">列</div> <div class="code-name">&#xe7c9;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">全屏</div> <div class="code-name">&#xe7ca;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">筛选</div> <div class="code-name">&#xe7cb;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">更新</div> <div class="code-name">&#xe7cc;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">清除</div> <div class="code-name">&#xe7cd;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">行</div> <div class="code-name">&#xe7ce;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">注释</div> <div class="code-name">&#xe7cf;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">剪</div> <div class="code-name">&#xe7d0;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">计算</div> <div class="code-name">&#xe7d1;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">加</div> <div class="code-name">&#xe7d2;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">底部对齐</div> <div class="code-name">&#xe7d3;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">向上90</div> <div class="code-name">&#xe7d4;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">无选装</div> <div class="code-name">&#xe7d5;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">显示隐藏网格</div> <div class="code-name">&#xe7d6;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">冻结</div> <div class="code-name">&#xe7d7;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">文本左对齐</div> <div class="code-name">&#xe7d8;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">后退</div> <div class="code-name">&#xe7da;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">水平合并</div> <div class="code-name">&#xe7db;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">下边框</div> <div class="code-name">&#xe7dc;</div> </li> - + <li class="dib"> <span class="icon iconfont"></span> <div class="name">设置</div> <div class="code-name">&#xe7dd;</div> </li> - + </ul> <div class="article markdown"> <h2 id="unicode-">Unicode 引用</h2> @@ -739,7 +739,7 @@ </div> <div class="content font-class"> <ul class="icon_lists dib-box"> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-lianjie"></span> <div class="name"> @@ -748,7 +748,7 @@ <div class="code-name">.luckysheet-iconfont-lianjie </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-dayinquyu"></span> <div class="name"> @@ -757,7 +757,7 @@ <div class="code-name">.luckysheet-iconfont-dayinquyu </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-dayinyemianpeizhi"></span> <div class="name"> @@ -766,7 +766,7 @@ <div class="code-name">.luckysheet-iconfont-dayinyemianpeizhi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-dayinbiaoti"></span> <div class="name"> @@ -775,7 +775,7 @@ <div class="code-name">.luckysheet-iconfont-dayinbiaoti </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-fenyeyulan"></span> <div class="name"> @@ -784,7 +784,7 @@ <div class="code-name">.luckysheet-iconfont-fenyeyulan </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-putong"></span> <div class="name"> @@ -793,7 +793,7 @@ <div class="code-name">.luckysheet-iconfont-putong </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-yemianbuju"></span> <div class="name"> @@ -802,7 +802,7 @@ <div class="code-name">.luckysheet-iconfont-yemianbuju </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-biaogesuoding"></span> <div class="name"> @@ -811,7 +811,7 @@ <div class="code-name">.luckysheet-iconfont-biaogesuoding </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-zhuandao1"></span> <div class="name"> @@ -820,7 +820,7 @@ <div class="code-name">.luckysheet-iconfont-zhuandao1 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-youjiantou"></span> <div class="name"> @@ -829,7 +829,7 @@ <div class="code-name">.luckysheet-iconfont-youjiantou </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-caidan2"></span> <div class="name"> @@ -838,7 +838,7 @@ <div class="code-name">.luckysheet-iconfont-caidan2 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-tihuan"></span> <div class="name"> @@ -847,7 +847,7 @@ <div class="code-name">.luckysheet-iconfont-tihuan </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-dongjie1"></span> <div class="name"> @@ -856,7 +856,7 @@ <div class="code-name">.luckysheet-iconfont-dongjie1 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jian1"></span> <div class="name"> @@ -865,7 +865,7 @@ <div class="code-name">.luckysheet-iconfont-jian1 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jia1"></span> <div class="name"> @@ -874,7 +874,7 @@ <div class="code-name">.luckysheet-iconfont-jia1 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-yichu1"></span> <div class="name"> @@ -883,7 +883,7 @@ <div class="code-name">.luckysheet-iconfont-yichu1 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shengxu1"></span> <div class="name"> @@ -892,7 +892,7 @@ <div class="code-name">.luckysheet-iconfont-shengxu1 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-neikuangxian"></span> <div class="name"> @@ -901,7 +901,7 @@ <div class="code-name">.luckysheet-iconfont-neikuangxian </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-qingchushaixuan"></span> <div class="name"> @@ -910,7 +910,7 @@ <div class="code-name">.luckysheet-iconfont-qingchushaixuan </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wenbenxiangshang"></span> <div class="name"> @@ -919,7 +919,7 @@ <div class="code-name">.luckysheet-iconfont-wenbenxiangshang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jiangxu1"></span> <div class="name"> @@ -928,7 +928,7 @@ <div class="code-name">.luckysheet-iconfont-jiangxu1 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-neikuanghengxian"></span> <div class="name"> @@ -937,7 +937,7 @@ <div class="code-name">.luckysheet-iconfont-neikuanghengxian </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-neikuangshuxian"></span> <div class="name"> @@ -946,7 +946,7 @@ <div class="code-name">.luckysheet-iconfont-neikuangshuxian </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-zidingyipaixu"></span> <div class="name"> @@ -955,7 +955,7 @@ <div class="code-name">.luckysheet-iconfont-zidingyipaixu </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-logo2"></span> <div class="name"> @@ -964,7 +964,7 @@ <div class="code-name">.luckysheet-iconfont-logo2 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-logo"></span> <div class="name"> @@ -973,7 +973,7 @@ <div class="code-name">.luckysheet-iconfont-logo </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wenbenqingxie1"></span> <div class="name"> @@ -982,7 +982,7 @@ <div class="code-name">.luckysheet-iconfont-wenbenqingxie1 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jiacu"></span> <div class="name"> @@ -991,7 +991,7 @@ <div class="code-name">.luckysheet-iconfont-jiacu </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-sousuo"></span> <div class="name"> @@ -1000,7 +1000,7 @@ <div class="code-name">.luckysheet-iconfont-sousuo </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-guanbi"></span> <div class="name"> @@ -1009,7 +1009,7 @@ <div class="code-name">.luckysheet-iconfont-guanbi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-xiayige"></span> <div class="name"> @@ -1018,7 +1018,7 @@ <div class="code-name">.luckysheet-iconfont-xiayige </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-xiala"></span> <div class="name"> @@ -1027,7 +1027,7 @@ <div class="code-name">.luckysheet-iconfont-xiala </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wenbenyanse"></span> <div class="name"> @@ -1036,7 +1036,7 @@ <div class="code-name">.luckysheet-iconfont-wenbenyanse </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shangyige"></span> <div class="name"> @@ -1045,7 +1045,7 @@ <div class="code-name">.luckysheet-iconfont-shangyige </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shujutoushi"></span> <div class="name"> @@ -1054,7 +1054,7 @@ <div class="code-name">.luckysheet-iconfont-shujutoushi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-tianchong"></span> <div class="name"> @@ -1063,7 +1063,7 @@ <div class="code-name">.luckysheet-iconfont-tianchong </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-zengjiaxiaoshuwei"></span> <div class="name"> @@ -1072,7 +1072,7 @@ <div class="code-name">.luckysheet-iconfont-zengjiaxiaoshuwei </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-bianji2"></span> <div class="name"> @@ -1081,7 +1081,7 @@ <div class="code-name">.luckysheet-iconfont-bianji2 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jieping"></span> <div class="name"> @@ -1090,7 +1090,7 @@ <div class="code-name">.luckysheet-iconfont-jieping </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jianxiaoxiaoshuwei"></span> <div class="name"> @@ -1099,7 +1099,7 @@ <div class="code-name">.luckysheet-iconfont-jianxiaoxiaoshuwei </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-caidan"></span> <div class="name"> @@ -1108,7 +1108,7 @@ <div class="code-name">.luckysheet-iconfont-caidan </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shujuku"></span> <div class="name"> @@ -1117,7 +1117,7 @@ <div class="code-name">.luckysheet-iconfont-shujuku </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wubiankuang"></span> <div class="name"> @@ -1126,7 +1126,7 @@ <div class="code-name">.luckysheet-iconfont-wubiankuang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-bianji"></span> <div class="name"> @@ -1135,7 +1135,7 @@ <div class="code-name">.luckysheet-iconfont-bianji </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-qingchuyangshi"></span> <div class="name"> @@ -1144,7 +1144,7 @@ <div class="code-name">.luckysheet-iconfont-qingchuyangshi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shanchu"></span> <div class="name"> @@ -1153,7 +1153,7 @@ <div class="code-name">.luckysheet-iconfont-shanchu </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wenbenjuzhongduiqi"></span> <div class="name"> @@ -1162,7 +1162,7 @@ <div class="code-name">.luckysheet-iconfont-wenbenjuzhongduiqi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-dayin"></span> <div class="name"> @@ -1171,7 +1171,7 @@ <div class="code-name">.luckysheet-iconfont-dayin </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wenbenfenge"></span> <div class="name"> @@ -1180,7 +1180,7 @@ <div class="code-name">.luckysheet-iconfont-wenbenfenge </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-hanshu"></span> <div class="name"> @@ -1189,7 +1189,7 @@ <div class="code-name">.luckysheet-iconfont-hanshu </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jiangxu"></span> <div class="name"> @@ -1198,7 +1198,7 @@ <div class="code-name">.luckysheet-iconfont-jiangxu </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-dingbuduiqi"></span> <div class="name"> @@ -1207,7 +1207,7 @@ <div class="code-name">.luckysheet-iconfont-dingbuduiqi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-tupian"></span> <div class="name"> @@ -1216,7 +1216,7 @@ <div class="code-name">.luckysheet-iconfont-tupian </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-xiangxia90"></span> <div class="name"> @@ -1225,7 +1225,7 @@ <div class="code-name">.luckysheet-iconfont-xiangxia90 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shupaiwenzi"></span> <div class="name"> @@ -1234,7 +1234,7 @@ <div class="code-name">.luckysheet-iconfont-shupaiwenzi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-quanjiabiankuang"></span> <div class="name"> @@ -1243,7 +1243,7 @@ <div class="code-name">.luckysheet-iconfont-quanjiabiankuang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shengxu"></span> <div class="name"> @@ -1252,7 +1252,7 @@ <div class="code-name">.luckysheet-iconfont-shengxu </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-caijian"></span> <div class="name"> @@ -1261,7 +1261,7 @@ <div class="code-name">.luckysheet-iconfont-caijian </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jine"></span> <div class="name"> @@ -1270,7 +1270,7 @@ <div class="code-name">.luckysheet-iconfont-jine </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-caidan1"></span> <div class="name"> @@ -1279,7 +1279,7 @@ <div class="code-name">.luckysheet-iconfont-caidan1 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-quxiaohebing"></span> <div class="name"> @@ -1288,7 +1288,7 @@ <div class="code-name">.luckysheet-iconfont-quxiaohebing </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wenbenxiahuaxian"></span> <div class="name"> @@ -1297,7 +1297,7 @@ <div class="code-name">.luckysheet-iconfont-wenbenxiahuaxian </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shangbiankuang"></span> <div class="name"> @@ -1306,7 +1306,7 @@ <div class="code-name">.luckysheet-iconfont-shangbiankuang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-dingwei"></span> <div class="name"> @@ -1315,7 +1315,7 @@ <div class="code-name">.luckysheet-iconfont-dingwei </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-sizhoujiabiankuang"></span> <div class="name"> @@ -1324,7 +1324,7 @@ <div class="code-name">.luckysheet-iconfont-sizhoujiabiankuang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-cebianlanshouqi"></span> <div class="name"> @@ -1333,7 +1333,7 @@ <div class="code-name">.luckysheet-iconfont-cebianlanshouqi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-hebing"></span> <div class="name"> @@ -1342,7 +1342,7 @@ <div class="code-name">.luckysheet-iconfont-hebing </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-xiangshangqingxie"></span> <div class="name"> @@ -1351,7 +1351,7 @@ <div class="code-name">.luckysheet-iconfont-xiangshangqingxie </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shuipingduiqi"></span> <div class="name"> @@ -1360,7 +1360,7 @@ <div class="code-name">.luckysheet-iconfont-shuipingduiqi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wenbenshanchuxian"></span> <div class="name"> @@ -1369,7 +1369,7 @@ <div class="code-name">.luckysheet-iconfont-wenbenshanchuxian </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wenbenyouduiqi"></span> <div class="name"> @@ -1378,7 +1378,7 @@ <div class="code-name">.luckysheet-iconfont-wenbenyouduiqi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-qianjin"></span> <div class="name"> @@ -1387,7 +1387,7 @@ <div class="code-name">.luckysheet-iconfont-qianjin </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-tubiao"></span> <div class="name"> @@ -1396,7 +1396,7 @@ <div class="code-name">.luckysheet-iconfont-tubiao </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-youbiankuang"></span> <div class="name"> @@ -1405,7 +1405,7 @@ <div class="code-name">.luckysheet-iconfont-youbiankuang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-baifenhao"></span> <div class="name"> @@ -1414,7 +1414,7 @@ <div class="code-name">.luckysheet-iconfont-baifenhao </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-geshishua"></span> <div class="name"> @@ -1423,7 +1423,7 @@ <div class="code-name">.luckysheet-iconfont-geshishua </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-baocun"></span> <div class="name"> @@ -1432,7 +1432,7 @@ <div class="code-name">.luckysheet-iconfont-baocun </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shujuyanzheng"></span> <div class="name"> @@ -1441,7 +1441,7 @@ <div class="code-name">.luckysheet-iconfont-shujuyanzheng </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jieduan"></span> <div class="name"> @@ -1450,7 +1450,7 @@ <div class="code-name">.luckysheet-iconfont-jieduan </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-geshitiaojian"></span> <div class="name"> @@ -1459,7 +1459,7 @@ <div class="code-name">.luckysheet-iconfont-geshitiaojian </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-zidonghuanhang"></span> <div class="name"> @@ -1468,7 +1468,7 @@ <div class="code-name">.luckysheet-iconfont-zidonghuanhang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-cebianlanzhankai"></span> <div class="name"> @@ -1477,7 +1477,7 @@ <div class="code-name">.luckysheet-iconfont-cebianlanzhankai </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shaixuan2"></span> <div class="name"> @@ -1486,7 +1486,7 @@ <div class="code-name">.luckysheet-iconfont-shaixuan2 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-xiangxiaqingxie"></span> <div class="name"> @@ -1495,7 +1495,7 @@ <div class="code-name">.luckysheet-iconfont-xiangxiaqingxie </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-yichu"></span> <div class="name"> @@ -1504,7 +1504,7 @@ <div class="code-name">.luckysheet-iconfont-yichu </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-chuizhihebing"></span> <div class="name"> @@ -1513,7 +1513,7 @@ <div class="code-name">.luckysheet-iconfont-chuizhihebing </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wenbenfensanduiqi"></span> <div class="name"> @@ -1522,7 +1522,7 @@ <div class="code-name">.luckysheet-iconfont-wenbenfensanduiqi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-zuobiankuang"></span> <div class="name"> @@ -1531,7 +1531,7 @@ <div class="code-name">.luckysheet-iconfont-zuobiankuang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-fenyechakan"></span> <div class="name"> @@ -1540,7 +1540,7 @@ <div class="code-name">.luckysheet-iconfont-fenyechakan </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-yunhang"></span> <div class="name"> @@ -1549,7 +1549,7 @@ <div class="code-name">.luckysheet-iconfont-yunhang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-lie"></span> <div class="name"> @@ -1558,7 +1558,7 @@ <div class="code-name">.luckysheet-iconfont-lie </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-quanping"></span> <div class="name"> @@ -1567,7 +1567,7 @@ <div class="code-name">.luckysheet-iconfont-quanping </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shaixuan"></span> <div class="name"> @@ -1576,7 +1576,7 @@ <div class="code-name">.luckysheet-iconfont-shaixuan </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-gengxin"></span> <div class="name"> @@ -1585,7 +1585,7 @@ <div class="code-name">.luckysheet-iconfont-gengxin </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-qingchu"></span> <div class="name"> @@ -1594,7 +1594,7 @@ <div class="code-name">.luckysheet-iconfont-qingchu </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-hang"></span> <div class="name"> @@ -1603,7 +1603,7 @@ <div class="code-name">.luckysheet-iconfont-hang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-zhushi"></span> <div class="name"> @@ -1612,7 +1612,7 @@ <div class="code-name">.luckysheet-iconfont-zhushi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jian"></span> <div class="name"> @@ -1621,7 +1621,7 @@ <div class="code-name">.luckysheet-iconfont-jian </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jisuan"></span> <div class="name"> @@ -1630,7 +1630,7 @@ <div class="code-name">.luckysheet-iconfont-jisuan </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-jia"></span> <div class="name"> @@ -1639,7 +1639,7 @@ <div class="code-name">.luckysheet-iconfont-jia </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-dibuduiqi"></span> <div class="name"> @@ -1648,7 +1648,7 @@ <div class="code-name">.luckysheet-iconfont-dibuduiqi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-xiangshang90"></span> <div class="name"> @@ -1657,7 +1657,7 @@ <div class="code-name">.luckysheet-iconfont-xiangshang90 </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wuxuanzhuang"></span> <div class="name"> @@ -1666,7 +1666,7 @@ <div class="code-name">.luckysheet-iconfont-wuxuanzhuang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-xianshiyincangwangge"></span> <div class="name"> @@ -1675,7 +1675,7 @@ <div class="code-name">.luckysheet-iconfont-xianshiyincangwangge </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-dongjie"></span> <div class="name"> @@ -1684,7 +1684,7 @@ <div class="code-name">.luckysheet-iconfont-dongjie </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-wenbenzuoduiqi"></span> <div class="name"> @@ -1693,7 +1693,7 @@ <div class="code-name">.luckysheet-iconfont-wenbenzuoduiqi </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-houtui"></span> <div class="name"> @@ -1702,7 +1702,7 @@ <div class="code-name">.luckysheet-iconfont-houtui </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shuipinghebing"></span> <div class="name"> @@ -1711,7 +1711,7 @@ <div class="code-name">.luckysheet-iconfont-shuipinghebing </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-xiabiankuang"></span> <div class="name"> @@ -1720,7 +1720,7 @@ <div class="code-name">.luckysheet-iconfont-xiabiankuang </div> </li> - + <li class="dib"> <span class="icon iconfont luckysheet-iconfont-shezhi"></span> <div class="name"> @@ -1729,7 +1729,7 @@ <div class="code-name">.luckysheet-iconfont-shezhi </div> </li> - + </ul> <div class="article markdown"> <h2 id="font-class-">font-class 引用</h2> @@ -1758,7 +1758,7 @@ </div> <div class="content symbol"> <ul class="icon_lists dib-box"> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-lianjie"></use> @@ -1766,7 +1766,7 @@ <div class="name">链接</div> <div class="code-name">#luckysheet-iconfont-lianjie</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-dayinquyu"></use> @@ -1774,7 +1774,7 @@ <div class="name">打印区域</div> <div class="code-name">#luckysheet-iconfont-dayinquyu</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-dayinyemianpeizhi"></use> @@ -1782,7 +1782,7 @@ <div class="name">打印页面配置</div> <div class="code-name">#luckysheet-iconfont-dayinyemianpeizhi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-dayinbiaoti"></use> @@ -1790,7 +1790,7 @@ <div class="name">打印标题</div> <div class="code-name">#luckysheet-iconfont-dayinbiaoti</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-fenyeyulan"></use> @@ -1798,7 +1798,7 @@ <div class="name">分页预览</div> <div class="code-name">#luckysheet-iconfont-fenyeyulan</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-putong"></use> @@ -1806,7 +1806,7 @@ <div class="name">普通</div> <div class="code-name">#luckysheet-iconfont-putong</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-yemianbuju"></use> @@ -1814,7 +1814,7 @@ <div class="name">页面布局</div> <div class="code-name">#luckysheet-iconfont-yemianbuju</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-biaogesuoding"></use> @@ -1822,7 +1822,7 @@ <div class="name">表格锁定</div> <div class="code-name">#luckysheet-iconfont-biaogesuoding</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-zhuandao1"></use> @@ -1830,7 +1830,7 @@ <div class="name">转到</div> <div class="code-name">#luckysheet-iconfont-zhuandao1</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-youjiantou"></use> @@ -1838,7 +1838,7 @@ <div class="name">右箭头</div> <div class="code-name">#luckysheet-iconfont-youjiantou</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-caidan2"></use> @@ -1846,7 +1846,7 @@ <div class="name">菜单</div> <div class="code-name">#luckysheet-iconfont-caidan2</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-tihuan"></use> @@ -1854,7 +1854,7 @@ <div class="name">替换</div> <div class="code-name">#luckysheet-iconfont-tihuan</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-dongjie1"></use> @@ -1862,7 +1862,7 @@ <div class="name">冻结</div> <div class="code-name">#luckysheet-iconfont-dongjie1</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jian1"></use> @@ -1870,7 +1870,7 @@ <div class="name">剪</div> <div class="code-name">#luckysheet-iconfont-jian1</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jia1"></use> @@ -1878,7 +1878,7 @@ <div class="name">加</div> <div class="code-name">#luckysheet-iconfont-jia1</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-yichu1"></use> @@ -1886,7 +1886,7 @@ <div class="name">溢出</div> <div class="code-name">#luckysheet-iconfont-yichu1</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shengxu1"></use> @@ -1894,7 +1894,7 @@ <div class="name">升序</div> <div class="code-name">#luckysheet-iconfont-shengxu1</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-neikuangxian"></use> @@ -1902,7 +1902,7 @@ <div class="name">内框线</div> <div class="code-name">#luckysheet-iconfont-neikuangxian</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-qingchushaixuan"></use> @@ -1910,7 +1910,7 @@ <div class="name">清除筛选</div> <div class="code-name">#luckysheet-iconfont-qingchushaixuan</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wenbenxiangshang"></use> @@ -1918,7 +1918,7 @@ <div class="name">文本向上</div> <div class="code-name">#luckysheet-iconfont-wenbenxiangshang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jiangxu1"></use> @@ -1926,7 +1926,7 @@ <div class="name">降序</div> <div class="code-name">#luckysheet-iconfont-jiangxu1</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-neikuanghengxian"></use> @@ -1934,7 +1934,7 @@ <div class="name">内框横线</div> <div class="code-name">#luckysheet-iconfont-neikuanghengxian</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-neikuangshuxian"></use> @@ -1942,7 +1942,7 @@ <div class="name">内框竖线</div> <div class="code-name">#luckysheet-iconfont-neikuangshuxian</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-zidingyipaixu"></use> @@ -1950,7 +1950,7 @@ <div class="name">自定义排序</div> <div class="code-name">#luckysheet-iconfont-zidingyipaixu</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-logo2"></use> @@ -1958,7 +1958,7 @@ <div class="name">logo2</div> <div class="code-name">#luckysheet-iconfont-logo2</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-logo"></use> @@ -1966,7 +1966,7 @@ <div class="name">logo</div> <div class="code-name">#luckysheet-iconfont-logo</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wenbenqingxie1"></use> @@ -1974,7 +1974,7 @@ <div class="name">文本倾斜</div> <div class="code-name">#luckysheet-iconfont-wenbenqingxie1</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jiacu"></use> @@ -1982,7 +1982,7 @@ <div class="name">加粗</div> <div class="code-name">#luckysheet-iconfont-jiacu</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-sousuo"></use> @@ -1990,7 +1990,7 @@ <div class="name">搜索</div> <div class="code-name">#luckysheet-iconfont-sousuo</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-guanbi"></use> @@ -1998,7 +1998,7 @@ <div class="name">关闭</div> <div class="code-name">#luckysheet-iconfont-guanbi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-xiayige"></use> @@ -2006,7 +2006,7 @@ <div class="name">下一个</div> <div class="code-name">#luckysheet-iconfont-xiayige</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-xiala"></use> @@ -2014,7 +2014,7 @@ <div class="name">下拉</div> <div class="code-name">#luckysheet-iconfont-xiala</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wenbenyanse"></use> @@ -2022,7 +2022,7 @@ <div class="name">文本颜色</div> <div class="code-name">#luckysheet-iconfont-wenbenyanse</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shangyige"></use> @@ -2030,7 +2030,7 @@ <div class="name">上一个</div> <div class="code-name">#luckysheet-iconfont-shangyige</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shujutoushi"></use> @@ -2038,7 +2038,7 @@ <div class="name">数据透视</div> <div class="code-name">#luckysheet-iconfont-shujutoushi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-tianchong"></use> @@ -2046,7 +2046,7 @@ <div class="name">填充</div> <div class="code-name">#luckysheet-iconfont-tianchong</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-zengjiaxiaoshuwei"></use> @@ -2054,7 +2054,7 @@ <div class="name">增加小数位</div> <div class="code-name">#luckysheet-iconfont-zengjiaxiaoshuwei</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-bianji2"></use> @@ -2062,7 +2062,7 @@ <div class="name">编辑2</div> <div class="code-name">#luckysheet-iconfont-bianji2</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jieping"></use> @@ -2070,7 +2070,7 @@ <div class="name">截屏</div> <div class="code-name">#luckysheet-iconfont-jieping</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jianxiaoxiaoshuwei"></use> @@ -2078,7 +2078,7 @@ <div class="name">减小小数位</div> <div class="code-name">#luckysheet-iconfont-jianxiaoxiaoshuwei</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-caidan"></use> @@ -2086,7 +2086,7 @@ <div class="name">菜单</div> <div class="code-name">#luckysheet-iconfont-caidan</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shujuku"></use> @@ -2094,7 +2094,7 @@ <div class="name">数据库</div> <div class="code-name">#luckysheet-iconfont-shujuku</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wubiankuang"></use> @@ -2102,7 +2102,7 @@ <div class="name">无边框</div> <div class="code-name">#luckysheet-iconfont-wubiankuang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-bianji"></use> @@ -2110,7 +2110,7 @@ <div class="name">编辑</div> <div class="code-name">#luckysheet-iconfont-bianji</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-qingchuyangshi"></use> @@ -2118,7 +2118,7 @@ <div class="name">清除样式</div> <div class="code-name">#luckysheet-iconfont-qingchuyangshi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shanchu"></use> @@ -2126,7 +2126,7 @@ <div class="name">删除</div> <div class="code-name">#luckysheet-iconfont-shanchu</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wenbenjuzhongduiqi"></use> @@ -2134,7 +2134,7 @@ <div class="name">文本居中对齐</div> <div class="code-name">#luckysheet-iconfont-wenbenjuzhongduiqi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-dayin"></use> @@ -2142,7 +2142,7 @@ <div class="name">打印</div> <div class="code-name">#luckysheet-iconfont-dayin</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wenbenfenge"></use> @@ -2150,7 +2150,7 @@ <div class="name">文本分割</div> <div class="code-name">#luckysheet-iconfont-wenbenfenge</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-hanshu"></use> @@ -2158,7 +2158,7 @@ <div class="name">函数‘</div> <div class="code-name">#luckysheet-iconfont-hanshu</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jiangxu"></use> @@ -2166,7 +2166,7 @@ <div class="name">降序</div> <div class="code-name">#luckysheet-iconfont-jiangxu</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-dingbuduiqi"></use> @@ -2174,7 +2174,7 @@ <div class="name">顶部对齐</div> <div class="code-name">#luckysheet-iconfont-dingbuduiqi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-tupian"></use> @@ -2182,7 +2182,7 @@ <div class="name">图片</div> <div class="code-name">#luckysheet-iconfont-tupian</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-xiangxia90"></use> @@ -2190,7 +2190,7 @@ <div class="name">向下90</div> <div class="code-name">#luckysheet-iconfont-xiangxia90</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shupaiwenzi"></use> @@ -2198,7 +2198,7 @@ <div class="name">竖排文字</div> <div class="code-name">#luckysheet-iconfont-shupaiwenzi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-quanjiabiankuang"></use> @@ -2206,7 +2206,7 @@ <div class="name">全加边框</div> <div class="code-name">#luckysheet-iconfont-quanjiabiankuang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shengxu"></use> @@ -2214,7 +2214,7 @@ <div class="name">升序</div> <div class="code-name">#luckysheet-iconfont-shengxu</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-caijian"></use> @@ -2222,7 +2222,7 @@ <div class="name">裁剪</div> <div class="code-name">#luckysheet-iconfont-caijian</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jine"></use> @@ -2230,7 +2230,7 @@ <div class="name">金额</div> <div class="code-name">#luckysheet-iconfont-jine</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-caidan1"></use> @@ -2238,7 +2238,7 @@ <div class="name">菜单1</div> <div class="code-name">#luckysheet-iconfont-caidan1</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-quxiaohebing"></use> @@ -2246,7 +2246,7 @@ <div class="name">取消合并</div> <div class="code-name">#luckysheet-iconfont-quxiaohebing</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wenbenxiahuaxian"></use> @@ -2254,7 +2254,7 @@ <div class="name">文本下划线</div> <div class="code-name">#luckysheet-iconfont-wenbenxiahuaxian</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shangbiankuang"></use> @@ -2262,7 +2262,7 @@ <div class="name">上边框</div> <div class="code-name">#luckysheet-iconfont-shangbiankuang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-dingwei"></use> @@ -2270,7 +2270,7 @@ <div class="name">定位</div> <div class="code-name">#luckysheet-iconfont-dingwei</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-sizhoujiabiankuang"></use> @@ -2278,7 +2278,7 @@ <div class="name">四周加边框</div> <div class="code-name">#luckysheet-iconfont-sizhoujiabiankuang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-cebianlanshouqi"></use> @@ -2286,7 +2286,7 @@ <div class="name">侧边栏收起</div> <div class="code-name">#luckysheet-iconfont-cebianlanshouqi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-hebing"></use> @@ -2294,7 +2294,7 @@ <div class="name">合并</div> <div class="code-name">#luckysheet-iconfont-hebing</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-xiangshangqingxie"></use> @@ -2302,7 +2302,7 @@ <div class="name">向上倾斜</div> <div class="code-name">#luckysheet-iconfont-xiangshangqingxie</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shuipingduiqi"></use> @@ -2310,7 +2310,7 @@ <div class="name">水平对齐</div> <div class="code-name">#luckysheet-iconfont-shuipingduiqi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wenbenshanchuxian"></use> @@ -2318,7 +2318,7 @@ <div class="name">文本删除线</div> <div class="code-name">#luckysheet-iconfont-wenbenshanchuxian</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wenbenyouduiqi"></use> @@ -2326,7 +2326,7 @@ <div class="name">文本右对齐</div> <div class="code-name">#luckysheet-iconfont-wenbenyouduiqi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-qianjin"></use> @@ -2334,7 +2334,7 @@ <div class="name">前进</div> <div class="code-name">#luckysheet-iconfont-qianjin</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-tubiao"></use> @@ -2342,7 +2342,7 @@ <div class="name">图表</div> <div class="code-name">#luckysheet-iconfont-tubiao</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-youbiankuang"></use> @@ -2350,7 +2350,7 @@ <div class="name">右边框</div> <div class="code-name">#luckysheet-iconfont-youbiankuang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-baifenhao"></use> @@ -2358,7 +2358,7 @@ <div class="name">百分号</div> <div class="code-name">#luckysheet-iconfont-baifenhao</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-geshishua"></use> @@ -2366,7 +2366,7 @@ <div class="name">格式刷</div> <div class="code-name">#luckysheet-iconfont-geshishua</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-baocun"></use> @@ -2374,7 +2374,7 @@ <div class="name">保存</div> <div class="code-name">#luckysheet-iconfont-baocun</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shujuyanzheng"></use> @@ -2382,7 +2382,7 @@ <div class="name">数据验证</div> <div class="code-name">#luckysheet-iconfont-shujuyanzheng</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jieduan"></use> @@ -2390,7 +2390,7 @@ <div class="name">截断</div> <div class="code-name">#luckysheet-iconfont-jieduan</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-geshitiaojian"></use> @@ -2398,7 +2398,7 @@ <div class="name">格式条件</div> <div class="code-name">#luckysheet-iconfont-geshitiaojian</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-zidonghuanhang"></use> @@ -2406,7 +2406,7 @@ <div class="name">自动换行</div> <div class="code-name">#luckysheet-iconfont-zidonghuanhang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-cebianlanzhankai"></use> @@ -2414,7 +2414,7 @@ <div class="name">侧边栏展开</div> <div class="code-name">#luckysheet-iconfont-cebianlanzhankai</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shaixuan2"></use> @@ -2422,7 +2422,7 @@ <div class="name">筛选2</div> <div class="code-name">#luckysheet-iconfont-shaixuan2</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-xiangxiaqingxie"></use> @@ -2430,7 +2430,7 @@ <div class="name">向下倾斜</div> <div class="code-name">#luckysheet-iconfont-xiangxiaqingxie</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-yichu"></use> @@ -2438,7 +2438,7 @@ <div class="name">溢出</div> <div class="code-name">#luckysheet-iconfont-yichu</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-chuizhihebing"></use> @@ -2446,7 +2446,7 @@ <div class="name">垂直合并</div> <div class="code-name">#luckysheet-iconfont-chuizhihebing</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wenbenfensanduiqi"></use> @@ -2454,7 +2454,7 @@ <div class="name">文本分散对齐</div> <div class="code-name">#luckysheet-iconfont-wenbenfensanduiqi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-zuobiankuang"></use> @@ -2462,7 +2462,7 @@ <div class="name">左边框</div> <div class="code-name">#luckysheet-iconfont-zuobiankuang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-fenyechakan"></use> @@ -2470,7 +2470,7 @@ <div class="name">分页查看</div> <div class="code-name">#luckysheet-iconfont-fenyechakan</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-yunhang"></use> @@ -2478,7 +2478,7 @@ <div class="name">运行</div> <div class="code-name">#luckysheet-iconfont-yunhang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-lie"></use> @@ -2486,7 +2486,7 @@ <div class="name">列</div> <div class="code-name">#luckysheet-iconfont-lie</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-quanping"></use> @@ -2494,7 +2494,7 @@ <div class="name">全屏</div> <div class="code-name">#luckysheet-iconfont-quanping</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shaixuan"></use> @@ -2502,7 +2502,7 @@ <div class="name">筛选</div> <div class="code-name">#luckysheet-iconfont-shaixuan</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-gengxin"></use> @@ -2510,7 +2510,7 @@ <div class="name">更新</div> <div class="code-name">#luckysheet-iconfont-gengxin</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-qingchu"></use> @@ -2518,7 +2518,7 @@ <div class="name">清除</div> <div class="code-name">#luckysheet-iconfont-qingchu</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-hang"></use> @@ -2526,7 +2526,7 @@ <div class="name">行</div> <div class="code-name">#luckysheet-iconfont-hang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-zhushi"></use> @@ -2534,7 +2534,7 @@ <div class="name">注释</div> <div class="code-name">#luckysheet-iconfont-zhushi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jian"></use> @@ -2542,7 +2542,7 @@ <div class="name">剪</div> <div class="code-name">#luckysheet-iconfont-jian</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jisuan"></use> @@ -2550,7 +2550,7 @@ <div class="name">计算</div> <div class="code-name">#luckysheet-iconfont-jisuan</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-jia"></use> @@ -2558,7 +2558,7 @@ <div class="name">加</div> <div class="code-name">#luckysheet-iconfont-jia</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-dibuduiqi"></use> @@ -2566,7 +2566,7 @@ <div class="name">底部对齐</div> <div class="code-name">#luckysheet-iconfont-dibuduiqi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-xiangshang90"></use> @@ -2574,7 +2574,7 @@ <div class="name">向上90</div> <div class="code-name">#luckysheet-iconfont-xiangshang90</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wuxuanzhuang"></use> @@ -2582,7 +2582,7 @@ <div class="name">无选装</div> <div class="code-name">#luckysheet-iconfont-wuxuanzhuang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-xianshiyincangwangge"></use> @@ -2590,7 +2590,7 @@ <div class="name">显示隐藏网格</div> <div class="code-name">#luckysheet-iconfont-xianshiyincangwangge</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-dongjie"></use> @@ -2598,7 +2598,7 @@ <div class="name">冻结</div> <div class="code-name">#luckysheet-iconfont-dongjie</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-wenbenzuoduiqi"></use> @@ -2606,7 +2606,7 @@ <div class="name">文本左对齐</div> <div class="code-name">#luckysheet-iconfont-wenbenzuoduiqi</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-houtui"></use> @@ -2614,7 +2614,7 @@ <div class="name">后退</div> <div class="code-name">#luckysheet-iconfont-houtui</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shuipinghebing"></use> @@ -2622,7 +2622,7 @@ <div class="name">水平合并</div> <div class="code-name">#luckysheet-iconfont-shuipinghebing</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-xiabiankuang"></use> @@ -2630,7 +2630,7 @@ <div class="name">下边框</div> <div class="code-name">#luckysheet-iconfont-xiabiankuang</div> </li> - + <li class="dib"> <svg class="icon svg-icon" aria-hidden="true"> <use xlink:href="#luckysheet-iconfont-shezhi"></use> @@ -2638,7 +2638,7 @@ <div class="name">设置</div> <div class="code-name">#luckysheet-iconfont-shezhi</div> </li> - + </ul> <div class="article markdown"> <h2 id="symbol-">Symbol 引用</h2> diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.js index 803f0f592..6c67fcaf1 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.js @@ -1 +1 @@ -!function(h){var l,a,v,i,t,z,o='<svg><symbol id="luckysheet-iconfont-lianjie" viewBox="0 0 1024 1024"><path d="M771.584 251.733333c-49.066667-51.2-132.266667-51.2-181.333333 0l-74.666667 76.8c-8.533333 8.533333-8.533333 23.466667 0 32 8.533333 8.533333 21.333333 8.533333 29.866667 0l74.666666-76.8c34.133333-34.133333 87.466667-34.133333 121.6 0 34.133333 34.133333 34.133333 89.6 0 123.733334l-121.6 123.733333c-34.133333 34.133333-87.466667 34.133333-121.6 0-8.533333-8.533333-21.333333-8.533333-29.866666 0-8.533333 8.533333-8.533333 23.466667 0 32 49.066667 51.2 132.266667 51.2 181.333333 0l121.6-123.733333c51.2-53.333333 51.2-136.533333 0-187.733334z" fill="#444D5A" ></path><path d="M477.184 663.466667l-74.666667 76.8c-34.133333 34.133333-87.466667 34.133333-121.6 0-34.133333-34.133333-34.133333-89.6 0-123.733334l121.6-123.733333c34.133333-34.133333 87.466667-34.133333 121.6 0 8.533333 8.533333 21.333333 8.533333 29.866667 0 8.533333-8.533333 8.533333-23.466667 0-32-49.066667-51.2-132.266667-51.2-181.333333 0l-121.6 123.733333c-51.2 51.2-49.066667 134.4 0 185.6 49.066667 51.2 132.266667 51.2 181.333333 0l74.666667-76.8c8.533333-8.533333 8.533333-23.466667 0-32-8.533333-6.4-21.333333-6.4-29.866667 2.133334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dayinquyu" viewBox="0 0 1024 1024"><path d="M727.04 706.218667a11.946667 11.946667 0 0 1 8.704 3.754666 13.312 13.312 0 0 1 3.626667 9.130667V810.666667H583.253333v-91.52c0-3.413333 1.28-6.741333 3.626667-9.173334a11.946667 11.946667 0 0 1 8.661333-3.754666zM362.666667 725.333333v42.666667h-128v-42.666667h128z m128 0v42.666667h-42.666667v-42.666667h42.666667z m301.696-143.957333a18.773333 18.773333 0 0 1 18.304 19.2v117.205333c0 10.581333-8.277333 19.2-18.346667 19.2h-28.458667v-11.434666c-0.128-21.333333-16.554667-38.570667-36.778666-38.570667h-131.498667c-20.224 0-36.693333 17.237333-36.778667 38.570667v11.477333h-28.458666a18.858667 18.858667 0 0 1-18.346667-19.2v-117.248c0-10.581333 8.277333-19.2 18.346667-19.2zM256 533.333333v128H213.333333v-128h42.666667z m411.477333 85.845334H567.04a12.586667 12.586667 0 0 0-12.245333 12.8c0.042667 7.125333 5.546667 12.885333 12.245333 12.842666h100.394667a12.586667 12.586667 0 0 0 12.202666-12.8c0-7.082667-5.504-12.8-12.202666-12.8zM723.072 512a14.506667 14.506667 0 0 1 14.165333 14.805333v35.84H585.386667v-35.84a14.506667 14.506667 0 0 1 14.165333-14.805333zM768 362.666667v128h-42.666667v-128h42.666667z m-512-42.666667v128H213.333333v-128h42.666667zM768 213.333333v64h-42.666667V256h-64V213.333333H768zM362.666667 213.333333v42.666667H256v21.333333H213.333333V213.333333h149.333334z m213.333333 0v42.666667h-128V213.333333h128z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dayinyemianpeizhi" viewBox="0 0 1024 1024"><path d="M635.477333 213.333333H388.522667c-15.530667 0-28.16 13.226667-28.288 29.610667v71.68h303.530666v-71.68c0-16.298667-12.586667-29.568-28.288-29.568V213.333333z m7.978667 388.48H380.586667a23.893333 23.893333 0 0 0-17.365334 7.509334 26.581333 26.581333 0 0 0-7.253333 18.261333V810.666667h312.149333v-183.125334a26.581333 26.581333 0 0 0-7.253333-18.218666 23.893333 23.893333 0 0 0-17.365333-7.509334z m130.602667-249.728H250.069333c-20.224 0-36.736 17.28-36.736 38.4v234.410667c0 21.162667 16.512 38.442667 36.693334 38.442667h56.96v-22.912c0.213333-42.666667 33.109333-77.184 73.557333-77.098667h262.912c40.448-0.085333 73.386667 34.389333 73.557333 77.098667v22.912h56.917334c20.224 0 36.736-17.28 36.736-38.4V390.485333c-0.042667-21.290667-16.426667-38.485333-36.608-38.442666z m-249.813334 126.933334H323.498667c-13.44 0-24.405333-11.434667-24.490667-25.642667a25.173333 25.173333 0 0 1 24.490667-25.685333h200.746666c13.44 0 24.490667 11.52 24.490667 25.685333 0 14.08-11.050667 25.6-24.490667 25.6v0.042667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dayinbiaoti" viewBox="0 0 1024 1024"><path d="M727.04 706.218667a11.946667 11.946667 0 0 1 8.704 3.754666 13.312 13.312 0 0 1 3.626667 9.130667V810.666667H583.253333v-91.52c0-3.413333 1.28-6.741333 3.626667-9.173334a11.946667 11.946667 0 0 1 8.661333-3.754666zM768 213.333333v277.333334h-42.666667V256H256v469.333333h234.666667v42.666667H213.333333V213.333333h554.666667z m24.362667 368.042667a18.773333 18.773333 0 0 1 18.304 19.2v117.205333c0 10.581333-8.277333 19.2-18.346667 19.2h-28.458667v-11.434666c-0.128-21.333333-16.554667-38.570667-36.778666-38.570667h-131.498667c-20.224 0-36.693333 17.237333-36.778667 38.570667v11.477333h-28.458666a18.858667 18.858667 0 0 1-18.346667-19.2v-117.248c0-10.581333 8.277333-19.2 18.346667-19.2z m-124.885334 37.802667H567.04a12.586667 12.586667 0 0 0-12.245333 12.8c0.042667 7.125333 5.546667 12.885333 12.245333 12.842666h100.394667a12.586667 12.586667 0 0 0 12.202666-12.8c0-7.082667-5.504-12.8-12.202666-12.8zM723.072 512a14.506667 14.506667 0 0 1 14.165333 14.805333v35.84H585.386667v-35.84a14.506667 14.506667 0 0 1 14.165333-14.805333z" fill="#444D5A" ></path><path d="M341.333333 341.333333h298.666667v42.666667H341.333333zM341.333333 426.666667h170.666667v42.666666H341.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-fenyeyulan" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256z" fill="#444D5A" ></path><path d="M256 512h256v42.666667H256zM554.666667 256v298.666667h-42.666667V256z" fill="#444D5A" ></path><path d="M405.333333 256v298.666667h-42.666666V256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-putong" viewBox="0 0 1024 1024"><path d="M256 256h554.666667v42.666667H256z" fill="#444D5A" ></path><path d="M298.666667 256v554.666667H256V256zM810.666667 256v554.666667h-42.666667V256zM469.333333 256v554.666667h-42.666666V256zM640 256v554.666667h-42.666667V256z" fill="#444D5A" ></path><path d="M256 426.666667h554.666667v42.666666H256zM256 597.333333h554.666667v42.666667H256zM256 768h554.666667v42.666667H256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-yemianbuju" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v42.666667h-170.709334L640 768h170.666667v42.666667h-213.333334V213.333333h213.333334z m-384 0l-0.042667 554.666667H426.666667v42.666667H213.333333v-42.666667h170.624L384 256H213.333333V213.333333h213.333334z m106.666666 512v85.333334h-42.666666v-85.333334h42.666666z m0-170.666666v85.333333h-42.666666v-85.333333h42.666666z m0-170.666667v85.333333h-42.666666V384h42.666666z m0-170.666667v85.333334h-42.666666V213.333333h42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-biaogesuoding" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334zM341.333333 383.872H256V768h85.333333V383.872z m426.666667 0H383.872V768H768V383.872z m-149.333333 21.461333a64 64 0 0 1 63.701333 57.856L682.666667 469.333333v64h42.666666v213.333334h-298.666666v-213.333334h42.666666V469.333333a64 64 0 0 1 57.856-63.701333L533.333333 405.333333h85.333334z m64 170.666667h-213.333334v128h213.333334v-128z m-106.666667 21.333333a21.333333 21.333333 0 0 1 21.333333 21.333334v42.666666a21.333333 21.333333 0 1 1-42.666666 0v-42.666666a21.333333 21.333333 0 0 1 21.333333-21.333334z m42.666667-149.333333h-85.333334a21.333333 21.333333 0 0 0-20.992 17.493333L512 469.333333v64h128V469.333333a21.333333 21.333333 0 0 0-13.909333-20.010666l-3.584-0.981334-3.84-0.341333zM768 256H383.872v85.290667L768 341.333333V256zM341.333333 256H256v85.333333l85.333333-0.042666V256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zhuandao1" viewBox="0 0 1024 1024"><path d="M804.992 694.058667l-84.650667-84.224c-7.552-7.509333-21.930667-8.448-26.026666 1.365333-1.066667 2.602667-1.365333 10.026667-1.365334 10.026667v56.874666H406.442667a69.034667 69.034667 0 0 1-69.205334-68.778666 69.034667 69.034667 0 0 1 69.205334-68.821334h259.84a128.341333 128.341333 0 0 0 128.597333-127.829333 128.384 128.384 0 0 0-128.554667-127.914667H411.946667A101.632 101.632 0 0 0 213.333333 314.325333a101.632 101.632 0 1 0 198.613334 29.525334h254.378666a69.034667 69.034667 0 0 1 69.162667 68.821333 69.034667 69.034667 0 0 1-69.162667 68.778667H406.442667a128.341333 128.341333 0 0 0-128.597334 127.872 128.341333 128.341333 0 0 0 128.597334 127.872h286.506666v54.016s0 8.277333 1.408 11.52c4.053333 9.813333 18.432 10.24 25.984 2.730666l84.650667-84.181333a19.2 19.2 0 0 0 0-27.221333zM314.88 356.224a42.069333 42.069333 0 0 1-42.112-41.898667c0-23.082667 18.858667-41.856 42.112-41.856 23.210667 0 42.112 18.773333 42.112 41.856a42.069333 42.069333 0 0 1-42.112 41.898667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-youjiantou" viewBox="0 0 1024 1024"><path d="M682.666667 512l-341.333334 341.333333V170.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-caidan2" viewBox="0 0 1024 1024"><path d="M213.333333 469.333333h597.333334v85.333334H213.333333zM213.333333 213.333333h597.333334v85.333334H213.333333zM213.333333 725.333333h597.333334v85.333334H213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-tihuan" viewBox="0 0 1024 1024"><path d="M768 430.933333H280.405333l-4.394666-0.554666c-5.461333-0.853333-6.570667-1.749333-12.885334-6.528l-2.986666-5.376c-6.4-11.946667-5.376-13.738667 2.986666-28.885334L440.618667 213.333333l34.218666 34.048-136.362666 135.424H768v48.170667z m-7.594667 163.242667L585.472 768l-34.261333-34.048 136.362666-135.424H258.048v-48.170667h484.096c10.453333 0 19.882667 6.272 23.893333 15.872a25.6 25.6 0 0 1-5.632 27.989334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dongjie1" viewBox="0 0 1024 1024"><path d="M809.557333 213.930667v595.626666H213.930667V213.930667h595.626666zM256.426667 573.610667v193.408l193.365333-0.042667-193.365333-193.365333z m510.549333-40.618667h-234.026667v234.026667h234.026667v-234.026667z m-276.565333 0H276.053333l214.357334 214.4v-214.4z m276.565333-276.522667h-234.026667v233.984h234.026667V256.469333zM256.426667 286.549333v203.946667l203.904-0.042667-203.946667-203.946666z m233.984-30.08H286.592l203.861333 203.861334V256.426667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jian1" viewBox="0 0 1024 1024"><path d="M213.333333 469.333333h597.333334v85.333334H213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jia1" viewBox="0 0 1024 1024"><path d="M213.333333 469.333333h597.333334v85.333334H213.333333z" fill="#444D5A" ></path><path d="M554.666667 213.333333v597.333334h-85.333334V213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-yichu1" viewBox="0 0 1024 1024"><path d="M300.288 810.666667H213.333333V213.333333h86.954667v279.978667h441.898667l-91.306667-85.845333 26.624-26.112L810.666667 512l-133.162667 130.688-26.624-26.154667 91.306667-85.845333-441.898667-0.042667z" fill="#444D5A" ></path><path d="M530.688 213.333333h42.666667v242.688h-42.666667V213.333333z m0 354.688h42.666667V810.666667h-42.666667v-242.688z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-shengxu1" viewBox="0 0 1024 1024"><path d="M684.757333 413.056v290.645333a20.650667 20.650667 0 0 1-6.4 15.274667 23.04 23.04 0 0 1-16 6.357333 22.229333 22.229333 0 0 1-22.4-21.632V413.056L550.4 497.92a22.528 22.528 0 0 1-15.872 6.442667 22.613333 22.613333 0 0 1-15.914667-6.442667 20.650667 20.650667 0 0 1-6.613333-15.061333c0-5.674667 2.389333-11.093333 6.613333-15.061334l126.72-120.064a22.485333 22.485333 0 0 1 15.658667-6.4 23.594667 23.594667 0 0 1 16.128 5.546667l126.72 120.064c4.309333 3.84 6.826667 9.301333 6.826667 15.061333a20.266667 20.266667 0 0 1-6.826667 15.061334 23.04 23.04 0 0 1-15.914667 6.272 23.04 23.04 0 0 1-15.872-6.272l-87.296-84.010667zM229.930667 682.666667h265.472c9.173333 0 16.597333 9.472 16.597333 21.12s-7.424 21.12-16.597333 21.12H229.930667c-9.173333 0-16.597333-9.472-16.597334-21.12 0-11.690667 7.424-21.12 16.597334-21.12z m1.152-170.666667h177.792c9.813333 0 17.792 9.429333 17.792 21.12s-7.936 21.12-17.792 21.12H231.168c-9.813333 0-17.792-9.429333-17.792-21.12 0-11.648 7.978667-21.12 17.792-21.12z m264.362666-170.666667H229.845333C220.757333 341.333333 213.333333 350.805333 213.333333 362.453333s7.424 21.12 16.597334 21.12h265.472c9.173333 0 16.597333-9.472 16.597333-21.12S504.576 341.333333 495.402667 341.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-neikuangxian" viewBox="0 0 1024 1024"><path d="M213.333333 512h554.666667v42.666667H213.333333z" fill="#444D5A" ></path><path d="M512 256v554.666667h-42.666667V256z" fill="#444D5A" ></path><path d="M213.333333 426.666667h42.666667v42.666666H213.333333zM213.333333 597.333333h42.666667v42.666667H213.333333zM213.333333 341.333333h42.666667v42.666667H213.333333zM213.333333 682.666667h42.666667v42.666666H213.333333zM725.333333 426.666667h42.666667v42.666666h-42.666667zM725.333333 597.333333h42.666667v42.666667h-42.666667zM725.333333 341.333333h42.666667v42.666667h-42.666667zM725.333333 682.666667h42.666667v42.666666h-42.666667zM725.333333 768h42.666667v42.666667h-42.666667zM725.333333 256h42.666667v42.666667h-42.666667zM213.333333 768h42.666667v42.666667H213.333333zM213.333333 256h42.666667v42.666667H213.333333zM384 768h42.666667v42.666667H384zM384 256h42.666667v42.666667H384zM554.666667 768h42.666666v42.666667h-42.666666zM554.666667 256h42.666666v42.666667h-42.666666zM298.666667 768h42.666666v42.666667H298.666667zM298.666667 256h42.666666v42.666667H298.666667zM640 768h42.666667v42.666667h-42.666667zM640 256h42.666667v42.666667h-42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-qingchushaixuan" viewBox="0 0 1024 1024"><path d="M214.016 722.432h593.92v42.410667H214.016v-42.410667z m578.048-312.106667l-180.693333-181.077333A53.376 53.376 0 0 0 573.738667 213.333333a45.653333 45.653333 0 0 0-32.64 13.226667l-313.941334 314.965333c-18.56 18.602667-17.322667 50.261333 2.688 70.4l68.010667 68.096h298.24l198.698667-199.338666c18.56-18.602667 17.322667-50.261333-2.730667-70.357334z m-213.546667 227.242667H315.434667L259.84 581.888c-3.968-4.010667-4.053333-9.088-2.730667-10.453333L430.08 398.08l193.92 193.92-45.44 45.568z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenxiangshang" viewBox="0 0 1024 1024"><path d="M192 495.786667l213.333333-77.653334v-0.64l1.621334 0.042667L554.666667 363.776v45.354667l-106.666667 38.826666v152.405334l106.666667 38.826666v45.354667l-147.498667-53.674667-1.834667-0.042666v-0.64l-213.333333-77.610667V495.786667z m46.634667 28.416L405.333333 584.874667v-121.386667l-166.698666 60.714667zM597.333333 336.170667l90.496-90.538667 90.538667 90.538667-30.165333 30.165333-37.802667-37.76V789.333333h-42.666667V326.101333l-40.234666 40.234667L597.333333 336.170667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jiangxu1" viewBox="0 0 1024 1024"><path d="M684.757333 653.610667V362.965333a20.650667 20.650667 0 0 0-6.4-15.274666 23.04 23.04 0 0 0-16-6.357334 22.229333 22.229333 0 0 0-22.4 21.632v290.645334L550.4 568.746667a22.528 22.528 0 0 0-15.872-6.442667 22.613333 22.613333 0 0 0-15.914667 6.442667 20.650667 20.650667 0 0 0-6.613333 15.061333c0 5.674667 2.389333 11.093333 6.613333 15.061333l126.72 120.064a22.485333 22.485333 0 0 0 15.658667 6.4 23.594667 23.594667 0 0 0 16.128-5.546666l126.72-120.064c4.309333-3.84 6.826667-9.301333 6.826667-15.061334a20.266667 20.266667 0 0 0-6.826667-15.061333 23.04 23.04 0 0 0-15.914667-6.272 23.04 23.04 0 0 0-15.872 6.272l-87.296 84.010667zM229.930667 682.666667h265.472c9.173333 0 16.597333 9.472 16.597333 21.12s-7.424 21.12-16.597333 21.12H229.930667c-9.173333 0-16.597333-9.472-16.597334-21.12 0-11.690667 7.424-21.12 16.597334-21.12z m1.152-170.666667h177.792c9.813333 0 17.792 9.429333 17.792 21.12s-7.936 21.12-17.792 21.12H231.168c-9.813333 0-17.792-9.429333-17.792-21.12 0-11.648 7.978667-21.12 17.792-21.12z m264.362666-170.666667H229.845333C220.757333 341.333333 213.333333 350.762667 213.333333 362.453333c0 11.648 7.424 21.12 16.597334 21.12h265.472c9.173333 0 16.597333-9.472 16.597333-21.12S504.576 341.333333 495.402667 341.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-neikuanghengxian" viewBox="0 0 1024 1024"><path d="M213.333333 512h554.666667v42.666667H213.333333z" fill="#444D5A" ></path><path d="M213.333333 426.666667h42.666667v42.666666H213.333333zM213.333333 597.333333h42.666667v42.666667H213.333333zM213.333333 341.333333h42.666667v42.666667H213.333333zM213.333333 682.666667h42.666667v42.666666H213.333333zM725.333333 426.666667h42.666667v42.666666h-42.666667zM469.333333 426.666667h42.666667v42.666666h-42.666667zM725.333333 597.333333h42.666667v42.666667h-42.666667zM469.333333 597.333333h42.666667v42.666667h-42.666667zM725.333333 341.333333h42.666667v42.666667h-42.666667zM469.333333 341.333333h42.666667v42.666667h-42.666667zM725.333333 682.666667h42.666667v42.666666h-42.666667zM469.333333 682.666667h42.666667v42.666666h-42.666667zM725.333333 768h42.666667v42.666667h-42.666667zM725.333333 256h42.666667v42.666667h-42.666667zM213.333333 768h42.666667v42.666667H213.333333zM213.333333 256h42.666667v42.666667H213.333333zM384 768h42.666667v42.666667H384zM384 256h42.666667v42.666667H384zM554.666667 768h42.666666v42.666667h-42.666666zM554.666667 256h42.666666v42.666667h-42.666666zM298.666667 768h42.666666v42.666667H298.666667zM298.666667 256h42.666666v42.666667H298.666667zM469.333333 768h42.666667v42.666667h-42.666667zM469.333333 256h42.666667v42.666667h-42.666667zM640 768h42.666667v42.666667h-42.666667zM640 256h42.666667v42.666667h-42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-neikuangshuxian" viewBox="0 0 1024 1024"><path d="M213.333333 426.666667h42.666667v42.666666H213.333333zM213.333333 597.333333h42.666667v42.666667H213.333333zM213.333333 341.333333h42.666667v42.666667H213.333333zM213.333333 682.666667h42.666667v42.666666H213.333333zM725.333333 426.666667h42.666667v42.666666h-42.666667zM725.333333 597.333333h42.666667v42.666667h-42.666667zM725.333333 341.333333h42.666667v42.666667h-42.666667zM725.333333 682.666667h42.666667v42.666666h-42.666667zM725.333333 768h42.666667v42.666667h-42.666667zM725.333333 256h42.666667v42.666667h-42.666667zM725.333333 512h42.666667v42.666667h-42.666667zM213.333333 768h42.666667v42.666667H213.333333zM213.333333 256h42.666667v42.666667H213.333333zM213.333333 512h42.666667v42.666667H213.333333zM384 768h42.666667v42.666667H384zM384 256h42.666667v42.666667H384zM384 512h42.666667v42.666667H384zM554.666667 768h42.666666v42.666667h-42.666666zM554.666667 256h42.666666v42.666667h-42.666666zM554.666667 512h42.666666v42.666667h-42.666666zM298.666667 768h42.666666v42.666667H298.666667zM298.666667 256h42.666666v42.666667H298.666667zM298.666667 512h42.666666v42.666667H298.666667zM469.333333 768h42.666667v42.666667h-42.666667zM469.333333 256h42.666667v42.666667h-42.666667zM469.333333 512h42.666667v42.666667h-42.666667zM640 768h42.666667v42.666667h-42.666667zM640 256h42.666667v42.666667h-42.666667zM640 512h42.666667v42.666667h-42.666667z" fill="#B5B8BD" ></path><path d="M512 256v554.666667h-42.666667V256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zidingyipaixu" viewBox="0 0 1024 1024"><path d="M704 256a21.333333 21.333333 0 0 1 21.333333 21.333333v469.333334a21.333333 21.333333 0 1 1-42.666666 0v-469.333334c0-11.776 9.472-21.333333 21.333333-21.333333zM512 384c11.776 0 21.333333 7.68 21.333333 17.194667v221.610666c0 9.514667-9.472 17.194667-21.333333 17.194667-11.776 0-21.333333-7.68-21.333333-17.194667V401.194667c0-4.565333 2.218667-8.96 6.186666-12.16A24.32 24.32 0 0 1 512 384zM320 256a21.333333 21.333333 0 0 1 21.333333 21.333333v469.333334a21.333333 21.333333 0 1 1-42.666666 0v-469.333334c0-11.776 9.472-21.333333 21.333333-21.333333z m283.562667 368.896a21.333333 21.333333 0 0 1 30.165333 30.165333l-106.666667 106.666667a21.333333 21.333333 0 0 1-30.165333 0l-106.666667-106.666667a21.333333 21.333333 0 0 1 30.165334-30.165333L512 716.501333l91.605333-91.562666z m0.298666-225.834667a21.333333 21.333333 0 0 0 30.165334-30.165333l-106.666667-106.666667a21.333333 21.333333 0 0 0-30.165333 0l-106.666667 106.666667a21.333333 21.333333 0 0 0 30.165333 30.165333l91.562667-91.562666 91.605333 91.562666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-logo2" viewBox="0 0 1024 1024"><path d="M1023.168 131.36c0 234.4-190.016 424.416-424.416 424.416 0-234.4 190.016-424.416 424.416-424.416zM131.36 1023.168c0-234.4 190.016-424.416 424.416-424.416 0 234.4-190.016 424.416-424.416 424.416zM929.696 929.696c-182.784 0-330.944-148.16-330.944-330.944 182.752 0 330.944 148.16 330.944 330.944z" fill="#2D7FF9" ></path><path d="M494.848 0H0v494.848h494.848z" fill="#2D7FF9" opacity=".503" ></path><path d="M558.016 81.376H81.376v476.64h476.64z" fill="#2D7FF9" opacity=".551" ></path><path d="M558.304 164.416H164.384v393.92h393.92z" fill="#2D7FF9" opacity=".805" ></path></symbol><symbol id="luckysheet-iconfont-logo" viewBox="0 0 4864 1024"><path d="M1023.168 131.36c0 234.4-190.016 424.416-424.416 424.416 0-234.4 190.016-424.416 424.416-424.416zM131.36 1023.168c0-234.4 190.016-424.416 424.416-424.416 0 234.4-190.016 424.416-424.416 424.416zM929.696 929.696c-182.784 0-330.944-148.16-330.944-330.944 182.752 0 330.944 148.16 330.944 330.944z" fill="#2D7FF9" ></path><path d="M494.848 0H0v494.848h494.848z" fill="#2D7FF9" opacity=".503" ></path><path d="M558.016 81.376H81.376v476.64h476.64z" fill="#2D7FF9" opacity=".551" ></path><path d="M558.304 164.416H164.384v393.92h393.92z" fill="#2D7FF9" opacity=".805" ></path><path d="M1678.08 736v-64h-247.04V279.04H1356.8V736h321.28z m177.568 8.96c40.96 0 75.52-17.28 103.68-51.84V736h72.96V405.12h-72.96v202.24c-6.4 23.68-17.28 42.24-32 56.32-14.72 13.44-30.08 20.48-46.08 20.48-25.6 0-43.52-6.4-55.04-18.56-11.52-12.8-16.64-32-16.64-58.88v-201.6h-72.96v206.08c0 88.96 39.68 133.76 119.04 133.76z m407.936 0c42.88 0 77.44-10.88 103.04-32 26.24-21.76 43.52-55.04 51.2-99.84h-72.32c-5.76 48-32.64 72.32-81.28 72.32-28.16 0-49.28-10.24-63.36-30.08-15.36-20.48-22.4-49.28-22.4-85.76 0-35.84 7.68-64 23.04-83.84 15.36-20.48 36.48-30.08 63.36-30.08 21.76 0 39.68 5.12 53.12 15.36 12.8 10.24 21.76 25.6 26.24 46.72h72.32c-6.4-41.6-23.04-72.32-49.28-92.8-25.6-19.2-59.52-28.8-102.4-28.8-51.84 0-92.16 17.28-120.96 51.84-26.88 31.36-40.32 72.32-40.32 122.24 0 51.2 13.44 92.8 40.96 124.8 28.16 33.28 67.84 49.92 119.04 49.92z m292.128-8.96v-115.84l33.28-31.36 115.84 147.2h93.44l-159.36-193.92 146.56-136.96h-94.08l-135.68 131.2V270.08h-72.96V736h72.96z m404.096 126.72l179.2-457.6h-79.36l-83.84 235.52-87.68-235.52h-79.36l131.2 323.2-58.24 134.4h78.08z m357.408-117.76c99.2 0 149.12-35.2 149.12-105.6 0-29.44-13.44-53.12-39.68-69.76-17.92-12.16-46.08-22.4-83.2-31.36-33.28-8.32-55.04-14.72-65.92-19.2-17.92-7.68-26.24-17.28-26.24-27.52 0-12.8 5.12-21.76 16.64-27.52 9.6-5.76 24.32-8.32 43.52-8.32 22.4 0 39.04 3.2 49.92 10.24 10.24 6.4 17.92 18.56 23.04 35.2h71.04c-7.68-70.4-55.68-104.96-142.72-104.96-40.96 0-73.6 8.32-98.56 26.24-25.6 16.64-37.76 40.32-37.76 71.04 0 28.8 12.8 51.2 38.4 67.2 16 10.24 43.52 19.84 82.56 28.8 33.28 7.68 55.04 13.44 65.28 18.56 19.2 8.96 28.8 21.12 28.8 36.48 0 26.88-25.6 40.96-76.8 40.96-24.32 0-41.6-4.48-52.48-12.16-10.88-8.96-18.56-23.68-22.4-44.8h-71.04c7.04 77.44 56.32 116.48 148.48 116.48z m286.976-8.96v-184.96c0-28.16 6.4-50.56 19.84-68.48 12.8-17.92 30.72-26.88 53.76-26.88 24.96 0 43.52 7.68 56.32 23.68 10.88 14.72 16.64 36.48 16.64 64.64v192h72.96v-204.8c0-44.16-9.6-77.44-28.16-99.84-19.84-23.68-49.92-35.2-90.24-35.2-21.12 0-39.68 3.84-55.68 12.16-17.92 8.96-33.28 22.4-45.44 40.96v-179.2h-72.96V736h72.96z m447.648 8.96c44.16 0 80.64-12.8 110.08-37.76 23.04-20.48 38.4-46.72 46.08-77.44h-72.96c-8.96 18.56-18.56 32-29.44 40.32-14.08 10.24-32 15.36-54.4 15.36-26.24 0-46.72-8.32-60.8-24.32-14.08-16-22.4-39.68-24.96-70.4h247.68c0-59.52-13.44-106.24-39.68-139.52-28.8-37.12-70.4-55.04-124.8-55.04-49.28 0-88.32 16.64-116.48 50.56-29.44 33.28-43.52 74.24-43.52 123.52 0 55.04 15.36 97.92 46.08 129.28 28.8 30.08 67.84 45.44 117.12 45.44z m85.12-209.28h-170.24c4.48-26.24 13.44-46.08 26.88-59.52 14.08-14.08 32.64-20.48 56.96-20.48 51.2 0 80 26.24 86.4 80z m285.088 209.28c44.16 0 80.64-12.8 110.08-37.76 23.04-20.48 38.4-46.72 46.08-77.44h-72.96c-8.96 18.56-18.56 32-29.44 40.32-14.08 10.24-32 15.36-54.4 15.36-26.24 0-46.72-8.32-60.8-24.32-14.08-16-22.4-39.68-24.96-70.4h247.68c0-59.52-13.44-106.24-39.68-139.52-28.8-37.12-70.4-55.04-124.8-55.04-49.28 0-88.32 16.64-116.48 50.56-29.44 33.28-43.52 74.24-43.52 123.52 0 55.04 15.36 97.92 46.08 129.28 28.8 30.08 67.84 45.44 117.12 45.44z m85.12-209.28h-170.24c4.48-26.24 13.44-46.08 26.88-59.52 14.08-14.08 32.64-20.48 56.96-20.48 51.2 0 80 26.24 86.4 80z m310.016 200.32v-60.16h-43.52c-7.68 0-12.8-1.92-16.64-5.76-3.84-4.48-5.12-10.24-5.12-17.92v-186.88h73.6v-60.16h-73.6V298.24l-72.96 30.08v76.8h-59.52v60.16h59.52v186.88c0 26.88 6.4 46.72 19.2 60.8 13.44 15.36 34.56 23.04 63.36 23.04h55.68z" fill="#7C838C" ></path></symbol><symbol id="luckysheet-iconfont-wenbenqingxie1" viewBox="0 0 1024 1024"><path d="M469.333333 256h170.666667v42.666667h-170.666667z" fill="#444D5A" ></path><path d="M573.738667 284.586667l-81.493334 462.208-41.984-7.381334 81.493334-462.208z" fill="#444D5A" ></path><path d="M384 725.333333h170.666667v42.666667H384z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jiacu" viewBox="0 0 1024 1024"><path d="M298.666667 213.333333h224a174.208 174.208 0 0 1 141.952 275.242667A174.208 174.208 0 0 1 572.458667 810.666667H298.666667V213.333333z m273.792 348.458667l-174.250667-0.042667v149.333334h174.250667a74.666667 74.666667 0 0 0 6.101333-149.077334l-6.101333-0.213333zM398.208 312.874667v149.333333h124.458667a74.666667 74.666667 0 0 0 6.144-149.077333l-6.144-0.256H398.208z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-sousuo" viewBox="0 0 1024 1024"><path d="M664.832 634.624l128.554667 128.597333a21.333333 21.333333 0 1 1-30.165334 30.165334l-128.597333-128.597334a256 256 0 1 1 30.165333-30.165333zM469.333333 682.666667a213.333333 213.333333 0 1 0 0-426.666667 213.333333 213.333333 0 0 0 0 426.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-guanbi" viewBox="0 0 1024 1024"><path d="M119.808 180.053333l60.330667-60.245333 724.053333 724.053333-60.330667 60.330667z" fill="#B5B8BD" ></path><path d="M843.946667 119.808l60.245333 60.330667-724.053333 724.053333-60.330667-60.330667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-xiayige" viewBox="0 0 1024 1024"><path d="M512 682.666667L170.666667 341.333333h682.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiala" viewBox="0 0 1024 1024"><path d="M149.930667 444.330667l60.330666-60.330667 362.069334 362.069333L512 806.4z" fill="#B5B8BD" ></path><path d="M813.738667 384l60.330666 60.330667L512 806.4l-60.330667-60.330667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-wenbenyanse" viewBox="0 0 1024 1024"><path d="M549.546667 256l194.133333 533.333333h-45.354667l-77.653333-213.333333H421.632l-77.653333 213.333333H298.666667L492.757333 256h56.789334z m-28.416 46.634667L437.162667 533.333333h167.978666l-84.010666-230.698666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shangyige" viewBox="0 0 1024 1024"><path d="M512 341.333333l341.333333 341.333334H170.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shujutoushi" viewBox="0 0 1024 1024"><path d="M256 362.666667v298.666666l256 149.333334 256-149.333334v-298.666666L512 213.333333 256 362.666667zM725.333333 640l-213.333333 128-213.333333-128V384l213.333333-128 213.333333 128v256z m-189.354666 40.021333a18.645333 18.645333 0 0 1-18.645334 18.645334 18.304 18.304 0 0 1-18.688-18.645334V535.466667l-130.645333-75.349334a18.645333 18.645333 0 0 1 4.565333-34.133333 18.304 18.304 0 0 1 14.08 2.005333l130.688 74.666667 129.578667-74.666667a18.304 18.304 0 0 1 25.386667 6.698667 18.645333 18.645333 0 0 1-6.784 25.386667l-129.536 74.666666v145.237334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-tianchong" viewBox="0 0 1024 1024"><path d="M730.24 562.176l-253.44 253.44-217.173333-217.258667 253.44-253.44 217.173333 217.258667z m-72.405333-0.042667L512.981333 417.28l-180.992 180.992 144.810667 144.853333 181.034667-181.034666z" fill="#444D5A" ></path><path d="M520.533333 298.666667v230.4H469.333333V349.824H392.533333v179.626667H341.333333V298.666667zM699.733333 554.666667c48.768 0 88.32 37.802667 88.32 84.48 0 46.634667-39.552 84.48-88.32 84.48" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zengjiaxiaoshuwei" viewBox="0 0 1024 1024"><path d="M533.333333 789.333333m-42.666666 0a42.666667 42.666667 0 1 0 85.333333 0 42.666667 42.666667 0 1 0-85.333333 0Z" fill="#B5B8BD" ></path><path d="M682.666667 554.666667a85.333333 85.333333 0 0 0-85.333334 85.333333v85.333333a85.333333 85.333333 0 1 0 170.666667 0V640a85.333333 85.333333 0 0 0-85.333333-85.333333z m0 42.666666a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 1 1-85.333333 0V640a42.666667 42.666667 0 0 1 42.666667-42.666667z" fill="#B5B8BD" ></path><path d="M367.829333 799.701333l90.538667-90.538666L367.786667 618.666667l-30.165334 30.165333 37.76 37.802667H256v42.666666h121.898667l-40.234667 40.234667 30.165333 30.165333z" fill="#444D5A" ></path><path d="M490.666667 213.333333a85.333333 85.333333 0 0 0-85.333334 85.333334v85.333333a85.333333 85.333333 0 1 0 170.666667 0V298.666667a85.333333 85.333333 0 0 0-85.333333-85.333334z m0 42.666667a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 1 1-85.333333 0V298.666667a42.666667 42.666667 0 0 1 42.666667-42.666667zM682.666667 213.333333a85.333333 85.333333 0 0 0-85.333334 85.333334v85.333333a85.333333 85.333333 0 1 0 170.666667 0V298.666667a85.333333 85.333333 0 0 0-85.333333-85.333334z m0 42.666667a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-85.333333 0V298.666667a42.666667 42.666667 0 0 1 42.666667-42.666667z" fill="#B5B8BD" ></path><path d="M341.333333 448m-42.666666 0a42.666667 42.666667 0 1 0 85.333333 0 42.666667 42.666667 0 1 0-85.333333 0Z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-bianji2" viewBox="0 0 1024 1024"><path d="M810.581333 513.365333V768a42.666667 42.666667 0 0 1-42.666666 42.666667H298.666667a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667h234.624v42.666667H320a21.333333 21.333333 0 0 0-21.333333 21.333333v469.333334a21.333333 21.333333 0 0 0 21.333333 21.333333h426.581333a21.333333 21.333333 0 0 0 21.333334-21.333333V512h0.042666a21.333333 21.333333 0 1 1 42.581334 1.365333z m-285.056-2.432l241.365334-241.365333a21.333333 21.333333 0 0 1 30.165333 30.165333l-241.365333 241.365334a21.333333 21.333333 0 0 1-30.165334-30.165334zM533.290667 256V213.333333a21.333333 21.333333 0 0 1 21.333333 21.333334c0 11.776-10.069333 21.333333-21.333333 21.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jieping" viewBox="0 0 1024 1024"><path d="M590.848 567.04l-265.386667-306.645333a28.245333 28.245333 0 0 1 3.2-40.149334 29.141333 29.141333 0 0 1 40.789334 3.242667l267.946666 309.674667a124.885333 124.885333 0 0 1 144.213334 34.474666 125.141333 125.141333 0 0 1-16.042667 176.256 125.141333 125.141333 0 0 1-176.341333-14.805333 125.013333 125.013333 0 0 1 1.621333-162.048z m40.149333 18.133333c-18.602667 15.701333-29.312 38.826667-29.312 63.189334 0 45.909333 37.461333 83.157333 83.754667 83.157333a83.413333 83.413333 0 0 0 83.712-83.157333 83.413333 83.413333 0 0 0-83.712-83.114667c-15.189333 0-29.44 4.010667-41.685333 11.008a28.458667 28.458667 0 0 1-12.757334 8.96v-0.042667z m-150.698666-52.565333l-38.229334 44.16a29.653333 29.653333 0 0 1-0.768 0.810667 124.885333 124.885333 0 0 1-6.528 151.509333 125.141333 125.141333 0 0 1-176.341333 14.805333C205.226667 699.306667 198.101333 620.373333 242.346667 567.637333a124.928 124.928 0 0 1 156.416-28.544l38.528-44.501333c9.514667 17.237333 24.746667 30.634667 43.008 37.973333z m105.6-122.026667a85.632 85.632 0 0 0-43.818667-37.12l129.749333-150.016a29.141333 29.141333 0 0 1 40.789334-3.242666 28.245333 28.245333 0 0 1 3.2 40.149333l-129.92 150.186667z m-300.8 301.44c35.413333 29.738667 88.064 25.301333 117.546666-9.813333a83.413333 83.413333 0 0 0-10.666666-117.546667 83.456 83.456 0 0 0-117.589334 9.856 83.456 83.456 0 0 0 10.709334 117.504z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jianxiaoxiaoshuwei" viewBox="0 0 1024 1024"><path d="M533.333333 448m-42.666666 0a42.666667 42.666667 0 1 0 85.333333 0 42.666667 42.666667 0 1 0-85.333333 0Z" fill="#B5B8BD" ></path><path d="M341.333333 789.333333m-42.666666 0a42.666667 42.666667 0 1 0 85.333333 0 42.666667 42.666667 0 1 0-85.333333 0Z" fill="#B5B8BD" ></path><path d="M346.496 394.368L256 303.786667 346.496 213.333333l30.165333 30.165334-37.717333 37.802666h119.424v42.666667H336.469333l40.192 40.234667-30.165333 30.165333z" fill="#444D5A" ></path><path d="M682.666667 213.333333a85.333333 85.333333 0 0 0-85.333334 85.333334v85.333333a85.333333 85.333333 0 1 0 170.666667 0V298.666667a85.333333 85.333333 0 0 0-85.333333-85.333334z m0 42.666667a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-85.333333 0V298.666667a42.666667 42.666667 0 0 1 42.666667-42.666667zM490.666667 554.666667a85.333333 85.333333 0 0 0-85.333334 85.333333v85.333333a85.333333 85.333333 0 1 0 170.666667 0v-85.333333a85.333333 85.333333 0 0 0-85.333333-85.333333z m0 42.666666a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-85.333333 0v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667zM682.666667 554.666667a85.333333 85.333333 0 0 0-85.333334 85.333333v85.333333a85.333333 85.333333 0 1 0 170.666667 0v-85.333333a85.333333 85.333333 0 0 0-85.333333-85.333333z m0 42.666666a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-85.333333 0v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-caidan" viewBox="0 0 1024 1024"><path d="M256 213.333333h192a42.666667 42.666667 0 0 1 42.666667 42.666667v192a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333V426.666667a21.333333 21.333333 0 0 0 21.333333 21.333333H426.666667a21.333333 21.333333 0 0 0 21.333333-21.333333V277.333333A21.333333 21.333333 0 0 0 426.666667 256H277.333333z m298.666667-42.666667H768a42.666667 42.666667 0 0 1 42.666667 42.666667v192a42.666667 42.666667 0 0 1-42.666667 42.666667h-192a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333V426.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h149.333334a21.333333 21.333333 0 0 0 21.333333-21.333333V277.333333a21.333333 21.333333 0 0 0-21.333333-21.333333H597.333333z m-21.333333 277.333333H768a42.666667 42.666667 0 0 1 42.666667 42.666667V768a42.666667 42.666667 0 0 1-42.666667 42.666667h-192a42.666667 42.666667 0 0 1-42.666667-42.666667v-192a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v149.333334a21.333333 21.333333 0 0 0 21.333333 21.333333h149.333334a21.333333 21.333333 0 0 0 21.333333-21.333333V597.333333a21.333333 21.333333 0 0 0-21.333333-21.333333H597.333333z m-341.333333-42.666667h192a42.666667 42.666667 0 0 1 42.666667 42.666667V768a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667v-192a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v149.333334a21.333333 21.333333 0 0 0 21.333333 21.333333H426.666667a21.333333 21.333333 0 0 0 21.333333-21.333333V597.333333a21.333333 21.333333 0 0 0-21.333333-21.333333H277.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shujuku" viewBox="0 0 1024 1024"><path d="M256 213.333333h512a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-469.333334zM256 405.333333h512a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-469.333334z m405.333334 21.333333h21.333333a21.333333 21.333333 0 1 1 0 42.666667H682.666667a21.333333 21.333333 0 1 1 0-42.666667zM256 597.333333h512a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-469.333334z m405.333334 21.333333h21.333333a21.333333 21.333333 0 1 1 0 42.666667H682.666667a21.333333 21.333333 0 1 1 0-42.666667z m0-384h21.333333a21.333333 21.333333 0 1 1 0 42.666667H682.666667a21.333333 21.333333 0 1 1 0-42.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wubiankuang" viewBox="0 0 1024 1024"><path d="M384 810.666667v-42.666667h42.666667v42.666667zM554.666667 810.666667v-42.666667h42.666666v42.666667zM298.666667 810.666667v-42.666667h42.666666v42.666667zM469.333333 810.666667v-42.666667h42.666667v42.666667zM640 810.666667v-42.666667h42.666667v42.666667zM384 554.666667v-42.666667h42.666667v42.666667zM384 298.666667V256h42.666667v42.666667zM554.666667 298.666667V256h42.666666v42.666667zM298.666667 298.666667V256h42.666666v42.666667zM469.333333 298.666667V256h42.666667v42.666667zM640 298.666667V256h42.666667v42.666667zM725.333333 298.666667V256h42.666667v42.666667zM213.333333 298.666667V256h42.666667v42.666667zM554.666667 554.666667v-42.666667h42.666666v42.666667zM298.666667 554.666667v-42.666667h42.666666v42.666667zM469.333333 554.666667v-42.666667h42.666667v42.666667zM640 554.666667v-42.666667h42.666667v42.666667z" fill="#B5B8BD" ></path><path d="M725.333333 810.666667v-42.666667h42.666667v42.666667zM213.333333 810.666667v-42.666667h42.666667v42.666667zM725.333333 640v-42.666667h42.666667v42.666667zM213.333333 640v-42.666667h42.666667v42.666667zM725.333333 469.333333v-42.666666h42.666667v42.666666zM213.333333 469.333333v-42.666666h42.666667v42.666666zM725.333333 725.333333v-42.666666h42.666667v42.666666zM213.333333 725.333333v-42.666666h42.666667v42.666666zM725.333333 554.666667v-42.666667h42.666667v42.666667zM213.333333 554.666667v-42.666667h42.666667v42.666667zM725.333333 384V341.333333h42.666667v42.666667zM213.333333 384V341.333333h42.666667v42.666667z" fill="#B5B8BD" ></path><path d="M469.333333 640v-42.666667h42.666667v42.666667zM469.333333 469.333333v-42.666666h42.666667v42.666666zM469.333333 725.333333v-42.666666h42.666667v42.666666zM469.333333 554.666667v-42.666667h42.666667v42.666667zM469.333333 384V341.333333h42.666667v42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-bianji" viewBox="0 0 1024 1024"><path d="M642.56 363.733333l-170.88 170.88 37.76 22.613334 22.613333 37.717333 170.88-170.88-60.373333-60.330667z m30.208-30.165333l60.330667 60.330667 15.104-15.061334a21.333333 21.333333 0 0 0 0-30.165333l-30.165334-30.165333a21.333333 21.333333 0 0 0-30.165333 0l-15.104 15.104v-0.042667z m-231.253333 231.253333l-10.112 10.112v60.330667h60.330666l10.112-10.112-22.613333-37.717333-37.717333-22.613334z m291.584-291.584l60.373333 60.330667a42.666667 42.666667 0 0 1 0 60.330667l-284.032 284.032H388.736V557.226667l284.032-283.989334a42.666667 42.666667 0 0 1 60.330667 0zM554.666667 234.666667a21.333333 21.333333 0 0 1-21.333334 21.333333h-256c-11.818667 0-21.333333 9.472-21.333333 21.162667v469.674666c0 11.434667 9.557333 21.162667 21.333333 21.162667h469.333334c11.818667 0 21.333333-9.472 21.333333-21.162667V576a21.333333 21.333333 0 1 1 42.666667 0v191.872c0 23.637333-19.2 42.794667-42.453334 42.794667H255.786667A42.624 42.624 0 0 1 213.333333 767.914667V256.128C213.333333 232.490667 232.533333 213.333333 255.829333 213.333333H533.333333a21.333333 21.333333 0 0 1 21.333334 21.333334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-qingchuyangshi" viewBox="0 0 1024 1024"><path d="M214.016 722.432h593.92v42.410667H214.016v-42.410667z m578.048-312.106667l-180.693333-181.077333A53.376 53.376 0 0 0 573.738667 213.333333a45.653333 45.653333 0 0 0-32.64 13.226667l-313.941334 314.965333c-18.56 18.602667-17.322667 50.261333 2.688 70.4l68.010667 68.096h298.24l198.698667-199.338666c18.56-18.602667 17.322667-50.261333-2.730667-70.357334z m-213.546667 227.242667H315.434667L259.84 581.888c-3.968-4.010667-4.053333-9.088-2.730667-10.453333L430.08 398.08l193.92 193.92-45.44 45.568z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shanchu" viewBox="0 0 1024 1024"><path d="M320 341.333333v426.581334A42.666667 42.666667 0 0 0 362.581333 810.666667h298.88a42.666667 42.666667 0 0 0 42.538667-42.794667V341.333333h42.666667a21.333333 21.333333 0 1 0 0-42.666666h-469.333334a21.333333 21.333333 0 0 0 0 42.666666h42.666667zM426.666667 234.666667c0-11.776 9.642667-21.333333 21.248-21.333334h128.170666c11.690667 0 21.248 9.472 21.248 21.333334 0 11.776-9.642667 21.333333-21.248 21.333333h-128.170666A21.248 21.248 0 0 1 426.666667 234.666667zM362.666667 362.496A21.333333 21.333333 0 0 1 384.128 341.333333h255.701333c11.904 0 21.504 9.728 21.504 21.162667v384.341333a21.333333 21.333333 0 0 1-21.504 21.162667H384.128c-11.733333 0-21.290667-9.386667-21.461333-21.162667V362.496z m42.666666 42.837333a21.290667 21.290667 0 1 1 42.666667 0v298.666667a21.290667 21.290667 0 1 1-42.666667 0v-298.666667z m85.333334 0a21.290667 21.290667 0 1 1 42.666666 0v298.666667a21.290667 21.290667 0 1 1-42.666666 0v-298.666667z m85.333333 0a21.290667 21.290667 0 1 1 42.666667 0v298.666667a21.290667 21.290667 0 1 1-42.666667 0v-298.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenjuzhongduiqi" viewBox="0 0 1024 1024"><path d="M234.666667 298.666667h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 1 1 0-42.666666zM341.333333 426.666667h341.333334a21.333333 21.333333 0 1 1 0 42.666666H341.333333a21.333333 21.333333 0 0 1 0-42.666666z m-106.666666 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666zM341.333333 682.666667h341.333334a21.333333 21.333333 0 1 1 0 42.666666H341.333333a21.333333 21.333333 0 0 1 0-42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dayin" viewBox="0 0 1024 1024"><path d="M743.125333 341.333333c35.669333 0 64.384 28.885333 67.285334 65.024l0.256 6.101334V682.666667h-149.76v-42.666667H768V412.458667c0-14.592-9.514667-26.154667-21.333333-28.16L743.168 384H280.874667c-12.16 0-22.784 10.24-24.576 24.149333l-0.298667 4.266667V640h127.36v42.666667H213.333333V412.458667c0-36.906667 26.794667-67.712 61.653334-70.826667L280.874667 341.333333h462.250666z" fill="#444D5A" ></path><path d="M682.666667 213.333333H341.333333v170.666667h341.333334V213.333333z m-42.666667 42.666667v85.333333H384V256h256zM682.666667 554.666667v256H341.333333v-256h341.333334z m-42.666667 42.666666H384v170.666667h256v-170.666667z" fill="#444D5A" ></path><path d="M341.333333 426.666667h128v42.666666H341.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenfenge" viewBox="0 0 1024 1024"><path d="M544.896 389.717333h110.762667v46.933334c6.698667 6.613333 15.658667 6.613333 22.357333 0l84.949333-55.125334c6.698667-4.437333 6.698667-13.226667 0-19.84l-84.906666-57.386666c-6.741333-6.613333-15.701333-6.613333-22.4 0v41.258666h-133.12l-89.429334 154.453334H343.722667v0.128h-22.698667c-11.178667 0-22.357333 11.050667-22.357333 22.058666 0 11.050667 11.178667 22.058667 22.357333 22.058667h134.101333l-0.085333-0.128h0.426667l89.386666-154.453333h0.042667z m133.12 198.954667a15.061333 15.061333 0 0 0-22.314667 0v43.690667h-66.133333l-67.029333-110.293334-22.357334 44.117334s62.592 103.68 67.072 110.293333h88.448V721.066667a15.061333 15.061333 0 0 0 22.314667 0l84.949333-55.168c6.698667-4.437333 6.698667-13.226667 0-19.84l-84.906666-57.386667h-0.042667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-hanshu" viewBox="0 0 1024 1024"><path d="M771.072 391.253333a6.698667 6.698667 0 0 0-0.512-9.514666 6.997333 6.997333 0 0 0-4.48-1.749334h-61.354667c-1.962667 0-3.84 0.853333-5.12 2.346667l-103.893333 122.709333a6.698667 6.698667 0 0 1-11.392-1.621333l-53.674667-119.381333a6.656 6.656 0 0 0-6.144-4.010667H381.866667l0.853333-3.968 6.741333-35.712c8.874667-46.933333 32.085333-68.864 72.533334-68.864 15.658667 0 29.994667 1.450667 41.258666 4.010667l11.861334-56.490667a197.888 197.888 0 0 0-46.464-5.12c-87.296 0-132.224 37.418667-148.650667 124.458667l-7.978667 41.813333H229.632a6.698667 6.698667 0 0 0-6.613333 5.376l-9.130667 43.818667a6.826667 6.826667 0 0 0 6.570667 8.106666h79.786666l-75.264 363.52a6.826667 6.826667 0 0 0 6.570667 8.234667H287.573333c3.242667 0 5.973333-2.346667 6.570667-5.418667l75.861333-366.165333h114.773334l57.685333 117.546667a6.570667 6.570667 0 0 1-1.024 7.381333l-152.746667 171.690667a6.826667 6.826667 0 0 0 5.12 11.264h61.44c2.005333 0 3.882667-0.853333 5.162667-2.389334l104.576-123.989333a6.826667 6.826667 0 0 1 11.392 1.493333l55.594667 120.661334a6.741333 6.741333 0 0 0 6.186666 3.968h54.613334a6.784 6.784 0 0 0 6.101333-9.770667L618.325333 567.466667a6.698667 6.698667 0 0 1 1.066667-7.466667l151.722667-168.661333-0.042667-0.042667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jiangxu" viewBox="0 0 1024 1024"><path d="M430.848 666.197333H366.592V236.074667a6.656 6.656 0 0 0-6.741333-6.528h-47.36a6.656 6.656 0 0 0-6.741334 6.528v430.122666H241.493333c-5.674667 0-8.874667 6.314667-5.333333 10.538667l94.72 115.2a6.912 6.912 0 0 0 10.624 0l94.72-115.2c3.413333-4.224 0.298667-10.538667-5.376-10.538667zM582.442667 806.698667l20.992-61.098667h103.68l21.205333 61.098667h43.690667L672.64 533.333333h-34.688l-99.370667 273.365334h43.861334z m112.896-97.877334h-79.872l39.552-119.424h0.768l39.552 119.466667zM742.570667 486.698667v-39.168h-124.288l124.288-203.093334V213.333333h-169.685334v36.949334h119.04l-123.904 201.941333v34.474667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dingbuduiqi" viewBox="0 0 1024 1024"><path d="M298.666667 384h426.666666v42.666667H298.666667zM416 527.829333l90.496-90.496 90.538667 90.496-30.165334 30.165334-37.802666-37.717334v290.090667h-42.666667v-292.565333l-40.234667 40.192-30.165333-30.165334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-tupian" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 263.381334l-233.984 190.890666-118.613333-98.218666L256 704.64V768h512v-291.285333zM768 256H256v392.704l159.146667-134.954667 119.04 98.602667L768 421.674667V256zM384 341.333333a42.666667 42.666667 0 1 1 0 85.333334 42.666667 42.666667 0 0 1 0-85.333334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiangxia90" viewBox="0 0 1024 1024"><path d="M789.333333 528.213333l-213.333333 77.653334v0.64l-1.621333-0.042667L426.666667 660.224v-45.354667l106.666666-38.826666V423.637333l-106.666666-38.826666V339.456l147.498666 53.674667 1.834667 0.042666v0.64l213.333333 77.610667v56.789333z m-46.634666-28.416L576 439.125333v121.386667l166.698667-60.714667zM384 687.829333l-90.496 90.538667-90.538667-90.538667 30.165334-30.165333 37.802666 37.76V234.666667h42.666667v463.232l40.234667-40.234667 30.165333 30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shupaiwenzi" viewBox="0 0 1024 1024"><path d="M636.757333 298.666667l77.653334 213.333333h0.64l-0.042667 1.621333 53.76 147.712h-45.354667l-38.826666-106.666666h-152.405334l-38.826666 106.666666H448l53.674667-147.498666 0.042666-1.834667h0.64l77.610667-213.333333h56.789333z m-28.416 46.634666L547.669333 512h121.386667l-60.714667-166.698667zM394.368 698.496L303.786667 789.034667 213.333333 698.453333l30.165334-30.165333 37.802666 37.76V245.333333h42.666667v463.232l40.234667-40.234666 30.165333 30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-quanjiabiankuang" viewBox="0 0 1024 1024"><path d="M213.333333 810.666667V256h42.666667v554.666667zM725.333333 810.666667V256h42.666667v554.666667zM469.333333 810.666667V256h42.666667v554.666667z" fill="#444D5A" ></path><path d="M213.333333 256h554.666667v42.666667H213.333333zM213.333333 512h554.666667v42.666667H213.333333zM213.333333 768h554.666667v42.666667H213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shengxu" viewBox="0 0 1024 1024"><path d="M430.848 357.76H366.592v430.165333a6.656 6.656 0 0 1-6.741333 6.485334h-47.36a6.656 6.656 0 0 1-6.741334-6.485334V357.76H241.493333c-5.674667 0-8.874667-6.314667-5.333333-10.538667l94.72-115.2a6.912 6.912 0 0 1 10.624 0l94.72 115.2c3.413333 4.224 0.298667 10.538667-5.376 10.538667zM582.442667 486.698667l20.992-61.098667h103.68l21.205333 61.098667h43.690667L672.64 213.333333h-34.688l-99.370667 273.365334h43.861334z m112.896-97.877334h-79.872l39.552-119.424h0.768l39.552 119.466667zM742.570667 806.698667v-39.168h-124.288l124.288-203.093334V533.333333h-169.685334v36.949334h119.04l-123.904 201.941333v34.474667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-caijian" viewBox="0 0 1024 1024"><path d="M341.333333 213.333333h42.666667v469.333334H341.333333z" fill="#444D5A" ></path><path d="M810.666667 640v42.666667H341.333333v-42.666667z" fill="#444D5A" ></path><path d="M682.666667 810.666667h-42.666667V341.333333h42.666667z" fill="#444D5A" ></path><path d="M213.333333 384V341.333333h469.333334v42.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jine" viewBox="0 0 1024 1024"><path d="M658.816 256l34.986667 24.490667-124.629334 177.92h119.04v42.666666h-149.333333v85.333334h149.333333v42.666666h-149.333333v128h-42.666667v-128h-149.333333v-42.666666h149.333333v-85.333334h-149.333333v-42.666666h119.04L341.333333 280.490667 376.32 256l141.226667 201.728L658.816 256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-caidan1" viewBox="0 0 1024 1024"><path d="M256 640h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-42.666667zM682.666667 213.333333h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667h-85.333333a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-42.666667zM469.333333 640h85.333334a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666666 42.666667h-85.333334a42.666667 42.666667 0 0 1-42.666666-42.666667v-85.333333a42.666667 42.666667 0 0 1 42.666666-42.666667z m21.333334 42.666667a21.333333 21.333333 0 0 0-21.333334 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333334 21.333333h42.666666a21.333333 21.333333 0 0 0 21.333334-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333334-21.333333h-42.666666zM469.333333 213.333333h85.333334a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666666 42.666667h-85.333334a42.666667 42.666667 0 0 1-42.666666-42.666667V256a42.666667 42.666667 0 0 1 42.666666-42.666667z m21.333334 42.666667a21.333333 21.333333 0 0 0-21.333334 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333334 21.333333h42.666666a21.333333 21.333333 0 0 0 21.333334-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333334-21.333333h-42.666666z m192 384h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667h-85.333333a42.666667 42.666667 0 0 1-42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-42.666667zM469.333333 426.666667h85.333334a42.666667 42.666667 0 0 1 42.666666 42.666666v85.333334a42.666667 42.666667 0 0 1-42.666666 42.666666h-85.333334a42.666667 42.666667 0 0 1-42.666666-42.666666v-85.333334a42.666667 42.666667 0 0 1 42.666666-42.666666z m21.333334 42.666666a21.333333 21.333333 0 0 0-21.333334 21.333334v42.666666a21.333333 21.333333 0 0 0 21.333334 21.333334h42.666666a21.333333 21.333333 0 0 0 21.333334-21.333334v-42.666666a21.333333 21.333333 0 0 0-21.333334-21.333334h-42.666666zM256 426.666667h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666666v85.333334a42.666667 42.666667 0 0 1-42.666667 42.666666H256a42.666667 42.666667 0 0 1-42.666667-42.666666v-85.333334a42.666667 42.666667 0 0 1 42.666667-42.666666z m426.666667 0h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666666v85.333334a42.666667 42.666667 0 0 1-42.666667 42.666666h-85.333333a42.666667 42.666667 0 0 1-42.666667-42.666666v-85.333334a42.666667 42.666667 0 0 1 42.666667-42.666666z m21.333333 42.666666a21.333333 21.333333 0 0 0-21.333333 21.333334v42.666666a21.333333 21.333333 0 0 0 21.333333 21.333334h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333334v-42.666666a21.333333 21.333333 0 0 0-21.333333-21.333334h-42.666667z m-426.666667 0a21.333333 21.333333 0 0 0-21.333333 21.333334v42.666666a21.333333 21.333333 0 0 0 21.333333 21.333334h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333334v-42.666666a21.333333 21.333333 0 0 0-21.333333-21.333334h-42.666667zM256 213.333333h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-42.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-quxiaohebing" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256z" fill="#B5B8BD" ></path><path d="M533.333333 213.333333v170.666667h-42.666666V213.333333z" fill="#B5B8BD" ></path><path d="M405.333333 426.666667v213.333333h-42.666666v-213.333333zM533.333333 405.333333v213.333334h-42.666666v-213.333334zM661.333333 405.333333v213.333334h-42.666666v-213.333334z" fill="#444D5A" ></path><path d="M533.333333 597.333333v170.666667h-42.666666v-170.666667z" fill="#B5B8BD" ></path><path d="M810.666667 384v256H213.333333V384h597.333334z m-42.666667 42.666667H256v170.666666h512v-170.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenxiahuaxian" viewBox="0 0 1024 1024"><path d="M362.666667 256v298.666667a149.333333 149.333333 0 0 0 298.453333 8.192L661.333333 554.666667V256h42.666667v298.666667a192 192 0 0 1-383.786667 9.045333L320 554.666667V256h42.666667z" fill="#444D5A" ></path><path d="M256 768m21.333333 0l469.333334 0q21.333333 0 21.333333 21.333333l0 0q0 21.333333-21.333333 21.333334l-469.333334 0q-21.333333 0-21.333333-21.333334l0 0q0-21.333333 21.333333-21.333333Z" fill="#444D5A" ></path><path d="M256 256m21.333333 0l128 0q21.333333 0 21.333334 21.333333l0 0q0 21.333333-21.333334 21.333334l-128 0q-21.333333 0-21.333333-21.333334l0 0q0-21.333333 21.333333-21.333333Z" fill="#444D5A" ></path><path d="M597.333333 256m21.333334 0l128 0q21.333333 0 21.333333 21.333333l0 0q0 21.333333-21.333333 21.333334l-128 0q-21.333333 0-21.333334-21.333334l0 0q0-21.333333 21.333334-21.333333Z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shangbiankuang" viewBox="0 0 1024 1024"><path d="M213.333333 256h554.666667v42.666667H213.333333z" fill="#444D5A" ></path><path d="M213.333333 426.666667h42.666667v42.666666H213.333333zM213.333333 597.333333h42.666667v42.666667H213.333333zM213.333333 341.333333h42.666667v42.666667H213.333333zM213.333333 512h42.666667v42.666667H213.333333zM213.333333 682.666667h42.666667v42.666666H213.333333zM469.333333 426.666667h42.666667v42.666666h-42.666667zM725.333333 426.666667h42.666667v42.666666h-42.666667zM725.333333 597.333333h42.666667v42.666667h-42.666667zM725.333333 341.333333h42.666667v42.666667h-42.666667zM725.333333 512h42.666667v42.666667h-42.666667zM725.333333 682.666667h42.666667v42.666666h-42.666667zM725.333333 768h42.666667v42.666667h-42.666667zM469.333333 597.333333h42.666667v42.666667h-42.666667zM469.333333 341.333333h42.666667v42.666667h-42.666667zM469.333333 512h42.666667v42.666667h-42.666667zM469.333333 682.666667h42.666667v42.666666h-42.666667zM213.333333 768h42.666667v42.666667H213.333333zM384 768h42.666667v42.666667H384zM554.666667 768h42.666666v42.666667h-42.666666zM298.666667 768h42.666666v42.666667H298.666667zM469.333333 768h42.666667v42.666667h-42.666667zM640 768h42.666667v42.666667h-42.666667zM384 512h42.666667v42.666667H384zM554.666667 512h42.666666v42.666667h-42.666666zM298.666667 512h42.666666v42.666667H298.666667z" fill="#B5B8BD" ></path><path d="M469.333333 512h42.666667v42.666667h-42.666667zM640 512h42.666667v42.666667h-42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-dingwei" viewBox="0 0 1024 1024"><path d="M618.666667 723.584V661.333333a21.333333 21.333333 0 1 1 42.666666 0v62.250667a128.128 128.128 0 0 0 104.917334-104.917333H704a21.333333 21.333333 0 1 1 0-42.666667h62.250667a128.128 128.128 0 0 0-104.917334-104.874667V533.333333a21.333333 21.333333 0 1 1-42.666666 0v-62.208a128.085333 128.085333 0 0 0-104.874667 104.874667H576a21.333333 21.333333 0 0 1 0 42.666667h-62.208a128.128 128.128 0 0 0 104.874667 104.917333z m149.333333-296.96a213.12 213.12 0 0 0-42.666667-24.874667V277.333333a21.333333 21.333333 0 0 0-21.333333-21.333333h-426.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v341.333334a21.333333 21.333333 0 0 0 21.333333 21.333333h153.6c2.986667 14.848 7.594667 29.098667 13.482667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667h469.333333a42.666667 42.666667 0 0 1 42.666667 42.666667v170.666667zM640 768a170.666667 170.666667 0 1 1 0-341.333333 170.666667 170.666667 0 0 1 0 341.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-sizhoujiabiankuang" viewBox="0 0 1024 1024"><path d="M213.333333 810.666667V256h42.666667v554.666667zM725.333333 810.666667V256h42.666667v554.666667z" fill="#444D5A" ></path><path d="M213.333333 256h554.666667v42.666667H213.333333zM213.333333 768h554.666667v42.666667H213.333333z" fill="#444D5A" ></path><path d="M384 554.666667v-42.666667h42.666667v42.666667zM554.666667 554.666667v-42.666667h42.666666v42.666667zM298.666667 554.666667v-42.666667h42.666666v42.666667zM469.333333 554.666667v-42.666667h42.666667v42.666667zM640 554.666667v-42.666667h42.666667v42.666667zM469.333333 640v-42.666667h42.666667v42.666667zM469.333333 469.333333v-42.666666h42.666667v42.666666zM469.333333 725.333333v-42.666666h42.666667v42.666666z" fill="#B5B8BD" ></path><path d="M469.333333 554.666667v-42.666667h42.666667v42.666667zM469.333333 384V341.333333h42.666667v42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-cebianlanshouqi" viewBox="0 0 1024 1024"><path d="M256 320a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 1 1 0 42.666666h-469.333334a21.290667 21.290667 0 0 1-21.333333-21.333333zM256 512c0-11.776 9.6-21.333333 21.461333-21.333333h277.077334a21.333333 21.333333 0 1 1 0 42.666666H277.504A21.333333 21.333333 0 0 1 256 512z m0 192a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 1 1 0 42.666666h-469.333334a21.290667 21.290667 0 0 1-21.333333-21.333333z m368.896-283.562667a21.333333 21.333333 0 0 1 30.165333-30.165333l106.666667 106.666667a21.333333 21.333333 0 0 1 0 30.165333l-106.666667 106.666667a21.333333 21.333333 0 0 1-30.165333-30.165334L716.501333 512l-91.562666-91.605333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-hebing" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256z" fill="#444D5A" ></path><path d="M389.162667 426.666667l90.538666 90.496-90.538666 90.538666-30.165334-30.165333 37.802667-37.845333-119.466667 0.042666v-42.666666l121.856-0.042667-40.192-40.192 30.165334-30.165333zM645.162667 426.666667L554.666667 517.162667l90.496 90.538666 30.165333-30.165333-37.76-37.845333 119.466667 0.042666v-42.666666l-121.856-0.042667 40.149333-40.192-30.165333-30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiangshangqingxie" viewBox="0 0 1024 1024"><path d="M290.944 289.365333l205.738667 95.914667 0.469333-0.426667 1.109333 1.152 142.506667 66.432-32.128 32.085334-102.826667-47.957334-107.818666 107.733334 48 102.912-32.085334 32.042666-66.346666-142.250666-1.28-1.28 0.469333-0.512-96-205.696 40.192-40.149334z m12.885333 53.034667l74.965334 160.810667 85.845333-85.845334L303.786667 342.4zM690.432 463.104h128v128h-42.666667v-53.418667l-325.845333 325.802667-30.165333-30.165333 327.552-327.552h-56.874667v-42.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shuipingduiqi" viewBox="0 0 1024 1024"><path d="M725.333333 533.333333H298.666667v-42.666666h426.666666zM426.666667 634.496l90.496-90.496 90.538666 90.496-30.165333 30.165333-39.936-39.850666v121.557333h-42.666667v-119.765333l-38.101333 38.058666-30.165333-30.165333zM426.666667 389.162667l90.496 90.538666 90.538666-90.538666-30.165333-30.165334-39.936 39.893334V277.333333h-42.666667v119.765334l-38.101333-38.101334-30.165333 30.165334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenshanchuxian" viewBox="0 0 1024 1024"><path d="M298.666667 256h426.666666v42.666667H298.666667z" fill="#444D5A" ></path><path d="M533.290667 554.666667l0.042666 192h-42.666666l-0.042667-192h42.666667z m0.042666-277.333334l-0.042666 234.666667h-42.666667l0.042667-234.666667h42.666666zM320 256v85.333333h-42.666667V256zM746.666667 256v85.333333h-42.666667V256z" fill="#444D5A" ></path><path d="M256 469.333333h512v42.666667H256zM426.666667 725.333333h170.666666v42.666667h-170.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenyouduiqi" viewBox="0 0 1024 1024"><path d="M234.666667 298.666667h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 1 1 0-42.666666z m213.333333 128h341.333333a21.333333 21.333333 0 1 1 0 42.666666h-341.333333a21.333333 21.333333 0 0 1 0-42.666666z m-213.333333 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666z m213.333333 128h341.333333a21.333333 21.333333 0 1 1 0 42.666666h-341.333333a21.333333 21.333333 0 0 1 0-42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-qianjin" viewBox="0 0 1024 1024"><path d="M287.018667 419.328h310.997333v42.666667H286.72l84.48 84.437333a21.333333 21.333333 0 1 1-30.208 30.165333l-120.746667-120.704a21.248 21.248 0 0 1 0-30.165333l120.746667-120.661333a21.333333 21.333333 0 0 1 30.165333 30.165333L287.018667 419.328z m524.330666 213.333333a213.333333 213.333333 0 0 0-213.333333-213.333333v42.666667a170.666667 170.666667 0 0 1 170.666667 170.666666h42.666666z m0 0h-42.666666v64a21.333333 21.333333 0 1 0 42.666666 0v-64z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-tubiao" viewBox="0 0 1024 1024"><path d="M256 213.333333H213.333333v597.333334h597.333334v-42.666667H256z" fill="#444D5A" ></path><path d="M490.666667 343.466667V554.666667h185.6c-19.2 72.533333-85.333333 128-164.266667 128-93.866667 0-170.666667-76.8-170.666667-170.666667 0-87.466667 66.133333-157.866667 149.333334-168.533333M512 298.666667c-117.333333 0-213.333333 96-213.333333 213.333333s96 213.333333 213.333333 213.333333 213.333333-96 213.333333-213.333333h-192V298.666667H512z" fill="#444D5A" ></path><path d="M618.666667 260.266667c83.2 14.933333 134.4 74.666667 147.2 166.4H618.666667V260.266667m-42.666667-46.933334v256H810.666667c0-149.333333-85.333333-256-234.666667-256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-youbiankuang" viewBox="0 0 1024 1024"><path d="M768 256v554.666667h-42.666667V256z" fill="#444D5A" ></path><path d="M597.333333 256v42.666667h-42.666666V256zM426.666667 256v42.666667H384V256zM682.666667 256v42.666667h-42.666667V256zM512 256v42.666667h-42.666667V256zM341.333333 256v42.666667H298.666667V256z" fill="#B5B8BD" ></path><path d="M597.333333 512v42.666667h-42.666666v-42.666667z" fill="#B5B8BD" ></path><path d="M597.333333 768v42.666667h-42.666666v-42.666667zM426.666667 768v42.666667H384v-42.666667zM682.666667 768v42.666667h-42.666667v-42.666667zM512 768v42.666667h-42.666667v-42.666667zM341.333333 768v42.666667H298.666667v-42.666667zM256 768v42.666667H213.333333v-42.666667z" fill="#B5B8BD" ></path><path d="M426.666667 512v42.666667H384v-42.666667zM682.666667 512v42.666667h-42.666667v-42.666667zM512 512v42.666667h-42.666667v-42.666667zM341.333333 512v42.666667H298.666667v-42.666667z" fill="#B5B8BD" ></path><path d="M256 256v42.666667H213.333333V256zM256 426.666667v42.666666H213.333333v-42.666666zM256 597.333333v42.666667H213.333333v-42.666667zM256 341.333333v42.666667H213.333333V341.333333zM256 512v42.666667H213.333333v-42.666667zM256 682.666667v42.666666H213.333333v-42.666666z" fill="#B5B8BD" ></path><path d="M512 426.666667v42.666666h-42.666667v-42.666666zM512 597.333333v42.666667h-42.666667v-42.666667zM512 341.333333v42.666667h-42.666667V341.333333zM512 512v42.666667h-42.666667v-42.666667zM512 682.666667v42.666666h-42.666667v-42.666666z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-baifenhao" viewBox="0 0 1024 1024"><path d="M653.525333 213.333333l36.949334 21.333334-320 554.24-36.949334-21.333334L653.525333 213.333333zM682.666667 469.333333c71.68 0 128 67.626667 128 149.333334S754.346667 768 682.666667 768s-128-67.626667-128-149.333333 56.32-149.333333 128-149.333334z m0 42.666667c-46.165333 0-85.333333 46.976-85.333334 106.666667s39.168 106.666667 85.333334 106.666666c46.165333 0 85.333333-46.976 85.333333-106.666666s-39.168-106.666667-85.333333-106.666667zM341.333333 234.666667c71.68 0 128 67.626667 128 149.333333s-56.32 149.333333-128 149.333333S213.333333 465.706667 213.333333 384s56.32-149.333333 128-149.333333z m0 42.666666C295.168 277.333333 256 324.309333 256 384s39.168 106.666667 85.333333 106.666667c46.165333 0 85.333333-46.976 85.333334-106.666667s-39.168-106.666667-85.333334-106.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-geshishua" viewBox="0 0 1024 1024"><path d="M725.333333 213.333333v85.333334h85.333334v234.666666h-298.666667V597.333333h21.333333v213.333334h-85.333333v-213.333334h21.333333v-106.666666h298.666667V341.333333h-42.666667v85.333334H213.333333V213.333333h512z m-42.666666 42.666667H256v128h426.666667V256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-baocun" viewBox="0 0 1024 1024"><path d="M341.333333 256H277.333333a21.333333 21.333333 0 0 0-21.333333 21.333333v469.333334a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 0 0 21.333333-21.333333v-469.333334a21.333333 21.333333 0 0 0-21.333333-21.333333H682.666667v213.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H384a42.666667 42.666667 0 0 1-42.666667-42.666667V256zM256 213.333333h512a42.666667 42.666667 0 0 1 42.666667 42.666667v512a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m128 42.666667v192a21.333333 21.333333 0 0 0 21.333333 21.333333h213.333334a21.333333 21.333333 0 0 0 21.333333-21.333333V256H384z m192 42.666667a21.333333 21.333333 0 0 1 21.333333 21.333333v85.333333a21.333333 21.333333 0 0 1-42.666666 0v-85.333333a21.333333 21.333333 0 0 1 21.333333-21.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shujuyanzheng" viewBox="0 0 1024 1024"><path d="M764.330667 592.170667l30.165333 30.165333L734.165333 682.666667l60.330667 60.330666-30.165333 30.165334-60.330667-60.330667-60.330667 60.330667-30.165333-30.165334L673.834667 682.666667l-60.330667-60.330667 30.165333-30.165333 60.330667 60.330666 60.330667-60.330666zM725.333333 512v42.666667H256v128h256v42.666666H213.333333v-213.333333h512z m47.829334-209.664l30.165333 30.165333L682.666667 453.12l-30.165334 30.165333-90.496-90.453333 30.165334-30.208 60.330666 60.330667 120.661334-120.661334zM725.333333 256v42.666667H256v128h256v42.666666H213.333333V256h512z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jieduan" viewBox="0 0 1024 1024"><path d="M767.829333 213.333333h42.496v597.333334h-42.496z" fill="#B5B8BD" ></path><path d="M767.146667 553.216h-384v-42.496h384v42.496zM213.333333 213.333333h84.992v597.333334H213.333333V213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-geshitiaojian" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 320h-106.666667V768H768v-234.666667z m-405.376 0h-106.666667V768h106.666667v-234.666667z m256.042667 86.784L445.482667 768H618.666667v-147.882667z m0-162.346666l-213.376 179.968v108.885333l213.376-179.072v-109.781333z m0-163.669334l-213.333334 179.029334v108.885333l213.333334-179.072V294.101333zM768 256h-103.936l-2.730667 2.304V490.666667H768V256zM362.666667 256H256v234.666667h106.666667V256z m235.008 0H405.333333v161.408L597.674667 256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zidonghuanhang" viewBox="0 0 1024 1024"><path d="M213.333333 213.333333h85.12v597.333334H213.333333V213.333333z m225.450667 477.44l25.557333-21.333333-72.362666-63.786667 72.362666-63.872-25.557333-21.248-93.610667 80.853334h4.266667-4.266667l93.610667 89.386666z" fill="#444D5A" ></path><path d="M768 213.333333h42.581333v597.333334H768z" fill="#B5B8BD" ></path><path d="M540.928 367.274667H391.978667v42.581333h148.949333c59.605333 0 106.410667 38.314667 106.410667 85.12s-46.805333 85.12-106.410667 85.12H391.978667v42.581333h148.949333c85.12 0 157.482667-55.338667 157.482667-127.701333s-72.362667-127.701333-157.44-127.701333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-cebianlanzhankai" viewBox="0 0 1024 1024"><path d="M256 320a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 1 1 0 42.666666h-469.333334a21.290667 21.290667 0 0 1-21.333333-21.333333z m192 192c0-11.776 9.557333-21.333333 21.461333-21.333333h277.034667a21.333333 21.333333 0 1 1 0 42.666666h-277.034667a21.333333 21.333333 0 0 1-21.461333-21.333333zM256 704a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 1 1 0 42.666666h-469.333334a21.290667 21.290667 0 0 1-21.333333-21.333333z m143.061333-283.562667L307.541333 512l91.605334 91.562667a21.333333 21.333333 0 0 1-30.165334 30.165333l-106.666666-106.666667a21.333333 21.333333 0 0 1 0-30.165333l106.666666-106.666667a21.333333 21.333333 0 0 1 30.165334 30.165334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shaixuan2" viewBox="0 0 1024 1024"><path d="M736 213.333333H328.533333C288 213.333333 256 245.333333 256 285.866667c0 17.066667 6.4 34.133333 17.066667 46.933333 0 2.133333 2.133333 2.133333 2.133333 4.266667l160 160v168.533333c0 6.4 2.133333 10.666667 6.4 14.933333l145.066667 123.733334c4.266667 2.133333 8.533333 4.266667 12.8 4.266666 6.4 0 10.666667-2.133333 14.933333-6.4 4.266667-4.266667 4.266667-10.666667 4.266667-14.933333V503.466667l170.666666-166.4 2.133334-2.133334c10.666667-12.8 17.066667-29.866667 17.066666-46.933333 0-42.666667-32-74.666667-72.533333-74.666667z m23.466667 93.866667s-2.133333 2.133333 0 0l-172.8 172.8c-4.266667 4.266667-6.4 8.533333-6.4 14.933333v251.733334l-104.533334-87.466667V490.666667c0-6.4-2.133333-10.666667-6.4-14.933334l-162.133333-166.4-2.133333-2.133333c-6.4-6.4-8.533333-12.8-8.533334-21.333333 0-17.066667 14.933333-32 32-32h407.466667c17.066667 0 32 14.933333 32 32 0 8.533333-4.266667 14.933333-8.533333 21.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiangxiaqingxie" viewBox="0 0 1024 1024"><path d="M755.968 312.277333l-95.914667 205.738667 0.426667 0.469333-1.152 1.109334-66.432 142.506666-32.085333-32.128 47.957333-102.826666-107.733333-107.818667-102.912 48-32.042667-32.085333 142.250667-66.346667 1.28-1.28 0.512 0.469333 205.696-96 40.149333 40.192z m-53.034667 12.885334l-160.810666 74.965333 85.845333 85.845333 74.965333-160.810666zM582.229333 711.765333v128h-128v-42.666666h53.418667l-325.802667-325.845334 30.165334-30.165333 327.552 327.552v-56.874667h42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-yichu" viewBox="0 0 1024 1024"><path d="M256 213.333333h85.333333v597.333334H256z" fill="#444D5A" ></path><path d="M711.466667 642.688l-26.154667-26.154667 89.6-85.845333H256v-37.376h518.954667l-89.6-85.845333 26.112-26.112L842.154667 512z" fill="#444D5A" ></path><path d="M573.354667 213.333333h42.666666v242.688h-42.666666V213.333333z m0 354.688h42.666666V810.666667h-42.666666v-242.688z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-chuizhihebing" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256z" fill="#444D5A" ></path><path d="M640 213.333333v597.333334h-42.666667V213.333333zM426.666667 213.333333v597.333334H384V213.333333z" fill="#444D5A" ></path><path d="M597.034667 591.829333l-90.538667 90.538667L416 591.786667l30.165333-30.165334 37.802667 37.76V352h42.666667v249.898667l40.234666-40.234667 30.165334 30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenfensanduiqi" viewBox="0 0 1024 1024"><path d="M234.666667 298.666667h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 1 1 0-42.666666z m0 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666z m0 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666z m0 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zuobiankuang" viewBox="0 0 1024 1024"><path d="M213.333333 810.666667V256h42.666667v554.666667z" fill="#444D5A" ></path><path d="M384 810.666667v-42.666667h42.666667v42.666667zM554.666667 810.666667v-42.666667h42.666666v42.666667zM298.666667 810.666667v-42.666667h42.666666v42.666667zM469.333333 810.666667v-42.666667h42.666667v42.666667zM640 810.666667v-42.666667h42.666667v42.666667z" fill="#B5B8BD" ></path><path d="M384 554.666667v-42.666667h42.666667v42.666667zM554.666667 554.666667v-42.666667h42.666666v42.666667zM298.666667 554.666667v-42.666667h42.666666v42.666667zM469.333333 554.666667v-42.666667h42.666667v42.666667zM640 554.666667v-42.666667h42.666667v42.666667zM469.333333 640v-42.666667h42.666667v42.666667zM469.333333 469.333333v-42.666666h42.666667v42.666666zM469.333333 725.333333v-42.666666h42.666667v42.666666z" fill="#B5B8BD" ></path><path d="M469.333333 554.666667v-42.666667h42.666667v42.666667zM469.333333 384V341.333333h42.666667v42.666667z" fill="#B5B8BD" ></path><path d="M384 298.666667V256h42.666667v42.666667zM554.666667 298.666667V256h42.666666v42.666667zM298.666667 298.666667V256h42.666666v42.666667zM469.333333 298.666667V256h42.666667v42.666667zM640 298.666667V256h42.666667v42.666667zM725.333333 298.666667V256h42.666667v42.666667z" fill="#B5B8BD" ></path><path d="M725.333333 810.666667v-42.666667h42.666667v42.666667zM725.333333 640v-42.666667h42.666667v42.666667zM725.333333 469.333333v-42.666666h42.666667v42.666666zM725.333333 725.333333v-42.666666h42.666667v42.666666zM725.333333 554.666667v-42.666667h42.666667v42.666667zM725.333333 384V341.333333h42.666667v42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-fenyechakan" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v42.666667h-170.709334L640 768h170.666667v42.666667h-213.333334V213.333333h213.333334z m-384 0l-0.042667 554.666667H426.666667v42.666667H213.333333v-42.666667h170.624L384 256H213.333333V213.333333h213.333334z m106.666666 512v85.333334h-42.666666v-85.333334h42.666666z m0-170.666666v85.333333h-42.666666v-85.333333h42.666666z m0-170.666667v85.333333h-42.666666V384h42.666666z m0-170.666667v85.333334h-42.666666V213.333333h42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-yunhang" viewBox="0 0 1024 1024"><path d="M268.032 523.434667l60.373333-60.330667 211.2 211.2-60.373333 60.330667z" fill="#70BC64" ></path><path d="M780.928 312.234667l60.373333 60.330666-331.904 331.861334-60.330666-60.330667z" fill="#70BC64" ></path></symbol><symbol id="luckysheet-iconfont-lie" viewBox="0 0 1024 1024"><path d="M234.666667 832v-597.333333h42.666666v597.333333zM405.333333 832v-597.333333h42.666667v597.333333zM576 832v-597.333333h42.666667v597.333333zM746.666667 832v-597.333333h42.666666v597.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-quanping" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256zM341.333333 597.333333v85.376L426.666667 682.666667v42.666666H298.666667v-128h42.666666z m384 0v128h-128v-42.666666h85.376L682.666667 597.333333h42.666666z m-298.666666-298.666666v42.666666l-85.333334-0.042666V426.666667H298.666667V298.666667h128z m298.666666 0v128h-42.666666l0.042666-85.333334H597.333333V298.666667h128z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shaixuan" viewBox="0 0 1024 1024"><path d="M736 213.333333H328.533333C288 213.333333 256 245.333333 256 285.866667c0 17.066667 6.4 34.133333 17.066667 46.933333 0 2.133333 2.133333 2.133333 2.133333 4.266667l160 160v168.533333c0 6.4 2.133333 10.666667 6.4 14.933333l145.066667 123.733334c4.266667 2.133333 8.533333 4.266667 12.8 4.266666 6.4 0 10.666667-2.133333 14.933333-6.4 4.266667-4.266667 4.266667-10.666667 4.266667-14.933333V503.466667l170.666666-166.4 2.133334-2.133334c10.666667-12.8 17.066667-29.866667 17.066666-46.933333 0-42.666667-32-74.666667-72.533333-74.666667z m23.466667 93.866667s-2.133333 2.133333 0 0l-172.8 172.8c-4.266667 4.266667-6.4 8.533333-6.4 14.933333v251.733334l-104.533334-87.466667V490.666667c0-6.4-2.133333-10.666667-6.4-14.933334l-162.133333-166.4-2.133333-2.133333c-6.4-6.4-8.533333-12.8-8.533334-21.333333 0-17.066667 14.933333-32 32-32h407.466667c17.066667 0 32 14.933333 32 32 0 8.533333-4.266667 14.933333-8.533333 21.333333z" fill="#444D5A" ></path><path d="M688.213333 378.410667l-101.546666 101.589333c-4.266667 4.266667-6.4 8.533333-6.4 14.933333v251.733334l-104.533334-87.466667V490.666667c0-6.4-2.133333-10.666667-6.4-14.933334L403.626667 408.32l284.586666-29.909333z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-gengxin" viewBox="0 0 1024 1024"><path d="M358.101333 256A298.666667 298.666667 0 0 0 512 810.666667a21.333333 21.333333 0 1 0 0-42.666667A256 256 0 0 1 405.333333 279.210667V363.093333A21.333333 21.333333 0 0 0 426.666667 384c11.776 0 21.333333-9.130667 21.333333-20.906667V234.24a20.565333 20.565333 0 0 0-6.229333-14.634667l0.042666-0.128A20.650667 20.650667 0 0 0 427.050667 213.333333H298.24a21.333333 21.333333 0 0 0-20.906667 21.333334c0 11.776 9.173333 21.333333 20.906667 21.333333h59.818667z m307.797334 512A298.666667 298.666667 0 0 0 512 213.333333a21.333333 21.333333 0 0 0 0 42.666667 256 256 0 0 1 106.666667 488.789333V660.906667A21.333333 21.333333 0 0 0 597.333333 640c-11.776 0-21.333333 9.130667-21.333333 20.906667v128.810666a20.48 20.48 0 0 0 6.229333 14.634667l-0.042666 0.170667a20.650667 20.650667 0 0 0 14.762666 6.144h128.768a21.333333 21.333333 0 0 0 20.949334-21.333334c0-11.776-9.173333-21.333333-20.906667-21.333333h-59.861333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-qingchu" viewBox="0 0 1024 1024"><path d="M330.965333 270.634667l422.4 422.4-60.330666 60.330666-422.4-422.4z" fill="#E15A5A" ></path><path d="M753.365333 330.965333l-422.4 422.4-60.330666-60.330666 422.4-422.4z" fill="#E15A5A" ></path></symbol><symbol id="luckysheet-iconfont-hang" viewBox="0 0 1024 1024"><path d="M213.333333 256h597.333334v42.666667H213.333333zM213.333333 426.666667h597.333334v42.666666H213.333333zM213.333333 597.333333h597.333334v42.666667H213.333333zM213.333333 768h597.333334v42.666667H213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zhushi" viewBox="0 0 1024 1024"><path d="M352 490.666667a32 32 0 1 0 64 0 32 32 0 0 0-64 0z m128 0a32 32 0 1 0 64 0 32 32 0 0 0-64 0z m128 0a32 32 0 1 0 64 0 32 32 0 0 0-64 0z" fill="#444D5A" ></path><path d="M768 298.666667H256c-23.466667 0-42.666667 19.2-42.666667 42.666666v298.666667c0 23.466667 19.2 42.666667 42.666667 42.666667h106.666667v128l128-128H768c23.466667 0 42.666667-19.2 42.666667-42.666667V341.333333c0-23.466667-19.2-42.666667-42.666667-42.666666z m0 320c0 12.8-8.533333 21.333333-21.333333 21.333333H469.333333l-64 64V640h-128c-12.8 0-21.333333-8.533333-21.333333-21.333333v-256c0-12.8 8.533333-21.333333 21.333333-21.333334h469.333334c12.8 0 21.333333 8.533333 21.333333 21.333334v256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jian" viewBox="0 0 1024 1024"><path d="M213.333333 469.333333h597.333334v85.333334H213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jisuan" viewBox="0 0 1024 1024"><path d="M774.058667 213.333333v42.666667H310.784l236.288 256-236.330667 256h463.317334v42.666667H213.333333l275.669334-298.666667L213.333333 213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jia" viewBox="0 0 1024 1024"><path d="M213.333333 469.333333h597.333334v85.333334H213.333333z" fill="#444D5A" ></path><path d="M554.666667 213.333333v597.333334h-85.333334V213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dibuduiqi" viewBox="0 0 1024 1024"><path d="M725.333333 725.333333H298.666667v-42.666666h426.666666zM608 581.504l-90.496 90.496-90.538667-90.496 30.165334-30.165333 37.802666 37.717333V298.965333h42.666667v292.565334l40.234667-40.192 30.165333 30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiangshang90" viewBox="0 0 1024 1024"><path d="M789.333333 495.786667l-213.333333-77.653334v-0.64l-1.621333 0.042667L426.666667 363.776v45.354667l106.666666 38.826666v152.405334l-106.666666 38.826666v45.354667l147.498666-53.674667 1.834667-0.042666v-0.64l213.333333-77.610667V495.786667z m-46.634666 28.416L576 584.874667v-121.386667l166.698667 60.714667zM384 336.170667L293.504 245.632 202.965333 336.213333l30.165334 30.165334 37.802666-37.76V789.333333h42.666667V326.101333l40.234667 40.234667L384 336.170667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wuxuanzhuang" viewBox="0 0 1024 1024"><path d="M549.546667 213.333333l77.653333 213.333334h0.64l-0.042667 1.621333 53.76 147.712h-45.354666l-38.826667-106.666667h-152.405333l-38.826667 106.666667H360.789333l53.674667-147.498667 0.042667-1.834666h0.64l77.610666-213.333334h56.789334z m-28.416 46.634667L460.458667 426.666667h121.386666l-60.714666-166.698667zM709.162667 618.666667l90.538666 90.496-90.538666 90.538666-30.165334-30.165333 37.76-37.802667H256v-42.666666h463.232l-40.234667-40.234667 30.165334-30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xianshiyincangwangge" viewBox="0 0 1024 1024"><path d="M256 256h554.666667v42.666667H256z" fill="#444D5A" ></path><path d="M298.666667 256v554.666667H256V256zM810.666667 256v554.666667h-42.666667V256zM469.333333 256v554.666667h-42.666666V256zM640 256v554.666667h-42.666667V256z" fill="#444D5A" ></path><path d="M256 426.666667h554.666667v42.666666H256zM256 597.333333h554.666667v42.666667H256zM256 768h554.666667v42.666667H256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dongjie" viewBox="0 0 1024 1024"><path d="M256.426667 256.426667h255.317333v553.130666H256.426667z" fill="#B5B8BD" ></path><path d="M809.557333 213.930667v595.626666H213.930667V213.930667h595.626666z m-42.538666 42.538666H256.426667v510.549334h510.549333V256.426667z" fill="#444D5A" ></path><path d="M490.453333 256.426667h42.538667v510.592h-42.538667z" fill="#444D5A" ></path><path d="M256.426667 532.992v-42.538667h510.592v42.538667z" fill="#444D5A" ></path><path d="M256.384 226.261333l264.192 264.192-30.122667 30.08-264.192-264.192 30.122667-30.08z m-30.122667 317.184l30.122667-30.122666 264.192 264.192-30.122667 30.08-264.192-264.149334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenzuoduiqi" viewBox="0 0 1024 1024"><path d="M234.666667 298.666667h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 1 1 0-42.666666z m0 128h341.333333a21.333333 21.333333 0 0 1 0 42.666666h-341.333333a21.333333 21.333333 0 0 1 0-42.666666z m0 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666z m0 128h341.333333a21.333333 21.333333 0 0 1 0 42.666666h-341.333333a21.333333 21.333333 0 0 1 0-42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-houtui" viewBox="0 0 1024 1024"><path d="M737.664 419.328H426.666667v42.666667h311.296l-84.48 84.437333a21.333333 21.333333 0 0 0 30.208 30.165333l120.746666-120.704a21.290667 21.290667 0 0 0 0-30.165333l-120.746666-120.661333a21.333333 21.333333 0 0 0-30.165334 30.165333l84.138667 84.096zM213.333333 632.661333a213.333333 213.333333 0 0 1 213.333334-213.333333v42.666667a170.666667 170.666667 0 0 0-170.666667 170.666666H213.333333z m0 0h42.666667v64a21.333333 21.333333 0 0 1-42.666667 0v-64z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shuipinghebing" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256z" fill="#444D5A" ></path><path d="M810.666667 384v256H213.333333V384h597.333334z m-42.666667 42.666667H256v170.666666h512v-170.666666z" fill="#444D5A" ></path><path d="M581.162667 426.666667l90.538666 90.496-90.538666 90.538666-30.165334-30.165333 37.76-37.802667H341.333333v-42.666666h249.898667l-40.234667-40.234667 30.165334-30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiabiankuang" viewBox="0 0 1024 1024"><path d="M768 810.666667H213.333333v-42.666667h554.666667z" fill="#444D5A" ></path><path d="M768 640h-42.666667v-42.666667h42.666667zM768 469.333333h-42.666667v-42.666666h42.666667zM768 725.333333h-42.666667v-42.666666h42.666667zM768 554.666667h-42.666667v-42.666667h42.666667zM768 384h-42.666667V341.333333h42.666667z" fill="#B5B8BD" ></path><path d="M512 640h-42.666667v-42.666667h42.666667z" fill="#B5B8BD" ></path><path d="M256 640H213.333333v-42.666667h42.666667zM256 469.333333H213.333333v-42.666666h42.666667zM256 725.333333H213.333333v-42.666666h42.666667zM256 554.666667H213.333333v-42.666667h42.666667zM256 384H213.333333V341.333333h42.666667zM256 298.666667H213.333333V256h42.666667z" fill="#B5B8BD" ></path><path d="M512 469.333333h-42.666667v-42.666666h42.666667zM512 725.333333h-42.666667v-42.666666h42.666667zM512 554.666667h-42.666667v-42.666667h42.666667zM512 384h-42.666667V341.333333h42.666667z" fill="#B5B8BD" ></path><path d="M768 298.666667h-42.666667V256h42.666667zM597.333333 298.666667h-42.666666V256h42.666666zM426.666667 298.666667H384V256h42.666667zM682.666667 298.666667h-42.666667V256h42.666667zM512 298.666667h-42.666667V256h42.666667zM341.333333 298.666667H298.666667V256h42.666666z" fill="#B5B8BD" ></path><path d="M597.333333 554.666667h-42.666666v-42.666667h42.666666zM426.666667 554.666667H384v-42.666667h42.666667zM682.666667 554.666667h-42.666667v-42.666667h42.666667zM512 554.666667h-42.666667v-42.666667h42.666667zM341.333333 554.666667H298.666667v-42.666667h42.666666z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-shezhi" viewBox="0 0 1024 1024"><path d="M794.496 425.685333a112.341333 112.341333 0 0 1-72.917333-53.034666 108.074667 108.074667 0 0 1-9.941334-88.234667 13.781333 13.781333 0 0 0-4.394666-14.592 299.392 299.392 0 0 0-95.616-55.424 14.421333 14.421333 0 0 0-15.146667 3.584 113.578667 113.578667 0 0 1-84.48 35.968 113.578667 113.578667 0 0 1-82.858667-35.157333 14.421333 14.421333 0 0 0-16.768-4.394667 298.154667 298.154667 0 0 0-95.573333 55.808 13.781333 13.781333 0 0 0-4.394667 14.634667c9.344 29.354667 5.717333 61.269333-9.984 87.808a112.341333 112.341333 0 0 1-72.96 53.034666 13.909333 13.909333 0 0 0-10.752 11.050667 281.856 281.856 0 0 0 0 109.610667c1.024 5.504 5.290667 9.813333 10.752 11.008a112.341333 112.341333 0 0 1 72.96 52.650666c15.786667 26.666667 19.413333 58.709333 9.941334 88.192a13.781333 13.781333 0 0 0 4.352 14.634667 299.392 299.392 0 0 0 95.658666 55.424h4.778667c3.882667 0 7.637333-1.578667 10.325333-4.394667a114.773333 114.773333 0 0 1 166.229334 0c4.096 5.546667 11.648 7.424 17.92 4.394667a298.666667 298.666667 0 0 0 97.194666-55.04c4.266667-3.541333 6.016-9.301333 4.394667-14.592a108.074667 108.074667 0 0 1 8.362667-88.618667 112.341333 112.341333 0 0 1 72.96-52.650666 13.909333 13.909333 0 0 0 10.709333-11.008 280.32 280.32 0 0 0 0-109.653334 14.336 14.336 0 0 0-10.752-11.008z m-26.709333 105.173334a136.106667 136.106667 0 0 0-79.658667 60.928 131.285333 131.285333 0 0 0-13.568 97.322666 259.114667 259.114667 0 0 1-69.717333 39.552A135.552 135.552 0 0 0 512 689.109333a137.941333 137.941333 0 0 0-92.842667 39.552 258.304 258.304 0 0 1-69.717333-39.552 129.664 129.664 0 0 0-14.762667-96.938666 136.106667 136.106667 0 0 0-78.506666-61.312 239.189333 239.189333 0 0 1 0-79.061334A136.106667 136.106667 0 0 0 335.872 390.826667c16.896-29.525333 21.76-64.426667 13.525333-97.365334a258.730667 258.730667 0 0 1 69.717334-39.552c25.386667 23.125333 58.453333 35.968 92.842666 36.010667a136.064 136.064 0 0 0 92.842667-36.010667c25.173333 9.472 48.682667 22.826667 69.717333 39.594667a131.285333 131.285333 0 0 0 14.336 96.896 136.106667 136.106667 0 0 0 79.701334 60.928c4.394667 26.197333 4.394667 52.906667 0 79.104l-0.810667 0.426667h0.042667z" fill="#444D5A" ></path><path d="M513.706667 370.346667a119.466667 119.466667 0 1 0 0 238.933333 119.466667 119.466667 0 0 0 0-238.933333z m0 199.125333a79.658667 79.658667 0 1 1 0-159.36 79.658667 79.658667 0 0 1 0 159.36z" fill="#444D5A" ></path></symbol></svg>',M=(M=document.getElementsByTagName("script"))[M.length-1].getAttribute("data-injectcss");if(M&&!h.__iconfont__svg__cssinject__){h.__iconfont__svg__cssinject__=!0;try{document.write("<style>.svgfont {display: inline-block;width: 1em;height: 1em;fill: currentColor;vertical-align: -0.1em;font-size:16px;}</style>")}catch(h){console&&console.log(h)}}function e(){t||(t=!0,v())}l=function(){var h,l,a,v;(v=document.createElement("div")).innerHTML=o,o=null,(a=v.getElementsByTagName("svg")[0])&&(a.setAttribute("aria-hidden","true"),a.style.position="absolute",a.style.width=0,a.style.height=0,a.style.overflow="hidden",h=a,(l=document.body).firstChild?(v=h,(a=l.firstChild).parentNode.insertBefore(v,a)):l.appendChild(h))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(l,0):(a=function(){document.removeEventListener("DOMContentLoaded",a,!1),l()},document.addEventListener("DOMContentLoaded",a,!1)):document.attachEvent&&(v=l,i=h.document,t=!1,(z=function(){try{i.documentElement.doScroll("left")}catch(h){return void setTimeout(z,50)}e()})(),i.onreadystatechange=function(){"complete"==i.readyState&&(i.onreadystatechange=null,e())})}(window); \ No newline at end of file +!function(h){var l,a,v,i,t,z,o='<svg><symbol id="luckysheet-iconfont-lianjie" viewBox="0 0 1024 1024"><path d="M771.584 251.733333c-49.066667-51.2-132.266667-51.2-181.333333 0l-74.666667 76.8c-8.533333 8.533333-8.533333 23.466667 0 32 8.533333 8.533333 21.333333 8.533333 29.866667 0l74.666666-76.8c34.133333-34.133333 87.466667-34.133333 121.6 0 34.133333 34.133333 34.133333 89.6 0 123.733334l-121.6 123.733333c-34.133333 34.133333-87.466667 34.133333-121.6 0-8.533333-8.533333-21.333333-8.533333-29.866666 0-8.533333 8.533333-8.533333 23.466667 0 32 49.066667 51.2 132.266667 51.2 181.333333 0l121.6-123.733333c51.2-53.333333 51.2-136.533333 0-187.733334z" fill="#444D5A" ></path><path d="M477.184 663.466667l-74.666667 76.8c-34.133333 34.133333-87.466667 34.133333-121.6 0-34.133333-34.133333-34.133333-89.6 0-123.733334l121.6-123.733333c34.133333-34.133333 87.466667-34.133333 121.6 0 8.533333 8.533333 21.333333 8.533333 29.866667 0 8.533333-8.533333 8.533333-23.466667 0-32-49.066667-51.2-132.266667-51.2-181.333333 0l-121.6 123.733333c-51.2 51.2-49.066667 134.4 0 185.6 49.066667 51.2 132.266667 51.2 181.333333 0l74.666667-76.8c8.533333-8.533333 8.533333-23.466667 0-32-8.533333-6.4-21.333333-6.4-29.866667 2.133334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dayinquyu" viewBox="0 0 1024 1024"><path d="M727.04 706.218667a11.946667 11.946667 0 0 1 8.704 3.754666 13.312 13.312 0 0 1 3.626667 9.130667V810.666667H583.253333v-91.52c0-3.413333 1.28-6.741333 3.626667-9.173334a11.946667 11.946667 0 0 1 8.661333-3.754666zM362.666667 725.333333v42.666667h-128v-42.666667h128z m128 0v42.666667h-42.666667v-42.666667h42.666667z m301.696-143.957333a18.773333 18.773333 0 0 1 18.304 19.2v117.205333c0 10.581333-8.277333 19.2-18.346667 19.2h-28.458667v-11.434666c-0.128-21.333333-16.554667-38.570667-36.778666-38.570667h-131.498667c-20.224 0-36.693333 17.237333-36.778667 38.570667v11.477333h-28.458666a18.858667 18.858667 0 0 1-18.346667-19.2v-117.248c0-10.581333 8.277333-19.2 18.346667-19.2zM256 533.333333v128H213.333333v-128h42.666667z m411.477333 85.845334H567.04a12.586667 12.586667 0 0 0-12.245333 12.8c0.042667 7.125333 5.546667 12.885333 12.245333 12.842666h100.394667a12.586667 12.586667 0 0 0 12.202666-12.8c0-7.082667-5.504-12.8-12.202666-12.8zM723.072 512a14.506667 14.506667 0 0 1 14.165333 14.805333v35.84H585.386667v-35.84a14.506667 14.506667 0 0 1 14.165333-14.805333zM768 362.666667v128h-42.666667v-128h42.666667z m-512-42.666667v128H213.333333v-128h42.666667zM768 213.333333v64h-42.666667V256h-64V213.333333H768zM362.666667 213.333333v42.666667H256v21.333333H213.333333V213.333333h149.333334z m213.333333 0v42.666667h-128V213.333333h128z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dayinyemianpeizhi" viewBox="0 0 1024 1024"><path d="M635.477333 213.333333H388.522667c-15.530667 0-28.16 13.226667-28.288 29.610667v71.68h303.530666v-71.68c0-16.298667-12.586667-29.568-28.288-29.568V213.333333z m7.978667 388.48H380.586667a23.893333 23.893333 0 0 0-17.365334 7.509334 26.581333 26.581333 0 0 0-7.253333 18.261333V810.666667h312.149333v-183.125334a26.581333 26.581333 0 0 0-7.253333-18.218666 23.893333 23.893333 0 0 0-17.365333-7.509334z m130.602667-249.728H250.069333c-20.224 0-36.736 17.28-36.736 38.4v234.410667c0 21.162667 16.512 38.442667 36.693334 38.442667h56.96v-22.912c0.213333-42.666667 33.109333-77.184 73.557333-77.098667h262.912c40.448-0.085333 73.386667 34.389333 73.557333 77.098667v22.912h56.917334c20.224 0 36.736-17.28 36.736-38.4V390.485333c-0.042667-21.290667-16.426667-38.485333-36.608-38.442666z m-249.813334 126.933334H323.498667c-13.44 0-24.405333-11.434667-24.490667-25.642667a25.173333 25.173333 0 0 1 24.490667-25.685333h200.746666c13.44 0 24.490667 11.52 24.490667 25.685333 0 14.08-11.050667 25.6-24.490667 25.6v0.042667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dayinbiaoti" viewBox="0 0 1024 1024"><path d="M727.04 706.218667a11.946667 11.946667 0 0 1 8.704 3.754666 13.312 13.312 0 0 1 3.626667 9.130667V810.666667H583.253333v-91.52c0-3.413333 1.28-6.741333 3.626667-9.173334a11.946667 11.946667 0 0 1 8.661333-3.754666zM768 213.333333v277.333334h-42.666667V256H256v469.333333h234.666667v42.666667H213.333333V213.333333h554.666667z m24.362667 368.042667a18.773333 18.773333 0 0 1 18.304 19.2v117.205333c0 10.581333-8.277333 19.2-18.346667 19.2h-28.458667v-11.434666c-0.128-21.333333-16.554667-38.570667-36.778666-38.570667h-131.498667c-20.224 0-36.693333 17.237333-36.778667 38.570667v11.477333h-28.458666a18.858667 18.858667 0 0 1-18.346667-19.2v-117.248c0-10.581333 8.277333-19.2 18.346667-19.2z m-124.885334 37.802667H567.04a12.586667 12.586667 0 0 0-12.245333 12.8c0.042667 7.125333 5.546667 12.885333 12.245333 12.842666h100.394667a12.586667 12.586667 0 0 0 12.202666-12.8c0-7.082667-5.504-12.8-12.202666-12.8zM723.072 512a14.506667 14.506667 0 0 1 14.165333 14.805333v35.84H585.386667v-35.84a14.506667 14.506667 0 0 1 14.165333-14.805333z" fill="#444D5A" ></path><path d="M341.333333 341.333333h298.666667v42.666667H341.333333zM341.333333 426.666667h170.666667v42.666666H341.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-fenyeyulan" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256z" fill="#444D5A" ></path><path d="M256 512h256v42.666667H256zM554.666667 256v298.666667h-42.666667V256z" fill="#444D5A" ></path><path d="M405.333333 256v298.666667h-42.666666V256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-putong" viewBox="0 0 1024 1024"><path d="M256 256h554.666667v42.666667H256z" fill="#444D5A" ></path><path d="M298.666667 256v554.666667H256V256zM810.666667 256v554.666667h-42.666667V256zM469.333333 256v554.666667h-42.666666V256zM640 256v554.666667h-42.666667V256z" fill="#444D5A" ></path><path d="M256 426.666667h554.666667v42.666666H256zM256 597.333333h554.666667v42.666667H256zM256 768h554.666667v42.666667H256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-yemianbuju" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v42.666667h-170.709334L640 768h170.666667v42.666667h-213.333334V213.333333h213.333334z m-384 0l-0.042667 554.666667H426.666667v42.666667H213.333333v-42.666667h170.624L384 256H213.333333V213.333333h213.333334z m106.666666 512v85.333334h-42.666666v-85.333334h42.666666z m0-170.666666v85.333333h-42.666666v-85.333333h42.666666z m0-170.666667v85.333333h-42.666666V384h42.666666z m0-170.666667v85.333334h-42.666666V213.333333h42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-biaogesuoding" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334zM341.333333 383.872H256V768h85.333333V383.872z m426.666667 0H383.872V768H768V383.872z m-149.333333 21.461333a64 64 0 0 1 63.701333 57.856L682.666667 469.333333v64h42.666666v213.333334h-298.666666v-213.333334h42.666666V469.333333a64 64 0 0 1 57.856-63.701333L533.333333 405.333333h85.333334z m64 170.666667h-213.333334v128h213.333334v-128z m-106.666667 21.333333a21.333333 21.333333 0 0 1 21.333333 21.333334v42.666666a21.333333 21.333333 0 1 1-42.666666 0v-42.666666a21.333333 21.333333 0 0 1 21.333333-21.333334z m42.666667-149.333333h-85.333334a21.333333 21.333333 0 0 0-20.992 17.493333L512 469.333333v64h128V469.333333a21.333333 21.333333 0 0 0-13.909333-20.010666l-3.584-0.981334-3.84-0.341333zM768 256H383.872v85.290667L768 341.333333V256zM341.333333 256H256v85.333333l85.333333-0.042666V256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zhuandao1" viewBox="0 0 1024 1024"><path d="M804.992 694.058667l-84.650667-84.224c-7.552-7.509333-21.930667-8.448-26.026666 1.365333-1.066667 2.602667-1.365333 10.026667-1.365334 10.026667v56.874666H406.442667a69.034667 69.034667 0 0 1-69.205334-68.778666 69.034667 69.034667 0 0 1 69.205334-68.821334h259.84a128.341333 128.341333 0 0 0 128.597333-127.829333 128.384 128.384 0 0 0-128.554667-127.914667H411.946667A101.632 101.632 0 0 0 213.333333 314.325333a101.632 101.632 0 1 0 198.613334 29.525334h254.378666a69.034667 69.034667 0 0 1 69.162667 68.821333 69.034667 69.034667 0 0 1-69.162667 68.778667H406.442667a128.341333 128.341333 0 0 0-128.597334 127.872 128.341333 128.341333 0 0 0 128.597334 127.872h286.506666v54.016s0 8.277333 1.408 11.52c4.053333 9.813333 18.432 10.24 25.984 2.730666l84.650667-84.181333a19.2 19.2 0 0 0 0-27.221333zM314.88 356.224a42.069333 42.069333 0 0 1-42.112-41.898667c0-23.082667 18.858667-41.856 42.112-41.856 23.210667 0 42.112 18.773333 42.112 41.856a42.069333 42.069333 0 0 1-42.112 41.898667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-youjiantou" viewBox="0 0 1024 1024"><path d="M682.666667 512l-341.333334 341.333333V170.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-caidan2" viewBox="0 0 1024 1024"><path d="M213.333333 469.333333h597.333334v85.333334H213.333333zM213.333333 213.333333h597.333334v85.333334H213.333333zM213.333333 725.333333h597.333334v85.333334H213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-tihuan" viewBox="0 0 1024 1024"><path d="M768 430.933333H280.405333l-4.394666-0.554666c-5.461333-0.853333-6.570667-1.749333-12.885334-6.528l-2.986666-5.376c-6.4-11.946667-5.376-13.738667 2.986666-28.885334L440.618667 213.333333l34.218666 34.048-136.362666 135.424H768v48.170667z m-7.594667 163.242667L585.472 768l-34.261333-34.048 136.362666-135.424H258.048v-48.170667h484.096c10.453333 0 19.882667 6.272 23.893333 15.872a25.6 25.6 0 0 1-5.632 27.989334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dongjie1" viewBox="0 0 1024 1024"><path d="M809.557333 213.930667v595.626666H213.930667V213.930667h595.626666zM256.426667 573.610667v193.408l193.365333-0.042667-193.365333-193.365333z m510.549333-40.618667h-234.026667v234.026667h234.026667v-234.026667z m-276.565333 0H276.053333l214.357334 214.4v-214.4z m276.565333-276.522667h-234.026667v233.984h234.026667V256.469333zM256.426667 286.549333v203.946667l203.904-0.042667-203.946667-203.946666z m233.984-30.08H286.592l203.861333 203.861334V256.426667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jian1" viewBox="0 0 1024 1024"><path d="M213.333333 469.333333h597.333334v85.333334H213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jia1" viewBox="0 0 1024 1024"><path d="M213.333333 469.333333h597.333334v85.333334H213.333333z" fill="#444D5A" ></path><path d="M554.666667 213.333333v597.333334h-85.333334V213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-yichu1" viewBox="0 0 1024 1024"><path d="M300.288 810.666667H213.333333V213.333333h86.954667v279.978667h441.898667l-91.306667-85.845333 26.624-26.112L810.666667 512l-133.162667 130.688-26.624-26.154667 91.306667-85.845333-441.898667-0.042667z" fill="#444D5A" ></path><path d="M530.688 213.333333h42.666667v242.688h-42.666667V213.333333z m0 354.688h42.666667V810.666667h-42.666667v-242.688z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-shengxu1" viewBox="0 0 1024 1024"><path d="M684.757333 413.056v290.645333a20.650667 20.650667 0 0 1-6.4 15.274667 23.04 23.04 0 0 1-16 6.357333 22.229333 22.229333 0 0 1-22.4-21.632V413.056L550.4 497.92a22.528 22.528 0 0 1-15.872 6.442667 22.613333 22.613333 0 0 1-15.914667-6.442667 20.650667 20.650667 0 0 1-6.613333-15.061333c0-5.674667 2.389333-11.093333 6.613333-15.061334l126.72-120.064a22.485333 22.485333 0 0 1 15.658667-6.4 23.594667 23.594667 0 0 1 16.128 5.546667l126.72 120.064c4.309333 3.84 6.826667 9.301333 6.826667 15.061333a20.266667 20.266667 0 0 1-6.826667 15.061334 23.04 23.04 0 0 1-15.914667 6.272 23.04 23.04 0 0 1-15.872-6.272l-87.296-84.010667zM229.930667 682.666667h265.472c9.173333 0 16.597333 9.472 16.597333 21.12s-7.424 21.12-16.597333 21.12H229.930667c-9.173333 0-16.597333-9.472-16.597334-21.12 0-11.690667 7.424-21.12 16.597334-21.12z m1.152-170.666667h177.792c9.813333 0 17.792 9.429333 17.792 21.12s-7.936 21.12-17.792 21.12H231.168c-9.813333 0-17.792-9.429333-17.792-21.12 0-11.648 7.978667-21.12 17.792-21.12z m264.362666-170.666667H229.845333C220.757333 341.333333 213.333333 350.805333 213.333333 362.453333s7.424 21.12 16.597334 21.12h265.472c9.173333 0 16.597333-9.472 16.597333-21.12S504.576 341.333333 495.402667 341.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-neikuangxian" viewBox="0 0 1024 1024"><path d="M213.333333 512h554.666667v42.666667H213.333333z" fill="#444D5A" ></path><path d="M512 256v554.666667h-42.666667V256z" fill="#444D5A" ></path><path d="M213.333333 426.666667h42.666667v42.666666H213.333333zM213.333333 597.333333h42.666667v42.666667H213.333333zM213.333333 341.333333h42.666667v42.666667H213.333333zM213.333333 682.666667h42.666667v42.666666H213.333333zM725.333333 426.666667h42.666667v42.666666h-42.666667zM725.333333 597.333333h42.666667v42.666667h-42.666667zM725.333333 341.333333h42.666667v42.666667h-42.666667zM725.333333 682.666667h42.666667v42.666666h-42.666667zM725.333333 768h42.666667v42.666667h-42.666667zM725.333333 256h42.666667v42.666667h-42.666667zM213.333333 768h42.666667v42.666667H213.333333zM213.333333 256h42.666667v42.666667H213.333333zM384 768h42.666667v42.666667H384zM384 256h42.666667v42.666667H384zM554.666667 768h42.666666v42.666667h-42.666666zM554.666667 256h42.666666v42.666667h-42.666666zM298.666667 768h42.666666v42.666667H298.666667zM298.666667 256h42.666666v42.666667H298.666667zM640 768h42.666667v42.666667h-42.666667zM640 256h42.666667v42.666667h-42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-qingchushaixuan" viewBox="0 0 1024 1024"><path d="M214.016 722.432h593.92v42.410667H214.016v-42.410667z m578.048-312.106667l-180.693333-181.077333A53.376 53.376 0 0 0 573.738667 213.333333a45.653333 45.653333 0 0 0-32.64 13.226667l-313.941334 314.965333c-18.56 18.602667-17.322667 50.261333 2.688 70.4l68.010667 68.096h298.24l198.698667-199.338666c18.56-18.602667 17.322667-50.261333-2.730667-70.357334z m-213.546667 227.242667H315.434667L259.84 581.888c-3.968-4.010667-4.053333-9.088-2.730667-10.453333L430.08 398.08l193.92 193.92-45.44 45.568z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenxiangshang" viewBox="0 0 1024 1024"><path d="M192 495.786667l213.333333-77.653334v-0.64l1.621334 0.042667L554.666667 363.776v45.354667l-106.666667 38.826666v152.405334l106.666667 38.826666v45.354667l-147.498667-53.674667-1.834667-0.042666v-0.64l-213.333333-77.610667V495.786667z m46.634667 28.416L405.333333 584.874667v-121.386667l-166.698666 60.714667zM597.333333 336.170667l90.496-90.538667 90.538667 90.538667-30.165333 30.165333-37.802667-37.76V789.333333h-42.666667V326.101333l-40.234666 40.234667L597.333333 336.170667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jiangxu1" viewBox="0 0 1024 1024"><path d="M684.757333 653.610667V362.965333a20.650667 20.650667 0 0 0-6.4-15.274666 23.04 23.04 0 0 0-16-6.357334 22.229333 22.229333 0 0 0-22.4 21.632v290.645334L550.4 568.746667a22.528 22.528 0 0 0-15.872-6.442667 22.613333 22.613333 0 0 0-15.914667 6.442667 20.650667 20.650667 0 0 0-6.613333 15.061333c0 5.674667 2.389333 11.093333 6.613333 15.061333l126.72 120.064a22.485333 22.485333 0 0 0 15.658667 6.4 23.594667 23.594667 0 0 0 16.128-5.546666l126.72-120.064c4.309333-3.84 6.826667-9.301333 6.826667-15.061334a20.266667 20.266667 0 0 0-6.826667-15.061333 23.04 23.04 0 0 0-15.914667-6.272 23.04 23.04 0 0 0-15.872 6.272l-87.296 84.010667zM229.930667 682.666667h265.472c9.173333 0 16.597333 9.472 16.597333 21.12s-7.424 21.12-16.597333 21.12H229.930667c-9.173333 0-16.597333-9.472-16.597334-21.12 0-11.690667 7.424-21.12 16.597334-21.12z m1.152-170.666667h177.792c9.813333 0 17.792 9.429333 17.792 21.12s-7.936 21.12-17.792 21.12H231.168c-9.813333 0-17.792-9.429333-17.792-21.12 0-11.648 7.978667-21.12 17.792-21.12z m264.362666-170.666667H229.845333C220.757333 341.333333 213.333333 350.762667 213.333333 362.453333c0 11.648 7.424 21.12 16.597334 21.12h265.472c9.173333 0 16.597333-9.472 16.597333-21.12S504.576 341.333333 495.402667 341.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-neikuanghengxian" viewBox="0 0 1024 1024"><path d="M213.333333 512h554.666667v42.666667H213.333333z" fill="#444D5A" ></path><path d="M213.333333 426.666667h42.666667v42.666666H213.333333zM213.333333 597.333333h42.666667v42.666667H213.333333zM213.333333 341.333333h42.666667v42.666667H213.333333zM213.333333 682.666667h42.666667v42.666666H213.333333zM725.333333 426.666667h42.666667v42.666666h-42.666667zM469.333333 426.666667h42.666667v42.666666h-42.666667zM725.333333 597.333333h42.666667v42.666667h-42.666667zM469.333333 597.333333h42.666667v42.666667h-42.666667zM725.333333 341.333333h42.666667v42.666667h-42.666667zM469.333333 341.333333h42.666667v42.666667h-42.666667zM725.333333 682.666667h42.666667v42.666666h-42.666667zM469.333333 682.666667h42.666667v42.666666h-42.666667zM725.333333 768h42.666667v42.666667h-42.666667zM725.333333 256h42.666667v42.666667h-42.666667zM213.333333 768h42.666667v42.666667H213.333333zM213.333333 256h42.666667v42.666667H213.333333zM384 768h42.666667v42.666667H384zM384 256h42.666667v42.666667H384zM554.666667 768h42.666666v42.666667h-42.666666zM554.666667 256h42.666666v42.666667h-42.666666zM298.666667 768h42.666666v42.666667H298.666667zM298.666667 256h42.666666v42.666667H298.666667zM469.333333 768h42.666667v42.666667h-42.666667zM469.333333 256h42.666667v42.666667h-42.666667zM640 768h42.666667v42.666667h-42.666667zM640 256h42.666667v42.666667h-42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-neikuangshuxian" viewBox="0 0 1024 1024"><path d="M213.333333 426.666667h42.666667v42.666666H213.333333zM213.333333 597.333333h42.666667v42.666667H213.333333zM213.333333 341.333333h42.666667v42.666667H213.333333zM213.333333 682.666667h42.666667v42.666666H213.333333zM725.333333 426.666667h42.666667v42.666666h-42.666667zM725.333333 597.333333h42.666667v42.666667h-42.666667zM725.333333 341.333333h42.666667v42.666667h-42.666667zM725.333333 682.666667h42.666667v42.666666h-42.666667zM725.333333 768h42.666667v42.666667h-42.666667zM725.333333 256h42.666667v42.666667h-42.666667zM725.333333 512h42.666667v42.666667h-42.666667zM213.333333 768h42.666667v42.666667H213.333333zM213.333333 256h42.666667v42.666667H213.333333zM213.333333 512h42.666667v42.666667H213.333333zM384 768h42.666667v42.666667H384zM384 256h42.666667v42.666667H384zM384 512h42.666667v42.666667H384zM554.666667 768h42.666666v42.666667h-42.666666zM554.666667 256h42.666666v42.666667h-42.666666zM554.666667 512h42.666666v42.666667h-42.666666zM298.666667 768h42.666666v42.666667H298.666667zM298.666667 256h42.666666v42.666667H298.666667zM298.666667 512h42.666666v42.666667H298.666667zM469.333333 768h42.666667v42.666667h-42.666667zM469.333333 256h42.666667v42.666667h-42.666667zM469.333333 512h42.666667v42.666667h-42.666667zM640 768h42.666667v42.666667h-42.666667zM640 256h42.666667v42.666667h-42.666667zM640 512h42.666667v42.666667h-42.666667z" fill="#B5B8BD" ></path><path d="M512 256v554.666667h-42.666667V256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zidingyipaixu" viewBox="0 0 1024 1024"><path d="M704 256a21.333333 21.333333 0 0 1 21.333333 21.333333v469.333334a21.333333 21.333333 0 1 1-42.666666 0v-469.333334c0-11.776 9.472-21.333333 21.333333-21.333333zM512 384c11.776 0 21.333333 7.68 21.333333 17.194667v221.610666c0 9.514667-9.472 17.194667-21.333333 17.194667-11.776 0-21.333333-7.68-21.333333-17.194667V401.194667c0-4.565333 2.218667-8.96 6.186666-12.16A24.32 24.32 0 0 1 512 384zM320 256a21.333333 21.333333 0 0 1 21.333333 21.333333v469.333334a21.333333 21.333333 0 1 1-42.666666 0v-469.333334c0-11.776 9.472-21.333333 21.333333-21.333333z m283.562667 368.896a21.333333 21.333333 0 0 1 30.165333 30.165333l-106.666667 106.666667a21.333333 21.333333 0 0 1-30.165333 0l-106.666667-106.666667a21.333333 21.333333 0 0 1 30.165334-30.165333L512 716.501333l91.605333-91.562666z m0.298666-225.834667a21.333333 21.333333 0 0 0 30.165334-30.165333l-106.666667-106.666667a21.333333 21.333333 0 0 0-30.165333 0l-106.666667 106.666667a21.333333 21.333333 0 0 0 30.165333 30.165333l91.562667-91.562666 91.605333 91.562666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-logo2" viewBox="0 0 1024 1024"><path d="M1023.168 131.36c0 234.4-190.016 424.416-424.416 424.416 0-234.4 190.016-424.416 424.416-424.416zM131.36 1023.168c0-234.4 190.016-424.416 424.416-424.416 0 234.4-190.016 424.416-424.416 424.416zM929.696 929.696c-182.784 0-330.944-148.16-330.944-330.944 182.752 0 330.944 148.16 330.944 330.944z" fill="#2D7FF9" ></path><path d="M494.848 0H0v494.848h494.848z" fill="#2D7FF9" opacity=".503" ></path><path d="M558.016 81.376H81.376v476.64h476.64z" fill="#2D7FF9" opacity=".551" ></path><path d="M558.304 164.416H164.384v393.92h393.92z" fill="#2D7FF9" opacity=".805" ></path></symbol><symbol id="luckysheet-iconfont-logo" viewBox="0 0 4864 1024"><path d="M1023.168 131.36c0 234.4-190.016 424.416-424.416 424.416 0-234.4 190.016-424.416 424.416-424.416zM131.36 1023.168c0-234.4 190.016-424.416 424.416-424.416 0 234.4-190.016 424.416-424.416 424.416zM929.696 929.696c-182.784 0-330.944-148.16-330.944-330.944 182.752 0 330.944 148.16 330.944 330.944z" fill="#2D7FF9" ></path><path d="M494.848 0H0v494.848h494.848z" fill="#2D7FF9" opacity=".503" ></path><path d="M558.016 81.376H81.376v476.64h476.64z" fill="#2D7FF9" opacity=".551" ></path><path d="M558.304 164.416H164.384v393.92h393.92z" fill="#2D7FF9" opacity=".805" ></path><path d="M1678.08 736v-64h-247.04V279.04H1356.8V736h321.28z m177.568 8.96c40.96 0 75.52-17.28 103.68-51.84V736h72.96V405.12h-72.96v202.24c-6.4 23.68-17.28 42.24-32 56.32-14.72 13.44-30.08 20.48-46.08 20.48-25.6 0-43.52-6.4-55.04-18.56-11.52-12.8-16.64-32-16.64-58.88v-201.6h-72.96v206.08c0 88.96 39.68 133.76 119.04 133.76z m407.936 0c42.88 0 77.44-10.88 103.04-32 26.24-21.76 43.52-55.04 51.2-99.84h-72.32c-5.76 48-32.64 72.32-81.28 72.32-28.16 0-49.28-10.24-63.36-30.08-15.36-20.48-22.4-49.28-22.4-85.76 0-35.84 7.68-64 23.04-83.84 15.36-20.48 36.48-30.08 63.36-30.08 21.76 0 39.68 5.12 53.12 15.36 12.8 10.24 21.76 25.6 26.24 46.72h72.32c-6.4-41.6-23.04-72.32-49.28-92.8-25.6-19.2-59.52-28.8-102.4-28.8-51.84 0-92.16 17.28-120.96 51.84-26.88 31.36-40.32 72.32-40.32 122.24 0 51.2 13.44 92.8 40.96 124.8 28.16 33.28 67.84 49.92 119.04 49.92z m292.128-8.96v-115.84l33.28-31.36 115.84 147.2h93.44l-159.36-193.92 146.56-136.96h-94.08l-135.68 131.2V270.08h-72.96V736h72.96z m404.096 126.72l179.2-457.6h-79.36l-83.84 235.52-87.68-235.52h-79.36l131.2 323.2-58.24 134.4h78.08z m357.408-117.76c99.2 0 149.12-35.2 149.12-105.6 0-29.44-13.44-53.12-39.68-69.76-17.92-12.16-46.08-22.4-83.2-31.36-33.28-8.32-55.04-14.72-65.92-19.2-17.92-7.68-26.24-17.28-26.24-27.52 0-12.8 5.12-21.76 16.64-27.52 9.6-5.76 24.32-8.32 43.52-8.32 22.4 0 39.04 3.2 49.92 10.24 10.24 6.4 17.92 18.56 23.04 35.2h71.04c-7.68-70.4-55.68-104.96-142.72-104.96-40.96 0-73.6 8.32-98.56 26.24-25.6 16.64-37.76 40.32-37.76 71.04 0 28.8 12.8 51.2 38.4 67.2 16 10.24 43.52 19.84 82.56 28.8 33.28 7.68 55.04 13.44 65.28 18.56 19.2 8.96 28.8 21.12 28.8 36.48 0 26.88-25.6 40.96-76.8 40.96-24.32 0-41.6-4.48-52.48-12.16-10.88-8.96-18.56-23.68-22.4-44.8h-71.04c7.04 77.44 56.32 116.48 148.48 116.48z m286.976-8.96v-184.96c0-28.16 6.4-50.56 19.84-68.48 12.8-17.92 30.72-26.88 53.76-26.88 24.96 0 43.52 7.68 56.32 23.68 10.88 14.72 16.64 36.48 16.64 64.64v192h72.96v-204.8c0-44.16-9.6-77.44-28.16-99.84-19.84-23.68-49.92-35.2-90.24-35.2-21.12 0-39.68 3.84-55.68 12.16-17.92 8.96-33.28 22.4-45.44 40.96v-179.2h-72.96V736h72.96z m447.648 8.96c44.16 0 80.64-12.8 110.08-37.76 23.04-20.48 38.4-46.72 46.08-77.44h-72.96c-8.96 18.56-18.56 32-29.44 40.32-14.08 10.24-32 15.36-54.4 15.36-26.24 0-46.72-8.32-60.8-24.32-14.08-16-22.4-39.68-24.96-70.4h247.68c0-59.52-13.44-106.24-39.68-139.52-28.8-37.12-70.4-55.04-124.8-55.04-49.28 0-88.32 16.64-116.48 50.56-29.44 33.28-43.52 74.24-43.52 123.52 0 55.04 15.36 97.92 46.08 129.28 28.8 30.08 67.84 45.44 117.12 45.44z m85.12-209.28h-170.24c4.48-26.24 13.44-46.08 26.88-59.52 14.08-14.08 32.64-20.48 56.96-20.48 51.2 0 80 26.24 86.4 80z m285.088 209.28c44.16 0 80.64-12.8 110.08-37.76 23.04-20.48 38.4-46.72 46.08-77.44h-72.96c-8.96 18.56-18.56 32-29.44 40.32-14.08 10.24-32 15.36-54.4 15.36-26.24 0-46.72-8.32-60.8-24.32-14.08-16-22.4-39.68-24.96-70.4h247.68c0-59.52-13.44-106.24-39.68-139.52-28.8-37.12-70.4-55.04-124.8-55.04-49.28 0-88.32 16.64-116.48 50.56-29.44 33.28-43.52 74.24-43.52 123.52 0 55.04 15.36 97.92 46.08 129.28 28.8 30.08 67.84 45.44 117.12 45.44z m85.12-209.28h-170.24c4.48-26.24 13.44-46.08 26.88-59.52 14.08-14.08 32.64-20.48 56.96-20.48 51.2 0 80 26.24 86.4 80z m310.016 200.32v-60.16h-43.52c-7.68 0-12.8-1.92-16.64-5.76-3.84-4.48-5.12-10.24-5.12-17.92v-186.88h73.6v-60.16h-73.6V298.24l-72.96 30.08v76.8h-59.52v60.16h59.52v186.88c0 26.88 6.4 46.72 19.2 60.8 13.44 15.36 34.56 23.04 63.36 23.04h55.68z" fill="#7C838C" ></path></symbol><symbol id="luckysheet-iconfont-wenbenqingxie1" viewBox="0 0 1024 1024"><path d="M469.333333 256h170.666667v42.666667h-170.666667z" fill="#444D5A" ></path><path d="M573.738667 284.586667l-81.493334 462.208-41.984-7.381334 81.493334-462.208z" fill="#444D5A" ></path><path d="M384 725.333333h170.666667v42.666667H384z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jiacu" viewBox="0 0 1024 1024"><path d="M298.666667 213.333333h224a174.208 174.208 0 0 1 141.952 275.242667A174.208 174.208 0 0 1 572.458667 810.666667H298.666667V213.333333z m273.792 348.458667l-174.250667-0.042667v149.333334h174.250667a74.666667 74.666667 0 0 0 6.101333-149.077334l-6.101333-0.213333zM398.208 312.874667v149.333333h124.458667a74.666667 74.666667 0 0 0 6.144-149.077333l-6.144-0.256H398.208z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-sousuo" viewBox="0 0 1024 1024"><path d="M664.832 634.624l128.554667 128.597333a21.333333 21.333333 0 1 1-30.165334 30.165334l-128.597333-128.597334a256 256 0 1 1 30.165333-30.165333zM469.333333 682.666667a213.333333 213.333333 0 1 0 0-426.666667 213.333333 213.333333 0 0 0 0 426.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-guanbi" viewBox="0 0 1024 1024"><path d="M119.808 180.053333l60.330667-60.245333 724.053333 724.053333-60.330667 60.330667z" fill="#B5B8BD" ></path><path d="M843.946667 119.808l60.245333 60.330667-724.053333 724.053333-60.330667-60.330667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-xiayige" viewBox="0 0 1024 1024"><path d="M512 682.666667L170.666667 341.333333h682.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiala" viewBox="0 0 1024 1024"><path d="M149.930667 444.330667l60.330666-60.330667 362.069334 362.069333L512 806.4z" fill="#B5B8BD" ></path><path d="M813.738667 384l60.330666 60.330667L512 806.4l-60.330667-60.330667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-wenbenyanse" viewBox="0 0 1024 1024"><path d="M549.546667 256l194.133333 533.333333h-45.354667l-77.653333-213.333333H421.632l-77.653333 213.333333H298.666667L492.757333 256h56.789334z m-28.416 46.634667L437.162667 533.333333h167.978666l-84.010666-230.698666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shangyige" viewBox="0 0 1024 1024"><path d="M512 341.333333l341.333333 341.333334H170.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shujutoushi" viewBox="0 0 1024 1024"><path d="M256 362.666667v298.666666l256 149.333334 256-149.333334v-298.666666L512 213.333333 256 362.666667zM725.333333 640l-213.333333 128-213.333333-128V384l213.333333-128 213.333333 128v256z m-189.354666 40.021333a18.645333 18.645333 0 0 1-18.645334 18.645334 18.304 18.304 0 0 1-18.688-18.645334V535.466667l-130.645333-75.349334a18.645333 18.645333 0 0 1 4.565333-34.133333 18.304 18.304 0 0 1 14.08 2.005333l130.688 74.666667 129.578667-74.666667a18.304 18.304 0 0 1 25.386667 6.698667 18.645333 18.645333 0 0 1-6.784 25.386667l-129.536 74.666666v145.237334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-tianchong" viewBox="0 0 1024 1024"><path d="M730.24 562.176l-253.44 253.44-217.173333-217.258667 253.44-253.44 217.173333 217.258667z m-72.405333-0.042667L512.981333 417.28l-180.992 180.992 144.810667 144.853333 181.034667-181.034666z" fill="#444D5A" ></path><path d="M520.533333 298.666667v230.4H469.333333V349.824H392.533333v179.626667H341.333333V298.666667zM699.733333 554.666667c48.768 0 88.32 37.802667 88.32 84.48 0 46.634667-39.552 84.48-88.32 84.48" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zengjiaxiaoshuwei" viewBox="0 0 1024 1024"><path d="M533.333333 789.333333m-42.666666 0a42.666667 42.666667 0 1 0 85.333333 0 42.666667 42.666667 0 1 0-85.333333 0Z" fill="#B5B8BD" ></path><path d="M682.666667 554.666667a85.333333 85.333333 0 0 0-85.333334 85.333333v85.333333a85.333333 85.333333 0 1 0 170.666667 0V640a85.333333 85.333333 0 0 0-85.333333-85.333333z m0 42.666666a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 1 1-85.333333 0V640a42.666667 42.666667 0 0 1 42.666667-42.666667z" fill="#B5B8BD" ></path><path d="M367.829333 799.701333l90.538667-90.538666L367.786667 618.666667l-30.165334 30.165333 37.76 37.802667H256v42.666666h121.898667l-40.234667 40.234667 30.165333 30.165333z" fill="#444D5A" ></path><path d="M490.666667 213.333333a85.333333 85.333333 0 0 0-85.333334 85.333334v85.333333a85.333333 85.333333 0 1 0 170.666667 0V298.666667a85.333333 85.333333 0 0 0-85.333333-85.333334z m0 42.666667a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 1 1-85.333333 0V298.666667a42.666667 42.666667 0 0 1 42.666667-42.666667zM682.666667 213.333333a85.333333 85.333333 0 0 0-85.333334 85.333334v85.333333a85.333333 85.333333 0 1 0 170.666667 0V298.666667a85.333333 85.333333 0 0 0-85.333333-85.333334z m0 42.666667a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-85.333333 0V298.666667a42.666667 42.666667 0 0 1 42.666667-42.666667z" fill="#B5B8BD" ></path><path d="M341.333333 448m-42.666666 0a42.666667 42.666667 0 1 0 85.333333 0 42.666667 42.666667 0 1 0-85.333333 0Z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-bianji2" viewBox="0 0 1024 1024"><path d="M810.581333 513.365333V768a42.666667 42.666667 0 0 1-42.666666 42.666667H298.666667a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667h234.624v42.666667H320a21.333333 21.333333 0 0 0-21.333333 21.333333v469.333334a21.333333 21.333333 0 0 0 21.333333 21.333333h426.581333a21.333333 21.333333 0 0 0 21.333334-21.333333V512h0.042666a21.333333 21.333333 0 1 1 42.581334 1.365333z m-285.056-2.432l241.365334-241.365333a21.333333 21.333333 0 0 1 30.165333 30.165333l-241.365333 241.365334a21.333333 21.333333 0 0 1-30.165334-30.165334zM533.290667 256V213.333333a21.333333 21.333333 0 0 1 21.333333 21.333334c0 11.776-10.069333 21.333333-21.333333 21.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jieping" viewBox="0 0 1024 1024"><path d="M590.848 567.04l-265.386667-306.645333a28.245333 28.245333 0 0 1 3.2-40.149334 29.141333 29.141333 0 0 1 40.789334 3.242667l267.946666 309.674667a124.885333 124.885333 0 0 1 144.213334 34.474666 125.141333 125.141333 0 0 1-16.042667 176.256 125.141333 125.141333 0 0 1-176.341333-14.805333 125.013333 125.013333 0 0 1 1.621333-162.048z m40.149333 18.133333c-18.602667 15.701333-29.312 38.826667-29.312 63.189334 0 45.909333 37.461333 83.157333 83.754667 83.157333a83.413333 83.413333 0 0 0 83.712-83.157333 83.413333 83.413333 0 0 0-83.712-83.114667c-15.189333 0-29.44 4.010667-41.685333 11.008a28.458667 28.458667 0 0 1-12.757334 8.96v-0.042667z m-150.698666-52.565333l-38.229334 44.16a29.653333 29.653333 0 0 1-0.768 0.810667 124.885333 124.885333 0 0 1-6.528 151.509333 125.141333 125.141333 0 0 1-176.341333 14.805333C205.226667 699.306667 198.101333 620.373333 242.346667 567.637333a124.928 124.928 0 0 1 156.416-28.544l38.528-44.501333c9.514667 17.237333 24.746667 30.634667 43.008 37.973333z m105.6-122.026667a85.632 85.632 0 0 0-43.818667-37.12l129.749333-150.016a29.141333 29.141333 0 0 1 40.789334-3.242666 28.245333 28.245333 0 0 1 3.2 40.149333l-129.92 150.186667z m-300.8 301.44c35.413333 29.738667 88.064 25.301333 117.546666-9.813333a83.413333 83.413333 0 0 0-10.666666-117.546667 83.456 83.456 0 0 0-117.589334 9.856 83.456 83.456 0 0 0 10.709334 117.504z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jianxiaoxiaoshuwei" viewBox="0 0 1024 1024"><path d="M533.333333 448m-42.666666 0a42.666667 42.666667 0 1 0 85.333333 0 42.666667 42.666667 0 1 0-85.333333 0Z" fill="#B5B8BD" ></path><path d="M341.333333 789.333333m-42.666666 0a42.666667 42.666667 0 1 0 85.333333 0 42.666667 42.666667 0 1 0-85.333333 0Z" fill="#B5B8BD" ></path><path d="M346.496 394.368L256 303.786667 346.496 213.333333l30.165333 30.165334-37.717333 37.802666h119.424v42.666667H336.469333l40.192 40.234667-30.165333 30.165333z" fill="#444D5A" ></path><path d="M682.666667 213.333333a85.333333 85.333333 0 0 0-85.333334 85.333334v85.333333a85.333333 85.333333 0 1 0 170.666667 0V298.666667a85.333333 85.333333 0 0 0-85.333333-85.333334z m0 42.666667a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-85.333333 0V298.666667a42.666667 42.666667 0 0 1 42.666667-42.666667zM490.666667 554.666667a85.333333 85.333333 0 0 0-85.333334 85.333333v85.333333a85.333333 85.333333 0 1 0 170.666667 0v-85.333333a85.333333 85.333333 0 0 0-85.333333-85.333333z m0 42.666666a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-85.333333 0v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667zM682.666667 554.666667a85.333333 85.333333 0 0 0-85.333334 85.333333v85.333333a85.333333 85.333333 0 1 0 170.666667 0v-85.333333a85.333333 85.333333 0 0 0-85.333333-85.333333z m0 42.666666a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-85.333333 0v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-caidan" viewBox="0 0 1024 1024"><path d="M256 213.333333h192a42.666667 42.666667 0 0 1 42.666667 42.666667v192a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333V426.666667a21.333333 21.333333 0 0 0 21.333333 21.333333H426.666667a21.333333 21.333333 0 0 0 21.333333-21.333333V277.333333A21.333333 21.333333 0 0 0 426.666667 256H277.333333z m298.666667-42.666667H768a42.666667 42.666667 0 0 1 42.666667 42.666667v192a42.666667 42.666667 0 0 1-42.666667 42.666667h-192a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333V426.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h149.333334a21.333333 21.333333 0 0 0 21.333333-21.333333V277.333333a21.333333 21.333333 0 0 0-21.333333-21.333333H597.333333z m-21.333333 277.333333H768a42.666667 42.666667 0 0 1 42.666667 42.666667V768a42.666667 42.666667 0 0 1-42.666667 42.666667h-192a42.666667 42.666667 0 0 1-42.666667-42.666667v-192a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v149.333334a21.333333 21.333333 0 0 0 21.333333 21.333333h149.333334a21.333333 21.333333 0 0 0 21.333333-21.333333V597.333333a21.333333 21.333333 0 0 0-21.333333-21.333333H597.333333z m-341.333333-42.666667h192a42.666667 42.666667 0 0 1 42.666667 42.666667V768a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667v-192a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v149.333334a21.333333 21.333333 0 0 0 21.333333 21.333333H426.666667a21.333333 21.333333 0 0 0 21.333333-21.333333V597.333333a21.333333 21.333333 0 0 0-21.333333-21.333333H277.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shujuku" viewBox="0 0 1024 1024"><path d="M256 213.333333h512a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-469.333334zM256 405.333333h512a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-469.333334z m405.333334 21.333333h21.333333a21.333333 21.333333 0 1 1 0 42.666667H682.666667a21.333333 21.333333 0 1 1 0-42.666667zM256 597.333333h512a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-469.333334z m405.333334 21.333333h21.333333a21.333333 21.333333 0 1 1 0 42.666667H682.666667a21.333333 21.333333 0 1 1 0-42.666667z m0-384h21.333333a21.333333 21.333333 0 1 1 0 42.666667H682.666667a21.333333 21.333333 0 1 1 0-42.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wubiankuang" viewBox="0 0 1024 1024"><path d="M384 810.666667v-42.666667h42.666667v42.666667zM554.666667 810.666667v-42.666667h42.666666v42.666667zM298.666667 810.666667v-42.666667h42.666666v42.666667zM469.333333 810.666667v-42.666667h42.666667v42.666667zM640 810.666667v-42.666667h42.666667v42.666667zM384 554.666667v-42.666667h42.666667v42.666667zM384 298.666667V256h42.666667v42.666667zM554.666667 298.666667V256h42.666666v42.666667zM298.666667 298.666667V256h42.666666v42.666667zM469.333333 298.666667V256h42.666667v42.666667zM640 298.666667V256h42.666667v42.666667zM725.333333 298.666667V256h42.666667v42.666667zM213.333333 298.666667V256h42.666667v42.666667zM554.666667 554.666667v-42.666667h42.666666v42.666667zM298.666667 554.666667v-42.666667h42.666666v42.666667zM469.333333 554.666667v-42.666667h42.666667v42.666667zM640 554.666667v-42.666667h42.666667v42.666667z" fill="#B5B8BD" ></path><path d="M725.333333 810.666667v-42.666667h42.666667v42.666667zM213.333333 810.666667v-42.666667h42.666667v42.666667zM725.333333 640v-42.666667h42.666667v42.666667zM213.333333 640v-42.666667h42.666667v42.666667zM725.333333 469.333333v-42.666666h42.666667v42.666666zM213.333333 469.333333v-42.666666h42.666667v42.666666zM725.333333 725.333333v-42.666666h42.666667v42.666666zM213.333333 725.333333v-42.666666h42.666667v42.666666zM725.333333 554.666667v-42.666667h42.666667v42.666667zM213.333333 554.666667v-42.666667h42.666667v42.666667zM725.333333 384V341.333333h42.666667v42.666667zM213.333333 384V341.333333h42.666667v42.666667z" fill="#B5B8BD" ></path><path d="M469.333333 640v-42.666667h42.666667v42.666667zM469.333333 469.333333v-42.666666h42.666667v42.666666zM469.333333 725.333333v-42.666666h42.666667v42.666666zM469.333333 554.666667v-42.666667h42.666667v42.666667zM469.333333 384V341.333333h42.666667v42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-bianji" viewBox="0 0 1024 1024"><path d="M642.56 363.733333l-170.88 170.88 37.76 22.613334 22.613333 37.717333 170.88-170.88-60.373333-60.330667z m30.208-30.165333l60.330667 60.330667 15.104-15.061334a21.333333 21.333333 0 0 0 0-30.165333l-30.165334-30.165333a21.333333 21.333333 0 0 0-30.165333 0l-15.104 15.104v-0.042667z m-231.253333 231.253333l-10.112 10.112v60.330667h60.330666l10.112-10.112-22.613333-37.717333-37.717333-22.613334z m291.584-291.584l60.373333 60.330667a42.666667 42.666667 0 0 1 0 60.330667l-284.032 284.032H388.736V557.226667l284.032-283.989334a42.666667 42.666667 0 0 1 60.330667 0zM554.666667 234.666667a21.333333 21.333333 0 0 1-21.333334 21.333333h-256c-11.818667 0-21.333333 9.472-21.333333 21.162667v469.674666c0 11.434667 9.557333 21.162667 21.333333 21.162667h469.333334c11.818667 0 21.333333-9.472 21.333333-21.162667V576a21.333333 21.333333 0 1 1 42.666667 0v191.872c0 23.637333-19.2 42.794667-42.453334 42.794667H255.786667A42.624 42.624 0 0 1 213.333333 767.914667V256.128C213.333333 232.490667 232.533333 213.333333 255.829333 213.333333H533.333333a21.333333 21.333333 0 0 1 21.333334 21.333334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-qingchuyangshi" viewBox="0 0 1024 1024"><path d="M214.016 722.432h593.92v42.410667H214.016v-42.410667z m578.048-312.106667l-180.693333-181.077333A53.376 53.376 0 0 0 573.738667 213.333333a45.653333 45.653333 0 0 0-32.64 13.226667l-313.941334 314.965333c-18.56 18.602667-17.322667 50.261333 2.688 70.4l68.010667 68.096h298.24l198.698667-199.338666c18.56-18.602667 17.322667-50.261333-2.730667-70.357334z m-213.546667 227.242667H315.434667L259.84 581.888c-3.968-4.010667-4.053333-9.088-2.730667-10.453333L430.08 398.08l193.92 193.92-45.44 45.568z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shanchu" viewBox="0 0 1024 1024"><path d="M320 341.333333v426.581334A42.666667 42.666667 0 0 0 362.581333 810.666667h298.88a42.666667 42.666667 0 0 0 42.538667-42.794667V341.333333h42.666667a21.333333 21.333333 0 1 0 0-42.666666h-469.333334a21.333333 21.333333 0 0 0 0 42.666666h42.666667zM426.666667 234.666667c0-11.776 9.642667-21.333333 21.248-21.333334h128.170666c11.690667 0 21.248 9.472 21.248 21.333334 0 11.776-9.642667 21.333333-21.248 21.333333h-128.170666A21.248 21.248 0 0 1 426.666667 234.666667zM362.666667 362.496A21.333333 21.333333 0 0 1 384.128 341.333333h255.701333c11.904 0 21.504 9.728 21.504 21.162667v384.341333a21.333333 21.333333 0 0 1-21.504 21.162667H384.128c-11.733333 0-21.290667-9.386667-21.461333-21.162667V362.496z m42.666666 42.837333a21.290667 21.290667 0 1 1 42.666667 0v298.666667a21.290667 21.290667 0 1 1-42.666667 0v-298.666667z m85.333334 0a21.290667 21.290667 0 1 1 42.666666 0v298.666667a21.290667 21.290667 0 1 1-42.666666 0v-298.666667z m85.333333 0a21.290667 21.290667 0 1 1 42.666667 0v298.666667a21.290667 21.290667 0 1 1-42.666667 0v-298.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenjuzhongduiqi" viewBox="0 0 1024 1024"><path d="M234.666667 298.666667h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 1 1 0-42.666666zM341.333333 426.666667h341.333334a21.333333 21.333333 0 1 1 0 42.666666H341.333333a21.333333 21.333333 0 0 1 0-42.666666z m-106.666666 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666zM341.333333 682.666667h341.333334a21.333333 21.333333 0 1 1 0 42.666666H341.333333a21.333333 21.333333 0 0 1 0-42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dayin" viewBox="0 0 1024 1024"><path d="M743.125333 341.333333c35.669333 0 64.384 28.885333 67.285334 65.024l0.256 6.101334V682.666667h-149.76v-42.666667H768V412.458667c0-14.592-9.514667-26.154667-21.333333-28.16L743.168 384H280.874667c-12.16 0-22.784 10.24-24.576 24.149333l-0.298667 4.266667V640h127.36v42.666667H213.333333V412.458667c0-36.906667 26.794667-67.712 61.653334-70.826667L280.874667 341.333333h462.250666z" fill="#444D5A" ></path><path d="M682.666667 213.333333H341.333333v170.666667h341.333334V213.333333z m-42.666667 42.666667v85.333333H384V256h256zM682.666667 554.666667v256H341.333333v-256h341.333334z m-42.666667 42.666666H384v170.666667h256v-170.666667z" fill="#444D5A" ></path><path d="M341.333333 426.666667h128v42.666666H341.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenfenge" viewBox="0 0 1024 1024"><path d="M544.896 389.717333h110.762667v46.933334c6.698667 6.613333 15.658667 6.613333 22.357333 0l84.949333-55.125334c6.698667-4.437333 6.698667-13.226667 0-19.84l-84.906666-57.386666c-6.741333-6.613333-15.701333-6.613333-22.4 0v41.258666h-133.12l-89.429334 154.453334H343.722667v0.128h-22.698667c-11.178667 0-22.357333 11.050667-22.357333 22.058666 0 11.050667 11.178667 22.058667 22.357333 22.058667h134.101333l-0.085333-0.128h0.426667l89.386666-154.453333h0.042667z m133.12 198.954667a15.061333 15.061333 0 0 0-22.314667 0v43.690667h-66.133333l-67.029333-110.293334-22.357334 44.117334s62.592 103.68 67.072 110.293333h88.448V721.066667a15.061333 15.061333 0 0 0 22.314667 0l84.949333-55.168c6.698667-4.437333 6.698667-13.226667 0-19.84l-84.906666-57.386667h-0.042667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-hanshu" viewBox="0 0 1024 1024"><path d="M771.072 391.253333a6.698667 6.698667 0 0 0-0.512-9.514666 6.997333 6.997333 0 0 0-4.48-1.749334h-61.354667c-1.962667 0-3.84 0.853333-5.12 2.346667l-103.893333 122.709333a6.698667 6.698667 0 0 1-11.392-1.621333l-53.674667-119.381333a6.656 6.656 0 0 0-6.144-4.010667H381.866667l0.853333-3.968 6.741333-35.712c8.874667-46.933333 32.085333-68.864 72.533334-68.864 15.658667 0 29.994667 1.450667 41.258666 4.010667l11.861334-56.490667a197.888 197.888 0 0 0-46.464-5.12c-87.296 0-132.224 37.418667-148.650667 124.458667l-7.978667 41.813333H229.632a6.698667 6.698667 0 0 0-6.613333 5.376l-9.130667 43.818667a6.826667 6.826667 0 0 0 6.570667 8.106666h79.786666l-75.264 363.52a6.826667 6.826667 0 0 0 6.570667 8.234667H287.573333c3.242667 0 5.973333-2.346667 6.570667-5.418667l75.861333-366.165333h114.773334l57.685333 117.546667a6.570667 6.570667 0 0 1-1.024 7.381333l-152.746667 171.690667a6.826667 6.826667 0 0 0 5.12 11.264h61.44c2.005333 0 3.882667-0.853333 5.162667-2.389334l104.576-123.989333a6.826667 6.826667 0 0 1 11.392 1.493333l55.594667 120.661334a6.741333 6.741333 0 0 0 6.186666 3.968h54.613334a6.784 6.784 0 0 0 6.101333-9.770667L618.325333 567.466667a6.698667 6.698667 0 0 1 1.066667-7.466667l151.722667-168.661333-0.042667-0.042667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jiangxu" viewBox="0 0 1024 1024"><path d="M430.848 666.197333H366.592V236.074667a6.656 6.656 0 0 0-6.741333-6.528h-47.36a6.656 6.656 0 0 0-6.741334 6.528v430.122666H241.493333c-5.674667 0-8.874667 6.314667-5.333333 10.538667l94.72 115.2a6.912 6.912 0 0 0 10.624 0l94.72-115.2c3.413333-4.224 0.298667-10.538667-5.376-10.538667zM582.442667 806.698667l20.992-61.098667h103.68l21.205333 61.098667h43.690667L672.64 533.333333h-34.688l-99.370667 273.365334h43.861334z m112.896-97.877334h-79.872l39.552-119.424h0.768l39.552 119.466667zM742.570667 486.698667v-39.168h-124.288l124.288-203.093334V213.333333h-169.685334v36.949334h119.04l-123.904 201.941333v34.474667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dingbuduiqi" viewBox="0 0 1024 1024"><path d="M298.666667 384h426.666666v42.666667H298.666667zM416 527.829333l90.496-90.496 90.538667 90.496-30.165334 30.165334-37.802666-37.717334v290.090667h-42.666667v-292.565333l-40.234667 40.192-30.165333-30.165334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-tupian" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 263.381334l-233.984 190.890666-118.613333-98.218666L256 704.64V768h512v-291.285333zM768 256H256v392.704l159.146667-134.954667 119.04 98.602667L768 421.674667V256zM384 341.333333a42.666667 42.666667 0 1 1 0 85.333334 42.666667 42.666667 0 0 1 0-85.333334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiangxia90" viewBox="0 0 1024 1024"><path d="M789.333333 528.213333l-213.333333 77.653334v0.64l-1.621333-0.042667L426.666667 660.224v-45.354667l106.666666-38.826666V423.637333l-106.666666-38.826666V339.456l147.498666 53.674667 1.834667 0.042666v0.64l213.333333 77.610667v56.789333z m-46.634666-28.416L576 439.125333v121.386667l166.698667-60.714667zM384 687.829333l-90.496 90.538667-90.538667-90.538667 30.165334-30.165333 37.802666 37.76V234.666667h42.666667v463.232l40.234667-40.234667 30.165333 30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shupaiwenzi" viewBox="0 0 1024 1024"><path d="M636.757333 298.666667l77.653334 213.333333h0.64l-0.042667 1.621333 53.76 147.712h-45.354667l-38.826666-106.666666h-152.405334l-38.826666 106.666666H448l53.674667-147.498666 0.042666-1.834667h0.64l77.610667-213.333333h56.789333z m-28.416 46.634666L547.669333 512h121.386667l-60.714667-166.698667zM394.368 698.496L303.786667 789.034667 213.333333 698.453333l30.165334-30.165333 37.802666 37.76V245.333333h42.666667v463.232l40.234667-40.234666 30.165333 30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-quanjiabiankuang" viewBox="0 0 1024 1024"><path d="M213.333333 810.666667V256h42.666667v554.666667zM725.333333 810.666667V256h42.666667v554.666667zM469.333333 810.666667V256h42.666667v554.666667z" fill="#444D5A" ></path><path d="M213.333333 256h554.666667v42.666667H213.333333zM213.333333 512h554.666667v42.666667H213.333333zM213.333333 768h554.666667v42.666667H213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shengxu" viewBox="0 0 1024 1024"><path d="M430.848 357.76H366.592v430.165333a6.656 6.656 0 0 1-6.741333 6.485334h-47.36a6.656 6.656 0 0 1-6.741334-6.485334V357.76H241.493333c-5.674667 0-8.874667-6.314667-5.333333-10.538667l94.72-115.2a6.912 6.912 0 0 1 10.624 0l94.72 115.2c3.413333 4.224 0.298667 10.538667-5.376 10.538667zM582.442667 486.698667l20.992-61.098667h103.68l21.205333 61.098667h43.690667L672.64 213.333333h-34.688l-99.370667 273.365334h43.861334z m112.896-97.877334h-79.872l39.552-119.424h0.768l39.552 119.466667zM742.570667 806.698667v-39.168h-124.288l124.288-203.093334V533.333333h-169.685334v36.949334h119.04l-123.904 201.941333v34.474667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-caijian" viewBox="0 0 1024 1024"><path d="M341.333333 213.333333h42.666667v469.333334H341.333333z" fill="#444D5A" ></path><path d="M810.666667 640v42.666667H341.333333v-42.666667z" fill="#444D5A" ></path><path d="M682.666667 810.666667h-42.666667V341.333333h42.666667z" fill="#444D5A" ></path><path d="M213.333333 384V341.333333h469.333334v42.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jine" viewBox="0 0 1024 1024"><path d="M658.816 256l34.986667 24.490667-124.629334 177.92h119.04v42.666666h-149.333333v85.333334h149.333333v42.666666h-149.333333v128h-42.666667v-128h-149.333333v-42.666666h149.333333v-85.333334h-149.333333v-42.666666h119.04L341.333333 280.490667 376.32 256l141.226667 201.728L658.816 256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-caidan1" viewBox="0 0 1024 1024"><path d="M256 640h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-42.666667zM682.666667 213.333333h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667h-85.333333a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-42.666667zM469.333333 640h85.333334a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666666 42.666667h-85.333334a42.666667 42.666667 0 0 1-42.666666-42.666667v-85.333333a42.666667 42.666667 0 0 1 42.666666-42.666667z m21.333334 42.666667a21.333333 21.333333 0 0 0-21.333334 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333334 21.333333h42.666666a21.333333 21.333333 0 0 0 21.333334-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333334-21.333333h-42.666666zM469.333333 213.333333h85.333334a42.666667 42.666667 0 0 1 42.666666 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666666 42.666667h-85.333334a42.666667 42.666667 0 0 1-42.666666-42.666667V256a42.666667 42.666667 0 0 1 42.666666-42.666667z m21.333334 42.666667a21.333333 21.333333 0 0 0-21.333334 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333334 21.333333h42.666666a21.333333 21.333333 0 0 0 21.333334-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333334-21.333333h-42.666666z m192 384h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667h-85.333333a42.666667 42.666667 0 0 1-42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-42.666667zM469.333333 426.666667h85.333334a42.666667 42.666667 0 0 1 42.666666 42.666666v85.333334a42.666667 42.666667 0 0 1-42.666666 42.666666h-85.333334a42.666667 42.666667 0 0 1-42.666666-42.666666v-85.333334a42.666667 42.666667 0 0 1 42.666666-42.666666z m21.333334 42.666666a21.333333 21.333333 0 0 0-21.333334 21.333334v42.666666a21.333333 21.333333 0 0 0 21.333334 21.333334h42.666666a21.333333 21.333333 0 0 0 21.333334-21.333334v-42.666666a21.333333 21.333333 0 0 0-21.333334-21.333334h-42.666666zM256 426.666667h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666666v85.333334a42.666667 42.666667 0 0 1-42.666667 42.666666H256a42.666667 42.666667 0 0 1-42.666667-42.666666v-85.333334a42.666667 42.666667 0 0 1 42.666667-42.666666z m426.666667 0h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666666v85.333334a42.666667 42.666667 0 0 1-42.666667 42.666666h-85.333333a42.666667 42.666667 0 0 1-42.666667-42.666666v-85.333334a42.666667 42.666667 0 0 1 42.666667-42.666666z m21.333333 42.666666a21.333333 21.333333 0 0 0-21.333333 21.333334v42.666666a21.333333 21.333333 0 0 0 21.333333 21.333334h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333334v-42.666666a21.333333 21.333333 0 0 0-21.333333-21.333334h-42.666667z m-426.666667 0a21.333333 21.333333 0 0 0-21.333333 21.333334v42.666666a21.333333 21.333333 0 0 0 21.333333 21.333334h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333334v-42.666666a21.333333 21.333333 0 0 0-21.333333-21.333334h-42.666667zM256 213.333333h85.333333a42.666667 42.666667 0 0 1 42.666667 42.666667v85.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m21.333333 42.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v42.666667a21.333333 21.333333 0 0 0 21.333333 21.333333h42.666667a21.333333 21.333333 0 0 0 21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 0-21.333333-21.333333h-42.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-quxiaohebing" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256z" fill="#B5B8BD" ></path><path d="M533.333333 213.333333v170.666667h-42.666666V213.333333z" fill="#B5B8BD" ></path><path d="M405.333333 426.666667v213.333333h-42.666666v-213.333333zM533.333333 405.333333v213.333334h-42.666666v-213.333334zM661.333333 405.333333v213.333334h-42.666666v-213.333334z" fill="#444D5A" ></path><path d="M533.333333 597.333333v170.666667h-42.666666v-170.666667z" fill="#B5B8BD" ></path><path d="M810.666667 384v256H213.333333V384h597.333334z m-42.666667 42.666667H256v170.666666h512v-170.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenxiahuaxian" viewBox="0 0 1024 1024"><path d="M362.666667 256v298.666667a149.333333 149.333333 0 0 0 298.453333 8.192L661.333333 554.666667V256h42.666667v298.666667a192 192 0 0 1-383.786667 9.045333L320 554.666667V256h42.666667z" fill="#444D5A" ></path><path d="M256 768m21.333333 0l469.333334 0q21.333333 0 21.333333 21.333333l0 0q0 21.333333-21.333333 21.333334l-469.333334 0q-21.333333 0-21.333333-21.333334l0 0q0-21.333333 21.333333-21.333333Z" fill="#444D5A" ></path><path d="M256 256m21.333333 0l128 0q21.333333 0 21.333334 21.333333l0 0q0 21.333333-21.333334 21.333334l-128 0q-21.333333 0-21.333333-21.333334l0 0q0-21.333333 21.333333-21.333333Z" fill="#444D5A" ></path><path d="M597.333333 256m21.333334 0l128 0q21.333333 0 21.333333 21.333333l0 0q0 21.333333-21.333333 21.333334l-128 0q-21.333333 0-21.333334-21.333334l0 0q0-21.333333 21.333334-21.333333Z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shangbiankuang" viewBox="0 0 1024 1024"><path d="M213.333333 256h554.666667v42.666667H213.333333z" fill="#444D5A" ></path><path d="M213.333333 426.666667h42.666667v42.666666H213.333333zM213.333333 597.333333h42.666667v42.666667H213.333333zM213.333333 341.333333h42.666667v42.666667H213.333333zM213.333333 512h42.666667v42.666667H213.333333zM213.333333 682.666667h42.666667v42.666666H213.333333zM469.333333 426.666667h42.666667v42.666666h-42.666667zM725.333333 426.666667h42.666667v42.666666h-42.666667zM725.333333 597.333333h42.666667v42.666667h-42.666667zM725.333333 341.333333h42.666667v42.666667h-42.666667zM725.333333 512h42.666667v42.666667h-42.666667zM725.333333 682.666667h42.666667v42.666666h-42.666667zM725.333333 768h42.666667v42.666667h-42.666667zM469.333333 597.333333h42.666667v42.666667h-42.666667zM469.333333 341.333333h42.666667v42.666667h-42.666667zM469.333333 512h42.666667v42.666667h-42.666667zM469.333333 682.666667h42.666667v42.666666h-42.666667zM213.333333 768h42.666667v42.666667H213.333333zM384 768h42.666667v42.666667H384zM554.666667 768h42.666666v42.666667h-42.666666zM298.666667 768h42.666666v42.666667H298.666667zM469.333333 768h42.666667v42.666667h-42.666667zM640 768h42.666667v42.666667h-42.666667zM384 512h42.666667v42.666667H384zM554.666667 512h42.666666v42.666667h-42.666666zM298.666667 512h42.666666v42.666667H298.666667z" fill="#B5B8BD" ></path><path d="M469.333333 512h42.666667v42.666667h-42.666667zM640 512h42.666667v42.666667h-42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-dingwei" viewBox="0 0 1024 1024"><path d="M618.666667 723.584V661.333333a21.333333 21.333333 0 1 1 42.666666 0v62.250667a128.128 128.128 0 0 0 104.917334-104.917333H704a21.333333 21.333333 0 1 1 0-42.666667h62.250667a128.128 128.128 0 0 0-104.917334-104.874667V533.333333a21.333333 21.333333 0 1 1-42.666666 0v-62.208a128.085333 128.085333 0 0 0-104.874667 104.874667H576a21.333333 21.333333 0 0 1 0 42.666667h-62.208a128.128 128.128 0 0 0 104.874667 104.917333z m149.333333-296.96a213.12 213.12 0 0 0-42.666667-24.874667V277.333333a21.333333 21.333333 0 0 0-21.333333-21.333333h-426.666667a21.333333 21.333333 0 0 0-21.333333 21.333333v341.333334a21.333333 21.333333 0 0 0 21.333333 21.333333h153.6c2.986667 14.848 7.594667 29.098667 13.482667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667h469.333333a42.666667 42.666667 0 0 1 42.666667 42.666667v170.666667zM640 768a170.666667 170.666667 0 1 1 0-341.333333 170.666667 170.666667 0 0 1 0 341.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-sizhoujiabiankuang" viewBox="0 0 1024 1024"><path d="M213.333333 810.666667V256h42.666667v554.666667zM725.333333 810.666667V256h42.666667v554.666667z" fill="#444D5A" ></path><path d="M213.333333 256h554.666667v42.666667H213.333333zM213.333333 768h554.666667v42.666667H213.333333z" fill="#444D5A" ></path><path d="M384 554.666667v-42.666667h42.666667v42.666667zM554.666667 554.666667v-42.666667h42.666666v42.666667zM298.666667 554.666667v-42.666667h42.666666v42.666667zM469.333333 554.666667v-42.666667h42.666667v42.666667zM640 554.666667v-42.666667h42.666667v42.666667zM469.333333 640v-42.666667h42.666667v42.666667zM469.333333 469.333333v-42.666666h42.666667v42.666666zM469.333333 725.333333v-42.666666h42.666667v42.666666z" fill="#B5B8BD" ></path><path d="M469.333333 554.666667v-42.666667h42.666667v42.666667zM469.333333 384V341.333333h42.666667v42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-cebianlanshouqi" viewBox="0 0 1024 1024"><path d="M256 320a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 1 1 0 42.666666h-469.333334a21.290667 21.290667 0 0 1-21.333333-21.333333zM256 512c0-11.776 9.6-21.333333 21.461333-21.333333h277.077334a21.333333 21.333333 0 1 1 0 42.666666H277.504A21.333333 21.333333 0 0 1 256 512z m0 192a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 1 1 0 42.666666h-469.333334a21.290667 21.290667 0 0 1-21.333333-21.333333z m368.896-283.562667a21.333333 21.333333 0 0 1 30.165333-30.165333l106.666667 106.666667a21.333333 21.333333 0 0 1 0 30.165333l-106.666667 106.666667a21.333333 21.333333 0 0 1-30.165333-30.165334L716.501333 512l-91.562666-91.605333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-hebing" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256z" fill="#444D5A" ></path><path d="M389.162667 426.666667l90.538666 90.496-90.538666 90.538666-30.165334-30.165333 37.802667-37.845333-119.466667 0.042666v-42.666666l121.856-0.042667-40.192-40.192 30.165334-30.165333zM645.162667 426.666667L554.666667 517.162667l90.496 90.538666 30.165333-30.165333-37.76-37.845333 119.466667 0.042666v-42.666666l-121.856-0.042667 40.149333-40.192-30.165333-30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiangshangqingxie" viewBox="0 0 1024 1024"><path d="M290.944 289.365333l205.738667 95.914667 0.469333-0.426667 1.109333 1.152 142.506667 66.432-32.128 32.085334-102.826667-47.957334-107.818666 107.733334 48 102.912-32.085334 32.042666-66.346666-142.250666-1.28-1.28 0.469333-0.512-96-205.696 40.192-40.149334z m12.885333 53.034667l74.965334 160.810667 85.845333-85.845334L303.786667 342.4zM690.432 463.104h128v128h-42.666667v-53.418667l-325.845333 325.802667-30.165333-30.165333 327.552-327.552h-56.874667v-42.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shuipingduiqi" viewBox="0 0 1024 1024"><path d="M725.333333 533.333333H298.666667v-42.666666h426.666666zM426.666667 634.496l90.496-90.496 90.538666 90.496-30.165333 30.165333-39.936-39.850666v121.557333h-42.666667v-119.765333l-38.101333 38.058666-30.165333-30.165333zM426.666667 389.162667l90.496 90.538666 90.538666-90.538666-30.165333-30.165334-39.936 39.893334V277.333333h-42.666667v119.765334l-38.101333-38.101334-30.165333 30.165334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenshanchuxian" viewBox="0 0 1024 1024"><path d="M298.666667 256h426.666666v42.666667H298.666667z" fill="#444D5A" ></path><path d="M533.290667 554.666667l0.042666 192h-42.666666l-0.042667-192h42.666667z m0.042666-277.333334l-0.042666 234.666667h-42.666667l0.042667-234.666667h42.666666zM320 256v85.333333h-42.666667V256zM746.666667 256v85.333333h-42.666667V256z" fill="#444D5A" ></path><path d="M256 469.333333h512v42.666667H256zM426.666667 725.333333h170.666666v42.666667h-170.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenyouduiqi" viewBox="0 0 1024 1024"><path d="M234.666667 298.666667h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 1 1 0-42.666666z m213.333333 128h341.333333a21.333333 21.333333 0 1 1 0 42.666666h-341.333333a21.333333 21.333333 0 0 1 0-42.666666z m-213.333333 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666z m213.333333 128h341.333333a21.333333 21.333333 0 1 1 0 42.666666h-341.333333a21.333333 21.333333 0 0 1 0-42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-qianjin" viewBox="0 0 1024 1024"><path d="M287.018667 419.328h310.997333v42.666667H286.72l84.48 84.437333a21.333333 21.333333 0 1 1-30.208 30.165333l-120.746667-120.704a21.248 21.248 0 0 1 0-30.165333l120.746667-120.661333a21.333333 21.333333 0 0 1 30.165333 30.165333L287.018667 419.328z m524.330666 213.333333a213.333333 213.333333 0 0 0-213.333333-213.333333v42.666667a170.666667 170.666667 0 0 1 170.666667 170.666666h42.666666z m0 0h-42.666666v64a21.333333 21.333333 0 1 0 42.666666 0v-64z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-tubiao" viewBox="0 0 1024 1024"><path d="M256 213.333333H213.333333v597.333334h597.333334v-42.666667H256z" fill="#444D5A" ></path><path d="M490.666667 343.466667V554.666667h185.6c-19.2 72.533333-85.333333 128-164.266667 128-93.866667 0-170.666667-76.8-170.666667-170.666667 0-87.466667 66.133333-157.866667 149.333334-168.533333M512 298.666667c-117.333333 0-213.333333 96-213.333333 213.333333s96 213.333333 213.333333 213.333333 213.333333-96 213.333333-213.333333h-192V298.666667H512z" fill="#444D5A" ></path><path d="M618.666667 260.266667c83.2 14.933333 134.4 74.666667 147.2 166.4H618.666667V260.266667m-42.666667-46.933334v256H810.666667c0-149.333333-85.333333-256-234.666667-256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-youbiankuang" viewBox="0 0 1024 1024"><path d="M768 256v554.666667h-42.666667V256z" fill="#444D5A" ></path><path d="M597.333333 256v42.666667h-42.666666V256zM426.666667 256v42.666667H384V256zM682.666667 256v42.666667h-42.666667V256zM512 256v42.666667h-42.666667V256zM341.333333 256v42.666667H298.666667V256z" fill="#B5B8BD" ></path><path d="M597.333333 512v42.666667h-42.666666v-42.666667z" fill="#B5B8BD" ></path><path d="M597.333333 768v42.666667h-42.666666v-42.666667zM426.666667 768v42.666667H384v-42.666667zM682.666667 768v42.666667h-42.666667v-42.666667zM512 768v42.666667h-42.666667v-42.666667zM341.333333 768v42.666667H298.666667v-42.666667zM256 768v42.666667H213.333333v-42.666667z" fill="#B5B8BD" ></path><path d="M426.666667 512v42.666667H384v-42.666667zM682.666667 512v42.666667h-42.666667v-42.666667zM512 512v42.666667h-42.666667v-42.666667zM341.333333 512v42.666667H298.666667v-42.666667z" fill="#B5B8BD" ></path><path d="M256 256v42.666667H213.333333V256zM256 426.666667v42.666666H213.333333v-42.666666zM256 597.333333v42.666667H213.333333v-42.666667zM256 341.333333v42.666667H213.333333V341.333333zM256 512v42.666667H213.333333v-42.666667zM256 682.666667v42.666666H213.333333v-42.666666z" fill="#B5B8BD" ></path><path d="M512 426.666667v42.666666h-42.666667v-42.666666zM512 597.333333v42.666667h-42.666667v-42.666667zM512 341.333333v42.666667h-42.666667V341.333333zM512 512v42.666667h-42.666667v-42.666667zM512 682.666667v42.666666h-42.666667v-42.666666z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-baifenhao" viewBox="0 0 1024 1024"><path d="M653.525333 213.333333l36.949334 21.333334-320 554.24-36.949334-21.333334L653.525333 213.333333zM682.666667 469.333333c71.68 0 128 67.626667 128 149.333334S754.346667 768 682.666667 768s-128-67.626667-128-149.333333 56.32-149.333333 128-149.333334z m0 42.666667c-46.165333 0-85.333333 46.976-85.333334 106.666667s39.168 106.666667 85.333334 106.666666c46.165333 0 85.333333-46.976 85.333333-106.666666s-39.168-106.666667-85.333333-106.666667zM341.333333 234.666667c71.68 0 128 67.626667 128 149.333333s-56.32 149.333333-128 149.333333S213.333333 465.706667 213.333333 384s56.32-149.333333 128-149.333333z m0 42.666666C295.168 277.333333 256 324.309333 256 384s39.168 106.666667 85.333333 106.666667c46.165333 0 85.333333-46.976 85.333334-106.666667s-39.168-106.666667-85.333334-106.666667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-geshishua" viewBox="0 0 1024 1024"><path d="M725.333333 213.333333v85.333334h85.333334v234.666666h-298.666667V597.333333h21.333333v213.333334h-85.333333v-213.333334h21.333333v-106.666666h298.666667V341.333333h-42.666667v85.333334H213.333333V213.333333h512z m-42.666666 42.666667H256v128h426.666667V256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-baocun" viewBox="0 0 1024 1024"><path d="M341.333333 256H277.333333a21.333333 21.333333 0 0 0-21.333333 21.333333v469.333334a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 0 0 21.333333-21.333333v-469.333334a21.333333 21.333333 0 0 0-21.333333-21.333333H682.666667v213.333333a42.666667 42.666667 0 0 1-42.666667 42.666667H384a42.666667 42.666667 0 0 1-42.666667-42.666667V256zM256 213.333333h512a42.666667 42.666667 0 0 1 42.666667 42.666667v512a42.666667 42.666667 0 0 1-42.666667 42.666667H256a42.666667 42.666667 0 0 1-42.666667-42.666667V256a42.666667 42.666667 0 0 1 42.666667-42.666667z m128 42.666667v192a21.333333 21.333333 0 0 0 21.333333 21.333333h213.333334a21.333333 21.333333 0 0 0 21.333333-21.333333V256H384z m192 42.666667a21.333333 21.333333 0 0 1 21.333333 21.333333v85.333333a21.333333 21.333333 0 0 1-42.666666 0v-85.333333a21.333333 21.333333 0 0 1 21.333333-21.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shujuyanzheng" viewBox="0 0 1024 1024"><path d="M764.330667 592.170667l30.165333 30.165333L734.165333 682.666667l60.330667 60.330666-30.165333 30.165334-60.330667-60.330667-60.330667 60.330667-30.165333-30.165334L673.834667 682.666667l-60.330667-60.330667 30.165333-30.165333 60.330667 60.330666 60.330667-60.330666zM725.333333 512v42.666667H256v128h256v42.666666H213.333333v-213.333333h512z m47.829334-209.664l30.165333 30.165333L682.666667 453.12l-30.165334 30.165333-90.496-90.453333 30.165334-30.208 60.330666 60.330667 120.661334-120.661334zM725.333333 256v42.666667H256v128h256v42.666666H213.333333V256h512z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jieduan" viewBox="0 0 1024 1024"><path d="M767.829333 213.333333h42.496v597.333334h-42.496z" fill="#B5B8BD" ></path><path d="M767.146667 553.216h-384v-42.496h384v42.496zM213.333333 213.333333h84.992v597.333334H213.333333V213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-geshitiaojian" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 320h-106.666667V768H768v-234.666667z m-405.376 0h-106.666667V768h106.666667v-234.666667z m256.042667 86.784L445.482667 768H618.666667v-147.882667z m0-162.346666l-213.376 179.968v108.885333l213.376-179.072v-109.781333z m0-163.669334l-213.333334 179.029334v108.885333l213.333334-179.072V294.101333zM768 256h-103.936l-2.730667 2.304V490.666667H768V256zM362.666667 256H256v234.666667h106.666667V256z m235.008 0H405.333333v161.408L597.674667 256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zidonghuanhang" viewBox="0 0 1024 1024"><path d="M213.333333 213.333333h85.12v597.333334H213.333333V213.333333z m225.450667 477.44l25.557333-21.333333-72.362666-63.786667 72.362666-63.872-25.557333-21.248-93.610667 80.853334h4.266667-4.266667l93.610667 89.386666z" fill="#444D5A" ></path><path d="M768 213.333333h42.581333v597.333334H768z" fill="#B5B8BD" ></path><path d="M540.928 367.274667H391.978667v42.581333h148.949333c59.605333 0 106.410667 38.314667 106.410667 85.12s-46.805333 85.12-106.410667 85.12H391.978667v42.581333h148.949333c85.12 0 157.482667-55.338667 157.482667-127.701333s-72.362667-127.701333-157.44-127.701333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-cebianlanzhankai" viewBox="0 0 1024 1024"><path d="M256 320a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 1 1 0 42.666666h-469.333334a21.290667 21.290667 0 0 1-21.333333-21.333333z m192 192c0-11.776 9.557333-21.333333 21.461333-21.333333h277.034667a21.333333 21.333333 0 1 1 0 42.666666h-277.034667a21.333333 21.333333 0 0 1-21.461333-21.333333zM256 704a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 1 1 0 42.666666h-469.333334a21.290667 21.290667 0 0 1-21.333333-21.333333z m143.061333-283.562667L307.541333 512l91.605334 91.562667a21.333333 21.333333 0 0 1-30.165334 30.165333l-106.666666-106.666667a21.333333 21.333333 0 0 1 0-30.165333l106.666666-106.666667a21.333333 21.333333 0 0 1 30.165334 30.165334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shaixuan2" viewBox="0 0 1024 1024"><path d="M736 213.333333H328.533333C288 213.333333 256 245.333333 256 285.866667c0 17.066667 6.4 34.133333 17.066667 46.933333 0 2.133333 2.133333 2.133333 2.133333 4.266667l160 160v168.533333c0 6.4 2.133333 10.666667 6.4 14.933333l145.066667 123.733334c4.266667 2.133333 8.533333 4.266667 12.8 4.266666 6.4 0 10.666667-2.133333 14.933333-6.4 4.266667-4.266667 4.266667-10.666667 4.266667-14.933333V503.466667l170.666666-166.4 2.133334-2.133334c10.666667-12.8 17.066667-29.866667 17.066666-46.933333 0-42.666667-32-74.666667-72.533333-74.666667z m23.466667 93.866667s-2.133333 2.133333 0 0l-172.8 172.8c-4.266667 4.266667-6.4 8.533333-6.4 14.933333v251.733334l-104.533334-87.466667V490.666667c0-6.4-2.133333-10.666667-6.4-14.933334l-162.133333-166.4-2.133333-2.133333c-6.4-6.4-8.533333-12.8-8.533334-21.333333 0-17.066667 14.933333-32 32-32h407.466667c17.066667 0 32 14.933333 32 32 0 8.533333-4.266667 14.933333-8.533333 21.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiangxiaqingxie" viewBox="0 0 1024 1024"><path d="M755.968 312.277333l-95.914667 205.738667 0.426667 0.469333-1.152 1.109334-66.432 142.506666-32.085333-32.128 47.957333-102.826666-107.733333-107.818667-102.912 48-32.042667-32.085333 142.250667-66.346667 1.28-1.28 0.512 0.469333 205.696-96 40.149333 40.192z m-53.034667 12.885334l-160.810666 74.965333 85.845333 85.845333 74.965333-160.810666zM582.229333 711.765333v128h-128v-42.666666h53.418667l-325.802667-325.845334 30.165334-30.165333 327.552 327.552v-56.874667h42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-yichu" viewBox="0 0 1024 1024"><path d="M256 213.333333h85.333333v597.333334H256z" fill="#444D5A" ></path><path d="M711.466667 642.688l-26.154667-26.154667 89.6-85.845333H256v-37.376h518.954667l-89.6-85.845333 26.112-26.112L842.154667 512z" fill="#444D5A" ></path><path d="M573.354667 213.333333h42.666666v242.688h-42.666666V213.333333z m0 354.688h42.666666V810.666667h-42.666666v-242.688z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-chuizhihebing" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256z" fill="#444D5A" ></path><path d="M640 213.333333v597.333334h-42.666667V213.333333zM426.666667 213.333333v597.333334H384V213.333333z" fill="#444D5A" ></path><path d="M597.034667 591.829333l-90.538667 90.538667L416 591.786667l30.165333-30.165334 37.802667 37.76V352h42.666667v249.898667l40.234666-40.234667 30.165334 30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenfensanduiqi" viewBox="0 0 1024 1024"><path d="M234.666667 298.666667h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 1 1 0-42.666666z m0 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666z m0 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666z m0 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zuobiankuang" viewBox="0 0 1024 1024"><path d="M213.333333 810.666667V256h42.666667v554.666667z" fill="#444D5A" ></path><path d="M384 810.666667v-42.666667h42.666667v42.666667zM554.666667 810.666667v-42.666667h42.666666v42.666667zM298.666667 810.666667v-42.666667h42.666666v42.666667zM469.333333 810.666667v-42.666667h42.666667v42.666667zM640 810.666667v-42.666667h42.666667v42.666667z" fill="#B5B8BD" ></path><path d="M384 554.666667v-42.666667h42.666667v42.666667zM554.666667 554.666667v-42.666667h42.666666v42.666667zM298.666667 554.666667v-42.666667h42.666666v42.666667zM469.333333 554.666667v-42.666667h42.666667v42.666667zM640 554.666667v-42.666667h42.666667v42.666667zM469.333333 640v-42.666667h42.666667v42.666667zM469.333333 469.333333v-42.666666h42.666667v42.666666zM469.333333 725.333333v-42.666666h42.666667v42.666666z" fill="#B5B8BD" ></path><path d="M469.333333 554.666667v-42.666667h42.666667v42.666667zM469.333333 384V341.333333h42.666667v42.666667z" fill="#B5B8BD" ></path><path d="M384 298.666667V256h42.666667v42.666667zM554.666667 298.666667V256h42.666666v42.666667zM298.666667 298.666667V256h42.666666v42.666667zM469.333333 298.666667V256h42.666667v42.666667zM640 298.666667V256h42.666667v42.666667zM725.333333 298.666667V256h42.666667v42.666667z" fill="#B5B8BD" ></path><path d="M725.333333 810.666667v-42.666667h42.666667v42.666667zM725.333333 640v-42.666667h42.666667v42.666667zM725.333333 469.333333v-42.666666h42.666667v42.666666zM725.333333 725.333333v-42.666666h42.666667v42.666666zM725.333333 554.666667v-42.666667h42.666667v42.666667zM725.333333 384V341.333333h42.666667v42.666667z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-fenyechakan" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v42.666667h-170.709334L640 768h170.666667v42.666667h-213.333334V213.333333h213.333334z m-384 0l-0.042667 554.666667H426.666667v42.666667H213.333333v-42.666667h170.624L384 256H213.333333V213.333333h213.333334z m106.666666 512v85.333334h-42.666666v-85.333334h42.666666z m0-170.666666v85.333333h-42.666666v-85.333333h42.666666z m0-170.666667v85.333333h-42.666666V384h42.666666z m0-170.666667v85.333334h-42.666666V213.333333h42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-yunhang" viewBox="0 0 1024 1024"><path d="M268.032 523.434667l60.373333-60.330667 211.2 211.2-60.373333 60.330667z" fill="#70BC64" ></path><path d="M780.928 312.234667l60.373333 60.330666-331.904 331.861334-60.330666-60.330667z" fill="#70BC64" ></path></symbol><symbol id="luckysheet-iconfont-lie" viewBox="0 0 1024 1024"><path d="M234.666667 832v-597.333333h42.666666v597.333333zM405.333333 832v-597.333333h42.666667v597.333333zM576 832v-597.333333h42.666667v597.333333zM746.666667 832v-597.333333h42.666666v597.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-quanping" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256zM341.333333 597.333333v85.376L426.666667 682.666667v42.666666H298.666667v-128h42.666666z m384 0v128h-128v-42.666666h85.376L682.666667 597.333333h42.666666z m-298.666666-298.666666v42.666666l-85.333334-0.042666V426.666667H298.666667V298.666667h128z m298.666666 0v128h-42.666666l0.042666-85.333334H597.333333V298.666667h128z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shaixuan" viewBox="0 0 1024 1024"><path d="M736 213.333333H328.533333C288 213.333333 256 245.333333 256 285.866667c0 17.066667 6.4 34.133333 17.066667 46.933333 0 2.133333 2.133333 2.133333 2.133333 4.266667l160 160v168.533333c0 6.4 2.133333 10.666667 6.4 14.933333l145.066667 123.733334c4.266667 2.133333 8.533333 4.266667 12.8 4.266666 6.4 0 10.666667-2.133333 14.933333-6.4 4.266667-4.266667 4.266667-10.666667 4.266667-14.933333V503.466667l170.666666-166.4 2.133334-2.133334c10.666667-12.8 17.066667-29.866667 17.066666-46.933333 0-42.666667-32-74.666667-72.533333-74.666667z m23.466667 93.866667s-2.133333 2.133333 0 0l-172.8 172.8c-4.266667 4.266667-6.4 8.533333-6.4 14.933333v251.733334l-104.533334-87.466667V490.666667c0-6.4-2.133333-10.666667-6.4-14.933334l-162.133333-166.4-2.133333-2.133333c-6.4-6.4-8.533333-12.8-8.533334-21.333333 0-17.066667 14.933333-32 32-32h407.466667c17.066667 0 32 14.933333 32 32 0 8.533333-4.266667 14.933333-8.533333 21.333333z" fill="#444D5A" ></path><path d="M688.213333 378.410667l-101.546666 101.589333c-4.266667 4.266667-6.4 8.533333-6.4 14.933333v251.733334l-104.533334-87.466667V490.666667c0-6.4-2.133333-10.666667-6.4-14.933334L403.626667 408.32l284.586666-29.909333z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-gengxin" viewBox="0 0 1024 1024"><path d="M358.101333 256A298.666667 298.666667 0 0 0 512 810.666667a21.333333 21.333333 0 1 0 0-42.666667A256 256 0 0 1 405.333333 279.210667V363.093333A21.333333 21.333333 0 0 0 426.666667 384c11.776 0 21.333333-9.130667 21.333333-20.906667V234.24a20.565333 20.565333 0 0 0-6.229333-14.634667l0.042666-0.128A20.650667 20.650667 0 0 0 427.050667 213.333333H298.24a21.333333 21.333333 0 0 0-20.906667 21.333334c0 11.776 9.173333 21.333333 20.906667 21.333333h59.818667z m307.797334 512A298.666667 298.666667 0 0 0 512 213.333333a21.333333 21.333333 0 0 0 0 42.666667 256 256 0 0 1 106.666667 488.789333V660.906667A21.333333 21.333333 0 0 0 597.333333 640c-11.776 0-21.333333 9.130667-21.333333 20.906667v128.810666a20.48 20.48 0 0 0 6.229333 14.634667l-0.042666 0.170667a20.650667 20.650667 0 0 0 14.762666 6.144h128.768a21.333333 21.333333 0 0 0 20.949334-21.333334c0-11.776-9.173333-21.333333-20.906667-21.333333h-59.861333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-qingchu" viewBox="0 0 1024 1024"><path d="M330.965333 270.634667l422.4 422.4-60.330666 60.330666-422.4-422.4z" fill="#E15A5A" ></path><path d="M753.365333 330.965333l-422.4 422.4-60.330666-60.330666 422.4-422.4z" fill="#E15A5A" ></path></symbol><symbol id="luckysheet-iconfont-hang" viewBox="0 0 1024 1024"><path d="M213.333333 256h597.333334v42.666667H213.333333zM213.333333 426.666667h597.333334v42.666666H213.333333zM213.333333 597.333333h597.333334v42.666667H213.333333zM213.333333 768h597.333334v42.666667H213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-zhushi" viewBox="0 0 1024 1024"><path d="M352 490.666667a32 32 0 1 0 64 0 32 32 0 0 0-64 0z m128 0a32 32 0 1 0 64 0 32 32 0 0 0-64 0z m128 0a32 32 0 1 0 64 0 32 32 0 0 0-64 0z" fill="#444D5A" ></path><path d="M768 298.666667H256c-23.466667 0-42.666667 19.2-42.666667 42.666666v298.666667c0 23.466667 19.2 42.666667 42.666667 42.666667h106.666667v128l128-128H768c23.466667 0 42.666667-19.2 42.666667-42.666667V341.333333c0-23.466667-19.2-42.666667-42.666667-42.666666z m0 320c0 12.8-8.533333 21.333333-21.333333 21.333333H469.333333l-64 64V640h-128c-12.8 0-21.333333-8.533333-21.333333-21.333333v-256c0-12.8 8.533333-21.333333 21.333333-21.333334h469.333334c12.8 0 21.333333 8.533333 21.333333 21.333334v256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jian" viewBox="0 0 1024 1024"><path d="M213.333333 469.333333h597.333334v85.333334H213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jisuan" viewBox="0 0 1024 1024"><path d="M774.058667 213.333333v42.666667H310.784l236.288 256-236.330667 256h463.317334v42.666667H213.333333l275.669334-298.666667L213.333333 213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-jia" viewBox="0 0 1024 1024"><path d="M213.333333 469.333333h597.333334v85.333334H213.333333z" fill="#444D5A" ></path><path d="M554.666667 213.333333v597.333334h-85.333334V213.333333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dibuduiqi" viewBox="0 0 1024 1024"><path d="M725.333333 725.333333H298.666667v-42.666666h426.666666zM608 581.504l-90.496 90.496-90.538667-90.496 30.165334-30.165333 37.802666 37.717333V298.965333h42.666667v292.565334l40.234667-40.192 30.165333 30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiangshang90" viewBox="0 0 1024 1024"><path d="M789.333333 495.786667l-213.333333-77.653334v-0.64l-1.621333 0.042667L426.666667 363.776v45.354667l106.666666 38.826666v152.405334l-106.666666 38.826666v45.354667l147.498666-53.674667 1.834667-0.042666v-0.64l213.333333-77.610667V495.786667z m-46.634666 28.416L576 584.874667v-121.386667l166.698667 60.714667zM384 336.170667L293.504 245.632 202.965333 336.213333l30.165334 30.165334 37.802666-37.76V789.333333h42.666667V326.101333l40.234667 40.234667L384 336.170667z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wuxuanzhuang" viewBox="0 0 1024 1024"><path d="M549.546667 213.333333l77.653333 213.333334h0.64l-0.042667 1.621333 53.76 147.712h-45.354666l-38.826667-106.666667h-152.405333l-38.826667 106.666667H360.789333l53.674667-147.498667 0.042667-1.834666h0.64l77.610666-213.333334h56.789334z m-28.416 46.634667L460.458667 426.666667h121.386666l-60.714666-166.698667zM709.162667 618.666667l90.538666 90.496-90.538666 90.538666-30.165334-30.165333 37.76-37.802667H256v-42.666666h463.232l-40.234667-40.234667 30.165334-30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xianshiyincangwangge" viewBox="0 0 1024 1024"><path d="M256 256h554.666667v42.666667H256z" fill="#444D5A" ></path><path d="M298.666667 256v554.666667H256V256zM810.666667 256v554.666667h-42.666667V256zM469.333333 256v554.666667h-42.666666V256zM640 256v554.666667h-42.666667V256z" fill="#444D5A" ></path><path d="M256 426.666667h554.666667v42.666666H256zM256 597.333333h554.666667v42.666667H256zM256 768h554.666667v42.666667H256z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-dongjie" viewBox="0 0 1024 1024"><path d="M256.426667 256.426667h255.317333v553.130666H256.426667z" fill="#B5B8BD" ></path><path d="M809.557333 213.930667v595.626666H213.930667V213.930667h595.626666z m-42.538666 42.538666H256.426667v510.549334h510.549333V256.426667z" fill="#444D5A" ></path><path d="M490.453333 256.426667h42.538667v510.592h-42.538667z" fill="#444D5A" ></path><path d="M256.426667 532.992v-42.538667h510.592v42.538667z" fill="#444D5A" ></path><path d="M256.384 226.261333l264.192 264.192-30.122667 30.08-264.192-264.192 30.122667-30.08z m-30.122667 317.184l30.122667-30.122666 264.192 264.192-30.122667 30.08-264.192-264.149334z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-wenbenzuoduiqi" viewBox="0 0 1024 1024"><path d="M234.666667 298.666667h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 1 1 0-42.666666z m0 128h341.333333a21.333333 21.333333 0 0 1 0 42.666666h-341.333333a21.333333 21.333333 0 0 1 0-42.666666z m0 128h554.666666a21.333333 21.333333 0 1 1 0 42.666666h-554.666666a21.333333 21.333333 0 0 1 0-42.666666z m0 128h341.333333a21.333333 21.333333 0 0 1 0 42.666666h-341.333333a21.333333 21.333333 0 0 1 0-42.666666z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-houtui" viewBox="0 0 1024 1024"><path d="M737.664 419.328H426.666667v42.666667h311.296l-84.48 84.437333a21.333333 21.333333 0 0 0 30.208 30.165333l120.746666-120.704a21.290667 21.290667 0 0 0 0-30.165333l-120.746666-120.661333a21.333333 21.333333 0 0 0-30.165334 30.165333l84.138667 84.096zM213.333333 632.661333a213.333333 213.333333 0 0 1 213.333334-213.333333v42.666667a170.666667 170.666667 0 0 0-170.666667 170.666666H213.333333z m0 0h42.666667v64a21.333333 21.333333 0 0 1-42.666667 0v-64z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-shuipinghebing" viewBox="0 0 1024 1024"><path d="M810.666667 213.333333v597.333334H213.333333V213.333333h597.333334z m-42.666667 42.666667H256v512h512V256z" fill="#444D5A" ></path><path d="M810.666667 384v256H213.333333V384h597.333334z m-42.666667 42.666667H256v170.666666h512v-170.666666z" fill="#444D5A" ></path><path d="M581.162667 426.666667l90.538666 90.496-90.538666 90.538666-30.165334-30.165333 37.76-37.802667H341.333333v-42.666666h249.898667l-40.234667-40.234667 30.165334-30.165333z" fill="#444D5A" ></path></symbol><symbol id="luckysheet-iconfont-xiabiankuang" viewBox="0 0 1024 1024"><path d="M768 810.666667H213.333333v-42.666667h554.666667z" fill="#444D5A" ></path><path d="M768 640h-42.666667v-42.666667h42.666667zM768 469.333333h-42.666667v-42.666666h42.666667zM768 725.333333h-42.666667v-42.666666h42.666667zM768 554.666667h-42.666667v-42.666667h42.666667zM768 384h-42.666667V341.333333h42.666667z" fill="#B5B8BD" ></path><path d="M512 640h-42.666667v-42.666667h42.666667z" fill="#B5B8BD" ></path><path d="M256 640H213.333333v-42.666667h42.666667zM256 469.333333H213.333333v-42.666666h42.666667zM256 725.333333H213.333333v-42.666666h42.666667zM256 554.666667H213.333333v-42.666667h42.666667zM256 384H213.333333V341.333333h42.666667zM256 298.666667H213.333333V256h42.666667z" fill="#B5B8BD" ></path><path d="M512 469.333333h-42.666667v-42.666666h42.666667zM512 725.333333h-42.666667v-42.666666h42.666667zM512 554.666667h-42.666667v-42.666667h42.666667zM512 384h-42.666667V341.333333h42.666667z" fill="#B5B8BD" ></path><path d="M768 298.666667h-42.666667V256h42.666667zM597.333333 298.666667h-42.666666V256h42.666666zM426.666667 298.666667H384V256h42.666667zM682.666667 298.666667h-42.666667V256h42.666667zM512 298.666667h-42.666667V256h42.666667zM341.333333 298.666667H298.666667V256h42.666666z" fill="#B5B8BD" ></path><path d="M597.333333 554.666667h-42.666666v-42.666667h42.666666zM426.666667 554.666667H384v-42.666667h42.666667zM682.666667 554.666667h-42.666667v-42.666667h42.666667zM512 554.666667h-42.666667v-42.666667h42.666667zM341.333333 554.666667H298.666667v-42.666667h42.666666z" fill="#B5B8BD" ></path></symbol><symbol id="luckysheet-iconfont-shezhi" viewBox="0 0 1024 1024"><path d="M794.496 425.685333a112.341333 112.341333 0 0 1-72.917333-53.034666 108.074667 108.074667 0 0 1-9.941334-88.234667 13.781333 13.781333 0 0 0-4.394666-14.592 299.392 299.392 0 0 0-95.616-55.424 14.421333 14.421333 0 0 0-15.146667 3.584 113.578667 113.578667 0 0 1-84.48 35.968 113.578667 113.578667 0 0 1-82.858667-35.157333 14.421333 14.421333 0 0 0-16.768-4.394667 298.154667 298.154667 0 0 0-95.573333 55.808 13.781333 13.781333 0 0 0-4.394667 14.634667c9.344 29.354667 5.717333 61.269333-9.984 87.808a112.341333 112.341333 0 0 1-72.96 53.034666 13.909333 13.909333 0 0 0-10.752 11.050667 281.856 281.856 0 0 0 0 109.610667c1.024 5.504 5.290667 9.813333 10.752 11.008a112.341333 112.341333 0 0 1 72.96 52.650666c15.786667 26.666667 19.413333 58.709333 9.941334 88.192a13.781333 13.781333 0 0 0 4.352 14.634667 299.392 299.392 0 0 0 95.658666 55.424h4.778667c3.882667 0 7.637333-1.578667 10.325333-4.394667a114.773333 114.773333 0 0 1 166.229334 0c4.096 5.546667 11.648 7.424 17.92 4.394667a298.666667 298.666667 0 0 0 97.194666-55.04c4.266667-3.541333 6.016-9.301333 4.394667-14.592a108.074667 108.074667 0 0 1 8.362667-88.618667 112.341333 112.341333 0 0 1 72.96-52.650666 13.909333 13.909333 0 0 0 10.709333-11.008 280.32 280.32 0 0 0 0-109.653334 14.336 14.336 0 0 0-10.752-11.008z m-26.709333 105.173334a136.106667 136.106667 0 0 0-79.658667 60.928 131.285333 131.285333 0 0 0-13.568 97.322666 259.114667 259.114667 0 0 1-69.717333 39.552A135.552 135.552 0 0 0 512 689.109333a137.941333 137.941333 0 0 0-92.842667 39.552 258.304 258.304 0 0 1-69.717333-39.552 129.664 129.664 0 0 0-14.762667-96.938666 136.106667 136.106667 0 0 0-78.506666-61.312 239.189333 239.189333 0 0 1 0-79.061334A136.106667 136.106667 0 0 0 335.872 390.826667c16.896-29.525333 21.76-64.426667 13.525333-97.365334a258.730667 258.730667 0 0 1 69.717334-39.552c25.386667 23.125333 58.453333 35.968 92.842666 36.010667a136.064 136.064 0 0 0 92.842667-36.010667c25.173333 9.472 48.682667 22.826667 69.717333 39.594667a131.285333 131.285333 0 0 0 14.336 96.896 136.106667 136.106667 0 0 0 79.701334 60.928c4.394667 26.197333 4.394667 52.906667 0 79.104l-0.810667 0.426667h0.042667z" fill="#444D5A" ></path><path d="M513.706667 370.346667a119.466667 119.466667 0 1 0 0 238.933333 119.466667 119.466667 0 0 0 0-238.933333z m0 199.125333a79.658667 79.658667 0 1 1 0-159.36 79.658667 79.658667 0 0 1 0 159.36z" fill="#444D5A" ></path></symbol></svg>',M=(M=document.getElementsByTagName("script"))[M.length-1].getAttribute("data-injectcss");if(M&&!h.__iconfont__svg__cssinject__){h.__iconfont__svg__cssinject__=!0;try{document.write("<style>.svgfont {display: inline-block;width: 1em;height: 1em;fill: currentColor;vertical-align: -0.1em;font-size:16px;}</style>")}catch(h){console&&console.log(h)}}function e(){t||(t=!0,v())}l=function(){var h,l,a,v;(v=document.createElement("div")).innerHTML=o,o=null,(a=v.getElementsByTagName("svg")[0])&&(a.setAttribute("aria-hidden","true"),a.style.position="absolute",a.style.width=0,a.style.height=0,a.style.overflow="hidden",h=a,(l=document.body).firstChild?(v=h,(a=l.firstChild).parentNode.insertBefore(v,a)):l.appendChild(h))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(l,0):(a=function(){document.removeEventListener("DOMContentLoaded",a,!1),l()},document.addEventListener("DOMContentLoaded",a,!1)):document.attachEvent&&(v=l,i=h.document,t=!1,(z=function(){try{i.documentElement.doScroll("left")}catch(h){return void setTimeout(z,50)}e()})(),i.onreadystatechange=function(){"complete"==i.readyState&&(i.onreadystatechange=null,e())})}(window); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.svg b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.svg index 3964a24c6..8742cf6c9 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.svg +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.svg @@ -19,337 +19,337 @@ Created by iconfont descent="-128" /> <missing-glyph /> - + <glyph glyph-name="lianjie" unicode="" d="M771.584 644.266667c-49.066667 51.2-132.266667 51.2-181.333333 0l-74.666667-76.8c-8.533333-8.533333-8.533333-23.466667 0-32 8.533333-8.533333 21.333333-8.533333 29.866667 0l74.666666 76.8c34.133333 34.133333 87.466667 34.133333 121.6 0 34.133333-34.133333 34.133333-89.6 0-123.733334l-121.6-123.733333c-34.133333-34.133333-87.466667-34.133333-121.6 0-8.533333 8.533333-21.333333 8.533333-29.866666 0-8.533333-8.533333-8.533333-23.466667 0-32 49.066667-51.2 132.266667-51.2 181.333333 0l121.6 123.733333c51.2 53.333333 51.2 136.533333 0 187.733334zM477.184 232.533333l-74.666667-76.8c-34.133333-34.133333-87.466667-34.133333-121.6 0-34.133333 34.133333-34.133333 89.6 0 123.733334l121.6 123.733333c34.133333 34.133333 87.466667 34.133333 121.6 0 8.533333-8.533333 21.333333-8.533333 29.866667 0 8.533333 8.533333 8.533333 23.466667 0 32-49.066667 51.2-132.266667 51.2-181.333333 0l-121.6-123.733333c-51.2-51.2-49.066667-134.4 0-185.6 49.066667-51.2 132.266667-51.2 181.333333 0l74.666667 76.8c8.533333 8.533333 8.533333 23.466667 0 32-8.533333 6.4-21.333333 6.4-29.866667-2.133334z" horiz-adv-x="1024" /> - + <glyph glyph-name="dayinquyu" unicode="" d="M727.04 189.781333a11.946667 11.946667 0 0 0 8.704-3.754666 13.312 13.312 0 0 0 3.626667-9.130667V85.333333H583.253333v91.52c0 3.413333 1.28 6.741333 3.626667 9.173334a11.946667 11.946667 0 0 0 8.661333 3.754666zM362.666667 170.666667v-42.666667h-128v42.666667h128z m128 0v-42.666667h-42.666667v42.666667h42.666667z m301.696 143.957333a18.773333 18.773333 0 0 0 18.304-19.2v-117.205333c0-10.581333-8.277333-19.2-18.346667-19.2h-28.458667v11.434666c-0.128 21.333333-16.554667 38.570667-36.778666 38.570667h-131.498667c-20.224 0-36.693333-17.237333-36.778667-38.570667v-11.477333h-28.458666a18.858667 18.858667 0 0 0-18.346667 19.2v117.248c0 10.581333 8.277333 19.2 18.346667 19.2zM256 362.666667v-128H213.333333v128h42.666667z m411.477333-85.845334H567.04a12.586667 12.586667 0 0 1-12.245333-12.8c0.042667-7.125333 5.546667-12.885333 12.245333-12.842666h100.394667a12.586667 12.586667 0 0 1 12.202666 12.8c0 7.082667-5.504 12.8-12.202666 12.8zM723.072 384a14.506667 14.506667 0 0 0 14.165333-14.805333v-35.84H585.386667v35.84a14.506667 14.506667 0 0 0 14.165333 14.805333zM768 533.333333v-128h-42.666667v128h42.666667z m-512 42.666667v-128H213.333333v128h42.666667zM768 682.666667v-64h-42.666667V640h-64V682.666667H768zM362.666667 682.666667v-42.666667H256v-21.333333H213.333333V682.666667h149.333334z m213.333333 0v-42.666667h-128V682.666667h128z" horiz-adv-x="1024" /> - + <glyph glyph-name="dayinyemianpeizhi" unicode="" d="M635.477333 682.666667H388.522667c-15.530667 0-28.16-13.226667-28.288-29.610667v-71.68h303.530666v71.68c0 16.298667-12.586667 29.568-28.288 29.568V682.666667z m7.978667-388.48H380.586667a23.893333 23.893333 0 0 1-17.365334-7.509334 26.581333 26.581333 0 0 1-7.253333-18.261333V85.333333h312.149333v183.125334a26.581333 26.581333 0 0 1-7.253333 18.218666 23.893333 23.893333 0 0 1-17.365333 7.509334z m130.602667 249.728H250.069333c-20.224 0-36.736-17.28-36.736-38.4v-234.410667c0-21.162667 16.512-38.442667 36.693334-38.442667h56.96v22.912c0.213333 42.666667 33.109333 77.184 73.557333 77.098667h262.912c40.448 0.085333 73.386667-34.389333 73.557333-77.098667v-22.912h56.917334c20.224 0 36.736 17.28 36.736 38.4V505.514667c-0.042667 21.290667-16.426667 38.485333-36.608 38.442666z m-249.813334-126.933334H323.498667c-13.44 0-24.405333 11.434667-24.490667 25.642667a25.173333 25.173333 0 0 0 24.490667 25.685333h200.746666c13.44 0 24.490667-11.52 24.490667-25.685333 0-14.08-11.050667-25.6-24.490667-25.6v-0.042667z" horiz-adv-x="1024" /> - + <glyph glyph-name="dayinbiaoti" unicode="" d="M727.04 189.781333a11.946667 11.946667 0 0 0 8.704-3.754666 13.312 13.312 0 0 0 3.626667-9.130667V85.333333H583.253333v91.52c0 3.413333 1.28 6.741333 3.626667 9.173334a11.946667 11.946667 0 0 0 8.661333 3.754666zM768 682.666667v-277.333334h-42.666667V640H256v-469.333333h234.666667v-42.666667H213.333333V682.666667h554.666667z m24.362667-368.042667a18.773333 18.773333 0 0 0 18.304-19.2v-117.205333c0-10.581333-8.277333-19.2-18.346667-19.2h-28.458667v11.434666c-0.128 21.333333-16.554667 38.570667-36.778666 38.570667h-131.498667c-20.224 0-36.693333-17.237333-36.778667-38.570667v-11.477333h-28.458666a18.858667 18.858667 0 0 0-18.346667 19.2v117.248c0 10.581333 8.277333 19.2 18.346667 19.2z m-124.885334-37.802667H567.04a12.586667 12.586667 0 0 1-12.245333-12.8c0.042667-7.125333 5.546667-12.885333 12.245333-12.842666h100.394667a12.586667 12.586667 0 0 1 12.202666 12.8c0 7.082667-5.504 12.8-12.202666 12.8zM723.072 384a14.506667 14.506667 0 0 0 14.165333-14.805333v-35.84H585.386667v35.84a14.506667 14.506667 0 0 0 14.165333 14.805333zM341.333333 554.666667h298.666667v-42.666667H341.333333zM341.333333 469.333333h170.666667v-42.666666H341.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="fenyeyulan" unicode="" d="M810.666667 682.666667v-597.333334H213.333333V682.666667h597.333334z m-42.666667-42.666667H256v-512h512V640zM256 384h256v-42.666667H256zM554.666667 640v-298.666667h-42.666667V640zM405.333333 640v-298.666667h-42.666666V640z" horiz-adv-x="1024" /> - + <glyph glyph-name="putong" unicode="" d="M256 640h554.666667v-42.666667H256zM298.666667 640v-554.666667H256V640zM810.666667 640v-554.666667h-42.666667V640zM469.333333 640v-554.666667h-42.666666V640zM640 640v-554.666667h-42.666667V640zM256 469.333333h554.666667v-42.666666H256zM256 298.666667h554.666667v-42.666667H256zM256 128h554.666667v-42.666667H256z" horiz-adv-x="1024" /> - + <glyph glyph-name="yemianbuju" unicode="" d="M810.666667 682.666667v-42.666667h-170.709334L640 128h170.666667v-42.666667h-213.333334V682.666667h213.333334z m-384 0l-0.042667-554.666667H426.666667v-42.666667H213.333333v42.666667h170.624L384 640H213.333333V682.666667h213.333334z m106.666666-512v-85.333334h-42.666666v85.333334h42.666666z m0 170.666666v-85.333333h-42.666666v85.333333h42.666666z m0 170.666667v-85.333333h-42.666666V512h42.666666z m0 170.666667v-85.333334h-42.666666V682.666667h42.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="biaogesuoding" unicode="" d="M810.666667 682.666667v-597.333334H213.333333V682.666667h597.333334zM341.333333 512.128H256V128h85.333333V512.128z m426.666667 0H383.872V128H768V512.128z m-149.333333-21.461333a64 64 0 0 0 63.701333-57.856L682.666667 426.666667v-64h42.666666v-213.333334h-298.666666v213.333334h42.666666V426.666667a64 64 0 0 0 57.856 63.701333L533.333333 490.666667h85.333334z m64-170.666667h-213.333334v-128h213.333334v128z m-106.666667-21.333333a21.333333 21.333333 0 0 0 21.333333-21.333334v-42.666666a21.333333 21.333333 0 1 0-42.666666 0v42.666666a21.333333 21.333333 0 0 0 21.333333 21.333334z m42.666667 149.333333h-85.333334a21.333333 21.333333 0 0 1-20.992-17.493333L512 426.666667v-64h128V426.666667a21.333333 21.333333 0 0 1-13.909333 20.010666l-3.584 0.981334-3.84 0.341333zM768 640H383.872v-85.290667L768 554.666667V640zM341.333333 640H256v-85.333333l85.333333 0.042666V640z" horiz-adv-x="1024" /> - + <glyph glyph-name="zhuandao1" unicode="" d="M804.992 201.941333l-84.650667 84.224c-7.552 7.509333-21.930667 8.448-26.026666-1.365333-1.066667-2.602667-1.365333-10.026667-1.365334-10.026667v-56.874666H406.442667a69.034667 69.034667 0 0 0-69.205334 68.778666 69.034667 69.034667 0 0 0 69.205334 68.821334h259.84a128.341333 128.341333 0 0 1 128.597333 127.829333 128.384 128.384 0 0 1-128.554667 127.914667H411.946667A101.632 101.632 0 0 1 213.333333 581.674667a101.632 101.632 0 1 1 198.613334-29.525334h254.378666a69.034667 69.034667 0 0 0 69.162667-68.821333 69.034667 69.034667 0 0 0-69.162667-68.778667H406.442667a128.341333 128.341333 0 0 1-128.597334-127.872 128.341333 128.341333 0 0 1 128.597334-127.872h286.506666v-54.016s0-8.277333 1.408-11.52c4.053333-9.813333 18.432-10.24 25.984-2.730666l84.650667 84.181333a19.2 19.2 0 0 1 0 27.221333zM314.88 539.776a42.069333 42.069333 0 0 0-42.112 41.898667c0 23.082667 18.858667 41.856 42.112 41.856 23.210667 0 42.112-18.773333 42.112-41.856a42.069333 42.069333 0 0 0-42.112-41.898667z" horiz-adv-x="1024" /> - + <glyph glyph-name="youjiantou" unicode="" d="M682.666667 384l-341.333334-341.333333V725.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="caidan2" unicode="" d="M213.333333 426.666667h597.333334v-85.333334H213.333333zM213.333333 682.666667h597.333334v-85.333334H213.333333zM213.333333 170.666667h597.333334v-85.333334H213.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="tihuan" unicode="" d="M768 465.066667H280.405333l-4.394666 0.554666c-5.461333 0.853333-6.570667 1.749333-12.885334 6.528l-2.986666 5.376c-6.4 11.946667-5.376 13.738667 2.986666 28.885334L440.618667 682.666667l34.218666-34.048-136.362666-135.424H768v-48.170667z m-7.594667-163.242667L585.472 128l-34.261333 34.048 136.362666 135.424H258.048v48.170667h484.096c10.453333 0 19.882667-6.272 23.893333-15.872a25.6 25.6 0 0 0-5.632-27.989334z" horiz-adv-x="1024" /> - + <glyph glyph-name="dongjie1" unicode="" d="M809.557333 682.069333v-595.626666H213.930667V682.069333h595.626666zM256.426667 322.389333v-193.408l193.365333 0.042667-193.365333 193.365333z m510.549333 40.618667h-234.026667v-234.026667h234.026667v234.026667z m-276.565333 0H276.053333l214.357334-214.4v214.4z m276.565333 276.522667h-234.026667v-233.984h234.026667V639.530667zM256.426667 609.450667v-203.946667l203.904 0.042667-203.946667 203.946666z m233.984 30.08H286.592l203.861333-203.861334V639.573333z" horiz-adv-x="1024" /> - + <glyph glyph-name="jian1" unicode="" d="M213.333333 426.666667h597.333334v-85.333334H213.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="jia1" unicode="" d="M213.333333 426.666667h597.333334v-85.333334H213.333333zM554.666667 682.666667v-597.333334h-85.333334V682.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="yichu1" unicode="" d="M300.288 85.333333H213.333333V682.666667h86.954667v-279.978667h441.898667l-91.306667 85.845333 26.624 26.112L810.666667 384l-133.162667-130.688-26.624 26.154667 91.306667 85.845333-441.898667 0.042667zM530.688 682.666667h42.666667v-242.688h-42.666667V682.666667z m0-354.688h42.666667V85.333333h-42.666667v242.688z" horiz-adv-x="1024" /> - + <glyph glyph-name="shengxu1" unicode="" d="M684.757333 482.944v-290.645333a20.650667 20.650667 0 0 0-6.4-15.274667 23.04 23.04 0 0 0-16-6.357333 22.229333 22.229333 0 0 0-22.4 21.632V482.944L550.4 398.08a22.528 22.528 0 0 0-15.872-6.442667 22.613333 22.613333 0 0 0-15.914667 6.442667 20.650667 20.650667 0 0 0-6.613333 15.061333c0 5.674667 2.389333 11.093333 6.613333 15.061334l126.72 120.064a22.485333 22.485333 0 0 0 15.658667 6.4 23.594667 23.594667 0 0 0 16.128-5.546667l126.72-120.064c4.309333-3.84 6.826667-9.301333 6.826667-15.061333a20.266667 20.266667 0 0 0-6.826667-15.061334 23.04 23.04 0 0 0-15.914667-6.272 23.04 23.04 0 0 0-15.872 6.272l-87.296 84.010667zM229.930667 213.333333h265.472c9.173333 0 16.597333-9.472 16.597333-21.12s-7.424-21.12-16.597333-21.12H229.930667c-9.173333 0-16.597333 9.472-16.597334 21.12 0 11.690667 7.424 21.12 16.597334 21.12z m1.152 170.666667h177.792c9.813333 0 17.792-9.429333 17.792-21.12s-7.936-21.12-17.792-21.12H231.168c-9.813333 0-17.792 9.429333-17.792 21.12 0 11.648 7.978667 21.12 17.792 21.12z m264.362666 170.666667H229.845333C220.757333 554.666667 213.333333 545.194667 213.333333 533.546667s7.424-21.12 16.597334-21.12h265.472c9.173333 0 16.597333 9.472 16.597333 21.12S504.576 554.666667 495.402667 554.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="neikuangxian" unicode="" d="M213.333333 384h554.666667v-42.666667H213.333333zM512 640v-554.666667h-42.666667V640zM213.333333 469.333333h42.666667v-42.666666H213.333333zM213.333333 298.666667h42.666667v-42.666667H213.333333zM213.333333 554.666667h42.666667v-42.666667H213.333333zM213.333333 213.333333h42.666667v-42.666666H213.333333zM725.333333 469.333333h42.666667v-42.666666h-42.666667zM725.333333 298.666667h42.666667v-42.666667h-42.666667zM725.333333 554.666667h42.666667v-42.666667h-42.666667zM725.333333 213.333333h42.666667v-42.666666h-42.666667zM725.333333 128h42.666667v-42.666667h-42.666667zM725.333333 640h42.666667v-42.666667h-42.666667zM213.333333 128h42.666667v-42.666667H213.333333zM213.333333 640h42.666667v-42.666667H213.333333zM384 128h42.666667v-42.666667H384zM384 640h42.666667v-42.666667H384zM554.666667 128h42.666666v-42.666667h-42.666666zM554.666667 640h42.666666v-42.666667h-42.666666zM298.666667 128h42.666666v-42.666667H298.666667zM298.666667 640h42.666666v-42.666667H298.666667zM640 128h42.666667v-42.666667h-42.666667zM640 640h42.666667v-42.666667h-42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="qingchushaixuan" unicode="" d="M214.016 173.568h593.92v-42.410667H214.016v42.410667z m578.048 312.106667l-180.693333 181.077333A53.376 53.376 0 0 1 573.738667 682.666667a45.653333 45.653333 0 0 1-32.64-13.226667l-313.941334-314.965333c-18.56-18.602667-17.322667-50.261333 2.688-70.4l68.010667-68.096h298.24l198.698667 199.338666c18.56 18.602667 17.322667 50.261333-2.730667 70.357334z m-213.546667-227.242667H315.434667L259.84 314.112c-3.968 4.010667-4.053333 9.088-2.730667 10.453333L430.08 497.92l193.92-193.92-45.44-45.568z" horiz-adv-x="1024" /> - + <glyph glyph-name="wenbenxiangshang" unicode="" d="M192 400.213333l213.333333 77.653334v0.64l1.621334-0.042667L554.666667 532.224v-45.354667l-106.666667-38.826666v-152.405334l106.666667-38.826666v-45.354667l-147.498667 53.674667-1.834667 0.042666v0.64l-213.333333 77.610667V400.213333z m46.634667-28.416L405.333333 311.125333v121.386667l-166.698666-60.714667zM597.333333 559.829333l90.496 90.538667 90.538667-90.538667-30.165333-30.165333-37.802667 37.76V106.666667h-42.666667V569.898667l-40.234666-40.234667L597.333333 559.829333z" horiz-adv-x="1024" /> - + <glyph glyph-name="jiangxu1" unicode="" d="M684.757333 242.389333V533.034667a20.650667 20.650667 0 0 1-6.4 15.274666 23.04 23.04 0 0 1-16 6.357334 22.229333 22.229333 0 0 1-22.4-21.632v-290.645334L550.4 327.253333a22.528 22.528 0 0 1-15.872 6.442667 22.613333 22.613333 0 0 1-15.914667-6.442667 20.650667 20.650667 0 0 1-6.613333-15.061333c0-5.674667 2.389333-11.093333 6.613333-15.061333l126.72-120.064a22.485333 22.485333 0 0 1 15.658667-6.4 23.594667 23.594667 0 0 1 16.128 5.546666l126.72 120.064c4.309333 3.84 6.826667 9.301333 6.826667 15.061334a20.266667 20.266667 0 0 1-6.826667 15.061333 23.04 23.04 0 0 1-15.914667 6.272 23.04 23.04 0 0 1-15.872-6.272l-87.296-84.010667zM229.930667 213.333333h265.472c9.173333 0 16.597333-9.472 16.597333-21.12s-7.424-21.12-16.597333-21.12H229.930667c-9.173333 0-16.597333 9.472-16.597334 21.12 0 11.690667 7.424 21.12 16.597334 21.12z m1.152 170.666667h177.792c9.813333 0 17.792-9.429333 17.792-21.12s-7.936-21.12-17.792-21.12H231.168c-9.813333 0-17.792 9.429333-17.792 21.12 0 11.648 7.978667 21.12 17.792 21.12z m264.362666 170.666667H229.845333C220.757333 554.666667 213.333333 545.237333 213.333333 533.546667c0-11.648 7.424-21.12 16.597334-21.12h265.472c9.173333 0 16.597333 9.472 16.597333 21.12S504.576 554.666667 495.402667 554.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="neikuanghengxian" unicode="" d="M213.333333 384h554.666667v-42.666667H213.333333zM213.333333 469.333333h42.666667v-42.666666H213.333333zM213.333333 298.666667h42.666667v-42.666667H213.333333zM213.333333 554.666667h42.666667v-42.666667H213.333333zM213.333333 213.333333h42.666667v-42.666666H213.333333zM725.333333 469.333333h42.666667v-42.666666h-42.666667zM469.333333 469.333333h42.666667v-42.666666h-42.666667zM725.333333 298.666667h42.666667v-42.666667h-42.666667zM469.333333 298.666667h42.666667v-42.666667h-42.666667zM725.333333 554.666667h42.666667v-42.666667h-42.666667zM469.333333 554.666667h42.666667v-42.666667h-42.666667zM725.333333 213.333333h42.666667v-42.666666h-42.666667zM469.333333 213.333333h42.666667v-42.666666h-42.666667zM725.333333 128h42.666667v-42.666667h-42.666667zM725.333333 640h42.666667v-42.666667h-42.666667zM213.333333 128h42.666667v-42.666667H213.333333zM213.333333 640h42.666667v-42.666667H213.333333zM384 128h42.666667v-42.666667H384zM384 640h42.666667v-42.666667H384zM554.666667 128h42.666666v-42.666667h-42.666666zM554.666667 640h42.666666v-42.666667h-42.666666zM298.666667 128h42.666666v-42.666667H298.666667zM298.666667 640h42.666666v-42.666667H298.666667zM469.333333 128h42.666667v-42.666667h-42.666667zM469.333333 640h42.666667v-42.666667h-42.666667zM640 128h42.666667v-42.666667h-42.666667zM640 640h42.666667v-42.666667h-42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="neikuangshuxian" unicode="" d="M213.333333 469.333333h42.666667v-42.666666H213.333333zM213.333333 298.666667h42.666667v-42.666667H213.333333zM213.333333 554.666667h42.666667v-42.666667H213.333333zM213.333333 213.333333h42.666667v-42.666666H213.333333zM725.333333 469.333333h42.666667v-42.666666h-42.666667zM725.333333 298.666667h42.666667v-42.666667h-42.666667zM725.333333 554.666667h42.666667v-42.666667h-42.666667zM725.333333 213.333333h42.666667v-42.666666h-42.666667zM725.333333 128h42.666667v-42.666667h-42.666667zM725.333333 640h42.666667v-42.666667h-42.666667zM725.333333 384h42.666667v-42.666667h-42.666667zM213.333333 128h42.666667v-42.666667H213.333333zM213.333333 640h42.666667v-42.666667H213.333333zM213.333333 384h42.666667v-42.666667H213.333333zM384 128h42.666667v-42.666667H384zM384 640h42.666667v-42.666667H384zM384 384h42.666667v-42.666667H384zM554.666667 128h42.666666v-42.666667h-42.666666zM554.666667 640h42.666666v-42.666667h-42.666666zM554.666667 384h42.666666v-42.666667h-42.666666zM298.666667 128h42.666666v-42.666667H298.666667zM298.666667 640h42.666666v-42.666667H298.666667zM298.666667 384h42.666666v-42.666667H298.666667zM469.333333 128h42.666667v-42.666667h-42.666667zM469.333333 640h42.666667v-42.666667h-42.666667zM469.333333 384h42.666667v-42.666667h-42.666667zM640 128h42.666667v-42.666667h-42.666667zM640 640h42.666667v-42.666667h-42.666667zM640 384h42.666667v-42.666667h-42.666667zM512 640v-554.666667h-42.666667V640z" horiz-adv-x="1024" /> - + <glyph glyph-name="zidingyipaixu" unicode="" d="M704 640a21.333333 21.333333 0 0 0 21.333333-21.333333v-469.333334a21.333333 21.333333 0 1 0-42.666666 0v469.333334c0 11.776 9.472 21.333333 21.333333 21.333333zM512 512c11.776 0 21.333333-7.68 21.333333-17.194667v-221.610666c0-9.514667-9.472-17.194667-21.333333-17.194667-11.776 0-21.333333 7.68-21.333333 17.194667V494.805333c0 4.565333 2.218667 8.96 6.186666 12.16A24.32 24.32 0 0 0 512 512zM320 640a21.333333 21.333333 0 0 0 21.333333-21.333333v-469.333334a21.333333 21.333333 0 1 0-42.666666 0v469.333334c0 11.776 9.472 21.333333 21.333333 21.333333z m283.562667-368.896a21.333333 21.333333 0 0 0 30.165333-30.165333l-106.666667-106.666667a21.333333 21.333333 0 0 0-30.165333 0l-106.666667 106.666667a21.333333 21.333333 0 0 0 30.165334 30.165333L512 179.498667l91.605333 91.562666z m0.298666 225.834667a21.333333 21.333333 0 0 1 30.165334 30.165333l-106.666667 106.666667a21.333333 21.333333 0 0 1-30.165333 0l-106.666667-106.666667a21.333333 21.333333 0 0 1 30.165333-30.165333l91.562667 91.562666 91.605333-91.562666z" horiz-adv-x="1024" /> - + <glyph glyph-name="logo2" unicode="" d="M1023.168 764.64c0-234.4-190.016-424.416-424.416-424.416 0 234.4 190.016 424.416 424.416 424.416zM131.36-127.168c0 234.4 190.016 424.416 424.416 424.416 0-234.4-190.016-424.416-424.416-424.416zM929.696-33.696c-182.784 0-330.944 148.16-330.944 330.944 182.752 0 330.944-148.16 330.944-330.944zM494.848 896H0v-494.848h494.848zM558.016 814.624H81.376v-476.64h476.64zM558.304 731.584H164.384v-393.92h393.92z" horiz-adv-x="1024" /> - + <glyph glyph-name="logo" unicode="" d="M1023.168 764.64c0-234.4-190.016-424.416-424.416-424.416 0 234.4 190.016 424.416 424.416 424.416zM131.36-127.168c0 234.4 190.016 424.416 424.416 424.416 0-234.4-190.016-424.416-424.416-424.416zM929.696-33.696c-182.784 0-330.944 148.16-330.944 330.944 182.752 0 330.944-148.16 330.944-330.944zM494.848 896H0v-494.848h494.848zM558.016 814.624H81.376v-476.64h476.64zM558.304 731.584H164.384v-393.92h393.92zM1678.08 160v64h-247.04V616.96H1356.8V160h321.28z m177.568-8.96c40.96 0 75.52 17.28 103.68 51.84V160h72.96V490.88h-72.96v-202.24c-6.4-23.68-17.28-42.24-32-56.32-14.72-13.44-30.08-20.48-46.08-20.48-25.6 0-43.52 6.4-55.04 18.56-11.52 12.8-16.64 32-16.64 58.88v201.6h-72.96v-206.08c0-88.96 39.68-133.76 119.04-133.76z m407.936 0c42.88 0 77.44 10.88 103.04 32 26.24 21.76 43.52 55.04 51.2 99.84h-72.32c-5.76-48-32.64-72.32-81.28-72.32-28.16 0-49.28 10.24-63.36 30.08-15.36 20.48-22.4 49.28-22.4 85.76 0 35.84 7.68 64 23.04 83.84 15.36 20.48 36.48 30.08 63.36 30.08 21.76 0 39.68-5.12 53.12-15.36 12.8-10.24 21.76-25.6 26.24-46.72h72.32c-6.4 41.6-23.04 72.32-49.28 92.8-25.6 19.2-59.52 28.8-102.4 28.8-51.84 0-92.16-17.28-120.96-51.84-26.88-31.36-40.32-72.32-40.32-122.24 0-51.2 13.44-92.8 40.96-124.8 28.16-33.28 67.84-49.92 119.04-49.92z m292.128 8.96v115.84l33.28 31.36 115.84-147.2h93.44l-159.36 193.92 146.56 136.96h-94.08l-135.68-131.2V625.92h-72.96V160h72.96z m404.096-126.72l179.2 457.6h-79.36l-83.84-235.52-87.68 235.52h-79.36l131.2-323.2-58.24-134.4h78.08z m357.408 117.76c99.2 0 149.12 35.2 149.12 105.6 0 29.44-13.44 53.12-39.68 69.76-17.92 12.16-46.08 22.4-83.2 31.36-33.28 8.32-55.04 14.72-65.92 19.2-17.92 7.68-26.24 17.28-26.24 27.52 0 12.8 5.12 21.76 16.64 27.52 9.6 5.76 24.32 8.32 43.52 8.32 22.4 0 39.04-3.2 49.92-10.24 10.24-6.4 17.92-18.56 23.04-35.2h71.04c-7.68 70.4-55.68 104.96-142.72 104.96-40.96 0-73.6-8.32-98.56-26.24-25.6-16.64-37.76-40.32-37.76-71.04 0-28.8 12.8-51.2 38.4-67.2 16-10.24 43.52-19.84 82.56-28.8 33.28-7.68 55.04-13.44 65.28-18.56 19.2-8.96 28.8-21.12 28.8-36.48 0-26.88-25.6-40.96-76.8-40.96-24.32 0-41.6 4.48-52.48 12.16-10.88 8.96-18.56 23.68-22.4 44.8h-71.04c7.04-77.44 56.32-116.48 148.48-116.48z m286.976 8.96v184.96c0 28.16 6.4 50.56 19.84 68.48 12.8 17.92 30.72 26.88 53.76 26.88 24.96 0 43.52-7.68 56.32-23.68 10.88-14.72 16.64-36.48 16.64-64.64v-192h72.96v204.8c0 44.16-9.6 77.44-28.16 99.84-19.84 23.68-49.92 35.2-90.24 35.2-21.12 0-39.68-3.84-55.68-12.16-17.92-8.96-33.28-22.4-45.44-40.96v179.2h-72.96V160h72.96z m447.648-8.96c44.16 0 80.64 12.8 110.08 37.76 23.04 20.48 38.4 46.72 46.08 77.44h-72.96c-8.96-18.56-18.56-32-29.44-40.32-14.08-10.24-32-15.36-54.4-15.36-26.24 0-46.72 8.32-60.8 24.32-14.08 16-22.4 39.68-24.96 70.4h247.68c0 59.52-13.44 106.24-39.68 139.52-28.8 37.12-70.4 55.04-124.8 55.04-49.28 0-88.32-16.64-116.48-50.56-29.44-33.28-43.52-74.24-43.52-123.52 0-55.04 15.36-97.92 46.08-129.28 28.8-30.08 67.84-45.44 117.12-45.44z m85.12 209.28h-170.24c4.48 26.24 13.44 46.08 26.88 59.52 14.08 14.08 32.64 20.48 56.96 20.48 51.2 0 80-26.24 86.4-80z m285.088-209.28c44.16 0 80.64 12.8 110.08 37.76 23.04 20.48 38.4 46.72 46.08 77.44h-72.96c-8.96-18.56-18.56-32-29.44-40.32-14.08-10.24-32-15.36-54.4-15.36-26.24 0-46.72 8.32-60.8 24.32-14.08 16-22.4 39.68-24.96 70.4h247.68c0 59.52-13.44 106.24-39.68 139.52-28.8 37.12-70.4 55.04-124.8 55.04-49.28 0-88.32-16.64-116.48-50.56-29.44-33.28-43.52-74.24-43.52-123.52 0-55.04 15.36-97.92 46.08-129.28 28.8-30.08 67.84-45.44 117.12-45.44z m85.12 209.28h-170.24c4.48 26.24 13.44 46.08 26.88 59.52 14.08 14.08 32.64 20.48 56.96 20.48 51.2 0 80-26.24 86.4-80z m310.016-200.32v60.16h-43.52c-7.68 0-12.8 1.92-16.64 5.76-3.84 4.48-5.12 10.24-5.12 17.92v186.88h73.6v60.16h-73.6V597.76l-72.96-30.08v-76.8h-59.52v-60.16h59.52v-186.88c0-26.88 6.4-46.72 19.2-60.8 13.44-15.36 34.56-23.04 63.36-23.04h55.68z" horiz-adv-x="4864" /> - + <glyph glyph-name="wenbenqingxie1" unicode="" d="M469.333333 640h170.666667v-42.666667h-170.666667zM573.738667 611.413333l-81.493334-462.208-41.984 7.381334 81.493334 462.208zM384 170.666667h170.666667v-42.666667H384z" horiz-adv-x="1024" /> - + <glyph glyph-name="jiacu" unicode="" d="M298.666667 682.666667h224a174.208 174.208 0 0 0 141.952-275.242667A174.208 174.208 0 0 0 572.458667 85.333333H298.666667V682.666667z m273.792-348.458667l-174.250667 0.042667v-149.333334h174.250667a74.666667 74.666667 0 0 1 6.101333 149.077334l-6.101333 0.213333zM398.208 583.125333v-149.333333h124.458667a74.666667 74.666667 0 0 1 6.144 149.077333l-6.144 0.256H398.208z" horiz-adv-x="1024" /> - + <glyph glyph-name="sousuo" unicode="" d="M664.832 261.376l128.554667-128.597333a21.333333 21.333333 0 1 0-30.165334-30.165334l-128.597333 128.597334a256 256 0 1 0 30.165333 30.165333zM469.333333 213.333333a213.333333 213.333333 0 1 1 0 426.666667 213.333333 213.333333 0 0 1 0-426.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="guanbi" unicode="" d="M119.808 715.946667l60.330667 60.245333 724.053333-724.053333-60.330667-60.330667zM843.946667 776.192l60.245333-60.330667-724.053333-724.053333-60.330667 60.330667z" horiz-adv-x="1024" /> - + <glyph glyph-name="xiayige" unicode="" d="M512 213.333333L170.666667 554.666667h682.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="xiala" unicode="" d="M149.930667 451.669333l60.330666 60.330667 362.069334-362.069333L512 89.6zM813.738667 512l60.330666-60.330667L512 89.6l-60.330667 60.330667z" horiz-adv-x="1024" /> - + <glyph glyph-name="wenbenyanse" unicode="" d="M549.546667 640l194.133333-533.333333h-45.354667l-77.653333 213.333333H421.632l-77.653333-213.333333H298.666667L492.757333 640h56.789334z m-28.416-46.634667L437.162667 362.666667h167.978666l-84.010666 230.698666z" horiz-adv-x="1024" /> - + <glyph glyph-name="shangyige" unicode="" d="M512 554.666667l341.333333-341.333334H170.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="shujutoushi" unicode="" d="M256 533.333333v-298.666666l256-149.333334 256 149.333334v298.666666L512 682.666667 256 533.333333zM725.333333 256l-213.333333-128-213.333333 128V512l213.333333 128 213.333333-128v-256z m-189.354666-40.021333a18.645333 18.645333 0 0 0-18.645334-18.645334 18.304 18.304 0 0 0-18.688 18.645334V360.533333l-130.645333 75.349334a18.645333 18.645333 0 0 0 4.565333 34.133333 18.304 18.304 0 0 0 14.08-2.005333l130.688-74.666667 129.578667 74.666667a18.304 18.304 0 0 0 25.386667-6.698667 18.645333 18.645333 0 0 0-6.784-25.386667l-129.536-74.666666v-145.237334z" horiz-adv-x="1024" /> - + <glyph glyph-name="tianchong" unicode="" d="M730.24 333.824l-253.44-253.44-217.173333 217.258667 253.44 253.44 217.173333-217.258667z m-72.405333 0.042667L512.981333 478.72l-180.992-180.992 144.810667-144.853333 181.034667 181.034666zM520.533333 597.333333v-230.4H469.333333V546.176H392.533333v-179.626667H341.333333V597.333333zM699.733333 341.333333c48.768 0 88.32-37.802667 88.32-84.48 0-46.634667-39.552-84.48-88.32-84.48" horiz-adv-x="1024" /> - + <glyph glyph-name="zengjiaxiaoshuwei" unicode="" d="M533.333333 106.666667m-42.666666 0a42.666667 42.666667 0 1 1 85.333333 0 42.666667 42.666667 0 1 1-85.333333 0ZM682.666667 341.333333a85.333333 85.333333 0 0 1-85.333334-85.333333v-85.333333a85.333333 85.333333 0 1 1 170.666667 0V256a85.333333 85.333333 0 0 1-85.333333 85.333333z m0-42.666666a42.666667 42.666667 0 0 0 42.666666-42.666667v-85.333333a42.666667 42.666667 0 1 0-85.333333 0V256a42.666667 42.666667 0 0 0 42.666667 42.666667zM367.829333 96.298667l90.538667 90.538666L367.786667 277.333333l-30.165334-30.165333 37.76-37.802667H256v-42.666666h121.898667l-40.234667-40.234667 30.165333-30.165333zM490.666667 682.666667a85.333333 85.333333 0 0 1-85.333334-85.333334v-85.333333a85.333333 85.333333 0 1 1 170.666667 0V597.333333a85.333333 85.333333 0 0 1-85.333333 85.333334z m0-42.666667a42.666667 42.666667 0 0 0 42.666666-42.666667v-85.333333a42.666667 42.666667 0 1 0-85.333333 0V597.333333a42.666667 42.666667 0 0 0 42.666667 42.666667zM682.666667 682.666667a85.333333 85.333333 0 0 1-85.333334-85.333334v-85.333333a85.333333 85.333333 0 1 1 170.666667 0V597.333333a85.333333 85.333333 0 0 1-85.333333 85.333334z m0-42.666667a42.666667 42.666667 0 0 0 42.666666-42.666667v-85.333333a42.666667 42.666667 0 0 0-85.333333 0V597.333333a42.666667 42.666667 0 0 0 42.666667 42.666667zM341.333333 448m-42.666666 0a42.666667 42.666667 0 1 1 85.333333 0 42.666667 42.666667 0 1 1-85.333333 0Z" horiz-adv-x="1024" /> - + <glyph glyph-name="bianji2" unicode="" d="M810.581333 382.634667V128a42.666667 42.666667 0 0 0-42.666666-42.666667H298.666667a42.666667 42.666667 0 0 0-42.666667 42.666667V640a42.666667 42.666667 0 0 0 42.666667 42.666667h234.624v-42.666667H320a21.333333 21.333333 0 0 1-21.333333-21.333333v-469.333334a21.333333 21.333333 0 0 1 21.333333-21.333333h426.581333a21.333333 21.333333 0 0 1 21.333334 21.333333V384h0.042666a21.333333 21.333333 0 1 0 42.581334-1.365333z m-285.056 2.432l241.365334 241.365333a21.333333 21.333333 0 0 0 30.165333-30.165333l-241.365333-241.365334a21.333333 21.333333 0 0 0-30.165334 30.165334zM533.290667 640V682.666667a21.333333 21.333333 0 0 0 21.333333-21.333334c0-11.776-10.069333-21.333333-21.333333-21.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="jieping" unicode="" d="M590.848 328.96l-265.386667 306.645333a28.245333 28.245333 0 0 0 3.2 40.149334 29.141333 29.141333 0 0 0 40.789334-3.242667l267.946666-309.674667a124.885333 124.885333 0 0 0 144.213334-34.474666 125.141333 125.141333 0 0 0-16.042667-176.256 125.141333 125.141333 0 0 0-176.341333 14.805333 125.013333 125.013333 0 0 0 1.621333 162.048z m40.149333-18.133333c-18.602667-15.701333-29.312-38.826667-29.312-63.189334 0-45.909333 37.461333-83.157333 83.754667-83.157333a83.413333 83.413333 0 0 1 83.712 83.157333 83.413333 83.413333 0 0 1-83.712 83.114667c-15.189333 0-29.44-4.010667-41.685333-11.008a28.458667 28.458667 0 0 0-12.757334-8.96v0.042667z m-150.698666 52.565333l-38.229334-44.16a29.653333 29.653333 0 0 0-0.768-0.810667 124.885333 124.885333 0 0 0-6.528-151.509333 125.141333 125.141333 0 0 0-176.341333-14.805333C205.226667 196.693333 198.101333 275.626667 242.346667 328.362667a124.928 124.928 0 0 0 156.416 28.544l38.528 44.501333c9.514667-17.237333 24.746667-30.634667 43.008-37.973333z m105.6 122.026667a85.632 85.632 0 0 1-43.818667 37.12l129.749333 150.016a29.141333 29.141333 0 0 0 40.789334 3.242666 28.245333 28.245333 0 0 0 3.2-40.149333l-129.92-150.186667z m-300.8-301.44c35.413333-29.738667 88.064-25.301333 117.546666 9.813333a83.413333 83.413333 0 0 1-10.666666 117.546667 83.456 83.456 0 0 1-117.589334-9.856 83.456 83.456 0 0 1 10.709334-117.504z" horiz-adv-x="1024" /> - + <glyph glyph-name="jianxiaoxiaoshuwei" unicode="" d="M533.333333 448m-42.666666 0a42.666667 42.666667 0 1 1 85.333333 0 42.666667 42.666667 0 1 1-85.333333 0ZM341.333333 106.666667m-42.666666 0a42.666667 42.666667 0 1 1 85.333333 0 42.666667 42.666667 0 1 1-85.333333 0ZM346.496 501.632L256 592.213333 346.496 682.666667l30.165333-30.165334-37.717333-37.802666h119.424v-42.666667H336.469333l40.192-40.234667-30.165333-30.165333zM682.666667 682.666667a85.333333 85.333333 0 0 1-85.333334-85.333334v-85.333333a85.333333 85.333333 0 1 1 170.666667 0V597.333333a85.333333 85.333333 0 0 1-85.333333 85.333334z m0-42.666667a42.666667 42.666667 0 0 0 42.666666-42.666667v-85.333333a42.666667 42.666667 0 0 0-85.333333 0V597.333333a42.666667 42.666667 0 0 0 42.666667 42.666667zM490.666667 341.333333a85.333333 85.333333 0 0 1-85.333334-85.333333v-85.333333a85.333333 85.333333 0 1 1 170.666667 0v85.333333a85.333333 85.333333 0 0 1-85.333333 85.333333z m0-42.666666a42.666667 42.666667 0 0 0 42.666666-42.666667v-85.333333a42.666667 42.666667 0 0 0-85.333333 0v85.333333a42.666667 42.666667 0 0 0 42.666667 42.666667zM682.666667 341.333333a85.333333 85.333333 0 0 1-85.333334-85.333333v-85.333333a85.333333 85.333333 0 1 1 170.666667 0v85.333333a85.333333 85.333333 0 0 1-85.333333 85.333333z m0-42.666666a42.666667 42.666667 0 0 0 42.666666-42.666667v-85.333333a42.666667 42.666667 0 0 0-85.333333 0v85.333333a42.666667 42.666667 0 0 0 42.666667 42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="caidan" unicode="" d="M256 682.666667h192a42.666667 42.666667 0 0 0 42.666667-42.666667v-192a42.666667 42.666667 0 0 0-42.666667-42.666667H256a42.666667 42.666667 0 0 0-42.666667 42.666667V640a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333V469.333333a21.333333 21.333333 0 0 1 21.333333-21.333333H426.666667a21.333333 21.333333 0 0 1 21.333333 21.333333V618.666667A21.333333 21.333333 0 0 1 426.666667 640H277.333333z m298.666667 42.666667H768a42.666667 42.666667 0 0 0 42.666667-42.666667v-192a42.666667 42.666667 0 0 0-42.666667-42.666667h-192a42.666667 42.666667 0 0 0-42.666667 42.666667V640a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333V469.333333a21.333333 21.333333 0 0 1 21.333333-21.333333h149.333334a21.333333 21.333333 0 0 1 21.333333 21.333333V618.666667a21.333333 21.333333 0 0 1-21.333333 21.333333H597.333333z m-21.333333-277.333333H768a42.666667 42.666667 0 0 0 42.666667-42.666667V128a42.666667 42.666667 0 0 0-42.666667-42.666667h-192a42.666667 42.666667 0 0 0-42.666667 42.666667v192a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333v-149.333334a21.333333 21.333333 0 0 1 21.333333-21.333333h149.333334a21.333333 21.333333 0 0 1 21.333333 21.333333V298.666667a21.333333 21.333333 0 0 1-21.333333 21.333333H597.333333z m-341.333333 42.666667h192a42.666667 42.666667 0 0 0 42.666667-42.666667V128a42.666667 42.666667 0 0 0-42.666667-42.666667H256a42.666667 42.666667 0 0 0-42.666667 42.666667v192a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333v-149.333334a21.333333 21.333333 0 0 1 21.333333-21.333333H426.666667a21.333333 21.333333 0 0 1 21.333333 21.333333V298.666667a21.333333 21.333333 0 0 1-21.333333 21.333333H277.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="shujuku" unicode="" d="M256 682.666667h512a42.666667 42.666667 0 0 0 42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 0-42.666667-42.666667H256a42.666667 42.666667 0 0 0-42.666667 42.666667V640a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 0 1 21.333333 21.333333v42.666667a21.333333 21.333333 0 0 1-21.333333 21.333333h-469.333334zM256 490.666667h512a42.666667 42.666667 0 0 0 42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 0-42.666667-42.666667H256a42.666667 42.666667 0 0 0-42.666667 42.666667v85.333333a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 0 1 21.333333 21.333333v42.666667a21.333333 21.333333 0 0 1-21.333333 21.333333h-469.333334z m405.333334-21.333333h21.333333a21.333333 21.333333 0 1 0 0-42.666667H682.666667a21.333333 21.333333 0 1 0 0 42.666667zM256 298.666667h512a42.666667 42.666667 0 0 0 42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 0-42.666667-42.666667H256a42.666667 42.666667 0 0 0-42.666667 42.666667v85.333333a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 0 1 21.333333 21.333333v42.666667a21.333333 21.333333 0 0 1-21.333333 21.333333h-469.333334z m405.333334-21.333333h21.333333a21.333333 21.333333 0 1 0 0-42.666667H682.666667a21.333333 21.333333 0 1 0 0 42.666667z m0 384h21.333333a21.333333 21.333333 0 1 0 0-42.666667H682.666667a21.333333 21.333333 0 1 0 0 42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="wubiankuang" unicode="" d="M384 85.333333v42.666667h42.666667v-42.666667zM554.666667 85.333333v42.666667h42.666666v-42.666667zM298.666667 85.333333v42.666667h42.666666v-42.666667zM469.333333 85.333333v42.666667h42.666667v-42.666667zM640 85.333333v42.666667h42.666667v-42.666667zM384 341.333333v42.666667h42.666667v-42.666667zM384 597.333333V640h42.666667v-42.666667zM554.666667 597.333333V640h42.666666v-42.666667zM298.666667 597.333333V640h42.666666v-42.666667zM469.333333 597.333333V640h42.666667v-42.666667zM640 597.333333V640h42.666667v-42.666667zM725.333333 597.333333V640h42.666667v-42.666667zM213.333333 597.333333V640h42.666667v-42.666667zM554.666667 341.333333v42.666667h42.666666v-42.666667zM298.666667 341.333333v42.666667h42.666666v-42.666667zM469.333333 341.333333v42.666667h42.666667v-42.666667zM640 341.333333v42.666667h42.666667v-42.666667zM725.333333 85.333333v42.666667h42.666667v-42.666667zM213.333333 85.333333v42.666667h42.666667v-42.666667zM725.333333 256v42.666667h42.666667v-42.666667zM213.333333 256v42.666667h42.666667v-42.666667zM725.333333 426.666667v42.666666h42.666667v-42.666666zM213.333333 426.666667v42.666666h42.666667v-42.666666zM725.333333 170.666667v42.666666h42.666667v-42.666666zM213.333333 170.666667v42.666666h42.666667v-42.666666zM725.333333 341.333333v42.666667h42.666667v-42.666667zM213.333333 341.333333v42.666667h42.666667v-42.666667zM725.333333 512V554.666667h42.666667v-42.666667zM213.333333 512V554.666667h42.666667v-42.666667zM469.333333 256v42.666667h42.666667v-42.666667zM469.333333 426.666667v42.666666h42.666667v-42.666666zM469.333333 170.666667v42.666666h42.666667v-42.666666zM469.333333 341.333333v42.666667h42.666667v-42.666667zM469.333333 512V554.666667h42.666667v-42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="bianji" unicode="" d="M642.56 532.266667l-170.88-170.88 37.76-22.613334 22.613333-37.717333 170.88 170.88-60.373333 60.330667z m30.208 30.165333l60.330667-60.330667 15.104 15.061334a21.333333 21.333333 0 0 1 0 30.165333l-30.165334 30.165333a21.333333 21.333333 0 0 1-30.165333 0l-15.104-15.104v0.042667z m-231.253333-231.253333l-10.112-10.112v-60.330667h60.330666l10.112 10.112-22.613333 37.717333-37.717333 22.613334z m291.584 291.584l60.373333-60.330667a42.666667 42.666667 0 0 0 0-60.330667l-284.032-284.032H388.736V338.773333l284.032 283.989334a42.666667 42.666667 0 0 0 60.330667 0zM554.666667 661.333333a21.333333 21.333333 0 0 0-21.333334-21.333333h-256c-11.818667 0-21.333333-9.472-21.333333-21.162667v-469.674666c0-11.434667 9.557333-21.162667 21.333333-21.162667h469.333334c11.818667 0 21.333333 9.472 21.333333 21.162667V320a21.333333 21.333333 0 1 0 42.666667 0v-191.872c0-23.637333-19.2-42.794667-42.453334-42.794667H255.786667A42.624 42.624 0 0 0 213.333333 128.085333V639.872C213.333333 663.509333 232.533333 682.666667 255.829333 682.666667H533.333333a21.333333 21.333333 0 0 0 21.333334-21.333334z" horiz-adv-x="1024" /> - + <glyph glyph-name="qingchuyangshi" unicode="" d="M214.016 173.568h593.92v-42.410667H214.016v42.410667z m578.048 312.106667l-180.693333 181.077333A53.376 53.376 0 0 1 573.738667 682.666667a45.653333 45.653333 0 0 1-32.64-13.226667l-313.941334-314.965333c-18.56-18.602667-17.322667-50.261333 2.688-70.4l68.010667-68.096h298.24l198.698667 199.338666c18.56 18.602667 17.322667 50.261333-2.730667 70.357334z m-213.546667-227.242667H315.434667L259.84 314.112c-3.968 4.010667-4.053333 9.088-2.730667 10.453333L430.08 497.92l193.92-193.92-45.44-45.568z" horiz-adv-x="1024" /> - + <glyph glyph-name="shanchu" unicode="" d="M320 554.666667v-426.581334A42.666667 42.666667 0 0 1 362.581333 85.333333h298.88a42.666667 42.666667 0 0 1 42.538667 42.794667V554.666667h42.666667a21.333333 21.333333 0 1 1 0 42.666666h-469.333334a21.333333 21.333333 0 0 1 0-42.666666h42.666667zM426.666667 661.333333c0 11.776 9.642667 21.333333 21.248 21.333334h128.170666c11.690667 0 21.248-9.472 21.248-21.333334 0-11.776-9.642667-21.333333-21.248-21.333333h-128.170666A21.248 21.248 0 0 0 426.666667 661.333333zM362.666667 533.504A21.333333 21.333333 0 0 0 384.128 554.666667h255.701333c11.904 0 21.504-9.728 21.504-21.162667v-384.341333a21.333333 21.333333 0 0 0-21.504-21.162667H384.128c-11.733333 0-21.290667 9.386667-21.461333 21.162667V533.504z m42.666666-42.837333a21.290667 21.290667 0 1 0 42.666667 0v-298.666667a21.290667 21.290667 0 1 0-42.666667 0v298.666667z m85.333334 0a21.290667 21.290667 0 1 0 42.666666 0v-298.666667a21.290667 21.290667 0 1 0-42.666666 0v298.666667z m85.333333 0a21.290667 21.290667 0 1 0 42.666667 0v-298.666667a21.290667 21.290667 0 1 0-42.666667 0v298.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="wenbenjuzhongduiqi" unicode="" d="M234.666667 597.333333h554.666666a21.333333 21.333333 0 1 0 0-42.666666h-554.666666a21.333333 21.333333 0 1 0 0 42.666666zM341.333333 469.333333h341.333334a21.333333 21.333333 0 1 0 0-42.666666H341.333333a21.333333 21.333333 0 0 0 0 42.666666z m-106.666666-128h554.666666a21.333333 21.333333 0 1 0 0-42.666666h-554.666666a21.333333 21.333333 0 0 0 0 42.666666zM341.333333 213.333333h341.333334a21.333333 21.333333 0 1 0 0-42.666666H341.333333a21.333333 21.333333 0 0 0 0 42.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="dayin" unicode="" d="M743.125333 554.666667c35.669333 0 64.384-28.885333 67.285334-65.024l0.256-6.101334V213.333333h-149.76v42.666667H768V483.541333c0 14.592-9.514667 26.154667-21.333333 28.16L743.168 512H280.874667c-12.16 0-22.784-10.24-24.576-24.149333l-0.298667-4.266667V256h127.36v-42.666667H213.333333V483.541333c0 36.906667 26.794667 67.712 61.653334 70.826667L280.874667 554.666667h462.250666zM682.666667 682.666667H341.333333v-170.666667h341.333334V682.666667z m-42.666667-42.666667v-85.333333H384V640h256zM682.666667 341.333333v-256H341.333333v256h341.333334z m-42.666667-42.666666H384v-170.666667h256v170.666667zM341.333333 469.333333h128v-42.666666H341.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="wenbenfenge" unicode="" d="M544.896 506.282667h110.762667v-46.933334c6.698667-6.613333 15.658667-6.613333 22.357333 0l84.949333 55.125334c6.698667 4.437333 6.698667 13.226667 0 19.84l-84.906666 57.386666c-6.741333 6.613333-15.701333 6.613333-22.4 0v-41.258666h-133.12l-89.429334-154.453334H343.722667v-0.128h-22.698667c-11.178667 0-22.357333-11.050667-22.357333-22.058666 0-11.050667 11.178667-22.058667 22.357333-22.058667h134.101333l-0.085333 0.128h0.426667l89.386666 154.453333h0.042667z m133.12-198.954667a15.061333 15.061333 0 0 1-22.314667 0v-43.690667h-66.133333l-67.029333 110.293334-22.357334-44.117334s62.592-103.68 67.072-110.293333h88.448V174.933333a15.061333 15.061333 0 0 1 22.314667 0l84.949333 55.168c6.698667 4.437333 6.698667 13.226667 0 19.84l-84.906666 57.386667h-0.042667z" horiz-adv-x="1024" /> - + <glyph glyph-name="hanshu" unicode="" d="M771.072 504.746667a6.698667 6.698667 0 0 1-0.512 9.514666 6.997333 6.997333 0 0 1-4.48 1.749334h-61.354667c-1.962667 0-3.84-0.853333-5.12-2.346667l-103.893333-122.709333a6.698667 6.698667 0 0 0-11.392 1.621333l-53.674667 119.381333a6.656 6.656 0 0 1-6.144 4.010667H381.866667l0.853333 3.968 6.741333 35.712c8.874667 46.933333 32.085333 68.864 72.533334 68.864 15.658667 0 29.994667-1.450667 41.258666-4.010667l11.861334 56.490667a197.888 197.888 0 0 1-46.464 5.12c-87.296 0-132.224-37.418667-148.650667-124.458667l-7.978667-41.813333H229.632a6.698667 6.698667 0 0 1-6.613333-5.376l-9.130667-43.818667a6.826667 6.826667 0 0 1 6.570667-8.106666h79.786666l-75.264-363.52a6.826667 6.826667 0 0 1 6.570667-8.234667H287.573333c3.242667 0 5.973333 2.346667 6.570667 5.418667l75.861333 366.165333h114.773334l57.685333-117.546667a6.570667 6.570667 0 0 0-1.024-7.381333l-152.746667-171.690667a6.826667 6.826667 0 0 1 5.12-11.264h61.44c2.005333 0 3.882667 0.853333 5.162667 2.389334l104.576 123.989333a6.826667 6.826667 0 0 0 11.392-1.493333l55.594667-120.661334a6.741333 6.741333 0 0 1 6.186666-3.968h54.613334a6.784 6.784 0 0 1 6.101333 9.770667L618.325333 328.533333a6.698667 6.698667 0 0 0 1.066667 7.466667l151.722667 168.661333-0.042667 0.042667z" horiz-adv-x="1024" /> - + <glyph glyph-name="jiangxu" unicode="" d="M430.848 229.802667H366.592V659.925333a6.656 6.656 0 0 1-6.741333 6.528h-47.36a6.656 6.656 0 0 1-6.741334-6.528v-430.122666H241.493333c-5.674667 0-8.874667-6.314667-5.333333-10.538667l94.72-115.2a6.912 6.912 0 0 1 10.624 0l94.72 115.2c3.413333 4.224 0.298667 10.538667-5.376 10.538667zM582.442667 89.301333l20.992 61.098667h103.68l21.205333-61.098667h43.690667L672.64 362.666667h-34.688l-99.370667-273.365334h43.861334z m112.896 97.877334h-79.872l39.552 119.424h0.768l39.552-119.466667zM742.570667 409.301333v39.168h-124.288l124.288 203.093334V682.666667h-169.685334v-36.949334h119.04l-123.904-201.941333v-34.474667z" horiz-adv-x="1024" /> - + <glyph glyph-name="dingbuduiqi" unicode="" d="M298.666667 512h426.666666v-42.666667H298.666667zM416 368.170667l90.496 90.496 90.538667-90.496-30.165334-30.165334-37.802666 37.717334v-290.090667h-42.666667v292.565333l-40.234667-40.192-30.165333 30.165334z" horiz-adv-x="1024" /> - + <glyph glyph-name="tupian" unicode="" d="M810.666667 682.666667v-597.333334H213.333333V682.666667h597.333334z m-42.666667-263.381334l-233.984-190.890666-118.613333 98.218666L256 191.36V128h512v291.285333zM768 640H256v-392.704l159.146667 134.954667 119.04-98.602667L768 474.325333V640zM384 554.666667a42.666667 42.666667 0 1 0 0-85.333334 42.666667 42.666667 0 0 0 0 85.333334z" horiz-adv-x="1024" /> - + <glyph glyph-name="xiangxia90" unicode="" d="M789.333333 367.786667l-213.333333-77.653334v-0.64l-1.621333 0.042667L426.666667 235.776v45.354667l106.666666 38.826666V472.362667l-106.666666 38.826666V556.544l147.498666-53.674667 1.834667-0.042666v-0.64l213.333333-77.610667v-56.789333z m-46.634666 28.416L576 456.874667v-121.386667l166.698667 60.714667zM384 208.170667l-90.496-90.538667-90.538667 90.538667 30.165334 30.165333 37.802666-37.76V661.333333h42.666667v-463.232l40.234667 40.234667 30.165333-30.165333z" horiz-adv-x="1024" /> - + <glyph glyph-name="shupaiwenzi" unicode="" d="M636.757333 597.333333l77.653334-213.333333h0.64l-0.042667-1.621333 53.76-147.712h-45.354667l-38.826666 106.666666h-152.405334l-38.826666-106.666666H448l53.674667 147.498666 0.042666 1.834667h0.64l77.610667 213.333333h56.789333z m-28.416-46.634666L547.669333 384h121.386667l-60.714667 166.698667zM394.368 197.504L303.786667 106.965333 213.333333 197.546667l30.165334 30.165333 37.802666-37.76V650.666667h42.666667v-463.232l40.234667 40.234666 30.165333-30.165333z" horiz-adv-x="1024" /> - + <glyph glyph-name="quanjiabiankuang" unicode="" d="M213.333333 85.333333V640h42.666667v-554.666667zM725.333333 85.333333V640h42.666667v-554.666667zM469.333333 85.333333V640h42.666667v-554.666667zM213.333333 640h554.666667v-42.666667H213.333333zM213.333333 384h554.666667v-42.666667H213.333333zM213.333333 128h554.666667v-42.666667H213.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="shengxu" unicode="" d="M430.848 538.24H366.592v-430.165333a6.656 6.656 0 0 0-6.741333-6.485334h-47.36a6.656 6.656 0 0 0-6.741334 6.485334V538.24H241.493333c-5.674667 0-8.874667 6.314667-5.333333 10.538667l94.72 115.2a6.912 6.912 0 0 0 10.624 0l94.72-115.2c3.413333-4.224 0.298667-10.538667-5.376-10.538667zM582.442667 409.301333l20.992 61.098667h103.68l21.205333-61.098667h43.690667L672.64 682.666667h-34.688l-99.370667-273.365334h43.861334z m112.896 97.877334h-79.872l39.552 119.424h0.768l39.552-119.466667zM742.570667 89.301333v39.168h-124.288l124.288 203.093334V362.666667h-169.685334v-36.949334h119.04l-123.904-201.941333v-34.474667z" horiz-adv-x="1024" /> - + <glyph glyph-name="caijian" unicode="" d="M341.333333 682.666667h42.666667v-469.333334H341.333333zM810.666667 256v-42.666667H341.333333v42.666667zM682.666667 85.333333h-42.666667V554.666667h42.666667zM213.333333 512V554.666667h469.333334v-42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="jine" unicode="" d="M658.816 640l34.986667-24.490667-124.629334-177.92h119.04v-42.666666h-149.333333v-85.333334h149.333333v-42.666666h-149.333333v-128h-42.666667v128h-149.333333v42.666666h149.333333v85.333334h-149.333333v42.666666h119.04L341.333333 615.509333 376.32 640l141.226667-201.728L658.816 640z" horiz-adv-x="1024" /> - + <glyph glyph-name="caidan1" unicode="" d="M256 256h85.333333a42.666667 42.666667 0 0 0 42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 0-42.666667-42.666667H256a42.666667 42.666667 0 0 0-42.666667 42.666667v85.333333a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 1 21.333333-21.333333h42.666667a21.333333 21.333333 0 0 1 21.333333 21.333333v42.666667a21.333333 21.333333 0 0 1-21.333333 21.333333h-42.666667zM682.666667 682.666667h85.333333a42.666667 42.666667 0 0 0 42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 0-42.666667-42.666667h-85.333333a42.666667 42.666667 0 0 0-42.666667 42.666667V640a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 1 21.333333-21.333333h42.666667a21.333333 21.333333 0 0 1 21.333333 21.333333v42.666667a21.333333 21.333333 0 0 1-21.333333 21.333333h-42.666667zM469.333333 256h85.333334a42.666667 42.666667 0 0 0 42.666666-42.666667v-85.333333a42.666667 42.666667 0 0 0-42.666666-42.666667h-85.333334a42.666667 42.666667 0 0 0-42.666666 42.666667v85.333333a42.666667 42.666667 0 0 0 42.666666 42.666667z m21.333334-42.666667a21.333333 21.333333 0 0 1-21.333334-21.333333v-42.666667a21.333333 21.333333 0 0 1 21.333334-21.333333h42.666666a21.333333 21.333333 0 0 1 21.333334 21.333333v42.666667a21.333333 21.333333 0 0 1-21.333334 21.333333h-42.666666zM469.333333 682.666667h85.333334a42.666667 42.666667 0 0 0 42.666666-42.666667v-85.333333a42.666667 42.666667 0 0 0-42.666666-42.666667h-85.333334a42.666667 42.666667 0 0 0-42.666666 42.666667V640a42.666667 42.666667 0 0 0 42.666666 42.666667z m21.333334-42.666667a21.333333 21.333333 0 0 1-21.333334-21.333333v-42.666667a21.333333 21.333333 0 0 1 21.333334-21.333333h42.666666a21.333333 21.333333 0 0 1 21.333334 21.333333v42.666667a21.333333 21.333333 0 0 1-21.333334 21.333333h-42.666666z m192-384h85.333333a42.666667 42.666667 0 0 0 42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 0-42.666667-42.666667h-85.333333a42.666667 42.666667 0 0 0-42.666667 42.666667v85.333333a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 1 21.333333-21.333333h42.666667a21.333333 21.333333 0 0 1 21.333333 21.333333v42.666667a21.333333 21.333333 0 0 1-21.333333 21.333333h-42.666667zM469.333333 469.333333h85.333334a42.666667 42.666667 0 0 0 42.666666-42.666666v-85.333334a42.666667 42.666667 0 0 0-42.666666-42.666666h-85.333334a42.666667 42.666667 0 0 0-42.666666 42.666666v85.333334a42.666667 42.666667 0 0 0 42.666666 42.666666z m21.333334-42.666666a21.333333 21.333333 0 0 1-21.333334-21.333334v-42.666666a21.333333 21.333333 0 0 1 21.333334-21.333334h42.666666a21.333333 21.333333 0 0 1 21.333334 21.333334v42.666666a21.333333 21.333333 0 0 1-21.333334 21.333334h-42.666666zM256 469.333333h85.333333a42.666667 42.666667 0 0 0 42.666667-42.666666v-85.333334a42.666667 42.666667 0 0 0-42.666667-42.666666H256a42.666667 42.666667 0 0 0-42.666667 42.666666v85.333334a42.666667 42.666667 0 0 0 42.666667 42.666666z m426.666667 0h85.333333a42.666667 42.666667 0 0 0 42.666667-42.666666v-85.333334a42.666667 42.666667 0 0 0-42.666667-42.666666h-85.333333a42.666667 42.666667 0 0 0-42.666667 42.666666v85.333334a42.666667 42.666667 0 0 0 42.666667 42.666666z m21.333333-42.666666a21.333333 21.333333 0 0 1-21.333333-21.333334v-42.666666a21.333333 21.333333 0 0 1 21.333333-21.333334h42.666667a21.333333 21.333333 0 0 1 21.333333 21.333334v42.666666a21.333333 21.333333 0 0 1-21.333333 21.333334h-42.666667z m-426.666667 0a21.333333 21.333333 0 0 1-21.333333-21.333334v-42.666666a21.333333 21.333333 0 0 1 21.333333-21.333334h42.666667a21.333333 21.333333 0 0 1 21.333333 21.333334v42.666666a21.333333 21.333333 0 0 1-21.333333 21.333334h-42.666667zM256 682.666667h85.333333a42.666667 42.666667 0 0 0 42.666667-42.666667v-85.333333a42.666667 42.666667 0 0 0-42.666667-42.666667H256a42.666667 42.666667 0 0 0-42.666667 42.666667V640a42.666667 42.666667 0 0 0 42.666667 42.666667z m21.333333-42.666667a21.333333 21.333333 0 0 1-21.333333-21.333333v-42.666667a21.333333 21.333333 0 0 1 21.333333-21.333333h42.666667a21.333333 21.333333 0 0 1 21.333333 21.333333v42.666667a21.333333 21.333333 0 0 1-21.333333 21.333333h-42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="quxiaohebing" unicode="" d="M810.666667 682.666667v-597.333334H213.333333V682.666667h597.333334z m-42.666667-42.666667H256v-512h512V640zM533.333333 682.666667v-170.666667h-42.666666V682.666667zM405.333333 469.333333v-213.333333h-42.666666v213.333333zM533.333333 490.666667v-213.333334h-42.666666v213.333334zM661.333333 490.666667v-213.333334h-42.666666v213.333334zM533.333333 298.666667v-170.666667h-42.666666v170.666667zM810.666667 512v-256H213.333333V512h597.333334z m-42.666667-42.666667H256v-170.666666h512v170.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="wenbenxiahuaxian" unicode="" d="M362.666667 640v-298.666667a149.333333 149.333333 0 0 1 298.453333-8.192L661.333333 341.333333V640h42.666667v-298.666667a192 192 0 0 0-383.786667-9.045333L320 341.333333V640h42.666667zM256 128m21.333333 0l469.333334 0q21.333333 0 21.333333-21.333333l0 0q0-21.333333-21.333333-21.333334l-469.333334 0q-21.333333 0-21.333333 21.333334l0 0q0 21.333333 21.333333 21.333333ZM256 640m21.333333 0l128 0q21.333333 0 21.333334-21.333333l0 0q0-21.333333-21.333334-21.333334l-128 0q-21.333333 0-21.333333 21.333334l0 0q0 21.333333 21.333333 21.333333ZM597.333333 640m21.333334 0l128 0q21.333333 0 21.333333-21.333333l0 0q0-21.333333-21.333333-21.333334l-128 0q-21.333333 0-21.333334 21.333334l0 0q0 21.333333 21.333334 21.333333Z" horiz-adv-x="1024" /> - + <glyph glyph-name="shangbiankuang" unicode="" d="M213.333333 640h554.666667v-42.666667H213.333333zM213.333333 469.333333h42.666667v-42.666666H213.333333zM213.333333 298.666667h42.666667v-42.666667H213.333333zM213.333333 554.666667h42.666667v-42.666667H213.333333zM213.333333 384h42.666667v-42.666667H213.333333zM213.333333 213.333333h42.666667v-42.666666H213.333333zM469.333333 469.333333h42.666667v-42.666666h-42.666667zM725.333333 469.333333h42.666667v-42.666666h-42.666667zM725.333333 298.666667h42.666667v-42.666667h-42.666667zM725.333333 554.666667h42.666667v-42.666667h-42.666667zM725.333333 384h42.666667v-42.666667h-42.666667zM725.333333 213.333333h42.666667v-42.666666h-42.666667zM725.333333 128h42.666667v-42.666667h-42.666667zM469.333333 298.666667h42.666667v-42.666667h-42.666667zM469.333333 554.666667h42.666667v-42.666667h-42.666667zM469.333333 384h42.666667v-42.666667h-42.666667zM469.333333 213.333333h42.666667v-42.666666h-42.666667zM213.333333 128h42.666667v-42.666667H213.333333zM384 128h42.666667v-42.666667H384zM554.666667 128h42.666666v-42.666667h-42.666666zM298.666667 128h42.666666v-42.666667H298.666667zM469.333333 128h42.666667v-42.666667h-42.666667zM640 128h42.666667v-42.666667h-42.666667zM384 384h42.666667v-42.666667H384zM554.666667 384h42.666666v-42.666667h-42.666666zM298.666667 384h42.666666v-42.666667H298.666667zM469.333333 384h42.666667v-42.666667h-42.666667zM640 384h42.666667v-42.666667h-42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="dingwei" unicode="" d="M618.666667 172.416V234.666667a21.333333 21.333333 0 1 0 42.666666 0v-62.250667a128.128 128.128 0 0 1 104.917334 104.917333H704a21.333333 21.333333 0 1 0 0 42.666667h62.250667a128.128 128.128 0 0 1-104.917334 104.874667V362.666667a21.333333 21.333333 0 1 0-42.666666 0v62.208a128.085333 128.085333 0 0 1-104.874667-104.874667H576a21.333333 21.333333 0 0 0 0-42.666667h-62.208a128.128 128.128 0 0 1 104.874667-104.917333z m149.333333 296.96a213.12 213.12 0 0 1-42.666667 24.874667V618.666667a21.333333 21.333333 0 0 1-21.333333 21.333333h-426.666667a21.333333 21.333333 0 0 1-21.333333-21.333333v-341.333334a21.333333 21.333333 0 0 1 21.333333-21.333333h153.6c2.986667-14.848 7.594667-29.098667 13.482667-42.666667H256a42.666667 42.666667 0 0 0-42.666667 42.666667V640a42.666667 42.666667 0 0 0 42.666667 42.666667h469.333333a42.666667 42.666667 0 0 0 42.666667-42.666667v-170.666667zM640 128a170.666667 170.666667 0 1 0 0 341.333333 170.666667 170.666667 0 0 0 0-341.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="sizhoujiabiankuang" unicode="" d="M213.333333 85.333333V640h42.666667v-554.666667zM725.333333 85.333333V640h42.666667v-554.666667zM213.333333 640h554.666667v-42.666667H213.333333zM213.333333 128h554.666667v-42.666667H213.333333zM384 341.333333v42.666667h42.666667v-42.666667zM554.666667 341.333333v42.666667h42.666666v-42.666667zM298.666667 341.333333v42.666667h42.666666v-42.666667zM469.333333 341.333333v42.666667h42.666667v-42.666667zM640 341.333333v42.666667h42.666667v-42.666667zM469.333333 256v42.666667h42.666667v-42.666667zM469.333333 426.666667v42.666666h42.666667v-42.666666zM469.333333 170.666667v42.666666h42.666667v-42.666666zM469.333333 341.333333v42.666667h42.666667v-42.666667zM469.333333 512V554.666667h42.666667v-42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="cebianlanshouqi" unicode="" d="M256 576a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 1 0 0-42.666666h-469.333334a21.290667 21.290667 0 0 0-21.333333 21.333333zM256 384c0 11.776 9.6 21.333333 21.461333 21.333333h277.077334a21.333333 21.333333 0 1 0 0-42.666666H277.504A21.333333 21.333333 0 0 0 256 384z m0-192a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 1 0 0-42.666666h-469.333334a21.290667 21.290667 0 0 0-21.333333 21.333333z m368.896 283.562667a21.333333 21.333333 0 0 0 30.165333 30.165333l106.666667-106.666667a21.333333 21.333333 0 0 0 0-30.165333l-106.666667-106.666667a21.333333 21.333333 0 0 0-30.165333 30.165334L716.501333 384l-91.562666 91.605333z" horiz-adv-x="1024" /> - + <glyph glyph-name="hebing" unicode="" d="M810.666667 682.666667v-597.333334H213.333333V682.666667h597.333334z m-42.666667-42.666667H256v-512h512V640zM389.162667 469.333333l90.538666-90.496-90.538666-90.538666-30.165334 30.165333 37.802667 37.845333-119.466667-0.042666v42.666666l121.856 0.042667-40.192 40.192 30.165334 30.165333zM645.162667 469.333333L554.666667 378.837333l90.496-90.538666 30.165333 30.165333-37.76 37.845333 119.466667-0.042666v42.666666l-121.856 0.042667 40.149333 40.192-30.165333 30.165333z" horiz-adv-x="1024" /> - + <glyph glyph-name="xiangshangqingxie" unicode="" d="M290.944 606.634667l205.738667-95.914667 0.469333 0.426667 1.109333-1.152 142.506667-66.432-32.128-32.085334-102.826667 47.957334-107.818666-107.733334 48-102.912-32.085334-32.042666-66.346666 142.250666-1.28 1.28 0.469333 0.512-96 205.696 40.192 40.149334z m12.885333-53.034667l74.965334-160.810667 85.845333 85.845334L303.786667 553.6zM690.432 432.896h128v-128h-42.666667v53.418667l-325.845333-325.802667-30.165333 30.165333 327.552 327.552h-56.874667v42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="shuipingduiqi" unicode="" d="M725.333333 362.666667H298.666667v42.666666h426.666666zM426.666667 261.504l90.496 90.496 90.538666-90.496-30.165333-30.165333-39.936 39.850666v-121.557333h-42.666667v119.765333l-38.101333-38.058666-30.165333 30.165333zM426.666667 506.837333l90.496-90.538666 90.538666 90.538666-30.165333 30.165334-39.936-39.893334V618.666667h-42.666667v-119.765334l-38.101333 38.101334-30.165333-30.165334z" horiz-adv-x="1024" /> - + <glyph glyph-name="wenbenshanchuxian" unicode="" d="M298.666667 640h426.666666v-42.666667H298.666667zM533.290667 341.333333l0.042666-192h-42.666666l-0.042667 192h42.666667z m0.042666 277.333334l-0.042666-234.666667h-42.666667l0.042667 234.666667h42.666666zM320 640v-85.333333h-42.666667V640zM746.666667 640v-85.333333h-42.666667V640zM256 426.666667h512v-42.666667H256zM426.666667 170.666667h170.666666v-42.666667h-170.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="wenbenyouduiqi" unicode="" d="M234.666667 597.333333h554.666666a21.333333 21.333333 0 1 0 0-42.666666h-554.666666a21.333333 21.333333 0 1 0 0 42.666666z m213.333333-128h341.333333a21.333333 21.333333 0 1 0 0-42.666666h-341.333333a21.333333 21.333333 0 0 0 0 42.666666z m-213.333333-128h554.666666a21.333333 21.333333 0 1 0 0-42.666666h-554.666666a21.333333 21.333333 0 0 0 0 42.666666z m213.333333-128h341.333333a21.333333 21.333333 0 1 0 0-42.666666h-341.333333a21.333333 21.333333 0 0 0 0 42.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="qianjin" unicode="" d="M287.018667 476.672h310.997333v-42.666667H286.72l84.48-84.437333a21.333333 21.333333 0 1 0-30.208-30.165333l-120.746667 120.704a21.248 21.248 0 0 0 0 30.165333l120.746667 120.661333a21.333333 21.333333 0 0 0 30.165333-30.165333L287.018667 476.672z m524.330666-213.333333a213.333333 213.333333 0 0 1-213.333333 213.333333v-42.666667a170.666667 170.666667 0 0 0 170.666667-170.666666h42.666666z m0 0h-42.666666v-64a21.333333 21.333333 0 1 1 42.666666 0v64z" horiz-adv-x="1024" /> - + <glyph glyph-name="tubiao" unicode="" d="M256 682.666667H213.333333v-597.333334h597.333334v42.666667H256zM490.666667 552.533333V341.333333h185.6c-19.2-72.533333-85.333333-128-164.266667-128-93.866667 0-170.666667 76.8-170.666667 170.666667 0 87.466667 66.133333 157.866667 149.333334 168.533333M512 597.333333c-117.333333 0-213.333333-96-213.333333-213.333333s96-213.333333 213.333333-213.333333 213.333333 96 213.333333 213.333333h-192V597.333333H512zM618.666667 635.733333c83.2-14.933333 134.4-74.666667 147.2-166.4H618.666667V635.733333m-42.666667 46.933334v-256H810.666667c0 149.333333-85.333333 256-234.666667 256z" horiz-adv-x="1024" /> - + <glyph glyph-name="youbiankuang" unicode="" d="M768 640v-554.666667h-42.666667V640zM597.333333 640v-42.666667h-42.666666V640zM426.666667 640v-42.666667H384V640zM682.666667 640v-42.666667h-42.666667V640zM512 640v-42.666667h-42.666667V640zM341.333333 640v-42.666667H298.666667V640zM597.333333 384v-42.666667h-42.666666v42.666667zM597.333333 128v-42.666667h-42.666666v42.666667zM426.666667 128v-42.666667H384v42.666667zM682.666667 128v-42.666667h-42.666667v42.666667zM512 128v-42.666667h-42.666667v42.666667zM341.333333 128v-42.666667H298.666667v42.666667zM256 128v-42.666667H213.333333v42.666667zM426.666667 384v-42.666667H384v42.666667zM682.666667 384v-42.666667h-42.666667v42.666667zM512 384v-42.666667h-42.666667v42.666667zM341.333333 384v-42.666667H298.666667v42.666667zM256 640v-42.666667H213.333333V640zM256 469.333333v-42.666666H213.333333v42.666666zM256 298.666667v-42.666667H213.333333v42.666667zM256 554.666667v-42.666667H213.333333V554.666667zM256 384v-42.666667H213.333333v42.666667zM256 213.333333v-42.666666H213.333333v42.666666zM512 469.333333v-42.666666h-42.666667v42.666666zM512 298.666667v-42.666667h-42.666667v42.666667zM512 554.666667v-42.666667h-42.666667V554.666667zM512 384v-42.666667h-42.666667v42.666667zM512 213.333333v-42.666666h-42.666667v42.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="baifenhao" unicode="" d="M653.525333 682.666667l36.949334-21.333334-320-554.24-36.949334 21.333334L653.525333 682.666667zM682.666667 426.666667c71.68 0 128-67.626667 128-149.333334S754.346667 128 682.666667 128s-128 67.626667-128 149.333333 56.32 149.333333 128 149.333334z m0-42.666667c-46.165333 0-85.333333-46.976-85.333334-106.666667s39.168-106.666667 85.333334-106.666666c46.165333 0 85.333333 46.976 85.333333 106.666666s-39.168 106.666667-85.333333 106.666667zM341.333333 661.333333c71.68 0 128-67.626667 128-149.333333s-56.32-149.333333-128-149.333333S213.333333 430.293333 213.333333 512s56.32 149.333333 128 149.333333z m0-42.666666C295.168 618.666667 256 571.690667 256 512s39.168-106.666667 85.333333-106.666667c46.165333 0 85.333333 46.976 85.333334 106.666667s-39.168 106.666667-85.333334 106.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="geshishua" unicode="" d="M725.333333 682.666667v-85.333334h85.333334v-234.666666h-298.666667V298.666667h21.333333v-213.333334h-85.333333v213.333334h21.333333v106.666666h298.666667V554.666667h-42.666667v-85.333334H213.333333V682.666667h512z m-42.666666-42.666667H256v-128h426.666667V640z" horiz-adv-x="1024" /> - + <glyph glyph-name="baocun" unicode="" d="M341.333333 640H277.333333a21.333333 21.333333 0 0 1-21.333333-21.333333v-469.333334a21.333333 21.333333 0 0 1 21.333333-21.333333h469.333334a21.333333 21.333333 0 0 1 21.333333 21.333333v469.333334a21.333333 21.333333 0 0 1-21.333333 21.333333H682.666667v-213.333333a42.666667 42.666667 0 0 0-42.666667-42.666667H384a42.666667 42.666667 0 0 0-42.666667 42.666667V640zM256 682.666667h512a42.666667 42.666667 0 0 0 42.666667-42.666667v-512a42.666667 42.666667 0 0 0-42.666667-42.666667H256a42.666667 42.666667 0 0 0-42.666667 42.666667V640a42.666667 42.666667 0 0 0 42.666667 42.666667z m128-42.666667v-192a21.333333 21.333333 0 0 1 21.333333-21.333333h213.333334a21.333333 21.333333 0 0 1 21.333333 21.333333V640H384z m192-42.666667a21.333333 21.333333 0 0 0 21.333333-21.333333v-85.333333a21.333333 21.333333 0 0 0-42.666666 0v85.333333a21.333333 21.333333 0 0 0 21.333333 21.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="shujuyanzheng" unicode="" d="M764.330667 303.829333l30.165333-30.165333L734.165333 213.333333l60.330667-60.330666-30.165333-30.165334-60.330667 60.330667-60.330667-60.330667-30.165333 30.165334L673.834667 213.333333l-60.330667 60.330667 30.165333 30.165333 60.330667-60.330666 60.330667 60.330666zM725.333333 384v-42.666667H256v-128h256v-42.666666H213.333333v213.333333h512z m47.829334 209.664l30.165333-30.165333L682.666667 442.88l-30.165334-30.165333-90.496 90.453333 30.165334 30.208 60.330666-60.330667 120.661334 120.661334zM725.333333 640v-42.666667H256v-128h256v-42.666666H213.333333V640h512z" horiz-adv-x="1024" /> - + <glyph glyph-name="jieduan" unicode="" d="M767.829333 682.666667h42.496v-597.333334h-42.496zM767.146667 342.784h-384v42.496h384v-42.496zM213.333333 682.666667h84.992v-597.333334H213.333333V682.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="geshitiaojian" unicode="" d="M810.666667 682.666667v-597.333334H213.333333V682.666667h597.333334z m-42.666667-320h-106.666667V128H768v234.666667z m-405.376 0h-106.666667V128h106.666667v234.666667z m256.042667-86.784L445.482667 128H618.666667v147.882667z m0 162.346666l-213.376-179.968v-108.885333l213.376 179.072v109.781333z m0 163.669334l-213.333334-179.029334v-108.885333l213.333334 179.072V601.898667zM768 640h-103.936l-2.730667-2.304V405.333333H768V640zM362.666667 640H256v-234.666667h106.666667V640z m235.008 0H405.333333v-161.408L597.674667 640z" horiz-adv-x="1024" /> - + <glyph glyph-name="zidonghuanhang" unicode="" d="M213.333333 682.666667h85.12v-597.333334H213.333333V682.666667z m225.450667-477.44l25.557333 21.333333-72.362666 63.786667 72.362666 63.872-25.557333 21.248-93.610667-80.853334h4.266667-4.266667l93.610667-89.386666zM768 682.666667h42.581333v-597.333334H768zM540.928 528.725333H391.978667v-42.581333h148.949333c59.605333 0 106.410667-38.314667 106.410667-85.12s-46.805333-85.12-106.410667-85.12H391.978667v-42.581333h148.949333c85.12 0 157.482667 55.338667 157.482667 127.701333s-72.362667 127.701333-157.44 127.701333z" horiz-adv-x="1024" /> - + <glyph glyph-name="cebianlanzhankai" unicode="" d="M256 576a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 1 0 0-42.666666h-469.333334a21.290667 21.290667 0 0 0-21.333333 21.333333z m192-192c0 11.776 9.557333 21.333333 21.461333 21.333333h277.034667a21.333333 21.333333 0 1 0 0-42.666666h-277.034667a21.333333 21.333333 0 0 0-21.461333 21.333333zM256 192a21.333333 21.333333 0 0 0 21.333333 21.333333h469.333334a21.333333 21.333333 0 1 0 0-42.666666h-469.333334a21.290667 21.290667 0 0 0-21.333333 21.333333z m143.061333 283.562667L307.541333 384l91.605334-91.562667a21.333333 21.333333 0 0 0-30.165334-30.165333l-106.666666 106.666667a21.333333 21.333333 0 0 0 0 30.165333l106.666666 106.666667a21.333333 21.333333 0 0 0 30.165334-30.165334z" horiz-adv-x="1024" /> - + <glyph glyph-name="shaixuan2" unicode="" d="M736 682.666667H328.533333C288 682.666667 256 650.666667 256 610.133333c0-17.066667 6.4-34.133333 17.066667-46.933333 0-2.133333 2.133333-2.133333 2.133333-4.266667l160-160v-168.533333c0-6.4 2.133333-10.666667 6.4-14.933333l145.066667-123.733334c4.266667-2.133333 8.533333-4.266667 12.8-4.266666 6.4 0 10.666667 2.133333 14.933333 6.4 4.266667 4.266667 4.266667 10.666667 4.266667 14.933333V392.533333l170.666666 166.4 2.133334 2.133334c10.666667 12.8 17.066667 29.866667 17.066666 46.933333 0 42.666667-32 74.666667-72.533333 74.666667z m23.466667-93.866667s-2.133333-2.133333 0 0l-172.8-172.8c-4.266667-4.266667-6.4-8.533333-6.4-14.933333v-251.733334l-104.533334 87.466667V405.333333c0 6.4-2.133333 10.666667-6.4 14.933334l-162.133333 166.4-2.133333 2.133333c-6.4 6.4-8.533333 12.8-8.533334 21.333333 0 17.066667 14.933333 32 32 32h407.466667c17.066667 0 32-14.933333 32-32 0-8.533333-4.266667-14.933333-8.533333-21.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="xiangxiaqingxie" unicode="" d="M755.968 583.722667l-95.914667-205.738667 0.426667-0.469333-1.152-1.109334-66.432-142.506666-32.085333 32.128 47.957333 102.826666-107.733333 107.818667-102.912-48-32.042667 32.085333 142.250667 66.346667 1.28 1.28 0.512-0.469333 205.696 96 40.149333-40.192z m-53.034667-12.885334l-160.810666-74.965333 85.845333-85.845333 74.965333 160.810666zM582.229333 184.234667v-128h-128v42.666666h53.418667l-325.802667 325.845334 30.165334 30.165333 327.552-327.552v56.874667h42.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="yichu" unicode="" d="M256 682.666667h85.333333v-597.333334H256zM711.466667 253.312l-26.154667 26.154667 89.6 85.845333H256v37.376h518.954667l-89.6 85.845333 26.112 26.112L842.154667 384zM573.354667 682.666667h42.666666v-242.688h-42.666666V682.666667z m0-354.688h42.666666V85.333333h-42.666666v242.688z" horiz-adv-x="1024" /> - + <glyph glyph-name="chuizhihebing" unicode="" d="M810.666667 682.666667v-597.333334H213.333333V682.666667h597.333334z m-42.666667-42.666667H256v-512h512V640zM640 682.666667v-597.333334h-42.666667V682.666667zM426.666667 682.666667v-597.333334H384V682.666667zM597.034667 304.170667l-90.538667-90.538667L416 304.213333l30.165333 30.165334 37.802667-37.76V544h42.666667v-249.898667l40.234666 40.234667 30.165334-30.165333z" horiz-adv-x="1024" /> - + <glyph glyph-name="wenbenfensanduiqi" unicode="" d="M234.666667 597.333333h554.666666a21.333333 21.333333 0 1 0 0-42.666666h-554.666666a21.333333 21.333333 0 1 0 0 42.666666z m0-128h554.666666a21.333333 21.333333 0 1 0 0-42.666666h-554.666666a21.333333 21.333333 0 0 0 0 42.666666z m0-128h554.666666a21.333333 21.333333 0 1 0 0-42.666666h-554.666666a21.333333 21.333333 0 0 0 0 42.666666z m0-128h554.666666a21.333333 21.333333 0 1 0 0-42.666666h-554.666666a21.333333 21.333333 0 0 0 0 42.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="zuobiankuang" unicode="" d="M213.333333 85.333333V640h42.666667v-554.666667zM384 85.333333v42.666667h42.666667v-42.666667zM554.666667 85.333333v42.666667h42.666666v-42.666667zM298.666667 85.333333v42.666667h42.666666v-42.666667zM469.333333 85.333333v42.666667h42.666667v-42.666667zM640 85.333333v42.666667h42.666667v-42.666667zM384 341.333333v42.666667h42.666667v-42.666667zM554.666667 341.333333v42.666667h42.666666v-42.666667zM298.666667 341.333333v42.666667h42.666666v-42.666667zM469.333333 341.333333v42.666667h42.666667v-42.666667zM640 341.333333v42.666667h42.666667v-42.666667zM469.333333 256v42.666667h42.666667v-42.666667zM469.333333 426.666667v42.666666h42.666667v-42.666666zM469.333333 170.666667v42.666666h42.666667v-42.666666zM469.333333 341.333333v42.666667h42.666667v-42.666667zM469.333333 512V554.666667h42.666667v-42.666667zM384 597.333333V640h42.666667v-42.666667zM554.666667 597.333333V640h42.666666v-42.666667zM298.666667 597.333333V640h42.666666v-42.666667zM469.333333 597.333333V640h42.666667v-42.666667zM640 597.333333V640h42.666667v-42.666667zM725.333333 597.333333V640h42.666667v-42.666667zM725.333333 85.333333v42.666667h42.666667v-42.666667zM725.333333 256v42.666667h42.666667v-42.666667zM725.333333 426.666667v42.666666h42.666667v-42.666666zM725.333333 170.666667v42.666666h42.666667v-42.666666zM725.333333 341.333333v42.666667h42.666667v-42.666667zM725.333333 512V554.666667h42.666667v-42.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="fenyechakan" unicode="" d="M810.666667 682.666667v-42.666667h-170.709334L640 128h170.666667v-42.666667h-213.333334V682.666667h213.333334z m-384 0l-0.042667-554.666667H426.666667v-42.666667H213.333333v42.666667h170.624L384 640H213.333333V682.666667h213.333334z m106.666666-512v-85.333334h-42.666666v85.333334h42.666666z m0 170.666666v-85.333333h-42.666666v85.333333h42.666666z m0 170.666667v-85.333333h-42.666666V512h42.666666z m0 170.666667v-85.333334h-42.666666V682.666667h42.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="yunhang" unicode="" d="M268.032 372.565333l60.373333 60.330667 211.2-211.2-60.373333-60.330667zM780.928 583.765333l60.373333-60.330666-331.904-331.861334-60.330666 60.330667z" horiz-adv-x="1024" /> - + <glyph glyph-name="lie" unicode="" d="M234.666667 64v597.333333h42.666666v-597.333333zM405.333333 64v597.333333h42.666667v-597.333333zM576 64v597.333333h42.666667v-597.333333zM746.666667 64v597.333333h42.666666v-597.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="quanping" unicode="" d="M810.666667 682.666667v-597.333334H213.333333V682.666667h597.333334z m-42.666667-42.666667H256v-512h512V640zM341.333333 298.666667v-85.376L426.666667 213.333333v-42.666666H298.666667v128h42.666666z m384 0v-128h-128v42.666666h85.376L682.666667 298.666667h42.666666z m-298.666666 298.666666v-42.666666l-85.333334 0.042666V469.333333H298.666667V597.333333h128z m298.666666 0v-128h-42.666666l0.042666 85.333334H597.333333V597.333333h128z" horiz-adv-x="1024" /> - + <glyph glyph-name="shaixuan" unicode="" d="M736 682.666667H328.533333C288 682.666667 256 650.666667 256 610.133333c0-17.066667 6.4-34.133333 17.066667-46.933333 0-2.133333 2.133333-2.133333 2.133333-4.266667l160-160v-168.533333c0-6.4 2.133333-10.666667 6.4-14.933333l145.066667-123.733334c4.266667-2.133333 8.533333-4.266667 12.8-4.266666 6.4 0 10.666667 2.133333 14.933333 6.4 4.266667 4.266667 4.266667 10.666667 4.266667 14.933333V392.533333l170.666666 166.4 2.133334 2.133334c10.666667 12.8 17.066667 29.866667 17.066666 46.933333 0 42.666667-32 74.666667-72.533333 74.666667z m23.466667-93.866667s-2.133333-2.133333 0 0l-172.8-172.8c-4.266667-4.266667-6.4-8.533333-6.4-14.933333v-251.733334l-104.533334 87.466667V405.333333c0 6.4-2.133333 10.666667-6.4 14.933334l-162.133333 166.4-2.133333 2.133333c-6.4 6.4-8.533333 12.8-8.533334 21.333333 0 17.066667 14.933333 32 32 32h407.466667c17.066667 0 32-14.933333 32-32 0-8.533333-4.266667-14.933333-8.533333-21.333333zM688.213333 517.589333l-101.546666-101.589333c-4.266667-4.266667-6.4-8.533333-6.4-14.933333v-251.733334l-104.533334 87.466667V405.333333c0 6.4-2.133333 10.666667-6.4 14.933334L403.626667 487.68l284.586666 29.909333z" horiz-adv-x="1024" /> - + <glyph glyph-name="gengxin" unicode="" d="M358.101333 640A298.666667 298.666667 0 0 1 512 85.333333a21.333333 21.333333 0 1 1 0 42.666667A256 256 0 0 0 405.333333 616.789333V532.906667A21.333333 21.333333 0 0 1 426.666667 512c11.776 0 21.333333 9.130667 21.333333 20.906667V661.76a20.565333 20.565333 0 0 1-6.229333 14.634667l0.042666 0.128A20.650667 20.650667 0 0 1 427.050667 682.666667H298.24a21.333333 21.333333 0 0 1-20.906667-21.333334c0-11.776 9.173333-21.333333 20.906667-21.333333h59.818667z m307.797334-512A298.666667 298.666667 0 0 1 512 682.666667a21.333333 21.333333 0 0 1 0-42.666667 256 256 0 0 0 106.666667-488.789333V235.093333A21.333333 21.333333 0 0 1 597.333333 256c-11.776 0-21.333333-9.130667-21.333333-20.906667v-128.810666a20.48 20.48 0 0 1 6.229333-14.634667l-0.042666-0.170667a20.650667 20.650667 0 0 1 14.762666-6.144h128.768a21.333333 21.333333 0 0 1 20.949334 21.333334c0 11.776-9.173333 21.333333-20.906667 21.333333h-59.861333z" horiz-adv-x="1024" /> - + <glyph glyph-name="qingchu" unicode="" d="M330.965333 625.365333l422.4-422.4-60.330666-60.330666-422.4 422.4zM753.365333 565.034667l-422.4-422.4-60.330666 60.330666 422.4 422.4z" horiz-adv-x="1024" /> - + <glyph glyph-name="hang" unicode="" d="M213.333333 640h597.333334v-42.666667H213.333333zM213.333333 469.333333h597.333334v-42.666666H213.333333zM213.333333 298.666667h597.333334v-42.666667H213.333333zM213.333333 128h597.333334v-42.666667H213.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="zhushi" unicode="" d="M352 405.333333a32 32 0 1 1 64 0 32 32 0 0 1-64 0z m128 0a32 32 0 1 1 64 0 32 32 0 0 1-64 0z m128 0a32 32 0 1 1 64 0 32 32 0 0 1-64 0zM768 597.333333H256c-23.466667 0-42.666667-19.2-42.666667-42.666666v-298.666667c0-23.466667 19.2-42.666667 42.666667-42.666667h106.666667v-128l128 128H768c23.466667 0 42.666667 19.2 42.666667 42.666667V554.666667c0 23.466667-19.2 42.666667-42.666667 42.666666z m0-320c0-12.8-8.533333-21.333333-21.333333-21.333333H469.333333l-64-64V256h-128c-12.8 0-21.333333 8.533333-21.333333 21.333333v256c0 12.8 8.533333 21.333333 21.333333 21.333334h469.333334c12.8 0 21.333333-8.533333 21.333333-21.333334v-256z" horiz-adv-x="1024" /> - + <glyph glyph-name="jian" unicode="" d="M213.333333 426.666667h597.333334v-85.333334H213.333333z" horiz-adv-x="1024" /> - + <glyph glyph-name="jisuan" unicode="" d="M774.058667 682.666667v-42.666667H310.784l236.288-256-236.330667-256h463.317334v-42.666667H213.333333l275.669334 298.666667L213.333333 682.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="jia" unicode="" d="M213.333333 426.666667h597.333334v-85.333334H213.333333zM554.666667 682.666667v-597.333334h-85.333334V682.666667z" horiz-adv-x="1024" /> - + <glyph glyph-name="dibuduiqi" unicode="" d="M725.333333 170.666667H298.666667v42.666666h426.666666zM608 314.496l-90.496-90.496-90.538667 90.496 30.165334 30.165333 37.802666-37.717333V597.034667h42.666667v-292.565334l40.234667 40.192 30.165333-30.165333z" horiz-adv-x="1024" /> - + <glyph glyph-name="xiangshang90" unicode="" d="M789.333333 400.213333l-213.333333 77.653334v0.64l-1.621333-0.042667L426.666667 532.224v-45.354667l106.666666-38.826666v-152.405334l-106.666666-38.826666v-45.354667l147.498666 53.674667 1.834667 0.042666v0.64l213.333333 77.610667V400.213333z m-46.634666-28.416L576 311.125333v121.386667l166.698667-60.714667zM384 559.829333L293.504 650.368 202.965333 559.786667l30.165334-30.165334 37.802666 37.76V106.666667h42.666667V569.898667l40.234667-40.234667L384 559.829333z" horiz-adv-x="1024" /> - + <glyph glyph-name="wuxuanzhuang" unicode="" d="M549.546667 682.666667l77.653333-213.333334h0.64l-0.042667-1.621333 53.76-147.712h-45.354666l-38.826667 106.666667h-152.405333l-38.826667-106.666667H360.789333l53.674667 147.498667 0.042667 1.834666h0.64l77.610666 213.333334h56.789334z m-28.416-46.634667L460.458667 469.333333h121.386666l-60.714666 166.698667zM709.162667 277.333333l90.538666-90.496-90.538666-90.538666-30.165334 30.165333 37.76 37.802667H256v42.666666h463.232l-40.234667 40.234667 30.165334 30.165333z" horiz-adv-x="1024" /> - + <glyph glyph-name="xianshiyincangwangge" unicode="" d="M256 640h554.666667v-42.666667H256zM298.666667 640v-554.666667H256V640zM810.666667 640v-554.666667h-42.666667V640zM469.333333 640v-554.666667h-42.666666V640zM640 640v-554.666667h-42.666667V640zM256 469.333333h554.666667v-42.666666H256zM256 298.666667h554.666667v-42.666667H256zM256 128h554.666667v-42.666667H256z" horiz-adv-x="1024" /> - + <glyph glyph-name="dongjie" unicode="" d="M256.426667 639.573333h255.317333v-553.130666H256.426667zM809.557333 682.069333v-595.626666H213.930667V682.069333h595.626666z m-42.538666-42.538666H256.426667v-510.549334h510.549333V639.573333zM490.453333 639.573333h42.538667v-510.592h-42.538667zM256.426667 363.008v42.538667h510.592v-42.538667zM256.384 669.738667l264.192-264.192-30.122667-30.08-264.192 264.192 30.122667 30.08z m-30.122667-317.184l30.122667 30.122666 264.192-264.192-30.122667-30.08-264.192 264.149334z" horiz-adv-x="1024" /> - + <glyph glyph-name="wenbenzuoduiqi" unicode="" d="M234.666667 597.333333h554.666666a21.333333 21.333333 0 1 0 0-42.666666h-554.666666a21.333333 21.333333 0 1 0 0 42.666666z m0-128h341.333333a21.333333 21.333333 0 0 0 0-42.666666h-341.333333a21.333333 21.333333 0 0 0 0 42.666666z m0-128h554.666666a21.333333 21.333333 0 1 0 0-42.666666h-554.666666a21.333333 21.333333 0 0 0 0 42.666666z m0-128h341.333333a21.333333 21.333333 0 0 0 0-42.666666h-341.333333a21.333333 21.333333 0 0 0 0 42.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="houtui" unicode="" d="M737.664 476.672H426.666667v-42.666667h311.296l-84.48-84.437333a21.333333 21.333333 0 0 1 30.208-30.165333l120.746666 120.704a21.290667 21.290667 0 0 1 0 30.165333l-120.746666 120.661333a21.333333 21.333333 0 0 1-30.165334-30.165333l84.138667-84.096zM213.333333 263.338667a213.333333 213.333333 0 0 0 213.333334 213.333333v-42.666667a170.666667 170.666667 0 0 1-170.666667-170.666666H213.333333z m0 0h42.666667v-64a21.333333 21.333333 0 0 0-42.666667 0v64z" horiz-adv-x="1024" /> - + <glyph glyph-name="shuipinghebing" unicode="" d="M810.666667 682.666667v-597.333334H213.333333V682.666667h597.333334z m-42.666667-42.666667H256v-512h512V640zM810.666667 512v-256H213.333333V512h597.333334z m-42.666667-42.666667H256v-170.666666h512v170.666666zM581.162667 469.333333l90.538666-90.496-90.538666-90.538666-30.165334 30.165333 37.76 37.802667H341.333333v42.666666h249.898667l-40.234667 40.234667 30.165334 30.165333z" horiz-adv-x="1024" /> - + <glyph glyph-name="xiabiankuang" unicode="" d="M768 85.333333H213.333333v42.666667h554.666667zM768 256h-42.666667v42.666667h42.666667zM768 426.666667h-42.666667v42.666666h42.666667zM768 170.666667h-42.666667v42.666666h42.666667zM768 341.333333h-42.666667v42.666667h42.666667zM768 512h-42.666667V554.666667h42.666667zM512 256h-42.666667v42.666667h42.666667zM256 256H213.333333v42.666667h42.666667zM256 426.666667H213.333333v42.666666h42.666667zM256 170.666667H213.333333v42.666666h42.666667zM256 341.333333H213.333333v42.666667h42.666667zM256 512H213.333333V554.666667h42.666667zM256 597.333333H213.333333V640h42.666667zM512 426.666667h-42.666667v42.666666h42.666667zM512 170.666667h-42.666667v42.666666h42.666667zM512 341.333333h-42.666667v42.666667h42.666667zM512 512h-42.666667V554.666667h42.666667zM768 597.333333h-42.666667V640h42.666667zM597.333333 597.333333h-42.666666V640h42.666666zM426.666667 597.333333H384V640h42.666667zM682.666667 597.333333h-42.666667V640h42.666667zM512 597.333333h-42.666667V640h42.666667zM341.333333 597.333333H298.666667V640h42.666666zM597.333333 341.333333h-42.666666v42.666667h42.666666zM426.666667 341.333333H384v42.666667h42.666667zM682.666667 341.333333h-42.666667v42.666667h42.666667zM512 341.333333h-42.666667v42.666667h42.666667zM341.333333 341.333333H298.666667v42.666667h42.666666z" horiz-adv-x="1024" /> - + <glyph glyph-name="shezhi" unicode="" d="M794.496 470.314667a112.341333 112.341333 0 0 0-72.917333 53.034666 108.074667 108.074667 0 0 0-9.941334 88.234667 13.781333 13.781333 0 0 1-4.394666 14.592 299.392 299.392 0 0 1-95.616 55.424 14.421333 14.421333 0 0 1-15.146667-3.584 113.578667 113.578667 0 0 0-84.48-35.968 113.578667 113.578667 0 0 0-82.858667 35.157333 14.421333 14.421333 0 0 1-16.768 4.394667 298.154667 298.154667 0 0 1-95.573333-55.808 13.781333 13.781333 0 0 1-4.394667-14.634667c9.344-29.354667 5.717333-61.269333-9.984-87.808a112.341333 112.341333 0 0 0-72.96-53.034666 13.909333 13.909333 0 0 1-10.752-11.050667 281.856 281.856 0 0 1 0-109.610667c1.024-5.504 5.290667-9.813333 10.752-11.008a112.341333 112.341333 0 0 0 72.96-52.650666c15.786667-26.666667 19.413333-58.709333 9.941334-88.192a13.781333 13.781333 0 0 1 4.352-14.634667 299.392 299.392 0 0 1 95.658666-55.424h4.778667c3.882667 0 7.637333 1.578667 10.325333 4.394667a114.773333 114.773333 0 0 0 166.229334 0c4.096-5.546667 11.648-7.424 17.92-4.394667a298.666667 298.666667 0 0 1 97.194666 55.04c4.266667 3.541333 6.016 9.301333 4.394667 14.592a108.074667 108.074667 0 0 0 8.362667 88.618667 112.341333 112.341333 0 0 0 72.96 52.650666 13.909333 13.909333 0 0 1 10.709333 11.008 280.32 280.32 0 0 1 0 109.653334 14.336 14.336 0 0 1-10.752 11.008z m-26.709333-105.173334a136.106667 136.106667 0 0 1-79.658667-60.928 131.285333 131.285333 0 0 1-13.568-97.322666 259.114667 259.114667 0 0 0-69.717333-39.552A135.552 135.552 0 0 1 512 206.890667a137.941333 137.941333 0 0 1-92.842667-39.552 258.304 258.304 0 0 0-69.717333 39.552 129.664 129.664 0 0 1-14.762667 96.938666 136.106667 136.106667 0 0 1-78.506666 61.312 239.189333 239.189333 0 0 0 0 79.061334A136.106667 136.106667 0 0 1 335.872 505.173333c16.896 29.525333 21.76 64.426667 13.525333 97.365334a258.730667 258.730667 0 0 0 69.717334 39.552c25.386667-23.125333 58.453333-35.968 92.842666-36.010667a136.064 136.064 0 0 1 92.842667 36.010667c25.173333-9.472 48.682667-22.826667 69.717333-39.594667a131.285333 131.285333 0 0 1 14.336-96.896 136.106667 136.106667 0 0 1 79.701334-60.928c4.394667-26.197333 4.394667-52.906667 0-79.104l-0.810667-0.426667h0.042667zM513.706667 525.653333a119.466667 119.466667 0 1 1 0-238.933333 119.466667 119.466667 0 0 1 0 238.933333z m0-199.125333a79.658667 79.658667 0 1 0 0 159.36 79.658667 79.658667 0 0 0 0-159.36z" horiz-adv-x="1024" /> - + </font> diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.woff2 b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.woff2 index 6a1edbcb8..3ee910fc4 100644 Binary files a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.woff2 and b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/assets/iconfont/iconfont.woff2 differ diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/luckysheet.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/luckysheet.css index 949e75b69..210aea536 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/luckysheet.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/luckysheet.css @@ -1 +1 @@ -.luckysheet-icon-img-container.iconfont,.luckysheet-submenu-arrow .iconfont{font-size:24px}.luckysheet-toolbar-combo-button .luckysheet-iconfont-xiayige,.luckysheet-toolbar-menu-button .luckysheet-iconfont-xiayige{font-size:12px;top:-8px;left:-3px}.luckysheet-toolbar-select .luckysheet-iconfont-xiayige{margin-right:4px}#luckysheet-icon-morebtn{position:absolute;right:15px;transform:translate(0,-50%);top:50%}.toolbar .luckysheet-icon-border-all,.toolbar .luckysheet-icon-cell-color,.toolbar .luckysheet-icon-text-color,.toolbar .luckysheet-icon-textwrap,.toolbar .luckysheet-icon-valign{margin-right:-3px}.toolbar .luckysheet-freezen-btn-horizontal,.toolbar .luckysheet-icon-align,.toolbar .luckysheet-icon-function,.toolbar .luckysheet-icon-merge-button,.toolbar .luckysheet-icon-rotation{margin-right:-4px}#luckysheet-icon-morebtn{padding:2px 13px 0 5px}#luckysheet-icon-morebtn .iconfont{top:-9px}.lucky-button-custom{cursor:pointer;display:flex;align-items:center;justify-content:center}.lucky-button-custom:hover{background-color:#e1e4e8}#luckysheet-icon-morebtn-div{border:1px solid #d4d4d4}.luckysheet-sheets-add .iconfont,.luckysheet-sheets-m .iconfont{font-size:21px}#luckysheet-sheets-leftscroll,#luckysheet-sheets-rightscroll{padding:6px 10px}input.luckysheet-mousedown-cancel{border:1px solid #a1a1a1}input.luckysheet-mousedown-cancel:focus{border:1px solid #0188fb;outline:0}.luckysheet-cellFormat-config{display:none}.luckysheet-cellFormat-config .luckysheet-modal-dialog-content{position:relative;height:550px;width:600px}.luckysheet-cellFormat-menu-c{position:absolute;width:100%;height:30px;border-right:1px solid #fff;border-bottom:1px solid #d4d4d4;font-size:12px}.luckysheet-cellFormat-menu{position:relative;display:inline-block;height:30px;width:80px;text-align:center;line-height:30px;border:1px solid #d4d4d4;border-bottom:none;background:#f0f0f0;cursor:pointer}.luckysheet-cellFormat-menu:hover{background:#e7e7e7}.luckysheet-cellFormat-menu-active{background:#fff;cursor:default}.luckysheet-cellFormat-menu-active:hover{background:#fff}.luckysheet-cellFormat-content{position:absolute;top:30px;bottom:0;width:100%;border:1px solid #d4d4d4;border-top:none}.luckysheet-cellFormat-protection{position:relative;margin-top:30px;margin-left:40px}.luckysheet-cellFormat-protection span{font-size:12px;color:#ff2929;padding-left:12px}::-webkit-scrollbar-track{background-color:transparent}.luckysheet-noselected-text{-moz-user-select:-moz-test;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.chart-moveable{cursor:move}.luckysheet{position:absolute;font-size:12px;font-family:"Helvetica Neue",Helvetica,Arial,"PingFang SC","Hiragino Sans GB","Heiti SC","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;border:1px solid #e5e5e5;background:#fff}.luckysheet *{box-sizing:initial;outline:0}.luckysheetLoaderGif{width:8em;height:8em;position:absolute;top:50%;left:50%;-ms-transform:translate(-50%,-100%);-moz-transform:translate(-50%,-100%);-o-transform:translate(-50%,-100%);transform:translate(-50%,-100%);background-image:url(loading.gif);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.luckysheet-loading-mask{position:absolute;z-index:1000000000;margin:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:#fff}.luckysheet-loading-content{position:relative;top:50%;transform:translateY(-50%);width:100%;font-size:14px;color:#409eff;text-align:center}.luckysheet-loading-image{width:8em;height:8em;margin:0 auto}.luckysheet-loading-text{margin-top:1em}.luckysheet-loading-image .image-type{width:100%;height:100%;background-repeat:no-repeat;background-position:center;background-size:100% 100%}.luckysheet-loading-image .path-type{width:100%;height:100%}.luckysheet-work-area{height:90px;width:100%;position:relative}.luckysheet_info_detail{position:relative;left:0;top:0;margin:0;padding:0 17px;height:56px;display:flex;align-items:center;background:#fff;box-shadow:0 -1px 0 0 #e6e7e8;border-bottom:1px solid #d4d4d4}.luckysheet_info_detail .sheet-name{margin:auto}.luckysheet_info_detail div.luckysheet_info_detail_back{font-size:14px;padding:0 8px;margin-right:18px;border-radius:3px;cursor:pointer}.luckysheet_info_detail div.luckysheet_info_detail_back:hover{background:#eee}.luckysheet_info_detail .luckysheet_info_detail_input{border:1px solid transparent;border-radius:3px!important;color:#000;font-size:16px;height:26px;line-height:22px;margin:0;min-width:1px;padding:2px 7px;visibility:hidden}.luckysheet_info_detail .luckysheet_info_detail_input:hover{border:1px solid #e5e5e5}.luckysheet_info_detail .luckysheet_info_detail_input:focus{-webkit-appearance:none;-moz-appearance:none;border:1px solid #0188fb!important;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);color:#000;outline:0}.luckysheet_info_detail_update{color:#cbcbcb;font-size:12px;margin-left:15px}.luckysheet_info_detail_user{font-size:12px;cursor:pointer;margin-left:10px}#luckysheet_info_detail_user_img{vertical-align:middle;height:20px;line-height:20px;border-radius:50%;object-fit:cover}.luckysheet_info_detail_save{color:#828282;font-size:12px;margin:0 5px}.luckysheet-share-logo{height:32px;width:152px;z-index:1;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAAAgCAYAAADuW7E5AAAN7ElEQVR4Xu2be5BU1Z3Hv7/Tj2EYkEA0Uj4QTBRBZgofYFAWHzGlVLlqNGg0u6vZVKBqLVmZ7kGcvnf6dt/bDMx0D4RNYiRGd92EcmFZDRrAWl/J6ho3JJAZhELBRQTj+lgfMEhP973frdMzPdMzdM8rTFadOX/N3Ps7557zO5/zO7/f75yWKittYZBFKfXvO+oCLw6y+ki1YaABGQFsGMzy/+MQOwEj5CR4nDCgvijZRshOhczeZmv0wQHVHREeFhroAszDZMA7dyCjpuANgbwF4S9arPJfD6TuiOzw0MCfFbAqi2fQS98AJZeB0DCXtcTKKoeHqofnKIsCRsgUQIJ9qUSAoxQcE3iNLbHytaXkq2xORTa73IN3owCqQO7NlljZpL6+M/L+s6uBEoCpqRD0CRiINoAZAImd8VH/cJwaLPormVkJcDEA//FqkmdbYsGvfXbVN9LzvjQwZICdb3GCQmY9yJIAUZDYaZUZfXVy5P1nVwNDAthki6PGsk07/bN6U40ncskrVvC/+qM+a3lyukecSRfv2XXh3/WnzlDJRJzGaqGcAXCzY9Y8PVTf6a3dT0Mf+jPuIQGsMpr+OYDb++jAtpZYWa8AFtaPOMkHhFgIyFbHDM3vz+CGSsawk9sAXCSCiG2Elw/Vd3pr99PQh8L+WZalsr6x1wLeMceseTb/7oQDNsNK3yTExr6ULvSubo6XP9OXXP79CGDdNfVpA8xwkr8CMU9ElthGaPXQAKadeq9tJwRT+wDn8ZZY2Tf6C5eWGwHsUw6YndoFcNqQAlYVS99GD+t6BUewu/WT1jmvr5zw0VACVpdIft2lTBCqZsdcsrvwW7Wx5HzxyUleFtvrrdCr+XcdZv46gHNFUEHyIEU9lzBCvymsX8p6GPbqqRR3ppbV3/UHfYczmcxl+n9/ZtQvY7G7jnTf9ptmA5wixGHHDG3W75bV14/3Z4PfAvhlQEfy6k1AbXLMe/aU6kPGl7k/4AbvIL1zKXJQebLFrgtt76nfJU1N5RWt3jVCXECRLwLc58tmN8Ziyw4Umwsz3nQ+hfNEMJ1EK4AX/O7hzZZleQU7y1xAThcyBeB0QB6hYLPQ+x/HrHn+hG6RM6LpJwS4rhQ4BA9Q8LVXrFF7BwLXYCxYb1uIUWS11SZWn6o890mAFxfp2/o9zS/fvmHDBle/K9a25TTNztLbCmA8RLb6s4dvTgcnVPjctjd1QlkUvmdHwg/2gETDfQ4g9ztm6O8Mu0n7MBsAjOnRBw+g7Zg1nRcTuvogD5G8pn1yO4ogA6pFjln9cP6RYa+aRvE2Czm5e9s8pqAWx83QTwqfm05qJckwuuctIcDLPhfXWVb4PS1vOslNJP6yp85E8IxthK8+cYDtLvtR5fTMBwDHFoNHhC8CZTc1W/LOQOH6cwBm2KktAK8F+L6IzxLxXnOJWQLUgiinwEwYYacYYBEnOVeIXwI4CZQNPvfjv4rFYm0dstqi36ZXv2OG/6LTWrYD+bL+31O+i4KZj3ZkfWP0pI0H8KTn8cdK+TJCzqfC32s5Qr6aMKpzUXcesJy1FDwl4P0UNZ4eNYRnAXjP7449y7IWHV24cGHg1Enn7iAxHcDvhCpJ4cci+LpH3i26CWJ2PjqPOMlvC/EzgG2AagTkBVGcCJc1lFwbmxwzfEMOsETqTpDTSH4X0FYRz4pgG8m9jlnzE5kZbzfhrscLSDf3t1DNJTC6bxCoV7Q2lwkqbFGU13rWIfG+gAlXyn64KyY5pQ+mDNQHG4gFq0ukrvQ8PqvVLMo3x669Jzfx7RPZFAK8JIB9jhn+Sk/AfORvMpBNAlRQ8GAge2RR4RZyX7zhcp+o5wlQ4J3jmEv3ta/81PfJXAJ6u2OGL4w2NEx00+qPOZCE1yeMmifyfTCdpnrS06cr6xwztKmwDyT2v3vq2HPXLlqkE96IOKlLhXox63bcWQnj3m2GnbwbwBqA72Zbs1NXrLjvg662U40dlioHzd1r1pSN+zD9OkROI2Em6toXlS7RaMNE16+01R3jKe/i5ZGlv+/SUwkfLC8ww8pcIXRzpo6Q68HilqgEHAlRvj+A3q/a68MTyA5R8uiRo/61r6+UAflbxb4xpIDZKcsDowB2OGb4gsLva7+l/BP3HP0smGndqeHphBd42gMuE6AcQMoxw3pLOa4YduMuQKYJEbfrwtH169f7mve8eQjgqRTclTDCP8pBF0++0m4h5CiFjwqxxT/G97S1ZMmHPRst2CLX2EYoZ+F0WbBggW9q1SXHtNtHjzclojWPmfHU4xTeoLct0tctrSLizSD5fQKZV5snlU+feajS9dyc/yaUOyiqxy0ZrxHghRREE0Y43m/AqqyjZxBydq4CcR4pZSVgOu6xUurFTCDwx0DWvdQVvq2O+ne1rJDOVdLfdnqTG0rADDv1c4A6b/dvjhm+ua/+Fm5PeVkRNNhG+N7igCU1AKsp2J+IhM42nFXXAN4WDVImkDlt5bJluQUYcVJnAvypEFfr+e1oKwvgeaVkeTwSeq5rQttzcYAYjhlKFH7XsJMayHEU+VbCCP1LxEnuFuK8vsblC/jPymbdOUI+2pcsgIcdM/y3/QasHw12F1lA3/nnp6co+E7LBvyv8QjafP7M2VkVOLQnJm8NuL0+KgwlYJF48gERncTlVses6TOJWwCYJyKPkbw5t70K/saOhH7WcygdkeFBgKMB35WAqyfmrwXyiG2G7ugpH3GaTqfHa5R4VwKY3+HbuErktrgR0kFA0UCjAL5ugBl2UvttOqn9a0A9WUrVvmz2nzNKLlJKcjIiyiSRLiavhK/HjVBnvrNY4JRrY0AgWPRXeW0LPMHtArk879CL8n3TzXoHlGL+2GcvBY9lmF29J1ZxQmAbBGB6tV8BoNExw0vz47Ss5MlZH3RkNyqfs4k4qbCQjQIcrJw6afItt9ySixZ1MePJWRT5Jwg+eeeUMV/Vvk4BYKscM1xtOKkHkXNyeYziuzzviBfqNuKkHhbyTh0EQKghHiNU8+y66v/Qcpa1arKrvLkUHnHM8ONd/X1gdMZ/+EkhrhTgJdsMXzoIwB7RQJN4KlEXvrawXzXRhonlAf8cjx797pFNWd/oKYDKRfkUmXN8iqbxCiW+8Rnl7amvDe86YRZsRiz7DXHd+mJJVM9Tc7PK/99BtB3qDqy0ClnfHA8u1zv6gGDuITwIwB4C8B0Ar/jdIxdblnXMsix/1jdWR0e3tq/Q9qyzYTdqB1oraxSAascMr2qfdEtl/WPXgbxVRH5hG6Ebi03umjVryt75KP0CIDrF8RZFzU4Y1d10YcYbL6FIYT5tj2OGO7ctM95USfGa24Mmd4Zj3tuZuzMSqR/A410AfuuY4dkDByylc3s6aPCE6iq7rjrnK3fo4wkdPVPwXMIIX0VSTCelg5xZItiiModvzEfE5vKmyz3Xe0YAn0vvivq6pbl2cv1xkttBzATEcsxQLP+8TwvWcXD901JnizmHPh08WftcldG0jiJzkVa3Iuqxw/Dfvt8S7XwOqnQB1nv1AmiuAiR/FPUGgJdJVInk+qfNfkVh1tmwU3GAZi5gJ7VV2QfBLBAzALQK1Ry7rrql1ORGV6ye5GbcbQBPEeC3PveL8yzrO93Ga9iN2wFpT8SK1NhGSEennXNh2I3PIbcz4H8BPKWTm0pkKsG5ud1GieFE2v2t3qPk7j6Yljfjjf9KkZu1M68EWz3gfQDzhNB+9xG/4mVWpEYDjlqr4ULlUy/puEZEdNT4n3pcJHS+zV9sazec5D+CuAMiLgi9uBocM/TDXgHLXblhm04e9nIoLb9viQUv0h2bYaUbhKgpgcC6lljZtwdFV7ejov4BpqUiTnKZkLH85UkB3iZkEYAVxY41DDv1PYANAL7QNe3YIUrdY9e2r/reJtewG68mZKte4R0phW7j7UoXoM3v8kzLqumWE7xv+ZpTfG5mNcFb29voLB8A8mO/e9jIp0AGCtjChQ8EvnTmxxGILNV5vYK2nxfKPXZd6A+Fmq2NNsxUfqUTw7m57Sg6d5ZQmcOr81Yt/0L7jUI+BFCnuiryFwFKA6bPFZHZ2tt9rtxKVGppczTQqP+eGm09LYjAqwArimMgi1piwZI3XwcLX2/1lq5cOTaQCUzTMu8eqNi+dm17vqiXIobdOJkipwcCwf3WvYv1avyTtvcCMHPbtpAb7bqab5bqg2Wt+kJbAJN9bmYchW9/aVz5/sWLFxd1tgeqM50i2bX3wDlu1jc+6//k1fraWm3JShbLapoAP8/L0ve+3/1wn2VZOqrtdykJWGW0LQWwureWdBL1aDr45cI8V1VdOkJBZ3KuR/23ZUzwK801os+1hlVpt07pA4CMAtR8x6zWO8PnvhQFTN+hZ7ZtZ/FrzgU6Iatb4qNyDnFXoVRa2Y2gV/S2BEW+u9MK6pU8rErESRpC2AAP+N3WKYXZ/s+zIooDFs1sJLybehu4PlvMsuyqYsc/fQQGm1piZblzrOFSdLTmqjG7qY9fhPX5M83hMP7jANM/LfPY9kaPX//0sFF4QyE4u6+D68pom05e6pB1YmcDgkMtVtkZw0G5I2MskmitrDt2F0R+UFI5gt0eeH1/r9xUNbLCa83cKuQNkFxEcnILgqNhSeedopGJ+Pxq4DgLVmml14G56yXFyuOtx1rvHOhlwW4NWVQjcH1+geo5suMBi6Y7DlG7iW4TessGcod++KhwZKS9+uo9X1ZG0zpbPQ6Q1yh8iZBN/f1p2YiqRzTQUwP/ByH3mYpBTz2UAAAAAElFTkSuQmCC)}.luckysheet-wa-editor{height:32px;background:#fafafc;position:relative;padding:5px 0 3px 15px;border-bottom:1px solid #d4d4d4;white-space:nowrap;transition:all .2s}.luckysheet-toolbar-left-theme{width:15px;position:absolute;left:0;top:1px;bottom:1px}.luckysheet-inline-block{position:relative;display:-moz-inline-box;display:inline-block}.luckysheet-toolbar-separator{line-height:normal;list-style:none;outline:0;overflow:hidden;padding:0;text-decoration:none;width:0;height:20px;vertical-align:top;border-left:1px solid #e0e0e0;margin:5px 1px}.luckysheet-toolbar-combo-button{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;background:0;border-color:transparent;border-style:solid;border-width:1px;outline:0;padding:0;color:#333;list-style:none;font-size:11px;font-weight:700;text-decoration:none;cursor:default;height:26px;line-height:26px;vertical-align:inherit;margin:0 1px}.luckysheet-toolbar-combo-button:hover{-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1);background-color:#f8f8f8;background-image:-webkit-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:-moz-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:-ms-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:-o-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:linear-gradient(to bottom,#f8f8f8,#f1f1f1);border-color:#c6c6c6!important;color:#222;border-width:1px;border-color:transparent!important;background-color:rgba(0,0,0,.06);background-image:none;cursor:pointer;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;cursor:pointer}.luckysheet-toolbar-combo-button:hover .luckysheet-toolbar-combo-button-input{border-right-color:rgba(0,0,0,.12)}.luckysheet-toolbar-combo-button-open{color:#222;border-width:1px;border-color:transparent!important;background-color:rgba(0,0,0,.12);background-image:none;cursor:pointer}.luckysheet-toolbar-combo-button-open .luckysheet-toolbar-combo-button-input{background:0 0;border-right:1px solid transparent!important}.luckysheet-toolbar-combo-button-inner-box,.luckysheet-toolbar-combo-button-outer-box{border:0;vertical-align:top;margin:0;padding:0}.luckysheet-toolbar-zoom-combobox .luckysheet-toolbar-combo-button-caption{width:36px!important}.luckysheet-toolbar-combo-button-caption{padding:0;margin:0 0 0 -3px}.luckysheet-toolbar-combo-button-input{background:0 0;border:1px solid transparent!important;color:#333;font-family:Arial,sans-serif!important;font-size:11px!important;font-weight:700!important;height:20px!important;overflow:hidden!important;color:rgba(0,0,0,.7);height:22px!important;width:22px}.luckysheet-toolbar-combo-button-input:focus{box-shadow:inset 0 1px 2px rgba(0,0,0,.3);background:#fff;outline:0;border:1px solid #0188fb!important}.luckysheet-toolbar-textinput{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px;height:25px;padding:1px 0 1px 8px}.luckysheet-toolbar-combo-button-dropdown{float:right;margin:9px 0 0 0;padding:0 0 0 1px;min-width:7px;opacity:.8;vertical-align:middle;width:5px;height:7px;margin-top:10px}.luckysheet-toolbar-color-menu-button .luckysheet-toolbar-menu-button-caption{top:-2px}.luckysheet-color-menu-button-indicator{position:relative;height:20px}.luckysheet-color-menu-button-indicator .text-color-bar{position:absolute;bottom:0;background-color:#0081f9;height:3px;width:55%;left:30%}.luckysheet-toolbar-button-inner-box .luckysheet-icon,.luckysheet-toolbar-menu-button-caption .luckysheet-color-menu-button-indicator .luckysheet-icon,.luckysheet-toolbar-menu-button-caption .luckysheet-icon{margin-top:0}.luckysheet-toolbar-menu-button-caption{padding:0;margin:0}.luckysheet-toolbar-menu-button-inner-box{margin:0 2px}.luckysheet-toolbar-menu-button-dropdown{float:right;margin:10px 2px 0 3px;padding:0;opacity:.8;vertical-align:middle;width:5px;height:7px;margin-left:4px;margin-right:0;margin-top:10px}.luckysheet-toolbar-button-split-right .luckysheet-toolbar-menu-button-dropdown{padding:0 3px}.luckysheet-toolbar-button-split-left,.luckysheet-toolbar-button-split-left *{border-top-right-radius:0!important;border-bottom-right-radius:0!important;margin-right:0}.luckysheet-toolbar-button-split-right,.luckysheet-toolbar-button-split-right *{border-top-left-radius:0!important;border-bottom-left-radius:0!important;min-width:5px!important;margin-left:0}#luckysheet-icon-merge-menu{margin-right:1px}.luckysheet-toolbar-button,.luckysheet-toolbar-menu-button{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;background:0;border:1px solid transparent;outline:0;padding:0;list-style:none;font-size:11px;text-decoration:none;vertical-align:middle;cursor:default;height:26px;line-height:26px;color:#333}.luckysheet-toolbar-button-hover,.luckysheet-toolbar-button:hover,.luckysheet-toolbar-menu-button:hover{border:1px solid transparent;background-color:rgba(0,0,0,.06);background-image:none;box-shadow:none;cursor:pointer}.luckysheet-toolbar-button-split-right.luckysheet-toolbar-menu-button:hover{border-left-color:rgba(0,0,0,.12)!important}.luckysheet-toolbar-button-split-right-hover{border-width:1px;border-color:transparent!important;background-color:rgba(0,0,0,.06);cursor:pointer;box-shadow:none;border-left-color:rgba(0,0,0,.12)!important}.luckysheet-toolbar-button:active,.luckysheet-toolbar-menu-button:active{border:1px solid transparent;background-color:rgba(0,0,0,.12);background-image:none;box-shadow:none;cursor:pointer}.luckysheet-toolbar-button-outer-box,.luckysheet-toolbar-menu-button-outer-box{border:0;vertical-align:top;margin:0;padding:0}.luckysheet-toolbar-button-inner-box,.luckysheet-toolbar-menu-button-inner-box{padding:0 2px;padding:0;text-align:center;height:26px;min-width:26px}.luckysheet-icon{direction:ltr;text-align:center;overflow:hidden;vertical-align:middle;height:26px;width:26px;margin:2px}#luckysheet-icon-fmt-other .luckysheet-toolbar-menu-button-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:55px;margin-left:1px;text-align:center}#luckysheet-icon-font-family .luckysheet-toolbar-menu-button-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:55px;margin-left:1px;text-align:center}#luckysheet-icon-function .luckysheet-toolbar-menu-button-caption{margin-right:5px;margin-left:-5px}#luckysheet-icon-function .luckysheet-icon{margin-right:0}#luckysheet-icon-pivotTable .luckysheet-toolbar-menu-button-caption{color:#0188fb}#luckysheet-icon-chart .luckysheet-toolbar-menu-button-caption{color:#0188fb}.luckysheet-rightgclick-menu-sub .sp-container{background-color:#fff;border:solid 1px #fff}#luckysheet-icon-cell-color-menu-menuButton .sp-palette-container,#luckysheet-icon-text-color-menu-menuButton .sp-palette-container{margin-bottom:-300px}#luckysheet-icon-cell-color-menu-menuButton .sp-palette,#luckysheet-icon-text-color-menu-menuButton .sp-palette{margin-top:-10px}.luckysheet-wa-calculate{height:28px;background:#fff;position:relative;padding-right:44px;border-bottom:1px solid #d4d4d4}.luckysheet-wa-calculate-help{height:100%;width:99px;border-right:1px solid #d4d4d4}.luckysheet-wa-calculate-help-box{height:100%;width:85px;position:absolute;top:0;left:0}#luckysheet-helpbox{left:0;position:absolute;right:0;top:50%;transform:translateY(-50%);resize:none;font-family:arial,sans,sans-serif;font-size:14px;line-height:14px;background-color:#fff;padding:2px 5px}.luckysheet-helpbox-cell-input{width:100%;height:100%;margin:0;outline:0;cursor:text;-webkit-user-modify:read-write-plaintext-only;white-space:nowrap;overflow:hidden;-webkit-transform:translateZ(0);background-color:#fff;word-wrap:break-word;-webkit-nbsp-mode:space;-webkit-line-break:after-white-space}.luckysheet-wa-calculate-help-tool{position:absolute;left:85px;text-align:center;height:100%;width:13px;border-left:1px solid transparent;border-right:1px solid transparent}.luckysheet-wa-calculate-help-tool .fa-caret-down{position:absolute;top:50%;left:3px;transform:translateY(-50%)}.luckysheet-wa-calculate-help-tool:hover{background:#efefef;cursor:pointer;border-left:1px solid #e5e5e5;border-right:1px solid #e5e5e5}.luckysheet-wa-calculate-size{position:absolute;height:3px;width:100%;left:0;bottom:0;z-index:1000}.luckysheet-wa-calculate-size:hover{background:#5e5e5e;cursor:ns-resize}#luckysheet-wa-functionbox-cancel{left:104px}#luckysheet-wa-functionbox-confirm{left:130px}.luckysheet-wa-functionbox{position:absolute;top:50%;transform:translateY(-50%);text-align:center;left:156px;color:#d6d6d6}.luckysheet-wa-functionbox span{vertical-align:middle;width:30px;height:30px}.luckysheet-wa-functionbox i{font-size:24px}.luckysheet-wa-calculate-active{color:#585858;cursor:pointer}.luckysheet-wa-calculate-active:hover{color:#0188fb}.luckysheet-grid-container{width:100%;position:absolute;top:90px;bottom:0}.luckysheet-stat-area{position:absolute;height:23px;bottom:0;background:#ff00dc;width:100%}.luckysheet-sta-c{height:22px;background-color:#fff;border-top:1px solid #e1e1e1;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheet-stat-area:hover .luckysheet-sta-c{-moz-user-select:-moz-all;-khtml-user-select:initial;-webkit-user-select:initial;-ms-user-select:initial;user-select:initial}.luckysheet-sta-c .luckysheet-sta-content{height:22px;line-height:22px;text-align:right;white-space:nowrap;overflow:hidden}.luckysheet-sta-c .luckysheet-sta-content span{margin-right:10px}.luckysheet-grid-window{position:absolute;top:0;bottom:23px;left:0;right:0;overflow:hidden;background:#0ff}.luckysheet-sheet-area{width:100%;box-sizing:border-box;position:absolute;right:0;bottom:0;left:0;background-color:#fafafc;color:#444;height:31px;padding:0 0 0 44px;margin:0;-webkit-touch-callout:none;cursor:default;transition:.3s ease all;display:flex;align-items:center;justify-content:space-between}#luckysheet-sheet-content{width:0;flex:3;display:flex;align-items:center}#luckysheet-bottom-pager{width:0;background-color:#fafafc;z-index:1;flex:2;text-align:right;white-space:nowrap}.luckysheet-sheet-area .luckysheet-sheets-item,.luckysheet-sheet-area>div{display:inline-block}div.luckysheet-sheets-scroll{display:none}div.luckysheet-sheets-add:hover,div.luckysheet-sheets-m:hover{color:#2a2a2a}.docs-sheet-fade{position:absolute;display:block;top:0;width:6px;height:100%;z-index:1}.docs-sheet-fade div{background-color:#d7d7d7;width:2px;float:right;position:relative;height:100%}.docs-sheet-fade-left{left:0}.docs-sheet-fade-right{right:0}.docs-sheet-fade1{opacity:.82}.docs-sheet-fade2{opacity:.62}.docs-sheet-fade3{opacity:.4}.luckysheet-sheet-area div.luckysheet-sheet-container{padding:0 0;margin-left:0;position:relative;max-width:70%;vertical-align:bottom;display:inline-block}.luckysheet-sheet-area div.luckysheet-sheet-container div.luckysheet-sheet-container-c{padding:0 0;margin-left:0;overflow:hidden;white-space:nowrap;position:relative;max-width:100%;vertical-align:bottom;display:inline-block}.luckysheet-sheet-container-menu-hide .luckysheet-sheets-item{padding-right:5px!important}.luckysheet-sheet-container-menu-hide .luckysheet-sheets-item-menu{display:none!important}.luckysheet-sheet-area div.luckysheet-sheets-item{padding:2px 6px;height:29px;line-height:29px;background-color:#fafafc;color:#676464;min-width:30px;top:0;position:relative;margin-right:-1px;cursor:pointer;transition:all .1s;font-size:13px;padding:2px 19px 0 5px;box-sizing:border-box;border-left:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;border-right:1px solid #e0e0e0}.luckysheet-sheet-area div.luckysheet-sheets-item:last-child{margin-right:1px}.luckysheet-sheet-area div.luckysheet-sheets-item:hover{background-color:#efefef;color:#490500}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-menu{margin-left:2px;display:inline-block;top:-2px;position:relative;color:#a1a1a1;position:absolute;height:100%;width:15px;right:0;text-align:center}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-menu:hover{color:#2a2a2a;cursor:pointer}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-name{padding:0 3px}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-name[contenteditable=true]{border:1px solid #d9d9d9;display:inline-block;height:18px;line-height:18px;min-width:8px;margin:-4px -1px;-moz-user-modify:read-write-plaintext-only;-webkit-user-modify:read-write-plaintext-only;-moz-user-select:text!important;-ms-user-select:text!important;-webkit-user-select:text!important}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-name[contenteditable=true]:focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);box-shadow:inset 0 1px 2px rgba(0,0,0,.3);border:1px solid #4d90fe;outline:0}.luckysheet-sheet-area div.luckysheet-sheets-item-active{height:29px;line-height:29px;background-color:#efefef;border-top-color:#fff;color:#222;cursor:default}.luckysheet-sheet-area div.luckysheet-sheets-item-active:hover{background-color:#ececec;color:#222}.luckysheet-grid-window-1{position:absolute;top:0;right:0;bottom:27px;left:0;min-width:200px;background-color:#fff!important;overflow:hidden;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheetTableContent{position:absolute;z-index:2;left:0;top:0;width:100%;height:100%;pointer-events:none;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheet-grid-window-2{height:100%;width:100%;outline:0;border-collapse:collapse;display:table}.luckysheet-paneswrapper{overflow:hidden;height:1px}.luckysheet-left-top{width:44.5px;height:18.5px;border:solid 0 #dfdfdf;position:relative;padding-top:0;border-width:0 1px 1px 0;margin:-1px 0 0 -1px;padding-left:0;cursor:pointer}.luckysheet-cols-h-c{color:#5e5e5e;overflow:hidden;padding:0;cursor:default;height:19px;outline-style:none;position:relative;-webkit-user-select:none;background:#f3f3f2}.luckysheet-rows-h{position:relative;outline-style:none;color:#5e5e5e;overflow:hidden;padding:0;margin-top:-2px;padding-top:2px;cursor:default;width:38px;background:#f3f3f2}.luckysheet-cols-menu-btn{color:#5e5e5e;cursor:pointer;position:absolute;z-index:12;border:1px solid #5e5e5e;border-radius:1px;top:3px;margin-left:0;display:none;padding:0 2px;font-size:12px;height:12px;opacity:.5}.luckysheet-cols-menu-btn:hover{opacity:1}.luckysheet-cols-h-hover{color:#5e5e5e;cursor:default;position:absolute;z-index:11;border:0 none;bottom:0;height:100%;margin-left:0;display:none;background-color:rgba(194,194,194,.4)}.luckysheet-cols-h-selected{color:#5e5e5e;cursor:default;position:absolute;z-index:10;border-bottom:1px solid #0188fb;bottom:0;height:100%;margin-left:0;display:none;transition:all .1s;background-color:rgba(76,76,76,.1)}.luckysheet-cols-h-cells{margin:0;padding:0;border:none 0;position:relative;height:inherit}.luckysheet-cols-h-cells-c{color:#5e5e5e;cursor:default;width:5000000px;height:inherit}.luckysheet-cols-h-cells-clip{color:#5e5e5e;cursor:default;margin:0;padding:0;border:none 0;position:relative;float:left;direction:ltr;height:inherit;width:2561px;color:#5e5e5e;border-bottom:solid 1px #bbb;position:relative;top:-1px}.luckysheet-cols-h-cell-nosel{position:absolute;cursor:pointer;border:0 solid;border-color:#dfdfdf;display:inline-block;min-height:19px;touch-action:manipulation;border-right-width:1px;height:inherit}.luckysheet-cols-h-cell-sel{direction:ltr;height:inherit;position:absolute;cursor:pointer;border:0 solid;border-color:#bfbfbf;background-color:#e1e1e1;display:inline-block;min-height:19px;color:#0188fb;font-weight:700;touch-action:manipulation;border-right-width:1px}.luckysheet-col-flow-h{float:left;direction:ltr;position:relative;margin:0;padding:0;border:none 0;height:inherit;overflow:hidden}.luckysheet-col-flow-h-sheet{width:inherit;height:inherit;position:relative;float:left;direction:ltr}body:not(.ewa-ipad) .luckysheet-cols-h-cell-nosel:hover,body:not(.ewa-ipad) .luckysheet-cols-h-cell-sel:hover,body:not(.ewa-ipad) .luckysheet-rows-h-cell-nosel:hover,body:not(.ewa-ipad) .luckysheet-rows-h-cell-sel:hover{background-color:#fcc3c3}.luckysheet-cols-h-cell-txt{cursor:pointer;height:inherit;position:relative;text-align:center;overflow:hidden;touch-action:manipulation;font-size:14px;padding-top:2px}.luckysheet-rows-h{position:relative;outline-style:none;color:#5e5e5e;overflow:hidden;padding:0;margin-top:-2px;padding-top:2px;cursor:default;width:45px}.luckysheet-rows-h-hover{position:absolute;z-index:11;border:0 none;right:0;width:100%;margin-top:2px;display:none;background-color:rgba(194,194,194,.4)}.luckysheet-rows-h-selected{position:absolute;z-index:10;border-right:1px solid #0188fb;right:0;width:100%;margin-top:2px;display:none;transition:all .1s;background-color:rgba(76,76,76,.1)}.luckysheet-rows-h-cells{margin:0;padding:0;border:none 0;position:relative;width:100%}.luckysheet-rows-h-cells-c{margin:0;padding:0;border:none 0;position:relative;float:left;direction:ltr;width:100%}.luckysheet-rows-h-cells-clip{cursor:default;color:#5e5e5e;direction:ltr;border-right:solid 1px #bbb;width:inherit;height:inherit;position:relative;left:-1px;height:inherit}.luckysheet-rows-h-cell-nosel{direction:ltr;width:100%;position:absolute;cursor:pointer;border:0 solid;border-color:#dfdfdf;border-bottom-width:1px;touch-action:manipulation}.luckysheet-rows-h-cell-sel{direction:ltr;width:100%;position:absolute;cursor:pointer;border:0 solid;border-color:#bfbfbf;background-color:#e1e1e1;border-bottom-width:1px;color:#0188fb;font-weight:700;touch-action:manipulation}.luckysheet-rows-h-cell-txt{width:100%;position:absolute;bottom:0;text-align:center;padding-bottom:1px;max-height:100%;overflow:hidden;font-size:14px}.luckysheet-cell-loading{width:100%;height:100%;background-color:rgba(255,255,255,.3);position:absolute;overflow:hidden;outline-style:none;cursor:not-allowed;font-size:28px;z-index:2;display:none}.luckysheet-cell-loading-inner{position:relative;top:40%;width:100%;margin:0 auto;text-align:center}.luckysheet-cell-loading-inner span{margin-left:10px}.luckysheet-cell-main{background-color:#fff;width:15px;height:15px;background-color:#f3f3f2;border-collapse:collapse;position:relative;overflow:hidden;outline-style:none;cursor:default}.luckysheet-menu,.luckysheet-scrollbars{scrollbar-base-color:#fff;scrollbar-track-color:#e7e7e7;scrollbar-darkshadow-color:#fff;scrollbar-3dlight-color:#fff;scrollbar-arrow-color:#757778;scrollbar-shadow-color:#bec1c4;scrollbar-highlight-color:#bec1c4;-ms-scroll-chaining:none;overflow:auto}.luckysheet-scrollbar-ltr{position:absolute;overflow:hidden;z-index:1003}.luckysheet-scrollbar-ltr div{height:1px;width:1px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button{height:0;width:0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:start{display:none}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:end{display:block}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button{border:1px solid #d9d9d9}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal{border-width:1px 0 0 0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical{border-width:0 0 0 1px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical{border-width:0 1px 0 0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:increment{background:no-repeat url(waffle_sprite.png) -663px -13px;width:15px;padding-left:1px;background-clip:border-box;border:1px solid #d9d9d9;border-width:1px 0 0 0;box-shadow:none;background-color:#f8f8f8;border-bottom:1px solid #d9d9d9}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:increment:hover{background:no-repeat url(waffle_sprite.png) -395px -62px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:increment:active{background:no-repeat url(waffle_sprite.png) -679px -13px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:decrement{border-left:1px solid #d9d9d9;border-right:1px solid #d9d9d9;background:no-repeat url(waffle_sprite.png) -283px -62px;width:17px;border-bottom:1px solid #d9d9d9}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:hover{background:no-repeat url(waffle_sprite.png) -145px -70px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:active{background:no-repeat url(waffle_sprite.png) -552px 0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:increment{padding-top:1px;background:no-repeat url(waffle_sprite.png) -531px -24px;border-left:1px solid #d9d9d9;height:15px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:increment:hover{background:no-repeat url(waffle_sprite.png) -570px -42px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:increment:active{background:no-repeat url(waffle_sprite.png) -83px -46px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:decrement{border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-left:1px solid #d9d9d9;background:no-repeat url(waffle_sprite.png) -631px -27px;height:17px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:decrement:hover{background:no-repeat url(waffle_sprite.png) -180px -58px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:decrement:active{background:no-repeat url(waffle_sprite.png) -776px -28px}.luckysheet-scrollbar-x{bottom:0;left:44px;overflow-x:scroll}.luckysheet-scrollbar-y{right:0;top:0;overflow-y:scroll}.luckysheet-cell-flow{margin:0;padding:0;border:none 0;position:relative;touch-action:manipulation;overflow:hidden}.luckysheet-cell-flow-clip{border-collapse:collapse;cursor:default;width:5000000px;touch-action:manipulation;overflow:hidden}.luckysheet-cell-flow-col{margin:0;padding:0;border:none 0;position:relative;touch-action:manipulation;overflow:hidden;float:left;direction:ltr}.luckysheet-cell-sheettable{position:relative;text-align:left;font-size:11pt;color:#000;text-decoration:none}.luckysheet-bottom-controll-row{position:absolute;height:30px;bottom:38px;left:0;z-index:1000}#luckysheet-bottom-add-row{padding:5px 20px;margin-right:5px;margin-top:-2px}#luckysheet-bottom-add-row-input{width:40px;min-width:40px}#luckysheet-bottom-return-top{padding:5px 6px;margin-left:10px;margin-top:-2px}.luckysheet-cell-flow-column{position:absolute;height:inherit;width:inherit;top:0;left:0;z-index:1;touch-action:manipulation}.luckysheet-cell-flow-column-line{position:absolute;border-right:1px solid #d4d4d4;height:inherit}.luckysheet-cell-flow-row{text-align:left;position:absolute;height:inherit;width:inherit;top:0;left:0;z-index:1;touch-action:manipulation}.luckysheet-cell-flow-row-line{position:absolute;border-bottom:1px solid #d4d4d4;width:inherit}.luckysheet-cell-selected-focus{position:absolute;pointer-events:none;z-index:14;margin:0;background:rgba(0,80,208,.15);display:none}.luckysheet-selection-copy{position:absolute;pointer-events:none;z-index:18;border:none;margin:0;display:none}.luckysheet-selection-copy .luckysheet-copy{position:absolute;z-index:18;background-color:transparent}.luckysheet-selection-copy-top{left:0;right:0;height:2px;top:0;background-position:bottom;background-image:url(EwaAntH.gif)}.luckysheet-selection-copy-right{top:0;bottom:0;width:2px;right:0;background-image:url(EwaAntV.gif)}.luckysheet-selection-copy-bottom{left:0;right:0;height:2px;bottom:0;background-image:url(EwaAntH.gif)}.luckysheet-selection-copy-left{top:0;bottom:0;width:2px;left:0;background-position:right;background-image:url(EwaAntV.gif)}.luckysheet-selection-copy-hc{position:absolute;top:0;right:0;bottom:0;left:0;border:2px dashed #12a5ff;z-index:8}.luckysheet-selection-highlight{position:absolute;z-index:14;border:none;margin:0;display:none}.luckysheet-formula-functionrange-highlight .luckysheet-copy{background-image:none;background:#0188fb;position:absolute;z-index:18;cursor:move;opacity:.9}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-top{top:-2px;border-top:2px solid #fff;border-bottom:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-right{right:-2px;border-left:2px solid #fff;border-right:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-bottom{bottom:-2px;border-top:2px solid #fff;border-bottom:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-left{left:-2px;border-left:2px solid #fff;border-right:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-hc{border:2px solid #5e5e5e;opacity:.03;z-index:initial}.luckysheet-selection-highlight-topleft{left:-3px;top:-3px;cursor:se-resize}.luckysheet-selection-highlight-topright{right:-3px;top:-3px;cursor:ne-resize}.luckysheet-selection-highlight-bottomleft{left:-3px;bottom:-3px;cursor:ne-resize}.luckysheet-selection-highlight-bottomright{right:-3px;bottom:-3px;cursor:se-resize}.luckysheet-formula-functionrange-highlight .luckysheet-highlight{position:absolute;z-index:19;border:1px solid #fff;background:#0188fb;width:6px;height:6px}.luckysheet-cell-selected-extend{position:absolute;pointer-events:none;z-index:16;border:1px dashed #0188fb;margin:-1px 0 0 -1px;display:none}.luckysheet-cell-selected-move{position:absolute;pointer-events:none;z-index:16;border:2px solid #0188fb;margin:-1px 0 0 -1px;display:none}.luckysheet-cell-selected{position:absolute;pointer-events:none;z-index:15;border:1px solid #0188fb;margin:-1px 0 0 -1px;background:rgba(1,136,251,.15);display:none}.luckysheet-cs-inner-border{pointer-events:none;border:1px solid #fff;position:absolute;top:0;bottom:0;left:0;right:0}.luckysheet-cs-fillhandle{position:absolute;width:6px;height:6px;bottom:-5px;cursor:crosshair;background-color:#0188fb;border:solid 1px #fff;z-index:16;pointer-events:auto;right:-5px}.luckysheet-cs-draghandle{position:absolute;cursor:move;background-color:#fff;opacity:.01;z-index:15;pointer-events:auto;border:2px solid #fff}.luckysheet-cs-draghandle-top{top:-4px;left:-2px;right:-2px;height:2px}.luckysheet-cs-draghandle-bottom{right:0;left:-2px;bottom:-4px;height:2px}.luckysheet-cs-draghandle-left{top:0;left:-4px;bottom:0;width:2px}.luckysheet-cs-draghandle-right{top:0;right:-4px;bottom:0;width:2px}.luckysheet-cs-touchhandle{display:none;position:absolute;width:16px;height:16px;padding:5px;z-index:100;pointer-events:auto;touch-action:auto}.luckysheet-cs-touchhandle:before{content:'';display:block;width:16px;height:16px;border:.5px solid rgba(0,0,0,.15);background-color:#fff;box-sizing:border-box;border-radius:50%}.luckysheet-cs-touchhandle-lt{left:-13px;top:-13px}.luckysheet-cs-touchhandle-lb{left:-13px;bottom:-13px}.luckysheet-cs-touchhandle-rt{right:-13px;top:-13px}.luckysheet-cs-touchhandle-rb{right:-13px;bottom:-13px}.luckysheet-cs-touchhandle .luckysheet-cs-touchhandle-btn{position:absolute;width:10px;height:10px;left:8px;top:8px;background-color:#018ffb;background-position:center;box-sizing:border-box;border-radius:50%;z-index:11}#luckysheet-dynamicArray-hightShow{position:absolute;pointer-events:none;z-index:15;border:1px solid #00f;margin:-1px 0 0 -1px;display:none}.luckysheet-scrollbars::-webkit-scrollbar-track{background-color:#fff;border:1px solid #d9d9d9}.luckysheet-scrollbar-x::-webkit-scrollbar-track{border-left:1px solid #d9d9d9;border-right:none}.luckysheet-scrollbar-y::-webkit-scrollbar-track{border-top:none;border-bottom:none}.luckysheet-scrollbars::-webkit-scrollbar{width:12px;height:12px;background-color:#fff}.luckysheet-scrollbars::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);background-clip:padding-box;border:solid transparent;border-radius:12px;border-width:2px 1px 1px 2px;box-shadow:inset 1px 1px 0 rgba(0,0,0,.1),inset 0 -1px 0 rgba(0,0,0,.07)}.luckysheet-scrollbars::-webkit-scrollbar-thumb:hover{background-color:#969696;border:1px solid #a0a0a0;border-radius:12px}.luckysheet-grdusedrange{position:absolute;visibility:hidden;width:1px;height:1px}.luckysheet-grdblkflowpush{margin:0;padding:0;border:none 0;width:1px}.luckysheet-grdblkpush{margin:0;padding:0;border:none 0;height:1px;float:left;direction:ltr}.luckysheet-cell-flow-data{position:absolute;height:inherit;width:inherit;top:0;left:0;z-index:1}.luckysheet-cell-flow-data-row{position:absolute;width:inherit}.luckysheet-cell-flow-data-cell{position:absolute;height:inherit}.luckysheet-cell-flow-data-value{position:absolute!important;bottom:0;letter-spacing:-.02em;white-space:nowrap;padding-left:2px;overflow:hidden}.luckysheet canvas{position:absolute}.luckysheetcolumeHeader{margin-left:-1px}.luckysheetrowHeader{margin-top:1px}.luckysheetsheettable{margin-left:-1px;margin-top:-1px}.luckysheet-cols-menu{max-height:100%;overflow-y:auto;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-box-shadow:0 2px 4px rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);-webkit-transition:opacity 218ms;-moz-transition:opacity 218ms;-o-transition:opacity 218ms;transition:opacity 218ms;background:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);cursor:default;font-size:13px;margin:0;outline:0;padding:6px 0;position:absolute;z-index:1004;box-sizing:border-box;user-select:none;display:none}.luckysheet-cols-menu .luckysheet-cols-menuitem{position:relative;color:#333;cursor:pointer;list-style:none;margin:0;padding:1px 6em 1px 20px;white-space:nowrap;padding-left:8px;vertical-align:middle;padding-right:24px;user-select:none}.luckysheet-cols-menu .luckysheet-cols-menuitem-hover,.luckysheet-cols-menu .luckysheet-cols-menuitem:hover{background:#efefef}.luckysheet-cols-menu .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{position:relative;color:#333;cursor:pointer;list-style:none;margin:0;padding:6px 7em 6px 30px;white-space:nowrap;user-select:none}.luckysheet-rightgclick-menu .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{position:relative;color:#333;cursor:pointer;list-style:none;margin:0;padding:6px 15px 6px 20px;white-space:nowrap;user-select:none}#luckysheet-cols-menu .luckysheet-cols-menuitem,#luckysheet-pivotTable-config-option .luckysheet-cols-menuitem,.luckysheet-filter-menu .luckysheet-cols-menuitem{padding-right:10px;padding-left:12px}#luckysheet-pivotTable-config-option-sumtype .luckysheet-cols-menuitem{padding-right:15px;padding-left:12px;padding-top:1px;padding-bottom:1px}#luckysheet-cols-menu .luckysheet-cols-menuitem-content,.luckysheet-filter-menu .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{padding-right:10px;padding-left:12px}#luckysheet-sheet-list .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{padding-right:0;max-width:430px;min-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.luckysheet-filter-menu div.luckysheet-cols-menuitem{padding-top:0;padding-bottom:0}.luckysheet-filter-submenu div.luckysheet-cols-menuitem{padding-top:1px;padding-bottom:1px}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem{padding-top:2px;padding-bottom:0;cursor:default}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content{padding-top:2px;padding-bottom:0;cursor:default}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content input{height:24px;width:191px;padding-right:25px;padding-left:3px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content input:focus,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content input:focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);box-shadow:inset 0 1px 2px rgba(0,0,0,.3);border:1px solid #4d90fe;outline:0}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content .luckysheet-filter-byvalue-input-icon,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content .luckysheet-pivotTableFilter-byvalue-input-icon{position:absolute;right:17px;top:7px}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem:hover,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem:hover{background:#fff}.luckysheet-filter-menu .luckysheet-cols-menuitem:last-child:hover{background:#fff}.luckysheet-filter-menu .luckysheet-cols-menuitem:last-child,.luckysheet-filter-menu .luckysheet-cols-menuitem:last-child .luckysheet-cols-menuitem-content{cursor:default}#luckysheet-filter-byvalue-select,#luckysheet-pivotTableFilter-byvalue-select{min-height:100px;width:200px}.luckysheet-filter-menu .luckysheet-mousedown-filter-byvalue-btn span,.luckysheet-filter-menu .luckysheet-mousedown-pivotTableFilter-byvalue-btn span{color:#00f;cursor:pointer;text-decoration:underline}.luckysheet-filter-menu .luckysheet-mousedown-filter-byvalue-btn div,.luckysheet-filter-menu .luckysheet-mousedown-pivotTableFilter-byvalue-btn div{position:absolute;right:14px;top:0;font-size:18px}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input{padding-left:8px;padding-right:8px;margin-top:3px;display:none}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input input{height:24px;width:100%;padding-right:3px;padding-left:3px;margin-left:-3px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input2 input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input2 input{height:24px;width:92px;padding-right:3px;padding-left:3px;margin-left:-3px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input2 span,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input2 span{margin-left:2px;margin-right:5px}.luckysheet-menuseparator{border-top:1px solid #ebebeb;margin-top:6px;margin-bottom:6px}.luckysheet-submenu-arrow{-webkit-transition:all 218ms;-moz-transition:all 218ms;-o-transition:all 218ms;transition:all 218ms;font-size:12px;left:auto;right:-15px;padding-top:1px;padding-right:0;position:absolute;text-align:right;opacity:.5;color:#000;user-select:none;font-family:Arial;line-height:100%}#luckysheet-pivotTable-config-option-sumtype .luckysheet-submenu-arrow{right:-5px;font-size:16px;padding-top:0;color:#00f}#luckysheet-filter-byvalue-select table,#luckysheet-pivotTableFilter-byvalue-select table{table-layout:fixed}#luckysheet-filter-byvalue-select tr td,#luckysheet-pivotTableFilter-byvalue-select tr td{padding:2px 3px}#luckysheet-filter-byvalue-select tr:hover td,#luckysheet-pivotTableFilter-byvalue-select tr:hover td{background:#e1e1e1}.luckysheet-cols-menu .cf:after,.luckysheet-cols-menu .cf:before{content:"";display:table}.luckysheet-cols-menu .cf:after{clear:both}#luckysheet-filter-byvalue-select .yearBox .monthList,#luckysheet-pivotTableFilter-byvalue-select .yearBox .monthList{padding-left:20px}#luckysheet-filter-byvalue-select .yearBox .dayList,#luckysheet-pivotTableFilter-byvalue-select .yearBox .dayList{padding-left:20px}#luckysheet-filter-byvalue-select .yearBox .fa-caret-right,#luckysheet-pivotTableFilter-byvalue-select .yearBox .fa-caret-right{padding:0 2px;float:left;margin-top:3px;cursor:pointer}#luckysheet-filter-byvalue-select .count,#luckysheet-pivotTableFilter-byvalue-select .count{color:gray;margin-left:5px}#luckysheet-filter-byvalue-select input[type=checkbox],#luckysheet-pivotTableFilter-byvalue-select input[type=checkbox]{width:auto;height:auto;float:left}#luckysheet-filter-orderby-color-submenu{font-size:12px}#luckysheet-filter-orderby-color-submenu .title{padding:10px;font-weight:600;color:#333;background-color:#f4f4f4;text-align:center}#luckysheet-filter-orderby-color-submenu .item{padding:5px 40px 5px 20px;cursor:pointer;position:relative}#luckysheet-filter-orderby-color-submenu .item:hover{background-color:#d3d3d3}#luckysheet-filter-orderby-color-submenu .item label{display:block;width:70px;height:20px;border:1px solid #d1d1d1}#luckysheet-filter-orderby-color-submenu .item input[type=checkbox]{position:absolute;right:10px;top:6px}#luckysheet-copy-content{position:fixed;height:0;width:0;left:-100px;padding-left:999999px}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:4px 8px;font-size:14px;line-height:1.42857143;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;opacity:.65;-webkit-box-shadow:none;box-shadow:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#2d7ff9;border-color:transparent}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:transparent}.btn-primary:hover{color:#fff;background-color:#5391ff;border-color:transparent}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#5391ff}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:transparent}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:transparent}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-primary,.label-default,.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{background:#0188fb;border-color:transparent}.btn-primary:focus,.btn-primary:hover{background:#5391ff;border-color:transparent}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.luckysheet-change-size-line,.luckysheet-cols-change-size,.luckysheet-rows-change-size{position:absolute;z-index:12}.luckysheet-cols-change-size{width:5px;height:100%;background:#0188fb;cursor:ew-resize;opacity:0}.luckysheet-rows-change-size{width:100%;height:5px;background:#0188fb;cursor:ns-resize;opacity:0}.luckysheet-change-size-line{border-color:#0188fb;border-style:solid;z-index:15;display:none}.luckysheet-count-show{position:absolute;z-index:15;background:rgba(76,76,76,.8);color:#fff;padding:2px 3px;border-radius:3px;transition:all .3s;display:none;white-space:nowrap}.luckysheet-row-count-show{text-align:center}.luckysheet-row-count-show div{writing-mode:vertical-rl;writing-mode:vertical-rl;-ms-writing-mode:initial}.luckysheet-row-count-show div:last-child{writing-mode:initial}#luckysheet-sheet-list{max-height:60%;overflow:auto}#luckysheet-sheet-list .luckysheet-cols-menuitem{padding-left:0;padding-right:10px}#luckysheet-sheet-list .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{padding-left:5px}#luckysheet-sheet-list .icon{width:15px;margin-left:4px;display:inline-block}.luckysheet-input-box{position:absolute;font:normal normal 400 13px arial,sans,sans-serif;text-align:left;top:-10000px;max-height:9900px;max-width:9900px;border:2px #5292f7 solid;padding:0 2px;margin:0;z-index:15;resize:none;overflow:auto;overflow:initial;white-space:pre-wrap;outline:0;-webkit-box-shadow:0 2px 5px rgba(0,0,0,.4);-moz-box-shadow:0 2px 5px rgba(0,0,0,.4);box-shadow:0 2px 5px rgba(0,0,0,.4);word-wrap:break-word}.luckysheet-cell-input{width:100%;height:100%;margin:0;outline:0;cursor:text;-webkit-user-modify:read-write-plaintext-only;white-space:pre-wrap;-webkit-transform:translateZ(0)}#luckysheet-rich-text-editor{-webkit-user-modify:read-write}.luckysheet-input-box-index{display:none;position:absolute;height:14px;line-height:16px;font-size:12px;padding:1px 6px;background-color:#5292f7;border-radius:2px;box-shadow:0 1px 2px rgba(0,0,0,.5);color:#fff}.luckysheet-modal-dialog{-webkit-box-shadow:0 4px 16px rgba(0,0,0,.2);-moz-box-shadow:0 4px 16px rgba(0,0,0,.2);box-shadow:0 4px 16px rgba(0,0,0,.2);background:#fff;background-clip:padding-box;border:1px solid #acacac;border:1px solid rgba(0,0,0,.333);outline:0;position:absolute;color:#000;padding:30px 42px;z-index:100002}.luckysheet-modal-dialog-mask{position:absolute;height:100%;width:100%;background:#fff;opacity:.6;display:none;left:0;top:0;z-index:1010}.luckysheet-modal-dialog-title{background-color:#fff;color:#000;cursor:default;font-size:16px;font-weight:400;line-height:24px;margin:0 0 16px}.luckysheet-modal-dialog-title-close{height:11px;opacity:.7;padding:17px;position:absolute;right:0;top:0;width:11px;color:#d4d4d4;outline:0}.luckysheet-modal-dialog-chart{padding:20px 10px;webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.luckysheet-modal-dialog-resize{position:absolute;border:2px solid #0188fb;margin:0;padding:0;top:-2px;left:-2px;bottom:-2px;right:-2px;pointer-events:none}.luckysheet-modal-dialog-resize-item{position:absolute;height:6px;width:6px;background:#fff;border:2px solid #0188fb;pointer-events:all;border-radius:6px}.luckysheet-modal-dialog-resize-item-lt{left:-6px;top:-6px;cursor:se-resize}.luckysheet-modal-dialog-resize-item-mt{left:50%;top:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-modal-dialog-resize-item-rt{right:-6px;top:-6px;cursor:ne-resize}.luckysheet-modal-dialog-resize-item-lm{top:50%;left:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-modal-dialog-resize-item-rm{top:50%;right:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-modal-dialog-resize-item-lb{left:-6px;bottom:-6px;cursor:ne-resize}.luckysheet-modal-dialog-resize-item-mb{left:50%;bottom:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-modal-dialog-resize-item-rb{right:-6px;bottom:-6px;cursor:se-resize}.luckysheet-modal-dialog-controll{position:absolute;margin:0;padding:0;right:-35px;font-size:14px;top:0}.luckysheet-modal-controll-btn{height:13px;padding:8px;width:13px;color:#d4d4d4;outline:0;border:1px solid #b6b6b6;display:block;background:#fff;margin-bottom:3px;cursor:pointer;transition:all .2s;-moz-transition:all .2s;-webkit-transition:all .2s;-o-transition:all .2s}.luckysheet-modal-controll-btn:hover{border:1px solid #a1a1a1;color:#0188fb}.luckysheet-modal-controll-btn:active{border:1px solid #bbb;background:#efefef;color:#0188fb}.luckysheet-modal-controll-del{font-size:16px}.luckysheet-modal-controll-max-close{font-size:22px;width:42px;height:42px;line-height:42px;background:#383838;opacity:.7;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;color:#fff;position:absolute;right:0;top:0;z-index:100000;text-align:center}.luckysheet-modal-controll-max-close:hover{background:#0188fb;cursor:pointer}.luckysheet-sort-item-close{margin-right:3px;font-size:14px;color:#bbb;cursor:pointer}.luckysheet-sort-item-close:hover{color:#494949}.luckysheet-modal-dialog-title-close:hover{color:#5e5e5e;cursor:pointer}.luckysheet-modal-dialog-content{background-color:#fff;line-height:1.4em;word-wrap:break-word}.luckysheet-modal-dialog-buttons{margin-top:10px}.luckysheet-modal-dialog-buttons button{margin-right:10px}.luckysheet-modal-dialog-title-text span{font-family:Arial}.luckysheet-sort-modal{font-size:12px}.luckysheet-sort-modal label input,.luckysheet-sort-modal label span{vertical-align:middle}.luckysheet-sort-modal table,.luckysheet-sort-modal>div{margin-bottom:10px}.luckysheet-sort-modal table tr{margin-bottom:10px}.luckysheet-sort-modal table tr td{padding:5px;white-space:nowrap;border-top:1px solid #ffc6c6}.luckysheet-sort-modal table tr td>div:first-child{margin-bottom:8px}.luckysheet-sort-modal table tr td select{max-width:180px;min-width:50px}.luckysheet-sort-modal table tr:first-child td{border-top:none}.luckysheet-filter-options{color:#897bff;cursor:pointer;position:absolute;z-index:20;border:1px solid #897bff;border-radius:3px;top:3px;margin-left:0;display:none;padding:0 4px;font-size:12px;height:15px;background:#fff}.luckysheet-filter-options:hover{color:#fff;border:1px solid #fff;background:#897bff}.luckysheet-filter-options-active{color:#fff;border:1px solid #897bff;background:#897bff}.luckysheet-flat-menu-button{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;background-color:#f5f5f5;background-image:-webkit-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:-moz-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:-ms-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:-o-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:linear-gradient(to bottom,#f5f5f5,#f1f1f1);border:1px solid #dcdcdc;color:#333;cursor:default;font-size:11px;font-weight:700;line-height:27px;list-style:none;margin:0 2px;min-width:46px;outline:0;padding:0 18px 0 6px;text-align:left;text-decoration:none;position:relative;padding-left:15px}.luckysheet-flat-menu-button:hover{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;background-color:#f5f5f5;background-image:-webkit-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:-moz-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:-ms-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:-o-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:linear-gradient(to bottom,#f1f1f1,#f5f5f5);border:1px solid #d0d0d0;color:#000}.luckysheet-flat-menu-button div{display:inline-block;vertical-align:middle;position:absolute;right:15px}.luckysheet-data-visualization{width:60%;min-width:860px}.luckysheet-data-pivotTable-selection,.luckysheet-data-visualization-selection{width:30%;min-width:200px;display:none}.luckysheet-data-visualization-chart{width:50%;height:50%}.luckysheet-data-visualization-chart .luckysheet-modal-dialog-content{width:100%;height:100%;overflow:hidden}.luckysheet-datavisual-modal{font-size:12px;height:100%;width:100%}.luckysheet-datavisual-left{display:inline-block;width:100%;height:100%;position:relative;overflow:hidden}.luckysheet-datavisual-tabs{border-bottom:1px solid #dedede;width:80%;height:26px;padding-left:20px}.luckysheet-datavisual-tabs .luckysheet-datavisual-tab{padding:0 5px;text-align:center;display:inline-block;cursor:pointer;border:1px solid #fff;border-bottom:none;height:24px;line-height:24px;background:#fff;color:#777}.luckysheet-datavisual-tabs .luckysheet-datavisual-tab:hover{color:#000}.luckysheet-datavisual-tabs .luckysheet-datavisual-tab-active{border:1px solid #dedede;border-bottom:none;cursor:default;height:26px;color:#000}.luckysheet-datavisual-tab-content{position:absolute;top:28px;bottom:0;width:100%;display:none}.luckysheet-datavisual-quick-menu{width:90px;overflow:auto;margin-top:5px}.luckysheet-datavisual-quick-menu::-webkit-scrollbar{display:none}.luckysheet-datavisual-quick-menu>div{text-align:left;padding:4px 4px;border-right:3px solid #fff;color:#777;cursor:pointer;line-height:1.4em;word-wrap:break-word}.luckysheet-datavisual-quick-menu>div:hover{color:#000}.luckysheet-datavisual-quick-menu>div i{width:15px}.luckysheet-datavisual-quick-menu>div:hover i{color:#ff7e7e}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active{border-right:3px solid #ff7e7e;color:#000;font-weight:700}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active:hover i{color:#000}.luckysheet-datavisual-quick-range{padding:5px 0}.luckysheet-datavisual-range-container{background:#fff;border:1px solid #d9d9d9;border-top:1px solid silver;min-width:20px;width:100%;max-width:200px;display:inline-block}.luckysheet-datavisual-range-container-focus{border:1px solid #4d90fe;box-shadow:inset 0 1px 2px rgba(0,0,0,.3);outline:0}.luckysheet-datavisual-range-input,.luckysheet-datavisual-range-input:focus{background:0 0!important;border:none!important;box-sizing:border-box;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;height:25px;margin:0;outline:0!important;padding:1px 8px!important;width:100%}.luckysheet-datavisual-range-button-container{overflow:hidden;padding:0 0 0 8px;text-align:right;width:21px}.luckysheet-datavisual-range-button-container div{padding:2px 10px 0 10px;font-size:18px;cursor:pointer;color:#6598f3}.luckysheet-datavisual-range-button-container div:hover{color:#ff7e7e}.luckysheet-datavisual-quick-m{margin-top:5px}.luckysheet-datavisual-quick-list{left:90px;right:0;bottom:0;top:110px;position:absolute;overflow:auto;border-top:1px solid #e5e5e5;padding:5px 3px 35px 3px}.luckysheet-datavisual-quick-list-title{padding:4px 6px;background:#e5e5e5;margin-top:10px}.luckysheet-datavisual-quick-list-ul{overflow:hidden}.luckysheet-datavisual-quick-list-item{display:inline-block;margin:5px 8px;border:1px solid #dadada;width:100px;height:80px}.luckysheet-datavisual-quick-list-item:hover{border:1px solid #ff7e7e;box-shadow:0 0 20px #ff7e7e}.luckysheet-datavisual-quick-list-item img{display:inline-block;width:100px;height:80px}.luckysheet-datavisual-quick-list-item-active{border:1px solid #6598f3;box-shadow:0 0 20px #6598f3}.jfk-tooltip{z-index:300000}.jfk-tooltip-hide{-webkit-transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;-moz-transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;-o-transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;opacity:0;left:20px!important;top:20px!important;visibility:hidden!important}.jfk-tooltip{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;-webkit-transition:visibility 0,opacity .13s ease-in;-moz-transition:visibility 0,opacity .13s ease-in;-o-transition:visibility 0,opacity .13s ease-in;transition:visibility 0,opacity .13s ease-in;background-color:#2a2a2a;border:1px solid #fff;color:#fff;cursor:default;display:block;font-size:11px;font-weight:700;margin-left:-1px;opacity:1;padding:7px 9px;position:absolute;visibility:visible;white-space:pre-wrap;word-break:break-all;word-break:break-word}.jfk-tooltip-arrowup{top:-6px}.jfk-tooltip-arrow{pointer-events:none;position:absolute}.jfk-tooltip-arrow .jfk-tooltip-arrowimplafter{border:5px solid}.jfk-tooltip-arrow .jfk-tooltip-arrowimplbefore{border:6px solid}.jfk-tooltip-arrow .jfk-tooltip-arrowimplafter,.jfk-tooltip-arrow .jfk-tooltip-arrowimplbefore{content:'';display:block;height:0;position:absolute;width:0}.jfk-tooltip-arrowup .jfk-tooltip-arrowimplafter{border-top-width:0;top:1px}.jfk-tooltip-arrowdown .jfk-tooltip-arrowimplafter,.jfk-tooltip-arrowup .jfk-tooltip-arrowimplafter{border-color:#2a2a2a transparent;left:-5px}.jfk-tooltip-arrowup .jfk-tooltip-arrowimplbefore{border-top-width:0}.jfk-tooltip-arrowdown .jfk-tooltip-arrowimplbefore,.jfk-tooltip-arrowup .jfk-tooltip-arrowimplbefore{border-color:#fff transparent;left:-6px}.luckysheet-datavisual-config{position:relative;width:100%;height:97%;overflow:auto;top:0}.luckysheet-datavisual-config input{outline:0}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-title{position:relative;width:97%;height:33px;background:#f5f5f5;border:1px solid #e5e5e5;margin-top:30px;line-height:30px;font-weight:700;color:#d14836;cursor:pointer}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-title:hover{background:#efefef;border:1px solid #e0e0e0}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-content{position:relative;width:97%;border:1px solid #e5e5e5;border-top:1px solid #fff;display:none;color:#505050;padding-bottom:20px}.luckysheet-datavisual-config-input,.luckysheet-datavisual-config-input-no{background:#fff;border:1px solid #d9d9d9;border-top:1px solid silver;min-width:50px;width:90%;display:inline-block;height:24px;line-height:24px;padding:3px}.luckysheet-datavisual-config-input-no:focus,.luckysheet-datavisual-config-input:focus{border:1px solid #4d90fe;box-shadow:inset 0 1px 2px rgba(0,0,0,.3);outline:0}.luckysheet-datavisual-content-row{margin-left:15px;margin-bottom:5px;margin-top:15px;height:30px;line-height:30px}.luckysheet-datavisual-content-column{display:inline-block;position:relative}.luckysheet-datavisual-content-column-title{text-align:left;font-size:14px}.luckysheet-datavisual-content-column-right{text-align:right}.luckysheet-datavisual-content-rowsplit{height:5px;border-top:1px solid #e5e5e5;width:100%;margin-top:25px}.luckysheet-datavisual-content-rowsplit-sub{height:2px;border-top:1px dashed #e5e5e5;width:90%;margin:0 auto;margin-top:18px;text-align:center}.sp-replacer{padding:2px;border:solid 1px #e5e5e5;background:#f5f5f5}.ui-visual-focus{box-shadow:none}.luckysheet-datavisual-config-slider,.luckysheet-datavisual-config-slider-range{width:70%;display:inline-block}.luckysheet-datavisual-config-slider-range .luckysheet-slider-handle{width:45px;height:26px;top:50%;margin-top:-13px;text-align:center;line-height:26px}.luckysheet-datavisual-content-row-subtitle{display:none}.ui-selectmenu-button.ui-button{text-align:left;white-space:nowrap;width:48%}.luckysheet-datavisual-content-column-italic{font-style:italic;font-weight:700;font-family:'Times New Roman',Times,serif}.luckysheetChartAxisShow{display:none}.luckysheet-datavisual-chart-axistitle-show{display:none}.luckysheetChartseriesShow{display:none}#luckysheetswichxy-button,#piecutselect-button{width:70%}.ui-selectmenu-menu .ui-menu.customicons .ui-menu-item-wrapper{padding:.5em 0 .5em 3em}.ui-selectmenu-menu .ui-menu.customicons .ui-menu-item .ui-icon{height:26px;width:26px;top:.1em;background-image:none}#luckysheetscatterselectshow-menu .ui-state-active,#luckysheetswichseries-menu .ui-state-active,#pie0cutselect-menu .ui-state-active,#pie1cutselect-menu .ui-state-active,#pie2cutselect-menu .ui-state-active{border:1px solid #f5f5f5;background:#f5f5f5;color:#333}.ui-front{z-index:100003}.luckysheet-datavisual-skin-menu{top:5px;position:absolute;left:0;width:90%;height:30px}#luckysheet-chart-theme-content{height:21px;width:120px}.luckysheet-datavisual-skin-c{position:absolute;left:0;top:38px;bottom:0;width:100%;overflow:auto}.luckysheet-datavisual-skin-c .luckysheet-datavisual-skin-item{display:inline-block;width:46%;height:152px;margin-right:5px;border:4px solid #efefef;border-radius:4px;position:relative;cursor:pointer}.luckysheet-datavisual-skin-c .luckysheet-datavisual-skin-item-more{display:inline-block;width:94%;height:32px;position:relative;cursor:pointer;font-size:20px;line-height:32px;margin-bottom:20px;text-align:center}.luckysheet-datavisual-skin-item .luckysheet-datavisual-skin-canvas,.luckysheet-datavisual-skin-item .luckysheet-datavisual-skin-cover{position:absolute;width:100%;height:100%;bottom:0}.luckysheet-datavisual-skin-item .luckysheet-datavisual-skin-cover{background-color:rgba(0,0,0,.4);color:#fff;font-size:14px;height:30%;transition:opacity .15s ease;-moz-transition:opacity .15s ease;-webkit-transition:opacity .15s ease;-o-transition:opacity .15s ease}.luckysheet-datavisual-skin-item:hover .luckysheet-datavisual-skin-cover{opacity:1;z-index:2}.luckysheet-datavisual-skin-cover .luckysheet-datavisual-skin-cover-txt{position:absolute;width:80%;height:80%;top:10%;left:10%;text-align:center}.luckysheet-chart-point-config{position:relative;width:100%;height:100%;margin:0;font-size:12px}.luckysheet-chart-point-config-set{position:absolute;width:60%;height:100%;left:0;top:0}.luckysheet-chart-point-config-left{position:absolute;height:100%;width:50%;left:0;top:0}.luckysheet-chart-point-config-left-top{position:absolute;top:0;height:120px;width:100%}.luckysheet-chart-point-searchcondition{position:absolute;top:10px;bottom:10px;left:10px;right:10px}.luckysheet-chart-point-config-left-mid{position:absolute;top:120px;height:25px;width:100%;text-align:left;margin-left:20px;line-height:35px}.luckysheet-chart-point-config-left-mid span{color:#00f;cursor:pointer;text-decoration:underline;font-size:12px}.luckysheet-chart-point-config-left-bottom{position:absolute;top:0;bottom:0;margin-top:145px;width:100%}.luckysheet-chart-point-searchitem-c{position:absolute;width:100%;height:100%;overflow:hidden;overflow-y:auto;cursor:default}.luckysheet-chart-point-searchitem{display:inline-block;margin-left:5px;margin-top:5px;width:90px;border:2px solid #f5f5f5;background:#fff;text-align:center;padding:5px 0;user-select:none;cursor:default;position:relative}.luckysheet-chart-point-searchitem-selected{position:absolute;color:#616161;left:-6px;top:-10px;font-size:20px;display:none;font-weight:400}.luckysheet-chart-point-searchitem-active{box-shadow:0 0 4px #656565}.luckysheet-chart-point-searchitem-active .luckysheet-chart-point-searchitem-selected{display:block}.luckysheet-chart-point-searchitem-name{font-size:12px;cursor:default;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.luckysheet-chart-point-searchitem-dim{font-size:12px;opacity:.7;cursor:default;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#luckysheet-chart-point-selectedhelp{pointer-events:none;position:absolute;border:1px dotted #535353}.luckysheet-chart-point-config-right{position:absolute;height:100%;width:50%;top:0;right:0}.luckysheet-chart-point-itemconfig{position:absolute;top:10px;bottom:10px;left:10px;right:10px;overflow:auto}.luckysheet-chart-point-config-chart{position:absolute;width:40%;height:100%;right:0;top:0}.luckysheet-chart-point-config-chart-c{width:100%;height:80%;top:10%;position:relative}@media (max-width:776px){.luckysheet-chart-point-config-set{width:90%}.luckysheet-chart-point-config-chart{width:10%}}@media (min-width:768px){.luckysheet-chart-point-config-set{width:80%}.luckysheet-chart-point-config-chart{width:20%}}@media (min-width:1024px){.luckysheet-chart-point-config-set{width:70%}.luckysheet-chart-point-config-chart{width:30%}}@media (min-width:1280px){.luckysheet-chart-point-config-set{width:60%}.luckysheet-chart-point-config-chart{width:40%}}@media (min-width:1680px){.luckysheet-chart-point-config-set{width:50%}.luckysheet-chart-point-config-chart{width:50%}}.luckysheet-modal-dialog-slider{top:1px;bottom:1px;position:absolute;right:0;width:260px;border:1px solid #e5e5e5;z-index:1004;box-shadow:0 2px 4px rgba(0,0,0,.2);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheet-modal-dialog-slider .luckysheet-modal-dialog-slider-title{background:#333;color:#fff;height:39px;width:100%;position:absolute;top:0;left:0;line-height:39px;font-size:13px}.luckysheet-modal-dialog-slider .luckysheet-modal-dialog-slider-title>span:first-child{margin-left:5px;font-weight:700}.luckysheet-modal-dialog-slider .luckysheet-modal-dialog-slider-title>span:last-child{position:relative;float:right;margin-right:20px;cursor:pointer}.luckysheet-modal-dialog-slider-content{background:#efefef;margin-top:39px;width:100%;position:absolute;top:0;bottom:0;font-size:12px}.luckysheet-modal-dialog-slider-range{background:#e1e1de;color:#1b1b19;height:40px;font-size:13px;line-height:40px}.luckysheet-modal-dialog-slider-range>div:first-child{font-weight:700;overflow:hidden;text-overflow:ellipsis;float:left;max-width:170px;margin-right:10px;margin-left:5px;white-space:nowrap}.luckysheet-modal-dialog-slider-range>div:last-child{color:#00f;cursor:pointer;float:left}.luckysheet-modal-dialog-slider-list{width:250px;height:320px;overflow-y:scroll;margin:5px 0;margin-left:5px;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5;background:#fff}.luckysheet-modal-dialog-slider-list-title{height:20px;line-height:25px;padding:0 5px}.luckysheet-modal-dialog-slider-list .luckysheet-modal-dialog-slider-list-item{padding:0 4px;position:relative;width:228px;height:25px;user-select:none;border:1px solid #fff}.luckysheet-modal-dialog-slider-list .luckysheet-modal-dialog-slider-list-item:hover{background:#fff6cb;border:1px solid #ffe463}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-name{cursor:pointer;height:25px;line-height:25px;cursor:move;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:absolute;left:22px;right:40px;top:0}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected{width:20px;cursor:pointer;text-align:center;position:absolute;left:0;top:0;height:25px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected i{margin-top:4px;font-size:16px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected div{border:1px solid #9c9c9c;top:4px;left:1px;position:absolute;height:14px;width:14px;-moz-box-shadow:1px 1px 1px #dbdbdb inset;-webkit-box-shadow:1px 1px 1px #dbdbdb inset;box-shadow:1px 1px 1px #dbdbdb inset}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected div:hover{border:1px solid #5e5e5e}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered{width:20px;cursor:pointer;text-align:center;position:absolute;right:20px;top:2px;height:25px;display:none}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered i{margin-top:2px;font-size:16px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered:hover i{color:#fb8686}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered i.fa-times{right:0;bottom:3px;color:red;font-size:9px;position:absolute}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filter{width:20px;cursor:pointer;text-align:center;position:absolute;right:0;top:0;height:25px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filter i{margin-top:2px;font-size:16px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filter:hover i{color:#fb8686}.luckysheet-modal-dialog-slider-config-c{width:100%;position:absolute;margin-top:390px;top:0;bottom:3px}.luckysheet-modal-dialog-slider-config{height:50%;width:50%;position:absolute}.luckysheet-modal-dialog-slider-config>div:first-child{color:#1b1b19;font-size:13px;height:20px;line-height:20px;padding-left:5px}.luckysheet-modal-dialog-slider-config>div:first-child span{font-weight:700;font-weight:700;overflow:hidden}.luckysheet-modal-dialog-slider-config .luckysheet-modal-dialog-slider-config-list{position:absolute;margin-top:22px;margin-left:5px;left:0;right:5px;top:0;bottom:3px;border:1px solid #e5e5e5;user-select:none;overflow-y:auto;background:#fff}.luckysheet-modal-dialog-slider-config-list .luckysheet-modal-dialog-slider-config-item{position:relative;height:19px;line-height:19px;font-size:12px;border:1px solid #88adfd;background:#aac1fe;margin:2px}.luckysheet-modal-dialog-slider-config-list .luckysheet-modal-dialog-slider-config-item:hover{border:1px solid #0188fb;background:#5f9afc}.luckysheet-modal-dialog-slider-config-item-txt{position:absolute;height:100%;left:5px;right:25px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:move}.luckysheet-modal-dialog-slider-config-item-icon{position:absolute;height:100%;width:15px;right:0;top:-4px;cursor:pointer;font-size:14px}.luckysheet-modal-dialog-slider-config-item-icon:hover{color:#fa7272}.luckysheet-modal-dialog-config-filter{top:0;left:0}.luckysheet-modal-dialog-config-column{top:0;left:50%}.luckysheet-modal-dialog-config-row{top:50%;left:0}.luckysheet-modal-dialog-config-value{top:50%;left:50%}#luckysheet-modal-dialog-slider-pivot-move{position:absolute;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px dotted #000;color:#000;font-size:14px;opacity:.6;z-index:1005;padding:3px 8px;pointer-events:none;user-select:none}.luckysheet-modal-dialog-slider-chart{width:445px}.luckysheet-modal-dialog-slider-chart .luckysheet-modal-dialog-slider-title{background:#b94045}.luckysheet-modal-dialog-slider-chart .luckysheet-modal-dialog-slider-content{background:#fff}#luckysheet-dialog-pivotTable-clearitem{color:#00f;cursor:pointer;float:right;margin-right:30px}.luckysheet-freezebar-drop,.luckysheet-freezebar-handle{position:absolute;z-index:999}.luckysheet-freezebar-vertical-handle{width:4px;display:none}.luckysheet-freezebar-vertical-drop{width:4px}.luckysheet-freezebar-active .luckysheet-freezebar-vertical-handle{display:block;z-index:1003}.luckysheet-freezebar-vertical-handle-bar{width:2px;background:#dbe5f7;border-color:#a5c6fe;border-style:solid;border-width:0 1px;opacity:.45;margin-top:19px;top:0;bottom:0}.luckysheet-freezebar-vertical-handle-title{width:4px;background:#9dbefb;opacity:.8;height:19px;top:0}.luckysheet-freezebar-drop-bar,.luckysheet-freezebar-handle-bar{position:absolute;z-index:7}.luckysheet-freezebar-vertical-drop-bar{width:2px;background:rgba(0,0,0,.45);border-width:2px 1px 2px 2px;margin-top:19px;top:0;bottom:0}.luckysheet-freezebar-vertical-drop-title{width:2px;background:#bcbdbc;height:19px;top:0}.luckysheet-freezebar-active .luckysheet-freezebar-vertical-drop-bar,.luckysheet-freezebar-hover .luckysheet-freezebar-vertical-drop-bar{background:#c1c1c1;width:4px}.luckysheet-freezebar-active .luckysheet-freezebar-vertical-drop-title,.luckysheet-freezebar-hover .luckysheet-freezebar-vertical-drop-title{background:#5d88db;width:4px}.luckysheet-freezebar-horizontal-handle{height:4px;display:none}.luckysheet-freezebar-horizontal-drop{height:4px}.luckysheet-freezebar-active .luckysheet-freezebar-horizontal-handle{display:block;z-index:1003}.luckysheet-freezebar-horizontal-handle-bar{height:2px;background:#dbe5f7;border-color:#a5c6fe;border-style:solid;border-width:1px 0;opacity:.45;margin-left:45px;left:0;right:0}.luckysheet-freezebar-horizontal-handle-title{height:4px;background:#9dbefb;opacity:.8;width:45px;left:0}.luckysheet-freezebar-horizontal-drop-bar{height:2px;overflow:hidden;background:rgba(0,0,0,.45);border-width:2px 2px 1px 2px;margin-left:45px;left:0;right:0}.luckysheet-freezebar-horizontal-drop-title{height:2px;background:#bcbdbc;width:45px;left:0}.luckysheet-freezebar-active .luckysheet-freezebar-horizontal-drop-bar,.luckysheet-freezebar-hover .luckysheet-freezebar-horizontal-drop-bar{background:#c1c1c1;height:4px}.luckysheet-freezebar-active .luckysheet-freezebar-horizontal-drop-title,.luckysheet-freezebar-hover .luckysheet-freezebar-horizontal-drop-title{background:#5d88db;height:4px}#luckysheet-functionbox-container{height:100%;padding-left:10px;overflow:hidden;position:absolute;padding:0;top:0;left:185px;right:10px;border-left:1px solid #e5e5e5}#luckysheet-functionbox-container>div{height:100%;overflow-x:hidden;overflow-y:auto;position:relative}#luckysheet-functionbox{bottom:6px;left:0;position:absolute;right:0;top:6px;resize:none;font-family:arial,sans,sans-serif;font-size:14px;line-height:14px;background-color:#fff;padding:0 5px}#luckysheet-functionbox .luckysheet-functionbox-cell-input{word-wrap:break-word;-webkit-nbsp-mode:space;-webkit-line-break:after-white-space}.luckysheet-functionbox-cell-input{width:100%;height:100%;margin:0;outline:0;cursor:text;-webkit-user-modify:read-write-plaintext-only;white-space:pre-wrap;-webkit-transform:translateZ(0);background-color:#fff}.luckysheet-formula-text-color{color:#000}.luckysheet-formula-text-string{color:#228b22}.luckysheet-formula-search-c{position:absolute;left:50%;top:50%;border:1px solid rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);color:#535353;font-size:12px;background:#fff;z-index:1003;width:300px;display:none}.luckysheet-formula-search-c .luckysheet-formula-search-item{background:#fff;padding:5px 10px;cursor:pointer}.luckysheet-formula-search-c .luckysheet-formula-search-item .luckysheet-formula-search-detail{display:none;color:#444}.luckysheet-formula-search-c .luckysheet-formula-search-item .luckysheet-formula-search-func{color:#222;font-size:14px}.luckysheet-formula-search-c .luckysheet-formula-search-item-active{display:block;border-top:1px solid #ebebeb;border-bottom:1px solid #ebebeb;background:#f5f5f5}.luckysheet-formula-search-c .luckysheet-formula-search-item-active .luckysheet-formula-search-detail{display:block}.luckysheet-formula-help-c{display:none;position:absolute;left:20%;top:20%;border:1px solid rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);color:#535353;font-size:12px;background:#fff;z-index:1003;width:300px}.luckysheet-formula-help-c .luckysheet-formula-help-content{max-height:300px;overflow-y:scroll}.luckysheet-formula-help-content-example{margin-top:5px}.luckysheet-formula-help-title{display:block;border-top:1px solid #ebebeb;border-bottom:1px solid #ebebeb;background:#f5f5f5;padding:2px 10px;font-size:14px}.luckysheet-formula-help-title-formula{width:250px;word-break:break-word}.luckysheet-arguments-help-section{margin-top:5px;margin-bottom:5px;color:#222}.luckysheet-arguments-help-section-title{padding:1px 10px;color:#666}.luckysheet-arguments-help-parameter-content{padding:1px 10px;display:inline-block;word-wrap:break-word}.luckysheet-arguments-help-formula{padding:1px 10px;font-size:14px}.luckysheet-arguments-help-parameter-active{background-color:#fff9b2}.luckysheet-formula-help-collapse{position:absolute;top:0;right:25px;font-size:16px;cursor:pointer;color:#bbb}.luckysheet-formula-help-close{position:absolute;top:0;right:5px;font-size:16px;cursor:pointer;color:#bbb}.luckysheet-formula-help-close:hover,.luckysheet-formula-help-collapse:hover{color:#555}.luckysheetLoader{font-size:20px;width:1em;height:1em;border-radius:50%;text-indent:-9999em;position:absolute;top:50%;left:50%;animation:load-effect 1s infinite linear}@keyframes load-effect{0%{box-shadow:0 -3em 0 .2em #0188fb,2em -2em 0 0 #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 0 #0188fb}12.5%{box-shadow:0 -3em 0 0 #0188fb,2em -2em 0 .2em #0188fb,3em 0 0 0 #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}25%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 0 #0188fb,3em 0 0 .2em #0188fb,2em 2em 0 0 #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}37.5%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 0 #0188fb,2em 2em 0 .2em #0188fb,0 3em 0 0 #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}50%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 0 #0188fb,0 3em 0 .2em #0188fb,-2em 2em 0 0 #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}62.5%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 0 #0188fb,-2em 2em 0 .2em #0188fb,-3em 0 0 0 #0188fb,-2em -2em 0 -.5em #0188fb}75%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 0 #0188fb,-3em 0 0 .2em #0188fb,-2em -2em 0 0 #0188fb}87.5%{box-shadow:0 -3em 0 0 #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 0 #0188fb,-3em 0 0 0 #0188fb,-2em -2em 0 .2em #0188fb}100%{box-shadow:0 -3em 0 .2em #0188fb,2em -2em 0 0 #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 0 #0188fb}}.luckysheetpopover{position:absolute;background:rgba(0,0,0,.65);color:#fff;font-size:18px;padding:20px 100px;text-align:center;z-index:10000;border-radius:4px;user-select:none;display:none}.luckysheetpopover .luckysheetpopover-btn{position:absolute;right:10px;top:50%;margin-top:-12px;border:1px solid #fff;border-radius:4px;padding:2px 4px;cursor:pointer;font-size:14px}.luckysheetpopover .luckysheetpopover-btn:hover{border:1px solid #fea2a2;color:#fea2a2}.luckysheetPaintCursor{cursor:url(paint_24px.ico),auto}#luckysheet-search-replace .tabBox{margin-top:20px;font-size:0}#luckysheet-search-replace .tabBox span{display:inline-block;text-align:center;width:100px;border:1px solid #d4d4d4;font-size:14px;line-height:2}#luckysheet-search-replace .tabBox span.on{background-color:#8c89fe;border-color:#726efe;color:#fff}#luckysheet-search-replace .ctBox{padding:5px 10px;border:solid 1px #d4d4d4;font-size:14px}#luckysheet-search-replace .inputBox{height:90px;position:relative}#luckysheet-search-replace .inputBox .textboxs{height:30px;line-height:30px}#luckysheet-search-replace .inputBox .checkboxs{height:90px;position:absolute;right:0;top:0}#luckysheet-search-replace .inputBox .checkboxs div{height:30px;line-height:30px}#luckysheet-search-replace .inputBox .checkboxs input[type=checkbox]{float:left;margin-top:9px}#luckysheet-search-replace .btnBox{margin-top:10px}#luckysheet-search-replace .btnBox button{margin:0 2.5px}#luckysheet-search-replace #searchAllbox{height:210px;border:1px solid #d4d4d4;margin-top:10px;overflow-y:auto;position:relative}#luckysheet-search-replace #searchAllbox .boxTitle{width:100%;height:30px;line-height:29px;padding:0 5px;background-color:#fff;border-bottom:1px solid #d4d4d4;box-sizing:border-box;position:sticky;left:0;top:0}#luckysheet-search-replace #searchAllbox .boxTitle span{display:inline-block;text-align:center}#luckysheet-search-replace #searchAllbox .boxTitle span:nth-of-type(1){width:25%}#luckysheet-search-replace #searchAllbox .boxTitle span:nth-of-type(2){width:25%}#luckysheet-search-replace #searchAllbox .boxTitle span:nth-of-type(3){width:50%}#luckysheet-search-replace #searchAllbox .boxMain .boxItem{height:30px;line-height:29px;border-bottom:1px solid #d4d4d4;padding:0 5px;box-sizing:border-box}#luckysheet-search-replace #searchAllbox .boxMain .boxItem.on{background-color:#8c89fe;color:#fff}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span{display:block;text-align:center;float:left}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span:nth-of-type(1){width:25%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span:nth-of-type(2){width:25%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span:nth-of-type(3){width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-formula{font-size:12px}#luckysheet-search-formula .inpbox{margin-bottom:5px}#luckysheet-search-formula .inpbox label{display:block;margin-bottom:5px}#luckysheet-search-formula .inpbox input{width:100%;height:24px;line-height:24px;border:1px solid #d4d4d4;padding:0 10px;box-sizing:border-box;font-size:12px}#luckysheet-search-formula .selbox{margin-bottom:5px}#luckysheet-search-formula .selbox select{width:50%;height:24px;line-height:24px;border:1px solid #d4d4d4;box-sizing:border-box;font-size:12px}#luckysheet-search-formula .listbox label{display:block;margin-bottom:5px}#formulaTypeList{width:300px;height:170px;border:1px solid #d4d4d4;overflow-y:scroll}#formulaTypeList .listBox{padding:5px;border-bottom:1px solid #d4d4d4}#formulaTypeList .listBox.on{background-color:#8c89fe;color:#fff}#formulaTypeList .listBox span:nth-of-type(1){display:block}#formulaTypeList .listBox span:nth-of-type(2){display:block}#luckysheet-search-formula-parm{width:502px;font-size:12px}#luckysheet-search-formula-parm .parmListBox{width:500px;padding:5px 0;border:1px solid #d4d4d4}#luckysheet-search-formula-parm .parmBox{height:30px;line-height:30px;margin-bottom:5px}#luckysheet-search-formula-parm .parmBox:last-child{margin-bottom:0}#luckysheet-search-formula-parm .parmBox .name{width:90px;height:30px;padding:0 5px;float:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-formula-parm .parmBox .txt{width:198px;height:28px;border:1px solid #d4d4d4;float:left}#luckysheet-search-formula-parm .parmBox .txt input{width:150px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-search-formula-parm .parmBox .txt i{float:right;margin-top:8px;margin-right:5px}#luckysheet-search-formula-parm .fa-table{cursor:pointer;color:#6598f3}#luckysheet-search-formula-parm .fa-table:hover{color:#ff7e7e}#luckysheet-search-formula-parm .parmBox .val{width:190px;height:30px;line-height:30px;padding:0 5px;float:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-formula-parm .formulaDetails{padding:5px}#luckysheet-search-formula-parm .parmDetailsBox{max-height:100px;padding:5px 0 5px 20px;overflow-y:scroll}#luckysheet-search-formula-parm .parmDetailsBox span{display:inline-block}#luckysheet-search-formula-parm .result{padding:5px;border-top:1px solid #d4d4d4}#textCellColor{border:1px solid #d4d4d4;padding:5px 10px}#textCellColor .colorbox{height:30px;line-height:30px;margin-bottom:10px}#textCellColor .colorbox input[type=checkbox]{float:left;margin-top:10px}#textCellColor .colorbox label{display:inline-block;width:80px}#luckysheet-multiRange-dialog input,#luckysheet-singleRange-dialog input{border:1px solid #d4d4d4;padding:0 10px;height:30px}#luckysheet-conditionformat-dialog{font-size:12px}#luckysheet-conditionformat-dialog .box .boxTitleOne{margin:5px 0;font-weight:600}#luckysheet-conditionformat-dialog .box .inpbox{width:198px;height:28px;border:1px solid #d4d4d4}#luckysheet-conditionformat-dialog .box .inpbox input{width:150px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-conditionformat-dialog .box .inpbox2{float:left;width:108px;height:28px;border:1px solid #d4d4d4}#luckysheet-conditionformat-dialog .box .inpbox2 input{width:60px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-conditionformat-dialog .box i.fa-table{float:right;margin-top:8px;margin-right:5px}#luckysheet-conditionformat-dialog .box .fa-table{cursor:pointer;color:#6598f3}#luckysheet-conditionformat-dialog .box .fa-table:hover{color:#ff7e7e}#luckysheet-conditionformat-dialog .box #daterange-btn{width:188px;height:28px;padding:0 5px;line-height:28px;border:1px solid #d4d4d4;cursor:pointer}#luckysheet-conditionformat-dialog .box .selectbox{width:150px;height:30px}#luckysheet-icon-dataBar-menuButton .bgImgBox{width:28px;height:26px;background:url(../plugins/images/CFdataBar.png) no-repeat}#luckysheet-icon-colorGradation-menuButton .bgImgBox{width:28px;height:26px;background:url(../plugins/images/CFcolorGradation.png) no-repeat}#luckysheet-administerRule-dialog{font-size:12px}#luckysheet-administerRule-dialog .chooseSheet{height:24px;line-height:24px;margin-bottom:5px}#luckysheet-administerRule-dialog .chooseSheet select{height:24px;padding:0 5px;box-sizing:border-box;font-size:12px}#luckysheet-administerRule-dialog .ruleBox{border:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleBtn{padding:2.5px 5px;border-bottom:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleBtn button{margin-right:10px;font-size:12px}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle{height:30px;padding:0 10px;border-bottom:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span{display:block;height:100%;line-height:29px;float:left}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span:nth-of-type(1){width:30%}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span:nth-of-type(2){width:20%}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span:nth-of-type(3){width:45%}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox{height:150px;overflow-y:scroll}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item{height:24px;padding:2.5px 10px;border-bottom:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item.on{background-color:#8c89fe}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleName{width:30%;height:100%;line-height:24px;padding-right:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;float:left;box-sizing:border-box}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item.on .ruleName{color:#fff}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .format{width:20%;height:100%;line-height:24px;float:left;position:relative}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .format .colorbox{display:inline-block;width:16px;height:16px;border:solid 1px #d0d0d0;margin:3px 5px;cursor:pointer}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange{width:45%;height:100%;border:1px solid #d4d4d4;float:left;margin-left:10px;box-sizing:border-box;background-color:#fff}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange input{width:130px;height:22px;padding:0 5px;border:none;outline-style:none;float:left}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange i.fa-table{float:right;cursor:pointer;color:#6598f3;margin-top:6px;margin-right:5px}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange i.fa-table:hover{color:#ff7e7e}.luckysheet-newEditorRule-dialog{font-size:12px}.luckysheet-newEditorRule-dialog .boxTitle{margin-bottom:5px}.luckysheet-newEditorRule-dialog .ruleTypeBox{border:1px solid #d4d4d4;margin-bottom:10px}.luckysheet-newEditorRule-dialog .ruleTypeBox .ruleTypeItem{padding:3px 5px;cursor:pointer}.luckysheet-newEditorRule-dialog .ruleTypeBox .ruleTypeItem.on{background-color:#7c79fe;color:#fff}.luckysheet-newEditorRule-dialog .ruleTypeBox .ruleTypeItem .icon{font-family:Arial,Helvetica,sans-serif}.luckysheet-newEditorRule-dialog .ruleExplainBox{border:1px solid #d4d4d4;padding:10px}.luckysheet-newEditorRule-dialog .ruleExplainBox .title{display:block;font-weight:600;margin-bottom:5px}.luckysheet-newEditorRule-dialog .ruleExplainBox select{height:30px;font-size:12px;float:left;margin-right:5px}.luckysheet-newEditorRule-dialog .ruleExplainBox .inpbox{width:100px;height:30px;border:1px solid #d4d4d4;box-sizing:border-box;font-size:12px;float:left}.luckysheet-newEditorRule-dialog .ruleExplainBox .inpbox input{width:70px;height:100%;border:none;outline-style:none;padding:0 5px}.luckysheet-newEditorRule-dialog .ruleExplainBox .txt{display:block;height:100%;line-height:30px;float:left;margin:0 5px}.luckysheet-newEditorRule-dialog .ruleExplainBox #isPercent{float:left;margin:9px 0 8px 10px}.luckysheet-newEditorRule-dialog i.fa-table{float:right;margin-top:8px;margin-right:5px}.luckysheet-newEditorRule-dialog .fa-table{cursor:pointer;color:#6598f3}.luckysheet-newEditorRule-dialog .fa-table:hover{color:#ff7e7e}.luckysheet-newEditorRule-dialog .iconsBox{height:30px;margin-bottom:5px;position:relative}.luckysheet-newEditorRule-dialog .iconsBox label{display:block;width:80px;height:30px;line-height:30px;float:left}.luckysheet-newEditorRule-dialog .iconsBox .showbox{width:150px;height:20px;padding:4px 4px 4px 10px;border:1px solid #e5e5e5;background-color:#f5f5f5;float:left;cursor:pointer}.luckysheet-newEditorRule-dialog .iconsBox .showbox .model{width:125px;height:20px;background:url(../plugins/images/CFicons.png) no-repeat;background-size:256px;float:left}.luckysheet-newEditorRule-dialog .iconsBox ul{display:none;width:164px;max-height:150px;overflow-y:auto;background-color:#fff;border:1px solid #e5e5e5;position:absolute;left:80px;top:30px;list-style:none;margin:0;padding:0}.luckysheet-newEditorRule-dialog .iconsBox ul li{padding:5px 10px;background-color:#fff;cursor:pointer}.luckysheet-newEditorRule-dialog .iconsBox ul li:hover{background-color:#dfdfdf}.luckysheet-newEditorRule-dialog .iconsBox ul li div{width:125px;height:20px;background:url(../plugins/images/CFicons.png) no-repeat;background-size:256px}#luckysheet-CFicons-dialog .box{padding:10px;border:1px solid #dfdfdf;font-size:14px}#luckysheet-CFicons-dialog .box .title{height:20px;line-height:20px;padding:0 10px;background-color:#ebebeb}#luckysheet-CFicons-dialog .box .list{width:300px;padding:5px 0}#luckysheet-CFicons-dialog .box .list .left{width:50%;float:left}#luckysheet-CFicons-dialog .box .list .right{width:50%;float:right}#luckysheet-CFicons-dialog .box .list .item{width:125px;height:20px;padding:2.5px 10px;background-color:#fff;cursor:pointer}#luckysheet-CFicons-dialog .box .list .item:hover{background-color:#dfdfdf}#luckysheet-CFicons-dialog .box .list .item div{width:125px;height:20px;background:url(../plugins/images/CFicons.png) no-repeat;background-size:256px}#luckysheet-modal-dialog-slider-alternateformat{width:280px;font-size:12px}#luckysheet-modal-dialog-slider-alternateformat .luckysheet-modal-dialog-slider-content{background-color:#fff;overflow-y:scroll}#luckysheet-modal-dialog-slider-alternateformat .textTitle{padding:5px 10px;font-weight:600}#luckysheet-alternateformat-range{width:198px;height:28px;border:1px solid #d4d4d4;margin-left:10px}#luckysheet-alternateformat-range input{width:150px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-alternateformat-range .fa-table{float:right;margin-top:8px;margin-right:5px;cursor:pointer;color:#6598f3}#luckysheet-alternateformat-range .fa-table:hover{color:#ff7e7e}#luckysheet-alternateformat-checkbox{padding:5px 10px;border-top:1px solid #d4d4d4;border-bottom:1px solid #d4d4d4;margin:10px 0}#luckysheet-alternateformat-checkbox div{height:20px;line-height:20px}#luckysheet-alternateformat-checkbox div:first-child{margin-bottom:5px}#luckysheet-alternateformat-checkbox input[type=checkbox]{float:left;cursor:pointer;margin-top:4px}#luckysheet-alternateformat-modelList{padding:0 10px;margin-bottom:10px}#luckysheet-alternateformat-modelCustom{padding:0 10px;margin-bottom:10px}#luckysheet-modal-dialog-slider-alternateformat .modelbox{display:inline-block;width:36px;padding:2px;border:2px solid #fff;box-sizing:border-box;margin-right:4px;margin-bottom:4px;cursor:pointer}#luckysheet-modal-dialog-slider-alternateformat .modelbox.on{border-color:#726efe}#luckysheet-modal-dialog-slider-alternateformat .modelbox .box{width:100%;border:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-modal-dialog-slider-alternateformat .modelbox .box span{display:block;width:100%;height:10px;line-height:9px;text-align:center;border-bottom:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-modal-dialog-slider-alternateformat .modelbox .box span:last-child{line-height:10px;border-bottom:none}#luckysheet-alternateformat-modelToning{padding:10px}#luckysheet-alternateformat-modelToning .toningbox{height:25px;margin-bottom:5px}#luckysheet-alternateformat-modelToning .toningbox .toningShow{width:150px;height:100%;line-height:23px;text-align:center;border:1px solid #d4d4d4;float:left;margin-right:10px}#luckysheet-alternateformat-modelToning .toningbox .luckysheet-color-menu-button-indicator{width:20px;float:left;user-select:none;cursor:pointer}#luckysheet-alternateformat-modelToning .toningbox .luckysheet-color-menu-button-indicator .luckysheet-icon{user-select:none;margin-bottom:-6px}#luckysheet-alternateformat-colorSelect-dialog .currenColor{font-size:12px;margin-bottom:5px}#luckysheet-alternateformat-colorSelect-dialog .currenColor span{display:inline-block;width:16px;height:16px;border:solid 1px #d0d0d0;margin-left:5px;margin-bottom:-5px;cursor:pointer}#luckysheet-alternateformat-rangeDialog input{border:1px solid #d4d4d4;padding:0 10px;height:30px}#luckysheet-ifFormulaGenerator-dialog{font-size:12px}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox{height:30px;margin-bottom:10px}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox label{display:block;width:100px;height:100%;line-height:30px;padding:0 5px;text-align:right;float:left}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox{width:150px;height:100%;padding:0 10px;border:1px solid #d4d4d4;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox input{width:100px;height:100%;padding:0;border:none;outline-style:none;background:0 0;float:left}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox i.fa-table{font-size:14px;color:#6598f3;float:right;margin-right:0;margin-top:8px;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox i.fa-table:hover{color:#ff7e7e}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox span.text{height:100%;line-height:30px;padding:0 5px;float:left}#luckysheet-ifFormulaGenerator-dialog #largeRange,#luckysheet-ifFormulaGenerator-dialog #smallRange{width:100px;height:100%;padding:0 10px;border:1px solid #d4d4d4;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog #rangeAssess{height:100%;line-height:30px;float:left;margin-left:20px}#luckysheet-ifFormulaGenerator-dialog #rangeAssess i.fa-table{color:#6598f3;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog #rangeAssess i.fa-table:hover{color:#ff7e7e}#luckysheet-ifFormulaGenerator-dialog #DivisionMethod{width:100px;height:100%;border:1px solid #d4d4d4;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog #DivisionMethodVal{width:120px;height:100%;border:1px solid #d4d4d4;padding:0 10px;box-sizing:border-box;float:left;margin-left:10px}#luckysheet-ifFormulaGenerator-dialog #createBtn{width:100px;height:100%;line-height:30px;border-radius:5px;text-align:center;font-size:14px;color:#fff;background-color:#8c89fe;float:right;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog .ifList{border-top:1px solid #d4d4d4;height:180px;padding:10px;overflow-y:scroll}#luckysheet-ifFormulaGenerator-dialog .ifList .item{height:30px;margin-bottom:10px}#luckysheet-ifFormulaGenerator-dialog .ifList .item input{width:80px;height:100%;border:1px solid #d4d4d4;padding:0 5px;background:0 0;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog .ifList .item input.markText{width:140px}#luckysheet-ifFormulaGenerator-dialog .ifList .item select{width:50px;height:100%;padding:0 5px;border:1px solid #d4d4d4;box-sizing:border-box;float:left;margin:0 10px}#luckysheet-ifFormulaGenerator-dialog .ifList .item span{height:100%;line-height:30px;float:left;margin:0 10px}#luckysheet-ifFormulaGenerator-dialog .ifList .item i.fa-remove{font-size:16px;float:left;margin-left:15px;margin-top:7px;color:#d6d6d6;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog .ifList .item i.fa-remove:hover{color:#333}#luckysheet-ifFormulaGenerator-multiRange-dialog input,#luckysheet-ifFormulaGenerator-singleRange-dialog input{border:1px solid #d4d4d4;padding:0 10px;height:30px}.pictorialBarUploadImg:hover{border:1px solid #ccc!important;background:#efefef}#luckysheet-dropCell-icon #icon_dropCell{width:25px;height:15px;background-image:url(../plugins/images/icon_dropCell.png);background-repeat:no-repeat;background-position:center;background-size:100% 100%}#luckysheet-locationCell-dialog .listbox{border:1px solid #dfdfdf;padding:10px;font-size:14px;color:#000}#luckysheet-locationCell-dialog .listbox .listItem{padding:5px 0}#luckysheet-locationCell-dialog .listbox .listItem input[type=radio]{float:left;margin-top:5px}#luckysheet-locationCell-dialog .listbox .listItem .subbox{height:30px;padding:0 10px}#luckysheet-locationCell-dialog .listbox .listItem .subbox .subItem{float:left;margin-right:5px}#luckysheet-moreFormat-dialog{font-size:14px;color:#000}#luckysheet-moreFormat-dialog .decimal{margin-bottom:5px;height:30px;line-height:30px}#luckysheet-moreFormat-dialog .decimal input{width:80px;height:24px;padding:0 5px}#luckysheet-moreFormat-dialog .listbox{border:1px solid #666;height:240px;overflow-y:auto}#luckysheet-moreFormat-dialog .listbox .listItem{height:30px;padding:0 20px 0 10px;border-bottom:1px solid #dfdfdf}#luckysheet-moreFormat-dialog .listbox .listItem.on{background-color:#7c79fe;color:#fff}#luckysheet-moreFormat-dialog .listbox .listItem .name{line-height:29px;float:left}#luckysheet-moreFormat-dialog .listbox .listItem .value{line-height:30px;float:right;color:gray}#luckysheet-moreFormat-dialog .listbox .listItem.on .value{color:#fff}#luckysheet-splitColumn-dialog{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#luckysheet-splitColumn-dialog .box{font-size:14px}#luckysheet-splitColumn-dialog .box .boxTitle{padding:5px}#luckysheet-splitColumn-dialog .box .boxMain{padding:5px;border:1px solid #dfdfdf}#luckysheet-splitColumn-dialog .box input[type=checkbox]{float:left;margin-top:5px}#luckysheet-splitColumn-dialog .box .boxMain input[type=text]{margin-left:5px;width:50px;padding:0 5px}#luckysheet-splitColumn-dialog .box #splitColumnData{height:100px;overflow-y:auto}#luckysheet-splitColumn-dialog .box #splitColumnData table{border-collapse:collapse}#luckysheet-splitColumn-dialog .box #splitColumnData td{border:1px solid #333}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-content:last-child{padding-bottom:100px}.luckysheet-postil-dialog-move{position:absolute;margin:0;padding:0;top:0;left:0;bottom:0;right:0;pointer-events:none}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item{position:absolute;pointer-events:all;cursor:move}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-t{width:100%;height:3px;border-bottom:1px solid #000;left:0;top:-4px}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-r{width:3px;height:100%;border-left:1px solid #000;right:-4px;top:0}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-b{width:100%;height:3px;border-top:1px solid #000;left:0;bottom:-4px}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-l{width:3px;height:100%;border-right:1px solid #000;left:-4px;top:0}.luckysheet-postil-show-active .luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item{border-color:#0188fb}.luckysheet-postil-dialog-resize{position:absolute;margin:0;padding:0;top:-2px;left:-2px;bottom:-2px;right:-2px;pointer-events:none}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item{position:absolute;height:6px;width:6px;border:1px solid #0188fb;pointer-events:all}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-lt{left:-6px;top:-6px;cursor:se-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-mt{left:50%;top:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-lm{top:50%;left:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-rm{top:50%;right:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-rt{right:-6px;top:-6px;cursor:ne-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-lb{left:-6px;bottom:-6px;cursor:ne-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-mb{left:50%;bottom:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-rb{right:-6px;bottom:-6px;cursor:se-resize}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-content:last-child{padding-bottom:100px}.luckysheet-datavisual-left .el-tabs__content{overflow:auto}#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-content{width:100%;height:100%;position:absolute;left:0;top:0;cursor:move;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}#luckysheet-modal-dialog-cropping::before{content:"";outline:1px solid #fff;position:absolute;left:33.3%;right:33.3%;top:0;bottom:0;z-index:1;pointer-events:none}#luckysheet-modal-dialog-cropping::after{content:"";outline:1px solid #fff;position:absolute;left:0;right:0;top:33.3%;bottom:33.3%;z-index:1;pointer-events:none}#luckysheet-modal-dialog-cropping .cropping-mask{filter:brightness(.5);position:absolute;background-size:100% 100%;left:0;top:0}#luckysheet-modal-dialog-cropping .cropping-content{position:absolute;overflow:hidden;background-position:0 0;left:0;top:0;width:100%;height:100%}#luckysheet-modal-dialog-cropping .luckysheet-modal-dialog-resize{border:none;position:absolute;margin:0;padding:0;top:0;left:0;bottom:0;right:0;pointer-events:all}#luckysheet-modal-dialog-cropping .resize-item{width:0;height:0;background:0 0;border:none;position:absolute;z-index:3}#luckysheet-modal-dialog-cropping .resize-item::before{content:"";display:block;position:absolute;background:#000}#luckysheet-modal-dialog-cropping .resize-item::after{content:"";display:block;position:absolute;background:#000}#luckysheet-modal-dialog-cropping .lt{left:0;top:0;cursor:nwse-resize}#luckysheet-modal-dialog-cropping .lt::before{width:18px;height:4px;left:0;top:0;border-right:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .lt::after{width:4px;height:14px;left:0;top:4px;border-right:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .mt{left:50%;top:0;cursor:ns-resize}#luckysheet-modal-dialog-cropping .mt::before{width:18px;height:4px;left:-11px;top:0;border-left:2px solid #fff;border-right:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .rt{right:0;top:0;cursor:nesw-resize}#luckysheet-modal-dialog-cropping .rt::before{width:18px;height:4px;right:0;top:0;border-left:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .rt::after{width:4px;height:14px;right:0;top:4px;border-left:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .lm{left:0;top:50%;cursor:ew-resize}#luckysheet-modal-dialog-cropping .lm::before{width:4px;height:18px;left:0;top:-11px;border-right:2px solid #fff;border-top:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .rm{right:0;top:50%;cursor:ew-resize}#luckysheet-modal-dialog-cropping .rm::before{width:4px;height:18px;right:0;top:-11px;border-left:2px solid #fff;border-top:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .lb{left:0;bottom:0;cursor:nesw-resize}#luckysheet-modal-dialog-cropping .lb::before{width:18px;height:4px;left:0;bottom:0;border-right:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .lb::after{width:4px;height:14px;left:0;bottom:4px;border-right:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .rb{right:0;bottom:0;cursor:nwse-resize}#luckysheet-modal-dialog-cropping .rb::before{width:18px;height:4px;right:0;bottom:0;border-left:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .rb::after{width:4px;height:14px;right:0;bottom:4px;border-left:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .mb{left:50%;bottom:0;cursor:ns-resize}#luckysheet-modal-dialog-cropping .mb::before{width:18px;height:4px;left:-11px;bottom:0;border-left:2px solid #fff;border-right:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-slider-imageCtrl .luckysheet-modal-dialog-slider-content{background-color:#fff}#luckysheet-modal-dialog-slider-imageCtrl .slider-box{border-bottom:1px solid #e1e4e8}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-title{padding:10px 20px;font-weight:600}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-radios{padding:10px 30px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .radio-item{margin-bottom:10px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .radio-item:last-child{margin-bottom:0}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .radio-item input{vertical-align:sub}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-checkbox{padding:10px 30px;border-top:1px solid #e1e4e8}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-checkbox input{vertical-align:middle}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-borderConfig{padding:10px 30px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item{margin-bottom:10px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item:last-child{margin-bottom:0}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item label{display:inline-block;width:40px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item input{width:130px;padding:5px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item .imgItemBorderColor{display:inline-block;width:20px;height:20px;padding:2px;border:1px solid #e1e4e8;vertical-align:middle;cursor:pointer}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item .imgItemBorderColor span{display:block;width:100%;height:100%}#luckysheet-imageCtrl-colorSelect-dialog .currenColor{font-size:12px;margin-bottom:5px}#luckysheet-imageCtrl-colorSelect-dialog .currenColor span{display:inline-block;width:16px;height:16px;border:solid 1px #d0d0d0;margin-left:5px;margin-bottom:-5px;cursor:pointer}#luckysheet-modal-dialog-activeImage,#luckysheet-modal-dialog-cropping{background:0 0;box-shadow:none}.luckysheet-modal-dialog-image{border:none;box-shadow:none;background:0 0;box-shadow:none;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-content,.luckysheet-modal-dialog-image .luckysheet-modal-dialog-content{background:0 0}.cell-date-picker{position:absolute;display:none}#luckysheet-insertLink-dialog{user-select:none}#luckysheet-insertLink-dialog .box{font-size:12px}#luckysheet-insertLink-dialog .box-item{height:30px;line-height:30px;margin-bottom:10px}#luckysheet-insertLink-dialog .box-item label{display:inline-block;width:80px;text-align:right;margin-right:10px}#luckysheet-insertLink-dialog .box-item input{width:200px;height:30px;padding:0 10px;border:1px solid #d4d4d4;outline-style:none;box-sizing:border-box}#luckysheet-insertLink-dialog .box-item select{width:200px;height:30px;padding:0 5px;border:1px solid #d4d4d4;outline-style:none;box-sizing:border-box}#luckysheet-dataVerification-dialog{user-select:none}#luckysheet-dataVerification-dialog .box{font-size:12px}#luckysheet-dataVerification-dialog .box select{width:100%;height:30px;border-color:#d4d4d4;outline-style:none}#luckysheet-dataVerification-dialog .box input::-webkit-input-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box input:-moz-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box input::-moz-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box input:-ms-input-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box-item{padding:10px;border-bottom:1px solid #e1e4e8}#luckysheet-dataVerification-dialog .box-item .box-item-title{font-size:14px;font-weight:600;margin-bottom:10px}#luckysheet-dataVerification-dialog .box-item .range{width:100%;height:30px;border:1px solid #d4d4d4}#luckysheet-dataVerification-dialog .box-item .range input{width:calc(100% - 30px);height:30px;padding:0 10px;float:left;border:none;outline-style:none;box-sizing:border-box}#luckysheet-dataVerification-dialog .box-item .range i.fa-table{float:right;margin-top:9px;margin-right:5px;cursor:pointer;color:#6598f3}#luckysheet-dataVerification-dialog .box-item .multi{margin-top:10px;line-height:30px;font-size:12px}#luckysheet-dataVerification-dialog .box-item .multi input{vertical-align:text-top}#luckysheet-dataVerification-dialog .box-item .show-box{margin-top:10px}#luckysheet-dataVerification-dialog .box-item .check-box{height:30px;line-height:30px;margin-bottom:10px}#luckysheet-dataVerification-dialog .box-item .check-box:last-child{margin-bottom:0}#luckysheet-dataVerification-dialog .box-item .check-box input{height:30px;padding:0 10px;border:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-dataVerification-dialog .box-item .check{line-height:30px}#luckysheet-dataVerification-dialog .box-item .check input{vertical-align:text-top}#luckysheet-dataVerification-dialog .box-item .input{height:30px;line-height:30px;margin-top:10px}#luckysheet-dataVerification-dialog .box-item .input input{height:30px;padding:4px 10px 4px 10px;border:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-dataVerification-dialog .box-item .input1 input{width:150px}#luckysheet-dataVerification-dialog .box-item .input2 input{width:100%}#luckysheet-dataVerification-dialog .box-item .input span{display:inline-block;width:30px;text-align:center}#luckysheet-dataVerification-dialog .data-verification-hint-text{width:100%;height:30px;border:1px solid #d4d4d4;margin-top:10px}#luckysheet-dataVerification-dialog .data-verification-hint-text input{display:block;width:100%;height:100%;padding:0 10px;border:none;outline-style:none;box-sizing:border-box}#luckysheet-dataVerification-dialog .show-box .show-box-item{display:none}#luckysheet-dataVerificationRange-dialog input{height:30px;padding:0 10px;border:1px solid #d4d4d4;outline-style:none}#luckysheet-dataVerification-dropdown-btn{display:none;width:20px;height:20px;background-color:#fff;position:absolute;z-index:10;overflow:hidden}#luckysheet-dataVerification-dropdown-btn::after{content:'';width:10px;height:10px;background:url(arrow-down.png) center no-repeat;position:absolute;left:50%;top:50%;margin-left:-5px;margin-top:-5px}#luckysheet-dataVerification-dropdown-List{display:none;background-color:#fff;border:1px solid #ccc;box-shadow:0 2px 4px rgba(0,0,0,.2);position:absolute;z-index:10000;box-sizing:border-box}#luckysheet-dataVerification-dropdown-List .dropdown-List-item{padding:5px 10px;box-sizing:border-box;cursor:pointer}#luckysheet-dataVerification-dropdown-List .dropdown-List-item.multi{padding-left:0}#luckysheet-dataVerification-dropdown-List .dropdown-List-item.multi:before{content:"";width:14px;font-family:iconfont!important;font-size:12px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;margin-right:2px}#luckysheet-dataVerification-dropdown-List .dropdown-List-item.multi.checked:before{content:"\e7c8"}#luckysheet-dataVerification-dropdown-List .dropdown-List-item:hover{background-color:#e1e1e1}#luckysheet-dataVerification-showHintBox{display:none;padding:10px;background-color:#fff;border:1px solid #ccc;box-shadow:0 2px 4px rgba(0,0,0,.2);position:absolute;z-index:1000;user-select:none;cursor:default;white-space:nowrap}.luckysheet-print-viewList{position:relative;float:right;width:126px;height:22px;line-height:22px;text-align:center;white-space:nowrap;overflow:hidden;display:flex;align-items:center;user-select:none}.luckysheet-print-viewBtn{position:absolute;top:0;left:0;width:42px;height:22px;align-items:center;justify-content:center;cursor:pointer}.luckysheet-print-viewBtn .iconfont{font-size:22px}.luckysheet-print-viewBtn:hover{background:#e1e4e8}.luckysheet-print-viewBtn-active{background:#dcdcdc;cursor:default}.luckysheet-print-viewBtn-active:hover{background:#dcdcdc}.luckysheet-print-viewNormal{left:0}.luckysheet-print-viewLayout{left:42px}.luckysheet-print-viewPage{left:84px}#luckysheet-modal-dialog-slider-protection .luckysheet-modal-dialog-slider-content{background:#fff}.luckysheet-slider-protection-config{position:absolute;width:100%}.luckysheet-slider-protection-row{position:relative;width:98%;height:35px;left:1%}.luckysheet-slider-protection-column{position:absolute;height:100%}.luckysheet-protection-rangeItem-dialog input,.luckysheet-protection-rangeItem-dialog textarea,.luckysheet-protection-sheet-validation input,.luckysheet-slider-protection-config input,.luckysheet-slider-protection-config textarea{border:1px solid #d4d4d4;outline:0}.luckysheet-protection-rangeItem-dialog input:focus,.luckysheet-protection-rangeItem-dialog textarea:focus,.luckysheet-protection-sheet-validation input:focus,.luckysheet-slider-protection-config input:focus,.luckysheet-slider-protection-config textarea:focus{border:1px solid #0389fb;outline:0}.luckysheet-protection-input{width:100%;height:19px;position:relative}.luckysheet-protection-textarea{width:100%;height:47px;position:relative;resize:none}.luckysheet-protection-column-2x{width:20%}.luckysheet-protection-column-3x{width:30%}.luckysheet-protection-column-4x{width:40%}.luckysheet-protection-column-5x{width:50%}.luckysheet-protection-column-6x{width:60%}.luckysheet-protection-column-7x{width:70%}.luckysheet-protection-column-8x{width:80%}.luckysheet-protection-column-9x{width:90%}.luckysheet-protection-column-10x{width:100%}.luckysheet-protection-column-left{text-align:left}.luckysheet-protection-column-center{text-align:center}.luckysheet-protection-column-right{text-align:right}.luckysheet-slider-protection-ok{position:absolute;width:100%;height:100%;background:#0188fb;color:#fff;text-align:center;line-height:45px;font-size:16px;cursor:pointer}.luckysheet-slider-protection-ok:hover{background:#0181ee}.luckysheet-slider-protection-ok:active{background:#0074da}.luckysheet-slider-protection-cancel{position:absolute;width:100%;height:100%;background:#e6e6e6;color:#353535;text-align:center;line-height:45px;font-size:16px;cursor:pointer}.luckysheet-slider-protection-cancel:hover{background:#d6d6d6}.luckysheet-slider-protection-cancel:active{background:#c7c7c7}.luckysheet-slider-protection-addRange{line-height:23px;font-size:12px;top:2px;height:23px}.luckysheet-protection-rangeItem{position:relative;width:100%;height:30px;line-height:30px;font-size:12px;overflow:hidden}.luckysheet-protection-rangeItem:hover{background:#d5d5d5}.luckysheet-protection-rangeItem>div{position:absolute;height:100%;text-align:center;overflow:hidden}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-del{left:5px;top:5px;height:20px;width:20px;font-size:14px;line-height:20px;cursor:pointer}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-name{left:30px;width:80px;text-align:left}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-range{left:110px;width:120px}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-update{left:230px;width:30px;font-size:14px;top:5px;height:20px;width:20px;line-height:20px;cursor:pointer}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-del:hover,.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-update:hover{background:#0181ee;color:#fff}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-del:active,.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-update:active{background:#0074da;color:#fff}.luckysheet-protection-rangeItem-content{position:relative;width:350px;height:270px}#luckysheet-protection-rangeItem-dialog .luckysheet-slider-protection-column .range{width:100%;height:30px;border:1px solid #d4d4d4}#luckysheet-protection-rangeItem-dialog .luckysheet-slider-protection-column .range input{width:calc(100% - 30px);height:30px;padding:0 10px;float:left;border:none;outline-style:none;box-sizing:border-box}#luckysheet-protection-rangeItem-dialog .luckysheet-slider-protection-column .range i.fa-table{float:right;margin-top:9px;margin-right:5px;cursor:pointer;color:#6598f3}.luckysheet-protection-rangeItemTextarea{width:100%;height:120px;position:relative;resize:none}.luckysheet-protection-rangeItemiInput{width:100%;height:23px;position:relative}.luckysheet-protection-sheet-validation{width:390px;height:180px;display:none}.luckysheet-zoom-content{position:relative;float:right;width:210px;height:22px;line-height:22px;text-align:right;padding-right:10px;white-space:nowrap;overflow:hidden;display:flex;align-items:center;user-select:none}.luckysheet-zoom-content .luckysheet-zoom-minus{position:absolute;top:0;left:0;width:20px;height:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.luckysheet-zoom-content .luckysheet-zoom-minus-icon{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTRweCIgaGVpZ2h0PSIycHgiIHZpZXdCb3g9IjAgMCAxNCAyIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MyAoOTI0NDUpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPnJpcWlxdWppYW7lpIfku70gNDU8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iMjAyMC8wOC8xNCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IueUu+adv+Wkh+S7vS0yIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTcwNC4wMDAwMDAsIC0xMDY0LjAwMDAwMCkiIGZpbGw9IiM0NDRENUEiPgogICAgICAgICAgICA8ZyBpZD0icmlxaXF1amlhbuWkh+S7vS0xMjYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE2OTkuMDAwMDAwLCAxMDUzLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPGcgaWQ9Iue8lue7hCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNS4wMDAwMDAsIDExLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgICAgIDxyZWN0IGlkPSLnn6nlvaIiIHg9IjAiIHk9IjAiIHdpZHRoPSIxNCIgaGVpZ2h0PSIyIj48L3JlY3Q+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==);width:14px;height:2px}.luckysheet-zoom-content .luckysheet-zoom-minus:hover{background-color:#e1e4e8}.luckysheet-zoom-content .luckysheet-zoom-slider{position:absolute;top:0;left:25px;width:100px;height:100%;display:flex;align-items:center}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-line{position:absolute;top:10px;width:100px;height:2px;background:#e1e4e8}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-cursor{position:absolute;top:7px;width:8px;height:8px;border-radius:8px;background:#b5bdb8;cursor:pointer;z-index:2;transition:all .3s}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-cursor:hover{transform:scale(1.2);transform-origin:center center;background:#a0a0a0}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-hundred{position:absolute;top:9px;width:2px;height:4px;left:49px;background:#1e1e1f}.luckysheet-zoom-content .luckysheet-zoom-plus{position:absolute;top:0;left:130px;width:20px;height:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.luckysheet-zoom-content .luckysheet-zoom-plus .luckysheet-zoom-plus-icon{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTRweCIgaGVpZ2h0PSIxNHB4IiB2aWV3Qm94PSIwIDAgMTQgMTQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYzICg5MjQ0NSkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+CiAgICA8dGl0bGU+cmlxaXF1amlhbuWkh+S7vSA0NjwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSIyMDIwLzA4LzE0IiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0i55S75p2/5aSH5Lu9LTIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xODQ4LjAwMDAwMCwgLTEwNTguMDAwMDAwKSIgZmlsbD0iIzQ0NEQ1QSI+CiAgICAgICAgICAgIDxnIGlkPSJyaXFpcXVqaWFu5aSH5Lu9LTExOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTg0My4wMDAwMDAsIDEwNTMuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0i57yW57uEIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1LjAwMDAwMCwgNS4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICA8cmVjdCBpZD0i55+p5b2iIiB4PSIwIiB5PSI2IiB3aWR0aD0iMTQiIGhlaWdodD0iMiI+PC9yZWN0PgogICAgICAgICAgICAgICAgICAgIDxyZWN0IGlkPSLnn6nlvaLlpIfku70iIHRyYW5zZm9ybT0idHJhbnNsYXRlKDcuMDAwMDAwLCA3LjAwMDAwMCkgcm90YXRlKC0yNzAuMDAwMDAwKSB0cmFuc2xhdGUoLTcuMDAwMDAwLCAtNy4wMDAwMDApICIgeD0iMCIgeT0iNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjIiPjwvcmVjdD4KICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+);width:14px;height:14px}.luckysheet-zoom-content .luckysheet-zoom-plus:hover{background-color:#e1e4e8}.luckysheet-zoom-content .luckysheet-zoom-ratioText{position:absolute;top:0;left:155px;width:60px;color:#1e1e1f;font-size:12px;text-align:left;cursor:pointer}.luckysheet-zoom-content .luckysheet-zoom-ratioText:hover{background-color:#e1e4e8}.flatpickr-calendar{background:0 0;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-box-shadow:0 3px 13px rgba(0,0,0,.08);box-shadow:0 3px 13px rgba(0,0,0,.08)}.flatpickr-calendar.inline,.flatpickr-calendar.open{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1);animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none!important;box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6}.flatpickr-calendar .hasTime .dayContainer,.flatpickr-calendar .hasWeeks .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #eceef1}.flatpickr-calendar.hasTime .flatpickr-innerContainer{border-bottom:0}.flatpickr-calendar.hasTime .flatpickr-time{border:1px solid #eceef1}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:after,.flatpickr-calendar:before{position:absolute;display:block;pointer-events:none;border:solid transparent;content:'';height:0;width:0;left:22px}.flatpickr-calendar.arrowRight:after,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.rightMost:before{left:auto;right:22px}.flatpickr-calendar.arrowCenter:after,.flatpickr-calendar.arrowCenter:before{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:after,.flatpickr-calendar.arrowTop:before{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#eceef1}.flatpickr-calendar.arrowTop:after{border-bottom-color:#eceef1}.flatpickr-calendar.arrowBottom:after,.flatpickr-calendar.arrowBottom:before{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#eceef1}.flatpickr-calendar.arrowBottom:after{border-top-color:#eceef1}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-months .flatpickr-month{border-radius:5px 5px 0 0;background:#eceef1;color:#5a6171;fill:#5a6171;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-next-month,.flatpickr-months .flatpickr-prev-month{text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#5a6171;fill:#5a6171}.flatpickr-months .flatpickr-next-month.flatpickr-disabled,.flatpickr-months .flatpickr-prev-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-next-month i,.flatpickr-months .flatpickr-prev-month i{position:relative}.flatpickr-months .flatpickr-next-month.flatpickr-prev-month,.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-next-month.flatpickr-next-month,.flatpickr-months .flatpickr-prev-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-next-month:hover,.flatpickr-months .flatpickr-prev-month:hover{color:#bbb}.flatpickr-months .flatpickr-next-month:hover svg,.flatpickr-months .flatpickr-prev-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-next-month svg,.flatpickr-months .flatpickr-prev-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-next-month svg path,.flatpickr-months .flatpickr-prev-month svg path{-webkit-transition:fill .1s;transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-inner-spin-button,.numInputWrapper input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(72,72,72,.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span:hover{background:rgba(0,0,0,.1)}.numInputWrapper span:active{background:rgba(0,0,0,.2)}.numInputWrapper span:after{display:block;content:"";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(72,72,72,.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(72,72,72,.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:rgba(90,97,113,.5)}.numInputWrapper:hover{background:rgba(0,0,0,.05)}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .numInputWrapper{width:6ch;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#5a6171}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#5a6171}.flatpickr-current-month input.cur-year{background:0 0;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(90,97,113,.5);background:0 0;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:#eceef1;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:0;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:active,.flatpickr-current-month .flatpickr-monthDropdown-months:focus{outline:0}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#eceef1;outline:0;padding:0}.flatpickr-weekdays{background:#eceef1;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:#eceef1;color:#5a6171;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px;border-left:1px solid #eceef1;border-right:1px solid #eceef1}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #eceef1;box-shadow:-1px 0 0 #eceef1}.flatpickr-day{background:0 0;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#484848;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day.nextMonthDay:focus,.flatpickr-day.nextMonthDay:hover,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.today.inRange,.flatpickr-day:focus,.flatpickr-day:hover{cursor:pointer;outline:0;background:#e2e2e2;border-color:#e2e2e2}.flatpickr-day.today{border-color:#bbb}.flatpickr-day.today:focus,.flatpickr-day.today:hover{border-color:#bbb;background:#bbb;color:#fff}.flatpickr-day.endRange,.flatpickr-day.endRange.inRange,.flatpickr-day.endRange.nextMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.endRange:focus,.flatpickr-day.endRange:hover,.flatpickr-day.selected,.flatpickr-day.selected.inRange,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.selected:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange,.flatpickr-day.startRange.inRange,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.startRange:focus,.flatpickr-day.startRange:hover{background:#ff5a5f;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#ff5a5f}.flatpickr-day.endRange.startRange,.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.endRange.endRange,.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #ff5a5f;box-shadow:-10px 0 0 #ff5a5f}.flatpickr-day.endRange.startRange.endRange,.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e2e2e2,5px 0 0 #e2e2e2;box-shadow:-5px 0 0 #e2e2e2,5px 0 0 #e2e2e2}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.nextMonthDay,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.prevMonthDay{color:rgba(72,72,72,.3);background:0 0;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(72,72,72,.1)}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #ff5a5f,5px 0 0 #ff5a5f;box-shadow:-5px 0 0 #ff5a5f,5px 0 0 #ff5a5f}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;border-left:1px solid #eceef1}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(72,72,72,.3);background:0 0;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;background:#fff;border-bottom:1px solid #eceef1}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background:#fff;border-radius:0 0 5px 5px}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#484848}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#484848}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:0 0;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#484848;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-am-pm,.flatpickr-time .flatpickr-time-separator{height:inherit;float:left;line-height:inherit;color:#484848;font-weight:700;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time .flatpickr-am-pm:focus,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time input:hover{background:#eaeaea}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}span.flatpickr-day.selected{font-weight:700} \ No newline at end of file +.luckysheet-icon-img-container.iconfont,.luckysheet-submenu-arrow .iconfont{font-size:24px}.luckysheet-toolbar-combo-button .luckysheet-iconfont-xiayige,.luckysheet-toolbar-menu-button .luckysheet-iconfont-xiayige{font-size:12px;top:-8px;left:-3px}.luckysheet-toolbar-select .luckysheet-iconfont-xiayige{margin-right:4px}#luckysheet-icon-morebtn{position:absolute;right:15px;transform:translate(0,-50%);top:50%}.toolbar .luckysheet-icon-border-all,.toolbar .luckysheet-icon-cell-color,.toolbar .luckysheet-icon-text-color,.toolbar .luckysheet-icon-textwrap,.toolbar .luckysheet-icon-valign{margin-right:-3px}.toolbar .luckysheet-freezen-btn-horizontal,.toolbar .luckysheet-icon-align,.toolbar .luckysheet-icon-function,.toolbar .luckysheet-icon-merge-button,.toolbar .luckysheet-icon-rotation{margin-right:-4px}#luckysheet-icon-morebtn{padding:2px 13px 0 5px}#luckysheet-icon-morebtn .iconfont{top:-9px}.lucky-button-custom{cursor:pointer;display:flex;align-items:center;justify-content:center}.lucky-button-custom:hover{background-color:#e1e4e8}#luckysheet-icon-morebtn-div{border:1px solid #d4d4d4}.luckysheet-sheets-add .iconfont,.luckysheet-sheets-m .iconfont{font-size:21px}#luckysheet-sheets-leftscroll,#luckysheet-sheets-rightscroll{padding:6px 10px}input.luckysheet-mousedown-cancel{border:1px solid #a1a1a1}input.luckysheet-mousedown-cancel:focus{border:1px solid #0188fb;outline:0}.luckysheet-cellFormat-config{display:none}.luckysheet-cellFormat-config .luckysheet-modal-dialog-content{position:relative;height:550px;width:600px}.luckysheet-cellFormat-menu-c{position:absolute;width:100%;height:30px;border-right:1px solid #fff;border-bottom:1px solid #d4d4d4;font-size:12px}.luckysheet-cellFormat-menu{position:relative;display:inline-block;height:30px;width:80px;text-align:center;line-height:30px;border:1px solid #d4d4d4;border-bottom:none;background:#f0f0f0;cursor:pointer}.luckysheet-cellFormat-menu:hover{background:#e7e7e7}.luckysheet-cellFormat-menu-active{background:#fff;cursor:default}.luckysheet-cellFormat-menu-active:hover{background:#fff}.luckysheet-cellFormat-content{position:absolute;top:30px;bottom:0;width:100%;border:1px solid #d4d4d4;border-top:none}.luckysheet-cellFormat-protection{position:relative;margin-top:30px;margin-left:40px}.luckysheet-cellFormat-protection span{font-size:12px;color:#ff2929;padding-left:12px}::-webkit-scrollbar-track{background-color:transparent}.luckysheet-noselected-text{-moz-user-select:-moz-test;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.chart-moveable{cursor:move}.luckysheet{position:absolute;font-size:12px;font-family:"Helvetica Neue",Helvetica,Arial,"PingFang SC","Hiragino Sans GB","Heiti SC","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;border:1px solid #e5e5e5;background:#fff}.luckysheet *{box-sizing:initial;outline:0}.luckysheetLoaderGif{width:8em;height:8em;position:absolute;top:50%;left:50%;-ms-transform:translate(-50%,-100%);-moz-transform:translate(-50%,-100%);-o-transform:translate(-50%,-100%);transform:translate(-50%,-100%);background-image:url(loading.gif);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.luckysheet-loading-mask{position:absolute;z-index:1000000000;margin:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:#fff}.luckysheet-loading-content{position:relative;top:50%;transform:translateY(-50%);width:100%;font-size:14px;color:#409eff;text-align:center}.luckysheet-loading-image{width:8em;height:8em;margin:0 auto}.luckysheet-loading-text{margin-top:1em}.luckysheet-loading-image .image-type{width:100%;height:100%;background-repeat:no-repeat;background-position:center;background-size:100% 100%}.luckysheet-loading-image .path-type{width:100%;height:100%}.luckysheet-work-area{height:90px;width:100%;position:relative}.luckysheet_info_detail{position:relative;left:0;top:0;margin:0;padding:0 17px;height:56px;display:flex;align-items:center;background:#fff;box-shadow:0 -1px 0 0 #e6e7e8;border-bottom:1px solid #d4d4d4}.luckysheet_info_detail .sheet-name{margin:auto}.luckysheet_info_detail div.luckysheet_info_detail_back{font-size:14px;padding:0 8px;margin-right:18px;border-radius:3px;cursor:pointer}.luckysheet_info_detail div.luckysheet_info_detail_back:hover{background:#eee}.luckysheet_info_detail .luckysheet_info_detail_input{border:1px solid transparent;border-radius:3px!important;color:#000;font-size:16px;height:26px;line-height:22px;margin:0;min-width:1px;padding:2px 7px;visibility:hidden}.luckysheet_info_detail .luckysheet_info_detail_input:hover{border:1px solid #e5e5e5}.luckysheet_info_detail .luckysheet_info_detail_input:focus{-webkit-appearance:none;-moz-appearance:none;border:1px solid #0188fb!important;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);color:#000;outline:0}.luckysheet_info_detail_update{color:#cbcbcb;font-size:12px;margin-left:15px}.luckysheet_info_detail_user{font-size:12px;cursor:pointer;margin-left:10px}#luckysheet_info_detail_user_img{vertical-align:middle;height:20px;line-height:20px;border-radius:50%;object-fit:cover}.luckysheet_info_detail_save{color:#828282;font-size:12px;margin:0 5px}.luckysheet-share-logo{height:32px;width:152px;z-index:1;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAAAgCAYAAADuW7E5AAAN7ElEQVR4Xu2be5BU1Z3Hv7/Tj2EYkEA0Uj4QTBRBZgofYFAWHzGlVLlqNGg0u6vZVKBqLVmZ7kGcvnf6dt/bDMx0D4RNYiRGd92EcmFZDRrAWl/J6ho3JJAZhELBRQTj+lgfMEhP973frdMzPdMzdM8rTFadOX/N3Ps7557zO5/zO7/f75yWKittYZBFKfXvO+oCLw6y+ki1YaABGQFsGMzy/+MQOwEj5CR4nDCgvijZRshOhczeZmv0wQHVHREeFhroAszDZMA7dyCjpuANgbwF4S9arPJfD6TuiOzw0MCfFbAqi2fQS98AJZeB0DCXtcTKKoeHqofnKIsCRsgUQIJ9qUSAoxQcE3iNLbHytaXkq2xORTa73IN3owCqQO7NlljZpL6+M/L+s6uBEoCpqRD0CRiINoAZAImd8VH/cJwaLPormVkJcDEA//FqkmdbYsGvfXbVN9LzvjQwZICdb3GCQmY9yJIAUZDYaZUZfXVy5P1nVwNDAthki6PGsk07/bN6U40ncskrVvC/+qM+a3lyukecSRfv2XXh3/WnzlDJRJzGaqGcAXCzY9Y8PVTf6a3dT0Mf+jPuIQGsMpr+OYDb++jAtpZYWa8AFtaPOMkHhFgIyFbHDM3vz+CGSsawk9sAXCSCiG2Elw/Vd3pr99PQh8L+WZalsr6x1wLeMceseTb/7oQDNsNK3yTExr6ULvSubo6XP9OXXP79CGDdNfVpA8xwkr8CMU9ElthGaPXQAKadeq9tJwRT+wDn8ZZY2Tf6C5eWGwHsUw6YndoFcNqQAlYVS99GD+t6BUewu/WT1jmvr5zw0VACVpdIft2lTBCqZsdcsrvwW7Wx5HzxyUleFtvrrdCr+XcdZv46gHNFUEHyIEU9lzBCvymsX8p6GPbqqRR3ppbV3/UHfYczmcxl+n9/ZtQvY7G7jnTf9ptmA5wixGHHDG3W75bV14/3Z4PfAvhlQEfy6k1AbXLMe/aU6kPGl7k/4AbvIL1zKXJQebLFrgtt76nfJU1N5RWt3jVCXECRLwLc58tmN8Ziyw4Umwsz3nQ+hfNEMJ1EK4AX/O7hzZZleQU7y1xAThcyBeB0QB6hYLPQ+x/HrHn+hG6RM6LpJwS4rhQ4BA9Q8LVXrFF7BwLXYCxYb1uIUWS11SZWn6o890mAFxfp2/o9zS/fvmHDBle/K9a25TTNztLbCmA8RLb6s4dvTgcnVPjctjd1QlkUvmdHwg/2gETDfQ4g9ztm6O8Mu0n7MBsAjOnRBw+g7Zg1nRcTuvogD5G8pn1yO4ogA6pFjln9cP6RYa+aRvE2Czm5e9s8pqAWx83QTwqfm05qJckwuuctIcDLPhfXWVb4PS1vOslNJP6yp85E8IxthK8+cYDtLvtR5fTMBwDHFoNHhC8CZTc1W/LOQOH6cwBm2KktAK8F+L6IzxLxXnOJWQLUgiinwEwYYacYYBEnOVeIXwI4CZQNPvfjv4rFYm0dstqi36ZXv2OG/6LTWrYD+bL+31O+i4KZj3ZkfWP0pI0H8KTn8cdK+TJCzqfC32s5Qr6aMKpzUXcesJy1FDwl4P0UNZ4eNYRnAXjP7449y7IWHV24cGHg1Enn7iAxHcDvhCpJ4cci+LpH3i26CWJ2PjqPOMlvC/EzgG2AagTkBVGcCJc1lFwbmxwzfEMOsETqTpDTSH4X0FYRz4pgG8m9jlnzE5kZbzfhrscLSDf3t1DNJTC6bxCoV7Q2lwkqbFGU13rWIfG+gAlXyn64KyY5pQ+mDNQHG4gFq0ukrvQ8PqvVLMo3x669Jzfx7RPZFAK8JIB9jhn+Sk/AfORvMpBNAlRQ8GAge2RR4RZyX7zhcp+o5wlQ4J3jmEv3ta/81PfJXAJ6u2OGL4w2NEx00+qPOZCE1yeMmifyfTCdpnrS06cr6xwztKmwDyT2v3vq2HPXLlqkE96IOKlLhXox63bcWQnj3m2GnbwbwBqA72Zbs1NXrLjvg662U40dlioHzd1r1pSN+zD9OkROI2Em6toXlS7RaMNE16+01R3jKe/i5ZGlv+/SUwkfLC8ww8pcIXRzpo6Q68HilqgEHAlRvj+A3q/a68MTyA5R8uiRo/61r6+UAflbxb4xpIDZKcsDowB2OGb4gsLva7+l/BP3HP0smGndqeHphBd42gMuE6AcQMoxw3pLOa4YduMuQKYJEbfrwtH169f7mve8eQjgqRTclTDCP8pBF0++0m4h5CiFjwqxxT/G97S1ZMmHPRst2CLX2EYoZ+F0WbBggW9q1SXHtNtHjzclojWPmfHU4xTeoLct0tctrSLizSD5fQKZV5snlU+feajS9dyc/yaUOyiqxy0ZrxHghRREE0Y43m/AqqyjZxBydq4CcR4pZSVgOu6xUurFTCDwx0DWvdQVvq2O+ne1rJDOVdLfdnqTG0rADDv1c4A6b/dvjhm+ua/+Fm5PeVkRNNhG+N7igCU1AKsp2J+IhM42nFXXAN4WDVImkDlt5bJluQUYcVJnAvypEFfr+e1oKwvgeaVkeTwSeq5rQttzcYAYjhlKFH7XsJMayHEU+VbCCP1LxEnuFuK8vsblC/jPymbdOUI+2pcsgIcdM/y3/QasHw12F1lA3/nnp6co+E7LBvyv8QjafP7M2VkVOLQnJm8NuL0+KgwlYJF48gERncTlVses6TOJWwCYJyKPkbw5t70K/saOhH7WcygdkeFBgKMB35WAqyfmrwXyiG2G7ugpH3GaTqfHa5R4VwKY3+HbuErktrgR0kFA0UCjAL5ugBl2UvttOqn9a0A9WUrVvmz2nzNKLlJKcjIiyiSRLiavhK/HjVBnvrNY4JRrY0AgWPRXeW0LPMHtArk879CL8n3TzXoHlGL+2GcvBY9lmF29J1ZxQmAbBGB6tV8BoNExw0vz47Ss5MlZH3RkNyqfs4k4qbCQjQIcrJw6afItt9ySixZ1MePJWRT5Jwg+eeeUMV/Vvk4BYKscM1xtOKkHkXNyeYziuzzviBfqNuKkHhbyTh0EQKghHiNU8+y66v/Qcpa1arKrvLkUHnHM8ONd/X1gdMZ/+EkhrhTgJdsMXzoIwB7RQJN4KlEXvrawXzXRhonlAf8cjx797pFNWd/oKYDKRfkUmXN8iqbxCiW+8Rnl7amvDe86YRZsRiz7DXHd+mJJVM9Tc7PK/99BtB3qDqy0ClnfHA8u1zv6gGDuITwIwB4C8B0Ar/jdIxdblnXMsix/1jdWR0e3tq/Q9qyzYTdqB1oraxSAascMr2qfdEtl/WPXgbxVRH5hG6Ebi03umjVryt75KP0CIDrF8RZFzU4Y1d10YcYbL6FIYT5tj2OGO7ctM95USfGa24Mmd4Zj3tuZuzMSqR/A410AfuuY4dkDByylc3s6aPCE6iq7rjrnK3fo4wkdPVPwXMIIX0VSTCelg5xZItiiModvzEfE5vKmyz3Xe0YAn0vvivq6pbl2cv1xkttBzATEcsxQLP+8TwvWcXD901JnizmHPh08WftcldG0jiJzkVa3Iuqxw/Dfvt8S7XwOqnQB1nv1AmiuAiR/FPUGgJdJVInk+qfNfkVh1tmwU3GAZi5gJ7VV2QfBLBAzALQK1Ry7rrql1ORGV6ye5GbcbQBPEeC3PveL8yzrO93Ga9iN2wFpT8SK1NhGSEennXNh2I3PIbcz4H8BPKWTm0pkKsG5ud1GieFE2v2t3qPk7j6Yljfjjf9KkZu1M68EWz3gfQDzhNB+9xG/4mVWpEYDjlqr4ULlUy/puEZEdNT4n3pcJHS+zV9sazec5D+CuAMiLgi9uBocM/TDXgHLXblhm04e9nIoLb9viQUv0h2bYaUbhKgpgcC6lljZtwdFV7ejov4BpqUiTnKZkLH85UkB3iZkEYAVxY41DDv1PYANAL7QNe3YIUrdY9e2r/reJtewG68mZKte4R0phW7j7UoXoM3v8kzLqumWE7xv+ZpTfG5mNcFb29voLB8A8mO/e9jIp0AGCtjChQ8EvnTmxxGILNV5vYK2nxfKPXZd6A+Fmq2NNsxUfqUTw7m57Sg6d5ZQmcOr81Yt/0L7jUI+BFCnuiryFwFKA6bPFZHZ2tt9rtxKVGppczTQqP+eGm09LYjAqwArimMgi1piwZI3XwcLX2/1lq5cOTaQCUzTMu8eqNi+dm17vqiXIobdOJkipwcCwf3WvYv1avyTtvcCMHPbtpAb7bqab5bqg2Wt+kJbAJN9bmYchW9/aVz5/sWLFxd1tgeqM50i2bX3wDlu1jc+6//k1fraWm3JShbLapoAP8/L0ve+3/1wn2VZOqrtdykJWGW0LQWwureWdBL1aDr45cI8V1VdOkJBZ3KuR/23ZUzwK801os+1hlVpt07pA4CMAtR8x6zWO8PnvhQFTN+hZ7ZtZ/FrzgU6Iatb4qNyDnFXoVRa2Y2gV/S2BEW+u9MK6pU8rErESRpC2AAP+N3WKYXZ/s+zIooDFs1sJLybehu4PlvMsuyqYsc/fQQGm1piZblzrOFSdLTmqjG7qY9fhPX5M83hMP7jANM/LfPY9kaPX//0sFF4QyE4u6+D68pom05e6pB1YmcDgkMtVtkZw0G5I2MskmitrDt2F0R+UFI5gt0eeH1/r9xUNbLCa83cKuQNkFxEcnILgqNhSeedopGJ+Pxq4DgLVmml14G56yXFyuOtx1rvHOhlwW4NWVQjcH1+geo5suMBi6Y7DlG7iW4TessGcod++KhwZKS9+uo9X1ZG0zpbPQ6Q1yh8iZBN/f1p2YiqRzTQUwP/ByH3mYpBTz2UAAAAAElFTkSuQmCC)}.luckysheet-wa-editor{height:32px;background:#fafafc;position:relative;padding:5px 0 3px 15px;border-bottom:1px solid #d4d4d4;white-space:nowrap;transition:all .2s}.luckysheet-toolbar-left-theme{width:15px;position:absolute;left:0;top:1px;bottom:1px}.luckysheet-inline-block{position:relative;display:-moz-inline-box;display:inline-block}.luckysheet-toolbar-separator{line-height:normal;list-style:none;outline:0;overflow:hidden;padding:0;text-decoration:none;width:0;height:20px;vertical-align:top;border-left:1px solid #e0e0e0;margin:5px 1px}.luckysheet-toolbar-combo-button{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;background:0;border-color:transparent;border-style:solid;border-width:1px;outline:0;padding:0;color:#333;list-style:none;font-size:11px;font-weight:700;text-decoration:none;cursor:default;height:26px;line-height:26px;vertical-align:inherit;margin:0 1px}.luckysheet-toolbar-combo-button:hover{-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1);background-color:#f8f8f8;background-image:-webkit-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:-moz-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:-ms-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:-o-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:linear-gradient(to bottom,#f8f8f8,#f1f1f1);border-color:#c6c6c6!important;color:#222;border-width:1px;border-color:transparent!important;background-color:rgba(0,0,0,.06);background-image:none;cursor:pointer;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;cursor:pointer}.luckysheet-toolbar-combo-button:hover .luckysheet-toolbar-combo-button-input{border-right-color:rgba(0,0,0,.12)}.luckysheet-toolbar-combo-button-open{color:#222;border-width:1px;border-color:transparent!important;background-color:rgba(0,0,0,.12);background-image:none;cursor:pointer}.luckysheet-toolbar-combo-button-open .luckysheet-toolbar-combo-button-input{background:0 0;border-right:1px solid transparent!important}.luckysheet-toolbar-combo-button-inner-box,.luckysheet-toolbar-combo-button-outer-box{border:0;vertical-align:top;margin:0;padding:0}.luckysheet-toolbar-zoom-combobox .luckysheet-toolbar-combo-button-caption{width:36px!important}.luckysheet-toolbar-combo-button-caption{padding:0;margin:0 0 0 -3px}.luckysheet-toolbar-combo-button-input{background:0 0;border:1px solid transparent!important;color:#333;font-family:Arial,sans-serif!important;font-size:11px!important;font-weight:700!important;height:20px!important;overflow:hidden!important;color:rgba(0,0,0,.7);height:22px!important;width:22px}.luckysheet-toolbar-combo-button-input:focus{box-shadow:inset 0 1px 2px rgba(0,0,0,.3);background:#fff;outline:0;border:1px solid #0188fb!important}.luckysheet-toolbar-textinput{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px;height:25px;padding:1px 0 1px 8px}.luckysheet-toolbar-combo-button-dropdown{float:right;margin:9px 0 0 0;padding:0 0 0 1px;min-width:7px;opacity:.8;vertical-align:middle;width:5px;height:7px;margin-top:10px}.luckysheet-toolbar-color-menu-button .luckysheet-toolbar-menu-button-caption{top:-2px}.luckysheet-color-menu-button-indicator{position:relative;height:20px}.luckysheet-color-menu-button-indicator .text-color-bar{position:absolute;bottom:0;background-color:#0081f9;height:3px;width:55%;left:30%}.luckysheet-toolbar-button-inner-box .luckysheet-icon,.luckysheet-toolbar-menu-button-caption .luckysheet-color-menu-button-indicator .luckysheet-icon,.luckysheet-toolbar-menu-button-caption .luckysheet-icon{margin-top:0}.luckysheet-toolbar-menu-button-caption{padding:0;margin:0}.luckysheet-toolbar-menu-button-inner-box{margin:0 2px}.luckysheet-toolbar-menu-button-dropdown{float:right;margin:10px 2px 0 3px;padding:0;opacity:.8;vertical-align:middle;width:5px;height:7px;margin-left:4px;margin-right:0;margin-top:10px}.luckysheet-toolbar-button-split-right .luckysheet-toolbar-menu-button-dropdown{padding:0 3px}.luckysheet-toolbar-button-split-left,.luckysheet-toolbar-button-split-left *{border-top-right-radius:0!important;border-bottom-right-radius:0!important;margin-right:0}.luckysheet-toolbar-button-split-right,.luckysheet-toolbar-button-split-right *{border-top-left-radius:0!important;border-bottom-left-radius:0!important;min-width:5px!important;margin-left:0}#luckysheet-icon-merge-menu{margin-right:1px}.luckysheet-toolbar-button,.luckysheet-toolbar-menu-button{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;background:0;border:1px solid transparent;outline:0;padding:0;list-style:none;font-size:11px;text-decoration:none;vertical-align:middle;cursor:default;height:26px;line-height:26px;color:#333}.luckysheet-toolbar-button-hover,.luckysheet-toolbar-button:hover,.luckysheet-toolbar-menu-button:hover{border:1px solid transparent;background-color:rgba(0,0,0,.06);background-image:none;box-shadow:none;cursor:pointer}.luckysheet-toolbar-button-split-right.luckysheet-toolbar-menu-button:hover{border-left-color:rgba(0,0,0,.12)!important}.luckysheet-toolbar-button-split-right-hover{border-width:1px;border-color:transparent!important;background-color:rgba(0,0,0,.06);cursor:pointer;box-shadow:none;border-left-color:rgba(0,0,0,.12)!important}.luckysheet-toolbar-button:active,.luckysheet-toolbar-menu-button:active{border:1px solid transparent;background-color:rgba(0,0,0,.12);background-image:none;box-shadow:none;cursor:pointer}.luckysheet-toolbar-button-outer-box,.luckysheet-toolbar-menu-button-outer-box{border:0;vertical-align:top;margin:0;padding:0}.luckysheet-toolbar-button-inner-box,.luckysheet-toolbar-menu-button-inner-box{padding:0 2px;padding:0;text-align:center;height:26px;min-width:26px}.luckysheet-icon{direction:ltr;text-align:center;overflow:hidden;vertical-align:middle;height:26px;width:26px;margin:2px}#luckysheet-icon-fmt-other .luckysheet-toolbar-menu-button-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:55px;margin-left:1px;text-align:center}#luckysheet-icon-font-family .luckysheet-toolbar-menu-button-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:55px;margin-left:1px;text-align:center}#luckysheet-icon-function .luckysheet-toolbar-menu-button-caption{margin-right:5px;margin-left:-5px}#luckysheet-icon-function .luckysheet-icon{margin-right:0}#luckysheet-icon-pivotTable .luckysheet-toolbar-menu-button-caption{color:#0188fb}#luckysheet-icon-chart .luckysheet-toolbar-menu-button-caption{color:#0188fb}.luckysheet-rightgclick-menu-sub .sp-container{background-color:#fff;border:solid 1px #fff}#luckysheet-icon-cell-color-menu-menuButton .sp-palette-container,#luckysheet-icon-text-color-menu-menuButton .sp-palette-container{margin-bottom:-300px}#luckysheet-icon-cell-color-menu-menuButton .sp-palette,#luckysheet-icon-text-color-menu-menuButton .sp-palette{margin-top:-10px}.luckysheet-wa-calculate{height:28px;background:#fff;position:relative;padding-right:44px;border-bottom:1px solid #d4d4d4}.luckysheet-wa-calculate-help{height:100%;width:99px;border-right:1px solid #d4d4d4}.luckysheet-wa-calculate-help-box{height:100%;width:85px;position:absolute;top:0;left:0}#luckysheet-helpbox{left:0;position:absolute;right:0;top:50%;transform:translateY(-50%);resize:none;font-family:arial,sans,sans-serif;font-size:14px;line-height:14px;background-color:#fff;padding:2px 5px}.luckysheet-helpbox-cell-input{width:100%;height:100%;margin:0;outline:0;cursor:text;-webkit-user-modify:read-write-plaintext-only;white-space:nowrap;overflow:hidden;-webkit-transform:translateZ(0);background-color:#fff;word-wrap:break-word;-webkit-nbsp-mode:space;-webkit-line-break:after-white-space}.luckysheet-wa-calculate-help-tool{position:absolute;left:85px;text-align:center;height:100%;width:13px;border-left:1px solid transparent;border-right:1px solid transparent}.luckysheet-wa-calculate-help-tool .fa-caret-down{position:absolute;top:50%;left:3px;transform:translateY(-50%)}.luckysheet-wa-calculate-help-tool:hover{background:#efefef;cursor:pointer;border-left:1px solid #e5e5e5;border-right:1px solid #e5e5e5}.luckysheet-wa-calculate-size{position:absolute;height:3px;width:100%;left:0;bottom:0;z-index:1000}.luckysheet-wa-calculate-size:hover{background:#5e5e5e;cursor:ns-resize}#luckysheet-wa-functionbox-cancel{left:104px}#luckysheet-wa-functionbox-confirm{left:130px}.luckysheet-wa-functionbox{position:absolute;top:50%;transform:translateY(-50%);text-align:center;left:156px;color:#d6d6d6}.luckysheet-wa-functionbox span{vertical-align:middle;width:30px;height:30px}.luckysheet-wa-functionbox i{font-size:24px}.luckysheet-wa-calculate-active{color:#585858;cursor:pointer}.luckysheet-wa-calculate-active:hover{color:#0188fb}.luckysheet-grid-container{width:100%;position:absolute;top:90px;bottom:0}.luckysheet-stat-area{position:absolute;height:23px;bottom:0;background:#ff00dc;width:100%}.luckysheet-sta-c{height:22px;background-color:#fff;border-top:1px solid #e1e1e1;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheet-stat-area:hover .luckysheet-sta-c{-moz-user-select:-moz-all;-khtml-user-select:initial;-webkit-user-select:initial;-ms-user-select:initial;user-select:initial}.luckysheet-sta-c .luckysheet-sta-content{height:22px;line-height:22px;text-align:right;white-space:nowrap;overflow:hidden}.luckysheet-sta-c .luckysheet-sta-content span{margin-right:10px}.luckysheet-grid-window{position:absolute;top:0;bottom:23px;left:0;right:0;overflow:hidden;background:#0ff}.luckysheet-sheet-area{width:100%;box-sizing:border-box;position:absolute;right:0;bottom:0;left:0;background-color:#fafafc;color:#444;height:31px;padding:0 0 0 44px;margin:0;-webkit-touch-callout:none;cursor:default;transition:.3s ease all;display:flex;align-items:center;justify-content:space-between}#luckysheet-sheet-content{width:0;flex:3;display:flex;align-items:center}#luckysheet-bottom-pager{width:0;background-color:#fafafc;z-index:1;flex:2;text-align:right;white-space:nowrap}.luckysheet-sheet-area .luckysheet-sheets-item,.luckysheet-sheet-area>div{display:inline-block}div.luckysheet-sheets-scroll{display:none}div.luckysheet-sheets-add:hover,div.luckysheet-sheets-m:hover{color:#2a2a2a}.docs-sheet-fade{position:absolute;display:block;top:0;width:6px;height:100%;z-index:1}.docs-sheet-fade div{background-color:#d7d7d7;width:2px;float:right;position:relative;height:100%}.docs-sheet-fade-left{left:0}.docs-sheet-fade-right{right:0}.docs-sheet-fade1{opacity:.82}.docs-sheet-fade2{opacity:.62}.docs-sheet-fade3{opacity:.4}.luckysheet-sheet-area div.luckysheet-sheet-container{padding:0 0;margin-left:0;position:relative;max-width:70%;vertical-align:bottom;display:inline-block}.luckysheet-sheet-area div.luckysheet-sheet-container div.luckysheet-sheet-container-c{padding:0 0;margin-left:0;overflow:hidden;white-space:nowrap;position:relative;max-width:100%;vertical-align:bottom;display:inline-block}.luckysheet-sheet-container-menu-hide .luckysheet-sheets-item{padding-right:5px!important}.luckysheet-sheet-container-menu-hide .luckysheet-sheets-item-menu{display:none!important}.luckysheet-sheet-area div.luckysheet-sheets-item{padding:2px 6px;height:29px;line-height:29px;background-color:#fafafc;color:#676464;min-width:30px;top:0;position:relative;margin-right:-1px;cursor:pointer;transition:all .1s;font-size:13px;padding:2px 19px 0 5px;box-sizing:border-box;border-left:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;border-right:1px solid #e0e0e0}.luckysheet-sheet-area div.luckysheet-sheets-item:last-child{margin-right:1px}.luckysheet-sheet-area div.luckysheet-sheets-item:hover{background-color:#efefef;color:#490500}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-menu{margin-left:2px;display:inline-block;top:-2px;position:relative;color:#a1a1a1;position:absolute;height:100%;width:15px;right:0;text-align:center}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-menu:hover{color:#2a2a2a;cursor:pointer}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-name{padding:0 3px}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-name[contenteditable=true]{border:1px solid #d9d9d9;display:inline-block;height:18px;line-height:18px;min-width:8px;margin:-4px -1px;-moz-user-modify:read-write-plaintext-only;-webkit-user-modify:read-write-plaintext-only;-moz-user-select:text!important;-ms-user-select:text!important;-webkit-user-select:text!important}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-name[contenteditable=true]:focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);box-shadow:inset 0 1px 2px rgba(0,0,0,.3);border:1px solid #4d90fe;outline:0}.luckysheet-sheet-area div.luckysheet-sheets-item-active{height:29px;line-height:29px;background-color:#efefef;border-top-color:#fff;color:#222;cursor:default}.luckysheet-sheet-area div.luckysheet-sheets-item-active:hover{background-color:#ececec;color:#222}.luckysheet-grid-window-1{position:absolute;top:0;right:0;bottom:27px;left:0;min-width:200px;background-color:#fff!important;overflow:hidden;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheetTableContent{position:absolute;z-index:2;left:0;top:0;width:100%;height:100%;pointer-events:none;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheet-grid-window-2{height:100%;width:100%;outline:0;border-collapse:collapse;display:table}.luckysheet-paneswrapper{overflow:hidden;height:1px}.luckysheet-left-top{width:44.5px;height:18.5px;border:solid 0 #dfdfdf;position:relative;padding-top:0;border-width:0 1px 1px 0;margin:-1px 0 0 -1px;padding-left:0;cursor:pointer}.luckysheet-cols-h-c{color:#5e5e5e;overflow:hidden;padding:0;cursor:default;height:19px;outline-style:none;position:relative;-webkit-user-select:none;background:#f3f3f2}.luckysheet-rows-h{position:relative;outline-style:none;color:#5e5e5e;overflow:hidden;padding:0;margin-top:-2px;padding-top:2px;cursor:default;width:38px;background:#f3f3f2}.luckysheet-cols-menu-btn{color:#5e5e5e;cursor:pointer;position:absolute;z-index:12;border:1px solid #5e5e5e;border-radius:1px;top:3px;margin-left:0;display:none;padding:0 2px;font-size:12px;height:12px;opacity:.5}.luckysheet-cols-menu-btn:hover{opacity:1}.luckysheet-cols-h-hover{color:#5e5e5e;cursor:default;position:absolute;z-index:11;border:0 none;bottom:0;height:100%;margin-left:0;display:none;background-color:rgba(194,194,194,.4)}.luckysheet-cols-h-selected{color:#5e5e5e;cursor:default;position:absolute;z-index:10;border-bottom:1px solid #0188fb;bottom:0;height:100%;margin-left:0;display:none;transition:all .1s;background-color:rgba(76,76,76,.1)}.luckysheet-cols-h-cells{margin:0;padding:0;border:none 0;position:relative;height:inherit}.luckysheet-cols-h-cells-c{color:#5e5e5e;cursor:default;width:5000000px;height:inherit}.luckysheet-cols-h-cells-clip{color:#5e5e5e;cursor:default;margin:0;padding:0;border:none 0;position:relative;float:left;direction:ltr;height:inherit;width:2561px;color:#5e5e5e;border-bottom:solid 1px #bbb;position:relative;top:-1px}.luckysheet-cols-h-cell-nosel{position:absolute;cursor:pointer;border:0 solid;border-color:#dfdfdf;display:inline-block;min-height:19px;touch-action:manipulation;border-right-width:1px;height:inherit}.luckysheet-cols-h-cell-sel{direction:ltr;height:inherit;position:absolute;cursor:pointer;border:0 solid;border-color:#bfbfbf;background-color:#e1e1e1;display:inline-block;min-height:19px;color:#0188fb;font-weight:700;touch-action:manipulation;border-right-width:1px}.luckysheet-col-flow-h{float:left;direction:ltr;position:relative;margin:0;padding:0;border:none 0;height:inherit;overflow:hidden}.luckysheet-col-flow-h-sheet{width:inherit;height:inherit;position:relative;float:left;direction:ltr}body:not(.ewa-ipad) .luckysheet-cols-h-cell-nosel:hover,body:not(.ewa-ipad) .luckysheet-cols-h-cell-sel:hover,body:not(.ewa-ipad) .luckysheet-rows-h-cell-nosel:hover,body:not(.ewa-ipad) .luckysheet-rows-h-cell-sel:hover{background-color:#fcc3c3}.luckysheet-cols-h-cell-txt{cursor:pointer;height:inherit;position:relative;text-align:center;overflow:hidden;touch-action:manipulation;font-size:14px;padding-top:2px}.luckysheet-rows-h{position:relative;outline-style:none;color:#5e5e5e;overflow:hidden;padding:0;margin-top:-2px;padding-top:2px;cursor:default;width:45px}.luckysheet-rows-h-hover{position:absolute;z-index:11;border:0 none;right:0;width:100%;margin-top:2px;display:none;background-color:rgba(194,194,194,.4)}.luckysheet-rows-h-selected{position:absolute;z-index:10;border-right:1px solid #0188fb;right:0;width:100%;margin-top:2px;display:none;transition:all .1s;background-color:rgba(76,76,76,.1)}.luckysheet-rows-h-cells{margin:0;padding:0;border:none 0;position:relative;width:100%}.luckysheet-rows-h-cells-c{margin:0;padding:0;border:none 0;position:relative;float:left;direction:ltr;width:100%}.luckysheet-rows-h-cells-clip{cursor:default;color:#5e5e5e;direction:ltr;border-right:solid 1px #bbb;width:inherit;height:inherit;position:relative;left:-1px;height:inherit}.luckysheet-rows-h-cell-nosel{direction:ltr;width:100%;position:absolute;cursor:pointer;border:0 solid;border-color:#dfdfdf;border-bottom-width:1px;touch-action:manipulation}.luckysheet-rows-h-cell-sel{direction:ltr;width:100%;position:absolute;cursor:pointer;border:0 solid;border-color:#bfbfbf;background-color:#e1e1e1;border-bottom-width:1px;color:#0188fb;font-weight:700;touch-action:manipulation}.luckysheet-rows-h-cell-txt{width:100%;position:absolute;bottom:0;text-align:center;padding-bottom:1px;max-height:100%;overflow:hidden;font-size:14px}.luckysheet-cell-loading{width:100%;height:100%;background-color:rgba(255,255,255,.3);position:absolute;overflow:hidden;outline-style:none;cursor:not-allowed;font-size:28px;z-index:2;display:none}.luckysheet-cell-loading-inner{position:relative;top:40%;width:100%;margin:0 auto;text-align:center}.luckysheet-cell-loading-inner span{margin-left:10px}.luckysheet-cell-main{background-color:#fff;width:15px;height:15px;background-color:#f3f3f2;border-collapse:collapse;position:relative;overflow:hidden;outline-style:none;cursor:default}.luckysheet-menu,.luckysheet-scrollbars{scrollbar-base-color:#fff;scrollbar-track-color:#e7e7e7;scrollbar-darkshadow-color:#fff;scrollbar-3dlight-color:#fff;scrollbar-arrow-color:#757778;scrollbar-shadow-color:#bec1c4;scrollbar-highlight-color:#bec1c4;-ms-scroll-chaining:none;overflow:auto}.luckysheet-scrollbar-ltr{position:absolute;overflow:hidden;z-index:1003}.luckysheet-scrollbar-ltr div{height:1px;width:1px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button{height:0;width:0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:start{display:none}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:end{display:block}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button{border:1px solid #d9d9d9}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal{border-width:1px 0 0 0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical{border-width:0 0 0 1px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical{border-width:0 1px 0 0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:increment{background:no-repeat url(waffle_sprite.png) -663px -13px;width:15px;padding-left:1px;background-clip:border-box;border:1px solid #d9d9d9;border-width:1px 0 0 0;box-shadow:none;background-color:#f8f8f8;border-bottom:1px solid #d9d9d9}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:increment:hover{background:no-repeat url(waffle_sprite.png) -395px -62px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:increment:active{background:no-repeat url(waffle_sprite.png) -679px -13px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:decrement{border-left:1px solid #d9d9d9;border-right:1px solid #d9d9d9;background:no-repeat url(waffle_sprite.png) -283px -62px;width:17px;border-bottom:1px solid #d9d9d9}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:hover{background:no-repeat url(waffle_sprite.png) -145px -70px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:active{background:no-repeat url(waffle_sprite.png) -552px 0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:increment{padding-top:1px;background:no-repeat url(waffle_sprite.png) -531px -24px;border-left:1px solid #d9d9d9;height:15px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:increment:hover{background:no-repeat url(waffle_sprite.png) -570px -42px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:increment:active{background:no-repeat url(waffle_sprite.png) -83px -46px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:decrement{border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-left:1px solid #d9d9d9;background:no-repeat url(waffle_sprite.png) -631px -27px;height:17px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:decrement:hover{background:no-repeat url(waffle_sprite.png) -180px -58px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:decrement:active{background:no-repeat url(waffle_sprite.png) -776px -28px}.luckysheet-scrollbar-x{bottom:0;left:44px;overflow-x:scroll}.luckysheet-scrollbar-y{right:0;top:0;overflow-y:scroll}.luckysheet-cell-flow{margin:0;padding:0;border:none 0;position:relative;touch-action:manipulation;overflow:hidden}.luckysheet-cell-flow-clip{border-collapse:collapse;cursor:default;width:5000000px;touch-action:manipulation;overflow:hidden}.luckysheet-cell-flow-col{margin:0;padding:0;border:none 0;position:relative;touch-action:manipulation;overflow:hidden;float:left;direction:ltr}.luckysheet-cell-sheettable{position:relative;text-align:left;font-size:11pt;color:#000;text-decoration:none}.luckysheet-bottom-controll-row{position:absolute;height:30px;bottom:38px;left:0;z-index:1000}#luckysheet-bottom-add-row{padding:5px 20px;margin-right:5px;margin-top:-2px}#luckysheet-bottom-add-row-input{width:40px;min-width:40px}#luckysheet-bottom-return-top{padding:5px 6px;margin-left:10px;margin-top:-2px}.luckysheet-cell-flow-column{position:absolute;height:inherit;width:inherit;top:0;left:0;z-index:1;touch-action:manipulation}.luckysheet-cell-flow-column-line{position:absolute;border-right:1px solid #d4d4d4;height:inherit}.luckysheet-cell-flow-row{text-align:left;position:absolute;height:inherit;width:inherit;top:0;left:0;z-index:1;touch-action:manipulation}.luckysheet-cell-flow-row-line{position:absolute;border-bottom:1px solid #d4d4d4;width:inherit}.luckysheet-cell-selected-focus{position:absolute;pointer-events:none;z-index:14;margin:0;background:rgba(0,80,208,.15);display:none}.luckysheet-selection-copy{position:absolute;pointer-events:none;z-index:18;border:none;margin:0;display:none}.luckysheet-selection-copy .luckysheet-copy{position:absolute;z-index:18;background-color:transparent}.luckysheet-selection-copy-top{left:0;right:0;height:2px;top:0;background-position:bottom;background-image:url(EwaAntH.gif)}.luckysheet-selection-copy-right{top:0;bottom:0;width:2px;right:0;background-image:url(EwaAntV.gif)}.luckysheet-selection-copy-bottom{left:0;right:0;height:2px;bottom:0;background-image:url(EwaAntH.gif)}.luckysheet-selection-copy-left{top:0;bottom:0;width:2px;left:0;background-position:right;background-image:url(EwaAntV.gif)}.luckysheet-selection-copy-hc{position:absolute;top:0;right:0;bottom:0;left:0;border:2px dashed #12a5ff;z-index:8}.luckysheet-selection-highlight{position:absolute;z-index:14;border:none;margin:0;display:none}.luckysheet-formula-functionrange-highlight .luckysheet-copy{background-image:none;background:#0188fb;position:absolute;z-index:18;cursor:move;opacity:.9}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-top{top:-2px;border-top:2px solid #fff;border-bottom:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-right{right:-2px;border-left:2px solid #fff;border-right:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-bottom{bottom:-2px;border-top:2px solid #fff;border-bottom:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-left{left:-2px;border-left:2px solid #fff;border-right:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-hc{border:2px solid #5e5e5e;opacity:.03;z-index:initial}.luckysheet-selection-highlight-topleft{left:-3px;top:-3px;cursor:se-resize}.luckysheet-selection-highlight-topright{right:-3px;top:-3px;cursor:ne-resize}.luckysheet-selection-highlight-bottomleft{left:-3px;bottom:-3px;cursor:ne-resize}.luckysheet-selection-highlight-bottomright{right:-3px;bottom:-3px;cursor:se-resize}.luckysheet-formula-functionrange-highlight .luckysheet-highlight{position:absolute;z-index:19;border:1px solid #fff;background:#0188fb;width:6px;height:6px}.luckysheet-cell-selected-extend{position:absolute;pointer-events:none;z-index:16;border:1px dashed #0188fb;margin:-1px 0 0 -1px;display:none}.luckysheet-cell-selected-move{position:absolute;pointer-events:none;z-index:16;border:2px solid #0188fb;margin:-1px 0 0 -1px;display:none}.luckysheet-cell-selected{position:absolute;pointer-events:none;z-index:15;border:1px solid #0188fb;margin:-1px 0 0 -1px;background:rgba(1,136,251,.15);display:none}.luckysheet-cs-inner-border{pointer-events:none;border:1px solid #fff;position:absolute;top:0;bottom:0;left:0;right:0}.luckysheet-cs-fillhandle{position:absolute;width:6px;height:6px;bottom:-5px;cursor:crosshair;background-color:#0188fb;border:solid 1px #fff;z-index:16;pointer-events:auto;right:-5px}.luckysheet-cs-draghandle{position:absolute;cursor:move;background-color:#fff;opacity:.01;z-index:15;pointer-events:auto;border:2px solid #fff}.luckysheet-cs-draghandle-top{top:-4px;left:-2px;right:-2px;height:2px}.luckysheet-cs-draghandle-bottom{right:0;left:-2px;bottom:-4px;height:2px}.luckysheet-cs-draghandle-left{top:0;left:-4px;bottom:0;width:2px}.luckysheet-cs-draghandle-right{top:0;right:-4px;bottom:0;width:2px}.luckysheet-cs-touchhandle{display:none;position:absolute;width:16px;height:16px;padding:5px;z-index:100;pointer-events:auto;touch-action:auto}.luckysheet-cs-touchhandle:before{content:'';display:block;width:16px;height:16px;border:.5px solid rgba(0,0,0,.15);background-color:#fff;box-sizing:border-box;border-radius:50%}.luckysheet-cs-touchhandle-lt{left:-13px;top:-13px}.luckysheet-cs-touchhandle-lb{left:-13px;bottom:-13px}.luckysheet-cs-touchhandle-rt{right:-13px;top:-13px}.luckysheet-cs-touchhandle-rb{right:-13px;bottom:-13px}.luckysheet-cs-touchhandle .luckysheet-cs-touchhandle-btn{position:absolute;width:10px;height:10px;left:8px;top:8px;background-color:#018ffb;background-position:center;box-sizing:border-box;border-radius:50%;z-index:11}#luckysheet-dynamicArray-hightShow{position:absolute;pointer-events:none;z-index:15;border:1px solid #00f;margin:-1px 0 0 -1px;display:none}.luckysheet-scrollbars::-webkit-scrollbar-track{background-color:#fff;border:1px solid #d9d9d9}.luckysheet-scrollbar-x::-webkit-scrollbar-track{border-left:1px solid #d9d9d9;border-right:none}.luckysheet-scrollbar-y::-webkit-scrollbar-track{border-top:none;border-bottom:none}.luckysheet-scrollbars::-webkit-scrollbar{width:12px;height:12px;background-color:#fff}.luckysheet-scrollbars::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);background-clip:padding-box;border:solid transparent;border-radius:12px;border-width:2px 1px 1px 2px;box-shadow:inset 1px 1px 0 rgba(0,0,0,.1),inset 0 -1px 0 rgba(0,0,0,.07)}.luckysheet-scrollbars::-webkit-scrollbar-thumb:hover{background-color:#969696;border:1px solid #a0a0a0;border-radius:12px}.luckysheet-grdusedrange{position:absolute;visibility:hidden;width:1px;height:1px}.luckysheet-grdblkflowpush{margin:0;padding:0;border:none 0;width:1px}.luckysheet-grdblkpush{margin:0;padding:0;border:none 0;height:1px;float:left;direction:ltr}.luckysheet-cell-flow-data{position:absolute;height:inherit;width:inherit;top:0;left:0;z-index:1}.luckysheet-cell-flow-data-row{position:absolute;width:inherit}.luckysheet-cell-flow-data-cell{position:absolute;height:inherit}.luckysheet-cell-flow-data-value{position:absolute!important;bottom:0;letter-spacing:-.02em;white-space:nowrap;padding-left:2px;overflow:hidden}.luckysheet canvas{position:absolute}.luckysheetcolumeHeader{margin-left:-1px}.luckysheetrowHeader{margin-top:1px}.luckysheetsheettable{margin-left:-1px;margin-top:-1px}.luckysheet-cols-menu{max-height:100%;overflow-y:auto;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-box-shadow:0 2px 4px rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);-webkit-transition:opacity 218ms;-moz-transition:opacity 218ms;-o-transition:opacity 218ms;transition:opacity 218ms;background:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);cursor:default;font-size:13px;margin:0;outline:0;padding:6px 0;position:absolute;z-index:1004;box-sizing:border-box;user-select:none;display:none}.luckysheet-cols-menu .luckysheet-cols-menuitem{position:relative;color:#333;cursor:pointer;list-style:none;margin:0;padding:1px 6em 1px 20px;white-space:nowrap;padding-left:8px;vertical-align:middle;padding-right:24px;user-select:none}.luckysheet-cols-menu .luckysheet-cols-menuitem-hover,.luckysheet-cols-menu .luckysheet-cols-menuitem:hover{background:#efefef}.luckysheet-cols-menu .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{position:relative;color:#333;cursor:pointer;list-style:none;margin:0;padding:6px 7em 6px 30px;white-space:nowrap;user-select:none}.luckysheet-rightgclick-menu .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{position:relative;color:#333;cursor:pointer;list-style:none;margin:0;padding:6px 15px 6px 20px;white-space:nowrap;user-select:none}#luckysheet-cols-menu .luckysheet-cols-menuitem,#luckysheet-pivotTable-config-option .luckysheet-cols-menuitem,.luckysheet-filter-menu .luckysheet-cols-menuitem{padding-right:10px;padding-left:12px}#luckysheet-pivotTable-config-option-sumtype .luckysheet-cols-menuitem{padding-right:15px;padding-left:12px;padding-top:1px;padding-bottom:1px}#luckysheet-cols-menu .luckysheet-cols-menuitem-content,.luckysheet-filter-menu .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{padding-right:10px;padding-left:12px}#luckysheet-sheet-list .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{padding-right:0;max-width:430px;min-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.luckysheet-filter-menu div.luckysheet-cols-menuitem{padding-top:0;padding-bottom:0}.luckysheet-filter-submenu div.luckysheet-cols-menuitem{padding-top:1px;padding-bottom:1px}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem{padding-top:2px;padding-bottom:0;cursor:default}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content{padding-top:2px;padding-bottom:0;cursor:default}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content input{height:24px;width:191px;padding-right:25px;padding-left:3px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content input:focus,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content input:focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);box-shadow:inset 0 1px 2px rgba(0,0,0,.3);border:1px solid #4d90fe;outline:0}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content .luckysheet-filter-byvalue-input-icon,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content .luckysheet-pivotTableFilter-byvalue-input-icon{position:absolute;right:17px;top:7px}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem:hover,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem:hover{background:#fff}.luckysheet-filter-menu .luckysheet-cols-menuitem:last-child:hover{background:#fff}.luckysheet-filter-menu .luckysheet-cols-menuitem:last-child,.luckysheet-filter-menu .luckysheet-cols-menuitem:last-child .luckysheet-cols-menuitem-content{cursor:default}#luckysheet-filter-byvalue-select,#luckysheet-pivotTableFilter-byvalue-select{min-height:100px;width:200px}.luckysheet-filter-menu .luckysheet-mousedown-filter-byvalue-btn span,.luckysheet-filter-menu .luckysheet-mousedown-pivotTableFilter-byvalue-btn span{color:#00f;cursor:pointer;text-decoration:underline}.luckysheet-filter-menu .luckysheet-mousedown-filter-byvalue-btn div,.luckysheet-filter-menu .luckysheet-mousedown-pivotTableFilter-byvalue-btn div{position:absolute;right:14px;top:0;font-size:18px}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input{padding-left:8px;padding-right:8px;margin-top:3px;display:none}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input input{height:24px;width:100%;padding-right:3px;padding-left:3px;margin-left:-3px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input2 input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input2 input{height:24px;width:92px;padding-right:3px;padding-left:3px;margin-left:-3px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input2 span,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input2 span{margin-left:2px;margin-right:5px}.luckysheet-menuseparator{border-top:1px solid #ebebeb;margin-top:6px;margin-bottom:6px}.luckysheet-submenu-arrow{-webkit-transition:all 218ms;-moz-transition:all 218ms;-o-transition:all 218ms;transition:all 218ms;font-size:12px;left:auto;right:-15px;padding-top:1px;padding-right:0;position:absolute;text-align:right;opacity:.5;color:#000;user-select:none;font-family:Arial;line-height:100%}#luckysheet-pivotTable-config-option-sumtype .luckysheet-submenu-arrow{right:-5px;font-size:16px;padding-top:0;color:#00f}#luckysheet-filter-byvalue-select table,#luckysheet-pivotTableFilter-byvalue-select table{table-layout:fixed}#luckysheet-filter-byvalue-select tr td,#luckysheet-pivotTableFilter-byvalue-select tr td{padding:2px 3px}#luckysheet-filter-byvalue-select tr:hover td,#luckysheet-pivotTableFilter-byvalue-select tr:hover td{background:#e1e1e1}.luckysheet-cols-menu .cf:after,.luckysheet-cols-menu .cf:before{content:"";display:table}.luckysheet-cols-menu .cf:after{clear:both}#luckysheet-filter-byvalue-select .yearBox .monthList,#luckysheet-pivotTableFilter-byvalue-select .yearBox .monthList{padding-left:20px}#luckysheet-filter-byvalue-select .yearBox .dayList,#luckysheet-pivotTableFilter-byvalue-select .yearBox .dayList{padding-left:20px}#luckysheet-filter-byvalue-select .yearBox .fa-caret-right,#luckysheet-pivotTableFilter-byvalue-select .yearBox .fa-caret-right{padding:0 2px;float:left;margin-top:3px;cursor:pointer}#luckysheet-filter-byvalue-select .count,#luckysheet-pivotTableFilter-byvalue-select .count{color:gray;margin-left:5px}#luckysheet-filter-byvalue-select input[type=checkbox],#luckysheet-pivotTableFilter-byvalue-select input[type=checkbox]{width:auto;height:auto;float:left}#luckysheet-filter-orderby-color-submenu{font-size:12px}#luckysheet-filter-orderby-color-submenu .title{padding:10px;font-weight:600;color:#333;background-color:#f4f4f4;text-align:center}#luckysheet-filter-orderby-color-submenu .item{padding:5px 40px 5px 20px;cursor:pointer;position:relative}#luckysheet-filter-orderby-color-submenu .item:hover{background-color:#d3d3d3}#luckysheet-filter-orderby-color-submenu .item label{display:block;width:70px;height:20px;border:1px solid #d1d1d1}#luckysheet-filter-orderby-color-submenu .item input[type=checkbox]{position:absolute;right:10px;top:6px}#luckysheet-copy-content{position:fixed;height:0;width:0;left:-100px;padding-left:999999px}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:4px 8px;font-size:14px;line-height:1.42857143;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;opacity:.65;-webkit-box-shadow:none;box-shadow:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#2d7ff9;border-color:transparent}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:transparent}.btn-primary:hover{color:#fff;background-color:#5391ff;border-color:transparent}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#5391ff}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:transparent}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:transparent}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-primary,.label-default,.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{background:#0188fb;border-color:transparent}.btn-primary:focus,.btn-primary:hover{background:#5391ff;border-color:transparent}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.luckysheet-change-size-line,.luckysheet-cols-change-size,.luckysheet-rows-change-size{position:absolute;z-index:12}.luckysheet-cols-change-size{width:5px;height:100%;background:#0188fb;cursor:ew-resize;opacity:0}.luckysheet-rows-change-size{width:100%;height:5px;background:#0188fb;cursor:ns-resize;opacity:0}.luckysheet-change-size-line{border-color:#0188fb;border-style:solid;z-index:15;display:none}.luckysheet-count-show{position:absolute;z-index:15;background:rgba(76,76,76,.8);color:#fff;padding:2px 3px;border-radius:3px;transition:all .3s;display:none;white-space:nowrap}.luckysheet-row-count-show{text-align:center}.luckysheet-row-count-show div{writing-mode:vertical-rl;writing-mode:vertical-rl;-ms-writing-mode:initial}.luckysheet-row-count-show div:last-child{writing-mode:initial}#luckysheet-sheet-list{max-height:60%;overflow:auto}#luckysheet-sheet-list .luckysheet-cols-menuitem{padding-left:0;padding-right:10px}#luckysheet-sheet-list .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{padding-left:5px}#luckysheet-sheet-list .icon{width:15px;margin-left:4px;display:inline-block}.luckysheet-input-box{position:absolute;font:normal normal 400 13px arial,sans,sans-serif;text-align:left;top:-10000px;max-height:9900px;max-width:9900px;border:2px #5292f7 solid;padding:0 2px;margin:0;z-index:15;resize:none;overflow:auto;overflow:initial;white-space:pre-wrap;outline:0;-webkit-box-shadow:0 2px 5px rgba(0,0,0,.4);-moz-box-shadow:0 2px 5px rgba(0,0,0,.4);box-shadow:0 2px 5px rgba(0,0,0,.4);word-wrap:break-word}.luckysheet-cell-input{width:100%;height:100%;margin:0;outline:0;cursor:text;-webkit-user-modify:read-write-plaintext-only;white-space:pre-wrap;-webkit-transform:translateZ(0)}#luckysheet-rich-text-editor{-webkit-user-modify:read-write}.luckysheet-input-box-index{display:none;position:absolute;height:14px;line-height:16px;font-size:12px;padding:1px 6px;background-color:#5292f7;border-radius:2px;box-shadow:0 1px 2px rgba(0,0,0,.5);color:#fff}.luckysheet-modal-dialog{-webkit-box-shadow:0 4px 16px rgba(0,0,0,.2);-moz-box-shadow:0 4px 16px rgba(0,0,0,.2);box-shadow:0 4px 16px rgba(0,0,0,.2);background:#fff;background-clip:padding-box;border:1px solid #acacac;border:1px solid rgba(0,0,0,.333);outline:0;position:absolute;color:#000;padding:30px 42px;z-index:100002}.luckysheet-modal-dialog-mask{position:absolute;height:100%;width:100%;background:#fff;opacity:.6;display:none;left:0;top:0;z-index:1010}.luckysheet-modal-dialog-title{background-color:#fff;color:#000;cursor:default;font-size:16px;font-weight:400;line-height:24px;margin:0 0 16px}.luckysheet-modal-dialog-title-close{height:11px;opacity:.7;padding:17px;position:absolute;right:0;top:0;width:11px;color:#d4d4d4;outline:0}.luckysheet-modal-dialog-chart{padding:20px 10px;webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.luckysheet-modal-dialog-resize{position:absolute;border:2px solid #0188fb;margin:0;padding:0;top:-2px;left:-2px;bottom:-2px;right:-2px;pointer-events:none}.luckysheet-modal-dialog-resize-item{position:absolute;height:6px;width:6px;background:#fff;border:2px solid #0188fb;pointer-events:all;border-radius:6px}.luckysheet-modal-dialog-resize-item-lt{left:-6px;top:-6px;cursor:se-resize}.luckysheet-modal-dialog-resize-item-mt{left:50%;top:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-modal-dialog-resize-item-rt{right:-6px;top:-6px;cursor:ne-resize}.luckysheet-modal-dialog-resize-item-lm{top:50%;left:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-modal-dialog-resize-item-rm{top:50%;right:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-modal-dialog-resize-item-lb{left:-6px;bottom:-6px;cursor:ne-resize}.luckysheet-modal-dialog-resize-item-mb{left:50%;bottom:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-modal-dialog-resize-item-rb{right:-6px;bottom:-6px;cursor:se-resize}.luckysheet-modal-dialog-controll{position:absolute;margin:0;padding:0;right:-35px;font-size:14px;top:0}.luckysheet-modal-controll-btn{height:13px;padding:8px;width:13px;color:#d4d4d4;outline:0;border:1px solid #b6b6b6;display:block;background:#fff;margin-bottom:3px;cursor:pointer;transition:all .2s;-moz-transition:all .2s;-webkit-transition:all .2s;-o-transition:all .2s}.luckysheet-modal-controll-btn:hover{border:1px solid #a1a1a1;color:#0188fb}.luckysheet-modal-controll-btn:active{border:1px solid #bbb;background:#efefef;color:#0188fb}.luckysheet-modal-controll-del{font-size:16px}.luckysheet-modal-controll-max-close{font-size:22px;width:42px;height:42px;line-height:42px;background:#383838;opacity:.7;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;color:#fff;position:absolute;right:0;top:0;z-index:100000;text-align:center}.luckysheet-modal-controll-max-close:hover{background:#0188fb;cursor:pointer}.luckysheet-sort-item-close{margin-right:3px;font-size:14px;color:#bbb;cursor:pointer}.luckysheet-sort-item-close:hover{color:#494949}.luckysheet-modal-dialog-title-close:hover{color:#5e5e5e;cursor:pointer}.luckysheet-modal-dialog-content{background-color:#fff;line-height:1.4em;word-wrap:break-word}.luckysheet-modal-dialog-buttons{margin-top:10px}.luckysheet-modal-dialog-buttons button{margin-right:10px}.luckysheet-modal-dialog-title-text span{font-family:Arial}.luckysheet-sort-modal{font-size:12px}.luckysheet-sort-modal label input,.luckysheet-sort-modal label span{vertical-align:middle}.luckysheet-sort-modal table,.luckysheet-sort-modal>div{margin-bottom:10px}.luckysheet-sort-modal table tr{margin-bottom:10px}.luckysheet-sort-modal table tr td{padding:5px;white-space:nowrap;border-top:1px solid #ffc6c6}.luckysheet-sort-modal table tr td>div:first-child{margin-bottom:8px}.luckysheet-sort-modal table tr td select{max-width:180px;min-width:50px}.luckysheet-sort-modal table tr:first-child td{border-top:none}.luckysheet-filter-options{color:#897bff;cursor:pointer;position:absolute;z-index:20;border:1px solid #897bff;border-radius:3px;top:3px;margin-left:0;display:none;padding:0 4px;font-size:12px;height:15px;background:#fff}.luckysheet-filter-options:hover{color:#fff;border:1px solid #fff;background:#897bff}.luckysheet-filter-options-active{color:#fff;border:1px solid #897bff;background:#897bff}.luckysheet-flat-menu-button{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;background-color:#f5f5f5;background-image:-webkit-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:-moz-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:-ms-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:-o-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:linear-gradient(to bottom,#f5f5f5,#f1f1f1);border:1px solid #dcdcdc;color:#333;cursor:default;font-size:11px;font-weight:700;line-height:27px;list-style:none;margin:0 2px;min-width:46px;outline:0;padding:0 18px 0 6px;text-align:left;text-decoration:none;position:relative;padding-left:15px}.luckysheet-flat-menu-button:hover{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;background-color:#f5f5f5;background-image:-webkit-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:-moz-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:-ms-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:-o-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:linear-gradient(to bottom,#f1f1f1,#f5f5f5);border:1px solid #d0d0d0;color:#000}.luckysheet-flat-menu-button div{display:inline-block;vertical-align:middle;position:absolute;right:15px}.luckysheet-data-visualization{width:60%;min-width:860px}.luckysheet-data-pivotTable-selection,.luckysheet-data-visualization-selection{width:30%;min-width:200px;display:none}.luckysheet-data-visualization-chart{width:50%;height:50%}.luckysheet-data-visualization-chart .luckysheet-modal-dialog-content{width:100%;height:100%;overflow:hidden}.luckysheet-datavisual-modal{font-size:12px;height:100%;width:100%}.luckysheet-datavisual-left{display:inline-block;width:100%;height:100%;position:relative;overflow:hidden}.luckysheet-datavisual-tabs{border-bottom:1px solid #dedede;width:80%;height:26px;padding-left:20px}.luckysheet-datavisual-tabs .luckysheet-datavisual-tab{padding:0 5px;text-align:center;display:inline-block;cursor:pointer;border:1px solid #fff;border-bottom:none;height:24px;line-height:24px;background:#fff;color:#777}.luckysheet-datavisual-tabs .luckysheet-datavisual-tab:hover{color:#000}.luckysheet-datavisual-tabs .luckysheet-datavisual-tab-active{border:1px solid #dedede;border-bottom:none;cursor:default;height:26px;color:#000}.luckysheet-datavisual-tab-content{position:absolute;top:28px;bottom:0;width:100%;display:none}.luckysheet-datavisual-quick-menu{width:90px;overflow:auto;margin-top:5px}.luckysheet-datavisual-quick-menu::-webkit-scrollbar{display:none}.luckysheet-datavisual-quick-menu>div{text-align:left;padding:4px 4px;border-right:3px solid #fff;color:#777;cursor:pointer;line-height:1.4em;word-wrap:break-word}.luckysheet-datavisual-quick-menu>div:hover{color:#000}.luckysheet-datavisual-quick-menu>div i{width:15px}.luckysheet-datavisual-quick-menu>div:hover i{color:#ff7e7e}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active{border-right:3px solid #ff7e7e;color:#000;font-weight:700}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active:hover i{color:#000}.luckysheet-datavisual-quick-range{padding:5px 0}.luckysheet-datavisual-range-container{background:#fff;border:1px solid #d9d9d9;border-top:1px solid silver;min-width:20px;width:100%;max-width:200px;display:inline-block}.luckysheet-datavisual-range-container-focus{border:1px solid #4d90fe;box-shadow:inset 0 1px 2px rgba(0,0,0,.3);outline:0}.luckysheet-datavisual-range-input,.luckysheet-datavisual-range-input:focus{background:0 0!important;border:none!important;box-sizing:border-box;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;height:25px;margin:0;outline:0!important;padding:1px 8px!important;width:100%}.luckysheet-datavisual-range-button-container{overflow:hidden;padding:0 0 0 8px;text-align:right;width:21px}.luckysheet-datavisual-range-button-container div{padding:2px 10px 0 10px;font-size:18px;cursor:pointer;color:#6598f3}.luckysheet-datavisual-range-button-container div:hover{color:#ff7e7e}.luckysheet-datavisual-quick-m{margin-top:5px}.luckysheet-datavisual-quick-list{left:90px;right:0;bottom:0;top:110px;position:absolute;overflow:auto;border-top:1px solid #e5e5e5;padding:5px 3px 35px 3px}.luckysheet-datavisual-quick-list-title{padding:4px 6px;background:#e5e5e5;margin-top:10px}.luckysheet-datavisual-quick-list-ul{overflow:hidden}.luckysheet-datavisual-quick-list-item{display:inline-block;margin:5px 8px;border:1px solid #dadada;width:100px;height:80px}.luckysheet-datavisual-quick-list-item:hover{border:1px solid #ff7e7e;box-shadow:0 0 20px #ff7e7e}.luckysheet-datavisual-quick-list-item img{display:inline-block;width:100px;height:80px}.luckysheet-datavisual-quick-list-item-active{border:1px solid #6598f3;box-shadow:0 0 20px #6598f3}.jfk-tooltip{z-index:300000}.jfk-tooltip-hide{-webkit-transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;-moz-transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;-o-transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;opacity:0;left:20px!important;top:20px!important;visibility:hidden!important}.jfk-tooltip{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;-webkit-transition:visibility 0,opacity .13s ease-in;-moz-transition:visibility 0,opacity .13s ease-in;-o-transition:visibility 0,opacity .13s ease-in;transition:visibility 0,opacity .13s ease-in;background-color:#2a2a2a;border:1px solid #fff;color:#fff;cursor:default;display:block;font-size:11px;font-weight:700;margin-left:-1px;opacity:1;padding:7px 9px;position:absolute;visibility:visible;white-space:pre-wrap;word-break:break-all;word-break:break-word}.jfk-tooltip-arrowup{top:-6px}.jfk-tooltip-arrow{pointer-events:none;position:absolute}.jfk-tooltip-arrow .jfk-tooltip-arrowimplafter{border:5px solid}.jfk-tooltip-arrow .jfk-tooltip-arrowimplbefore{border:6px solid}.jfk-tooltip-arrow .jfk-tooltip-arrowimplafter,.jfk-tooltip-arrow .jfk-tooltip-arrowimplbefore{content:'';display:block;height:0;position:absolute;width:0}.jfk-tooltip-arrowup .jfk-tooltip-arrowimplafter{border-top-width:0;top:1px}.jfk-tooltip-arrowdown .jfk-tooltip-arrowimplafter,.jfk-tooltip-arrowup .jfk-tooltip-arrowimplafter{border-color:#2a2a2a transparent;left:-5px}.jfk-tooltip-arrowup .jfk-tooltip-arrowimplbefore{border-top-width:0}.jfk-tooltip-arrowdown .jfk-tooltip-arrowimplbefore,.jfk-tooltip-arrowup .jfk-tooltip-arrowimplbefore{border-color:#fff transparent;left:-6px}.luckysheet-datavisual-config{position:relative;width:100%;height:97%;overflow:auto;top:0}.luckysheet-datavisual-config input{outline:0}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-title{position:relative;width:97%;height:33px;background:#f5f5f5;border:1px solid #e5e5e5;margin-top:30px;line-height:30px;font-weight:700;color:#d14836;cursor:pointer}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-title:hover{background:#efefef;border:1px solid #e0e0e0}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-content{position:relative;width:97%;border:1px solid #e5e5e5;border-top:1px solid #fff;display:none;color:#505050;padding-bottom:20px}.luckysheet-datavisual-config-input,.luckysheet-datavisual-config-input-no{background:#fff;border:1px solid #d9d9d9;border-top:1px solid silver;min-width:50px;width:90%;display:inline-block;height:24px;line-height:24px;padding:3px}.luckysheet-datavisual-config-input-no:focus,.luckysheet-datavisual-config-input:focus{border:1px solid #4d90fe;box-shadow:inset 0 1px 2px rgba(0,0,0,.3);outline:0}.luckysheet-datavisual-content-row{margin-left:15px;margin-bottom:5px;margin-top:15px;height:30px;line-height:30px}.luckysheet-datavisual-content-column{display:inline-block;position:relative}.luckysheet-datavisual-content-column-title{text-align:left;font-size:14px}.luckysheet-datavisual-content-column-right{text-align:right}.luckysheet-datavisual-content-rowsplit{height:5px;border-top:1px solid #e5e5e5;width:100%;margin-top:25px}.luckysheet-datavisual-content-rowsplit-sub{height:2px;border-top:1px dashed #e5e5e5;width:90%;margin:0 auto;margin-top:18px;text-align:center}.sp-replacer{padding:2px;border:solid 1px #e5e5e5;background:#f5f5f5}.ui-visual-focus{box-shadow:none}.luckysheet-datavisual-config-slider,.luckysheet-datavisual-config-slider-range{width:70%;display:inline-block}.luckysheet-datavisual-config-slider-range .luckysheet-slider-handle{width:45px;height:26px;top:50%;margin-top:-13px;text-align:center;line-height:26px}.luckysheet-datavisual-content-row-subtitle{display:none}.ui-selectmenu-button.ui-button{text-align:left;white-space:nowrap;width:48%}.luckysheet-datavisual-content-column-italic{font-style:italic;font-weight:700;font-family:'Times New Roman',Times,serif}.luckysheetChartAxisShow{display:none}.luckysheet-datavisual-chart-axistitle-show{display:none}.luckysheetChartseriesShow{display:none}#luckysheetswichxy-button,#piecutselect-button{width:70%}.ui-selectmenu-menu .ui-menu.customicons .ui-menu-item-wrapper{padding:.5em 0 .5em 3em}.ui-selectmenu-menu .ui-menu.customicons .ui-menu-item .ui-icon{height:26px;width:26px;top:.1em;background-image:none}#luckysheetscatterselectshow-menu .ui-state-active,#luckysheetswichseries-menu .ui-state-active,#pie0cutselect-menu .ui-state-active,#pie1cutselect-menu .ui-state-active,#pie2cutselect-menu .ui-state-active{border:1px solid #f5f5f5;background:#f5f5f5;color:#333}.ui-front{z-index:100003}.luckysheet-datavisual-skin-menu{top:5px;position:absolute;left:0;width:90%;height:30px}#luckysheet-chart-theme-content{height:21px;width:120px}.luckysheet-datavisual-skin-c{position:absolute;left:0;top:38px;bottom:0;width:100%;overflow:auto}.luckysheet-datavisual-skin-c .luckysheet-datavisual-skin-item{display:inline-block;width:46%;height:152px;margin-right:5px;border:4px solid #efefef;border-radius:4px;position:relative;cursor:pointer}.luckysheet-datavisual-skin-c .luckysheet-datavisual-skin-item-more{display:inline-block;width:94%;height:32px;position:relative;cursor:pointer;font-size:20px;line-height:32px;margin-bottom:20px;text-align:center}.luckysheet-datavisual-skin-item .luckysheet-datavisual-skin-canvas,.luckysheet-datavisual-skin-item .luckysheet-datavisual-skin-cover{position:absolute;width:100%;height:100%;bottom:0}.luckysheet-datavisual-skin-item .luckysheet-datavisual-skin-cover{background-color:rgba(0,0,0,.4);color:#fff;font-size:14px;height:30%;transition:opacity .15s ease;-moz-transition:opacity .15s ease;-webkit-transition:opacity .15s ease;-o-transition:opacity .15s ease}.luckysheet-datavisual-skin-item:hover .luckysheet-datavisual-skin-cover{opacity:1;z-index:2}.luckysheet-datavisual-skin-cover .luckysheet-datavisual-skin-cover-txt{position:absolute;width:80%;height:80%;top:10%;left:10%;text-align:center}.luckysheet-chart-point-config{position:relative;width:100%;height:100%;margin:0;font-size:12px}.luckysheet-chart-point-config-set{position:absolute;width:60%;height:100%;left:0;top:0}.luckysheet-chart-point-config-left{position:absolute;height:100%;width:50%;left:0;top:0}.luckysheet-chart-point-config-left-top{position:absolute;top:0;height:120px;width:100%}.luckysheet-chart-point-searchcondition{position:absolute;top:10px;bottom:10px;left:10px;right:10px}.luckysheet-chart-point-config-left-mid{position:absolute;top:120px;height:25px;width:100%;text-align:left;margin-left:20px;line-height:35px}.luckysheet-chart-point-config-left-mid span{color:#00f;cursor:pointer;text-decoration:underline;font-size:12px}.luckysheet-chart-point-config-left-bottom{position:absolute;top:0;bottom:0;margin-top:145px;width:100%}.luckysheet-chart-point-searchitem-c{position:absolute;width:100%;height:100%;overflow:hidden;overflow-y:auto;cursor:default}.luckysheet-chart-point-searchitem{display:inline-block;margin-left:5px;margin-top:5px;width:90px;border:2px solid #f5f5f5;background:#fff;text-align:center;padding:5px 0;user-select:none;cursor:default;position:relative}.luckysheet-chart-point-searchitem-selected{position:absolute;color:#616161;left:-6px;top:-10px;font-size:20px;display:none;font-weight:400}.luckysheet-chart-point-searchitem-active{box-shadow:0 0 4px #656565}.luckysheet-chart-point-searchitem-active .luckysheet-chart-point-searchitem-selected{display:block}.luckysheet-chart-point-searchitem-name{font-size:12px;cursor:default;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.luckysheet-chart-point-searchitem-dim{font-size:12px;opacity:.7;cursor:default;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#luckysheet-chart-point-selectedhelp{pointer-events:none;position:absolute;border:1px dotted #535353}.luckysheet-chart-point-config-right{position:absolute;height:100%;width:50%;top:0;right:0}.luckysheet-chart-point-itemconfig{position:absolute;top:10px;bottom:10px;left:10px;right:10px;overflow:auto}.luckysheet-chart-point-config-chart{position:absolute;width:40%;height:100%;right:0;top:0}.luckysheet-chart-point-config-chart-c{width:100%;height:80%;top:10%;position:relative}@media (max-width:776px){.luckysheet-chart-point-config-set{width:90%}.luckysheet-chart-point-config-chart{width:10%}}@media (min-width:768px){.luckysheet-chart-point-config-set{width:80%}.luckysheet-chart-point-config-chart{width:20%}}@media (min-width:1024px){.luckysheet-chart-point-config-set{width:70%}.luckysheet-chart-point-config-chart{width:30%}}@media (min-width:1280px){.luckysheet-chart-point-config-set{width:60%}.luckysheet-chart-point-config-chart{width:40%}}@media (min-width:1680px){.luckysheet-chart-point-config-set{width:50%}.luckysheet-chart-point-config-chart{width:50%}}.luckysheet-modal-dialog-slider{top:1px;bottom:1px;position:absolute;right:0;width:260px;border:1px solid #e5e5e5;z-index:1004;box-shadow:0 2px 4px rgba(0,0,0,.2);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheet-modal-dialog-slider .luckysheet-modal-dialog-slider-title{background:#333;color:#fff;height:39px;width:100%;position:absolute;top:0;left:0;line-height:39px;font-size:13px}.luckysheet-modal-dialog-slider .luckysheet-modal-dialog-slider-title>span:first-child{margin-left:5px;font-weight:700}.luckysheet-modal-dialog-slider .luckysheet-modal-dialog-slider-title>span:last-child{position:relative;float:right;margin-right:20px;cursor:pointer}.luckysheet-modal-dialog-slider-content{background:#efefef;margin-top:39px;width:100%;position:absolute;top:0;bottom:0;font-size:12px}.luckysheet-modal-dialog-slider-range{background:#e1e1de;color:#1b1b19;height:40px;font-size:13px;line-height:40px}.luckysheet-modal-dialog-slider-range>div:first-child{font-weight:700;overflow:hidden;text-overflow:ellipsis;float:left;max-width:170px;margin-right:10px;margin-left:5px;white-space:nowrap}.luckysheet-modal-dialog-slider-range>div:last-child{color:#00f;cursor:pointer;float:left}.luckysheet-modal-dialog-slider-list{width:250px;height:320px;overflow-y:scroll;margin:5px 0;margin-left:5px;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5;background:#fff}.luckysheet-modal-dialog-slider-list-title{height:20px;line-height:25px;padding:0 5px}.luckysheet-modal-dialog-slider-list .luckysheet-modal-dialog-slider-list-item{padding:0 4px;position:relative;width:228px;height:25px;user-select:none;border:1px solid #fff}.luckysheet-modal-dialog-slider-list .luckysheet-modal-dialog-slider-list-item:hover{background:#fff6cb;border:1px solid #ffe463}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-name{cursor:pointer;height:25px;line-height:25px;cursor:move;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:absolute;left:22px;right:40px;top:0}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected{width:20px;cursor:pointer;text-align:center;position:absolute;left:0;top:0;height:25px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected i{margin-top:4px;font-size:16px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected div{border:1px solid #9c9c9c;top:4px;left:1px;position:absolute;height:14px;width:14px;-moz-box-shadow:1px 1px 1px #dbdbdb inset;-webkit-box-shadow:1px 1px 1px #dbdbdb inset;box-shadow:1px 1px 1px #dbdbdb inset}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected div:hover{border:1px solid #5e5e5e}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered{width:20px;cursor:pointer;text-align:center;position:absolute;right:20px;top:2px;height:25px;display:none}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered i{margin-top:2px;font-size:16px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered:hover i{color:#fb8686}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered i.fa-times{right:0;bottom:3px;color:red;font-size:9px;position:absolute}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filter{width:20px;cursor:pointer;text-align:center;position:absolute;right:0;top:0;height:25px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filter i{margin-top:2px;font-size:16px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filter:hover i{color:#fb8686}.luckysheet-modal-dialog-slider-config-c{width:100%;position:absolute;margin-top:390px;top:0;bottom:3px}.luckysheet-modal-dialog-slider-config{height:50%;width:50%;position:absolute}.luckysheet-modal-dialog-slider-config>div:first-child{color:#1b1b19;font-size:13px;height:20px;line-height:20px;padding-left:5px}.luckysheet-modal-dialog-slider-config>div:first-child span{font-weight:700;font-weight:700;overflow:hidden}.luckysheet-modal-dialog-slider-config .luckysheet-modal-dialog-slider-config-list{position:absolute;margin-top:22px;margin-left:5px;left:0;right:5px;top:0;bottom:3px;border:1px solid #e5e5e5;user-select:none;overflow-y:auto;background:#fff}.luckysheet-modal-dialog-slider-config-list .luckysheet-modal-dialog-slider-config-item{position:relative;height:19px;line-height:19px;font-size:12px;border:1px solid #88adfd;background:#aac1fe;margin:2px}.luckysheet-modal-dialog-slider-config-list .luckysheet-modal-dialog-slider-config-item:hover{border:1px solid #0188fb;background:#5f9afc}.luckysheet-modal-dialog-slider-config-item-txt{position:absolute;height:100%;left:5px;right:25px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:move}.luckysheet-modal-dialog-slider-config-item-icon{position:absolute;height:100%;width:15px;right:0;top:-4px;cursor:pointer;font-size:14px}.luckysheet-modal-dialog-slider-config-item-icon:hover{color:#fa7272}.luckysheet-modal-dialog-config-filter{top:0;left:0}.luckysheet-modal-dialog-config-column{top:0;left:50%}.luckysheet-modal-dialog-config-row{top:50%;left:0}.luckysheet-modal-dialog-config-value{top:50%;left:50%}#luckysheet-modal-dialog-slider-pivot-move{position:absolute;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px dotted #000;color:#000;font-size:14px;opacity:.6;z-index:1005;padding:3px 8px;pointer-events:none;user-select:none}.luckysheet-modal-dialog-slider-chart{width:445px}.luckysheet-modal-dialog-slider-chart .luckysheet-modal-dialog-slider-title{background:#b94045}.luckysheet-modal-dialog-slider-chart .luckysheet-modal-dialog-slider-content{background:#fff}#luckysheet-dialog-pivotTable-clearitem{color:#00f;cursor:pointer;float:right;margin-right:30px}.luckysheet-freezebar-drop,.luckysheet-freezebar-handle{position:absolute;z-index:999}.luckysheet-freezebar-vertical-handle{width:4px;display:none}.luckysheet-freezebar-vertical-drop{width:4px}.luckysheet-freezebar-active .luckysheet-freezebar-vertical-handle{display:block;z-index:1003}.luckysheet-freezebar-vertical-handle-bar{width:2px;background:#dbe5f7;border-color:#a5c6fe;border-style:solid;border-width:0 1px;opacity:.45;margin-top:19px;top:0;bottom:0}.luckysheet-freezebar-vertical-handle-title{width:4px;background:#9dbefb;opacity:.8;height:19px;top:0}.luckysheet-freezebar-drop-bar,.luckysheet-freezebar-handle-bar{position:absolute;z-index:7}.luckysheet-freezebar-vertical-drop-bar{width:2px;background:rgba(0,0,0,.45);border-width:2px 1px 2px 2px;margin-top:19px;top:0;bottom:0}.luckysheet-freezebar-vertical-drop-title{width:2px;background:#bcbdbc;height:19px;top:0}.luckysheet-freezebar-active .luckysheet-freezebar-vertical-drop-bar,.luckysheet-freezebar-hover .luckysheet-freezebar-vertical-drop-bar{background:#c1c1c1;width:4px}.luckysheet-freezebar-active .luckysheet-freezebar-vertical-drop-title,.luckysheet-freezebar-hover .luckysheet-freezebar-vertical-drop-title{background:#5d88db;width:4px}.luckysheet-freezebar-horizontal-handle{height:4px;display:none}.luckysheet-freezebar-horizontal-drop{height:4px}.luckysheet-freezebar-active .luckysheet-freezebar-horizontal-handle{display:block;z-index:1003}.luckysheet-freezebar-horizontal-handle-bar{height:2px;background:#dbe5f7;border-color:#a5c6fe;border-style:solid;border-width:1px 0;opacity:.45;margin-left:45px;left:0;right:0}.luckysheet-freezebar-horizontal-handle-title{height:4px;background:#9dbefb;opacity:.8;width:45px;left:0}.luckysheet-freezebar-horizontal-drop-bar{height:2px;overflow:hidden;background:rgba(0,0,0,.45);border-width:2px 2px 1px 2px;margin-left:45px;left:0;right:0}.luckysheet-freezebar-horizontal-drop-title{height:2px;background:#bcbdbc;width:45px;left:0}.luckysheet-freezebar-active .luckysheet-freezebar-horizontal-drop-bar,.luckysheet-freezebar-hover .luckysheet-freezebar-horizontal-drop-bar{background:#c1c1c1;height:4px}.luckysheet-freezebar-active .luckysheet-freezebar-horizontal-drop-title,.luckysheet-freezebar-hover .luckysheet-freezebar-horizontal-drop-title{background:#5d88db;height:4px}#luckysheet-functionbox-container{height:100%;padding-left:10px;overflow:hidden;position:absolute;padding:0;top:0;left:185px;right:10px;border-left:1px solid #e5e5e5}#luckysheet-functionbox-container>div{height:100%;overflow-x:hidden;overflow-y:auto;position:relative}#luckysheet-functionbox{bottom:6px;left:0;position:absolute;right:0;top:6px;resize:none;font-family:arial,sans,sans-serif;font-size:14px;line-height:14px;background-color:#fff;padding:0 5px}#luckysheet-functionbox .luckysheet-functionbox-cell-input{word-wrap:break-word;-webkit-nbsp-mode:space;-webkit-line-break:after-white-space}.luckysheet-functionbox-cell-input{width:100%;height:100%;margin:0;outline:0;cursor:text;-webkit-user-modify:read-write-plaintext-only;white-space:pre-wrap;-webkit-transform:translateZ(0);background-color:#fff}.luckysheet-formula-text-color{color:#000}.luckysheet-formula-text-string{color:#228b22}.luckysheet-formula-search-c{position:absolute;left:50%;top:50%;border:1px solid rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);color:#535353;font-size:12px;background:#fff;z-index:1003;width:300px;display:none}.luckysheet-formula-search-c .luckysheet-formula-search-item{background:#fff;padding:5px 10px;cursor:pointer}.luckysheet-formula-search-c .luckysheet-formula-search-item .luckysheet-formula-search-detail{display:none;color:#444}.luckysheet-formula-search-c .luckysheet-formula-search-item .luckysheet-formula-search-func{color:#222;font-size:14px}.luckysheet-formula-search-c .luckysheet-formula-search-item-active{display:block;border-top:1px solid #ebebeb;border-bottom:1px solid #ebebeb;background:#f5f5f5}.luckysheet-formula-search-c .luckysheet-formula-search-item-active .luckysheet-formula-search-detail{display:block}.luckysheet-formula-help-c{display:none;position:absolute;left:20%;top:20%;border:1px solid rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);color:#535353;font-size:12px;background:#fff;z-index:1003;width:300px}.luckysheet-formula-help-c .luckysheet-formula-help-content{max-height:300px;overflow-y:scroll}.luckysheet-formula-help-content-example{margin-top:5px}.luckysheet-formula-help-title{display:block;border-top:1px solid #ebebeb;border-bottom:1px solid #ebebeb;background:#f5f5f5;padding:2px 10px;font-size:14px}.luckysheet-formula-help-title-formula{width:250px;word-break:break-word}.luckysheet-arguments-help-section{margin-top:5px;margin-bottom:5px;color:#222}.luckysheet-arguments-help-section-title{padding:1px 10px;color:#666}.luckysheet-arguments-help-parameter-content{padding:1px 10px;display:inline-block;word-wrap:break-word}.luckysheet-arguments-help-formula{padding:1px 10px;font-size:14px}.luckysheet-arguments-help-parameter-active{background-color:#fff9b2}.luckysheet-formula-help-collapse{position:absolute;top:0;right:25px;font-size:16px;cursor:pointer;color:#bbb}.luckysheet-formula-help-close{position:absolute;top:0;right:5px;font-size:16px;cursor:pointer;color:#bbb}.luckysheet-formula-help-close:hover,.luckysheet-formula-help-collapse:hover{color:#555}.luckysheetLoader{font-size:20px;width:1em;height:1em;border-radius:50%;text-indent:-9999em;position:absolute;top:50%;left:50%;animation:load-effect 1s infinite linear}@keyframes load-effect{0%{box-shadow:0 -3em 0 .2em #0188fb,2em -2em 0 0 #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 0 #0188fb}12.5%{box-shadow:0 -3em 0 0 #0188fb,2em -2em 0 .2em #0188fb,3em 0 0 0 #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}25%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 0 #0188fb,3em 0 0 .2em #0188fb,2em 2em 0 0 #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}37.5%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 0 #0188fb,2em 2em 0 .2em #0188fb,0 3em 0 0 #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}50%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 0 #0188fb,0 3em 0 .2em #0188fb,-2em 2em 0 0 #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}62.5%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 0 #0188fb,-2em 2em 0 .2em #0188fb,-3em 0 0 0 #0188fb,-2em -2em 0 -.5em #0188fb}75%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 0 #0188fb,-3em 0 0 .2em #0188fb,-2em -2em 0 0 #0188fb}87.5%{box-shadow:0 -3em 0 0 #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 0 #0188fb,-3em 0 0 0 #0188fb,-2em -2em 0 .2em #0188fb}100%{box-shadow:0 -3em 0 .2em #0188fb,2em -2em 0 0 #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 0 #0188fb}}.luckysheetpopover{position:absolute;background:rgba(0,0,0,.65);color:#fff;font-size:18px;padding:20px 100px;text-align:center;z-index:10000;border-radius:4px;user-select:none;display:none}.luckysheetpopover .luckysheetpopover-btn{position:absolute;right:10px;top:50%;margin-top:-12px;border:1px solid #fff;border-radius:4px;padding:2px 4px;cursor:pointer;font-size:14px}.luckysheetpopover .luckysheetpopover-btn:hover{border:1px solid #fea2a2;color:#fea2a2}.luckysheetPaintCursor{cursor:url(paint_24px.ico),auto}#luckysheet-search-replace .tabBox{margin-top:20px;font-size:0}#luckysheet-search-replace .tabBox span{display:inline-block;text-align:center;width:100px;border:1px solid #d4d4d4;font-size:14px;line-height:2}#luckysheet-search-replace .tabBox span.on{background-color:#8c89fe;border-color:#726efe;color:#fff}#luckysheet-search-replace .ctBox{padding:5px 10px;border:solid 1px #d4d4d4;font-size:14px}#luckysheet-search-replace .inputBox{height:90px;position:relative}#luckysheet-search-replace .inputBox .textboxs{height:30px;line-height:30px}#luckysheet-search-replace .inputBox .checkboxs{height:90px;position:absolute;right:0;top:0}#luckysheet-search-replace .inputBox .checkboxs div{height:30px;line-height:30px}#luckysheet-search-replace .inputBox .checkboxs input[type=checkbox]{float:left;margin-top:9px}#luckysheet-search-replace .btnBox{margin-top:10px}#luckysheet-search-replace .btnBox button{margin:0 2.5px}#luckysheet-search-replace #searchAllbox{height:210px;border:1px solid #d4d4d4;margin-top:10px;overflow-y:auto;position:relative}#luckysheet-search-replace #searchAllbox .boxTitle{width:100%;height:30px;line-height:29px;padding:0 5px;background-color:#fff;border-bottom:1px solid #d4d4d4;box-sizing:border-box;position:sticky;left:0;top:0}#luckysheet-search-replace #searchAllbox .boxTitle span{display:inline-block;text-align:center}#luckysheet-search-replace #searchAllbox .boxTitle span:nth-of-type(1){width:25%}#luckysheet-search-replace #searchAllbox .boxTitle span:nth-of-type(2){width:25%}#luckysheet-search-replace #searchAllbox .boxTitle span:nth-of-type(3){width:50%}#luckysheet-search-replace #searchAllbox .boxMain .boxItem{height:30px;line-height:29px;border-bottom:1px solid #d4d4d4;padding:0 5px;box-sizing:border-box}#luckysheet-search-replace #searchAllbox .boxMain .boxItem.on{background-color:#8c89fe;color:#fff}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span{display:block;text-align:center;float:left}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span:nth-of-type(1){width:25%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span:nth-of-type(2){width:25%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span:nth-of-type(3){width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-formula{font-size:12px}#luckysheet-search-formula .inpbox{margin-bottom:5px}#luckysheet-search-formula .inpbox label{display:block;margin-bottom:5px}#luckysheet-search-formula .inpbox input{width:100%;height:24px;line-height:24px;border:1px solid #d4d4d4;padding:0 10px;box-sizing:border-box;font-size:12px}#luckysheet-search-formula .selbox{margin-bottom:5px}#luckysheet-search-formula .selbox select{width:50%;height:24px;line-height:24px;border:1px solid #d4d4d4;box-sizing:border-box;font-size:12px}#luckysheet-search-formula .listbox label{display:block;margin-bottom:5px}#formulaTypeList{width:300px;height:170px;border:1px solid #d4d4d4;overflow-y:scroll}#formulaTypeList .listBox{padding:5px;border-bottom:1px solid #d4d4d4}#formulaTypeList .listBox.on{background-color:#8c89fe;color:#fff}#formulaTypeList .listBox span:nth-of-type(1){display:block}#formulaTypeList .listBox span:nth-of-type(2){display:block}#luckysheet-search-formula-parm{width:502px;font-size:12px}#luckysheet-search-formula-parm .parmListBox{width:500px;padding:5px 0;border:1px solid #d4d4d4}#luckysheet-search-formula-parm .parmBox{height:30px;line-height:30px;margin-bottom:5px}#luckysheet-search-formula-parm .parmBox:last-child{margin-bottom:0}#luckysheet-search-formula-parm .parmBox .name{width:90px;height:30px;padding:0 5px;float:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-formula-parm .parmBox .txt{width:198px;height:28px;border:1px solid #d4d4d4;float:left}#luckysheet-search-formula-parm .parmBox .txt input{width:150px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-search-formula-parm .parmBox .txt i{float:right;margin-top:8px;margin-right:5px}#luckysheet-search-formula-parm .fa-table{cursor:pointer;color:#6598f3}#luckysheet-search-formula-parm .fa-table:hover{color:#ff7e7e}#luckysheet-search-formula-parm .parmBox .val{width:190px;height:30px;line-height:30px;padding:0 5px;float:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-formula-parm .formulaDetails{padding:5px}#luckysheet-search-formula-parm .parmDetailsBox{max-height:100px;padding:5px 0 5px 20px;overflow-y:scroll}#luckysheet-search-formula-parm .parmDetailsBox span{display:inline-block}#luckysheet-search-formula-parm .result{padding:5px;border-top:1px solid #d4d4d4}#textCellColor{border:1px solid #d4d4d4;padding:5px 10px}#textCellColor .colorbox{height:30px;line-height:30px;margin-bottom:10px}#textCellColor .colorbox input[type=checkbox]{float:left;margin-top:10px}#textCellColor .colorbox label{display:inline-block;width:80px}#luckysheet-multiRange-dialog input,#luckysheet-singleRange-dialog input{border:1px solid #d4d4d4;padding:0 10px;height:30px}#luckysheet-conditionformat-dialog{font-size:12px}#luckysheet-conditionformat-dialog .box .boxTitleOne{margin:5px 0;font-weight:600}#luckysheet-conditionformat-dialog .box .inpbox{width:198px;height:28px;border:1px solid #d4d4d4}#luckysheet-conditionformat-dialog .box .inpbox input{width:150px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-conditionformat-dialog .box .inpbox2{float:left;width:108px;height:28px;border:1px solid #d4d4d4}#luckysheet-conditionformat-dialog .box .inpbox2 input{width:60px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-conditionformat-dialog .box i.fa-table{float:right;margin-top:8px;margin-right:5px}#luckysheet-conditionformat-dialog .box .fa-table{cursor:pointer;color:#6598f3}#luckysheet-conditionformat-dialog .box .fa-table:hover{color:#ff7e7e}#luckysheet-conditionformat-dialog .box #daterange-btn{width:188px;height:28px;padding:0 5px;line-height:28px;border:1px solid #d4d4d4;cursor:pointer}#luckysheet-conditionformat-dialog .box .selectbox{width:150px;height:30px}#luckysheet-icon-dataBar-menuButton .bgImgBox{width:28px;height:26px;background:url(../plugins/images/CFdataBar.png) no-repeat}#luckysheet-icon-colorGradation-menuButton .bgImgBox{width:28px;height:26px;background:url(../plugins/images/CFcolorGradation.png) no-repeat}#luckysheet-administerRule-dialog{font-size:12px}#luckysheet-administerRule-dialog .chooseSheet{height:24px;line-height:24px;margin-bottom:5px}#luckysheet-administerRule-dialog .chooseSheet select{height:24px;padding:0 5px;box-sizing:border-box;font-size:12px}#luckysheet-administerRule-dialog .ruleBox{border:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleBtn{padding:2.5px 5px;border-bottom:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleBtn button{margin-right:10px;font-size:12px}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle{height:30px;padding:0 10px;border-bottom:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span{display:block;height:100%;line-height:29px;float:left}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span:nth-of-type(1){width:30%}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span:nth-of-type(2){width:20%}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span:nth-of-type(3){width:45%}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox{height:150px;overflow-y:scroll}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item{height:24px;padding:2.5px 10px;border-bottom:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item.on{background-color:#8c89fe}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleName{width:30%;height:100%;line-height:24px;padding-right:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;float:left;box-sizing:border-box}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item.on .ruleName{color:#fff}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .format{width:20%;height:100%;line-height:24px;float:left;position:relative}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .format .colorbox{display:inline-block;width:16px;height:16px;border:solid 1px #d0d0d0;margin:3px 5px;cursor:pointer}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange{width:45%;height:100%;border:1px solid #d4d4d4;float:left;margin-left:10px;box-sizing:border-box;background-color:#fff}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange input{width:130px;height:22px;padding:0 5px;border:none;outline-style:none;float:left}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange i.fa-table{float:right;cursor:pointer;color:#6598f3;margin-top:6px;margin-right:5px}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange i.fa-table:hover{color:#ff7e7e}.luckysheet-newEditorRule-dialog{font-size:12px}.luckysheet-newEditorRule-dialog .boxTitle{margin-bottom:5px}.luckysheet-newEditorRule-dialog .ruleTypeBox{border:1px solid #d4d4d4;margin-bottom:10px}.luckysheet-newEditorRule-dialog .ruleTypeBox .ruleTypeItem{padding:3px 5px;cursor:pointer}.luckysheet-newEditorRule-dialog .ruleTypeBox .ruleTypeItem.on{background-color:#7c79fe;color:#fff}.luckysheet-newEditorRule-dialog .ruleTypeBox .ruleTypeItem .icon{font-family:Arial,Helvetica,sans-serif}.luckysheet-newEditorRule-dialog .ruleExplainBox{border:1px solid #d4d4d4;padding:10px}.luckysheet-newEditorRule-dialog .ruleExplainBox .title{display:block;font-weight:600;margin-bottom:5px}.luckysheet-newEditorRule-dialog .ruleExplainBox select{height:30px;font-size:12px;float:left;margin-right:5px}.luckysheet-newEditorRule-dialog .ruleExplainBox .inpbox{width:100px;height:30px;border:1px solid #d4d4d4;box-sizing:border-box;font-size:12px;float:left}.luckysheet-newEditorRule-dialog .ruleExplainBox .inpbox input{width:70px;height:100%;border:none;outline-style:none;padding:0 5px}.luckysheet-newEditorRule-dialog .ruleExplainBox .txt{display:block;height:100%;line-height:30px;float:left;margin:0 5px}.luckysheet-newEditorRule-dialog .ruleExplainBox #isPercent{float:left;margin:9px 0 8px 10px}.luckysheet-newEditorRule-dialog i.fa-table{float:right;margin-top:8px;margin-right:5px}.luckysheet-newEditorRule-dialog .fa-table{cursor:pointer;color:#6598f3}.luckysheet-newEditorRule-dialog .fa-table:hover{color:#ff7e7e}.luckysheet-newEditorRule-dialog .iconsBox{height:30px;margin-bottom:5px;position:relative}.luckysheet-newEditorRule-dialog .iconsBox label{display:block;width:80px;height:30px;line-height:30px;float:left}.luckysheet-newEditorRule-dialog .iconsBox .showbox{width:150px;height:20px;padding:4px 4px 4px 10px;border:1px solid #e5e5e5;background-color:#f5f5f5;float:left;cursor:pointer}.luckysheet-newEditorRule-dialog .iconsBox .showbox .model{width:125px;height:20px;background:url(../plugins/images/CFicons.png) no-repeat;background-size:256px;float:left}.luckysheet-newEditorRule-dialog .iconsBox ul{display:none;width:164px;max-height:150px;overflow-y:auto;background-color:#fff;border:1px solid #e5e5e5;position:absolute;left:80px;top:30px;list-style:none;margin:0;padding:0}.luckysheet-newEditorRule-dialog .iconsBox ul li{padding:5px 10px;background-color:#fff;cursor:pointer}.luckysheet-newEditorRule-dialog .iconsBox ul li:hover{background-color:#dfdfdf}.luckysheet-newEditorRule-dialog .iconsBox ul li div{width:125px;height:20px;background:url(../plugins/images/CFicons.png) no-repeat;background-size:256px}#luckysheet-CFicons-dialog .box{padding:10px;border:1px solid #dfdfdf;font-size:14px}#luckysheet-CFicons-dialog .box .title{height:20px;line-height:20px;padding:0 10px;background-color:#ebebeb}#luckysheet-CFicons-dialog .box .list{width:300px;padding:5px 0}#luckysheet-CFicons-dialog .box .list .left{width:50%;float:left}#luckysheet-CFicons-dialog .box .list .right{width:50%;float:right}#luckysheet-CFicons-dialog .box .list .item{width:125px;height:20px;padding:2.5px 10px;background-color:#fff;cursor:pointer}#luckysheet-CFicons-dialog .box .list .item:hover{background-color:#dfdfdf}#luckysheet-CFicons-dialog .box .list .item div{width:125px;height:20px;background:url(../plugins/images/CFicons.png) no-repeat;background-size:256px}#luckysheet-modal-dialog-slider-alternateformat{width:280px;font-size:12px}#luckysheet-modal-dialog-slider-alternateformat .luckysheet-modal-dialog-slider-content{background-color:#fff;overflow-y:scroll}#luckysheet-modal-dialog-slider-alternateformat .textTitle{padding:5px 10px;font-weight:600}#luckysheet-alternateformat-range{width:198px;height:28px;border:1px solid #d4d4d4;margin-left:10px}#luckysheet-alternateformat-range input{width:150px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-alternateformat-range .fa-table{float:right;margin-top:8px;margin-right:5px;cursor:pointer;color:#6598f3}#luckysheet-alternateformat-range .fa-table:hover{color:#ff7e7e}#luckysheet-alternateformat-checkbox{padding:5px 10px;border-top:1px solid #d4d4d4;border-bottom:1px solid #d4d4d4;margin:10px 0}#luckysheet-alternateformat-checkbox div{height:20px;line-height:20px}#luckysheet-alternateformat-checkbox div:first-child{margin-bottom:5px}#luckysheet-alternateformat-checkbox input[type=checkbox]{float:left;cursor:pointer;margin-top:4px}#luckysheet-alternateformat-modelList{padding:0 10px;margin-bottom:10px}#luckysheet-alternateformat-modelCustom{padding:0 10px;margin-bottom:10px}#luckysheet-modal-dialog-slider-alternateformat .modelbox{display:inline-block;width:36px;padding:2px;border:2px solid #fff;box-sizing:border-box;margin-right:4px;margin-bottom:4px;cursor:pointer}#luckysheet-modal-dialog-slider-alternateformat .modelbox.on{border-color:#726efe}#luckysheet-modal-dialog-slider-alternateformat .modelbox .box{width:100%;border:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-modal-dialog-slider-alternateformat .modelbox .box span{display:block;width:100%;height:10px;line-height:9px;text-align:center;border-bottom:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-modal-dialog-slider-alternateformat .modelbox .box span:last-child{line-height:10px;border-bottom:none}#luckysheet-alternateformat-modelToning{padding:10px}#luckysheet-alternateformat-modelToning .toningbox{height:25px;margin-bottom:5px}#luckysheet-alternateformat-modelToning .toningbox .toningShow{width:150px;height:100%;line-height:23px;text-align:center;border:1px solid #d4d4d4;float:left;margin-right:10px}#luckysheet-alternateformat-modelToning .toningbox .luckysheet-color-menu-button-indicator{width:20px;float:left;user-select:none;cursor:pointer}#luckysheet-alternateformat-modelToning .toningbox .luckysheet-color-menu-button-indicator .luckysheet-icon{user-select:none;margin-bottom:-6px}#luckysheet-alternateformat-colorSelect-dialog .currenColor{font-size:12px;margin-bottom:5px}#luckysheet-alternateformat-colorSelect-dialog .currenColor span{display:inline-block;width:16px;height:16px;border:solid 1px #d0d0d0;margin-left:5px;margin-bottom:-5px;cursor:pointer}#luckysheet-alternateformat-rangeDialog input{border:1px solid #d4d4d4;padding:0 10px;height:30px}#luckysheet-ifFormulaGenerator-dialog{font-size:12px}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox{height:30px;margin-bottom:10px}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox label{display:block;width:100px;height:100%;line-height:30px;padding:0 5px;text-align:right;float:left}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox{width:150px;height:100%;padding:0 10px;border:1px solid #d4d4d4;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox input{width:100px;height:100%;padding:0;border:none;outline-style:none;background:0 0;float:left}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox i.fa-table{font-size:14px;color:#6598f3;float:right;margin-right:0;margin-top:8px;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox i.fa-table:hover{color:#ff7e7e}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox span.text{height:100%;line-height:30px;padding:0 5px;float:left}#luckysheet-ifFormulaGenerator-dialog #largeRange,#luckysheet-ifFormulaGenerator-dialog #smallRange{width:100px;height:100%;padding:0 10px;border:1px solid #d4d4d4;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog #rangeAssess{height:100%;line-height:30px;float:left;margin-left:20px}#luckysheet-ifFormulaGenerator-dialog #rangeAssess i.fa-table{color:#6598f3;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog #rangeAssess i.fa-table:hover{color:#ff7e7e}#luckysheet-ifFormulaGenerator-dialog #DivisionMethod{width:100px;height:100%;border:1px solid #d4d4d4;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog #DivisionMethodVal{width:120px;height:100%;border:1px solid #d4d4d4;padding:0 10px;box-sizing:border-box;float:left;margin-left:10px}#luckysheet-ifFormulaGenerator-dialog #createBtn{width:100px;height:100%;line-height:30px;border-radius:5px;text-align:center;font-size:14px;color:#fff;background-color:#8c89fe;float:right;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog .ifList{border-top:1px solid #d4d4d4;height:180px;padding:10px;overflow-y:scroll}#luckysheet-ifFormulaGenerator-dialog .ifList .item{height:30px;margin-bottom:10px}#luckysheet-ifFormulaGenerator-dialog .ifList .item input{width:80px;height:100%;border:1px solid #d4d4d4;padding:0 5px;background:0 0;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog .ifList .item input.markText{width:140px}#luckysheet-ifFormulaGenerator-dialog .ifList .item select{width:50px;height:100%;padding:0 5px;border:1px solid #d4d4d4;box-sizing:border-box;float:left;margin:0 10px}#luckysheet-ifFormulaGenerator-dialog .ifList .item span{height:100%;line-height:30px;float:left;margin:0 10px}#luckysheet-ifFormulaGenerator-dialog .ifList .item i.fa-remove{font-size:16px;float:left;margin-left:15px;margin-top:7px;color:#d6d6d6;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog .ifList .item i.fa-remove:hover{color:#333}#luckysheet-ifFormulaGenerator-multiRange-dialog input,#luckysheet-ifFormulaGenerator-singleRange-dialog input{border:1px solid #d4d4d4;padding:0 10px;height:30px}.pictorialBarUploadImg:hover{border:1px solid #ccc!important;background:#efefef}#luckysheet-dropCell-icon #icon_dropCell{width:25px;height:15px;background-image:url(../plugins/images/icon_dropCell.png);background-repeat:no-repeat;background-position:center;background-size:100% 100%}#luckysheet-locationCell-dialog .listbox{border:1px solid #dfdfdf;padding:10px;font-size:14px;color:#000}#luckysheet-locationCell-dialog .listbox .listItem{padding:5px 0}#luckysheet-locationCell-dialog .listbox .listItem input[type=radio]{float:left;margin-top:5px}#luckysheet-locationCell-dialog .listbox .listItem .subbox{height:30px;padding:0 10px}#luckysheet-locationCell-dialog .listbox .listItem .subbox .subItem{float:left;margin-right:5px}#luckysheet-moreFormat-dialog{font-size:14px;color:#000}#luckysheet-moreFormat-dialog .decimal{margin-bottom:5px;height:30px;line-height:30px}#luckysheet-moreFormat-dialog .decimal input{width:80px;height:24px;padding:0 5px}#luckysheet-moreFormat-dialog .listbox{border:1px solid #666;height:240px;overflow-y:auto}#luckysheet-moreFormat-dialog .listbox .listItem{height:30px;padding:0 20px 0 10px;border-bottom:1px solid #dfdfdf}#luckysheet-moreFormat-dialog .listbox .listItem.on{background-color:#7c79fe;color:#fff}#luckysheet-moreFormat-dialog .listbox .listItem .name{line-height:29px;float:left}#luckysheet-moreFormat-dialog .listbox .listItem .value{line-height:30px;float:right;color:gray}#luckysheet-moreFormat-dialog .listbox .listItem.on .value{color:#fff}#luckysheet-splitColumn-dialog{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#luckysheet-splitColumn-dialog .box{font-size:14px}#luckysheet-splitColumn-dialog .box .boxTitle{padding:5px}#luckysheet-splitColumn-dialog .box .boxMain{padding:5px;border:1px solid #dfdfdf}#luckysheet-splitColumn-dialog .box input[type=checkbox]{float:left;margin-top:5px}#luckysheet-splitColumn-dialog .box .boxMain input[type=text]{margin-left:5px;width:50px;padding:0 5px}#luckysheet-splitColumn-dialog .box #splitColumnData{height:100px;overflow-y:auto}#luckysheet-splitColumn-dialog .box #splitColumnData table{border-collapse:collapse}#luckysheet-splitColumn-dialog .box #splitColumnData td{border:1px solid #333}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-content:last-child{padding-bottom:100px}.luckysheet-postil-dialog-move{position:absolute;margin:0;padding:0;top:0;left:0;bottom:0;right:0;pointer-events:none}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item{position:absolute;pointer-events:all;cursor:move}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-t{width:100%;height:3px;border-bottom:1px solid #000;left:0;top:-4px}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-r{width:3px;height:100%;border-left:1px solid #000;right:-4px;top:0}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-b{width:100%;height:3px;border-top:1px solid #000;left:0;bottom:-4px}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-l{width:3px;height:100%;border-right:1px solid #000;left:-4px;top:0}.luckysheet-postil-show-active .luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item{border-color:#0188fb}.luckysheet-postil-dialog-resize{position:absolute;margin:0;padding:0;top:-2px;left:-2px;bottom:-2px;right:-2px;pointer-events:none}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item{position:absolute;height:6px;width:6px;border:1px solid #0188fb;pointer-events:all}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-lt{left:-6px;top:-6px;cursor:se-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-mt{left:50%;top:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-lm{top:50%;left:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-rm{top:50%;right:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-rt{right:-6px;top:-6px;cursor:ne-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-lb{left:-6px;bottom:-6px;cursor:ne-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-mb{left:50%;bottom:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-rb{right:-6px;bottom:-6px;cursor:se-resize}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-content:last-child{padding-bottom:100px}.luckysheet-datavisual-left .el-tabs__content{overflow:auto}#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-content{width:100%;height:100%;position:absolute;left:0;top:0;cursor:move;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}#luckysheet-modal-dialog-cropping::before{content:"";outline:1px solid #fff;position:absolute;left:33.3%;right:33.3%;top:0;bottom:0;z-index:1;pointer-events:none}#luckysheet-modal-dialog-cropping::after{content:"";outline:1px solid #fff;position:absolute;left:0;right:0;top:33.3%;bottom:33.3%;z-index:1;pointer-events:none}#luckysheet-modal-dialog-cropping .cropping-mask{filter:brightness(.5);position:absolute;background-size:100% 100%;left:0;top:0}#luckysheet-modal-dialog-cropping .cropping-content{position:absolute;overflow:hidden;background-position:0 0;left:0;top:0;width:100%;height:100%}#luckysheet-modal-dialog-cropping .luckysheet-modal-dialog-resize{border:none;position:absolute;margin:0;padding:0;top:0;left:0;bottom:0;right:0;pointer-events:all}#luckysheet-modal-dialog-cropping .resize-item{width:0;height:0;background:0 0;border:none;position:absolute;z-index:3}#luckysheet-modal-dialog-cropping .resize-item::before{content:"";display:block;position:absolute;background:#000}#luckysheet-modal-dialog-cropping .resize-item::after{content:"";display:block;position:absolute;background:#000}#luckysheet-modal-dialog-cropping .lt{left:0;top:0;cursor:nwse-resize}#luckysheet-modal-dialog-cropping .lt::before{width:18px;height:4px;left:0;top:0;border-right:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .lt::after{width:4px;height:14px;left:0;top:4px;border-right:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .mt{left:50%;top:0;cursor:ns-resize}#luckysheet-modal-dialog-cropping .mt::before{width:18px;height:4px;left:-11px;top:0;border-left:2px solid #fff;border-right:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .rt{right:0;top:0;cursor:nesw-resize}#luckysheet-modal-dialog-cropping .rt::before{width:18px;height:4px;right:0;top:0;border-left:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .rt::after{width:4px;height:14px;right:0;top:4px;border-left:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .lm{left:0;top:50%;cursor:ew-resize}#luckysheet-modal-dialog-cropping .lm::before{width:4px;height:18px;left:0;top:-11px;border-right:2px solid #fff;border-top:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .rm{right:0;top:50%;cursor:ew-resize}#luckysheet-modal-dialog-cropping .rm::before{width:4px;height:18px;right:0;top:-11px;border-left:2px solid #fff;border-top:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .lb{left:0;bottom:0;cursor:nesw-resize}#luckysheet-modal-dialog-cropping .lb::before{width:18px;height:4px;left:0;bottom:0;border-right:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .lb::after{width:4px;height:14px;left:0;bottom:4px;border-right:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .rb{right:0;bottom:0;cursor:nwse-resize}#luckysheet-modal-dialog-cropping .rb::before{width:18px;height:4px;right:0;bottom:0;border-left:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .rb::after{width:4px;height:14px;right:0;bottom:4px;border-left:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .mb{left:50%;bottom:0;cursor:ns-resize}#luckysheet-modal-dialog-cropping .mb::before{width:18px;height:4px;left:-11px;bottom:0;border-left:2px solid #fff;border-right:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-slider-imageCtrl .luckysheet-modal-dialog-slider-content{background-color:#fff}#luckysheet-modal-dialog-slider-imageCtrl .slider-box{border-bottom:1px solid #e1e4e8}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-title{padding:10px 20px;font-weight:600}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-radios{padding:10px 30px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .radio-item{margin-bottom:10px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .radio-item:last-child{margin-bottom:0}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .radio-item input{vertical-align:sub}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-checkbox{padding:10px 30px;border-top:1px solid #e1e4e8}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-checkbox input{vertical-align:middle}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-borderConfig{padding:10px 30px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item{margin-bottom:10px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item:last-child{margin-bottom:0}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item label{display:inline-block;width:40px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item input{width:130px;padding:5px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item .imgItemBorderColor{display:inline-block;width:20px;height:20px;padding:2px;border:1px solid #e1e4e8;vertical-align:middle;cursor:pointer}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item .imgItemBorderColor span{display:block;width:100%;height:100%}#luckysheet-imageCtrl-colorSelect-dialog .currenColor{font-size:12px;margin-bottom:5px}#luckysheet-imageCtrl-colorSelect-dialog .currenColor span{display:inline-block;width:16px;height:16px;border:solid 1px #d0d0d0;margin-left:5px;margin-bottom:-5px;cursor:pointer}#luckysheet-modal-dialog-activeImage,#luckysheet-modal-dialog-cropping{background:0 0;box-shadow:none}.luckysheet-modal-dialog-image{border:none;box-shadow:none;background:0 0;box-shadow:none;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-content,.luckysheet-modal-dialog-image .luckysheet-modal-dialog-content{background:0 0}.cell-date-picker{position:absolute;display:none}#luckysheet-insertLink-dialog{user-select:none}#luckysheet-insertLink-dialog .box{font-size:12px}#luckysheet-insertLink-dialog .box-item{height:30px;line-height:30px;margin-bottom:10px}#luckysheet-insertLink-dialog .box-item label{display:inline-block;width:80px;text-align:right;margin-right:10px}#luckysheet-insertLink-dialog .box-item input{width:200px;height:30px;padding:0 10px;border:1px solid #d4d4d4;outline-style:none;box-sizing:border-box}#luckysheet-insertLink-dialog .box-item select{width:200px;height:30px;padding:0 5px;border:1px solid #d4d4d4;outline-style:none;box-sizing:border-box}#luckysheet-dataVerification-dialog{user-select:none}#luckysheet-dataVerification-dialog .box{font-size:12px}#luckysheet-dataVerification-dialog .box select{width:100%;height:30px;border-color:#d4d4d4;outline-style:none}#luckysheet-dataVerification-dialog .box input::-webkit-input-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box input:-moz-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box input::-moz-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box input:-ms-input-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box-item{padding:10px;border-bottom:1px solid #e1e4e8}#luckysheet-dataVerification-dialog .box-item .box-item-title{font-size:14px;font-weight:600;margin-bottom:10px}#luckysheet-dataVerification-dialog .box-item .range{width:100%;height:30px;border:1px solid #d4d4d4}#luckysheet-dataVerification-dialog .box-item .range input{width:calc(100% - 30px);height:30px;padding:0 10px;float:left;border:none;outline-style:none;box-sizing:border-box}#luckysheet-dataVerification-dialog .box-item .range i.fa-table{float:right;margin-top:9px;margin-right:5px;cursor:pointer;color:#6598f3}#luckysheet-dataVerification-dialog .box-item .multi{margin-top:10px;line-height:30px;font-size:12px}#luckysheet-dataVerification-dialog .box-item .multi input{vertical-align:text-top}#luckysheet-dataVerification-dialog .box-item .show-box{margin-top:10px}#luckysheet-dataVerification-dialog .box-item .check-box{height:30px;line-height:30px;margin-bottom:10px}#luckysheet-dataVerification-dialog .box-item .check-box:last-child{margin-bottom:0}#luckysheet-dataVerification-dialog .box-item .check-box input{height:30px;padding:0 10px;border:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-dataVerification-dialog .box-item .check{line-height:30px}#luckysheet-dataVerification-dialog .box-item .check input{vertical-align:text-top}#luckysheet-dataVerification-dialog .box-item .input{height:30px;line-height:30px;margin-top:10px}#luckysheet-dataVerification-dialog .box-item .input input{height:30px;padding:4px 10px 4px 10px;border:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-dataVerification-dialog .box-item .input1 input{width:150px}#luckysheet-dataVerification-dialog .box-item .input2 input{width:100%}#luckysheet-dataVerification-dialog .box-item .input span{display:inline-block;width:30px;text-align:center}#luckysheet-dataVerification-dialog .data-verification-hint-text{width:100%;height:30px;border:1px solid #d4d4d4;margin-top:10px}#luckysheet-dataVerification-dialog .data-verification-hint-text input{display:block;width:100%;height:100%;padding:0 10px;border:none;outline-style:none;box-sizing:border-box}#luckysheet-dataVerification-dialog .show-box .show-box-item{display:none}#luckysheet-dataVerificationRange-dialog input{height:30px;padding:0 10px;border:1px solid #d4d4d4;outline-style:none}#luckysheet-dataVerification-dropdown-btn{display:none;width:20px;height:20px;background-color:#fff;position:absolute;z-index:10;overflow:hidden}#luckysheet-dataVerification-dropdown-btn::after{content:'';width:10px;height:10px;background:url(arrow-down.png) center no-repeat;position:absolute;left:50%;top:50%;margin-left:-5px;margin-top:-5px}#luckysheet-dataVerification-dropdown-List{display:none;background-color:#fff;border:1px solid #ccc;box-shadow:0 2px 4px rgba(0,0,0,.2);position:absolute;z-index:10000;box-sizing:border-box}#luckysheet-dataVerification-dropdown-List .dropdown-List-item{padding:5px 10px;box-sizing:border-box;cursor:pointer}#luckysheet-dataVerification-dropdown-List .dropdown-List-item.multi{padding-left:0}#luckysheet-dataVerification-dropdown-List .dropdown-List-item.multi:before{content:"";width:14px;font-family:iconfont!important;font-size:12px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;margin-right:2px}#luckysheet-dataVerification-dropdown-List .dropdown-List-item.multi.checked:before{content:"\e7c8"}#luckysheet-dataVerification-dropdown-List .dropdown-List-item:hover{background-color:#e1e1e1}#luckysheet-dataVerification-showHintBox{display:none;padding:10px;background-color:#fff;border:1px solid #ccc;box-shadow:0 2px 4px rgba(0,0,0,.2);position:absolute;z-index:1000;user-select:none;cursor:default;white-space:nowrap}.luckysheet-print-viewList{position:relative;float:right;width:126px;height:22px;line-height:22px;text-align:center;white-space:nowrap;overflow:hidden;display:flex;align-items:center;user-select:none}.luckysheet-print-viewBtn{position:absolute;top:0;left:0;width:42px;height:22px;align-items:center;justify-content:center;cursor:pointer}.luckysheet-print-viewBtn .iconfont{font-size:22px}.luckysheet-print-viewBtn:hover{background:#e1e4e8}.luckysheet-print-viewBtn-active{background:#dcdcdc;cursor:default}.luckysheet-print-viewBtn-active:hover{background:#dcdcdc}.luckysheet-print-viewNormal{left:0}.luckysheet-print-viewLayout{left:42px}.luckysheet-print-viewPage{left:84px}#luckysheet-modal-dialog-slider-protection .luckysheet-modal-dialog-slider-content{background:#fff}.luckysheet-slider-protection-config{position:absolute;width:100%}.luckysheet-slider-protection-row{position:relative;width:98%;height:35px;left:1%}.luckysheet-slider-protection-column{position:absolute;height:100%}.luckysheet-protection-rangeItem-dialog input,.luckysheet-protection-rangeItem-dialog textarea,.luckysheet-protection-sheet-validation input,.luckysheet-slider-protection-config input,.luckysheet-slider-protection-config textarea{border:1px solid #d4d4d4;outline:0}.luckysheet-protection-rangeItem-dialog input:focus,.luckysheet-protection-rangeItem-dialog textarea:focus,.luckysheet-protection-sheet-validation input:focus,.luckysheet-slider-protection-config input:focus,.luckysheet-slider-protection-config textarea:focus{border:1px solid #0389fb;outline:0}.luckysheet-protection-input{width:100%;height:19px;position:relative}.luckysheet-protection-textarea{width:100%;height:47px;position:relative;resize:none}.luckysheet-protection-column-2x{width:20%}.luckysheet-protection-column-3x{width:30%}.luckysheet-protection-column-4x{width:40%}.luckysheet-protection-column-5x{width:50%}.luckysheet-protection-column-6x{width:60%}.luckysheet-protection-column-7x{width:70%}.luckysheet-protection-column-8x{width:80%}.luckysheet-protection-column-9x{width:90%}.luckysheet-protection-column-10x{width:100%}.luckysheet-protection-column-left{text-align:left}.luckysheet-protection-column-center{text-align:center}.luckysheet-protection-column-right{text-align:right}.luckysheet-slider-protection-ok{position:absolute;width:100%;height:100%;background:#0188fb;color:#fff;text-align:center;line-height:45px;font-size:16px;cursor:pointer}.luckysheet-slider-protection-ok:hover{background:#0181ee}.luckysheet-slider-protection-ok:active{background:#0074da}.luckysheet-slider-protection-cancel{position:absolute;width:100%;height:100%;background:#e6e6e6;color:#353535;text-align:center;line-height:45px;font-size:16px;cursor:pointer}.luckysheet-slider-protection-cancel:hover{background:#d6d6d6}.luckysheet-slider-protection-cancel:active{background:#c7c7c7}.luckysheet-slider-protection-addRange{line-height:23px;font-size:12px;top:2px;height:23px}.luckysheet-protection-rangeItem{position:relative;width:100%;height:30px;line-height:30px;font-size:12px;overflow:hidden}.luckysheet-protection-rangeItem:hover{background:#d5d5d5}.luckysheet-protection-rangeItem>div{position:absolute;height:100%;text-align:center;overflow:hidden}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-del{left:5px;top:5px;height:20px;width:20px;font-size:14px;line-height:20px;cursor:pointer}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-name{left:30px;width:80px;text-align:left}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-range{left:110px;width:120px}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-update{left:230px;width:30px;font-size:14px;top:5px;height:20px;width:20px;line-height:20px;cursor:pointer}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-del:hover,.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-update:hover{background:#0181ee;color:#fff}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-del:active,.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-update:active{background:#0074da;color:#fff}.luckysheet-protection-rangeItem-content{position:relative;width:350px;height:270px}#luckysheet-protection-rangeItem-dialog .luckysheet-slider-protection-column .range{width:100%;height:30px;border:1px solid #d4d4d4}#luckysheet-protection-rangeItem-dialog .luckysheet-slider-protection-column .range input{width:calc(100% - 30px);height:30px;padding:0 10px;float:left;border:none;outline-style:none;box-sizing:border-box}#luckysheet-protection-rangeItem-dialog .luckysheet-slider-protection-column .range i.fa-table{float:right;margin-top:9px;margin-right:5px;cursor:pointer;color:#6598f3}.luckysheet-protection-rangeItemTextarea{width:100%;height:120px;position:relative;resize:none}.luckysheet-protection-rangeItemiInput{width:100%;height:23px;position:relative}.luckysheet-protection-sheet-validation{width:390px;height:180px;display:none}.luckysheet-zoom-content{position:relative;float:right;width:210px;height:22px;line-height:22px;text-align:right;padding-right:10px;white-space:nowrap;overflow:hidden;display:flex;align-items:center;user-select:none}.luckysheet-zoom-content .luckysheet-zoom-minus{position:absolute;top:0;left:0;width:20px;height:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.luckysheet-zoom-content .luckysheet-zoom-minus-icon{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTRweCIgaGVpZ2h0PSIycHgiIHZpZXdCb3g9IjAgMCAxNCAyIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MyAoOTI0NDUpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPnJpcWlxdWppYW7lpIfku70gNDU8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iMjAyMC8wOC8xNCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IueUu+adv+Wkh+S7vS0yIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTcwNC4wMDAwMDAsIC0xMDY0LjAwMDAwMCkiIGZpbGw9IiM0NDRENUEiPgogICAgICAgICAgICA8ZyBpZD0icmlxaXF1amlhbuWkh+S7vS0xMjYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE2OTkuMDAwMDAwLCAxMDUzLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPGcgaWQ9Iue8lue7hCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNS4wMDAwMDAsIDExLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgICAgIDxyZWN0IGlkPSLnn6nlvaIiIHg9IjAiIHk9IjAiIHdpZHRoPSIxNCIgaGVpZ2h0PSIyIj48L3JlY3Q+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==);width:14px;height:2px}.luckysheet-zoom-content .luckysheet-zoom-minus:hover{background-color:#e1e4e8}.luckysheet-zoom-content .luckysheet-zoom-slider{position:absolute;top:0;left:25px;width:100px;height:100%;display:flex;align-items:center}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-line{position:absolute;top:10px;width:100px;height:2px;background:#e1e4e8}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-cursor{position:absolute;top:7px;width:8px;height:8px;border-radius:8px;background:#b5bdb8;cursor:pointer;z-index:2;transition:all .3s}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-cursor:hover{transform:scale(1.2);transform-origin:center center;background:#a0a0a0}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-hundred{position:absolute;top:9px;width:2px;height:4px;left:49px;background:#1e1e1f}.luckysheet-zoom-content .luckysheet-zoom-plus{position:absolute;top:0;left:130px;width:20px;height:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.luckysheet-zoom-content .luckysheet-zoom-plus .luckysheet-zoom-plus-icon{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTRweCIgaGVpZ2h0PSIxNHB4IiB2aWV3Qm94PSIwIDAgMTQgMTQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYzICg5MjQ0NSkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+CiAgICA8dGl0bGU+cmlxaXF1amlhbuWkh+S7vSA0NjwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSIyMDIwLzA4LzE0IiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0i55S75p2/5aSH5Lu9LTIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xODQ4LjAwMDAwMCwgLTEwNTguMDAwMDAwKSIgZmlsbD0iIzQ0NEQ1QSI+CiAgICAgICAgICAgIDxnIGlkPSJyaXFpcXVqaWFu5aSH5Lu9LTExOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTg0My4wMDAwMDAsIDEwNTMuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0i57yW57uEIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1LjAwMDAwMCwgNS4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICA8cmVjdCBpZD0i55+p5b2iIiB4PSIwIiB5PSI2IiB3aWR0aD0iMTQiIGhlaWdodD0iMiI+PC9yZWN0PgogICAgICAgICAgICAgICAgICAgIDxyZWN0IGlkPSLnn6nlvaLlpIfku70iIHRyYW5zZm9ybT0idHJhbnNsYXRlKDcuMDAwMDAwLCA3LjAwMDAwMCkgcm90YXRlKC0yNzAuMDAwMDAwKSB0cmFuc2xhdGUoLTcuMDAwMDAwLCAtNy4wMDAwMDApICIgeD0iMCIgeT0iNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjIiPjwvcmVjdD4KICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+);width:14px;height:14px}.luckysheet-zoom-content .luckysheet-zoom-plus:hover{background-color:#e1e4e8}.luckysheet-zoom-content .luckysheet-zoom-ratioText{position:absolute;top:0;left:155px;width:60px;color:#1e1e1f;font-size:12px;text-align:left;cursor:pointer}.luckysheet-zoom-content .luckysheet-zoom-ratioText:hover{background-color:#e1e4e8}.flatpickr-calendar{background:0 0;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-box-shadow:0 3px 13px rgba(0,0,0,.08);box-shadow:0 3px 13px rgba(0,0,0,.08)}.flatpickr-calendar.inline,.flatpickr-calendar.open{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1);animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none!important;box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6}.flatpickr-calendar .hasTime .dayContainer,.flatpickr-calendar .hasWeeks .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #eceef1}.flatpickr-calendar.hasTime .flatpickr-innerContainer{border-bottom:0}.flatpickr-calendar.hasTime .flatpickr-time{border:1px solid #eceef1}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:after,.flatpickr-calendar:before{position:absolute;display:block;pointer-events:none;border:solid transparent;content:'';height:0;width:0;left:22px}.flatpickr-calendar.arrowRight:after,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.rightMost:before{left:auto;right:22px}.flatpickr-calendar.arrowCenter:after,.flatpickr-calendar.arrowCenter:before{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:after,.flatpickr-calendar.arrowTop:before{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#eceef1}.flatpickr-calendar.arrowTop:after{border-bottom-color:#eceef1}.flatpickr-calendar.arrowBottom:after,.flatpickr-calendar.arrowBottom:before{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#eceef1}.flatpickr-calendar.arrowBottom:after{border-top-color:#eceef1}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-months .flatpickr-month{border-radius:5px 5px 0 0;background:#eceef1;color:#5a6171;fill:#5a6171;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-next-month,.flatpickr-months .flatpickr-prev-month{text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#5a6171;fill:#5a6171}.flatpickr-months .flatpickr-next-month.flatpickr-disabled,.flatpickr-months .flatpickr-prev-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-next-month i,.flatpickr-months .flatpickr-prev-month i{position:relative}.flatpickr-months .flatpickr-next-month.flatpickr-prev-month,.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-next-month.flatpickr-next-month,.flatpickr-months .flatpickr-prev-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-next-month:hover,.flatpickr-months .flatpickr-prev-month:hover{color:#bbb}.flatpickr-months .flatpickr-next-month:hover svg,.flatpickr-months .flatpickr-prev-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-next-month svg,.flatpickr-months .flatpickr-prev-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-next-month svg path,.flatpickr-months .flatpickr-prev-month svg path{-webkit-transition:fill .1s;transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-inner-spin-button,.numInputWrapper input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(72,72,72,.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span:hover{background:rgba(0,0,0,.1)}.numInputWrapper span:active{background:rgba(0,0,0,.2)}.numInputWrapper span:after{display:block;content:"";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(72,72,72,.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(72,72,72,.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:rgba(90,97,113,.5)}.numInputWrapper:hover{background:rgba(0,0,0,.05)}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .numInputWrapper{width:6ch;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#5a6171}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#5a6171}.flatpickr-current-month input.cur-year{background:0 0;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(90,97,113,.5);background:0 0;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:#eceef1;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:0;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:active,.flatpickr-current-month .flatpickr-monthDropdown-months:focus{outline:0}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#eceef1;outline:0;padding:0}.flatpickr-weekdays{background:#eceef1;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:#eceef1;color:#5a6171;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px;border-left:1px solid #eceef1;border-right:1px solid #eceef1}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #eceef1;box-shadow:-1px 0 0 #eceef1}.flatpickr-day{background:0 0;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#484848;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day.nextMonthDay:focus,.flatpickr-day.nextMonthDay:hover,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.today.inRange,.flatpickr-day:focus,.flatpickr-day:hover{cursor:pointer;outline:0;background:#e2e2e2;border-color:#e2e2e2}.flatpickr-day.today{border-color:#bbb}.flatpickr-day.today:focus,.flatpickr-day.today:hover{border-color:#bbb;background:#bbb;color:#fff}.flatpickr-day.endRange,.flatpickr-day.endRange.inRange,.flatpickr-day.endRange.nextMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.endRange:focus,.flatpickr-day.endRange:hover,.flatpickr-day.selected,.flatpickr-day.selected.inRange,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.selected:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange,.flatpickr-day.startRange.inRange,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.startRange:focus,.flatpickr-day.startRange:hover{background:#ff5a5f;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#ff5a5f}.flatpickr-day.endRange.startRange,.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.endRange.endRange,.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #ff5a5f;box-shadow:-10px 0 0 #ff5a5f}.flatpickr-day.endRange.startRange.endRange,.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e2e2e2,5px 0 0 #e2e2e2;box-shadow:-5px 0 0 #e2e2e2,5px 0 0 #e2e2e2}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.nextMonthDay,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.prevMonthDay{color:rgba(72,72,72,.3);background:0 0;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(72,72,72,.1)}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #ff5a5f,5px 0 0 #ff5a5f;box-shadow:-5px 0 0 #ff5a5f,5px 0 0 #ff5a5f}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;border-left:1px solid #eceef1}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(72,72,72,.3);background:0 0;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;background:#fff;border-bottom:1px solid #eceef1}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background:#fff;border-radius:0 0 5px 5px}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#484848}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#484848}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:0 0;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#484848;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-am-pm,.flatpickr-time .flatpickr-time-separator{height:inherit;float:left;line-height:inherit;color:#484848;font-weight:700;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time .flatpickr-am-pm:focus,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time input:hover{background:#eaeaea}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}span.flatpickr-day.selected{font-weight:700} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/menuSprite.svg b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/menuSprite.svg index b32266608..f7dd992b1 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/menuSprite.svg +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/menuSprite.svg @@ -502,4 +502,4 @@ </g><g transform="translate(536,94)"><path fill="#000000" fill-rule="evenodd" d="M11.1984243,12.7314433 C10.1705378,13.2376004 9.01347324,13.51339 7.81008922,13.51339 C3.76079474,13.51339 0.486938477,10.4180495 0.486938477,6.60969321 C0.486938477,5.38242903 0.829564562,4.20636592 1.45265328,3.18078427 C1.16977004,2.84491791 1,2.41529191 1,1.94706351 C1,0.871730025 1.8954305,-1.42108547e-14 3,-1.42108547e-14 C4.1045695,-1.42108547e-14 5,0.871730025 5,1.94706351 C5,3.0129437 4.12024382,3.87878446 3.02908196,3.89392536 C2.52395643,4.68714001 2.23341168,5.61633656 2.23341168,6.60969321 C2.23341168,9.52166659 4.73017526,11.8822874 7.81008922,11.8822874 C8.61187491,11.8822874 9.37414032,11.7223074 10.0631246,11.4342674 C10.0219176,11.2785555 10,11.1153013 10,10.9470635 C10,9.87173003 10.8954305,9 12,9 C13.1045695,9 14,9.87173003 14,10.9470635 C14,12.022397 13.1045695,12.894127 12,12.894127 C11.7149481,12.894127 11.4438245,12.8360715 11.1984243,12.7314433 Z" transform="translate(2 2)"/> </g><g transform="translate(108,144)"><path fill="#000000" fill-rule="evenodd" d="M0,0 L0,1 L6,7 L6,12 L8,11 L8,7 L14,1 L14,0 L0,0 Z M4,3 L10,3 L7,6 L4,3 Z" transform="translate(2 3)"/> </g><g transform="translate(446,238)"><polygon fill="#000000" fill-rule="evenodd" points="4.75 8.127 1.623 5 .561 6.061 4.75 10.25 13.75 1.25 12.689 .189" transform="translate(2 4)"/> -</g></svg> \ No newline at end of file +</g></svg> diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/sprite38.svg b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/sprite38.svg index 741d72b60..d3124b2ab 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/sprite38.svg +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/css/sprite38.svg @@ -525,4 +525,4 @@ </g><g transform="translate(18,640)"><path fill="#000000" fill-rule="evenodd" d="M9.01902793,9.72705177 C8.06535219,10.5218555 6.83851442,11 5.5,11 C2.46243388,11 0,8.53756612 0,5.5 C0,2.46243388 2.46243388,0 5.5,0 C8.53756612,0 11,2.46243388 11,5.5 C11,6.83851442 10.5218555,8.06535219 9.72705177,9.01902793 L9.98,9.27 L10.77,9.27 L14.76,13.27 L13.27,14.76 L9.27,10.77 L9.27,9.98 L9.01902793,9.72705177 Z M5.5,9.5 C7.709139,9.5 9.5,7.709139 9.5,5.5 C9.5,3.290861 7.709139,1.5 5.5,1.5 C3.290861,1.5 1.5,3.290861 1.5,5.5 C1.5,7.709139 3.290861,9.5 5.5,9.5 Z M8,6 L6,6 L6,8 L5,8 L5,6 L3,6 L3,5 L5,5 L5,3 L6,3 L6,5 L8,5 L8,6" transform="translate(2 2)"/> </g><g transform="translate(58,1038)"><path fill="#000000" fill-rule="evenodd" d="M9.01902793,9.72705177 C8.06535219,10.5218555 6.83851442,11 5.5,11 C2.46243388,11 0,8.53756612 0,5.5 C0,2.46243388 2.46243388,0 5.5,0 C8.53756612,0 11,2.46243388 11,5.5 C11,6.83851442 10.5218555,8.06535219 9.72705177,9.01902793 L9.98,9.27 L10.77,9.27 L14.76,13.27 L13.27,14.76 L9.27,10.77 L9.27,9.98 L9.01902793,9.72705177 Z M5.5,9.5 C7.709139,9.5 9.5,7.709139 9.5,5.5 C9.5,3.290861 7.709139,1.5 5.5,1.5 C3.290861,1.5 1.5,3.290861 1.5,5.5 C1.5,7.709139 3.290861,9.5 5.5,9.5 Z M3,6 L3,5 L8,5 L8,6 L3,6 Z" transform="translate(2 2)"/> </g><g transform="translate(58,1020)"><path fill="#000000" fill-rule="evenodd" d="M9.01902793,9.72705177 C8.06535219,10.5218555 6.83851442,11 5.5,11 C2.46243388,11 0,8.53756612 0,5.5 C0,2.46243388 2.46243388,0 5.5,0 C8.53756612,0 11,2.46243388 11,5.5 C11,6.83851442 10.5218555,8.06535219 9.72705177,9.01902793 L9.98,9.27 L10.77,9.27 L14.76,13.27 L13.27,14.76 L9.27,10.77 L9.27,9.98 L9.01902793,9.72705177 Z M5.5,9.5 C7.709139,9.5 9.5,7.709139 9.5,5.5 C9.5,3.290861 7.709139,1.5 5.5,1.5 C3.290861,1.5 1.5,3.290861 1.5,5.5 C1.5,7.709139 3.290861,9.5 5.5,9.5 Z M8,6 L6,6 L6,8 L5,8 L5,6 L3,6 L3,5 L5,5 L5,3 L6,3 L6,5 L8,5 L8,6" transform="translate(2 2)"/> -</g></svg> \ No newline at end of file +</g></svg> diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/demoFeature.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/demoFeature.js index c404cb39f..950dd1973 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/demoFeature.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/demoFeature.js @@ -39,4 +39,4 @@ getRequest:getRequest } -})() \ No newline at end of file +})() diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetCell.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetCell.js index b9d7e0f9a..cf323b28d 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetCell.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetCell.js @@ -1575,4 +1575,4 @@ window.sheetCell = { "scrollLeft": 0, "scrollTop": 0 } -// export default sheetCell \ No newline at end of file +// export default sheetCell diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetChart.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetChart.js index 4d10493d0..f9dabae69 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetChart.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetChart.js @@ -4915,4 +4915,4 @@ window.sheetChart = { }] } -// export default sheetChart \ No newline at end of file +// export default sheetChart diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetComment.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetComment.js index 326d9a9e3..24192cd88 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetComment.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetComment.js @@ -64,4 +64,4 @@ window.sheetComment = { "scrollTop": 0 } -// export default sheetComment; \ No newline at end of file +// export default sheetComment; diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetConditionFormat.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetConditionFormat.js index e91f9b810..62ba6a27a 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetConditionFormat.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetConditionFormat.js @@ -6538,4 +6538,4 @@ window.sheetConditionFormat = { }] } -// export default sheetConditionFormat; \ No newline at end of file +// export default sheetConditionFormat; diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetDataVerification.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetDataVerification.js index ee93a9175..b80d83358 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetDataVerification.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetDataVerification.js @@ -576,4 +576,4 @@ window.sheetDataVerification = { } } } -// export default sheetDataVerification; \ No newline at end of file +// export default sheetDataVerification; diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetFormula.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetFormula.js index 1f1ee3682..e39062235 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetFormula.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetFormula.js @@ -6597,4 +6597,4 @@ "frozen": {"type":"row"} } -// export default sheetFormula \ No newline at end of file +// export default sheetFormula diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPicture.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPicture.js index c328988f4..b2f4ae021 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPicture.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPicture.js @@ -156,4 +156,4 @@ window.sheetPicture = { } } -// export default sheetPicture; \ No newline at end of file +// export default sheetPicture; diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPivotTable.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPivotTable.js index b938b4142..d46398d4a 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPivotTable.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPivotTable.js @@ -186,4 +186,4 @@ window.sheetPivotTable = { } } -// export default sheetPivotTable; \ No newline at end of file +// export default sheetPivotTable; diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPivotTableData.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPivotTableData.js index 3e3407c0c..42f3f2e08 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPivotTableData.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetPivotTableData.js @@ -738,4 +738,4 @@ window.sheetPivotTableData = { "scrollTop": 0 } -// export default sheetPivotTableData; \ No newline at end of file +// export default sheetPivotTableData; diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetSparkline.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetSparkline.js index 031c445b0..69eedc59a 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetSparkline.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetSparkline.js @@ -7063,4 +7063,4 @@ window.sheetSparkline = { "luckysheet_alternateformat_save": [] } -// export default sheetSparkline; \ No newline at end of file +// export default sheetSparkline; diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetTable.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetTable.js index c3ba4baff..0073249ed 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetTable.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/demoData/sheetTable.js @@ -1065,4 +1065,4 @@ window.sheetTable = { }] } -// export default sheetTable; \ No newline at end of file +// export default sheetTable; diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/expendPlugins/chart/chartmix.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/expendPlugins/chart/chartmix.css index 11517bd45..c9104a24a 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/expendPlugins/chart/chartmix.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/expendPlugins/chart/chartmix.css @@ -1 +1 @@ -.luckysheet-datavisual-quick-menu{width:120px;overflow:auto;margin-top:15px}.luckysheet-datavisual-quick-menu::-webkit-scrollbar{display:none}.luckysheet-datavisual-quick-menu>div{text-align:left;padding:4px 4px;border-right:3px solid #fff;color:#777;cursor:pointer;line-height:1.4em;word-wrap:break-word}.luckysheet-datavisual-quick-menu>div:hover{color:#000}.luckysheet-datavisual-quick-menu>div i{width:15px}.luckysheet-datavisual-quick-menu>div:hover i{color:#ff7e7e}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active{border-right:3px solid #ff7e7e;color:#000;font-weight:700}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active:hover i{color:#000}.luckysheet-datavisual-quick-range{padding:5px 0}.luckysheet-datavisual-range-container{background:#fff;border:1px solid #d9d9d9;border-top:1px solid silver;min-width:20px;width:100%;max-width:200px;display:inline-block}.luckysheet-datavisual-range-container-focus{border:1px solid #4d90fe;box-shadow:inset 0 1px 2px rgba(0,0,0,.3);outline:none}.luckysheet-datavisual-range-input,.luckysheet-datavisual-range-input:focus{background:transparent!important;border:none!important;box-sizing:border-box;box-shadow:none;height:25px;margin:0;outline:none!important;padding:1px 8px!important;width:100%}.luckysheet-datavisual-range-button-container{overflow:hidden;padding:0 0 0 8px;text-align:right;width:21px}.luckysheet-datavisual-range-button-container div{padding:2px 10px 0 10px;font-size:18px;cursor:pointer;color:#6598f3}.luckysheet-datavisual-range-button-container div:hover{color:#ff7e7e}.luckysheet-datavisual-quick-m{margin-top:5px;min-height:500px;top:50px;font-size:12px}.luckysheet-datavisual-quick-list{left:110px;right:0;bottom:0;top:80px;position:absolute;overflow:auto;border-top:1px solid #e5e5e5;padding:5px 3px 35px 3px}.luckysheet-datavisual-quick-list-title{padding:4px 6px;background:#e5e5e5;margin-top:10px}.luckysheet-datavisual-quick-list-ul{overflow:hidden}.luckysheet-datavisual-quick-list-item{display:inline-block;margin:5px 8px;border:1px solid #dadada;width:100px;height:80px}.luckysheet-datavisual-quick-list-item:hover{border:1px solid #ff7e7e;box-shadow:0 0 20px #ff7e7e}.luckysheet-datavisual-quick-list-item img{display:inline-block;width:100px;height:80px}.luckysheet-datavisual-quick-list-item-active{border:1px solid #6598f3;box-shadow:0 0 20px #6598f3}.chart-base-slider .el-slider__runway.show-input{margin-right:72px}.chart-base-slider .el-slider__input.el-input-number--mini{width:56px}.chart-base-slider .input_content{margin:6px 0 0 5px}.title{font-weight:700}.el-row{font-size:12px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.chartSetting{width:100%;height:100%} \ No newline at end of file +.luckysheet-datavisual-quick-menu{width:120px;overflow:auto;margin-top:15px}.luckysheet-datavisual-quick-menu::-webkit-scrollbar{display:none}.luckysheet-datavisual-quick-menu>div{text-align:left;padding:4px 4px;border-right:3px solid #fff;color:#777;cursor:pointer;line-height:1.4em;word-wrap:break-word}.luckysheet-datavisual-quick-menu>div:hover{color:#000}.luckysheet-datavisual-quick-menu>div i{width:15px}.luckysheet-datavisual-quick-menu>div:hover i{color:#ff7e7e}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active{border-right:3px solid #ff7e7e;color:#000;font-weight:700}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active:hover i{color:#000}.luckysheet-datavisual-quick-range{padding:5px 0}.luckysheet-datavisual-range-container{background:#fff;border:1px solid #d9d9d9;border-top:1px solid silver;min-width:20px;width:100%;max-width:200px;display:inline-block}.luckysheet-datavisual-range-container-focus{border:1px solid #4d90fe;box-shadow:inset 0 1px 2px rgba(0,0,0,.3);outline:none}.luckysheet-datavisual-range-input,.luckysheet-datavisual-range-input:focus{background:transparent!important;border:none!important;box-sizing:border-box;box-shadow:none;height:25px;margin:0;outline:none!important;padding:1px 8px!important;width:100%}.luckysheet-datavisual-range-button-container{overflow:hidden;padding:0 0 0 8px;text-align:right;width:21px}.luckysheet-datavisual-range-button-container div{padding:2px 10px 0 10px;font-size:18px;cursor:pointer;color:#6598f3}.luckysheet-datavisual-range-button-container div:hover{color:#ff7e7e}.luckysheet-datavisual-quick-m{margin-top:5px;min-height:500px;top:50px;font-size:12px}.luckysheet-datavisual-quick-list{left:110px;right:0;bottom:0;top:80px;position:absolute;overflow:auto;border-top:1px solid #e5e5e5;padding:5px 3px 35px 3px}.luckysheet-datavisual-quick-list-title{padding:4px 6px;background:#e5e5e5;margin-top:10px}.luckysheet-datavisual-quick-list-ul{overflow:hidden}.luckysheet-datavisual-quick-list-item{display:inline-block;margin:5px 8px;border:1px solid #dadada;width:100px;height:80px}.luckysheet-datavisual-quick-list-item:hover{border:1px solid #ff7e7e;box-shadow:0 0 20px #ff7e7e}.luckysheet-datavisual-quick-list-item img{display:inline-block;width:100px;height:80px}.luckysheet-datavisual-quick-list-item-active{border:1px solid #6598f3;box-shadow:0 0 20px #6598f3}.chart-base-slider .el-slider__runway.show-input{margin-right:72px}.chart-base-slider .el-slider__input.el-input-number--mini{width:56px}.chart-base-slider .input_content{margin:6px 0 0 5px}.title{font-weight:700}.el-row{font-size:12px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.chartSetting{width:100%;height:100%} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/expendPlugins/chart/chartmix.umd.min.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/expendPlugins/chart/chartmix.umd.min.js index 490a83bd1..169fc4a08 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/expendPlugins/chart/chartmix.umd.min.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/expendPlugins/chart/chartmix.umd.min.js @@ -31,4 +31,4 @@ function(t){var e,n,r,i,o,a,u,s,l,c,f,h,p,d,v,g,b,y,m,x="sizzle"+1*new Date,w=t. * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors */(function(){var o,a="4.17.15",u=200,s="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",l="Expected a function",c="__lodash_hash_undefined__",f=500,h="__lodash_placeholder__",p=1,d=2,v=4,g=1,b=2,y=1,m=2,x=4,w=8,A=16,S=32,C=64,k=128,O=256,T=512,E=30,I="...",D=800,j=16,L=1,N=2,G=3,R=1/0,M=9007199254740991,B=17976931348623157e292,P=NaN,z=4294967295,V=z-1,Q=z>>>1,F=[["ary",k],["bind",y],["bindKey",m],["curry",w],["curryRight",A],["flip",T],["partial",S],["partialRight",C],["rearg",O]],q="[object Arguments]",W="[object Array]",X="[object AsyncFunction]",Z="[object Boolean]",H="[object Date]",U="[object DOMException]",J="[object Error]",Y="[object Function]",K="[object GeneratorFunction]",_="[object Map]",$="[object Number]",tt="[object Null]",et="[object Object]",nt="[object Promise]",rt="[object Proxy]",it="[object RegExp]",ot="[object Set]",at="[object String]",ut="[object Symbol]",st="[object Undefined]",lt="[object WeakMap]",ct="[object WeakSet]",ft="[object ArrayBuffer]",ht="[object DataView]",pt="[object Float32Array]",dt="[object Float64Array]",vt="[object Int8Array]",gt="[object Int16Array]",bt="[object Int32Array]",yt="[object Uint8Array]",mt="[object Uint8ClampedArray]",xt="[object Uint16Array]",wt="[object Uint32Array]",At=/\b__p \+= '';/g,St=/\b(__p \+=) '' \+/g,Ct=/(__e\(.*?\)|\b__t\)) \+\n'';/g,kt=/&(?:amp|lt|gt|quot|#39);/g,Ot=/[&<>"']/g,Tt=RegExp(kt.source),Et=RegExp(Ot.source),It=/<%-([\s\S]+?)%>/g,Dt=/<%([\s\S]+?)%>/g,jt=/<%=([\s\S]+?)%>/g,Lt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Nt=/^\w*$/,Gt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Rt=/[\\^$.*+?()[\]{}|]/g,Mt=RegExp(Rt.source),Bt=/^\s+|\s+$/g,Pt=/^\s+/,zt=/\s+$/,Vt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Qt=/\{\n\/\* \[wrapped with (.+)\] \*/,Ft=/,? & /,qt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Wt=/\\(\\)?/g,Xt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Zt=/\w*$/,Ht=/^[-+]0x[0-9a-f]+$/i,Ut=/^0b[01]+$/i,Jt=/^\[object .+?Constructor\]$/,Yt=/^0o[0-7]+$/i,Kt=/^(?:0|[1-9]\d*)$/,_t=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,$t=/($^)/,te=/['\n\r\u2028\u2029\\]/g,ee="\\ud800-\\udfff",ne="\\u0300-\\u036f",re="\\ufe20-\\ufe2f",ie="\\u20d0-\\u20ff",oe=ne+re+ie,ae="\\u2700-\\u27bf",ue="a-z\\xdf-\\xf6\\xf8-\\xff",se="\\xac\\xb1\\xd7\\xf7",le="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",ce="\\u2000-\\u206f",fe=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",he="A-Z\\xc0-\\xd6\\xd8-\\xde",pe="\\ufe0e\\ufe0f",de=se+le+ce+fe,ve="['’]",ge="["+ee+"]",be="["+de+"]",ye="["+oe+"]",me="\\d+",xe="["+ae+"]",we="["+ue+"]",Ae="[^"+ee+de+me+ae+ue+he+"]",Se="\\ud83c[\\udffb-\\udfff]",Ce="(?:"+ye+"|"+Se+")",ke="[^"+ee+"]",Oe="(?:\\ud83c[\\udde6-\\uddff]){2}",Te="[\\ud800-\\udbff][\\udc00-\\udfff]",Ee="["+he+"]",Ie="\\u200d",De="(?:"+we+"|"+Ae+")",je="(?:"+Ee+"|"+Ae+")",Le="(?:"+ve+"(?:d|ll|m|re|s|t|ve))?",Ne="(?:"+ve+"(?:D|LL|M|RE|S|T|VE))?",Ge=Ce+"?",Re="["+pe+"]?",Me="(?:"+Ie+"(?:"+[ke,Oe,Te].join("|")+")"+Re+Ge+")*",Be="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Pe="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",ze=Re+Ge+Me,Ve="(?:"+[xe,Oe,Te].join("|")+")"+ze,Qe="(?:"+[ke+ye+"?",ye,Oe,Te,ge].join("|")+")",Fe=RegExp(ve,"g"),qe=RegExp(ye,"g"),We=RegExp(Se+"(?="+Se+")|"+Qe+ze,"g"),Xe=RegExp([Ee+"?"+we+"+"+Le+"(?="+[be,Ee,"$"].join("|")+")",je+"+"+Ne+"(?="+[be,Ee+De,"$"].join("|")+")",Ee+"?"+De+"+"+Le,Ee+"+"+Ne,Pe,Be,me,Ve].join("|"),"g"),Ze=RegExp("["+Ie+ee+oe+pe+"]"),He=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ue=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Je=-1,Ye={};Ye[pt]=Ye[dt]=Ye[vt]=Ye[gt]=Ye[bt]=Ye[yt]=Ye[mt]=Ye[xt]=Ye[wt]=!0,Ye[q]=Ye[W]=Ye[ft]=Ye[Z]=Ye[ht]=Ye[H]=Ye[J]=Ye[Y]=Ye[_]=Ye[$]=Ye[et]=Ye[it]=Ye[ot]=Ye[at]=Ye[lt]=!1;var Ke={};Ke[q]=Ke[W]=Ke[ft]=Ke[ht]=Ke[Z]=Ke[H]=Ke[pt]=Ke[dt]=Ke[vt]=Ke[gt]=Ke[bt]=Ke[_]=Ke[$]=Ke[et]=Ke[it]=Ke[ot]=Ke[at]=Ke[ut]=Ke[yt]=Ke[mt]=Ke[xt]=Ke[wt]=!0,Ke[J]=Ke[Y]=Ke[lt]=!1;var _e={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"},$e={"&":"&","<":"<",">":">",'"':""","'":"'"},tn={"&":"&","<":"<",">":">",""":'"',"'":"'"},en={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},nn=parseFloat,rn=parseInt,on="object"==typeof t&&t&&t.Object===Object&&t,an="object"==typeof self&&self&&self.Object===Object&&self,un=on||an||Function("return this")(),sn=e&&!e.nodeType&&e,ln=sn&&"object"==typeof r&&r&&!r.nodeType&&r,cn=ln&&ln.exports===sn,fn=cn&&on.process,hn=function(){try{var t=ln&&ln.require&&ln.require("util").types;return t||fn&&fn.binding&&fn.binding("util")}catch(e){}}(),pn=hn&&hn.isArrayBuffer,dn=hn&&hn.isDate,vn=hn&&hn.isMap,gn=hn&&hn.isRegExp,bn=hn&&hn.isSet,yn=hn&&hn.isTypedArray;function mn(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function xn(t,e,n,r){var i=-1,o=null==t?0:t.length;while(++i<o){var a=t[i];e(r,a,n(a),t)}return r}function wn(t,e){var n=-1,r=null==t?0:t.length;while(++n<r)if(!1===e(t[n],n,t))break;return t}function An(t,e){var n=null==t?0:t.length;while(n--)if(!1===e(t[n],n,t))break;return t}function Sn(t,e){var n=-1,r=null==t?0:t.length;while(++n<r)if(!e(t[n],n,t))return!1;return!0}function Cn(t,e){var n=-1,r=null==t?0:t.length,i=0,o=[];while(++n<r){var a=t[n];e(a,n,t)&&(o[i++]=a)}return o}function kn(t,e){var n=null==t?0:t.length;return!!n&&Bn(t,e,0)>-1}function On(t,e,n){var r=-1,i=null==t?0:t.length;while(++r<i)if(n(e,t[r]))return!0;return!1}function Tn(t,e){var n=-1,r=null==t?0:t.length,i=Array(r);while(++n<r)i[n]=e(t[n],n,t);return i}function En(t,e){var n=-1,r=e.length,i=t.length;while(++n<r)t[i+n]=e[n];return t}function In(t,e,n,r){var i=-1,o=null==t?0:t.length;r&&o&&(n=t[++i]);while(++i<o)n=e(n,t[i],i,t);return n}function Dn(t,e,n,r){var i=null==t?0:t.length;r&&i&&(n=t[--i]);while(i--)n=e(n,t[i],i,t);return n}function jn(t,e){var n=-1,r=null==t?0:t.length;while(++n<r)if(e(t[n],n,t))return!0;return!1}var Ln=Qn("length");function Nn(t){return t.split("")}function Gn(t){return t.match(qt)||[]}function Rn(t,e,n){var r;return n(t,(function(t,n,i){if(e(t,n,i))return r=n,!1})),r}function Mn(t,e,n,r){var i=t.length,o=n+(r?1:-1);while(r?o--:++o<i)if(e(t[o],o,t))return o;return-1}function Bn(t,e,n){return e===e?hr(t,e,n):Mn(t,zn,n)}function Pn(t,e,n,r){var i=n-1,o=t.length;while(++i<o)if(r(t[i],e))return i;return-1}function zn(t){return t!==t}function Vn(t,e){var n=null==t?0:t.length;return n?Xn(t,e)/n:P}function Qn(t){return function(e){return null==e?o:e[t]}}function Fn(t){return function(e){return null==t?o:t[e]}}function qn(t,e,n,r,i){return i(t,(function(t,i,o){n=r?(r=!1,t):e(n,t,i,o)})),n}function Wn(t,e){var n=t.length;t.sort(e);while(n--)t[n]=t[n].value;return t}function Xn(t,e){var n,r=-1,i=t.length;while(++r<i){var a=e(t[r]);a!==o&&(n=n===o?a:n+a)}return n}function Zn(t,e){var n=-1,r=Array(t);while(++n<t)r[n]=e(n);return r}function Hn(t,e){return Tn(e,(function(e){return[e,t[e]]}))}function Un(t){return function(e){return t(e)}}function Jn(t,e){return Tn(e,(function(e){return t[e]}))}function Yn(t,e){return t.has(e)}function Kn(t,e){var n=-1,r=t.length;while(++n<r&&Bn(e,t[n],0)>-1);return n}function _n(t,e){var n=t.length;while(n--&&Bn(e,t[n],0)>-1);return n}function $n(t,e){var n=t.length,r=0;while(n--)t[n]===e&&++r;return r}var tr=Fn(_e),er=Fn($e);function nr(t){return"\\"+en[t]}function rr(t,e){return null==t?o:t[e]}function ir(t){return Ze.test(t)}function or(t){return He.test(t)}function ar(t){var e,n=[];while(!(e=t.next()).done)n.push(e.value);return n}function ur(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function sr(t,e){return function(n){return t(e(n))}}function lr(t,e){var n=-1,r=t.length,i=0,o=[];while(++n<r){var a=t[n];a!==e&&a!==h||(t[n]=h,o[i++]=n)}return o}function cr(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}function fr(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=[t,t]})),n}function hr(t,e,n){var r=n-1,i=t.length;while(++r<i)if(t[r]===e)return r;return-1}function pr(t,e,n){var r=n+1;while(r--)if(t[r]===e)return r;return r}function dr(t){return ir(t)?br(t):Ln(t)}function vr(t){return ir(t)?yr(t):Nn(t)}var gr=Fn(tn);function br(t){var e=We.lastIndex=0;while(We.test(t))++e;return e}function yr(t){return t.match(We)||[]}function mr(t){return t.match(Xe)||[]}var xr=function t(e){e=null==e?un:wr.defaults(un.Object(),e,wr.pick(un,Ue));var n=e.Array,r=e.Date,i=e.Error,qt=e.Function,ee=e.Math,ne=e.Object,re=e.RegExp,ie=e.String,oe=e.TypeError,ae=n.prototype,ue=qt.prototype,se=ne.prototype,le=e["__core-js_shared__"],ce=ue.toString,fe=se.hasOwnProperty,he=0,pe=function(){var t=/[^.]+$/.exec(le&&le.keys&&le.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}(),de=se.toString,ve=ce.call(ne),ge=un._,be=re("^"+ce.call(fe).replace(Rt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ye=cn?e.Buffer:o,me=e.Symbol,xe=e.Uint8Array,we=ye?ye.allocUnsafe:o,Ae=sr(ne.getPrototypeOf,ne),Se=ne.create,Ce=se.propertyIsEnumerable,ke=ae.splice,Oe=me?me.isConcatSpreadable:o,Te=me?me.iterator:o,Ee=me?me.toStringTag:o,Ie=function(){try{var t=Xa(ne,"defineProperty");return t({},"",{}),t}catch(e){}}(),De=e.clearTimeout!==un.clearTimeout&&e.clearTimeout,je=r&&r.now!==un.Date.now&&r.now,Le=e.setTimeout!==un.setTimeout&&e.setTimeout,Ne=ee.ceil,Ge=ee.floor,Re=ne.getOwnPropertySymbols,Me=ye?ye.isBuffer:o,Be=e.isFinite,Pe=ae.join,ze=sr(ne.keys,ne),Ve=ee.max,Qe=ee.min,We=r.now,Xe=e.parseInt,Ze=ee.random,He=ae.reverse,_e=Xa(e,"DataView"),$e=Xa(e,"Map"),tn=Xa(e,"Promise"),en=Xa(e,"Set"),on=Xa(e,"WeakMap"),an=Xa(ne,"create"),sn=on&&new on,ln={},fn=Du(_e),hn=Du($e),Ln=Du(tn),Nn=Du(en),Fn=Du(on),hr=me?me.prototype:o,br=hr?hr.valueOf:o,yr=hr?hr.toString:o;function xr(t){if(Sc(t)&&!ac(t)&&!(t instanceof kr)){if(t instanceof Cr)return t;if(fe.call(t,"__wrapped__"))return Lu(t)}return new Cr(t)}var Ar=function(){function t(){}return function(e){if(!Ac(e))return{};if(Se)return Se(e);t.prototype=e;var n=new t;return t.prototype=o,n}}();function Sr(){}function Cr(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=o}function kr(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=z,this.__views__=[]}function Or(){var t=new kr(this.__wrapped__);return t.__actions__=na(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=na(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=na(this.__views__),t}function Tr(){if(this.__filtered__){var t=new kr(this);t.__dir__=-1,t.__filtered__=!0}else t=this.clone(),t.__dir__*=-1;return t}function Er(){var t=this.__wrapped__.value(),e=this.__dir__,n=ac(t),r=e<0,i=n?t.length:0,o=Ya(0,i,this.__views__),a=o.start,u=o.end,s=u-a,l=r?u:a-1,c=this.__iteratees__,f=c.length,h=0,p=Qe(s,this.__takeCount__);if(!n||!r&&i==s&&p==s)return Bo(t,this.__actions__);var d=[];t:while(s--&&h<p){l+=e;var v=-1,g=t[l];while(++v<f){var b=c[v],y=b.iteratee,m=b.type,x=y(g);if(m==N)g=x;else if(!x){if(m==L)continue t;break t}}d[h++]=g}return d}function Ir(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e<n){var r=t[e];this.set(r[0],r[1])}}function Dr(){this.__data__=an?an(null):{},this.size=0}function jr(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}function Lr(t){var e=this.__data__;if(an){var n=e[t];return n===c?o:n}return fe.call(e,t)?e[t]:o}function Nr(t){var e=this.__data__;return an?e[t]!==o:fe.call(e,t)}function Gr(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=an&&e===o?c:e,this}function Rr(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e<n){var r=t[e];this.set(r[0],r[1])}}function Mr(){this.__data__=[],this.size=0}function Br(t){var e=this.__data__,n=si(e,t);if(n<0)return!1;var r=e.length-1;return n==r?e.pop():ke.call(e,n,1),--this.size,!0}function Pr(t){var e=this.__data__,n=si(e,t);return n<0?o:e[n][1]}function zr(t){return si(this.__data__,t)>-1}function Vr(t,e){var n=this.__data__,r=si(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this}function Qr(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e<n){var r=t[e];this.set(r[0],r[1])}}function Fr(){this.size=0,this.__data__={hash:new Ir,map:new($e||Rr),string:new Ir}}function qr(t){var e=qa(this,t)["delete"](t);return this.size-=e?1:0,e}function Wr(t){return qa(this,t).get(t)}function Xr(t){return qa(this,t).has(t)}function Zr(t,e){var n=qa(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this}function Hr(t){var e=-1,n=null==t?0:t.length;this.__data__=new Qr;while(++e<n)this.add(t[e])}function Ur(t){return this.__data__.set(t,c),this}function Jr(t){return this.__data__.has(t)}function Yr(t){var e=this.__data__=new Rr(t);this.size=e.size}function Kr(){this.__data__=new Rr,this.size=0}function _r(t){var e=this.__data__,n=e["delete"](t);return this.size=e.size,n}function $r(t){return this.__data__.get(t)}function ti(t){return this.__data__.has(t)}function ei(t,e){var n=this.__data__;if(n instanceof Rr){var r=n.__data__;if(!$e||r.length<u-1)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new Qr(r)}return n.set(t,e),this.size=n.size,this}function ni(t,e){var n=ac(t),r=!n&&oc(t),i=!n&&!r&&fc(t),o=!n&&!r&&!i&&Pc(t),a=n||r||i||o,u=a?Zn(t.length,ie):[],s=u.length;for(var l in t)!e&&!fe.call(t,l)||a&&("length"==l||i&&("offset"==l||"parent"==l)||o&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||iu(l,s))||u.push(l);return u}function ri(t){var e=t.length;return e?t[go(0,e-1)]:o}function ii(t,e){return Tu(na(t),di(e,0,t.length))}function oi(t){return Tu(na(t))}function ai(t,e,n){(n!==o&&!nc(t[e],n)||n===o&&!(e in t))&&hi(t,e,n)}function ui(t,e,n){var r=t[e];fe.call(t,e)&&nc(r,n)&&(n!==o||e in t)||hi(t,e,n)}function si(t,e){var n=t.length;while(n--)if(nc(t[n][0],e))return n;return-1}function li(t,e,n,r){return xi(t,(function(t,i,o){e(r,t,n(t),o)})),r}function ci(t,e){return t&&ra(e,wf(e),t)}function fi(t,e){return t&&ra(e,Af(e),t)}function hi(t,e,n){"__proto__"==e&&Ie?Ie(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function pi(t,e){var r=-1,i=e.length,a=n(i),u=null==t;while(++r<i)a[r]=u?o:vf(t,e[r]);return a}function di(t,e,n){return t===t&&(n!==o&&(t=t<=n?t:n),e!==o&&(t=t>=e?t:e)),t}function vi(t,e,n,r,i,a){var u,s=e&p,l=e&d,c=e&v;if(n&&(u=i?n(t,r,i,a):n(t)),u!==o)return u;if(!Ac(t))return t;var f=ac(t);if(f){if(u=$a(t),!s)return na(t,u)}else{var h=Ja(t),g=h==Y||h==K;if(fc(t))return Zo(t,s);if(h==et||h==q||g&&!i){if(u=l||g?{}:tu(t),!s)return l?oa(t,fi(u,t)):ia(t,ci(u,t))}else{if(!Ke[h])return i?t:{};u=eu(t,h,s)}}a||(a=new Yr);var b=a.get(t);if(b)return b;a.set(t,u),Rc(t)?t.forEach((function(r){u.add(vi(r,e,n,r,t,a))})):Cc(t)&&t.forEach((function(r,i){u.set(i,vi(r,e,n,i,t,a))}));var y=c?l?Pa:Ba:l?Af:wf,m=f?o:y(t);return wn(m||t,(function(r,i){m&&(i=r,r=t[i]),ui(u,i,vi(r,e,n,i,t,a))})),u}function gi(t){var e=wf(t);return function(n){return bi(n,t,e)}}function bi(t,e,n){var r=n.length;if(null==t)return!r;t=ne(t);while(r--){var i=n[r],a=e[i],u=t[i];if(u===o&&!(i in t)||!a(u))return!1}return!0}function yi(t,e,n){if("function"!=typeof t)throw new oe(l);return Su((function(){t.apply(o,n)}),e)}function mi(t,e,n,r){var i=-1,o=kn,a=!0,s=t.length,l=[],c=e.length;if(!s)return l;n&&(e=Tn(e,Un(n))),r?(o=On,a=!1):e.length>=u&&(o=Yn,a=!1,e=new Hr(e));t:while(++i<s){var f=t[i],h=null==n?f:n(f);if(f=r||0!==f?f:0,a&&h===h){var p=c;while(p--)if(e[p]===h)continue t;l.push(f)}else o(e,h,r)||l.push(f)}return l}xr.templateSettings={escape:It,evaluate:Dt,interpolate:jt,variable:"",imports:{_:xr}},xr.prototype=Sr.prototype,xr.prototype.constructor=xr,Cr.prototype=Ar(Sr.prototype),Cr.prototype.constructor=Cr,kr.prototype=Ar(Sr.prototype),kr.prototype.constructor=kr,Ir.prototype.clear=Dr,Ir.prototype["delete"]=jr,Ir.prototype.get=Lr,Ir.prototype.has=Nr,Ir.prototype.set=Gr,Rr.prototype.clear=Mr,Rr.prototype["delete"]=Br,Rr.prototype.get=Pr,Rr.prototype.has=zr,Rr.prototype.set=Vr,Qr.prototype.clear=Fr,Qr.prototype["delete"]=qr,Qr.prototype.get=Wr,Qr.prototype.has=Xr,Qr.prototype.set=Zr,Hr.prototype.add=Hr.prototype.push=Ur,Hr.prototype.has=Jr,Yr.prototype.clear=Kr,Yr.prototype["delete"]=_r,Yr.prototype.get=$r,Yr.prototype.has=ti,Yr.prototype.set=ei;var xi=sa(Ii),wi=sa(Di,!0);function Ai(t,e){var n=!0;return xi(t,(function(t,r,i){return n=!!e(t,r,i),n})),n}function Si(t,e,n){var r=-1,i=t.length;while(++r<i){var a=t[r],u=e(a);if(null!=u&&(s===o?u===u&&!Bc(u):n(u,s)))var s=u,l=a}return l}function Ci(t,e,n,r){var i=t.length;n=Zc(n),n<0&&(n=-n>i?0:i+n),r=r===o||r>i?i:Zc(r),r<0&&(r+=i),r=n>r?0:Hc(r);while(n<r)t[n++]=e;return t}function ki(t,e){var n=[];return xi(t,(function(t,r,i){e(t,r,i)&&n.push(t)})),n}function Oi(t,e,n,r,i){var o=-1,a=t.length;n||(n=ru),i||(i=[]);while(++o<a){var u=t[o];e>0&&n(u)?e>1?Oi(u,e-1,n,r,i):En(i,u):r||(i[i.length]=u)}return i}var Ti=la(),Ei=la(!0);function Ii(t,e){return t&&Ti(t,e,wf)}function Di(t,e){return t&&Ei(t,e,wf)}function ji(t,e){return Cn(e,(function(e){return mc(t[e])}))}function Li(t,e){e=Fo(e,t);var n=0,r=e.length;while(null!=t&&n<r)t=t[Iu(e[n++])];return n&&n==r?t:o}function Ni(t,e,n){var r=e(t);return ac(t)?r:En(r,n(t))}function Gi(t){return null==t?t===o?st:tt:Ee&&Ee in ne(t)?Za(t):bu(t)}function Ri(t,e){return t>e}function Mi(t,e){return null!=t&&fe.call(t,e)}function Bi(t,e){return null!=t&&e in ne(t)}function Pi(t,e,n){return t>=Qe(e,n)&&t<Ve(e,n)}function zi(t,e,r){var i=r?On:kn,a=t[0].length,u=t.length,s=u,l=n(u),c=1/0,f=[];while(s--){var h=t[s];s&&e&&(h=Tn(h,Un(e))),c=Qe(h.length,c),l[s]=!r&&(e||a>=120&&h.length>=120)?new Hr(s&&h):o}h=t[0];var p=-1,d=l[0];t:while(++p<a&&f.length<c){var v=h[p],g=e?e(v):v;if(v=r||0!==v?v:0,!(d?Yn(d,g):i(f,g,r))){s=u;while(--s){var b=l[s];if(!(b?Yn(b,g):i(t[s],g,r)))continue t}d&&d.push(g),f.push(v)}}return f}function Vi(t,e,n,r){return Ii(t,(function(t,i,o){e(r,n(t),i,o)})),r}function Qi(t,e,n){e=Fo(e,t),t=mu(t,e);var r=null==t?t:t[Iu(rs(e))];return null==r?o:mn(r,t,n)}function Fi(t){return Sc(t)&&Gi(t)==q}function qi(t){return Sc(t)&&Gi(t)==ft}function Wi(t){return Sc(t)&&Gi(t)==H}function Xi(t,e,n,r,i){return t===e||(null==t||null==e||!Sc(t)&&!Sc(e)?t!==t&&e!==e:Zi(t,e,n,r,Xi,i))}function Zi(t,e,n,r,i,o){var a=ac(t),u=ac(e),s=a?W:Ja(t),l=u?W:Ja(e);s=s==q?et:s,l=l==q?et:l;var c=s==et,f=l==et,h=s==l;if(h&&fc(t)){if(!fc(e))return!1;a=!0,c=!1}if(h&&!c)return o||(o=new Yr),a||Pc(t)?Na(t,e,n,r,i,o):Ga(t,e,s,n,r,i,o);if(!(n&g)){var p=c&&fe.call(t,"__wrapped__"),d=f&&fe.call(e,"__wrapped__");if(p||d){var v=p?t.value():t,b=d?e.value():e;return o||(o=new Yr),i(v,b,n,r,o)}}return!!h&&(o||(o=new Yr),Ra(t,e,n,r,i,o))}function Hi(t){return Sc(t)&&Ja(t)==_}function Ui(t,e,n,r){var i=n.length,a=i,u=!r;if(null==t)return!a;t=ne(t);while(i--){var s=n[i];if(u&&s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}while(++i<a){s=n[i];var l=s[0],c=t[l],f=s[1];if(u&&s[2]){if(c===o&&!(l in t))return!1}else{var h=new Yr;if(r)var p=r(c,f,l,t,e,h);if(!(p===o?Xi(f,c,g|b,r,h):p))return!1}}return!0}function Ji(t){if(!Ac(t)||lu(t))return!1;var e=mc(t)?be:Jt;return e.test(Du(t))}function Yi(t){return Sc(t)&&Gi(t)==it}function Ki(t){return Sc(t)&&Ja(t)==ot}function _i(t){return Sc(t)&&wc(t.length)&&!!Ye[Gi(t)]}function $i(t){return"function"==typeof t?t:null==t?Ih:"object"==typeof t?ac(t)?oo(t[0],t[1]):io(t):Fh(t)}function to(t){if(!fu(t))return ze(t);var e=[];for(var n in ne(t))fe.call(t,n)&&"constructor"!=n&&e.push(n);return e}function eo(t){if(!Ac(t))return gu(t);var e=fu(t),n=[];for(var r in t)("constructor"!=r||!e&&fe.call(t,r))&&n.push(r);return n}function no(t,e){return t<e}function ro(t,e){var r=-1,i=sc(t)?n(t.length):[];return xi(t,(function(t,n,o){i[++r]=e(t,n,o)})),i}function io(t){var e=Wa(t);return 1==e.length&&e[0][2]?pu(e[0][0],e[0][1]):function(n){return n===t||Ui(n,t,e)}}function oo(t,e){return au(t)&&hu(e)?pu(Iu(t),e):function(n){var r=vf(n,t);return r===o&&r===e?bf(n,t):Xi(e,r,g|b)}}function ao(t,e,n,r,i){t!==e&&Ti(e,(function(a,u){if(i||(i=new Yr),Ac(a))uo(t,e,u,n,ao,r,i);else{var s=r?r(wu(t,u),a,u+"",t,e,i):o;s===o&&(s=a),ai(t,u,s)}}),Af)}function uo(t,e,n,r,i,a,u){var s=wu(t,n),l=wu(e,n),c=u.get(l);if(c)ai(t,n,c);else{var f=a?a(s,l,n+"",t,e,u):o,h=f===o;if(h){var p=ac(l),d=!p&&fc(l),v=!p&&!d&&Pc(l);f=l,p||d||v?ac(s)?f=s:lc(s)?f=na(s):d?(h=!1,f=Zo(l,!0)):v?(h=!1,f=Ko(l,!0)):f=[]:Lc(l)||oc(l)?(f=s,oc(s)?f=Jc(s):Ac(s)&&!mc(s)||(f=tu(l))):h=!1}h&&(u.set(l,f),i(f,l,r,a,u),u["delete"](l)),ai(t,n,f)}}function so(t,e){var n=t.length;if(n)return e+=e<0?n:0,iu(e,n)?t[e]:o}function lo(t,e,n){var r=-1;e=Tn(e.length?e:[Ih],Un(Fa()));var i=ro(t,(function(t,n,i){var o=Tn(e,(function(e){return e(t)}));return{criteria:o,index:++r,value:t}}));return Wn(i,(function(t,e){return $o(t,e,n)}))}function co(t,e){return fo(t,e,(function(e,n){return bf(t,n)}))}function fo(t,e,n){var r=-1,i=e.length,o={};while(++r<i){var a=e[r],u=Li(t,a);n(u,a)&&Ao(o,Fo(a,t),u)}return o}function ho(t){return function(e){return Li(e,t)}}function po(t,e,n,r){var i=r?Pn:Bn,o=-1,a=e.length,u=t;t===e&&(e=na(e)),n&&(u=Tn(t,Un(n)));while(++o<a){var s=0,l=e[o],c=n?n(l):l;while((s=i(u,c,s,r))>-1)u!==t&&ke.call(u,s,1),ke.call(t,s,1)}return t}function vo(t,e){var n=t?e.length:0,r=n-1;while(n--){var i=e[n];if(n==r||i!==o){var o=i;iu(i)?ke.call(t,i,1):Go(t,i)}}return t}function go(t,e){return t+Ge(Ze()*(e-t+1))}function bo(t,e,r,i){var o=-1,a=Ve(Ne((e-t)/(r||1)),0),u=n(a);while(a--)u[i?a:++o]=t,t+=r;return u}function yo(t,e){var n="";if(!t||e<1||e>M)return n;do{e%2&&(n+=t),e=Ge(e/2),e&&(t+=t)}while(e);return n}function mo(t,e){return Cu(yu(t,e,Ih),t+"")}function xo(t){return ri(Vf(t))}function wo(t,e){var n=Vf(t);return Tu(n,di(e,0,n.length))}function Ao(t,e,n,r){if(!Ac(t))return t;e=Fo(e,t);var i=-1,a=e.length,u=a-1,s=t;while(null!=s&&++i<a){var l=Iu(e[i]),c=n;if(i!=u){var f=s[l];c=r?r(f,l,s):o,c===o&&(c=Ac(f)?f:iu(e[i+1])?[]:{})}ui(s,l,c),s=s[l]}return t}var So=sn?function(t,e){return sn.set(t,e),t}:Ih,Co=Ie?function(t,e){return Ie(t,"toString",{configurable:!0,enumerable:!1,value:kh(e),writable:!0})}:Ih;function ko(t){return Tu(Vf(t))}function Oo(t,e,r){var i=-1,o=t.length;e<0&&(e=-e>o?0:o+e),r=r>o?o:r,r<0&&(r+=o),o=e>r?0:r-e>>>0,e>>>=0;var a=n(o);while(++i<o)a[i]=t[i+e];return a}function To(t,e){var n;return xi(t,(function(t,r,i){return n=e(t,r,i),!n})),!!n}function Eo(t,e,n){var r=0,i=null==t?r:t.length;if("number"==typeof e&&e===e&&i<=Q){while(r<i){var o=r+i>>>1,a=t[o];null!==a&&!Bc(a)&&(n?a<=e:a<e)?r=o+1:i=o}return i}return Io(t,e,Ih,n)}function Io(t,e,n,r){e=n(e);var i=0,a=null==t?0:t.length,u=e!==e,s=null===e,l=Bc(e),c=e===o;while(i<a){var f=Ge((i+a)/2),h=n(t[f]),p=h!==o,d=null===h,v=h===h,g=Bc(h);if(u)var b=r||v;else b=c?v&&(r||p):s?v&&p&&(r||!d):l?v&&p&&!d&&(r||!g):!d&&!g&&(r?h<=e:h<e);b?i=f+1:a=f}return Qe(a,V)}function Do(t,e){var n=-1,r=t.length,i=0,o=[];while(++n<r){var a=t[n],u=e?e(a):a;if(!n||!nc(u,s)){var s=u;o[i++]=0===a?0:a}}return o}function jo(t){return"number"==typeof t?t:Bc(t)?P:+t}function Lo(t){if("string"==typeof t)return t;if(ac(t))return Tn(t,Lo)+"";if(Bc(t))return yr?yr.call(t):"";var e=t+"";return"0"==e&&1/t==-R?"-0":e}function No(t,e,n){var r=-1,i=kn,o=t.length,a=!0,s=[],l=s;if(n)a=!1,i=On;else if(o>=u){var c=e?null:Ta(t);if(c)return cr(c);a=!1,i=Yn,l=new Hr}else l=e?[]:s;t:while(++r<o){var f=t[r],h=e?e(f):f;if(f=n||0!==f?f:0,a&&h===h){var p=l.length;while(p--)if(l[p]===h)continue t;e&&l.push(h),s.push(f)}else i(l,h,n)||(l!==s&&l.push(h),s.push(f))}return s}function Go(t,e){return e=Fo(e,t),t=mu(t,e),null==t||delete t[Iu(rs(e))]}function Ro(t,e,n,r){return Ao(t,e,n(Li(t,e)),r)}function Mo(t,e,n,r){var i=t.length,o=r?i:-1;while((r?o--:++o<i)&&e(t[o],o,t));return n?Oo(t,r?0:o,r?o+1:i):Oo(t,r?o+1:0,r?i:o)}function Bo(t,e){var n=t;return n instanceof kr&&(n=n.value()),In(e,(function(t,e){return e.func.apply(e.thisArg,En([t],e.args))}),n)}function Po(t,e,r){var i=t.length;if(i<2)return i?No(t[0]):[];var o=-1,a=n(i);while(++o<i){var u=t[o],s=-1;while(++s<i)s!=o&&(a[o]=mi(a[o]||u,t[s],e,r))}return No(Oi(a,1),e,r)}function zo(t,e,n){var r=-1,i=t.length,a=e.length,u={};while(++r<i){var s=r<a?e[r]:o;n(u,t[r],s)}return u}function Vo(t){return lc(t)?t:[]}function Qo(t){return"function"==typeof t?t:Ih}function Fo(t,e){return ac(t)?t:au(t,e)?[t]:Eu(Kc(t))}var qo=mo;function Wo(t,e,n){var r=t.length;return n=n===o?r:n,!e&&n>=r?t:Oo(t,e,n)}var Xo=De||function(t){return un.clearTimeout(t)};function Zo(t,e){if(e)return t.slice();var n=t.length,r=we?we(n):new t.constructor(n);return t.copy(r),r}function Ho(t){var e=new t.constructor(t.byteLength);return new xe(e).set(new xe(t)),e}function Uo(t,e){var n=e?Ho(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}function Jo(t){var e=new t.constructor(t.source,Zt.exec(t));return e.lastIndex=t.lastIndex,e}function Yo(t){return br?ne(br.call(t)):{}}function Ko(t,e){var n=e?Ho(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function _o(t,e){if(t!==e){var n=t!==o,r=null===t,i=t===t,a=Bc(t),u=e!==o,s=null===e,l=e===e,c=Bc(e);if(!s&&!c&&!a&&t>e||a&&u&&l&&!s&&!c||r&&u&&l||!n&&l||!i)return 1;if(!r&&!a&&!c&&t<e||c&&n&&i&&!r&&!a||s&&n&&i||!u&&i||!l)return-1}return 0}function $o(t,e,n){var r=-1,i=t.criteria,o=e.criteria,a=i.length,u=n.length;while(++r<a){var s=_o(i[r],o[r]);if(s){if(r>=u)return s;var l=n[r];return s*("desc"==l?-1:1)}}return t.index-e.index}function ta(t,e,r,i){var o=-1,a=t.length,u=r.length,s=-1,l=e.length,c=Ve(a-u,0),f=n(l+c),h=!i;while(++s<l)f[s]=e[s];while(++o<u)(h||o<a)&&(f[r[o]]=t[o]);while(c--)f[s++]=t[o++];return f}function ea(t,e,r,i){var o=-1,a=t.length,u=-1,s=r.length,l=-1,c=e.length,f=Ve(a-s,0),h=n(f+c),p=!i;while(++o<f)h[o]=t[o];var d=o;while(++l<c)h[d+l]=e[l];while(++u<s)(p||o<a)&&(h[d+r[u]]=t[o++]);return h}function na(t,e){var r=-1,i=t.length;e||(e=n(i));while(++r<i)e[r]=t[r];return e}function ra(t,e,n,r){var i=!n;n||(n={});var a=-1,u=e.length;while(++a<u){var s=e[a],l=r?r(n[s],t[s],s,n,t):o;l===o&&(l=t[s]),i?hi(n,s,l):ui(n,s,l)}return n}function ia(t,e){return ra(t,Ha(t),e)}function oa(t,e){return ra(t,Ua(t),e)}function aa(t,e){return function(n,r){var i=ac(n)?xn:li,o=e?e():{};return i(n,t,Fa(r,2),o)}}function ua(t){return mo((function(e,n){var r=-1,i=n.length,a=i>1?n[i-1]:o,u=i>2?n[2]:o;a=t.length>3&&"function"==typeof a?(i--,a):o,u&&ou(n[0],n[1],u)&&(a=i<3?o:a,i=1),e=ne(e);while(++r<i){var s=n[r];s&&t(e,s,r,a)}return e}))}function sa(t,e){return function(n,r){if(null==n)return n;if(!sc(n))return t(n,r);var i=n.length,o=e?i:-1,a=ne(n);while(e?o--:++o<i)if(!1===r(a[o],o,a))break;return n}}function la(t){return function(e,n,r){var i=-1,o=ne(e),a=r(e),u=a.length;while(u--){var s=a[t?u:++i];if(!1===n(o[s],s,o))break}return e}}function ca(t,e,n){var r=e&y,i=pa(t);function o(){var e=this&&this!==un&&this instanceof o?i:t;return e.apply(r?n:this,arguments)}return o}function fa(t){return function(e){e=Kc(e);var n=ir(e)?vr(e):o,r=n?n[0]:e.charAt(0),i=n?Wo(n,1).join(""):e.slice(1);return r[t]()+i}}function ha(t){return function(e){return In(xh(Hf(e).replace(Fe,"")),t,"")}}function pa(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=Ar(t.prototype),r=t.apply(n,e);return Ac(r)?r:n}}function da(t,e,r){var i=pa(t);function a(){var u=arguments.length,s=n(u),l=u,c=Qa(a);while(l--)s[l]=arguments[l];var f=u<3&&s[0]!==c&&s[u-1]!==c?[]:lr(s,c);if(u-=f.length,u<r)return ka(t,e,ba,a.placeholder,o,s,f,o,o,r-u);var h=this&&this!==un&&this instanceof a?i:t;return mn(h,this,s)}return a}function va(t){return function(e,n,r){var i=ne(e);if(!sc(e)){var a=Fa(n,3);e=wf(e),n=function(t){return a(i[t],t,i)}}var u=t(e,n,r);return u>-1?i[a?e[u]:u]:o}}function ga(t){return Ma((function(e){var n=e.length,r=n,i=Cr.prototype.thru;t&&e.reverse();while(r--){var a=e[r];if("function"!=typeof a)throw new oe(l);if(i&&!u&&"wrapper"==Va(a))var u=new Cr([],!0)}r=u?r:n;while(++r<n){a=e[r];var s=Va(a),c="wrapper"==s?za(a):o;u=c&&su(c[0])&&c[1]==(k|w|S|O)&&!c[4].length&&1==c[9]?u[Va(c[0])].apply(u,c[3]):1==a.length&&su(a)?u[s]():u.thru(a)}return function(){var t=arguments,r=t[0];if(u&&1==t.length&&ac(r))return u.plant(r).value();var i=0,o=n?e[i].apply(this,t):r;while(++i<n)o=e[i].call(this,o);return o}}))}function ba(t,e,r,i,a,u,s,l,c,f){var h=e&k,p=e&y,d=e&m,v=e&(w|A),g=e&T,b=d?o:pa(t);function x(){var o=arguments.length,y=n(o),m=o;while(m--)y[m]=arguments[m];if(v)var w=Qa(x),A=$n(y,w);if(i&&(y=ta(y,i,a,v)),u&&(y=ea(y,u,s,v)),o-=A,v&&o<f){var S=lr(y,w);return ka(t,e,ba,x.placeholder,r,y,S,l,c,f-o)}var C=p?r:this,k=d?C[t]:t;return o=y.length,l?y=xu(y,l):g&&o>1&&y.reverse(),h&&c<o&&(y.length=c),this&&this!==un&&this instanceof x&&(k=b||pa(k)),k.apply(C,y)}return x}function ya(t,e){return function(n,r){return Vi(n,t,e(r),{})}}function ma(t,e){return function(n,r){var i;if(n===o&&r===o)return e;if(n!==o&&(i=n),r!==o){if(i===o)return r;"string"==typeof n||"string"==typeof r?(n=Lo(n),r=Lo(r)):(n=jo(n),r=jo(r)),i=t(n,r)}return i}}function xa(t){return Ma((function(e){return e=Tn(e,Un(Fa())),mo((function(n){var r=this;return t(e,(function(t){return mn(t,r,n)}))}))}))}function wa(t,e){e=e===o?" ":Lo(e);var n=e.length;if(n<2)return n?yo(e,t):e;var r=yo(e,Ne(t/dr(e)));return ir(e)?Wo(vr(r),0,t).join(""):r.slice(0,t)}function Aa(t,e,r,i){var o=e&y,a=pa(t);function u(){var e=-1,s=arguments.length,l=-1,c=i.length,f=n(c+s),h=this&&this!==un&&this instanceof u?a:t;while(++l<c)f[l]=i[l];while(s--)f[l++]=arguments[++e];return mn(h,o?r:this,f)}return u}function Sa(t){return function(e,n,r){return r&&"number"!=typeof r&&ou(e,n,r)&&(n=r=o),e=Xc(e),n===o?(n=e,e=0):n=Xc(n),r=r===o?e<n?1:-1:Xc(r),bo(e,n,r,t)}}function Ca(t){return function(e,n){return"string"==typeof e&&"string"==typeof n||(e=Uc(e),n=Uc(n)),t(e,n)}}function ka(t,e,n,r,i,a,u,s,l,c){var f=e&w,h=f?u:o,p=f?o:u,d=f?a:o,v=f?o:a;e|=f?S:C,e&=~(f?C:S),e&x||(e&=~(y|m));var g=[t,e,i,d,h,v,p,s,l,c],b=n.apply(o,g);return su(t)&&Au(b,g),b.placeholder=r,ku(b,t,e)}function Oa(t){var e=ee[t];return function(t,n){if(t=Uc(t),n=null==n?0:Qe(Zc(n),292),n&&Be(t)){var r=(Kc(t)+"e").split("e"),i=e(r[0]+"e"+(+r[1]+n));return r=(Kc(i)+"e").split("e"),+(r[0]+"e"+(+r[1]-n))}return e(t)}}var Ta=en&&1/cr(new en([,-0]))[1]==R?function(t){return new en(t)}:Bh;function Ea(t){return function(e){var n=Ja(e);return n==_?ur(e):n==ot?fr(e):Hn(e,t(e))}}function Ia(t,e,n,r,i,a,u,s){var c=e&m;if(!c&&"function"!=typeof t)throw new oe(l);var f=r?r.length:0;if(f||(e&=~(S|C),r=i=o),u=u===o?u:Ve(Zc(u),0),s=s===o?s:Zc(s),f-=i?i.length:0,e&C){var h=r,p=i;r=i=o}var d=c?o:za(t),v=[t,e,n,r,i,h,p,a,u,s];if(d&&vu(v,d),t=v[0],e=v[1],n=v[2],r=v[3],i=v[4],s=v[9]=v[9]===o?c?0:t.length:Ve(v[9]-f,0),!s&&e&(w|A)&&(e&=~(w|A)),e&&e!=y)g=e==w||e==A?da(t,e,s):e!=S&&e!=(y|S)||i.length?ba.apply(o,v):Aa(t,e,n,r);else var g=ca(t,e,n);var b=d?So:Au;return ku(b(g,v),t,e)}function Da(t,e,n,r){return t===o||nc(t,se[n])&&!fe.call(r,n)?e:t}function ja(t,e,n,r,i,a){return Ac(t)&&Ac(e)&&(a.set(e,t),ao(t,e,o,ja,a),a["delete"](e)),t}function La(t){return Lc(t)?o:t}function Na(t,e,n,r,i,a){var u=n&g,s=t.length,l=e.length;if(s!=l&&!(u&&l>s))return!1;var c=a.get(t);if(c&&a.get(e))return c==e;var f=-1,h=!0,p=n&b?new Hr:o;a.set(t,e),a.set(e,t);while(++f<s){var d=t[f],v=e[f];if(r)var y=u?r(v,d,f,e,t,a):r(d,v,f,t,e,a);if(y!==o){if(y)continue;h=!1;break}if(p){if(!jn(e,(function(t,e){if(!Yn(p,e)&&(d===t||i(d,t,n,r,a)))return p.push(e)}))){h=!1;break}}else if(d!==v&&!i(d,v,n,r,a)){h=!1;break}}return a["delete"](t),a["delete"](e),h}function Ga(t,e,n,r,i,o,a){switch(n){case ht:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case ft:return!(t.byteLength!=e.byteLength||!o(new xe(t),new xe(e)));case Z:case H:case $:return nc(+t,+e);case J:return t.name==e.name&&t.message==e.message;case it:case at:return t==e+"";case _:var u=ur;case ot:var s=r&g;if(u||(u=cr),t.size!=e.size&&!s)return!1;var l=a.get(t);if(l)return l==e;r|=b,a.set(t,e);var c=Na(u(t),u(e),r,i,o,a);return a["delete"](t),c;case ut:if(br)return br.call(t)==br.call(e)}return!1}function Ra(t,e,n,r,i,a){var u=n&g,s=Ba(t),l=s.length,c=Ba(e),f=c.length;if(l!=f&&!u)return!1;var h=l;while(h--){var p=s[h];if(!(u?p in e:fe.call(e,p)))return!1}var d=a.get(t);if(d&&a.get(e))return d==e;var v=!0;a.set(t,e),a.set(e,t);var b=u;while(++h<l){p=s[h];var y=t[p],m=e[p];if(r)var x=u?r(m,y,p,e,t,a):r(y,m,p,t,e,a);if(!(x===o?y===m||i(y,m,n,r,a):x)){v=!1;break}b||(b="constructor"==p)}if(v&&!b){var w=t.constructor,A=e.constructor;w==A||!("constructor"in t)||!("constructor"in e)||"function"==typeof w&&w instanceof w&&"function"==typeof A&&A instanceof A||(v=!1)}return a["delete"](t),a["delete"](e),v}function Ma(t){return Cu(yu(t,o,Zu),t+"")}function Ba(t){return Ni(t,wf,Ha)}function Pa(t){return Ni(t,Af,Ua)}var za=sn?function(t){return sn.get(t)}:Bh;function Va(t){var e=t.name+"",n=ln[e],r=fe.call(ln,e)?n.length:0;while(r--){var i=n[r],o=i.func;if(null==o||o==t)return i.name}return e}function Qa(t){var e=fe.call(xr,"placeholder")?xr:t;return e.placeholder}function Fa(){var t=xr.iteratee||Dh;return t=t===Dh?$i:t,arguments.length?t(arguments[0],arguments[1]):t}function qa(t,e){var n=t.__data__;return uu(e)?n["string"==typeof e?"string":"hash"]:n.map}function Wa(t){var e=wf(t),n=e.length;while(n--){var r=e[n],i=t[r];e[n]=[r,i,hu(i)]}return e}function Xa(t,e){var n=rr(t,e);return Ji(n)?n:o}function Za(t){var e=fe.call(t,Ee),n=t[Ee];try{t[Ee]=o;var r=!0}catch(a){}var i=de.call(t);return r&&(e?t[Ee]=n:delete t[Ee]),i}var Ha=Re?function(t){return null==t?[]:(t=ne(t),Cn(Re(t),(function(e){return Ce.call(t,e)})))}:Zh,Ua=Re?function(t){var e=[];while(t)En(e,Ha(t)),t=Ae(t);return e}:Zh,Ja=Gi;function Ya(t,e,n){var r=-1,i=n.length;while(++r<i){var o=n[r],a=o.size;switch(o.type){case"drop":t+=a;break;case"dropRight":e-=a;break;case"take":e=Qe(e,t+a);break;case"takeRight":t=Ve(t,e-a);break}}return{start:t,end:e}}function Ka(t){var e=t.match(Qt);return e?e[1].split(Ft):[]}function _a(t,e,n){e=Fo(e,t);var r=-1,i=e.length,o=!1;while(++r<i){var a=Iu(e[r]);if(!(o=null!=t&&n(t,a)))break;t=t[a]}return o||++r!=i?o:(i=null==t?0:t.length,!!i&&wc(i)&&iu(a,i)&&(ac(t)||oc(t)))}function $a(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&fe.call(t,"index")&&(n.index=t.index,n.input=t.input),n}function tu(t){return"function"!=typeof t.constructor||fu(t)?{}:Ar(Ae(t))}function eu(t,e,n){var r=t.constructor;switch(e){case ft:return Ho(t);case Z:case H:return new r(+t);case ht:return Uo(t,n);case pt:case dt:case vt:case gt:case bt:case yt:case mt:case xt:case wt:return Ko(t,n);case _:return new r;case $:case at:return new r(t);case it:return Jo(t);case ot:return new r;case ut:return Yo(t)}}function nu(t,e){var n=e.length;if(!n)return t;var r=n-1;return e[r]=(n>1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(Vt,"{\n/* [wrapped with "+e+"] */\n")}function ru(t){return ac(t)||oc(t)||!!(Oe&&t&&t[Oe])}function iu(t,e){var n=typeof t;return e=null==e?M:e,!!e&&("number"==n||"symbol"!=n&&Kt.test(t))&&t>-1&&t%1==0&&t<e}function ou(t,e,n){if(!Ac(n))return!1;var r=typeof e;return!!("number"==r?sc(n)&&iu(e,n.length):"string"==r&&e in n)&&nc(n[e],t)}function au(t,e){if(ac(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!Bc(t))||(Nt.test(t)||!Lt.test(t)||null!=e&&t in ne(e))}function uu(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}function su(t){var e=Va(t),n=xr[e];if("function"!=typeof n||!(e in kr.prototype))return!1;if(t===n)return!0;var r=za(n);return!!r&&t===r[0]}function lu(t){return!!pe&&pe in t}(_e&&Ja(new _e(new ArrayBuffer(1)))!=ht||$e&&Ja(new $e)!=_||tn&&Ja(tn.resolve())!=nt||en&&Ja(new en)!=ot||on&&Ja(new on)!=lt)&&(Ja=function(t){var e=Gi(t),n=e==et?t.constructor:o,r=n?Du(n):"";if(r)switch(r){case fn:return ht;case hn:return _;case Ln:return nt;case Nn:return ot;case Fn:return lt}return e});var cu=le?mc:Hh;function fu(t){var e=t&&t.constructor,n="function"==typeof e&&e.prototype||se;return t===n}function hu(t){return t===t&&!Ac(t)}function pu(t,e){return function(n){return null!=n&&(n[t]===e&&(e!==o||t in ne(n)))}}function du(t){var e=Pl(t,(function(t){return n.size===f&&n.clear(),t})),n=e.cache;return e}function vu(t,e){var n=t[1],r=e[1],i=n|r,o=i<(y|m|k),a=r==k&&n==w||r==k&&n==O&&t[7].length<=e[8]||r==(k|O)&&e[7].length<=e[8]&&n==w;if(!o&&!a)return t;r&y&&(t[2]=e[2],i|=n&y?0:x);var u=e[3];if(u){var s=t[3];t[3]=s?ta(s,u,e[4]):u,t[4]=s?lr(t[3],h):e[4]}return u=e[5],u&&(s=t[5],t[5]=s?ea(s,u,e[6]):u,t[6]=s?lr(t[5],h):e[6]),u=e[7],u&&(t[7]=u),r&k&&(t[8]=null==t[8]?e[8]:Qe(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=i,t}function gu(t){var e=[];if(null!=t)for(var n in ne(t))e.push(n);return e}function bu(t){return de.call(t)}function yu(t,e,r){return e=Ve(e===o?t.length-1:e,0),function(){var i=arguments,o=-1,a=Ve(i.length-e,0),u=n(a);while(++o<a)u[o]=i[e+o];o=-1;var s=n(e+1);while(++o<e)s[o]=i[o];return s[e]=r(u),mn(t,this,s)}}function mu(t,e){return e.length<2?t:Li(t,Oo(e,0,-1))}function xu(t,e){var n=t.length,r=Qe(e.length,n),i=na(t);while(r--){var a=e[r];t[r]=iu(a,n)?i[a]:o}return t}function wu(t,e){if(("constructor"!==e||"function"!==typeof t[e])&&"__proto__"!=e)return t[e]}var Au=Ou(So),Su=Le||function(t,e){return un.setTimeout(t,e)},Cu=Ou(Co);function ku(t,e,n){var r=e+"";return Cu(t,nu(r,ju(Ka(r),n)))}function Ou(t){var e=0,n=0;return function(){var r=We(),i=j-(r-n);if(n=r,i>0){if(++e>=D)return arguments[0]}else e=0;return t.apply(o,arguments)}}function Tu(t,e){var n=-1,r=t.length,i=r-1;e=e===o?r:e;while(++n<e){var a=go(n,i),u=t[a];t[a]=t[n],t[n]=u}return t.length=e,t}var Eu=du((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(Gt,(function(t,n,r,i){e.push(r?i.replace(Wt,"$1"):n||t)})),e}));function Iu(t){if("string"==typeof t||Bc(t))return t;var e=t+"";return"0"==e&&1/t==-R?"-0":e}function Du(t){if(null!=t){try{return ce.call(t)}catch(e){}try{return t+""}catch(e){}}return""}function ju(t,e){return wn(F,(function(n){var r="_."+n[0];e&n[1]&&!kn(t,r)&&t.push(r)})),t.sort()}function Lu(t){if(t instanceof kr)return t.clone();var e=new Cr(t.__wrapped__,t.__chain__);return e.__actions__=na(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}function Nu(t,e,r){e=(r?ou(t,e,r):e===o)?1:Ve(Zc(e),0);var i=null==t?0:t.length;if(!i||e<1)return[];var a=0,u=0,s=n(Ne(i/e));while(a<i)s[u++]=Oo(t,a,a+=e);return s}function Gu(t){var e=-1,n=null==t?0:t.length,r=0,i=[];while(++e<n){var o=t[e];o&&(i[r++]=o)}return i}function Ru(){var t=arguments.length;if(!t)return[];var e=n(t-1),r=arguments[0],i=t;while(i--)e[i-1]=arguments[i];return En(ac(r)?na(r):[r],Oi(e,1))}var Mu=mo((function(t,e){return lc(t)?mi(t,Oi(e,1,lc,!0)):[]})),Bu=mo((function(t,e){var n=rs(e);return lc(n)&&(n=o),lc(t)?mi(t,Oi(e,1,lc,!0),Fa(n,2)):[]})),Pu=mo((function(t,e){var n=rs(e);return lc(n)&&(n=o),lc(t)?mi(t,Oi(e,1,lc,!0),o,n):[]}));function zu(t,e,n){var r=null==t?0:t.length;return r?(e=n||e===o?1:Zc(e),Oo(t,e<0?0:e,r)):[]}function Vu(t,e,n){var r=null==t?0:t.length;return r?(e=n||e===o?1:Zc(e),e=r-e,Oo(t,0,e<0?0:e)):[]}function Qu(t,e){return t&&t.length?Mo(t,Fa(e,3),!0,!0):[]}function Fu(t,e){return t&&t.length?Mo(t,Fa(e,3),!0):[]}function qu(t,e,n,r){var i=null==t?0:t.length;return i?(n&&"number"!=typeof n&&ou(t,e,n)&&(n=0,r=i),Ci(t,e,n,r)):[]}function Wu(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:Zc(n);return i<0&&(i=Ve(r+i,0)),Mn(t,Fa(e,3),i)}function Xu(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=r-1;return n!==o&&(i=Zc(n),i=n<0?Ve(r+i,0):Qe(i,r-1)),Mn(t,Fa(e,3),i,!0)}function Zu(t){var e=null==t?0:t.length;return e?Oi(t,1):[]}function Hu(t){var e=null==t?0:t.length;return e?Oi(t,R):[]}function Uu(t,e){var n=null==t?0:t.length;return n?(e=e===o?1:Zc(e),Oi(t,e)):[]}function Ju(t){var e=-1,n=null==t?0:t.length,r={};while(++e<n){var i=t[e];r[i[0]]=i[1]}return r}function Yu(t){return t&&t.length?t[0]:o}function Ku(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:Zc(n);return i<0&&(i=Ve(r+i,0)),Bn(t,e,i)}function _u(t){var e=null==t?0:t.length;return e?Oo(t,0,-1):[]}var $u=mo((function(t){var e=Tn(t,Vo);return e.length&&e[0]===t[0]?zi(e):[]})),ts=mo((function(t){var e=rs(t),n=Tn(t,Vo);return e===rs(n)?e=o:n.pop(),n.length&&n[0]===t[0]?zi(n,Fa(e,2)):[]})),es=mo((function(t){var e=rs(t),n=Tn(t,Vo);return e="function"==typeof e?e:o,e&&n.pop(),n.length&&n[0]===t[0]?zi(n,o,e):[]}));function ns(t,e){return null==t?"":Pe.call(t,e)}function rs(t){var e=null==t?0:t.length;return e?t[e-1]:o}function is(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=r;return n!==o&&(i=Zc(n),i=i<0?Ve(r+i,0):Qe(i,r-1)),e===e?pr(t,e,i):Mn(t,zn,i,!0)}function os(t,e){return t&&t.length?so(t,Zc(e)):o}var as=mo(us);function us(t,e){return t&&t.length&&e&&e.length?po(t,e):t}function ss(t,e,n){return t&&t.length&&e&&e.length?po(t,e,Fa(n,2)):t}function ls(t,e,n){return t&&t.length&&e&&e.length?po(t,e,o,n):t}var cs=Ma((function(t,e){var n=null==t?0:t.length,r=pi(t,e);return vo(t,Tn(e,(function(t){return iu(t,n)?+t:t})).sort(_o)),r}));function fs(t,e){var n=[];if(!t||!t.length)return n;var r=-1,i=[],o=t.length;e=Fa(e,3);while(++r<o){var a=t[r];e(a,r,t)&&(n.push(a),i.push(r))}return vo(t,i),n}function hs(t){return null==t?t:He.call(t)}function ps(t,e,n){var r=null==t?0:t.length;return r?(n&&"number"!=typeof n&&ou(t,e,n)?(e=0,n=r):(e=null==e?0:Zc(e),n=n===o?r:Zc(n)),Oo(t,e,n)):[]}function ds(t,e){return Eo(t,e)}function vs(t,e,n){return Io(t,e,Fa(n,2))}function gs(t,e){var n=null==t?0:t.length;if(n){var r=Eo(t,e);if(r<n&&nc(t[r],e))return r}return-1}function bs(t,e){return Eo(t,e,!0)}function ys(t,e,n){return Io(t,e,Fa(n,2),!0)}function ms(t,e){var n=null==t?0:t.length;if(n){var r=Eo(t,e,!0)-1;if(nc(t[r],e))return r}return-1}function xs(t){return t&&t.length?Do(t):[]}function ws(t,e){return t&&t.length?Do(t,Fa(e,2)):[]}function As(t){var e=null==t?0:t.length;return e?Oo(t,1,e):[]}function Ss(t,e,n){return t&&t.length?(e=n||e===o?1:Zc(e),Oo(t,0,e<0?0:e)):[]}function Cs(t,e,n){var r=null==t?0:t.length;return r?(e=n||e===o?1:Zc(e),e=r-e,Oo(t,e<0?0:e,r)):[]}function ks(t,e){return t&&t.length?Mo(t,Fa(e,3),!1,!0):[]}function Os(t,e){return t&&t.length?Mo(t,Fa(e,3)):[]}var Ts=mo((function(t){return No(Oi(t,1,lc,!0))})),Es=mo((function(t){var e=rs(t);return lc(e)&&(e=o),No(Oi(t,1,lc,!0),Fa(e,2))})),Is=mo((function(t){var e=rs(t);return e="function"==typeof e?e:o,No(Oi(t,1,lc,!0),o,e)}));function Ds(t){return t&&t.length?No(t):[]}function js(t,e){return t&&t.length?No(t,Fa(e,2)):[]}function Ls(t,e){return e="function"==typeof e?e:o,t&&t.length?No(t,o,e):[]}function Ns(t){if(!t||!t.length)return[];var e=0;return t=Cn(t,(function(t){if(lc(t))return e=Ve(t.length,e),!0})),Zn(e,(function(e){return Tn(t,Qn(e))}))}function Gs(t,e){if(!t||!t.length)return[];var n=Ns(t);return null==e?n:Tn(n,(function(t){return mn(e,o,t)}))}var Rs=mo((function(t,e){return lc(t)?mi(t,e):[]})),Ms=mo((function(t){return Po(Cn(t,lc))})),Bs=mo((function(t){var e=rs(t);return lc(e)&&(e=o),Po(Cn(t,lc),Fa(e,2))})),Ps=mo((function(t){var e=rs(t);return e="function"==typeof e?e:o,Po(Cn(t,lc),o,e)})),zs=mo(Ns);function Vs(t,e){return zo(t||[],e||[],ui)}function Qs(t,e){return zo(t||[],e||[],Ao)}var Fs=mo((function(t){var e=t.length,n=e>1?t[e-1]:o;return n="function"==typeof n?(t.pop(),n):o,Gs(t,n)}));function qs(t){var e=xr(t);return e.__chain__=!0,e}function Ws(t,e){return e(t),t}function Xs(t,e){return e(t)}var Zs=Ma((function(t){var e=t.length,n=e?t[0]:0,r=this.__wrapped__,i=function(e){return pi(e,t)};return!(e>1||this.__actions__.length)&&r instanceof kr&&iu(n)?(r=r.slice(n,+n+(e?1:0)),r.__actions__.push({func:Xs,args:[i],thisArg:o}),new Cr(r,this.__chain__).thru((function(t){return e&&!t.length&&t.push(o),t}))):this.thru(i)}));function Hs(){return qs(this)}function Us(){return new Cr(this.value(),this.__chain__)}function Js(){this.__values__===o&&(this.__values__=Wc(this.value()));var t=this.__index__>=this.__values__.length,e=t?o:this.__values__[this.__index__++];return{done:t,value:e}}function Ys(){return this}function Ks(t){var e,n=this;while(n instanceof Sr){var r=Lu(n);r.__index__=0,r.__values__=o,e?i.__wrapped__=r:e=r;var i=r;n=n.__wrapped__}return i.__wrapped__=t,e}function _s(){var t=this.__wrapped__;if(t instanceof kr){var e=t;return this.__actions__.length&&(e=new kr(this)),e=e.reverse(),e.__actions__.push({func:Xs,args:[hs],thisArg:o}),new Cr(e,this.__chain__)}return this.thru(hs)}function $s(){return Bo(this.__wrapped__,this.__actions__)}var tl=aa((function(t,e,n){fe.call(t,n)?++t[n]:hi(t,n,1)}));function el(t,e,n){var r=ac(t)?Sn:Ai;return n&&ou(t,e,n)&&(e=o),r(t,Fa(e,3))}function nl(t,e){var n=ac(t)?Cn:ki;return n(t,Fa(e,3))}var rl=va(Wu),il=va(Xu);function ol(t,e){return Oi(dl(t,e),1)}function al(t,e){return Oi(dl(t,e),R)}function ul(t,e,n){return n=n===o?1:Zc(n),Oi(dl(t,e),n)}function sl(t,e){var n=ac(t)?wn:xi;return n(t,Fa(e,3))}function ll(t,e){var n=ac(t)?An:wi;return n(t,Fa(e,3))}var cl=aa((function(t,e,n){fe.call(t,n)?t[n].push(e):hi(t,n,[e])}));function fl(t,e,n,r){t=sc(t)?t:Vf(t),n=n&&!r?Zc(n):0;var i=t.length;return n<0&&(n=Ve(i+n,0)),Mc(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&Bn(t,e,n)>-1}var hl=mo((function(t,e,r){var i=-1,o="function"==typeof e,a=sc(t)?n(t.length):[];return xi(t,(function(t){a[++i]=o?mn(e,t,r):Qi(t,e,r)})),a})),pl=aa((function(t,e,n){hi(t,n,e)}));function dl(t,e){var n=ac(t)?Tn:ro;return n(t,Fa(e,3))}function vl(t,e,n,r){return null==t?[]:(ac(e)||(e=null==e?[]:[e]),n=r?o:n,ac(n)||(n=null==n?[]:[n]),lo(t,e,n))}var gl=aa((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]}));function bl(t,e,n){var r=ac(t)?In:qn,i=arguments.length<3;return r(t,Fa(e,4),n,i,xi)}function yl(t,e,n){var r=ac(t)?Dn:qn,i=arguments.length<3;return r(t,Fa(e,4),n,i,wi)}function ml(t,e){var n=ac(t)?Cn:ki;return n(t,zl(Fa(e,3)))}function xl(t){var e=ac(t)?ri:xo;return e(t)}function wl(t,e,n){e=(n?ou(t,e,n):e===o)?1:Zc(e);var r=ac(t)?ii:wo;return r(t,e)}function Al(t){var e=ac(t)?oi:ko;return e(t)}function Sl(t){if(null==t)return 0;if(sc(t))return Mc(t)?dr(t):t.length;var e=Ja(t);return e==_||e==ot?t.size:to(t).length}function Cl(t,e,n){var r=ac(t)?jn:To;return n&&ou(t,e,n)&&(e=o),r(t,Fa(e,3))}var kl=mo((function(t,e){if(null==t)return[];var n=e.length;return n>1&&ou(t,e[0],e[1])?e=[]:n>2&&ou(e[0],e[1],e[2])&&(e=[e[0]]),lo(t,Oi(e,1),[])})),Ol=je||function(){return un.Date.now()};function Tl(t,e){if("function"!=typeof e)throw new oe(l);return t=Zc(t),function(){if(--t<1)return e.apply(this,arguments)}}function El(t,e,n){return e=n?o:e,e=t&&null==e?t.length:e,Ia(t,k,o,o,o,o,e)}function Il(t,e){var n;if("function"!=typeof e)throw new oe(l);return t=Zc(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=o),n}}var Dl=mo((function(t,e,n){var r=y;if(n.length){var i=lr(n,Qa(Dl));r|=S}return Ia(t,r,e,n,i)})),jl=mo((function(t,e,n){var r=y|m;if(n.length){var i=lr(n,Qa(jl));r|=S}return Ia(e,r,t,n,i)}));function Ll(t,e,n){e=n?o:e;var r=Ia(t,w,o,o,o,o,o,e);return r.placeholder=Ll.placeholder,r}function Nl(t,e,n){e=n?o:e;var r=Ia(t,A,o,o,o,o,o,e);return r.placeholder=Nl.placeholder,r}function Gl(t,e,n){var r,i,a,u,s,c,f=0,h=!1,p=!1,d=!0;if("function"!=typeof t)throw new oe(l);function v(e){var n=r,a=i;return r=i=o,f=e,u=t.apply(a,n),u}function g(t){return f=t,s=Su(m,e),h?v(t):u}function b(t){var n=t-c,r=t-f,i=e-n;return p?Qe(i,a-r):i}function y(t){var n=t-c,r=t-f;return c===o||n>=e||n<0||p&&r>=a}function m(){var t=Ol();if(y(t))return x(t);s=Su(m,b(t))}function x(t){return s=o,d&&r?v(t):(r=i=o,u)}function w(){s!==o&&Xo(s),f=0,r=c=i=s=o}function A(){return s===o?u:x(Ol())}function S(){var t=Ol(),n=y(t);if(r=arguments,i=this,c=t,n){if(s===o)return g(c);if(p)return Xo(s),s=Su(m,e),v(c)}return s===o&&(s=Su(m,e)),u}return e=Uc(e)||0,Ac(n)&&(h=!!n.leading,p="maxWait"in n,a=p?Ve(Uc(n.maxWait)||0,e):a,d="trailing"in n?!!n.trailing:d),S.cancel=w,S.flush=A,S}var Rl=mo((function(t,e){return yi(t,1,e)})),Ml=mo((function(t,e,n){return yi(t,Uc(e)||0,n)}));function Bl(t){return Ia(t,T)}function Pl(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new oe(l);var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=t.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(Pl.Cache||Qr),n}function zl(t){if("function"!=typeof t)throw new oe(l);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}function Vl(t){return Il(2,t)}Pl.Cache=Qr;var Ql=qo((function(t,e){e=1==e.length&&ac(e[0])?Tn(e[0],Un(Fa())):Tn(Oi(e,1),Un(Fa()));var n=e.length;return mo((function(r){var i=-1,o=Qe(r.length,n);while(++i<o)r[i]=e[i].call(this,r[i]);return mn(t,this,r)}))})),Fl=mo((function(t,e){var n=lr(e,Qa(Fl));return Ia(t,S,o,e,n)})),ql=mo((function(t,e){var n=lr(e,Qa(ql));return Ia(t,C,o,e,n)})),Wl=Ma((function(t,e){return Ia(t,O,o,o,o,e)}));function Xl(t,e){if("function"!=typeof t)throw new oe(l);return e=e===o?e:Zc(e),mo(t,e)}function Zl(t,e){if("function"!=typeof t)throw new oe(l);return e=null==e?0:Ve(Zc(e),0),mo((function(n){var r=n[e],i=Wo(n,0,e);return r&&En(i,r),mn(t,this,i)}))}function Hl(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new oe(l);return Ac(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Gl(t,e,{leading:r,maxWait:e,trailing:i})}function Ul(t){return El(t,1)}function Jl(t,e){return Fl(Qo(e),t)}function Yl(){if(!arguments.length)return[];var t=arguments[0];return ac(t)?t:[t]}function Kl(t){return vi(t,v)}function _l(t,e){return e="function"==typeof e?e:o,vi(t,v,e)}function $l(t){return vi(t,p|v)}function tc(t,e){return e="function"==typeof e?e:o,vi(t,p|v,e)}function ec(t,e){return null==e||bi(t,e,wf(e))}function nc(t,e){return t===e||t!==t&&e!==e}var rc=Ca(Ri),ic=Ca((function(t,e){return t>=e})),oc=Fi(function(){return arguments}())?Fi:function(t){return Sc(t)&&fe.call(t,"callee")&&!Ce.call(t,"callee")},ac=n.isArray,uc=pn?Un(pn):qi;function sc(t){return null!=t&&wc(t.length)&&!mc(t)}function lc(t){return Sc(t)&&sc(t)}function cc(t){return!0===t||!1===t||Sc(t)&&Gi(t)==Z}var fc=Me||Hh,hc=dn?Un(dn):Wi;function pc(t){return Sc(t)&&1===t.nodeType&&!Lc(t)}function dc(t){if(null==t)return!0;if(sc(t)&&(ac(t)||"string"==typeof t||"function"==typeof t.splice||fc(t)||Pc(t)||oc(t)))return!t.length;var e=Ja(t);if(e==_||e==ot)return!t.size;if(fu(t))return!to(t).length;for(var n in t)if(fe.call(t,n))return!1;return!0}function vc(t,e){return Xi(t,e)}function gc(t,e,n){n="function"==typeof n?n:o;var r=n?n(t,e):o;return r===o?Xi(t,e,o,n):!!r}function bc(t){if(!Sc(t))return!1;var e=Gi(t);return e==J||e==U||"string"==typeof t.message&&"string"==typeof t.name&&!Lc(t)}function yc(t){return"number"==typeof t&&Be(t)}function mc(t){if(!Ac(t))return!1;var e=Gi(t);return e==Y||e==K||e==X||e==rt}function xc(t){return"number"==typeof t&&t==Zc(t)}function wc(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=M}function Ac(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Sc(t){return null!=t&&"object"==typeof t}var Cc=vn?Un(vn):Hi;function kc(t,e){return t===e||Ui(t,e,Wa(e))}function Oc(t,e,n){return n="function"==typeof n?n:o,Ui(t,e,Wa(e),n)}function Tc(t){return jc(t)&&t!=+t}function Ec(t){if(cu(t))throw new i(s);return Ji(t)}function Ic(t){return null===t}function Dc(t){return null==t}function jc(t){return"number"==typeof t||Sc(t)&&Gi(t)==$}function Lc(t){if(!Sc(t)||Gi(t)!=et)return!1;var e=Ae(t);if(null===e)return!0;var n=fe.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&ce.call(n)==ve}var Nc=gn?Un(gn):Yi;function Gc(t){return xc(t)&&t>=-M&&t<=M}var Rc=bn?Un(bn):Ki;function Mc(t){return"string"==typeof t||!ac(t)&&Sc(t)&&Gi(t)==at}function Bc(t){return"symbol"==typeof t||Sc(t)&&Gi(t)==ut}var Pc=yn?Un(yn):_i;function zc(t){return t===o}function Vc(t){return Sc(t)&&Ja(t)==lt}function Qc(t){return Sc(t)&&Gi(t)==ct}var Fc=Ca(no),qc=Ca((function(t,e){return t<=e}));function Wc(t){if(!t)return[];if(sc(t))return Mc(t)?vr(t):na(t);if(Te&&t[Te])return ar(t[Te]());var e=Ja(t),n=e==_?ur:e==ot?cr:Vf;return n(t)}function Xc(t){if(!t)return 0===t?t:0;if(t=Uc(t),t===R||t===-R){var e=t<0?-1:1;return e*B}return t===t?t:0}function Zc(t){var e=Xc(t),n=e%1;return e===e?n?e-n:e:0}function Hc(t){return t?di(Zc(t),0,z):0}function Uc(t){if("number"==typeof t)return t;if(Bc(t))return P;if(Ac(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Ac(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(Bt,"");var n=Ut.test(t);return n||Yt.test(t)?rn(t.slice(2),n?2:8):Ht.test(t)?P:+t}function Jc(t){return ra(t,Af(t))}function Yc(t){return t?di(Zc(t),-M,M):0===t?t:0}function Kc(t){return null==t?"":Lo(t)}var _c=ua((function(t,e){if(fu(e)||sc(e))ra(e,wf(e),t);else for(var n in e)fe.call(e,n)&&ui(t,n,e[n])})),$c=ua((function(t,e){ra(e,Af(e),t)})),tf=ua((function(t,e,n,r){ra(e,Af(e),t,r)})),ef=ua((function(t,e,n,r){ra(e,wf(e),t,r)})),nf=Ma(pi);function rf(t,e){var n=Ar(t);return null==e?n:ci(n,e)}var of=mo((function(t,e){t=ne(t);var n=-1,r=e.length,i=r>2?e[2]:o;i&&ou(e[0],e[1],i)&&(r=1);while(++n<r){var a=e[n],u=Af(a),s=-1,l=u.length;while(++s<l){var c=u[s],f=t[c];(f===o||nc(f,se[c])&&!fe.call(t,c))&&(t[c]=a[c])}}return t})),af=mo((function(t){return t.push(o,ja),mn(Of,o,t)}));function uf(t,e){return Rn(t,Fa(e,3),Ii)}function sf(t,e){return Rn(t,Fa(e,3),Di)}function lf(t,e){return null==t?t:Ti(t,Fa(e,3),Af)}function cf(t,e){return null==t?t:Ei(t,Fa(e,3),Af)}function ff(t,e){return t&&Ii(t,Fa(e,3))}function hf(t,e){return t&&Di(t,Fa(e,3))}function pf(t){return null==t?[]:ji(t,wf(t))}function df(t){return null==t?[]:ji(t,Af(t))}function vf(t,e,n){var r=null==t?o:Li(t,e);return r===o?n:r}function gf(t,e){return null!=t&&_a(t,e,Mi)}function bf(t,e){return null!=t&&_a(t,e,Bi)}var yf=ya((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=de.call(e)),t[e]=n}),kh(Ih)),mf=ya((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=de.call(e)),fe.call(t,e)?t[e].push(n):t[e]=[n]}),Fa),xf=mo(Qi);function wf(t){return sc(t)?ni(t):to(t)}function Af(t){return sc(t)?ni(t,!0):eo(t)}function Sf(t,e){var n={};return e=Fa(e,3),Ii(t,(function(t,r,i){hi(n,e(t,r,i),t)})),n}function Cf(t,e){var n={};return e=Fa(e,3),Ii(t,(function(t,r,i){hi(n,r,e(t,r,i))})),n}var kf=ua((function(t,e,n){ao(t,e,n)})),Of=ua((function(t,e,n,r){ao(t,e,n,r)})),Tf=Ma((function(t,e){var n={};if(null==t)return n;var r=!1;e=Tn(e,(function(e){return e=Fo(e,t),r||(r=e.length>1),e})),ra(t,Pa(t),n),r&&(n=vi(n,p|d|v,La));var i=e.length;while(i--)Go(n,e[i]);return n}));function Ef(t,e){return Df(t,zl(Fa(e)))}var If=Ma((function(t,e){return null==t?{}:co(t,e)}));function Df(t,e){if(null==t)return{};var n=Tn(Pa(t),(function(t){return[t]}));return e=Fa(e),fo(t,n,(function(t,n){return e(t,n[0])}))}function jf(t,e,n){e=Fo(e,t);var r=-1,i=e.length;i||(i=1,t=o);while(++r<i){var a=null==t?o:t[Iu(e[r])];a===o&&(r=i,a=n),t=mc(a)?a.call(t):a}return t}function Lf(t,e,n){return null==t?t:Ao(t,e,n)}function Nf(t,e,n,r){return r="function"==typeof r?r:o,null==t?t:Ao(t,e,n,r)}var Gf=Ea(wf),Rf=Ea(Af);function Mf(t,e,n){var r=ac(t),i=r||fc(t)||Pc(t);if(e=Fa(e,4),null==n){var o=t&&t.constructor;n=i?r?new o:[]:Ac(t)&&mc(o)?Ar(Ae(t)):{}}return(i?wn:Ii)(t,(function(t,r,i){return e(n,t,r,i)})),n}function Bf(t,e){return null==t||Go(t,e)}function Pf(t,e,n){return null==t?t:Ro(t,e,Qo(n))}function zf(t,e,n,r){return r="function"==typeof r?r:o,null==t?t:Ro(t,e,Qo(n),r)}function Vf(t){return null==t?[]:Jn(t,wf(t))}function Qf(t){return null==t?[]:Jn(t,Af(t))}function Ff(t,e,n){return n===o&&(n=e,e=o),n!==o&&(n=Uc(n),n=n===n?n:0),e!==o&&(e=Uc(e),e=e===e?e:0),di(Uc(t),e,n)}function qf(t,e,n){return e=Xc(e),n===o?(n=e,e=0):n=Xc(n),t=Uc(t),Pi(t,e,n)}function Wf(t,e,n){if(n&&"boolean"!=typeof n&&ou(t,e,n)&&(e=n=o),n===o&&("boolean"==typeof e?(n=e,e=o):"boolean"==typeof t&&(n=t,t=o)),t===o&&e===o?(t=0,e=1):(t=Xc(t),e===o?(e=t,t=0):e=Xc(e)),t>e){var r=t;t=e,e=r}if(n||t%1||e%1){var i=Ze();return Qe(t+i*(e-t+nn("1e-"+((i+"").length-1))),e)}return go(t,e)}var Xf=ha((function(t,e,n){return e=e.toLowerCase(),t+(n?Zf(e):e)}));function Zf(t){return mh(Kc(t).toLowerCase())}function Hf(t){return t=Kc(t),t&&t.replace(_t,tr).replace(qe,"")}function Uf(t,e,n){t=Kc(t),e=Lo(e);var r=t.length;n=n===o?r:di(Zc(n),0,r);var i=n;return n-=e.length,n>=0&&t.slice(n,i)==e}function Jf(t){return t=Kc(t),t&&Et.test(t)?t.replace(Ot,er):t}function Yf(t){return t=Kc(t),t&&Mt.test(t)?t.replace(Rt,"\\$&"):t}var Kf=ha((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),_f=ha((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),$f=fa("toLowerCase");function th(t,e,n){t=Kc(t),e=Zc(e);var r=e?dr(t):0;if(!e||r>=e)return t;var i=(e-r)/2;return wa(Ge(i),n)+t+wa(Ne(i),n)}function eh(t,e,n){t=Kc(t),e=Zc(e);var r=e?dr(t):0;return e&&r<e?t+wa(e-r,n):t}function nh(t,e,n){t=Kc(t),e=Zc(e);var r=e?dr(t):0;return e&&r<e?wa(e-r,n)+t:t}function rh(t,e,n){return n||null==e?e=0:e&&(e=+e),Xe(Kc(t).replace(Pt,""),e||0)}function ih(t,e,n){return e=(n?ou(t,e,n):e===o)?1:Zc(e),yo(Kc(t),e)}function oh(){var t=arguments,e=Kc(t[0]);return t.length<3?e:e.replace(t[1],t[2])}var ah=ha((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}));function uh(t,e,n){return n&&"number"!=typeof n&&ou(t,e,n)&&(e=n=o),n=n===o?z:n>>>0,n?(t=Kc(t),t&&("string"==typeof e||null!=e&&!Nc(e))&&(e=Lo(e),!e&&ir(t))?Wo(vr(t),0,n):t.split(e,n)):[]}var sh=ha((function(t,e,n){return t+(n?" ":"")+mh(e)}));function lh(t,e,n){return t=Kc(t),n=null==n?0:di(Zc(n),0,t.length),e=Lo(e),t.slice(n,n+e.length)==e}function ch(t,e,n){var r=xr.templateSettings;n&&ou(t,e,n)&&(e=o),t=Kc(t),e=tf({},e,r,Da);var i,a,u=tf({},e.imports,r.imports,Da),s=wf(u),l=Jn(u,s),c=0,f=e.interpolate||$t,h="__p += '",p=re((e.escape||$t).source+"|"+f.source+"|"+(f===jt?Xt:$t).source+"|"+(e.evaluate||$t).source+"|$","g"),d="//# sourceURL="+(fe.call(e,"sourceURL")?(e.sourceURL+"").replace(/[\r\n]/g," "):"lodash.templateSources["+ ++Je+"]")+"\n";t.replace(p,(function(e,n,r,o,u,s){return r||(r=o),h+=t.slice(c,s).replace(te,nr),n&&(i=!0,h+="' +\n__e("+n+") +\n'"),u&&(a=!0,h+="';\n"+u+";\n__p += '"),r&&(h+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),c=s+e.length,e})),h+="';\n";var v=fe.call(e,"variable")&&e.variable;v||(h="with (obj) {\n"+h+"\n}\n"),h=(a?h.replace(At,""):h).replace(St,"$1").replace(Ct,"$1;"),h="function("+(v||"obj")+") {\n"+(v?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(i?", __e = _.escape":"")+(a?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+h+"return __p\n}";var g=wh((function(){return qt(s,d+"return "+h).apply(o,l)}));if(g.source=h,bc(g))throw g;return g}function fh(t){return Kc(t).toLowerCase()}function hh(t){return Kc(t).toUpperCase()}function ph(t,e,n){if(t=Kc(t),t&&(n||e===o))return t.replace(Bt,"");if(!t||!(e=Lo(e)))return t;var r=vr(t),i=vr(e),a=Kn(r,i),u=_n(r,i)+1;return Wo(r,a,u).join("")}function dh(t,e,n){if(t=Kc(t),t&&(n||e===o))return t.replace(zt,"");if(!t||!(e=Lo(e)))return t;var r=vr(t),i=_n(r,vr(e))+1;return Wo(r,0,i).join("")}function vh(t,e,n){if(t=Kc(t),t&&(n||e===o))return t.replace(Pt,"");if(!t||!(e=Lo(e)))return t;var r=vr(t),i=Kn(r,vr(e));return Wo(r,i).join("")}function gh(t,e){var n=E,r=I;if(Ac(e)){var i="separator"in e?e.separator:i;n="length"in e?Zc(e.length):n,r="omission"in e?Lo(e.omission):r}t=Kc(t);var a=t.length;if(ir(t)){var u=vr(t);a=u.length}if(n>=a)return t;var s=n-dr(r);if(s<1)return r;var l=u?Wo(u,0,s).join(""):t.slice(0,s);if(i===o)return l+r;if(u&&(s+=l.length-s),Nc(i)){if(t.slice(s).search(i)){var c,f=l;i.global||(i=re(i.source,Kc(Zt.exec(i))+"g")),i.lastIndex=0;while(c=i.exec(f))var h=c.index;l=l.slice(0,h===o?s:h)}}else if(t.indexOf(Lo(i),s)!=s){var p=l.lastIndexOf(i);p>-1&&(l=l.slice(0,p))}return l+r}function bh(t){return t=Kc(t),t&&Tt.test(t)?t.replace(kt,gr):t}var yh=ha((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),mh=fa("toUpperCase");function xh(t,e,n){return t=Kc(t),e=n?o:e,e===o?or(t)?mr(t):Gn(t):t.match(e)||[]}var wh=mo((function(t,e){try{return mn(t,o,e)}catch(n){return bc(n)?n:new i(n)}})),Ah=Ma((function(t,e){return wn(e,(function(e){e=Iu(e),hi(t,e,Dl(t[e],t))})),t}));function Sh(t){var e=null==t?0:t.length,n=Fa();return t=e?Tn(t,(function(t){if("function"!=typeof t[1])throw new oe(l);return[n(t[0]),t[1]]})):[],mo((function(n){var r=-1;while(++r<e){var i=t[r];if(mn(i[0],this,n))return mn(i[1],this,n)}}))}function Ch(t){return gi(vi(t,p))}function kh(t){return function(){return t}}function Oh(t,e){return null==t||t!==t?e:t}var Th=ga(),Eh=ga(!0);function Ih(t){return t}function Dh(t){return $i("function"==typeof t?t:vi(t,p))}function jh(t){return io(vi(t,p))}function Lh(t,e){return oo(t,vi(e,p))}var Nh=mo((function(t,e){return function(n){return Qi(n,t,e)}})),Gh=mo((function(t,e){return function(n){return Qi(t,n,e)}}));function Rh(t,e,n){var r=wf(e),i=ji(e,r);null!=n||Ac(e)&&(i.length||!r.length)||(n=e,e=t,t=this,i=ji(e,wf(e)));var o=!(Ac(n)&&"chain"in n)||!!n.chain,a=mc(t);return wn(i,(function(n){var r=e[n];t[n]=r,a&&(t.prototype[n]=function(){var e=this.__chain__;if(o||e){var n=t(this.__wrapped__),i=n.__actions__=na(this.__actions__);return i.push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,En([this.value()],arguments))})})),t}function Mh(){return un._===this&&(un._=ge),this}function Bh(){}function Ph(t){return t=Zc(t),mo((function(e){return so(e,t)}))}var zh=xa(Tn),Vh=xa(Sn),Qh=xa(jn);function Fh(t){return au(t)?Qn(Iu(t)):ho(t)}function qh(t){return function(e){return null==t?o:Li(t,e)}}var Wh=Sa(),Xh=Sa(!0);function Zh(){return[]}function Hh(){return!1}function Uh(){return{}}function Jh(){return""}function Yh(){return!0}function Kh(t,e){if(t=Zc(t),t<1||t>M)return[];var n=z,r=Qe(t,z);e=Fa(e),t-=z;var i=Zn(r,e);while(++n<t)e(n);return i}function _h(t){return ac(t)?Tn(t,Iu):Bc(t)?[t]:na(Eu(Kc(t)))}function $h(t){var e=++he;return Kc(t)+e}var tp=ma((function(t,e){return t+e}),0),ep=Oa("ceil"),np=ma((function(t,e){return t/e}),1),rp=Oa("floor");function ip(t){return t&&t.length?Si(t,Ih,Ri):o}function op(t,e){return t&&t.length?Si(t,Fa(e,2),Ri):o}function ap(t){return Vn(t,Ih)}function up(t,e){return Vn(t,Fa(e,2))}function sp(t){return t&&t.length?Si(t,Ih,no):o}function lp(t,e){return t&&t.length?Si(t,Fa(e,2),no):o}var cp=ma((function(t,e){return t*e}),1),fp=Oa("round"),hp=ma((function(t,e){return t-e}),0);function pp(t){return t&&t.length?Xn(t,Ih):0}function dp(t,e){return t&&t.length?Xn(t,Fa(e,2)):0}return xr.after=Tl,xr.ary=El,xr.assign=_c,xr.assignIn=$c,xr.assignInWith=tf,xr.assignWith=ef,xr.at=nf,xr.before=Il,xr.bind=Dl,xr.bindAll=Ah,xr.bindKey=jl,xr.castArray=Yl,xr.chain=qs,xr.chunk=Nu,xr.compact=Gu,xr.concat=Ru,xr.cond=Sh,xr.conforms=Ch,xr.constant=kh,xr.countBy=tl,xr.create=rf,xr.curry=Ll,xr.curryRight=Nl,xr.debounce=Gl,xr.defaults=of,xr.defaultsDeep=af,xr.defer=Rl,xr.delay=Ml,xr.difference=Mu,xr.differenceBy=Bu,xr.differenceWith=Pu,xr.drop=zu,xr.dropRight=Vu,xr.dropRightWhile=Qu,xr.dropWhile=Fu,xr.fill=qu,xr.filter=nl,xr.flatMap=ol,xr.flatMapDeep=al,xr.flatMapDepth=ul,xr.flatten=Zu,xr.flattenDeep=Hu,xr.flattenDepth=Uu,xr.flip=Bl,xr.flow=Th,xr.flowRight=Eh,xr.fromPairs=Ju,xr.functions=pf,xr.functionsIn=df,xr.groupBy=cl,xr.initial=_u,xr.intersection=$u,xr.intersectionBy=ts,xr.intersectionWith=es,xr.invert=yf,xr.invertBy=mf,xr.invokeMap=hl,xr.iteratee=Dh,xr.keyBy=pl,xr.keys=wf,xr.keysIn=Af,xr.map=dl,xr.mapKeys=Sf,xr.mapValues=Cf,xr.matches=jh,xr.matchesProperty=Lh,xr.memoize=Pl,xr.merge=kf,xr.mergeWith=Of,xr.method=Nh,xr.methodOf=Gh,xr.mixin=Rh,xr.negate=zl,xr.nthArg=Ph,xr.omit=Tf,xr.omitBy=Ef,xr.once=Vl,xr.orderBy=vl,xr.over=zh,xr.overArgs=Ql,xr.overEvery=Vh,xr.overSome=Qh,xr.partial=Fl,xr.partialRight=ql,xr.partition=gl,xr.pick=If,xr.pickBy=Df,xr.property=Fh,xr.propertyOf=qh,xr.pull=as,xr.pullAll=us,xr.pullAllBy=ss,xr.pullAllWith=ls,xr.pullAt=cs,xr.range=Wh,xr.rangeRight=Xh,xr.rearg=Wl,xr.reject=ml,xr.remove=fs,xr.rest=Xl,xr.reverse=hs,xr.sampleSize=wl,xr.set=Lf,xr.setWith=Nf,xr.shuffle=Al,xr.slice=ps,xr.sortBy=kl,xr.sortedUniq=xs,xr.sortedUniqBy=ws,xr.split=uh,xr.spread=Zl,xr.tail=As,xr.take=Ss,xr.takeRight=Cs,xr.takeRightWhile=ks,xr.takeWhile=Os,xr.tap=Ws,xr.throttle=Hl,xr.thru=Xs,xr.toArray=Wc,xr.toPairs=Gf,xr.toPairsIn=Rf,xr.toPath=_h,xr.toPlainObject=Jc,xr.transform=Mf,xr.unary=Ul,xr.union=Ts,xr.unionBy=Es,xr.unionWith=Is,xr.uniq=Ds,xr.uniqBy=js,xr.uniqWith=Ls,xr.unset=Bf,xr.unzip=Ns,xr.unzipWith=Gs,xr.update=Pf,xr.updateWith=zf,xr.values=Vf,xr.valuesIn=Qf,xr.without=Rs,xr.words=xh,xr.wrap=Jl,xr.xor=Ms,xr.xorBy=Bs,xr.xorWith=Ps,xr.zip=zs,xr.zipObject=Vs,xr.zipObjectDeep=Qs,xr.zipWith=Fs,xr.entries=Gf,xr.entriesIn=Rf,xr.extend=$c,xr.extendWith=tf,Rh(xr,xr),xr.add=tp,xr.attempt=wh,xr.camelCase=Xf,xr.capitalize=Zf,xr.ceil=ep,xr.clamp=Ff,xr.clone=Kl,xr.cloneDeep=$l,xr.cloneDeepWith=tc,xr.cloneWith=_l,xr.conformsTo=ec,xr.deburr=Hf,xr.defaultTo=Oh,xr.divide=np,xr.endsWith=Uf,xr.eq=nc,xr.escape=Jf,xr.escapeRegExp=Yf,xr.every=el,xr.find=rl,xr.findIndex=Wu,xr.findKey=uf,xr.findLast=il,xr.findLastIndex=Xu,xr.findLastKey=sf,xr.floor=rp,xr.forEach=sl,xr.forEachRight=ll,xr.forIn=lf,xr.forInRight=cf,xr.forOwn=ff,xr.forOwnRight=hf,xr.get=vf,xr.gt=rc,xr.gte=ic,xr.has=gf,xr.hasIn=bf,xr.head=Yu,xr.identity=Ih,xr.includes=fl,xr.indexOf=Ku,xr.inRange=qf,xr.invoke=xf,xr.isArguments=oc,xr.isArray=ac,xr.isArrayBuffer=uc,xr.isArrayLike=sc,xr.isArrayLikeObject=lc,xr.isBoolean=cc,xr.isBuffer=fc,xr.isDate=hc,xr.isElement=pc,xr.isEmpty=dc,xr.isEqual=vc,xr.isEqualWith=gc,xr.isError=bc,xr.isFinite=yc,xr.isFunction=mc,xr.isInteger=xc,xr.isLength=wc,xr.isMap=Cc,xr.isMatch=kc,xr.isMatchWith=Oc,xr.isNaN=Tc,xr.isNative=Ec,xr.isNil=Dc,xr.isNull=Ic,xr.isNumber=jc,xr.isObject=Ac,xr.isObjectLike=Sc,xr.isPlainObject=Lc,xr.isRegExp=Nc,xr.isSafeInteger=Gc,xr.isSet=Rc,xr.isString=Mc,xr.isSymbol=Bc,xr.isTypedArray=Pc,xr.isUndefined=zc,xr.isWeakMap=Vc,xr.isWeakSet=Qc,xr.join=ns,xr.kebabCase=Kf,xr.last=rs,xr.lastIndexOf=is,xr.lowerCase=_f,xr.lowerFirst=$f,xr.lt=Fc,xr.lte=qc,xr.max=ip,xr.maxBy=op,xr.mean=ap,xr.meanBy=up,xr.min=sp,xr.minBy=lp,xr.stubArray=Zh,xr.stubFalse=Hh,xr.stubObject=Uh,xr.stubString=Jh,xr.stubTrue=Yh,xr.multiply=cp,xr.nth=os,xr.noConflict=Mh,xr.noop=Bh,xr.now=Ol,xr.pad=th,xr.padEnd=eh,xr.padStart=nh,xr.parseInt=rh,xr.random=Wf,xr.reduce=bl,xr.reduceRight=yl,xr.repeat=ih,xr.replace=oh,xr.result=jf,xr.round=fp,xr.runInContext=t,xr.sample=xl,xr.size=Sl,xr.snakeCase=ah,xr.some=Cl,xr.sortedIndex=ds,xr.sortedIndexBy=vs,xr.sortedIndexOf=gs,xr.sortedLastIndex=bs,xr.sortedLastIndexBy=ys,xr.sortedLastIndexOf=ms,xr.startCase=sh,xr.startsWith=lh,xr.subtract=hp,xr.sum=pp,xr.sumBy=dp,xr.template=ch,xr.times=Kh,xr.toFinite=Xc,xr.toInteger=Zc,xr.toLength=Hc,xr.toLower=fh,xr.toNumber=Uc,xr.toSafeInteger=Yc,xr.toString=Kc,xr.toUpper=hh,xr.trim=ph,xr.trimEnd=dh,xr.trimStart=vh,xr.truncate=gh,xr.unescape=bh,xr.uniqueId=$h,xr.upperCase=yh,xr.upperFirst=mh,xr.each=sl,xr.eachRight=ll,xr.first=Yu,Rh(xr,function(){var t={};return Ii(xr,(function(e,n){fe.call(xr.prototype,n)||(t[n]=e)})),t}(),{chain:!1}),xr.VERSION=a,wn(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){xr[t].placeholder=xr})),wn(["drop","take"],(function(t,e){kr.prototype[t]=function(n){n=n===o?1:Ve(Zc(n),0);var r=this.__filtered__&&!e?new kr(this):this.clone();return r.__filtered__?r.__takeCount__=Qe(n,r.__takeCount__):r.__views__.push({size:Qe(n,z),type:t+(r.__dir__<0?"Right":"")}),r},kr.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),wn(["filter","map","takeWhile"],(function(t,e){var n=e+1,r=n==L||n==G;kr.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Fa(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}})),wn(["head","last"],(function(t,e){var n="take"+(e?"Right":"");kr.prototype[t]=function(){return this[n](1).value()[0]}})),wn(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");kr.prototype[t]=function(){return this.__filtered__?new kr(this):this[n](1)}})),kr.prototype.compact=function(){return this.filter(Ih)},kr.prototype.find=function(t){return this.filter(t).head()},kr.prototype.findLast=function(t){return this.reverse().find(t)},kr.prototype.invokeMap=mo((function(t,e){return"function"==typeof t?new kr(this):this.map((function(n){return Qi(n,t,e)}))})),kr.prototype.reject=function(t){return this.filter(zl(Fa(t)))},kr.prototype.slice=function(t,e){t=Zc(t);var n=this;return n.__filtered__&&(t>0||e<0)?new kr(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==o&&(e=Zc(e),n=e<0?n.dropRight(-e):n.take(e-t)),n)},kr.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},kr.prototype.toArray=function(){return this.take(z)},Ii(kr.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),r=/^(?:head|last)$/.test(e),i=xr[r?"take"+("last"==e?"Right":""):e],a=r||/^find/.test(e);i&&(xr.prototype[e]=function(){var e=this.__wrapped__,u=r?[1]:arguments,s=e instanceof kr,l=u[0],c=s||ac(e),f=function(t){var e=i.apply(xr,En([t],u));return r&&h?e[0]:e};c&&n&&"function"==typeof l&&1!=l.length&&(s=c=!1);var h=this.__chain__,p=!!this.__actions__.length,d=a&&!h,v=s&&!p;if(!a&&c){e=v?e:new kr(this);var g=t.apply(e,u);return g.__actions__.push({func:Xs,args:[f],thisArg:o}),new Cr(g,h)}return d&&v?t.apply(this,u):(g=this.thru(f),d?r?g.value()[0]:g.value():g)})})),wn(["pop","push","shift","sort","splice","unshift"],(function(t){var e=ae[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);xr.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var i=this.value();return e.apply(ac(i)?i:[],t)}return this[n]((function(n){return e.apply(ac(n)?n:[],t)}))}})),Ii(kr.prototype,(function(t,e){var n=xr[e];if(n){var r=n.name+"";fe.call(ln,r)||(ln[r]=[]),ln[r].push({name:e,func:n})}})),ln[ba(o,m).name]=[{name:"wrapper",func:o}],kr.prototype.clone=Or,kr.prototype.reverse=Tr,kr.prototype.value=Er,xr.prototype.at=Zs,xr.prototype.chain=Hs,xr.prototype.commit=Us,xr.prototype.next=Js,xr.prototype.plant=Ks,xr.prototype.reverse=_s,xr.prototype.toJSON=xr.prototype.valueOf=xr.prototype.value=$s,xr.prototype.first=xr.prototype.head,Te&&(xr.prototype[Te]=Ys),xr},wr=xr();un._=wr,i=function(){return wr}.call(e,n,e,r),i===o||(r.exports=i)}).call(this)}).call(this,n("c8ba"),n("62e4")(t))},"2fcc":function(t,e){function n(t){var e=this.__data__,n=e["delete"](t);return this.size=e.size,n}t.exports=n},"30c9":function(t,e,n){var r=n("9520"),i=n("b218");function o(t){return null!=t&&i(t.length)&&!r(t)}t.exports=o},"32b3":function(t,e,n){var r=n("872a"),i=n("9638"),o=Object.prototype,a=o.hasOwnProperty;function u(t,e,n){var o=t[e];a.call(t,e)&&i(o,n)&&(void 0!==n||e in t)||r(t,e,n)}t.exports=u},"32f4":function(t,e,n){var r=n("2d7c"),i=n("d327"),o=Object.prototype,a=o.propertyIsEnumerable,u=Object.getOwnPropertySymbols,s=u?function(t){return null==t?[]:(t=Object(t),r(u(t),(function(e){return a.call(t,e)})))}:i;t.exports=s},"342f":function(t,e,n){var r=n("d066");t.exports=r("navigator","userAgent")||""},"34ac":function(t,e,n){var r=n("9520"),i=n("1368"),o=n("1a8c"),a=n("dc57"),u=/[\\^$.*+?()[\]{}|]/g,s=/^\[object .+?Constructor\]$/,l=Function.prototype,c=Object.prototype,f=l.toString,h=c.hasOwnProperty,p=RegExp("^"+f.call(h).replace(u,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function d(t){if(!o(t)||i(t))return!1;var e=r(t)?p:s;return e.test(a(t))}t.exports=d},"35a1":function(t,e,n){var r=n("f5df"),i=n("3f8c"),o=n("b622"),a=o("iterator");t.exports=function(t){if(void 0!=t)return t[a]||t["@@iterator"]||i[r(t)]}},3698:function(t,e){function n(t,e){return null==t?void 0:t[e]}t.exports=n},3729:function(t,e,n){var r=n("9e69"),i=n("00fd"),o=n("29f3"),a="[object Null]",u="[object Undefined]",s=r?r.toStringTag:void 0;function l(t){return null==t?void 0===t?u:a:s&&s in Object(t)?i(t):o(t)}t.exports=l},"37e8":function(t,e,n){var r=n("83ab"),i=n("9bf2"),o=n("825a"),a=n("df75");t.exports=r?Object.defineProperties:function(t,e){o(t);var n,r=a(e),u=r.length,s=0;while(u>s)i.f(t,n=r[s++],e[n]);return t}},3818:function(t,e,n){var r=n("7e64"),i=n("8057"),o=n("32b3"),a=n("5b01"),u=n("0f0f"),s=n("e5383"),l=n("4359"),c=n("54eb"),f=n("1041"),h=n("a994"),p=n("1bac"),d=n("42a2"),v=n("c87c"),g=n("c2b6"),b=n("fa21"),y=n("6747"),m=n("0d24"),x=n("cc45"),w=n("1a8c"),A=n("d7ee"),S=n("ec69"),C=1,k=2,O=4,T="[object Arguments]",E="[object Array]",I="[object Boolean]",D="[object Date]",j="[object Error]",L="[object Function]",N="[object GeneratorFunction]",G="[object Map]",R="[object Number]",M="[object Object]",B="[object RegExp]",P="[object Set]",z="[object String]",V="[object Symbol]",Q="[object WeakMap]",F="[object ArrayBuffer]",q="[object DataView]",W="[object Float32Array]",X="[object Float64Array]",Z="[object Int8Array]",H="[object Int16Array]",U="[object Int32Array]",J="[object Uint8Array]",Y="[object Uint8ClampedArray]",K="[object Uint16Array]",_="[object Uint32Array]",$={};function tt(t,e,n,E,I,D){var j,G=e&C,R=e&k,B=e&O;if(n&&(j=I?n(t,E,I,D):n(t)),void 0!==j)return j;if(!w(t))return t;var P=y(t);if(P){if(j=v(t),!G)return l(t,j)}else{var z=d(t),V=z==L||z==N;if(m(t))return s(t,G);if(z==M||z==T||V&&!I){if(j=R||V?{}:b(t),!G)return R?f(t,u(j,t)):c(t,a(j,t))}else{if(!$[z])return I?t:{};j=g(t,z,G)}}D||(D=new r);var Q=D.get(t);if(Q)return Q;D.set(t,j),A(t)?t.forEach((function(r){j.add(tt(r,e,n,r,t,D))})):x(t)&&t.forEach((function(r,i){j.set(i,tt(r,e,n,i,t,D))}));var F=B?R?p:h:R?keysIn:S,q=P?void 0:F(t);return i(q||t,(function(r,i){q&&(i=r,r=t[i]),o(j,i,tt(r,e,n,i,t,D))})),j}$[T]=$[E]=$[F]=$[q]=$[I]=$[D]=$[W]=$[X]=$[Z]=$[H]=$[U]=$[G]=$[R]=$[M]=$[B]=$[P]=$[z]=$[V]=$[J]=$[Y]=$[K]=$[_]=!0,$[j]=$[L]=$[Q]=!1,t.exports=tt},"39ff":function(t,e,n){var r=n("0b07"),i=n("2b3e"),o=r(i,"WeakMap");t.exports=o},"3b4a":function(t,e,n){var r=n("0b07"),i=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(e){}}();t.exports=i},"3bbe":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},"3ca3":function(t,e,n){"use strict";var r=n("6547").charAt,i=n("69f3"),o=n("7dd0"),a="String Iterator",u=i.set,s=i.getterFor(a);o(String,"String",(function(t){u(this,{type:a,string:String(t),index:0})}),(function(){var t,e=s(this),n=e.string,i=e.index;return i>=n.length?{value:void 0,done:!0}:(t=r(n,i),e.index+=t.length,{value:t,done:!1})}))},"3f8c":function(t,e){t.exports={}},"408a":function(t,e,n){var r=n("c6b6");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},4160:function(t,e,n){"use strict";var r=n("23e7"),i=n("17c2");r({target:"Array",proto:!0,forced:[].forEach!=i},{forEach:i})},"41c3":function(t,e,n){var r=n("1a8c"),i=n("eac5"),o=n("ec8c"),a=Object.prototype,u=a.hasOwnProperty;function s(t){if(!r(t))return o(t);var e=i(t),n=[];for(var a in t)("constructor"!=a||!e&&u.call(t,a))&&n.push(a);return n}t.exports=s},4245:function(t,e,n){var r=n("1290");function i(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}t.exports=i},42454:function(t,e,n){var r=n("f909"),i=n("2ec1"),o=i((function(t,e,n){r(t,e,n)}));t.exports=o},4284:function(t,e){function n(t,e){var n=-1,r=null==t?0:t.length;while(++n<r)if(e(t[n],n,t))return!0;return!1}t.exports=n},"428f":function(t,e,n){var r=n("da84");t.exports=r},"42a2":function(t,e,n){var r=n("b5a7"),i=n("79bc"),o=n("1cec"),a=n("c869"),u=n("39ff"),s=n("3729"),l=n("dc57"),c="[object Map]",f="[object Object]",h="[object Promise]",p="[object Set]",d="[object WeakMap]",v="[object DataView]",g=l(r),b=l(i),y=l(o),m=l(a),x=l(u),w=s;(r&&w(new r(new ArrayBuffer(1)))!=v||i&&w(new i)!=c||o&&w(o.resolve())!=h||a&&w(new a)!=p||u&&w(new u)!=d)&&(w=function(t){var e=s(t),n=e==f?t.constructor:void 0,r=n?l(n):"";if(r)switch(r){case g:return v;case b:return c;case y:return h;case m:return p;case x:return d}return e}),t.exports=w},4359:function(t,e){function n(t,e){var n=-1,r=t.length;e||(e=Array(r));while(++n<r)e[n]=t[n];return e}t.exports=n},"44ad":function(t,e,n){var r=n("d039"),i=n("c6b6"),o="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==i(t)?o.call(t,""):Object(t)}:Object},"44d2":function(t,e,n){var r=n("b622"),i=n("7c73"),o=n("9bf2"),a=r("unscopables"),u=Array.prototype;void 0==u[a]&&o.f(u,a,{configurable:!0,value:i(null)}),t.exports=function(t){u[a][t]=!0}},"44e7":function(t,e,n){var r=n("861d"),i=n("c6b6"),o=n("b622"),a=o("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[a])?!!e:"RegExp"==i(t))}},4840:function(t,e,n){var r=n("825a"),i=n("1c0b"),o=n("b622"),a=o("species");t.exports=function(t,e){var n,o=r(t).constructor;return void 0===o||void 0==(n=r(o)[a])?e:i(n)}},4930:function(t,e,n){var r=n("d039");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},"49f4":function(t,e,n){var r=n("6044");function i(){this.__data__=r?r(null):{},this.size=0}t.exports=i},"4d63":function(t,e,n){var r=n("83ab"),i=n("da84"),o=n("94ca"),a=n("7156"),u=n("9bf2").f,s=n("241c").f,l=n("44e7"),c=n("ad6d"),f=n("9f7f"),h=n("6eeb"),p=n("d039"),d=n("69f3").set,v=n("2626"),g=n("b622"),b=g("match"),y=i.RegExp,m=y.prototype,x=/a/g,w=/a/g,A=new y(x)!==x,S=f.UNSUPPORTED_Y,C=r&&o("RegExp",!A||S||p((function(){return w[b]=!1,y(x)!=x||y(w)==w||"/a/i"!=y(x,"i")})));if(C){var k=function(t,e){var n,r=this instanceof k,i=l(t),o=void 0===e;if(!r&&i&&t.constructor===k&&o)return t;A?i&&!o&&(t=t.source):t instanceof k&&(o&&(e=c.call(t)),t=t.source),S&&(n=!!e&&e.indexOf("y")>-1,n&&(e=e.replace(/y/g,"")));var u=a(A?new y(t,e):y(t,e),r?this:m,k);return S&&n&&d(u,{sticky:n}),u},O=function(t){t in k||u(k,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},T=s(y),E=0;while(T.length>E)O(T[E++]);m.constructor=k,k.prototype=m,h(i,"RegExp",k)}v("RegExp")},"4d64":function(t,e,n){var r=n("fc6a"),i=n("50c4"),o=n("23cb"),a=function(t){return function(e,n,a){var u,s=r(e),l=i(s.length),c=o(a,l);if(t&&n!=n){while(l>c)if(u=s[c++],u!=u)return!0}else for(;l>c;c++)if((t||c in s)&&s[c]===n)return t||c||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},"4de4":function(t,e,n){"use strict";var r=n("23e7"),i=n("b727").filter,o=n("1dde"),a=n("ae40"),u=o("filter"),s=a("filter");r({target:"Array",proto:!0,forced:!u||!s},{filter:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},"4df4":function(t,e,n){"use strict";var r=n("0366"),i=n("7b0b"),o=n("9bdd"),a=n("e95a"),u=n("50c4"),s=n("8418"),l=n("35a1");t.exports=function(t){var e,n,c,f,h,p,d=i(t),v="function"==typeof this?this:Array,g=arguments.length,b=g>1?arguments[1]:void 0,y=void 0!==b,m=l(d),x=0;if(y&&(b=r(b,g>2?arguments[2]:void 0,2)),void 0==m||v==Array&&a(m))for(e=u(d.length),n=new v(e);e>x;x++)p=y?b(d[x],x):d[x],s(n,x,p);else for(f=m.call(d),h=f.next,n=new v;!(c=h.call(f)).done;x++)p=y?o(f,b,[c.value,x],!0):c.value,s(n,x,p);return n.length=x,n}},"4ec9":function(t,e,n){"use strict";var r=n("6d61"),i=n("6566");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),i)},"4f4d":function(t,e,n){"use strict";t.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},"4f50":function(t,e,n){var r=n("b760"),i=n("e5383"),o=n("c8fe"),a=n("4359"),u=n("fa21"),s=n("d370"),l=n("6747"),c=n("dcbe"),f=n("0d24"),h=n("9520"),p=n("1a8c"),d=n("60ed"),v=n("73ac"),g=n("8adb"),b=n("8de2");function y(t,e,n,y,m,x,w){var A=g(t,n),S=g(e,n),C=w.get(S);if(C)r(t,n,C);else{var k=x?x(A,S,n+"",t,e,w):void 0,O=void 0===k;if(O){var T=l(S),E=!T&&f(S),I=!T&&!E&&v(S);k=S,T||E||I?l(A)?k=A:c(A)?k=a(A):E?(O=!1,k=i(S,!0)):I?(O=!1,k=o(S,!0)):k=[]:d(S)||s(S)?(k=A,s(A)?k=b(A):p(A)&&!h(A)||(k=u(S))):O=!1}O&&(w.set(S,k),m(k,S,y,x,w),w["delete"](S)),r(t,n,k)}}t.exports=y},"50c4":function(t,e,n){var r=n("a691"),i=Math.min;t.exports=function(t){return t>0?i(r(t),9007199254740991):0}},"50d8":function(t,e){function n(t,e){var n=-1,r=Array(t);while(++n<t)r[n]=e(n);return r}t.exports=n},5135:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},5319:function(t,e,n){"use strict";var r=n("d784"),i=n("825a"),o=n("7b0b"),a=n("50c4"),u=n("a691"),s=n("1d80"),l=n("8aa5"),c=n("14c3"),f=Math.max,h=Math.min,p=Math.floor,d=/\$([$&'`]|\d\d?|<[^>]*>)/g,v=/\$([$&'`]|\d\d?)/g,g=function(t){return void 0===t?t:String(t)};r("replace",2,(function(t,e,n,r){var b=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,y=r.REPLACE_KEEPS_$0,m=b?"$":"$0";return[function(n,r){var i=s(this),o=void 0==n?void 0:n[t];return void 0!==o?o.call(n,i,r):e.call(String(i),n,r)},function(t,r){if(!b&&y||"string"===typeof r&&-1===r.indexOf(m)){var o=n(e,t,this,r);if(o.done)return o.value}var s=i(t),p=String(this),d="function"===typeof r;d||(r=String(r));var v=s.global;if(v){var w=s.unicode;s.lastIndex=0}var A=[];while(1){var S=c(s,p);if(null===S)break;if(A.push(S),!v)break;var C=String(S[0]);""===C&&(s.lastIndex=l(p,a(s.lastIndex),w))}for(var k="",O=0,T=0;T<A.length;T++){S=A[T];for(var E=String(S[0]),I=f(h(u(S.index),p.length),0),D=[],j=1;j<S.length;j++)D.push(g(S[j]));var L=S.groups;if(d){var N=[E].concat(D,I,p);void 0!==L&&N.push(L);var G=String(r.apply(void 0,N))}else G=x(E,p,I,D,L,r);I>=O&&(k+=p.slice(O,I)+G,O=I+E.length)}return k+p.slice(O)}];function x(t,n,r,i,a,u){var s=r+t.length,l=i.length,c=v;return void 0!==a&&(a=o(a),c=d),e.call(u,c,(function(e,o){var u;switch(o.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(s);case"<":u=a[o.slice(1,-1)];break;default:var c=+o;if(0===c)return e;if(c>l){var f=p(c/10);return 0===f?e:f<=l?void 0===i[f-1]?o.charAt(1):i[f-1]+o.charAt(1):e}u=i[c-1]}return void 0===u?"":u}))}}))},"54eb":function(t,e,n){var r=n("8eeb"),i=n("32f4");function o(t,e){return r(t,i(t),e)}t.exports=o},"55a3":function(t,e){function n(t){return this.__data__.has(t)}t.exports=n},5692:function(t,e,n){var r=n("c430"),i=n("c6cd");(t.exports=function(t,e){return i[t]||(i[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.5",mode:r?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},"56ef":function(t,e,n){var r=n("d066"),i=n("241c"),o=n("7418"),a=n("825a");t.exports=r("Reflect","ownKeys")||function(t){var e=i.f(a(t)),n=o.f;return n?e.concat(n(t)):e}},"57a5":function(t,e,n){var r=n("91e9"),i=r(Object.keys,Object);t.exports=i},"585a":function(t,e,n){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(this,n("c8ba"))},5880:function(t,n){t.exports=e},5899:function(t,e){t.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},"58a8":function(t,e,n){var r=n("1d80"),i=n("5899"),o="["+i+"]",a=RegExp("^"+o+o+"*"),u=RegExp(o+o+"*$"),s=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(a,"")),2&t&&(n=n.replace(u,"")),n}};t.exports={start:s(1),end:s(2),trim:s(3)}},"5a34":function(t,e,n){var r=n("44e7");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},"5b01":function(t,e,n){var r=n("8eeb"),i=n("ec69");function o(t,e){return t&&r(e,i(e),t)}t.exports=o},"5c6c":function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"5d89":function(t,e,n){var r=n("f8af");function i(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}t.exports=i},"5e2e":function(t,e,n){var r=n("28c9"),i=n("69d5"),o=n("b4c0"),a=n("fba5"),u=n("67ca");function s(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e<n){var r=t[e];this.set(r[0],r[1])}}s.prototype.clear=r,s.prototype["delete"]=i,s.prototype.get=o,s.prototype.has=a,s.prototype.set=u,t.exports=s},6044:function(t,e,n){var r=n("0b07"),i=r(Object,"create");t.exports=i},"60da":function(t,e,n){"use strict";var r=n("83ab"),i=n("d039"),o=n("df75"),a=n("7418"),u=n("d1e7"),s=n("7b0b"),l=n("44ad"),c=Object.assign,f=Object.defineProperty;t.exports=!c||i((function(){if(r&&1!==c({b:1},c(f({},"a",{enumerable:!0,get:function(){f(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol(),i="abcdefghijklmnopqrst";return t[n]=7,i.split("").forEach((function(t){e[t]=t})),7!=c({},t)[n]||o(c({},e)).join("")!=i}))?function(t,e){var n=s(t),i=arguments.length,c=1,f=a.f,h=u.f;while(i>c){var p,d=l(arguments[c++]),v=f?o(d).concat(f(d)):o(d),g=v.length,b=0;while(g>b)p=v[b++],r&&!h.call(d,p)||(n[p]=d[p])}return n}:c},"60ed":function(t,e,n){var r=n("3729"),i=n("2dcb"),o=n("1310"),a="[object Object]",u=Function.prototype,s=Object.prototype,l=u.toString,c=s.hasOwnProperty,f=l.call(Object);function h(t){if(!o(t)||r(t)!=a)return!1;var e=i(t);if(null===e)return!0;var n=c.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==f}t.exports=h},"62e4":function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},"63ea":function(t,e,n){var r=n("c05f");function i(t,e){return r(t,e)}t.exports=i},6547:function(t,e,n){var r=n("a691"),i=n("1d80"),o=function(t){return function(e,n){var o,a,u=String(i(e)),s=r(n),l=u.length;return s<0||s>=l?t?"":void 0:(o=u.charCodeAt(s),o<55296||o>56319||s+1===l||(a=u.charCodeAt(s+1))<56320||a>57343?t?u.charAt(s):o:t?u.slice(s,s+2):a-56320+(o-55296<<10)+65536)}};t.exports={codeAt:o(!1),charAt:o(!0)}},6566:function(t,e,n){"use strict";var r=n("9bf2").f,i=n("7c73"),o=n("e2cc"),a=n("0366"),u=n("19aa"),s=n("2266"),l=n("7dd0"),c=n("2626"),f=n("83ab"),h=n("f183").fastKey,p=n("69f3"),d=p.set,v=p.getterFor;t.exports={getConstructor:function(t,e,n,l){var c=t((function(t,r){u(t,c,e),d(t,{type:e,index:i(null),first:void 0,last:void 0,size:0}),f||(t.size=0),void 0!=r&&s(r,t[l],t,n)})),p=v(e),g=function(t,e,n){var r,i,o=p(t),a=b(t,e);return a?a.value=n:(o.last=a={index:i=h(e,!0),key:e,value:n,previous:r=o.last,next:void 0,removed:!1},o.first||(o.first=a),r&&(r.next=a),f?o.size++:t.size++,"F"!==i&&(o.index[i]=a)),t},b=function(t,e){var n,r=p(t),i=h(e);if("F"!==i)return r.index[i];for(n=r.first;n;n=n.next)if(n.key==e)return n};return o(c.prototype,{clear:function(){var t=this,e=p(t),n=e.index,r=e.first;while(r)r.removed=!0,r.previous&&(r.previous=r.previous.next=void 0),delete n[r.index],r=r.next;e.first=e.last=void 0,f?e.size=0:t.size=0},delete:function(t){var e=this,n=p(e),r=b(e,t);if(r){var i=r.next,o=r.previous;delete n.index[r.index],r.removed=!0,o&&(o.next=i),i&&(i.previous=o),n.first==r&&(n.first=i),n.last==r&&(n.last=o),f?n.size--:e.size--}return!!r},forEach:function(t){var e,n=p(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);while(e=e?e.next:n.first){r(e.value,e.key,this);while(e&&e.removed)e=e.previous}},has:function(t){return!!b(this,t)}}),o(c.prototype,n?{get:function(t){var e=b(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),f&&r(c.prototype,"size",{get:function(){return p(this).size}}),c},setStrong:function(t,e,n){var r=e+" Iterator",i=v(e),o=v(r);l(t,e,(function(t,e){d(this,{type:r,target:t,state:i(t),kind:e,last:void 0})}),(function(){var t=o(this),e=t.kind,n=t.last;while(n&&n.removed)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),c(e)}}},"65f0":function(t,e,n){var r=n("861d"),i=n("e8b5"),o=n("b622"),a=o("species");t.exports=function(t,e){var n;return i(t)&&(n=t.constructor,"function"!=typeof n||n!==Array&&!i(n.prototype)?r(n)&&(n=n[a],null===n&&(n=void 0)):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},6747:function(t,e){var n=Array.isArray;t.exports=n},"67ca":function(t,e,n){var r=n("cb5a");function i(t,e){var n=this.__data__,i=r(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this}t.exports=i},6999:function(t,e,n){},"69d5":function(t,e,n){var r=n("cb5a"),i=Array.prototype,o=i.splice;function a(t){var e=this.__data__,n=r(e,t);if(n<0)return!1;var i=e.length-1;return n==i?e.pop():o.call(e,n,1),--this.size,!0}t.exports=a},"69f3":function(t,e,n){var r,i,o,a=n("7f9a"),u=n("da84"),s=n("861d"),l=n("9112"),c=n("5135"),f=n("f772"),h=n("d012"),p=u.WeakMap,d=function(t){return o(t)?i(t):r(t,{})},v=function(t){return function(e){var n;if(!s(e)||(n=i(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}};if(a){var g=new p,b=g.get,y=g.has,m=g.set;r=function(t,e){return m.call(g,t,e),e},i=function(t){return b.call(g,t)||{}},o=function(t){return y.call(g,t)}}else{var x=f("state");h[x]=!0,r=function(t,e){return l(t,x,e),e},i=function(t){return c(t,x)?t[x]:{}},o=function(t){return c(t,x)}}t.exports={set:r,get:i,has:o,enforce:d,getterFor:v}},"6d61":function(t,e,n){"use strict";var r=n("23e7"),i=n("da84"),o=n("94ca"),a=n("6eeb"),u=n("f183"),s=n("2266"),l=n("19aa"),c=n("861d"),f=n("d039"),h=n("1c7e"),p=n("d44e"),d=n("7156");t.exports=function(t,e,n){var v=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),b=v?"set":"add",y=i[t],m=y&&y.prototype,x=y,w={},A=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!c(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!c(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!c(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(o(t,"function"!=typeof y||!(g||m.forEach&&!f((function(){(new y).entries().next()})))))x=n.getConstructor(e,t,v,b),u.REQUIRED=!0;else if(o(t,!0)){var S=new x,C=S[b](g?{}:-0,1)!=S,k=f((function(){S.has(1)})),O=h((function(t){new y(t)})),T=!g&&f((function(){var t=new y,e=5;while(e--)t[b](e,e);return!t.has(-0)}));O||(x=e((function(e,n){l(e,x,t);var r=d(new y,e,x);return void 0!=n&&s(n,r[b],r,v),r})),x.prototype=m,m.constructor=x),(k||T)&&(A("delete"),A("has"),v&&A("get")),(T||C)&&A(b),g&&m.clear&&delete m.clear}return w[t]=x,r({global:!0,forced:x!=y},w),p(x,t),g||n.setStrong(x,t,v),x}},"6eeb":function(t,e,n){var r=n("da84"),i=n("9112"),o=n("5135"),a=n("ce4e"),u=n("8925"),s=n("69f3"),l=s.get,c=s.enforce,f=String(String).split("String");(t.exports=function(t,e,n,u){var s=!!u&&!!u.unsafe,l=!!u&&!!u.enumerable,h=!!u&&!!u.noTargetGet;"function"==typeof n&&("string"!=typeof e||o(n,"name")||i(n,"name",e),c(n).source=f.join("string"==typeof e?e:"")),t!==r?(s?!h&&t[e]&&(l=!0):delete t[e],l?t[e]=n:i(t,e,n)):l?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&l(this).source||u(this)}))},"6f6c":function(t,e){var n=/\w*$/;function r(t){var e=new t.constructor(t.source,n.exec(t));return e.lastIndex=t.lastIndex,e}t.exports=r},"6fcd":function(t,e,n){var r=n("50d8"),i=n("d370"),o=n("6747"),a=n("0d24"),u=n("c098"),s=n("73ac"),l=Object.prototype,c=l.hasOwnProperty;function f(t,e){var n=o(t),l=!n&&i(t),f=!n&&!l&&a(t),h=!n&&!l&&!f&&s(t),p=n||l||f||h,d=p?r(t.length,String):[],v=d.length;for(var g in t)!e&&!c.call(t,g)||p&&("length"==g||f&&("offset"==g||"parent"==g)||h&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||u(g,v))||d.push(g);return d}t.exports=f},7156:function(t,e,n){var r=n("861d"),i=n("d2bb");t.exports=function(t,e,n){var o,a;return i&&"function"==typeof(o=e.constructor)&&o!==n&&r(a=o.prototype)&&a!==n.prototype&&i(t,a),t}},"72af":function(t,e,n){var r=n("99cd"),i=r();t.exports=i},"72f0":function(t,e){function n(t){return function(){return t}}t.exports=n},"73ac":function(t,e,n){var r=n("743f"),i=n("b047"),o=n("99d3"),a=o&&o.isTypedArray,u=a?i(a):r;t.exports=u},7418:function(t,e){e.f=Object.getOwnPropertySymbols},"743f":function(t,e,n){var r=n("3729"),i=n("b218"),o=n("1310"),a="[object Arguments]",u="[object Array]",s="[object Boolean]",l="[object Date]",c="[object Error]",f="[object Function]",h="[object Map]",p="[object Number]",d="[object Object]",v="[object RegExp]",g="[object Set]",b="[object String]",y="[object WeakMap]",m="[object ArrayBuffer]",x="[object DataView]",w="[object Float32Array]",A="[object Float64Array]",S="[object Int8Array]",C="[object Int16Array]",k="[object Int32Array]",O="[object Uint8Array]",T="[object Uint8ClampedArray]",E="[object Uint16Array]",I="[object Uint32Array]",D={};function j(t){return o(t)&&i(t.length)&&!!D[r(t)]}D[w]=D[A]=D[S]=D[C]=D[k]=D[O]=D[T]=D[E]=D[I]=!0,D[a]=D[u]=D[m]=D[s]=D[x]=D[l]=D[c]=D[f]=D[h]=D[p]=D[d]=D[v]=D[g]=D[b]=D[y]=!1,t.exports=j},"746f":function(t,e,n){var r=n("428f"),i=n("5135"),o=n("e538"),a=n("9bf2").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});i(e,t)||a(e,t,{value:o.f(t)})}},7530:function(t,e,n){var r=n("1a8c"),i=Object.create,o=function(){function t(){}return function(e){if(!r(e))return{};if(i)return i(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=o},7839:function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"79bc":function(t,e,n){var r=n("0b07"),i=n("2b3e"),o=r(i,"Map");t.exports=o},"7a48":function(t,e,n){var r=n("6044"),i=Object.prototype,o=i.hasOwnProperty;function a(t){var e=this.__data__;return r?void 0!==e[t]:o.call(e,t)}t.exports=a},"7b0b":function(t,e,n){var r=n("1d80");t.exports=function(t){return Object(r(t))}},"7b83":function(t,e,n){var r=n("7c64"),i=n("93ed"),o=n("2478"),a=n("a524"),u=n("1fc8");function s(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e<n){var r=t[e];this.set(r[0],r[1])}}s.prototype.clear=r,s.prototype["delete"]=i,s.prototype.get=o,s.prototype.has=a,s.prototype.set=u,t.exports=s},"7b97":function(t,e,n){var r=n("7e64"),i=n("a2be"),o=n("1c3c"),a=n("b1e5"),u=n("42a2"),s=n("6747"),l=n("0d24"),c=n("73ac"),f=1,h="[object Arguments]",p="[object Array]",d="[object Object]",v=Object.prototype,g=v.hasOwnProperty;function b(t,e,n,v,b,y){var m=s(t),x=s(e),w=m?p:u(t),A=x?p:u(e);w=w==h?d:w,A=A==h?d:A;var S=w==d,C=A==d,k=w==A;if(k&&l(t)){if(!l(e))return!1;m=!0,S=!1}if(k&&!S)return y||(y=new r),m||c(t)?i(t,e,n,v,b,y):o(t,e,w,n,v,b,y);if(!(n&f)){var O=S&&g.call(t,"__wrapped__"),T=C&&g.call(e,"__wrapped__");if(O||T){var E=O?t.value():t,I=T?e.value():e;return y||(y=new r),b(E,I,n,v,y)}}return!!k&&(y||(y=new r),a(t,e,n,v,b,y))}t.exports=b},"7c64":function(t,e,n){var r=n("e24b"),i=n("5e2e"),o=n("79bc");function a(){this.size=0,this.__data__={hash:new r,map:new(o||i),string:new r}}t.exports=a},"7c73":function(t,e,n){var r,i=n("825a"),o=n("37e8"),a=n("7839"),u=n("d012"),s=n("1be4"),l=n("cc12"),c=n("f772"),f=">",h="<",p="prototype",d="script",v=c("IE_PROTO"),g=function(){},b=function(t){return h+d+f+t+h+"/"+d+f},y=function(t){t.write(b("")),t.close();var e=t.parentWindow.Object;return t=null,e},m=function(){var t,e=l("iframe"),n="java"+d+":";return e.style.display="none",s.appendChild(e),e.src=String(n),t=e.contentWindow.document,t.open(),t.write(b("document.F=Object")),t.close(),t.F},x=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(e){}x=r?y(r):m();var t=a.length;while(t--)delete x[p][a[t]];return x()};u[v]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(g[p]=i(t),n=new g,g[p]=null,n[v]=t):n=x(),void 0===e?n:o(n,e)}},"7d1f":function(t,e,n){var r=n("087d"),i=n("6747");function o(t,e,n){var o=e(t);return i(t)?o:r(o,n(t))}t.exports=o},"7db0":function(t,e,n){"use strict";var r=n("23e7"),i=n("b727").find,o=n("44d2"),a=n("ae40"),u="find",s=!0,l=a(u);u in[]&&Array(1)[u]((function(){s=!1})),r({target:"Array",proto:!0,forced:s||!l},{find:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),o(u)},"7dd0":function(t,e,n){"use strict";var r=n("23e7"),i=n("9ed3"),o=n("e163"),a=n("d2bb"),u=n("d44e"),s=n("9112"),l=n("6eeb"),c=n("b622"),f=n("c430"),h=n("3f8c"),p=n("ae93"),d=p.IteratorPrototype,v=p.BUGGY_SAFARI_ITERATORS,g=c("iterator"),b="keys",y="values",m="entries",x=function(){return this};t.exports=function(t,e,n,c,p,w,A){i(n,e,c);var S,C,k,O=function(t){if(t===p&&j)return j;if(!v&&t in I)return I[t];switch(t){case b:return function(){return new n(this,t)};case y:return function(){return new n(this,t)};case m:return function(){return new n(this,t)}}return function(){return new n(this)}},T=e+" Iterator",E=!1,I=t.prototype,D=I[g]||I["@@iterator"]||p&&I[p],j=!v&&D||O(p),L="Array"==e&&I.entries||D;if(L&&(S=o(L.call(new t)),d!==Object.prototype&&S.next&&(f||o(S)===d||(a?a(S,d):"function"!=typeof S[g]&&s(S,g,x)),u(S,T,!0,!0),f&&(h[T]=x))),p==y&&D&&D.name!==y&&(E=!0,j=function(){return D.call(this)}),f&&!A||I[g]===j||s(I,g,j),h[e]=j,p)if(C={values:O(y),keys:w?j:O(b),entries:O(m)},A)for(k in C)(v||E||!(k in I))&&l(I,k,C[k]);else r({target:e,proto:!0,forced:v||E},C);return C}},"7e64":function(t,e,n){var r=n("5e2e"),i=n("efb6"),o=n("2fcc"),a=n("802a"),u=n("55a3"),s=n("d02c");function l(t){var e=this.__data__=new r(t);this.size=e.size}l.prototype.clear=i,l.prototype["delete"]=o,l.prototype.get=a,l.prototype.has=u,l.prototype.set=s,t.exports=l},"7ed2":function(t,e){var n="__lodash_hash_undefined__";function r(t){return this.__data__.set(t,n),this}t.exports=r},"7f9a":function(t,e,n){var r=n("da84"),i=n("8925"),o=r.WeakMap;t.exports="function"===typeof o&&/native code/.test(i(o))},"802a":function(t,e){function n(t){return this.__data__.get(t)}t.exports=n},8057:function(t,e){function n(t,e){var n=-1,r=null==t?0:t.length;while(++n<r)if(!1===e(t[n],n,t))break;return t}t.exports=n},"825a":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},"83ab":function(t,e,n){var r=n("d039");t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},8418:function(t,e,n){"use strict";var r=n("c04e"),i=n("9bf2"),o=n("5c6c");t.exports=function(t,e,n){var a=r(e);a in t?i.f(t,a,o(0,n)):t[a]=n}},"85e3":function(t,e){function n(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}t.exports=n},"861d":function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},"872a":function(t,e,n){var r=n("3b4a");function i(t,e,n){"__proto__"==e&&r?r(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}t.exports=i},8875:function(t,e,n){var r,i,o;(function(n,a){i=[],r=a,o="function"===typeof r?r.apply(e,i):r,void 0===o||(t.exports=o)})("undefined"!==typeof self&&self,(function(){function t(){if(document.currentScript)return document.currentScript;try{throw new Error}catch(f){var t,e,n,r=/.*at [^(]*\((.*):(.+):(.+)\)$/gi,i=/@([^@]*):(\d+):(\d+)\s*$/gi,o=r.exec(f.stack)||i.exec(f.stack),a=o&&o[1]||!1,u=o&&o[2]||!1,s=document.location.href.replace(document.location.hash,""),l=document.getElementsByTagName("script");a===s&&(t=document.documentElement.outerHTML,e=new RegExp("(?:[^\\n]+?\\n){0,"+(u-2)+"}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*","i"),n=t.replace(e,"$1").trim());for(var c=0;c<l.length;c++){if("interactive"===l[c].readyState)return l[c];if(l[c].src===a)return l[c];if(a===s&&l[c].innerHTML&&l[c].innerHTML.trim()===n)return l[c]}return null}}return t}))},8925:function(t,e,n){var r=n("c6cd"),i=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(t){return i.call(t)}),t.exports=r.inspectSource},"8aa5":function(t,e,n){"use strict";var r=n("6547").charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"8adb":function(t,e){function n(t,e){if(("constructor"!==e||"function"!==typeof t[e])&&"__proto__"!=e)return t[e]}t.exports=n},"8bbf":function(t,e){t.exports=n},"8de2":function(t,e,n){var r=n("8eeb"),i=n("9934");function o(t){return r(t,i(t))}t.exports=o},"8eeb":function(t,e,n){var r=n("32b3"),i=n("872a");function o(t,e,n,o){var a=!n;n||(n={});var u=-1,s=e.length;while(++u<s){var l=e[u],c=o?o(n[l],t[l],l,n,t):void 0;void 0===c&&(c=t[l]),a?i(n,l,c):r(n,l,c)}return n}t.exports=o},"90e3":function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+r).toString(36)}},9112:function(t,e,n){var r=n("83ab"),i=n("9bf2"),o=n("5c6c");t.exports=r?function(t,e,n){return i.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},"91e9":function(t,e){function n(t,e){return function(n){return t(e(n))}}t.exports=n},9263:function(t,e,n){"use strict";var r=n("ad6d"),i=n("9f7f"),o=RegExp.prototype.exec,a=String.prototype.replace,u=o,s=function(){var t=/a/,e=/b*/g;return o.call(t,"a"),o.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),l=i.UNSUPPORTED_Y||i.BROKEN_CARET,c=void 0!==/()??/.exec("")[1],f=s||c||l;f&&(u=function(t){var e,n,i,u,f=this,h=l&&f.sticky,p=r.call(f),d=f.source,v=0,g=t;return h&&(p=p.replace("y",""),-1===p.indexOf("g")&&(p+="g"),g=String(t).slice(f.lastIndex),f.lastIndex>0&&(!f.multiline||f.multiline&&"\n"!==t[f.lastIndex-1])&&(d="(?: "+d+")",g=" "+g,v++),n=new RegExp("^(?:"+d+")",p)),c&&(n=new RegExp("^"+d+"$(?!\\s)",p)),s&&(e=f.lastIndex),i=o.call(h?n:f,g),h?i?(i.input=i.input.slice(v),i[0]=i[0].slice(v),i.index=f.lastIndex,f.lastIndex+=i[0].length):f.lastIndex=0:s&&i&&(f.lastIndex=f.global?i.index+i[0].length:e),c&&i&&i.length>1&&a.call(i[0],n,(function(){for(u=1;u<arguments.length-2;u++)void 0===arguments[u]&&(i[u]=void 0)})),i}),t.exports=u},"93ed":function(t,e,n){var r=n("4245");function i(t){var e=r(this,t)["delete"](t);return this.size-=e?1:0,e}t.exports=i},9470:function(t,e,n){"use strict";var r=n("6999"),i=n.n(r);i.a},"94ca":function(t,e,n){var r=n("d039"),i=/#|\.prototype\./,o=function(t,e){var n=u[a(t)];return n==l||n!=s&&("function"==typeof e?r(e):!!e)},a=o.normalize=function(t){return String(t).replace(i,".").toLowerCase()},u=o.data={},s=o.NATIVE="N",l=o.POLYFILL="P";t.exports=o},9520:function(t,e,n){var r=n("3729"),i=n("1a8c"),o="[object AsyncFunction]",a="[object Function]",u="[object GeneratorFunction]",s="[object Proxy]";function l(t){if(!i(t))return!1;var e=r(t);return e==a||e==u||e==o||e==s}t.exports=l},9622:function(t,e,n){"use strict";var r=n("a271"),i=n.n(r);i.a},9638:function(t,e){function n(t,e){return t===e||t!==t&&e!==e}t.exports=n},9934:function(t,e,n){var r=n("6fcd"),i=n("41c3"),o=n("30c9");function a(t){return o(t)?r(t,!0):i(t)}t.exports=a},"99cd":function(t,e){function n(t){return function(e,n,r){var i=-1,o=Object(e),a=r(e),u=a.length;while(u--){var s=a[t?u:++i];if(!1===n(o[s],s,o))break}return e}}t.exports=n},"99d3":function(t,e,n){(function(t){var r=n("585a"),i=e&&!e.nodeType&&e,o=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=o&&o.exports===i,u=a&&r.process,s=function(){try{var t=o&&o.require&&o.require("util").types;return t||u&&u.binding&&u.binding("util")}catch(e){}}();t.exports=s}).call(this,n("62e4")(t))},"9aff":function(t,e,n){var r=n("9638"),i=n("30c9"),o=n("c098"),a=n("1a8c");function u(t,e,n){if(!a(n))return!1;var u=typeof e;return!!("number"==u?i(n)&&o(e,n.length):"string"==u&&e in n)&&r(n[e],t)}t.exports=u},"9bdd":function(t,e,n){var r=n("825a");t.exports=function(t,e,n,i){try{return i?e(r(n)[0],n[1]):e(n)}catch(a){var o=t["return"];throw void 0!==o&&r(o.call(t)),a}}},"9bf2":function(t,e,n){var r=n("83ab"),i=n("0cfb"),o=n("825a"),a=n("c04e"),u=Object.defineProperty;e.f=r?u:function(t,e,n){if(o(t),e=a(e,!0),o(n),i)try{return u(t,e,n)}catch(r){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},"9e69":function(t,e,n){var r=n("2b3e"),i=r.Symbol;t.exports=i},"9ed3":function(t,e,n){"use strict";var r=n("ae93").IteratorPrototype,i=n("7c73"),o=n("5c6c"),a=n("d44e"),u=n("3f8c"),s=function(){return this};t.exports=function(t,e,n){var l=e+" Iterator";return t.prototype=i(r,{next:o(1,n)}),a(t,l,!1,!0),u[l]=s,t}},"9f7f":function(t,e,n){"use strict";var r=n("d039");function i(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=r((function(){var t=i("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),e.BROKEN_CARET=r((function(){var t=i("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},a029:function(t,e,n){var r=n("087d"),i=n("2dcb"),o=n("32f4"),a=n("d327"),u=Object.getOwnPropertySymbols,s=u?function(t){var e=[];while(t)r(e,o(t)),t=i(t);return e}:a;t.exports=s},a271:function(t,e,n){},a2be:function(t,e,n){var r=n("d612"),i=n("4284"),o=n("c584"),a=1,u=2;function s(t,e,n,s,l,c){var f=n&a,h=t.length,p=e.length;if(h!=p&&!(f&&p>h))return!1;var d=c.get(t);if(d&&c.get(e))return d==e;var v=-1,g=!0,b=n&u?new r:void 0;c.set(t,e),c.set(e,t);while(++v<h){var y=t[v],m=e[v];if(s)var x=f?s(m,y,v,e,t,c):s(y,m,v,t,e,c);if(void 0!==x){if(x)continue;g=!1;break}if(b){if(!i(e,(function(t,e){if(!o(b,e)&&(y===t||l(y,t,n,s,c)))return b.push(e)}))){g=!1;break}}else if(y!==m&&!l(y,m,n,s,c)){g=!1;break}}return c["delete"](t),c["delete"](e),g}t.exports=s},a2db:function(t,e,n){var r=n("9e69"),i=r?r.prototype:void 0,o=i?i.valueOf:void 0;function a(t){return o?Object(o.call(t)):{}}t.exports=a},a434:function(t,e,n){"use strict";var r=n("23e7"),i=n("23cb"),o=n("a691"),a=n("50c4"),u=n("7b0b"),s=n("65f0"),l=n("8418"),c=n("1dde"),f=n("ae40"),h=c("splice"),p=f("splice",{ACCESSORS:!0,0:0,1:2}),d=Math.max,v=Math.min,g=9007199254740991,b="Maximum allowed length exceeded";r({target:"Array",proto:!0,forced:!h||!p},{splice:function(t,e){var n,r,c,f,h,p,y=u(this),m=a(y.length),x=i(t,m),w=arguments.length;if(0===w?n=r=0:1===w?(n=0,r=m-x):(n=w-2,r=v(d(o(e),0),m-x)),m+n-r>g)throw TypeError(b);for(c=s(y,r),f=0;f<r;f++)h=x+f,h in y&&l(c,f,y[h]);if(c.length=r,n<r){for(f=x;f<m-r;f++)h=f+r,p=f+n,h in y?y[p]=y[h]:delete y[p];for(f=m;f>m-r+n;f--)delete y[f-1]}else if(n>r)for(f=m-r;f>x;f--)h=f+r-1,p=f+n-1,h in y?y[p]=y[h]:delete y[p];for(f=0;f<n;f++)y[f+x]=arguments[f+2];return y.length=m-r+n,c}})},a454:function(t,e,n){var r=n("72f0"),i=n("3b4a"),o=n("cd9d"),a=i?function(t,e){return i(t,"toString",{configurable:!0,enumerable:!1,value:r(e),writable:!0})}:o;t.exports=a},a4d3:function(t,e,n){"use strict";var r=n("23e7"),i=n("da84"),o=n("d066"),a=n("c430"),u=n("83ab"),s=n("4930"),l=n("fdbf"),c=n("d039"),f=n("5135"),h=n("e8b5"),p=n("861d"),d=n("825a"),v=n("7b0b"),g=n("fc6a"),b=n("c04e"),y=n("5c6c"),m=n("7c73"),x=n("df75"),w=n("241c"),A=n("057f"),S=n("7418"),C=n("06cf"),k=n("9bf2"),O=n("d1e7"),T=n("9112"),E=n("6eeb"),I=n("5692"),D=n("f772"),j=n("d012"),L=n("90e3"),N=n("b622"),G=n("e538"),R=n("746f"),M=n("d44e"),B=n("69f3"),P=n("b727").forEach,z=D("hidden"),V="Symbol",Q="prototype",F=N("toPrimitive"),q=B.set,W=B.getterFor(V),X=Object[Q],Z=i.Symbol,H=o("JSON","stringify"),U=C.f,J=k.f,Y=A.f,K=O.f,_=I("symbols"),$=I("op-symbols"),tt=I("string-to-symbol-registry"),et=I("symbol-to-string-registry"),nt=I("wks"),rt=i.QObject,it=!rt||!rt[Q]||!rt[Q].findChild,ot=u&&c((function(){return 7!=m(J({},"a",{get:function(){return J(this,"a",{value:7}).a}})).a}))?function(t,e,n){var r=U(X,e);r&&delete X[e],J(t,e,n),r&&t!==X&&J(X,e,r)}:J,at=function(t,e){var n=_[t]=m(Z[Q]);return q(n,{type:V,tag:t,description:e}),u||(n.description=e),n},ut=l?function(t){return"symbol"==typeof t}:function(t){return Object(t)instanceof Z},st=function(t,e,n){t===X&&st($,e,n),d(t);var r=b(e,!0);return d(n),f(_,r)?(n.enumerable?(f(t,z)&&t[z][r]&&(t[z][r]=!1),n=m(n,{enumerable:y(0,!1)})):(f(t,z)||J(t,z,y(1,{})),t[z][r]=!0),ot(t,r,n)):J(t,r,n)},lt=function(t,e){d(t);var n=g(e),r=x(n).concat(dt(n));return P(r,(function(e){u&&!ft.call(n,e)||st(t,e,n[e])})),t},ct=function(t,e){return void 0===e?m(t):lt(m(t),e)},ft=function(t){var e=b(t,!0),n=K.call(this,e);return!(this===X&&f(_,e)&&!f($,e))&&(!(n||!f(this,e)||!f(_,e)||f(this,z)&&this[z][e])||n)},ht=function(t,e){var n=g(t),r=b(e,!0);if(n!==X||!f(_,r)||f($,r)){var i=U(n,r);return!i||!f(_,r)||f(n,z)&&n[z][r]||(i.enumerable=!0),i}},pt=function(t){var e=Y(g(t)),n=[];return P(e,(function(t){f(_,t)||f(j,t)||n.push(t)})),n},dt=function(t){var e=t===X,n=Y(e?$:g(t)),r=[];return P(n,(function(t){!f(_,t)||e&&!f(X,t)||r.push(_[t])})),r};if(s||(Z=function(){if(this instanceof Z)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=L(t),n=function(t){this===X&&n.call($,t),f(this,z)&&f(this[z],e)&&(this[z][e]=!1),ot(this,e,y(1,t))};return u&&it&&ot(X,e,{configurable:!0,set:n}),at(e,t)},E(Z[Q],"toString",(function(){return W(this).tag})),E(Z,"withoutSetter",(function(t){return at(L(t),t)})),O.f=ft,k.f=st,C.f=ht,w.f=A.f=pt,S.f=dt,G.f=function(t){return at(N(t),t)},u&&(J(Z[Q],"description",{configurable:!0,get:function(){return W(this).description}}),a||E(X,"propertyIsEnumerable",ft,{unsafe:!0}))),r({global:!0,wrap:!0,forced:!s,sham:!s},{Symbol:Z}),P(x(nt),(function(t){R(t)})),r({target:V,stat:!0,forced:!s},{for:function(t){var e=String(t);if(f(tt,e))return tt[e];var n=Z(e);return tt[e]=n,et[n]=e,n},keyFor:function(t){if(!ut(t))throw TypeError(t+" is not a symbol");if(f(et,t))return et[t]},useSetter:function(){it=!0},useSimple:function(){it=!1}}),r({target:"Object",stat:!0,forced:!s,sham:!u},{create:ct,defineProperty:st,defineProperties:lt,getOwnPropertyDescriptor:ht}),r({target:"Object",stat:!0,forced:!s},{getOwnPropertyNames:pt,getOwnPropertySymbols:dt}),r({target:"Object",stat:!0,forced:c((function(){S.f(1)}))},{getOwnPropertySymbols:function(t){return S.f(v(t))}}),H){var vt=!s||c((function(){var t=Z();return"[null]"!=H([t])||"{}"!=H({a:t})||"{}"!=H(Object(t))}));r({target:"JSON",stat:!0,forced:vt},{stringify:function(t,e,n){var r,i=[t],o=1;while(arguments.length>o)i.push(arguments[o++]);if(r=e,(p(e)||void 0!==t)&&!ut(t))return h(e)||(e=function(t,e){if("function"==typeof r&&(e=r.call(this,t,e)),!ut(e))return e}),i[1]=e,H.apply(null,i)}})}Z[Q][F]||T(Z[Q],F,Z[Q].valueOf),M(Z,V),j[z]=!0},a524:function(t,e,n){var r=n("4245");function i(t){return r(this,t).has(t)}t.exports=i},a630:function(t,e,n){var r=n("23e7"),i=n("4df4"),o=n("1c7e"),a=!o((function(t){Array.from(t)}));r({target:"Array",stat:!0,forced:a},{from:i})},a640:function(t,e,n){"use strict";var r=n("d039");t.exports=function(t,e){var n=[][t];return!!n&&r((function(){n.call(null,e||function(){throw 1},1)}))}},a691:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},a8f2:function(t,e,n){"use strict";var r=n("df4a"),i=n.n(r);i.a},a994:function(t,e,n){var r=n("7d1f"),i=n("32f4"),o=n("ec69");function a(t){return r(t,o,i)}t.exports=a},a9e3:function(t,e,n){"use strict";var r=n("83ab"),i=n("da84"),o=n("94ca"),a=n("6eeb"),u=n("5135"),s=n("c6b6"),l=n("7156"),c=n("c04e"),f=n("d039"),h=n("7c73"),p=n("241c").f,d=n("06cf").f,v=n("9bf2").f,g=n("58a8").trim,b="Number",y=i[b],m=y.prototype,x=s(h(m))==b,w=function(t){var e,n,r,i,o,a,u,s,l=c(t,!1);if("string"==typeof l&&l.length>2)if(l=g(l),e=l.charCodeAt(0),43===e||45===e){if(n=l.charCodeAt(2),88===n||120===n)return NaN}else if(48===e){switch(l.charCodeAt(1)){case 66:case 98:r=2,i=49;break;case 79:case 111:r=8,i=55;break;default:return+l}for(o=l.slice(2),a=o.length,u=0;u<a;u++)if(s=o.charCodeAt(u),s<48||s>i)return NaN;return parseInt(o,r)}return+l};if(o(b,!y(" 0o1")||!y("0b1")||y("+0x1"))){for(var A,S=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof S&&(x?f((function(){m.valueOf.call(n)})):s(n)!=b)?l(new y(w(e)),n,S):w(e)},C=r?p(y):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),k=0;C.length>k;k++)u(y,A=C[k])&&!u(S,A)&&v(S,A,d(y,A));S.prototype=m,m.constructor=S,a(i,b,S)}},ab13:function(t,e,n){var r=n("b622"),i=r("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[i]=!1,"/./"[t](e)}catch(r){}}return!1}},ac1f:function(t,e,n){"use strict";var r=n("23e7"),i=n("9263");r({target:"RegExp",proto:!0,forced:/./.exec!==i},{exec:i})},ac41:function(t,e){function n(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}t.exports=n},ad6d:function(t,e,n){"use strict";var r=n("825a");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},ae40:function(t,e,n){var r=n("83ab"),i=n("d039"),o=n("5135"),a=Object.defineProperty,u={},s=function(t){throw t};t.exports=function(t,e){if(o(u,t))return u[t];e||(e={});var n=[][t],l=!!o(e,"ACCESSORS")&&e.ACCESSORS,c=o(e,0)?e[0]:s,f=o(e,1)?e[1]:void 0;return u[t]=!!n&&!i((function(){if(l&&!r)return!0;var t={length:-1};l?a(t,1,{enumerable:!0,get:s}):t[1]=1,n.call(t,c,f)}))}},ae93:function(t,e,n){"use strict";var r,i,o,a=n("e163"),u=n("9112"),s=n("5135"),l=n("b622"),c=n("c430"),f=l("iterator"),h=!1,p=function(){return this};[].keys&&(o=[].keys(),"next"in o?(i=a(a(o)),i!==Object.prototype&&(r=i)):h=!0),void 0==r&&(r={}),c||s(r,f)||u(r,f,p),t.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:h}},b041:function(t,e,n){"use strict";var r=n("00ee"),i=n("f5df");t.exports=r?{}.toString:function(){return"[object "+i(this)+"]"}},b047:function(t,e){function n(t){return function(e){return t(e)}}t.exports=n},b0c0:function(t,e,n){var r=n("83ab"),i=n("9bf2").f,o=Function.prototype,a=o.toString,u=/^\s*function ([^ (]*)/,s="name";r&&!(s in o)&&i(o,s,{configurable:!0,get:function(){try{return a.call(this).match(u)[1]}catch(t){return""}}})},b1e5:function(t,e,n){var r=n("a994"),i=1,o=Object.prototype,a=o.hasOwnProperty;function u(t,e,n,o,u,s){var l=n&i,c=r(t),f=c.length,h=r(e),p=h.length;if(f!=p&&!l)return!1;var d=f;while(d--){var v=c[d];if(!(l?v in e:a.call(e,v)))return!1}var g=s.get(t);if(g&&s.get(e))return g==e;var b=!0;s.set(t,e),s.set(e,t);var y=l;while(++d<f){v=c[d];var m=t[v],x=e[v];if(o)var w=l?o(x,m,v,e,t,s):o(m,x,v,t,e,s);if(!(void 0===w?m===x||u(m,x,n,o,s):w)){b=!1;break}y||(y="constructor"==v)}if(b&&!y){var A=t.constructor,S=e.constructor;A==S||!("constructor"in t)||!("constructor"in e)||"function"==typeof A&&A instanceof A&&"function"==typeof S&&S instanceof S||(b=!1)}return s["delete"](t),s["delete"](e),b}t.exports=u},b218:function(t,e){var n=9007199254740991;function r(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=n}t.exports=r},b4c0:function(t,e,n){var r=n("cb5a");function i(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}t.exports=i},b5a7:function(t,e,n){var r=n("0b07"),i=n("2b3e"),o=r(i,"DataView");t.exports=o},b622:function(t,e,n){var r=n("da84"),i=n("5692"),o=n("5135"),a=n("90e3"),u=n("4930"),s=n("fdbf"),l=i("wks"),c=r.Symbol,f=s?c:c&&c.withoutSetter||a;t.exports=function(t){return o(l,t)||(u&&o(c,t)?l[t]=c[t]:l[t]=f("Symbol."+t)),l[t]}},b64b:function(t,e,n){var r=n("23e7"),i=n("7b0b"),o=n("df75"),a=n("d039"),u=a((function(){o(1)}));r({target:"Object",stat:!0,forced:u},{keys:function(t){return o(i(t))}})},b680:function(t,e,n){"use strict";var r=n("23e7"),i=n("a691"),o=n("408a"),a=n("1148"),u=n("d039"),s=1..toFixed,l=Math.floor,c=function(t,e,n){return 0===e?n:e%2===1?c(t,e-1,n*t):c(t*t,e/2,n)},f=function(t){var e=0,n=t;while(n>=4096)e+=12,n/=4096;while(n>=2)e+=1,n/=2;return e},h=s&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!u((function(){s.call({})}));r({target:"Number",proto:!0,forced:h},{toFixed:function(t){var e,n,r,u,s=o(this),h=i(t),p=[0,0,0,0,0,0],d="",v="0",g=function(t,e){var n=-1,r=e;while(++n<6)r+=t*p[n],p[n]=r%1e7,r=l(r/1e7)},b=function(t){var e=6,n=0;while(--e>=0)n+=p[e],p[e]=l(n/t),n=n%t*1e7},y=function(){var t=6,e="";while(--t>=0)if(""!==e||0===t||0!==p[t]){var n=String(p[t]);e=""===e?n:e+a.call("0",7-n.length)+n}return e};if(h<0||h>20)throw RangeError("Incorrect fraction digits");if(s!=s)return"NaN";if(s<=-1e21||s>=1e21)return String(s);if(s<0&&(d="-",s=-s),s>1e-21)if(e=f(s*c(2,69,1))-69,n=e<0?s*c(2,-e,1):s/c(2,e,1),n*=4503599627370496,e=52-e,e>0){g(0,n),r=h;while(r>=7)g(1e7,0),r-=7;g(c(10,r,1),0),r=e-1;while(r>=23)b(1<<23),r-=23;b(1<<r),g(1,1),b(2),v=y()}else g(0,n),g(1<<-e,0),v=y()+a.call("0",h);return h>0?(u=v.length,v=d+(u<=h?"0."+a.call("0",h-u)+v:v.slice(0,u-h)+"."+v.slice(u-h))):v=d+v,v}})},b727:function(t,e,n){var r=n("0366"),i=n("44ad"),o=n("7b0b"),a=n("50c4"),u=n("65f0"),s=[].push,l=function(t){var e=1==t,n=2==t,l=3==t,c=4==t,f=6==t,h=5==t||f;return function(p,d,v,g){for(var b,y,m=o(p),x=i(m),w=r(d,v,3),A=a(x.length),S=0,C=g||u,k=e?C(p,A):n?C(p,0):void 0;A>S;S++)if((h||S in x)&&(b=x[S],y=w(b,S,m),t))if(e)k[S]=y;else if(y)switch(t){case 3:return!0;case 5:return b;case 6:return S;case 2:s.call(k,b)}else if(c)return!1;return f?-1:l||c?c:k}};t.exports={forEach:l(0),map:l(1),filter:l(2),some:l(3),every:l(4),find:l(5),findIndex:l(6)}},b760:function(t,e,n){var r=n("872a"),i=n("9638");function o(t,e,n){(void 0!==n&&!i(t[e],n)||void 0===n&&!(e in t))&&r(t,e,n)}t.exports=o},bb2f:function(t,e,n){var r=n("d039");t.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},bbc0:function(t,e,n){var r=n("6044"),i="__lodash_hash_undefined__",o=Object.prototype,a=o.hasOwnProperty;function u(t){var e=this.__data__;if(r){var n=e[t];return n===i?void 0:n}return a.call(e,t)?e[t]:void 0}t.exports=u},c04e:function(t,e,n){var r=n("861d");t.exports=function(t,e){if(!r(t))return t;var n,i;if(e&&"function"==typeof(n=t.toString)&&!r(i=n.call(t)))return i;if("function"==typeof(n=t.valueOf)&&!r(i=n.call(t)))return i;if(!e&&"function"==typeof(n=t.toString)&&!r(i=n.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},c05f:function(t,e,n){var r=n("7b97"),i=n("1310");function o(t,e,n,a,u){return t===e||(null==t||null==e||!i(t)&&!i(e)?t!==t&&e!==e:r(t,e,n,a,o,u))}t.exports=o},c098:function(t,e){var n=9007199254740991,r=/^(?:0|[1-9]\d*)$/;function i(t,e){var i=typeof t;return e=null==e?n:e,!!e&&("number"==i||"symbol"!=i&&r.test(t))&&t>-1&&t%1==0&&t<e}t.exports=i},c1c9:function(t,e,n){var r=n("a454"),i=n("f3c1"),o=i(r);t.exports=o},c2b6:function(t,e,n){var r=n("f8af"),i=n("5d89"),o=n("6f6c"),a=n("a2db"),u=n("c8fe"),s="[object Boolean]",l="[object Date]",c="[object Map]",f="[object Number]",h="[object RegExp]",p="[object Set]",d="[object String]",v="[object Symbol]",g="[object ArrayBuffer]",b="[object DataView]",y="[object Float32Array]",m="[object Float64Array]",x="[object Int8Array]",w="[object Int16Array]",A="[object Int32Array]",S="[object Uint8Array]",C="[object Uint8ClampedArray]",k="[object Uint16Array]",O="[object Uint32Array]";function T(t,e,n){var T=t.constructor;switch(e){case g:return r(t);case s:case l:return new T(+t);case b:return i(t,n);case y:case m:case x:case w:case A:case S:case C:case k:case O:return u(t,n);case c:return new T;case f:case d:return new T(t);case h:return o(t);case p:return new T;case v:return a(t)}}t.exports=T},c3fc:function(t,e,n){var r=n("42a2"),i=n("1310"),o="[object Set]";function a(t){return i(t)&&r(t)==o}t.exports=a},c430:function(t,e){t.exports=!1},c584:function(t,e){function n(t,e){return t.has(e)}t.exports=n},c6b6:function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},c6cd:function(t,e,n){var r=n("da84"),i=n("ce4e"),o="__core-js_shared__",a=r[o]||i(o,{});t.exports=a},c740:function(t,e,n){"use strict";var r=n("23e7"),i=n("b727").findIndex,o=n("44d2"),a=n("ae40"),u="findIndex",s=!0,l=a(u);u in[]&&Array(1)[u]((function(){s=!1})),r({target:"Array",proto:!0,forced:s||!l},{findIndex:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),o(u)},c869:function(t,e,n){var r=n("0b07"),i=n("2b3e"),o=r(i,"Set");t.exports=o},c87c:function(t,e){var n=Object.prototype,r=n.hasOwnProperty;function i(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&r.call(t,"index")&&(n.index=t.index,n.input=t.input),n}t.exports=i},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}t.exports=n},c8fe:function(t,e,n){var r=n("f8af");function i(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}t.exports=i},c975:function(t,e,n){"use strict";var r=n("23e7"),i=n("4d64").indexOf,o=n("a640"),a=n("ae40"),u=[].indexOf,s=!!u&&1/[1].indexOf(1,-0)<0,l=o("indexOf"),c=a("indexOf",{ACCESSORS:!0,1:0});r({target:"Array",proto:!0,forced:s||!l||!c},{indexOf:function(t){return s?u.apply(this,arguments)||0:i(this,t,arguments.length>1?arguments[1]:void 0)}})},ca84:function(t,e,n){var r=n("5135"),i=n("fc6a"),o=n("4d64").indexOf,a=n("d012");t.exports=function(t,e){var n,u=i(t),s=0,l=[];for(n in u)!r(a,n)&&r(u,n)&&l.push(n);while(e.length>s)r(u,n=e[s++])&&(~o(l,n)||l.push(n));return l}},caad:function(t,e,n){"use strict";var r=n("23e7"),i=n("4d64").includes,o=n("44d2"),a=n("ae40"),u=a("indexOf",{ACCESSORS:!0,1:0});r({target:"Array",proto:!0,forced:!u},{includes:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),o("includes")},cb5a:function(t,e,n){var r=n("9638");function i(t,e){var n=t.length;while(n--)if(r(t[n][0],e))return n;return-1}t.exports=i},cc12:function(t,e,n){var r=n("da84"),i=n("861d"),o=r.document,a=i(o)&&i(o.createElement);t.exports=function(t){return a?o.createElement(t):{}}},cc45:function(t,e,n){var r=n("1a2d"),i=n("b047"),o=n("99d3"),a=o&&o.isMap,u=a?i(a):r;t.exports=u},cca6:function(t,e,n){var r=n("23e7"),i=n("60da");r({target:"Object",stat:!0,forced:Object.assign!==i},{assign:i})},cd9d:function(t,e){function n(t){return t}t.exports=n},ce4e:function(t,e,n){var r=n("da84"),i=n("9112");t.exports=function(t,e){try{i(r,t,e)}catch(n){r[t]=e}return e}},d012:function(t,e){t.exports={}},d02c:function(t,e,n){var r=n("5e2e"),i=n("79bc"),o=n("7b83"),a=200;function u(t,e){var n=this.__data__;if(n instanceof r){var u=n.__data__;if(!i||u.length<a-1)return u.push([t,e]),this.size=++n.size,this;n=this.__data__=new o(u)}return n.set(t,e),this.size=n.size,this}t.exports=u},d039:function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},d066:function(t,e,n){var r=n("428f"),i=n("da84"),o=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?o(r[t])||o(i[t]):r[t]&&r[t][e]||i[t]&&i[t][e]}},d1e7:function(t,e,n){"use strict";var r={}.propertyIsEnumerable,i=Object.getOwnPropertyDescriptor,o=i&&!r.call({1:2},1);e.f=o?function(t){var e=i(this,t);return!!e&&e.enumerable}:r},d28b:function(t,e,n){var r=n("746f");r("iterator")},d2bb:function(t,e,n){var r=n("825a"),i=n("3bbe");t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set,t.call(n,[]),e=n instanceof Array}catch(o){}return function(n,o){return r(n),i(o),e?t.call(n,o):n.__proto__=o,n}}():void 0)},d327:function(t,e){function n(){return[]}t.exports=n},d370:function(t,e,n){var r=n("253c"),i=n("1310"),o=Object.prototype,a=o.hasOwnProperty,u=o.propertyIsEnumerable,s=r(function(){return arguments}())?r:function(t){return i(t)&&a.call(t,"callee")&&!u.call(t,"callee")};t.exports=s},d3b7:function(t,e,n){var r=n("00ee"),i=n("6eeb"),o=n("b041");r||i(Object.prototype,"toString",o,{unsafe:!0})},d44e:function(t,e,n){var r=n("9bf2").f,i=n("5135"),o=n("b622"),a=o("toStringTag");t.exports=function(t,e,n){t&&!i(t=n?t:t.prototype,a)&&r(t,a,{configurable:!0,value:e})}},d612:function(t,e,n){var r=n("7b83"),i=n("7ed2"),o=n("dc0f");function a(t){var e=-1,n=null==t?0:t.length;this.__data__=new r;while(++e<n)this.add(t[e])}a.prototype.add=a.prototype.push=i,a.prototype.has=o,t.exports=a},d784:function(t,e,n){"use strict";n("ac1f");var r=n("6eeb"),i=n("d039"),o=n("b622"),a=n("9263"),u=n("9112"),s=o("species"),l=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),c=function(){return"$0"==="a".replace(/./,"$0")}(),f=o("replace"),h=function(){return!!/./[f]&&""===/./[f]("a","$0")}(),p=!i((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,f){var d=o(t),v=!i((function(){var e={};return e[d]=function(){return 7},7!=""[t](e)})),g=v&&!i((function(){var e=!1,n=/a/;return"split"===t&&(n={},n.constructor={},n.constructor[s]=function(){return n},n.flags="",n[d]=/./[d]),n.exec=function(){return e=!0,null},n[d](""),!e}));if(!v||!g||"replace"===t&&(!l||!c||h)||"split"===t&&!p){var b=/./[d],y=n(d,""[t],(function(t,e,n,r,i){return e.exec===a?v&&!i?{done:!0,value:b.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:c,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:h}),m=y[0],x=y[1];r(String.prototype,t,m),r(RegExp.prototype,d,2==e?function(t,e){return x.call(t,this,e)}:function(t){return x.call(t,this)})}f&&u(RegExp.prototype[d],"sham",!0)}},d7ee:function(t,e,n){var r=n("c3fc"),i=n("b047"),o=n("99d3"),a=o&&o.isSet,u=a?i(a):r;t.exports=u},d81d:function(t,e,n){"use strict";var r=n("23e7"),i=n("b727").map,o=n("1dde"),a=n("ae40"),u=o("map"),s=a("map");r({target:"Array",proto:!0,forced:!u||!s},{map:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},da03:function(t,e,n){var r=n("2b3e"),i=r["__core-js_shared__"];t.exports=i},da84:function(t,e,n){(function(e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||Function("return this")()}).call(this,n("c8ba"))},dbb4:function(t,e,n){var r=n("23e7"),i=n("83ab"),o=n("56ef"),a=n("fc6a"),u=n("06cf"),s=n("8418");r({target:"Object",stat:!0,sham:!i},{getOwnPropertyDescriptors:function(t){var e,n,r=a(t),i=u.f,l=o(r),c={},f=0;while(l.length>f)n=i(r,e=l[f++]),void 0!==n&&s(c,e,n);return c}})},dc0f:function(t,e){function n(t){return this.__data__.has(t)}t.exports=n},dc57:function(t,e){var n=Function.prototype,r=n.toString;function i(t){if(null!=t){try{return r.call(t)}catch(e){}try{return t+""}catch(e){}}return""}t.exports=i},dcbe:function(t,e,n){var r=n("30c9"),i=n("1310");function o(t){return i(t)&&r(t)}t.exports=o},ddb0:function(t,e,n){var r=n("da84"),i=n("fdbc"),o=n("e260"),a=n("9112"),u=n("b622"),s=u("iterator"),l=u("toStringTag"),c=o.values;for(var f in i){var h=r[f],p=h&&h.prototype;if(p){if(p[s]!==c)try{a(p,s,c)}catch(v){p[s]=c}if(p[l]||a(p,l,f),i[f])for(var d in o)if(p[d]!==o[d])try{a(p,d,o[d])}catch(v){p[d]=o[d]}}}},df4a:function(t,e,n){},df75:function(t,e,n){var r=n("ca84"),i=n("7839");t.exports=Object.keys||function(t){return r(t,i)}},e01a:function(t,e,n){"use strict";var r=n("23e7"),i=n("83ab"),o=n("da84"),a=n("5135"),u=n("861d"),s=n("9bf2").f,l=n("e893"),c=o.Symbol;if(i&&"function"==typeof c&&(!("description"in c.prototype)||void 0!==c().description)){var f={},h=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof h?new c(t):void 0===t?c():c(t);return""===t&&(f[e]=!0),e};l(h,c);var p=h.prototype=c.prototype;p.constructor=h;var d=p.toString,v="Symbol(test)"==String(c("test")),g=/^Symbol\((.*)\)[^)]+$/;s(p,"description",{configurable:!0,get:function(){var t=u(this)?this.valueOf():this,e=d.call(t);if(a(f,t))return"";var n=v?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:h})}},e163:function(t,e,n){var r=n("5135"),i=n("7b0b"),o=n("f772"),a=n("e177"),u=o("IE_PROTO"),s=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=i(t),r(t,u)?t[u]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?s:null}},e177:function(t,e,n){var r=n("d039");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},e24b:function(t,e,n){var r=n("49f4"),i=n("1efc"),o=n("bbc0"),a=n("7a48"),u=n("2524");function s(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e<n){var r=t[e];this.set(r[0],r[1])}}s.prototype.clear=r,s.prototype["delete"]=i,s.prototype.get=o,s.prototype.has=a,s.prototype.set=u,t.exports=s},e260:function(t,e,n){"use strict";var r=n("fc6a"),i=n("44d2"),o=n("3f8c"),a=n("69f3"),u=n("7dd0"),s="Array Iterator",l=a.set,c=a.getterFor(s);t.exports=u(Array,"Array",(function(t,e){l(this,{type:s,target:r(t),index:0,kind:e})}),(function(){var t=c(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),o.Arguments=o.Array,i("keys"),i("values"),i("entries")},e2cc:function(t,e,n){var r=n("6eeb");t.exports=function(t,e,n){for(var i in e)r(t,i,e[i],n);return t}},e439:function(t,e,n){var r=n("23e7"),i=n("d039"),o=n("fc6a"),a=n("06cf").f,u=n("83ab"),s=i((function(){a(1)})),l=!u||s;r({target:"Object",stat:!0,forced:l,sham:!u},{getOwnPropertyDescriptor:function(t,e){return a(o(t),e)}})},e538:function(t,e,n){var r=n("b622");e.f=r},e5383:function(t,e,n){(function(t){var r=n("2b3e"),i=e&&!e.nodeType&&e,o=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=o&&o.exports===i,u=a?r.Buffer:void 0,s=u?u.allocUnsafe:void 0;function l(t,e){if(e)return t.slice();var n=t.length,r=s?s(n):new t.constructor(n);return t.copy(r),r}t.exports=l}).call(this,n("62e4")(t))},e893:function(t,e,n){var r=n("5135"),i=n("56ef"),o=n("06cf"),a=n("9bf2");t.exports=function(t,e){for(var n=i(e),u=a.f,s=o.f,l=0;l<n.length;l++){var c=n[l];r(t,c)||u(t,c,s(e,c))}}},e8b5:function(t,e,n){var r=n("c6b6");t.exports=Array.isArray||function(t){return"Array"==r(t)}},e95a:function(t,e,n){var r=n("b622"),i=n("3f8c"),o=r("iterator"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(i.Array===t||a[o]===t)}},eac5:function(t,e){var n=Object.prototype;function r(t){var e=t&&t.constructor,r="function"==typeof e&&e.prototype||n;return t===r}t.exports=r},ec69:function(t,e,n){var r=n("6fcd"),i=n("03dd"),o=n("30c9");function a(t){return o(t)?r(t):i(t)}t.exports=a},ec8c:function(t,e){function n(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}t.exports=n},edfa:function(t,e){function n(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}t.exports=n},efb6:function(t,e,n){var r=n("5e2e");function i(){this.__data__=new r,this.size=0}t.exports=i},f183:function(t,e,n){var r=n("d012"),i=n("861d"),o=n("5135"),a=n("9bf2").f,u=n("90e3"),s=n("bb2f"),l=u("meta"),c=0,f=Object.isExtensible||function(){return!0},h=function(t){a(t,l,{value:{objectID:"O"+ ++c,weakData:{}}})},p=function(t,e){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!o(t,l)){if(!f(t))return"F";if(!e)return"E";h(t)}return t[l].objectID},d=function(t,e){if(!o(t,l)){if(!f(t))return!0;if(!e)return!1;h(t)}return t[l].weakData},v=function(t){return s&&g.REQUIRED&&f(t)&&!o(t,l)&&h(t),t},g=t.exports={REQUIRED:!1,fastKey:p,getWeakData:d,onFreeze:v};r[l]=!0},f3c1:function(t,e){var n=800,r=16,i=Date.now;function o(t){var e=0,o=0;return function(){var a=i(),u=r-(a-o);if(o=a,u>0){if(++e>=n)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}t.exports=o},f5df:function(t,e,n){var r=n("00ee"),i=n("c6b6"),o=n("b622"),a=o("toStringTag"),u="Arguments"==i(function(){return arguments}()),s=function(t,e){try{return t[e]}catch(n){}};t.exports=r?i:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=s(e=Object(t),a))?n:u?i(e):"Object"==(r=i(e))&&"function"==typeof e.callee?"Arguments":r}},f772:function(t,e,n){var r=n("5692"),i=n("90e3"),o=r("keys");t.exports=function(t){return o[t]||(o[t]=i(t))}},f8af:function(t,e,n){var r=n("2474");function i(t){var e=new t.constructor(t.byteLength);return new r(e).set(new r(t)),e}t.exports=i},f909:function(t,e,n){var r=n("7e64"),i=n("b760"),o=n("72af"),a=n("4f50"),u=n("1a8c"),s=n("9934"),l=n("8adb");function c(t,e,n,f,h){t!==e&&o(e,(function(o,s){if(h||(h=new r),u(o))a(t,e,s,n,c,f,h);else{var p=f?f(l(t,s),o,s+"",t,e,h):void 0;void 0===p&&(p=o),i(t,s,p)}}),s)}t.exports=c},fa21:function(t,e,n){var r=n("7530"),i=n("2dcb"),o=n("eac5");function a(t){return"function"!=typeof t.constructor||o(t)?{}:r(i(t))}t.exports=a},fb15:function(t,e,n){"use strict";n.r(e);var r={};if(n.r(r),n.d(r,"ChartBaseLabel",(function(){return $e})),n.d(r,"ChartBaseSwitch",(function(){return an})),n.d(r,"ChartBaseInput",(function(){return hn})),n.d(r,"ChartBaseSelect",(function(){return yn})),n.d(r,"ChartBaseSlider",(function(){return Cn})),n.d(r,"ChartBaseBox",(function(){return Dn})),n.d(r,"deepCopy",(function(){return z})),n.d(r,"isEqual",(function(){return He["isEqual"]})),n.d(r,"importComp",(function(){return jn})),n.d(r,"mapActions",(function(){return g["mapActions"]})),"undefined"!==typeof window){var i=window.document.currentScript,o=n("8875");i=o(),"currentScript"in document||Object.defineProperty(document,"currentScript",{get:o});var a=i&&i.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);a&&(n.p=a[1])}n("d81d"),n("b0c0"),n("a4d3"),n("4de4"),n("4160"),n("e439"),n("dbb4"),n("b64b"),n("159b");function u(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function s(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function l(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?s(Object(n),!0).forEach((function(e){u(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):s(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var c=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"chartSetting"},[n("div",{staticStyle:{overflow:"hidden",height:"100%"}},[n("chart-list",{attrs:{chartAllType:t.currentChartType,showList:t.showList,lang:t.lang},on:{closeChartShowList:function(e){t.showList=!1}}}),n("div",[n("el-tabs",{attrs:{type:"card"},on:{"tab-click":t.handleClick},model:{value:t.activeName,callback:function(e){t.activeName=e},expression:"activeName"}},[n("el-tab-pane",{attrs:{name:"data"}},[n("span",{attrs:{slot:"label"},slot:"label"},[n("i",{staticClass:"el-icon-date"}),t._v(" "+t._s(t.setItem.data)+" ")]),n("el-row",[n("el-col",{attrs:{span:2}},[n("div")]),n("el-col",{attrs:{span:22}},[n("div",{staticStyle:{"margin-top":"1px"}},[t._v(t._s(t.setItem.chartType))]),n("div",{staticStyle:{"margin-top":"10px"}},[n("el-button",{staticStyle:{width:"100%"},attrs:{size:"small"},on:{click:function(e){t.showList=!t.showList}}},[n("i",{staticClass:"iconfont",class:t.chartTypeTxt[0],staticStyle:{float:"left"}}),t._v(" "+t._s(t.chartTypeTxt[1])+" "),n("i",{staticClass:"iconfont icon-jiantou",staticStyle:{float:"right"}})])],1),n("div",{staticStyle:{"margin-top":"25px"}}),t.chartXYSeriesList?n("div",t._l(t.chartXYSeriesList.fix,(function(e){return n("div",{key:e.title,staticStyle:{"margin-top":"10px"}},[n("el-row",{attrs:{gutter:10}},[n("el-col",{staticStyle:{"line-height":"28px","text-align":"right"},attrs:{span:4}},[t._v(t._s(e.title)+":")]),n("el-col",{attrs:{span:20}},[n("el-tag",{staticStyle:{width:"100%","text-align":"center"},attrs:{size:"medium"}},[n("i",{staticClass:"iconfont",class:e.type,staticStyle:{float:"left"}}),t._v(" "+t._s(e.field)+" ")])],1)],1)],1)})),0):t._e(),n("div",{staticStyle:{"margin-top":"25px"}}),t.chartXYSeriesList?n("div",t._l(t.chartXYSeriesList.change,(function(e,r){return n("div",{key:r,staticStyle:{"margin-top":"10px"}},[n("el-row",{attrs:{gutter:10}},[n("el-col",{staticStyle:{"line-height":"28px","text-align":"right"},attrs:{span:4}},[t._v(t._s(e.title)+":")]),n("el-col",{attrs:{span:20}},[n("el-dropdown",{staticStyle:{width:"100%"},attrs:{size:"medium",trigger:"click"},on:{command:t.handleSeriseCommand}},[n("el-button",{staticStyle:{width:"100%"},attrs:{size:"mini"}},[n("i",{staticClass:"iconfont",class:e.type,staticStyle:{float:"left","font-size":"16px"}}),t._v(" "+t._s(e.field)+" "),n("i",{staticClass:"iconfont icon-jiantou",staticStyle:{float:"right"}})]),n("el-dropdown-menu",{staticStyle:{"min-width":"306px"},attrs:{slot:"dropdown"},slot:"dropdown"},t._l(t.chartXYSeriesList.option,(function(r,i){return n("el-dropdown-item",{key:"A-"+i,attrs:{command:{series:e,option:r}}},[t._v(" "+t._s(r.field)+" "),e.id==r.id?n("i",{staticClass:"iconfont icon-dagou",staticStyle:{float:"right"}}):t._e()])})),1)],1)],1)],1)],1)})),0):t._e(),n("div",{staticStyle:{"margin-top":"25px"}}),n("el-row",[n("div",{staticStyle:{margin:"25px 0"}}),n("el-checkbox",{on:{change:t.checkBoxChange},model:{value:t.currentRangeConfigCheck,callback:function(e){t.currentRangeConfigCheck=e},expression:"currentRangeConfigCheck"}},[t._v(t._s(t.setItem.transpose))]),n("div",{staticStyle:{margin:"15px 0"}}),n("el-checkbox",{attrs:{disabled:t.checkRowDisabled},on:{change:t.checkBoxChange},model:{value:t.currentRangeRowCheck.exits,callback:function(e){t.$set(t.currentRangeRowCheck,"exits",e)},expression:"currentRangeRowCheck.exits"}},[t._v(t._s(t.setItem.row1)+" "+t._s(t.getColRowCheckTxt(!0))+" "+t._s(t.setItem.row2))]),n("div",{staticStyle:{margin:"15px 0"}}),n("el-checkbox",{attrs:{disabled:t.checkColDisabled},on:{change:t.checkBoxChange},model:{value:t.currentRangeColCheck.exits,callback:function(e){t.$set(t.currentRangeColCheck,"exits",e)},expression:"currentRangeColCheck.exits"}},[t._v(t._s(t.setItem.column1)+" "+t._s(t.getColRowCheckTxt())+" "+t._s(t.setItem.column2))])],1)],1)],1)],1),n("el-tab-pane",[n("span",{attrs:{slot:"label"},slot:"label"},[n("i",{staticClass:"el-icon-s-data"}),t._v(" "+t._s(t.setItem.style)+" ")]),n("el-row",[n("el-col",{attrs:{span:1}},[n("div")]),n("el-col",{attrs:{span:22}},[n("el-collapse",[n("chart-title",{attrs:{router:"title",chartAllType:t.currentChartType,titleOption:t.titleOption,lang:t.lang}}),n("chart-sub-title",{attrs:{router:"subtitle",chartAllType:t.currentChartType,subTitleOption:t.subTitleOption,lang:t.lang}}),n("chart-cursor",{attrs:{router:"tooltip",chartAllType:t.currentChartType,cursorOption:t.cursorOption,lang:t.lang}}),n("chart-legend",{attrs:{router:"legend",chartAllType:t.currentChartType,legendOption:t.legendOption,lang:t.lang}}),"pie"!=t.currentChartType.split("|")[1]?n("chart-axis",{attrs:{router:"axis",axisOption:t.axisOption,chartAllType:t.currentChartType,lang:t.lang}}):t._e()],1)],1),n("el-col",{attrs:{span:1}},[n("div")])],1)],1)],1)],1)],1)])},f=[],h=(n("ac1f"),n("1276"),function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.showList?n("div",{staticClass:"luckysheet-datavisual-quick-m",style:{position:"absolute",zIndex:t.zindex,bottom:"0px",left:"0px",right:"0px",background:"#fff"}},[n("el-button",{staticStyle:{width:"100%",margin:"2px 4px 8px 4px"},attrs:{plain:"",round:"",size:"small",type:"danger"},on:{click:function(e){return t.$emit("closeChartShowList")}}},[n("i",{staticClass:"iconfont icon-guanbi",staticStyle:{float:"left"}}),t._v(" "+t._s(t.close)+" ")]),n("el-radio-group",{staticStyle:{display:"block","text-align":"center"},attrs:{size:"mini"},model:{value:t.currentPro,callback:function(e){t.currentPro=e},expression:"currentPro"}},t._l(t.config,(function(e,r){return n("el-radio-button",{key:r,attrs:{label:e.type}},[t._v(t._s(e.name))])})),1),n("div",{staticClass:"luckysheet-datavisual-quick-menu",attrs:{id:"luckysheet-datavisual-quick-menu"}},t._l(t.currentConfig.data,(function(e,r){return n("div",{key:r,attrs:{"data-type":e.type,id:"luckysheet-datavisual-chart-menu-"+e.type},on:{click:t.quickMenu}},[n("i",{staticClass:"iconfont",class:e.icon,attrs:{"aria-hidden":"true"}}),n("span",[t._v(t._s(e.name))])])})),0),n("div",{staticClass:"luckysheet-datavisual-quick-list luckysheet-scrollbars",attrs:{id:"luckysheet-datavisual-quick-list"},on:{scroll:t.quickListScroll}},[t._l(t.currentConfig.data,(function(e,r){return[n("div",{key:r,staticClass:"luckysheet-datavisual-quick-list-title"},[n("a",{attrs:{"data-type":e.type,id:"luckysheet-datavisual-chart-listtitle-"+e.type}},[n("i",{staticClass:"iconfont",class:e.icon,attrs:{"aria-hidden":"true"}}),t._v(" "+t._s(e.name)+" ")])]),n("div",{staticClass:"luckysheet-datavisual-quick-list-ul"},t._l(e.data,(function(e,r){return n("el-tooltip",{key:r,attrs:{content:e.name,"open-delay":500,effect:"dark",placement:"bottom"}},[n("div",{staticClass:"luckysheet-datavisual-quick-list-item",class:e.type==t.currentChartType?"luckysheet-datavisual-quick-list-item-active":"",attrs:{chartAllType:e.type,"data-style":e.type.split("-")[2],"data-type":e.type.split("-")[1]},on:{click:function(n){return t.changeChartType(e.type)}}},[n("img",{attrs:{src:0==e.img.length?"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/PjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjQyIiBoZWlnaHQ9IjIwMCIgdmlld0JveD0iMCAwIDI0MiAyMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPjxkZWZzLz48cmVjdCB3aWR0aD0iMjQyIiBoZWlnaHQ9IjIwMCIgZmlsbD0iI0VFRUVFRSIvPjxnPjx0ZXh0IHg9IjkzIiB5PSIxMDAiIHN0eWxlPSJmaWxsOiNBQUFBQUE7Zm9udC13ZWlnaHQ6Ym9sZDtmb250LWZhbWlseTpBcmlhbCwgSGVsdmV0aWNhLCBPcGVuIFNhbnMsIHNhbnMtc2VyaWYsIG1vbm9zcGFjZTtmb250LXNpemU6MTFwdDtkb21pbmFudC1iYXNlbGluZTpjZW50cmFsIj4yNDJ4MjAwPC90ZXh0PjwvZz48L3N2Zz4=":e.img,alt:"图片"}})])])})),1)]}))],2)],1):t._e()}),p=[],d=(n("7db0"),n("a9e3"),n("1157")),v=n.n(d),g=n("5880"),b=n.n(g);n("e260"),n("4ec9"),n("d3b7"),n("4d63"),n("25f0"),n("3ca3"),n("5319"),n("ddb0"),n("e01a"),n("d28b");function y(t){return y="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},y(t)}n("a630"),n("fb6a");function m(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function x(t,e){if(t){if("string"===typeof t)return m(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?m(t,e):void 0}}function w(t,e){var n;if("undefined"===typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(n=x(t))||e&&t&&"number"===typeof t.length){n&&(t=n);var r=0,i=function(){};return{s:i,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,u=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,o=t},f:function(){try{a||null==n["return"]||n["return"]()}finally{if(u)throw o}}}}var A={label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},formatter:{prefix:"",suffix:"",ratio:1,digit:"auto"},item:{color:null,borderColor:"#000",borderType:"solid",borderWidth:1},lineStyle:{color:null,width:1,type:"solid"}},S={title:{show:!1,text:"默认标题",label:z(A.label),position:{value:"left-top",offsetX:40,offsetY:50}},subtitle:{show:!1,text:"",label:z(A.label),distance:{value:"auto",cusGap:40}},config:{color:"transparent",fontFamily:"Sans-serif",grid:{value:"normal",top:5,left:10,right:20,bottom:10}},legend:{show:!0,selectMode:"multiple",selected:[{seriesName:"衣服",isShow:!0},{seriesName:"食材",isShow:!0},{seriesName:"图书",isShow:!0}],label:z(A.label),position:{value:"left-top",offsetX:40,offsetY:50,direction:"horizontal"},width:{value:"auto",cusSize:25},height:{value:"auto",cusSize:14},distance:{value:"auto",cusGap:10},itemGap:10},tooltip:{show:!0,label:z(A.label),backgroundColor:"rgba(50,50,50,0.7)",triggerOn:"mousemove",triggerType:"item",axisPointer:{type:"line",style:{color:"#555",width:"normal",type:"solid"}},format:[{seriesName:"衣服",prefix:"",suffix:"",ratio:1,digit:"auto"},{seriesName:"食材",prefix:"",suffix:"",ratio:1,digit:"auto"},{seriesName:"图书",prefix:"",suffix:"",ratio:1,digit:"auto"}],position:"auto"},axis:{axisType:"xAxisDown",xAxisUp:{show:!1,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:z(A.label),fzPosition:"end"},name:"显示X轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:z(A.label),rotate:0,prefix:"",suffix:"",optimize:0,distance:0,min:"auto",max:"auto",ratio:1,digit:"auto"},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"},axisLine:{onZero:!1}},xAxisDown:{show:!0,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:z(A.label),fzPosition:"end"},name:"显示X轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:z(A.label),rotate:0,prefix:"",suffix:"",optimize:0,distance:0,min:null,max:null,ratio:1,digit:"auto"},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"}},yAxisLeft:{show:!0,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:z(A.label),fzPosition:"end"},name:"显示Y轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:z(A.label),rotate:0,formatter:z(A.formatter),split:5,min:null,max:null,prefix:"",suffix:"",ratio:1,digit:"auto",distance:0},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"}},yAxisRight:{show:!1,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:z(A.label),fzPosition:"end"},name:"显示Y轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:z(A.label),rotate:0,formatter:z(A.formatter),split:5,min:null,max:null,prefix:"",suffix:"",ratio:1,digit:"auto",distance:0},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"}}}},C=[{value:"left-top",label:"左上"},{value:"left-middle",label:"左中"},{value:"left-bottom",label:"左下"},{value:"right-top",label:"右上"},{value:"right-middle",label:"右中"},{value:"right-bottom",label:"右下"},{value:"center-top",label:"中上"},{value:"center-middle",label:"居中"},{value:"center-bottom",label:"中下"},{value:"custom",label:"自定义"}],k=[{value:"auto",label:"默认"},{value:"far",label:"远"},{value:"normal",label:"一般"},{value:"close",label:"近"},{value:"custom",label:"自定义"}],O=[{value:6,label:"6px"},{value:8,label:"8px"},{value:10,label:"10px"},{value:12,label:"12px"},{value:14,label:"14px"},{value:16,label:"16px"},{value:18,label:"18px"},{value:20,label:"20px"},{value:22,label:"22px"},{value:24,label:"24px"},{value:30,label:"30x"},{value:36,label:"36px"},{value:"custom",label:"自定义"}],T=[{value:"solid",label:"实线"},{value:"dashed",label:"虚线"},{value:"dotted",label:"点线"}],E=[{value:"normal",label:"正常"},{value:"bold",label:"粗"},{value:"bolder",label:"加粗"}],I=[{value:"auto",label:"默认"},{value:"inside",label:"中心位置"},{value:"top",label:"上侧"},{value:"left",label:"左侧"},{value:"right",label:"右侧"},{value:"bottom",label:"底侧"}],D=[{value:100,label:"乘以100"},{value:10,label:"乘以10"},{value:1,label:"默认"},{value:.1,label:"除以10"},{value:.01,label:"除以100"},{value:.001,label:"除以1000"},{value:1e-4,label:"除以一万"},{value:1e-5,label:"除以10万"},{value:1e-6,label:"除以一百万"},{value:1e-7,label:"除以一千万"},{value:1e-8,label:"除以一亿"},{value:1e-9,label:"除以十亿"}],j=[{value:"auto",label:"自动显示"},{value:0,label:"整数"},{value:1,label:"1位小数"},{value:2,label:"2位小数"},{value:3,label:"3位小数"},{value:4,label:"4位小数"},{value:5,label:"5位小数"},{value:6,label:"6位小数"},{value:7,label:"7位小数"},{value:8,label:"8位小数"}],L=[{value:"auto",label:"默认"},{value:"big",label:"大"},{value:"medium",label:"中"},{value:"small",label:"小"},{value:"custom",label:"自定义"}],N=[{value:"auto",label:"默认"},{value:0,label:"每个刻度"},{value:1,label:"间隔1个"},{value:2,label:"间隔2个"},{value:3,label:"间隔3个"},{value:"custom",label:"自定义"}],G=[{label:"默认",value:"auto"},{label:"6px",value:6},{label:"8px",value:8},{label:"10px",value:10},{label:"12px",value:12},{label:"14px",value:14},{label:"16px",value:16},{label:"18px",value:18},{label:"24px",value:24},{label:"28px",value:28},{label:"36px",value:36},{label:"自定义",value:"custom"}],R={bold:{des:"加粗",text:"B"},italic:{des:"斜体",text:"I"},vertical:{des:"文字方向",text:"垂直"}},M={bold:{des:"加粗",text:"B"},italic:{des:"斜体",text:"I"}},B=[["地区","衣服","食材","图书"],["上海",134,345,51],["北京",345,421,234],["广州",453,224,156],["杭州",321,634,213],["南京",654,542,231]],P={chartAllType:"echarts|line|default",defaultOption:z(S),chartData:z(B)};function z(t){if(!V(t)&&!Q(t))return t;var e;if(Q(t)){e=new Map;var n,r=w(t.keys());try{for(r.s();!(n=r.n()).done;){var i=n.value,o=t.get(i);if(Q(o)||V(o)||Array.isArray(t)){var a=z(o);e.set(i,a)}else e.set(i,o)}}catch(s){r.e(s)}finally{r.f()}}else if("function"===typeof t)e=t;else if(e=Array.isArray(t)?[]:{},t instanceof HTMLElement)e=t.cloneNode(!0);else for(var u in t)Object.prototype.hasOwnProperty.call(t,u)&&(e[u]=Q(t[u])||V(t[u])?z(t[u]):t[u]);return e}function V(t){return!Q(t)&&("object"===y(t)||"function"===typeof t)&&null!==t}function Q(t){return t instanceof Map}function F(t){null==t&&(t="chart");for(var e=window.navigator.userAgent.replace(/[^a-zA-Z0-9]/g,"").split(""),n="",r=0;r<12;r++)n+=e[Math.round(Math.random()*(e.length-1))];var i=(new Date).getTime();return t+"_"+n+"_"+i}function q(t){return!(null==t||t.toString().length<5)&&!!e(t);function e(t){var e=/^(\d{4})-(\d{1,2})-(\d{1,2})(\s(\d{1,2}):(\d{1,2})(:(\d{1,2}))?)?$/,n=/^(\d{4})\/(\d{1,2})\/(\d{1,2})(\s(\d{1,2}):(\d{1,2})(:(\d{1,2}))?)?$/;if(!e.test(t)&&!n.test(t))return!1;var r=RegExp.$1,i=RegExp.$2,o=RegExp.$3;if(r<1900)return!1;if(i>12)return!1;if(o>31)return!1;if(2==i){if(29==new Date(r,1,29).getDate()&&o>29)return!1;if(29!=new Date(r,1,29).getDate()&&o>28)return!1}return!0}}function W(t){return""!==t&&null!=t&&!isNaN(t)}function X(t){var e=/[\u4E00-\u9FA5]|[\uFE30-\uFFA0]/gi;return!!e.exec(t)}function Z(t){var e="string";return q(t)?e="date":isNaN(parseFloat(t))||X(t)||(e="num"),e}function H(t){for(var e=[],n=0;n<t[0].length;n++){for(var r=[],i=0;i<t.length;i++){var o="";null!=t[i]&&null!=t[i][n]&&(o=t[i][n]),r.push(o)}e.push(r)}return e}function U(t,e){if(0==t.length||t.length!=e.length)return t;for(var n=[],r=0;r<t.length;r++)n[e[r]]=t[r];return n}function J(t,e){for(var n=[],r=0;r<t.length;r++){var i=t[r];n.push(U(i,e))}return n}function Y(t){var e=Object.prototype.toString,n={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regExp","[object Undefined]":"undefined","[object Null]":"null","[object Object]":"object"};return n[e.call(t)]}function K(t){var e,n,r=t.length-1,i=t[0].length-1;while(r>=0&&i>=0){var o=t[r][i];if(!(null===o||W(o)||"object"==Y(o)&&W(o.v)||"object"==Y(o)&&"undefined"==Y(o.v)||""===o||""===o.v)){r==t.length-1&&i==t[0].length-1?(e=r,n=i):(e=r+1,n=i+1);break}if(o&&o.ct&&"yyyy-MM-dd"==o.ct.fa){e=r+1,n=i+1;break}e=r--,n=i--}var a={exits:!1,range:[0,0]};if(e>0)for(var u=e;u>=0;u--){o=t[u][n];if(!(null===o||W(o)||"object"==Y(o)&&W(o.v)||"object"==Y(o)&&"undefined"==Y(o.v)||""===o||""===o.v)){a.exits=!0,a.range=[0,u];break}}var s={exits:!1,range:[0,0]};if(n>0)for(u=n;u>=0;u--){o=t[e][u];if(!(null===o||W(o)||"object"==Y(o)&&W(o.v)||"object"==Y(o)&&"undefined"==Y(o.v)||""===o||""===o.v)){s.exits=!0,s.range=[0,u];break}if(o&&o.ct&&"yyyy-MM-dd"==o.ct.fa){s.exits=!0,s.range=[0,u];break}}return a.range[1]+1==t.length&&(a={exits:!1,range:[0,0]}),s.range[1]+1==t[0].length&&(s={exits:!1,range:[0,0]}),[a,s]}function _(t,e,n,r){var i={};return e.length>1&&(i={title:{row:[0,0],column:[0,0]},rowtitle:{row:[0,0],column:[1,t[0].length-1]},coltitle:{row:[1,t.length-1],column:[0,0]},content:{row:[1,t.length-1],column:[1,t[0].length-1]},type:"multi",range:e}),i=n.exits&&r.exits?{title:{row:r.range,column:n.range},rowtitle:{row:r.range,column:[n.range[1]+1,t[0].length-1]},coltitle:{row:[r.range[1]+1,t.length-1],column:n.range},content:{row:[r.range[1]+1,t.length-1],column:[n.range[1]+1,t[0].length-1]},type:"normal",range:e[0]}:n.exits?{title:null,rowtitle:null,coltitle:{row:[0,t.length-1],column:n.range},content:{row:[0,t.length-1],column:[n.range[1]+1,t[0].length-1]},type:"leftright",range:e[0]}:r.exits?{title:null,rowtitle:{row:r.range,column:[0,t[0].length-1]},coltitle:null,content:{row:[r.range[1]+1,t.length-1],column:[0,t[0].length-1]},type:"topbottom",range:e[0]}:{title:null,rowtitle:null,coltitle:null,content:{row:[0,t.length-1],column:[0,t[0].length-1]},type:"contentonly",range:e[0]},i}function $(t,e,n){var r=null,i=n[t][e];return null!=i&&(r=null!=i.v?i.v:i),void 0==r&&(r=""),r}function tt(t,e,n,r,i,o){var a={};if("line"==r||"column"==r||"area"==r||"scatter"==r||"bar"==r||"pie"==r||"radar"==r||"funnel"==r||"gauge"==r||"map"==r)if(o){if("normal"==e.type){var u=e,s=u.rowtitle,l=[];if(null!=s){a.title={text:$(u.title.row[0],u.title.column[0],t)};for(var c=s.column[0];c<=s.column[1];c++){for(var f="",h=s.row[0];h<=s.row[1];h++)f+="\n"+$(h,c,t);f=f.substr(1,f.length),"highcharts"==n&&(f=f.replace(/\n/g,"<br/>")),l.push(f)}a.xAxis=l}var p=u.coltitle,d=[];if(null!=p){for(h=p.row[0];h<=p.row[1];h++){for(f="",c=p.column[0];c<=p.column[1];c++)f+=" "+$(h,c,t);d.push(f.substr(1,f.length))}a.label=d}var v=u.content,g=[];if(null!=v){var b={};for(c=v.column[0];c<=v.column[1];c++){var y=[],m=0;for(h=v.row[0];h<=v.row[1];h++){f=$(h,c,t);y.push(f),c==v.column[0]&&(b[m++]=Z(f))}g.push(y)}a.series=g,a.series_tpye=b}}else if("leftright"==e.type){u=e,p=u.coltitle,d=[];if(null!=p){for(h=p.row[0];h<=p.row[1];h++){for(f="",c=p.column[0];c<=p.column[1];c++)f+=" "+$(h,c,t);d.push(f.substr(1,f.length))}a.label=d}v=u.content,g=[];if(null!=v){for(b={},c=v.column[0];c<=v.column[1];c++){for(y=[],m=0,h=v.row[0];h<=v.row[1];h++){f=$(h,c,t);y.push(f),c==v.column[0]&&(b[m++]=Z(f))}g.push(y)}a.series=g,a.series_tpye=b}s=u.rowtitle,l=[];if(null==s){a.title={text:"图表标题"};for(c=0;c<=v.column[1]-v.column[0];c++)l.push(c+1);a.xAxis=l}}else if("topbottom"==e.type){u=e,s=u.rowtitle,l=[];if(null!=s){a.title={text:"图表标题"};for(c=s.column[0];c<=s.column[1];c++){for(f="",h=s.row[0];h<=s.row[1];h++)f+="\n"+$(h,c,t);f=f.substr(1,f.length),"highcharts"==n&&(f=f.replace(/\n/g,"<br/>")),l.push(f)}a.xAxis=l}v=u.content,g=[];if(null!=v){for(b={},c=v.column[0];c<=v.column[1];c++){for(y=[],m=0,h=v.row[0];h<=v.row[1];h++){f=$(h,c,t);y.push(f),c==v.column[0]&&(b[m++]=Z(f))}g.push(y)}a.series=g,a.series_tpye=b}p=u.coltitle,d=[];if(null==p){for(h=0;h<=v.row[1]-v.row[0];h++)d.push("系列"+(h+1));a.label=d}}else if("contentonly"==e.type){u=e,v=u.content,g=[];if(null!=v){for(b={},c=v.column[0];c<=v.column[1];c++){for(y=[],m=0,h=v.row[0];h<=v.row[1];h++){f=$(h,c,t);y.push(f),c==v.column[0]&&(b[m++]=Z(f))}g.push(y)}a.series=g,a.series_tpye=b}s=u.rowtitle,l=[];if(null==s){a.title={text:"图表标题"};for(c=0;c<=v.column[1]-v.column[0];c++)l.push(c+1);a.xAxis=l}p=u.coltitle,d=[];if(null==p){for(h=0;h<=v.row[1]-v.row[0];h++)d.push("系列"+(h+1));a.label=d}}}else if("normal"==e.type){u=e,s=u.rowtitle,l=[];if(null!=s){for(c=s.column[0];c<=s.column[1];c++){for(f="",h=s.row[0];h<=s.row[1];h++)f+=" "+$(h,c,t);l.push(f.substr(1,f.length))}a.label=l}p=u.coltitle,d=[];if(null!=p){for(h=p.row[0];h<=p.row[1];h++){for(f="",c=p.column[0];c<=p.column[1];c++)f+="\n"+$(h,c,t);f=f.substr(1,f.length),"highcharts"==n&&(f=f.replace(/\n/g,"<br/>")),d.push(f)}a.xAxis=d}v=u.content,g=[];if(null!=v){for(b={},h=v.row[0];h<=v.row[1];h++){for(y=[],m=0,c=v.column[0];c<=v.column[1];c++){f=$(h,c,t);y.push(f),h==v.row[0]&&(b[m++]=Z(f))}g.push(y)}a.series=g,a.series_tpye=b}}else if("leftright"==e.type){u=e,p=u.coltitle,d=[];if(null!=p){for(h=p.row[0];h<=p.row[1];h++){for(f="",c=p.column[0];c<=p.column[1];c++)f+="\n"+$(h,c,t);f=f.substr(1,f.length),"highcharts"==n&&(f=f.replace(/\n/g,"<br/>")),d.push(f)}a.xAxis=d}v=u.content,g=[];if(null!=v){for(b={},h=v.row[0];h<=v.row[1];h++){for(y=[],m=0,c=v.column[0];c<=v.column[1];c++){f=$(h,c,t);y.push(f),h==v.row[0]&&(b[m++]=Z(f))}g.push(y)}a.series=g,a.series_tpye=b}s=u.rowtitle,l=[];if(null==s){a.title={text:"图表标题"};for(c=0;c<=v.column[1]-v.column[0];c++)l.push("系列"+(c+1));a.label=l}}else if("topbottom"==e.type){u=e,s=u.rowtitle,l=[];if(null!=s){a.title={text:"图表标题"};for(c=s.column[0];c<=s.column[1];c++){for(f="",h=s.row[0];h<=s.row[1];h++)f+=" "+$(h,c,t);l.push(f.substr(1,f.length))}a.label=l}v=u.content,g=[];if(null!=v){for(b={},h=v.row[0];h<=v.row[1];h++){for(y=[],m=0,c=v.column[0];c<=v.column[1];c++){f=$(h,c,t);y.push(f),h==v.row[0]&&(b[m++]=Z(f))}g.push(y)}a.series=g,a.series_tpye=b}p=u.coltitle,d=[];if(null==p){for(h=0;h<=v.row[1]-v.row[0];h++)d.push(h+1);a.xAxis=d}}else if("contentonly"==e.type){u=e,v=u.content,g=[];if(null!=v){for(b={},h=v.row[0];h<=v.row[1];h++){for(y=[],m=0,c=v.column[0];c<=v.column[1];c++){f=$(h,c,t);y.push(f),h==v.row[0]&&(b[m++]=Z(f))}g.push(y)}a.series=g,a.series_tpye=b}s=u.rowtitle,l=[];if(null==s){a.title={text:"图表标题"};for(c=0;c<=v.column[1]-v.column[0];c++)l.push("系列"+(c+1));a.label=l}p=u.coltitle,d=[];if(null==p){for(h=0;h<=v.row[1]-v.row[0];h++)d.push(h+1);a.xAxis=d}}return a}function et(t){var e={};e.length=t;for(var n=0;n<t;n++)e[n]=n;return e}function nt(t,e,n,r,i,o,a){if(e.xAxis&&"bar"!=i){if(null==t.axis.xAxisDown.data||0==t.axis.xAxisDown.data.length||t.axis.xAxisDown.data.length!=e.xAxis.length)t.axis.xAxisDown.data=e.xAxis;else for(var u=0;u<t.axis.xAxisDown.data.length;u++){var s=t.axis.xAxisDown.data[u];s instanceof Object?s.value=e.xAxis[u]:t.axis.xAxisDown.data[u]=e.xAxis[u]}t.axis.xAxisDown.type="category",t.axis.yAxisLeft.type="value"}if("echarts"==r&&"bar"==i){if(null==t.axis.yAxisLeft.data||0==t.axis.yAxisLeft.data.length||t.axis.yAxisLeft.data.length!=e.xAxis.length)t.axis.yAxisLeft.data=e.xAxis;else for(u=0;u<t.axis.yAxisLeft.data.length;u++){s=t.axis.yAxisLeft.data[u];s instanceof Object?s.value=e.xAxis[u]:t.axis.yAxisLeft.data[u]=e.xAxis[u]}t.axis.yAxisLeft.type="category",t.axis.xAxisDown.type="value"}if(e.series){var l=H(J(e.series,n)),c=U(e.label,n);t.legend.data=c,t.seriesData=l,"pie"==i?dt(t,e,l,c,r,i,o):"line"!=i&&"area"!=i&&"bar"!=i&&"column"!=i||rt(t,l,c,r,i,o)}return t}function rt(t,e,n,r,i,o){t.series.length!=e.length&&(t.series=[]);for(var a=0;a<e.length;a++)null==t.series[a]?t.series[a]=it(t.series[a],e[a],n[a],r,i,o):t.series[a]=lt(t.series[a],e[a],n[a],r,i,o)}function it(t,e,n,r,i,o){t={itemStyle:z(A.item),lineStyle:z(A.lineStyle),data:e,type:i,name:n,markPoint:{data:[]},markLine:{data:[]},markArea:{data:[]}};var a=new Map([["line",ot],["area",at],["bar",st],["column",ut]]);return a.get(i)(t,e,n,r,i,o)}function ot(t,e,n,r,i,o){return"smooth"==o&&(t.smooth=!0),"label"==o&&(t.label={show:!0,formatter:"{c}",fontSize:10,distance:1}),t}function at(t,e,n,r,i,o){return t.type="line",t.areaStyle={normal:{}},"stack"==o&&(t.stack="示例"),t}function ut(t,e,n,r,i,o){return t.type="bar","stack"==o&&(t.stack="示例"),t}function st(t,e,n,r,i,o){return"stack"==o&&(t.stack="示例"),t}function lt(t,e,n,r,i,o){if(null==t.data||0==t.data.length||t.data.length!=e.length)t.data=e,t.name=n,t.type=i;else{for(var a=0;a<t.data.length;a++){var u=t.data[a];u instanceof Object?u.value=e[a]:t.data[a]=e[a]}t.name=n,t.type=i}var s=new Map([["line",ct],["area",ft],["bar",ht],["column",pt]]);return s.get(i)(t,e,n,r,i,o)}function ct(t,e,n,r,i,o){return t}function ft(t,e,n,r,i,o){return t.type="line",t}function ht(t,e,n,r,i,o){return t}function pt(t,e,n,r,i,o){return t.type="bar",t}function dt(t,e,n,r,i,o,a){t.legend.data=[];for(var u=0;u<e.xAxis.length;u++)t.legend.data.push({name:e.xAxis[u],textStyle:{color:null},value:n[0][u]});for(u=0;u<n.length;u++){if(u>0)return;null==t.series[u]?t.series[u]=vt(t.series[u],e,n[u],r[u],i,o,a):t.series[u]=gt(t.series[u],e,n[u],r[u],i,o,a)}}function vt(t,e,n,r,i,o,a){for(var u={name:r,type:"pie",radius:["0%","75%"],data:[],dataLabels:{},seLabel:{},seLine:{}},s=0;s<n.length;s++){var l=void 0,c=void 0;n[s]>0?(l=n[s],c=e.xAxis[s]):n[s]<=0&&(l="",c=""),u.data.push({value:l,name:c,label:{},labelLine:{lineStyle:{}},itemStyle:{}})}if(t=u,t.roseType=!1,"split"==a)for(var f=0;f<t.data.length;f++)t.data[f].selected="true",t.data[f].selectedOffset=5;return"ring"==a&&(t.radius=["50%","85%"],t.avoidLabelOverlap=!1,t.label={normal:{show:!0,position:"outside"},emphasis:{show:!0,textStyle:{fontSize:"16",fontWeight:"bold"}}}),t}function gt(t,e,n,r,i,o,a){t.name=r;for(var u=0;u<n.length;u++){var s=void 0,l=void 0;if(n[u]>0?(s=+n[u],l=e.xAxis[u]):n[u]<=0&&(s="",l=""),t.data[u].name=l,t.data[u].value=s,t.data[u].y=s,t.data.length<n.length)for(var c=t.data.length;c<n.length;c++)t.data.push({value:s,name:l,y:s});if(t.data.length>n.length)for(var f=n.length;f<t.data.length;f++)t.data[f].value="",t.data[f].y="",t.data[f].name=""}return t}n("c740"),n("caad"),n("c975"),n("cca6");var bt,yt,mt=function(t,e,n){t[0],t[1],t[2];var r={show:!0,text:"",left:"auto",top:"auto",textStyle:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontStyle:"normal",fontWeight:"normal"},subtextStyle:{fontSize:12,color:"#aaa",fontFamily:"sans-serif",fontStyle:"normal",fontWeight:"normal"},subtext:"",itemGap:10};r.show=e.show,r.text=e.text,r.subtext=n.text,ke(e,r,"textStyle","text"),ke(n,r,"subtextStyle","subtext"),"custom"===e.position.value?(r.left=e.position.offsetX+"%",r.top=e.position.offsetY+"%"):(r.left=e.position.value.split("-")[0],r.top=e.position.value.split("-")[1]);var i=new Map([["auto",10],["far",30],["close",5],["normal",20],["custom",n.distance.cusGap]]);return r.itemGap=i.get(n.distance.value),r},xt=mt,wt=function(t,e){var n={show:!0,textStyle:{color:"#333",fontStyle:"normal",fontWeight:"normal",fontSize:12},left:"auto",top:"auto",orient:"horizontal",itemWidth:25,itemGap:10};n.show=e.show,ke(e,n,"textStyle"),"custom"===e.position.value?(n.left=e.position.offsetX,n.top=e.position.offsetY):(n.left=e.position.value.split("-")[0],n.top=e.position.value.split("-")[1]),n.orient=e.position.direction;var r=new Map([["auto",25],["big",45],["medium",18],["small",10],["custom",e.width.cusSize]]),i=new Map([["auto",14],["big",30],["medium",20],["small",10],["custom",e.height.cusSize]]);n.itemWidth=r.get(e.width.value),n.itemHeight=i.get(e.height.value);var o=new Map([["auto",10],["far",20],["near",5],["general",15],["custom",e.distance.cusGap]]);return n.itemGap=o.get(e.distance.value),n},At=wt,St=function(t,e){var n={show:!0,trigger:"item",textStyle:{color:"#fff",fontStyle:"normal",fontWeight:"normal",fontSize:14},backgroundColor:"rgba(50,50,50,0.7)",triggerOn:"mousemove|click",axisPointer:{type:"line",lineStyle:{type:"solid",width:1,color:"#555"}},position:"right"};return n.show=e.show,n.trigger=e.triggerType,n.triggerOn=e.triggerOn,ke(e,n,"textStyle"),n.backgroundColor=e.backgroundColor,n.axisPointer.lineStyle=e.axisPointer.style,n.axisPointer.type=e.axisPointer.type,n.position="auto"==e.position?null:e.position,n},Ct=St,kt=(n("b680"),function(t,e){var n=t[1],r={show:!0,name:"",nameTextStyle:{color:"#333",fontStyle:"normal",fontWeight:"normal",fontSize:12},nameLocation:"end",inverse:!1,interval:null,nameGap:15,nameRotate:null,axisLine:{show:!0,lineStyle:{color:"#333",width:1}},axisTick:{show:!0,inside:!1,length:5,lineStyle:{width:1,type:"solid",color:null}},axisLabel:{show:!0,rotate:0,formatter:null},min:null,max:null,splitLine:{show:!0,lineStyle:{color:"#ccc",width:1,type:"solid"},interval:"auto"},splitArea:{show:!1,areaStyle:{color:["rgba(250,250,250,0.3)","rgba(200,200,200,0.3)"]}}},i=function(t,r){var i=z(e[r]);return t=v.a.extend(t,i),t.show=i.show,t.name=i.title.text,ke(i.title,t,"nameTextStyle"),t.nameLocation=i.title.fzPosition,t.inverse=i.inverse,"value"!=t.type&&(t.interval=i.tickLabel.optimize),t.nameGap=i.title.rotate,t.axisLine.show=i.tickLine.show,t.axisLine.lineStyle=Te(i.tickLine.width,i.tickLine.color),t.axisTick.show=i.tick.show,t.axisTick.lineStyle=Te(i.tick.width,i.tick.color),t.axisTick.inside="inside"==i.tick.position,t.axisTick.length=i.tick.length,t.axisLabel.show=i.tickLabel.show,t.axisLabel.rotate=i.tickLabel.rotate,"bar"==n&&"x"==r.slice(0,1)||"bar"!=n&&"y"==r.slice(0,1)?(t.min=i.tickLabel.min,t.max=i.tickLabel.max,t.axisLabel.formatter=function(t){return"auto"==i.tickLabel.digit?i.tickLabel.prefix+Oe.multiply(+t,i.tickLabel.ratio)+i.tickLabel.suffix:i.tickLabel.prefix+Oe.multiply(+t,i.tickLabel.ratio).toFixed(i.tickLabel.digit)+i.tickLabel.suffix}):t.axisLabel.formatter=function(t){return i.tickLabel.prefix+t+i.tickLabel.suffix},t.splitLine.show=i.netLine.show,t.splitLine.lineStyle=Te(i.netLine.width,i.netLine.color,i.netLine.type),t.splitLine.interval=Ee(i.netLine.interval.value,i.netLine.interval.cusNumber),t.splitArea.show=i.netArea.show,t.splitArea.interval=Ee(i.netArea.interval.value,i.netArea.interval.cusNumber),t.splitArea.areaStyle.color=["auto"==i.netArea.colorOne?"rgba(250,250,250,0.3)":i.netArea.colorOne,"auto"==i.netArea.colorTwo?"rgba(200,200,200,0.3)":i.netArea.colorTwo],t};return{xAxisUp:i(z(r),"xAxisUp"),xAxisDown:i(z(r),"xAxisDown"),yAxisLeft:i(z(r),"yAxisLeft"),yAxisRight:i(z(r),"yAxisRight")}}),Ot=kt,Tt=function(t){var e=t.chartAllType.split("|"),n=(e[0],e[1]),r=(e[2],xt(e,t.defaultOption.title,t.defaultOption.subtitle)),i=At(e,t.defaultOption.legend),o=Ct(e,t.defaultOption.tooltip),a=Ot(e,t.defaultOption.axis);a.xAxisDown.data=t.defaultOption.axis.xAxisDown.data;var u={title:l({},r),tooltip:l({},o),legend:l({},i),xAxis:[l({},a.xAxisDown),l({},a.xAxisUp)],yAxis:[a.yAxisLeft,a.yAxisRight],series:t.defaultOption.series?t.defaultOption.series:[{name:"销量",type:"bar",data:[5,20,36,10,10,20]}]};return"pie"==n&&(delete u.xAxis,delete u.yAxis),console.dir(u),console.dir(JSON.stringify(u)),u},Et=Tt,It=n("8bbf"),Dt=n.n(It),jt="ENABLE_ACTIVE",Lt="DISABLE_ACTIVE",Nt="ENABLE_DRAGGABLE",Gt="DISABLE_DRAGGABLE",Rt="ENABLE_RESIZABLE",Mt="DISABLE_RESIZABLE",Bt="ENABLE_PARENT_LIMITATION",Pt="DISABLE_PARENT_LIMITATION",zt="ENABLE_SNAP_TO_GRID",Vt="DISABLE_SNAP_TO_GRID",Qt="ENABLE_ASPECT",Ft="DISABLE_ASPECT",qt="ENABLE_X_AXIS",Wt="ENABLE_Y_AXIS",Xt="ENABLE_BOTH_AXIS",Zt="ENABLE_NONE_AXIS",Ht="CHANGE_ZINDEX",Ut="CHANGE_MINW",Jt="CHANGE_MINH",Yt="CHANGE_WIDTH",Kt="CHANGE_HEIGHT",_t="CHANGE_TOP",$t="CHANGE_LEFT",te={ENABLE_ACTIVE:jt,DISABLE_ACTIVE:Lt,ENABLE_DRAGGABLE:Nt,DISABLE_DRAGGABLE:Gt,ENABLE_RESIZABLE:Rt,DISABLE_RESIZABLE:Mt,ENABLE_PARENT_LIMITATION:Bt,DISABLE_PARENT_LIMITATION:Pt,ENABLE_SNAP_TO_GRID:zt,DISABLE_SNAP_TO_GRID:Vt,ENABLE_ASPECT:Qt,DISABLE_ASPECT:Ft,ENABLE_X_AXIS:qt,ENABLE_Y_AXIS:Wt,ENABLE_NONE_AXIS:Zt,ENABLE_BOTH_AXIS:Xt,CHANGE_ZINDEX:Ht,CHANGE_MINW:Ut,CHANGE_MINH:Jt,CHANGE_WIDTH:Yt,CHANGE_HEIGHT:Kt,CHANGE_TOP:_t,CHANGE_LEFT:$t},ee={setActive:function(t,e){for(var n=t.commit,r=t.state,i=e.id,o=0,a=r.rects.length;o<a;o++)n(o!==i?te.DISABLE_ACTIVE:te.ENABLE_ACTIVE,o)},unsetActive:function(t,e){var n=t.commit,r=e.id;n(te.DISABLE_ACTIVE,r)},toggleDraggable:function(t,e){var n=t.commit,r=t.state,i=e.id;r.rects[i].draggable?n(te.DISABLE_DRAGGABLE,i):n(te.ENABLE_DRAGGABLE,i)},toggleResizable:function(t,e){var n=t.commit,r=t.state,i=e.id;r.rects[i].resizable?n(te.DISABLE_RESIZABLE,i):n(te.ENABLE_RESIZABLE,i)},toggleParentLimitation:function(t,e){var n=t.commit,r=t.state,i=e.id;r.rects[i].parentLim?n(te.DISABLE_PARENT_LIMITATION,i):n(te.ENABLE_PARENT_LIMITATION,i)},toggleSnapToGrid:function(t,e){var n=t.commit,r=t.state,i=e.id;r.rects[i].snapToGrid?n(te.DISABLE_SNAP_TO_GRID,i):n(te.ENABLE_SNAP_TO_GRID,i)},setAspect:function(t,e){var n=t.commit,r=e.id;n(te.ENABLE_ASPECT,r)},unsetAspect:function(t,e){var n=t.commit,r=e.id;n(te.DISABLE_ASPECT,r)},setWidth:function(t,e){var n=t.commit,r=e.id,i=e.width;n(te.CHANGE_WIDTH,{id:r,width:i})},setHeight:function(t,e){var n=t.commit,r=e.id,i=e.height;n(te.CHANGE_HEIGHT,{id:r,height:i})},setTop:function(t,e){var n=t.commit,r=e.id,i=e.top;n(te.CHANGE_TOP,{id:r,top:i})},setLeft:function(t,e){var n=t.commit,r=e.id,i=e.left;n(te.CHANGE_LEFT,{id:r,left:i})},changeXLock:function(t,e){var n=t.commit,r=t.state,i=e.id;switch(r.rects[i].axis){case"both":n(te.ENABLE_Y_AXIS,i);break;case"x":n(te.ENABLE_NONE_AXIS,i);break;case"y":n(te.ENABLE_BOTH_AXIS,i);break;case"none":n(te.ENABLE_X_AXIS,i);break}},changeYLock:function(t,e){var n=t.commit,r=t.state,i=e.id;switch(r.rects[i].axis){case"both":n(te.ENABLE_X_AXIS,i);break;case"x":n(te.ENABLE_BOTH_AXIS,i);break;case"y":n(te.ENABLE_NONE_AXIS,i);break;case"none":n(te.ENABLE_Y_AXIS,i);break}},changeZToBottom:function(t,e){var n=t.commit,r=t.state,i=e.id;if(1!==r.rects[i].zIndex){n(te.CHANGE_ZINDEX,{id:i,zIndex:1});for(var o=0,a=r.rects.length;o<a;o++)if(o!==i){if(r.rects[o].zIndex===r.rects.length)continue;n(te.CHANGE_ZINDEX,{id:o,zIndex:r.rects[o].zIndex+1})}}},changeZToTop:function(t,e){var n=t.commit,r=t.state,i=e.id;if(r.rects[i].zIndex!==r.rects.length){n(te.CHANGE_ZINDEX,{id:i,zIndex:r.rects.length});for(var o=0,a=r.rects.length;o<a;o++)if(o!==i){if(1===r.rects[o].zIndex)continue;n(te.CHANGE_ZINDEX,{id:o,zIndex:r.rects[o].zIndex-1})}}},setMinWidth:function(t,e){var n=t.commit,r=e.id,i=e.width;n(te.CHANGE_MINW,{id:r,minw:i})},setMinHeight:function(t,e){var n=t.commit,r=e.id,i=e.height;n(te.CHANGE_MINH,{id:r,minh:i})}},ne={getActive:function(t){for(var e=0,n=t.rects.length;e<n;e++){var r=t.rects[e];if(r.active)return e}return null}},re=(bt={},u(bt,jt,(function(t,e){t.rects[e].active=!0})),u(bt,Lt,(function(t,e){t.rects[e].active=!1})),u(bt,Qt,(function(t,e){t.rects[e].aspectRatio=!0})),u(bt,Ft,(function(t,e){t.rects[e].aspectRatio=!1})),u(bt,Nt,(function(t,e){t.rects[e].draggable=!0})),u(bt,Gt,(function(t,e){t.rects[e].draggable=!1})),u(bt,Rt,(function(t,e){t.rects[e].resizable=!0})),u(bt,Mt,(function(t,e){t.rects[e].resizable=!1})),u(bt,zt,(function(t,e){t.rects[e].snapToGrid=!0})),u(bt,Vt,(function(t,e){t.rects[e].snapToGrid=!1})),u(bt,Xt,(function(t,e){t.rects[e].axis="both"})),u(bt,Zt,(function(t,e){t.rects[e].axis="none"})),u(bt,qt,(function(t,e){t.rects[e].axis="x"})),u(bt,Wt,(function(t,e){t.rects[e].axis="y"})),u(bt,Bt,(function(t,e){t.rects[e].parentLim=!0})),u(bt,Pt,(function(t,e){t.rects[e].parentLim=!1})),u(bt,Ht,(function(t,e){t.rects[e.id].zIndex=e.zIndex})),u(bt,Kt,(function(t,e){t.rects[e.id].height=e.height})),u(bt,Yt,(function(t,e){t.rects[e.id].width=e.width})),u(bt,_t,(function(t,e){t.rects[e.id].top=e.top})),u(bt,$t,(function(t,e){t.rects[e.id].left=e.left})),u(bt,Jt,(function(t,e){t.rects[e.id].minh=e.minh})),u(bt,Ut,(function(t,e){t.rects[e.id].minw=e.minw})),bt),ie={rects:[{width:200,height:150,top:10,left:10,draggable:!0,resizable:!0,minw:10,minh:10,axis:"both",parentLim:!0,snapToGrid:!1,aspectRatio:!1,zIndex:1,color:"#EF9A9A",active:!1,chart_id:"chart_5erpeWc1eWal_1596092336315"},{width:200,height:150,top:10,left:220,draggable:!0,resizable:!0,minw:10,minh:10,axis:"both",parentLim:!0,snapToGrid:!1,aspectRatio:!1,zIndex:2,color:"#AED581",active:!1,chart_id:"chart_5erpeWc1eWal_15960973336319"},{width:200,height:150,top:170,left:10,draggable:!0,resizable:!0,minw:10,minh:10,axis:"both",parentLim:!0,snapToGrid:!1,aspectRatio:!1,zIndex:3,color:"#81D4FA",active:!1,chart_id:"chart_5erpeWc1eWal_1596093236310"}]},oe={namespaced:!0,actions:ee,getters:ne,mutations:re,state:ie},ae={state:function(){return{isShow:!0}},getters:{},mutations:{},actions:{}},ue=ae,se="ENABLE_ACTIVE",le="DISABLE_ACTIVE",ce="UPDATE_CHART_ITEM",fe="UPDATE_CHART_ITEM_CHARTLIST",he="UPDATE_CHART_ITEM_ONE",pe="UPDATE_CHART_ITEM_CHARTLIST_ONE",de={ENABLE_ACTIVE:se,DISABLE_ACTIVE:le,UPDATE_CHART_ITEM:ce,UPDATE_CHART_ITEM_CHARTLIST:fe,UPDATE_CHART_ITEM_ONE:he,UPDATE_CHART_ITEM_CHARTLIST_ONE:pe},ve={setActive:function(t,e){for(var n=t.commit,r=t.state,i=e.id,o=0,a=r.chartLists.length;o<a;o++)n(o!==i?de.DISABLE_ACTIVE:de.ENABLE_ACTIVE,o)},unsetActive:function(t,e){var n=t.commit,r=e.id;n(de.DISABLE_ACTIVE,r)},updateChartItem:function(t,e){var n=t.commit;n(de.UPDATE_CHART_ITEM,e)},updateChartItemChartlist:function(t,e){var n=t.commit;n(de.UPDATE_CHART_ITEM_CHARTLIST,e)},updateChartItemOne:function(t,e){var n=t.commit;n(de.UPDATE_CHART_ITEM_ONE,e)},updateChartItemChartlistOne:function(t,e){var n=t.commit;n(de.UPDATE_CHART_ITEM_CHARTLIST_ONE,e)}},ge={getActive:function(t){for(var e=0,n=t.chartLists.length;e<n;e++){var r=t.chartLists[e];if(r.active)return e}return null}},be=(yt={},u(yt,se,(function(t,e){t.chartLists[e].active=!0,t.currentChartIndex=e})),u(yt,le,(function(t,e){t.chartLists[e].active=!1})),u(yt,ce,(function(t,e){console.info("updateObj",e);var n=e.router,r=e.updateObj,i=t.chartLists[t.currentChartIndex].chartOptions;Se(i,n,r)})),u(yt,fe,(function(t,e){var n=t.chartLists.findIndex((function(t){return t.chart_id==e.chart_id}));t.chartLists[n].chartOptions=v.a.extend(t.chartLists[n].chartOptions,e)})),u(yt,pe,(function(t,e){var n=t.chartLists.findIndex((function(t){return t.chart_id==e.chart_id}));t.chartLists[n].chartOptions[e.key]=e.value})),u(yt,he,(function(t,e){t[e.key]=e.value})),yt),ye=(n("42454"),n("0644"),{chartLists:[{chart_id:"chart_5erpeWc1eWal_1596092336315",active:!0,chartOptions:{chart_id:"chart_5erpeWc1eWal_1596092336315",chartAllType:"echarts|line|default",chartPro:"echarts",chartType:"line",chartStyle:"default",chartData:[[{v:"德国人的",ct:{fa:"General",t:"g"},m:"德国人的",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:"尔尔",ct:{fa:"General",t:"g"},m:"尔尔",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:"地方当然",ct:{fa:"General",t:"g"},m:"地方当然",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}],[{v:"尔尔",ct:{fa:"General",t:"g"},m:"尔尔",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:1,ct:{fa:"General",t:"n"},m:"1",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:2,ct:{fa:"General",t:"n"},m:"2",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}],[{v:"树人",ct:{fa:"General",t:"g"},m:"树人",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:3,ct:{fa:"General",t:"n"},m:"3",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:4,ct:{fa:"General",t:"n"},m:"4",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}],[{v:"多个",ct:{fa:"General",t:"g"},m:"多个",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:5,ct:{fa:"General",t:"n"},m:"5",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:6,ct:{fa:"General",t:"n"},m:"6",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}]],rangeArray:[{row:[17,20],column:[9,11],row_focus:17,column_focus:9,left:1077,width:140,top:357,height:31,left_move:1077,width_move:359,top_move:357,height_move:94}],rangeTxt:"J18:L21",rangeColCheck:{exits:!0,range:[0,0]},rangeRowCheck:{exits:!0,range:[0,0]},rangeConfigCheck:!1,rangeSplitArray:{title:{row:[0,0],column:[0,0]},rowtitle:{row:[0,0],column:[1,2]},coltitle:{row:[1,3],column:[0,0]},content:{row:[1,3],column:[1,2]},type:"normal",range:{row:[17,20],column:[9,11],row_focus:17,column_focus:9,left:1077,width:140,top:357,height:31,left_move:1077,width_move:359,top_move:357,height_move:94}},chartDataCache:{label:["尔尔","地方当然"],xAxis:["尔尔","树人","多个"],series:[[1,2],[3,4],[5,6]],series_tpye:{0:"num",1:"num"}},chartDataSeriesOrder:{0:0,1:1,length:2},defaultOption:{title:{show:!1,text:"默认标题",label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},position:{value:"left-top",offsetX:40,offsetY:50}},subtitle:{show:!1,text:"",label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},distance:{value:"auto",cusGap:40}},config:{color:"transparent",fontFamily:"Sans-serif",grid:{value:"normal",top:5,left:10,right:20,bottom:10}},legend:{show:!0,selectMode:"multiple",selected:[{seriesName:"衣服",isShow:!0},{seriesName:"食材",isShow:!0},{seriesName:"图书",isShow:!0}],label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},position:{value:"left-top",offsetX:40,offsetY:50,direction:"horizontal"},width:{value:"auto",cusSize:25},height:{value:"auto",cusSize:14},distance:{value:"auto",cusGap:10},itemGap:10,data:["尔尔","地方当然"]},tooltip:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},backgroundColor:"rgba(50,50,50,0.7)",triggerOn:"mousemove",triggerType:"item",axisPointer:{type:"line",style:{color:"#555",width:"normal",type:"solid"}},format:[{seriesName:"衣服",prefix:"",suffix:"",ratio:1,digit:"auto"},{seriesName:"食材",prefix:"",suffix:"",ratio:1,digit:"auto"},{seriesName:"图书",prefix:"",suffix:"",ratio:1,digit:"auto"}],position:"auto"},axis:{axisType:"xAxisDown",xAxisUp:{show:!1,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示X轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,prefix:"",suffix:"",optimize:0,distance:0,min:"auto",max:"auto",ratio:1,digit:"auto"},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"},axisLine:{onZero:!1}},xAxisDown:{show:!0,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示X轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,prefix:"",suffix:"",optimize:0,distance:0,min:null,max:null,ratio:1,digit:"auto"},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"},data:["尔尔","树人","多个"],type:"category"},yAxisLeft:{show:!0,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示Y轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,formatter:{prefix:"",suffix:"",ratio:1,digit:"auto"},split:5,min:null,max:null,prefix:"",suffix:"",ratio:1,digit:"auto",distance:0},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"},type:"value"},yAxisRight:{show:!1,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示Y轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,formatter:{prefix:"",suffix:"",ratio:1,digit:"auto"},split:5,min:null,max:null,prefix:"",suffix:"",ratio:1,digit:"auto",distance:0},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"}}},series:[{itemStyle:{color:null,borderColor:"#000",borderType:"solid",borderWidth:1},lineStyle:{color:null,width:1,type:"solid"},data:[1,3,5],type:"line",name:"尔尔",markPoint:{data:[]},markLine:{data:[]},markArea:{data:[]}},{itemStyle:{color:null,borderColor:"#000",borderType:"solid",borderWidth:1},lineStyle:{color:null,width:1,type:"solid"},data:[2,4,6],type:"line",name:"地方当然",markPoint:{data:[]},markLine:{data:[]},markArea:{data:[]}}],seriesData:[[1,3,5],[2,4,6]]}}},{chart_id:"chart_5erpeWc1eWal_1596093236310",active:!0,chartOptions:{chart_id:"chart_5erpeWc1eWal_1596093236310",chartAllType:"echarts|line|default",chartPro:"echarts",chartType:"line",chartStyle:"default",chartData:[[{v:"德国人的",ct:{fa:"General",t:"g"},m:"德国人的",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:"尔尔",ct:{fa:"General",t:"g"},m:"尔尔",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:"地方当然",ct:{fa:"General",t:"g"},m:"地方当然",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}],[{v:"尔尔",ct:{fa:"General",t:"g"},m:"尔尔",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:1,ct:{fa:"General",t:"n"},m:"1",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:2,ct:{fa:"General",t:"n"},m:"2",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}],[{v:"树人",ct:{fa:"General",t:"g"},m:"树人",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:3,ct:{fa:"General",t:"n"},m:"3",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:4,ct:{fa:"General",t:"n"},m:"4",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}],[{v:"多个",ct:{fa:"General",t:"g"},m:"多个",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:5,ct:{fa:"General",t:"n"},m:"5",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:6,ct:{fa:"General",t:"n"},m:"6",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}]],rangeArray:[{row:[17,20],column:[9,11],row_focus:17,column_focus:9,left:1077,width:140,top:357,height:31,left_move:1077,width_move:359,top_move:357,height_move:94}],rangeTxt:"J18:L21",rangeColCheck:{exits:!0,range:[0,0]},rangeRowCheck:{exits:!0,range:[0,0]},rangeConfigCheck:!1,rangeSplitArray:{title:{row:[0,0],column:[0,0]},rowtitle:{row:[0,0],column:[1,2]},coltitle:{row:[1,3],column:[0,0]},content:{row:[1,3],column:[1,2]},type:"normal",range:{row:[17,20],column:[9,11],row_focus:17,column_focus:9,left:1077,width:140,top:357,height:31,left_move:1077,width_move:359,top_move:357,height_move:94}},chartDataCache:{label:["尔尔","地方当然"],xAxis:["尔尔","树人","多个"],series:[[1,2],[3,4],[5,6]],series_tpye:{0:"num",1:"num"}},chartDataSeriesOrder:{0:0,1:1,length:2},defaultOption:{title:{show:!1,text:"默认标题",label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},position:{value:"left-top",offsetX:40,offsetY:50}},subtitle:{show:!1,text:"",label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},distance:{value:"auto",cusGap:40}},config:{color:"transparent",fontFamily:"Sans-serif",grid:{value:"normal",top:5,left:10,right:20,bottom:10}},legend:{show:!0,selectMode:"multiple",selected:[{seriesName:"衣服",isShow:!0},{seriesName:"食材",isShow:!0},{seriesName:"图书",isShow:!0}],label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},position:{value:"left-top",offsetX:40,offsetY:50,direction:"horizontal"},width:{value:"auto",cusSize:25},height:{value:"auto",cusSize:14},distance:{value:"auto",cusGap:10},itemGap:10,data:["尔尔","地方当然"]},tooltip:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},backgroundColor:"rgba(50,50,50,0.7)",triggerOn:"mousemove",triggerType:"item",axisPointer:{type:"line",style:{color:"#555",width:"normal",type:"solid"}},format:[{seriesName:"衣服",prefix:"",suffix:"",ratio:1,digit:"auto"},{seriesName:"食材",prefix:"",suffix:"",ratio:1,digit:"auto"},{seriesName:"图书",prefix:"",suffix:"",ratio:1,digit:"auto"}],position:"auto"},axis:{axisType:"xAxisDown",xAxisUp:{show:!1,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示X轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,prefix:"",suffix:"",optimize:0,distance:0,min:"auto",max:"auto",ratio:1,digit:"auto"},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"},axisLine:{onZero:!1}},xAxisDown:{show:!0,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示X轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,prefix:"",suffix:"",optimize:0,distance:0,min:null,max:null,ratio:1,digit:"auto"},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"},data:["尔尔","树人","多个"],type:"category"},yAxisLeft:{show:!0,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示Y轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,formatter:{prefix:"",suffix:"",ratio:1,digit:"auto"},split:5,min:null,max:null,prefix:"",suffix:"",ratio:1,digit:"auto",distance:0},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"},type:"value"},yAxisRight:{show:!1,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示Y轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,formatter:{prefix:"",suffix:"",ratio:1,digit:"auto"},split:5,min:null,max:null,prefix:"",suffix:"",ratio:1,digit:"auto",distance:0},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"}}},series:[{itemStyle:{color:null,borderColor:"#000",borderType:"solid",borderWidth:1},lineStyle:{color:null,width:1,type:"solid"},data:[1,3,5],type:"line",name:"尔尔",markPoint:{data:[]},markLine:{data:[]},markArea:{data:[]}},{itemStyle:{color:null,borderColor:"#000",borderType:"solid",borderWidth:1},lineStyle:{color:null,width:1,type:"solid"},data:[2,4,6],type:"line",name:"地方当然",markPoint:{data:[]},markLine:{data:[]},markArea:{data:[]}}],seriesData:[[1,3,5],[2,4,6]]}}},{chart_id:"chart_5erpeWc1eWal_15960973336319",active:!0,chartOptions:{chart_id:"chart_5erpeWc1eWal_15960973336319",chartAllType:"echarts|line|default",chartPro:"echarts",chartType:"line",chartStyle:"default",chartData:[[{v:"德国人的",ct:{fa:"General",t:"g"},m:"德国人的",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:"尔尔",ct:{fa:"General",t:"g"},m:"尔尔",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:"地方当然",ct:{fa:"General",t:"g"},m:"地方当然",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}],[{v:"尔尔",ct:{fa:"General",t:"g"},m:"尔尔",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:1,ct:{fa:"General",t:"n"},m:"1",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:2,ct:{fa:"General",t:"n"},m:"2",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}],[{v:"树人",ct:{fa:"General",t:"g"},m:"树人",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:3,ct:{fa:"General",t:"n"},m:"3",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:4,ct:{fa:"General",t:"n"},m:"4",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}],[{v:"多个",ct:{fa:"General",t:"g"},m:"多个",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:5,ct:{fa:"General",t:"n"},m:"5",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0},{v:6,ct:{fa:"General",t:"n"},m:"6",bg:"rgba(255,255,255)",bl:0,it:0,ff:1,fs:11,fc:"rgb(0, 0, 0)",ht:1,vt:0}]],rangeArray:[{row:[17,20],column:[9,11],row_focus:17,column_focus:9,left:1077,width:140,top:357,height:31,left_move:1077,width_move:359,top_move:357,height_move:94}],rangeTxt:"J18:L21",rangeColCheck:{exits:!0,range:[0,0]},rangeRowCheck:{exits:!0,range:[0,0]},rangeConfigCheck:!1,rangeSplitArray:{title:{row:[0,0],column:[0,0]},rowtitle:{row:[0,0],column:[1,2]},coltitle:{row:[1,3],column:[0,0]},content:{row:[1,3],column:[1,2]},type:"normal",range:{row:[17,20],column:[9,11],row_focus:17,column_focus:9,left:1077,width:140,top:357,height:31,left_move:1077,width_move:359,top_move:357,height_move:94}},chartDataCache:{label:["尔尔","地方当然"],xAxis:["尔尔","树人","多个"],series:[[1,2],[3,4],[5,6]],series_tpye:{0:"num",1:"num"}},chartDataSeriesOrder:{0:0,1:1,length:2},defaultOption:{title:{show:!1,text:"默认标题",label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},position:{value:"left-top",offsetX:40,offsetY:50}},subtitle:{show:!1,text:"",label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},distance:{value:"auto",cusGap:40}},config:{color:"transparent",fontFamily:"Sans-serif",grid:{value:"normal",top:5,left:10,right:20,bottom:10}},legend:{show:!0,selectMode:"multiple",selected:[{seriesName:"衣服",isShow:!0},{seriesName:"食材",isShow:!0},{seriesName:"图书",isShow:!0}],label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},position:{value:"left-top",offsetX:40,offsetY:50,direction:"horizontal"},width:{value:"auto",cusSize:25},height:{value:"auto",cusSize:14},distance:{value:"auto",cusGap:10},itemGap:10,data:["尔尔","地方当然"]},tooltip:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},backgroundColor:"rgba(50,50,50,0.7)",triggerOn:"mousemove",triggerType:"item",axisPointer:{type:"line",style:{color:"#555",width:"normal",type:"solid"}},format:[{seriesName:"衣服",prefix:"",suffix:"",ratio:1,digit:"auto"},{seriesName:"食材",prefix:"",suffix:"",ratio:1,digit:"auto"},{seriesName:"图书",prefix:"",suffix:"",ratio:1,digit:"auto"}],position:"auto"},axis:{axisType:"xAxisDown",xAxisUp:{show:!1,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示X轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,prefix:"",suffix:"",optimize:0,distance:0,min:"auto",max:"auto",ratio:1,digit:"auto"},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"},axisLine:{onZero:!1}},xAxisDown:{show:!0,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示X轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,prefix:"",suffix:"",optimize:0,distance:0,min:null,max:null,ratio:1,digit:"auto"},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"},data:["尔尔","树人","多个"],type:"category"},yAxisLeft:{show:!0,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示Y轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,formatter:{prefix:"",suffix:"",ratio:1,digit:"auto"},split:5,min:null,max:null,prefix:"",suffix:"",ratio:1,digit:"auto",distance:0},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"},type:"value"},yAxisRight:{show:!1,title:{showTitle:!1,text:"",nameGap:15,rotate:0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},fzPosition:"end"},name:"显示Y轴",inverse:!1,tickLine:{show:!0,width:1,color:"auto"},tick:{show:!0,position:"outside",length:5,width:1,color:"auto"},tickLabel:{show:!0,label:{fontSize:12,color:"#333",fontFamily:"sans-serif",fontGroup:[],cusFontSize:12},rotate:0,formatter:{prefix:"",suffix:"",ratio:1,digit:"auto"},split:5,min:null,max:null,prefix:"",suffix:"",ratio:1,digit:"auto",distance:0},netLine:{show:!1,width:1,type:"solid",color:"auto",interval:{value:"auto",cusNumber:0}},netArea:{show:!1,interval:{value:"auto",cusNumber:0},colorOne:"auto",colorTwo:"auto"}}},series:[{itemStyle:{color:null,borderColor:"#000",borderType:"solid",borderWidth:1},lineStyle:{color:null,width:1,type:"solid"},data:[1,3,5],type:"line",name:"尔尔",markPoint:{data:[]},markLine:{data:[]},markArea:{data:[]}},{itemStyle:{color:null,borderColor:"#000",borderType:"solid",borderWidth:1},lineStyle:{color:null,width:1,type:"solid"},data:[2,4,6],type:"line",name:"地方当然",markPoint:{data:[]},markLine:{data:[]},markArea:{data:[]}}],seriesData:[[1,3,5],[2,4,6]]}}}],currentChartIndex:null}),me={namespaced:!0,actions:ve,getters:ge,mutations:be,state:ye};Dt.a.use(b.a);new b.a.Store;var xe=!1,we=new b.a.Store({modules:{rect:oe,chartRender:ue,chartSetting:me},strict:xe}),Ae=n("164e"),Se=function(t,e,n){if(void 0==t||void 0==e)return t;var r=e.split("/"),i=t.defaultOption;function o(t){return 0!=r.length?o(t[r.shift()]):(Object.assign(t,n),t)}return o(i),Ce({chartOptions:t}),t},Ce=function(t,e){var n=t.chartOptions,r=n.chart_id,i=n.chartAllType.split("|"),o=i[0],a=document.getElementById(r);if("echarts"===o){var u=Et(n),s=Ae.getInstanceByDom(a);null==s&&(s=Ae.init(a)),s.setOption(u,!0),setTimeout((function(){Ae.getInstanceById(a.getAttribute("_echarts_instance_")).resize()}),0)}},ke=function(t,e,n,r){var i=["bold","vertical","italic"];t.label.fontGroup.forEach((function(o){if(i.includes(o))switch(o){case"bold":e[n].fontWeight=o;break;case"vertical":e[r]=t.text.replace(/\B/g,"\n");break;case"italic":e[n].fontStyle=o;break}})),e[n].color=t.label.color,e[n].fontSize=Ee(t.label.fontSize,t.label.cusFontSize)},Oe=function(){function t(t){return Math.floor(t)===t}function e(e){var n={times:1,num:0};if(t(e))return n.num=e,n;var r=e+"",i=r.indexOf("."),o=r.substr(i+1).length,a=Math.pow(10,o),u=parseInt(e*a+.5,10);return n.times=a,n.num=u,n}function n(t,r,i){var o=e(t),a=e(r),u=o.num,s=a.num,l=o.times,c=a.times,f=l>c?l:c,h=null;switch(i){case"add":return h=l===c?u+s:l>c?u+s*(l/c):u*(c/l)+s,h/f;case"subtract":return h=l===c?u-s:l>c?u-s*(l/c):u*(c/l)-s,h/f;case"multiply":return h=u*s/(l*c),h;case"divide":return function(){var t=u/s,e=c/l;return n(t,e,"multiply")}()}}function r(t,e){return n(t,e,"add")}function i(t,e){return n(t,e,"subtract")}function o(t,e){return n(t,e,"multiply")}function a(t,e){return n(t,e,"divide")}return{add:r,subtract:i,multiply:o,divide:a}}(),Te=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"solid";return{width:t,color:e,type:n}},Ee=function(t,e){return"custom"!=t?t:e},Ie=function(t,e){var n=t.chart_id,r=n,i={},o=e.split("|"),a=o[0],u=o[1],s=o[2];i.chart_id=r,i.chartAllType=e;var l=t.defaultOption;l.series=[];var c=tt(t.chartData,t.rangeSplitArray,a,u,s);i.chartDataCache=c;var f=et(c.series[0].length);i.chartDataSeriesOrder=f;var h=nt(l,c,f,a,u,s,t.chartData);i.defaultOption=h,we.dispatch("chartSetting/updateChartItemChartlist",i),Ce({chartOptions:i,chart_id:r})},De=function(t,e,n,r){var i=we.state,o=z(i.chartSetting.chartLists[i.chartSetting.currentChartIndex].chartOptions);o.chart_id=t,o.rangeRowCheck=e,o.rangeColCheck=n,o.rangeConfigCheck=r,o.chartData=o.chartData||[],o.rangeSplitArray=_(o.chartData,o.rangeArray,n,e);var a=o.chartAllType.split("|"),u=a[0],s=a[1],l=a[2];o.chartDataCache=tt(o.chartData,o.rangeSplitArray,u,s,l,r),o.chartDataSeriesOrder=et(o.chartDataCache.series[0].length),o.defaultOption=nt(o.defaultOption,o.chartDataCache,o.chartDataSeriesOrder,u,s,l),we.dispatch("chartSetting/updateChartItemChartlist",o),Ce({chartOptions:o,chart_id:t})},je=function(t,e){if(null!=t){var n=t.chart_id,r=t.chartAllType.split("|"),i=r[0],o=r[1],a=r[2];t.defaultOption=nt(t.defaultOption,t.chartDataCache,e,i,o,a),we.dispatch("chartSetting/updateChartItemChartlist",t),Ce({chartOptions:updateJson,chart_id:n})}};function Le(t,e,n,r){var i=we.state.chartSetting.chartLists.findIndex((function(e){return e.chart_id==t}));we.state.chartSetting.currentChartIndex=i;var o=we.state.chartSetting.chartLists[i].chartOptions,a=o.chartAllType,u=a.split("|"),s=u[0],l=u[1],c=u[2];o.rangeArray=n,o.chartData=e,o.rangeTxt=r;var f=K(e),h=f[0],p=f[1],d=!1;o.rangeColCheck=p,o.rangeRowCheck=h,o.rangeConfigCheck=d;var v=_(e,n,p,h);o.rangeSplitArray=v;var g=tt(e,v,s,l,c);o.chartDataCache=g;var b=et(g.series[0].length);o.chartDataSeriesOrder=b;var y=o.defaultOption,m=nt(y,g,b,s,l,c,!0,e);o.defaultOption=m,we.dispatch("chartSetting/updateChartItemChartlist",o),Ce({chartOptions:o,chart_id:t})}function Ne(t,e){var n=we.state.chartSetting.chartLists.findIndex((function(e){return e.chart_id==t}));we.state.chartSetting.currentChartIndex=n;var r=we.state.chartSetting.chartLists[n].chartOptions,i=r.chartAllType,o=i.split("|"),a=o[0],u=o[1],s=o[2];r.chartData=e;var l=r.rangeRowCheck,c=r.rangeColCheck,f=_(e,r.rangeArray,c,l);r.rangeSplitArray=f;var h=tt(e,f,a,u,s);r.chartDataCache=h;var p=et(h.series[0].length);r.chartDataSeriesOrder=p;var d=r.defaultOption,v=nt(d,h,p,a,u,s,!0,e);r.defaultOption=v,we.dispatch("chartSetting/updateChartItemChartlist",r),Ce({chartOptions:r,chart_id:t})}var Ge,Re=n("4f4d"),Me={chartSetting:(Ge={data:"数据",chartType:"图表类型",transpose:"转置(切换行/列)",row1:"设选中项第",row2:"行为标题",column:"设选中项第"},u(Ge,"column","列为标题"),u(Ge,"style","样式"),u(Ge,"echarts",{line:{default:"默认折线图",smooth:"平滑折线图",label:"带标签的折线图"},area:{default:"默认面积图",stack:"堆叠面积图"},column:{default:"默认柱状图",stack:"堆叠柱状图"},bar:{default:"默认条形图",stack:"堆叠条形图"},pie:{default:"默认饼图",split:"分离型饼图",ring:"环形饼图"}}),Ge),chartTitle:{modalName:"标题设置"},chartSubTitle:{modalName:"副标题设置"},chartAxis:{modalName:"XY轴设置"},chartLegend:{modalName:"图例设置"},chartCursor:{modalName:"鼠标提示"}},Be=Me,Pe={chartSetting:{data:"data",chartType:"chartType",transpose:"transpose(switch row/column)",row1:"set number",row2:"row as title",column1:"set number",column2:"column as title",style:"style",echarts:{line:{default:"Basic Line",smooth:"Smoothed Line",label:"Line With Label"},area:{default:"Basic Area",stack:"Stacked Area"},column:{default:"Basic Column",stack:"Stacked Column"},bar:{default:"Basic Bar",stack:"Stacked Bar"},pie:{default:"Basic Pie",split:"Split Pie",ring:"Doughnut Pie"}}},chartTitle:{modalName:"Title Setting"},chartSubTitle:{modalName:"SubTitle Setting"},chartAxis:{modalName:"XY-Axis Setting"},chartLegend:{modalName:"Legend Setting"},chartCursor:{modalName:"Tooltip Setting"}},ze=Pe,Ve={name:"ChartList",props:{showList:{type:Boolean,default:!1},zindex:{type:Number,default:10},currentChartType:{type:String,default:"echarts|line|default"},lang:{type:String,default:"cn"}},data:function(){return{config:[{type:"echarts",name:"echarts",data:[]}],currentConfig:[],currentPro:null,chartAllType:"",list_scroll_direction:-1e3,echartsCN:[{type:"line",name:"折线图",icon:"icon-tubiaozhexiantu",data:[{type:"echarts|line|default",name:"折线图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANsAAACsCAYAAADypNk5AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAABzASURBVHhe7Z2JVxRX1sDnP/omky/JaCZmYsYtGjVxQeOuqIAoqCyKILsggqgIuICyuSCiCO4gKoLsOzT7juwoi5pvTo7nfnVvd1d3wVMQoYGu2+f8juN7t8qePvXLe/WW+/72/v2fwDDM1MOyMYyJYNkYxkSMkq2sqhaqahsUZQzDfDmybBXVdXA08Cw4eAfCbmdvSH78dFQwwzATR5btXOwNcA8KA/x0dveC1SEvKNVUj7qAYZiJIcvmFhAK9568INnws/eIHxSXa0ZdwDDMxJBlu3z9Dti7H4ecwlIIvhgLv+2wh31ufqDh9zeGmRQUAyShl6+Bs28weJ+6AOttnOF/FqyGlTvs4F5ahuIihmE+H4VsI8EWDoX7auEaCIuOF8YwDDM+Pikbcu9JBny1aA1Jd9jvlDCGYZixGVM2pExTDRZWDiTcehsnqG1oFsYxDPNxxiUb0tv/GtwCzpJwc1dshlv304RxDMOIGbdsei7HJ5FwCA6kiGIYhhnNZ8uGPHqWBQvW7SLhLB3chTEMwyiZkGwILu/a43KMhPvPup3Q0NwqjGMYRsuEZUP6Xw+AX0iE3K2884jXUzLMx/gi2fRE37gDXy+xIOGOhVyE2w/S4Oqtu9DS3iGMZxg1MimyIWkZ2bB610H4ZZMN7D7kBUcDQ8HmsA9k5RUL4xlGbUyabMiDJ5mwxf6IbikzQOytFPAKPieMZRi1MamyPX9ZAI4+J3WqAcSnPAL/sxHCWIZRG5MqG3Lk+BlwDwwDn9MXYfM+F2rtRHEMozYmXbau7j44EX4J5vy6gQZMahtbhHEMozYmXTY9W/e7kmzXku4L6xlGbUyZbKcj4ki2A54nhPUMozamTLbn2QUk2w+/bYG+/jfCGIZRE38rKCiAqSAvLw+WbLAi4c5HXRHGMMxsRSTTWExZy4Z4njxHsnlJf4rqGUZNTKlsuFYSZVu+ba+wnmHUxJTK1tbRBf9evZ2Ey8rnZVuMuplS2RBMj4eynYm8IqxnGLUw5bLFJCSTbJv2uQjrGUYtKGSrPx0M5Xa2oHE9DF3p6YrAiVJeVQt/X6jNzlVd1yiMYRg1IMvWlnADarw84MNff0FP6mMos7WG4d6eURdMhG0H3Ei26IQ7wnqGUQOybPXBQdD7NF23Xh+gxHIrVLocgq5nX777+kykdjWJraufsJ5h1IAsW6vUstVKLRt8+AC9T1KhYO0qyPjmK6J4x1ZoOH8O+svLRt1gPGTkFJJsc5ZvhIGBIWEMw5g7wne2SumdrTkmit7d9MIhmf/6J5Ttt4PWG9dhqLNLcaOxWLndnoRLejg574IMM9tQyPYx2lNSoGjbZoV4OUsXgcbTAzrTnwivGQmuIkHZ3AJChPUMY+6MSzY9A80t1J3MXvizQryCPyygPjSEupnD/a+hKTYaGqS/9+TmyNcmP35Gsi3eYKW4J8Oohc+SzZjurCzQHHVVSIcUbd4ANR5uUOvrBaV7rKWWT5umvKOrB35as4OEy8wtGnU/hjF3JiybnneDg/QOh4MoKFvp7p268UyAzsSbUBsYIMfu9wgg2QLPRSnuwTBq4ItlM+bVgwdQamWQrV2SsMb/mFwfe1O7msTC2lFxHcOogUmVDcERzcqD9lDt7kZdyp7sbLmusrqeDlZE4eo4NwmjMiZdNqQ5LkZ+h+srKVHUbT94lGS7eCVRUc4w5s6UyIYUbd9CsjWcP68oD7l0hWTb7eSlKGcYc2fKZGuKjibZcODEuBzTkaNseDbA0NBbRR3DmDNTJttAS4uhKzlimddvO/aTcLyahFETUyYbUrh5A8nWGKlMQe4VfJ5kc/YNVpQzjDkzpbKhZChbyS5LRfndtAySbf5aZTnDmDNTKtubhga5K9mv0cjl3b398NMabW6S7IJSxTUMY65MqWxIwQYLkq0p6rKiHDMlo2x4eKJxOcOYK1MuW/35c9qupM1uRXlcYgrJ9rvlfkU5w5grUy7b6+oauSv5pq5eLsd8JF8tWkvCNbW0K65hGHNkymVD8i1Wk2zNsdGK8u263CQRV28pyhnGHDGJbPVhodqupK2Nojzk0lWSDaUzLmcYc8QksvWXl5NsL777mia79eU5haUkG/Lu3XvFNQxjbkzZKTYjyfx1CQmXExSoKF+6yZpkC78cpyhnmJmMSKaxMEnLhtSHnCbZSu2Uh2x4n9KuJuFDExlzx2Sy9RYXk2yZc7+FoY5Oufzh00ySDQ9NNI5nGHPDZLIhuSuXkXCt8dflst6+1zBfl5skr7hcEc8w5oRJZasNDiLZyg7YKcoP6laT+J9VLlhmGHPCpLL15OWRbFk/zIGh3j65/HrSfZKND01kzBmTyobk6kYlW2/elMswH8k/FluQcC1tHYp4hjEXTC5bzYnjJFuFk4OifIcuN0lUfJKinGHMBZPLhsldqSv573/Bu0HDIRth0fEkGx+ayJgrJpcNyV6ygIRrSzac15ZfUkGyIcaxDGMuTItsNf5+JFvlYWdF+aqdB0i2+09eKMoZxhyYFtk6nz/XdiXn/6gox42kKJuDV6CinGHMgWmRDXm54CcSruPhQ7ksNeMlyYaHJhrHMow5MG2yVfl4k2waN8OAyJs3g5QECIUrKjPkLGEYc2DaZOt8kkayvVwwX1Hu5HOSZDsRrsxZwjCznWmT7d3QMGT9NI+E05/hhtxIfkSyLdlorYhnmNnOtMmGaDzcSbYqD8NObcxHgqnJUbj2jm5FPMPMZqZVNjzPDWXDeTfj8l1OniRbTIJhHo5hZjvTKttwXz9kzptLwnVlZMjlF+Jukmxb97sq4hlmNjOtsiEatyParqS34QipovIqkg1JfvRMEc8ws5Vpl609OZlky1m2WC57kVME622cwNErCGwOe0N49A3FNQwzG5l22Ya7uyHz++9IuO6cHCrzCg6HqBtJupO5AawOeUOZpnrUtQwzm5h22ZCKw04kW/Vxf/q739kIiE9+qFMNwNLRQxLw3KjrGGY2MSNka72VSLLlrlhKf8dDEq2l7mNAeBS4B4XBsi176f1t2RZbPvWGmbXMCNkG219RAlcUrq+oiMpSM7LgeOglSk2Oh3BYWDvKgyZ7Xf2gttGQ7JVhZgMzQjak3GE/yVZ7Urzi/+3b93AuNgHmrdoqS3cqIhb6+t8I4xlmpjFjZGu9cZ1ky/t9hbBeT31TK7gHhsnCfbvsD7h+54EwlmFmEjNGtoGmZpIN6a8YO3/ki9xC2O3sJUuH3UzcoiOKZZiZwIyRDSmz20uy1YeGCOtF4MLlFdv2ydLhroHC0kphLMNMJzNKtpYrcSRb/ppVwvqPMTT0Fs5ExlGXUi8dJnxtan0F6Vk58OjZCxgYGBReyzCmwmSn2IyH/Af35a5k3r27wphPcf9RKlg7e8jCYdLXbfvdwNn3JFgf8oK4+EThdQzzuYhkGosZ1bIhePY2ytZwfuKT2M9fFsDqnQdhrfQe9+HDB5oYD7l8jQ/LZ6aVGSdbY9Rlkq1gg4WwfrzgYMl+jwASDT+J99PANeCsMJZhTMGMk61fo5G7km8aG4Ux4wUHS3zPXITL8UlSd9IVTkXECeMYxhTMONmQ4l07SLbGy5eE9eOloroOzkrdx6WbbekdLvBclDCOYUzBjJSt4eIFkq1o6yZh/eeiPyXn36u388EdzLQxI2XrKy0l2TLnfAMNERcpOZAo7nPABEIoXOhlw0GMDGNKZqRsnRkZULxtE9T4eEHVEWeo9vGB9+/eC2PHy6Xrt0m2XzbZQP/rAWEMw0wlM1K22qAA6LyVqBtHBKjYawMN4eEw1D3xbFsDg0PyImYcMBHFMMxUMiNlqwsMgI7bBtlKdmyVRyhxSqA+5DT04K7uz2ztQi5dJdlW7TworGeYqWRGytad9RLK7WyhztcbNM6OUGZrA0WScPo9b3ownQKez91y7Qq8rhx7PWRnVy98u3Q9CXf9juGMAYYxBTNSNuR1TS00RkZCa4Ih2c9QRye0p6RAtZ8v5K+3UIiH4Pac6mO+FDPQ0kKn5dQe94PKQ45QH6ad0A4Iu0Sybdp3WL4vw5iCGSvbeBhsa4e227eg0tUF8lYuGyVf0eYN0HRReterKIeqw07QfCWW9sOhbEjKY06Tx5iOWS3bSAaaW6SWMAEqpJbs5fx5ULp7h+6tD6Dn0UOolrqlGOcRFE6y4X64kfdgmKnCrGQz5nVdLZRa74J3DfUkW42XOzRHa1eQlFfVyq1belbuqGsZZiowW9mQjgcPoMTKEoq3bIT81Suh9eoVuc7ZN5hks3c/rriGGT+XrifB0ROhcPJCDBTwht0xMWvZkMGWFig/qE0mVLLHcAxVblGZ3LrlFVcormHG5uKVRMpylvggDfxCI8HZ56QwjjFg9rIhfcXF8qBJ17Oncjk+LCjbkeNnFPHM2OB2pTuPnlIXHT+H/E7Bi5xCYSyjRRWyIWX2+0i2cifDhPZT6X1N37ppauoV8cynwa4j5vXEz59//h/sOOgOucVjJ2pSM6qRrev5c7l168k1DIpYOriTbD6nLijimU8TfCEafrO0p3MY1lo5wvYDR4VxjAHVyIbgKhSUDU881Zfde5JBss1ZvhHaXnUq4pmPs3D9Lvrdth1wk3sHrzr5pNhPoSrZXt27p23dvvsaXmsMo2d/7HGmhyVY6hoZxzNiMCmuXrD8kgr598PVOaJ4RouqZEPy1q4i4WpOGIb8E1Ie08Myf60lvOGUd2Pyn3U76ffC6RP8Ox5YqZdvZCxjQHWytVy/RrJl/TQPBlvb5PKVO+zoYcEjho3jGSXXbt+TxSquMJyZN3fFZiq7eTdVEc8YUJ1s796+g+wlC0m4+lBDtq3oG3foYcFjqYzjGSU/W2hbtZHTJWcitduXftthryhnDKhONkSf4yTn1yXw9o121zaehrPoj930wFxLuj/qGuZPuGrUquGSN+O6nt5+uc64xWMMqFK2oc4uyPxhDgnXFHVZLg+PuUEPy1orB0U8o2X+2h30++ASLVG9g1cg1eOfonq1o0rZEDwHDmXLtzC81Ld1dMG/VmrfPXj7jZK4xLv0uyCa2gZhTGGpRo4ZnIQkTeaGamV7U1dHsiHGG1RPno+mh2WrvasiXu1gGkD8XbyCzwvr9azedZDiwqI4i9lIVCsbovH0INmKtm+Ry2rqm+DrJRb0wOByLuN4tRJ7M5l+D6RujOOVE++lUdz3Kw2/KaNlRp1iY2ryEm/KrVvuxQty+YGj2gXKm/ceUsSrle9XbqLfw8HzuLB+JP+7ZB3FX4y5Jqw3B0QyjYWqWzak3OEAyWa8/aa4vIoeFgRXSBjHqw39lAiC592JYkaCK3EwfrOdi7BeraheNuMFyt1ZWXK5i/9pemD0qyTUyg+/baHf4US4YdR2LBqb22RBaxs+3e1UE6qXDSmx2kmyGW+/ycovlh+YqrovO01ntoLJbPW/QdurLmHMx7A76k/XuQeGCevVCMsm0a5foCzRV1Yml9sfPU4PjLdKt9/gIAf+/w++GCus/xQZOYWyqKJ6NcKy6cBMyyib8fabtIxseli+Wrjms//LPtu5dE17NgLS2d0rjBkL/XrTmIQ7wnq1wbLp0C9Qxu03bxqb5PJdTl70wHgGh0Nz+/gGCMyBuSu0I5BnIg1Jkj4X/VacRRushPVqg2XT8W5wEHKXLyXhcHWJvjzu1l1YvnUvbLA9THkm7z15objOHIm4eoskQXr6+oUx4wHXm361aA3dJzO3SBijJlg2IxojLpJsuP1mqLePyqJu3KGXfPzUNbVIwnlCnZmPsE1Gq6bneGgk3cv6sI+wXk2wbEYMSt3ErPnzSLiGC9plSV4nz8GD9EySDT97jvhCaWXNqGvNBUxRp2/VBgaGhDGfQ5mmWr4fHmwiilELLNsIaoODSDbcfoN/j7mZAg7eQVBRUw/hsTdov5aNiy/NJY281hz4568bSIzJaNX0YKuG91T7meYs2wheV1VrB0okWq5fpTLcGInbRpx8gmDF1n304GBqgLtpGaOun83gLnV9K/T27TthzETAngHeE0d1RfVqgWUTUOXtSbIZb7/R09v/Gjx1B3MgQeejR8XMVr5d9gf9f5rMVk3P0s02dO9b99OE9WqAZRPQk58vt27td+8KY/AwRf2xwTsdPWi3gChutnAuJkH+D4io/kvRj3Cu2nlAWK8GWLaPUOF0kGQz3n4zEhwo0c/D4WoL3F4iipsNfPOL9kTWqWjVkJa2DlnmEpWmTWDZPkJn+hO5det8/uld2/oNp4j3qU9vrpyJhEXHy99fVD9ZeJ7Udr8dpXdfUb25w7J9ghKb3SQbnhMgqjfmXlqG9F6yhx6mDbbOUFGtTIgzk9Fvlp2qVk2P8eLuoaG3whhzhmX7BO3Jd+TWrbdo7BUQDc1tcNDrBD1M/1hsMSsOyQ+9fF0WQFQ/2Vg6as9WwORKonpzhmUbg8JNf5BsGrcjwnoRODH894XaZUpuAYbclDORrxatpe851a2aHn32aUysJKo3Z1i2MWi+Ege5yxZD/u/LocLRAbrS04VxI3meXQAW1o70YP1uuR+KyqugTFNDGahE8aZmePgtnLoYR98PEcVMBW8GhmDBOu2hHI+fGzbrqgGWbQzwaOAaLw/48Ndf0JP6GMr22sBwb48wdiSYuBTXVeKDNW/VNthi5wqOPifBxf/MtCYyTc14CQc9g2DF9n2wZKONJN3n71f7EvDfw99ki934ewvmAMs2BvXBQdD7LF23MhKgZPtW0Lgcgv7q8cuCZ5lZWDnA64FBuofHyXCaMgiLiodrSffg4dNMOna4tqEZevteC++hB+erjhwPoTwfeI0oxhgUHjNiFZZWQnpmLmV7xof8eW4RfRf3oDCIN/G7ZWV1vdyi1je1CmPMEZZtDDCnZK3UssGHD9D7JBUKdKfg0CjlQXvofDZ2Mlc8s/uARwA93PhJSXsOP1tYyg/cSHB94uINVrB+jxOtK8S8+riuEI8ltnbxgZTUZ+B/NgJ2OXuRfDj1gFmKcWc5HkqIE8e4nOybpdq5s5Fs2uei+yYAqS+yIeAz8otMFjj8j98FpwNE9eYIyzYO6k8HQ7mdLVQ4O1GuycLNG2ThkMKN6yUp4+H9u/fC6xEHryA6vyw9K492DuxzO05LvVylVmqPyzHYYHuIpg7mLtdubxHx8zpLSH5sOMd6l5OnMM4YnKxGsXEB9Rb7I5Ksx2Dj3sOQ9OAJDA6+BbfA0Gk52wDf1/TfUVRvjrBsE6QzLRUqpe7ki+++lqV7ueAnqA85DW8aRycIyswrogxVmLULJ5FH1huD6y8xK1VuUTk8epZFO55xqBzPrT4WEkmivXv3p9RCHaYWAu+Hh17cTX0Oz17m0/sgds+wCym6f5rUmrkGhFBLOZH8IpOF/hDFuMQUYb25wbJ9If2aKmgIOwt5q1YoWrtK18PQ/fKl8JqJgu9dTr7B4HzsFFhJ3cvZvDwMidJl71qy0ZCzc6I8k3oMJ8KjIFLqVr/qmpnHDbNsk8TboWFoS0qC0r22CumKLbdB661bMCy1Vk2x0dAQGgI9uTnCe4yXrPwSEk9UN5to7+iGH1dtI+FORcRCd8/EUjDcTc0A60Pe4Hc2Etyld0DsmoviphuWbQroKSiAmgB/yF70sywdDqxUu7tCra8XlO6xhs509W41Mcb2iB9ssnMBB6k7bOt6DF7kFMp1XT19UF3XCHlSdxqnKxJSHskDQm4nQik35db9rrBiux3EJz+k7jV+cHOvR2DYjMtmzbJNIXgOXMuVONoXV7p7p+5RAOi8dRMK1q+hpLC1gQHQHBMFHQ8fQl9xMQx1dAjvpacz7THUSdc0RkbAQMvszoVSWFYJuxw9dL8KwPkrN2Gx1KXU50AZLz+t2QExCcm6uwCss3GS63DDKo6+4uAUCjudR1mxbCYAE7+W2droHgWAVzfiIWfxfxTdTWOy5s2F/NUrocR6F1R5uEG91PVsvXkT6k4H030apT9rvT1Bc3R2TwpjXs5D0vun/pNw77F8OP6c5RspBR7OT+KoKy4G8Dl9gXbNRyfcgdsPnsCTzBxqvfB/27j4gGvAWWodceTX0TuI3gX10hmD0ypYfyP5EW390X+fxpZ2uCAJ7x8aSbvLjb/rZKDqU2xMSaGXB1Q4HIBqnDrYbQnZ/scg58xpyJbKX+63g6ytmyFz5a/w4sd/CQVEcpYshI6bCbpHEyTxrCFr1Up4uW8PZLsdgRypxcPTePIkmfMfPYKCnBzhd8mNj4cCT3fIP3gAcv19hTGmws7tGHgGn4OQS1eplTseck4YNxZpT5/ByfBICI2IUZRnvMiEyLjr4HIsCNZZHYRvBXOPXy+2gPXWDrDV/ggtOMAVLphF7czFKMW9jBHJNBbcspmQ1luJ0BwbA2/qxSd36hnu7ob+8jJ6r8M8KHVnTtHoZv7a36E1+rJONYCiTeuFUhqT9fOP2m6sjZXUErpS61hqvRvqT/hD98MHUC6JWhdyCoZ7eulwf9H3+Ri4brTa2wPqzoZAf+nYq1lENDS1wvnYBDgWEkFTF6KYyQZ3Z2B6BlwIgPOPeul2OnrqflmAeOn90GeS9yaybLOIrswsKLffB9XubtKfe6Em8ARtbG1NvEmp96qP+UK5w34o3LoJcn/9BV7M/VYoYJnNLt0jBdB9967UYi6Q67KkljVbakHz1/wOhVs2QokkaYWTA6Vlx/fL+rBQesescHaE8r02Upf4OjQE+IPmyCHhd54t3HmYDjsOHNX9KgAR126B9xinrH4uLNssY6ijE9qkFrLt7vgmgoe7pFayokKWssrXG4q3b4G/3g7TQ1Xv7wf5UvcVE9NmfPsPhZSfAgXtTE6ie+CnfI+VJOhvoJG6xc1X46AnL4+mO0TfaaZyPu4mjWTi2lNbVz94kTOx7uLHYNlUSHvSbSjbZwNVUtdUI9FXaBhuH+7tg4HmFnitqSRhup6mQ3tKCp2F0BgZCfVSl7baz5davcZTJ0m0D//9LxRuWCeUMlcSudzxANSfC4fOJ2l0b+Pvgv9eU0wMdWW7Myd/UOJzSUnNoMUCnd3j29nxObBsKqWvqBi6sic+ud6dkw2VUleyyu0IbTtqiroEnamPqZtZftAe8lYuE8qHYNbpkt2WUCO9N+Ka0xovd6iTBMaR1o7UR8J/byyGXnXQiO2rj2RDmwmwbMzEefsOuqXuqfGJrcYM9/VBT04uzTXiOx/uen8x5xuFeKVWltQ64qcj8Qbk/74C8tauoqxmpXv3QOVhJ6lr6kmHnTScP0f3wpU6HZLYuByuv6xManmTqaWu9sB3WTtovHBO+H2mG5aNMTn9Gg0JgqkmSi236VQDaL9+9ZPzjx8DV+q0xkTr7gJQsm0zDdhgS9dbUECju6LvYWpYNmZaqT9zGqqcHKgriaOb+H6IrRW2Wth6YSuGrRm2ati6YSuHrR22etj6YSuIKSs6E27oVAMotd41Ssg8qcXEkVpcINB2J0ko4XBfL03N1J09DV2TvIgcYdmYaaf19m1ouXZl1ODJeMFWEucLG4MDodbbQ+pS2tLcJKYg1J+5JyLz+39S17bSxZkkLLfbCzWeblB7zIfeQzvSHgv/vYnCsjFmQUdaKtQGBkLTpUgYaFWmWng3/Bb6SkqgNSEBao77Q4nVTni5YP4o+ZTrVxOgLuiE4j5fCsvGqJa3A4NSd7IQWuOvQ7nUlS3esVWnmvT+GH8Nqv2PCa+bKCwbw+jAOUSNs/T+KHVFcUpist/bWDaGMQI3+jbHxcKbxsk/lYhlYxgTwbIxjIlg2RjGRLBsDGMiWDaGMREsG8OYCJaNYUwEy8YwJoJlYxgTwbIxjIlg2RjGRLBsDGMS/oT/BxvHGV9fKuq/AAAAAElFTkSuQmCC"},{type:"echarts|line|smooth",name:"平滑折线图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAQnklEQVR4Xu1cfVxUZfb/njsDiEhCiqalYmpmCDMDM5YvzKCCu1quCpSxWq1ptlu7lZ82K3tRy9q2N922F1Pz57ZGb+Bb7a9aUJwBTWPGmUFNLVOzF1MhQVDEmblnP3dwaD4s0J03GFvuX8Plec75Pud7n3Oe5zznXkLnFVYWoLBC0wkGnYSE2UPQSUgnIWFmgTCD4/MMMaeldT3L52cw6CvDrootYTYev+AMnzClH4nKKQKwzV5caPVLSJA6+URIiS7psuiEvjsSJkzsXmMxK501NRtHbPrXzCBh6RAxKeOyUxMSemy5JXtSZP7Gj52x3WIeLVzx4ksdAgbwLahv049a1m/23Hv73XqbG++OrHG1qDyVMtJmO9JRAwhU76gptxxZuuiBASPUyag5XYvMm+9oMH/0bpdA5frbv8UZYjabuSWBjvWFuPyqoWgiZPJEKP54H4SePf3V36H9nl2Rj29+OIFli+fDQ0hW3p3Q61TIm5wZMmxarbZVz+Szy+qS0HdnwtjxV9TYbILzdPXGaz/4eGrIkIdQcEpWzjIC3csi1yb0vFQ5M/t6yt/wEZ8/fx7Vp2ujAV5jLyqcFUIILYr2iRBJgjuok2gGYRgYN+rN1oL2Bh2ovuGZuRkKQokkx8UYC8HxlUKMmApwmZMEVjJvBaE7g/9WUVR4X6D6fOnvMyGScJNW/SyIHiDgmfRy68O+KAyHtqrM3BIQMlozeFLWjWoPKRJhe4oLtrYXbr8IMepU0wnCO8xcZDDbJrQX2GDocRsbbAWjhpzORNvWDdUtyU3Oyv6dAOH/AD5CDpemtXbBwOQtwz9C1OohFEFfMHO1wWyLDzaoUMprih0y3FFKVu5WAgzMWFxRXLAolLg8sv0ipNFtac6A0DXCwQMvpmWvKivnMECJTpBmb9H7traMrM6YmsgRysNgriane5aEfHkfACHqEhBlgJGrN1sL2+PpCVTHT+6Kv7YXFybKkec1o/5RUVT4Ozl9AmnjNyFGnep5gnA/RP6L3mJbEAiI9uqbkpm7iAgLGSzbuOqMqXGsVB6RVl3kcA4M9Szxm5BSrSaPCfnM/G+D2far9jJqIHpUWblSnkotijxt9+bCDXJltecs8Z+QEaqrmIUDF0tgdz/pEcpTEgn2ogKfxt0slkizpMWVmVyC22rnE7Dmgkw69Y8AxQvsunqMueJAMAD5IsOUlpKqvKT7a1If16naB10ROKN00ndjrNbvm8tJHp8zVRBoPQPGiqKCDF/0SG1TsnLWEOi2UK+4AiLEqFO/S6CbIOIPeot1ua+DDKS9UTe8X1TPPruHLl7SXZKz/7EFcPz44wWR/DkYC/Rm20aPjia34+cS9qfdPR+xFxUODAS7zzOkteRic0FOkxHn314LRaoWUXfcGSqMLcp1bClG39690f/WxoXP0dVv4Ou33wKfqQM5ne57irHjEHVTnvv3g8++hspTNVh4z+3o36eXX1jn//VVVFWfxt0zs5GadJVfMqROQUsuNkewPS35aqeg3AfwKX257VK/EfrYcW9SUmRldMTWqF69Rqbmv+fuvWvm9LqGH37Qx7DywFlyPQIi98qPmRffFT9kg2d3bi8uiPNRXVPzlMzc+4iw1JdVmq+6AnJZkjKjTnOMgMvYRdcYdu3a5ysAX9szoDBp1ZuIaJIyLr7adfZMFwK7ugxIXKDNf6/pYMmUpp4DgVZK8l/v2mftnsiuM5mxsaK4wO/stPfCgBzO+FAE94AJMWnV+SDKg4i79BarO8CG8jKmqR4lQXiSgSoBzhHp5bsPtabPqFXdSSQsfyb2Cv5OEUUixFm7i9atCQRfSmbuBiJMYca8iuKCZYHIaqlvwISU6tRzGfQ6g98zlNumBxugtzxjWnIyBOUu6R6Jrmv1lgr377au9Trdk4viBjzq9t0N1alvmIoDOjP3rNYA2OxFBZqf0+/r/wMmxHgh0RjqOFKSmNhF0TPOBqKhEMUn9Bb7QjmDVWVOmwVSrL7c1YAHT39TojfbMgkQ5fRtrY0qM7c6VDv3gAnxjiNwIklvtX4eyGBbdT86zf0EPM/gL3uedQxP2rv3vBw9HhczpqHm3PT6yi4Q+Xm9xfaAnL6ttfHakwTdbQWFEJNOvRagGQS+O73c9mogg22p7/aRV0Q7HAlHidCTXOLk9F32D+Xo8A7CExuqZ0+sr1pBgIIh5hjK7evkyGipTSjdVlAIMWo1s4mwCswFerPtRn8H2lq/0jTNPSzgbwyYDeVWnVz5nmUquDG7a9Sp7yXQMgbOkegaLScGtbfbCgohn6rViY4IOsyMGr3ZGk9Ai1Urcg3ZvJ1Jq/kahP4CY9IYs/UjuXI8Zx/eR7UmrXo1iGYxozJCpJGjdu06KFeedzuPKwzGys1bblAIcccRreZzIgwTRDF9jMVe5s8gW+pj0mkMALaCcTTdbE2US7Z3IYP3YdSFfcxHRJTF4G8jHUj354DNc8Qb6N6m+ZiDRogpTf0cBPqzD4UPwvDx08bv2by+qC3yjFrNKiLMBvMjerPtablEewIvwHZ7UaHau589JSWmJlKxHYQUiRRREEcKTrpGb7EXySW8KQPsR/a4rTEEjZBSrTqDiUrAqNCbraq2lE69fd6Ew99++9HEjNHHTDstsXV1Zx9nQbApHA679+5XeppLdepTAMUyHP0N5Xu+kUOIt7Facyk7R1zdo0GM3iKRooiOFuPH6E9WFn3Sq9ugQVmp7xRslqNHlZVjA0jl6/lKuxDS6Ao0VUTo7hJc/cburPi2NcXX/WZm5bqVL/bo0ysBHxRtxVMvrcK5hgYp8VTNoDWC07lYIsaUpr4eAkkrKou+3KqVYySpTdPsuBDMW+u349rBl7i69jky+MGH43v9aiLqv/sW1t/efGK0aVtvObq8TiCDVr/lUynpz4FsWLkcrl0WROXNgELf8pFD9elaPLMiH0Vvr3CL++rIN7hrwRIcr/SkzoGe8d1x9y056L35Y7i2lSJi8hRETLrh59S7/7//0FE8tzLf/fv2G6/H6NTkNvu5XnsZwx99HF0TB0qJSOy4YSIiFjwG6vLz5b1Hj53A4pdWu/H+df4fZOGTGoUs29scgTFN/VsS6C1mLjGYbeOa/7+xyEBcf2l8XOKQxP48Y9oken1tYd2eL76YUVG0bpM7ULKwTNoFS7Pl5nMnI0Y31MaQE+p0q9UuZ8SeIriWYkeLi4Y09dTYpOH/7Df3zm7frX0TdQf2w1Vba1TWO7JH7d3701PSinLPrl1OFYsc/EGLIZKysqFDY8XY6EomUnSh+t7Xfra/ygOisRpQlCpV4iRjwSW+Hd01ZkD9ufqN9uLCTzztpM2cqFSukRJ40r3pZ07WLNhulJUy/6m4rbFEVG7FYZlWM5Gjoyfz2TPHWKBZBBrI4O+IOVtvtn/WliGDvWsPKiEScJNWvQFEUyDyHXqLbZV0z5sMuWcJt+h/vbkiqpt7ljFjWUVxwby2DNNMh98+XXqoXLFd3yXCRAacxOJ8vdm+tDXdgR4NN5cbfEJ0qpmA8E8AH+vLrRP9IcNNrE5j3BEZq3+rq+d0j9eQwzWv+RlEyvjsXAC9iOgpz+xrvsyV4yqatzFp1fOZ6Gl3qoWxSVF7duaYAwdqm7cLpHiiJVxBJ8TbbZmE2GEFsQmfSYaSOzMkkNI+oTpKUSP9XnhJ4g2nSPGOO64ANhdjnscVjb9pTsXQQYn9SaDYPfsPCtU1tW3W6/pKjFGnHgVgHYF6M/gwXML1LR3CeZa/vrjJ1rAEnZBGt6WRDDh9UeyAr6oUykFSzCCHK0PuCVupLmUyQ7FJEqUvtxq8q9HdA2FsFSEezrhOO+OlJx+OlG79/qEnxW2Wigf3FBc876vh22pv0mgSoGDJDUvk1LPIcwwWW+My7sIVaAGFt6yQEFKq02RuiYorWhfdQzKez0+tSad+FSBpHblQX259QgLcPNhL98aM0ODlJY1Fk3c/8nRN2U7LnIrN64L+voq0xyrTaZYw8FCj8Xhln1N1fxpy8GCD9Fcw40hICFFl5mhA5D7NSztfO3e18RP32bbcy6TVfA9CHxJd16VbKnZ695NyVAJwHwhxl3a/JG3YkIFChDKC9x44eGjze6tS5Orwp520GnMBb0ubX2bsVvD5G8ZY9h5tiiPM1fbiwoDeBgg6IRfASW8nqQ0N1cg5W7XaYLbOlmuAbTq12gWyys0cXwjqCMXMaAlzWVpSfxdFfkiEZAmjAsiTMtCqzJwjIBoQ6H4k6IR40gkCeO9fqg8PiWaRI+odfeVsstzxR6d5DMAT7XFGL/chad7uy8GDo76P6/YSEc11b++B5+6Ju/IyJuHWQIsfgkqId1JPWnG8WnNwBkBzpNoog9km64UXo079GYF0AM/Sl9sCqhDx1+By+13ITEh7regtkbGHdkfEXtmte2xdfOXx25ZtK/HrRDKohDTtWi+U+5dpU4aKEPYx6HQMCwO0Fot7Kdva5c7AcnSl9NRFCecSvHf6co3U3u2MqanDoBA3rkpUDUlKHw3V8GFYm18g9tq/O3dp2Zb1vuIJGiFNB0KNqyq15z0Ko1azkQi/YeanDGabuxyntcukVd8HoqUMlBrKrXpfB9NR7f88auw9564duezvLz7ltuf/bynFBy8v/3z5+vwkXzEFLdsrvYR/4PBRTB43GlOz0ptw8LFjqH/icbBSiZhnngNiurWMkRn1jz8CrjyJyOl5UGb8V27S17G1W/vaEyfxyCtvYtuHjduTJUuXg7/ch0mzb20RQ8izvU1VGK3sOYw69SsEugvMG/VmW4ulnMY01QQShE/ALLpY0XusxVLZbhYNgqJ7p9xUUO5UZKsGJ4p1x0/UDzq85/JFO3ee9lV0UFxW05tJrZRqliYnx3MXxVfSuyRg5OnN1neaAzXpNGZp2wLmDXqzbZqvAwmH9vePGjfgPDD279u3+L0YCZgQ79jRVmW5Jx3CzGcATjeY7U0lnaVa1e1MwhuSURk82lBu2x4OBu4IDAET0vRVBBkvwhh16sbviwBVkbGX7BS6Ric4a+tKnGfq5lJjAnK9odyW3RGGCBedAREi96sInsG6z9116veVMd2m9cm9EX2n5+HQC8+jqtQIbmg4CW5Q6S37joWLcToCR0CEeO07ZB8I7Ro6tK+YPGxP2vvr3TmfhhPHYb1tZkNDVWV6RrmtvCOMEE46/SbEe1fu6/vbn45NP3Tl/IcG9vr1JBxa9iKO/+vD/FHFJTPCyTAdhcVvQgJ5vUs6Y1DGx+6I6pHgctScOqysqrlBa7E4OsoI4aTXb0I8dbOBFIltT0q6VG7SMZyMFkosfhEyLDP7ukgSPvVUlYcS4P+abJ8JmXzbn1aeqT+bd7b+XIxSqVhXtv7NnP81o4VyvD4RkpyZM1c/IvXFl59aEPP9Dycw6da7ff5MRSgH80uQ7VNy8Z0PN2PqpAkYrWssJl/4wisYdHlvJA0J2YcNfgk2/q8xBC25mJyVM0lzzdCCx+f9Pnr3vi/xwuv/qCzb8GbCL9JqHTQon1yWhFGVlT2tR3z8A+fOO6pO11bP2bN50/EOwv6LVOszIb9IK4TRoDoJCSMyJCidhHQSEmYWCDM4nTOkk5Aws0CYwemcIZ2EhJkFwgxO5wzpJCTMLBBmcDpnyMVAiNzPxIbZWC4aOEHL9l40I76IgXa6rDAjr5OQMCPkP2b1bLpy9/7qAAAAAElFTkSuQmCC"},{type:"echarts|line|label",name:"带标签的折线图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAANWUlEQVR4Xu1caXQb1RX+7kiyY1Mch6UE2lMCGEJiLI2wDFklJ7ZD2dqAbSiFAGVrgbKkC6dQaB2gBU57Qgsp7SFAE6BAausEwm4rxFYWQiVHIyWGAIE6tEBZY7M4jiXN7Xky5jiKlpmx5Cix5u+8e+fd73vz5t1tCPkrpxCgnJpNfjLIE5JjiyBPSJ6QHENgBNPxVsrzQbiOAZmISsHcTsCi2X6l3aja/BtiELkYGRKtTCROzHOMkpInxCghDrkdRK6E4swdTr9SbUR1nhAjqAHwVtk5mSgz97j8ygQjqhMS4vf7kz7MyEP2R5m+Ky9Pbta4IhTffU/S+w6HI+mLMGbeELl6/qSoxXKkQMkUDm9X2p/sHslC8ea3LGPwydXzS9liuhugi3fXwMsoHF2otD/ZY0Rz/qNuBDUA1tqGJiL8NpE4MxaFPC1NRlR7K+3XgPgegPsZ0i4ijAdzBwFNRk9YYh77/ZZlq6tXALIlAV0JtrXY9RKyzm4/QjVjG4AiNRp1Vm8KrdWrI9n4MUBIQ8oDSrCtRTcGHQ65lYjqmPl+l1/5cabIGBtvSG19N4hiH/M9LubtQY97kh5AOxz2C4mwnMEflO5Sj7GFQl/qkU83VvfqSKdwJPfXyHKpZMFFxIiBxIRuNYzlcxTF0IdX6LDW1K8iic5MyAd4eajNHfexT27BhvLyg8JFBW/Hvhcqn+HsVJ4dib2JZHOGkJdledKAGYFYTGjYJZysggjs0xVF9zG1Yl798aTiZYBKKc5SZoCi0cXBNSt/rhXUjip5BYHOAWOF0x/4gVY5PeNyhhCvQ34SRN9PPHle7vQpmley0DG1urHMYuENAA6Fyvcz0WsgHnzzGCYCrhKHGiZpzua25o50oHkr5dMh0TPM6LXsHDh6RlfXp+lkjNzPIULs3SAk3OsZ3O3yKUdpNVA4gWwxbQDocGZeGvK4r4iXtdbW/5qIbmfmT3ZR2Pp626r3kulfN3nygdGS4jcImMjgC1w+5R9a56J3XM6ETlKGIgAU/3WpJts+7fkMv//bI9jR+zmm28txaeMZoPj9KvaWMBY/tAKvbuvGkUcchpuuuhBmkynhM3Y9uhzR9esgTZmKcdcu1DSPVIP2idCJt8quAEjmLwSdvoCcDony6saJJgtvIOAoMK8IetznCeyTyR1d2zj+QKjBwVMY/yXY5v5p/NiOKruTgA4w+pjCx7t8W/6Tbh4juZ8zW1aHQ24ioiQeNa9y+ZUk35dB84+rPvOQIkuB2KaOZfBzoTa3OFmp6cCpqG2sIFJ9BCpk5oaQx+0eklkzadI46dDS1wg0Caxe4/QHl6TTN9L7OUNIu73iVMlkeg57HodiK5wZF7g6lccSGVwx6/QJNG7ceiKawswey47u0zo7O8NawamoaThfkvAowH0qoXJzq3urkPVWyn+ARL8A8ytOvzJNq76RjMsJQoavREnlZUxYLowyR9A9YOGTiOnxr0hZEE9K2amnlhSHi9cSkZXB3j5z37xtzz+/Sy8o1tr6+4joSgDbPvmCrCsib06OgPzEHDWrUvmMTZtEqCTrV04Q4nXId4Poega/q37UUzanu7t/uOXeKtsFYHp48HtA5zj9gdi2Yp037wBwiQjoVTLzxk+/lOb+9+XmnYZQq642Wy2HbBS6wOy+t/et4wEqZ+abXX7ld4Z0GhDa64Ssr5LlKGOTOAoRUDfbF/AkssNbKV8GiZYyEJUQPes882TPQQeoLxHRNAY6QZ+5Qq2tIwpjTK773hGFbAkR0cFn932MOQM9XbN9io2AqAFsDYnsVUIYMK2tkoODKxEPu/yBi1JZ0eGQryaiJQOgyG/HH7n1CzKdwMyhPkvf7G3PP/+ZIQTihM53nvbDroKiRwUw0wd6L77P6xFv5qhde5WQoZMVA58USp8fPe2VbWlBbT3pxBseKJ541+uWYhSy+s7O/l3y5nXP7sgUYl6HvLG1cMLJTxcfLA4SH0RNNLXrxeaseOWJ5rzXCPHa7VPZjCABZoZ6rssX/GdaUBsbTdYedRWBTjs0OoCFn787MF6NfHdWZ3BNWlkNA2JJJwn3iMjAdePLtjDhDDDag56Wuan8GQ2qNQ/Za4R0OORNRGQH+BmnT0kYjY2zQrLV1rtBNJ+Bf9/cu/2FiRy5koF+Yq51+pX1mq1OMDA+6XTtIRM3EZcIZ7WMgTtCbS03jUS/Vtm9EjoJe1oRdjcD44pQtOh2UElJyvmqKuP+J56Cb/NWTBh/IG76yQIcVFqCgSceQ6RjDWApQOG118NUdqxWu/cY1//nxVC3vgbzLCcKzl8Qu//ehx/jtiXLMBCO4GeXnIvyYzWH01LOI6dCJ+vt9iOjZrwm0p8AX+H0KWmDVNba+oeJaAHA71M4OmN4xYi3Sr4foMtFaANQ5zj9wX/pZSVV0slaW19PRC1g7olAsnV5mt/Rq1/P+FHfsrxVdhHqdgpH2OkL7Fb5JypEVIvpIjANZvGIu0nFVEgkorUfhcM049X25j0cNK/D/jAIC5j5C4CdLn8woBUELUknW139EoCuFie66PtSVVdX84BW/XrHjSohax22S5ikBwHsNEUwZWYgsH1owrGQudkUQFyCShx1GOhhCdOHQhrxRgpvca3D/jgI54p8hXhTtJKiKem0u9P4UNDjvlQv0FrHjxoh663Wb0YKTG+I9CeDf+nyKX8cPklrbcOTREgYQGTmp0Ie9/xURjEgrXXIgx99Rq8Z0Vkz/aEtqWT0JJ2GO42qigs2r27JSk5k1AjxVslPA3QGMwecfkXUUu4WibWlKkYAdwfb3Gm/qMLR9DrkVUR0GsCfSqzOmOUPvZ6IlKDVekBPofQWgQ4jVi+c7Q8+km4V22rOngNJeokZ/dFodFrXmpXBdDJ6748KIV6HvR6EFgYiFIHNGQi8Gj9RW11mynX8lZWWPoqKqHEtmD8ycWT6zM4tb8U/b+gwwMxtLr8yTytwFXUNN0jAXcz8dp+lz56pCMHQ87NOyMaTy0p2qd94I7YSgdtn+wK3JDI+dUEbB4Nt7rQJqiG9b5aVFb4/4cBWcXhg4H9mNTxrOCntJ1pnSyaTVxwCTFGaPCsQSJq+TTRXa129cE6F79QabGs5RSuZWsZlnRCvQ34IRD9i8JsHqKZyR5I8RUVt/R0S0a8STdpIyeeG6d8uikQOFRWFlQDvAGMrA1NEVQuz2k+gcQAbSjqJKLNwGpm5DKC3CXxQ7DDCaI8Ci7Z4WnKzg2poJcYS2OBpqXwEa03DahDPjc9/s87aqeGE+isrx/chqkD66hgdx/ZIOp3Ka8662iyZEmYQo4w5RknJ2hsiVmg4csirIv3JUO9x+YLXJXtlbTUNt0DCrcL5iqqR0yFZCsRYcyTSPeK2gUrbOkjSzITPHkGnk7WuQfQTJuygYqAj1NaSWx1UXoe8GEQLwXinmKUpjs7OvkSgnFBzVp1JMon9HqxGTw2tXvmClr1W65hsdTqlPIQw9wQ97tzpoOLt27HzzttjmImyGVE+k+j6eEcvFt37d/Tt7MeZc2dift1srThrHjeSTqdUD7n0xjuT3i4qLMSSpuTlQqMay9KcdBLer/ngTpELz8ZpZQitbHU67TNbltakk7WuYSkBl4F5++eQbG97mns1L3sdA7PV6VRRUz9fStIWnTMfda1Jp6GyGwbvYpaqNnuaN+vAWPfQrxr8r2eQnKlOJzEJQQpJdD0xZMRCQuhQGU1GT1hCZ0ZPWVqSTrsVpgGXh9paHtCN8H4skDFCvA7bQpC0OBbYG4geNzMU+jAet7jSzUeDbe7BTFD++hqBjBCiNelkq2t4EcC80cgr7KscGyIkvtMJwJkMHENEeySdhoD5uht2lDJvY4aQFJ1OKIhg1nRlz2ID4fxJJIm3Ayqrp2xZvbJtXwUs2/PW/Ybo7XQqr238jnmw5L+UGU0hT8uibBu1L+s3QIj2Tqfy8sYC0+GqL9vO375MQPzcdZcB6el0WrriaWxUunBwaQmarr0ExUXj9ifsDNuS0dCJ1k4na13DZQQsHS3nzzA6OSaoe8tK0+m0yOVXmqxzzz6RJGkjCJZsFgTkGJYZmY5uQsSR12TBnwCKq1QfbF0edP64C4RvJeuAzcjM91MlugkZwkEcfyPmwT8uiE6nocb+r50/oDMU/nga2tsj+yl2WTHLMCGJZmOrO/tWQLpFZP76KVyeqvc7K9bsB0ozRkje+cvMajBMyPBf5nF0IGySzM/GKi9U/Ca4uuW2zExv7GnRTUiyX+bFKnBVeim0uqVm7MGYOYt1E5Lql3kq852bPe4bMze9sadJNyHZ+GXe2IM9ucW6Qyepqi3EYx68I2HxYR7zYQhkNHSSskrdwC/z8kztjoDuLctaV7+M9vDSB5WOpOwzT8wgAroJGex0MiuiymI3EBm9FInIIy39HOvE6CZEABbrBTSbLx76ZR6YuqVIZJnRv0SPdRKG22+IkDyA2UMgT0j2sDWkOU+IIdiyJ5QnJHvYGtKcJ8QQbNkTyhOSPWwNac4TYgi27AnpjmVlbypjR3NGY1ljB7a9Y2l+y9o7uCd9ap6QHCPk/ysy8pytV7tSAAAAAElFTkSuQmCC"}]},{type:"area",name:"面积图",icon:"icon-fsux_tubiao_duijimianjitu",data:[{type:"echarts|area|default",name:"面积图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAQzElEQVR4Xu2ceXxUVZbHf+e9V3tV9qWyIIvIIgESkgABQVFoRkFw/Xwcu1tGP70MLi32jHR/erS7P9P22Nug2NoqtHTT4zi2CAK2yrSiJAFZEo0whF32hEBIKpVUVWp778znFoQPhEryKglQaN3/IPeee+753uXcc88rQqLElQUorrRJKIMEkDibBAkgCSBxZoE4UyexQi4zkIqSontEl1Ora96O1nUCyGUEsvkfpu+wDx8xgGTZ0Lar9mDZuo/GdO4+AeQyARErI23K1OWjFj1vFV3uXPBYi2vTpu92XilRgVRXV/Nl0vNr00142xbY9u9DwaLFkTHHBORrY6XLONDy0qK1huSU2x3DhzOZzL62XTsTW9ZltP8FXZWXFj5PoMcBDkPDPhD9LHGod6Ixevo9Dzoz0x9oa/PubvAc/+HhDRv8lwJYRXHRfEj4A5jFMbANhMapVV/c3lVfX8tDXcCYUlr06r/88wOGNes+xnufbNy4/s2lU/obSOW4sbNZojUgkph5JxEOR1zeBJALTT3jvu9/8sqvnrppyMD8yB/um7/w8N49+6d9sWF1xGD9USrGFYyBbNgCwALmQyDUdshNADnPwgXfmDvAoliq/nHubdlPfO/bqKndg4d//Ew44A7m1lSuaOwPGJ9MGJMvaXIVAU4GnyRGNQjnPNcEkLNWHjv97plM9AYBaSkORzgjPTV8/ESDSZIk8vna9/kpNG3vh2vr+wJl+5gxthajXEWEkQBaGbyJAPV8mVcFkE0FBddO3rnzy74Yo5u20ugZd/+MGE8TkZirdczYwcRGApiIygDYmHFUBU2p/WjF0d7owYBcUVL4ARHNANDO4I0EBDrLimsgNQ9+a5Jn//73bIOHNAVPnz7Rvnv/jGmHD/ebxzNq5r1pssarCLgRDJWBWgI6G9zIQBkRHGDUB4lv2v3hyv2xQqkoKVwGogcj7i3TRhB7osmIayAbbyhzjVm6LMUxYgQOLn4OJ1atfOmGik2PxmqMaPXH3nzveEi8CoQ8MNqZqIqYW6PLZgPOrJQkZm5SWZpau37FLr16VJQULgTRryP1mbcK97artjEDuVyhE+3kScjvrsa4l5dEdPfs34faZ38J5ZEf6LVDl/U+3FSNFe9/DFXT4LBZcU2eE4okdStX1VR8ebQe7f4ArGYTFn7vmxiQk9WjLurnnyGw9JVIPTkvH0hL67bN5GXLu7xuXNF7yCfFxRnmVMfRrNlzLFm3zcKhxc+jZZvwFPGLqVU1P+3RElEqDJ88x2GyGF8nwhyG8GxoDzHrPpuIWNZAEwlIjRzKrM3c8dGqiFLRyobxRWXE+JgAMxhfgnh3T3rHvEJ6Ethffy8vLdpMwEQyGP0Gh90TON3kIcI14iIF5nKlPXTXpNraZr39FUy/c6RE8nsEDGbmAEGqBtilt31HPWbIRCgFISOy1TFm7lj/dmVnOZsLCwcFFRIeVUbEvQWq9PQVd0DEtK0oLVxJoDsB9gFUCXDozPaLJAIJY1gYXAfm22+s3l7T00BHT7/rfgnSH8+2cxGTME6wp3Zd/Z3BEohKCMhicACgWTs+fHt9R/3K0aNTNbO8lUDXAWhhsJhcF7i3/XaG9HYQettVlBT+BkRPgjnEwEYieC9sSwYARQCywBwE04Kpn9W8HE3+0FtvNVnDthcJ+I4IFzHRAYmxV7DVq09X9TSACCgmghOMkAbc+38fvb2murjY4JW0cgLKGPCDuYJIP/y4WiHlxYXzSKI/g1kDYTOArrcUhph9wxC5O/DbiuH0A5M2H2/vMOCYb9w7GBqvIcJoYTAwakA41VcQndoTiIoAzmVAY+C+F1sO3EGg+xkIE6NL9zbuV0hladF0DVhHgAzgM4BP9Gw8Sge4GCAjM3ZDUmfduG3HodE333MrSfxXInKA2c2gagLOwepZbqw1eCyIBohVOM/XiNJgK4NoC8BNsUqKixVSXjx6NEjeQkRWYm2P2Fr0DoQYZg1USoRkDdz2O0f+/x6TzZFkATCOMKiWwJpeeb2tl60GJ5xUjJnioJvT3lQ3I9jS49kWra8rDmRLQUF2wKJsJ1A2GMdAvD1mozCkFkkZvcyWPeCQYoGIZzNjOxMdj1lWLxqMDXnSH/KenPiOJZ02mFMiEmb4Xbvm+JsOxiruigI5G2zbLPZ5cQMmYMv5kU+9g9mp2FKX27JL/SQZM7Qgvu9tEBu662VbblWLpPTam9LTf344YHvCVzfFyKwclM3+P9my1RZJsYm2k/3ufff5G/fpkdNR54oBEcG2ypLCdSCazsweiXgjg8KxKC/qrrRkDC03Jg8XUUCLpgZGhn3eu/xNycmaKntJCiy3Oqt2K5aWWOXqqZ+shY0LPcduSGLNekoyhN40Z7jCksQtpNhcsmIXMkoCnoPz2ht0h1liBtJfoZPg8mUIb9kMlmXI1w0DGYQ3q7/4NMaypgB2+dVIErJTkZCunAkuGDQN01tO4JqgF8Jd2zZwOHbmDNQvXEdNRVMxq3YbMr2taJUVvJM+EH5J+CNnSnNYQ11IiziBZTYZ30oz60qWviKhk/LisT8iSfoVxGVJ482QENMM3qdYkv9kcZZ4ZNmiMKtZWtBt4jOXx/PLhGCrrSzYZhdRqn2K+cRrVucXPpJ1XdC6YyKwL/DUlQ5R/dlBEL9hyWpqlpWL5LaRZGmUDEkCyoiQr26+t76m+4jZFXjCrRw39k6WaOXZAYvXspM6JuS5Kh+Y0wauM6eO0kCSidVgthpyy0CXXlS+GjDc3t6UYgFLLSR7X7XmbDuumDpdNmPRAPimr+H6iSHvEI3BqywZLUcVU5fnlIdkc6NkSBbLY1i4vX5+W12Nct4LYeeeY96yYlP9wtobx42ZqElSOYiMYK4F4ZAeecckozVDCweW2Zxj9hisIlyOFA57U7Vw1DeFzjLtmirNbW9KyeaQIQRSV1gyP99sdMQ0ETpk3trePOi2oKtA/HudKdW9y2Dt8X3GQ7KpUVJSxN1+kBo49YPWY9UGij6JLhuQTUVFA1WFawBKBVgkDOzsCcaR5MyUVw3pE67Nyw4fa3Ybm9o8MgFadjjotkCLyXuSwJjmb3GMDfsi6ZpVBvvBNyyZu8Mk6Q6jFAfbMuf5To4XL4tVit1baU7WNSFEf15IplOKIVlEXAaEA6cf9x7fZhIRiU7lsgCJBNtMyjYiDI32sN8VmJ9kjpy5ZPEzhpFDh2DRkr/grTUfqJntXpcC7vU5MCLsM89odyUZCFQvGVxL7M7qJjJe9JTaWadrQ76kh30Nk41gWbi3qy3p7p4mVOe/t5NkbJAMYqVQrhpoWtBWt80C7fK+qdeOGmU8bTWKYNtE8YZAjE1MPRtUbFMfjJk0+b+WPGcSA9t38DAWLPz3gKm5MSYHIJrR0tSwfEfgdGqKpsrtoOBfbM6qnYq1y7hZOgdNT7bVTbWxZjohGUIrzrq3sQIR9f2QjA2yIUW46c5wwPWYt35bEqvnHJJLukLOD6VHIp/gymgP+9EG9r4pbdCnWQML5s68CbOnT8VzS17n/VXVrQ5We9yz9RjKqGl0W8CVPET1mzSA15uS96w1Z1z0WGVlVV7oqZucroWSWklWX7dkNvsluU+hGD+RoUEypgoo6Vqw9V/b6jbbz0K5pEAqS4ueZeDHDFaJqbKrh/3OBnzHnHHtx+YUkSoDuyIHk6xWDrqa/f0F4/z+SoNttknBVru4QRyQzSeX2pyfd7jGCmu0wFs/fqAayAyAtP+xZDVHc2/1TIDOdQKQlAZZSdNIolQ13Pa49/iWdC0cuGRAzguln8tb1aP4CnPGsApzyjBRN00NtSWz6tPTri91hGs8y9+UYuMzrvFb5qztAzS/Y3jIlzVEC2SLdJSV1szm47LxortOX/oVUE4ohlQGSQ4O+6b43QfeM6X+Ysf6Vf37BdXGksIZGtHfhbIix4mIdeUyvW7JGrHVlDRUtEtVQ20plwFGh0GFazzb35Scq4WMpoxMzrr7Hpxas5rCXg/eDyruWh3ubW/ghEBKvWJMTUpKkkZcO5hNJqOvdu+Bg+vf+mP/fEF1NpT+KRHZwTgA4j16FF1mzS6oMToGiTBtBodbkzT1Er5fdK3RfPJkjHvqaTlj2s1gTcPGiSW8yJ7X3w9bFyjgJtlyfdn4pBef+Unk/x/9t1+2VG79/LudV0rMX1CxuwX+Z58Bu91AcjLka/TFj950BVDhORNXzFMkpJ6NSekB2d915gZbMO1HC9EBpHJiCZY4IzvoJStulTG4aCxe6ADy1H+0VG75TB+QrrQ6P5QuHvbB/Cm6uI12yBCuyqu2nMJdBlsk1TxTDbnt/eRF9dZ6mWpI/rZDSsu/8y6qX7uGq0LkLfeLZItLWzxpGWnXDR0iG4zG9j5vWeeH0kWmCHMkOaHbm3SYJHrFllO0V7HkioMmSwu5baz1i0vbV9OJ82RY2Gc6KRnDdYqpXw/y7nTzkGQ6RcpFK6Ojje5EuYrSwj8DNK/rTJEL1Qgz6CVHXvEBxeIUXw+dhdHjbbmvhr4a2q/+5G/OrvTUBaSipPBJEP2GGBoTd58pAiDEkH7vyC8+pJizhQ+WHQ62WMExxaWuBsP2Vsc+ATkXSiciZq4hQl13igSIpBdseaVHFXOmaJCthlpiDRL2dqBXS7teA6koHjMOJG0WoXRi3suEblP02yHJL9jzxx9XjOkRGFrQZYnyqHS1GO5S6dkrICKUHpZRfTZvtY6AblNefJCU5+15E04oplQBw6kFXeYEjKhMYwZyQSidI4lgW6kb99ZLkrLInj/xlGxMEW8ZTjXQkoDR9frSDWTrHbN/Hqir+6k46aWkJAq73V4i2tiRCB2ti1aSDc878soaJWOSBNZyw0GXQXxBlChdWkAXEPH0arxm4LrSd9YmC0lVc2dxoL7+MyY0dCW5mWTjYnt+WbNscEjMWq6agKFnHuoCsqG48OEhjzz2uwEPPmQRQo+8thTH1q6BlJERtY9WVcOiU36cCjNEcs9gkwSjyBVPlB4t8N/v/rXnL6gqiooyTTlZtYOf+GGmkHho0X8GAo2nyhHlNt4oGczP2fMmtUmKVWFNdaohsU31+sm1xxF8xSroWiFizOXjxo1Ukmy/haaWqD7fbhAueuBvkI2WxdbcSR5ZsQgYOWqoT+/fXzFb6xqObiAd0ipKC9+NJrlOMlp/b8+f5JUks8IczlEDLqWbfCld2n0NK/ULkCOS2f6SPaesXZJNBtbCznDQpfQQ6f0a2lrXkPsM5JBsdvzBnlsmMs8FjJxwwCUT9SkJQJfmX9FKfQKyX7EmvWJ1lgUlyWCMrIwEjL7Ok14D2S1bU5banRNDJClGTQvlcNAlcd8/puzrgK729r0CIj6Qec3mnBAmUkwChhZyiS8vr3ZjxIP+uoGMuuXe6zNTHS+kBv3FR3wBh0okm1gLOtVQi/iSPx4G81XQQReQglvmZOdl5+x+cv6D4icl8OuXlsF9ujGQo4bc4ieMvgqGiJcx6AIy+pa7H1nwnft/+9B9d0VCJ6++vgKr31iBdKWnz0/iZZhXjx66Qifip4xyczP+/rflL0aCi3PmPaqp9ccTYfRLwFnXColA+KdHnz5Sf/LnYKaBNotHcrsueWrMJRhv3IvUDaRjJHdMm91lyD3uR3sVKJgAEmeQEkASQOLMAnGmTmKFJIDEmQXiTJ3ECkkAiTMLxJk6iRVytQPpr18DijM7xI06JSXix06jl0QiVdxgOqNIAkgCSJxZIM7U+X+uN2G6f+9A0gAAAABJRU5ErkJggg=="},{type:"echarts|area|stack",name:"堆叠面积图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAVyklEQVR4Xu1dB3BV55X+zm2vFz0VVJ6EwEiIXkw1zThZx3GLg20wdhwLYq+TiRMn2d3EycZrEscZZxOXJJtkh00Mdsa9YnvtGFNFMDJgsBBNBVEECElP/RW9ds/O/4QwRSA9eJKeN/wzmpHm/vec8//fPeWec/4rwuWRVDtASSXNZWFwGZAkewguA3IZkCTbgSQTJyk0pHjFSzMATCaWXl2xdGFjku3RgIoz6ID88PV3lgF4cO6I4dra/dV+TzAw969fv2PfgO5CEjEbdECWrHxJf+aeRTE5th46gme3bP/fP955641JtEcDKkqPgGzfvp0HQoryplaU1HnwzD2LYuwEIM9v2Y7rcjORYTIMhAiDwmPKlCnnVYRB0ZDiFS/8E0F6GoTRZk2FWdOis0YMow2VB7jNH5DFLjGwMippP/rr1xc0DMquDRLTAQWkeMXzBUTykwC6TBLzCSJ5D4MNYHYwoY6AFACjAFihsxeS9KgabH1q+f33hwdpjwaU7YAA8s+vvOII+6OPgPEAiFQd7JUglQPc1ONqGRIIwxg8gkAqgGod/C/PFi9+e0B3ZxCY9Ssgy5Ytkw7nF90P8M8BSgMjBEIlgw4TuFc/xUwGAhcxOJeIhBlbC9YfWLnkzv2DsFcDwrLfAFny3CvzWI/+gUBjGGBiHAZQAULcpocAO8DjGCTMWYQZf9As0iPLFy5sG5BdGkAmCQdk6TPPD2dJegqgm7vWwU0MKifAm4B15TBQRICJWW8C6Kf5hyuWL1u2TE8A7aQgkTBAlv5llY3lwCMMfIcADWAfQOIF70SCVyqisBEMHk4gmcF7GNL9zxYv2pxgPoNC7pIBifmJYUX3QcejIKQLkyKcMIhqwNxvTy5BMumIjiZQ1klNfC2kaN9//mu3Hh2UnUwQ00sC5Aw/wQwiHGWW9hFxMEHy9YEMpTJ4LAE25hjf/9RC1seX33+Tvw83J92UiwJE+Aldkp8g4JYuN4E2JuwiYFCcLDMTEQ1lcCGBhLk8Ckg/XFG86MWk2/FeBIordRLWGVvrm7CruQ06M2TxFmcwwKIqSVHpEvaxpTOIjrCwmsAQkwHz3UOQatCSCpdLTp0IP3Fo6MhvgPALAmUAiIJwEIyq2O9JNhiwEngcQKnCjzHRiqCmP/TinXd6kkzUc8Tp1WSd7idO3n2CIO1h6IFkXxyATIBHAWRh1juY5J8dHprx2w3z53epUBKOcwBZ8uyLtwk5KarvYEn6DUBfFX/3mu5IwsXFRCKSmEWIjBEAFAYqwfR9xRD9JByi25jkbc/ds3Brsoh/BiDfe/mtXXkup0hTWGoam1RvMAQGhwhUCeBQsgh9cXKQAdCFtrjF/U6TKXxNUUG0pKomKBOeePzWGx+9OLqJvesUIEIzJrpzVn73mjkWweI3qzdgT92JBmJpJ4jjTnckVsxEUiOnSVVmLJ01TblyqDsWnNz33Cv6M8V3xNL+gz3OC8gTH26I7D5WX0aEuv4UUtcZ9XsrcqM+n93mzj7uyMlq6U9+grZJU2csvWpaWjcg9z73Cq8ovkPqb759od+DyUrJFS9ZBz3Nvo5gsKQvRC5lTsuOXRPdDlvmLdfOV5a/+EY4lJmxPSXP3XNa/lIYnXaviMJSzKZZVxdeoWyqqqFQNLr3d3d8dUyCyF8SmR6dOuv0UH9rhpA61OHTmrfvnPveyt8bxd87yvfhB48+GTTlZlWm5OfWG+32zkta3QVuZmYDE7klRiEIsg6a92zxon5/AHtbT49h75KVL73T242Jul720ps3lLy+gixmE15c9T5+/8wL8Ae6cFDNJq9tSHq9Iye7we7ObpZlqdcaSrxyMfMIIioCY++K4kVjQZRwHvHINKiAHCrdXuQ/WjciGo3y7GmTQ0JDWtrbDxOQCoaLJDolH8lSxJLqarRlZTa4hubWG2yWUDwLPe/crrB4fldKn7+1csni/04I3Ysk0iMgP3v9nX5/SqrK9qB8y3aIPR/mzopFO3ZrLMCLjagehdcXQLvXhzavH9HomQkBR5oLmXnu2I9rSBpERfFihy8cQWNnEJosoXjkMKjSxdPqiwxxp07622TV7d6XV1e2ZzzH3jfxMQF9cOLsYJG2IWSA2Smyid2LlxQlZElzNdpzshpShuY1aCZD3GE6g2YSOBXgp1YUL/5BXza2P+YMuMlqrKjOPrJt52Rhq4l5O0D1F7EwjYF0AjIYyCCCaIToHmx02FutQzIaUtzZDbasjL5loJlsDH0eiKKyLBX95e6F1Rch1yXfMqCAeKpqMo9s3XFlLF0O7ATo2CWvACLRTE5AF0nPDBA5TqcpaWrQlp7aYM/JbkjJczcqBu1UHsvX3GK2uFJO1U2YMZ4Iecx4b+WSO25IgGxxkxgwQJoPHU07tLl0usguAShHV9NDwgeDjdRVucwAUzoIyikmRLrJ4WixDklvpPaO7LQUh3zocK028po5pWS3tTGgEXBNLOfF+rUrl9z5YcIF7IXggADSduyEs2bj5pnMLLOOCqJY2n4Ahk7MkiumPURDiMgqmKqKgq/degMe/MbXsGt/Jb75k8dCRV+5frW4xozhRBgtytBes1T06sKFA1pe6HdAOuobbdXrNs1iXVcYfJCY9gwAEj2yYLBJaI7L6Sz8n1//h2FEfl5s3u3f+tcwFRaUWF3OALqa9OYBsAD84Irixb8bSHn7FRCvp9lata7kKg5HNAbXElPZQC7uArzcV02ZMP57990tvb16A95dsxGdRC3D51213WizBpkxhAhTwegIatGhL9x1V7/n17pl7TdAAq3t5orV62bp4YgB4Dow7ejqoU6a4Xa5HDlerz8YIc7QQxFNVtVQ/qxp20SCszsMZsYfVy6549sDJXW/ANLZ0WGs/GD9rEgwJExEoyjFS8kFxhn7S6qsGW32OYGWFiEvZ4waud89aXwDE88VtTnSpfErli7cmwhQSqZMihUA527f+VpP9BIOSCgQVCve/3B2ONBpYbBQ9S3E1G/9WYnYJEHD5EqxmFNTpjZVH7SKZ8eSllpf+MV5nSRLQxkoWVl8h/ArlzS2XPfFXdaRRbkky2rH3j01M/+2ZvzZBBMKiACj8oO1M0M+vx1AOzM+oq7Guc/FSCsclml0OIcfL9vt1MNhyWC3BkbdcK0qSZKig79yKd33QjNS5859bvQTTwstxO7vfae1ZfPm+87WlITlsqLhCDau+htaPU0wqCpG5LuhyElRhIvrYaDsLEQlGTWf7ISvpQ0ZRQVwXzkBVlXB3YVDY7m3uIfPh84/L4fD5cLYp7uCtrgAiTeXFQ1HpYrV66Z3traJLG2AwZsJ1G+1jLg3JI4bZINByZ81dawsK2pDZbW1tfaYZcxNX4LBZkU0En3ouXvv+lUc5FAyZcL3ddAjEpFDcThhLSrSJc0Q6Ni7u39Mls5MVavXT/V5mjMYHCTQZjA+l22c3RttTnPZ3JPHFxEIHQ2Nho5Gj7Ng/mzokUi0/pO9k//2p1/u6g2UkqmTvsDgPxGoQMxl4ARB3wuQA0yP94tT16M6HVj/90kd9Q3ZYIQZMZ/R0Zuwp183QpfujrSOyTAZLVs6QkfXGZ1J0SydXlSQ48pzZwtZg36/rBgNqfbMDPIcOBQ8VPrJl8o/fHVjT+vcNHXccB3K0wTc1HWdOwDaffppsbnbPj157VwKl+TUq9f9fWJ73Qk3mCMMKiWgNR4wxNxH5I5ZE2+8PiXjyzfgwG+f1FfurNyVLKAMnTlllNFmi6VbWCLF4nKmio7yfe+t4UBL68O71rz+WPd6y8aPt7Rp0n+A6IddOHAIoP0gPnL2nvQLIAdLSse21B7Nj7WSMpWiK8SNa+REg+afZppmz3zh5VjzrbeqCqXffcD/h05t20HFGJemxcW4j5MVo0EdNmvaOElWYtGJZrXYVLPR7PM0oeKD9cIMve9lWvxsW+UCHfT4yTZbAUYNEYujez1GmAkHpHbbzsLGygOF4NgZhK1gxP05jFmh9swbOpvH2DXFNP5Py2EfOw4Hnn4Cda++Ag6HUS8prZ9o9tqNmv2Yn+RBC51tWRnOrHGjC4Q/gSSR2eVII0mSajaVhluPHFVtejT0gO+4lh2NVZRPoMtPXNCHJhSQ47t2558o3z+WBRigHYT4+rbyo53WRf7GcW49lCpWIJnMfrCuGbOzQ+GW5mCopcVDTDkgmMX1CFG0SjLWbTHYj36qWj2DkXvJHDsyz5GdPUTIo5iMJoPNYld83mjzm2/L1aRBpLBv7WyqmhNsq+iL8iUMkPq9Fe5jO8snnnRWZWCq7YsAYo6NdfU2f2PhxIg3XxI1ERYtqqhi0aIq/mLdRCR91sDNsZpGbqxhmijWxNYG2f+pZqndpDlr62V1wMJqoRFDZ04dZTEZLJP2lVmOTZhsaXOlYmxpCX+0/3CoWu367MS4kO/IPYETuw29nBxLCCCi2nd4644rRXkO4D1gOtgXMGSArg00D50fbi00MWtCs4hwGDpVQOpDi6pOKhPy0HU0usvBMvNhxejZqllrSzXHiTD6PzUzhwK51wVbx9oDfvl4Th4+uGUxOBLl9jdXeTr8nWqjrDiYJErVw+3f9NVty4yGzns64JIB8Rw8nHHko21Tu6p9XAWmPqnm2LDXdXtn0ziXHrGd1KrmWLUwztD4FPAMF4hymZFNhJijDRCF9qjmY5s0R22NbGrvy0MSz5xh0U7bQn/j2G4TeyjTrX88fkrE685TJJNJCtYc7PRv2twWAcknJNUZliRF0/XIXYGG7ZPD3h7Po8QNyOltQJ7j9dj07mqwrsPlsCM3S5SuLzwsoU7MOLQPw5q7PlPCqgo5KxvkOKPc3RuZ81+PRsGtrdCbm4DOzyyXx2xDZYYb1enZCMmfVW4vhpEhHMaUo5UYWX8Uwl42Kxo224fgxKjRkIZkArIMKT1NHHdAeO36LnkYOBbW0SZ+YcaXHSpudBjOOV0265lnz5t/ueB7SHt9g6Nm3aardJ1lwYtYNCacfxigS7cEPCNmhL1XKKJcyxwh4ADED6FfMr4MdhAoF12BQKz7JMzQq1VTXalmr90ZZyCgsE7XBVvzrw62FhrAagCkl2o236ea1c9dkRbMM6bbZYtJIptNkW02OdrUFG5/932h/bHRRrK5RVKs4uRjbqTTc7+v/hOHCB1Pjrg1ROSyRLWv+sOSWboeUcGiVUe07Jy/wHR1qD37S4HmUVZEY9lMBgsA94EwIM6XAZl0ZEMSgQC5uhffTnKgTDXXbjA4ahskwwVPfU0Ie1MXdHrGufSoVWdwmcHi36zYfCFJPI+fDclqlc3TplhJUUgekqGRJJFvc2lbqLr61FqDRGqDpDkiRLJF1zuX+uu2FUYCsZakuAAZ/4UFt2WOG/2IeM/Qw2GNWTSx0ceEns+cjwgH7As7PWOz9FD3JrSDuRyEuF8UL8a09HQPMSyxQICRCxKncmOBAGplg2ebZqvdYrDXWXVdnR5qzzyoGNraJSV0u79x9BXRYKaYWyMbgxsNjo4WSTlvg4Oak6MZR480w2SSlZQURQ8E9PY3Vnk4EjkFXhSQ6hXNEYQkuln06wJNe22sB182pj6+a+0bvReovrDw3l1FI/JzQZJj9/4qamlrbwVjCxGdI5hDj2i3BzwjJ0R8Q08uOEgE8VGYPofCiQLgQnQYlE0QURrSuueFiSKmtAzKXLCA6t9exbq3Q452dKCZlMh6g6PjsGLsU9+wccJ4i5qRpkrp6ZqkqhQoL/d17ig74xMi4kEQ5qtVUiwpDjvGjMjXFc0Q2FNRXbP2lT+fv0AlNOPqq6at/O3PfxRrsL3/R4/yxzvKygA6J9l3c2fT8LnBtgJhY7sWyQfAXAXqOVUwEBvfKw+dzJDgZiBPsVqNhQ8vQ9r8a2LByuYZU3idZvfu1GzxZakVhczTp9kUp02R09JV1nVuf/0tj+73n+Mvm0mxjJs51fpfv/hJTNQH/v2x1k0f77jvbE055dTPBuRbP/5F+KPtZeJjAKdOUF0Z6ki/Odg0RtjYk36iHsx7icjX64Yk0QTFap9T8PAjjm5A/j5jCj9pzbmoL9dJNpvwJzbZlaJKZrMUOnKk07e+5Jz2VS9JhqIZMxy/f+zHsT1/4Ke/bN1U+sn5ARGTYiarYFgugWzlldW+1pb22AGWHD1ovt3vGXNFtDOWPtCZfUTiCz+c9Oe+e3wOGFYtI2NW1q23S/Vvv6n7/cFDbwcoUqMaTwUD8Tw/al6ewTBqpFnJEA6e0PH+B82RhsZzGr69rjRXwYjhsqppvZusbgGEpoCkh4RmmDkq3xJoKpgeah8udZ2jCMe6DpkPDvbBlng2rKe5zDAAlEngNlBX2eCIZLCsNTqHtUhqLFKMZ5gmTbCqw/KNIgyOtLREOt55r6mnb7QJTWkg5RzN6OZ1xntIyaRJo9U05+8Oszyhwh/2TI/48s0cNcZCFNARMPb3Kd0Rz0qSbK4w/jsUa/o2zZYTkOTTu+ovKKkIgS2zZ9qVXLeBJJn8W0rbg5XVPYbZb61/NxbN9TROAVI6duwQynfvG/6DfxNfbcOBX/8KIU+jwKKJCLsvOt2RZBveV3GCRNJGzZmzTzEPifbxNJCc4lQsc2bb5RSnyp1Bve31N88Ig7t59wmQjVMmfnvYt7/769ziJTF1Pfzn5Tjy6suQ3SLh+o872iKMj3wRHAz1reea3G4okyaANA3RikpEd5/byvz8Oy/3njopmTJhmjHHvXrKG2/HEk7bF9wU7jx2/ONu+/qPC0nXyqskk32DwZnfIcu9fuHZPGe23TA838TRKNreesfDXu8ZaPZJQwTTrQtufjhYW7tMOAw1xVkRbmkZlFNEyQp+hCXaarAN2aFZs0Og8zadkUGT7Dde7xIplvDRo0Hv2g1n9Br0GZDujSiZOnHAjkUn6+ZfSC4fJGW9wemuVEzpItvb09CysjTzF+enkCShY/WalkjdiVNv/5cB6SfUT5BmWmNIyW9Q1NiL8tnDPH+e05CXa4i2tUXaV717Kgy+DEg/AdJNtlyxuj7SbLk+ST7j03UiFLYvvC1dUhUKbN3W3rmvIhYGXwaknwER5MNM0maDPatMtWRGhZ06ObSCApPlqul2DoX0ttfe9HA4zJcBGQBAulk0k6xtMDhzDymmU2kY+1dudMlOpxqsqPD7S7d1XAZkAAHpZnVINlrXGxz5Ig0jO1MU283Xx9qevKve8bz21guio6bH0WOIcDnKSgyCsTSMZkv/WLW55dmzXYYRw03Rlpaw7HLeueKexb0XqC6HvYkB4mwqAUjyBmfWUO/Se0fluZykyrLvUFNzzdOLbunbCarLGpJ4YPaPmZzlX/z1SQ9eOy/m8J9as7G1/HjdfWdrSo8ma6D+B1Xil528FKvbvGiEhAeumRMT8qk1Ja3lx4/3DZDkXdbnW7Kur76m5MoSqQc9cZisz/eyk1v67u8ix+XUk3tJ/7+l+z+3oDzYi9TqlAAAAABJRU5ErkJggg=="}]},{type:"column",name:"柱状图",icon:"icon-chart",data:[{type:"echarts|column|default",name:"柱状图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAADHklEQVR4Xu2cvW4TQRSF71b8NSkjpSBSqCiCIuyWBvECKA+ABAiESEUDBVRByRtQ8AhgoMcNtFmECEqLSFoo6IhA8iJhOdjLembueMae3f1cX1/PnnPPzJ2zM86ET1IIZEmNhsEIhCRWBBACIYkhkNhwUAiEJIZAYsNBIXUgJM/zIrFxLnQ4xzvbMjg6NI7h7LPnzmPsdDpThYBCHGB8393IReSyKfTK3scgWAZJ4vBMtQ6BkMTogxAISQyBiMNZv3p905S+yLIfn/u9/ngMColIyKVrm8YOshD5sP/2ZQdCIpIwnhpC5gS0689AiCtSc4qDkDkB7foztSQktnXy63VPiu/fjBieun3XFWNV3M1Hu8b48yvL8uT+jYmYxlsn77obe5nIRCdTRimUFVHOW0uFqErOIxhCpoO2EC8LQiDkBAGmrIpiQCEoBIWY1noUgkJQCArx2A+ILOYoKVOWcsqKbZ0c7z6VweFXYwlpTnFoahHrhLZXUy9MWWW0WvnGkDVEuYaoNOYRDCEQwj5k1n3I1tLaC6P4iuLLp37voVagmIueXdbW0pqFjyLf7/e6EKJFAEJUiCX7ggqFqHicLdily4KQ2TBWfRtClG1vCl6WTSGrK8vyuHRc5+fOthSWm062vL7HgDR5k7tBFUshQfJ6Hra2EVJlyVTppFGLOoSoVo5/wUGAK/7fhwTJi0KqWbVOARDiKYc5bgxRiCdHQYBDIZ7oo5C/CNBlTakf69rEos6iPo4A+5BSPfi+U/dRnvPGcGSd/H7zSga2m0637qgXF5djQLYHrLJOQuRN2jqJdWGeLktpLo7CIWSIhAsONkUH6bJcBuJzFxCFoJATBHwq2aUwffI6L+pMWfr/OoGQNlonLlJlDRnOJygEhVR3BigEhQzd0zYpZGSduPzpysG9B0br5NyZ03LxwupETAiLA+vE186OVcmx8qZsv7t0WdbuIhZwsfJCCO9DnN+HoJAamotMWYm1vRACIe3bh2jcXhSCQlCIaSuOQlBI+xQS+waV+txQw76Q3A2qhuEb9HEWcnIx6BM0LBmEJEboHyG8cJwchLkkAAAAAElFTkSuQmCC"},{type:"echarts|column|stack",name:"堆叠柱状图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAADWUlEQVR4Xu1dPW8TQRCdCwXhHwQFxemoCIqwW9LEvyBpkSgQNPwAEB8FBIUfkAJBE4kW/4K4Ca0vikg6qhgB4h8QCZFFIpzkwxvr+Xafszm/tJ4b7b03b2Zn5+6SWY3+ltrreWZ2K+SWnHP5QbfTGvTB8utbZxay+NSuZQHH8itCgAiSQgCQUBNWJLP8SiEAs1IIABJqwopkll8pBGBWCgFAQk1YkczyCyskz3OHgpCS3Yutbet/+xG0pMX5OXv28G7JR2y/zWbzzHZDfch/9CllBcVz+WJWamH5hVNWRIwm6ooFHMtvMoTcbK+/MWfXw9hynz91Ow8mceZUe0KWVtd6WZY1QwhxZnsHOx9KPljAsfwmoxARcnYonssuS4SIEDg7TuW2VwqRQqSQUQhIIVKIFCKFlBHwbRbUhwA60S4LAMlnok69InC+y1TUxyzq7AHVy61tOwocJDXm5+w5eZBUwHa8uWEnX/pBIZktNOzK46d/fSQ3oLpoCvnYWs4t9IlIs3ylt196IlJFHYhxX1EXIQhwEzx+FyEiBEAgoolqyJi7rIjYe12JEBECx1jSRf3G6tr9zLKr8N14DJ2574fdzrvBn6SQigphDfdFiAiBRZ50ypJCTnlMpg8RISIETy3T2KlLIVKIFDIKASkkEYUUA6rYbw4V5P/c3DAXOPCZWWjY7L+BT+GXtd4YA6qZxqLNPnoSNqBiKWS3tdzLzIKefjezvdu9/Yk8/V77ba8ISaxTFyEiBN+9eb4GpJSFwacaguFUtvId1illKWXBsTSVp70shdxbab//ZZeuweh7DC/b769vd3fuDP6kGoIhOlRDWESLEBHiR+CidepSCBDJk9xliRARAiBwauJiPGytlJXI8XtBuwgRIXAK8B2/17aGFAOqGIOZwTeHCrSPX7+yk/7ROOAP2foGVDS/Ed6gijKgYjVErEhm+WXh4IvIkV8DYi2EBRzLLwsHEYIlyaEjGRFSETgpBADO1xCxgGP5lUIAoqdq21vgwYoMViSz/LJwUFGvqDwRUhE4KQQATkU94mkvS6qsSGb5ZeGgGgIo2rd7EyEVgZNCAOBUQ1RDor/moJQFKG+qOnX2J/4wvOtrldwn/uoLdfidncu/qwhfdn09iJDEuP0DnXmvq+qIgDYAAAAASUVORK5CYII="}]},{type:"bar",name:"条形图",icon:"icon-fsux_tubiao_duijizhuzhuangtu1",data:[{type:"echarts|bar|default",name:"条形图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAADzUlEQVR4Xu2cz2sTQRTHN4darX+CIIIXFawICSIeYqgiotFLUfCkKDaI9CAIEZRUKlgoViiCRRspqEWa6sHgSUv8gYgSEJF4UvGgF715EFrFkW0FUXd3Om/ey+4s3153vjOz38+bydt5TDMe/hLlQCZRs8FkPABJWBAACIAkzIGETQcrBEAS5kDCpoMV4gKQZrOpstmsMSyqzvckDm0cY+reNdD0F5M31ezIcME0eDpPnGxQdP44cWjjGNN/12Vj442wgA8E8ji3UZnCQPvFO9B1+aoHIIv3S7wlgIhbbDYAgJj5Jd4aQMQtNhsAQMz8Em9tDOTUoZL69O7DI9OZrVi9Kk/R+ePYaEuFXP77vfpZ0/l27CpWKDp/HBvt8rHxilGWtWF7r1Npb/V8OTSNjILkzIchgOjXmhTMwA9DAAEQvQMRLbBlWdnHLwYQfk+tekw9kBtTd9TQlUnj097y0QMNis6nYaOdGCqHnp6mIsuiZhBUna5GoFs+1HGpOsn5BmZZ1IlSdZIvmIoV4lqBKqrgkwogrhWoos6GAES34Qs8BxABU226BBAb9wS0ACJgqk2XAGLjnoA29UBcK1Ct3Lkjf3fmqXGBak/PlgpF58dUlFZlvNbr+9O1sNiL+l5LxfG7wKKz61KpqVcPbu8HEDsb+dQAwuclS08AwmIjXycAwuclS08AwmIjXyfcQFwrUFGLW1SdTy5Kq1Tmc2um9oYty6LWNag61EP+oEOBinBTTDKAcIOKcFPMB7J0+GIjVygYX/vTwcQNKuJPeeeRPm9TXwlAiP6xywCE3VK7DgHEzj92NYCwW2rXIYDY+ceubisQ1wpUUbevNs99ba378e1LEBGbW1BdlcFKrlhsT5bl2v2QqPD/6Xn7wqp3STxZSH3FEEDYd2u7DgHEzj92NYCwW2rXIYDY+ceuTgWQNBWoOmYzrZdPaoFprzNZFnWiVJ3uSFq3bKjjUnWS80WByoUC1fNrVTV3abSoi8x/ny853l+n6BYKPhfquZ5t7F++Ue/gzAqJ4waV1NkQgJguq9/tAWTBiMSUcAEEQGL5X8G6DA0rxIUsCz/q+h9CqQwtcIWcPnxMfXz7/qF+Wn+3yHWv3dr9rDFgqptPeyuDAxIFn1RkWdQCVXb9Gq86cq6t3xK6PRlAAES7QbTtjiFWiJbFfAMACfFJ6odZhwVAAEQXI/8/jyNa4xiTtGVVr99SoxPTxqe9Z/oP1nv37kaWpYlH4y2LGjlUnS5qdOuNOi5VJzlfUjTrDMJzugMAQvdORAkgIrbSOwUQunciyl+nJgacKCJJ0AAAAABJRU5ErkJggg=="},{type:"echarts|bar|stack",name:"堆叠条形图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAACiElEQVR4Xu2cP0oDURCHExBscwe9gBAP4AG8gAcQLGwEJZV/OkGwECtBO1OlECwNJNgpKVQ8QHIMJbAi24S4vsy44+wsfKln5738vpl5uzObNBt8QinQDLUbNtMASLAgAAhAgikQbDtkCECCKRBsO2RIHYCMRqOs3W6bw8JvTj+lQ6Hoz93b7OP8bMM6eJb39gd18js5OBycXnXNdehsb/3qtxDI4/paZg2jjv52Wyvu2wZIQnKAuMdjekGAAKS4l8UZkkcGGUKGkCGpGCBDyBAyhAwJlgUAAUhSAZ7UeVKvT4qEucui25sHTZhuL3OLxXOLMnmunocAJBiQCCVrp7UqDsLUwEfspMCwCr9h77KqOFDLwLO6FiBWShr5AYiRkFZuAGKlpJEfgBgJaeUGIFZKGvkBiJGQVm4AYqWkkR+AGAlp5QYgVkoa+QGIkZBWbgBipaSRH4AYCWnlJuzPEej2ziBmHhJsHgKQYEAiDKg0NbmK2bdkf0vT6fhleDeet1WPcOv29nvUYVaWNU7e+r1jgEjC18EGIA4ia5YAiEYtB1uAOIisWQIgGrUcbAHiILJmCYBo1HKwBYiDyJolAKJRy8EWIA4ia5YAiEYtB1uAOIisWcIMCN3eXPayP0cw6/YyDwk2DwFIMCBPN9fZ5+XFpqZeSmwnnaN777/Mm9/Xe783lOz126aKwHR96yTCIOn1oSf+c0+ASEO3hB1AZsQjQxafTZSsRLZRskqUIumllCxK1o9YCfMaEGcIZ8iP6KRkUbIoWakDngwhQ8gQMkT4EMBd1h/vsuj2LhZOGIOFZurnkCpaBv/1BevmV9yKLvPFuFauAEDkWrlYAsRFZvkiAJFr5WL5BeJU77Wa075tAAAAAElFTkSuQmCC"}]},{type:"pie",name:"饼 图",icon:"icon-fsux_tubiao_nandingmeiguitu",data:[{type:"echarts|pie|default",name:"饼 图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAIsElEQVR4Xu2cfXAUdxnHv8/eJVKw0hegDa1YX2AqSe4qtlMayF7G2ws6tp2S26ut+IfU0bHj2BHrYDsWxXZawZcZq4yj1lHs6NiKxfoCY621FEor3h23TSYoCg1UpVAIJCEv5Mjt4+yFMCE0uX35/XaXzt0/ycw9L9/n+dyzb7/dJVQ/oeoAhUpNVQyqQEL2I6gCqQIJWQdCJqc6IVUgIetAyORUJ6QKxH0H6pNtN0Sg3ADCfALXMTCXiKy/dRt69itgHANwlMHHiKy/OKYA/1KGzd8saW9/w31m/zxDPSGNqUxCYVNnYDERXT9VW77fs3/yr5lNADuI8OuwwwkdkPr6TG2kju8g8BdA9AG7v80pgZwfZDtgPqZmX/mF3fh+2YUGyDUtLdPeEZm1ihSsAjDbaQMcAimHZ0YHMd+v5o0tTvPJsg8FkAYtfbsC+hYR5rkt1A2Qs7mYdzJhdSJrvOQ2vyi/QIE0JNOxiIIfALTEa0GegIwlZ2y4fKh4b31nZ9GrHrf+gQFp1PSVCuExABG34sf7CQEyuh37e9RUVjTt3r1PhC6nMQIBEtf0h0B4wKlY10dZjhPxSTCtVHOFpxy7enTwG4gS1/THQVjhUfd57sImZHxkxoZozdHVTS//d0i03sni+Qbk6psyF102w/w9EWkyipMC5MyRWI1JbX5twnwDEk/pzwBolQHDiikLyOjxMZ5Uc4U7ZGkfH9cXIPGU/mUA62QWJBVImQnuT2QLUmuw+iMdSExrWwxSdhKgXMhAwGwSmR9tzrb/SWYdUoHUL8tcFinxHiJcIbMI6ZusM+KZ0RslblmSNQxZ9UgFEtf050FokSVeynlIZbHb1WwhUdnMnYU0II1a+tMK0Y/dyXLuJXsfco4ik5ereeNp5yore8gBkslEYif4VS/XpipLP9fCVyDAK83ZwiICrMv6Qj9SgJy5LPJToUorBPMZiHXctVLNGhtF1ygDCMU0/YCf0+HXTv2c5jO/WtfTv3D+vn3DIqEIB9KY1FcoCnxf+PF/Qsqn8avUnPHdUAOJp/R/A3ifSJF2YgUEZJeaMxbb0WfXRuiExFrTNxLT3+wmF2kXEBAGD1+l5v/xuqhahAKJa+n7QPQNUeKcxAkEiCXQxN1qvvBDJ1qnshULRPIFxKkKCQwI8IyaLXw4fECsc48ec4BAbxMlzkmcwIAwF6dz5O3X5/OnneidzFbYhMS1zFIQ7xAhyk2MwICUr9CWPiLqoqM4IEl9DRQ86KaZInyCBMLMX0/kjLUi6hAGJJbSNxGgixDlJkawQPCjRK7wWTe6J/qIA6Kls5Vu9xQheLIYQQIB8+/UnHGbiPqEAYlr+lEQZokQ5SZGwECEnSAKAxJL6SXZq4IhPey11ncPqrnCNW5+SNI2WfGUdZN6cJ8gJ4SZhxM5Y5qI6t8yE3Lr0LEdqeHeZhFNcRojlECC3ocAGFjTe/D4HB55p9OGerVn8JFE1rjSaxzLX9yEaOl9RPReEaLcxqg1S3vX93a9O0pU6zaGKz/mvWrOuNaV7wQnkUDyRLRIhCgvMRYW+7fdPXjElxsrzupkDt9RVjylbwaw3EszRfgyM39m4PV8bGRoykfgROQaF0PYBUaBE6J/jQhCLh94bRYxv7Gut6t2OvgSr7Hs+DOwPpEt3GfHtpKNMCCNyfRtikK/rZTQr+8vLZ3OP3jytQ/6k0/cDQ/CgLx/WVtdrakc8qcB9rKop3q2ZU51S9+fKKXSTUt3twtZKRUGxGpRPJXeCVCTvXbJt2KguLrvPwfnmcX5ErP1TTeVWaFbDykD0fTPg/A9icU7Dh2BeeCbJ7pm1xJmOHa24yD4UQWhExJrXT4HpnKYiITGtdOXqWzeVRza/qXBQ6rXOG/qz7hTzRWeEBVbeONimv4XIiRFCRQVZ0X/kZ2LR/o9P+17jh7GIA2PXN3c0XFClE7xQJJtnyJF+YkogcLiMPc81HegeAmbc0TFZBa3MDWmSTgQ69UY0TruAmGuqMJFxZlultrX9XY1EJH3h4eYOcqlhU35jn+K0mfFEQ7ECtqotX1cIeWXIoWKirVouO+vK4eOfshzPOYX1Jwh/JBaChCr2JiWfpmIhN5m6bmJo88Kmvf0/2/PgpFTDR7jtajZwgseY5znLg1IfSpzXRRcEC1YRDyFcWh93/6LpjEudRePf65mjU+6853aSxoQK208lf4ZQFKEe23G7NLpXV89+dqNTuMw0F0zWFzQ1Nl53KmvHXupQBqSt14Rodq9IMy0I8Zvm5uHul9cNtyz1HZeZpOBWxI5Y6ttH4eGUoGU9yVJvZkIz4FQ41CbH+aOVhlF3hA3WXHSgViJR9+HhSfCdgZvabO9ysi8pTln3ELl4wJ5H1+AjO5P9HsBfFteKe4jX1sc2P65wcOTX1phfmlm0WyNt7cPuM9iz9M3IOXNVyr9KIHusSfNPytrlfGugSOFRSMD5y9B+wjDqthXIOVJSeprWMHaIG+qezPUxNz9cN/BkYu5dPatEwxsroke/cRb8vVM45sQT+mtYH4SRL4ssdqdtYvN0u5H+g6MTgnzI8054wHZ+4yJ2nyfkDEB9VpmXpTMrQDV222YH3ZLh3uev32we2MiV3jcj3yhAWIJsV4NOzN6+UYQfSyI4ifmZPCukqnc1fncpj1B6QlsQsYXHEul7yTGWhAtCKIRzDgM4i+2P/vUr4LIPz5nKICcEUQxLd1GRNbLMa/zozHWM80Af6fm+OmH8/k/DPqRs1KOMAE5qzWe1G9m4q/IuFpsQSCmZ01gM04NPd3x4hZhq32Vmm3n+1ACGRPeqKXfowAtDOudW5Rw+/4UBgYI2MomNpdK9MfObZv67TQnCJtQA5nYkDFAINQzaC4xrgTxVeX/gRnlfQH4BEDdAHcwYEBR8h1/3pQPorlucl5QQNwUeKH5VIGEjFgVSBVIyDoQMjnVCakCCVkHQianOiFVICHrQMjk/B+fA/5vlT2WpAAAAABJRU5ErkJggg=="},{type:"echarts|pie|split",name:"分离型饼图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAJ0UlEQVR4Xu2cf2xT1xXHv+c5hPGjm/gxNkrrQKuWdSlOGKmKoDikJGjSVCjEEYy1LIENbdXWMaldxya1bJOmbtK0ddLUVerqkIo5tZNAgYLAWQljoUV2GschBSbURC2jP2BqKZA0sd890zMEpYBj+717nx9T/I//8D3nfs/5vPPur+dHGPs4KgPkKDVjYjAGxGEXwRiQMSAOy4DD5Ny0FbJxe3ORPpSYUV+3NuKwnFqS42ggm17YPXGo8IKXSKtk4D4As4gxA4RbhqP21679XAyHyuavJ2AFgLNEOAeBswJ8TiOcWRKNtVnKlg3GjgNS91Lw60ITqwioJGBpphxcD6R0KxE9c2M7vsDAbhIIzTx/cd9dp04NZvJv9++OAbKhIVAmdHqaCA/lkoRrgRwuK32GibZm9nEZjqZzYMlbXXsyt7enRd6BbGgIPiB0/WkiqjITcm4VkqZuGN2aEL9wApi8AakJBidP7hd/ALDJDIj0Y8hot6wMPTG3M+Fn5ZHYESuarNjmBUitP1hK0JtBdIcV8YatjAq5XgPvcbHYsjgaP2ZVX672tgKpCQZdkwb0J0jgNyAal6vYG7VXAwRgQNcgvr8k0uWXoTNbH7YB2fC3wK2sIQSiRdmKy6adKiBX+xbi10s6urZSipH6jy1A1m3fPmV8wtUO4B7ZISkHkhLMoWn9iUeKe3qGZOu/1p9yIAaMwoQrTMACFcHYA8RgwocKXRdXLDx66lMVcQz7VArk0YaGSS5ReEgVDHWDetrp8T5vtPNbKm9fyoD8eO/e8Rc++vQAAV6VV5RtFXIlCAZ+Vx7p/LmqmJQBqfUHniWip1QJH/ZrN5DUiAKxpjzSFVQRmxIg67c13u0SiIMwXoXokT7zAQTAgAu8aHEkFpMdnxIgtfWNB7PZGJQRTJ6AGGXynu7SF1UcjZ+WEYeyQb3WH6glItsWU3kDkrp38aveaOxhxwLZ+GJwql6g/5tA02SKHM1XXoEYwvREifetY3FZ8Uq9Zdk1kDtgDBkpYb830vlNxwGpCQYnTL4kToMwVZa4bPzkvUIAEHOFrNNIaRVi99iRz2nvdRcK8yFvNJbxdDObC0wakDp/4E0Q3Z9NpzLbOKFCjHhc4PkypsFSgNT6GxcS4Q2Zic7Wl1OAMLClPNL5bLa607WTBCQwyoMFViWObu8UIGA+6o3GFlqNVgqQOn+gDUTlVsWYsXcQEAYPzvJ2HH/fTBzyFobMVLutsZ9AX7AixKytY4AYAQj80NvR+VezsRh2liskdT5OotOKCCu2jgICWF6TSADSuJkIf7SSVCu2TgLC4A/LI7GvWonHMpA6f6ARRGusiLBi6yQgYCT0yZ0TK9qQNBuTZSA1wWDhhAExWxOiiIncGsjNgBvMbhAVEeM2ldvwjgJibG1haGZFpOeDvAHJ2DEzfS8QmJEc1NykcRELcgNwE7EbTEUwvkHTM/pJ08BpQKwuEC1XiNlEjrRLHfd++MkcJs1NzEVEMCBdrjSgiJhvS/ccl9OAQPAqb0dsp9m8OAJINuIfebl5ZkEyceW2KNzM5CbA7a9b+7nziENlFh4lzUZIpjYWp743DZBMeRj+vb3Mc68O7SkQVQOYkK2drHYM3lweiT1n1p8UIJ4q32+JeR1AvSDuY6Y+sPHNvUJz9fVMwX8QCulmRZqxiy5Y8KV+Sj7KoA1ENN+MD1M2jG97o52NpmxlLAyNjj1V1fUE+m5aEcxJJnqPmPsA9MIApok+FlofdNEbb2s5k1rnKvq031damgTXAdp3CFB6mmn1bEROhVT6dhJhpel8MhIMfhegPpAB7HKVuTTRN4Bk78nwLmN/yPKztT3FxYX/nVD4EAMbQVhOxq655E+BSN6zqKP7hFm3UoCUVPn2A1huVkQmO2PXjoAUMDaqjKkXGqcqLFmg9x3f32LM+3MCdqSkZFayUNvI4DoCzc6kIdvf9QRPqYjFPsm2/bXtpADxVPr2EUHauXKuwTDjA4Bf1lmr7/lH6O1c7Bmg9gUlSwXRBqsTAWYeLI/GLG2yygFS5QsQsDaXRChryxxhwK8l9UCsbWdOV6qEiUCXN9JZaiU2OUAqq58noh9YESLbNnWbY7zKLPzxqQXhXGd5ZiYCMp77lQPEmPYCW2QnVZo/xhnjlsa65o8fDJ3MxW8uEwGrMyxDlxwgldVPEtHvcwk0X22Z+U0iqr/A1PhOa+h8LjpGmwgY48f0gcQXrf6pRwqQeZW+lRrB9P5NLkmR1ZYZn4F4B4Hqu8JNrbmsg9JMBCwfTkmrkK8tWzVtvOY6JytZdvth8GmAG5IJl//tttCpXPpPTQQg1oFw1hvtbMrF9kZtpVSI4biksvokiO62Kij/9nyEQf7B/qFXTrbvumC3HolAfC+BUGd3AMr6YwwAaGGCPx5uej3XhadZXfKAVK1eBWgtZoU42Y4Z7xLQIMD+7tbmd1RqlQYES5cWeMZN/4iAKSoF59s3Mx8moD6Z1II9baGLsvXIA3J51/c5Aj0uW6Qj/THOF3w8eGtHx+5+mfqkArm3qrrMBfq/esNb+mTzX7rCzT+SCUPatHekKE+l7zARHpAt1En+GBjSE1TU0xYy/XRJunikVojRybzlNQs05qiTEihbCzM/H29tfky2XyUVcmVNkteH51Qk6qpP5mQyqd2uojqUAfEsr5lDLI4BNFFpcvLj/IWucJOynW3pt6zhHHmWrd5ImvZifnKmpldjPcKfDZR2/+u1j9X0IGm3N524kiqf8fqJGlXi7fRrnK+ARFn8wA6lb5lTViFGsuYuXnHL+Injegh0u53JU9EXg9fFw80BFb5H+lQKxOjIs7z6fgi8QUTK+1KVLGb8Kd7a9FNV/m0FkoJS6VtPhG12BCS9D+aDXa3ND0r3m8ahbVdtybLVa6Bp21P/IL5ZPow9l8Zd8p3at8+2N2DbBsRgMG9Z9cOaRsYhjuOhMPjP8XDzZru23YevUVuBXIVCqbeTFjixUJiZQbQpHm7Ky5TddiCpMeXB1d+Apv2dCHOdBMU4ZxcQvmOtLa/lS1degBjBFhfXFGozxa80oicdcgvbIZifUH0AlQl03oBcXdHnvVq4S+j8ePfrLf/MlCw7fs87kFSQxmljwbSVIHqMAJummPy+YPpld2tTvd0D92hgnQFkhEJPRc1cuMRPiMgH4Msyr0oGLgG8C+DGeLhll0zfsnw5DsjIwEoqqovZRVXGfzkAeAmYlGvgzLgI4t0EDl0qGNhr55oiV61Ge0cDuTYgzzLfEiK+C6A5DL6DCLOZ6U4ifAXgfgYdJ8YJBh9nRg9cONF9oNn0n2fMJNSqzU0FxGqwN4P9GBCHURoDMgbEYRlwmJyxCnEYkP8BW4zdfideGzAAAAAASUVORK5CYII="},{type:"echarts|pie|ring",name:"环形饼图",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAK9klEQVR4Xu1ce3BU1Rn/fXfDQ3lZoSr4RnxNyD4gUVCyi5NdqNpazW5aHWbqu51a26laR/tgxNZaq21nap3aB5bWWq0uiVYtUyFACA+V3WUfMahYFK0PRoIGJATI3vN1biAYIWTvnnPu5jqz9x+Yud/vd37f98u59+45372E8uGqCpCr1JTFoGyIy/4IyoaUDXFZBVwmpzxDyoa4rAIuk1OeIWVD5CtQWVdf44FRA8KZBJ7IwCQisv6d+FDnZgOMDgDbGNxBZP2LDgPYlBeepy5Kpaxzrj9cPUOqIg0hg0WMgRlEVD1YNX/XufmIpxkwwdxKTHETRtzN5rjOkMrKhuGeiXwlgb8PooDdP+nBDDmMg7mFCQtDicw/7PKXKs41hpw2e/bIsZ4Jt5CBWwB8sdgCFGVIHzkjx+AfhpKZJcWO51S8KwyZGo5+zQA9QIRTZBOVMuSgMbwW4FuDyex62fF14YbUkKl1Ua/HwO8BulA1ISVDDgzOEA9O2J2/vbK9fZ+qHln8kBlSFY5daxD+DMAjK74/TochFh8zp4fnUT8zk9miQ1exHENiiC8c+xkIPylWrOxTVvHj8CdgujaYTDcWj1VDlNoQwxeOPQrCPDXZh6N1zZDPMDMeGt+977ZSXsJKZshJMxuOOnaUeJaIwrrNsPgcMcS6hAEvhRLpmU5oHoizZIb4IrEXAMxxKjGnDOnVy3gymExf6ZT2/rwlMcQXid0B4D4nE3LUkP2u/CiYyPzCyRwsbscN8YbrZ4CMtQQYTibjuCHMTCQuqU3k/uNkHo4aUjm34ViPyRuJcLyTSTh5D+mvm5l3eYhnzEpk253Kx1FDfOHYShBmOyW+P6/jM+TTwbLBRNrvVE6OGVIVjt5oEP3JKeGH8pbQEJAp6ms3ZJ92IjfHDPGFo1tAdKoTopnxLDOeIhavmoanoyu/7cNFnZ0jPR4xGeQ5nYlPJ9CXANQ5MT7AG4OJTKUT3I4YUhWpv8aAsUirYOZOBt1t5mlhe0t8lx3udT7fiflhNA+gb4Jwhh2M3Rhi8Y3aZPbvduPtxjliiC8S3QTQmXZFFIpj8IPcvWdB25p/f1wodqDzb0yZMuKDcaPvYoNuJ6BChuMwDON/tcn0aQQILXwHSLQbUlUXm2cYeEyTyJ0Q4vLs8qaVOvhWBwI+4eFFVMTG16DjCtwUTKUf1qGtj0O7Id5wdCMRnasqkpk3C2HOfWXFM0fem5UYZOVsVBhdgVYC1JdDmNcHk5nzJWQcEaLVEO+c6PnE9JKqQAY+7jFF4NUVTW+rcg2EX+n3H2MMw3rScFkdQd0Tzl//2nZdOrUa4gtH7wSR2vICo4chgrnmJmVjByvSumnTpuQ9nANwlEoxmXFDKJl+RIWjP1avIToWEBn3ZJsXz9eV4GA8q6b77iDDUFpjsx7BQ8n0V3Xp1WdIQ4PH2ym6CDRCQdy27bvo1HdfjHcrcNiG9t5PdgVeJcIU26BDA5n3Hc2e0dWpVI80Rz+gNkN84YZZIF6tIkowf6utubFkv+4tra01/hsBtRUFMsVXajdkn1fJXftTlq8uNh8GfiovindnlzWOgebn+kJ6sl7vqM4Rng4CRhaKHeT8XcFEWiH3T5m1zRBvJBYnIKaQ1NPZZYvrFfDS0NbqwBMgKGxA8cPBROYmaQFOXLK84WiiULvnoIKZr882N/5FR1LFcrRO998Ag6wOGKmDgaZQIh2VAh8C0jZDfOHYNhAmyIpiU0zPrWjaIItXwbXWBEIAWqQ5mNcGk5lZ0nhHZkgkZqrsCnKPODnX0vSujqSK5VgTCEwSFXivWNzBeMbmYDIt/6TmhCG+iNWkLn9kezqGoaUlL88gj1xz9tljxNijd8oyWDuJoWTGeiBRPrRdsryqM4R2js4tXdqlnJEEgeoMYea9oWRG5SntoGpthijfQ4gm55bG35KopzJk9Xm+s5iN16WJmLcFk5njpPFOXLK84eh/iUh6E4hZzHR6/epIBWs5LzDTYKyTLqgb7yHecDRFRNOkkwJ/O7us8Q/yeHnkqhr/Dwj0gCyD1aAdSmYUcv90ZH2XrEisCcAV8knhX7nmxZfL4lVwq6oDS4hwsSwHA8+FEunLZPH9cdoM8YZjdxFhgawoBrpyyxaPLfXSCQOe1mr/DiIapaD9l6FE+k5ZvCOGVNVFLzcMUmqNEYzr2poX622OKFClVTX+eQRS2nJmxtWhZPpRVxly7tz6icOF8b6SKMZ72ebFJylxFAFmwFhd7X8DRJOLgB0WauRRMyudTqpw9GG1XbIsQl8kuhagC5SECb4tu7zxN0ocNsGtNQFrI0x1lba7NpEerav7RK8h4dh3QXjQZj0GDLPuJcw0s6053qbCUwjbUuOvMRgvgUitCZzRGEymVVa5PyNVqyHeOVccB2FsJSIlXmZsJUHV2RVx+fWlQRxJTp8+rsswXyGQ8uWRBV8TSmX+VugPwO55pcINNIgvElsKIGJXwBHjmDdR3pybaXlG68uXL593zvi94qgVIHjVNWK32b3v+Iva2211UtoZT7sh3rr668kwFtoZvFCM1Q7Egi5tWx5/sVCsnfOr/P4zqYKaofA+/GfH0bcx5chN3SK1Po1RMZHfAmGSnSLZiDGZ8UfTQ/PbX4h/ZCP+sJD976mIO8cIM3jvzi01pHrfODBChcife0Gq7TUZTUfCaJ8h1kDeSPQqAj2uUyisZmvCArPHeMRus3XVrEu/YIwceQcT3UxA7w+/6n2ftFy9+0Pld1YYWBFKpLV31ztiSK8p4dg6Ig3tmgO4yuDnIOhxsNhkvY7Q3hx/p3J2wwlGhZgKomkGwwuC9brAgC/WfGfXB+3n5HervU4gzOnBVE77DqdjhlRGGvwV4LTWWaKJzGC8f/+ON8eMAEtuKvHCYCJzoyY5zj32HirQF4kuAugaJ4Srco4XPS8u2PlO0Q3XDGwfJYwzqlOpHaoaBsI7NkOswabWXXa8h4a/DsI4J8Srcl7cvX3NJXs77TcnMDOIIsFEernq2CW9qfcfzFsXqyXCchCGOZWEAm/X/B1vf3Qc50+2w8HMd4eSGekVbTtjODpD+gTs/x4W/qn6C95OQsXGDGfx2n2db04eRjR8UCxzczCZUf/BW0BgSQyxNPgisdsA/KrYgpUi/uyerlU3d221erMGPpjXjdsn5vhyOcebMEpmiJWpNxL9LYG+V4oiFzvGtbu2bpiW7zp8G5a5xezovPiiLVv2FMspE19SQ3pnSl1sPhtYoNJUJ5NoIQwxb79nx9sYC3N8X6zVIjpKGFfqetWgkAbrfMkNOXD5mgPmJ0F0jB2RpYoZI8wN9+7csn+WMN8fTGasj+aU9BgSQ6wMK8MNp1SQWAKQ2i9mzeW6sLtz5VV7tj1Wm8wOSeP3kBli1dH6NOy4ivF/BdHXNddVio7BL5vCuK59eXyjFIEG0JAa0qe/dzGSsQBEZ2nIqWgKa0MMxLfmljU+UTRYM8AVhhzIibzhaD0RWR/HdOxrO/3rx+C9AP962Ec9P0+lntutubZSdG4y5GACvrrYl5n4x0Q0QyqrQUCWCcS0TABN2NP9jOznOnTr6uNzpSF94qrC0ckGMJthfXOLQrJfvrYaJwhYwgJNpknP291Pcarog/G62pBDhfcZZO11MGgSMU4A8Ym9/wdG9d4LwB8DtB3gNgYyMIxU29J4aiiKKzPm58oQmQQ/b5iyIS5zrGxI2RCXVcBlcsozpGyIyyrgMjnlGVI2xGUVcJmc/wNHa7R+ocFFfgAAAABJRU5ErkJggg=="}]}],echartsEN:[{type:"line",name:"Line Chart",icon:"icon-tubiaozhexiantu",data:[{type:"echarts|line|default",name:"Basic Line Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANsAAACsCAYAAADypNk5AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAABzASURBVHhe7Z2JVxRX1sDnP/omky/JaCZmYsYtGjVxQeOuqIAoqCyKILsggqgIuICyuSCiCO4gKoLsOzT7juwoi5pvTo7nfnVvd1d3wVMQoYGu2+f8juN7t8qePvXLe/WW+/72/v2fwDDM1MOyMYyJYNkYxkSMkq2sqhaqahsUZQzDfDmybBXVdXA08Cw4eAfCbmdvSH78dFQwwzATR5btXOwNcA8KA/x0dveC1SEvKNVUj7qAYZiJIcvmFhAK9568INnws/eIHxSXa0ZdwDDMxJBlu3z9Dti7H4ecwlIIvhgLv+2wh31ufqDh9zeGmRQUAyShl6+Bs28weJ+6AOttnOF/FqyGlTvs4F5ahuIihmE+H4VsI8EWDoX7auEaCIuOF8YwDDM+Pikbcu9JBny1aA1Jd9jvlDCGYZixGVM2pExTDRZWDiTcehsnqG1oFsYxDPNxxiUb0tv/GtwCzpJwc1dshlv304RxDMOIGbdsei7HJ5FwCA6kiGIYhhnNZ8uGPHqWBQvW7SLhLB3chTEMwyiZkGwILu/a43KMhPvPup3Q0NwqjGMYRsuEZUP6Xw+AX0iE3K2884jXUzLMx/gi2fRE37gDXy+xIOGOhVyE2w/S4Oqtu9DS3iGMZxg1MimyIWkZ2bB610H4ZZMN7D7kBUcDQ8HmsA9k5RUL4xlGbUyabMiDJ5mwxf6IbikzQOytFPAKPieMZRi1MamyPX9ZAI4+J3WqAcSnPAL/sxHCWIZRG5MqG3Lk+BlwDwwDn9MXYfM+F2rtRHEMozYmXbau7j44EX4J5vy6gQZMahtbhHEMozYmXTY9W/e7kmzXku4L6xlGbUyZbKcj4ki2A54nhPUMozamTLbn2QUk2w+/bYG+/jfCGIZRE38rKCiAqSAvLw+WbLAi4c5HXRHGMMxsRSTTWExZy4Z4njxHsnlJf4rqGUZNTKlsuFYSZVu+ba+wnmHUxJTK1tbRBf9evZ2Ey8rnZVuMuplS2RBMj4eynYm8IqxnGLUw5bLFJCSTbJv2uQjrGUYtKGSrPx0M5Xa2oHE9DF3p6YrAiVJeVQt/X6jNzlVd1yiMYRg1IMvWlnADarw84MNff0FP6mMos7WG4d6eURdMhG0H3Ei26IQ7wnqGUQOybPXBQdD7NF23Xh+gxHIrVLocgq5nX777+kykdjWJraufsJ5h1IAsW6vUstVKLRt8+AC9T1KhYO0qyPjmK6J4x1ZoOH8O+svLRt1gPGTkFJJsc5ZvhIGBIWEMw5g7wne2SumdrTkmit7d9MIhmf/6J5Ttt4PWG9dhqLNLcaOxWLndnoRLejg574IMM9tQyPYx2lNSoGjbZoV4OUsXgcbTAzrTnwivGQmuIkHZ3AJChPUMY+6MSzY9A80t1J3MXvizQryCPyygPjSEupnD/a+hKTYaGqS/9+TmyNcmP35Gsi3eYKW4J8Oohc+SzZjurCzQHHVVSIcUbd4ANR5uUOvrBaV7rKWWT5umvKOrB35as4OEy8wtGnU/hjF3JiybnneDg/QOh4MoKFvp7p268UyAzsSbUBsYIMfu9wgg2QLPRSnuwTBq4ItlM+bVgwdQamWQrV2SsMb/mFwfe1O7msTC2lFxHcOogUmVDcERzcqD9lDt7kZdyp7sbLmusrqeDlZE4eo4NwmjMiZdNqQ5LkZ+h+srKVHUbT94lGS7eCVRUc4w5s6UyIYUbd9CsjWcP68oD7l0hWTb7eSlKGcYc2fKZGuKjibZcODEuBzTkaNseDbA0NBbRR3DmDNTJttAS4uhKzlimddvO/aTcLyahFETUyYbUrh5A8nWGKlMQe4VfJ5kc/YNVpQzjDkzpbKhZChbyS5LRfndtAySbf5aZTnDmDNTKtubhga5K9mv0cjl3b398NMabW6S7IJSxTUMY65MqWxIwQYLkq0p6rKiHDMlo2x4eKJxOcOYK1MuW/35c9qupM1uRXlcYgrJ9rvlfkU5w5grUy7b6+oauSv5pq5eLsd8JF8tWkvCNbW0K65hGHNkymVD8i1Wk2zNsdGK8u263CQRV28pyhnGHDGJbPVhodqupK2Nojzk0lWSDaUzLmcYc8QksvWXl5NsL777mia79eU5haUkG/Lu3XvFNQxjbkzZKTYjyfx1CQmXExSoKF+6yZpkC78cpyhnmJmMSKaxMEnLhtSHnCbZSu2Uh2x4n9KuJuFDExlzx2Sy9RYXk2yZc7+FoY5Oufzh00ySDQ9NNI5nGHPDZLIhuSuXkXCt8dflst6+1zBfl5skr7hcEc8w5oRJZasNDiLZyg7YKcoP6laT+J9VLlhmGHPCpLL15OWRbFk/zIGh3j65/HrSfZKND01kzBmTyobk6kYlW2/elMswH8k/FluQcC1tHYp4hjEXTC5bzYnjJFuFk4OifIcuN0lUfJKinGHMBZPLhsldqSv573/Bu0HDIRth0fEkGx+ayJgrJpcNyV6ygIRrSzac15ZfUkGyIcaxDGMuTItsNf5+JFvlYWdF+aqdB0i2+09eKMoZxhyYFtk6nz/XdiXn/6gox42kKJuDV6CinGHMgWmRDXm54CcSruPhQ7ksNeMlyYaHJhrHMow5MG2yVfl4k2waN8OAyJs3g5QECIUrKjPkLGEYc2DaZOt8kkayvVwwX1Hu5HOSZDsRrsxZwjCznWmT7d3QMGT9NI+E05/hhtxIfkSyLdlorYhnmNnOtMmGaDzcSbYqD8NObcxHgqnJUbj2jm5FPMPMZqZVNjzPDWXDeTfj8l1OniRbTIJhHo5hZjvTKttwXz9kzptLwnVlZMjlF+Jukmxb97sq4hlmNjOtsiEatyParqS34QipovIqkg1JfvRMEc8ws5Vpl609OZlky1m2WC57kVME622cwNErCGwOe0N49A3FNQwzG5l22Ya7uyHz++9IuO6cHCrzCg6HqBtJupO5AawOeUOZpnrUtQwzm5h22ZCKw04kW/Vxf/q739kIiE9+qFMNwNLRQxLw3KjrGGY2MSNka72VSLLlrlhKf8dDEq2l7mNAeBS4B4XBsi176f1t2RZbPvWGmbXMCNkG219RAlcUrq+oiMpSM7LgeOglSk2Oh3BYWDvKgyZ7Xf2gttGQ7JVhZgMzQjak3GE/yVZ7Urzi/+3b93AuNgHmrdoqS3cqIhb6+t8I4xlmpjFjZGu9cZ1ky/t9hbBeT31TK7gHhsnCfbvsD7h+54EwlmFmEjNGtoGmZpIN6a8YO3/ki9xC2O3sJUuH3UzcoiOKZZiZwIyRDSmz20uy1YeGCOtF4MLlFdv2ydLhroHC0kphLMNMJzNKtpYrcSRb/ppVwvqPMTT0Fs5ExlGXUi8dJnxtan0F6Vk58OjZCxgYGBReyzCmwmSn2IyH/Af35a5k3r27wphPcf9RKlg7e8jCYdLXbfvdwNn3JFgf8oK4+EThdQzzuYhkGosZ1bIhePY2ytZwfuKT2M9fFsDqnQdhrfQe9+HDB5oYD7l8jQ/LZ6aVGSdbY9Rlkq1gg4WwfrzgYMl+jwASDT+J99PANeCsMJZhTMGMk61fo5G7km8aG4Ux4wUHS3zPXITL8UlSd9IVTkXECeMYxhTMONmQ4l07SLbGy5eE9eOloroOzkrdx6WbbekdLvBclDCOYUzBjJSt4eIFkq1o6yZh/eeiPyXn36u388EdzLQxI2XrKy0l2TLnfAMNERcpOZAo7nPABEIoXOhlw0GMDGNKZqRsnRkZULxtE9T4eEHVEWeo9vGB9+/eC2PHy6Xrt0m2XzbZQP/rAWEMw0wlM1K22qAA6LyVqBtHBKjYawMN4eEw1D3xbFsDg0PyImYcMBHFMMxUMiNlqwsMgI7bBtlKdmyVRyhxSqA+5DT04K7uz2ztQi5dJdlW7TworGeYqWRGytad9RLK7WyhztcbNM6OUGZrA0WScPo9b3ownQKez91y7Qq8rhx7PWRnVy98u3Q9CXf9juGMAYYxBTNSNuR1TS00RkZCa4Ih2c9QRye0p6RAtZ8v5K+3UIiH4Pac6mO+FDPQ0kKn5dQe94PKQ45QH6ad0A4Iu0Sybdp3WL4vw5iCGSvbeBhsa4e227eg0tUF8lYuGyVf0eYN0HRReterKIeqw07QfCWW9sOhbEjKY06Tx5iOWS3bSAaaW6SWMAEqpJbs5fx5ULp7h+6tD6Dn0UOolrqlGOcRFE6y4X64kfdgmKnCrGQz5nVdLZRa74J3DfUkW42XOzRHa1eQlFfVyq1belbuqGsZZiowW9mQjgcPoMTKEoq3bIT81Suh9eoVuc7ZN5hks3c/rriGGT+XrifB0ROhcPJCDBTwht0xMWvZkMGWFig/qE0mVLLHcAxVblGZ3LrlFVcormHG5uKVRMpylvggDfxCI8HZ56QwjjFg9rIhfcXF8qBJ17Oncjk+LCjbkeNnFPHM2OB2pTuPnlIXHT+H/E7Bi5xCYSyjRRWyIWX2+0i2cifDhPZT6X1N37ppauoV8cynwa4j5vXEz59//h/sOOgOucVjJ2pSM6qRrev5c7l168k1DIpYOriTbD6nLijimU8TfCEafrO0p3MY1lo5wvYDR4VxjAHVyIbgKhSUDU881Zfde5JBss1ZvhHaXnUq4pmPs3D9Lvrdth1wk3sHrzr5pNhPoSrZXt27p23dvvsaXmsMo2d/7HGmhyVY6hoZxzNiMCmuXrD8kgr598PVOaJ4RouqZEPy1q4i4WpOGIb8E1Ie08Myf60lvOGUd2Pyn3U76ffC6RP8Ox5YqZdvZCxjQHWytVy/RrJl/TQPBlvb5PKVO+zoYcEjho3jGSXXbt+TxSquMJyZN3fFZiq7eTdVEc8YUJ1s796+g+wlC0m4+lBDtq3oG3foYcFjqYzjGSU/W2hbtZHTJWcitduXftthryhnDKhONkSf4yTn1yXw9o121zaehrPoj930wFxLuj/qGuZPuGrUquGSN+O6nt5+uc64xWMMqFK2oc4uyPxhDgnXFHVZLg+PuUEPy1orB0U8o2X+2h30++ASLVG9g1cg1eOfonq1o0rZEDwHDmXLtzC81Ld1dMG/VmrfPXj7jZK4xLv0uyCa2gZhTGGpRo4ZnIQkTeaGamV7U1dHsiHGG1RPno+mh2WrvasiXu1gGkD8XbyCzwvr9azedZDiwqI4i9lIVCsbovH0INmKtm+Ry2rqm+DrJRb0wOByLuN4tRJ7M5l+D6RujOOVE++lUdz3Kw2/KaNlRp1iY2ryEm/KrVvuxQty+YGj2gXKm/ceUsSrle9XbqLfw8HzuLB+JP+7ZB3FX4y5Jqw3B0QyjYWqWzak3OEAyWa8/aa4vIoeFgRXSBjHqw39lAiC592JYkaCK3EwfrOdi7BeraheNuMFyt1ZWXK5i/9pemD0qyTUyg+/baHf4US4YdR2LBqb22RBaxs+3e1UE6qXDSmx2kmyGW+/ycovlh+YqrovO01ntoLJbPW/QdurLmHMx7A76k/XuQeGCevVCMsm0a5foCzRV1Yml9sfPU4PjLdKt9/gIAf+/w++GCus/xQZOYWyqKJ6NcKy6cBMyyib8fabtIxseli+Wrjms//LPtu5dE17NgLS2d0rjBkL/XrTmIQ7wnq1wbLp0C9Qxu03bxqb5PJdTl70wHgGh0Nz+/gGCMyBuSu0I5BnIg1Jkj4X/VacRRushPVqg2XT8W5wEHKXLyXhcHWJvjzu1l1YvnUvbLA9THkm7z15objOHIm4eoskQXr6+oUx4wHXm361aA3dJzO3SBijJlg2IxojLpJsuP1mqLePyqJu3KGXfPzUNbVIwnlCnZmPsE1Gq6bneGgk3cv6sI+wXk2wbEYMSt3ErPnzSLiGC9plSV4nz8GD9EySDT97jvhCaWXNqGvNBUxRp2/VBgaGhDGfQ5mmWr4fHmwiilELLNsIaoODSDbcfoN/j7mZAg7eQVBRUw/hsTdov5aNiy/NJY281hz4568bSIzJaNX0YKuG91T7meYs2wheV1VrB0okWq5fpTLcGInbRpx8gmDF1n304GBqgLtpGaOun83gLnV9K/T27TthzETAngHeE0d1RfVqgWUTUOXtSbIZb7/R09v/Gjx1B3MgQeejR8XMVr5d9gf9f5rMVk3P0s02dO9b99OE9WqAZRPQk58vt27td+8KY/AwRf2xwTsdPWi3gChutnAuJkH+D4io/kvRj3Cu2nlAWK8GWLaPUOF0kGQz3n4zEhwo0c/D4WoL3F4iipsNfPOL9kTWqWjVkJa2DlnmEpWmTWDZPkJn+hO5det8/uld2/oNp4j3qU9vrpyJhEXHy99fVD9ZeJ7Udr8dpXdfUb25w7J9ghKb3SQbnhMgqjfmXlqG9F6yhx6mDbbOUFGtTIgzk9Fvlp2qVk2P8eLuoaG3whhzhmX7BO3Jd+TWrbdo7BUQDc1tcNDrBD1M/1hsMSsOyQ+9fF0WQFQ/2Vg6as9WwORKonpzhmUbg8JNf5BsGrcjwnoRODH894XaZUpuAYbclDORrxatpe851a2aHn32aUysJKo3Z1i2MWi+Ege5yxZD/u/LocLRAbrS04VxI3meXQAW1o70YP1uuR+KyqugTFNDGahE8aZmePgtnLoYR98PEcVMBW8GhmDBOu2hHI+fGzbrqgGWbQzwaOAaLw/48Ndf0JP6GMr22sBwb48wdiSYuBTXVeKDNW/VNthi5wqOPifBxf/MtCYyTc14CQc9g2DF9n2wZKONJN3n71f7EvDfw99ki934ewvmAMs2BvXBQdD7LF23MhKgZPtW0Lgcgv7q8cuCZ5lZWDnA64FBuofHyXCaMgiLiodrSffg4dNMOna4tqEZevteC++hB+erjhwPoTwfeI0oxhgUHjNiFZZWQnpmLmV7xof8eW4RfRf3oDCIN/G7ZWV1vdyi1je1CmPMEZZtDDCnZK3UssGHD9D7JBUKdKfg0CjlQXvofDZ2Mlc8s/uARwA93PhJSXsOP1tYyg/cSHB94uINVrB+jxOtK8S8+riuEI8ltnbxgZTUZ+B/NgJ2OXuRfDj1gFmKcWc5HkqIE8e4nOybpdq5s5Fs2uei+yYAqS+yIeAz8otMFjj8j98FpwNE9eYIyzYO6k8HQ7mdLVQ4O1GuycLNG2ThkMKN6yUp4+H9u/fC6xEHryA6vyw9K492DuxzO05LvVylVmqPyzHYYHuIpg7mLtdubxHx8zpLSH5sOMd6l5OnMM4YnKxGsXEB9Rb7I5Ksx2Dj3sOQ9OAJDA6+BbfA0Gk52wDf1/TfUVRvjrBsE6QzLRUqpe7ki+++lqV7ueAnqA85DW8aRycIyswrogxVmLULJ5FH1huD6y8xK1VuUTk8epZFO55xqBzPrT4WEkmivXv3p9RCHaYWAu+Hh17cTX0Oz17m0/sgds+wCym6f5rUmrkGhFBLOZH8IpOF/hDFuMQUYb25wbJ9If2aKmgIOwt5q1YoWrtK18PQ/fKl8JqJgu9dTr7B4HzsFFhJ3cvZvDwMidJl71qy0ZCzc6I8k3oMJ8KjIFLqVr/qmpnHDbNsk8TboWFoS0qC0r22CumKLbdB661bMCy1Vk2x0dAQGgI9uTnCe4yXrPwSEk9UN5to7+iGH1dtI+FORcRCd8/EUjDcTc0A60Pe4Hc2Etyld0DsmoviphuWbQroKSiAmgB/yF70sywdDqxUu7tCra8XlO6xhs509W41Mcb2iB9ssnMBB6k7bOt6DF7kFMp1XT19UF3XCHlSdxqnKxJSHskDQm4nQik35db9rrBiux3EJz+k7jV+cHOvR2DYjMtmzbJNIXgOXMuVONoXV7p7p+5RAOi8dRMK1q+hpLC1gQHQHBMFHQ8fQl9xMQx1dAjvpacz7THUSdc0RkbAQMvszoVSWFYJuxw9dL8KwPkrN2Gx1KXU50AZLz+t2QExCcm6uwCss3GS63DDKo6+4uAUCjudR1mxbCYAE7+W2droHgWAVzfiIWfxfxTdTWOy5s2F/NUrocR6F1R5uEG91PVsvXkT6k4H030apT9rvT1Bc3R2TwpjXs5D0vun/pNw77F8OP6c5RspBR7OT+KoKy4G8Dl9gXbNRyfcgdsPnsCTzBxqvfB/27j4gGvAWWodceTX0TuI3gX10hmD0ypYfyP5EW390X+fxpZ2uCAJ7x8aSbvLjb/rZKDqU2xMSaGXB1Q4HIBqnDrYbQnZ/scg58xpyJbKX+63g6ytmyFz5a/w4sd/CQVEcpYshI6bCbpHEyTxrCFr1Up4uW8PZLsdgRypxcPTePIkmfMfPYKCnBzhd8mNj4cCT3fIP3gAcv19hTGmws7tGHgGn4OQS1eplTseck4YNxZpT5/ByfBICI2IUZRnvMiEyLjr4HIsCNZZHYRvBXOPXy+2gPXWDrDV/ggtOMAVLphF7czFKMW9jBHJNBbcspmQ1luJ0BwbA2/qxSd36hnu7ob+8jJ6r8M8KHVnTtHoZv7a36E1+rJONYCiTeuFUhqT9fOP2m6sjZXUErpS61hqvRvqT/hD98MHUC6JWhdyCoZ7eulwf9H3+Ri4brTa2wPqzoZAf+nYq1lENDS1wvnYBDgWEkFTF6KYyQZ3Z2B6BlwIgPOPeul2OnrqflmAeOn90GeS9yaybLOIrswsKLffB9XubtKfe6Em8ARtbG1NvEmp96qP+UK5w34o3LoJcn/9BV7M/VYoYJnNLt0jBdB9967UYi6Q67KkljVbakHz1/wOhVs2QokkaYWTA6Vlx/fL+rBQesescHaE8r02Upf4OjQE+IPmyCHhd54t3HmYDjsOHNX9KgAR126B9xinrH4uLNssY6ijE9qkFrLt7vgmgoe7pFayokKWssrXG4q3b4G/3g7TQ1Xv7wf5UvcVE9NmfPsPhZSfAgXtTE6ie+CnfI+VJOhvoJG6xc1X46AnL4+mO0TfaaZyPu4mjWTi2lNbVz94kTOx7uLHYNlUSHvSbSjbZwNVUtdUI9FXaBhuH+7tg4HmFnitqSRhup6mQ3tKCp2F0BgZCfVSl7baz5davcZTJ0m0D//9LxRuWCeUMlcSudzxANSfC4fOJ2l0b+Pvgv9eU0wMdWW7Myd/UOJzSUnNoMUCnd3j29nxObBsKqWvqBi6sic+ud6dkw2VUleyyu0IbTtqiroEnamPqZtZftAe8lYuE8qHYNbpkt2WUCO9N+Ka0xovd6iTBMaR1o7UR8J/byyGXnXQiO2rj2RDmwmwbMzEefsOuqXuqfGJrcYM9/VBT04uzTXiOx/uen8x5xuFeKVWltQ64qcj8Qbk/74C8tauoqxmpXv3QOVhJ6lr6kmHnTScP0f3wpU6HZLYuByuv6xManmTqaWu9sB3WTtovHBO+H2mG5aNMTn9Gg0JgqkmSi236VQDaL9+9ZPzjx8DV+q0xkTr7gJQsm0zDdhgS9dbUECju6LvYWpYNmZaqT9zGqqcHKgriaOb+H6IrRW2Wth6YSuGrRm2ati6YSuHrR22etj6YSuIKSs6E27oVAMotd41Ssg8qcXEkVpcINB2J0ko4XBfL03N1J09DV2TvIgcYdmYaaf19m1ouXZl1ODJeMFWEucLG4MDodbbQ+pS2tLcJKYg1J+5JyLz+39S17bSxZkkLLfbCzWeblB7zIfeQzvSHgv/vYnCsjFmQUdaKtQGBkLTpUgYaFWmWng3/Bb6SkqgNSEBao77Q4nVTni5YP4o+ZTrVxOgLuiE4j5fCsvGqJa3A4NSd7IQWuOvQ7nUlS3esVWnmvT+GH8Nqv2PCa+bKCwbw+jAOUSNs/T+KHVFcUpist/bWDaGMQI3+jbHxcKbxsk/lYhlYxgTwbIxjIlg2RjGRLBsDGMiWDaGMREsG8OYCJaNYUwEy8YwJoJlYxgTwbIxjIlg2RjGRLBsDGMS/oT/BxvHGV9fKuq/AAAAAElFTkSuQmCC"},{type:"echarts|line|smooth",name:"Smoothed Line Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAQnklEQVR4Xu1cfVxUZfb/njsDiEhCiqalYmpmCDMDM5YvzKCCu1quCpSxWq1ptlu7lZ82K3tRy9q2N922F1Pz57ZGb+Bb7a9aUJwBTWPGmUFNLVOzF1MhQVDEmblnP3dwaD4s0J03GFvuX8Plec75Pud7n3Oe5zznXkLnFVYWoLBC0wkGnYSE2UPQSUgnIWFmgTCD4/MMMaeldT3L52cw6CvDrootYTYev+AMnzClH4nKKQKwzV5caPVLSJA6+URIiS7psuiEvjsSJkzsXmMxK501NRtHbPrXzCBh6RAxKeOyUxMSemy5JXtSZP7Gj52x3WIeLVzx4ksdAgbwLahv049a1m/23Hv73XqbG++OrHG1qDyVMtJmO9JRAwhU76gptxxZuuiBASPUyag5XYvMm+9oMH/0bpdA5frbv8UZYjabuSWBjvWFuPyqoWgiZPJEKP54H4SePf3V36H9nl2Rj29+OIFli+fDQ0hW3p3Q61TIm5wZMmxarbZVz+Szy+qS0HdnwtjxV9TYbILzdPXGaz/4eGrIkIdQcEpWzjIC3csi1yb0vFQ5M/t6yt/wEZ8/fx7Vp2ujAV5jLyqcFUIILYr2iRBJgjuok2gGYRgYN+rN1oL2Bh2ovuGZuRkKQokkx8UYC8HxlUKMmApwmZMEVjJvBaE7g/9WUVR4X6D6fOnvMyGScJNW/SyIHiDgmfRy68O+KAyHtqrM3BIQMlozeFLWjWoPKRJhe4oLtrYXbr8IMepU0wnCO8xcZDDbJrQX2GDocRsbbAWjhpzORNvWDdUtyU3Oyv6dAOH/AD5CDpemtXbBwOQtwz9C1OohFEFfMHO1wWyLDzaoUMprih0y3FFKVu5WAgzMWFxRXLAolLg8sv0ipNFtac6A0DXCwQMvpmWvKivnMECJTpBmb9H7traMrM6YmsgRysNgriane5aEfHkfACHqEhBlgJGrN1sL2+PpCVTHT+6Kv7YXFybKkec1o/5RUVT4Ozl9AmnjNyFGnep5gnA/RP6L3mJbEAiI9uqbkpm7iAgLGSzbuOqMqXGsVB6RVl3kcA4M9Szxm5BSrSaPCfnM/G+D2far9jJqIHpUWblSnkotijxt9+bCDXJltecs8Z+QEaqrmIUDF0tgdz/pEcpTEgn2ogKfxt0slkizpMWVmVyC22rnE7Dmgkw69Y8AxQvsunqMueJAMAD5IsOUlpKqvKT7a1If16naB10ROKN00ndjrNbvm8tJHp8zVRBoPQPGiqKCDF/0SG1TsnLWEOi2UK+4AiLEqFO/S6CbIOIPeot1ua+DDKS9UTe8X1TPPruHLl7SXZKz/7EFcPz44wWR/DkYC/Rm20aPjia34+cS9qfdPR+xFxUODAS7zzOkteRic0FOkxHn314LRaoWUXfcGSqMLcp1bClG39690f/WxoXP0dVv4Ou33wKfqQM5ne57irHjEHVTnvv3g8++hspTNVh4z+3o36eXX1jn//VVVFWfxt0zs5GadJVfMqROQUsuNkewPS35aqeg3AfwKX257VK/EfrYcW9SUmRldMTWqF69Rqbmv+fuvWvm9LqGH37Qx7DywFlyPQIi98qPmRffFT9kg2d3bi8uiPNRXVPzlMzc+4iw1JdVmq+6AnJZkjKjTnOMgMvYRdcYdu3a5ysAX9szoDBp1ZuIaJIyLr7adfZMFwK7ugxIXKDNf6/pYMmUpp4DgVZK8l/v2mftnsiuM5mxsaK4wO/stPfCgBzO+FAE94AJMWnV+SDKg4i79BarO8CG8jKmqR4lQXiSgSoBzhHp5bsPtabPqFXdSSQsfyb2Cv5OEUUixFm7i9atCQRfSmbuBiJMYca8iuKCZYHIaqlvwISU6tRzGfQ6g98zlNumBxugtzxjWnIyBOUu6R6Jrmv1lgr377au9Trdk4viBjzq9t0N1alvmIoDOjP3rNYA2OxFBZqf0+/r/wMmxHgh0RjqOFKSmNhF0TPOBqKhEMUn9Bb7QjmDVWVOmwVSrL7c1YAHT39TojfbMgkQ5fRtrY0qM7c6VDv3gAnxjiNwIklvtX4eyGBbdT86zf0EPM/gL3uedQxP2rv3vBw9HhczpqHm3PT6yi4Q+Xm9xfaAnL6ttfHakwTdbQWFEJNOvRagGQS+O73c9mogg22p7/aRV0Q7HAlHidCTXOLk9F32D+Xo8A7CExuqZ0+sr1pBgIIh5hjK7evkyGipTSjdVlAIMWo1s4mwCswFerPtRn8H2lq/0jTNPSzgbwyYDeVWnVz5nmUquDG7a9Sp7yXQMgbOkegaLScGtbfbCgohn6rViY4IOsyMGr3ZGk9Ai1Urcg3ZvJ1Jq/kahP4CY9IYs/UjuXI8Zx/eR7UmrXo1iGYxozJCpJGjdu06KFeedzuPKwzGys1bblAIcccRreZzIgwTRDF9jMVe5s8gW+pj0mkMALaCcTTdbE2US7Z3IYP3YdSFfcxHRJTF4G8jHUj354DNc8Qb6N6m+ZiDRogpTf0cBPqzD4UPwvDx08bv2by+qC3yjFrNKiLMBvMjerPtablEewIvwHZ7UaHau589JSWmJlKxHYQUiRRREEcKTrpGb7EXySW8KQPsR/a4rTEEjZBSrTqDiUrAqNCbraq2lE69fd6Ew99++9HEjNHHTDstsXV1Zx9nQbApHA679+5XeppLdepTAMUyHP0N5Xu+kUOIt7Facyk7R1zdo0GM3iKRooiOFuPH6E9WFn3Sq9ugQVmp7xRslqNHlZVjA0jl6/lKuxDS6Ao0VUTo7hJc/cburPi2NcXX/WZm5bqVL/bo0ysBHxRtxVMvrcK5hgYp8VTNoDWC07lYIsaUpr4eAkkrKou+3KqVYySpTdPsuBDMW+u349rBl7i69jky+MGH43v9aiLqv/sW1t/efGK0aVtvObq8TiCDVr/lUynpz4FsWLkcrl0WROXNgELf8pFD9elaPLMiH0Vvr3CL++rIN7hrwRIcr/SkzoGe8d1x9y056L35Y7i2lSJi8hRETLrh59S7/7//0FE8tzLf/fv2G6/H6NTkNvu5XnsZwx99HF0TB0qJSOy4YSIiFjwG6vLz5b1Hj53A4pdWu/H+df4fZOGTGoUs29scgTFN/VsS6C1mLjGYbeOa/7+xyEBcf2l8XOKQxP48Y9oken1tYd2eL76YUVG0bpM7ULKwTNoFS7Pl5nMnI0Y31MaQE+p0q9UuZ8SeIriWYkeLi4Y09dTYpOH/7Df3zm7frX0TdQf2w1Vba1TWO7JH7d3701PSinLPrl1OFYsc/EGLIZKysqFDY8XY6EomUnSh+t7Xfra/ygOisRpQlCpV4iRjwSW+Hd01ZkD9ufqN9uLCTzztpM2cqFSukRJ40r3pZ07WLNhulJUy/6m4rbFEVG7FYZlWM5Gjoyfz2TPHWKBZBBrI4O+IOVtvtn/WliGDvWsPKiEScJNWvQFEUyDyHXqLbZV0z5sMuWcJt+h/vbkiqpt7ljFjWUVxwby2DNNMh98+XXqoXLFd3yXCRAacxOJ8vdm+tDXdgR4NN5cbfEJ0qpmA8E8AH+vLrRP9IcNNrE5j3BEZq3+rq+d0j9eQwzWv+RlEyvjsXAC9iOgpz+xrvsyV4yqatzFp1fOZ6Gl3qoWxSVF7duaYAwdqm7cLpHiiJVxBJ8TbbZmE2GEFsQmfSYaSOzMkkNI+oTpKUSP9XnhJ4g2nSPGOO64ANhdjnscVjb9pTsXQQYn9SaDYPfsPCtU1tW3W6/pKjFGnHgVgHYF6M/gwXML1LR3CeZa/vrjJ1rAEnZBGt6WRDDh9UeyAr6oUykFSzCCHK0PuCVupLmUyQ7FJEqUvtxq8q9HdA2FsFSEezrhOO+OlJx+OlG79/qEnxW2Wigf3FBc876vh22pv0mgSoGDJDUvk1LPIcwwWW+My7sIVaAGFt6yQEFKq02RuiYorWhfdQzKez0+tSad+FSBpHblQX259QgLcPNhL98aM0ODlJY1Fk3c/8nRN2U7LnIrN64L+voq0xyrTaZYw8FCj8Xhln1N1fxpy8GCD9Fcw40hICFFl5mhA5D7NSztfO3e18RP32bbcy6TVfA9CHxJd16VbKnZ695NyVAJwHwhxl3a/JG3YkIFChDKC9x44eGjze6tS5Orwp520GnMBb0ubX2bsVvD5G8ZY9h5tiiPM1fbiwoDeBgg6IRfASW8nqQ0N1cg5W7XaYLbOlmuAbTq12gWyys0cXwjqCMXMaAlzWVpSfxdFfkiEZAmjAsiTMtCqzJwjIBoQ6H4k6IR40gkCeO9fqg8PiWaRI+odfeVsstzxR6d5DMAT7XFGL/chad7uy8GDo76P6/YSEc11b++B5+6Ju/IyJuHWQIsfgkqId1JPWnG8WnNwBkBzpNoog9km64UXo079GYF0AM/Sl9sCqhDx1+By+13ITEh7regtkbGHdkfEXtmte2xdfOXx25ZtK/HrRDKohDTtWi+U+5dpU4aKEPYx6HQMCwO0Fot7Kdva5c7AcnSl9NRFCecSvHf6co3U3u2MqanDoBA3rkpUDUlKHw3V8GFYm18g9tq/O3dp2Zb1vuIJGiFNB0KNqyq15z0Ko1azkQi/YeanDGabuxyntcukVd8HoqUMlBrKrXpfB9NR7f88auw9564duezvLz7ltuf/bynFBy8v/3z5+vwkXzEFLdsrvYR/4PBRTB43GlOz0ptw8LFjqH/icbBSiZhnngNiurWMkRn1jz8CrjyJyOl5UGb8V27S17G1W/vaEyfxyCtvYtuHjduTJUuXg7/ch0mzb20RQ8izvU1VGK3sOYw69SsEugvMG/VmW4ulnMY01QQShE/ALLpY0XusxVLZbhYNgqJ7p9xUUO5UZKsGJ4p1x0/UDzq85/JFO3ee9lV0UFxW05tJrZRqliYnx3MXxVfSuyRg5OnN1neaAzXpNGZp2wLmDXqzbZqvAwmH9vePGjfgPDD279u3+L0YCZgQ79jRVmW5Jx3CzGcATjeY7U0lnaVa1e1MwhuSURk82lBu2x4OBu4IDAET0vRVBBkvwhh16sbviwBVkbGX7BS6Ric4a+tKnGfq5lJjAnK9odyW3RGGCBedAREi96sInsG6z9116veVMd2m9cm9EX2n5+HQC8+jqtQIbmg4CW5Q6S37joWLcToCR0CEeO07ZB8I7Ro6tK+YPGxP2vvr3TmfhhPHYb1tZkNDVWV6RrmtvCOMEE46/SbEe1fu6/vbn45NP3Tl/IcG9vr1JBxa9iKO/+vD/FHFJTPCyTAdhcVvQgJ5vUs6Y1DGx+6I6pHgctScOqysqrlBa7E4OsoI4aTXb0I8dbOBFIltT0q6VG7SMZyMFkosfhEyLDP7ukgSPvVUlYcS4P+abJ8JmXzbn1aeqT+bd7b+XIxSqVhXtv7NnP81o4VyvD4RkpyZM1c/IvXFl59aEPP9Dycw6da7ff5MRSgH80uQ7VNy8Z0PN2PqpAkYrWssJl/4wisYdHlvJA0J2YcNfgk2/q8xBC25mJyVM0lzzdCCx+f9Pnr3vi/xwuv/qCzb8GbCL9JqHTQon1yWhFGVlT2tR3z8A+fOO6pO11bP2bN50/EOwv6LVOszIb9IK4TRoDoJCSMyJCidhHQSEmYWCDM4nTOkk5Aws0CYwemcIZ2EhJkFwgxO5wzpJCTMLBBmcDpnyMVAiNzPxIbZWC4aOEHL9l40I76IgXa6rDAjr5OQMCPkP2b1bLpy9/7qAAAAAElFTkSuQmCC"},{type:"echarts|line|label",name:"Line with labels",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAANWUlEQVR4Xu1caXQb1RX+7kiyY1Mch6UE2lMCGEJiLI2wDFklJ7ZD2dqAbSiFAGVrgbKkC6dQaB2gBU57Qgsp7SFAE6BAausEwm4rxFYWQiVHIyWGAIE6tEBZY7M4jiXN7Xky5jiKlpmx5Cix5u+8e+fd73vz5t1tCPkrpxCgnJpNfjLIE5JjiyBPSJ6QHENgBNPxVsrzQbiOAZmISsHcTsCi2X6l3aja/BtiELkYGRKtTCROzHOMkpInxCghDrkdRK6E4swdTr9SbUR1nhAjqAHwVtk5mSgz97j8ygQjqhMS4vf7kz7MyEP2R5m+Ky9Pbta4IhTffU/S+w6HI+mLMGbeELl6/qSoxXKkQMkUDm9X2p/sHslC8ea3LGPwydXzS9liuhugi3fXwMsoHF2otD/ZY0Rz/qNuBDUA1tqGJiL8NpE4MxaFPC1NRlR7K+3XgPgegPsZ0i4ijAdzBwFNRk9YYh77/ZZlq6tXALIlAV0JtrXY9RKyzm4/QjVjG4AiNRp1Vm8KrdWrI9n4MUBIQ8oDSrCtRTcGHQ65lYjqmPl+l1/5cabIGBtvSG19N4hiH/M9LubtQY97kh5AOxz2C4mwnMEflO5Sj7GFQl/qkU83VvfqSKdwJPfXyHKpZMFFxIiBxIRuNYzlcxTF0IdX6LDW1K8iic5MyAd4eajNHfexT27BhvLyg8JFBW/Hvhcqn+HsVJ4dib2JZHOGkJdledKAGYFYTGjYJZysggjs0xVF9zG1Yl798aTiZYBKKc5SZoCi0cXBNSt/rhXUjip5BYHOAWOF0x/4gVY5PeNyhhCvQ34SRN9PPHle7vQpmley0DG1urHMYuENAA6Fyvcz0WsgHnzzGCYCrhKHGiZpzua25o50oHkr5dMh0TPM6LXsHDh6RlfXp+lkjNzPIULs3SAk3OsZ3O3yKUdpNVA4gWwxbQDocGZeGvK4r4iXtdbW/5qIbmfmT3ZR2Pp626r3kulfN3nygdGS4jcImMjgC1w+5R9a56J3XM6ETlKGIgAU/3WpJts+7fkMv//bI9jR+zmm28txaeMZoPj9KvaWMBY/tAKvbuvGkUcchpuuuhBmkynhM3Y9uhzR9esgTZmKcdcu1DSPVIP2idCJt8quAEjmLwSdvoCcDony6saJJgtvIOAoMK8IetznCeyTyR1d2zj+QKjBwVMY/yXY5v5p/NiOKruTgA4w+pjCx7t8W/6Tbh4juZ8zW1aHQ24ioiQeNa9y+ZUk35dB84+rPvOQIkuB2KaOZfBzoTa3OFmp6cCpqG2sIFJ9BCpk5oaQx+0eklkzadI46dDS1wg0Caxe4/QHl6TTN9L7OUNIu73iVMlkeg57HodiK5wZF7g6lccSGVwx6/QJNG7ceiKawswey47u0zo7O8NawamoaThfkvAowH0qoXJzq3urkPVWyn+ARL8A8ytOvzJNq76RjMsJQoavREnlZUxYLowyR9A9YOGTiOnxr0hZEE9K2amnlhSHi9cSkZXB3j5z37xtzz+/Sy8o1tr6+4joSgDbPvmCrCsib06OgPzEHDWrUvmMTZtEqCTrV04Q4nXId4Poega/q37UUzanu7t/uOXeKtsFYHp48HtA5zj9gdi2Yp037wBwiQjoVTLzxk+/lOb+9+XmnYZQq642Wy2HbBS6wOy+t/et4wEqZ+abXX7ld4Z0GhDa64Ssr5LlKGOTOAoRUDfbF/AkssNbKV8GiZYyEJUQPes882TPQQeoLxHRNAY6QZ+5Qq2tIwpjTK773hGFbAkR0cFn932MOQM9XbN9io2AqAFsDYnsVUIYMK2tkoODKxEPu/yBi1JZ0eGQryaiJQOgyG/HH7n1CzKdwMyhPkvf7G3PP/+ZIQTihM53nvbDroKiRwUw0wd6L77P6xFv5qhde5WQoZMVA58USp8fPe2VbWlBbT3pxBseKJ541+uWYhSy+s7O/l3y5nXP7sgUYl6HvLG1cMLJTxcfLA4SH0RNNLXrxeaseOWJ5rzXCPHa7VPZjCABZoZ6rssX/GdaUBsbTdYedRWBTjs0OoCFn787MF6NfHdWZ3BNWlkNA2JJJwn3iMjAdePLtjDhDDDag56Wuan8GQ2qNQ/Za4R0OORNRGQH+BmnT0kYjY2zQrLV1rtBNJ+Bf9/cu/2FiRy5koF+Yq51+pX1mq1OMDA+6XTtIRM3EZcIZ7WMgTtCbS03jUS/Vtm9EjoJe1oRdjcD44pQtOh2UElJyvmqKuP+J56Cb/NWTBh/IG76yQIcVFqCgSceQ6RjDWApQOG118NUdqxWu/cY1//nxVC3vgbzLCcKzl8Qu//ehx/jtiXLMBCO4GeXnIvyYzWH01LOI6dCJ+vt9iOjZrwm0p8AX+H0KWmDVNba+oeJaAHA71M4OmN4xYi3Sr4foMtFaANQ5zj9wX/pZSVV0slaW19PRC1g7olAsnV5mt/Rq1/P+FHfsrxVdhHqdgpH2OkL7Fb5JypEVIvpIjANZvGIu0nFVEgkorUfhcM049X25j0cNK/D/jAIC5j5C4CdLn8woBUELUknW139EoCuFie66PtSVVdX84BW/XrHjSohax22S5ikBwHsNEUwZWYgsH1owrGQudkUQFyCShx1GOhhCdOHQhrxRgpvca3D/jgI54p8hXhTtJKiKem0u9P4UNDjvlQv0FrHjxoh663Wb0YKTG+I9CeDf+nyKX8cPklrbcOTREgYQGTmp0Ie9/xURjEgrXXIgx99Rq8Z0Vkz/aEtqWT0JJ2GO42qigs2r27JSk5k1AjxVslPA3QGMwecfkXUUu4WibWlKkYAdwfb3Gm/qMLR9DrkVUR0GsCfSqzOmOUPvZ6IlKDVekBPofQWgQ4jVi+c7Q8+km4V22rOngNJeokZ/dFodFrXmpXBdDJ6748KIV6HvR6EFgYiFIHNGQi8Gj9RW11mynX8lZWWPoqKqHEtmD8ycWT6zM4tb8U/b+gwwMxtLr8yTytwFXUNN0jAXcz8dp+lz56pCMHQ87NOyMaTy0p2qd94I7YSgdtn+wK3JDI+dUEbB4Nt7rQJqiG9b5aVFb4/4cBWcXhg4H9mNTxrOCntJ1pnSyaTVxwCTFGaPCsQSJq+TTRXa129cE6F79QabGs5RSuZWsZlnRCvQ34IRD9i8JsHqKZyR5I8RUVt/R0S0a8STdpIyeeG6d8uikQOFRWFlQDvAGMrA1NEVQuz2k+gcQAbSjqJKLNwGpm5DKC3CXxQ7DDCaI8Ci7Z4WnKzg2poJcYS2OBpqXwEa03DahDPjc9/s87aqeGE+isrx/chqkD66hgdx/ZIOp3Ka8662iyZEmYQo4w5RknJ2hsiVmg4csirIv3JUO9x+YLXJXtlbTUNt0DCrcL5iqqR0yFZCsRYcyTSPeK2gUrbOkjSzITPHkGnk7WuQfQTJuygYqAj1NaSWx1UXoe8GEQLwXinmKUpjs7OvkSgnFBzVp1JMon9HqxGTw2tXvmClr1W65hsdTqlPIQw9wQ97tzpoOLt27HzzttjmImyGVE+k+j6eEcvFt37d/Tt7MeZc2dift1srThrHjeSTqdUD7n0xjuT3i4qLMSSpuTlQqMay9KcdBLer/ngTpELz8ZpZQitbHU67TNbltakk7WuYSkBl4F5++eQbG97mns1L3sdA7PV6VRRUz9fStIWnTMfda1Jp6GyGwbvYpaqNnuaN+vAWPfQrxr8r2eQnKlOJzEJQQpJdD0xZMRCQuhQGU1GT1hCZ0ZPWVqSTrsVpgGXh9paHtCN8H4skDFCvA7bQpC0OBbYG4geNzMU+jAet7jSzUeDbe7BTFD++hqBjBCiNelkq2t4EcC80cgr7KscGyIkvtMJwJkMHENEeySdhoD5uht2lDJvY4aQFJ1OKIhg1nRlz2ID4fxJJIm3Ayqrp2xZvbJtXwUs2/PW/Ybo7XQqr238jnmw5L+UGU0hT8uibBu1L+s3QIj2Tqfy8sYC0+GqL9vO375MQPzcdZcB6el0WrriaWxUunBwaQmarr0ExUXj9ifsDNuS0dCJ1k4na13DZQQsHS3nzzA6OSaoe8tK0+m0yOVXmqxzzz6RJGkjCJZsFgTkGJYZmY5uQsSR12TBnwCKq1QfbF0edP64C4RvJeuAzcjM91MlugkZwkEcfyPmwT8uiE6nocb+r50/oDMU/nga2tsj+yl2WTHLMCGJZmOrO/tWQLpFZP76KVyeqvc7K9bsB0ozRkje+cvMajBMyPBf5nF0IGySzM/GKi9U/Ca4uuW2zExv7GnRTUiyX+bFKnBVeim0uqVm7MGYOYt1E5Lql3kq852bPe4bMze9sadJNyHZ+GXe2IM9ucW6Qyepqi3EYx68I2HxYR7zYQhkNHSSskrdwC/z8kztjoDuLctaV7+M9vDSB5WOpOwzT8wgAroJGex0MiuiymI3EBm9FInIIy39HOvE6CZEABbrBTSbLx76ZR6YuqVIZJnRv0SPdRKG22+IkDyA2UMgT0j2sDWkOU+IIdiyJ5QnJHvYGtKcJ8QQbNkTyhOSPWwNac4TYgi27AnpjmVlbypjR3NGY1ljB7a9Y2l+y9o7uCd9ap6QHCPk/ysy8pytV7tSAAAAAElFTkSuQmCC"}]},{type:"area",name:"Area Chart",icon:"icon-fsux_tubiao_duijimianjitu",data:[{type:"echarts|area|default",name:"Basic Area Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAQzElEQVR4Xu2ceXxUVZbHf+e9V3tV9qWyIIvIIgESkgABQVFoRkFw/Xwcu1tGP70MLi32jHR/erS7P9P22Nug2NoqtHTT4zi2CAK2yrSiJAFZEo0whF32hEBIKpVUVWp778znFoQPhEryKglQaN3/IPeee+753uXcc88rQqLElQUorrRJKIMEkDibBAkgCSBxZoE4UyexQi4zkIqSontEl1Ora96O1nUCyGUEsvkfpu+wDx8xgGTZ0Lar9mDZuo/GdO4+AeQyARErI23K1OWjFj1vFV3uXPBYi2vTpu92XilRgVRXV/Nl0vNr00142xbY9u9DwaLFkTHHBORrY6XLONDy0qK1huSU2x3DhzOZzL62XTsTW9ZltP8FXZWXFj5PoMcBDkPDPhD9LHGod6Ixevo9Dzoz0x9oa/PubvAc/+HhDRv8lwJYRXHRfEj4A5jFMbANhMapVV/c3lVfX8tDXcCYUlr06r/88wOGNes+xnufbNy4/s2lU/obSOW4sbNZojUgkph5JxEOR1zeBJALTT3jvu9/8sqvnrppyMD8yB/um7/w8N49+6d9sWF1xGD9USrGFYyBbNgCwALmQyDUdshNADnPwgXfmDvAoliq/nHubdlPfO/bqKndg4d//Ew44A7m1lSuaOwPGJ9MGJMvaXIVAU4GnyRGNQjnPNcEkLNWHjv97plM9AYBaSkORzgjPTV8/ESDSZIk8vna9/kpNG3vh2vr+wJl+5gxthajXEWEkQBaGbyJAPV8mVcFkE0FBddO3rnzy74Yo5u20ugZd/+MGE8TkZirdczYwcRGApiIygDYmHFUBU2p/WjF0d7owYBcUVL4ARHNANDO4I0EBDrLimsgNQ9+a5Jn//73bIOHNAVPnz7Rvnv/jGmHD/ebxzNq5r1pssarCLgRDJWBWgI6G9zIQBkRHGDUB4lv2v3hyv2xQqkoKVwGogcj7i3TRhB7osmIayAbbyhzjVm6LMUxYgQOLn4OJ1atfOmGik2PxmqMaPXH3nzveEi8CoQ8MNqZqIqYW6PLZgPOrJQkZm5SWZpau37FLr16VJQULgTRryP1mbcK97artjEDuVyhE+3kScjvrsa4l5dEdPfs34faZ38J5ZEf6LVDl/U+3FSNFe9/DFXT4LBZcU2eE4okdStX1VR8ebQe7f4ArGYTFn7vmxiQk9WjLurnnyGw9JVIPTkvH0hL67bN5GXLu7xuXNF7yCfFxRnmVMfRrNlzLFm3zcKhxc+jZZvwFPGLqVU1P+3RElEqDJ88x2GyGF8nwhyG8GxoDzHrPpuIWNZAEwlIjRzKrM3c8dGqiFLRyobxRWXE+JgAMxhfgnh3T3rHvEJ6Ethffy8vLdpMwEQyGP0Gh90TON3kIcI14iIF5nKlPXTXpNraZr39FUy/c6RE8nsEDGbmAEGqBtilt31HPWbIRCgFISOy1TFm7lj/dmVnOZsLCwcFFRIeVUbEvQWq9PQVd0DEtK0oLVxJoDsB9gFUCXDozPaLJAIJY1gYXAfm22+s3l7T00BHT7/rfgnSH8+2cxGTME6wp3Zd/Z3BEohKCMhicACgWTs+fHt9R/3K0aNTNbO8lUDXAWhhsJhcF7i3/XaG9HYQettVlBT+BkRPgjnEwEYieC9sSwYARQCywBwE04Kpn9W8HE3+0FtvNVnDthcJ+I4IFzHRAYmxV7DVq09X9TSACCgmghOMkAbc+38fvb2murjY4JW0cgLKGPCDuYJIP/y4WiHlxYXzSKI/g1kDYTOArrcUhph9wxC5O/DbiuH0A5M2H2/vMOCYb9w7GBqvIcJoYTAwakA41VcQndoTiIoAzmVAY+C+F1sO3EGg+xkIE6NL9zbuV0hladF0DVhHgAzgM4BP9Gw8Sge4GCAjM3ZDUmfduG3HodE333MrSfxXInKA2c2gagLOwepZbqw1eCyIBohVOM/XiNJgK4NoC8BNsUqKixVSXjx6NEjeQkRWYm2P2Fr0DoQYZg1USoRkDdz2O0f+/x6TzZFkATCOMKiWwJpeeb2tl60GJ5xUjJnioJvT3lQ3I9jS49kWra8rDmRLQUF2wKJsJ1A2GMdAvD1mozCkFkkZvcyWPeCQYoGIZzNjOxMdj1lWLxqMDXnSH/KenPiOJZ02mFMiEmb4Xbvm+JsOxiruigI5G2zbLPZ5cQMmYMv5kU+9g9mp2FKX27JL/SQZM7Qgvu9tEBu662VbblWLpPTam9LTf344YHvCVzfFyKwclM3+P9my1RZJsYm2k/3ufff5G/fpkdNR54oBEcG2ypLCdSCazsweiXgjg8KxKC/qrrRkDC03Jg8XUUCLpgZGhn3eu/xNycmaKntJCiy3Oqt2K5aWWOXqqZ+shY0LPcduSGLNekoyhN40Z7jCksQtpNhcsmIXMkoCnoPz2ht0h1liBtJfoZPg8mUIb9kMlmXI1w0DGYQ3q7/4NMaypgB2+dVIErJTkZCunAkuGDQN01tO4JqgF8Jd2zZwOHbmDNQvXEdNRVMxq3YbMr2taJUVvJM+EH5J+CNnSnNYQ11IiziBZTYZ30oz60qWviKhk/LisT8iSfoVxGVJ482QENMM3qdYkv9kcZZ4ZNmiMKtZWtBt4jOXx/PLhGCrrSzYZhdRqn2K+cRrVucXPpJ1XdC6YyKwL/DUlQ5R/dlBEL9hyWpqlpWL5LaRZGmUDEkCyoiQr26+t76m+4jZFXjCrRw39k6WaOXZAYvXspM6JuS5Kh+Y0wauM6eO0kCSidVgthpyy0CXXlS+GjDc3t6UYgFLLSR7X7XmbDuumDpdNmPRAPimr+H6iSHvEI3BqywZLUcVU5fnlIdkc6NkSBbLY1i4vX5+W12Nct4LYeeeY96yYlP9wtobx42ZqElSOYiMYK4F4ZAeecckozVDCweW2Zxj9hisIlyOFA57U7Vw1DeFzjLtmirNbW9KyeaQIQRSV1gyP99sdMQ0ETpk3trePOi2oKtA/HudKdW9y2Dt8X3GQ7KpUVJSxN1+kBo49YPWY9UGij6JLhuQTUVFA1WFawBKBVgkDOzsCcaR5MyUVw3pE67Nyw4fa3Ybm9o8MgFadjjotkCLyXuSwJjmb3GMDfsi6ZpVBvvBNyyZu8Mk6Q6jFAfbMuf5To4XL4tVit1baU7WNSFEf15IplOKIVlEXAaEA6cf9x7fZhIRiU7lsgCJBNtMyjYiDI32sN8VmJ9kjpy5ZPEzhpFDh2DRkr/grTUfqJntXpcC7vU5MCLsM89odyUZCFQvGVxL7M7qJjJe9JTaWadrQ76kh30Nk41gWbi3qy3p7p4mVOe/t5NkbJAMYqVQrhpoWtBWt80C7fK+qdeOGmU8bTWKYNtE8YZAjE1MPRtUbFMfjJk0+b+WPGcSA9t38DAWLPz3gKm5MSYHIJrR0tSwfEfgdGqKpsrtoOBfbM6qnYq1y7hZOgdNT7bVTbWxZjohGUIrzrq3sQIR9f2QjA2yIUW46c5wwPWYt35bEqvnHJJLukLOD6VHIp/gymgP+9EG9r4pbdCnWQML5s68CbOnT8VzS17n/VXVrQ5We9yz9RjKqGl0W8CVPET1mzSA15uS96w1Z1z0WGVlVV7oqZucroWSWklWX7dkNvsluU+hGD+RoUEypgoo6Vqw9V/b6jbbz0K5pEAqS4ueZeDHDFaJqbKrh/3OBnzHnHHtx+YUkSoDuyIHk6xWDrqa/f0F4/z+SoNttknBVru4QRyQzSeX2pyfd7jGCmu0wFs/fqAayAyAtP+xZDVHc2/1TIDOdQKQlAZZSdNIolQ13Pa49/iWdC0cuGRAzguln8tb1aP4CnPGsApzyjBRN00NtSWz6tPTri91hGs8y9+UYuMzrvFb5qztAzS/Y3jIlzVEC2SLdJSV1szm47LxortOX/oVUE4ohlQGSQ4O+6b43QfeM6X+Ysf6Vf37BdXGksIZGtHfhbIix4mIdeUyvW7JGrHVlDRUtEtVQ20plwFGh0GFazzb35Scq4WMpoxMzrr7Hpxas5rCXg/eDyruWh3ubW/ghEBKvWJMTUpKkkZcO5hNJqOvdu+Bg+vf+mP/fEF1NpT+KRHZwTgA4j16FF1mzS6oMToGiTBtBodbkzT1Er5fdK3RfPJkjHvqaTlj2s1gTcPGiSW8yJ7X3w9bFyjgJtlyfdn4pBef+Unk/x/9t1+2VG79/LudV0rMX1CxuwX+Z58Bu91AcjLka/TFj950BVDhORNXzFMkpJ6NSekB2d915gZbMO1HC9EBpHJiCZY4IzvoJStulTG4aCxe6ADy1H+0VG75TB+QrrQ6P5QuHvbB/Cm6uI12yBCuyqu2nMJdBlsk1TxTDbnt/eRF9dZ6mWpI/rZDSsu/8y6qX7uGq0LkLfeLZItLWzxpGWnXDR0iG4zG9j5vWeeH0kWmCHMkOaHbm3SYJHrFllO0V7HkioMmSwu5baz1i0vbV9OJ82RY2Gc6KRnDdYqpXw/y7nTzkGQ6RcpFK6Ojje5EuYrSwj8DNK/rTJEL1Qgz6CVHXvEBxeIUXw+dhdHjbbmvhr4a2q/+5G/OrvTUBaSipPBJEP2GGBoTd58pAiDEkH7vyC8+pJizhQ+WHQ62WMExxaWuBsP2Vsc+ATkXSiciZq4hQl13igSIpBdseaVHFXOmaJCthlpiDRL2dqBXS7teA6koHjMOJG0WoXRi3suEblP02yHJL9jzxx9XjOkRGFrQZYnyqHS1GO5S6dkrICKUHpZRfTZvtY6AblNefJCU5+15E04oplQBw6kFXeYEjKhMYwZyQSidI4lgW6kb99ZLkrLInj/xlGxMEW8ZTjXQkoDR9frSDWTrHbN/Hqir+6k46aWkJAq73V4i2tiRCB2ti1aSDc878soaJWOSBNZyw0GXQXxBlChdWkAXEPH0arxm4LrSd9YmC0lVc2dxoL7+MyY0dCW5mWTjYnt+WbNscEjMWq6agKFnHuoCsqG48OEhjzz2uwEPPmQRQo+8thTH1q6BlJERtY9WVcOiU36cCjNEcs9gkwSjyBVPlB4t8N/v/rXnL6gqiooyTTlZtYOf+GGmkHho0X8GAo2nyhHlNt4oGczP2fMmtUmKVWFNdaohsU31+sm1xxF8xSroWiFizOXjxo1Ukmy/haaWqD7fbhAueuBvkI2WxdbcSR5ZsQgYOWqoT+/fXzFb6xqObiAd0ipKC9+NJrlOMlp/b8+f5JUks8IczlEDLqWbfCld2n0NK/ULkCOS2f6SPaesXZJNBtbCznDQpfQQ6f0a2lrXkPsM5JBsdvzBnlsmMs8FjJxwwCUT9SkJQJfmX9FKfQKyX7EmvWJ1lgUlyWCMrIwEjL7Ok14D2S1bU5banRNDJClGTQvlcNAlcd8/puzrgK729r0CIj6Qec3mnBAmUkwChhZyiS8vr3ZjxIP+uoGMuuXe6zNTHS+kBv3FR3wBh0okm1gLOtVQi/iSPx4G81XQQReQglvmZOdl5+x+cv6D4icl8OuXlsF9ujGQo4bc4ieMvgqGiJcx6AIy+pa7H1nwnft/+9B9d0VCJ6++vgKr31iBdKWnz0/iZZhXjx66Qifip4xyczP+/rflL0aCi3PmPaqp9ccTYfRLwFnXColA+KdHnz5Sf/LnYKaBNotHcrsueWrMJRhv3IvUDaRjJHdMm91lyD3uR3sVKJgAEmeQEkASQOLMAnGmTmKFJIDEmQXiTJ3ECkkAiTMLxJk6iRVytQPpr18DijM7xI06JSXix06jl0QiVdxgOqNIAkgCSJxZIM7U+X+uN2G6f+9A0gAAAABJRU5ErkJggg=="},{type:"echarts|area|stack",name:"Stacked Area Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAVyklEQVR4Xu1dB3BV55X+zm2vFz0VVJ6EwEiIXkw1zThZx3GLg20wdhwLYq+TiRMn2d3EycZrEscZZxOXJJtkh00Mdsa9YnvtGFNFMDJgsBBNBVEECElP/RW9ds/O/4QwRSA9eJKeN/wzmpHm/vec8//fPeWec/4rwuWRVDtASSXNZWFwGZAkewguA3IZkCTbgSQTJyk0pHjFSzMATCaWXl2xdGFjku3RgIoz6ID88PV3lgF4cO6I4dra/dV+TzAw969fv2PfgO5CEjEbdECWrHxJf+aeRTE5th46gme3bP/fP955641JtEcDKkqPgGzfvp0HQoryplaU1HnwzD2LYuwEIM9v2Y7rcjORYTIMhAiDwmPKlCnnVYRB0ZDiFS/8E0F6GoTRZk2FWdOis0YMow2VB7jNH5DFLjGwMippP/rr1xc0DMquDRLTAQWkeMXzBUTykwC6TBLzCSJ5D4MNYHYwoY6AFACjAFihsxeS9KgabH1q+f33hwdpjwaU7YAA8s+vvOII+6OPgPEAiFQd7JUglQPc1ONqGRIIwxg8gkAqgGod/C/PFi9+e0B3ZxCY9Ssgy5Ytkw7nF90P8M8BSgMjBEIlgw4TuFc/xUwGAhcxOJeIhBlbC9YfWLnkzv2DsFcDwrLfAFny3CvzWI/+gUBjGGBiHAZQAULcpocAO8DjGCTMWYQZf9As0iPLFy5sG5BdGkAmCQdk6TPPD2dJegqgm7vWwU0MKifAm4B15TBQRICJWW8C6Kf5hyuWL1u2TE8A7aQgkTBAlv5llY3lwCMMfIcADWAfQOIF70SCVyqisBEMHk4gmcF7GNL9zxYv2pxgPoNC7pIBifmJYUX3QcejIKQLkyKcMIhqwNxvTy5BMumIjiZQ1klNfC2kaN9//mu3Hh2UnUwQ00sC5Aw/wQwiHGWW9hFxMEHy9YEMpTJ4LAE25hjf/9RC1seX33+Tvw83J92UiwJE+Aldkp8g4JYuN4E2JuwiYFCcLDMTEQ1lcCGBhLk8Ckg/XFG86MWk2/FeBIordRLWGVvrm7CruQ06M2TxFmcwwKIqSVHpEvaxpTOIjrCwmsAQkwHz3UOQatCSCpdLTp0IP3Fo6MhvgPALAmUAiIJwEIyq2O9JNhiwEngcQKnCjzHRiqCmP/TinXd6kkzUc8Tp1WSd7idO3n2CIO1h6IFkXxyATIBHAWRh1juY5J8dHprx2w3z53epUBKOcwBZ8uyLtwk5KarvYEn6DUBfFX/3mu5IwsXFRCKSmEWIjBEAFAYqwfR9xRD9JByi25jkbc/ds3Brsoh/BiDfe/mtXXkup0hTWGoam1RvMAQGhwhUCeBQsgh9cXKQAdCFtrjF/U6TKXxNUUG0pKomKBOeePzWGx+9OLqJvesUIEIzJrpzVn73mjkWweI3qzdgT92JBmJpJ4jjTnckVsxEUiOnSVVmLJ01TblyqDsWnNz33Cv6M8V3xNL+gz3OC8gTH26I7D5WX0aEuv4UUtcZ9XsrcqM+n93mzj7uyMlq6U9+grZJU2csvWpaWjcg9z73Cq8ovkPqb759od+DyUrJFS9ZBz3Nvo5gsKQvRC5lTsuOXRPdDlvmLdfOV5a/+EY4lJmxPSXP3XNa/lIYnXaviMJSzKZZVxdeoWyqqqFQNLr3d3d8dUyCyF8SmR6dOuv0UH9rhpA61OHTmrfvnPveyt8bxd87yvfhB48+GTTlZlWm5OfWG+32zkta3QVuZmYDE7klRiEIsg6a92zxon5/AHtbT49h75KVL73T242Jul720ps3lLy+gixmE15c9T5+/8wL8Ae6cFDNJq9tSHq9Iye7we7ObpZlqdcaSrxyMfMIIioCY++K4kVjQZRwHvHINKiAHCrdXuQ/WjciGo3y7GmTQ0JDWtrbDxOQCoaLJDolH8lSxJLqarRlZTa4hubWG2yWUDwLPe/crrB4fldKn7+1csni/04I3Ysk0iMgP3v9nX5/SqrK9qB8y3aIPR/mzopFO3ZrLMCLjagehdcXQLvXhzavH9HomQkBR5oLmXnu2I9rSBpERfFihy8cQWNnEJosoXjkMKjSxdPqiwxxp07622TV7d6XV1e2ZzzH3jfxMQF9cOLsYJG2IWSA2Smyid2LlxQlZElzNdpzshpShuY1aCZD3GE6g2YSOBXgp1YUL/5BXza2P+YMuMlqrKjOPrJt52Rhq4l5O0D1F7EwjYF0AjIYyCCCaIToHmx02FutQzIaUtzZDbasjL5loJlsDH0eiKKyLBX95e6F1Rch1yXfMqCAeKpqMo9s3XFlLF0O7ATo2CWvACLRTE5AF0nPDBA5TqcpaWrQlp7aYM/JbkjJczcqBu1UHsvX3GK2uFJO1U2YMZ4Iecx4b+WSO25IgGxxkxgwQJoPHU07tLl0usguAShHV9NDwgeDjdRVucwAUzoIyikmRLrJ4WixDklvpPaO7LQUh3zocK028po5pWS3tTGgEXBNLOfF+rUrl9z5YcIF7IXggADSduyEs2bj5pnMLLOOCqJY2n4Ahk7MkiumPURDiMgqmKqKgq/degMe/MbXsGt/Jb75k8dCRV+5frW4xozhRBgtytBes1T06sKFA1pe6HdAOuobbdXrNs1iXVcYfJCY9gwAEj2yYLBJaI7L6Sz8n1//h2FEfl5s3u3f+tcwFRaUWF3OALqa9OYBsAD84Irixb8bSHn7FRCvp9lata7kKg5HNAbXElPZQC7uArzcV02ZMP57990tvb16A95dsxGdRC3D51213WizBpkxhAhTwegIatGhL9x1V7/n17pl7TdAAq3t5orV62bp4YgB4Dow7ejqoU6a4Xa5HDlerz8YIc7QQxFNVtVQ/qxp20SCszsMZsYfVy6549sDJXW/ANLZ0WGs/GD9rEgwJExEoyjFS8kFxhn7S6qsGW32OYGWFiEvZ4waud89aXwDE88VtTnSpfErli7cmwhQSqZMihUA527f+VpP9BIOSCgQVCve/3B2ONBpYbBQ9S3E1G/9WYnYJEHD5EqxmFNTpjZVH7SKZ8eSllpf+MV5nSRLQxkoWVl8h/ArlzS2XPfFXdaRRbkky2rH3j01M/+2ZvzZBBMKiACj8oO1M0M+vx1AOzM+oq7Guc/FSCsclml0OIcfL9vt1MNhyWC3BkbdcK0qSZKig79yKd33QjNS5859bvQTTwstxO7vfae1ZfPm+87WlITlsqLhCDau+htaPU0wqCpG5LuhyElRhIvrYaDsLEQlGTWf7ISvpQ0ZRQVwXzkBVlXB3YVDY7m3uIfPh84/L4fD5cLYp7uCtrgAiTeXFQ1HpYrV66Z3traJLG2AwZsJ1G+1jLg3JI4bZINByZ81dawsK2pDZbW1tfaYZcxNX4LBZkU0En3ouXvv+lUc5FAyZcL3ddAjEpFDcThhLSrSJc0Q6Ni7u39Mls5MVavXT/V5mjMYHCTQZjA+l22c3RttTnPZ3JPHFxEIHQ2Nho5Gj7Ng/mzokUi0/pO9k//2p1/u6g2UkqmTvsDgPxGoQMxl4ARB3wuQA0yP94tT16M6HVj/90kd9Q3ZYIQZMZ/R0Zuwp183QpfujrSOyTAZLVs6QkfXGZ1J0SydXlSQ48pzZwtZg36/rBgNqfbMDPIcOBQ8VPrJl8o/fHVjT+vcNHXccB3K0wTc1HWdOwDaffppsbnbPj157VwKl+TUq9f9fWJ73Qk3mCMMKiWgNR4wxNxH5I5ZE2+8PiXjyzfgwG+f1FfurNyVLKAMnTlllNFmi6VbWCLF4nKmio7yfe+t4UBL68O71rz+WPd6y8aPt7Rp0n+A6IddOHAIoP0gPnL2nvQLIAdLSse21B7Nj7WSMpWiK8SNa+REg+afZppmz3zh5VjzrbeqCqXffcD/h05t20HFGJemxcW4j5MVo0EdNmvaOElWYtGJZrXYVLPR7PM0oeKD9cIMve9lWvxsW+UCHfT4yTZbAUYNEYujez1GmAkHpHbbzsLGygOF4NgZhK1gxP05jFmh9swbOpvH2DXFNP5Py2EfOw4Hnn4Cda++Ag6HUS8prZ9o9tqNmv2Yn+RBC51tWRnOrHGjC4Q/gSSR2eVII0mSajaVhluPHFVtejT0gO+4lh2NVZRPoMtPXNCHJhSQ47t2558o3z+WBRigHYT4+rbyo53WRf7GcW49lCpWIJnMfrCuGbOzQ+GW5mCopcVDTDkgmMX1CFG0SjLWbTHYj36qWj2DkXvJHDsyz5GdPUTIo5iMJoPNYld83mjzm2/L1aRBpLBv7WyqmhNsq+iL8iUMkPq9Fe5jO8snnnRWZWCq7YsAYo6NdfU2f2PhxIg3XxI1ERYtqqhi0aIq/mLdRCR91sDNsZpGbqxhmijWxNYG2f+pZqndpDlr62V1wMJqoRFDZ04dZTEZLJP2lVmOTZhsaXOlYmxpCX+0/3CoWu367MS4kO/IPYETuw29nBxLCCCi2nd4644rRXkO4D1gOtgXMGSArg00D50fbi00MWtCs4hwGDpVQOpDi6pOKhPy0HU0usvBMvNhxejZqllrSzXHiTD6PzUzhwK51wVbx9oDfvl4Th4+uGUxOBLl9jdXeTr8nWqjrDiYJErVw+3f9NVty4yGzns64JIB8Rw8nHHko21Tu6p9XAWmPqnm2LDXdXtn0ziXHrGd1KrmWLUwztD4FPAMF4hymZFNhJijDRCF9qjmY5s0R22NbGrvy0MSz5xh0U7bQn/j2G4TeyjTrX88fkrE685TJJNJCtYc7PRv2twWAcknJNUZliRF0/XIXYGG7ZPD3h7Po8QNyOltQJ7j9dj07mqwrsPlsCM3S5SuLzwsoU7MOLQPw5q7PlPCqgo5KxvkOKPc3RuZ81+PRsGtrdCbm4DOzyyXx2xDZYYb1enZCMmfVW4vhpEhHMaUo5UYWX8Uwl42Kxo224fgxKjRkIZkArIMKT1NHHdAeO36LnkYOBbW0SZ+YcaXHSpudBjOOV0265lnz5t/ueB7SHt9g6Nm3aardJ1lwYtYNCacfxigS7cEPCNmhL1XKKJcyxwh4ADED6FfMr4MdhAoF12BQKz7JMzQq1VTXalmr90ZZyCgsE7XBVvzrw62FhrAagCkl2o236ea1c9dkRbMM6bbZYtJIptNkW02OdrUFG5/932h/bHRRrK5RVKs4uRjbqTTc7+v/hOHCB1Pjrg1ROSyRLWv+sOSWboeUcGiVUe07Jy/wHR1qD37S4HmUVZEY9lMBgsA94EwIM6XAZl0ZEMSgQC5uhffTnKgTDXXbjA4ahskwwVPfU0Ie1MXdHrGufSoVWdwmcHi36zYfCFJPI+fDclqlc3TplhJUUgekqGRJJFvc2lbqLr61FqDRGqDpDkiRLJF1zuX+uu2FUYCsZakuAAZ/4UFt2WOG/2IeM/Qw2GNWTSx0ceEns+cjwgH7As7PWOz9FD3JrSDuRyEuF8UL8a09HQPMSyxQICRCxKncmOBAGplg2ebZqvdYrDXWXVdnR5qzzyoGNraJSV0u79x9BXRYKaYWyMbgxsNjo4WSTlvg4Oak6MZR480w2SSlZQURQ8E9PY3Vnk4EjkFXhSQ6hXNEYQkuln06wJNe22sB182pj6+a+0bvReovrDw3l1FI/JzQZJj9/4qamlrbwVjCxGdI5hDj2i3BzwjJ0R8Q08uOEgE8VGYPofCiQLgQnQYlE0QURrSuueFiSKmtAzKXLCA6t9exbq3Q452dKCZlMh6g6PjsGLsU9+wccJ4i5qRpkrp6ZqkqhQoL/d17ig74xMi4kEQ5qtVUiwpDjvGjMjXFc0Q2FNRXbP2lT+fv0AlNOPqq6at/O3PfxRrsL3/R4/yxzvKygA6J9l3c2fT8LnBtgJhY7sWyQfAXAXqOVUwEBvfKw+dzJDgZiBPsVqNhQ8vQ9r8a2LByuYZU3idZvfu1GzxZakVhczTp9kUp02R09JV1nVuf/0tj+73n+Mvm0mxjJs51fpfv/hJTNQH/v2x1k0f77jvbE055dTPBuRbP/5F+KPtZeJjAKdOUF0Z6ki/Odg0RtjYk36iHsx7icjX64Yk0QTFap9T8PAjjm5A/j5jCj9pzbmoL9dJNpvwJzbZlaJKZrMUOnKk07e+5Jz2VS9JhqIZMxy/f+zHsT1/4Ke/bN1U+sn5ARGTYiarYFgugWzlldW+1pb22AGWHD1ovt3vGXNFtDOWPtCZfUTiCz+c9Oe+e3wOGFYtI2NW1q23S/Vvv6n7/cFDbwcoUqMaTwUD8Tw/al6ewTBqpFnJEA6e0PH+B82RhsZzGr69rjRXwYjhsqppvZusbgGEpoCkh4RmmDkq3xJoKpgeah8udZ2jCMe6DpkPDvbBlng2rKe5zDAAlEngNlBX2eCIZLCsNTqHtUhqLFKMZ5gmTbCqw/KNIgyOtLREOt55r6mnb7QJTWkg5RzN6OZ1xntIyaRJo9U05+8Oszyhwh/2TI/48s0cNcZCFNARMPb3Kd0Rz0qSbK4w/jsUa/o2zZYTkOTTu+ovKKkIgS2zZ9qVXLeBJJn8W0rbg5XVPYbZb61/NxbN9TROAVI6duwQynfvG/6DfxNfbcOBX/8KIU+jwKKJCLsvOt2RZBveV3GCRNJGzZmzTzEPifbxNJCc4lQsc2bb5RSnyp1Bve31N88Ig7t59wmQjVMmfnvYt7/769ziJTF1Pfzn5Tjy6suQ3SLh+o872iKMj3wRHAz1reea3G4okyaANA3RikpEd5/byvz8Oy/3njopmTJhmjHHvXrKG2/HEk7bF9wU7jx2/ONu+/qPC0nXyqskk32DwZnfIcu9fuHZPGe23TA838TRKNreesfDXu8ZaPZJQwTTrQtufjhYW7tMOAw1xVkRbmkZlFNEyQp+hCXaarAN2aFZs0Og8zadkUGT7Dde7xIplvDRo0Hv2g1n9Br0GZDujSiZOnHAjkUn6+ZfSC4fJGW9wemuVEzpItvb09CysjTzF+enkCShY/WalkjdiVNv/5cB6SfUT5BmWmNIyW9Q1NiL8tnDPH+e05CXa4i2tUXaV717Kgy+DEg/AdJNtlyxuj7SbLk+ST7j03UiFLYvvC1dUhUKbN3W3rmvIhYGXwaknwER5MNM0maDPatMtWRGhZ06ObSCApPlqul2DoX0ttfe9HA4zJcBGQBAulk0k6xtMDhzDymmU2kY+1dudMlOpxqsqPD7S7d1XAZkAAHpZnVINlrXGxz5Ig0jO1MU283Xx9qevKve8bz21guio6bH0WOIcDnKSgyCsTSMZkv/WLW55dmzXYYRw03Rlpaw7HLeueKexb0XqC6HvYkB4mwqAUjyBmfWUO/Se0fluZykyrLvUFNzzdOLbunbCarLGpJ4YPaPmZzlX/z1SQ9eOy/m8J9as7G1/HjdfWdrSo8ma6D+B1Xil528FKvbvGiEhAeumRMT8qk1Ja3lx4/3DZDkXdbnW7Kur76m5MoSqQc9cZisz/eyk1v67u8ix+XUk3tJ/7+l+z+3oDzYi9TqlAAAAABJRU5ErkJggg=="}]},{type:"column",name:"Column Chart",icon:"icon-chart",data:[{type:"echarts|column|default",name:"Basic Column Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAADHklEQVR4Xu2cvW4TQRSF71b8NSkjpSBSqCiCIuyWBvECKA+ABAiESEUDBVRByRtQ8AhgoMcNtFmECEqLSFoo6IhA8iJhOdjLembueMae3f1cX1/PnnPPzJ2zM86ET1IIZEmNhsEIhCRWBBACIYkhkNhwUAiEJIZAYsNBIXUgJM/zIrFxLnQ4xzvbMjg6NI7h7LPnzmPsdDpThYBCHGB8393IReSyKfTK3scgWAZJ4vBMtQ6BkMTogxAISQyBiMNZv3p905S+yLIfn/u9/ngMColIyKVrm8YOshD5sP/2ZQdCIpIwnhpC5gS0689AiCtSc4qDkDkB7foztSQktnXy63VPiu/fjBieun3XFWNV3M1Hu8b48yvL8uT+jYmYxlsn77obe5nIRCdTRimUFVHOW0uFqErOIxhCpoO2EC8LQiDkBAGmrIpiQCEoBIWY1noUgkJQCArx2A+ILOYoKVOWcsqKbZ0c7z6VweFXYwlpTnFoahHrhLZXUy9MWWW0WvnGkDVEuYaoNOYRDCEQwj5k1n3I1tLaC6P4iuLLp37voVagmIueXdbW0pqFjyLf7/e6EKJFAEJUiCX7ggqFqHicLdily4KQ2TBWfRtClG1vCl6WTSGrK8vyuHRc5+fOthSWm062vL7HgDR5k7tBFUshQfJ6Hra2EVJlyVTppFGLOoSoVo5/wUGAK/7fhwTJi0KqWbVOARDiKYc5bgxRiCdHQYBDIZ7oo5C/CNBlTakf69rEos6iPo4A+5BSPfi+U/dRnvPGcGSd/H7zSga2m0637qgXF5djQLYHrLJOQuRN2jqJdWGeLktpLo7CIWSIhAsONkUH6bJcBuJzFxCFoJATBHwq2aUwffI6L+pMWfr/OoGQNlonLlJlDRnOJygEhVR3BigEhQzd0zYpZGSduPzpysG9B0br5NyZ03LxwupETAiLA+vE186OVcmx8qZsv7t0WdbuIhZwsfJCCO9DnN+HoJAamotMWYm1vRACIe3bh2jcXhSCQlCIaSuOQlBI+xQS+waV+txQw76Q3A2qhuEb9HEWcnIx6BM0LBmEJEboHyG8cJwchLkkAAAAAElFTkSuQmCC"},{type:"echarts|column|stack",name:"Stacked Column Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAADWUlEQVR4Xu1dPW8TQRCdCwXhHwQFxemoCIqwW9LEvyBpkSgQNPwAEB8FBIUfkAJBE4kW/4K4Ca0vikg6qhgB4h8QCZFFIpzkwxvr+Xafszm/tJ4b7b03b2Zn5+6SWY3+ltrreWZ2K+SWnHP5QbfTGvTB8utbZxay+NSuZQHH8itCgAiSQgCQUBNWJLP8SiEAs1IIABJqwopkll8pBGBWCgFAQk1YkczyCyskz3OHgpCS3Yutbet/+xG0pMX5OXv28G7JR2y/zWbzzHZDfch/9CllBcVz+WJWamH5hVNWRIwm6ooFHMtvMoTcbK+/MWfXw9hynz91Ow8mceZUe0KWVtd6WZY1QwhxZnsHOx9KPljAsfwmoxARcnYonssuS4SIEDg7TuW2VwqRQqSQUQhIIVKIFCKFlBHwbRbUhwA60S4LAMlnok69InC+y1TUxyzq7AHVy61tOwocJDXm5+w5eZBUwHa8uWEnX/pBIZktNOzK46d/fSQ3oLpoCvnYWs4t9IlIs3ylt196IlJFHYhxX1EXIQhwEzx+FyEiBEAgoolqyJi7rIjYe12JEBECx1jSRf3G6tr9zLKr8N14DJ2574fdzrvBn6SQigphDfdFiAiBRZ50ypJCTnlMpg8RISIETy3T2KlLIVKIFDIKASkkEYUUA6rYbw4V5P/c3DAXOPCZWWjY7L+BT+GXtd4YA6qZxqLNPnoSNqBiKWS3tdzLzIKefjezvdu9/Yk8/V77ba8ISaxTFyEiBN+9eb4GpJSFwacaguFUtvId1illKWXBsTSVp70shdxbab//ZZeuweh7DC/b769vd3fuDP6kGoIhOlRDWESLEBHiR+CidepSCBDJk9xliRARAiBwauJiPGytlJXI8XtBuwgRIXAK8B2/17aGFAOqGIOZwTeHCrSPX7+yk/7ROOAP2foGVDS/Ed6gijKgYjVErEhm+WXh4IvIkV8DYi2EBRzLLwsHEYIlyaEjGRFSETgpBADO1xCxgGP5lUIAoqdq21vgwYoMViSz/LJwUFGvqDwRUhE4KQQATkU94mkvS6qsSGb5ZeGgGgIo2rd7EyEVgZNCAOBUQ1RDor/moJQFKG+qOnX2J/4wvOtrldwn/uoLdfidncu/qwhfdn09iJDEuP0DnXmvq+qIgDYAAAAASUVORK5CYII="}]},{type:"bar",name:"Bar Chart",icon:"icon-fsux_tubiao_duijizhuzhuangtu1",data:[{type:"echarts|bar|default",name:"Basic Bar Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAADzUlEQVR4Xu2cz2sTQRTHN4darX+CIIIXFawICSIeYqgiotFLUfCkKDaI9CAIEZRUKlgoViiCRRspqEWa6sHgSUv8gYgSEJF4UvGgF715EFrFkW0FUXd3Om/ey+4s3153vjOz38+bydt5TDMe/hLlQCZRs8FkPABJWBAACIAkzIGETQcrBEAS5kDCpoMV4gKQZrOpstmsMSyqzvckDm0cY+reNdD0F5M31ezIcME0eDpPnGxQdP44cWjjGNN/12Vj442wgA8E8ji3UZnCQPvFO9B1+aoHIIv3S7wlgIhbbDYAgJj5Jd4aQMQtNhsAQMz8Em9tDOTUoZL69O7DI9OZrVi9Kk/R+ePYaEuFXP77vfpZ0/l27CpWKDp/HBvt8rHxilGWtWF7r1Npb/V8OTSNjILkzIchgOjXmhTMwA9DAAEQvQMRLbBlWdnHLwYQfk+tekw9kBtTd9TQlUnj097y0QMNis6nYaOdGCqHnp6mIsuiZhBUna5GoFs+1HGpOsn5BmZZ1IlSdZIvmIoV4lqBKqrgkwogrhWoos6GAES34Qs8BxABU226BBAb9wS0ACJgqk2XAGLjnoA29UBcK1Ct3Lkjf3fmqXGBak/PlgpF58dUlFZlvNbr+9O1sNiL+l5LxfG7wKKz61KpqVcPbu8HEDsb+dQAwuclS08AwmIjXycAwuclS08AwmIjXyfcQFwrUFGLW1SdTy5Kq1Tmc2um9oYty6LWNag61EP+oEOBinBTTDKAcIOKcFPMB7J0+GIjVygYX/vTwcQNKuJPeeeRPm9TXwlAiP6xywCE3VK7DgHEzj92NYCwW2rXIYDY+ceubisQ1wpUUbevNs99ba378e1LEBGbW1BdlcFKrlhsT5bl2v2QqPD/6Xn7wqp3STxZSH3FEEDYd2u7DgHEzj92NYCwW2rXIYDY+ceuTgWQNBWoOmYzrZdPaoFprzNZFnWiVJ3uSFq3bKjjUnWS80WByoUC1fNrVTV3abSoi8x/ny853l+n6BYKPhfquZ5t7F++Ue/gzAqJ4waV1NkQgJguq9/tAWTBiMSUcAEEQGL5X8G6DA0rxIUsCz/q+h9CqQwtcIWcPnxMfXz7/qF+Wn+3yHWv3dr9rDFgqptPeyuDAxIFn1RkWdQCVXb9Gq86cq6t3xK6PRlAAES7QbTtjiFWiJbFfAMACfFJ6odZhwVAAEQXI/8/jyNa4xiTtGVVr99SoxPTxqe9Z/oP1nv37kaWpYlH4y2LGjlUnS5qdOuNOi5VJzlfUjTrDMJzugMAQvdORAkgIrbSOwUQunciyl+nJgacKCJJ0AAAAABJRU5ErkJggg=="},{type:"echarts|bar|stack",name:"Stacked Bar Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAACiElEQVR4Xu2cP0oDURCHExBscwe9gBAP4AG8gAcQLGwEJZV/OkGwECtBO1OlECwNJNgpKVQ8QHIMJbAi24S4vsy44+wsfKln5738vpl5uzObNBt8QinQDLUbNtMASLAgAAhAgikQbDtkCECCKRBsO2RIHYCMRqOs3W6bw8JvTj+lQ6Hoz93b7OP8bMM6eJb39gd18js5OBycXnXNdehsb/3qtxDI4/paZg2jjv52Wyvu2wZIQnKAuMdjekGAAKS4l8UZkkcGGUKGkCGpGCBDyBAyhAwJlgUAAUhSAZ7UeVKvT4qEucui25sHTZhuL3OLxXOLMnmunocAJBiQCCVrp7UqDsLUwEfspMCwCr9h77KqOFDLwLO6FiBWShr5AYiRkFZuAGKlpJEfgBgJaeUGIFZKGvkBiJGQVm4AYqWkkR+AGAlp5QYgVkoa+QGIkZBWbgBipaSRH4AYCWnlJuzPEej2ziBmHhJsHgKQYEAiDKg0NbmK2bdkf0vT6fhleDeet1WPcOv29nvUYVaWNU7e+r1jgEjC18EGIA4ia5YAiEYtB1uAOIisWQIgGrUcbAHiILJmCYBo1HKwBYiDyJolAKJRy8EWIA4ia5YAiEYtB1uAOIisWcIMCN3eXPayP0cw6/YyDwk2DwFIMCBPN9fZ5+XFpqZeSmwnnaN777/Mm9/Xe783lOz126aKwHR96yTCIOn1oSf+c0+ASEO3hB1AZsQjQxafTZSsRLZRskqUIumllCxK1o9YCfMaEGcIZ8iP6KRkUbIoWakDngwhQ8gQMkT4EMBd1h/vsuj2LhZOGIOFZurnkCpaBv/1BevmV9yKLvPFuFauAEDkWrlYAsRFZvkiAJFr5WL5BeJU77Wa075tAAAAAElFTkSuQmCC"}]},{type:"pie",name:"Pie Chart",icon:"icon-fsux_tubiao_nandingmeiguitu",data:[{type:"echarts|pie|default",name:"Basic Pie Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAIsElEQVR4Xu2cfXAUdxnHv8/eJVKw0hegDa1YX2AqSe4qtlMayF7G2ws6tp2S26ut+IfU0bHj2BHrYDsWxXZawZcZq4yj1lHs6NiKxfoCY621FEor3h23TSYoCg1UpVAIJCEv5Mjt4+yFMCE0uX35/XaXzt0/ycw9L9/n+dyzb7/dJVQ/oeoAhUpNVQyqQEL2I6gCqQIJWQdCJqc6IVUgIetAyORUJ6QKxH0H6pNtN0Sg3ADCfALXMTCXiKy/dRt69itgHANwlMHHiKy/OKYA/1KGzd8saW9/w31m/zxDPSGNqUxCYVNnYDERXT9VW77fs3/yr5lNADuI8OuwwwkdkPr6TG2kju8g8BdA9AG7v80pgZwfZDtgPqZmX/mF3fh+2YUGyDUtLdPeEZm1ihSsAjDbaQMcAimHZ0YHMd+v5o0tTvPJsg8FkAYtfbsC+hYR5rkt1A2Qs7mYdzJhdSJrvOQ2vyi/QIE0JNOxiIIfALTEa0GegIwlZ2y4fKh4b31nZ9GrHrf+gQFp1PSVCuExABG34sf7CQEyuh37e9RUVjTt3r1PhC6nMQIBEtf0h0B4wKlY10dZjhPxSTCtVHOFpxy7enTwG4gS1/THQVjhUfd57sImZHxkxoZozdHVTS//d0i03sni+Qbk6psyF102w/w9EWkyipMC5MyRWI1JbX5twnwDEk/pzwBolQHDiikLyOjxMZ5Uc4U7ZGkfH9cXIPGU/mUA62QWJBVImQnuT2QLUmuw+iMdSExrWwxSdhKgXMhAwGwSmR9tzrb/SWYdUoHUL8tcFinxHiJcIbMI6ZusM+KZ0RslblmSNQxZ9UgFEtf050FokSVeynlIZbHb1WwhUdnMnYU0II1a+tMK0Y/dyXLuJXsfco4ik5ereeNp5yore8gBkslEYif4VS/XpipLP9fCVyDAK83ZwiICrMv6Qj9SgJy5LPJToUorBPMZiHXctVLNGhtF1ygDCMU0/YCf0+HXTv2c5jO/WtfTv3D+vn3DIqEIB9KY1FcoCnxf+PF/Qsqn8avUnPHdUAOJp/R/A3ifSJF2YgUEZJeaMxbb0WfXRuiExFrTNxLT3+wmF2kXEBAGD1+l5v/xuqhahAKJa+n7QPQNUeKcxAkEiCXQxN1qvvBDJ1qnshULRPIFxKkKCQwI8IyaLXw4fECsc48ec4BAbxMlzkmcwIAwF6dz5O3X5/OnneidzFbYhMS1zFIQ7xAhyk2MwICUr9CWPiLqoqM4IEl9DRQ86KaZInyCBMLMX0/kjLUi6hAGJJbSNxGgixDlJkawQPCjRK7wWTe6J/qIA6Kls5Vu9xQheLIYQQIB8+/UnHGbiPqEAYlr+lEQZokQ5SZGwECEnSAKAxJL6SXZq4IhPey11ncPqrnCNW5+SNI2WfGUdZN6cJ8gJ4SZhxM5Y5qI6t8yE3Lr0LEdqeHeZhFNcRojlECC3ocAGFjTe/D4HB55p9OGerVn8JFE1rjSaxzLX9yEaOl9RPReEaLcxqg1S3vX93a9O0pU6zaGKz/mvWrOuNaV7wQnkUDyRLRIhCgvMRYW+7fdPXjElxsrzupkDt9RVjylbwaw3EszRfgyM39m4PV8bGRoykfgROQaF0PYBUaBE6J/jQhCLh94bRYxv7Gut6t2OvgSr7Hs+DOwPpEt3GfHtpKNMCCNyfRtikK/rZTQr+8vLZ3OP3jytQ/6k0/cDQ/CgLx/WVtdrakc8qcB9rKop3q2ZU51S9+fKKXSTUt3twtZKRUGxGpRPJXeCVCTvXbJt2KguLrvPwfnmcX5ErP1TTeVWaFbDykD0fTPg/A9icU7Dh2BeeCbJ7pm1xJmOHa24yD4UQWhExJrXT4HpnKYiITGtdOXqWzeVRza/qXBQ6rXOG/qz7hTzRWeEBVbeONimv4XIiRFCRQVZ0X/kZ2LR/o9P+17jh7GIA2PXN3c0XFClE7xQJJtnyJF+YkogcLiMPc81HegeAmbc0TFZBa3MDWmSTgQ69UY0TruAmGuqMJFxZlultrX9XY1EJH3h4eYOcqlhU35jn+K0mfFEQ7ECtqotX1cIeWXIoWKirVouO+vK4eOfshzPOYX1Jwh/JBaChCr2JiWfpmIhN5m6bmJo88Kmvf0/2/PgpFTDR7jtajZwgseY5znLg1IfSpzXRRcEC1YRDyFcWh93/6LpjEudRePf65mjU+6853aSxoQK208lf4ZQFKEe23G7NLpXV89+dqNTuMw0F0zWFzQ1Nl53KmvHXupQBqSt14Rodq9IMy0I8Zvm5uHul9cNtyz1HZeZpOBWxI5Y6ttH4eGUoGU9yVJvZkIz4FQ41CbH+aOVhlF3hA3WXHSgViJR9+HhSfCdgZvabO9ysi8pTln3ELl4wJ5H1+AjO5P9HsBfFteKe4jX1sc2P65wcOTX1phfmlm0WyNt7cPuM9iz9M3IOXNVyr9KIHusSfNPytrlfGugSOFRSMD5y9B+wjDqthXIOVJSeprWMHaIG+qezPUxNz9cN/BkYu5dPatEwxsroke/cRb8vVM45sQT+mtYH4SRL4ssdqdtYvN0u5H+g6MTgnzI8054wHZ+4yJ2nyfkDEB9VpmXpTMrQDV222YH3ZLh3uev32we2MiV3jcj3yhAWIJsV4NOzN6+UYQfSyI4ifmZPCukqnc1fncpj1B6QlsQsYXHEul7yTGWhAtCKIRzDgM4i+2P/vUr4LIPz5nKICcEUQxLd1GRNbLMa/zozHWM80Af6fm+OmH8/k/DPqRs1KOMAE5qzWe1G9m4q/IuFpsQSCmZ01gM04NPd3x4hZhq32Vmm3n+1ACGRPeqKXfowAtDOudW5Rw+/4UBgYI2MomNpdK9MfObZv67TQnCJtQA5nYkDFAINQzaC4xrgTxVeX/gRnlfQH4BEDdAHcwYEBR8h1/3pQPorlucl5QQNwUeKH5VIGEjFgVSBVIyDoQMjnVCakCCVkHQianOiFVICHrQMjk/B+fA/5vlT2WpAAAAABJRU5ErkJggg=="},{type:"echarts|pie|split",name:"Split Pie Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAJ0UlEQVR4Xu2cf2xT1xXHv+c5hPGjm/gxNkrrQKuWdSlOGKmKoDikJGjSVCjEEYy1LIENbdXWMaldxya1bJOmbtK0ddLUVerqkIo5tZNAgYLAWQljoUV2GschBSbURC2jP2BqKZA0sd890zMEpYBj+717nx9T/I//8D3nfs/5vPPur+dHGPs4KgPkKDVjYjAGxGEXwRiQMSAOy4DD5Ny0FbJxe3ORPpSYUV+3NuKwnFqS42ggm17YPXGo8IKXSKtk4D4As4gxA4RbhqP21679XAyHyuavJ2AFgLNEOAeBswJ8TiOcWRKNtVnKlg3GjgNS91Lw60ITqwioJGBpphxcD6R0KxE9c2M7vsDAbhIIzTx/cd9dp04NZvJv9++OAbKhIVAmdHqaCA/lkoRrgRwuK32GibZm9nEZjqZzYMlbXXsyt7enRd6BbGgIPiB0/WkiqjITcm4VkqZuGN2aEL9wApi8AakJBidP7hd/ALDJDIj0Y8hot6wMPTG3M+Fn5ZHYESuarNjmBUitP1hK0JtBdIcV8YatjAq5XgPvcbHYsjgaP2ZVX672tgKpCQZdkwb0J0jgNyAal6vYG7VXAwRgQNcgvr8k0uWXoTNbH7YB2fC3wK2sIQSiRdmKy6adKiBX+xbi10s6urZSipH6jy1A1m3fPmV8wtUO4B7ZISkHkhLMoWn9iUeKe3qGZOu/1p9yIAaMwoQrTMACFcHYA8RgwocKXRdXLDx66lMVcQz7VArk0YaGSS5ReEgVDHWDetrp8T5vtPNbKm9fyoD8eO/e8Rc++vQAAV6VV5RtFXIlCAZ+Vx7p/LmqmJQBqfUHniWip1QJH/ZrN5DUiAKxpjzSFVQRmxIg67c13u0SiIMwXoXokT7zAQTAgAu8aHEkFpMdnxIgtfWNB7PZGJQRTJ6AGGXynu7SF1UcjZ+WEYeyQb3WH6glItsWU3kDkrp38aveaOxhxwLZ+GJwql6g/5tA02SKHM1XXoEYwvREifetY3FZ8Uq9Zdk1kDtgDBkpYb830vlNxwGpCQYnTL4kToMwVZa4bPzkvUIAEHOFrNNIaRVi99iRz2nvdRcK8yFvNJbxdDObC0wakDp/4E0Q3Z9NpzLbOKFCjHhc4PkypsFSgNT6GxcS4Q2Zic7Wl1OAMLClPNL5bLa607WTBCQwyoMFViWObu8UIGA+6o3GFlqNVgqQOn+gDUTlVsWYsXcQEAYPzvJ2HH/fTBzyFobMVLutsZ9AX7AixKytY4AYAQj80NvR+VezsRh2liskdT5OotOKCCu2jgICWF6TSADSuJkIf7SSVCu2TgLC4A/LI7GvWonHMpA6f6ARRGusiLBi6yQgYCT0yZ0TK9qQNBuTZSA1wWDhhAExWxOiiIncGsjNgBvMbhAVEeM2ldvwjgJibG1haGZFpOeDvAHJ2DEzfS8QmJEc1NykcRELcgNwE7EbTEUwvkHTM/pJ08BpQKwuEC1XiNlEjrRLHfd++MkcJs1NzEVEMCBdrjSgiJhvS/ccl9OAQPAqb0dsp9m8OAJINuIfebl5ZkEyceW2KNzM5CbA7a9b+7nziENlFh4lzUZIpjYWp743DZBMeRj+vb3Mc68O7SkQVQOYkK2drHYM3lweiT1n1p8UIJ4q32+JeR1AvSDuY6Y+sPHNvUJz9fVMwX8QCulmRZqxiy5Y8KV+Sj7KoA1ENN+MD1M2jG97o52NpmxlLAyNjj1V1fUE+m5aEcxJJnqPmPsA9MIApok+FlofdNEbb2s5k1rnKvq031damgTXAdp3CFB6mmn1bEROhVT6dhJhpel8MhIMfhegPpAB7HKVuTTRN4Bk78nwLmN/yPKztT3FxYX/nVD4EAMbQVhOxq655E+BSN6zqKP7hFm3UoCUVPn2A1huVkQmO2PXjoAUMDaqjKkXGqcqLFmg9x3f32LM+3MCdqSkZFayUNvI4DoCzc6kIdvf9QRPqYjFPsm2/bXtpADxVPr2EUHauXKuwTDjA4Bf1lmr7/lH6O1c7Bmg9gUlSwXRBqsTAWYeLI/GLG2yygFS5QsQsDaXRChryxxhwK8l9UCsbWdOV6qEiUCXN9JZaiU2OUAqq58noh9YESLbNnWbY7zKLPzxqQXhXGd5ZiYCMp77lQPEmPYCW2QnVZo/xhnjlsa65o8fDJ3MxW8uEwGrMyxDlxwgldVPEtHvcwk0X22Z+U0iqr/A1PhOa+h8LjpGmwgY48f0gcQXrf6pRwqQeZW+lRrB9P5NLkmR1ZYZn4F4B4Hqu8JNrbmsg9JMBCwfTkmrkK8tWzVtvOY6JytZdvth8GmAG5IJl//tttCpXPpPTQQg1oFw1hvtbMrF9kZtpVSI4biksvokiO62Kij/9nyEQf7B/qFXTrbvumC3HolAfC+BUGd3AMr6YwwAaGGCPx5uej3XhadZXfKAVK1eBWgtZoU42Y4Z7xLQIMD+7tbmd1RqlQYES5cWeMZN/4iAKSoF59s3Mx8moD6Z1II9baGLsvXIA3J51/c5Aj0uW6Qj/THOF3w8eGtHx+5+mfqkArm3qrrMBfq/esNb+mTzX7rCzT+SCUPatHekKE+l7zARHpAt1En+GBjSE1TU0xYy/XRJunikVojRybzlNQs05qiTEihbCzM/H29tfky2XyUVcmVNkteH51Qk6qpP5mQyqd2uojqUAfEsr5lDLI4BNFFpcvLj/IWucJOynW3pt6zhHHmWrd5ImvZifnKmpldjPcKfDZR2/+u1j9X0IGm3N524kiqf8fqJGlXi7fRrnK+ARFn8wA6lb5lTViFGsuYuXnHL+Injegh0u53JU9EXg9fFw80BFb5H+lQKxOjIs7z6fgi8QUTK+1KVLGb8Kd7a9FNV/m0FkoJS6VtPhG12BCS9D+aDXa3ND0r3m8ahbVdtybLVa6Bp21P/IL5ZPow9l8Zd8p3at8+2N2DbBsRgMG9Z9cOaRsYhjuOhMPjP8XDzZru23YevUVuBXIVCqbeTFjixUJiZQbQpHm7Ky5TddiCpMeXB1d+Apv2dCHOdBMU4ZxcQvmOtLa/lS1degBjBFhfXFGozxa80oicdcgvbIZifUH0AlQl03oBcXdHnvVq4S+j8ePfrLf/MlCw7fs87kFSQxmljwbSVIHqMAJummPy+YPpld2tTvd0D92hgnQFkhEJPRc1cuMRPiMgH4Msyr0oGLgG8C+DGeLhll0zfsnw5DsjIwEoqqovZRVXGfzkAeAmYlGvgzLgI4t0EDl0qGNhr55oiV61Ge0cDuTYgzzLfEiK+C6A5DL6DCLOZ6U4ifAXgfgYdJ8YJBh9nRg9cONF9oNn0n2fMJNSqzU0FxGqwN4P9GBCHURoDMgbEYRlwmJyxCnEYkP8BW4zdfideGzAAAAAASUVORK5CYII="},{type:"echarts|pie|ring",name:"Doughnut Chart",img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABQCAYAAADvCdDvAAAK9klEQVR4Xu1ce3BU1Rn/fXfDQ3lZoSr4RnxNyD4gUVCyi5NdqNpazW5aHWbqu51a26laR/tgxNZaq21nap3aB5bWWq0uiVYtUyFACA+V3WUfMahYFK0PRoIGJATI3vN1biAYIWTvnnPu5jqz9x+Yud/vd37f98u59+45372E8uGqCpCr1JTFoGyIy/4IyoaUDXFZBVwmpzxDyoa4rAIuk1OeIWVD5CtQWVdf44FRA8KZBJ7IwCQisv6d+FDnZgOMDgDbGNxBZP2LDgPYlBeepy5Kpaxzrj9cPUOqIg0hg0WMgRlEVD1YNX/XufmIpxkwwdxKTHETRtzN5rjOkMrKhuGeiXwlgb8PooDdP+nBDDmMg7mFCQtDicw/7PKXKs41hpw2e/bIsZ4Jt5CBWwB8sdgCFGVIHzkjx+AfhpKZJcWO51S8KwyZGo5+zQA9QIRTZBOVMuSgMbwW4FuDyex62fF14YbUkKl1Ua/HwO8BulA1ISVDDgzOEA9O2J2/vbK9fZ+qHln8kBlSFY5daxD+DMAjK74/TochFh8zp4fnUT8zk9miQ1exHENiiC8c+xkIPylWrOxTVvHj8CdgujaYTDcWj1VDlNoQwxeOPQrCPDXZh6N1zZDPMDMeGt+977ZSXsJKZshJMxuOOnaUeJaIwrrNsPgcMcS6hAEvhRLpmU5oHoizZIb4IrEXAMxxKjGnDOnVy3gymExf6ZT2/rwlMcQXid0B4D4nE3LUkP2u/CiYyPzCyRwsbscN8YbrZ4CMtQQYTibjuCHMTCQuqU3k/uNkHo4aUjm34ViPyRuJcLyTSTh5D+mvm5l3eYhnzEpk253Kx1FDfOHYShBmOyW+P6/jM+TTwbLBRNrvVE6OGVIVjt5oEP3JKeGH8pbQEJAp6ms3ZJ92IjfHDPGFo1tAdKoTopnxLDOeIhavmoanoyu/7cNFnZ0jPR4xGeQ5nYlPJ9CXANQ5MT7AG4OJTKUT3I4YUhWpv8aAsUirYOZOBt1t5mlhe0t8lx3udT7fiflhNA+gb4Jwhh2M3Rhi8Y3aZPbvduPtxjliiC8S3QTQmXZFFIpj8IPcvWdB25p/f1wodqDzb0yZMuKDcaPvYoNuJ6BChuMwDON/tcn0aQQILXwHSLQbUlUXm2cYeEyTyJ0Q4vLs8qaVOvhWBwI+4eFFVMTG16DjCtwUTKUf1qGtj0O7Id5wdCMRnasqkpk3C2HOfWXFM0fem5UYZOVsVBhdgVYC1JdDmNcHk5nzJWQcEaLVEO+c6PnE9JKqQAY+7jFF4NUVTW+rcg2EX+n3H2MMw3rScFkdQd0Tzl//2nZdOrUa4gtH7wSR2vICo4chgrnmJmVjByvSumnTpuQ9nANwlEoxmXFDKJl+RIWjP1avIToWEBn3ZJsXz9eV4GA8q6b77iDDUFpjsx7BQ8n0V3Xp1WdIQ4PH2ym6CDRCQdy27bvo1HdfjHcrcNiG9t5PdgVeJcIU26BDA5n3Hc2e0dWpVI80Rz+gNkN84YZZIF6tIkowf6utubFkv+4tra01/hsBtRUFMsVXajdkn1fJXftTlq8uNh8GfiovindnlzWOgebn+kJ6sl7vqM4Rng4CRhaKHeT8XcFEWiH3T5m1zRBvJBYnIKaQ1NPZZYvrFfDS0NbqwBMgKGxA8cPBROYmaQFOXLK84WiiULvnoIKZr882N/5FR1LFcrRO998Ag6wOGKmDgaZQIh2VAh8C0jZDfOHYNhAmyIpiU0zPrWjaIItXwbXWBEIAWqQ5mNcGk5lZ0nhHZkgkZqrsCnKPODnX0vSujqSK5VgTCEwSFXivWNzBeMbmYDIt/6TmhCG+iNWkLn9kezqGoaUlL88gj1xz9tljxNijd8oyWDuJoWTGeiBRPrRdsryqM4R2js4tXdqlnJEEgeoMYea9oWRG5SntoGpthijfQ4gm55bG35KopzJk9Xm+s5iN16WJmLcFk5njpPFOXLK84eh/iUh6E4hZzHR6/epIBWs5LzDTYKyTLqgb7yHecDRFRNOkkwJ/O7us8Q/yeHnkqhr/Dwj0gCyD1aAdSmYUcv90ZH2XrEisCcAV8knhX7nmxZfL4lVwq6oDS4hwsSwHA8+FEunLZPH9cdoM8YZjdxFhgawoBrpyyxaPLfXSCQOe1mr/DiIapaD9l6FE+k5ZvCOGVNVFLzcMUmqNEYzr2poX622OKFClVTX+eQRS2nJmxtWhZPpRVxly7tz6icOF8b6SKMZ72ebFJylxFAFmwFhd7X8DRJOLgB0WauRRMyudTqpw9GG1XbIsQl8kuhagC5SECb4tu7zxN0ocNsGtNQFrI0x1lba7NpEerav7RK8h4dh3QXjQZj0GDLPuJcw0s6053qbCUwjbUuOvMRgvgUitCZzRGEymVVa5PyNVqyHeOVccB2FsJSIlXmZsJUHV2RVx+fWlQRxJTp8+rsswXyGQ8uWRBV8TSmX+VugPwO55pcINNIgvElsKIGJXwBHjmDdR3pybaXlG68uXL593zvi94qgVIHjVNWK32b3v+Iva2211UtoZT7sh3rr668kwFtoZvFCM1Q7Egi5tWx5/sVCsnfOr/P4zqYKaofA+/GfH0bcx5chN3SK1Po1RMZHfAmGSnSLZiDGZ8UfTQ/PbX4h/ZCP+sJD976mIO8cIM3jvzi01pHrfODBChcife0Gq7TUZTUfCaJ8h1kDeSPQqAj2uUyisZmvCArPHeMRus3XVrEu/YIwceQcT3UxA7w+/6n2ftFy9+0Pld1YYWBFKpLV31ztiSK8p4dg6Ig3tmgO4yuDnIOhxsNhkvY7Q3hx/p3J2wwlGhZgKomkGwwuC9brAgC/WfGfXB+3n5HervU4gzOnBVE77DqdjhlRGGvwV4LTWWaKJzGC8f/+ON8eMAEtuKvHCYCJzoyY5zj32HirQF4kuAugaJ4Srco4XPS8u2PlO0Q3XDGwfJYwzqlOpHaoaBsI7NkOswabWXXa8h4a/DsI4J8Srcl7cvX3NJXs77TcnMDOIIsFEernq2CW9qfcfzFsXqyXCchCGOZWEAm/X/B1vf3Qc50+2w8HMd4eSGekVbTtjODpD+gTs/x4W/qn6C95OQsXGDGfx2n2db04eRjR8UCxzczCZUf/BW0BgSQyxNPgisdsA/KrYgpUi/uyerlU3d221erMGPpjXjdsn5vhyOcebMEpmiJWpNxL9LYG+V4oiFzvGtbu2bpiW7zp8G5a5xezovPiiLVv2FMspE19SQ3pnSl1sPhtYoNJUJ5NoIQwxb79nx9sYC3N8X6zVIjpKGFfqetWgkAbrfMkNOXD5mgPmJ0F0jB2RpYoZI8wN9+7csn+WMN8fTGasj+aU9BgSQ6wMK8MNp1SQWAKQ2i9mzeW6sLtz5VV7tj1Wm8wOSeP3kBli1dH6NOy4ivF/BdHXNddVio7BL5vCuK59eXyjFIEG0JAa0qe/dzGSsQBEZ2nIqWgKa0MMxLfmljU+UTRYM8AVhhzIibzhaD0RWR/HdOxrO/3rx+C9AP962Ec9P0+lntutubZSdG4y5GACvrrYl5n4x0Q0QyqrQUCWCcS0TABN2NP9jOznOnTr6uNzpSF94qrC0ckGMJthfXOLQrJfvrYaJwhYwgJNpknP291Pcarog/G62pBDhfcZZO11MGgSMU4A8Ym9/wdG9d4LwB8DtB3gNgYyMIxU29J4aiiKKzPm58oQmQQ/b5iyIS5zrGxI2RCXVcBlcsozpGyIyyrgMjnlGVI2xGUVcJmc/wNHa7R+ocFFfgAAAABJRU5ErkJggg=="}]}]}},mounted:function(){if("ch"==this.lang)return this.config[0].data=this.echartsCN,this.close="关闭图表选择菜单",void this.chooseConfig();this.config[0].data=this.echartsEN,this.close="close chart-select menu",this.chooseConfig()},computed:l(l({},Object(g["mapState"])("chartSetting",["chartLists","currentChartIndex"])),{},{chartPro:function(){return this.chartAllType.split("|")[0]},chartType:function(){return this.chartAllType.split("|")[1]},chartStyle:function(){return this.chartAllType.split("|")[2]}}),watch:{currentChartType:function(t){this.chartAllType=t},lang:function(t){if("ch"==this.lang)return this.config[0].data=this.echartsCN,this.close="关闭图表选择菜单",void this.chooseConfig();this.config[0].data=this.echartsEN,this.close="close chart-select menu",this.chooseConfig()}},methods:{chooseConfig:function(){for(var t=0;t<this.config.length;t++)if(this.config[t].type==this.chartPro)return void(this.currentConfig=this.config[t]);this.currentConfig=this.config[0]},changeChartType:function(t){return null==this.currentChartIndex?null:(this.chartLists[this.currentChartIndex].chartOptions,Re["chartreuse"]==t?null:(Ie(z(this.chartLists[this.currentChartIndex].chartOptions),t),this.$emit("closeChartShowList"),void(this.currentChartType=t)))},quickListScroll:function(t){var e=v()(t.currentTarget).scrollTop(),n=this;v()(t.currentTarget).find("div.luckysheet-datavisual-quick-list-title").each((function(){var t=v()(this),r=t.position();if(e>=n.list_scroll_direction){if(r.top+55>0)return v()("#luckysheet-datavisual-quick-menu div").removeClass("luckysheet-datavisual-quick-menu-active"),v()("#luckysheet-datavisual-chart-menu-"+t.find("a").data("type")).addClass("luckysheet-datavisual-quick-menu-active"),!1}else if(r.top-55>=0){v()("#luckysheet-datavisual-quick-menu div").removeClass("luckysheet-datavisual-quick-menu-active");var i=t.prev().prev();return 0==i.length&&(i=t),v()("#luckysheet-datavisual-chart-menu-"+i.find("a").data("type")).addClass("luckysheet-datavisual-quick-menu-active"),!1}setTimeout((function(){n.list_scroll_direction=e}),0)}))},quickMenu:function(t){var e=v()(t.currentTarget);v()("#luckysheet-datavisual-quick-menu div").removeClass("luckysheet-datavisual-quick-menu-active"),e.addClass("luckysheet-datavisual-quick-menu-active");var n=v()("#luckysheet-datavisual-chart-listtitle-"+e.data("type")).parent(),r=n.position().top;v()("#luckysheet-datavisual-quick-list").scrollTop(r+5+v()("#luckysheet-datavisual-quick-list").scrollTop())}}},Qe=Ve;n("9622");function Fe(t,e,n,r,i,o,a,u){var s,l="function"===typeof t?t.options:t;if(e&&(l.render=e,l.staticRenderFns=n,l._compiled=!0),r&&(l.functional=!0),o&&(l._scopeId="data-v-"+o),a?(s=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"===typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),i&&i.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},l._ssrRegister=s):i&&(s=u?function(){i.call(this,(l.functional?this.parent:this).$root.$options.shadowRoot)}:i),s)if(l.functional){l._injectStyles=s;var c=l.render;l.render=function(t,e){return s.call(e),c(t,e)}}else{var f=l.beforeCreate;l.beforeCreate=f?[].concat(f,s):[s]}return{exports:t,options:l}}var qe=Fe(Qe,h,p,!1,null,null,null),We=qe.exports,Xe=(n("63ea"),function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-collapse-item",{attrs:{name:"1"}},[n("template",{slot:"title"},[t._v(" "+t._s(t.setItem.modalName)+" "),n("i",{staticClass:"iconfont icon-biaoti"})]),n("chart-base-switch",{attrs:{switchValue:t.title.show},on:{"update:switchValue":function(e){return t.$set(t.title,"show",e)},"update:switch-value":function(e){return t.$set(t.title,"show",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("显示主标题")])]),n("chart-base-input",{attrs:{inputValue:t.title.text,placeholder:"请输入标题内容"},on:{"update:inputValue":function(e){return t.$set(t.title,"text",e)},"update:input-value":function(e){return t.$set(t.title,"text",e)}}},[n("div",{attrs:{slot:"input"},slot:"input"},[t._v("主标题内容")])]),n("chart-base-label",{attrs:{router:t.router+"/label",baseLabelOption:t.title.label},on:{"update:baseLabelOption":function(e){return t.$set(t.title,"label",e)},"update:base-label-option":function(e){return t.$set(t.title,"label",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("文本样式")])]),n("chart-base-select",{attrs:{selectOption:t.positionData,selectValue:t.title.position.value},on:{"update:selectValue":function(e){return t.$set(t.title.position,"value",e)},"update:select-value":function(e){return t.$set(t.title.position,"value",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("主标题位置")])]),"custom"===t.title.position.value?n("el-row",[n("chart-base-slider",{attrs:{baseSliderOption:t.title.position.offsetX,unit:"%",content:"滑动修改左边距偏移量"},on:{"update:baseSliderOption":function(e){return t.$set(t.title.position,"offsetX",e)},"update:base-slider-option":function(e){return t.$set(t.title.position,"offsetX",e)}}}),n("chart-base-slider",{attrs:{baseSliderOption:t.title.position.offsetY,unit:"%",content:"滑动修改上边距偏移量"},on:{"update:baseSliderOption":function(e){return t.$set(t.title.position,"offsetY",e)},"update:base-slider-option":function(e){return t.$set(t.title.position,"offsetY",e)}}})],1):t._e()],2)}),Ze=[],He=n("2ef0"),Ue=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("el-row",{staticStyle:{"margin-top":"15px"}},[n("el-col",{staticClass:"title",attrs:{span:8}},[t._t("title")],2),n("el-col",{attrs:{span:16}},[n("chart-base-box",{attrs:{boxData:t.baseLabelOptionData.fontGroup,checkboxOption:t.fontStyleObj},on:{"update:boxData":function(e){return t.$set(t.baseLabelOptionData,"fontGroup",e)},"update:box-data":function(e){return t.$set(t.baseLabelOptionData,"fontGroup",e)}}}),n("el-row",{staticStyle:{"margin-top":"5px"}},[n("el-col",{attrs:{span:12}},[n("chart-base-select",{attrs:{hideCol:!0,tooltip:"选择字体大小",selectOption:t.fontSizeList,selectValue:t.baseLabelOptionData.fontSize},on:{"update:selectValue":function(e){return t.$set(t.baseLabelOptionData,"fontSize",e)},"update:select-value":function(e){return t.$set(t.baseLabelOptionData,"fontSize",e)}}})],1),n("el-col",{attrs:{span:8,offset:2}},[n("el-color-picker",{attrs:{size:"mini"},on:{change:t.changeStyle},model:{value:t.baseLabelOptionData.color,callback:function(e){t.$set(t.baseLabelOptionData,"color",e)},expression:"baseLabelOptionData.color"}})],1)],1)],1)],1),"custom"===t.baseLabelOptionData.fontSize?n("chart-base-slider",{attrs:{baseSliderOption:t.baseLabelOptionData.cusFontSize,unit:"px",content:"滑动修改字体大小"},on:{"update:baseSliderOption":function(e){return t.$set(t.baseLabelOptionData,"cusFontSize",e)},"update:base-slider-option":function(e){return t.$set(t.baseLabelOptionData,"cusFontSize",e)}}}):t._e()],1)},Je=[],Ye=(n("2532"),{name:"chart-base-label",props:{router:String,baseLabelOption:Object},components:{"chart-base-slider":Cn,"chart-base-select":yn,"chart-base-box":Dn},data:function(){return{baseLabelOptionData:{},fontSizeList:z(G),fontStyleObj:{}}},watch:{baseLabelOption:{handler:function(t){He["isEqual"](this.baseLabelOptionData,t)||(this.baseLabelOptionData=z(t),this.router.includes("title")?this.fontStyleObj=z(R):this.fontStyleObj=z(M))},immediate:!0,deep:!0},baseLabelOptionData:{handler:function(t,e){e&&this.changeStyle()},immediate:!0,deep:!0}},methods:l(l({},g["mapActions"]("chartSetting",["updateChartItem"])),{},{changeStyle:function(){var t={updateObj:z(this.baseLabelOptionData),router:this.router};this.updateChartItem(t)}})}),Ke=Ye,_e=Fe(Ke,Ue,Je,!1,null,null,null),$e=_e.exports,tn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-row",{staticStyle:{"margin-top":"15px"}},[n("el-col",{staticClass:"title",attrs:{span:8}},[t._t("title")],2),n("el-col",{attrs:{span:16}},[n("el-switch",{attrs:{"active-color":"#13ce66","inactive-color":"#d8d8d8"},on:{change:t.changeSwitch},model:{value:t.switchData,callback:function(e){t.switchData=e},expression:"switchData"}})],1)],1)},en=[],nn={name:"chart-base-switch",props:{switchValue:{type:Boolean,default:!1}},data:function(){return{switchData:!1}},watch:{switchValue:function(t){this.switchData=t}},mounted:function(){this.switchData=!!this.switchValue&&this.switchValue},methods:{changeSwitch:function(t){this.$emit("update:switchValue",t)}}},rn=nn,on=Fe(rn,tn,en,!1,null,null,null),an=on.exports,un=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[t.hideCol?n("el-input",{attrs:{type:t.type?t.type:"text",placeholder:t.placeholder,size:"mini"},on:{change:t.changeInput},model:{value:t.input,callback:function(e){t.input=e},expression:"input"}}):n("el-row",{staticStyle:{"margin-top":"15px"}},[n("el-col",{staticClass:"title",attrs:{span:8}},[t._t("input")],2),n("el-col",{attrs:{span:16}},[n("el-input",{attrs:{placeholder:t.placeholder,size:"mini","suffix-icon":"el-icon-edit",type:t.type?t.type:"text"},on:{change:t.changeInput},model:{value:t.input,callback:function(e){t.input=e},expression:"input"}})],1)],1)],1)},sn=[],ln={name:"chart-base-input",props:{placeholder:{type:String,default:""},inputValue:"",hideCol:Boolean,type:String},data:function(){return{input:""}},watch:{inputValue:function(t){this.input=t}},mounted:function(){this.input=this.inputValue?this.inputValue:""},methods:{changeInput:function(t){this.$emit("update:inputValue",t)}}},cn=ln,fn=Fe(cn,un,sn,!1,null,null,null),hn=fn.exports,pn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.hideCol?n("el-tooltip",{attrs:{disabled:!t.tooltip,"open-delay":500,content:t.tooltip,effect:"dark",placement:"bottom"}},[n("el-select",{attrs:{size:"mini"},on:{change:t.changeSelect},model:{value:t.select,callback:function(e){t.select=e},expression:"select"}},t._l(t.selectOption,(function(t,e){return n("el-option",{key:e,attrs:{label:t.label,value:t.value}})})),1)],1):n("el-row",{staticStyle:{"margin-top":"15px"}},[n("el-col",{staticClass:"title",attrs:{span:8}},[t._t("select")],2),n("el-col",{attrs:{span:16}},[n("el-tooltip",{attrs:{disabled:!t.tooltip,"open-delay":500,content:t.tooltip,effect:"dark",placement:"bottom"}},[n("el-select",{attrs:{size:"mini"},on:{change:t.changeSelect},model:{value:t.select,callback:function(e){t.select=e},expression:"select"}},t._l(t.selectOption,(function(t,e){return n("el-option",{key:e,attrs:{label:t.label,value:t.value}})})),1)],1)],1)],1)},dn=[],vn={props:{selectOption:Array,tooltip:String,selectValue:[String,Number,Array],hideCol:Boolean},data:function(){return{select:""}},watch:{selectValue:function(t){this.select=t}},mounted:function(){this.select=this.selectValue},methods:{changeSelect:function(t){this.$emit("update:selectValue",t)}}},gn=vn,bn=Fe(gn,pn,dn,!1,null,null,null),yn=bn.exports,mn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[t.hideCol?n("el-row",{staticClass:"chart-base-slider",staticStyle:{"margin-top":"15px"}},[n("el-col",{attrs:{span:6}},[t._t("title")],2),n("el-col",{attrs:{span:17}},[n("el-tooltip",{attrs:{"open-delay":500,content:t.content,placement:"top"}},[n("el-slider",{staticStyle:{"padding-left":"12px"},attrs:{"show-input-controls":!1,min:t.min,max:t.max,"input-size":"mini","show-input":""},on:{change:t.handlerChange},model:{value:t.baseSliderData,callback:function(e){t.baseSliderData=e},expression:"baseSliderData"}})],1)],1),n("el-col",{staticClass:"input_content",attrs:{span:1}},[t._v(t._s(t.unit))])],1):n("el-row",{staticClass:"chart-base-slider",staticStyle:{"margin-top":"15px"}},[n("el-col",{attrs:{span:22}},[n("el-tooltip",{attrs:{"open-delay":500,content:t.content,placement:"top"}},[n("el-slider",{staticStyle:{"padding-left":"12px"},attrs:{"show-input-controls":!1,min:t.min,max:t.max,"input-size":"mini","show-input":""},on:{change:t.handlerChange},model:{value:t.baseSliderData,callback:function(e){t.baseSliderData=e},expression:"baseSliderData"}})],1)],1),n("el-col",{staticClass:"input_content",attrs:{span:1}},[t._v(t._s(t.unit))])],1)],1)},xn=[],wn={name:"chart-base-slider",props:{baseSliderOption:Number,unit:String,min:{type:Number,default:0},max:{type:Number,default:100},content:{type:String,default:"滑动修改值大小"},hideCol:!1,format:[Function,String]},data:function(){return{baseSliderData:12}},watch:{baseSliderOption:function(t){this.baseSliderData=t}},mounted:function(){this.baseSliderData=this.baseSliderOption},methods:{handlerChange:function(t){this.$emit("update:baseSliderOption",t)}}},An=wn,Sn=(n("9470"),Fe(An,mn,xn,!1,null,null,null)),Cn=Sn.exports,kn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-row",[n("el-checkbox-group",{attrs:{size:"mini"},on:{change:t.changeStyle},model:{value:t.boxValue,callback:function(e){t.boxValue=e},expression:"boxValue"}},t._l(t.checkboxOption,(function(e,r){return n("el-tooltip",{key:r,attrs:{"open-delay":500,content:e.des,effect:"dark",placement:"bottom"}},[n("el-checkbox-button",{attrs:{label:r}},[t._v(" "+t._s(e.text)+" ")])],1)})),1)],1)},On=[],Tn={props:{checkboxOption:[Object,Array],boxData:{type:Array,default:[]}},data:function(){return{boxValue:""}},watch:{boxData:function(t){this.boxValue=t}},mounted:function(){this.boxValue=this.boxData?z(this.boxData):[]},methods:{changeStyle:function(t){this.$emit("update:boxData",t)}}},En=Tn,In=Fe(En,kn,On,!1,null,null,null),Dn=In.exports,jn=function(t){return{"chart-base-label":t.ChartBaseLabel,"chart-base-input":t.ChartBaseInput,"chart-base-switch":t.ChartBaseSwitch,"chart-base-slider":t.ChartBaseSlider,"chart-base-select":t.ChartBaseSelect}},Ln={name:"ChartTitle",props:{router:String,chartAllType:String,titleOption:Object,lang:{type:String,default:"cn"}},components:l({},jn(r)),mounted:function(){"ch"!=this.lang?this.setItem=ze["chartTitle"]:this.setItem=Be["chartTitle"]},data:function(){return{title:"",positionData:C,isChange:!1,setItem:{}}},watch:{titleOption:{handler:function(t,e){He["isEqual"](this.title,t)||(e&&(this.isChange=!0),this.title=z(t))},deep:!0,immediate:!0},title:{handler:function(t,e){this.isChange?this.isChange=!this.isChange:e&&this.changeTitle()},deep:!0,immediate:!0},lang:function(t){this.setItem="ch"!=t?ze["chartTitle"]:Be["chartTitle"]}},methods:l(l({},g["mapActions"]("chartSetting",["updateChartItem"])),{},{changeTitle:function(){var t={updateObj:z(this.title),router:this.router};this.updateChartItem(t)}})},Nn=Ln,Gn=Fe(Nn,Xe,Ze,!1,null,null,null),Rn=Gn.exports,Mn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-collapse-item",{attrs:{name:"2"}},[n("template",{slot:"title"},[t._v(" "+t._s(t.setItem.modalName)+" "),n("i",{staticClass:"iconfont icon-biaoti"})]),n("chart-base-input",{attrs:{inputValue:t.subTitle.text,placeholder:"请输入副标题内容"},on:{"update:inputValue":function(e){return t.$set(t.subTitle,"text",e)},"update:input-value":function(e){return t.$set(t.subTitle,"text",e)}}},[n("div",{attrs:{slot:"input"},slot:"input"},[t._v("副标题内容")])]),n("chart-base-label",{attrs:{router:t.router+"/label",baseLabelOption:t.subTitle.label}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("文本样式")])]),n("chart-base-select",{attrs:{selectOption:t.distanceOption,selectValue:t.subTitle.distance.value},on:{"update:selectValue":function(e){return t.$set(t.subTitle.distance,"value",e)},"update:select-value":function(e){return t.$set(t.subTitle.distance,"value",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("主副标题间距")])]),"custom"===t.subTitle.distance.value?n("chart-base-slider",{attrs:{baseSliderOption:t.subTitle.distance.cusGap,unit:"px",content:"滑动修改间距"},on:{"update:baseSliderOption":function(e){return t.$set(t.subTitle.distance,"cusGap",e)},"update:base-slider-option":function(e){return t.$set(t.subTitle.distance,"cusGap",e)}}}):t._e()],2)},Bn=[],Pn={name:"ChartSubTitle",props:{router:String,chartAllType:String,subTitleOption:Object,lang:{type:String,default:"cn"}},components:l({},jn(r)),data:function(){return{subTitle:{},distanceOption:z(k),setItem:{}}},mounted:function(){"ch"!=this.lang?this.setItem=ze["chartSubTitle"]:this.setItem=Be["chartSubTitle"]},watch:{subTitleOption:{handler:function(t){He["isEqual"](this.subTitle,t)||(this.subTitle=z(t))},immediate:!0,deep:!0},subTitle:{handler:function(t,e){e&&this.changeTitle()},deep:!0,immediate:!0},lang:function(t){this.setItem="ch"!=t?ze["chartSubTitle"]:Be["chartSubTitle"]}},methods:l(l({},g["mapActions"]("chartSetting",["updateChartItem"])),{},{changeTitle:function(){var t={updateObj:z(this.subTitle),router:this.router};this.updateChartItem(t)}})},zn=Pn,Vn=Fe(zn,Mn,Bn,!1,null,null,null),Qn=Vn.exports,Fn=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-collapse-item",{attrs:{name:"4"}},[n("template",{slot:"title"},[t._v(" "+t._s(t.setItem.modalName)+" "),n("i",{staticClass:"iconfont icon-biaoti"})]),n("chart-base-switch",{attrs:{switchValue:t.cursor.show},on:{"update:switchValue":function(e){return t.$set(t.cursor,"show",e)},"update:switch-value":function(e){return t.$set(t.cursor,"show",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("显示提示框")])]),n("chart-base-label",{attrs:{router:t.router+"/label",baseLabelOption:t.cursor.label}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("鼠标提示样式")])]),n("el-row",{staticStyle:{"margin-top":"10px"}},[n("el-col",{attrs:{span:6}},[t._v("背景颜色")]),n("el-col",{attrs:{span:3}},[n("el-color-picker",{attrs:{size:"mini"},model:{value:t.cursor.backgroundColor,callback:function(e){t.$set(t.cursor,"backgroundColor",e)},expression:"cursor.backgroundColor"}})],1)],1),n("chart-base-select",{attrs:{selectOption:t.triggerMethodArr,selectValue:t.cursor.triggerOn},on:{"update:selectValue":function(e){return t.$set(t.cursor,"triggerOn",e)},"update:select-value":function(e){return t.$set(t.cursor,"triggerOn",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("提示触发条件")])]),n("chart-base-select",{attrs:{selectOption:t.triggerTypeArr,selectValue:t.cursor.triggerType},on:{"update:selectValue":function(e){return t.$set(t.cursor,"triggerType",e)},"update:select-value":function(e){return t.$set(t.cursor,"triggerType",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("提示触发类型")])]),"item"!=t.cursor.triggerType?n("div",[n("chart-base-select",{attrs:{selectOption:t.lineStyleOption,selectValue:t.cursor.axisPointer.style.type},on:{"update:selectValue":function(e){return t.$set(t.cursor.axisPointer.style,"type",e)},"update:select-value":function(e){return t.$set(t.cursor.axisPointer.style,"type",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("指示器线类型")])]),n("chart-base-select",{attrs:{selectOption:t.lineWeightOption,selectValue:t.cursor.axisPointer.style.width},on:{"update:selectValue":function(e){return t.$set(t.cursor.axisPointer.style,"width",e)},"update:select-value":function(e){return t.$set(t.cursor.axisPointer.style,"width",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("指示器线宽")])]),n("el-row",{staticStyle:{"margin-top":"15px"}},[n("el-col",{attrs:{span:6}},[t._v("线条颜色")]),n("el-col",{attrs:{span:3}},[n("el-color-picker",{attrs:{size:"mini"},model:{value:t.cursor.axisPointer.style.color,callback:function(e){t.$set(t.cursor.axisPointer.style,"color",e)},expression:"cursor.axisPointer.style.color"}})],1)],1),n("chart-base-select",{attrs:{selectOption:t.axisPointerArr,selectValue:t.cursor.axisPointer.type},on:{"update:selectValue":function(e){return t.$set(t.cursor.axisPointer,"type",e)},"update:select-value":function(e){return t.$set(t.cursor.axisPointer,"type",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("指示器类型")])])],1):t._e(),"item"==t.cursor.triggerType?n("chart-base-select",{attrs:{selectOption:t.posOption,selectValue:t.cursor.position},on:{"update:selectValue":function(e){return t.$set(t.cursor,"position",e)},"update:select-value":function(e){return t.$set(t.cursor,"position",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("提示框浮层位置")])]):t._e(),n("el-row",{staticStyle:{"margin-top":"15px"}},[n("el-col",{attrs:{span:2}},[n("i",{staticClass:"el-icon-menu"})]),n("el-col",{attrs:{span:8}},[t._v("鼠标提示后缀")])],1),t._l(t.seriesOption,(function(e,r){return n("el-row",{key:r,staticStyle:{"margin-top":"15px"}},[n("el-col",{attrs:{span:6}},[t._v(t._s(e))]),n("el-col",{attrs:{span:4}},[n("chart-base-input",{attrs:{hideCol:!0,placeholder:"后缀"}})],1),n("el-col",{attrs:{span:6}},[n("chart-base-select",{attrs:{tooltip:"数值比例",selectOption:t.ratioOption,selectValue:t.cursor.format[r].ratio,hideCol:!0},on:{"update:selectValue":function(e){return t.$set(t.cursor.format[r],"ratio",e)},"update:select-value":function(e){return t.$set(t.cursor.format[r],"ratio",e)}}})],1),n("el-col",{attrs:{span:6}},[n("chart-base-select",{attrs:{tooltip:"小数位数",selectOption:t.digitOption,selectValue:t.cursor.format[r].digit,hideCol:!0},on:{"update:selectValue":function(e){return t.$set(t.cursor.format[r],"digit",e)},"update:select-value":function(e){return t.$set(t.cursor.format[r],"digit",e)}}})],1)],1)}))],2)},qn=[],Wn={components:l({},jn(r)),props:{router:String,chartAllType:String,cursorOption:Object,lang:{type:String,default:"cn"}},data:function(){return{cursor:{},fontSizeOption:z(O),lineStyleOption:z(T),lineWeightOption:z(E),posOption:z(I),ratioOption:z(D),digitOption:z(j),triggerTypeArr:[{value:"item",label:"数据项图形触发"},{value:"axis",label:"坐标轴触发"}],axisPointerArr:[{value:"line",label:"直线指示器"},{value:"shadow",label:"阴影指示器"},{value:"cross",label:"十字准星指示器"}],triggerMethodArr:[{value:"mousemove",label:"鼠标移动"},{value:"click",label:"单击左键/鼠标划过"},{value:"mousemove|click",label:"同时触发"}],setItem:{}}},mounted:function(){"ch"!=this.lang?this.setItem=ze["chartCursor"]:this.setItem=Be["chartCursor"]},watch:{cursorOption:{handler:function(t){He["isEqual"](this.cursor,t)||(this.cursor=z(t))},immediate:!0,deep:!0},cursor:{handler:function(t,e){e&&this.changeCursor()},deep:!0,immediate:!0},lang:function(t){this.setItem="ch"!=t?ze["chartCursor"]:Be["chartCursor"]}},computed:{seriesOption:function(){for(var t=[],e=0;e<this.cursor.format.length;e++)t.push(this.cursor.format[e].seriesName);return t}},methods:l(l({},g["mapActions"]("chartSetting",["updateChartItem"])),{},{changeCursor:function(){var t={updateObj:z(this.cursor),router:this.router};this.updateChartItem(t)}})},Xn=Wn,Zn=Fe(Xn,Fn,qn,!1,null,null,null),Hn=Zn.exports,Un=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-collapse-item",{attrs:{name:"3"}},[n("template",{slot:"title"},[t._v(" "+t._s(t.setItem.modalName)+" "),n("i",{staticClass:"iconfont icon-biaoti"})]),n("chart-base-switch",{attrs:{switchValue:t.legend.show},on:{"update:switchValue":function(e){return t.$set(t.legend,"show",e)},"update:switch-value":function(e){return t.$set(t.legend,"show",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("显示图例")])]),n("div",{directives:[{name:"show",rawName:"v-show",value:t.legend.show,expression:"legend.show"}]},[n("chart-base-label",{attrs:{router:t.router+"/label",baseLabelOption:t.legend.label},on:{"update:baseLabelOption":function(e){return t.$set(t.legend,"label",e)},"update:base-label-option":function(e){return t.$set(t.legend,"label",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("图例样式")])]),n("chart-base-select",{attrs:{selectOption:t.positionOption,selectValue:t.legend.position.value},on:{"update:selectValue":function(e){return t.$set(t.legend.position,"value",e)},"update:select-value":function(e){return t.$set(t.legend.position,"value",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("图例位置")])]),"custom"===t.legend.position.value?n("el-row",[n("chart-base-slider",{attrs:{baseSliderOption:t.legend.position.offsetX,unit:"%",content:"滑动修改水平偏移量"},on:{"update:baseSliderOption":function(e){return t.$set(t.legend.position,"offsetX",e)},"update:base-slider-option":function(e){return t.$set(t.legend.position,"offsetX",e)}}}),n("chart-base-slider",{attrs:{baseSliderOption:t.legend.position.offsetY,unit:"%",content:"滑动修改垂直偏移量"},on:{"update:baseSliderOption":function(e){return t.$set(t.legend.position,"offsetY",e)},"update:base-slider-option":function(e){return t.$set(t.legend.position,"offsetY",e)}}})],1):t._e(),n("chart-base-select",{attrs:{selectOption:t.dirOptions,selectValue:t.legend.position.direction},on:{"update:selectValue":function(e){return t.$set(t.legend.position,"direction",e)},"update:select-value":function(e){return t.$set(t.legend.position,"direction",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("图例朝向")])]),n("chart-base-select",{attrs:{selectOption:t.sizeOption,selectValue:t.legend.width.value},on:{"update:selectValue":function(e){return t.$set(t.legend.width,"value",e)},"update:select-value":function(e){return t.$set(t.legend.width,"value",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("图例宽度")])]),n("chart-base-select",{attrs:{selectOption:t.sizeOption,selectValue:t.legend.height.value},on:{"update:selectValue":function(e){return t.$set(t.legend.height,"value",e)},"update:select-value":function(e){return t.$set(t.legend.height,"value",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("图例高度")])]),"custom"==t.legend.width.value?n("chart-base-slider",{attrs:{baseSliderOption:t.legend.width.cusSize,unit:"px",content:"滑动修改图例宽度"},on:{"update:baseSliderOption":function(e){return t.$set(t.legend.width,"cusSize",e)},"update:base-slider-option":function(e){return t.$set(t.legend.width,"cusSize",e)}}}):t._e(),"custom"==t.legend.height.value?n("chart-base-slider",{attrs:{baseSliderOption:t.legend.height.cusSize,unit:"px",content:"滑动修改图例高度"},on:{"update:baseSliderOption":function(e){return t.$set(t.legend.height,"cusSize",e)},"update:base-slider-option":function(e){return t.$set(t.legend.height,"cusSize",e)}}}):t._e(),n("chart-base-select",{attrs:{selectOption:t.distanceOption,selectValue:t.legend.distance.value},on:{"update:selectValue":function(e){return t.$set(t.legend.distance,"value",e)},"update:select-value":function(e){return t.$set(t.legend.distance,"value",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("图例间距")])]),"custom"==t.legend.distance.value?n("chart-base-slider",{attrs:{baseSliderOption:t.legend.distance.cusGap,unit:"px",content:"滑动修改图例间距"},on:{"update:baseSliderOption":function(e){return t.$set(t.legend.distance,"cusGap",e)},"update:base-slider-option":function(e){return t.$set(t.legend.distance,"cusGap",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("图例样式")])]):t._e()],1)],2)},Jn=[],Yn={props:{legendOption:Object,chartAllType:String,router:String,lang:{type:String,default:"cn"}},data:function(){return{legend:{},positionOption:z(C),sizeOption:z(L),distanceOption:z(k),dirOptions:[{value:"horizontal",label:"水平"},{value:"vertical",label:"垂直"}],setItem:{}}},components:l({},jn(r)),mounted:function(){"ch"!=this.lang?this.setItem=ze["chartLegend"]:this.setItem=Be["chartLegend"]},watch:{legendOption:{handler:function(t){He["isEqual"](this.legend,t)||(this.legend=z(t))},immediate:!0,deep:!0},legend:{handler:function(t,e){e&&this.changeLegend()},deep:!0,immediate:!0},lang:function(t){this.setItem="ch"!=t?ze["chartLegend"]:Be["chartLegend"]}},methods:l(l({},g["mapActions"]("chartSetting",["updateChartItem"])),{},{changeLegend:function(){var t={updateObj:z(this.legend),router:this.router};this.updateChartItem(t)}})},Kn=Yn,_n=Fe(Kn,Un,Jn,!1,null,null,null),$n=_n.exports,tr=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-collapse-item",{attrs:{name:"6"}},[n("template",{slot:"title"},[t._v(" "+t._s(t.setItem.modalName)+" "),n("i",{staticClass:"iconfont icon-biaoti"})]),n("chart-base-select",{attrs:{selectOption:t.axisGroup,selectValue:t.axis.axisType},on:{"update:selectValue":function(e){return t.$set(t.axis,"axisType",e)},"update:select-value":function(e){return t.$set(t.axis,"axisType",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("选择坐标轴")])]),n("chart-base-switch",{attrs:{switchValue:t.series.show},on:{"update:switchValue":function(e){return t.$set(t.series,"show",e)},"update:switch-value":function(e){return t.$set(t.series,"show",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v(t._s(t.series.name))])]),n("div",{directives:[{name:"show",rawName:"v-show",value:t.series.show,expression:"series.show"}]},[n("chart-base-input",{attrs:{inputValue:t.series.title.text,placeholder:"请输入标题内容"},on:{"update:inputValue":function(e){return t.$set(t.series.title,"text",e)},"update:input-value":function(e){return t.$set(t.series.title,"text",e)}}},[n("div",{attrs:{slot:"input"},slot:"input"},[t._v("标题内容")])]),n("div",{directives:[{name:"show",rawName:"v-show",value:t.series.title.text,expression:"series.title.text"}],staticStyle:{"margin-top":"15px"}},[n("chart-base-label",{attrs:{router:t.router+"/label",baseLabelOption:t.series.title.label},on:{"update:baseLabelOption":function(e){return t.$set(t.series.title,"label",e)},"update:base-label-option":function(e){return t.$set(t.series.title,"label",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("文本样式")])]),n("chart-base-select",{attrs:{selectOption:t.fzPosOption,selectValue:t.series.title.fzPosition},on:{"update:selectValue":function(e){return t.$set(t.series.title,"fzPosition",e)},"update:select-value":function(e){return t.$set(t.series.title,"fzPosition",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("文本对齐方式")])])],1),n("chart-base-switch",{attrs:{switchValue:t.series.inverse},on:{"update:switchValue":function(e){return t.$set(t.series,"inverse",e)},"update:switch-value":function(e){return t.$set(t.series,"inverse",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("反向坐标轴")])]),n("chart-base-slider",{attrs:{hideCol:!0,max:10,baseSliderOption:t.series.tickLabel.optimize,unit:"个",content:"滑动修改坐标轴间隔个数"},on:{"update:baseSliderOption":function(e){return t.$set(t.series.tickLabel,"optimize",e)},"update:base-slider-option":function(e){return t.$set(t.series.tickLabel,"optimize",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("坐标轴间隔个数")])]),n("div",{directives:[{name:"show",rawName:"v-show",value:t.series.title.text,expression:"series.title.text"}]},[n("chart-base-slider",{attrs:{hideCol:!0,baseSliderOption:t.series.title.nameGap,unit:"px",content:"滑动修改标题与轴线距离"},on:{"update:baseSliderOption":function(e){return t.$set(t.series.title,"nameGap",e)},"update:base-slider-option":function(e){return t.$set(t.series.title,"nameGap",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("标题与轴线距离")])]),n("chart-base-slider",{attrs:{hideCol:!0,format:t.formatRotation+"",max:180,min:-180,baseSliderOption:t.series.title.rotate,unit:"°",content:"滑动修改标题与轴线距离"},on:{"update:baseSliderOption":function(e){return t.$set(t.series.title,"rotate",e)},"update:base-slider-option":function(e){return t.$set(t.series.title,"rotate",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("倾斜轴标题")])])],1),n("chart-base-switch",{attrs:{switchValue:t.series.tickLine.show},on:{"update:switchValue":function(e){return t.$set(t.series.tickLine,"show",e)},"update:switch-value":function(e){return t.$set(t.series.tickLine,"show",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("显示刻度线")])]),n("chart-base-slider",{attrs:{hideCol:!0,min:1,baseSliderOption:t.series.tickLine.width,unit:"px",content:"滑动修改刻度线宽度"},on:{"update:baseSliderOption":function(e){return t.$set(t.series.tickLine,"width",e)},"update:base-slider-option":function(e){return t.$set(t.series.tickLine,"width",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("刻度线宽度")])]),n("el-row",{staticStyle:{"margin-top":"15px"}},[n("el-col",{staticClass:"title",attrs:{span:7}},[t._v("刻度线颜色")]),n("el-col",{attrs:{push:14,span:3}},[n("el-tooltip",{attrs:{"open-delay":500,content:"刻度线颜色",effect:"dark",placement:"bottom"}},[n("el-color-picker",{attrs:{size:"mini"},model:{value:t.series.tickLine.color,callback:function(e){t.$set(t.series.tickLine,"color",e)},expression:"series.tickLine.color"}})],1)],1)],1),n("chart-base-switch",{attrs:{switchValue:t.series.tick.show},on:{"update:switchValue":function(e){return t.$set(t.series.tick,"show",e)},"update:switch-value":function(e){return t.$set(t.series.tick,"show",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("显示刻度")])]),n("chart-base-select",{attrs:{selectOption:t.orient,selectValue:t.series.tick.position},on:{"update:selectValue":function(e){return t.$set(t.series.tick,"position",e)},"update:select-value":function(e){return t.$set(t.series.tick,"position",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("刻度位置")])]),n("chart-base-slider",{attrs:{hideCol:!0,min:1,baseSliderOption:t.series.tick.length,unit:"px",content:"滑动修改刻度长度"},on:{"update:baseSliderOption":function(e){return t.$set(t.series.tick,"length",e)},"update:base-slider-option":function(e){return t.$set(t.series.tick,"length",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("刻度长度")])]),n("chart-base-slider",{attrs:{hideCol:!0,max:20,min:1,baseSliderOption:t.series.tick.width,unit:"px",content:"滑动修改刻度宽度"},on:{"update:baseSliderOption":function(e){return t.$set(t.series.tick,"width",e)},"update:base-slider-option":function(e){return t.$set(t.series.tick,"width",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("刻度宽度")])]),n("el-row",{staticStyle:{"margin-top":"15px"}},[n("el-col",{staticClass:"title",attrs:{span:6}},[t._v("刻度颜色")]),n("el-col",{attrs:{push:14,span:4}},[n("el-tooltip",{attrs:{"open-delay":500,content:"刻度颜色",effect:"dark",placement:"bottom"}},[n("el-color-picker",{attrs:{size:"mini"},model:{value:t.series.tick.color,callback:function(e){t.$set(t.series.tick,"color",e)},expression:"series.tick.color"}})],1)],1)],1),n("chart-base-switch",{attrs:{switchValue:t.series.tickLabel.show},on:{"update:switchValue":function(e){return t.$set(t.series.tickLabel,"show",e)},"update:switch-value":function(e){return t.$set(t.series.tickLabel,"show",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("显示刻度标签")])]),n("chart-base-slider",{attrs:{hideCol:!0,format:t.formatRotation,max:180,min:-180,baseSliderOption:t.series.tickLabel.rotate,unit:"°",content:"滑动修改标签倾斜角度"},on:{"update:baseSliderOption":function(e){return t.$set(t.series.tickLabel,"rotate",e)},"update:base-slider-option":function(e){return t.$set(t.series.tickLabel,"rotate",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("倾斜标签")])]),n("div",{directives:[{name:"show",rawName:"v-show",value:t.showLabel,expression:"showLabel"}]},[n("chart-base-input",{attrs:{type:"text",inputValue:t.series.tickLabel.min,placeholder:"请输入刻度最小值"},on:{"update:inputValue":function(e){return t.$set(t.series.tickLabel,"min",e)},"update:input-value":function(e){return t.$set(t.series.tickLabel,"min",e)}}},[n("div",{attrs:{slot:"input"},slot:"input"},[t._v("刻度最小值")])]),n("chart-base-input",{attrs:{type:"text",inputValue:t.series.tickLabel.max,placeholder:"请输入刻度最大值且最大值不能小于最小值"},on:{"update:inputValue":function(e){return t.$set(t.series.tickLabel,"max",e)},"update:input-value":function(e){return t.$set(t.series.tickLabel,"max",e)}}},[n("div",{attrs:{slot:"input"},slot:"input"},[t._v("刻度最大值")])]),n("chart-base-select",{attrs:{selectOption:t.ratioOption,selectValue:t.series.tickLabel.ratio},on:{"update:selectValue":function(e){return t.$set(t.series.tickLabel,"ratio",e)},"update:select-value":function(e){return t.$set(t.series.tickLabel,"ratio",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("数值缩放比例")])]),n("chart-base-select",{attrs:{selectOption:t.digitOption,selectValue:t.series.tickLabel.digit},on:{"update:selectValue":function(e){return t.$set(t.series.tickLabel,"digit",e)},"update:select-value":function(e){return t.$set(t.series.tickLabel,"digit",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("小数位数")])])],1),n("chart-base-input",{attrs:{inputValue:t.series.tickLabel.prefix,placeholder:"请输入标签前缀"},on:{"update:inputValue":function(e){return t.$set(t.series.tickLabel,"prefix",e)},"update:input-value":function(e){return t.$set(t.series.tickLabel,"prefix",e)}}},[n("div",{attrs:{slot:"input"},slot:"input"},[t._v("标签前缀")])]),n("chart-base-input",{attrs:{inputValue:t.series.tickLabel.suffix,placeholder:"请输入标签后缀"},on:{"update:inputValue":function(e){return t.$set(t.series.tickLabel,"suffix",e)},"update:input-value":function(e){return t.$set(t.series.tickLabel,"suffix",e)}}},[n("div",{attrs:{slot:"input"},slot:"input"},[t._v("标签后缀")])]),n("chart-base-switch",{attrs:{switchValue:t.series.netLine.show},on:{"update:switchValue":function(e){return t.$set(t.series.netLine,"show",e)},"update:switch-value":function(e){return t.$set(t.series.netLine,"show",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("显示网格线")])]),n("div",{directives:[{name:"show",rawName:"v-show",value:t.series.netLine.show,expression:"series.netLine.show"}]},[n("chart-base-slider",{attrs:{hideCol:!0,max:20,min:1,baseSliderOption:t.series.netLine.width,unit:"px",content:"滑动修改网格线宽度"},on:{"update:baseSliderOption":function(e){return t.$set(t.series.netLine,"width",e)},"update:base-slider-option":function(e){return t.$set(t.series.netLine,"width",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("网格线宽度")])]),n("chart-base-select",{attrs:{selectOption:t.lineStyleOption,selectValue:t.series.netLine.type},on:{"update:selectValue":function(e){return t.$set(t.series.netLine,"type",e)},"update:select-value":function(e){return t.$set(t.series.netLine,"type",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("网格线类型")])]),n("el-row",{staticStyle:{"margin-top":"15px"}},[n("el-col",{staticClass:"title",attrs:{span:8}},[t._v("网格线颜色")]),n("el-col",{attrs:{push:13,span:3}},[n("el-tooltip",{attrs:{"open-delay":500,content:"网格线颜色",effect:"dark",placement:"bottom"}},[n("el-color-picker",{attrs:{label:!0,size:"mini"},model:{value:t.series.netLine.color,callback:function(e){t.$set(t.series.netLine,"color",e)},expression:"series.netLine.color"}})],1)],1)],1),n("chart-base-select",{attrs:{selectOption:t.intervalOption,selectValue:t.series.netLine.interval.value},on:{"update:selectValue":function(e){return t.$set(t.series.netLine.interval,"value",e)},"update:select-value":function(e){return t.$set(t.series.netLine.interval,"value",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("网格线分割间隔数")])]),"custom"==t.series.netLine.interval.value?n("chart-base-slider",{attrs:{baseSliderOption:t.series.netLine.interval.cusNumber,unit:"个",content:"滑动修改间隔数"},on:{"update:baseSliderOption":function(e){return t.$set(t.series.netLine.interval,"cusNumber",e)},"update:base-slider-option":function(e){return t.$set(t.series.netLine.interval,"cusNumber",e)}}}):t._e()],1),n("chart-base-switch",{attrs:{switchValue:t.series.netArea.show},on:{"update:switchValue":function(e){return t.$set(t.series.netArea,"show",e)},"update:switch-value":function(e){return t.$set(t.series.netArea,"show",e)}}},[n("div",{attrs:{slot:"title"},slot:"title"},[t._v("显示网格区域")])]),n("div",{directives:[{name:"show",rawName:"v-show",value:t.series.netArea.show,expression:"series.netArea.show"}]},[n("chart-base-select",{attrs:{selectOption:t.intervalOption,selectValue:t.series.netArea.interval.value},on:{"update:selectValue":function(e){return t.$set(t.series.netArea.interval,"value",e)},"update:select-value":function(e){return t.$set(t.series.netArea.interval,"value",e)}}},[n("div",{attrs:{slot:"select"},slot:"select"},[t._v("网格区域分割间隔数")])]),"custom"==t.series.netArea.interval.value?n("chart-base-slider",{attrs:{baseSliderOption:t.series.netArea.interval.cusNumber,unit:"个",content:"滑动修改间隔数"},on:{"update:baseSliderOption":function(e){return t.$set(t.series.netArea.interval,"cusNumber",e)},"update:base-slider-option":function(e){return t.$set(t.series.netArea.interval,"cusNumber",e)}}}):t._e(),n("el-row",{staticStyle:{"margin-top":"15px"}},[n("el-col",{attrs:{span:6}},[t._v("网格区域第一颜色")]),n("el-col",{attrs:{span:3}},[n("el-color-picker",{attrs:{size:"mini"},model:{value:t.series.netArea.colorOne,callback:function(e){t.$set(t.series.netArea,"colorOne",e)},expression:"series.netArea.colorOne"}})],1),n("el-col",{attrs:{span:6}},[t._v("网格区域第二颜色")]),n("el-col",{attrs:{span:3}},[n("el-color-picker",{attrs:{size:"mini"},model:{value:t.series.netArea.colorTwo,callback:function(e){t.$set(t.series.netArea,"colorTwo",e)},expression:"series.netArea.colorTwo"}})],1)],1)],1)],1)],2)},er=[],nr={name:"ChartXaxis",props:{chartAllType:String,axisOption:Object,router:String,lang:{type:String,default:"cn"}},components:l({},jn(r)),data:function(){return{axis:{},series:{},fontSizeOption:"",lineStyleOption:"",ratioOption:"",digitOption:"",fzPosOption:[{value:"middle",label:"居中"},{value:"start",label:"头部"},{value:"end",label:"尾部"},{value:"hidden",label:"隐藏"}],orient:[{label:"朝内",value:"inside"},{label:"朝外",value:"outside"}],formatRotation:function(t){return t+" °"},setItem:{}}},mounted:function(){"ch"!=this.lang?this.setItem=ze["chartAxis"]:this.setItem=Be["chartAxis"]},watch:{axisOption:{handler:function(t){He["isEqual"](this.axis,this.axisOption)||(this.axis=z(this.axisOption),this.series=this.axis[t.axisType],this.fontSizeOption=z(O),this.lineStyleOption=z(T),this.intervalOption=z(N),this.ratioOption=z(D),this.digitOption=z(j))},immediate:!0,deep:!0},series:{handler:function(t,e){e&&this.changeAxis()},deep:!0,immediate:!0},lang:function(t){this.setItem="ch"!=t?ze["chartAxis"]:Be["chartAxis"]}},computed:{chartType:function(){return this.chartAllType.split("|")[1]},chartStyle:function(){return this.chartAllType.split("|")[2]},axisGroup:function(){return"bar"==this.chartType&&"compare"!=this.chartStyle?[{value:"xAxisDown",label:"Y轴(左侧垂直)"},{value:"xAxisUp",label:"Y轴(左侧垂直)"},{value:"yAxisLeft",label:"X轴(下方水平)"},{value:"yAxisRight",label:"X轴(上方水平)"}]:"compare"==this.chartStyle?[{value:"xAxisDown",label:"Y轴(右侧坐标轴)"},{value:"xAxisUp",label:"Y轴(左侧坐标轴)"},{value:"yAxisLeft",label:"X轴(右侧坐标轴)"},{value:"yAxisRight",label:"X轴(左侧坐标轴)"}]:[{value:"xAxisDown",label:"X轴(下方水平)"},{value:"xAxisUp",label:"X轴(上方水平)"},{value:"yAxisLeft",label:"Y轴(左侧垂直)"},{value:"yAxisRight",label:"Y轴(右侧垂直)"}]},showLabel:function(){if("bar"==this.chartType&&"x"==this.axis.axisType.slice(0,1)||"bar"!=this.chartType&&"y"==this.axis.axisType.slice(0,1))return!0}},methods:l(l({},g["mapActions"]("chartSetting",["updateChartItem"])),{},{changeAxis:function(){var t={updateObj:z(this.series),router:this.router+"/"+this.axis.axisType};this.updateChartItem(t)}})},rr=nr,ir=Fe(rr,tr,er,!1,null,null,null),or=ir.exports,ar={name:"ChartSetting",components:{"chart-list":We,"chart-title":Rn,"chart-sub-title":Qn,"chart-cursor":Hn,"chart-legend":$n,"chart-axis":or},props:{chartOptions:{type:Object,default:null},lang:{type:String,default:"cn"}},data:function(){return{currentChartType:"echarts|line|default",titleOption:z(S.title),subTitleOption:z(S.subtitle),cursorOption:z(S.tooltip),legendOption:z(S.legend),axisOption:z(S.axis),showList:!1,setItem:{echarts:{line:{default:"默认折线图"}}},activeName:"data"}},mounted:function(){"ch"!=this.lang?(this.setItem=ze["chartSetting"],console.dir(this.setItem)):this.setItem=Be["chartSetting"]},watch:{chartOptions:{handler:function(t,e){void 0!=t&&t.hasOwnProperty("chartAllType")&&(this.currentChartType=t.chartAllType,this.titleOption=t.defaultOption.title,this.subTitleOption=t.defaultOption.subtitle,this.cursorOption=t.defaultOption.tooltip,this.legendOption=t.defaultOption.legend,this.axisOption=t.defaultOption.axis)}},lang:function(t){this.setItem="ch"!=t?ze["chartSetting"]:Be["chartSetting"]}},computed:l(l({},Object(g["mapState"])("chartSetting",["chartLists","currentChartIndex"])),{},{currentRangeColCheck:{get:function(){return null==this.currentChartIndex?{exits:!1,range:[0,0]}:this.chartLists[this.currentChartIndex].chartOptions.rangeColCheck},set:function(t){this.updateChartItemChartlistOne({key:"rangeColCheck",value:t})}},currentRangeRowCheck:{get:function(){return null==this.currentChartIndex?{exits:!1,range:[0,0]}:this.chartLists[this.currentChartIndex].chartOptions.rangeRowCheck},set:function(t){this.updateChartItemChartlistOne({key:"rangeRowCheck",value:t})}},checkRowDisabled:function(){return null==this.currentChartIndex||!this.chartLists[this.currentChartIndex].chartOptions.chartData||1==this.chartLists[this.currentChartIndex].chartOptions.chartData.length},checkColDisabled:function(){return null==this.currentChartIndex||!this.chartLists[this.currentChartIndex].chartOptions.chartData||1==this.chartLists[this.currentChartIndex].chartOptions.chartData.length},currentRangeConfigCheck:{get:function(){return null!=this.currentChartIndex&&this.chartLists[this.currentChartIndex].chartOptions.rangeConfigCheck},set:function(t){this.updateChartItemChartlistOne({key:"rangeConfigCheck",value:t})}},chart_pro:function(){return this.currentChartType.split("|")[0]},chart_type:function(){return this.currentChartType.split("|")[1]},chart_style:function(){return this.currentChartType.split("|")[2]},chartTypeTxt:function(){var t,e,n;return"echarts"==this.chart_pro?t="echarts":"highcharts"==this.chart_pro&&(t="highcharts"),"line"==this.chart_type?("default"==this.chart_style&&(e=this.setItem.echarts.line.default),"smooth"==this.chart_style&&(e=this.setItem.echarts.line.smooth),"label"==this.chart_style&&(e=this.setItem.echarts.line.label),"doublex"==this.chart_style&&(e="双Y轴折线图"),"linemix"==this.chart_style&&(e="折线柱状混合图"),n="icon-tubiaozhexiantu",[n,t+" - "+e]):"area"==this.chart_type?("default"==this.chart_style&&(e=this.setItem.echarts.area.default),"stack"==this.chart_style&&(e=this.setItem.echarts.area.stack),"stackRatio"==this.chart_style&&(e="带标签的堆叠面积图"),n="icon-fsux_tubiao_duijimianjitu",[n,t+" - "+e]):"column"==this.chart_type?("default"==this.chart_style&&(e=this.setItem.echarts.column.default),"stack"==this.chart_style&&(e=this.setItem.echarts.column.stack),"stackRatio"==this.chart_style&&(e="百分比堆叠柱状图"),"costComposition"==this.chart_style&&(e="费用构成柱状图"),"polarStack"==this.chart_style&&(e="极坐标系下的堆叠柱状图"),"bar3DPunchCard"==this.chart_style&&(e="3D柱状图"),"contain"==this.chart_style&&(e="比例图"),"special"==this.chart_style&&(e="显示百分比图"),"doubleX"==this.chart_style&&(e="双X轴"),n="icon-chart",[n,t+" - "+e]):"bar"==this.chart_type?("default"==this.chart_style&&(e=this.setItem.echarts.bar.default),"stack"==this.chart_style&&(e=this.setItem.echarts.bar.stack),"stackRatio"==this.chart_style&&(e="百分比堆叠条形图"),"compare"==this.chart_style&&(e="条形比较图"),"contain"==this.chart_style&&(e="比例图"),n="icon-fsux_tubiao_duijizhuzhuangtu1",[n,t+" - "+e]):"pie"==this.chart_type?("default"==this.chart_style&&(e=this.setItem.echarts.pie.default),"split"==this.chart_style&&(e=this.setItem.echarts.pie.split),"ring"==this.chart_style&&(e=this.setItem.echarts.pie.ring),"ringnest"==this.chart_style&&(e="环形嵌套图"),"3D"==this.chart_style&&(e="3D饼图"),"rose"==this.chart_style&&("echarts"==this.chart_pro?e="南丁格玫瑰图":"highcharts"==this.chart_pro&&(e="可变宽度的环形图")),n="icon-fsux_tubiao_nandingmeiguitu",[n,t+" - "+e]):"scatter"==this.chart_type?("default"==this.chart_style&&(e="默认散点图"),"label"==this.chart_style&&(e="带标签的散点图"),"zoom"==this.chart_style&&(e="自由缩放散点图"),"matrix"==this.chart_style&&(e="散点图矩阵"),n="icon-fsux_tubiao_qipaotu",[n,t+" - "+e]):"radar"==this.chart_type?("default"==this.chart_style&&(e="默认雷达图"),n="icon-leidatu",[n,t+" - "+e]):"funnel"==this.chart_type?("default"==this.chart_style&&(e="默认漏斗图"),"inverse"==this.chart_style&&(e="逆漏斗图"),n="icon-fsux_tubiao_loudoutu",[n,t+" - "+e]):"gauge"==this.chart_type?("default"==this.chart_style&&(e="仪表盘"),"percent"==this.chart_style&&(e="百分比仪表盘"),"solid"==this.chart_style&&(e="活动图"),n="icon-fsux_tubiao_yibiaopan",[n,t+" - "+e]):"map"==this.chart_type?("china"==this.chart_style?e="中国地图":"province"==this.chart_style?e="省份地图":"cnscatter"==this.chart_style?e="中国地图散点图":"pvscatter"==this.chart_style?e="省份地图散点图":"percent"==this.chart_style&&(e="百分比地图"),n="icon-fsux_tubiao_ditu",[n,t+" - "+e]):"earth"==this.chart_type?[n,t+" - 3D 地球"]:void 0},currentChartDataCache:function(){return null==this.currentChartIndex?null:this.chartLists[this.currentChartIndex].chartOptions.chartDataCache},chartXYSeriesList:function(){if(null!=this.currentChartDataCache){var t=this.chartLists[this.currentChartIndex].chartOptions.chartDataSeriesOrder,e=this.currentChartType.split("|"),n=(e[0],e[1]),r=(e[2],{num:"icon-shuzi",string:"icon-format_icon",date:"icon-date"}),i={fix:[],change:[],option:[]};if(("line"==n||"column"==n||"area"==n||"scatter"==n)&&(null!=this.currentChartDataCache.title&&i.fix.push({title:"x轴",type:r["string"],field:this.currentChartDataCache.title.text}),null!=this.currentChartDataCache.label))for(var o=0;o<this.currentChartDataCache.label.length;o++){var a=t[o];i.change[a]={title:"系列"+(a+1),index:a,type:r[this.currentChartDataCache.series_tpye[o]],field:this.currentChartDataCache.label[o],id:o},i.option.push({field:this.currentChartDataCache.label[o],id:o,index:a})}return i}},currentChartDataSeriesOrder:{get:function(){return null==this.currentChartIndex?{}:this.chartLists[this.currentChartIndex].chartOptions.chartDataSeriesOrder},set:function(t){this.updateChartItemChartlistOne({key:"chartDataSeriesOrder",value:t})}}}),methods:l(l({},Object(g["mapActions"])("chartSetting",["updateChartItemChartlistOne"])),{},{handleClick:function(t){0!=t.index&&(this.showList=!1)},getColRowCheckTxt:function(t){if(t){e="";return e=this.currentRangeRowCheck.range[0]==this.currentRangeRowCheck.range[1]?this.currentRangeRowCheck.range[0]+1:this.currentRangeRowCheck.range[0]+1+"至"+(this.currentRangeRowCheck.range[1]+1),e}var e="";return e=this.currentRangeColCheck.range[0]==this.currentRangeColCheck.range[1]?this.currentRangeColCheck.range[0]+1:this.currentRangeColCheck.range[0]+1+"至"+(this.currentRangeColCheck.range[1]+1),e},checkBoxChange:function(){var t=this.chartLists[this.currentChartIndex].chartOptions.chart_id,e=this.currentRangeRowCheck,n=this.currentRangeColCheck,r=this.currentRangeConfigCheck;De(t,e,n,r)},handleSeriseCommand:function(t){var e=t.series,n=t.option,r=z(this.currentChartDataSeriesOrder),i=n.id,o=e.index,a=e.id,u=r[i];r[i]=o,r[a]=u,this.currentChartDataSeriesOrder=r,je(this.chartLists[this.currentChartIndex].chartOptions,this.currentChartDataSeriesOrder)}})},ur=ar,sr=(n("a8f2"),Fe(ur,c,f,!1,null,null,null)),lr=sr.exports,cr=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"chartRender"})},fr=[],hr={name:"ChartRender",props:{active:{type:Boolean,default:!1},chart_id:{type:String,default:""},chartOptions:{type:Object,default:null}},watch:{chartOptions:{handler:function(t){t&&this.renderCharts(t)},immediate:!0,deep:!0}},mounted:function(){var t=this;this.$nextTick((function(){var e=t.chartOptions;t.renderCharts(e)}))},methods:{renderCharts:function(t){var e={chart_id:this.chart_id,chartOptions:t};Ce(e,this.$el)}}},pr=hr,dr=Fe(pr,cr,fr,!1,null,"69e5af98",null),vr=dr.exports,gr=(n("a434"),n("164e")),br=n.n(gr),yr=we.state.chartSetting;function mr(t,e){var n=document.createElement("div");n.id="chartmix",t.appendChild(n),new Dt.a({el:"#chartmix",store:we,data:function(){return{lang:e}},computed:{chartOptions:function(){return yr.currentChartIndex?yr.chartLists[yr.currentChartIndex].chartOptions:null}},template:'<ChartSetting :lang="lang" :chartOptions="chartOptions"></ChartSetting>'})}function xr(t,e,n,r,i){var o=n||F("chart");t.id=o,P.defaultOption.series=[];var a=10*Math.random();P.chartAllType=a>5?"echarts|pie|default":"echarts|line|default";var u=wr(P,o,P.chartAllType,e,r,i),s=document.createElement("div");s.id="render"+o,t.appendChild(s);var l={chart_id:o,active:!0,chartOptions:z(u)};return yr.currentChartIndex=yr.chartLists.length,yr.chartLists.push(l),console.dir(l),new Dt.a({el:"#render"+o,store:we,data:function(){return{chart_Id:o}},computed:{options:function(){var t=this,e=yr.chartLists.find((function(e){return e.chart_id==t.chart_Id}));return e?e.chartOptions:null},active:function(){var t=this,e=yr.chartLists.find((function(e){return e.chart_id==t.chart_Id}));return e?e.active:null}},template:'<ChartRender :chartOptions="options" :chart_id="chart_Id" :active="active"></ChartRneder>'}),{render:t,chart_Id:o,chart_json:l}}function wr(t,e,n,r,i,o,a,u,s,l,c){var f={},h=n.split("|"),p=h[0],d=h[1],v=h[2];f.chart_id=e,f.chartAllType=n,f.chartPro=p,f.chartType=d,f.chartStyle=v,f.height=u,f.width=s,f.left=l,f.top=c;var g=t.defaultOption;f.chartData=r,f.rangeArray=i,f.rangeTxt=o;var b=K(r),y=b[0],m=b[1],x=!1;f.rangeColCheck=m,f.rangeRowCheck=y,f.rangeConfigCheck=x;var w=_(r,i,m,y);f.rangeSplitArray=w;var A=tt(r,w,p,d,v);f.chartDataCache=A;var S=et(A.series[0].length);f.chartDataSeriesOrder=S,f.chartTheme=a;var C=nt(g,A,S,p,d,v);return f.defaultOption=C,f}function Ar(t){var e=yr.chartLists.findIndex((function(e){return e.chart_id==t}));return yr.currentChartIndex=e,yr.chartLists[yr.currentChartIndex].chartOptions}function Sr(t){var e=yr.chartLists.findIndex((function(e){return e.chart_id==t})),n=yr.chartLists[e].chartOptions.chartAllType,r=n.split("|"),i=r[0];r[1],r[2];"echarts"==i&&br.a.getInstanceById(v()("#"+t).attr("_echarts_instance_")).resize()}function Cr(t){var e=yr.chartLists.findIndex((function(e){return e.chart_id==t}));if(yr.chartLists.splice(e,1),yr.currentChartIndex--,yr.currentChartIndex<0){if(yr.chartLists[0])return void(yr.currentChartIndex=0);yr.currentChartIndex=null}}function kr(t){var e=yr.chartLists.findIndex((function(e){return e.chart_id==t}));return yr.chartLists[e].chartOptions}function Or(t){yr.chartLists.push(t)}var Tr=[lr,vr],Er=function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t.componentInstalled||(Tr.map((function(t){e.component(t.name,t)})),t.componentInstalled=!0),t.storeRegistered||(n.store?(n.store.registerModule("chartSetting",me),t.storeRegistered=!0):console.log("Please provide a store!!"))};"undefined"!==typeof window&&window.Vue&&Er(window.Vue);var Ir=l(l({install:Er},Tr),{},{initChart:mr,createChart:xr,highlightChart:Ar,deleteChart:Cr,resizeChart:Sr,changeChartRange:Le,changeChartCellData:Ne,renderChart:Ce,getChartJson:kr,insertToStore:Or});e["default"]=Ir},fb6a:function(t,e,n){"use strict";var r=n("23e7"),i=n("861d"),o=n("e8b5"),a=n("23cb"),u=n("50c4"),s=n("fc6a"),l=n("8418"),c=n("b622"),f=n("1dde"),h=n("ae40"),p=f("slice"),d=h("slice",{ACCESSORS:!0,0:0,1:2}),v=c("species"),g=[].slice,b=Math.max;r({target:"Array",proto:!0,forced:!p||!d},{slice:function(t,e){var n,r,c,f=s(this),h=u(f.length),p=a(t,h),d=a(void 0===e?h:e,h);if(o(f)&&(n=f.constructor,"function"!=typeof n||n!==Array&&!o(n.prototype)?i(n)&&(n=n[v],null===n&&(n=void 0)):n=void 0,n===Array||void 0===n))return g.call(f,p,d);for(r=new(void 0===n?Array:n)(b(d-p,0)),c=0;p<d;p++,c++)p in f&&l(r,c,f[p]);return r.length=c,r}})},fba5:function(t,e,n){var r=n("cb5a");function i(t){return r(this.__data__,t)>-1}t.exports=i},fc6a:function(t,e,n){var r=n("44ad"),i=n("1d80");t.exports=function(t){return r(i(t))}},fdbc:function(t,e){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},fdbf:function(t,e,n){var r=n("4930");t.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator}})})); -//# sourceMappingURL=chartmix.umd.min.js.map \ No newline at end of file +//# sourceMappingURL=chartmix.umd.min.js.map diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/fonts/fontawesome-webfont.svg b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/fonts/fontawesome-webfont.svg index 855c845e5..52c077335 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/fonts/fontawesome-webfont.svg +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/fonts/fontawesome-webfont.svg @@ -8,7 +8,7 @@ Copyright Dave Gandy 2016. All rights reserved. </metadata> <defs> <font id="FontAwesome" horiz-adv-x="1536" > - <font-face + <font-face font-family="FontAwesome" font-weight="400" font-stretch="normal" @@ -21,435 +21,435 @@ Copyright Dave Gandy 2016. All rights reserved. underline-position="0" unicode-range="U+0020-F500" /> -<missing-glyph horiz-adv-x="896" +<missing-glyph horiz-adv-x="896" d="M224 112h448v1312h-448v-1312zM112 0v1536h672v-1536h-672z" /> - <glyph glyph-name=".notdef" horiz-adv-x="896" + <glyph glyph-name=".notdef" horiz-adv-x="896" d="M224 112h448v1312h-448v-1312zM112 0v1536h672v-1536h-672z" /> - <glyph glyph-name=".null" horiz-adv-x="0" + <glyph glyph-name=".null" horiz-adv-x="0" /> - <glyph glyph-name="nonmarkingreturn" horiz-adv-x="597" + <glyph glyph-name="nonmarkingreturn" horiz-adv-x="597" /> - <glyph glyph-name="space" unicode=" " horiz-adv-x="448" + <glyph glyph-name="space" unicode=" " horiz-adv-x="448" /> - <glyph glyph-name="dieresis" unicode="¨" horiz-adv-x="1792" + <glyph glyph-name="dieresis" unicode="¨" horiz-adv-x="1792" /> - <glyph glyph-name="copyright" unicode="©" horiz-adv-x="1792" + <glyph glyph-name="copyright" unicode="©" horiz-adv-x="1792" /> - <glyph glyph-name="registered" unicode="®" horiz-adv-x="1792" + <glyph glyph-name="registered" unicode="®" horiz-adv-x="1792" /> - <glyph glyph-name="acute" unicode="´" horiz-adv-x="1792" + <glyph glyph-name="acute" unicode="´" horiz-adv-x="1792" /> - <glyph glyph-name="AE" unicode="Æ" horiz-adv-x="1792" + <glyph glyph-name="AE" unicode="Æ" horiz-adv-x="1792" /> - <glyph glyph-name="Oslash" unicode="Ø" horiz-adv-x="1792" + <glyph glyph-name="Oslash" unicode="Ø" horiz-adv-x="1792" /> - <glyph glyph-name="trademark" unicode="™" horiz-adv-x="1792" + <glyph glyph-name="trademark" unicode="™" horiz-adv-x="1792" /> - <glyph glyph-name="infinity" unicode="∞" horiz-adv-x="1792" + <glyph glyph-name="infinity" unicode="∞" horiz-adv-x="1792" /> - <glyph glyph-name="notequal" unicode="≠" horiz-adv-x="1792" + <glyph glyph-name="notequal" unicode="≠" horiz-adv-x="1792" /> - <glyph glyph-name="glass" unicode="" horiz-adv-x="1792" + <glyph glyph-name="glass" unicode="" horiz-adv-x="1792" d="M1699 1350q0 -35 -43 -78l-632 -632v-768h320q26 0 45 -19t19 -45t-19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45t45 19h320v768l-632 632q-43 43 -43 78q0 23 18 36.5t38 17.5t43 4h1408q23 0 43 -4t38 -17.5t18 -36.5z" /> - <glyph glyph-name="music" unicode="" + <glyph glyph-name="music" unicode="" d="M1536 1312v-1120q0 -50 -34 -89t-86 -60.5t-103.5 -32t-96.5 -10.5t-96.5 10.5t-103.5 32t-86 60.5t-34 89t34 89t86 60.5t103.5 32t96.5 10.5q105 0 192 -39v537l-768 -237v-709q0 -50 -34 -89t-86 -60.5t-103.5 -32t-96.5 -10.5t-96.5 10.5t-103.5 32t-86 60.5t-34 89 t34 89t86 60.5t103.5 32t96.5 10.5q105 0 192 -39v967q0 31 19 56.5t49 35.5l832 256q12 4 28 4q40 0 68 -28t28 -68z" /> - <glyph glyph-name="search" unicode="" horiz-adv-x="1664" + <glyph glyph-name="search" unicode="" horiz-adv-x="1664" d="M1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1664 -128q0 -52 -38 -90t-90 -38q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5 t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z" /> - <glyph glyph-name="envelope" unicode="" horiz-adv-x="1792" + <glyph glyph-name="envelope" unicode="" horiz-adv-x="1792" d="M1664 32v768q-32 -36 -69 -66q-268 -206 -426 -338q-51 -43 -83 -67t-86.5 -48.5t-102.5 -24.5h-1h-1q-48 0 -102.5 24.5t-86.5 48.5t-83 67q-158 132 -426 338q-37 30 -69 66v-768q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1664 1083v11v13.5t-0.5 13 t-3 12.5t-5.5 9t-9 7.5t-14 2.5h-1472q-13 0 -22.5 -9.5t-9.5 -22.5q0 -168 147 -284q193 -152 401 -317q6 -5 35 -29.5t46 -37.5t44.5 -31.5t50.5 -27.5t43 -9h1h1q20 0 43 9t50.5 27.5t44.5 31.5t46 37.5t35 29.5q208 165 401 317q54 43 100.5 115.5t46.5 131.5z M1792 1120v-1088q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" /> - <glyph glyph-name="heart" unicode="" horiz-adv-x="1792" + <glyph glyph-name="heart" unicode="" horiz-adv-x="1792" d="M896 -128q-26 0 -44 18l-624 602q-10 8 -27.5 26t-55.5 65.5t-68 97.5t-53.5 121t-23.5 138q0 220 127 344t351 124q62 0 126.5 -21.5t120 -58t95.5 -68.5t76 -68q36 36 76 68t95.5 68.5t120 58t126.5 21.5q224 0 351 -124t127 -344q0 -221 -229 -450l-623 -600 q-18 -18 -44 -18z" /> - <glyph glyph-name="star" unicode="" horiz-adv-x="1664" + <glyph glyph-name="star" unicode="" horiz-adv-x="1664" d="M1664 889q0 -22 -26 -48l-363 -354l86 -500q1 -7 1 -20q0 -21 -10.5 -35.5t-30.5 -14.5q-19 0 -40 12l-449 236l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41t49 -41l225 -455 l502 -73q56 -9 56 -46z" /> - <glyph glyph-name="star_empty" unicode="" horiz-adv-x="1664" + <glyph glyph-name="star_empty" unicode="" horiz-adv-x="1664" d="M1137 532l306 297l-422 62l-189 382l-189 -382l-422 -62l306 -297l-73 -421l378 199l377 -199zM1664 889q0 -22 -26 -48l-363 -354l86 -500q1 -7 1 -20q0 -50 -41 -50q-19 0 -40 12l-449 236l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500 l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41t49 -41l225 -455l502 -73q56 -9 56 -46z" /> - <glyph glyph-name="user" unicode="" horiz-adv-x="1280" + <glyph glyph-name="user" unicode="" horiz-adv-x="1280" d="M1280 137q0 -109 -62.5 -187t-150.5 -78h-854q-88 0 -150.5 78t-62.5 187q0 85 8.5 160.5t31.5 152t58.5 131t94 89t134.5 34.5q131 -128 313 -128t313 128q76 0 134.5 -34.5t94 -89t58.5 -131t31.5 -152t8.5 -160.5zM1024 1024q0 -159 -112.5 -271.5t-271.5 -112.5 t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z" /> - <glyph glyph-name="film" unicode="" horiz-adv-x="1920" + <glyph glyph-name="film" unicode="" horiz-adv-x="1920" d="M384 -64v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM384 320v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM384 704v128q0 26 -19 45t-45 19h-128 q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1408 -64v512q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-512q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM384 1088v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45 t45 -19h128q26 0 45 19t19 45zM1792 -64v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1408 704v512q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-512q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM1792 320v128 q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1792 704v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1792 1088v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19 t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1920 1248v-1344q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1344q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" /> - <glyph glyph-name="th_large" unicode="" horiz-adv-x="1664" + <glyph glyph-name="th_large" unicode="" horiz-adv-x="1664" d="M768 512v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM768 1280v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM1664 512v-384q0 -52 -38 -90t-90 -38 h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM1664 1280v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90z" /> - <glyph glyph-name="th" unicode="" horiz-adv-x="1792" + <glyph glyph-name="th" unicode="" horiz-adv-x="1792" d="M512 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 288v-192q0 -40 -28 -68t-68 -28h-320 q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28 h320q40 0 68 -28t28 -68zM1792 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 800v-192 q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68z" /> - <glyph glyph-name="th_list" unicode="" horiz-adv-x="1792" + <glyph glyph-name="th_list" unicode="" horiz-adv-x="1792" d="M512 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 288v-192q0 -40 -28 -68t-68 -28h-960 q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h960q40 0 68 -28t28 -68zM512 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 800v-192q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v192q0 40 28 68t68 28 h960q40 0 68 -28t28 -68zM1792 1312v-192q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h960q40 0 68 -28t28 -68z" /> - <glyph glyph-name="ok" unicode="" horiz-adv-x="1792" + <glyph glyph-name="ok" unicode="" horiz-adv-x="1792" d="M1671 970q0 -40 -28 -68l-724 -724l-136 -136q-28 -28 -68 -28t-68 28l-136 136l-362 362q-28 28 -28 68t28 68l136 136q28 28 68 28t68 -28l294 -295l656 657q28 28 68 28t68 -28l136 -136q28 -28 28 -68z" /> - <glyph glyph-name="remove" unicode="" horiz-adv-x="1408" + <glyph glyph-name="remove" unicode="" horiz-adv-x="1408" d="M1298 214q0 -40 -28 -68l-136 -136q-28 -28 -68 -28t-68 28l-294 294l-294 -294q-28 -28 -68 -28t-68 28l-136 136q-28 28 -28 68t28 68l294 294l-294 294q-28 28 -28 68t28 68l136 136q28 28 68 28t68 -28l294 -294l294 294q28 28 68 28t68 -28l136 -136q28 -28 28 -68 t-28 -68l-294 -294l294 -294q28 -28 28 -68z" /> - <glyph glyph-name="zoom_in" unicode="" horiz-adv-x="1664" + <glyph glyph-name="zoom_in" unicode="" horiz-adv-x="1664" d="M1024 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-224v-224q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v224h-224q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h224v224q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5v-224h224 q13 0 22.5 -9.5t9.5 -22.5zM1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1664 -128q0 -53 -37.5 -90.5t-90.5 -37.5q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5 t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z" /> - <glyph glyph-name="zoom_out" unicode="" horiz-adv-x="1664" + <glyph glyph-name="zoom_out" unicode="" horiz-adv-x="1664" d="M1024 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-576q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h576q13 0 22.5 -9.5t9.5 -22.5zM1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5z M1664 -128q0 -53 -37.5 -90.5t-90.5 -37.5q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z " /> - <glyph glyph-name="off" unicode="" + <glyph glyph-name="off" unicode="" d="M1536 640q0 -156 -61 -298t-164 -245t-245 -164t-298 -61t-298 61t-245 164t-164 245t-61 298q0 182 80.5 343t226.5 270q43 32 95.5 25t83.5 -50q32 -42 24.5 -94.5t-49.5 -84.5q-98 -74 -151.5 -181t-53.5 -228q0 -104 40.5 -198.5t109.5 -163.5t163.5 -109.5 t198.5 -40.5t198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5q0 121 -53.5 228t-151.5 181q-42 32 -49.5 84.5t24.5 94.5q31 43 84 50t95 -25q146 -109 226.5 -270t80.5 -343zM896 1408v-640q0 -52 -38 -90t-90 -38t-90 38t-38 90v640q0 52 38 90t90 38t90 -38t38 -90z" /> - <glyph glyph-name="signal" unicode="" horiz-adv-x="1792" + <glyph glyph-name="signal" unicode="" horiz-adv-x="1792" d="M256 96v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM640 224v-320q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v320q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1024 480v-576q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23 v576q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1408 864v-960q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v960q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 1376v-1472q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v1472q0 14 9 23t23 9h192q14 0 23 -9t9 -23z" /> - <glyph glyph-name="cog" unicode="" + <glyph glyph-name="cog" unicode="" d="M1024 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1536 749v-222q0 -12 -8 -23t-20 -13l-185 -28q-19 -54 -39 -91q35 -50 107 -138q10 -12 10 -25t-9 -23q-27 -37 -99 -108t-94 -71q-12 0 -26 9l-138 108q-44 -23 -91 -38 q-16 -136 -29 -186q-7 -28 -36 -28h-222q-14 0 -24.5 8.5t-11.5 21.5l-28 184q-49 16 -90 37l-141 -107q-10 -9 -25 -9q-14 0 -25 11q-126 114 -165 168q-7 10 -7 23q0 12 8 23q15 21 51 66.5t54 70.5q-27 50 -41 99l-183 27q-13 2 -21 12.5t-8 23.5v222q0 12 8 23t19 13 l186 28q14 46 39 92q-40 57 -107 138q-10 12 -10 24q0 10 9 23q26 36 98.5 107.5t94.5 71.5q13 0 26 -10l138 -107q44 23 91 38q16 136 29 186q7 28 36 28h222q14 0 24.5 -8.5t11.5 -21.5l28 -184q49 -16 90 -37l142 107q9 9 24 9q13 0 25 -10q129 -119 165 -170q7 -8 7 -22 q0 -12 -8 -23q-15 -21 -51 -66.5t-54 -70.5q26 -50 41 -98l183 -28q13 -2 21 -12.5t8 -23.5z" /> - <glyph glyph-name="trash" unicode="" horiz-adv-x="1408" + <glyph glyph-name="trash" unicode="" horiz-adv-x="1408" d="M512 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM768 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1024 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576 q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1152 76v948h-896v-948q0 -22 7 -40.5t14.5 -27t10.5 -8.5h832q3 0 10.5 8.5t14.5 27t7 40.5zM480 1152h448l-48 117q-7 9 -17 11h-317q-10 -2 -17 -11zM1408 1120v-64q0 -14 -9 -23t-23 -9h-96v-948q0 -83 -47 -143.5t-113 -60.5h-832 q-66 0 -113 58.5t-47 141.5v952h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h309l70 167q15 37 54 63t79 26h320q40 0 79 -26t54 -63l70 -167h309q14 0 23 -9t9 -23z" /> - <glyph glyph-name="home" unicode="" horiz-adv-x="1664" + <glyph glyph-name="home" unicode="" horiz-adv-x="1664" d="M1408 544v-480q0 -26 -19 -45t-45 -19h-384v384h-256v-384h-384q-26 0 -45 19t-19 45v480q0 1 0.5 3t0.5 3l575 474l575 -474q1 -2 1 -6zM1631 613l-62 -74q-8 -9 -21 -11h-3q-13 0 -21 7l-692 577l-692 -577q-12 -8 -24 -7q-13 2 -21 11l-62 74q-8 10 -7 23.5t11 21.5 l719 599q32 26 76 26t76 -26l244 -204v195q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-408l219 -182q10 -8 11 -21.5t-7 -23.5z" /> - <glyph glyph-name="file_alt" unicode="" + <glyph glyph-name="file_alt" unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z " /> - <glyph glyph-name="time" unicode="" + <glyph glyph-name="time" unicode="" d="M896 992v-448q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="road" unicode="" horiz-adv-x="1920" + <glyph glyph-name="road" unicode="" horiz-adv-x="1920" d="M1111 540v4l-24 320q-1 13 -11 22.5t-23 9.5h-186q-13 0 -23 -9.5t-11 -22.5l-24 -320v-4q-1 -12 8 -20t21 -8h244q12 0 21 8t8 20zM1870 73q0 -73 -46 -73h-704q13 0 22 9.5t8 22.5l-20 256q-1 13 -11 22.5t-23 9.5h-272q-13 0 -23 -9.5t-11 -22.5l-20 -256 q-1 -13 8 -22.5t22 -9.5h-704q-46 0 -46 73q0 54 26 116l417 1044q8 19 26 33t38 14h339q-13 0 -23 -9.5t-11 -22.5l-15 -192q-1 -14 8 -23t22 -9h166q13 0 22 9t8 23l-15 192q-1 13 -11 22.5t-23 9.5h339q20 0 38 -14t26 -33l417 -1044q26 -62 26 -116z" /> - <glyph glyph-name="download_alt" unicode="" horiz-adv-x="1664" + <glyph glyph-name="download_alt" unicode="" horiz-adv-x="1664" d="M1280 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1536 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 416v-320q0 -40 -28 -68t-68 -28h-1472q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h465l135 -136 q58 -56 136 -56t136 56l136 136h464q40 0 68 -28t28 -68zM1339 985q17 -41 -14 -70l-448 -448q-18 -19 -45 -19t-45 19l-448 448q-31 29 -14 70q17 39 59 39h256v448q0 26 19 45t45 19h256q26 0 45 -19t19 -45v-448h256q42 0 59 -39z" /> - <glyph glyph-name="download" unicode="" + <glyph glyph-name="download" unicode="" d="M1120 608q0 -12 -10 -24l-319 -319q-11 -9 -23 -9t-23 9l-320 320q-15 16 -7 35q8 20 30 20h192v352q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-352h192q14 0 23 -9t9 -23zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273 t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="upload" unicode="" + <glyph glyph-name="upload" unicode="" d="M1118 660q-8 -20 -30 -20h-192v-352q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v352h-192q-14 0 -23 9t-9 23q0 12 10 24l319 319q11 9 23 9t23 -9l320 -320q15 -16 7 -35zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198 t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="inbox" unicode="" + <glyph glyph-name="inbox" unicode="" d="M1023 576h316q-1 3 -2.5 8.5t-2.5 7.5l-212 496h-708l-212 -496q-1 -3 -2.5 -8.5t-2.5 -7.5h316l95 -192h320zM1536 546v-482q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v482q0 62 25 123l238 552q10 25 36.5 42t52.5 17h832q26 0 52.5 -17t36.5 -42l238 -552 q25 -61 25 -123z" /> - <glyph glyph-name="play_circle" unicode="" + <glyph glyph-name="play_circle" unicode="" d="M1184 640q0 -37 -32 -55l-544 -320q-15 -9 -32 -9q-16 0 -32 8q-32 19 -32 56v640q0 37 32 56q33 18 64 -1l544 -320q32 -18 32 -55zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="repeat" unicode="" + <glyph glyph-name="repeat" unicode="" d="M1536 1280v-448q0 -26 -19 -45t-45 -19h-448q-42 0 -59 40q-17 39 14 69l138 138q-148 137 -349 137q-104 0 -198.5 -40.5t-163.5 -109.5t-109.5 -163.5t-40.5 -198.5t40.5 -198.5t109.5 -163.5t163.5 -109.5t198.5 -40.5q119 0 225 52t179 147q7 10 23 12q15 0 25 -9 l137 -138q9 -8 9.5 -20.5t-7.5 -22.5q-109 -132 -264 -204.5t-327 -72.5q-156 0 -298 61t-245 164t-164 245t-61 298t61 298t164 245t245 164t298 61q147 0 284.5 -55.5t244.5 -156.5l130 129q29 31 70 14q39 -17 39 -59z" /> - <glyph glyph-name="refresh" unicode="" + <glyph glyph-name="refresh" unicode="" d="M1511 480q0 -5 -1 -7q-64 -268 -268 -434.5t-478 -166.5q-146 0 -282.5 55t-243.5 157l-129 -129q-19 -19 -45 -19t-45 19t-19 45v448q0 26 19 45t45 19h448q26 0 45 -19t19 -45t-19 -45l-137 -137q71 -66 161 -102t187 -36q134 0 250 65t186 179q11 17 53 117 q8 23 30 23h192q13 0 22.5 -9.5t9.5 -22.5zM1536 1280v-448q0 -26 -19 -45t-45 -19h-448q-26 0 -45 19t-19 45t19 45l138 138q-148 137 -349 137q-134 0 -250 -65t-186 -179q-11 -17 -53 -117q-8 -23 -30 -23h-199q-13 0 -22.5 9.5t-9.5 22.5v7q65 268 270 434.5t480 166.5 q146 0 284 -55.5t245 -156.5l130 129q19 19 45 19t45 -19t19 -45z" /> - <glyph glyph-name="list_alt" unicode="" horiz-adv-x="1792" + <glyph glyph-name="list_alt" unicode="" horiz-adv-x="1792" d="M384 352v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 608v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M384 864v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1536 352v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5t9.5 -22.5z M1536 608v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5t9.5 -22.5zM1536 864v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5 t9.5 -22.5zM1664 160v832q0 13 -9.5 22.5t-22.5 9.5h-1472q-13 0 -22.5 -9.5t-9.5 -22.5v-832q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1792 1248v-1088q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1472q66 0 113 -47 t47 -113z" /> - <glyph glyph-name="lock" unicode="" horiz-adv-x="1152" + <glyph glyph-name="lock" unicode="" horiz-adv-x="1152" d="M320 768h512v192q0 106 -75 181t-181 75t-181 -75t-75 -181v-192zM1152 672v-576q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v576q0 40 28 68t68 28h32v192q0 184 132 316t316 132t316 -132t132 -316v-192h32q40 0 68 -28t28 -68z" /> - <glyph glyph-name="flag" unicode="" horiz-adv-x="1792" + <glyph glyph-name="flag" unicode="" horiz-adv-x="1792" d="M320 1280q0 -72 -64 -110v-1266q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v1266q-64 38 -64 110q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1792 1216v-763q0 -25 -12.5 -38.5t-39.5 -27.5q-215 -116 -369 -116q-61 0 -123.5 22t-108.5 48 t-115.5 48t-142.5 22q-192 0 -464 -146q-17 -9 -33 -9q-26 0 -45 19t-19 45v742q0 32 31 55q21 14 79 43q236 120 421 120q107 0 200 -29t219 -88q38 -19 88 -19q54 0 117.5 21t110 47t88 47t54.5 21q26 0 45 -19t19 -45z" /> - <glyph glyph-name="headphones" unicode="" horiz-adv-x="1664" + <glyph glyph-name="headphones" unicode="" horiz-adv-x="1664" d="M1664 650q0 -166 -60 -314l-20 -49l-185 -33q-22 -83 -90.5 -136.5t-156.5 -53.5v-32q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-32q71 0 130 -35.5t93 -95.5l68 12q29 95 29 193q0 148 -88 279t-236.5 209t-315.5 78 t-315.5 -78t-236.5 -209t-88 -279q0 -98 29 -193l68 -12q34 60 93 95.5t130 35.5v32q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v32q-88 0 -156.5 53.5t-90.5 136.5l-185 33l-20 49q-60 148 -60 314q0 151 67 291t179 242.5 t266 163.5t320 61t320 -61t266 -163.5t179 -242.5t67 -291z" /> - <glyph glyph-name="volume_off" unicode="" horiz-adv-x="768" + <glyph glyph-name="volume_off" unicode="" horiz-adv-x="768" d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45z" /> - <glyph glyph-name="volume_down" unicode="" horiz-adv-x="1152" + <glyph glyph-name="volume_down" unicode="" horiz-adv-x="1152" d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45zM1152 640q0 -76 -42.5 -141.5t-112.5 -93.5q-10 -5 -25 -5q-26 0 -45 18.5t-19 45.5q0 21 12 35.5t29 25t34 23t29 36 t12 56.5t-12 56.5t-29 36t-34 23t-29 25t-12 35.5q0 27 19 45.5t45 18.5q15 0 25 -5q70 -27 112.5 -93t42.5 -142z" /> - <glyph glyph-name="volume_up" unicode="" horiz-adv-x="1664" + <glyph glyph-name="volume_up" unicode="" horiz-adv-x="1664" d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45zM1152 640q0 -76 -42.5 -141.5t-112.5 -93.5q-10 -5 -25 -5q-26 0 -45 18.5t-19 45.5q0 21 12 35.5t29 25t34 23t29 36 t12 56.5t-12 56.5t-29 36t-34 23t-29 25t-12 35.5q0 27 19 45.5t45 18.5q15 0 25 -5q70 -27 112.5 -93t42.5 -142zM1408 640q0 -153 -85 -282.5t-225 -188.5q-13 -5 -25 -5q-27 0 -46 19t-19 45q0 39 39 59q56 29 76 44q74 54 115.5 135.5t41.5 173.5t-41.5 173.5 t-115.5 135.5q-20 15 -76 44q-39 20 -39 59q0 26 19 45t45 19q13 0 26 -5q140 -59 225 -188.5t85 -282.5zM1664 640q0 -230 -127 -422.5t-338 -283.5q-13 -5 -26 -5q-26 0 -45 19t-19 45q0 36 39 59q7 4 22.5 10.5t22.5 10.5q46 25 82 51q123 91 192 227t69 289t-69 289 t-192 227q-36 26 -82 51q-7 4 -22.5 10.5t-22.5 10.5q-39 23 -39 59q0 26 19 45t45 19q13 0 26 -5q211 -91 338 -283.5t127 -422.5z" /> - <glyph glyph-name="qrcode" unicode="" horiz-adv-x="1408" + <glyph glyph-name="qrcode" unicode="" horiz-adv-x="1408" d="M384 384v-128h-128v128h128zM384 1152v-128h-128v128h128zM1152 1152v-128h-128v128h128zM128 129h384v383h-384v-383zM128 896h384v384h-384v-384zM896 896h384v384h-384v-384zM640 640v-640h-640v640h640zM1152 128v-128h-128v128h128zM1408 128v-128h-128v128h128z M1408 640v-384h-384v128h-128v-384h-128v640h384v-128h128v128h128zM640 1408v-640h-640v640h640zM1408 1408v-640h-640v640h640z" /> - <glyph glyph-name="barcode" unicode="" horiz-adv-x="1792" + <glyph glyph-name="barcode" unicode="" horiz-adv-x="1792" d="M63 0h-63v1408h63v-1408zM126 1h-32v1407h32v-1407zM220 1h-31v1407h31v-1407zM377 1h-31v1407h31v-1407zM534 1h-62v1407h62v-1407zM660 1h-31v1407h31v-1407zM723 1h-31v1407h31v-1407zM786 1h-31v1407h31v-1407zM943 1h-63v1407h63v-1407zM1100 1h-63v1407h63v-1407z M1226 1h-63v1407h63v-1407zM1352 1h-63v1407h63v-1407zM1446 1h-63v1407h63v-1407zM1635 1h-94v1407h94v-1407zM1698 1h-32v1407h32v-1407zM1792 0h-63v1408h63v-1408z" /> - <glyph glyph-name="tag" unicode="" + <glyph glyph-name="tag" unicode="" d="M448 1088q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1515 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-53 0 -90 37l-715 716q-38 37 -64.5 101t-26.5 117v416q0 52 38 90t90 38h416q53 0 117 -26.5t102 -64.5 l715 -714q37 -39 37 -91z" /> - <glyph glyph-name="tags" unicode="" horiz-adv-x="1920" + <glyph glyph-name="tags" unicode="" horiz-adv-x="1920" d="M448 1088q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1515 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-53 0 -90 37l-715 716q-38 37 -64.5 101t-26.5 117v416q0 52 38 90t90 38h416q53 0 117 -26.5t102 -64.5 l715 -714q37 -39 37 -91zM1899 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-36 0 -59 14t-53 45l470 470q37 37 37 90q0 52 -37 91l-715 714q-38 38 -102 64.5t-117 26.5h224q53 0 117 -26.5t102 -64.5l715 -714q37 -39 37 -91z" /> - <glyph glyph-name="book" unicode="" horiz-adv-x="1664" + <glyph glyph-name="book" unicode="" horiz-adv-x="1664" d="M1639 1058q40 -57 18 -129l-275 -906q-19 -64 -76.5 -107.5t-122.5 -43.5h-923q-77 0 -148.5 53.5t-99.5 131.5q-24 67 -2 127q0 4 3 27t4 37q1 8 -3 21.5t-3 19.5q2 11 8 21t16.5 23.5t16.5 23.5q23 38 45 91.5t30 91.5q3 10 0.5 30t-0.5 28q3 11 17 28t17 23 q21 36 42 92t25 90q1 9 -2.5 32t0.5 28q4 13 22 30.5t22 22.5q19 26 42.5 84.5t27.5 96.5q1 8 -3 25.5t-2 26.5q2 8 9 18t18 23t17 21q8 12 16.5 30.5t15 35t16 36t19.5 32t26.5 23.5t36 11.5t47.5 -5.5l-1 -3q38 9 51 9h761q74 0 114 -56t18 -130l-274 -906 q-36 -119 -71.5 -153.5t-128.5 -34.5h-869q-27 0 -38 -15q-11 -16 -1 -43q24 -70 144 -70h923q29 0 56 15.5t35 41.5l300 987q7 22 5 57q38 -15 59 -43zM575 1056q-4 -13 2 -22.5t20 -9.5h608q13 0 25.5 9.5t16.5 22.5l21 64q4 13 -2 22.5t-20 9.5h-608q-13 0 -25.5 -9.5 t-16.5 -22.5zM492 800q-4 -13 2 -22.5t20 -9.5h608q13 0 25.5 9.5t16.5 22.5l21 64q4 13 -2 22.5t-20 9.5h-608q-13 0 -25.5 -9.5t-16.5 -22.5z" /> - <glyph glyph-name="bookmark" unicode="" horiz-adv-x="1280" + <glyph glyph-name="bookmark" unicode="" horiz-adv-x="1280" d="M1164 1408q23 0 44 -9q33 -13 52.5 -41t19.5 -62v-1289q0 -34 -19.5 -62t-52.5 -41q-19 -8 -44 -8q-48 0 -83 32l-441 424l-441 -424q-36 -33 -83 -33q-23 0 -44 9q-33 13 -52.5 41t-19.5 62v1289q0 34 19.5 62t52.5 41q21 9 44 9h1048z" /> - <glyph glyph-name="print" unicode="" horiz-adv-x="1664" + <glyph glyph-name="print" unicode="" horiz-adv-x="1664" d="M384 0h896v256h-896v-256zM384 640h896v384h-160q-40 0 -68 28t-28 68v160h-640v-640zM1536 576q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 576v-416q0 -13 -9.5 -22.5t-22.5 -9.5h-224v-160q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68 v160h-224q-13 0 -22.5 9.5t-9.5 22.5v416q0 79 56.5 135.5t135.5 56.5h64v544q0 40 28 68t68 28h672q40 0 88 -20t76 -48l152 -152q28 -28 48 -76t20 -88v-256h64q79 0 135.5 -56.5t56.5 -135.5z" /> - <glyph glyph-name="camera" unicode="" horiz-adv-x="1920" + <glyph glyph-name="camera" unicode="" horiz-adv-x="1920" d="M960 864q119 0 203.5 -84.5t84.5 -203.5t-84.5 -203.5t-203.5 -84.5t-203.5 84.5t-84.5 203.5t84.5 203.5t203.5 84.5zM1664 1280q106 0 181 -75t75 -181v-896q0 -106 -75 -181t-181 -75h-1408q-106 0 -181 75t-75 181v896q0 106 75 181t181 75h224l51 136 q19 49 69.5 84.5t103.5 35.5h512q53 0 103.5 -35.5t69.5 -84.5l51 -136h224zM960 128q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> - <glyph glyph-name="font" unicode="" horiz-adv-x="1664" + <glyph glyph-name="font" unicode="" horiz-adv-x="1664" d="M725 977l-170 -450q33 0 136.5 -2t160.5 -2q19 0 57 2q-87 253 -184 452zM0 -128l2 79q23 7 56 12.5t57 10.5t49.5 14.5t44.5 29t31 50.5l237 616l280 724h75h53q8 -14 11 -21l205 -480q33 -78 106 -257.5t114 -274.5q15 -34 58 -144.5t72 -168.5q20 -45 35 -57 q19 -15 88 -29.5t84 -20.5q6 -38 6 -57q0 -5 -0.5 -13.5t-0.5 -12.5q-63 0 -190 8t-191 8q-76 0 -215 -7t-178 -8q0 43 4 78l131 28q1 0 12.5 2.5t15.5 3.5t14.5 4.5t15 6.5t11 8t9 11t2.5 14q0 16 -31 96.5t-72 177.5t-42 100l-450 2q-26 -58 -76.5 -195.5t-50.5 -162.5 q0 -22 14 -37.5t43.5 -24.5t48.5 -13.5t57 -8.5t41 -4q1 -19 1 -58q0 -9 -2 -27q-58 0 -174.5 10t-174.5 10q-8 0 -26.5 -4t-21.5 -4q-80 -14 -188 -14z" /> - <glyph glyph-name="bold" unicode="" horiz-adv-x="1408" + <glyph glyph-name="bold" unicode="" horiz-adv-x="1408" d="M555 15q74 -32 140 -32q376 0 376 335q0 114 -41 180q-27 44 -61.5 74t-67.5 46.5t-80.5 25t-84 10.5t-94.5 2q-73 0 -101 -10q0 -53 -0.5 -159t-0.5 -158q0 -8 -1 -67.5t-0.5 -96.5t4.5 -83.5t12 -66.5zM541 761q42 -7 109 -7q82 0 143 13t110 44.5t74.5 89.5t25.5 142 q0 70 -29 122.5t-79 82t-108 43.5t-124 14q-50 0 -130 -13q0 -50 4 -151t4 -152q0 -27 -0.5 -80t-0.5 -79q0 -46 1 -69zM0 -128l2 94q15 4 85 16t106 27q7 12 12.5 27t8.5 33.5t5.5 32.5t3 37.5t0.5 34v35.5v30q0 982 -22 1025q-4 8 -22 14.5t-44.5 11t-49.5 7t-48.5 4.5 t-30.5 3l-4 83q98 2 340 11.5t373 9.5q23 0 68 -0.5t68 -0.5q70 0 136.5 -13t128.5 -42t108 -71t74 -104.5t28 -137.5q0 -52 -16.5 -95.5t-39 -72t-64.5 -57.5t-73 -45t-84 -40q154 -35 256.5 -134t102.5 -248q0 -100 -35 -179.5t-93.5 -130.5t-138 -85.5t-163.5 -48.5 t-176 -14q-44 0 -132 3t-132 3q-106 0 -307 -11t-231 -12z" /> - <glyph glyph-name="italic" unicode="" horiz-adv-x="1024" + <glyph glyph-name="italic" unicode="" horiz-adv-x="1024" d="M0 -126l17 85q22 7 61.5 16.5t72 19t59.5 23.5q28 35 41 101q1 7 62 289t114 543.5t52 296.5v25q-24 13 -54.5 18.5t-69.5 8t-58 5.5l19 103q33 -2 120 -6.5t149.5 -7t120.5 -2.5q48 0 98.5 2.5t121 7t98.5 6.5q-5 -39 -19 -89q-30 -10 -101.5 -28.5t-108.5 -33.5 q-8 -19 -14 -42.5t-9 -40t-7.5 -45.5t-6.5 -42q-27 -148 -87.5 -419.5t-77.5 -355.5q-2 -9 -13 -58t-20 -90t-16 -83.5t-6 -57.5l1 -18q17 -4 185 -31q-3 -44 -16 -99q-11 0 -32.5 -1.5t-32.5 -1.5q-29 0 -87 10t-86 10q-138 2 -206 2q-51 0 -143 -9t-121 -11z" /> - <glyph glyph-name="text_height" unicode="" horiz-adv-x="1792" + <glyph glyph-name="text_height" unicode="" horiz-adv-x="1792" d="M1744 128q33 0 42 -18.5t-11 -44.5l-126 -162q-20 -26 -49 -26t-49 26l-126 162q-20 26 -11 44.5t42 18.5h80v1024h-80q-33 0 -42 18.5t11 44.5l126 162q20 26 49 26t49 -26l126 -162q20 -26 11 -44.5t-42 -18.5h-80v-1024h80zM81 1407l54 -27q12 -5 211 -5q44 0 132 2 t132 2q36 0 107.5 -0.5t107.5 -0.5h293q6 0 21 -0.5t20.5 0t16 3t17.5 9t15 17.5l42 1q4 0 14 -0.5t14 -0.5q2 -112 2 -336q0 -80 -5 -109q-39 -14 -68 -18q-25 44 -54 128q-3 9 -11 48t-14.5 73.5t-7.5 35.5q-6 8 -12 12.5t-15.5 6t-13 2.5t-18 0.5t-16.5 -0.5 q-17 0 -66.5 0.5t-74.5 0.5t-64 -2t-71 -6q-9 -81 -8 -136q0 -94 2 -388t2 -455q0 -16 -2.5 -71.5t0 -91.5t12.5 -69q40 -21 124 -42.5t120 -37.5q5 -40 5 -50q0 -14 -3 -29l-34 -1q-76 -2 -218 8t-207 10q-50 0 -151 -9t-152 -9q-3 51 -3 52v9q17 27 61.5 43t98.5 29t78 27 q19 42 19 383q0 101 -3 303t-3 303v117q0 2 0.5 15.5t0.5 25t-1 25.5t-3 24t-5 14q-11 12 -162 12q-33 0 -93 -12t-80 -26q-19 -13 -34 -72.5t-31.5 -111t-42.5 -53.5q-42 26 -56 44v383z" /> - <glyph glyph-name="text_width" unicode="" + <glyph glyph-name="text_width" unicode="" d="M81 1407l54 -27q12 -5 211 -5q44 0 132 2t132 2q70 0 246.5 1t304.5 0.5t247 -4.5q33 -1 56 31l42 1q4 0 14 -0.5t14 -0.5q2 -112 2 -336q0 -80 -5 -109q-39 -14 -68 -18q-25 44 -54 128q-3 9 -11 47.5t-15 73.5t-7 36q-10 13 -27 19q-5 2 -66 2q-30 0 -93 1t-103 1 t-94 -2t-96 -7q-9 -81 -8 -136l1 -152v52q0 -55 1 -154t1.5 -180t0.5 -153q0 -16 -2.5 -71.5t0 -91.5t12.5 -69q40 -21 124 -42.5t120 -37.5q5 -40 5 -50q0 -14 -3 -29l-34 -1q-76 -2 -218 8t-207 10q-50 0 -151 -9t-152 -9q-3 51 -3 52v9q17 27 61.5 43t98.5 29t78 27 q7 16 11.5 74t6 145.5t1.5 155t-0.5 153.5t-0.5 89q0 7 -2.5 21.5t-2.5 22.5q0 7 0.5 44t1 73t0 76.5t-3 67.5t-6.5 32q-11 12 -162 12q-41 0 -163 -13.5t-138 -24.5q-19 -12 -34 -71.5t-31.5 -111.5t-42.5 -54q-42 26 -56 44v383zM1310 125q12 0 42 -19.5t57.5 -41.5 t59.5 -49t36 -30q26 -21 26 -49t-26 -49q-4 -3 -36 -30t-59.5 -49t-57.5 -41.5t-42 -19.5q-13 0 -20.5 10.5t-10 28.5t-2.5 33.5t1.5 33t1.5 19.5h-1024q0 -2 1.5 -19.5t1.5 -33t-2.5 -33.5t-10 -28.5t-20.5 -10.5q-12 0 -42 19.5t-57.5 41.5t-59.5 49t-36 30q-26 21 -26 49 t26 49q4 3 36 30t59.5 49t57.5 41.5t42 19.5q13 0 20.5 -10.5t10 -28.5t2.5 -33.5t-1.5 -33t-1.5 -19.5h1024q0 2 -1.5 19.5t-1.5 33t2.5 33.5t10 28.5t20.5 10.5z" /> - <glyph glyph-name="align_left" unicode="" horiz-adv-x="1792" + <glyph glyph-name="align_left" unicode="" horiz-adv-x="1792" d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1408 576v-128q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1280q26 0 45 -19t19 -45zM1664 960v-128q0 -26 -19 -45 t-45 -19h-1536q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1536q26 0 45 -19t19 -45zM1280 1344v-128q0 -26 -19 -45t-45 -19h-1152q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" /> - <glyph glyph-name="align_center" unicode="" horiz-adv-x="1792" + <glyph glyph-name="align_center" unicode="" horiz-adv-x="1792" d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1408 576v-128q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45 -19t19 -45zM1664 960v-128q0 -26 -19 -45t-45 -19 h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1280 1344v-128q0 -26 -19 -45t-45 -19h-640q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h640q26 0 45 -19t19 -45z" /> - <glyph glyph-name="align_right" unicode="" horiz-adv-x="1792" + <glyph glyph-name="align_right" unicode="" horiz-adv-x="1792" d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 576v-128q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1280q26 0 45 -19t19 -45zM1792 960v-128q0 -26 -19 -45 t-45 -19h-1536q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1536q26 0 45 -19t19 -45zM1792 1344v-128q0 -26 -19 -45t-45 -19h-1152q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" /> - <glyph glyph-name="align_justify" unicode="" horiz-adv-x="1792" + <glyph glyph-name="align_justify" unicode="" horiz-adv-x="1792" d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 576v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 960v-128q0 -26 -19 -45 t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 1344v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45z" /> - <glyph glyph-name="list" unicode="" horiz-adv-x="1792" + <glyph glyph-name="list" unicode="" horiz-adv-x="1792" d="M256 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM256 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5 t9.5 -22.5zM256 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1344 q13 0 22.5 -9.5t9.5 -22.5zM256 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5 t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192 q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5z" /> - <glyph glyph-name="indent_left" unicode="" horiz-adv-x="1792" + <glyph glyph-name="indent_left" unicode="" horiz-adv-x="1792" d="M384 992v-576q0 -13 -9.5 -22.5t-22.5 -9.5q-14 0 -23 9l-288 288q-9 9 -9 23t9 23l288 288q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5 t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088 q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5t9.5 -22.5z" /> - <glyph glyph-name="indent_right" unicode="" horiz-adv-x="1792" + <glyph glyph-name="indent_right" unicode="" horiz-adv-x="1792" d="M352 704q0 -14 -9 -23l-288 -288q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v576q0 13 9.5 22.5t22.5 9.5q14 0 23 -9l288 -288q9 -9 9 -23zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5 t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088 q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5t9.5 -22.5z" /> - <glyph glyph-name="facetime_video" unicode="" horiz-adv-x="1792" + <glyph glyph-name="facetime_video" unicode="" horiz-adv-x="1792" d="M1792 1184v-1088q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-403 403v-166q0 -119 -84.5 -203.5t-203.5 -84.5h-704q-119 0 -203.5 84.5t-84.5 203.5v704q0 119 84.5 203.5t203.5 84.5h704q119 0 203.5 -84.5t84.5 -203.5v-165l403 402q18 19 45 19q12 0 25 -5 q39 -17 39 -59z" /> - <glyph glyph-name="picture" unicode="" horiz-adv-x="1920" + <glyph glyph-name="picture" unicode="" horiz-adv-x="1920" d="M640 960q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1664 576v-448h-1408v192l320 320l160 -160l512 512zM1760 1280h-1600q-13 0 -22.5 -9.5t-9.5 -22.5v-1216q0 -13 9.5 -22.5t22.5 -9.5h1600q13 0 22.5 9.5t9.5 22.5v1216 q0 13 -9.5 22.5t-22.5 9.5zM1920 1248v-1216q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" /> - <glyph glyph-name="pencil" unicode="" + <glyph glyph-name="pencil" unicode="" d="M363 0l91 91l-235 235l-91 -91v-107h128v-128h107zM886 928q0 22 -22 22q-10 0 -17 -7l-542 -542q-7 -7 -7 -17q0 -22 22 -22q10 0 17 7l542 542q7 7 7 17zM832 1120l416 -416l-832 -832h-416v416zM1515 1024q0 -53 -37 -90l-166 -166l-416 416l166 165q36 38 90 38 q53 0 91 -38l235 -234q37 -39 37 -91z" /> - <glyph glyph-name="map_marker" unicode="" horiz-adv-x="1024" + <glyph glyph-name="map_marker" unicode="" horiz-adv-x="1024" d="M768 896q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1024 896q0 -109 -33 -179l-364 -774q-16 -33 -47.5 -52t-67.5 -19t-67.5 19t-46.5 52l-365 774q-33 70 -33 179q0 212 150 362t362 150t362 -150t150 -362z" /> - <glyph glyph-name="adjust" unicode="" + <glyph glyph-name="adjust" unicode="" d="M768 96v1088q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="tint" unicode="" horiz-adv-x="1024" + <glyph glyph-name="tint" unicode="" horiz-adv-x="1024" d="M512 384q0 36 -20 69q-1 1 -15.5 22.5t-25.5 38t-25 44t-21 50.5q-4 16 -21 16t-21 -16q-7 -23 -21 -50.5t-25 -44t-25.5 -38t-15.5 -22.5q-20 -33 -20 -69q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1024 512q0 -212 -150 -362t-362 -150t-362 150t-150 362 q0 145 81 275q6 9 62.5 90.5t101 151t99.5 178t83 201.5q9 30 34 47t51 17t51.5 -17t33.5 -47q28 -93 83 -201.5t99.5 -178t101 -151t62.5 -90.5q81 -127 81 -275z" /> - <glyph glyph-name="edit" unicode="" horiz-adv-x="1792" + <glyph glyph-name="edit" unicode="" horiz-adv-x="1792" d="M888 352l116 116l-152 152l-116 -116v-56h96v-96h56zM1328 1072q-16 16 -33 -1l-350 -350q-17 -17 -1 -33t33 1l350 350q17 17 1 33zM1408 478v-190q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832 q63 0 117 -25q15 -7 18 -23q3 -17 -9 -29l-49 -49q-14 -14 -32 -8q-23 6 -45 6h-832q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v126q0 13 9 22l64 64q15 15 35 7t20 -29zM1312 1216l288 -288l-672 -672h-288v288zM1756 1084l-92 -92 l-288 288l92 92q28 28 68 28t68 -28l152 -152q28 -28 28 -68t-28 -68z" /> - <glyph glyph-name="share" unicode="" horiz-adv-x="1664" + <glyph glyph-name="share" unicode="" horiz-adv-x="1664" d="M1408 547v-259q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h255v0q13 0 22.5 -9.5t9.5 -22.5q0 -27 -26 -32q-77 -26 -133 -60q-10 -4 -16 -4h-112q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832 q66 0 113 47t47 113v214q0 19 18 29q28 13 54 37q16 16 35 8q21 -9 21 -29zM1645 1043l-384 -384q-18 -19 -45 -19q-12 0 -25 5q-39 17 -39 59v192h-160q-323 0 -438 -131q-119 -137 -74 -473q3 -23 -20 -34q-8 -2 -12 -2q-16 0 -26 13q-10 14 -21 31t-39.5 68.5t-49.5 99.5 t-38.5 114t-17.5 122q0 49 3.5 91t14 90t28 88t47 81.5t68.5 74t94.5 61.5t124.5 48.5t159.5 30.5t196.5 11h160v192q0 42 39 59q13 5 25 5q26 0 45 -19l384 -384q19 -19 19 -45t-19 -45z" /> - <glyph glyph-name="check" unicode="" horiz-adv-x="1664" + <glyph glyph-name="check" unicode="" horiz-adv-x="1664" d="M1408 606v-318q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q63 0 117 -25q15 -7 18 -23q3 -17 -9 -29l-49 -49q-10 -10 -23 -10q-3 0 -9 2q-23 6 -45 6h-832q-66 0 -113 -47t-47 -113v-832 q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v254q0 13 9 22l64 64q10 10 23 10q6 0 12 -3q20 -8 20 -29zM1639 1095l-814 -814q-24 -24 -57 -24t-57 24l-430 430q-24 24 -24 57t24 57l110 110q24 24 57 24t57 -24l263 -263l647 647q24 24 57 24t57 -24l110 -110 q24 -24 24 -57t-24 -57z" /> - <glyph glyph-name="move" unicode="" horiz-adv-x="1792" + <glyph glyph-name="move" unicode="" horiz-adv-x="1792" d="M1792 640q0 -26 -19 -45l-256 -256q-19 -19 -45 -19t-45 19t-19 45v128h-384v-384h128q26 0 45 -19t19 -45t-19 -45l-256 -256q-19 -19 -45 -19t-45 19l-256 256q-19 19 -19 45t19 45t45 19h128v384h-384v-128q0 -26 -19 -45t-45 -19t-45 19l-256 256q-19 19 -19 45 t19 45l256 256q19 19 45 19t45 -19t19 -45v-128h384v384h-128q-26 0 -45 19t-19 45t19 45l256 256q19 19 45 19t45 -19l256 -256q19 -19 19 -45t-19 -45t-45 -19h-128v-384h384v128q0 26 19 45t45 19t45 -19l256 -256q19 -19 19 -45z" /> - <glyph glyph-name="step_backward" unicode="" horiz-adv-x="1024" + <glyph glyph-name="step_backward" unicode="" horiz-adv-x="1024" d="M979 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-678q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-678q4 10 13 19z" /> - <glyph glyph-name="fast_backward" unicode="" horiz-adv-x="1792" + <glyph glyph-name="fast_backward" unicode="" horiz-adv-x="1792" d="M1747 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-710q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-678q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-678q4 10 13 19l710 710 q19 19 32 13t13 -32v-710q4 10 13 19z" /> - <glyph glyph-name="backward" unicode="" horiz-adv-x="1664" + <glyph glyph-name="backward" unicode="" horiz-adv-x="1664" d="M1619 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-710q0 -26 -13 -32t-32 13l-710 710q-19 19 -19 45t19 45l710 710q19 19 32 13t13 -32v-710q4 10 13 19z" /> - <glyph glyph-name="play" unicode="" horiz-adv-x="1408" + <glyph glyph-name="play" unicode="" horiz-adv-x="1408" d="M1384 609l-1328 -738q-23 -13 -39.5 -3t-16.5 36v1472q0 26 16.5 36t39.5 -3l1328 -738q23 -13 23 -31t-23 -31z" /> - <glyph glyph-name="pause" unicode="" + <glyph glyph-name="pause" unicode="" d="M1536 1344v-1408q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h512q26 0 45 -19t19 -45zM640 1344v-1408q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h512q26 0 45 -19t19 -45z" /> - <glyph glyph-name="stop" unicode="" + <glyph glyph-name="stop" unicode="" d="M1536 1344v-1408q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h1408q26 0 45 -19t19 -45z" /> - <glyph glyph-name="forward" unicode="" horiz-adv-x="1664" + <glyph glyph-name="forward" unicode="" horiz-adv-x="1664" d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q9 -9 13 -19v710q0 26 13 32t32 -13l710 -710q19 -19 19 -45t-19 -45l-710 -710q-19 -19 -32 -13t-13 32v710q-4 -10 -13 -19z" /> - <glyph glyph-name="fast_forward" unicode="" horiz-adv-x="1792" + <glyph glyph-name="fast_forward" unicode="" horiz-adv-x="1792" d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q9 -9 13 -19v710q0 26 13 32t32 -13l710 -710q9 -9 13 -19v678q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-1408q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v678q-4 -10 -13 -19l-710 -710 q-19 -19 -32 -13t-13 32v710q-4 -10 -13 -19z" /> - <glyph glyph-name="step_forward" unicode="" horiz-adv-x="1024" + <glyph glyph-name="step_forward" unicode="" horiz-adv-x="1024" d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q9 -9 13 -19v678q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-1408q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v678q-4 -10 -13 -19z" /> - <glyph glyph-name="eject" unicode="" horiz-adv-x="1538" + <glyph glyph-name="eject" unicode="" horiz-adv-x="1538" d="M14 557l710 710q19 19 45 19t45 -19l710 -710q19 -19 13 -32t-32 -13h-1472q-26 0 -32 13t13 32zM1473 0h-1408q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1408q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19z" /> - <glyph glyph-name="chevron_left" unicode="" horiz-adv-x="1280" + <glyph glyph-name="chevron_left" unicode="" horiz-adv-x="1280" d="M1171 1235l-531 -531l531 -531q19 -19 19 -45t-19 -45l-166 -166q-19 -19 -45 -19t-45 19l-742 742q-19 19 -19 45t19 45l742 742q19 19 45 19t45 -19l166 -166q19 -19 19 -45t-19 -45z" /> - <glyph glyph-name="chevron_right" unicode="" horiz-adv-x="1280" + <glyph glyph-name="chevron_right" unicode="" horiz-adv-x="1280" d="M1107 659l-742 -742q-19 -19 -45 -19t-45 19l-166 166q-19 19 -19 45t19 45l531 531l-531 531q-19 19 -19 45t19 45l166 166q19 19 45 19t45 -19l742 -742q19 -19 19 -45t-19 -45z" /> - <glyph glyph-name="plus_sign" unicode="" + <glyph glyph-name="plus_sign" unicode="" d="M1216 576v128q0 26 -19 45t-45 19h-256v256q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-256h-256q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h256v-256q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v256h256q26 0 45 19t19 45zM1536 640q0 -209 -103 -385.5 t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="minus_sign" unicode="" + <glyph glyph-name="minus_sign" unicode="" d="M1216 576v128q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5 t103 -385.5z" /> - <glyph glyph-name="remove_sign" unicode="" + <glyph glyph-name="remove_sign" unicode="" d="M1149 414q0 26 -19 45l-181 181l181 181q19 19 19 45q0 27 -19 46l-90 90q-19 19 -46 19q-26 0 -45 -19l-181 -181l-181 181q-19 19 -45 19q-27 0 -46 -19l-90 -90q-19 -19 -19 -46q0 -26 19 -45l181 -181l-181 -181q-19 -19 -19 -45q0 -27 19 -46l90 -90q19 -19 46 -19 q26 0 45 19l181 181l181 -181q19 -19 45 -19q27 0 46 19l90 90q19 19 19 46zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="ok_sign" unicode="" + <glyph glyph-name="ok_sign" unicode="" d="M1284 802q0 28 -18 46l-91 90q-19 19 -45 19t-45 -19l-408 -407l-226 226q-19 19 -45 19t-45 -19l-91 -90q-18 -18 -18 -46q0 -27 18 -45l362 -362q19 -19 45 -19q27 0 46 19l543 543q18 18 18 45zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103 t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="question_sign" unicode="" + <glyph glyph-name="question_sign" unicode="" d="M896 160v192q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h192q14 0 23 9t9 23zM1152 832q0 88 -55.5 163t-138.5 116t-170 41q-243 0 -371 -213q-15 -24 8 -42l132 -100q7 -6 19 -6q16 0 25 12q53 68 86 92q34 24 86 24q48 0 85.5 -26t37.5 -59 q0 -38 -20 -61t-68 -45q-63 -28 -115.5 -86.5t-52.5 -125.5v-36q0 -14 9 -23t23 -9h192q14 0 23 9t9 23q0 19 21.5 49.5t54.5 49.5q32 18 49 28.5t46 35t44.5 48t28 60.5t12.5 81zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="info_sign" unicode="" + <glyph glyph-name="info_sign" unicode="" d="M1024 160v160q0 14 -9 23t-23 9h-96v512q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23t23 -9h96v-320h-96q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23t23 -9h448q14 0 23 9t9 23zM896 1056v160q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23 t23 -9h192q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="screenshot" unicode="" + <glyph glyph-name="screenshot" unicode="" d="M1197 512h-109q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h109q-32 108 -112.5 188.5t-188.5 112.5v-109q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v109q-108 -32 -188.5 -112.5t-112.5 -188.5h109q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-109 q32 -108 112.5 -188.5t188.5 -112.5v109q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-109q108 32 188.5 112.5t112.5 188.5zM1536 704v-128q0 -26 -19 -45t-45 -19h-143q-37 -161 -154.5 -278.5t-278.5 -154.5v-143q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v143 q-161 37 -278.5 154.5t-154.5 278.5h-143q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h143q37 161 154.5 278.5t278.5 154.5v143q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-143q161 -37 278.5 -154.5t154.5 -278.5h143q26 0 45 -19t19 -45z" /> - <glyph glyph-name="remove_circle" unicode="" + <glyph glyph-name="remove_circle" unicode="" d="M1097 457l-146 -146q-10 -10 -23 -10t-23 10l-137 137l-137 -137q-10 -10 -23 -10t-23 10l-146 146q-10 10 -10 23t10 23l137 137l-137 137q-10 10 -10 23t10 23l146 146q10 10 23 10t23 -10l137 -137l137 137q10 10 23 10t23 -10l146 -146q10 -10 10 -23t-10 -23 l-137 -137l137 -137q10 -10 10 -23t-10 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5 t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="ok_circle" unicode="" + <glyph glyph-name="ok_circle" unicode="" d="M1171 723l-422 -422q-19 -19 -45 -19t-45 19l-294 294q-19 19 -19 45t19 45l102 102q19 19 45 19t45 -19l147 -147l275 275q19 19 45 19t45 -19l102 -102q19 -19 19 -45t-19 -45zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198 t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="ban_circle" unicode="" + <glyph glyph-name="ban_circle" unicode="" d="M1312 643q0 161 -87 295l-754 -753q137 -89 297 -89q111 0 211.5 43.5t173.5 116.5t116 174.5t43 212.5zM313 344l755 754q-135 91 -300 91q-148 0 -273 -73t-198 -199t-73 -274q0 -162 89 -299zM1536 643q0 -157 -61 -300t-163.5 -246t-245 -164t-298.5 -61t-298.5 61 t-245 164t-163.5 246t-61 300t61 299.5t163.5 245.5t245 164t298.5 61t298.5 -61t245 -164t163.5 -245.5t61 -299.5z" /> - <glyph glyph-name="arrow_left" unicode="" + <glyph glyph-name="arrow_left" unicode="" d="M1536 640v-128q0 -53 -32.5 -90.5t-84.5 -37.5h-704l293 -294q38 -36 38 -90t-38 -90l-75 -76q-37 -37 -90 -37q-52 0 -91 37l-651 652q-37 37 -37 90q0 52 37 91l651 650q38 38 91 38q52 0 90 -38l75 -74q38 -38 38 -91t-38 -91l-293 -293h704q52 0 84.5 -37.5 t32.5 -90.5z" /> - <glyph glyph-name="arrow_right" unicode="" + <glyph glyph-name="arrow_right" unicode="" d="M1472 576q0 -54 -37 -91l-651 -651q-39 -37 -91 -37q-51 0 -90 37l-75 75q-38 38 -38 91t38 91l293 293h-704q-52 0 -84.5 37.5t-32.5 90.5v128q0 53 32.5 90.5t84.5 37.5h704l-293 294q-38 36 -38 90t38 90l75 75q38 38 90 38q53 0 91 -38l651 -651q37 -35 37 -90z" /> - <glyph glyph-name="arrow_up" unicode="" horiz-adv-x="1664" + <glyph glyph-name="arrow_up" unicode="" horiz-adv-x="1664" d="M1611 565q0 -51 -37 -90l-75 -75q-38 -38 -91 -38q-54 0 -90 38l-294 293v-704q0 -52 -37.5 -84.5t-90.5 -32.5h-128q-53 0 -90.5 32.5t-37.5 84.5v704l-294 -293q-36 -38 -90 -38t-90 38l-75 75q-38 38 -38 90q0 53 38 91l651 651q35 37 90 37q54 0 91 -37l651 -651 q37 -39 37 -91z" /> - <glyph glyph-name="arrow_down" unicode="" horiz-adv-x="1664" + <glyph glyph-name="arrow_down" unicode="" horiz-adv-x="1664" d="M1611 704q0 -53 -37 -90l-651 -652q-39 -37 -91 -37q-53 0 -90 37l-651 652q-38 36 -38 90q0 53 38 91l74 75q39 37 91 37q53 0 90 -37l294 -294v704q0 52 38 90t90 38h128q52 0 90 -38t38 -90v-704l294 294q37 37 90 37q52 0 91 -37l75 -75q37 -39 37 -91z" /> - <glyph glyph-name="share_alt" unicode="" horiz-adv-x="1792" + <glyph glyph-name="share_alt" unicode="" horiz-adv-x="1792" d="M1792 896q0 -26 -19 -45l-512 -512q-19 -19 -45 -19t-45 19t-19 45v256h-224q-98 0 -175.5 -6t-154 -21.5t-133 -42.5t-105.5 -69.5t-80 -101t-48.5 -138.5t-17.5 -181q0 -55 5 -123q0 -6 2.5 -23.5t2.5 -26.5q0 -15 -8.5 -25t-23.5 -10q-16 0 -28 17q-7 9 -13 22 t-13.5 30t-10.5 24q-127 285 -127 451q0 199 53 333q162 403 875 403h224v256q0 26 19 45t45 19t45 -19l512 -512q19 -19 19 -45z" /> - <glyph glyph-name="resize_full" unicode="" + <glyph glyph-name="resize_full" unicode="" d="M755 480q0 -13 -10 -23l-332 -332l144 -144q19 -19 19 -45t-19 -45t-45 -19h-448q-26 0 -45 19t-19 45v448q0 26 19 45t45 19t45 -19l144 -144l332 332q10 10 23 10t23 -10l114 -114q10 -10 10 -23zM1536 1344v-448q0 -26 -19 -45t-45 -19t-45 19l-144 144l-332 -332 q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l332 332l-144 144q-19 19 -19 45t19 45t45 19h448q26 0 45 -19t19 -45z" /> - <glyph glyph-name="resize_small" unicode="" + <glyph glyph-name="resize_small" unicode="" d="M768 576v-448q0 -26 -19 -45t-45 -19t-45 19l-144 144l-332 -332q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l332 332l-144 144q-19 19 -19 45t19 45t45 19h448q26 0 45 -19t19 -45zM1523 1248q0 -13 -10 -23l-332 -332l144 -144q19 -19 19 -45t-19 -45 t-45 -19h-448q-26 0 -45 19t-19 45v448q0 26 19 45t45 19t45 -19l144 -144l332 332q10 10 23 10t23 -10l114 -114q10 -10 10 -23z" /> - <glyph glyph-name="plus" unicode="" horiz-adv-x="1408" + <glyph glyph-name="plus" unicode="" horiz-adv-x="1408" d="M1408 800v-192q0 -40 -28 -68t-68 -28h-416v-416q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v416h-416q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h416v416q0 40 28 68t68 28h192q40 0 68 -28t28 -68v-416h416q40 0 68 -28t28 -68z" /> - <glyph glyph-name="minus" unicode="" horiz-adv-x="1408" + <glyph glyph-name="minus" unicode="" horiz-adv-x="1408" d="M1408 800v-192q0 -40 -28 -68t-68 -28h-1216q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h1216q40 0 68 -28t28 -68z" /> - <glyph glyph-name="asterisk" unicode="" horiz-adv-x="1664" + <glyph glyph-name="asterisk" unicode="" horiz-adv-x="1664" d="M1482 486q46 -26 59.5 -77.5t-12.5 -97.5l-64 -110q-26 -46 -77.5 -59.5t-97.5 12.5l-266 153v-307q0 -52 -38 -90t-90 -38h-128q-52 0 -90 38t-38 90v307l-266 -153q-46 -26 -97.5 -12.5t-77.5 59.5l-64 110q-26 46 -12.5 97.5t59.5 77.5l266 154l-266 154 q-46 26 -59.5 77.5t12.5 97.5l64 110q26 46 77.5 59.5t97.5 -12.5l266 -153v307q0 52 38 90t90 38h128q52 0 90 -38t38 -90v-307l266 153q46 26 97.5 12.5t77.5 -59.5l64 -110q26 -46 12.5 -97.5t-59.5 -77.5l-266 -154z" /> - <glyph glyph-name="exclamation_sign" unicode="" + <glyph glyph-name="exclamation_sign" unicode="" d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM896 161v190q0 14 -9 23.5t-22 9.5h-192q-13 0 -23 -10t-10 -23v-190q0 -13 10 -23t23 -10h192 q13 0 22 9.5t9 23.5zM894 505l18 621q0 12 -10 18q-10 8 -24 8h-220q-14 0 -24 -8q-10 -6 -10 -18l17 -621q0 -10 10 -17.5t24 -7.5h185q14 0 23.5 7.5t10.5 17.5z" /> - <glyph glyph-name="gift" unicode="" + <glyph glyph-name="gift" unicode="" d="M928 180v56v468v192h-320v-192v-468v-56q0 -25 18 -38.5t46 -13.5h192q28 0 46 13.5t18 38.5zM472 1024h195l-126 161q-26 31 -69 31q-40 0 -68 -28t-28 -68t28 -68t68 -28zM1160 1120q0 40 -28 68t-68 28q-43 0 -69 -31l-125 -161h194q40 0 68 28t28 68zM1536 864v-320 q0 -14 -9 -23t-23 -9h-96v-416q0 -40 -28 -68t-68 -28h-1088q-40 0 -68 28t-28 68v416h-96q-14 0 -23 9t-9 23v320q0 14 9 23t23 9h440q-93 0 -158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5q107 0 168 -77l128 -165l128 165q61 77 168 77q93 0 158.5 -65.5t65.5 -158.5 t-65.5 -158.5t-158.5 -65.5h440q14 0 23 -9t9 -23z" /> - <glyph glyph-name="leaf" unicode="" horiz-adv-x="1792" + <glyph glyph-name="leaf" unicode="" horiz-adv-x="1792" d="M1280 832q0 26 -19 45t-45 19q-172 0 -318 -49.5t-259.5 -134t-235.5 -219.5q-19 -21 -19 -45q0 -26 19 -45t45 -19q24 0 45 19q27 24 74 71t67 66q137 124 268.5 176t313.5 52q26 0 45 19t19 45zM1792 1030q0 -95 -20 -193q-46 -224 -184.5 -383t-357.5 -268 q-214 -108 -438 -108q-148 0 -286 47q-15 5 -88 42t-96 37q-16 0 -39.5 -32t-45 -70t-52.5 -70t-60 -32q-43 0 -63.5 17.5t-45.5 59.5q-2 4 -6 11t-5.5 10t-3 9.5t-1.5 13.5q0 35 31 73.5t68 65.5t68 56t31 48q0 4 -14 38t-16 44q-9 51 -9 104q0 115 43.5 220t119 184.5 t170.5 139t204 95.5q55 18 145 25.5t179.5 9t178.5 6t163.5 24t113.5 56.5l29.5 29.5t29.5 28t27 20t36.5 16t43.5 4.5q39 0 70.5 -46t47.5 -112t24 -124t8 -96z" /> - <glyph glyph-name="fire" unicode="" horiz-adv-x="1408" + <glyph glyph-name="fire" unicode="" horiz-adv-x="1408" d="M1408 -160v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1152 896q0 -78 -24.5 -144t-64 -112.5t-87.5 -88t-96 -77.5t-87.5 -72t-64 -81.5t-24.5 -96.5q0 -96 67 -224l-4 1l1 -1 q-90 41 -160 83t-138.5 100t-113.5 122.5t-72.5 150.5t-27.5 184q0 78 24.5 144t64 112.5t87.5 88t96 77.5t87.5 72t64 81.5t24.5 96.5q0 94 -66 224l3 -1l-1 1q90 -41 160 -83t138.5 -100t113.5 -122.5t72.5 -150.5t27.5 -184z" /> - <glyph glyph-name="eye_open" unicode="" horiz-adv-x="1792" + <glyph glyph-name="eye_open" unicode="" horiz-adv-x="1792" d="M1664 576q-152 236 -381 353q61 -104 61 -225q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 121 61 225q-229 -117 -381 -353q133 -205 333.5 -326.5t434.5 -121.5t434.5 121.5t333.5 326.5zM944 960q0 20 -14 34t-34 14q-125 0 -214.5 -89.5 t-89.5 -214.5q0 -20 14 -34t34 -14t34 14t14 34q0 86 61 147t147 61q20 0 34 14t14 34zM1792 576q0 -34 -20 -69q-140 -230 -376.5 -368.5t-499.5 -138.5t-499.5 139t-376.5 368q-20 35 -20 69t20 69q140 229 376.5 368t499.5 139t499.5 -139t376.5 -368q20 -35 20 -69z" /> - <glyph glyph-name="eye_close" unicode="" horiz-adv-x="1792" + <glyph glyph-name="eye_close" unicode="" horiz-adv-x="1792" d="M555 201l78 141q-87 63 -136 159t-49 203q0 121 61 225q-229 -117 -381 -353q167 -258 427 -375zM944 960q0 20 -14 34t-34 14q-125 0 -214.5 -89.5t-89.5 -214.5q0 -20 14 -34t34 -14t34 14t14 34q0 86 61 147t147 61q20 0 34 14t14 34zM1307 1151q0 -7 -1 -9 q-106 -189 -316 -567t-315 -566l-49 -89q-10 -16 -28 -16q-12 0 -134 70q-16 10 -16 28q0 12 44 87q-143 65 -263.5 173t-208.5 245q-20 31 -20 69t20 69q153 235 380 371t496 136q89 0 180 -17l54 97q10 16 28 16q5 0 18 -6t31 -15.5t33 -18.5t31.5 -18.5t19.5 -11.5 q16 -10 16 -27zM1344 704q0 -139 -79 -253.5t-209 -164.5l280 502q8 -45 8 -84zM1792 576q0 -35 -20 -69q-39 -64 -109 -145q-150 -172 -347.5 -267t-419.5 -95l74 132q212 18 392.5 137t301.5 307q-115 179 -282 294l63 112q95 -64 182.5 -153t144.5 -184q20 -34 20 -69z " /> - <glyph glyph-name="warning_sign" unicode="" horiz-adv-x="1792" + <glyph glyph-name="warning_sign" unicode="" horiz-adv-x="1792" d="M1024 161v190q0 14 -9.5 23.5t-22.5 9.5h-192q-13 0 -22.5 -9.5t-9.5 -23.5v-190q0 -14 9.5 -23.5t22.5 -9.5h192q13 0 22.5 9.5t9.5 23.5zM1022 535l18 459q0 12 -10 19q-13 11 -24 11h-220q-11 0 -24 -11q-10 -7 -10 -21l17 -457q0 -10 10 -16.5t24 -6.5h185 q14 0 23.5 6.5t10.5 16.5zM1008 1469l768 -1408q35 -63 -2 -126q-17 -29 -46.5 -46t-63.5 -17h-1536q-34 0 -63.5 17t-46.5 46q-37 63 -2 126l768 1408q17 31 47 49t65 18t65 -18t47 -49z" /> - <glyph glyph-name="plane" unicode="" horiz-adv-x="1408" + <glyph glyph-name="plane" unicode="" horiz-adv-x="1408" d="M1376 1376q44 -52 12 -148t-108 -172l-161 -161l160 -696q5 -19 -12 -33l-128 -96q-7 -6 -19 -6q-4 0 -7 1q-15 3 -21 16l-279 508l-259 -259l53 -194q5 -17 -8 -31l-96 -96q-9 -9 -23 -9h-2q-15 2 -24 13l-189 252l-252 189q-11 7 -13 23q-1 13 9 25l96 97q9 9 23 9 q6 0 8 -1l194 -53l259 259l-508 279q-14 8 -17 24q-2 16 9 27l128 128q14 13 30 8l665 -159l160 160q76 76 172 108t148 -12z" /> - <glyph glyph-name="calendar" unicode="" horiz-adv-x="1664" + <glyph glyph-name="calendar" unicode="" horiz-adv-x="1664" d="M128 -128h288v288h-288v-288zM480 -128h320v288h-320v-288zM128 224h288v320h-288v-320zM480 224h320v320h-320v-320zM128 608h288v288h-288v-288zM864 -128h320v288h-320v-288zM480 608h320v288h-320v-288zM1248 -128h288v288h-288v-288zM864 224h320v320h-320v-320z M512 1088v288q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-288q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1248 224h288v320h-288v-320zM864 608h320v288h-320v-288zM1248 608h288v288h-288v-288zM1280 1088v288q0 13 -9.5 22.5t-22.5 9.5h-64 q-13 0 -22.5 -9.5t-9.5 -22.5v-288q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1664 1152v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47 h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" /> - <glyph glyph-name="random" unicode="" horiz-adv-x="1792" + <glyph glyph-name="random" unicode="" horiz-adv-x="1792" d="M666 1055q-60 -92 -137 -273q-22 45 -37 72.5t-40.5 63.5t-51 56.5t-63 35t-81.5 14.5h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224q250 0 410 -225zM1792 256q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v192q-32 0 -85 -0.5t-81 -1t-73 1 t-71 5t-64 10.5t-63 18.5t-58 28.5t-59 40t-55 53.5t-56 69.5q59 93 136 273q22 -45 37 -72.5t40.5 -63.5t51 -56.5t63 -35t81.5 -14.5h256v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23zM1792 1152q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5 v192h-256q-48 0 -87 -15t-69 -45t-51 -61.5t-45 -77.5q-32 -62 -78 -171q-29 -66 -49.5 -111t-54 -105t-64 -100t-74 -83t-90 -68.5t-106.5 -42t-128 -16.5h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224q48 0 87 15t69 45t51 61.5t45 77.5q32 62 78 171q29 66 49.5 111 t54 105t64 100t74 83t90 68.5t106.5 42t128 16.5h256v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23z" /> - <glyph glyph-name="comment" unicode="" horiz-adv-x="1792" + <glyph glyph-name="comment" unicode="" horiz-adv-x="1792" d="M1792 640q0 -174 -120 -321.5t-326 -233t-450 -85.5q-70 0 -145 8q-198 -175 -460 -242q-49 -14 -114 -22q-17 -2 -30.5 9t-17.5 29v1q-3 4 -0.5 12t2 10t4.5 9.5l6 9t7 8.5t8 9q7 8 31 34.5t34.5 38t31 39.5t32.5 51t27 59t26 76q-157 89 -247.5 220t-90.5 281 q0 130 71 248.5t191 204.5t286 136.5t348 50.5q244 0 450 -85.5t326 -233t120 -321.5z" /> - <glyph glyph-name="magnet" unicode="" + <glyph glyph-name="magnet" unicode="" d="M1536 704v-128q0 -201 -98.5 -362t-274 -251.5t-395.5 -90.5t-395.5 90.5t-274 251.5t-98.5 362v128q0 26 19 45t45 19h384q26 0 45 -19t19 -45v-128q0 -52 23.5 -90t53.5 -57t71 -30t64 -13t44 -2t44 2t64 13t71 30t53.5 57t23.5 90v128q0 26 19 45t45 19h384 q26 0 45 -19t19 -45zM512 1344v-384q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h384q26 0 45 -19t19 -45zM1536 1344v-384q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h384q26 0 45 -19t19 -45z" /> - <glyph glyph-name="chevron_up" unicode="" horiz-adv-x="1792" + <glyph glyph-name="chevron_up" unicode="" horiz-adv-x="1792" d="M1683 205l-166 -165q-19 -19 -45 -19t-45 19l-531 531l-531 -531q-19 -19 -45 -19t-45 19l-166 165q-19 19 -19 45.5t19 45.5l742 741q19 19 45 19t45 -19l742 -741q19 -19 19 -45.5t-19 -45.5z" /> - <glyph glyph-name="chevron_down" unicode="" horiz-adv-x="1792" + <glyph glyph-name="chevron_down" unicode="" horiz-adv-x="1792" d="M1683 728l-742 -741q-19 -19 -45 -19t-45 19l-742 741q-19 19 -19 45.5t19 45.5l166 165q19 19 45 19t45 -19l531 -531l531 531q19 19 45 19t45 -19l166 -165q19 -19 19 -45.5t-19 -45.5z" /> - <glyph glyph-name="retweet" unicode="" horiz-adv-x="1920" + <glyph glyph-name="retweet" unicode="" horiz-adv-x="1920" d="M1280 32q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-8 0 -13.5 2t-9 7t-5.5 8t-3 11.5t-1 11.5v13v11v160v416h-192q-26 0 -45 19t-19 45q0 24 15 41l320 384q19 22 49 22t49 -22l320 -384q15 -17 15 -41q0 -26 -19 -45t-45 -19h-192v-384h576q16 0 25 -11l160 -192q7 -10 7 -21 zM1920 448q0 -24 -15 -41l-320 -384q-20 -23 -49 -23t-49 23l-320 384q-15 17 -15 41q0 26 19 45t45 19h192v384h-576q-16 0 -25 12l-160 192q-7 9 -7 20q0 13 9.5 22.5t22.5 9.5h960q8 0 13.5 -2t9 -7t5.5 -8t3 -11.5t1 -11.5v-13v-11v-160v-416h192q26 0 45 -19t19 -45z " /> - <glyph glyph-name="shopping_cart" unicode="" horiz-adv-x="1664" + <glyph glyph-name="shopping_cart" unicode="" horiz-adv-x="1664" d="M640 0q0 -52 -38 -90t-90 -38t-90 38t-38 90t38 90t90 38t90 -38t38 -90zM1536 0q0 -52 -38 -90t-90 -38t-90 38t-38 90t38 90t90 38t90 -38t38 -90zM1664 1088v-512q0 -24 -16.5 -42.5t-40.5 -21.5l-1044 -122q13 -60 13 -70q0 -16 -24 -64h920q26 0 45 -19t19 -45 t-19 -45t-45 -19h-1024q-26 0 -45 19t-19 45q0 11 8 31.5t16 36t21.5 40t15.5 29.5l-177 823h-204q-26 0 -45 19t-19 45t19 45t45 19h256q16 0 28.5 -6.5t19.5 -15.5t13 -24.5t8 -26t5.5 -29.5t4.5 -26h1201q26 0 45 -19t19 -45z" /> - <glyph glyph-name="folder_close" unicode="" horiz-adv-x="1664" + <glyph glyph-name="folder_close" unicode="" horiz-adv-x="1664" d="M1664 928v-704q0 -92 -66 -158t-158 -66h-1216q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h672q92 0 158 -66t66 -158z" /> - <glyph glyph-name="folder_open" unicode="" horiz-adv-x="1920" + <glyph glyph-name="folder_open" unicode="" horiz-adv-x="1920" d="M1879 584q0 -31 -31 -66l-336 -396q-43 -51 -120.5 -86.5t-143.5 -35.5h-1088q-34 0 -60.5 13t-26.5 43q0 31 31 66l336 396q43 51 120.5 86.5t143.5 35.5h1088q34 0 60.5 -13t26.5 -43zM1536 928v-160h-832q-94 0 -197 -47.5t-164 -119.5l-337 -396l-5 -6q0 4 -0.5 12.5 t-0.5 12.5v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h544q92 0 158 -66t66 -158z" /> - <glyph glyph-name="resize_vertical" unicode="" horiz-adv-x="768" + <glyph glyph-name="resize_vertical" unicode="" horiz-adv-x="768" d="M704 1216q0 -26 -19 -45t-45 -19h-128v-1024h128q26 0 45 -19t19 -45t-19 -45l-256 -256q-19 -19 -45 -19t-45 19l-256 256q-19 19 -19 45t19 45t45 19h128v1024h-128q-26 0 -45 19t-19 45t19 45l256 256q19 19 45 19t45 -19l256 -256q19 -19 19 -45z" /> - <glyph glyph-name="resize_horizontal" unicode="" horiz-adv-x="1792" + <glyph glyph-name="resize_horizontal" unicode="" horiz-adv-x="1792" d="M1792 640q0 -26 -19 -45l-256 -256q-19 -19 -45 -19t-45 19t-19 45v128h-1024v-128q0 -26 -19 -45t-45 -19t-45 19l-256 256q-19 19 -19 45t19 45l256 256q19 19 45 19t45 -19t19 -45v-128h1024v128q0 26 19 45t45 19t45 -19l256 -256q19 -19 19 -45z" /> - <glyph glyph-name="bar_chart" unicode="" horiz-adv-x="2048" + <glyph glyph-name="bar_chart" unicode="" horiz-adv-x="2048" d="M640 640v-512h-256v512h256zM1024 1152v-1024h-256v1024h256zM2048 0v-128h-2048v1536h128v-1408h1920zM1408 896v-768h-256v768h256zM1792 1280v-1152h-256v1152h256z" /> - <glyph glyph-name="twitter_sign" unicode="" + <glyph glyph-name="twitter_sign" unicode="" d="M1280 926q-56 -25 -121 -34q68 40 93 117q-65 -38 -134 -51q-61 66 -153 66q-87 0 -148.5 -61.5t-61.5 -148.5q0 -29 5 -48q-129 7 -242 65t-192 155q-29 -50 -29 -106q0 -114 91 -175q-47 1 -100 26v-2q0 -75 50 -133.5t123 -72.5q-29 -8 -51 -8q-13 0 -39 4 q21 -63 74.5 -104t121.5 -42q-116 -90 -261 -90q-26 0 -50 3q148 -94 322 -94q112 0 210 35.5t168 95t120.5 137t75 162t24.5 168.5q0 18 -1 27q63 45 105 109zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5 t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="facebook_sign" unicode="" + <glyph glyph-name="facebook_sign" unicode="" d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-188v595h199l30 232h-229v148q0 56 23.5 84t91.5 28l122 1v207q-63 9 -178 9q-136 0 -217.5 -80t-81.5 -226v-171h-200v-232h200v-595h-532q-119 0 -203.5 84.5t-84.5 203.5v960 q0 119 84.5 203.5t203.5 84.5h960z" /> - <glyph glyph-name="camera_retro" unicode="" horiz-adv-x="1792" + <glyph glyph-name="camera_retro" unicode="" horiz-adv-x="1792" d="M928 704q0 14 -9 23t-23 9q-66 0 -113 -47t-47 -113q0 -14 9 -23t23 -9t23 9t9 23q0 40 28 68t68 28q14 0 23 9t9 23zM1152 574q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM128 0h1536v128h-1536v-128zM1280 574q0 159 -112.5 271.5 t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5zM256 1216h384v128h-384v-128zM128 1024h1536v118v138h-828l-64 -128h-644v-128zM1792 1280v-1280q0 -53 -37.5 -90.5t-90.5 -37.5h-1536q-53 0 -90.5 37.5t-37.5 90.5v1280 q0 53 37.5 90.5t90.5 37.5h1536q53 0 90.5 -37.5t37.5 -90.5z" /> - <glyph glyph-name="key" unicode="" horiz-adv-x="1792" + <glyph glyph-name="key" unicode="" horiz-adv-x="1792" d="M832 1024q0 80 -56 136t-136 56t-136 -56t-56 -136q0 -42 19 -83q-41 19 -83 19q-80 0 -136 -56t-56 -136t56 -136t136 -56t136 56t56 136q0 42 -19 83q41 -19 83 -19q80 0 136 56t56 136zM1683 320q0 -17 -49 -66t-66 -49q-9 0 -28.5 16t-36.5 33t-38.5 40t-24.5 26 l-96 -96l220 -220q28 -28 28 -68q0 -42 -39 -81t-81 -39q-40 0 -68 28l-671 671q-176 -131 -365 -131q-163 0 -265.5 102.5t-102.5 265.5q0 160 95 313t248 248t313 95q163 0 265.5 -102.5t102.5 -265.5q0 -189 -131 -365l355 -355l96 96q-3 3 -26 24.5t-40 38.5t-33 36.5 t-16 28.5q0 17 49 66t66 49q13 0 23 -10q6 -6 46 -44.5t82 -79.5t86.5 -86t73 -78t28.5 -41z" /> - <glyph glyph-name="cogs" unicode="" horiz-adv-x="1920" + <glyph glyph-name="cogs" unicode="" horiz-adv-x="1920" d="M896 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1664 128q0 52 -38 90t-90 38t-90 -38t-38 -90q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1664 1152q0 52 -38 90t-90 38t-90 -38t-38 -90q0 -53 37.5 -90.5t90.5 -37.5 t90.5 37.5t37.5 90.5zM1280 731v-185q0 -10 -7 -19.5t-16 -10.5l-155 -24q-11 -35 -32 -76q34 -48 90 -115q7 -11 7 -20q0 -12 -7 -19q-23 -30 -82.5 -89.5t-78.5 -59.5q-11 0 -21 7l-115 90q-37 -19 -77 -31q-11 -108 -23 -155q-7 -24 -30 -24h-186q-11 0 -20 7.5t-10 17.5 l-23 153q-34 10 -75 31l-118 -89q-7 -7 -20 -7q-11 0 -21 8q-144 133 -144 160q0 9 7 19q10 14 41 53t47 61q-23 44 -35 82l-152 24q-10 1 -17 9.5t-7 19.5v185q0 10 7 19.5t16 10.5l155 24q11 35 32 76q-34 48 -90 115q-7 11 -7 20q0 12 7 20q22 30 82 89t79 59q11 0 21 -7 @@ -458,143 +458,143 @@ q-12 -27 -30 -52q51 -113 51 -138q0 -4 -4 -7q-122 -71 -124 -71q-8 0 -46 47t-52 68 t59 34t30 16q8 0 46 -46.5t52 -67.5q20 2 30 2t30 -2q51 71 92 112l6 2q4 0 124 -70q4 -3 4 -7q0 -25 -51 -138q17 -23 30 -52q149 -15 149 -31zM1920 1222v-140q0 -16 -149 -31q-12 -27 -30 -52q51 -113 51 -138q0 -4 -4 -7q-122 -71 -124 -71q-8 0 -46 47t-52 68 q-20 -2 -30 -2t-30 2q-14 -21 -52 -68t-46 -47q-2 0 -124 71q-4 3 -4 7q0 25 51 138q-18 25 -30 52q-149 15 -149 31v140q0 16 149 31q13 29 30 52q-51 113 -51 138q0 4 4 7q4 2 35 20t59 34t30 16q8 0 46 -46.5t52 -67.5q20 2 30 2t30 -2q51 71 92 112l6 2q4 0 124 -70 q4 -3 4 -7q0 -25 -51 -138q17 -23 30 -52q149 -15 149 -31z" /> - <glyph glyph-name="comments" unicode="" horiz-adv-x="1792" + <glyph glyph-name="comments" unicode="" horiz-adv-x="1792" d="M1408 768q0 -139 -94 -257t-256.5 -186.5t-353.5 -68.5q-86 0 -176 16q-124 -88 -278 -128q-36 -9 -86 -16h-3q-11 0 -20.5 8t-11.5 21q-1 3 -1 6.5t0.5 6.5t2 6l2.5 5t3.5 5.5t4 5t4.5 5t4 4.5q5 6 23 25t26 29.5t22.5 29t25 38.5t20.5 44q-124 72 -195 177t-71 224 q0 139 94 257t256.5 186.5t353.5 68.5t353.5 -68.5t256.5 -186.5t94 -257zM1792 512q0 -120 -71 -224.5t-195 -176.5q10 -24 20.5 -44t25 -38.5t22.5 -29t26 -29.5t23 -25q1 -1 4 -4.5t4.5 -5t4 -5t3.5 -5.5l2.5 -5t2 -6t0.5 -6.5t-1 -6.5q-3 -14 -13 -22t-22 -7 q-50 7 -86 16q-154 40 -278 128q-90 -16 -176 -16q-271 0 -472 132q58 -4 88 -4q161 0 309 45t264 129q125 92 192 212t67 254q0 77 -23 152q129 -71 204 -178t75 -230z" /> - <glyph glyph-name="thumbs_up_alt" unicode="" + <glyph glyph-name="thumbs_up_alt" unicode="" d="M256 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 768q0 51 -39 89.5t-89 38.5h-352q0 58 48 159.5t48 160.5q0 98 -32 145t-128 47q-26 -26 -38 -85t-30.5 -125.5t-59.5 -109.5q-22 -23 -77 -91q-4 -5 -23 -30t-31.5 -41t-34.5 -42.5 t-40 -44t-38.5 -35.5t-40 -27t-35.5 -9h-32v-640h32q13 0 31.5 -3t33 -6.5t38 -11t35 -11.5t35.5 -12.5t29 -10.5q211 -73 342 -73h121q192 0 192 167q0 26 -5 56q30 16 47.5 52.5t17.5 73.5t-18 69q53 50 53 119q0 25 -10 55.5t-25 47.5q32 1 53.5 47t21.5 81zM1536 769 q0 -89 -49 -163q9 -33 9 -69q0 -77 -38 -144q3 -21 3 -43q0 -101 -60 -178q1 -139 -85 -219.5t-227 -80.5h-36h-93q-96 0 -189.5 22.5t-216.5 65.5q-116 40 -138 40h-288q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5h274q36 24 137 155q58 75 107 128 q24 25 35.5 85.5t30.5 126.5t62 108q39 37 90 37q84 0 151 -32.5t102 -101.5t35 -186q0 -93 -48 -192h176q104 0 180 -76t76 -179z" /> - <glyph glyph-name="thumbs_down_alt" unicode="" + <glyph glyph-name="thumbs_down_alt" unicode="" d="M256 1088q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 512q0 35 -21.5 81t-53.5 47q15 17 25 47.5t10 55.5q0 69 -53 119q18 31 18 69q0 37 -17.5 73.5t-47.5 52.5q5 30 5 56q0 85 -49 126t-136 41h-128q-131 0 -342 -73q-5 -2 -29 -10.5 t-35.5 -12.5t-35 -11.5t-38 -11t-33 -6.5t-31.5 -3h-32v-640h32q16 0 35.5 -9t40 -27t38.5 -35.5t40 -44t34.5 -42.5t31.5 -41t23 -30q55 -68 77 -91q41 -43 59.5 -109.5t30.5 -125.5t38 -85q96 0 128 47t32 145q0 59 -48 160.5t-48 159.5h352q50 0 89 38.5t39 89.5z M1536 511q0 -103 -76 -179t-180 -76h-176q48 -99 48 -192q0 -118 -35 -186q-35 -69 -102 -101.5t-151 -32.5q-51 0 -90 37q-34 33 -54 82t-25.5 90.5t-17.5 84.5t-31 64q-48 50 -107 127q-101 131 -137 155h-274q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5 h288q22 0 138 40q128 44 223 66t200 22h112q140 0 226.5 -79t85.5 -216v-5q60 -77 60 -178q0 -22 -3 -43q38 -67 38 -144q0 -36 -9 -69q49 -73 49 -163z" /> - <glyph glyph-name="star_half" unicode="" horiz-adv-x="896" + <glyph glyph-name="star_half" unicode="" horiz-adv-x="896" d="M832 1504v-1339l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41z" /> - <glyph glyph-name="heart_empty" unicode="" horiz-adv-x="1792" + <glyph glyph-name="heart_empty" unicode="" horiz-adv-x="1792" d="M1664 940q0 81 -21.5 143t-55 98.5t-81.5 59.5t-94 31t-98 8t-112 -25.5t-110.5 -64t-86.5 -72t-60 -61.5q-18 -22 -49 -22t-49 22q-24 28 -60 61.5t-86.5 72t-110.5 64t-112 25.5t-98 -8t-94 -31t-81.5 -59.5t-55 -98.5t-21.5 -143q0 -168 187 -355l581 -560l580 559 q188 188 188 356zM1792 940q0 -221 -229 -450l-623 -600q-18 -18 -44 -18t-44 18l-624 602q-10 8 -27.5 26t-55.5 65.5t-68 97.5t-53.5 121t-23.5 138q0 220 127 344t351 124q62 0 126.5 -21.5t120 -58t95.5 -68.5t76 -68q36 36 76 68t95.5 68.5t120 58t126.5 21.5 q224 0 351 -124t127 -344z" /> - <glyph glyph-name="signout" unicode="" horiz-adv-x="1664" + <glyph glyph-name="signout" unicode="" horiz-adv-x="1664" d="M640 96q0 -4 1 -20t0.5 -26.5t-3 -23.5t-10 -19.5t-20.5 -6.5h-320q-119 0 -203.5 84.5t-84.5 203.5v704q0 119 84.5 203.5t203.5 84.5h320q13 0 22.5 -9.5t9.5 -22.5q0 -4 1 -20t0.5 -26.5t-3 -23.5t-10 -19.5t-20.5 -6.5h-320q-66 0 -113 -47t-47 -113v-704 q0 -66 47 -113t113 -47h288h11h13t11.5 -1t11.5 -3t8 -5.5t7 -9t2 -13.5zM1568 640q0 -26 -19 -45l-544 -544q-19 -19 -45 -19t-45 19t-19 45v288h-448q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h448v288q0 26 19 45t45 19t45 -19l544 -544q19 -19 19 -45z" /> - <glyph glyph-name="linkedin_sign" unicode="" + <glyph glyph-name="linkedin_sign" unicode="" d="M237 122h231v694h-231v-694zM483 1030q-1 52 -36 86t-93 34t-94.5 -34t-36.5 -86q0 -51 35.5 -85.5t92.5 -34.5h1q59 0 95 34.5t36 85.5zM1068 122h231v398q0 154 -73 233t-193 79q-136 0 -209 -117h2v101h-231q3 -66 0 -694h231v388q0 38 7 56q15 35 45 59.5t74 24.5 q116 0 116 -157v-371zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="pushpin" unicode="" horiz-adv-x="1152" + <glyph glyph-name="pushpin" unicode="" horiz-adv-x="1152" d="M480 672v448q0 14 -9 23t-23 9t-23 -9t-9 -23v-448q0 -14 9 -23t23 -9t23 9t9 23zM1152 320q0 -26 -19 -45t-45 -19h-429l-51 -483q-2 -12 -10.5 -20.5t-20.5 -8.5h-1q-27 0 -32 27l-76 485h-404q-26 0 -45 19t-19 45q0 123 78.5 221.5t177.5 98.5v512q-52 0 -90 38 t-38 90t38 90t90 38h640q52 0 90 -38t38 -90t-38 -90t-90 -38v-512q99 0 177.5 -98.5t78.5 -221.5z" /> - <glyph glyph-name="external_link" unicode="" horiz-adv-x="1792" + <glyph glyph-name="external_link" unicode="" horiz-adv-x="1792" d="M1408 608v-320q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h704q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v320 q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1792 1472v-512q0 -26 -19 -45t-45 -19t-45 19l-176 176l-652 -652q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l652 652l-176 176q-19 19 -19 45t19 45t45 19h512q26 0 45 -19t19 -45z" /> - <glyph glyph-name="signin" unicode="" + <glyph glyph-name="signin" unicode="" d="M1184 640q0 -26 -19 -45l-544 -544q-19 -19 -45 -19t-45 19t-19 45v288h-448q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h448v288q0 26 19 45t45 19t45 -19l544 -544q19 -19 19 -45zM1536 992v-704q0 -119 -84.5 -203.5t-203.5 -84.5h-320q-13 0 -22.5 9.5t-9.5 22.5 q0 4 -1 20t-0.5 26.5t3 23.5t10 19.5t20.5 6.5h320q66 0 113 47t47 113v704q0 66 -47 113t-113 47h-288h-11h-13t-11.5 1t-11.5 3t-8 5.5t-7 9t-2 13.5q0 4 -1 20t-0.5 26.5t3 23.5t10 19.5t20.5 6.5h320q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="trophy" unicode="" horiz-adv-x="1664" + <glyph glyph-name="trophy" unicode="" horiz-adv-x="1664" d="M458 653q-74 162 -74 371h-256v-96q0 -78 94.5 -162t235.5 -113zM1536 928v96h-256q0 -209 -74 -371q141 29 235.5 113t94.5 162zM1664 1056v-128q0 -71 -41.5 -143t-112 -130t-173 -97.5t-215.5 -44.5q-42 -54 -95 -95q-38 -34 -52.5 -72.5t-14.5 -89.5q0 -54 30.5 -91 t97.5 -37q75 0 133.5 -45.5t58.5 -114.5v-64q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23v64q0 69 58.5 114.5t133.5 45.5q67 0 97.5 37t30.5 91q0 51 -14.5 89.5t-52.5 72.5q-53 41 -95 95q-113 5 -215.5 44.5t-173 97.5t-112 130t-41.5 143v128q0 40 28 68t68 28h288v96 q0 66 47 113t113 47h576q66 0 113 -47t47 -113v-96h288q40 0 68 -28t28 -68z" /> - <glyph glyph-name="github_sign" unicode="" + <glyph glyph-name="github_sign" unicode="" d="M519 336q4 6 -3 13q-9 7 -14 2q-4 -6 3 -13q9 -7 14 -2zM491 377q-5 7 -12 4q-6 -4 0 -12q7 -8 12 -5q6 4 0 13zM450 417q2 4 -5 8q-7 2 -8 -2q-3 -5 4 -8q8 -2 9 2zM471 394q2 1 1.5 4.5t-3.5 5.5q-6 7 -10 3t1 -11q6 -6 11 -2zM557 319q2 7 -9 11q-9 3 -13 -4 q-2 -7 9 -11q9 -3 13 4zM599 316q0 8 -12 8q-10 0 -10 -8t11 -8t11 8zM638 323q-2 7 -13 5t-9 -9q2 -8 12 -6t10 10zM1280 640q0 212 -150 362t-362 150t-362 -150t-150 -362q0 -167 98 -300.5t252 -185.5q18 -3 26.5 5t8.5 20q0 52 -1 95q-6 -1 -15.5 -2.5t-35.5 -2t-48 4 t-43.5 20t-29.5 41.5q-23 59 -57 74q-2 1 -4.5 3.5l-8 8t-7 9.5t4 7.5t19.5 3.5q6 0 15 -2t30 -15.5t33 -35.5q16 -28 37.5 -42t43.5 -14t38 3.5t30 9.5q7 47 33 69q-49 6 -86 18.5t-73 39t-55.5 76t-19.5 119.5q0 79 53 137q-24 62 5 136q19 6 54.5 -7.5t60.5 -29.5l26 -16 q58 17 128 17t128 -17q11 7 28.5 18t55.5 26t57 9q29 -74 5 -136q53 -58 53 -137q0 -57 -14 -100.5t-35.5 -70t-53.5 -44.5t-62.5 -26t-68.5 -12q35 -31 35 -95q0 -40 -0.5 -89t-0.5 -51q0 -12 8.5 -20t26.5 -5q154 52 252 185.5t98 300.5zM1536 1120v-960 q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="upload_alt" unicode="" horiz-adv-x="1664" + <glyph glyph-name="upload_alt" unicode="" horiz-adv-x="1664" d="M1280 64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1536 64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 288v-320q0 -40 -28 -68t-68 -28h-1472q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h427q21 -56 70.5 -92 t110.5 -36h256q61 0 110.5 36t70.5 92h427q40 0 68 -28t28 -68zM1339 936q-17 -40 -59 -40h-256v-448q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v448h-256q-42 0 -59 40q-17 39 14 69l448 448q18 19 45 19t45 -19l448 -448q31 -30 14 -69z" /> - <glyph glyph-name="lemon" unicode="" + <glyph glyph-name="lemon" unicode="" d="M1407 710q0 44 -7 113.5t-18 96.5q-12 30 -17 44t-9 36.5t-4 48.5q0 23 5 68.5t5 67.5q0 37 -10 55q-4 1 -13 1q-19 0 -58 -4.5t-59 -4.5q-60 0 -176 24t-175 24q-43 0 -94.5 -11.5t-85 -23.5t-89.5 -34q-137 -54 -202 -103q-96 -73 -159.5 -189.5t-88 -236t-24.5 -248.5 q0 -40 12.5 -120t12.5 -121q0 -23 -11 -66.5t-11 -65.5t12 -36.5t34 -14.5q24 0 72.5 11t73.5 11q57 0 169.5 -15.5t169.5 -15.5q181 0 284 36q129 45 235.5 152.5t166 245.5t59.5 275zM1535 712q0 -165 -70 -327.5t-196 -288t-281 -180.5q-124 -44 -326 -44 q-57 0 -170 14.5t-169 14.5q-24 0 -72.5 -14.5t-73.5 -14.5q-73 0 -123.5 55.5t-50.5 128.5q0 24 11 68t11 67q0 40 -12.5 120.5t-12.5 121.5q0 111 18 217.5t54.5 209.5t100.5 194t150 156q78 59 232 120q194 78 316 78q60 0 175.5 -24t173.5 -24q19 0 57 5t58 5 q81 0 118 -50.5t37 -134.5q0 -23 -5 -68t-5 -68q0 -13 2 -25t3.5 -16.5t7.5 -20.5t8 -20q16 -40 25 -118.5t9 -136.5z" /> - <glyph glyph-name="phone" unicode="" horiz-adv-x="1408" + <glyph glyph-name="phone" unicode="" horiz-adv-x="1408" d="M1408 296q0 -27 -10 -70.5t-21 -68.5q-21 -50 -122 -106q-94 -51 -186 -51q-27 0 -53 3.5t-57.5 12.5t-47 14.5t-55.5 20.5t-49 18q-98 35 -175 83q-127 79 -264 216t-216 264q-48 77 -83 175q-3 9 -18 49t-20.5 55.5t-14.5 47t-12.5 57.5t-3.5 53q0 92 51 186 q56 101 106 122q25 11 68.5 21t70.5 10q14 0 21 -3q18 -6 53 -76q11 -19 30 -54t35 -63.5t31 -53.5q3 -4 17.5 -25t21.5 -35.5t7 -28.5q0 -20 -28.5 -50t-62 -55t-62 -53t-28.5 -46q0 -9 5 -22.5t8.5 -20.5t14 -24t11.5 -19q76 -137 174 -235t235 -174q2 -1 19 -11.5t24 -14 t20.5 -8.5t22.5 -5q18 0 46 28.5t53 62t55 62t50 28.5q14 0 28.5 -7t35.5 -21.5t25 -17.5q25 -15 53.5 -31t63.5 -35t54 -30q70 -35 76 -53q3 -7 3 -21z" /> - <glyph glyph-name="check_empty" unicode="" horiz-adv-x="1408" + <glyph glyph-name="check_empty" unicode="" horiz-adv-x="1408" d="M1120 1280h-832q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v832q0 66 -47 113t-113 47zM1408 1120v-832q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832 q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="bookmark_empty" unicode="" horiz-adv-x="1280" + <glyph glyph-name="bookmark_empty" unicode="" horiz-adv-x="1280" d="M1152 1280h-1024v-1242l423 406l89 85l89 -85l423 -406v1242zM1164 1408q23 0 44 -9q33 -13 52.5 -41t19.5 -62v-1289q0 -34 -19.5 -62t-52.5 -41q-19 -8 -44 -8q-48 0 -83 32l-441 424l-441 -424q-36 -33 -83 -33q-23 0 -44 9q-33 13 -52.5 41t-19.5 62v1289 q0 34 19.5 62t52.5 41q21 9 44 9h1048z" /> - <glyph glyph-name="phone_sign" unicode="" + <glyph glyph-name="phone_sign" unicode="" d="M1280 343q0 11 -2 16t-18 16.5t-40.5 25t-47.5 26.5t-45.5 25t-28.5 15q-5 3 -19 13t-25 15t-21 5q-15 0 -36.5 -20.5t-39.5 -45t-38.5 -45t-33.5 -20.5q-7 0 -16.5 3.5t-15.5 6.5t-17 9.5t-14 8.5q-99 55 -170 126.5t-127 170.5q-2 3 -8.5 14t-9.5 17t-6.5 15.5 t-3.5 16.5q0 13 20.5 33.5t45 38.5t45 39.5t20.5 36.5q0 10 -5 21t-15 25t-13 19q-3 6 -15 28.5t-25 45.5t-26.5 47.5t-25 40.5t-16.5 18t-16 2q-48 0 -101 -22q-46 -21 -80 -94.5t-34 -130.5q0 -16 2.5 -34t5 -30.5t9 -33t10 -29.5t12.5 -33t11 -30q60 -164 216.5 -320.5 t320.5 -216.5q6 -2 30 -11t33 -12.5t29.5 -10t33 -9t30.5 -5t34 -2.5q57 0 130.5 34t94.5 80q22 53 22 101zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z " /> - <glyph glyph-name="twitter" unicode="" horiz-adv-x="1664" + <glyph glyph-name="twitter" unicode="" horiz-adv-x="1664" d="M1620 1128q-67 -98 -162 -167q1 -14 1 -42q0 -130 -38 -259.5t-115.5 -248.5t-184.5 -210.5t-258 -146t-323 -54.5q-271 0 -496 145q35 -4 78 -4q225 0 401 138q-105 2 -188 64.5t-114 159.5q33 -5 61 -5q43 0 85 11q-112 23 -185.5 111.5t-73.5 205.5v4q68 -38 146 -41 q-66 44 -105 115t-39 154q0 88 44 163q121 -149 294.5 -238.5t371.5 -99.5q-8 38 -8 74q0 134 94.5 228.5t228.5 94.5q140 0 236 -102q109 21 205 78q-37 -115 -142 -178q93 10 186 50z" /> - <glyph glyph-name="facebook" unicode="" horiz-adv-x="1024" + <glyph glyph-name="facebook" unicode="" horiz-adv-x="1024" d="M959 1524v-264h-157q-86 0 -116 -36t-30 -108v-189h293l-39 -296h-254v-759h-306v759h-255v296h255v218q0 186 104 288.5t277 102.5q147 0 228 -12z" /> - <glyph glyph-name="github" unicode="" + <glyph glyph-name="github" unicode="" d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5q0 -251 -146.5 -451.5t-378.5 -277.5q-27 -5 -40 7t-13 30q0 3 0.5 76.5t0.5 134.5q0 97 -52 142q57 6 102.5 18t94 39t81 66.5t53 105t20.5 150.5q0 119 -79 206q37 91 -8 204q-28 9 -81 -11t-92 -44l-38 -24 q-93 26 -192 26t-192 -26q-16 11 -42.5 27t-83.5 38.5t-85 13.5q-45 -113 -8 -204q-79 -87 -79 -206q0 -85 20.5 -150t52.5 -105t80.5 -67t94 -39t102.5 -18q-39 -36 -49 -103q-21 -10 -45 -15t-57 -5t-65.5 21.5t-55.5 62.5q-19 32 -48.5 52t-49.5 24l-20 3q-21 0 -29 -4.5 t-5 -11.5t9 -14t13 -12l7 -5q22 -10 43.5 -38t31.5 -51l10 -23q13 -38 44 -61.5t67 -30t69.5 -7t55.5 3.5l23 4q0 -38 0.5 -88.5t0.5 -54.5q0 -18 -13 -30t-40 -7q-232 77 -378.5 277.5t-146.5 451.5q0 209 103 385.5t279.5 279.5t385.5 103zM291 305q3 7 -7 12 q-10 3 -13 -2q-3 -7 7 -12q9 -6 13 2zM322 271q7 5 -2 16q-10 9 -16 3q-7 -5 2 -16q10 -10 16 -3zM352 226q9 7 0 19q-8 13 -17 6q-9 -5 0 -18t17 -7zM394 184q8 8 -4 19q-12 12 -20 3q-9 -8 4 -19q12 -12 20 -3zM451 159q3 11 -13 16q-15 4 -19 -7t13 -15q15 -6 19 6z M514 154q0 13 -17 11q-16 0 -16 -11q0 -13 17 -11q16 0 16 11zM572 164q-2 11 -18 9q-16 -3 -14 -15t18 -8t14 14z" /> - <glyph glyph-name="unlock" unicode="" horiz-adv-x="1664" + <glyph glyph-name="unlock" unicode="" horiz-adv-x="1664" d="M1664 960v-256q0 -26 -19 -45t-45 -19h-64q-26 0 -45 19t-19 45v256q0 106 -75 181t-181 75t-181 -75t-75 -181v-192h96q40 0 68 -28t28 -68v-576q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v576q0 40 28 68t68 28h672v192q0 185 131.5 316.5t316.5 131.5 t316.5 -131.5t131.5 -316.5z" /> - <glyph glyph-name="credit_card" unicode="" horiz-adv-x="1920" + <glyph glyph-name="credit_card" unicode="" horiz-adv-x="1920" d="M1760 1408q66 0 113 -47t47 -113v-1216q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1600zM160 1280q-13 0 -22.5 -9.5t-9.5 -22.5v-224h1664v224q0 13 -9.5 22.5t-22.5 9.5h-1600zM1760 0q13 0 22.5 9.5t9.5 22.5v608h-1664v-608 q0 -13 9.5 -22.5t22.5 -9.5h1600zM256 128v128h256v-128h-256zM640 128v128h384v-128h-384z" /> - <glyph glyph-name="rss" unicode="" horiz-adv-x="1408" + <glyph glyph-name="rss" unicode="" horiz-adv-x="1408" d="M384 192q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 69q2 -28 -17 -48q-18 -21 -47 -21h-135q-25 0 -43 16.5t-20 41.5q-22 229 -184.5 391.5t-391.5 184.5q-25 2 -41.5 20t-16.5 43v135q0 29 21 47q17 17 43 17h5q160 -13 306 -80.5 t259 -181.5q114 -113 181.5 -259t80.5 -306zM1408 67q2 -27 -18 -47q-18 -20 -46 -20h-143q-26 0 -44.5 17.5t-19.5 42.5q-12 215 -101 408.5t-231.5 336t-336 231.5t-408.5 102q-25 1 -42.5 19.5t-17.5 43.5v143q0 28 20 46q18 18 44 18h3q262 -13 501.5 -120t425.5 -294 q187 -186 294 -425.5t120 -501.5z" /> - <glyph glyph-name="hdd" unicode="" + <glyph glyph-name="hdd" unicode="" d="M1040 320q0 -33 -23.5 -56.5t-56.5 -23.5t-56.5 23.5t-23.5 56.5t23.5 56.5t56.5 23.5t56.5 -23.5t23.5 -56.5zM1296 320q0 -33 -23.5 -56.5t-56.5 -23.5t-56.5 23.5t-23.5 56.5t23.5 56.5t56.5 23.5t56.5 -23.5t23.5 -56.5zM1408 160v320q0 13 -9.5 22.5t-22.5 9.5 h-1216q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h1216q13 0 22.5 9.5t9.5 22.5zM178 640h1180l-157 482q-4 13 -16 21.5t-26 8.5h-782q-14 0 -26 -8.5t-16 -21.5zM1536 480v-320q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113v320q0 25 16 75 l197 606q17 53 63 86t101 33h782q55 0 101 -33t63 -86l197 -606q16 -50 16 -75z" /> - <glyph glyph-name="bullhorn" unicode="" horiz-adv-x="1792" + <glyph glyph-name="bullhorn" unicode="" horiz-adv-x="1792" d="M1664 896q53 0 90.5 -37.5t37.5 -90.5t-37.5 -90.5t-90.5 -37.5v-384q0 -52 -38 -90t-90 -38q-417 347 -812 380q-58 -19 -91 -66t-31 -100.5t40 -92.5q-20 -33 -23 -65.5t6 -58t33.5 -55t48 -50t61.5 -50.5q-29 -58 -111.5 -83t-168.5 -11.5t-132 55.5q-7 23 -29.5 87.5 t-32 94.5t-23 89t-15 101t3.5 98.5t22 110.5h-122q-66 0 -113 47t-47 113v192q0 66 47 113t113 47h480q435 0 896 384q52 0 90 -38t38 -90v-384zM1536 292v954q-394 -302 -768 -343v-270q377 -42 768 -341z" /> - <glyph glyph-name="bell" unicode="" horiz-adv-x="1792" + <glyph glyph-name="bell" unicode="" horiz-adv-x="1792" d="M912 -160q0 16 -16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5q16 0 16 16zM246 128h1300q-266 300 -266 832q0 51 -24 105t-69 103t-121.5 80.5t-169.5 31.5t-169.5 -31.5t-121.5 -80.5t-69 -103t-24 -105q0 -532 -266 -832z M1728 128q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-181 75t-75 181h-448q-52 0 -90 38t-38 90q50 42 91 88t85 119.5t74.5 158.5t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q190 -28 307 -158.5 t117 -282.5q0 -139 19.5 -260t50 -206t74.5 -158.5t85 -119.5t91 -88z" /> - <glyph glyph-name="certificate" unicode="" + <glyph glyph-name="certificate" unicode="" d="M1376 640l138 -135q30 -28 20 -70q-12 -41 -52 -51l-188 -48l53 -186q12 -41 -19 -70q-29 -31 -70 -19l-186 53l-48 -188q-10 -40 -51 -52q-12 -2 -19 -2q-31 0 -51 22l-135 138l-135 -138q-28 -30 -70 -20q-41 11 -51 52l-48 188l-186 -53q-41 -12 -70 19q-31 29 -19 70 l53 186l-188 48q-40 10 -52 51q-10 42 20 70l138 135l-138 135q-30 28 -20 70q12 41 52 51l188 48l-53 186q-12 41 19 70q29 31 70 19l186 -53l48 188q10 41 51 51q41 12 70 -19l135 -139l135 139q29 30 70 19q41 -10 51 -51l48 -188l186 53q41 12 70 -19q31 -29 19 -70 l-53 -186l188 -48q40 -10 52 -51q10 -42 -20 -70z" /> - <glyph glyph-name="hand_right" unicode="" horiz-adv-x="1792" + <glyph glyph-name="hand_right" unicode="" horiz-adv-x="1792" d="M256 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 768q0 51 -39 89.5t-89 38.5h-576q0 20 15 48.5t33 55t33 68t15 84.5q0 67 -44.5 97.5t-115.5 30.5q-24 0 -90 -139q-24 -44 -37 -65q-40 -64 -112 -145q-71 -81 -101 -106 q-69 -57 -140 -57h-32v-640h32q72 0 167 -32t193.5 -64t179.5 -32q189 0 189 167q0 26 -5 56q30 16 47.5 52.5t17.5 73.5t-18 69q53 50 53 119q0 25 -10 55.5t-25 47.5h331q52 0 90 38t38 90zM1792 769q0 -105 -75.5 -181t-180.5 -76h-169q-4 -62 -37 -119q3 -21 3 -43 q0 -101 -60 -178q1 -139 -85 -219.5t-227 -80.5q-133 0 -322 69q-164 59 -223 59h-288q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5h288q10 0 21.5 4.5t23.5 14t22.5 18t24 22.5t20.5 21.5t19 21.5t14 17q65 74 100 129q13 21 33 62t37 72t40.5 63t55 49.5 t69.5 17.5q125 0 206.5 -67t81.5 -189q0 -68 -22 -128h374q104 0 180 -76t76 -179z" /> - <glyph glyph-name="hand_left" unicode="" horiz-adv-x="1792" + <glyph glyph-name="hand_left" unicode="" horiz-adv-x="1792" d="M1376 128h32v640h-32q-35 0 -67.5 12t-62.5 37t-50 46t-49 54q-8 9 -12 14q-72 81 -112 145q-14 22 -38 68q-1 3 -10.5 22.5t-18.5 36t-20 35.5t-21.5 30.5t-18.5 11.5q-71 0 -115.5 -30.5t-44.5 -97.5q0 -43 15 -84.5t33 -68t33 -55t15 -48.5h-576q-50 0 -89 -38.5 t-39 -89.5q0 -52 38 -90t90 -38h331q-15 -17 -25 -47.5t-10 -55.5q0 -69 53 -119q-18 -32 -18 -69t17.5 -73.5t47.5 -52.5q-4 -24 -4 -56q0 -85 48.5 -126t135.5 -41q84 0 183 32t194 64t167 32zM1664 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45z M1792 768v-640q0 -53 -37.5 -90.5t-90.5 -37.5h-288q-59 0 -223 -59q-190 -69 -317 -69q-142 0 -230 77.5t-87 217.5l1 5q-61 76 -61 178q0 22 3 43q-33 57 -37 119h-169q-105 0 -180.5 76t-75.5 181q0 103 76 179t180 76h374q-22 60 -22 128q0 122 81.5 189t206.5 67 q38 0 69.5 -17.5t55 -49.5t40.5 -63t37 -72t33 -62q35 -55 100 -129q2 -3 14 -17t19 -21.5t20.5 -21.5t24 -22.5t22.5 -18t23.5 -14t21.5 -4.5h288q53 0 90.5 -37.5t37.5 -90.5z" /> - <glyph glyph-name="hand_up" unicode="" + <glyph glyph-name="hand_up" unicode="" d="M1280 -64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 700q0 189 -167 189q-26 0 -56 -5q-16 30 -52.5 47.5t-73.5 17.5t-69 -18q-50 53 -119 53q-25 0 -55.5 -10t-47.5 -25v331q0 52 -38 90t-90 38q-51 0 -89.5 -39t-38.5 -89v-576 q-20 0 -48.5 15t-55 33t-68 33t-84.5 15q-67 0 -97.5 -44.5t-30.5 -115.5q0 -24 139 -90q44 -24 65 -37q64 -40 145 -112q81 -71 106 -101q57 -69 57 -140v-32h640v32q0 72 32 167t64 193.5t32 179.5zM1536 705q0 -133 -69 -322q-59 -164 -59 -223v-288q0 -53 -37.5 -90.5 t-90.5 -37.5h-640q-53 0 -90.5 37.5t-37.5 90.5v288q0 10 -4.5 21.5t-14 23.5t-18 22.5t-22.5 24t-21.5 20.5t-21.5 19t-17 14q-74 65 -129 100q-21 13 -62 33t-72 37t-63 40.5t-49.5 55t-17.5 69.5q0 125 67 206.5t189 81.5q68 0 128 -22v374q0 104 76 180t179 76 q105 0 181 -75.5t76 -180.5v-169q62 -4 119 -37q21 3 43 3q101 0 178 -60q139 1 219.5 -85t80.5 -227z" /> - <glyph glyph-name="hand_down" unicode="" + <glyph glyph-name="hand_down" unicode="" d="M1408 576q0 84 -32 183t-64 194t-32 167v32h-640v-32q0 -35 -12 -67.5t-37 -62.5t-46 -50t-54 -49q-9 -8 -14 -12q-81 -72 -145 -112q-22 -14 -68 -38q-3 -1 -22.5 -10.5t-36 -18.5t-35.5 -20t-30.5 -21.5t-11.5 -18.5q0 -71 30.5 -115.5t97.5 -44.5q43 0 84.5 15t68 33 t55 33t48.5 15v-576q0 -50 38.5 -89t89.5 -39q52 0 90 38t38 90v331q46 -35 103 -35q69 0 119 53q32 -18 69 -18t73.5 17.5t52.5 47.5q24 -4 56 -4q85 0 126 48.5t41 135.5zM1280 1344q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1536 580 q0 -142 -77.5 -230t-217.5 -87l-5 1q-76 -61 -178 -61q-22 0 -43 3q-54 -30 -119 -37v-169q0 -105 -76 -180.5t-181 -75.5q-103 0 -179 76t-76 180v374q-54 -22 -128 -22q-121 0 -188.5 81.5t-67.5 206.5q0 38 17.5 69.5t49.5 55t63 40.5t72 37t62 33q55 35 129 100 q3 2 17 14t21.5 19t21.5 20.5t22.5 24t18 22.5t14 23.5t4.5 21.5v288q0 53 37.5 90.5t90.5 37.5h640q53 0 90.5 -37.5t37.5 -90.5v-288q0 -59 59 -223q69 -190 69 -317z" /> - <glyph glyph-name="circle_arrow_left" unicode="" + <glyph glyph-name="circle_arrow_left" unicode="" d="M1280 576v128q0 26 -19 45t-45 19h-502l189 189q19 19 19 45t-19 45l-91 91q-18 18 -45 18t-45 -18l-362 -362l-91 -91q-18 -18 -18 -45t18 -45l91 -91l362 -362q18 -18 45 -18t45 18l91 91q18 18 18 45t-18 45l-189 189h502q26 0 45 19t19 45zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="circle_arrow_right" unicode="" + <glyph glyph-name="circle_arrow_right" unicode="" d="M1285 640q0 27 -18 45l-91 91l-362 362q-18 18 -45 18t-45 -18l-91 -91q-18 -18 -18 -45t18 -45l189 -189h-502q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h502l-189 -189q-19 -19 -19 -45t19 -45l91 -91q18 -18 45 -18t45 18l362 362l91 91q18 18 18 45zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="circle_arrow_up" unicode="" + <glyph glyph-name="circle_arrow_up" unicode="" d="M1284 641q0 27 -18 45l-362 362l-91 91q-18 18 -45 18t-45 -18l-91 -91l-362 -362q-18 -18 -18 -45t18 -45l91 -91q18 -18 45 -18t45 18l189 189v-502q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v502l189 -189q19 -19 45 -19t45 19l91 91q18 18 18 45zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="circle_arrow_down" unicode="" + <glyph glyph-name="circle_arrow_down" unicode="" d="M1284 639q0 27 -18 45l-91 91q-18 18 -45 18t-45 -18l-189 -189v502q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-502l-189 189q-19 19 -45 19t-45 -19l-91 -91q-18 -18 -18 -45t18 -45l362 -362l91 -91q18 -18 45 -18t45 18l91 91l362 362q18 18 18 45zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="globe" unicode="" + <glyph glyph-name="globe" unicode="" d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM1042 887q-2 -1 -9.5 -9.5t-13.5 -9.5q2 0 4.5 5t5 11t3.5 7q6 7 22 15q14 6 52 12q34 8 51 -11 q-2 2 9.5 13t14.5 12q3 2 15 4.5t15 7.5l2 22q-12 -1 -17.5 7t-6.5 21q0 -2 -6 -8q0 7 -4.5 8t-11.5 -1t-9 -1q-10 3 -15 7.5t-8 16.5t-4 15q-2 5 -9.5 11t-9.5 10q-1 2 -2.5 5.5t-3 6.5t-4 5.5t-5.5 2.5t-7 -5t-7.5 -10t-4.5 -5q-3 2 -6 1.5t-4.5 -1t-4.5 -3t-5 -3.5 q-3 -2 -8.5 -3t-8.5 -2q15 5 -1 11q-10 4 -16 3q9 4 7.5 12t-8.5 14h5q-1 4 -8.5 8.5t-17.5 8.5t-13 6q-8 5 -34 9.5t-33 0.5q-5 -6 -4.5 -10.5t4 -14t3.5 -12.5q1 -6 -5.5 -13t-6.5 -12q0 -7 14 -15.5t10 -21.5q-3 -8 -16 -16t-16 -12q-5 -8 -1.5 -18.5t10.5 -16.5 @@ -610,202 +610,202 @@ q-3 3 -4 3q7 -3 28.5 1.5t27.5 -1.5q15 -11 22 2q0 1 -2.5 9.5t-0.5 13.5q5 -27 29 - t15.5 6.5t12.5 8q21 19 15 35q7 0 11 9q-1 0 -5 3t-7.5 5t-4.5 2q9 5 2 16q5 3 7.5 11t7.5 10q9 -12 21 -2q8 8 1 16q5 7 20.5 10.5t18.5 9.5q7 -2 8 2t1 12t3 12q4 5 15 9t13 5l17 11q3 4 0 4q18 -2 31 11q10 11 -6 20q3 6 -3 9.5t-15 5.5q3 1 11.5 0.5t10.5 1.5 q15 10 -7 16q-17 5 -43 -12zM879 10q206 36 351 189q-3 3 -12.5 4.5t-12.5 3.5q-18 7 -24 8q1 7 -2.5 13t-8 9t-12.5 8t-11 7q-2 2 -7 6t-7 5.5t-7.5 4.5t-8.5 2t-10 -1l-3 -1q-3 -1 -5.5 -2.5t-5.5 -3t-4 -3t0 -2.5q-21 17 -36 22q-5 1 -11 5.5t-10.5 7t-10 1.5t-11.5 -7 q-5 -5 -6 -15t-2 -13q-7 5 0 17.5t2 18.5q-3 6 -10.5 4.5t-12 -4.5t-11.5 -8.5t-9 -6.5t-8.5 -5.5t-8.5 -7.5q-3 -4 -6 -12t-5 -11q-2 4 -11.5 6.5t-9.5 5.5q2 -10 4 -35t5 -38q7 -31 -12 -48q-27 -25 -29 -40q-4 -22 12 -26q0 -7 -8 -20.5t-7 -21.5q0 -6 2 -16z" /> - <glyph glyph-name="wrench" unicode="" horiz-adv-x="1664" + <glyph glyph-name="wrench" unicode="" horiz-adv-x="1664" d="M384 64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1028 484l-682 -682q-37 -37 -90 -37q-52 0 -91 37l-106 108q-38 36 -38 90q0 53 38 91l681 681q39 -98 114.5 -173.5t173.5 -114.5zM1662 919q0 -39 -23 -106q-47 -134 -164.5 -217.5 t-258.5 -83.5q-185 0 -316.5 131.5t-131.5 316.5t131.5 316.5t316.5 131.5q58 0 121.5 -16.5t107.5 -46.5q16 -11 16 -28t-16 -28l-293 -169v-224l193 -107q5 3 79 48.5t135.5 81t70.5 35.5q15 0 23.5 -10t8.5 -25z" /> - <glyph glyph-name="tasks" unicode="" horiz-adv-x="1792" + <glyph glyph-name="tasks" unicode="" horiz-adv-x="1792" d="M1024 128h640v128h-640v-128zM640 640h1024v128h-1024v-128zM1280 1152h384v128h-384v-128zM1792 320v-256q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 832v-256q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19 t-19 45v256q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 1344v-256q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1664q26 0 45 -19t19 -45z" /> - <glyph glyph-name="filter" unicode="" horiz-adv-x="1408" + <glyph glyph-name="filter" unicode="" horiz-adv-x="1408" d="M1403 1241q17 -41 -14 -70l-493 -493v-742q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-256 256q-19 19 -19 45v486l-493 493q-31 29 -14 70q17 39 59 39h1280q42 0 59 -39z" /> - <glyph glyph-name="briefcase" unicode="" horiz-adv-x="1792" + <glyph glyph-name="briefcase" unicode="" horiz-adv-x="1792" d="M640 1280h512v128h-512v-128zM1792 640v-480q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v480h672v-160q0 -26 19 -45t45 -19h320q26 0 45 19t19 45v160h672zM1024 640v-128h-256v128h256zM1792 1120v-384h-1792v384q0 66 47 113t113 47h352v160q0 40 28 68 t68 28h576q40 0 68 -28t28 -68v-160h352q66 0 113 -47t47 -113z" /> - <glyph glyph-name="fullscreen" unicode="" + <glyph glyph-name="fullscreen" unicode="" d="M1283 995l-355 -355l355 -355l144 144q29 31 70 14q39 -17 39 -59v-448q0 -26 -19 -45t-45 -19h-448q-42 0 -59 40q-17 39 14 69l144 144l-355 355l-355 -355l144 -144q31 -30 14 -69q-17 -40 -59 -40h-448q-26 0 -45 19t-19 45v448q0 42 40 59q39 17 69 -14l144 -144 l355 355l-355 355l-144 -144q-19 -19 -45 -19q-12 0 -24 5q-40 17 -40 59v448q0 26 19 45t45 19h448q42 0 59 -40q17 -39 -14 -69l-144 -144l355 -355l355 355l-144 144q-31 30 -14 69q17 40 59 40h448q26 0 45 -19t19 -45v-448q0 -42 -39 -59q-13 -5 -25 -5q-26 0 -45 19z " /> - <glyph glyph-name="group" unicode="" horiz-adv-x="1920" + <glyph glyph-name="group" unicode="" horiz-adv-x="1920" d="M593 640q-162 -5 -265 -128h-134q-82 0 -138 40.5t-56 118.5q0 353 124 353q6 0 43.5 -21t97.5 -42.5t119 -21.5q67 0 133 23q-5 -37 -5 -66q0 -139 81 -256zM1664 3q0 -120 -73 -189.5t-194 -69.5h-874q-121 0 -194 69.5t-73 189.5q0 53 3.5 103.5t14 109t26.5 108.5 t43 97.5t62 81t85.5 53.5t111.5 20q10 0 43 -21.5t73 -48t107 -48t135 -21.5t135 21.5t107 48t73 48t43 21.5q61 0 111.5 -20t85.5 -53.5t62 -81t43 -97.5t26.5 -108.5t14 -109t3.5 -103.5zM640 1280q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75 t75 -181zM1344 896q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5zM1920 671q0 -78 -56 -118.5t-138 -40.5h-134q-103 123 -265 128q81 117 81 256q0 29 -5 66q66 -23 133 -23q59 0 119 21.5t97.5 42.5 t43.5 21q124 0 124 -353zM1792 1280q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181z" /> - <glyph glyph-name="link" unicode="" horiz-adv-x="1664" + <glyph glyph-name="link" unicode="" horiz-adv-x="1664" d="M1456 320q0 40 -28 68l-208 208q-28 28 -68 28q-42 0 -72 -32q3 -3 19 -18.5t21.5 -21.5t15 -19t13 -25.5t3.5 -27.5q0 -40 -28 -68t-68 -28q-15 0 -27.5 3.5t-25.5 13t-19 15t-21.5 21.5t-18.5 19q-33 -31 -33 -73q0 -40 28 -68l206 -207q27 -27 68 -27q40 0 68 26 l147 146q28 28 28 67zM753 1025q0 40 -28 68l-206 207q-28 28 -68 28q-39 0 -68 -27l-147 -146q-28 -28 -28 -67q0 -40 28 -68l208 -208q27 -27 68 -27q42 0 72 31q-3 3 -19 18.5t-21.5 21.5t-15 19t-13 25.5t-3.5 27.5q0 40 28 68t68 28q15 0 27.5 -3.5t25.5 -13t19 -15 t21.5 -21.5t18.5 -19q33 31 33 73zM1648 320q0 -120 -85 -203l-147 -146q-83 -83 -203 -83q-121 0 -204 85l-206 207q-83 83 -83 203q0 123 88 209l-88 88q-86 -88 -208 -88q-120 0 -204 84l-208 208q-84 84 -84 204t85 203l147 146q83 83 203 83q121 0 204 -85l206 -207 q83 -83 83 -203q0 -123 -88 -209l88 -88q86 88 208 88q120 0 204 -84l208 -208q84 -84 84 -204z" /> - <glyph glyph-name="cloud" unicode="" horiz-adv-x="1920" + <glyph glyph-name="cloud" unicode="" horiz-adv-x="1920" d="M1920 384q0 -159 -112.5 -271.5t-271.5 -112.5h-1088q-185 0 -316.5 131.5t-131.5 316.5q0 132 71 241.5t187 163.5q-2 28 -2 43q0 212 150 362t362 150q158 0 286.5 -88t187.5 -230q70 62 166 62q106 0 181 -75t75 -181q0 -75 -41 -138q129 -30 213 -134.5t84 -239.5z " /> - <glyph glyph-name="beaker" unicode="" horiz-adv-x="1664" + <glyph glyph-name="beaker" unicode="" horiz-adv-x="1664" d="M1527 88q56 -89 21.5 -152.5t-140.5 -63.5h-1152q-106 0 -140.5 63.5t21.5 152.5l503 793v399h-64q-26 0 -45 19t-19 45t19 45t45 19h512q26 0 45 -19t19 -45t-19 -45t-45 -19h-64v-399zM748 813l-272 -429h712l-272 429l-20 31v37v399h-128v-399v-37z" /> - <glyph glyph-name="cut" unicode="" horiz-adv-x="1792" + <glyph glyph-name="cut" unicode="" horiz-adv-x="1792" d="M960 640q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1260 576l507 -398q28 -20 25 -56q-5 -35 -35 -51l-128 -64q-13 -7 -29 -7q-17 0 -31 8l-690 387l-110 -66q-8 -4 -12 -5q14 -49 10 -97q-7 -77 -56 -147.5t-132 -123.5q-132 -84 -277 -84 q-136 0 -222 78q-90 84 -79 207q7 76 56 147t131 124q132 84 278 84q83 0 151 -31q9 13 22 22l122 73l-122 73q-13 9 -22 22q-68 -31 -151 -31q-146 0 -278 84q-82 53 -131 124t-56 147q-5 59 15.5 113t63.5 93q85 79 222 79q145 0 277 -84q83 -52 132 -123t56 -148 q4 -48 -10 -97q4 -1 12 -5l110 -66l690 387q14 8 31 8q16 0 29 -7l128 -64q30 -16 35 -51q3 -36 -25 -56zM579 836q46 42 21 108t-106 117q-92 59 -192 59q-74 0 -113 -36q-46 -42 -21 -108t106 -117q92 -59 192 -59q74 0 113 36zM494 91q81 51 106 117t-21 108 q-39 36 -113 36q-100 0 -192 -59q-81 -51 -106 -117t21 -108q39 -36 113 -36q100 0 192 59zM672 704l96 -58v11q0 36 33 56l14 8l-79 47l-26 -26q-3 -3 -10 -11t-12 -12q-2 -2 -4 -3.5t-3 -2.5zM896 480l96 -32l736 576l-128 64l-768 -431v-113l-160 -96l9 -8q2 -2 7 -6 q4 -4 11 -12t11 -12l26 -26zM1600 64l128 64l-520 408l-177 -138q-2 -3 -13 -7z" /> - <glyph glyph-name="copy" unicode="" horiz-adv-x="1792" + <glyph glyph-name="copy" unicode="" horiz-adv-x="1792" d="M1696 1152q40 0 68 -28t28 -68v-1216q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v288h-544q-40 0 -68 28t-28 68v672q0 40 20 88t48 76l408 408q28 28 76 48t88 20h416q40 0 68 -28t28 -68v-328q68 40 128 40h416zM1152 939l-299 -299h299v299zM512 1323l-299 -299 h299v299zM708 676l316 316v416h-384v-416q0 -40 -28 -68t-68 -28h-416v-640h512v256q0 40 20 88t48 76zM1664 -128v1152h-384v-416q0 -40 -28 -68t-68 -28h-416v-640h896z" /> - <glyph glyph-name="paper_clip" unicode="" horiz-adv-x="1408" + <glyph glyph-name="paper_clip" unicode="" horiz-adv-x="1408" d="M1404 151q0 -117 -79 -196t-196 -79q-135 0 -235 100l-777 776q-113 115 -113 271q0 159 110 270t269 111q158 0 273 -113l605 -606q10 -10 10 -22q0 -16 -30.5 -46.5t-46.5 -30.5q-13 0 -23 10l-606 607q-79 77 -181 77q-106 0 -179 -75t-73 -181q0 -105 76 -181 l776 -777q63 -63 145 -63q64 0 106 42t42 106q0 82 -63 145l-581 581q-26 24 -60 24q-29 0 -48 -19t-19 -48q0 -32 25 -59l410 -410q10 -10 10 -22q0 -16 -31 -47t-47 -31q-12 0 -22 10l-410 410q-63 61 -63 149q0 82 57 139t139 57q88 0 149 -63l581 -581q100 -98 100 -235 z" /> - <glyph glyph-name="save" unicode="" + <glyph glyph-name="save" unicode="" d="M384 0h768v384h-768v-384zM1280 0h128v896q0 14 -10 38.5t-20 34.5l-281 281q-10 10 -34 20t-39 10v-416q0 -40 -28 -68t-68 -28h-576q-40 0 -68 28t-28 68v416h-128v-1280h128v416q0 40 28 68t68 28h832q40 0 68 -28t28 -68v-416zM896 928v320q0 13 -9.5 22.5t-22.5 9.5 h-192q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h192q13 0 22.5 9.5t9.5 22.5zM1536 896v-928q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h928q40 0 88 -20t76 -48l280 -280q28 -28 48 -76t20 -88z" /> - <glyph glyph-name="sign_blank" unicode="" + <glyph glyph-name="sign_blank" unicode="" d="M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="reorder" unicode="" + <glyph glyph-name="reorder" unicode="" d="M1536 192v-128q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1536 704v-128q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1536 1216v-128q0 -26 -19 -45 t-45 -19h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45z" /> - <glyph glyph-name="ul" unicode="" horiz-adv-x="1792" + <glyph glyph-name="ul" unicode="" horiz-adv-x="1792" d="M384 128q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM384 640q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5 t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5zM384 1152q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1792 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5z M1792 1248v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5z" /> - <glyph glyph-name="ol" unicode="" horiz-adv-x="1792" + <glyph glyph-name="ol" unicode="" horiz-adv-x="1792" d="M381 -84q0 -80 -54.5 -126t-135.5 -46q-106 0 -172 66l57 88q49 -45 106 -45q29 0 50.5 14.5t21.5 42.5q0 64 -105 56l-26 56q8 10 32.5 43.5t42.5 54t37 38.5v1q-16 0 -48.5 -1t-48.5 -1v-53h-106v152h333v-88l-95 -115q51 -12 81 -49t30 -88zM383 543v-159h-362 q-6 36 -6 54q0 51 23.5 93t56.5 68t66 47.5t56.5 43.5t23.5 45q0 25 -14.5 38.5t-39.5 13.5q-46 0 -81 -58l-85 59q24 51 71.5 79.5t105.5 28.5q73 0 123 -41.5t50 -112.5q0 -50 -34 -91.5t-75 -64.5t-75.5 -50.5t-35.5 -52.5h127v60h105zM1792 224v-192q0 -13 -9.5 -22.5 t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 14 9 23t23 9h1216q13 0 22.5 -9.5t9.5 -22.5zM384 1123v-99h-335v99h107q0 41 0.5 121.5t0.5 121.5v12h-2q-8 -17 -50 -54l-71 76l136 127h106v-404h108zM1792 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216 q-13 0 -22.5 9.5t-9.5 22.5v192q0 14 9 23t23 9h1216q13 0 22.5 -9.5t9.5 -22.5zM1792 1248v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5z" /> - <glyph glyph-name="strikethrough" unicode="" horiz-adv-x="1792" + <glyph glyph-name="strikethrough" unicode="" horiz-adv-x="1792" d="M1760 640q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1728q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h1728zM483 704q-28 35 -51 80q-48 98 -48 188q0 181 134 309q133 127 393 127q50 0 167 -19q66 -12 177 -48q10 -38 21 -118q14 -123 14 -183q0 -18 -5 -45l-12 -3l-84 6 l-14 2q-50 149 -103 205q-88 91 -210 91q-114 0 -182 -59q-67 -58 -67 -146q0 -73 66 -140t279 -129q69 -20 173 -66q58 -28 95 -52h-743zM990 448h411q7 -39 7 -92q0 -111 -41 -212q-23 -56 -71 -104q-37 -35 -109 -81q-80 -48 -153 -66q-80 -21 -203 -21q-114 0 -195 23 l-140 40q-57 16 -72 28q-8 8 -8 22v13q0 108 -2 156q-1 30 0 68l2 37v44l102 2q15 -34 30 -71t22.5 -56t12.5 -27q35 -57 80 -94q43 -36 105 -57q59 -22 132 -22q64 0 139 27q77 26 122 86q47 61 47 129q0 84 -81 157q-34 29 -137 71z" /> - <glyph glyph-name="underline" unicode="" + <glyph glyph-name="underline" unicode="" d="M48 1313q-37 2 -45 4l-3 88q13 1 40 1q60 0 112 -4q132 -7 166 -7q86 0 168 3q116 4 146 5q56 0 86 2l-1 -14l2 -64v-9q-60 -9 -124 -9q-60 0 -79 -25q-13 -14 -13 -132q0 -13 0.5 -32.5t0.5 -25.5l1 -229l14 -280q6 -124 51 -202q35 -59 96 -92q88 -47 177 -47 q104 0 191 28q56 18 99 51q48 36 65 64q36 56 53 114q21 73 21 229q0 79 -3.5 128t-11 122.5t-13.5 159.5l-4 59q-5 67 -24 88q-34 35 -77 34l-100 -2l-14 3l2 86h84l205 -10q76 -3 196 10l18 -2q6 -38 6 -51q0 -7 -4 -31q-45 -12 -84 -13q-73 -11 -79 -17q-15 -15 -15 -41 q0 -7 1.5 -27t1.5 -31q8 -19 22 -396q6 -195 -15 -304q-15 -76 -41 -122q-38 -65 -112 -123q-75 -57 -182 -89q-109 -33 -255 -33q-167 0 -284 46q-119 47 -179 122q-61 76 -83 195q-16 80 -16 237v333q0 188 -17 213q-25 36 -147 39zM1536 -96v64q0 14 -9 23t-23 9h-1472 q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h1472q14 0 23 9t9 23z" /> - <glyph glyph-name="table" unicode="" horiz-adv-x="1664" + <glyph glyph-name="table" unicode="" horiz-adv-x="1664" d="M512 160v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM512 544v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1024 160v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23 v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM512 928v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1024 544v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1536 160v192 q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1024 928v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1536 544v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192 q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1536 928v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1664 1248v-1088q0 -66 -47 -113t-113 -47h-1344q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1344q66 0 113 -47t47 -113 z" /> - <glyph glyph-name="magic" unicode="" horiz-adv-x="1664" + <glyph glyph-name="magic" unicode="" horiz-adv-x="1664" d="M1190 955l293 293l-107 107l-293 -293zM1637 1248q0 -27 -18 -45l-1286 -1286q-18 -18 -45 -18t-45 18l-198 198q-18 18 -18 45t18 45l1286 1286q18 18 45 18t45 -18l198 -198q18 -18 18 -45zM286 1438l98 -30l-98 -30l-30 -98l-30 98l-98 30l98 30l30 98zM636 1276 l196 -60l-196 -60l-60 -196l-60 196l-196 60l196 60l60 196zM1566 798l98 -30l-98 -30l-30 -98l-30 98l-98 30l98 30l30 98zM926 1438l98 -30l-98 -30l-30 -98l-30 98l-98 30l98 30l30 98z" /> - <glyph glyph-name="truck" unicode="" horiz-adv-x="1792" + <glyph glyph-name="truck" unicode="" horiz-adv-x="1792" d="M640 128q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM256 640h384v256h-158q-13 0 -22 -9l-195 -195q-9 -9 -9 -22v-30zM1536 128q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM1792 1216v-1024q0 -15 -4 -26.5t-13.5 -18.5 t-16.5 -11.5t-23.5 -6t-22.5 -2t-25.5 0t-22.5 0.5q0 -106 -75 -181t-181 -75t-181 75t-75 181h-384q0 -106 -75 -181t-181 -75t-181 75t-75 181h-64q-3 0 -22.5 -0.5t-25.5 0t-22.5 2t-23.5 6t-16.5 11.5t-13.5 18.5t-4 26.5q0 26 19 45t45 19v320q0 8 -0.5 35t0 38 t2.5 34.5t6.5 37t14 30.5t22.5 30l198 198q19 19 50.5 32t58.5 13h160v192q0 26 19 45t45 19h1024q26 0 45 -19t19 -45z" /> - <glyph glyph-name="pinterest" unicode="" + <glyph glyph-name="pinterest" unicode="" d="M1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103q-111 0 -218 32q59 93 78 164q9 34 54 211q20 -39 73 -67.5t114 -28.5q121 0 216 68.5t147 188.5t52 270q0 114 -59.5 214t-172.5 163t-255 63q-105 0 -196 -29t-154.5 -77t-109 -110.5t-67 -129.5t-21.5 -134 q0 -104 40 -183t117 -111q30 -12 38 20q2 7 8 31t8 30q6 23 -11 43q-51 61 -51 151q0 151 104.5 259.5t273.5 108.5q151 0 235.5 -82t84.5 -213q0 -170 -68.5 -289t-175.5 -119q-61 0 -98 43.5t-23 104.5q8 35 26.5 93.5t30 103t11.5 75.5q0 50 -27 83t-77 33 q-62 0 -105 -57t-43 -142q0 -73 25 -122l-99 -418q-17 -70 -13 -177q-206 91 -333 281t-127 423q0 209 103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="pinterest_sign" unicode="" + <glyph glyph-name="pinterest_sign" unicode="" d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-725q85 122 108 210q9 34 53 209q21 -39 73.5 -67t112.5 -28q181 0 295.5 147.5t114.5 373.5q0 84 -35 162.5t-96.5 139t-152.5 97t-197 36.5q-104 0 -194.5 -28.5t-153 -76.5 t-107.5 -109.5t-66.5 -128t-21.5 -132.5q0 -102 39.5 -180t116.5 -110q13 -5 23.5 0t14.5 19q10 44 15 61q6 23 -11 42q-50 62 -50 150q0 150 103.5 256.5t270.5 106.5q149 0 232.5 -81t83.5 -210q0 -168 -67.5 -286t-173.5 -118q-60 0 -97 43.5t-23 103.5q8 34 26.5 92.5 t29.5 102t11 74.5q0 49 -26.5 81.5t-75.5 32.5q-61 0 -103.5 -56.5t-42.5 -139.5q0 -72 24 -121l-98 -414q-24 -100 -7 -254h-183q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960z" /> - <glyph glyph-name="google_plus_sign" unicode="" + <glyph glyph-name="google_plus_sign" unicode="" d="M917 631q0 26 -6 64h-362v-132h217q-3 -24 -16.5 -50t-37.5 -53t-66.5 -44.5t-96.5 -17.5q-99 0 -169 71t-70 171t70 171t169 71q92 0 153 -59l104 101q-108 100 -257 100q-160 0 -272 -112.5t-112 -271.5t112 -271.5t272 -112.5q165 0 266.5 105t101.5 270zM1262 585 h109v110h-109v110h-110v-110h-110v-110h110v-110h110v110zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="google_plus" unicode="" horiz-adv-x="2304" + <glyph glyph-name="google_plus" unicode="" horiz-adv-x="2304" d="M1437 623q0 -208 -87 -370.5t-248 -254t-369 -91.5q-149 0 -285 58t-234 156t-156 234t-58 285t58 285t156 234t234 156t285 58q286 0 491 -192l-199 -191q-117 113 -292 113q-123 0 -227.5 -62t-165.5 -168.5t-61 -232.5t61 -232.5t165.5 -168.5t227.5 -62 q83 0 152.5 23t114.5 57.5t78.5 78.5t49 83t21.5 74h-416v252h692q12 -63 12 -122zM2304 745v-210h-209v-209h-210v209h-209v210h209v209h210v-209h209z" /> - <glyph glyph-name="money" unicode="" horiz-adv-x="1920" + <glyph glyph-name="money" unicode="" horiz-adv-x="1920" d="M768 384h384v96h-128v448h-114l-148 -137l77 -80q42 37 55 57h2v-288h-128v-96zM1280 640q0 -70 -21 -142t-59.5 -134t-101.5 -101t-138 -39t-138 39t-101.5 101t-59.5 134t-21 142t21 142t59.5 134t101.5 101t138 39t138 -39t101.5 -101t59.5 -134t21 -142zM1792 384 v512q-106 0 -181 75t-75 181h-1152q0 -106 -75 -181t-181 -75v-512q106 0 181 -75t75 -181h1152q0 106 75 181t181 75zM1920 1216v-1152q0 -26 -19 -45t-45 -19h-1792q-26 0 -45 19t-19 45v1152q0 26 19 45t45 19h1792q26 0 45 -19t19 -45z" /> - <glyph glyph-name="caret_down" unicode="" horiz-adv-x="1024" + <glyph glyph-name="caret_down" unicode="" horiz-adv-x="1024" d="M1024 832q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19l-448 448q-19 19 -19 45t19 45t45 19h896q26 0 45 -19t19 -45z" /> - <glyph glyph-name="caret_up" unicode="" horiz-adv-x="1024" + <glyph glyph-name="caret_up" unicode="" horiz-adv-x="1024" d="M1024 320q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45l448 448q19 19 45 19t45 -19l448 -448q19 -19 19 -45z" /> - <glyph glyph-name="caret_left" unicode="" horiz-adv-x="640" + <glyph glyph-name="caret_left" unicode="" horiz-adv-x="640" d="M640 1088v-896q0 -26 -19 -45t-45 -19t-45 19l-448 448q-19 19 -19 45t19 45l448 448q19 19 45 19t45 -19t19 -45z" /> - <glyph glyph-name="caret_right" unicode="" horiz-adv-x="640" + <glyph glyph-name="caret_right" unicode="" horiz-adv-x="640" d="M576 640q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19t-19 45v896q0 26 19 45t45 19t45 -19l448 -448q19 -19 19 -45z" /> - <glyph glyph-name="columns" unicode="" horiz-adv-x="1664" + <glyph glyph-name="columns" unicode="" horiz-adv-x="1664" d="M160 0h608v1152h-640v-1120q0 -13 9.5 -22.5t22.5 -9.5zM1536 32v1120h-640v-1152h608q13 0 22.5 9.5t9.5 22.5zM1664 1248v-1216q0 -66 -47 -113t-113 -47h-1344q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1344q66 0 113 -47t47 -113z" /> - <glyph glyph-name="sort" unicode="" horiz-adv-x="1024" + <glyph glyph-name="sort" unicode="" horiz-adv-x="1024" d="M1024 448q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19l-448 448q-19 19 -19 45t19 45t45 19h896q26 0 45 -19t19 -45zM1024 832q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45l448 448q19 19 45 19t45 -19l448 -448q19 -19 19 -45z" /> - <glyph glyph-name="sort_down" unicode="" horiz-adv-x="1024" + <glyph glyph-name="sort_down" unicode="" horiz-adv-x="1024" d="M1024 448q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19l-448 448q-19 19 -19 45t19 45t45 19h896q26 0 45 -19t19 -45z" /> - <glyph glyph-name="sort_up" unicode="" horiz-adv-x="1024" + <glyph glyph-name="sort_up" unicode="" horiz-adv-x="1024" d="M1024 832q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45l448 448q19 19 45 19t45 -19l448 -448q19 -19 19 -45z" /> - <glyph glyph-name="envelope_alt" unicode="" horiz-adv-x="1792" + <glyph glyph-name="envelope_alt" unicode="" horiz-adv-x="1792" d="M1792 826v-794q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v794q44 -49 101 -87q362 -246 497 -345q57 -42 92.5 -65.5t94.5 -48t110 -24.5h1h1q51 0 110 24.5t94.5 48t92.5 65.5q170 123 498 345q57 39 100 87zM1792 1120q0 -79 -49 -151t-122 -123 q-376 -261 -468 -325q-10 -7 -42.5 -30.5t-54 -38t-52 -32.5t-57.5 -27t-50 -9h-1h-1q-23 0 -50 9t-57.5 27t-52 32.5t-54 38t-42.5 30.5q-91 64 -262 182.5t-205 142.5q-62 42 -117 115.5t-55 136.5q0 78 41.5 130t118.5 52h1472q65 0 112.5 -47t47.5 -113z" /> - <glyph glyph-name="linkedin" unicode="" + <glyph glyph-name="linkedin" unicode="" d="M349 911v-991h-330v991h330zM370 1217q1 -73 -50.5 -122t-135.5 -49h-2q-82 0 -132 49t-50 122q0 74 51.5 122.5t134.5 48.5t133 -48.5t51 -122.5zM1536 488v-568h-329v530q0 105 -40.5 164.5t-126.5 59.5q-63 0 -105.5 -34.5t-63.5 -85.5q-11 -30 -11 -81v-553h-329 q2 399 2 647t-1 296l-1 48h329v-144h-2q20 32 41 56t56.5 52t87 43.5t114.5 15.5q171 0 275 -113.5t104 -332.5z" /> - <glyph glyph-name="undo" unicode="" + <glyph glyph-name="undo" unicode="" d="M1536 640q0 -156 -61 -298t-164 -245t-245 -164t-298 -61q-172 0 -327 72.5t-264 204.5q-7 10 -6.5 22.5t8.5 20.5l137 138q10 9 25 9q16 -2 23 -12q73 -95 179 -147t225 -52q104 0 198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5t-40.5 198.5t-109.5 163.5 t-163.5 109.5t-198.5 40.5q-98 0 -188 -35.5t-160 -101.5l137 -138q31 -30 14 -69q-17 -40 -59 -40h-448q-26 0 -45 19t-19 45v448q0 42 40 59q39 17 69 -14l130 -129q107 101 244.5 156.5t284.5 55.5q156 0 298 -61t245 -164t164 -245t61 -298z" /> - <glyph glyph-name="legal" unicode="" horiz-adv-x="1792" + <glyph glyph-name="legal" unicode="" horiz-adv-x="1792" d="M1771 0q0 -53 -37 -90l-107 -108q-39 -37 -91 -37q-53 0 -90 37l-363 364q-38 36 -38 90q0 53 43 96l-256 256l-126 -126q-14 -14 -34 -14t-34 14q2 -2 12.5 -12t12.5 -13t10 -11.5t10 -13.5t6 -13.5t5.5 -16.5t1.5 -18q0 -38 -28 -68q-3 -3 -16.5 -18t-19 -20.5 t-18.5 -16.5t-22 -15.5t-22 -9t-26 -4.5q-40 0 -68 28l-408 408q-28 28 -28 68q0 13 4.5 26t9 22t15.5 22t16.5 18.5t20.5 19t18 16.5q30 28 68 28q10 0 18 -1.5t16.5 -5.5t13.5 -6t13.5 -10t11.5 -10t13 -12.5t12 -12.5q-14 14 -14 34t14 34l348 348q14 14 34 14t34 -14 q-2 2 -12.5 12t-12.5 13t-10 11.5t-10 13.5t-6 13.5t-5.5 16.5t-1.5 18q0 38 28 68q3 3 16.5 18t19 20.5t18.5 16.5t22 15.5t22 9t26 4.5q40 0 68 -28l408 -408q28 -28 28 -68q0 -13 -4.5 -26t-9 -22t-15.5 -22t-16.5 -18.5t-20.5 -19t-18 -16.5q-30 -28 -68 -28 q-10 0 -18 1.5t-16.5 5.5t-13.5 6t-13.5 10t-11.5 10t-13 12.5t-12 12.5q14 -14 14 -34t-14 -34l-126 -126l256 -256q43 43 96 43q52 0 91 -37l363 -363q37 -39 37 -91z" /> - <glyph glyph-name="dashboard" unicode="" horiz-adv-x="1792" + <glyph glyph-name="dashboard" unicode="" horiz-adv-x="1792" d="M384 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM576 832q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1004 351l101 382q6 26 -7.5 48.5t-38.5 29.5 t-48 -6.5t-30 -39.5l-101 -382q-60 -5 -107 -43.5t-63 -98.5q-20 -77 20 -146t117 -89t146 20t89 117q16 60 -6 117t-72 91zM1664 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1024 1024q0 53 -37.5 90.5 t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1472 832q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1792 384q0 -261 -141 -483q-19 -29 -54 -29h-1402q-35 0 -54 29 q-141 221 -141 483q0 182 71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="comment_alt" unicode="" horiz-adv-x="1792" + <glyph glyph-name="comment_alt" unicode="" horiz-adv-x="1792" d="M896 1152q-204 0 -381.5 -69.5t-282 -187.5t-104.5 -255q0 -112 71.5 -213.5t201.5 -175.5l87 -50l-27 -96q-24 -91 -70 -172q152 63 275 171l43 38l57 -6q69 -8 130 -8q204 0 381.5 69.5t282 187.5t104.5 255t-104.5 255t-282 187.5t-381.5 69.5zM1792 640 q0 -174 -120 -321.5t-326 -233t-450 -85.5q-70 0 -145 8q-198 -175 -460 -242q-49 -14 -114 -22h-5q-15 0 -27 10.5t-16 27.5v1q-3 4 -0.5 12t2 10t4.5 9.5l6 9t7 8.5t8 9q7 8 31 34.5t34.5 38t31 39.5t32.5 51t27 59t26 76q-157 89 -247.5 220t-90.5 281q0 174 120 321.5 t326 233t450 85.5t450 -85.5t326 -233t120 -321.5z" /> - <glyph glyph-name="comments_alt" unicode="" horiz-adv-x="1792" + <glyph glyph-name="comments_alt" unicode="" horiz-adv-x="1792" d="M704 1152q-153 0 -286 -52t-211.5 -141t-78.5 -191q0 -82 53 -158t149 -132l97 -56l-35 -84q34 20 62 39l44 31l53 -10q78 -14 153 -14q153 0 286 52t211.5 141t78.5 191t-78.5 191t-211.5 141t-286 52zM704 1280q191 0 353.5 -68.5t256.5 -186.5t94 -257t-94 -257 t-256.5 -186.5t-353.5 -68.5q-86 0 -176 16q-124 -88 -278 -128q-36 -9 -86 -16h-3q-11 0 -20.5 8t-11.5 21q-1 3 -1 6.5t0.5 6.5t2 6l2.5 5t3.5 5.5t4 5t4.5 5t4 4.5q5 6 23 25t26 29.5t22.5 29t25 38.5t20.5 44q-124 72 -195 177t-71 224q0 139 94 257t256.5 186.5 t353.5 68.5zM1526 111q10 -24 20.5 -44t25 -38.5t22.5 -29t26 -29.5t23 -25q1 -1 4 -4.5t4.5 -5t4 -5t3.5 -5.5l2.5 -5t2 -6t0.5 -6.5t-1 -6.5q-3 -14 -13 -22t-22 -7q-50 7 -86 16q-154 40 -278 128q-90 -16 -176 -16q-271 0 -472 132q58 -4 88 -4q161 0 309 45t264 129 q125 92 192 212t67 254q0 77 -23 152q129 -71 204 -178t75 -230q0 -120 -71 -224.5t-195 -176.5z" /> - <glyph glyph-name="bolt" unicode="" horiz-adv-x="896" + <glyph glyph-name="bolt" unicode="" horiz-adv-x="896" d="M885 970q18 -20 7 -44l-540 -1157q-13 -25 -42 -25q-4 0 -14 2q-17 5 -25.5 19t-4.5 30l197 808l-406 -101q-4 -1 -12 -1q-18 0 -31 11q-18 15 -13 39l201 825q4 14 16 23t28 9h328q19 0 32 -12.5t13 -29.5q0 -8 -5 -18l-171 -463l396 98q8 2 12 2q19 0 34 -15z" /> - <glyph glyph-name="sitemap" unicode="" horiz-adv-x="1792" + <glyph glyph-name="sitemap" unicode="" horiz-adv-x="1792" d="M1792 288v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320 q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192q0 52 38 90t90 38h512v192h-96q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h320q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-96v-192h512q52 0 90 -38t38 -90v-192h96q40 0 68 -28t28 -68 z" /> - <glyph glyph-name="umbrella" unicode="" horiz-adv-x="1664" + <glyph glyph-name="umbrella" unicode="" horiz-adv-x="1664" d="M896 708v-580q0 -104 -76 -180t-180 -76t-180 76t-76 180q0 26 19 45t45 19t45 -19t19 -45q0 -50 39 -89t89 -39t89 39t39 89v580q33 11 64 11t64 -11zM1664 681q0 -13 -9.5 -22.5t-22.5 -9.5q-11 0 -23 10q-49 46 -93 69t-102 23q-68 0 -128 -37t-103 -97 q-7 -10 -17.5 -28t-14.5 -24q-11 -17 -28 -17q-18 0 -29 17q-4 6 -14.5 24t-17.5 28q-43 60 -102.5 97t-127.5 37t-127.5 -37t-102.5 -97q-7 -10 -17.5 -28t-14.5 -24q-11 -17 -29 -17q-17 0 -28 17q-4 6 -14.5 24t-17.5 28q-43 60 -103 97t-128 37q-58 0 -102 -23t-93 -69 q-12 -10 -23 -10q-13 0 -22.5 9.5t-9.5 22.5q0 5 1 7q45 183 172.5 319.5t298 204.5t360.5 68q140 0 274.5 -40t246.5 -113.5t194.5 -187t115.5 -251.5q1 -2 1 -7zM896 1408v-98q-42 2 -64 2t-64 -2v98q0 26 19 45t45 19t45 -19t19 -45z" /> - <glyph glyph-name="paste" unicode="" horiz-adv-x="1792" + <glyph glyph-name="paste" unicode="" horiz-adv-x="1792" d="M768 -128h896v640h-416q-40 0 -68 28t-28 68v416h-384v-1152zM1024 1312v64q0 13 -9.5 22.5t-22.5 9.5h-704q-13 0 -22.5 -9.5t-9.5 -22.5v-64q0 -13 9.5 -22.5t22.5 -9.5h704q13 0 22.5 9.5t9.5 22.5zM1280 640h299l-299 299v-299zM1792 512v-672q0 -40 -28 -68t-68 -28 h-960q-40 0 -68 28t-28 68v160h-544q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h1088q40 0 68 -28t28 -68v-328q21 -13 36 -28l408 -408q28 -28 48 -76t20 -88z" /> - <glyph glyph-name="light_bulb" unicode="" horiz-adv-x="1024" + <glyph glyph-name="light_bulb" unicode="" horiz-adv-x="1024" d="M736 960q0 -13 -9.5 -22.5t-22.5 -9.5t-22.5 9.5t-9.5 22.5q0 46 -54 71t-106 25q-13 0 -22.5 9.5t-9.5 22.5t9.5 22.5t22.5 9.5q50 0 99.5 -16t87 -54t37.5 -90zM896 960q0 72 -34.5 134t-90 101.5t-123 62t-136.5 22.5t-136.5 -22.5t-123 -62t-90 -101.5t-34.5 -134 q0 -101 68 -180q10 -11 30.5 -33t30.5 -33q128 -153 141 -298h228q13 145 141 298q10 11 30.5 33t30.5 33q68 79 68 180zM1024 960q0 -155 -103 -268q-45 -49 -74.5 -87t-59.5 -95.5t-34 -107.5q47 -28 47 -82q0 -37 -25 -64q25 -27 25 -64q0 -52 -45 -81q13 -23 13 -47 q0 -46 -31.5 -71t-77.5 -25q-20 -44 -60 -70t-87 -26t-87 26t-60 70q-46 0 -77.5 25t-31.5 71q0 24 13 47q-45 29 -45 81q0 37 25 64q-25 27 -25 64q0 54 47 82q-4 50 -34 107.5t-59.5 95.5t-74.5 87q-103 113 -103 268q0 99 44.5 184.5t117 142t164 89t186.5 32.5 t186.5 -32.5t164 -89t117 -142t44.5 -184.5z" /> - <glyph glyph-name="exchange" unicode="" horiz-adv-x="1792" + <glyph glyph-name="exchange" unicode="" horiz-adv-x="1792" d="M1792 352v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5q-12 0 -24 10l-319 320q-9 9 -9 22q0 14 9 23l320 320q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5v-192h1376q13 0 22.5 -9.5t9.5 -22.5zM1792 896q0 -14 -9 -23l-320 -320q-9 -9 -23 -9 q-13 0 -22.5 9.5t-9.5 22.5v192h-1376q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1376v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23z" /> - <glyph glyph-name="cloud_download" unicode="" horiz-adv-x="1920" + <glyph glyph-name="cloud_download" unicode="" horiz-adv-x="1920" d="M1280 608q0 14 -9 23t-23 9h-224v352q0 13 -9.5 22.5t-22.5 9.5h-192q-13 0 -22.5 -9.5t-9.5 -22.5v-352h-224q-13 0 -22.5 -9.5t-9.5 -22.5q0 -14 9 -23l352 -352q9 -9 23 -9t23 9l351 351q10 12 10 24zM1920 384q0 -159 -112.5 -271.5t-271.5 -112.5h-1088 q-185 0 -316.5 131.5t-131.5 316.5q0 130 70 240t188 165q-2 30 -2 43q0 212 150 362t362 150q156 0 285.5 -87t188.5 -231q71 62 166 62q106 0 181 -75t75 -181q0 -76 -41 -138q130 -31 213.5 -135.5t83.5 -238.5z" /> - <glyph glyph-name="cloud_upload" unicode="" horiz-adv-x="1920" + <glyph glyph-name="cloud_upload" unicode="" horiz-adv-x="1920" d="M1280 672q0 14 -9 23l-352 352q-9 9 -23 9t-23 -9l-351 -351q-10 -12 -10 -24q0 -14 9 -23t23 -9h224v-352q0 -13 9.5 -22.5t22.5 -9.5h192q13 0 22.5 9.5t9.5 22.5v352h224q13 0 22.5 9.5t9.5 22.5zM1920 384q0 -159 -112.5 -271.5t-271.5 -112.5h-1088 q-185 0 -316.5 131.5t-131.5 316.5q0 130 70 240t188 165q-2 30 -2 43q0 212 150 362t362 150q156 0 285.5 -87t188.5 -231q71 62 166 62q106 0 181 -75t75 -181q0 -76 -41 -138q130 -31 213.5 -135.5t83.5 -238.5z" /> - <glyph glyph-name="user_md" unicode="" horiz-adv-x="1408" + <glyph glyph-name="user_md" unicode="" horiz-adv-x="1408" d="M384 192q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45zM1408 131q0 -121 -73 -190t-194 -69h-874q-121 0 -194 69t-73 190q0 68 5.5 131t24 138t47.5 132.5t81 103t120 60.5q-22 -52 -22 -120v-203q-58 -20 -93 -70t-35 -111q0 -80 56 -136t136 -56 t136 56t56 136q0 61 -35.5 111t-92.5 70v203q0 62 25 93q132 -104 295 -104t295 104q25 -31 25 -93v-64q-106 0 -181 -75t-75 -181v-89q-32 -29 -32 -71q0 -40 28 -68t68 -28t68 28t28 68q0 42 -32 71v89q0 52 38 90t90 38t90 -38t38 -90v-89q-32 -29 -32 -71q0 -40 28 -68 t68 -28t68 28t28 68q0 42 -32 71v89q0 68 -34.5 127.5t-93.5 93.5q0 10 0.5 42.5t0 48t-2.5 41.5t-7 47t-13 40q68 -15 120 -60.5t81 -103t47.5 -132.5t24 -138t5.5 -131zM1088 1024q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5 t271.5 -112.5t112.5 -271.5z" /> - <glyph glyph-name="stethoscope" unicode="" horiz-adv-x="1408" + <glyph glyph-name="stethoscope" unicode="" horiz-adv-x="1408" d="M1280 832q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 832q0 -62 -35.5 -111t-92.5 -70v-395q0 -159 -131.5 -271.5t-316.5 -112.5t-316.5 112.5t-131.5 271.5v132q-164 20 -274 128t-110 252v512q0 26 19 45t45 19q6 0 16 -2q17 30 47 48 t65 18q53 0 90.5 -37.5t37.5 -90.5t-37.5 -90.5t-90.5 -37.5q-33 0 -64 18v-402q0 -106 94 -181t226 -75t226 75t94 181v402q-31 -18 -64 -18q-53 0 -90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5q35 0 65 -18t47 -48q10 2 16 2q26 0 45 -19t19 -45v-512q0 -144 -110 -252 t-274 -128v-132q0 -106 94 -181t226 -75t226 75t94 181v395q-57 21 -92.5 70t-35.5 111q0 80 56 136t136 56t136 -56t56 -136z" /> - <glyph glyph-name="suitcase" unicode="" horiz-adv-x="1792" + <glyph glyph-name="suitcase" unicode="" horiz-adv-x="1792" d="M640 1152h512v128h-512v-128zM288 1152v-1280h-64q-92 0 -158 66t-66 158v832q0 92 66 158t158 66h64zM1408 1152v-1280h-1024v1280h128v160q0 40 28 68t68 28h576q40 0 68 -28t28 -68v-160h128zM1792 928v-832q0 -92 -66 -158t-158 -66h-64v1280h64q92 0 158 -66 t66 -158z" /> - <glyph glyph-name="bell_alt" unicode="" horiz-adv-x="1792" + <glyph glyph-name="bell_alt" unicode="" horiz-adv-x="1792" d="M912 -160q0 16 -16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5q16 0 16 16zM1728 128q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-181 75t-75 181h-448q-52 0 -90 38t-38 90q50 42 91 88t85 119.5t74.5 158.5 t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q190 -28 307 -158.5t117 -282.5q0 -139 19.5 -260t50 -206t74.5 -158.5t85 -119.5t91 -88z" /> - <glyph glyph-name="coffee" unicode="" horiz-adv-x="1920" + <glyph glyph-name="coffee" unicode="" horiz-adv-x="1920" d="M1664 896q0 80 -56 136t-136 56h-64v-384h64q80 0 136 56t56 136zM0 128h1792q0 -106 -75 -181t-181 -75h-1280q-106 0 -181 75t-75 181zM1856 896q0 -159 -112.5 -271.5t-271.5 -112.5h-64v-32q0 -92 -66 -158t-158 -66h-704q-92 0 -158 66t-66 158v736q0 26 19 45 t45 19h1152q159 0 271.5 -112.5t112.5 -271.5z" /> - <glyph glyph-name="food" unicode="" horiz-adv-x="1408" + <glyph glyph-name="food" unicode="" horiz-adv-x="1408" d="M640 1472v-640q0 -61 -35.5 -111t-92.5 -70v-779q0 -52 -38 -90t-90 -38h-128q-52 0 -90 38t-38 90v779q-57 20 -92.5 70t-35.5 111v640q0 26 19 45t45 19t45 -19t19 -45v-416q0 -26 19 -45t45 -19t45 19t19 45v416q0 26 19 45t45 19t45 -19t19 -45v-416q0 -26 19 -45 t45 -19t45 19t19 45v416q0 26 19 45t45 19t45 -19t19 -45zM1408 1472v-1600q0 -52 -38 -90t-90 -38h-128q-52 0 -90 38t-38 90v512h-224q-13 0 -22.5 9.5t-9.5 22.5v800q0 132 94 226t226 94h256q26 0 45 -19t19 -45z" /> - <glyph glyph-name="file_text_alt" unicode="" + <glyph glyph-name="file_text_alt" unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z M384 736q0 14 9 23t23 9h704q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64zM1120 512q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704zM1120 256q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704 q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704z" /> - <glyph glyph-name="building" unicode="" horiz-adv-x="1408" + <glyph glyph-name="building" unicode="" horiz-adv-x="1408" d="M384 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M640 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M1152 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z @@ -816,7 +816,7 @@ M1152 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 M640 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 992v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M896 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M896 -128h384v1536h-1152v-1536h384v224q0 13 9.5 22.5t22.5 9.5h320q13 0 22.5 -9.5t9.5 -22.5v-224zM1408 1472v-1664q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1664q0 26 19 45t45 19h1280q26 0 45 -19t19 -45z" /> - <glyph glyph-name="hospital" unicode="" horiz-adv-x="1408" + <glyph glyph-name="hospital" unicode="" horiz-adv-x="1408" d="M384 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M640 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M1152 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z @@ -825,407 +825,407 @@ M896 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9 M896 -128h384v1152h-256v-32q0 -40 -28 -68t-68 -28h-448q-40 0 -68 28t-28 68v32h-256v-1152h384v224q0 13 9.5 22.5t22.5 9.5h320q13 0 22.5 -9.5t9.5 -22.5v-224zM896 1056v320q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-96h-128v96q0 13 -9.5 22.5 t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5v96h128v-96q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1408 1088v-1280q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1280q0 26 19 45t45 19h320 v288q0 40 28 68t68 28h448q40 0 68 -28t28 -68v-288h320q26 0 45 -19t19 -45z" /> - <glyph glyph-name="ambulance" unicode="" horiz-adv-x="1920" + <glyph glyph-name="ambulance" unicode="" horiz-adv-x="1920" d="M640 128q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM256 640h384v256h-158q-14 -2 -22 -9l-195 -195q-7 -12 -9 -22v-30zM1536 128q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5 t90.5 37.5t37.5 90.5zM1664 800v192q0 14 -9 23t-23 9h-224v224q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-224h-224q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h224v-224q0 -14 9 -23t23 -9h192q14 0 23 9t9 23v224h224q14 0 23 9t9 23zM1920 1344v-1152 q0 -26 -19 -45t-45 -19h-192q0 -106 -75 -181t-181 -75t-181 75t-75 181h-384q0 -106 -75 -181t-181 -75t-181 75t-75 181h-128q-26 0 -45 19t-19 45t19 45t45 19v416q0 26 13 58t32 51l198 198q19 19 51 32t58 13h160v320q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" /> - <glyph glyph-name="medkit" unicode="" horiz-adv-x="1792" + <glyph glyph-name="medkit" unicode="" horiz-adv-x="1792" d="M1280 416v192q0 14 -9 23t-23 9h-224v224q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-224h-224q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h224v-224q0 -14 9 -23t23 -9h192q14 0 23 9t9 23v224h224q14 0 23 9t9 23zM640 1152h512v128h-512v-128zM256 1152v-1280h-32 q-92 0 -158 66t-66 158v832q0 92 66 158t158 66h32zM1440 1152v-1280h-1088v1280h160v160q0 40 28 68t68 28h576q40 0 68 -28t28 -68v-160h160zM1792 928v-832q0 -92 -66 -158t-158 -66h-32v1280h32q92 0 158 -66t66 -158z" /> - <glyph glyph-name="fighter_jet" unicode="" horiz-adv-x="1920" + <glyph glyph-name="fighter_jet" unicode="" horiz-adv-x="1920" d="M1920 576q-1 -32 -288 -96l-352 -32l-224 -64h-64l-293 -352h69q26 0 45 -4.5t19 -11.5t-19 -11.5t-45 -4.5h-96h-160h-64v32h64v416h-160l-192 -224h-96l-32 32v192h32v32h128v8l-192 24v128l192 24v8h-128v32h-32v192l32 32h96l192 -224h160v416h-64v32h64h160h96 q26 0 45 -4.5t19 -11.5t-19 -11.5t-45 -4.5h-69l293 -352h64l224 -64l352 -32q128 -28 200 -52t80 -34z" /> - <glyph glyph-name="beer" unicode="" horiz-adv-x="1664" + <glyph glyph-name="beer" unicode="" horiz-adv-x="1664" d="M640 640v384h-256v-256q0 -53 37.5 -90.5t90.5 -37.5h128zM1664 192v-192h-1152v192l128 192h-128q-159 0 -271.5 112.5t-112.5 271.5v320l-64 64l32 128h480l32 128h960l32 -192l-64 -32v-800z" /> - <glyph glyph-name="h_sign" unicode="" + <glyph glyph-name="h_sign" unicode="" d="M1280 192v896q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-320h-512v320q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-896q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v320h512v-320q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1536 1120v-960 q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="f0fe" unicode="" + <glyph glyph-name="f0fe" unicode="" d="M1280 576v128q0 26 -19 45t-45 19h-320v320q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-320h-320q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h320v-320q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v320h320q26 0 45 19t19 45zM1536 1120v-960 q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="double_angle_left" unicode="" horiz-adv-x="1024" + <glyph glyph-name="double_angle_left" unicode="" horiz-adv-x="1024" d="M627 160q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23t-10 -23l-393 -393l393 -393q10 -10 10 -23zM1011 160q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23 t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23t-10 -23l-393 -393l393 -393q10 -10 10 -23z" /> - <glyph glyph-name="double_angle_right" unicode="" horiz-adv-x="1024" + <glyph glyph-name="double_angle_right" unicode="" horiz-adv-x="1024" d="M595 576q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23zM979 576q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23 l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" /> - <glyph glyph-name="double_angle_up" unicode="" horiz-adv-x="1152" + <glyph glyph-name="double_angle_up" unicode="" horiz-adv-x="1152" d="M1075 224q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-393 393l-393 -393q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l466 -466q10 -10 10 -23zM1075 608q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-393 393l-393 -393 q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" /> - <glyph glyph-name="double_angle_down" unicode="" horiz-adv-x="1152" + <glyph glyph-name="double_angle_down" unicode="" horiz-adv-x="1152" d="M1075 672q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l393 -393l393 393q10 10 23 10t23 -10l50 -50q10 -10 10 -23zM1075 1056q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23 t10 23l50 50q10 10 23 10t23 -10l393 -393l393 393q10 10 23 10t23 -10l50 -50q10 -10 10 -23z" /> - <glyph glyph-name="angle_left" unicode="" horiz-adv-x="640" + <glyph glyph-name="angle_left" unicode="" horiz-adv-x="640" d="M627 992q0 -13 -10 -23l-393 -393l393 -393q10 -10 10 -23t-10 -23l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23z" /> - <glyph glyph-name="angle_right" unicode="" horiz-adv-x="640" + <glyph glyph-name="angle_right" unicode="" horiz-adv-x="640" d="M595 576q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" /> - <glyph glyph-name="angle_up" unicode="" horiz-adv-x="1152" + <glyph glyph-name="angle_up" unicode="" horiz-adv-x="1152" d="M1075 352q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-393 393l-393 -393q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" /> - <glyph glyph-name="angle_down" unicode="" horiz-adv-x="1152" + <glyph glyph-name="angle_down" unicode="" horiz-adv-x="1152" d="M1075 800q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l393 -393l393 393q10 10 23 10t23 -10l50 -50q10 -10 10 -23z" /> - <glyph glyph-name="desktop" unicode="" horiz-adv-x="1920" + <glyph glyph-name="desktop" unicode="" horiz-adv-x="1920" d="M1792 544v832q0 13 -9.5 22.5t-22.5 9.5h-1600q-13 0 -22.5 -9.5t-9.5 -22.5v-832q0 -13 9.5 -22.5t22.5 -9.5h1600q13 0 22.5 9.5t9.5 22.5zM1920 1376v-1088q0 -66 -47 -113t-113 -47h-544q0 -37 16 -77.5t32 -71t16 -43.5q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19 t-19 45q0 14 16 44t32 70t16 78h-544q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" /> - <glyph glyph-name="laptop" unicode="" horiz-adv-x="1920" + <glyph glyph-name="laptop" unicode="" horiz-adv-x="1920" d="M416 256q-66 0 -113 47t-47 113v704q0 66 47 113t113 47h1088q66 0 113 -47t47 -113v-704q0 -66 -47 -113t-113 -47h-1088zM384 1120v-704q0 -13 9.5 -22.5t22.5 -9.5h1088q13 0 22.5 9.5t9.5 22.5v704q0 13 -9.5 22.5t-22.5 9.5h-1088q-13 0 -22.5 -9.5t-9.5 -22.5z M1760 192h160v-96q0 -40 -47 -68t-113 -28h-1600q-66 0 -113 28t-47 68v96h160h1600zM1040 96q16 0 16 16t-16 16h-160q-16 0 -16 -16t16 -16h160z" /> - <glyph glyph-name="tablet" unicode="" horiz-adv-x="1152" + <glyph glyph-name="tablet" unicode="" horiz-adv-x="1152" d="M640 128q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1024 288v960q0 13 -9.5 22.5t-22.5 9.5h-832q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h832q13 0 22.5 9.5t9.5 22.5zM1152 1248v-1088q0 -66 -47 -113t-113 -47h-832 q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h832q66 0 113 -47t47 -113z" /> - <glyph glyph-name="mobile_phone" unicode="" horiz-adv-x="768" + <glyph glyph-name="mobile_phone" unicode="" horiz-adv-x="768" d="M464 128q0 33 -23.5 56.5t-56.5 23.5t-56.5 -23.5t-23.5 -56.5t23.5 -56.5t56.5 -23.5t56.5 23.5t23.5 56.5zM672 288v704q0 13 -9.5 22.5t-22.5 9.5h-512q-13 0 -22.5 -9.5t-9.5 -22.5v-704q0 -13 9.5 -22.5t22.5 -9.5h512q13 0 22.5 9.5t9.5 22.5zM480 1136 q0 16 -16 16h-160q-16 0 -16 -16t16 -16h160q16 0 16 16zM768 1152v-1024q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v1024q0 52 38 90t90 38h512q52 0 90 -38t38 -90z" /> - <glyph glyph-name="circle_blank" unicode="" + <glyph glyph-name="circle_blank" unicode="" d="M768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103 t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="quote_left" unicode="" horiz-adv-x="1664" + <glyph glyph-name="quote_left" unicode="" horiz-adv-x="1664" d="M768 576v-384q0 -80 -56 -136t-136 -56h-384q-80 0 -136 56t-56 136v704q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5h64q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-64q-106 0 -181 -75t-75 -181v-32q0 -40 28 -68t68 -28h224q80 0 136 -56t56 -136z M1664 576v-384q0 -80 -56 -136t-136 -56h-384q-80 0 -136 56t-56 136v704q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5h64q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-64q-106 0 -181 -75t-75 -181v-32q0 -40 28 -68t68 -28h224q80 0 136 -56t56 -136z" /> - <glyph glyph-name="quote_right" unicode="" horiz-adv-x="1664" + <glyph glyph-name="quote_right" unicode="" horiz-adv-x="1664" d="M768 1216v-704q0 -104 -40.5 -198.5t-109.5 -163.5t-163.5 -109.5t-198.5 -40.5h-64q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h64q106 0 181 75t75 181v32q0 40 -28 68t-68 28h-224q-80 0 -136 56t-56 136v384q0 80 56 136t136 56h384q80 0 136 -56t56 -136zM1664 1216 v-704q0 -104 -40.5 -198.5t-109.5 -163.5t-163.5 -109.5t-198.5 -40.5h-64q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h64q106 0 181 75t75 181v32q0 40 -28 68t-68 28h-224q-80 0 -136 56t-56 136v384q0 80 56 136t136 56h384q80 0 136 -56t56 -136z" /> - <glyph glyph-name="spinner" unicode="" horiz-adv-x="1792" + <glyph glyph-name="spinner" unicode="" horiz-adv-x="1792" d="M526 142q0 -53 -37.5 -90.5t-90.5 -37.5q-52 0 -90 38t-38 90q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1024 -64q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM320 640q0 -53 -37.5 -90.5t-90.5 -37.5 t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1522 142q0 -52 -38 -90t-90 -38q-53 0 -90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM558 1138q0 -66 -47 -113t-113 -47t-113 47t-47 113t47 113t113 47t113 -47t47 -113z M1728 640q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1088 1344q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1618 1138q0 -93 -66 -158.5t-158 -65.5q-93 0 -158.5 65.5t-65.5 158.5 q0 92 65.5 158t158.5 66q92 0 158 -66t66 -158z" /> - <glyph glyph-name="circle" unicode="" + <glyph glyph-name="circle" unicode="" d="M1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="reply" unicode="" horiz-adv-x="1792" + <glyph glyph-name="reply" unicode="" horiz-adv-x="1792" d="M1792 416q0 -166 -127 -451q-3 -7 -10.5 -24t-13.5 -30t-13 -22q-12 -17 -28 -17q-15 0 -23.5 10t-8.5 25q0 9 2.5 26.5t2.5 23.5q5 68 5 123q0 101 -17.5 181t-48.5 138.5t-80 101t-105.5 69.5t-133 42.5t-154 21.5t-175.5 6h-224v-256q0 -26 -19 -45t-45 -19t-45 19 l-512 512q-19 19 -19 45t19 45l512 512q19 19 45 19t45 -19t19 -45v-256h224q713 0 875 -403q53 -134 53 -333z" /> - <glyph glyph-name="github_alt" unicode="" horiz-adv-x="1664" + <glyph glyph-name="github_alt" unicode="" horiz-adv-x="1664" d="M640 320q0 -40 -12.5 -82t-43 -76t-72.5 -34t-72.5 34t-43 76t-12.5 82t12.5 82t43 76t72.5 34t72.5 -34t43 -76t12.5 -82zM1280 320q0 -40 -12.5 -82t-43 -76t-72.5 -34t-72.5 34t-43 76t-12.5 82t12.5 82t43 76t72.5 34t72.5 -34t43 -76t12.5 -82zM1440 320 q0 120 -69 204t-187 84q-41 0 -195 -21q-71 -11 -157 -11t-157 11q-152 21 -195 21q-118 0 -187 -84t-69 -204q0 -88 32 -153.5t81 -103t122 -60t140 -29.5t149 -7h168q82 0 149 7t140 29.5t122 60t81 103t32 153.5zM1664 496q0 -207 -61 -331q-38 -77 -105.5 -133t-141 -86 t-170 -47.5t-171.5 -22t-167 -4.5q-78 0 -142 3t-147.5 12.5t-152.5 30t-137 51.5t-121 81t-86 115q-62 123 -62 331q0 237 136 396q-27 82 -27 170q0 116 51 218q108 0 190 -39.5t189 -123.5q147 35 309 35q148 0 280 -32q105 82 187 121t189 39q51 -102 51 -218 q0 -87 -27 -168q136 -160 136 -398z" /> - <glyph glyph-name="folder_close_alt" unicode="" horiz-adv-x="1664" + <glyph glyph-name="folder_close_alt" unicode="" horiz-adv-x="1664" d="M1536 224v704q0 40 -28 68t-68 28h-704q-40 0 -68 28t-28 68v64q0 40 -28 68t-68 28h-320q-40 0 -68 -28t-28 -68v-960q0 -40 28 -68t68 -28h1216q40 0 68 28t28 68zM1664 928v-704q0 -92 -66 -158t-158 -66h-1216q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320 q92 0 158 -66t66 -158v-32h672q92 0 158 -66t66 -158z" /> - <glyph glyph-name="folder_open_alt" unicode="" horiz-adv-x="1920" + <glyph glyph-name="folder_open_alt" unicode="" horiz-adv-x="1920" d="M1781 605q0 35 -53 35h-1088q-40 0 -85.5 -21.5t-71.5 -52.5l-294 -363q-18 -24 -18 -40q0 -35 53 -35h1088q40 0 86 22t71 53l294 363q18 22 18 39zM640 768h768v160q0 40 -28 68t-68 28h-576q-40 0 -68 28t-28 68v64q0 40 -28 68t-68 28h-320q-40 0 -68 -28t-28 -68 v-853l256 315q44 53 116 87.5t140 34.5zM1909 605q0 -62 -46 -120l-295 -363q-43 -53 -116 -87.5t-140 -34.5h-1088q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h544q92 0 158 -66t66 -158v-160h192q54 0 99 -24.5t67 -70.5q15 -32 15 -68z " /> - <glyph glyph-name="expand_alt" unicode="" horiz-adv-x="1792" + <glyph glyph-name="expand_alt" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="collapse_alt" unicode="" horiz-adv-x="1792" + <glyph glyph-name="collapse_alt" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="smile" unicode="" + <glyph glyph-name="smile" unicode="" d="M1134 461q-37 -121 -138 -195t-228 -74t-228 74t-138 195q-8 25 4 48.5t38 31.5q25 8 48.5 -4t31.5 -38q25 -80 92.5 -129.5t151.5 -49.5t151.5 49.5t92.5 129.5q8 26 32 38t49 4t37 -31.5t4 -48.5zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5 t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5 t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="frown" unicode="" + <glyph glyph-name="frown" unicode="" d="M1134 307q8 -25 -4 -48.5t-37 -31.5t-49 4t-32 38q-25 80 -92.5 129.5t-151.5 49.5t-151.5 -49.5t-92.5 -129.5q-8 -26 -31.5 -38t-48.5 -4q-26 8 -38 31.5t-4 48.5q37 121 138 195t228 74t228 -74t138 -195zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5 t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204 t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="meh" unicode="" + <glyph glyph-name="meh" unicode="" d="M1152 448q0 -26 -19 -45t-45 -19h-640q-26 0 -45 19t-19 45t19 45t45 19h640q26 0 45 -19t19 -45zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5 t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="gamepad" unicode="" horiz-adv-x="1920" + <glyph glyph-name="gamepad" unicode="" horiz-adv-x="1920" d="M832 448v128q0 14 -9 23t-23 9h-192v192q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-192h-192q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h192v-192q0 -14 9 -23t23 -9h128q14 0 23 9t9 23v192h192q14 0 23 9t9 23zM1408 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5 t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1664 640q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1920 512q0 -212 -150 -362t-362 -150q-192 0 -338 128h-220q-146 -128 -338 -128q-212 0 -362 150 t-150 362t150 362t362 150h896q212 0 362 -150t150 -362z" /> - <glyph glyph-name="keyboard" unicode="" horiz-adv-x="1920" + <glyph glyph-name="keyboard" unicode="" horiz-adv-x="1920" d="M384 368v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM512 624v-96q0 -16 -16 -16h-224q-16 0 -16 16v96q0 16 16 16h224q16 0 16 -16zM384 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1408 368v-96q0 -16 -16 -16 h-864q-16 0 -16 16v96q0 16 16 16h864q16 0 16 -16zM768 624v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM640 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1024 624v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16 h96q16 0 16 -16zM896 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1280 624v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1664 368v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1152 880v-96 q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1408 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1664 880v-352q0 -16 -16 -16h-224q-16 0 -16 16v96q0 16 16 16h112v240q0 16 16 16h96q16 0 16 -16zM1792 128v896h-1664v-896 h1664zM1920 1024v-896q0 -53 -37.5 -90.5t-90.5 -37.5h-1664q-53 0 -90.5 37.5t-37.5 90.5v896q0 53 37.5 90.5t90.5 37.5h1664q53 0 90.5 -37.5t37.5 -90.5z" /> - <glyph glyph-name="flag_alt" unicode="" horiz-adv-x="1792" + <glyph glyph-name="flag_alt" unicode="" horiz-adv-x="1792" d="M1664 491v616q-169 -91 -306 -91q-82 0 -145 32q-100 49 -184 76.5t-178 27.5q-173 0 -403 -127v-599q245 113 433 113q55 0 103.5 -7.5t98 -26t77 -31t82.5 -39.5l28 -14q44 -22 101 -22q120 0 293 92zM320 1280q0 -35 -17.5 -64t-46.5 -46v-1266q0 -14 -9 -23t-23 -9 h-64q-14 0 -23 9t-9 23v1266q-29 17 -46.5 46t-17.5 64q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1792 1216v-763q0 -39 -35 -57q-10 -5 -17 -9q-218 -116 -369 -116q-88 0 -158 35l-28 14q-64 33 -99 48t-91 29t-114 14q-102 0 -235.5 -44t-228.5 -102 q-15 -9 -33 -9q-16 0 -32 8q-32 19 -32 56v742q0 35 31 55q35 21 78.5 42.5t114 52t152.5 49.5t155 19q112 0 209 -31t209 -86q38 -19 89 -19q122 0 310 112q22 12 31 17q31 16 62 -2q31 -20 31 -55z" /> - <glyph glyph-name="flag_checkered" unicode="" horiz-adv-x="1792" + <glyph glyph-name="flag_checkered" unicode="" horiz-adv-x="1792" d="M832 536v192q-181 -16 -384 -117v-185q205 96 384 110zM832 954v197q-172 -8 -384 -126v-189q215 111 384 118zM1664 491v184q-235 -116 -384 -71v224q-20 6 -39 15q-5 3 -33 17t-34.5 17t-31.5 15t-34.5 15.5t-32.5 13t-36 12.5t-35 8.5t-39.5 7.5t-39.5 4t-44 2 q-23 0 -49 -3v-222h19q102 0 192.5 -29t197.5 -82q19 -9 39 -15v-188q42 -17 91 -17q120 0 293 92zM1664 918v189q-169 -91 -306 -91q-45 0 -78 8v-196q148 -42 384 90zM320 1280q0 -35 -17.5 -64t-46.5 -46v-1266q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v1266 q-29 17 -46.5 46t-17.5 64q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1792 1216v-763q0 -39 -35 -57q-10 -5 -17 -9q-218 -116 -369 -116q-88 0 -158 35l-28 14q-64 33 -99 48t-91 29t-114 14q-102 0 -235.5 -44t-228.5 -102q-15 -9 -33 -9q-16 0 -32 8 q-32 19 -32 56v742q0 35 31 55q35 21 78.5 42.5t114 52t152.5 49.5t155 19q112 0 209 -31t209 -86q38 -19 89 -19q122 0 310 112q22 12 31 17q31 16 62 -2q31 -20 31 -55z" /> - <glyph glyph-name="terminal" unicode="" horiz-adv-x="1664" + <glyph glyph-name="terminal" unicode="" horiz-adv-x="1664" d="M585 553l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23t-10 -23zM1664 96v-64q0 -14 -9 -23t-23 -9h-960q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h960q14 0 23 -9 t9 -23z" /> - <glyph glyph-name="code" unicode="" horiz-adv-x="1920" + <glyph glyph-name="code" unicode="" horiz-adv-x="1920" d="M617 137l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23t-10 -23l-393 -393l393 -393q10 -10 10 -23t-10 -23zM1208 1204l-373 -1291q-4 -13 -15.5 -19.5t-23.5 -2.5l-62 17q-13 4 -19.5 15.5t-2.5 24.5 l373 1291q4 13 15.5 19.5t23.5 2.5l62 -17q13 -4 19.5 -15.5t2.5 -24.5zM1865 553l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23t-10 -23z" /> - <glyph glyph-name="reply_all" unicode="" horiz-adv-x="1792" + <glyph glyph-name="reply_all" unicode="" horiz-adv-x="1792" d="M640 454v-70q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-512 512q-19 19 -19 45t19 45l512 512q29 31 70 14q39 -17 39 -59v-69l-397 -398q-19 -19 -19 -45t19 -45zM1792 416q0 -58 -17 -133.5t-38.5 -138t-48 -125t-40.5 -90.5l-20 -40q-8 -17 -28 -17q-6 0 -9 1 q-25 8 -23 34q43 400 -106 565q-64 71 -170.5 110.5t-267.5 52.5v-251q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-512 512q-19 19 -19 45t19 45l512 512q29 31 70 14q39 -17 39 -59v-262q411 -28 599 -221q169 -173 169 -509z" /> - <glyph glyph-name="star_half_empty" unicode="" horiz-adv-x="1664" + <glyph glyph-name="star_half_empty" unicode="" horiz-adv-x="1664" d="M1186 579l257 250l-356 52l-66 10l-30 60l-159 322v-963l59 -31l318 -168l-60 355l-12 66zM1638 841l-363 -354l86 -500q5 -33 -6 -51.5t-34 -18.5q-17 0 -40 12l-449 236l-449 -236q-23 -12 -40 -12q-23 0 -34 18.5t-6 51.5l86 500l-364 354q-32 32 -23 59.5t54 34.5 l502 73l225 455q20 41 49 41q28 0 49 -41l225 -455l502 -73q45 -7 54 -34.5t-24 -59.5z" /> - <glyph glyph-name="location_arrow" unicode="" horiz-adv-x="1408" + <glyph glyph-name="location_arrow" unicode="" horiz-adv-x="1408" d="M1401 1187l-640 -1280q-17 -35 -57 -35q-5 0 -15 2q-22 5 -35.5 22.5t-13.5 39.5v576h-576q-22 0 -39.5 13.5t-22.5 35.5t4 42t29 30l1280 640q13 7 29 7q27 0 45 -19q15 -14 18.5 -34.5t-6.5 -39.5z" /> - <glyph glyph-name="crop" unicode="" horiz-adv-x="1664" + <glyph glyph-name="crop" unicode="" horiz-adv-x="1664" d="M557 256h595v595zM512 301l595 595h-595v-595zM1664 224v-192q0 -14 -9 -23t-23 -9h-224v-224q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v224h-864q-14 0 -23 9t-9 23v864h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224v224q0 14 9 23t23 9h192q14 0 23 -9t9 -23 v-224h851l246 247q10 9 23 9t23 -9q9 -10 9 -23t-9 -23l-247 -246v-851h224q14 0 23 -9t9 -23z" /> - <glyph glyph-name="code_fork" unicode="" horiz-adv-x="1024" + <glyph glyph-name="code_fork" unicode="" horiz-adv-x="1024" d="M288 64q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM288 1216q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM928 1088q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1024 1088q0 -52 -26 -96.5t-70 -69.5 q-2 -287 -226 -414q-67 -38 -203 -81q-128 -40 -169.5 -71t-41.5 -100v-26q44 -25 70 -69.5t26 -96.5q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 52 26 96.5t70 69.5v820q-44 25 -70 69.5t-26 96.5q0 80 56 136t136 56t136 -56t56 -136q0 -52 -26 -96.5t-70 -69.5v-497 q54 26 154 57q55 17 87.5 29.5t70.5 31t59 39.5t40.5 51t28 69.5t8.5 91.5q-44 25 -70 69.5t-26 96.5q0 80 56 136t136 56t136 -56t56 -136z" /> - <glyph glyph-name="unlink" unicode="" horiz-adv-x="1664" + <glyph glyph-name="unlink" unicode="" horiz-adv-x="1664" d="M439 265l-256 -256q-11 -9 -23 -9t-23 9q-9 10 -9 23t9 23l256 256q10 9 23 9t23 -9q9 -10 9 -23t-9 -23zM608 224v-320q0 -14 -9 -23t-23 -9t-23 9t-9 23v320q0 14 9 23t23 9t23 -9t9 -23zM384 448q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23t9 23t23 9h320 q14 0 23 -9t9 -23zM1648 320q0 -120 -85 -203l-147 -146q-83 -83 -203 -83q-121 0 -204 85l-334 335q-21 21 -42 56l239 18l273 -274q27 -27 68 -27.5t68 26.5l147 146q28 28 28 67q0 40 -28 68l-274 275l18 239q35 -21 56 -42l336 -336q84 -86 84 -204zM1031 1044l-239 -18 l-273 274q-28 28 -68 28q-39 0 -68 -27l-147 -146q-28 -28 -28 -67q0 -40 28 -68l274 -274l-18 -240q-35 21 -56 42l-336 336q-84 86 -84 204q0 120 85 203l147 146q83 83 203 83q121 0 204 -85l334 -335q21 -21 42 -56zM1664 960q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9 t-9 23t9 23t23 9h320q14 0 23 -9t9 -23zM1120 1504v-320q0 -14 -9 -23t-23 -9t-23 9t-9 23v320q0 14 9 23t23 9t23 -9t9 -23zM1527 1353l-256 -256q-11 -9 -23 -9t-23 9q-9 10 -9 23t9 23l256 256q10 9 23 9t23 -9q9 -10 9 -23t-9 -23z" /> - <glyph glyph-name="question" unicode="" horiz-adv-x="1024" + <glyph glyph-name="question" unicode="" horiz-adv-x="1024" d="M704 280v-240q0 -16 -12 -28t-28 -12h-240q-16 0 -28 12t-12 28v240q0 16 12 28t28 12h240q16 0 28 -12t12 -28zM1020 880q0 -54 -15.5 -101t-35 -76.5t-55 -59.5t-57.5 -43.5t-61 -35.5q-41 -23 -68.5 -65t-27.5 -67q0 -17 -12 -32.5t-28 -15.5h-240q-15 0 -25.5 18.5 t-10.5 37.5v45q0 83 65 156.5t143 108.5q59 27 84 56t25 76q0 42 -46.5 74t-107.5 32q-65 0 -108 -29q-35 -25 -107 -115q-13 -16 -31 -16q-12 0 -25 8l-164 125q-13 10 -15.5 25t5.5 28q160 266 464 266q80 0 161 -31t146 -83t106 -127.5t41 -158.5z" /> - <glyph glyph-name="_279" unicode="" horiz-adv-x="640" + <glyph glyph-name="_279" unicode="" horiz-adv-x="640" d="M640 192v-128q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h64v384h-64q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h384q26 0 45 -19t19 -45v-576h64q26 0 45 -19t19 -45zM512 1344v-192q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v192 q0 26 19 45t45 19h256q26 0 45 -19t19 -45z" /> - <glyph glyph-name="exclamation" unicode="" horiz-adv-x="640" + <glyph glyph-name="exclamation" unicode="" horiz-adv-x="640" d="M512 288v-224q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v224q0 26 19 45t45 19h256q26 0 45 -19t19 -45zM542 1344l-28 -768q-1 -26 -20.5 -45t-45.5 -19h-256q-26 0 -45.5 19t-20.5 45l-28 768q-1 26 17.5 45t44.5 19h320q26 0 44.5 -19t17.5 -45z" /> - <glyph glyph-name="superscript" unicode="" + <glyph glyph-name="superscript" unicode="" d="M897 167v-167h-248l-159 252l-24 42q-8 9 -11 21h-3q-1 -3 -2.5 -6.5t-3.5 -8t-3 -6.5q-10 -20 -25 -44l-155 -250h-258v167h128l197 291l-185 272h-137v168h276l139 -228q2 -4 23 -42q8 -9 11 -21h3q3 9 11 21l25 42l140 228h257v-168h-125l-184 -267l204 -296h109z M1534 846v-206h-514l-3 27q-4 28 -4 46q0 64 26 117t65 86.5t84 65t84 54.5t65 54t26 64q0 38 -29.5 62.5t-70.5 24.5q-51 0 -97 -39q-14 -11 -36 -38l-105 92q26 37 63 66q83 65 188 65q110 0 178 -59.5t68 -158.5q0 -56 -24.5 -103t-62 -76.5t-81.5 -58.5t-82 -50.5 t-65.5 -51.5t-30.5 -63h232v80h126z" /> - <glyph glyph-name="subscript" unicode="" + <glyph glyph-name="subscript" unicode="" d="M897 167v-167h-248l-159 252l-24 42q-8 9 -11 21h-3q-1 -3 -2.5 -6.5t-3.5 -8t-3 -6.5q-10 -20 -25 -44l-155 -250h-258v167h128l197 291l-185 272h-137v168h276l139 -228q2 -4 23 -42q8 -9 11 -21h3q3 9 11 21l25 42l140 228h257v-168h-125l-184 -267l204 -296h109z M1536 -50v-206h-514l-4 27q-3 45 -3 46q0 64 26 117t65 86.5t84 65t84 54.5t65 54t26 64q0 38 -29.5 62.5t-70.5 24.5q-51 0 -97 -39q-14 -11 -36 -38l-105 92q26 37 63 66q80 65 188 65q110 0 178 -59.5t68 -158.5q0 -66 -34.5 -118.5t-84 -86t-99.5 -62.5t-87 -63t-41 -73 h232v80h126z" /> - <glyph glyph-name="_283" unicode="" horiz-adv-x="1920" + <glyph glyph-name="_283" unicode="" horiz-adv-x="1920" d="M896 128l336 384h-768l-336 -384h768zM1909 1205q15 -34 9.5 -71.5t-30.5 -65.5l-896 -1024q-38 -44 -96 -44h-768q-38 0 -69.5 20.5t-47.5 54.5q-15 34 -9.5 71.5t30.5 65.5l896 1024q38 44 96 44h768q38 0 69.5 -20.5t47.5 -54.5z" /> - <glyph glyph-name="puzzle_piece" unicode="" horiz-adv-x="1664" + <glyph glyph-name="puzzle_piece" unicode="" horiz-adv-x="1664" d="M1664 438q0 -81 -44.5 -135t-123.5 -54q-41 0 -77.5 17.5t-59 38t-56.5 38t-71 17.5q-110 0 -110 -124q0 -39 16 -115t15 -115v-5q-22 0 -33 -1q-34 -3 -97.5 -11.5t-115.5 -13.5t-98 -5q-61 0 -103 26.5t-42 83.5q0 37 17.5 71t38 56.5t38 59t17.5 77.5q0 79 -54 123.5 t-135 44.5q-84 0 -143 -45.5t-59 -127.5q0 -43 15 -83t33.5 -64.5t33.5 -53t15 -50.5q0 -45 -46 -89q-37 -35 -117 -35q-95 0 -245 24q-9 2 -27.5 4t-27.5 4l-13 2q-1 0 -3 1q-2 0 -2 1v1024q2 -1 17.5 -3.5t34 -5t21.5 -3.5q150 -24 245 -24q80 0 117 35q46 44 46 89 q0 22 -15 50.5t-33.5 53t-33.5 64.5t-15 83q0 82 59 127.5t144 45.5q80 0 134 -44.5t54 -123.5q0 -41 -17.5 -77.5t-38 -59t-38 -56.5t-17.5 -71q0 -57 42 -83.5t103 -26.5q64 0 180 15t163 17v-2q-1 -2 -3.5 -17.5t-5 -34t-3.5 -21.5q-24 -150 -24 -245q0 -80 35 -117 q44 -46 89 -46q22 0 50.5 15t53 33.5t64.5 33.5t83 15q82 0 127.5 -59t45.5 -143z" /> - <glyph glyph-name="microphone" unicode="" horiz-adv-x="1152" + <glyph glyph-name="microphone" unicode="" horiz-adv-x="1152" d="M1152 832v-128q0 -221 -147.5 -384.5t-364.5 -187.5v-132h256q26 0 45 -19t19 -45t-19 -45t-45 -19h-640q-26 0 -45 19t-19 45t19 45t45 19h256v132q-217 24 -364.5 187.5t-147.5 384.5v128q0 26 19 45t45 19t45 -19t19 -45v-128q0 -185 131.5 -316.5t316.5 -131.5 t316.5 131.5t131.5 316.5v128q0 26 19 45t45 19t45 -19t19 -45zM896 1216v-512q0 -132 -94 -226t-226 -94t-226 94t-94 226v512q0 132 94 226t226 94t226 -94t94 -226z" /> - <glyph glyph-name="microphone_off" unicode="" horiz-adv-x="1408" + <glyph glyph-name="microphone_off" unicode="" horiz-adv-x="1408" d="M271 591l-101 -101q-42 103 -42 214v128q0 26 19 45t45 19t45 -19t19 -45v-128q0 -53 15 -113zM1385 1193l-361 -361v-128q0 -132 -94 -226t-226 -94q-55 0 -109 19l-96 -96q97 -51 205 -51q185 0 316.5 131.5t131.5 316.5v128q0 26 19 45t45 19t45 -19t19 -45v-128 q0 -221 -147.5 -384.5t-364.5 -187.5v-132h256q26 0 45 -19t19 -45t-19 -45t-45 -19h-640q-26 0 -45 19t-19 45t19 45t45 19h256v132q-125 13 -235 81l-254 -254q-10 -10 -23 -10t-23 10l-82 82q-10 10 -10 23t10 23l1234 1234q10 10 23 10t23 -10l82 -82q10 -10 10 -23 t-10 -23zM1005 1325l-621 -621v512q0 132 94 226t226 94q102 0 184.5 -59t116.5 -152z" /> - <glyph glyph-name="shield" unicode="" horiz-adv-x="1280" + <glyph glyph-name="shield" unicode="" horiz-adv-x="1280" d="M1088 576v640h-448v-1137q119 63 213 137q235 184 235 360zM1280 1344v-768q0 -86 -33.5 -170.5t-83 -150t-118 -127.5t-126.5 -103t-121 -77.5t-89.5 -49.5t-42.5 -20q-12 -6 -26 -6t-26 6q-16 7 -42.5 20t-89.5 49.5t-121 77.5t-126.5 103t-118 127.5t-83 150 t-33.5 170.5v768q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" /> - <glyph glyph-name="calendar_empty" unicode="" horiz-adv-x="1664" + <glyph glyph-name="calendar_empty" unicode="" horiz-adv-x="1664" d="M128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280 q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" /> - <glyph glyph-name="fire_extinguisher" unicode="" horiz-adv-x="1408" + <glyph glyph-name="fire_extinguisher" unicode="" horiz-adv-x="1408" d="M512 1344q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 1376v-320q0 -16 -12 -25q-8 -7 -20 -7q-4 0 -7 1l-448 96q-11 2 -18 11t-7 20h-256v-102q111 -23 183.5 -111t72.5 -203v-800q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v800 q0 106 62.5 190.5t161.5 114.5v111h-32q-59 0 -115 -23.5t-91.5 -53t-66 -66.5t-40.5 -53.5t-14 -24.5q-17 -35 -57 -35q-16 0 -29 7q-23 12 -31.5 37t3.5 49q5 10 14.5 26t37.5 53.5t60.5 70t85 67t108.5 52.5q-25 42 -25 86q0 66 47 113t113 47t113 -47t47 -113 q0 -33 -14 -64h302q0 11 7 20t18 11l448 96q3 1 7 1q12 0 20 -7q12 -9 12 -25z" /> - <glyph glyph-name="rocket" unicode="" horiz-adv-x="1664" + <glyph glyph-name="rocket" unicode="" horiz-adv-x="1664" d="M1440 1088q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1664 1376q0 -249 -75.5 -430.5t-253.5 -360.5q-81 -80 -195 -176l-20 -379q-2 -16 -16 -26l-384 -224q-7 -4 -16 -4q-12 0 -23 9l-64 64q-13 14 -8 32l85 276l-281 281l-276 -85q-3 -1 -9 -1 q-14 0 -23 9l-64 64q-17 19 -5 39l224 384q10 14 26 16l379 20q96 114 176 195q188 187 358 258t431 71q14 0 24 -9.5t10 -22.5z" /> - <glyph glyph-name="maxcdn" unicode="" horiz-adv-x="1792" + <glyph glyph-name="maxcdn" unicode="" horiz-adv-x="1792" d="M1745 763l-164 -763h-334l178 832q13 56 -15 88q-27 33 -83 33h-169l-204 -953h-334l204 953h-286l-204 -953h-334l204 953l-153 327h1276q101 0 189.5 -40.5t147.5 -113.5q60 -73 81 -168.5t0 -194.5z" /> - <glyph glyph-name="chevron_sign_left" unicode="" + <glyph glyph-name="chevron_sign_left" unicode="" d="M909 141l102 102q19 19 19 45t-19 45l-307 307l307 307q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-454 -454q-19 -19 -19 -45t19 -45l454 -454q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="chevron_sign_right" unicode="" + <glyph glyph-name="chevron_sign_right" unicode="" d="M717 141l454 454q19 19 19 45t-19 45l-454 454q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l307 -307l-307 -307q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="chevron_sign_up" unicode="" + <glyph glyph-name="chevron_sign_up" unicode="" d="M1165 397l102 102q19 19 19 45t-19 45l-454 454q-19 19 -45 19t-45 -19l-454 -454q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19l307 307l307 -307q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="chevron_sign_down" unicode="" + <glyph glyph-name="chevron_sign_down" unicode="" d="M813 237l454 454q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-307 -307l-307 307q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l454 -454q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="html5" unicode="" horiz-adv-x="1408" + <glyph glyph-name="html5" unicode="" horiz-adv-x="1408" d="M1130 939l16 175h-884l47 -534h612l-22 -228l-197 -53l-196 53l-13 140h-175l22 -278l362 -100h4v1l359 99l50 544h-644l-15 181h674zM0 1408h1408l-128 -1438l-578 -162l-574 162z" /> - <glyph glyph-name="css3" unicode="" horiz-adv-x="1792" + <glyph glyph-name="css3" unicode="" horiz-adv-x="1792" d="M275 1408h1505l-266 -1333l-804 -267l-698 267l71 356h297l-29 -147l422 -161l486 161l68 339h-1208l58 297h1209l38 191h-1208z" /> - <glyph glyph-name="anchor" unicode="" horiz-adv-x="1792" + <glyph glyph-name="anchor" unicode="" horiz-adv-x="1792" d="M960 1280q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1792 352v-352q0 -22 -20 -30q-8 -2 -12 -2q-12 0 -23 9l-93 93q-119 -143 -318.5 -226.5t-429.5 -83.5t-429.5 83.5t-318.5 226.5l-93 -93q-9 -9 -23 -9q-4 0 -12 2q-20 8 -20 30v352 q0 14 9 23t23 9h352q22 0 30 -20q8 -19 -7 -35l-100 -100q67 -91 189.5 -153.5t271.5 -82.5v647h-192q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h192v163q-58 34 -93 92.5t-35 128.5q0 106 75 181t181 75t181 -75t75 -181q0 -70 -35 -128.5t-93 -92.5v-163h192q26 0 45 -19 t19 -45v-128q0 -26 -19 -45t-45 -19h-192v-647q149 20 271.5 82.5t189.5 153.5l-100 100q-15 16 -7 35q8 20 30 20h352q14 0 23 -9t9 -23z" /> - <glyph glyph-name="unlock_alt" unicode="" horiz-adv-x="1152" + <glyph glyph-name="unlock_alt" unicode="" horiz-adv-x="1152" d="M1056 768q40 0 68 -28t28 -68v-576q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v576q0 40 28 68t68 28h32v320q0 185 131.5 316.5t316.5 131.5t316.5 -131.5t131.5 -316.5q0 -26 -19 -45t-45 -19h-64q-26 0 -45 19t-19 45q0 106 -75 181t-181 75t-181 -75t-75 -181 v-320h736z" /> - <glyph glyph-name="bullseye" unicode="" + <glyph glyph-name="bullseye" unicode="" d="M1024 640q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM1152 640q0 159 -112.5 271.5t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5zM1280 640q0 -212 -150 -362t-362 -150t-362 150 t-150 362t150 362t362 150t362 -150t150 -362zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="ellipsis_horizontal" unicode="" horiz-adv-x="1408" + <glyph glyph-name="ellipsis_horizontal" unicode="" horiz-adv-x="1408" d="M384 800v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM896 800v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM1408 800v-192q0 -40 -28 -68t-68 -28h-192 q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68z" /> - <glyph glyph-name="ellipsis_vertical" unicode="" horiz-adv-x="384" + <glyph glyph-name="ellipsis_vertical" unicode="" horiz-adv-x="384" d="M384 288v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM384 800v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM384 1312v-192q0 -40 -28 -68t-68 -28h-192 q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68z" /> - <glyph glyph-name="_303" unicode="" + <glyph glyph-name="_303" unicode="" d="M512 256q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM863 162q-13 233 -176.5 396.5t-396.5 176.5q-14 1 -24 -9t-10 -23v-128q0 -13 8.5 -22t21.5 -10q154 -11 264 -121t121 -264q1 -13 10 -21.5t22 -8.5h128 q13 0 23 10t9 24zM1247 161q-5 154 -56 297.5t-139.5 260t-205 205t-260 139.5t-297.5 56q-14 1 -23 -9q-10 -10 -10 -23v-128q0 -13 9 -22t22 -10q204 -7 378 -111.5t278.5 -278.5t111.5 -378q1 -13 10 -22t22 -9h128q13 0 23 10q11 9 9 23zM1536 1120v-960 q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="play_sign" unicode="" + <glyph glyph-name="play_sign" unicode="" d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM1152 585q32 18 32 55t-32 55l-544 320q-31 19 -64 1q-32 -19 -32 -56v-640q0 -37 32 -56 q16 -8 32 -8q17 0 32 9z" /> - <glyph glyph-name="ticket" unicode="" horiz-adv-x="1792" + <glyph glyph-name="ticket" unicode="" horiz-adv-x="1792" d="M1024 1084l316 -316l-572 -572l-316 316zM813 105l618 618q19 19 19 45t-19 45l-362 362q-18 18 -45 18t-45 -18l-618 -618q-19 -19 -19 -45t19 -45l362 -362q18 -18 45 -18t45 18zM1702 742l-907 -908q-37 -37 -90.5 -37t-90.5 37l-126 126q56 56 56 136t-56 136 t-136 56t-136 -56l-125 126q-37 37 -37 90.5t37 90.5l907 906q37 37 90.5 37t90.5 -37l125 -125q-56 -56 -56 -136t56 -136t136 -56t136 56l126 -125q37 -37 37 -90.5t-37 -90.5z" /> - <glyph glyph-name="minus_sign_alt" unicode="" + <glyph glyph-name="minus_sign_alt" unicode="" d="M1280 576v128q0 26 -19 45t-45 19h-896q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h896q26 0 45 19t19 45zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5 t84.5 -203.5z" /> - <glyph glyph-name="check_minus" unicode="" horiz-adv-x="1408" + <glyph glyph-name="check_minus" unicode="" horiz-adv-x="1408" d="M1152 736v-64q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h832q14 0 23 -9t9 -23zM1280 288v832q0 66 -47 113t-113 47h-832q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113zM1408 1120v-832q0 -119 -84.5 -203.5 t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="level_up" unicode="" horiz-adv-x="1024" + <glyph glyph-name="level_up" unicode="" horiz-adv-x="1024" d="M1018 933q-18 -37 -58 -37h-192v-864q0 -14 -9 -23t-23 -9h-704q-21 0 -29 18q-8 20 4 35l160 192q9 11 25 11h320v640h-192q-40 0 -58 37q-17 37 9 68l320 384q18 22 49 22t49 -22l320 -384q27 -32 9 -68z" /> - <glyph glyph-name="level_down" unicode="" horiz-adv-x="1024" + <glyph glyph-name="level_down" unicode="" horiz-adv-x="1024" d="M32 1280h704q13 0 22.5 -9.5t9.5 -23.5v-863h192q40 0 58 -37t-9 -69l-320 -384q-18 -22 -49 -22t-49 22l-320 384q-26 31 -9 69q18 37 58 37h192v640h-320q-14 0 -25 11l-160 192q-13 14 -4 34q9 19 29 19z" /> - <glyph glyph-name="check_sign" unicode="" + <glyph glyph-name="check_sign" unicode="" d="M685 237l614 614q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-467 -467l-211 211q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l358 -358q19 -19 45 -19t45 19zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5 t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="edit_sign" unicode="" + <glyph glyph-name="edit_sign" unicode="" d="M404 428l152 -152l-52 -52h-56v96h-96v56zM818 818q14 -13 -3 -30l-291 -291q-17 -17 -30 -3q-14 13 3 30l291 291q17 17 30 3zM544 128l544 544l-288 288l-544 -544v-288h288zM1152 736l92 92q28 28 28 68t-28 68l-152 152q-28 28 -68 28t-68 -28l-92 -92zM1536 1120 v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="_312" unicode="" + <glyph glyph-name="_312" unicode="" d="M1280 608v480q0 26 -19 45t-45 19h-480q-42 0 -59 -39q-17 -41 14 -70l144 -144l-534 -534q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19l534 534l144 -144q18 -19 45 -19q12 0 25 5q39 17 39 59zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960 q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="share_sign" unicode="" + <glyph glyph-name="share_sign" unicode="" d="M1005 435l352 352q19 19 19 45t-19 45l-352 352q-30 31 -69 14q-40 -17 -40 -59v-160q-119 0 -216 -19.5t-162.5 -51t-114 -79t-76.5 -95.5t-44.5 -109t-21.5 -111.5t-5 -110.5q0 -181 167 -404q11 -12 25 -12q7 0 13 3q22 9 19 33q-44 354 62 473q46 52 130 75.5 t224 23.5v-160q0 -42 40 -59q12 -5 24 -5q26 0 45 19zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="compass" unicode="" + <glyph glyph-name="compass" unicode="" d="M640 448l256 128l-256 128v-256zM1024 1039v-542l-512 -256v542zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103 t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="collapse" unicode="" + <glyph glyph-name="collapse" unicode="" d="M1145 861q18 -35 -5 -66l-320 -448q-19 -27 -52 -27t-52 27l-320 448q-23 31 -5 66q17 35 57 35h640q40 0 57 -35zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5zM1536 1120 v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="collapse_top" unicode="" + <glyph glyph-name="collapse_top" unicode="" d="M1145 419q-17 -35 -57 -35h-640q-40 0 -57 35q-18 35 5 66l320 448q19 27 52 27t52 -27l320 -448q23 -31 5 -66zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5zM1536 1120v-960 q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="_317" unicode="" + <glyph glyph-name="_317" unicode="" d="M1088 640q0 -33 -27 -52l-448 -320q-31 -23 -66 -5q-35 17 -35 57v640q0 40 35 57q35 18 66 -5l448 -320q27 -19 27 -52zM1280 160v960q0 14 -9 23t-23 9h-960q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h960q14 0 23 9t9 23zM1536 1120v-960q0 -119 -84.5 -203.5 t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="eur" unicode="" horiz-adv-x="1024" + <glyph glyph-name="eur" unicode="" horiz-adv-x="1024" d="M976 229l35 -159q3 -12 -3 -22.5t-17 -14.5l-5 -1q-4 -2 -10.5 -3.5t-16 -4.5t-21.5 -5.5t-25.5 -5t-30 -5t-33.5 -4.5t-36.5 -3t-38.5 -1q-234 0 -409 130.5t-238 351.5h-95q-13 0 -22.5 9.5t-9.5 22.5v113q0 13 9.5 22.5t22.5 9.5h66q-2 57 1 105h-67q-14 0 -23 9 t-9 23v114q0 14 9 23t23 9h98q67 210 243.5 338t400.5 128q102 0 194 -23q11 -3 20 -15q6 -11 3 -24l-43 -159q-3 -13 -14 -19.5t-24 -2.5l-4 1q-4 1 -11.5 2.5l-17.5 3.5t-22.5 3.5t-26 3t-29 2.5t-29.5 1q-126 0 -226 -64t-150 -176h468q16 0 25 -12q10 -12 7 -26 l-24 -114q-5 -26 -32 -26h-488q-3 -37 0 -105h459q15 0 25 -12q9 -12 6 -27l-24 -112q-2 -11 -11 -18.5t-20 -7.5h-387q48 -117 149.5 -185.5t228.5 -68.5q18 0 36 1.5t33.5 3.5t29.5 4.5t24.5 5t18.5 4.5l12 3l5 2q13 5 26 -2q12 -7 15 -21z" /> - <glyph glyph-name="gbp" unicode="" horiz-adv-x="1024" + <glyph glyph-name="gbp" unicode="" horiz-adv-x="1024" d="M1020 399v-367q0 -14 -9 -23t-23 -9h-956q-14 0 -23 9t-9 23v150q0 13 9.5 22.5t22.5 9.5h97v383h-95q-14 0 -23 9.5t-9 22.5v131q0 14 9 23t23 9h95v223q0 171 123.5 282t314.5 111q185 0 335 -125q9 -8 10 -20.5t-7 -22.5l-103 -127q-9 -11 -22 -12q-13 -2 -23 7 q-5 5 -26 19t-69 32t-93 18q-85 0 -137 -47t-52 -123v-215h305q13 0 22.5 -9t9.5 -23v-131q0 -13 -9.5 -22.5t-22.5 -9.5h-305v-379h414v181q0 13 9 22.5t23 9.5h162q14 0 23 -9.5t9 -22.5z" /> - <glyph glyph-name="usd" unicode="" horiz-adv-x="1024" + <glyph glyph-name="usd" unicode="" horiz-adv-x="1024" d="M978 351q0 -153 -99.5 -263.5t-258.5 -136.5v-175q0 -14 -9 -23t-23 -9h-135q-13 0 -22.5 9.5t-9.5 22.5v175q-66 9 -127.5 31t-101.5 44.5t-74 48t-46.5 37.5t-17.5 18q-17 21 -2 41l103 135q7 10 23 12q15 2 24 -9l2 -2q113 -99 243 -125q37 -8 74 -8q81 0 142.5 43 t61.5 122q0 28 -15 53t-33.5 42t-58.5 37.5t-66 32t-80 32.5q-39 16 -61.5 25t-61.5 26.5t-62.5 31t-56.5 35.5t-53.5 42.5t-43.5 49t-35.5 58t-21 66.5t-8.5 78q0 138 98 242t255 134v180q0 13 9.5 22.5t22.5 9.5h135q14 0 23 -9t9 -23v-176q57 -6 110.5 -23t87 -33.5 t63.5 -37.5t39 -29t15 -14q17 -18 5 -38l-81 -146q-8 -15 -23 -16q-14 -3 -27 7q-3 3 -14.5 12t-39 26.5t-58.5 32t-74.5 26t-85.5 11.5q-95 0 -155 -43t-60 -111q0 -26 8.5 -48t29.5 -41.5t39.5 -33t56 -31t60.5 -27t70 -27.5q53 -20 81 -31.5t76 -35t75.5 -42.5t62 -50 t53 -63.5t31.5 -76.5t13 -94z" /> - <glyph glyph-name="inr" unicode="" horiz-adv-x="898" + <glyph glyph-name="inr" unicode="" horiz-adv-x="898" d="M898 1066v-102q0 -14 -9 -23t-23 -9h-168q-23 -144 -129 -234t-276 -110q167 -178 459 -536q14 -16 4 -34q-8 -18 -29 -18h-195q-16 0 -25 12q-306 367 -498 571q-9 9 -9 22v127q0 13 9.5 22.5t22.5 9.5h112q132 0 212.5 43t102.5 125h-427q-14 0 -23 9t-9 23v102 q0 14 9 23t23 9h413q-57 113 -268 113h-145q-13 0 -22.5 9.5t-9.5 22.5v133q0 14 9 23t23 9h832q14 0 23 -9t9 -23v-102q0 -14 -9 -23t-23 -9h-233q47 -61 64 -144h171q14 0 23 -9t9 -23z" /> - <glyph glyph-name="jpy" unicode="" horiz-adv-x="1027" + <glyph glyph-name="jpy" unicode="" horiz-adv-x="1027" d="M603 0h-172q-13 0 -22.5 9t-9.5 23v330h-288q-13 0 -22.5 9t-9.5 23v103q0 13 9.5 22.5t22.5 9.5h288v85h-288q-13 0 -22.5 9t-9.5 23v104q0 13 9.5 22.5t22.5 9.5h214l-321 578q-8 16 0 32q10 16 28 16h194q19 0 29 -18l215 -425q19 -38 56 -125q10 24 30.5 68t27.5 61 l191 420q8 19 29 19h191q17 0 27 -16q9 -14 1 -31l-313 -579h215q13 0 22.5 -9.5t9.5 -22.5v-104q0 -14 -9.5 -23t-22.5 -9h-290v-85h290q13 0 22.5 -9.5t9.5 -22.5v-103q0 -14 -9.5 -23t-22.5 -9h-290v-330q0 -13 -9.5 -22.5t-22.5 -9.5z" /> - <glyph glyph-name="rub" unicode="" horiz-adv-x="1280" + <glyph glyph-name="rub" unicode="" horiz-adv-x="1280" d="M1043 971q0 100 -65 162t-171 62h-320v-448h320q106 0 171 62t65 162zM1280 971q0 -193 -126.5 -315t-326.5 -122h-340v-118h505q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9h-505v-192q0 -14 -9.5 -23t-22.5 -9h-167q-14 0 -23 9t-9 23v192h-224q-14 0 -23 9t-9 23v128 q0 14 9 23t23 9h224v118h-224q-14 0 -23 9t-9 23v149q0 13 9 22.5t23 9.5h224v629q0 14 9 23t23 9h539q200 0 326.5 -122t126.5 -315z" /> - <glyph glyph-name="krw" unicode="" horiz-adv-x="1792" + <glyph glyph-name="krw" unicode="" horiz-adv-x="1792" d="M514 341l81 299h-159l75 -300q1 -1 1 -3t1 -3q0 1 0.5 3.5t0.5 3.5zM630 768l35 128h-292l32 -128h225zM822 768h139l-35 128h-70zM1271 340l78 300h-162l81 -299q0 -1 0.5 -3.5t1.5 -3.5q0 1 0.5 3t0.5 3zM1382 768l33 128h-297l34 -128h230zM1792 736v-64q0 -14 -9 -23 t-23 -9h-213l-164 -616q-7 -24 -31 -24h-159q-24 0 -31 24l-166 616h-209l-167 -616q-7 -24 -31 -24h-159q-11 0 -19.5 7t-10.5 17l-160 616h-208q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h175l-33 128h-142q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h109l-89 344q-5 15 5 28 q10 12 26 12h137q26 0 31 -24l90 -360h359l97 360q7 24 31 24h126q24 0 31 -24l98 -360h365l93 360q5 24 31 24h137q16 0 26 -12q10 -13 5 -28l-91 -344h111q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-145l-34 -128h179q14 0 23 -9t9 -23z" /> - <glyph glyph-name="btc" unicode="" horiz-adv-x="1280" + <glyph glyph-name="btc" unicode="" horiz-adv-x="1280" d="M1167 896q18 -182 -131 -258q117 -28 175 -103t45 -214q-7 -71 -32.5 -125t-64.5 -89t-97 -58.5t-121.5 -34.5t-145.5 -15v-255h-154v251q-80 0 -122 1v-252h-154v255q-18 0 -54 0.5t-55 0.5h-200l31 183h111q50 0 58 51v402h16q-6 1 -16 1v287q-13 68 -89 68h-111v164 l212 -1q64 0 97 1v252h154v-247q82 2 122 2v245h154v-252q79 -7 140 -22.5t113 -45t82.5 -78t36.5 -114.5zM952 351q0 36 -15 64t-37 46t-57.5 30.5t-65.5 18.5t-74 9t-69 3t-64.5 -1t-47.5 -1v-338q8 0 37 -0.5t48 -0.5t53 1.5t58.5 4t57 8.5t55.5 14t47.5 21t39.5 30 t24.5 40t9.5 51zM881 827q0 33 -12.5 58.5t-30.5 42t-48 28t-55 16.5t-61.5 8t-58 2.5t-54 -1t-39.5 -0.5v-307q5 0 34.5 -0.5t46.5 0t50 2t55 5.5t51.5 11t48.5 18.5t37 27t27 38.5t9 51z" /> - <glyph glyph-name="file" unicode="" + <glyph glyph-name="file" unicode="" d="M1024 1024v472q22 -14 36 -28l408 -408q14 -14 28 -36h-472zM896 992q0 -40 28 -68t68 -28h544v-1056q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h800v-544z" /> - <glyph glyph-name="file_text" unicode="" + <glyph glyph-name="file_text" unicode="" d="M1468 1060q14 -14 28 -36h-472v472q22 -14 36 -28zM992 896h544v-1056q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h800v-544q0 -40 28 -68t68 -28zM1152 160v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704 q14 0 23 9t9 23zM1152 416v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23zM1152 672v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23z" /> - <glyph glyph-name="sort_by_alphabet" unicode="" horiz-adv-x="1664" + <glyph glyph-name="sort_by_alphabet" unicode="" horiz-adv-x="1664" d="M1191 1128h177l-72 218l-12 47q-2 16 -2 20h-4l-3 -20q0 -1 -3.5 -18t-7.5 -29zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23zM1572 -23 v-233h-584v90l369 529q12 18 21 27l11 9v3q-2 0 -6.5 -0.5t-7.5 -0.5q-12 -3 -30 -3h-232v-115h-120v229h567v-89l-369 -530q-6 -8 -21 -26l-11 -11v-2l14 2q9 2 30 2h248v119h121zM1661 874v-106h-288v106h75l-47 144h-243l-47 -144h75v-106h-287v106h70l230 662h162 l230 -662h70z" /> - <glyph glyph-name="_329" unicode="" horiz-adv-x="1664" + <glyph glyph-name="_329" unicode="" horiz-adv-x="1664" d="M1191 104h177l-72 218l-12 47q-2 16 -2 20h-4l-3 -20q0 -1 -3.5 -18t-7.5 -29zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23zM1661 -150 v-106h-288v106h75l-47 144h-243l-47 -144h75v-106h-287v106h70l230 662h162l230 -662h70zM1572 1001v-233h-584v90l369 529q12 18 21 27l11 9v3q-2 0 -6.5 -0.5t-7.5 -0.5q-12 -3 -30 -3h-232v-115h-120v229h567v-89l-369 -530q-6 -8 -21 -26l-11 -10v-3l14 3q9 1 30 1h248 v119h121z" /> - <glyph glyph-name="sort_by_attributes" unicode="" horiz-adv-x="1792" + <glyph glyph-name="sort_by_attributes" unicode="" horiz-adv-x="1792" d="M736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23zM1792 -32v-192q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h832 q14 0 23 -9t9 -23zM1600 480v-192q0 -14 -9 -23t-23 -9h-640q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h640q14 0 23 -9t9 -23zM1408 992v-192q0 -14 -9 -23t-23 -9h-448q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h448q14 0 23 -9t9 -23zM1216 1504v-192q0 -14 -9 -23t-23 -9h-256 q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h256q14 0 23 -9t9 -23z" /> - <glyph glyph-name="sort_by_attributes_alt" unicode="" horiz-adv-x="1792" + <glyph glyph-name="sort_by_attributes_alt" unicode="" horiz-adv-x="1792" d="M1216 -32v-192q0 -14 -9 -23t-23 -9h-256q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h256q14 0 23 -9t9 -23zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192 q14 0 23 -9t9 -23zM1408 480v-192q0 -14 -9 -23t-23 -9h-448q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h448q14 0 23 -9t9 -23zM1600 992v-192q0 -14 -9 -23t-23 -9h-640q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h640q14 0 23 -9t9 -23zM1792 1504v-192q0 -14 -9 -23t-23 -9h-832 q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h832q14 0 23 -9t9 -23z" /> - <glyph glyph-name="sort_by_order" unicode="" + <glyph glyph-name="sort_by_order" unicode="" d="M1346 223q0 63 -44 116t-103 53q-52 0 -83 -37t-31 -94t36.5 -95t104.5 -38q50 0 85 27t35 68zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23 zM1486 165q0 -62 -13 -121.5t-41 -114t-68 -95.5t-98.5 -65.5t-127.5 -24.5q-62 0 -108 16q-24 8 -42 15l39 113q15 -7 31 -11q37 -13 75 -13q84 0 134.5 58.5t66.5 145.5h-2q-21 -23 -61.5 -37t-84.5 -14q-106 0 -173 71.5t-67 172.5q0 105 72 178t181 73q123 0 205 -94.5 t82 -252.5zM1456 882v-114h-469v114h167v432q0 7 0.5 19t0.5 17v16h-2l-7 -12q-8 -13 -26 -31l-62 -58l-82 86l192 185h123v-654h165z" /> - <glyph glyph-name="sort_by_order_alt" unicode="" + <glyph glyph-name="sort_by_order_alt" unicode="" d="M1346 1247q0 63 -44 116t-103 53q-52 0 -83 -37t-31 -94t36.5 -95t104.5 -38q50 0 85 27t35 68zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9 t9 -23zM1456 -142v-114h-469v114h167v432q0 7 0.5 19t0.5 17v16h-2l-7 -12q-8 -13 -26 -31l-62 -58l-82 86l192 185h123v-654h165zM1486 1189q0 -62 -13 -121.5t-41 -114t-68 -95.5t-98.5 -65.5t-127.5 -24.5q-62 0 -108 16q-24 8 -42 15l39 113q15 -7 31 -11q37 -13 75 -13 q84 0 134.5 58.5t66.5 145.5h-2q-21 -23 -61.5 -37t-84.5 -14q-106 0 -173 71.5t-67 172.5q0 105 72 178t181 73q123 0 205 -94.5t82 -252.5z" /> - <glyph glyph-name="_334" unicode="" horiz-adv-x="1664" + <glyph glyph-name="_334" unicode="" horiz-adv-x="1664" d="M256 192q0 26 -19 45t-45 19q-27 0 -45.5 -19t-18.5 -45q0 -27 18.5 -45.5t45.5 -18.5q26 0 45 18.5t19 45.5zM416 704v-640q0 -26 -19 -45t-45 -19h-288q-26 0 -45 19t-19 45v640q0 26 19 45t45 19h288q26 0 45 -19t19 -45zM1600 704q0 -86 -55 -149q15 -44 15 -76 q3 -76 -43 -137q17 -56 0 -117q-15 -57 -54 -94q9 -112 -49 -181q-64 -76 -197 -78h-36h-76h-17q-66 0 -144 15.5t-121.5 29t-120.5 39.5q-123 43 -158 44q-26 1 -45 19.5t-19 44.5v641q0 25 18 43.5t43 20.5q24 2 76 59t101 121q68 87 101 120q18 18 31 48t17.5 48.5 t13.5 60.5q7 39 12.5 61t19.5 52t34 50q19 19 45 19q46 0 82.5 -10.5t60 -26t40 -40.5t24 -45t12 -50t5 -45t0.5 -39q0 -38 -9.5 -76t-19 -60t-27.5 -56q-3 -6 -10 -18t-11 -22t-8 -24h277q78 0 135 -57t57 -135z" /> - <glyph glyph-name="_335" unicode="" horiz-adv-x="1664" + <glyph glyph-name="_335" unicode="" horiz-adv-x="1664" d="M256 960q0 -26 -19 -45t-45 -19q-27 0 -45.5 19t-18.5 45q0 27 18.5 45.5t45.5 18.5q26 0 45 -18.5t19 -45.5zM416 448v640q0 26 -19 45t-45 19h-288q-26 0 -45 -19t-19 -45v-640q0 -26 19 -45t45 -19h288q26 0 45 19t19 45zM1545 597q55 -61 55 -149q-1 -78 -57.5 -135 t-134.5 -57h-277q4 -14 8 -24t11 -22t10 -18q18 -37 27 -57t19 -58.5t10 -76.5q0 -24 -0.5 -39t-5 -45t-12 -50t-24 -45t-40 -40.5t-60 -26t-82.5 -10.5q-26 0 -45 19q-20 20 -34 50t-19.5 52t-12.5 61q-9 42 -13.5 60.5t-17.5 48.5t-31 48q-33 33 -101 120q-49 64 -101 121 t-76 59q-25 2 -43 20.5t-18 43.5v641q0 26 19 44.5t45 19.5q35 1 158 44q77 26 120.5 39.5t121.5 29t144 15.5h17h76h36q133 -2 197 -78q58 -69 49 -181q39 -37 54 -94q17 -61 0 -117q46 -61 43 -137q0 -32 -15 -76z" /> - <glyph glyph-name="youtube_sign" unicode="" + <glyph glyph-name="youtube_sign" unicode="" d="M919 233v157q0 50 -29 50q-17 0 -33 -16v-224q16 -16 33 -16q29 0 29 49zM1103 355h66v34q0 51 -33 51t-33 -51v-34zM532 621v-70h-80v-423h-74v423h-78v70h232zM733 495v-367h-67v40q-39 -45 -76 -45q-33 0 -42 28q-6 17 -6 54v290h66v-270q0 -24 1 -26q1 -15 15 -15 q20 0 42 31v280h67zM985 384v-146q0 -52 -7 -73q-12 -42 -53 -42q-35 0 -68 41v-36h-67v493h67v-161q32 40 68 40q41 0 53 -42q7 -21 7 -74zM1236 255v-9q0 -29 -2 -43q-3 -22 -15 -40q-27 -40 -80 -40q-52 0 -81 38q-21 27 -21 86v129q0 59 20 86q29 38 80 38t78 -38 q21 -29 21 -86v-76h-133v-65q0 -51 34 -51q24 0 30 26q0 1 0.5 7t0.5 16.5v21.5h68zM785 1079v-156q0 -51 -32 -51t-32 51v156q0 52 32 52t32 -52zM1318 366q0 177 -19 260q-10 44 -43 73.5t-76 34.5q-136 15 -412 15q-275 0 -411 -15q-44 -5 -76.5 -34.5t-42.5 -73.5 q-20 -87 -20 -260q0 -176 20 -260q10 -43 42.5 -73t75.5 -35q137 -15 412 -15t412 15q43 5 75.5 35t42.5 73q20 84 20 260zM563 1017l90 296h-75l-51 -195l-53 195h-78q7 -23 23 -69l24 -69q35 -103 46 -158v-201h74v201zM852 936v130q0 58 -21 87q-29 38 -78 38 q-51 0 -78 -38q-21 -29 -21 -87v-130q0 -58 21 -87q27 -38 78 -38q49 0 78 38q21 27 21 87zM1033 816h67v370h-67v-283q-22 -31 -42 -31q-15 0 -16 16q-1 2 -1 26v272h-67v-293q0 -37 6 -55q11 -27 43 -27q36 0 77 45v-40zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5 h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="youtube" unicode="" + <glyph glyph-name="youtube" unicode="" d="M971 292v-211q0 -67 -39 -67q-23 0 -45 22v301q22 22 45 22q39 0 39 -67zM1309 291v-46h-90v46q0 68 45 68t45 -68zM343 509h107v94h-312v-94h105v-569h100v569zM631 -60h89v494h-89v-378q-30 -42 -57 -42q-18 0 -21 21q-1 3 -1 35v364h-89v-391q0 -49 8 -73 q12 -37 58 -37q48 0 102 61v-54zM1060 88v197q0 73 -9 99q-17 56 -71 56q-50 0 -93 -54v217h-89v-663h89v48q45 -55 93 -55q54 0 71 55q9 27 9 100zM1398 98v13h-91q0 -51 -2 -61q-7 -36 -40 -36q-46 0 -46 69v87h179v103q0 79 -27 116q-39 51 -106 51q-68 0 -107 -51 q-28 -37 -28 -116v-173q0 -79 29 -116q39 -51 108 -51q72 0 108 53q18 27 21 54q2 9 2 58zM790 1011v210q0 69 -43 69t-43 -69v-210q0 -70 43 -70t43 70zM1509 260q0 -234 -26 -350q-14 -59 -58 -99t-102 -46q-184 -21 -555 -21t-555 21q-58 6 -102.5 46t-57.5 99 q-26 112 -26 350q0 234 26 350q14 59 58 99t103 47q183 20 554 20t555 -20q58 -7 102.5 -47t57.5 -99q26 -112 26 -350zM511 1536h102l-121 -399v-271h-100v271q-14 74 -61 212q-37 103 -65 187h106l71 -263zM881 1203v-175q0 -81 -28 -118q-38 -51 -106 -51q-67 0 -105 51 q-28 38 -28 118v175q0 80 28 117q38 51 105 51q68 0 106 -51q28 -37 28 -117zM1216 1365v-499h-91v55q-53 -62 -103 -62q-46 0 -59 37q-8 24 -8 75v394h91v-367q0 -33 1 -35q3 -22 21 -22q27 0 57 43v381h91z" /> - <glyph glyph-name="xing" unicode="" horiz-adv-x="1408" + <glyph glyph-name="xing" unicode="" horiz-adv-x="1408" d="M597 869q-10 -18 -257 -456q-27 -46 -65 -46h-239q-21 0 -31 17t0 36l253 448q1 0 0 1l-161 279q-12 22 -1 37q9 15 32 15h239q40 0 66 -45zM1403 1511q11 -16 0 -37l-528 -934v-1l336 -615q11 -20 1 -37q-10 -15 -32 -15h-239q-42 0 -66 45l-339 622q18 32 531 942 q25 45 64 45h241q22 0 31 -15z" /> - <glyph glyph-name="xing_sign" unicode="" + <glyph glyph-name="xing_sign" unicode="" d="M685 771q0 1 -126 222q-21 34 -52 34h-184q-18 0 -26 -11q-7 -12 1 -29l125 -216v-1l-196 -346q-9 -14 0 -28q8 -13 24 -13h185q31 0 50 36zM1309 1268q-7 12 -24 12h-187q-30 0 -49 -35l-411 -729q1 -2 262 -481q20 -35 52 -35h184q18 0 25 12q8 13 -1 28l-260 476v1 l409 723q8 16 0 28zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="youtube_play" unicode="" horiz-adv-x="1792" + <glyph glyph-name="youtube_play" unicode="" horiz-adv-x="1792" d="M711 408l484 250l-484 253v-503zM896 1270q168 0 324.5 -4.5t229.5 -9.5l73 -4q1 0 17 -1.5t23 -3t23.5 -4.5t28.5 -8t28 -13t31 -19.5t29 -26.5q6 -6 15.5 -18.5t29 -58.5t26.5 -101q8 -64 12.5 -136.5t5.5 -113.5v-40v-136q1 -145 -18 -290q-7 -55 -25 -99.5t-32 -61.5 l-14 -17q-14 -15 -29 -26.5t-31 -19t-28 -12.5t-28.5 -8t-24 -4.5t-23 -3t-16.5 -1.5q-251 -19 -627 -19q-207 2 -359.5 6.5t-200.5 7.5l-49 4l-36 4q-36 5 -54.5 10t-51 21t-56.5 41q-6 6 -15.5 18.5t-29 58.5t-26.5 101q-8 64 -12.5 136.5t-5.5 113.5v40v136 q-1 145 18 290q7 55 25 99.5t32 61.5l14 17q14 15 29 26.5t31 19.5t28 13t28.5 8t23.5 4.5t23 3t17 1.5q251 18 627 18z" /> - <glyph glyph-name="dropbox" unicode="" horiz-adv-x="1792" + <glyph glyph-name="dropbox" unicode="" horiz-adv-x="1792" d="M402 829l494 -305l-342 -285l-490 319zM1388 274v-108l-490 -293v-1l-1 1l-1 -1v1l-489 293v108l147 -96l342 284v2l1 -1l1 1v-2l343 -284zM554 1418l342 -285l-494 -304l-338 270zM1390 829l338 -271l-489 -319l-343 285zM1239 1418l489 -319l-338 -270l-494 304z" /> - <glyph glyph-name="stackexchange" unicode="" + <glyph glyph-name="stackexchange" unicode="" d="M1289 -96h-1118v480h-160v-640h1438v640h-160v-480zM347 428l33 157l783 -165l-33 -156zM450 802l67 146l725 -339l-67 -145zM651 1158l102 123l614 -513l-102 -123zM1048 1536l477 -641l-128 -96l-477 641zM330 65v159h800v-159h-800z" /> - <glyph glyph-name="instagram" unicode="" + <glyph glyph-name="instagram" unicode="" d="M1024 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1162 640q0 -164 -115 -279t-279 -115t-279 115t-115 279t115 279t279 115t279 -115t115 -279zM1270 1050q0 -38 -27 -65t-65 -27t-65 27t-27 65t27 65t65 27t65 -27t27 -65zM768 1270 q-7 0 -76.5 0.5t-105.5 0t-96.5 -3t-103 -10t-71.5 -18.5q-50 -20 -88 -58t-58 -88q-11 -29 -18.5 -71.5t-10 -103t-3 -96.5t0 -105.5t0.5 -76.5t-0.5 -76.5t0 -105.5t3 -96.5t10 -103t18.5 -71.5q20 -50 58 -88t88 -58q29 -11 71.5 -18.5t103 -10t96.5 -3t105.5 0t76.5 0.5 t76.5 -0.5t105.5 0t96.5 3t103 10t71.5 18.5q50 20 88 58t58 88q11 29 18.5 71.5t10 103t3 96.5t0 105.5t-0.5 76.5t0.5 76.5t0 105.5t-3 96.5t-10 103t-18.5 71.5q-20 50 -58 88t-88 58q-29 11 -71.5 18.5t-103 10t-96.5 3t-105.5 0t-76.5 -0.5zM1536 640q0 -229 -5 -317 q-10 -208 -124 -322t-322 -124q-88 -5 -317 -5t-317 5q-208 10 -322 124t-124 322q-5 88 -5 317t5 317q10 208 124 322t322 124q88 5 317 5t317 -5q208 -10 322 -124t124 -322q5 -88 5 -317z" /> - <glyph glyph-name="flickr" unicode="" + <glyph glyph-name="flickr" unicode="" d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960zM698 640q0 88 -62 150t-150 62t-150 -62t-62 -150t62 -150t150 -62t150 62t62 150zM1262 640q0 88 -62 150 t-150 62t-150 -62t-62 -150t62 -150t150 -62t150 62t62 150z" /> - <glyph glyph-name="adn" unicode="" + <glyph glyph-name="adn" unicode="" d="M768 914l201 -306h-402zM1133 384h94l-459 691l-459 -691h94l104 160h522zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="f171" unicode="" horiz-adv-x="1408" + <glyph glyph-name="f171" unicode="" horiz-adv-x="1408" d="M815 677q8 -63 -50.5 -101t-111.5 -6q-39 17 -53.5 58t-0.5 82t52 58q36 18 72.5 12t64 -35.5t27.5 -67.5zM926 698q-14 107 -113 164t-197 13q-63 -28 -100.5 -88.5t-34.5 -129.5q4 -91 77.5 -155t165.5 -56q91 8 152 84t50 168zM1165 1240q-20 27 -56 44.5t-58 22 t-71 12.5q-291 47 -566 -2q-43 -7 -66 -12t-55 -22t-50 -43q30 -28 76 -45.5t73.5 -22t87.5 -11.5q228 -29 448 -1q63 8 89.5 12t72.5 21.5t75 46.5zM1222 205q-8 -26 -15.5 -76.5t-14 -84t-28.5 -70t-58 -56.5q-86 -48 -189.5 -71.5t-202 -22t-201.5 18.5q-46 8 -81.5 18 t-76.5 27t-73 43.5t-52 61.5q-25 96 -57 292l6 16l18 9q223 -148 506.5 -148t507.5 148q21 -6 24 -23t-5 -45t-8 -37zM1403 1166q-26 -167 -111 -655q-5 -30 -27 -56t-43.5 -40t-54.5 -31q-252 -126 -610 -88q-248 27 -394 139q-15 12 -25.5 26.5t-17 35t-9 34t-6 39.5 t-5.5 35q-9 50 -26.5 150t-28 161.5t-23.5 147.5t-22 158q3 26 17.5 48.5t31.5 37.5t45 30t46 22.5t48 18.5q125 46 313 64q379 37 676 -50q155 -46 215 -122q16 -20 16.5 -51t-5.5 -54z" /> - <glyph glyph-name="bitbucket_sign" unicode="" + <glyph glyph-name="bitbucket_sign" unicode="" d="M848 666q0 43 -41 66t-77 1q-43 -20 -42.5 -72.5t43.5 -70.5q39 -23 81 4t36 72zM928 682q8 -66 -36 -121t-110 -61t-119 40t-56 113q-2 49 25.5 93t72.5 64q70 31 141.5 -10t81.5 -118zM1100 1073q-20 -21 -53.5 -34t-53 -16t-63.5 -8q-155 -20 -324 0q-44 6 -63 9.5 t-52.5 16t-54.5 32.5q13 19 36 31t40 15.5t47 8.5q198 35 408 1q33 -5 51 -8.5t43 -16t39 -31.5zM1142 327q0 7 5.5 26.5t3 32t-17.5 16.5q-161 -106 -365 -106t-366 106l-12 -6l-5 -12q26 -154 41 -210q47 -81 204 -108q249 -46 428 53q34 19 49 51.5t22.5 85.5t12.5 71z M1272 1020q9 53 -8 75q-43 55 -155 88q-216 63 -487 36q-132 -12 -226 -46q-38 -15 -59.5 -25t-47 -34t-29.5 -54q8 -68 19 -138t29 -171t24 -137q1 -5 5 -31t7 -36t12 -27t22 -28q105 -80 284 -100q259 -28 440 63q24 13 39.5 23t31 29t19.5 40q48 267 80 473zM1536 1120 v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="tumblr" unicode="" horiz-adv-x="1024" + <glyph glyph-name="tumblr" unicode="" horiz-adv-x="1024" d="M944 207l80 -237q-23 -35 -111 -66t-177 -32q-104 -2 -190.5 26t-142.5 74t-95 106t-55.5 120t-16.5 118v544h-168v215q72 26 129 69.5t91 90t58 102t34 99t15 88.5q1 5 4.5 8.5t7.5 3.5h244v-424h333v-252h-334v-518q0 -30 6.5 -56t22.5 -52.5t49.5 -41.5t81.5 -14 q78 2 134 29z" /> - <glyph glyph-name="tumblr_sign" unicode="" + <glyph glyph-name="tumblr_sign" unicode="" d="M1136 75l-62 183q-44 -22 -103 -22q-36 -1 -62 10.5t-38.5 31.5t-17.5 40.5t-5 43.5v398h257v194h-256v326h-188q-8 0 -9 -10q-5 -44 -17.5 -87t-39 -95t-77 -95t-118.5 -68v-165h130v-418q0 -57 21.5 -115t65 -111t121 -85.5t176.5 -30.5q69 1 136.5 25t85.5 50z M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="long_arrow_down" unicode="" horiz-adv-x="768" + <glyph glyph-name="long_arrow_down" unicode="" horiz-adv-x="768" d="M765 237q8 -19 -5 -35l-350 -384q-10 -10 -23 -10q-14 0 -24 10l-355 384q-13 16 -5 35q9 19 29 19h224v1248q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1248h224q21 0 29 -19z" /> - <glyph glyph-name="long_arrow_up" unicode="" horiz-adv-x="768" + <glyph glyph-name="long_arrow_up" unicode="" horiz-adv-x="768" d="M765 1043q-9 -19 -29 -19h-224v-1248q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v1248h-224q-21 0 -29 19t5 35l350 384q10 10 23 10q14 0 24 -10l355 -384q13 -16 5 -35z" /> - <glyph glyph-name="long_arrow_left" unicode="" horiz-adv-x="1792" + <glyph glyph-name="long_arrow_left" unicode="" horiz-adv-x="1792" d="M1792 736v-192q0 -14 -9 -23t-23 -9h-1248v-224q0 -21 -19 -29t-35 5l-384 350q-10 10 -10 23q0 14 10 24l384 354q16 14 35 6q19 -9 19 -29v-224h1248q14 0 23 -9t9 -23z" /> - <glyph glyph-name="long_arrow_right" unicode="" horiz-adv-x="1792" + <glyph glyph-name="long_arrow_right" unicode="" horiz-adv-x="1792" d="M1728 643q0 -14 -10 -24l-384 -354q-16 -14 -35 -6q-19 9 -19 29v224h-1248q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h1248v224q0 21 19 29t35 -5l384 -350q10 -10 10 -23z" /> - <glyph glyph-name="apple" unicode="" horiz-adv-x="1408" + <glyph glyph-name="apple" unicode="" horiz-adv-x="1408" d="M1393 321q-39 -125 -123 -250q-129 -196 -257 -196q-49 0 -140 32q-86 32 -151 32q-61 0 -142 -33q-81 -34 -132 -34q-152 0 -301 259q-147 261 -147 503q0 228 113 374q113 144 284 144q72 0 177 -30q104 -30 138 -30q45 0 143 34q102 34 173 34q119 0 213 -65 q52 -36 104 -100q-79 -67 -114 -118q-65 -94 -65 -207q0 -124 69 -223t158 -126zM1017 1494q0 -61 -29 -136q-30 -75 -93 -138q-54 -54 -108 -72q-37 -11 -104 -17q3 149 78 257q74 107 250 148q1 -3 2.5 -11t2.5 -11q0 -4 0.5 -10t0.5 -10z" /> - <glyph glyph-name="windows" unicode="" horiz-adv-x="1664" + <glyph glyph-name="windows" unicode="" horiz-adv-x="1664" d="M682 530v-651l-682 94v557h682zM682 1273v-659h-682v565zM1664 530v-786l-907 125v661h907zM1664 1408v-794h-907v669z" /> - <glyph glyph-name="android" unicode="" horiz-adv-x="1408" + <glyph glyph-name="android" unicode="" horiz-adv-x="1408" d="M493 1053q16 0 27.5 11.5t11.5 27.5t-11.5 27.5t-27.5 11.5t-27 -11.5t-11 -27.5t11 -27.5t27 -11.5zM915 1053q16 0 27 11.5t11 27.5t-11 27.5t-27 11.5t-27.5 -11.5t-11.5 -27.5t11.5 -27.5t27.5 -11.5zM103 869q42 0 72 -30t30 -72v-430q0 -43 -29.5 -73t-72.5 -30 t-73 30t-30 73v430q0 42 30 72t73 30zM1163 850v-666q0 -46 -32 -78t-77 -32h-75v-227q0 -43 -30 -73t-73 -30t-73 30t-30 73v227h-138v-227q0 -43 -30 -73t-73 -30q-42 0 -72 30t-30 73l-1 227h-74q-46 0 -78 32t-32 78v666h918zM931 1255q107 -55 171 -153.5t64 -215.5 h-925q0 117 64 215.5t172 153.5l-71 131q-7 13 5 20q13 6 20 -6l72 -132q95 42 201 42t201 -42l72 132q7 12 20 6q12 -7 5 -20zM1408 767v-430q0 -43 -30 -73t-73 -30q-42 0 -72 30t-30 73v430q0 43 30 72.5t72 29.5q43 0 73 -29.5t30 -72.5z" /> - <glyph glyph-name="linux" unicode="" + <glyph glyph-name="linux" unicode="" d="M663 1125q-11 -1 -15.5 -10.5t-8.5 -9.5q-5 -1 -5 5q0 12 19 15h10zM750 1111q-4 -1 -11.5 6.5t-17.5 4.5q24 11 32 -2q3 -6 -3 -9zM399 684q-4 1 -6 -3t-4.5 -12.5t-5.5 -13.5t-10 -13q-10 -11 -1 -12q4 -1 12.5 7t12.5 18q1 3 2 7t2 6t1.5 4.5t0.5 4v3t-1 2.5t-3 2z M1254 325q0 18 -55 42q4 15 7.5 27.5t5 26t3 21.5t0.5 22.5t-1 19.5t-3.5 22t-4 20.5t-5 25t-5.5 26.5q-10 48 -47 103t-72 75q24 -20 57 -83q87 -162 54 -278q-11 -40 -50 -42q-31 -4 -38.5 18.5t-8 83.5t-11.5 107q-9 39 -19.5 69t-19.5 45.5t-15.5 24.5t-13 15t-7.5 7 q-14 62 -31 103t-29.5 56t-23.5 33t-15 40q-4 21 6 53.5t4.5 49.5t-44.5 25q-15 3 -44.5 18t-35.5 16q-8 1 -11 26t8 51t36 27q37 3 51 -30t4 -58q-11 -19 -2 -26.5t30 -0.5q13 4 13 36v37q-5 30 -13.5 50t-21 30.5t-23.5 15t-27 7.5q-107 -8 -89 -134q0 -15 -1 -15 @@ -1242,153 +1242,153 @@ t-14 -48q3 -17 37 -26q20 -6 84.5 -18.5t99.5 -20.5q24 -6 74 -22t82.5 -23t55.5 -4q q110 143 124 195q-12 112 -16 310q-2 90 24 151.5t106 104.5q39 21 104 21q53 1 106 -13.5t89 -41.5q57 -42 91.5 -121.5t29.5 -147.5q-5 -95 30 -214q34 -113 133 -218q55 -59 99.5 -163t59.5 -191q8 -49 5 -84.5t-12 -55.5t-20 -22q-10 -2 -23.5 -19t-27 -35.5 t-40.5 -33.5t-61 -14q-18 1 -31.5 5t-22.5 13.5t-13.5 15.5t-11.5 20.5t-9 19.5q-22 37 -41 30t-28 -49t7 -97q20 -70 1 -195q-10 -65 18 -100.5t73 -33t85 35.5q59 49 89.5 66.5t103.5 42.5q53 18 77 36.5t18.5 34.5t-25 28.5t-51.5 23.5q-33 11 -49.5 48t-15 72.5 t15.5 47.5q1 -31 8 -56.5t14.5 -40.5t20.5 -28.5t21 -19t21.5 -13t16.5 -9.5z" /> - <glyph glyph-name="dribble" unicode="" + <glyph glyph-name="dribble" unicode="" d="M1024 36q-42 241 -140 498h-2l-2 -1q-16 -6 -43 -16.5t-101 -49t-137 -82t-131 -114.5t-103 -148l-15 11q184 -150 418 -150q132 0 256 52zM839 643q-21 49 -53 111q-311 -93 -673 -93q-1 -7 -1 -21q0 -124 44 -236.5t124 -201.5q50 89 123.5 166.5t142.5 124.5t130.5 81 t99.5 48l37 13q4 1 13 3.5t13 4.5zM732 855q-120 213 -244 378q-138 -65 -234 -186t-128 -272q302 0 606 80zM1416 536q-210 60 -409 29q87 -239 128 -469q111 75 185 189.5t96 250.5zM611 1277q-1 0 -2 -1q1 1 2 1zM1201 1132q-185 164 -433 164q-76 0 -155 -19 q131 -170 246 -382q69 26 130 60.5t96.5 61.5t65.5 57t37.5 40.5zM1424 647q-3 232 -149 410l-1 -1q-9 -12 -19 -24.5t-43.5 -44.5t-71 -60.5t-100 -65t-131.5 -64.5q25 -53 44 -95q2 -5 6.5 -17t7.5 -17q36 5 74.5 7t73.5 2t69 -1.5t64 -4t56.5 -5.5t48 -6.5t36.5 -6 t25 -4.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="skype" unicode="" + <glyph glyph-name="skype" unicode="" d="M1173 473q0 50 -19.5 91.5t-48.5 68.5t-73 49t-82.5 34t-87.5 23l-104 24q-30 7 -44 10.5t-35 11.5t-30 16t-16.5 21t-7.5 30q0 77 144 77q43 0 77 -12t54 -28.5t38 -33.5t40 -29t48 -12q47 0 75.5 32t28.5 77q0 55 -56 99.5t-142 67.5t-182 23q-68 0 -132 -15.5 t-119.5 -47t-89 -87t-33.5 -128.5q0 -61 19 -106.5t56 -75.5t80 -48.5t103 -32.5l146 -36q90 -22 112 -36q32 -20 32 -60q0 -39 -40 -64.5t-105 -25.5q-51 0 -91.5 16t-65 38.5t-45.5 45t-46 38.5t-54 16q-50 0 -75.5 -30t-25.5 -75q0 -92 122 -157.5t291 -65.5 q73 0 140 18.5t122.5 53.5t88.5 93.5t33 131.5zM1536 256q0 -159 -112.5 -271.5t-271.5 -112.5q-130 0 -234 80q-77 -16 -150 -16q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5q0 73 16 150q-80 104 -80 234q0 159 112.5 271.5t271.5 112.5q130 0 234 -80 q77 16 150 16q143 0 273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -73 -16 -150q80 -104 80 -234z" /> - <glyph glyph-name="foursquare" unicode="" horiz-adv-x="1280" + <glyph glyph-name="foursquare" unicode="" horiz-adv-x="1280" d="M1000 1102l37 194q5 23 -9 40t-35 17h-712q-23 0 -38.5 -17t-15.5 -37v-1101q0 -7 6 -1l291 352q23 26 38 33.5t48 7.5h239q22 0 37 14.5t18 29.5q24 130 37 191q4 21 -11.5 40t-36.5 19h-294q-29 0 -48 19t-19 48v42q0 29 19 47.5t48 18.5h346q18 0 35 13.5t20 29.5z M1227 1324q-15 -73 -53.5 -266.5t-69.5 -350t-35 -173.5q-6 -22 -9 -32.5t-14 -32.5t-24.5 -33t-38.5 -21t-58 -10h-271q-13 0 -22 -10q-8 -9 -426 -494q-22 -25 -58.5 -28.5t-48.5 5.5q-55 22 -55 98v1410q0 55 38 102.5t120 47.5h888q95 0 127 -53t10 -159zM1227 1324 l-158 -790q4 17 35 173.5t69.5 350t53.5 266.5z" /> - <glyph glyph-name="trello" unicode="" + <glyph glyph-name="trello" unicode="" d="M704 192v1024q0 14 -9 23t-23 9h-480q-14 0 -23 -9t-9 -23v-1024q0 -14 9 -23t23 -9h480q14 0 23 9t9 23zM1376 576v640q0 14 -9 23t-23 9h-480q-14 0 -23 -9t-9 -23v-640q0 -14 9 -23t23 -9h480q14 0 23 9t9 23zM1536 1344v-1408q0 -26 -19 -45t-45 -19h-1408 q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h1408q26 0 45 -19t19 -45z" /> - <glyph glyph-name="female" unicode="" horiz-adv-x="1280" + <glyph glyph-name="female" unicode="" horiz-adv-x="1280" d="M1280 480q0 -40 -28 -68t-68 -28q-51 0 -80 43l-227 341h-45v-132l247 -411q9 -15 9 -33q0 -26 -19 -45t-45 -19h-192v-272q0 -46 -33 -79t-79 -33h-160q-46 0 -79 33t-33 79v272h-192q-26 0 -45 19t-19 45q0 18 9 33l247 411v132h-45l-227 -341q-29 -43 -80 -43 q-40 0 -68 28t-28 68q0 29 16 53l256 384q73 107 176 107h384q103 0 176 -107l256 -384q16 -24 16 -53zM864 1280q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z" /> - <glyph glyph-name="male" unicode="" horiz-adv-x="1024" + <glyph glyph-name="male" unicode="" horiz-adv-x="1024" d="M1024 832v-416q0 -40 -28 -68t-68 -28t-68 28t-28 68v352h-64v-912q0 -46 -33 -79t-79 -33t-79 33t-33 79v464h-64v-464q0 -46 -33 -79t-79 -33t-79 33t-33 79v912h-64v-352q0 -40 -28 -68t-68 -28t-68 28t-28 68v416q0 80 56 136t136 56h640q80 0 136 -56t56 -136z M736 1280q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z" /> - <glyph glyph-name="gittip" unicode="" + <glyph glyph-name="gittip" unicode="" d="M773 234l350 473q16 22 24.5 59t-6 85t-61.5 79q-40 26 -83 25.5t-73.5 -17.5t-54.5 -45q-36 -40 -96 -40q-59 0 -95 40q-24 28 -54.5 45t-73.5 17.5t-84 -25.5q-46 -31 -60.5 -79t-6 -85t24.5 -59zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103 t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="sun" unicode="" horiz-adv-x="1792" + <glyph glyph-name="sun" unicode="" horiz-adv-x="1792" d="M1472 640q0 117 -45.5 223.5t-123 184t-184 123t-223.5 45.5t-223.5 -45.5t-184 -123t-123 -184t-45.5 -223.5t45.5 -223.5t123 -184t184 -123t223.5 -45.5t223.5 45.5t184 123t123 184t45.5 223.5zM1748 363q-4 -15 -20 -20l-292 -96v-306q0 -16 -13 -26q-15 -10 -29 -4 l-292 94l-180 -248q-10 -13 -26 -13t-26 13l-180 248l-292 -94q-14 -6 -29 4q-13 10 -13 26v306l-292 96q-16 5 -20 20q-5 17 4 29l180 248l-180 248q-9 13 -4 29q4 15 20 20l292 96v306q0 16 13 26q15 10 29 4l292 -94l180 248q9 12 26 12t26 -12l180 -248l292 94 q14 6 29 -4q13 -10 13 -26v-306l292 -96q16 -5 20 -20q5 -16 -4 -29l-180 -248l180 -248q9 -12 4 -29z" /> - <glyph glyph-name="_366" unicode="" + <glyph glyph-name="_366" unicode="" d="M1262 233q-54 -9 -110 -9q-182 0 -337 90t-245 245t-90 337q0 192 104 357q-201 -60 -328.5 -229t-127.5 -384q0 -130 51 -248.5t136.5 -204t204 -136.5t248.5 -51q144 0 273.5 61.5t220.5 171.5zM1465 318q-94 -203 -283.5 -324.5t-413.5 -121.5q-156 0 -298 61 t-245 164t-164 245t-61 298q0 153 57.5 292.5t156 241.5t235.5 164.5t290 68.5q44 2 61 -39q18 -41 -15 -72q-86 -78 -131.5 -181.5t-45.5 -218.5q0 -148 73 -273t198 -198t273 -73q118 0 228 51q41 18 72 -13q14 -14 17.5 -34t-4.5 -38z" /> - <glyph glyph-name="archive" unicode="" horiz-adv-x="1792" + <glyph glyph-name="archive" unicode="" horiz-adv-x="1792" d="M1088 704q0 26 -19 45t-45 19h-256q-26 0 -45 -19t-19 -45t19 -45t45 -19h256q26 0 45 19t19 45zM1664 896v-960q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v960q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1728 1344v-256q0 -26 -19 -45t-45 -19h-1536 q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1536q26 0 45 -19t19 -45z" /> - <glyph glyph-name="bug" unicode="" horiz-adv-x="1664" + <glyph glyph-name="bug" unicode="" horiz-adv-x="1664" d="M1632 576q0 -26 -19 -45t-45 -19h-224q0 -171 -67 -290l208 -209q19 -19 19 -45t-19 -45q-18 -19 -45 -19t-45 19l-198 197q-5 -5 -15 -13t-42 -28.5t-65 -36.5t-82 -29t-97 -13v896h-128v-896q-51 0 -101.5 13.5t-87 33t-66 39t-43.5 32.5l-15 14l-183 -207 q-20 -21 -48 -21q-24 0 -43 16q-19 18 -20.5 44.5t15.5 46.5l202 227q-58 114 -58 274h-224q-26 0 -45 19t-19 45t19 45t45 19h224v294l-173 173q-19 19 -19 45t19 45t45 19t45 -19l173 -173h844l173 173q19 19 45 19t45 -19t19 -45t-19 -45l-173 -173v-294h224q26 0 45 -19 t19 -45zM1152 1152h-640q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5z" /> - <glyph glyph-name="vk" unicode="" horiz-adv-x="1920" + <glyph glyph-name="vk" unicode="" horiz-adv-x="1920" d="M1917 1016q23 -64 -150 -294q-24 -32 -65 -85q-40 -51 -55 -72t-30.5 -49.5t-12 -42t13 -34.5t32.5 -43t57 -53q4 -2 5 -4q141 -131 191 -221q3 -5 6.5 -12.5t7 -26.5t-0.5 -34t-25 -27.5t-59 -12.5l-256 -4q-24 -5 -56 5t-52 22l-20 12q-30 21 -70 64t-68.5 77.5t-61 58 t-56.5 15.5q-3 -1 -8 -3.5t-17 -14.5t-21.5 -29.5t-17 -52t-6.5 -77.5q0 -15 -3.5 -27.5t-7.5 -18.5l-4 -5q-18 -19 -53 -22h-115q-71 -4 -146 16.5t-131.5 53t-103 66t-70.5 57.5l-25 24q-10 10 -27.5 30t-71.5 91t-106 151t-122.5 211t-130.5 272q-6 16 -6 27t3 16l4 6 q15 19 57 19l274 2q12 -2 23 -6.5t16 -8.5l5 -3q16 -11 24 -32q20 -50 46 -103.5t41 -81.5l16 -29q29 -60 56 -104t48.5 -68.5t41.5 -38.5t34 -14t27 5q2 1 5 5t12 22t13.5 47t9.5 81t0 125q-2 40 -9 73t-14 46l-6 12q-25 34 -85 43q-13 2 5 24q16 19 38 30q53 26 239 24 q82 -1 135 -13q20 -5 33.5 -13.5t20.5 -24t10.5 -32t3.5 -45.5t-1 -55t-2.5 -70.5t-1.5 -82.5q0 -11 -1 -42t-0.5 -48t3.5 -40.5t11.5 -39t22.5 -24.5q8 -2 17 -4t26 11t38 34.5t52 67t68 107.5q60 104 107 225q4 10 10 17.5t11 10.5l4 3l5 2.5t13 3t20 0.5l288 2 q39 5 64 -2.5t31 -16.5z" /> - <glyph glyph-name="weibo" unicode="" horiz-adv-x="1792" + <glyph glyph-name="weibo" unicode="" horiz-adv-x="1792" d="M675 252q21 34 11 69t-45 50q-34 14 -73 1t-60 -46q-22 -34 -13 -68.5t43 -50.5t74.5 -2.5t62.5 47.5zM769 373q8 13 3.5 26.5t-17.5 18.5q-14 5 -28.5 -0.5t-21.5 -18.5q-17 -31 13 -45q14 -5 29 0.5t22 18.5zM943 266q-45 -102 -158 -150t-224 -12 q-107 34 -147.5 126.5t6.5 187.5q47 93 151.5 139t210.5 19q111 -29 158.5 -119.5t2.5 -190.5zM1255 426q-9 96 -89 170t-208.5 109t-274.5 21q-223 -23 -369.5 -141.5t-132.5 -264.5q9 -96 89 -170t208.5 -109t274.5 -21q223 23 369.5 141.5t132.5 264.5zM1563 422 q0 -68 -37 -139.5t-109 -137t-168.5 -117.5t-226 -83t-270.5 -31t-275 33.5t-240.5 93t-171.5 151t-65 199.5q0 115 69.5 245t197.5 258q169 169 341.5 236t246.5 -7q65 -64 20 -209q-4 -14 -1 -20t10 -7t14.5 0.5t13.5 3.5l6 2q139 59 246 59t153 -61q45 -63 0 -178 q-2 -13 -4.5 -20t4.5 -12.5t12 -7.5t17 -6q57 -18 103 -47t80 -81.5t34 -116.5zM1489 1046q42 -47 54.5 -108.5t-6.5 -117.5q-8 -23 -29.5 -34t-44.5 -4q-23 8 -34 29.5t-4 44.5q20 63 -24 111t-107 35q-24 -5 -45 8t-25 37q-5 24 8 44.5t37 25.5q60 13 119 -5.5t101 -65.5z M1670 1209q87 -96 112.5 -222.5t-13.5 -241.5q-9 -27 -34 -40t-52 -4t-40 34t-5 52q28 82 10 172t-80 158q-62 69 -148 95.5t-173 8.5q-28 -6 -52 9.5t-30 43.5t9.5 51.5t43.5 29.5q123 26 244 -11.5t208 -134.5z" /> - <glyph glyph-name="renren" unicode="" + <glyph glyph-name="renren" unicode="" d="M1133 -34q-171 -94 -368 -94q-196 0 -367 94q138 87 235.5 211t131.5 268q35 -144 132.5 -268t235.5 -211zM638 1394v-485q0 -252 -126.5 -459.5t-330.5 -306.5q-181 215 -181 495q0 187 83.5 349.5t229.5 269.5t325 137zM1536 638q0 -280 -181 -495 q-204 99 -330.5 306.5t-126.5 459.5v485q179 -30 325 -137t229.5 -269.5t83.5 -349.5z" /> - <glyph glyph-name="_372" unicode="" horiz-adv-x="1408" + <glyph glyph-name="_372" unicode="" horiz-adv-x="1408" d="M1402 433q-32 -80 -76 -138t-91 -88.5t-99 -46.5t-101.5 -14.5t-96.5 8.5t-86.5 22t-69.5 27.5t-46 22.5l-17 10q-113 -228 -289.5 -359.5t-384.5 -132.5q-19 0 -32 13t-13 32t13 31.5t32 12.5q173 1 322.5 107.5t251.5 294.5q-36 -14 -72 -23t-83 -13t-91 2.5t-93 28.5 t-92 59t-84.5 100t-74.5 146q114 47 214 57t167.5 -7.5t124.5 -56.5t88.5 -77t56.5 -82q53 131 79 291q-7 -1 -18 -2.5t-46.5 -2.5t-69.5 0.5t-81.5 10t-88.5 23t-84 42.5t-75 65t-54.5 94.5t-28.5 127.5q70 28 133.5 36.5t112.5 -1t92 -30t73.5 -50t56 -61t42 -63t27.5 -56 t16 -39.5l4 -16q12 122 12 195q-8 6 -21.5 16t-49 44.5t-63.5 71.5t-54 93t-33 112.5t12 127t70 138.5q73 -25 127.5 -61.5t84.5 -76.5t48 -85t20.5 -89t-0.5 -85.5t-13 -76.5t-19 -62t-17 -42l-7 -15q1 -4 1 -50t-1 -72q3 7 10 18.5t30.5 43t50.5 58t71 55.5t91.5 44.5 t112 14.5t132.5 -24q-2 -78 -21.5 -141.5t-50 -104.5t-69.5 -71.5t-81.5 -45.5t-84.5 -24t-80 -9.5t-67.5 1t-46.5 4.5l-17 3q-23 -147 -73 -283q6 7 18 18.5t49.5 41t77.5 52.5t99.5 42t117.5 20t129 -23.5t137 -77.5z" /> - <glyph glyph-name="stack_exchange" unicode="" horiz-adv-x="1280" + <glyph glyph-name="stack_exchange" unicode="" horiz-adv-x="1280" d="M1259 283v-66q0 -85 -57.5 -144.5t-138.5 -59.5h-57l-260 -269v269h-529q-81 0 -138.5 59.5t-57.5 144.5v66h1238zM1259 609v-255h-1238v255h1238zM1259 937v-255h-1238v255h1238zM1259 1077v-67h-1238v67q0 84 57.5 143.5t138.5 59.5h846q81 0 138.5 -59.5t57.5 -143.5z " /> - <glyph glyph-name="_374" unicode="" + <glyph glyph-name="_374" unicode="" d="M1152 640q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v192h-352q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h352v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198 t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="arrow_circle_alt_left" unicode="" + <glyph glyph-name="arrow_circle_alt_left" unicode="" d="M1152 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-352v-192q0 -14 -9 -23t-23 -9q-12 0 -24 10l-319 319q-9 9 -9 23t9 23l320 320q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5v-192h352q13 0 22.5 -9.5t9.5 -22.5zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198 t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="_376" unicode="" + <glyph glyph-name="_376" unicode="" d="M1024 960v-640q0 -26 -19 -45t-45 -19q-20 0 -37 12l-448 320q-27 19 -27 52t27 52l448 320q17 12 37 12q26 0 45 -19t19 -45zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5z M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="dot_circle_alt" unicode="" + <glyph glyph-name="dot_circle_alt" unicode="" d="M1024 640q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5 t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="_378" unicode="" horiz-adv-x="1664" + <glyph glyph-name="_378" unicode="" horiz-adv-x="1664" d="M1023 349l102 -204q-58 -179 -210 -290t-339 -111q-156 0 -288.5 77.5t-210 210t-77.5 288.5q0 181 104.5 330t274.5 211l17 -131q-122 -54 -195 -165.5t-73 -244.5q0 -185 131.5 -316.5t316.5 -131.5q126 0 232.5 65t165 175.5t49.5 236.5zM1571 249l58 -114l-256 -128 q-13 -7 -29 -7q-40 0 -57 35l-239 477h-472q-24 0 -42.5 16.5t-21.5 40.5l-96 779q-2 17 6 42q14 51 57 82.5t97 31.5q66 0 113 -47t47 -113q0 -69 -52 -117.5t-120 -41.5l37 -289h423v-128h-407l16 -128h455q40 0 57 -35l228 -455z" /> - <glyph glyph-name="vimeo_square" unicode="" + <glyph glyph-name="vimeo_square" unicode="" d="M1292 898q10 216 -161 222q-231 8 -312 -261q44 19 82 19q85 0 74 -96q-4 -57 -74 -167t-105 -110q-43 0 -82 169q-13 54 -45 255q-30 189 -160 177q-59 -7 -164 -100l-81 -72l-81 -72l52 -67q76 52 87 52q57 0 107 -179q15 -55 45 -164.5t45 -164.5q68 -179 164 -179 q157 0 383 294q220 283 226 444zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="_380" unicode="" horiz-adv-x="1152" + <glyph glyph-name="_380" unicode="" horiz-adv-x="1152" d="M1152 704q0 -191 -94.5 -353t-256.5 -256.5t-353 -94.5h-160q-14 0 -23 9t-9 23v611l-215 -66q-3 -1 -9 -1q-10 0 -19 6q-13 10 -13 26v128q0 23 23 31l233 71v93l-215 -66q-3 -1 -9 -1q-10 0 -19 6q-13 10 -13 26v128q0 23 23 31l233 71v250q0 14 9 23t23 9h160 q14 0 23 -9t9 -23v-181l375 116q15 5 28 -5t13 -26v-128q0 -23 -23 -31l-393 -121v-93l375 116q15 5 28 -5t13 -26v-128q0 -23 -23 -31l-393 -121v-487q188 13 318 151t130 328q0 14 9 23t23 9h160q14 0 23 -9t9 -23z" /> - <glyph glyph-name="plus_square_o" unicode="" horiz-adv-x="1408" + <glyph glyph-name="plus_square_o" unicode="" horiz-adv-x="1408" d="M1152 736v-64q0 -14 -9 -23t-23 -9h-352v-352q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v352h-352q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h352v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-352h352q14 0 23 -9t9 -23zM1280 288v832q0 66 -47 113t-113 47h-832 q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113zM1408 1120v-832q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="_382" unicode="" horiz-adv-x="2176" + <glyph glyph-name="_382" unicode="" horiz-adv-x="2176" d="M620 416q-110 -64 -268 -64h-128v64h-64q-13 0 -22.5 23.5t-9.5 56.5q0 24 7 49q-58 2 -96.5 10.5t-38.5 20.5t38.5 20.5t96.5 10.5q-7 25 -7 49q0 33 9.5 56.5t22.5 23.5h64v64h128q158 0 268 -64h1113q42 -7 106.5 -18t80.5 -14q89 -15 150 -40.5t83.5 -47.5t22.5 -40 t-22.5 -40t-83.5 -47.5t-150 -40.5q-16 -3 -80.5 -14t-106.5 -18h-1113zM1739 668q53 -36 53 -92t-53 -92l81 -30q68 48 68 122t-68 122zM625 400h1015q-217 -38 -456 -80q-57 0 -113 -24t-83 -48l-28 -24l-288 -288q-26 -26 -70.5 -45t-89.5 -19h-96l-93 464h29 q157 0 273 64zM352 816h-29l93 464h96q46 0 90 -19t70 -45l288 -288q4 -4 11 -10.5t30.5 -23t48.5 -29t61.5 -23t72.5 -10.5l456 -80h-1015q-116 64 -273 64z" /> - <glyph glyph-name="_383" unicode="" horiz-adv-x="1664" + <glyph glyph-name="_383" unicode="" horiz-adv-x="1664" d="M1519 760q62 0 103.5 -40.5t41.5 -101.5q0 -97 -93 -130l-172 -59l56 -167q7 -21 7 -47q0 -59 -42 -102t-101 -43q-47 0 -85.5 27t-53.5 72l-55 165l-310 -106l55 -164q8 -24 8 -47q0 -59 -42 -102t-102 -43q-47 0 -85 27t-53 72l-55 163l-153 -53q-29 -9 -50 -9 q-61 0 -101.5 40t-40.5 101q0 47 27.5 85t71.5 53l156 53l-105 313l-156 -54q-26 -8 -48 -8q-60 0 -101 40.5t-41 100.5q0 47 27.5 85t71.5 53l157 53l-53 159q-8 24 -8 47q0 60 42 102.5t102 42.5q47 0 85 -27t53 -72l54 -160l310 105l-54 160q-8 24 -8 47q0 59 42.5 102 t101.5 43q47 0 85.5 -27.5t53.5 -71.5l53 -161l162 55q21 6 43 6q60 0 102.5 -39.5t42.5 -98.5q0 -45 -30 -81.5t-74 -51.5l-157 -54l105 -316l164 56q24 8 46 8zM725 498l310 105l-105 315l-310 -107z" /> - <glyph glyph-name="_384" unicode="" + <glyph glyph-name="_384" unicode="" d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960zM1280 352v436q-31 -35 -64 -55q-34 -22 -132.5 -85t-151.5 -99q-98 -69 -164 -69v0v0q-66 0 -164 69 q-47 32 -142 92.5t-142 92.5q-12 8 -33 27t-31 27v-436q0 -40 28 -68t68 -28h832q40 0 68 28t28 68zM1280 925q0 41 -27.5 70t-68.5 29h-832q-40 0 -68 -28t-28 -68q0 -37 30.5 -76.5t67.5 -64.5q47 -32 137.5 -89t129.5 -83q3 -2 17 -11.5t21 -14t21 -13t23.5 -13 t21.5 -9.5t22.5 -7.5t20.5 -2.5t20.5 2.5t22.5 7.5t21.5 9.5t23.5 13t21 13t21 14t17 11.5l267 174q35 23 66.5 62.5t31.5 73.5z" /> - <glyph glyph-name="_385" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_385" unicode="" horiz-adv-x="1792" d="M127 640q0 163 67 313l367 -1005q-196 95 -315 281t-119 411zM1415 679q0 -19 -2.5 -38.5t-10 -49.5t-11.5 -44t-17.5 -59t-17.5 -58l-76 -256l-278 826q46 3 88 8q19 2 26 18.5t-2.5 31t-28.5 13.5l-205 -10q-75 1 -202 10q-12 1 -20.5 -5t-11.5 -15t-1.5 -18.5t9 -16.5 t19.5 -8l80 -8l120 -328l-168 -504l-280 832q46 3 88 8q19 2 26 18.5t-2.5 31t-28.5 13.5l-205 -10q-7 0 -23 0.5t-26 0.5q105 160 274.5 253.5t367.5 93.5q147 0 280.5 -53t238.5 -149h-10q-55 0 -92 -40.5t-37 -95.5q0 -12 2 -24t4 -21.5t8 -23t9 -21t12 -22.5t12.5 -21 t14.5 -24t14 -23q63 -107 63 -212zM909 573l237 -647q1 -6 5 -11q-126 -44 -255 -44q-112 0 -217 32zM1570 1009q95 -174 95 -369q0 -209 -104 -385.5t-279 -278.5l235 678q59 169 59 276q0 42 -6 79zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286 t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM896 -215q173 0 331.5 68t273 182.5t182.5 273t68 331.5t-68 331.5t-182.5 273t-273 182.5t-331.5 68t-331.5 -68t-273 -182.5t-182.5 -273t-68 -331.5t68 -331.5t182.5 -273 t273 -182.5t331.5 -68z" /> - <glyph glyph-name="_386" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_386" unicode="" horiz-adv-x="1792" d="M1086 1536v-1536l-272 -128q-228 20 -414 102t-293 208.5t-107 272.5q0 140 100.5 263.5t275 205.5t391.5 108v-172q-217 -38 -356.5 -150t-139.5 -255q0 -152 154.5 -267t388.5 -145v1360zM1755 954l37 -390l-525 114l147 83q-119 70 -280 99v172q277 -33 481 -157z" /> - <glyph glyph-name="_387" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_387" unicode="" horiz-adv-x="2048" d="M960 1536l960 -384v-128h-128q0 -26 -20.5 -45t-48.5 -19h-1526q-28 0 -48.5 19t-20.5 45h-128v128zM256 896h256v-768h128v768h256v-768h128v768h256v-768h128v768h256v-768h59q28 0 48.5 -19t20.5 -45v-64h-1664v64q0 26 20.5 45t48.5 19h59v768zM1851 -64 q28 0 48.5 -19t20.5 -45v-128h-1920v128q0 26 20.5 45t48.5 19h1782z" /> - <glyph glyph-name="_388" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_388" unicode="" horiz-adv-x="2304" d="M1774 700l18 -316q4 -69 -82 -128t-235 -93.5t-323 -34.5t-323 34.5t-235 93.5t-82 128l18 316l574 -181q22 -7 48 -7t48 7zM2304 1024q0 -23 -22 -31l-1120 -352q-4 -1 -10 -1t-10 1l-652 206q-43 -34 -71 -111.5t-34 -178.5q63 -36 63 -109q0 -69 -58 -107l58 -433 q2 -14 -8 -25q-9 -11 -24 -11h-192q-15 0 -24 11q-10 11 -8 25l58 433q-58 38 -58 107q0 73 65 111q11 207 98 330l-333 104q-22 8 -22 31t22 31l1120 352q4 1 10 1t10 -1l1120 -352q22 -8 22 -31z" /> - <glyph glyph-name="_389" unicode="" + <glyph glyph-name="_389" unicode="" d="M859 579l13 -707q-62 11 -105 11q-41 0 -105 -11l13 707q-40 69 -168.5 295.5t-216.5 374.5t-181 287q58 -15 108 -15q44 0 111 15q63 -111 133.5 -229.5t167 -276.5t138.5 -227q37 61 109.5 177.5t117.5 190t105 176t107 189.5q54 -14 107 -14q56 0 114 14v0 q-28 -39 -60 -88.5t-49.5 -78.5t-56.5 -96t-49 -84q-146 -248 -353 -610z" /> - <glyph glyph-name="uniF1A0" unicode="" + <glyph glyph-name="uniF1A0" unicode="" d="M768 750h725q12 -67 12 -128q0 -217 -91 -387.5t-259.5 -266.5t-386.5 -96q-157 0 -299 60.5t-245 163.5t-163.5 245t-60.5 299t60.5 299t163.5 245t245 163.5t299 60.5q300 0 515 -201l-209 -201q-123 119 -306 119q-129 0 -238.5 -65t-173.5 -176.5t-64 -243.5 t64 -243.5t173.5 -176.5t238.5 -65q87 0 160 24t120 60t82 82t51.5 87t22.5 78h-436v264z" /> - <glyph glyph-name="f1a1" unicode="" horiz-adv-x="1792" + <glyph glyph-name="f1a1" unicode="" horiz-adv-x="1792" d="M1095 369q16 -16 0 -31q-62 -62 -199 -62t-199 62q-16 15 0 31q6 6 15 6t15 -6q48 -49 169 -49q120 0 169 49q6 6 15 6t15 -6zM788 550q0 -37 -26 -63t-63 -26t-63.5 26t-26.5 63q0 38 26.5 64t63.5 26t63 -26.5t26 -63.5zM1183 550q0 -37 -26.5 -63t-63.5 -26t-63 26 t-26 63t26 63.5t63 26.5t63.5 -26t26.5 -64zM1434 670q0 49 -35 84t-85 35t-86 -36q-130 90 -311 96l63 283l200 -45q0 -37 26 -63t63 -26t63.5 26.5t26.5 63.5t-26.5 63.5t-63.5 26.5q-54 0 -80 -50l-221 49q-19 5 -25 -16l-69 -312q-180 -7 -309 -97q-35 37 -87 37 q-50 0 -85 -35t-35 -84q0 -35 18.5 -64t49.5 -44q-6 -27 -6 -56q0 -142 140 -243t337 -101q198 0 338 101t140 243q0 32 -7 57q30 15 48 43.5t18 63.5zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191 t348 71t348 -71t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="_392" unicode="" + <glyph glyph-name="_392" unicode="" d="M939 407q13 -13 0 -26q-53 -53 -171 -53t-171 53q-13 13 0 26q5 6 13 6t13 -6q42 -42 145 -42t145 42q5 6 13 6t13 -6zM676 563q0 -31 -23 -54t-54 -23t-54 23t-23 54q0 32 22.5 54.5t54.5 22.5t54.5 -22.5t22.5 -54.5zM1014 563q0 -31 -23 -54t-54 -23t-54 23t-23 54 q0 32 22.5 54.5t54.5 22.5t54.5 -22.5t22.5 -54.5zM1229 666q0 42 -30 72t-73 30q-42 0 -73 -31q-113 78 -267 82l54 243l171 -39q1 -32 23.5 -54t53.5 -22q32 0 54.5 22.5t22.5 54.5t-22.5 54.5t-54.5 22.5q-48 0 -69 -43l-189 42q-17 5 -21 -13l-60 -268q-154 -6 -265 -83 q-30 32 -74 32q-43 0 -73 -30t-30 -72q0 -30 16 -55t42 -38q-5 -25 -5 -48q0 -122 120 -208.5t289 -86.5q170 0 290 86.5t120 208.5q0 25 -6 49q25 13 40.5 37.5t15.5 54.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960 q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="_393" unicode="" + <glyph glyph-name="_393" unicode="" d="M866 697l90 27v62q0 79 -58 135t-138 56t-138 -55.5t-58 -134.5v-283q0 -20 -14 -33.5t-33 -13.5t-32.5 13.5t-13.5 33.5v120h-151v-122q0 -82 57.5 -139t139.5 -57q81 0 138.5 56.5t57.5 136.5v280q0 19 13.5 33t33.5 14q19 0 32.5 -14t13.5 -33v-54zM1199 502v122h-150 v-126q0 -20 -13.5 -33.5t-33.5 -13.5q-19 0 -32.5 14t-13.5 33v123l-90 -26l-60 28v-123q0 -80 58 -137t139 -57t138.5 57t57.5 139zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103 t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="f1a4" unicode="" horiz-adv-x="1920" + <glyph glyph-name="f1a4" unicode="" horiz-adv-x="1920" d="M1062 824v118q0 42 -30 72t-72 30t-72 -30t-30 -72v-612q0 -175 -126 -299t-303 -124q-178 0 -303.5 125.5t-125.5 303.5v266h328v-262q0 -43 30 -72.5t72 -29.5t72 29.5t30 72.5v620q0 171 126.5 292t301.5 121q176 0 302 -122t126 -294v-136l-195 -58zM1592 602h328 v-266q0 -178 -125.5 -303.5t-303.5 -125.5q-177 0 -303 124.5t-126 300.5v268l131 -61l195 58v-270q0 -42 30 -71.5t72 -29.5t72 29.5t30 71.5v275z" /> - <glyph glyph-name="_395" unicode="" + <glyph glyph-name="_395" unicode="" d="M1472 160v480h-704v704h-480q-93 0 -158.5 -65.5t-65.5 -158.5v-480h704v-704h480q93 0 158.5 65.5t65.5 158.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5 t84.5 -203.5z" /> - <glyph glyph-name="_396" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_396" unicode="" horiz-adv-x="2048" d="M328 1254h204v-983h-532v697h328v286zM328 435v369h-123v-369h123zM614 968v-697h205v697h-205zM614 1254v-204h205v204h-205zM901 968h533v-942h-533v163h328v82h-328v697zM1229 435v369h-123v-369h123zM1516 968h532v-942h-532v163h327v82h-327v697zM1843 435v369h-123 v-369h123z" /> - <glyph glyph-name="_397" unicode="" + <glyph glyph-name="_397" unicode="" d="M1046 516q0 -64 -38 -109t-91 -45q-43 0 -70 15v277q28 17 70 17q53 0 91 -45.5t38 -109.5zM703 944q0 -64 -38 -109.5t-91 -45.5q-43 0 -70 15v277q28 17 70 17q53 0 91 -45t38 -109zM1265 513q0 134 -88 229t-213 95q-20 0 -39 -3q-23 -78 -78 -136q-87 -95 -211 -101 v-636l211 41v206q51 -19 117 -19q125 0 213 95t88 229zM922 940q0 134 -88.5 229t-213.5 95q-74 0 -141 -36h-186v-840l211 41v206q55 -19 116 -19q125 0 213.5 95t88.5 229zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960 q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="_398" unicode="" horiz-adv-x="2038" + <glyph glyph-name="_398" unicode="" horiz-adv-x="2038" d="M1222 607q75 3 143.5 -20.5t118 -58.5t101 -94.5t84 -108t75.5 -120.5q33 -56 78.5 -109t75.5 -80.5t99 -88.5q-48 -30 -108.5 -57.5t-138.5 -59t-114 -47.5q-44 37 -74 115t-43.5 164.5t-33 180.5t-42.5 168.5t-72.5 123t-122.5 48.5l-10 -2l-6 -4q4 -5 13 -14 q6 -5 28 -23.5t25.5 -22t19 -18t18 -20.5t11.5 -21t10.5 -27.5t4.5 -31t4 -40.5l1 -33q1 -26 -2.5 -57.5t-7.5 -52t-12.5 -58.5t-11.5 -53q-35 1 -101 -9.5t-98 -10.5q-39 0 -72 10q-2 16 -2 47q0 74 3 96q2 13 31.5 41.5t57 59t26.5 51.5q-24 2 -43 -24 q-36 -53 -111.5 -99.5t-136.5 -46.5q-25 0 -75.5 63t-106.5 139.5t-84 96.5q-6 4 -27 30q-482 -112 -513 -112q-16 0 -28 11t-12 27q0 15 8.5 26.5t22.5 14.5l486 106q-8 14 -8 25t5.5 17.5t16 11.5t20 7t23 4.5t18.5 4.5q4 1 15.5 7.5t17.5 6.5q15 0 28 -16t20 -33 @@ -1397,32 +1397,32 @@ t31 -13.5t20.5 -24.5t15.5 -33.5t17 -47.5t24 -60l50 25q-3 -40 -23 -60t-42.5 -21t- q16 30 36 46.5t54 29.5t65.5 36t46 36.5t50 55t43.5 50.5q12 -9 28 -31.5t32 -36.5t38 -13l12 1v-76l22 -1q247 95 371 190q28 21 50 39t42.5 37.5t33 31t29.5 34t24 31t24.5 37t23 38t27 47.5t29.5 53l7 9q-2 -53 -43 -139q-79 -165 -205 -264t-306 -142q-14 -3 -42 -7.5 t-50 -9.5t-39 -14q3 -19 24.5 -46t21.5 -34q0 -11 -26 -30zM1061 -79q39 26 131.5 47.5t146.5 21.5q9 0 22.5 -15.5t28 -42.5t26 -50t24 -51t14.5 -33q-121 -45 -244 -45q-61 0 -125 11zM822 568l48 12l109 -177l-73 -48zM1323 51q3 -15 3 -16q0 -7 -17.5 -14.5t-46 -13 t-54 -9.5t-53.5 -7.5t-32 -4.5l-7 43q21 2 60.5 8.5t72 10t60.5 3.5h14zM866 679l-96 -20l-6 17q10 1 32.5 7t34.5 6q19 0 35 -10zM1061 45h31l10 -83l-41 -12v95zM1950 1535v1v-1zM1950 1535l-1 -5l-2 -2l1 3zM1950 1535l1 1z" /> - <glyph glyph-name="_399" unicode="" + <glyph glyph-name="_399" unicode="" d="M1167 -50q-5 19 -24 5q-30 -22 -87 -39t-131 -17q-129 0 -193 49q-5 4 -13 4q-11 0 -26 -12q-7 -6 -7.5 -16t7.5 -20q34 -32 87.5 -46t102.5 -12.5t99 4.5q41 4 84.5 20.5t65 30t28.5 20.5q12 12 7 29zM1128 65q-19 47 -39 61q-23 15 -76 15q-47 0 -71 -10 q-29 -12 -78 -56q-26 -24 -12 -44q9 -8 17.5 -4.5t31.5 23.5q3 2 10.5 8.5t10.5 8.5t10 7t11.5 7t12.5 5t15 4.5t16.5 2.5t20.5 1q27 0 44.5 -7.5t23 -14.5t13.5 -22q10 -17 12.5 -20t12.5 1q23 12 14 34zM1483 346q0 22 -5 44.5t-16.5 45t-34 36.5t-52.5 14 q-33 0 -97 -41.5t-129 -83.5t-101 -42q-27 -1 -63.5 19t-76 49t-83.5 58t-100 49t-111 19q-115 -1 -197 -78.5t-84 -178.5q-2 -112 74 -164q29 -20 62.5 -28.5t103.5 -8.5q57 0 132 32.5t134 71t120 70.5t93 31q26 -1 65 -31.5t71.5 -67t68 -67.5t55.5 -32q35 -3 58.5 14 t55.5 63q28 41 42.5 101t14.5 106zM1536 506q0 -164 -62 -304.5t-166 -236t-242.5 -149.5t-290.5 -54t-293 57.5t-247.5 157t-170.5 241.5t-64 302q0 89 19.5 172.5t49 145.5t70.5 118.5t78.5 94t78.5 69.5t64.5 46.5t42.5 24.5q14 8 51 26.5t54.5 28.5t48 30t60.5 44 q36 28 58 72.5t30 125.5q129 -155 186 -193q44 -29 130 -68t129 -66q21 -13 39 -25t60.5 -46.5t76 -70.5t75 -95t69 -122t47 -148.5t19.5 -177.5z" /> - <glyph glyph-name="_400" unicode="" + <glyph glyph-name="_400" unicode="" d="M1070 463l-160 -160l-151 -152l-30 -30q-65 -64 -151.5 -87t-171.5 -2q-16 -70 -72 -115t-129 -45q-85 0 -145 60.5t-60 145.5q0 72 44.5 128t113.5 72q-22 86 1 173t88 152l12 12l151 -152l-11 -11q-37 -37 -37 -89t37 -90q37 -37 89 -37t89 37l30 30l151 152l161 160z M729 1145l12 -12l-152 -152l-12 12q-37 37 -89 37t-89 -37t-37 -89.5t37 -89.5l29 -29l152 -152l160 -160l-151 -152l-161 160l-151 152l-30 30q-68 67 -90 159.5t5 179.5q-70 15 -115 71t-45 129q0 85 60 145.5t145 60.5q76 0 133.5 -49t69.5 -123q84 20 169.5 -3.5 t149.5 -87.5zM1536 78q0 -85 -60 -145.5t-145 -60.5q-74 0 -131 47t-71 118q-86 -28 -179.5 -6t-161.5 90l-11 12l151 152l12 -12q37 -37 89 -37t89 37t37 89t-37 89l-30 30l-152 152l-160 160l152 152l160 -160l152 -152l29 -30q64 -64 87.5 -150.5t2.5 -171.5 q76 -11 126.5 -68.5t50.5 -134.5zM1534 1202q0 -77 -51 -135t-127 -69q26 -85 3 -176.5t-90 -158.5l-12 -12l-151 152l12 12q37 37 37 89t-37 89t-89 37t-89 -37l-30 -30l-152 -152l-160 -160l-152 152l161 160l152 152l29 30q67 67 159 89.5t178 -3.5q11 75 68.5 126 t135.5 51q85 0 145 -60.5t60 -145.5z" /> - <glyph glyph-name="f1ab" unicode="" + <glyph glyph-name="f1ab" unicode="" d="M654 458q-1 -3 -12.5 0.5t-31.5 11.5l-20 9q-44 20 -87 49q-7 5 -41 31.5t-38 28.5q-67 -103 -134 -181q-81 -95 -105 -110q-4 -2 -19.5 -4t-18.5 0q6 4 82 92q21 24 85.5 115t78.5 118q17 30 51 98.5t36 77.5q-8 1 -110 -33q-8 -2 -27.5 -7.5t-34.5 -9.5t-17 -5 q-2 -2 -2 -10.5t-1 -9.5q-5 -10 -31 -15q-23 -7 -47 0q-18 4 -28 21q-4 6 -5 23q6 2 24.5 5t29.5 6q58 16 105 32q100 35 102 35q10 2 43 19.5t44 21.5q9 3 21.5 8t14.5 5.5t6 -0.5q2 -12 -1 -33q0 -2 -12.5 -27t-26.5 -53.5t-17 -33.5q-25 -50 -77 -131l64 -28 q12 -6 74.5 -32t67.5 -28q4 -1 10.5 -25.5t4.5 -30.5zM449 944q3 -15 -4 -28q-12 -23 -50 -38q-30 -12 -60 -12q-26 3 -49 26q-14 15 -18 41l1 3q3 -3 19.5 -5t26.5 0t58 16q36 12 55 14q17 0 21 -17zM1147 815l63 -227l-139 42zM39 15l694 232v1032l-694 -233v-1031z M1280 332l102 -31l-181 657l-100 31l-216 -536l102 -31l45 110l211 -65zM777 1294l573 -184v380zM1088 -29l158 -13l-54 -160l-40 66q-130 -83 -276 -108q-58 -12 -91 -12h-84q-79 0 -199.5 39t-183.5 85q-8 7 -8 16q0 8 5 13.5t13 5.5q4 0 18 -7.5t30.5 -16.5t20.5 -11 q73 -37 159.5 -61.5t157.5 -24.5q95 0 167 14.5t157 50.5q15 7 30.5 15.5t34 19t28.5 16.5zM1536 1050v-1079l-774 246q-14 -6 -375 -127.5t-368 -121.5q-13 0 -18 13q0 1 -1 3v1078q3 9 4 10q5 6 20 11q107 36 149 50v384l558 -198q2 0 160.5 55t316 108.5t161.5 53.5 q20 0 20 -21v-418z" /> - <glyph glyph-name="_402" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_402" unicode="" horiz-adv-x="1792" d="M288 1152q66 0 113 -47t47 -113v-1088q0 -66 -47 -113t-113 -47h-128q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h128zM1664 989q58 -34 93 -93t35 -128v-768q0 -106 -75 -181t-181 -75h-864q-66 0 -113 47t-47 113v1536q0 40 28 68t68 28h672q40 0 88 -20t76 -48 l152 -152q28 -28 48 -76t20 -88v-163zM928 0v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM928 256v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM928 512v128q0 14 -9 23 t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1184 0v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1184 256v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128 q14 0 23 9t9 23zM1184 512v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1440 0v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1440 256v128q0 14 -9 23t-23 9h-128 q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1440 512v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1536 896v256h-160q-40 0 -68 28t-28 68v160h-640v-512h896z" /> - <glyph glyph-name="_403" unicode="" + <glyph glyph-name="_403" unicode="" d="M1344 1536q26 0 45 -19t19 -45v-1664q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1664q0 26 19 45t45 19h1280zM512 1248v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM512 992v-64q0 -14 9 -23t23 -9h64q14 0 23 9 t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM512 736v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM512 480v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM384 160v64 q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM384 416v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM384 672v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64 @@ -1431,63 +1431,63 @@ t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM896 416v64q0 14 -9 23t-23 9h- q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM896 1184v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 160v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64 q14 0 23 9t9 23zM1152 416v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 672v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 928v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9 t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 1184v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23z" /> - <glyph glyph-name="_404" unicode="" horiz-adv-x="1280" + <glyph glyph-name="_404" unicode="" horiz-adv-x="1280" d="M1188 988l-292 -292v-824q0 -46 -33 -79t-79 -33t-79 33t-33 79v384h-64v-384q0 -46 -33 -79t-79 -33t-79 33t-33 79v824l-292 292q-28 28 -28 68t28 68q29 28 68.5 28t67.5 -28l228 -228h368l228 228q28 28 68 28t68 -28q28 -29 28 -68.5t-28 -67.5zM864 1152 q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z" /> - <glyph glyph-name="uniF1B1" unicode="" horiz-adv-x="1664" + <glyph glyph-name="uniF1B1" unicode="" horiz-adv-x="1664" d="M780 1064q0 -60 -19 -113.5t-63 -92.5t-105 -39q-76 0 -138 57.5t-92 135.5t-30 151q0 60 19 113.5t63 92.5t105 39q77 0 138.5 -57.5t91.5 -135t30 -151.5zM438 581q0 -80 -42 -139t-119 -59q-76 0 -141.5 55.5t-100.5 133.5t-35 152q0 80 42 139.5t119 59.5 q76 0 141.5 -55.5t100.5 -134t35 -152.5zM832 608q118 0 255 -97.5t229 -237t92 -254.5q0 -46 -17 -76.5t-48.5 -45t-64.5 -20t-76 -5.5q-68 0 -187.5 45t-182.5 45q-66 0 -192.5 -44.5t-200.5 -44.5q-183 0 -183 146q0 86 56 191.5t139.5 192.5t187.5 146t193 59zM1071 819 q-61 0 -105 39t-63 92.5t-19 113.5q0 74 30 151.5t91.5 135t138.5 57.5q61 0 105 -39t63 -92.5t19 -113.5q0 -73 -30 -151t-92 -135.5t-138 -57.5zM1503 923q77 0 119 -59.5t42 -139.5q0 -74 -35 -152t-100.5 -133.5t-141.5 -55.5q-77 0 -119 59t-42 139q0 74 35 152.5 t100.5 134t141.5 55.5z" /> - <glyph glyph-name="_406" unicode="" horiz-adv-x="768" + <glyph glyph-name="_406" unicode="" horiz-adv-x="768" d="M704 1008q0 -145 -57 -243.5t-152 -135.5l45 -821q2 -26 -16 -45t-44 -19h-192q-26 0 -44 19t-16 45l45 821q-95 37 -152 135.5t-57 243.5q0 128 42.5 249.5t117.5 200t160 78.5t160 -78.5t117.5 -200t42.5 -249.5z" /> - <glyph glyph-name="_407" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_407" unicode="" horiz-adv-x="1792" d="M896 -93l640 349v636l-640 -233v-752zM832 772l698 254l-698 254l-698 -254zM1664 1024v-768q0 -35 -18 -65t-49 -47l-704 -384q-28 -16 -61 -16t-61 16l-704 384q-31 17 -49 47t-18 65v768q0 40 23 73t61 47l704 256q22 8 44 8t44 -8l704 -256q38 -14 61 -47t23 -73z " /> - <glyph glyph-name="_408" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_408" unicode="" horiz-adv-x="2304" d="M640 -96l384 192v314l-384 -164v-342zM576 358l404 173l-404 173l-404 -173zM1664 -96l384 192v314l-384 -164v-342zM1600 358l404 173l-404 173l-404 -173zM1152 651l384 165v266l-384 -164v-267zM1088 1030l441 189l-441 189l-441 -189zM2176 512v-416q0 -36 -19 -67 t-52 -47l-448 -224q-25 -14 -57 -14t-57 14l-448 224q-4 2 -7 4q-2 -2 -7 -4l-448 -224q-25 -14 -57 -14t-57 14l-448 224q-33 16 -52 47t-19 67v416q0 38 21.5 70t56.5 48l434 186v400q0 38 21.5 70t56.5 48l448 192q23 10 50 10t50 -10l448 -192q35 -16 56.5 -48t21.5 -70 v-400l434 -186q36 -16 57 -48t21 -70z" /> - <glyph glyph-name="_409" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_409" unicode="" horiz-adv-x="2048" d="M1848 1197h-511v-124h511v124zM1596 771q-90 0 -146 -52.5t-62 -142.5h408q-18 195 -200 195zM1612 186q63 0 122 32t76 87h221q-100 -307 -427 -307q-214 0 -340.5 132t-126.5 347q0 208 130.5 345.5t336.5 137.5q138 0 240.5 -68t153 -179t50.5 -248q0 -17 -2 -47h-658 q0 -111 57.5 -171.5t166.5 -60.5zM277 236h296q205 0 205 167q0 180 -199 180h-302v-347zM277 773h281q78 0 123.5 36.5t45.5 113.5q0 144 -190 144h-260v-294zM0 1282h594q87 0 155 -14t126.5 -47.5t90 -96.5t31.5 -154q0 -181 -172 -263q114 -32 172 -115t58 -204 q0 -75 -24.5 -136.5t-66 -103.5t-98.5 -71t-121 -42t-134 -13h-611v1260z" /> - <glyph glyph-name="_410" unicode="" + <glyph glyph-name="_410" unicode="" d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960zM499 1041h-371v-787h382q117 0 197 57.5t80 170.5q0 158 -143 200q107 52 107 164q0 57 -19.5 96.5 t-56.5 60.5t-79 29.5t-97 8.5zM477 723h-176v184h163q119 0 119 -90q0 -94 -106 -94zM486 388h-185v217h189q124 0 124 -113q0 -104 -128 -104zM1136 356q-68 0 -104 38t-36 107h411q1 10 1 30q0 132 -74.5 220.5t-203.5 88.5q-128 0 -210 -86t-82 -216q0 -135 79 -217 t213 -82q205 0 267 191h-138q-11 -34 -47.5 -54t-75.5 -20zM1126 722q113 0 124 -122h-254q4 56 39 89t91 33zM964 988h319v-77h-319v77z" /> - <glyph glyph-name="_411" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_411" unicode="" horiz-adv-x="1792" d="M1582 954q0 -101 -71.5 -172.5t-172.5 -71.5t-172.5 71.5t-71.5 172.5t71.5 172.5t172.5 71.5t172.5 -71.5t71.5 -172.5zM812 212q0 104 -73 177t-177 73q-27 0 -54 -6l104 -42q77 -31 109.5 -106.5t1.5 -151.5q-31 -77 -107 -109t-152 -1q-21 8 -62 24.5t-61 24.5 q32 -60 91 -96.5t130 -36.5q104 0 177 73t73 177zM1642 953q0 126 -89.5 215.5t-215.5 89.5q-127 0 -216.5 -89.5t-89.5 -215.5q0 -127 89.5 -216t216.5 -89q126 0 215.5 89t89.5 216zM1792 953q0 -189 -133.5 -322t-321.5 -133l-437 -319q-12 -129 -109 -218t-229 -89 q-121 0 -214 76t-118 192l-230 92v429l389 -157q79 48 173 48q13 0 35 -2l284 407q2 187 135.5 319t320.5 132q188 0 321.5 -133.5t133.5 -321.5z" /> - <glyph glyph-name="_412" unicode="" + <glyph glyph-name="_412" unicode="" d="M1242 889q0 80 -57 136.5t-137 56.5t-136.5 -57t-56.5 -136q0 -80 56.5 -136.5t136.5 -56.5t137 56.5t57 136.5zM632 301q0 -83 -58 -140.5t-140 -57.5q-56 0 -103 29t-72 77q52 -20 98 -40q60 -24 120 1.5t85 86.5q24 60 -1.5 120t-86.5 84l-82 33q22 5 42 5 q82 0 140 -57.5t58 -140.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v153l172 -69q20 -92 93.5 -152t168.5 -60q104 0 181 70t87 173l345 252q150 0 255.5 105.5t105.5 254.5q0 150 -105.5 255.5t-255.5 105.5 q-148 0 -253 -104.5t-107 -252.5l-225 -322q-9 1 -28 1q-75 0 -137 -37l-297 119v468q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5zM1289 887q0 -100 -71 -170.5t-171 -70.5t-170.5 70.5t-70.5 170.5t70.5 171t170.5 71q101 0 171.5 -70.5t70.5 -171.5z " /> - <glyph glyph-name="_413" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_413" unicode="" horiz-adv-x="1792" d="M836 367l-15 -368l-2 -22l-420 29q-36 3 -67 31.5t-47 65.5q-11 27 -14.5 55t4 65t12 55t21.5 64t19 53q78 -12 509 -28zM449 953l180 -379l-147 92q-63 -72 -111.5 -144.5t-72.5 -125t-39.5 -94.5t-18.5 -63l-4 -21l-190 357q-17 26 -18 56t6 47l8 18q35 63 114 188 l-140 86zM1680 436l-188 -359q-12 -29 -36.5 -46.5t-43.5 -20.5l-18 -4q-71 -7 -219 -12l8 -164l-230 367l211 362l7 -173q170 -16 283 -5t170 33zM895 1360q-47 -63 -265 -435l-317 187l-19 12l225 356q20 31 60 45t80 10q24 -2 48.5 -12t42 -21t41.5 -33t36 -34.5 t36 -39.5t32 -35zM1550 1053l212 -363q18 -37 12.5 -76t-27.5 -74q-13 -20 -33 -37t-38 -28t-48.5 -22t-47 -16t-51.5 -14t-46 -12q-34 72 -265 436l313 195zM1407 1279l142 83l-220 -373l-419 20l151 86q-34 89 -75 166t-75.5 123.5t-64.5 80t-47 46.5l-17 13l405 -1 q31 3 58 -10.5t39 -28.5l11 -15q39 -61 112 -190z" /> - <glyph glyph-name="_414" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_414" unicode="" horiz-adv-x="2048" d="M480 448q0 66 -47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47t113 47t47 113zM516 768h1016l-89 357q-2 8 -14 17.5t-21 9.5h-768q-9 0 -21 -9.5t-14 -17.5zM1888 448q0 66 -47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47t113 47t47 113zM2048 544v-384 q0 -14 -9 -23t-23 -9h-96v-128q0 -80 -56 -136t-136 -56t-136 56t-56 136v128h-1024v-128q0 -80 -56 -136t-136 -56t-136 56t-56 136v128h-96q-14 0 -23 9t-9 23v384q0 93 65.5 158.5t158.5 65.5h28l105 419q23 94 104 157.5t179 63.5h768q98 0 179 -63.5t104 -157.5 l105 -419h28q93 0 158.5 -65.5t65.5 -158.5z" /> - <glyph glyph-name="_415" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_415" unicode="" horiz-adv-x="2048" d="M1824 640q93 0 158.5 -65.5t65.5 -158.5v-384q0 -14 -9 -23t-23 -9h-96v-64q0 -80 -56 -136t-136 -56t-136 56t-56 136v64h-1024v-64q0 -80 -56 -136t-136 -56t-136 56t-56 136v64h-96q-14 0 -23 9t-9 23v384q0 93 65.5 158.5t158.5 65.5h28l105 419q23 94 104 157.5 t179 63.5h128v224q0 14 9 23t23 9h448q14 0 23 -9t9 -23v-224h128q98 0 179 -63.5t104 -157.5l105 -419h28zM320 160q66 0 113 47t47 113t-47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47zM516 640h1016l-89 357q-2 8 -14 17.5t-21 9.5h-768q-9 0 -21 -9.5t-14 -17.5z M1728 160q66 0 113 47t47 113t-47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47z" /> - <glyph glyph-name="_416" unicode="" + <glyph glyph-name="_416" unicode="" d="M1504 64q0 -26 -19 -45t-45 -19h-462q1 -17 6 -87.5t5 -108.5q0 -25 -18 -42.5t-43 -17.5h-320q-25 0 -43 17.5t-18 42.5q0 38 5 108.5t6 87.5h-462q-26 0 -45 19t-19 45t19 45l402 403h-229q-26 0 -45 19t-19 45t19 45l402 403h-197q-26 0 -45 19t-19 45t19 45l384 384 q19 19 45 19t45 -19l384 -384q19 -19 19 -45t-19 -45t-45 -19h-197l402 -403q19 -19 19 -45t-19 -45t-45 -19h-229l402 -403q19 -19 19 -45z" /> - <glyph glyph-name="_417" unicode="" + <glyph glyph-name="_417" unicode="" d="M1127 326q0 32 -30 51q-193 115 -447 115q-133 0 -287 -34q-42 -9 -42 -52q0 -20 13.5 -34.5t35.5 -14.5q5 0 37 8q132 27 243 27q226 0 397 -103q19 -11 33 -11q19 0 33 13.5t14 34.5zM1223 541q0 40 -35 61q-237 141 -548 141q-153 0 -303 -42q-48 -13 -48 -64 q0 -25 17.5 -42.5t42.5 -17.5q7 0 37 8q122 33 251 33q279 0 488 -124q24 -13 38 -13q25 0 42.5 17.5t17.5 42.5zM1331 789q0 47 -40 70q-126 73 -293 110.5t-343 37.5q-204 0 -364 -47q-23 -7 -38.5 -25.5t-15.5 -48.5q0 -31 20.5 -52t51.5 -21q11 0 40 8q133 37 307 37 q159 0 309.5 -34t253.5 -95q21 -12 40 -12q29 0 50.5 20.5t21.5 51.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="_418" unicode="" horiz-adv-x="1024" + <glyph glyph-name="_418" unicode="" horiz-adv-x="1024" d="M1024 1233l-303 -582l24 -31h279v-415h-507l-44 -30l-142 -273l-30 -30h-301v303l303 583l-24 30h-279v415h507l44 30l142 273l30 30h301v-303z" /> - <glyph glyph-name="_419" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_419" unicode="" horiz-adv-x="2304" d="M784 164l16 241l-16 523q-1 10 -7.5 17t-16.5 7q-9 0 -16 -7t-7 -17l-14 -523l14 -241q1 -10 7.5 -16.5t15.5 -6.5q22 0 24 23zM1080 193l11 211l-12 586q0 16 -13 24q-8 5 -16 5t-16 -5q-13 -8 -13 -24l-1 -6l-10 -579q0 -1 11 -236v-1q0 -10 6 -17q9 -11 23 -11 q11 0 20 9q9 7 9 20zM35 533l20 -128l-20 -126q-2 -9 -9 -9t-9 9l-17 126l17 128q2 9 9 9t9 -9zM121 612l26 -207l-26 -203q-2 -9 -10 -9q-9 0 -9 10l-23 202l23 207q0 9 9 9q8 0 10 -9zM401 159zM213 650l25 -245l-25 -237q0 -11 -11 -11q-10 0 -12 11l-21 237l21 245 q2 12 12 12q11 0 11 -12zM307 657l23 -252l-23 -244q-2 -13 -14 -13q-13 0 -13 13l-21 244l21 252q0 13 13 13q12 0 14 -13zM401 639l21 -234l-21 -246q-2 -16 -16 -16q-6 0 -10.5 4.5t-4.5 11.5l-20 246l20 234q0 6 4.5 10.5t10.5 4.5q14 0 16 -15zM784 164zM495 785 @@ -1495,187 +1495,187 @@ l21 -380l-21 -246q0 -7 -5 -12.5t-12 -5.5q-16 0 -18 18l-18 246l18 380q2 18 18 18q q-2 -21 -22 -21q-19 0 -21 21l-16 242l16 506q0 9 6.5 15.5t14.5 6.5q9 0 15 -6.5t7 -15.5zM1079 169v0v0v0zM881 915l15 -510l-15 -239q0 -10 -7.5 -17.5t-17.5 -7.5t-17 7t-8 18l-14 239l14 510q0 11 7.5 18t17.5 7t17.5 -7t7.5 -18zM980 896l14 -492l-14 -236 q0 -11 -8 -19t-19 -8t-19 8t-9 19l-12 236l12 492q1 12 9 20t19 8t18.5 -8t8.5 -20zM1192 404l-14 -231v0q0 -13 -9 -22t-22 -9t-22 9t-10 22l-6 114l-6 117l12 636v3q2 15 12 24q9 7 20 7q8 0 15 -5q14 -8 16 -26zM2304 423q0 -117 -83 -199.5t-200 -82.5h-786 q-13 2 -22 11t-9 22v899q0 23 28 33q85 34 181 34q195 0 338 -131.5t160 -323.5q53 22 110 22q117 0 200 -83t83 -201z" /> - <glyph glyph-name="uniF1C0" unicode="" + <glyph glyph-name="uniF1C0" unicode="" d="M768 768q237 0 443 43t325 127v-170q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5t-103 128v170q119 -84 325 -127t443 -43zM768 0q237 0 443 43t325 127v-170q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5t-103 128v170q119 -84 325 -127 t443 -43zM768 384q237 0 443 43t325 127v-170q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5t-103 128v170q119 -84 325 -127t443 -43zM768 1536q208 0 385 -34.5t280 -93.5t103 -128v-128q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5 t-103 128v128q0 69 103 128t280 93.5t385 34.5z" /> - <glyph glyph-name="uniF1C1" unicode="" + <glyph glyph-name="uniF1C1" unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z M894 465q33 -26 84 -56q59 7 117 7q147 0 177 -49q16 -22 2 -52q0 -1 -1 -2l-2 -2v-1q-6 -38 -71 -38q-48 0 -115 20t-130 53q-221 -24 -392 -83q-153 -262 -242 -262q-15 0 -28 7l-24 12q-1 1 -6 5q-10 10 -6 36q9 40 56 91.5t132 96.5q14 9 23 -6q2 -2 2 -4q52 85 107 197 q68 136 104 262q-24 82 -30.5 159.5t6.5 127.5q11 40 42 40h21h1q23 0 35 -15q18 -21 9 -68q-2 -6 -4 -8q1 -3 1 -8v-30q-2 -123 -14 -192q55 -164 146 -238zM318 54q52 24 137 158q-51 -40 -87.5 -84t-49.5 -74zM716 974q-15 -42 -2 -132q1 7 7 44q0 3 7 43q1 4 4 8 q-1 1 -1 2q-1 2 -1 3q-1 22 -13 36q0 -1 -1 -2v-2zM592 313q135 54 284 81q-2 1 -13 9.5t-16 13.5q-76 67 -127 176q-27 -86 -83 -197q-30 -56 -45 -83zM1238 329q-24 24 -140 24q76 -28 124 -28q14 0 18 1q0 1 -2 3z" /> - <glyph glyph-name="_422" unicode="" + <glyph glyph-name="_422" unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z M233 768v-107h70l164 -661h159l128 485q7 20 10 46q2 16 2 24h4l3 -24q1 -3 3.5 -20t5.5 -26l128 -485h159l164 661h70v107h-300v-107h90l-99 -438q-5 -20 -7 -46l-2 -21h-4q0 3 -0.5 6.5t-1.5 8t-1 6.5q-1 5 -4 21t-5 25l-144 545h-114l-144 -545q-2 -9 -4.5 -24.5 t-3.5 -21.5l-4 -21h-4l-2 21q-2 26 -7 46l-99 438h90v107h-300z" /> - <glyph glyph-name="_423" unicode="" + <glyph glyph-name="_423" unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z M429 106v-106h281v106h-75l103 161q5 7 10 16.5t7.5 13.5t3.5 4h2q1 -4 5 -10q2 -4 4.5 -7.5t6 -8t6.5 -8.5l107 -161h-76v-106h291v106h-68l-192 273l195 282h67v107h-279v-107h74l-103 -159q-4 -7 -10 -16.5t-9 -13.5l-2 -3h-2q-1 4 -5 10q-6 11 -17 23l-106 159h76v107 h-290v-107h68l189 -272l-194 -283h-68z" /> - <glyph glyph-name="_424" unicode="" + <glyph glyph-name="_424" unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z M416 106v-106h327v106h-93v167h137q76 0 118 15q67 23 106.5 87t39.5 146q0 81 -37 141t-100 87q-48 19 -130 19h-368v-107h92v-555h-92zM769 386h-119v268h120q52 0 83 -18q56 -33 56 -115q0 -89 -62 -120q-31 -15 -78 -15z" /> - <glyph glyph-name="_425" unicode="" + <glyph glyph-name="_425" unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z M1280 320v-320h-1024v192l192 192l128 -128l384 384zM448 512q-80 0 -136 56t-56 136t56 136t136 56t136 -56t56 -136t-56 -136t-136 -56z" /> - <glyph glyph-name="_426" unicode="" + <glyph glyph-name="_426" unicode="" d="M640 1152v128h-128v-128h128zM768 1024v128h-128v-128h128zM640 896v128h-128v-128h128zM768 768v128h-128v-128h128zM1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400 v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-128v-128h-128v128h-512v-1536h1280zM781 593l107 -349q8 -27 8 -52q0 -83 -72.5 -137.5t-183.5 -54.5t-183.5 54.5t-72.5 137.5q0 25 8 52q21 63 120 396v128h128v-128h79 q22 0 39 -13t23 -34zM640 128q53 0 90.5 19t37.5 45t-37.5 45t-90.5 19t-90.5 -19t-37.5 -45t37.5 -45t90.5 -19z" /> - <glyph glyph-name="_427" unicode="" + <glyph glyph-name="_427" unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z M620 686q20 -8 20 -30v-544q0 -22 -20 -30q-8 -2 -12 -2q-12 0 -23 9l-166 167h-131q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h131l166 167q16 15 35 7zM1037 -3q31 0 50 24q129 159 129 363t-129 363q-16 21 -43 24t-47 -14q-21 -17 -23.5 -43.5t14.5 -47.5 q100 -123 100 -282t-100 -282q-17 -21 -14.5 -47.5t23.5 -42.5q18 -15 40 -15zM826 145q27 0 47 20q87 93 87 219t-87 219q-18 19 -45 20t-46 -17t-20 -44.5t18 -46.5q52 -57 52 -131t-52 -131q-19 -20 -18 -46.5t20 -44.5q20 -17 44 -17z" /> - <glyph glyph-name="_428" unicode="" + <glyph glyph-name="_428" unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z M768 768q52 0 90 -38t38 -90v-384q0 -52 -38 -90t-90 -38h-384q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h384zM1260 766q20 -8 20 -30v-576q0 -22 -20 -30q-8 -2 -12 -2q-14 0 -23 9l-265 266v90l265 266q9 9 23 9q4 0 12 -2z" /> - <glyph glyph-name="_429" unicode="" + <glyph glyph-name="_429" unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z M480 768q8 11 21 12.5t24 -6.5l51 -38q11 -8 12.5 -21t-6.5 -24l-182 -243l182 -243q8 -11 6.5 -24t-12.5 -21l-51 -38q-11 -8 -24 -6.5t-21 12.5l-226 301q-14 19 0 38zM1282 467q14 -19 0 -38l-226 -301q-8 -11 -21 -12.5t-24 6.5l-51 38q-11 8 -12.5 21t6.5 24l182 243 l-182 243q-8 11 -6.5 24t12.5 21l51 38q11 8 24 6.5t21 -12.5zM662 6q-13 2 -20.5 13t-5.5 24l138 831q2 13 13 20.5t24 5.5l63 -10q13 -2 20.5 -13t5.5 -24l-138 -831q-2 -13 -13 -20.5t-24 -5.5z" /> - <glyph glyph-name="_430" unicode="" + <glyph glyph-name="_430" unicode="" d="M1497 709v-198q-101 -23 -198 -23q-65 -136 -165.5 -271t-181.5 -215.5t-128 -106.5q-80 -45 -162 3q-28 17 -60.5 43.5t-85 83.5t-102.5 128.5t-107.5 184t-105.5 244t-91.5 314.5t-70.5 390h283q26 -218 70 -398.5t104.5 -317t121.5 -235.5t140 -195q169 169 287 406 q-142 72 -223 220t-81 333q0 192 104 314.5t284 122.5q178 0 273 -105.5t95 -297.5q0 -159 -58 -286q-7 -1 -19.5 -3t-46 -2t-63 6t-62 25.5t-50.5 51.5q31 103 31 184q0 87 -29 132t-79 45q-53 0 -85 -49.5t-32 -140.5q0 -186 105 -293.5t267 -107.5q62 0 121 14z" /> - <glyph glyph-name="_431" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_431" unicode="" horiz-adv-x="1792" d="M216 367l603 -402v359l-334 223zM154 511l193 129l-193 129v-258zM973 -35l603 402l-269 180l-334 -223v-359zM896 458l272 182l-272 182l-272 -182zM485 733l334 223v359l-603 -402zM1445 640l193 -129v258zM1307 733l269 180l-603 402v-359zM1792 913v-546 q0 -41 -34 -64l-819 -546q-21 -13 -43 -13t-43 13l-819 546q-34 23 -34 64v546q0 41 34 64l819 546q21 13 43 13t43 -13l819 -546q34 -23 34 -64z" /> - <glyph glyph-name="_432" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_432" unicode="" horiz-adv-x="2048" d="M1800 764q111 -46 179.5 -145.5t68.5 -221.5q0 -164 -118 -280.5t-285 -116.5q-4 0 -11.5 0.5t-10.5 0.5h-1209h-1h-2h-5q-170 10 -288 125.5t-118 280.5q0 110 55 203t147 147q-12 39 -12 82q0 115 82 196t199 81q95 0 172 -58q75 154 222.5 248t326.5 94 q166 0 306 -80.5t221.5 -218.5t81.5 -301q0 -6 -0.5 -18t-0.5 -18zM468 498q0 -122 84 -193t208 -71q137 0 240 99q-16 20 -47.5 56.5t-43.5 50.5q-67 -65 -144 -65q-55 0 -93.5 33.5t-38.5 87.5q0 53 38.5 87t91.5 34q44 0 84.5 -21t73 -55t65 -75t69 -82t77 -75t97 -55 t121.5 -21q121 0 204.5 71.5t83.5 190.5q0 121 -84 192t-207 71q-143 0 -241 -97l93 -108q66 64 142 64q52 0 92 -33t40 -84q0 -57 -37 -91.5t-94 -34.5q-43 0 -82.5 21t-72 55t-65.5 75t-69.5 82t-77.5 75t-96.5 55t-118.5 21q-122 0 -207 -70.5t-85 -189.5z" /> - <glyph glyph-name="_433" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_433" unicode="" horiz-adv-x="1792" d="M896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM896 1408q-190 0 -361 -90l194 -194q82 28 167 28t167 -28l194 194q-171 90 -361 90zM218 279l194 194 q-28 82 -28 167t28 167l-194 194q-90 -171 -90 -361t90 -361zM896 -128q190 0 361 90l-194 194q-82 -28 -167 -28t-167 28l-194 -194q171 -90 361 -90zM896 256q159 0 271.5 112.5t112.5 271.5t-112.5 271.5t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5 t271.5 -112.5zM1380 473l194 -194q90 171 90 361t-90 361l-194 -194q28 -82 28 -167t-28 -167z" /> - <glyph glyph-name="_434" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_434" unicode="" horiz-adv-x="1792" d="M1760 640q0 -176 -68.5 -336t-184 -275.5t-275.5 -184t-336 -68.5t-336 68.5t-275.5 184t-184 275.5t-68.5 336q0 213 97 398.5t265 305.5t374 151v-228q-221 -45 -366.5 -221t-145.5 -406q0 -130 51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5 t136.5 204t51 248.5q0 230 -145.5 406t-366.5 221v228q206 -31 374 -151t265 -305.5t97 -398.5z" /> - <glyph glyph-name="uniF1D0" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF1D0" unicode="" horiz-adv-x="1792" d="M19 662q8 217 116 406t305 318h5q0 -1 -1 -3q-8 -8 -28 -33.5t-52 -76.5t-60 -110.5t-44.5 -135.5t-14 -150.5t39 -157.5t108.5 -154q50 -50 102 -69.5t90.5 -11.5t69.5 23.5t47 32.5l16 16q39 51 53 116.5t6.5 122.5t-21 107t-26.5 80l-14 29q-10 25 -30.5 49.5t-43 41 t-43.5 29.5t-35 19l-13 6l104 115q39 -17 78 -52t59 -61l19 -27q1 48 -18.5 103.5t-40.5 87.5l-20 31l161 183l160 -181q-33 -46 -52.5 -102.5t-22.5 -90.5l-4 -33q22 37 61.5 72.5t67.5 52.5l28 17l103 -115q-44 -14 -85 -50t-60 -65l-19 -29q-31 -56 -48 -133.5t-7 -170 t57 -156.5q33 -45 77.5 -60.5t85 -5.5t76 26.5t57.5 33.5l21 16q60 53 96.5 115t48.5 121.5t10 121.5t-18 118t-37 107.5t-45.5 93t-45 72t-34.5 47.5l-13 17q-14 13 -7 13l10 -3q40 -29 62.5 -46t62 -50t64 -58t58.5 -65t55.5 -77t45.5 -88t38 -103t23.5 -117t10.5 -136 q3 -259 -108 -465t-312 -321t-456 -115q-185 0 -351 74t-283.5 198t-184 293t-60.5 353z" /> - <glyph glyph-name="uniF1D1" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF1D1" unicode="" horiz-adv-x="1792" d="M874 -102v-66q-208 6 -385 109.5t-283 275.5l58 34q29 -49 73 -99l65 57q148 -168 368 -212l-17 -86q65 -12 121 -13zM276 428l-83 -28q22 -60 49 -112l-57 -33q-98 180 -98 385t98 385l57 -33q-30 -56 -49 -112l82 -28q-35 -100 -35 -212q0 -109 36 -212zM1528 251 l58 -34q-106 -172 -283 -275.5t-385 -109.5v66q56 1 121 13l-17 86q220 44 368 212l65 -57q44 50 73 99zM1377 805l-233 -80q14 -42 14 -85t-14 -85l232 -80q-31 -92 -98 -169l-185 162q-57 -67 -147 -85l48 -241q-52 -10 -98 -10t-98 10l48 241q-90 18 -147 85l-185 -162 q-67 77 -98 169l232 80q-14 42 -14 85t14 85l-233 80q33 93 99 169l185 -162q59 68 147 86l-48 240q44 10 98 10t98 -10l-48 -240q88 -18 147 -86l185 162q66 -76 99 -169zM874 1448v-66q-65 -2 -121 -13l17 -86q-220 -42 -368 -211l-65 56q-38 -42 -73 -98l-57 33 q106 172 282 275.5t385 109.5zM1705 640q0 -205 -98 -385l-57 33q27 52 49 112l-83 28q36 103 36 212q0 112 -35 212l82 28q-19 56 -49 112l57 33q98 -180 98 -385zM1585 1063l-57 -33q-35 56 -73 98l-65 -56q-148 169 -368 211l17 86q-56 11 -121 13v66q209 -6 385 -109.5 t282 -275.5zM1748 640q0 173 -67.5 331t-181.5 272t-272 181.5t-331 67.5t-331 -67.5t-272 -181.5t-181.5 -272t-67.5 -331t67.5 -331t181.5 -272t272 -181.5t331 -67.5t331 67.5t272 181.5t181.5 272t67.5 331zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71 t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="uniF1D2" unicode="" + <glyph glyph-name="uniF1D2" unicode="" d="M582 228q0 -66 -93 -66q-107 0 -107 63q0 64 98 64q102 0 102 -61zM546 694q0 -85 -74 -85q-77 0 -77 84q0 90 77 90q36 0 55 -25.5t19 -63.5zM712 769v125q-78 -29 -135 -29q-50 29 -110 29q-86 0 -145 -57t-59 -143q0 -50 29.5 -102t73.5 -67v-3q-38 -17 -38 -85 q0 -53 41 -77v-3q-113 -37 -113 -139q0 -45 20 -78.5t54 -51t72 -25.5t81 -8q224 0 224 188q0 67 -48 99t-126 46q-27 5 -51.5 20.5t-24.5 39.5q0 44 49 52q77 15 122 70t45 134q0 24 -10 52q37 9 49 13zM771 350h137q-2 27 -2 82v387q0 46 2 69h-137q3 -23 3 -71v-392 q0 -50 -3 -75zM1280 366v121q-30 -21 -68 -21q-53 0 -53 82v225h52q9 0 26.5 -1t26.5 -1v117h-105q0 82 3 102h-140q4 -24 4 -55v-47h-60v-117q36 3 37 3q3 0 11 -0.5t12 -0.5v-2h-2v-217q0 -37 2.5 -64t11.5 -56.5t24.5 -48.5t43.5 -31t66 -12q64 0 108 24zM924 1072 q0 36 -24 63.5t-60 27.5t-60.5 -27t-24.5 -64q0 -36 25 -62.5t60 -26.5t59.5 27t24.5 62zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="_438" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_438" unicode="" horiz-adv-x="1792" d="M595 22q0 100 -165 100q-158 0 -158 -104q0 -101 172 -101q151 0 151 105zM536 777q0 61 -30 102t-89 41q-124 0 -124 -145q0 -135 124 -135q119 0 119 137zM805 1101v-202q-36 -12 -79 -22q16 -43 16 -84q0 -127 -73 -216.5t-197 -112.5q-40 -8 -59.5 -27t-19.5 -58 q0 -31 22.5 -51.5t58 -32t78.5 -22t86 -25.5t78.5 -37.5t58 -64t22.5 -98.5q0 -304 -363 -304q-69 0 -130 12.5t-116 41t-87.5 82t-32.5 127.5q0 165 182 225v4q-67 41 -67 126q0 109 63 137v4q-72 24 -119.5 108.5t-47.5 165.5q0 139 95 231.5t235 92.5q96 0 178 -47 q98 0 218 47zM1123 220h-222q4 45 4 134v609q0 94 -4 128h222q-4 -33 -4 -124v-613q0 -89 4 -134zM1724 442v-196q-71 -39 -174 -39q-62 0 -107 20t-70 50t-39.5 78t-18.5 92t-4 103v351h2v4q-7 0 -19 1t-18 1q-21 0 -59 -6v190h96v76q0 54 -6 89h227q-6 -41 -6 -165h171 v-190q-15 0 -43.5 2t-42.5 2h-85v-365q0 -131 87 -131q61 0 109 33zM1148 1389q0 -58 -39 -101.5t-96 -43.5q-58 0 -98 43.5t-40 101.5q0 59 39.5 103t98.5 44q58 0 96.5 -44.5t38.5 -102.5z" /> - <glyph glyph-name="_439" unicode="" + <glyph glyph-name="_439" unicode="" d="M809 532l266 499h-112l-157 -312q-24 -48 -44 -92l-42 92l-155 312h-120l263 -493v-324h101v318zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="uniF1D5" unicode="" horiz-adv-x="1280" + <glyph glyph-name="uniF1D5" unicode="" horiz-adv-x="1280" d="M842 964q0 -80 -57 -136.5t-136 -56.5q-60 0 -111 35q-62 -67 -115 -146q-247 -371 -202 -859q1 -22 -12.5 -38.5t-34.5 -18.5h-5q-20 0 -35 13.5t-17 33.5q-14 126 -3.5 247.5t29.5 217t54 186t69 155.5t74 125q61 90 132 165q-16 35 -16 77q0 80 56.5 136.5t136.5 56.5 t136.5 -56.5t56.5 -136.5zM1223 953q0 -158 -78 -292t-212.5 -212t-292.5 -78q-64 0 -131 14q-21 5 -32.5 23.5t-6.5 39.5q5 20 23 31.5t39 7.5q51 -13 108 -13q97 0 186 38t153 102t102 153t38 186t-38 186t-102 153t-153 102t-186 38t-186 -38t-153 -102t-102 -153 t-38 -186q0 -114 52 -218q10 -20 3.5 -40t-25.5 -30t-39.5 -3t-30.5 26q-64 123 -64 265q0 119 46.5 227t124.5 186t186 124t226 46q158 0 292.5 -78t212.5 -212.5t78 -292.5z" /> - <glyph glyph-name="uniF1D6" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF1D6" unicode="" horiz-adv-x="1792" d="M270 730q-8 19 -8 52q0 20 11 49t24 45q-1 22 7.5 53t22.5 43q0 139 92.5 288.5t217.5 209.5q139 66 324 66q133 0 266 -55q49 -21 90 -48t71 -56t55 -68t42 -74t32.5 -84.5t25.5 -89.5t22 -98l1 -5q55 -83 55 -150q0 -14 -9 -40t-9 -38q0 -1 1.5 -3.5t3.5 -5t2 -3.5 q77 -114 120.5 -214.5t43.5 -208.5q0 -43 -19.5 -100t-55.5 -57q-9 0 -19.5 7.5t-19 17.5t-19 26t-16 26.5t-13.5 26t-9 17.5q-1 1 -3 1l-5 -4q-59 -154 -132 -223q20 -20 61.5 -38.5t69 -41.5t35.5 -65q-2 -4 -4 -16t-7 -18q-64 -97 -302 -97q-53 0 -110.5 9t-98 20 t-104.5 30q-15 5 -23 7q-14 4 -46 4.5t-40 1.5q-41 -45 -127.5 -65t-168.5 -20q-35 0 -69 1.5t-93 9t-101 20.5t-74.5 40t-32.5 64q0 40 10 59.5t41 48.5q11 2 40.5 13t49.5 12q4 0 14 2q2 2 2 4l-2 3q-48 11 -108 105.5t-73 156.5l-5 3q-4 0 -12 -20q-18 -41 -54.5 -74.5 t-77.5 -37.5h-1q-4 0 -6 4.5t-5 5.5q-23 54 -23 100q0 275 252 466z" /> - <glyph glyph-name="uniF1D7" unicode="" horiz-adv-x="2048" + <glyph glyph-name="uniF1D7" unicode="" horiz-adv-x="2048" d="M580 1075q0 41 -25 66t-66 25q-43 0 -76 -25.5t-33 -65.5q0 -39 33 -64.5t76 -25.5q41 0 66 24.5t25 65.5zM1323 568q0 28 -25.5 50t-65.5 22q-27 0 -49.5 -22.5t-22.5 -49.5q0 -28 22.5 -50.5t49.5 -22.5q40 0 65.5 22t25.5 51zM1087 1075q0 41 -24.5 66t-65.5 25 q-43 0 -76 -25.5t-33 -65.5q0 -39 33 -64.5t76 -25.5q41 0 65.5 24.5t24.5 65.5zM1722 568q0 28 -26 50t-65 22q-27 0 -49.5 -22.5t-22.5 -49.5q0 -28 22.5 -50.5t49.5 -22.5q39 0 65 22t26 51zM1456 965q-31 4 -70 4q-169 0 -311 -77t-223.5 -208.5t-81.5 -287.5 q0 -78 23 -152q-35 -3 -68 -3q-26 0 -50 1.5t-55 6.5t-44.5 7t-54.5 10.5t-50 10.5l-253 -127l72 218q-290 203 -290 490q0 169 97.5 311t264 223.5t363.5 81.5q176 0 332.5 -66t262 -182.5t136.5 -260.5zM2048 404q0 -117 -68.5 -223.5t-185.5 -193.5l55 -181l-199 109 q-150 -37 -218 -37q-169 0 -311 70.5t-223.5 191.5t-81.5 264t81.5 264t223.5 191.5t311 70.5q161 0 303 -70.5t227.5 -192t85.5 -263.5z" /> - <glyph glyph-name="_443" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_443" unicode="" horiz-adv-x="1792" d="M1764 1525q33 -24 27 -64l-256 -1536q-5 -29 -32 -45q-14 -8 -31 -8q-11 0 -24 5l-453 185l-242 -295q-18 -23 -49 -23q-13 0 -22 4q-19 7 -30.5 23.5t-11.5 36.5v349l864 1059l-1069 -925l-395 162q-37 14 -40 55q-2 40 32 59l1664 960q15 9 32 9q20 0 36 -11z" /> - <glyph glyph-name="_444" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_444" unicode="" horiz-adv-x="1792" d="M1764 1525q33 -24 27 -64l-256 -1536q-5 -29 -32 -45q-14 -8 -31 -8q-11 0 -24 5l-527 215l-298 -327q-18 -21 -47 -21q-14 0 -23 4q-19 7 -30 23.5t-11 36.5v452l-472 193q-37 14 -40 55q-3 39 32 59l1664 960q35 21 68 -2zM1422 26l221 1323l-1434 -827l336 -137 l863 639l-478 -797z" /> - <glyph glyph-name="_445" unicode="" + <glyph glyph-name="_445" unicode="" d="M1536 640q0 -156 -61 -298t-164 -245t-245 -164t-298 -61q-172 0 -327 72.5t-264 204.5q-7 10 -6.5 22.5t8.5 20.5l137 138q10 9 25 9q16 -2 23 -12q73 -95 179 -147t225 -52q104 0 198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5t-40.5 198.5t-109.5 163.5 t-163.5 109.5t-198.5 40.5q-98 0 -188 -35.5t-160 -101.5l137 -138q31 -30 14 -69q-17 -40 -59 -40h-448q-26 0 -45 19t-19 45v448q0 42 40 59q39 17 69 -14l130 -129q107 101 244.5 156.5t284.5 55.5q156 0 298 -61t245 -164t164 -245t61 -298zM896 928v-448q0 -14 -9 -23 t-23 -9h-320q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23z" /> - <glyph glyph-name="_446" unicode="" + <glyph glyph-name="_446" unicode="" d="M768 1280q-130 0 -248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5t-51 248.5t-136.5 204t-204 136.5t-248.5 51zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103 t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="_447" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_447" unicode="" horiz-adv-x="1792" d="M1682 -128q-44 0 -132.5 3.5t-133.5 3.5q-44 0 -132 -3.5t-132 -3.5q-24 0 -37 20.5t-13 45.5q0 31 17 46t39 17t51 7t45 15q33 21 33 140l-1 391q0 21 -1 31q-13 4 -50 4h-675q-38 0 -51 -4q-1 -10 -1 -31l-1 -371q0 -142 37 -164q16 -10 48 -13t57 -3.5t45 -15 t20 -45.5q0 -26 -12.5 -48t-36.5 -22q-47 0 -139.5 3.5t-138.5 3.5q-43 0 -128 -3.5t-127 -3.5q-23 0 -35.5 21t-12.5 45q0 30 15.5 45t36 17.5t47.5 7.5t42 15q33 23 33 143l-1 57v813q0 3 0.5 26t0 36.5t-1.5 38.5t-3.5 42t-6.5 36.5t-11 31.5t-16 18q-15 10 -45 12t-53 2 t-41 14t-18 45q0 26 12 48t36 22q46 0 138.5 -3.5t138.5 -3.5q42 0 126.5 3.5t126.5 3.5q25 0 37.5 -22t12.5 -48q0 -30 -17 -43.5t-38.5 -14.5t-49.5 -4t-43 -13q-35 -21 -35 -160l1 -320q0 -21 1 -32q13 -3 39 -3h699q25 0 38 3q1 11 1 32l1 320q0 139 -35 160 q-18 11 -58.5 12.5t-66 13t-25.5 49.5q0 26 12.5 48t37.5 22q44 0 132 -3.5t132 -3.5q43 0 129 3.5t129 3.5q25 0 37.5 -22t12.5 -48q0 -30 -17.5 -44t-40 -14.5t-51.5 -3t-44 -12.5q-35 -23 -35 -161l1 -943q0 -119 34 -140q16 -10 46 -13.5t53.5 -4.5t41.5 -15.5t18 -44.5 q0 -26 -12 -48t-36 -22z" /> - <glyph glyph-name="_448" unicode="" horiz-adv-x="1280" + <glyph glyph-name="_448" unicode="" horiz-adv-x="1280" d="M1278 1347v-73q0 -29 -18.5 -61t-42.5 -32q-50 0 -54 -1q-26 -6 -32 -31q-3 -11 -3 -64v-1152q0 -25 -18 -43t-43 -18h-108q-25 0 -43 18t-18 43v1218h-143v-1218q0 -25 -17.5 -43t-43.5 -18h-108q-26 0 -43.5 18t-17.5 43v496q-147 12 -245 59q-126 58 -192 179 q-64 117 -64 259q0 166 88 286q88 118 209 159q111 37 417 37h479q25 0 43 -18t18 -43z" /> - <glyph glyph-name="_449" unicode="" + <glyph glyph-name="_449" unicode="" d="M352 128v-128h-352v128h352zM704 256q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h256zM864 640v-128h-864v128h864zM224 1152v-128h-224v128h224zM1536 128v-128h-736v128h736zM576 1280q26 0 45 -19t19 -45v-256 q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h256zM1216 768q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h256zM1536 640v-128h-224v128h224zM1536 1152v-128h-864v128h864z" /> - <glyph glyph-name="uniF1E0" unicode="" + <glyph glyph-name="uniF1E0" unicode="" d="M1216 512q133 0 226.5 -93.5t93.5 -226.5t-93.5 -226.5t-226.5 -93.5t-226.5 93.5t-93.5 226.5q0 12 2 34l-360 180q-92 -86 -218 -86q-133 0 -226.5 93.5t-93.5 226.5t93.5 226.5t226.5 93.5q126 0 218 -86l360 180q-2 22 -2 34q0 133 93.5 226.5t226.5 93.5 t226.5 -93.5t93.5 -226.5t-93.5 -226.5t-226.5 -93.5q-126 0 -218 86l-360 -180q2 -22 2 -34t-2 -34l360 -180q92 86 218 86z" /> - <glyph glyph-name="_451" unicode="" + <glyph glyph-name="_451" unicode="" d="M1280 341q0 88 -62.5 151t-150.5 63q-84 0 -145 -58l-241 120q2 16 2 23t-2 23l241 120q61 -58 145 -58q88 0 150.5 63t62.5 151t-62.5 150.5t-150.5 62.5t-151 -62.5t-63 -150.5q0 -7 2 -23l-241 -120q-62 57 -145 57q-88 0 -150.5 -62.5t-62.5 -150.5t62.5 -150.5 t150.5 -62.5q83 0 145 57l241 -120q-2 -16 -2 -23q0 -88 63 -150.5t151 -62.5t150.5 62.5t62.5 150.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="_452" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_452" unicode="" horiz-adv-x="1792" d="M571 947q-10 25 -34 35t-49 0q-108 -44 -191 -127t-127 -191q-10 -25 0 -49t35 -34q13 -5 24 -5q42 0 60 40q34 84 98.5 148.5t148.5 98.5q25 11 35 35t0 49zM1513 1303l46 -46l-244 -243l68 -68q19 -19 19 -45.5t-19 -45.5l-64 -64q89 -161 89 -343q0 -143 -55.5 -273.5 t-150 -225t-225 -150t-273.5 -55.5t-273.5 55.5t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5q182 0 343 -89l64 64q19 19 45.5 19t45.5 -19l68 -68zM1521 1359q-10 -10 -22 -10q-13 0 -23 10l-91 90q-9 10 -9 23t9 23q10 9 23 9t23 -9l90 -91 q10 -9 10 -22.5t-10 -22.5zM1751 1129q-11 -9 -23 -9t-23 9l-90 91q-10 9 -10 22.5t10 22.5q9 10 22.5 10t22.5 -10l91 -90q9 -10 9 -23t-9 -23zM1792 1312q0 -14 -9 -23t-23 -9h-96q-14 0 -23 9t-9 23t9 23t23 9h96q14 0 23 -9t9 -23zM1600 1504v-96q0 -14 -9 -23t-23 -9 t-23 9t-9 23v96q0 14 9 23t23 9t23 -9t9 -23zM1751 1449l-91 -90q-10 -10 -22 -10q-13 0 -23 10q-10 9 -10 22.5t10 22.5l90 91q10 9 23 9t23 -9q9 -10 9 -23t-9 -23z" /> - <glyph glyph-name="_453" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_453" unicode="" horiz-adv-x="1792" d="M609 720l287 208l287 -208l-109 -336h-355zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM1515 186q149 203 149 454v3l-102 -89l-240 224l63 323 l134 -12q-150 206 -389 282l53 -124l-287 -159l-287 159l53 124q-239 -76 -389 -282l135 12l62 -323l-240 -224l-102 89v-3q0 -251 149 -454l30 132l326 -40l139 -298l-116 -69q117 -39 240 -39t240 39l-116 69l139 298l326 40z" /> - <glyph glyph-name="_454" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_454" unicode="" horiz-adv-x="1792" d="M448 224v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM256 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM832 224v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23 v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM640 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM66 768q-28 0 -47 19t-19 46v129h514v-129q0 -27 -19 -46t-46 -19h-383zM1216 224v-192q0 -14 -9 -23t-23 -9h-192 q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1024 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1600 224v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23 zM1408 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 1016v-13h-514v10q0 104 -382 102q-382 -1 -382 -102v-10h-514v13q0 17 8.5 43t34 64t65.5 75.5t110.5 76t160 67.5t224 47.5t293.5 18.5t293 -18.5t224 -47.5 t160.5 -67.5t110.5 -76t65.5 -75.5t34 -64t8.5 -43zM1792 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 962v-129q0 -27 -19 -46t-46 -19h-384q-27 0 -46 19t-19 46v129h514z" /> - <glyph glyph-name="_455" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_455" unicode="" horiz-adv-x="1792" d="M704 1216v-768q0 -26 -19 -45t-45 -19v-576q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v512l249 873q7 23 31 23h424zM1024 1216v-704h-256v704h256zM1792 320v-512q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v576q-26 0 -45 19t-19 45v768h424q24 0 31 -23z M736 1504v-224h-352v224q0 14 9 23t23 9h288q14 0 23 -9t9 -23zM1408 1504v-224h-352v224q0 14 9 23t23 9h288q14 0 23 -9t9 -23z" /> - <glyph glyph-name="_456" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_456" unicode="" horiz-adv-x="1792" d="M1755 1083q37 -38 37 -90.5t-37 -90.5l-401 -400l150 -150l-160 -160q-163 -163 -389.5 -186.5t-411.5 100.5l-362 -362h-181v181l362 362q-124 185 -100.5 411.5t186.5 389.5l160 160l150 -150l400 401q38 37 91 37t90 -37t37 -90.5t-37 -90.5l-400 -401l234 -234 l401 400q38 37 91 37t90 -37z" /> - <glyph glyph-name="_457" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_457" unicode="" horiz-adv-x="1792" d="M873 796q0 -83 -63.5 -142.5t-152.5 -59.5t-152.5 59.5t-63.5 142.5q0 84 63.5 143t152.5 59t152.5 -59t63.5 -143zM1375 796q0 -83 -63 -142.5t-153 -59.5q-89 0 -152.5 59.5t-63.5 142.5q0 84 63.5 143t152.5 59q90 0 153 -59t63 -143zM1600 616v667q0 87 -32 123.5 t-111 36.5h-1112q-83 0 -112.5 -34t-29.5 -126v-673q43 -23 88.5 -40t81 -28t81 -18.5t71 -11t70 -4t58.5 -0.5t56.5 2t44.5 2q68 1 95 -27q6 -6 10 -9q26 -25 61 -51q7 91 118 87q5 0 36.5 -1.5t43 -2t45.5 -1t53 1t54.5 4.5t61 8.5t62 13.5t67 19.5t67.5 27t72 34.5z M1763 621q-121 -149 -372 -252q84 -285 -23 -465q-66 -113 -183 -148q-104 -32 -182 15q-86 51 -82 164l-1 326v1q-8 2 -24.5 6t-23.5 5l-1 -338q4 -114 -83 -164q-79 -47 -183 -15q-117 36 -182 150q-105 180 -22 463q-251 103 -372 252q-25 37 -4 63t60 -1q4 -2 11.5 -7 t10.5 -8v694q0 72 47 123t114 51h1257q67 0 114 -51t47 -123v-694l21 15q39 27 60 1t-4 -63z" /> - <glyph glyph-name="_458" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_458" unicode="" horiz-adv-x="1792" d="M896 1102v-434h-145v434h145zM1294 1102v-434h-145v434h145zM1294 342l253 254v795h-1194v-1049h326v-217l217 217h398zM1692 1536v-1013l-434 -434h-326l-217 -217h-217v217h-398v1158l109 289h1483z" /> - <glyph glyph-name="_459" unicode="" + <glyph glyph-name="_459" unicode="" d="M773 217v-127q-1 -292 -6 -305q-12 -32 -51 -40q-54 -9 -181.5 38t-162.5 89q-13 15 -17 36q-1 12 4 26q4 10 34 47t181 216q1 0 60 70q15 19 39.5 24.5t49.5 -3.5q24 -10 37.5 -29t12.5 -42zM624 468q-3 -55 -52 -70l-120 -39q-275 -88 -292 -88q-35 2 -54 36 q-12 25 -17 75q-8 76 1 166.5t30 124.5t56 32q13 0 202 -77q71 -29 115 -47l84 -34q23 -9 35.5 -30.5t11.5 -48.5zM1450 171q-7 -54 -91.5 -161t-135.5 -127q-37 -14 -63 7q-14 10 -184 287l-47 77q-14 21 -11.5 46t19.5 46q35 43 83 26q1 -1 119 -40q203 -66 242 -79.5 t47 -20.5q28 -22 22 -61zM778 803q5 -102 -54 -122q-58 -17 -114 71l-378 598q-8 35 19 62q41 43 207.5 89.5t224.5 31.5q40 -10 49 -45q3 -18 22 -305.5t24 -379.5zM1440 695q3 -39 -26 -59q-15 -10 -329 -86q-67 -15 -91 -23l1 2q-23 -6 -46 4t-37 32q-30 47 0 87 q1 1 75 102q125 171 150 204t34 39q28 19 65 2q48 -23 123 -133.5t81 -167.5v-3z" /> - <glyph glyph-name="_460" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_460" unicode="" horiz-adv-x="2048" d="M1024 1024h-384v-384h384v384zM1152 384v-128h-640v128h640zM1152 1152v-640h-640v640h640zM1792 384v-128h-512v128h512zM1792 640v-128h-512v128h512zM1792 896v-128h-512v128h512zM1792 1152v-128h-512v128h512zM256 192v960h-128v-960q0 -26 19 -45t45 -19t45 19 t19 45zM1920 192v1088h-1536v-1088q0 -33 -11 -64h1483q26 0 45 19t19 45zM2048 1408v-1216q0 -80 -56 -136t-136 -56h-1664q-80 0 -136 56t-56 136v1088h256v128h1792z" /> - <glyph glyph-name="_461" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_461" unicode="" horiz-adv-x="2048" d="M1024 13q-20 0 -93 73.5t-73 93.5q0 32 62.5 54t103.5 22t103.5 -22t62.5 -54q0 -20 -73 -93.5t-93 -73.5zM1294 284q-2 0 -40 25t-101.5 50t-128.5 25t-128.5 -25t-101 -50t-40.5 -25q-18 0 -93.5 75t-75.5 93q0 13 10 23q78 77 196 121t233 44t233 -44t196 -121 q10 -10 10 -23q0 -18 -75.5 -93t-93.5 -75zM1567 556q-11 0 -23 8q-136 105 -252 154.5t-268 49.5q-85 0 -170.5 -22t-149 -53t-113.5 -62t-79 -53t-31 -22q-17 0 -92 75t-75 93q0 12 10 22q132 132 320 205t380 73t380 -73t320 -205q10 -10 10 -22q0 -18 -75 -93t-92 -75z M1838 827q-11 0 -22 9q-179 157 -371.5 236.5t-420.5 79.5t-420.5 -79.5t-371.5 -236.5q-11 -9 -22 -9q-17 0 -92.5 75t-75.5 93q0 13 10 23q187 186 445 288t527 102t527 -102t445 -288q10 -10 10 -23q0 -18 -75.5 -93t-92.5 -75z" /> - <glyph glyph-name="_462" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_462" unicode="" horiz-adv-x="1792" d="M384 0q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM768 0q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM384 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5 t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1152 0q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM768 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5 t37.5 90.5zM384 768q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1152 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM768 768q0 53 -37.5 90.5t-90.5 37.5 t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1536 0v384q0 52 -38 90t-90 38t-90 -38t-38 -90v-384q0 -52 38 -90t90 -38t90 38t38 90zM1152 768q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5z M1536 1088v256q0 26 -19 45t-45 19h-1280q-26 0 -45 -19t-19 -45v-256q0 -26 19 -45t45 -19h1280q26 0 45 19t19 45zM1536 768q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1664 1408v-1536q0 -52 -38 -90t-90 -38 h-1408q-52 0 -90 38t-38 90v1536q0 52 38 90t90 38h1408q52 0 90 -38t38 -90z" /> - <glyph glyph-name="_463" unicode="" + <glyph glyph-name="_463" unicode="" d="M1519 890q18 -84 -4 -204q-87 -444 -565 -444h-44q-25 0 -44 -16.5t-24 -42.5l-4 -19l-55 -346l-2 -15q-5 -26 -24.5 -42.5t-44.5 -16.5h-251q-21 0 -33 15t-9 36q9 56 26.5 168t26.5 168t27 167.5t27 167.5q5 37 43 37h131q133 -2 236 21q175 39 287 144q102 95 155 246 q24 70 35 133q1 6 2.5 7.5t3.5 1t6 -3.5q79 -59 98 -162zM1347 1172q0 -107 -46 -236q-80 -233 -302 -315q-113 -40 -252 -42q0 -1 -90 -1l-90 1q-100 0 -118 -96q-2 -8 -85 -530q-1 -10 -12 -10h-295q-22 0 -36.5 16.5t-11.5 38.5l232 1471q5 29 27.5 48t51.5 19h598 q34 0 97.5 -13t111.5 -32q107 -41 163.5 -123t56.5 -196z" /> - <glyph glyph-name="_464" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_464" unicode="" horiz-adv-x="1792" d="M441 864q33 0 52 -26q266 -364 362 -774h-446q-127 441 -367 749q-12 16 -3 33.5t29 17.5h373zM1000 507q-49 -199 -125 -393q-79 310 -256 594q40 221 44 449q211 -340 337 -650zM1099 1216q235 -324 384.5 -698.5t184.5 -773.5h-451q-41 665 -553 1472h435zM1792 640 q0 -424 -101 -812q-67 560 -359 1083q-25 301 -106 584q-4 16 5.5 28.5t25.5 12.5h359q21 0 38.5 -13t22.5 -33q115 -409 115 -850z" /> - <glyph glyph-name="uniF1F0" unicode="" horiz-adv-x="2304" + <glyph glyph-name="uniF1F0" unicode="" horiz-adv-x="2304" d="M1975 546h-138q14 37 66 179l3 9q4 10 10 26t9 26l12 -55zM531 611l-58 295q-11 54 -75 54h-268l-2 -13q311 -79 403 -336zM710 960l-162 -438l-17 89q-26 70 -85 129.5t-131 88.5l135 -510h175l261 641h-176zM849 318h166l104 642h-166zM1617 944q-69 27 -149 27 q-123 0 -201 -59t-79 -153q-1 -102 145 -174q48 -23 67 -41t19 -39q0 -30 -30 -46t-69 -16q-86 0 -156 33l-22 11l-23 -144q74 -34 185 -34q130 -1 208.5 59t80.5 160q0 106 -140 174q-49 25 -71 42t-22 38q0 22 24.5 38.5t70.5 16.5q70 1 124 -24l15 -8zM2042 960h-128 q-65 0 -87 -54l-246 -588h174l35 96h212q5 -22 20 -96h154zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" /> - <glyph glyph-name="_466" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_466" unicode="" horiz-adv-x="2304" d="M1119 1195q-128 85 -281 85q-103 0 -197.5 -40.5t-162.5 -108.5t-108.5 -162t-40.5 -197q0 -104 40.5 -198t108.5 -162t162 -108.5t198 -40.5q153 0 281 85q-131 107 -178 265.5t0.5 316.5t177.5 265zM1152 1171q-126 -99 -172 -249.5t-0.5 -300.5t172.5 -249 q127 99 172.5 249t-0.5 300.5t-172 249.5zM1185 1195q130 -107 177.5 -265.5t0.5 -317t-178 -264.5q128 -85 281 -85q104 0 198 40.5t162 108.5t108.5 162t40.5 198q0 103 -40.5 197t-108.5 162t-162.5 108.5t-197.5 40.5q-153 0 -281 -85zM1926 473h7v3h-17v-3h7v-17h3v17z M1955 456h4v20h-5l-6 -13l-6 13h-5v-20h3v15l6 -13h4l5 13v-15zM1947 16v-2h-2h-3v3h3h2v-1zM1947 7h3l-4 5h2l1 1q1 1 1 3t-1 3l-1 1h-3h-6v-13h3v5h1zM685 75q0 19 11 31t30 12q18 0 29 -12.5t11 -30.5q0 -19 -11 -31t-29 -12q-19 0 -30 12t-11 31zM1158 119q30 0 35 -32 @@ -1687,13 +1687,13 @@ q-18 -15 -39 -15q-34 0 -41 33h101v12q0 32 -18 51.5t-46 19.5zM1318 146q-23 0 -35 q19 0 35 -12l14 24q-20 16 -48 16q-33 0 -52.5 -20t-19.5 -51zM1593 7h30v68v67h-30v-16q-15 20 -42 20q-29 0 -48.5 -20t-19.5 -51t19.5 -51t48.5 -20q28 0 42 20v-17zM1726 146q-23 0 -35 -20v16h-29v-135h29v76q0 35 29 35q10 0 18 -4l9 28q-8 4 -21 4zM1866 7h29v68v122 h-29v-71q-15 20 -43 20t-47.5 -20.5t-19.5 -50.5t19.5 -50.5t47.5 -20.5q29 0 43 20v-17zM1944 27l-2 -1h-3q-2 -1 -4 -3q-3 -1 -3 -4q-1 -2 -1 -6q0 -3 1 -5q0 -2 3 -4q2 -2 4 -3t5 -1q4 0 6 1q0 1 2 2l2 1q1 1 3 4q1 2 1 5q0 4 -1 6q-1 1 -3 4q0 1 -2 2l-2 1q-1 0 -3 0.5 t-3 0.5zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" /> - <glyph glyph-name="_467" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_467" unicode="" horiz-adv-x="2304" d="M313 759q0 -51 -36 -84q-29 -26 -89 -26h-17v220h17q61 0 89 -27q36 -31 36 -83zM2089 824q0 -52 -64 -52h-19v101h20q63 0 63 -49zM380 759q0 74 -50 120.5t-129 46.5h-95v-333h95q74 0 119 38q60 51 60 128zM410 593h65v333h-65v-333zM730 694q0 40 -20.5 62t-75.5 42 q-29 10 -39.5 19t-10.5 23q0 16 13.5 26.5t34.5 10.5q29 0 53 -27l34 44q-41 37 -98 37q-44 0 -74 -27.5t-30 -67.5q0 -35 18 -55.5t64 -36.5q37 -13 45 -19q19 -12 19 -34q0 -20 -14 -33.5t-36 -13.5q-48 0 -71 44l-42 -40q44 -64 115 -64q51 0 83 30.5t32 79.5zM1008 604 v77q-37 -37 -78 -37q-49 0 -80.5 32.5t-31.5 82.5q0 48 31.5 81.5t77.5 33.5q43 0 81 -38v77q-40 20 -80 20q-74 0 -125.5 -50.5t-51.5 -123.5t51 -123.5t125 -50.5q42 0 81 19zM2240 0v527q-65 -40 -144.5 -84t-237.5 -117t-329.5 -137.5t-417.5 -134.5t-504 -118h1569 q26 0 45 19t19 45zM1389 757q0 75 -53 128t-128 53t-128 -53t-53 -128t53 -128t128 -53t128 53t53 128zM1541 584l144 342h-71l-90 -224l-89 224h-71l142 -342h35zM1714 593h184v56h-119v90h115v56h-115v74h119v57h-184v-333zM2105 593h80l-105 140q76 16 76 94q0 47 -31 73 t-87 26h-97v-333h65v133h9zM2304 1274v-1268q0 -56 -38.5 -95t-93.5 -39h-2040q-55 0 -93.5 39t-38.5 95v1268q0 56 38.5 95t93.5 39h2040q55 0 93.5 -39t38.5 -95z" /> - <glyph glyph-name="f1f3" unicode="" horiz-adv-x="2304" + <glyph glyph-name="f1f3" unicode="" horiz-adv-x="2304" d="M119 854h89l-45 108zM740 328l74 79l-70 79h-163v-49h142v-55h-142v-54h159zM898 406l99 -110v217zM1186 453q0 33 -40 33h-84v-69h83q41 0 41 36zM1475 457q0 29 -42 29h-82v-61h81q43 0 43 32zM1197 923q0 29 -42 29h-82v-60h81q43 0 43 31zM1656 854h89l-44 108z M699 1009v-271h-66v212l-94 -212h-57l-94 212v-212h-132l-25 60h-135l-25 -60h-70l116 271h96l110 -257v257h106l85 -184l77 184h108zM1255 453q0 -20 -5.5 -35t-14 -25t-22.5 -16.5t-26 -10t-31.5 -4.5t-31.5 -1t-32.5 0.5t-29.5 0.5v-91h-126l-80 90l-83 -90h-256v271h260 l80 -89l82 89h207q109 0 109 -89zM964 794v-56h-217v271h217v-57h-152v-49h148v-55h-148v-54h152zM2304 235v-229q0 -55 -38.5 -94.5t-93.5 -39.5h-2040q-55 0 -93.5 39.5t-38.5 94.5v678h111l25 61h55l25 -61h218v46l19 -46h113l20 47v-47h541v99l10 1q10 0 10 -14v-86h279 @@ -1703,111 +1703,111 @@ q60 0 95 17zM1546 469q0 -23 -12 -43t-34 -29q25 -9 34 -26t9 -46v-54h-65v45q0 33 - t-29.5 3.5h-70v-98h-64v271l153 -1q49 0 78 -14.5t29 -57.5zM1798 327v-56h-216v271h216v-56h-151v-49h148v-55h-148v-54zM1372 1009v-271h-66v271h66zM2065 357q0 -86 -102 -86h-126v58h126q34 0 34 25q0 16 -17 21t-41.5 5t-49.5 3.5t-42 22.5t-17 55q0 39 26 60t66 21 h130v-57h-119q-36 0 -36 -25q0 -16 17.5 -20.5t42 -4t49 -2.5t42 -21.5t17.5 -54.5zM2304 407v-101q-24 -35 -88 -35h-125v58h125q33 0 33 25q0 13 -12.5 19t-31 5.5t-40 2t-40 8t-31 24t-12.5 48.5q0 39 26.5 60t66.5 21h129v-57h-118q-36 0 -36 -25q0 -20 29 -22t68.5 -5 t56.5 -26zM2139 1008v-270h-92l-122 203v-203h-132l-26 60h-134l-25 -60h-75q-129 0 -129 133q0 138 133 138h63v-59q-7 0 -28 1t-28.5 0.5t-23 -2t-21.5 -6.5t-14.5 -13.5t-11.5 -23t-3 -33.5q0 -38 13.5 -58t49.5 -20h29l92 213h97l109 -256v256h99l114 -188v188h66z" /> - <glyph glyph-name="_469" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_469" unicode="" horiz-adv-x="2304" d="M745 630q0 -37 -25.5 -61.5t-62.5 -24.5q-29 0 -46.5 16t-17.5 44q0 37 25 62.5t62 25.5q28 0 46.5 -16.5t18.5 -45.5zM1530 779q0 -42 -22 -57t-66 -15l-32 -1l17 107q2 11 13 11h18q22 0 35 -2t25 -12.5t12 -30.5zM1881 630q0 -36 -25.5 -61t-61.5 -25q-29 0 -47 16 t-18 44q0 37 25 62.5t62 25.5q28 0 46.5 -16.5t18.5 -45.5zM513 801q0 59 -38.5 85.5t-100.5 26.5h-160q-19 0 -21 -19l-65 -408q-1 -6 3 -11t10 -5h76q20 0 22 19l18 110q1 8 7 13t15 6.5t17 1.5t19 -1t14 -1q86 0 135 48.5t49 134.5zM822 489l41 261q1 6 -3 11t-10 5h-76 q-14 0 -17 -33q-27 40 -95 40q-72 0 -122.5 -54t-50.5 -127q0 -59 34.5 -94t92.5 -35q28 0 58 12t48 32q-4 -12 -4 -21q0 -16 13 -16h69q19 0 22 19zM1269 752q0 5 -4 9.5t-9 4.5h-77q-11 0 -18 -10l-106 -156l-44 150q-5 16 -22 16h-75q-5 0 -9 -4.5t-4 -9.5q0 -2 19.5 -59 t42 -123t23.5 -70q-82 -112 -82 -120q0 -13 13 -13h77q11 0 18 10l255 368q2 2 2 7zM1649 801q0 59 -38.5 85.5t-100.5 26.5h-159q-20 0 -22 -19l-65 -408q-1 -6 3 -11t10 -5h82q12 0 16 13l18 116q1 8 7 13t15 6.5t17 1.5t19 -1t14 -1q86 0 135 48.5t49 134.5zM1958 489 l41 261q1 6 -3 11t-10 5h-76q-14 0 -17 -33q-26 40 -95 40q-72 0 -122.5 -54t-50.5 -127q0 -59 34.5 -94t92.5 -35q29 0 59 12t47 32q0 -1 -2 -9t-2 -12q0 -16 13 -16h69q19 0 22 19zM2176 898v1q0 14 -13 14h-74q-11 0 -13 -11l-65 -416l-1 -2q0 -5 4 -9.5t10 -4.5h66 q19 0 21 19zM392 764q-5 -35 -26 -46t-60 -11l-33 -1l17 107q2 11 13 11h19q40 0 58 -11.5t12 -48.5zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" /> - <glyph glyph-name="_470" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_470" unicode="" horiz-adv-x="2304" d="M1597 633q0 -69 -21 -106q-19 -35 -52 -35q-23 0 -41 9v224q29 30 57 30q57 0 57 -122zM2035 669h-110q6 98 56 98q51 0 54 -98zM476 534q0 59 -33 91.5t-101 57.5q-36 13 -52 24t-16 25q0 26 38 26q58 0 124 -33l18 112q-67 32 -149 32q-77 0 -123 -38q-48 -39 -48 -109 q0 -58 32.5 -90.5t99.5 -56.5q39 -14 54.5 -25.5t15.5 -27.5q0 -31 -48 -31q-29 0 -70 12.5t-72 30.5l-18 -113q72 -41 168 -41q81 0 129 37q51 41 51 117zM771 749l19 111h-96v135l-129 -21l-18 -114l-46 -8l-17 -103h62v-219q0 -84 44 -120q38 -30 111 -30q32 0 79 11v118 q-32 -7 -44 -7q-42 0 -42 50v197h77zM1087 724v139q-15 3 -28 3q-32 0 -55.5 -16t-33.5 -46l-10 56h-131v-471h150v306q26 31 82 31q16 0 26 -2zM1124 389h150v471h-150v-471zM1746 638q0 122 -45 179q-40 52 -111 52q-64 0 -117 -56l-8 47h-132v-645l150 25v151 q36 -11 68 -11q83 0 134 56q61 65 61 202zM1278 986q0 33 -23 56t-56 23t-56 -23t-23 -56t23 -56.5t56 -23.5t56 23.5t23 56.5zM2176 629q0 113 -48 176q-50 64 -144 64q-96 0 -151.5 -66t-55.5 -180q0 -128 63 -188q55 -55 161 -55q101 0 160 40l-16 103q-57 -31 -128 -31 q-43 0 -63 19q-23 19 -28 66h248q2 14 2 52zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" /> - <glyph glyph-name="_471" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_471" unicode="" horiz-adv-x="2048" d="M1558 684q61 -356 298 -556q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-180.5 74.5t-75.5 180.5zM1024 -176q16 0 16 16t-16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5zM2026 1424q8 -10 7.5 -23.5t-10.5 -22.5 l-1872 -1622q-10 -8 -23.5 -7t-21.5 11l-84 96q-8 10 -7.5 23.5t10.5 21.5l186 161q-19 32 -19 66q50 42 91 88t85 119.5t74.5 158.5t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q124 -18 219 -82.5t148 -157.5 l418 363q10 8 23.5 7t21.5 -11z" /> - <glyph glyph-name="_472" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_472" unicode="" horiz-adv-x="2048" d="M1040 -160q0 16 -16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5q16 0 16 16zM503 315l877 760q-42 88 -132.5 146.5t-223.5 58.5q-93 0 -169.5 -31.5t-121.5 -80.5t-69 -103t-24 -105q0 -384 -137 -645zM1856 128 q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-180.5 74.5t-75.5 180.5l149 129h757q-166 187 -227 459l111 97q61 -356 298 -556zM1942 1520l84 -96q8 -10 7.5 -23.5t-10.5 -22.5l-1872 -1622q-10 -8 -23.5 -7t-21.5 11l-84 96q-8 10 -7.5 23.5t10.5 21.5l186 161 q-19 32 -19 66q50 42 91 88t85 119.5t74.5 158.5t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q124 -18 219 -82.5t148 -157.5l418 363q10 8 23.5 7t21.5 -11z" /> - <glyph glyph-name="_473" unicode="" horiz-adv-x="1408" + <glyph glyph-name="_473" unicode="" horiz-adv-x="1408" d="M512 160v704q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-704q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM768 160v704q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-704q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1024 160v704q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-704 q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM480 1152h448l-48 117q-7 9 -17 11h-317q-10 -2 -17 -11zM1408 1120v-64q0 -14 -9 -23t-23 -9h-96v-948q0 -83 -47 -143.5t-113 -60.5h-832q-66 0 -113 58.5t-47 141.5v952h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h309l70 167 q15 37 54 63t79 26h320q40 0 79 -26t54 -63l70 -167h309q14 0 23 -9t9 -23z" /> - <glyph glyph-name="_474" unicode="" + <glyph glyph-name="_474" unicode="" d="M1150 462v-109q0 -50 -36.5 -89t-94 -60.5t-118 -32.5t-117.5 -11q-205 0 -342.5 139t-137.5 346q0 203 136 339t339 136q34 0 75.5 -4.5t93 -18t92.5 -34t69 -56.5t28 -81v-109q0 -16 -16 -16h-118q-16 0 -16 16v70q0 43 -65.5 67.5t-137.5 24.5q-140 0 -228.5 -91.5 t-88.5 -237.5q0 -151 91.5 -249.5t233.5 -98.5q68 0 138 24t70 66v70q0 7 4.5 11.5t10.5 4.5h119q6 0 11 -4.5t5 -11.5zM768 1280q-130 0 -248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5 t-51 248.5t-136.5 204t-204 136.5t-248.5 51zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="_475" unicode="" + <glyph glyph-name="_475" unicode="" d="M972 761q0 108 -53.5 169t-147.5 61q-63 0 -124 -30.5t-110 -84.5t-79.5 -137t-30.5 -180q0 -112 53.5 -173t150.5 -61q96 0 176 66.5t122.5 166t42.5 203.5zM1536 640q0 -111 -37 -197t-98.5 -135t-131.5 -74.5t-145 -27.5q-6 0 -15.5 -0.5t-16.5 -0.5q-95 0 -142 53 q-28 33 -33 83q-52 -66 -131.5 -110t-173.5 -44q-161 0 -249.5 95.5t-88.5 269.5q0 157 66 290t179 210.5t246 77.5q87 0 155 -35.5t106 -99.5l2 19l11 56q1 6 5.5 12t9.5 6h118q5 0 13 -11q5 -5 3 -16l-120 -614q-5 -24 -5 -48q0 -39 12.5 -52t44.5 -13q28 1 57 5.5t73 24 t77 50t57 89.5t24 137q0 292 -174 466t-466 174q-130 0 -248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51q228 0 405 144q11 9 24 8t21 -12l41 -49q8 -12 7 -24q-2 -13 -12 -22q-102 -83 -227.5 -128t-258.5 -45q-156 0 -298 61 t-245 164t-164 245t-61 298t61 298t164 245t245 164t298 61q344 0 556 -212t212 -556z" /> - <glyph glyph-name="_476" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_476" unicode="" horiz-adv-x="1792" d="M1698 1442q94 -94 94 -226.5t-94 -225.5l-225 -223l104 -104q10 -10 10 -23t-10 -23l-210 -210q-10 -10 -23 -10t-23 10l-105 105l-603 -603q-37 -37 -90 -37h-203l-256 -128l-64 64l128 256v203q0 53 37 90l603 603l-105 105q-10 10 -10 23t10 23l210 210q10 10 23 10 t23 -10l104 -104l223 225q93 94 225.5 94t226.5 -94zM512 64l576 576l-192 192l-576 -576v-192h192z" /> - <glyph glyph-name="f1fc" unicode="" horiz-adv-x="1792" + <glyph glyph-name="f1fc" unicode="" horiz-adv-x="1792" d="M1615 1536q70 0 122.5 -46.5t52.5 -116.5q0 -63 -45 -151q-332 -629 -465 -752q-97 -91 -218 -91q-126 0 -216.5 92.5t-90.5 219.5q0 128 92 212l638 579q59 54 130 54zM706 502q39 -76 106.5 -130t150.5 -76l1 -71q4 -213 -129.5 -347t-348.5 -134q-123 0 -218 46.5 t-152.5 127.5t-86.5 183t-29 220q7 -5 41 -30t62 -44.5t59 -36.5t46 -17q41 0 55 37q25 66 57.5 112.5t69.5 76t88 47.5t103 25.5t125 10.5z" /> - <glyph glyph-name="_478" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_478" unicode="" horiz-adv-x="1792" d="M1792 128v-384h-1792v384q45 0 85 14t59 27.5t47 37.5q30 27 51.5 38t56.5 11q24 0 44 -7t31 -15t33 -27q29 -25 47 -38t58 -27t86 -14q45 0 85 14.5t58 27t48 37.5q21 19 32.5 27t31 15t43.5 7q35 0 56.5 -11t51.5 -38q28 -24 47 -37.5t59 -27.5t85 -14t85 14t59 27.5 t47 37.5q30 27 51.5 38t56.5 11q34 0 55.5 -11t51.5 -38q28 -24 47 -37.5t59 -27.5t85 -14zM1792 448v-192q-24 0 -44 7t-31 15t-33 27q-29 25 -47 38t-58 27t-85 14q-46 0 -86 -14t-58 -27t-47 -38q-22 -19 -33 -27t-31 -15t-44 -7q-35 0 -56.5 11t-51.5 38q-29 25 -47 38 t-58 27t-86 14q-45 0 -85 -14.5t-58 -27t-48 -37.5q-21 -19 -32.5 -27t-31 -15t-43.5 -7q-35 0 -56.5 11t-51.5 38q-28 24 -47 37.5t-59 27.5t-85 14q-46 0 -86 -14t-58 -27t-47 -38q-30 -27 -51.5 -38t-56.5 -11v192q0 80 56 136t136 56h64v448h256v-448h256v448h256v-448 h256v448h256v-448h64q80 0 136 -56t56 -136zM512 1312q0 -77 -36 -118.5t-92 -41.5q-53 0 -90.5 37.5t-37.5 90.5q0 29 9.5 51t23.5 34t31 28t31 31.5t23.5 44.5t9.5 67q38 0 83 -74t45 -150zM1024 1312q0 -77 -36 -118.5t-92 -41.5q-53 0 -90.5 37.5t-37.5 90.5 q0 29 9.5 51t23.5 34t31 28t31 31.5t23.5 44.5t9.5 67q38 0 83 -74t45 -150zM1536 1312q0 -77 -36 -118.5t-92 -41.5q-53 0 -90.5 37.5t-37.5 90.5q0 29 9.5 51t23.5 34t31 28t31 31.5t23.5 44.5t9.5 67q38 0 83 -74t45 -150z" /> - <glyph glyph-name="_479" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_479" unicode="" horiz-adv-x="2048" d="M2048 0v-128h-2048v1536h128v-1408h1920zM1664 1024l256 -896h-1664v576l448 576l576 -576z" /> - <glyph glyph-name="_480" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_480" unicode="" horiz-adv-x="1792" d="M768 646l546 -546q-106 -108 -247.5 -168t-298.5 -60q-209 0 -385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103v-762zM955 640h773q0 -157 -60 -298.5t-168 -247.5zM1664 768h-768v768q209 0 385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="_481" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_481" unicode="" horiz-adv-x="2048" d="M2048 0v-128h-2048v1536h128v-1408h1920zM1920 1248v-435q0 -21 -19.5 -29.5t-35.5 7.5l-121 121l-633 -633q-10 -10 -23 -10t-23 10l-233 233l-416 -416l-192 192l585 585q10 10 23 10t23 -10l233 -233l464 464l-121 121q-16 16 -7.5 35.5t29.5 19.5h435q14 0 23 -9 t9 -23z" /> - <glyph glyph-name="_482" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_482" unicode="" horiz-adv-x="1792" d="M1292 832q0 -6 10 -41q10 -29 25 -49.5t41 -34t44 -20t55 -16.5q325 -91 325 -332q0 -146 -105.5 -242.5t-254.5 -96.5q-59 0 -111.5 18.5t-91.5 45.5t-77 74.5t-63 87.5t-53.5 103.5t-43.5 103t-39.5 106.5t-35.5 95q-32 81 -61.5 133.5t-73.5 96.5t-104 64t-142 20 q-96 0 -183 -55.5t-138 -144.5t-51 -185q0 -160 106.5 -279.5t263.5 -119.5q177 0 258 95q56 63 83 116l84 -152q-15 -34 -44 -70l1 -1q-131 -152 -388 -152q-147 0 -269.5 79t-190.5 207.5t-68 274.5q0 105 43.5 206t116 176.5t172 121.5t204.5 46q87 0 159 -19t123.5 -50 t95 -80t72.5 -99t58.5 -117t50.5 -124.5t50 -130.5t55 -127q96 -200 233 -200q81 0 138.5 48.5t57.5 128.5q0 42 -19 72t-50.5 46t-72.5 31.5t-84.5 27t-87.5 34t-81 52t-65 82t-39 122.5q-3 16 -3 33q0 110 87.5 192t198.5 78q78 -3 120.5 -14.5t90.5 -53.5h-1 q12 -11 23 -24.5t26 -36t19 -27.5l-129 -99q-26 49 -54 70v1q-23 21 -97 21q-49 0 -84 -33t-35 -83z" /> - <glyph glyph-name="_483" unicode="" + <glyph glyph-name="_483" unicode="" d="M1432 484q0 173 -234 239q-35 10 -53 16.5t-38 25t-29 46.5q0 2 -2 8.5t-3 12t-1 7.5q0 36 24.5 59.5t60.5 23.5q54 0 71 -15h-1q20 -15 39 -51l93 71q-39 54 -49 64q-33 29 -67.5 39t-85.5 10q-80 0 -142 -57.5t-62 -137.5q0 -7 2 -23q16 -96 64.5 -140t148.5 -73 q29 -8 49 -15.5t45 -21.5t38.5 -34.5t13.5 -46.5v-5q1 -58 -40.5 -93t-100.5 -35q-97 0 -167 144q-23 47 -51.5 121.5t-48 125.5t-54 110.5t-74 95.5t-103.5 60.5t-147 24.5q-101 0 -192 -56t-144 -148t-50 -192v-1q4 -108 50.5 -199t133.5 -147.5t196 -56.5q186 0 279 110 q20 27 31 51l-60 109q-42 -80 -99 -116t-146 -36q-115 0 -191 87t-76 204q0 105 82 189t186 84q112 0 170 -53.5t104 -172.5q8 -21 25.5 -68.5t28.5 -76.5t31.5 -74.5t38.5 -74t45.5 -62.5t55.5 -53.5t66 -33t80 -13.5q107 0 183 69.5t76 174.5zM1536 1120v-960 q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="_484" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_484" unicode="" horiz-adv-x="2048" d="M1152 640q0 104 -40.5 198.5t-109.5 163.5t-163.5 109.5t-198.5 40.5t-198.5 -40.5t-163.5 -109.5t-109.5 -163.5t-40.5 -198.5t40.5 -198.5t109.5 -163.5t163.5 -109.5t198.5 -40.5t198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5zM1920 640q0 104 -40.5 198.5 t-109.5 163.5t-163.5 109.5t-198.5 40.5h-386q119 -90 188.5 -224t69.5 -288t-69.5 -288t-188.5 -224h386q104 0 198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5zM2048 640q0 -130 -51 -248.5t-136.5 -204t-204 -136.5t-248.5 -51h-768q-130 0 -248.5 51t-204 136.5 t-136.5 204t-51 248.5t51 248.5t136.5 204t204 136.5t248.5 51h768q130 0 248.5 -51t204 -136.5t136.5 -204t51 -248.5z" /> - <glyph glyph-name="_485" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_485" unicode="" horiz-adv-x="2048" d="M0 640q0 130 51 248.5t136.5 204t204 136.5t248.5 51h768q130 0 248.5 -51t204 -136.5t136.5 -204t51 -248.5t-51 -248.5t-136.5 -204t-204 -136.5t-248.5 -51h-768q-130 0 -248.5 51t-204 136.5t-136.5 204t-51 248.5zM1408 128q104 0 198.5 40.5t163.5 109.5 t109.5 163.5t40.5 198.5t-40.5 198.5t-109.5 163.5t-163.5 109.5t-198.5 40.5t-198.5 -40.5t-163.5 -109.5t-109.5 -163.5t-40.5 -198.5t40.5 -198.5t109.5 -163.5t163.5 -109.5t198.5 -40.5z" /> - <glyph glyph-name="_486" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_486" unicode="" horiz-adv-x="2304" d="M762 384h-314q-40 0 -57.5 35t6.5 67l188 251q-65 31 -137 31q-132 0 -226 -94t-94 -226t94 -226t226 -94q115 0 203 72.5t111 183.5zM576 512h186q-18 85 -75 148zM1056 512l288 384h-480l-99 -132q105 -103 126 -252h165zM2176 448q0 132 -94 226t-226 94 q-60 0 -121 -24l174 -260q15 -23 10 -49t-27 -40q-15 -11 -36 -11q-35 0 -53 29l-174 260q-93 -95 -93 -225q0 -132 94 -226t226 -94t226 94t94 226zM2304 448q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 97 39.5 183.5t109.5 149.5l-65 98l-353 -469 q-18 -26 -51 -26h-197q-23 -164 -149 -274t-294 -110q-185 0 -316.5 131.5t-131.5 316.5t131.5 316.5t316.5 131.5q114 0 215 -55l137 183h-224q-26 0 -45 19t-19 45t19 45t45 19h384v-128h435l-85 128h-222q-26 0 -45 19t-19 45t19 45t45 19h256q33 0 53 -28l267 -400 q91 44 192 44q185 0 316.5 -131.5t131.5 -316.5z" /> - <glyph glyph-name="_487" unicode="" + <glyph glyph-name="_487" unicode="" d="M384 320q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1408 320q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1362 716l-72 384q-5 23 -22.5 37.5t-40.5 14.5 h-918q-23 0 -40.5 -14.5t-22.5 -37.5l-72 -384q-5 -30 14 -53t49 -23h1062q30 0 49 23t14 53zM1136 1328q0 20 -14 34t-34 14h-640q-20 0 -34 -14t-14 -34t14 -34t34 -14h640q20 0 34 14t14 34zM1536 603v-603h-128v-128q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5 t-37.5 90.5v128h-768v-128q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5v128h-128v603q0 112 25 223l103 454q9 78 97.5 137t230 89t312.5 30t312.5 -30t230 -89t97.5 -137l105 -454q23 -102 23 -223z" /> - <glyph glyph-name="_488" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_488" unicode="" horiz-adv-x="2048" d="M1463 704q0 -35 -25 -60.5t-61 -25.5h-702q-36 0 -61 25.5t-25 60.5t25 60.5t61 25.5h702q36 0 61 -25.5t25 -60.5zM1677 704q0 86 -23 170h-982q-36 0 -61 25t-25 60q0 36 25 61t61 25h908q-88 143 -235 227t-320 84q-177 0 -327.5 -87.5t-238 -237.5t-87.5 -327 q0 -86 23 -170h982q36 0 61 -25t25 -60q0 -36 -25 -61t-61 -25h-908q88 -143 235.5 -227t320.5 -84q132 0 253 51.5t208 139t139 208t52 253.5zM2048 959q0 -35 -25 -60t-61 -25h-131q17 -85 17 -170q0 -167 -65.5 -319.5t-175.5 -263t-262.5 -176t-319.5 -65.5 q-246 0 -448.5 133t-301.5 350h-189q-36 0 -61 25t-25 61q0 35 25 60t61 25h132q-17 85 -17 170q0 167 65.5 319.5t175.5 263t262.5 176t320.5 65.5q245 0 447.5 -133t301.5 -350h188q36 0 61 -25t25 -61z" /> - <glyph glyph-name="_489" unicode="" horiz-adv-x="1280" + <glyph glyph-name="_489" unicode="" horiz-adv-x="1280" d="M953 1158l-114 -328l117 -21q165 451 165 518q0 56 -38 56q-57 0 -130 -225zM654 471l33 -88q37 42 71 67l-33 5.5t-38.5 7t-32.5 8.5zM362 1367q0 -98 159 -521q17 10 49 10q15 0 75 -5l-121 351q-75 220 -123 220q-19 0 -29 -17.5t-10 -37.5zM283 608q0 -36 51.5 -119 t117.5 -153t100 -70q14 0 25.5 13t11.5 27q0 24 -32 102q-13 32 -32 72t-47.5 89t-61.5 81t-62 32q-20 0 -45.5 -27t-25.5 -47zM125 273q0 -41 25 -104q59 -145 183.5 -227t281.5 -82q227 0 382 170q152 169 152 427q0 43 -1 67t-11.5 62t-30.5 56q-56 49 -211.5 75.5 t-270.5 26.5q-37 0 -49 -11q-12 -5 -12 -35q0 -34 21.5 -60t55.5 -40t77.5 -23.5t87.5 -11.5t85 -4t70 0h23q24 0 40 -19q15 -19 19 -55q-28 -28 -96 -54q-61 -22 -93 -46q-64 -46 -108.5 -114t-44.5 -137q0 -31 18.5 -88.5t18.5 -87.5l-3 -12q-4 -12 -4 -14 q-137 10 -146 216q-8 -2 -41 -2q2 -7 2 -21q0 -53 -40.5 -89.5t-94.5 -36.5q-82 0 -166.5 78t-84.5 159q0 34 33 67q52 -64 60 -76q77 -104 133 -104q12 0 26.5 8.5t14.5 20.5q0 34 -87.5 145t-116.5 111q-43 0 -70 -44.5t-27 -90.5zM11 264q0 101 42.5 163t136.5 88 q-28 74 -28 104q0 62 61 123t122 61q29 0 70 -15q-163 462 -163 567q0 80 41 130.5t119 50.5q131 0 325 -581q6 -17 8 -23q6 16 29 79.5t43.5 118.5t54 127.5t64.5 123t70.5 86.5t76.5 36q71 0 112 -49t41 -122q0 -108 -159 -550q61 -15 100.5 -46t58.5 -78t26 -93.5 t7 -110.5q0 -150 -47 -280t-132 -225t-211 -150t-278 -55q-111 0 -223 42q-149 57 -258 191.5t-109 286.5z" /> - <glyph glyph-name="_490" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_490" unicode="" horiz-adv-x="2048" d="M785 528h207q-14 -158 -98.5 -248.5t-214.5 -90.5q-162 0 -254.5 116t-92.5 316q0 194 93 311.5t233 117.5q148 0 232 -87t97 -247h-203q-5 64 -35.5 99t-81.5 35q-57 0 -88.5 -60.5t-31.5 -177.5q0 -48 5 -84t18 -69.5t40 -51.5t66 -18q95 0 109 139zM1497 528h206 q-14 -158 -98 -248.5t-214 -90.5q-162 0 -254.5 116t-92.5 316q0 194 93 311.5t233 117.5q148 0 232 -87t97 -247h-204q-4 64 -35 99t-81 35q-57 0 -88.5 -60.5t-31.5 -177.5q0 -48 5 -84t18 -69.5t39.5 -51.5t65.5 -18q49 0 76.5 38t33.5 101zM1856 647q0 207 -15.5 307 t-60.5 161q-6 8 -13.5 14t-21.5 15t-16 11q-86 63 -697 63q-625 0 -710 -63q-5 -4 -17.5 -11.5t-21 -14t-14.5 -14.5q-45 -60 -60 -159.5t-15 -308.5q0 -208 15 -307.5t60 -160.5q6 -8 15 -15t20.5 -14t17.5 -12q44 -33 239.5 -49t470.5 -16q610 0 697 65q5 4 17 11t20.5 14 t13.5 16q46 60 61 159t15 309zM2048 1408v-1536h-2048v1536h2048z" /> - <glyph glyph-name="_491" unicode="" + <glyph glyph-name="_491" unicode="" d="M992 912v-496q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v496q0 112 -80 192t-192 80h-272v-1152q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v1344q0 14 9 23t23 9h464q135 0 249 -66.5t180.5 -180.5t66.5 -249zM1376 1376v-880q0 -135 -66.5 -249t-180.5 -180.5 t-249 -66.5h-464q-14 0 -23 9t-9 23v960q0 14 9 23t23 9h160q14 0 23 -9t9 -23v-768h272q112 0 192 80t80 192v880q0 14 9 23t23 9h160q14 0 23 -9t9 -23z" /> - <glyph glyph-name="_492" unicode="" + <glyph glyph-name="_492" unicode="" d="M1311 694v-114q0 -24 -13.5 -38t-37.5 -14h-202q-24 0 -38 14t-14 38v114q0 24 14 38t38 14h202q24 0 37.5 -14t13.5 -38zM821 464v250q0 53 -32.5 85.5t-85.5 32.5h-133q-68 0 -96 -52q-28 52 -96 52h-130q-53 0 -85.5 -32.5t-32.5 -85.5v-250q0 -22 21 -22h55 q22 0 22 22v230q0 24 13.5 38t38.5 14h94q24 0 38 -14t14 -38v-230q0 -22 21 -22h54q22 0 22 22v230q0 24 14 38t38 14h97q24 0 37.5 -14t13.5 -38v-230q0 -22 22 -22h55q21 0 21 22zM1410 560v154q0 53 -33 85.5t-86 32.5h-264q-53 0 -86 -32.5t-33 -85.5v-410 q0 -21 22 -21h55q21 0 21 21v180q31 -42 94 -42h191q53 0 86 32.5t33 85.5zM1536 1176v-1072q0 -96 -68 -164t-164 -68h-1072q-96 0 -164 68t-68 164v1072q0 96 68 164t164 68h1072q96 0 164 -68t68 -164z" /> - <glyph glyph-name="_493" unicode="" + <glyph glyph-name="_493" unicode="" d="M915 450h-294l147 551zM1001 128h311l-324 1024h-440l-324 -1024h311l383 314zM1536 1120v-960q0 -118 -85 -203t-203 -85h-960q-118 0 -203 85t-85 203v960q0 118 85 203t203 85h960q118 0 203 -85t85 -203z" /> - <glyph glyph-name="_494" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_494" unicode="" horiz-adv-x="2048" d="M2048 641q0 -21 -13 -36.5t-33 -19.5l-205 -356q3 -9 3 -18q0 -20 -12.5 -35.5t-32.5 -19.5l-193 -337q3 -8 3 -16q0 -23 -16.5 -40t-40.5 -17q-25 0 -41 18h-400q-17 -20 -43 -20t-43 20h-399q-17 -20 -43 -20q-23 0 -40 16.5t-17 40.5q0 8 4 20l-193 335 q-20 4 -32.5 19.5t-12.5 35.5q0 9 3 18l-206 356q-20 5 -32.5 20.5t-12.5 35.5q0 21 13.5 36.5t33.5 19.5l199 344q0 1 -0.5 3t-0.5 3q0 36 34 51l209 363q-4 10 -4 18q0 24 17 40.5t40 16.5q26 0 44 -21h396q16 21 43 21t43 -21h398q18 21 44 21q23 0 40 -16.5t17 -40.5 q0 -6 -4 -18l207 -358q23 -1 39 -17.5t16 -38.5q0 -13 -7 -27l187 -324q19 -4 31.5 -19.5t12.5 -35.5zM1063 -158h389l-342 354h-143l-342 -354h360q18 16 39 16t39 -16zM112 654q1 -4 1 -13q0 -10 -2 -15l208 -360l15 -6l188 199v347l-187 194q-13 -8 -29 -10zM986 1438 @@ -1815,20 +1815,20 @@ h-388l190 -200l554 200h-280q-16 -16 -38 -16t-38 16zM1689 226q1 6 5 11l-64 68l-17 l-309 321l-157 -166v-221zM359 226h163v189l-168 -177q4 -8 5 -12zM358 1051q0 -1 0.5 -2t0.5 -2q0 -16 -8 -29l171 -177v269zM552 1121v-311l153 -157l297 314l-223 236zM556 1425l-4 -8v-264l205 74l-191 201q-6 -2 -10 -3zM1447 1438h-16l-621 -224l213 -225zM1023 946 l-297 -315l311 -319l296 307zM688 634l-136 141v-284zM1038 270l-42 -44h85zM1374 618l238 -251l132 624l-3 5l-1 1zM1718 1018q-8 13 -8 29v2l-216 376q-5 1 -13 5l-437 -463l310 -327zM522 1142v223l-163 -282zM522 196h-163l163 -283v283zM1607 196l-48 -227l130 227h-82 zM1729 266l207 361q-2 10 -2 14q0 1 3 16l-171 296l-129 -612l77 -82q5 3 15 7z" /> - <glyph glyph-name="f210" unicode="" + <glyph glyph-name="f210" unicode="" d="M0 856q0 131 91.5 226.5t222.5 95.5h742l352 358v-1470q0 -132 -91.5 -227t-222.5 -95h-780q-131 0 -222.5 95t-91.5 227v790zM1232 102l-176 180v425q0 46 -32 79t-78 33h-484q-46 0 -78 -33t-32 -79v-492q0 -46 32.5 -79.5t77.5 -33.5h770z" /> - <glyph glyph-name="_496" unicode="" + <glyph glyph-name="_496" unicode="" d="M934 1386q-317 -121 -556 -362.5t-358 -560.5q-20 89 -20 176q0 208 102.5 384.5t278.5 279t384 102.5q82 0 169 -19zM1203 1267q93 -65 164 -155q-389 -113 -674.5 -400.5t-396.5 -676.5q-93 72 -155 162q112 386 395 671t667 399zM470 -67q115 356 379.5 622t619.5 384 q40 -92 54 -195q-292 -120 -516 -345t-343 -518q-103 14 -194 52zM1536 -125q-193 50 -367 115q-135 -84 -290 -107q109 205 274 370.5t369 275.5q-21 -152 -101 -284q65 -175 115 -370z" /> - <glyph glyph-name="f212" unicode="" horiz-adv-x="2048" + <glyph glyph-name="f212" unicode="" horiz-adv-x="2048" d="M1893 1144l155 -1272q-131 0 -257 57q-200 91 -393 91q-226 0 -374 -148q-148 148 -374 148q-193 0 -393 -91q-128 -57 -252 -57h-5l155 1272q224 127 482 127q233 0 387 -106q154 106 387 106q258 0 482 -127zM1398 157q129 0 232 -28.5t260 -93.5l-124 1021 q-171 78 -368 78q-224 0 -374 -141q-150 141 -374 141q-197 0 -368 -78l-124 -1021q105 43 165.5 65t148.5 39.5t178 17.5q202 0 374 -108q172 108 374 108zM1438 191l-55 907q-211 -4 -359 -155q-152 155 -374 155q-176 0 -336 -66l-114 -941q124 51 228.5 76t221.5 25 q209 0 374 -102q172 107 374 102z" /> - <glyph glyph-name="_498" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_498" unicode="" horiz-adv-x="2048" d="M1500 165v733q0 21 -15 36t-35 15h-93q-20 0 -35 -15t-15 -36v-733q0 -20 15 -35t35 -15h93q20 0 35 15t15 35zM1216 165v531q0 20 -15 35t-35 15h-101q-20 0 -35 -15t-15 -35v-531q0 -20 15 -35t35 -15h101q20 0 35 15t15 35zM924 165v429q0 20 -15 35t-35 15h-101 q-20 0 -35 -15t-15 -35v-429q0 -20 15 -35t35 -15h101q20 0 35 15t15 35zM632 165v362q0 20 -15 35t-35 15h-101q-20 0 -35 -15t-15 -35v-362q0 -20 15 -35t35 -15h101q20 0 35 15t15 35zM2048 311q0 -166 -118 -284t-284 -118h-1244q-166 0 -284 118t-118 284 q0 116 63 214.5t168 148.5q-10 34 -10 73q0 113 80.5 193.5t193.5 80.5q102 0 180 -67q45 183 194 300t338 117q149 0 275 -73.5t199.5 -199.5t73.5 -275q0 -66 -14 -122q135 -33 221 -142.5t86 -247.5z" /> - <glyph glyph-name="_499" unicode="" + <glyph glyph-name="_499" unicode="" d="M0 1536h1536v-1392l-776 -338l-760 338v1392zM1436 209v926h-1336v-926l661 -294zM1436 1235v201h-1336v-201h1336zM181 937v-115h-37v115h37zM181 789v-115h-37v115h37zM181 641v-115h-37v115h37zM181 493v-115h-37v115h37zM181 345v-115h-37v115h37zM207 202l15 34 l105 -47l-15 -33zM343 142l15 34l105 -46l-15 -34zM478 82l15 34l105 -46l-15 -34zM614 23l15 33l104 -46l-15 -34zM797 10l105 46l15 -33l-105 -47zM932 70l105 46l15 -34l-105 -46zM1068 130l105 46l15 -34l-105 -46zM1203 189l105 47l15 -34l-105 -46zM259 1389v-36h-114 v36h114zM421 1389v-36h-115v36h115zM583 1389v-36h-115v36h115zM744 1389v-36h-114v36h114zM906 1389v-36h-114v36h114zM1068 1389v-36h-115v36h115zM1230 1389v-36h-115v36h115zM1391 1389v-36h-114v36h114zM181 1049v-79h-37v115h115v-36h-78zM421 1085v-36h-115v36h115z @@ -1836,144 +1836,144 @@ M583 1085v-36h-115v36h115zM744 1085v-36h-114v36h114zM906 1085v-36h-114v36h114zM1 v115h37v-115h-37zM1355 230v115h37v-115h-37zM760 265q-129 0 -221 91.5t-92 221.5q0 129 92 221t221 92q130 0 221.5 -92t91.5 -221q0 -130 -91.5 -221.5t-221.5 -91.5zM595 646q0 -36 19.5 -56.5t49.5 -25t64 -7t64 -2t49.5 -9t19.5 -30.5q0 -49 -112 -49q-97 0 -123 51 h-3l-31 -63q67 -42 162 -42q29 0 56.5 5t55.5 16t45.5 33t17.5 53q0 46 -27.5 69.5t-67.5 27t-79.5 3t-67 5t-27.5 25.5q0 21 20.5 33t40.5 15t41 3q34 0 70.5 -11t51.5 -34h3l30 58q-3 1 -21 8.5t-22.5 9t-19.5 7t-22 7t-20 4.5t-24 4t-23 1q-29 0 -56.5 -5t-54 -16.5 t-43 -34t-16.5 -53.5z" /> - <glyph glyph-name="_500" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_500" unicode="" horiz-adv-x="2048" d="M863 504q0 112 -79.5 191.5t-191.5 79.5t-191 -79.5t-79 -191.5t79 -191t191 -79t191.5 79t79.5 191zM1726 505q0 112 -79 191t-191 79t-191.5 -79t-79.5 -191q0 -113 79.5 -192t191.5 -79t191 79.5t79 191.5zM2048 1314v-1348q0 -44 -31.5 -75.5t-76.5 -31.5h-1832 q-45 0 -76.5 31.5t-31.5 75.5v1348q0 44 31.5 75.5t76.5 31.5h431q44 0 76 -31.5t32 -75.5v-161h754v161q0 44 32 75.5t76 31.5h431q45 0 76.5 -31.5t31.5 -75.5z" /> - <glyph glyph-name="_501" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_501" unicode="" horiz-adv-x="2048" d="M1430 953zM1690 749q148 0 253 -98.5t105 -244.5q0 -157 -109 -261.5t-267 -104.5q-85 0 -162 27.5t-138 73.5t-118 106t-109 126t-103.5 132.5t-108.5 126.5t-117 106t-136 73.5t-159 27.5q-154 0 -251.5 -91.5t-97.5 -244.5q0 -157 104 -250t263 -93q100 0 208 37.5 t193 98.5q5 4 21 18.5t30 24t22 9.5q14 0 24.5 -10.5t10.5 -24.5q0 -24 -60 -77q-101 -88 -234.5 -142t-260.5 -54q-133 0 -245.5 58t-180 165t-67.5 241q0 205 141.5 341t347.5 136q120 0 226.5 -43.5t185.5 -113t151.5 -153t139 -167.5t133.5 -153.5t149.5 -113 t172.5 -43.5q102 0 168.5 61.5t66.5 162.5q0 95 -64.5 159t-159.5 64q-30 0 -81.5 -18.5t-68.5 -18.5q-20 0 -35.5 15t-15.5 35q0 18 8.5 57t8.5 59q0 159 -107.5 263t-266.5 104q-58 0 -111.5 -18.5t-84 -40.5t-55.5 -40.5t-33 -18.5q-15 0 -25.5 10.5t-10.5 25.5 q0 19 25 46q59 67 147 103.5t182 36.5q191 0 318 -125.5t127 -315.5q0 -37 -4 -66q57 15 115 15z" /> - <glyph glyph-name="_502" unicode="" horiz-adv-x="1664" + <glyph glyph-name="_502" unicode="" horiz-adv-x="1664" d="M1216 832q0 26 -19 45t-45 19h-128v128q0 26 -19 45t-45 19t-45 -19t-19 -45v-128h-128q-26 0 -45 -19t-19 -45t19 -45t45 -19h128v-128q0 -26 19 -45t45 -19t45 19t19 45v128h128q26 0 45 19t19 45zM640 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5 t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1536 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1664 1088v-512q0 -24 -16 -42.5t-41 -21.5l-1044 -122q1 -7 4.5 -21.5t6 -26.5t2.5 -22q0 -16 -24 -64h920 q26 0 45 -19t19 -45t-19 -45t-45 -19h-1024q-26 0 -45 19t-19 45q0 14 11 39.5t29.5 59.5t20.5 38l-177 823h-204q-26 0 -45 19t-19 45t19 45t45 19h256q16 0 28.5 -6.5t20 -15.5t13 -24.5t7.5 -26.5t5.5 -29.5t4.5 -25.5h1201q26 0 45 -19t19 -45z" /> - <glyph glyph-name="_503" unicode="" horiz-adv-x="1664" + <glyph glyph-name="_503" unicode="" horiz-adv-x="1664" d="M1280 832q0 26 -19 45t-45 19t-45 -19l-147 -146v293q0 26 -19 45t-45 19t-45 -19t-19 -45v-293l-147 146q-19 19 -45 19t-45 -19t-19 -45t19 -45l256 -256q19 -19 45 -19t45 19l256 256q19 19 19 45zM640 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5 t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1536 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1664 1088v-512q0 -24 -16 -42.5t-41 -21.5l-1044 -122q1 -7 4.5 -21.5t6 -26.5t2.5 -22q0 -16 -24 -64h920 q26 0 45 -19t19 -45t-19 -45t-45 -19h-1024q-26 0 -45 19t-19 45q0 14 11 39.5t29.5 59.5t20.5 38l-177 823h-204q-26 0 -45 19t-19 45t19 45t45 19h256q16 0 28.5 -6.5t20 -15.5t13 -24.5t7.5 -26.5t5.5 -29.5t4.5 -25.5h1201q26 0 45 -19t19 -45z" /> - <glyph glyph-name="_504" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_504" unicode="" horiz-adv-x="2048" d="M212 768l623 -665l-300 665h-323zM1024 -4l349 772h-698zM538 896l204 384h-262l-288 -384h346zM1213 103l623 665h-323zM683 896h682l-204 384h-274zM1510 896h346l-288 384h-262zM1651 1382l384 -512q14 -18 13 -41.5t-17 -40.5l-960 -1024q-18 -20 -47 -20t-47 20 l-960 1024q-16 17 -17 40.5t13 41.5l384 512q18 26 51 26h1152q33 0 51 -26z" /> - <glyph glyph-name="_505" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_505" unicode="" horiz-adv-x="2048" d="M1811 -19q19 19 45 19t45 -19l128 -128l-90 -90l-83 83l-83 -83q-18 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83 q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-128 128l90 90l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83 q19 19 45 19t45 -19l83 -83zM237 19q-19 -19 -45 -19t-45 19l-128 128l90 90l83 -82l83 82q19 19 45 19t45 -19l83 -82l64 64v293l-210 314q-17 26 -7 56.5t40 40.5l177 58v299h128v128h256v128h256v-128h256v-128h128v-299l177 -58q30 -10 40 -40.5t-7 -56.5l-210 -314 v-293l19 18q19 19 45 19t45 -19l83 -82l83 82q19 19 45 19t45 -19l128 -128l-90 -90l-83 83l-83 -83q-18 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83 q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83zM640 1152v-128l384 128l384 -128v128h-128v128h-512v-128h-128z" /> - <glyph glyph-name="_506" unicode="" + <glyph glyph-name="_506" unicode="" d="M576 0l96 448l-96 128l-128 64zM832 0l128 640l-128 -64l-96 -128zM992 1010q-2 4 -4 6q-10 8 -96 8q-70 0 -167 -19q-7 -2 -21 -2t-21 2q-97 19 -167 19q-86 0 -96 -8q-2 -2 -4 -6q2 -18 4 -27q2 -3 7.5 -6.5t7.5 -10.5q2 -4 7.5 -20.5t7 -20.5t7.5 -17t8.5 -17t9 -14 t12 -13.5t14 -9.5t17.5 -8t20.5 -4t24.5 -2q36 0 59 12.5t32.5 30t14.5 34.5t11.5 29.5t17.5 12.5h12q11 0 17.5 -12.5t11.5 -29.5t14.5 -34.5t32.5 -30t59 -12.5q13 0 24.5 2t20.5 4t17.5 8t14 9.5t12 13.5t9 14t8.5 17t7.5 17t7 20.5t7.5 20.5q2 7 7.5 10.5t7.5 6.5 q2 9 4 27zM1408 131q0 -121 -73 -190t-194 -69h-874q-121 0 -194 69t-73 190q0 61 4.5 118t19 125.5t37.5 123.5t63.5 103.5t93.5 74.5l-90 220h214q-22 64 -22 128q0 12 2 32q-194 40 -194 96q0 57 210 99q17 62 51.5 134t70.5 114q32 37 76 37q30 0 84 -31t84 -31t84 31 t84 31q44 0 76 -37q36 -42 70.5 -114t51.5 -134q210 -42 210 -99q0 -56 -194 -96q7 -81 -20 -160h214l-82 -225q63 -33 107.5 -96.5t65.5 -143.5t29 -151.5t8 -148.5z" /> - <glyph glyph-name="_507" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_507" unicode="" horiz-adv-x="2304" d="M2301 500q12 -103 -22 -198.5t-99 -163.5t-158.5 -106t-196.5 -31q-161 11 -279.5 125t-134.5 274q-12 111 27.5 210.5t118.5 170.5l-71 107q-96 -80 -151 -194t-55 -244q0 -27 -18.5 -46.5t-45.5 -19.5h-256h-69q-23 -164 -149 -274t-294 -110q-185 0 -316.5 131.5 t-131.5 316.5t131.5 316.5t316.5 131.5q76 0 152 -27l24 45q-123 110 -304 110h-64q-26 0 -45 19t-19 45t19 45t45 19h128q78 0 145 -13.5t116.5 -38.5t71.5 -39.5t51 -36.5h512h115l-85 128h-222q-30 0 -49 22.5t-14 52.5q4 23 23 38t43 15h253q33 0 53 -28l70 -105 l114 114q19 19 46 19h101q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-179l115 -172q131 63 275 36q143 -26 244 -134.5t118 -253.5zM448 128q115 0 203 72.5t111 183.5h-314q-35 0 -55 31q-18 32 -1 63l147 277q-47 13 -91 13q-132 0 -226 -94t-94 -226t94 -226 t226 -94zM1856 128q132 0 226 94t94 226t-94 226t-226 94q-60 0 -121 -24l174 -260q15 -23 10 -49t-27 -40q-15 -11 -36 -11q-35 0 -53 29l-174 260q-93 -95 -93 -225q0 -132 94 -226t226 -94z" /> - <glyph glyph-name="_508" unicode="" + <glyph glyph-name="_508" unicode="" d="M1408 0q0 -63 -61.5 -113.5t-164 -81t-225 -46t-253.5 -15.5t-253.5 15.5t-225 46t-164 81t-61.5 113.5q0 49 33 88.5t91 66.5t118 44.5t131 29.5q26 5 48 -10.5t26 -41.5q5 -26 -10.5 -48t-41.5 -26q-58 -10 -106 -23.5t-76.5 -25.5t-48.5 -23.5t-27.5 -19.5t-8.5 -12 q3 -11 27 -26.5t73 -33t114 -32.5t160.5 -25t201.5 -10t201.5 10t160.5 25t114 33t73 33.5t27 27.5q-1 4 -8.5 11t-27.5 19t-48.5 23.5t-76.5 25t-106 23.5q-26 4 -41.5 26t-10.5 48q4 26 26 41.5t48 10.5q71 -12 131 -29.5t118 -44.5t91 -66.5t33 -88.5zM1024 896v-384 q0 -26 -19 -45t-45 -19h-64v-384q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v384h-64q-26 0 -45 19t-19 45v384q0 53 37.5 90.5t90.5 37.5h384q53 0 90.5 -37.5t37.5 -90.5zM928 1280q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5 t158.5 -65.5t65.5 -158.5z" /> - <glyph glyph-name="_509" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_509" unicode="" horiz-adv-x="1792" d="M1280 512h305q-5 -6 -10 -10.5t-9 -7.5l-3 -4l-623 -600q-18 -18 -44 -18t-44 18l-624 602q-5 2 -21 20h369q22 0 39.5 13.5t22.5 34.5l70 281l190 -667q6 -20 23 -33t39 -13q21 0 38 13t23 33l146 485l56 -112q18 -35 57 -35zM1792 940q0 -145 -103 -300h-369l-111 221 q-8 17 -25.5 27t-36.5 8q-45 -5 -56 -46l-129 -430l-196 686q-6 20 -23.5 33t-39.5 13t-39 -13.5t-22 -34.5l-116 -464h-423q-103 155 -103 300q0 220 127 344t351 124q62 0 126.5 -21.5t120 -58t95.5 -68.5t76 -68q36 36 76 68t95.5 68.5t120 58t126.5 21.5q224 0 351 -124 t127 -344z" /> - <glyph glyph-name="venus" unicode="" horiz-adv-x="1280" + <glyph glyph-name="venus" unicode="" horiz-adv-x="1280" d="M1152 960q0 -221 -147.5 -384.5t-364.5 -187.5v-260h224q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-224v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-224q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v260q-150 16 -271.5 103t-186 224t-52.5 292 q11 134 80.5 249t182 188t245.5 88q170 19 319 -54t236 -212t87 -306zM128 960q0 -185 131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5z" /> - <glyph glyph-name="_511" unicode="" + <glyph glyph-name="_511" unicode="" d="M1472 1408q26 0 45 -19t19 -45v-416q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v262l-382 -383q126 -156 126 -359q0 -117 -45.5 -223.5t-123 -184t-184 -123t-223.5 -45.5t-223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5 q203 0 359 -126l382 382h-261q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h416zM576 0q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> - <glyph glyph-name="_512" unicode="" horiz-adv-x="1280" + <glyph glyph-name="_512" unicode="" horiz-adv-x="1280" d="M830 1220q145 -72 233.5 -210.5t88.5 -305.5q0 -221 -147.5 -384.5t-364.5 -187.5v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-217 24 -364.5 187.5 t-147.5 384.5q0 167 88.5 305.5t233.5 210.5q-165 96 -228 273q-6 16 3.5 29.5t26.5 13.5h69q21 0 29 -20q44 -106 140 -171t214 -65t214 65t140 171q8 20 37 20h61q17 0 26.5 -13.5t3.5 -29.5q-63 -177 -228 -273zM576 256q185 0 316.5 131.5t131.5 316.5t-131.5 316.5 t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> - <glyph glyph-name="_513" unicode="" + <glyph glyph-name="_513" unicode="" d="M1024 1504q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q126 -158 126 -359q0 -221 -147.5 -384.5t-364.5 -187.5v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64 q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-149 16 -270.5 103t-186.5 223.5t-53 291.5q16 204 160 353.5t347 172.5q118 14 228 -19t198 -103l255 254h-134q-14 0 -23 9t-9 23v64zM576 256q185 0 316.5 131.5t131.5 316.5t-131.5 316.5 t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> - <glyph glyph-name="_514" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_514" unicode="" horiz-adv-x="1792" d="M1280 1504q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q126 -158 126 -359q0 -221 -147.5 -384.5t-364.5 -187.5v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64 q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-217 24 -364.5 187.5t-147.5 384.5q0 201 126 359l-52 53l-101 -111q-9 -10 -22 -10.5t-23 7.5l-48 44q-10 8 -10.5 21.5t8.5 23.5l105 115l-111 112v-134q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9 t-9 23v288q0 26 19 45t45 19h288q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-133l106 -107l86 94q9 10 22 10.5t23 -7.5l48 -44q10 -8 10.5 -21.5t-8.5 -23.5l-90 -99l57 -56q158 126 359 126t359 -126l255 254h-134q-14 0 -23 9t-9 23v64zM832 256q185 0 316.5 131.5 t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> - <glyph glyph-name="_515" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_515" unicode="" horiz-adv-x="1792" d="M1790 1007q12 -155 -52.5 -292t-186 -224t-271.5 -103v-260h224q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-224v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-512v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-224q-14 0 -23 9t-9 23v64q0 14 9 23 t23 9h224v260q-150 16 -271.5 103t-186 224t-52.5 292q17 206 164.5 356.5t352.5 169.5q206 21 377 -94q171 115 377 94q205 -19 352.5 -169.5t164.5 -356.5zM896 647q128 131 128 313t-128 313q-128 -131 -128 -313t128 -313zM576 512q115 0 218 57q-154 165 -154 391 q0 224 154 391q-103 57 -218 57q-185 0 -316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5zM1152 128v260q-137 15 -256 94q-119 -79 -256 -94v-260h512zM1216 512q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5q-115 0 -218 -57q154 -167 154 -391 q0 -226 -154 -391q103 -57 218 -57z" /> - <glyph glyph-name="_516" unicode="" horiz-adv-x="1920" + <glyph glyph-name="_516" unicode="" horiz-adv-x="1920" d="M1536 1120q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q76 -95 107.5 -214t9.5 -247q-31 -182 -166 -312t-318 -156q-210 -29 -384.5 80t-241.5 300q-117 6 -221 57.5t-177.5 133t-113.5 192.5t-32 230 q9 135 78 252t182 191.5t248 89.5q118 14 227.5 -19t198.5 -103l255 254h-134q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q59 -74 93 -169q182 -9 328 -124l255 254h-134q-14 0 -23 9 t-9 23v64zM1024 704q0 20 -4 58q-162 -25 -271 -150t-109 -292q0 -20 4 -58q162 25 271 150t109 292zM128 704q0 -168 111 -294t276 -149q-3 29 -3 59q0 210 135 369.5t338 196.5q-53 120 -163.5 193t-245.5 73q-185 0 -316.5 -131.5t-131.5 -316.5zM1088 -128 q185 0 316.5 131.5t131.5 316.5q0 168 -111 294t-276 149q3 -28 3 -59q0 -210 -135 -369.5t-338 -196.5q53 -120 163.5 -193t245.5 -73z" /> - <glyph glyph-name="_517" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_517" unicode="" horiz-adv-x="2048" d="M1664 1504q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q76 -95 107.5 -214t9.5 -247q-32 -180 -164.5 -310t-313.5 -157q-223 -34 -409 90q-117 -78 -256 -93v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23 t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-155 17 -279.5 109.5t-187 237.5t-39.5 307q25 187 159.5 322.5t320.5 164.5q224 34 410 -90q146 97 320 97q201 0 359 -126l255 254h-134q-14 0 -23 9 t-9 23v64zM896 391q128 131 128 313t-128 313q-128 -131 -128 -313t128 -313zM128 704q0 -185 131.5 -316.5t316.5 -131.5q117 0 218 57q-154 167 -154 391t154 391q-101 57 -218 57q-185 0 -316.5 -131.5t-131.5 -316.5zM1216 256q185 0 316.5 131.5t131.5 316.5 t-131.5 316.5t-316.5 131.5q-117 0 -218 -57q154 -167 154 -391t-154 -391q101 -57 218 -57z" /> - <glyph glyph-name="_518" unicode="" + <glyph glyph-name="_518" unicode="" d="M1472 1408q26 0 45 -19t19 -45v-416q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v262l-213 -214l140 -140q9 -10 9 -23t-9 -22l-46 -46q-9 -9 -22 -9t-23 9l-140 141l-78 -79q126 -156 126 -359q0 -117 -45.5 -223.5t-123 -184t-184 -123t-223.5 -45.5t-223.5 45.5 t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5q203 0 359 -126l78 78l-172 172q-9 10 -9 23t9 22l46 46q9 9 22 9t23 -9l172 -172l213 213h-261q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h416zM576 0q185 0 316.5 131.5t131.5 316.5t-131.5 316.5 t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> - <glyph glyph-name="_519" unicode="" horiz-adv-x="1280" + <glyph glyph-name="_519" unicode="" horiz-adv-x="1280" d="M640 892q217 -24 364.5 -187.5t147.5 -384.5q0 -167 -87 -306t-236 -212t-319 -54q-133 15 -245.5 88t-182 188t-80.5 249q-12 155 52.5 292t186 224t271.5 103v132h-160q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h160v165l-92 -92q-10 -9 -23 -9t-22 9l-46 46q-9 9 -9 22 t9 23l202 201q19 19 45 19t45 -19l202 -201q9 -10 9 -23t-9 -22l-46 -46q-9 -9 -22 -9t-23 9l-92 92v-165h160q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-160v-132zM576 -128q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5 t131.5 -316.5t316.5 -131.5z" /> - <glyph glyph-name="_520" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_520" unicode="" horiz-adv-x="2048" d="M1901 621q19 -19 19 -45t-19 -45l-294 -294q-9 -10 -22.5 -10t-22.5 10l-45 45q-10 9 -10 22.5t10 22.5l185 185h-294v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-132q-24 -217 -187.5 -364.5t-384.5 -147.5q-167 0 -306 87t-212 236t-54 319q15 133 88 245.5 t188 182t249 80.5q155 12 292 -52.5t224 -186t103 -271.5h132v224q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-224h294l-185 185q-10 9 -10 22.5t10 22.5l45 45q9 10 22.5 10t22.5 -10zM576 128q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5 t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> - <glyph glyph-name="_521" unicode="" horiz-adv-x="1280" + <glyph glyph-name="_521" unicode="" horiz-adv-x="1280" d="M1152 960q0 -221 -147.5 -384.5t-364.5 -187.5v-612q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v612q-217 24 -364.5 187.5t-147.5 384.5q0 117 45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5zM576 512q185 0 316.5 131.5 t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> - <glyph glyph-name="_522" unicode="" horiz-adv-x="1280" + <glyph glyph-name="_522" unicode="" horiz-adv-x="1280" d="M1024 576q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1152 576q0 -117 -45.5 -223.5t-123 -184t-184 -123t-223.5 -45.5t-223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123 t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5z" /> - <glyph glyph-name="_523" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_523" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="_524" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_524" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="_525" unicode="" + <glyph glyph-name="_525" unicode="" d="M1451 1408q35 0 60 -25t25 -60v-1366q0 -35 -25 -60t-60 -25h-391v595h199l30 232h-229v148q0 56 23.5 84t91.5 28l122 1v207q-63 9 -178 9q-136 0 -217.5 -80t-81.5 -226v-171h-200v-232h200v-595h-735q-35 0 -60 25t-25 60v1366q0 35 25 60t60 25h1366z" /> - <glyph glyph-name="_526" unicode="" horiz-adv-x="1280" + <glyph glyph-name="_526" unicode="" horiz-adv-x="1280" d="M0 939q0 108 37.5 203.5t103.5 166.5t152 123t185 78t202 26q158 0 294 -66.5t221 -193.5t85 -287q0 -96 -19 -188t-60 -177t-100 -149.5t-145 -103t-189 -38.5q-68 0 -135 32t-96 88q-10 -39 -28 -112.5t-23.5 -95t-20.5 -71t-26 -71t-32 -62.5t-46 -77.5t-62 -86.5 l-14 -5l-9 10q-15 157 -15 188q0 92 21.5 206.5t66.5 287.5t52 203q-32 65 -32 169q0 83 52 156t132 73q61 0 95 -40.5t34 -102.5q0 -66 -44 -191t-44 -187q0 -63 45 -104.5t109 -41.5q55 0 102 25t78.5 68t56 95t38 110.5t20 111t6.5 99.5q0 173 -109.5 269.5t-285.5 96.5 q-200 0 -334 -129.5t-134 -328.5q0 -44 12.5 -85t27 -65t27 -45.5t12.5 -30.5q0 -28 -15 -73t-37 -45q-2 0 -17 3q-51 15 -90.5 56t-61 94.5t-32.5 108t-11 106.5z" /> - <glyph glyph-name="_527" unicode="" + <glyph glyph-name="_527" unicode="" d="M985 562q13 0 97.5 -44t89.5 -53q2 -5 2 -15q0 -33 -17 -76q-16 -39 -71 -65.5t-102 -26.5q-57 0 -190 62q-98 45 -170 118t-148 185q-72 107 -71 194v8q3 91 74 158q24 22 52 22q6 0 18 -1.5t19 -1.5q19 0 26.5 -6.5t15.5 -27.5q8 -20 33 -88t25 -75q0 -21 -34.5 -57.5 t-34.5 -46.5q0 -7 5 -15q34 -73 102 -137q56 -53 151 -101q12 -7 22 -7q15 0 54 48.5t52 48.5zM782 32q127 0 243.5 50t200.5 134t134 200.5t50 243.5t-50 243.5t-134 200.5t-200.5 134t-243.5 50t-243.5 -50t-200.5 -134t-134 -200.5t-50 -243.5q0 -203 120 -368l-79 -233 l242 77q158 -104 345 -104zM782 1414q153 0 292.5 -60t240.5 -161t161 -240.5t60 -292.5t-60 -292.5t-161 -240.5t-240.5 -161t-292.5 -60q-195 0 -365 94l-417 -134l136 405q-108 178 -108 389q0 153 60 292.5t161 240.5t240.5 161t292.5 60z" /> - <glyph glyph-name="_528" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_528" unicode="" horiz-adv-x="1792" d="M128 128h1024v128h-1024v-128zM128 640h1024v128h-1024v-128zM1696 192q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM128 1152h1024v128h-1024v-128zM1696 704q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1696 1216 q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1792 384v-384h-1792v384h1792zM1792 896v-384h-1792v384h1792zM1792 1408v-384h-1792v384h1792z" /> - <glyph glyph-name="_529" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_529" unicode="" horiz-adv-x="2048" d="M704 640q-159 0 -271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5t-112.5 -271.5t-271.5 -112.5zM1664 512h352q13 0 22.5 -9.5t9.5 -22.5v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-352v-352q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5 t-9.5 22.5v352h-352q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h352v352q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5v-352zM928 288q0 -52 38 -90t90 -38h256v-238q-68 -50 -171 -50h-874q-121 0 -194 69t-73 190q0 53 3.5 103.5t14 109t26.5 108.5 t43 97.5t62 81t85.5 53.5t111.5 20q19 0 39 -17q79 -61 154.5 -91.5t164.5 -30.5t164.5 30.5t154.5 91.5q20 17 39 17q132 0 217 -96h-223q-52 0 -90 -38t-38 -90v-192z" /> - <glyph glyph-name="_530" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_530" unicode="" horiz-adv-x="2048" d="M704 640q-159 0 -271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5t-112.5 -271.5t-271.5 -112.5zM1781 320l249 -249q9 -9 9 -23q0 -13 -9 -22l-136 -136q-9 -9 -22 -9q-14 0 -23 9l-249 249l-249 -249q-9 -9 -23 -9q-13 0 -22 9l-136 136 q-9 9 -9 22q0 14 9 23l249 249l-249 249q-9 9 -9 23q0 13 9 22l136 136q9 9 22 9q14 0 23 -9l249 -249l249 249q9 9 23 9q13 0 22 -9l136 -136q9 -9 9 -22q0 -14 -9 -23zM1283 320l-181 -181q-37 -37 -37 -91q0 -53 37 -90l83 -83q-21 -3 -44 -3h-874q-121 0 -194 69 t-73 190q0 53 3.5 103.5t14 109t26.5 108.5t43 97.5t62 81t85.5 53.5t111.5 20q19 0 39 -17q154 -122 319 -122t319 122q20 17 39 17q28 0 57 -6q-28 -27 -41 -50t-13 -56q0 -54 37 -91z" /> - <glyph glyph-name="_531" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_531" unicode="" horiz-adv-x="2048" d="M256 512h1728q26 0 45 -19t19 -45v-448h-256v256h-1536v-256h-256v1216q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-704zM832 832q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM2048 576v64q0 159 -112.5 271.5t-271.5 112.5h-704 q-26 0 -45 -19t-19 -45v-384h1152z" /> - <glyph glyph-name="_532" unicode="" + <glyph glyph-name="_532" unicode="" d="M1536 1536l-192 -448h192v-192h-274l-55 -128h329v-192h-411l-357 -832l-357 832h-411v192h329l-55 128h-274v192h192l-192 448h256l323 -768h378l323 768h256zM768 320l108 256h-216z" /> - <glyph glyph-name="_533" unicode="" + <glyph glyph-name="_533" unicode="" d="M1088 1536q185 0 316.5 -93.5t131.5 -226.5v-896q0 -130 -125.5 -222t-305.5 -97l213 -202q16 -15 8 -35t-30 -20h-1056q-22 0 -30 20t8 35l213 202q-180 5 -305.5 97t-125.5 222v896q0 133 131.5 226.5t316.5 93.5h640zM768 192q80 0 136 56t56 136t-56 136t-136 56 t-136 -56t-56 -136t56 -136t136 -56zM1344 768v512h-1152v-512h1152z" /> - <glyph glyph-name="_534" unicode="" + <glyph glyph-name="_534" unicode="" d="M1088 1536q185 0 316.5 -93.5t131.5 -226.5v-896q0 -130 -125.5 -222t-305.5 -97l213 -202q16 -15 8 -35t-30 -20h-1056q-22 0 -30 20t8 35l213 202q-180 5 -305.5 97t-125.5 222v896q0 133 131.5 226.5t316.5 93.5h640zM288 224q66 0 113 47t47 113t-47 113t-113 47 t-113 -47t-47 -113t47 -113t113 -47zM704 768v512h-544v-512h544zM1248 224q66 0 113 47t47 113t-47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47zM1408 768v512h-576v-512h576z" /> - <glyph glyph-name="_535" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_535" unicode="" horiz-adv-x="1792" d="M597 1115v-1173q0 -25 -12.5 -42.5t-36.5 -17.5q-17 0 -33 8l-465 233q-21 10 -35.5 33.5t-14.5 46.5v1140q0 20 10 34t29 14q14 0 44 -15l511 -256q3 -3 3 -5zM661 1014l534 -866l-534 266v600zM1792 996v-1054q0 -25 -14 -40.5t-38 -15.5t-47 13l-441 220zM1789 1116 q0 -3 -256.5 -419.5t-300.5 -487.5l-390 634l324 527q17 28 52 28q14 0 26 -6l541 -270q4 -2 4 -6z" /> - <glyph glyph-name="_536" unicode="" + <glyph glyph-name="_536" unicode="" d="M809 532l266 499h-112l-157 -312q-24 -48 -44 -92l-42 92l-155 312h-120l263 -493v-324h101v318zM1536 1408v-1536h-1536v1536h1536z" /> - <glyph glyph-name="_537" unicode="" horiz-adv-x="2296" + <glyph glyph-name="_537" unicode="" horiz-adv-x="2296" d="M478 -139q-8 -16 -27 -34.5t-37 -25.5q-25 -9 -51.5 3.5t-28.5 31.5q-1 22 40 55t68 38q23 4 34 -21.5t2 -46.5zM1819 -139q7 -16 26 -34.5t38 -25.5q25 -9 51.5 3.5t27.5 31.5q2 22 -39.5 55t-68.5 38q-22 4 -33 -21.5t-2 -46.5zM1867 -30q13 -27 56.5 -59.5t77.5 -41.5 q45 -13 82 4.5t37 50.5q0 46 -67.5 100.5t-115.5 59.5q-40 5 -63.5 -37.5t-6.5 -76.5zM428 -30q-13 -27 -56 -59.5t-77 -41.5q-45 -13 -82 4.5t-37 50.5q0 46 67.5 100.5t115.5 59.5q40 5 63 -37.5t6 -76.5zM1158 1094h1q-41 0 -76 -15q27 -8 44 -30.5t17 -49.5 q0 -35 -27 -60t-65 -25q-52 0 -80 43q-5 -23 -5 -42q0 -74 56 -126.5t135 -52.5q80 0 136 52.5t56 126.5t-56 126.5t-136 52.5zM1462 1312q-99 109 -220.5 131.5t-245.5 -44.5q27 60 82.5 96.5t118 39.5t121.5 -17t99.5 -74.5t44.5 -131.5zM2212 73q8 -11 -11 -42 @@ -1991,364 +1991,364 @@ l-10 -2.5t-12 -2l-12 -1.5t-13.5 -1t-13.5 -0.5q-106 -9 -163 11q-4 -17 -10 -26.5t- t-73 70q-41 12 -101.5 -14.5t-104.5 -80t-39 -107.5q35 -53 100 -93t119 -42q51 -2 94 28t53 79zM510 53q23 -63 27 -119q195 113 392 174q-98 52 -180.5 120t-179.5 165q-6 -4 -29 -13q0 -1 -1 -4t-1 -5q31 -18 22 -37q-12 -23 -56 -34q-10 -13 -29 -24h-1q-2 -83 1 -150 q19 -34 35 -73zM579 -113q532 -21 1145 0q-254 147 -428 196q-76 -35 -156 -57q-8 -3 -16 0q-65 21 -129 49q-208 -60 -416 -188h-1v-1q1 0 1 1zM1763 -67q4 54 28 120q14 38 33 71l-1 -1q3 77 3 153q-15 8 -30 25q-42 9 -56 33q-9 20 22 38q-2 4 -2 9q-16 4 -28 12 q-204 -190 -383 -284q198 -59 414 -176zM2155 -90q5 54 -39 107.5t-104 80t-102 14.5q-38 -11 -72.5 -70.5t-51.5 -129.5q0 -16 3 -30q10 -49 53 -79t94 -28q54 2 119 42t100 93z" /> - <glyph glyph-name="_538" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_538" unicode="" horiz-adv-x="2304" d="M1524 -25q0 -68 -48 -116t-116 -48t-116.5 48t-48.5 116t48.5 116.5t116.5 48.5t116 -48.5t48 -116.5zM775 -25q0 -68 -48.5 -116t-116.5 -48t-116 48t-48 116t48 116.5t116 48.5t116.5 -48.5t48.5 -116.5zM0 1469q57 -60 110.5 -104.5t121 -82t136 -63t166 -45.5 t200 -31.5t250 -18.5t304 -9.5t372.5 -2.5q139 0 244.5 -5t181 -16.5t124 -27.5t71 -39.5t24 -51.5t-19.5 -64t-56.5 -76.5t-89.5 -91t-116 -104.5t-139 -119q-185 -157 -286 -247q29 51 76.5 109t94 105.5t94.5 98.5t83 91.5t54 80.5t13 70t-45.5 55.5t-116.5 41t-204 23.5 t-304 5q-168 -2 -314 6t-256 23t-204.5 41t-159.5 51.5t-122.5 62.5t-91.5 66.5t-68 71.5t-50.5 69.5t-40 68t-36.5 59.5z" /> - <glyph glyph-name="_539" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_539" unicode="" horiz-adv-x="1792" d="M896 1472q-169 0 -323 -66t-265.5 -177.5t-177.5 -265.5t-66 -323t66 -323t177.5 -265.5t265.5 -177.5t323 -66t323 66t265.5 177.5t177.5 265.5t66 323t-66 323t-177.5 265.5t-265.5 177.5t-323 66zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348 t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM496 704q16 0 16 -16v-480q0 -16 -16 -16h-32q-16 0 -16 16v480q0 16 16 16h32zM896 640q53 0 90.5 -37.5t37.5 -90.5q0 -35 -17.5 -64t-46.5 -46v-114q0 -14 -9 -23 t-23 -9h-64q-14 0 -23 9t-9 23v114q-29 17 -46.5 46t-17.5 64q0 53 37.5 90.5t90.5 37.5zM896 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM544 928v-96 q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v96q0 93 65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5v-96q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v96q0 146 -103 249t-249 103t-249 -103t-103 -249zM1408 192v512q0 26 -19 45t-45 19h-896q-26 0 -45 -19t-19 -45v-512 q0 -26 19 -45t45 -19h896q26 0 45 19t19 45z" /> - <glyph glyph-name="_540" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_540" unicode="" horiz-adv-x="2304" d="M1920 1024v-768h-1664v768h1664zM2048 448h128v384h-128v288q0 14 -9 23t-23 9h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288zM2304 832v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113 v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160q53 0 90.5 -37.5t37.5 -90.5z" /> - <glyph glyph-name="_541" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_541" unicode="" horiz-adv-x="2304" d="M256 256v768h1280v-768h-1280zM2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9 h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" /> - <glyph glyph-name="_542" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_542" unicode="" horiz-adv-x="2304" d="M256 256v768h896v-768h-896zM2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9 h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" /> - <glyph glyph-name="_543" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_543" unicode="" horiz-adv-x="2304" d="M256 256v768h512v-768h-512zM2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9 h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" /> - <glyph glyph-name="_544" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_544" unicode="" horiz-adv-x="2304" d="M2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9h-1856q-14 0 -23 -9t-9 -23 v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" /> - <glyph glyph-name="_545" unicode="" horiz-adv-x="1280" + <glyph glyph-name="_545" unicode="" horiz-adv-x="1280" d="M1133 493q31 -30 14 -69q-17 -40 -59 -40h-382l201 -476q10 -25 0 -49t-34 -35l-177 -75q-25 -10 -49 0t-35 34l-191 452l-312 -312q-19 -19 -45 -19q-12 0 -24 5q-40 17 -40 59v1504q0 42 40 59q12 5 24 5q27 0 45 -19z" /> - <glyph glyph-name="_546" unicode="" horiz-adv-x="1024" + <glyph glyph-name="_546" unicode="" horiz-adv-x="1024" d="M832 1408q-320 0 -320 -224v-416h128v-128h-128v-544q0 -224 320 -224h64v-128h-64q-272 0 -384 146q-112 -146 -384 -146h-64v128h64q320 0 320 224v544h-128v128h128v416q0 224 -320 224h-64v128h64q272 0 384 -146q112 146 384 146h64v-128h-64z" /> - <glyph glyph-name="_547" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_547" unicode="" horiz-adv-x="2048" d="M2048 1152h-128v-1024h128v-384h-384v128h-1280v-128h-384v384h128v1024h-128v384h384v-128h1280v128h384v-384zM1792 1408v-128h128v128h-128zM128 1408v-128h128v128h-128zM256 -128v128h-128v-128h128zM1664 0v128h128v1024h-128v128h-1280v-128h-128v-1024h128v-128 h1280zM1920 -128v128h-128v-128h128zM1280 896h384v-768h-896v256h-384v768h896v-256zM512 512h640v512h-640v-512zM1536 256v512h-256v-384h-384v-128h640z" /> - <glyph glyph-name="_548" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_548" unicode="" horiz-adv-x="2304" d="M2304 768h-128v-640h128v-384h-384v128h-896v-128h-384v384h128v128h-384v-128h-384v384h128v640h-128v384h384v-128h896v128h384v-384h-128v-128h384v128h384v-384zM2048 1024v-128h128v128h-128zM1408 1408v-128h128v128h-128zM128 1408v-128h128v128h-128zM256 256 v128h-128v-128h128zM1536 384h-128v-128h128v128zM384 384h896v128h128v640h-128v128h-896v-128h-128v-640h128v-128zM896 -128v128h-128v-128h128zM2176 -128v128h-128v-128h128zM2048 128v640h-128v128h-384v-384h128v-384h-384v128h-384v-128h128v-128h896v128h128z" /> - <glyph glyph-name="_549" unicode="" + <glyph glyph-name="_549" unicode="" d="M1024 288v-416h-928q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h1344q40 0 68 -28t28 -68v-928h-416q-40 0 -68 -28t-28 -68zM1152 256h381q-15 -82 -65 -132l-184 -184q-50 -50 -132 -65v381z" /> - <glyph glyph-name="_550" unicode="" + <glyph glyph-name="_550" unicode="" d="M1400 256h-248v-248q29 10 41 22l185 185q12 12 22 41zM1120 384h288v896h-1280v-1280h896v288q0 40 28 68t68 28zM1536 1312v-1024q0 -40 -20 -88t-48 -76l-184 -184q-28 -28 -76 -48t-88 -20h-1024q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h1344q40 0 68 -28t28 -68 z" /> - <glyph glyph-name="_551" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_551" unicode="" horiz-adv-x="2304" d="M1951 538q0 -26 -15.5 -44.5t-38.5 -23.5q-8 -2 -18 -2h-153v140h153q10 0 18 -2q23 -5 38.5 -23.5t15.5 -44.5zM1933 751q0 -25 -15 -42t-38 -21q-3 -1 -15 -1h-139v129h139q3 0 8.5 -0.5t6.5 -0.5q23 -4 38 -21.5t15 -42.5zM728 587v308h-228v-308q0 -58 -38 -94.5 t-105 -36.5q-108 0 -229 59v-112q53 -15 121 -23t109 -9l42 -1q328 0 328 217zM1442 403v113q-99 -52 -200 -59q-108 -8 -169 41t-61 142t61 142t169 41q101 -7 200 -58v112q-48 12 -100 19.5t-80 9.5l-28 2q-127 6 -218.5 -14t-140.5 -60t-71 -88t-22 -106t22 -106t71 -88 t140.5 -60t218.5 -14q101 4 208 31zM2176 518q0 54 -43 88.5t-109 39.5v3q57 8 89 41.5t32 79.5q0 55 -41 88t-107 36q-3 0 -12 0.5t-14 0.5h-455v-510h491q74 0 121.5 36.5t47.5 96.5zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90 t90 38h2048q52 0 90 -38t38 -90z" /> - <glyph glyph-name="_552" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_552" unicode="" horiz-adv-x="2304" d="M858 295v693q-106 -41 -172 -135.5t-66 -211.5t66 -211.5t172 -134.5zM1362 641q0 117 -66 211.5t-172 135.5v-694q106 41 172 135.5t66 211.5zM1577 641q0 -159 -78.5 -294t-213.5 -213.5t-294 -78.5q-119 0 -227.5 46.5t-187 125t-125 187t-46.5 227.5q0 159 78.5 294 t213.5 213.5t294 78.5t294 -78.5t213.5 -213.5t78.5 -294zM1960 634q0 139 -55.5 261.5t-147.5 205.5t-213.5 131t-252.5 48h-301q-176 0 -323.5 -81t-235 -230t-87.5 -335q0 -171 87 -317.5t236 -231.5t323 -85h301q129 0 251.5 50.5t214.5 135t147.5 202.5t55.5 246z M2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" /> - <glyph glyph-name="_553" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_553" unicode="" horiz-adv-x="1792" d="M1664 -96v1088q0 13 -9.5 22.5t-22.5 9.5h-1088q-13 0 -22.5 -9.5t-9.5 -22.5v-1088q0 -13 9.5 -22.5t22.5 -9.5h1088q13 0 22.5 9.5t9.5 22.5zM1792 992v-1088q0 -66 -47 -113t-113 -47h-1088q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1088q66 0 113 -47t47 -113 zM1408 1376v-160h-128v160q0 13 -9.5 22.5t-22.5 9.5h-1088q-13 0 -22.5 -9.5t-9.5 -22.5v-1088q0 -13 9.5 -22.5t22.5 -9.5h160v-128h-160q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1088q66 0 113 -47t47 -113z" /> - <glyph glyph-name="_554" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_554" unicode="" horiz-adv-x="2304" d="M1728 1088l-384 -704h768zM448 1088l-384 -704h768zM1269 1280q-14 -40 -45.5 -71.5t-71.5 -45.5v-1291h608q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1344q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h608v1291q-40 14 -71.5 45.5t-45.5 71.5h-491q-14 0 -23 9t-9 23v64 q0 14 9 23t23 9h491q21 57 70 92.5t111 35.5t111 -35.5t70 -92.5h491q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-491zM1088 1264q33 0 56.5 23.5t23.5 56.5t-23.5 56.5t-56.5 23.5t-56.5 -23.5t-23.5 -56.5t23.5 -56.5t56.5 -23.5zM2176 384q0 -73 -46.5 -131t-117.5 -91 t-144.5 -49.5t-139.5 -16.5t-139.5 16.5t-144.5 49.5t-117.5 91t-46.5 131q0 11 35 81t92 174.5t107 195.5t102 184t56 100q18 33 56 33t56 -33q4 -7 56 -100t102 -184t107 -195.5t92 -174.5t35 -81zM896 384q0 -73 -46.5 -131t-117.5 -91t-144.5 -49.5t-139.5 -16.5 t-139.5 16.5t-144.5 49.5t-117.5 91t-46.5 131q0 11 35 81t92 174.5t107 195.5t102 184t56 100q18 33 56 33t56 -33q4 -7 56 -100t102 -184t107 -195.5t92 -174.5t35 -81z" /> - <glyph glyph-name="_555" unicode="" + <glyph glyph-name="_555" unicode="" d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9 t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM874 700q77 29 149 92.5t129.5 152.5t92.5 210t35 253h-1024q0 -132 35 -253t92.5 -210t129.5 -152.5t149 -92.5q19 -7 30.5 -23.5t11.5 -36.5t-11.5 -36.5t-30.5 -23.5q-77 -29 -149 -92.5 t-129.5 -152.5t-92.5 -210t-35 -253h1024q0 132 -35 253t-92.5 210t-129.5 152.5t-149 92.5q-19 7 -30.5 23.5t-11.5 36.5t11.5 36.5t30.5 23.5z" /> - <glyph glyph-name="_556" unicode="" + <glyph glyph-name="_556" unicode="" d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9 t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM1280 1408h-1024q0 -66 9 -128h1006q9 61 9 128zM1280 -128q0 130 -34 249.5t-90.5 208t-126.5 152t-146 94.5h-230q-76 -31 -146 -94.5t-126.5 -152t-90.5 -208t-34 -249.5h1024z" /> - <glyph glyph-name="_557" unicode="" + <glyph glyph-name="_557" unicode="" d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9 t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM1280 1408h-1024q0 -206 85 -384h854q85 178 85 384zM1223 192q-54 141 -145.5 241.5t-194.5 142.5h-230q-103 -42 -194.5 -142.5t-145.5 -241.5h910z" /> - <glyph glyph-name="_558" unicode="" + <glyph glyph-name="_558" unicode="" d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9 t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM874 700q77 29 149 92.5t129.5 152.5t92.5 210t35 253h-1024q0 -132 35 -253t92.5 -210t129.5 -152.5t149 -92.5q19 -7 30.5 -23.5t11.5 -36.5t-11.5 -36.5t-30.5 -23.5q-137 -51 -244 -196 h700q-107 145 -244 196q-19 7 -30.5 23.5t-11.5 36.5t11.5 36.5t30.5 23.5z" /> - <glyph glyph-name="_559" unicode="" + <glyph glyph-name="_559" unicode="" d="M1504 -64q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v128q0 14 9 23t23 9h1472zM130 0q3 55 16 107t30 95t46 87t53.5 76t64.5 69.5t66 60t70.5 55t66.5 47.5t65 43q-43 28 -65 43t-66.5 47.5t-70.5 55t-66 60t-64.5 69.5t-53.5 76t-46 87 t-30 95t-16 107h1276q-3 -55 -16 -107t-30 -95t-46 -87t-53.5 -76t-64.5 -69.5t-66 -60t-70.5 -55t-66.5 -47.5t-65 -43q43 -28 65 -43t66.5 -47.5t70.5 -55t66 -60t64.5 -69.5t53.5 -76t46 -87t30 -95t16 -107h-1276zM1504 1536q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9 h-1472q-14 0 -23 9t-9 23v128q0 14 9 23t23 9h1472z" /> - <glyph glyph-name="_560" unicode="" + <glyph glyph-name="_560" unicode="" d="M768 1152q-53 0 -90.5 -37.5t-37.5 -90.5v-128h-32v93q0 48 -32 81.5t-80 33.5q-46 0 -79 -33t-33 -79v-429l-32 30v172q0 48 -32 81.5t-80 33.5q-46 0 -79 -33t-33 -79v-224q0 -47 35 -82l310 -296q39 -39 39 -102q0 -26 19 -45t45 -19h640q26 0 45 19t19 45v25 q0 41 10 77l108 436q10 36 10 77v246q0 48 -32 81.5t-80 33.5q-46 0 -79 -33t-33 -79v-32h-32v125q0 40 -25 72.5t-64 40.5q-14 2 -23 2q-46 0 -79 -33t-33 -79v-128h-32v122q0 51 -32.5 89.5t-82.5 43.5q-5 1 -13 1zM768 1280q84 0 149 -50q57 34 123 34q59 0 111 -27 t86 -76q27 7 59 7q100 0 170 -71.5t70 -171.5v-246q0 -51 -13 -108l-109 -436q-6 -24 -6 -71q0 -80 -56 -136t-136 -56h-640q-84 0 -138 58.5t-54 142.5l-308 296q-76 73 -76 175v224q0 99 70.5 169.5t169.5 70.5q11 0 16 -1q6 95 75.5 160t164.5 65q52 0 98 -21 q72 69 174 69z" /> - <glyph glyph-name="_561" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_561" unicode="" horiz-adv-x="1792" d="M880 1408q-46 0 -79 -33t-33 -79v-656h-32v528q0 46 -33 79t-79 33t-79 -33t-33 -79v-528v-256l-154 205q-38 51 -102 51q-53 0 -90.5 -37.5t-37.5 -90.5q0 -43 26 -77l384 -512q38 -51 102 -51h688q34 0 61 22t34 56l76 405q5 32 5 59v498q0 46 -33 79t-79 33t-79 -33 t-33 -79v-272h-32v528q0 46 -33 79t-79 33t-79 -33t-33 -79v-528h-32v656q0 46 -33 79t-79 33zM880 1536q68 0 125.5 -35.5t88.5 -96.5q19 4 42 4q99 0 169.5 -70.5t70.5 -169.5v-17q105 6 180.5 -64t75.5 -175v-498q0 -40 -8 -83l-76 -404q-14 -79 -76.5 -131t-143.5 -52 h-688q-60 0 -114.5 27.5t-90.5 74.5l-384 512q-51 68 -51 154q0 106 75 181t181 75q78 0 128 -34v434q0 99 70.5 169.5t169.5 70.5q23 0 42 -4q31 61 88.5 96.5t125.5 35.5z" /> - <glyph glyph-name="_562" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_562" unicode="" horiz-adv-x="1792" d="M1073 -128h-177q-163 0 -226 141q-23 49 -23 102v5q-62 30 -98.5 88.5t-36.5 127.5q0 38 5 48h-261q-106 0 -181 75t-75 181t75 181t181 75h113l-44 17q-74 28 -119.5 93.5t-45.5 145.5q0 106 75 181t181 75q46 0 91 -17l628 -239h401q106 0 181 -75t75 -181v-668 q0 -88 -54 -157.5t-140 -90.5l-339 -85q-92 -23 -186 -23zM1024 583l-155 -71l-163 -74q-30 -14 -48 -41.5t-18 -60.5q0 -46 33 -79t79 -33q26 0 46 10l338 154q-49 10 -80.5 50t-31.5 90v55zM1344 272q0 46 -33 79t-79 33q-26 0 -46 -10l-290 -132q-28 -13 -37 -17 t-30.5 -17t-29.5 -23.5t-16 -29t-8 -40.5q0 -50 31.5 -82t81.5 -32q20 0 38 9l352 160q30 14 48 41.5t18 60.5zM1112 1024l-650 248q-24 8 -46 8q-53 0 -90.5 -37.5t-37.5 -90.5q0 -40 22.5 -73t59.5 -47l526 -200v-64h-640q-53 0 -90.5 -37.5t-37.5 -90.5t37.5 -90.5 t90.5 -37.5h535l233 106v198q0 63 46 106l111 102h-69zM1073 0q82 0 155 19l339 85q43 11 70 45.5t27 78.5v668q0 53 -37.5 90.5t-90.5 37.5h-308l-136 -126q-36 -33 -36 -82v-296q0 -46 33 -77t79 -31t79 35t33 81v208h32v-208q0 -70 -57 -114q52 -8 86.5 -48.5t34.5 -93.5 q0 -42 -23 -78t-61 -53l-310 -141h91z" /> - <glyph glyph-name="_563" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_563" unicode="" horiz-adv-x="2048" d="M1151 1536q61 0 116 -28t91 -77l572 -781q118 -159 118 -359v-355q0 -80 -56 -136t-136 -56h-384q-80 0 -136 56t-56 136v177l-286 143h-546q-80 0 -136 56t-56 136v32q0 119 84.5 203.5t203.5 84.5h420l42 128h-686q-100 0 -173.5 67.5t-81.5 166.5q-65 79 -65 182v32 q0 80 56 136t136 56h959zM1920 -64v355q0 157 -93 284l-573 781q-39 52 -103 52h-959q-26 0 -45 -19t-19 -45q0 -32 1.5 -49.5t9.5 -40.5t25 -43q10 31 35.5 50t56.5 19h832v-32h-832q-26 0 -45 -19t-19 -45q0 -44 3 -58q8 -44 44 -73t81 -29h640h91q40 0 68 -28t28 -68 q0 -15 -5 -30l-64 -192q-10 -29 -35 -47.5t-56 -18.5h-443q-66 0 -113 -47t-47 -113v-32q0 -26 19 -45t45 -19h561q16 0 29 -7l317 -158q24 -13 38.5 -36t14.5 -50v-197q0 -26 19 -45t45 -19h384q26 0 45 19t19 45z" /> - <glyph glyph-name="_564" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_564" unicode="" horiz-adv-x="2048" d="M459 -256q-77 0 -137.5 47.5t-79.5 122.5l-101 401q-13 57 -13 108q0 45 -5 67l-116 477q-7 27 -7 57q0 93 62 161t155 78q17 85 82.5 139t152.5 54q83 0 148 -51.5t85 -132.5l83 -348l103 428q20 81 85 132.5t148 51.5q89 0 155.5 -57.5t80.5 -144.5q92 -10 152 -79 t60 -162q0 -24 -7 -59l-123 -512q10 7 37.5 28.5t38.5 29.5t35 23t41 20.5t41.5 11t49.5 5.5q105 0 180 -74t75 -179q0 -62 -28.5 -118t-78.5 -94l-507 -380q-68 -51 -153 -51h-694zM1104 1408q-38 0 -68.5 -24t-39.5 -62l-164 -682h-127l-145 602q-9 38 -39.5 62t-68.5 24 q-48 0 -80 -33t-32 -80q0 -15 3 -28l132 -547h-26l-99 408q-9 37 -40 62.5t-69 25.5q-47 0 -80 -33t-33 -79q0 -14 3 -26l116 -478q7 -28 9 -86t10 -88l100 -401q8 -32 34 -52.5t59 -20.5h694q42 0 76 26l507 379q56 43 56 110q0 52 -37.5 88.5t-89.5 36.5q-43 0 -77 -26 l-307 -230v227q0 4 32 138t68 282t39 161q4 18 4 29q0 47 -32 81t-79 34q-39 0 -69.5 -24t-39.5 -62l-116 -482h-26l150 624q3 14 3 28q0 48 -31.5 82t-79.5 34z" /> - <glyph glyph-name="_565" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_565" unicode="" horiz-adv-x="1792" d="M640 1408q-53 0 -90.5 -37.5t-37.5 -90.5v-512v-384l-151 202q-41 54 -107 54q-52 0 -89 -38t-37 -90q0 -43 26 -77l384 -512q38 -51 102 -51h718q22 0 39.5 13.5t22.5 34.5l92 368q24 96 24 194v217q0 41 -28 71t-68 30t-68 -28t-28 -68h-32v61q0 48 -32 81.5t-80 33.5 q-46 0 -79 -33t-33 -79v-64h-32v90q0 55 -37 94.5t-91 39.5q-53 0 -90.5 -37.5t-37.5 -90.5v-96h-32v570q0 55 -37 94.5t-91 39.5zM640 1536q107 0 181.5 -77.5t74.5 -184.5v-220q22 2 32 2q99 0 173 -69q47 21 99 21q113 0 184 -87q27 7 56 7q94 0 159 -67.5t65 -161.5 v-217q0 -116 -28 -225l-92 -368q-16 -64 -68 -104.5t-118 -40.5h-718q-60 0 -114.5 27.5t-90.5 74.5l-384 512q-51 68 -51 154q0 105 74.5 180.5t179.5 75.5q71 0 130 -35v547q0 106 75 181t181 75zM768 128v384h-32v-384h32zM1024 128v384h-32v-384h32zM1280 128v384h-32 v-384h32z" /> - <glyph glyph-name="_566" unicode="" + <glyph glyph-name="_566" unicode="" d="M1288 889q60 0 107 -23q141 -63 141 -226v-177q0 -94 -23 -186l-85 -339q-21 -86 -90.5 -140t-157.5 -54h-668q-106 0 -181 75t-75 181v401l-239 628q-17 45 -17 91q0 106 75 181t181 75q80 0 145.5 -45.5t93.5 -119.5l17 -44v113q0 106 75 181t181 75t181 -75t75 -181 v-261q27 5 48 5q69 0 127.5 -36.5t88.5 -98.5zM1072 896q-33 0 -60.5 -18t-41.5 -48l-74 -163l-71 -155h55q50 0 90 -31.5t50 -80.5l154 338q10 20 10 46q0 46 -33 79t-79 33zM1293 761q-22 0 -40.5 -8t-29 -16t-23.5 -29.5t-17 -30.5t-17 -37l-132 -290q-10 -20 -10 -46 q0 -46 33 -79t79 -33q33 0 60.5 18t41.5 48l160 352q9 18 9 38q0 50 -32 81.5t-82 31.5zM128 1120q0 -22 8 -46l248 -650v-69l102 111q43 46 106 46h198l106 233v535q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5v-640h-64l-200 526q-14 37 -47 59.5t-73 22.5 q-53 0 -90.5 -37.5t-37.5 -90.5zM1180 -128q44 0 78.5 27t45.5 70l85 339q19 73 19 155v91l-141 -310q-17 -38 -53 -61t-78 -23q-53 0 -93.5 34.5t-48.5 86.5q-44 -57 -114 -57h-208v32h208q46 0 81 33t35 79t-31 79t-77 33h-296q-49 0 -82 -36l-126 -136v-308 q0 -53 37.5 -90.5t90.5 -37.5h668z" /> - <glyph glyph-name="_567" unicode="" horiz-adv-x="1973" + <glyph glyph-name="_567" unicode="" horiz-adv-x="1973" d="M857 992v-117q0 -13 -9.5 -22t-22.5 -9h-298v-812q0 -13 -9 -22.5t-22 -9.5h-135q-13 0 -22.5 9t-9.5 23v812h-297q-13 0 -22.5 9t-9.5 22v117q0 14 9 23t23 9h793q13 0 22.5 -9.5t9.5 -22.5zM1895 995l77 -961q1 -13 -8 -24q-10 -10 -23 -10h-134q-12 0 -21 8.5 t-10 20.5l-46 588l-189 -425q-8 -19 -29 -19h-120q-20 0 -29 19l-188 427l-45 -590q-1 -12 -10 -20.5t-21 -8.5h-135q-13 0 -23 10q-9 10 -9 24l78 961q1 12 10 20.5t21 8.5h142q20 0 29 -19l220 -520q10 -24 20 -51q3 7 9.5 24.5t10.5 26.5l221 520q9 19 29 19h141 q13 0 22 -8.5t10 -20.5z" /> - <glyph glyph-name="_568" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_568" unicode="" horiz-adv-x="1792" d="M1042 833q0 88 -60 121q-33 18 -117 18h-123v-281h162q66 0 102 37t36 105zM1094 548l205 -373q8 -17 -1 -31q-8 -16 -27 -16h-152q-20 0 -28 17l-194 365h-155v-350q0 -14 -9 -23t-23 -9h-134q-14 0 -23 9t-9 23v960q0 14 9 23t23 9h294q128 0 190 -24q85 -31 134 -109 t49 -180q0 -92 -42.5 -165.5t-115.5 -109.5q6 -10 9 -16zM896 1376q-150 0 -286 -58.5t-234.5 -157t-157 -234.5t-58.5 -286t58.5 -286t157 -234.5t234.5 -157t286 -58.5t286 58.5t234.5 157t157 234.5t58.5 286t-58.5 286t-157 234.5t-234.5 157t-286 58.5zM1792 640 q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="_569" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_569" unicode="" horiz-adv-x="1792" d="M605 303q153 0 257 104q14 18 3 36l-45 82q-6 13 -24 17q-16 2 -27 -11l-4 -3q-4 -4 -11.5 -10t-17.5 -13.5t-23.5 -14.5t-28.5 -13t-33.5 -9.5t-37.5 -3.5q-76 0 -125 50t-49 127q0 76 48 125.5t122 49.5q37 0 71.5 -14t50.5 -28l16 -14q11 -11 26 -10q16 2 24 14l53 78 q13 20 -2 39q-3 4 -11 12t-30 23.5t-48.5 28t-67.5 22.5t-86 10q-148 0 -246 -96.5t-98 -240.5q0 -146 97 -241.5t247 -95.5zM1235 303q153 0 257 104q14 18 4 36l-45 82q-8 14 -25 17q-16 2 -27 -11l-4 -3q-4 -4 -11.5 -10t-17.5 -13.5t-23.5 -14.5t-28.5 -13t-33.5 -9.5 t-37.5 -3.5q-76 0 -125 50t-49 127q0 76 48 125.5t122 49.5q37 0 71.5 -14t50.5 -28l16 -14q11 -11 26 -10q16 2 24 14l53 78q13 20 -2 39q-3 4 -11 12t-30 23.5t-48.5 28t-67.5 22.5t-86 10q-147 0 -245.5 -96.5t-98.5 -240.5q0 -146 97 -241.5t247 -95.5zM896 1376 q-150 0 -286 -58.5t-234.5 -157t-157 -234.5t-58.5 -286t58.5 -286t157 -234.5t234.5 -157t286 -58.5t286 58.5t234.5 157t157 234.5t58.5 286t-58.5 286t-157 234.5t-234.5 157t-286 58.5zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191 t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71z" /> - <glyph glyph-name="f260" unicode="" horiz-adv-x="2048" + <glyph glyph-name="f260" unicode="" horiz-adv-x="2048" d="M736 736l384 -384l-384 -384l-672 672l672 672l168 -168l-96 -96l-72 72l-480 -480l480 -480l193 193l-289 287zM1312 1312l672 -672l-672 -672l-168 168l96 96l72 -72l480 480l-480 480l-193 -193l289 -287l-96 -96l-384 384z" /> - <glyph glyph-name="f261" unicode="" horiz-adv-x="1792" + <glyph glyph-name="f261" unicode="" horiz-adv-x="1792" d="M717 182l271 271l-279 279l-88 -88l192 -191l-96 -96l-279 279l279 279l40 -40l87 87l-127 128l-454 -454zM1075 190l454 454l-454 454l-271 -271l279 -279l88 88l-192 191l96 96l279 -279l-279 -279l-40 40l-87 -88zM1792 640q0 -182 -71 -348t-191 -286t-286 -191 t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="_572" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_572" unicode="" horiz-adv-x="2304" d="M651 539q0 -39 -27.5 -66.5t-65.5 -27.5q-39 0 -66.5 27.5t-27.5 66.5q0 38 27.5 65.5t66.5 27.5q38 0 65.5 -27.5t27.5 -65.5zM1805 540q0 -39 -27.5 -66.5t-66.5 -27.5t-66.5 27.5t-27.5 66.5t27.5 66t66.5 27t66.5 -27t27.5 -66zM765 539q0 79 -56.5 136t-136.5 57 t-136.5 -56.5t-56.5 -136.5t56.5 -136.5t136.5 -56.5t136.5 56.5t56.5 136.5zM1918 540q0 80 -56.5 136.5t-136.5 56.5q-79 0 -136 -56.5t-57 -136.5t56.5 -136.5t136.5 -56.5t136.5 56.5t56.5 136.5zM850 539q0 -116 -81.5 -197.5t-196.5 -81.5q-116 0 -197.5 82t-81.5 197 t82 196.5t197 81.5t196.5 -81.5t81.5 -196.5zM2004 540q0 -115 -81.5 -196.5t-197.5 -81.5q-115 0 -196.5 81.5t-81.5 196.5t81.5 196.5t196.5 81.5q116 0 197.5 -81.5t81.5 -196.5zM1040 537q0 191 -135.5 326.5t-326.5 135.5q-125 0 -231 -62t-168 -168.5t-62 -231.5 t62 -231.5t168 -168.5t231 -62q191 0 326.5 135.5t135.5 326.5zM1708 1110q-254 111 -556 111q-319 0 -573 -110q117 0 223 -45.5t182.5 -122.5t122 -183t45.5 -223q0 115 43.5 219.5t118 180.5t177.5 123t217 50zM2187 537q0 191 -135 326.5t-326 135.5t-326.5 -135.5 t-135.5 -326.5t135.5 -326.5t326.5 -135.5t326 135.5t135 326.5zM1921 1103h383q-44 -51 -75 -114.5t-40 -114.5q110 -151 110 -337q0 -156 -77 -288t-209 -208.5t-287 -76.5q-133 0 -249 56t-196 155q-47 -56 -129 -179q-11 22 -53.5 82.5t-74.5 97.5 q-80 -99 -196.5 -155.5t-249.5 -56.5q-155 0 -287 76.5t-209 208.5t-77 288q0 186 110 337q-9 51 -40 114.5t-75 114.5h365q149 100 355 156.5t432 56.5q224 0 421 -56t348 -157z" /> - <glyph glyph-name="f263" unicode="" horiz-adv-x="1280" + <glyph glyph-name="f263" unicode="" horiz-adv-x="1280" d="M640 629q-188 0 -321 133t-133 320q0 188 133 321t321 133t321 -133t133 -321q0 -187 -133 -320t-321 -133zM640 1306q-92 0 -157.5 -65.5t-65.5 -158.5q0 -92 65.5 -157.5t157.5 -65.5t157.5 65.5t65.5 157.5q0 93 -65.5 158.5t-157.5 65.5zM1163 574q13 -27 15 -49.5 t-4.5 -40.5t-26.5 -38.5t-42.5 -37t-61.5 -41.5q-115 -73 -315 -94l73 -72l267 -267q30 -31 30 -74t-30 -73l-12 -13q-31 -30 -74 -30t-74 30q-67 68 -267 268l-267 -268q-31 -30 -74 -30t-73 30l-12 13q-31 30 -31 73t31 74l267 267l72 72q-203 21 -317 94 q-39 25 -61.5 41.5t-42.5 37t-26.5 38.5t-4.5 40.5t15 49.5q10 20 28 35t42 22t56 -2t65 -35q5 -4 15 -11t43 -24.5t69 -30.5t92 -24t113 -11q91 0 174 25.5t120 50.5l38 25q33 26 65 35t56 2t42 -22t28 -35z" /> - <glyph glyph-name="_574" unicode="" + <glyph glyph-name="_574" unicode="" d="M927 956q0 -66 -46.5 -112.5t-112.5 -46.5t-112.5 46.5t-46.5 112.5t46.5 112.5t112.5 46.5t112.5 -46.5t46.5 -112.5zM1141 593q-10 20 -28 32t-47.5 9.5t-60.5 -27.5q-10 -8 -29 -20t-81 -32t-127 -20t-124 18t-86 36l-27 18q-31 25 -60.5 27.5t-47.5 -9.5t-28 -32 q-22 -45 -2 -74.5t87 -73.5q83 -53 226 -67l-51 -52q-142 -142 -191 -190q-22 -22 -22 -52.5t22 -52.5l9 -9q22 -22 52.5 -22t52.5 22l191 191q114 -115 191 -191q22 -22 52.5 -22t52.5 22l9 9q22 22 22 52.5t-22 52.5l-191 190l-52 52q141 14 225 67q67 44 87 73.5t-2 74.5 zM1092 956q0 134 -95 229t-229 95t-229 -95t-95 -229t95 -229t229 -95t229 95t95 229zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="_575" unicode="" horiz-adv-x="1720" + <glyph glyph-name="_575" unicode="" horiz-adv-x="1720" d="M1565 1408q65 0 110 -45.5t45 -110.5v-519q0 -176 -68 -336t-182.5 -275t-274 -182.5t-334.5 -67.5q-176 0 -335.5 67.5t-274.5 182.5t-183 275t-68 336v519q0 64 46 110t110 46h1409zM861 344q47 0 82 33l404 388q37 35 37 85q0 49 -34.5 83.5t-83.5 34.5q-47 0 -82 -33 l-323 -310l-323 310q-35 33 -81 33q-49 0 -83.5 -34.5t-34.5 -83.5q0 -51 36 -85l405 -388q33 -33 81 -33z" /> - <glyph glyph-name="_576" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_576" unicode="" horiz-adv-x="2304" d="M1494 -103l-295 695q-25 -49 -158.5 -305.5t-198.5 -389.5q-1 -1 -27.5 -0.5t-26.5 1.5q-82 193 -255.5 587t-259.5 596q-21 50 -66.5 107.5t-103.5 100.5t-102 43q0 5 -0.5 24t-0.5 27h583v-50q-39 -2 -79.5 -16t-66.5 -43t-10 -64q26 -59 216.5 -499t235.5 -540 q31 61 140 266.5t131 247.5q-19 39 -126 281t-136 295q-38 69 -201 71v50l513 -1v-47q-60 -2 -93.5 -25t-12.5 -69q33 -70 87 -189.5t86 -187.5q110 214 173 363q24 55 -10 79.5t-129 26.5q1 7 1 25v24q64 0 170.5 0.5t180 1t92.5 0.5v-49q-62 -2 -119 -33t-90 -81 l-213 -442q13 -33 127.5 -290t121.5 -274l441 1017q-14 38 -49.5 62.5t-65 31.5t-55.5 8v50l460 -4l1 -2l-1 -44q-139 -4 -201 -145q-526 -1216 -559 -1291h-49z" /> - <glyph glyph-name="_577" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_577" unicode="" horiz-adv-x="1792" d="M949 643q0 -26 -16.5 -45t-41.5 -19q-26 0 -45 16.5t-19 41.5q0 26 17 45t42 19t44 -16.5t19 -41.5zM964 585l350 581q-9 -8 -67.5 -62.5t-125.5 -116.5t-136.5 -127t-117 -110.5t-50.5 -51.5l-349 -580q7 7 67 62t126 116.5t136 127t117 111t50 50.5zM1611 640 q0 -201 -104 -371q-3 2 -17 11t-26.5 16.5t-16.5 7.5q-13 0 -13 -13q0 -10 59 -44q-74 -112 -184.5 -190.5t-241.5 -110.5l-16 67q-1 10 -15 10q-5 0 -8 -5.5t-2 -9.5l16 -68q-72 -15 -146 -15q-199 0 -372 105q1 2 13 20.5t21.5 33.5t9.5 19q0 13 -13 13q-6 0 -17 -14.5 t-22.5 -34.5t-13.5 -23q-113 75 -192 187.5t-110 244.5l69 15q10 3 10 15q0 5 -5.5 8t-10.5 2l-68 -15q-14 72 -14 139q0 206 109 379q2 -1 18.5 -12t30 -19t17.5 -8q13 0 13 12q0 6 -12.5 15.5t-32.5 21.5l-20 12q77 112 189 189t244 107l15 -67q2 -10 15 -10q5 0 8 5.5 t2 10.5l-15 66q71 13 134 13q204 0 379 -109q-39 -56 -39 -65q0 -13 12 -13q11 0 48 64q111 -75 187.5 -186t107.5 -241l-56 -12q-10 -2 -10 -16q0 -5 5.5 -8t9.5 -2l57 13q14 -72 14 -140zM1696 640q0 163 -63.5 311t-170.5 255t-255 170.5t-311 63.5t-311 -63.5 t-255 -170.5t-170.5 -255t-63.5 -311t63.5 -311t170.5 -255t255 -170.5t311 -63.5t311 63.5t255 170.5t170.5 255t63.5 311zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191 t191 -286t71 -348z" /> - <glyph glyph-name="_578" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_578" unicode="" horiz-adv-x="1792" d="M893 1536q240 2 451 -120q232 -134 352 -372l-742 39q-160 9 -294 -74.5t-185 -229.5l-276 424q128 159 311 245.5t383 87.5zM146 1131l337 -663q72 -143 211 -217t293 -45l-230 -451q-212 33 -385 157.5t-272.5 316t-99.5 411.5q0 267 146 491zM1732 962 q58 -150 59.5 -310.5t-48.5 -306t-153 -272t-246 -209.5q-230 -133 -498 -119l405 623q88 131 82.5 290.5t-106.5 277.5zM896 942q125 0 213.5 -88.5t88.5 -213.5t-88.5 -213.5t-213.5 -88.5t-213.5 88.5t-88.5 213.5t88.5 213.5t213.5 88.5z" /> - <glyph glyph-name="_579" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_579" unicode="" horiz-adv-x="1792" d="M903 -256q-283 0 -504.5 150.5t-329.5 398.5q-58 131 -67 301t26 332.5t111 312t179 242.5l-11 -281q11 14 68 15.5t70 -15.5q42 81 160.5 138t234.5 59q-54 -45 -119.5 -148.5t-58.5 -163.5q25 -8 62.5 -13.5t63 -7.5t68 -4t50.5 -3q15 -5 9.5 -45.5t-30.5 -75.5 q-5 -7 -16.5 -18.5t-56.5 -35.5t-101 -34l15 -189l-139 67q-18 -43 -7.5 -81.5t36 -66.5t65.5 -41.5t81 -6.5q51 9 98 34.5t83.5 45t73.5 17.5q61 -4 89.5 -33t19.5 -65q-1 -2 -2.5 -5.5t-8.5 -12.5t-18 -15.5t-31.5 -10.5t-46.5 -1q-60 -95 -144.5 -135.5t-209.5 -29.5 q74 -61 162.5 -82.5t168.5 -6t154.5 52t128 87.5t80.5 104q43 91 39 192.5t-37.5 188.5t-78.5 125q87 -38 137 -79.5t77 -112.5q15 170 -57.5 343t-209.5 284q265 -77 412 -279.5t151 -517.5q2 -127 -40.5 -255t-123.5 -238t-189 -196t-247.5 -135.5t-288.5 -49.5z" /> - <glyph glyph-name="_580" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_580" unicode="" horiz-adv-x="1792" d="M1493 1308q-165 110 -359 110q-155 0 -293 -73t-240 -200q-75 -93 -119.5 -218t-48.5 -266v-42q4 -141 48.5 -266t119.5 -218q102 -127 240 -200t293 -73q194 0 359 110q-121 -108 -274.5 -168t-322.5 -60q-29 0 -43 1q-175 8 -333 82t-272 193t-181 281t-67 339 q0 182 71 348t191 286t286 191t348 71h3q168 -1 320.5 -60.5t273.5 -167.5zM1792 640q0 -192 -77 -362.5t-213 -296.5q-104 -63 -222 -63q-137 0 -255 84q154 56 253.5 233t99.5 405q0 227 -99 404t-253 234q119 83 254 83q119 0 226 -65q135 -125 210.5 -295t75.5 -361z " /> - <glyph glyph-name="_581" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_581" unicode="" horiz-adv-x="1792" d="M1792 599q0 -56 -7 -104h-1151q0 -146 109.5 -244.5t257.5 -98.5q99 0 185.5 46.5t136.5 130.5h423q-56 -159 -170.5 -281t-267.5 -188.5t-321 -66.5q-187 0 -356 83q-228 -116 -394 -116q-237 0 -237 263q0 115 45 275q17 60 109 229q199 360 475 606 q-184 -79 -427 -354q63 274 283.5 449.5t501.5 175.5q30 0 45 -1q255 117 433 117q64 0 116 -13t94.5 -40.5t66.5 -76.5t24 -115q0 -116 -75 -286q101 -182 101 -390zM1722 1239q0 83 -53 132t-137 49q-108 0 -254 -70q121 -47 222.5 -131.5t170.5 -195.5q51 135 51 216z M128 2q0 -86 48.5 -132.5t134.5 -46.5q115 0 266 83q-122 72 -213.5 183t-137.5 245q-98 -205 -98 -332zM632 715h728q-5 142 -113 237t-251 95q-144 0 -251.5 -95t-112.5 -237z" /> - <glyph glyph-name="_582" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_582" unicode="" horiz-adv-x="2048" d="M1792 288v960q0 13 -9.5 22.5t-22.5 9.5h-1600q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h1600q13 0 22.5 9.5t9.5 22.5zM1920 1248v-960q0 -66 -47 -113t-113 -47h-736v-128h352q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23 v64q0 14 9 23t23 9h352v128h-736q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" /> - <glyph glyph-name="_583" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_583" unicode="" horiz-adv-x="1792" d="M138 1408h197q-70 -64 -126 -149q-36 -56 -59 -115t-30 -125.5t-8.5 -120t10.5 -132t21 -126t28 -136.5q4 -19 6 -28q51 -238 81 -329q57 -171 152 -275h-272q-48 0 -82 34t-34 82v1304q0 48 34 82t82 34zM1346 1408h308q48 0 82 -34t34 -82v-1304q0 -48 -34 -82t-82 -34 h-178q212 210 196 565l-469 -101q-2 -45 -12 -82t-31 -72t-59.5 -59.5t-93.5 -36.5q-123 -26 -199 40q-32 27 -53 61t-51.5 129t-64.5 258q-35 163 -45.5 263t-5.5 139t23 77q20 41 62.5 73t102.5 45q45 12 83.5 6.5t67 -17t54 -35t43 -48t34.5 -56.5l468 100 q-68 175 -180 287z" /> - <glyph glyph-name="_584" unicode="" + <glyph glyph-name="_584" unicode="" d="M1401 -11l-6 -6q-113 -113 -259 -175q-154 -64 -317 -64q-165 0 -317 64q-148 63 -259 175q-113 112 -175 258q-42 103 -54 189q-4 28 48 36q51 8 56 -20q1 -1 1 -4q18 -90 46 -159q50 -124 152 -226q98 -98 226 -152q132 -56 276 -56q143 0 276 56q128 55 225 152l6 6 q10 10 25 6q12 -3 33 -22q36 -37 17 -58zM929 604l-66 -66l63 -63q21 -21 -7 -49q-17 -17 -32 -17q-10 0 -19 10l-62 61l-66 -66q-5 -5 -15 -5q-15 0 -31 16l-2 2q-18 15 -18 29q0 7 8 17l66 65l-66 66q-16 16 14 45q18 18 31 18q6 0 13 -5l65 -66l65 65q18 17 48 -13 q27 -27 11 -44zM1400 547q0 -118 -46 -228q-45 -105 -126 -186q-80 -80 -187 -126t-228 -46t-228 46t-187 126q-82 82 -125 186q-15 33 -15 40h-1q-9 27 43 44q50 16 60 -12q37 -99 97 -167h1v339v2q3 136 102 232q105 103 253 103q147 0 251 -103t104 -249 q0 -147 -104.5 -251t-250.5 -104q-58 0 -112 16q-28 11 -13 61q16 51 44 43l14 -3q14 -3 33 -6t30 -3q104 0 176 71.5t72 174.5q0 101 -72 171q-71 71 -175 71q-107 0 -178 -80q-64 -72 -64 -160v-413q110 -67 242 -67q96 0 185 36.5t156 103.5t103.5 155t36.5 183 q0 198 -141 339q-140 140 -339 140q-200 0 -340 -140q-53 -53 -77 -87l-2 -2q-8 -11 -13 -15.5t-21.5 -9.5t-38.5 3q-21 5 -36.5 16.5t-15.5 26.5v680q0 15 10.5 26.5t27.5 11.5h877q30 0 30 -55t-30 -55h-811v-483h1q40 42 102 84t108 61q109 46 231 46q121 0 228 -46 t187 -126q81 -81 126 -186q46 -112 46 -229zM1369 1128q9 -8 9 -18t-5.5 -18t-16.5 -21q-26 -26 -39 -26q-9 0 -16 7q-106 91 -207 133q-128 56 -276 56q-133 0 -262 -49q-27 -10 -45 37q-9 25 -8 38q3 16 16 20q130 57 299 57q164 0 316 -64q137 -58 235 -152z" /> - <glyph glyph-name="_585" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_585" unicode="" horiz-adv-x="1792" d="M1551 60q15 6 26 3t11 -17.5t-15 -33.5q-13 -16 -44 -43.5t-95.5 -68t-141 -74t-188 -58t-229.5 -24.5q-119 0 -238 31t-209 76.5t-172.5 104t-132.5 105t-84 87.5q-8 9 -10 16.5t1 12t8 7t11.5 2t11.5 -4.5q192 -117 300 -166q389 -176 799 -90q190 40 391 135z M1758 175q11 -16 2.5 -69.5t-28.5 -102.5q-34 -83 -85 -124q-17 -14 -26 -9t0 24q21 45 44.5 121.5t6.5 98.5q-5 7 -15.5 11.5t-27 6t-29.5 2.5t-35 0t-31.5 -2t-31 -3t-22.5 -2q-6 -1 -13 -1.5t-11 -1t-8.5 -1t-7 -0.5h-5.5h-4.5t-3 0.5t-2 1.5l-1.5 3q-6 16 47 40t103 30 q46 7 108 1t76 -24zM1364 618q0 -31 13.5 -64t32 -58t37.5 -46t33 -32l13 -11l-227 -224q-40 37 -79 75.5t-58 58.5l-19 20q-11 11 -25 33q-38 -59 -97.5 -102.5t-127.5 -63.5t-140 -23t-137.5 21t-117.5 65.5t-83 113t-31 162.5q0 84 28 154t72 116.5t106.5 83t122.5 57 t130 34.5t119.5 18.5t99.5 6.5v127q0 65 -21 97q-34 53 -121 53q-6 0 -16.5 -1t-40.5 -12t-56 -29.5t-56 -59.5t-48 -96l-294 27q0 60 22 119t67 113t108 95t151.5 65.5t190.5 24.5q100 0 181 -25t129.5 -61.5t81 -83t45 -86t12.5 -73.5v-589zM692 597q0 -86 70 -133 q66 -44 139 -22q84 25 114 123q14 45 14 101v162q-59 -2 -111 -12t-106.5 -33.5t-87 -71t-32.5 -114.5z" /> - <glyph glyph-name="_586" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_586" unicode="" horiz-adv-x="1792" d="M1536 1280q52 0 90 -38t38 -90v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128zM1152 1376v-288q0 -14 9 -23t23 -9 h64q14 0 23 9t9 23v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM384 1376v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM1536 -128v1024h-1408v-1024h1408zM896 448h224q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-224 v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-224q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v224q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-224z" /> - <glyph glyph-name="_587" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_587" unicode="" horiz-adv-x="1792" d="M1152 416v-64q0 -14 -9 -23t-23 -9h-576q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h576q14 0 23 -9t9 -23zM128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23 t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47 t47 -113v-96h128q52 0 90 -38t38 -90z" /> - <glyph glyph-name="_588" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_588" unicode="" horiz-adv-x="1792" d="M1111 151l-46 -46q-9 -9 -22 -9t-23 9l-188 189l-188 -189q-10 -9 -23 -9t-22 9l-46 46q-9 9 -9 22t9 23l189 188l-189 188q-9 10 -9 23t9 22l46 46q9 9 22 9t23 -9l188 -188l188 188q10 9 23 9t22 -9l46 -46q9 -9 9 -22t-9 -23l-188 -188l188 -188q9 -10 9 -23t-9 -22z M128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280 q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" /> - <glyph glyph-name="_589" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_589" unicode="" horiz-adv-x="1792" d="M1303 572l-512 -512q-10 -9 -23 -9t-23 9l-288 288q-9 10 -9 23t9 22l46 46q9 9 22 9t23 -9l220 -220l444 444q10 9 23 9t22 -9l46 -46q9 -9 9 -22t-9 -23zM128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23 t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47 t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" /> - <glyph glyph-name="_590" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_590" unicode="" horiz-adv-x="1792" d="M448 1536q26 0 45 -19t19 -45v-891l536 429q17 14 40 14q26 0 45 -19t19 -45v-379l536 429q17 14 40 14q26 0 45 -19t19 -45v-1152q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v1664q0 26 19 45t45 19h384z" /> - <glyph glyph-name="_591" unicode="" horiz-adv-x="1024" + <glyph glyph-name="_591" unicode="" horiz-adv-x="1024" d="M512 448q66 0 128 15v-655q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v655q62 -15 128 -15zM512 1536q212 0 362 -150t150 -362t-150 -362t-362 -150t-362 150t-150 362t150 362t362 150zM512 1312q14 0 23 9t9 23t-9 23t-23 9q-146 0 -249 -103t-103 -249 q0 -14 9 -23t23 -9t23 9t9 23q0 119 84.5 203.5t203.5 84.5z" /> - <glyph glyph-name="_592" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_592" unicode="" horiz-adv-x="1792" d="M1745 1239q10 -10 10 -23t-10 -23l-141 -141q-28 -28 -68 -28h-1344q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h576v64q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-64h512q40 0 68 -28zM768 320h256v-512q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v512zM1600 768 q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19h-1344q-40 0 -68 28l-141 141q-10 10 -10 23t10 23l141 141q28 28 68 28h512v192h256v-192h576z" /> - <glyph glyph-name="_593" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_593" unicode="" horiz-adv-x="2048" d="M2020 1525q28 -20 28 -53v-1408q0 -20 -11 -36t-29 -23l-640 -256q-24 -11 -48 0l-616 246l-616 -246q-10 -5 -24 -5q-19 0 -36 11q-28 20 -28 53v1408q0 20 11 36t29 23l640 256q24 11 48 0l616 -246l616 246q32 13 60 -6zM736 1390v-1270l576 -230v1270zM128 1173 v-1270l544 217v1270zM1920 107v1270l-544 -217v-1270z" /> - <glyph glyph-name="_594" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_594" unicode="" horiz-adv-x="1792" d="M512 1536q13 0 22.5 -9.5t9.5 -22.5v-1472q0 -20 -17 -28l-480 -256q-7 -4 -15 -4q-13 0 -22.5 9.5t-9.5 22.5v1472q0 20 17 28l480 256q7 4 15 4zM1760 1536q13 0 22.5 -9.5t9.5 -22.5v-1472q0 -20 -17 -28l-480 -256q-7 -4 -15 -4q-13 0 -22.5 9.5t-9.5 22.5v1472 q0 20 17 28l480 256q7 4 15 4zM640 1536q8 0 14 -3l512 -256q18 -10 18 -29v-1472q0 -13 -9.5 -22.5t-22.5 -9.5q-8 0 -14 3l-512 256q-18 10 -18 29v1472q0 13 9.5 22.5t22.5 9.5z" /> - <glyph glyph-name="_595" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_595" unicode="" horiz-adv-x="1792" d="M640 640q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1024 640q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1408 640q0 53 -37.5 90.5t-90.5 37.5 t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1792 640q0 -174 -120 -321.5t-326 -233t-450 -85.5q-110 0 -211 18q-173 -173 -435 -229q-52 -10 -86 -13q-12 -1 -22 6t-13 18q-4 15 20 37q5 5 23.5 21.5t25.5 23.5t23.5 25.5t24 31.5t20.5 37 t20 48t14.5 57.5t12.5 72.5q-146 90 -229.5 216.5t-83.5 269.5q0 174 120 321.5t326 233t450 85.5t450 -85.5t326 -233t120 -321.5z" /> - <glyph glyph-name="_596" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_596" unicode="" horiz-adv-x="1792" d="M640 640q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1024 640q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 -53 -37.5 -90.5t-90.5 -37.5 t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM896 1152q-204 0 -381.5 -69.5t-282 -187.5t-104.5 -255q0 -112 71.5 -213.5t201.5 -175.5l87 -50l-27 -96q-24 -91 -70 -172q152 63 275 171l43 38l57 -6q69 -8 130 -8q204 0 381.5 69.5t282 187.5 t104.5 255t-104.5 255t-282 187.5t-381.5 69.5zM1792 640q0 -174 -120 -321.5t-326 -233t-450 -85.5q-70 0 -145 8q-198 -175 -460 -242q-49 -14 -114 -22h-5q-15 0 -27 10.5t-16 27.5v1q-3 4 -0.5 12t2 10t4.5 9.5l6 9t7 8.5t8 9q7 8 31 34.5t34.5 38t31 39.5t32.5 51 t27 59t26 76q-157 89 -247.5 220t-90.5 281q0 130 71 248.5t191 204.5t286 136.5t348 50.5t348 -50.5t286 -136.5t191 -204.5t71 -248.5z" /> - <glyph glyph-name="_597" unicode="" horiz-adv-x="1024" + <glyph glyph-name="_597" unicode="" horiz-adv-x="1024" d="M512 345l512 295v-591l-512 -296v592zM0 640v-591l512 296zM512 1527v-591l-512 -296v591zM512 936l512 295v-591z" /> - <glyph glyph-name="_598" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_598" unicode="" horiz-adv-x="1792" d="M1709 1018q-10 -236 -332 -651q-333 -431 -562 -431q-142 0 -240 263q-44 160 -132 482q-72 262 -157 262q-18 0 -127 -76l-77 98q24 21 108 96.5t130 115.5q156 138 241 146q95 9 153 -55.5t81 -203.5q44 -287 66 -373q55 -249 120 -249q51 0 154 161q101 161 109 246 q13 139 -109 139q-57 0 -121 -26q120 393 459 382q251 -8 236 -326z" /> - <glyph glyph-name="f27e" unicode="" + <glyph glyph-name="f27e" unicode="" d="M0 1408h1536v-1536h-1536v1536zM1085 293l-221 631l221 297h-634l221 -297l-221 -631l317 -304z" /> - <glyph glyph-name="uniF280" unicode="" + <glyph glyph-name="uniF280" unicode="" d="M0 1408h1536v-1536h-1536v1536zM908 1088l-12 -33l75 -83l-31 -114l25 -25l107 57l107 -57l25 25l-31 114l75 83l-12 33h-95l-53 96h-32l-53 -96h-95zM641 925q32 0 44.5 -16t11.5 -63l174 21q0 55 -17.5 92.5t-50.5 56t-69 25.5t-85 7q-133 0 -199 -57.5t-66 -182.5v-72 h-96v-128h76q20 0 20 -8v-382q0 -14 -5 -20t-18 -7l-73 -7v-88h448v86l-149 14q-6 1 -8.5 1.5t-3.5 2.5t-0.5 4t1 7t0.5 10v387h191l38 128h-231q-6 0 -2 6t4 9v80q0 27 1.5 40.5t7.5 28t19.5 20t36.5 5.5zM1248 96v86l-54 9q-7 1 -9.5 2.5t-2.5 3t1 7.5t1 12v520h-275 l-23 -101l83 -22q23 -7 23 -27v-370q0 -14 -6 -18.5t-20 -6.5l-70 -9v-86h352z" /> - <glyph glyph-name="uniF281" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF281" unicode="" horiz-adv-x="1792" d="M1792 690q0 -58 -29.5 -105.5t-79.5 -72.5q12 -46 12 -96q0 -155 -106.5 -287t-290.5 -208.5t-400 -76.5t-399.5 76.5t-290 208.5t-106.5 287q0 47 11 94q-51 25 -82 73.5t-31 106.5q0 82 58 140.5t141 58.5q85 0 145 -63q218 152 515 162l116 521q3 13 15 21t26 5 l369 -81q18 37 54 59.5t79 22.5q62 0 106 -43.5t44 -105.5t-44 -106t-106 -44t-105.5 43.5t-43.5 105.5l-334 74l-104 -472q300 -9 519 -160q58 61 143 61q83 0 141 -58.5t58 -140.5zM418 491q0 -62 43.5 -106t105.5 -44t106 44t44 106t-44 105.5t-106 43.5q-61 0 -105 -44 t-44 -105zM1228 136q11 11 11 26t-11 26q-10 10 -25 10t-26 -10q-41 -42 -121 -62t-160 -20t-160 20t-121 62q-11 10 -26 10t-25 -10q-11 -10 -11 -25.5t11 -26.5q43 -43 118.5 -68t122.5 -29.5t91 -4.5t91 4.5t122.5 29.5t118.5 68zM1225 341q62 0 105.5 44t43.5 106 q0 61 -44 105t-105 44q-62 0 -106 -43.5t-44 -105.5t44 -106t106 -44z" /> - <glyph glyph-name="_602" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_602" unicode="" horiz-adv-x="1792" d="M69 741h1q16 126 58.5 241.5t115 217t167.5 176t223.5 117.5t276.5 43q231 0 414 -105.5t294 -303.5q104 -187 104 -442v-188h-1125q1 -111 53.5 -192.5t136.5 -122.5t189.5 -57t213 -3t208 46.5t173.5 84.5v-377q-92 -55 -229.5 -92t-312.5 -38t-316 53 q-189 73 -311.5 249t-124.5 372q-3 242 111 412t325 268q-48 -60 -78 -125.5t-46 -159.5h635q8 77 -8 140t-47 101.5t-70.5 66.5t-80.5 41t-75 20.5t-56 8.5l-22 1q-135 -5 -259.5 -44.5t-223.5 -104.5t-176 -140.5t-138 -163.5z" /> - <glyph glyph-name="_603" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_603" unicode="" horiz-adv-x="2304" d="M0 32v608h2304v-608q0 -66 -47 -113t-113 -47h-1984q-66 0 -113 47t-47 113zM640 256v-128h384v128h-384zM256 256v-128h256v128h-256zM2144 1408q66 0 113 -47t47 -113v-224h-2304v224q0 66 47 113t113 47h1984z" /> - <glyph glyph-name="_604" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_604" unicode="" horiz-adv-x="1792" d="M1584 246l-218 111q-74 -120 -196.5 -189t-263.5 -69q-147 0 -271 72t-196 196t-72 270q0 110 42.5 209.5t115 172t172 115t209.5 42.5q131 0 247.5 -60.5t192.5 -168.5l215 125q-110 169 -286.5 265t-378.5 96q-161 0 -308 -63t-253 -169t-169 -253t-63 -308t63 -308 t169 -253t253 -169t308 -63q213 0 397.5 107t290.5 292zM1030 643l693 -352q-116 -253 -334.5 -400t-492.5 -147q-182 0 -348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71q260 0 470.5 -133.5t335.5 -366.5zM1543 640h-39v-160h-96v352h136q32 0 54.5 -20 t28.5 -48t1 -56t-27.5 -48t-57.5 -20z" /> - <glyph glyph-name="uniF285" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF285" unicode="" horiz-adv-x="1792" d="M1427 827l-614 386l92 151h855zM405 562l-184 116v858l1183 -743zM1424 697l147 -95v-858l-532 335zM1387 718l-500 -802h-855l356 571z" /> - <glyph glyph-name="uniF286" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF286" unicode="" horiz-adv-x="1792" d="M640 528v224q0 16 -16 16h-96q-16 0 -16 -16v-224q0 -16 16 -16h96q16 0 16 16zM1152 528v224q0 16 -16 16h-96q-16 0 -16 -16v-224q0 -16 16 -16h96q16 0 16 16zM1664 496v-752h-640v320q0 80 -56 136t-136 56t-136 -56t-56 -136v-320h-640v752q0 16 16 16h96 q16 0 16 -16v-112h128v624q0 16 16 16h96q16 0 16 -16v-112h128v112q0 16 16 16h96q16 0 16 -16v-112h128v112q0 6 2.5 9.5t8.5 5t9.5 2t11.5 0t9 -0.5v391q-32 15 -32 50q0 23 16.5 39t38.5 16t38.5 -16t16.5 -39q0 -35 -32 -50v-17q45 10 83 10q21 0 59.5 -7.5t54.5 -7.5 q17 0 47 7.5t37 7.5q16 0 16 -16v-210q0 -15 -35 -21.5t-62 -6.5q-18 0 -54.5 7.5t-55.5 7.5q-40 0 -90 -12v-133q1 0 9 0.5t11.5 0t9.5 -2t8.5 -5t2.5 -9.5v-112h128v112q0 16 16 16h96q16 0 16 -16v-112h128v112q0 16 16 16h96q16 0 16 -16v-624h128v112q0 16 16 16h96 q16 0 16 -16z" /> - <glyph glyph-name="_607" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_607" unicode="" horiz-adv-x="2304" d="M2288 731q16 -8 16 -27t-16 -27l-320 -192q-8 -5 -16 -5q-9 0 -16 4q-16 10 -16 28v128h-858q37 -58 83 -165q16 -37 24.5 -55t24 -49t27 -47t27 -34t31.5 -26t33 -8h96v96q0 14 9 23t23 9h320q14 0 23 -9t9 -23v-320q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23v96h-96 q-32 0 -61 10t-51 23.5t-45 40.5t-37 46t-33.5 57t-28.5 57.5t-28 60.5q-23 53 -37 81.5t-36 65t-44.5 53.5t-46.5 17h-360q-22 -84 -91 -138t-157 -54q-106 0 -181 75t-75 181t75 181t181 75q88 0 157 -54t91 -138h104q24 0 46.5 17t44.5 53.5t36 65t37 81.5q19 41 28 60.5 t28.5 57.5t33.5 57t37 46t45 40.5t51 23.5t61 10h107q21 57 70 92.5t111 35.5q80 0 136 -56t56 -136t-56 -136t-136 -56q-62 0 -111 35.5t-70 92.5h-107q-17 0 -33 -8t-31.5 -26t-27 -34t-27 -47t-24 -49t-24.5 -55q-46 -107 -83 -165h1114v128q0 18 16 28t32 -1z" /> - <glyph glyph-name="_608" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_608" unicode="" horiz-adv-x="1792" d="M1150 774q0 -56 -39.5 -95t-95.5 -39h-253v269h253q56 0 95.5 -39.5t39.5 -95.5zM1329 774q0 130 -91.5 222t-222.5 92h-433v-896h180v269h253q130 0 222 91.5t92 221.5zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348 t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="_609" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_609" unicode="" horiz-adv-x="2304" d="M1645 438q0 59 -34 106.5t-87 68.5q-7 -45 -23 -92q-7 -24 -27.5 -38t-44.5 -14q-12 0 -24 3q-31 10 -45 38.5t-4 58.5q23 71 23 143q0 123 -61 227.5t-166 165.5t-228 61q-134 0 -247 -73t-167 -194q108 -28 188 -106q22 -23 22 -55t-22 -54t-54 -22t-55 22 q-75 75 -180 75q-106 0 -181 -74.5t-75 -180.5t75 -180.5t181 -74.5h1046q79 0 134.5 55.5t55.5 133.5zM1798 438q0 -142 -100.5 -242t-242.5 -100h-1046q-169 0 -289 119.5t-120 288.5q0 153 100 267t249 136q62 184 221 298t354 114q235 0 408.5 -158.5t196.5 -389.5 q116 -25 192.5 -118.5t76.5 -214.5zM2048 438q0 -175 -97 -319q-23 -33 -64 -33q-24 0 -43 13q-26 17 -32 48.5t12 57.5q71 104 71 233t-71 233q-18 26 -12 57t32 49t57.5 11.5t49.5 -32.5q97 -142 97 -318zM2304 438q0 -244 -134 -443q-23 -34 -64 -34q-23 0 -42 13 q-26 18 -32.5 49t11.5 57q108 164 108 358q0 195 -108 357q-18 26 -11.5 57.5t32.5 48.5q26 18 57 12t49 -33q134 -198 134 -442z" /> - <glyph glyph-name="_610" unicode="" + <glyph glyph-name="_610" unicode="" d="M1500 -13q0 -89 -63 -152.5t-153 -63.5t-153.5 63.5t-63.5 152.5q0 90 63.5 153.5t153.5 63.5t153 -63.5t63 -153.5zM1267 268q-115 -15 -192.5 -102.5t-77.5 -205.5q0 -74 33 -138q-146 -78 -379 -78q-109 0 -201 21t-153.5 54.5t-110.5 76.5t-76 85t-44.5 83 t-23.5 66.5t-6 39.5q0 19 4.5 42.5t18.5 56t36.5 58t64 43.5t94.5 18t94 -17.5t63 -41t35.5 -53t17.5 -49t4 -33.5q0 -34 -23 -81q28 -27 82 -42t93 -17l40 -1q115 0 190 51t75 133q0 26 -9 48.5t-31.5 44.5t-49.5 41t-74 44t-93.5 47.5t-119.5 56.5q-28 13 -43 20 q-116 55 -187 100t-122.5 102t-72 125.5t-20.5 162.5q0 78 20.5 150t66 137.5t112.5 114t166.5 77t221.5 28.5q120 0 220 -26t164.5 -67t109.5 -94t64 -105.5t19 -103.5q0 -46 -15 -82.5t-36.5 -58t-48.5 -36t-49 -19.5t-39 -5h-8h-32t-39 5t-44 14t-41 28t-37 46t-24 70.5 t-10 97.5q-15 16 -59 25.5t-81 10.5l-37 1q-68 0 -117.5 -31t-70.5 -70t-21 -76q0 -24 5 -43t24 -46t53 -51t97 -53.5t150 -58.5q76 -25 138.5 -53.5t109 -55.5t83 -59t60.5 -59.5t41 -62.5t26.5 -62t14.5 -63.5t6 -62t1 -62.5z" /> - <glyph glyph-name="_611" unicode="" + <glyph glyph-name="_611" unicode="" d="M704 352v576q0 14 -9 23t-23 9h-256q-14 0 -23 -9t-9 -23v-576q0 -14 9 -23t23 -9h256q14 0 23 9t9 23zM1152 352v576q0 14 -9 23t-23 9h-256q-14 0 -23 -9t-9 -23v-576q0 -14 9 -23t23 -9h256q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103 t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="_612" unicode="" + <glyph glyph-name="_612" unicode="" d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM768 96q148 0 273 73t198 198t73 273t-73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273 t73 -273t198 -198t273 -73zM864 320q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-192zM480 320q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-192z" /> - <glyph glyph-name="_613" unicode="" + <glyph glyph-name="_613" unicode="" d="M1088 352v576q0 14 -9 23t-23 9h-576q-14 0 -23 -9t-9 -23v-576q0 -14 9 -23t23 -9h576q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5 t103 -385.5z" /> - <glyph glyph-name="_614" unicode="" + <glyph glyph-name="_614" unicode="" d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM768 96q148 0 273 73t198 198t73 273t-73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273 t73 -273t198 -198t273 -73zM480 320q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h576q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-576z" /> - <glyph glyph-name="_615" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_615" unicode="" horiz-adv-x="1792" d="M1757 128l35 -313q3 -28 -16 -50q-19 -21 -48 -21h-1664q-29 0 -48 21q-19 22 -16 50l35 313h1722zM1664 967l86 -775h-1708l86 775q3 24 21 40.5t43 16.5h256v-128q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5v128h384v-128q0 -53 37.5 -90.5t90.5 -37.5 t90.5 37.5t37.5 90.5v128h256q25 0 43 -16.5t21 -40.5zM1280 1152v-256q0 -26 -19 -45t-45 -19t-45 19t-19 45v256q0 106 -75 181t-181 75t-181 -75t-75 -181v-256q0 -26 -19 -45t-45 -19t-45 19t-19 45v256q0 159 112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z" /> - <glyph glyph-name="_616" unicode="" horiz-adv-x="2048" + <glyph glyph-name="_616" unicode="" horiz-adv-x="2048" d="M1920 768q53 0 90.5 -37.5t37.5 -90.5t-37.5 -90.5t-90.5 -37.5h-15l-115 -662q-8 -46 -44 -76t-82 -30h-1280q-46 0 -82 30t-44 76l-115 662h-15q-53 0 -90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5h1792zM485 -32q26 2 43.5 22.5t15.5 46.5l-32 416q-2 26 -22.5 43.5 t-46.5 15.5t-43.5 -22.5t-15.5 -46.5l32 -416q2 -25 20.5 -42t43.5 -17h5zM896 32v416q0 26 -19 45t-45 19t-45 -19t-19 -45v-416q0 -26 19 -45t45 -19t45 19t19 45zM1280 32v416q0 26 -19 45t-45 19t-45 -19t-19 -45v-416q0 -26 19 -45t45 -19t45 19t19 45zM1632 27l32 416 q2 26 -15.5 46.5t-43.5 22.5t-46.5 -15.5t-22.5 -43.5l-32 -416q-2 -26 15.5 -46.5t43.5 -22.5h5q25 0 43.5 17t20.5 42zM476 1244l-93 -412h-132l101 441q19 88 89 143.5t160 55.5h167q0 26 19 45t45 19h384q26 0 45 -19t19 -45h167q90 0 160 -55.5t89 -143.5l101 -441 h-132l-93 412q-11 44 -45.5 72t-79.5 28h-167q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45h-167q-45 0 -79.5 -28t-45.5 -72z" /> - <glyph glyph-name="_617" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_617" unicode="" horiz-adv-x="1792" d="M991 512l64 256h-254l-64 -256h254zM1759 1016l-56 -224q-7 -24 -31 -24h-327l-64 -256h311q15 0 25 -12q10 -14 6 -28l-56 -224q-5 -24 -31 -24h-327l-81 -328q-7 -24 -31 -24h-224q-16 0 -26 12q-9 12 -6 28l78 312h-254l-81 -328q-7 -24 -31 -24h-225q-15 0 -25 12 q-9 12 -6 28l78 312h-311q-15 0 -25 12q-9 12 -6 28l56 224q7 24 31 24h327l64 256h-311q-15 0 -25 12q-10 14 -6 28l56 224q5 24 31 24h327l81 328q7 24 32 24h224q15 0 25 -12q9 -12 6 -28l-78 -312h254l81 328q7 24 32 24h224q15 0 25 -12q9 -12 6 -28l-78 -312h311 q15 0 25 -12q9 -12 6 -28z" /> - <glyph glyph-name="_618" unicode="" + <glyph glyph-name="_618" unicode="" d="M841 483l148 -148l-149 -149zM840 1094l149 -149l-148 -148zM710 -130l464 464l-306 306l306 306l-464 464v-611l-255 255l-93 -93l320 -321l-320 -321l93 -93l255 255v-611zM1429 640q0 -209 -32 -365.5t-87.5 -257t-140.5 -162.5t-181.5 -86.5t-219.5 -24.5 t-219.5 24.5t-181.5 86.5t-140.5 162.5t-87.5 257t-32 365.5t32 365.5t87.5 257t140.5 162.5t181.5 86.5t219.5 24.5t219.5 -24.5t181.5 -86.5t140.5 -162.5t87.5 -257t32 -365.5z" /> - <glyph glyph-name="_619" unicode="" horiz-adv-x="1024" + <glyph glyph-name="_619" unicode="" horiz-adv-x="1024" d="M596 113l173 172l-173 172v-344zM596 823l173 172l-173 172v-344zM628 640l356 -356l-539 -540v711l-297 -296l-108 108l372 373l-372 373l108 108l297 -296v711l539 -540z" /> - <glyph glyph-name="_620" unicode="" + <glyph glyph-name="_620" unicode="" d="M1280 256q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM512 1024q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM1536 256q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5 t112.5 -271.5zM1440 1344q0 -20 -13 -38l-1056 -1408q-19 -26 -51 -26h-160q-26 0 -45 19t-19 45q0 20 13 38l1056 1408q19 26 51 26h160q26 0 45 -19t19 -45zM768 1024q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5 t271.5 -112.5t112.5 -271.5z" /> - <glyph glyph-name="_621" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_621" unicode="" horiz-adv-x="1792" d="M104 830l792 -1015l-868 630q-18 13 -25 34.5t0 42.5l101 308v0zM566 830h660l-330 -1015v0zM368 1442l198 -612h-462l198 612q8 23 33 23t33 -23zM1688 830l101 -308q7 -21 0 -42.5t-25 -34.5l-868 -630l792 1015v0zM1688 830h-462l198 612q8 23 33 23t33 -23z" /> - <glyph glyph-name="_622" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_622" unicode="" horiz-adv-x="1792" d="M384 704h160v224h-160v-224zM1221 372v92q-104 -36 -243 -38q-135 -1 -259.5 46.5t-220.5 122.5l1 -96q88 -80 212 -128.5t272 -47.5q129 0 238 49zM640 704h640v224h-640v-224zM1792 736q0 -187 -99 -352q89 -102 89 -229q0 -157 -129.5 -268t-313.5 -111 q-122 0 -225 52.5t-161 140.5q-19 -1 -57 -1t-57 1q-58 -88 -161 -140.5t-225 -52.5q-184 0 -313.5 111t-129.5 268q0 127 89 229q-99 165 -99 352q0 209 120 385.5t326.5 279.5t449.5 103t449.5 -103t326.5 -279.5t120 -385.5z" /> - <glyph glyph-name="_623" unicode="" + <glyph glyph-name="_623" unicode="" d="M515 625v-128h-252v128h252zM515 880v-127h-252v127h252zM1273 369v-128h-341v128h341zM1273 625v-128h-672v128h672zM1273 880v-127h-672v127h672zM1408 20v1240q0 8 -6 14t-14 6h-32l-378 -256l-210 171l-210 -171l-378 256h-32q-8 0 -14 -6t-6 -14v-1240q0 -8 6 -14 t14 -6h1240q8 0 14 6t6 14zM553 1130l185 150h-406zM983 1130l221 150h-406zM1536 1260v-1240q0 -62 -43 -105t-105 -43h-1240q-62 0 -105 43t-43 105v1240q0 62 43 105t105 43h1240q62 0 105 -43t43 -105z" /> - <glyph glyph-name="_624" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_624" unicode="" horiz-adv-x="1792" d="M896 720q-104 196 -160 278q-139 202 -347 318q-34 19 -70 36q-89 40 -94 32t34 -38l39 -31q62 -43 112.5 -93.5t94.5 -116.5t70.5 -113t70.5 -131q9 -17 13 -25q44 -84 84 -153t98 -154t115.5 -150t131 -123.5t148.5 -90.5q153 -66 154 -60q1 3 -49 37q-53 36 -81 57 q-77 58 -179 211t-185 310zM549 177q-76 60 -132.5 125t-98 143.5t-71 154.5t-58.5 186t-52 209t-60.5 252t-76.5 289q273 0 497.5 -36t379 -92t271 -144.5t185.5 -172.5t110 -198.5t56 -199.5t12.5 -198.5t-9.5 -173t-20 -143.5t-13 -107l323 -327h-104l-281 285 q-22 -2 -91.5 -14t-121.5 -19t-138 -6t-160.5 17t-167.5 59t-179 111z" /> - <glyph glyph-name="_625" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_625" unicode="" horiz-adv-x="1792" d="M1374 879q-6 26 -28.5 39.5t-48.5 7.5q-261 -62 -401 -62t-401 62q-26 6 -48.5 -7.5t-28.5 -39.5t7.5 -48.5t39.5 -28.5q194 -46 303 -58q-2 -158 -15.5 -269t-26.5 -155.5t-41 -115.5l-9 -21q-10 -25 1 -49t36 -34q9 -4 23 -4q44 0 60 41l8 20q54 139 71 259h42 q17 -120 71 -259l8 -20q16 -41 60 -41q14 0 23 4q25 10 36 34t1 49l-9 21q-28 71 -41 115.5t-26.5 155.5t-15.5 269q109 12 303 58q26 6 39.5 28.5t7.5 48.5zM1024 1024q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5z M1600 640q0 -143 -55.5 -273.5t-150 -225t-225 -150t-273.5 -55.5t-273.5 55.5t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5zM896 1408q-156 0 -298 -61t-245 -164t-164 -245t-61 -298t61 -298 t164 -245t245 -164t298 -61t298 61t245 164t164 245t61 298t-61 298t-164 245t-245 164t-298 61zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="_626" unicode="" + <glyph glyph-name="_626" unicode="" d="M1438 723q34 -35 29 -82l-44 -551q-4 -42 -34.5 -70t-71.5 -28q-6 0 -9 1q-44 3 -72.5 36.5t-25.5 77.5l35 429l-143 -8q55 -113 55 -240q0 -216 -148 -372l-137 137q91 101 91 235q0 145 -102.5 248t-247.5 103q-134 0 -236 -92l-137 138q120 114 284 141l264 300 l-149 87l-181 -161q-33 -30 -77 -27.5t-73 35.5t-26.5 77t34.5 73l239 213q26 23 60 26.5t64 -14.5l488 -283q36 -21 48 -68q17 -67 -26 -117l-205 -232l371 20q49 3 83 -32zM1240 1180q-74 0 -126 52t-52 126t52 126t126 52t126.5 -52t52.5 -126t-52.5 -126t-126.5 -52z M613 -62q106 0 196 61l139 -139q-146 -116 -335 -116q-148 0 -273.5 73t-198.5 198t-73 273q0 188 116 336l139 -139q-60 -88 -60 -197q0 -145 102.5 -247.5t247.5 -102.5z" /> - <glyph glyph-name="_627" unicode="" + <glyph glyph-name="_627" unicode="" d="M880 336v-160q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v160q0 14 9 23t23 9h160q14 0 23 -9t9 -23zM1136 832q0 -50 -15 -90t-45.5 -69t-52 -44t-59.5 -36q-32 -18 -46.5 -28t-26 -24t-11.5 -29v-32q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v68q0 35 10.5 64.5 t24 47.5t39 35.5t41 25.5t44.5 21q53 25 75 43t22 49q0 42 -43.5 71.5t-95.5 29.5q-56 0 -95 -27q-29 -20 -80 -83q-9 -12 -25 -12q-11 0 -19 6l-108 82q-10 7 -12 20t5 23q122 192 349 192q129 0 238.5 -89.5t109.5 -214.5zM768 1280q-130 0 -248.5 -51t-204 -136.5 t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5t-51 248.5t-136.5 204t-204 136.5t-248.5 51zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5 t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="_628" unicode="" horiz-adv-x="1408" + <glyph glyph-name="_628" unicode="" horiz-adv-x="1408" d="M366 1225q-64 0 -110 45.5t-46 110.5q0 64 46 109.5t110 45.5t109.5 -45.5t45.5 -109.5q0 -65 -45.5 -110.5t-109.5 -45.5zM917 583q0 -50 -30 -67.5t-63.5 -6.5t-47.5 34l-367 438q-7 12 -14 15.5t-11 1.5l-3 -3q-7 -8 4 -21l122 -139l1 -354l-161 -457 q-67 -192 -92 -234q-15 -26 -28 -32q-50 -26 -103 -1q-29 13 -41.5 43t-9.5 57q2 17 197 618l5 416l-85 -164l35 -222q4 -24 -1 -42t-14 -27.5t-19 -16t-17 -7.5l-7 -2q-19 -3 -34.5 3t-24 16t-14 22t-7.5 19.5t-2 9.5l-46 299l211 381q23 34 113 34q75 0 107 -40l424 -521 q7 -5 14 -17l3 -3l-1 -1q7 -13 7 -29zM514 433q43 -113 88.5 -225t69.5 -168l24 -55q36 -93 42 -125q11 -70 -36 -97q-35 -22 -66 -16t-51 22t-29 35h-1q-6 16 -8 25l-124 351zM1338 -159q31 -49 31 -57q0 -5 -3 -7q-9 -5 -14.5 0.5t-15.5 26t-16 30.5q-114 172 -423 661 q3 -1 7 1t7 4l3 2q11 9 11 17z" /> - <glyph glyph-name="_629" unicode="" horiz-adv-x="2304" + <glyph glyph-name="_629" unicode="" horiz-adv-x="2304" d="M504 542h171l-1 265zM1530 641q0 87 -50.5 140t-146.5 53h-54v-388h52q91 0 145 57t54 138zM956 1018l1 -756q0 -14 -9.5 -24t-23.5 -10h-216q-14 0 -23.5 10t-9.5 24v62h-291l-55 -81q-10 -15 -28 -15h-267q-21 0 -30.5 18t3.5 35l556 757q9 14 27 14h332q14 0 24 -10 t10 -24zM1783 641q0 -193 -125.5 -303t-324.5 -110h-270q-14 0 -24 10t-10 24v756q0 14 10 24t24 10h268q200 0 326 -109t126 -302zM1939 640q0 -11 -0.5 -29t-8 -71.5t-21.5 -102t-44.5 -108t-73.5 -102.5h-51q38 45 66.5 104.5t41.5 112t21 98t9 72.5l1 27q0 8 -0.5 22.5 t-7.5 60t-20 91.5t-41 111.5t-66 124.5h43q41 -47 72 -107t45.5 -111.5t23 -96t10.5 -70.5zM2123 640q0 -11 -0.5 -29t-8 -71.5t-21.5 -102t-45 -108t-74 -102.5h-51q38 45 66.5 104.5t41.5 112t21 98t9 72.5l1 27q0 8 -0.5 22.5t-7.5 60t-19.5 91.5t-40.5 111.5t-66 124.5 h43q41 -47 72 -107t45.5 -111.5t23 -96t10.5 -70.5zM2304 640q0 -11 -0.5 -29t-8 -71.5t-21.5 -102t-44.5 -108t-73.5 -102.5h-51q38 45 66 104.5t41 112t21 98t9 72.5l1 27q0 8 -0.5 22.5t-7.5 60t-19.5 91.5t-40.5 111.5t-66 124.5h43q41 -47 72 -107t45.5 -111.5t23 -96 t9.5 -70.5z" /> - <glyph glyph-name="uniF2A0" unicode="" horiz-adv-x="1408" + <glyph glyph-name="uniF2A0" unicode="" horiz-adv-x="1408" d="M617 -153q0 11 -13 58t-31 107t-20 69q-1 4 -5 26.5t-8.5 36t-13.5 21.5q-15 14 -51 14q-23 0 -70 -5.5t-71 -5.5q-34 0 -47 11q-6 5 -11 15.5t-7.5 20t-6.5 24t-5 18.5q-37 128 -37 255t37 255q1 4 5 18.5t6.5 24t7.5 20t11 15.5q13 11 47 11q24 0 71 -5.5t70 -5.5 q36 0 51 14q9 8 13.5 21.5t8.5 36t5 26.5q2 9 20 69t31 107t13 58q0 22 -43.5 52.5t-75.5 42.5q-20 8 -45 8q-34 0 -98 -18q-57 -17 -96.5 -40.5t-71 -66t-46 -70t-45.5 -94.5q-6 -12 -9 -19q-49 -107 -68 -216t-19 -244t19 -244t68 -216q56 -122 83 -161q63 -91 179 -127 l6 -2q64 -18 98 -18q25 0 45 8q32 12 75.5 42.5t43.5 52.5zM776 760q-26 0 -45 19t-19 45.5t19 45.5q37 37 37 90q0 52 -37 91q-19 19 -19 45t19 45t45 19t45 -19q75 -75 75 -181t-75 -181q-21 -19 -45 -19zM957 579q-27 0 -45 19q-19 19 -19 45t19 45q112 114 112 272 t-112 272q-19 19 -19 45t19 45t45 19t45 -19q150 -150 150 -362t-150 -362q-18 -19 -45 -19zM1138 398q-27 0 -45 19q-19 19 -19 45t19 45q90 91 138.5 208t48.5 245t-48.5 245t-138.5 208q-19 19 -19 45t19 45t45 19t45 -19q109 -109 167 -249t58 -294t-58 -294t-167 -249 q-18 -19 -45 -19z" /> - <glyph glyph-name="uniF2A1" unicode="" horiz-adv-x="2176" + <glyph glyph-name="uniF2A1" unicode="" horiz-adv-x="2176" d="M192 352q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM704 352q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM704 864q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1472 352 q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1984 352q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1472 864q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1984 864 q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1984 1376q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM384 192q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 192q0 -80 -56 -136 @@ -2356,81 +2356,81 @@ t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM384 704q0 -80 -56 -136t t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1664 192q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 1216q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM2176 192q0 -80 -56 -136t-136 -56t-136 56 t-56 136t56 136t136 56t136 -56t56 -136zM1664 704q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM2176 704q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1664 1216q0 -80 -56 -136t-136 -56t-136 56t-56 136 t56 136t136 56t136 -56t56 -136zM2176 1216q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136z" /> - <glyph glyph-name="uniF2A2" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2A2" unicode="" horiz-adv-x="1792" d="M128 -192q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45zM320 0q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45zM365 365l256 -256l-90 -90l-256 256zM704 384q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45z M1411 704q0 -59 -11.5 -108.5t-37.5 -93.5t-44 -67.5t-53 -64.5q-31 -35 -45.5 -54t-33.5 -50t-26.5 -64t-7.5 -74q0 -159 -112.5 -271.5t-271.5 -112.5q-26 0 -45 19t-19 45t19 45t45 19q106 0 181 75t75 181q0 57 11.5 105.5t37 91t43.5 66.5t52 63q40 46 59.5 72 t37.5 74.5t18 103.5q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5q0 -26 -19 -45t-45 -19t-45 19t-19 45q0 117 45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5zM896 576q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45 t45 19t45 -19t19 -45zM1184 704q0 -26 -19 -45t-45 -19t-45 19t-19 45q0 93 -65.5 158.5t-158.5 65.5q-92 0 -158 -65.5t-66 -158.5q0 -26 -19 -45t-45 -19t-45 19t-19 45q0 146 103 249t249 103t249 -103t103 -249zM1578 993q10 -25 -1 -49t-36 -34q-9 -4 -23 -4 q-19 0 -35.5 11t-23.5 30q-68 178 -224 295q-21 16 -25 42t12 47q17 21 43 25t47 -12q183 -137 266 -351zM1788 1074q9 -25 -1.5 -49t-35.5 -34q-11 -4 -23 -4q-44 0 -60 41q-92 238 -297 393q-22 16 -25.5 42t12.5 47q16 22 42 25.5t47 -12.5q235 -175 341 -449z" /> - <glyph glyph-name="uniF2A3" unicode="" horiz-adv-x="2304" + <glyph glyph-name="uniF2A3" unicode="" horiz-adv-x="2304" d="M1032 576q-59 2 -84 55q-17 34 -48 53.5t-68 19.5q-53 0 -90.5 -37.5t-37.5 -90.5q0 -56 36 -89l10 -8q34 -31 82 -31q37 0 68 19.5t48 53.5q25 53 84 55zM1600 704q0 56 -36 89l-10 8q-34 31 -82 31q-37 0 -68 -19.5t-48 -53.5q-25 -53 -84 -55q59 -2 84 -55 q17 -34 48 -53.5t68 -19.5q53 0 90.5 37.5t37.5 90.5zM1174 925q-17 -35 -55 -48t-73 4q-62 31 -134 31q-51 0 -99 -17q3 0 9.5 0.5t9.5 0.5q92 0 170.5 -50t118.5 -133q17 -36 3.5 -73.5t-49.5 -54.5q-18 -9 -39 -9q21 0 39 -9q36 -17 49.5 -54.5t-3.5 -73.5 q-40 -83 -118.5 -133t-170.5 -50h-6q-16 2 -44 4l-290 27l-239 -120q-14 -7 -29 -7q-40 0 -57 35l-160 320q-11 23 -4 47.5t29 37.5l209 119l148 267q17 155 91.5 291.5t195.5 236.5q31 25 70.5 21.5t64.5 -34.5t21.5 -70t-34.5 -65q-70 -59 -117 -128q123 84 267 101 q40 5 71.5 -19t35.5 -64q5 -40 -19 -71.5t-64 -35.5q-84 -10 -159 -55q46 10 99 10q115 0 218 -50q36 -18 49 -55.5t-5 -73.5zM2137 1085l160 -320q11 -23 4 -47.5t-29 -37.5l-209 -119l-148 -267q-17 -155 -91.5 -291.5t-195.5 -236.5q-26 -22 -61 -22q-45 0 -74 35 q-25 31 -21.5 70t34.5 65q70 59 117 128q-123 -84 -267 -101q-4 -1 -12 -1q-36 0 -63.5 24t-31.5 60q-5 40 19 71.5t64 35.5q84 10 159 55q-46 -10 -99 -10q-115 0 -218 50q-36 18 -49 55.5t5 73.5q17 35 55 48t73 -4q62 -31 134 -31q51 0 99 17q-3 0 -9.5 -0.5t-9.5 -0.5 q-92 0 -170.5 50t-118.5 133q-17 36 -3.5 73.5t49.5 54.5q18 9 39 9q-21 0 -39 9q-36 17 -49.5 54.5t3.5 73.5q40 83 118.5 133t170.5 50h6h1q14 -2 42 -4l291 -27l239 120q14 7 29 7q40 0 57 -35z" /> - <glyph glyph-name="uniF2A4" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2A4" unicode="" horiz-adv-x="1792" d="M1056 704q0 -26 19 -45t45 -19t45 19t19 45q0 146 -103 249t-249 103t-249 -103t-103 -249q0 -26 19 -45t45 -19t45 19t19 45q0 93 66 158.5t158 65.5t158 -65.5t66 -158.5zM835 1280q-117 0 -223.5 -45.5t-184 -123t-123 -184t-45.5 -223.5q0 -26 19 -45t45 -19t45 19 t19 45q0 185 131.5 316.5t316.5 131.5t316.5 -131.5t131.5 -316.5q0 -55 -18 -103.5t-37.5 -74.5t-59.5 -72q-34 -39 -52 -63t-43.5 -66.5t-37 -91t-11.5 -105.5q0 -106 -75 -181t-181 -75q-26 0 -45 -19t-19 -45t19 -45t45 -19q159 0 271.5 112.5t112.5 271.5q0 41 7.5 74 t26.5 64t33.5 50t45.5 54q35 41 53 64.5t44 67.5t37.5 93.5t11.5 108.5q0 117 -45.5 223.5t-123 184t-184 123t-223.5 45.5zM591 561l226 -226l-579 -579q-12 -12 -29 -12t-29 12l-168 168q-12 12 -12 29t12 29zM1612 1524l168 -168q12 -12 12 -29t-12 -30l-233 -233 l-26 -25l-71 -71q-66 153 -195 258l91 91l207 207q13 12 30 12t29 -12z" /> - <glyph glyph-name="uniF2A5" unicode="" + <glyph glyph-name="uniF2A5" unicode="" d="M866 1021q0 -27 -13 -94q-11 -50 -31.5 -150t-30.5 -150q-2 -11 -4.5 -12.5t-13.5 -2.5q-20 -2 -31 -2q-58 0 -84 49.5t-26 113.5q0 88 35 174t103 124q28 14 51 14q28 0 36.5 -16.5t8.5 -47.5zM1352 597q0 14 -39 75.5t-52 66.5q-21 8 -34 8q-91 0 -226 -77l-2 2 q3 22 27.5 135t24.5 178q0 233 -242 233q-24 0 -68 -6q-94 -17 -168.5 -89.5t-111.5 -166.5t-37 -189q0 -146 80.5 -225t227.5 -79q25 0 25 -3t-1 -5q-4 -34 -26 -117q-14 -52 -51.5 -101t-82.5 -49q-42 0 -42 47q0 24 10.5 47.5t25 39.5t29.5 28.5t26 20t11 8.5q0 3 -7 10 q-24 22 -58.5 36.5t-65.5 14.5q-35 0 -63.5 -34t-41 -75t-12.5 -75q0 -88 51.5 -142t138.5 -54q82 0 155 53t117.5 126t65.5 153q6 22 15.5 66.5t14.5 66.5q3 12 14 18q118 60 227 60q48 0 127 -18q1 -1 4 -1q5 0 9.5 4.5t4.5 8.5zM1536 1120v-960q0 -119 -84.5 -203.5 t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="uniF2A6" unicode="" horiz-adv-x="1535" + <glyph glyph-name="uniF2A6" unicode="" horiz-adv-x="1535" d="M744 1231q0 24 -2 38.5t-8.5 30t-21 23t-37.5 7.5q-39 0 -78 -23q-105 -58 -159 -190.5t-54 -269.5q0 -44 8.5 -85.5t26.5 -80.5t52.5 -62.5t81.5 -23.5q4 0 18 -0.5t20 0t16 3t15 8.5t7 16q16 77 48 231.5t48 231.5q19 91 19 146zM1498 575q0 -7 -7.5 -13.5t-15.5 -6.5 l-6 1q-22 3 -62 11t-72 12.5t-63 4.5q-167 0 -351 -93q-15 -8 -21 -27q-10 -36 -24.5 -105.5t-22.5 -100.5q-23 -91 -70 -179.5t-112.5 -164.5t-154.5 -123t-185 -47q-135 0 -214.5 83.5t-79.5 219.5q0 53 19.5 117t63 116.5t97.5 52.5q38 0 120 -33.5t83 -61.5 q0 -1 -16.5 -12.5t-39.5 -31t-46 -44.5t-39 -61t-16 -74q0 -33 16.5 -53t48.5 -20q45 0 85 31.5t66.5 78t48 105.5t32.5 107t16 90v9q0 2 -3.5 3.5t-8.5 1.5h-10t-10 -0.5t-6 -0.5q-227 0 -352 122.5t-125 348.5q0 108 34.5 221t96 210t156 167.5t204.5 89.5q52 9 106 9 q374 0 374 -360q0 -98 -38 -273t-43 -211l3 -3q101 57 182.5 88t167.5 31q22 0 53 -13q19 -7 80 -102.5t61 -116.5z" /> - <glyph glyph-name="uniF2A7" unicode="" horiz-adv-x="1664" + <glyph glyph-name="uniF2A7" unicode="" horiz-adv-x="1664" d="M831 863q32 0 59 -18l222 -148q61 -40 110 -97l146 -170q40 -46 29 -106l-72 -413q-6 -32 -29.5 -53.5t-55.5 -25.5l-527 -56l-352 -32h-9q-39 0 -67.5 28t-28.5 68q0 37 27 64t65 32l260 32h-448q-41 0 -69.5 30t-26.5 71q2 39 32 65t69 26l442 1l-521 64q-41 5 -66 37 t-19 73q6 35 34.5 57.5t65.5 22.5h10l481 -60l-351 94q-38 10 -62 41.5t-18 68.5q6 36 33 58.5t62 22.5q6 0 20 -2l448 -96l217 -37q1 0 3 -0.5t3 -0.5q23 0 30.5 23t-12.5 36l-186 125q-35 23 -42 63.5t18 73.5q27 38 76 38zM761 661l186 -125l-218 37l-5 2l-36 38 l-238 262q-1 1 -2.5 3.5t-2.5 3.5q-24 31 -18.5 70t37.5 64q31 23 68 17.5t64 -33.5l142 -147q-2 -1 -5 -3.5t-4 -4.5q-32 -45 -23 -99t55 -85zM1648 1115l15 -266q4 -73 -11 -147l-48 -219q-12 -59 -67 -87l-106 -54q2 62 -39 109l-146 170q-53 61 -117 103l-222 148 q-34 23 -76 23q-51 0 -88 -37l-235 312q-25 33 -18 73.5t41 63.5q33 22 71.5 14t62.5 -40l266 -352l-262 455q-21 35 -10.5 75t47.5 59q35 18 72.5 6t57.5 -46l241 -420l-136 337q-15 35 -4.5 74t44.5 56q37 19 76 6t56 -51l193 -415l101 -196q8 -15 23 -17.5t27 7.5t11 26 l-12 224q-2 41 26 71t69 31q39 0 67 -28.5t30 -67.5z" /> - <glyph glyph-name="uniF2A8" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2A8" unicode="" horiz-adv-x="1792" d="M335 180q-2 0 -6 2q-86 57 -168.5 145t-139.5 180q-21 30 -21 69q0 9 2 19t4 18t7 18t8.5 16t10.5 17t10 15t12 15.5t11 14.5q184 251 452 365q-110 198 -110 211q0 19 17 29q116 64 128 64q18 0 28 -16l124 -229q92 19 192 19q266 0 497.5 -137.5t378.5 -369.5 q20 -31 20 -69t-20 -69q-91 -142 -218.5 -253.5t-278.5 -175.5q110 -198 110 -211q0 -20 -17 -29q-116 -64 -127 -64q-19 0 -29 16l-124 229l-64 119l-444 820l7 7q-58 -24 -99 -47q3 -5 127 -234t243 -449t119 -223q0 -7 -9 -9q-13 -3 -72 -3q-57 0 -60 7l-456 841 q-39 -28 -82 -68q24 -43 214 -393.5t190 -354.5q0 -10 -11 -10q-14 0 -82.5 22t-72.5 28l-106 197l-224 413q-44 -53 -78 -106q2 -3 18 -25t23 -34l176 -327q0 -10 -10 -10zM1165 282l49 -91q273 111 450 385q-180 277 -459 389q67 -64 103 -148.5t36 -176.5 q0 -106 -47 -200.5t-132 -157.5zM848 896q0 -20 14 -34t34 -14q86 0 147 -61t61 -147q0 -20 14 -34t34 -14t34 14t14 34q0 126 -89 215t-215 89q-20 0 -34 -14t-14 -34zM1214 961l-9 4l7 -7z" /> - <glyph glyph-name="uniF2A9" unicode="" horiz-adv-x="1280" + <glyph glyph-name="uniF2A9" unicode="" horiz-adv-x="1280" d="M1050 430q0 -215 -147 -374q-148 -161 -378 -161q-232 0 -378 161q-147 159 -147 374q0 147 68 270.5t189 196.5t268 73q96 0 182 -31q-32 -62 -39 -126q-66 28 -143 28q-167 0 -280.5 -123t-113.5 -291q0 -170 112.5 -288.5t281.5 -118.5t281 118.5t112 288.5 q0 89 -32 166q66 13 123 49q41 -98 41 -212zM846 619q0 -192 -79.5 -345t-238.5 -253l-14 -1q-29 0 -62 5q83 32 146.5 102.5t99.5 154.5t58.5 189t30 192.5t7.5 178.5q0 69 -3 103q55 -160 55 -326zM791 947v-2q-73 214 -206 440q88 -59 142.5 -186.5t63.5 -251.5z M1035 744q-83 0 -160 75q218 120 290 247q19 37 21 56q-42 -94 -139.5 -166.5t-204.5 -97.5q-35 54 -35 113q0 37 17 79t43 68q46 44 157 74q59 16 106 58.5t74 100.5q74 -105 74 -253q0 -109 -24 -170q-32 -77 -88.5 -130.5t-130.5 -53.5z" /> - <glyph glyph-name="uniF2AA" unicode="" + <glyph glyph-name="uniF2AA" unicode="" d="M1050 495q0 78 -28 147q-41 -25 -85 -34q22 -50 22 -114q0 -117 -77 -198.5t-193 -81.5t-193.5 81.5t-77.5 198.5q0 115 78 199.5t193 84.5q53 0 98 -19q4 43 27 87q-60 21 -125 21q-154 0 -257.5 -108.5t-103.5 -263.5t103.5 -261t257.5 -106t257.5 106.5t103.5 260.5z M872 850q2 -24 2 -71q0 -63 -5 -123t-20.5 -132.5t-40.5 -130t-68.5 -106t-100.5 -70.5q21 -3 42 -3h10q219 139 219 411q0 116 -38 225zM872 850q-4 80 -44 171.5t-98 130.5q92 -156 142 -302zM1207 955q0 102 -51 174q-41 -86 -124 -109q-69 -19 -109 -53.5t-40 -99.5 q0 -40 24 -77q74 17 140.5 67t95.5 115q-4 -52 -74.5 -111.5t-138.5 -97.5q52 -52 110 -52q51 0 90 37t60 90q17 42 17 117zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5 t84.5 -203.5z" /> - <glyph glyph-name="uniF2AB" unicode="" + <glyph glyph-name="uniF2AB" unicode="" d="M1279 388q0 22 -22 27q-67 15 -118 59t-80 108q-7 19 -7 25q0 15 19.5 26t43 17t43 20.5t19.5 36.5q0 19 -18.5 31.5t-38.5 12.5q-12 0 -32 -8t-31 -8q-4 0 -12 2q5 95 5 114q0 79 -17 114q-36 78 -103 121.5t-152 43.5q-199 0 -275 -165q-17 -35 -17 -114q0 -19 5 -114 q-4 -2 -14 -2q-12 0 -32 7.5t-30 7.5q-21 0 -38.5 -12t-17.5 -32q0 -21 19.5 -35.5t43 -20.5t43 -17t19.5 -26q0 -6 -7 -25q-64 -138 -198 -167q-22 -5 -22 -27q0 -46 137 -68q2 -5 6 -26t11.5 -30.5t23.5 -9.5q12 0 37.5 4.5t39.5 4.5q35 0 67 -15t54 -32.5t57.5 -32.5 t76.5 -15q43 0 79 15t57.5 32.5t53.5 32.5t67 15q14 0 39.5 -4t38.5 -4q16 0 23 10t11 30t6 25q137 22 137 68zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5 t103 -385.5z" /> - <glyph glyph-name="uniF2AC" unicode="" horiz-adv-x="1664" + <glyph glyph-name="uniF2AC" unicode="" horiz-adv-x="1664" d="M848 1408q134 1 240.5 -68.5t163.5 -192.5q27 -58 27 -179q0 -47 -9 -191q14 -7 28 -7q18 0 51 13.5t51 13.5q29 0 56 -18t27 -46q0 -32 -31.5 -54t-69 -31.5t-69 -29t-31.5 -47.5q0 -15 12 -43q37 -82 102.5 -150t144.5 -101q28 -12 80 -23q28 -6 28 -35 q0 -70 -219 -103q-7 -11 -11 -39t-14 -46.5t-33 -18.5q-20 0 -62 6.5t-64 6.5q-37 0 -62 -5q-32 -5 -63 -22.5t-58 -38t-58 -40.5t-76 -33.5t-99 -13.5q-52 0 -96.5 13.5t-75 33.5t-57.5 40.5t-58 38t-62 22.5q-26 5 -63 5q-24 0 -65.5 -7.5t-58.5 -7.5q-25 0 -35 18.5 t-14 47.5t-11 40q-219 33 -219 103q0 29 28 35q52 11 80 23q78 32 144.5 101t102.5 150q12 28 12 43q0 28 -31.5 47.5t-69.5 29.5t-69.5 31.5t-31.5 52.5q0 27 26 45.5t55 18.5q15 0 48 -13t53 -13q18 0 32 7q-9 142 -9 190q0 122 27 180q64 137 172 198t264 63z" /> - <glyph glyph-name="uniF2AD" unicode="" + <glyph glyph-name="uniF2AD" unicode="" d="M1280 388q0 22 -22 27q-67 14 -118 58t-80 109q-7 14 -7 25q0 15 19.5 26t42.5 17t42.5 20.5t19.5 36.5q0 19 -18.5 31.5t-38.5 12.5q-11 0 -31 -8t-32 -8q-4 0 -12 2q5 63 5 115q0 78 -17 114q-36 78 -102.5 121.5t-152.5 43.5q-198 0 -275 -165q-18 -38 -18 -115 q0 -38 6 -114q-10 -2 -15 -2q-11 0 -31.5 8t-30.5 8q-20 0 -37.5 -12.5t-17.5 -32.5q0 -21 19.5 -35.5t42.5 -20.5t42.5 -17t19.5 -26q0 -11 -7 -25q-64 -138 -198 -167q-22 -5 -22 -27q0 -47 138 -69q2 -5 6 -26t11 -30.5t23 -9.5q13 0 38.5 5t38.5 5q35 0 67.5 -15 t54.5 -32.5t57.5 -32.5t76.5 -15q43 0 79 15t57.5 32.5t54 32.5t67.5 15q13 0 39 -4.5t39 -4.5q15 0 22.5 9.5t11.5 31t5 24.5q138 22 138 69zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960 q119 0 203.5 -84.5t84.5 -203.5z" /> - <glyph glyph-name="uniF2AE" unicode="" horiz-adv-x="2304" + <glyph glyph-name="uniF2AE" unicode="" horiz-adv-x="2304" d="M2304 1536q-69 -46 -125 -92t-89 -81t-59.5 -71.5t-37.5 -57.5t-22 -44.5t-14 -29.5q-10 -18 -35.5 -136.5t-48.5 -164.5q-15 -29 -50 -60.5t-67.5 -50.5t-72.5 -41t-48 -28q-47 -31 -151 -231q-341 14 -630 -158q-92 -53 -303 -179q47 16 86 31t55 22l15 7 q71 27 163 64.5t133.5 53.5t108 34.5t142.5 31.5q186 31 465 -7q1 0 10 -3q11 -6 14 -17t-3 -22l-194 -345q-15 -29 -47 -22q-128 24 -354 24q-146 0 -402 -44.5t-392 -46.5q-82 -1 -149 13t-107 37t-61 40t-33 34l-1 1v2q0 6 6 6q138 0 371 55q192 366 374.5 524t383.5 158 q5 0 14.5 -0.5t38 -5t55 -12t61.5 -24.5t63 -39.5t54 -59t40 -82.5l102 177q2 4 21 42.5t44.5 86.5t61 109.5t84 133.5t100.5 137q66 82 128 141.5t121.5 96.5t92.5 53.5t88 39.5z" /> - <glyph glyph-name="uniF2B0" unicode="" + <glyph glyph-name="uniF2B0" unicode="" d="M1322 640q0 -45 -5 -76l-236 14l224 -78q-19 -73 -58 -141l-214 103l177 -158q-44 -61 -107 -108l-157 178l103 -215q-61 -37 -140 -59l-79 228l14 -240q-38 -6 -76 -6t-76 6l14 238l-78 -226q-74 19 -140 59l103 215l-157 -178q-59 43 -108 108l178 158l-214 -104 q-39 69 -58 141l224 79l-237 -14q-5 42 -5 76q0 35 5 77l238 -14l-225 79q19 73 58 140l214 -104l-177 159q46 61 107 108l158 -178l-103 215q67 39 140 58l77 -224l-13 236q36 6 75 6q38 0 76 -6l-14 -237l78 225q74 -19 140 -59l-103 -214l158 178q61 -47 107 -108 l-177 -159l213 104q37 -62 58 -141l-224 -78l237 14q5 -31 5 -77zM1352 640q0 160 -78.5 295.5t-213 214t-292.5 78.5q-119 0 -227 -46.5t-186.5 -125t-124.5 -187.5t-46 -229q0 -119 46 -228t124.5 -187.5t186.5 -125t227 -46.5q158 0 292.5 78.5t213 214t78.5 294.5z M1425 1023v-766l-657 -383l-657 383v766l657 383zM768 -183l708 412v823l-708 411l-708 -411v-823zM1536 1088v-896l-768 -448l-768 448v896l768 448z" /> - <glyph glyph-name="uniF2B1" unicode="" horiz-adv-x="1664" + <glyph glyph-name="uniF2B1" unicode="" horiz-adv-x="1664" d="M339 1318h691l-26 -72h-665q-110 0 -188.5 -79t-78.5 -189v-771q0 -95 60.5 -169.5t153.5 -93.5q23 -5 98 -5v-72h-45q-140 0 -239.5 100t-99.5 240v771q0 140 99.5 240t239.5 100zM1190 1536h247l-482 -1294q-23 -61 -40.5 -103.5t-45 -98t-54 -93.5t-64.5 -78.5 t-79.5 -65t-95.5 -41t-116 -18.5v195q163 26 220 182q20 52 20 105q0 54 -20 106l-285 733h228l187 -585zM1664 978v-1111h-795q37 55 45 73h678v1038q0 85 -49.5 155t-129.5 99l25 67q101 -34 163.5 -123.5t62.5 -197.5z" /> - <glyph glyph-name="uniF2B2" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2B2" unicode="" horiz-adv-x="1792" d="M852 1227q0 -29 -17 -52.5t-45 -23.5t-45 23.5t-17 52.5t17 52.5t45 23.5t45 -23.5t17 -52.5zM688 -149v114q0 30 -20.5 51.5t-50.5 21.5t-50 -21.5t-20 -51.5v-114q0 -30 20.5 -52t49.5 -22q30 0 50.5 22t20.5 52zM860 -149v114q0 30 -20 51.5t-50 21.5t-50.5 -21.5 t-20.5 -51.5v-114q0 -30 20.5 -52t50.5 -22q29 0 49.5 22t20.5 52zM1034 -149v114q0 30 -20.5 51.5t-50.5 21.5t-50.5 -21.5t-20.5 -51.5v-114q0 -30 20.5 -52t50.5 -22t50.5 22t20.5 52zM1208 -149v114q0 30 -20.5 51.5t-50.5 21.5t-50.5 -21.5t-20.5 -51.5v-114 q0 -30 20.5 -52t50.5 -22t50.5 22t20.5 52zM1476 535q-84 -160 -232 -259.5t-323 -99.5q-123 0 -229.5 51.5t-178.5 137t-113 197.5t-41 232q0 88 21 174q-104 -175 -104 -390q0 -162 65 -312t185 -251q30 57 91 57q56 0 86 -50q32 50 87 50q56 0 86 -50q32 50 87 50t87 -50 @@ -2439,81 +2439,81 @@ t-81 -39.5t-32 -89.5q0 -51 31.5 -90.5t81.5 -39.5t81.5 39.5t31.5 90.5zM1513 884q0 q75 68 117.5 165.5t42.5 200.5zM1792 667q0 -111 -33.5 -249.5t-93.5 -204.5q-58 -64 -195 -142.5t-228 -104.5l-4 -1v-114q0 -43 -29.5 -75t-72.5 -32q-56 0 -86 50q-32 -50 -87 -50t-87 50q-30 -50 -86 -50q-55 0 -87 50q-30 -50 -86 -50q-47 0 -75 33.5t-28 81.5 q-90 -68 -198 -68q-118 0 -211 80q54 1 106 20q-113 31 -182 127q32 -7 71 -7q89 0 164 46q-192 192 -240 306q-24 56 -24 160q0 57 9 125.5t31.5 146.5t55 141t86.5 105t120 42q59 0 81 -52q19 29 42 54q2 3 12 13t13 16q10 15 23 38t25 42t28 39q87 111 211.5 177 t260.5 66q35 0 62 -4q59 64 146 64q83 0 140 -57q5 -5 5 -12q0 -5 -6 -13.5t-12.5 -16t-16 -17l-10.5 -10.5q17 -6 36 -18t19 -24q0 -6 -16 -25q157 -138 197 -378q25 30 60 30q45 0 100 -49q90 -80 90 -279z" /> - <glyph glyph-name="uniF2B3" unicode="" + <glyph glyph-name="uniF2B3" unicode="" d="M917 631q0 33 -6 64h-362v-132h217q-12 -76 -74.5 -120.5t-142.5 -44.5q-99 0 -169 71.5t-70 170.5t70 170.5t169 71.5q93 0 153 -59l104 101q-108 100 -257 100q-160 0 -272 -112.5t-112 -271.5t112 -271.5t272 -112.5q165 0 266.5 105t101.5 270zM1262 585h109v110 h-109v110h-110v-110h-110v-110h110v-110h110v110zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> - <glyph glyph-name="uniF2B4" unicode="" + <glyph glyph-name="uniF2B4" unicode="" d="M1536 1024v-839q0 -48 -49 -62q-174 -52 -338 -52q-73 0 -215.5 29.5t-227.5 29.5q-164 0 -370 -48v-338h-160v1368q-63 25 -101 81t-38 124q0 91 64 155t155 64t155 -64t64 -155q0 -68 -38 -124t-101 -81v-68q190 44 343 44q99 0 198 -15q14 -2 111.5 -22.5t149.5 -20.5 q77 0 165 18q11 2 80 21t89 19q26 0 45 -19t19 -45z" /> - <glyph glyph-name="uniF2B5" unicode="" horiz-adv-x="2304" + <glyph glyph-name="uniF2B5" unicode="" horiz-adv-x="2304" d="M192 384q40 0 56 32t0 64t-56 32t-56 -32t0 -64t56 -32zM1665 442q-10 13 -38.5 50t-41.5 54t-38 49t-42.5 53t-40.5 47t-45 49l-125 -140q-83 -94 -208.5 -92t-205.5 98q-57 69 -56.5 158t58.5 157l177 206q-22 11 -51 16.5t-47.5 6t-56.5 -0.5t-49 -1q-92 0 -158 -66 l-158 -158h-155v-544q5 0 21 0.5t22 0t19.5 -2t20.5 -4.5t17.5 -8.5t18.5 -13.5l297 -292q115 -111 227 -111q78 0 125 47q57 -20 112.5 8t72.5 85q74 -6 127 44q20 18 36 45.5t14 50.5q10 -10 43 -10q43 0 77 21t49.5 53t12 71.5t-30.5 73.5zM1824 384h96v512h-93l-157 180 q-66 76 -169 76h-167q-89 0 -146 -67l-209 -243q-28 -33 -28 -75t27 -75q43 -51 110 -52t111 49l193 218q25 23 53.5 21.5t47 -27t8.5 -56.5q16 -19 56 -63t60 -68q29 -36 82.5 -105.5t64.5 -84.5q52 -66 60 -140zM2112 384q40 0 56 32t0 64t-56 32t-56 -32t0 -64t56 -32z M2304 960v-640q0 -26 -19 -45t-45 -19h-434q-27 -65 -82 -106.5t-125 -51.5q-33 -48 -80.5 -81.5t-102.5 -45.5q-42 -53 -104.5 -81.5t-128.5 -24.5q-60 -34 -126 -39.5t-127.5 14t-117 53.5t-103.5 81l-287 282h-358q-26 0 -45 19t-19 45v672q0 26 19 45t45 19h421 q14 14 47 48t47.5 48t44 40t50.5 37.5t51 25.5t62 19.5t68 5.5h117q99 0 181 -56q82 56 181 56h167q35 0 67 -6t56.5 -14.5t51.5 -26.5t44.5 -31t43 -39.5t39 -42t41 -48t41.5 -48.5h355q26 0 45 -19t19 -45z" /> - <glyph glyph-name="uniF2B6" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2B6" unicode="" horiz-adv-x="1792" d="M1792 882v-978q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v978q0 15 11 24q8 7 39 34.5t41.5 36t45.5 37.5t70 55.5t96 73t143.5 107t192.5 140.5q5 4 52.5 40t71.5 52.5t64 35t69 18.5t69 -18.5t65 -35.5t71 -52t52 -40q110 -80 192.5 -140.5t143.5 -107 t96 -73t70 -55.5t45.5 -37.5t41.5 -36t39 -34.5q11 -9 11 -24zM1228 297q263 191 345 252q11 8 12.5 20.5t-6.5 23.5l-38 52q-8 11 -21 12.5t-24 -6.5q-231 -169 -343 -250q-5 -3 -52 -39t-71.5 -52.5t-64.5 -35t-69 -18.5t-69 18.5t-64.5 35t-71.5 52.5t-52 39 q-186 134 -343 250q-11 8 -24 6.5t-21 -12.5l-38 -52q-8 -11 -6.5 -23.5t12.5 -20.5q82 -61 345 -252q10 -8 50 -38t65 -47t64 -39.5t77.5 -33.5t75.5 -11t75.5 11t79 34.5t64.5 39.5t65 47.5t48 36.5z" /> - <glyph glyph-name="uniF2B7" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2B7" unicode="" horiz-adv-x="1792" d="M1474 623l39 -51q8 -11 6.5 -23.5t-11.5 -20.5q-43 -34 -126.5 -98.5t-146.5 -113t-67 -51.5q-39 -32 -60 -48t-60.5 -41t-76.5 -36.5t-74 -11.5h-1h-1q-37 0 -74 11.5t-76 36.5t-61 41.5t-60 47.5q-5 4 -65 50.5t-143.5 111t-122.5 94.5q-11 8 -12.5 20.5t6.5 23.5 l37 52q8 11 21.5 13t24.5 -7q94 -73 306 -236q5 -4 43.5 -35t60.5 -46.5t56.5 -32.5t58.5 -17h1h1q24 0 58.5 17t56.5 32.5t60.5 46.5t43.5 35q258 198 313 242q11 8 24 6.5t21 -12.5zM1664 -96v928q-90 83 -159 139q-91 74 -389 304q-3 2 -43 35t-61 48t-56 32.5t-59 17.5 h-1h-1q-24 0 -59 -17.5t-56 -32.5t-61 -48t-43 -35q-215 -166 -315.5 -245.5t-129.5 -104t-82 -74.5q-14 -12 -21 -19v-928q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1792 832v-928q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v928q0 56 41 94 q123 114 350 290.5t233 181.5q36 30 59 47.5t61.5 42t76 36.5t74.5 12h1h1q37 0 74.5 -12t76 -36.5t61.5 -42t59 -47.5q43 -36 156 -122t226 -177t201 -173q41 -38 41 -94z" /> - <glyph glyph-name="uniF2B8" unicode="" + <glyph glyph-name="uniF2B8" unicode="" d="M330 1l202 -214l-34 236l-216 213zM556 -225l274 218l-11 245l-300 -215zM245 413l227 -213l-48 327l-245 204zM495 189l317 214l-14 324l-352 -200zM843 178l95 -80l-2 239l-103 79q0 -1 1 -8.5t0 -12t-5 -7.5l-78 -52l85 -70q7 -6 7 -88zM138 930l256 -200l-68 465 l-279 173zM1173 267l15 234l-230 -164l2 -240zM417 722l373 194l-19 441l-423 -163zM1270 357l20 233l-226 142l-2 -105l144 -95q6 -4 4 -9l-7 -119zM1461 496l30 222l-179 -128l-20 -228zM1273 329l-71 49l-8 -117q0 -5 -4 -8l-234 -187q-7 -5 -14 0l-98 83l7 -161 q0 -5 -4 -8l-293 -234q-4 -2 -6 -2q-8 2 -8 3l-228 242q-4 4 -59 277q-2 7 5 11l61 37q-94 86 -95 92l-72 351q-2 7 6 12l94 45q-133 100 -135 108l-96 466q-2 10 7 13l433 135q5 0 8 -1l317 -153q6 -4 6 -9l20 -463q0 -7 -6 -10l-118 -61l126 -85q5 -2 5 -8l5 -123l121 74 q5 4 11 0l84 -56l3 110q0 6 5 9l206 126q6 3 11 0l245 -135q4 -4 5 -7t-6.5 -60t-17.5 -124.5t-10 -70.5q0 -5 -4 -7l-191 -153q-6 -5 -13 0z" /> - <glyph glyph-name="uniF2B9" unicode="" horiz-adv-x="1664" + <glyph glyph-name="uniF2B9" unicode="" horiz-adv-x="1664" d="M1201 298q0 57 -5.5 107t-21 100.5t-39.5 86t-64 58t-91 22.5q-6 -4 -33.5 -20.5t-42.5 -24.5t-40.5 -20t-49 -17t-46.5 -5t-46.5 5t-49 17t-40.5 20t-42.5 24.5t-33.5 20.5q-51 0 -91 -22.5t-64 -58t-39.5 -86t-21 -100.5t-5.5 -107q0 -73 42 -121.5t103 -48.5h576 q61 0 103 48.5t42 121.5zM1028 892q0 108 -76.5 184t-183.5 76t-183.5 -76t-76.5 -184q0 -107 76.5 -183t183.5 -76t183.5 76t76.5 183zM1664 352v-192q0 -14 -9 -23t-23 -9h-96v-224q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113v1472q0 66 47 113t113 47h1216 q66 0 113 -47t47 -113v-224h96q14 0 23 -9t9 -23v-192q0 -14 -9 -23t-23 -9h-96v-128h96q14 0 23 -9t9 -23v-192q0 -14 -9 -23t-23 -9h-96v-128h96q14 0 23 -9t9 -23z" /> - <glyph glyph-name="uniF2BA" unicode="" horiz-adv-x="1664" + <glyph glyph-name="uniF2BA" unicode="" horiz-adv-x="1664" d="M1028 892q0 -107 -76.5 -183t-183.5 -76t-183.5 76t-76.5 183q0 108 76.5 184t183.5 76t183.5 -76t76.5 -184zM980 672q46 0 82.5 -17t60 -47.5t39.5 -67t24 -81t11.5 -82.5t3.5 -79q0 -67 -39.5 -118.5t-105.5 -51.5h-576q-66 0 -105.5 51.5t-39.5 118.5q0 48 4.5 93.5 t18.5 98.5t36.5 91.5t63 64.5t93.5 26h5q7 -4 32 -19.5t35.5 -21t33 -17t37 -16t35 -9t39.5 -4.5t39.5 4.5t35 9t37 16t33 17t35.5 21t32 19.5zM1664 928q0 -13 -9.5 -22.5t-22.5 -9.5h-96v-128h96q13 0 22.5 -9.5t9.5 -22.5v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-96v-128h96 q13 0 22.5 -9.5t9.5 -22.5v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-96v-224q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113v1472q0 66 47 113t113 47h1216q66 0 113 -47t47 -113v-224h96q13 0 22.5 -9.5t9.5 -22.5v-192zM1408 -96v1472q0 13 -9.5 22.5t-22.5 9.5h-1216 q-13 0 -22.5 -9.5t-9.5 -22.5v-1472q0 -13 9.5 -22.5t22.5 -9.5h1216q13 0 22.5 9.5t9.5 22.5z" /> - <glyph glyph-name="uniF2BB" unicode="" horiz-adv-x="2048" + <glyph glyph-name="uniF2BB" unicode="" horiz-adv-x="2048" d="M1024 405q0 64 -9 117.5t-29.5 103t-60.5 78t-97 28.5q-6 -4 -30 -18t-37.5 -21.5t-35.5 -17.5t-43 -14.5t-42 -4.5t-42 4.5t-43 14.5t-35.5 17.5t-37.5 21.5t-30 18q-57 0 -97 -28.5t-60.5 -78t-29.5 -103t-9 -117.5t37 -106.5t91 -42.5h512q54 0 91 42.5t37 106.5z M867 925q0 94 -66.5 160.5t-160.5 66.5t-160.5 -66.5t-66.5 -160.5t66.5 -160.5t160.5 -66.5t160.5 66.5t66.5 160.5zM1792 416v64q0 14 -9 23t-23 9h-576q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h576q14 0 23 9t9 23zM1792 676v56q0 15 -10.5 25.5t-25.5 10.5h-568 q-15 0 -25.5 -10.5t-10.5 -25.5v-56q0 -15 10.5 -25.5t25.5 -10.5h568q15 0 25.5 10.5t10.5 25.5zM1792 928v64q0 14 -9 23t-23 9h-576q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h576q14 0 23 9t9 23zM2048 1248v-1216q0 -66 -47 -113t-113 -47h-352v96q0 14 -9 23t-23 9 h-64q-14 0 -23 -9t-9 -23v-96h-768v96q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-96h-352q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1728q66 0 113 -47t47 -113z" /> - <glyph glyph-name="uniF2BC" unicode="" horiz-adv-x="2048" + <glyph glyph-name="uniF2BC" unicode="" horiz-adv-x="2048" d="M1024 405q0 -64 -37 -106.5t-91 -42.5h-512q-54 0 -91 42.5t-37 106.5t9 117.5t29.5 103t60.5 78t97 28.5q6 -4 30 -18t37.5 -21.5t35.5 -17.5t43 -14.5t42 -4.5t42 4.5t43 14.5t35.5 17.5t37.5 21.5t30 18q57 0 97 -28.5t60.5 -78t29.5 -103t9 -117.5zM867 925 q0 -94 -66.5 -160.5t-160.5 -66.5t-160.5 66.5t-66.5 160.5t66.5 160.5t160.5 66.5t160.5 -66.5t66.5 -160.5zM1792 480v-64q0 -14 -9 -23t-23 -9h-576q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h576q14 0 23 -9t9 -23zM1792 732v-56q0 -15 -10.5 -25.5t-25.5 -10.5h-568 q-15 0 -25.5 10.5t-10.5 25.5v56q0 15 10.5 25.5t25.5 10.5h568q15 0 25.5 -10.5t10.5 -25.5zM1792 992v-64q0 -14 -9 -23t-23 -9h-576q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h576q14 0 23 -9t9 -23zM1920 32v1216q0 13 -9.5 22.5t-22.5 9.5h-1728q-13 0 -22.5 -9.5 t-9.5 -22.5v-1216q0 -13 9.5 -22.5t22.5 -9.5h352v96q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-96h768v96q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-96h352q13 0 22.5 9.5t9.5 22.5zM2048 1248v-1216q0 -66 -47 -113t-113 -47h-1728q-66 0 -113 47t-47 113v1216q0 66 47 113 t113 47h1728q66 0 113 -47t47 -113z" /> - <glyph glyph-name="uniF2BD" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2BD" unicode="" horiz-adv-x="1792" d="M1523 197q-22 155 -87.5 257.5t-184.5 118.5q-67 -74 -159.5 -115.5t-195.5 -41.5t-195.5 41.5t-159.5 115.5q-119 -16 -184.5 -118.5t-87.5 -257.5q106 -150 271 -237.5t356 -87.5t356 87.5t271 237.5zM1280 896q0 159 -112.5 271.5t-271.5 112.5t-271.5 -112.5 t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5zM1792 640q0 -182 -71 -347.5t-190.5 -286t-285.5 -191.5t-349 -71q-182 0 -348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="uniF2BE" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2BE" unicode="" horiz-adv-x="1792" d="M896 1536q182 0 348 -71t286 -191t191 -286t71 -348q0 -181 -70.5 -347t-190.5 -286t-286 -191.5t-349 -71.5t-349 71t-285.5 191.5t-190.5 286t-71 347.5t71 348t191 286t286 191t348 71zM1515 185q149 205 149 455q0 156 -61 298t-164 245t-245 164t-298 61t-298 -61 t-245 -164t-164 -245t-61 -298q0 -250 149 -455q66 327 306 327q131 -128 313 -128t313 128q240 0 306 -327zM1280 832q0 159 -112.5 271.5t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5z" /> - <glyph glyph-name="uniF2C0" unicode="" + <glyph glyph-name="uniF2C0" unicode="" d="M1201 752q47 -14 89.5 -38t89 -73t79.5 -115.5t55 -172t22 -236.5q0 -154 -100 -263.5t-241 -109.5h-854q-141 0 -241 109.5t-100 263.5q0 131 22 236.5t55 172t79.5 115.5t89 73t89.5 38q-79 125 -79 272q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5 t198.5 -40.5t163.5 -109.5t109.5 -163.5t40.5 -198.5q0 -147 -79 -272zM768 1408q-159 0 -271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5t-112.5 271.5t-271.5 112.5zM1195 -128q88 0 150.5 71.5t62.5 173.5q0 239 -78.5 377t-225.5 145 q-145 -127 -336 -127t-336 127q-147 -7 -225.5 -145t-78.5 -377q0 -102 62.5 -173.5t150.5 -71.5h854z" /> - <glyph glyph-name="uniF2C1" unicode="" horiz-adv-x="1280" + <glyph glyph-name="uniF2C1" unicode="" horiz-adv-x="1280" d="M1024 278q0 -64 -37 -107t-91 -43h-512q-54 0 -91 43t-37 107t9 118t29.5 104t61 78.5t96.5 28.5q80 -75 188 -75t188 75q56 0 96.5 -28.5t61 -78.5t29.5 -104t9 -118zM870 797q0 -94 -67.5 -160.5t-162.5 -66.5t-162.5 66.5t-67.5 160.5t67.5 160.5t162.5 66.5 t162.5 -66.5t67.5 -160.5zM1152 -96v1376h-1024v-1376q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5zM1280 1376v-1472q0 -66 -47 -113t-113 -47h-960q-66 0 -113 47t-47 113v1472q0 66 47 113t113 47h352v-96q0 -14 9 -23t23 -9h192q14 0 23 9t9 23v96h352 q66 0 113 -47t47 -113z" /> - <glyph glyph-name="uniF2C2" unicode="" horiz-adv-x="2048" + <glyph glyph-name="uniF2C2" unicode="" horiz-adv-x="2048" d="M896 324q0 54 -7.5 100.5t-24.5 90t-51 68.5t-81 25q-64 -64 -156 -64t-156 64q-47 0 -81 -25t-51 -68.5t-24.5 -90t-7.5 -100.5q0 -55 31.5 -93.5t75.5 -38.5h426q44 0 75.5 38.5t31.5 93.5zM768 768q0 80 -56 136t-136 56t-136 -56t-56 -136t56 -136t136 -56t136 56 t56 136zM1792 288v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23zM1408 544v64q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1792 544v64q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23 v-64q0 -14 9 -23t23 -9h192q14 0 23 9t9 23zM1792 800v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23zM128 1152h1792v96q0 14 -9 23t-23 9h-1728q-14 0 -23 -9t-9 -23v-96zM2048 1248v-1216q0 -66 -47 -113t-113 -47h-1728 q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1728q66 0 113 -47t47 -113z" /> - <glyph glyph-name="uniF2C3" unicode="" horiz-adv-x="2048" + <glyph glyph-name="uniF2C3" unicode="" horiz-adv-x="2048" d="M896 324q0 -55 -31.5 -93.5t-75.5 -38.5h-426q-44 0 -75.5 38.5t-31.5 93.5q0 54 7.5 100.5t24.5 90t51 68.5t81 25q64 -64 156 -64t156 64q47 0 81 -25t51 -68.5t24.5 -90t7.5 -100.5zM768 768q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136z M1792 352v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704q14 0 23 -9t9 -23zM1408 608v-64q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h320q14 0 23 -9t9 -23zM1792 608v-64q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v64 q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 864v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704q14 0 23 -9t9 -23zM1920 32v1120h-1792v-1120q0 -13 9.5 -22.5t22.5 -9.5h1728q13 0 22.5 9.5t9.5 22.5zM2048 1248v-1216q0 -66 -47 -113t-113 -47 h-1728q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1728q66 0 113 -47t47 -113z" /> - <glyph glyph-name="uniF2C4" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2C4" unicode="" horiz-adv-x="1792" d="M1255 749q0 318 -105 474.5t-330 156.5q-222 0 -326 -157t-104 -474q0 -316 104 -471.5t326 -155.5q74 0 131 17q-22 43 -39 73t-44 65t-53.5 56.5t-63 36t-77.5 14.5q-46 0 -79 -16l-49 97q105 91 276 91q132 0 215.5 -54t150.5 -155q67 149 67 402zM1645 117h117 q3 -27 -2 -67t-26.5 -95t-58 -100.5t-107 -78t-162.5 -32.5q-71 0 -130.5 19t-105.5 56t-79 78t-66 96q-97 -27 -205 -27q-150 0 -292.5 58t-253 158.5t-178 249t-67.5 317.5q0 170 67.5 319.5t178.5 250.5t253.5 159t291.5 58q121 0 238.5 -36t217 -106t176 -164.5 t119.5 -219t43 -261.5q0 -190 -80.5 -347.5t-218.5 -264.5q47 -70 93.5 -106.5t104.5 -36.5q61 0 94 37.5t38 85.5z" /> - <glyph glyph-name="uniF2C5" unicode="" horiz-adv-x="2304" + <glyph glyph-name="uniF2C5" unicode="" horiz-adv-x="2304" d="M453 -101q0 -21 -16 -37.5t-37 -16.5q-1 0 -13 3q-63 15 -162 140q-225 284 -225 676q0 341 213 614q39 51 95 103.5t94 52.5q19 0 35 -13.5t16 -32.5q0 -27 -63 -90q-98 -102 -147 -184q-119 -199 -119 -449q0 -281 123 -491q50 -85 136 -173q2 -3 14.5 -16t19.5 -21 t17 -20.5t14.5 -23.5t4.5 -21zM1796 33q0 -29 -17.5 -48.5t-46.5 -19.5h-1081q-26 0 -45 19t-19 45q0 29 17.5 48.5t46.5 19.5h1081q26 0 45 -19t19 -45zM1581 644q0 -134 -67 -233q-25 -38 -69.5 -78.5t-83.5 -60.5q-16 -10 -27 -10q-7 0 -15 6t-8 12q0 9 19 30t42 46 t42 67.5t19 88.5q0 76 -35 130q-29 42 -46 42q-3 0 -3 -5q0 -12 7.5 -35.5t7.5 -36.5q0 -22 -21.5 -35t-44.5 -13q-66 0 -66 76q0 15 1.5 44t1.5 44q0 25 -10 46q-13 25 -42 53.5t-51 28.5q-5 0 -7 -0.5t-3.5 -2.5t-1.5 -6q0 -2 16 -26t16 -54q0 -37 -19 -68t-46 -54 @@ -2521,64 +2521,64 @@ t-53.5 -46t-45.5 -54t-19 -68q0 -98 42 -160q29 -43 79 -63q16 -5 17 -10q1 -2 1 -5q q41 -19 71 -44.5t49.5 -51t33.5 -62.5t22 -69t16 -80q0 -1 3 -17.5t4.5 -25t5.5 -25t9 -27t11 -21.5t14.5 -16.5t18.5 -5.5q23 0 37 14t14 37q0 25 -20 67t-20 52t10 10q27 0 93 -70q72 -76 102.5 -156t30.5 -186zM2304 615q0 -274 -138 -503q-19 -32 -48 -72t-68 -86.5 t-81 -77t-74 -30.5q-16 0 -31 15.5t-15 31.5q0 15 29 50.5t68.5 77t48.5 52.5q183 230 183 531q0 131 -20.5 235t-72.5 211q-58 119 -163 228q-2 3 -13 13.5t-16.5 16.5t-15 17.5t-15 20t-9.5 18.5t-4 19q0 19 16 35.5t35 16.5q70 0 196 -169q98 -131 146 -273t60 -314 q2 -42 2 -64z" /> - <glyph glyph-name="uniF2C6" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2C6" unicode="" horiz-adv-x="1792" d="M1189 229l147 693q9 44 -10.5 63t-51.5 7l-864 -333q-29 -11 -39.5 -25t-2.5 -26.5t32 -19.5l221 -69l513 323q21 14 32 6q7 -5 -4 -15l-415 -375v0v0l-16 -228q23 0 45 22l108 104l224 -165q64 -36 81 38zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71 t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="uniF2C7" unicode="" horiz-adv-x="1024" + <glyph glyph-name="uniF2C7" unicode="" horiz-adv-x="1024" d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v907h128v-907q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5 t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192 v128h192z" /> - <glyph glyph-name="uniF2C8" unicode="" horiz-adv-x="1024" + <glyph glyph-name="uniF2C8" unicode="" horiz-adv-x="1024" d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v651h128v-651q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5 t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192 v128h192z" /> - <glyph glyph-name="uniF2C9" unicode="" horiz-adv-x="1024" + <glyph glyph-name="uniF2C9" unicode="" horiz-adv-x="1024" d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v395h128v-395q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5 t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192 v128h192z" /> - <glyph glyph-name="uniF2CA" unicode="" horiz-adv-x="1024" + <glyph glyph-name="uniF2CA" unicode="" horiz-adv-x="1024" d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v139h128v-139q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5 t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192 v128h192z" /> - <glyph glyph-name="uniF2CB" unicode="" horiz-adv-x="1024" + <glyph glyph-name="uniF2CB" unicode="" horiz-adv-x="1024" d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 79 56 135.5t136 56.5t136 -56.5t56 -135.5zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5t93.5 226.5z M896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192v128h192z" /> - <glyph glyph-name="uniF2CC" unicode="" horiz-adv-x="1920" + <glyph glyph-name="uniF2CC" unicode="" horiz-adv-x="1920" d="M1433 1287q10 -10 10 -23t-10 -23l-626 -626q-10 -10 -23 -10t-23 10l-82 82q-10 10 -10 23t10 23l44 44q-72 91 -81.5 207t46.5 215q-74 71 -176 71q-106 0 -181 -75t-75 -181v-1280h-256v1280q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5q106 0 201 -41 t166 -115q94 39 197 24.5t185 -79.5l44 44q10 10 23 10t23 -10zM1344 1024q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1600 896q-26 0 -45 19t-19 45t19 45t45 19t45 -19t19 -45t-19 -45t-45 -19zM1856 1024q26 0 45 -19t19 -45t-19 -45t-45 -19 t-45 19t-19 45t19 45t45 19zM1216 896q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1408 832q0 26 19 45t45 19t45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45zM1728 896q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1088 768 q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1344 640q-26 0 -45 19t-19 45t19 45t45 19t45 -19t19 -45t-19 -45t-45 -19zM1600 768q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1216 512q-26 0 -45 19t-19 45t19 45t45 19t45 -19 t19 -45t-19 -45t-45 -19zM1472 640q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1088 512q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1344 512q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1216 384 q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1088 256q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19z" /> - <glyph glyph-name="uniF2CD" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2CD" unicode="" horiz-adv-x="1792" d="M1664 448v-192q0 -169 -128 -286v-194q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v118q-63 -22 -128 -22h-768q-65 0 -128 22v-110q0 -17 -9.5 -28.5t-22.5 -11.5h-64q-13 0 -22.5 11.5t-9.5 28.5v186q-128 117 -128 286v192h1536zM704 864q0 -14 -9 -23t-23 -9t-23 9 t-9 23t9 23t23 9t23 -9t9 -23zM768 928q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM704 992q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM832 992q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM768 1056q0 -14 -9 -23t-23 -9t-23 9 t-9 23t9 23t23 9t23 -9t9 -23zM704 1120q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM1792 608v-64q0 -14 -9 -23t-23 -9h-1728q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v640q0 106 75 181t181 75q108 0 184 -78q46 19 98 12t93 -39l22 22q11 11 22 0l42 -42 q11 -11 0 -22l-314 -314q-11 -11 -22 0l-42 42q-11 11 0 22l22 22q-36 46 -40.5 104t23.5 108q-37 35 -88 35q-53 0 -90.5 -37.5t-37.5 -90.5v-640h1504q14 0 23 -9t9 -23zM896 1056q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM832 1120q0 -14 -9 -23t-23 -9 t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM768 1184q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM960 1120q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM896 1184q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM832 1248q0 -14 -9 -23 t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM1024 1184q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM960 1248q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM1088 1248q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23z" /> - <glyph glyph-name="uniF2CE" unicode="" + <glyph glyph-name="uniF2CE" unicode="" d="M994 344q0 -86 -17 -197q-31 -215 -55 -313q-22 -90 -152 -90t-152 90q-24 98 -55 313q-17 110 -17 197q0 168 224 168t224 -168zM1536 768q0 -240 -134 -434t-350 -280q-8 -3 -15 3t-6 15q7 48 10 66q4 32 6 47q1 9 9 12q159 81 255.5 234t96.5 337q0 180 -91 330.5 t-247 234.5t-337 74q-124 -7 -237 -61t-193.5 -140.5t-128 -202t-46.5 -240.5q1 -184 99 -336.5t257 -231.5q7 -3 9 -12q3 -21 6 -45q1 -9 5 -32.5t6 -35.5q1 -9 -6.5 -15t-15.5 -2q-148 58 -261 169.5t-173.5 264t-52.5 319.5q7 143 66 273.5t154.5 227t225 157.5t272.5 70 q164 10 315.5 -46.5t261 -160.5t175 -250.5t65.5 -308.5zM994 800q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5zM1282 768q0 -122 -53.5 -228.5t-146.5 -177.5q-8 -6 -16 -2t-10 14q-6 52 -29 92q-7 10 3 20 q58 54 91 127t33 155q0 111 -58.5 204t-157.5 141.5t-212 36.5q-133 -15 -229 -113t-109 -231q-10 -92 23.5 -176t98.5 -144q10 -10 3 -20q-24 -41 -29 -93q-2 -9 -10 -13t-16 2q-95 74 -148.5 183t-51.5 234q3 131 69 244t177 181.5t241 74.5q144 7 268 -60t196.5 -187.5 t72.5 -263.5z" /> - <glyph glyph-name="uniF2D0" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2D0" unicode="" horiz-adv-x="1792" d="M256 128h1280v768h-1280v-768zM1792 1248v-1216q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" /> - <glyph glyph-name="uniF2D1" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2D1" unicode="" horiz-adv-x="1792" d="M1792 224v-192q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v192q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" /> - <glyph glyph-name="uniF2D2" unicode="" horiz-adv-x="2048" + <glyph glyph-name="uniF2D2" unicode="" horiz-adv-x="2048" d="M256 0h768v512h-768v-512zM1280 512h512v768h-768v-256h96q66 0 113 -47t47 -113v-352zM2048 1376v-960q0 -66 -47 -113t-113 -47h-608v-352q0 -66 -47 -113t-113 -47h-960q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h608v352q0 66 47 113t113 47h960q66 0 113 -47 t47 -113z" /> - <glyph glyph-name="uniF2D3" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2D3" unicode="" horiz-adv-x="1792" d="M1175 215l146 146q10 10 10 23t-10 23l-233 233l233 233q10 10 10 23t-10 23l-146 146q-10 10 -23 10t-23 -10l-233 -233l-233 233q-10 10 -23 10t-23 -10l-146 -146q-10 -10 -10 -23t10 -23l233 -233l-233 -233q-10 -10 -10 -23t10 -23l146 -146q10 -10 23 -10t23 10 l233 233l233 -233q10 -10 23 -10t23 10zM1792 1248v-1216q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" /> - <glyph glyph-name="uniF2D4" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2D4" unicode="" horiz-adv-x="1792" d="M1257 425l-146 -146q-10 -10 -23 -10t-23 10l-169 169l-169 -169q-10 -10 -23 -10t-23 10l-146 146q-10 10 -10 23t10 23l169 169l-169 169q-10 10 -10 23t10 23l146 146q10 10 23 10t23 -10l169 -169l169 169q10 10 23 10t23 -10l146 -146q10 -10 10 -23t-10 -23 l-169 -169l169 -169q10 -10 10 -23t-10 -23zM256 128h1280v1024h-1280v-1024zM1792 1248v-1216q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" /> - <glyph glyph-name="uniF2D5" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2D5" unicode="" horiz-adv-x="1792" d="M1070 358l306 564h-654l-306 -564h654zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="uniF2D6" unicode="" horiz-adv-x="1794" + <glyph glyph-name="uniF2D6" unicode="" horiz-adv-x="1794" d="M1291 1060q-15 17 -35 8.5t-26 -28.5t5 -38q14 -17 40 -14.5t34 20.5t-18 52zM895 814q-8 -8 -19.5 -8t-18.5 8q-8 8 -8 19t8 18q7 8 18.5 8t19.5 -8q7 -7 7 -18t-7 -19zM1060 740l-35 -35q-12 -13 -29.5 -13t-30.5 13l-38 38q-12 13 -12 30t12 30l35 35q12 12 29.5 12 t30.5 -12l38 -39q12 -12 12 -29.5t-12 -29.5zM951 870q-7 -8 -18.5 -8t-19.5 8q-7 8 -7 19t7 19q8 8 19 8t19 -8t8 -19t-8 -19zM1354 968q-34 -64 -107.5 -85.5t-127.5 16.5q-38 28 -61 66.5t-21 87.5t39 92t75.5 53t70.5 -5t70 -51q2 -2 13 -12.5t14.5 -13.5t13 -13.5 t12.5 -15.5t10 -15.5t8.5 -18t4 -18.5t1 -21t-5 -22t-9.5 -24zM1555 486q3 20 -8.5 34.5t-27.5 21.5t-33 17t-23 20q-40 71 -84 98.5t-113 11.5q19 13 40 18.5t33 4.5l12 -1q2 45 -34 90q6 20 6.5 40.5t-2.5 30.5l-3 10q43 24 71 65t34 91q10 84 -43 150.5t-137 76.5 @@ -2586,48 +2586,48 @@ q-60 7 -114 -18.5t-82 -74.5q-30 -51 -33.5 -101t14.5 -87t43.5 -64t56.5 -42q-45 4 q-25 -14 -47 -36q-35 -16 -85.5 -70.5t-84.5 -101.5l-33 -46q-90 -34 -181 -125.5t-75 -162.5q1 -16 11 -27q-15 -12 -30 -30q-21 -25 -21 -54t21.5 -40t63.5 6q41 19 77 49.5t55 60.5q-2 2 -6.5 5t-20.5 7.5t-33 3.5q23 5 51 12.5t40 10t27.5 6t26 4t23.5 0.5q14 -7 22 34 q7 37 7 90q0 102 -40 150q106 -103 101 -219q-1 -29 -15 -50t-27 -27l-13 -6q-4 -7 -19 -32t-26 -45.5t-26.5 -52t-25 -61t-17 -63t-6.5 -66.5t10 -63q-35 54 -37 80q-22 -24 -34.5 -39t-33.5 -42t-30.5 -46t-16.5 -41t-0.5 -38t25.5 -27q45 -25 144 64t190.5 221.5 t122.5 228.5q86 52 145 115.5t86 119.5q47 -93 154 -178q104 -83 167 -80q39 2 46 43zM1794 640q0 -182 -71 -348t-191 -286t-286.5 -191t-348.5 -71t-348.5 71t-286.5 191t-191 286t-71 348t71 348t191 286t286.5 191t348.5 71t348.5 -71t286.5 -191t191 -286t71 -348z" /> - <glyph glyph-name="uniF2D7" unicode="" + <glyph glyph-name="uniF2D7" unicode="" d="M518 1353v-655q103 -1 191.5 1.5t125.5 5.5l37 3q68 2 90.5 24.5t39.5 94.5l33 142h103l-14 -322l7 -319h-103l-29 127q-15 68 -45 93t-84 26q-87 8 -352 8v-556q0 -78 43.5 -115.5t133.5 -37.5h357q35 0 59.5 2t55 7.5t54 18t48.5 32t46 50.5t39 73l93 216h89 q-6 -37 -31.5 -252t-30.5 -276q-146 5 -263.5 8t-162.5 4h-44h-628l-376 -12v102l127 25q67 13 91.5 37t25.5 79l8 643q3 402 -8 645q-2 61 -25.5 84t-91.5 36l-127 24v102l376 -12h702q139 0 374 27q-6 -68 -14 -194.5t-12 -219.5l-5 -92h-93l-32 124q-31 121 -74 179.5 t-113 58.5h-548q-28 0 -35.5 -8.5t-7.5 -30.5z" /> - <glyph glyph-name="uniF2D8" unicode="" + <glyph glyph-name="uniF2D8" unicode="" d="M922 739v-182q0 -4 0.5 -15t0 -15l-1.5 -12t-3.5 -11.5t-6.5 -7.5t-11 -5.5t-16 -1.5v309q9 0 16 -1t11 -5t6.5 -5.5t3.5 -9.5t1 -10.5v-13.5v-14zM1238 643v-121q0 -1 0.5 -12.5t0 -15.5t-2.5 -11.5t-7.5 -10.5t-13.5 -3q-9 0 -14 9q-4 10 -4 165v7v8.5v9t1.5 8.5l3.5 7 t5 5.5t8 1.5q6 0 10 -1.5t6.5 -4.5t4 -6t2 -8.5t0.5 -8v-9.5v-9zM180 407h122v472h-122v-472zM614 407h106v472h-159l-28 -221q-20 148 -32 221h-158v-472h107v312l45 -312h76l43 319v-319zM1039 712q0 67 -5 90q-3 16 -11 28.5t-17 20.5t-25 14t-26.5 8.5t-31 4t-29 1.5 h-29.5h-12h-91v-472h56q169 -1 197 24.5t25 180.5q-1 62 -1 100zM1356 515v133q0 29 -2 45t-9.5 33.5t-24.5 25t-46 7.5q-46 0 -77 -34v154h-117v-472h110l7 30q30 -36 77 -36q50 0 66 30.5t16 83.5zM1536 1248v-1216q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113 v1216q0 66 47 113t113 47h1216q66 0 113 -47t47 -113z" /> - <glyph glyph-name="uniF2D9" unicode="" horiz-adv-x="2176" + <glyph glyph-name="uniF2D9" unicode="" horiz-adv-x="2176" d="M1143 -197q-6 1 -11 4q-13 8 -36 23t-86 65t-116.5 104.5t-112 140t-89.5 172.5q-17 3 -175 37q66 -213 235 -362t391 -184zM502 409l168 -28q-25 76 -41 167.5t-19 145.5l-4 53q-84 -82 -121 -224q5 -65 17 -114zM612 1018q-43 -64 -77 -148q44 46 74 68zM2049 584 q0 161 -62 307t-167.5 252t-250.5 168.5t-304 62.5q-147 0 -281 -52.5t-240 -148.5q-30 -58 -45 -160q60 51 143 83.5t158.5 43t143 13.5t108.5 -1l40 -3q33 -1 53 -15.5t24.5 -33t6.5 -37t-1 -28.5q-126 11 -227.5 0.5t-183 -43.5t-142.5 -71.5t-131 -98.5 q4 -36 11.5 -92.5t35.5 -178t62 -179.5q123 -6 247.5 14.5t214.5 53.5t162.5 67t109.5 59l37 24q22 16 39.5 20.5t30.5 -5t17 -34.5q14 -97 -39 -121q-208 -97 -467 -134q-135 -20 -317 -16q41 -96 110 -176.5t137 -127t130.5 -79t101.5 -43.5l39 -12q143 -23 263 15 q195 99 314 289t119 418zM2123 621q-14 -135 -40 -212q-70 -208 -181.5 -346.5t-318.5 -253.5q-48 -33 -82 -44q-72 -26 -163 -16q-36 -3 -73 -3q-283 0 -504.5 173t-295.5 442q-1 0 -4 0.5t-5 0.5q-6 -50 2.5 -112.5t26 -115t36 -98t31.5 -71.5l14 -26q8 -12 54 -82 q-71 38 -124.5 106.5t-78.5 140t-39.5 137t-17.5 107.5l-2 42q-5 2 -33.5 12.5t-48.5 18t-53 20.5t-57.5 25t-50 25.5t-42.5 27t-25 25.5q19 -10 50.5 -25.5t113 -45.5t145.5 -38l2 32q11 149 94 290q41 202 176 365q28 115 81 214q15 28 32 45t49 32q158 74 303.5 104 t302 11t306.5 -97q220 -115 333 -336t87 -474z" /> - <glyph glyph-name="uniF2DA" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2DA" unicode="" horiz-adv-x="1792" d="M1341 752q29 44 -6.5 129.5t-121.5 142.5q-58 39 -125.5 53.5t-118 4.5t-68.5 -37q-12 -23 -4.5 -28t42.5 -10q23 -3 38.5 -5t44.5 -9.5t56 -17.5q36 -13 67.5 -31.5t53 -37t40 -38.5t30.5 -38t22 -34.5t16.5 -28.5t12 -18.5t10.5 -6t11 9.5zM1704 178 q-52 -127 -148.5 -220t-214.5 -141.5t-253 -60.5t-266 13.5t-251 91t-210 161.5t-141.5 235.5t-46.5 303.5q1 41 8.5 84.5t12.5 64t24 80.5t23 73q-51 -208 1 -397t173 -318t291 -206t346 -83t349 74.5t289 244.5q20 27 18 14q0 -4 -4 -14zM1465 627q0 -104 -40.5 -199 t-108.5 -164t-162 -109.5t-198 -40.5t-198 40.5t-162 109.5t-108.5 164t-40.5 199t40.5 199t108.5 164t162 109.5t198 40.5t198 -40.5t162 -109.5t108.5 -164t40.5 -199zM1752 915q-65 147 -180.5 251t-253 153.5t-292 53.5t-301 -36.5t-275.5 -129t-220 -211.5t-131 -297 t-10 -373q-49 161 -51.5 311.5t35.5 272.5t109 227t165.5 180.5t207 126t232 71t242.5 9t236 -54t216 -124.5t178 -197q33 -50 62 -121t31 -112zM1690 573q12 244 -136.5 416t-396.5 240q-8 0 -10 5t24 8q125 -4 230 -50t173 -120t116 -168.5t58.5 -199t-1 -208 t-61.5 -197.5t-122.5 -167t-185 -117.5t-248.5 -46.5q108 30 201.5 80t174 123t129.5 176.5t55 225.5z" /> - <glyph glyph-name="uniF2DB" unicode="" + <glyph glyph-name="uniF2DB" unicode="" d="M192 256v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM192 512v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM192 768v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16 q0 16 16 16h112zM192 1024v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM192 1280v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM1280 1440v-1472q0 -40 -28 -68t-68 -28h-832q-40 0 -68 28 t-28 68v1472q0 40 28 68t68 28h832q40 0 68 -28t28 -68zM1536 208v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 464v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 720v-32 q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 976v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 1232v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16 h48q16 0 16 -16z" /> - <glyph glyph-name="uniF2DC" unicode="" horiz-adv-x="1664" + <glyph glyph-name="uniF2DC" unicode="" horiz-adv-x="1664" d="M1566 419l-167 -33l186 -107q23 -13 29.5 -38.5t-6.5 -48.5q-14 -23 -39 -29.5t-48 6.5l-186 106l55 -160q13 -38 -12 -63.5t-60.5 -20.5t-48.5 42l-102 300l-271 156v-313l208 -238q16 -18 17 -39t-11 -36.5t-28.5 -25t-37 -5.5t-36.5 22l-112 128v-214q0 -26 -19 -45 t-45 -19t-45 19t-19 45v214l-112 -128q-16 -18 -36.5 -22t-37 5.5t-28.5 25t-11 36.5t17 39l208 238v313l-271 -156l-102 -300q-13 -37 -48.5 -42t-60.5 20.5t-12 63.5l55 160l-186 -106q-23 -13 -48 -6.5t-39 29.5q-13 23 -6.5 48.5t29.5 38.5l186 107l-167 33 q-29 6 -42 29t-8.5 46.5t25.5 40t50 10.5l310 -62l271 157l-271 157l-310 -62q-4 -1 -13 -1q-27 0 -44 18t-19 40t11 43t40 26l167 33l-186 107q-23 13 -29.5 38.5t6.5 48.5t39 30t48 -7l186 -106l-55 160q-13 38 12 63.5t60.5 20.5t48.5 -42l102 -300l271 -156v313 l-208 238q-16 18 -17 39t11 36.5t28.5 25t37 5.5t36.5 -22l112 -128v214q0 26 19 45t45 19t45 -19t19 -45v-214l112 128q16 18 36.5 22t37 -5.5t28.5 -25t11 -36.5t-17 -39l-208 -238v-313l271 156l102 300q13 37 48.5 42t60.5 -20.5t12 -63.5l-55 -160l186 106 q23 13 48 6.5t39 -29.5q13 -23 6.5 -48.5t-29.5 -38.5l-186 -107l167 -33q27 -5 40 -26t11 -43t-19 -40t-44 -18q-9 0 -13 1l-310 62l-271 -157l271 -157l310 62q29 6 50 -10.5t25.5 -40t-8.5 -46.5t-42 -29z" /> - <glyph glyph-name="uniF2DD" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2DD" unicode="" horiz-adv-x="1792" d="M1473 607q7 118 -33 226.5t-113 189t-177 131t-221 57.5q-116 7 -225.5 -32t-192 -110.5t-135 -175t-59.5 -220.5q-7 -118 33 -226.5t113 -189t177.5 -131t221.5 -57.5q155 -9 293 59t224 195.5t94 283.5zM1792 1536l-349 -348q120 -117 180.5 -272t50.5 -321 q-11 -183 -102 -339t-241 -255.5t-332 -124.5l-999 -132l347 347q-120 116 -180.5 271.5t-50.5 321.5q11 184 102 340t241.5 255.5t332.5 124.5q167 22 500 66t500 66z" /> - <glyph glyph-name="uniF2DE" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2DE" unicode="" horiz-adv-x="1792" d="M948 508l163 -329h-51l-175 350l-171 -350h-49l179 374l-78 33l21 49l240 -102l-21 -50zM563 1100l304 -130l-130 -304l-304 130zM907 915l240 -103l-103 -239l-239 102zM1188 765l191 -81l-82 -190l-190 81zM1680 640q0 159 -62 304t-167.5 250.5t-250.5 167.5t-304 62 t-304 -62t-250.5 -167.5t-167.5 -250.5t-62 -304t62 -304t167.5 -250.5t250.5 -167.5t304 -62t304 62t250.5 167.5t167.5 250.5t62 304zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71 t286 -191t191 -286t71 -348z" /> - <glyph glyph-name="uniF2E0" unicode="" horiz-adv-x="1920" + <glyph glyph-name="uniF2E0" unicode="" horiz-adv-x="1920" d="M1334 302q-4 24 -27.5 34t-49.5 10.5t-48.5 12.5t-25.5 38q-5 47 33 139.5t75 181t32 127.5q-14 101 -117 103q-45 1 -75 -16l-3 -2l-5 -2.5t-4.5 -2t-5 -2t-5 -0.5t-6 1.5t-6 3.5t-6.5 5q-3 2 -9 8.5t-9 9t-8.5 7.5t-9.5 7.5t-9.5 5.5t-11 4.5t-11.5 2.5q-30 5 -48 -3 t-45 -31q-1 -1 -9 -8.5t-12.5 -11t-15 -10t-16.5 -5.5t-17 3q-54 27 -84 40q-41 18 -94 -5t-76 -65q-16 -28 -41 -98.5t-43.5 -132.5t-40 -134t-21.5 -73q-22 -69 18.5 -119t110.5 -46q30 2 50.5 15t38.5 46q7 13 79 199.5t77 194.5q6 11 21.5 18t29.5 0q27 -15 21 -53 q-2 -18 -51 -139.5t-50 -132.5q-6 -38 19.5 -56.5t60.5 -7t55 49.5q4 8 45.5 92t81.5 163.5t46 88.5q20 29 41 28q29 0 25 -38q-2 -16 -65.5 -147.5t-70.5 -159.5q-12 -53 13 -103t74 -74q17 -9 51 -15.5t71.5 -8t62.5 14t20 48.5zM383 86q3 -15 -5 -27.5t-23 -15.5 @@ -2637,35 +2637,35 @@ q-50 73 -53 164q-83 14 -142.5 70.5t-80.5 128t-2 152t81 138.5q-36 60 -38 128t24.5 M455 1222q14 -20 9.5 -44.5t-24.5 -38.5q-19 -14 -43.5 -9.5t-37.5 24.5q-14 20 -9.5 44.5t24.5 38.5q19 14 43.5 9.5t37.5 -24.5zM614 1503q4 -16 -5 -30.5t-26 -18.5t-31 5.5t-18 26.5q-3 17 6.5 31t25.5 18q17 4 31 -5.5t17 -26.5zM1800 555q4 -20 -6.5 -37t-30.5 -21 q-19 -4 -36 6.5t-21 30.5t6.5 37t30.5 22q20 4 36.5 -7.5t20.5 -30.5zM1136 1448q16 -27 8.5 -58.5t-35.5 -47.5q-27 -16 -57.5 -8.5t-46.5 34.5q-16 28 -8.5 59t34.5 48t58 9t47 -36zM1882 792q4 -15 -4 -27.5t-23 -16.5q-15 -3 -27.5 5.5t-15.5 22.5q-3 15 5 28t23 16 q14 3 26.5 -5t15.5 -23zM1691 1033q15 -22 10.5 -49t-26.5 -43q-22 -15 -49 -10t-42 27t-10 49t27 43t48.5 11t41.5 -28z" /> - <glyph glyph-name="uniF2E1" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2E1" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2E2" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2E2" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2E3" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2E3" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2E4" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2E4" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2E5" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2E5" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2E6" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2E6" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2E7" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2E7" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="_698" unicode="" horiz-adv-x="1792" + <glyph glyph-name="_698" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2E9" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2E9" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2EA" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2EA" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2EB" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2EB" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2EC" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2EC" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2ED" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2ED" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="uniF2EE" unicode="" horiz-adv-x="1792" + <glyph glyph-name="uniF2EE" unicode="" horiz-adv-x="1792" /> - <glyph glyph-name="lessequal" unicode="" horiz-adv-x="1792" + <glyph glyph-name="lessequal" unicode="" horiz-adv-x="1792" /> </font> </defs></svg> diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/fonts/fontawesome-webfont.woff2 b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/fonts/fontawesome-webfont.woff2 index 4d13fc604..33f54169b 100644 Binary files a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/fonts/fontawesome-webfont.woff2 and b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/fonts/fontawesome-webfont.woff2 differ diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/index.html b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/index.html index 233bff58f..b65a9584b 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/index.html +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/index.html @@ -77,7 +77,7 @@ loadSheetUrl: location.origin + "/luckysheet/api/loadsheet" } }else{ - // http://localhost:3000/ + // http://localhost:3000/ options = { container: 'luckysheet', lang: lang, @@ -183,11 +183,11 @@ // console.info('rangePasteBefore',range,data) // return false; //Can intercept paste }, - + }, //data:[{"name":"Sheet1","config":{"columnlen":{"1":88,"2":76,"3":88,"4":69,"5":88,"6":69,"7":83,"8":62,"9":83,"10":55,"11":83,"12":62,"13":88,"14":76,"15":88,"16":69,"17":88,"18":69},"customWidth":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"borderInfo":[{"rangeType":"cell","value":{"row_index":0,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":0,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":1,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":2,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":3,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":4,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":5,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":6,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":7,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":8,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":9,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":10,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":11,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":12,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":13,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":14,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":15,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":16,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":17,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":18,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":19,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":20,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":21,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":22,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":23,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":24,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":25,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":26,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":27,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":28,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":29,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":30,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":31,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":32,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":33,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":34,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":35,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":36,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":37,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":0,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":1,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":2,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":3,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":4,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":5,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":6,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":7,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":8,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":9,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":10,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":11,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":12,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":13,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":14,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":15,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":16,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":17,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}},{"rangeType":"cell","value":{"row_index":38,"col_index":18,"l":{"style":1,"color":"#302B2F"},"r":{"style":1,"color":"#302B2F"},"t":{"style":1,"color":"#302B2F"},"b":{"style":1,"color":"#302B2F"}}}]},"index":"1","status":"0","order":"0","luckysheet_select_save":[{"row":[9,9],"column":[4,4],"sheetIndex":1}],"zoomRatio":1,"showGridLines":"1","defaultColWidth":72,"defaultRowHeight":18,"celldata":[{"r":0,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"合计","qp":1}},{"r":0,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2121212"}},{"r":0,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"11027033.300000001"}},{"r":0,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"33685339116"}},{"r":0,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5060320.4000000004"}},{"r":0,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"31551697540.5"}},{"r":0,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5966713"}},{"r":0,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4547347979.1000004"}},{"r":0,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"881817.3"}},{"r":0,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"232937258.30000001"}},{"r":0,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"41419.4"}},{"r":0,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4314410720.8000002"}},{"r":0,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"840397.9"}},{"r":0,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"60689688677.300003"}},{"r":0,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"10145216.1"}},{"r":0,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"33452401857.700001"}},{"r":0,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5018901"}},{"r":0,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"27237286819.599998"}},{"r":0,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5126315.0999999996"}},{"r":1,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"区内公司","qp":1}},{"r":1,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"19176729211.799999"}},{"r":1,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3309995.6"}},{"r":1,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"10232441962.700001"}},{"r":1,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1601842.1"}},{"r":1,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"8944287249.1000004"}},{"r":1,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1708153.5"}},{"r":1,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3741456937.3000002"}},{"r":1,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"723406.4"}},{"r":1,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"191935455.69999999"}},{"r":1,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"32961.1"}},{"r":1,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3549521481.5999999"}},{"r":1,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"690445.3"}},{"r":1,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"15435272274.5"}},{"r":1,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2586589.2000000002"}},{"r":1,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"10040506507.1"}},{"r":1,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1568881"}},{"r":1,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5394765767.3999996"}},{"r":1,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1017708.2"}},{"r":2,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"北京","qp":1}},{"r":2,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1639327850.0999999"}},{"r":2,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"232929.4"}},{"r":2,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1639304942.0999999"}},{"r":2,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"232926"}},{"r":2,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"22908"}},{"r":2,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3.4"}},{"r":2,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"10284238.1"}},{"r":2,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1602.9"}},{"r":2,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"10261330.1"}},{"r":2,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1599.5"}},{"r":2,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"22908"}},{"r":2,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3.4"}},{"r":2,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1629043612"}},{"r":2,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"231326.5"}},{"r":2,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1629043612"}},{"r":2,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"231326.5"}},{"r":2,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":2,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":3,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"天津","qp":1}},{"r":3,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"197102644"}},{"r":3,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"35879.800000000003"}},{"r":3,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"101723824.09999999"}},{"r":3,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"16908.5"}},{"r":3,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"95378819.900000006"}},{"r":3,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"18971.3"}},{"r":3,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"34415232.600000001"}},{"r":3,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6882.2"}},{"r":3,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4512011.2"}},{"r":3,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"812.5"}},{"r":3,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"29903221.399999999"}},{"r":3,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6069.6"}},{"r":3,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"162687411.40000001"}},{"r":3,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"28997.599999999999"}},{"r":3,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"97211812.900000006"}},{"r":3,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"16096"}},{"r":3,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"65475598.5"}},{"r":3,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"12901.7"}},{"r":4,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"河北","qp":1}},{"r":4,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"375906003.19999999"}},{"r":4,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"72168.800000000003"}},{"r":4,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"110165771.5"}},{"r":4,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"19157.8"}},{"r":4,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"265740231.69999999"}},{"r":4,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"53011.1"}},{"r":4,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"170439887.19999999"}},{"r":4,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"34131.199999999997"}},{"r":4,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3009197.5"}},{"r":4,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"531.9"}},{"r":4,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"167430689.69999999"}},{"r":4,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"33599.4"}},{"r":4,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"205466116"}},{"r":4,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"38037.599999999999"}},{"r":4,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"107156574"}},{"r":4,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"18625.900000000001"}},{"r":4,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"98309542"}},{"r":4,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"19411.7"}},{"r":5,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"山西","qp":1}},{"r":5,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"399821780.5"}},{"r":5,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"71645.600000000006"}},{"r":5,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"141027648.09999999"}},{"r":5,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"22877"}},{"r":5,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"258794132.40000001"}},{"r":5,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"48768.7"}},{"r":5,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"161910575.90000001"}},{"r":5,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"30756.7"}},{"r":5,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4719394.5"}},{"r":5,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"834"}},{"r":5,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"157191181.40000001"}},{"r":5,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"29922.7"}},{"r":5,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"237911204.59999999"}},{"r":5,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"40888.9"}},{"r":5,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"136308253.59999999"}},{"r":5,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"22042.9"}},{"r":5,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"101602951"}},{"r":5,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"18845.900000000001"}},{"r":6,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"河南","qp":1}},{"r":6,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"920677504.20000005"}},{"r":6,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"167568.5"}},{"r":6,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"289753107.89999998"}},{"r":6,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"47977.599999999999"}},{"r":6,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"630924396.29999995"}},{"r":6,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"119590.9"}},{"r":6,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"142879264.59999999"}},{"r":6,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"26971.3"}},{"r":6,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"10949355"}},{"r":6,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1889"}},{"r":6,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"131929909.59999999"}},{"r":6,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"25082.3"}},{"r":6,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"777798239.60000002"}},{"r":6,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"140597.20000000001"}},{"r":6,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"278803752.89999998"}},{"r":6,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"46088.6"}},{"r":6,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"498994486.69999999"}},{"r":6,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"94508.6"}},{"r":7,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"山东","qp":1}},{"r":7,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"921338354"}},{"r":7,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"174357.5"}},{"r":7,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"379283246.69999999"}},{"r":7,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"65057.2"}},{"r":7,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"542055107.29999995"}},{"r":7,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"109300.4"}},{"r":7,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"312142178.30000001"}},{"r":7,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"63198.5"}},{"r":7,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"25815498.699999999"}},{"r":7,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4692.8999999999996"}},{"r":7,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"286326679.60000002"}},{"r":7,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"58505.7"}},{"r":7,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"609196175.70000005"}},{"r":7,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"111159"}},{"r":7,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"353467748"}},{"r":7,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"60364.3"}},{"r":7,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"255728427.69999999"}},{"r":7,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"50794.7"}},{"r":8,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"上海","qp":1}},{"r":8,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"700158371.79999995"}},{"r":8,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"114934.7"}},{"r":8,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"339869447.69999999"}},{"r":8,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"47104.800000000003"}},{"r":8,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"360288924.10000002"}},{"r":8,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"67829.899999999994"}},{"r":8,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"113310877.59999999"}},{"r":8,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"22652.9"}},{"r":8,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"8785937.0999999996"}},{"r":8,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1447.7"}},{"r":8,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"104524940.5"}},{"r":8,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"21205.200000000001"}},{"r":8,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"586847494.20000005"}},{"r":8,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"92281.8"}},{"r":8,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"331083510.60000002"}},{"r":8,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"45657.1"}},{"r":8,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"255763983.59999999"}},{"r":8,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"46624.7"}},{"r":9,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"江苏","qp":1}},{"r":9,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2328408620.5999999"}},{"r":9,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"385231.7"}},{"r":9,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1457308176.4000001"}},{"r":9,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"218871.5"}},{"r":9,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"871100444.20000005"}},{"r":9,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"166360.20000000001"}},{"r":9,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"321834979.60000002"}},{"r":9,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"63399.7"}},{"r":9,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"23638030"}},{"r":9,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4164.1000000000004"}},{"r":9,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"298196949.60000002"}},{"r":9,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"59235.6"}},{"r":9,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2006573641.0999999"}},{"r":9,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"321832"}},{"r":9,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1433670146.4000001"}},{"r":9,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"214707.5"}},{"r":9,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"572903494.70000005"}},{"r":9,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"107124.5"}},{"r":10,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"浙江","qp":1}},{"r":10,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3209097346.5999999"}},{"r":10,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"555509.9"}},{"r":10,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1770617611.3"}},{"r":10,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"282921"}},{"r":10,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1438479735.3"}},{"r":10,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"272588.90000000002"}},{"r":10,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"547121572.20000005"}},{"r":10,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"105286.6"}},{"r":10,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"20516147.600000001"}},{"r":10,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3551.9"}},{"r":10,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"526605424.60000002"}},{"r":10,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"101734.7"}},{"r":10,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2661975774.4000001"}},{"r":10,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"450223.3"}},{"r":10,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1750101463.7"}},{"r":10,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"279369.09999999998"}},{"r":10,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"911874310.70000005"}},{"r":10,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"170854.2"}},{"r":11,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"福建","qp":1}},{"r":11,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"821056177.29999995"}},{"r":11,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"143190.79999999999"}},{"r":11,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"481154195.89999998"}},{"r":11,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"77969.899999999994"}},{"r":11,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"339901981.39999998"}},{"r":11,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"65220.800000000003"}},{"r":11,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"114980444.2"}},{"r":11,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"22484.6"}},{"r":11,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3744250"}},{"r":11,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"654"}},{"r":11,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"111236194.2"}},{"r":11,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"21830.6"}},{"r":11,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"706075733.10000002"}},{"r":11,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"120706.1"}},{"r":11,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"477409945.89999998"}},{"r":11,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"77315.899999999994"}},{"r":11,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"228665787.19999999"}},{"r":11,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"43390.2"}},{"r":12,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"安徽","qp":1}},{"r":12,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"897439716.89999998"}},{"r":12,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"143880.6"}},{"r":12,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"479411987.19999999"}},{"r":12,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"68040.399999999994"}},{"r":12,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"418027729.69999999"}},{"r":12,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"75840.2"}},{"r":12,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"175178199.40000001"}},{"r":12,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"33304.9"}},{"r":12,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"11227370"}},{"r":12,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1955"}},{"r":12,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"163950829.40000001"}},{"r":12,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"31349.9"}},{"r":12,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"722261517.5"}},{"r":12,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"110575.6"}},{"r":12,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"468184617.19999999"}},{"r":12,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"66085.399999999994"}},{"r":12,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"254076900.30000001"}},{"r":12,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"44490.3"}},{"r":13,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"江西","qp":1}},{"r":13,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"424480898.10000002"}},{"r":13,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"77887"}},{"r":13,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"104105580.8"}},{"r":13,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"17673.099999999999"}},{"r":13,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"320375317.30000001"}},{"r":13,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"60213.8"}},{"r":13,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"203787204"}},{"r":13,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"38057.4"}},{"r":13,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4484151.0999999996"}},{"r":13,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"768.4"}},{"r":13,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"199303052.90000001"}},{"r":13,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"37289"}},{"r":13,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"220693694.09999999"}},{"r":13,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"39829.599999999999"}},{"r":13,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"99621429.700000003"}},{"r":13,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"16904.8"}},{"r":13,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"121072264.40000001"}},{"r":13,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"22924.799999999999"}},{"r":14,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"湖北","qp":1}},{"r":14,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"400208110.19999999"}},{"r":14,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"69090.2"}},{"r":14,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"183618936.69999999"}},{"r":14,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"28662.1"}},{"r":14,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"216589173.40000001"}},{"r":14,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"40428.1"}},{"r":14,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"101799945.8"}},{"r":14,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"18829.3"}},{"r":14,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"8498576.9000000004"}},{"r":14,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1297"}},{"r":14,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"93301368.900000006"}},{"r":14,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"17532.3"}},{"r":14,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"298408164.39999998"}},{"r":14,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"50260.800000000003"}},{"r":14,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"175120359.80000001"}},{"r":14,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"27365.1"}},{"r":14,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"123287804.59999999"}},{"r":14,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"22895.8"}},{"r":15,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"湖南","qp":1}},{"r":15,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"894856651.70000005"}},{"r":15,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"158871.6"}},{"r":15,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"526952555"}},{"r":15,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"88878.1"}},{"r":15,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"367904096.69999999"}},{"r":15,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"69993.5"}},{"r":15,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"151284562.30000001"}},{"r":15,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"28575.3"}},{"r":15,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1746400"}},{"r":15,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"300"}},{"r":15,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"149538162.30000001"}},{"r":15,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"28275.3"}},{"r":15,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"743572089.39999998"}},{"r":15,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"130296.2"}},{"r":15,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"525206155"}},{"r":15,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"88578.1"}},{"r":15,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"218365934.40000001"}},{"r":15,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"41718.1"}},{"r":16,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"广东","qp":1}},{"r":16,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2094063051.3"}},{"r":16,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"382884.5"}},{"r":16,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1134410441"}},{"r":16,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"191533.7"}},{"r":16,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"959652610.39999998"}},{"r":16,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"191350.9"}},{"r":16,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"353601728.39999998"}},{"r":16,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"70785.600000000006"}},{"r":16,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"18461401.899999999"}},{"r":16,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3207.8"}},{"r":16,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"335140326.5"}},{"r":16,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"67577.7"}},{"r":16,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1740461323"}},{"r":16,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"312099"}},{"r":16,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1115949039.0999999"}},{"r":16,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"188325.8"}},{"r":16,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"624512283.89999998"}},{"r":16,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"123773.1"}},{"r":17,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"广西","qp":1}},{"r":17,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"881928162.60000002"}},{"r":17,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"153065.29999999999"}},{"r":17,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"392264700.60000002"}},{"r":17,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"60361.4"}},{"r":17,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"489663462"}},{"r":17,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"92704"}},{"r":17,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"319724661.5"}},{"r":17,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"61366"}},{"r":17,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"15377402.6"}},{"r":17,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2580.1"}},{"r":17,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"304347258.89999998"}},{"r":17,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"58785.9"}},{"r":17,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"562203501.10000002"}},{"r":17,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"91699.3"}},{"r":17,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"376887298"}},{"r":17,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"57781.3"}},{"r":17,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"185316203.19999999"}},{"r":17,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"33918.1"}},{"r":18,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"贵州","qp":1}},{"r":18,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"761419269.60000002"}},{"r":18,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"135602.79999999999"}},{"r":18,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"356599638.19999999"}},{"r":18,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"59521.5"}},{"r":18,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"404819631.39999998"}},{"r":18,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"76081.3"}},{"r":18,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"169856579.59999999"}},{"r":18,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"31752.799999999999"}},{"r":18,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5298353.3"}},{"r":18,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"900.4"}},{"r":18,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"164558226.30000001"}},{"r":18,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"30852.5"}},{"r":18,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"591562690"}},{"r":18,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"103849.9"}},{"r":18,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"351301284.89999998"}},{"r":18,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"58621.1"}},{"r":18,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"240261405.09999999"}},{"r":18,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"45228.800000000003"}},{"r":19,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"云南","qp":1}},{"r":19,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1069523219.5"}},{"r":19,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"195511.5"}},{"r":19,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"229315506.5"}},{"r":19,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"38869"}},{"r":19,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"840207713"}},{"r":19,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"156642.5"}},{"r":19,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"307813804.19999999"}},{"r":19,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"57696"}},{"r":19,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"8071280"}},{"r":19,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1366.2"}},{"r":19,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"299742524.19999999"}},{"r":19,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"56329.8"}},{"r":19,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"761709415.29999995"}},{"r":19,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"137815.6"}},{"r":19,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"221244226.5"}},{"r":19,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"37502.800000000003"}},{"r":19,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"540465188.79999995"}},{"r":19,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"100312.7"}},{"r":20,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"海南","qp":1}},{"r":20,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"239915479.69999999"}},{"r":20,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"39785.5"}},{"r":20,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"115554645.09999999"}},{"r":20,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"16531.7"}},{"r":20,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"124360834.59999999"}},{"r":20,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"23253.9"}},{"r":20,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"29091002.100000001"}},{"r":20,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5672.4"}},{"r":20,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2819368.3"}},{"r":20,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"408.9"}},{"r":20,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"26271633.800000001"}},{"r":20,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5263.5"}},{"r":20,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"210824477.69999999"}},{"r":20,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"34113.1"}},{"r":20,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"112735276.90000001"}},{"r":20,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"16122.8"}},{"r":20,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"98089200.799999997"}},{"r":20,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"17990.3"}},{"r":21,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"区外省市","qp":1}},{"r":21,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"10035855546"}},{"r":21,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1964509.7"}},{"r":21,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2197155097.3000002"}},{"r":21,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"390293.7"}},{"r":21,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7838700448.6999998"}},{"r":21,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1574216"}},{"r":21,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"434791957.19999999"}},{"r":21,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"82580"}},{"r":21,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"9754767.6999999993"}},{"r":21,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1684.4"}},{"r":21,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"425037189.5"}},{"r":21,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"80895.600000000006"}},{"r":21,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"9601063588.7999992"}},{"r":21,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1881929.7"}},{"r":21,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2187400329.5999999"}},{"r":21,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"388609.3"}},{"r":21,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7413663259.1999998"}},{"r":21,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1493320.5"}},{"r":22,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"黑龙江","qp":1}},{"r":22,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"129541171.09999999"}},{"r":22,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"24391.3"}},{"r":22,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"62821830.299999997"}},{"r":22,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"11458.3"}},{"r":22,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"66719340.799999997"}},{"r":22,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"12933"}},{"r":22,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"351794.8"}},{"r":22,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"68.400000000000006"}},{"r":22,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":22,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":22,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"351794.8"}},{"r":22,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"68.400000000000006"}},{"r":22,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"129189376.3"}},{"r":22,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"24322.9"}},{"r":22,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"62821830.299999997"}},{"r":22,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"11458.3"}},{"r":22,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"66367546"}},{"r":22,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"12864.5"}},{"r":23,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"吉林","qp":1}},{"r":23,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"78698824.599999994"}},{"r":23,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"15613.4"}},{"r":23,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"32110729"}},{"r":23,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5913"}},{"r":23,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"46588095.600000001"}},{"r":23,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"9700.4"}},{"r":23,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6612155.5"}},{"r":23,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1307.9000000000001"}},{"r":23,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"45864"}},{"r":23,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6"}},{"r":23,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6566291.5"}},{"r":23,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1301.9000000000001"}},{"r":23,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"72086669.099999994"}},{"r":23,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"14305.6"}},{"r":23,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"32064865"}},{"r":23,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5907"}},{"r":23,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"40021804.100000001"}},{"r":23,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"8398.6"}},{"r":24,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"辽宁","qp":1}},{"r":24,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7733295016.6000004"}},{"r":24,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1547329.3"}},{"r":24,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1522587629.4000001"}},{"r":24,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"278027.5"}},{"r":24,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6210707387.1000004"}},{"r":24,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1269301.8999999999"}},{"r":24,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"60966225.399999999"}},{"r":24,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"12480.2"}},{"r":24,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"884918"}},{"r":24,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"144"}},{"r":24,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"60081307.399999999"}},{"r":24,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"12336.2"}},{"r":24,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7672328791.1999998"}},{"r":24,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1534849.1"}},{"r":24,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1521702711.4000001"}},{"r":24,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"277883.5"}},{"r":24,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6150626079.6999998"}},{"r":24,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1256965.6000000001"}},{"r":25,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"陕西","qp":1}},{"r":25,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"216046916.09999999"}},{"r":25,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"42153.7"}},{"r":25,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"65047944"}},{"r":25,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"11657.8"}},{"r":25,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"150998972.09999999"}},{"r":25,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"30496"}},{"r":25,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"35712772.200000003"}},{"r":25,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6986"}},{"r":25,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4241540.8"}},{"r":25,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"756.3"}},{"r":25,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"31471231.399999999"}},{"r":25,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6229.7"}},{"r":25,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"180334143.90000001"}},{"r":25,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"35167.699999999997"}},{"r":25,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"60806403.200000003"}},{"r":25,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"10901.5"}},{"r":25,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"119527740.7"}},{"r":25,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"24266.2"}},{"r":26,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"新疆","qp":1}},{"r":26,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"834583660.60000002"}},{"r":26,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"144791.4"}},{"r":26,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"184835666.80000001"}},{"r":26,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"27384.1"}},{"r":26,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"649747993.89999998"}},{"r":26,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"117407.2"}},{"r":26,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"73977926"}},{"r":26,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"13424.5"}},{"r":26,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"647113.80000000005"}},{"r":26,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"93"}},{"r":26,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"73330812.099999994"}},{"r":26,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"13331.5"}},{"r":26,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"760605734.60000002"}},{"r":26,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"131366.9"}},{"r":26,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"184188552.90000001"}},{"r":26,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"27291.200000000001"}},{"r":26,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"576417181.70000005"}},{"r":26,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"104075.7"}},{"r":27,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"内蒙古","qp":1}},{"r":27,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"145212039.59999999"}},{"r":27,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"27917.599999999999"}},{"r":27,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"39988602.899999999"}},{"r":27,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7276.2"}},{"r":27,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"105223436.7"}},{"r":27,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"20641.400000000001"}},{"r":27,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"67942427.200000003"}},{"r":27,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"13237.9"}},{"r":27,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"100262.9"}},{"r":27,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"14.7"}},{"r":27,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"67842164.299999997"}},{"r":27,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"13223.2"}},{"r":27,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"77269612.400000006"}},{"r":27,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"14679.7"}},{"r":27,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"39888340"}},{"r":27,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7261.5"}},{"r":27,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"37381272.399999999"}},{"r":27,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7418.2"}},{"r":28,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"青海","qp":1}},{"r":28,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"21566200.199999999"}},{"r":28,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3999.8"}},{"r":28,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1237480"}},{"r":28,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"201"}},{"r":28,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"20328720.199999999"}},{"r":28,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3798.8"}},{"r":28,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"8181122.2999999998"}},{"r":28,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1522.1"}},{"r":28,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"127500"}},{"r":28,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"21"}},{"r":28,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"8053622.2999999998"}},{"r":28,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1501.1"}},{"r":28,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"13385077.9"}},{"r":28,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2477.6999999999998"}},{"r":28,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1109980"}},{"r":28,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"180"}},{"r":28,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"12275097.9"}},{"r":28,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2297.6999999999998"}},{"r":29,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"甘肃","qp":1}},{"r":29,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"32689330.300000001"}},{"r":29,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5767.2"}},{"r":29,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5726954.4000000004"}},{"r":29,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"831.6"}},{"r":29,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"26962375.899999999"}},{"r":29,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4935.7"}},{"r":29,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"12420033.6"}},{"r":29,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2265.6999999999998"}},{"r":29,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"193500"}},{"r":29,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"30"}},{"r":29,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"12226533.6"}},{"r":29,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2235.6999999999998"}},{"r":29,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"20269296.699999999"}},{"r":29,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3501.5"}},{"r":29,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5533454.4000000004"}},{"r":29,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"801.6"}},{"r":29,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"14735842.300000001"}},{"r":29,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2700"}},{"r":30,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"四川","qp":1}},{"r":30,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"342838681.19999999"}},{"r":30,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"62286.2"}},{"r":30,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"82197971.099999994"}},{"r":30,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"13580.9"}},{"r":30,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"260640710.19999999"}},{"r":30,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"48705.2"}},{"r":30,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"91659839.200000003"}},{"r":30,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"16902.599999999999"}},{"r":30,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":30,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":30,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"91659839.200000003"}},{"r":30,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"16902.599999999999"}},{"r":30,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"251178842.09999999"}},{"r":30,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"45383.6"}},{"r":30,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"82197971.099999994"}},{"r":30,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"13580.9"}},{"r":30,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"168980871"}},{"r":30,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"31802.7"}},{"r":31,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"重庆","qp":1}},{"r":31,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"484643083.69999999"}},{"r":31,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"87310"}},{"r":31,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"196324840.40000001"}},{"r":31,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"33260.699999999997"}},{"r":31,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"288318243.30000001"}},{"r":31,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"54049.3"}},{"r":31,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"75011847.299999997"}},{"r":31,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"14061.5"}},{"r":31,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3514068.1"}},{"r":31,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"619.5"}},{"r":31,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"71497779.200000003"}},{"r":31,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"13442"}},{"r":31,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"409631236.39999998"}},{"r":31,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"73248.5"}},{"r":31,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"192810772.40000001"}},{"r":31,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"32641.200000000001"}},{"r":31,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"216820464"}},{"r":31,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"40607.300000000003"}},{"r":32,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"西藏","qp":1}},{"r":32,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"16740621.9"}},{"r":32,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2949.8"}},{"r":32,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4275449"}},{"r":32,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"702.6"}},{"r":32,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"12465172.9"}},{"r":32,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2247.1999999999998"}},{"r":32,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1955813.7"}},{"r":32,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"323.3"}},{"r":32,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":32,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":32,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1955813.7"}},{"r":32,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"323.3"}},{"r":32,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"14784808.199999999"}},{"r":32,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2626.5"}},{"r":32,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4275449"}},{"r":32,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"702.6"}},{"r":32,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"10509359.199999999"}},{"r":32,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1923.9"}},{"r":33,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"大区小计","qp":1}},{"r":33,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"36024451898.699997"}},{"r":33,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5752528"}},{"r":33,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"21255742056"}},{"r":33,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3068184.5"}},{"r":33,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"14768709842.700001"}},{"r":33,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2684343.5"}},{"r":33,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"371099084.69999999"}},{"r":33,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"75830.899999999994"}},{"r":33,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"31247035"}},{"r":33,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6773.8"}},{"r":33,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"339852049.69999999"}},{"r":33,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"69057.100000000006"}},{"r":33,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"35653352814"}},{"r":33,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5676697.0999999996"}},{"r":33,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"21224495021"}},{"r":33,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3061410.7"}},{"r":33,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"14428857793"}},{"r":33,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2615286.4"}},{"r":34,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"华北","qp":1}},{"r":34,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"8979562707.2999992"}},{"r":34,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1430431.3"}},{"r":34,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5769830804.1000004"}},{"r":34,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"851308"}},{"r":34,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3209731903.1999998"}},{"r":34,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"579123.30000000005"}},{"r":34,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"80191139.5"}},{"r":34,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"16249.4"}},{"r":34,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":34,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":34,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"80191139.5"}},{"r":34,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"16249.4"}},{"r":34,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"8899371567.8999996"}},{"r":34,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1414181.9"}},{"r":34,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5769830804.1000004"}},{"r":34,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"851308"}},{"r":34,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3129540763.8000002"}},{"r":34,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"562874"}},{"r":35,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"华东","qp":1}},{"r":35,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7743100122.6000004"}},{"r":35,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1238875.3999999999"}},{"r":35,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4813028321"}},{"r":35,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"696549.2"}},{"r":35,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2930071801.5999999"}},{"r":35,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"542326.19999999995"}},{"r":35,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"72956393.599999994"}},{"r":35,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"15326.1"}},{"r":35,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"8332411"}},{"r":35,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2000"}},{"r":35,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"64623982.600000001"}},{"r":35,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"13326.2"}},{"r":35,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7670143729"}},{"r":35,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1223549.3"}},{"r":35,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4804695910"}},{"r":35,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"694549.2"}},{"r":35,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2865447819"}},{"r":35,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"529000.1"}},{"r":36,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"华中","qp":1}},{"r":36,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6445973642.6999998"}},{"r":36,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1002082.6"}},{"r":36,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3738291609.9000001"}},{"r":36,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"524638.9"}},{"r":36,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2707682032.9000001"}},{"r":36,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"477443.7"}},{"r":36,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"154601705.40000001"}},{"r":36,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"32604.9"}},{"r":36,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"22914624"}},{"r":36,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4773.8"}},{"r":36,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"131687081.40000001"}},{"r":36,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"27831"}},{"r":36,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6291371937.3000002"}},{"r":36,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"969477.8"}},{"r":36,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"3715376985.9000001"}},{"r":36,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"519865.1"}},{"r":36,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"2575994951.4000001"}},{"r":36,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"449612.7"}},{"r":37,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"华南","qp":1}},{"r":37,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"11537868598.799999"}},{"r":37,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1836507.6"}},{"r":37,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6442924168.1000004"}},{"r":37,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"914431.9"}},{"r":37,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5094944430.6999998"}},{"r":37,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"922075.7"}},{"r":37,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"34995802.399999999"}},{"r":37,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7091.3"}},{"r":37,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":37,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":37,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"34995802.399999999"}},{"r":37,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"7091.3"}},{"r":37,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"11502872796.4"}},{"r":37,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1829416.4"}},{"r":37,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"6442924168.1000004"}},{"r":37,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"914431.9"}},{"r":37,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"5059948628.3000002"}},{"r":37,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"914984.4"}},{"r":38,"c":0,"v":{"ct":{"fa":"General","t":"s"},"bg":"#A9D08E","fs":9,"fc":"#212D2A","ff":"Arial","vt":0,"tb":2,"v":"西北","qp":1}},{"r":38,"c":1,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1317946827.2"}},{"r":38,"c":2,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"244631"}},{"r":38,"c":3,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"491667152.89999998"}},{"r":38,"c":4,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"81256.5"}},{"r":38,"c":5,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"826279674.29999995"}},{"r":38,"c":6,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"163374.5"}},{"r":38,"c":7,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"28354043.800000001"}},{"r":38,"c":8,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4559.2"}},{"r":38,"c":9,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":38,"c":10,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#323232","ff":"Arial","vt":0,"tb":2}},{"r":38,"c":11,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"28354043.800000001"}},{"r":38,"c":12,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"4559.2"}},{"r":38,"c":13,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"1289592783.4000001"}},{"r":38,"c":14,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"240071.8"}},{"r":38,"c":15,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"491667152.89999998"}},{"r":38,"c":16,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"81256.5"}},{"r":38,"c":17,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"797925630.5"}},{"r":38,"c":18,"v":{"ct":{"fa":"General"},"bg":"#FFFFFF","fs":9,"fc":"#302C2A","ff":"Arial","vt":0,"tb":2,"v":"158815.29999999999"}}],"calcChain":[]},{"name":"Sheet2","config":{"columnlen":{"3":100},"customWidth":{"3":1}},"index":"2","status":"1","order":"1","luckysheet_select_save":[{"row":[19,19],"column":[6,6],"sheetIndex":2}],"zoomRatio":1,"showGridLines":"1","defaultColWidth":72,"defaultRowHeight":18,"celldata":[{"r":1,"c":3,"v":{"tb":1,"v":"2"}},{"r":1,"c":4,"v":{"tb":1,"v":"3"}},{"r":1,"c":5,"v":{"tb":1,"v":"4"}},{"r":1,"c":6,"v":{"tb":1,"v":"5"}},{"r":1,"c":7,"v":{"tb":1,"v":"6"}},{"r":1,"c":8,"v":{"tb":1,"v":"7"}},{"r":1,"c":9,"v":{"tb":1,"v":"8"}},{"r":1,"c":10,"v":{"tb":1,"v":"9"}},{"r":1,"c":11,"v":{"tb":1,"v":"10"}},{"r":1,"c":12,"v":{"tb":1,"v":"11"}},{"r":1,"c":13,"v":{"tb":1,"v":"12"}},{"r":1,"c":14,"v":{"tb":1,"v":"13"}},{"r":1,"c":15,"v":{"tb":1,"v":"14"}},{"r":1,"c":16,"v":{"tb":1,"v":"15"}},{"r":1,"c":17,"v":{"tb":1,"v":"16"}},{"r":1,"c":18,"v":{"tb":1,"v":"17"}},{"r":3,"c":2,"v":{"f":"=Sheet1!A1","tb":1,"v":"合计"}},{"r":3,"c":3,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"2121212"}},{"r":3,"c":4,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"11027033.300000001"}},{"r":3,"c":5,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"33685339116"}},{"r":3,"c":6,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"5060320.4000000004"}},{"r":3,"c":7,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"31551697540.5"}},{"r":3,"c":8,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"5966713"}},{"r":3,"c":9,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"4547347979.1000004"}},{"r":3,"c":10,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"881817.3"}},{"r":3,"c":11,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"232937258.30000001"}},{"r":3,"c":12,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"41419.4"}},{"r":3,"c":13,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"4314410720.8000002"}},{"r":3,"c":14,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"840397.9"}},{"r":3,"c":15,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"60689688677.300003"}},{"r":3,"c":16,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"10145216.1"}},{"r":3,"c":17,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"33452401857.700001"}},{"r":3,"c":18,"v":{"f":"=VLOOKUP($C4,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"5018901"}},{"r":4,"c":2,"v":{"f":"=Sheet1!A2","tb":1,"v":"区内公司"}},{"r":4,"c":3,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"19176729211.799999"}},{"r":4,"c":4,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"3309995.6"}},{"r":4,"c":5,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"10232441962.700001"}},{"r":4,"c":6,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"1601842.1"}},{"r":4,"c":7,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"8944287249.1000004"}},{"r":4,"c":8,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"1708153.5"}},{"r":4,"c":9,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"3741456937.3000002"}},{"r":4,"c":10,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"723406.4"}},{"r":4,"c":11,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"191935455.69999999"}},{"r":4,"c":12,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"32961.1"}},{"r":4,"c":13,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"3549521481.5999999"}},{"r":4,"c":14,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"690445.3"}},{"r":4,"c":15,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"15435272274.5"}},{"r":4,"c":16,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"2586589.2000000002"}},{"r":4,"c":17,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"10040506507.1"}},{"r":4,"c":18,"v":{"f":"=VLOOKUP($C5,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"1568881"}},{"r":5,"c":2,"v":{"f":"=Sheet1!A3","tb":1,"v":"北京"}},{"r":5,"c":3,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"1639327850.0999999"}},{"r":5,"c":4,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"232929.4"}},{"r":5,"c":5,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"1639304942.0999999"}},{"r":5,"c":6,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"232926"}},{"r":5,"c":7,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"22908"}},{"r":5,"c":8,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"3.4"}},{"r":5,"c":9,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"10284238.1"}},{"r":5,"c":10,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"1602.9"}},{"r":5,"c":11,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"10261330.1"}},{"r":5,"c":12,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"1599.5"}},{"r":5,"c":13,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"22908"}},{"r":5,"c":14,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"3.4"}},{"r":5,"c":15,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"1629043612"}},{"r":5,"c":16,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"231326.5"}},{"r":5,"c":17,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"1629043612"}},{"r":5,"c":18,"v":{"f":"=VLOOKUP($C6,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"231326.5"}},{"r":6,"c":2,"v":{"f":"=Sheet1!A4","tb":1,"v":"天津"}},{"r":6,"c":3,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"197102644"}},{"r":6,"c":4,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"35879.800000000003"}},{"r":6,"c":5,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"101723824.09999999"}},{"r":6,"c":6,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"16908.5"}},{"r":6,"c":7,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"95378819.900000006"}},{"r":6,"c":8,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"18971.3"}},{"r":6,"c":9,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"34415232.600000001"}},{"r":6,"c":10,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"6882.2"}},{"r":6,"c":11,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"4512011.2"}},{"r":6,"c":12,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"812.5"}},{"r":6,"c":13,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"29903221.399999999"}},{"r":6,"c":14,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"6069.6"}},{"r":6,"c":15,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"162687411.40000001"}},{"r":6,"c":16,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"28997.599999999999"}},{"r":6,"c":17,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"97211812.900000006"}},{"r":6,"c":18,"v":{"f":"=VLOOKUP($C7,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"16096"}},{"r":7,"c":2,"v":{"f":"=Sheet1!A5","tb":1,"v":"河北"}},{"r":7,"c":3,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"375906003.19999999"}},{"r":7,"c":4,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"72168.800000000003"}},{"r":7,"c":5,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"110165771.5"}},{"r":7,"c":6,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"19157.8"}},{"r":7,"c":7,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"265740231.69999999"}},{"r":7,"c":8,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"53011.1"}},{"r":7,"c":9,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"170439887.19999999"}},{"r":7,"c":10,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"34131.199999999997"}},{"r":7,"c":11,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"3009197.5"}},{"r":7,"c":12,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"531.9"}},{"r":7,"c":13,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"167430689.69999999"}},{"r":7,"c":14,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"33599.4"}},{"r":7,"c":15,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"205466116"}},{"r":7,"c":16,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"38037.599999999999"}},{"r":7,"c":17,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"107156574"}},{"r":7,"c":18,"v":{"f":"=VLOOKUP($C8,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"18625.900000000001"}},{"r":8,"c":2,"v":{"f":"=Sheet1!A6","tb":1,"v":"山西"}},{"r":8,"c":3,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"399821780.5"}},{"r":8,"c":4,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"71645.600000000006"}},{"r":8,"c":5,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"141027648.09999999"}},{"r":8,"c":6,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"22877"}},{"r":8,"c":7,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"258794132.40000001"}},{"r":8,"c":8,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"48768.7"}},{"r":8,"c":9,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"161910575.90000001"}},{"r":8,"c":10,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"30756.7"}},{"r":8,"c":11,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"4719394.5"}},{"r":8,"c":12,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"834"}},{"r":8,"c":13,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"157191181.40000001"}},{"r":8,"c":14,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"29922.7"}},{"r":8,"c":15,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"237911204.59999999"}},{"r":8,"c":16,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"40888.9"}},{"r":8,"c":17,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"136308253.59999999"}},{"r":8,"c":18,"v":{"f":"=VLOOKUP($C9,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"22042.9"}},{"r":9,"c":2,"v":{"f":"=Sheet1!A7","tb":1,"v":"河南"}},{"r":9,"c":3,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"920677504.20000005"}},{"r":9,"c":4,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"167568.5"}},{"r":9,"c":5,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"289753107.89999998"}},{"r":9,"c":6,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"47977.599999999999"}},{"r":9,"c":7,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"630924396.29999995"}},{"r":9,"c":8,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"119590.9"}},{"r":9,"c":9,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"142879264.59999999"}},{"r":9,"c":10,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"26971.3"}},{"r":9,"c":11,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"10949355"}},{"r":9,"c":12,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"1889"}},{"r":9,"c":13,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"131929909.59999999"}},{"r":9,"c":14,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"25082.3"}},{"r":9,"c":15,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"777798239.60000002"}},{"r":9,"c":16,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"140597.20000000001"}},{"r":9,"c":17,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"278803752.89999998"}},{"r":9,"c":18,"v":{"f":"=VLOOKUP($C10,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"46088.6"}},{"r":10,"c":2,"v":{"f":"=Sheet1!A8","tb":1,"v":"山东"}},{"r":10,"c":3,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"921338354"}},{"r":10,"c":4,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"174357.5"}},{"r":10,"c":5,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"379283246.69999999"}},{"r":10,"c":6,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"65057.2"}},{"r":10,"c":7,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"542055107.29999995"}},{"r":10,"c":8,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"109300.4"}},{"r":10,"c":9,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"312142178.30000001"}},{"r":10,"c":10,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"63198.5"}},{"r":10,"c":11,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"25815498.699999999"}},{"r":10,"c":12,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"4692.8999999999996"}},{"r":10,"c":13,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"286326679.60000002"}},{"r":10,"c":14,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"58505.7"}},{"r":10,"c":15,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"609196175.70000005"}},{"r":10,"c":16,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"111159"}},{"r":10,"c":17,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"353467748"}},{"r":10,"c":18,"v":{"f":"=VLOOKUP($C11,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"60364.3"}},{"r":11,"c":2,"v":{"f":"=Sheet1!A9","tb":1,"v":"上海"}},{"r":11,"c":3,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"700158371.79999995"}},{"r":11,"c":4,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"114934.7"}},{"r":11,"c":5,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"339869447.69999999"}},{"r":11,"c":6,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"47104.800000000003"}},{"r":11,"c":7,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"360288924.10000002"}},{"r":11,"c":8,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"67829.899999999994"}},{"r":11,"c":9,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"113310877.59999999"}},{"r":11,"c":10,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"22652.9"}},{"r":11,"c":11,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"8785937.0999999996"}},{"r":11,"c":12,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"1447.7"}},{"r":11,"c":13,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"104524940.5"}},{"r":11,"c":14,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"21205.200000000001"}},{"r":11,"c":15,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"586847494.20000005"}},{"r":11,"c":16,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"92281.8"}},{"r":11,"c":17,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"331083510.60000002"}},{"r":11,"c":18,"v":{"f":"=VLOOKUP($C12,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"45657.1"}},{"r":12,"c":2,"v":{"f":"=Sheet1!A10","tb":1,"v":"江苏"}},{"r":12,"c":3,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"2328408620.5999999"}},{"r":12,"c":4,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"385231.7"}},{"r":12,"c":5,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"1457308176.4000001"}},{"r":12,"c":6,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"218871.5"}},{"r":12,"c":7,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"871100444.20000005"}},{"r":12,"c":8,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"166360.20000000001"}},{"r":12,"c":9,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"321834979.60000002"}},{"r":12,"c":10,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"63399.7"}},{"r":12,"c":11,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"23638030"}},{"r":12,"c":12,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"4164.1000000000004"}},{"r":12,"c":13,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"298196949.60000002"}},{"r":12,"c":14,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"59235.6"}},{"r":12,"c":15,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"2006573641.0999999"}},{"r":12,"c":16,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"321832"}},{"r":12,"c":17,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"1433670146.4000001"}},{"r":12,"c":18,"v":{"f":"=VLOOKUP($C13,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"214707.5"}},{"r":13,"c":2,"v":{"f":"=Sheet1!A11","tb":1,"v":"浙江"}},{"r":13,"c":3,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"3209097346.5999999"}},{"r":13,"c":4,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"555509.9"}},{"r":13,"c":5,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"1770617611.3"}},{"r":13,"c":6,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"282921"}},{"r":13,"c":7,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"1438479735.3"}},{"r":13,"c":8,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"272588.90000000002"}},{"r":13,"c":9,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"547121572.20000005"}},{"r":13,"c":10,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"105286.6"}},{"r":13,"c":11,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"20516147.600000001"}},{"r":13,"c":12,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"3551.9"}},{"r":13,"c":13,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"526605424.60000002"}},{"r":13,"c":14,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"101734.7"}},{"r":13,"c":15,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"2661975774.4000001"}},{"r":13,"c":16,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"450223.3"}},{"r":13,"c":17,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"1750101463.7"}},{"r":13,"c":18,"v":{"f":"=VLOOKUP($C14,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"279369.09999999998"}},{"r":14,"c":2,"v":{"f":"=Sheet1!A12","tb":1,"v":"福建"}},{"r":14,"c":3,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"821056177.29999995"}},{"r":14,"c":4,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"143190.79999999999"}},{"r":14,"c":5,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"481154195.89999998"}},{"r":14,"c":6,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"77969.899999999994"}},{"r":14,"c":7,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"339901981.39999998"}},{"r":14,"c":8,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"65220.800000000003"}},{"r":14,"c":9,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"114980444.2"}},{"r":14,"c":10,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"22484.6"}},{"r":14,"c":11,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"3744250"}},{"r":14,"c":12,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"654"}},{"r":14,"c":13,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"111236194.2"}},{"r":14,"c":14,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"21830.6"}},{"r":14,"c":15,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"706075733.10000002"}},{"r":14,"c":16,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"120706.1"}},{"r":14,"c":17,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"477409945.89999998"}},{"r":14,"c":18,"v":{"f":"=VLOOKUP($C15,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"77315.899999999994"}},{"r":15,"c":2,"v":{"f":"=Sheet1!A13","tb":1,"v":"安徽"}},{"r":15,"c":3,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"897439716.89999998"}},{"r":15,"c":4,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"143880.6"}},{"r":15,"c":5,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"479411987.19999999"}},{"r":15,"c":6,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"68040.399999999994"}},{"r":15,"c":7,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"418027729.69999999"}},{"r":15,"c":8,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"75840.2"}},{"r":15,"c":9,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"175178199.40000001"}},{"r":15,"c":10,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"33304.9"}},{"r":15,"c":11,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"11227370"}},{"r":15,"c":12,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"1955"}},{"r":15,"c":13,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"163950829.40000001"}},{"r":15,"c":14,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"31349.9"}},{"r":15,"c":15,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"722261517.5"}},{"r":15,"c":16,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"110575.6"}},{"r":15,"c":17,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"468184617.19999999"}},{"r":15,"c":18,"v":{"f":"=VLOOKUP($C16,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"66085.399999999994"}},{"r":16,"c":2,"v":{"f":"=Sheet1!A14","tb":1,"v":"江西"}},{"r":16,"c":3,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"424480898.10000002"}},{"r":16,"c":4,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"77887"}},{"r":16,"c":5,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"104105580.8"}},{"r":16,"c":6,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"17673.099999999999"}},{"r":16,"c":7,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"320375317.30000001"}},{"r":16,"c":8,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"60213.8"}},{"r":16,"c":9,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"203787204"}},{"r":16,"c":10,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"38057.4"}},{"r":16,"c":11,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"4484151.0999999996"}},{"r":16,"c":12,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"768.4"}},{"r":16,"c":13,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"199303052.90000001"}},{"r":16,"c":14,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"37289"}},{"r":16,"c":15,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"220693694.09999999"}},{"r":16,"c":16,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"39829.599999999999"}},{"r":16,"c":17,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"99621429.700000003"}},{"r":16,"c":18,"v":{"f":"=VLOOKUP($C17,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"16904.8"}},{"r":17,"c":2,"v":{"f":"=Sheet1!A15","tb":1,"v":"湖北"}},{"r":17,"c":3,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"400208110.19999999"}},{"r":17,"c":4,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"69090.2"}},{"r":17,"c":5,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"183618936.69999999"}},{"r":17,"c":6,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"28662.1"}},{"r":17,"c":7,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"216589173.40000001"}},{"r":17,"c":8,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"40428.1"}},{"r":17,"c":9,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"101799945.8"}},{"r":17,"c":10,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"18829.3"}},{"r":17,"c":11,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"8498576.9000000004"}},{"r":17,"c":12,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"1297"}},{"r":17,"c":13,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"93301368.900000006"}},{"r":17,"c":14,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"17532.3"}},{"r":17,"c":15,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"298408164.39999998"}},{"r":17,"c":16,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"50260.800000000003"}},{"r":17,"c":17,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"175120359.80000001"}},{"r":17,"c":18,"v":{"f":"=VLOOKUP($C18,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"27365.1"}},{"r":18,"c":2,"v":{"f":"=Sheet1!A16","tb":1,"v":"湖南"}},{"r":18,"c":3,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"894856651.70000005"}},{"r":18,"c":4,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"158871.6"}},{"r":18,"c":5,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"526952555"}},{"r":18,"c":6,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"88878.1"}},{"r":18,"c":7,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"367904096.69999999"}},{"r":18,"c":8,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"69993.5"}},{"r":18,"c":9,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"151284562.30000001"}},{"r":18,"c":10,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"28575.3"}},{"r":18,"c":11,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"1746400"}},{"r":18,"c":12,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"300"}},{"r":18,"c":13,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"149538162.30000001"}},{"r":18,"c":14,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"28275.3"}},{"r":18,"c":15,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"743572089.39999998"}},{"r":18,"c":16,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"130296.2"}},{"r":18,"c":17,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"525206155"}},{"r":18,"c":18,"v":{"f":"=VLOOKUP($C19,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"88578.1"}},{"r":19,"c":2,"v":{"f":"=Sheet1!A17","tb":1,"v":"广东"}},{"r":19,"c":3,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"2094063051.3"}},{"r":19,"c":4,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"382884.5"}},{"r":19,"c":5,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"1134410441"}},{"r":19,"c":6,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"191533.7"}},{"r":19,"c":7,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"959652610.39999998"}},{"r":19,"c":8,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"191350.9"}},{"r":19,"c":9,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"353601728.39999998"}},{"r":19,"c":10,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"70785.600000000006"}},{"r":19,"c":11,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"18461401.899999999"}},{"r":19,"c":12,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"3207.8"}},{"r":19,"c":13,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"335140326.5"}},{"r":19,"c":14,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"67577.7"}},{"r":19,"c":15,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"1740461323"}},{"r":19,"c":16,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"312099"}},{"r":19,"c":17,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"1115949039.0999999"}},{"r":19,"c":18,"v":{"f":"=VLOOKUP($C20,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"188325.8"}},{"r":20,"c":2,"v":{"f":"=Sheet1!A18","tb":1,"v":"广西"}},{"r":20,"c":3,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"881928162.60000002"}},{"r":20,"c":4,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"153065.29999999999"}},{"r":20,"c":5,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"392264700.60000002"}},{"r":20,"c":6,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"60361.4"}},{"r":20,"c":7,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"489663462"}},{"r":20,"c":8,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"92704"}},{"r":20,"c":9,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"319724661.5"}},{"r":20,"c":10,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"61366"}},{"r":20,"c":11,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"15377402.6"}},{"r":20,"c":12,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"2580.1"}},{"r":20,"c":13,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"304347258.89999998"}},{"r":20,"c":14,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"58785.9"}},{"r":20,"c":15,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"562203501.10000002"}},{"r":20,"c":16,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"91699.3"}},{"r":20,"c":17,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"376887298"}},{"r":20,"c":18,"v":{"f":"=VLOOKUP($C21,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"57781.3"}},{"r":21,"c":2,"v":{"f":"=Sheet1!A19","tb":1,"v":"贵州"}},{"r":21,"c":3,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"761419269.60000002"}},{"r":21,"c":4,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"135602.79999999999"}},{"r":21,"c":5,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"356599638.19999999"}},{"r":21,"c":6,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"59521.5"}},{"r":21,"c":7,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"404819631.39999998"}},{"r":21,"c":8,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"76081.3"}},{"r":21,"c":9,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"169856579.59999999"}},{"r":21,"c":10,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"31752.799999999999"}},{"r":21,"c":11,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"5298353.3"}},{"r":21,"c":12,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"900.4"}},{"r":21,"c":13,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"164558226.30000001"}},{"r":21,"c":14,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"30852.5"}},{"r":21,"c":15,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"591562690"}},{"r":21,"c":16,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"103849.9"}},{"r":21,"c":17,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"351301284.89999998"}},{"r":21,"c":18,"v":{"f":"=VLOOKUP($C22,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"58621.1"}},{"r":22,"c":2,"v":{"f":"=Sheet1!A20","tb":1,"v":"云南"}},{"r":22,"c":3,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"1069523219.5"}},{"r":22,"c":4,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"195511.5"}},{"r":22,"c":5,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"229315506.5"}},{"r":22,"c":6,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"38869"}},{"r":22,"c":7,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"840207713"}},{"r":22,"c":8,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"156642.5"}},{"r":22,"c":9,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"307813804.19999999"}},{"r":22,"c":10,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"57696"}},{"r":22,"c":11,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"8071280"}},{"r":22,"c":12,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"1366.2"}},{"r":22,"c":13,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"299742524.19999999"}},{"r":22,"c":14,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"56329.8"}},{"r":22,"c":15,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"761709415.29999995"}},{"r":22,"c":16,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"137815.6"}},{"r":22,"c":17,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"221244226.5"}},{"r":22,"c":18,"v":{"f":"=VLOOKUP($C23,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"37502.800000000003"}},{"r":23,"c":2,"v":{"f":"=Sheet1!A21","tb":1,"v":"海南"}},{"r":23,"c":3,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"239915479.69999999"}},{"r":23,"c":4,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"39785.5"}},{"r":23,"c":5,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"115554645.09999999"}},{"r":23,"c":6,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"16531.7"}},{"r":23,"c":7,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"124360834.59999999"}},{"r":23,"c":8,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"23253.9"}},{"r":23,"c":9,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"29091002.100000001"}},{"r":23,"c":10,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"5672.4"}},{"r":23,"c":11,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"2819368.3"}},{"r":23,"c":12,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"408.9"}},{"r":23,"c":13,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"26271633.800000001"}},{"r":23,"c":14,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"5263.5"}},{"r":23,"c":15,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"210824477.69999999"}},{"r":23,"c":16,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"34113.1"}},{"r":23,"c":17,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"112735276.90000001"}},{"r":23,"c":18,"v":{"f":"=VLOOKUP($C24,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"16122.8"}},{"r":24,"c":2,"v":{"f":"=Sheet1!A22","tb":1,"v":"区外省市"}},{"r":24,"c":3,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"10035855546"}},{"r":24,"c":4,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"1964509.7"}},{"r":24,"c":5,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"2197155097.3000002"}},{"r":24,"c":6,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"390293.7"}},{"r":24,"c":7,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"7838700448.6999998"}},{"r":24,"c":8,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"1574216"}},{"r":24,"c":9,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"434791957.19999999"}},{"r":24,"c":10,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"82580"}},{"r":24,"c":11,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"9754767.6999999993"}},{"r":24,"c":12,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"1684.4"}},{"r":24,"c":13,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"425037189.5"}},{"r":24,"c":14,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"80895.600000000006"}},{"r":24,"c":15,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"9601063588.7999992"}},{"r":24,"c":16,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"1881929.7"}},{"r":24,"c":17,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"2187400329.5999999"}},{"r":24,"c":18,"v":{"f":"=VLOOKUP($C25,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"388609.3"}},{"r":25,"c":2,"v":{"f":"=Sheet1!A23","tb":1,"v":"黑龙江"}},{"r":25,"c":3,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"129541171.09999999"}},{"r":25,"c":4,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"24391.3"}},{"r":25,"c":5,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"62821830.299999997"}},{"r":25,"c":6,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"11458.3"}},{"r":25,"c":7,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"66719340.799999997"}},{"r":25,"c":8,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"12933"}},{"r":25,"c":9,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"351794.8"}},{"r":25,"c":10,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"68.400000000000006"}},{"r":25,"c":11,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"0"}},{"r":25,"c":12,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"0"}},{"r":25,"c":13,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"351794.8"}},{"r":25,"c":14,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"68.400000000000006"}},{"r":25,"c":15,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"129189376.3"}},{"r":25,"c":16,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"24322.9"}},{"r":25,"c":17,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"62821830.299999997"}},{"r":25,"c":18,"v":{"f":"=VLOOKUP($C26,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"11458.3"}},{"r":26,"c":2,"v":{"f":"=Sheet1!A24","tb":1,"v":"吉林"}},{"r":26,"c":3,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"78698824.599999994"}},{"r":26,"c":4,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"15613.4"}},{"r":26,"c":5,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"32110729"}},{"r":26,"c":6,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"5913"}},{"r":26,"c":7,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"46588095.600000001"}},{"r":26,"c":8,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"9700.4"}},{"r":26,"c":9,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"6612155.5"}},{"r":26,"c":10,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"1307.9000000000001"}},{"r":26,"c":11,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"45864"}},{"r":26,"c":12,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"6"}},{"r":26,"c":13,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"6566291.5"}},{"r":26,"c":14,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"1301.9000000000001"}},{"r":26,"c":15,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"72086669.099999994"}},{"r":26,"c":16,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"14305.6"}},{"r":26,"c":17,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"32064865"}},{"r":26,"c":18,"v":{"f":"=VLOOKUP($C27,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"5907"}},{"r":27,"c":2,"v":{"f":"=Sheet1!A25","tb":1,"v":"辽宁"}},{"r":27,"c":3,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"7733295016.6000004"}},{"r":27,"c":4,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"1547329.3"}},{"r":27,"c":5,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"1522587629.4000001"}},{"r":27,"c":6,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"278027.5"}},{"r":27,"c":7,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"6210707387.1000004"}},{"r":27,"c":8,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"1269301.8999999999"}},{"r":27,"c":9,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"60966225.399999999"}},{"r":27,"c":10,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"12480.2"}},{"r":27,"c":11,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"884918"}},{"r":27,"c":12,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"144"}},{"r":27,"c":13,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"60081307.399999999"}},{"r":27,"c":14,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"12336.2"}},{"r":27,"c":15,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"7672328791.1999998"}},{"r":27,"c":16,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"1534849.1"}},{"r":27,"c":17,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"1521702711.4000001"}},{"r":27,"c":18,"v":{"f":"=VLOOKUP($C28,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"277883.5"}},{"r":28,"c":2,"v":{"f":"=Sheet1!A26","tb":1,"v":"陕西"}},{"r":28,"c":3,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"216046916.09999999"}},{"r":28,"c":4,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"42153.7"}},{"r":28,"c":5,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"65047944"}},{"r":28,"c":6,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"11657.8"}},{"r":28,"c":7,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"150998972.09999999"}},{"r":28,"c":8,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"30496"}},{"r":28,"c":9,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"35712772.200000003"}},{"r":28,"c":10,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"6986"}},{"r":28,"c":11,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"4241540.8"}},{"r":28,"c":12,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"756.3"}},{"r":28,"c":13,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"31471231.399999999"}},{"r":28,"c":14,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"6229.7"}},{"r":28,"c":15,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"180334143.90000001"}},{"r":28,"c":16,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"35167.699999999997"}},{"r":28,"c":17,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"60806403.200000003"}},{"r":28,"c":18,"v":{"f":"=VLOOKUP($C29,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"10901.5"}},{"r":29,"c":2,"v":{"f":"=Sheet1!A27","tb":1,"v":"新疆"}},{"r":29,"c":3,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"834583660.60000002"}},{"r":29,"c":4,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"144791.4"}},{"r":29,"c":5,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"184835666.80000001"}},{"r":29,"c":6,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"27384.1"}},{"r":29,"c":7,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"649747993.89999998"}},{"r":29,"c":8,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"117407.2"}},{"r":29,"c":9,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"73977926"}},{"r":29,"c":10,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"13424.5"}},{"r":29,"c":11,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"647113.80000000005"}},{"r":29,"c":12,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"93"}},{"r":29,"c":13,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"73330812.099999994"}},{"r":29,"c":14,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"13331.5"}},{"r":29,"c":15,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"760605734.60000002"}},{"r":29,"c":16,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"131366.9"}},{"r":29,"c":17,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"184188552.90000001"}},{"r":29,"c":18,"v":{"f":"=VLOOKUP($C30,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"27291.200000000001"}},{"r":30,"c":2,"v":{"f":"=Sheet1!A28","tb":1,"v":"内蒙古"}},{"r":30,"c":3,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"145212039.59999999"}},{"r":30,"c":4,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"27917.599999999999"}},{"r":30,"c":5,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"39988602.899999999"}},{"r":30,"c":6,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"7276.2"}},{"r":30,"c":7,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"105223436.7"}},{"r":30,"c":8,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"20641.400000000001"}},{"r":30,"c":9,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"67942427.200000003"}},{"r":30,"c":10,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"13237.9"}},{"r":30,"c":11,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"100262.9"}},{"r":30,"c":12,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"14.7"}},{"r":30,"c":13,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"67842164.299999997"}},{"r":30,"c":14,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"13223.2"}},{"r":30,"c":15,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"77269612.400000006"}},{"r":30,"c":16,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"14679.7"}},{"r":30,"c":17,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"39888340"}},{"r":30,"c":18,"v":{"f":"=VLOOKUP($C31,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"7261.5"}},{"r":31,"c":2,"v":{"f":"=Sheet1!A29","tb":1,"v":"青海"}},{"r":31,"c":3,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"21566200.199999999"}},{"r":31,"c":4,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"3999.8"}},{"r":31,"c":5,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"1237480"}},{"r":31,"c":6,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"201"}},{"r":31,"c":7,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"20328720.199999999"}},{"r":31,"c":8,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"3798.8"}},{"r":31,"c":9,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"8181122.2999999998"}},{"r":31,"c":10,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"1522.1"}},{"r":31,"c":11,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"127500"}},{"r":31,"c":12,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"21"}},{"r":31,"c":13,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"8053622.2999999998"}},{"r":31,"c":14,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"1501.1"}},{"r":31,"c":15,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"13385077.9"}},{"r":31,"c":16,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"2477.6999999999998"}},{"r":31,"c":17,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"1109980"}},{"r":31,"c":18,"v":{"f":"=VLOOKUP($C32,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"180"}},{"r":32,"c":2,"v":{"f":"=Sheet1!A30","tb":1,"v":"甘肃"}},{"r":32,"c":3,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"32689330.300000001"}},{"r":32,"c":4,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"5767.2"}},{"r":32,"c":5,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"5726954.4000000004"}},{"r":32,"c":6,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"831.6"}},{"r":32,"c":7,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"26962375.899999999"}},{"r":32,"c":8,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"4935.7"}},{"r":32,"c":9,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"12420033.6"}},{"r":32,"c":10,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"2265.6999999999998"}},{"r":32,"c":11,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"193500"}},{"r":32,"c":12,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"30"}},{"r":32,"c":13,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"12226533.6"}},{"r":32,"c":14,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"2235.6999999999998"}},{"r":32,"c":15,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"20269296.699999999"}},{"r":32,"c":16,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"3501.5"}},{"r":32,"c":17,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"5533454.4000000004"}},{"r":32,"c":18,"v":{"f":"=VLOOKUP($C33,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"801.6"}},{"r":33,"c":2,"v":{"f":"=Sheet1!A31","tb":1,"v":"四川"}},{"r":33,"c":3,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"342838681.19999999"}},{"r":33,"c":4,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"62286.2"}},{"r":33,"c":5,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"82197971.099999994"}},{"r":33,"c":6,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"13580.9"}},{"r":33,"c":7,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"260640710.19999999"}},{"r":33,"c":8,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"48705.2"}},{"r":33,"c":9,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"91659839.200000003"}},{"r":33,"c":10,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"16902.599999999999"}},{"r":33,"c":11,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"0"}},{"r":33,"c":12,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"0"}},{"r":33,"c":13,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"91659839.200000003"}},{"r":33,"c":14,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"16902.599999999999"}},{"r":33,"c":15,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"251178842.09999999"}},{"r":33,"c":16,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"45383.6"}},{"r":33,"c":17,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"82197971.099999994"}},{"r":33,"c":18,"v":{"f":"=VLOOKUP($C34,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"13580.9"}},{"r":34,"c":2,"v":{"f":"=Sheet1!A32","tb":1,"v":"重庆"}},{"r":34,"c":3,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"484643083.69999999"}},{"r":34,"c":4,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"87310"}},{"r":34,"c":5,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"196324840.40000001"}},{"r":34,"c":6,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"33260.699999999997"}},{"r":34,"c":7,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"288318243.30000001"}},{"r":34,"c":8,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"54049.3"}},{"r":34,"c":9,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"75011847.299999997"}},{"r":34,"c":10,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"14061.5"}},{"r":34,"c":11,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"3514068.1"}},{"r":34,"c":12,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"619.5"}},{"r":34,"c":13,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"71497779.200000003"}},{"r":34,"c":14,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"13442"}},{"r":34,"c":15,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"409631236.39999998"}},{"r":34,"c":16,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"73248.5"}},{"r":34,"c":17,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"192810772.40000001"}},{"r":34,"c":18,"v":{"f":"=VLOOKUP($C35,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"32641.200000000001"}},{"r":35,"c":2,"v":{"f":"=Sheet1!A33","tb":1,"v":"西藏"}},{"r":35,"c":3,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"16740621.9"}},{"r":35,"c":4,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"2949.8"}},{"r":35,"c":5,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"4275449"}},{"r":35,"c":6,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"702.6"}},{"r":35,"c":7,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"12465172.9"}},{"r":35,"c":8,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"2247.1999999999998"}},{"r":35,"c":9,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"1955813.7"}},{"r":35,"c":10,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"323.3"}},{"r":35,"c":11,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"0"}},{"r":35,"c":12,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"0"}},{"r":35,"c":13,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"1955813.7"}},{"r":35,"c":14,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"323.3"}},{"r":35,"c":15,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"14784808.199999999"}},{"r":35,"c":16,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"2626.5"}},{"r":35,"c":17,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"4275449"}},{"r":35,"c":18,"v":{"f":"=VLOOKUP($C36,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"702.6"}},{"r":36,"c":2,"v":{"f":"=Sheet1!A34","tb":1,"v":"大区小计"}},{"r":36,"c":3,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"36024451898.699997"}},{"r":36,"c":4,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"5752528"}},{"r":36,"c":5,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"21255742056"}},{"r":36,"c":6,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"3068184.5"}},{"r":36,"c":7,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"14768709842.700001"}},{"r":36,"c":8,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"2684343.5"}},{"r":36,"c":9,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"371099084.69999999"}},{"r":36,"c":10,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"75830.899999999994"}},{"r":36,"c":11,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"31247035"}},{"r":36,"c":12,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"6773.8"}},{"r":36,"c":13,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"339852049.69999999"}},{"r":36,"c":14,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"69057.100000000006"}},{"r":36,"c":15,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"35653352814"}},{"r":36,"c":16,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"5676697.0999999996"}},{"r":36,"c":17,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"21224495021"}},{"r":36,"c":18,"v":{"f":"=VLOOKUP($C37,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"3061410.7"}},{"r":37,"c":2,"v":{"f":"=Sheet1!A35","tb":1,"v":"华北"}},{"r":37,"c":3,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"8979562707.2999992"}},{"r":37,"c":4,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"1430431.3"}},{"r":37,"c":5,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"5769830804.1000004"}},{"r":37,"c":6,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"851308"}},{"r":37,"c":7,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"3209731903.1999998"}},{"r":37,"c":8,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"579123.30000000005"}},{"r":37,"c":9,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"80191139.5"}},{"r":37,"c":10,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"16249.4"}},{"r":37,"c":11,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"0"}},{"r":37,"c":12,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"0"}},{"r":37,"c":13,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"80191139.5"}},{"r":37,"c":14,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"16249.4"}},{"r":37,"c":15,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"8899371567.8999996"}},{"r":37,"c":16,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"1414181.9"}},{"r":37,"c":17,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"5769830804.1000004"}},{"r":37,"c":18,"v":{"f":"=VLOOKUP($C38,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"851308"}},{"r":38,"c":2,"v":{"f":"=Sheet1!A36","tb":1,"v":"华东"}},{"r":38,"c":3,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"7743100122.6000004"}},{"r":38,"c":4,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"1238875.3999999999"}},{"r":38,"c":5,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"4813028321"}},{"r":38,"c":6,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"696549.2"}},{"r":38,"c":7,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"2930071801.5999999"}},{"r":38,"c":8,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"542326.19999999995"}},{"r":38,"c":9,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"72956393.599999994"}},{"r":38,"c":10,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"15326.1"}},{"r":38,"c":11,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"8332411"}},{"r":38,"c":12,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"2000"}},{"r":38,"c":13,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"64623982.600000001"}},{"r":38,"c":14,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"13326.2"}},{"r":38,"c":15,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"7670143729"}},{"r":38,"c":16,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"1223549.3"}},{"r":38,"c":17,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"4804695910"}},{"r":38,"c":18,"v":{"f":"=VLOOKUP($C39,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"694549.2"}},{"r":39,"c":2,"v":{"f":"=Sheet1!A37","tb":1,"v":"华中"}},{"r":39,"c":3,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"6445973642.6999998"}},{"r":39,"c":4,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"1002082.6"}},{"r":39,"c":5,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"3738291609.9000001"}},{"r":39,"c":6,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"524638.9"}},{"r":39,"c":7,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"2707682032.9000001"}},{"r":39,"c":8,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"477443.7"}},{"r":39,"c":9,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"154601705.40000001"}},{"r":39,"c":10,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"32604.9"}},{"r":39,"c":11,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"22914624"}},{"r":39,"c":12,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"4773.8"}},{"r":39,"c":13,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"131687081.40000001"}},{"r":39,"c":14,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"27831"}},{"r":39,"c":15,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"6291371937.3000002"}},{"r":39,"c":16,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"969477.8"}},{"r":39,"c":17,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"3715376985.9000001"}},{"r":39,"c":18,"v":{"f":"=VLOOKUP($C40,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"519865.1"}},{"r":40,"c":2,"v":{"f":"=Sheet1!A38","tb":1,"v":"华南"}},{"r":40,"c":3,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"11537868598.799999"}},{"r":40,"c":4,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"1836507.6"}},{"r":40,"c":5,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"6442924168.1000004"}},{"r":40,"c":6,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"914431.9"}},{"r":40,"c":7,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"5094944430.6999998"}},{"r":40,"c":8,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"922075.7"}},{"r":40,"c":9,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"34995802.399999999"}},{"r":40,"c":10,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"7091.3"}},{"r":40,"c":11,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"0"}},{"r":40,"c":12,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"0"}},{"r":40,"c":13,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"34995802.399999999"}},{"r":40,"c":14,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"7091.3"}},{"r":40,"c":15,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"11502872796.4"}},{"r":40,"c":16,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"1829416.4"}},{"r":40,"c":17,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"6442924168.1000004"}},{"r":40,"c":18,"v":{"f":"=VLOOKUP($C41,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"914431.9"}},{"r":41,"c":2,"v":{"f":"=Sheet1!A39","tb":1,"v":"西北"}},{"r":41,"c":3,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!D$2,FALSE())","tb":1,"v":"1317946827.2"}},{"r":41,"c":4,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!E$2,FALSE())","tb":1,"v":"244631"}},{"r":41,"c":5,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!F$2,FALSE())","tb":1,"v":"491667152.89999998"}},{"r":41,"c":6,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!G$2,FALSE())","tb":1,"v":"81256.5"}},{"r":41,"c":7,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!H$2,FALSE())","tb":1,"v":"826279674.29999995"}},{"r":41,"c":8,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!I$2,FALSE())","tb":1,"v":"163374.5"}},{"r":41,"c":9,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!J$2,FALSE())","tb":1,"v":"28354043.800000001"}},{"r":41,"c":10,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!K$2,FALSE())","tb":1,"v":"4559.2"}},{"r":41,"c":11,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!L$2,FALSE())","tb":1,"v":"0"}},{"r":41,"c":12,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!M$2,FALSE())","tb":1,"v":"0"}},{"r":41,"c":13,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!N$2,FALSE())","tb":1,"v":"28354043.800000001"}},{"r":41,"c":14,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!O$2,FALSE())","tb":1,"v":"4559.2"}},{"r":41,"c":15,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!P$2,FALSE())","tb":1,"v":"1289592783.4000001"}},{"r":41,"c":16,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!Q$2,FALSE())","tb":1,"v":"240071.8"}},{"r":41,"c":17,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!R$2,FALSE())","tb":1,"v":"491667152.89999998"}},{"r":41,"c":18,"v":{"f":"=VLOOKUP($C42,Sheet1!$A$1:$S$39,Sheet2!S$2,FALSE())","tb":1,"v":"81256.5"}}],"calcChain":[{"r":41,"c":2,"index":"2"},{"r":41,"c":3,"index":"2"},{"r":4,"c":2,"index":"2"},{"r":4,"c":3,"index":"2"},{"r":5,"c":2,"index":"2"},{"r":5,"c":3,"index":"2"},{"r":6,"c":2,"index":"2"},{"r":6,"c":3,"index":"2"},{"r":7,"c":2,"index":"2"},{"r":7,"c":3,"index":"2"},{"r":8,"c":2,"index":"2"},{"r":8,"c":3,"index":"2"},{"r":9,"c":2,"index":"2"},{"r":9,"c":3,"index":"2"},{"r":10,"c":2,"index":"2"},{"r":10,"c":3,"index":"2"},{"r":11,"c":2,"index":"2"},{"r":11,"c":3,"index":"2"},{"r":12,"c":2,"index":"2"},{"r":12,"c":3,"index":"2"},{"r":13,"c":2,"index":"2"},{"r":13,"c":3,"index":"2"},{"r":14,"c":2,"index":"2"},{"r":14,"c":3,"index":"2"},{"r":15,"c":2,"index":"2"},{"r":15,"c":3,"index":"2"},{"r":16,"c":2,"index":"2"},{"r":16,"c":3,"index":"2"},{"r":17,"c":2,"index":"2"},{"r":17,"c":3,"index":"2"},{"r":18,"c":2,"index":"2"},{"r":18,"c":3,"index":"2"},{"r":19,"c":2,"index":"2"},{"r":19,"c":3,"index":"2"},{"r":20,"c":2,"index":"2"},{"r":20,"c":3,"index":"2"},{"r":21,"c":2,"index":"2"},{"r":21,"c":3,"index":"2"},{"r":22,"c":2,"index":"2"},{"r":22,"c":3,"index":"2"},{"r":23,"c":2,"index":"2"},{"r":23,"c":3,"index":"2"},{"r":24,"c":2,"index":"2"},{"r":24,"c":3,"index":"2"},{"r":25,"c":2,"index":"2"},{"r":25,"c":3,"index":"2"},{"r":26,"c":2,"index":"2"},{"r":26,"c":3,"index":"2"},{"r":27,"c":2,"index":"2"},{"r":27,"c":3,"index":"2"},{"r":28,"c":2,"index":"2"},{"r":28,"c":3,"index":"2"},{"r":29,"c":2,"index":"2"},{"r":29,"c":3,"index":"2"},{"r":30,"c":2,"index":"2"},{"r":30,"c":3,"index":"2"},{"r":31,"c":2,"index":"2"},{"r":31,"c":3,"index":"2"},{"r":32,"c":2,"index":"2"},{"r":32,"c":3,"index":"2"},{"r":33,"c":2,"index":"2"},{"r":33,"c":3,"index":"2"},{"r":34,"c":2,"index":"2"},{"r":34,"c":3,"index":"2"},{"r":35,"c":2,"index":"2"},{"r":35,"c":3,"index":"2"},{"r":36,"c":2,"index":"2"},{"r":36,"c":3,"index":"2"},{"r":37,"c":2,"index":"2"},{"r":37,"c":3,"index":"2"},{"r":38,"c":2,"index":"2"},{"r":38,"c":3,"index":"2"},{"r":39,"c":2,"index":"2"},{"r":39,"c":3,"index":"2"},{"r":40,"c":2,"index":"2"},{"r":40,"c":3,"index":"2"},{"r":3,"c":2,"index":"2"},{"r":3,"c":4,"index":"2"},{"r":3,"c":3,"index":"2"},{"r":3,"c":11,"index":"2"},{"r":40,"c":18,"index":"2"},{"r":40,"c":10,"index":"2"},{"r":39,"c":18,"index":"2"},{"r":39,"c":10,"index":"2"},{"r":38,"c":18,"index":"2"},{"r":38,"c":10,"index":"2"},{"r":37,"c":18,"index":"2"},{"r":37,"c":10,"index":"2"},{"r":36,"c":18,"index":"2"},{"r":36,"c":10,"index":"2"},{"r":35,"c":18,"index":"2"},{"r":35,"c":10,"index":"2"},{"r":34,"c":18,"index":"2"},{"r":34,"c":10,"index":"2"},{"r":33,"c":18,"index":"2"},{"r":33,"c":10,"index":"2"},{"r":32,"c":18,"index":"2"},{"r":32,"c":10,"index":"2"},{"r":31,"c":18,"index":"2"},{"r":31,"c":10,"index":"2"},{"r":30,"c":18,"index":"2"},{"r":30,"c":10,"index":"2"},{"r":29,"c":18,"index":"2"},{"r":29,"c":10,"index":"2"},{"r":28,"c":18,"index":"2"},{"r":28,"c":10,"index":"2"},{"r":27,"c":18,"index":"2"},{"r":27,"c":10,"index":"2"},{"r":26,"c":18,"index":"2"},{"r":26,"c":10,"index":"2"},{"r":25,"c":18,"index":"2"},{"r":25,"c":10,"index":"2"},{"r":24,"c":18,"index":"2"},{"r":24,"c":10,"index":"2"},{"r":23,"c":18,"index":"2"},{"r":23,"c":10,"index":"2"},{"r":22,"c":18,"index":"2"},{"r":22,"c":10,"index":"2"},{"r":21,"c":18,"index":"2"},{"r":21,"c":10,"index":"2"},{"r":20,"c":18,"index":"2"},{"r":20,"c":10,"index":"2"},{"r":19,"c":18,"index":"2"},{"r":19,"c":10,"index":"2"},{"r":18,"c":18,"index":"2"},{"r":18,"c":10,"index":"2"},{"r":17,"c":18,"index":"2"},{"r":17,"c":10,"index":"2"},{"r":16,"c":18,"index":"2"},{"r":16,"c":10,"index":"2"},{"r":15,"c":18,"index":"2"},{"r":15,"c":10,"index":"2"},{"r":14,"c":18,"index":"2"},{"r":14,"c":10,"index":"2"},{"r":13,"c":18,"index":"2"},{"r":13,"c":10,"index":"2"},{"r":12,"c":18,"index":"2"},{"r":12,"c":10,"index":"2"},{"r":11,"c":18,"index":"2"},{"r":11,"c":10,"index":"2"},{"r":10,"c":18,"index":"2"},{"r":10,"c":10,"index":"2"},{"r":9,"c":18,"index":"2"},{"r":9,"c":10,"index":"2"},{"r":8,"c":18,"index":"2"},{"r":8,"c":10,"index":"2"},{"r":7,"c":18,"index":"2"},{"r":7,"c":10,"index":"2"},{"r":6,"c":18,"index":"2"},{"r":6,"c":10,"index":"2"},{"r":5,"c":18,"index":"2"},{"r":5,"c":10,"index":"2"},{"r":4,"c":18,"index":"2"},{"r":4,"c":10,"index":"2"},{"r":41,"c":18,"index":"2"},{"r":41,"c":10,"index":"2"},{"r":3,"c":18,"index":"2"},{"r":3,"c":10,"index":"2"},{"r":40,"c":17,"index":"2"},{"r":40,"c":9,"index":"2"},{"r":39,"c":17,"index":"2"},{"r":39,"c":9,"index":"2"},{"r":38,"c":17,"index":"2"},{"r":38,"c":9,"index":"2"},{"r":37,"c":17,"index":"2"},{"r":37,"c":9,"index":"2"},{"r":36,"c":17,"index":"2"},{"r":36,"c":9,"index":"2"},{"r":35,"c":17,"index":"2"},{"r":35,"c":9,"index":"2"},{"r":34,"c":17,"index":"2"},{"r":34,"c":9,"index":"2"},{"r":33,"c":17,"index":"2"},{"r":33,"c":9,"index":"2"},{"r":32,"c":17,"index":"2"},{"r":32,"c":9,"index":"2"},{"r":31,"c":17,"index":"2"},{"r":31,"c":9,"index":"2"},{"r":30,"c":17,"index":"2"},{"r":30,"c":9,"index":"2"},{"r":29,"c":17,"index":"2"},{"r":29,"c":9,"index":"2"},{"r":28,"c":17,"index":"2"},{"r":28,"c":9,"index":"2"},{"r":27,"c":17,"index":"2"},{"r":27,"c":9,"index":"2"},{"r":26,"c":17,"index":"2"},{"r":26,"c":9,"index":"2"},{"r":25,"c":17,"index":"2"},{"r":25,"c":9,"index":"2"},{"r":24,"c":17,"index":"2"},{"r":24,"c":9,"index":"2"},{"r":23,"c":17,"index":"2"},{"r":23,"c":9,"index":"2"},{"r":22,"c":17,"index":"2"},{"r":22,"c":9,"index":"2"},{"r":21,"c":17,"index":"2"},{"r":21,"c":9,"index":"2"},{"r":20,"c":17,"index":"2"},{"r":20,"c":9,"index":"2"},{"r":19,"c":17,"index":"2"},{"r":19,"c":9,"index":"2"},{"r":18,"c":17,"index":"2"},{"r":18,"c":9,"index":"2"},{"r":17,"c":17,"index":"2"},{"r":17,"c":9,"index":"2"},{"r":16,"c":17,"index":"2"},{"r":16,"c":9,"index":"2"},{"r":15,"c":17,"index":"2"},{"r":15,"c":9,"index":"2"},{"r":14,"c":17,"index":"2"},{"r":14,"c":9,"index":"2"},{"r":13,"c":17,"index":"2"},{"r":13,"c":9,"index":"2"},{"r":12,"c":17,"index":"2"},{"r":12,"c":9,"index":"2"},{"r":11,"c":17,"index":"2"},{"r":11,"c":9,"index":"2"},{"r":10,"c":17,"index":"2"},{"r":10,"c":9,"index":"2"},{"r":9,"c":17,"index":"2"},{"r":9,"c":9,"index":"2"},{"r":8,"c":17,"index":"2"},{"r":8,"c":9,"index":"2"},{"r":7,"c":17,"index":"2"},{"r":7,"c":9,"index":"2"},{"r":6,"c":17,"index":"2"},{"r":6,"c":9,"index":"2"},{"r":5,"c":17,"index":"2"},{"r":5,"c":9,"index":"2"},{"r":4,"c":17,"index":"2"},{"r":4,"c":9,"index":"2"},{"r":41,"c":17,"index":"2"},{"r":41,"c":9,"index":"2"},{"r":3,"c":17,"index":"2"},{"r":3,"c":9,"index":"2"},{"r":40,"c":16,"index":"2"},{"r":40,"c":8,"index":"2"},{"r":39,"c":16,"index":"2"},{"r":39,"c":8,"index":"2"},{"r":38,"c":16,"index":"2"},{"r":38,"c":8,"index":"2"},{"r":37,"c":16,"index":"2"},{"r":37,"c":8,"index":"2"},{"r":36,"c":16,"index":"2"},{"r":36,"c":8,"index":"2"},{"r":35,"c":16,"index":"2"},{"r":35,"c":8,"index":"2"},{"r":34,"c":16,"index":"2"},{"r":34,"c":8,"index":"2"},{"r":33,"c":16,"index":"2"},{"r":33,"c":8,"index":"2"},{"r":32,"c":16,"index":"2"},{"r":32,"c":8,"index":"2"},{"r":31,"c":16,"index":"2"},{"r":31,"c":8,"index":"2"},{"r":30,"c":16,"index":"2"},{"r":30,"c":8,"index":"2"},{"r":29,"c":16,"index":"2"},{"r":29,"c":8,"index":"2"},{"r":28,"c":16,"index":"2"},{"r":28,"c":8,"index":"2"},{"r":27,"c":16,"index":"2"},{"r":27,"c":8,"index":"2"},{"r":26,"c":16,"index":"2"},{"r":26,"c":8,"index":"2"},{"r":25,"c":16,"index":"2"},{"r":25,"c":8,"index":"2"},{"r":24,"c":16,"index":"2"},{"r":24,"c":8,"index":"2"},{"r":23,"c":16,"index":"2"},{"r":23,"c":8,"index":"2"},{"r":22,"c":16,"index":"2"},{"r":22,"c":8,"index":"2"},{"r":21,"c":16,"index":"2"},{"r":21,"c":8,"index":"2"},{"r":20,"c":16,"index":"2"},{"r":20,"c":8,"index":"2"},{"r":19,"c":16,"index":"2"},{"r":19,"c":8,"index":"2"},{"r":18,"c":16,"index":"2"},{"r":18,"c":8,"index":"2"},{"r":17,"c":16,"index":"2"},{"r":17,"c":8,"index":"2"},{"r":16,"c":16,"index":"2"},{"r":16,"c":8,"index":"2"},{"r":15,"c":16,"index":"2"},{"r":15,"c":8,"index":"2"},{"r":14,"c":16,"index":"2"},{"r":14,"c":8,"index":"2"},{"r":13,"c":16,"index":"2"},{"r":13,"c":8,"index":"2"},{"r":12,"c":16,"index":"2"},{"r":12,"c":8,"index":"2"},{"r":11,"c":16,"index":"2"},{"r":11,"c":8,"index":"2"},{"r":10,"c":16,"index":"2"},{"r":10,"c":8,"index":"2"},{"r":9,"c":16,"index":"2"},{"r":9,"c":8,"index":"2"},{"r":8,"c":16,"index":"2"},{"r":8,"c":8,"index":"2"},{"r":7,"c":16,"index":"2"},{"r":7,"c":8,"index":"2"},{"r":6,"c":16,"index":"2"},{"r":6,"c":8,"index":"2"},{"r":5,"c":16,"index":"2"},{"r":5,"c":8,"index":"2"},{"r":4,"c":16,"index":"2"},{"r":4,"c":8,"index":"2"},{"r":41,"c":16,"index":"2"},{"r":41,"c":8,"index":"2"},{"r":3,"c":16,"index":"2"},{"r":3,"c":8,"index":"2"},{"r":40,"c":15,"index":"2"},{"r":40,"c":7,"index":"2"},{"r":39,"c":15,"index":"2"},{"r":39,"c":7,"index":"2"},{"r":38,"c":15,"index":"2"},{"r":38,"c":7,"index":"2"},{"r":37,"c":15,"index":"2"},{"r":37,"c":7,"index":"2"},{"r":36,"c":15,"index":"2"},{"r":36,"c":7,"index":"2"},{"r":35,"c":15,"index":"2"},{"r":35,"c":7,"index":"2"},{"r":34,"c":15,"index":"2"},{"r":34,"c":7,"index":"2"},{"r":33,"c":15,"index":"2"},{"r":33,"c":7,"index":"2"},{"r":32,"c":15,"index":"2"},{"r":32,"c":7,"index":"2"},{"r":31,"c":15,"index":"2"},{"r":31,"c":7,"index":"2"},{"r":30,"c":15,"index":"2"},{"r":30,"c":7,"index":"2"},{"r":29,"c":15,"index":"2"},{"r":29,"c":7,"index":"2"},{"r":28,"c":15,"index":"2"},{"r":28,"c":7,"index":"2"},{"r":27,"c":15,"index":"2"},{"r":27,"c":7,"index":"2"},{"r":26,"c":15,"index":"2"},{"r":26,"c":7,"index":"2"},{"r":25,"c":15,"index":"2"},{"r":25,"c":7,"index":"2"},{"r":24,"c":15,"index":"2"},{"r":24,"c":7,"index":"2"},{"r":23,"c":15,"index":"2"},{"r":23,"c":7,"index":"2"},{"r":22,"c":15,"index":"2"},{"r":22,"c":7,"index":"2"},{"r":21,"c":15,"index":"2"},{"r":21,"c":7,"index":"2"},{"r":20,"c":15,"index":"2"},{"r":20,"c":7,"index":"2"},{"r":19,"c":15,"index":"2"},{"r":19,"c":7,"index":"2"},{"r":18,"c":15,"index":"2"},{"r":18,"c":7,"index":"2"},{"r":17,"c":15,"index":"2"},{"r":17,"c":7,"index":"2"},{"r":16,"c":15,"index":"2"},{"r":16,"c":7,"index":"2"},{"r":15,"c":15,"index":"2"},{"r":15,"c":7,"index":"2"},{"r":14,"c":15,"index":"2"},{"r":14,"c":7,"index":"2"},{"r":13,"c":15,"index":"2"},{"r":13,"c":7,"index":"2"},{"r":12,"c":15,"index":"2"},{"r":12,"c":7,"index":"2"},{"r":11,"c":15,"index":"2"},{"r":11,"c":7,"index":"2"},{"r":10,"c":15,"index":"2"},{"r":10,"c":7,"index":"2"},{"r":9,"c":15,"index":"2"},{"r":9,"c":7,"index":"2"},{"r":8,"c":15,"index":"2"},{"r":8,"c":7,"index":"2"},{"r":7,"c":15,"index":"2"},{"r":7,"c":7,"index":"2"},{"r":6,"c":15,"index":"2"},{"r":6,"c":7,"index":"2"},{"r":5,"c":15,"index":"2"},{"r":5,"c":7,"index":"2"},{"r":4,"c":15,"index":"2"},{"r":4,"c":7,"index":"2"},{"r":41,"c":15,"index":"2"},{"r":41,"c":7,"index":"2"},{"r":3,"c":15,"index":"2"},{"r":3,"c":7,"index":"2"},{"r":40,"c":14,"index":"2"},{"r":40,"c":6,"index":"2"},{"r":39,"c":14,"index":"2"},{"r":39,"c":6,"index":"2"},{"r":38,"c":14,"index":"2"},{"r":38,"c":6,"index":"2"},{"r":37,"c":14,"index":"2"},{"r":37,"c":6,"index":"2"},{"r":36,"c":14,"index":"2"},{"r":36,"c":6,"index":"2"},{"r":35,"c":14,"index":"2"},{"r":35,"c":6,"index":"2"},{"r":34,"c":14,"index":"2"},{"r":34,"c":6,"index":"2"},{"r":33,"c":14,"index":"2"},{"r":33,"c":6,"index":"2"},{"r":32,"c":14,"index":"2"},{"r":32,"c":6,"index":"2"},{"r":31,"c":14,"index":"2"},{"r":31,"c":6,"index":"2"},{"r":30,"c":14,"index":"2"},{"r":30,"c":6,"index":"2"},{"r":29,"c":14,"index":"2"},{"r":29,"c":6,"index":"2"},{"r":28,"c":14,"index":"2"},{"r":28,"c":6,"index":"2"},{"r":27,"c":14,"index":"2"},{"r":27,"c":6,"index":"2"},{"r":26,"c":14,"index":"2"},{"r":26,"c":6,"index":"2"},{"r":25,"c":14,"index":"2"},{"r":25,"c":6,"index":"2"},{"r":24,"c":14,"index":"2"},{"r":24,"c":6,"index":"2"},{"r":23,"c":14,"index":"2"},{"r":23,"c":6,"index":"2"},{"r":22,"c":14,"index":"2"},{"r":22,"c":6,"index":"2"},{"r":21,"c":14,"index":"2"},{"r":21,"c":6,"index":"2"},{"r":20,"c":14,"index":"2"},{"r":20,"c":6,"index":"2"},{"r":19,"c":14,"index":"2"},{"r":19,"c":6,"index":"2"},{"r":18,"c":14,"index":"2"},{"r":18,"c":6,"index":"2"},{"r":17,"c":14,"index":"2"},{"r":17,"c":6,"index":"2"},{"r":16,"c":14,"index":"2"},{"r":16,"c":6,"index":"2"},{"r":15,"c":14,"index":"2"},{"r":15,"c":6,"index":"2"},{"r":14,"c":14,"index":"2"},{"r":14,"c":6,"index":"2"},{"r":13,"c":14,"index":"2"},{"r":13,"c":6,"index":"2"},{"r":12,"c":14,"index":"2"},{"r":12,"c":6,"index":"2"},{"r":11,"c":14,"index":"2"},{"r":11,"c":6,"index":"2"},{"r":10,"c":14,"index":"2"},{"r":10,"c":6,"index":"2"},{"r":9,"c":14,"index":"2"},{"r":9,"c":6,"index":"2"},{"r":8,"c":14,"index":"2"},{"r":8,"c":6,"index":"2"},{"r":7,"c":14,"index":"2"},{"r":7,"c":6,"index":"2"},{"r":6,"c":14,"index":"2"},{"r":6,"c":6,"index":"2"},{"r":5,"c":14,"index":"2"},{"r":5,"c":6,"index":"2"},{"r":4,"c":14,"index":"2"},{"r":4,"c":6,"index":"2"},{"r":41,"c":14,"index":"2"},{"r":41,"c":6,"index":"2"},{"r":3,"c":14,"index":"2"},{"r":3,"c":6,"index":"2"},{"r":40,"c":13,"index":"2"},{"r":40,"c":5,"index":"2"},{"r":39,"c":13,"index":"2"},{"r":39,"c":5,"index":"2"},{"r":38,"c":13,"index":"2"},{"r":38,"c":5,"index":"2"},{"r":37,"c":13,"index":"2"},{"r":37,"c":5,"index":"2"},{"r":36,"c":13,"index":"2"},{"r":36,"c":5,"index":"2"},{"r":35,"c":13,"index":"2"},{"r":35,"c":5,"index":"2"},{"r":34,"c":13,"index":"2"},{"r":34,"c":5,"index":"2"},{"r":33,"c":13,"index":"2"},{"r":33,"c":5,"index":"2"},{"r":32,"c":13,"index":"2"},{"r":32,"c":5,"index":"2"},{"r":31,"c":13,"index":"2"},{"r":31,"c":5,"index":"2"},{"r":30,"c":13,"index":"2"},{"r":30,"c":5,"index":"2"},{"r":29,"c":13,"index":"2"},{"r":29,"c":5,"index":"2"},{"r":28,"c":13,"index":"2"},{"r":28,"c":5,"index":"2"},{"r":27,"c":13,"index":"2"},{"r":27,"c":5,"index":"2"},{"r":26,"c":13,"index":"2"},{"r":26,"c":5,"index":"2"},{"r":25,"c":13,"index":"2"},{"r":25,"c":5,"index":"2"},{"r":24,"c":13,"index":"2"},{"r":24,"c":5,"index":"2"},{"r":23,"c":13,"index":"2"},{"r":23,"c":5,"index":"2"},{"r":22,"c":13,"index":"2"},{"r":22,"c":5,"index":"2"},{"r":21,"c":13,"index":"2"},{"r":21,"c":5,"index":"2"},{"r":20,"c":13,"index":"2"},{"r":20,"c":5,"index":"2"},{"r":19,"c":13,"index":"2"},{"r":19,"c":5,"index":"2"},{"r":18,"c":13,"index":"2"},{"r":18,"c":5,"index":"2"},{"r":17,"c":13,"index":"2"},{"r":17,"c":5,"index":"2"},{"r":16,"c":13,"index":"2"},{"r":16,"c":5,"index":"2"},{"r":15,"c":13,"index":"2"},{"r":15,"c":5,"index":"2"},{"r":14,"c":13,"index":"2"},{"r":14,"c":5,"index":"2"},{"r":13,"c":13,"index":"2"},{"r":13,"c":5,"index":"2"},{"r":12,"c":13,"index":"2"},{"r":12,"c":5,"index":"2"},{"r":11,"c":13,"index":"2"},{"r":11,"c":5,"index":"2"},{"r":10,"c":13,"index":"2"},{"r":10,"c":5,"index":"2"},{"r":9,"c":13,"index":"2"},{"r":9,"c":5,"index":"2"},{"r":8,"c":13,"index":"2"},{"r":8,"c":5,"index":"2"},{"r":7,"c":13,"index":"2"},{"r":7,"c":5,"index":"2"},{"r":6,"c":13,"index":"2"},{"r":6,"c":5,"index":"2"},{"r":5,"c":13,"index":"2"},{"r":5,"c":5,"index":"2"},{"r":4,"c":13,"index":"2"},{"r":4,"c":5,"index":"2"},{"r":41,"c":13,"index":"2"},{"r":41,"c":5,"index":"2"},{"r":3,"c":13,"index":"2"},{"r":3,"c":5,"index":"2"},{"r":40,"c":12,"index":"2"},{"r":40,"c":4,"index":"2"},{"r":39,"c":12,"index":"2"},{"r":39,"c":4,"index":"2"},{"r":38,"c":12,"index":"2"},{"r":38,"c":4,"index":"2"},{"r":37,"c":12,"index":"2"},{"r":37,"c":4,"index":"2"},{"r":36,"c":12,"index":"2"},{"r":36,"c":4,"index":"2"},{"r":35,"c":12,"index":"2"},{"r":35,"c":4,"index":"2"},{"r":34,"c":12,"index":"2"},{"r":34,"c":4,"index":"2"},{"r":33,"c":12,"index":"2"},{"r":33,"c":4,"index":"2"},{"r":32,"c":12,"index":"2"},{"r":32,"c":4,"index":"2"},{"r":31,"c":12,"index":"2"},{"r":31,"c":4,"index":"2"},{"r":30,"c":12,"index":"2"},{"r":30,"c":4,"index":"2"},{"r":29,"c":12,"index":"2"},{"r":29,"c":4,"index":"2"},{"r":28,"c":12,"index":"2"},{"r":28,"c":4,"index":"2"},{"r":27,"c":12,"index":"2"},{"r":27,"c":4,"index":"2"},{"r":26,"c":12,"index":"2"},{"r":26,"c":4,"index":"2"},{"r":25,"c":12,"index":"2"},{"r":25,"c":4,"index":"2"},{"r":24,"c":12,"index":"2"},{"r":24,"c":4,"index":"2"},{"r":23,"c":12,"index":"2"},{"r":23,"c":4,"index":"2"},{"r":22,"c":12,"index":"2"},{"r":22,"c":4,"index":"2"},{"r":21,"c":12,"index":"2"},{"r":21,"c":4,"index":"2"},{"r":20,"c":12,"index":"2"},{"r":20,"c":4,"index":"2"},{"r":19,"c":12,"index":"2"},{"r":19,"c":4,"index":"2"},{"r":18,"c":12,"index":"2"},{"r":18,"c":4,"index":"2"},{"r":17,"c":12,"index":"2"},{"r":17,"c":4,"index":"2"},{"r":16,"c":12,"index":"2"},{"r":16,"c":4,"index":"2"},{"r":15,"c":12,"index":"2"},{"r":15,"c":4,"index":"2"},{"r":14,"c":12,"index":"2"},{"r":14,"c":4,"index":"2"},{"r":13,"c":12,"index":"2"},{"r":13,"c":4,"index":"2"},{"r":12,"c":12,"index":"2"},{"r":12,"c":4,"index":"2"},{"r":11,"c":12,"index":"2"},{"r":11,"c":4,"index":"2"},{"r":10,"c":12,"index":"2"},{"r":10,"c":4,"index":"2"},{"r":9,"c":12,"index":"2"},{"r":9,"c":4,"index":"2"},{"r":8,"c":12,"index":"2"},{"r":8,"c":4,"index":"2"},{"r":7,"c":12,"index":"2"},{"r":7,"c":4,"index":"2"},{"r":6,"c":12,"index":"2"},{"r":6,"c":4,"index":"2"},{"r":5,"c":12,"index":"2"},{"r":5,"c":4,"index":"2"},{"r":4,"c":12,"index":"2"},{"r":4,"c":4,"index":"2"},{"r":41,"c":12,"index":"2"},{"r":41,"c":4,"index":"2"},{"r":3,"c":12,"index":"2"},{"r":40,"c":11,"index":"2"},{"r":39,"c":11,"index":"2"},{"r":38,"c":11,"index":"2"},{"r":37,"c":11,"index":"2"},{"r":36,"c":11,"index":"2"},{"r":35,"c":11,"index":"2"},{"r":34,"c":11,"index":"2"},{"r":33,"c":11,"index":"2"},{"r":32,"c":11,"index":"2"},{"r":31,"c":11,"index":"2"},{"r":30,"c":11,"index":"2"},{"r":29,"c":11,"index":"2"},{"r":28,"c":11,"index":"2"},{"r":27,"c":11,"index":"2"},{"r":26,"c":11,"index":"2"},{"r":25,"c":11,"index":"2"},{"r":24,"c":11,"index":"2"},{"r":23,"c":11,"index":"2"},{"r":22,"c":11,"index":"2"},{"r":21,"c":11,"index":"2"},{"r":20,"c":11,"index":"2"},{"r":19,"c":11,"index":"2"},{"r":18,"c":11,"index":"2"},{"r":17,"c":11,"index":"2"},{"r":16,"c":11,"index":"2"},{"r":15,"c":11,"index":"2"},{"r":14,"c":11,"index":"2"},{"r":13,"c":11,"index":"2"},{"r":12,"c":11,"index":"2"},{"r":11,"c":11,"index":"2"},{"r":10,"c":11,"index":"2"},{"r":9,"c":11,"index":"2"},{"r":8,"c":11,"index":"2"},{"r":7,"c":11,"index":"2"},{"r":6,"c":11,"index":"2"},{"r":5,"c":11,"index":"2"},{"r":4,"c":11,"index":"2"},{"r":41,"c":11,"index":"2"}]},{"name":"Sheet3","config":{},"index":"3","status":"0","order":"2","zoomRatio":1,"showGridLines":"1","defaultColWidth":72,"defaultRowHeight":18,"celldata":[],"calcChain":[]}] - data: + data: [sheetCell,sheetFormula,sheetConditionFormat,sheetSparkline,sheetTable,sheetComment,sheetPivotTableData,sheetPivotTable,sheetChart,sheetPicture,sheetDataVerification] /*data:[{ "name": "Cell", @@ -199,16 +199,16 @@ "viewPageZoomScale":0.6, }, "printoptions":{ - unit:"mm",//mm(default), in, pt, cm, m, + unit:"mm",//mm(default), in, pt, cm, m, PrintArea:"$A$1:$S$31",//print range PrintTitles:{//row column row:"Sheet1!$1:$1", column:"Sheet1!$C:$C" - }, + }, printOptions:{ horizontalCentered:0,//align verticalCentered:0,//valign - headings:0,//show row and column + headings:0,//show row and column gridLines:0,//show gridlines }, pageMargins:{ @@ -222,7 +222,7 @@ pageSetup:{ copies:1,//Number of copies to print. draft:0,//Print without graphics about image and chart - paperSize:9,//1Letter ,3Tabloid, 5Legal ,6Statement ,7Executive ,8A3 ,9A4 ,11A5 ,12B4 ,13B5 + paperSize:9,//1Letter ,3Tabloid, 5Legal ,6Statement ,7Executive ,8A3 ,9A4 ,11A5 ,12B4 ,13B5 paperHeight:null,//Height of custom paper as a number followed by a unit identifier. [Example: 297mm, 11inend example],When paperHeight and paperWidth are specified, paperSize shall be ignored. paperWidth:null,//Width of custom paper as a number followed by a unit identifier. [Example: 21cm, 8.5inend example] fitToWidth:0,//Number of horizontal pages to fit on. @@ -1940,4 +1940,4 @@ </style> </body> -</html> \ No newline at end of file +</html> diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/css/pluginsCss.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/css/pluginsCss.css index 7d55f1ed5..9e89d3d24 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/css/pluginsCss.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/css/pluginsCss.css @@ -1 +1 @@ -@font-face{font-family:iconfont;src:url(//at.alicdn.com/t/font_1109445_3uhchn0iu1o.eot?t=1573095457319);src:url(//at.alicdn.com/t/font_1109445_3uhchn0iu1o.eot?t=1573095457319#iefix) format('embedded-opentype'),url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAALYAAsAAAAABnAAAAKLAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCCcAp8gQgBNgIkAwgLBgAEIAWEbQcwG64FEdWTCWR/Sm4OkS3AzL8KYg4aSemU4GqI3mB6P9n7k+2ut5hEQy2TwEw6Jnj+G/fdNzOfTFqrA4xW6ExSSNs2tP0h7emOUEjc/7WdKSEPXj+LJBJ0Tfhn/8R3w0pl8CbO3gca9TS2Pm4BBXSFwhB+R7yoMeuFnFxjrdBQiQocctB2llgyjyil+oEV+FgAZBR4eiLSpPrEvdM/gT5I6wHluBeNNWlSF1AXB1KAe2G0hUso44axC1zCeQjgJEER0tDUMYCDwZomgCzOzYzh5PwYDEvZEaw1aw2yh4ld7ahhN/y+fFSIHRQWjVXRM904yeqZnaH+PyefIKAgoM0WQANFgAEZqI13oSOM0zjjBhmwr1KBZ79vQ/ZqRthfZxW7AYhByT1JXdmtphTAbfUlByge9QaQnIp42a/CP45oR+Fg+HTYIt/f+0PjPsijc8rpF9fZv0Ic8fcbSMDqdxvswkyfxTnpZBvc/8yEW6zwz/S4OgQQKDqiEV952TEA3P48NBn6OcG+X4fA/5H2bDG63LIqo0prOxU5561y4gT+sTvI01hD5GbSgp3ICKeNeAqNnSzSsEWw4KIKVuxUw0khzZtdhFhHR4wDKGADQPBzBYWXFDR+bkjDPsJClC9Y8YuGkyFhe7rIEa30THhnfMLjB6XoO+nY2YtKt5i/mjtl5SHviDSVIUijpJjaYIc0x4LpnWfMEiT1LazBZdg0PQzUVyg4KpiHZRzLuhtFom8VTzHhnfEJjx+Uou+k35290ue3mL+aO7U01cSPSFM5OKRR0oPcaLpeTfdyzfTOM2YJkvoW1mAUNk0PQ/2oCgVHxYjosIztdrKvJlpf137dHsCpWEal2sM0FK9SFKgoAAA=') format('woff2'),url(//at.alicdn.com/t/font_1109445_3uhchn0iu1o.woff?t=1573095457319) format('woff'),url(//at.alicdn.com/t/font_1109445_3uhchn0iu1o.ttf?t=1573095457319) format('truetype'),url(//at.alicdn.com/t/font_1109445_3uhchn0iu1o.svg?t=1573095457319#iconfont) format('svg');src:url(//at.alicdn.com/t/font_934335_kaqqxgj7xqf.eot?t=1544334973484);src:url(//at.alicdn.com/t/font_934335_kaqqxgj7xqf.eot?t=1544334973484#iefix) format('embedded-opentype'),url('data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAACoYAAsAAAAAQKwAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAARAAAAFY8d02RY21hcAAAAYAAAAGvAAAEuOPAIVlnbHlmAAADMAAAIvAAADM8XaPCvWhlYWQAACYgAAAAMQAAADYUOOL3aGhlYQAAJlQAAAAeAAAAJAiTBINobXR4AAAmdAAAAB8AAADIyfb//2xvY2EAACaUAAAAZgAAAGYg+RKabWF4cAAAJvwAAAAfAAAAIAFtA1FuYW1lAAAnHAAAAUUAAAJtPlT+fXBvc3QAAChkAAABtAAAA0NPUNOieJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2Bk4WKcwMDKwMHUyXSGgYGhH0IzvmYwYuRgYGBiYGVmwAoC0lxTGByeMbyewtzwv4EhhrmRoREozAiSAwDr1wyIeJzd1LlOG2EYheHXYMxm9sVOMJCFbNgJ4RKQqClTRVEUpUei4w6oqKDh4qA7FqKgpYKcj9NEEQ1t5tfjZfR7PN82wBgwagNrwsh3Gv5E45vPNh7PjzL1eL7Z2Pb3L7zyvll1taYNbWmgHe1pXwc61JGOdaJTnetKt7ofXgzvrns3Zw8PILx/3fv7T+6//Hf/M46G7+mH10+vX0+u338tWKPHOhtsOpLXvOEtW7zjPR/4yCeW2KbvqD/7qiuOdIJlXjLOpP+nxQhzTNNl1znZoc0qMywyzwIvmHUuvzpbHd9S61kR/J9Hu17cNzl2qwfCFUCNcC3QSLgqaDRcH9QMVwqNhWuGWuHqofFwHdFEuKJoMlxbNBWuMpoO1xu1w5VHM+EeQLPhbkBz4b5A8+EOQQvhXkGLUTOkpXD/oOVwJ6GVoN5Xo+ZNnaDuvRvU79bCvYfWg4p1I6j4tqLmVP2gcjMIKq87QcWxF1QO9oP6z4N4rNFh1MzrKKhrHEdVVSdBxXEaVP7Og8rHZVA5uwoqZ7fheUH34clheBH1PBrehaeJ617UM+rmLOj8AQ2Uw28AeJyNegmAHFWZcH3v1V3dVV3VXV3d0z19TnfPkbm6prtzzUECCTlIMgkhgQQyCCEBghuQLEEkmSEiIEjEILdLOAJKQLmCcRUcQIEFUX/wX/+ARPxFf91dBRbZXTFd2e9V9yRBo/vPdL3ze9/73vFd7z1O4LjDr9B9dIALcgnuHO4W7laOAx2kFDhDUOuBUr+JASaxAIv7C5grVoehJOlQwnQlb2OxWOwFyUkBFhpgY8KJigY4tSFgadutIIJqNA01bIKFw1CR+v12jtSDoZQvloqiVKr6GBlsCfurVWtu1IlWa47oY+mH/xrdRMim0UY4axnAslmNEPaEZgYV2whutfTBuKXDM6Bb8UHd2ho0bCU4w3Qcc8bfAJgZctz4sBXrnu0sLJTVtWq5sNCZ3R2zhuN/pZjMPkIIht4+WDp71lJCls6avRR+DZGY7drmNl1LyKrbEo+3uKqc0PRtJhbHIkD2kv8Z5JR+PpOrLhgJRY3YihUxIxoaWVDNZfjR4xdnOMLhH32K/A5TlONqWQUW0Qu8Rd4ii7xZL3ASrvWv6R20BWslTuMMLsyluEGOC5tZU7KzlThkTXDtfAE/trwSkuKaeUeUam4lL7m4cm6KiFKuiMuOS+JvkA20nKtb5Pf1dwcGgBsYeJPPtEon5lP/FLeDm69PpImcCLVkoDUZT0MbQP9oBaBM44d+iO1uvx1buvVXybdd1/1RSgdofRoCp0FwOPtFGjAg6xagNSZKxR4YKHW5ODzwx/gMWc2JHKeABDUF6NPeWKs3JwW7YTeZ4a1Mw8tpbyXs9UFxzJP0OTYd3Ai3gOM6wKxFy7il7BSUq7WBElQHijkJ8CtVKz2QE6WII5lYJkqm6JgpcLNlBIFyNCLmigNVeiRxz6Hd37K6rAkFaqNVkGFQtZOa95xZMndIUB2tgXytlbAA/6wgHdcty7sEg4RlfdCIIPQtRZkI2x3VaocdhkEtaavec5K0IxRhRZHQtbAJIXVvkSR6z2EqacEIBizmGjGn4vjGeY6ONFe0nZvGVbml3ApuFbeGraxrupWsXajkW8FP5+08rmokRdxauVaR8rniILiVGtY5+SHqlqOO5FZ7SD6nEwaEU5TXAaGErH3k/9KVW7zn4K5TTvn8Kb29eixjxQKKFogEp4dP+dU2EPW41ZoQt71CjHylLTNQtCOFSrbvxNCJfDaWyR86wHOHOPZRrs6Rj7xXwZ03Tx4a6vTeBXP58vI9dlwXgMwkwfA15Y3eNXD563LECqSSfZmZ3YlosTKMKDv7A072wMg4/nP84cOHt/P76DiX50pcF9fLcUKWjWugOgtM3KRuhaUwqLkpsE0cZCtERMib7tTHP/Cn80VFEc+HXMv7jV9L7gIsOfTR++9Dd+MbV8SUJJNUSw62tuQuj+cAcvFDW2UpJSrkjPr/Ja/Xu+m1h7ZyR/bpDrKOczCDsg2lZk6MOAIKwWh5GKo13Hd0q9qieCt/q7aEVQDKUzEg8pSHZxVymgKqN/PXSiSu1ilQQgmh8HM1ztCqPu7dZPIYPnZQeqf98Te4OV9xoeK2knylhMlaxbUdZGqw8xUT4yzmx+jIyOSkh5//Y+lJ/CPcJJmsj5PxyXFvchznl00xCwBDbxz/OKYzvkufp8NcFPts5/q5mThGkTiixaS1ry7c6BCpVQkg41YZw9QYx7CEO5VwpqoI98GPKX3lXWGeQNMECoZ55cZP8vTH9UPZadPmTJt2SSP6P43oU42IDge9n3z2au+1ILUH+q1cqY1Afss550HcWwoMYM60yUbU+D3bLDwqEyaRZzScN/fj+o4eo+2oVCrqJI0KKkWGUaUNkV5USj2EcM/UBaH+TCO87wDPH7jPD8sXX6zGw6BiBOG4+rEcHTnS4pn6oe9PNcGQtBwPvplDemM+0QPkSS7CdXAzUIqdzp3PXc5dx32Z28M9xj3Lvcq9xf0WFJgGJ8Nq2AiXwmfhZtjNcQXkg4rJdn85apvZxsaXjlcIKO6iTrZaqxRLWbNYEpDtsTyKQFXkpCJKCvHYfKmZd9wh+PP6WoXlm6ocWY7hL4mSjcA+fic/xZ2Nvo+tk/5G3bHtHDQfjq2rlSQxh0YIC4oDyGBlZm00WJ7BCn9ZWTnaSxcqO7HkMM50cHhsdJKDq58zQGQMW3PcRpdsWIwERgob3vHIrLlTSBvkOs02x5sKGq//UNY0OSJrRGOJ+g81w9AimkF4TNSf1wA0UmZh/fegwcNhRdOUMEKujDTbafcdSZ3GKuSwokJADmsGgKGFA4aRZs3DLPhtpIm9URZhwZ3HKfsNaxZooEhphDRaX1B4UQyJixdhEBTFDQKmHy5qyhj2h9Kqrsnz58lROSjLG6SoPP/evBEYY2ho7jl5/Siv8j9oV0AbU0n7U6NUoxskSacqf33Yb+6PKXFcov/3kfGx+mNqfVJP1WRS9mfuQx9IMth8IVj9UGMeV+PU/bAJTiwN3gdNvpvN4t2ytklTVrG2qxQtpslrG5SslbXpmjzMyjG4COkZbpCF0XrAEPzgLENbxYa3SjOuBG0VK8XgAiOwlvW+NmDsAG0tK8XgEiNwN4PF4AXQ7malGGwtvCQIixcLgi6GhI2YfLjYoGBM0R6V58/HCcL5xHnCuaSsOU5n9jn5nFFKXy0RdUwDpeOpZTy/QVaCPH+NphRlhlkuyoGVRqDIWmCwhGhFVlzUyC3/H8PimGXVlI9Mv6SbWhV1qpllSgSVecVFHeOiKZDHOF9pxAIqmjAqFmC6Zxy4wxxqDBj33maKBEPgRgg3Alwdi3dPQgaVChaNo85hsJOTh1Fpjo+zcHKcYKqOqobJagzS5C1ORjmYRVmdbbgl2VIWGRuFWcMvyZrhqQqogdY9BDDU7X2Ygo5lm0imtbMf6OZTvZ3LIF2eA2ROv/cLeAKGenoGYRm5cLRzfqLl9MqpmwnZX78D5vb1z2Vyl83DL3AeUqglMmhVnMtdwO1AClDHMQcnDTbaiyUUQ6jebeywT5TQ36lIQlEsRauoCodRqIrFku/J4D96Pb6rhPBMdDgNPPirlIqlI5jyJvN5wMQprdCj+BFhquk6oTiBvQPr5i04OxrPFZQXRuetczd9TdAeJGOJSCQB4G3qu/vmy77lzn0+L+pq7ok5c57IqXpLMhLU9dEk5ssP3Sc8tMkdOwlRRAe1Qi4ePXvBvHUDGx7UwAjefLd3dYGOfxrLThpzNz0k3PdQGTEkR3UUBIPwy45LgvwKS7ciWkZ/PhC6bsZlt0Qi1hzvOduSASowf972zj2/X3Z9y+KgZQ0kL7ggOWBZmbilajYtpLLW3K7N7e+K4VktJyt0ICBpyJmIbQUfvKRj9RzL+6Usdm73/kStQ9/rhNsCA1Q5uWVWWHy3fXPXXCubKlDYBhrbFjyuz3t0jGa4OFfgysyTwb3HLPfWozHOOHo2qNeZqZHPMuvDlfDLTuXR58ElYJvHpJlxtKkn8RtPtAGZhLZvM/v7MMfCDDqN3FQW3q6PQVuCjDC490KsONQIoZg888xk0bunYaBP+ma7BUu8fLIIWAlvNW3DEbTfkqihy9WK6XsY+azvdaBGRkMx6mbNSJSwrpqdIpoGIWj7j/hh8s/rmrbNv9Jn6QWYDqB3h/xyxJNH9wrd9B5029IAzPSS0Ggj3gnCoWeeOST4IawPaS8HiJMOfgPOCGQczft8AB56us7z9ad9GO8ToO4PpOMov2CVFksHvJ2BqbWYQD9kHO3QaWijnITyosgxS6qaQi44YmANgX9IgJqR8Q4zAd0oh2wMbOCRKJsM9LWaM+D7XW++5H0o0G/eHmpRdGP77VQ4+ODVP2gXkhlD6PsQ1pkO/+F+Mxo1D0BWdDwHk7loFF7ySqwQDoQcZ7sA2j/t/o8+aqQTYvurVz/4cx5u3RYy1GTo1n3wz05o/4c8RLOO6P38gBklJSd0tLFXYuhy0aM2fRu5G8fI4cAGmHngm/XMRIz4xgOOYKBEFr8YykwLvfhiaFom9OILoUyX+cILZlcmBJ95MdSVZRXZLqxgRd9/wcBqLofz9yp9grq+PW9xNkq7BK5flmtD6dvJdaOVXcF5HeROwLldwJ3CjXIr0Q48kzubW4/W4EXcxdwWtAk/w23nrkLqSrSUlWjYydbCpXypJjhSL7hSqebka2jXOEdSfhlatY6UL7k4mpoB+RoOp8S+muvkcUzSMDZlMDWJmVn5EjON8ENH0pGcGvtcp4Z48HO7IUzD3QACfZwuO+D94cCKFQcgcGCZPdF3vvdW94Jwcnrvgm5zjbVggXVesnvtMdnA9MKlD59YuPEz08++NBW9rHthdKz7tuOUzTl/W7vVcWe71b7tfO38vgnErP1ZUf1TMPcf7r3JOwlc714iw7gK5IE93gfeHx54AEjkrqXb89OlNZ+Ynt80ffH06eaafP+RzGmdW0+PXbatc8HpT5y0876TFu7EgtXxrds7F65uFhxaNjYhXXWVNDG2zFx6FyIzWcHERLPAet87H67xrru97tWfZFumcS7zVXJB41ymkFWAfvXQ1+Fr8LVd8FOvg1XLTZ/u7b/w6Xx/bsqXax7OhFGkHePH1T+cnPxw3z748JVXXqmP+Anydh0FjLd59+6RRx99e/fu3bBs82Zv86OPPtrcxzwHB7AflA86s+JR/g0U6YOHHi+Wy0W6BEM4AOXFZWDB1N4nj5M/cn2YqfoKq1KsVVAnueVa1DdqRYmKThTVlB2VfAu6WCtWXab6CCcGo3FJAciekJyRS4EqJWIGPV8MxhIS6oxc7jIUUwCymIiZlDxoGSgiFJHnFUpBkA003PSgXX/e0nUCiqQoPGHeukqDwYhPG/r/QCd8vsya/iGO2RyX6R/zmI3xPeHdAV1zusC7I9vVlYXz/Aychxl41Y+yxwFors2V5PBx1sY181MfOzmr+elGzBZoYteuH+3a9equXd65U6kf7MI/2Ow9Tf5XfS3c4M0nff/299488P7tAW8eUf91ai9sP15/gAsvND/mzDt+uhGjFVaB9/4qXnJ4igK462O0+HbOu/SLNIR9BbgW7CmPUocDfyEddihWsptucaUhyCs1plYxXyL5iz4J5rY8+d4DC1ZOUDqx8safCsJPb3w3tby64i73M+QzxvXnlKctXHLGPQfNXZ4Yuv4T51xv7DIP3nPPW9audcV+eZdy+vwFTH/gmPeTPUfGzIWZvZm1s7ii+G9nT4e3vDywgFBY7X0V1nh7yB5vR+4AXOntIFsPNH17DDbQVt+3z/ujOKr+jkkLx5Zvp9dt3HgdxXDD573/JOtOnj8GMDb/5HXwKzLc1zcMwELSMQVDyOe9+VMwhKwbPwJChpFwnM/H6D/SpUfGEkLPPYbavhXleQF9eCbNy1yVm8kNcdhgaucw9mbpinP8jNn8sLDQlATsq8Dk9u1uPO5u3+49um1bOR4vb9tG7tm2jZVt21avvPYaLMNv9LXX6uuOpunSTvvQLVonXdjZKddX653kno4Otf6a3QkXek/BhGfBN3/2s/vvf3NP7aKLuIY9jHO7l7yH4+JxlypckNNxuKhksmG3lnXQDC9l3y/Dv5frD/3x3Fu8i78Mz5br88o0BW/u3+8N7N9P3t6/v7HWfJia/n6LofXmyzjcUrgayLqtwDKlRuZLdLzt0iUbrxw//c4T6Hjnxtlr7rn89K/MR7tlF2mrzoDgI8Grr3vqm1CdMwTBb+sXXji1B75GfoeY+7nZKHFRVjXOdNBfwFVvmO0SigeUU40Kv7yxG9gGL1QttsXFFFRhhWWTy9asuYzYVi0Sp7dv2XI7RQvdBf47N974HR7cpaksCO89+eR7AjO27pPCIF9hiM5A58vxodyarYRsXZMbiicyizq23EHIHVs6FmXSS9bv/A6l39m5fkln3+ZBbIoIBjf3xbogYoU+6oh3BmJNnthLDoIMUbTZpuFOqeQl/1yh1z+jYFEv5CVbihjAyjGMOm7Nv32x81KJXcKwBkWsKOXFXmyZL001HkTjBeNKKY+qPI8GGLuI8U9xDCJimQHsCMi1I2kSsR07b6fBTaO8Z0eYs6DsDkM1jYrJsaPszqccRRgHK4b8E5qoX4vEOJLtu0LVXmbsoaUw7Mes+UClNjCM8JXSAJJUKfnWKRa7zMnJiQY7bktDxHUYskppmAwBlrgUVxGJgtpAtVLLAxPwzHAWIpjCzlH860D3ihFUH0QEnedNKtI0L4TFtEgknhdVtHsl0dAUTLfERUemouLwQg4b8HwLz1uAfMzzOYGnvIQKKCKIuqInqajxso4lCgU+0yejFgoIESoGaIs+u08xZayQUUHRpCjGDQGoESAiTQog8pIkJHlBVuQIdkMjOq8RHTUWj6gDOhWJSWAGVQSdUlEICKxLHkiAUMchEpEVGukXgFBFbqc0rjiEEiMQuQF7CiDpev01yPRl8AcvtPRWelv8gKxZ6FCeaALwpBtpCZgFAjKVDRw9atYglU0T+1HkFhyMzAPwOtO1CCrxEZMXBFPTeWKyLAaYlKkmiUTvFnA60YQqRBVnVkQDwRSIxfOBgBXnBV2nOIeRCAVRkYAXBdnBto4uE8rjyCO8KlLBwFl3EUWnwMtUIi7OCy9ovGASVYjgIJEOTTGEYSVKEVs7ldk8EJlHX6OdEOLgemoYzwIulsn0ZzK3J7oTie4aCzjkd8YzPyM/Qambwdx8bjX3Se6L3M3cHu4p7lXuIPfv3AdgQxw6YTasgI1wOVwLd8Hj8By8Dr+CX8N/4IzHSDeZR1aR1WQjuZx8nnyFfJ08S35J/h/5L1zjNO2jc+mJzNtkrFNyHbat2RdJkfIQGeghOZ1IA0OknCIRneR6SM21XXa74tilIrtaQce05oNRv4Xj37H0EGzCzhldNOvyQrHUuIOpof3iHlOfIkxb4PdXexPylSbCQca+UXZi69qNDkmjlaPDn/WHvOiTZqfoxzpMUcfvzsn10Kk+SqxfJkYa+Jx8xb8javbGWLqEKF1W3EBSTjPdW3GlRu8oaFlXUr8/f3kmsdxavsZYvpJnt8XUcctupWb7skqnrFW1ZrNLSH+AjO5q1C4dncGBZgUTNIxGSXCd/pr/Sf4qOU1CjtI/NRs4uP4hygSa3VwaHE//xybc6cfhlHBihkgFZwkptwv5Ur+/9s1ejrf2Om0sPaJnK3/sujeXwT4yQVG/j3yteMzNG1uEHjpFw8cXnX68F8df8mNWnC3Ax7qS/ryrCqzvaoF4V9+0BMTb45DoqqJ4s3WZUj/iO7RIa741ojWjp0pA1YCBzIoyVAspQsebDDCIwkNQgmEdpSJIMd2Mm4qMQTAmQUepfgrvyAEJ5VpACeokT3MtBgOw4qGAbWptM9raxpDDrSCCSEEWtalWLBO3FMWKZ+KmCokcSFFND2t8m5oMtm2lsmYxhHLQDIgUzdAEyhfZsA3NFqEtd5EkoIxHUngmggKga6KKeVkNKBKPsigQGBA1GSWdpOoaDkTCQKIoT3iKYhEjcW2AKIKmBgWFCAQgOEejSkCVKOoNiYhEgEAXoaIs8sxhkXiM96pBFTSkXtWCZvASKhDUDAEgvIAilfTwhApUwu6ppAZUVgPN9thYUtYSSdNVmYlhRhINAi8oPkkCkkQJeGsswwjpITNmBkE3J2RdFQRVN/0oqCIqFK+K1ohmhBArjgvXgpcFan46RIOSElR4QUXcsoi6ZhYQQdZkgQQUEUNvmo3OVSyqByNB3U6wmcE5JGxmBBIRVMM0cCYFTcdYXBPBCompT5kn9ieJIPrAgj/JfCAUkAVBDhgB3o5sRxUnCThInGAFIsh3ChKLhCtSQBUhkrHt6X4vfKMznkb8TrCOdaqr4r0RoEE9IBJbCMlgn8RIE33SWG9YZwRZd0E9SO0IEdavv+U8/FukmLghdNO0ggpGitVqa5rdWkj60ZlJiQ29iGsXsNQTF6tmUMatFG606Q1owWhrOhkNBrTFP7o6ikCGoQdk0IOJhGrFW1vCmhQIB9btmyMbAUkK6iFDk2UtJIXilooAmRZTVc2WcjigynokMLooFLIiJ322AR3A0QWxkdGhKVq4JRFDKHXOPnMCByXghhBFKopqgJe1ANKIqySJnUvYWgU1mef9SFApTr3Etpgo4ULwssyLmpbPyiJQtDay0yUBFarGNhLuT0pbyxRLsBGvathkW0dHx/TOzulsw/Pq9IQgobURiLTiOuFep7gTWVeCvGQmFXnqd0EBmUGUBEHyCRBwl+qsskEHMCD+pen4t2j6dCKy7aIJLNIDQhAXTFFZUz8a8duFqKiKeVBFUUS2NhREIdDSxoKAi8rLihDUkRME5eRyeVEZ/4q8wmw2RcWRCqIiKAy9ErJwfwia0YMokUvDuMtkIYewoiCIstJo4ogiDiiEIkAUChv6grgPZayRJSPEtlgohOYIbrzahkKjDxXboWT4i05a0fLBOZV6OhVVDZQW/c1uVP+dzTv0Gdru39d2op9X4xZwC9Fe6IFatcgOQ4v+iyb/koDdFvhvqhz/jZSEBnxULDE7Plpl0GJRQjucva1qFPmOuETPW+eEQ2dMXNY3et5NsxMblq54Y8UZX/AOzfvmvBPPdvquW3VSx/qL+kNW5tQFFy/2Tsx19PWuLrQZs2sjJ8GZ3TONSI8SjHb0bhWlKwJUG4FZn9hYnPF8ZeE1IH3uqUWXBkU1n/z1DUkc9vLZu/5OoDuGp93f03bmijP2RaGr7fyw3pLp2B4Ot1chGjqvLXd2V9dyM2R1da6fd8qXtMZ51uE/0J00wLGzTZcbxBlYw13EbeM4gd2GlgbQj7AhGmGzEY7Y6J8US+YAuxFBiz+c6yXFai2LPgXa+hFU4GKtUqvaUZuit9GFs8WeItGiw7S9E5VskV3Hoq3Qh54HokBsuZLv9IWrDkRRy+azuYpvHBAXzWZkNDAJmf7Fpe8svV5QQeCHL+6hYQJLv8SjgJ9BpXI3yT7Lw7XijA9QMEuP8Xzb2sp+4EcuRsGMwlVwz0R7+k6ebHpZJPxBtI67ewjpEgECPIjU+6wyq0ZBRja7+iMBbXnvPSpRJI7sw05uRBCoUgTu6abgibBkJyNCGPlUN62j+L5WEGaOQph+JD4m8G3tHuVheAuzzj8SCyi4foB5VThISM+nRpAWdES9D5iroi7+Qo0n/nuBw7+id9A4euhq8+yB3ZAUuV6uD/3hQW4e2sWnciu5s7h13CZclU9zV3DXcNfiDi1QQSqFhZpjQCnsSA47/hXYQXH4mPMSSZjyuaSm01Xzz9zokeLssb6Y3SyNRJn9d0y5cLyc/wbLJp/2frMJFPjNOpBf59946a4hZ9bOl+35dv3xL4S+EFoKo7MHlxGybHD2KMC57JCSHVZ6dzmdvZ2Of2gJbVOl0KrHW+O6H8AdTirVk0o539PjybhhYKB7v8R0i663HE1DqjsN2tWwUI8FvLevLEbb39gMunB4w3flx+Whq8yrTLh3kL089Psfnb27yHoqFy+MdcTwxw5RSbRZpvtdxwwjZnirWN/d6ScNlvVp0tuOTfuwOpLoIA+FfF/mcmof950Pe+fkomSZxU6Q/EPhrJ0t4Cfhx15rsXMiYepjdc0DJQk/2nzJJTVj2PjRR/8CRe8N759hqffYP8AS73F4Frq9173hgwfJ8De+UZ/8wx/gTjjVe9hbj6mT/vSn0Y8+eh+u97bA+55B4DWvhzW67zaq3HbbbeXbZ9xGBvxoELNkmOXpnKvm7pzzpbnN+yIc281kD8rHLm6cm8C9JxVLtWoPiAY7nij5d2EOO1VGc7bWX2XvONyBEjJ+D0i43xjUEfBmQrSLpebFnyihANBRmIjsEQ9Ej03YEcctTp0ISW4VmzC8JfJmOpa2eSkc5p2oQ8CwdZJuCYHVomTaB0fJYCIngRGRnhTC6vyWzBKJhMLyaGvapjI2CZOWpG4btX6bD4dlPtqZWy+jryGtz4S7NRMVWI/CzxL4vRMTeyk/i0/G56AWATEZD/WoliKp/TwUtKChdskhJRy0lDAsH5zRk5HDIZC/gKZeRzp+OiIE+axQwFUtWVb7UFOTXZquazcLkT7UbZbaH8utEiEUkU7r6g9SJWJRvdTBXpdO7OWxa5YaGOsoimFlan99mnx45BxuOjeDm8PN5RZzp3Cncau4Me5s7gLuQo6rofOA8nmIPbwxJf8StXmBCuyYTmKOii8ZdPZYpjGz/m1f5aioKB1J1ZiD4q8vHEnRI6nvg5kwwQ8yQdMMkn1oy+n1ReRLYAZV2XBCV8+cPffCVhWspBI7oze6/KZIR0gzvA2AThD+4OsQL8bxB39EJAyPbLVY+LuwhRW3dDB85JGgZQXrK9JmwrIQ5CLdBFHg+fNk/vSCkrS01HJQzhKB54mpnd3C8OYTfwq3MBThxTpDawa9q4MMrxUEEmYdxsNH73u2koeRY9mZfSnPTs8qNfRe0YdzaN70sybLZp08vbRrNH9pfrSLOp7z0jcWfbToG2eJZVIsiyDNfl8LBALvzR4bgzM8LRaPx+DDK196id3tMhn/LOX9OyXRlw8BXFGTs7mof4bPgelIJnVMkKBSEGwooRMiVEqOXSgJ8Prvfvfii97TZ8Ad3iTMgXc3exPvjEDbO+/A2Kj3PkzAjsOfhR3eoe0YrNniHXrkB688AuplP4H5K751xU03XfGdlbewM/rDb9AHaAH3ThvqlzXceu487u+4y31+vou7h9vLPcntQ42f8y2cAbYxUF8zy8fX+yI99qF5GKfD30H5nH+9ZEDVZZfUvm7HDeX6l+RsI/lHs5YQbQv3gCPmihX/IaFUYiqGAQm4B31DKVpiRwao9p0B7BiNCSnq1irI7/4DV2gFp1jA+prU3HqRaK3afN5bI9xpSxZfmslmM5cuXrJ36aItLLll0dKVe94QhDf23P8mz795/7ML7HnZE8ty0mk1w5CYWaDhSEshFMkm87SF2iErhjZ+RHAEc+U09RqIxGFtsv+q9mAhHm2PB9JqIBAOBr2XA3mNQqQtRHaOrtfR3bghqOYdGR0GWQ3FzGirkQCYbncEAmdZLS2laIwXrSC2lIo+RXuXLG4QN0Un7eDfbBK4503ee+LGz0VmSlHHjlWdpBIKFmZEYuk4jYQT0+KaQtMqanrv6XhwG+Q7pc/piWQ0lagEF4c6QvjrN000z61gakdskcyXTimHjaxbCqNvEc2n8/FgbFobH9G2LhNoW3IgmY4mkitkv6XMXr4e/hH9Mu1FdgiiFZJES5C9T+7jBlDSzEY5s4gb9d8pfwKlzGbu79EO2cHd4L9ZIOWpY/paXrKdWoWWKjU3DXYB0yXJYbfNjtTUaFPXon6cl0ynZtKSycBNBDePgpv58P9QPfU6taQ3RRPc7b0Ky26696ZR+siOq77+n+S+Pffe+/jXReFr3v5bbr31ltseNr5yp/GtRIJIiURy+fL6dj+C9eT+BxDwEYl/CAHx7wjg43D/nvvue+xoza1Yc5fxj8nklbFUqjeddtDndEIhSK644dRTb1ix4xGef2TzusfXrXvcO7jxufVw7rPGqlX3rlq18Zz4mjXxFY/Bj5fXklcsryWuXVf/49gYkerXbSTOenJO/V8QEP5j9eoN58TXro2vqP8RDo55V61bB9s8ayPsRBDvEgbyydWrN57rg3hXkV+kexkZy4ER4RhT9ynfJdejNVnklqA2yLPLGv9xJ9hZn63Z9SoyUIlpCDvis7FUOMq0Elr71UpDDaDlXk6B/3ILrXtk7h9XwkOxaXP0HNzlvSOpfd3z+qct7KmJC6442e6f0ZtQQKsoXZmC21swoqKcq5aGOsSKeqLbNiudai12Lh+asWgS1odLai063OptqkbC6Vntg/NP6OnvEk+Yu6CaqMx0u1LGHLmvs7a0LPajwZBu7+hQpw9laoN9hjJr2uwV86fed1Tg/sa9+FEtR836QcO2DZLDENbaKRt/3H8D3OqsVHicY2BkYGAA4ksfuZrj+W2+MnCzMIDADaPztTD6////9SxbmRuBXA4GJpAoAGfWDXAAAAB4nGNgZGBgbvjfwBDDcvE/ELBsZQCKoAAjAMK2CB0AAHicY2FgYGDBhbf+/49TjprYF4gvYhFXJt4MAGihBL0AAAAAAADmAPYBWAFwAeACYgKsAtoDGgN6A9IGCgZQBo4HXge6B+gIJAiWCMQJsgnECfoKFApiCpIKygsCC0QLaAuqDBYMOgxqDM4OaBKqEywT6hTOFTwV/haqFtwXHhguGRIZhhmeAAB4nGNgZGBgMGJ2ZTBkAAEmIOYCQgaG/2A+AwAZAgHCAHicZY9NTsMwEIVf+gekEqqoYIfkBWIBKP0Rq25YVGr3XXTfpk6bKokjx63UA3AejsAJOALcgDvwSCebNpbH37x5Y08A3OAHHo7fLfeRPVwyO3INF7gXrlN/EG6QX4SbaONVuEX9TdjHM6bCbXRheYPXuGL2hHdhDx18CNdwjU/hOvUv4Qb5W7iJO/wKt9Dx6sI+5l5XuI1HL/bHVi+cXqnlQcWhySKTOb+CmV7vkoWt0uqca1vEJlODoF9JU51pW91T7NdD5yIVWZOqCas6SYzKrdnq0AUb5/JRrxeJHoQm5Vhj/rbGAo5xBYUlDowxQhhkiMro6DtVZvSvsUPCXntWPc3ndFsU1P9zhQEC9M9cU7qy0nk6T4E9XxtSdXQrbsuelDSRXs1JErJCXta2VELqATZlV44RelzRiT8oZ0j/AAlabsgAAAB4nH2S63LTMBCFfZraLm1Db2lLbxRouRMg4RX4x0N4FFux1jhyk2gZx0/PCveHExg0Hsv77e6Zo7WCraBdu8G/1xhb6GEbISLE2MET7GIP++jjKQ5wiCMc4wQDnOIM53iGC1ziCte4wXPc4gVe4hXucI/XeIO3eIf3+ICP+IQhPuMLvmKEMb4F0dLoxlB/zsrWpOyUJdrOlNNxIaGr+MDxhFTVGO3zjiMfOQpToxYuzFRecejUpNShM3qmo1yUJhT/aKsfu4clcWq0zUNRTXm/MezIaKGO+yp19IvcKplSWfZUlvVEM2ob41ZuFJeaxBWfNSZNE6+dL428Hk0OfG2mbMMeDH2U6x3/LVVVWJN21JPwerrkOmmlk4ypIHEijyg5vvlfcnTczU7Is/MuKrgmb0pOdNLlc3qQea2zn+1wBl1WVpxV0nzxl4uZFBfk+LSbWZHfHpQ9XKuXsqMuSGnFds36Qqbu+KqLrLKZeJ9pypk2bOV/LsaG/0b+hd0wVHJVs6eXXWrYa865PfDetFrMlEsorexac0G2Iac2JGWYNPdXJP7eklBIQ/4O2XEQ/AZFHxhQ') format('woff'),url(//at.alicdn.com/t/font_934335_kaqqxgj7xqf.ttf?t=1544334973484) format('truetype'),url(//at.alicdn.com/t/font_934335_kaqqxgj7xqf.svg?t=1544334973484#iconfont) format('svg')}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-huiche:before{content:"\e651"}.icon-shezhi:before{content:"\e624"}.icon-quanxianfuzhi:before{content:"\e62c"}.icon-date:before{content:"\e91c"}.icon-jiantou:before{content:"\e616"}.icon-tubiaozhexiantu:before{content:"\e79a"}.icon-biaoti:before{content:"\e62b"}.icon-chart:before{content:"\e61d"}.icon-dagou:before{content:"\e617"}.icon-table:before{content:"\e61e"}.icon-theme:before{content:"\e66f"}.icon-guanbi:before{content:"\e641"}.icon-Kxiantu:before{content:"\e679"}.icon-tubiao-liucheng:before{content:"\e68e"}.icon-jiacu:before{content:"\e6fe"}.icon-zhutiheliutu:before{content:"\e62f"}.icon-activity_fill:before{content:"\e6de"}.icon-add:before{content:"\e6df"}.icon-gou:before{content:"\e695"}.icon-tubiao:before{content:"\e60f"}.icon-guanbi1:before{content:"\e618"}.icon-leidatu:before{content:"\e615"}.icon-zhcc_xiangshangjiantou:before{content:"\e688"}.icon-biaodanzujian-biaoge:before{content:"\eb94"}.icon-jianshao:before{content:"\e644"}.icon-xieti:before{content:"\e6ef"}.icon-jia:before{content:"\e61b"}.icon-fsux_tubiao_duijizhuzhuangtu:before{content:"\e600"}.icon-fsux_tubiao_duijizhuzhuangtu1:before{content:"\e601"}.icon-fsux_tubiao_bingtu:before{content:"\e602"}.icon-fsux_tubiao_juxingshutu:before{content:"\e603"}.icon-fsux_tubiao_qipaotu:before{content:"\e604"}.icon-fsux_tubiao_kxiantu:before{content:"\e605"}.icon-fsux_tubiao_loudoutu:before{content:"\e606"}.icon-fsux_tubiao_duijimianjitu:before{content:"\e607"}.icon-fsux_tubiao_yibiaopan:before{content:"\e608"}.icon-fsux_tubiao_ditu:before{content:"\e609"}.icon-fsux_tubiao_ciyun:before{content:"\e60a"}.icon-fsux_tubiao_relitu:before{content:"\e60b"}.icon-fsux_tubiao_nandingmeiguitu:before{content:"\e60c"}.icon-fsux_tubiao_guanxitu:before{content:"\e60d"}.icon-fsux_tubiao_zidantu:before{content:"\e60e"}.icon-fsux_tubiao_luoxuantu:before{content:"\e610"}.icon-fsux_tubiao_huiguiquxiantu:before{content:"\e611"}.icon-format_icon:before{content:"\e612"}.icon-fsux_tubiao_jinzitatu:before{content:"\e613"}.icon-fsux_tubiao_shuiqiutu:before{content:"\e614"}.icon-Dtubiao:before{content:"\e672"}.icon-shuzi:before{content:"\e7f8"}.icon-jian2:before{content:"\e64e"}.sp-container{position:absolute;top:0;left:0;display:inline-block;z-index:9999994;overflow:hidden}.sp-container.sp-flat{position:relative}.sp-container,.sp-container *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.sp-top{position:relative;width:100%;display:inline-block}.sp-top-inner{position:absolute;top:0;left:0;bottom:0;right:0}.sp-color{position:absolute;top:0;left:0;bottom:0;right:20%}.sp-hue{position:absolute;top:0;right:0;bottom:0;left:84%;height:100%}.sp-clear-enabled .sp-hue{top:33px;height:77.5%}.sp-fill{padding-top:80%}.sp-sat,.sp-val{position:absolute;top:0;left:0;right:0;bottom:0}.sp-alpha-enabled .sp-top{margin-bottom:18px}.sp-alpha-enabled .sp-alpha{display:block}.sp-alpha-handle{position:absolute;top:-4px;bottom:-4px;width:6px;left:50%;cursor:pointer;border:1px solid #000;background:#fff;opacity:.8}.sp-alpha{display:none;position:absolute;bottom:-14px;right:0;left:0;height:8px}.sp-alpha-inner{border:solid 1px #333}.sp-clear{display:none}.sp-clear.sp-clear-display{background-position:center}.sp-clear-enabled .sp-clear{display:block;position:absolute;top:0;right:0;bottom:0;left:84%;height:28px}.sp-alpha,.sp-alpha-handle,.sp-clear,.sp-container,.sp-container button,.sp-container.sp-dragging .sp-input,.sp-dragger,.sp-preview,.sp-replacer,.sp-slider{-webkit-user-select:none;-moz-user-select:-moz-none;-o-user-select:none;user-select:none}.sp-container.sp-input-disabled .sp-input-container{display:none}.sp-container.sp-buttons-disabled .sp-button-container{display:none}.sp-container.sp-palette-buttons-disabled .sp-palette-button-container{display:none}.sp-palette-only .sp-picker-container{display:none}.sp-palette-disabled .sp-palette-container{display:none}.sp-initial-disabled .sp-initial{display:none}.sp-sat{background-image:-webkit-gradient(linear,0 0,100% 0,from(#fff),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-moz-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-o-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-ms-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:linear-gradient(to right,#fff,rgba(204,154,129,0))}.sp-val{background-image:-webkit-gradient(linear,0 100%,0 0,from(#000),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-moz-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-o-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-ms-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:linear-gradient(to top,#000,rgba(204,154,129,0))}.sp-hue{background:-moz-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-ms-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-o-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-webkit-gradient(linear,left top,left bottom,from(red),color-stop(.17,#ff0),color-stop(.33,#0f0),color-stop(.5,#0ff),color-stop(.67,#00f),color-stop(.83,#f0f),to(red));background:-webkit-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:linear-gradient(to bottom,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.sp-1{height:17%}.sp-2{height:16%}.sp-3{height:17%}.sp-4{height:17%}.sp-5{height:16%}.sp-6{height:17%}.sp-hidden{display:none!important}.sp-cf:after,.sp-cf:before{content:"";display:table}.sp-cf:after{clear:both}@media(max-device-width:480px){.sp-color{right:40%}.sp-hue{left:63%}.sp-fill{padding-top:60%}}.sp-dragger{border-radius:5px;height:5px;width:5px;border:1px solid #fff;background:#000;cursor:pointer;position:absolute;top:0;left:0}.sp-slider{position:absolute;top:0;cursor:pointer;height:3px;left:-1px;right:-1px;border:1px solid #000;background:#fff;opacity:.8}.sp-container{border-radius:0;background-color:#ececec;border:solid 1px #f0c49b;padding:0}.sp-clear,.sp-color,.sp-container,.sp-container button,.sp-container input,.sp-hue{font:normal 12px "Lucida Grande","Lucida Sans Unicode","Lucida Sans",Geneva,Verdana,sans-serif;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.sp-top{margin-bottom:3px}.sp-clear,.sp-color,.sp-hue{border:solid 1px #666}.sp-input-container{float:right;width:100px;margin-bottom:4px}.sp-initial-disabled .sp-input-container{width:100%}.sp-input{font-size:12px!important;border:1px inset;padding:4px 5px;margin:0;width:100%;background:0 0;border-radius:3px;color:#222}.sp-input:focus{border:1px solid orange}.sp-input.sp-validation-error{border:1px solid red;background:#fdd}.sp-palette-container,.sp-picker-container{float:left;position:relative;padding:10px;padding-bottom:300px;margin-bottom:-290px}.sp-picker-container{width:172px;border-left:solid 1px #fff}.sp-palette-container{border-right:solid 1px #ccc}.sp-palette-only .sp-palette-container{border:0}.sp-palette .sp-thumb-el{display:block;position:relative;float:left;width:24px;height:15px;margin:3px;cursor:pointer;border:solid 2px transparent}.sp-palette .sp-thumb-el.sp-thumb-active,.sp-palette .sp-thumb-el:hover{border-color:orange}.sp-thumb-el{position:relative}.sp-initial{float:left;border:solid 1px #333}.sp-initial span{width:30px;height:25px;border:0;display:block;float:left;margin:0}.sp-initial .sp-clear-display{background-position:center}.sp-button-container,.sp-palette-button-container{float:right}.sp-replacer{margin:0;overflow:hidden;cursor:pointer;padding:4px;display:inline-block;border:solid 1px #91765d;background:#eee;color:#333;vertical-align:middle}.sp-replacer.sp-active,.sp-replacer:hover{border-color:#f0c49b;color:#111}.sp-replacer.sp-disabled{cursor:default;border-color:silver;color:silver}.sp-dd{padding:2px 0;height:16px;line-height:16px;float:left;font-size:10px}.sp-preview{position:relative;width:25px;height:20px;border:solid 1px #222;margin-right:5px;float:left;z-index:0}.sp-palette{max-width:220px}.sp-palette .sp-thumb-el{width:16px;height:16px;border-radius:16px;margin:2px 1px;border:solid 1px #d0d0d0}.sp-container{padding-bottom:0}.sp-container button{background-color:#eee;background-image:-webkit-linear-gradient(top,#eee,#ccc);background-image:-moz-linear-gradient(top,#eee,#ccc);background-image:-ms-linear-gradient(top,#eee,#ccc);background-image:-o-linear-gradient(top,#eee,#ccc);background-image:linear-gradient(to bottom,#eee,#ccc);border:1px solid #ccc;border-bottom:1px solid #bbb;border-radius:3px;color:#333;font-size:14px;line-height:1;padding:5px 4px;text-align:center;text-shadow:0 1px 0 #eee;vertical-align:middle}.sp-container button:hover{background-color:#ddd;background-image:-webkit-linear-gradient(top,#ddd,#bbb);background-image:-moz-linear-gradient(top,#ddd,#bbb);background-image:-ms-linear-gradient(top,#ddd,#bbb);background-image:-o-linear-gradient(top,#ddd,#bbb);background-image:linear-gradient(to bottom,#ddd,#bbb);border:1px solid #bbb;border-bottom:1px solid #999;cursor:pointer;text-shadow:0 1px 0 #ddd}.sp-container button:active{border:1px solid #aaa;border-bottom:1px solid #888;-webkit-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-moz-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-ms-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-o-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee}.sp-cancel{font-size:11px;color:#d93f3f!important;margin:0;padding:2px;margin-right:5px;vertical-align:middle;text-decoration:none}.sp-cancel:hover{color:#d93f3f!important;text-decoration:underline}.sp-palette span.sp-thumb-active,.sp-palette span:hover{border-color:#000}.sp-alpha,.sp-preview,.sp-thumb-el{position:relative;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.sp-alpha-inner,.sp-preview-inner,.sp-thumb-inner{display:block;position:absolute;top:0;left:0;bottom:0;right:0}.sp-palette .sp-thumb-inner{background-position:50% 50%;background-repeat:no-repeat;border-radius:16px}.sp-palette .sp-thumb-light.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIVJREFUeNpiYBhsgJFMffxAXABlN5JruT4Q3wfi/0DsT64h8UD8HmpIPCWG/KemIfOJCUB+Aoacx6EGBZyHBqI+WsDCwuQ9mhxeg2A210Ntfo8klk9sOMijaURm7yc1UP2RNCMbKE9ODK1HM6iegYLkfx8pligC9lCD7KmRof0ZhjQACDAAceovrtpVBRkAAAAASUVORK5CYII=)}.sp-palette .sp-thumb-dark.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAMdJREFUOE+tkgsNwzAMRMugEAahEAahEAZhEAqlEAZhEAohEAYh81X2dIm8fKpEspLGvudPOsUYpxE2BIJCroJmEW9qJ+MKaBFhEMNabSy9oIcIPwrB+afvAUFoK4H0tMaQ3XtlrggDhOVVMuT4E5MMG0FBbCEYzjYT7OxLEvIHQLY2zWwQ3D+9luyOQTfKDiFD3iUIfPk8VqrKjgAiSfGFPecrg6HN6m/iBcwiDAo7WiBeawa+Kwh7tZoSCGLMqwlSAzVDhoK+6vH4G0P5wdkAAAAASUVORK5CYII=)}.sp-clear-display{background-repeat:no-repeat;background-position:center;background-image:url(data:image/gif;base64,R0lGODlhFAAUAPcAAAAAAJmZmZ2dnZ6enqKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq/Hx8fLy8vT09PX19ff39/j4+Pn5+fr6+vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAUABQAAAihAP9FoPCvoMGDBy08+EdhQAIJCCMybCDAAYUEARBAlFiQQoMABQhKUJBxY0SPICEYHBnggEmDKAuoPMjS5cGYMxHW3IiT478JJA8M/CjTZ0GgLRekNGpwAsYABHIypcAgQMsITDtWJYBR6NSqMico9cqR6tKfY7GeBCuVwlipDNmefAtTrkSzB1RaIAoXodsABiZAEFB06gIBWC1mLVgBa0AAOw==)} \ No newline at end of file +@font-face{font-family:iconfont;src:url(//at.alicdn.com/t/font_1109445_3uhchn0iu1o.eot?t=1573095457319);src:url(//at.alicdn.com/t/font_1109445_3uhchn0iu1o.eot?t=1573095457319#iefix) format('embedded-opentype'),url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAALYAAsAAAAABnAAAAKLAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCCcAp8gQgBNgIkAwgLBgAEIAWEbQcwG64FEdWTCWR/Sm4OkS3AzL8KYg4aSemU4GqI3mB6P9n7k+2ut5hEQy2TwEw6Jnj+G/fdNzOfTFqrA4xW6ExSSNs2tP0h7emOUEjc/7WdKSEPXj+LJBJ0Tfhn/8R3w0pl8CbO3gca9TS2Pm4BBXSFwhB+R7yoMeuFnFxjrdBQiQocctB2llgyjyil+oEV+FgAZBR4eiLSpPrEvdM/gT5I6wHluBeNNWlSF1AXB1KAe2G0hUso44axC1zCeQjgJEER0tDUMYCDwZomgCzOzYzh5PwYDEvZEaw1aw2yh4ld7ahhN/y+fFSIHRQWjVXRM904yeqZnaH+PyefIKAgoM0WQANFgAEZqI13oSOM0zjjBhmwr1KBZ79vQ/ZqRthfZxW7AYhByT1JXdmtphTAbfUlByge9QaQnIp42a/CP45oR+Fg+HTYIt/f+0PjPsijc8rpF9fZv0Ic8fcbSMDqdxvswkyfxTnpZBvc/8yEW6zwz/S4OgQQKDqiEV952TEA3P48NBn6OcG+X4fA/5H2bDG63LIqo0prOxU5561y4gT+sTvI01hD5GbSgp3ICKeNeAqNnSzSsEWw4KIKVuxUw0khzZtdhFhHR4wDKGADQPBzBYWXFDR+bkjDPsJClC9Y8YuGkyFhe7rIEa30THhnfMLjB6XoO+nY2YtKt5i/mjtl5SHviDSVIUijpJjaYIc0x4LpnWfMEiT1LazBZdg0PQzUVyg4KpiHZRzLuhtFom8VTzHhnfEJjx+Uou+k35290ue3mL+aO7U01cSPSFM5OKRR0oPcaLpeTfdyzfTOM2YJkvoW1mAUNk0PQ/2oCgVHxYjosIztdrKvJlpf137dHsCpWEal2sM0FK9SFKgoAAA=') format('woff2'),url(//at.alicdn.com/t/font_1109445_3uhchn0iu1o.woff?t=1573095457319) format('woff'),url(//at.alicdn.com/t/font_1109445_3uhchn0iu1o.ttf?t=1573095457319) format('truetype'),url(//at.alicdn.com/t/font_1109445_3uhchn0iu1o.svg?t=1573095457319#iconfont) format('svg');src:url(//at.alicdn.com/t/font_934335_kaqqxgj7xqf.eot?t=1544334973484);src:url(//at.alicdn.com/t/font_934335_kaqqxgj7xqf.eot?t=1544334973484#iefix) format('embedded-opentype'),url('data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAACoYAAsAAAAAQKwAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAARAAAAFY8d02RY21hcAAAAYAAAAGvAAAEuOPAIVlnbHlmAAADMAAAIvAAADM8XaPCvWhlYWQAACYgAAAAMQAAADYUOOL3aGhlYQAAJlQAAAAeAAAAJAiTBINobXR4AAAmdAAAAB8AAADIyfb//2xvY2EAACaUAAAAZgAAAGYg+RKabWF4cAAAJvwAAAAfAAAAIAFtA1FuYW1lAAAnHAAAAUUAAAJtPlT+fXBvc3QAAChkAAABtAAAA0NPUNOieJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2Bk4WKcwMDKwMHUyXSGgYGhH0IzvmYwYuRgYGBiYGVmwAoC0lxTGByeMbyewtzwv4EhhrmRoREozAiSAwDr1wyIeJzd1LlOG2EYheHXYMxm9sVOMJCFbNgJ4RKQqClTRVEUpUei4w6oqKDh4qA7FqKgpYKcj9NEEQ1t5tfjZfR7PN82wBgwagNrwsh3Gv5E45vPNh7PjzL1eL7Z2Pb3L7zyvll1taYNbWmgHe1pXwc61JGOdaJTnetKt7ofXgzvrns3Zw8PILx/3fv7T+6//Hf/M46G7+mH10+vX0+u338tWKPHOhtsOpLXvOEtW7zjPR/4yCeW2KbvqD/7qiuOdIJlXjLOpP+nxQhzTNNl1znZoc0qMywyzwIvmHUuvzpbHd9S61kR/J9Hu17cNzl2qwfCFUCNcC3QSLgqaDRcH9QMVwqNhWuGWuHqofFwHdFEuKJoMlxbNBWuMpoO1xu1w5VHM+EeQLPhbkBz4b5A8+EOQQvhXkGLUTOkpXD/oOVwJ6GVoN5Xo+ZNnaDuvRvU79bCvYfWg4p1I6j4tqLmVP2gcjMIKq87QcWxF1QO9oP6z4N4rNFh1MzrKKhrHEdVVSdBxXEaVP7Og8rHZVA5uwoqZ7fheUH34clheBH1PBrehaeJ617UM+rmLOj8AQ2Uw28AeJyNegmAHFWZcH3v1V3dVV3VXV3d0z19TnfPkbm6prtzzUECCTlIMgkhgQQyCCEBghuQLEEkmSEiIEjEILdLOAJKQLmCcRUcQIEFUX/wX/+ARPxFf91dBRbZXTFd2e9V9yRBo/vPdL3ze9/73vFd7z1O4LjDr9B9dIALcgnuHO4W7laOAx2kFDhDUOuBUr+JASaxAIv7C5grVoehJOlQwnQlb2OxWOwFyUkBFhpgY8KJigY4tSFgadutIIJqNA01bIKFw1CR+v12jtSDoZQvloqiVKr6GBlsCfurVWtu1IlWa47oY+mH/xrdRMim0UY4axnAslmNEPaEZgYV2whutfTBuKXDM6Bb8UHd2ho0bCU4w3Qcc8bfAJgZctz4sBXrnu0sLJTVtWq5sNCZ3R2zhuN/pZjMPkIIht4+WDp71lJCls6avRR+DZGY7drmNl1LyKrbEo+3uKqc0PRtJhbHIkD2kv8Z5JR+PpOrLhgJRY3YihUxIxoaWVDNZfjR4xdnOMLhH32K/A5TlONqWQUW0Qu8Rd4ii7xZL3ASrvWv6R20BWslTuMMLsyluEGOC5tZU7KzlThkTXDtfAE/trwSkuKaeUeUam4lL7m4cm6KiFKuiMuOS+JvkA20nKtb5Pf1dwcGgBsYeJPPtEon5lP/FLeDm69PpImcCLVkoDUZT0MbQP9oBaBM44d+iO1uvx1buvVXybdd1/1RSgdofRoCp0FwOPtFGjAg6xagNSZKxR4YKHW5ODzwx/gMWc2JHKeABDUF6NPeWKs3JwW7YTeZ4a1Mw8tpbyXs9UFxzJP0OTYd3Ai3gOM6wKxFy7il7BSUq7WBElQHijkJ8CtVKz2QE6WII5lYJkqm6JgpcLNlBIFyNCLmigNVeiRxz6Hd37K6rAkFaqNVkGFQtZOa95xZMndIUB2tgXytlbAA/6wgHdcty7sEg4RlfdCIIPQtRZkI2x3VaocdhkEtaavec5K0IxRhRZHQtbAJIXVvkSR6z2EqacEIBizmGjGn4vjGeY6ONFe0nZvGVbml3ApuFbeGraxrupWsXajkW8FP5+08rmokRdxauVaR8rniILiVGtY5+SHqlqOO5FZ7SD6nEwaEU5TXAaGErH3k/9KVW7zn4K5TTvn8Kb29eixjxQKKFogEp4dP+dU2EPW41ZoQt71CjHylLTNQtCOFSrbvxNCJfDaWyR86wHOHOPZRrs6Rj7xXwZ03Tx4a6vTeBXP58vI9dlwXgMwkwfA15Y3eNXD563LECqSSfZmZ3YlosTKMKDv7A072wMg4/nP84cOHt/P76DiX50pcF9fLcUKWjWugOgtM3KRuhaUwqLkpsE0cZCtERMib7tTHP/Cn80VFEc+HXMv7jV9L7gIsOfTR++9Dd+MbV8SUJJNUSw62tuQuj+cAcvFDW2UpJSrkjPr/Ja/Xu+m1h7ZyR/bpDrKOczCDsg2lZk6MOAIKwWh5GKo13Hd0q9qieCt/q7aEVQDKUzEg8pSHZxVymgKqN/PXSiSu1ilQQgmh8HM1ztCqPu7dZPIYPnZQeqf98Te4OV9xoeK2knylhMlaxbUdZGqw8xUT4yzmx+jIyOSkh5//Y+lJ/CPcJJmsj5PxyXFvchznl00xCwBDbxz/OKYzvkufp8NcFPts5/q5mThGkTiixaS1ry7c6BCpVQkg41YZw9QYx7CEO5VwpqoI98GPKX3lXWGeQNMECoZ55cZP8vTH9UPZadPmTJt2SSP6P43oU42IDge9n3z2au+1ILUH+q1cqY1Afss550HcWwoMYM60yUbU+D3bLDwqEyaRZzScN/fj+o4eo+2oVCrqJI0KKkWGUaUNkV5USj2EcM/UBaH+TCO87wDPH7jPD8sXX6zGw6BiBOG4+rEcHTnS4pn6oe9PNcGQtBwPvplDemM+0QPkSS7CdXAzUIqdzp3PXc5dx32Z28M9xj3Lvcq9xf0WFJgGJ8Nq2AiXwmfhZtjNcQXkg4rJdn85apvZxsaXjlcIKO6iTrZaqxRLWbNYEpDtsTyKQFXkpCJKCvHYfKmZd9wh+PP6WoXlm6ocWY7hL4mSjcA+fic/xZ2Nvo+tk/5G3bHtHDQfjq2rlSQxh0YIC4oDyGBlZm00WJ7BCn9ZWTnaSxcqO7HkMM50cHhsdJKDq58zQGQMW3PcRpdsWIwERgob3vHIrLlTSBvkOs02x5sKGq//UNY0OSJrRGOJ+g81w9AimkF4TNSf1wA0UmZh/fegwcNhRdOUMEKujDTbafcdSZ3GKuSwokJADmsGgKGFA4aRZs3DLPhtpIm9URZhwZ3HKfsNaxZooEhphDRaX1B4UQyJixdhEBTFDQKmHy5qyhj2h9Kqrsnz58lROSjLG6SoPP/evBEYY2ho7jl5/Siv8j9oV0AbU0n7U6NUoxskSacqf33Yb+6PKXFcov/3kfGx+mNqfVJP1WRS9mfuQx9IMth8IVj9UGMeV+PU/bAJTiwN3gdNvpvN4t2ytklTVrG2qxQtpslrG5SslbXpmjzMyjG4COkZbpCF0XrAEPzgLENbxYa3SjOuBG0VK8XgAiOwlvW+NmDsAG0tK8XgEiNwN4PF4AXQ7malGGwtvCQIixcLgi6GhI2YfLjYoGBM0R6V58/HCcL5xHnCuaSsOU5n9jn5nFFKXy0RdUwDpeOpZTy/QVaCPH+NphRlhlkuyoGVRqDIWmCwhGhFVlzUyC3/H8PimGXVlI9Mv6SbWhV1qpllSgSVecVFHeOiKZDHOF9pxAIqmjAqFmC6Zxy4wxxqDBj33maKBEPgRgg3Alwdi3dPQgaVChaNo85hsJOTh1Fpjo+zcHKcYKqOqobJagzS5C1ORjmYRVmdbbgl2VIWGRuFWcMvyZrhqQqogdY9BDDU7X2Ygo5lm0imtbMf6OZTvZ3LIF2eA2ROv/cLeAKGenoGYRm5cLRzfqLl9MqpmwnZX78D5vb1z2Vyl83DL3AeUqglMmhVnMtdwO1AClDHMQcnDTbaiyUUQ6jebeywT5TQ36lIQlEsRauoCodRqIrFku/J4D96Pb6rhPBMdDgNPPirlIqlI5jyJvN5wMQprdCj+BFhquk6oTiBvQPr5i04OxrPFZQXRuetczd9TdAeJGOJSCQB4G3qu/vmy77lzn0+L+pq7ok5c57IqXpLMhLU9dEk5ssP3Sc8tMkdOwlRRAe1Qi4ePXvBvHUDGx7UwAjefLd3dYGOfxrLThpzNz0k3PdQGTEkR3UUBIPwy45LgvwKS7ciWkZ/PhC6bsZlt0Qi1hzvOduSASowf972zj2/X3Z9y+KgZQ0kL7ggOWBZmbilajYtpLLW3K7N7e+K4VktJyt0ICBpyJmIbQUfvKRj9RzL+6Usdm73/kStQ9/rhNsCA1Q5uWVWWHy3fXPXXCubKlDYBhrbFjyuz3t0jGa4OFfgysyTwb3HLPfWozHOOHo2qNeZqZHPMuvDlfDLTuXR58ElYJvHpJlxtKkn8RtPtAGZhLZvM/v7MMfCDDqN3FQW3q6PQVuCjDC490KsONQIoZg888xk0bunYaBP+ma7BUu8fLIIWAlvNW3DEbTfkqihy9WK6XsY+azvdaBGRkMx6mbNSJSwrpqdIpoGIWj7j/hh8s/rmrbNv9Jn6QWYDqB3h/xyxJNH9wrd9B5029IAzPSS0Ggj3gnCoWeeOST4IawPaS8HiJMOfgPOCGQczft8AB56us7z9ad9GO8ToO4PpOMov2CVFksHvJ2BqbWYQD9kHO3QaWijnITyosgxS6qaQi44YmANgX9IgJqR8Q4zAd0oh2wMbOCRKJsM9LWaM+D7XW++5H0o0G/eHmpRdGP77VQ4+ODVP2gXkhlD6PsQ1pkO/+F+Mxo1D0BWdDwHk7loFF7ySqwQDoQcZ7sA2j/t/o8+aqQTYvurVz/4cx5u3RYy1GTo1n3wz05o/4c8RLOO6P38gBklJSd0tLFXYuhy0aM2fRu5G8fI4cAGmHngm/XMRIz4xgOOYKBEFr8YykwLvfhiaFom9OILoUyX+cILZlcmBJ95MdSVZRXZLqxgRd9/wcBqLofz9yp9grq+PW9xNkq7BK5flmtD6dvJdaOVXcF5HeROwLldwJ3CjXIr0Q48kzubW4/W4EXcxdwWtAk/w23nrkLqSrSUlWjYydbCpXypJjhSL7hSqebka2jXOEdSfhlatY6UL7k4mpoB+RoOp8S+muvkcUzSMDZlMDWJmVn5EjON8ENH0pGcGvtcp4Z48HO7IUzD3QACfZwuO+D94cCKFQcgcGCZPdF3vvdW94Jwcnrvgm5zjbVggXVesnvtMdnA9MKlD59YuPEz08++NBW9rHthdKz7tuOUzTl/W7vVcWe71b7tfO38vgnErP1ZUf1TMPcf7r3JOwlc714iw7gK5IE93gfeHx54AEjkrqXb89OlNZ+Ynt80ffH06eaafP+RzGmdW0+PXbatc8HpT5y0876TFu7EgtXxrds7F65uFhxaNjYhXXWVNDG2zFx6FyIzWcHERLPAet87H67xrru97tWfZFumcS7zVXJB41ymkFWAfvXQ1+Fr8LVd8FOvg1XLTZ/u7b/w6Xx/bsqXax7OhFGkHePH1T+cnPxw3z748JVXXqmP+Anydh0FjLd59+6RRx99e/fu3bBs82Zv86OPPtrcxzwHB7AflA86s+JR/g0U6YOHHi+Wy0W6BEM4AOXFZWDB1N4nj5M/cn2YqfoKq1KsVVAnueVa1DdqRYmKThTVlB2VfAu6WCtWXab6CCcGo3FJAciekJyRS4EqJWIGPV8MxhIS6oxc7jIUUwCymIiZlDxoGSgiFJHnFUpBkA003PSgXX/e0nUCiqQoPGHeukqDwYhPG/r/QCd8vsya/iGO2RyX6R/zmI3xPeHdAV1zusC7I9vVlYXz/Aychxl41Y+yxwFors2V5PBx1sY181MfOzmr+elGzBZoYteuH+3a9equXd65U6kf7MI/2Ow9Tf5XfS3c4M0nff/299488P7tAW8eUf91ai9sP15/gAsvND/mzDt+uhGjFVaB9/4qXnJ4igK462O0+HbOu/SLNIR9BbgW7CmPUocDfyEddihWsptucaUhyCs1plYxXyL5iz4J5rY8+d4DC1ZOUDqx8safCsJPb3w3tby64i73M+QzxvXnlKctXHLGPQfNXZ4Yuv4T51xv7DIP3nPPW9audcV+eZdy+vwFTH/gmPeTPUfGzIWZvZm1s7ii+G9nT4e3vDywgFBY7X0V1nh7yB5vR+4AXOntIFsPNH17DDbQVt+3z/ujOKr+jkkLx5Zvp9dt3HgdxXDD573/JOtOnj8GMDb/5HXwKzLc1zcMwELSMQVDyOe9+VMwhKwbPwJChpFwnM/H6D/SpUfGEkLPPYbavhXleQF9eCbNy1yVm8kNcdhgaucw9mbpinP8jNn8sLDQlATsq8Dk9u1uPO5u3+49um1bOR4vb9tG7tm2jZVt21avvPYaLMNv9LXX6uuOpunSTvvQLVonXdjZKddX653kno4Otf6a3QkXek/BhGfBN3/2s/vvf3NP7aKLuIY9jHO7l7yH4+JxlypckNNxuKhksmG3lnXQDC9l3y/Dv5frD/3x3Fu8i78Mz5br88o0BW/u3+8N7N9P3t6/v7HWfJia/n6LofXmyzjcUrgayLqtwDKlRuZLdLzt0iUbrxw//c4T6Hjnxtlr7rn89K/MR7tlF2mrzoDgI8Grr3vqm1CdMwTBb+sXXji1B75GfoeY+7nZKHFRVjXOdNBfwFVvmO0SigeUU40Kv7yxG9gGL1QttsXFFFRhhWWTy9asuYzYVi0Sp7dv2XI7RQvdBf47N974HR7cpaksCO89+eR7AjO27pPCIF9hiM5A58vxodyarYRsXZMbiicyizq23EHIHVs6FmXSS9bv/A6l39m5fkln3+ZBbIoIBjf3xbogYoU+6oh3BmJNnthLDoIMUbTZpuFOqeQl/1yh1z+jYFEv5CVbihjAyjGMOm7Nv32x81KJXcKwBkWsKOXFXmyZL001HkTjBeNKKY+qPI8GGLuI8U9xDCJimQHsCMi1I2kSsR07b6fBTaO8Z0eYs6DsDkM1jYrJsaPszqccRRgHK4b8E5qoX4vEOJLtu0LVXmbsoaUw7Mes+UClNjCM8JXSAJJUKfnWKRa7zMnJiQY7bktDxHUYskppmAwBlrgUVxGJgtpAtVLLAxPwzHAWIpjCzlH860D3ihFUH0QEnedNKtI0L4TFtEgknhdVtHsl0dAUTLfERUemouLwQg4b8HwLz1uAfMzzOYGnvIQKKCKIuqInqajxso4lCgU+0yejFgoIESoGaIs+u08xZayQUUHRpCjGDQGoESAiTQog8pIkJHlBVuQIdkMjOq8RHTUWj6gDOhWJSWAGVQSdUlEICKxLHkiAUMchEpEVGukXgFBFbqc0rjiEEiMQuQF7CiDpev01yPRl8AcvtPRWelv8gKxZ6FCeaALwpBtpCZgFAjKVDRw9atYglU0T+1HkFhyMzAPwOtO1CCrxEZMXBFPTeWKyLAaYlKkmiUTvFnA60YQqRBVnVkQDwRSIxfOBgBXnBV2nOIeRCAVRkYAXBdnBto4uE8rjyCO8KlLBwFl3EUWnwMtUIi7OCy9ovGASVYjgIJEOTTGEYSVKEVs7ldk8EJlHX6OdEOLgemoYzwIulsn0ZzK3J7oTie4aCzjkd8YzPyM/Qambwdx8bjX3Se6L3M3cHu4p7lXuIPfv3AdgQxw6YTasgI1wOVwLd8Hj8By8Dr+CX8N/4IzHSDeZR1aR1WQjuZx8nnyFfJ08S35J/h/5L1zjNO2jc+mJzNtkrFNyHbat2RdJkfIQGeghOZ1IA0OknCIRneR6SM21XXa74tilIrtaQce05oNRv4Xj37H0EGzCzhldNOvyQrHUuIOpof3iHlOfIkxb4PdXexPylSbCQca+UXZi69qNDkmjlaPDn/WHvOiTZqfoxzpMUcfvzsn10Kk+SqxfJkYa+Jx8xb8javbGWLqEKF1W3EBSTjPdW3GlRu8oaFlXUr8/f3kmsdxavsZYvpJnt8XUcctupWb7skqnrFW1ZrNLSH+AjO5q1C4dncGBZgUTNIxGSXCd/pr/Sf4qOU1CjtI/NRs4uP4hygSa3VwaHE//xybc6cfhlHBihkgFZwkptwv5Ur+/9s1ejrf2Om0sPaJnK3/sujeXwT4yQVG/j3yteMzNG1uEHjpFw8cXnX68F8df8mNWnC3Ax7qS/ryrCqzvaoF4V9+0BMTb45DoqqJ4s3WZUj/iO7RIa741ojWjp0pA1YCBzIoyVAspQsebDDCIwkNQgmEdpSJIMd2Mm4qMQTAmQUepfgrvyAEJ5VpACeokT3MtBgOw4qGAbWptM9raxpDDrSCCSEEWtalWLBO3FMWKZ+KmCokcSFFND2t8m5oMtm2lsmYxhHLQDIgUzdAEyhfZsA3NFqEtd5EkoIxHUngmggKga6KKeVkNKBKPsigQGBA1GSWdpOoaDkTCQKIoT3iKYhEjcW2AKIKmBgWFCAQgOEejSkCVKOoNiYhEgEAXoaIs8sxhkXiM96pBFTSkXtWCZvASKhDUDAEgvIAilfTwhApUwu6ppAZUVgPN9thYUtYSSdNVmYlhRhINAi8oPkkCkkQJeGsswwjpITNmBkE3J2RdFQRVN/0oqCIqFK+K1ohmhBArjgvXgpcFan46RIOSElR4QUXcsoi6ZhYQQdZkgQQUEUNvmo3OVSyqByNB3U6wmcE5JGxmBBIRVMM0cCYFTcdYXBPBCompT5kn9ieJIPrAgj/JfCAUkAVBDhgB3o5sRxUnCThInGAFIsh3ChKLhCtSQBUhkrHt6X4vfKMznkb8TrCOdaqr4r0RoEE9IBJbCMlgn8RIE33SWG9YZwRZd0E9SO0IEdavv+U8/FukmLghdNO0ggpGitVqa5rdWkj60ZlJiQ29iGsXsNQTF6tmUMatFG606Q1owWhrOhkNBrTFP7o6ikCGoQdk0IOJhGrFW1vCmhQIB9btmyMbAUkK6iFDk2UtJIXilooAmRZTVc2WcjigynokMLooFLIiJ322AR3A0QWxkdGhKVq4JRFDKHXOPnMCByXghhBFKopqgJe1ANKIqySJnUvYWgU1mef9SFApTr3Etpgo4ULwssyLmpbPyiJQtDay0yUBFarGNhLuT0pbyxRLsBGvathkW0dHx/TOzulsw/Pq9IQgobURiLTiOuFep7gTWVeCvGQmFXnqd0EBmUGUBEHyCRBwl+qsskEHMCD+pen4t2j6dCKy7aIJLNIDQhAXTFFZUz8a8duFqKiKeVBFUUS2NhREIdDSxoKAi8rLihDUkRME5eRyeVEZ/4q8wmw2RcWRCqIiKAy9ErJwfwia0YMokUvDuMtkIYewoiCIstJo4ogiDiiEIkAUChv6grgPZayRJSPEtlgohOYIbrzahkKjDxXboWT4i05a0fLBOZV6OhVVDZQW/c1uVP+dzTv0Gdru39d2op9X4xZwC9Fe6IFatcgOQ4v+iyb/koDdFvhvqhz/jZSEBnxULDE7Plpl0GJRQjucva1qFPmOuETPW+eEQ2dMXNY3et5NsxMblq54Y8UZX/AOzfvmvBPPdvquW3VSx/qL+kNW5tQFFy/2Tsx19PWuLrQZs2sjJ8GZ3TONSI8SjHb0bhWlKwJUG4FZn9hYnPF8ZeE1IH3uqUWXBkU1n/z1DUkc9vLZu/5OoDuGp93f03bmijP2RaGr7fyw3pLp2B4Ot1chGjqvLXd2V9dyM2R1da6fd8qXtMZ51uE/0J00wLGzTZcbxBlYw13EbeM4gd2GlgbQj7AhGmGzEY7Y6J8US+YAuxFBiz+c6yXFai2LPgXa+hFU4GKtUqvaUZuit9GFs8WeItGiw7S9E5VskV3Hoq3Qh54HokBsuZLv9IWrDkRRy+azuYpvHBAXzWZkNDAJmf7Fpe8svV5QQeCHL+6hYQJLv8SjgJ9BpXI3yT7Lw7XijA9QMEuP8Xzb2sp+4EcuRsGMwlVwz0R7+k6ebHpZJPxBtI67ewjpEgECPIjU+6wyq0ZBRja7+iMBbXnvPSpRJI7sw05uRBCoUgTu6abgibBkJyNCGPlUN62j+L5WEGaOQph+JD4m8G3tHuVheAuzzj8SCyi4foB5VThISM+nRpAWdES9D5iroi7+Qo0n/nuBw7+id9A4euhq8+yB3ZAUuV6uD/3hQW4e2sWnciu5s7h13CZclU9zV3DXcNfiDi1QQSqFhZpjQCnsSA47/hXYQXH4mPMSSZjyuaSm01Xzz9zokeLssb6Y3SyNRJn9d0y5cLyc/wbLJp/2frMJFPjNOpBf59946a4hZ9bOl+35dv3xL4S+EFoKo7MHlxGybHD2KMC57JCSHVZ6dzmdvZ2Of2gJbVOl0KrHW+O6H8AdTirVk0o539PjybhhYKB7v8R0i663HE1DqjsN2tWwUI8FvLevLEbb39gMunB4w3flx+Whq8yrTLh3kL089Psfnb27yHoqFy+MdcTwxw5RSbRZpvtdxwwjZnirWN/d6ScNlvVp0tuOTfuwOpLoIA+FfF/mcmof950Pe+fkomSZxU6Q/EPhrJ0t4Cfhx15rsXMiYepjdc0DJQk/2nzJJTVj2PjRR/8CRe8N759hqffYP8AS73F4Frq9173hgwfJ8De+UZ/8wx/gTjjVe9hbj6mT/vSn0Y8+eh+u97bA+55B4DWvhzW67zaq3HbbbeXbZ9xGBvxoELNkmOXpnKvm7pzzpbnN+yIc281kD8rHLm6cm8C9JxVLtWoPiAY7nij5d2EOO1VGc7bWX2XvONyBEjJ+D0i43xjUEfBmQrSLpebFnyihANBRmIjsEQ9Ej03YEcctTp0ISW4VmzC8JfJmOpa2eSkc5p2oQ8CwdZJuCYHVomTaB0fJYCIngRGRnhTC6vyWzBKJhMLyaGvapjI2CZOWpG4btX6bD4dlPtqZWy+jryGtz4S7NRMVWI/CzxL4vRMTeyk/i0/G56AWATEZD/WoliKp/TwUtKChdskhJRy0lDAsH5zRk5HDIZC/gKZeRzp+OiIE+axQwFUtWVb7UFOTXZquazcLkT7UbZbaH8utEiEUkU7r6g9SJWJRvdTBXpdO7OWxa5YaGOsoimFlan99mnx45BxuOjeDm8PN5RZzp3Cncau4Me5s7gLuQo6rofOA8nmIPbwxJf8StXmBCuyYTmKOii8ZdPZYpjGz/m1f5aioKB1J1ZiD4q8vHEnRI6nvg5kwwQ8yQdMMkn1oy+n1ReRLYAZV2XBCV8+cPffCVhWspBI7oze6/KZIR0gzvA2AThD+4OsQL8bxB39EJAyPbLVY+LuwhRW3dDB85JGgZQXrK9JmwrIQ5CLdBFHg+fNk/vSCkrS01HJQzhKB54mpnd3C8OYTfwq3MBThxTpDawa9q4MMrxUEEmYdxsNH73u2koeRY9mZfSnPTs8qNfRe0YdzaN70sybLZp08vbRrNH9pfrSLOp7z0jcWfbToG2eJZVIsiyDNfl8LBALvzR4bgzM8LRaPx+DDK196id3tMhn/LOX9OyXRlw8BXFGTs7mof4bPgelIJnVMkKBSEGwooRMiVEqOXSgJ8Prvfvfii97TZ8Ad3iTMgXc3exPvjEDbO+/A2Kj3PkzAjsOfhR3eoe0YrNniHXrkB688AuplP4H5K751xU03XfGdlbewM/rDb9AHaAH3ThvqlzXceu487u+4y31+vou7h9vLPcntQ42f8y2cAbYxUF8zy8fX+yI99qF5GKfD30H5nH+9ZEDVZZfUvm7HDeX6l+RsI/lHs5YQbQv3gCPmihX/IaFUYiqGAQm4B31DKVpiRwao9p0B7BiNCSnq1irI7/4DV2gFp1jA+prU3HqRaK3afN5bI9xpSxZfmslmM5cuXrJ36aItLLll0dKVe94QhDf23P8mz795/7ML7HnZE8ty0mk1w5CYWaDhSEshFMkm87SF2iErhjZ+RHAEc+U09RqIxGFtsv+q9mAhHm2PB9JqIBAOBr2XA3mNQqQtRHaOrtfR3bghqOYdGR0GWQ3FzGirkQCYbncEAmdZLS2laIwXrSC2lIo+RXuXLG4QN0Un7eDfbBK4503ee+LGz0VmSlHHjlWdpBIKFmZEYuk4jYQT0+KaQtMqanrv6XhwG+Q7pc/piWQ0lagEF4c6QvjrN000z61gakdskcyXTimHjaxbCqNvEc2n8/FgbFobH9G2LhNoW3IgmY4mkitkv6XMXr4e/hH9Mu1FdgiiFZJES5C9T+7jBlDSzEY5s4gb9d8pfwKlzGbu79EO2cHd4L9ZIOWpY/paXrKdWoWWKjU3DXYB0yXJYbfNjtTUaFPXon6cl0ynZtKSycBNBDePgpv58P9QPfU6taQ3RRPc7b0Ky26696ZR+siOq77+n+S+Pffe+/jXReFr3v5bbr31ltseNr5yp/GtRIJIiURy+fL6dj+C9eT+BxDwEYl/CAHx7wjg43D/nvvue+xoza1Yc5fxj8nklbFUqjeddtDndEIhSK644dRTb1ix4xGef2TzusfXrXvcO7jxufVw7rPGqlX3rlq18Zz4mjXxFY/Bj5fXklcsryWuXVf/49gYkerXbSTOenJO/V8QEP5j9eoN58TXro2vqP8RDo55V61bB9s8ayPsRBDvEgbyydWrN57rg3hXkV+kexkZy4ER4RhT9ynfJdejNVnklqA2yLPLGv9xJ9hZn63Z9SoyUIlpCDvis7FUOMq0Elr71UpDDaDlXk6B/3ILrXtk7h9XwkOxaXP0HNzlvSOpfd3z+qct7KmJC6442e6f0ZtQQKsoXZmC21swoqKcq5aGOsSKeqLbNiudai12Lh+asWgS1odLai063OptqkbC6Vntg/NP6OnvEk+Yu6CaqMx0u1LGHLmvs7a0LPajwZBu7+hQpw9laoN9hjJr2uwV86fed1Tg/sa9+FEtR836QcO2DZLDENbaKRt/3H8D3OqsVHicY2BkYGAA4ksfuZrj+W2+MnCzMIDADaPztTD6////9SxbmRuBXA4GJpAoAGfWDXAAAAB4nGNgZGBgbvjfwBDDcvE/ELBsZQCKoAAjAMK2CB0AAHicY2FgYGDBhbf+/49TjprYF4gvYhFXJt4MAGihBL0AAAAAAADmAPYBWAFwAeACYgKsAtoDGgN6A9IGCgZQBo4HXge6B+gIJAiWCMQJsgnECfoKFApiCpIKygsCC0QLaAuqDBYMOgxqDM4OaBKqEywT6hTOFTwV/haqFtwXHhguGRIZhhmeAAB4nGNgZGBgMGJ2ZTBkAAEmIOYCQgaG/2A+AwAZAgHCAHicZY9NTsMwEIVf+gekEqqoYIfkBWIBKP0Rq25YVGr3XXTfpk6bKokjx63UA3AejsAJOALcgDvwSCebNpbH37x5Y08A3OAHHo7fLfeRPVwyO3INF7gXrlN/EG6QX4SbaONVuEX9TdjHM6bCbXRheYPXuGL2hHdhDx18CNdwjU/hOvUv4Qb5W7iJO/wKt9Dx6sI+5l5XuI1HL/bHVi+cXqnlQcWhySKTOb+CmV7vkoWt0uqca1vEJlODoF9JU51pW91T7NdD5yIVWZOqCas6SYzKrdnq0AUb5/JRrxeJHoQm5Vhj/rbGAo5xBYUlDowxQhhkiMro6DtVZvSvsUPCXntWPc3ndFsU1P9zhQEC9M9cU7qy0nk6T4E9XxtSdXQrbsuelDSRXs1JErJCXta2VELqATZlV44RelzRiT8oZ0j/AAlabsgAAAB4nH2S63LTMBCFfZraLm1Db2lLbxRouRMg4RX4x0N4FFux1jhyk2gZx0/PCveHExg0Hsv77e6Zo7WCraBdu8G/1xhb6GEbISLE2MET7GIP++jjKQ5wiCMc4wQDnOIM53iGC1ziCte4wXPc4gVe4hXucI/XeIO3eIf3+ICP+IQhPuMLvmKEMb4F0dLoxlB/zsrWpOyUJdrOlNNxIaGr+MDxhFTVGO3zjiMfOQpToxYuzFRecejUpNShM3qmo1yUJhT/aKsfu4clcWq0zUNRTXm/MezIaKGO+yp19IvcKplSWfZUlvVEM2ob41ZuFJeaxBWfNSZNE6+dL428Hk0OfG2mbMMeDH2U6x3/LVVVWJN21JPwerrkOmmlk4ypIHEijyg5vvlfcnTczU7Is/MuKrgmb0pOdNLlc3qQea2zn+1wBl1WVpxV0nzxl4uZFBfk+LSbWZHfHpQ9XKuXsqMuSGnFds36Qqbu+KqLrLKZeJ9pypk2bOV/LsaG/0b+hd0wVHJVs6eXXWrYa865PfDetFrMlEsorexac0G2Iac2JGWYNPdXJP7eklBIQ/4O2XEQ/AZFHxhQ') format('woff'),url(//at.alicdn.com/t/font_934335_kaqqxgj7xqf.ttf?t=1544334973484) format('truetype'),url(//at.alicdn.com/t/font_934335_kaqqxgj7xqf.svg?t=1544334973484#iconfont) format('svg')}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-huiche:before{content:"\e651"}.icon-shezhi:before{content:"\e624"}.icon-quanxianfuzhi:before{content:"\e62c"}.icon-date:before{content:"\e91c"}.icon-jiantou:before{content:"\e616"}.icon-tubiaozhexiantu:before{content:"\e79a"}.icon-biaoti:before{content:"\e62b"}.icon-chart:before{content:"\e61d"}.icon-dagou:before{content:"\e617"}.icon-table:before{content:"\e61e"}.icon-theme:before{content:"\e66f"}.icon-guanbi:before{content:"\e641"}.icon-Kxiantu:before{content:"\e679"}.icon-tubiao-liucheng:before{content:"\e68e"}.icon-jiacu:before{content:"\e6fe"}.icon-zhutiheliutu:before{content:"\e62f"}.icon-activity_fill:before{content:"\e6de"}.icon-add:before{content:"\e6df"}.icon-gou:before{content:"\e695"}.icon-tubiao:before{content:"\e60f"}.icon-guanbi1:before{content:"\e618"}.icon-leidatu:before{content:"\e615"}.icon-zhcc_xiangshangjiantou:before{content:"\e688"}.icon-biaodanzujian-biaoge:before{content:"\eb94"}.icon-jianshao:before{content:"\e644"}.icon-xieti:before{content:"\e6ef"}.icon-jia:before{content:"\e61b"}.icon-fsux_tubiao_duijizhuzhuangtu:before{content:"\e600"}.icon-fsux_tubiao_duijizhuzhuangtu1:before{content:"\e601"}.icon-fsux_tubiao_bingtu:before{content:"\e602"}.icon-fsux_tubiao_juxingshutu:before{content:"\e603"}.icon-fsux_tubiao_qipaotu:before{content:"\e604"}.icon-fsux_tubiao_kxiantu:before{content:"\e605"}.icon-fsux_tubiao_loudoutu:before{content:"\e606"}.icon-fsux_tubiao_duijimianjitu:before{content:"\e607"}.icon-fsux_tubiao_yibiaopan:before{content:"\e608"}.icon-fsux_tubiao_ditu:before{content:"\e609"}.icon-fsux_tubiao_ciyun:before{content:"\e60a"}.icon-fsux_tubiao_relitu:before{content:"\e60b"}.icon-fsux_tubiao_nandingmeiguitu:before{content:"\e60c"}.icon-fsux_tubiao_guanxitu:before{content:"\e60d"}.icon-fsux_tubiao_zidantu:before{content:"\e60e"}.icon-fsux_tubiao_luoxuantu:before{content:"\e610"}.icon-fsux_tubiao_huiguiquxiantu:before{content:"\e611"}.icon-format_icon:before{content:"\e612"}.icon-fsux_tubiao_jinzitatu:before{content:"\e613"}.icon-fsux_tubiao_shuiqiutu:before{content:"\e614"}.icon-Dtubiao:before{content:"\e672"}.icon-shuzi:before{content:"\e7f8"}.icon-jian2:before{content:"\e64e"}.sp-container{position:absolute;top:0;left:0;display:inline-block;z-index:9999994;overflow:hidden}.sp-container.sp-flat{position:relative}.sp-container,.sp-container *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.sp-top{position:relative;width:100%;display:inline-block}.sp-top-inner{position:absolute;top:0;left:0;bottom:0;right:0}.sp-color{position:absolute;top:0;left:0;bottom:0;right:20%}.sp-hue{position:absolute;top:0;right:0;bottom:0;left:84%;height:100%}.sp-clear-enabled .sp-hue{top:33px;height:77.5%}.sp-fill{padding-top:80%}.sp-sat,.sp-val{position:absolute;top:0;left:0;right:0;bottom:0}.sp-alpha-enabled .sp-top{margin-bottom:18px}.sp-alpha-enabled .sp-alpha{display:block}.sp-alpha-handle{position:absolute;top:-4px;bottom:-4px;width:6px;left:50%;cursor:pointer;border:1px solid #000;background:#fff;opacity:.8}.sp-alpha{display:none;position:absolute;bottom:-14px;right:0;left:0;height:8px}.sp-alpha-inner{border:solid 1px #333}.sp-clear{display:none}.sp-clear.sp-clear-display{background-position:center}.sp-clear-enabled .sp-clear{display:block;position:absolute;top:0;right:0;bottom:0;left:84%;height:28px}.sp-alpha,.sp-alpha-handle,.sp-clear,.sp-container,.sp-container button,.sp-container.sp-dragging .sp-input,.sp-dragger,.sp-preview,.sp-replacer,.sp-slider{-webkit-user-select:none;-moz-user-select:-moz-none;-o-user-select:none;user-select:none}.sp-container.sp-input-disabled .sp-input-container{display:none}.sp-container.sp-buttons-disabled .sp-button-container{display:none}.sp-container.sp-palette-buttons-disabled .sp-palette-button-container{display:none}.sp-palette-only .sp-picker-container{display:none}.sp-palette-disabled .sp-palette-container{display:none}.sp-initial-disabled .sp-initial{display:none}.sp-sat{background-image:-webkit-gradient(linear,0 0,100% 0,from(#fff),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-moz-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-o-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-ms-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:linear-gradient(to right,#fff,rgba(204,154,129,0))}.sp-val{background-image:-webkit-gradient(linear,0 100%,0 0,from(#000),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-moz-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-o-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-ms-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:linear-gradient(to top,#000,rgba(204,154,129,0))}.sp-hue{background:-moz-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-ms-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-o-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-webkit-gradient(linear,left top,left bottom,from(red),color-stop(.17,#ff0),color-stop(.33,#0f0),color-stop(.5,#0ff),color-stop(.67,#00f),color-stop(.83,#f0f),to(red));background:-webkit-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:linear-gradient(to bottom,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.sp-1{height:17%}.sp-2{height:16%}.sp-3{height:17%}.sp-4{height:17%}.sp-5{height:16%}.sp-6{height:17%}.sp-hidden{display:none!important}.sp-cf:after,.sp-cf:before{content:"";display:table}.sp-cf:after{clear:both}@media(max-device-width:480px){.sp-color{right:40%}.sp-hue{left:63%}.sp-fill{padding-top:60%}}.sp-dragger{border-radius:5px;height:5px;width:5px;border:1px solid #fff;background:#000;cursor:pointer;position:absolute;top:0;left:0}.sp-slider{position:absolute;top:0;cursor:pointer;height:3px;left:-1px;right:-1px;border:1px solid #000;background:#fff;opacity:.8}.sp-container{border-radius:0;background-color:#ececec;border:solid 1px #f0c49b;padding:0}.sp-clear,.sp-color,.sp-container,.sp-container button,.sp-container input,.sp-hue{font:normal 12px "Lucida Grande","Lucida Sans Unicode","Lucida Sans",Geneva,Verdana,sans-serif;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.sp-top{margin-bottom:3px}.sp-clear,.sp-color,.sp-hue{border:solid 1px #666}.sp-input-container{float:right;width:100px;margin-bottom:4px}.sp-initial-disabled .sp-input-container{width:100%}.sp-input{font-size:12px!important;border:1px inset;padding:4px 5px;margin:0;width:100%;background:0 0;border-radius:3px;color:#222}.sp-input:focus{border:1px solid orange}.sp-input.sp-validation-error{border:1px solid red;background:#fdd}.sp-palette-container,.sp-picker-container{float:left;position:relative;padding:10px;padding-bottom:300px;margin-bottom:-290px}.sp-picker-container{width:172px;border-left:solid 1px #fff}.sp-palette-container{border-right:solid 1px #ccc}.sp-palette-only .sp-palette-container{border:0}.sp-palette .sp-thumb-el{display:block;position:relative;float:left;width:24px;height:15px;margin:3px;cursor:pointer;border:solid 2px transparent}.sp-palette .sp-thumb-el.sp-thumb-active,.sp-palette .sp-thumb-el:hover{border-color:orange}.sp-thumb-el{position:relative}.sp-initial{float:left;border:solid 1px #333}.sp-initial span{width:30px;height:25px;border:0;display:block;float:left;margin:0}.sp-initial .sp-clear-display{background-position:center}.sp-button-container,.sp-palette-button-container{float:right}.sp-replacer{margin:0;overflow:hidden;cursor:pointer;padding:4px;display:inline-block;border:solid 1px #91765d;background:#eee;color:#333;vertical-align:middle}.sp-replacer.sp-active,.sp-replacer:hover{border-color:#f0c49b;color:#111}.sp-replacer.sp-disabled{cursor:default;border-color:silver;color:silver}.sp-dd{padding:2px 0;height:16px;line-height:16px;float:left;font-size:10px}.sp-preview{position:relative;width:25px;height:20px;border:solid 1px #222;margin-right:5px;float:left;z-index:0}.sp-palette{max-width:220px}.sp-palette .sp-thumb-el{width:16px;height:16px;border-radius:16px;margin:2px 1px;border:solid 1px #d0d0d0}.sp-container{padding-bottom:0}.sp-container button{background-color:#eee;background-image:-webkit-linear-gradient(top,#eee,#ccc);background-image:-moz-linear-gradient(top,#eee,#ccc);background-image:-ms-linear-gradient(top,#eee,#ccc);background-image:-o-linear-gradient(top,#eee,#ccc);background-image:linear-gradient(to bottom,#eee,#ccc);border:1px solid #ccc;border-bottom:1px solid #bbb;border-radius:3px;color:#333;font-size:14px;line-height:1;padding:5px 4px;text-align:center;text-shadow:0 1px 0 #eee;vertical-align:middle}.sp-container button:hover{background-color:#ddd;background-image:-webkit-linear-gradient(top,#ddd,#bbb);background-image:-moz-linear-gradient(top,#ddd,#bbb);background-image:-ms-linear-gradient(top,#ddd,#bbb);background-image:-o-linear-gradient(top,#ddd,#bbb);background-image:linear-gradient(to bottom,#ddd,#bbb);border:1px solid #bbb;border-bottom:1px solid #999;cursor:pointer;text-shadow:0 1px 0 #ddd}.sp-container button:active{border:1px solid #aaa;border-bottom:1px solid #888;-webkit-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-moz-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-ms-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-o-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee}.sp-cancel{font-size:11px;color:#d93f3f!important;margin:0;padding:2px;margin-right:5px;vertical-align:middle;text-decoration:none}.sp-cancel:hover{color:#d93f3f!important;text-decoration:underline}.sp-palette span.sp-thumb-active,.sp-palette span:hover{border-color:#000}.sp-alpha,.sp-preview,.sp-thumb-el{position:relative;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.sp-alpha-inner,.sp-preview-inner,.sp-thumb-inner{display:block;position:absolute;top:0;left:0;bottom:0;right:0}.sp-palette .sp-thumb-inner{background-position:50% 50%;background-repeat:no-repeat;border-radius:16px}.sp-palette .sp-thumb-light.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIVJREFUeNpiYBhsgJFMffxAXABlN5JruT4Q3wfi/0DsT64h8UD8HmpIPCWG/KemIfOJCUB+Aoacx6EGBZyHBqI+WsDCwuQ9mhxeg2A210Ntfo8klk9sOMijaURm7yc1UP2RNCMbKE9ODK1HM6iegYLkfx8pligC9lCD7KmRof0ZhjQACDAAceovrtpVBRkAAAAASUVORK5CYII=)}.sp-palette .sp-thumb-dark.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAMdJREFUOE+tkgsNwzAMRMugEAahEAahEAZhEAqlEAZhEAohEAYh81X2dIm8fKpEspLGvudPOsUYpxE2BIJCroJmEW9qJ+MKaBFhEMNabSy9oIcIPwrB+afvAUFoK4H0tMaQ3XtlrggDhOVVMuT4E5MMG0FBbCEYzjYT7OxLEvIHQLY2zWwQ3D+9luyOQTfKDiFD3iUIfPk8VqrKjgAiSfGFPecrg6HN6m/iBcwiDAo7WiBeawa+Kwh7tZoSCGLMqwlSAzVDhoK+6vH4G0P5wdkAAAAASUVORK5CYII=)}.sp-clear-display{background-repeat:no-repeat;background-position:center;background-image:url(data:image/gif;base64,R0lGODlhFAAUAPcAAAAAAJmZmZ2dnZ6enqKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq/Hx8fLy8vT09PX19ff39/j4+Pn5+fr6+vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAUABQAAAihAP9FoPCvoMGDBy08+EdhQAIJCCMybCDAAYUEARBAlFiQQoMABQhKUJBxY0SPICEYHBnggEmDKAuoPMjS5cGYMxHW3IiT478JJA8M/CjTZ0GgLRekNGpwAsYABHIypcAgQMsITDtWJYBR6NSqMico9cqR6tKfY7GeBCuVwlipDNmefAtTrkSzB1RaIAoXodsABiZAEFB06gIBWC1mLVgBa0AAOw==)} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/js/plugin.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/js/plugin.js index 71478e784..7252d6144 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/js/plugin.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/js/plugin.js @@ -1 +1 @@ -!function(t,e){"object"==typeof module&&"object"==typeof module.exports?module.exports=t.document?e(t,!0):function(t){if(!t.document)throw new Error("jQuery requires a window with a document");return e(t)}:e(t)}("undefined"!=typeof window?window:this,function(_,t){function e(t,e){return e.toUpperCase()}var n=[],x=_.document,l=n.slice,g=n.concat,a=n.push,i=n.indexOf,r={},o=r.toString,d=r.hasOwnProperty,m={},s="2.2.4",C=function(t,e){return new C.fn.init(t,e)},u=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,c=/^-ms-/,h=/-([\da-z])/gi;function f(t){var e=!!t&&"length"in t&&t.length,n=C.type(t);return"function"!==n&&!C.isWindow(t)&&("array"===n||0===e||"number"==typeof e&&0<e&&e-1 in t)}C.fn=C.prototype={jquery:s,constructor:C,selector:"",length:0,toArray:function(){return l.call(this)},get:function(t){return null!=t?t<0?this[t+this.length]:this[t]:l.call(this)},pushStack:function(t){t=C.merge(this.constructor(),t);return t.prevObject=this,t.context=this.context,t},each:function(t){return C.each(this,t)},map:function(n){return this.pushStack(C.map(this,function(t,e){return n.call(t,e,t)}))},slice:function(){return this.pushStack(l.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(t){var e=this.length,t=+t+(t<0?e:0);return this.pushStack(0<=t&&t<e?[this[t]]:[])},end:function(){return this.prevObject||this.constructor()},push:a,sort:n.sort,splice:n.splice},C.extend=C.fn.extend=function(){var t,e,n,r,i,o=arguments[0]||{},s=1,a=arguments.length,u=!1;for("boolean"==typeof o&&(u=o,o=arguments[s]||{},s++),"object"==typeof o||C.isFunction(o)||(o={}),s===a&&(o=this,s--);s<a;s++)if(null!=(t=arguments[s]))for(e in t)i=o[e],n=t[e],o!==n&&(u&&n&&(C.isPlainObject(n)||(r=C.isArray(n)))?(i=r?(r=!1,i&&C.isArray(i)?i:[]):i&&C.isPlainObject(i)?i:{},o[e]=C.extend(u,i,n)):void 0!==n&&(o[e]=n));return o},C.extend({expando:"jQuery"+(s+Math.random()).replace(/\D/g,""),isReady:!0,error:function(t){throw new Error(t)},noop:function(){},isFunction:function(t){return"function"===C.type(t)},isArray:Array.isArray,isWindow:function(t){return null!=t&&t===t.window},isNumeric:function(t){var e=t&&t.toString();return!C.isArray(t)&&0<=e-parseFloat(e)+1},isPlainObject:function(t){if("object"!==C.type(t)||t.nodeType||C.isWindow(t))return!1;if(t.constructor&&!d.call(t,"constructor")&&!d.call(t.constructor.prototype||{},"isPrototypeOf"))return!1;for(var e in t);return void 0===e||d.call(t,e)},isEmptyObject:function(t){for(var e in t)return!1;return!0},type:function(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?r[o.call(t)]||"object":typeof t},globalEval:function(t){var e,n=eval;(t=C.trim(t))&&(1===t.indexOf("use strict")?((e=x.createElement("script")).text=t,x.head.appendChild(e).parentNode.removeChild(e)):n(t))},camelCase:function(t){return t.replace(c,"ms-").replace(h,e)},nodeName:function(t,e){return t.nodeName&&t.nodeName.toLowerCase()===e.toLowerCase()},each:function(t,e){var n,r=0;if(f(t))for(n=t.length;r<n&&!1!==e.call(t[r],r,t[r]);r++);else for(r in t)if(!1===e.call(t[r],r,t[r]))break;return t},trim:function(t){return null==t?"":(t+"").replace(u,"")},makeArray:function(t,e){e=e||[];return null!=t&&(f(Object(t))?C.merge(e,"string"==typeof t?[t]:t):a.call(e,t)),e},inArray:function(t,e,n){return null==e?-1:i.call(e,t,n)},merge:function(t,e){for(var n=+e.length,r=0,i=t.length;r<n;r++)t[i++]=e[r];return t.length=i,t},grep:function(t,e,n){for(var r=[],i=0,o=t.length,s=!n;i<o;i++)!e(t[i],i)!=s&&r.push(t[i]);return r},map:function(t,e,n){var r,i,o=0,s=[];if(f(t))for(r=t.length;o<r;o++)null!=(i=e(t[o],o,n))&&s.push(i);else for(o in t)i=e(t[o],o,n),null!=i&&s.push(i);return g.apply([],s)},guid:1,proxy:function(t,e){var n,r;return"string"==typeof e&&(r=t[e],e=t,t=r),C.isFunction(t)?(n=l.call(arguments,2),(r=function(){return t.apply(e||this,n.concat(l.call(arguments)))}).guid=t.guid=t.guid||C.guid++,r):void 0},now:Date.now,support:m}),"function"==typeof Symbol&&(C.fn[Symbol.iterator]=n[Symbol.iterator]),C.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(t,e){r["[object "+e+"]"]=e.toLowerCase()});var p=function(n){function h(t,e,n){var r="0x"+e-65536;return r!=r||n?e:r<0?String.fromCharCode(65536+r):String.fromCharCode(r>>10|55296,1023&r|56320)}function e(){x()}var t,d,w,o,r,g,f,m,_,u,c,x,C,i,k,v,s,a,y,S="sizzle"+ +new Date,b=n.document,O=0,l=0,p=it(),E=it(),T=it(),A=function(t,e){return t===e&&(c=!0),0},I={}.hasOwnProperty,j=[],P=j.pop,D=j.push,N=j.push,R=j.slice,M=function(t,e){for(var n=0,r=t.length;n<r;n++)if(t[n]===e)return n;return-1},W="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",H="\\["+L+"*("+F+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+F+"))|)"+L+"*\\]",B=":("+F+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+H+")*)|.*)\\)|)",q=new RegExp(L+"+","g"),z=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),U=new RegExp("^"+L+"*,"+L+"*"),G=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),V=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),$=new RegExp(B),X=new RegExp("^"+F+"$"),Y={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),TAG:new RegExp("^("+F+"|[*])"),ATTR:new RegExp("^"+H),PSEUDO:new RegExp("^"+B),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+W+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},K=/^(?:input|select|textarea|button)$/i,Q=/^h\d$/i,J=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,tt=/[+~]/,et=/'|\\/g,nt=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig");try{N.apply(j=R.call(b.childNodes),b.childNodes),j[b.childNodes.length].nodeType}catch(t){N={apply:j.length?function(t,e){D.apply(t,R.call(e))}:function(t,e){for(var n=t.length,r=0;t[n++]=e[r++];);t.length=n-1}}}function rt(t,e,n,r){var i,o,s,a,u,c,l,h,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:b)!==C&&x(e),e=e||C,k)){if(11!==p&&(c=Z.exec(t)))if(i=c[1]){if(9===p){if(!(s=e.getElementById(i)))return n;if(s.id===i)return n.push(s),n}else if(f&&(s=f.getElementById(i))&&y(e,s)&&s.id===i)return n.push(s),n}else{if(c[2])return N.apply(n,e.getElementsByTagName(t)),n;if((i=c[3])&&d.getElementsByClassName&&e.getElementsByClassName)return N.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!T[t+" "]&&(!v||!v.test(t))){if(1!==p)f=e,h=t;else if("object"!==e.nodeName.toLowerCase()){for((a=e.getAttribute("id"))?a=a.replace(et,"\\$&"):e.setAttribute("id",a=S),o=(l=g(t)).length,u=X.test(a)?"#"+a:"[id='"+a+"']";o--;)l[o]=u+" "+ft(l[o]);h=l.join(","),f=tt.test(t)&<(e.parentNode)||e}if(h)try{return N.apply(n,f.querySelectorAll(h)),n}catch(t){}finally{a===S&&e.removeAttribute("id")}}}return m(t.replace(z,"$1"),e,n,r)}function it(){var n=[];function r(t,e){return n.push(t+" ")>w.cacheLength&&delete r[n.shift()],r[t+" "]=e}return r}function ot(t){return t[S]=!0,t}function st(t){var e=C.createElement("div");try{return!!t(e)}catch(t){return!1}finally{e.parentNode&&e.parentNode.removeChild(e),e=null}}function at(t,e){for(var n=t.split("|"),r=n.length;r--;)w.attrHandle[n[r]]=e}function ut(t,e){var n=e&&t,r=n&&1===t.nodeType&&1===e.nodeType&&(~e.sourceIndex||1<<31)-(~t.sourceIndex||1<<31);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===e)return-1;return t?1:-1}function ct(s){return ot(function(o){return o=+o,ot(function(t,e){for(var n,r=s([],t.length,o),i=r.length;i--;)t[n=r[i]]&&(t[n]=!(e[n]=t[n]))})})}function lt(t){return t&&void 0!==t.getElementsByTagName&&t}for(t in d=rt.support={},r=rt.isXML=function(t){t=t&&(t.ownerDocument||t).documentElement;return!!t&&"HTML"!==t.nodeName},x=rt.setDocument=function(t){var t=t?t.ownerDocument||t:b;return t!==C&&9===t.nodeType&&t.documentElement&&(i=(C=t).documentElement,k=!r(C),(t=C.defaultView)&&t.top!==t&&(t.addEventListener?t.addEventListener("unload",e,!1):t.attachEvent&&t.attachEvent("onunload",e)),d.attributes=st(function(t){return t.className="i",!t.getAttribute("className")}),d.getElementsByTagName=st(function(t){return t.appendChild(C.createComment("")),!t.getElementsByTagName("*").length}),d.getElementsByClassName=J.test(C.getElementsByClassName),d.getById=st(function(t){return i.appendChild(t).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(w.find.ID=function(t,e){if(void 0!==e.getElementById&&k){t=e.getElementById(t);return t?[t]:[]}},w.filter.ID=function(t){var e=t.replace(nt,h);return function(t){return t.getAttribute("id")===e}}):(delete w.find.ID,w.filter.ID=function(t){var e=t.replace(nt,h);return function(t){t=void 0!==t.getAttributeNode&&t.getAttributeNode("id");return t&&t.value===e}}),w.find.TAG=d.getElementsByTagName?function(t,e){return void 0!==e.getElementsByTagName?e.getElementsByTagName(t):d.qsa?e.querySelectorAll(t):void 0}:function(t,e){var n,r=[],i=0,o=e.getElementsByTagName(t);if("*"!==t)return o;for(;n=o[i++];)1===n.nodeType&&r.push(n);return r},w.find.CLASS=d.getElementsByClassName&&function(t,e){return void 0!==e.getElementsByClassName&&k?e.getElementsByClassName(t):void 0},s=[],v=[],(d.qsa=J.test(C.querySelectorAll))&&(st(function(t){i.appendChild(t).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",t.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+L+"*(?:''|\"\")"),t.querySelectorAll("[selected]").length||v.push("\\["+L+"*(?:value|"+W+")"),t.querySelectorAll("[id~="+S+"-]").length||v.push("~="),t.querySelectorAll(":checked").length||v.push(":checked"),t.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]")}),st(function(t){var e=C.createElement("input");e.setAttribute("type","hidden"),t.appendChild(e).setAttribute("name","D"),t.querySelectorAll("[name=d]").length&&v.push("name"+L+"*[*^$|!~]?="),t.querySelectorAll(":enabled").length||v.push(":enabled",":disabled"),t.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=J.test(a=i.matches||i.webkitMatchesSelector||i.mozMatchesSelector||i.oMatchesSelector||i.msMatchesSelector))&&st(function(t){d.disconnectedMatch=a.call(t,"div"),a.call(t,"[s!='']:x"),s.push("!=",B)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=J.test(i.compareDocumentPosition),y=t||J.test(i.contains)?function(t,e){var n=9===t.nodeType?t.documentElement:t,e=e&&e.parentNode;return t===e||!(!e||1!==e.nodeType||!(n.contains?n.contains(e):t.compareDocumentPosition&&16&t.compareDocumentPosition(e)))}:function(t,e){if(e)for(;e=e.parentNode;)if(e===t)return!0;return!1},A=t?function(t,e){if(t===e)return c=!0,0;var n=!t.compareDocumentPosition-!e.compareDocumentPosition;return n||(1&(n=(t.ownerDocument||t)===(e.ownerDocument||e)?t.compareDocumentPosition(e):1)||!d.sortDetached&&e.compareDocumentPosition(t)===n?t===C||t.ownerDocument===b&&y(b,t)?-1:e===C||e.ownerDocument===b&&y(b,e)?1:u?M(u,t)-M(u,e):0:4&n?-1:1)}:function(t,e){if(t===e)return c=!0,0;var n,r=0,i=t.parentNode,o=e.parentNode,s=[t],a=[e];if(!i||!o)return t===C?-1:e===C?1:i?-1:o?1:u?M(u,t)-M(u,e):0;if(i===o)return ut(t,e);for(n=t;n=n.parentNode;)s.unshift(n);for(n=e;n=n.parentNode;)a.unshift(n);for(;s[r]===a[r];)r++;return r?ut(s[r],a[r]):s[r]===b?-1:a[r]===b?1:0}),C},rt.matches=function(t,e){return rt(t,null,null,e)},rt.matchesSelector=function(t,e){if((t.ownerDocument||t)!==C&&x(t),e=e.replace(V,"='$1']"),d.matchesSelector&&k&&!T[e+" "]&&(!s||!s.test(e))&&(!v||!v.test(e)))try{var n=a.call(t,e);if(n||d.disconnectedMatch||t.document&&11!==t.document.nodeType)return n}catch(t){}return 0<rt(e,C,null,[t]).length},rt.contains=function(t,e){return(t.ownerDocument||t)!==C&&x(t),y(t,e)},rt.attr=function(t,e){(t.ownerDocument||t)!==C&&x(t);var n=w.attrHandle[e.toLowerCase()],n=n&&I.call(w.attrHandle,e.toLowerCase())?n(t,e,!k):void 0;return void 0!==n?n:d.attributes||!k?t.getAttribute(e):(n=t.getAttributeNode(e))&&n.specified?n.value:null},rt.error=function(t){throw new Error("Syntax error, unrecognized expression: "+t)},rt.uniqueSort=function(t){var e,n=[],r=0,i=0;if(c=!d.detectDuplicates,u=!d.sortStable&&t.slice(0),t.sort(A),c){for(;e=t[i++];)e===t[i]&&(r=n.push(i));for(;r--;)t.splice(n[r],1)}return u=null,t},o=rt.getText=function(t){var e,n="",r=0,i=t.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof t.textContent)return t.textContent;for(t=t.firstChild;t;t=t.nextSibling)n+=o(t)}else if(3===i||4===i)return t.nodeValue}else for(;e=t[r++];)n+=o(e);return n},(w=rt.selectors={cacheLength:50,createPseudo:ot,match:Y,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(t){return t[1]=t[1].replace(nt,h),t[3]=(t[3]||t[4]||t[5]||"").replace(nt,h),"~="===t[2]&&(t[3]=" "+t[3]+" "),t.slice(0,4)},CHILD:function(t){return t[1]=t[1].toLowerCase(),"nth"===t[1].slice(0,3)?(t[3]||rt.error(t[0]),t[4]=+(t[4]?t[5]+(t[6]||1):2*("even"===t[3]||"odd"===t[3])),t[5]=+(t[7]+t[8]||"odd"===t[3])):t[3]&&rt.error(t[0]),t},PSEUDO:function(t){var e,n=!t[6]&&t[2];return Y.CHILD.test(t[0])?null:(t[3]?t[2]=t[4]||t[5]||"":n&&$.test(n)&&(e=g(n,!0))&&(e=n.indexOf(")",n.length-e)-n.length)&&(t[0]=t[0].slice(0,e),t[2]=n.slice(0,e)),t.slice(0,3))}},filter:{TAG:function(t){var e=t.replace(nt,h).toLowerCase();return"*"===t?function(){return!0}:function(t){return t.nodeName&&t.nodeName.toLowerCase()===e}},CLASS:function(t){var e=p[t+" "];return e||(e=new RegExp("(^|"+L+")"+t+"("+L+"|$)"))&&p(t,function(t){return e.test("string"==typeof t.className&&t.className||void 0!==t.getAttribute&&t.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(t){t=rt.attr(t,e);return null==t?"!="===n:!n||(t+="","="===n?t===r:"!="===n?t!==r:"^="===n?r&&0===t.indexOf(r):"*="===n?r&&-1<t.indexOf(r):"$="===n?r&&t.slice(-r.length)===r:"~="===n?-1<(" "+t.replace(q," ")+" ").indexOf(r):"|="===n&&(t===r||t.slice(0,r.length+1)===r+"-"))}},CHILD:function(d,t,e,g,m){var v="nth"!==d.slice(0,3),y="last"!==d.slice(-4),b="of-type"===t;return 1===g&&0===m?function(t){return!!t.parentNode}:function(t,e,n){var r,i,o,s,a,u,c=v!=y?"nextSibling":"previousSibling",l=t.parentNode,h=b&&t.nodeName.toLowerCase(),f=!n&&!b,p=!1;if(l){if(v){for(;c;){for(s=t;s=s[c];)if(b?s.nodeName.toLowerCase()===h:1===s.nodeType)return!1;u=c="only"===d&&!u&&"nextSibling"}return!0}if(u=[y?l.firstChild:l.lastChild],y&&f){for(p=(a=(r=(i=(o=(s=l)[S]||(s[S]={}))[s.uniqueID]||(o[s.uniqueID]={}))[d]||[])[0]===O&&r[1])&&r[2],s=a&&l.childNodes[a];s=++a&&s&&s[c]||(p=a=0)||u.pop();)if(1===s.nodeType&&++p&&s===t){i[d]=[O,a,p];break}}else if(!1===(p=f?a=(r=(i=(o=(s=t)[S]||(s[S]={}))[s.uniqueID]||(o[s.uniqueID]={}))[d]||[])[0]===O&&r[1]:p))for(;(s=++a&&s&&s[c]||(p=a=0)||u.pop())&&((b?s.nodeName.toLowerCase()!==h:1!==s.nodeType)||!++p||(f&&((i=(o=s[S]||(s[S]={}))[s.uniqueID]||(o[s.uniqueID]={}))[d]=[O,p]),s!==t)););return(p-=m)===g||p%g==0&&0<=p/g}}},PSEUDO:function(t,o){var e,s=w.pseudos[t]||w.setFilters[t.toLowerCase()]||rt.error("unsupported pseudo: "+t);return s[S]?s(o):1<s.length?(e=[t,t,"",o],w.setFilters.hasOwnProperty(t.toLowerCase())?ot(function(t,e){for(var n,r=s(t,o),i=r.length;i--;)t[n=M(t,r[i])]=!(e[n]=r[i])}):function(t){return s(t,0,e)}):s}},pseudos:{not:ot(function(t){var r=[],i=[],a=f(t.replace(z,"$1"));return a[S]?ot(function(t,e,n,r){for(var i,o=a(t,null,r,[]),s=t.length;s--;)(i=o[s])&&(t[s]=!(e[s]=i))}):function(t,e,n){return r[0]=t,a(r,null,n,i),r[0]=null,!i.pop()}}),has:ot(function(e){return function(t){return 0<rt(e,t).length}}),contains:ot(function(e){return e=e.replace(nt,h),function(t){return-1<(t.textContent||t.innerText||o(t)).indexOf(e)}}),lang:ot(function(n){return X.test(n||"")||rt.error("unsupported lang: "+n),n=n.replace(nt,h).toLowerCase(),function(t){var e;do{if(e=k?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(e=e.toLowerCase())===n||0===e.indexOf(n+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var e=n.location&&n.location.hash;return e&&e.slice(1)===t.id},root:function(t){return t===i},focus:function(t){return t===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(t.type||t.href||~t.tabIndex)},enabled:function(t){return!1===t.disabled},disabled:function(t){return!0===t.disabled},checked:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&!!t.checked||"option"===e&&!!t.selected},selected:function(t){return t.parentNode&&t.parentNode.selectedIndex,!0===t.selected},empty:function(t){for(t=t.firstChild;t;t=t.nextSibling)if(t.nodeType<6)return!1;return!0},parent:function(t){return!w.pseudos.empty(t)},header:function(t){return Q.test(t.nodeName)},input:function(t){return K.test(t.nodeName)},button:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&"button"===t.type||"button"===e},text:function(t){return"input"===t.nodeName.toLowerCase()&&"text"===t.type&&(null==(t=t.getAttribute("type"))||"text"===t.toLowerCase())},first:ct(function(){return[0]}),last:ct(function(t,e){return[e-1]}),eq:ct(function(t,e,n){return[n<0?n+e:n]}),even:ct(function(t,e){for(var n=0;n<e;n+=2)t.push(n);return t}),odd:ct(function(t,e){for(var n=1;n<e;n+=2)t.push(n);return t}),lt:ct(function(t,e,n){for(var r=n<0?n+e:n;0<=--r;)t.push(r);return t}),gt:ct(function(t,e,n){for(var r=n<0?n+e:n;++r<e;)t.push(r);return t})}}).pseudos.nth=w.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})w.pseudos[t]=function(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}(t);for(t in{submit:!0,reset:!0})w.pseudos[t]=function(n){return function(t){var e=t.nodeName.toLowerCase();return("input"===e||"button"===e)&&t.type===n}}(t);function ht(){}function ft(t){for(var e=0,n=t.length,r="";e<n;e++)r+=t[e].value;return r}function pt(s,t,e){var a=t.dir,u=e&&"parentNode"===a,c=l++;return t.first?function(t,e,n){for(;t=t[a];)if(1===t.nodeType||u)return s(t,e,n)}:function(t,e,n){var r,i,o=[O,c];if(n){for(;t=t[a];)if((1===t.nodeType||u)&&s(t,e,n))return!0}else for(;t=t[a];)if(1===t.nodeType||u){if((i=(r=(i=t[S]||(t[S]={}))[t.uniqueID]||(i[t.uniqueID]={}))[a])&&i[0]===O&&i[1]===c)return o[2]=i[2];if((r[a]=o)[2]=s(t,e,n))return!0}}}function dt(i){return 1<i.length?function(t,e,n){for(var r=i.length;r--;)if(!i[r](t,e,n))return!1;return!0}:i[0]}function gt(t,e,n,r,i){for(var o,s=[],a=0,u=t.length,c=null!=e;a<u;a++)(o=t[a])&&(n&&!n(o,r,i)||(s.push(o),c&&e.push(a)));return s}function mt(p,d,g,m,v,t){return m&&!m[S]&&(m=mt(m)),v&&!v[S]&&(v=mt(v,t)),ot(function(t,e,n,r){var i,o,s,a=[],u=[],c=e.length,l=t||function(t,e,n){for(var r=0,i=e.length;r<i;r++)rt(t,e[r],n);return n}(d||"*",n.nodeType?[n]:n,[]),h=!p||!t&&d?l:gt(l,a,p,n,r),f=g?v||(t?p:c||m)?[]:e:h;if(g&&g(h,f,n,r),m)for(i=gt(f,u),m(i,[],n,r),o=i.length;o--;)(s=i[o])&&(f[u[o]]=!(h[u[o]]=s));if(t){if(v||p){if(v){for(i=[],o=f.length;o--;)(s=f[o])&&i.push(h[o]=s);v(null,f=[],i,r)}for(o=f.length;o--;)(s=f[o])&&-1<(i=v?M(t,s):a[o])&&(t[i]=!(e[i]=s))}}else f=gt(f===e?f.splice(c,f.length):f),v?v(null,e,f,r):N.apply(e,f)})}function vt(m,v){function t(t,e,n,r,i){var o,s,a,u=0,c="0",l=t&&[],h=[],f=_,p=t||b&&w.find.TAG("*",i),d=O+=null==f?1:Math.random()||.1,g=p.length;for(i&&(_=e===C||e||i);c!==g&&null!=(o=p[c]);c++){if(b&&o){for(s=0,e||o.ownerDocument===C||(x(o),n=!k);a=m[s++];)if(a(o,e||C,n)){r.push(o);break}i&&(O=d)}y&&((o=!a&&o)&&u--,t&&l.push(o))}if(u+=c,y&&c!==u){for(s=0;a=v[s++];)a(l,h,e,n);if(t){if(0<u)for(;c--;)l[c]||h[c]||(h[c]=P.call(r));h=gt(h)}N.apply(r,h),i&&!t&&0<h.length&&1<u+v.length&&rt.uniqueSort(r)}return i&&(O=d,_=f),l}var y=0<v.length,b=0<m.length;return y?ot(t):t}return ht.prototype=w.filters=w.pseudos,w.setFilters=new ht,g=rt.tokenize=function(t,e){var n,r,i,o,s,a,u,c=E[t+" "];if(c)return e?0:c.slice(0);for(s=t,a=[],u=w.preFilter;s;){for(o in n&&!(r=U.exec(s))||(r&&(s=s.slice(r[0].length)||s),a.push(i=[])),n=!1,(r=G.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),s=s.slice(n.length)),w.filter)!(r=Y[o].exec(s))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),s=s.slice(n.length));if(!n)break}return e?s.length:s?rt.error(t):E(t,a).slice(0)},f=rt.compile=function(t,e){var n,r=[],i=[],o=T[t+" "];if(!o){for(n=(e=e||g(t)).length;n--;)((o=function t(e){for(var r,n,i,o=e.length,s=w.relative[e[0].type],a=s||w.relative[" "],u=s?1:0,c=pt(function(t){return t===r},a,!0),l=pt(function(t){return-1<M(r,t)},a,!0),h=[function(t,e,n){return n=!s&&(n||e!==_)||((r=e).nodeType?c:l)(t,e,n),r=null,n}];u<o;u++)if(n=w.relative[e[u].type])h=[pt(dt(h),n)];else{if((n=w.filter[e[u].type].apply(null,e[u].matches))[S]){for(i=++u;i<o&&!w.relative[e[i].type];i++);return mt(1<u&&dt(h),1<u&&ft(e.slice(0,u-1).concat({value:" "===e[u-2].type?"*":""})).replace(z,"$1"),n,u<i&&t(e.slice(u,i)),i<o&&t(e=e.slice(i)),i<o&&ft(e))}h.push(n)}return dt(h)}(e[n]))[S]?r:i).push(o);(o=T(t,vt(i,r))).selector=t}return o},m=rt.select=function(t,e,n,r){var i,o,s,a,u,c="function"==typeof t&&t,l=!r&&g(t=c.selector||t);if(n=n||[],1===l.length){if(2<(o=l[0]=l[0].slice(0)).length&&"ID"===(s=o[0]).type&&d.getById&&9===e.nodeType&&k&&w.relative[o[1].type]){if(!(e=(w.find.ID(s.matches[0].replace(nt,h),e)||[])[0]))return n;c&&(e=e.parentNode),t=t.slice(o.shift().value.length)}for(i=Y.needsContext.test(t)?0:o.length;i--&&(s=o[i],!w.relative[a=s.type]);)if((u=w.find[a])&&(r=u(s.matches[0].replace(nt,h),tt.test(o[0].type)&<(e.parentNode)||e))){if(o.splice(i,1),!(t=r.length&&ft(o)))return N.apply(n,r),n;break}}return(c||f(t,l))(r,e,!k,n,!e||tt.test(t)&<(e.parentNode)||e),n},d.sortStable=S.split("").sort(A).join("")===S,d.detectDuplicates=!!c,x(),d.sortDetached=st(function(t){return 1&t.compareDocumentPosition(C.createElement("div"))}),st(function(t){return t.innerHTML="<a href='#'></a>","#"===t.firstChild.getAttribute("href")})||at("type|href|height|width",function(t,e,n){return n?void 0:t.getAttribute(e,"type"===e.toLowerCase()?1:2)}),d.attributes&&st(function(t){return t.innerHTML="<input/>",t.firstChild.setAttribute("value",""),""===t.firstChild.getAttribute("value")})||at("value",function(t,e,n){return n||"input"!==t.nodeName.toLowerCase()?void 0:t.defaultValue}),st(function(t){return null==t.getAttribute("disabled")})||at(W,function(t,e,n){return n?void 0:!0===t[e]?e.toLowerCase():(e=t.getAttributeNode(e))&&e.specified?e.value:null}),rt}(_);C.find=p,C.expr=p.selectors,C.expr[":"]=C.expr.pseudos,C.uniqueSort=C.unique=p.uniqueSort,C.text=p.getText,C.isXMLDoc=p.isXML,C.contains=p.contains;function v(t,e,n){for(var r=[],i=void 0!==n;(t=t[e])&&9!==t.nodeType;)if(1===t.nodeType){if(i&&C(t).is(n))break;r.push(t)}return r}function y(t,e){for(var n=[];t;t=t.nextSibling)1===t.nodeType&&t!==e&&n.push(t);return n}var b=C.expr.match.needsContext,w=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,k=/^.[^:#\[\.,]*$/;function S(t,n,r){if(C.isFunction(n))return C.grep(t,function(t,e){return!!n.call(t,e,t)!==r});if(n.nodeType)return C.grep(t,function(t){return t===n!==r});if("string"==typeof n){if(k.test(n))return C.filter(n,t,r);n=C.filter(n,t)}return C.grep(t,function(t){return-1<i.call(n,t)!==r})}C.filter=function(t,e,n){var r=e[0];return n&&(t=":not("+t+")"),1===e.length&&1===r.nodeType?C.find.matchesSelector(r,t)?[r]:[]:C.find.matches(t,C.grep(e,function(t){return 1===t.nodeType}))},C.fn.extend({find:function(t){var e,n=this.length,r=[],i=this;if("string"!=typeof t)return this.pushStack(C(t).filter(function(){for(e=0;e<n;e++)if(C.contains(i[e],this))return!0}));for(e=0;e<n;e++)C.find(t,i[e],r);return(r=this.pushStack(1<n?C.unique(r):r)).selector=this.selector?this.selector+" "+t:t,r},filter:function(t){return this.pushStack(S(this,t||[],!1))},not:function(t){return this.pushStack(S(this,t||[],!0))},is:function(t){return!!S(this,"string"==typeof t&&b.test(t)?C(t):t||[],!1).length}});var O=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/;(C.fn.init=function(t,e,n){if(!t)return this;if(n=n||E,"string"!=typeof t)return t.nodeType?(this.context=this[0]=t,this.length=1,this):C.isFunction(t)?void 0!==n.ready?n.ready(t):t(C):(void 0!==t.selector&&(this.selector=t.selector,this.context=t.context),C.makeArray(t,this));if(!(r="<"===t[0]&&">"===t[t.length-1]&&3<=t.length?[null,t,null]:O.exec(t))||!r[1]&&e)return(!e||e.jquery?e||n:this.constructor(e)).find(t);if(r[1]){if(e=e instanceof C?e[0]:e,C.merge(this,C.parseHTML(r[1],e&&e.nodeType?e.ownerDocument||e:x,!0)),w.test(r[1])&&C.isPlainObject(e))for(var r in e)C.isFunction(this[r])?this[r](e[r]):this.attr(r,e[r]);return this}return(n=x.getElementById(r[2]))&&n.parentNode&&(this.length=1,this[0]=n),this.context=x,this.selector=t,this}).prototype=C.fn;var E=C(x),T=/^(?:parents|prev(?:Until|All))/,A={children:!0,contents:!0,next:!0,prev:!0};function I(t,e){for(;(t=t[e])&&1!==t.nodeType;);return t}C.fn.extend({has:function(t){var e=C(t,this),n=e.length;return this.filter(function(){for(var t=0;t<n;t++)if(C.contains(this,e[t]))return!0})},closest:function(t,e){for(var n,r=0,i=this.length,o=[],s=b.test(t)||"string"!=typeof t?C(t,e||this.context):0;r<i;r++)for(n=this[r];n&&n!==e;n=n.parentNode)if(n.nodeType<11&&(s?-1<s.index(n):1===n.nodeType&&C.find.matchesSelector(n,t))){o.push(n);break}return this.pushStack(1<o.length?C.uniqueSort(o):o)},index:function(t){return t?"string"==typeof t?i.call(C(t),this[0]):i.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,e){return this.pushStack(C.uniqueSort(C.merge(this.get(),C(t,e))))},addBack:function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}}),C.each({parent:function(t){t=t.parentNode;return t&&11!==t.nodeType?t:null},parents:function(t){return v(t,"parentNode")},parentsUntil:function(t,e,n){return v(t,"parentNode",n)},next:function(t){return I(t,"nextSibling")},prev:function(t){return I(t,"previousSibling")},nextAll:function(t){return v(t,"nextSibling")},prevAll:function(t){return v(t,"previousSibling")},nextUntil:function(t,e,n){return v(t,"nextSibling",n)},prevUntil:function(t,e,n){return v(t,"previousSibling",n)},siblings:function(t){return y((t.parentNode||{}).firstChild,t)},children:function(t){return y(t.firstChild)},contents:function(t){return t.contentDocument||C.merge([],t.childNodes)}},function(r,i){C.fn[r]=function(t,e){var n=C.map(this,i,t);return(e="Until"!==r.slice(-5)?t:e)&&"string"==typeof e&&(n=C.filter(e,n)),1<this.length&&(A[r]||C.uniqueSort(n),T.test(r)&&n.reverse()),this.pushStack(n)}});var j,P=/\S+/g;function D(){x.removeEventListener("DOMContentLoaded",D),_.removeEventListener("load",D),C.ready()}C.Callbacks=function(r){var t,n;r="string"==typeof r?(t=r,n={},C.each(t.match(P)||[],function(t,e){n[e]=!0}),n):C.extend({},r);function i(){for(a=r.once,s=o=!0;c.length;l=-1)for(e=c.shift();++l<u.length;)!1===u[l].apply(e[0],e[1])&&r.stopOnFalse&&(l=u.length,e=!1);r.memory||(e=!1),o=!1,a&&(u=e?[]:"")}var o,e,s,a,u=[],c=[],l=-1,h={add:function(){return u&&(e&&!o&&(l=u.length-1,c.push(e)),function n(t){C.each(t,function(t,e){C.isFunction(e)?r.unique&&h.has(e)||u.push(e):e&&e.length&&"string"!==C.type(e)&&n(e)})}(arguments),e&&!o&&i()),this},remove:function(){return C.each(arguments,function(t,e){for(var n;-1<(n=C.inArray(e,u,n));)u.splice(n,1),n<=l&&l--}),this},has:function(t){return t?-1<C.inArray(t,u):0<u.length},empty:function(){return u=u&&[],this},disable:function(){return a=c=[],u=e="",this},disabled:function(){return!u},lock:function(){return a=c=[],e||(u=e=""),this},locked:function(){return!!a},fireWith:function(t,e){return a||(e=[t,(e=e||[]).slice?e.slice():e],c.push(e),o||i()),this},fire:function(){return h.fireWith(this,arguments),this},fired:function(){return!!s}};return h},C.extend({Deferred:function(t){var o=[["resolve","done",C.Callbacks("once memory"),"resolved"],["reject","fail",C.Callbacks("once memory"),"rejected"],["notify","progress",C.Callbacks("memory")]],i="pending",s={state:function(){return i},always:function(){return a.done(arguments).fail(arguments),this},then:function(){var i=arguments;return C.Deferred(function(r){C.each(o,function(t,e){var n=C.isFunction(i[t])&&i[t];a[e[1]](function(){var t=n&&n.apply(this,arguments);t&&C.isFunction(t.promise)?t.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[e[0]+"With"](this===s?r.promise():this,n?[t]:arguments)})}),i=null}).promise()},promise:function(t){return null!=t?C.extend(t,s):s}},a={};return s.pipe=s.then,C.each(o,function(t,e){var n=e[2],r=e[3];s[e[1]]=n.add,r&&n.add(function(){i=r},o[1^t][2].disable,o[2][2].lock),a[e[0]]=function(){return a[e[0]+"With"](this===a?s:this,arguments),this},a[e[0]+"With"]=n.fireWith}),s.promise(a),t&&t.call(a,a),a},when:function(t){function e(e,n,r){return function(t){n[e]=this,r[e]=1<arguments.length?l.call(arguments):t,r===i?c.notifyWith(n,r):--u||c.resolveWith(n,r)}}var i,n,r,o=0,s=l.call(arguments),a=s.length,u=1!==a||t&&C.isFunction(t.promise)?a:0,c=1===u?t:C.Deferred();if(1<a)for(i=new Array(a),n=new Array(a),r=new Array(a);o<a;o++)s[o]&&C.isFunction(s[o].promise)?s[o].promise().progress(e(o,n,i)).done(e(o,r,s)).fail(c.reject):--u;return u||c.resolveWith(r,s),c.promise()}}),C.fn.ready=function(t){return C.ready.promise().done(t),this},C.extend({isReady:!1,readyWait:1,holdReady:function(t){t?C.readyWait++:C.ready(!0)},ready:function(t){(!0===t?--C.readyWait:C.isReady)||((C.isReady=!0)!==t&&0<--C.readyWait||(j.resolveWith(x,[C]),C.fn.triggerHandler&&(C(x).triggerHandler("ready"),C(x).off("ready"))))}}),C.ready.promise=function(t){return j||(j=C.Deferred(),"complete"===x.readyState||"loading"!==x.readyState&&!x.documentElement.doScroll?_.setTimeout(C.ready):(x.addEventListener("DOMContentLoaded",D),_.addEventListener("load",D))),j.promise(t)},C.ready.promise();function N(t){return 1===t.nodeType||9===t.nodeType||!+t.nodeType}var R=function(t,e,n,r,i,o,s){var a=0,u=t.length,c=null==n;if("object"===C.type(n))for(a in i=!0,n)R(t,e,a,n[a],!0,o,s);else if(void 0!==r&&(i=!0,C.isFunction(r)||(s=!0),e=c?s?(e.call(t,r),null):(c=e,function(t,e,n){return c.call(C(t),n)}):e))for(;a<u;a++)e(t[a],n,s?r:r.call(t[a],a,e(t[a],n)));return i?t:c?e.call(t):u?e(t[0],n):o};function M(){this.expando=C.expando+M.uid++}M.uid=1,M.prototype={register:function(t,e){e=e||{};return t.nodeType?t[this.expando]=e:Object.defineProperty(t,this.expando,{value:e,writable:!0,configurable:!0}),t[this.expando]},cache:function(t){if(!N(t))return{};var e=t[this.expando];return e||(e={},N(t)&&(t.nodeType?t[this.expando]=e:Object.defineProperty(t,this.expando,{value:e,configurable:!0}))),e},set:function(t,e,n){var r,i=this.cache(t);if("string"==typeof e)i[e]=n;else for(r in e)i[r]=e[r];return i},get:function(t,e){return void 0===e?this.cache(t):t[this.expando]&&t[this.expando][e]},access:function(t,e,n){var r;return void 0===e||e&&"string"==typeof e&&void 0===n?void 0!==(r=this.get(t,e))?r:this.get(t,C.camelCase(e)):(this.set(t,e,n),void 0!==n?n:e)},remove:function(t,e){var n,r,i,o=t[this.expando];if(void 0!==o){if(void 0===e)this.register(t);else{n=(r=C.isArray(e)?e.concat(e.map(C.camelCase)):(i=C.camelCase(e),e in o?[e,i]:(r=i)in o?[r]:r.match(P)||[])).length;for(;n--;)delete o[r[n]]}void 0!==e&&!C.isEmptyObject(o)||(t.nodeType?t[this.expando]=void 0:delete t[this.expando])}},hasData:function(t){t=t[this.expando];return void 0!==t&&!C.isEmptyObject(t)}};var W=new M,L=new M,F=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,H=/[A-Z]/g;function B(t,e,n){var r;if(void 0===n&&1===t.nodeType)if(r="data-"+e.replace(H,"-$&").toLowerCase(),"string"==typeof(n=t.getAttribute(r))){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:F.test(n)?C.parseJSON(n):n)}catch(t){}L.set(t,e,n)}else n=void 0;return n}C.extend({hasData:function(t){return L.hasData(t)||W.hasData(t)},data:function(t,e,n){return L.access(t,e,n)},removeData:function(t,e){L.remove(t,e)},_data:function(t,e,n){return W.access(t,e,n)},_removeData:function(t,e){W.remove(t,e)}}),C.fn.extend({data:function(r,t){var e,n,i,o=this[0],s=o&&o.attributes;if(void 0!==r)return"object"==typeof r?this.each(function(){L.set(this,r)}):R(this,function(e){var t,n;return o&&void 0===e?void 0!==(t=L.get(o,r)||L.get(o,r.replace(H,"-$&").toLowerCase()))?t:(n=C.camelCase(r),void 0!==(t=L.get(o,n))?t:void 0!==(t=B(o,n,void 0))?t:void 0):(n=C.camelCase(r),void this.each(function(){var t=L.get(this,n);L.set(this,n,e),-1<r.indexOf("-")&&void 0!==t&&L.set(this,r,e)}))},null,t,1<arguments.length,null,!0);if(this.length&&(i=L.get(o),1===o.nodeType&&!W.get(o,"hasDataAttrs"))){for(e=s.length;e--;)s[e]&&(0===(n=s[e].name).indexOf("data-")&&(n=C.camelCase(n.slice(5)),B(o,n,i[n])));W.set(o,"hasDataAttrs",!0)}return i},removeData:function(t){return this.each(function(){L.remove(this,t)})}}),C.extend({queue:function(t,e,n){var r;return t?(r=W.get(t,e=(e||"fx")+"queue"),n&&(!r||C.isArray(n)?r=W.access(t,e,C.makeArray(n)):r.push(n)),r||[]):void 0},dequeue:function(t,e){var n=C.queue(t,e=e||"fx"),r=n.length,i=n.shift(),o=C._queueHooks(t,e);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===e&&n.unshift("inprogress"),delete o.stop,i.call(t,function(){C.dequeue(t,e)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(t,e){var n=e+"queueHooks";return W.get(t,n)||W.access(t,n,{empty:C.Callbacks("once memory").add(function(){W.remove(t,[e+"queue",n])})})}}),C.fn.extend({queue:function(e,n){var t=2;return"string"!=typeof e&&(n=e,e="fx",t--),arguments.length<t?C.queue(this[0],e):void 0===n?this:this.each(function(){var t=C.queue(this,e,n);C._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&C.dequeue(this,e)})},dequeue:function(t){return this.each(function(){C.dequeue(this,t)})},clearQueue:function(t){return this.queue(t||"fx",[])},promise:function(t,e){function n(){--i||o.resolveWith(s,[s])}var r,i=1,o=C.Deferred(),s=this,a=this.length;for("string"!=typeof t&&(e=t,t=void 0),t=t||"fx";a--;)(r=W.get(s[a],t+"queueHooks"))&&r.empty&&(i++,r.empty.add(n));return n(),o.promise(e)}});function q(t,e){return"none"===C.css(t=e||t,"display")||!C.contains(t.ownerDocument,t)}var s=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,z=new RegExp("^(?:([+-])=|)("+s+")([a-z%]*)$","i"),U=["Top","Right","Bottom","Left"];function G(t,e,n,r){var i,o=1,s=20,a=r?function(){return r.cur()}:function(){return C.css(t,e,"")},u=a(),c=n&&n[3]||(C.cssNumber[e]?"":"px"),l=(C.cssNumber[e]||"px"!==c&&+u)&&z.exec(C.css(t,e));if(l&&l[3]!==c)for(c=c||l[3],n=n||[],l=+u||1;C.style(t,e,(l/=o=o||".5")+c),o!==(o=a()/u)&&1!==o&&--s;);return n&&(l=+l||+u||0,i=n[1]?l+(n[1]+1)*n[2]:+n[2],r&&(r.unit=c,r.start=l,r.end=i)),i}var V=/^(?:checkbox|radio)$/i,$=/<([\w:-]+)/,X=/^$|\/(?:java|ecma)script/i,Y={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function K(t,e){var n=void 0!==t.getElementsByTagName?t.getElementsByTagName(e||"*"):void 0!==t.querySelectorAll?t.querySelectorAll(e||"*"):[];return void 0===e||e&&C.nodeName(t,e)?C.merge([t],n):n}function Q(t,e){for(var n=0,r=t.length;n<r;n++)W.set(t[n],"globalEval",!e||W.get(e[n],"globalEval"))}Y.optgroup=Y.option,Y.tbody=Y.tfoot=Y.colgroup=Y.caption=Y.thead,Y.th=Y.td;var J=/<|&#?\w+;/;function Z(t,e,n,r,i){for(var o,s,a,u,c,l=e.createDocumentFragment(),h=[],f=0,p=t.length;f<p;f++)if((o=t[f])||0===o)if("object"===C.type(o))C.merge(h,o.nodeType?[o]:o);else if(J.test(o)){for(s=s||l.appendChild(e.createElement("div")),a=($.exec(o)||["",""])[1].toLowerCase(),a=Y[a]||Y._default,s.innerHTML=a[1]+C.htmlPrefilter(o)+a[2],c=a[0];c--;)s=s.lastChild;C.merge(h,s.childNodes),(s=l.firstChild).textContent=""}else h.push(e.createTextNode(o));for(l.textContent="",f=0;o=h[f++];)if(r&&-1<C.inArray(o,r))i&&i.push(o);else if(u=C.contains(o.ownerDocument,o),s=K(l.appendChild(o),"script"),u&&Q(s),n)for(c=0;o=s[c++];)X.test(o.type||"")&&n.push(o);return l}n=x.createDocumentFragment().appendChild(x.createElement("div")),(p=x.createElement("input")).setAttribute("type","radio"),p.setAttribute("checked","checked"),p.setAttribute("name","t"),n.appendChild(p),m.checkClone=n.cloneNode(!0).cloneNode(!0).lastChild.checked,n.innerHTML="<textarea>x</textarea>",m.noCloneChecked=!!n.cloneNode(!0).lastChild.defaultValue;var tt=/^key/,et=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,nt=/^([^.]*)(?:\.(.+)|)/;function rt(){return!0}function it(){return!1}function ot(){try{return x.activeElement}catch(t){}}function st(t,e,n,r,i,o){var s,a;if("object"==typeof e){for(a in"string"!=typeof n&&(r=r||n,n=void 0),e)st(t,a,n,r,e[a],o);return t}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=it;else if(!i)return t;return 1===o&&(s=i,(i=function(t){return C().off(t),s.apply(this,arguments)}).guid=s.guid||(s.guid=C.guid++)),t.each(function(){C.event.add(this,e,i,r,n)})}C.event={global:{},add:function(e,t,n,r,i){var o,s,a,u,c,l,h,f,p,d=W.get(e);if(d)for(n.handler&&(n=(o=n).handler,i=o.selector),n.guid||(n.guid=C.guid++),(a=d.events)||(a=d.events={}),(s=d.handle)||(s=d.handle=function(t){return void 0!==C&&C.event.triggered!==t.type?C.event.dispatch.apply(e,arguments):void 0}),u=(t=(t||"").match(P)||[""]).length;u--;)h=p=(c=nt.exec(t[u])||[])[1],f=(c[2]||"").split(".").sort(),h&&(l=C.event.special[h]||{},h=(i?l.delegateType:l.bindType)||h,l=C.event.special[h]||{},c=C.extend({type:h,origType:p,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&C.expr.match.needsContext.test(i),namespace:f.join(".")},o),(p=a[h])||((p=a[h]=[]).delegateCount=0,l.setup&&!1!==l.setup.call(e,r,f,s)||e.addEventListener&&e.addEventListener(h,s)),l.add&&(l.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),C.event.global[h]=!0)},remove:function(t,e,n,r,i){var o,s,a,u,c,l,h,f,p,d,g,m=W.hasData(t)&&W.get(t);if(m&&(u=m.events)){for(c=(e=(e||"").match(P)||[""]).length;c--;)if(p=g=(a=nt.exec(e[c])||[])[1],d=(a[2]||"").split(".").sort(),p){for(h=C.event.special[p]||{},f=u[p=(r?h.delegateType:h.bindType)||p]||[],a=a[2]&&new RegExp("(^|\\.)"+d.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=o=f.length;o--;)l=f[o],!i&&g!==l.origType||n&&n.guid!==l.guid||a&&!a.test(l.namespace)||r&&r!==l.selector&&("**"!==r||!l.selector)||(f.splice(o,1),l.selector&&f.delegateCount--,h.remove&&h.remove.call(t,l));s&&!f.length&&(h.teardown&&!1!==h.teardown.call(t,d,m.handle)||C.removeEvent(t,p,m.handle),delete u[p])}else for(p in u)C.event.remove(t,p+e[c],n,r,!0);C.isEmptyObject(u)&&W.remove(t,"handle events")}},dispatch:function(t){t=C.event.fix(t);var e,n,r,i,o,s=l.call(arguments),a=(W.get(this,"events")||{})[t.type]||[],u=C.event.special[t.type]||{};if((s[0]=t).delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,t)){for(o=C.event.handlers.call(this,t,a),e=0;(r=o[e++])&&!t.isPropagationStopped();)for(t.currentTarget=r.elem,n=0;(i=r.handlers[n++])&&!t.isImmediatePropagationStopped();)t.rnamespace&&!t.rnamespace.test(i.namespace)||(t.handleObj=i,t.data=i.data,void 0!==(i=((C.event.special[i.origType]||{}).handle||i.handler).apply(r.elem,s))&&!1===(t.result=i)&&(t.preventDefault(),t.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,t),t.result}},handlers:function(t,e){var n,r,i,o,s=[],a=e.delegateCount,u=t.target;if(a&&u.nodeType&&("click"!==t.type||isNaN(t.button)||t.button<1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&(!0!==u.disabled||"click"!==t.type)){for(r=[],n=0;n<a;n++)void 0===r[i=(o=e[n]).selector+" "]&&(r[i]=o.needsContext?-1<C(i,this).index(u):C.find(i,this,null,[u]).length),r[i]&&r.push(o);r.length&&s.push({elem:u,handlers:r})}return a<e.length&&s.push({elem:this,handlers:e.slice(a)}),s},props:"altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(t,e){return null==t.which&&(t.which=null!=e.charCode?e.charCode:e.keyCode),t}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(t,e){var n,r,i=e.button;return null==t.pageX&&null!=e.clientX&&(n=(r=t.target.ownerDocument||x).documentElement,r=r.body,t.pageX=e.clientX+(n&&n.scrollLeft||r&&r.scrollLeft||0)-(n&&n.clientLeft||r&&r.clientLeft||0),t.pageY=e.clientY+(n&&n.scrollTop||r&&r.scrollTop||0)-(n&&n.clientTop||r&&r.clientTop||0)),t.which||void 0===i||(t.which=1&i?1:2&i?3:4&i?2:0),t}},fix:function(t){if(t[C.expando])return t;var e,n,r,i=t.type,o=t,s=this.fixHooks[i];for(s||(this.fixHooks[i]=s=et.test(i)?this.mouseHooks:tt.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,t=new C.Event(o),e=r.length;e--;)t[n=r[e]]=o[n];return t.target||(t.target=x),3===t.target.nodeType&&(t.target=t.target.parentNode),s.filter?s.filter(t,o):t},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==ot()&&this.focus?(this.focus(),!1):void 0},delegateType:"focusin"},blur:{trigger:function(){return this===ot()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&C.nodeName(this,"input")?(this.click(),!1):void 0},_default:function(t){return C.nodeName(t.target,"a")}},beforeunload:{postDispatch:function(t){void 0!==t.result&&t.originalEvent&&(t.originalEvent.returnValue=t.result)}}}},C.removeEvent=function(t,e,n){t.removeEventListener&&t.removeEventListener(e,n)},C.Event=function(t,e){return this instanceof C.Event?(t&&t.type?(this.originalEvent=t,this.type=t.type,this.isDefaultPrevented=t.defaultPrevented||void 0===t.defaultPrevented&&!1===t.returnValue?rt:it):this.type=t,e&&C.extend(this,e),this.timeStamp=t&&t.timeStamp||C.now(),void(this[C.expando]=!0)):new C.Event(t,e)},C.Event.prototype={constructor:C.Event,isDefaultPrevented:it,isPropagationStopped:it,isImmediatePropagationStopped:it,isSimulated:!1,preventDefault:function(){var t=this.originalEvent;this.isDefaultPrevented=rt,t&&!this.isSimulated&&t.preventDefault()},stopPropagation:function(){var t=this.originalEvent;this.isPropagationStopped=rt,t&&!this.isSimulated&&t.stopPropagation()},stopImmediatePropagation:function(){var t=this.originalEvent;this.isImmediatePropagationStopped=rt,t&&!this.isSimulated&&t.stopImmediatePropagation(),this.stopPropagation()}},C.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(t,i){C.event.special[t]={delegateType:i,bindType:i,handle:function(t){var e,n=t.relatedTarget,r=t.handleObj;return n&&(n===this||C.contains(this,n))||(t.type=r.origType,e=r.handler.apply(this,arguments),t.type=i),e}}}),C.fn.extend({on:function(t,e,n,r){return st(this,t,e,n,r)},one:function(t,e,n,r){return st(this,t,e,n,r,1)},off:function(t,e,n){var r,i;if(t&&t.preventDefault&&t.handleObj)return r=t.handleObj,C(t.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"!=typeof t)return!1!==e&&"function"!=typeof e||(n=e,e=void 0),!1===n&&(n=it),this.each(function(){C.event.remove(this,t,n,e)});for(i in t)this.off(i,e,t[i]);return this}});var at=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,ut=/<script|<style|<link/i,ct=/checked\s*(?:[^=]|=\s*.checked.)/i,lt=/^true\/(.*)/,ht=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function ft(t,e){return C.nodeName(t,"table")&&C.nodeName(11!==e.nodeType?e:e.firstChild,"tr")?t.getElementsByTagName("tbody")[0]||t.appendChild(t.ownerDocument.createElement("tbody")):t}function pt(t){return t.type=(null!==t.getAttribute("type"))+"/"+t.type,t}function dt(t){var e=lt.exec(t.type);return e?t.type=e[1]:t.removeAttribute("type"),t}function gt(t,e){var n,r,i,o,s,a;if(1===e.nodeType){if(W.hasData(t)&&(o=W.access(t),s=W.set(e,o),a=o.events))for(i in delete s.handle,s.events={},a)for(n=0,r=a[i].length;n<r;n++)C.event.add(e,i,a[i][n]);L.hasData(t)&&(t=L.access(t),t=C.extend({},t),L.set(e,t))}}function mt(n,r,i,o){r=g.apply([],r);var t,e,s,a,u,c,l=0,h=n.length,f=h-1,p=r[0],d=C.isFunction(p);if(d||1<h&&"string"==typeof p&&!m.checkClone&&ct.test(p))return n.each(function(t){var e=n.eq(t);d&&(r[0]=p.call(this,t,e.html())),mt(e,r,i,o)});if(h&&(e=(t=Z(r,n[0].ownerDocument,!1,n,o)).firstChild,1===t.childNodes.length&&(t=e),e||o)){for(a=(s=C.map(K(t,"script"),pt)).length;l<h;l++)u=t,l!==f&&(u=C.clone(u,!0,!0),a&&C.merge(s,K(u,"script"))),i.call(n[l],u,l);if(a)for(c=s[s.length-1].ownerDocument,C.map(s,dt),l=0;l<a;l++)u=s[l],X.test(u.type||"")&&!W.access(u,"globalEval")&&C.contains(c,u)&&(u.src?C._evalUrl&&C._evalUrl(u.src):C.globalEval(u.textContent.replace(ht,"")))}return n}function vt(t,e,n){for(var r,i=e?C.filter(e,t):t,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||C.cleanData(K(r)),r.parentNode&&(n&&C.contains(r.ownerDocument,r)&&Q(K(r,"script")),r.parentNode.removeChild(r));return t}C.extend({htmlPrefilter:function(t){return t.replace(at,"<$1></$2>")},clone:function(t,e,n){var r,i,o,s,a,u,c,l=t.cloneNode(!0),h=C.contains(t.ownerDocument,t);if(!(m.noCloneChecked||1!==t.nodeType&&11!==t.nodeType||C.isXMLDoc(t)))for(s=K(l),r=0,i=(o=K(t)).length;r<i;r++)a=o[r],u=s[r],c=void 0,"input"===(c=u.nodeName.toLowerCase())&&V.test(a.type)?u.checked=a.checked:"input"!==c&&"textarea"!==c||(u.defaultValue=a.defaultValue);if(e)if(n)for(o=o||K(t),s=s||K(l),r=0,i=o.length;r<i;r++)gt(o[r],s[r]);else gt(t,l);return 0<(s=K(l,"script")).length&&Q(s,!h&&K(t,"script")),l},cleanData:function(t){for(var e,n,r,i=C.event.special,o=0;void 0!==(n=t[o]);o++)if(N(n)){if(e=n[W.expando]){if(e.events)for(r in e.events)i[r]?C.event.remove(n,r):C.removeEvent(n,r,e.handle);n[W.expando]=void 0}n[L.expando]&&(n[L.expando]=void 0)}}}),C.fn.extend({domManip:mt,detach:function(t){return vt(this,t,!0)},remove:function(t){return vt(this,t)},text:function(t){return R(this,function(t){return void 0===t?C.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=t)})},null,t,arguments.length)},append:function(){return mt(this,arguments,function(t){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||ft(this,t).appendChild(t)})},prepend:function(){return mt(this,arguments,function(t){var e;1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(e=ft(this,t)).insertBefore(t,e.firstChild)})},before:function(){return mt(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this)})},after:function(){return mt(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)})},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(C.cleanData(K(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null!=t&&t,e=null==e?t:e,this.map(function(){return C.clone(this,t,e)})},html:function(t){return R(this,function(t){var e=this[0]||{},n=0,r=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"==typeof t&&!ut.test(t)&&!Y[($.exec(t)||["",""])[1].toLowerCase()]){t=C.htmlPrefilter(t);try{for(;n<r;n++)1===(e=this[n]||{}).nodeType&&(C.cleanData(K(e,!1)),e.innerHTML=t);e=0}catch(t){}}e&&this.empty().append(t)},null,t,arguments.length)},replaceWith:function(){var n=[];return mt(this,arguments,function(t){var e=this.parentNode;C.inArray(this,n)<0&&(C.cleanData(K(this)),e&&e.replaceChild(t,this))},n)}}),C.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(t,s){C.fn[t]=function(t){for(var e,n=[],r=C(t),i=r.length-1,o=0;o<=i;o++)e=o===i?this:this.clone(!0),C(r[o])[s](e),a.apply(n,e.get());return this.pushStack(n)}});var yt,bt={HTML:"block",BODY:"block"};function wt(t,e){t=C(e.createElement(t)).appendTo(e.body),e=C.css(t[0],"display");return t.detach(),e}function _t(t){var e=x,n=bt[t];return n||("none"!==(n=wt(t,e))&&n||((e=(yt=(yt||C("<iframe frameborder='0' width='0' height='0'/>")).appendTo(e.documentElement))[0].contentDocument).write(),e.close(),n=wt(t,e),yt.detach()),bt[t]=n),n}function xt(t,e,n,r){var i,o={};for(i in e)o[i]=t.style[i],t.style[i]=e[i];for(i in r=n.apply(t,r||[]),e)t.style[i]=o[i];return r}var Ct,kt,St,Ot,Et,Tt,At=/^margin/,It=new RegExp("^("+s+")(?!px)[a-z%]+$","i"),jt=function(t){var e=t.ownerDocument.defaultView;return(e=!e||!e.opener?_:e).getComputedStyle(t)},Pt=x.documentElement;function Dt(){Tt.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",Tt.innerHTML="",Pt.appendChild(Et);var t=_.getComputedStyle(Tt);Ct="1%"!==t.top,Ot="2px"===t.marginLeft,kt="4px"===t.width,Tt.style.marginRight="50%",St="4px"===t.marginRight,Pt.removeChild(Et)}function Nt(t,e,n){var r,i,o=t.style;return""!==(i=(n=n||jt(t))?n.getPropertyValue(e)||n[e]:void 0)&&void 0!==i||C.contains(t.ownerDocument,t)||(i=C.style(t,e)),n&&!m.pixelMarginRight()&&It.test(i)&&At.test(e)&&(r=o.width,t=o.minWidth,e=o.maxWidth,o.minWidth=o.maxWidth=o.width=i,i=n.width,o.width=r,o.minWidth=t,o.maxWidth=e),void 0!==i?i+"":i}function Rt(t,e){return{get:function(){return t()?void delete this.get:(this.get=e).apply(this,arguments)}}}Et=x.createElement("div"),(Tt=x.createElement("div")).style&&(Tt.style.backgroundClip="content-box",Tt.cloneNode(!0).style.backgroundClip="",m.clearCloneStyle="content-box"===Tt.style.backgroundClip,Et.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",Et.appendChild(Tt),C.extend(m,{pixelPosition:function(){return Dt(),Ct},boxSizingReliable:function(){return null==kt&&Dt(),kt},pixelMarginRight:function(){return null==kt&&Dt(),St},reliableMarginLeft:function(){return null==kt&&Dt(),Ot},reliableMarginRight:function(){var t,e=Tt.appendChild(x.createElement("div"));return e.style.cssText=Tt.style.cssText="-webkit-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",e.style.marginRight=e.style.width="0",Tt.style.width="1px",Pt.appendChild(Et),t=!parseFloat(_.getComputedStyle(e).marginRight),Pt.removeChild(Et),Tt.removeChild(e),t}}));var Mt=/^(none|table(?!-c[ea]).+)/,Wt={position:"absolute",visibility:"hidden",display:"block"},Lt={letterSpacing:"0",fontWeight:"400"},Ft=["Webkit","O","Moz","ms"],Ht=x.createElement("div").style;function Bt(t){if(t in Ht)return t;for(var e=t[0].toUpperCase()+t.slice(1),n=Ft.length;n--;)if((t=Ft[n]+e)in Ht)return t}function qt(t,e,n){var r=z.exec(e);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):e}function zt(t,e,n,r,i){for(var o=n===(r?"border":"content")?4:"width"===e?1:0,s=0;o<4;o+=2)"margin"===n&&(s+=C.css(t,n+U[o],!0,i)),r?("content"===n&&(s-=C.css(t,"padding"+U[o],!0,i)),"margin"!==n&&(s-=C.css(t,"border"+U[o]+"Width",!0,i))):(s+=C.css(t,"padding"+U[o],!0,i),"padding"!==n&&(s+=C.css(t,"border"+U[o]+"Width",!0,i)));return s}function Ut(t,e,n){var r=!0,i="width"===e?t.offsetWidth:t.offsetHeight,o=jt(t),s="border-box"===C.css(t,"boxSizing",!1,o);if(i<=0||null==i){if(((i=Nt(t,e,o))<0||null==i)&&(i=t.style[e]),It.test(i))return i;r=s&&(m.boxSizingReliable()||i===t.style[e]),i=parseFloat(i)||0}return i+zt(t,e,n||(s?"border":"content"),r,o)+"px"}function Gt(t,e){for(var n,r,i,o=[],s=0,a=t.length;s<a;s++)(r=t[s]).style&&(o[s]=W.get(r,"olddisplay"),n=r.style.display,e?(o[s]||"none"!==n||(r.style.display=""),""===r.style.display&&q(r)&&(o[s]=W.access(r,"olddisplay",_t(r.nodeName)))):(i=q(r),"none"===n&&i||W.set(r,"olddisplay",i?n:C.css(r,"display"))));for(s=0;s<a;s++)(r=t[s]).style&&(e&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=e?o[s]||"":"none"));return t}function Vt(t,e,n,r,i){return new Vt.prototype.init(t,e,n,r,i)}C.extend({cssHooks:{opacity:{get:function(t,e){if(e){t=Nt(t,"opacity");return""===t?"1":t}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(t,e,n,r){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var i,o,s,a=C.camelCase(e),u=t.style;return e=C.cssProps[a]||(C.cssProps[a]=Bt(a)||a),s=C.cssHooks[e]||C.cssHooks[a],void 0===n?s&&"get"in s&&void 0!==(i=s.get(t,!1,r))?i:u[e]:("string"===(o=typeof n)&&(i=z.exec(n))&&i[1]&&(n=G(t,e,i),o="number"),void(null!=n&&n==n&&("number"===o&&(n+=i&&i[3]||(C.cssNumber[a]?"":"px")),m.clearCloneStyle||""!==n||0!==e.indexOf("background")||(u[e]="inherit"),s&&"set"in s&&void 0===(n=s.set(t,n,r))||(u[e]=n))))}},css:function(t,e,n,r){var i,o=C.camelCase(e);return e=C.cssProps[o]||(C.cssProps[o]=Bt(o)||o),"normal"===(i=void 0===(i=(o=C.cssHooks[e]||C.cssHooks[o])&&"get"in o?o.get(t,!0,n):i)?Nt(t,e,r):i)&&e in Lt&&(i=Lt[e]),""===n||n?(e=parseFloat(i),!0===n||isFinite(e)?e||0:i):i}}),C.each(["height","width"],function(t,o){C.cssHooks[o]={get:function(t,e,n){return e?Mt.test(C.css(t,"display"))&&0===t.offsetWidth?xt(t,Wt,function(){return Ut(t,o,n)}):Ut(t,o,n):void 0},set:function(t,e,n){var r,i=n&&jt(t),i=n&&zt(t,o,n,"border-box"===C.css(t,"boxSizing",!1,i),i);return i&&(r=z.exec(e))&&"px"!==(r[3]||"px")&&(t.style[o]=e,e=C.css(t,o)),qt(0,e,i)}}}),C.cssHooks.marginLeft=Rt(m.reliableMarginLeft,function(t,e){return e?(parseFloat(Nt(t,"marginLeft"))||t.getBoundingClientRect().left-xt(t,{marginLeft:0},function(){return t.getBoundingClientRect().left}))+"px":void 0}),C.cssHooks.marginRight=Rt(m.reliableMarginRight,function(t,e){return e?xt(t,{display:"inline-block"},Nt,[t,"marginRight"]):void 0}),C.each({margin:"",padding:"",border:"Width"},function(i,o){C.cssHooks[i+o]={expand:function(t){for(var e=0,n={},r="string"==typeof t?t.split(" "):[t];e<4;e++)n[i+U[e]+o]=r[e]||r[e-2]||r[0];return n}},At.test(i)||(C.cssHooks[i+o].set=qt)}),C.fn.extend({css:function(t,e){return R(this,function(t,e,n){var r,i,o={},s=0;if(C.isArray(e)){for(r=jt(t),i=e.length;s<i;s++)o[e[s]]=C.css(t,e[s],!1,r);return o}return void 0!==n?C.style(t,e,n):C.css(t,e)},t,e,1<arguments.length)},show:function(){return Gt(this,!0)},hide:function(){return Gt(this)},toggle:function(t){return"boolean"==typeof t?t?this.show():this.hide():this.each(function(){q(this)?C(this).show():C(this).hide()})}}),(C.Tween=Vt).prototype={constructor:Vt,init:function(t,e,n,r,i,o){this.elem=t,this.prop=n,this.easing=i||C.easing._default,this.options=e,this.start=this.now=this.cur(),this.end=r,this.unit=o||(C.cssNumber[n]?"":"px")},cur:function(){var t=Vt.propHooks[this.prop];return(t&&t.get?t:Vt.propHooks._default).get(this)},run:function(t){var e,n=Vt.propHooks[this.prop];return this.options.duration?this.pos=e=C.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=e=t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),(n&&n.set?n:Vt.propHooks._default).set(this),this}},Vt.prototype.init.prototype=Vt.prototype,Vt.propHooks={_default:{get:function(t){return 1!==t.elem.nodeType||null!=t.elem[t.prop]&&null==t.elem.style[t.prop]?t.elem[t.prop]:(t=C.css(t.elem,t.prop,""))&&"auto"!==t?t:0},set:function(t){C.fx.step[t.prop]?C.fx.step[t.prop](t):1!==t.elem.nodeType||null==t.elem.style[C.cssProps[t.prop]]&&!C.cssHooks[t.prop]?t.elem[t.prop]=t.now:C.style(t.elem,t.prop,t.now+t.unit)}}},Vt.propHooks.scrollTop=Vt.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},C.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2},_default:"swing"},C.fx=Vt.prototype.init,C.fx.step={};var $t,Xt,Yt=/^(?:toggle|show|hide)$/,Kt=/queueHooks$/;function Qt(){return _.setTimeout(function(){$t=void 0}),$t=C.now()}function Jt(t,e){var n,r=0,i={height:t};for(e=e?1:0;r<4;r+=2-e)i["margin"+(n=U[r])]=i["padding"+n]=t;return e&&(i.opacity=i.width=t),i}function Zt(t,e,n){for(var r,i=(te.tweeners[e]||[]).concat(te.tweeners["*"]),o=0,s=i.length;o<s;o++)if(r=i[o].call(n,e,t))return r}function te(i,t,e){var n,o,r=0,s=te.prefilters.length,a=C.Deferred().always(function(){delete u.elem}),u=function(){if(o)return!1;for(var t=$t||Qt(),t=Math.max(0,c.startTime+c.duration-t),e=1-(t/c.duration||0),n=0,r=c.tweens.length;n<r;n++)c.tweens[n].run(e);return a.notifyWith(i,[c,e,t]),e<1&&r?t:(a.resolveWith(i,[c]),!1)},c=a.promise({elem:i,props:C.extend({},t),opts:C.extend(!0,{specialEasing:{},easing:C.easing._default},e),originalProperties:t,originalOptions:e,startTime:$t||Qt(),duration:e.duration,tweens:[],createTween:function(t,e){t=C.Tween(i,c.opts,t,e,c.opts.specialEasing[t]||c.opts.easing);return c.tweens.push(t),t},stop:function(t){var e=0,n=t?c.tweens.length:0;if(o)return this;for(o=!0;e<n;e++)c.tweens[e].run(1);return t?(a.notifyWith(i,[c,1,0]),a.resolveWith(i,[c,t])):a.rejectWith(i,[c,t]),this}}),l=c.props;for(function(t,e){var n,r,i,o,s;for(n in t)if(r=C.camelCase(n),i=e[r],o=t[n],C.isArray(o)&&(i=o[1],o=t[n]=o[0]),n!==r&&(t[r]=o,delete t[n]),s=C.cssHooks[r],s&&"expand"in s)for(n in o=s.expand(o),delete t[r],o)n in t||(t[n]=o[n],e[n]=i);else e[r]=i}(l,c.opts.specialEasing);r<s;r++)if(n=te.prefilters[r].call(c,i,l,c.opts))return C.isFunction(n.stop)&&(C._queueHooks(c.elem,c.opts.queue).stop=C.proxy(n.stop,n)),n;return C.map(l,Zt,c),C.isFunction(c.opts.start)&&c.opts.start.call(i,c),C.fx.timer(C.extend(u,{elem:i,anim:c,queue:c.opts.queue})),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always)}C.Animation=C.extend(te,{tweeners:{"*":[function(t,e){var n=this.createTween(t,e);return G(n.elem,t,z.exec(e),n),n}]},tweener:function(t,e){for(var n,r=0,i=(t=C.isFunction(t)?(e=t,["*"]):t.match(P)).length;r<i;r++)n=t[r],te.tweeners[n]=te.tweeners[n]||[],te.tweeners[n].unshift(e)},prefilters:[function(e,t,n){var r,i,o,s,a,u,c,l=this,h={},f=e.style,p=e.nodeType&&q(e),d=W.get(e,"fxshow");for(r in n.queue||(null==(a=C._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,u=a.empty.fire,a.empty.fire=function(){a.unqueued||u()}),a.unqueued++,l.always(function(){l.always(function(){a.unqueued--,C.queue(e,"fx").length||a.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[f.overflow,f.overflowX,f.overflowY],"inline"===("none"===(c=C.css(e,"display"))?W.get(e,"olddisplay")||_t(e.nodeName):c)&&"none"===C.css(e,"float")&&(f.display="inline-block")),n.overflow&&(f.overflow="hidden",l.always(function(){f.overflow=n.overflow[0],f.overflowX=n.overflow[1],f.overflowY=n.overflow[2]})),t)if(i=t[r],Yt.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(p?"hide":"show")){if("show"!==i||!d||void 0===d[r])continue;p=!0}h[r]=d&&d[r]||C.style(e,r)}else c=void 0;if(C.isEmptyObject(h))"inline"===("none"===c?_t(e.nodeName):c)&&(f.display=c);else for(r in d?"hidden"in d&&(p=d.hidden):d=W.access(e,"fxshow",{}),o&&(d.hidden=!p),p?C(e).show():l.done(function(){C(e).hide()}),l.done(function(){for(var t in W.remove(e,"fxshow"),h)C.style(e,t,h[t])}),h)s=Zt(p?d[r]:0,r,l),r in d||(d[r]=s.start,p&&(s.end=s.start,s.start="width"===r||"height"===r?1:0))}],prefilter:function(t,e){e?te.prefilters.unshift(t):te.prefilters.push(t)}}),C.speed=function(t,e,n){var r=t&&"object"==typeof t?C.extend({},t):{complete:n||!n&&e||C.isFunction(t)&&t,duration:t,easing:n&&e||e&&!C.isFunction(e)&&e};return r.duration=C.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in C.fx.speeds?C.fx.speeds[r.duration]:C.fx.speeds._default,null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){C.isFunction(r.old)&&r.old.call(this),r.queue&&C.dequeue(this,r.queue)},r},C.fn.extend({fadeTo:function(t,e,n,r){return this.filter(q).css("opacity",0).show().end().animate({opacity:e},t,n,r)},animate:function(e,t,n,r){var i=C.isEmptyObject(e),o=C.speed(t,n,r),r=function(){var t=te(this,C.extend({},e),o);(i||W.get(this,"finish"))&&t.stop(!0)};return r.finish=r,i||!1===o.queue?this.each(r):this.queue(o.queue,r)},stop:function(i,t,o){function s(t){var e=t.stop;delete t.stop,e(o)}return"string"!=typeof i&&(o=t,t=i,i=void 0),t&&!1!==i&&this.queue(i||"fx",[]),this.each(function(){var t=!0,e=null!=i&&i+"queueHooks",n=C.timers,r=W.get(this);if(e)r[e]&&r[e].stop&&s(r[e]);else for(e in r)r[e]&&r[e].stop&&Kt.test(e)&&s(r[e]);for(e=n.length;e--;)n[e].elem!==this||null!=i&&n[e].queue!==i||(n[e].anim.stop(o),t=!1,n.splice(e,1));!t&&o||C.dequeue(this,i)})},finish:function(s){return!1!==s&&(s=s||"fx"),this.each(function(){var t,e=W.get(this),n=e[s+"queue"],r=e[s+"queueHooks"],i=C.timers,o=n?n.length:0;for(e.finish=!0,C.queue(this,s,[]),r&&r.stop&&r.stop.call(this,!0),t=i.length;t--;)i[t].elem===this&&i[t].queue===s&&(i[t].anim.stop(!0),i.splice(t,1));for(t=0;t<o;t++)n[t]&&n[t].finish&&n[t].finish.call(this);delete e.finish})}}),C.each(["toggle","show","hide"],function(t,r){var i=C.fn[r];C.fn[r]=function(t,e,n){return null==t||"boolean"==typeof t?i.apply(this,arguments):this.animate(Jt(r,!0),t,e,n)}}),C.each({slideDown:Jt("show"),slideUp:Jt("hide"),slideToggle:Jt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(t,r){C.fn[t]=function(t,e,n){return this.animate(r,t,e,n)}}),C.timers=[],C.fx.tick=function(){var t,e=0,n=C.timers;for($t=C.now();e<n.length;e++)(t=n[e])()||n[e]!==t||n.splice(e--,1);n.length||C.fx.stop(),$t=void 0},C.fx.timer=function(t){C.timers.push(t),t()?C.fx.start():C.timers.pop()},C.fx.interval=13,C.fx.start=function(){Xt=Xt||_.setInterval(C.fx.tick,C.fx.interval)},C.fx.stop=function(){_.clearInterval(Xt),Xt=null},C.fx.speeds={slow:600,fast:200,_default:400},C.fn.delay=function(r,t){return r=C.fx&&C.fx.speeds[r]||r,this.queue(t=t||"fx",function(t,e){var n=_.setTimeout(t,r);e.stop=function(){_.clearTimeout(n)}})},p=x.createElement("input"),n=x.createElement("select"),s=n.appendChild(x.createElement("option")),p.type="checkbox",m.checkOn=""!==p.value,m.optSelected=s.selected,n.disabled=!0,m.optDisabled=!s.disabled,(p=x.createElement("input")).value="t",p.type="radio",m.radioValue="t"===p.value;var ee,ne=C.expr.attrHandle;C.fn.extend({attr:function(t,e){return R(this,C.attr,t,e,1<arguments.length)},removeAttr:function(t){return this.each(function(){C.removeAttr(this,t)})}}),C.extend({attr:function(t,e,n){var r,i,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===t.getAttribute?C.prop(t,e,n):(1===o&&C.isXMLDoc(t)||(e=e.toLowerCase(),i=C.attrHooks[e]||(C.expr.match.bool.test(e)?ee:void 0)),void 0!==n?null===n?void C.removeAttr(t,e):i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:(t.setAttribute(e,n+""),n):i&&"get"in i&&null!==(r=i.get(t,e))?r:null==(r=C.find.attr(t,e))?void 0:r)},attrHooks:{type:{set:function(t,e){if(!m.radioValue&&"radio"===e&&C.nodeName(t,"input")){var n=t.value;return t.setAttribute("type",e),n&&(t.value=n),e}}}},removeAttr:function(t,e){var n,r,i=0,o=e&&e.match(P);if(o&&1===t.nodeType)for(;n=o[i++];)r=C.propFix[n]||n,C.expr.match.bool.test(n)&&(t[r]=!1),t.removeAttribute(n)}}),ee={set:function(t,e,n){return!1===e?C.removeAttr(t,n):t.setAttribute(n,n),n}},C.each(C.expr.match.bool.source.match(/\w+/g),function(t,e){var o=ne[e]||C.find.attr;ne[e]=function(t,e,n){var r,i;return n||(i=ne[e],ne[e]=r,r=null!=o(t,e,n)?e.toLowerCase():null,ne[e]=i),r}});var re=/^(?:input|select|textarea|button)$/i,ie=/^(?:a|area)$/i;C.fn.extend({prop:function(t,e){return R(this,C.prop,t,e,1<arguments.length)},removeProp:function(t){return this.each(function(){delete this[C.propFix[t]||t]})}}),C.extend({prop:function(t,e,n){var r,i,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&C.isXMLDoc(t)||(e=C.propFix[e]||e,i=C.propHooks[e]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:t[e]=n:i&&"get"in i&&null!==(r=i.get(t,e))?r:t[e]},propHooks:{tabIndex:{get:function(t){var e=C.find.attr(t,"tabindex");return e?parseInt(e,10):re.test(t.nodeName)||ie.test(t.nodeName)&&t.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),m.optSelected||(C.propHooks.selected={get:function(t){t=t.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(t){t=t.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),C.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){C.propFix[this.toLowerCase()]=this});var oe=/[\t\r\n\f]/g;function se(t){return t.getAttribute&&t.getAttribute("class")||""}C.fn.extend({addClass:function(e){var t,n,r,i,o,s,a=0;if(C.isFunction(e))return this.each(function(t){C(this).addClass(e.call(this,t,se(this)))});if("string"==typeof e&&e)for(t=e.match(P)||[];n=this[a++];)if(s=se(n),r=1===n.nodeType&&(" "+s+" ").replace(oe," ")){for(o=0;i=t[o++];)r.indexOf(" "+i+" ")<0&&(r+=i+" ");s!==(s=C.trim(r))&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,s,a=0;if(C.isFunction(e))return this.each(function(t){C(this).removeClass(e.call(this,t,se(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(P)||[];n=this[a++];)if(s=se(n),r=1===n.nodeType&&(" "+s+" ").replace(oe," ")){for(o=0;i=t[o++];)for(;-1<r.indexOf(" "+i+" ");)r=r.replace(" "+i+" "," ");s!==(s=C.trim(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,e){var o=typeof i;return"boolean"==typeof e&&"string"==o?e?this.addClass(i):this.removeClass(i):C.isFunction(i)?this.each(function(t){C(this).toggleClass(i.call(this,t,se(this),e),e)}):this.each(function(){var t,e,n,r;if("string"==o)for(e=0,n=C(this),r=i.match(P)||[];t=r[e++];)n.hasClass(t)?n.removeClass(t):n.addClass(t);else void 0!==i&&"boolean"!=o||((t=se(this))&&W.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",!t&&!1!==i&&W.get(this,"__className__")||""))})},hasClass:function(t){for(var e,n=0,r=" "+t+" ";e=this[n++];)if(1===e.nodeType&&-1<(" "+se(e)+" ").replace(oe," ").indexOf(r))return!0;return!1}});var ae=/\r/g,ue=/[\x20\t\r\n\f]+/g;C.fn.extend({val:function(e){var n,t,r,i=this[0];return arguments.length?(r=C.isFunction(e),this.each(function(t){1===this.nodeType&&(null==(t=r?e.call(this,t,C(this).val()):e)?t="":"number"==typeof t?t+="":C.isArray(t)&&(t=C.map(t,function(t){return null==t?"":t+""})),(n=C.valHooks[this.type]||C.valHooks[this.nodeName.toLowerCase()])&&"set"in n&&void 0!==n.set(this,t,"value")||(this.value=t))})):i?(n=C.valHooks[i.type]||C.valHooks[i.nodeName.toLowerCase()])&&"get"in n&&void 0!==(t=n.get(i,"value"))?t:"string"==typeof(t=i.value)?t.replace(ae,""):null==t?"":t:void 0}}),C.extend({valHooks:{option:{get:function(t){var e=C.find.attr(t,"value");return null!=e?e:C.trim(C.text(t)).replace(ue," ")}},select:{get:function(t){for(var e,n=t.options,r=t.selectedIndex,i="select-one"===t.type||r<0,o=i?null:[],s=i?r+1:n.length,a=r<0?s:i?r:0;a<s;a++)if(((e=n[a]).selected||a===r)&&(m.optDisabled?!e.disabled:null===e.getAttribute("disabled"))&&(!e.parentNode.disabled||!C.nodeName(e.parentNode,"optgroup"))){if(e=C(e).val(),i)return e;o.push(e)}return o},set:function(t,e){for(var n,r,i=t.options,o=C.makeArray(e),s=i.length;s--;)((r=i[s]).selected=-1<C.inArray(C.valHooks.option.get(r),o))&&(n=!0);return n||(t.selectedIndex=-1),o}}}}),C.each(["radio","checkbox"],function(){C.valHooks[this]={set:function(t,e){return C.isArray(e)?t.checked=-1<C.inArray(C(t).val(),e):void 0}},m.checkOn||(C.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})});var ce=/^(?:focusinfocus|focusoutblur)$/;C.extend(C.event,{trigger:function(t,e,n,r){var i,o,s,a,u,c,l=[n||x],h=d.call(t,"type")?t.type:t,f=d.call(t,"namespace")?t.namespace.split("."):[],p=o=n=n||x;if(3!==n.nodeType&&8!==n.nodeType&&!ce.test(h+C.event.triggered)&&(-1<h.indexOf(".")&&(h=(f=h.split(".")).shift(),f.sort()),a=h.indexOf(":")<0&&"on"+h,(t=t[C.expando]?t:new C.Event(h,"object"==typeof t&&t)).isTrigger=r?2:3,t.namespace=f.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=n),e=null==e?[t]:C.makeArray(e,[t]),c=C.event.special[h]||{},r||!c.trigger||!1!==c.trigger.apply(n,e))){if(!r&&!c.noBubble&&!C.isWindow(n)){for(s=c.delegateType||h,ce.test(s+h)||(p=p.parentNode);p;p=p.parentNode)l.push(p),o=p;o===(n.ownerDocument||x)&&l.push(o.defaultView||o.parentWindow||_)}for(i=0;(p=l[i++])&&!t.isPropagationStopped();)t.type=1<i?s:c.bindType||h,(u=(W.get(p,"events")||{})[t.type]&&W.get(p,"handle"))&&u.apply(p,e),(u=a&&p[a])&&u.apply&&N(p)&&(t.result=u.apply(p,e),!1===t.result&&t.preventDefault());return t.type=h,r||t.isDefaultPrevented()||c._default&&!1!==c._default.apply(l.pop(),e)||!N(n)||a&&C.isFunction(n[h])&&!C.isWindow(n)&&((o=n[a])&&(n[a]=null),n[C.event.triggered=h](),C.event.triggered=void 0,o&&(n[a]=o)),t.result}},simulate:function(t,e,n){t=C.extend(new C.Event,n,{type:t,isSimulated:!0});C.event.trigger(t,null,e)}}),C.fn.extend({trigger:function(t,e){return this.each(function(){C.event.trigger(t,e,this)})},triggerHandler:function(t,e){var n=this[0];return n?C.event.trigger(t,e,n,!0):void 0}}),C.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(t,n){C.fn[n]=function(t,e){return 0<arguments.length?this.on(n,null,t,e):this.trigger(n)}}),C.fn.extend({hover:function(t,e){return this.mouseenter(t).mouseleave(e||t)}}),m.focusin="onfocusin"in _,m.focusin||C.each({focus:"focusin",blur:"focusout"},function(n,r){function i(t){C.event.simulate(r,t.target,C.event.fix(t))}C.event.special[r]={setup:function(){var t=this.ownerDocument||this,e=W.access(t,r);e||t.addEventListener(n,i,!0),W.access(t,r,(e||0)+1)},teardown:function(){var t=this.ownerDocument||this,e=W.access(t,r)-1;e?W.access(t,r,e):(t.removeEventListener(n,i,!0),W.remove(t,r))}}});var le=_.location,he=C.now(),fe=/\?/;C.parseJSON=function(t){return JSON.parse(t+"")},C.parseXML=function(t){var e;if(!t||"string"!=typeof t)return null;try{e=(new _.DOMParser).parseFromString(t,"text/xml")}catch(t){e=void 0}return e&&!e.getElementsByTagName("parsererror").length||C.error("Invalid XML: "+t),e};var pe=/#.*$/,de=/([?&])_=[^&]*/,ge=/^(.*?):[ \t]*([^\r\n]*)$/gm,me=/^(?:GET|HEAD)$/,ve=/^\/\//,ye={},be={},we="*/".concat("*"),_e=x.createElement("a");function xe(o){return function(t,e){"string"!=typeof t&&(e=t,t="*");var n,r=0,i=t.toLowerCase().match(P)||[];if(C.isFunction(e))for(;n=i[r++];)"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(e)):(o[n]=o[n]||[]).push(e)}}function Ce(e,r,i,o){var s={},a=e===be;function u(t){var n;return s[t]=!0,C.each(e[t]||[],function(t,e){e=e(r,i,o);return"string"!=typeof e||a||s[e]?a?!(n=e):void 0:(r.dataTypes.unshift(e),u(e),!1)}),n}return u(r.dataTypes[0])||!s["*"]&&u("*")}function ke(t,e){var n,r,i=C.ajaxSettings.flatOptions||{};for(n in e)void 0!==e[n]&&((i[n]?t:r=r||{})[n]=e[n]);return r&&C.extend(!0,t,r),t}_e.href=le.href,C.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:le.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(le.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":we,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":C.parseJSON,"text xml":C.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?ke(ke(t,C.ajaxSettings),e):ke(C.ajaxSettings,t)},ajaxPrefilter:xe(ye),ajaxTransport:xe(be),ajax:function(t,e){"object"==typeof t&&(e=t,t=void 0);var u,c,l,n,h,f,r,p=C.ajaxSetup({},e=e||{}),d=p.context||p,g=p.context&&(d.nodeType||d.jquery)?C(d):C.event,m=C.Deferred(),v=C.Callbacks("once memory"),y=p.statusCode||{},i={},o={},b=0,s="canceled",w={readyState:0,getResponseHeader:function(t){var e;if(2===b){if(!n)for(n={};e=ge.exec(l);)n[e[1].toLowerCase()]=e[2];e=n[t.toLowerCase()]}return null==e?null:e},getAllResponseHeaders:function(){return 2===b?l:null},setRequestHeader:function(t,e){var n=t.toLowerCase();return b||(t=o[n]=o[n]||t,i[t]=e),this},overrideMimeType:function(t){return b||(p.mimeType=t),this},statusCode:function(t){if(t)if(b<2)for(var e in t)y[e]=[y[e],t[e]];else w.always(t[w.status]);return this},abort:function(t){t=t||s;return u&&u.abort(t),a(0,t),this}};if(m.promise(w).complete=v.add,w.success=w.done,w.error=w.fail,p.url=((t||p.url||le.href)+"").replace(pe,"").replace(ve,le.protocol+"//"),p.type=e.method||e.type||p.method||p.type,p.dataTypes=C.trim(p.dataType||"*").toLowerCase().match(P)||[""],null==p.crossDomain){t=x.createElement("a");try{t.href=p.url,t.href=t.href,p.crossDomain=_e.protocol+"//"+_e.host!=t.protocol+"//"+t.host}catch(t){p.crossDomain=!0}}if(p.data&&p.processData&&"string"!=typeof p.data&&(p.data=C.param(p.data,p.traditional)),Ce(ye,p,e,w),2===b)return w;for(r in(f=C.event&&p.global)&&0==C.active++&&C.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!me.test(p.type),c=p.url,p.hasContent||(p.data&&(c=p.url+=(fe.test(c)?"&":"?")+p.data,delete p.data),!1===p.cache&&(p.url=de.test(c)?c.replace(de,"$1_="+he++):c+(fe.test(c)?"&":"?")+"_="+he++)),p.ifModified&&(C.lastModified[c]&&w.setRequestHeader("If-Modified-Since",C.lastModified[c]),C.etag[c]&&w.setRequestHeader("If-None-Match",C.etag[c])),(p.data&&p.hasContent&&!1!==p.contentType||e.contentType)&&w.setRequestHeader("Content-Type",p.contentType),w.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+we+"; q=0.01":""):p.accepts["*"]),p.headers)w.setRequestHeader(r,p.headers[r]);if(p.beforeSend&&(!1===p.beforeSend.call(d,w,p)||2===b))return w.abort();for(r in s="abort",{success:1,error:1,complete:1})w[r](p[r]);if(u=Ce(be,p,e,w)){if(w.readyState=1,f&&g.trigger("ajaxSend",[w,p]),2===b)return w;p.async&&0<p.timeout&&(h=_.setTimeout(function(){w.abort("timeout")},p.timeout));try{b=1,u.send(i,a)}catch(t){if(!(b<2))throw t;a(-1,t)}}else a(-1,"No Transport");function a(t,e,n,r){var i,o,s,a=e;2!==b&&(b=2,h&&_.clearTimeout(h),u=void 0,l=r||"",w.readyState=0<t?4:0,r=200<=t&&t<300||304===t,n&&(s=function(t,e,n){for(var r,i,o,s,a=t.contents,u=t.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=t.mimeType||e.getResponseHeader("Content-Type"));if(r)for(i in a)if(a[i]&&a[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||t.converters[i+" "+u[0]]){o=i;break}s=s||i}o=o||s}return o?(o!==u[0]&&u.unshift(o),n[o]):void 0}(p,w,n)),s=function(t,e,n,r){var i,o,s,a,u,c={},l=t.dataTypes.slice();if(l[1])for(s in t.converters)c[s.toLowerCase()]=t.converters[s];for(o=l.shift();o;)if(t.responseFields[o]&&(n[t.responseFields[o]]=e),!u&&r&&t.dataFilter&&(e=t.dataFilter(e,t.dataType)),u=o,o=l.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(s=c[u+" "+o]||c["* "+o]))for(i in c)if(a=i.split(" "),a[1]===o&&(s=c[u+" "+a[0]]||c["* "+a[0]])){!0===s?s=c[i]:!0!==c[i]&&(o=a[0],l.unshift(a[1]));break}if(!0!==s)if(s&&t.throws)e=s(e);else try{e=s(e)}catch(t){return{state:"parsererror",error:s?t:"No conversion from "+u+" to "+o}}}return{state:"success",data:e}}(p,s,w,r),r?(p.ifModified&&((n=w.getResponseHeader("Last-Modified"))&&(C.lastModified[c]=n),(n=w.getResponseHeader("etag"))&&(C.etag[c]=n)),204===t||"HEAD"===p.type?a="nocontent":304===t?a="notmodified":(a=s.state,i=s.data,r=!(o=s.error))):(o=a,!t&&a||(a="error",t<0&&(t=0))),w.status=t,w.statusText=(e||a)+"",r?m.resolveWith(d,[i,a,w]):m.rejectWith(d,[w,a,o]),w.statusCode(y),y=void 0,f&&g.trigger(r?"ajaxSuccess":"ajaxError",[w,p,r?i:o]),v.fireWith(d,[w,a]),f&&(g.trigger("ajaxComplete",[w,p]),--C.active||C.event.trigger("ajaxStop")))}return w},getJSON:function(t,e,n){return C.get(t,e,n,"json")},getScript:function(t,e){return C.get(t,void 0,e,"script")}}),C.each(["get","post"],function(t,i){C[i]=function(t,e,n,r){return C.isFunction(e)&&(r=r||n,n=e,e=void 0),C.ajax(C.extend({url:t,type:i,dataType:r,data:e,success:n},C.isPlainObject(t)&&t))}}),C._evalUrl=function(t){return C.ajax({url:t,type:"GET",dataType:"script",async:!1,global:!1,throws:!0})},C.fn.extend({wrapAll:function(e){var t;return C.isFunction(e)?this.each(function(t){C(this).wrapAll(e.call(this,t))}):(this[0]&&(t=C(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var t=this;t.firstElementChild;)t=t.firstElementChild;return t}).append(this)),this)},wrapInner:function(n){return C.isFunction(n)?this.each(function(t){C(this).wrapInner(n.call(this,t))}):this.each(function(){var t=C(this),e=t.contents();e.length?e.wrapAll(n):t.append(n)})},wrap:function(e){var n=C.isFunction(e);return this.each(function(t){C(this).wrapAll(n?e.call(this,t):e)})},unwrap:function(){return this.parent().each(function(){C.nodeName(this,"body")||C(this).replaceWith(this.childNodes)}).end()}}),C.expr.filters.hidden=function(t){return!C.expr.filters.visible(t)},C.expr.filters.visible=function(t){return 0<t.offsetWidth||0<t.offsetHeight||0<t.getClientRects().length};var Se=/%20/g,Oe=/\[\]$/,Ee=/\r?\n/g,Te=/^(?:submit|button|image|reset|file)$/i,Ae=/^(?:input|select|textarea|keygen)/i;C.param=function(t,e){function n(t,e){e=C.isFunction(e)?e():null==e?"":e,i[i.length]=encodeURIComponent(t)+"="+encodeURIComponent(e)}var r,i=[];if(void 0===e&&(e=C.ajaxSettings&&C.ajaxSettings.traditional),C.isArray(t)||t.jquery&&!C.isPlainObject(t))C.each(t,function(){n(this.name,this.value)});else for(r in t)!function n(r,t,i,o){if(C.isArray(t))C.each(t,function(t,e){i||Oe.test(r)?o(r,e):n(r+"["+("object"==typeof e&&null!=e?t:"")+"]",e,i,o)});else if(i||"object"!==C.type(t))o(r,t);else for(var e in t)n(r+"["+e+"]",t[e],i,o)}(r,t[r],e,n);return i.join("&").replace(Se,"+")},C.fn.extend({serialize:function(){return C.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var t=C.prop(this,"elements");return t?C.makeArray(t):this}).filter(function(){var t=this.type;return this.name&&!C(this).is(":disabled")&&Ae.test(this.nodeName)&&!Te.test(t)&&(this.checked||!V.test(t))}).map(function(t,e){var n=C(this).val();return null==n?null:C.isArray(n)?C.map(n,function(t){return{name:e.name,value:t.replace(Ee,"\r\n")}}):{name:e.name,value:n.replace(Ee,"\r\n")}}).get()}}),C.ajaxSettings.xhr=function(){try{return new _.XMLHttpRequest}catch(t){}};var Ie={0:200,1223:204},je=C.ajaxSettings.xhr();m.cors=!!je&&"withCredentials"in je,m.ajax=je=!!je,C.ajaxTransport(function(i){var o,s;return m.cors||je&&!i.crossDomain?{send:function(t,e){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||t["X-Requested-With"]||(t["X-Requested-With"]="XMLHttpRequest"),t)r.setRequestHeader(n,t[n]);o=function(t){return function(){o&&(o=s=r.onload=r.onerror=r.onabort=r.onreadystatechange=null,"abort"===t?r.abort():"error"===t?"number"!=typeof r.status?e(0,"error"):e(r.status,r.statusText):e(Ie[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),s=r.onerror=o("error"),void 0!==r.onabort?r.onabort=s:r.onreadystatechange=function(){4===r.readyState&&_.setTimeout(function(){o&&s()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(t){if(o)throw t}},abort:function(){o&&o()}}:void 0}),C.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(t){return C.globalEval(t),t}}}),C.ajaxPrefilter("script",function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")}),C.ajaxTransport("script",function(n){var r,i;if(n.crossDomain)return{send:function(t,e){r=C("<script>").prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(t){r.remove(),i=null,t&&e("error"===t.type?404:200,t.type)}),x.head.appendChild(r[0])},abort:function(){i&&i()}}});var Pe=[],De=/(=)\?(?=&|$)|\?\?/;C.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var t=Pe.pop()||C.expando+"_"+he++;return this[t]=!0,t}}),C.ajaxPrefilter("json jsonp",function(t,e,n){var r,i,o,s=!1!==t.jsonp&&(De.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&De.test(t.data)&&"data");return s||"jsonp"===t.dataTypes[0]?(r=t.jsonpCallback=C.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(De,"$1"+r):!1!==t.jsonp&&(t.url+=(fe.test(t.url)?"&":"?")+t.jsonp+"="+r),t.converters["script json"]=function(){return o||C.error(r+" was not called"),o[0]},t.dataTypes[0]="json",i=_[r],_[r]=function(){o=arguments},n.always(function(){void 0===i?C(_).removeProp(r):_[r]=i,t[r]&&(t.jsonpCallback=e.jsonpCallback,Pe.push(r)),o&&C.isFunction(i)&&i(o[0]),o=i=void 0}),"script"):void 0}),C.parseHTML=function(t,e,n){if(!t||"string"!=typeof t)return null;"boolean"==typeof e&&(n=e,e=!1),e=e||x;var r=w.exec(t),n=!n&&[];return r?[e.createElement(r[1])]:(r=Z([t],e,n),n&&n.length&&C(n).remove(),C.merge([],r.childNodes))};var Ne=C.fn.load;function Re(t){return C.isWindow(t)?t:9===t.nodeType&&t.defaultView}C.fn.load=function(t,e,n){if("string"!=typeof t&&Ne)return Ne.apply(this,arguments);var r,i,o,s=this,a=t.indexOf(" ");return-1<a&&(r=C.trim(t.slice(a)),t=t.slice(0,a)),C.isFunction(e)?(n=e,e=void 0):e&&"object"==typeof e&&(i="POST"),0<s.length&&C.ajax({url:t,type:i||"GET",dataType:"html",data:e}).done(function(t){o=arguments,s.html(r?C("<div>").append(C.parseHTML(t)).find(r):t)}).always(n&&function(t,e){s.each(function(){n.apply(this,o||[t.responseText,e,t])})}),this},C.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(t,e){C.fn[e]=function(t){return this.on(e,t)}}),C.expr.filters.animated=function(e){return C.grep(C.timers,function(t){return e===t.elem}).length},C.offset={setOffset:function(t,e,n){var r,i,o,s,a=C.css(t,"position"),u=C(t),c={};"static"===a&&(t.style.position="relative"),o=u.offset(),r=C.css(t,"top"),s=C.css(t,"left"),s=("absolute"===a||"fixed"===a)&&-1<(r+s).indexOf("auto")?(i=(a=u.position()).top,a.left):(i=parseFloat(r)||0,parseFloat(s)||0),null!=(e=C.isFunction(e)?e.call(t,n,C.extend({},o)):e).top&&(c.top=e.top-o.top+i),null!=e.left&&(c.left=e.left-o.left+s),"using"in e?e.using.call(t,c):u.css(c)}},C.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){C.offset.setOffset(this,e,t)});var t,n=this[0],r={top:0,left:0},i=n&&n.ownerDocument;return i?(t=i.documentElement,C.contains(t,n)?(r=n.getBoundingClientRect(),i=Re(i),{top:r.top+i.pageYOffset-t.clientTop,left:r.left+i.pageXOffset-t.clientLeft}):r):void 0},position:function(){if(this[0]){var t,e,n=this[0],r={top:0,left:0};return"fixed"===C.css(n,"position")?e=n.getBoundingClientRect():(t=this.offsetParent(),e=this.offset(),(r=!C.nodeName(t[0],"html")?t.offset():r).top+=C.css(t[0],"borderTopWidth",!0),r.left+=C.css(t[0],"borderLeftWidth",!0)),{top:e.top-r.top-C.css(n,"marginTop",!0),left:e.left-r.left-C.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var t=this.offsetParent;t&&"static"===C.css(t,"position");)t=t.offsetParent;return t||Pt})}}),C.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,i){var o="pageYOffset"===i;C.fn[e]=function(t){return R(this,function(t,e,n){var r=Re(t);return void 0===n?r?r[i]:t[e]:void(r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):t[e]=n)},e,t,arguments.length)}}),C.each(["top","left"],function(t,n){C.cssHooks[n]=Rt(m.pixelPosition,function(t,e){return e?(e=Nt(t,n),It.test(e)?C(t).position()[n]+"px":e):void 0})}),C.each({Height:"height",Width:"width"},function(o,s){C.each({padding:"inner"+o,content:s,"":"outer"+o},function(r,t){C.fn[t]=function(t,e){var n=arguments.length&&(r||"boolean"!=typeof t),i=r||(!0===t||!0===e?"margin":"border");return R(this,function(t,e,n){var r;return C.isWindow(t)?t.document.documentElement["client"+o]:9===t.nodeType?(r=t.documentElement,Math.max(t.body["scroll"+o],r["scroll"+o],t.body["offset"+o],r["offset"+o],r["client"+o])):void 0===n?C.css(t,e,i):C.style(t,e,n,i)},s,n?t:void 0,n,null)}})}),C.fn.extend({bind:function(t,e,n){return this.on(t,null,e,n)},unbind:function(t,e){return this.off(t,null,e)},delegate:function(t,e,n,r){return this.on(e,t,n,r)},undelegate:function(t,e,n){return 1===arguments.length?this.off(t,"**"):this.off(e,t||"**",n)},size:function(){return this.length}}),C.fn.andSelf=C.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return C});var Me=_.jQuery,We=_.$;return C.noConflict=function(t){return _.$===C&&(_.$=We),t&&_.jQuery===C&&(_.jQuery=Me),C},t||(_.jQuery=_.$=C),C}),function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).uuid={})}(this,function(t){"use strict";var e,n=new Uint8Array(16);function l(){if(!e&&!(e="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return e(n)}var r=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function i(t){return"string"==typeof t&&r.test(t)}for(var h,f,o=[],s=0;s<256;++s)o.push((s+256).toString(16).substr(1));function p(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0,e=(o[t[e+0]]+o[t[e+1]]+o[t[e+2]]+o[t[e+3]]+"-"+o[t[e+4]]+o[t[e+5]]+"-"+o[t[e+6]]+o[t[e+7]]+"-"+o[t[e+8]]+o[t[e+9]]+"-"+o[t[e+10]]+o[t[e+11]]+o[t[e+12]]+o[t[e+13]]+o[t[e+14]]+o[t[e+15]]).toLowerCase();if(!i(e))throw TypeError("Stringified UUID is invalid");return e}var d=0,g=0;function u(t){if(!i(t))throw TypeError("Invalid UUID");var e,n=new Uint8Array(16);return n[0]=(e=parseInt(t.slice(0,8),16))>>>24,n[1]=e>>>16&255,n[2]=e>>>8&255,n[3]=255&e,n[4]=(e=parseInt(t.slice(9,13),16))>>>8,n[5]=255&e,n[6]=(e=parseInt(t.slice(14,18),16))>>>8,n[7]=255&e,n[8]=(e=parseInt(t.slice(19,23),16))>>>8,n[9]=255&e,n[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,n[11]=e/4294967296&255,n[12]=e>>>24&255,n[13]=e>>>16&255,n[14]=e>>>8&255,n[15]=255&e,n}function a(t,s,a){function e(t,e,n,r){if("string"==typeof t&&(t=function(t){t=unescape(encodeURIComponent(t));for(var e=[],n=0;n<t.length;++n)e.push(t.charCodeAt(n));return e}(t)),16!==(e="string"==typeof e?u(e):e).length)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var i=new Uint8Array(16+t.length);if(i.set(e),i.set(t,e.length),(i=a(i))[6]=15&i[6]|s,i[8]=63&i[8]|128,n){r=r||0;for(var o=0;o<16;++o)n[r+o]=i[o];return n}return p(i)}try{e.name=t}catch(t){}return e.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",e.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",e}function m(t){return 14+(t+64>>>9<<4)+1}function v(t,e){var n=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(n>>16)<<16|65535&n}function c(t,e,n,r,i,o){return v((o=v(v(e,t),v(r,o)))<<i|o>>>32-i,n)}function y(t,e,n,r,i,o,s){return c(e&n|~e&r,t,e,i,o,s)}function b(t,e,n,r,i,o,s){return c(e&r|n&~r,t,e,i,o,s)}function w(t,e,n,r,i,o,s){return c(e^n^r,t,e,i,o,s)}function _(t,e,n,r,i,o,s){return c(n^(e|~r),t,e,i,o,s)}var x=a("v3",48,function(t){if("string"==typeof t){var e=unescape(encodeURIComponent(t));t=new Uint8Array(e.length);for(var n=0;n<e.length;++n)t[n]=e.charCodeAt(n)}return function(t){for(var e=[],n=32*t.length,r="0123456789abcdef",i=0;i<n;i+=8){var o=t[i>>5]>>>i%32&255,o=parseInt(r.charAt(o>>>4&15)+r.charAt(15&o),16);e.push(o)}return e}(function(t,e){t[e>>5]|=128<<e%32,t[m(e)-1]=e;for(var n=1732584193,r=-271733879,i=-1732584194,o=271733878,s=0;s<t.length;s+=16){var a=n,u=r,c=i,l=o,n=y(n,r,i,o,t[s],7,-680876936),o=y(o,n,r,i,t[s+1],12,-389564586),i=y(i,o,n,r,t[s+2],17,606105819),r=y(r,i,o,n,t[s+3],22,-1044525330);n=y(n,r,i,o,t[s+4],7,-176418897),o=y(o,n,r,i,t[s+5],12,1200080426),i=y(i,o,n,r,t[s+6],17,-1473231341),r=y(r,i,o,n,t[s+7],22,-45705983),n=y(n,r,i,o,t[s+8],7,1770035416),o=y(o,n,r,i,t[s+9],12,-1958414417),i=y(i,o,n,r,t[s+10],17,-42063),r=y(r,i,o,n,t[s+11],22,-1990404162),n=y(n,r,i,o,t[s+12],7,1804603682),o=y(o,n,r,i,t[s+13],12,-40341101),i=y(i,o,n,r,t[s+14],17,-1502002290),n=b(n,r=y(r,i,o,n,t[s+15],22,1236535329),i,o,t[s+1],5,-165796510),o=b(o,n,r,i,t[s+6],9,-1069501632),i=b(i,o,n,r,t[s+11],14,643717713),r=b(r,i,o,n,t[s],20,-373897302),n=b(n,r,i,o,t[s+5],5,-701558691),o=b(o,n,r,i,t[s+10],9,38016083),i=b(i,o,n,r,t[s+15],14,-660478335),r=b(r,i,o,n,t[s+4],20,-405537848),n=b(n,r,i,o,t[s+9],5,568446438),o=b(o,n,r,i,t[s+14],9,-1019803690),i=b(i,o,n,r,t[s+3],14,-187363961),r=b(r,i,o,n,t[s+8],20,1163531501),n=b(n,r,i,o,t[s+13],5,-1444681467),o=b(o,n,r,i,t[s+2],9,-51403784),i=b(i,o,n,r,t[s+7],14,1735328473),n=w(n,r=b(r,i,o,n,t[s+12],20,-1926607734),i,o,t[s+5],4,-378558),o=w(o,n,r,i,t[s+8],11,-2022574463),i=w(i,o,n,r,t[s+11],16,1839030562),r=w(r,i,o,n,t[s+14],23,-35309556),n=w(n,r,i,o,t[s+1],4,-1530992060),o=w(o,n,r,i,t[s+4],11,1272893353),i=w(i,o,n,r,t[s+7],16,-155497632),r=w(r,i,o,n,t[s+10],23,-1094730640),n=w(n,r,i,o,t[s+13],4,681279174),o=w(o,n,r,i,t[s],11,-358537222),i=w(i,o,n,r,t[s+3],16,-722521979),r=w(r,i,o,n,t[s+6],23,76029189),n=w(n,r,i,o,t[s+9],4,-640364487),o=w(o,n,r,i,t[s+12],11,-421815835),i=w(i,o,n,r,t[s+15],16,530742520),n=_(n,r=w(r,i,o,n,t[s+2],23,-995338651),i,o,t[s],6,-198630844),o=_(o,n,r,i,t[s+7],10,1126891415),i=_(i,o,n,r,t[s+14],15,-1416354905),r=_(r,i,o,n,t[s+5],21,-57434055),n=_(n,r,i,o,t[s+12],6,1700485571),o=_(o,n,r,i,t[s+3],10,-1894986606),i=_(i,o,n,r,t[s+10],15,-1051523),r=_(r,i,o,n,t[s+1],21,-2054922799),n=_(n,r,i,o,t[s+8],6,1873313359),o=_(o,n,r,i,t[s+15],10,-30611744),i=_(i,o,n,r,t[s+6],15,-1560198380),r=_(r,i,o,n,t[s+13],21,1309151649),n=_(n,r,i,o,t[s+4],6,-145523070),o=_(o,n,r,i,t[s+11],10,-1120210379),i=_(i,o,n,r,t[s+2],15,718787259),r=_(r,i,o,n,t[s+9],21,-343485551),n=v(n,a),r=v(r,u),i=v(i,c),o=v(o,l)}return[n,r,i,o]}(function(t){if(0===t.length)return[];for(var e=8*t.length,n=new Uint32Array(m(e)),r=0;r<e;r+=8)n[r>>5]|=(255&t[r/8])<<r%32;return n}(t),8*t.length))});function C(t,e){return t<<e|t>>>32-e}var k=a("v5",80,function(t){var e=[1518500249,1859775393,2400959708,3395469782],n=[1732584193,4023233417,2562383102,271733878,3285377520];if("string"==typeof t){var r=unescape(encodeURIComponent(t));t=[];for(var i=0;i<r.length;++i)t.push(r.charCodeAt(i))}else Array.isArray(t)||(t=Array.prototype.slice.call(t));t.push(128);for(var o=t.length/4+2,s=Math.ceil(o/16),a=new Array(s),u=0;u<s;++u){for(var c=new Uint32Array(16),l=0;l<16;++l)c[l]=t[64*u+4*l]<<24|t[64*u+4*l+1]<<16|t[64*u+4*l+2]<<8|t[64*u+4*l+3];a[u]=c}a[s-1][14]=8*(t.length-1)/Math.pow(2,32),a[s-1][14]=Math.floor(a[s-1][14]),a[s-1][15]=8*(t.length-1)&4294967295;for(var h=0;h<s;++h){for(var f=new Uint32Array(80),p=0;p<16;++p)f[p]=a[h][p];for(var d=16;d<80;++d)f[d]=C(f[d-3]^f[d-8]^f[d-14]^f[d-16],1);for(var g=n[0],m=n[1],v=n[2],y=n[3],b=n[4],w=0;w<80;++w)var _=Math.floor(w/20),_=C(g,5)+function(t,e,n,r){switch(t){case 0:return e&n^~e&r;case 1:return e^n^r;case 2:return e&n^e&r^n&r;case 3:return e^n^r}}(_,m,v,y)+b+e[_]+f[w]>>>0,b=y,y=v,v=C(m,30)>>>0,m=g,g=_;n[0]=n[0]+g>>>0,n[1]=n[1]+m>>>0,n[2]=n[2]+v>>>0,n[3]=n[3]+y>>>0,n[4]=n[4]+b>>>0}return[n[0]>>24&255,n[0]>>16&255,n[0]>>8&255,255&n[0],n[1]>>24&255,n[1]>>16&255,n[1]>>8&255,255&n[1],n[2]>>24&255,n[2]>>16&255,n[2]>>8&255,255&n[2],n[3]>>24&255,n[3]>>16&255,n[3]>>8&255,255&n[3],n[4]>>24&255,n[4]>>16&255,n[4]>>8&255,255&n[4]]});t.NIL="00000000-0000-0000-0000-000000000000",t.parse=u,t.stringify=p,t.v1=function(t,e,n){var r=e&&n||0,i=e||new Array(16),o=(t=t||{}).node||h,s=void 0!==t.clockseq?t.clockseq:f;null!=o&&null!=s||(u=t.random||(t.rng||l)(),null==o&&(o=h=[1|u[0],u[1],u[2],u[3],u[4],u[5]]),null==s&&(s=f=16383&(u[6]<<8|u[7])));var a=void 0!==t.msecs?t.msecs:Date.now(),n=void 0!==t.nsecs?t.nsecs:g+1,u=a-d+(n-g)/1e4;if(u<0&&void 0===t.clockseq&&(s=s+1&16383),1e4<=(n=(u<0||d<a)&&void 0===t.nsecs?0:n))throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");d=a,f=s;n=(1e4*(268435455&(a+=122192928e5))+(g=n))%4294967296;i[r++]=n>>>24&255,i[r++]=n>>>16&255,i[r++]=n>>>8&255,i[r++]=255&n;a=a/4294967296*1e4&268435455;i[r++]=a>>>8&255,i[r++]=255&a,i[r++]=a>>>24&15|16,i[r++]=a>>>16&255,i[r++]=s>>>8|128,i[r++]=255&s;for(var c=0;c<6;++c)i[r+c]=o[c];return e||p(i)},t.v3=x,t.v4=function(t,e,n){var r=(t=t||{}).random||(t.rng||l)();if(r[6]=15&r[6]|64,r[8]=63&r[8]|128,e){n=n||0;for(var i=0;i<16;++i)e[n+i]=r[i];return e}return p(r)},t.v5=k,t.validate=i,t.version=function(t){if(!i(t))throw TypeError("Invalid UUID");return parseInt(t.substr(14,1),16)},Object.defineProperty(t,"__esModule",{value:!0})}),function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.clipboard=e():t.clipboard=e()}(this,function(){return i={},r.m=n=[function(t,e,n){"use strict";function o(t){var e=new v,t=function(n,t,r){f("listener called"),n.success=!0,t.forEach(function(t,e){r.clipboardData.setData(e,t),e===g&&r.clipboardData.getData(e)!=t&&(f("setting text/plain failed"),n.success=!1)}),r.preventDefault()}.bind(this,e,t);document.addEventListener("copy",t);try{document.execCommand("copy")}finally{document.removeEventListener("copy",t)}return e.success}function s(t,e){a(t);e=o(e);return u(),e}function a(t){var e=document.getSelection(),n=document.createRange();n.selectNodeContents(t),e.removeAllRanges(),e.addRange(n)}function u(){document.getSelection().removeAllRanges()}function c(){return"undefined"==typeof ClipboardEvent&&void 0!==window.clipboardData&&void 0!==window.clipboardData.setData}function r(){return new h(function(t,e){var n=window.clipboardData.getData("Text");""===n?e(new Error("Empty clipboard or could not read plain text from clipboard")):t(n)})}Object.defineProperty(e,"__esModule",{value:!0});var i=n(1),l=n(5),h="undefined"==typeof Promise?i.Promise:Promise,f=function(t){},p=!0,d=function(){(console.warn||console.log).call(arguments)}.bind(console,"[clipboard-polyfill]"),g="text/plain",i=(m.setDebugLog=function(t){f=t},m.suppressWarnings=function(){p=!1,l.suppressDTWarnings()},m.write=function(i){return p&&!i.getData(g)&&d("clipboard.write() was called without a `text/plain` data type. On some platforms, this may result in an empty clipboard. Call clipboard.suppressWarnings() to suppress this warning."),new h(function(t,e){if(c())(function(t){if(void 0!==(t=t.getData(g)))return window.clipboardData.setData("Text",t);throw"No `text/plain` value was specified."})(i)?t():e(new Error("Copying failed, possibly because the user rejected it."));else{if(o(i))return f("regular execCopy worked"),void t();if(-1<navigator.userAgent.indexOf("Edge"))return f('UA "Edge" => assuming success'),void t();if(s(document.body,i))return f("copyUsingTempSelection worked"),void t();if(r=i,(n=document.createElement("div")).setAttribute("style","-webkit-user-select: text !important"),n.textContent="temporary element",document.body.appendChild(n),r=s(n,r),document.body.removeChild(n),r)return f("copyUsingTempElem worked"),void t();var n,r=i.getData(g);if(void 0!==r&&function(t){f("copyTextUsingDOM");var e=document.createElement("div");e.setAttribute("style","-webkit-user-select: text !important");var n=e;e.attachShadow&&(f("Using shadow DOM."),n=e.attachShadow({mode:"open"}));var r=document.createElement("span");return r.innerText=t,n.appendChild(r),document.body.appendChild(e),a(r),r=document.execCommand("copy"),u(),document.body.removeChild(e),r}(r))return f("copyTextUsingDOM worked"),void t();e(new Error("Copy command failed."))}})},m.writeText=function(t){if(navigator.clipboard&&navigator.clipboard.writeText)return navigator.clipboard.writeText(t);var e=new l.DT;return e.setData(g,t),this.write(e)},m.read=function(){return new h(function(n,t){c()?r().then(function(t){return n((e=t,(t=new l.DT).setData(g,e),t));var e},t):t("Read is not supported in your browser.")})},m.readText=function(){return navigator.clipboard&&navigator.clipboard.readText?navigator.clipboard.readText():c()?r():new h(function(t,e){e("Read is not supported in your browser.")})},m.DT=l.DT,m);function m(){}e.default=i;var v=function(){this.success=!1};t.exports=i},function(t,e,st){!function(it,ot){t.exports=function(){"use strict";function n(t){var e=typeof t;return null!==t&&("object"===e||"function"===e)}function c(t){return"function"==typeof t}function t(t){q=t}function e(t){z=t}function r(){return void 0!==B?function(){B(o)}:i()}function i(){var t=setTimeout;return function(){return t(o,1)}}function o(){for(var t=0;t<H;t+=2)(0,Y[t])(Y[t+1]),Y[t]=void 0,Y[t+1]=void 0;H=0}function s(t,e){var n=arguments,r=this,i=new this.constructor(u);void 0===i[Q]&&T(i);var o=r._state;return o?function(){var t=n[o-1];z(function(){return S(o,i,t,r._result)})}():_(r,i,t,e),i}function a(t){var e=this;if(t&&"object"==typeof t&&t.constructor===e)return t;var n=new e(u);return v(n,t),n}function u(){}function l(){return new TypeError("You cannot resolve a promise with itself")}function h(){return new TypeError("A promises callback cannot return that same promise.")}function f(t){try{return t.then}catch(t){return et.error=t,et}}function p(t,e,n,r){try{t.call(e,n,r)}catch(t){return t}}function d(t,r,i){z(function(e){var n=!1,t=p(i,r,function(t){n||(n=!0,r!==t?v(e,t):b(e,t))},function(t){n||(n=!0,w(e,t))},"Settle: "+(e._label||" unknown promise"));!n&&t&&(n=!0,w(e,t))},t)}function g(e,t){t._state===Z?b(e,t._result):t._state===tt?w(e,t._result):_(t,void 0,function(t){return v(e,t)},function(t){return w(e,t)})}function m(t,e,n){e.constructor===t.constructor&&n===s&&e.constructor.resolve===a?g(t,e):n===et?(w(t,et.error),et.error=null):void 0===n?b(t,e):c(n)?d(t,e,n):b(t,e)}function v(t,e){t===e?w(t,l()):n(e)?m(t,e,f(e)):b(t,e)}function y(t){t._onerror&&t._onerror(t._result),x(t)}function b(t,e){t._state===J&&(t._result=e,t._state=Z,0!==t._subscribers.length&&z(x,t))}function w(t,e){t._state===J&&(t._state=tt,t._result=e,z(y,t))}function _(t,e,n,r){var i=t._subscribers,o=i.length;t._onerror=null,i[o]=e,i[o+Z]=n,i[o+tt]=r,0===o&&t._state&&z(x,t)}function x(t){var e=t._subscribers,n=t._state;if(0!==e.length){for(var r=void 0,i=void 0,o=t._result,s=0;s<e.length;s+=3)r=e[s],i=e[s+n],r?S(n,r,i,o):i(o);t._subscribers.length=0}}function C(){this.error=null}function k(t,e){try{return t(e)}catch(t){return nt.error=t,nt}}function S(t,e,n,r){var i=c(n),o=void 0,s=void 0,a=void 0,u=void 0;if(i){if(o=k(n,r),o===nt?(u=!0,s=o.error,o.error=null):a=!0,e===o)return void w(e,h())}else o=r,a=!0;e._state!==J||(i&&a?v(e,o):u?w(e,s):t===Z?b(e,o):t===tt&&w(e,o))}function O(e,t){try{t(function(t){v(e,t)},function(t){w(e,t)})}catch(t){w(e,t)}}function E(){return rt++}function T(t){t[Q]=rt++,t._state=void 0,t._result=void 0,t._subscribers=[]}function A(t,e){this._instanceConstructor=t,this.promise=new t(u),this.promise[Q]||T(this.promise),F(e)?(this.length=e.length,this._remaining=e.length,this._result=new Array(this.length),0===this.length?b(this.promise,this._result):(this.length=this.length||0,this._enumerate(e),0===this._remaining&&b(this.promise,this._result))):w(this.promise,I())}function I(){return new Error("Array Methods must be provided an Array")}function j(t){return new A(this,t).promise}function P(i){var o=this;return new o(F(i)?function(t,e){for(var n=i.length,r=0;r<n;r++)o.resolve(i[r]).then(t,e)}:function(t,e){return e(new TypeError("You must pass an array to race."))})}function D(t){var e=this,n=new e(u);return w(n,t),n}function N(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}function R(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}function M(t){this[Q]=E(),this._result=this._state=void 0,this._subscribers=[],u!==t&&("function"!=typeof t&&N(),this instanceof M?O(this,t):R())}function W(){var t=void 0;if(void 0!==ot)t=ot;else if("undefined"!=typeof self)t=self;else try{t=Function("return this")()}catch(t){throw new Error("polyfill failed because global object is unavailable in this environment")}var e=t.Promise;if(e){var n=null;try{n=Object.prototype.toString.call(e.resolve())}catch(t){}if("[object Promise]"===n&&!e.cast)return}t.Promise=M}var L=void 0,L,F=Array.isArray?Array.isArray:function(t){return"[object Array]"===Object.prototype.toString.call(t)},H=0,B=void 0,q=void 0,z=function(t,e){Y[H]=t,Y[H+1]=e,2===(H+=2)&&(q?q(o):K())},U="undefined"!=typeof window?window:void 0,G=U||{},V=G.MutationObserver||G.WebKitMutationObserver,$="undefined"==typeof self&&void 0!==it&&"[object process]"==={}.toString.call(it),X="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel,Y=new Array(1e3),K=void 0,K=$?function(){return function(){return it.nextTick(o)}}():V?function(){var t=0,e=new V(o),n=document.createTextNode("");return e.observe(n,{characterData:!0}),function(){n.data=t=++t%2}}():X?function(){var t=new MessageChannel;return t.port1.onmessage=o,function(){return t.port2.postMessage(0)}}():void 0===U?function(){try{var t=st(4);return B=t.runOnLoop||t.runOnContext,r()}catch(t){return i()}}():i(),Q=Math.random().toString(36).substring(16),J=void 0,Z=1,tt=2,et=new C,nt=new C,rt=0;return A.prototype._enumerate=function(t){for(var e=0;this._state===J&&e<t.length;e++)this._eachEntry(t[e],e)},A.prototype._eachEntry=function(e,t){var n=this._instanceConstructor,r=n.resolve;if(r===a){var i=f(e);if(i===s&&e._state!==J)this._settledAt(e._state,t,e._result);else if("function"!=typeof i)this._remaining--,this._result[t]=e;else if(n===M){var o=new n(u);m(o,e,i),this._willSettleAt(o,t)}else this._willSettleAt(new n(function(t){return t(e)}),t)}else this._willSettleAt(r(e),t)},A.prototype._settledAt=function(t,e,n){var r=this.promise;r._state===J&&(this._remaining--,t===tt?w(r,n):this._result[e]=n),0===this._remaining&&b(r,this._result)},A.prototype._willSettleAt=function(t,e){var n=this;_(t,void 0,function(t){return n._settledAt(Z,e,t)},function(t){return n._settledAt(tt,e,t)})},M.all=j,M.race=P,M.resolve=a,M.reject=D,M._setScheduler=t,M._setAsap=e,M._asap=z,M.prototype={constructor:M,then:s,catch:function(t){return this.then(null,t)}},M.polyfill=W,M.Promise=M}()}.call(e,st(2),st(3))},function(t,e){function n(){throw new Error("setTimeout has not been defined")}function r(){throw new Error("clearTimeout has not been defined")}function i(e){if(c===setTimeout)return setTimeout(e,0);if((c===n||!c)&&setTimeout)return c=setTimeout,setTimeout(e,0);try{return c(e,0)}catch(t){try{return c.call(null,e,0)}catch(t){return c.call(this,e,0)}}}function o(){p&&h&&(p=!1,h.length?f=h.concat(f):d=-1,f.length&&s())}function s(){if(!p){var t=i(o);p=!0;for(var e=f.length;e;){for(h=f,f=[];++d<e;)h&&h[d].run();d=-1,e=f.length}h=null,p=!1,function(e){if(l===clearTimeout)return clearTimeout(e);if((l===r||!l)&&clearTimeout)return l=clearTimeout,clearTimeout(e);try{l(e)}catch(t){try{return l.call(null,e)}catch(t){return l.call(this,e)}}}(t)}}function a(t,e){this.fun=t,this.array=e}function u(){}var c,l,t=t.exports={};!function(){try{c="function"==typeof setTimeout?setTimeout:n}catch(t){c=n}try{l="function"==typeof clearTimeout?clearTimeout:r}catch(t){l=r}}();var h,f=[],p=!1,d=-1;t.nextTick=function(t){var e=new Array(arguments.length-1);if(1<arguments.length)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];f.push(new a(t,e)),1!==f.length||p||i(s)},a.prototype.run=function(){this.fun.apply(null,this.array)},t.title="browser",t.browser=!0,t.env={},t.argv=[],t.version="",t.versions={},t.on=u,t.addListener=u,t.once=u,t.off=u,t.removeListener=u,t.removeAllListeners=u,t.emit=u,t.prependListener=u,t.prependOnceListener=u,t.listeners=function(t){return[]},t.binding=function(t){throw new Error("process.binding is not supported")},t.cwd=function(){return"/"},t.chdir=function(t){throw new Error("process.chdir is not supported")},t.umask=function(){return 0}},function(t,e){var n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(n=window)}t.exports=n},function(t,e){},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=["text/plain","text/html"],i=function(){(console.warn||console.log).call(arguments)}.bind(console,"[clipboard-polyfill]"),o=!0;e.suppressDTWarnings=function(){o=!1};var s=(a.prototype.setData=function(t,e){o&&-1===r.indexOf(t)&&i("Unknown data type: "+t,"Call clipboard.suppressWarnings() to suppress this warning."),this.m[t]=e},a.prototype.getData=function(t){return this.m[t]},a.prototype.forEach=function(t){for(var e in this.m)t(this.m[e],e)},a);function a(){this.m={}}e.DT=s}],r.c=i,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:n})},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=0);function r(t){if(i[t])return i[t].exports;var e=i[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,r),e.l=!0,e.exports}var n,i}),function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof exports&&"object"==typeof module?module.exports=t(require("jquery")):t(jQuery)}(function(It,jt){"use strict";var t,Pt={beforeShow:n,move:n,change:n,show:n,hide:n,color:!1,flat:!1,showInput:!1,allowEmpty:!1,showButtons:!0,clickoutFiresChange:!0,showInitial:!1,showPalette:!1,showPaletteOnly:!1,hideAfterPaletteSelect:!1,togglePaletteOnly:!1,showSelectionPalette:!0,localStorageKey:!1,appendTo:"body",maxSelectionSize:7,cancelText:"cancel",chooseText:"choose",togglePaletteMoreText:"more",togglePaletteLessText:"less",clearText:"Clear Color Selection",noColorSelectedText:"No Color Selected",preferredFormat:!1,className:"",containerClassName:"",replacerClassName:"",showAlpha:!1,theme:"sp-light",palette:[["#ffffff","#000000","#ff0000","#ff8000","#ffff00","#008000","#0000ff","#4b0082","#9400d3"]],selectionPalette:[],disabled:!1,offset:null},Dt=[],Nt=!!/msie/i.exec(window.navigator.userAgent),Rt=((t=document.createElement("div").style).cssText="background-color:rgba(0,0,0,.5)",e(t.backgroundColor,"rgba")||e(t.backgroundColor,"hsla")),Mt=["<div class='sp-replacer'>","<div class='sp-preview'><div class='sp-preview-inner'></div></div>","<div class='sp-dd'>▼</div>","</div>"].join(""),Wt=function(){var t="";if(Nt)for(var e=1;e<=6;e++)t+="<div class='sp-"+e+"'></div>";return["<div class='sp-container sp-hidden'>","<div class='sp-palette-container'>","<div class='sp-palette sp-thumb sp-cf'></div>","<div class='sp-palette-button-container sp-cf'>","<button type='button' class='sp-palette-toggle'></button>","</div>","</div>","<div class='sp-picker-container'>","<div class='sp-top sp-cf'>","<div class='sp-fill'></div>","<div class='sp-top-inner'>","<div class='sp-color'>","<div class='sp-sat'>","<div class='sp-val'>","<div class='sp-dragger'></div>","</div>","</div>","</div>","<div class='sp-clear sp-clear-display'>","</div>","<div class='sp-hue'>","<div class='sp-slider'></div>",t,"</div>","</div>","<div class='sp-alpha'><div class='sp-alpha-inner'><div class='sp-alpha-handle'></div></div></div>","</div>","<div class='sp-input-container sp-cf'>","<input class='sp-input formulaInputFocus' type='text' spellcheck='false' />","</div>","<div class='sp-initial sp-thumb sp-cf'></div>","<div class='sp-button-container sp-cf'>","<a class='sp-cancel' href='#'></a>","<button type='button' class='sp-choose'></button>","</div>","</div>","</div>"].join("")}();function e(t,e){return!!~(""+t).indexOf(e)}function Lt(t,e,n,r){for(var i=[],o=0;o<t.length;o++){var s,a,u,c=t[o];c?(a=(s=tinycolor(c)).toHsl().l<.5?"sp-thumb-el sp-thumb-dark":"sp-thumb-el sp-thumb-light",a+=tinycolor.equals(e,c)?" sp-thumb-active":"",u=s.toString(r.preferredFormat||"rgb"),c=Rt?"background-color:"+s.toRgbString():"filter:"+s.toFilter(),i.push('<span title="'+u+'" data-color="'+s.toRgbString()+'" class="'+a+'"><span class="sp-thumb-inner" style="'+c+';" /></span>')):i.push(It("<div />").append(It('<span data-color="" style="background-color:transparent;" class="sp-clear-display"></span>').attr("title",r.noColorSelectedText)).html())}return"<div class='sp-cf "+n+"'>"+i.join("")+"</div>"}function o(t,e){var n,r,i,a=(i=t,(e=It.extend({},Pt,e)).callbacks={move:Ht(e.move,i),change:Ht(e.change,i),show:Ht(e.show,i),hide:Ht(e.hide,i),beforeShow:Ht(e.beforeShow,i)},e),u=a.flat,o=a.showSelectionPalette,s=a.localStorageKey,e=a.theme,c=a.callbacks,l=(n=Et,function(){var t=this,e=arguments;r=r||setTimeout(function(){r=null,n.apply(t,e)},10)}),h=!10,f=!1,p=0,d=0,g=0,m=0,v=0,y=0,b=0,w=0,_=0,x=0,C=1,k=[],S=[],O={},E=a.selectionPalette.slice(0),T=a.maxSelectionSize,A="sp-dragging",I=null,j=t.ownerDocument,P=(j.body,It(t)),D=!1,N=It(Wt,j).addClass(e),R=N.find(".sp-picker-container"),M=N.find(".sp-color"),W=N.find(".sp-dragger"),L=N.find(".sp-hue"),F=N.find(".sp-slider"),H=N.find(".sp-alpha-inner"),B=N.find(".sp-alpha"),q=N.find(".sp-alpha-handle"),z=N.find(".sp-input"),U=N.find(".sp-palette"),G=N.find(".sp-initial"),V=N.find(".sp-cancel"),$=N.find(".sp-clear"),X=N.find(".sp-choose"),Y=N.find(".sp-palette-toggle"),K=P.is("input"),t=K&&"color"===P.attr("type")&&qt(),Q=K&&!u,J=Q?It(Mt).addClass(e).addClass(a.className).addClass(a.replacerClassName):It([]),Z=Q?J:P,tt=J.find(".sp-preview-inner"),et=a.color||K&&P.val(),nt=!1,rt=a.preferredFormat,it=!a.showButtons||a.clickoutFiresChange,ot=!et,st=a.allowEmpty&&!t;function at(){if(a.showPaletteOnly&&(a.showPalette=!0),Y.text(a.showPaletteOnly?a.togglePaletteMoreText:a.togglePaletteLessText),a.palette){k=a.palette.slice(0),S=It.isArray(k[0])?k:[k],O={};for(var t=0;t<S.length;t++)for(var e=0;e<S[t].length;e++){var n=tinycolor(S[t][e]).toRgbString();O[n]=!0}}N.toggleClass("sp-flat",u),N.toggleClass("sp-input-disabled",!a.showInput),N.toggleClass("sp-alpha-enabled",a.showAlpha),N.toggleClass("sp-clear-enabled",st),N.toggleClass("sp-buttons-disabled",!a.showButtons),N.toggleClass("sp-palette-buttons-disabled",!a.togglePaletteOnly),N.toggleClass("sp-palette-disabled",!a.showPalette),N.toggleClass("sp-palette-only",a.showPaletteOnly),N.toggleClass("sp-initial-disabled",!a.showInitial),N.addClass(a.className).addClass(a.containerClassName),Et()}function ut(){if(s&&window.localStorage){try{var t=window.localStorage[s].split(",#");1<t.length&&(delete window.localStorage[s],It.each(t,function(t,e){ct(e)}))}catch(t){}try{E=window.localStorage[s].split(";")}catch(t){}}}function ct(t){if(o){var e=tinycolor(t).toRgbString();if(!O[e]&&-1===It.inArray(e,E))for(E.push(e);E.length>T;)E.shift();if(s&&window.localStorage)try{window.localStorage[s]=E.join(";")}catch(t){}}}function lt(){var n=xt(),t=It.map(S,function(t,e){return Lt(t,n,"sp-palette-row sp-palette-row-"+e,a)});ut(),E&&t.push(Lt(function(){var t=[];if(a.showPalette)for(var e=0;e<E.length;e++){var n=tinycolor(E[e]).toRgbString();O[n]||t.push(E[e])}return t.reverse().slice(0,a.maxSelectionSize)}(),n,"sp-palette-row sp-palette-row-selection",a)),U.html(t.join(""))}function ht(){var t,e;a.showInitial&&(t=nt,e=xt(),G.html(Lt([t,e],e,"sp-palette-row-initial",a)))}function ft(){(d<=0||p<=0||m<=0)&&Et(),f=!0,N.addClass(A),I=null,P.trigger("dragstart.spectrum",[xt()])}function pt(){f=!1,N.removeClass(A),P.trigger("dragstop.spectrum",[xt()])}function dt(){var t=z.val();null!==t&&""!==t||!st?(t=tinycolor(t)).isValid()?(_t(t),Ot(!0)):z.addClass("sp-validation-error"):(_t(null),Ot(!0))}function gt(){(h?bt:mt)()}function mt(){var t=It.Event("beforeShow.spectrum");h?Et():(P.trigger(t,[xt()]),!1===c.beforeShow(xt())||t.isDefaultPrevented()||(function(){for(var t=0;t<Dt.length;t++)Dt[t]&&Dt[t].hide()}(),h=!0,It(j).bind("keydown.spectrum",vt),It(j).bind("click.spectrum",yt),It(window).bind("resize.spectrum",l),J.addClass("sp-active"),N.removeClass("sp-hidden"),Et(),kt(),nt=xt(),ht(),c.show(nt),P.trigger("show.spectrum",[nt])))}function vt(t){27===t.keyCode&&bt()}function yt(t){2!=t.button&&(f||(it?Ot(!0):wt(),bt()))}function bt(){h&&!u&&(h=!1,It(j).unbind("keydown.spectrum",vt),It(j).unbind("click.spectrum",yt),It(window).unbind("resize.spectrum",l),J.removeClass("sp-active"),N.addClass("sp-hidden"),c.hide(xt()),P.trigger("hide.spectrum",[xt()]))}function wt(){_t(nt,!0)}function _t(t,e){var n;tinycolor.equals(t,xt())?kt():(!t&&st?ot=!0:(ot=!1,t=(n=tinycolor(t)).toHsv(),w=t.h%360/360,_=t.s,x=t.v,C=t.a),kt(),n&&n.isValid()&&!e&&(rt=a.preferredFormat||n.getFormat()))}function xt(t){return t=t||{},st&&ot?null:tinycolor.fromRatio({h:w,s:_,v:x,a:Math.round(100*C)/100},{format:t.format||rt})}function Ct(){kt(),c.move(xt()),P.trigger("move.spectrum",[xt()])}function kt(){z.removeClass("sp-validation-error"),St();var t=tinycolor.fromRatio({h:w,s:1,v:1});M.css("background-color",t.toHexString());var e=rt;C<1&&(0!==C||"name"!==e)&&("hex"!==e&&"hex3"!==e&&"hex6"!==e&&"name"!==e||(e="rgb"));var n,r,i=xt({format:e}),o="";tt.removeClass("sp-clear-display"),tt.css("background-color","transparent"),!i&&st?tt.addClass("sp-clear-display"):(n=i.toHexString(),r=i.toRgbString(),Rt||1===i.alpha?tt.css("background-color",r):(tt.css("background-color","transparent"),tt.css("filter",i.toFilter())),a.showAlpha&&((t=i.toRgb()).a=0,t="linear-gradient(left, "+(r=tinycolor(t).toRgbString())+", "+n+")",Nt?H.css("filter",tinycolor(r).toFilter({gradientType:1},n)):(H.css("background","-webkit-"+t),H.css("background","-moz-"+t),H.css("background","-ms-"+t),H.css("background","linear-gradient(to right, "+r+", "+n+")"))),o=i.toString(e)),a.showInput&&z.val(o),a.showPalette&<(),ht()}function St(){var t=_,e=x;st&&ot?(q.hide(),F.hide(),W.hide()):(q.show(),F.show(),W.show(),t=t*p,e=d-e*d,t=Math.max(-g,Math.min(p-g,t-g)),e=Math.max(-g,Math.min(d-g,e-g)),W.css({top:e+"px",left:t+"px"}),q.css({left:C*v-y/2+"px"}),F.css({top:w*m-b+"px"}))}function Ot(t){var e=xt(),n="";e&&(n=e.toString(rt),ct(e)),K&&P.val(n),t&&(c.change(e),P.trigger("change",[e]))}function Et(){var t,e,n,r,i,o,s;h&&(p=M.width(),d=M.height(),g=W.height(),L.width(),m=L.height(),b=F.height(),v=B.width(),y=q.width(),u||(N.css("position","absolute"),a.offset?N.offset(a.offset):N.offset((s=Z,t=(i=N).outerWidth(),e=i.outerHeight(),n=s.outerHeight(),i=(r=(o=i[0].ownerDocument).documentElement).clientWidth+It(o).scrollLeft(),o=r.clientHeight+It(o).scrollTop(),(s=s.offset()).top+=n,s.left-=Math.min(s.left,s.left+t>i&&t<i?Math.abs(s.left+t-i):0),s.top-=Math.min(s.top,s.top+e>o&&e<o?Math.abs(+(e+n)):0),s))),St(),a.showPalette&<(),P.trigger("reflow.spectrum"))}function Tt(){bt(),D=!0,P.attr("disabled",!0),Z.addClass("sp-disabled")}!function(){function t(t){return t.data&&t.data.ignore?(_t(It(t.target).closest(".sp-thumb-el").data("color")),Ct()):(_t(It(t.target).closest(".sp-thumb-el").data("color")),Ct(),Ot(!0),a.hideAfterPaletteSelect&&bt()),!1}Nt&&N.find("*:not(input)").attr("unselectable","on"),at(),Q&&P.after(J).hide(),st||$.hide(),u?P.after(N).hide():(e=1!==(e="parent"===a.appendTo?P.parent():It(a.appendTo)).length?It("body"):e).append(N),ut(),Z.bind("click.spectrum touchstart.spectrum",function(t){D||gt(),t.stopPropagation(),It(t.target).is("input")||t.preventDefault()}),!P.is(":disabled")&&!0!==a.disabled||Tt(),N.click(Ft),z.change(dt),z.bind("paste",function(){setTimeout(dt,1)}),z.keydown(function(t){13==t.keyCode&&dt()}),V.text(a.cancelText),V.bind("click.spectrum",function(t){t.stopPropagation(),t.preventDefault(),wt(),bt()}),$.attr("title",a.clearText),$.bind("click.spectrum",function(t){t.stopPropagation(),t.preventDefault(),ot=!0,Ct(),u&&Ot(!0)}),X.text(a.chooseText),X.bind("click.spectrum",function(t){t.stopPropagation(),t.preventDefault(),Nt&&z.is(":focus")&&z.trigger("change"),z.hasClass("sp-validation-error")||(Ot(!0),bt())}),Y.text(a.showPaletteOnly?a.togglePaletteMoreText:a.togglePaletteLessText),Y.bind("click.spectrum",function(t){t.stopPropagation(),t.preventDefault(),a.showPaletteOnly=!a.showPaletteOnly,a.showPaletteOnly||u||N.css("left","-="+(R.outerWidth(!0)+5)),at()}),Bt(B,function(t,e,n){C=t/v,ot=!1,n.shiftKey&&(C=Math.round(10*C)/10),Ct()},ft,pt),Bt(L,function(t,e){w=parseFloat(e/m),ot=!1,a.showAlpha||(C=1),Ct()},ft,pt),Bt(M,function(t,e,n){n.shiftKey?I||(r=d-x*d,r=Math.abs(t-_*p)>Math.abs(e-r),I=r?"x":"y"):I=null;var r=!I||"y"===I;I&&"x"!==I||(_=parseFloat(t/p)),r&&(x=parseFloat((d-e)/d)),ot=!1,a.showAlpha||(C=1),Ct()},ft,pt),et?(_t(et),kt(),rt=a.preferredFormat||tinycolor(et).format,ct(et)):kt(),u&&mt();var e=Nt?"mousedown.spectrum":"click.spectrum touchstart.spectrum";U.delegate(".sp-thumb-el",e,t),G.delegate(".sp-thumb-el:nth-child(1)",e,{ignore:!0},t)}();var At={show:mt,hide:bt,toggle:gt,reflow:Et,option:function(t,e){return t===jt?It.extend({},a):e===jt?a[t]:(a[t]=e,"preferredFormat"===t&&(rt=a.preferredFormat),void at())},enable:function(){D=!1,P.attr("disabled",!1),Z.removeClass("sp-disabled")},disable:Tt,offset:function(t){a.offset=t,Et()},set:function(t){_t(t),Ot()},get:xt,destroy:function(){P.show(),Z.unbind("click.spectrum touchstart.spectrum"),N.remove(),J.remove(),Dt[At.id]=null},container:N};return At.id=Dt.push(At)-1,At}function n(){}function Ft(t){t.stopPropagation()}function Ht(t,e){var n=Array.prototype.slice,r=n.call(arguments,2);return function(){return t.apply(e,r.concat(n.call(arguments)))}}function Bt(r,i,e,t){i=i||function(){},e=e||function(){},t=t||function(){};var o=document,s=!1,a={},u=0,c=0,l="ontouchstart"in window,n={};function h(t){t.stopPropagation&&t.stopPropagation(),t.preventDefault&&t.preventDefault(),t.returnValue=!1}function f(t){if(s){if(Nt&&o.documentMode<9&&!t.button)return p();var e=t.originalEvent&&t.originalEvent.touches&&t.originalEvent.touches[0],n=e&&e.pageX||t.pageX,e=e&&e.pageY||t.pageY,n=Math.max(0,Math.min(n-a.left,c)),e=Math.max(0,Math.min(e-a.top,u));l&&h(t),i.apply(r,[n,e,t])}}function p(){s&&(It(o).unbind(n),It(o.body).removeClass("sp-dragging"),setTimeout(function(){t.apply(r,arguments)},0)),s=!1}n.selectstart=h,n.dragstart=h,n["touchmove mousemove"]=f,n["touchend mouseup"]=p,It(r).bind("touchstart mousedown",function(t){(t.which?3==t.which:2==t.button)||s||!1!==e.apply(r,arguments)&&(s=!0,u=It(r).height(),c=It(r).width(),a=It(r).offset(),It(o).bind(n),It(o.body).addClass("sp-dragging"),f(t),h(t))})}function qt(){return It.fn.spectrum.inputTypeColorSupport()}var s="spectrum.id";It.fn.spectrum=function(n,t){if("string"!=typeof n)return this.spectrum("destroy").each(function(){var t=o(this,It.extend({},n,It(this).data()));It(this).data(s,t.id)});var r=this,i=Array.prototype.slice.call(arguments,1);return this.each(function(){var t=Dt[It(this).data(s)];if(t){var e=t[n];if(!e)throw new Error("Spectrum: no such method: '"+n+"'");"get"==n?r=t.get():"container"==n?r=t.container:"option"==n?r=t.option.apply(t,i):"destroy"==n?(t.destroy(),It(this).removeData(s)):e.apply(t,i)}}),r},It.fn.spectrum.load=!0,It.fn.spectrum.loadOpts={},It.fn.spectrum.draggable=Bt,It.fn.spectrum.defaults=Pt,It.fn.spectrum.inputTypeColorSupport=function t(){var e;return void 0===t._cachedResult&&(e=It("<input type='color'/>")[0],t._cachedResult="color"===e.type&&""!==e.value),t._cachedResult},It.spectrum={},It.spectrum.localization={},It.spectrum.palettes={},It.fn.spectrum.processNativeColorInputs=function(){var t=It("input[type=color]");t.length&&!qt()&&t.spectrum({preferredFormat:"hex6"})},function(){var d=/^[\s,#]+/,g=/\s+$/,m=0,v=Math,y=v.round,b=v.min,w=v.max,t=v.random,_=function(t,e){if(e=e||{},(t=t||"")instanceof _)return t;if(!(this instanceof _))return new _(t,e);var n,r,i,o,s,a,u,c,l,h,f,l=(c={r:0,g:0,b:0},f=h=!(l=1),"object"==typeof(n="string"==typeof(n=t)?function(t){t=t.replace(d,"").replace(g,"").toLowerCase();var e,n=!1;if(O[t])t=O[t],n=!0;else if("transparent"==t)return{r:0,g:0,b:0,a:0,format:"name"};return(e=M.rgb.exec(t))?{r:e[1],g:e[2],b:e[3]}:(e=M.rgba.exec(t))?{r:e[1],g:e[2],b:e[3],a:e[4]}:(e=M.hsl.exec(t))?{h:e[1],s:e[2],l:e[3]}:(e=M.hsla.exec(t))?{h:e[1],s:e[2],l:e[3],a:e[4]}:(e=M.hsv.exec(t))?{h:e[1],s:e[2],v:e[3]}:(e=M.hsva.exec(t))?{h:e[1],s:e[2],v:e[3],a:e[4]}:(e=M.hex8.exec(t))?{a:j(e[1])/255,r:j(e[2]),g:j(e[3]),b:j(e[4]),format:n?"name":"hex8"}:(e=M.hex6.exec(t))?{r:j(e[1]),g:j(e[2]),b:j(e[3]),format:n?"name":"hex"}:!!(e=M.hex3.exec(t))&&{r:j(e[1]+""+e[1]),g:j(e[2]+""+e[2]),b:j(e[3]+""+e[3]),format:n?"name":"hex"}}(n):n)&&(n.hasOwnProperty("r")&&n.hasOwnProperty("g")&&n.hasOwnProperty("b")?(s=n.r,a=n.g,u=n.b,c={r:255*A(s,255),g:255*A(a,255),b:255*A(u,255)},h=!0,f="%"===String(n.r).substr(-1)?"prgb":"rgb"):n.hasOwnProperty("h")&&n.hasOwnProperty("s")&&n.hasOwnProperty("v")?(n.s=D(n.s),n.v=D(n.v),c=function(t,e,n){t=6*A(t,360),e=A(e,100),n=A(n,100);var r=v.floor(t),i=t-r,o=n*(1-e),t=n*(1-i*e),e=n*(1-(1-i)*e),r=r%6;return{r:255*[n,t,o,o,e,n][r],g:255*[e,n,n,t,o,o][r],b:255*[o,o,e,n,n,t][r]}}(n.h,n.s,n.v),h=!0,f="hsv"):n.hasOwnProperty("h")&&n.hasOwnProperty("s")&&n.hasOwnProperty("l")&&(n.s=D(n.s),n.l=D(n.l),s=n.h,a=n.s,u=n.l,s=A(s,360),a=A(a,100),u=A(u,100),0===a?r=i=o=u:(r=p(a=2*u-(u=u<.5?u*(1+a):u+a-u*a),u,s+1/3),i=p(a,u,s),o=p(a,u,s-1/3)),c={r:255*r,g:255*i,b:255*o},h=!0,f="hsl"),n.hasOwnProperty("a")&&(l=n.a)),l=T(l),{ok:h,format:n.format||f,r:b(255,w(c.r,0)),g:b(255,w(c.g,0)),b:b(255,w(c.b,0)),a:l});function p(t,e,n){return n<0&&(n+=1),1<n&&--n,n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+(e-t)*(2/3-n)*6:t}this._originalInput=t,this._r=l.r,this._g=l.g,this._b=l.b,this._a=l.a,this._roundA=y(100*this._a)/100,this._format=e.format||l.format,this._gradientType=e.gradientType,this._r<1&&(this._r=y(this._r)),this._g<1&&(this._g=y(this._g)),this._b<1&&(this._b=y(this._b)),this._ok=l.ok,this._tc_id=m++};function r(t,e,n){t=A(t,255),e=A(e,255),n=A(n,255);var r,i=w(t,e,n),o=b(t,e,n),s=(i+o)/2;if(i==o)r=u=0;else{var a=i-o,u=.5<s?a/(2-i-o):a/(i+o);switch(i){case t:r=(e-n)/a+(e<n?6:0);break;case e:r=(n-t)/a+2;break;case n:r=(t-e)/a+4}r/=6}return{h:r,s:u,l:s}}function i(t,e,n){t=A(t,255),e=A(e,255),n=A(n,255);var r,i=w(t,e,n),o=b(t,e,n),s=i,a=i-o,u=0===i?0:a/i;if(i==o)r=0;else{switch(i){case t:r=(e-n)/a+(e<n?6:0);break;case e:r=(n-t)/a+2;break;case n:r=(t-e)/a+4}r/=6}return{h:r,s:u,v:s}}function e(t,e,n,r){n=[P(y(t).toString(16)),P(y(e).toString(16)),P(y(n).toString(16))];return r&&n[0].charAt(0)==n[0].charAt(1)&&n[1].charAt(0)==n[1].charAt(1)&&n[2].charAt(0)==n[2].charAt(1)?n[0].charAt(0)+n[1].charAt(0)+n[2].charAt(0):n.join("")}function o(t,e,n,r){return[P(Math.round(255*parseFloat(r)).toString(16)),P(y(t).toString(16)),P(y(e).toString(16)),P(y(n).toString(16))].join("")}function n(t,e){e=0===e?0:e||10;t=_(t).toHsl();return t.s-=e/100,t.s=I(t.s),_(t)}function s(t,e){e=0===e?0:e||10;t=_(t).toHsl();return t.s+=e/100,t.s=I(t.s),_(t)}function a(t){return _(t).desaturate(100)}function u(t,e){e=0===e?0:e||10;t=_(t).toHsl();return t.l+=e/100,t.l=I(t.l),_(t)}function c(t,e){e=0===e?0:e||10;t=_(t).toRgb();return t.r=w(0,b(255,t.r-y(-e/100*255))),t.g=w(0,b(255,t.g-y(-e/100*255))),t.b=w(0,b(255,t.b-y(-e/100*255))),_(t)}function l(t,e){e=0===e?0:e||10;t=_(t).toHsl();return t.l-=e/100,t.l=I(t.l),_(t)}function h(t,e){t=_(t).toHsl(),e=(y(t.h)+e)%360;return t.h=e<0?360+e:e,_(t)}function f(t){t=_(t).toHsl();return t.h=(t.h+180)%360,_(t)}function p(t){var e=_(t).toHsl(),n=e.h;return[_(t),_({h:(n+120)%360,s:e.s,l:e.l}),_({h:(n+240)%360,s:e.s,l:e.l})]}function x(t){var e=_(t).toHsl(),n=e.h;return[_(t),_({h:(n+90)%360,s:e.s,l:e.l}),_({h:(n+180)%360,s:e.s,l:e.l}),_({h:(n+270)%360,s:e.s,l:e.l})]}function C(t){var e=_(t).toHsl(),n=e.h;return[_(t),_({h:(n+72)%360,s:e.s,l:e.l}),_({h:(n+216)%360,s:e.s,l:e.l})]}function k(t,e,n){e=e||6,n=n||30;var r=_(t).toHsl(),i=360/n,o=[_(t)];for(r.h=(r.h-(i*e>>1)+720)%360;--e;)r.h=(r.h+i)%360,o.push(_(r));return o}function S(t,e){e=e||6;for(var t=_(t).toHsv(),n=t.h,r=t.s,i=t.v,o=[],s=1/e;e--;)o.push(_({h:n,s:r,v:i})),i=(i+s)%1;return o}_.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},setAlpha:function(t){return this._a=T(t),this._roundA=y(100*this._a)/100,this},toHsv:function(){var t=i(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=i(this._r,this._g,this._b),e=y(360*t.h),n=y(100*t.s),t=y(100*t.v);return 1==this._a?"hsv("+e+", "+n+"%, "+t+"%)":"hsva("+e+", "+n+"%, "+t+"%, "+this._roundA+")"},toHsl:function(){var t=r(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=r(this._r,this._g,this._b),e=y(360*t.h),n=y(100*t.s),t=y(100*t.l);return 1==this._a?"hsl("+e+", "+n+"%, "+t+"%)":"hsla("+e+", "+n+"%, "+t+"%, "+this._roundA+")"},toHex:function(t){return e(this._r,this._g,this._b,t)},toHexString:function(t){return"#"+this.toHex(t)},toHex8:function(){return o(this._r,this._g,this._b,this._a)},toHex8String:function(){return"#"+this.toHex8()},toRgb:function(){return{r:y(this._r),g:y(this._g),b:y(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+y(this._r)+", "+y(this._g)+", "+y(this._b)+")":"rgba("+y(this._r)+", "+y(this._g)+", "+y(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:y(100*A(this._r,255))+"%",g:y(100*A(this._g,255))+"%",b:y(100*A(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+y(100*A(this._r,255))+"%, "+y(100*A(this._g,255))+"%, "+y(100*A(this._b,255))+"%)":"rgba("+y(100*A(this._r,255))+"%, "+y(100*A(this._g,255))+"%, "+y(100*A(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(E[e(this._r,this._g,this._b,!0)]||!1)},toFilter:function(t){var e="#"+o(this._r,this._g,this._b,this._a),n=e;return"progid:DXImageTransform.Microsoft.gradient("+(this._gradientType?"GradientType = 1, ":"")+"startColorstr="+e+",endColorstr="+(n=t?_(t).toHex8String():n)+")"},toString:function(t){var e=!!t;t=t||this._format;var n=!1,r=this._a<1&&0<=this._a;return e||!r||"hex"!==t&&"hex6"!==t&&"hex3"!==t&&"name"!==t?("rgb"===t&&(n=this.toRgbString()),"prgb"===t&&(n=this.toPercentageRgbString()),"hex"!==t&&"hex6"!==t||(n=this.toHexString()),"hex3"===t&&(n=this.toHexString(!0)),"hex8"===t&&(n=this.toHex8String()),"name"===t&&(n=this.toName()),"hsl"===t&&(n=this.toHslString()),(n="hsv"===t?this.toHsvString():n)||this.toHexString()):"name"===t&&0===this._a?this.toName():this.toRgbString()},_applyModification:function(t,e){e=t.apply(null,[this].concat([].slice.call(e)));return this._r=e._r,this._g=e._g,this._b=e._b,this.setAlpha(e._a),this},lighten:function(){return this._applyModification(u,arguments)},brighten:function(){return this._applyModification(c,arguments)},darken:function(){return this._applyModification(l,arguments)},desaturate:function(){return this._applyModification(n,arguments)},saturate:function(){return this._applyModification(s,arguments)},greyscale:function(){return this._applyModification(a,arguments)},spin:function(){return this._applyModification(h,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(k,arguments)},complement:function(){return this._applyCombination(f,arguments)},monochromatic:function(){return this._applyCombination(S,arguments)},splitcomplement:function(){return this._applyCombination(C,arguments)},triad:function(){return this._applyCombination(p,arguments)},tetrad:function(){return this._applyCombination(x,arguments)}},_.fromRatio=function(t,e){if("object"==typeof t){var n,r={};for(n in t)t.hasOwnProperty(n)&&(r[n]="a"===n?t[n]:D(t[n]));t=r}return _(t,e)},_.equals=function(t,e){return!(!t||!e)&&_(t).toRgbString()==_(e).toRgbString()},_.random=function(){return _.fromRatio({r:t(),g:t(),b:t()})},_.mix=function(t,e,n){n=0===n?0:n||50;var r=_(t).toRgb(),i=_(e).toRgb(),t=n/100,e=2*t-1,n=i.a-r.a,n=1-(e=(1+(e=e*n==-1?e:(e+n)/(1+e*n)))/2),t={r:i.r*e+r.r*n,g:i.g*e+r.g*n,b:i.b*e+r.b*n,a:i.a*t+r.a*(1-t)};return _(t)},_.readability=function(t,e){var n=_(t),r=_(e),t=n.toRgb(),e=r.toRgb(),n=n.getBrightness(),r=r.getBrightness(),e=Math.max(t.r,e.r)-Math.min(t.r,e.r)+Math.max(t.g,e.g)-Math.min(t.g,e.g)+Math.max(t.b,e.b)-Math.min(t.b,e.b);return{brightness:Math.abs(n-r),color:e}},_.isReadable=function(t,e){e=_.readability(t,e);return 125<e.brightness&&500<e.color},_.mostReadable=function(t,e){for(var n=null,r=0,i=!1,o=0;o<e.length;o++){var s=_.readability(t,e[o]),a=125<s.brightness&&500<s.color,s=s.brightness/125*3+s.color/500;(a&&!i||a&&i&&r<s||!a&&!i&&r<s)&&(i=a,r=s,n=_(e[o]))}return n};var O=_.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},E=_.hexNames=function(t){var e,n={};for(e in t)t.hasOwnProperty(e)&&(n[t[e]]=e);return n}(O);function T(t){return t=parseFloat(t),t=isNaN(t)||t<0||1<t?1:t}function A(t,e){var n="string"==typeof(t="string"==typeof(n=t)&&-1!=n.indexOf(".")&&1===parseFloat(n)?"100%":t)&&-1!=t.indexOf("%");return t=b(e,w(0,parseFloat(t))),n&&(t=parseInt(t*e,10)/100),v.abs(t-e)<1e-6?1:t%e/parseFloat(e)}function I(t){return b(1,w(0,t))}function j(t){return parseInt(t,16)}function P(t){return 1==t.length?"0"+t:""+t}function D(t){return t=t<=1?100*t+"%":t}var N,R,M=(N="[\\s|\\(]+("+(R="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+R+")[,|\\s]+("+R+")\\s*\\)?",R="[\\s|\\(]+("+R+")[,|\\s]+("+R+")[,|\\s]+("+R+")[,|\\s]+("+R+")\\s*\\)?",{rgb:new RegExp("rgb"+N),rgba:new RegExp("rgba"+R),hsl:new RegExp("hsl"+N),hsla:new RegExp("hsla"+R),hsv:new RegExp("hsv"+N),hsva:new RegExp("hsva"+R),hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex8:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});window.tinycolor=_}(),It(function(){It.fn.spectrum.load&&It.fn.spectrum.processNativeColorInputs()})}),function(){var t=function(x){x.ui=x.ui||{},x.ui.version="1.12.1";var i,r,C,k,o,s,a,u,c,n,l=0,h=Array.prototype.slice;function S(t,e,n){return[parseFloat(t[0])*(c.test(t[0])?e/100:1),parseFloat(t[1])*(c.test(t[1])?n/100:1)]}function O(t,e){return parseInt(x.css(t,e),10)||0}x.cleanData=(i=x.cleanData,function(t){for(var e,n,r=0;null!=(n=t[r]);r++)try{(e=x._data(n,"events"))&&e.remove&&x(n).triggerHandler("remove")}catch(t){}i(t)}),x.widget=function(t,n,e){var r,i,o,s={},a=t.split(".")[0],u=a+"-"+(t=t.split(".")[1]);return e||(e=n,n=x.Widget),x.isArray(e)&&(e=x.extend.apply(null,[{}].concat(e))),x.expr[":"][u.toLowerCase()]=function(t){return!!x.data(t,u)},x[a]=x[a]||{},r=x[a][t],i=x[a][t]=function(t,e){if(!this._createWidget)return new i(t,e);arguments.length&&this._createWidget(t,e)},x.extend(i,r,{version:e.version,_proto:x.extend({},e),_childConstructors:[]}),(o=new n).options=x.widget.extend({},o.options),x.each(e,function(e,r){function i(){return n.prototype[e].apply(this,arguments)}function o(t){return n.prototype[e].apply(this,t)}x.isFunction(r)?s[e]=function(){var t,e=this._super,n=this._superApply;return this._super=i,this._superApply=o,t=r.apply(this,arguments),this._super=e,this._superApply=n,t}:s[e]=r}),i.prototype=x.widget.extend(o,{widgetEventPrefix:r&&o.widgetEventPrefix||t},s,{constructor:i,namespace:a,widgetName:t,widgetFullName:u}),r?(x.each(r._childConstructors,function(t,e){var n=e.prototype;x.widget(n.namespace+"."+n.widgetName,i,e._proto)}),delete r._childConstructors):n._childConstructors.push(i),x.widget.bridge(t,i),i},x.widget.extend=function(t){for(var e,n,r=h.call(arguments,1),i=0,o=r.length;i<o;i++)for(e in r[i])n=r[i][e],r[i].hasOwnProperty(e)&&void 0!==n&&(x.isPlainObject(n)?t[e]=x.isPlainObject(t[e])?x.widget.extend({},t[e],n):x.widget.extend({},n):t[e]=n);return t},x.widget.bridge=function(o,e){var s=e.prototype.widgetFullName||o;x.fn[o]=function(n){var t="string"==typeof n,r=h.call(arguments,1),i=this;return t?this.length||"instance"!==n?this.each(function(){var t,e=x.data(this,s);return"instance"===n?(i=e,!1):e?x.isFunction(e[n])&&"_"!==n.charAt(0)?(t=e[n].apply(e,r))!==e&&void 0!==t?(i=t&&t.jquery?i.pushStack(t.get()):t,!1):void 0:x.error("no such method '"+n+"' for "+o+" widget instance"):x.error("cannot call methods on "+o+" prior to initialization; attempted to call method '"+n+"'")}):i=void 0:(r.length&&(n=x.widget.extend.apply(null,[n].concat(r))),this.each(function(){var t=x.data(this,s);t?(t.option(n||{}),t._init&&t._init()):x.data(this,s,new e(n,this))})),i}},x.Widget=function(){},x.Widget._childConstructors=[],x.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(t,e){e=x(e||this.defaultElement||this)[0],this.element=x(e),this.uuid=l++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=x(),this.hoverable=x(),this.focusable=x(),this.classesElementLookup={},e!==this&&(x.data(e,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===e&&this.destroy()}}),this.document=x(e.style?e.ownerDocument:e.document||e),this.window=x(this.document[0].defaultView||this.document[0].parentWindow)),this.options=x.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:x.noop,_create:x.noop,_init:x.noop,destroy:function(){var n=this;this._destroy(),x.each(this.classesElementLookup,function(t,e){n._removeClass(e,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:x.noop,widget:function(){return this.element},option:function(t,e){var n,r,i,o=t;if(0===arguments.length)return x.widget.extend({},this.options);if("string"==typeof t)if(o={},t=(n=t.split(".")).shift(),n.length){for(r=o[t]=x.widget.extend({},this.options[t]),i=0;i<n.length-1;i++)r[n[i]]=r[n[i]]||{},r=r[n[i]];if(t=n.pop(),1===arguments.length)return void 0===r[t]?null:r[t];r[t]=e}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];o[t]=e}return this._setOptions(o),this},_setOptions:function(t){for(var e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(t){var e,n,r;for(e in t)r=this.classesElementLookup[e],t[e]!==this.options.classes[e]&&r&&r.length&&(n=x(r.get()),this._removeClass(r,e),n.addClass(this._classes({element:n,keys:e,classes:t,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(i){var o=[],s=this;function t(t,e){for(var n,r=0;r<t.length;r++)n=s.classesElementLookup[t[r]]||x(),n=i.add?x(x.unique(n.get().concat(i.element.get()))):x(n.not(i.element).get()),s.classesElementLookup[t[r]]=n,o.push(t[r]),e&&i.classes[t[r]]&&o.push(i.classes[t[r]])}return i=x.extend({element:this.element,classes:this.options.classes||{}},i),this._on(i.element,{remove:"_untrackClassesElement"}),i.keys&&t(i.keys.match(/\S+/g)||[],!0),i.extra&&t(i.extra.match(/\S+/g)||[]),o.join(" ")},_untrackClassesElement:function(n){var r=this;x.each(r.classesElementLookup,function(t,e){-1!==x.inArray(n.target,e)&&(r.classesElementLookup[t]=x(e.not(n.target).get()))})},_removeClass:function(t,e,n){return this._toggleClass(t,e,n,!1)},_addClass:function(t,e,n){return this._toggleClass(t,e,n,!0)},_toggleClass:function(t,e,n,r){var i="string"==typeof t||null===t,n={extra:i?e:n,keys:i?t:e,element:i?this.element:t,add:r="boolean"==typeof r?r:n};return n.element.toggleClass(this._classes(n),r),this},_on:function(i,o,t){var s,a=this;"boolean"!=typeof i&&(t=o,o=i,i=!1),t?(o=s=x(o),this.bindings=this.bindings.add(o)):(t=o,o=this.element,s=this.widget()),x.each(t,function(t,e){function n(){if(i||!0!==a.options.disabled&&!x(this).hasClass("ui-state-disabled"))return("string"==typeof e?a[e]:e).apply(a,arguments)}"string"!=typeof e&&(n.guid=e.guid=e.guid||n.guid||x.guid++);var r=t.match(/^([\w:-]*)\s*(.*)$/),t=r[1]+a.eventNamespace,r=r[2];r?s.on(t,r,n):o.on(t,n)})},_off:function(t,e){e=(e||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.off(e).off(e),this.bindings=x(this.bindings.not(t).get()),this.focusable=x(this.focusable.not(t).get()),this.hoverable=x(this.hoverable.not(t).get())},_delay:function(t,e){var n=this;return setTimeout(function(){return("string"==typeof t?n[t]:t).apply(n,arguments)},e||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){this._addClass(x(t.currentTarget),null,"ui-state-hover")},mouseleave:function(t){this._removeClass(x(t.currentTarget),null,"ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){this._addClass(x(t.currentTarget),null,"ui-state-focus")},focusout:function(t){this._removeClass(x(t.currentTarget),null,"ui-state-focus")}})},_trigger:function(t,e,n){var r,i,o=this.options[t];if(n=n||{},(e=x.Event(e)).type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),e.target=this.element[0],i=e.originalEvent)for(r in i)r in e||(e[r]=i[r]);return this.element.trigger(e,n),!(x.isFunction(o)&&!1===o.apply(this.element[0],[e].concat(n))||e.isDefaultPrevented())}},x.each({show:"fadeIn",hide:"fadeOut"},function(o,s){x.Widget.prototype["_"+o]=function(e,t,n){var r,i=(t="string"==typeof t?{effect:t}:t)?!0!==t&&"number"!=typeof t&&t.effect||s:o;"number"==typeof(t=t||{})&&(t={duration:t}),r=!x.isEmptyObject(t),t.complete=n,t.delay&&e.delay(t.delay),r&&x.effects&&x.effects.effect[i]?e[o](t):i!==o&&e[i]?e[i](t.duration,t.easing,n):e.queue(function(t){x(this)[o](),n&&n.call(e[0]),t()})}}),x.widget,C=Math.max,k=Math.abs,o=/left|center|right/,s=/top|center|bottom/,a=/[\+\-]\d+(\.[\d]+)?%?/,u=/^\w+/,c=/%$/,n=x.fn.position,x.position={scrollbarWidth:function(){if(void 0!==r)return r;var t,e=x("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),n=e.children()[0];return x("body").append(e),t=n.offsetWidth,e.css("overflow","scroll"),t===(n=n.offsetWidth)&&(n=e[0].clientWidth),e.remove(),r=t-n},getScrollInfo:function(t){var e=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),n=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),e="scroll"===e||"auto"===e&&t.width<t.element[0].scrollWidth;return{width:"scroll"===n||"auto"===n&&t.height<t.element[0].scrollHeight?x.position.scrollbarWidth():0,height:e?x.position.scrollbarWidth():0}},getWithinInfo:function(t){var e=x(t||window),n=x.isWindow(e[0]),r=!!e[0]&&9===e[0].nodeType;return{element:e,isWindow:n,isDocument:r,offset:n||r?{left:0,top:0}:x(t).offset(),scrollLeft:e.scrollLeft(),scrollTop:e.scrollTop(),width:e.outerWidth(),height:e.outerHeight()}}},x.fn.position=function(h){if(!h||!h.of)return n.apply(this,arguments);h=x.extend({},h);var f,p,d,g,m,t,v=x(h.of),y=x.position.getWithinInfo(h.within),b=x.position.getScrollInfo(y),w=(h.collision||"flip").split(" "),_={},e=9===(t=(e=v)[0]).nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:x.isWindow(t)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:t.preventDefault?{width:0,height:0,offset:{top:t.pageY,left:t.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()};return v[0].preventDefault&&(h.at="left top"),p=e.width,d=e.height,m=x.extend({},g=e.offset),x.each(["my","at"],function(){var t,e,n=(h[this]||"").split(" ");(n=1===n.length?o.test(n[0])?n.concat(["center"]):s.test(n[0])?["center"].concat(n):["center","center"]:n)[0]=o.test(n[0])?n[0]:"center",n[1]=s.test(n[1])?n[1]:"center",t=a.exec(n[0]),e=a.exec(n[1]),_[this]=[t?t[0]:0,e?e[0]:0],h[this]=[u.exec(n[0])[0],u.exec(n[1])[0]]}),1===w.length&&(w[1]=w[0]),"right"===h.at[0]?m.left+=p:"center"===h.at[0]&&(m.left+=p/2),"bottom"===h.at[1]?m.top+=d:"center"===h.at[1]&&(m.top+=d/2),f=S(_.at,p,d),m.left+=f[0],m.top+=f[1],this.each(function(){var n,t,s=x(this),a=s.outerWidth(),u=s.outerHeight(),e=O(this,"marginLeft"),r=O(this,"marginTop"),i=a+e+O(this,"marginRight")+b.width,o=u+r+O(this,"marginBottom")+b.height,c=x.extend({},m),l=S(_.my,s.outerWidth(),s.outerHeight());"right"===h.my[0]?c.left-=a:"center"===h.my[0]&&(c.left-=a/2),"bottom"===h.my[1]?c.top-=u:"center"===h.my[1]&&(c.top-=u/2),c.left+=l[0],c.top+=l[1],n={marginLeft:e,marginTop:r},x.each(["left","top"],function(t,e){x.ui.position[w[t]]&&x.ui.position[w[t]][e](c,{targetWidth:p,targetHeight:d,elemWidth:a,elemHeight:u,collisionPosition:n,collisionWidth:i,collisionHeight:o,offset:[f[0]+l[0],f[1]+l[1]],my:h.my,at:h.at,within:y,elem:s})}),h.using&&(t=function(t){var e=g.left-c.left,n=e+p-a,r=g.top-c.top,i=r+d-u,o={target:{element:v,left:g.left,top:g.top,width:p,height:d},element:{element:s,left:c.left,top:c.top,width:a,height:u},horizontal:n<0?"left":0<e?"right":"center",vertical:i<0?"top":0<r?"bottom":"middle"};p<a&&k(e+n)<p&&(o.horizontal="center"),d<u&&k(r+i)<d&&(o.vertical="middle"),C(k(e),k(n))>C(k(r),k(i))?o.important="horizontal":o.important="vertical",h.using.call(this,t,o)}),s.offset(x.extend(c,{using:t}))})},x.ui.position={fit:{left:function(t,e){var n=e.within,r=n.isWindow?n.scrollLeft:n.offset.left,i=n.width,o=t.left-e.collisionPosition.marginLeft,s=r-o,a=o+e.collisionWidth-i-r;e.collisionWidth>i?0<s&&a<=0?(n=t.left+s+e.collisionWidth-i-r,t.left+=s-n):t.left=!(0<a&&s<=0)&&a<s?r+i-e.collisionWidth:r:0<s?t.left+=s:0<a?t.left-=a:t.left=C(t.left-o,t.left)},top:function(t,e){var n=e.within,r=n.isWindow?n.scrollTop:n.offset.top,i=e.within.height,o=t.top-e.collisionPosition.marginTop,s=r-o,a=o+e.collisionHeight-i-r;e.collisionHeight>i?0<s&&a<=0?(n=t.top+s+e.collisionHeight-i-r,t.top+=s-n):t.top=!(0<a&&s<=0)&&a<s?r+i-e.collisionHeight:r:0<s?t.top+=s:0<a?t.top-=a:t.top=C(t.top-o,t.top)}},flip:{left:function(t,e){var n=e.within,r=n.offset.left+n.scrollLeft,i=n.width,o=n.isWindow?n.scrollLeft:n.offset.left,s=t.left-e.collisionPosition.marginLeft,a=s-o,u=s+e.collisionWidth-i-o,c="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,n="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,s=-2*e.offset[0];a<0?((r=t.left+c+n+s+e.collisionWidth-i-r)<0||r<k(a))&&(t.left+=c+n+s):0<u&&(0<(o=t.left-e.collisionPosition.marginLeft+c+n+s-o)||k(o)<u)&&(t.left+=c+n+s)},top:function(t,e){var n=e.within,r=n.offset.top+n.scrollTop,i=n.height,o=n.isWindow?n.scrollTop:n.offset.top,s=t.top-e.collisionPosition.marginTop,a=s-o,u=s+e.collisionHeight-i-o,c="top"===e.my[1]?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,n="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,s=-2*e.offset[1];a<0?((r=t.top+c+n+s+e.collisionHeight-i-r)<0||r<k(a))&&(t.top+=c+n+s):0<u&&(0<(o=t.top-e.collisionPosition.marginTop+c+n+s-o)||k(o)<u)&&(t.top+=c+n+s)}},flipfit:{left:function(){x.ui.position.flip.left.apply(this,arguments),x.ui.position.fit.left.apply(this,arguments)},top:function(){x.ui.position.flip.top.apply(this,arguments),x.ui.position.fit.top.apply(this,arguments)}}},x.ui.position,x.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):x(this[0].form)},x.ui.formResetMixin={_formResetHandler:function(){var e=x(this);setTimeout(function(){var t=e.data("ui-form-reset-instances");x.each(t,function(){this.refresh()})})},_bindFormResetHandler:function(){var t;this.form=this.element.form(),this.form.length&&((t=this.form.data("ui-form-reset-instances")||[]).length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t))},_unbindFormResetHandler:function(){var t;this.form.length&&((t=this.form.data("ui-form-reset-instances")).splice(x.inArray(this,t),1),t.length?this.form.data("ui-form-reset-instances",t):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset"))}},x.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},x.ui.escapeSelector=(e=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g,function(t){return t.replace(e,"\\$1")}),x.fn.labels=function(){var t,e,n;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(e=this.eq(0).parents("label"),(t=this.attr("id"))&&(n=(n=this.eq(0).parents().last()).add((n.length?n:this).siblings()),t="label[for='"+x.ui.escapeSelector(t)+"']",e=e.add(n.find(t).addBack(t))),this.pushStack(e))},x.fn.extend({uniqueId:(t=0,function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&x(this).removeAttr("id")})}});var e,t,f,p=/ui-corner-([a-z]){2,6}/g;x.widget("ui.controlgroup",{version:"1.12.1",defaultElement:"<div>",options:{direction:"horizontal",disabled:null,onlyVisible:!0,items:{button:"input[type=button], input[type=submit], input[type=reset], button, a",controlgroupLabel:".ui-controlgroup-label",checkboxradio:"input[type='checkbox'], input[type='radio']",selectmenu:"select",spinner:".ui-spinner-input"}},_create:function(){this._enhance()},_enhance:function(){this.element.attr("role","toolbar"),this.refresh()},_destroy:function(){this._callChildMethod("destroy"),this.childWidgets.removeData("ui-controlgroup-data"),this.element.removeAttr("role"),this.options.items.controlgroupLabel&&this.element.find(this.options.items.controlgroupLabel).find(".ui-controlgroup-label-contents").contents().unwrap()},_initWidgets:function(){var o=this,s=[];x.each(this.options.items,function(r,t){var e,i;if(t)return"controlgroupLabel"===r?((e=o.element.find(t)).each(function(){var t=x(this);t.children(".ui-controlgroup-label-contents").length||t.contents().wrapAll("<span class='ui-controlgroup-label-contents'></span>")}),o._addClass(e,null,"ui-widget ui-widget-content ui-state-default"),void(s=s.concat(e.get()))):void(x.fn[r]&&(i=o["_"+r+"Options"]?o["_"+r+"Options"]("middle"):{classes:{}},o.element.find(t).each(function(){var t=x(this),e=t[r]("instance"),n=x.widget.extend({},i);"button"===r&&t.parent(".ui-spinner").length||((e=e||t[r]()[r]("instance"))&&(n.classes=o._resolveClassesValues(n.classes,e)),t[r](n),n=t[r]("widget"),x.data(n[0],"ui-controlgroup-data",e||t[r]("instance")),s.push(n[0]))})))}),this.childWidgets=x(x.unique(s)),this._addClass(this.childWidgets,"ui-controlgroup-item")},_callChildMethod:function(e){this.childWidgets.each(function(){var t=x(this).data("ui-controlgroup-data");t&&t[e]&&t[e]()})},_updateCornerClass:function(t,e){e=this._buildSimpleOptions(e,"label").classes.label;this._removeClass(t,null,"ui-corner-top ui-corner-bottom ui-corner-left ui-corner-right ui-corner-all"),this._addClass(t,null,e)},_buildSimpleOptions:function(t,e){var n="vertical"===this.options.direction,r={classes:{}};return r.classes[e]={middle:"",first:"ui-corner-"+(n?"top":"left"),last:"ui-corner-"+(n?"bottom":"right"),only:"ui-corner-all"}[t],r},_spinnerOptions:function(t){t=this._buildSimpleOptions(t,"ui-spinner");return t.classes["ui-spinner-up"]="",t.classes["ui-spinner-down"]="",t},_buttonOptions:function(t){return this._buildSimpleOptions(t,"ui-button")},_checkboxradioOptions:function(t){return this._buildSimpleOptions(t,"ui-checkboxradio-label")},_selectmenuOptions:function(t){var e="vertical"===this.options.direction;return{width:!!e&&"auto",classes:{middle:{"ui-selectmenu-button-open":"","ui-selectmenu-button-closed":""},first:{"ui-selectmenu-button-open":"ui-corner-"+(e?"top":"tl"),"ui-selectmenu-button-closed":"ui-corner-"+(e?"top":"left")},last:{"ui-selectmenu-button-open":e?"":"ui-corner-tr","ui-selectmenu-button-closed":"ui-corner-"+(e?"bottom":"right")},only:{"ui-selectmenu-button-open":"ui-corner-top","ui-selectmenu-button-closed":"ui-corner-all"}}[t]}},_resolveClassesValues:function(n,r){var i={};return x.each(n,function(t){var e=r.options.classes[t]||"",e=x.trim(e.replace(p,""));i[t]=(e+" "+n[t]).replace(/\s+/g," ")}),i},_setOption:function(t,e){"direction"===t&&this._removeClass("ui-controlgroup-"+this.options.direction),this._super(t,e),"disabled"!==t?this.refresh():this._callChildMethod(e?"disable":"enable")},refresh:function(){var i,o=this;this._addClass("ui-controlgroup ui-controlgroup-"+this.options.direction),"horizontal"===this.options.direction&&this._addClass(null,"ui-helper-clearfix"),this._initWidgets(),i=this.childWidgets,(i=this.options.onlyVisible?i.filter(":visible"):i).length&&(x.each(["first","last"],function(t,e){var n,r=i[e]().data("ui-controlgroup-data");r&&o["_"+r.widgetName+"Options"]?((n=o["_"+r.widgetName+"Options"](1===i.length?"only":e)).classes=o._resolveClassesValues(n.classes,r),r.element[r.widgetName](n)):o._updateCornerClass(i[e](),e)}),this._callChildMethod("refresh"))}}),x.widget("ui.checkboxradio",[x.ui.formResetMixin,{version:"1.12.1",options:{disabled:null,label:null,icon:!0,classes:{"ui-checkboxradio-label":"ui-corner-all","ui-checkboxradio-icon":"ui-corner-all"}},_getCreateOptions:function(){var t,e=this,n=this._super()||{};return this._readType(),t=this.element.labels(),this.label=x(t[t.length-1]),this.label.length||x.error("No label found for checkboxradio widget"),this.originalLabel="",this.label.contents().not(this.element[0]).each(function(){e.originalLabel+=3===this.nodeType?x(this).text():this.outerHTML}),this.originalLabel&&(n.label=this.originalLabel),null!=(t=this.element[0].disabled)&&(n.disabled=t),n},_create:function(){var t=this.element[0].checked;this._bindFormResetHandler(),null==this.options.disabled&&(this.options.disabled=this.element[0].disabled),this._setOption("disabled",this.options.disabled),this._addClass("ui-checkboxradio","ui-helper-hidden-accessible"),this._addClass(this.label,"ui-checkboxradio-label","ui-button ui-widget"),"radio"===this.type&&this._addClass(this.label,"ui-checkboxradio-radio-label"),this.options.label&&this.options.label!==this.originalLabel?this._updateLabel():this.originalLabel&&(this.options.label=this.originalLabel),this._enhance(),t&&(this._addClass(this.label,"ui-checkboxradio-checked","ui-state-active"),this.icon&&this._addClass(this.icon,null,"ui-state-hover")),this._on({change:"_toggleClasses",focus:function(){this._addClass(this.label,null,"ui-state-focus ui-visual-focus")},blur:function(){this._removeClass(this.label,null,"ui-state-focus ui-visual-focus")}})},_readType:function(){var t=this.element[0].nodeName.toLowerCase();this.type=this.element[0].type,"input"===t&&/radio|checkbox/.test(this.type)||x.error("Can't create checkboxradio on element.nodeName="+t+" and element.type="+this.type)},_enhance:function(){this._updateIcon(this.element[0].checked)},widget:function(){return this.label},_getRadioGroup:function(){var t=this.element[0].name,e="input[name='"+x.ui.escapeSelector(t)+"']";return t?(this.form.length?x(this.form[0].elements).filter(e):x(e).filter(function(){return 0===x(this).form().length})).not(this.element):x([])},_toggleClasses:function(){var t=this.element[0].checked;this._toggleClass(this.label,"ui-checkboxradio-checked","ui-state-active",t),this.options.icon&&"checkbox"===this.type&&this._toggleClass(this.icon,null,"ui-icon-check ui-state-checked",t)._toggleClass(this.icon,null,"ui-icon-blank",!t),"radio"===this.type&&this._getRadioGroup().each(function(){var t=x(this).checkboxradio("instance");t&&t._removeClass(t.label,"ui-checkboxradio-checked","ui-state-active")})},_destroy:function(){this._unbindFormResetHandler(),this.icon&&(this.icon.remove(),this.iconSpace.remove())},_setOption:function(t,e){if("label"!==t||e){if(this._super(t,e),"disabled"===t)return this._toggleClass(this.label,null,"ui-state-disabled",e),void(this.element[0].disabled=e);this.refresh()}},_updateIcon:function(t){var e="ui-icon ui-icon-background ";this.options.icon?(this.icon||(this.icon=x("<span>"),this.iconSpace=x("<span> </span>"),this._addClass(this.iconSpace,"ui-checkboxradio-icon-space")),"checkbox"===this.type?(e+=t?"ui-icon-check ui-state-checked":"ui-icon-blank",this._removeClass(this.icon,null,t?"ui-icon-blank":"ui-icon-check")):e+="ui-icon-blank",this._addClass(this.icon,"ui-checkboxradio-icon",e),t||this._removeClass(this.icon,null,"ui-icon-check ui-state-checked"),this.icon.prependTo(this.label).after(this.iconSpace)):void 0!==this.icon&&(this.icon.remove(),this.iconSpace.remove(),delete this.icon)},_updateLabel:function(){var t=this.label.contents().not(this.element[0]);this.icon&&(t=t.not(this.icon[0])),(t=this.iconSpace?t.not(this.iconSpace[0]):t).remove(),this.label.append(this.options.label)},refresh:function(){var t=this.element[0].checked,e=this.element[0].disabled;this._updateIcon(t),this._toggleClass(this.label,"ui-checkboxradio-checked","ui-state-active",t),null!==this.options.label&&this._updateLabel(),e!==this.options.disabled&&this._setOptions({disabled:e})}}]),x.ui.checkboxradio,x.widget("ui.button",{version:"1.12.1",defaultElement:"<button>",options:{classes:{"ui-button":"ui-corner-all"},disabled:null,icon:null,iconPosition:"beginning",label:null,showLabel:!0},_getCreateOptions:function(){var t,e=this._super()||{};return this.isInput=this.element.is("input"),null!=(t=this.element[0].disabled)&&(e.disabled=t),this.originalLabel=this.isInput?this.element.val():this.element.html(),this.originalLabel&&(e.label=this.originalLabel),e},_create:function(){!this.option.showLabel&!this.options.icon&&(this.options.showLabel=!0),null==this.options.disabled&&(this.options.disabled=this.element[0].disabled||!1),this.hasTitle=!!this.element.attr("title"),this.options.label&&this.options.label!==this.originalLabel&&(this.isInput?this.element.val(this.options.label):this.element.html(this.options.label)),this._addClass("ui-button","ui-widget"),this._setOption("disabled",this.options.disabled),this._enhance(),this.element.is("a")&&this._on({keyup:function(t){t.keyCode===x.ui.keyCode.SPACE&&(t.preventDefault(),this.element[0].click?this.element[0].click():this.element.trigger("click"))}})},_enhance:function(){this.element.is("button")||this.element.attr("role","button"),this.options.icon&&(this._updateIcon("icon",this.options.icon),this._updateTooltip())},_updateTooltip:function(){this.title=this.element.attr("title"),this.options.showLabel||this.title||this.element.attr("title",this.options.label)},_updateIcon:function(t,e){var n="iconPosition"!==t,r=n?this.options.iconPosition:e,t="top"===r||"bottom"===r;this.icon?n&&this._removeClass(this.icon,null,this.options.icon):(this.icon=x("<span>"),this._addClass(this.icon,"ui-button-icon","ui-icon"),this.options.showLabel||this._addClass("ui-button-icon-only")),n&&this._addClass(this.icon,null,e),this._attachIcon(r),t?(this._addClass(this.icon,null,"ui-widget-icon-block"),this.iconSpace&&this.iconSpace.remove()):(this.iconSpace||(this.iconSpace=x("<span> </span>"),this._addClass(this.iconSpace,"ui-button-icon-space")),this._removeClass(this.icon,null,"ui-wiget-icon-block"),this._attachIconSpace(r))},_destroy:function(){this.element.removeAttr("role"),this.icon&&this.icon.remove(),this.iconSpace&&this.iconSpace.remove(),this.hasTitle||this.element.removeAttr("title")},_attachIconSpace:function(t){this.icon[/^(?:end|bottom)/.test(t)?"before":"after"](this.iconSpace)},_attachIcon:function(t){this.element[/^(?:end|bottom)/.test(t)?"append":"prepend"](this.icon)},_setOptions:function(t){var e=(void 0===t.showLabel?this.options:t).showLabel,n=(void 0===t.icon?this.options:t).icon;e||n||(t.showLabel=!0),this._super(t)},_setOption:function(t,e){"icon"===t&&(e?this._updateIcon(t,e):this.icon&&(this.icon.remove(),this.iconSpace&&this.iconSpace.remove())),"iconPosition"===t&&this._updateIcon(t,e),"showLabel"===t&&(this._toggleClass("ui-button-icon-only",null,!e),this._updateTooltip()),"label"===t&&(this.isInput?this.element.val(e):(this.element.html(e),this.icon&&(this._attachIcon(this.options.iconPosition),this._attachIconSpace(this.options.iconPosition)))),this._super(t,e),"disabled"===t&&(this._toggleClass(null,"ui-state-disabled",e),(this.element[0].disabled=e)&&this.element.blur())},refresh:function(){var t=this.element.is("input, button")?this.element[0].disabled:this.element.hasClass("ui-button-disabled");t!==this.options.disabled&&this._setOptions({disabled:t}),this._updateTooltip()}}),!1!==x.uiBackCompat&&(x.widget("ui.button",x.ui.button,{options:{text:!0,icons:{primary:null,secondary:null}},_create:function(){this.options.showLabel&&!this.options.text&&(this.options.showLabel=this.options.text),!this.options.showLabel&&this.options.text&&(this.options.text=this.options.showLabel),this.options.icon||!this.options.icons.primary&&!this.options.icons.secondary?this.options.icon&&(this.options.icons.primary=this.options.icon):this.options.icons.primary?this.options.icon=this.options.icons.primary:(this.options.icon=this.options.icons.secondary,this.options.iconPosition="end"),this._super()},_setOption:function(t,e){"text"!==t?("showLabel"===t&&(this.options.text=e),"icon"===t&&(this.options.icons.primary=e),"icons"===t&&(e.primary?(this._super("icon",e.primary),this._super("iconPosition","beginning")):e.secondary&&(this._super("icon",e.secondary),this._super("iconPosition","end"))),this._superApply(arguments)):this._super("showLabel",e)}}),x.fn.button=(f=x.fn.button,function(){return!this.length||this.length&&"INPUT"!==this[0].tagName||this.length&&"INPUT"===this[0].tagName&&"checkbox"!==this.attr("type")&&"radio"!==this.attr("type")?f.apply(this,arguments):(x.ui.checkboxradio||x.error("Checkboxradio widget missing"),0===arguments.length?this.checkboxradio({icon:!1}):this.checkboxradio.apply(this,arguments))}),x.fn.buttonset=function(){return x.ui.controlgroup||x.error("Controlgroup widget missing"),"option"===arguments[0]&&"items"===arguments[1]&&arguments[2]?this.controlgroup.apply(this,[arguments[0],"items.button",arguments[2]]):"option"===arguments[0]&&"items"===arguments[1]?this.controlgroup.apply(this,[arguments[0],"items.button"]):("object"==typeof arguments[0]&&arguments[0].items&&(arguments[0].items={button:arguments[0].items}),this.controlgroup.apply(this,arguments))}),x.ui.button,x.ui.safeActiveElement=function(e){var n;try{n=e.activeElement}catch(t){n=e.body}return n=!(n=n||e.body).nodeName?e.body:n},x.widget("ui.menu",{version:"1.12.1",defaultElement:"<ul>",delay:300,options:{icons:{submenu:"ui-icon-caret-1-e"},items:"> *",menus:"ul",position:{my:"left top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.mouseHandled=!1,this.element.uniqueId().attr({role:this.options.role,tabIndex:0}),this._addClass("ui-menu","ui-widget ui-widget-content"),this._on({"mousedown .ui-menu-item":function(t){t.preventDefault()},"click .ui-menu-item":function(t){var e=x(t.target),n=x(x.ui.safeActiveElement(this.document[0]));!this.mouseHandled&&e.not(".ui-state-disabled").length&&(this.select(t),t.isPropagationStopped()||(this.mouseHandled=!0),e.has(".ui-menu").length?this.expand(t):!this.element.is(":focus")&&n.closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(t){var e,n;this.previousFilter||(e=x(t.target).closest(".ui-menu-item"),n=x(t.currentTarget),e[0]===n[0]&&(this._removeClass(n.siblings().children(".ui-state-active"),null,"ui-state-active"),this.focus(t,n)))},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(t,e){var n=this.active||this.element.find(this.options.items).eq(0);e||this.focus(t,n)},blur:function(t){this._delay(function(){x.contains(this.element[0],x.ui.safeActiveElement(this.document[0]))||this.collapseAll(t)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(t){this._closeOnDocumentClick(t)&&this.collapseAll(t),this.mouseHandled=!1}})},_destroy:function(){var t=this.element.find(".ui-menu-item").removeAttr("role aria-disabled").children(".ui-menu-item-wrapper").removeUniqueId().removeAttr("tabIndex role aria-haspopup");this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeAttr("role aria-labelledby aria-expanded aria-hidden aria-disabled tabIndex").removeUniqueId().show(),t.children().each(function(){var t=x(this);t.data("ui-menu-submenu-caret")&&t.remove()})},_keydown:function(t){var e,n,r,i=!0;switch(t.keyCode){case x.ui.keyCode.PAGE_UP:this.previousPage(t);break;case x.ui.keyCode.PAGE_DOWN:this.nextPage(t);break;case x.ui.keyCode.HOME:this._move("first","first",t);break;case x.ui.keyCode.END:this._move("last","last",t);break;case x.ui.keyCode.UP:this.previous(t);break;case x.ui.keyCode.DOWN:this.next(t);break;case x.ui.keyCode.LEFT:this.collapse(t);break;case x.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(t);break;case x.ui.keyCode.ENTER:case x.ui.keyCode.SPACE:this._activate(t);break;case x.ui.keyCode.ESCAPE:this.collapse(t);break;default:e=this.previousFilter||"",r=i=!1,n=96<=t.keyCode&&t.keyCode<=105?(t.keyCode-96).toString():String.fromCharCode(t.keyCode),clearTimeout(this.filterTimer),n===e?r=!0:n=e+n,e=this._filterMenuItems(n),(e=r&&-1!==e.index(this.active.next())?this.active.nextAll(".ui-menu-item"):e).length||(n=String.fromCharCode(t.keyCode),e=this._filterMenuItems(n)),e.length?(this.focus(t,e),this.previousFilter=n,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter}i&&t.preventDefault()},_activate:function(t){this.active&&!this.active.is(".ui-state-disabled")&&(this.active.children("[aria-haspopup='true']").length?this.expand(t):this.select(t))},refresh:function(){var t,e,r=this,i=this.options.icons.submenu,n=this.element.find(this.options.menus);this._toggleClass("ui-menu-icons",null,!!this.element.find(".ui-icon").length),e=n.filter(":not(.ui-menu)").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var t=x(this),e=t.prev(),n=x("<span>").data("ui-menu-submenu-caret",!0);r._addClass(n,"ui-menu-icon","ui-icon "+i),e.attr("aria-haspopup","true").prepend(n),t.attr("aria-labelledby",e.attr("id"))}),this._addClass(e,"ui-menu","ui-widget ui-widget-content ui-front"),(t=n.add(this.element).find(this.options.items)).not(".ui-menu-item").each(function(){var t=x(this);r._isDivider(t)&&r._addClass(t,"ui-menu-divider","ui-widget-content")}),n=(e=t.not(".ui-menu-item, .ui-menu-divider")).children().not(".ui-menu").uniqueId().attr({tabIndex:-1,role:this._itemRole()}),this._addClass(e,"ui-menu-item")._addClass(n,"ui-menu-item-wrapper"),t.filter(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!x.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(t,e){var n;"icons"===t&&(n=this.element.find(".ui-menu-icon"),this._removeClass(n,null,this.options.icons.submenu)._addClass(n,null,e.submenu)),this._super(t,e)},_setOptionDisabled:function(t){this._super(t),this.element.attr("aria-disabled",String(t)),this._toggleClass(null,"ui-state-disabled",!!t)},focus:function(t,e){var n;this.blur(t,t&&"focus"===t.type),this._scrollIntoView(e),this.active=e.first(),n=this.active.children(".ui-menu-item-wrapper"),this._addClass(n,null,"ui-state-active"),this.options.role&&this.element.attr("aria-activedescendant",n.attr("id")),n=this.active.parent().closest(".ui-menu-item").children(".ui-menu-item-wrapper"),this._addClass(n,null,"ui-state-active"),t&&"keydown"===t.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),(n=e.children(".ui-menu")).length&&t&&/^mouse/.test(t.type)&&this._startOpening(n),this.activeMenu=e.parent(),this._trigger("focus",t,{item:e})},_scrollIntoView:function(t){var e,n,r;this._hasScroll()&&(n=parseFloat(x.css(this.activeMenu[0],"borderTopWidth"))||0,r=parseFloat(x.css(this.activeMenu[0],"paddingTop"))||0,e=t.offset().top-this.activeMenu.offset().top-n-r,n=this.activeMenu.scrollTop(),r=this.activeMenu.height(),t=t.outerHeight(),e<0?this.activeMenu.scrollTop(n+e):r<e+t&&this.activeMenu.scrollTop(n+e-r+t))},blur:function(t,e){e||clearTimeout(this.timer),this.active&&(this._removeClass(this.active.children(".ui-menu-item-wrapper"),null,"ui-state-active"),this._trigger("blur",t,{item:this.active}),this.active=null)},_startOpening:function(t){clearTimeout(this.timer),"true"===t.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close(),this._open(t)},this.delay))},_open:function(t){var e=x.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(t.parents(".ui-menu")).hide().attr("aria-hidden","true"),t.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(e)},collapseAll:function(e,n){clearTimeout(this.timer),this.timer=this._delay(function(){var t=n?this.element:x(e&&e.target).closest(this.element.find(".ui-menu"));t.length||(t=this.element),this._close(t),this.blur(e),this._removeClass(t.find(".ui-state-active"),null,"ui-state-active"),this.activeMenu=t},this.delay)},_close:function(t){(t=t||(this.active?this.active.parent():this.element)).find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false")},_closeOnDocumentClick:function(t){return!x(t.target).closest(".ui-menu").length},_isDivider:function(t){return!/[^\-\u2014\u2013\s]/.test(t.text())},collapse:function(t){var e=this.active&&this.active.parent().closest(".ui-menu-item",this.element);e&&e.length&&(this._close(),this.focus(t,e))},expand:function(t){var e=this.active&&this.active.children(".ui-menu ").find(this.options.items).first();e&&e.length&&(this._open(e.parent()),this._delay(function(){this.focus(t,e)}))},next:function(t){this._move("next","first",t)},previous:function(t){this._move("prev","last",t)},isFirstItem:function(){return this.active&&!this.active.preval(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(t,e,n){var r;(r=this.active?"first"===t||"last"===t?this.active["first"===t?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[t+"All"](".ui-menu-item").eq(0):r)&&r.length&&this.active||(r=this.activeMenu.find(this.options.items)[e]()),this.focus(n,r)},nextPage:function(t){var e,n,r;this.active?this.isLastItem()||(this._hasScroll()?(n=this.active.offset().top,r=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return(e=x(this)).offset().top-n-r<0}),this.focus(t,e)):this.focus(t,this.activeMenu.find(this.options.items)[this.active?"last":"first"]())):this.next(t)},previousPage:function(t){var e,n,r;this.active?this.isFirstItem()||(this._hasScroll()?(n=this.active.offset().top,r=this.element.height(),this.active.preval(".ui-menu-item").each(function(){return 0<(e=x(this)).offset().top-n+r}),this.focus(t,e)):this.focus(t,this.activeMenu.find(this.options.items).first())):this.next(t)},_hasScroll:function(){return this.element.outerHeight()<this.element.prop("scrollHeight")},select:function(t){this.active=this.active||x(t.target).closest(".ui-menu-item");var e={item:this.active};this.active.has(".ui-menu").length||this.collapseAll(t,!0),this._trigger("select",t,e)},_filterMenuItems:function(t){var t=t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&"),e=new RegExp("^"+t,"i");return this.activeMenu.find(this.options.items).filter(".ui-menu-item").filter(function(){return e.test(x.trim(x(this).children(".ui-menu-item-wrapper").text()))})}}),x.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var d=!1;function g(e){return function(){var t=this.element.val();e.apply(this,arguments),this._refresh(),t!==this.element.val()&&this._trigger("change")}}x(document).on("mouseup",function(){d=!1}),x.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(t){if(!0===x.data(t.target,e.widgetName+".preventClickEvent"))return x.removeData(t.target,e.widgetName+".preventClickEvent"),t.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(!d){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t;var e=this,n=1===t.which,r=!("string"!=typeof this.options.cancel||!t.target.nodeName)&&x(t.target).closest(this.options.cancel).length;return!(n&&!r&&this._mouseCapture(t))||(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(t),!this._mouseStarted)?(t.preventDefault(),!0):(!0===x.data(t.target,this.widgetName+".preventClickEvent")&&x.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return e._mouseMove(t)},this._mouseUpDelegate=function(t){return e._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),d=!0))}},_mouseMove:function(t){if(this._mouseMoved){if(x.ui.ie&&(!document.documentMode||document.documentMode<9)&&!t.button)return this._mouseUp(t);if(!t.which)if(t.originalEvent.altKey||t.originalEvent.ctrlKey||t.originalEvent.metaKey||t.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(t)}return(t.which||t.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(this._mouseDownEvent,t),this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted)},_mouseUp:function(t){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&x.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,d=!1,t.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),x.widget("ui.selectmenu",[x.ui.formResetMixin,{version:"1.12.1",defaultElement:"<select>",options:{appendTo:null,classes:{"ui-selectmenu-button-open":"ui-corner-top","ui-selectmenu-button-closed":"ui-corner-all"},disabled:null,icons:{button:"ui-icon-triangle-1-s"},position:{my:"left top",at:"left bottom",collision:"none"},width:!1,change:null,close:null,focus:null,open:null,select:null},_create:function(){var t=this.element.uniqueId().attr("id");this.ids={element:t,button:t+"-button",menu:t+"-menu"},this._drawButton(),this._drawMenu(),this._bindFormResetHandler(),this._rendered=!1,this.menuItems=x()},_drawButton:function(){var t,e=this,n=this._parseOption(this.element.find("option:selected"),this.element[0].selectedIndex);this.labels=this.element.labels().attr("for",this.ids.button),this._on(this.labels,{click:function(t){this.button.focus(),t.preventDefault()}}),this.element.hide(),this.button=x("<span>",{tabindex:this.options.disabled?-1:0,id:this.ids.button,role:"combobox","aria-expanded":"false","aria-autocomplete":"list","aria-owns":this.ids.menu,"aria-haspopup":"true",title:this.element.attr("title")}).insertAfter(this.element),this._addClass(this.button,"ui-selectmenu-button ui-selectmenu-button-closed","ui-button ui-widget"),t=x("<span>").appendTo(this.button),this._addClass(t,"ui-selectmenu-icon","ui-icon "+this.options.icons.button),this.buttonItem=this._renderButtonItem(n).appendTo(this.button),!1!==this.options.width&&this._resizeButton(),this._on(this.button,this._buttonEvents),this.button.one("focusin",function(){e._rendered||e._refreshMenu()})},_drawMenu:function(){var n=this;this.menu=x("<ul>",{"aria-hidden":"true","aria-labelledby":this.ids.button,id:this.ids.menu}),this.menuWrap=x("<div>").append(this.menu),this._addClass(this.menuWrap,"ui-selectmenu-menu","ui-front"),this.menuWrap.appendTo(this._appendTo()),this.menuInstance=this.menu.menu({classes:{"ui-menu":"ui-corner-bottom"},role:"listbox",select:function(t,e){t.preventDefault(),n._setSelection(),n._select(e.item.data("ui-selectmenu-item"),t)},focus:function(t,e){e=e.item.data("ui-selectmenu-item");null!=n.focusIndex&&e.index!==n.focusIndex&&(n._trigger("focus",t,{item:e}),n.isOpen||n._select(e,t)),n.focusIndex=e.index,n.button.attr("aria-activedescendant",n.menuItems.eq(e.index).attr("id"))}}).menu("instance"),this.menuInstance._off(this.menu,"mouseleave"),this.menuInstance._closeOnDocumentClick=function(){return!1},this.menuInstance._isDivider=function(){return!1}},refresh:function(){this._refreshMenu(),this.buttonItem.replaceWith(this.buttonItem=this._renderButtonItem(this._getSelectedItem().data("ui-selectmenu-item")||{})),null===this.options.width&&this._resizeButton()},_refreshMenu:function(){var t=this.element.find("option");this.menu.empty(),this._parseOptions(t),this._renderMenu(this.menu,this.items),this.menuInstance.refresh(),this.menuItems=this.menu.find("li").not(".ui-selectmenu-optgroup").find(".ui-menu-item-wrapper"),this._rendered=!0,t.length&&(t=this._getSelectedItem(),this.menuInstance.focus(null,t),this._setAria(t.data("ui-selectmenu-item")),this._setOption("disabled",this.element.prop("disabled")))},open:function(t){this.options.disabled||(this._rendered?(this._removeClass(this.menu.find(".ui-state-active"),null,"ui-state-active"),this.menuInstance.focus(null,this._getSelectedItem())):this._refreshMenu(),this.menuItems.length&&(this.isOpen=!0,this._toggleAttr(),this._resizeMenu(),this._position(),this._on(this.document,this._documentClick),this._trigger("open",t)))},_position:function(){this.menuWrap.position(x.extend({of:this.button},this.options.position))},close:function(t){this.isOpen&&(this.isOpen=!1,this._toggleAttr(),this.range=null,this._off(this.document),this._trigger("close",t))},widget:function(){return this.button},menuWidget:function(){return this.menu},_renderButtonItem:function(t){var e=x("<span>");return this._setText(e,t.label),this._addClass(e,"ui-selectmenu-text"),e},_renderMenu:function(r,t){var i=this,o="";x.each(t,function(t,e){var n;e.optgroup!==o&&(n=x("<li>",{text:e.optgroup}),i._addClass(n,"ui-selectmenu-optgroup","ui-menu-divider"+(e.element.parent("optgroup").prop("disabled")?" ui-state-disabled":"")),n.appendTo(r),o=e.optgroup),i._renderItemData(r,e)})},_renderItemData:function(t,e){return this._renderItem(t,e).data("ui-selectmenu-item",e)},_renderItem:function(t,e){var n=x("<li>"),r=x("<div>",{title:e.element.attr("title")});return e.disabled&&this._addClass(n,null,"ui-state-disabled"),this._setText(r,e.label),n.append(r).appendTo(t)},_setText:function(t,e){e?t.text(e):t.html(" ")},_move:function(t,e){var n,r=".ui-menu-item";this.isOpen?n=this.menuItems.eq(this.focusIndex).parent("li"):(n=this.menuItems.eq(this.element[0].selectedIndex).parent("li"),r+=":not(.ui-state-disabled)"),(r="first"===t||"last"===t?n["first"===t?"prevAll":"nextAll"](r).eq(-1):n[t+"All"](r).eq(0)).length&&this.menuInstance.focus(e,r)},_getSelectedItem:function(){return this.menuItems.eq(this.element[0].selectedIndex).parent("li")},_toggle:function(t){this[this.isOpen?"close":"open"](t)},_setSelection:function(){var t;this.range&&(window.getSelection?((t=window.getSelection()).removeAllRanges(),t.addRange(this.range)):this.range.select(),this.button.focus())},_documentClick:{mousedown:function(t){this.isOpen&&(x(t.target).closest(".ui-selectmenu-menu, #"+x.ui.escapeSelector(this.ids.button)).length||this.close(t))}},_buttonEvents:{mousedown:function(){var t;window.getSelection?(t=window.getSelection()).rangeCount&&(this.range=t.getRangeAt(0)):this.range=document.selection.createRange()},click:function(t){this._setSelection(),this._toggle(t)},keydown:function(t){var e=!0;switch(t.keyCode){case x.ui.keyCode.TAB:case x.ui.keyCode.ESCAPE:this.close(t),e=!1;break;case x.ui.keyCode.ENTER:this.isOpen&&this._selectFocusedItem(t);break;case x.ui.keyCode.UP:t.altKey?this._toggle(t):this._move("prev",t);break;case x.ui.keyCode.DOWN:t.altKey?this._toggle(t):this._move("next",t);break;case x.ui.keyCode.SPACE:this.isOpen?this._selectFocusedItem(t):this._toggle(t);break;case x.ui.keyCode.LEFT:this._move("prev",t);break;case x.ui.keyCode.RIGHT:this._move("next",t);break;case x.ui.keyCode.HOME:case x.ui.keyCode.PAGE_UP:this._move("first",t);break;case x.ui.keyCode.END:case x.ui.keyCode.PAGE_DOWN:this._move("last",t);break;default:this.menu.trigger(t),e=!1}e&&t.preventDefault()}},_selectFocusedItem:function(t){var e=this.menuItems.eq(this.focusIndex).parent("li");e.hasClass("ui-state-disabled")||this._select(e.data("ui-selectmenu-item"),t)},_select:function(t,e){var n=this.element[0].selectedIndex;this.element[0].selectedIndex=t.index,this.buttonItem.replaceWith(this.buttonItem=this._renderButtonItem(t)),this._setAria(t),this._trigger("select",e,{item:t}),t.index!==n&&this._trigger("change",e,{item:t}),this.close(e)},_setAria:function(t){t=this.menuItems.eq(t.index).attr("id");this.button.attr({"aria-labelledby":t,"aria-activedescendant":t}),this.menu.attr("aria-activedescendant",t)},_setOption:function(t,e){var n;"icons"===t&&(n=this.button.find("span.ui-icon"),this._removeClass(n,null,this.options.icons.button)._addClass(n,null,e.button)),this._super(t,e),"appendTo"===t&&this.menuWrap.appendTo(this._appendTo()),"width"===t&&this._resizeButton()},_setOptionDisabled:function(t){this._super(t),this.menuInstance.option("disabled",t),this.button.attr("aria-disabled",t),this._toggleClass(this.button,null,"ui-state-disabled",t),this.element.prop("disabled",t),t?(this.button.attr("tabindex",-1),this.close()):this.button.attr("tabindex",0)},_appendTo:function(){var t=this.options.appendTo;return t=!(t=!(t=t&&(t.jquery||t.nodeType?x(t):this.document.find(t).eq(0)))||!t[0]?this.element.closest(".ui-front, dialog"):t).length?this.document[0].body:t},_toggleAttr:function(){this.button.attr("aria-expanded",this.isOpen),this._removeClass(this.button,"ui-selectmenu-button-"+(this.isOpen?"closed":"open"))._addClass(this.button,"ui-selectmenu-button-"+(this.isOpen?"open":"closed"))._toggleClass(this.menuWrap,"ui-selectmenu-open",null,this.isOpen),this.menu.attr("aria-hidden",!this.isOpen)},_resizeButton:function(){var t=this.options.width;!1!==t?(null===t&&(t=this.element.show().outerWidth(),this.element.hide()),this.button.outerWidth(t)):this.button.css("width","")},_resizeMenu:function(){this.menu.outerWidth(Math.max(this.button.outerWidth(),this.menu.width("").outerWidth()+1))},_getCreateOptions:function(){var t=this._super();return t.disabled=this.element.prop("disabled"),t},_parseOptions:function(t){var n=this,r=[];t.each(function(t,e){r.push(n._parseOption(x(e),t))}),this.items=r},_parseOption:function(t,e){var n=t.parent("optgroup");return{element:t,index:e,value:t.val(),label:t.text(),optgroup:n.attr("label")||"",disabled:n.prop("disabled")||t.prop("disabled")}},_destroy:function(){this._unbindFormResetHandler(),this.menuWrap.remove(),this.button.remove(),this.element.show(),this.element.removeUniqueId(),this.labels.attr("for",this.ids.element)}}]),x.widget("ui.slider",x.ui.mouse,{version:"1.12.1",widgetEventPrefix:"slide",options:{animate:!1,classes:{"ui-slider":"ui-corner-all","ui-slider-handle":"ui-corner-all","ui-slider-range":"ui-corner-all ui-widget-header"},distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null,change:null,slide:null,start:null,stop:null},numPages:5,_create:function(){this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this._calculateNewMax(),this._addClass("ui-slider ui-slider-"+this.orientation,"ui-widget ui-widget-content"),this._refresh(),this._animateOff=!1},_refresh:function(){this._createRange(),this._createHandles(),this._setupEvents(),this._refreshValue()},_createHandles:function(){var t,e=this.options,n=this.element.find(".ui-slider-handle"),r=[],i=e.values&&e.values.length||1;for(n.length>i&&(n.slice(i).remove(),n=n.slice(0,i)),t=n.length;t<i;t++)r.push("<span tabindex='0'></span>");this.handles=n.add(x(r.join("")).appendTo(this.element)),this._addClass(this.handles,"ui-slider-handle","ui-state-default"),this.handle=this.handles.eq(0),this.handles.each(function(t){x(this).data("ui-slider-handle-index",t).attr("tabIndex",0)})},_createRange:function(){var t=this.options;t.range?(!0===t.range&&(t.values?t.values.length&&2!==t.values.length?t.values=[t.values[0],t.values[0]]:x.isArray(t.values)&&(t.values=t.values.slice(0)):t.values=[this._valueMin(),this._valueMin()]),this.range&&this.range.length?(this._removeClass(this.range,"ui-slider-range-min ui-slider-range-max"),this.range.css({left:"",bottom:""})):(this.range=x("<div>").appendTo(this.element),this._addClass(this.range,"ui-slider-range")),"min"!==t.range&&"max"!==t.range||this._addClass(this.range,"ui-slider-range-"+t.range)):(this.range&&this.range.remove(),this.range=null)},_setupEvents:function(){this._off(this.handles),this._on(this.handles,this._handleEvents),this._hoverable(this.handles),this._focusable(this.handles)},_destroy:function(){this.handles.remove(),this.range&&this.range.remove(),this._mouseDestroy()},_mouseCapture:function(t){var n,r,i,o,e,s,a=this,u=this.options;return!u.disabled&&(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),s={x:t.pageX,y:t.pageY},n=this._normValueFromMouse(s),r=this._valueMax()-this._valueMin()+1,this.handles.each(function(t){var e=Math.abs(n-a.values(t));(e<r||r===e&&(t===a._lastChangedValue||a.values(t)===u.min))&&(r=e,i=x(this),o=t)}),!1!==this._start(t,o)&&(this._mouseSliding=!0,this._handleIndex=o,this._addClass(i,null,"ui-state-active"),i.trigger("focus"),e=i.offset(),s=!x(t.target).parents().addBack().is(".ui-slider-handle"),this._clickOffset=s?{left:0,top:0}:{left:t.pageX-e.left,top:t.pageY-e.top-i.height()/2-(parseInt(i.css("borderTopWidth"),10)||0)-(parseInt(i.css("borderBottomWidth"),10)||0)+(parseInt(i.css("marginTop"),10)||0)},this._animateOff=!0))},_mouseStart:function(){return!0},_mouseDrag:function(t){var e={x:t.pageX,y:t.pageY},e=this._normValueFromMouse(e);return this._slide(t,this._handleIndex,e),!1},_mouseStop:function(t){return this._removeClass(this.handles,null,"ui-state-active"),this._mouseSliding=!1,this._stop(t,this._handleIndex),this._change(t,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1},_detectOrientation:function(){this.orientation="vertical"===this.options.orientation?"vertical":"horizontal"},_normValueFromMouse:function(t){var e,t="horizontal"===this.orientation?(e=this.elementSize.width,t.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(e=this.elementSize.height,t.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0));return(t=1<(t=t/e)?1:t)<0&&(t=0),"vertical"===this.orientation&&(t=1-t),e=this._valueMax()-this._valueMin(),e=this._valueMin()+t*e,this._trimAlignValue(e)},_uiHash:function(t,e,n){var r={handle:this.handles[t],handleIndex:t,value:void 0!==e?e:this.value()};return this._hasMultipleValues()&&(r.value=void 0!==e?e:this.values(t),r.values=n||this.values()),r},_hasMultipleValues:function(){return this.options.values&&this.options.values.length},_start:function(t,e){return this._trigger("start",t,this._uiHash(e))},_slide:function(t,e,n){var r,i=this.value(),o=this.values();this._hasMultipleValues()&&(r=this.values(e?0:1),i=this.values(e),2===this.options.values.length&&!0===this.options.range&&(n=0===e?Math.min(r,n):Math.max(r,n)),o[e]=n),n!==i&&!1!==this._trigger("slide",t,this._uiHash(e,n,o))&&(this._hasMultipleValues()?this.values(e,n):this.value(n))},_stop:function(t,e){this._trigger("stop",t,this._uiHash(e))},_change:function(t,e){this._keySliding||this._mouseSliding||(this._lastChangedValue=e,this._trigger("change",t,this._uiHash(e)))},value:function(t){return arguments.length?(this.options.value=this._trimAlignValue(t),this._refreshValue(),void this._change(null,0)):this._value()},values:function(t,e){var n,r,i;if(1<arguments.length)return this.options.values[t]=this._trimAlignValue(e),this._refreshValue(),void this._change(null,t);if(!arguments.length)return this._values();if(!x.isArray(t))return this._hasMultipleValues()?this._values(t):this.value();for(n=this.options.values,r=t,i=0;i<n.length;i+=1)n[i]=this._trimAlignValue(r[i]),this._change(null,i);this._refreshValue()},_setOption:function(t,e){var n,r=0;switch("range"===t&&!0===this.options.range&&("min"===e?(this.options.value=this._values(0),this.options.values=null):"max"===e&&(this.options.value=this._values(this.options.values.length-1),this.options.values=null)),x.isArray(this.options.values)&&(r=this.options.values.length),this._super(t,e),t){case"orientation":this._detectOrientation(),this._removeClass("ui-slider-horizontal ui-slider-vertical")._addClass("ui-slider-"+this.orientation),this._refreshValue(),this.options.range&&this._refreshRange(e),this.handles.css("horizontal"===e?"bottom":"left","");break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":for(this._animateOff=!0,this._refreshValue(),n=r-1;0<=n;n--)this._change(null,n);this._animateOff=!1;break;case"step":case"min":case"max":this._animateOff=!0,this._calculateNewMax(),this._refreshValue(),this._animateOff=!1;break;case"range":this._animateOff=!0,this._refresh(),this._animateOff=!1}},_setOptionDisabled:function(t){this._super(t),this._toggleClass(null,"ui-state-disabled",!!t)},_value:function(){var t=this.options.value;return this._trimAlignValue(t)},_values:function(t){var e,n,r;if(arguments.length)return e=this.options.values[t],this._trimAlignValue(e);if(this._hasMultipleValues()){for(n=this.options.values.slice(),r=0;r<n.length;r+=1)n[r]=this._trimAlignValue(n[r]);return n}return[]},_trimAlignValue:function(t){if(t<=this._valueMin())return this._valueMin();if(t>=this._valueMax())return this._valueMax();var e=0<this.options.step?this.options.step:1,n=(t-this._valueMin())%e,t=t-n;return 2*Math.abs(n)>=e&&(t+=0<n?e:-e),parseFloat(t.toFixed(5))},_calculateNewMax:function(){var t=this.options.max,e=this._valueMin(),n=this.options.step;(t=Math.round((t-e)/n)*n+e)>this.options.max&&(t-=n),this.max=parseFloat(t.toFixed(this._precision()))},_precision:function(){var t=this._precisionOf(this.options.step);return t=null!==this.options.min?Math.max(t,this._precisionOf(this.options.min)):t},_precisionOf:function(t){var e=t.toString(),t=e.indexOf(".");return-1===t?0:e.length-t-1},_valueMin:function(){return this.options.min},_valueMax:function(){return this.max},_refreshRange:function(t){"vertical"===t&&this.range.css({width:"",left:""}),"horizontal"===t&&this.range.css({height:"",bottom:""})},_refreshValue:function(){var e,n,t,r,i,o=this.options.range,s=this.options,a=this,u=!this._animateOff&&s.animate,c={};this._hasMultipleValues()?this.handles.each(function(t){n=(a.values(t)-a._valueMin())/(a._valueMax()-a._valueMin())*100,c["horizontal"===a.orientation?"left":"bottom"]=n+"%",x(this).stop(1,1)[u?"animate":"css"](c,s.animate),!0===a.options.range&&("horizontal"===a.orientation?(0===t&&a.range.stop(1,1)[u?"animate":"css"]({left:n+"%"},s.animate),1===t&&a.range[u?"animate":"css"]({width:n-e+"%"},{queue:!1,duration:s.animate})):(0===t&&a.range.stop(1,1)[u?"animate":"css"]({bottom:n+"%"},s.animate),1===t&&a.range[u?"animate":"css"]({height:n-e+"%"},{queue:!1,duration:s.animate}))),e=n}):(t=this.value(),r=this._valueMin(),i=this._valueMax(),c["horizontal"===this.orientation?"left":"bottom"]=(n=i!==r?(t-r)/(i-r)*100:0)+"%",this.handle.stop(1,1)[u?"animate":"css"](c,s.animate),"min"===o&&"horizontal"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({width:n+"%"},s.animate),"max"===o&&"horizontal"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({width:100-n+"%"},s.animate),"min"===o&&"vertical"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({height:n+"%"},s.animate),"max"===o&&"vertical"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({height:100-n+"%"},s.animate))},_handleEvents:{keydown:function(t){var e,n,r,i=x(t.target).data("ui-slider-handle-index");switch(t.keyCode){case x.ui.keyCode.HOME:case x.ui.keyCode.END:case x.ui.keyCode.PAGE_UP:case x.ui.keyCode.PAGE_DOWN:case x.ui.keyCode.UP:case x.ui.keyCode.RIGHT:case x.ui.keyCode.DOWN:case x.ui.keyCode.LEFT:if(t.preventDefault(),!this._keySliding&&(this._keySliding=!0,this._addClass(x(t.target),null,"ui-state-active"),!1===this._start(t,i)))return}switch(r=this.options.step,e=n=this._hasMultipleValues()?this.values(i):this.value(),t.keyCode){case x.ui.keyCode.HOME:n=this._valueMin();break;case x.ui.keyCode.END:n=this._valueMax();break;case x.ui.keyCode.PAGE_UP:n=this._trimAlignValue(e+(this._valueMax()-this._valueMin())/this.numPages);break;case x.ui.keyCode.PAGE_DOWN:n=this._trimAlignValue(e-(this._valueMax()-this._valueMin())/this.numPages);break;case x.ui.keyCode.UP:case x.ui.keyCode.RIGHT:if(e===this._valueMax())return;n=this._trimAlignValue(e+r);break;case x.ui.keyCode.DOWN:case x.ui.keyCode.LEFT:if(e===this._valueMin())return;n=this._trimAlignValue(e-r)}this._slide(t,i,n)},keyup:function(t){var e=x(t.target).data("ui-slider-handle-index");this._keySliding&&(this._keySliding=!1,this._stop(t,e),this._change(t,e),this._removeClass(x(t.target),null,"ui-state-active"))}}}),x.widget("ui.spinner",{version:"1.12.1",defaultElement:"<input>",widgetEventPrefix:"spin",options:{classes:{"ui-spinner":"ui-corner-all","ui-spinner-down":"ui-corner-br","ui-spinner-up":"ui-corner-tr"},culture:null,icons:{down:"ui-icon-triangle-1-s",up:"ui-icon-triangle-1-n"},incremental:!0,max:null,min:null,numberFormat:null,page:10,step:1,change:null,spin:null,start:null,stop:null},_create:function(){this._setOption("max",this.options.max),this._setOption("min",this.options.min),this._setOption("step",this.options.step),""!==this.value()&&this._value(this.element.val(),!0),this._draw(),this._on(this._events),this._refresh(),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_getCreateOptions:function(){var r=this._super(),i=this.element;return x.each(["min","max","step"],function(t,e){var n=i.attr(e);null!=n&&n.length&&(r[e]=n)}),r},_events:{keydown:function(t){this._start(t)&&this._keydown(t)&&t.preventDefault()},keyup:"_stop",focus:function(){this.previous=this.element.val()},blur:function(t){this.cancelBlur?delete this.cancelBlur:(this._stop(),this._refresh(),this.previous!==this.element.val()&&this._trigger("change",t))},mousewheel:function(t,e){if(e){if(!this.spinning&&!this._start(t))return!1;this._spin((0<e?1:-1)*this.options.step,t),clearTimeout(this.mousewheelTimer),this.mousewheelTimer=this._delay(function(){this.spinning&&this._stop(t)},100),t.preventDefault()}},"mousedown .ui-spinner-button":function(t){var e;function n(){this.element[0]===x.ui.safeActiveElement(this.document[0])||(this.element.trigger("focus"),this.previous=e,this._delay(function(){this.previous=e}))}e=this.element[0]===x.ui.safeActiveElement(this.document[0])?this.previous:this.element.val(),t.preventDefault(),n.call(this),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur,n.call(this)}),!1!==this._start(t)&&this._repeat(null,x(t.currentTarget).hasClass("ui-spinner-up")?1:-1,t)},"mouseup .ui-spinner-button":"_stop","mouseenter .ui-spinner-button":function(t){if(x(t.currentTarget).hasClass("ui-state-active"))return!1!==this._start(t)&&void this._repeat(null,x(t.currentTarget).hasClass("ui-spinner-up")?1:-1,t)},"mouseleave .ui-spinner-button":"_stop"},_enhance:function(){this.uiSpinner=this.element.attr("autocomplete","off").wrap("<span>").parent().append("<a></a><a></a>")},_draw:function(){this._enhance(),this._addClass(this.uiSpinner,"ui-spinner","ui-widget ui-widget-content"),this._addClass("ui-spinner-input"),this.element.attr("role","spinbutton"),this.buttons=this.uiSpinner.children("a").attr("tabIndex",-1).attr("aria-hidden",!0).button({classes:{"ui-button":""}}),this._removeClass(this.buttons,"ui-corner-all"),this._addClass(this.buttons.first(),"ui-spinner-button ui-spinner-up"),this._addClass(this.buttons.last(),"ui-spinner-button ui-spinner-down"),this.buttons.first().button({icon:this.options.icons.up,showLabel:!1}),this.buttons.last().button({icon:this.options.icons.down,showLabel:!1}),this.buttons.height()>Math.ceil(.5*this.uiSpinner.height())&&0<this.uiSpinner.height()&&this.uiSpinner.height(this.uiSpinner.height())},_keydown:function(t){var e=this.options,n=x.ui.keyCode;switch(t.keyCode){case n.UP:return this._repeat(null,1,t),!0;case n.DOWN:return this._repeat(null,-1,t),!0;case n.PAGE_UP:return this._repeat(null,e.page,t),!0;case n.PAGE_DOWN:return this._repeat(null,-e.page,t),!0}return!1},_start:function(t){return!(!this.spinning&&!1===this._trigger("start",t))&&(this.counter||(this.counter=1),this.spinning=!0)},_repeat:function(t,e,n){t=t||500,clearTimeout(this.timer),this.timer=this._delay(function(){this._repeat(40,e,n)},t),this._spin(e*this.options.step,n)},_spin:function(t,e){var n=this.value()||0;this.counter||(this.counter=1),n=this._adjustValue(n+t*this._increment(this.counter)),this.spinning&&!1===this._trigger("spin",e,{value:n})||(this._value(n),this.counter++)},_increment:function(t){var e=this.options.incremental;return e?x.isFunction(e)?e(t):Math.floor(t*t*t/5e4-t*t/500+17*t/200+1):1},_precision:function(){var t=this._precisionOf(this.options.step);return t=null!==this.options.min?Math.max(t,this._precisionOf(this.options.min)):t},_precisionOf:function(t){var e=t.toString(),t=e.indexOf(".");return-1===t?0:e.length-t-1},_adjustValue:function(t){var e,n=this.options,r=t-(e=null!==n.min?n.min:0);return t=e+Math.round(r/n.step)*n.step,t=parseFloat(t.toFixed(this._precision())),null!==n.max&&t>n.max?n.max:null!==n.min&&t<n.min?n.min:t},_stop:function(t){this.spinning&&(clearTimeout(this.timer),clearTimeout(this.mousewheelTimer),this.counter=0,this.spinning=!1,this._trigger("stop",t))},_setOption:function(t,e){var n;if("culture"===t||"numberFormat"===t)return n=this._parse(this.element.val()),this.options[t]=e,void this.element.val(this._format(n));"max"!==t&&"min"!==t&&"step"!==t||"string"==typeof e&&(e=this._parse(e)),"icons"===t&&(n=this.buttons.first().find(".ui-icon"),this._removeClass(n,null,this.options.icons.up),this._addClass(n,null,e.up),n=this.buttons.last().find(".ui-icon"),this._removeClass(n,null,this.options.icons.down),this._addClass(n,null,e.down)),this._super(t,e)},_setOptionDisabled:function(t){this._super(t),this._toggleClass(this.uiSpinner,null,"ui-state-disabled",!!t),this.element.prop("disabled",!!t),this.buttons.button(t?"disable":"enable")},_setOptions:g(function(t){this._super(t)}),_parse:function(t){return""===(t="string"==typeof t&&""!==t?window.Globalize&&this.options.numberFormat?Globalize.parseFloat(t,10,this.options.culture):+t:t)||isNaN(t)?null:t},_format:function(t){return""===t?"":window.Globalize&&this.options.numberFormat?Globalize.format(t,this.options.numberFormat,this.options.culture):t},_refresh:function(){this.element.attr({"aria-valuemin":this.options.min,"aria-valuemax":this.options.max,"aria-valuenow":this._parse(this.element.val())})},isValid:function(){var t=this.value();return null!==t&&t===this._adjustValue(t)},_value:function(t,e){var n;""!==t&&null!==(n=this._parse(t))&&(e||(n=this._adjustValue(n)),t=this._format(n)),this.element.val(t),this._refresh()},_destroy:function(){this.element.prop("disabled",!1).removeAttr("autocomplete role aria-valuemin aria-valuemax aria-valuenow"),this.uiSpinner.replaceWith(this.element)},stepUp:g(function(t){this._stepUp(t)}),_stepUp:function(t){this._start()&&(this._spin((t||1)*this.options.step),this._stop())},stepDown:g(function(t){this._stepDown(t)}),_stepDown:function(t){this._start()&&(this._spin((t||1)*-this.options.step),this._stop())},pageUp:g(function(t){this._stepUp((t||1)*this.options.page)}),pageDown:g(function(t){this._stepDown((t||1)*this.options.page)}),value:function(t){if(!arguments.length)return this._parse(this.element.val());g(this._value).call(this,t)},widget:function(){return this.uiSpinner}}),!1!==x.uiBackCompat&&x.widget("ui.spinner",x.ui.spinner,{_enhance:function(){this.uiSpinner=this.element.attr("autocomplete","off").wrap(this._uiSpinnerHtml()).parent().append(this._buttonHtml())},_uiSpinnerHtml:function(){return"<span>"},_buttonHtml:function(){return"<a></a><a></a>"}}),x.ui.spinner};"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}(),function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof exports?module.exports=t:t(jQuery)}(function(l){function e(t){var e,n=t||window.event,r=g.call(arguments,1),i=0,o=0,s=0,a=0,u=0,c=0;if((t=l.event.fix(n)).type="mousewheel","detail"in n&&(s=-1*n.detail),"wheelDelta"in n&&(s=n.wheelDelta),"wheelDeltaY"in n&&(s=n.wheelDeltaY),"wheelDeltaX"in n&&(o=-1*n.wheelDeltaX),"axis"in n&&n.axis===n.HORIZONTAL_AXIS&&(o=-1*s,s=0),i=0===s?o:s,"deltaY"in n&&(i=s=-1*n.deltaY),"deltaX"in n&&(o=n.deltaX,0===s&&(i=-1*o)),0!==s||0!==o){1===n.deltaMode?(i*=e=l.data(this,"mousewheel-line-height"),s*=e,o*=e):2===n.deltaMode&&(i*=e=l.data(this,"mousewheel-page-height"),s*=e,o*=e);var a=Math.max(Math.abs(s),Math.abs(o));return d&&!(a<d)||f(n,d=a)&&(d/=40),f(n,a)&&(i/=40,o/=40,s/=40),i=Math[1<=i?"floor":"ceil"](i/d),o=Math[1<=o?"floor":"ceil"](o/d),s=Math[1<=s?"floor":"ceil"](s/d),m.settings.normalizeOffset&&this.getBoundingClientRect&&(a=this.getBoundingClientRect(),u=t.clientX-a.left,c=t.clientY-a.top),t.deltaX=o,t.deltaY=s,t.deltaFactor=d,t.offsetX=u,t.offsetY=c,t.deltaMode=0,r.unshift(t,i,o,s),p&&clearTimeout(p),p=setTimeout(h,200),(l.event.dispatch||l.event.handle).apply(this,r)}}function h(){d=null}function f(t,e){return m.settings.adjustOldDeltas&&"mousewheel"===t.type&&e%120==0}var p,d,t=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],n="onwheel"in document||9<=document.documentMode?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],g=Array.prototype.slice;if(l.event.fixHooks)for(var r=t.length;r;)l.event.fixHooks[t[--r]]=l.event.mouseHooks;var m=l.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener)for(var t=n.length;t;)this.addEventListener(n[--t],e,!1);else this.onmousewheel=e;l.data(this,"mousewheel-line-height",m.getLineHeight(this)),l.data(this,"mousewheel-page-height",m.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var t=n.length;t;)this.removeEventListener(n[--t],e,!1);else this.onmousewheel=null;l.removeData(this,"mousewheel-line-height"),l.removeData(this,"mousewheel-page-height")},getLineHeight:function(t){var e=l(t),t=e["offsetParent"in l.fn?"offsetParent":"parent"]();return t.length||(t=l("body")),parseInt(t.css("fontSize"),10)||parseInt(e.css("fontSize"),10)||16},getPageHeight:function(t){return l(t).height()},settings:{adjustOldDeltas:!0,normalizeOffset:!0}};l.fn.extend({mousewheel:function(t){return t?this.bind("mousewheel",t):this.trigger("mousewheel")},unmousewheel:function(t){return this.unbind("mousewheel",t)}})}),function(t){var e;"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):("undefined"!=typeof window?e=window:"undefined"!=typeof global?e=global:"undefined"!=typeof self&&(e=self),e.html2canvas=t())}(function(){return function r(i,o,s){function a(n,t){if(!o[n]){if(!i[n]){var e="function"==typeof require&&require;if(!t&&e)return e(n,!0);if(u)return u(n,!0);e=new Error("Cannot find module '"+n+"'");throw e.code="MODULE_NOT_FOUND",e}e=o[n]={exports:{}};i[n][0].call(e.exports,function(t){var e=i[n][1][t];return a(e||t)},e,e.exports,r,i,o,s)}return o[n].exports}for(var u="function"==typeof require&&require,t=0;t<s.length;t++)a(s[t]);return a}({1:[function(t,P,D){!function(j){!function(t){function m(t){throw RangeError(g[t])}function n(t,e){for(var n=t.length;n--;)t[n]=e(t[n]);return t}function e(t,e){return n(t.split(p),e).join(".")}function v(t){for(var e,n,r=[],i=0,o=t.length;i<o;)55296<=(e=t.charCodeAt(i++))&&e<=56319&&i<o?56320==(64512&(n=t.charCodeAt(i++)))?r.push(((1023&e)<<10)+(1023&n)+65536):(r.push(e),i--):r.push(e);return r}function d(t){return n(t,function(t){var e="";return 65535<t&&(e+=A((t-=65536)>>>10&1023|55296),t=56320|1023&t),e+A(t)}).join("")}function y(t,e){return t+22+75*(t<26)-((0!=e)<<5)}function b(t,e,n){var r=0;for(t=n?T(t/l):t>>1,t+=T(t/e);E*C>>1<t;r+=_)t=T(t/E);return T(r+(E+1)*t/(t+c))}function r(t){var e,n,r,i,o,s,a,u=[],c=t.length,l=0,h=S,f=k,p=t.lastIndexOf(O);for(p<0&&(p=0),n=0;n<p;++n)128<=t.charCodeAt(n)&&m("not-basic"),u.push(t.charCodeAt(n));for(r=0<p?p+1:0;r<c;){for(i=l,o=1,s=_;c<=r&&m("invalid-input"),a=t.charCodeAt(r++),(_<=(a=a-48<10?a-22:a-65<26?a-65:a-97<26?a-97:_)||a>T((w-l)/o))&&m("overflow"),l+=a*o,!(a<(a=s<=f?x:f+C<=s?C:s-f));s+=_)o>T(w/(a=_-a))&&m("overflow"),o*=a;f=b(l-i,e=u.length+1,0==i),T(l/e)>w-h&&m("overflow"),h+=T(l/e),l%=e,u.splice(l++,0,h)}return d(u)}function i(t){for(var e,n,r,i,o,s,a,u,c,l,h=[],f=(t=v(t)).length,p=S,d=k,g=e=0;g<f;++g)(a=t[g])<128&&h.push(A(a));for(n=r=h.length,r&&h.push(O);n<f;){for(i=w,g=0;g<f;++g)p<=(a=t[g])&&a<i&&(i=a);for(i-p>T((w-e)/(u=n+1))&&m("overflow"),e+=(i-p)*u,p=i,g=0;g<f;++g)if((a=t[g])<p&&++e>w&&m("overflow"),a==p){for(o=e,s=_;!(o<(c=s<=d?x:d+C<=s?C:s-d));s+=_)h.push(A(y(c+(l=o-c)%(c=_-c),0))),o=T(l/c);h.push(A(y(o,0))),d=b(e,u,n==r),e=0,++n}++e,++p}return h.join("")}var o="object"==typeof D&&D,s="object"==typeof P&&P&&P.exports==o&&P,a="object"==typeof j&&j;a.global!==a&&a.window!==a||(t=a);var u,w=2147483647,_=36,x=1,C=26,c=38,l=700,k=72,S=128,O="-",h=/^xn--/,f=/[^ -~]/,p=/\x2E|\u3002|\uFF0E|\uFF61/g,g={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},E=_-x,T=Math.floor,A=String.fromCharCode,I={version:"1.2.4",ucs2:{decode:v,encode:d},decode:r,encode:i,toASCII:function(t){return e(t,function(t){return f.test(t)?"xn--"+i(t):t})},toUnicode:function(t){return e(t,function(t){return h.test(t)?r(t.slice(4).toLowerCase()):t})}};if(0,o&&!o.nodeType)if(s)s.exports=I;else for(u in I)I.hasOwnProperty(u)&&(o[u]=I[u]);else t.punycode=I}(this)}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(t,e){function i(t,e){for(var n=3===t.nodeType?document.createTextNode(t.nodeValue):t.cloneNode(!1),r=t.firstChild;r;)!0!==e&&1===r.nodeType&&"SCRIPT"===r.nodeName||n.appendChild(i(r,e)),r=r.nextSibling;return 1===t.nodeType&&(n._scrollTop=t.scrollTop,n._scrollLeft=t.scrollLeft,"CANVAS"===t.nodeName?function(e,t){try{t&&(t.width=e.width,t.height=e.height,t.getContext("2d").putImageData(e.getContext("2d").getImageData(0,0,e.width,e.height),0,0))}catch(t){o("Unable to copy canvas content from",e,t)}}(t,n):"TEXTAREA"!==t.nodeName&&"SELECT"!==t.nodeName||(n.value=t.value)),n}var o=t("./log");e.exports=function(o,t,e,n,s,a,u){var c=i(o.documentElement,s.javascriptEnabled),l=t.createElement("iframe");return l.className="html2canvas-container",l.style.visibility="hidden",l.style.position="fixed",l.style.left="-10000px",l.style.top="0px",l.style.border="0",l.width=e,l.height=n,l.scrolling="no",t.body.appendChild(l),new Promise(function(e){var t,n,r,i=l.contentWindow.document;l.contentWindow.onload=l.onload=function(){var t=setInterval(function(){0<i.body.childNodes.length&&(function t(e){if(1===e.nodeType){e.scrollTop=e._scrollTop,e.scrollLeft=e._scrollLeft;for(var n=e.firstChild;n;)t(n),n=n.nextSibling}}(i.documentElement),clearInterval(t),"view"===s.type&&(l.contentWindow.scrollTo(a,u),!/(iPad|iPhone|iPod)/g.test(navigator.userAgent)||l.contentWindow.scrollY===u&&l.contentWindow.scrollX===a||(i.documentElement.style.top=-u+"px",i.documentElement.style.left=-a+"px",i.documentElement.style.position="absolute")),e(l))},50)},i.open(),i.write("<!DOCTYPE html><html></html>"),n=a,r=u,!(t=o).defaultView||n===t.defaultView.pageXOffset&&r===t.defaultView.pageYOffset||t.defaultView.scrollTo(n,r),i.replaceChild(i.adoptNode(c),i.documentElement),i.close()})}},{"./log":13}],3:[function(t,e){function n(t){this.r=0,this.g=0,this.b=0,this.a=null,this.fromArray(t)||this.namedColor(t)||this.rgb(t)||this.rgba(t)||this.hex6(t)||this.hex3(t)}n.prototype.darken=function(t){t=1-t;return new n([Math.round(this.r*t),Math.round(this.g*t),Math.round(this.b*t),this.a])},n.prototype.isTransparent=function(){return 0===this.a},n.prototype.isBlack=function(){return 0===this.r&&0===this.g&&0===this.b},n.prototype.fromArray=function(t){return Array.isArray(t)&&(this.r=Math.min(t[0],255),this.g=Math.min(t[1],255),this.b=Math.min(t[2],255),3<t.length&&(this.a=t[3])),Array.isArray(t)};var r=/^#([a-f0-9]{3})$/i;n.prototype.hex3=function(t){var e;return null!==(e=t.match(r))&&(this.r=parseInt(e[1][0]+e[1][0],16),this.g=parseInt(e[1][1]+e[1][1],16),this.b=parseInt(e[1][2]+e[1][2],16)),null!==e};var i=/^#([a-f0-9]{6})$/i;n.prototype.hex6=function(t){var e=null;return null!==(e=t.match(i))&&(this.r=parseInt(e[1].substring(0,2),16),this.g=parseInt(e[1].substring(2,4),16),this.b=parseInt(e[1].substring(4,6),16)),null!==e};var o=/^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/;n.prototype.rgb=function(t){var e;return null!==(e=t.match(o))&&(this.r=Number(e[1]),this.g=Number(e[2]),this.b=Number(e[3])),null!==e};var s=/^rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d?\.?\d+)\s*\)$/;n.prototype.rgba=function(t){var e;return null!==(e=t.match(s))&&(this.r=Number(e[1]),this.g=Number(e[2]),this.b=Number(e[3]),this.a=Number(e[4])),null!==e},n.prototype.toString=function(){return null!==this.a&&1!==this.a?"rgba("+[this.r,this.g,this.b,this.a].join(",")+")":"rgb("+[this.r,this.g,this.b].join(",")+")"},n.prototype.namedColor=function(t){t=t.toLowerCase();var e=a[t];if(e)this.r=e[0],this.g=e[1],this.b=e[2];else if("transparent"===t)return!(this.r=this.g=this.b=this.a=0);return!!e},n.prototype.isColor=!0;var a={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};e.exports=n},{}],4:[function(t,e){function n(t,e){var n,r,i=C++;if((e=e||{}).logging&&(y.options.logging=!0,y.options.start=Date.now()),e.async=void 0===e.async||e.async,e.allowTaint=void 0!==e.allowTaint&&e.allowTaint,e.removeContainer=void 0===e.removeContainer||e.removeContainer,e.javascriptEnabled=void 0!==e.javascriptEnabled&&e.javascriptEnabled,e.imageTimeout=void 0===e.imageTimeout?1e4:e.imageTimeout,e.renderer="function"==typeof e.renderer?e.renderer:g,e.strict=!!e.strict,"string"==typeof t){if("string"!=typeof e.proxy)return Promise.reject("Proxy must be used when rendering url");var o=null!=e.width?e.width:window.innerWidth,s=null!=e.height?e.height:window.innerHeight;return w((n=t,(r=document.createElement("a")).href=n,r.href=r.href,r),e.proxy,document,o,s,e).then(function(t){return f(t.contentWindow.document.documentElement,t,e,o,s)})}var a,u,c,l,h,t=(void 0===t?[document.documentElement]:t.length?t:[t])[0];return t.setAttribute(x+i,i),a=t.ownerDocument,u=e,c=t.ownerDocument.defaultView.innerWidth,l=t.ownerDocument.defaultView.innerHeight,h=i,b(a,a,c,l,u,a.defaultView.pageXOffset,a.defaultView.pageYOffset).then(function(t){y("Document cloned");var e=x+h,n="["+e+"='"+h+"']";a.querySelector(n).removeAttribute(e);var e=t.contentWindow,r=e.document.querySelector(n);return Promise.resolve("function"!=typeof u.onclone||u.onclone(e.document)).then(function(){return f(r,t,u,c,l)})}).then(function(t){return"function"==typeof e.onrendered&&(y("options.onrendered is deprecated, html2canvas returns a Promise containing the canvas"),e.onrendered(t)),t})}function f(n,r,i,t,e){var o,s,a=r.contentWindow,u=new d(a.document),c=new m(i,u),l=_(n),s="view"===i.type?t:(s=a.document,Math.max(Math.max(s.body.scrollWidth,s.documentElement.scrollWidth),Math.max(s.body.offsetWidth,s.documentElement.offsetWidth),Math.max(s.body.clientWidth,s.documentElement.clientWidth))),o="view"===i.type?e:(o=a.document,Math.max(Math.max(o.body.scrollHeight,o.documentElement.scrollHeight),Math.max(o.body.offsetHeight,o.documentElement.offsetHeight),Math.max(o.body.clientHeight,o.documentElement.clientHeight))),h=new i.renderer(s,o,c,i,document);return new v(n,h,u,c,i).ready.then(function(){var t,e;return y("Finished rendering"),t="view"===i.type?p(h.canvas,{width:h.canvas.width,height:h.canvas.height,top:0,left:0,x:0,y:0}):n===a.document.body||n===a.document.documentElement||null!=i.canvas?h.canvas:p(h.canvas,{width:(null!=i.width?i:l).width,height:(null!=i.height?i:l).height,top:l.top,left:l.left,x:0,y:0}),e=r,i.removeContainer&&(e.parentNode.removeChild(e),y("Cleaned up container")),t})}function p(t,e){var n=document.createElement("canvas"),r=Math.min(t.width-1,Math.max(0,e.left)),i=Math.min(t.width,Math.max(1,e.left+e.width)),o=Math.min(t.height-1,Math.max(0,e.top)),s=Math.min(t.height,Math.max(1,e.top+e.height));n.width=e.width,n.height=e.height;i-=r,s-=o;return y("Cropping canvas at:","left:",e.left,"top:",e.top,"width:",i,"height:",s),y("Resulting crop with width",e.width,"and height",e.height,"with x",r,"and y",o),n.getContext("2d").drawImage(t,r,o,i,s,e.x,e.y,i,s),n}var d=t("./support"),g=t("./renderers/canvas"),m=t("./imageloader"),v=t("./nodeparser"),r=t("./nodecontainer"),y=t("./log"),i=t("./utils"),b=t("./clone"),w=t("./proxy").loadUrlDocument,_=i.getBounds,x="data-html2canvas-node",C=0;n.CanvasRenderer=g,n.NodeContainer=r,n.log=y,n.utils=i;i="undefined"==typeof document||"function"!=typeof Object.create||"function"!=typeof document.createElement("canvas").getContext?function(){return Promise.reject("No canvas support")}:n;e.exports=i},{"./clone":2,"./imageloader":11,"./log":13,"./nodecontainer":14,"./nodeparser":15,"./proxy":16,"./renderers/canvas":20,"./support":22,"./utils":26}],5:[function(t,e){function r(t){var n;this.src=t,i("DummyImageContainer for",t),this.promise&&this.image||(i("Initiating DummyImageContainer"),r.prototype.image=new Image,n=this.image,r.prototype.promise=new Promise(function(t,e){n.onload=t,n.onerror=e,n.src=o(),!0===n.complete&&t(n)}))}var i=t("./log"),o=t("./utils").smallImage;e.exports=r},{"./log":13,"./utils":26}],6:[function(t,e){var s=t("./utils").smallImage;e.exports=function(t,e){var n=document.createElement("div"),r=document.createElement("img"),i=document.createElement("span"),o="Hidden Text";n.style.visibility="hidden",n.style.fontFamily=t,n.style.fontSize=e,n.style.margin=0,n.style.padding=0,document.body.appendChild(n),r.src=s(),r.width=1,r.height=1,r.style.margin=0,r.style.padding=0,r.style.verticalAlign="baseline",i.style.fontFamily=t,i.style.fontSize=e,i.style.margin=0,i.style.padding=0,i.appendChild(document.createTextNode(o)),n.appendChild(i),n.appendChild(r),e=r.offsetTop-i.offsetTop+1,n.removeChild(i),n.appendChild(document.createTextNode(o)),n.style.lineHeight="normal",r.style.verticalAlign="super",r=r.offsetTop-n.offsetTop+1,document.body.removeChild(n),this.baseline=e,this.lineWidth=1,this.middle=r}},{"./utils":26}],7:[function(t,e){function n(){this.data={}}var r=t("./font");n.prototype.getMetrics=function(t,e){return void 0===this.data[t+"-"+e]&&(this.data[t+"-"+e]=new r(t,e)),this.data[t+"-"+e]},e.exports=n},{"./font":6}],8:[function(o,t){function e(e,t,n){this.image=null,this.src=e;var r=this,i=s(e);this.promise=(t?new Promise(function(t){"about:blank"===e.contentWindow.document.URL||null==e.contentWindow.document.documentElement?e.contentWindow.onload=e.onload=function(){t(e)}:t(e)}):this.proxyLoad(n.proxy,i,n)).then(function(t){return o("./core")(t.contentWindow.document.documentElement,{type:"view",width:t.width,height:t.height,proxy:n.proxy,javascriptEnabled:n.javascriptEnabled,removeContainer:n.removeContainer,allowTaint:n.allowTaint,imageTimeout:n.imageTimeout/2})}).then(function(t){return r.image=t})}var s=o("./utils").getBounds,i=o("./proxy").loadUrlDocument;e.prototype.proxyLoad=function(t,e,n){var r=this.src;return i(r.src,t,r.ownerDocument,e.width,e.height,n)},t.exports=e},{"./core":4,"./proxy":16,"./utils":26}],9:[function(t,e){function n(t){this.src=t.value,this.colorStops=[],this.type=null,this.x0=.5,this.y0=.5,this.x1=.5,this.y1=.5,this.promise=Promise.resolve(!0)}n.TYPES={LINEAR:1,RADIAL:2},n.REGEXP_COLORSTOP=/^\s*(rgba?\(\s*\d{1,3},\s*\d{1,3},\s*\d{1,3}(?:,\s*[0-9\.]+)?\s*\)|[a-z]{3,20}|#[a-f0-9]{3,6})(?:\s+(\d{1,3}(?:\.\d+)?)(%|px)?)?(?:\s|$)/i,e.exports=n},{}],10:[function(t,e){e.exports=function(n,r){this.src=n,this.image=new Image;var i=this;this.tainted=null,this.promise=new Promise(function(t,e){i.image.onload=t,i.image.onerror=e,r&&(i.image.crossOrigin="anonymous"),i.image.src=n,!0===i.image.complete&&t(i.image)})}},{}],11:[function(t,e){function n(t,e){this.link=null,this.options=t,this.support=e,this.origin=this.getOrigin(window.location.href)}var o=t("./log"),r=t("./imagecontainer"),i=t("./dummyimagecontainer"),s=t("./proxyimagecontainer"),a=t("./framecontainer"),u=t("./svgcontainer"),c=t("./svgnodecontainer"),l=t("./lineargradientcontainer"),h=t("./webkitgradientcontainer"),f=t("./utils").bind;n.prototype.findImages=function(t){var e=[];return t.reduce(function(t,e){switch(e.node.nodeName){case"IMG":return t.concat([{args:[e.node.src],method:"url"}]);case"svg":case"IFRAME":return t.concat([{args:[e.node],method:e.node.nodeName}])}return t},[]).forEach(this.addImage(e,this.loadImage),this),e},n.prototype.findBackgroundImage=function(t,e){return e.parseBackgroundImages().filter(this.hasImageBackground).forEach(this.addImage(t,this.loadImage),this),t},n.prototype.addImage=function(n,r){return function(e){e.args.forEach(function(t){this.imageExists(n,t)||(n.splice(0,0,r.call(this,e)),o("Added image #"+n.length,"string"==typeof t?t.substring(0,100):t))},this)}},n.prototype.hasImageBackground=function(t){return"none"!==t.method},n.prototype.loadImage=function(t){if("url"!==t.method)return"linear-gradient"===t.method?new l(t):"gradient"===t.method?new h(t):"svg"===t.method?new c(t.args[0],this.support.svg):"IFRAME"===t.method?new a(t.args[0],this.isSameOrigin(t.args[0].src),this.options):new i(t);t=t.args[0];return!this.isSVG(t)||this.support.svg||this.options.allowTaint?t.match(/data:image\/.*;base64,/i)?new r(t.replace(/url\(['"]{0,}|['"]{0,}\)$/gi,""),!1):this.isSameOrigin(t)||!0===this.options.allowTaint||this.isSVG(t)?new r(t,!1):this.support.cors&&!this.options.allowTaint&&this.options.useCORS?new r(t,!0):this.options.proxy?new s(t,this.options.proxy):new i(t):new u(t)},n.prototype.isSVG=function(t){return"svg"===t.substring(t.length-3).toLowerCase()||u.prototype.isInline(t)},n.prototype.imageExists=function(t,e){return t.some(function(t){return t.src===e})},n.prototype.isSameOrigin=function(t){return this.getOrigin(t)===this.origin},n.prototype.getOrigin=function(t){var e=this.link||(this.link=document.createElement("a"));return e.href=t,e.href=e.href,e.protocol+e.hostname+e.port},n.prototype.getPromise=function(e){return this.timeout(e,this.options.imageTimeout).catch(function(){return new i(e.src).promise.then(function(t){e.image=t})})},n.prototype.get=function(e){var n=null;return this.images.some(function(t){return(n=t).src===e})?n:null},n.prototype.fetch=function(t){return this.images=t.reduce(f(this.findBackgroundImage,this),this.findImages(t)),this.images.forEach(function(e,n){e.promise.then(function(){o("Succesfully loaded image #"+(n+1),e)},function(t){o("Failed loading image #"+(n+1),e,t)})}),this.ready=Promise.all(this.images.map(this.getPromise,this)),o("Finished searching images"),this},n.prototype.timeout=function(n,r){var i,t=Promise.race([n.promise,new Promise(function(t,e){i=setTimeout(function(){o("Timed out loading image",n),e(n)},r)})]).then(function(t){return clearTimeout(i),t});return t.catch(function(){clearTimeout(i)}),t},e.exports=n},{"./dummyimagecontainer":5,"./framecontainer":8,"./imagecontainer":10,"./lineargradientcontainer":12,"./log":13,"./proxyimagecontainer":17,"./svgcontainer":23,"./svgnodecontainer":24,"./utils":26,"./webkitgradientcontainer":27}],12:[function(t,e){function n(t){r.apply(this,arguments),this.type=r.TYPES.LINEAR;var e=n.REGEXP_DIRECTION.test(t.args[0])||!r.REGEXP_COLORSTOP.test(t.args[0]);e?t.args[0].split(/\s+/).reverse().forEach(function(t,e){switch(t){case"left":this.x0=0,this.x1=1;break;case"top":this.y0=0,this.y1=1;break;case"right":this.x0=1,this.x1=0;break;case"bottom":this.y0=1,this.y1=0;break;case"to":var n=this.y0,r=this.x0;this.y0=this.y1,this.x0=this.x1,this.x1=r,this.y1=n;break;case"center":break;default:n=.01*parseFloat(t,10);if(isNaN(n))break;0===e?(this.y0=n,this.y1=1-this.y0):(this.x0=n,this.x1=1-this.x0)}},this):(this.y0=0,this.y1=1),this.colorStops=t.args.slice(e?1:0).map(function(t){var e=t.match(r.REGEXP_COLORSTOP),n=+e[2],t=0==n?"%":e[3];return{color:new i(e[1]),stop:"%"===t?n/100:null}}),null===this.colorStops[0].stop&&(this.colorStops[0].stop=0),null===this.colorStops[this.colorStops.length-1].stop&&(this.colorStops[this.colorStops.length-1].stop=1),this.colorStops.forEach(function(n,r){null===n.stop&&this.colorStops.slice(r).some(function(t,e){return null!==t.stop&&(n.stop=(t.stop-this.colorStops[r-1].stop)/(e+1)+this.colorStops[r-1].stop,!0)},this)},this)}var r=t("./gradientcontainer"),i=t("./color");n.prototype=Object.create(r.prototype),n.REGEXP_DIRECTION=/^\s*(?:to|left|right|top|bottom|center|\d{1,3}(?:\.\d+)?%?)(?:\s|$)/i,e.exports=n},{"./color":3,"./gradientcontainer":9}],13:[function(t,e){var n=function(){n.options.logging&&window.console&&window.console.log&&Function.prototype.bind.call(window.console.log,window.console).apply(window.console,[Date.now()-n.options.start+"ms","html2canvas:"].concat([].slice.call(arguments,0)))};n.options={logging:!1},e.exports=n},{}],14:[function(t,e){function n(t,e){this.node=t,this.parent=e,this.stack=null,this.bounds=null,this.borders=null,this.clip=[],this.backgroundClip=[],this.offsetBounds=null,this.visible=null,this.computedStyles=null,this.colors={},this.styles={},this.backgroundImages=null,this.transformData=null,this.transformMatrix=null,this.isPseudoElement=!1,this.opacity=null}function s(t){return-1!==t.toString().indexOf("%")}function r(t){return t.replace("px","")}function i(t){return parseFloat(t)}var o=t("./color"),t=t("./utils"),a=t.getBounds,u=t.parseBackgrounds,c=t.offsetBounds;n.prototype.cloneTo=function(t){t.visible=this.visible,t.borders=this.borders,t.bounds=this.bounds,t.clip=this.clip,t.backgroundClip=this.backgroundClip,t.computedStyles=this.computedStyles,t.styles=this.styles,t.backgroundImages=this.backgroundImages,t.opacity=this.opacity},n.prototype.getOpacity=function(){return null===this.opacity?this.opacity=this.cssFloat("opacity"):this.opacity},n.prototype.assignStack=function(t){(this.stack=t).children.push(this)},n.prototype.isElementVisible=function(){return this.node.nodeType===Node.TEXT_NODE?this.parent.visible:"none"!==this.css("display")&&"hidden"!==this.css("visibility")&&!this.node.hasAttribute("data-html2canvas-ignore")&&("INPUT"!==this.node.nodeName||"hidden"!==this.node.getAttribute("type"))},n.prototype.css=function(t){return this.computedStyles||(this.computedStyles=this.isPseudoElement?this.parent.computedStyle(this.before?":before":":after"):this.computedStyle(null)),this.styles[t]||(this.styles[t]=this.computedStyles[t])},n.prototype.prefixedCss=function(e){var n=this.css(e);return void 0===n&&["webkit","moz","ms","o"].some(function(t){return void 0!==(n=this.css(t+e.substr(0,1).toUpperCase()+e.substr(1)))},this),void 0===n?null:n},n.prototype.computedStyle=function(t){return this.node.ownerDocument.defaultView.getComputedStyle(this.node,t)},n.prototype.cssInt=function(t){t=parseInt(this.css(t),10);return isNaN(t)?0:t},n.prototype.color=function(t){return this.colors[t]||(this.colors[t]=new o(this.css(t)))},n.prototype.cssFloat=function(t){t=parseFloat(this.css(t));return isNaN(t)?0:t},n.prototype.fontWeight=function(){var t=this.css("fontWeight");switch(parseInt(t,10)){case 401:t="bold";break;case 400:t="normal"}return t},n.prototype.parseClip=function(){var t=this.css("clip").match(this.CLIP);return t?{top:parseInt(t[1],10),right:parseInt(t[2],10),bottom:parseInt(t[3],10),left:parseInt(t[4],10)}:null},n.prototype.parseBackgroundImages=function(){return this.backgroundImages||(this.backgroundImages=u(this.css("backgroundImage")))},n.prototype.cssList=function(t,e){t=(this.css(t)||"").split(",");return t=1===(t=(t=t[e||0]||t[0]||"auto").trim().split(" ")).length?[t[0],s(t[0])?"auto":t[0]]:t},n.prototype.parseBackgroundSize=function(t,e,n){var r,i=this.cssList("backgroundSize",n);if(s(i[0]))r=t.width*parseFloat(i[0])/100;else{if(/contain|cover/.test(i[0])){var o=t.width/t.height,n=e.width/e.height;return o<n^"contain"===i[0]?{width:t.height*n,height:t.height}:{width:t.width,height:t.width/n}}r=parseInt(i[0],10)}return t="auto"===i[0]&&"auto"===i[1]?e.height:"auto"===i[1]?r/e.width*e.height:s(i[1])?t.height*parseFloat(i[1])/100:parseInt(i[1],10),{width:r="auto"===i[0]?t/e.height*e.width:r,height:t}},n.prototype.parseBackgroundPosition=function(t,e,n,r){var i=this.cssList("backgroundPosition",n),n=s(i[0])?(t.width-(r||e).width)*(parseFloat(i[0])/100):parseInt(i[0],10),r="auto"===i[1]?n/e.width*e.height:s(i[1])?(t.height-(r||e).height)*parseFloat(i[1])/100:parseInt(i[1],10);return{left:n="auto"===i[0]?r/e.height*e.width:n,top:r}},n.prototype.parseBackgroundRepeat=function(t){return this.cssList("backgroundRepeat",t)[0]},n.prototype.parseTextShadows=function(){var t=this.css("textShadow"),e=[];if(t&&"none"!==t)for(var n=t.match(this.TEXT_SHADOW_PROPERTY),r=0;n&&r<n.length;r++){var i=n[r].match(this.TEXT_SHADOW_VALUES);e.push({color:new o(i[0]),offsetX:i[1]?parseFloat(i[1].replace("px","")):0,offsetY:i[2]?parseFloat(i[2].replace("px","")):0,blur:i[3]?i[3].replace("px",""):0})}return e},n.prototype.parseTransform=function(){var t,e;return this.transformData||(this.hasTransform()?(t=this.parseBounds(),(e=this.prefixedCss("transformOrigin").split(" ").map(r).map(i))[0]+=t.left,e[1]+=t.top,this.transformData={origin:e,matrix:this.parseTransformMatrix()}):this.transformData={origin:[0,0],matrix:[1,0,0,1,0,0]}),this.transformData},n.prototype.parseTransformMatrix=function(){var t;return this.transformMatrix||(t=(t=this.prefixedCss("transform"))?function(t){if(t&&"matrix"===t[1])return t[2].split(",").map(function(t){return parseFloat(t.trim())});if(t&&"matrix3d"===t[1]){t=t[2].split(",").map(function(t){return parseFloat(t.trim())});return[t[0],t[1],t[4],t[5],t[12],t[13]]}}(t.match(this.MATRIX_PROPERTY)):null,this.transformMatrix=t||[1,0,0,1,0,0]),this.transformMatrix},n.prototype.parseBounds=function(){return this.bounds||(this.bounds=(this.hasTransform()?c:a)(this.node))},n.prototype.hasTransform=function(){return"1,0,0,1,0,0"!==this.parseTransformMatrix().join(",")||this.parent&&this.parent.hasTransform()},n.prototype.getValue=function(){var t,e=this.node.value||"";return"SELECT"===this.node.tagName?e=(t=(t=this.node).options[t.selectedIndex||0])&&t.text||"":"password"===this.node.type&&(e=Array(e.length+1).join("•")),0===e.length?this.node.placeholder||"":e},n.prototype.MATRIX_PROPERTY=/(matrix|matrix3d)\((.+)\)/,n.prototype.TEXT_SHADOW_PROPERTY=/((rgba|rgb)\([^\)]+\)(\s-?\d+px){0,})/g,n.prototype.TEXT_SHADOW_VALUES=/(-?\d+px)|(#.+)|(rgb\(.+\))|(rgba\(.+\))/g,n.prototype.CLIP=/^rect\((\d+)px,? (\d+)px,? (\d+)px,? (\d+)px\)$/,e.exports=n},{"./color":3,"./utils":26}],15:[function(t,e){function n(t,e,n,r,i){T("Starting NodeParser"),this.renderer=e,this.options=i,this.range=null,this.support=n,this.renderQueue=[],this.stack=new R(!0,1,t.ownerDocument,null);var o=new I(t,null);i.background&&e.rectangle(0,0,e.width,e.height,new N(i.background)),t===t.ownerDocument.documentElement&&(n=new I(o.color("backgroundColor").isTransparent()?t.ownerDocument.body:t.ownerDocument.documentElement,null),e.rectangle(0,0,e.width,e.height,n.color("backgroundColor"))),o.visibile=o.isElementVisible(),this.createPseudoHideStyles(t.ownerDocument),this.disableAnimations(t.ownerDocument),this.nodes=E([o].concat(this.getChildren(o)).filter(function(t){return t.visible=t.isElementVisible()}).map(this.getPseudoElements,this)),this.fontMetrics=new D,T("Fetched nodes, total:",this.nodes.length),T("Calculate overflow clips"),this.calculateOverflowClips(),T("Start fetching images"),this.images=r.fetch(this.nodes.filter(x)),this.ready=this.images.ready.then(M(function(){return T("Images loaded, starting parsing"),T("Creating stacking contexts"),this.createStackingContexts(),T("Sorting stacking contexts"),this.sortStackingContexts(this.stack),this.parse(this.stack),T("Render queue created with "+this.renderQueue.length+" items"),new Promise(M(function(t){i.async?"function"==typeof i.async?i.async.call(this,this.renderQueue,t):0<this.renderQueue.length?(this.renderIndex=0,this.asyncRenderer(this.renderQueue,t)):t():(this.renderQueue.forEach(this.paint,this),t())},this))},this))}function r(t){return t.parent&&t.parent.clip.length}function a(){}function u(s,a,u,c){return s.map(function(t,e){if(0<t.width){var n=a.left,r=a.top,i=a.width,o=a.height-s[2].width;switch(e){case 0:o=s[0].width,t.args=h({c1:[n,r],c2:[n+i,r],c3:[n+i-s[1].width,r+o],c4:[n+s[3].width,r+o]},c[0],c[1],u.topLeftOuter,u.topLeftInner,u.topRightOuter,u.topRightInner);break;case 1:n=a.left+a.width-s[1].width,i=s[1].width,t.args=h({c1:[n+i,r],c2:[n+i,r+o+s[2].width],c3:[n,r+o],c4:[n,r+s[0].width]},c[1],c[2],u.topRightOuter,u.topRightInner,u.bottomRightOuter,u.bottomRightInner);break;case 2:r=r+a.height-s[2].width,o=s[2].width,t.args=h({c1:[n+i,r+o],c2:[n,r+o],c3:[n+s[3].width,r],c4:[n+i-s[3].width,r]},c[2],c[3],u.bottomRightOuter,u.bottomRightInner,u.bottomLeftOuter,u.bottomLeftInner);break;case 3:i=s[3].width,t.args=h({c1:[n,r+o+s[2].width],c2:[n,r],c3:[n+i,r+s[0].width],c4:[n+i,r+o]},c[3],c[0],u.bottomLeftOuter,u.bottomLeftInner,u.topLeftOuter,u.topLeftInner)}}return t})}function v(t,e,n,r){var i=(Math.sqrt(2)-1)/3*4,o=n*i,i=r*i,n=t+n,r=e+r;return{topLeft:l({x:t,y:r},{x:t,y:r-i},{x:n-o,y:e},{x:n,y:e}),topRight:l({x:t,y:e},{x:t+o,y:e},{x:n,y:r-i},{x:n,y:r}),bottomRight:l({x:n,y:e},{x:n,y:e+i},{x:t+o,y:r},{x:t,y:r}),bottomLeft:l({x:n,y:r},{x:n-o,y:r},{x:t,y:e+i},{x:t,y:e})}}function c(t,e,n){var r=t.left,i=t.top,o=t.width,s=t.height,a=e[0][0]<o/2?e[0][0]:o/2,u=e[0][1]<s/2?e[0][1]:s/2,c=e[1][0]<o/2?e[1][0]:o/2,l=e[1][1]<s/2?e[1][1]:s/2,h=e[2][0]<o/2?e[2][0]:o/2,f=e[2][1]<s/2?e[2][1]:s/2,p=e[3][0]<o/2?e[3][0]:o/2,d=e[3][1]<s/2?e[3][1]:s/2,g=o-c,m=s-f,t=o-h,e=s-d;return{topLeftOuter:v(r,i,a,u).topLeft.subdivide(.5),topLeftInner:v(r+n[3].width,i+n[0].width,Math.max(0,a-n[3].width),Math.max(0,u-n[0].width)).topLeft.subdivide(.5),topRightOuter:v(r+g,i,c,l).topRight.subdivide(.5),topRightInner:v(r+Math.min(g,o+n[3].width),i+n[0].width,g>o+n[3].width?0:c-n[3].width,l-n[0].width).topRight.subdivide(.5),bottomRightOuter:v(r+t,i+m,h,f).bottomRight.subdivide(.5),bottomRightInner:v(r+Math.min(t,o-n[3].width),i+Math.min(m,s+n[0].width),Math.max(0,h-n[1].width),f-n[2].width).bottomRight.subdivide(.5),bottomLeftOuter:v(r,i+e,p,d).bottomLeft.subdivide(.5),bottomLeftInner:v(r+n[3].width,i+e,Math.max(0,p-n[3].width),d-n[2].width).bottomLeft.subdivide(.5)}}function l(o,s,a,u){function c(t,e,n){return{x:t.x+(e.x-t.x)*n,y:t.y+(e.y-t.y)*n}}return{start:o,startControl:s,endControl:a,end:u,subdivide:function(t){var e=c(o,s,t),n=c(s,a,t),r=c(a,u,t),i=c(e,n,t),n=c(n,r,t),t=c(i,n,t);return[l(o,e,i,t),l(t,n,r,u)]},curveTo:function(t){t.push(["bezierCurve",s.x,s.y,a.x,a.y,u.x,u.y])},curveToReversed:function(t){t.push(["bezierCurve",a.x,a.y,s.x,s.y,o.x,o.y])}}}function h(t,e,n,r,i,o,s){var a=[];return 0<e[0]||0<e[1]?(a.push(["line",r[1].start.x,r[1].start.y]),r[1].curveTo(a)):a.push(["line",t.c1[0],t.c1[1]]),0<n[0]||0<n[1]?(a.push(["line",o[0].start.x,o[0].start.y]),o[0].curveTo(a),a.push(["line",s[0].end.x,s[0].end.y]),s[0].curveToReversed(a)):(a.push(["line",t.c2[0],t.c2[1]]),a.push(["line",t.c3[0],t.c3[1]])),0<e[0]||0<e[1]?(a.push(["line",i[1].end.x,i[1].end.y]),i[1].curveToReversed(a)):a.push(["line",t.c4[0],t.c4[1]]),a}function s(t,e,n,r,i,o,s){0<e[0]||0<e[1]?(t.push(["line",r[0].start.x,r[0].start.y]),r[0].curveTo(t),r[1].curveTo(t)):t.push(["line",o,s]),(0<n[0]||0<n[1])&&t.push(["line",i[0].start.x,i[0].start.y])}function f(t){return t.cssInt("zIndex")<0}function p(t){return 0<t.cssInt("zIndex")}function d(t){return 0===t.cssInt("zIndex")}function g(t){return-1!==["inline","inline-block","inline-table"].indexOf(t.css("display"))}function m(t){return t instanceof R}function y(t){return 0<t.node.data.trim().length}function i(t){return t.nodeType===Node.TEXT_NODE||t.nodeType===Node.ELEMENT_NODE}function b(t){return"static"!==t.css("position")}function w(t){return"none"!==t.css("float")}function _(t){var e=this;return function(){return!t.apply(e,arguments)}}function x(t){return t.node.nodeType===Node.ELEMENT_NODE}function o(t){return!0===t.isPseudoElement}function C(t){return t.node.nodeType===Node.TEXT_NODE}function k(t){return parseInt(t,10)}function S(t){return t.width}function O(t){return t.node.nodeType!==Node.ELEMENT_NODE||-1===["SCRIPT","HEAD","TITLE","OBJECT","BR","OPTION"].indexOf(t.node.nodeName)}function E(t){return[].concat.apply([],t)}var T=t("./log"),A=t("punycode"),I=t("./nodecontainer"),j=t("./textcontainer"),P=t("./pseudoelementcontainer"),D=t("./fontmetrics"),N=t("./color"),R=t("./stackingcontext"),t=t("./utils"),M=t.bind,W=t.getBounds,L=t.parseBackgrounds,F=t.offsetBounds;n.prototype.calculateOverflowClips=function(){this.nodes.forEach(function(t){var e,n;x(t)?(o(t)&&t.appendToDOM(),t.borders=this.parseBorders(t),e="hidden"===t.css("overflow")?[t.borders.clip]:[],(n=t.parseClip())&&-1!==["absolute","fixed"].indexOf(t.css("position"))&&e.push([["rect",t.bounds.left+n.left,t.bounds.top+n.top,n.right-n.left,n.bottom-n.top]]),t.clip=r(t)?t.parent.clip.concat(e):e,t.backgroundClip="hidden"!==t.css("overflow")?t.clip.concat([t.borders.clip]):t.clip,o(t)&&t.cleanDOM()):C(t)&&(t.clip=r(t)?t.parent.clip:[]),o(t)||(t.bounds=null)},this)},n.prototype.asyncRenderer=function(t,e,n){n=n||Date.now(),this.paint(t[this.renderIndex++]),t.length===this.renderIndex?e():n+20>Date.now()?this.asyncRenderer(t,e,n):setTimeout(M(function(){this.asyncRenderer(t,e)},this),0)},n.prototype.createPseudoHideStyles=function(t){this.createStyles(t,"."+P.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE+':before { content: "" !important; display: none !important; }.'+P.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER+':after { content: "" !important; display: none !important; }')},n.prototype.disableAnimations=function(t){this.createStyles(t,"* { -webkit-animation: none !important; -moz-animation: none !important; -o-animation: none !important; animation: none !important; -webkit-transition: none !important; -moz-transition: none !important; -o-transition: none !important; transition: none !important;}")},n.prototype.createStyles=function(t,e){var n=t.createElement("style");n.innerHTML=e,t.body.appendChild(n)},n.prototype.getPseudoElements=function(t){var e,n=[[t]];return t.node.nodeType===Node.ELEMENT_NODE&&(e=this.getPseudoElement(t,":before"),t=this.getPseudoElement(t,":after"),e&&n.push(e),t&&n.push(t)),E(n)},n.prototype.getPseudoElement=function(t,e){var n=t.computedStyle(e);if(!n||!n.content||"none"===n.content||"-moz-alt-content"===n.content||"none"===n.display)return null;for(var r,i=(r=n.content,(i=r.substr(0,1))===r.substr(r.length-1)&&i.match(/'|"/)?r.substr(1,r.length-2):r),r="url"===i.substr(0,3),o=document.createElement(r?"img":"html2canvaspseudoelement"),e=new P(o,t,e),s=n.length-1;0<=s;s--){var a=n.item(s).replace(/(\-[a-z])/g,function(t){return t.toUpperCase().replace("-","")});o.style[a]=n[a]}if(o.className=P.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE+" "+P.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER,r)return o.src=L(i)[0].args[0],[e];var i=document.createTextNode(i);return o.appendChild(i),[e,new j(i,e)]},n.prototype.getChildren=function(n){return E([].filter.call(n.node.childNodes,i).map(function(t){var e=[new(t.nodeType===Node.TEXT_NODE?j:I)(t,n)].filter(O);return t.nodeType===Node.ELEMENT_NODE&&e.length&&"TEXTAREA"!==t.tagName?e[0].isElementVisible()?e.concat(this.getChildren(e[0])):[]:e},this))},n.prototype.newStackingContext=function(t,e){var n=new R(e,t.getOpacity(),t.node,t.parent);t.cloneTo(n),(e?n.getParentStack(this):n.parent.stack).contexts.push(n),t.stack=n},n.prototype.createStackingContexts=function(){this.nodes.forEach(function(t){var e,n;x(t)&&(this.isRootElement(t)||t.getOpacity()<1||(n=(e=t).css("position"),"auto"!==(-1!==["absolute","relative","fixed"].indexOf(n)?e.css("zIndex"):"auto"))||this.isBodyWithTransparentRoot(t)||t.hasTransform())?this.newStackingContext(t,!0):x(t)&&(b(t)&&d(t)||-1!==["inline-block","inline-table"].indexOf(t.css("display"))||w(t))?this.newStackingContext(t,!1):t.assignStack(t.parent.stack)},this)},n.prototype.isBodyWithTransparentRoot=function(t){return"BODY"===t.node.nodeName&&t.parent.color("backgroundColor").isTransparent()},n.prototype.isRootElement=function(t){return null===t.parent},n.prototype.sortStackingContexts=function(t){var n;t.contexts.sort((n=t.contexts.slice(0),function(t,e){return t.cssInt("zIndex")+n.indexOf(t)/n.length-(e.cssInt("zIndex")+n.indexOf(e)/n.length)})),t.contexts.forEach(this.sortStackingContexts,this)},n.prototype.parseTextBounds=function(i){return function(t,e,n){if("none"!==i.parent.css("textDecoration").substr(0,4)||0!==t.trim().length){if(this.support.rangeBounds&&!i.parent.hasTransform()){var r=n.slice(0,e).join("").length;return this.getRangeBounds(i.node,r,t.length)}if(i.node&&"string"==typeof i.node.data){e=i.node.splitText(t.length),r=this.getWrapperBounds(i.node,i.parent.hasTransform());return i.node=e,r}}else this.support.rangeBounds&&!i.parent.hasTransform()||(i.node=i.node.splitText(t.length));return{}}},n.prototype.getWrapperBounds=function(t,e){var n=t.ownerDocument.createElement("html2canvaswrapper"),r=t.parentNode,i=t.cloneNode(!0);n.appendChild(t.cloneNode(!0)),r.replaceChild(n,t);e=(e?F:W)(n);return r.replaceChild(i,n),e},n.prototype.getRangeBounds=function(t,e,n){var r=this.range||(this.range=t.ownerDocument.createRange());return r.setStart(t,e),r.setEnd(t,e+n),r.getBoundingClientRect()},n.prototype.parse=function(t){var e=t.contexts.filter(f),n=t.children.filter(x),r=n.filter(_(w)),i=r.filter(_(b)).filter(_(g)),o=n.filter(_(b)).filter(w),s=r.filter(_(b)).filter(g),n=t.contexts.concat(r.filter(b)).filter(d),r=t.children.filter(C).filter(y),t=t.contexts.filter(p);e.concat(i).concat(o).concat(s).concat(n).concat(r).concat(t).forEach(function(t){this.renderQueue.push(t),m(t)&&(this.parse(t),this.renderQueue.push(new a))},this)},n.prototype.paint=function(t){try{t instanceof a?this.renderer.ctx.restore():C(t)?(o(t.parent)&&t.parent.appendToDOM(),this.paintText(t),o(t.parent)&&t.parent.cleanDOM()):this.paintNode(t)}catch(t){if(T(t),this.options.strict)throw t}},n.prototype.paintNode=function(t){m(t)&&(this.renderer.setOpacity(t.opacity),this.renderer.ctx.save(),t.hasTransform()&&this.renderer.setTransform(t.parseTransform())),"INPUT"===t.node.nodeName&&"checkbox"===t.node.type?this.paintCheckbox(t):"INPUT"===t.node.nodeName&&"radio"===t.node.type?this.paintRadio(t):this.paintElement(t)},n.prototype.paintElement=function(e){var n=e.parseBounds();this.renderer.clip(e.backgroundClip,function(){this.renderer.renderBackground(e,n,e.borders.borders.map(S))},this),this.renderer.clip(e.clip,function(){this.renderer.renderBorders(e.borders.borders)},this),this.renderer.clip(e.backgroundClip,function(){switch(e.node.nodeName){case"svg":case"IFRAME":var t=this.images.get(e.node);t?this.renderer.renderImage(e,n,e.borders,t):T("Error loading <"+e.node.nodeName+">",e.node);break;case"IMG":t=this.images.get(e.node.src);t?this.renderer.renderImage(e,n,e.borders,t):T("Error loading <img>",e.node.src);break;case"CANVAS":this.renderer.renderImage(e,n,e.borders,{image:e.node});break;case"SELECT":case"INPUT":case"TEXTAREA":this.paintFormValue(e)}},this)},n.prototype.paintCheckbox=function(t){var e=t.parseBounds(),n=Math.min(e.width,e.height),r={width:n-1,height:n-1,top:e.top,left:e.left},e=[3,3],i=[e,e,e,e],o=[1,1,1,1].map(function(t){return{color:new N("#A5A5A5"),width:t}}),s=c(r,i,o);this.renderer.clip(t.backgroundClip,function(){this.renderer.rectangle(r.left+1,r.top+1,r.width-2,r.height-2,new N("#DEDEDE")),this.renderer.renderBorders(u(o,r,s,i)),t.node.checked&&(this.renderer.font(new N("#424242"),"normal","normal","bold",n-3+"px","arial"),this.renderer.text("✔",r.left+n/6,r.top+n-1))},this)},n.prototype.paintRadio=function(t){var e=t.parseBounds(),n=Math.min(e.width,e.height)-2;this.renderer.clip(t.backgroundClip,function(){this.renderer.circleStroke(e.left+1,e.top+1,n,new N("#DEDEDE"),1,new N("#A5A5A5")),t.node.checked&&this.renderer.circle(Math.ceil(e.left+n/4)+1,Math.ceil(e.top+n/4)+1,Math.floor(n/2),new N("#424242"))},this)},n.prototype.paintFormValue=function(e){var t,n,r,i=e.getValue();0<i.length&&(t=e.node.ownerDocument,n=t.createElement("html2canvaswrapper"),["lineHeight","textAlign","fontFamily","fontWeight","fontSize","color","paddingLeft","paddingTop","paddingRight","paddingBottom","width","height","borderLeftStyle","borderTopStyle","borderLeftWidth","borderTopWidth","boxSizing","whiteSpace","wordWrap"].forEach(function(t){try{n.style[t]=e.css(t)}catch(t){T("html2canvas: Parse: Exception caught in renderFormValue: "+t.message)}}),r=e.parseBounds(),n.style.position="fixed",n.style.left=r.left+"px",n.style.top=r.top+"px",n.textContent=i,t.body.appendChild(n),this.paintText(new j(n.firstChild,e)),t.body.removeChild(n))},n.prototype.paintText=function(n){n.applyTextTransform();var t=A.ucs2.decode(n.node.data),r=this.options.letterRendering&&!/^(normal|none|0px)$/.test(n.parent.css("letterSpacing"))||/[^\u0000-\u00ff]/.test(n.node.data)?t.map(function(t){return A.ucs2.encode([t])}):function(t){for(var e,n=[],r=0,i=!1;t.length;)-1!==[32,13,10,9,45].indexOf(t[r])===i?((e=t.splice(0,r)).length&&n.push(A.ucs2.encode(e)),i=!i,r=0):r++,r>=t.length&&((e=t.splice(0,r)).length&&n.push(A.ucs2.encode(e)));return n}(t),e=n.parent.fontWeight(),i=n.parent.css("fontSize"),o=n.parent.css("fontFamily"),t=n.parent.parseTextShadows();this.renderer.font(n.parent.color("color"),n.parent.css("fontStyle"),n.parent.css("fontVariant"),e,i,o),t.length?this.renderer.fontShadow(t[0].color,t[0].offsetX,t[0].offsetY,t[0].blur):this.renderer.clearShadow(),this.renderer.clip(n.parent.clip,function(){r.map(this.parseTextBounds(n),this).forEach(function(t,e){t&&(this.renderer.text(r[e],t.left,t.bottom),this.renderTextDecoration(n.parent,t,this.fontMetrics.getMetrics(o,i)))},this)},this)},n.prototype.renderTextDecoration=function(t,e,n){switch(t.css("textDecoration").split(" ")[0]){case"underline":this.renderer.rectangle(e.left,Math.round(e.top+n.baseline+n.lineWidth),e.width,1,t.color("color"));break;case"overline":this.renderer.rectangle(e.left,Math.round(e.top),e.width,1,t.color("color"));break;case"line-through":this.renderer.rectangle(e.left,Math.ceil(e.top+n.middle+n.lineWidth),e.width,1,t.color("color"))}};var H={inset:[["darken",.6],["darken",.1],["darken",.1],["darken",.6]]};n.prototype.parseBorders=function(i){var e,t=i.parseBounds(),n=(e=i,["TopLeft","TopRight","BottomRight","BottomLeft"].map(function(t){t=e.css("border"+t+"Radius").split(" ");return t.length<=1&&(t[1]=t[0]),t.map(k)})),r=["Top","Right","Bottom","Left"].map(function(t,e){var n=i.css("border"+t+"Style"),r=i.color("border"+t+"Color");"inset"===n&&r.isBlack()&&(r=new N([255,255,255,r.a]));e=H[n]?H[n][e]:null;return{width:i.cssInt("border"+t+"Width"),color:e?r[e[0]](e[1]):r,args:null}}),o=c(t,n,r);return{clip:this.parseBackgroundClip(i,o,r,n,t),borders:u(r,t,o,n)}},n.prototype.parseBackgroundClip=function(t,e,n,r,i){var o=[];switch(t.css("backgroundClip")){case"content-box":case"padding-box":s(o,r[0],r[1],e.topLeftInner,e.topRightInner,i.left+n[3].width,i.top+n[0].width),s(o,r[1],r[2],e.topRightInner,e.bottomRightInner,i.left+i.width-n[1].width,i.top+n[0].width),s(o,r[2],r[3],e.bottomRightInner,e.bottomLeftInner,i.left+i.width-n[1].width,i.top+i.height-n[2].width),s(o,r[3],r[0],e.bottomLeftInner,e.topLeftInner,i.left+n[3].width,i.top+i.height-n[2].width);break;default:s(o,r[0],r[1],e.topLeftOuter,e.topRightOuter,i.left,i.top),s(o,r[1],r[2],e.topRightOuter,e.bottomRightOuter,i.left+i.width,i.top),s(o,r[2],r[3],e.bottomRightOuter,e.bottomLeftOuter,i.left+i.width,i.top+i.height),s(o,r[3],r[0],e.bottomLeftOuter,e.topLeftOuter,i.left,i.top+i.height)}return o},e.exports=n},{"./color":3,"./fontmetrics":7,"./log":13,"./nodecontainer":14,"./pseudoelementcontainer":18,"./stackingcontext":21,"./textcontainer":25,"./utils":26,punycode:1}],16:[function(t,e,n){function a(t,e,n){var r="withCredentials"in new XMLHttpRequest;if(!e)return Promise.reject("No proxy configured");var i=s(r),t=u(e,t,i);return r?c(t):o(n,t,i).then(function(t){return f(t.content)})}function o(i,o,s){return new Promise(function(e,n){function r(){delete window.html2canvas.proxy[s],i.body.removeChild(t)}var t=i.createElement("script");window.html2canvas.proxy[s]=function(t){r(),e(t)},t.src=o,t.onerror=function(t){r(),n(t)},i.body.appendChild(t)})}function s(t){return t?"":"html2canvas_"+Date.now()+"_"+ ++i+"_"+Math.round(1e5*Math.random())}function u(t,e,n){return t+"?url="+encodeURIComponent(e)+(n.length?"&callback=html2canvas.proxy."+n:"")}var c=t("./xhr"),r=t("./utils"),l=t("./log"),h=t("./clone"),f=r.decode64,i=0;n.Proxy=a,n.ProxyURL=function(t,e,n){var r="crossOrigin"in new Image,i=s(r),t=u(e,t,i);return r?Promise.resolve(t):o(n,t,i).then(function(t){return"data:"+t.type+";base64,"+t.content})},n.loadUrlDocument=function(t,e,n,r,i,o){return new a(t,e,window.document).then((s=t,function(e){var n,t=new DOMParser;try{n=t.parseFromString(e,"text/html")}catch(t){l("DOMParser not supported, falling back to createHTMLDocument"),n=document.implementation.createHTMLDocument("");try{n.open(),n.write(e),n.close()}catch(t){l("createHTMLDocument write not supported, falling back to document.body.innerHTML"),n.body.innerHTML=e}}e=n.querySelector("base");return e&&e.href.host||((e=n.createElement("base")).href=s,n.head.insertBefore(e,n.head.firstChild)),n})).then(function(t){return h(t,n,r,i,o,0,0)});var s}},{"./clone":2,"./log":13,"./utils":26,"./xhr":28}],17:[function(t,e){var o=t("./proxy").ProxyURL;e.exports=function(n,r){var t=document.createElement("a");t.href=n,n=t.href,this.src=n,this.image=new Image;var i=this;this.promise=new Promise(function(t,e){i.image.crossOrigin="Anonymous",i.image.onload=t,i.image.onerror=e,new o(n,r,document).then(function(t){i.image.src=t}).catch(e)})}},{"./proxy":16}],18:[function(t,e){function n(t,e,n){r.call(this,t,e),this.isPseudoElement=!0,this.before=":before"===n}var r=t("./nodecontainer");n.prototype.cloneTo=function(t){n.prototype.cloneTo.call(this,t),t.isPseudoElement=!0,t.before=this.before},(n.prototype=Object.create(r.prototype)).appendToDOM=function(){this.before?this.parent.node.insertBefore(this.node,this.parent.node.firstChild):this.parent.node.appendChild(this.node),this.parent.node.className+=" "+this.getHideClass()},n.prototype.cleanDOM=function(){this.node.parentNode.removeChild(this.node),this.parent.node.className=this.parent.node.className.replace(this.getHideClass(),"")},n.prototype.getHideClass=function(){return this["PSEUDO_HIDE_ELEMENT_CLASS_"+(this.before?"BEFORE":"AFTER")]},n.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE="___html2canvas___pseudoelement_before",n.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER="___html2canvas___pseudoelement_after",e.exports=n},{"./nodecontainer":14}],19:[function(t,e){function n(t,e,n,r,i){this.width=t,this.height=e,this.images=n,this.options=r,this.document=i}var a=t("./log");n.prototype.renderImage=function(t,e,n,r){var i=t.cssInt("paddingLeft"),o=t.cssInt("paddingTop"),s=t.cssInt("paddingRight"),t=t.cssInt("paddingBottom"),n=n.borders,s=e.width-(n[1].width+n[3].width+i+s),t=e.height-(n[0].width+n[2].width+o+t);this.drawImage(r,0,0,r.image.width||s,r.image.height||t,e.left+i+n[3].width,e.top+o+n[0].width,s,t)},n.prototype.renderBackground=function(t,e,n){0<e.height&&0<e.width&&(this.renderBackgroundColor(t,e),this.renderBackgroundImage(t,e,n))},n.prototype.renderBackgroundColor=function(t,e){t=t.color("backgroundColor");t.isTransparent()||this.rectangle(e.left,e.top,e.width,e.height,t)},n.prototype.renderBorders=function(t){t.forEach(this.renderBorder,this)},n.prototype.renderBorder=function(t){t.color.isTransparent()||null===t.args||this.drawShape(t.args,t.color)},n.prototype.renderBackgroundImage=function(i,o,s){i.parseBackgroundImages().reverse().forEach(function(t,e,n){switch(t.method){case"url":var r=this.images.get(t.args[0]);r?this.renderBackgroundRepeating(i,o,r,n.length-(e+1),s):a("Error loading background-image",t.args[0]);break;case"linear-gradient":case"gradient":r=this.images.get(t.value);r?this.renderBackgroundGradient(r,o,s):a("Error loading background-image",t.args[0]);break;case"none":break;default:a("Unknown background-image type",t.args[0])}},this)},n.prototype.renderBackgroundRepeating=function(t,e,n,r,i){var o=t.parseBackgroundSize(e,n.image,r),s=t.parseBackgroundPosition(e,n.image,r,o);switch(t.parseBackgroundRepeat(r)){case"repeat-x":case"repeat no-repeat":this.backgroundRepeatShape(n,s,o,e,e.left+i[3],e.top+s.top+i[0],99999,o.height,i);break;case"repeat-y":case"no-repeat repeat":this.backgroundRepeatShape(n,s,o,e,e.left+s.left+i[3],e.top+i[0],o.width,99999,i);break;case"no-repeat":this.backgroundRepeatShape(n,s,o,e,e.left+s.left+i[3],e.top+s.top+i[0],o.width,o.height,i);break;default:this.renderBackgroundRepeat(n,s,o,{top:e.top,left:e.left},i[3],i[0])}},e.exports=n},{"./log":13}],20:[function(t,e){function n(t,e){i.apply(this,arguments),this.canvas=this.options.canvas||this.document.createElement("canvas"),this.options.canvas||(this.canvas.width=t,this.canvas.height=e),this.ctx=this.canvas.getContext("2d"),this.taintCtx=this.document.createElement("canvas").getContext("2d"),this.ctx.textBaseline="bottom",this.variables={},s("Initialized CanvasRenderer with size",t,"x",e)}function r(t){return 0<t.length}var i=t("../renderer"),o=t("../lineargradientcontainer"),s=t("../log");(n.prototype=Object.create(i.prototype)).setFillStyle=function(t){return this.ctx.fillStyle="object"==typeof t&&t.isColor?t.toString():t,this.ctx},n.prototype.rectangle=function(t,e,n,r,i){this.setFillStyle(i).fillRect(t,e,n,r)},n.prototype.circle=function(t,e,n,r){this.setFillStyle(r),this.ctx.beginPath(),this.ctx.arc(t+n/2,e+n/2,n/2,0,2*Math.PI,!0),this.ctx.closePath(),this.ctx.fill()},n.prototype.circleStroke=function(t,e,n,r,i,o){this.circle(t,e,n,r),this.ctx.strokeStyle=o.toString(),this.ctx.stroke()},n.prototype.drawShape=function(t,e){this.shape(t),this.setFillStyle(e).fill()},n.prototype.taints=function(e){if(null===e.tainted){this.taintCtx.drawImage(e.image,0,0);try{this.taintCtx.getImageData(0,0,1,1),e.tainted=!1}catch(t){this.taintCtx=document.createElement("canvas").getContext("2d"),e.tainted=!0}}return e.tainted},n.prototype.drawImage=function(t,e,n,r,i,o,s,a,u){this.taints(t)&&!this.options.allowTaint||this.ctx.drawImage(t.image,e,n,r,i,o,s,a,u)},n.prototype.clip=function(t,e,n){this.ctx.save(),t.filter(r).forEach(function(t){this.shape(t).clip()},this),e.call(n),this.ctx.restore()},n.prototype.shape=function(t){return this.ctx.beginPath(),t.forEach(function(t,e){("rect"===t[0]?this.ctx.rect:this.ctx[0===e?"moveTo":t[0]+"To"]).apply(this.ctx,t.slice(1))},this),this.ctx.closePath(),this.ctx},n.prototype.font=function(t,e,n,r,i,o){this.setFillStyle(t).font=[e,n,r,i,o].join(" ").split(",")[0]},n.prototype.fontShadow=function(t,e,n,r){this.setVariable("shadowColor",t.toString()).setVariable("shadowOffsetY",e).setVariable("shadowOffsetX",n).setVariable("shadowBlur",r)},n.prototype.clearShadow=function(){this.setVariable("shadowColor","rgba(0,0,0,0)")},n.prototype.setOpacity=function(t){this.ctx.globalAlpha=t},n.prototype.setTransform=function(t){this.ctx.translate(t.origin[0],t.origin[1]),this.ctx.transform.apply(this.ctx,t.matrix),this.ctx.translate(-t.origin[0],-t.origin[1])},n.prototype.setVariable=function(t,e){return this.variables[t]!==e&&(this.variables[t]=this.ctx[t]=e),this},n.prototype.text=function(t,e,n){this.ctx.fillText(t,e,n)},n.prototype.backgroundRepeatShape=function(t,e,n,r,i,o,s,a,u){o=[["line",Math.round(i),Math.round(o)],["line",Math.round(i+s),Math.round(o)],["line",Math.round(i+s),Math.round(a+o)],["line",Math.round(i),Math.round(a+o)]];this.clip([o],function(){this.renderBackgroundRepeat(t,e,n,r,u[3],u[0])},this)},n.prototype.renderBackgroundRepeat=function(t,e,n,r,i,o){i=Math.round(r.left+e.left+i),o=Math.round(r.top+e.top+o);this.setFillStyle(this.ctx.createPattern(this.resizeImage(t,n),"repeat")),this.ctx.translate(i,o),this.ctx.fill(),this.ctx.translate(-i,-o)},n.prototype.renderBackgroundGradient=function(t,e){var n;t instanceof o&&(n=this.ctx.createLinearGradient(e.left+e.width*t.x0,e.top+e.height*t.y0,e.left+e.width*t.x1,e.top+e.height*t.y1),t.colorStops.forEach(function(t){n.addColorStop(t.stop,t.color.toString())}),this.rectangle(e.left,e.top,e.width,e.height,n))},n.prototype.resizeImage=function(t,e){var n=t.image;if(n.width===e.width&&n.height===e.height)return n;t=document.createElement("canvas");return t.width=e.width,t.height=e.height,t.getContext("2d").drawImage(n,0,0,n.width,n.height,0,0,e.width,e.height),t},e.exports=n},{"../lineargradientcontainer":12,"../log":13,"../renderer":19}],21:[function(t,e){function n(t,e,n,r){i.call(this,n,r),this.ownStacking=t,this.contexts=[],this.children=[],this.opacity=(this.parent?this.parent.stack.opacity:1)*e}var i=t("./nodecontainer");(n.prototype=Object.create(i.prototype)).getParentStack=function(t){var e=this.parent?this.parent.stack:null;return e?e.ownStacking?e:e.getParentStack(t):t.stack},e.exports=n},{"./nodecontainer":14}],22:[function(t,e){function n(t){this.rangeBounds=this.testRangeBounds(t),this.cors=this.testCORS(),this.svg=this.testSVG()}n.prototype.testRangeBounds=function(t){var e,n,r=!1;return t.createRange&&((e=t.createRange()).getBoundingClientRect&&((n=t.createElement("boundtest")).style.height="123px",n.style.display="block",t.body.appendChild(n),e.selectNode(n),123===e.getBoundingClientRect().height&&(r=!0),t.body.removeChild(n))),r},n.prototype.testCORS=function(){return void 0!==(new Image).crossOrigin},n.prototype.testSVG=function(){var t=new Image,e=document.createElement("canvas"),n=e.getContext("2d");t.src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";try{n.drawImage(t,0,0),e.toDataURL()}catch(t){return!1}return!0},e.exports=n},{}],23:[function(t,e){function n(t){this.src=t,this.image=null;var n=this;this.promise=this.hasFabric().then(function(){return n.isInline(t)?Promise.resolve(n.inlineFormatting(t)):r(t)}).then(function(e){return new Promise(function(t){window.html2canvas.svg.fabric.loadSVGFromString(e,n.createCanvas.call(n,t))})})}var r=t("./xhr"),i=t("./utils").decode64;n.prototype.hasFabric=function(){return window.html2canvas.svg&&window.html2canvas.svg.fabric?Promise.resolve():Promise.reject(new Error("html2canvas.svg.js is not loaded, cannot render svg"))},n.prototype.inlineFormatting=function(t){return/^data:image\/svg\+xml;base64,/.test(t)?this.decode64(this.removeContentType(t)):this.removeContentType(t)},n.prototype.removeContentType=function(t){return t.replace(/^data:image\/svg\+xml(;base64)?,/,"")},n.prototype.isInline=function(t){return/^data:image\/svg\+xml/i.test(t)},n.prototype.createCanvas=function(r){var i=this;return function(t,e){var n=new window.html2canvas.svg.fabric.StaticCanvas("c");i.image=n.lowerCanvasEl,n.setWidth(e.width).setHeight(e.height).add(window.html2canvas.svg.fabric.util.groupSVGElements(t,e)).renderAll(),r(n.lowerCanvasEl)}},n.prototype.decode64=function(t){return"function"==typeof window.atob?window.atob(t):i(t)},e.exports=n},{"./utils":26,"./xhr":28}],24:[function(t,e){function n(n,t){this.src=n,this.image=null;var r=this;this.promise=t?new Promise(function(t,e){r.image=new Image,r.image.onload=t,r.image.onerror=e,r.image.src="data:image/svg+xml,"+(new XMLSerializer).serializeToString(n),!0===r.image.complete&&t(r.image)}):this.hasFabric().then(function(){return new Promise(function(t){window.html2canvas.svg.fabric.parseSVGDocument(n,r.createCanvas.call(r,t))})})}t=t("./svgcontainer");n.prototype=Object.create(t.prototype),e.exports=n},{"./svgcontainer":23}],25:[function(t,e){function n(t,e){i.call(this,t,e)}function r(t,e,n){return 0<t.length?e+n.toUpperCase():void 0}var i=t("./nodecontainer");(n.prototype=Object.create(i.prototype)).applyTextTransform=function(){this.node.data=this.transform(this.parent.css("textTransform"))},n.prototype.transform=function(t){var e=this.node.data;switch(t){case"lowercase":return e.toLowerCase();case"capitalize":return e.replace(/(^|\s|:|-|\(|\))([a-z])/g,r);case"uppercase":return e.toUpperCase();default:return e}},e.exports=n},{"./nodecontainer":14}],26:[function(t,e,n){n.smallImage=function(){return"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"},n.bind=function(t,e){return function(){return t.apply(e,arguments)}},n.decode64=function(t){for(var e,n,r,i,o,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=t.length,u="",c=0;c<a;c+=4)r=s.indexOf(t[c])<<2|(o=s.indexOf(t[c+1]))>>4,i=(15&o)<<4|(e=s.indexOf(t[c+2]))>>2,o=(3&e)<<6|(n=s.indexOf(t[c+3])),u+=64===e?String.fromCharCode(r):64===n||-1===n?String.fromCharCode(r,i):String.fromCharCode(r,i,o);return u},n.getBounds=function(t){if(t.getBoundingClientRect){var e=t.getBoundingClientRect(),n=null==t.offsetWidth?e.width:t.offsetWidth;return{top:e.top,bottom:e.bottom||e.top+e.height,right:e.left+n,left:e.left,width:n,height:null==t.offsetHeight?e.height:t.offsetHeight}}return{}},n.offsetBounds=function(t){var e=t.offsetParent?n.offsetBounds(t.offsetParent):{top:0,left:0};return{top:t.offsetTop+e.top,bottom:t.offsetTop+t.offsetHeight+e.top,right:t.offsetLeft+e.left+t.offsetWidth,left:t.offsetLeft+e.left,width:t.offsetWidth,height:t.offsetHeight}},n.parseBackgrounds=function(t){function e(){h&&((n='"'===n.substr(0,1)?n.substr(1,n.length-2):n)&&l.push(n),"-"===h.substr(0,1)&&0<(i=h.indexOf("-",1)+1)&&(r=h.substr(0,i),h=h.substr(i)),a.push({prefix:r,method:h.toLowerCase(),value:o,args:l,image:null})),l=[],h=r=n=o=""}var n,r,i,o,s,a=[],u=0,c=0,l=[],h=r=n=o="";return t.split("").forEach(function(t){if(!(0===u&&-1<" \r\n\t".indexOf(t))){switch(t){case'"':s?s===t&&(s=null):s=t;break;case"(":if(s)break;if(0===u)return u=1,void(o+=t);c++;break;case")":if(s)break;if(1===u){if(0===c)return u=0,o+=t,void e();c--}break;case",":if(s)break;if(0===u)return void e();if(1===u&&0===c&&!h.match(/^url$/i))return l.push(n),n="",void(o+=t)}o+=t,0===u?h+=t:n+=t}}),e(),a}},{}],27:[function(t,e){function n(t){r.apply(this,arguments),this.type="linear"===t.args[0]?r.TYPES.LINEAR:r.TYPES.RADIAL}var r=t("./gradientcontainer");n.prototype=Object.create(r.prototype),e.exports=n},{"./gradientcontainer":9}],28:[function(t,e){e.exports=function(r){return new Promise(function(t,e){var n=new XMLHttpRequest;n.open("GET",r),n.onload=function(){200===n.status?t(n.responseText):e(new Error(n.statusText))},n.onerror=function(){e(new Error("Network Error"))},n.send()})}},{}]},{},[4])(4)}),function(t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).localforage=t()}(function(){return function r(i,o,s){function a(e,t){if(!o[e]){if(!i[e]){var n="function"==typeof require&&require;if(!t&&n)return n(e,!0);if(u)return u(e,!0);n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n=o[e]={exports:{}};i[e][0].call(n.exports,function(t){return a(i[e][1][t]||t)},n,n.exports,r,i,o,s)}return o[e].exports}for(var u="function"==typeof require&&require,t=0;t<s.length;t++)a(s[t]);return a}({1:[function(t,c,e){!function(e){"use strict";function n(){o=!0;for(var t,e,n=u.length;n;){for(e=u,u=[],t=-1;++t<n;)e[t]();n=u.length}o=!1}var t,r,i,o,s=e.MutationObserver||e.WebKitMutationObserver,a=s?(t=0,s=new s(n),r=e.document.createTextNode(""),s.observe(r,{characterData:!0}),function(){r.data=t=++t%2}):e.setImmediate||void 0===e.MessageChannel?"document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){n(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(n,0)}:((i=new e.MessageChannel).port1.onmessage=n,function(){i.port2.postMessage(0)}),u=[];c.exports=function(t){1!==u.push(t)||o||a()}}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(t,e,n){"use strict";function c(){}function r(t){if("function"!=typeof t)throw new TypeError("resolver must be a function");this.state=d,this.queue=[],this.outcome=void 0,t!==c&&a(this,t)}function i(t,e,n){this.promise=t,"function"==typeof e&&(this.onFulfilled=e,this.callFulfilled=this.otherCallFulfilled),"function"==typeof n&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}function o(e,n,r){l(function(){var t;try{t=n(r)}catch(t){return h.reject(e,t)}t===e?h.reject(e,new TypeError("Cannot resolve promise with itself")):h.resolve(e,t)})}function s(t){var e=t&&t.then;if(t&&("object"==typeof t||"function"==typeof t)&&"function"==typeof e)return function(){e.apply(t,arguments)}}function a(e,t){function n(t){i||(i=!0,h.reject(e,t))}function r(t){i||(i=!0,h.resolve(e,t))}var i=!1,o=u(function(){t(r,n)});"error"===o.status&&n(o.value)}function u(t,e){var n={};try{n.value=t(e),n.status="success"}catch(t){n.status="error",n.value=t}return n}var l=t(1),h={},f=["REJECTED"],p=["FULFILLED"],d=["PENDING"];(e.exports=r).prototype.catch=function(t){return this.then(null,t)},r.prototype.then=function(t,e){if("function"!=typeof t&&this.state===p||"function"!=typeof e&&this.state===f)return this;var n=new this.constructor(c);return this.state!==d?o(n,this.state===p?t:e,this.outcome):this.queue.push(new i(n,t,e)),n},i.prototype.callFulfilled=function(t){h.resolve(this.promise,t)},i.prototype.otherCallFulfilled=function(t){o(this.promise,this.onFulfilled,t)},i.prototype.callRejected=function(t){h.reject(this.promise,t)},i.prototype.otherCallRejected=function(t){o(this.promise,this.onRejected,t)},h.resolve=function(t,e){var n=u(s,e);if("error"===n.status)return h.reject(t,n.value);n=n.value;if(n)a(t,n);else{t.state=p,t.outcome=e;for(var r=-1,i=t.queue.length;++r<i;)t.queue[r].callFulfilled(e)}return t},h.reject=function(t,e){t.state=f,t.outcome=e;for(var n=-1,r=t.queue.length;++n<r;)t.queue[n].callRejected(e);return t},r.resolve=function(t){return t instanceof this?t:h.resolve(new this(c),t)},r.reject=function(t){var e=new this(c);return h.reject(e,t)},r.all=function(t){function e(t,e){n.resolve(t).then(function(t){o[e]=t,++s!==r||i||(i=!0,h.resolve(u,o))},function(t){i||(i=!0,h.reject(u,t))})}var n=this;if("[object Array]"!==Object.prototype.toString.call(t))return this.reject(new TypeError("must be an array"));var r=t.length,i=!1;if(!r)return this.resolve([]);for(var o=new Array(r),s=0,a=-1,u=new this(c);++a<r;)e(t[a],a);return u},r.race=function(t){var e=this;if("[object Array]"!==Object.prototype.toString.call(t))return this.reject(new TypeError("must be an array"));var n=t.length,r=!1;if(!n)return this.resolve([]);for(var i,o=-1,s=new this(c);++o<n;)i=t[o],e.resolve(i).then(function(t){r||(r=!0,h.resolve(s,t))},function(t){r||(r=!0,h.reject(s,t))});return s}},{1:1}],3:[function(e,t,n){!function(t){"use strict";"function"!=typeof t.Promise&&(t.Promise=e(2))}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{2:2}],4:[function(t,e,n){"use strict";function o(e,n){e=e||[],n=n||{};try{return new Blob(e,n)}catch(t){if("TypeError"!==t.name)throw t;for(var r=new("undefined"!=typeof BlobBuilder?BlobBuilder:"undefined"!=typeof MSBlobBuilder?MSBlobBuilder:"undefined"!=typeof MozBlobBuilder?MozBlobBuilder:WebKitBlobBuilder),i=0;i<e.length;i+=1)r.append(e[i]);return r.getBlob(n.type)}}function l(t,e){e&&t.then(function(t){e(null,t)},function(t){e(t)})}function u(t,e,n){"function"==typeof e&&t.then(e),"function"==typeof n&&t.catch(n)}function h(t){return t="string"!=typeof t?String(t):t}function a(){if(arguments.length&&"function"==typeof arguments[arguments.length-1])return arguments[arguments.length-1]}function r(t){return"boolean"==typeof N?P.resolve(N):(r=t,new P(function(n){var t=r.transaction(D,L),e=o([""]);t.objectStore(D).put(e,"key"),t.onabort=function(t){t.preventDefault(),t.stopPropagation(),n(!1)},t.oncomplete=function(){var t=navigator.userAgent.match(/Chrome\/(\d+)/),e=navigator.userAgent.match(/Edge\//);n(e||!t||43<=parseInt(t[1],10))}}).catch(function(){return!1}).then(function(t){return N=t}));var r}function c(t){var t=R[t.name],n={};n.promise=new P(function(t,e){n.resolve=t,n.reject=e}),t.deferredOperations.push(n),t.dbReady?t.dbReady=t.dbReady.then(function(){return n.promise}):t.dbReady=n.promise}function f(t){t=R[t.name].deferredOperations.pop();return t&&(t.resolve(),t.promise)}function p(t,e){t=R[t.name].deferredOperations.pop();if(t)return t.reject(e),t.promise}function i(i,o){return new P(function(t,e){if(R[i.name]=R[i.name]||_(),i.db){if(!o)return t(i.db);c(i),i.db.close()}var n=[i.name];o&&n.push(i.version);var r=I.open.apply(I,n);o&&(r.onupgradeneeded=function(t){var e=r.result;try{e.createObjectStore(i.storeName),t.oldVersion<=1&&e.createObjectStore(D)}catch(e){if("ConstraintError"!==e.name)throw e}}),r.onerror=function(t){t.preventDefault(),e(r.error)},r.onsuccess=function(){t(r.result),f(i)}})}function d(t){return i(t,!1)}function g(t){return i(t,!0)}function m(t){if(!t.db)return 1;var e=!t.db.objectStoreNames.contains(t.storeName),n=t.version<t.db.version,r=t.version>t.db.version;return n&&(t.version,t.version=t.db.version),(r||e)&&(!e||(e=t.db.version+1)>t.version&&(t.version=e),1)}function v(t){return o([function(t){for(var e=t.length,n=new ArrayBuffer(e),r=new Uint8Array(n),i=0;i<e;i++)r[i]=t.charCodeAt(i);return n}(atob(t.data))],{type:t.type})}function y(t){return t&&t.__local_forage_encoded_blob}function b(t){var e=this,n=e._initReady().then(function(){var t=R[e._dbInfo.name];if(t&&t.dbReady)return t.dbReady});return u(n,t,t),n}function w(t,e,n,r){void 0===r&&(r=1);try{var i=t.db.transaction(t.storeName,e);n(null,i)}catch(i){if(0<r&&(!t.db||"InvalidStateError"===i.name||"NotFoundError"===i.name))return P.resolve().then(function(){if(!t.db||"NotFoundError"===i.name&&!t.db.objectStoreNames.contains(t.storeName)&&t.version<=t.db.version)return t.db&&(t.version=t.db.version+1),g(t)}).then(function(){return function(n){c(n);for(var r=R[n.name],i=r.forages,t=0;t<i.length;t++){var e=i[t];e._dbInfo.db&&(e._dbInfo.db.close(),e._dbInfo.db=null)}return n.db=null,d(n).then(function(t){return n.db=t,m(n)?g(n):t}).then(function(t){n.db=r.db=t;for(var e=0;e<i.length;e++)i[e]._dbInfo.db=t}).catch(function(t){throw p(n,t),t})}(t).then(function(){w(t,e,n,r-1)})}).catch(n);n(i)}}function _(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function s(t){var e,n,r,i,o=.75*t.length,s=t.length,a=0;"="===t[t.length-1]&&(o--,"="===t[t.length-2]&&o--);for(var o=new ArrayBuffer(o),u=new Uint8Array(o),c=0;c<s;c+=4)e=H.indexOf(t[c]),n=H.indexOf(t[c+1]),r=H.indexOf(t[c+2]),i=H.indexOf(t[c+3]),u[a++]=e<<2|n>>4,u[a++]=(15&n)<<4|r>>2,u[a++]=(3&r)<<6|63&i;return o}function x(t){for(var e=new Uint8Array(t),n="",r=0;r<e.length;r+=3)n+=H[e[r]>>2],n+=H[(3&e[r])<<4|e[r+1]>>4],n+=H[(15&e[r+1])<<2|e[r+2]>>6],n+=H[63&e[r+2]];return e.length%3==2?n=n.substring(0,n.length-1)+"=":e.length%3==1&&(n=n.substring(0,n.length-2)+"=="),n}function C(t,e,n,r){t.executeSql("CREATE TABLE IF NOT EXISTS "+e.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],n,r)}function k(t,r,i,o,s,a){t.executeSql(i,o,s,function(t,n){n.code===n.SYNTAX_ERR?t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[name],function(t,e){e.rows.length?a(t,n):C(t,r,function(){t.executeSql(i,o,s,a)},a)},a):a(t,n)},a)}function S(s,t,a,u){var c=this;s=h(s);var e=new P(function(i,o){c.ready().then(function(){var n=t=void 0===t?null:t,r=c._dbInfo;r.serializer.serialize(t,function(e,t){t?o(t):r.db.transaction(function(t){k(t,r,"INSERT OR REPLACE INTO "+r.storeName+" (key, value) VALUES (?, ?)",[s,e],function(){i(n)},function(t,e){o(e)})},function(t){t.code===t.QUOTA_ERR&&(0<u?i(S.apply(c,[s,n,a,u-1])):o(t))})})}).catch(o)});return l(e,a),e}function O(t,e){var n=t.name+"/";return t.storeName!==e.storeName&&(n+=t.storeName+"/"),n}function E(){return!function(){var t="_localforage_support_test";try{return localStorage.setItem(t,!0),localStorage.removeItem(t),0}catch(t){return 1}}()||0<localStorage.length}function T(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];if(n)for(var r in n)n.hasOwnProperty(r)&&(X(n[r])?t[r]=n[r].slice():t[r]=n[r])}return t}var A="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},I=function(){try{if("undefined"!=typeof indexedDB)return indexedDB;if("undefined"!=typeof webkitIndexedDB)return webkitIndexedDB;if("undefined"!=typeof mozIndexedDB)return mozIndexedDB;if("undefined"!=typeof OIndexedDB)return OIndexedDB;if("undefined"!=typeof msIndexedDB)return msIndexedDB}catch(t){return}}();"undefined"==typeof Promise&&t(3);function j(t,e){for(var n,r,i=t.length,o=0;o<i;){if((n=t[o])===(r=e)||"number"==typeof n&&"number"==typeof r&&isNaN(n)&&isNaN(r))return 1;o++}}var P=Promise,D="local-forage-detect-blob-support",N=void 0,R={},M=Object.prototype.toString,W="readonly",L="readwrite",F={_driver:"asyncStorage",_initStorage:function(t){function e(){return P.resolve()}var r=this,i={db:null};if(t)for(var n in t)i[n]=t[n];var o=R[i.name];o||(o=_(),R[i.name]=o),o.forages.push(r),r._initReady||(r._initReady=r.ready,r.ready=b);for(var s=[],a=0;a<o.forages.length;a++){var u=o.forages[a];u!==r&&s.push(u._initReady().catch(e))}var c=o.forages.slice(0);return P.all(s).then(function(){return i.db=o.db,d(i)}).then(function(t){return i.db=t,m(i,r._defaultConfig.version)?g(i):t}).then(function(t){i.db=o.db=t,r._dbInfo=i;for(var e=0;e<c.length;e++){var n=c[e];n!==r&&(n._dbInfo.db=i.db,n._dbInfo.version=i.version)}})},_support:function(){try{if(!I)return!1;var t="undefined"!=typeof openDatabase&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),e="function"==typeof fetch&&-1!==fetch.toString().indexOf("[native code");return(!t||e)&&"undefined"!=typeof indexedDB&&"undefined"!=typeof IDBKeyRange}catch(t){return!1}}(),iterate:function(s,t){var a=this,e=new P(function(i,o){a.ready().then(function(){w(a._dbInfo,W,function(t,e){if(t)return o(t);try{var n=e.objectStore(a._dbInfo.storeName).openCursor(),r=1;n.onsuccess=function(){var t,e=n.result;e?(y(t=e.value)&&(t=v(t)),void 0!==(t=s(t,e.key,r++))?i(t):e.continue()):i()},n.onerror=function(){o(n.error)}}catch(t){o(t)}})}).catch(o)});return l(e,t),e},getItem:function(o,t){var s=this;o=h(o);var e=new P(function(r,i){s.ready().then(function(){w(s._dbInfo,W,function(t,e){if(t)return i(t);try{var n=e.objectStore(s._dbInfo.storeName).get(o);n.onsuccess=function(){var t=n.result;y(t=void 0===t?null:t)&&(t=v(t)),r(t)},n.onerror=function(){i(n.error)}}catch(t){i(t)}})}).catch(i)});return l(e,t),e},setItem:function(a,e,t){var u=this;a=h(a);var n=new P(function(o,s){var t;u.ready().then(function(){return t=u._dbInfo,"[object Blob]"===M.call(e)?r(t.db).then(function(t){return t?e:(r=e,new P(function(e,t){var n=new FileReader;n.onerror=t,n.onloadend=function(t){t=btoa(t.target.result||"");e({__local_forage_encoded_blob:!0,data:t,type:r.type})},n.readAsBinaryString(r)}));var r}):e}).then(function(i){w(u._dbInfo,L,function(t,e){if(t)return s(t);try{var n=e.objectStore(u._dbInfo.storeName);null===i&&(i=void 0);var r=n.put(i,a);e.oncomplete=function(){o(i=void 0===i?null:i)},e.onabort=e.onerror=function(){var t=r.error||r.transaction.error;s(t)}}catch(t){s(t)}})}).catch(s)});return l(n,t),n},removeItem:function(o,t){var s=this;o=h(o);var e=new P(function(r,i){s.ready().then(function(){w(s._dbInfo,L,function(t,e){if(t)return i(t);try{var n=e.objectStore(s._dbInfo.storeName).delete(o);e.oncomplete=function(){r()},e.onerror=function(){i(n.error)},e.onabort=function(){var t=n.error||n.transaction.error;i(t)}}catch(t){i(t)}})}).catch(i)});return l(e,t),e},clear:function(t){var o=this,e=new P(function(r,i){o.ready().then(function(){w(o._dbInfo,L,function(t,e){if(t)return i(t);try{var n=e.objectStore(o._dbInfo.storeName).clear();e.oncomplete=function(){r()},e.onabort=e.onerror=function(){var t=n.error||n.transaction.error;i(t)}}catch(t){i(t)}})}).catch(i)});return l(e,t),e},length:function(t){var o=this,e=new P(function(r,i){o.ready().then(function(){w(o._dbInfo,W,function(t,e){if(t)return i(t);try{var n=e.objectStore(o._dbInfo.storeName).count();n.onsuccess=function(){r(n.result)},n.onerror=function(){i(n.error)}}catch(t){i(t)}})}).catch(i)});return l(e,t),e},key:function(a,t){var u=this,e=new P(function(o,s){a<0?o(null):u.ready().then(function(){w(u._dbInfo,W,function(t,e){if(t)return s(t);try{var n=e.objectStore(u._dbInfo.storeName),r=!1,i=n.openCursor();i.onsuccess=function(){var t=i.result;t?0===a||r?o(t.key):(r=!0,t.advance(a)):o(null)},i.onerror=function(){s(i.error)}}catch(t){s(t)}})}).catch(s)});return l(e,t),e},keys:function(t){var s=this,e=new P(function(i,o){s.ready().then(function(){w(s._dbInfo,W,function(t,e){if(t)return o(t);try{var n=e.objectStore(s._dbInfo.storeName).openCursor(),r=[];n.onsuccess=function(){var t=n.result;t?(r.push(t.key),t.continue()):i(r)},n.onerror=function(){o(n.error)}}catch(t){o(t)}})}).catch(o)});return l(e,t),e},dropInstance:function(s,t){t=a.apply(this,arguments);var e,n=this.config();return(s="function"!=typeof s&&s||{}).name||(s.name=s.name||n.name,s.storeName=s.storeName||n.storeName),l(e=s.name?(e=s.name===n.name&&this._dbInfo.db?P.resolve(this._dbInfo.db):d(s).then(function(t){var e=R[s.name],n=e.forages;e.db=t;for(var r=0;r<n.length;r++)n[r]._dbInfo.db=t;return t}),s.storeName?e.then(function(t){if(t.objectStoreNames.contains(s.storeName)){var i=t.version+1;c(s);var r=R[s.name],o=r.forages;t.close();for(var e=0;e<o.length;e++){var n=o[e];n._dbInfo.db=null,n._dbInfo.version=i}return new P(function(e,n){var r=I.open(s.name,i);r.onerror=function(t){r.result.close(),n(t)},r.onupgradeneeded=function(){r.result.deleteObjectStore(s.storeName)},r.onsuccess=function(){var t=r.result;t.close(),e(t)}}).then(function(t){r.db=t;for(var e=0;e<o.length;e++){var n=o[e];n._dbInfo.db=t,f(n._dbInfo)}}).catch(function(t){throw(p(s,t)||P.resolve()).catch(function(){}),t})}}):e.then(function(t){c(s);var n=R[s.name],r=n.forages;t.close();for(var e=0;e<r.length;e++)r[e]._dbInfo.db=null;return new P(function(e,n){var r=I.deleteDatabase(s.name);r.onerror=r.onblocked=function(t){var e=r.result;e&&e.close(),n(t)},r.onsuccess=function(){var t=r.result;t&&t.close(),e(t)}}).then(function(t){n.db=t;for(var e=0;e<r.length;e++)f(r[e]._dbInfo)}).catch(function(t){throw(p(s,t)||P.resolve()).catch(function(){}),t})})):P.reject("Invalid arguments"),t),e}},H="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",B=/^~~local_forage_type~([^~]+)~/,q="__lfsc__:",z=q.length,U=z+"arbf".length,G=Object.prototype.toString,V={serialize:function(e,n){var t="";if(e&&(t=G.call(e)),e&&("[object ArrayBuffer]"===t||e.buffer&&"[object ArrayBuffer]"===G.call(e.buffer))){var r=q;e instanceof ArrayBuffer?(i=e,r+="arbf"):(i=e.buffer,"[object Int8Array]"===t?r+="si08":"[object Uint8Array]"===t?r+="ui08":"[object Uint8ClampedArray]"===t?r+="uic8":"[object Int16Array]"===t?r+="si16":"[object Uint16Array]"===t?r+="ur16":"[object Int32Array]"===t?r+="si32":"[object Uint32Array]"===t?r+="ui32":"[object Float32Array]"===t?r+="fl32":"[object Float64Array]"===t?r+="fl64":n(new Error("Failed to get type for BinaryArray"))),n(r+x(i))}else if("[object Blob]"===t){var i=new FileReader;i.onload=function(){var t="~~local_forage_type~"+e.type+"~"+x(this.result);n(q+"blob"+t)},i.readAsArrayBuffer(e)}else try{n(JSON.stringify(e))}catch(t){n(null,t)}},deserialize:function(t){if(t.substring(0,z)!==q)return JSON.parse(t);var e,n=t.substring(U),r=t.substring(z,U);"blob"===r&&B.test(n)&&(e=(t=n.match(B))[1],n=n.substring(t[0].length));var i=s(n);switch(r){case"arbf":return i;case"blob":return o([i],{type:e});case"si08":return new Int8Array(i);case"ui08":return new Uint8Array(i);case"uic8":return new Uint8ClampedArray(i);case"si16":return new Int16Array(i);case"ur16":return new Uint16Array(i);case"si32":return new Int32Array(i);case"ui32":return new Uint32Array(i);case"fl32":return new Float32Array(i);case"fl64":return new Float64Array(i);default:throw new Error("Unkown type: "+r)}},stringToBuffer:s,bufferToString:x},$={_driver:"webSQLStorage",_initStorage:function(t){var r=this,i={db:null};if(t)for(var e in t)i[e]="string"!=typeof t[e]?t[e].toString():t[e];var n=new P(function(e,n){try{i.db=openDatabase(i.name,String(i.version),i.description,i.size)}catch(e){return n(e)}i.db.transaction(function(t){C(t,i,function(){r._dbInfo=i,e()},function(t,e){n(e)})},n)});return i.serializer=V,n},_support:"function"==typeof openDatabase,iterate:function(c,t){var e=this,n=new P(function(u,n){e.ready().then(function(){var a=e._dbInfo;a.db.transaction(function(t){k(t,a,"SELECT * FROM "+a.storeName,[],function(t,e){for(var n=e.rows,r=n.length,i=0;i<r;i++){var o=n.item(i),s=(s=o.value)&&a.serializer.deserialize(s);if(void 0!==(s=c(s,o.key,i+1)))return void u(s)}u()},function(t,e){n(e)})})}).catch(n)});return l(n,t),n},getItem:function(e,t){var o=this;e=h(e);var n=new P(function(r,i){o.ready().then(function(){var n=o._dbInfo;n.db.transaction(function(t){k(t,n,"SELECT * FROM "+n.storeName+" WHERE key = ? LIMIT 1",[e],function(t,e){e=(e=e.rows.length?e.rows.item(0).value:null)&&n.serializer.deserialize(e);r(e)},function(t,e){i(e)})})}).catch(i)});return l(n,t),n},setItem:function(t,e,n){return S.apply(this,[t,e,n,1])},removeItem:function(i,t){var o=this;i=h(i);var e=new P(function(n,r){o.ready().then(function(){var e=o._dbInfo;e.db.transaction(function(t){k(t,e,"DELETE FROM "+e.storeName+" WHERE key = ?",[i],function(){n()},function(t,e){r(e)})})}).catch(r)});return l(e,t),e},clear:function(t){var i=this,e=new P(function(n,r){i.ready().then(function(){var e=i._dbInfo;e.db.transaction(function(t){k(t,e,"DELETE FROM "+e.storeName,[],function(){n()},function(t,e){r(e)})})}).catch(r)});return l(e,t),e},length:function(t){var i=this,e=new P(function(n,r){i.ready().then(function(){var e=i._dbInfo;e.db.transaction(function(t){k(t,e,"SELECT COUNT(key) as c FROM "+e.storeName,[],function(t,e){e=e.rows.item(0).c;n(e)},function(t,e){r(e)})})}).catch(r)});return l(e,t),e},key:function(i,t){var o=this,e=new P(function(n,r){o.ready().then(function(){var e=o._dbInfo;e.db.transaction(function(t){k(t,e,"SELECT key FROM "+e.storeName+" WHERE id = ? LIMIT 1",[i+1],function(t,e){e=e.rows.length?e.rows.item(0).key:null;n(e)},function(t,e){r(e)})})}).catch(r)});return l(e,t),e},keys:function(t){var r=this,e=new P(function(i,n){r.ready().then(function(){var e=r._dbInfo;e.db.transaction(function(t){k(t,e,"SELECT key FROM "+e.storeName,[],function(t,e){for(var n=[],r=0;r<e.rows.length;r++)n.push(e.rows.item(r).key);i(n)},function(t,e){n(e)})})}).catch(n)});return l(e,t),e},dropInstance:function(n,t){t=a.apply(this,arguments);var r=this.config();(n="function"!=typeof n&&n||{}).name||(n.name=n.name||r.name,n.storeName=n.storeName||r.storeName);var i=this,e=n.name?new P(function(t){var o,e=n.name===r.name?i._dbInfo.db:openDatabase(n.name,"","",0);t(n.storeName?{db:e,storeNames:[n.storeName]}:(o=e,new P(function(i,n){o.transaction(function(t){t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(t,e){for(var n=[],r=0;r<e.rows.length;r++)n.push(e.rows.item(r).name);i({db:o,storeNames:n})},function(t,e){n(e)})},function(t){n(t)})})))}).then(function(s){return new P(function(i,o){s.db.transaction(function(r){for(var t=[],e=0,n=s.storeNames.length;e<n;e++)t.push(function(e){return new P(function(t,n){r.executeSql("DROP TABLE IF EXISTS "+e,[],function(){t()},function(t,e){n(e)})})}(s.storeNames[e]));P.all(t).then(function(){i()}).catch(function(t){o(t)})},function(t){o(t)})})}):P.reject("Invalid arguments");return l(e,t),e}},t={_driver:"localStorageWrapper",_initStorage:function(t){var e={};if(t)for(var n in t)e[n]=t[n];return e.keyPrefix=O(t,this._defaultConfig),E()?((this._dbInfo=e).serializer=V,P.resolve()):P.reject()},_support:function(){try{return"undefined"!=typeof localStorage&&"setItem"in localStorage&&!!localStorage.setItem}catch(t){return!1}}(),iterate:function(u,t){var c=this,e=c.ready().then(function(){for(var t=c._dbInfo,e=t.keyPrefix,n=e.length,r=localStorage.length,i=1,o=0;o<r;o++){var s=localStorage.key(o);if(0===s.indexOf(e)){var a=(a=localStorage.getItem(s))&&t.serializer.deserialize(a);if(void 0!==(a=u(a,s.substring(n),i++)))return a}}});return l(e,t),e},getItem:function(n,t){var r=this;n=h(n);var e=r.ready().then(function(){var t=r._dbInfo,e=localStorage.getItem(t.keyPrefix+n);return e=e&&t.serializer.deserialize(e)});return l(e,t),e},setItem:function(s,t,e){var a=this;s=h(s);var n=a.ready().then(function(){var o=t=void 0===t?null:t;return new P(function(n,r){var i=a._dbInfo;i.serializer.serialize(t,function(t,e){if(e)r(e);else try{localStorage.setItem(i.keyPrefix+s,t),n(o)}catch(t){"QuotaExceededError"!==t.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==t.name||r(t),r(t)}})})});return l(n,e),n},removeItem:function(e,t){var n=this;e=h(e);var r=n.ready().then(function(){var t=n._dbInfo;localStorage.removeItem(t.keyPrefix+e)});return l(r,t),r},clear:function(t){var r=this,e=r.ready().then(function(){for(var t=r._dbInfo.keyPrefix,e=localStorage.length-1;0<=e;e--){var n=localStorage.key(e);0===n.indexOf(t)&&localStorage.removeItem(n)}});return l(e,t),e},length:function(t){var e=this.keys().then(function(t){return t.length});return l(e,t),e},key:function(n,t){var r=this,e=r.ready().then(function(){var e,t=r._dbInfo;try{e=localStorage.key(n)}catch(t){e=null}return e=e&&e.substring(t.keyPrefix.length)});return l(e,t),e},keys:function(t){var o=this,e=o.ready().then(function(){for(var t=o._dbInfo,e=localStorage.length,n=[],r=0;r<e;r++){var i=localStorage.key(r);0===i.indexOf(t.keyPrefix)&&n.push(i.substring(t.keyPrefix.length))}return n});return l(e,t),e},dropInstance:function(e,t){t=a.apply(this,arguments),(e="function"!=typeof e&&e||{}).name||(r=this.config(),e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var n=this,r=e.name?new P(function(t){t(e.storeName?O(e,n._defaultConfig):e.name+"/")}).then(function(t){for(var e=localStorage.length-1;0<=e;e--){var n=localStorage.key(e);0===n.indexOf(t)&&localStorage.removeItem(n)}}):P.reject("Invalid arguments");return l(r,t),r}},X=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)},Y={},K={},Q={INDEXEDDB:F,WEBSQL:$,LOCALSTORAGE:t},t=[Q.INDEXEDDB._driver,Q.WEBSQL._driver,Q.LOCALSTORAGE._driver],J=["dropInstance"],Z=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(J),tt={description:"",driver:t.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1},t=new(et.prototype.config=function(t){if("object"!==(void 0===t?"undefined":A(t)))return"string"==typeof t?this._config[t]:this._config;if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var e in t){if("storeName"===e&&(t[e]=t[e].replace(/\W/g,"_")),"version"===e&&"number"!=typeof t[e])return new Error("Database version must be a number.");this._config[e]=t[e]}return!("driver"in t&&t.driver)||this.setDriver(this._config.driver)},et.prototype.defineDriver=function(c,t,e){var n=new P(function(e,n){try{var r=c._driver,t=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!c._driver)return void n(t);for(var i=Z.concat("_initStorage"),o=0,s=i.length;o<s;o++){var a=i[o];if((!j(J,a)||c[a])&&"function"!=typeof c[a])return void n(t)}!function(){for(var t=0,e=J.length;t<e;t++){var n=J[t];c[n]||(c[n]=function(e){return function(){var t=new Error("Method "+e+" is not implemented by the current driver"),t=P.reject(t);return l(t,arguments[arguments.length-1]),t}}(n))}}();var u=function(t){Y[r],Y[r]=c,K[r]=t,e()};"_support"in c?c._support&&"function"==typeof c._support?c._support().then(u,n):u(!!c._support):u(!0)}catch(t){n(t)}});return u(n,t,e),n},et.prototype.driver=function(){return this._driver||null},et.prototype.getDriver=function(t,e,n){t=Y[t]?P.resolve(Y[t]):P.reject(new Error("Driver not found."));return u(t,e,n),t},et.prototype.getSerializer=function(t){var e=P.resolve(V);return u(e,t),e},et.prototype.ready=function(t){var e=this,n=e._driverSet.then(function(){return null===e._ready&&(e._ready=e._initDriver()),e._ready});return u(n,t,t),n},et.prototype.setDriver=function(t,e,n){function o(){a._config.driver=a.driver()}function s(t){return a._extend(t),o(),a._ready=a._initStorage(a._config),a._ready}function r(i){return function(){var r=0;return function t(){for(;r<i.length;){var e=i[r];return r++,a._dbInfo=null,a._ready=null,a.getDriver(e).then(s).catch(t)}o();var n=new Error("No available storage method found.");return a._driverSet=P.reject(n),a._driverSet}()}}var a=this;X(t)||(t=[t]);var i=this._getSupportedDrivers(t),t=null!==this._driverSet?this._driverSet.catch(function(){return P.resolve()}):P.resolve();return this._driverSet=t.then(function(){var t=i[0];return a._dbInfo=null,a._ready=null,a.getDriver(t).then(function(t){a._driver=t._driver,o(),a._wrapLibraryMethodsWithReady(),a._initDriver=r(i)})}).catch(function(){o();var t=new Error("No available storage method found.");return a._driverSet=P.reject(t),a._driverSet}),u(this._driverSet,e,n),this._driverSet},et.prototype.supports=function(t){return!!K[t]},et.prototype._extend=function(t){T(this,t)},et.prototype._getSupportedDrivers=function(t){for(var e=[],n=0,r=t.length;n<r;n++){var i=t[n];this.supports(i)&&e.push(i)}return e},et.prototype._wrapLibraryMethodsWithReady=function(){for(var t=0,e=Z.length;t<e;t++)!function(e,n){e[n]=function(){var t=arguments;return e.ready().then(function(){return e[n].apply(e,t)})}}(this,Z[t])},et.prototype.createInstance=function(t){return new et(t)},et);function et(t){for(var e in!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,et),Q){var n,r;Q.hasOwnProperty(e)&&(r=(n=Q[e])._driver,this[e]=r,Y[r]||this.defineDriver(n))}this._defaultConfig=T({},tt),this._config=T({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}e.exports=t},{3:3}]},{},[4])(4)}),function(){function Bo(t,e){return t.set(e[0],e[1]),t}function qo(t,e){return t.add(e),t}function zo(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function Uo(t,e,n,r){for(var i=-1,o=null==t?0:t.length;++i<o;){var s=t[i];e(r,s,n(s),t)}return r}function Go(t,e){for(var n=-1,r=null==t?0:t.length;++n<r&&!1!==e(t[n],n,t););return t}function Vo(t,e){for(var n=null==t?0:t.length;n--&&!1!==e(t[n],n,t););return t}function $o(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(!e(t[n],n,t))return!1;return!0}function Xo(t,e){for(var n=-1,r=null==t?0:t.length,i=0,o=[];++n<r;){var s=t[n];e(s,n,t)&&(o[i++]=s)}return o}function Yo(t,e){return!!(null==t?0:t.length)&&-1<is(t,e,0)}function Ko(t,e,n){for(var r=-1,i=null==t?0:t.length;++r<i;)if(n(e,t[r]))return!0;return!1}function Qo(t,e){for(var n=-1,r=null==t?0:t.length,i=Array(r);++n<r;)i[n]=e(t[n],n,t);return i}function Jo(t,e){for(var n=-1,r=e.length,i=t.length;++n<r;)t[i+n]=e[n];return t}function Zo(t,e,n,r){var i=-1,o=null==t?0:t.length;for(r&&o&&(n=t[++i]);++i<o;)n=e(n,t[i],i,t);return n}function ts(t,e,n,r){var i=null==t?0:t.length;for(r&&i&&(n=t[--i]);i--;)n=e(n,t[i],i,t);return n}function es(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}function ns(t,r,e){var i;return e(t,function(t,e,n){if(r(t,e,n))return i=e,!1}),i}function rs(t,e,n,r){for(var i=t.length,o=n+(r?1:-1);r?o--:++o<i;)if(e(t[o],o,t))return o;return-1}function is(t,e,n){return e==e?function(t,e,n){for(var r=n-1,i=t.length;++r<i;)if(t[r]===e)return r;return-1}(t,e,n):rs(t,ss,n)}function os(t,e,n,r){for(var i=n-1,o=t.length;++i<o;)if(r(t[i],e))return i;return-1}function ss(t){return t!=t}function as(t,e){var n=null==t?0:t.length;return n?ls(t,e)/n:Is}function us(e){return function(t){return null==t?Ss:t[e]}}function t(e){return function(t){return null==e?Ss:e[t]}}function cs(t,r,i,o,e){return e(t,function(t,e,n){i=o?(o=!1,t):r(i,t,e,n)}),i}function ls(t,e){for(var n,r=-1,i=t.length;++r<i;){var o=e(t[r]);o!==Ss&&(n=n===Ss?o:n+o)}return n}function hs(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}function fs(e){return function(t){return e(t)}}function ps(e,t){return Qo(t,function(t){return e[t]})}function ds(t,e){return t.has(e)}function gs(t,e){for(var n=-1,r=t.length;++n<r&&-1<is(e,t[n],0););return n}function ms(t,e){for(var n=t.length;n--&&-1<is(e,t[n],0););return n}function vs(t){return"\\"+C[t]}function ys(t){return x.test(t)}function bs(t){var n=-1,r=Array(t.size);return t.forEach(function(t,e){r[++n]=[e,t]}),r}function ws(e,n){return function(t){return e(n(t))}}function _s(t,e){for(var n=-1,r=t.length,i=0,o=[];++n<r;){var s=t[n];s!==e&&s!==Ts||(t[n]=Ts,o[i++]=n)}return o}function xs(t){var e=-1,n=Array(t.size);return t.forEach(function(t){n[++e]=t}),n}function Cs(t){return(ys(t)?function(t){for(var e=_.lastIndex=0;_.test(t);)++e;return e}:S)(t)}function ks(t){return ys(t)?t.match(_)||[]:t.split("")}var Ss,Os="Expected a function",Es="__lodash_hash_undefined__",Ts="__lodash_placeholder__",As=9007199254740991,Is=NaN,js=4294967295,Ps=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],Ds="[object Arguments]",Ns="[object Array]",Rs="[object Boolean]",Ms="[object Date]",Ws="[object Error]",Ls="[object Function]",Fs="[object GeneratorFunction]",Hs="[object Map]",Bs="[object Number]",qs="[object Object]",zs="[object Promise]",Us="[object RegExp]",Gs="[object Set]",Vs="[object String]",$s="[object Symbol]",Xs="[object WeakMap]",Ys="[object ArrayBuffer]",Ks="[object DataView]",Qs="[object Float32Array]",Js="[object Float64Array]",Zs="[object Int8Array]",ta="[object Int16Array]",ea="[object Int32Array]",na="[object Uint8Array]",ra="[object Uint8ClampedArray]",ia="[object Uint16Array]",oa="[object Uint32Array]",sa=/\b__p \+= '';/g,aa=/\b(__p \+=) '' \+/g,ua=/(__e\(.*?\)|\b__t\)) \+\n'';/g,ca=/&(?:amp|lt|gt|quot|#39);/g,la=/[&<>"']/g,ha=RegExp(ca.source),fa=RegExp(la.source),pa=/<%-([\s\S]+?)%>/g,da=/<%([\s\S]+?)%>/g,ga=/<%=([\s\S]+?)%>/g,ma=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,va=/^\w*$/,ya=/^\./,ba=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,wa=/[\\^$.*+?()[\]{}|]/g,_a=RegExp(wa.source),xa=/^\s+|\s+$/g,Ca=/^\s+/,ka=/\s+$/,Sa=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Oa=/\{\n\/\* \[wrapped with (.+)\] \*/,Ea=/,? & /,Ta=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Aa=/\\(\\)?/g,Ia=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ja=/\w*$/,Pa=/^[-+]0x[0-9a-f]+$/i,Da=/^0b[01]+$/i,Na=/^\[object .+?Constructor\]$/,Ra=/^0o[0-7]+$/i,Ma=/^(?:0|[1-9]\d*)$/,Wa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,La=/($^)/,Fa=/['\n\r\u2028\u2029\\]/g,e="\\ud800-\\udfff",n="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",r="\\u2700-\\u27bf",i="a-z\\xdf-\\xf6\\xf8-\\xff",o="A-Z\\xc0-\\xd6\\xd8-\\xde",s="\\ufe0e\\ufe0f",a="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",u="["+e+"]",c="["+a+"]",l="["+n+"]",h="\\d+",f="["+r+"]",p="["+i+"]",d="[^"+e+a+h+r+i+o+"]",g="\\ud83c[\\udffb-\\udfff]",m="[^"+e+"]",v="(?:\\ud83c[\\udde6-\\uddff]){2}",y="[\\ud800-\\udbff][\\udc00-\\udfff]",b="["+o+"]",w="(?:"+p+"|"+d+")",a="(?:"+b+"|"+d+")",r="(?:['’](?:d|ll|m|re|s|t|ve))?",i="(?:['’](?:D|LL|M|RE|S|T|VE))?",o="(?:"+l+"|"+g+")"+"?",d="["+s+"]?",o=d+o+("(?:\\u200d(?:"+[m,v,y].join("|")+")"+d+o+")*"),f="(?:"+[f,v,y].join("|")+")"+o,u="(?:"+[m+l+"?",l,v,y,u].join("|")+")",Ha=RegExp("['’]","g"),Ba=RegExp(l,"g"),_=RegExp(g+"(?="+g+")|"+u+o,"g"),qa=RegExp([b+"?"+p+"+"+r+"(?="+[c,b,"$"].join("|")+")",a+"+"+i+"(?="+[c,b+w,"$"].join("|")+")",b+"?"+w+"+"+r,b+"+"+i,"\\d*(?:(?:1ST|2ND|3RD|(?![123])\\dTH)\\b)","\\d*(?:(?:1st|2nd|3rd|(?![123])\\dth)\\b)",h,f].join("|"),"g"),x=RegExp("[\\u200d"+e+n+s+"]"),za=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ua=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Ga=-1,Va={};Va[Qs]=Va[Js]=Va[Zs]=Va[ta]=Va[ea]=Va[na]=Va[ra]=Va[ia]=Va[oa]=!0,Va[Ds]=Va[Ns]=Va[Ys]=Va[Rs]=Va[Ks]=Va[Ms]=Va[Ws]=Va[Ls]=Va[Hs]=Va[Bs]=Va[qs]=Va[Us]=Va[Gs]=Va[Vs]=Va[Xs]=!1;var $a={};$a[Ds]=$a[Ns]=$a[Ys]=$a[Ks]=$a[Rs]=$a[Ms]=$a[Qs]=$a[Js]=$a[Zs]=$a[ta]=$a[ea]=$a[Hs]=$a[Bs]=$a[qs]=$a[Us]=$a[Gs]=$a[Vs]=$a[$s]=$a[na]=$a[ra]=$a[ia]=$a[oa]=!0,$a[Ws]=$a[Ls]=$a[Xs]=!1;var C={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Xa=parseFloat,Ya=parseInt,e="object"==typeof global&&global&&global.Object===Object&&global,n="object"==typeof self&&self&&self.Object===Object&&self,Ka=e||n||Function("return this")(),s="object"==typeof exports&&exports&&!exports.nodeType&&exports,n=s&&"object"==typeof module&&module&&!module.nodeType&&module,Qa=n&&n.exports===s,k=Qa&&e.process,e=function(){try{return k&&k.binding&&k.binding("util")}catch(t){}}(),Ja=e&&e.isArrayBuffer,Za=e&&e.isDate,tu=e&&e.isMap,eu=e&&e.isRegExp,nu=e&&e.isSet,ru=e&&e.isTypedArray,S=us("length"),iu=t({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),ou=t({"&":"&","<":"<",">":">",'"':""","'":"'"}),su=t({"&":"&","<":"<",">":">",""":'"',"'":"'"}),au=function t(e){function d(t){if(hn(t)&&!io(t)&&!(t instanceof m)){if(t instanceof g)return t;if(tr.call(t,"__wrapped__"))return Me(t)}return new g(t)}function o(){}function g(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=Ss}function m(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=js,this.__views__=[]}function n(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function i(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function s(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function v(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new s;++e<n;)this.add(t[e])}function w(t){t=this.__data__=new i(t);this.size=t.size}function r(t,e){var n,r=io(t),i=!r&&ro(t),o=!r&&!i&&so(t),s=!r&&!i&&!o&&ho(t),a=r||i||o||s,u=a?hs(t.length,$n):[],c=u.length;for(n in t)!e&&!tr.call(t,n)||a&&("length"==n||o&&("offset"==n||"parent"==n)||s&&("buffer"==n||"byteLength"==n||"byteOffset"==n)||xe(n,c))||u.push(n);return u}function a(t){var e=t.length;return e?t[ot(0,e-1)]:Ss}function u(t,e){return De(Mt(t),x(e,0,t.length))}function c(t){return De(Mt(t))}function _(t,e,n){(n===Ss||nn(t[e],n))&&(n!==Ss||e in t)||f(t,e,n)}function y(t,e,n){var r=t[e];tr.call(t,e)&&nn(r,n)&&(n!==Ss||e in t)||f(t,e,n)}function l(t,e){for(var n=t.length;n--;)if(nn(t[n][0],e))return n;return-1}function h(t,r,i,o){return Zr(t,function(t,e,n){r(o,t,i(t),n)}),o}function b(t,e){return t&&Wt(e,Sn(e),t)}function f(t,e,n){"__proto__"==e&&yr?yr(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function p(t,e){for(var n=-1,r=e.length,i=Hn(r),o=null==t;++n<r;)i[n]=o?Ss:Cn(t,e[n]);return i}function x(t,e,n){return t==t&&(n!==Ss&&(t=t<=n?t:n),e!==Ss&&(t=e<=t?t:e)),t}function C(n,r,i,t,e,o){var s,a=1&r,u=2&r,c=4&r;if((s=i?e?i(n,t,e,o):i(n):s)!==Ss)return s;if(!ln(n))return n;var l,h,f=io(n);if(f){if(t=(p=n).length,d=p.constructor(t),t&&"string"==typeof p[0]&&tr.call(p,"index")&&(d.index=p.index,d.input=p.input),s=d,!a)return Mt(n,s)}else{var p=hi(n),d=p==Ls||p==Fs;if(so(n))return It(n,a);if(p==qs||p==Ds||d&&!e){if(s=u||d?{}:we(n),!a)return u?(d=l=n,h=(h=s)&&Wt(d,On(d),h),Wt(l,li(l),h)):(h=b(s,l=n),Wt(l,ci(l),h))}else{if(!$a[p])return e?n:{};s=function(t,e,n,r){var i=t.constructor;switch(e){case Ys:return jt(t);case Rs:case Ms:return new i(+t);case Ks:return function(t,e){e=e?jt(t.buffer):t.buffer;return new t.constructor(e,t.byteOffset,t.byteLength)}(t,r);case Qs:case Js:case Zs:case ta:case ea:case na:case ra:case ia:case oa:return Pt(t,r);case Hs:return function(t,e,n){return Zo(e?n(bs(t),1):bs(t),Bo,new t.constructor)}(t,r,n);case Bs:case Vs:return new i(t);case Us:return function(t){var e=new t.constructor(t.source,ja.exec(t));return e.lastIndex=t.lastIndex,e}(t);case Gs:return function(t,e,n){return Zo(e?n(xs(t),1):xs(t),qo,new t.constructor)}(t,r,n);case $s:return function(t){return Yr?Gn(Yr.call(t)):{}}(t)}}(n,p,C,a)}}a=(o=o||new w).get(n);if(a)return a;o.set(n,s);var g=f?Ss:(c?u?fe:he:u?On:Sn)(n);return Go(g||n,function(t,e){g&&(t=n[e=t]),y(s,e,C(t,r,i,e,n,o))}),s}function k(t,e,n){var r=n.length;if(null==t)return!r;for(t=Gn(t);r--;){var i=n[r],o=e[i],s=t[i];if(s===Ss&&!(i in t)||!o(s))return!1}return!0}function S(t,e,n){if("function"!=typeof t)throw new Xn(Os);return mi(function(){t.apply(Ss,n)},e)}function O(t,e,n,r){var i=-1,o=Yo,s=!0,a=t.length,u=[],c=e.length;if(!a)return u;n&&(e=Qo(e,fs(n))),r?(o=Ko,s=!1):200<=e.length&&(o=ds,s=!1,e=new v(e));t:for(;++i<a;){var l=t[i],h=null==n?l:n(l),l=r||0!==l?l:0;if(s&&h==h){for(var f=c;f--;)if(e[f]===h)continue t;u.push(l)}else o(e,h,r)||u.push(l)}return u}function E(t,r){var i=!0;return Zr(t,function(t,e,n){return i=!!r(t,e,n)}),i}function T(t,e,n){for(var r=-1,i=t.length;++r<i;){var o,s,a=t[r],u=e(a);null!=u&&(o===Ss?u==u&&!gn(u):n(u,o))&&(o=u,s=a)}return s}function A(t,r){var i=[];return Zr(t,function(t,e,n){r(t,e,n)&&i.push(t)}),i}function I(t,e,n,r,i){var o=-1,s=t.length;for(n=n||_e,i=i||[];++o<s;){var a=t[o];0<e&&n(a)?1<e?I(a,e-1,n,r,i):Jo(i,a):r||(i[i.length]=a)}return i}function j(t,e){return t&&ei(t,e,Sn)}function P(t,e){return t&&ni(t,e,Sn)}function D(e,t){return Xo(t,function(t){return an(e[t])})}function N(t,e){for(var n=0,r=(e=Tt(e,t)).length;null!=t&&n<r;)t=t[Ne(e[n++])];return n&&n==r?t:Ss}function R(t,e,n){e=e(t);return io(t)?e:Jo(e,n(t))}function M(t){return null==t?t===Ss?"[object Undefined]":"[object Null]":vr&&vr in Gn(t)?function(t){var e=tr.call(t,vr),n=t[vr];try{t[vr]=Ss;var r=!0}catch(t){}var i=rr.call(t);return r&&(e?t[vr]=n:delete t[vr]),i}(t):(t=t,rr.call(t))}function W(t,e){return e<t}function L(t,e){return null!=t&&tr.call(t,e)}function F(t,e){return null!=t&&e in Gn(t)}function H(t,e,n){for(var r=n?Ko:Yo,i=t[0].length,o=t.length,s=o,a=Hn(o),u=1/0,c=[];s--;){var l=t[s];s&&e&&(l=Qo(l,fs(e))),u=Ir(l.length,u),a[s]=!n&&(e||120<=i&&120<=l.length)?new v(s&&l):Ss}var l=t[0],h=-1,f=a[0];t:for(;++h<i&&c.length<u;){var p=l[h],d=e?e(p):p,p=n||0!==p?p:0;if(!(f?ds(f,d):r(c,d,n))){for(s=o;--s;){var g=a[s];if(!(g?ds(g,d):r(t[s],d,n)))continue t}f&&f.push(d),c.push(p)}}return c}function B(t,e,n){e=null==(t=Ie(t,e=Tt(e,t)))?t:t[Ne(Be(e))];return null==e?Ss:zo(e,t,n)}function q(t){return hn(t)&&M(t)==Ds}function z(t,e,n,r,i){return t===e||(null==t||null==e||!hn(t)&&!hn(e)?t!=t&&e!=e:function(t,e,n,r,i,o){var s=io(t),a=io(e),u=s?Ns:hi(t),c=a?Ns:hi(e),l=(u=u==Ds?qs:u)==qs,a=(c=c==Ds?qs:c)==qs,c=u==c;if(c&&so(t)){if(!so(e))return!1;l=!(s=!0)}if(c&&!l)return o=o||new w,s||ho(t)?ce(t,e,n,r,i,o):function(t,e,n,r,i,o,s){switch(n){case Ks:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case Ys:return!(t.byteLength!=e.byteLength||!o(new cr(t),new cr(e)));case Rs:case Ms:case Bs:return nn(+t,+e);case Ws:return t.name==e.name&&t.message==e.message;case Us:case Vs:return t==e+"";case Hs:var a=bs;case Gs:var u=1&r;if(a=a||xs,t.size!=e.size&&!u)return!1;u=s.get(t);if(u)return u==e;r|=2,s.set(t,e);a=ce(a(t),a(e),r,i,o,s);return s.delete(t),a;case $s:if(Yr)return Yr.call(t)==Yr.call(e)}return!1}(t,e,u,n,r,i,o);if(!(1&n)){l=l&&tr.call(t,"__wrapped__"),a=a&&tr.call(e,"__wrapped__");if(l||a){l=l?t.value():t,a=a?e.value():e;return o=o||new w,i(l,a,n,r,o)}}return!!c&&(o=o||new w,function(t,e,n,r,i,o){var s=1&n,a=he(t),u=a.length,c=he(e).length;if(u!=c&&!s)return!1;for(var l=u;l--;){var h=a[l];if(!(s?h in e:tr.call(e,h)))return!1}var f=o.get(t);if(f&&o.get(e))return f==e;var p=!0;o.set(t,e),o.set(e,t);for(var d=s;++l<u;){h=a[l];var g,m=t[h],v=e[h];if(!((g=r?s?r(v,m,h,e,t,o):r(m,v,h,t,e,o):g)===Ss?m===v||i(m,v,n,r,o):g)){p=!1;break}d=d||"constructor"==h}p&&!d&&(c=t.constructor,f=e.constructor,c!=f&&"constructor"in t&&"constructor"in e&&!("function"==typeof c&&c instanceof c&&"function"==typeof f&&f instanceof f)&&(p=!1));return o.delete(t),o.delete(e),p}(t,e,n,r,i,o))}(t,e,n,r,z,i))}function U(t,e,n,r){var i=n.length,o=i,s=!r;if(null==t)return!o;for(t=Gn(t);i--;){var a=n[i];if(s&&a[2]?a[1]!==t[a[0]]:!(a[0]in t))return!1}for(;++i<o;){var u=(a=n[i])[0],c=t[u],l=a[1];if(s&&a[2]){if(c===Ss&&!(u in t))return!1}else{var h,f=new w;if(!((h=r?r(c,l,u,t,e,f):h)===Ss?z(l,c,3,r,f):h))return!1}}return!0}function G(t){return!(!ln(t)||(e=t,nr&&nr in e))&&(an(t)?sr:Na).test(Re(t));var e}function V(t){return"function"==typeof t?t:null==t?Dn:"object"==typeof t?io(t)?J(t[0],t[1]):Q(t):Wn(t)}function $(t){if(!Oe(t))return Tr(t);var e,n=[];for(e in Gn(t))tr.call(t,e)&&"constructor"!=e&&n.push(e);return n}function X(t){if(!ln(t))return function(t){var e=[];if(null!=t)for(var n in Gn(t))e.push(n);return e}(t);var e,n=Oe(t),r=[];for(e in t)("constructor"!=e||!n&&tr.call(t,e))&&r.push(e);return r}function Y(t,e){return t<e}function K(t,r){var i=-1,o=rn(t)?Hn(t.length):[];return Zr(t,function(t,e,n){o[++i]=r(t,e,n)}),o}function Q(e){var n=ve(e);return 1==n.length&&n[0][2]?Te(n[0][0],n[0][1]):function(t){return t===e||U(t,e,n)}}function J(n,r){return ke(n)&&Ee(r)?Te(Ne(n),r):function(t){var e=Cn(t,n);return e===Ss&&e===r?kn(t,n):z(r,e,3)}}function Z(g,m,v,y,b){g!==m&&ei(m,function(t,e){var n,r,i,o,s,a,u,c,l,h,f,p,d;ln(t)?(b=b||new w,r=m,o=v,s=Z,a=y,u=b,f=(n=g)[i=e],p=r[i],(d=u.get(p))?_(n,i,d):(c=a?a(f,p,i+"",n,r,u):Ss,(l=c===Ss)&&(h=io(p),d=!h&&so(p),r=!h&&!d&&ho(p),c=p,h||d||r?c=io(f)?f:on(f)?Mt(f):d?It(p,!(l=!1)):r?Pt(p,!(l=!1)):[]:pn(p)||ro(p)?ro(c=f)?c=_n(f):(!ln(f)||o&&an(f))&&(c=we(p)):l=!1),l&&(u.set(p,c),s(c,p,o,a,u),u.delete(p)),_(n,i,c))):(c=y?y(g[e],t,e+"",g,m,b):Ss,_(g,e,c=c===Ss?t:c))},On)}function tt(t,e){var n=t.length;if(n)return xe(e+=e<0?n:0,n)?t[e]:Ss}function et(t,r,n){var i=-1;return r=Qo(r.length?r:[Dn],fs(ge())),function(t,e){var n=t.length;for(t.sort(e);n--;)t[n]=t[n].value;return t}(K(t,function(e,t,n){return{criteria:Qo(r,function(t){return t(e)}),index:++i,value:e}}),function(t,e){return function(t,e,n){for(var r=-1,i=t.criteria,o=e.criteria,s=i.length,a=n.length;++r<s;){var u=Dt(i[r],o[r]);if(u){if(a<=r)return u;var c=n[r];return u*("desc"==c?-1:1)}}return t.index-e.index}(t,e,n)})}function nt(t,e,n){for(var r=-1,i=e.length,o={};++r<i;){var s=e[r],a=N(t,s);n(a,s)&<(o,Tt(s,t),a)}return o}function rt(t,e,n,r){var i=r?os:is,o=-1,s=e.length,a=t;for(t===e&&(e=Mt(e)),n&&(a=Qo(t,fs(n)));++o<s;)for(var u=0,c=e[o],l=n?n(c):c;-1<(u=i(a,l,u,r));)a!==t&&dr.call(a,u,1),dr.call(t,u,1);return t}function it(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i,o=e[n];n!=r&&o===i||(xe(i=o)?dr.call(t,o,1):wt(t,o))}return t}function ot(t,e){return t+Cr(Dr()*(e-t+1))}function st(t,e){var n="";if(!t||e<1||As<e)return n;for(;e%2&&(n+=t),(e=Cr(e/2))&&(t+=t),e;);return n}function at(t,e){return vi(Ae(t,e,Dn),t+"")}function ut(t){return a(Tn(t))}function ct(t,e){t=Tn(t);return De(t,x(e,0,t.length))}function lt(t,e,n,r){if(!ln(t))return t;for(var i=-1,o=(e=Tt(e,t)).length,s=o-1,a=t;null!=a&&++i<o;){var u,c=Ne(e[i]),l=n;i!=s&&(u=a[c],(l=r?r(u,c,a):Ss)===Ss&&(l=ln(u)?u:xe(e[i+1])?[]:{})),y(a,c,l),a=a[c]}return t}function ht(t){return De(Tn(t))}function ft(t,e,n){var r=-1,i=t.length;(n=i<n?i:n)<0&&(n+=i),i=n<(e=e<0?i<-e?0:i+e:e)?0:n-e>>>0,e>>>=0;for(var o=Hn(i);++r<i;)o[r]=t[r+e];return o}function pt(t,r){var i;return Zr(t,function(t,e,n){return!(i=r(t,e,n))}),!!i}function dt(t,e,n){var r=0,i=null==t?r:t.length;if("number"==typeof e&&e==e&&i<=2147483647){for(;r<i;){var o=r+i>>>1,s=t[o];null!==s&&!gn(s)&&(n?s<=e:s<e)?r=1+o:i=o}return i}return gt(t,e,Dn,n)}function gt(t,e,n,r){e=n(e);for(var i=0,o=null==t?0:t.length,s=e!=e,a=null===e,u=gn(e),c=e===Ss;i<o;){var l=Cr((i+o)/2),h=n(t[l]),f=h!==Ss,p=null===h,d=h==h,g=gn(h),h=s?r||d:c?d&&(r||f):a?d&&f&&(r||!p):u?d&&f&&!p&&(r||!g):!p&&!g&&(r?h<=e:h<e);h?i=l+1:o=l}return Ir(o,4294967294)}function mt(t,e){for(var n=-1,r=t.length,i=0,o=[];++n<r;){var s,a=t[n],u=e?e(a):a;n&&nn(u,s)||(s=u,o[i++]=0===a?0:a)}return o}function vt(t){return"number"==typeof t?t:gn(t)?Is:+t}function yt(t){if("string"==typeof t)return t;if(io(t))return Qo(t,yt)+"";if(gn(t))return Kr?Kr.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function bt(t,e,n){var r=-1,i=Yo,o=t.length,s=!0,a=[],u=a;if(n)s=!1,i=Ko;else if(200<=o){var c=e?null:ai(t);if(c)return xs(c);s=!1,i=ds,u=new v}else u=e?[]:a;t:for(;++r<o;){var l=t[r],h=e?e(l):l,l=n||0!==l?l:0;if(s&&h==h){for(var f=u.length;f--;)if(u[f]===h)continue t;e&&u.push(h),a.push(l)}else i(u,h,n)||(u!==a&&u.push(h),a.push(l))}return a}function wt(t,e){return null==(t=Ie(t,e=Tt(e,t)))||delete t[Ne(Be(e))]}function _t(t,e,n,r){return lt(t,e,n(N(t,e)),r)}function xt(t,e,n,r){for(var i=t.length,o=r?i:-1;(r?o--:++o<i)&&e(t[o],o,t););return n?ft(t,r?0:o,r?o+1:i):ft(t,r?o+1:0,r?i:o)}function Ct(t,e){return Zo(e,function(t,e){return e.func.apply(e.thisArg,Jo([t],e.args))},t=t instanceof m?t.value():t)}function kt(t,e,n){var r=t.length;if(r<2)return r?bt(t[0]):[];for(var i=-1,o=Hn(r);++i<r;)for(var s=t[i],a=-1;++a<r;)a!=i&&(o[i]=O(o[i]||s,t[a],e,n));return bt(I(o,1),e,n)}function St(t,e,n){for(var r=-1,i=t.length,o=e.length,s={};++r<i;){var a=r<o?e[r]:Ss;n(s,t[r],a)}return s}function Ot(t){return on(t)?t:[]}function Et(t){return"function"==typeof t?t:Dn}function Tt(t,e){return io(t)?t:ke(t,e)?[t]:yi(xn(t))}function At(t,e,n){var r=t.length;return n=n===Ss?r:n,!e&&r<=n?t:ft(t,e,n)}function It(t,e){if(e)return t.slice();e=t.length,e=lr?lr(e):new t.constructor(e);return t.copy(e),e}function jt(t){var e=new t.constructor(t.byteLength);return new cr(e).set(new cr(t)),e}function Pt(t,e){e=e?jt(t.buffer):t.buffer;return new t.constructor(e,t.byteOffset,t.length)}function Dt(t,e){if(t!==e){var n=t!==Ss,r=null===t,i=t==t,o=gn(t),s=e!==Ss,a=null===e,u=e==e,c=gn(e);if(!a&&!c&&!o&&e<t||o&&s&&u&&!a&&!c||r&&s&&u||!n&&u||!i)return 1;if(!r&&!o&&!c&&t<e||c&&n&&i&&!r&&!o||a&&n&&i||!s&&i||!u)return-1}return 0}function Nt(t,e,n,r){for(var i=-1,o=t.length,s=n.length,a=-1,u=e.length,c=Ar(o-s,0),l=Hn(u+c),h=!r;++a<u;)l[a]=e[a];for(;++i<s;)(h||i<o)&&(l[n[i]]=t[i]);for(;c--;)l[a++]=t[i++];return l}function Rt(t,e,n,r){for(var i=-1,o=t.length,s=-1,a=n.length,u=-1,c=e.length,l=Ar(o-a,0),h=Hn(l+c),f=!r;++i<l;)h[i]=t[i];for(var p=i;++u<c;)h[p+u]=e[u];for(;++s<a;)(f||i<o)&&(h[p+n[s]]=t[i++]);return h}function Mt(t,e){var n=-1,r=t.length;for(e=e||Hn(r);++n<r;)e[n]=t[n];return e}function Wt(t,e,n,r){var i=!n;n=n||{};for(var o=-1,s=e.length;++o<s;){var a=e[o],u=r?r(n[a],t[a],a,n,t):Ss;(i?f:y)(n,a,u=u===Ss?t[a]:u)}return n}function Lt(i,o){return function(t,e){var n=io(t)?Uo:h,r=o?o():{};return n(t,i,ge(e,2),r)}}function Ft(a){return at(function(t,e){var n=-1,r=e.length,i=1<r?e[r-1]:Ss,o=2<r?e[2]:Ss,i=3<a.length&&"function"==typeof i?(r--,i):Ss;for(o&&Ce(e[0],e[1],o)&&(i=r<3?Ss:i,r=1),t=Gn(t);++n<r;){var s=e[n];s&&a(t,s,n,i)}return t})}function Ht(o,s){return function(t,e){if(null==t)return t;if(!rn(t))return o(t,e);for(var n=t.length,r=s?n:-1,i=Gn(t);(s?r--:++r<n)&&!1!==e(i[r],r,i););return t}}function Bt(u){return function(t,e,n){for(var r=-1,i=Gn(t),o=n(t),s=o.length;s--;){var a=o[u?s:++r];if(!1===e(i[a],a,i))break}return t}}function qt(r){return function(t){var e=ys(t=xn(t))?ks(t):Ss,n=e?e[0]:t.charAt(0),t=e?At(e,1).join(""):t.slice(1);return n[r]()+t}}function zt(e){return function(t){return Zo(jn(In(t).replace(Ha,"")),e,"")}}function Ut(r){return function(){var t=arguments;switch(t.length){case 0:return new r;case 1:return new r(t[0]);case 2:return new r(t[0],t[1]);case 3:return new r(t[0],t[1],t[2]);case 4:return new r(t[0],t[1],t[2],t[3]);case 5:return new r(t[0],t[1],t[2],t[3],t[4]);case 6:return new r(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new r(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var e=Qr(r.prototype),n=r.apply(e,t);return ln(n)?n:e}}function Gt(o,s,a){var u=Ut(o);return function t(){for(var e=arguments.length,n=Hn(e),r=e,i=de(t);r--;)n[r]=arguments[r];i=e<3&&n[0]!==i&&n[e-1]!==i?[]:_s(n,i);return(e-=i.length)<a?ne(o,s,Xt,t.placeholder,Ss,n,i,Ss,Ss,a-e):zo(this&&this!==Ka&&this instanceof t?u:o,this,n)}}function Vt(o){return function(t,e,n){var r,i=Gn(t);rn(t)||(r=ge(e,3),t=Sn(t),e=function(t){return r(i[t],t,i)});n=o(t,e,n);return-1<n?i[r?t[n]:n]:Ss}}function $t(u){return le(function(i){var o=i.length,t=o,e=g.prototype.thru;for(u&&i.reverse();t--;){var n=i[t];if("function"!=typeof n)throw new Xn(Os);e&&!a&&"wrapper"==pe(n)&&(a=new g([],!0))}for(t=a?t:o;++t<o;)var r=pe(n=i[t]),s="wrapper"==r?ui(n):Ss,a=s&&Se(s[0])&&424==s[1]&&!s[4].length&&1==s[9]?a[pe(s[0])].apply(a,s[3]):1==n.length&&Se(n)?a[r]():a.thru(n);return function(){var t=arguments,e=t[0];if(a&&1==t.length&&io(e))return a.plant(e).value();for(var n=0,r=o?i[n].apply(this,t):e;++n<o;)r=i[n].call(this,r);return r}})}function Xt(a,u,c,l,h,f,p,d,g,m){var v=128&u,y=1&u,b=2&u,w=24&u,_=512&u,x=b?Ss:Ut(a);return function t(){for(var e,n=Hn(s=arguments.length),r=s;r--;)n[r]=arguments[r];if(w&&(e=function(t,e){for(var n=t.length,r=0;n--;)t[n]===e&&++r;return r}(n,o=de(t))),l&&(n=Nt(n,l,h,w)),f&&(n=Rt(n,f,p,w)),s-=e,w&&s<m){var i=_s(n,o);return ne(a,u,Xt,t.placeholder,c,n,i,d,g,m-s)}var o=y?c:this,i=b?o[a]:a,s=n.length;return d?n=function(t,e){for(var n=t.length,r=Ir(e.length,n),i=Mt(t);r--;){var o=e[r];t[r]=xe(o,n)?i[o]:Ss}return t}(n,d):_&&1<s&&n.reverse(),v&&g<s&&(n.length=g),(i=this&&this!==Ka&&this instanceof t?x||Ut(i):i).apply(o,n)}}function Yt(n,s){return function(t,e){return t=t,r=n,i=s(e),o={},j(t,function(t,e,n){r(o,i(t),e,n)}),o;var r,i,o}}function Kt(r,i){return function(t,e){var n;if(t===Ss&&e===Ss)return i;if(t!==Ss&&(n=t),e!==Ss){if(n===Ss)return e;e="string"==typeof t||"string"==typeof e?(t=yt(t),yt(e)):(t=vt(t),vt(e)),n=r(t,e)}return n}}function Qt(r){return le(function(t){return t=Qo(t,fs(ge())),at(function(e){var n=this;return r(t,function(t){return zo(t,n,e)})})})}function Jt(t,e){var n=(e=e===Ss?" ":yt(e)).length;if(n<2)return n?st(e,t):e;n=st(e,xr(t/Cs(e)));return ys(e)?At(ks(n),0,t).join(""):n.slice(0,t)}function Zt(a,t,u,c){var l=1&t,h=Ut(a);return function t(){for(var e=-1,n=arguments.length,r=-1,i=c.length,o=Hn(i+n),s=this&&this!==Ka&&this instanceof t?h:a;++r<i;)o[r]=c[r];for(;n--;)o[r++]=arguments[++e];return zo(s,l?u:this,o)}}function te(r){return function(t,e,n){return n&&"number"!=typeof n&&Ce(t,e,n)&&(e=n=Ss),t=vn(t),e===Ss?(e=t,t=0):e=vn(e),function(t,e,n,r){for(var i=-1,o=Ar(xr((e-t)/(n||1)),0),s=Hn(o);o--;)s[r?o:++i]=t,t+=n;return s}(t,e,n=n===Ss?t<e?1:-1:vn(n),r)}}function ee(n){return function(t,e){return"string"==typeof t&&"string"==typeof e||(t=wn(t),e=wn(e)),n(t,e)}}function ne(t,e,n,r,i,o,s,a,u,c){var l=8&e;e|=l?32:64,4&(e&=~(l?64:32))||(e&=-4);c=[t,e,i,l?o:Ss,l?s:Ss,l?Ss:o,l?Ss:s,a,u,c],n=n.apply(Ss,c);return Se(t)&&gi(n,c),n.placeholder=r,je(n,t,e)}function re(t){var r=Un[t];return function(t,e){if(t=wn(t),e=null==e?0:Ir(yn(e),292)){var n=(xn(t)+"e").split("e");return+((n=(xn(r(n[0]+"e"+(+n[1]+e)))+"e").split("e"))[0]+"e"+(+n[1]-e))}return r(t)}}function ie(o){return function(t){var e,n,r,i=hi(t);return i==Hs?bs(t):i==Gs?(i=t,n=-1,r=Array(i.size),i.forEach(function(t){r[++n]=[t,t]}),r):Qo(o(e=t),function(t){return[t,e[t]]})}}function oe(t,e,n,r,i,o,s,a){var u=2&e;if(!u&&"function"!=typeof t)throw new Xn(Os);var c,l,h=r?r.length:0;h||(e&=-97,r=i=Ss),s=s===Ss?s:Ar(yn(s),0),a=a===Ss?a:yn(a),h-=i?i.length:0,64&e&&(c=r,l=i,r=i=Ss);var f,p,d,g,m=u?Ss:ui(t),s=[t,e,n,r,i,c,l,o,s,a];m&&function(t,e){var n=t[1],r=e[1],i=n|r,o=i<131,s=128==r&&8==n||128==r&&256==n&&t[7].length<=e[8]||384==r&&e[7].length<=e[8]&&8==n;if(!o&&!s)return;1&r&&(t[2]=e[2],i|=1&n?0:4);n=e[3];{var a;n&&(a=t[3],t[3]=a?Nt(a,n,e[4]):n,t[4]=a?_s(t[3],Ts):e[4])}(n=e[5])&&(a=t[5],t[5]=a?Rt(a,n,e[6]):n,t[6]=a?_s(t[5],Ts):e[6]),(n=e[7])&&(t[7]=n),128&r&&(t[8]=null==t[8]?e[8]:Ir(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=i}(s,m),t=s[0],e=s[1],n=s[2],r=s[3],i=s[4],!(a=s[9]=s[9]===Ss?u?0:t.length:Ar(s[9]-h,0))&&24&e&&(e&=-25);n=e&&1!=e?8==e||16==e?Gt(t,e,a):32!=e&&33!=e||i.length?Xt.apply(Ss,s):Zt(t,e,n,r):(p=n,d=1&e,g=Ut(f=t),function t(){return(this&&this!==Ka&&this instanceof t?g:f).apply(d?p:this,arguments)});return je((m?ri:gi)(n,s),t,e)}function se(t,e,n,r){return t===Ss||nn(t,Qn[n])&&!tr.call(r,n)?e:t}function ae(t,e,n,r,i,o){return ln(t)&&ln(e)&&(o.set(e,t),Z(t,e,Ss,ae,o),o.delete(e)),t}function ue(t){return pn(t)?Ss:t}function ce(t,e,n,r,i,o){var s=1&n,a=t.length,u=e.length;if(a!=u&&!(s&&a<u))return!1;u=o.get(t);if(u&&o.get(e))return u==e;var c=-1,l=!0,h=2&n?new v:Ss;for(o.set(t,e),o.set(e,t);++c<a;){var f,p=t[c],d=e[c];if((f=r?s?r(d,p,c,e,t,o):r(p,d,c,t,e,o):f)!==Ss){if(f)continue;l=!1;break}if(h){if(!es(e,function(t,e){return!ds(h,e)&&(p===t||i(p,t,n,r,o))&&h.push(e)})){l=!1;break}}else if(p!==d&&!i(p,d,n,r,o)){l=!1;break}}return o.delete(t),o.delete(e),l}function le(t){return vi(Ae(t,Ss,Fe),t+"")}function he(t){return R(t,Sn,ci)}function fe(t){return R(t,On,li)}function pe(t){for(var e=t.name+"",n=qr[e],r=tr.call(qr,e)?n.length:0;r--;){var i=n[r],o=i.func;if(null==o||o==t)return i.name}return e}function de(t){return(tr.call(d,"placeholder")?d:t).placeholder}function ge(){var t=(t=d.iteratee||Nn)===Nn?V:t;return arguments.length?t(arguments[0],arguments[1]):t}function me(t,e){var n,r=t.__data__;return("string"==(t=typeof(n=e))||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==n:null===n)?r["string"==typeof e?"string":"hash"]:r.map}function ve(t){for(var e=Sn(t),n=e.length;n--;){var r=e[n],i=t[r];e[n]=[r,i,Ee(i)]}return e}function ye(t,e){e=e,e=null==(t=t)?Ss:t[e];return G(e)?e:Ss}function be(t,e,n){for(var r=-1,i=(e=Tt(e,t)).length,o=!1;++r<i;){var s=Ne(e[r]);if(!(o=null!=t&&n(t,s)))break;t=t[s]}return o||++r!=i?o:!!(i=null==t?0:t.length)&&cn(i)&&xe(s,i)&&(io(t)||ro(t))}function we(t){return"function"!=typeof t.constructor||Oe(t)?{}:Qr(hr(t))}function _e(t){return io(t)||ro(t)||!!(gr&&t&&t[gr])}function xe(t,e){return!!(e=null==e?As:e)&&("number"==typeof t||Ma.test(t))&&-1<t&&t%1==0&&t<e}function Ce(t,e,n){if(ln(n)){var r=typeof e;return("number"==r?rn(n)&&xe(e,n.length):"string"==r&&e in n)&&nn(n[e],t)}}function ke(t,e){if(!io(t)){var n=typeof t;return"number"==n||"symbol"==n||"boolean"==n||null==t||gn(t)||va.test(t)||!ma.test(t)||null!=e&&t in Gn(e)}}function Se(t){var e=pe(t),n=d[e];if("function"==typeof n&&e in m.prototype){if(t===n)return 1;n=ui(n);return n&&t===n[0]}}function Oe(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||Qn)}function Ee(t){return t==t&&!ln(t)}function Te(e,n){return function(t){return null!=t&&t[e]===n&&(n!==Ss||e in Gn(t))}}function Ae(o,s,a){return s=Ar(s===Ss?o.length-1:s,0),function(){for(var t=arguments,e=-1,n=Ar(t.length-s,0),r=Hn(n);++e<n;)r[e]=t[s+e];for(var e=-1,i=Hn(s+1);++e<s;)i[e]=t[e];return i[s]=a(r),zo(o,this,i)}}function Ie(t,e){return e.length<2?t:N(t,ft(e,0,-1))}function je(t,e,n){var r,i,e=e+"";return vi(t,function(t,e){var n=e.length;if(!n)return t;var r=n-1;return e[r]=(1<n?"& ":"")+e[r],e=e.join(2<n?", ":" "),t.replace(Sa,"{\n/* [wrapped with "+e+"] */\n")}(e,(r=(e=(e=e).match(Oa))?e[1].split(Ea):[],i=n,Go(Ps,function(t){var e="_."+t[0];i&t[1]&&!Yo(r,e)&&r.push(e)}),r.sort())))}function Pe(n){var r=0,i=0;return function(){var t=jr(),e=16-(t-i);if(i=t,0<e){if(800<=++r)return arguments[0]}else r=0;return n.apply(Ss,arguments)}}function De(t,e){var n=-1,r=t.length,i=r-1;for(e=e===Ss?r:e;++n<e;){var o=ot(n,i),s=t[o];t[o]=t[n],t[n]=s}return t.length=e,t}function Ne(t){if("string"==typeof t||gn(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Re(t){if(null!=t){try{return Zn.call(t)}catch(t){}try{return t+""}catch(t){}}return""}function Me(t){if(t instanceof m)return t.clone();var e=new g(t.__wrapped__,t.__chain__);return e.__actions__=Mt(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}function We(t,e,n){var r=null==t?0:t.length;if(!r)return-1;n=null==n?0:yn(n);return n<0&&(n=Ar(r+n,0)),rs(t,ge(e,3),n)}function Le(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=r-1;return n!==Ss&&(i=yn(n),i=n<0?Ar(r+i,0):Ir(i,r-1)),rs(t,ge(e,3),i,!0)}function Fe(t){return(null==t?0:t.length)?I(t,1):[]}function He(t){return t&&t.length?t[0]:Ss}function Be(t){var e=null==t?0:t.length;return e?t[e-1]:Ss}function qe(t,e){return t&&t.length&&e&&e.length?rt(t,e):t}function ze(t){return null==t?t:Nr.call(t)}function Ue(e){if(!e||!e.length)return[];var n=0;return e=Xo(e,function(t){return on(t)&&(n=Ar(t.length,n),1)}),hs(n,function(t){return Qo(e,us(t))})}function Ge(t,e){if(!t||!t.length)return[];t=Ue(t);return null==e?t:Qo(t,function(t){return zo(e,Ss,t)})}function Ve(t){t=d(t);return t.__chain__=!0,t}function $e(t,e){return e(t)}function Xe(t,e){return(io(t)?Go:Zr)(t,ge(e,3))}function Ye(t,e){return(io(t)?Vo:ti)(t,ge(e,3))}function Ke(t,e){return(io(t)?Qo:K)(t,ge(e,3))}function Qe(t,e,n){return e=n?Ss:e,e=t&&null==e?t.length:e,oe(t,128,Ss,Ss,Ss,Ss,e)}function Je(t,e){var n;if("function"!=typeof e)throw new Xn(Os);return t=yn(t),function(){return 0<--t&&(n=e.apply(this,arguments)),t<=1&&(e=Ss),n}}function Ze(r,n,t){function i(t){var e=u,n=c;return u=c=Ss,d=t,h=r.apply(n,e)}function o(t){var e=t-p;return p===Ss||n<=e||e<0||m&&l<=t-d}function s(){var t,e=Gi();return o(e)?a(e):void(f=mi(s,(e=n-((t=e)-p),m?Ir(e,l-(t-d)):e)))}function a(t){return f=Ss,v&&u?i(t):(u=c=Ss,h)}function e(){var t=Gi(),e=o(t);if(u=arguments,c=this,p=t,e){if(f===Ss)return d=e=p,f=mi(s,n),g?i(e):h;if(m)return f=mi(s,n),i(p)}return f===Ss&&(f=mi(s,n)),h}var u,c,l,h,f,p,d=0,g=!1,m=!1,v=!0;if("function"!=typeof r)throw new Xn(Os);return n=wn(n)||0,ln(t)&&(g=!!t.leading,m="maxWait"in t,l=m?Ar(wn(t.maxWait)||0,n):l,v="trailing"in t?!!t.trailing:v),e.cancel=function(){f!==Ss&&si(f),d=0,u=p=c=f=Ss},e.flush=function(){return f===Ss?h:a(Gi())},e}function tn(r,i){if("function"!=typeof r||null!=i&&"function"!=typeof i)throw new Xn(Os);var o=function(){var t=arguments,e=i?i.apply(this,t):t[0],n=o.cache;if(n.has(e))return n.get(e);t=r.apply(this,t);return o.cache=n.set(e,t)||n,t};return o.cache=new(tn.Cache||s),o}function en(e){if("function"!=typeof e)throw new Xn(Os);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}function nn(t,e){return t===e||t!=t&&e!=e}function rn(t){return null!=t&&cn(t.length)&&!an(t)}function on(t){return hn(t)&&rn(t)}function sn(t){if(!hn(t))return!1;var e=M(t);return e==Ws||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!pn(t)}function an(t){if(!ln(t))return!1;t=M(t);return t==Ls||t==Fs||"[object AsyncFunction]"==t||"[object Proxy]"==t}function un(t){return"number"==typeof t&&t==yn(t)}function cn(t){return"number"==typeof t&&-1<t&&t%1==0&&t<=As}function ln(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function hn(t){return null!=t&&"object"==typeof t}function fn(t){return"number"==typeof t||hn(t)&&M(t)==Bs}function pn(t){if(!hn(t)||M(t)!=qs)return!1;t=hr(t);if(null===t)return!0;t=tr.call(t,"constructor")&&t.constructor;return"function"==typeof t&&t instanceof t&&Zn.call(t)==ir}function dn(t){return"string"==typeof t||!io(t)&&hn(t)&&M(t)==Vs}function gn(t){return"symbol"==typeof t||hn(t)&&M(t)==$s}function mn(t){if(!t)return[];if(rn(t))return(dn(t)?ks:Mt)(t);if(mr&&t[mr])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[mr]());var e=hi(t);return(e==Hs?bs:e==Gs?xs:Tn)(t)}function vn(t){return t?(t=wn(t))!==1/0&&t!==-1/0?t==t?t:0:17976931348623157e292*(t<0?-1:1):0===t?t:0}function yn(t){var e=vn(t),t=e%1;return e==e?t?e-t:e:0}function bn(t){return t?x(yn(t),0,js):0}function wn(t){if("number"==typeof t)return t;if(gn(t))return Is;if("string"!=typeof(t=ln(t)?ln(e="function"==typeof t.valueOf?t.valueOf():t)?e+"":e:t))return 0===t?t:+t;t=t.replace(xa,"");var e=Da.test(t);return e||Ra.test(t)?Ya(t.slice(2),e?2:8):Pa.test(t)?Is:+t}function _n(t){return Wt(t,On(t))}function xn(t){return null==t?"":yt(t)}function Cn(t,e,n){e=null==t?Ss:N(t,e);return e===Ss?n:e}function kn(t,e){return null!=t&&be(t,e,F)}function Sn(t){return(rn(t)?r:$)(t)}function On(t){return rn(t)?r(t,!0):X(t)}function En(t,n){if(null==t)return{};var e=Qo(fe(t),function(t){return[t]});return n=ge(n),nt(t,e,function(t,e){return n(t,e[0])})}function Tn(t){return null==t?[]:ps(t,Sn(t))}function An(t){return Lo(xn(t).toLowerCase())}function In(t){return(t=xn(t))&&t.replace(Wa,iu).replace(Ba,"")}function jn(t,e,n){return t=xn(t),(e=n?Ss:e)===Ss?(n=t,za.test(n)?t.match(qa)||[]:t.match(Ta)||[]):t.match(e)||[]}function Pn(t){return function(){return t}}function Dn(t){return t}function Nn(t){return V("function"==typeof t?t:C(t,1))}function Rn(r,e,t){var n=Sn(e),i=D(e,n);null!=t||ln(e)&&(i.length||!n.length)||(t=e,e=r,r=this,i=D(e,Sn(e)));var o=!(ln(t)&&"chain"in t&&!t.chain),s=an(r);return Go(i,function(t){var n=e[t];r[t]=n,s&&(r.prototype[t]=function(){var t=this.__chain__;if(o||t){var e=r(this.__wrapped__);return(e.__actions__=Mt(this.__actions__)).push({func:n,args:arguments,thisArg:r}),e.__chain__=t,e}return n.apply(r,Jo([this.value()],arguments))})}),r}function Mn(){}function Wn(t){return ke(t)?us(Ne(t)):(e=t,function(t){return N(t,e)});var e}function Ln(){return[]}function Fn(){return!1}var Hn=(e=null==e?Ka:au.defaults(Ka.Object(),e,au.pick(Ka,Ua))).Array,Bn=e.Date,qn=e.Error,zn=e.Function,Un=e.Math,Gn=e.Object,Vn=e.RegExp,$n=e.String,Xn=e.TypeError,Yn=Hn.prototype,Kn=zn.prototype,Qn=Gn.prototype,Jn=e["__core-js_shared__"],Zn=Kn.toString,tr=Qn.hasOwnProperty,er=0,nr=(Ho=/[^.]+$/.exec(Jn&&Jn.keys&&Jn.keys.IE_PROTO||""))?"Symbol(src)_1."+Ho:"",rr=Qn.toString,ir=Zn.call(Gn),or=Ka._,sr=Vn("^"+Zn.call(tr).replace(wa,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ar=Qa?e.Buffer:Ss,ur=e.Symbol,cr=e.Uint8Array,lr=ar?ar.allocUnsafe:Ss,hr=ws(Gn.getPrototypeOf,Gn),fr=Gn.create,pr=Qn.propertyIsEnumerable,dr=Yn.splice,gr=ur?ur.isConcatSpreadable:Ss,mr=ur?ur.iterator:Ss,vr=ur?ur.toStringTag:Ss,yr=function(){try{var t=ye(Gn,"defineProperty");return t({},"",{}),t}catch(t){}}(),br=e.clearTimeout!==Ka.clearTimeout&&e.clearTimeout,wr=Bn&&Bn.now!==Ka.Date.now&&Bn.now,_r=e.setTimeout!==Ka.setTimeout&&e.setTimeout,xr=Un.ceil,Cr=Un.floor,kr=Gn.getOwnPropertySymbols,Sr=ar?ar.isBuffer:Ss,Or=e.isFinite,Er=Yn.join,Tr=ws(Gn.keys,Gn),Ar=Un.max,Ir=Un.min,jr=Bn.now,Pr=e.parseInt,Dr=Un.random,Nr=Yn.reverse,Rr=ye(e,"DataView"),Mr=ye(e,"Map"),Wr=ye(e,"Promise"),Lr=ye(e,"Set"),Fr=ye(e,"WeakMap"),Hr=ye(Gn,"create"),Br=Fr&&new Fr,qr={},zr=Re(Rr),Ur=Re(Mr),Gr=Re(Wr),Vr=Re(Lr),$r=Re(Fr),Xr=ur?ur.prototype:Ss,Yr=Xr?Xr.valueOf:Ss,Kr=Xr?Xr.toString:Ss,Qr=function(t){if(!ln(t))return{};if(fr)return fr(t);Jr.prototype=t;t=new Jr;return Jr.prototype=Ss,t};function Jr(){}d.templateSettings={escape:pa,evaluate:da,interpolate:ga,variable:"",imports:{_:d}},(d.prototype=o.prototype).constructor=d,(g.prototype=Qr(o.prototype)).constructor=g,(m.prototype=Qr(o.prototype)).constructor=m,n.prototype.clear=function(){this.__data__=Hr?Hr(null):{},this.size=0},n.prototype.delete=function(t){return t=this.has(t)&&delete this.__data__[t],this.size-=t?1:0,t},n.prototype.get=function(t){var e=this.__data__;if(Hr){var n=e[t];return n===Es?Ss:n}return tr.call(e,t)?e[t]:Ss},n.prototype.has=function(t){var e=this.__data__;return Hr?e[t]!==Ss:tr.call(e,t)},n.prototype.set=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=Hr&&e===Ss?Es:e,this},i.prototype.clear=function(){this.__data__=[],this.size=0},i.prototype.delete=function(t){var e=this.__data__;return!((t=l(e,t))<0)&&(t==e.length-1?e.pop():dr.call(e,t,1),--this.size,!0)},i.prototype.get=function(t){var e=this.__data__;return(t=l(e,t))<0?Ss:e[t][1]},i.prototype.has=function(t){return-1<l(this.__data__,t)},i.prototype.set=function(t,e){var n=this.__data__,r=l(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},s.prototype.clear=function(){this.size=0,this.__data__={hash:new n,map:new(Mr||i),string:new n}},s.prototype.delete=function(t){return t=me(this,t).delete(t),this.size-=t?1:0,t},s.prototype.get=function(t){return me(this,t).get(t)},s.prototype.has=function(t){return me(this,t).has(t)},s.prototype.set=function(t,e){var n=me(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},v.prototype.add=v.prototype.push=function(t){return this.__data__.set(t,Es),this},v.prototype.has=function(t){return this.__data__.has(t)},w.prototype.clear=function(){this.__data__=new i,this.size=0},w.prototype.delete=function(t){var e=this.__data__,t=e.delete(t);return this.size=e.size,t},w.prototype.get=function(t){return this.__data__.get(t)},w.prototype.has=function(t){return this.__data__.has(t)},w.prototype.set=function(t,e){var n=this.__data__;if(n instanceof i){var r=n.__data__;if(!Mr||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new s(r)}return n.set(t,e),this.size=n.size,this};var Zr=Ht(j),ti=Ht(P,!0),ei=Bt(),ni=Bt(!0),ri=Br?function(t,e){return Br.set(t,e),t}:Dn,ii=yr?function(t,e){return yr(t,"toString",{configurable:!0,enumerable:!1,value:Pn(e),writable:!0})}:Dn,oi=at,si=br||function(t){return Ka.clearTimeout(t)},ai=Lr&&1/xs(new Lr([,-0]))[1]==1/0?function(t){return new Lr(t)}:Mn,ui=Br?function(t){return Br.get(t)}:Mn,ci=kr?function(e){return null==e?[]:(e=Gn(e),Xo(kr(e),function(t){return pr.call(e,t)}))}:Ln,li=kr?function(t){for(var e=[];t;)Jo(e,ci(t)),t=hr(t);return e}:Ln,hi=M;(Rr&&hi(new Rr(new ArrayBuffer(1)))!=Ks||Mr&&hi(new Mr)!=Hs||Wr&&hi(Wr.resolve())!=zs||Lr&&hi(new Lr)!=Gs||Fr&&hi(new Fr)!=Xs)&&(hi=function(t){var e=M(t),t=e==qs?t.constructor:Ss,t=t?Re(t):"";if(t)switch(t){case zr:return Ks;case Ur:return Hs;case Gr:return zs;case Vr:return Gs;case $r:return Xs}return e});var fi,pi,di=Jn?an:Fn,gi=Pe(ri),mi=_r||function(t,e){return Ka.setTimeout(t,e)},vi=Pe(ii),yi=(pi=(fi=tn(fi=function(t){var i=[];return ya.test(t)&&i.push(""),t.replace(ba,function(t,e,n,r){i.push(n?r.replace(Aa,"$1"):e||t)}),i},function(t){return 500===pi.size&&pi.clear(),t})).cache,fi),bi=at(function(t,e){return on(t)?O(t,I(e,1,on,!0)):[]}),wi=at(function(t,e){var n=Be(e);return on(n)&&(n=Ss),on(t)?O(t,I(e,1,on,!0),ge(n,2)):[]}),_i=at(function(t,e){var n=Be(e);return on(n)&&(n=Ss),on(t)?O(t,I(e,1,on,!0),Ss,n):[]}),xi=at(function(t){var e=Qo(t,Ot);return e.length&&e[0]===t[0]?H(e):[]}),Ci=at(function(t){var e=Be(t),n=Qo(t,Ot);return e===Be(n)?e=Ss:n.pop(),n.length&&n[0]===t[0]?H(n,ge(e,2)):[]}),ki=at(function(t){var e=Be(t),n=Qo(t,Ot);return(e="function"==typeof e?e:Ss)&&n.pop(),n.length&&n[0]===t[0]?H(n,Ss,e):[]}),Si=at(qe),Oi=le(function(t,e){var n=null==t?0:t.length,r=p(t,e);return it(t,Qo(e,function(t){return xe(t,n)?+t:t}).sort(Dt)),r}),Ei=at(function(t){return bt(I(t,1,on,!0))}),Ti=at(function(t){var e=Be(t);return on(e)&&(e=Ss),bt(I(t,1,on,!0),ge(e,2))}),Ai=at(function(t){var e="function"==typeof(e=Be(t))?e:Ss;return bt(I(t,1,on,!0),Ss,e)}),Ii=at(function(t,e){return on(t)?O(t,e):[]}),ji=at(function(t){return kt(Xo(t,on))}),Pi=at(function(t){var e=Be(t);return on(e)&&(e=Ss),kt(Xo(t,on),ge(e,2))}),Di=at(function(t){var e="function"==typeof(e=Be(t))?e:Ss;return kt(Xo(t,on),Ss,e)}),Ni=at(Ue),Ri=at(function(t){var e=t.length,e="function"==typeof(e=1<e?t[e-1]:Ss)?(t.pop(),e):Ss;return Ge(t,e)}),Mi=le(function(e){function t(t){return p(t,e)}var n=e.length,r=n?e[0]:0,i=this.__wrapped__;return!(1<n||this.__actions__.length)&&i instanceof m&&xe(r)?((i=i.slice(r,+r+(n?1:0))).__actions__.push({func:$e,args:[t],thisArg:Ss}),new g(i,this.__chain__).thru(function(t){return n&&!t.length&&t.push(Ss),t})):this.thru(t)}),Wi=Lt(function(t,e,n){tr.call(t,n)?++t[n]:f(t,n,1)}),Li=Vt(We),Fi=Vt(Le),Hi=Lt(function(t,e,n){tr.call(t,n)?t[n].push(e):f(t,n,[e])}),Bi=at(function(t,e,n){var r=-1,i="function"==typeof e,o=rn(t)?Hn(t.length):[];return Zr(t,function(t){o[++r]=i?zo(e,t,n):B(t,e,n)}),o}),qi=Lt(function(t,e,n){f(t,n,e)}),zi=Lt(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]}),Ui=at(function(t,e){if(null==t)return[];var n=e.length;return 1<n&&Ce(t,e[0],e[1])?e=[]:2<n&&Ce(e[0],e[1],e[2])&&(e=[e[0]]),et(t,I(e,1),[])}),Gi=wr||function(){return Ka.Date.now()},Vi=at(function(t,e,n){var r,i=1;return n.length&&(r=_s(n,de(Vi)),i|=32),oe(t,i,e,n,r)}),$i=at(function(t,e,n){var r,i=3;return n.length&&(r=_s(n,de($i)),i|=32),oe(e,i,t,n,r)}),Xi=at(function(t,e){return S(t,1,e)}),Yi=at(function(t,e,n){return S(t,wn(e)||0,n)});tn.Cache=s;var Ki,Qi=oi(function(r,i){var o=(i=1==i.length&&io(i[0])?Qo(i[0],fs(ge())):Qo(I(i,1),fs(ge()))).length;return at(function(t){for(var e=-1,n=Ir(t.length,o);++e<n;)t[e]=i[e].call(this,t[e]);return zo(r,this,t)})}),Ji=at(function(t,e){var n=_s(e,de(Ji));return oe(t,32,Ss,e,n)}),Zi=at(function(t,e){var n=_s(e,de(Zi));return oe(t,64,Ss,e,n)}),to=le(function(t,e){return oe(t,256,Ss,Ss,Ss,e)}),eo=ee(W),no=ee(function(t,e){return e<=t}),ro=q(function(){return arguments}())?q:function(t){return hn(t)&&tr.call(t,"callee")&&!pr.call(t,"callee")},io=Hn.isArray,oo=Ja?fs(Ja):function(t){return hn(t)&&M(t)==Ys},so=Sr||Fn,ao=Za?fs(Za):function(t){return hn(t)&&M(t)==Ms},uo=tu?fs(tu):function(t){return hn(t)&&hi(t)==Hs},co=eu?fs(eu):function(t){return hn(t)&&M(t)==Us},lo=nu?fs(nu):function(t){return hn(t)&&hi(t)==Gs},ho=ru?fs(ru):function(t){return hn(t)&&cn(t.length)&&!!Va[M(t)]},fo=ee(Y),po=ee(function(t,e){return t<=e}),go=Ft(function(t,e){if(Oe(e)||rn(e))Wt(e,Sn(e),t);else for(var n in e)tr.call(e,n)&&y(t,n,e[n])}),mo=Ft(function(t,e){Wt(e,On(e),t)}),vo=Ft(function(t,e,n,r){Wt(e,On(e),t,r)}),yo=Ft(function(t,e,n,r){Wt(e,Sn(e),t,r)}),bo=le(p),wo=at(function(t){return t.push(Ss,se),zo(vo,Ss,t)}),_o=at(function(t){return t.push(Ss,ae),zo(Oo,Ss,t)}),xo=Yt(function(t,e,n){t[e]=n},Pn(Dn)),Co=Yt(function(t,e,n){tr.call(t,e)?t[e].push(n):t[e]=[n]},ge),ko=at(B),So=Ft(function(t,e,n){Z(t,e,n)}),Oo=Ft(function(t,e,n,r){Z(t,e,n,r)}),Eo=le(function(e,t){var n={};if(null==e)return n;var r=!1;t=Qo(t,function(t){return t=Tt(t,e),r=r||1<t.length,t}),Wt(e,fe(e),n),r&&(n=C(n,7,ue));for(var i=t.length;i--;)wt(n,t[i]);return n}),To=le(function(t,e){return null==t?{}:nt(n=t,e,function(t,e){return kn(n,e)});var n}),Ao=ie(Sn),Io=ie(On),jo=zt(function(t,e,n){return e=e.toLowerCase(),t+(n?An(e):e)}),Po=zt(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),Do=zt(function(t,e,n){return t+(n?" ":"")+e.toLowerCase()}),No=qt("toLowerCase"),Ro=zt(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}),Mo=zt(function(t,e,n){return t+(n?" ":"")+Lo(e)}),Wo=zt(function(t,e,n){return t+(n?" ":"")+e.toUpperCase()}),Lo=qt("toUpperCase"),Fo=at(function(t,e){try{return zo(t,Ss,e)}catch(t){return sn(t)?t:new qn(t)}}),Kn=le(function(e,t){return Go(t,function(t){t=Ne(t),f(e,t,Vi(e[t],e))}),e}),Ho=$t(),ar=$t(!0),Bn=at(function(e,n){return function(t){return B(t,e,n)}}),e=at(function(e,n){return function(t){return B(e,t,n)}}),ur=Qt(Qo),Xr=Qt($o),br=Qt(es),Rr=te(),Wr=te(!0),Fr=Kt(function(t,e){return t+e},0),Jn=re("ceil"),_r=Kt(function(t,e){return t/e},1),ii=re("floor"),wr=Kt(function(t,e){return t*e},1),oi=re("round"),Sr=Kt(function(t,e){return t-e},0);return d.after=function(t,e){if("function"!=typeof e)throw new Xn(Os);return t=yn(t),function(){if(--t<1)return e.apply(this,arguments)}},d.ary=Qe,d.assign=go,d.assignIn=mo,d.assignInWith=vo,d.assignWith=yo,d.at=bo,d.before=Je,d.bind=Vi,d.bindAll=Kn,d.bindKey=$i,d.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return io(t)?t:[t]},d.chain=Ve,d.chunk=function(t,e,n){e=(n?Ce(t,e,n):e===Ss)?1:Ar(yn(e),0);var r=null==t?0:t.length;if(!r||e<1)return[];for(var i=0,o=0,s=Hn(xr(r/e));i<r;)s[o++]=ft(t,i,i+=e);return s},d.compact=function(t){for(var e=-1,n=null==t?0:t.length,r=0,i=[];++e<n;){var o=t[e];o&&(i[r++]=o)}return i},d.concat=function(){var t=arguments.length;if(!t)return[];for(var e=Hn(t-1),n=arguments[0],r=t;r--;)e[r-1]=arguments[r];return Jo(io(n)?Mt(n):[n],I(e,1))},d.cond=function(r){var i=null==r?0:r.length,e=ge();return r=i?Qo(r,function(t){if("function"!=typeof t[1])throw new Xn(Os);return[e(t[0]),t[1]]}):[],at(function(t){for(var e=-1;++e<i;){var n=r[e];if(zo(n[0],this,t))return zo(n[1],this,t)}})},d.conforms=function(t){return e=C(t,1),n=Sn(e),function(t){return k(t,e,n)};var e,n},d.constant=Pn,d.countBy=Wi,d.create=function(t,e){return t=Qr(t),null==e?t:b(t,e)},d.curry=function t(e,n,r){n=oe(e,8,Ss,Ss,Ss,Ss,Ss,n=r?Ss:n);return n.placeholder=t.placeholder,n},d.curryRight=function t(e,n,r){n=oe(e,16,Ss,Ss,Ss,Ss,Ss,n=r?Ss:n);return n.placeholder=t.placeholder,n},d.debounce=Ze,d.defaults=wo,d.defaultsDeep=_o,d.defer=Xi,d.delay=Yi,d.difference=bi,d.differenceBy=wi,d.differenceWith=_i,d.drop=function(t,e,n){var r=null==t?0:t.length;return r?ft(t,(e=n||e===Ss?1:yn(e))<0?0:e,r):[]},d.dropRight=function(t,e,n){var r=null==t?0:t.length;return r?ft(t,0,(e=r-(e=n||e===Ss?1:yn(e)))<0?0:e):[]},d.dropRightWhile=function(t,e){return t&&t.length?xt(t,ge(e,3),!0,!0):[]},d.dropWhile=function(t,e){return t&&t.length?xt(t,ge(e,3),!0):[]},d.fill=function(t,e,n,r){var i=null==t?0:t.length;return i?(n&&"number"!=typeof n&&Ce(t,e,n)&&(n=0,r=i),function(t,e,n,r){var i=t.length;for((n=yn(n))<0&&(n=i<-n?0:i+n),(r=r===Ss||i<r?i:yn(r))<0&&(r+=i),r=r<n?0:bn(r);n<r;)t[n++]=e;return t}(t,e,n,r)):[]},d.filter=function(t,e){return(io(t)?Xo:A)(t,ge(e,3))},d.flatMap=function(t,e){return I(Ke(t,e),1)},d.flatMapDeep=function(t,e){return I(Ke(t,e),1/0)},d.flatMapDepth=function(t,e,n){return n=n===Ss?1:yn(n),I(Ke(t,e),n)},d.flatten=Fe,d.flattenDeep=function(t){return(null==t?0:t.length)?I(t,1/0):[]},d.flattenDepth=function(t,e){return(null==t?0:t.length)?I(t,e=e===Ss?1:yn(e)):[]},d.flip=function(t){return oe(t,512)},d.flow=Ho,d.flowRight=ar,d.fromPairs=function(t){for(var e=-1,n=null==t?0:t.length,r={};++e<n;){var i=t[e];r[i[0]]=i[1]}return r},d.functions=function(t){return null==t?[]:D(t,Sn(t))},d.functionsIn=function(t){return null==t?[]:D(t,On(t))},d.groupBy=Hi,d.initial=function(t){return(null==t?0:t.length)?ft(t,0,-1):[]},d.intersection=xi,d.intersectionBy=Ci,d.intersectionWith=ki,d.invert=xo,d.invertBy=Co,d.invokeMap=Bi,d.iteratee=Nn,d.keyBy=qi,d.keys=Sn,d.keysIn=On,d.map=Ke,d.mapKeys=function(t,r){var i={};return r=ge(r,3),j(t,function(t,e,n){f(i,r(t,e,n),t)}),i},d.mapValues=function(t,r){var i={};return r=ge(r,3),j(t,function(t,e,n){f(i,e,r(t,e,n))}),i},d.matches=function(t){return Q(C(t,1))},d.matchesProperty=function(t,e){return J(t,C(e,1))},d.memoize=tn,d.merge=So,d.mergeWith=Oo,d.method=Bn,d.methodOf=e,d.mixin=Rn,d.negate=en,d.nthArg=function(e){return e=yn(e),at(function(t){return tt(t,e)})},d.omit=Eo,d.omitBy=function(t,e){return En(t,en(ge(e)))},d.once=function(t){return Je(2,t)},d.orderBy=function(t,e,n,r){return null==t?[]:et(t,e=!io(e)?null==e?[]:[e]:e,n=!io(n=r?Ss:n)?null==n?[]:[n]:n)},d.over=ur,d.overArgs=Qi,d.overEvery=Xr,d.overSome=br,d.partial=Ji,d.partialRight=Zi,d.partition=zi,d.pick=To,d.pickBy=En,d.property=Wn,d.propertyOf=function(e){return function(t){return null==e?Ss:N(e,t)}},d.pull=Si,d.pullAll=qe,d.pullAllBy=function(t,e,n){return t&&t.length&&e&&e.length?rt(t,e,ge(n,2)):t},d.pullAllWith=function(t,e,n){return t&&t.length&&e&&e.length?rt(t,e,Ss,n):t},d.pullAt=Oi,d.range=Rr,d.rangeRight=Wr,d.rearg=to,d.reject=function(t,e){return(io(t)?Xo:A)(t,en(ge(e,3)))},d.remove=function(t,e){var n=[];if(!t||!t.length)return n;var r=-1,i=[],o=t.length;for(e=ge(e,3);++r<o;){var s=t[r];e(s,r,t)&&(n.push(s),i.push(r))}return it(t,i),n},d.rest=function(t,e){if("function"!=typeof t)throw new Xn(Os);return at(t,e=e===Ss?e:yn(e))},d.reverse=ze,d.sampleSize=function(t,e,n){return e=(n?Ce(t,e,n):e===Ss)?1:yn(e),(io(t)?u:ct)(t,e)},d.set=function(t,e,n){return null==t?t:lt(t,e,n)},d.setWith=function(t,e,n,r){return r="function"==typeof r?r:Ss,null==t?t:lt(t,e,n,r)},d.shuffle=function(t){return(io(t)?c:ht)(t)},d.slice=function(t,e,n){var r=null==t?0:t.length;return r?(n=n&&"number"!=typeof n&&Ce(t,e,n)?(e=0,r):(e=null==e?0:yn(e),n===Ss?r:yn(n)),ft(t,e,n)):[]},d.sortBy=Ui,d.sortedUniq=function(t){return t&&t.length?mt(t):[]},d.sortedUniqBy=function(t,e){return t&&t.length?mt(t,ge(e,2)):[]},d.split=function(t,e,n){return n&&"number"!=typeof n&&Ce(t,e,n)&&(e=n=Ss),(n=n===Ss?js:n>>>0)?(t=xn(t))&&("string"==typeof e||null!=e&&!co(e))&&(!(e=yt(e))&&ys(t))?At(ks(t),0,n):t.split(e,n):[]},d.spread=function(n,r){if("function"!=typeof n)throw new Xn(Os);return r=null==r?0:Ar(yn(r),0),at(function(t){var e=t[r],t=At(t,0,r);return e&&Jo(t,e),zo(n,this,t)})},d.tail=function(t){var e=null==t?0:t.length;return e?ft(t,1,e):[]},d.take=function(t,e,n){return t&&t.length?ft(t,0,(e=n||e===Ss?1:yn(e))<0?0:e):[]},d.takeRight=function(t,e,n){var r=null==t?0:t.length;return r?ft(t,(e=r-(e=n||e===Ss?1:yn(e)))<0?0:e,r):[]},d.takeRightWhile=function(t,e){return t&&t.length?xt(t,ge(e,3),!1,!0):[]},d.takeWhile=function(t,e){return t&&t.length?xt(t,ge(e,3)):[]},d.tap=function(t,e){return e(t),t},d.throttle=function(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new Xn(Os);return ln(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Ze(t,e,{leading:r,maxWait:e,trailing:i})},d.thru=$e,d.toArray=mn,d.toPairs=Ao,d.toPairsIn=Io,d.toPath=function(t){return io(t)?Qo(t,Ne):gn(t)?[t]:Mt(yi(xn(t)))},d.toPlainObject=_n,d.transform=function(t,r,i){var e,n=io(t),o=n||so(t)||ho(t);return r=ge(r,4),null==i&&(e=t&&t.constructor,i=o?n?new e:[]:ln(t)&&an(e)?Qr(hr(t)):{}),(o?Go:j)(t,function(t,e,n){return r(i,t,e,n)}),i},d.unary=function(t){return Qe(t,1)},d.union=Ei,d.unionBy=Ti,d.unionWith=Ai,d.uniq=function(t){return t&&t.length?bt(t):[]},d.uniqBy=function(t,e){return t&&t.length?bt(t,ge(e,2)):[]},d.uniqWith=function(t,e){return e="function"==typeof e?e:Ss,t&&t.length?bt(t,Ss,e):[]},d.unset=function(t,e){return null==t||wt(t,e)},d.unzip=Ue,d.unzipWith=Ge,d.update=function(t,e,n){return null==t?t:_t(t,e,Et(n))},d.updateWith=function(t,e,n,r){return r="function"==typeof r?r:Ss,null==t?t:_t(t,e,Et(n),r)},d.values=Tn,d.valuesIn=function(t){return null==t?[]:ps(t,On(t))},d.without=Ii,d.words=jn,d.wrap=function(t,e){return Ji(Et(e),t)},d.xor=ji,d.xorBy=Pi,d.xorWith=Di,d.zip=Ni,d.zipObject=function(t,e){return St(t||[],e||[],y)},d.zipObjectDeep=function(t,e){return St(t||[],e||[],lt)},d.zipWith=Ri,d.entries=Ao,d.entriesIn=Io,d.extend=mo,d.extendWith=vo,Rn(d,d),d.add=Fr,d.attempt=Fo,d.camelCase=jo,d.capitalize=An,d.ceil=Jn,d.clamp=function(t,e,n){return n===Ss&&(n=e,e=Ss),n!==Ss&&(n=(n=wn(n))==n?n:0),e!==Ss&&(e=(e=wn(e))==e?e:0),x(wn(t),e,n)},d.clone=function(t){return C(t,4)},d.cloneDeep=function(t){return C(t,5)},d.cloneDeepWith=function(t,e){return C(t,5,e="function"==typeof e?e:Ss)},d.cloneWith=function(t,e){return C(t,4,e="function"==typeof e?e:Ss)},d.conformsTo=function(t,e){return null==e||k(t,e,Sn(e))},d.deburr=In,d.defaultTo=function(t,e){return null==t||t!=t?e:t},d.divide=_r,d.endsWith=function(t,e,n){t=xn(t),e=yt(e);var r=t.length,r=n=n===Ss?r:x(yn(n),0,r);return 0<=(n-=e.length)&&t.slice(n,r)==e},d.eq=nn,d.escape=function(t){return(t=xn(t))&&fa.test(t)?t.replace(la,ou):t},d.escapeRegExp=function(t){return(t=xn(t))&&_a.test(t)?t.replace(wa,"\\$&"):t},d.every=function(t,e,n){return(io(t)?$o:E)(t,ge(e=n&&Ce(t,e,n)?Ss:e,3))},d.find=Li,d.findIndex=We,d.findKey=function(t,e){return ns(t,ge(e,3),j)},d.findLast=Fi,d.findLastIndex=Le,d.findLastKey=function(t,e){return ns(t,ge(e,3),P)},d.floor=ii,d.forEach=Xe,d.forEachRight=Ye,d.forIn=function(t,e){return null==t?t:ei(t,ge(e,3),On)},d.forInRight=function(t,e){return null==t?t:ni(t,ge(e,3),On)},d.forOwn=function(t,e){return t&&j(t,ge(e,3))},d.forOwnRight=function(t,e){return t&&P(t,ge(e,3))},d.get=Cn,d.gt=eo,d.gte=no,d.has=function(t,e){return null!=t&&be(t,e,L)},d.hasIn=kn,d.head=He,d.identity=Dn,d.includes=function(t,e,n,r){return t=rn(t)?t:Tn(t),n=n&&!r?yn(n):0,r=t.length,n<0&&(n=Ar(r+n,0)),dn(t)?n<=r&&-1<t.indexOf(e,n):!!r&&-1<is(t,e,n)},d.indexOf=function(t,e,n){var r=null==t?0:t.length;return r?(n=null==n?0:yn(n),is(t,e,n=n<0?Ar(r+n,0):n)):-1},d.inRange=function(t,e,n){return e=vn(e),n===Ss?(n=e,e=0):n=vn(n),(t=t=wn(t))>=Ir(e=e,n=n)&&t<Ar(e,n)},d.invoke=ko,d.isArguments=ro,d.isArray=io,d.isArrayBuffer=oo,d.isArrayLike=rn,d.isArrayLikeObject=on,d.isBoolean=function(t){return!0===t||!1===t||hn(t)&&M(t)==Rs},d.isBuffer=so,d.isDate=ao,d.isElement=function(t){return hn(t)&&1===t.nodeType&&!pn(t)},d.isEmpty=function(t){if(null==t)return!0;if(rn(t)&&(io(t)||"string"==typeof t||"function"==typeof t.splice||so(t)||ho(t)||ro(t)))return!t.length;var e,n=hi(t);if(n==Hs||n==Gs)return!t.size;if(Oe(t))return!$(t).length;for(e in t)if(tr.call(t,e))return!1;return!0},d.isEqual=function(t,e){return z(t,e)},d.isEqualWith=function(t,e,n){var r=(n="function"==typeof n?n:Ss)?n(t,e):Ss;return r===Ss?z(t,e,Ss,n):!!r},d.isError=sn,d.isFinite=function(t){return"number"==typeof t&&Or(t)},d.isFunction=an,d.isInteger=un,d.isLength=cn,d.isMap=uo,d.isMatch=function(t,e){return t===e||U(t,e,ve(e))},d.isMatchWith=function(t,e,n){return n="function"==typeof n?n:Ss,U(t,e,ve(e),n)},d.isNaN=function(t){return fn(t)&&t!=+t},d.isNative=function(t){if(di(t))throw new qn("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return G(t)},d.isNil=function(t){return null==t},d.isNull=function(t){return null===t},d.isNumber=fn,d.isObject=ln,d.isObjectLike=hn,d.isPlainObject=pn,d.isRegExp=co,d.isSafeInteger=function(t){return un(t)&&-As<=t&&t<=As},d.isSet=lo,d.isString=dn,d.isSymbol=gn,d.isTypedArray=ho,d.isUndefined=function(t){return t===Ss},d.isWeakMap=function(t){return hn(t)&&hi(t)==Xs},d.isWeakSet=function(t){return hn(t)&&"[object WeakSet]"==M(t)},d.join=function(t,e){return null==t?"":Er.call(t,e)},d.kebabCase=Po,d.last=Be,d.lastIndexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=r;return n!==Ss&&(i=(i=yn(n))<0?Ar(r+i,0):Ir(i,r-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,i):rs(t,ss,i,!0)},d.lowerCase=Do,d.lowerFirst=No,d.lt=fo,d.lte=po,d.max=function(t){return t&&t.length?T(t,Dn,W):Ss},d.maxBy=function(t,e){return t&&t.length?T(t,ge(e,2),W):Ss},d.mean=function(t){return as(t,Dn)},d.meanBy=function(t,e){return as(t,ge(e,2))},d.min=function(t){return t&&t.length?T(t,Dn,Y):Ss},d.minBy=function(t,e){return t&&t.length?T(t,ge(e,2),Y):Ss},d.stubArray=Ln,d.stubFalse=Fn,d.stubObject=function(){return{}},d.stubString=function(){return""},d.stubTrue=function(){return!0},d.multiply=wr,d.nth=function(t,e){return t&&t.length?tt(t,yn(e)):Ss},d.noConflict=function(){return Ka._===this&&(Ka._=or),this},d.noop=Mn,d.now=Gi,d.pad=function(t,e,n){t=xn(t);var r=(e=yn(e))?Cs(t):0;return!e||e<=r?t:Jt(Cr(r=(e-r)/2),n)+t+Jt(xr(r),n)},d.padEnd=function(t,e,n){t=xn(t);var r=(e=yn(e))?Cs(t):0;return e&&r<e?t+Jt(e-r,n):t},d.padStart=function(t,e,n){t=xn(t);var r=(e=yn(e))?Cs(t):0;return e&&r<e?Jt(e-r,n)+t:t},d.parseInt=function(t,e,n){return e=n||null==e?0:e&&+e,Pr(xn(t).replace(Ca,""),e||0)},d.random=function(t,e,n){var r;if(n&&"boolean"!=typeof n&&Ce(t,e,n)&&(e=n=Ss),n===Ss&&("boolean"==typeof e?(n=e,e=Ss):"boolean"==typeof t&&(n=t,t=Ss)),t===Ss&&e===Ss?(t=0,e=1):(t=vn(t),e===Ss?(e=t,t=0):e=vn(e)),e<t&&(r=t,t=e,e=r),n||t%1||e%1){n=Dr();return Ir(t+n*(e-t+Xa("1e-"+((n+"").length-1))),e)}return ot(t,e)},d.reduce=function(t,e,n){var r=io(t)?Zo:cs,i=arguments.length<3;return r(t,ge(e,4),n,i,Zr)},d.reduceRight=function(t,e,n){var r=io(t)?ts:cs,i=arguments.length<3;return r(t,ge(e,4),n,i,ti)},d.repeat=function(t,e,n){return e=(n?Ce(t,e,n):e===Ss)?1:yn(e),st(xn(t),e)},d.replace=function(){var t=arguments,e=xn(t[0]);return t.length<3?e:e.replace(t[1],t[2])},d.result=function(t,e,n){var r=-1,i=(e=Tt(e,t)).length;for(i||(i=1,t=Ss);++r<i;){var o=null==t?Ss:t[Ne(e[r])];o===Ss&&(r=i,o=n),t=an(o)?o.call(t):o}return t},d.round=oi,d.runInContext=t,d.sample=function(t){return(io(t)?a:ut)(t)},d.size=function(t){if(null==t)return 0;if(rn(t))return dn(t)?Cs(t):t.length;var e=hi(t);return e==Hs||e==Gs?t.size:$(t).length},d.snakeCase=Ro,d.some=function(t,e,n){return(io(t)?es:pt)(t,ge(e=n&&Ce(t,e,n)?Ss:e,3))},d.sortedIndex=function(t,e){return dt(t,e)},d.sortedIndexBy=function(t,e,n){return gt(t,e,ge(n,2))},d.sortedIndexOf=function(t,e){var n=null==t?0:t.length;if(n){var r=dt(t,e);if(r<n&&nn(t[r],e))return r}return-1},d.sortedLastIndex=function(t,e){return dt(t,e,!0)},d.sortedLastIndexBy=function(t,e,n){return gt(t,e,ge(n,2),!0)},d.sortedLastIndexOf=function(t,e){if(null==t?0:t.length){var n=dt(t,e,!0)-1;if(nn(t[n],e))return n}return-1},d.startCase=Mo,d.startsWith=function(t,e,n){return t=xn(t),n=null==n?0:x(yn(n),0,t.length),e=yt(e),t.slice(n,n+e.length)==e},d.subtract=Sr,d.sum=function(t){return t&&t.length?ls(t,Dn):0},d.sumBy=function(t,e){return t&&t.length?ls(t,ge(e,2)):0},d.template=function(s,t,e){var n=d.templateSettings;e&&Ce(s,t,e)&&(t=Ss),s=xn(s),t=vo({},t,n,se);var a,u,r=Sn(n=vo({},t.imports,n.imports,se)),i=ps(n,r),c=0,n=t.interpolate||La,l="__p += '",n=Vn((t.escape||La).source+"|"+n.source+"|"+(n===ga?Ia:La).source+"|"+(t.evaluate||La).source+"|$","g"),o="//# sourceURL="+("sourceURL"in t?t.sourceURL:"lodash.templateSources["+ ++Ga+"]")+"\n";if(s.replace(n,function(t,e,n,r,i,o){return n=n||r,l+=s.slice(c,o).replace(Fa,vs),e&&(a=!0,l+="' +\n__e("+e+") +\n'"),i&&(u=!0,l+="';\n"+i+";\n__p += '"),n&&(l+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),c=o+t.length,t}),l+="';\n",(t=t.variable)||(l="with (obj) {\n"+l+"\n}\n"),l=(u?l.replace(sa,""):l).replace(aa,"$1").replace(ua,"$1;"),l="function("+(t||"obj")+") {\n"+(t?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(u?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+l+"return __p\n}",(t=Fo(function(){return zn(r,o+"return "+l).apply(Ss,i)})).source=l,sn(t))throw t;return t},d.times=function(t,e){if((t=yn(t))<1||As<t)return[];var n=js,r=Ir(t,js);for(e=ge(e),t-=js,r=hs(r,e);++n<t;)e(n);return r},d.toFinite=vn,d.toInteger=yn,d.toLength=bn,d.toLower=function(t){return xn(t).toLowerCase()},d.toNumber=wn,d.toSafeInteger=function(t){return t?x(yn(t),-As,As):0===t?t:0},d.toString=xn,d.toUpper=function(t){return xn(t).toUpperCase()},d.trim=function(t,e,n){return(t=xn(t))&&(n||e===Ss)?t.replace(xa,""):t&&(e=yt(e))?(t=ks(t),e=ks(e),At(t,gs(t,e),ms(t,e)+1).join("")):t},d.trimEnd=function(t,e,n){return(t=xn(t))&&(n||e===Ss)?t.replace(ka,""):t&&(e=yt(e))?At(t=ks(t),0,ms(t,ks(e))+1).join(""):t},d.trimStart=function(t,e,n){return(t=xn(t))&&(n||e===Ss)?t.replace(Ca,""):t&&(e=yt(e))?At(t=ks(t),gs(t,ks(e))).join(""):t},d.truncate=function(t,e){var n,r=30,i="...";ln(e)&&(n="separator"in e?e.separator:n,r="length"in e?yn(e.length):r,i="omission"in e?yt(e.omission):i);var o,e=(t=xn(t)).length;if((e=ys(t)?(o=ks(t)).length:e)<=r)return t;if((e=r-Cs(i))<1)return i;if(r=o?At(o,0,e).join(""):t.slice(0,e),n===Ss)return r+i;if(o&&(e+=r.length-e),co(n)){if(t.slice(e).search(n)){var s,a=r;for((n=!n.global?Vn(n.source,xn(ja.exec(n))+"g"):n).lastIndex=0;s=n.exec(a);)var u=s.index;r=r.slice(0,u===Ss?e:u)}}else t.indexOf(yt(n),e)==e||-1<(e=r.lastIndexOf(n))&&(r=r.slice(0,e));return r+i},d.unescape=function(t){return(t=xn(t))&&ha.test(t)?t.replace(ca,su):t},d.uniqueId=function(t){var e=++er;return xn(t)+e},d.upperCase=Wo,d.upperFirst=Lo,d.each=Xe,d.eachRight=Ye,d.first=He,Rn(d,(Ki={},j(d,function(t,e){tr.call(d.prototype,e)||(Ki[e]=t)}),Ki),{chain:!1}),d.VERSION="4.17.4",Go(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){d[t].placeholder=d}),Go(["drop","take"],function(n,r){m.prototype[n]=function(t){t=t===Ss?1:Ar(yn(t),0);var e=this.__filtered__&&!r?new m(this):this.clone();return e.__filtered__?e.__takeCount__=Ir(t,e.__takeCount__):e.__views__.push({size:Ir(t,js),type:n+(e.__dir__<0?"Right":"")}),e},m.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse()}}),Go(["filter","map","takeWhile"],function(t,e){var n=e+1,r=1==n||3==n;m.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:ge(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}}),Go(["head","last"],function(t,e){var n="take"+(e?"Right":"");m.prototype[t]=function(){return this[n](1).value()[0]}}),Go(["initial","tail"],function(t,e){var n="drop"+(e?"":"Right");m.prototype[t]=function(){return this.__filtered__?new m(this):this[n](1)}}),m.prototype.compact=function(){return this.filter(Dn)},m.prototype.find=function(t){return this.filter(t).head()},m.prototype.findLast=function(t){return this.reverse().find(t)},m.prototype.invokeMap=at(function(e,n){return"function"==typeof e?new m(this):this.map(function(t){return B(t,e,n)})}),m.prototype.reject=function(t){return this.filter(en(ge(t)))},m.prototype.slice=function(t,e){t=yn(t);var n=this;return n.__filtered__&&(0<t||e<0)?new m(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),n=e!==Ss?(e=yn(e))<0?n.dropRight(-e):n.take(e-t):n)},m.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},m.prototype.toArray=function(){return this.take(js)},j(m.prototype,function(c,t){var l=/^(?:filter|find|map|reject)|While$/.test(t),h=/^(?:head|last)$/.test(t),f=d[h?"take"+("last"==t?"Right":""):t],p=h||/^find/.test(t);f&&(d.prototype[t]=function(){function t(t){return t=f.apply(d,Jo([t],n)),h&&s?t[0]:t}var e=this.__wrapped__,n=h?[1]:arguments,r=e instanceof m,i=n[0],o=r||io(e);o&&l&&"function"==typeof i&&1!=i.length&&(r=o=!1);var s=this.__chain__,a=!!this.__actions__.length,i=p&&!s,a=r&&!a;if(p||!o)return i&&a?c.apply(this,n):(u=this.thru(t),i?h?u.value()[0]:u.value():u);var e=a?e:new m(this),u=c.apply(e,n);return u.__actions__.push({func:$e,args:[t],thisArg:Ss}),new g(u,s)})}),Go(["pop","push","shift","sort","splice","unshift"],function(t){var n=Yn[t],r=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",i=/^(?:pop|shift)$/.test(t);d.prototype[t]=function(){var e=arguments;if(!i||this.__chain__)return this[r](function(t){return n.apply(io(t)?t:[],e)});var t=this.value();return n.apply(io(t)?t:[],e)}}),j(m.prototype,function(t,e){var n,r=d[e];r&&(n=r.name+"",(qr[n]||(qr[n]=[])).push({name:e,func:r}))}),qr[Xt(Ss,2).name]=[{name:"wrapper",func:Ss}],m.prototype.clone=function(){var t=new m(this.__wrapped__);return t.__actions__=Mt(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Mt(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Mt(this.__views__),t},m.prototype.reverse=function(){var t;return this.__filtered__?((t=new m(this)).__dir__=-1,t.__filtered__=!0):(t=this.clone()).__dir__*=-1,t},m.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=io(t),r=e<0,i=n?t.length:0,o=function(t,e,n){for(var r=-1,i=n.length;++r<i;){var o=n[r],s=o.size;switch(o.type){case"drop":t+=s;break;case"dropRight":e-=s;break;case"take":e=Ir(e,t+s);break;case"takeRight":t=Ar(t,e-s)}}return{start:t,end:e}}(0,i,this.__views__),s=o.start,a=(o=o.end)-s,u=r?o:s-1,c=this.__iteratees__,l=c.length,h=0,f=Ir(a,this.__takeCount__);if(!n||!r&&i==a&&f==a)return Ct(t,this.__actions__);var p=[];t:for(;a--&&h<f;){for(var d=-1,g=t[u+=e];++d<l;){var m=c[d],v=m.iteratee,m=m.type,v=v(g);if(2==m)g=v;else if(!v){if(1==m)continue t;break t}}p[h++]=g}return p},d.prototype.at=Mi,d.prototype.chain=function(){return Ve(this)},d.prototype.commit=function(){return new g(this.value(),this.__chain__)},d.prototype.next=function(){this.__values__===Ss&&(this.__values__=mn(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?Ss:this.__values__[this.__index__++]}},d.prototype.plant=function(t){for(var e,n=this;n instanceof o;){var r=Me(n);r.__index__=0,r.__values__=Ss,e?i.__wrapped__=r:e=r;var i=r,n=n.__wrapped__}return i.__wrapped__=t,e},d.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof m){t=t;return(t=(t=this.__actions__.length?new m(this):t).reverse()).__actions__.push({func:$e,args:[ze],thisArg:Ss}),new g(t,this.__chain__)}return this.thru(ze)},d.prototype.toJSON=d.prototype.valueOf=d.prototype.value=function(){return Ct(this.__wrapped__,this.__actions__)},d.prototype.first=d.prototype.head,mr&&(d.prototype[mr]=function(){return this}),d}();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Ka._=au,define(function(){return au})):n?((n.exports=au)._=au,s._=au):Ka._=au}.call(this),function(t,e){"object"==typeof exports?module.exports=e():"function"==typeof define&&define.amd?define(e):t.jStat=e()}(this,function(){var p,d,_,x,m,g,a,u,i,e,c,l,h,o,n,f=function(a,u){var e=Array.prototype.concat,t=Array.prototype.slice,n=Object.prototype.toString;function c(t,e){e=e<t?t:e;return a.pow(10,17-~~(a.log(0<e?e:-e)*a.LOG10E))}var l=Array.isArray||function(t){return"[object Array]"===n.call(t)};function h(t){return"[object Function]"===n.call(t)}function f(t){return"number"==typeof t&&t-t==0}function p(){return new p._init(arguments)}function r(){return 0}function i(){return 1}function o(t,e){return t===e?1:0}function s(t,e,n,r){var i,o=[],s=t.length;if(e===u&&n===u&&r===u)return p.copy(t);if(r=r||1,(e=0<=(e=e||0)?e:s+e)===(n=0<=(n=n||t.length)?n:s+n)||0===r)return[];if(e<n&&r<0)return[];if(n<e&&0<r)return[];if(0<r)for(i=e;i<n;i+=r)o.push(t[i]);else for(i=e;n<i;i+=r)o.push(t[i]);return o}p.fn=p.prototype,p._init=function(t){if(l(t[0]))if(l(t[0][0])){h(t[1])&&(t[0]=p.map(t[0],t[1]));for(var e=0;e<t[0].length;e++)this[e]=t[0][e];this.length=t[0].length}else this[0]=h(t[1])?p.map(t[0],t[1]):t[0],this.length=1;else if(f(t[0]))this[0]=p.seq.apply(null,t),this.length=1;else{if(t[0]instanceof p)return p(t[0].toArray());this[0]=[],this.length=1}return this},p._init.prototype=p.prototype,(p._init.constructor=p).utils={calcRdx:c,isArray:l,isFunction:h,isNumber:f,toVector:function(t){return e.apply([],t)}},p._random_fn=a.random,p.setRandom=function(t){if("function"!=typeof t)throw new TypeError("fn is not a function");p._random_fn=t},p.extend=function(t){var e,n;if(1===arguments.length){for(n in t)p[n]=t[n];return this}for(e=1;e<arguments.length;e++)for(n in arguments[e])t[n]=arguments[e][n];return t},p.rows=function(t){return t.length||1},p.cols=function(t){return t[0].length||1},p.dimensions=function(t){return{rows:p.rows(t),cols:p.cols(t)}},p.row=function(e,t){return l(t)?t.map(function(t){return p.row(e,t)}):e[t]},p.rowa=function(t,e){return p.row(t,e)},p.col=function(r,t){if(l(t)){var i=p.arange(r.length).map(function(){return new Array(t.length)});return t.forEach(function(e,n){p.arange(r.length).forEach(function(t){i[t][n]=r[t][e]})}),i}for(var e=new Array(r.length),n=0;n<r.length;n++)e[n]=[r[n][t]];return e},p.cola=function(t,e){return p.col(t,e).map(function(t){return t[0]})},p.diag=function(t){for(var e=p.rows(t),n=new Array(e),r=0;r<e;r++)n[r]=[t[r][r]];return n},p.antidiag=function(t){for(var e=p.rows(t)-1,n=new Array(e),r=0;0<=e;e--,r++)n[r]=[t[r][e]];return n},p.transpose=function(t){for(var e,n,r=[],i=(t=!l(t[0])?[t]:t).length,o=t[0].length,s=0;s<o;s++){for(e=new Array(i),n=0;n<i;n++)e[n]=t[n][s];r.push(e)}return 1===r.length?r[0]:r},p.map=function(t,e,n){for(var r,i=(t=!l(t[0])?[t]:t).length,o=t[0].length,s=n?t:new Array(i),a=0;a<i;a++)for(s[a]||(s[a]=new Array(o)),r=0;r<o;r++)s[a][r]=e(t[a][r],a,r);return 1===s.length?s[0]:s},p.cumreduce=function(t,e,n){for(var r,i=(t=!l(t[0])?[t]:t).length,o=t[0].length,s=n?t:new Array(i),a=0;a<i;a++)for(s[a]||(s[a]=new Array(o)),0<o&&(s[a][0]=t[a][0]),r=1;r<o;r++)s[a][r]=e(s[a][r-1],t[a][r]);return 1===s.length?s[0]:s},p.alter=function(t,e){return p.map(t,e,!0)},p.create=function(t,e,n){var r,i,o=new Array(t);for(h(e)&&(n=e,e=t),r=0;r<t;r++)for(o[r]=new Array(e),i=0;i<e;i++)o[r][i]=n(r,i);return o},p.zeros=function(t,e){return f(e)||(e=t),p.create(t,e,r)},p.ones=function(t,e){return f(e)||(e=t),p.create(t,e,i)},p.rand=function(t,e){return f(e)||(e=t),p.create(t,e,p._random_fn)},p.identity=function(t,e){return f(e)||(e=t),p.create(t,e,o)},p.symmetric=function(t){var e,n,r=t.length;if(t.length!==t[0].length)return!1;for(e=0;e<r;e++)for(n=0;n<r;n++)if(t[n][e]!==t[e][n])return!1;return!0},p.clear=function(t){return p.alter(t,r)},p.seq=function(t,e,n,r){h(r)||(r=!1);for(var i=[],o=c(t,e),s=(e*o-t*o)/((n-1)*o),a=t,u=0;a<=e&&u<n;a=(t*o+s*o*++u)/o)i.push(r?r(a,u):a);return i},p.arange=function(t,e,n){var r,i=[];if(n=n||1,e===u&&(e=t,t=0),t===e||0===n)return[];if(t<e&&n<0)return[];if(e<t&&0<n)return[];if(0<n)for(r=t;r<e;r+=n)i.push(r);else for(r=t;e<r;r+=n)i.push(r);return i},p.slice=function(t,e){var n,r;return f((e=e||{}).row)?f(e.col)?t[e.row][e.col]:s(p.rowa(t,e.row),(n=e.col||{}).start,n.end,n.step):f(e.col)?s(p.cola(t,e.col),(r=e.row||{}).start,r.end,r.step):(r=e.row||{},n=e.col||{},s(t,r.start,r.end,r.step).map(function(t){return s(t,n.start,n.end,n.step)}))},p.sliceAssign=function(i,t,o){if(f(t.row)){if(f(t.col))return i[t.row][t.col]=o;t.col=t.col||{},t.col.start=t.col.start||0,t.col.end=t.col.end||i[0].length,t.col.step=t.col.step||1;var e=p.arange(t.col.start,a.min(i.length,t.col.end),t.col.step),n=t.row;return e.forEach(function(t,e){i[n][t]=o[e]}),i}if(f(t.col)){t.row=t.row||{},t.row.start=t.row.start||0,t.row.end=t.row.end||i.length,t.row.step=t.row.step||1;var r=p.arange(t.row.start,a.min(i[0].length,t.row.end),t.row.step),s=t.col;return r.forEach(function(t,e){i[t][s]=o[e]}),i}return o[0].length===u&&(o=[o]),t.row.start=t.row.start||0,t.row.end=t.row.end||i.length,t.row.step=t.row.step||1,t.col.start=t.col.start||0,t.col.end=t.col.end||i[0].length,t.col.step=t.col.step||1,r=p.arange(t.row.start,a.min(i.length,t.row.end),t.row.step),e=p.arange(t.col.start,a.min(i[0].length,t.col.end),t.col.step),r.forEach(function(n,r){e.forEach(function(t,e){i[n][t]=o[r][e]})}),i},p.diagonal=function(t){var n=p.zeros(t.length,t.length);return t.forEach(function(t,e){n[e][e]=t}),n},p.copy=function(t){return t.map(function(t){return f(t)?t:t.map(function(t){return t})})};var d=p.prototype;return d.length=0,d.push=Array.prototype.push,d.sort=Array.prototype.sort,d.splice=Array.prototype.splice,d.slice=Array.prototype.slice,d.toArray=function(){return 1<this.length?t.call(this):t.call(this)[0]},d.map=function(t,e){return p(p.map(this,t,e))},d.cumreduce=function(t,e){return p(p.cumreduce(this,t,e))},d.alter=function(t){return p.alter(this,t),this},function(t){for(var e=0;e<t.length;e++)!function(r){d[r]=function(t){var e,n=this;return t?(setTimeout(function(){t.call(n,d[r].call(n))}),this):(e=p[r](this),l(e)?p(e):e)}}(t[e])}("transpose clear symmetric rows cols dimensions diag antidiag".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(r){d[r]=function(t,e){var n=this;return e?(setTimeout(function(){e.call(n,d[r].call(n,t))}),this):p(p[r](this,t))}}(t[e])}("row col".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(t){d[t]=function(){return p(p[t].apply(null,arguments))}}(t[e])}("create zeros ones rand identity".split(" ")),p}(Math);function s(t,e,n,r){for(var i,o=0,s=1,a=1,u=1,c=0,l=0;x.abs((a-l)/a)>r;)s=u+(i=-(e+c)*(e+n+c)*t/(e+2*c)/(e+2*c+1))*s,a=(o=(l=a)+i*o)+(i=(c+=1)*(n-c)*t/(e+2*c-1)/(e+2*c))*a,o/=u=s+i*u,s/=u,a/=u,u=1;return a/e}function v(t,e,n){var r=[.9815606342467192,.9041172563704749,.7699026741943047,.5873179542866175,.3678314989981802,.1252334085114689],i=[.04717533638651183,.10693932599531843,.16007832854334622,.20316742672306592,.2334925365383548,.24914704581340277],o=.5*t;if(8<=o)return 1;for(var s=(s=2*_.normal.cdf(o,0,1,1,0)-1)>=x.exp(-50/n)?x.pow(s,n):0,a=3<t?2:3,u=o,c=(8-o)/a,l=u+c,h=0,f=n-1,p=1;p<=a;p++){for(var d=0,g=.5*(l+u),m=.5*(l-u),v=1;v<=12;v++){var y,b=6<v?r[(y=12-v+1)-1]:-r[(y=v)-1],w=g+m*b,b=w*w;if(60<b)break;w=.5*(2*_.normal.cdf(w,0,1,1,0))-.5*(2*_.normal.cdf(w,t,1,1,0));w>=x.exp(-30/f)&&(d+=i[y-1]*x.exp(-.5*b)*x.pow(w,f))}h+=d*=2*m*n/x.sqrt(2*x.PI),u=l,l+=c}return(s+=h)<=x.exp(-30/e)?0:1<=(s=x.pow(s,e))?1:s}function y(t){return e(t)||t instanceof m}function b(t,e,n,r){if(1<t||1<n||t<=0||n<=0)throw new Error("Proportions should be greater than 0 and less than 1");var i=(t*e+n*r)/(e+r);return(t-n)/l.sqrt(i*(1-i)*(1/e+1/r))}function w(t,e){var n=t.length,r=e[0].length-1,i=n-r-1,o=f.lstsq(e,t),s=f.multiply(e,o.map(function(t){return[t]})).map(function(t){return t[0]}),a=f.subtract(t,s),u=f.mean(t),c=f.sum(s.map(function(t){return Math.pow(t-u,2)})),l=f.sum(t.map(function(t,e){return Math.pow(t-s[e],2)})),h=c+l;return{exog:e,endog:t,nobs:n,df_model:r,df_resid:i,coef:o,predict:s,resid:a,ybar:u,SST:h,SSE:c,SSR:l,R2:c/h}}function C(e){var n,r,t=(n=e.exog,r=n[0].length,f.arange(r).map(function(e){var t=f.arange(r).filter(function(t){return t!==e});return w(f.col(n,e).map(function(t){return t[0]}),f.col(n,t))})),i=Math.sqrt(e.SSR/e.df_resid),o=t.map(function(t){var e=t.SST,t=t.R2;return i/Math.sqrt(e*(1-t))}),s=e.coef.map(function(t,e){return+t/o[e]}),a=s.map(function(t){t=f.studentt.cdf(t,e.df_resid);return 2*(.5<t?1-t:t)}),u=f.studentt.inv(.975,e.df_resid),t=e.coef.map(function(t,e){e=u*o[e];return[t-e,t+e]});return{se:o,t:s,p:a,sigmaHat:i,interval95:t}}return function(u,l){var c=u.utils.isFunction;function h(t,e){return t-e}function f(t,e,n){return l.max(e,l.min(t,n))}u.sum=function(t){for(var e=0,n=t.length;0<=--n;)e+=t[n];return e},u.sumsqrd=function(t){for(var e=0,n=t.length;0<=--n;)e+=t[n]*t[n];return e},u.sumsqerr=function(t){for(var e,n=u.mean(t),r=0,i=t.length;0<=--i;)r+=(e=t[i]-n)*e;return r},u.sumrow=function(t){for(var e=0,n=t.length;0<=--n;)e+=t[n];return e},u.product=function(t){for(var e=1,n=t.length;0<=--n;)e*=t[n];return e},u.min=function(t){for(var e=t[0],n=0;++n<t.length;)t[n]<e&&(e=t[n]);return e},u.max=function(t){for(var e=t[0],n=0;++n<t.length;)t[n]>e&&(e=t[n]);return e},u.unique=function(t){for(var e={},n=[],r=0;r<t.length;r++)e[t[r]]||(e[t[r]]=!0,n.push(t[r]));return n},u.mean=function(t){return u.sum(t)/t.length},u.meansqerr=function(t){return u.sumsqerr(t)/t.length},u.geomean=function(t){return l.pow(u.product(t),1/t.length)},u.median=function(t){var e=t.length,t=t.slice().sort(h);return 1&e?t[e/2|0]:(t[e/2-1]+t[e/2])/2},u.cumsum=function(t){return u.cumreduce(t,function(t,e){return t+e})},u.cumprod=function(t){return u.cumreduce(t,function(t,e){return t*e})},u.diff=function(t){for(var e=[],n=t.length,r=1;r<n;r++)e.push(t[r]-t[r-1]);return e},u.rank=function(t){for(var e=[],n={},r=0;r<t.length;r++)n[a=t[r]]?n[a]++:(n[a]=1,e.push(a));var i=e.sort(h),o={},s=1;for(r=0;r<i.length;r++){var a,u=n[a=i[r]];o[a]=(s+(s+u-1))/2,s+=u}return t.map(function(t){return o[t]})},u.mode=function(t){for(var e=t.length,n=t.slice().sort(h),r=1,i=0,o=0,s=[],a=0;a<e;a++)n[a]===n[a+1]?r++:(i<r?(s=[n[a]],i=r,o=0):r===i&&(s.push(n[a]),o++),r=1);return 0===o?s[0]:s},u.range=function(t){return u.max(t)-u.min(t)},u.variance=function(t,e){return u.sumsqerr(t)/(t.length-(e?1:0))},u.pooledvariance=function(t){return t.reduce(function(t,e){return t+u.sumsqerr(e)},0)/(t.reduce(function(t,e){return t+e.length},0)-t.length)},u.deviation=function(t){for(var e=u.mean(t),n=t.length,r=new Array(n),i=0;i<n;i++)r[i]=t[i]-e;return r},u.stdev=function(t,e){return l.sqrt(u.variance(t,e))},u.pooledstdev=function(t){return l.sqrt(u.pooledvariance(t))},u.meandev=function(t){for(var e=u.mean(t),n=[],r=t.length-1;0<=r;r--)n.push(l.abs(t[r]-e));return u.mean(n)},u.meddev=function(t){for(var e=u.median(t),n=[],r=t.length-1;0<=r;r--)n.push(l.abs(t[r]-e));return u.median(n)},u.coeffvar=function(t){return u.stdev(t)/u.mean(t)},u.quartiles=function(t){var e=t.length,t=t.slice().sort(h);return[t[l.round(e/4)-1],t[l.round(e/2)-1],t[l.round(3*e/4)-1]]},u.quantiles=function(t,e,n,r){var i,o,s,a=t.slice().sort(h),u=[e.length],c=t.length;for(void 0===n&&(n=3/8),void 0===r&&(r=3/8),i=0;i<e.length;i++)o=e[i],o=l.floor(f(s=c*o+(n+o*(1-n-r)),1,c-1)),s=f(s-o,0,1),u[i]=(1-s)*a[o-1]+s*a[o];return u},u.percentile=function(t,e,n){t=t.slice().sort(h),e=e*(t.length+(n?1:-1))+(n?0:1),n=parseInt(e);return n+1<t.length?t[n-1]+(e-n)*(t[n]-t[n-1]):t[n-1]},u.percentileOfScore=function(t,e,n){for(var r,i=0,o=t.length,s="strict"===n?!0:!1,a=0;a<o;a++)r=t[a],(s&&r<e||!s&&r<=e)&&i++;return i/o},u.histogram=function(t,e){e=e||4;for(var n=u.min(t),r=(u.max(t)-n)/e,i=t.length,o=[],s=0;s<e;s++)o[s]=0;for(s=0;s<i;s++)o[l.min(l.floor((t[s]-n)/r),e-1)]+=1;return o},u.covariance=function(t,e){for(var n=u.mean(t),r=u.mean(e),i=t.length,o=new Array(i),s=0;s<i;s++)o[s]=(t[s]-n)*(e[s]-r);return u.sum(o)/(i-1)},u.corrcoeff=function(t,e){return u.covariance(t,e)/u.stdev(t,1)/u.stdev(e,1)},u.spearmancoeff=function(t,e){return t=u.rank(t),e=u.rank(e),u.corrcoeff(t,e)},u.stanMoment=function(t,e){for(var n=u.mean(t),r=u.stdev(t),i=t.length,o=0,s=0;s<i;s++)o+=l.pow((t[s]-n)/r,e);return o/t.length},u.skewness=function(t){return u.stanMoment(t,3)},u.kurtosis=function(t){return u.stanMoment(t,4)-3};var p=u.prototype;!function(t){for(var e=0;e<t.length;e++)!function(o){p[o]=function(t,e){var n=[],r=0,i=this;if(c(t)&&(e=t,t=!1),e)return setTimeout(function(){e.call(i,p[o].call(i,t))}),this;if(1<this.length){for(i=!0===t?this:this.transpose();r<i.length;r++)n[r]=u[o](i[r]);return n}return u[o](this[0],t)}}(t[e])}("cumsum cumprod".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(o){p[o]=function(t,e){var n=[],r=0,i=this;if(c(t)&&(e=t,t=!1),e)return setTimeout(function(){e.call(i,p[o].call(i,t))}),this;if(1<this.length){for("sumrow"!==o&&(i=!0===t?this:this.transpose());r<i.length;r++)n[r]=u[o](i[r]);return!0===t?u[o](u.utils.toVector(n)):n}return u[o](this[0],t)}}(t[e])}("sum sumsqrd sumsqerr sumrow product min max unique mean meansqerr geomean median diff rank mode range variance deviation stdev meandev meddev coeffvar quartiles histogram skewness kurtosis".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(a){p[a]=function(){var t=[],e=0,n=this,r=Array.prototype.slice.call(arguments);if(c(r[r.length-1])){var i=r[r.length-1],o=r.slice(0,r.length-1);return setTimeout(function(){i.call(n,p[a].apply(n,o))}),this}i=void 0;var s=function(t){return u[a].apply(n,[t].concat(r))};if(1<this.length){for(n=n.transpose();e<n.length;e++)t[e]=s(n[e]);return t}return s(this[0])}}(t[e])}("quantiles percentileOfScore".split(" "))}(f,Math),p=f,d=Math,p.gammaln=function(t){var e,n,r=0,i=[76.18009172947146,-86.50532032941678,24.01409824083091,-1.231739572450155,.001208650973866179,-5395239384953e-18],o=1.000000000190015,t=(n=e=t)+5.5;for(t-=(e+.5)*d.log(t);r<6;r++)o+=i[r]/++n;return d.log(2.5066282746310007*o/e)-t},p.loggam=function(t){var e,n,r,i,o,s=[.08333333333333333,-.002777777777777778,.0007936507936507937,-.0005952380952380952,.0008417508417508418,-.001917526917526918,.00641025641025641,-.02955065359477124,.1796443723688307,-1.3924322169059],a=t,u=0;if(1==t||2==t)return 0;for(e=1/((a=t<=7?t+(u=d.floor(7-t)):a)*a),n=2*d.PI,i=s[9],o=8;0<=o;o--)i*=e,i+=s[o];if(r=i/a+.5*d.log(n)+(a-.5)*d.log(a)-a,t<=7)for(o=1;o<=u;o++)r-=d.log(a-1),--a;return r},p.gammafn=function(t){var e,n,r,i=[-1.716185138865495,24.76565080557592,-379.80425647094563,629.3311553128184,866.9662027904133,-31451.272968848367,-36144.413418691176,66456.14382024054],o=[-30.8402300119739,315.35062697960416,-1015.1563674902192,-3107.771671572311,22538.11842098015,4755.846277527881,-134659.9598649693,-115132.2596755535],s=!1,a=0,u=0,c=0,l=t;if(171.6243769536076<t)return 1/0;if(l<=0){if(!(r=l%1+36e-17))return 1/0;s=(1&l?-1:1)*d.PI/d.sin(d.PI*r),l=1-l}for(n=(t=l)<1?l++:(l-=a=(0|l)-1)-1,e=0;e<8;++e)c=(c+i[e])*n,u=u*n+o[e];if(r=c/u+1,t<l)r/=t;else if(l<t)for(e=0;e<a;++e)r*=l,l++;return r=s?s/r:r},p.gammap=function(t,e){return p.lowRegGamma(t,e)*p.gammafn(t)},p.lowRegGamma=function(t,e){var n,r=p.gammaln(t),i=t,o=1/t,s=o,a=e+1-t,u=1/1e-30,c=1/a,l=c,h=1,f=-~(8.5*d.log(1<=t?t:1/t)+.4*t+17);if(e<0||t<=0)return NaN;if(e<t+1){for(;h<=f;h++)o+=s*=e/++i;return o*d.exp(-e+t*d.log(e)-r)}for(;h<=f;h++)l*=(c=1/(c=(n=-h*(h-t))*c+(a+=2)))*(u=a+n/u);return 1-l*d.exp(-e+t*d.log(e)-r)},p.factorialln=function(t){return t<0?NaN:p.gammaln(t+1)},p.factorial=function(t){return t<0?NaN:p.gammafn(t+1)},p.combination=function(t,e){return 170<t||170<e?d.exp(p.combinationln(t,e)):p.factorial(t)/p.factorial(e)/p.factorial(t-e)},p.combinationln=function(t,e){return p.factorialln(t)-p.factorialln(e)-p.factorialln(t-e)},p.permutation=function(t,e){return p.factorial(t)/p.factorial(t-e)},p.betafn=function(t,e){if(!(t<=0||e<=0))return 170<t+e?d.exp(p.betaln(t,e)):p.gammafn(t)*p.gammafn(e)/p.gammafn(t+e)},p.betaln=function(t,e){return p.gammaln(t)+p.gammaln(e)-p.gammaln(t+e)},p.betacf=function(t,e,n){for(var r,i,o=1e-30,s=1,a=e+n,u=e+1,c=e-1,l=1,h=1-a*t/u,f=h=1/(h=d.abs(h)<o?o:h);s<=100&&(f*=(h=1/(h=d.abs(h=1+(i=s*(n-s)*t/((c+(r=2*s))*(e+r)))*h)<o?o:h))*(l=d.abs(l=1+i/l)<o?o:l),f*=i=(h=1/(h=d.abs(h=1+(i=-(e+s)*(a+s)*t/((e+r)*(u+r)))*h)<o?o:h))*(l=d.abs(l=1+i/l)<o?o:l),!(d.abs(i-1)<3e-7));s++);return f},p.gammapinv=function(t,e){var n,r,i,o,s,a=0,u=e-1,c=p.gammaln(e);if(1<=t)return d.max(100,e+100*d.sqrt(e));if(t<=0)return 0;for(n=1<e?(o=d.log(u),s=d.exp(u*(o-1)-c),n=(2.30753+.27061*(r=d.sqrt(-2*d.log(t<.5?t:1-t))))/(1+r*(.99229+.04481*r))-r,d.max(.001,e*d.pow(1-1/(9*e)-(n=t<.5?-n:n)/(3*d.sqrt(e)),3))):t<(r=1-e*(.253+.12*e))?d.pow(t/r,1/e):1-d.log(1-(t-r)/(1-r));a<12;a++){if(n<=0)return 0;if((n-=r=(i=(p.lowRegGamma(e,n)-t)/(r=1<e?s*d.exp(-(n-u)+u*(d.log(n)-o)):d.exp(-n+u*d.log(n)-c)))/(1-.5*d.min(1,i*((e-1)/n-1))))<=0&&(n=.5*(n+r)),d.abs(r)<1e-8*n)break}return n},p.erf=function(t){var e,n,r,i=[-1.3026537197817094,.6419697923564902,.019476473204185836,-.00956151478680863,-.000946595344482036,.000366839497852761,42523324806907e-18,-20278578112534e-18,-1624290004647e-18,130365583558e-17,1.5626441722e-8,-8.5238095915e-8,6.529054439e-9,5.059343495e-9,-9.91364156e-10,-2.27365122e-10,96467911e-18,2394038e-18,-6886027e-18,894487e-18,313092e-18,-112708e-18,381e-18,7106e-18,-1523e-18,-94e-18,121e-18,-28e-18],o=i.length-1,s=!1,a=0,u=0;for(t<0&&(t=-t,s=!0),n=4*(e=2/(2+t))-2;0<o;o--)a=n*(r=a)-u+i[o],u=r;return t=e*d.exp(-t*t+.5*(i[0]+n*a)-u),s?t-1:1-t},p.erfc=function(t){return 1-p.erf(t)},p.erfcinv=function(t){var e,n,r,i,o=0;if(2<=t)return-100;if(t<=0)return 100;for(e=-.70711*((2.30753+.27061*(r=d.sqrt(-2*d.log((i=t<1?t:2-t)/2))))/(1+r*(.99229+.04481*r))-r);o<2;o++)e+=(n=p.erfc(e)-i)/(1.1283791670955126*d.exp(-e*e)-e*n);return t<1?e:-e},p.ibetainv=function(t,e,n){var r,i,o,s,a,u,c,l=e-1,h=n-1,f=0;if(t<=0)return 0;if(1<=t)return 1;for(o=1<=e&&1<=n?(o=(2.30753+.27061*(r=d.sqrt(-2*d.log(t<.5?t:1-t))))/(1+r*(.99229+.04481*r))-r,u=(o=t<.5?-o:o)*d.sqrt((s=(o*o-3)/6)+(a=2/(1/(2*e-1)+1/(2*n-1))))/a-(1/(2*n-1)-1/(2*e-1))*(s+5/6-2/(3*a)),e/(e+n*d.exp(2*u))):(s=d.log(e/(e+n)),a=d.log(n/(e+n)),t<(r=d.exp(e*s)/e)/(u=r+(i=d.exp(n*a)/n))?d.pow(e*u*t,1/e):1-d.pow(n*u*(1-t),1/n)),c=-p.gammaln(e)-p.gammaln(n)+p.gammaln(e+n);f<10;f++){if(0===o||1===o)return o;if(1<=(o=(o-=r=(i=(p.ibeta(o,e,n)-t)/(r=d.exp(l*d.log(o)+h*d.log(1-o)+c)))/(1-.5*d.min(1,i*(l/o-h/(1-o)))))<=0?.5*(o+r):o)&&(o=.5*(o+r+1)),d.abs(r)<1e-8*o&&0<f)break}return o},p.ibeta=function(t,e,n){var r=0===t||1===t?0:d.exp(p.gammaln(e+n)-p.gammaln(e)-p.gammaln(n)+e*d.log(t)+n*d.log(1-t));return!(t<0||1<t)&&(t<(e+1)/(e+n+2)?r*p.betacf(t,e,n)/e:1-r*p.betacf(1-t,n,e)/n)},p.randn=function(t,e){var n,r,i,o;if(e=e||t,t)return p.create(t,e,function(){return p.randn()});for(;n=p._random_fn(),r=1.7156*(p._random_fn()-.5),.27597<(o=(o=n-.449871)*o+(i=d.abs(r)+.386595)*(.196*i-.25472*o))&&(.27846<o||r*r>-4*d.log(n)*n*n););return r/n},p.randg=function(t,e,n){var r,i,o,s,a,u=t;if(n=n||e,t=t||1,e)return(n=p.zeros(e,n)).alter(function(){return p.randg(t)}),n;t<1&&(t+=1),i=1/d.sqrt(9*(r=t-1/3));do{for(;(s=1+i*(a=p.randn()))<=0;);}while(s*=s*s,(o=p._random_fn())>1-.331*d.pow(a,4)&&d.log(o)>.5*a*a+r*(1-s+d.log(s)));if(t==u)return r*s;for(;0===(o=p._random_fn()););return d.pow(o,1/u)*r*s},function(t){for(var e=0;e<t.length;e++)!function(e){p.fn[e]=function(){return p(p.map(this,function(t){return p[e](t)}))}}(t[e])}("gammaln gammafn factorial factorialln".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(t){p.fn[t]=function(){return p(p[t].apply(null,arguments))}}(t[e])}("randn".split(" ")),_=f,x=Math,function(t){for(var e=0;e<t.length;e++)!function(o){_[o]=function(t,e,n){return this instanceof arguments.callee?(this._a=t,this._b=e,this._c=n,this):new arguments.callee(t,e,n)},_.fn[o]=function(t,e,n){n=_[o](t,e,n);return n.data=this,n},_[o].prototype.sample=function(t){var e=this._a,n=this._b,r=this._c;return t?_.alter(t,function(){return _[o].sample(e,n,r)}):_[o].sample(e,n,r)},function(t){for(var e=0;e<t.length;e++)!function(i){_[o].prototype[i]=function(t){var e=this._a,n=this._b,r=this._c;return"number"!=typeof(t=!t&&0!==t?this.data:t)?_.fn.map.call(t,function(t){return _[o][i](t,e,n,r)}):_[o][i](t,e,n,r)}}(t[e])}("pdf cdf inv".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(t){_[o].prototype[t]=function(){return _[o][t](this._a,this._b,this._c)}}(t[e])}("mean median mode variance".split(" "))}(t[e])}("beta centralF cauchy chisquare exponential gamma invgamma kumaraswamy laplace lognormal noncentralt normal pareto studentt weibull uniform binomial negbin hypgeom poisson triangular tukey arcsine".split(" ")),_.extend(_.beta,{pdf:function(t,e,n){return 1<t||t<0?0:1==e&&1==n?1:e<512&&n<512?x.pow(t,e-1)*x.pow(1-t,n-1)/_.betafn(e,n):x.exp((e-1)*x.log(t)+(n-1)*x.log(1-t)-_.betaln(e,n))},cdf:function(t,e,n){return 1<t||t<0?+(1<t):_.ibeta(t,e,n)},inv:function(t,e,n){return _.ibetainv(t,e,n)},mean:function(t,e){return t/(t+e)},median:function(t,e){return _.ibetainv(.5,t,e)},mode:function(t,e){return(t-1)/(t+e-2)},sample:function(t,e){t=_.randg(t);return t/(t+_.randg(e))},variance:function(t,e){return t*e/(x.pow(t+e,2)*(t+e+1))}}),_.extend(_.centralF,{pdf:function(t,e,n){return t<0?0:e<=2?0===t&&e<2?1/0:0===t&&2===e?1:1/_.betafn(e/2,n/2)*x.pow(e/n,e/2)*x.pow(t,e/2-1)*x.pow(1+e/n*t,-(e+n)/2):e*(n/(n+t*e))/2*_.binomial.pdf((e-2)/2,(e+n-2)/2,e*t/(n+t*e))},cdf:function(t,e,n){return t<0?0:_.ibeta(e*t/(e*t+n),e/2,n/2)},inv:function(t,e,n){return n/(e*(1/_.ibetainv(t,e/2,n/2)-1))},mean:function(t,e){return 2<e?e/(e-2):void 0},mode:function(t,e){return 2<t?e*(t-2)/(t*(e+2)):void 0},sample:function(t,e){return 2*_.randg(t/2)/t/(2*_.randg(e/2)/e)},variance:function(t,e){if(!(e<=4))return 2*e*e*(t+e-2)/(t*(e-2)*(e-2)*(e-4))}}),_.extend(_.cauchy,{pdf:function(t,e,n){return n<0?0:n/(x.pow(t-e,2)+x.pow(n,2))/x.PI},cdf:function(t,e,n){return x.atan((t-e)/n)/x.PI+.5},inv:function(t,e,n){return e+n*x.tan(x.PI*(t-.5))},median:function(t){return t},mode:function(t){return t},sample:function(t,e){return _.randn()*x.sqrt(1/(2*_.randg(.5)))*e+t}}),_.extend(_.chisquare,{pdf:function(t,e){return t<0?0:0===t&&2===e?.5:x.exp((e/2-1)*x.log(t)-t/2-e/2*x.log(2)-_.gammaln(e/2))},cdf:function(t,e){return t<0?0:_.lowRegGamma(e/2,t/2)},inv:function(t,e){return 2*_.gammapinv(t,.5*e)},mean:function(t){return t},median:function(t){return t*x.pow(1-2/(9*t),3)},mode:function(t){return 0<t-2?t-2:0},sample:function(t){return 2*_.randg(t/2)},variance:function(t){return 2*t}}),_.extend(_.exponential,{pdf:function(t,e){return t<0?0:e*x.exp(-e*t)},cdf:function(t,e){return t<0?0:1-x.exp(-e*t)},inv:function(t,e){return-x.log(1-t)/e},mean:function(t){return 1/t},median:function(t){return 1/t*x.log(2)},mode:function(){return 0},sample:function(t){return-1/t*x.log(_._random_fn())},variance:function(t){return x.pow(t,-2)}}),_.extend(_.gamma,{pdf:function(t,e,n){return t<0?0:0===t&&1===e?1/n:x.exp((e-1)*x.log(t)-t/n-_.gammaln(e)-e*x.log(n))},cdf:function(t,e,n){return t<0?0:_.lowRegGamma(e,t/n)},inv:function(t,e,n){return _.gammapinv(t,e)*n},mean:function(t,e){return t*e},mode:function(t,e){if(1<t)return(t-1)*e},sample:function(t,e){return _.randg(t)*e},variance:function(t,e){return t*e*e}}),_.extend(_.invgamma,{pdf:function(t,e,n){return t<=0?0:x.exp(-(e+1)*x.log(t)-n/t-_.gammaln(e)+e*x.log(n))},cdf:function(t,e,n){return t<=0?0:1-_.lowRegGamma(e,n/t)},inv:function(t,e,n){return n/_.gammapinv(1-t,e)},mean:function(t,e){return 1<t?e/(t-1):void 0},mode:function(t,e){return e/(t+1)},sample:function(t,e){return e/_.randg(t)},variance:function(t,e){if(!(t<=2))return e*e/((t-1)*(t-1)*(t-2))}}),_.extend(_.kumaraswamy,{pdf:function(t,e,n){return 0===t&&1===e?n:1===t&&1===n?e:x.exp(x.log(e)+x.log(n)+(e-1)*x.log(t)+(n-1)*x.log(1-x.pow(t,e)))},cdf:function(t,e,n){return t<0?0:1<t?1:1-x.pow(1-x.pow(t,e),n)},inv:function(t,e,n){return x.pow(1-x.pow(1-t,1/n),1/e)},mean:function(t,e){return e*_.gammafn(1+1/t)*_.gammafn(e)/_.gammafn(1+1/t+e)},median:function(t,e){return x.pow(1-x.pow(2,-1/e),1/t)},mode:function(t,e){if(1<=t&&1<=e&&1!==t&&1!==e)return x.pow((t-1)/(t*e-1),1/t)},variance:function(){throw new Error("variance not yet implemented")}}),_.extend(_.lognormal,{pdf:function(t,e,n){return t<=0?0:x.exp(-x.log(t)-.5*x.log(2*x.PI)-x.log(n)-x.pow(x.log(t)-e,2)/(2*n*n))},cdf:function(t,e,n){return t<0?0:.5+.5*_.erf((x.log(t)-e)/x.sqrt(2*n*n))},inv:function(t,e,n){return x.exp(-1.4142135623730951*n*_.erfcinv(2*t)+e)},mean:function(t,e){return x.exp(t+e*e/2)},median:function(t){return x.exp(t)},mode:function(t,e){return x.exp(t-e*e)},sample:function(t,e){return x.exp(_.randn()*e+t)},variance:function(t,e){return(x.exp(e*e)-1)*x.exp(2*t+e*e)}}),_.extend(_.noncentralt,{pdf:function(t,e,n){return x.abs(n)<1e-14?_.studentt.pdf(t,e):x.abs(t)<1e-14?x.exp(_.gammaln((e+1)/2)-n*n/2-.5*x.log(x.PI*e)-_.gammaln(e/2)):e/t*(_.noncentralt.cdf(t*x.sqrt(1+2/e),e+2,n)-_.noncentralt.cdf(t,e,n))},cdf:function(t,e,n){if(x.abs(n)<1e-14)return _.studentt.cdf(t,e);var r=!1;t<0&&(r=!0,n=-n);for(var i=_.normal.cdf(-n,0,1),o=1e-14+1,s=o,a=t*t/(t*t+e),u=0,c=x.exp(-n*n/2),l=x.exp(-n*n/2-.5*x.log(2)-_.gammaln(1.5))*n;u<200||1e-14<s||1e-14<o;)s=o,0<u&&(c*=n*n/(2*u),l*=n*n/(2*(u+.5))),i+=.5*(o=c*_.beta.cdf(a,u+.5,e/2)+l*_.beta.cdf(a,u+1,e/2)),u++;return r?1-i:i}}),_.extend(_.normal,{pdf:function(t,e,n){return x.exp(-.5*x.log(2*x.PI)-x.log(n)-x.pow(t-e,2)/(2*n*n))},cdf:function(t,e,n){return.5*(1+_.erf((t-e)/x.sqrt(2*n*n)))},inv:function(t,e,n){return-1.4142135623730951*n*_.erfcinv(2*t)+e},mean:function(t){return t},median:function(t){return t},mode:function(t){return t},sample:function(t,e){return _.randn()*e+t},variance:function(t,e){return e*e}}),_.extend(_.pareto,{pdf:function(t,e,n){return t<e?0:n*x.pow(e,n)/x.pow(t,n+1)},cdf:function(t,e,n){return t<e?0:1-x.pow(e/t,n)},inv:function(t,e,n){return e/x.pow(1-t,1/n)},mean:function(t,e){if(!(e<=1))return e*x.pow(t,e)/(e-1)},median:function(t,e){return t*(e*x.SQRT2)},mode:function(t){return t},variance:function(t,e){if(!(e<=2))return t*t*e/(x.pow(e-1,2)*(e-2))}}),_.extend(_.studentt,{pdf:function(t,e){return 1/(x.sqrt(e=1e100<e?1e100:e)*_.betafn(.5,e/2))*x.pow(1+t*t/e,-(e+1)/2)},cdf:function(t,e){var n=e/2;return _.ibeta((t+x.sqrt(t*t+e))/(2*x.sqrt(t*t+e)),n,n)},inv:function(t,e){var n=_.ibetainv(2*x.min(t,1-t),.5*e,.5),n=x.sqrt(e*(1-n)/n);return.5<t?n:-n},mean:function(t){return 1<t?0:void 0},median:function(){return 0},mode:function(){return 0},sample:function(t){return _.randn()*x.sqrt(t/(2*_.randg(t/2)))},variance:function(t){return 2<t?t/(t-2):1<t?1/0:void 0}}),_.extend(_.weibull,{pdf:function(t,e,n){return t<0||e<0||n<0?0:n/e*x.pow(t/e,n-1)*x.exp(-x.pow(t/e,n))},cdf:function(t,e,n){return t<0?0:1-x.exp(-x.pow(t/e,n))},inv:function(t,e,n){return e*x.pow(-x.log(1-t),1/n)},mean:function(t,e){return t*_.gammafn(1+1/e)},median:function(t,e){return t*x.pow(x.log(2),1/e)},mode:function(t,e){return e<=1?0:t*x.pow((e-1)/e,1/e)},sample:function(t,e){return t*x.pow(-x.log(_._random_fn()),1/e)},variance:function(t,e){return t*t*_.gammafn(1+2/e)-x.pow(_.weibull.mean(t,e),2)}}),_.extend(_.uniform,{pdf:function(t,e,n){return t<e||n<t?0:1/(n-e)},cdf:function(t,e,n){return t<e?0:t<n?(t-e)/(n-e):1},inv:function(t,e,n){return e+t*(n-e)},mean:function(t,e){return.5*(t+e)},median:function(t,e){return _.mean(t,e)},mode:function(){throw new Error("mode is not yet implemented")},sample:function(t,e){return t/2+e/2+(e/2-t/2)*(2*_._random_fn()-1)},variance:function(t,e){return x.pow(e-t,2)/12}}),_.extend(_.binomial,{pdf:function(t,e,n){return 0===n||1===n?e*n===t?1:0:_.combination(e,t)*x.pow(n,t)*x.pow(1-n,e-t)},cdf:function(t,e,n){if(t<0)return 0;if(e<=t)return 1;if(n<0||1<n||e<=0)return NaN;var r=n,i=(t=x.floor(t))+1,n=e-t,e=i+n,t=x.exp(_.gammaln(e)-_.gammaln(n)-_.gammaln(i)+i*x.log(r)+n*x.log(1-r)),i=r<(i+1)/(e+2)?t*s(r,i,n,1e-10):1-t*s(1-r,n,i,1e-10);return x.round(1e10*(1-i))/1e10}}),_.extend(_.negbin,{pdf:function(t,e,n){return t===t>>>0&&(t<0?0:_.combination(t+e-1,e-1)*x.pow(1-n,t)*x.pow(n,e))},cdf:function(t,e,n){var r=0,i=0;if(t<0)return 0;for(;i<=t;i++)r+=_.negbin.pdf(i,e,n);return r}}),_.extend(_.hypgeom,{pdf:function(t,e,n,r){if(t!=t|0)return!1;if(t<0||t<n-(e-r))return 0;if(r<t||n<t)return 0;if(e<2*n)return e<2*r?_.hypgeom.pdf(e-n-r+t,e,e-n,e-r):_.hypgeom.pdf(r-t,e,e-n,r);if(e<2*r)return _.hypgeom.pdf(n-t,e,n,e-r);if(n<r)return _.hypgeom.pdf(t,e,r,n);for(var i=1,o=0,s=0;s<t;s++){for(;1<i&&o<r;)i*=1-n/(e-o),o++;i*=(r-s)*(n-s)/((s+1)*(e-n-r+s+1))}for(;o<r;o++)i*=1-n/(e-o);return x.min(1,x.max(0,i))},cdf:function(t,e,n,r){if(t<0||t<n-(e-r))return 0;if(r<=t||n<=t)return 1;if(e<2*n)return e<2*r?_.hypgeom.cdf(e-n-r+t,e,e-n,e-r):1-_.hypgeom.cdf(r-t-1,e,e-n,r);if(e<2*r)return 1-_.hypgeom.cdf(n-t-1,e,n,e-r);if(n<r)return _.hypgeom.cdf(t,e,r,n);for(var i=1,o=1,s=0,a=0;a<t;a++){for(;1<i&&s<r;){var u=1-n/(e-s);o*=u,i*=u,s++}i+=o*=(r-a)*(n-a)/((a+1)*(e-n-r+a+1))}for(;s<r;s++)i*=1-n/(e-s);return x.min(1,x.max(0,i))}}),_.extend(_.poisson,{pdf:function(t,e){return e<0||t%1!=0||t<0?0:x.pow(e,t)*x.exp(-e)/_.factorial(t)},cdf:function(t,e){var n=[],r=0;if(t<0)return 0;for(;r<=t;r++)n.push(_.poisson.pdf(r,e));return _.sum(n)},mean:function(t){return t},variance:function(t){return t},sampleSmall:function(t){for(var e=1,n=0,r=x.exp(-t);n++,r<(e*=_._random_fn()););return n-1},sampleLarge:function(t){for(var e,n,r,i=t,t=x.sqrt(i),o=x.log(i),s=.931+2.53*t,a=.02483*s-.059,u=1.1239+1.1328/(s-3.4),c=.9277-3.6224/(s-2);;){if(e=x.random()-.5,n=x.random(),r=.5-x.abs(e),e=x.floor((2*a/r+s)*e+i+.43),.07<=r&&n<=c)return e;if(!(e<0||r<.013&&r<n)&&x.log(n)+x.log(u)-x.log(a/(r*r)+s)<=e*o-i-_.loggam(e+1))return e}},sample:function(t){return t<10?this.sampleSmall(t):this.sampleLarge(t)}}),_.extend(_.triangular,{pdf:function(t,e,n,r){return n<=e||r<e||n<r?NaN:t<e||n<t?0:t<r?2*(t-e)/((n-e)*(r-e)):t===r?2/(n-e):2*(n-t)/((n-e)*(n-r))},cdf:function(t,e,n,r){return n<=e||r<e||n<r?NaN:t<=e?0:n<=t?1:t<=r?x.pow(t-e,2)/((n-e)*(r-e)):1-x.pow(n-t,2)/((n-e)*(n-r))},inv:function(t,e,n,r){return n<=e||r<e||n<r?NaN:t<=(r-e)/(n-e)?e+(n-e)*x.sqrt(t*((r-e)/(n-e))):e+(n-e)*(1-x.sqrt((1-t)*(1-(r-e)/(n-e))))},mean:function(t,e,n){return(t+e+n)/3},median:function(t,e,n){return n<=(t+e)/2?e-x.sqrt((e-t)*(e-n))/x.sqrt(2):(t+e)/2<n?t+x.sqrt((e-t)*(n-t))/x.sqrt(2):void 0},mode:function(t,e,n){return n},sample:function(t,e,n){var r=_._random_fn();return r<(n-t)/(e-t)?t+x.sqrt(r*(e-t)*(n-t)):e-x.sqrt((1-r)*(e-t)*(e-n))},variance:function(t,e,n){return(t*t+e*e+n*n-t*e-t*n-e*n)/18}}),_.extend(_.arcsine,{pdf:function(t,e,n){return n<=e?NaN:t<=e||n<=t?0:2/x.PI*x.pow(x.pow(n-e,2)-x.pow(2*t-e-n,2),-.5)},cdf:function(t,e,n){return t<e?0:t<n?2/x.PI*x.asin(x.sqrt((t-e)/(n-e))):1},inv:function(t,e,n){return e+(.5-.5*x.cos(x.PI*t))*(n-e)},mean:function(t,e){return e<=t?NaN:(t+e)/2},median:function(t,e){return e<=t?NaN:(t+e)/2},mode:function(){throw new Error("mode is not yet implemented")},sample:function(t,e){return(t+e)/2+(e-t)/2*x.sin(2*x.PI*_.uniform.sample(0,1))},variance:function(t,e){return e<=t?NaN:x.pow(e-t,2)/8}}),_.extend(_.laplace,{pdf:function(t,e,n){return n<=0?0:x.exp(-x.abs(t-e)/n)/(2*n)},cdf:function(t,e,n){return n<=0?0:t<e?.5*x.exp((t-e)/n):1-.5*x.exp(-(t-e)/n)},mean:function(t){return t},median:function(t){return t},mode:function(t){return t},variance:function(t,e){return 2*e*e},sample:function(t,e){var n=_._random_fn()-.5;return t-e*((e=n)/x.abs(e))*x.log(1-2*x.abs(n))}}),_.extend(_.tukey,{cdf:function(t,e,n){var r=e,i=[.9894009349916499,.9445750230732326,.8656312023878318,.755404408355003,.6178762444026438,.45801677765722737,.2816035507792589,.09501250983763744],o=[.027152459411754096,.062253523938647894,.09515851168249279,.12462897125553388,.14959598881657674,.16915651939500254,.18260341504492358,.1894506104550685];if(t<=0)return 0;if(n<2||r<2)return NaN;if(!Number.isFinite(t))return 1;if(25e3<n)return v(t,1,r);var e=.5*n,s=e*x.log(n)-n*x.log(2)-_.gammaln(e),a=e-1,u=.25*n,c=n<=100?1:n<=800?.5:n<=5e3?.25:.125;s+=x.log(c);for(var l=0,h=1;h<=50;h++){for(var f=0,p=(2*h-1)*c,d=1;d<=16;d++){var g,m=8<d?s+a*x.log(p+i[g=d-8-1]*c)-(i[g]*c+p)*u:s+a*x.log(p-i[g=d-1]*c)+(i[g]*c-p)*u;-30<=m&&(f+=v(8<d?t*x.sqrt(.5*(i[g]*c+p)):t*x.sqrt(.5*(-i[g]*c+p)),1,r)*o[g]*x.exp(m))}if(1<=h*c&&f<=1e-14)break;l+=f}if(1e-14<f)throw new Error("tukey.cdf failed to converge");return l=1<l?1:l},inv:function(t,e,n){if(n<2||e<2)return NaN;if(t<0||1<t)return NaN;if(0===t)return 0;if(1===t)return 1/0;var r,i,o,s,a=(i=e,o=n,s=.5-.5*(r=t),s=(r=x.sqrt(x.log(1/(s*s))))+((((-453642210148e-16*r-.204231210125)*r-.342242088547)*r-1)*r+.322232421088)/((((.0038560700634*r+.10353775285)*r+.531103462366)*r+.588581570495)*r+.099348462606),o<120&&(s+=(s*s*s+s)/o/4),r=.8832-.2368*s,o<120&&(r+=-1.214/o+1.208*s/o),s*(r*x.log(i-1)+1.4142)),u=_.tukey.cdf(a,e,n)-t;f=0<u?x.max(0,a-1):a+1;for(var c,l=_.tukey.cdf(f,e,n)-t,h=1;h<50;h++){c=f-l*(f-a)/(l-u),u=l,a=f,c<0&&(c=0,l=-t);var f,l=_.tukey.cdf(c,e,n)-t;if(x.abs((f=c)-a)<1e-4)return c}throw new Error("tukey.inv failed to converge")}}),m=f,g=Math,i=Array.prototype.push,e=m.utils.isArray,m.extend({add:function(t,r){return y(r)?(y(r[0])||(r=[r]),m.map(t,function(t,e,n){return t+r[e][n]})):m.map(t,function(t){return t+r})},subtract:function(t,r){return y(r)?(y(r[0])||(r=[r]),m.map(t,function(t,e,n){return t-r[e][n]||0})):m.map(t,function(t){return t-r})},divide:function(t,e){return y(e)?(y(e[0])||(e=[e]),m.multiply(t,m.inv(e))):m.map(t,function(t){return t/e})},multiply:function(t,e){var n,r,i,o,s,a,u,c;if(void 0===t.length&&void 0===e.length)return t*e;if(s=t.length,a=t[0].length,u=m.zeros(s,i=y(e)?e[0].length:a),c=0,y(e)){for(;c<i;c++)for(n=0;n<s;n++){for(r=o=0;r<a;r++)o+=t[n][r]*e[r][c];u[n][c]=o}return 1===s&&1===c?u[0][0]:u}return m.map(t,function(t){return t*e})},outer:function(t,e){return m.multiply(t.map(function(t){return[t]}),[e])},dot:function(t,e){y(t[0])||(t=[t]),y(e[0])||(e=[e]);for(var n,r,i=1===t[0].length&&1!==t.length?m.transpose(t):t,o=1===e[0].length&&1!==e.length?m.transpose(e):e,s=[],a=0,u=i.length,c=i[0].length;a<u;a++){for(s[a]=[],r=n=0;r<c;r++)n+=i[a][r]*o[a][r];s[a]=n}return 1===s.length?s[0]:s},pow:function(t,e){return m.map(t,function(t){return g.pow(t,e)})},exp:function(t){return m.map(t,function(t){return g.exp(t)})},log:function(t){return m.map(t,function(t){return g.log(t)})},abs:function(t){return m.map(t,function(t){return g.abs(t)})},norm:function(t,e){var n=0,r=0;for(isNaN(e)&&(e=2),y(t[0])&&(t=t[0]);r<t.length;r++)n+=g.pow(g.abs(t[r]),e);return g.pow(n,1/e)},angle:function(t,e){return g.acos(m.dot(t,e)/(m.norm(t)*m.norm(e)))},aug:function(t,e){for(var n=[],r=0;r<t.length;r++)n.push(t[r].slice());for(r=0;r<n.length;r++)i.apply(n[r],e[r]);return n},inv:function(t){for(var e,n=t.length,r=t[0].length,i=m.identity(n,r),o=m.gauss_jordan(t,i),s=[],a=0;a<n;a++)for(s[a]=[],e=r;e<o[0].length;e++)s[a][e-r]=o[a][e];return s},det:function(t){var e,n=t.length,r=2*n,i=new Array(r),o=n-1,s=r-1,a=o-n+1,u=s,c=0,l=0;if(2===n)return t[0][0]*t[1][1]-t[0][1]*t[1][0];for(;c<r;c++)i[c]=1;for(c=0;c<n;c++){for(e=0;e<n;e++)i[a<0?a+n:a]*=t[c][e],i[u<n?u+n:u]*=t[c][e],a++,u--;a=--o-n+1,u=--s}for(c=0;c<n;c++)l+=i[c];for(;c<r;c++)l-=i[c];return l},gauss_elimination:function(t,e){for(var n,r,i,o,s=0,a=0,u=t.length,c=t[0].length,l=0,h=[],f=(t=m.aug(t,e))[0].length,s=0;s<u;s++){for(r=t[s][s],o=(a=s)+1;o<c;o++)r<g.abs(t[o][s])&&(r=t[o][s],a=o);if(a!=s)for(o=0;o<f;o++)i=t[s][o],t[s][o]=t[a][o],t[a][o]=i;for(a=s+1;a<u;a++)for(n=t[a][s]/t[s][s],o=s;o<f;o++)t[a][o]=t[a][o]-n*t[s][o]}for(s=u-1;0<=s;s--){for(l=0,a=s+1;a<=u-1;a++)l+=h[a]*t[s][a];h[s]=(t[s][f-1]-l)/t[s][s]}return h},gauss_jordan:function(t,e){for(var n,r=m.aug(t,e),i=r.length,o=r[0].length,s=0,a=0;a<i;a++){for(var u=a,c=a+1;c<i;c++)g.abs(r[c][a])>g.abs(r[u][a])&&(u=c);var l=r[a];for(r[a]=r[u],r[u]=l,c=a+1;c<i;c++)for(s=r[c][a]/r[a][a],n=a;n<o;n++)r[c][n]-=r[a][n]*s}for(a=i-1;0<=a;a--){for(s=r[a][a],c=0;c<a;c++)for(n=o-1;a-1<n;n--)r[c][n]-=r[a][n]*r[c][a]/s;for(r[a][a]/=s,n=i;n<o;n++)r[a][n]/=s}return r},triaUpSolve:function(n,t){var r,i=n[0].length,o=m.zeros(1,i)[0],e=!1;return null!=t[0].length&&(t=t.map(function(t){return t[0]}),e=!0),m.arange(i-1,-1,-1).forEach(function(e){r=m.arange(e+1,i).map(function(t){return o[t]*n[e][t]}),o[e]=(t[e]-m.sum(r))/n[e][e]}),e?o.map(function(t){return[t]}):o},triaLowSolve:function(n,t){var r,e=n[0].length,i=m.zeros(1,e)[0],o=!1;return null!=t[0].length&&(t=t.map(function(t){return t[0]}),o=!0),m.arange(e).forEach(function(e){r=m.arange(e).map(function(t){return n[e][t]*i[t]}),i[e]=(t[e]-m.sum(r))/n[e][e]}),o?i.map(function(t){return[t]}):i},lu:function(r){var t,e=r.length,i=m.identity(e),o=m.zeros(r.length,r[0].length);return m.arange(e).forEach(function(t){o[0][t]=r[0][t]}),m.arange(1,e).forEach(function(n){m.arange(n).forEach(function(e){t=m.arange(e).map(function(t){return i[n][t]*o[t][e]}),i[n][e]=(r[n][e]-m.sum(t))/o[e][e]}),m.arange(n,e).forEach(function(e){t=m.arange(n).map(function(t){return i[n][t]*o[t][e]}),o[n][e]=r[t.length][e]-m.sum(t)})}),[i,o]},cholesky:function(t){var r,e=t.length,i=m.zeros(t.length,t[0].length);return m.arange(e).forEach(function(n){r=m.arange(n).map(function(t){return g.pow(i[n][t],2)}),i[n][n]=g.sqrt(t[n][n]-m.sum(r)),m.arange(n+1,e).forEach(function(e){r=m.arange(n).map(function(t){return i[n][t]*i[e][t]}),i[e][n]=(t[n][e]-m.sum(r))/i[n][n]})}),i},gauss_jacobi:function(t,e,n,r){for(var i,o,s,a,u=0,c=0,l=t.length,h=[],f=[],p=[];u<l;u++)for(h[u]=[],f[u]=[],p[u]=[],c=0;c<l;c++)c<u?(h[u][c]=t[u][c],f[u][c]=p[u][c]=0):u<c?(f[u][c]=t[u][c],h[u][c]=p[u][c]=0):(p[u][c]=t[u][c],h[u][c]=f[u][c]=0);for(s=m.multiply(m.multiply(m.inv(p),m.add(h,f)),-1),o=m.multiply(m.inv(p),e),a=m.add(m.multiply(s,i=n),o),u=2;g.abs(m.norm(m.subtract(a,i)))>r;)a=m.add(m.multiply(s,i=a),o),u++;return a},gauss_seidel:function(t,e,n,r){for(var i,o,s,a,u,c=0,l=t.length,h=[],f=[],p=[];c<l;c++)for(h[c]=[],f[c]=[],p[c]=[],i=0;i<l;i++)i<c?(h[c][i]=t[c][i],f[c][i]=p[c][i]=0):c<i?(f[c][i]=t[c][i],h[c][i]=p[c][i]=0):(p[c][i]=t[c][i],h[c][i]=f[c][i]=0);for(a=m.multiply(m.multiply(m.inv(m.add(p,h)),f),-1),s=m.multiply(m.inv(m.add(p,h)),e),u=m.add(m.multiply(a,o=n),s),c=2;g.abs(m.norm(m.subtract(u,o)))>r;)u=m.add(m.multiply(a,o=u),s),c+=1;return u},SOR:function(t,e,n,r,i){for(var o,s,a,u,c,l=0,h=t.length,f=[],p=[],d=[];l<h;l++)for(f[l]=[],p[l]=[],d[l]=[],o=0;o<h;o++)o<l?(f[l][o]=t[l][o],p[l][o]=d[l][o]=0):l<o?(p[l][o]=t[l][o],f[l][o]=d[l][o]=0):(d[l][o]=t[l][o],f[l][o]=p[l][o]=0);for(u=m.multiply(m.inv(m.add(d,m.multiply(f,i))),m.subtract(m.multiply(d,1-i),m.multiply(p,i))),a=m.multiply(m.multiply(m.inv(m.add(d,m.multiply(f,i))),e),i),c=m.add(m.multiply(u,s=n),a),l=2;g.abs(m.norm(m.subtract(c,s)))>r;)c=m.add(m.multiply(u,s=c),a),l++;return c},householder:function(t){for(var e,n,r,i,o,s=t.length,a=t[0].length,u=0,c=[];u<s-1;u++){for(n=0,o=u+1;o<a;o++)n+=t[o][u]*t[o][u];for(n=(0<t[u+1][u]?-1:1)*g.sqrt(n),r=g.sqrt((n*n-t[u+1][u]*n)/2),(c=m.zeros(s,1))[u+1][0]=(t[u+1][u]-n)/(2*r),i=u+2;i<s;i++)c[i][0]=t[i][u]/(2*r);e=m.subtract(m.identity(s,a),m.multiply(m.multiply(c,m.transpose(c)),2)),t=m.multiply(e,m.multiply(t,e))}return t},QR:(a=m.sum,u=m.arange,function(e){var t,n,r,i=e.length,o=e[0].length,s=m.zeros(o,o);for(e=m.copy(e),n=0;n<o;n++){for(s[n][n]=g.sqrt(a(u(i).map(function(t){return e[t][n]*e[t][n]}))),t=0;t<i;t++)e[t][n]=e[t][n]/s[n][n];for(r=n+1;r<o;r++)for(s[n][r]=a(u(i).map(function(t){return e[t][n]*e[t][r]})),t=0;t<i;t++)e[t][r]=e[t][r]-e[t][n]*s[n][r]}return[e,s]}),lstsq:function(t,e){var n=!1;void 0===e[0].length&&(e=e.map(function(t){return[t]}),n=!0);var o,s,r=(i=m.QR(t))[0],i=i[1],t=t[0].length,r=m.slice(r,{col:{end:t}}),t=m.slice(i,{row:{end:t}}),t=(o=t,t=(o=m.copy(o)).length,s=m.identity(t),m.arange(t-1,-1,-1).forEach(function(i){m.sliceAssign(s,{row:i},m.divide(m.slice(s,{row:i}),o[i][i])),m.sliceAssign(o,{row:i},m.divide(m.slice(o,{row:i}),o[i][i])),m.arange(i).forEach(function(t){var e=m.multiply(o[t][i],-1),n=m.slice(o,{row:t}),r=m.multiply(m.slice(o,{row:i}),e);m.sliceAssign(o,{row:t},m.add(n,r));r=m.slice(s,{row:t}),e=m.multiply(m.slice(s,{row:i}),e);m.sliceAssign(s,{row:t},m.add(r,e))})}),s);return void 0===(r=m.transpose(r))[0].length&&(r=[r]),void 0===(e=m.multiply(m.multiply(t,r),e)).length&&(e=[[e]]),n?e.map(function(t){return t[0]}):e},jacobi:function(t){for(var e,n,r,i,o,s,a,u=1,c=t.length,l=m.identity(c,c),h=[];1===u;){for(o=t[0][1],i=1,e=r=0;e<c;e++)for(n=0;n<c;n++)e!=n&&o<g.abs(t[e][n])&&(o=g.abs(t[e][n]),r=e,i=n);for(s=t[r][r]===t[i][i]?0<t[r][i]?g.PI/4:-g.PI/4:g.atan(2*t[r][i]/(t[r][r]-t[i][i]))/2,(a=m.identity(c,c))[r][r]=g.cos(s),a[r][i]=-g.sin(s),a[i][r]=g.sin(s),a[i][i]=g.cos(s),l=m.multiply(l,a),t=m.multiply(m.multiply(m.inv(a),t),a),u=0,e=1;e<c;e++)for(n=1;n<c;n++)e!=n&&.001<g.abs(t[e][n])&&(u=1)}for(e=0;e<c;e++)h.push(t[e][e]);return[l,h]},rungekutta:function(t,e,n,r,i,o){var s,a,u;if(2===o)for(;r<=n;)i=i+((s=e*t(r,i))+(a=e*t(r+e,i+s)))/2,r+=e;if(4===o)for(;r<=n;)i=i+((s=e*t(r,i))+2*(a=e*t(r+e/2,i+s/2))+2*(u=e*t(r+e/2,i+a/2))+e*t(r+e,i+u))/6,r+=e;return i},romberg:function(t,e,n,r){for(var i,o,s,a,u,c=0,l=(n-e)/2,h=[],f=[],p=[];c<r/2;){for(u=t(e),s=e,a=0;s<=n;s+=l,a++)h[a]=s;for(i=h.length,s=1;s<i-1;s++)u+=(s%2!=0?4:2)*t(h[s]);u=l/3*(u+t(n)),p[c]=u,l/=2,c++}for(o=p.length,i=1;1!==o;){for(s=0;s<o-1;s++)f[s]=(g.pow(4,i)*p[s+1]-p[s])/(g.pow(4,i)-1);o=f.length,p=f,f=[],i++}return p},richardson:function(t,e,n,r){function i(t,e){for(var n,r=0,i=t.length;r<i;r++)t[r]===e&&(n=r);return n}for(var o,s,a,u,c,l=g.abs(n-t[i(t,n)+1]),h=0,f=[],p=[];l<=r;)o=i(t,n+r),s=i(t,n),f[h]=(e[o]-2*e[s]+e[2*s-o])/(r*r),r/=2,h++;for(u=f.length,a=1;1!=u;){for(c=0;c<u-1;c++)p[c]=(g.pow(4,a)*f[c+1]-f[c])/(g.pow(4,a)-1);u=p.length,f=p,p=[],a++}return f},simpson:function(t,e,n,r){for(var i,o=(n-e)/r,s=t(e),a=[],u=e,c=0,l=1;u<=n;u+=o,c++)a[c]=u;for(i=a.length;l<i-1;l++)s+=(l%2!=0?4:2)*t(a[l]);return o/3*(s+t(n))},hermite:function(t,e,n,r){for(var i,o=t.length,s=0,a=0,u=[],c=[],l=[],h=[];a<o;a++){for(u[a]=1,i=0;i<o;i++)a!=i&&(u[a]*=(r-t[i])/(t[a]-t[i]));for(i=c[a]=0;i<o;i++)a!=i&&(c[a]+=1/(t[a]-t[i]));l[a]=(1-2*(r-t[a])*c[a])*(u[a]*u[a]),h[a]=(r-t[a])*(u[a]*u[a]),s+=l[a]*e[a]+h[a]*n[a]}return s},lagrange:function(t,e,n){for(var r,i,o=0,s=0,a=t.length;s<a;s++){for(i=e[s],r=0;r<a;r++)s!=r&&(i*=(n-t[r])/(t[s]-t[r]));o+=i}return o},cubic_spline:function(t,e,n){for(var r,i,o=t.length,s=0,a=[],u=[],c=[],l=[],h=[],f=[];s<o-1;s++)l[s]=t[s+1]-t[s];for(c[0]=0,s=1;s<o-1;s++)c[s]=3/l[s]*(e[s+1]-e[s])-3/l[s-1]*(e[s]-e[s-1]);for(s=1;s<o-1;s++)a[s]=[],u[s]=[],a[s][s-1]=l[s-1],a[s][s]=2*(l[s-1]+l[s]),a[s][s+1]=l[s],u[s][0]=c[s];for(i=m.multiply(m.inv(a),u),r=0;r<o-1;r++)h[r]=(e[r+1]-e[r])/l[r]-l[r]*(i[r+1][0]+2*i[r][0])/3,f[r]=(i[r+1][0]-i[r][0])/(3*l[r]);for(r=0;r<o&&!(t[r]>n);r++);return e[--r]+(n-t[r])*h[r]+m.sq(n-t[r])*i[r]+(n-t[r])*m.sq(n-t[r])*f[r]},gauss_quadrature:function(){throw new Error("gauss_quadrature not yet implemented")},PCA:function(t){for(var e,n,r,i,o,s,a=t.length,u=t[0].length,c=0,l=[],h=[],f=[],p=[],d=[],g=[],c=0;c<a;c++)l[c]=m.sum(t[c])/u;for(c=0;c<u;c++)for(p[c]=[],e=0;e<a;e++)p[c][e]=t[e][c]-l[e];for(p=m.transpose(p),c=0;c<a;c++)for(d[c]=[],e=0;e<a;e++)d[c][e]=m.dot([p[c]],[p[e]])/(u-1);for(s=(r=m.jacobi(d))[0],h=r[1],g=m.transpose(s),c=0;c<h.length;c++)for(e=c;e<h.length;e++)h[c]<h[e]&&(n=h[c],h[c]=h[e],h[e]=n,i=g[c],g[c]=g[e],g[e]=i);for(o=m.transpose(p),c=0;c<a;c++)for(f[c]=[],e=0;e<o.length;e++)f[c][e]=m.dot([g[c]],[o[e]]);return[t,h,g,f]}}),function(t){for(var e=0;e<t.length;e++)!function(r){m.fn[r]=function(t,e){var n=this;return e?(setTimeout(function(){e.call(n,m.fn[r].call(n,t))},15),this):"number"==typeof m[r](this,t)?m[r](this,t):m(m[r](this,t))}}(t[e])}("add divide multiply subtract dot pow exp log abs norm angle".split(" ")),c=f,l=Math,h=[].slice,o=c.utils.isNumber,n=c.utils.isArray,c.extend({zscore:function(){var t=h.call(arguments);return o(t[1])?(t[0]-t[1])/t[2]:(t[0]-c.mean(t[1]))/c.stdev(t[1],t[2])},ztest:function(){var t,e=h.call(arguments);return n(e[1])?(t=c.zscore(e[0],e[1],e[3]),1===e[2]?c.normal.cdf(-l.abs(t),0,1):2*c.normal.cdf(-l.abs(t),0,1)):2<e.length?(t=c.zscore(e[0],e[1],e[2]),1===e[3]?c.normal.cdf(-l.abs(t),0,1):2*c.normal.cdf(-l.abs(t),0,1)):(t=e[0],1===e[1]?c.normal.cdf(-l.abs(t),0,1):2*c.normal.cdf(-l.abs(t),0,1))}}),c.extend(c.fn,{zscore:function(t,e){return(t-this.mean())/this.stdev(e)},ztest:function(t,e,n){n=l.abs(this.zscore(t,n));return 1===e?c.normal.cdf(-n,0,1):2*c.normal.cdf(-n,0,1)}}),c.extend({tscore:function(){var t=h.call(arguments);return 4===t.length?(t[0]-t[1])/(t[2]/l.sqrt(t[3])):(t[0]-c.mean(t[1]))/(c.stdev(t[1],!0)/l.sqrt(t[1].length))},ttest:function(){var t,e=h.call(arguments);return 5===e.length?(t=l.abs(c.tscore(e[0],e[1],e[2],e[3])),1===e[4]?c.studentt.cdf(-t,e[3]-1):2*c.studentt.cdf(-t,e[3]-1)):o(e[1])?(t=l.abs(e[0]),1==e[2]?c.studentt.cdf(-t,e[1]-1):2*c.studentt.cdf(-t,e[1]-1)):(t=l.abs(c.tscore(e[0],e[1])),1==e[2]?c.studentt.cdf(-t,e[1].length-1):2*c.studentt.cdf(-t,e[1].length-1))}}),c.extend(c.fn,{tscore:function(t){return(t-this.mean())/(this.stdev(!0)/l.sqrt(this.cols()))},ttest:function(t,e){return 1===e?1-c.studentt.cdf(l.abs(this.tscore(t)),this.cols()-1):2*c.studentt.cdf(-l.abs(this.tscore(t)),this.cols()-1)}}),c.extend({anovafscore:function(){var t,e,n,r,i,o,s,a,u=h.call(arguments);if(1===u.length){for(i=new Array(u[0].length),s=0;s<u[0].length;s++)i[s]=u[0][s];u=i}for(e=new Array,s=0;s<u.length;s++)e=e.concat(u[s]);for(n=c.mean(e),s=t=0;s<u.length;s++)t+=u[s].length*l.pow(c.mean(u[s])-n,2);for(t/=u.length-1,s=o=0;s<u.length;s++)for(r=c.mean(u[s]),a=0;a<u[s].length;a++)o+=l.pow(u[s][a]-r,2);return t/(o/=e.length-u.length)},anovaftest:function(){var t=h.call(arguments);if(o(t[0]))return 1-c.centralF.cdf(t[0],t[1],t[2]);for(var e=c.anovafscore(t),n=t.length-1,r=0,i=0;i<t.length;i++)r+=t[i].length;return 1-c.centralF.cdf(e,n,r-n-1)},ftest:function(t,e,n){return 1-c.centralF.cdf(t,e,n)}}),c.extend(c.fn,{anovafscore:function(){return c.anovafscore(this.toArray())},anovaftes:function(){for(var t=0,e=0;e<this.length;e++)t+=this[e].length;return c.ftest(this.anovafscore(),this.length-1,t-this.length)}}),c.extend({qscore:function(){var t,e,n,r,i=h.call(arguments),i=o(i[0])?(t=i[0],e=i[1],n=i[2],r=i[3],i[4]):(t=c.mean(i[0]),e=c.mean(i[1]),n=i[0].length,r=i[1].length,i[2]);return l.abs(t-e)/(i*l.sqrt((1/n+1/r)/2))},qtest:function(){var t,e=h.call(arguments),n=(e=3===e.length?(t=e[0],e.slice(1)):7===e.length?(t=c.qscore(e[0],e[1],e[2],e[3],e[4]),e.slice(5)):(t=c.qscore(e[0],e[1],e[2]),e.slice(3)))[0],e=e[1];return 1-c.tukey.cdf(t,e,n-e)},tukeyhsd:function(t){for(var e=c.pooledstdev(t),n=t.map(function(t){return c.mean(t)}),r=t.reduce(function(t,e){return t+e.length},0),i=[],o=0;o<t.length;++o)for(var s=o+1;s<t.length;++s){var a=c.qtest(n[o],n[s],t[o].length,t[s].length,e,r,t.length);i.push([[o,s],a])}return i}}),c.extend({normalci:function(){var t=h.call(arguments),e=new Array(2),n=4===t.length?l.abs(c.normal.inv(t[1]/2,0,1)*t[2]/l.sqrt(t[3])):l.abs(c.normal.inv(t[1]/2,0,1)*c.stdev(t[2])/l.sqrt(t[2].length));return e[0]=t[0]-n,e[1]=t[0]+n,e},tci:function(){var t=h.call(arguments),e=new Array(2),n=4===t.length?l.abs(c.studentt.inv(t[1]/2,t[3]-1)*t[2]/l.sqrt(t[3])):l.abs(c.studentt.inv(t[1]/2,t[2].length-1)*c.stdev(t[2],!0)/l.sqrt(t[2].length));return e[0]=t[0]-n,e[1]=t[0]+n,e},significant:function(t,e){return t<e}}),c.extend(c.fn,{normalci:function(t,e){return c.normalci(t,e,this.toArray())},tci:function(t,e){return c.tci(t,e,this.toArray())}}),c.extend(c.fn,{oneSidedDifferenceOfProportions:function(t,e,n,r){r=b(t,e,n,r);return c.ztest(r,1)},twoSidedDifferenceOfProportions:function(t,e,n,r){r=b(t,e,n,r);return c.ztest(r,2)}}),f.models={ols:function(t,e){var n=w(t,e),r=C(n),t={F_statistic:t=(i=n).R2/i.df_model/((1-i.R2)/i.df_resid),pvalue:1-(e=t,t=i.df_model,i=i.df_resid,f.beta.cdf(e/(i/t+e),t/2,i/2))},i=1-(1-n.R2)*((n.nobs-1)/n.df_resid);return n.t=r,n.f=t,n.adjust_R2=i,n}},f.extend({buildxmatrix:function(){for(var t=new Array(arguments.length),e=0;e<arguments.length;e++)t[e]=[1].concat(arguments[e]);return f(t)},builddxmatrix:function(){for(var t=new Array(arguments[0].length),e=0;e<arguments[0].length;e++)t[e]=[1].concat(arguments[0][e]);return f(t)},buildjxmatrix:function(t){for(var e=new Array(t.length),n=0;n<t.length;n++)e[n]=t[n];return f.builddxmatrix(e)},buildymatrix:function(t){return f(t).transpose()},buildjymatrix:function(t){return t.transpose()},matrixmult:function(t,e){var n,r,i,o,s;if(t.cols()==e.rows()){if(1<e.rows()){for(o=[],n=0;n<t.rows();n++)for(o[n]=[],r=0;r<e.cols();r++){for(i=s=0;i<t.cols();i++)s+=t.toArray()[n][i]*e.toArray()[i][r];o[n][r]=s}return f(o)}for(o=[],n=0;n<t.rows();n++)for(o[n]=[],r=0;r<e.cols();r++){for(i=s=0;i<t.cols();i++)s+=t.toArray()[n][i]*e.toArray()[r];o[n][r]=s}return f(o)}},regress:function(t,e){var n=f.xtranspxinv(t),t=t.transpose(),t=f.matrixmult(f(n),t);return f.matrixmult(t,e)},regresst:function(t,e,n){var r=f.regress(t,e),i={anova:{}},o=f.jMatYBar(t,r);i.yBar=o;var s=e.mean();i.anova.residuals=f.residuals(e,o),i.anova.ssr=f.ssr(o,s),i.anova.msr=i.anova.ssr/(t[0].length-1),i.anova.sse=f.sse(e,o),i.anova.mse=i.anova.sse/(e.length-(t[0].length-1)-1),i.anova.sst=f.sst(e,s),i.anova.mst=i.anova.sst/(e.length-1),i.anova.r2=1-i.anova.sse/i.anova.sst,i.anova.r2<0&&(i.anova.r2=0),i.anova.fratio=i.anova.msr/i.anova.mse,i.anova.pvalue=f.anovaftest(i.anova.fratio,t[0].length-1,e.length-(t[0].length-1)-1),i.anova.rmse=Math.sqrt(i.anova.mse),i.anova.r2adj=1-i.anova.mse/i.anova.mst,i.anova.r2adj<0&&(i.anova.r2adj=0),i.stats=new Array(t[0].length);for(var a,u,c,l=f.xtranspxinv(t),h=0;h<r.length;h++)a=Math.sqrt(i.anova.mse*Math.abs(l[h][h])),u=Math.abs(r[h]/a),c=f.ttest(u,e.length-t[0].length-1,n),i.stats[h]=[r[h],a,u,c];return i.regress=r,i},xtranspx:function(t){return f.matrixmult(t.transpose(),t)},xtranspxinv:function(t){t=f.matrixmult(t.transpose(),t);return f.inv(t)},jMatYBar:function(t,e){e=f.matrixmult(t,e);return new f(e)},residuals:function(t,e){return f.matrixsubtract(t,e)},ssr:function(t,e){for(var n=0,r=0;r<t.length;r++)n+=Math.pow(t[r]-e,2);return n},sse:function(t,e){for(var n=0,r=0;r<t.length;r++)n+=Math.pow(t[r]-e[r],2);return n},sst:function(t,e){for(var n=0,r=0;r<t.length;r++)n+=Math.pow(t[r]-e,2);return n},matrixsubtract:function(t,e){for(var n=new Array(t.length),r=0;r<t.length;r++){n[r]=new Array(t[r].length);for(var i=0;i<t[r].length;i++)n[r][i]=t[r][i]-e[r][i]}return f(n)}}),f.jStat=f});var CryptoApi=function(n){var r={};function i(t){if(r[t])return r[t].exports;var e=r[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,i),e.l=!0,e.exports}return i.m=n,i.c=r,i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)i.d(n,r,function(t){return e[t]}.bind(null,r));return n},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="",i(i.s=29)}([function(t,e,n){"use strict";function r(t,e){return t<<e|t>>>32-e|0}function i(t,e){return t>>>e|t<<32-e|0}function o(t,e,n){return 32===n?e:32<n?o(e,t,n-32):4294967295&(t>>>n|e<<32-n)}function s(t,e,n){return 32===n?t:32<n?s(e,t,n-32):4294967295&(e>>>n|t<<32-n)}n.d(e,"a",function(){return r}),n.d(e,"b",function(){return i}),n.d(e,"d",function(){return s}),n.d(e,"c",function(){return o})},function(t,e,n){"use strict";function r(t){for(var e="",n=0,r=t.length;n<r;n++){var i=t.charCodeAt(n);i<128?e+=String.fromCharCode(i):(i<2048?e+=String.fromCharCode(192|i>>6):(i<55296||57344<=i?e+=String.fromCharCode(224|i>>12):(n++,i=65536+((1023&i)<<10|1023&t.charCodeAt(n)),e+=String.fromCharCode(240|i>>18),e+=String.fromCharCode(128|i>>12&63)),e+=String.fromCharCode(128|i>>6&63)),e+=String.fromCharCode(128|63&i))}return e}n.d(e,"a",function(){return r})},function(t,e,n){"use strict";function r(t){for(var e="",n=0,r=t.length;n<r;n++)e+=(t.charCodeAt(n)<16?"0":"")+t.charCodeAt(n).toString(16);return e}n.d(e,"a",function(){return r})},function(t,e,n){"use strict";function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function i(t){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function o(t,e){return(o=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)})(s,n(4).a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(s.prototype,[{key:"process",value:function(){for(;this.state.message.length>=this.blockSizeInBytes;){this.blockUnits=[];for(var t=0;t<this.blockSizeInBytes;t+=4)this.blockUnits.push(this.state.message.charCodeAt(t)<<24|this.state.message.charCodeAt(t+1)<<16|this.state.message.charCodeAt(t+2)<<8|this.state.message.charCodeAt(t+3));this.state.message=this.state.message.substr(this.blockSizeInBytes),this.processBlock(this.blockUnits)}}},{key:"processBlock",value:function(t){}},{key:"getStateHash",value:function(t){t=t||this.state.hash.length;for(var e="",n=0;n<t;n++)e+=String.fromCharCode(this.state.hash[n]>>24&255)+String.fromCharCode(this.state.hash[n]>>16&255)+String.fromCharCode(this.state.hash[n]>>8&255)+String.fromCharCode(255&this.state.hash[n]);return e}},{key:"addLengthBits",value:function(){this.state.message+="\0\0\0"+String.fromCharCode(this.state.length>>29&255)+String.fromCharCode(this.state.length>>21&255)+String.fromCharCode(this.state.length>>13&255)+String.fromCharCode(this.state.length>>5&255)+String.fromCharCode(this.state.length<<3&255)}}]),n=s;function s(t){var e;return function(t){if(!(t instanceof s))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=i(s).call(this,t))||"object"!==r(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).unitOrder=1,t.blockUnits=[],t}e.a=n},function(t,e,n){"use strict";var r=(function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(i.prototype,[{key:"reset",value:function(){this.state={},this.state.message="",this.state.length=0}},{key:"getState",value:function(){return JSON.parse(JSON.stringify(this.state))}},{key:"setState",value:function(t){this.state=t}},{key:"update",value:function(t){this.state.message+=t,this.state.length+=t.length,this.process()}},{key:"process",value:function(){}},{key:"finalize",value:function(){return""}},{key:"getStateHash",value:function(t){return""}},{key:"addPaddingPKCS7",value:function(t){this.state.message+=new Array(t+1).join(String.fromCharCode(t))}},{key:"addPaddingISO7816",value:function(t){this.state.message+="€"+new Array(t).join("\0")}},{key:"addPaddingZero",value:function(t){this.state.message+=new Array(t+1).join("\0")}}]),i);function i(t){!function(t){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")}(this),this.unitSize=4,this.unitOrder=0,this.blockSize=16,this.blockSizeInBytes=this.blockSize*this.unitSize,this.options=t||{},this.reset()}e.a=r},function(t,e,n){"use strict";function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function i(t){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function o(t,e){return(o=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)})(s,n(4).a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(s.prototype,[{key:"process",value:function(){for(;this.state.message.length>=this.blockSizeInBytes;){this.blockUnits=[];for(var t=0;t<this.blockSizeInBytes;t+=4)this.blockUnits.push(this.state.message.charCodeAt(t)|this.state.message.charCodeAt(t+1)<<8|this.state.message.charCodeAt(t+2)<<16|this.state.message.charCodeAt(t+3)<<24);this.state.message=this.state.message.substr(this.blockSizeInBytes),this.processBlock(this.blockUnits)}}},{key:"processBlock",value:function(t){}},{key:"getStateHash",value:function(t){t=t||this.state.hash.length;for(var e="",n=0;n<t;n++)e+=String.fromCharCode(255&this.state.hash[n])+String.fromCharCode(this.state.hash[n]>>8&255)+String.fromCharCode(this.state.hash[n]>>16&255)+String.fromCharCode(this.state.hash[n]>>24&255);return e}},{key:"addLengthBits",value:function(){this.state.message+=String.fromCharCode(this.state.length<<3&255)+String.fromCharCode(this.state.length>>5&255)+String.fromCharCode(this.state.length>>13&255)+String.fromCharCode(this.state.length>>21&255)+String.fromCharCode(this.state.length>>29&255)+"\0\0\0"}}]),n=s;function s(t){var e;return function(t){if(!(t instanceof s))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=i(s).call(this,t))||"object"!==r(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).blockUnits=[],t}e.a=n},function(t,e,n){"use strict";var r=n(3),E=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var T=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],r=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(u,r.a),r=[{key:"reset",value:function(){switch(o(s(u.prototype),"reset",this).call(this),this.options.length){case 384:this.state.hash=[-876896931,-1056596264,1654270250,914150663,-1856437926,812702999,355462360,-150054599,1731405415,-4191439,-1900787065,1750603025,-619958771,1694076839,1203062813,-1090891868];break;case 512:this.state.hash=[1779033703,-205731576,-1150833019,-2067093701,1013904242,-23791573,-1521486534,1595750129,1359893119,-1377402159,-1694144372,725511199,528734635,-79577749,1541459225,327033209];break;default:for(var t=new u,e=0;e<16;e++)t.state.hash[e]=2779096485^t.state.hash[e];t.update("SHA-512/"+this.options.length);var n=t.finalize();this.state.hash=[];for(var r=0;r<64;r+=4)this.state.hash.push(n.charCodeAt(r)<<24|n.charCodeAt(r+1)<<16|n.charCodeAt(r+2)<<8|n.charCodeAt(r+3))}}},{key:"processBlock",value:function(t){for(var e,n,r,i,o=this.state.hash[0],s=this.state.hash[1],a=this.state.hash[2],u=this.state.hash[3],c=this.state.hash[4],l=this.state.hash[5],h=this.state.hash[6],f=this.state.hash[7],p=this.state.hash[8],d=this.state.hash[9],g=this.state.hash[10],m=this.state.hash[11],v=this.state.hash[12],y=this.state.hash[13],b=this.state.hash[14],w=this.state.hash[15],_=0;_<this.options.rounds;_+=2){_<32?(this.W[_]=t[_],this.W[_+1]=t[_+1]):(e=Object(E.c)(this.W[_-30],this.W[_-29],1)^Object(E.c)(this.W[_-30],this.W[_-29],8)^this.W[_-30]>>>7,n=Object(E.d)(this.W[_-30],this.W[_-29],1)^Object(E.d)(this.W[_-30],this.W[_-29],8)^(this.W[_-29]>>>7|this.W[_-30]<<25),r=Object(E.c)(this.W[_-4],this.W[_-3],19)^Object(E.c)(this.W[_-4],this.W[_-3],61)^this.W[_-4]>>>6,i=Object(E.d)(this.W[_-4],this.W[_-3],19)^Object(E.d)(this.W[_-4],this.W[_-3],61)^(this.W[_-3]>>>6|this.W[_-4]<<26),S=(65535&this.W[_-13])+(65535&this.W[_-31])+(65535&n)+(65535&i)|0,O=(this.W[_-13]>>>16)+(this.W[_-31]>>>16)+(n>>>16)+(i>>>16)+(S>>>16)|0,k=(65535&this.W[_-14])+(65535&this.W[_-32])+(65535&e)+(65535&r)+(O>>>16)|0,C=(this.W[_-14]>>>16)+(this.W[_-32]>>>16)+(e>>>16)+(r>>>16)+(k>>>16)|0,this.W[_]=4294967295&(C<<16|65535&k),this.W[_+1]=4294967295&(O<<16|65535&S)),e=Object(E.c)(o,s,28)^Object(E.c)(o,s,34)^Object(E.c)(o,s,39),n=Object(E.d)(o,s,28)^Object(E.d)(o,s,34)^Object(E.d)(o,s,39);var x=d&m^~d&y,C=o&a^o&c^a&c,k=s&u^s&l^u&l,S=(S=(S=b+(r=Object(E.c)(p,d,14)^Object(E.c)(p,d,18)^Object(E.c)(p,d,41))+((O=w+(i=Object(E.d)(p,d,14)^Object(E.d)(p,d,18)^Object(E.d)(p,d,41))|0)>>>0<w>>>0?1:0)|0)+(p&g^~p&v)+((O=O+x|0)>>>0<x>>>0?1:0)|0)+T[_]+((O=O+T[_+1]|0)>>>0<T[_+1]>>>0?1:0)|0,O=O+this.W[_+1]|0,k=n+k|0,b=v,w=y,v=g,y=m,g=p,m=d,p=h+(S=S+this.W[_]+(O>>>0<this.W[_+1]>>>0?1:0)|0)+((d=f+O|0)>>>0<f>>>0?1:0)|0,h=c,f=l,c=a,l=u,a=o,u=s,o=S+(e+C+(k>>>0<n>>>0?1:0)|0)+((s=O+k|0)>>>0<O>>>0?1:0)|0}this.state.hash[1]=this.state.hash[1]+s|0,this.state.hash[0]=this.state.hash[0]+o+(this.state.hash[1]>>>0<s>>>0?1:0)|0,this.state.hash[3]=this.state.hash[3]+u|0,this.state.hash[2]=this.state.hash[2]+a+(this.state.hash[3]>>>0<u>>>0?1:0)|0,this.state.hash[5]=this.state.hash[5]+l|0,this.state.hash[4]=this.state.hash[4]+c+(this.state.hash[5]>>>0<l>>>0?1:0)|0,this.state.hash[7]=this.state.hash[7]+f|0,this.state.hash[6]=this.state.hash[6]+h+(this.state.hash[7]>>>0<f>>>0?1:0)|0,this.state.hash[9]=this.state.hash[9]+d|0,this.state.hash[8]=this.state.hash[8]+p+(this.state.hash[9]>>>0<d>>>0?1:0)|0,this.state.hash[11]=this.state.hash[11]+m|0,this.state.hash[10]=this.state.hash[10]+g+(this.state.hash[11]>>>0<m>>>0?1:0)|0,this.state.hash[13]=this.state.hash[13]+y|0,this.state.hash[12]=this.state.hash[12]+v+(this.state.hash[13]>>>0<y>>>0?1:0)|0,this.state.hash[15]=this.state.hash[15]+w|0,this.state.hash[14]=this.state.hash[14]+b+(this.state.hash[15]>>>0<w>>>0?1:0)|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<112?112-this.state.message.length|0:240-this.state.message.length|0),this.state.message+="\0\0\0\0\0\0\0\0",this.addLengthBits(),this.process(),this.getStateHash(this.options.length/32|0)}}],function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(u.prototype,r),u);function u(t){var e;return function(t){if(!(t instanceof u))throw new TypeError("Cannot call a class as a function")}(this),(t=t||{}).length=t.length||512,t.rounds=t.rounds||160,e=this,(t=!(t=s(u).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).blockSize=32,t.blockSizeInBytes=t.blockSize*t.unitSize,t.W=new Array(160),t}e.a=r},function(t,e,n){"use strict";var r=n(3),f=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],r=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(u,r.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(u.prototype,[{key:"reset",value:function(){224===(o(s(u.prototype),"reset",this).call(this),this.options.length)?this.state.hash=[-1056596264,914150663,812702999,-150054599,-4191439,1750603025,1694076839,-1090891868]:this.state.hash=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225]}},{key:"processBlock",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0|this.state.hash[5],a=0|this.state.hash[6],u=0|this.state.hash[7],c=0;c<this.options.rounds;c++){this.W[c]=c<16?0|t[c]:this.W[c-16]+(Object(f.b)(this.W[c-15],7)^Object(f.b)(this.W[c-15],18)^this.W[c-15]>>>3)+this.W[c-7]+(Object(f.b)(this.W[c-2],17)^Object(f.b)(this.W[c-2],19)^this.W[c-2]>>>10)|0;var l=u+(Object(f.b)(o,6)^Object(f.b)(o,11)^Object(f.b)(o,25))+(o&s^~o&a)+p[c]+this.W[c]|0,h=(Object(f.b)(e,2)^Object(f.b)(e,13)^Object(f.b)(e,22))+(e&n^e&r^n&r)|0,u=a,a=s,s=o,o=i+l|0,i=r,r=n,n=e,e=l+h|0}this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0,this.state.hash[5]=this.state.hash[5]+s|0,this.state.hash[6]=this.state.hash[6]+a|0,this.state.hash[7]=this.state.hash[7]+u|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash(this.options.length/32|0)}}]),u);function u(t){var e;return function(t){if(!(t instanceof u))throw new TypeError("Cannot call a class as a function")}(this),(t=t||{}).length=t.length||256,t.rounds=t.rounds||64,e=this,(t=!(t=s(u).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).W=new Array(64),t}e.a=r},function(t,e,n){"use strict";var r=n(5),d=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function s(t,e,n){return(s="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=a(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function a(t){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function u(t,e){return(u=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var g=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],m=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],v=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],y=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],n=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&u(t,e)}(b,r.a),n=[{key:"F",value:function(t,e,n){return t^e^n}},{key:"G",value:function(t,e,n){return t&e|~t&n}},{key:"H",value:function(t,e,n){return(t|~e)^n}},{key:"I",value:function(t,e,n){return t&n|e&~n}},{key:"J",value:function(t,e,n){return t^(e|~n)}},{key:"T",value:function(t,e,n,r){return t<16?this.F(e,n,r):t<32?this.G(e,n,r)+1518500249|0:t<48?this.H(e,n,r)+1859775393|0:t<64?this.I(e,n,r)+2400959708|0:this.J(e,n,r)+2840853838|0}},{key:"T64",value:function(t,e,n,r){return t<16?this.I(e,n,r)+1352829926|0:t<32?this.H(e,n,r)+1548603684|0:t<48?this.G(e,n,r)+1836072691|0:this.F(e,n,r)}},{key:"T80",value:function(t,e,n,r){return t<16?this.J(e,n,r)+1352829926|0:t<32?this.I(e,n,r)+1548603684|0:t<48?this.H(e,n,r)+1836072691|0:t<64?this.G(e,n,r)+2053994217|0:this.F(e,n,r)}}],o((r=b).prototype,[{key:"reset",value:function(){switch(s(a(b.prototype),"reset",this).call(this),this.options.length){case 128:this.state.hash=[1732584193,4023233417,2562383102,271733878],this.processBlock=this.processBlock128;break;case 256:this.state.hash=[1732584193,4023233417,2562383102,271733878,1985229328,4275878552,2309737967,19088743],this.processBlock=this.processBlock256;break;case 320:this.state.hash=[1732584193,4023233417,2562383102,271733878,3285377520,1985229328,4275878552,2309737967,19088743,1009589775],this.processBlock=this.processBlock320;break;default:this.state.hash=[1732584193,4023233417,2562383102,271733878,3285377520],this.processBlock=this.processBlock160}}},{key:"processBlock128",value:function(t){for(var e=a=0|this.state.hash[0],n=l=0|this.state.hash[1],r=c=0|this.state.hash[2],i=u=0|this.state.hash[3],o=0;o<64;o++){var s=(s=a+t[g[o]]|0)+b.T(o,l,c,u)|0,a=u,u=c,c=l,l=s=Object(d.a)(s,v[o]);s=(s=e+t[m[o]]|0)+b.T64(o,n,r,i)|0,e=i,i=r,r=n,n=s=Object(d.a)(s,y[o])}var h=this.state.hash[1]+c+i|0;this.state.hash[1]=this.state.hash[2]+u+e|0,this.state.hash[2]=this.state.hash[3]+a+n|0,this.state.hash[3]=this.state.hash[0]+l+r|0,this.state.hash[0]=h}},{key:"processBlock160",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=e,a=n,u=r,c=i,l=o,h=0;h<80;h++){var f=(f=e+t[g[h]]|0)+b.T(h,n,r,i)|0;f=(f=Object(d.a)(f,v[h]))+o|0,e=o,o=i,i=Object(d.a)(r,10),r=n,n=f,f=(f=s+t[m[h]]|0)+b.T80(h,a,u,c)|0,f=(f=Object(d.a)(f,y[h]))+l|0,s=l,l=c,c=Object(d.a)(u,10),u=a,a=f}var p=this.state.hash[1]+r+c|0;this.state.hash[1]=this.state.hash[2]+i+l|0,this.state.hash[2]=this.state.hash[3]+o+s|0,this.state.hash[3]=this.state.hash[4]+e+a|0,this.state.hash[4]=this.state.hash[0]+n+u|0,this.state.hash[0]=p}},{key:"processBlock256",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0|this.state.hash[5],a=0|this.state.hash[6],u=0|this.state.hash[7],c=0;c<64;c+=1){var l=(l=e+t[g[c]]|0)+b.T(c,n,r,i)|0,e=i,i=r,r=n,n=l=Object(d.a)(l,v[c]);switch(l=(l=o+t[m[c]]|0)+b.T64(c,s,a,u)|0,o=u,u=a,a=s,s=l=Object(d.a)(l,y[c]),c){case 15:l=e,e=o,o=l;break;case 31:l=n,n=s,s=l;break;case 47:l=r,r=a,a=l;break;case 63:l=i,i=u,u=l}}this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0,this.state.hash[5]=this.state.hash[5]+s|0,this.state.hash[6]=this.state.hash[6]+a|0,this.state.hash[7]=this.state.hash[7]+u|0}},{key:"processBlock320",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0|this.state.hash[5],a=0|this.state.hash[6],u=0|this.state.hash[7],c=0|this.state.hash[8],l=0|this.state.hash[9],h=0;h<80;h+=1){var f=(f=e+t[g[h]]|0)+b.T(h,n,r,i)|0;switch(f=(f=Object(d.a)(f,v[h]))+o|0,e=o,o=i,i=Object(d.a)(r,10),r=n,n=f,f=(f=s+t[m[h]]|0)+b.T80(h,a,u,c)|0,f=(f=Object(d.a)(f,y[h]))+l|0,s=l,l=c,c=Object(d.a)(u,10),u=a,a=f,h){case 15:f=n,n=a,a=f;break;case 31:f=i,i=c,c=f;break;case 47:f=e,e=s,s=f;break;case 63:f=r,r=u,u=f;break;case 79:f=o,o=l,l=f}}this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0,this.state.hash[5]=this.state.hash[5]+s|0,this.state.hash[6]=this.state.hash[6]+a|0,this.state.hash[7]=this.state.hash[7]+u|0,this.state.hash[8]=this.state.hash[8]+c|0,this.state.hash[9]=this.state.hash[9]+l|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),o(r,n),b);function b(t){return function(t){if(!(t instanceof b))throw new TypeError("Cannot call a class as a function")}(this),(t=t||{}).length=t.length||160,e=this,!(t=a(b).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t;var e}e.a=n},function(t,e,n){"use strict";var r=n(3),c=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var u=[10097,32533,76520,13586,34673,54876,80959,9117,39292,74945,37542,4805,64894,74296,24805,24037,20636,10402,822,91665,8422,68953,19645,9303,23209,2560,15953,34764,35080,33606,99019,2529,9376,70715,38311,31165,88676,74397,4436,27659,12807,99970,80157,36147,64032,36653,98951,16877,12171,76833,66065,74717,34072,76850,36697,36170,65813,39885,11199,29170,31060,10805,45571,82406,35303,42614,86799,7439,23403,9732,85269,77602,2051,65692,68665,74818,73053,85247,18623,88579,63573,32135,5325,47048,90553,57548,28468,28709,83491,25624,73796,45753,3529,64778,35808,34282,60935,20344,35273,88435,98520,17767,14905,68607,22109,40558,60970,93433,50500,73998,11805,5431,39808,27732,50725,68248,29405,24201,52775,67851,83452,99634,6288,98083,13746,70078,18475,40610,68711,77817,88685,40200,86507,58401,36766,67951,90364,76493,29609,11062,99594,67348,87517,64969,91826,8928,93785,61368,23478,34113,65481,17674,17468,50950,58047,76974,73039,57186,40218,16544,80124,35635,17727,8015,45318,22374,21115,78253,14385,53763,74350,99817,77402,77214,43236,210,45521,64237,96286,2655,69916,26803,66252,29148,36936,87203,76621,13990,94400,56418,9893,20505,14225,68514,46427,56788,96297,78822,54382,14598,91499,14523,68479,27686,46162,83554,94750,89923,37089,20048,80336,94598,26940,36858,70297,34135,53140,33340,42050,82341,44104,81949,85157,47954,32979,26575,57600,40881,22222,6413,12550,73742,11100,2040,12860,74697,96644,89439,28707,25815,63606,49329,16505,34484,40219,52563,43651,77082,7207,31790,61196,90446,26457,47774,51924,33729,65394,59593,42582,60527,15474,45266,95270,79953,59367,83848,82396,10118,33211,59466,94557,28573,67897,54387,54622,44431,91190,42592,92927,45973,42481,16213,97344,8721,16868,48767,3071,12059,25701,46670,23523,78317,73208,89837,68935,91416,26252,29663,5522,82562,4493,52494,75246,33824,45862,51025,61962,79335,65337,12472,549,97654,64051,88159,96119,63896,54692,82391,23287,29529,35963,15307,26898,9354,33351,35462,77974,50024,90103,39333,59808,8391,45427,26842,83609,49700,13021,24892,78565,20106,46058,85236,1390,92286,77281,44077,93910,83647,70617,42941,32179,597,87379,25241,5567,7007,86743,17157,85394,11838,69234,61406,20117,45204,15956,6e4,18743,92423,97118,96338,19565,41430,1758,75379,40419,21585,66674,36806,84962,85207,45155,14938,19476,7246,43667,94543,59047,90033,20826,69541,94864,31994,36168,10851,34888,81553,1540,35456,5014,51176,98086,24826,45240,28404,44999,8896,39094,73407,35441,31880,33185,16232,41941,50949,89435,48581,88695,41994,37548,73043,80951,406,96382,70774,20151,23387,25016,25298,94624,61171,79752,49140,71961,28296,69861,2591,74852,20539,387,59579,18633,32537,98145,6571,31010,24674,5455,61427,77938,91936,74029,43902,77557,32270,97790,17119,52527,58021,80814,51748,54178,45611,80993,37143,5335,12969,56127,19255,36040,90324,11664,49883,52079,84827,59381,71539,9973,33440,88461,23356,48324,77928,31249,64710,2295,36870,32307,57546,15020,9994,69074,94138,87637,91976,35584,4401,10518,21615,1848,76938,9188,20097,32825,39527,4220,86304,83389,87374,64278,58044,90045,85497,51981,50654,94938,81997,91870,76150,68476,64659,73189,50207,47677,26269,62290,64464,27124,67018,41361,82760,75768,76490,20971,87749,90429,12272,95375,5871,93823,43178,54016,44056,66281,31003,682,27398,20714,53295,7706,17813,8358,69910,78542,42785,13661,58873,4618,97553,31223,8420,28306,3264,81333,10591,40510,7893,32604,60475,94119,1840,53840,86233,81594,13628,51215,90290,28466,68795,77762,20791,91757,53741,61613,62269,50263,90212,55781,76514,83483,47055,89415,92694,397,58391,12607,17646,48949,72306,94541,37408,77513,3820,86864,29901,68414,82774,51908,13980,72893,55507,19502,37174,69979,20288,55210,29773,74287,75251,65344,67415,21818,59313,93278,81757,5686,73156,7082,85046,31853,38452,51474,66499,68107,23621,94049,91345,42836,9191,8007,45449,99559,68331,62535,24170,69777,12830,74819,78142,43860,72834,33713,48007,93584,72869,51926,64721,58303,29822,93174,93972,85274,86893,11303,22970,28834,34137,73515,90400,71148,43643,84133,89640,44035,52166,73852,70091,61222,60561,62327,18423,56732,16234,17395,96131,10123,91622,85496,57560,81604,18880,65138,56806,87648,85261,34313,65861,45875,21069,85644,47277,38001,2176,81719,11711,71602,92937,74219,64049,65584,49698,37402,96397,1304,77586,56271,10086,47324,62605,40030,37438,97125,40348,87083,31417,21815,39250,75237,62047,15501,29578,21826,41134,47143,34072,64638,85902,49139,6441,3856,54552,73135,42742,95719,9035,85794,74296,8789,88156,64691,19202,7638,77929,3061,18072,96207,44156,23821,99538,4713,66994,60528,83441,7954,19814,59175,20695,5533,52139,61212,6455,83596,35655,6958,92983,5128,9719,77433,53783,92301,50498,10850,62746,99599,10507,13499,6319,53075,71839,6410,19362,39820,98952,43622,63147,64421,80814,43800,9351,31024,73167,59580,6478,75569,78800,88835,54486,23768,6156,4111,8408,38508,7341,23793,48763,90822,97022,17719,4207,95954,49953,30692,70668,94688,16127,56196,80091,82067,63400,5462,69200,65443,95659,18288,27437,49632,24041,8337,65676,96299,90836,27267,50264,13192,72294,7477,44606,17985,48911,97341,30358,91307,6991,19072,24210,36699,53728,28825,35793,28976,66252,68434,94688,84473,13622,62126,98408,12843,82590,9815,93146,48908,15877,54745,24591,35700,4754,83824,52692,54130,55160,6913,45197,42672,78601,11883,9528,63011,98901,14974,40344,10455,16019,14210,33712,91342,37821,88325,80851,43667,70883,12883,97343,65027,61184,4285,1392,17974,15077,90712,26769,21778,30976,38807,36961,31649,42096,63281,2023,8816,47449,19523,59515,65122,59659,86283,68258,69572,13798,16435,91529,67245,52670,35583,16563,79246,86686,76463,34222,26655,90802,60584,47377,7500,37992,45134,26529,26760,83637,41326,44344,53853,41377,36066,94850,58838,73859,49364,73331,96240,43642,24637,38736,74384,89342,52623,7992,12369,18601,3742,83873,83080,12451,38992,22815,7759,51777,97377,27585,51972,37867,16444,24334,36151,99073,27493,70939,85130,32552,54846,54759,60790,18157,57178,65762,11161,78576,45819,52979,65130,4860,3991,10461,93716,16894,66083,24653,84609,58232,88618,19161,38555,95554,32886,59780,8355,60860,29735,47762,71299,23853,17546,73704,92052,46215,55121,29281,59076,7936,27954,58909,32643,52861,95819,6831,911,98936,76355,93779,80863,514,69572,68777,39510,35905,14060,40619,29549,69616,33564,60780,24122,66591,27699,6494,14845,46672,61958,77100,90899,75754,61196,30231,92962,61773,41839,55382,17267,70943,78038,70267,30532,21704,10274,12202,39685,23309,10061,68829,55986,66485,3788,97599,75867,20717,74416,53166,35208,33374,87539,8823,48228,63379,85783,47619,53152,67433,35663,52972,16818,60311,60365,94653,35075,33949,42614,29297,1918,28316,98953,73231,83799,42402,56623,34442,34994,41374,70071,14736,9958,18065,32960,7405,36409,83232,99385,41600,11133,7586,15917,6253,19322,53845,57620,52606,66497,68646,78138,66559,19640,99413,11220,94747,7399,37408,48509,23929,27482,45476,85244,35159,31751,57260,68980,5339,15470,48355,88651,22596,3152,19121,88492,99382,14454,4504,20094,98977,74843,93413,22109,78508,30934,47744,7481,83828,73788,6533,28597,20405,94205,20380,22888,48893,27499,98748,60530,45128,74022,84617,82037,10268,78212,16993,35902,91386,44372,15486,65741,14014,87481,37220,41849,84547,46850,52326,34677,58300,74910,64345,19325,81549,46352,33049,69248,93460,45305,7521,61318,31855,14413,70951,11087,96294,14013,31792,59747,67277,76503,34513,39663,77544,52701,8337,56303,87315,16520,69676,11654,99893,2181,68161,57275,36898,81304,48585,68652,27376,92852,55866,88448,3584,20857,73156,70284,24326,79375,95220,1159,63267,10622,48391,15633,84924,90415,93614,33521,26665,55823,47641,86225,31704,92694,48297,39904,2115,59589,49067,66821,41575,49767,4037,77613,19019,88152,80,20554,91409,96277,48257,50816,97616,38688,32486,45134,63545,59404,72059,43947,51680,43852,59693,25163,1889,70014,15021,41290,67312,71857,15957,68971,11403,65251,7629,37239,33295,5870,1119,92784,26340,18477,65622,36815,43625,18637,37509,82444,99005,4921,73701,14707,93997,64397,11692,5327,82162,20247,81759,45197,25332,83745,22567,4515,25624,95096,67946,48460,85558,15191,18782,16930,33361,83761,60873,43253,84145,60833,25983,1291,41349,20368,7126,14387,6345,80854,9279,43529,6318,38384,74761,41196,37480,51321,92246,80088,77074,88722,56736,66164,49431,66919,31678,72472,8,80890,18002,94813,31900,54155,83436,35352,54131,5466,55306,93128,18464,74457,90561,72848,11834,79982,68416,39528,72484,82474,25593,48545,35247,18619,13674,18611,19241,81616,18711,53342,44276,75122,11724,74627,73707,58319,15997,7586,16120,82641,22820,92904,13141,32392,19763,61199,67940,90767,4235,13574,17200,69902,63742,78464,22501,18627,90872,40188,28193,29593,88627,94972,11598,62095,36787,441,58997,34414,82157,86887,55087,19152,23,12302,80783,32624,68691,63439,75363,44989,16822,36024,867,76378,41605,65961,73488,67049,9070,93399,45547,94458,74284,5041,49807,20288,34060,79495,4146,52162,90286,54158,34243,46978,35482,59362,95938,91704,30552,4737,21031,75051,93029,47665,64382,99782,93478,94015,46874,32444,48277,59820,96163,64654,25843,41145,42820,74108,88222,88570,74015,25704,91035,1755,14750,48968,38603,62880,87873,95160,59221,22304,90314,72877,17334,39283,4149,11748,12102,80580,41867,17710,59621,6554,7850,73950,79552,17944,5600,60478,3343,25852,58905,57216,39618,49856,99326,66067,42792,95043,52680,46780,56487,9971,59481,37006,22186,54244,91030,45547,70818,59849,96169,61459,21647,87417,17198,30945,57589,31732,57260,47670,7654,46376,25366,94746,49580,69170,37403,86995,90307,94304,71803,26825,5511,12459,91314,8345,88975,35841,85771,8105,59987,87112,21476,14713,71181,27767,43584,85301,88977,29490,69714,73035,41207,74699,9310,13025,14338,54066,15243,47724,66733,47431,43905,31048,56699,80217,36292,98525,24335,24432,24896,43277,58874,11466,16082,10875,62004,90391,61105,57411,6368,53856,30743,8670,84741,54127,57326,26629,19087,24472,88779,30540,27886,61732,75454,60311,42824,37301,42678,45990,43242,17374,52003,70707,70214,49739,71484,92003,98086,76668,73209,59202,11973,2902,33250,78626,51594,16453,94614,39014,97066,83012,9832,25571,77628,66692,13986,99837,582,81232,44987,9504,96412,90193,79568,44071,28091,7362,97703,76447,42537,98524,97831,65704,9514,41468,85149,49554,17994,14924,39650,95294,556,70481,6905,94559,37559,49678,53119,70312,5682,66986,34099,74474,20740,41615,70360,64114,58660,90850,64618,80620,51790,11436,38072,50273,93113,41794,86861,24781,89683,55411,85667,77535,99892,41396,80504,90670,8289,40902,5069,95083,6783,28102,57816,25807,24260,71529,78920,72682,7385,90726,57166,98884,8583,6170,97965,88302,98041,21443,41808,68984,83620,89747,98882,60808,54444,74412,81105,1176,28838,36421,16489,18059,51061,80940,44893,10408,36222,80582,71944,92638,40333,67054,16067,19516,90120,46759,71643,13177,55292,21036,82808,77501,97427,49386,54480,23604,23554,21785,41101,91178,10174,29420,90438,6312,88940,15995,69321,47458,64809,98189,81851,29651,84215,60942,307,11897,92674,40405,68032,96717,54244,10701,41393,92329,98932,78284,46347,71209,92061,39448,93136,25722,8564,77936,63574,31384,51924,85561,29671,58137,17820,22751,36518,38101,77756,11657,13897,95889,57067,47648,13885,70669,93406,39641,69457,91339,22502,92613,89719,11947,56203,19324,20504,84054,40455,99396,63680,67667,60631,69181,96845,38525,11600,47468,3577,57649,63266,24700,71594,14004,23153,69249,5747,43321,31370,28977,23896,76479,68562,62342,7589,8899,5985,64281,61826,18555,64937,13173,33365,78851,16499,87064,13075,66847,70495,32350,2985,86716,38746,26313,77463,55387,72681,72461,33230,21529,53424,92581,2262,78438,66276,18396,73538,21032,91050,13058,16218,12470,56500,15292,76139,59526,52113,95362,67011,6651,16136,1016,857,55018,56374,35824,71708,49712,97380,10404,55452,34030,60726,75211,10271,36633,68424,58275,61764,97586,54716,50259,46345,87195,46092,26787,60939,89514,11788,68224,23417,73959,76145,30342,40277,11049,72049,15472,50669,48139,36732,46874,37088,73465,9819,58869,35220,12120,86124,51247,44302,60883,52109,21437,36786,49226,77837,19612,78430,11661,94770,77603,65669,86868,12665,30012,75989,39141,77400,28e3,64238,73258,71794,31340,26256,66453,37016,64756,80457,8747,12836,3469,50678,3274,43423,66677,82556,92901,51878,56441,22998,29718,38447,6453,25311,7565,53771,3551,90070,9483,94050,45938,18135,36908,43321,11073,51803,98884,66209,6830,53656,14663,56346,71430,4909,19818,5707,27369,86882,53473,7541,53633,70863,3748,12822,19360,49088,59066,75974,63335,20483,43514,37481,58278,26967,49325,43951,91647,93783,64169,49022,98588,9495,49829,59068,38831,4838,83605,92419,39542,7772,71568,75673,35185,89759,44901,74291,24895,88530,70774,35439,46758,70472,70207,92675,91623,61275,35720,26556,95596,20094,73750,85788,34264,1703,46833,65248,14141,53410,38649,6343,57256,61342,72709,75318,90379,37562,27416,75670,92176,72535,93119,56077,6886,18244,92344,31374,82071,7429,81007,47749,40744,56974,23336,88821,53841,10536,21445,82793,24831,93241,14199,76268,70883,68002,3829,17443,72513,76400,52225,92348,62308,98481,29744,33165,33141,61020,71479,45027,76160,57411,13780,13632,52308,77762,88874,33697,83210,51466,9088,50395,26743,5306,21706,70001,99439,80767,68749,95148,94897,78636,96750,9024,94538,91143,96693,61886,5184,75763,47075,88158,5313,53439,14908,8830,60096,21551,13651,62546,96892,25240,47511,58483,87342,78818,7855,39269,566,21220,292,24069,25072,29519,52548,54091,21282,21296,50958,17695,58072,68990,60329,95955,71586,63417,35947,67807,57621,64547,46850,37981,38527,9037,64756,3324,4986,83666,9282,25844,79139,78435,35428,43561,69799,63314,12991,93516,23394,94206,93432,37836,94919,26846,2555,74410,94915,48199,5280,37470,93622,4345,15092,19510,18094,16613,78234,50001,95491,97976,38306,32192,82639,54624,72434,92606,23191,74693,78521,104,18248,75583,90326,50785,54034,66251,35774,14692,96345,44579,85932,44053,75704,20840,86583,83944,52456,73766,77963,31151,32364,91691,47357,40338,23435,24065,8458,95366,7520,11294,23238,1748,41690,67328,54814,37777,10057,42332,38423,2309,70703,85736,46148,14258,29236,12152,5088,65825,2463,65533,21199,60555,33928,1817,7396,89215,30722,22102,15880,92261,17292,88190,61781,48898,92525,21283,88581,60098,71926,819,59144,224,30570,90194,18329,6999,26857,19238,64425,28108,16554,16016,42,83229,10333,36168,65617,94834,79782,23924,49440,30432,81077,31543,95216,64865,13658,51081,35337,74538,44553,64672,90960,41849,93865,44608,93176,34851,5249,29329,19715,94082,14738,86667,43708,66354,93692,25527,56463,99380,38793,85774,19056,13939,46062,27647,66146,63210,96296,33121,54196,34108,75814,85986,71171,15102,28992,63165,98380,36269,60014,7201,62448,46385,42175,88350,46182,49126,52567,64350,16315,53969,80395,81114,54358,64578,47269,15747,78498,90830,25955,99236,43286,91064,99969,95144,64424,77377,49553,24241,8150,89535,8703,91041,77323,81079,45127,93686,32151,7075,83155,10252,73100,88618,23891,87418,45417,20268,11314,50363,26860,27799,49416,83534,19187,8059,76677,2110,12364,71210,87052,50241,90785,97889,81399,58130,64439,5614,59467,58309,87834,57213,37510,33689,1259,62486,56320,46265,73452,17619,56421,40725,23439,41701,93223,41682,45026,47505,27635,56293,91700,4391,67317,89604,73020,69853,61517,51207,86040,2596,1655,9918,45161,222,54577,74821,47335,8582,52403,94255,26351,46527,68224,90183,85057,72310,34963,83462,49465,46581,61499,4844,94626,2963,41482,83879,44942,63915,94365,92560,12363,30246,2086,75036,88620,91088,67691,67762,34261,8769,91830,23313,18256,28850,37639,92748,57791,71328,37110,66538,39318,15626,44324,82827,8782,65960,58167,1305,83950,45424,72453,19444,68219,64733,94088,62006,89985,36936,61630,97966,76537,46467,30942,7479,67971,14558,22458,35148,1929,17165,12037,74558,16250,71750,55546,29693,94984,37782,41659,39098,23982,29899,71594,77979,54477,13764,17315,72893,32031,39608,75992,73445,1317,50525,87313,45191,30214,19769,90043,93478,58044,6949,31176,88370,50274,83987,45316,38551,79418,14322,91065,7841,36130,86602,10659,40859,964,71577,85447,61079,96910,72906,7361,84338,34114,52096,66715,51091,86219,81115,49625,48799,89485,24855,13684,68433,70595,70102,71712,88559,92476,32903,68009,58417,87962,11787,16644,72964,29776,63075,13270,84758,49560,10317,28778,23006,31036,84906,81488,17340,74154,42801,27917,89792,62604,62234,13124,76471,51667,37589,87147,24743,48023,6325,79794,35889,13255,4925,99004,70322,60832,76636,56907,56534,72615,46288,36788,93196,68656,66492,35933,52293,47953,95495,95304,50009,83464,28608,38074,74083,9337,7965,65047,36871,59015,21769,30398,44855,1020,80680,59328,8712,48190,45332,27284,31287,66011,9376,86379,74508,33579,77114,92955,23085,92824,3054,25242,16322,48498,9938,44420,13484,52319,58875,2012,88591,52500,95795,41800,95363,54142,17482,32705,60564,12505,40954,46174,64130,63026,96712,79883,39225,52653,69549,36693,59822,22684,31661,88298,15489,16030,42480,15372,38781,71995,77438,91161,10192,7839,62735,99218,25624,2547,27445,69187,55749,32322,15504,73298,51108,48717,92926,75705,89787,96114,99902,37749,96305,12829,70474,838,50385,91711,80370,56504,56857,80906,9018,76569,61072,48568,36491,22587,44363,39592,61546,90181,37348,41665,41339,62106,44203,6732,76111,79840,67999,32231,76869,58652,49983,1669,27464,79553,52855,25988,18087,38052,17529,13607,657,76173,43357,77334,24140,53860,2906,89863,44651,55715,26203,65933,51087,98234,40625,45545,63563,89148,82581,4110,66683,99001,9796,47349,65003,66524,81970,71262,14479,31300,8681,58068,44115,40064,77879,23965,69019,73985,19453,26225,97543,37044,7494,85778,35345,61115,92498,49737,64599,7158,82763,25072,38478,57782,75291,62155,52056,4786,11585,71251,25572,79771,93328,66927,54069,58752,26624,50463,77361,29991,96526,2820,91659,12818,96356,49499,1507,40223,9171,83642,21057,2677,9367,38097,16100,19355,6120,15378,56559,69167,30235,6767,66323,78294,14916,19124,88044,16673,66102,86018,29406,75415,22038,27056,26906,25867,14751,92380,30434,44114,6026,79553,55091,95385,41212,37882,46864,54717,97038,53805,64150,70915,63127,63695,41288,38192,72437,75075,18570,52065,8853,30104,79937,66913,53200,84570,78079,28970,53859,37632,80274,35240,32960,74859,7359,55176,3930,38984,35151,82576,82805,94031,12779,90879,24109,25367,77861,9541,85739,69023,64971,99321,7521,95909,43897,71724,92581,5471,64337,98949,3606,78236,78985,29212,57369,34857,67757,58019,58872,96526,28749,56592,37871,72905,70198,57319,54116,47014,18285,33692,72111,60958,96848,17893,40993,50445,14186,76877,87867,50335,9513,44346,26439,55293,6449,44301,63740,40158,72703,88321,85062,57345,66231,15409,3451,95261,43561,15673,28956,90303,62469,82517,43035,36850,15592,64098,59022,31752,4370,50486,11885,23085,41712,80692,48492,16495,99721,36912,28267,27882,16269,64483,11273,2680,1616,46138,54606,14761,5134,45144,63213,49666,27441,86989,29884,54334,6740,8368,80051,81020,17882,74973,74531,94994,24927,64894,22667,20466,82948,66831,47427,76033,31197,59817,20064,61135,28556,29695,80179,74058,18293,9963,35278,13062,83094,23373,90287,33477,48865,30348,70174,11468,25994,25343,22317,1587,30682,1,67814,59557,23362,13746,82244,42093,24671,79458,93730,45488,60234,67098,9899,25775,332,36636,57594,19958,85564,58977,12247,60774,66371,69442,20385,14486,91330,50332,46023,75768,59877,60081,92936,72302,75064,85727,52987,5750,19384,33684,78859,80458,69902,34870,88684,49762,40801,86291,18194,90366,82639,53844,96326,65728,48563,26027,52692,62406,76294,41848,63010,69841,29451,36170,21529,16525,64326,22086,24469,57407,96033,37771,31002,18311,93285,31948,14331,58335,15977,80336,81667,27286,24361,61638,57580,95270,46180,76990,53031,94366,2727,49944,19278,5756,51875,53445,33342,1965,7937,10054,97712,87693,58124,46064,39133,77385,9605,65359,70113,90563,86637,94282,12025,31926,24541,23854,58407,32131,92845,20714,27898,26917,50326,35145,50859,72119,95094,29441,42301,62460,75252,94267,38422,73047,24200,85349,72049,91723,97802,98496,12734,73432,10371,57213,53300,80847,46229,7099,72961,13767,65654,31102,82119,96946,65919,81083,3819,57888,57908,16849,77111,41429,92261,45263,1172,55926,78835,27697,48420,58865,41207,21406,8582,10785,36233,12237,7866,13706,92551,11021,63813,71512,65206,37768,94325,14721,20990,54235,71986,5345,56239,52028,1419,7215,55067,11669,21738,66605,69621,69827,8537,18638,60982,28151,98885,76431,25566,3085,23639,30849,63986,73287,26201,36174,14106,54102,57041,16141,64174,3591,90024,73332,31254,17288,59809,25061,51612,47951,16570,43330,79213,11354,55585,19646,99246,37564,32660,20632,21124,60597,69315,31312,57741,85108,21615,24365,27684,16124,33888,14966,35303,69921,15795,4020,67672,86816,63027,84470,45605,44887,26222,79888,58982,22466,98844,48353,60666,58256,31140,93507,69561,6256,88526,18655,865,75247,264,65957,98261,72706,36396,46065,85700,32121,99975,73627,78812,89638,86602,96758,65099,52777,46792,13790,55240,52002,10313,91933,71231,10053,78416,54563,96004,42215,30094,45958,48437,49591,50483,13422,69108,59952,27896,40450,79327,31962,46456,39260,51479,61882,48181,50691,64709,32902,10676,12083,35771,79656,56667,76783,3937,99859,10362,57411,40986,35045,2838,29255,64230,84418,34988,77644,39892,77327,74129,53444,35487,95803,38640,20383,55402,25793,14213,87082,42837,95030,97198,61608,97723,79390,35290,34683,81419,87133,70447,53127,97146,28299,56763,12868,1145,12147,58158,92124,60934,18414,97510,7056,54488,20719,53743,91037,44797,52110,8512,18991,20129,31441,51449,14661,71126,23180,68124,18807,70997,21913,19594,70355,73637,68266,60775,43164,52643,96363,77989,79332,39890,65379,20405,52935,43816,92740,95319,4538,60660,28982,15328,80475,34690,2293,19646,46524,96627,33159,42081,8816,74931,20674,8697,66169,46460,46326,39923,60625,28386,22919,19415,75766,43668,31626,70301,67053,3949,70082,2303,48642,38429,94053,38770,68137,68441,52928,70244,91954,17401,92693,98342,21451,84988,80487,33807,73797,49494,41878,76635,83227,76618,11946,13451,87591,78381,21407,90038,72638,69692,51599,86413,32019,64856,74730,41531,11064,1790,58817,86400,66213,92599,70905,78324,54326,43659,34206,63132,38837,40210,96346,16967,81619,96503,14881,89405,32205,49508,98425,2451,35423,56072,36810,30332,85998,49358,92748,84147,79835,94867,41224,61794,35066,82220,66684,20096,2754,41731,37068,32753,91059,13407,5607,69384,53329,95909,44968,11397,92973,50014,92997,80968,93761,57598,74703,7768,37978,73873,33475,9720,97852,98449,48722,84977,11271,11728,68318,22312,78792,87508,88466,72976,47099,84126,38595,85124,64405,90020,7492,52413,95111,34455,86311,68892,1074,60274,28136,19328,38161,57475,13771,63562,84207,94121,18901,52768,33801,82087,86091,59969,90398,56870,55756,78841,98450,54165,55106,50343,70519,14567,36780,55450,19606,83749,67562,64765,38543,16585,86841,73742,8766,39252,75678,75379,78760,37279,15280,13558,95916,89759,76686,76467,67147,63110,94008,8037,35263,53710,16667,79008,11231,29397,67136,18601,64502,90228,89109,72849,22711,65547,34542,26686,81678,87765,77654,23664,96352,14106,32938,28083,18633,80286,65507,46197,52722,75476,77816,47204,34876,45963,79262,90181,84041,3745,90041,30780,27226,92847,85572,15308,80688,5761,82638,13464,23683,81015,54214,64175,43701,86845,15569,50687,52679,87696,8285,97444,47599,94472,64150,87753,68652,60726,26213,17320,64553,81285,98126,12158,52095,64833,492,35817,55571,91300,97812,37507,4209,53515,64342,21223,16662,43265,68219,3529,43636,68417,53640,95326,93381,37113,80751,76469,96677,43054,22937,31954,13266,34140,27253,2734,99070,60077,57988,93211,92795,83795,57477,3941,39007,14619,38320,93449,31336,25279,97030,26245,47394,39475,90621,23820,29344,94859,91604,14033,41868,14816,4075,66644,87803,97815,99552,78666,3942,8175,22345,19983,76783,99044,20851,84981,59052,77178,72109,76475,21619,73017,6812,56633,50612,55289,4671,84419,94072,94446,80603,32188,93415,23464,43947,43728,74284,67177,57105,31059,10642,13803,69602,46961,66567,19359,84676,63918,40650,12923,15974,79732,20225,92525,71179,4859,91208,60430,5239,61458,24089,68852,60171,29603,42535,86365,93905,28237,45317,60718,82001,41679,20679,56304,70043,87568,21386,59049,78353,48696,77379,55309,23780,28391,5940,55583,81256,59418,97521,32846,70761,90115,45325,5490,65974,11186,15357,3568,450,96644,58976,36211,88240,92457,89200,94696,11370,91157,48487,59501,56983,89795,42789,69758,79701,29511,55968,41472,89474,84344,80517,7485,97523,17264,82840,59556,37119,30985,48866,60605,95719,70417,59083,95137,76538,44155,67286,57897,28262,4052,919,86207,79932,44236,10089,44373,65670,44285,6903,20834,49701,95735,21149,3425,17594,31427,14262,32252,68540,39427,44026,47257,45055,95091,8367,28381,57375,41562,83883,27715,10122,67745,46497,28626,87297,36568,39483,11385,63292,92305,78683,6146,81905,15038,38338,51206,65749,34119,71516,74068,51094,6665,91884,66762,11428,70908,21506,480,94183,78484,66507,75901,25728,52539,86806,69944,65036,27882,2530,4918,74351,65737,89178,8791,39342,94963,22581,56917,17541,83578,75376,65202,30935,79270,91986,99286,45236,44720,81915,70881,45886,43213,49789,97081,16075,20517,69980,25310,91953,1759,67635,88933,54558,18395,73375,62251,58871,9870,70538,48936,7757,90374,56631,88862,30487,38794,36079,32712,11130,55451,25137,38785,83558,31960,69473,45950,18225,9871,88502,75179,11551,75664,74321,67351,27703,83717,18913,42470,8816,37627,14288,62831,44047,67612,72738,26995,50933,63758,50003,43693,52661,55852,52372,59042,37595,4931,73622,68387,86478,40997,5245,75300,24902,59609,35653,15970,37681,69365,22236,86374,65550,343,98377,35354,65770,15365,41422,71356,16630,40044,19290,66449,53629,79452,71674,30260,97303,6487,62789,13005,70152,22501,49867,89294,59232,31776,54919,99851,5438,1096,72269,50486,16719,6144,82041,38332,64452,31840,99287,59928,25503,8407,46970,45907,99238,74547,19704,72035,26542,54600,79172,58779,35747,78956,11478,41195,58135,63856,33037,45753,60159,25193,71838,7526,7985,60714,88627,75790,38454,96110,39237,19792,34534,70169,24805,63215,38175,38784,38855,24826,50917,25147,17082,26997,32295,10894,21805,65245,85407,37926,69214,38579,84721,23544,88548,65626,75517,69737,55626,52175,21697,19453,16908,82841,24060,40285,19195,80281,89322,15232,70043,60691,86370,91949,19017,83846,77869,14321,95102,87073,71467,31305,64677,80358,52629,79419,22359,87867,48296,50141,46807,82184,95812,84665,74511,59914,4146,90417,58508,62875,17630,21868,9199,30322,33352,43374,25473,4119,63086,14147,14863,38020,44757,98628,57916,22199,11865,42911,62651,78290,9392,77294,63168,21043,17409,13786,27475,75979,89668,43596,74316,84489,54941,95992,45445,41059,55142,15214,42903,16799,88254,95984,48575,77822,21067,57238,35352,96779,89564,23797,99937,46379,27119,16060,30302,95327,12849,38111,97090,7598,78473,63079,18570,72803,70040,91385,96436,96263,17368,56188,85999,50026,36050,73736,13351,48321,28357,51718,65636,72903,21584,21060,39829,15564,4716,14594,22363,97639,65937,17802,31535,42767,98761,30987,57657,33398,63053,25926,20944,19306,81727,2695,97479,79172,72764,66446,78864,12698,15812,97209,38827,91016,91281,57875,45228,49211,69755,99224,43999,62879,8879,80015,74396,57146,64665,31159,6980,79069,37409,75037,69977,85919,42826,6974,61063,97640,13433,92528,91311,8440,38840,22362,93929,1836,36590,75052,89475,15437,65648,99012,70236,12307,83585,414,62851,48787,28447,21702,57033,29633,44760,34165,27548,37516,24343,63046,2081,20378,19510,42226,97134,68739,32982,56455,53129,77693,25022,55534,99375,30086,98001,7432,67126,76656,29347,28492,43108,64736,32278,84816,80440,30461,818,9136,1952,48442,91058,92590,10443,5195,34009,32141,62209,43740,54102,76895,98172,31583,4155,66492,58981,16591,11331,6838,3818,77063,12523,45570,68970,70055,77751,73743,71732,4704,61384,57343,66682,44500,89745,10436,67202,36455,42467,88801,91280,1056,27534,81619,79004,25824,66362,33280,20706,31929,57422,18730,96197,22101,47592,2180,18287,82310,60430,59627,26471,7794,60475,76713,45427,89654,14370,81674,41246,98416,8669,48883,77154,9806,94015,60347,20027,8405,33150,27368,53375,70171,59431,14534,34018,85665,77797,17944,49602,74391,48830,55029,10371,94261,16658,68400,44148,28150,40364,90913,73151,64463,50058,78191,84439,82478,62398,3113,17578,12830,6571,95934,9132,25287,78731,80683,67207,76597,42096,34934,76609,52553,47508,71561,8038,83011,72577,95790,40076,20292,32138,61197,95476,23123,26648,13611,48452,39963,85857,4855,27029,1542,72443,53688,82635,56264,7977,23090,93553,65434,12124,91087,87800,95675,99419,44659,30382,55263,82514,86800,16781,65977,65946,13033,93895,4056,75895,47878,91309,51233,81409,46773,69135,56906,84493,34530,84534,38312,54574,92933,77341,20839,36126,1143,35356,35459,7959,98335,53266,36146,78047,50607,22486,63308,8996,96056,39085,26567,6779,62663,30523,47881,41279,49864,82248,78333,29466,48151,41957,93235,53308,22682,90722,54478,7235,34306,15827,20121,96837,6283,80172,66109,92592,48238,76428,94546,45430,16288,74839,740,25553,83767,35900,5998,7493,46755,11449,88824,44906,33143,7454,56652,34755,63992,59674,65131,46358,12799,96988,51158,73176,1184,49925,63519,11785,29073,72850,47997,75172,55187,15313,40725,33225,56643,10465,38583,86440,97967,26401,17078,38765,33454,19136,57712,48446,98790,27315,71074,10157,57946,35582,49383,61324,26572,84503,3496,60449,17962,26017,65651,40400,83246,80056,75306,75147,41863,25581,87530,33193,43294,5065,99644,62771,75986,79005,44924,18703,40889,4403,5862,2571,82500,74200,36170,46836,74642,65471,26815,30937,64946,10160,15544,31962,54015,28853,66533,14573,79398,47391,73165,47805,77589,16881,13423,89452,76992,62509,9796,57540,13486,48855,25546,47589,21012,47388,78428,70196,84413,81026,87597,22445,83769,85937,38321,85485,87359,9839,67228,71179,94372,4446,62801,50775,96179,40646,44272,12417,47199,39701,30665,32775,66525,53558,78882,31939,67209,38906,34533,99914,27719,216,99225,96537,3843,90564,91110,51838,30300,9559,37795,94880,11325,44979,89696,28129,29931,89971,46292,92710,11036,74760,75307,12291,49618,16293,92408,67928,80823,32872,25460,66819,35374,4035,99087,61129,11341,39118,10891,37217,63638,75477,30068,42334,57570,6890,59353,89939,37692,15232,20033,32202,22348,2766,96791,58448,92248,5769,96684,67885,99295,47271,38655,59513,96960,31718,8974,16122,20535,52380,29769,70660,57425,50891,75044,84257,73315,38181,28673,93140,26307,82265,78382,19681,56585,8975,76764,39956,83450,84663,89963,71584,57696,30829,60527,64947,34899,28805,28397,91830,51842,99838,39839,66971,67177,74219,35637,35634,93581,81746,29991,81096,94279,2968,62561,2479,82126,25702,67953,88088,50293,83423,86206,39935,23253,43041,48941,85787,8388,6671,43574,84908,67295,33623,55060,28174,48415,2529,22009,24524,5283,30460,32399,80423,56929,40852,69969,88541,5979,91496,64730,57198,83145,39750,3568,54669,98679,4297,51047,31492,47734,31343,31180,232,19707,24823,75079,73943,17997,8446,91252,39879,58682,82972,18417,39203,36681,42895,8459,15618,17941,52594,43277,16530,40052,91100,87422,47230,95699,49794,50492,87439,86354,4546,65333,11057,77727,19748,38722,91821,18107,42125,89239,28847,54623,38783,47803,31414,38450,3697,89186,30579,44188,26532,8420,80723,48100,60748,76330,45832,8311,16051,4475,13400,48527,46073,17439,56498,94632,9021,16871,83366,14896,4219,38375,87890,90217,42370,61028,85101,76771,83715,94737,69973,74187,1958,59691,86712,86570,60984,76342,13648,85250,28323,48379,45141,36277,51845,29039,3553,5128,59866,51281,68124,17007,24729,29710,41439,40574,11774,86746,89698,56020,37810,88972,11361,95583,70786,589,74473,87513,17690,61427,72914,32517,1804,97910,6327,30246,33049,2622,41026,80875,41293,16752,84225,84414,37137,68956,8095,64981,28180,38629,76962,23840,17477,75268,48297,70340,57888,13938,38554,86836,2195,30270,55484,53364,54705,41380,56316,37723,234,21424,26664,63804,75139,36534,18579,9833,98849,72762,59767,52497,24227,83152,71794,21398,99456,89215,51632,54799,27973,68568,68465,98500,28681,18369,24279,96335,12874,82160,67202,85199,27908,67022,49810,77929,96212,81153,77884,7032,1671,53362,28119,56786,30883,28540,76029,3774,64611,19736,25589,46569,45206,48215,69523,17423,91807,90039,30393,58319,85098,66519,57571,24541,3562,14400,62731,82534,61477,89731,18421,29861,52829,838,78040,43350,74323,82892,84746,28302,13264,7595,134,12933,46831,24864,47275,20527,9110,28485,30326,99826,64005,99308,65779,42760,90066,3974,38688,39968,32604,11694,46262,73262,45405,43923,67397,88228,56405,17839,92073,57622,93328,15442,50186,7570,58001,31e3,8915,11467,14793,82691,51238,12485,51745,18192,5985,36826,89434,38669,91592,88799,65621,67237,59541,19657,93402,58705,73553,78280,69125,95591,81168,91927,25976,89077,71690,19404,64603,59752,74698,44233,67602,38615,31303,28650,53700,89819,7783,4351,77451,47350,21234,16016,41532,76508,23063,44993,43983,33356,61715,96485,22121,78004,6316,87896,99289,93981,37850,66128,92735,45064,50924,24204,58816,65290,34392,55567,66416,72353,45775,68590,85685,72683,60090,37149,85347,57414,72336,12979,5720,92754,76911,96883,74420,5220,85815,23557,80567,44365,70254,50864,36619,51479,23281,76428,18580,34240,59289,49076,18439,29522,42541,4024,84446,92434,90407,77241,19690,78143,65919,13699,91844,91241,38361,67171,90551,5709,3474,76025,97043,33834,44638,54040,82797,545,38159,16089,35870,89158,55864,98078,50563,36492,10994,85909,9018,19252,73887,67928,60045,70782,11937,4074,53814,46621,52577,94853,45968,73667,65062,73306,76045,78649,91654,53958,96537,95542,67622,54579,17279,67440,56441,20681,64011,52226,96618,32831,60664,67547,39523,2043,59748,1887,69229,94653,99271,98164,62155,9234,47367,13047,6364,35064,10073,6793,80248,29009,44969,11129,17139,79630,89772,26921,56949,23465,30036,17173,82459,96218,60768,76417,24405,18710,68887,82394,69729,82503,40873,41590,67255,30757,9657,91881,34578,9511,5417,58953,18532,10721,22029,48524,47778,881,83489,3464,57462,97459,86689,39755,39547,740,36666,7993,31671,86304,12970,73402,52849,31652,79655,11250,18463,57518,20306,25301,1374,51208,33298,87662,61849,60923,68685,69411,39266,80320,34844,89416,81569,83651,35795,40168,33501,1042,58931,3892,85188,74740,85476,23790,33842,89565,53359,25579,59049,62394,72435,12457,21904,18370,97035,57905,9581,91227,92754,37760,1411,7440,87175,88318,63242,85960,56690,12618,30493,11569,73723,7448,58830,157,65814,21118,22140,73793,57855,81830,6795,13183,12625,30635,56429,73216,12342,36722,83886,96828,82870,90954,97614,2370,42160,73370,11944,49067,59452,80495,43911,46712,17033,68037,41963,3874,44856,82985,57453,84358,16120,4454,76624,405,62369,55080,61880,51270,87807,10653,36894,70850,35660,234,14705,93418,94084,82856,25384,71555,56754,78315,18291,91656,98079,52384,43306,65205,75903,58701,99496,50048,33557,87793,90857,10143,46726,84284,43635,41213,83845,70986,91408,80220,5728,68890,46577,21152,43759,43301,93661,97252,50106,10099,13722,18572,44024,351,18173,23717,85114,85998,57782,63951,53723,86853,63851,79430,49181,46386,69666,55743,76162,71724,40028,94786,34457,16906,90040,30789,40281,94697,96584,81907,4055,53990,66397,80579,42517,78181,39251,9467,67097,95523,66568,63632,71048,15581,39904,75774,77495,75994,29911,65690,41178,47712,70355,16998,56025,5230,10093,71495,34784,70950,54680,57811,53782,39145,36829,85342,40406,35883,45668,3459,29870,78252,70088,70621,67153,5737,40933,91075,93335,86853,15860,81167,91259,16118,52401,83593,84474,2423,75608,39646,90871,70284,82100,96032,5115,63678,2225,88087,58581,44364,57468,21539,13042,64150,63754,5210,87644,54114,64013,63562,41388,32397,74152,23982,71982,71700,33026,66477,47838,46712,39848,35083,65927,97868,11067,76771,71799,43836,41014,97025,93225,8511,63096,26628,73012,12543,76269,99708,2629,49845,73677,19193,14924,57236,95564,15010,59667,73773,78515,2624,99744,13585,33746,58771,94785,62628,99585,11363,80832,59979,9444,78700,2596,85984,69438,16913,96475,93283,18625,77086,45911,39746,64722,39938,43930,54619,302,50384,2738,75714,75249,95439,80714,52555,47266,96190,78750,94973,83669,16479,53163,48071,28e3,45011,26733,67132,83362,84162,43028,8415,27236,52651,89059,64844,80910,1676,91752,57815,26264,3415,57532,29981,61200,96036,62600,20068,56530,38487,8432,89514,26883,69165,97237,22361,55276,39902,95927,82190,49269,27212,46095,37106,64254,27460,49572,51700,27679,12574,33891,3867,9925,6476,82018,45094,59014,67113,44192,75,23318,79895,70550,81717,28833,30271,15821,14999,88174,62617,57517,55256,50281,51583,96879,5225,42272,5339,20483,57596,41011,75937,22767,50120,95938,49753,63882,99616,69083,38721,73889,80236,99531,23053,71237,48861,59046,76283,60538,19732,93877,30345,64882,66660,17026,70364,45676,8039,96228,89936,59141,95585,89552,97247,59325,27848,80058,15950,61481,90906,40998,44137,16144,66300,44091,50018,81364,18211,60294,76559,20279,27414,10589,39860,23e3,31767,95618,56738,50332,16936,70342,92481,30702,76264,62619,68678,62284,83112,93032,55203,52614,36950,41796,45403,79262,2887,53596,61308,20738,34811,27099,90956,65448,3080,75795,29753,97699,80872,23830,85882,74427,99523,74904,28017,45898,57232,48525,7086,26805,74533,92470,18840,76011,93109,14344,55614,50284,15865,19458,35856,13464,53679,64603,51571,56124,79107,29596,89572,78198,57121,73649,8804,87977,87959,70859,40909,77295,87877,75158,62810,92074,23244,59516,50552,31602,41899,6347,27821,68370,48596,88577,30231,25267,84622,31449,12086,56461,22962,78213,62483,93966,60437,52239,58113,32526,38708,81607,57016,1695,90110,4649,59990,23979,3855,10297,46516,96092,82305,30760,78756,4967,82876,4773,86651,16648,53133,82439,78851,49766,24553,15273,36417,1901,33386,76979,25920,33372,2695,11982,40911,6230,91696,43907,17827,30332,89203,32215,91806,23080,49102,9174,11548,54590,75803,66108,73882,62324,26017,72716,33887,1285,31604,71039,24337,53514,58964,89901,22040,92751,12617,37007,5523,61672,62557,98540,26094,60284,19621,96230,38044,6545,9458,42988,2913,86345,67936,90174,40840,44991,24256,34989,74086,13652,68706,1363,4294,88008,78693,83068,94746,221,89299,53186,5930,61889,51341,45412,58860,72568,11381,59785,36887,10690,31347,93326,96267,86987,57565,86836,49071,90331,41248,34629,30240,27270,3864,84308,3035,61369,36902,51017,44409,17120,23823,36460,63359,8333,63173,19134,6493,303,18550,26191,19051,81502,66343,6737,90430,65478,58982,82484,16483,47704,44640,68322,44548,72787,2335,28749,39320,5436,98146,56596,812,51445,35533,35478,47573,38414,25542,38032,13442,42983,97207,77854,57806,81616,52828,79429,47389,96795,57764,19605,24767,63253,18809,65093,44449,22952,76872,30983,38948,9310,48336,87651,27110,84427,76209,56412,12760,16747,14551,82626,31224,98636,75100,84882,79479,83420,5347,6803,90063,4617,40257,79183,41766,71873,25242,12275,336,40798,42055,74066,69128,32547,76508,32530,42359,89207,49758,58984,92732,15779,7234,28884,28226,50011,35883,99606,45423,76224,75427,85747,33879,97978,57441,927,19164,74716,40702,19715,70917,60344,40236,9019,50577,15598,53136,57285,20536,7539,74832,89184,41501,39447,97422,97041,21913,40581,76081,13089,28776,54164,55736,36263,71841,34488,74988,55467,43322,9214,36746,67981,71877,81683,32461,84091,19422,88366,62054,85664,13409,8003,88276,6989,16607,33633,85349,5784,25950,97998,74110,16699,60184,92818,79705,10381,1474,18656,50434,18232,92132,66537,70141,42854,25120,39581,28249,14215,34810,19767,3409,11807,6566,66138,42997,41999,67504,87117,28961,5e3,29673,77726,73225,54753,69712,71576,92337,17713,63185,87923,91889,68351,17712,75532,93849,48280,62219,317,25290,29209,90927,92929,92762,60413,2018,31793,76290,73373,80777,60819,77375,57886,47291,99670,32605,29064,99476,80999,31217,35,91300,14892,73653,26593,25305,56797,12837,39560,27582,37253,38531,76489,49946,69108,58687,43092,73807,96282,6648,67431,87124,57694,21660,64002,6,33600,30245,60636,80164,9285,61426,4658,54130,14710,76553,1904,93668,63110,98618,5601,32199,74923,98049,49717,55539,35940,58545,43295,35810,45451,38735,42065,66769,69825,45461,83881,67372,67351,90612,79502,69460,23108,74421,82990,46821,40683,71603,55267,48192,50242,79738,96417,6664,19929,23644,41116,51056,219,45086,32747,49492,15399,24874,80825,95928,61457,45813,59037,16136,3953,83583,5910,12654,53630,92997,22168,93491,71897,74579,24022,6278,24049,71670,43044,8474,38572,77402,35800,7455,96177,41653,74493,20802,65843,73050,73349,2638,65813,96209,49196,45007,32207,14097,66059,46681,7534,71263,20582,10171,51514,52142,60961,57951,25637,37860,21683,86190,90434,94481,85697,95344,2606,74095,61133,7472,64777,94050,41482,975,23471,76052,82021,87676,91345,20196,2612,86299,44996,40312,65712,46079,88514,8610,3685,63197,9073,53105,86824,28112,99306,40706,66840,83003,51590,52755,32285,68454,85058,13645,23073,24724,52989,71880,21952,44144,74975,76715,7844,46447,86643,75579,29276,10864,83179,36721,19300,35066,29383,47478,56644,33354,31414,17643,92374,85085,88458,87191,85248,34963,76278,53230,13953,76985,70959,36663,5293,32658,56767,56997,76736,6558,64248,11907,29123,78458,17678,63805,89973,5076,39263,54404,4355,64957,74407,99838,18836,78098,6490,74888,73719,80675,86178,56283,33591,96957,38382,18772,74773,71229,2603,52673,44609,14843,58418,18060,95459,626,30914,13550,42195,44863,8871,89182,64446,78422,41140,15312,98274,48168,95651,35562,85386,56252,72136,85088,68761,78434,98143,61330,2446,64409,49406,99127,98626,55095,44808,13594,87370,89472,12833,98932,68064,58193,20225,5192,28425,23978,24542,80845,55858,4015,21454,37346,51007,17202,10242,12682,55933,96922,22280,75597,50227,70712,44236,20470,36320,49339,60536,80083,38880,93327,49522,93585,9918,55268,4671,57526,11457,48424,54610,7211,78610,9473,72923,27347,30057,76968,26177,59367,46172,88951,40229,34921,60405,88959,16779,29547,92231,61997,36002,21080,39795,77221,10012,49748,76900,15964,3803,40260,92351,92844,10288,57483,10881,70408,75688,16610,1638,93082,44282,66849,75702,69428,34047,84968,71281,72328,73143,88672,49802,50639,18129,93659,58389,49095,45971,34196,84609,59222,19332,17777,41004,47057,30688,16039,20906,41477,42915,60877,33864,75195,62294,3371,11672,1370,2486,35553,17907,90621,45136,9722,67635,12114,63055,16004,21625,24321,20491,26881,66259,94287,54751,36242,36557,5842,30687,65418,94608,24741,45887,78800,86912,42076,50287,9284,68891,76368,83094,96302,35997,30761,97081,9501,68887,32876,1705,34260,95065,45528,88241,30402,12318,52430,40139,96986,84900,72408,42027,31676,54382,73370,26184,14024,57444,57660,52173,30274,93448,63273,77681,74946,2099,69091,19372,66961,14595,58642,75760,52253,53148,26074,52293,65359,63971,4833,86492,1227,54505,19515,89889,46933,13364,33883,83389,36952,52505,67513,40071,31001,3105,87912,29610,75108,37363,28479,43546,89992,19550,54863,82633,19209,21548,35022,21960,57961,11815,95867,559,26428,69386,57453,70147,73538,49562,46806,64550,36653,25718,68792,31113,7607,48037,71020,22666,65957,11141,39227,7990,19849,65972,74528,40888,55386,95918,92088,91125,53648,66122,138,79933,71058,34826,97725,69513,22915,18246,52244,91161,40861,40374,13239,56162,4703,95851,22824,41271,28202,62852,84238,46625,20031,8524,20077,65817,21174,29279,57712,22401,67500,30980,74485,26480,21343,30031,61921,35744,57308,71196,1865,49234,62616,54021,29008,83672,85839,96836,45077,80900,66906,63526,93824,71820,11033,20183,85704,4683,63512,39144,56880,64424,95979,17709,94849,31771,5737,84286,16757,46256,24478,73180,59978,8254,78963,95437,86351,33824,32540,18357,2668,99260,21284,81351,70961,10255,6911,47394,72408,23827,59865,96395,30665,43699,3593,29165,23388,26628,92402,16731,86740,29493,9069,78653,90094,42735,33682,95041,89887,92369,57949,81585,50593,14698,4737,72551,57271,59433,156,33966,58773,59108,49578,18100,59836,73221,21110,1650,11058,47770,66141,84576,58388,40915,94507,32209,17272,65674,95552,25685,5345,36995,36302,7971,67001,62062,75939,36005,26739,56484,46885,66348,87666,78055,44485,82955,85936,9219,1847,92687,72579,45457,78252,98239,4e4,75563,92408,17175,78845,32638,26959,35406,59553,57852,7506,9,93172,77713,93880,40981,27924,9678,24538,52426,84852,83781,23712,82490,77890,22482,66668,55850,25644,44972,62275,78089,28894,98685,32998,98766,89119,34355,75127,69797,71419,62067,57990,96514,50603,79807,26135,29207,43632,32905,38513,18924,88872,20758,70232,60425,1116,24077,21369,93541,75329,78656,44251,42014,98154,42552,14575,30765,348,1134,71581,68420,78141,21105,63305,9718,54851,65867,8595,47390,39182,51174,41478,64433,59628,31945,87322,78667,95282,5622,26224,19972,97269,98376,14779,51138,49658,45345,4972,52794,15737,496,48939,63485,42780,16061,59631,37171,13483,56058,51093,62290,88227,17400,88433,67363,89507,26482,85964,71336,67799,28342,37747,61722,27180,78755,18603,42953,6606,23875,56766,1932,36113,62807,84012,21103,9685,69662,76755,13701,95168,13169,44726,15284,16702,89617,54397,52052,12835,37741,86434,22400,37947,95763,86337,35189,22756,47473,16618,42479,47405,14055,64262,66670,89692,54032,94591,44149,29854,76691,33263,62048,25116,88598,16119,62116,54517,31883,86707,18895,81790,71294,2684,15292,48107,14341,91416,75609,92564,39987,2283,89970,95855,80970,5432,89860,90293,99851,94648,5598,32171,28793,92305,64244,8277,93391,96717,34464,29838,10664,28050,60122,77934,10758,84922,92220,45071,97697,36368,17792,84792,76594,67319,51886,5665,45201,11348,9254,7510,51039,91683,84500,85338,5555,19633,3870,39576,41486,58524,54508,20707,58504,39642,22454,80069,83455,31043,90794,51934,3295,26582,16300,74990,22197,83310,69642,81113,58558,84833,17105,46659,25003,85749,44829,4103,67516,76458,52392,53546,70291,98846,67315,30686,18555,29755,5923,22732,19501,56181,85351,5023,4808,56911,16793,75336,49712,27723,96974,34321,5454,12862,71924,45928,95697,68664,58183,78104,42483,71204,99628,40642,56410,17350,13396,76724,87509,9158,83708,27298,92651,95086,38851,63558,89810,1580,32518,35795,26514,56322,78635,63731,91428,7247,66460,38671,26799,22549,47991,46064,80467,40083,17141,39152,99872,27561,75389,74778,94893,82935,99076,93419,10474,84436,47536,16719,60136,80566,28404,74525,74212,3704,65516,98197,34210,64140,22238,49939,99542,27481,21992,78181,90060,71365,66935,29578,14961,8569,9454,43308,66753,45972,93572,16382,87320,37183,25478,38164,31997,69856,60898,63968,62264,4799,17591,89937,73905,55890,88285,2448,40398,54180,65869,45155,43407,39105,339,51619,20203,21189,68245,76912,1222,76411,82679,7,66047,32043,42627,16638,27019,15248,66444,8249,18790,82150,54084,84469,3426,50226,99868,88894,43769,66384,8593,41414,2976,60053,51866,87904,74135,53842,59520,67482,16995,32328,29555,49067,2799,68851,41049,97190,53984,99755,46412,45885,64e3,21962,36438,71742,57223,66599,86071,31436,32667,98099,38399,47377,5171,2742,48803,17823,22093,9866,691,5514,25546,2114,5919,56181,96052,67211,61712,25995,3188,23833,38549,44775,55355,61548,55988,47309,23749,30667,70732,33299,16127,30842,78961,41072,9876,18903,30292,25275,61881,15939,72573,84502,92654,97226,53434,77025,63892,12421,33644,39445,30933,84218,13757,37719,84450,2697,60309,22402,80310,92771,45205,72792,95776,85945,74651,216,50842,47854,21916,61588,75405,10495,83083,60427,78495,99809,47890,22993,21508,9459,26845,98130,1184,46438,27698,40652,65654,98517,1096,6998,49133,57041,77983,58708,42176,67356,324,70063,10597,65205,25622,34336,16640,27896,26907,86760,48244,89650,44997,51609,28934,9171,97859,97213,19859,41037,64081,94781,27683,41521,52871,86935,26486,38744,25943,60617,6414,42292,46204,53262,30201,38776,88831,97253,67282,72860,18452,60927,81504,57713,30296,10896,39900,67135,42772,4631,55283,39253,25264,1809,12874,88035,88421,90491,83290,6884,15444,90113,20406,20796,40239,34431,15018,45600,17241,26611,9551,89126,65673,31708,91252,39647,63011,24193,58932,89326,33491,53217,27976,70151,37531,53576,23931,11789,73073,52171,89301,51718,15385,79487,66436,35771,34163,86540,42665,80748,77622,14679,40185,25030,42622,13162,17048,24243,59985,59807,60562,3595,10135,29199,69784,59796,38194,58432,50943,40422,63035,3208,81440,90749,88046,32218,88092,22224,2627,91576,16781,43948,57795,71073,27817,87077,82717,24473,42096,76920,88864,90537,14715,42551,45066,24316,37361,38582,21871,14672,93362,21727,57021,94313,39562,64985,94028,46094,43845,91838,79574,7597,3153,56783,18817,74711,6883,91061,31674,73729,99315,66183,57647,74484,68077,33224,397,56753,53158,71872,68153,9298,20961,49656,33407,95683,14328,44708,72952,27048,67887,28741,46752,88177,95894,40086,88534,87112,68614,83073,88794,96799,67588,75049,84603,83140,97347,87316,73087,77135,71883,98643,3808,8848,14133,60447,1366,72976,1868,51667,63279,60040,88264,79152,3474,61366,20523,21584,93712,83654,89761,90154,96345,37539,32556,74254,70603,97122,44978,78028,8943,13778,11080,34271,68276,85372,48410,94516,15427,75323,71685,70774,50342,33771,3678,42321,69788,41758,55004,30992,17402,63523,42328,87171,24751,15084,33884,83655,88345,69602,52606,57886,18034,3381,75796,35901,77480,28683,68324,66035,7223,14926,16128,13645,90370,31949,11057,98849,29499,21565,30786,83292,92392,37104,36899,49906,79368,43710,80365,88735,75275,21664,57965,19002,301,12658,94385,1717,96191,50404,80166,93965,24688,27839,10812,31715,92127,42588,93307,80834,11317,26583,25769,98227,14884,58462,29148,68662,26872,72927,79021,51622,29521,33355,45701,45996,33782,93424,16530,96086,17329,74020,11501,46660,5583,22277,77653,55430,84644,448,86828,58855,67451,95264,67386,82424,52611,60012,88620,72894,94716,22262,99813,69592,63464,33163,91857,47904,22209,78590,68615,52952,31441,41313,18550,72685,68825,4795,53971,14592,39634,23682,76630,2731,81481,86542,23727,54291,56045,61635,32186,9355,73416,63532,24340,18886,84832,30654,48543,18339,65024,91197,64624,74648,9660,27897,49771,11123,8732,49393,12911,72416,17834,18878,62754,85072,23727,56577,51257,83291,12329,16203,91681,68137,79959,43609,58987,2026,42969,59144,84349,75214,76972,22633,64104,53799,16851,99197,70476,77113,46320,88693,37711,96536,68156,7119,2104,49435,77706,18924,24957,92406,87148,70482,36491,42605,54440,7893,31618,35707,65130,30007,75706,77266,37100,9601,87681,42543,69847,81848,32034,49429,99434,62209,17125,55227,61634,52574,83649,28725,70119,62467,80676,21192,99584,21310,25292,72781,17186,10393,98390,19789,92931,36234,62627,23437,3885,58822,82941,43806,8172,23790,72295,36196,98200,2889,87619,13846,56197,27151,21238,48794,81100,62643,40001,39243,33213,78416,194,91369,79342,36404,52308,13741,24442,88610,12659,11574,70052,93039,79367,41792,61816,35435,47192,97596,28330,41145,16918,62865,9576,45857,68737,90124,16703,7071,48433,57222,34435,800,72496,16449,68187,28739,97672,86818,50768,40807,88681,64340,2224,19703,59245,90905,31239,84216,93942,97371,16842,92168,52692,16064,84686,89444,27938,98406,41365,4515,20494,18813,16242,10634,61566,18592,78057,8720,33739,78345,87693,30242,70545,55521,23687,9160,8655,38811,61768,7228,5567,5561,82071,85,50145,23113,97761,88441,14891,72188,85166,37189,75671,81377,92470,73645,93258,6610,12185,43065,26704,47922,56650,7527,18006,56948,51675,16658,66402,1047,81624,77395,62310,73262,66050,57275,32936,87641,51528,58183,21952,84098,28913,28622,18140,89796,41317,93954,67690,64667,57092,21315,4731,76115,77291,11204,8634,93034,27411,27149,13843,9817,9407,84492,28444,59901,14592,89654,66207,66232,80293,74502,36925,55515,10121,16768,4720,71502,40500,21406,571,87320,81683,42788,86367,44686,22159,67015,35892,49668,83991,72088,30210,74009,86370,97956,2132,93512,54819,26094,51409,21485,94764,85806,13393,48543,7042,76538,64224,47909,9994,23750,17351,52141,30486,60380,86546,66606,36913,58173,45709,83679,82617,23381,9603,61107,566,6572,64745,10614,86371,43244,97154,10397,50975,68006,20045,16942,25536,74031,31807,70133,78790,40341,68730,39635,39013,66841,44043,96215,21270,59427,25034,40645,84741,52083,54503,36861,27659,95463,53847,40921,70116,61536,56756,8967,31079,20097,76014,99818,16606,19713,66904,27106,24874,96701,73287,76772,6073,57343,51428,91171,28299,17520,64903,4177,36071,94952,59008,28543,11576,74547,13260,20688,41261,2780,6633,37536,8844,95774,49323,30448,14154,83379,71259,23302,68402,43750,88505,15575,44927,6584,29867,21541,65763,12154,86616,79877,73259,68626,98962,68548,86576,48046,51755,64995,3661,64585,81550,46798,49319,50206,22024,5175,12923,23427,55915,91723,55831,83784,81034,86779,34622,84570,18960,48798,42970,95789,39465,82353,68905,44234,18244,54345,5592,89361,14644,67924,66415,89349,88530,72096,44459,5258,48317,48866,56886,90458,75889,4514,37227,11302,4667,2129,80414,86289,15887,87380,50749,83220,50529,20619,11606,36531,23409,78122,19566,76564,33045,66703,30017,35347,35038,12952,13971,3922,98702,11786,38388,69556,76728,60535,59961,23634,42211,98387,34880,27755,93182,99040,96390,65989,38375,3652,59657,57431,24666,11061,64713,85185,72849,58611,31220,26657,77056,24553,24993,5210,89024,32054,46997,92652,28363,98992,22593,97710,47766,37646,93573,95502,33790,92973,27766,62671,89698,10877,73893,41004,96035,18795,48080,59666,30241,35233,87353,43647,13404,41982,19264,29229,61369,8309,39383,42305,25944,13577,51545,68990,69801,37145,79189,55897,57793,66816,21930,56771,79296,73793,21632,42301,23696,72641,56310,85576,3004,25669,69221,32996,23040,65782,23712,13414,10758,15590,97298,74246,51511,46900,36795,38292,3852,6384,84421,3446,91670,45312,27609,87034,6683,83891,88991,16533,9197,34427,60384,48525,90978,46107,21693,12956,21804,46558,37682,81207,85840,53238,35026,4835,53264,41376,17783,64756,39278,25403,33042,20954,31193,24247,45911,92453,25370,86602,48574,57865,26436,16122,76614,17028,21262,59718,77821,14036,31033,90563,45410,15158,90209,84089,38053,60780,54166,14255,33120,27171,71798,91214,80040,56699,12475,40193,59415,4769,75920,1036,2692,75862,16612,73670,61182,3305,90334,187,91659,28063,75684,50017,82643,9282,77376,85469,8164,5584,36623,82597,83859,3435,98460,70095,80257,4381,6501,8924,35514,14297,54373,71369,5172,15955,82441,4636,48215,6821,3385,17663,40107,55679,30366,42390,95895,16083,58499,17176,55993,51034,49296,4010,78974,35930,2019,96226,27167,68245,53109,59037,37843,79243,10262,58797,61490,82590,52411,54783,29447,94551,30026,97959,93939,73217,82573,62154,78291,33728,39102,11484,86210,43794,73553,87435,1110,77108,56521,78610,8254,1842,43068,70415,79195,26136,49786,47279,38471,20379,54704,86614,91138,51595,50818,80186,73087,17262,94735,4952,27935,4928,74862,51392,62388,9570,38485,30594,56278,47395,72762,94597,72279,16010,34697,54475,67874,78014,88381,4045,41494,55178,46054,24373,1824,55333,7525,97908,61178,84635,2199,35361,4803,21907,79414,66083,54782,58692,28332,41851,28198,55819,37313,67046,16147,90478,71230,34141,85002,44332,35906,429,39744,773,22909,19536,98986,90945,45209,85439,92265,25291,22775,60611,49159,95701,36113,53923,60824,84935,29656,50007,86624,61691,76150,32187,42765,60660,13859,10792,88210,29374,29563,45188,28811,19739,67649,73775,99247,48414,91067,68253,9452,90116,91737,73979,62370,69112,58791,20349,71480,56852,36919,87977,77609,68738,85159,4918,70076,46473,4122,57713,1426,50987,77910,66211,62546,77749,96462,34304,77441,12104,91805,10287,60943,49632,83116,25716,23113,22707,77770,31176,6759,46130,4739,55554,3843,31653,70834,72877,41561,36903,23010,6663,2266,16360,70118,91936,17098,77278,4880,23484,94970,41826,46733,93484,68350,38861,18134,32936,241,24803,13876,93278,5039,35873,44418,5305,28510,36115,46717,15238,78607,23464,68635,55712,55007,92411,65739,4858,67537,37041,67453,89801,45963,14800,14225,65655,80463,9716,77255,65136,11230,76323,81433,36445,86523,61058,59560,19380,40791,48073,29626,36661,87907,57369,41623,13705,3880,45088,55444,41003,27754,1450,75312,71801,99600,60719,54182,29245,63315,73758,42973,32702,10855,56363,14638,84424,27178,78195,3133,70865,48019,26117,7151,52107,85562,41347,50486,69457,86961,95482,11857,93587,45680,42145,13029,10043,5142,49213,54525,85761,42707,70754,33768,87671,85038,58900,88438,20004,63390,14815,38875,73417,82875,89481,55517,944,15773,61814,32915,27868,5510,21916,28426,89881,16680,88850,11056,51991,4230,39107,49216,40065,4523,75848,95349,56034,10724,9885,88232,42478,65702,95696,39746,66032,88082,86905,30007,75068,66629,7358,26706,90511,72843,67857,20061,98581,69682,38e3,14186,70,2290,17269,30909,69449,19997,13275,2444,84985,51290,97641,15092,69650,21920,19617,7418,49725,91090,20805,28627,80665,67192,34697,57667,99323,50101,40587,35081,14037,34414,19898,60779,83267,87499,29596,41852,15813,32419,72232,8322,39184,46525,13833,65743,94595,37363,4711,35386,96413,10627,62625,56555,12919,93218,25191,98380,51923,66181,5788,73491,1452,487,12277,45415,11884,61300,94528,9181,26616,11455,31514,63290,45035,42759,33804,85721,80979,46010,50975,72482,31231,3086,58941,46102,25773,89742,29788,96741,88523,14922,88262,76305,57676,93259,2396,69145,26074,30056,3853,75317,56639,66203,38923,48939,22813,91864,10934,6714,84099,25631,73223,95630,97552,45950,22197,42886,33764,1263,41856,82057,62349,94091,78028,62651,18911,5693,92561,97821,41994,92343,76785,22216,4203,5038,86151,23596,24338,77181,51761,97693,10955,98159,37568,58932,72128,27303,99608,31688,57557,91022,43036,93927,32869,53653,55205,33139,47271,31224,51650,36422,86857,73799,22068,43376,84760,44898,65776,42451,71480,38509,41673,44141,75918,95652,68981,83001,48815,98086,67950,27986,33175,43624,55274,71051,61124,51550,64967,31570,15748,19159,38174,51078,79811,39183,57527,96550,85168,28824,47466,56993,13151,96664,29735,70251,1079,4314,77714,11507,1440,48415,31984,99915,20282,26524,18057,4992,40521,98108,84045,91961,79256,72244,25788,5487,23595,73302,14205,8925,27625,64343,28821,37992,67156,83320,31106,10884,30735,15067,51091,15668,48777,50770,19169,76504,41165,29749,92812,8065,66782,26841,1411,95461,61134,18699,52261,60469,81373,44825,11448,73320,30151,56991,31372,6655,36472,86292,30247,30931,21029,53410,9859,37267,47514,3492,49008,94727,25234,40546,53417,36492,25723,76227,58456,15979,34876,9574,34392,3751,36933,83921,65108,63135,67572,40184,21098],l=new Array(16),h=[16,8,16,24],f=4,p=0;!function(){for(var t=0;t<16;t++){l[t]=new Array(256);for(var e=0;e<256;e++)l[t][e]=e|e<<8|e<<16|e<<24|0;for(var n=3;0<=n;n--)for(var r=0;r<255;r++){var i=255<<(n<<3),o=0|l[t][r],s=function(t,e){var n=e-t+1,r=0,i=1;do{for(r=0,i=1;i<n;i*=10)r=10*r+(f<0&&(f=4,p++),u[p]%Math.pow(10,f+1)/Math.pow(10,f--)|0)}while((i/n|0)*n<=r);return t+r%n|0}(r,255);l[t][r]=l[t][r]&~i|l[t][s]&i|0,l[t][s]=l[t][s]&~i|o&i|0}}}();(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)})(d,r.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(d.prototype,[{key:"reset",value:function(){o(s(d.prototype),"reset",this).call(this),this.state.hash=new Array(this.options.length/32|0);for(var t=0;t<this.state.hash.length;t++)this.state.hash[t]=0}},{key:"processBlock",value:function(t){for(var e=0;e<this.state.hash.length;e++)this.W[e]=0|this.state.hash[e];for(var n=this.state.hash.length;n<16;n++)this.W[n]=0|t[n-this.state.hash.length];for(var r=0;r<this.options.rounds<<1;r+=2)for(var i=0;i<4;i++){for(var o=0;o<16;o++){var s=0|l[r+(o/2|0)%2][255&this.W[o]];this.W[o-1>>>0&15]^=s,this.W[o+1&15]^=s}for(var a=0;a<16;a++)this.W[a]=Object(c.b)(this.W[a],h[i])}for(var u=0;u<this.state.hash.length;u++)this.state.hash[u]=this.state.hash[u]^this.W[15-u]|0}},{key:"finalize",value:function(){return 0<this.state.message.length&&this.addPaddingZero(this.blockSizeInBytes-this.state.message.length|0),this.addPaddingZero(this.blockSizeInBytes-8|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),r=d;function d(t){var e;return function(t){if(!(t instanceof d))throw new TypeError("Cannot call a class as a function")}(this),(t=t||{}).length=t.length||128,t.rounds=t.rounds||8,e=this,(t=!(t=s(d).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).blockSize=16-t.state.hash.length,t.blockSizeInBytes=t.blockSize*t.unitSize,t.W=new Array(16),t}e.a=r},function(t,e,n){"use strict";var r=n(5),u=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function s(t,e,n){return(s="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=a(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function a(t){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function c(t,e){return(c=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}for(var l=[[7,12,17,22],[5,9,14,20],[4,11,16,23],[6,10,15,21]],h=new Array(64),f=0;f<64;f++)h[f]=4294967296*Math.abs(Math.sin(f+1))|0;(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&c(t,e)})(p,r.a),n=[{key:"FF",value:function(t,e,n){return t&e|~t&n}},{key:"GG",value:function(t,e,n){return t&n|e&~n}},{key:"HH",value:function(t,e,n){return t^e^n}},{key:"II",value:function(t,e,n){return e^(t|~n)}},{key:"CC",value:function(t,e,n,r,i,o,s,a){return Object(u.a)(n+t(r,i,o)+s+e,a)+r|0}}],o((r=p).prototype,[{key:"reset",value:function(){s(a(p.prototype),"reset",this).call(this),this.state.hash=[1732584193,-271733879,-1732584194,271733878]}},{key:"processBlock",value:function(t){var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],e=p.CC(p.FF,h[0],e,n,r,i,t[0],l[0][0]),i=p.CC(p.FF,h[1],i,e,n,r,t[1],l[0][1]),r=p.CC(p.FF,h[2],r,i,e,n,t[2],l[0][2]),n=p.CC(p.FF,h[3],n,r,i,e,t[3],l[0][3]);e=p.CC(p.FF,h[4],e,n,r,i,t[4],l[0][0]),i=p.CC(p.FF,h[5],i,e,n,r,t[5],l[0][1]),r=p.CC(p.FF,h[6],r,i,e,n,t[6],l[0][2]),n=p.CC(p.FF,h[7],n,r,i,e,t[7],l[0][3]),e=p.CC(p.FF,h[8],e,n,r,i,t[8],l[0][0]),i=p.CC(p.FF,h[9],i,e,n,r,t[9],l[0][1]),r=p.CC(p.FF,h[10],r,i,e,n,t[10],l[0][2]),n=p.CC(p.FF,h[11],n,r,i,e,t[11],l[0][3]),e=p.CC(p.FF,h[12],e,n,r,i,t[12],l[0][0]),i=p.CC(p.FF,h[13],i,e,n,r,t[13],l[0][1]),r=p.CC(p.FF,h[14],r,i,e,n,t[14],l[0][2]),n=p.CC(p.FF,h[15],n,r,i,e,t[15],l[0][3]),e=p.CC(p.GG,h[16],e,n,r,i,t[1],l[1][0]),i=p.CC(p.GG,h[17],i,e,n,r,t[6],l[1][1]),r=p.CC(p.GG,h[18],r,i,e,n,t[11],l[1][2]),n=p.CC(p.GG,h[19],n,r,i,e,t[0],l[1][3]),e=p.CC(p.GG,h[20],e,n,r,i,t[5],l[1][0]),i=p.CC(p.GG,h[21],i,e,n,r,t[10],l[1][1]),r=p.CC(p.GG,h[22],r,i,e,n,t[15],l[1][2]),n=p.CC(p.GG,h[23],n,r,i,e,t[4],l[1][3]),e=p.CC(p.GG,h[24],e,n,r,i,t[9],l[1][0]),i=p.CC(p.GG,h[25],i,e,n,r,t[14],l[1][1]),r=p.CC(p.GG,h[26],r,i,e,n,t[3],l[1][2]),n=p.CC(p.GG,h[27],n,r,i,e,t[8],l[1][3]),e=p.CC(p.GG,h[28],e,n,r,i,t[13],l[1][0]),i=p.CC(p.GG,h[29],i,e,n,r,t[2],l[1][1]),r=p.CC(p.GG,h[30],r,i,e,n,t[7],l[1][2]),n=p.CC(p.GG,h[31],n,r,i,e,t[12],l[1][3]),e=p.CC(p.HH,h[32],e,n,r,i,t[5],l[2][0]),i=p.CC(p.HH,h[33],i,e,n,r,t[8],l[2][1]),r=p.CC(p.HH,h[34],r,i,e,n,t[11],l[2][2]),n=p.CC(p.HH,h[35],n,r,i,e,t[14],l[2][3]),e=p.CC(p.HH,h[36],e,n,r,i,t[1],l[2][0]),i=p.CC(p.HH,h[37],i,e,n,r,t[4],l[2][1]),r=p.CC(p.HH,h[38],r,i,e,n,t[7],l[2][2]),n=p.CC(p.HH,h[39],n,r,i,e,t[10],l[2][3]),e=p.CC(p.HH,h[40],e,n,r,i,t[13],l[2][0]),i=p.CC(p.HH,h[41],i,e,n,r,t[0],l[2][1]),r=p.CC(p.HH,h[42],r,i,e,n,t[3],l[2][2]),n=p.CC(p.HH,h[43],n,r,i,e,t[6],l[2][3]),e=p.CC(p.HH,h[44],e,n,r,i,t[9],l[2][0]),i=p.CC(p.HH,h[45],i,e,n,r,t[12],l[2][1]),r=p.CC(p.HH,h[46],r,i,e,n,t[15],l[2][2]),n=p.CC(p.HH,h[47],n,r,i,e,t[2],l[2][3]),e=p.CC(p.II,h[48],e,n,r,i,t[0],l[3][0]),i=p.CC(p.II,h[49],i,e,n,r,t[7],l[3][1]),r=p.CC(p.II,h[50],r,i,e,n,t[14],l[3][2]),n=p.CC(p.II,h[51],n,r,i,e,t[5],l[3][3]),e=p.CC(p.II,h[52],e,n,r,i,t[12],l[3][0]),i=p.CC(p.II,h[53],i,e,n,r,t[3],l[3][1]),r=p.CC(p.II,h[54],r,i,e,n,t[10],l[3][2]),n=p.CC(p.II,h[55],n,r,i,e,t[1],l[3][3]),e=p.CC(p.II,h[56],e,n,r,i,t[8],l[3][0]),i=p.CC(p.II,h[57],i,e,n,r,t[15],l[3][1]),r=p.CC(p.II,h[58],r,i,e,n,t[6],l[3][2]),n=p.CC(p.II,h[59],n,r,i,e,t[13],l[3][3]),e=p.CC(p.II,h[60],e,n,r,i,t[4],l[3][0]),i=p.CC(p.II,h[61],i,e,n,r,t[11],l[3][1]),r=p.CC(p.II,h[62],r,i,e,n,t[2],l[3][2]),n=p.CC(p.II,h[63],n,r,i,e,t[9],l[3][3]),this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),o(r,n),n=p;function p(){return function(t){if(!(t instanceof p))throw new TypeError("Cannot call a class as a function")}(this),t=this,!(e=a(p).apply(this,arguments))||"object"!==i(e)&&"function"!=typeof e?function(){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():e;var t,e}e.a=n},function(t,e,n){"use strict";var r=n(3),u=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var c=[1518500249,1859775393,2400959708,3395469782],r=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(l,r.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(l.prototype,[{key:"reset",value:function(){o(s(l.prototype),"reset",this).call(this),this.state.hash=[1732584193,-271733879,-1732584194,271733878,-1009589776]}},{key:"processBlock",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0;s<this.options.rounds;s++){this.W[s]=s<16?0|t[s]:0|Object(u.a)(this.W[s-3]^this.W[s-8]^this.W[s-14]^this.W[s-16],1);var a=Object(u.a)(e,5)+o+this.W[s]+c[s/20>>0]|0,a=s<20?a+(n&r|~n&i)|0:!(s<40)&&s<60?a+(n&r|n&i|r&i)|0:a+(n^r^i)|0,o=i,i=r,r=0|Object(u.a)(n,30),n=e,e=a}this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),l);function l(t){var e;return function(t){if(!(t instanceof l))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=s(l).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).options.rounds=t.options.rounds||80,t.W=new Array(80),t}e.a=r},function(t,e,n){"use strict";var c=n(0),n=n(3);function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function i(t,e,n){return(i="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=o(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function o(t){return(o=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a=new Array(256),u=[104,208,235,43,72,157,106,228,227,163,86,129,125,241,133,158,44,142,120,202,23,169,97,213,93,11,140,60,119,81,34,66,63,84,65,128,204,134,179,24,46,87,6,98,244,54,209,107,27,101,117,16,218,73,38,249,203,102,231,186,174,80,82,171,5,240,13,115,59,4,32,254,221,245,180,95,10,181,192,160,113,165,45,96,114,147,57,8,131,33,92,135,177,224,0,195,18,145,138,2,28,230,69,194,196,253,191,68,161,76,51,197,132,35,124,176,37,21,53,105,255,148,77,112,162,175,205,214,108,183,248,9,243,103,164,234,236,182,212,210,20,30,225,36,56,198,219,75,122,58,222,94,223,149,252,170,215,206,7,15,61,88,154,152,156,242,167,17,126,139,67,3,226,220,229,178,78,199,109,233,39,64,216,55,146,143,1,29,83,62,89,193,79,50,22,250,116,251,99,159,52,26,42,90,141,201,207,246,144,40,136,155,49,14,189,74,232,150,166,12,200,121,188,190,239,110,70,151,91,237,25,217,172,153,168,41,100,31,173,85,19,187,247,111,185,71,47,238,184,123,137,48,211,127,118,130],l=[1,11,9,12,13,6,15,3,14,8,7,4,10,2,5,0],h=[7,12,11,13,14,4,9,15,6,3,8,10,2,5,1,0],f=new Array(16),p=[1,1,4,1,8,5,2,9],d=[1,1,3,1,5,8,9,5],g=new Array(512),m=new Array(22),v=new Array(512),y=new Array(22),b=new Array(512),w=new Array(22);function _(t,e){for(var n=new Array(512),r=new Array(22),i=0;i<8;i++)n[i]=[];for(var o=0;o<256;o++){var s=new Array(10);s[1]=t[o],s[2]=s[1]<<1,256<=s[2]&&(s[2]^=285),s[3]=s[2]^s[1],s[4]=s[2]<<1,256<=s[4]&&(s[4]^=285),s[5]=s[4]^s[1],s[8]=s[4]<<1,256<=s[8]&&(s[8]^=285),s[9]=s[8]^s[1],n[0][2*o]=s[e[0]]<<24|s[e[1]]<<16|s[e[2]]<<8|s[e[3]],n[0][2*o+1]=s[e[4]]<<24|s[e[5]]<<16|s[e[6]]<<8|s[e[7]];for(var a=1;a<8;a++)n[a][2*o]=Object(c.d)(n[0][2*o+1],n[0][2*o],a<<3),n[a][2*o+1]=Object(c.c)(n[0][2*o+1],n[0][2*o],a<<3)}r[0]=0,r[1]=0;for(var u=1;u<=10;u++)r[2*u]=4278190080&n[0][16*u-16]^16711680&n[1][16*u-14]^65280&n[2][16*u-12]^255&n[3][16*u-10],r[2*u+1]=4278190080&n[4][16*u-7]^16711680&n[5][16*u-5]^65280&n[6][16*u-3]^255&n[7][16*u-1];return[n,r]}!function(){!function(){for(var t=0;t<16;t++)f[l[t]]=0|t;for(var e=0;e<256;e++){var n=l[e>>4],r=f[15&e],i=h[n^r];a[e]=l[n^i]<<4|f[r^i]}}();var t=_(u,d);v=t[0],y=t[1],t=_(a,d),b=t[0],w=t[1],t=_(a,p),g=t[0],m=t[1]}();(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&s(t,e)})(x,n.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(x.prototype,[{key:"reset",value:function(){i(o(x.prototype),"reset",this).call(this),this.state.hash=new Array(16);for(var t=0;t<16;t++)this.state.hash[t]=0}},{key:"processBlock",value:function(t){for(var e=new Array(16),n=[],r=0;r<16;r++)n[r]=t[r]^(e[r]=this.state.hash[r])|0;for(var i=[],o=1;o<=this.options.rounds;o++){for(var s=0;s<8;s++){i[2*s]=0;for(var a=i[2*s+1]=0,u=56,c=0;a<8;a++,c=(u-=8)<32?1:0)i[2*s]^=this.C[a][2*(e[2*(s-a&7)+c]>>>u%32&255)],i[2*s+1]^=this.C[a][2*(e[2*(s-a&7)+c]>>>u%32&255)+1]}for(var l=0;l<16;l++)e[l]=i[l];e[0]^=this.RC[2*o],e[1]^=this.RC[2*o+1];for(var h=0;h<8;h++){i[2*h]=e[2*h],i[2*h+1]=e[2*h+1];for(var f=0,p=56,d=0;f<8;f++,d=(p-=8)<32?1:0)i[2*h]^=this.C[f][2*(n[2*(h-f&7)+d]>>>p%32&255)],i[2*h+1]^=this.C[f][2*(n[2*(h-f&7)+d]>>>p%32&255)+1]}for(var g=0;g<16;g++)n[g]=i[g]}for(var m=0;m<16;m++)this.state.hash[m]^=n[m]^t[m]}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<32?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),n=x;function x(t){var e,n;switch(function(t){if(!(t instanceof x))throw new TypeError("Cannot call a class as a function")}(this),(t=t||{}).type=t.type||"",t.rounds=t.rounds||10,n=this,(e=!(t=o(x).call(this,t))||"object"!==r(t)&&"function"!=typeof t?function(){if(void 0!==n)return n;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).options.type){case"0":case 0:e.C=v,e.RC=y;break;case"t":e.C=b,e.RC=w;break;default:e.C=g,e.RC=m}return e}e.a=n},function(t,e,n){"use strict";function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function i(t){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function o(t,e){return(o=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)})(s,n(4).a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(s.prototype,[{key:"process",value:function(){for(;this.state.message.length>=this.blockSizeInBytes;){this.blockUnits=new Array(this.blockSizeInBytes);for(var t=0;t<this.blockSizeInBytes;t++)this.blockUnits[t]=0|this.state.message.charCodeAt(t);this.state.message=this.state.message.substr(this.blockSizeInBytes),this.processBlock(this.blockUnits)}}},{key:"processBlock",value:function(t){}},{key:"getStateHash",value:function(t){t=t||this.state.hash.length;for(var e="",n=0;n<t;n++)e+=String.fromCharCode(255&this.state.hash[n]);return e}}]),n=s;function s(t){var e;return function(t){if(!(t instanceof s))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=i(s).call(this,t))||"object"!==r(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).unitSize=1,t.blockSizeInBytes=t.blockSize*t.unitSize,t.blockUnits=[],t}function a(t){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function u(t,e,n){return(u="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=c(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function c(t){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function l(t,e){return(l=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var h=[41,46,67,201,162,216,124,1,61,54,84,161,236,240,6,19,98,167,5,243,192,199,115,140,152,147,43,217,188,76,130,202,30,155,87,60,253,212,224,22,103,66,111,24,138,23,229,18,190,78,196,214,218,158,222,73,160,251,245,142,187,47,238,122,169,104,121,145,21,178,7,63,148,194,16,137,11,34,95,33,128,127,93,154,90,144,50,39,53,62,204,231,191,247,151,3,255,25,48,179,72,165,181,209,215,94,146,42,172,86,170,198,79,184,56,210,150,164,125,182,118,252,107,226,156,116,4,241,69,157,112,89,100,113,135,32,134,91,207,101,230,45,168,2,27,96,37,173,174,176,185,246,28,70,97,105,52,64,126,15,85,71,163,35,221,81,175,58,195,92,249,206,186,197,234,38,44,83,13,110,133,40,132,9,211,223,205,244,65,129,77,82,106,220,55,200,108,193,171,250,36,225,123,8,12,189,177,74,120,136,149,139,227,99,232,109,233,203,213,254,59,0,29,57,242,239,183,14,102,88,208,228,166,119,114,248,235,117,75,10,49,68,80,180,143,237,31,26,219,153,141,51,159,17,131,20],n=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),l(t,e)}(f,n),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(f.prototype,[{key:"reset",value:function(){u(c(f.prototype),"reset",this).call(this),this.state.hash=new Array(48),this.state.checksum=new Array(16)}},{key:"processBlock",value:function(t){for(var e=0;e<16;e++)this.state.hash[16+e]=0|t[e],this.state.hash[32+e]=t[e]^this.state.hash[e];for(var n=0,r=0;r<this.options.rounds;r++){for(var i=0;i<48;i++)n=this.state.hash[i]^=h[n];n=n+r&255}for(var n=255&this.state.checksum[15],o=0;o<16;o++)n=this.state.checksum[o]^=h[t[o]^n]}},{key:"finalize",value:function(){this.addPaddingPKCS7(16-(15&this.state.message.length)|0),this.process();for(var t=0;t<16;t++)this.state.message+=String.fromCharCode(this.state.checksum[t]);return this.process(),this.getStateHash(16)}}]),f);function f(t){var e;return function(t){if(!(t instanceof f))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=c(f).call(this,t))||"object"!==a(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).options.rounds=t.options.rounds||18,t}e.a=n},function(t,e,n){"use strict";var r=n(5),c=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var l=[0,1518500249,1859775393,2400959708],h=[5,11,7,15,6,13,8,14,7,12,9,11,8,15,6,12,9,14,5,13],f=[10,17,25,30],p=[18,0,1,2,3,19,4,5,6,7,16,8,9,10,11,17,12,13,14,15,22,3,6,9,12,23,15,2,5,8,20,11,14,1,4,21,7,10,13,0,26,12,5,14,7,27,0,9,2,11,24,4,13,6,15,25,8,1,10,3,30,7,2,13,8,31,3,14,9,4,28,15,10,5,0,29,11,6,1,12],r=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(u,r.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(u.prototype,[{key:"reset",value:function(){o(s(u.prototype),"reset",this).call(this),this.state.hash=[1732584193,4023233417,2562383102,271733878,3285377520]}},{key:"processBlock",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0;s<16;s++)this.W[s]=0|t[s];this.W[16]=this.W[0]^this.W[1]^this.W[2]^this.W[3]|0,this.W[17]=this.W[4]^this.W[5]^this.W[6]^this.W[7]|0,this.W[18]=this.W[8]^this.W[9]^this.W[10]^this.W[11]|0,this.W[19]=this.W[12]^this.W[13]^this.W[14]^this.W[15]|0,this.W[20]=this.W[3]^this.W[6]^this.W[9]^this.W[12]|0,this.W[21]=this.W[2]^this.W[5]^this.W[8]^this.W[15]|0,this.W[22]=this.W[1]^this.W[4]^this.W[11]^this.W[14]|0,this.W[23]=this.W[0]^this.W[7]^this.W[10]^this.W[13]|0,this.W[24]=this.W[5]^this.W[7]^this.W[12]^this.W[14]|0,this.W[25]=this.W[0]^this.W[2]^this.W[9]^this.W[11]|0,this.W[26]=this.W[4]^this.W[6]^this.W[13]^this.W[15]|0,this.W[27]=this.W[1]^this.W[3]^this.W[8]^this.W[10]|0,this.W[28]=this.W[2]^this.W[7]^this.W[8]^this.W[13]|0,this.W[29]=this.W[3]^this.W[4]^this.W[9]^this.W[14]|0,this.W[30]=this.W[0]^this.W[5]^this.W[10]^this.W[15]|0,this.W[31]=this.W[1]^this.W[6]^this.W[11]^this.W[12]|0;for(var a=0;a<this.options.rounds;a++)var u=Object(c.a)(e,h[a%20])+o+this.W[p[a]]+l[a/20>>0]|0,u=a<20?u+(n&r|~n&i)|0:!(a<40)&&a<60?u+(r^(n|~i))|0:u+(n^r^i)|0,o=i,i=r,r=0|Object(c.a)(n,f[a/20>>0]),n=e,e=u;this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),u);function u(t){var e;return function(t){if(!(t instanceof u))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=s(u).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).options.rounds=t.options.rounds||80,t.W=new Array(32),t}e.a=r},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function r(t){for(var e="",n=t.length-t.length%3|0,r=0,i=0;i<n;i+=3)r=t.charCodeAt(i)<<16|t.charCodeAt(i+1)<<8|t.charCodeAt(i+2),e+=o.charAt(r>>18)+o.charAt(r>>12&63)+o.charAt(r>>6&63)+o.charAt(63&r);return t.length-n==2?(r=t.charCodeAt(n)<<16|t.charCodeAt(1+n)<<8,e+=o.charAt(r>>18)+o.charAt(r>>12&63)+o.charAt(r>>6&63)+"="):t.length-n==1&&(r=t.charCodeAt(n)<<16,e+=o.charAt(r>>18)+o.charAt(r>>12&63)+"=="),e}},function(t,e,n){"use strict";var r=n(5),u=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function s(t,e,n){return(s="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=a(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function a(t){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function c(t,e){return(c=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var l=[[3,7,11,19],[3,5,9,13],[3,9,11,15]],h=1518500249,f=1859775393,n=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&c(t,e)}(p,r.a),n=[{key:"FF",value:function(t,e,n){return t&e|~t&n}},{key:"GG",value:function(t,e,n){return t&e|t&n|e&n}},{key:"HH",value:function(t,e,n){return t^e^n}},{key:"CC",value:function(t,e,n,r,i,o,s,a){return 0|Object(u.a)(n+t(r,i,o)+s+e,a)}}],o((r=p).prototype,[{key:"reset",value:function(){s(a(p.prototype),"reset",this).call(this),this.state.hash=[1732584193,-271733879,-1732584194,271733878]}},{key:"processBlock",value:function(t){var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],e=p.CC(p.FF,0,e,n,r,i,t[0],l[0][0]),i=p.CC(p.FF,0,i,e,n,r,t[1],l[0][1]),r=p.CC(p.FF,0,r,i,e,n,t[2],l[0][2]),n=p.CC(p.FF,0,n,r,i,e,t[3],l[0][3]);e=p.CC(p.FF,0,e,n,r,i,t[4],l[0][0]),i=p.CC(p.FF,0,i,e,n,r,t[5],l[0][1]),r=p.CC(p.FF,0,r,i,e,n,t[6],l[0][2]),n=p.CC(p.FF,0,n,r,i,e,t[7],l[0][3]),e=p.CC(p.FF,0,e,n,r,i,t[8],l[0][0]),i=p.CC(p.FF,0,i,e,n,r,t[9],l[0][1]),r=p.CC(p.FF,0,r,i,e,n,t[10],l[0][2]),n=p.CC(p.FF,0,n,r,i,e,t[11],l[0][3]),e=p.CC(p.FF,0,e,n,r,i,t[12],l[0][0]),i=p.CC(p.FF,0,i,e,n,r,t[13],l[0][1]),r=p.CC(p.FF,0,r,i,e,n,t[14],l[0][2]),n=p.CC(p.FF,0,n,r,i,e,t[15],l[0][3]),e=p.CC(p.GG,h,e,n,r,i,t[0],l[1][0]),i=p.CC(p.GG,h,i,e,n,r,t[4],l[1][1]),r=p.CC(p.GG,h,r,i,e,n,t[8],l[1][2]),n=p.CC(p.GG,h,n,r,i,e,t[12],l[1][3]),e=p.CC(p.GG,h,e,n,r,i,t[1],l[1][0]),i=p.CC(p.GG,h,i,e,n,r,t[5],l[1][1]),r=p.CC(p.GG,h,r,i,e,n,t[9],l[1][2]),n=p.CC(p.GG,h,n,r,i,e,t[13],l[1][3]),e=p.CC(p.GG,h,e,n,r,i,t[2],l[1][0]),i=p.CC(p.GG,h,i,e,n,r,t[6],l[1][1]),r=p.CC(p.GG,h,r,i,e,n,t[10],l[1][2]),n=p.CC(p.GG,h,n,r,i,e,t[14],l[1][3]),e=p.CC(p.GG,h,e,n,r,i,t[3],l[1][0]),i=p.CC(p.GG,h,i,e,n,r,t[7],l[1][1]),r=p.CC(p.GG,h,r,i,e,n,t[11],l[1][2]),n=p.CC(p.GG,h,n,r,i,e,t[15],l[1][3]),e=p.CC(p.HH,f,e,n,r,i,t[0],l[2][0]),i=p.CC(p.HH,f,i,e,n,r,t[8],l[2][1]),r=p.CC(p.HH,f,r,i,e,n,t[4],l[2][2]),n=p.CC(p.HH,f,n,r,i,e,t[12],l[2][3]),e=p.CC(p.HH,f,e,n,r,i,t[2],l[2][0]),i=p.CC(p.HH,f,i,e,n,r,t[10],l[2][1]),r=p.CC(p.HH,f,r,i,e,n,t[6],l[2][2]),n=p.CC(p.HH,f,n,r,i,e,t[14],l[2][3]),e=p.CC(p.HH,f,e,n,r,i,t[1],l[2][0]),i=p.CC(p.HH,f,i,e,n,r,t[9],l[2][1]),r=p.CC(p.HH,f,r,i,e,n,t[5],l[2][2]),n=p.CC(p.HH,f,n,r,i,e,t[13],l[2][3]),e=p.CC(p.HH,f,e,n,r,i,t[3],l[2][0]),i=p.CC(p.HH,f,i,e,n,r,t[11],l[2][1]),r=p.CC(p.HH,f,r,i,e,n,t[7],l[2][2]),n=p.CC(p.HH,f,n,r,i,e,t[15],l[2][3]),this.state.hash=[this.state.hash[0]+e|0,this.state.hash[1]+n|0,this.state.hash[2]+r|0,this.state.hash[3]+i|0]}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),o(r,n),p);function p(){return function(t){if(!(t instanceof p))throw new TypeError("Cannot call a class as a function")}(this),t=this,!(e=a(p).apply(this,arguments))||"object"!==i(e)&&"function"!=typeof e?function(){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():e;var t,e}e.a=n},function(t,e,n){"use strict";var r=n(3),u=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var c=[1518500249,1859775393,2400959708,3395469782],r=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(l,r.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(l.prototype,[{key:"reset",value:function(){o(s(l.prototype),"reset",this).call(this),this.state.hash=[1732584193,-271733879,-1732584194,271733878,-1009589776]}},{key:"processBlock",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0;s<this.options.rounds;s++){this.W[s]=s<16?0|t[s]:this.W[s-3]^this.W[s-8]^this.W[s-14]^this.W[s-16]|0;var a=Object(u.a)(e,5)+o+this.W[s]+c[s/20>>0]|0,a=s<20?a+(n&r|~n&i)|0:!(s<40)&&s<60?a+(n&r|n&i|r&i)|0:a+(n^r^i)|0,o=i,i=r,r=0|Object(u.a)(n,30),n=e,e=a}this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),l);function l(t){var e;return function(t){if(!(t instanceof l))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=s(l).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).options.rounds=t.options.rounds||80,t.W=new Array(80),t}e.a=r},function(t,e,n){"use strict";function r(t){for(var e="",n=new Uint8Array(t),r=0;r<n.length;r++)e+=String.fromCharCode(n[r]);return e}n.d(e,"a",function(){return r})},,function(t,e,n){"use strict";var r=(function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(i.prototype,[{key:"update",value:function(t){this.hasher.update(t)}},{key:"finalize",value:function(){var t=this.hasher.finalize();return this.hasher.reset(),this.hasher.update(this.oPad),this.hasher.update(t),this.hasher.finalize()}}]),i);function i(t,e){!function(t){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")}(this),t.length>e.blockSizeInBytes&&(e.update(t),t=e.finalize(),e.reset());for(var n=t.length;n<e.blockSizeInBytes;n++)t+="\0";this.oPad="";for(var r=0;r<t.length;r++)e.update(String.fromCharCode(54^t.charCodeAt(r))),this.oPad+=String.fromCharCode(92^t.charCodeAt(r));this.hasher=e}e.a=r},,,,,,,,,function(t,e,n){"use strict";n.r(e);var r=n(14),i=n(13),o=n(16),s=n(10),a=n(8),u=n(17),c=n(11),l=n(7),h=n(6),f=n(9),p=n(12),d=n(1),g=n(18),m=n(2),v=n(15),y=n(20);(function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}})(b.prototype,[{key:"getHasher",value:function(t,e){switch(e=e||{},t){case"has160":return new r.a(e);case"md2":return new i.a(e);case"md4":return new o.a(e);case"md5":return new s.a(e);case"ripemd128":return e=Object.assign({},{length:128},e),new a.a(e);case"ripemd":case"ripemd160":return e=Object.assign({},{length:160},e),new a.a(e);case"ripemd256":return e=Object.assign({},{length:256},e),new a.a(e);case"ripemd320":return e=Object.assign({},{length:320},e),new a.a(e);case"sha0":return new u.a(e);case"sha1":return new c.a(e);case"sha224":return e=Object.assign({},{length:224},e),new l.a(e);case"sha256":return e=Object.assign({},{length:256},e),new l.a(e);case"sha384":return e=Object.assign({},{length:384},e),new h.a(e);case"sha512":return e=Object.assign({},{length:512},e),new h.a(e);case"sha512/224":return e=Object.assign({},{length:224},e),new h.a(e);case"sha512/256":return e=Object.assign({},{length:256},e),new h.a(e);case"snefru":case"snefru128":case"snefru128/8":return e=Object.assign({},{length:128},e),new f.a(e);case"snefru256":case"snefru256/8":return e=Object.assign({},{length:256},e),new f.a(e);case"snefru128/2":return e=Object.assign({},{length:128,rounds:2},e),new f.a(e);case"snefru256/4":return e=Object.assign({},{length:256,rounds:4},e),new f.a(e);case"whirlpool":return new p.a(e);case"whirlpool-0":return e=Object.assign({},{type:"0"},e),new p.a(e);case"whirlpool-t":return e=Object.assign({},{type:"t"},e),new p.a(e)}}},{key:"hash",value:function(t,e,n){n=this.getHasher(t,n=n||{});return n.update(Object(d.a)(e)),Object(m.a)(n.finalize())}},{key:"getHmac",value:function(t,e){return new y.a(t,e)}},{key:"hmac",value:function(t,e,n){n=this.getHmac(Object(d.a)(t),n);return n.update(Object(d.a)(e)),Object(m.a)(n.finalize())}}]),n=b;function b(){!function(t){if(!(t instanceof b))throw new TypeError("Cannot call a class as a function")}(this),this.encoder={},this.encoder.fromUtf=d.a,this.encoder.fromArrayBuffer=g.a,this.encoder.toHex=m.a,this.encoder.toBase64=v.a}n=new n,e.default=n}]).default;!function(s){"use strict";var n={page:1,pageSize:200,total:0,showTotal:!1,totalTxt:"",noData:!1,showSkip:!1,showPN:!0,prevPage:"上一页",nextPage:"下一页",fastForward:0,selectOption:[],backFun:function(t){}};function e(t,e){this.element=s(t),this.settings=s.extend({},n,e),this.pageNum=1,this.pageList=[],this.pageTatol=0,this.init()}s.extend(e.prototype,{init:function(){this.element.empty(),this.viewHtml(),this.clickBtn()},creatHtml:function(t){t==this.settings.page?this.pageList.push('<button class="active" data-page='+t+">"+t+"</button>"):this.pageList.push("<button data-page="+t+">"+t+"</button>")},viewHtml:function(){var t=this.settings,e=0,n=[];if(0<t.total)e=Math.ceil(t.total/t.pageSize);else{if(!t.noData)return;t.page=e=1,t.total=0}if(this.pageTatol=e,this.pageNum=t.page,t.showTotal&&n.push('<div class="spage-total">'+t.totalTxt+"</div>"),n.push('<div class="spage-number">'),this.pageList=[],t.showPN&&(1==t.page?this.pageList.push('<button class="button-disabled" data-page="prev"><i class="prevBtn"></i></button>'):this.pageList.push('<button data-page="prev"><i class="prevBtn"></i></button>')),e<=6)for(var r=1;r<e+1;r++)this.creatHtml(r);else if(t.page<3){for(r=1;r<=3;r++)this.creatHtml(r);this.pageList.push('<button data-page="after" class="spage-after">...</button><button data-page='+e+">"+e+"</button>")}else if(t.page>e-3){this.pageList.push('<button data-page="1">1</button><button data-page="before" class="spage-before">...</button>');for(r=e-3;r<=e;r++)this.creatHtml(r)}else{this.pageList.push('<button data-page="1">1</button>'),3<t.page&&this.pageList.push('<button data-page="before" class="spage-before">...</button>');for(r=t.page-1;r<=Number(t.page)+1;r++)this.creatHtml(r);t.page<=e-3&&this.pageList.push('<button data-page="after" class="spage-after">...</button>'),this.pageList.push("<button data-page="+e+">"+e+"</button>")}if(t.showPN&&(t.page==e?this.pageList.push('<button class="button-disabled" data-page="next"><i class="nextBtn"></i></button>'):this.pageList.push('<button data-page="next"><i class="nextBtn"></i></button>')),n.push(this.pageList.join("")),n.push("</div>"),0<t.selectOption.length){for(var i='<select class="selectNum" id="selectNum">',o=0;o<=t.selectOption.length-1;o++)i+="<option value="+t.selectOption[o]+" ",t.pageSize===t.selectOption[o]?i+="selected>"+t.selectOption[o]+"行/页</option>":i+=">"+t.selectOption[o]+"行/页</option>";n.push(i+="</select>")}t.showSkip&&n.push('<div class="spage-skip">跳至 <input type="text" class="luckysheet-mousedown-cancel" value="'+t.page+'"/> 页  </div>'),this.element.html(n.join(""))},clickBtn:function(){var n=this,r=this.settings,i=this.element,o=this.pageTatol;this.element.on("change","select",function(t){var e=parseInt(document.getElementById("selectNum").value);r.pageSize=e,r.page=1,n.element.empty(),n.viewHtml(),r.backFun(r)}),this.element.off("click","button"),this.element.on("click","button",function(){var t=s(this).data("page");switch(t){case"prev":r.page=1<=r.page-1?r.page-1:1,t=r.page;break;case"next":r.page=Number(r.page)+1<=o?Number(r.page)+1:o,t=r.page;break;case"before":r.page=1<=r.page-r.fastForward?r.page-r.fastForward:1,t=r.page;break;case"after":r.page=Number(r.page)+Number(r.fastForward)<=o?Number(r.page)+Number(r.fastForward):o,t=r.page;break;case"go":var e=parseInt(i.find("input").val());if(!(/^[0-9]*$/.test(e)&&1<=e&&e<=o))return;t=r.page=e;break;default:r.page=t}t!=n.pageNum&&(n.pageNum=r.page,n.viewHtml(),r.backFun(r))}),this.element.off("keyup","input"),this.element.on("keyup","input",function(t){13==t.keyCode&&(t=parseInt(i.find("input").val()),/^[0-9]*$/.test(t)&&1<=t&&t<=o&&t!=n.pageNum&&(r.page=t,n.pageNum=t,n.viewHtml(),r.backFun(r)))}),0<r.fastForward&&(i.find(".spage-after").hover(function(){s(this).html("»")},function(){s(this).html("...")}),i.find(".spage-before").hover(function(){s(this).html("«")},function(){s(this).html("...")}))}}),s.fn.sPage=function(t){return this.each(function(){new e(this,t)})}}(jQuery,(window,document)); \ No newline at end of file +!function(t,e){"object"==typeof module&&"object"==typeof module.exports?module.exports=t.document?e(t,!0):function(t){if(!t.document)throw new Error("jQuery requires a window with a document");return e(t)}:e(t)}("undefined"!=typeof window?window:this,function(_,t){function e(t,e){return e.toUpperCase()}var n=[],x=_.document,l=n.slice,g=n.concat,a=n.push,i=n.indexOf,r={},o=r.toString,d=r.hasOwnProperty,m={},s="2.2.4",C=function(t,e){return new C.fn.init(t,e)},u=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,c=/^-ms-/,h=/-([\da-z])/gi;function f(t){var e=!!t&&"length"in t&&t.length,n=C.type(t);return"function"!==n&&!C.isWindow(t)&&("array"===n||0===e||"number"==typeof e&&0<e&&e-1 in t)}C.fn=C.prototype={jquery:s,constructor:C,selector:"",length:0,toArray:function(){return l.call(this)},get:function(t){return null!=t?t<0?this[t+this.length]:this[t]:l.call(this)},pushStack:function(t){t=C.merge(this.constructor(),t);return t.prevObject=this,t.context=this.context,t},each:function(t){return C.each(this,t)},map:function(n){return this.pushStack(C.map(this,function(t,e){return n.call(t,e,t)}))},slice:function(){return this.pushStack(l.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(t){var e=this.length,t=+t+(t<0?e:0);return this.pushStack(0<=t&&t<e?[this[t]]:[])},end:function(){return this.prevObject||this.constructor()},push:a,sort:n.sort,splice:n.splice},C.extend=C.fn.extend=function(){var t,e,n,r,i,o=arguments[0]||{},s=1,a=arguments.length,u=!1;for("boolean"==typeof o&&(u=o,o=arguments[s]||{},s++),"object"==typeof o||C.isFunction(o)||(o={}),s===a&&(o=this,s--);s<a;s++)if(null!=(t=arguments[s]))for(e in t)i=o[e],n=t[e],o!==n&&(u&&n&&(C.isPlainObject(n)||(r=C.isArray(n)))?(i=r?(r=!1,i&&C.isArray(i)?i:[]):i&&C.isPlainObject(i)?i:{},o[e]=C.extend(u,i,n)):void 0!==n&&(o[e]=n));return o},C.extend({expando:"jQuery"+(s+Math.random()).replace(/\D/g,""),isReady:!0,error:function(t){throw new Error(t)},noop:function(){},isFunction:function(t){return"function"===C.type(t)},isArray:Array.isArray,isWindow:function(t){return null!=t&&t===t.window},isNumeric:function(t){var e=t&&t.toString();return!C.isArray(t)&&0<=e-parseFloat(e)+1},isPlainObject:function(t){if("object"!==C.type(t)||t.nodeType||C.isWindow(t))return!1;if(t.constructor&&!d.call(t,"constructor")&&!d.call(t.constructor.prototype||{},"isPrototypeOf"))return!1;for(var e in t);return void 0===e||d.call(t,e)},isEmptyObject:function(t){for(var e in t)return!1;return!0},type:function(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?r[o.call(t)]||"object":typeof t},globalEval:function(t){var e,n=eval;(t=C.trim(t))&&(1===t.indexOf("use strict")?((e=x.createElement("script")).text=t,x.head.appendChild(e).parentNode.removeChild(e)):n(t))},camelCase:function(t){return t.replace(c,"ms-").replace(h,e)},nodeName:function(t,e){return t.nodeName&&t.nodeName.toLowerCase()===e.toLowerCase()},each:function(t,e){var n,r=0;if(f(t))for(n=t.length;r<n&&!1!==e.call(t[r],r,t[r]);r++);else for(r in t)if(!1===e.call(t[r],r,t[r]))break;return t},trim:function(t){return null==t?"":(t+"").replace(u,"")},makeArray:function(t,e){e=e||[];return null!=t&&(f(Object(t))?C.merge(e,"string"==typeof t?[t]:t):a.call(e,t)),e},inArray:function(t,e,n){return null==e?-1:i.call(e,t,n)},merge:function(t,e){for(var n=+e.length,r=0,i=t.length;r<n;r++)t[i++]=e[r];return t.length=i,t},grep:function(t,e,n){for(var r=[],i=0,o=t.length,s=!n;i<o;i++)!e(t[i],i)!=s&&r.push(t[i]);return r},map:function(t,e,n){var r,i,o=0,s=[];if(f(t))for(r=t.length;o<r;o++)null!=(i=e(t[o],o,n))&&s.push(i);else for(o in t)i=e(t[o],o,n),null!=i&&s.push(i);return g.apply([],s)},guid:1,proxy:function(t,e){var n,r;return"string"==typeof e&&(r=t[e],e=t,t=r),C.isFunction(t)?(n=l.call(arguments,2),(r=function(){return t.apply(e||this,n.concat(l.call(arguments)))}).guid=t.guid=t.guid||C.guid++,r):void 0},now:Date.now,support:m}),"function"==typeof Symbol&&(C.fn[Symbol.iterator]=n[Symbol.iterator]),C.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(t,e){r["[object "+e+"]"]=e.toLowerCase()});var p=function(n){function h(t,e,n){var r="0x"+e-65536;return r!=r||n?e:r<0?String.fromCharCode(65536+r):String.fromCharCode(r>>10|55296,1023&r|56320)}function e(){x()}var t,d,w,o,r,g,f,m,_,u,c,x,C,i,k,v,s,a,y,S="sizzle"+ +new Date,b=n.document,O=0,l=0,p=it(),E=it(),T=it(),A=function(t,e){return t===e&&(c=!0),0},I={}.hasOwnProperty,j=[],P=j.pop,D=j.push,N=j.push,R=j.slice,M=function(t,e){for(var n=0,r=t.length;n<r;n++)if(t[n]===e)return n;return-1},W="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",H="\\["+L+"*("+F+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+F+"))|)"+L+"*\\]",B=":("+F+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+H+")*)|.*)\\)|)",q=new RegExp(L+"+","g"),z=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),U=new RegExp("^"+L+"*,"+L+"*"),G=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),V=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),$=new RegExp(B),X=new RegExp("^"+F+"$"),Y={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),TAG:new RegExp("^("+F+"|[*])"),ATTR:new RegExp("^"+H),PSEUDO:new RegExp("^"+B),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+W+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},K=/^(?:input|select|textarea|button)$/i,Q=/^h\d$/i,J=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,tt=/[+~]/,et=/'|\\/g,nt=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig");try{N.apply(j=R.call(b.childNodes),b.childNodes),j[b.childNodes.length].nodeType}catch(t){N={apply:j.length?function(t,e){D.apply(t,R.call(e))}:function(t,e){for(var n=t.length,r=0;t[n++]=e[r++];);t.length=n-1}}}function rt(t,e,n,r){var i,o,s,a,u,c,l,h,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:b)!==C&&x(e),e=e||C,k)){if(11!==p&&(c=Z.exec(t)))if(i=c[1]){if(9===p){if(!(s=e.getElementById(i)))return n;if(s.id===i)return n.push(s),n}else if(f&&(s=f.getElementById(i))&&y(e,s)&&s.id===i)return n.push(s),n}else{if(c[2])return N.apply(n,e.getElementsByTagName(t)),n;if((i=c[3])&&d.getElementsByClassName&&e.getElementsByClassName)return N.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!T[t+" "]&&(!v||!v.test(t))){if(1!==p)f=e,h=t;else if("object"!==e.nodeName.toLowerCase()){for((a=e.getAttribute("id"))?a=a.replace(et,"\\$&"):e.setAttribute("id",a=S),o=(l=g(t)).length,u=X.test(a)?"#"+a:"[id='"+a+"']";o--;)l[o]=u+" "+ft(l[o]);h=l.join(","),f=tt.test(t)&<(e.parentNode)||e}if(h)try{return N.apply(n,f.querySelectorAll(h)),n}catch(t){}finally{a===S&&e.removeAttribute("id")}}}return m(t.replace(z,"$1"),e,n,r)}function it(){var n=[];function r(t,e){return n.push(t+" ")>w.cacheLength&&delete r[n.shift()],r[t+" "]=e}return r}function ot(t){return t[S]=!0,t}function st(t){var e=C.createElement("div");try{return!!t(e)}catch(t){return!1}finally{e.parentNode&&e.parentNode.removeChild(e),e=null}}function at(t,e){for(var n=t.split("|"),r=n.length;r--;)w.attrHandle[n[r]]=e}function ut(t,e){var n=e&&t,r=n&&1===t.nodeType&&1===e.nodeType&&(~e.sourceIndex||1<<31)-(~t.sourceIndex||1<<31);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===e)return-1;return t?1:-1}function ct(s){return ot(function(o){return o=+o,ot(function(t,e){for(var n,r=s([],t.length,o),i=r.length;i--;)t[n=r[i]]&&(t[n]=!(e[n]=t[n]))})})}function lt(t){return t&&void 0!==t.getElementsByTagName&&t}for(t in d=rt.support={},r=rt.isXML=function(t){t=t&&(t.ownerDocument||t).documentElement;return!!t&&"HTML"!==t.nodeName},x=rt.setDocument=function(t){var t=t?t.ownerDocument||t:b;return t!==C&&9===t.nodeType&&t.documentElement&&(i=(C=t).documentElement,k=!r(C),(t=C.defaultView)&&t.top!==t&&(t.addEventListener?t.addEventListener("unload",e,!1):t.attachEvent&&t.attachEvent("onunload",e)),d.attributes=st(function(t){return t.className="i",!t.getAttribute("className")}),d.getElementsByTagName=st(function(t){return t.appendChild(C.createComment("")),!t.getElementsByTagName("*").length}),d.getElementsByClassName=J.test(C.getElementsByClassName),d.getById=st(function(t){return i.appendChild(t).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(w.find.ID=function(t,e){if(void 0!==e.getElementById&&k){t=e.getElementById(t);return t?[t]:[]}},w.filter.ID=function(t){var e=t.replace(nt,h);return function(t){return t.getAttribute("id")===e}}):(delete w.find.ID,w.filter.ID=function(t){var e=t.replace(nt,h);return function(t){t=void 0!==t.getAttributeNode&&t.getAttributeNode("id");return t&&t.value===e}}),w.find.TAG=d.getElementsByTagName?function(t,e){return void 0!==e.getElementsByTagName?e.getElementsByTagName(t):d.qsa?e.querySelectorAll(t):void 0}:function(t,e){var n,r=[],i=0,o=e.getElementsByTagName(t);if("*"!==t)return o;for(;n=o[i++];)1===n.nodeType&&r.push(n);return r},w.find.CLASS=d.getElementsByClassName&&function(t,e){return void 0!==e.getElementsByClassName&&k?e.getElementsByClassName(t):void 0},s=[],v=[],(d.qsa=J.test(C.querySelectorAll))&&(st(function(t){i.appendChild(t).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",t.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+L+"*(?:''|\"\")"),t.querySelectorAll("[selected]").length||v.push("\\["+L+"*(?:value|"+W+")"),t.querySelectorAll("[id~="+S+"-]").length||v.push("~="),t.querySelectorAll(":checked").length||v.push(":checked"),t.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]")}),st(function(t){var e=C.createElement("input");e.setAttribute("type","hidden"),t.appendChild(e).setAttribute("name","D"),t.querySelectorAll("[name=d]").length&&v.push("name"+L+"*[*^$|!~]?="),t.querySelectorAll(":enabled").length||v.push(":enabled",":disabled"),t.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=J.test(a=i.matches||i.webkitMatchesSelector||i.mozMatchesSelector||i.oMatchesSelector||i.msMatchesSelector))&&st(function(t){d.disconnectedMatch=a.call(t,"div"),a.call(t,"[s!='']:x"),s.push("!=",B)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=J.test(i.compareDocumentPosition),y=t||J.test(i.contains)?function(t,e){var n=9===t.nodeType?t.documentElement:t,e=e&&e.parentNode;return t===e||!(!e||1!==e.nodeType||!(n.contains?n.contains(e):t.compareDocumentPosition&&16&t.compareDocumentPosition(e)))}:function(t,e){if(e)for(;e=e.parentNode;)if(e===t)return!0;return!1},A=t?function(t,e){if(t===e)return c=!0,0;var n=!t.compareDocumentPosition-!e.compareDocumentPosition;return n||(1&(n=(t.ownerDocument||t)===(e.ownerDocument||e)?t.compareDocumentPosition(e):1)||!d.sortDetached&&e.compareDocumentPosition(t)===n?t===C||t.ownerDocument===b&&y(b,t)?-1:e===C||e.ownerDocument===b&&y(b,e)?1:u?M(u,t)-M(u,e):0:4&n?-1:1)}:function(t,e){if(t===e)return c=!0,0;var n,r=0,i=t.parentNode,o=e.parentNode,s=[t],a=[e];if(!i||!o)return t===C?-1:e===C?1:i?-1:o?1:u?M(u,t)-M(u,e):0;if(i===o)return ut(t,e);for(n=t;n=n.parentNode;)s.unshift(n);for(n=e;n=n.parentNode;)a.unshift(n);for(;s[r]===a[r];)r++;return r?ut(s[r],a[r]):s[r]===b?-1:a[r]===b?1:0}),C},rt.matches=function(t,e){return rt(t,null,null,e)},rt.matchesSelector=function(t,e){if((t.ownerDocument||t)!==C&&x(t),e=e.replace(V,"='$1']"),d.matchesSelector&&k&&!T[e+" "]&&(!s||!s.test(e))&&(!v||!v.test(e)))try{var n=a.call(t,e);if(n||d.disconnectedMatch||t.document&&11!==t.document.nodeType)return n}catch(t){}return 0<rt(e,C,null,[t]).length},rt.contains=function(t,e){return(t.ownerDocument||t)!==C&&x(t),y(t,e)},rt.attr=function(t,e){(t.ownerDocument||t)!==C&&x(t);var n=w.attrHandle[e.toLowerCase()],n=n&&I.call(w.attrHandle,e.toLowerCase())?n(t,e,!k):void 0;return void 0!==n?n:d.attributes||!k?t.getAttribute(e):(n=t.getAttributeNode(e))&&n.specified?n.value:null},rt.error=function(t){throw new Error("Syntax error, unrecognized expression: "+t)},rt.uniqueSort=function(t){var e,n=[],r=0,i=0;if(c=!d.detectDuplicates,u=!d.sortStable&&t.slice(0),t.sort(A),c){for(;e=t[i++];)e===t[i]&&(r=n.push(i));for(;r--;)t.splice(n[r],1)}return u=null,t},o=rt.getText=function(t){var e,n="",r=0,i=t.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof t.textContent)return t.textContent;for(t=t.firstChild;t;t=t.nextSibling)n+=o(t)}else if(3===i||4===i)return t.nodeValue}else for(;e=t[r++];)n+=o(e);return n},(w=rt.selectors={cacheLength:50,createPseudo:ot,match:Y,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(t){return t[1]=t[1].replace(nt,h),t[3]=(t[3]||t[4]||t[5]||"").replace(nt,h),"~="===t[2]&&(t[3]=" "+t[3]+" "),t.slice(0,4)},CHILD:function(t){return t[1]=t[1].toLowerCase(),"nth"===t[1].slice(0,3)?(t[3]||rt.error(t[0]),t[4]=+(t[4]?t[5]+(t[6]||1):2*("even"===t[3]||"odd"===t[3])),t[5]=+(t[7]+t[8]||"odd"===t[3])):t[3]&&rt.error(t[0]),t},PSEUDO:function(t){var e,n=!t[6]&&t[2];return Y.CHILD.test(t[0])?null:(t[3]?t[2]=t[4]||t[5]||"":n&&$.test(n)&&(e=g(n,!0))&&(e=n.indexOf(")",n.length-e)-n.length)&&(t[0]=t[0].slice(0,e),t[2]=n.slice(0,e)),t.slice(0,3))}},filter:{TAG:function(t){var e=t.replace(nt,h).toLowerCase();return"*"===t?function(){return!0}:function(t){return t.nodeName&&t.nodeName.toLowerCase()===e}},CLASS:function(t){var e=p[t+" "];return e||(e=new RegExp("(^|"+L+")"+t+"("+L+"|$)"))&&p(t,function(t){return e.test("string"==typeof t.className&&t.className||void 0!==t.getAttribute&&t.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(t){t=rt.attr(t,e);return null==t?"!="===n:!n||(t+="","="===n?t===r:"!="===n?t!==r:"^="===n?r&&0===t.indexOf(r):"*="===n?r&&-1<t.indexOf(r):"$="===n?r&&t.slice(-r.length)===r:"~="===n?-1<(" "+t.replace(q," ")+" ").indexOf(r):"|="===n&&(t===r||t.slice(0,r.length+1)===r+"-"))}},CHILD:function(d,t,e,g,m){var v="nth"!==d.slice(0,3),y="last"!==d.slice(-4),b="of-type"===t;return 1===g&&0===m?function(t){return!!t.parentNode}:function(t,e,n){var r,i,o,s,a,u,c=v!=y?"nextSibling":"previousSibling",l=t.parentNode,h=b&&t.nodeName.toLowerCase(),f=!n&&!b,p=!1;if(l){if(v){for(;c;){for(s=t;s=s[c];)if(b?s.nodeName.toLowerCase()===h:1===s.nodeType)return!1;u=c="only"===d&&!u&&"nextSibling"}return!0}if(u=[y?l.firstChild:l.lastChild],y&&f){for(p=(a=(r=(i=(o=(s=l)[S]||(s[S]={}))[s.uniqueID]||(o[s.uniqueID]={}))[d]||[])[0]===O&&r[1])&&r[2],s=a&&l.childNodes[a];s=++a&&s&&s[c]||(p=a=0)||u.pop();)if(1===s.nodeType&&++p&&s===t){i[d]=[O,a,p];break}}else if(!1===(p=f?a=(r=(i=(o=(s=t)[S]||(s[S]={}))[s.uniqueID]||(o[s.uniqueID]={}))[d]||[])[0]===O&&r[1]:p))for(;(s=++a&&s&&s[c]||(p=a=0)||u.pop())&&((b?s.nodeName.toLowerCase()!==h:1!==s.nodeType)||!++p||(f&&((i=(o=s[S]||(s[S]={}))[s.uniqueID]||(o[s.uniqueID]={}))[d]=[O,p]),s!==t)););return(p-=m)===g||p%g==0&&0<=p/g}}},PSEUDO:function(t,o){var e,s=w.pseudos[t]||w.setFilters[t.toLowerCase()]||rt.error("unsupported pseudo: "+t);return s[S]?s(o):1<s.length?(e=[t,t,"",o],w.setFilters.hasOwnProperty(t.toLowerCase())?ot(function(t,e){for(var n,r=s(t,o),i=r.length;i--;)t[n=M(t,r[i])]=!(e[n]=r[i])}):function(t){return s(t,0,e)}):s}},pseudos:{not:ot(function(t){var r=[],i=[],a=f(t.replace(z,"$1"));return a[S]?ot(function(t,e,n,r){for(var i,o=a(t,null,r,[]),s=t.length;s--;)(i=o[s])&&(t[s]=!(e[s]=i))}):function(t,e,n){return r[0]=t,a(r,null,n,i),r[0]=null,!i.pop()}}),has:ot(function(e){return function(t){return 0<rt(e,t).length}}),contains:ot(function(e){return e=e.replace(nt,h),function(t){return-1<(t.textContent||t.innerText||o(t)).indexOf(e)}}),lang:ot(function(n){return X.test(n||"")||rt.error("unsupported lang: "+n),n=n.replace(nt,h).toLowerCase(),function(t){var e;do{if(e=k?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(e=e.toLowerCase())===n||0===e.indexOf(n+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var e=n.location&&n.location.hash;return e&&e.slice(1)===t.id},root:function(t){return t===i},focus:function(t){return t===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(t.type||t.href||~t.tabIndex)},enabled:function(t){return!1===t.disabled},disabled:function(t){return!0===t.disabled},checked:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&!!t.checked||"option"===e&&!!t.selected},selected:function(t){return t.parentNode&&t.parentNode.selectedIndex,!0===t.selected},empty:function(t){for(t=t.firstChild;t;t=t.nextSibling)if(t.nodeType<6)return!1;return!0},parent:function(t){return!w.pseudos.empty(t)},header:function(t){return Q.test(t.nodeName)},input:function(t){return K.test(t.nodeName)},button:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&"button"===t.type||"button"===e},text:function(t){return"input"===t.nodeName.toLowerCase()&&"text"===t.type&&(null==(t=t.getAttribute("type"))||"text"===t.toLowerCase())},first:ct(function(){return[0]}),last:ct(function(t,e){return[e-1]}),eq:ct(function(t,e,n){return[n<0?n+e:n]}),even:ct(function(t,e){for(var n=0;n<e;n+=2)t.push(n);return t}),odd:ct(function(t,e){for(var n=1;n<e;n+=2)t.push(n);return t}),lt:ct(function(t,e,n){for(var r=n<0?n+e:n;0<=--r;)t.push(r);return t}),gt:ct(function(t,e,n){for(var r=n<0?n+e:n;++r<e;)t.push(r);return t})}}).pseudos.nth=w.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})w.pseudos[t]=function(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}(t);for(t in{submit:!0,reset:!0})w.pseudos[t]=function(n){return function(t){var e=t.nodeName.toLowerCase();return("input"===e||"button"===e)&&t.type===n}}(t);function ht(){}function ft(t){for(var e=0,n=t.length,r="";e<n;e++)r+=t[e].value;return r}function pt(s,t,e){var a=t.dir,u=e&&"parentNode"===a,c=l++;return t.first?function(t,e,n){for(;t=t[a];)if(1===t.nodeType||u)return s(t,e,n)}:function(t,e,n){var r,i,o=[O,c];if(n){for(;t=t[a];)if((1===t.nodeType||u)&&s(t,e,n))return!0}else for(;t=t[a];)if(1===t.nodeType||u){if((i=(r=(i=t[S]||(t[S]={}))[t.uniqueID]||(i[t.uniqueID]={}))[a])&&i[0]===O&&i[1]===c)return o[2]=i[2];if((r[a]=o)[2]=s(t,e,n))return!0}}}function dt(i){return 1<i.length?function(t,e,n){for(var r=i.length;r--;)if(!i[r](t,e,n))return!1;return!0}:i[0]}function gt(t,e,n,r,i){for(var o,s=[],a=0,u=t.length,c=null!=e;a<u;a++)(o=t[a])&&(n&&!n(o,r,i)||(s.push(o),c&&e.push(a)));return s}function mt(p,d,g,m,v,t){return m&&!m[S]&&(m=mt(m)),v&&!v[S]&&(v=mt(v,t)),ot(function(t,e,n,r){var i,o,s,a=[],u=[],c=e.length,l=t||function(t,e,n){for(var r=0,i=e.length;r<i;r++)rt(t,e[r],n);return n}(d||"*",n.nodeType?[n]:n,[]),h=!p||!t&&d?l:gt(l,a,p,n,r),f=g?v||(t?p:c||m)?[]:e:h;if(g&&g(h,f,n,r),m)for(i=gt(f,u),m(i,[],n,r),o=i.length;o--;)(s=i[o])&&(f[u[o]]=!(h[u[o]]=s));if(t){if(v||p){if(v){for(i=[],o=f.length;o--;)(s=f[o])&&i.push(h[o]=s);v(null,f=[],i,r)}for(o=f.length;o--;)(s=f[o])&&-1<(i=v?M(t,s):a[o])&&(t[i]=!(e[i]=s))}}else f=gt(f===e?f.splice(c,f.length):f),v?v(null,e,f,r):N.apply(e,f)})}function vt(m,v){function t(t,e,n,r,i){var o,s,a,u=0,c="0",l=t&&[],h=[],f=_,p=t||b&&w.find.TAG("*",i),d=O+=null==f?1:Math.random()||.1,g=p.length;for(i&&(_=e===C||e||i);c!==g&&null!=(o=p[c]);c++){if(b&&o){for(s=0,e||o.ownerDocument===C||(x(o),n=!k);a=m[s++];)if(a(o,e||C,n)){r.push(o);break}i&&(O=d)}y&&((o=!a&&o)&&u--,t&&l.push(o))}if(u+=c,y&&c!==u){for(s=0;a=v[s++];)a(l,h,e,n);if(t){if(0<u)for(;c--;)l[c]||h[c]||(h[c]=P.call(r));h=gt(h)}N.apply(r,h),i&&!t&&0<h.length&&1<u+v.length&&rt.uniqueSort(r)}return i&&(O=d,_=f),l}var y=0<v.length,b=0<m.length;return y?ot(t):t}return ht.prototype=w.filters=w.pseudos,w.setFilters=new ht,g=rt.tokenize=function(t,e){var n,r,i,o,s,a,u,c=E[t+" "];if(c)return e?0:c.slice(0);for(s=t,a=[],u=w.preFilter;s;){for(o in n&&!(r=U.exec(s))||(r&&(s=s.slice(r[0].length)||s),a.push(i=[])),n=!1,(r=G.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),s=s.slice(n.length)),w.filter)!(r=Y[o].exec(s))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),s=s.slice(n.length));if(!n)break}return e?s.length:s?rt.error(t):E(t,a).slice(0)},f=rt.compile=function(t,e){var n,r=[],i=[],o=T[t+" "];if(!o){for(n=(e=e||g(t)).length;n--;)((o=function t(e){for(var r,n,i,o=e.length,s=w.relative[e[0].type],a=s||w.relative[" "],u=s?1:0,c=pt(function(t){return t===r},a,!0),l=pt(function(t){return-1<M(r,t)},a,!0),h=[function(t,e,n){return n=!s&&(n||e!==_)||((r=e).nodeType?c:l)(t,e,n),r=null,n}];u<o;u++)if(n=w.relative[e[u].type])h=[pt(dt(h),n)];else{if((n=w.filter[e[u].type].apply(null,e[u].matches))[S]){for(i=++u;i<o&&!w.relative[e[i].type];i++);return mt(1<u&&dt(h),1<u&&ft(e.slice(0,u-1).concat({value:" "===e[u-2].type?"*":""})).replace(z,"$1"),n,u<i&&t(e.slice(u,i)),i<o&&t(e=e.slice(i)),i<o&&ft(e))}h.push(n)}return dt(h)}(e[n]))[S]?r:i).push(o);(o=T(t,vt(i,r))).selector=t}return o},m=rt.select=function(t,e,n,r){var i,o,s,a,u,c="function"==typeof t&&t,l=!r&&g(t=c.selector||t);if(n=n||[],1===l.length){if(2<(o=l[0]=l[0].slice(0)).length&&"ID"===(s=o[0]).type&&d.getById&&9===e.nodeType&&k&&w.relative[o[1].type]){if(!(e=(w.find.ID(s.matches[0].replace(nt,h),e)||[])[0]))return n;c&&(e=e.parentNode),t=t.slice(o.shift().value.length)}for(i=Y.needsContext.test(t)?0:o.length;i--&&(s=o[i],!w.relative[a=s.type]);)if((u=w.find[a])&&(r=u(s.matches[0].replace(nt,h),tt.test(o[0].type)&<(e.parentNode)||e))){if(o.splice(i,1),!(t=r.length&&ft(o)))return N.apply(n,r),n;break}}return(c||f(t,l))(r,e,!k,n,!e||tt.test(t)&<(e.parentNode)||e),n},d.sortStable=S.split("").sort(A).join("")===S,d.detectDuplicates=!!c,x(),d.sortDetached=st(function(t){return 1&t.compareDocumentPosition(C.createElement("div"))}),st(function(t){return t.innerHTML="<a href='#'></a>","#"===t.firstChild.getAttribute("href")})||at("type|href|height|width",function(t,e,n){return n?void 0:t.getAttribute(e,"type"===e.toLowerCase()?1:2)}),d.attributes&&st(function(t){return t.innerHTML="<input/>",t.firstChild.setAttribute("value",""),""===t.firstChild.getAttribute("value")})||at("value",function(t,e,n){return n||"input"!==t.nodeName.toLowerCase()?void 0:t.defaultValue}),st(function(t){return null==t.getAttribute("disabled")})||at(W,function(t,e,n){return n?void 0:!0===t[e]?e.toLowerCase():(e=t.getAttributeNode(e))&&e.specified?e.value:null}),rt}(_);C.find=p,C.expr=p.selectors,C.expr[":"]=C.expr.pseudos,C.uniqueSort=C.unique=p.uniqueSort,C.text=p.getText,C.isXMLDoc=p.isXML,C.contains=p.contains;function v(t,e,n){for(var r=[],i=void 0!==n;(t=t[e])&&9!==t.nodeType;)if(1===t.nodeType){if(i&&C(t).is(n))break;r.push(t)}return r}function y(t,e){for(var n=[];t;t=t.nextSibling)1===t.nodeType&&t!==e&&n.push(t);return n}var b=C.expr.match.needsContext,w=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,k=/^.[^:#\[\.,]*$/;function S(t,n,r){if(C.isFunction(n))return C.grep(t,function(t,e){return!!n.call(t,e,t)!==r});if(n.nodeType)return C.grep(t,function(t){return t===n!==r});if("string"==typeof n){if(k.test(n))return C.filter(n,t,r);n=C.filter(n,t)}return C.grep(t,function(t){return-1<i.call(n,t)!==r})}C.filter=function(t,e,n){var r=e[0];return n&&(t=":not("+t+")"),1===e.length&&1===r.nodeType?C.find.matchesSelector(r,t)?[r]:[]:C.find.matches(t,C.grep(e,function(t){return 1===t.nodeType}))},C.fn.extend({find:function(t){var e,n=this.length,r=[],i=this;if("string"!=typeof t)return this.pushStack(C(t).filter(function(){for(e=0;e<n;e++)if(C.contains(i[e],this))return!0}));for(e=0;e<n;e++)C.find(t,i[e],r);return(r=this.pushStack(1<n?C.unique(r):r)).selector=this.selector?this.selector+" "+t:t,r},filter:function(t){return this.pushStack(S(this,t||[],!1))},not:function(t){return this.pushStack(S(this,t||[],!0))},is:function(t){return!!S(this,"string"==typeof t&&b.test(t)?C(t):t||[],!1).length}});var O=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/;(C.fn.init=function(t,e,n){if(!t)return this;if(n=n||E,"string"!=typeof t)return t.nodeType?(this.context=this[0]=t,this.length=1,this):C.isFunction(t)?void 0!==n.ready?n.ready(t):t(C):(void 0!==t.selector&&(this.selector=t.selector,this.context=t.context),C.makeArray(t,this));if(!(r="<"===t[0]&&">"===t[t.length-1]&&3<=t.length?[null,t,null]:O.exec(t))||!r[1]&&e)return(!e||e.jquery?e||n:this.constructor(e)).find(t);if(r[1]){if(e=e instanceof C?e[0]:e,C.merge(this,C.parseHTML(r[1],e&&e.nodeType?e.ownerDocument||e:x,!0)),w.test(r[1])&&C.isPlainObject(e))for(var r in e)C.isFunction(this[r])?this[r](e[r]):this.attr(r,e[r]);return this}return(n=x.getElementById(r[2]))&&n.parentNode&&(this.length=1,this[0]=n),this.context=x,this.selector=t,this}).prototype=C.fn;var E=C(x),T=/^(?:parents|prev(?:Until|All))/,A={children:!0,contents:!0,next:!0,prev:!0};function I(t,e){for(;(t=t[e])&&1!==t.nodeType;);return t}C.fn.extend({has:function(t){var e=C(t,this),n=e.length;return this.filter(function(){for(var t=0;t<n;t++)if(C.contains(this,e[t]))return!0})},closest:function(t,e){for(var n,r=0,i=this.length,o=[],s=b.test(t)||"string"!=typeof t?C(t,e||this.context):0;r<i;r++)for(n=this[r];n&&n!==e;n=n.parentNode)if(n.nodeType<11&&(s?-1<s.index(n):1===n.nodeType&&C.find.matchesSelector(n,t))){o.push(n);break}return this.pushStack(1<o.length?C.uniqueSort(o):o)},index:function(t){return t?"string"==typeof t?i.call(C(t),this[0]):i.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,e){return this.pushStack(C.uniqueSort(C.merge(this.get(),C(t,e))))},addBack:function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}}),C.each({parent:function(t){t=t.parentNode;return t&&11!==t.nodeType?t:null},parents:function(t){return v(t,"parentNode")},parentsUntil:function(t,e,n){return v(t,"parentNode",n)},next:function(t){return I(t,"nextSibling")},prev:function(t){return I(t,"previousSibling")},nextAll:function(t){return v(t,"nextSibling")},prevAll:function(t){return v(t,"previousSibling")},nextUntil:function(t,e,n){return v(t,"nextSibling",n)},prevUntil:function(t,e,n){return v(t,"previousSibling",n)},siblings:function(t){return y((t.parentNode||{}).firstChild,t)},children:function(t){return y(t.firstChild)},contents:function(t){return t.contentDocument||C.merge([],t.childNodes)}},function(r,i){C.fn[r]=function(t,e){var n=C.map(this,i,t);return(e="Until"!==r.slice(-5)?t:e)&&"string"==typeof e&&(n=C.filter(e,n)),1<this.length&&(A[r]||C.uniqueSort(n),T.test(r)&&n.reverse()),this.pushStack(n)}});var j,P=/\S+/g;function D(){x.removeEventListener("DOMContentLoaded",D),_.removeEventListener("load",D),C.ready()}C.Callbacks=function(r){var t,n;r="string"==typeof r?(t=r,n={},C.each(t.match(P)||[],function(t,e){n[e]=!0}),n):C.extend({},r);function i(){for(a=r.once,s=o=!0;c.length;l=-1)for(e=c.shift();++l<u.length;)!1===u[l].apply(e[0],e[1])&&r.stopOnFalse&&(l=u.length,e=!1);r.memory||(e=!1),o=!1,a&&(u=e?[]:"")}var o,e,s,a,u=[],c=[],l=-1,h={add:function(){return u&&(e&&!o&&(l=u.length-1,c.push(e)),function n(t){C.each(t,function(t,e){C.isFunction(e)?r.unique&&h.has(e)||u.push(e):e&&e.length&&"string"!==C.type(e)&&n(e)})}(arguments),e&&!o&&i()),this},remove:function(){return C.each(arguments,function(t,e){for(var n;-1<(n=C.inArray(e,u,n));)u.splice(n,1),n<=l&&l--}),this},has:function(t){return t?-1<C.inArray(t,u):0<u.length},empty:function(){return u=u&&[],this},disable:function(){return a=c=[],u=e="",this},disabled:function(){return!u},lock:function(){return a=c=[],e||(u=e=""),this},locked:function(){return!!a},fireWith:function(t,e){return a||(e=[t,(e=e||[]).slice?e.slice():e],c.push(e),o||i()),this},fire:function(){return h.fireWith(this,arguments),this},fired:function(){return!!s}};return h},C.extend({Deferred:function(t){var o=[["resolve","done",C.Callbacks("once memory"),"resolved"],["reject","fail",C.Callbacks("once memory"),"rejected"],["notify","progress",C.Callbacks("memory")]],i="pending",s={state:function(){return i},always:function(){return a.done(arguments).fail(arguments),this},then:function(){var i=arguments;return C.Deferred(function(r){C.each(o,function(t,e){var n=C.isFunction(i[t])&&i[t];a[e[1]](function(){var t=n&&n.apply(this,arguments);t&&C.isFunction(t.promise)?t.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[e[0]+"With"](this===s?r.promise():this,n?[t]:arguments)})}),i=null}).promise()},promise:function(t){return null!=t?C.extend(t,s):s}},a={};return s.pipe=s.then,C.each(o,function(t,e){var n=e[2],r=e[3];s[e[1]]=n.add,r&&n.add(function(){i=r},o[1^t][2].disable,o[2][2].lock),a[e[0]]=function(){return a[e[0]+"With"](this===a?s:this,arguments),this},a[e[0]+"With"]=n.fireWith}),s.promise(a),t&&t.call(a,a),a},when:function(t){function e(e,n,r){return function(t){n[e]=this,r[e]=1<arguments.length?l.call(arguments):t,r===i?c.notifyWith(n,r):--u||c.resolveWith(n,r)}}var i,n,r,o=0,s=l.call(arguments),a=s.length,u=1!==a||t&&C.isFunction(t.promise)?a:0,c=1===u?t:C.Deferred();if(1<a)for(i=new Array(a),n=new Array(a),r=new Array(a);o<a;o++)s[o]&&C.isFunction(s[o].promise)?s[o].promise().progress(e(o,n,i)).done(e(o,r,s)).fail(c.reject):--u;return u||c.resolveWith(r,s),c.promise()}}),C.fn.ready=function(t){return C.ready.promise().done(t),this},C.extend({isReady:!1,readyWait:1,holdReady:function(t){t?C.readyWait++:C.ready(!0)},ready:function(t){(!0===t?--C.readyWait:C.isReady)||((C.isReady=!0)!==t&&0<--C.readyWait||(j.resolveWith(x,[C]),C.fn.triggerHandler&&(C(x).triggerHandler("ready"),C(x).off("ready"))))}}),C.ready.promise=function(t){return j||(j=C.Deferred(),"complete"===x.readyState||"loading"!==x.readyState&&!x.documentElement.doScroll?_.setTimeout(C.ready):(x.addEventListener("DOMContentLoaded",D),_.addEventListener("load",D))),j.promise(t)},C.ready.promise();function N(t){return 1===t.nodeType||9===t.nodeType||!+t.nodeType}var R=function(t,e,n,r,i,o,s){var a=0,u=t.length,c=null==n;if("object"===C.type(n))for(a in i=!0,n)R(t,e,a,n[a],!0,o,s);else if(void 0!==r&&(i=!0,C.isFunction(r)||(s=!0),e=c?s?(e.call(t,r),null):(c=e,function(t,e,n){return c.call(C(t),n)}):e))for(;a<u;a++)e(t[a],n,s?r:r.call(t[a],a,e(t[a],n)));return i?t:c?e.call(t):u?e(t[0],n):o};function M(){this.expando=C.expando+M.uid++}M.uid=1,M.prototype={register:function(t,e){e=e||{};return t.nodeType?t[this.expando]=e:Object.defineProperty(t,this.expando,{value:e,writable:!0,configurable:!0}),t[this.expando]},cache:function(t){if(!N(t))return{};var e=t[this.expando];return e||(e={},N(t)&&(t.nodeType?t[this.expando]=e:Object.defineProperty(t,this.expando,{value:e,configurable:!0}))),e},set:function(t,e,n){var r,i=this.cache(t);if("string"==typeof e)i[e]=n;else for(r in e)i[r]=e[r];return i},get:function(t,e){return void 0===e?this.cache(t):t[this.expando]&&t[this.expando][e]},access:function(t,e,n){var r;return void 0===e||e&&"string"==typeof e&&void 0===n?void 0!==(r=this.get(t,e))?r:this.get(t,C.camelCase(e)):(this.set(t,e,n),void 0!==n?n:e)},remove:function(t,e){var n,r,i,o=t[this.expando];if(void 0!==o){if(void 0===e)this.register(t);else{n=(r=C.isArray(e)?e.concat(e.map(C.camelCase)):(i=C.camelCase(e),e in o?[e,i]:(r=i)in o?[r]:r.match(P)||[])).length;for(;n--;)delete o[r[n]]}void 0!==e&&!C.isEmptyObject(o)||(t.nodeType?t[this.expando]=void 0:delete t[this.expando])}},hasData:function(t){t=t[this.expando];return void 0!==t&&!C.isEmptyObject(t)}};var W=new M,L=new M,F=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,H=/[A-Z]/g;function B(t,e,n){var r;if(void 0===n&&1===t.nodeType)if(r="data-"+e.replace(H,"-$&").toLowerCase(),"string"==typeof(n=t.getAttribute(r))){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:F.test(n)?C.parseJSON(n):n)}catch(t){}L.set(t,e,n)}else n=void 0;return n}C.extend({hasData:function(t){return L.hasData(t)||W.hasData(t)},data:function(t,e,n){return L.access(t,e,n)},removeData:function(t,e){L.remove(t,e)},_data:function(t,e,n){return W.access(t,e,n)},_removeData:function(t,e){W.remove(t,e)}}),C.fn.extend({data:function(r,t){var e,n,i,o=this[0],s=o&&o.attributes;if(void 0!==r)return"object"==typeof r?this.each(function(){L.set(this,r)}):R(this,function(e){var t,n;return o&&void 0===e?void 0!==(t=L.get(o,r)||L.get(o,r.replace(H,"-$&").toLowerCase()))?t:(n=C.camelCase(r),void 0!==(t=L.get(o,n))?t:void 0!==(t=B(o,n,void 0))?t:void 0):(n=C.camelCase(r),void this.each(function(){var t=L.get(this,n);L.set(this,n,e),-1<r.indexOf("-")&&void 0!==t&&L.set(this,r,e)}))},null,t,1<arguments.length,null,!0);if(this.length&&(i=L.get(o),1===o.nodeType&&!W.get(o,"hasDataAttrs"))){for(e=s.length;e--;)s[e]&&(0===(n=s[e].name).indexOf("data-")&&(n=C.camelCase(n.slice(5)),B(o,n,i[n])));W.set(o,"hasDataAttrs",!0)}return i},removeData:function(t){return this.each(function(){L.remove(this,t)})}}),C.extend({queue:function(t,e,n){var r;return t?(r=W.get(t,e=(e||"fx")+"queue"),n&&(!r||C.isArray(n)?r=W.access(t,e,C.makeArray(n)):r.push(n)),r||[]):void 0},dequeue:function(t,e){var n=C.queue(t,e=e||"fx"),r=n.length,i=n.shift(),o=C._queueHooks(t,e);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===e&&n.unshift("inprogress"),delete o.stop,i.call(t,function(){C.dequeue(t,e)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(t,e){var n=e+"queueHooks";return W.get(t,n)||W.access(t,n,{empty:C.Callbacks("once memory").add(function(){W.remove(t,[e+"queue",n])})})}}),C.fn.extend({queue:function(e,n){var t=2;return"string"!=typeof e&&(n=e,e="fx",t--),arguments.length<t?C.queue(this[0],e):void 0===n?this:this.each(function(){var t=C.queue(this,e,n);C._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&C.dequeue(this,e)})},dequeue:function(t){return this.each(function(){C.dequeue(this,t)})},clearQueue:function(t){return this.queue(t||"fx",[])},promise:function(t,e){function n(){--i||o.resolveWith(s,[s])}var r,i=1,o=C.Deferred(),s=this,a=this.length;for("string"!=typeof t&&(e=t,t=void 0),t=t||"fx";a--;)(r=W.get(s[a],t+"queueHooks"))&&r.empty&&(i++,r.empty.add(n));return n(),o.promise(e)}});function q(t,e){return"none"===C.css(t=e||t,"display")||!C.contains(t.ownerDocument,t)}var s=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,z=new RegExp("^(?:([+-])=|)("+s+")([a-z%]*)$","i"),U=["Top","Right","Bottom","Left"];function G(t,e,n,r){var i,o=1,s=20,a=r?function(){return r.cur()}:function(){return C.css(t,e,"")},u=a(),c=n&&n[3]||(C.cssNumber[e]?"":"px"),l=(C.cssNumber[e]||"px"!==c&&+u)&&z.exec(C.css(t,e));if(l&&l[3]!==c)for(c=c||l[3],n=n||[],l=+u||1;C.style(t,e,(l/=o=o||".5")+c),o!==(o=a()/u)&&1!==o&&--s;);return n&&(l=+l||+u||0,i=n[1]?l+(n[1]+1)*n[2]:+n[2],r&&(r.unit=c,r.start=l,r.end=i)),i}var V=/^(?:checkbox|radio)$/i,$=/<([\w:-]+)/,X=/^$|\/(?:java|ecma)script/i,Y={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function K(t,e){var n=void 0!==t.getElementsByTagName?t.getElementsByTagName(e||"*"):void 0!==t.querySelectorAll?t.querySelectorAll(e||"*"):[];return void 0===e||e&&C.nodeName(t,e)?C.merge([t],n):n}function Q(t,e){for(var n=0,r=t.length;n<r;n++)W.set(t[n],"globalEval",!e||W.get(e[n],"globalEval"))}Y.optgroup=Y.option,Y.tbody=Y.tfoot=Y.colgroup=Y.caption=Y.thead,Y.th=Y.td;var J=/<|&#?\w+;/;function Z(t,e,n,r,i){for(var o,s,a,u,c,l=e.createDocumentFragment(),h=[],f=0,p=t.length;f<p;f++)if((o=t[f])||0===o)if("object"===C.type(o))C.merge(h,o.nodeType?[o]:o);else if(J.test(o)){for(s=s||l.appendChild(e.createElement("div")),a=($.exec(o)||["",""])[1].toLowerCase(),a=Y[a]||Y._default,s.innerHTML=a[1]+C.htmlPrefilter(o)+a[2],c=a[0];c--;)s=s.lastChild;C.merge(h,s.childNodes),(s=l.firstChild).textContent=""}else h.push(e.createTextNode(o));for(l.textContent="",f=0;o=h[f++];)if(r&&-1<C.inArray(o,r))i&&i.push(o);else if(u=C.contains(o.ownerDocument,o),s=K(l.appendChild(o),"script"),u&&Q(s),n)for(c=0;o=s[c++];)X.test(o.type||"")&&n.push(o);return l}n=x.createDocumentFragment().appendChild(x.createElement("div")),(p=x.createElement("input")).setAttribute("type","radio"),p.setAttribute("checked","checked"),p.setAttribute("name","t"),n.appendChild(p),m.checkClone=n.cloneNode(!0).cloneNode(!0).lastChild.checked,n.innerHTML="<textarea>x</textarea>",m.noCloneChecked=!!n.cloneNode(!0).lastChild.defaultValue;var tt=/^key/,et=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,nt=/^([^.]*)(?:\.(.+)|)/;function rt(){return!0}function it(){return!1}function ot(){try{return x.activeElement}catch(t){}}function st(t,e,n,r,i,o){var s,a;if("object"==typeof e){for(a in"string"!=typeof n&&(r=r||n,n=void 0),e)st(t,a,n,r,e[a],o);return t}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=it;else if(!i)return t;return 1===o&&(s=i,(i=function(t){return C().off(t),s.apply(this,arguments)}).guid=s.guid||(s.guid=C.guid++)),t.each(function(){C.event.add(this,e,i,r,n)})}C.event={global:{},add:function(e,t,n,r,i){var o,s,a,u,c,l,h,f,p,d=W.get(e);if(d)for(n.handler&&(n=(o=n).handler,i=o.selector),n.guid||(n.guid=C.guid++),(a=d.events)||(a=d.events={}),(s=d.handle)||(s=d.handle=function(t){return void 0!==C&&C.event.triggered!==t.type?C.event.dispatch.apply(e,arguments):void 0}),u=(t=(t||"").match(P)||[""]).length;u--;)h=p=(c=nt.exec(t[u])||[])[1],f=(c[2]||"").split(".").sort(),h&&(l=C.event.special[h]||{},h=(i?l.delegateType:l.bindType)||h,l=C.event.special[h]||{},c=C.extend({type:h,origType:p,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&C.expr.match.needsContext.test(i),namespace:f.join(".")},o),(p=a[h])||((p=a[h]=[]).delegateCount=0,l.setup&&!1!==l.setup.call(e,r,f,s)||e.addEventListener&&e.addEventListener(h,s)),l.add&&(l.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),C.event.global[h]=!0)},remove:function(t,e,n,r,i){var o,s,a,u,c,l,h,f,p,d,g,m=W.hasData(t)&&W.get(t);if(m&&(u=m.events)){for(c=(e=(e||"").match(P)||[""]).length;c--;)if(p=g=(a=nt.exec(e[c])||[])[1],d=(a[2]||"").split(".").sort(),p){for(h=C.event.special[p]||{},f=u[p=(r?h.delegateType:h.bindType)||p]||[],a=a[2]&&new RegExp("(^|\\.)"+d.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=o=f.length;o--;)l=f[o],!i&&g!==l.origType||n&&n.guid!==l.guid||a&&!a.test(l.namespace)||r&&r!==l.selector&&("**"!==r||!l.selector)||(f.splice(o,1),l.selector&&f.delegateCount--,h.remove&&h.remove.call(t,l));s&&!f.length&&(h.teardown&&!1!==h.teardown.call(t,d,m.handle)||C.removeEvent(t,p,m.handle),delete u[p])}else for(p in u)C.event.remove(t,p+e[c],n,r,!0);C.isEmptyObject(u)&&W.remove(t,"handle events")}},dispatch:function(t){t=C.event.fix(t);var e,n,r,i,o,s=l.call(arguments),a=(W.get(this,"events")||{})[t.type]||[],u=C.event.special[t.type]||{};if((s[0]=t).delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,t)){for(o=C.event.handlers.call(this,t,a),e=0;(r=o[e++])&&!t.isPropagationStopped();)for(t.currentTarget=r.elem,n=0;(i=r.handlers[n++])&&!t.isImmediatePropagationStopped();)t.rnamespace&&!t.rnamespace.test(i.namespace)||(t.handleObj=i,t.data=i.data,void 0!==(i=((C.event.special[i.origType]||{}).handle||i.handler).apply(r.elem,s))&&!1===(t.result=i)&&(t.preventDefault(),t.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,t),t.result}},handlers:function(t,e){var n,r,i,o,s=[],a=e.delegateCount,u=t.target;if(a&&u.nodeType&&("click"!==t.type||isNaN(t.button)||t.button<1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&(!0!==u.disabled||"click"!==t.type)){for(r=[],n=0;n<a;n++)void 0===r[i=(o=e[n]).selector+" "]&&(r[i]=o.needsContext?-1<C(i,this).index(u):C.find(i,this,null,[u]).length),r[i]&&r.push(o);r.length&&s.push({elem:u,handlers:r})}return a<e.length&&s.push({elem:this,handlers:e.slice(a)}),s},props:"altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(t,e){return null==t.which&&(t.which=null!=e.charCode?e.charCode:e.keyCode),t}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(t,e){var n,r,i=e.button;return null==t.pageX&&null!=e.clientX&&(n=(r=t.target.ownerDocument||x).documentElement,r=r.body,t.pageX=e.clientX+(n&&n.scrollLeft||r&&r.scrollLeft||0)-(n&&n.clientLeft||r&&r.clientLeft||0),t.pageY=e.clientY+(n&&n.scrollTop||r&&r.scrollTop||0)-(n&&n.clientTop||r&&r.clientTop||0)),t.which||void 0===i||(t.which=1&i?1:2&i?3:4&i?2:0),t}},fix:function(t){if(t[C.expando])return t;var e,n,r,i=t.type,o=t,s=this.fixHooks[i];for(s||(this.fixHooks[i]=s=et.test(i)?this.mouseHooks:tt.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,t=new C.Event(o),e=r.length;e--;)t[n=r[e]]=o[n];return t.target||(t.target=x),3===t.target.nodeType&&(t.target=t.target.parentNode),s.filter?s.filter(t,o):t},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==ot()&&this.focus?(this.focus(),!1):void 0},delegateType:"focusin"},blur:{trigger:function(){return this===ot()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&C.nodeName(this,"input")?(this.click(),!1):void 0},_default:function(t){return C.nodeName(t.target,"a")}},beforeunload:{postDispatch:function(t){void 0!==t.result&&t.originalEvent&&(t.originalEvent.returnValue=t.result)}}}},C.removeEvent=function(t,e,n){t.removeEventListener&&t.removeEventListener(e,n)},C.Event=function(t,e){return this instanceof C.Event?(t&&t.type?(this.originalEvent=t,this.type=t.type,this.isDefaultPrevented=t.defaultPrevented||void 0===t.defaultPrevented&&!1===t.returnValue?rt:it):this.type=t,e&&C.extend(this,e),this.timeStamp=t&&t.timeStamp||C.now(),void(this[C.expando]=!0)):new C.Event(t,e)},C.Event.prototype={constructor:C.Event,isDefaultPrevented:it,isPropagationStopped:it,isImmediatePropagationStopped:it,isSimulated:!1,preventDefault:function(){var t=this.originalEvent;this.isDefaultPrevented=rt,t&&!this.isSimulated&&t.preventDefault()},stopPropagation:function(){var t=this.originalEvent;this.isPropagationStopped=rt,t&&!this.isSimulated&&t.stopPropagation()},stopImmediatePropagation:function(){var t=this.originalEvent;this.isImmediatePropagationStopped=rt,t&&!this.isSimulated&&t.stopImmediatePropagation(),this.stopPropagation()}},C.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(t,i){C.event.special[t]={delegateType:i,bindType:i,handle:function(t){var e,n=t.relatedTarget,r=t.handleObj;return n&&(n===this||C.contains(this,n))||(t.type=r.origType,e=r.handler.apply(this,arguments),t.type=i),e}}}),C.fn.extend({on:function(t,e,n,r){return st(this,t,e,n,r)},one:function(t,e,n,r){return st(this,t,e,n,r,1)},off:function(t,e,n){var r,i;if(t&&t.preventDefault&&t.handleObj)return r=t.handleObj,C(t.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"!=typeof t)return!1!==e&&"function"!=typeof e||(n=e,e=void 0),!1===n&&(n=it),this.each(function(){C.event.remove(this,t,n,e)});for(i in t)this.off(i,e,t[i]);return this}});var at=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,ut=/<script|<style|<link/i,ct=/checked\s*(?:[^=]|=\s*.checked.)/i,lt=/^true\/(.*)/,ht=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function ft(t,e){return C.nodeName(t,"table")&&C.nodeName(11!==e.nodeType?e:e.firstChild,"tr")?t.getElementsByTagName("tbody")[0]||t.appendChild(t.ownerDocument.createElement("tbody")):t}function pt(t){return t.type=(null!==t.getAttribute("type"))+"/"+t.type,t}function dt(t){var e=lt.exec(t.type);return e?t.type=e[1]:t.removeAttribute("type"),t}function gt(t,e){var n,r,i,o,s,a;if(1===e.nodeType){if(W.hasData(t)&&(o=W.access(t),s=W.set(e,o),a=o.events))for(i in delete s.handle,s.events={},a)for(n=0,r=a[i].length;n<r;n++)C.event.add(e,i,a[i][n]);L.hasData(t)&&(t=L.access(t),t=C.extend({},t),L.set(e,t))}}function mt(n,r,i,o){r=g.apply([],r);var t,e,s,a,u,c,l=0,h=n.length,f=h-1,p=r[0],d=C.isFunction(p);if(d||1<h&&"string"==typeof p&&!m.checkClone&&ct.test(p))return n.each(function(t){var e=n.eq(t);d&&(r[0]=p.call(this,t,e.html())),mt(e,r,i,o)});if(h&&(e=(t=Z(r,n[0].ownerDocument,!1,n,o)).firstChild,1===t.childNodes.length&&(t=e),e||o)){for(a=(s=C.map(K(t,"script"),pt)).length;l<h;l++)u=t,l!==f&&(u=C.clone(u,!0,!0),a&&C.merge(s,K(u,"script"))),i.call(n[l],u,l);if(a)for(c=s[s.length-1].ownerDocument,C.map(s,dt),l=0;l<a;l++)u=s[l],X.test(u.type||"")&&!W.access(u,"globalEval")&&C.contains(c,u)&&(u.src?C._evalUrl&&C._evalUrl(u.src):C.globalEval(u.textContent.replace(ht,"")))}return n}function vt(t,e,n){for(var r,i=e?C.filter(e,t):t,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||C.cleanData(K(r)),r.parentNode&&(n&&C.contains(r.ownerDocument,r)&&Q(K(r,"script")),r.parentNode.removeChild(r));return t}C.extend({htmlPrefilter:function(t){return t.replace(at,"<$1></$2>")},clone:function(t,e,n){var r,i,o,s,a,u,c,l=t.cloneNode(!0),h=C.contains(t.ownerDocument,t);if(!(m.noCloneChecked||1!==t.nodeType&&11!==t.nodeType||C.isXMLDoc(t)))for(s=K(l),r=0,i=(o=K(t)).length;r<i;r++)a=o[r],u=s[r],c=void 0,"input"===(c=u.nodeName.toLowerCase())&&V.test(a.type)?u.checked=a.checked:"input"!==c&&"textarea"!==c||(u.defaultValue=a.defaultValue);if(e)if(n)for(o=o||K(t),s=s||K(l),r=0,i=o.length;r<i;r++)gt(o[r],s[r]);else gt(t,l);return 0<(s=K(l,"script")).length&&Q(s,!h&&K(t,"script")),l},cleanData:function(t){for(var e,n,r,i=C.event.special,o=0;void 0!==(n=t[o]);o++)if(N(n)){if(e=n[W.expando]){if(e.events)for(r in e.events)i[r]?C.event.remove(n,r):C.removeEvent(n,r,e.handle);n[W.expando]=void 0}n[L.expando]&&(n[L.expando]=void 0)}}}),C.fn.extend({domManip:mt,detach:function(t){return vt(this,t,!0)},remove:function(t){return vt(this,t)},text:function(t){return R(this,function(t){return void 0===t?C.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=t)})},null,t,arguments.length)},append:function(){return mt(this,arguments,function(t){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||ft(this,t).appendChild(t)})},prepend:function(){return mt(this,arguments,function(t){var e;1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(e=ft(this,t)).insertBefore(t,e.firstChild)})},before:function(){return mt(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this)})},after:function(){return mt(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)})},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(C.cleanData(K(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null!=t&&t,e=null==e?t:e,this.map(function(){return C.clone(this,t,e)})},html:function(t){return R(this,function(t){var e=this[0]||{},n=0,r=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"==typeof t&&!ut.test(t)&&!Y[($.exec(t)||["",""])[1].toLowerCase()]){t=C.htmlPrefilter(t);try{for(;n<r;n++)1===(e=this[n]||{}).nodeType&&(C.cleanData(K(e,!1)),e.innerHTML=t);e=0}catch(t){}}e&&this.empty().append(t)},null,t,arguments.length)},replaceWith:function(){var n=[];return mt(this,arguments,function(t){var e=this.parentNode;C.inArray(this,n)<0&&(C.cleanData(K(this)),e&&e.replaceChild(t,this))},n)}}),C.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(t,s){C.fn[t]=function(t){for(var e,n=[],r=C(t),i=r.length-1,o=0;o<=i;o++)e=o===i?this:this.clone(!0),C(r[o])[s](e),a.apply(n,e.get());return this.pushStack(n)}});var yt,bt={HTML:"block",BODY:"block"};function wt(t,e){t=C(e.createElement(t)).appendTo(e.body),e=C.css(t[0],"display");return t.detach(),e}function _t(t){var e=x,n=bt[t];return n||("none"!==(n=wt(t,e))&&n||((e=(yt=(yt||C("<iframe frameborder='0' width='0' height='0'/>")).appendTo(e.documentElement))[0].contentDocument).write(),e.close(),n=wt(t,e),yt.detach()),bt[t]=n),n}function xt(t,e,n,r){var i,o={};for(i in e)o[i]=t.style[i],t.style[i]=e[i];for(i in r=n.apply(t,r||[]),e)t.style[i]=o[i];return r}var Ct,kt,St,Ot,Et,Tt,At=/^margin/,It=new RegExp("^("+s+")(?!px)[a-z%]+$","i"),jt=function(t){var e=t.ownerDocument.defaultView;return(e=!e||!e.opener?_:e).getComputedStyle(t)},Pt=x.documentElement;function Dt(){Tt.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",Tt.innerHTML="",Pt.appendChild(Et);var t=_.getComputedStyle(Tt);Ct="1%"!==t.top,Ot="2px"===t.marginLeft,kt="4px"===t.width,Tt.style.marginRight="50%",St="4px"===t.marginRight,Pt.removeChild(Et)}function Nt(t,e,n){var r,i,o=t.style;return""!==(i=(n=n||jt(t))?n.getPropertyValue(e)||n[e]:void 0)&&void 0!==i||C.contains(t.ownerDocument,t)||(i=C.style(t,e)),n&&!m.pixelMarginRight()&&It.test(i)&&At.test(e)&&(r=o.width,t=o.minWidth,e=o.maxWidth,o.minWidth=o.maxWidth=o.width=i,i=n.width,o.width=r,o.minWidth=t,o.maxWidth=e),void 0!==i?i+"":i}function Rt(t,e){return{get:function(){return t()?void delete this.get:(this.get=e).apply(this,arguments)}}}Et=x.createElement("div"),(Tt=x.createElement("div")).style&&(Tt.style.backgroundClip="content-box",Tt.cloneNode(!0).style.backgroundClip="",m.clearCloneStyle="content-box"===Tt.style.backgroundClip,Et.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",Et.appendChild(Tt),C.extend(m,{pixelPosition:function(){return Dt(),Ct},boxSizingReliable:function(){return null==kt&&Dt(),kt},pixelMarginRight:function(){return null==kt&&Dt(),St},reliableMarginLeft:function(){return null==kt&&Dt(),Ot},reliableMarginRight:function(){var t,e=Tt.appendChild(x.createElement("div"));return e.style.cssText=Tt.style.cssText="-webkit-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",e.style.marginRight=e.style.width="0",Tt.style.width="1px",Pt.appendChild(Et),t=!parseFloat(_.getComputedStyle(e).marginRight),Pt.removeChild(Et),Tt.removeChild(e),t}}));var Mt=/^(none|table(?!-c[ea]).+)/,Wt={position:"absolute",visibility:"hidden",display:"block"},Lt={letterSpacing:"0",fontWeight:"400"},Ft=["Webkit","O","Moz","ms"],Ht=x.createElement("div").style;function Bt(t){if(t in Ht)return t;for(var e=t[0].toUpperCase()+t.slice(1),n=Ft.length;n--;)if((t=Ft[n]+e)in Ht)return t}function qt(t,e,n){var r=z.exec(e);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):e}function zt(t,e,n,r,i){for(var o=n===(r?"border":"content")?4:"width"===e?1:0,s=0;o<4;o+=2)"margin"===n&&(s+=C.css(t,n+U[o],!0,i)),r?("content"===n&&(s-=C.css(t,"padding"+U[o],!0,i)),"margin"!==n&&(s-=C.css(t,"border"+U[o]+"Width",!0,i))):(s+=C.css(t,"padding"+U[o],!0,i),"padding"!==n&&(s+=C.css(t,"border"+U[o]+"Width",!0,i)));return s}function Ut(t,e,n){var r=!0,i="width"===e?t.offsetWidth:t.offsetHeight,o=jt(t),s="border-box"===C.css(t,"boxSizing",!1,o);if(i<=0||null==i){if(((i=Nt(t,e,o))<0||null==i)&&(i=t.style[e]),It.test(i))return i;r=s&&(m.boxSizingReliable()||i===t.style[e]),i=parseFloat(i)||0}return i+zt(t,e,n||(s?"border":"content"),r,o)+"px"}function Gt(t,e){for(var n,r,i,o=[],s=0,a=t.length;s<a;s++)(r=t[s]).style&&(o[s]=W.get(r,"olddisplay"),n=r.style.display,e?(o[s]||"none"!==n||(r.style.display=""),""===r.style.display&&q(r)&&(o[s]=W.access(r,"olddisplay",_t(r.nodeName)))):(i=q(r),"none"===n&&i||W.set(r,"olddisplay",i?n:C.css(r,"display"))));for(s=0;s<a;s++)(r=t[s]).style&&(e&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=e?o[s]||"":"none"));return t}function Vt(t,e,n,r,i){return new Vt.prototype.init(t,e,n,r,i)}C.extend({cssHooks:{opacity:{get:function(t,e){if(e){t=Nt(t,"opacity");return""===t?"1":t}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(t,e,n,r){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var i,o,s,a=C.camelCase(e),u=t.style;return e=C.cssProps[a]||(C.cssProps[a]=Bt(a)||a),s=C.cssHooks[e]||C.cssHooks[a],void 0===n?s&&"get"in s&&void 0!==(i=s.get(t,!1,r))?i:u[e]:("string"===(o=typeof n)&&(i=z.exec(n))&&i[1]&&(n=G(t,e,i),o="number"),void(null!=n&&n==n&&("number"===o&&(n+=i&&i[3]||(C.cssNumber[a]?"":"px")),m.clearCloneStyle||""!==n||0!==e.indexOf("background")||(u[e]="inherit"),s&&"set"in s&&void 0===(n=s.set(t,n,r))||(u[e]=n))))}},css:function(t,e,n,r){var i,o=C.camelCase(e);return e=C.cssProps[o]||(C.cssProps[o]=Bt(o)||o),"normal"===(i=void 0===(i=(o=C.cssHooks[e]||C.cssHooks[o])&&"get"in o?o.get(t,!0,n):i)?Nt(t,e,r):i)&&e in Lt&&(i=Lt[e]),""===n||n?(e=parseFloat(i),!0===n||isFinite(e)?e||0:i):i}}),C.each(["height","width"],function(t,o){C.cssHooks[o]={get:function(t,e,n){return e?Mt.test(C.css(t,"display"))&&0===t.offsetWidth?xt(t,Wt,function(){return Ut(t,o,n)}):Ut(t,o,n):void 0},set:function(t,e,n){var r,i=n&&jt(t),i=n&&zt(t,o,n,"border-box"===C.css(t,"boxSizing",!1,i),i);return i&&(r=z.exec(e))&&"px"!==(r[3]||"px")&&(t.style[o]=e,e=C.css(t,o)),qt(0,e,i)}}}),C.cssHooks.marginLeft=Rt(m.reliableMarginLeft,function(t,e){return e?(parseFloat(Nt(t,"marginLeft"))||t.getBoundingClientRect().left-xt(t,{marginLeft:0},function(){return t.getBoundingClientRect().left}))+"px":void 0}),C.cssHooks.marginRight=Rt(m.reliableMarginRight,function(t,e){return e?xt(t,{display:"inline-block"},Nt,[t,"marginRight"]):void 0}),C.each({margin:"",padding:"",border:"Width"},function(i,o){C.cssHooks[i+o]={expand:function(t){for(var e=0,n={},r="string"==typeof t?t.split(" "):[t];e<4;e++)n[i+U[e]+o]=r[e]||r[e-2]||r[0];return n}},At.test(i)||(C.cssHooks[i+o].set=qt)}),C.fn.extend({css:function(t,e){return R(this,function(t,e,n){var r,i,o={},s=0;if(C.isArray(e)){for(r=jt(t),i=e.length;s<i;s++)o[e[s]]=C.css(t,e[s],!1,r);return o}return void 0!==n?C.style(t,e,n):C.css(t,e)},t,e,1<arguments.length)},show:function(){return Gt(this,!0)},hide:function(){return Gt(this)},toggle:function(t){return"boolean"==typeof t?t?this.show():this.hide():this.each(function(){q(this)?C(this).show():C(this).hide()})}}),(C.Tween=Vt).prototype={constructor:Vt,init:function(t,e,n,r,i,o){this.elem=t,this.prop=n,this.easing=i||C.easing._default,this.options=e,this.start=this.now=this.cur(),this.end=r,this.unit=o||(C.cssNumber[n]?"":"px")},cur:function(){var t=Vt.propHooks[this.prop];return(t&&t.get?t:Vt.propHooks._default).get(this)},run:function(t){var e,n=Vt.propHooks[this.prop];return this.options.duration?this.pos=e=C.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=e=t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),(n&&n.set?n:Vt.propHooks._default).set(this),this}},Vt.prototype.init.prototype=Vt.prototype,Vt.propHooks={_default:{get:function(t){return 1!==t.elem.nodeType||null!=t.elem[t.prop]&&null==t.elem.style[t.prop]?t.elem[t.prop]:(t=C.css(t.elem,t.prop,""))&&"auto"!==t?t:0},set:function(t){C.fx.step[t.prop]?C.fx.step[t.prop](t):1!==t.elem.nodeType||null==t.elem.style[C.cssProps[t.prop]]&&!C.cssHooks[t.prop]?t.elem[t.prop]=t.now:C.style(t.elem,t.prop,t.now+t.unit)}}},Vt.propHooks.scrollTop=Vt.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},C.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2},_default:"swing"},C.fx=Vt.prototype.init,C.fx.step={};var $t,Xt,Yt=/^(?:toggle|show|hide)$/,Kt=/queueHooks$/;function Qt(){return _.setTimeout(function(){$t=void 0}),$t=C.now()}function Jt(t,e){var n,r=0,i={height:t};for(e=e?1:0;r<4;r+=2-e)i["margin"+(n=U[r])]=i["padding"+n]=t;return e&&(i.opacity=i.width=t),i}function Zt(t,e,n){for(var r,i=(te.tweeners[e]||[]).concat(te.tweeners["*"]),o=0,s=i.length;o<s;o++)if(r=i[o].call(n,e,t))return r}function te(i,t,e){var n,o,r=0,s=te.prefilters.length,a=C.Deferred().always(function(){delete u.elem}),u=function(){if(o)return!1;for(var t=$t||Qt(),t=Math.max(0,c.startTime+c.duration-t),e=1-(t/c.duration||0),n=0,r=c.tweens.length;n<r;n++)c.tweens[n].run(e);return a.notifyWith(i,[c,e,t]),e<1&&r?t:(a.resolveWith(i,[c]),!1)},c=a.promise({elem:i,props:C.extend({},t),opts:C.extend(!0,{specialEasing:{},easing:C.easing._default},e),originalProperties:t,originalOptions:e,startTime:$t||Qt(),duration:e.duration,tweens:[],createTween:function(t,e){t=C.Tween(i,c.opts,t,e,c.opts.specialEasing[t]||c.opts.easing);return c.tweens.push(t),t},stop:function(t){var e=0,n=t?c.tweens.length:0;if(o)return this;for(o=!0;e<n;e++)c.tweens[e].run(1);return t?(a.notifyWith(i,[c,1,0]),a.resolveWith(i,[c,t])):a.rejectWith(i,[c,t]),this}}),l=c.props;for(function(t,e){var n,r,i,o,s;for(n in t)if(r=C.camelCase(n),i=e[r],o=t[n],C.isArray(o)&&(i=o[1],o=t[n]=o[0]),n!==r&&(t[r]=o,delete t[n]),s=C.cssHooks[r],s&&"expand"in s)for(n in o=s.expand(o),delete t[r],o)n in t||(t[n]=o[n],e[n]=i);else e[r]=i}(l,c.opts.specialEasing);r<s;r++)if(n=te.prefilters[r].call(c,i,l,c.opts))return C.isFunction(n.stop)&&(C._queueHooks(c.elem,c.opts.queue).stop=C.proxy(n.stop,n)),n;return C.map(l,Zt,c),C.isFunction(c.opts.start)&&c.opts.start.call(i,c),C.fx.timer(C.extend(u,{elem:i,anim:c,queue:c.opts.queue})),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always)}C.Animation=C.extend(te,{tweeners:{"*":[function(t,e){var n=this.createTween(t,e);return G(n.elem,t,z.exec(e),n),n}]},tweener:function(t,e){for(var n,r=0,i=(t=C.isFunction(t)?(e=t,["*"]):t.match(P)).length;r<i;r++)n=t[r],te.tweeners[n]=te.tweeners[n]||[],te.tweeners[n].unshift(e)},prefilters:[function(e,t,n){var r,i,o,s,a,u,c,l=this,h={},f=e.style,p=e.nodeType&&q(e),d=W.get(e,"fxshow");for(r in n.queue||(null==(a=C._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,u=a.empty.fire,a.empty.fire=function(){a.unqueued||u()}),a.unqueued++,l.always(function(){l.always(function(){a.unqueued--,C.queue(e,"fx").length||a.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[f.overflow,f.overflowX,f.overflowY],"inline"===("none"===(c=C.css(e,"display"))?W.get(e,"olddisplay")||_t(e.nodeName):c)&&"none"===C.css(e,"float")&&(f.display="inline-block")),n.overflow&&(f.overflow="hidden",l.always(function(){f.overflow=n.overflow[0],f.overflowX=n.overflow[1],f.overflowY=n.overflow[2]})),t)if(i=t[r],Yt.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(p?"hide":"show")){if("show"!==i||!d||void 0===d[r])continue;p=!0}h[r]=d&&d[r]||C.style(e,r)}else c=void 0;if(C.isEmptyObject(h))"inline"===("none"===c?_t(e.nodeName):c)&&(f.display=c);else for(r in d?"hidden"in d&&(p=d.hidden):d=W.access(e,"fxshow",{}),o&&(d.hidden=!p),p?C(e).show():l.done(function(){C(e).hide()}),l.done(function(){for(var t in W.remove(e,"fxshow"),h)C.style(e,t,h[t])}),h)s=Zt(p?d[r]:0,r,l),r in d||(d[r]=s.start,p&&(s.end=s.start,s.start="width"===r||"height"===r?1:0))}],prefilter:function(t,e){e?te.prefilters.unshift(t):te.prefilters.push(t)}}),C.speed=function(t,e,n){var r=t&&"object"==typeof t?C.extend({},t):{complete:n||!n&&e||C.isFunction(t)&&t,duration:t,easing:n&&e||e&&!C.isFunction(e)&&e};return r.duration=C.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in C.fx.speeds?C.fx.speeds[r.duration]:C.fx.speeds._default,null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){C.isFunction(r.old)&&r.old.call(this),r.queue&&C.dequeue(this,r.queue)},r},C.fn.extend({fadeTo:function(t,e,n,r){return this.filter(q).css("opacity",0).show().end().animate({opacity:e},t,n,r)},animate:function(e,t,n,r){var i=C.isEmptyObject(e),o=C.speed(t,n,r),r=function(){var t=te(this,C.extend({},e),o);(i||W.get(this,"finish"))&&t.stop(!0)};return r.finish=r,i||!1===o.queue?this.each(r):this.queue(o.queue,r)},stop:function(i,t,o){function s(t){var e=t.stop;delete t.stop,e(o)}return"string"!=typeof i&&(o=t,t=i,i=void 0),t&&!1!==i&&this.queue(i||"fx",[]),this.each(function(){var t=!0,e=null!=i&&i+"queueHooks",n=C.timers,r=W.get(this);if(e)r[e]&&r[e].stop&&s(r[e]);else for(e in r)r[e]&&r[e].stop&&Kt.test(e)&&s(r[e]);for(e=n.length;e--;)n[e].elem!==this||null!=i&&n[e].queue!==i||(n[e].anim.stop(o),t=!1,n.splice(e,1));!t&&o||C.dequeue(this,i)})},finish:function(s){return!1!==s&&(s=s||"fx"),this.each(function(){var t,e=W.get(this),n=e[s+"queue"],r=e[s+"queueHooks"],i=C.timers,o=n?n.length:0;for(e.finish=!0,C.queue(this,s,[]),r&&r.stop&&r.stop.call(this,!0),t=i.length;t--;)i[t].elem===this&&i[t].queue===s&&(i[t].anim.stop(!0),i.splice(t,1));for(t=0;t<o;t++)n[t]&&n[t].finish&&n[t].finish.call(this);delete e.finish})}}),C.each(["toggle","show","hide"],function(t,r){var i=C.fn[r];C.fn[r]=function(t,e,n){return null==t||"boolean"==typeof t?i.apply(this,arguments):this.animate(Jt(r,!0),t,e,n)}}),C.each({slideDown:Jt("show"),slideUp:Jt("hide"),slideToggle:Jt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(t,r){C.fn[t]=function(t,e,n){return this.animate(r,t,e,n)}}),C.timers=[],C.fx.tick=function(){var t,e=0,n=C.timers;for($t=C.now();e<n.length;e++)(t=n[e])()||n[e]!==t||n.splice(e--,1);n.length||C.fx.stop(),$t=void 0},C.fx.timer=function(t){C.timers.push(t),t()?C.fx.start():C.timers.pop()},C.fx.interval=13,C.fx.start=function(){Xt=Xt||_.setInterval(C.fx.tick,C.fx.interval)},C.fx.stop=function(){_.clearInterval(Xt),Xt=null},C.fx.speeds={slow:600,fast:200,_default:400},C.fn.delay=function(r,t){return r=C.fx&&C.fx.speeds[r]||r,this.queue(t=t||"fx",function(t,e){var n=_.setTimeout(t,r);e.stop=function(){_.clearTimeout(n)}})},p=x.createElement("input"),n=x.createElement("select"),s=n.appendChild(x.createElement("option")),p.type="checkbox",m.checkOn=""!==p.value,m.optSelected=s.selected,n.disabled=!0,m.optDisabled=!s.disabled,(p=x.createElement("input")).value="t",p.type="radio",m.radioValue="t"===p.value;var ee,ne=C.expr.attrHandle;C.fn.extend({attr:function(t,e){return R(this,C.attr,t,e,1<arguments.length)},removeAttr:function(t){return this.each(function(){C.removeAttr(this,t)})}}),C.extend({attr:function(t,e,n){var r,i,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===t.getAttribute?C.prop(t,e,n):(1===o&&C.isXMLDoc(t)||(e=e.toLowerCase(),i=C.attrHooks[e]||(C.expr.match.bool.test(e)?ee:void 0)),void 0!==n?null===n?void C.removeAttr(t,e):i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:(t.setAttribute(e,n+""),n):i&&"get"in i&&null!==(r=i.get(t,e))?r:null==(r=C.find.attr(t,e))?void 0:r)},attrHooks:{type:{set:function(t,e){if(!m.radioValue&&"radio"===e&&C.nodeName(t,"input")){var n=t.value;return t.setAttribute("type",e),n&&(t.value=n),e}}}},removeAttr:function(t,e){var n,r,i=0,o=e&&e.match(P);if(o&&1===t.nodeType)for(;n=o[i++];)r=C.propFix[n]||n,C.expr.match.bool.test(n)&&(t[r]=!1),t.removeAttribute(n)}}),ee={set:function(t,e,n){return!1===e?C.removeAttr(t,n):t.setAttribute(n,n),n}},C.each(C.expr.match.bool.source.match(/\w+/g),function(t,e){var o=ne[e]||C.find.attr;ne[e]=function(t,e,n){var r,i;return n||(i=ne[e],ne[e]=r,r=null!=o(t,e,n)?e.toLowerCase():null,ne[e]=i),r}});var re=/^(?:input|select|textarea|button)$/i,ie=/^(?:a|area)$/i;C.fn.extend({prop:function(t,e){return R(this,C.prop,t,e,1<arguments.length)},removeProp:function(t){return this.each(function(){delete this[C.propFix[t]||t]})}}),C.extend({prop:function(t,e,n){var r,i,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&C.isXMLDoc(t)||(e=C.propFix[e]||e,i=C.propHooks[e]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:t[e]=n:i&&"get"in i&&null!==(r=i.get(t,e))?r:t[e]},propHooks:{tabIndex:{get:function(t){var e=C.find.attr(t,"tabindex");return e?parseInt(e,10):re.test(t.nodeName)||ie.test(t.nodeName)&&t.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),m.optSelected||(C.propHooks.selected={get:function(t){t=t.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(t){t=t.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),C.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){C.propFix[this.toLowerCase()]=this});var oe=/[\t\r\n\f]/g;function se(t){return t.getAttribute&&t.getAttribute("class")||""}C.fn.extend({addClass:function(e){var t,n,r,i,o,s,a=0;if(C.isFunction(e))return this.each(function(t){C(this).addClass(e.call(this,t,se(this)))});if("string"==typeof e&&e)for(t=e.match(P)||[];n=this[a++];)if(s=se(n),r=1===n.nodeType&&(" "+s+" ").replace(oe," ")){for(o=0;i=t[o++];)r.indexOf(" "+i+" ")<0&&(r+=i+" ");s!==(s=C.trim(r))&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,s,a=0;if(C.isFunction(e))return this.each(function(t){C(this).removeClass(e.call(this,t,se(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(P)||[];n=this[a++];)if(s=se(n),r=1===n.nodeType&&(" "+s+" ").replace(oe," ")){for(o=0;i=t[o++];)for(;-1<r.indexOf(" "+i+" ");)r=r.replace(" "+i+" "," ");s!==(s=C.trim(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,e){var o=typeof i;return"boolean"==typeof e&&"string"==o?e?this.addClass(i):this.removeClass(i):C.isFunction(i)?this.each(function(t){C(this).toggleClass(i.call(this,t,se(this),e),e)}):this.each(function(){var t,e,n,r;if("string"==o)for(e=0,n=C(this),r=i.match(P)||[];t=r[e++];)n.hasClass(t)?n.removeClass(t):n.addClass(t);else void 0!==i&&"boolean"!=o||((t=se(this))&&W.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",!t&&!1!==i&&W.get(this,"__className__")||""))})},hasClass:function(t){for(var e,n=0,r=" "+t+" ";e=this[n++];)if(1===e.nodeType&&-1<(" "+se(e)+" ").replace(oe," ").indexOf(r))return!0;return!1}});var ae=/\r/g,ue=/[\x20\t\r\n\f]+/g;C.fn.extend({val:function(e){var n,t,r,i=this[0];return arguments.length?(r=C.isFunction(e),this.each(function(t){1===this.nodeType&&(null==(t=r?e.call(this,t,C(this).val()):e)?t="":"number"==typeof t?t+="":C.isArray(t)&&(t=C.map(t,function(t){return null==t?"":t+""})),(n=C.valHooks[this.type]||C.valHooks[this.nodeName.toLowerCase()])&&"set"in n&&void 0!==n.set(this,t,"value")||(this.value=t))})):i?(n=C.valHooks[i.type]||C.valHooks[i.nodeName.toLowerCase()])&&"get"in n&&void 0!==(t=n.get(i,"value"))?t:"string"==typeof(t=i.value)?t.replace(ae,""):null==t?"":t:void 0}}),C.extend({valHooks:{option:{get:function(t){var e=C.find.attr(t,"value");return null!=e?e:C.trim(C.text(t)).replace(ue," ")}},select:{get:function(t){for(var e,n=t.options,r=t.selectedIndex,i="select-one"===t.type||r<0,o=i?null:[],s=i?r+1:n.length,a=r<0?s:i?r:0;a<s;a++)if(((e=n[a]).selected||a===r)&&(m.optDisabled?!e.disabled:null===e.getAttribute("disabled"))&&(!e.parentNode.disabled||!C.nodeName(e.parentNode,"optgroup"))){if(e=C(e).val(),i)return e;o.push(e)}return o},set:function(t,e){for(var n,r,i=t.options,o=C.makeArray(e),s=i.length;s--;)((r=i[s]).selected=-1<C.inArray(C.valHooks.option.get(r),o))&&(n=!0);return n||(t.selectedIndex=-1),o}}}}),C.each(["radio","checkbox"],function(){C.valHooks[this]={set:function(t,e){return C.isArray(e)?t.checked=-1<C.inArray(C(t).val(),e):void 0}},m.checkOn||(C.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})});var ce=/^(?:focusinfocus|focusoutblur)$/;C.extend(C.event,{trigger:function(t,e,n,r){var i,o,s,a,u,c,l=[n||x],h=d.call(t,"type")?t.type:t,f=d.call(t,"namespace")?t.namespace.split("."):[],p=o=n=n||x;if(3!==n.nodeType&&8!==n.nodeType&&!ce.test(h+C.event.triggered)&&(-1<h.indexOf(".")&&(h=(f=h.split(".")).shift(),f.sort()),a=h.indexOf(":")<0&&"on"+h,(t=t[C.expando]?t:new C.Event(h,"object"==typeof t&&t)).isTrigger=r?2:3,t.namespace=f.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=n),e=null==e?[t]:C.makeArray(e,[t]),c=C.event.special[h]||{},r||!c.trigger||!1!==c.trigger.apply(n,e))){if(!r&&!c.noBubble&&!C.isWindow(n)){for(s=c.delegateType||h,ce.test(s+h)||(p=p.parentNode);p;p=p.parentNode)l.push(p),o=p;o===(n.ownerDocument||x)&&l.push(o.defaultView||o.parentWindow||_)}for(i=0;(p=l[i++])&&!t.isPropagationStopped();)t.type=1<i?s:c.bindType||h,(u=(W.get(p,"events")||{})[t.type]&&W.get(p,"handle"))&&u.apply(p,e),(u=a&&p[a])&&u.apply&&N(p)&&(t.result=u.apply(p,e),!1===t.result&&t.preventDefault());return t.type=h,r||t.isDefaultPrevented()||c._default&&!1!==c._default.apply(l.pop(),e)||!N(n)||a&&C.isFunction(n[h])&&!C.isWindow(n)&&((o=n[a])&&(n[a]=null),n[C.event.triggered=h](),C.event.triggered=void 0,o&&(n[a]=o)),t.result}},simulate:function(t,e,n){t=C.extend(new C.Event,n,{type:t,isSimulated:!0});C.event.trigger(t,null,e)}}),C.fn.extend({trigger:function(t,e){return this.each(function(){C.event.trigger(t,e,this)})},triggerHandler:function(t,e){var n=this[0];return n?C.event.trigger(t,e,n,!0):void 0}}),C.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(t,n){C.fn[n]=function(t,e){return 0<arguments.length?this.on(n,null,t,e):this.trigger(n)}}),C.fn.extend({hover:function(t,e){return this.mouseenter(t).mouseleave(e||t)}}),m.focusin="onfocusin"in _,m.focusin||C.each({focus:"focusin",blur:"focusout"},function(n,r){function i(t){C.event.simulate(r,t.target,C.event.fix(t))}C.event.special[r]={setup:function(){var t=this.ownerDocument||this,e=W.access(t,r);e||t.addEventListener(n,i,!0),W.access(t,r,(e||0)+1)},teardown:function(){var t=this.ownerDocument||this,e=W.access(t,r)-1;e?W.access(t,r,e):(t.removeEventListener(n,i,!0),W.remove(t,r))}}});var le=_.location,he=C.now(),fe=/\?/;C.parseJSON=function(t){return JSON.parse(t+"")},C.parseXML=function(t){var e;if(!t||"string"!=typeof t)return null;try{e=(new _.DOMParser).parseFromString(t,"text/xml")}catch(t){e=void 0}return e&&!e.getElementsByTagName("parsererror").length||C.error("Invalid XML: "+t),e};var pe=/#.*$/,de=/([?&])_=[^&]*/,ge=/^(.*?):[ \t]*([^\r\n]*)$/gm,me=/^(?:GET|HEAD)$/,ve=/^\/\//,ye={},be={},we="*/".concat("*"),_e=x.createElement("a");function xe(o){return function(t,e){"string"!=typeof t&&(e=t,t="*");var n,r=0,i=t.toLowerCase().match(P)||[];if(C.isFunction(e))for(;n=i[r++];)"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(e)):(o[n]=o[n]||[]).push(e)}}function Ce(e,r,i,o){var s={},a=e===be;function u(t){var n;return s[t]=!0,C.each(e[t]||[],function(t,e){e=e(r,i,o);return"string"!=typeof e||a||s[e]?a?!(n=e):void 0:(r.dataTypes.unshift(e),u(e),!1)}),n}return u(r.dataTypes[0])||!s["*"]&&u("*")}function ke(t,e){var n,r,i=C.ajaxSettings.flatOptions||{};for(n in e)void 0!==e[n]&&((i[n]?t:r=r||{})[n]=e[n]);return r&&C.extend(!0,t,r),t}_e.href=le.href,C.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:le.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(le.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":we,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":C.parseJSON,"text xml":C.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?ke(ke(t,C.ajaxSettings),e):ke(C.ajaxSettings,t)},ajaxPrefilter:xe(ye),ajaxTransport:xe(be),ajax:function(t,e){"object"==typeof t&&(e=t,t=void 0);var u,c,l,n,h,f,r,p=C.ajaxSetup({},e=e||{}),d=p.context||p,g=p.context&&(d.nodeType||d.jquery)?C(d):C.event,m=C.Deferred(),v=C.Callbacks("once memory"),y=p.statusCode||{},i={},o={},b=0,s="canceled",w={readyState:0,getResponseHeader:function(t){var e;if(2===b){if(!n)for(n={};e=ge.exec(l);)n[e[1].toLowerCase()]=e[2];e=n[t.toLowerCase()]}return null==e?null:e},getAllResponseHeaders:function(){return 2===b?l:null},setRequestHeader:function(t,e){var n=t.toLowerCase();return b||(t=o[n]=o[n]||t,i[t]=e),this},overrideMimeType:function(t){return b||(p.mimeType=t),this},statusCode:function(t){if(t)if(b<2)for(var e in t)y[e]=[y[e],t[e]];else w.always(t[w.status]);return this},abort:function(t){t=t||s;return u&&u.abort(t),a(0,t),this}};if(m.promise(w).complete=v.add,w.success=w.done,w.error=w.fail,p.url=((t||p.url||le.href)+"").replace(pe,"").replace(ve,le.protocol+"//"),p.type=e.method||e.type||p.method||p.type,p.dataTypes=C.trim(p.dataType||"*").toLowerCase().match(P)||[""],null==p.crossDomain){t=x.createElement("a");try{t.href=p.url,t.href=t.href,p.crossDomain=_e.protocol+"//"+_e.host!=t.protocol+"//"+t.host}catch(t){p.crossDomain=!0}}if(p.data&&p.processData&&"string"!=typeof p.data&&(p.data=C.param(p.data,p.traditional)),Ce(ye,p,e,w),2===b)return w;for(r in(f=C.event&&p.global)&&0==C.active++&&C.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!me.test(p.type),c=p.url,p.hasContent||(p.data&&(c=p.url+=(fe.test(c)?"&":"?")+p.data,delete p.data),!1===p.cache&&(p.url=de.test(c)?c.replace(de,"$1_="+he++):c+(fe.test(c)?"&":"?")+"_="+he++)),p.ifModified&&(C.lastModified[c]&&w.setRequestHeader("If-Modified-Since",C.lastModified[c]),C.etag[c]&&w.setRequestHeader("If-None-Match",C.etag[c])),(p.data&&p.hasContent&&!1!==p.contentType||e.contentType)&&w.setRequestHeader("Content-Type",p.contentType),w.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+we+"; q=0.01":""):p.accepts["*"]),p.headers)w.setRequestHeader(r,p.headers[r]);if(p.beforeSend&&(!1===p.beforeSend.call(d,w,p)||2===b))return w.abort();for(r in s="abort",{success:1,error:1,complete:1})w[r](p[r]);if(u=Ce(be,p,e,w)){if(w.readyState=1,f&&g.trigger("ajaxSend",[w,p]),2===b)return w;p.async&&0<p.timeout&&(h=_.setTimeout(function(){w.abort("timeout")},p.timeout));try{b=1,u.send(i,a)}catch(t){if(!(b<2))throw t;a(-1,t)}}else a(-1,"No Transport");function a(t,e,n,r){var i,o,s,a=e;2!==b&&(b=2,h&&_.clearTimeout(h),u=void 0,l=r||"",w.readyState=0<t?4:0,r=200<=t&&t<300||304===t,n&&(s=function(t,e,n){for(var r,i,o,s,a=t.contents,u=t.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=t.mimeType||e.getResponseHeader("Content-Type"));if(r)for(i in a)if(a[i]&&a[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||t.converters[i+" "+u[0]]){o=i;break}s=s||i}o=o||s}return o?(o!==u[0]&&u.unshift(o),n[o]):void 0}(p,w,n)),s=function(t,e,n,r){var i,o,s,a,u,c={},l=t.dataTypes.slice();if(l[1])for(s in t.converters)c[s.toLowerCase()]=t.converters[s];for(o=l.shift();o;)if(t.responseFields[o]&&(n[t.responseFields[o]]=e),!u&&r&&t.dataFilter&&(e=t.dataFilter(e,t.dataType)),u=o,o=l.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(s=c[u+" "+o]||c["* "+o]))for(i in c)if(a=i.split(" "),a[1]===o&&(s=c[u+" "+a[0]]||c["* "+a[0]])){!0===s?s=c[i]:!0!==c[i]&&(o=a[0],l.unshift(a[1]));break}if(!0!==s)if(s&&t.throws)e=s(e);else try{e=s(e)}catch(t){return{state:"parsererror",error:s?t:"No conversion from "+u+" to "+o}}}return{state:"success",data:e}}(p,s,w,r),r?(p.ifModified&&((n=w.getResponseHeader("Last-Modified"))&&(C.lastModified[c]=n),(n=w.getResponseHeader("etag"))&&(C.etag[c]=n)),204===t||"HEAD"===p.type?a="nocontent":304===t?a="notmodified":(a=s.state,i=s.data,r=!(o=s.error))):(o=a,!t&&a||(a="error",t<0&&(t=0))),w.status=t,w.statusText=(e||a)+"",r?m.resolveWith(d,[i,a,w]):m.rejectWith(d,[w,a,o]),w.statusCode(y),y=void 0,f&&g.trigger(r?"ajaxSuccess":"ajaxError",[w,p,r?i:o]),v.fireWith(d,[w,a]),f&&(g.trigger("ajaxComplete",[w,p]),--C.active||C.event.trigger("ajaxStop")))}return w},getJSON:function(t,e,n){return C.get(t,e,n,"json")},getScript:function(t,e){return C.get(t,void 0,e,"script")}}),C.each(["get","post"],function(t,i){C[i]=function(t,e,n,r){return C.isFunction(e)&&(r=r||n,n=e,e=void 0),C.ajax(C.extend({url:t,type:i,dataType:r,data:e,success:n},C.isPlainObject(t)&&t))}}),C._evalUrl=function(t){return C.ajax({url:t,type:"GET",dataType:"script",async:!1,global:!1,throws:!0})},C.fn.extend({wrapAll:function(e){var t;return C.isFunction(e)?this.each(function(t){C(this).wrapAll(e.call(this,t))}):(this[0]&&(t=C(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var t=this;t.firstElementChild;)t=t.firstElementChild;return t}).append(this)),this)},wrapInner:function(n){return C.isFunction(n)?this.each(function(t){C(this).wrapInner(n.call(this,t))}):this.each(function(){var t=C(this),e=t.contents();e.length?e.wrapAll(n):t.append(n)})},wrap:function(e){var n=C.isFunction(e);return this.each(function(t){C(this).wrapAll(n?e.call(this,t):e)})},unwrap:function(){return this.parent().each(function(){C.nodeName(this,"body")||C(this).replaceWith(this.childNodes)}).end()}}),C.expr.filters.hidden=function(t){return!C.expr.filters.visible(t)},C.expr.filters.visible=function(t){return 0<t.offsetWidth||0<t.offsetHeight||0<t.getClientRects().length};var Se=/%20/g,Oe=/\[\]$/,Ee=/\r?\n/g,Te=/^(?:submit|button|image|reset|file)$/i,Ae=/^(?:input|select|textarea|keygen)/i;C.param=function(t,e){function n(t,e){e=C.isFunction(e)?e():null==e?"":e,i[i.length]=encodeURIComponent(t)+"="+encodeURIComponent(e)}var r,i=[];if(void 0===e&&(e=C.ajaxSettings&&C.ajaxSettings.traditional),C.isArray(t)||t.jquery&&!C.isPlainObject(t))C.each(t,function(){n(this.name,this.value)});else for(r in t)!function n(r,t,i,o){if(C.isArray(t))C.each(t,function(t,e){i||Oe.test(r)?o(r,e):n(r+"["+("object"==typeof e&&null!=e?t:"")+"]",e,i,o)});else if(i||"object"!==C.type(t))o(r,t);else for(var e in t)n(r+"["+e+"]",t[e],i,o)}(r,t[r],e,n);return i.join("&").replace(Se,"+")},C.fn.extend({serialize:function(){return C.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var t=C.prop(this,"elements");return t?C.makeArray(t):this}).filter(function(){var t=this.type;return this.name&&!C(this).is(":disabled")&&Ae.test(this.nodeName)&&!Te.test(t)&&(this.checked||!V.test(t))}).map(function(t,e){var n=C(this).val();return null==n?null:C.isArray(n)?C.map(n,function(t){return{name:e.name,value:t.replace(Ee,"\r\n")}}):{name:e.name,value:n.replace(Ee,"\r\n")}}).get()}}),C.ajaxSettings.xhr=function(){try{return new _.XMLHttpRequest}catch(t){}};var Ie={0:200,1223:204},je=C.ajaxSettings.xhr();m.cors=!!je&&"withCredentials"in je,m.ajax=je=!!je,C.ajaxTransport(function(i){var o,s;return m.cors||je&&!i.crossDomain?{send:function(t,e){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||t["X-Requested-With"]||(t["X-Requested-With"]="XMLHttpRequest"),t)r.setRequestHeader(n,t[n]);o=function(t){return function(){o&&(o=s=r.onload=r.onerror=r.onabort=r.onreadystatechange=null,"abort"===t?r.abort():"error"===t?"number"!=typeof r.status?e(0,"error"):e(r.status,r.statusText):e(Ie[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),s=r.onerror=o("error"),void 0!==r.onabort?r.onabort=s:r.onreadystatechange=function(){4===r.readyState&&_.setTimeout(function(){o&&s()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(t){if(o)throw t}},abort:function(){o&&o()}}:void 0}),C.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(t){return C.globalEval(t),t}}}),C.ajaxPrefilter("script",function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")}),C.ajaxTransport("script",function(n){var r,i;if(n.crossDomain)return{send:function(t,e){r=C("<script>").prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(t){r.remove(),i=null,t&&e("error"===t.type?404:200,t.type)}),x.head.appendChild(r[0])},abort:function(){i&&i()}}});var Pe=[],De=/(=)\?(?=&|$)|\?\?/;C.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var t=Pe.pop()||C.expando+"_"+he++;return this[t]=!0,t}}),C.ajaxPrefilter("json jsonp",function(t,e,n){var r,i,o,s=!1!==t.jsonp&&(De.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&De.test(t.data)&&"data");return s||"jsonp"===t.dataTypes[0]?(r=t.jsonpCallback=C.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(De,"$1"+r):!1!==t.jsonp&&(t.url+=(fe.test(t.url)?"&":"?")+t.jsonp+"="+r),t.converters["script json"]=function(){return o||C.error(r+" was not called"),o[0]},t.dataTypes[0]="json",i=_[r],_[r]=function(){o=arguments},n.always(function(){void 0===i?C(_).removeProp(r):_[r]=i,t[r]&&(t.jsonpCallback=e.jsonpCallback,Pe.push(r)),o&&C.isFunction(i)&&i(o[0]),o=i=void 0}),"script"):void 0}),C.parseHTML=function(t,e,n){if(!t||"string"!=typeof t)return null;"boolean"==typeof e&&(n=e,e=!1),e=e||x;var r=w.exec(t),n=!n&&[];return r?[e.createElement(r[1])]:(r=Z([t],e,n),n&&n.length&&C(n).remove(),C.merge([],r.childNodes))};var Ne=C.fn.load;function Re(t){return C.isWindow(t)?t:9===t.nodeType&&t.defaultView}C.fn.load=function(t,e,n){if("string"!=typeof t&&Ne)return Ne.apply(this,arguments);var r,i,o,s=this,a=t.indexOf(" ");return-1<a&&(r=C.trim(t.slice(a)),t=t.slice(0,a)),C.isFunction(e)?(n=e,e=void 0):e&&"object"==typeof e&&(i="POST"),0<s.length&&C.ajax({url:t,type:i||"GET",dataType:"html",data:e}).done(function(t){o=arguments,s.html(r?C("<div>").append(C.parseHTML(t)).find(r):t)}).always(n&&function(t,e){s.each(function(){n.apply(this,o||[t.responseText,e,t])})}),this},C.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(t,e){C.fn[e]=function(t){return this.on(e,t)}}),C.expr.filters.animated=function(e){return C.grep(C.timers,function(t){return e===t.elem}).length},C.offset={setOffset:function(t,e,n){var r,i,o,s,a=C.css(t,"position"),u=C(t),c={};"static"===a&&(t.style.position="relative"),o=u.offset(),r=C.css(t,"top"),s=C.css(t,"left"),s=("absolute"===a||"fixed"===a)&&-1<(r+s).indexOf("auto")?(i=(a=u.position()).top,a.left):(i=parseFloat(r)||0,parseFloat(s)||0),null!=(e=C.isFunction(e)?e.call(t,n,C.extend({},o)):e).top&&(c.top=e.top-o.top+i),null!=e.left&&(c.left=e.left-o.left+s),"using"in e?e.using.call(t,c):u.css(c)}},C.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){C.offset.setOffset(this,e,t)});var t,n=this[0],r={top:0,left:0},i=n&&n.ownerDocument;return i?(t=i.documentElement,C.contains(t,n)?(r=n.getBoundingClientRect(),i=Re(i),{top:r.top+i.pageYOffset-t.clientTop,left:r.left+i.pageXOffset-t.clientLeft}):r):void 0},position:function(){if(this[0]){var t,e,n=this[0],r={top:0,left:0};return"fixed"===C.css(n,"position")?e=n.getBoundingClientRect():(t=this.offsetParent(),e=this.offset(),(r=!C.nodeName(t[0],"html")?t.offset():r).top+=C.css(t[0],"borderTopWidth",!0),r.left+=C.css(t[0],"borderLeftWidth",!0)),{top:e.top-r.top-C.css(n,"marginTop",!0),left:e.left-r.left-C.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var t=this.offsetParent;t&&"static"===C.css(t,"position");)t=t.offsetParent;return t||Pt})}}),C.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,i){var o="pageYOffset"===i;C.fn[e]=function(t){return R(this,function(t,e,n){var r=Re(t);return void 0===n?r?r[i]:t[e]:void(r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):t[e]=n)},e,t,arguments.length)}}),C.each(["top","left"],function(t,n){C.cssHooks[n]=Rt(m.pixelPosition,function(t,e){return e?(e=Nt(t,n),It.test(e)?C(t).position()[n]+"px":e):void 0})}),C.each({Height:"height",Width:"width"},function(o,s){C.each({padding:"inner"+o,content:s,"":"outer"+o},function(r,t){C.fn[t]=function(t,e){var n=arguments.length&&(r||"boolean"!=typeof t),i=r||(!0===t||!0===e?"margin":"border");return R(this,function(t,e,n){var r;return C.isWindow(t)?t.document.documentElement["client"+o]:9===t.nodeType?(r=t.documentElement,Math.max(t.body["scroll"+o],r["scroll"+o],t.body["offset"+o],r["offset"+o],r["client"+o])):void 0===n?C.css(t,e,i):C.style(t,e,n,i)},s,n?t:void 0,n,null)}})}),C.fn.extend({bind:function(t,e,n){return this.on(t,null,e,n)},unbind:function(t,e){return this.off(t,null,e)},delegate:function(t,e,n,r){return this.on(e,t,n,r)},undelegate:function(t,e,n){return 1===arguments.length?this.off(t,"**"):this.off(e,t||"**",n)},size:function(){return this.length}}),C.fn.andSelf=C.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return C});var Me=_.jQuery,We=_.$;return C.noConflict=function(t){return _.$===C&&(_.$=We),t&&_.jQuery===C&&(_.jQuery=Me),C},t||(_.jQuery=_.$=C),C}),function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).uuid={})}(this,function(t){"use strict";var e,n=new Uint8Array(16);function l(){if(!e&&!(e="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return e(n)}var r=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function i(t){return"string"==typeof t&&r.test(t)}for(var h,f,o=[],s=0;s<256;++s)o.push((s+256).toString(16).substr(1));function p(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0,e=(o[t[e+0]]+o[t[e+1]]+o[t[e+2]]+o[t[e+3]]+"-"+o[t[e+4]]+o[t[e+5]]+"-"+o[t[e+6]]+o[t[e+7]]+"-"+o[t[e+8]]+o[t[e+9]]+"-"+o[t[e+10]]+o[t[e+11]]+o[t[e+12]]+o[t[e+13]]+o[t[e+14]]+o[t[e+15]]).toLowerCase();if(!i(e))throw TypeError("Stringified UUID is invalid");return e}var d=0,g=0;function u(t){if(!i(t))throw TypeError("Invalid UUID");var e,n=new Uint8Array(16);return n[0]=(e=parseInt(t.slice(0,8),16))>>>24,n[1]=e>>>16&255,n[2]=e>>>8&255,n[3]=255&e,n[4]=(e=parseInt(t.slice(9,13),16))>>>8,n[5]=255&e,n[6]=(e=parseInt(t.slice(14,18),16))>>>8,n[7]=255&e,n[8]=(e=parseInt(t.slice(19,23),16))>>>8,n[9]=255&e,n[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,n[11]=e/4294967296&255,n[12]=e>>>24&255,n[13]=e>>>16&255,n[14]=e>>>8&255,n[15]=255&e,n}function a(t,s,a){function e(t,e,n,r){if("string"==typeof t&&(t=function(t){t=unescape(encodeURIComponent(t));for(var e=[],n=0;n<t.length;++n)e.push(t.charCodeAt(n));return e}(t)),16!==(e="string"==typeof e?u(e):e).length)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var i=new Uint8Array(16+t.length);if(i.set(e),i.set(t,e.length),(i=a(i))[6]=15&i[6]|s,i[8]=63&i[8]|128,n){r=r||0;for(var o=0;o<16;++o)n[r+o]=i[o];return n}return p(i)}try{e.name=t}catch(t){}return e.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",e.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",e}function m(t){return 14+(t+64>>>9<<4)+1}function v(t,e){var n=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(n>>16)<<16|65535&n}function c(t,e,n,r,i,o){return v((o=v(v(e,t),v(r,o)))<<i|o>>>32-i,n)}function y(t,e,n,r,i,o,s){return c(e&n|~e&r,t,e,i,o,s)}function b(t,e,n,r,i,o,s){return c(e&r|n&~r,t,e,i,o,s)}function w(t,e,n,r,i,o,s){return c(e^n^r,t,e,i,o,s)}function _(t,e,n,r,i,o,s){return c(n^(e|~r),t,e,i,o,s)}var x=a("v3",48,function(t){if("string"==typeof t){var e=unescape(encodeURIComponent(t));t=new Uint8Array(e.length);for(var n=0;n<e.length;++n)t[n]=e.charCodeAt(n)}return function(t){for(var e=[],n=32*t.length,r="0123456789abcdef",i=0;i<n;i+=8){var o=t[i>>5]>>>i%32&255,o=parseInt(r.charAt(o>>>4&15)+r.charAt(15&o),16);e.push(o)}return e}(function(t,e){t[e>>5]|=128<<e%32,t[m(e)-1]=e;for(var n=1732584193,r=-271733879,i=-1732584194,o=271733878,s=0;s<t.length;s+=16){var a=n,u=r,c=i,l=o,n=y(n,r,i,o,t[s],7,-680876936),o=y(o,n,r,i,t[s+1],12,-389564586),i=y(i,o,n,r,t[s+2],17,606105819),r=y(r,i,o,n,t[s+3],22,-1044525330);n=y(n,r,i,o,t[s+4],7,-176418897),o=y(o,n,r,i,t[s+5],12,1200080426),i=y(i,o,n,r,t[s+6],17,-1473231341),r=y(r,i,o,n,t[s+7],22,-45705983),n=y(n,r,i,o,t[s+8],7,1770035416),o=y(o,n,r,i,t[s+9],12,-1958414417),i=y(i,o,n,r,t[s+10],17,-42063),r=y(r,i,o,n,t[s+11],22,-1990404162),n=y(n,r,i,o,t[s+12],7,1804603682),o=y(o,n,r,i,t[s+13],12,-40341101),i=y(i,o,n,r,t[s+14],17,-1502002290),n=b(n,r=y(r,i,o,n,t[s+15],22,1236535329),i,o,t[s+1],5,-165796510),o=b(o,n,r,i,t[s+6],9,-1069501632),i=b(i,o,n,r,t[s+11],14,643717713),r=b(r,i,o,n,t[s],20,-373897302),n=b(n,r,i,o,t[s+5],5,-701558691),o=b(o,n,r,i,t[s+10],9,38016083),i=b(i,o,n,r,t[s+15],14,-660478335),r=b(r,i,o,n,t[s+4],20,-405537848),n=b(n,r,i,o,t[s+9],5,568446438),o=b(o,n,r,i,t[s+14],9,-1019803690),i=b(i,o,n,r,t[s+3],14,-187363961),r=b(r,i,o,n,t[s+8],20,1163531501),n=b(n,r,i,o,t[s+13],5,-1444681467),o=b(o,n,r,i,t[s+2],9,-51403784),i=b(i,o,n,r,t[s+7],14,1735328473),n=w(n,r=b(r,i,o,n,t[s+12],20,-1926607734),i,o,t[s+5],4,-378558),o=w(o,n,r,i,t[s+8],11,-2022574463),i=w(i,o,n,r,t[s+11],16,1839030562),r=w(r,i,o,n,t[s+14],23,-35309556),n=w(n,r,i,o,t[s+1],4,-1530992060),o=w(o,n,r,i,t[s+4],11,1272893353),i=w(i,o,n,r,t[s+7],16,-155497632),r=w(r,i,o,n,t[s+10],23,-1094730640),n=w(n,r,i,o,t[s+13],4,681279174),o=w(o,n,r,i,t[s],11,-358537222),i=w(i,o,n,r,t[s+3],16,-722521979),r=w(r,i,o,n,t[s+6],23,76029189),n=w(n,r,i,o,t[s+9],4,-640364487),o=w(o,n,r,i,t[s+12],11,-421815835),i=w(i,o,n,r,t[s+15],16,530742520),n=_(n,r=w(r,i,o,n,t[s+2],23,-995338651),i,o,t[s],6,-198630844),o=_(o,n,r,i,t[s+7],10,1126891415),i=_(i,o,n,r,t[s+14],15,-1416354905),r=_(r,i,o,n,t[s+5],21,-57434055),n=_(n,r,i,o,t[s+12],6,1700485571),o=_(o,n,r,i,t[s+3],10,-1894986606),i=_(i,o,n,r,t[s+10],15,-1051523),r=_(r,i,o,n,t[s+1],21,-2054922799),n=_(n,r,i,o,t[s+8],6,1873313359),o=_(o,n,r,i,t[s+15],10,-30611744),i=_(i,o,n,r,t[s+6],15,-1560198380),r=_(r,i,o,n,t[s+13],21,1309151649),n=_(n,r,i,o,t[s+4],6,-145523070),o=_(o,n,r,i,t[s+11],10,-1120210379),i=_(i,o,n,r,t[s+2],15,718787259),r=_(r,i,o,n,t[s+9],21,-343485551),n=v(n,a),r=v(r,u),i=v(i,c),o=v(o,l)}return[n,r,i,o]}(function(t){if(0===t.length)return[];for(var e=8*t.length,n=new Uint32Array(m(e)),r=0;r<e;r+=8)n[r>>5]|=(255&t[r/8])<<r%32;return n}(t),8*t.length))});function C(t,e){return t<<e|t>>>32-e}var k=a("v5",80,function(t){var e=[1518500249,1859775393,2400959708,3395469782],n=[1732584193,4023233417,2562383102,271733878,3285377520];if("string"==typeof t){var r=unescape(encodeURIComponent(t));t=[];for(var i=0;i<r.length;++i)t.push(r.charCodeAt(i))}else Array.isArray(t)||(t=Array.prototype.slice.call(t));t.push(128);for(var o=t.length/4+2,s=Math.ceil(o/16),a=new Array(s),u=0;u<s;++u){for(var c=new Uint32Array(16),l=0;l<16;++l)c[l]=t[64*u+4*l]<<24|t[64*u+4*l+1]<<16|t[64*u+4*l+2]<<8|t[64*u+4*l+3];a[u]=c}a[s-1][14]=8*(t.length-1)/Math.pow(2,32),a[s-1][14]=Math.floor(a[s-1][14]),a[s-1][15]=8*(t.length-1)&4294967295;for(var h=0;h<s;++h){for(var f=new Uint32Array(80),p=0;p<16;++p)f[p]=a[h][p];for(var d=16;d<80;++d)f[d]=C(f[d-3]^f[d-8]^f[d-14]^f[d-16],1);for(var g=n[0],m=n[1],v=n[2],y=n[3],b=n[4],w=0;w<80;++w)var _=Math.floor(w/20),_=C(g,5)+function(t,e,n,r){switch(t){case 0:return e&n^~e&r;case 1:return e^n^r;case 2:return e&n^e&r^n&r;case 3:return e^n^r}}(_,m,v,y)+b+e[_]+f[w]>>>0,b=y,y=v,v=C(m,30)>>>0,m=g,g=_;n[0]=n[0]+g>>>0,n[1]=n[1]+m>>>0,n[2]=n[2]+v>>>0,n[3]=n[3]+y>>>0,n[4]=n[4]+b>>>0}return[n[0]>>24&255,n[0]>>16&255,n[0]>>8&255,255&n[0],n[1]>>24&255,n[1]>>16&255,n[1]>>8&255,255&n[1],n[2]>>24&255,n[2]>>16&255,n[2]>>8&255,255&n[2],n[3]>>24&255,n[3]>>16&255,n[3]>>8&255,255&n[3],n[4]>>24&255,n[4]>>16&255,n[4]>>8&255,255&n[4]]});t.NIL="00000000-0000-0000-0000-000000000000",t.parse=u,t.stringify=p,t.v1=function(t,e,n){var r=e&&n||0,i=e||new Array(16),o=(t=t||{}).node||h,s=void 0!==t.clockseq?t.clockseq:f;null!=o&&null!=s||(u=t.random||(t.rng||l)(),null==o&&(o=h=[1|u[0],u[1],u[2],u[3],u[4],u[5]]),null==s&&(s=f=16383&(u[6]<<8|u[7])));var a=void 0!==t.msecs?t.msecs:Date.now(),n=void 0!==t.nsecs?t.nsecs:g+1,u=a-d+(n-g)/1e4;if(u<0&&void 0===t.clockseq&&(s=s+1&16383),1e4<=(n=(u<0||d<a)&&void 0===t.nsecs?0:n))throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");d=a,f=s;n=(1e4*(268435455&(a+=122192928e5))+(g=n))%4294967296;i[r++]=n>>>24&255,i[r++]=n>>>16&255,i[r++]=n>>>8&255,i[r++]=255&n;a=a/4294967296*1e4&268435455;i[r++]=a>>>8&255,i[r++]=255&a,i[r++]=a>>>24&15|16,i[r++]=a>>>16&255,i[r++]=s>>>8|128,i[r++]=255&s;for(var c=0;c<6;++c)i[r+c]=o[c];return e||p(i)},t.v3=x,t.v4=function(t,e,n){var r=(t=t||{}).random||(t.rng||l)();if(r[6]=15&r[6]|64,r[8]=63&r[8]|128,e){n=n||0;for(var i=0;i<16;++i)e[n+i]=r[i];return e}return p(r)},t.v5=k,t.validate=i,t.version=function(t){if(!i(t))throw TypeError("Invalid UUID");return parseInt(t.substr(14,1),16)},Object.defineProperty(t,"__esModule",{value:!0})}),function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.clipboard=e():t.clipboard=e()}(this,function(){return i={},r.m=n=[function(t,e,n){"use strict";function o(t){var e=new v,t=function(n,t,r){f("listener called"),n.success=!0,t.forEach(function(t,e){r.clipboardData.setData(e,t),e===g&&r.clipboardData.getData(e)!=t&&(f("setting text/plain failed"),n.success=!1)}),r.preventDefault()}.bind(this,e,t);document.addEventListener("copy",t);try{document.execCommand("copy")}finally{document.removeEventListener("copy",t)}return e.success}function s(t,e){a(t);e=o(e);return u(),e}function a(t){var e=document.getSelection(),n=document.createRange();n.selectNodeContents(t),e.removeAllRanges(),e.addRange(n)}function u(){document.getSelection().removeAllRanges()}function c(){return"undefined"==typeof ClipboardEvent&&void 0!==window.clipboardData&&void 0!==window.clipboardData.setData}function r(){return new h(function(t,e){var n=window.clipboardData.getData("Text");""===n?e(new Error("Empty clipboard or could not read plain text from clipboard")):t(n)})}Object.defineProperty(e,"__esModule",{value:!0});var i=n(1),l=n(5),h="undefined"==typeof Promise?i.Promise:Promise,f=function(t){},p=!0,d=function(){(console.warn||console.log).call(arguments)}.bind(console,"[clipboard-polyfill]"),g="text/plain",i=(m.setDebugLog=function(t){f=t},m.suppressWarnings=function(){p=!1,l.suppressDTWarnings()},m.write=function(i){return p&&!i.getData(g)&&d("clipboard.write() was called without a `text/plain` data type. On some platforms, this may result in an empty clipboard. Call clipboard.suppressWarnings() to suppress this warning."),new h(function(t,e){if(c())(function(t){if(void 0!==(t=t.getData(g)))return window.clipboardData.setData("Text",t);throw"No `text/plain` value was specified."})(i)?t():e(new Error("Copying failed, possibly because the user rejected it."));else{if(o(i))return f("regular execCopy worked"),void t();if(-1<navigator.userAgent.indexOf("Edge"))return f('UA "Edge" => assuming success'),void t();if(s(document.body,i))return f("copyUsingTempSelection worked"),void t();if(r=i,(n=document.createElement("div")).setAttribute("style","-webkit-user-select: text !important"),n.textContent="temporary element",document.body.appendChild(n),r=s(n,r),document.body.removeChild(n),r)return f("copyUsingTempElem worked"),void t();var n,r=i.getData(g);if(void 0!==r&&function(t){f("copyTextUsingDOM");var e=document.createElement("div");e.setAttribute("style","-webkit-user-select: text !important");var n=e;e.attachShadow&&(f("Using shadow DOM."),n=e.attachShadow({mode:"open"}));var r=document.createElement("span");return r.innerText=t,n.appendChild(r),document.body.appendChild(e),a(r),r=document.execCommand("copy"),u(),document.body.removeChild(e),r}(r))return f("copyTextUsingDOM worked"),void t();e(new Error("Copy command failed."))}})},m.writeText=function(t){if(navigator.clipboard&&navigator.clipboard.writeText)return navigator.clipboard.writeText(t);var e=new l.DT;return e.setData(g,t),this.write(e)},m.read=function(){return new h(function(n,t){c()?r().then(function(t){return n((e=t,(t=new l.DT).setData(g,e),t));var e},t):t("Read is not supported in your browser.")})},m.readText=function(){return navigator.clipboard&&navigator.clipboard.readText?navigator.clipboard.readText():c()?r():new h(function(t,e){e("Read is not supported in your browser.")})},m.DT=l.DT,m);function m(){}e.default=i;var v=function(){this.success=!1};t.exports=i},function(t,e,st){!function(it,ot){t.exports=function(){"use strict";function n(t){var e=typeof t;return null!==t&&("object"===e||"function"===e)}function c(t){return"function"==typeof t}function t(t){q=t}function e(t){z=t}function r(){return void 0!==B?function(){B(o)}:i()}function i(){var t=setTimeout;return function(){return t(o,1)}}function o(){for(var t=0;t<H;t+=2)(0,Y[t])(Y[t+1]),Y[t]=void 0,Y[t+1]=void 0;H=0}function s(t,e){var n=arguments,r=this,i=new this.constructor(u);void 0===i[Q]&&T(i);var o=r._state;return o?function(){var t=n[o-1];z(function(){return S(o,i,t,r._result)})}():_(r,i,t,e),i}function a(t){var e=this;if(t&&"object"==typeof t&&t.constructor===e)return t;var n=new e(u);return v(n,t),n}function u(){}function l(){return new TypeError("You cannot resolve a promise with itself")}function h(){return new TypeError("A promises callback cannot return that same promise.")}function f(t){try{return t.then}catch(t){return et.error=t,et}}function p(t,e,n,r){try{t.call(e,n,r)}catch(t){return t}}function d(t,r,i){z(function(e){var n=!1,t=p(i,r,function(t){n||(n=!0,r!==t?v(e,t):b(e,t))},function(t){n||(n=!0,w(e,t))},"Settle: "+(e._label||" unknown promise"));!n&&t&&(n=!0,w(e,t))},t)}function g(e,t){t._state===Z?b(e,t._result):t._state===tt?w(e,t._result):_(t,void 0,function(t){return v(e,t)},function(t){return w(e,t)})}function m(t,e,n){e.constructor===t.constructor&&n===s&&e.constructor.resolve===a?g(t,e):n===et?(w(t,et.error),et.error=null):void 0===n?b(t,e):c(n)?d(t,e,n):b(t,e)}function v(t,e){t===e?w(t,l()):n(e)?m(t,e,f(e)):b(t,e)}function y(t){t._onerror&&t._onerror(t._result),x(t)}function b(t,e){t._state===J&&(t._result=e,t._state=Z,0!==t._subscribers.length&&z(x,t))}function w(t,e){t._state===J&&(t._state=tt,t._result=e,z(y,t))}function _(t,e,n,r){var i=t._subscribers,o=i.length;t._onerror=null,i[o]=e,i[o+Z]=n,i[o+tt]=r,0===o&&t._state&&z(x,t)}function x(t){var e=t._subscribers,n=t._state;if(0!==e.length){for(var r=void 0,i=void 0,o=t._result,s=0;s<e.length;s+=3)r=e[s],i=e[s+n],r?S(n,r,i,o):i(o);t._subscribers.length=0}}function C(){this.error=null}function k(t,e){try{return t(e)}catch(t){return nt.error=t,nt}}function S(t,e,n,r){var i=c(n),o=void 0,s=void 0,a=void 0,u=void 0;if(i){if(o=k(n,r),o===nt?(u=!0,s=o.error,o.error=null):a=!0,e===o)return void w(e,h())}else o=r,a=!0;e._state!==J||(i&&a?v(e,o):u?w(e,s):t===Z?b(e,o):t===tt&&w(e,o))}function O(e,t){try{t(function(t){v(e,t)},function(t){w(e,t)})}catch(t){w(e,t)}}function E(){return rt++}function T(t){t[Q]=rt++,t._state=void 0,t._result=void 0,t._subscribers=[]}function A(t,e){this._instanceConstructor=t,this.promise=new t(u),this.promise[Q]||T(this.promise),F(e)?(this.length=e.length,this._remaining=e.length,this._result=new Array(this.length),0===this.length?b(this.promise,this._result):(this.length=this.length||0,this._enumerate(e),0===this._remaining&&b(this.promise,this._result))):w(this.promise,I())}function I(){return new Error("Array Methods must be provided an Array")}function j(t){return new A(this,t).promise}function P(i){var o=this;return new o(F(i)?function(t,e){for(var n=i.length,r=0;r<n;r++)o.resolve(i[r]).then(t,e)}:function(t,e){return e(new TypeError("You must pass an array to race."))})}function D(t){var e=this,n=new e(u);return w(n,t),n}function N(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}function R(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}function M(t){this[Q]=E(),this._result=this._state=void 0,this._subscribers=[],u!==t&&("function"!=typeof t&&N(),this instanceof M?O(this,t):R())}function W(){var t=void 0;if(void 0!==ot)t=ot;else if("undefined"!=typeof self)t=self;else try{t=Function("return this")()}catch(t){throw new Error("polyfill failed because global object is unavailable in this environment")}var e=t.Promise;if(e){var n=null;try{n=Object.prototype.toString.call(e.resolve())}catch(t){}if("[object Promise]"===n&&!e.cast)return}t.Promise=M}var L=void 0,L,F=Array.isArray?Array.isArray:function(t){return"[object Array]"===Object.prototype.toString.call(t)},H=0,B=void 0,q=void 0,z=function(t,e){Y[H]=t,Y[H+1]=e,2===(H+=2)&&(q?q(o):K())},U="undefined"!=typeof window?window:void 0,G=U||{},V=G.MutationObserver||G.WebKitMutationObserver,$="undefined"==typeof self&&void 0!==it&&"[object process]"==={}.toString.call(it),X="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel,Y=new Array(1e3),K=void 0,K=$?function(){return function(){return it.nextTick(o)}}():V?function(){var t=0,e=new V(o),n=document.createTextNode("");return e.observe(n,{characterData:!0}),function(){n.data=t=++t%2}}():X?function(){var t=new MessageChannel;return t.port1.onmessage=o,function(){return t.port2.postMessage(0)}}():void 0===U?function(){try{var t=st(4);return B=t.runOnLoop||t.runOnContext,r()}catch(t){return i()}}():i(),Q=Math.random().toString(36).substring(16),J=void 0,Z=1,tt=2,et=new C,nt=new C,rt=0;return A.prototype._enumerate=function(t){for(var e=0;this._state===J&&e<t.length;e++)this._eachEntry(t[e],e)},A.prototype._eachEntry=function(e,t){var n=this._instanceConstructor,r=n.resolve;if(r===a){var i=f(e);if(i===s&&e._state!==J)this._settledAt(e._state,t,e._result);else if("function"!=typeof i)this._remaining--,this._result[t]=e;else if(n===M){var o=new n(u);m(o,e,i),this._willSettleAt(o,t)}else this._willSettleAt(new n(function(t){return t(e)}),t)}else this._willSettleAt(r(e),t)},A.prototype._settledAt=function(t,e,n){var r=this.promise;r._state===J&&(this._remaining--,t===tt?w(r,n):this._result[e]=n),0===this._remaining&&b(r,this._result)},A.prototype._willSettleAt=function(t,e){var n=this;_(t,void 0,function(t){return n._settledAt(Z,e,t)},function(t){return n._settledAt(tt,e,t)})},M.all=j,M.race=P,M.resolve=a,M.reject=D,M._setScheduler=t,M._setAsap=e,M._asap=z,M.prototype={constructor:M,then:s,catch:function(t){return this.then(null,t)}},M.polyfill=W,M.Promise=M}()}.call(e,st(2),st(3))},function(t,e){function n(){throw new Error("setTimeout has not been defined")}function r(){throw new Error("clearTimeout has not been defined")}function i(e){if(c===setTimeout)return setTimeout(e,0);if((c===n||!c)&&setTimeout)return c=setTimeout,setTimeout(e,0);try{return c(e,0)}catch(t){try{return c.call(null,e,0)}catch(t){return c.call(this,e,0)}}}function o(){p&&h&&(p=!1,h.length?f=h.concat(f):d=-1,f.length&&s())}function s(){if(!p){var t=i(o);p=!0;for(var e=f.length;e;){for(h=f,f=[];++d<e;)h&&h[d].run();d=-1,e=f.length}h=null,p=!1,function(e){if(l===clearTimeout)return clearTimeout(e);if((l===r||!l)&&clearTimeout)return l=clearTimeout,clearTimeout(e);try{l(e)}catch(t){try{return l.call(null,e)}catch(t){return l.call(this,e)}}}(t)}}function a(t,e){this.fun=t,this.array=e}function u(){}var c,l,t=t.exports={};!function(){try{c="function"==typeof setTimeout?setTimeout:n}catch(t){c=n}try{l="function"==typeof clearTimeout?clearTimeout:r}catch(t){l=r}}();var h,f=[],p=!1,d=-1;t.nextTick=function(t){var e=new Array(arguments.length-1);if(1<arguments.length)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];f.push(new a(t,e)),1!==f.length||p||i(s)},a.prototype.run=function(){this.fun.apply(null,this.array)},t.title="browser",t.browser=!0,t.env={},t.argv=[],t.version="",t.versions={},t.on=u,t.addListener=u,t.once=u,t.off=u,t.removeListener=u,t.removeAllListeners=u,t.emit=u,t.prependListener=u,t.prependOnceListener=u,t.listeners=function(t){return[]},t.binding=function(t){throw new Error("process.binding is not supported")},t.cwd=function(){return"/"},t.chdir=function(t){throw new Error("process.chdir is not supported")},t.umask=function(){return 0}},function(t,e){var n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(n=window)}t.exports=n},function(t,e){},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=["text/plain","text/html"],i=function(){(console.warn||console.log).call(arguments)}.bind(console,"[clipboard-polyfill]"),o=!0;e.suppressDTWarnings=function(){o=!1};var s=(a.prototype.setData=function(t,e){o&&-1===r.indexOf(t)&&i("Unknown data type: "+t,"Call clipboard.suppressWarnings() to suppress this warning."),this.m[t]=e},a.prototype.getData=function(t){return this.m[t]},a.prototype.forEach=function(t){for(var e in this.m)t(this.m[e],e)},a);function a(){this.m={}}e.DT=s}],r.c=i,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:n})},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=0);function r(t){if(i[t])return i[t].exports;var e=i[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,r),e.l=!0,e.exports}var n,i}),function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof exports&&"object"==typeof module?module.exports=t(require("jquery")):t(jQuery)}(function(It,jt){"use strict";var t,Pt={beforeShow:n,move:n,change:n,show:n,hide:n,color:!1,flat:!1,showInput:!1,allowEmpty:!1,showButtons:!0,clickoutFiresChange:!0,showInitial:!1,showPalette:!1,showPaletteOnly:!1,hideAfterPaletteSelect:!1,togglePaletteOnly:!1,showSelectionPalette:!0,localStorageKey:!1,appendTo:"body",maxSelectionSize:7,cancelText:"cancel",chooseText:"choose",togglePaletteMoreText:"more",togglePaletteLessText:"less",clearText:"Clear Color Selection",noColorSelectedText:"No Color Selected",preferredFormat:!1,className:"",containerClassName:"",replacerClassName:"",showAlpha:!1,theme:"sp-light",palette:[["#ffffff","#000000","#ff0000","#ff8000","#ffff00","#008000","#0000ff","#4b0082","#9400d3"]],selectionPalette:[],disabled:!1,offset:null},Dt=[],Nt=!!/msie/i.exec(window.navigator.userAgent),Rt=((t=document.createElement("div").style).cssText="background-color:rgba(0,0,0,.5)",e(t.backgroundColor,"rgba")||e(t.backgroundColor,"hsla")),Mt=["<div class='sp-replacer'>","<div class='sp-preview'><div class='sp-preview-inner'></div></div>","<div class='sp-dd'>▼</div>","</div>"].join(""),Wt=function(){var t="";if(Nt)for(var e=1;e<=6;e++)t+="<div class='sp-"+e+"'></div>";return["<div class='sp-container sp-hidden'>","<div class='sp-palette-container'>","<div class='sp-palette sp-thumb sp-cf'></div>","<div class='sp-palette-button-container sp-cf'>","<button type='button' class='sp-palette-toggle'></button>","</div>","</div>","<div class='sp-picker-container'>","<div class='sp-top sp-cf'>","<div class='sp-fill'></div>","<div class='sp-top-inner'>","<div class='sp-color'>","<div class='sp-sat'>","<div class='sp-val'>","<div class='sp-dragger'></div>","</div>","</div>","</div>","<div class='sp-clear sp-clear-display'>","</div>","<div class='sp-hue'>","<div class='sp-slider'></div>",t,"</div>","</div>","<div class='sp-alpha'><div class='sp-alpha-inner'><div class='sp-alpha-handle'></div></div></div>","</div>","<div class='sp-input-container sp-cf'>","<input class='sp-input formulaInputFocus' type='text' spellcheck='false' />","</div>","<div class='sp-initial sp-thumb sp-cf'></div>","<div class='sp-button-container sp-cf'>","<a class='sp-cancel' href='#'></a>","<button type='button' class='sp-choose'></button>","</div>","</div>","</div>"].join("")}();function e(t,e){return!!~(""+t).indexOf(e)}function Lt(t,e,n,r){for(var i=[],o=0;o<t.length;o++){var s,a,u,c=t[o];c?(a=(s=tinycolor(c)).toHsl().l<.5?"sp-thumb-el sp-thumb-dark":"sp-thumb-el sp-thumb-light",a+=tinycolor.equals(e,c)?" sp-thumb-active":"",u=s.toString(r.preferredFormat||"rgb"),c=Rt?"background-color:"+s.toRgbString():"filter:"+s.toFilter(),i.push('<span title="'+u+'" data-color="'+s.toRgbString()+'" class="'+a+'"><span class="sp-thumb-inner" style="'+c+';" /></span>')):i.push(It("<div />").append(It('<span data-color="" style="background-color:transparent;" class="sp-clear-display"></span>').attr("title",r.noColorSelectedText)).html())}return"<div class='sp-cf "+n+"'>"+i.join("")+"</div>"}function o(t,e){var n,r,i,a=(i=t,(e=It.extend({},Pt,e)).callbacks={move:Ht(e.move,i),change:Ht(e.change,i),show:Ht(e.show,i),hide:Ht(e.hide,i),beforeShow:Ht(e.beforeShow,i)},e),u=a.flat,o=a.showSelectionPalette,s=a.localStorageKey,e=a.theme,c=a.callbacks,l=(n=Et,function(){var t=this,e=arguments;r=r||setTimeout(function(){r=null,n.apply(t,e)},10)}),h=!10,f=!1,p=0,d=0,g=0,m=0,v=0,y=0,b=0,w=0,_=0,x=0,C=1,k=[],S=[],O={},E=a.selectionPalette.slice(0),T=a.maxSelectionSize,A="sp-dragging",I=null,j=t.ownerDocument,P=(j.body,It(t)),D=!1,N=It(Wt,j).addClass(e),R=N.find(".sp-picker-container"),M=N.find(".sp-color"),W=N.find(".sp-dragger"),L=N.find(".sp-hue"),F=N.find(".sp-slider"),H=N.find(".sp-alpha-inner"),B=N.find(".sp-alpha"),q=N.find(".sp-alpha-handle"),z=N.find(".sp-input"),U=N.find(".sp-palette"),G=N.find(".sp-initial"),V=N.find(".sp-cancel"),$=N.find(".sp-clear"),X=N.find(".sp-choose"),Y=N.find(".sp-palette-toggle"),K=P.is("input"),t=K&&"color"===P.attr("type")&&qt(),Q=K&&!u,J=Q?It(Mt).addClass(e).addClass(a.className).addClass(a.replacerClassName):It([]),Z=Q?J:P,tt=J.find(".sp-preview-inner"),et=a.color||K&&P.val(),nt=!1,rt=a.preferredFormat,it=!a.showButtons||a.clickoutFiresChange,ot=!et,st=a.allowEmpty&&!t;function at(){if(a.showPaletteOnly&&(a.showPalette=!0),Y.text(a.showPaletteOnly?a.togglePaletteMoreText:a.togglePaletteLessText),a.palette){k=a.palette.slice(0),S=It.isArray(k[0])?k:[k],O={};for(var t=0;t<S.length;t++)for(var e=0;e<S[t].length;e++){var n=tinycolor(S[t][e]).toRgbString();O[n]=!0}}N.toggleClass("sp-flat",u),N.toggleClass("sp-input-disabled",!a.showInput),N.toggleClass("sp-alpha-enabled",a.showAlpha),N.toggleClass("sp-clear-enabled",st),N.toggleClass("sp-buttons-disabled",!a.showButtons),N.toggleClass("sp-palette-buttons-disabled",!a.togglePaletteOnly),N.toggleClass("sp-palette-disabled",!a.showPalette),N.toggleClass("sp-palette-only",a.showPaletteOnly),N.toggleClass("sp-initial-disabled",!a.showInitial),N.addClass(a.className).addClass(a.containerClassName),Et()}function ut(){if(s&&window.localStorage){try{var t=window.localStorage[s].split(",#");1<t.length&&(delete window.localStorage[s],It.each(t,function(t,e){ct(e)}))}catch(t){}try{E=window.localStorage[s].split(";")}catch(t){}}}function ct(t){if(o){var e=tinycolor(t).toRgbString();if(!O[e]&&-1===It.inArray(e,E))for(E.push(e);E.length>T;)E.shift();if(s&&window.localStorage)try{window.localStorage[s]=E.join(";")}catch(t){}}}function lt(){var n=xt(),t=It.map(S,function(t,e){return Lt(t,n,"sp-palette-row sp-palette-row-"+e,a)});ut(),E&&t.push(Lt(function(){var t=[];if(a.showPalette)for(var e=0;e<E.length;e++){var n=tinycolor(E[e]).toRgbString();O[n]||t.push(E[e])}return t.reverse().slice(0,a.maxSelectionSize)}(),n,"sp-palette-row sp-palette-row-selection",a)),U.html(t.join(""))}function ht(){var t,e;a.showInitial&&(t=nt,e=xt(),G.html(Lt([t,e],e,"sp-palette-row-initial",a)))}function ft(){(d<=0||p<=0||m<=0)&&Et(),f=!0,N.addClass(A),I=null,P.trigger("dragstart.spectrum",[xt()])}function pt(){f=!1,N.removeClass(A),P.trigger("dragstop.spectrum",[xt()])}function dt(){var t=z.val();null!==t&&""!==t||!st?(t=tinycolor(t)).isValid()?(_t(t),Ot(!0)):z.addClass("sp-validation-error"):(_t(null),Ot(!0))}function gt(){(h?bt:mt)()}function mt(){var t=It.Event("beforeShow.spectrum");h?Et():(P.trigger(t,[xt()]),!1===c.beforeShow(xt())||t.isDefaultPrevented()||(function(){for(var t=0;t<Dt.length;t++)Dt[t]&&Dt[t].hide()}(),h=!0,It(j).bind("keydown.spectrum",vt),It(j).bind("click.spectrum",yt),It(window).bind("resize.spectrum",l),J.addClass("sp-active"),N.removeClass("sp-hidden"),Et(),kt(),nt=xt(),ht(),c.show(nt),P.trigger("show.spectrum",[nt])))}function vt(t){27===t.keyCode&&bt()}function yt(t){2!=t.button&&(f||(it?Ot(!0):wt(),bt()))}function bt(){h&&!u&&(h=!1,It(j).unbind("keydown.spectrum",vt),It(j).unbind("click.spectrum",yt),It(window).unbind("resize.spectrum",l),J.removeClass("sp-active"),N.addClass("sp-hidden"),c.hide(xt()),P.trigger("hide.spectrum",[xt()]))}function wt(){_t(nt,!0)}function _t(t,e){var n;tinycolor.equals(t,xt())?kt():(!t&&st?ot=!0:(ot=!1,t=(n=tinycolor(t)).toHsv(),w=t.h%360/360,_=t.s,x=t.v,C=t.a),kt(),n&&n.isValid()&&!e&&(rt=a.preferredFormat||n.getFormat()))}function xt(t){return t=t||{},st&&ot?null:tinycolor.fromRatio({h:w,s:_,v:x,a:Math.round(100*C)/100},{format:t.format||rt})}function Ct(){kt(),c.move(xt()),P.trigger("move.spectrum",[xt()])}function kt(){z.removeClass("sp-validation-error"),St();var t=tinycolor.fromRatio({h:w,s:1,v:1});M.css("background-color",t.toHexString());var e=rt;C<1&&(0!==C||"name"!==e)&&("hex"!==e&&"hex3"!==e&&"hex6"!==e&&"name"!==e||(e="rgb"));var n,r,i=xt({format:e}),o="";tt.removeClass("sp-clear-display"),tt.css("background-color","transparent"),!i&&st?tt.addClass("sp-clear-display"):(n=i.toHexString(),r=i.toRgbString(),Rt||1===i.alpha?tt.css("background-color",r):(tt.css("background-color","transparent"),tt.css("filter",i.toFilter())),a.showAlpha&&((t=i.toRgb()).a=0,t="linear-gradient(left, "+(r=tinycolor(t).toRgbString())+", "+n+")",Nt?H.css("filter",tinycolor(r).toFilter({gradientType:1},n)):(H.css("background","-webkit-"+t),H.css("background","-moz-"+t),H.css("background","-ms-"+t),H.css("background","linear-gradient(to right, "+r+", "+n+")"))),o=i.toString(e)),a.showInput&&z.val(o),a.showPalette&<(),ht()}function St(){var t=_,e=x;st&&ot?(q.hide(),F.hide(),W.hide()):(q.show(),F.show(),W.show(),t=t*p,e=d-e*d,t=Math.max(-g,Math.min(p-g,t-g)),e=Math.max(-g,Math.min(d-g,e-g)),W.css({top:e+"px",left:t+"px"}),q.css({left:C*v-y/2+"px"}),F.css({top:w*m-b+"px"}))}function Ot(t){var e=xt(),n="";e&&(n=e.toString(rt),ct(e)),K&&P.val(n),t&&(c.change(e),P.trigger("change",[e]))}function Et(){var t,e,n,r,i,o,s;h&&(p=M.width(),d=M.height(),g=W.height(),L.width(),m=L.height(),b=F.height(),v=B.width(),y=q.width(),u||(N.css("position","absolute"),a.offset?N.offset(a.offset):N.offset((s=Z,t=(i=N).outerWidth(),e=i.outerHeight(),n=s.outerHeight(),i=(r=(o=i[0].ownerDocument).documentElement).clientWidth+It(o).scrollLeft(),o=r.clientHeight+It(o).scrollTop(),(s=s.offset()).top+=n,s.left-=Math.min(s.left,s.left+t>i&&t<i?Math.abs(s.left+t-i):0),s.top-=Math.min(s.top,s.top+e>o&&e<o?Math.abs(+(e+n)):0),s))),St(),a.showPalette&<(),P.trigger("reflow.spectrum"))}function Tt(){bt(),D=!0,P.attr("disabled",!0),Z.addClass("sp-disabled")}!function(){function t(t){return t.data&&t.data.ignore?(_t(It(t.target).closest(".sp-thumb-el").data("color")),Ct()):(_t(It(t.target).closest(".sp-thumb-el").data("color")),Ct(),Ot(!0),a.hideAfterPaletteSelect&&bt()),!1}Nt&&N.find("*:not(input)").attr("unselectable","on"),at(),Q&&P.after(J).hide(),st||$.hide(),u?P.after(N).hide():(e=1!==(e="parent"===a.appendTo?P.parent():It(a.appendTo)).length?It("body"):e).append(N),ut(),Z.bind("click.spectrum touchstart.spectrum",function(t){D||gt(),t.stopPropagation(),It(t.target).is("input")||t.preventDefault()}),!P.is(":disabled")&&!0!==a.disabled||Tt(),N.click(Ft),z.change(dt),z.bind("paste",function(){setTimeout(dt,1)}),z.keydown(function(t){13==t.keyCode&&dt()}),V.text(a.cancelText),V.bind("click.spectrum",function(t){t.stopPropagation(),t.preventDefault(),wt(),bt()}),$.attr("title",a.clearText),$.bind("click.spectrum",function(t){t.stopPropagation(),t.preventDefault(),ot=!0,Ct(),u&&Ot(!0)}),X.text(a.chooseText),X.bind("click.spectrum",function(t){t.stopPropagation(),t.preventDefault(),Nt&&z.is(":focus")&&z.trigger("change"),z.hasClass("sp-validation-error")||(Ot(!0),bt())}),Y.text(a.showPaletteOnly?a.togglePaletteMoreText:a.togglePaletteLessText),Y.bind("click.spectrum",function(t){t.stopPropagation(),t.preventDefault(),a.showPaletteOnly=!a.showPaletteOnly,a.showPaletteOnly||u||N.css("left","-="+(R.outerWidth(!0)+5)),at()}),Bt(B,function(t,e,n){C=t/v,ot=!1,n.shiftKey&&(C=Math.round(10*C)/10),Ct()},ft,pt),Bt(L,function(t,e){w=parseFloat(e/m),ot=!1,a.showAlpha||(C=1),Ct()},ft,pt),Bt(M,function(t,e,n){n.shiftKey?I||(r=d-x*d,r=Math.abs(t-_*p)>Math.abs(e-r),I=r?"x":"y"):I=null;var r=!I||"y"===I;I&&"x"!==I||(_=parseFloat(t/p)),r&&(x=parseFloat((d-e)/d)),ot=!1,a.showAlpha||(C=1),Ct()},ft,pt),et?(_t(et),kt(),rt=a.preferredFormat||tinycolor(et).format,ct(et)):kt(),u&&mt();var e=Nt?"mousedown.spectrum":"click.spectrum touchstart.spectrum";U.delegate(".sp-thumb-el",e,t),G.delegate(".sp-thumb-el:nth-child(1)",e,{ignore:!0},t)}();var At={show:mt,hide:bt,toggle:gt,reflow:Et,option:function(t,e){return t===jt?It.extend({},a):e===jt?a[t]:(a[t]=e,"preferredFormat"===t&&(rt=a.preferredFormat),void at())},enable:function(){D=!1,P.attr("disabled",!1),Z.removeClass("sp-disabled")},disable:Tt,offset:function(t){a.offset=t,Et()},set:function(t){_t(t),Ot()},get:xt,destroy:function(){P.show(),Z.unbind("click.spectrum touchstart.spectrum"),N.remove(),J.remove(),Dt[At.id]=null},container:N};return At.id=Dt.push(At)-1,At}function n(){}function Ft(t){t.stopPropagation()}function Ht(t,e){var n=Array.prototype.slice,r=n.call(arguments,2);return function(){return t.apply(e,r.concat(n.call(arguments)))}}function Bt(r,i,e,t){i=i||function(){},e=e||function(){},t=t||function(){};var o=document,s=!1,a={},u=0,c=0,l="ontouchstart"in window,n={};function h(t){t.stopPropagation&&t.stopPropagation(),t.preventDefault&&t.preventDefault(),t.returnValue=!1}function f(t){if(s){if(Nt&&o.documentMode<9&&!t.button)return p();var e=t.originalEvent&&t.originalEvent.touches&&t.originalEvent.touches[0],n=e&&e.pageX||t.pageX,e=e&&e.pageY||t.pageY,n=Math.max(0,Math.min(n-a.left,c)),e=Math.max(0,Math.min(e-a.top,u));l&&h(t),i.apply(r,[n,e,t])}}function p(){s&&(It(o).unbind(n),It(o.body).removeClass("sp-dragging"),setTimeout(function(){t.apply(r,arguments)},0)),s=!1}n.selectstart=h,n.dragstart=h,n["touchmove mousemove"]=f,n["touchend mouseup"]=p,It(r).bind("touchstart mousedown",function(t){(t.which?3==t.which:2==t.button)||s||!1!==e.apply(r,arguments)&&(s=!0,u=It(r).height(),c=It(r).width(),a=It(r).offset(),It(o).bind(n),It(o.body).addClass("sp-dragging"),f(t),h(t))})}function qt(){return It.fn.spectrum.inputTypeColorSupport()}var s="spectrum.id";It.fn.spectrum=function(n,t){if("string"!=typeof n)return this.spectrum("destroy").each(function(){var t=o(this,It.extend({},n,It(this).data()));It(this).data(s,t.id)});var r=this,i=Array.prototype.slice.call(arguments,1);return this.each(function(){var t=Dt[It(this).data(s)];if(t){var e=t[n];if(!e)throw new Error("Spectrum: no such method: '"+n+"'");"get"==n?r=t.get():"container"==n?r=t.container:"option"==n?r=t.option.apply(t,i):"destroy"==n?(t.destroy(),It(this).removeData(s)):e.apply(t,i)}}),r},It.fn.spectrum.load=!0,It.fn.spectrum.loadOpts={},It.fn.spectrum.draggable=Bt,It.fn.spectrum.defaults=Pt,It.fn.spectrum.inputTypeColorSupport=function t(){var e;return void 0===t._cachedResult&&(e=It("<input type='color'/>")[0],t._cachedResult="color"===e.type&&""!==e.value),t._cachedResult},It.spectrum={},It.spectrum.localization={},It.spectrum.palettes={},It.fn.spectrum.processNativeColorInputs=function(){var t=It("input[type=color]");t.length&&!qt()&&t.spectrum({preferredFormat:"hex6"})},function(){var d=/^[\s,#]+/,g=/\s+$/,m=0,v=Math,y=v.round,b=v.min,w=v.max,t=v.random,_=function(t,e){if(e=e||{},(t=t||"")instanceof _)return t;if(!(this instanceof _))return new _(t,e);var n,r,i,o,s,a,u,c,l,h,f,l=(c={r:0,g:0,b:0},f=h=!(l=1),"object"==typeof(n="string"==typeof(n=t)?function(t){t=t.replace(d,"").replace(g,"").toLowerCase();var e,n=!1;if(O[t])t=O[t],n=!0;else if("transparent"==t)return{r:0,g:0,b:0,a:0,format:"name"};return(e=M.rgb.exec(t))?{r:e[1],g:e[2],b:e[3]}:(e=M.rgba.exec(t))?{r:e[1],g:e[2],b:e[3],a:e[4]}:(e=M.hsl.exec(t))?{h:e[1],s:e[2],l:e[3]}:(e=M.hsla.exec(t))?{h:e[1],s:e[2],l:e[3],a:e[4]}:(e=M.hsv.exec(t))?{h:e[1],s:e[2],v:e[3]}:(e=M.hsva.exec(t))?{h:e[1],s:e[2],v:e[3],a:e[4]}:(e=M.hex8.exec(t))?{a:j(e[1])/255,r:j(e[2]),g:j(e[3]),b:j(e[4]),format:n?"name":"hex8"}:(e=M.hex6.exec(t))?{r:j(e[1]),g:j(e[2]),b:j(e[3]),format:n?"name":"hex"}:!!(e=M.hex3.exec(t))&&{r:j(e[1]+""+e[1]),g:j(e[2]+""+e[2]),b:j(e[3]+""+e[3]),format:n?"name":"hex"}}(n):n)&&(n.hasOwnProperty("r")&&n.hasOwnProperty("g")&&n.hasOwnProperty("b")?(s=n.r,a=n.g,u=n.b,c={r:255*A(s,255),g:255*A(a,255),b:255*A(u,255)},h=!0,f="%"===String(n.r).substr(-1)?"prgb":"rgb"):n.hasOwnProperty("h")&&n.hasOwnProperty("s")&&n.hasOwnProperty("v")?(n.s=D(n.s),n.v=D(n.v),c=function(t,e,n){t=6*A(t,360),e=A(e,100),n=A(n,100);var r=v.floor(t),i=t-r,o=n*(1-e),t=n*(1-i*e),e=n*(1-(1-i)*e),r=r%6;return{r:255*[n,t,o,o,e,n][r],g:255*[e,n,n,t,o,o][r],b:255*[o,o,e,n,n,t][r]}}(n.h,n.s,n.v),h=!0,f="hsv"):n.hasOwnProperty("h")&&n.hasOwnProperty("s")&&n.hasOwnProperty("l")&&(n.s=D(n.s),n.l=D(n.l),s=n.h,a=n.s,u=n.l,s=A(s,360),a=A(a,100),u=A(u,100),0===a?r=i=o=u:(r=p(a=2*u-(u=u<.5?u*(1+a):u+a-u*a),u,s+1/3),i=p(a,u,s),o=p(a,u,s-1/3)),c={r:255*r,g:255*i,b:255*o},h=!0,f="hsl"),n.hasOwnProperty("a")&&(l=n.a)),l=T(l),{ok:h,format:n.format||f,r:b(255,w(c.r,0)),g:b(255,w(c.g,0)),b:b(255,w(c.b,0)),a:l});function p(t,e,n){return n<0&&(n+=1),1<n&&--n,n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+(e-t)*(2/3-n)*6:t}this._originalInput=t,this._r=l.r,this._g=l.g,this._b=l.b,this._a=l.a,this._roundA=y(100*this._a)/100,this._format=e.format||l.format,this._gradientType=e.gradientType,this._r<1&&(this._r=y(this._r)),this._g<1&&(this._g=y(this._g)),this._b<1&&(this._b=y(this._b)),this._ok=l.ok,this._tc_id=m++};function r(t,e,n){t=A(t,255),e=A(e,255),n=A(n,255);var r,i=w(t,e,n),o=b(t,e,n),s=(i+o)/2;if(i==o)r=u=0;else{var a=i-o,u=.5<s?a/(2-i-o):a/(i+o);switch(i){case t:r=(e-n)/a+(e<n?6:0);break;case e:r=(n-t)/a+2;break;case n:r=(t-e)/a+4}r/=6}return{h:r,s:u,l:s}}function i(t,e,n){t=A(t,255),e=A(e,255),n=A(n,255);var r,i=w(t,e,n),o=b(t,e,n),s=i,a=i-o,u=0===i?0:a/i;if(i==o)r=0;else{switch(i){case t:r=(e-n)/a+(e<n?6:0);break;case e:r=(n-t)/a+2;break;case n:r=(t-e)/a+4}r/=6}return{h:r,s:u,v:s}}function e(t,e,n,r){n=[P(y(t).toString(16)),P(y(e).toString(16)),P(y(n).toString(16))];return r&&n[0].charAt(0)==n[0].charAt(1)&&n[1].charAt(0)==n[1].charAt(1)&&n[2].charAt(0)==n[2].charAt(1)?n[0].charAt(0)+n[1].charAt(0)+n[2].charAt(0):n.join("")}function o(t,e,n,r){return[P(Math.round(255*parseFloat(r)).toString(16)),P(y(t).toString(16)),P(y(e).toString(16)),P(y(n).toString(16))].join("")}function n(t,e){e=0===e?0:e||10;t=_(t).toHsl();return t.s-=e/100,t.s=I(t.s),_(t)}function s(t,e){e=0===e?0:e||10;t=_(t).toHsl();return t.s+=e/100,t.s=I(t.s),_(t)}function a(t){return _(t).desaturate(100)}function u(t,e){e=0===e?0:e||10;t=_(t).toHsl();return t.l+=e/100,t.l=I(t.l),_(t)}function c(t,e){e=0===e?0:e||10;t=_(t).toRgb();return t.r=w(0,b(255,t.r-y(-e/100*255))),t.g=w(0,b(255,t.g-y(-e/100*255))),t.b=w(0,b(255,t.b-y(-e/100*255))),_(t)}function l(t,e){e=0===e?0:e||10;t=_(t).toHsl();return t.l-=e/100,t.l=I(t.l),_(t)}function h(t,e){t=_(t).toHsl(),e=(y(t.h)+e)%360;return t.h=e<0?360+e:e,_(t)}function f(t){t=_(t).toHsl();return t.h=(t.h+180)%360,_(t)}function p(t){var e=_(t).toHsl(),n=e.h;return[_(t),_({h:(n+120)%360,s:e.s,l:e.l}),_({h:(n+240)%360,s:e.s,l:e.l})]}function x(t){var e=_(t).toHsl(),n=e.h;return[_(t),_({h:(n+90)%360,s:e.s,l:e.l}),_({h:(n+180)%360,s:e.s,l:e.l}),_({h:(n+270)%360,s:e.s,l:e.l})]}function C(t){var e=_(t).toHsl(),n=e.h;return[_(t),_({h:(n+72)%360,s:e.s,l:e.l}),_({h:(n+216)%360,s:e.s,l:e.l})]}function k(t,e,n){e=e||6,n=n||30;var r=_(t).toHsl(),i=360/n,o=[_(t)];for(r.h=(r.h-(i*e>>1)+720)%360;--e;)r.h=(r.h+i)%360,o.push(_(r));return o}function S(t,e){e=e||6;for(var t=_(t).toHsv(),n=t.h,r=t.s,i=t.v,o=[],s=1/e;e--;)o.push(_({h:n,s:r,v:i})),i=(i+s)%1;return o}_.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},setAlpha:function(t){return this._a=T(t),this._roundA=y(100*this._a)/100,this},toHsv:function(){var t=i(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=i(this._r,this._g,this._b),e=y(360*t.h),n=y(100*t.s),t=y(100*t.v);return 1==this._a?"hsv("+e+", "+n+"%, "+t+"%)":"hsva("+e+", "+n+"%, "+t+"%, "+this._roundA+")"},toHsl:function(){var t=r(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=r(this._r,this._g,this._b),e=y(360*t.h),n=y(100*t.s),t=y(100*t.l);return 1==this._a?"hsl("+e+", "+n+"%, "+t+"%)":"hsla("+e+", "+n+"%, "+t+"%, "+this._roundA+")"},toHex:function(t){return e(this._r,this._g,this._b,t)},toHexString:function(t){return"#"+this.toHex(t)},toHex8:function(){return o(this._r,this._g,this._b,this._a)},toHex8String:function(){return"#"+this.toHex8()},toRgb:function(){return{r:y(this._r),g:y(this._g),b:y(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+y(this._r)+", "+y(this._g)+", "+y(this._b)+")":"rgba("+y(this._r)+", "+y(this._g)+", "+y(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:y(100*A(this._r,255))+"%",g:y(100*A(this._g,255))+"%",b:y(100*A(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+y(100*A(this._r,255))+"%, "+y(100*A(this._g,255))+"%, "+y(100*A(this._b,255))+"%)":"rgba("+y(100*A(this._r,255))+"%, "+y(100*A(this._g,255))+"%, "+y(100*A(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(E[e(this._r,this._g,this._b,!0)]||!1)},toFilter:function(t){var e="#"+o(this._r,this._g,this._b,this._a),n=e;return"progid:DXImageTransform.Microsoft.gradient("+(this._gradientType?"GradientType = 1, ":"")+"startColorstr="+e+",endColorstr="+(n=t?_(t).toHex8String():n)+")"},toString:function(t){var e=!!t;t=t||this._format;var n=!1,r=this._a<1&&0<=this._a;return e||!r||"hex"!==t&&"hex6"!==t&&"hex3"!==t&&"name"!==t?("rgb"===t&&(n=this.toRgbString()),"prgb"===t&&(n=this.toPercentageRgbString()),"hex"!==t&&"hex6"!==t||(n=this.toHexString()),"hex3"===t&&(n=this.toHexString(!0)),"hex8"===t&&(n=this.toHex8String()),"name"===t&&(n=this.toName()),"hsl"===t&&(n=this.toHslString()),(n="hsv"===t?this.toHsvString():n)||this.toHexString()):"name"===t&&0===this._a?this.toName():this.toRgbString()},_applyModification:function(t,e){e=t.apply(null,[this].concat([].slice.call(e)));return this._r=e._r,this._g=e._g,this._b=e._b,this.setAlpha(e._a),this},lighten:function(){return this._applyModification(u,arguments)},brighten:function(){return this._applyModification(c,arguments)},darken:function(){return this._applyModification(l,arguments)},desaturate:function(){return this._applyModification(n,arguments)},saturate:function(){return this._applyModification(s,arguments)},greyscale:function(){return this._applyModification(a,arguments)},spin:function(){return this._applyModification(h,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(k,arguments)},complement:function(){return this._applyCombination(f,arguments)},monochromatic:function(){return this._applyCombination(S,arguments)},splitcomplement:function(){return this._applyCombination(C,arguments)},triad:function(){return this._applyCombination(p,arguments)},tetrad:function(){return this._applyCombination(x,arguments)}},_.fromRatio=function(t,e){if("object"==typeof t){var n,r={};for(n in t)t.hasOwnProperty(n)&&(r[n]="a"===n?t[n]:D(t[n]));t=r}return _(t,e)},_.equals=function(t,e){return!(!t||!e)&&_(t).toRgbString()==_(e).toRgbString()},_.random=function(){return _.fromRatio({r:t(),g:t(),b:t()})},_.mix=function(t,e,n){n=0===n?0:n||50;var r=_(t).toRgb(),i=_(e).toRgb(),t=n/100,e=2*t-1,n=i.a-r.a,n=1-(e=(1+(e=e*n==-1?e:(e+n)/(1+e*n)))/2),t={r:i.r*e+r.r*n,g:i.g*e+r.g*n,b:i.b*e+r.b*n,a:i.a*t+r.a*(1-t)};return _(t)},_.readability=function(t,e){var n=_(t),r=_(e),t=n.toRgb(),e=r.toRgb(),n=n.getBrightness(),r=r.getBrightness(),e=Math.max(t.r,e.r)-Math.min(t.r,e.r)+Math.max(t.g,e.g)-Math.min(t.g,e.g)+Math.max(t.b,e.b)-Math.min(t.b,e.b);return{brightness:Math.abs(n-r),color:e}},_.isReadable=function(t,e){e=_.readability(t,e);return 125<e.brightness&&500<e.color},_.mostReadable=function(t,e){for(var n=null,r=0,i=!1,o=0;o<e.length;o++){var s=_.readability(t,e[o]),a=125<s.brightness&&500<s.color,s=s.brightness/125*3+s.color/500;(a&&!i||a&&i&&r<s||!a&&!i&&r<s)&&(i=a,r=s,n=_(e[o]))}return n};var O=_.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},E=_.hexNames=function(t){var e,n={};for(e in t)t.hasOwnProperty(e)&&(n[t[e]]=e);return n}(O);function T(t){return t=parseFloat(t),t=isNaN(t)||t<0||1<t?1:t}function A(t,e){var n="string"==typeof(t="string"==typeof(n=t)&&-1!=n.indexOf(".")&&1===parseFloat(n)?"100%":t)&&-1!=t.indexOf("%");return t=b(e,w(0,parseFloat(t))),n&&(t=parseInt(t*e,10)/100),v.abs(t-e)<1e-6?1:t%e/parseFloat(e)}function I(t){return b(1,w(0,t))}function j(t){return parseInt(t,16)}function P(t){return 1==t.length?"0"+t:""+t}function D(t){return t=t<=1?100*t+"%":t}var N,R,M=(N="[\\s|\\(]+("+(R="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+R+")[,|\\s]+("+R+")\\s*\\)?",R="[\\s|\\(]+("+R+")[,|\\s]+("+R+")[,|\\s]+("+R+")[,|\\s]+("+R+")\\s*\\)?",{rgb:new RegExp("rgb"+N),rgba:new RegExp("rgba"+R),hsl:new RegExp("hsl"+N),hsla:new RegExp("hsla"+R),hsv:new RegExp("hsv"+N),hsva:new RegExp("hsva"+R),hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex8:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});window.tinycolor=_}(),It(function(){It.fn.spectrum.load&&It.fn.spectrum.processNativeColorInputs()})}),function(){var t=function(x){x.ui=x.ui||{},x.ui.version="1.12.1";var i,r,C,k,o,s,a,u,c,n,l=0,h=Array.prototype.slice;function S(t,e,n){return[parseFloat(t[0])*(c.test(t[0])?e/100:1),parseFloat(t[1])*(c.test(t[1])?n/100:1)]}function O(t,e){return parseInt(x.css(t,e),10)||0}x.cleanData=(i=x.cleanData,function(t){for(var e,n,r=0;null!=(n=t[r]);r++)try{(e=x._data(n,"events"))&&e.remove&&x(n).triggerHandler("remove")}catch(t){}i(t)}),x.widget=function(t,n,e){var r,i,o,s={},a=t.split(".")[0],u=a+"-"+(t=t.split(".")[1]);return e||(e=n,n=x.Widget),x.isArray(e)&&(e=x.extend.apply(null,[{}].concat(e))),x.expr[":"][u.toLowerCase()]=function(t){return!!x.data(t,u)},x[a]=x[a]||{},r=x[a][t],i=x[a][t]=function(t,e){if(!this._createWidget)return new i(t,e);arguments.length&&this._createWidget(t,e)},x.extend(i,r,{version:e.version,_proto:x.extend({},e),_childConstructors:[]}),(o=new n).options=x.widget.extend({},o.options),x.each(e,function(e,r){function i(){return n.prototype[e].apply(this,arguments)}function o(t){return n.prototype[e].apply(this,t)}x.isFunction(r)?s[e]=function(){var t,e=this._super,n=this._superApply;return this._super=i,this._superApply=o,t=r.apply(this,arguments),this._super=e,this._superApply=n,t}:s[e]=r}),i.prototype=x.widget.extend(o,{widgetEventPrefix:r&&o.widgetEventPrefix||t},s,{constructor:i,namespace:a,widgetName:t,widgetFullName:u}),r?(x.each(r._childConstructors,function(t,e){var n=e.prototype;x.widget(n.namespace+"."+n.widgetName,i,e._proto)}),delete r._childConstructors):n._childConstructors.push(i),x.widget.bridge(t,i),i},x.widget.extend=function(t){for(var e,n,r=h.call(arguments,1),i=0,o=r.length;i<o;i++)for(e in r[i])n=r[i][e],r[i].hasOwnProperty(e)&&void 0!==n&&(x.isPlainObject(n)?t[e]=x.isPlainObject(t[e])?x.widget.extend({},t[e],n):x.widget.extend({},n):t[e]=n);return t},x.widget.bridge=function(o,e){var s=e.prototype.widgetFullName||o;x.fn[o]=function(n){var t="string"==typeof n,r=h.call(arguments,1),i=this;return t?this.length||"instance"!==n?this.each(function(){var t,e=x.data(this,s);return"instance"===n?(i=e,!1):e?x.isFunction(e[n])&&"_"!==n.charAt(0)?(t=e[n].apply(e,r))!==e&&void 0!==t?(i=t&&t.jquery?i.pushStack(t.get()):t,!1):void 0:x.error("no such method '"+n+"' for "+o+" widget instance"):x.error("cannot call methods on "+o+" prior to initialization; attempted to call method '"+n+"'")}):i=void 0:(r.length&&(n=x.widget.extend.apply(null,[n].concat(r))),this.each(function(){var t=x.data(this,s);t?(t.option(n||{}),t._init&&t._init()):x.data(this,s,new e(n,this))})),i}},x.Widget=function(){},x.Widget._childConstructors=[],x.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(t,e){e=x(e||this.defaultElement||this)[0],this.element=x(e),this.uuid=l++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=x(),this.hoverable=x(),this.focusable=x(),this.classesElementLookup={},e!==this&&(x.data(e,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===e&&this.destroy()}}),this.document=x(e.style?e.ownerDocument:e.document||e),this.window=x(this.document[0].defaultView||this.document[0].parentWindow)),this.options=x.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:x.noop,_create:x.noop,_init:x.noop,destroy:function(){var n=this;this._destroy(),x.each(this.classesElementLookup,function(t,e){n._removeClass(e,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:x.noop,widget:function(){return this.element},option:function(t,e){var n,r,i,o=t;if(0===arguments.length)return x.widget.extend({},this.options);if("string"==typeof t)if(o={},t=(n=t.split(".")).shift(),n.length){for(r=o[t]=x.widget.extend({},this.options[t]),i=0;i<n.length-1;i++)r[n[i]]=r[n[i]]||{},r=r[n[i]];if(t=n.pop(),1===arguments.length)return void 0===r[t]?null:r[t];r[t]=e}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];o[t]=e}return this._setOptions(o),this},_setOptions:function(t){for(var e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(t){var e,n,r;for(e in t)r=this.classesElementLookup[e],t[e]!==this.options.classes[e]&&r&&r.length&&(n=x(r.get()),this._removeClass(r,e),n.addClass(this._classes({element:n,keys:e,classes:t,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(i){var o=[],s=this;function t(t,e){for(var n,r=0;r<t.length;r++)n=s.classesElementLookup[t[r]]||x(),n=i.add?x(x.unique(n.get().concat(i.element.get()))):x(n.not(i.element).get()),s.classesElementLookup[t[r]]=n,o.push(t[r]),e&&i.classes[t[r]]&&o.push(i.classes[t[r]])}return i=x.extend({element:this.element,classes:this.options.classes||{}},i),this._on(i.element,{remove:"_untrackClassesElement"}),i.keys&&t(i.keys.match(/\S+/g)||[],!0),i.extra&&t(i.extra.match(/\S+/g)||[]),o.join(" ")},_untrackClassesElement:function(n){var r=this;x.each(r.classesElementLookup,function(t,e){-1!==x.inArray(n.target,e)&&(r.classesElementLookup[t]=x(e.not(n.target).get()))})},_removeClass:function(t,e,n){return this._toggleClass(t,e,n,!1)},_addClass:function(t,e,n){return this._toggleClass(t,e,n,!0)},_toggleClass:function(t,e,n,r){var i="string"==typeof t||null===t,n={extra:i?e:n,keys:i?t:e,element:i?this.element:t,add:r="boolean"==typeof r?r:n};return n.element.toggleClass(this._classes(n),r),this},_on:function(i,o,t){var s,a=this;"boolean"!=typeof i&&(t=o,o=i,i=!1),t?(o=s=x(o),this.bindings=this.bindings.add(o)):(t=o,o=this.element,s=this.widget()),x.each(t,function(t,e){function n(){if(i||!0!==a.options.disabled&&!x(this).hasClass("ui-state-disabled"))return("string"==typeof e?a[e]:e).apply(a,arguments)}"string"!=typeof e&&(n.guid=e.guid=e.guid||n.guid||x.guid++);var r=t.match(/^([\w:-]*)\s*(.*)$/),t=r[1]+a.eventNamespace,r=r[2];r?s.on(t,r,n):o.on(t,n)})},_off:function(t,e){e=(e||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.off(e).off(e),this.bindings=x(this.bindings.not(t).get()),this.focusable=x(this.focusable.not(t).get()),this.hoverable=x(this.hoverable.not(t).get())},_delay:function(t,e){var n=this;return setTimeout(function(){return("string"==typeof t?n[t]:t).apply(n,arguments)},e||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){this._addClass(x(t.currentTarget),null,"ui-state-hover")},mouseleave:function(t){this._removeClass(x(t.currentTarget),null,"ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){this._addClass(x(t.currentTarget),null,"ui-state-focus")},focusout:function(t){this._removeClass(x(t.currentTarget),null,"ui-state-focus")}})},_trigger:function(t,e,n){var r,i,o=this.options[t];if(n=n||{},(e=x.Event(e)).type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),e.target=this.element[0],i=e.originalEvent)for(r in i)r in e||(e[r]=i[r]);return this.element.trigger(e,n),!(x.isFunction(o)&&!1===o.apply(this.element[0],[e].concat(n))||e.isDefaultPrevented())}},x.each({show:"fadeIn",hide:"fadeOut"},function(o,s){x.Widget.prototype["_"+o]=function(e,t,n){var r,i=(t="string"==typeof t?{effect:t}:t)?!0!==t&&"number"!=typeof t&&t.effect||s:o;"number"==typeof(t=t||{})&&(t={duration:t}),r=!x.isEmptyObject(t),t.complete=n,t.delay&&e.delay(t.delay),r&&x.effects&&x.effects.effect[i]?e[o](t):i!==o&&e[i]?e[i](t.duration,t.easing,n):e.queue(function(t){x(this)[o](),n&&n.call(e[0]),t()})}}),x.widget,C=Math.max,k=Math.abs,o=/left|center|right/,s=/top|center|bottom/,a=/[\+\-]\d+(\.[\d]+)?%?/,u=/^\w+/,c=/%$/,n=x.fn.position,x.position={scrollbarWidth:function(){if(void 0!==r)return r;var t,e=x("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),n=e.children()[0];return x("body").append(e),t=n.offsetWidth,e.css("overflow","scroll"),t===(n=n.offsetWidth)&&(n=e[0].clientWidth),e.remove(),r=t-n},getScrollInfo:function(t){var e=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),n=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),e="scroll"===e||"auto"===e&&t.width<t.element[0].scrollWidth;return{width:"scroll"===n||"auto"===n&&t.height<t.element[0].scrollHeight?x.position.scrollbarWidth():0,height:e?x.position.scrollbarWidth():0}},getWithinInfo:function(t){var e=x(t||window),n=x.isWindow(e[0]),r=!!e[0]&&9===e[0].nodeType;return{element:e,isWindow:n,isDocument:r,offset:n||r?{left:0,top:0}:x(t).offset(),scrollLeft:e.scrollLeft(),scrollTop:e.scrollTop(),width:e.outerWidth(),height:e.outerHeight()}}},x.fn.position=function(h){if(!h||!h.of)return n.apply(this,arguments);h=x.extend({},h);var f,p,d,g,m,t,v=x(h.of),y=x.position.getWithinInfo(h.within),b=x.position.getScrollInfo(y),w=(h.collision||"flip").split(" "),_={},e=9===(t=(e=v)[0]).nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:x.isWindow(t)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:t.preventDefault?{width:0,height:0,offset:{top:t.pageY,left:t.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()};return v[0].preventDefault&&(h.at="left top"),p=e.width,d=e.height,m=x.extend({},g=e.offset),x.each(["my","at"],function(){var t,e,n=(h[this]||"").split(" ");(n=1===n.length?o.test(n[0])?n.concat(["center"]):s.test(n[0])?["center"].concat(n):["center","center"]:n)[0]=o.test(n[0])?n[0]:"center",n[1]=s.test(n[1])?n[1]:"center",t=a.exec(n[0]),e=a.exec(n[1]),_[this]=[t?t[0]:0,e?e[0]:0],h[this]=[u.exec(n[0])[0],u.exec(n[1])[0]]}),1===w.length&&(w[1]=w[0]),"right"===h.at[0]?m.left+=p:"center"===h.at[0]&&(m.left+=p/2),"bottom"===h.at[1]?m.top+=d:"center"===h.at[1]&&(m.top+=d/2),f=S(_.at,p,d),m.left+=f[0],m.top+=f[1],this.each(function(){var n,t,s=x(this),a=s.outerWidth(),u=s.outerHeight(),e=O(this,"marginLeft"),r=O(this,"marginTop"),i=a+e+O(this,"marginRight")+b.width,o=u+r+O(this,"marginBottom")+b.height,c=x.extend({},m),l=S(_.my,s.outerWidth(),s.outerHeight());"right"===h.my[0]?c.left-=a:"center"===h.my[0]&&(c.left-=a/2),"bottom"===h.my[1]?c.top-=u:"center"===h.my[1]&&(c.top-=u/2),c.left+=l[0],c.top+=l[1],n={marginLeft:e,marginTop:r},x.each(["left","top"],function(t,e){x.ui.position[w[t]]&&x.ui.position[w[t]][e](c,{targetWidth:p,targetHeight:d,elemWidth:a,elemHeight:u,collisionPosition:n,collisionWidth:i,collisionHeight:o,offset:[f[0]+l[0],f[1]+l[1]],my:h.my,at:h.at,within:y,elem:s})}),h.using&&(t=function(t){var e=g.left-c.left,n=e+p-a,r=g.top-c.top,i=r+d-u,o={target:{element:v,left:g.left,top:g.top,width:p,height:d},element:{element:s,left:c.left,top:c.top,width:a,height:u},horizontal:n<0?"left":0<e?"right":"center",vertical:i<0?"top":0<r?"bottom":"middle"};p<a&&k(e+n)<p&&(o.horizontal="center"),d<u&&k(r+i)<d&&(o.vertical="middle"),C(k(e),k(n))>C(k(r),k(i))?o.important="horizontal":o.important="vertical",h.using.call(this,t,o)}),s.offset(x.extend(c,{using:t}))})},x.ui.position={fit:{left:function(t,e){var n=e.within,r=n.isWindow?n.scrollLeft:n.offset.left,i=n.width,o=t.left-e.collisionPosition.marginLeft,s=r-o,a=o+e.collisionWidth-i-r;e.collisionWidth>i?0<s&&a<=0?(n=t.left+s+e.collisionWidth-i-r,t.left+=s-n):t.left=!(0<a&&s<=0)&&a<s?r+i-e.collisionWidth:r:0<s?t.left+=s:0<a?t.left-=a:t.left=C(t.left-o,t.left)},top:function(t,e){var n=e.within,r=n.isWindow?n.scrollTop:n.offset.top,i=e.within.height,o=t.top-e.collisionPosition.marginTop,s=r-o,a=o+e.collisionHeight-i-r;e.collisionHeight>i?0<s&&a<=0?(n=t.top+s+e.collisionHeight-i-r,t.top+=s-n):t.top=!(0<a&&s<=0)&&a<s?r+i-e.collisionHeight:r:0<s?t.top+=s:0<a?t.top-=a:t.top=C(t.top-o,t.top)}},flip:{left:function(t,e){var n=e.within,r=n.offset.left+n.scrollLeft,i=n.width,o=n.isWindow?n.scrollLeft:n.offset.left,s=t.left-e.collisionPosition.marginLeft,a=s-o,u=s+e.collisionWidth-i-o,c="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,n="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,s=-2*e.offset[0];a<0?((r=t.left+c+n+s+e.collisionWidth-i-r)<0||r<k(a))&&(t.left+=c+n+s):0<u&&(0<(o=t.left-e.collisionPosition.marginLeft+c+n+s-o)||k(o)<u)&&(t.left+=c+n+s)},top:function(t,e){var n=e.within,r=n.offset.top+n.scrollTop,i=n.height,o=n.isWindow?n.scrollTop:n.offset.top,s=t.top-e.collisionPosition.marginTop,a=s-o,u=s+e.collisionHeight-i-o,c="top"===e.my[1]?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,n="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,s=-2*e.offset[1];a<0?((r=t.top+c+n+s+e.collisionHeight-i-r)<0||r<k(a))&&(t.top+=c+n+s):0<u&&(0<(o=t.top-e.collisionPosition.marginTop+c+n+s-o)||k(o)<u)&&(t.top+=c+n+s)}},flipfit:{left:function(){x.ui.position.flip.left.apply(this,arguments),x.ui.position.fit.left.apply(this,arguments)},top:function(){x.ui.position.flip.top.apply(this,arguments),x.ui.position.fit.top.apply(this,arguments)}}},x.ui.position,x.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):x(this[0].form)},x.ui.formResetMixin={_formResetHandler:function(){var e=x(this);setTimeout(function(){var t=e.data("ui-form-reset-instances");x.each(t,function(){this.refresh()})})},_bindFormResetHandler:function(){var t;this.form=this.element.form(),this.form.length&&((t=this.form.data("ui-form-reset-instances")||[]).length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t))},_unbindFormResetHandler:function(){var t;this.form.length&&((t=this.form.data("ui-form-reset-instances")).splice(x.inArray(this,t),1),t.length?this.form.data("ui-form-reset-instances",t):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset"))}},x.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},x.ui.escapeSelector=(e=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g,function(t){return t.replace(e,"\\$1")}),x.fn.labels=function(){var t,e,n;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(e=this.eq(0).parents("label"),(t=this.attr("id"))&&(n=(n=this.eq(0).parents().last()).add((n.length?n:this).siblings()),t="label[for='"+x.ui.escapeSelector(t)+"']",e=e.add(n.find(t).addBack(t))),this.pushStack(e))},x.fn.extend({uniqueId:(t=0,function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&x(this).removeAttr("id")})}});var e,t,f,p=/ui-corner-([a-z]){2,6}/g;x.widget("ui.controlgroup",{version:"1.12.1",defaultElement:"<div>",options:{direction:"horizontal",disabled:null,onlyVisible:!0,items:{button:"input[type=button], input[type=submit], input[type=reset], button, a",controlgroupLabel:".ui-controlgroup-label",checkboxradio:"input[type='checkbox'], input[type='radio']",selectmenu:"select",spinner:".ui-spinner-input"}},_create:function(){this._enhance()},_enhance:function(){this.element.attr("role","toolbar"),this.refresh()},_destroy:function(){this._callChildMethod("destroy"),this.childWidgets.removeData("ui-controlgroup-data"),this.element.removeAttr("role"),this.options.items.controlgroupLabel&&this.element.find(this.options.items.controlgroupLabel).find(".ui-controlgroup-label-contents").contents().unwrap()},_initWidgets:function(){var o=this,s=[];x.each(this.options.items,function(r,t){var e,i;if(t)return"controlgroupLabel"===r?((e=o.element.find(t)).each(function(){var t=x(this);t.children(".ui-controlgroup-label-contents").length||t.contents().wrapAll("<span class='ui-controlgroup-label-contents'></span>")}),o._addClass(e,null,"ui-widget ui-widget-content ui-state-default"),void(s=s.concat(e.get()))):void(x.fn[r]&&(i=o["_"+r+"Options"]?o["_"+r+"Options"]("middle"):{classes:{}},o.element.find(t).each(function(){var t=x(this),e=t[r]("instance"),n=x.widget.extend({},i);"button"===r&&t.parent(".ui-spinner").length||((e=e||t[r]()[r]("instance"))&&(n.classes=o._resolveClassesValues(n.classes,e)),t[r](n),n=t[r]("widget"),x.data(n[0],"ui-controlgroup-data",e||t[r]("instance")),s.push(n[0]))})))}),this.childWidgets=x(x.unique(s)),this._addClass(this.childWidgets,"ui-controlgroup-item")},_callChildMethod:function(e){this.childWidgets.each(function(){var t=x(this).data("ui-controlgroup-data");t&&t[e]&&t[e]()})},_updateCornerClass:function(t,e){e=this._buildSimpleOptions(e,"label").classes.label;this._removeClass(t,null,"ui-corner-top ui-corner-bottom ui-corner-left ui-corner-right ui-corner-all"),this._addClass(t,null,e)},_buildSimpleOptions:function(t,e){var n="vertical"===this.options.direction,r={classes:{}};return r.classes[e]={middle:"",first:"ui-corner-"+(n?"top":"left"),last:"ui-corner-"+(n?"bottom":"right"),only:"ui-corner-all"}[t],r},_spinnerOptions:function(t){t=this._buildSimpleOptions(t,"ui-spinner");return t.classes["ui-spinner-up"]="",t.classes["ui-spinner-down"]="",t},_buttonOptions:function(t){return this._buildSimpleOptions(t,"ui-button")},_checkboxradioOptions:function(t){return this._buildSimpleOptions(t,"ui-checkboxradio-label")},_selectmenuOptions:function(t){var e="vertical"===this.options.direction;return{width:!!e&&"auto",classes:{middle:{"ui-selectmenu-button-open":"","ui-selectmenu-button-closed":""},first:{"ui-selectmenu-button-open":"ui-corner-"+(e?"top":"tl"),"ui-selectmenu-button-closed":"ui-corner-"+(e?"top":"left")},last:{"ui-selectmenu-button-open":e?"":"ui-corner-tr","ui-selectmenu-button-closed":"ui-corner-"+(e?"bottom":"right")},only:{"ui-selectmenu-button-open":"ui-corner-top","ui-selectmenu-button-closed":"ui-corner-all"}}[t]}},_resolveClassesValues:function(n,r){var i={};return x.each(n,function(t){var e=r.options.classes[t]||"",e=x.trim(e.replace(p,""));i[t]=(e+" "+n[t]).replace(/\s+/g," ")}),i},_setOption:function(t,e){"direction"===t&&this._removeClass("ui-controlgroup-"+this.options.direction),this._super(t,e),"disabled"!==t?this.refresh():this._callChildMethod(e?"disable":"enable")},refresh:function(){var i,o=this;this._addClass("ui-controlgroup ui-controlgroup-"+this.options.direction),"horizontal"===this.options.direction&&this._addClass(null,"ui-helper-clearfix"),this._initWidgets(),i=this.childWidgets,(i=this.options.onlyVisible?i.filter(":visible"):i).length&&(x.each(["first","last"],function(t,e){var n,r=i[e]().data("ui-controlgroup-data");r&&o["_"+r.widgetName+"Options"]?((n=o["_"+r.widgetName+"Options"](1===i.length?"only":e)).classes=o._resolveClassesValues(n.classes,r),r.element[r.widgetName](n)):o._updateCornerClass(i[e](),e)}),this._callChildMethod("refresh"))}}),x.widget("ui.checkboxradio",[x.ui.formResetMixin,{version:"1.12.1",options:{disabled:null,label:null,icon:!0,classes:{"ui-checkboxradio-label":"ui-corner-all","ui-checkboxradio-icon":"ui-corner-all"}},_getCreateOptions:function(){var t,e=this,n=this._super()||{};return this._readType(),t=this.element.labels(),this.label=x(t[t.length-1]),this.label.length||x.error("No label found for checkboxradio widget"),this.originalLabel="",this.label.contents().not(this.element[0]).each(function(){e.originalLabel+=3===this.nodeType?x(this).text():this.outerHTML}),this.originalLabel&&(n.label=this.originalLabel),null!=(t=this.element[0].disabled)&&(n.disabled=t),n},_create:function(){var t=this.element[0].checked;this._bindFormResetHandler(),null==this.options.disabled&&(this.options.disabled=this.element[0].disabled),this._setOption("disabled",this.options.disabled),this._addClass("ui-checkboxradio","ui-helper-hidden-accessible"),this._addClass(this.label,"ui-checkboxradio-label","ui-button ui-widget"),"radio"===this.type&&this._addClass(this.label,"ui-checkboxradio-radio-label"),this.options.label&&this.options.label!==this.originalLabel?this._updateLabel():this.originalLabel&&(this.options.label=this.originalLabel),this._enhance(),t&&(this._addClass(this.label,"ui-checkboxradio-checked","ui-state-active"),this.icon&&this._addClass(this.icon,null,"ui-state-hover")),this._on({change:"_toggleClasses",focus:function(){this._addClass(this.label,null,"ui-state-focus ui-visual-focus")},blur:function(){this._removeClass(this.label,null,"ui-state-focus ui-visual-focus")}})},_readType:function(){var t=this.element[0].nodeName.toLowerCase();this.type=this.element[0].type,"input"===t&&/radio|checkbox/.test(this.type)||x.error("Can't create checkboxradio on element.nodeName="+t+" and element.type="+this.type)},_enhance:function(){this._updateIcon(this.element[0].checked)},widget:function(){return this.label},_getRadioGroup:function(){var t=this.element[0].name,e="input[name='"+x.ui.escapeSelector(t)+"']";return t?(this.form.length?x(this.form[0].elements).filter(e):x(e).filter(function(){return 0===x(this).form().length})).not(this.element):x([])},_toggleClasses:function(){var t=this.element[0].checked;this._toggleClass(this.label,"ui-checkboxradio-checked","ui-state-active",t),this.options.icon&&"checkbox"===this.type&&this._toggleClass(this.icon,null,"ui-icon-check ui-state-checked",t)._toggleClass(this.icon,null,"ui-icon-blank",!t),"radio"===this.type&&this._getRadioGroup().each(function(){var t=x(this).checkboxradio("instance");t&&t._removeClass(t.label,"ui-checkboxradio-checked","ui-state-active")})},_destroy:function(){this._unbindFormResetHandler(),this.icon&&(this.icon.remove(),this.iconSpace.remove())},_setOption:function(t,e){if("label"!==t||e){if(this._super(t,e),"disabled"===t)return this._toggleClass(this.label,null,"ui-state-disabled",e),void(this.element[0].disabled=e);this.refresh()}},_updateIcon:function(t){var e="ui-icon ui-icon-background ";this.options.icon?(this.icon||(this.icon=x("<span>"),this.iconSpace=x("<span> </span>"),this._addClass(this.iconSpace,"ui-checkboxradio-icon-space")),"checkbox"===this.type?(e+=t?"ui-icon-check ui-state-checked":"ui-icon-blank",this._removeClass(this.icon,null,t?"ui-icon-blank":"ui-icon-check")):e+="ui-icon-blank",this._addClass(this.icon,"ui-checkboxradio-icon",e),t||this._removeClass(this.icon,null,"ui-icon-check ui-state-checked"),this.icon.prependTo(this.label).after(this.iconSpace)):void 0!==this.icon&&(this.icon.remove(),this.iconSpace.remove(),delete this.icon)},_updateLabel:function(){var t=this.label.contents().not(this.element[0]);this.icon&&(t=t.not(this.icon[0])),(t=this.iconSpace?t.not(this.iconSpace[0]):t).remove(),this.label.append(this.options.label)},refresh:function(){var t=this.element[0].checked,e=this.element[0].disabled;this._updateIcon(t),this._toggleClass(this.label,"ui-checkboxradio-checked","ui-state-active",t),null!==this.options.label&&this._updateLabel(),e!==this.options.disabled&&this._setOptions({disabled:e})}}]),x.ui.checkboxradio,x.widget("ui.button",{version:"1.12.1",defaultElement:"<button>",options:{classes:{"ui-button":"ui-corner-all"},disabled:null,icon:null,iconPosition:"beginning",label:null,showLabel:!0},_getCreateOptions:function(){var t,e=this._super()||{};return this.isInput=this.element.is("input"),null!=(t=this.element[0].disabled)&&(e.disabled=t),this.originalLabel=this.isInput?this.element.val():this.element.html(),this.originalLabel&&(e.label=this.originalLabel),e},_create:function(){!this.option.showLabel&!this.options.icon&&(this.options.showLabel=!0),null==this.options.disabled&&(this.options.disabled=this.element[0].disabled||!1),this.hasTitle=!!this.element.attr("title"),this.options.label&&this.options.label!==this.originalLabel&&(this.isInput?this.element.val(this.options.label):this.element.html(this.options.label)),this._addClass("ui-button","ui-widget"),this._setOption("disabled",this.options.disabled),this._enhance(),this.element.is("a")&&this._on({keyup:function(t){t.keyCode===x.ui.keyCode.SPACE&&(t.preventDefault(),this.element[0].click?this.element[0].click():this.element.trigger("click"))}})},_enhance:function(){this.element.is("button")||this.element.attr("role","button"),this.options.icon&&(this._updateIcon("icon",this.options.icon),this._updateTooltip())},_updateTooltip:function(){this.title=this.element.attr("title"),this.options.showLabel||this.title||this.element.attr("title",this.options.label)},_updateIcon:function(t,e){var n="iconPosition"!==t,r=n?this.options.iconPosition:e,t="top"===r||"bottom"===r;this.icon?n&&this._removeClass(this.icon,null,this.options.icon):(this.icon=x("<span>"),this._addClass(this.icon,"ui-button-icon","ui-icon"),this.options.showLabel||this._addClass("ui-button-icon-only")),n&&this._addClass(this.icon,null,e),this._attachIcon(r),t?(this._addClass(this.icon,null,"ui-widget-icon-block"),this.iconSpace&&this.iconSpace.remove()):(this.iconSpace||(this.iconSpace=x("<span> </span>"),this._addClass(this.iconSpace,"ui-button-icon-space")),this._removeClass(this.icon,null,"ui-wiget-icon-block"),this._attachIconSpace(r))},_destroy:function(){this.element.removeAttr("role"),this.icon&&this.icon.remove(),this.iconSpace&&this.iconSpace.remove(),this.hasTitle||this.element.removeAttr("title")},_attachIconSpace:function(t){this.icon[/^(?:end|bottom)/.test(t)?"before":"after"](this.iconSpace)},_attachIcon:function(t){this.element[/^(?:end|bottom)/.test(t)?"append":"prepend"](this.icon)},_setOptions:function(t){var e=(void 0===t.showLabel?this.options:t).showLabel,n=(void 0===t.icon?this.options:t).icon;e||n||(t.showLabel=!0),this._super(t)},_setOption:function(t,e){"icon"===t&&(e?this._updateIcon(t,e):this.icon&&(this.icon.remove(),this.iconSpace&&this.iconSpace.remove())),"iconPosition"===t&&this._updateIcon(t,e),"showLabel"===t&&(this._toggleClass("ui-button-icon-only",null,!e),this._updateTooltip()),"label"===t&&(this.isInput?this.element.val(e):(this.element.html(e),this.icon&&(this._attachIcon(this.options.iconPosition),this._attachIconSpace(this.options.iconPosition)))),this._super(t,e),"disabled"===t&&(this._toggleClass(null,"ui-state-disabled",e),(this.element[0].disabled=e)&&this.element.blur())},refresh:function(){var t=this.element.is("input, button")?this.element[0].disabled:this.element.hasClass("ui-button-disabled");t!==this.options.disabled&&this._setOptions({disabled:t}),this._updateTooltip()}}),!1!==x.uiBackCompat&&(x.widget("ui.button",x.ui.button,{options:{text:!0,icons:{primary:null,secondary:null}},_create:function(){this.options.showLabel&&!this.options.text&&(this.options.showLabel=this.options.text),!this.options.showLabel&&this.options.text&&(this.options.text=this.options.showLabel),this.options.icon||!this.options.icons.primary&&!this.options.icons.secondary?this.options.icon&&(this.options.icons.primary=this.options.icon):this.options.icons.primary?this.options.icon=this.options.icons.primary:(this.options.icon=this.options.icons.secondary,this.options.iconPosition="end"),this._super()},_setOption:function(t,e){"text"!==t?("showLabel"===t&&(this.options.text=e),"icon"===t&&(this.options.icons.primary=e),"icons"===t&&(e.primary?(this._super("icon",e.primary),this._super("iconPosition","beginning")):e.secondary&&(this._super("icon",e.secondary),this._super("iconPosition","end"))),this._superApply(arguments)):this._super("showLabel",e)}}),x.fn.button=(f=x.fn.button,function(){return!this.length||this.length&&"INPUT"!==this[0].tagName||this.length&&"INPUT"===this[0].tagName&&"checkbox"!==this.attr("type")&&"radio"!==this.attr("type")?f.apply(this,arguments):(x.ui.checkboxradio||x.error("Checkboxradio widget missing"),0===arguments.length?this.checkboxradio({icon:!1}):this.checkboxradio.apply(this,arguments))}),x.fn.buttonset=function(){return x.ui.controlgroup||x.error("Controlgroup widget missing"),"option"===arguments[0]&&"items"===arguments[1]&&arguments[2]?this.controlgroup.apply(this,[arguments[0],"items.button",arguments[2]]):"option"===arguments[0]&&"items"===arguments[1]?this.controlgroup.apply(this,[arguments[0],"items.button"]):("object"==typeof arguments[0]&&arguments[0].items&&(arguments[0].items={button:arguments[0].items}),this.controlgroup.apply(this,arguments))}),x.ui.button,x.ui.safeActiveElement=function(e){var n;try{n=e.activeElement}catch(t){n=e.body}return n=!(n=n||e.body).nodeName?e.body:n},x.widget("ui.menu",{version:"1.12.1",defaultElement:"<ul>",delay:300,options:{icons:{submenu:"ui-icon-caret-1-e"},items:"> *",menus:"ul",position:{my:"left top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.mouseHandled=!1,this.element.uniqueId().attr({role:this.options.role,tabIndex:0}),this._addClass("ui-menu","ui-widget ui-widget-content"),this._on({"mousedown .ui-menu-item":function(t){t.preventDefault()},"click .ui-menu-item":function(t){var e=x(t.target),n=x(x.ui.safeActiveElement(this.document[0]));!this.mouseHandled&&e.not(".ui-state-disabled").length&&(this.select(t),t.isPropagationStopped()||(this.mouseHandled=!0),e.has(".ui-menu").length?this.expand(t):!this.element.is(":focus")&&n.closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(t){var e,n;this.previousFilter||(e=x(t.target).closest(".ui-menu-item"),n=x(t.currentTarget),e[0]===n[0]&&(this._removeClass(n.siblings().children(".ui-state-active"),null,"ui-state-active"),this.focus(t,n)))},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(t,e){var n=this.active||this.element.find(this.options.items).eq(0);e||this.focus(t,n)},blur:function(t){this._delay(function(){x.contains(this.element[0],x.ui.safeActiveElement(this.document[0]))||this.collapseAll(t)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(t){this._closeOnDocumentClick(t)&&this.collapseAll(t),this.mouseHandled=!1}})},_destroy:function(){var t=this.element.find(".ui-menu-item").removeAttr("role aria-disabled").children(".ui-menu-item-wrapper").removeUniqueId().removeAttr("tabIndex role aria-haspopup");this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeAttr("role aria-labelledby aria-expanded aria-hidden aria-disabled tabIndex").removeUniqueId().show(),t.children().each(function(){var t=x(this);t.data("ui-menu-submenu-caret")&&t.remove()})},_keydown:function(t){var e,n,r,i=!0;switch(t.keyCode){case x.ui.keyCode.PAGE_UP:this.previousPage(t);break;case x.ui.keyCode.PAGE_DOWN:this.nextPage(t);break;case x.ui.keyCode.HOME:this._move("first","first",t);break;case x.ui.keyCode.END:this._move("last","last",t);break;case x.ui.keyCode.UP:this.previous(t);break;case x.ui.keyCode.DOWN:this.next(t);break;case x.ui.keyCode.LEFT:this.collapse(t);break;case x.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(t);break;case x.ui.keyCode.ENTER:case x.ui.keyCode.SPACE:this._activate(t);break;case x.ui.keyCode.ESCAPE:this.collapse(t);break;default:e=this.previousFilter||"",r=i=!1,n=96<=t.keyCode&&t.keyCode<=105?(t.keyCode-96).toString():String.fromCharCode(t.keyCode),clearTimeout(this.filterTimer),n===e?r=!0:n=e+n,e=this._filterMenuItems(n),(e=r&&-1!==e.index(this.active.next())?this.active.nextAll(".ui-menu-item"):e).length||(n=String.fromCharCode(t.keyCode),e=this._filterMenuItems(n)),e.length?(this.focus(t,e),this.previousFilter=n,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter}i&&t.preventDefault()},_activate:function(t){this.active&&!this.active.is(".ui-state-disabled")&&(this.active.children("[aria-haspopup='true']").length?this.expand(t):this.select(t))},refresh:function(){var t,e,r=this,i=this.options.icons.submenu,n=this.element.find(this.options.menus);this._toggleClass("ui-menu-icons",null,!!this.element.find(".ui-icon").length),e=n.filter(":not(.ui-menu)").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var t=x(this),e=t.prev(),n=x("<span>").data("ui-menu-submenu-caret",!0);r._addClass(n,"ui-menu-icon","ui-icon "+i),e.attr("aria-haspopup","true").prepend(n),t.attr("aria-labelledby",e.attr("id"))}),this._addClass(e,"ui-menu","ui-widget ui-widget-content ui-front"),(t=n.add(this.element).find(this.options.items)).not(".ui-menu-item").each(function(){var t=x(this);r._isDivider(t)&&r._addClass(t,"ui-menu-divider","ui-widget-content")}),n=(e=t.not(".ui-menu-item, .ui-menu-divider")).children().not(".ui-menu").uniqueId().attr({tabIndex:-1,role:this._itemRole()}),this._addClass(e,"ui-menu-item")._addClass(n,"ui-menu-item-wrapper"),t.filter(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!x.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(t,e){var n;"icons"===t&&(n=this.element.find(".ui-menu-icon"),this._removeClass(n,null,this.options.icons.submenu)._addClass(n,null,e.submenu)),this._super(t,e)},_setOptionDisabled:function(t){this._super(t),this.element.attr("aria-disabled",String(t)),this._toggleClass(null,"ui-state-disabled",!!t)},focus:function(t,e){var n;this.blur(t,t&&"focus"===t.type),this._scrollIntoView(e),this.active=e.first(),n=this.active.children(".ui-menu-item-wrapper"),this._addClass(n,null,"ui-state-active"),this.options.role&&this.element.attr("aria-activedescendant",n.attr("id")),n=this.active.parent().closest(".ui-menu-item").children(".ui-menu-item-wrapper"),this._addClass(n,null,"ui-state-active"),t&&"keydown"===t.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),(n=e.children(".ui-menu")).length&&t&&/^mouse/.test(t.type)&&this._startOpening(n),this.activeMenu=e.parent(),this._trigger("focus",t,{item:e})},_scrollIntoView:function(t){var e,n,r;this._hasScroll()&&(n=parseFloat(x.css(this.activeMenu[0],"borderTopWidth"))||0,r=parseFloat(x.css(this.activeMenu[0],"paddingTop"))||0,e=t.offset().top-this.activeMenu.offset().top-n-r,n=this.activeMenu.scrollTop(),r=this.activeMenu.height(),t=t.outerHeight(),e<0?this.activeMenu.scrollTop(n+e):r<e+t&&this.activeMenu.scrollTop(n+e-r+t))},blur:function(t,e){e||clearTimeout(this.timer),this.active&&(this._removeClass(this.active.children(".ui-menu-item-wrapper"),null,"ui-state-active"),this._trigger("blur",t,{item:this.active}),this.active=null)},_startOpening:function(t){clearTimeout(this.timer),"true"===t.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close(),this._open(t)},this.delay))},_open:function(t){var e=x.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(t.parents(".ui-menu")).hide().attr("aria-hidden","true"),t.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(e)},collapseAll:function(e,n){clearTimeout(this.timer),this.timer=this._delay(function(){var t=n?this.element:x(e&&e.target).closest(this.element.find(".ui-menu"));t.length||(t=this.element),this._close(t),this.blur(e),this._removeClass(t.find(".ui-state-active"),null,"ui-state-active"),this.activeMenu=t},this.delay)},_close:function(t){(t=t||(this.active?this.active.parent():this.element)).find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false")},_closeOnDocumentClick:function(t){return!x(t.target).closest(".ui-menu").length},_isDivider:function(t){return!/[^\-\u2014\u2013\s]/.test(t.text())},collapse:function(t){var e=this.active&&this.active.parent().closest(".ui-menu-item",this.element);e&&e.length&&(this._close(),this.focus(t,e))},expand:function(t){var e=this.active&&this.active.children(".ui-menu ").find(this.options.items).first();e&&e.length&&(this._open(e.parent()),this._delay(function(){this.focus(t,e)}))},next:function(t){this._move("next","first",t)},previous:function(t){this._move("prev","last",t)},isFirstItem:function(){return this.active&&!this.active.preval(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(t,e,n){var r;(r=this.active?"first"===t||"last"===t?this.active["first"===t?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[t+"All"](".ui-menu-item").eq(0):r)&&r.length&&this.active||(r=this.activeMenu.find(this.options.items)[e]()),this.focus(n,r)},nextPage:function(t){var e,n,r;this.active?this.isLastItem()||(this._hasScroll()?(n=this.active.offset().top,r=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return(e=x(this)).offset().top-n-r<0}),this.focus(t,e)):this.focus(t,this.activeMenu.find(this.options.items)[this.active?"last":"first"]())):this.next(t)},previousPage:function(t){var e,n,r;this.active?this.isFirstItem()||(this._hasScroll()?(n=this.active.offset().top,r=this.element.height(),this.active.preval(".ui-menu-item").each(function(){return 0<(e=x(this)).offset().top-n+r}),this.focus(t,e)):this.focus(t,this.activeMenu.find(this.options.items).first())):this.next(t)},_hasScroll:function(){return this.element.outerHeight()<this.element.prop("scrollHeight")},select:function(t){this.active=this.active||x(t.target).closest(".ui-menu-item");var e={item:this.active};this.active.has(".ui-menu").length||this.collapseAll(t,!0),this._trigger("select",t,e)},_filterMenuItems:function(t){var t=t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&"),e=new RegExp("^"+t,"i");return this.activeMenu.find(this.options.items).filter(".ui-menu-item").filter(function(){return e.test(x.trim(x(this).children(".ui-menu-item-wrapper").text()))})}}),x.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var d=!1;function g(e){return function(){var t=this.element.val();e.apply(this,arguments),this._refresh(),t!==this.element.val()&&this._trigger("change")}}x(document).on("mouseup",function(){d=!1}),x.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(t){if(!0===x.data(t.target,e.widgetName+".preventClickEvent"))return x.removeData(t.target,e.widgetName+".preventClickEvent"),t.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(!d){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t;var e=this,n=1===t.which,r=!("string"!=typeof this.options.cancel||!t.target.nodeName)&&x(t.target).closest(this.options.cancel).length;return!(n&&!r&&this._mouseCapture(t))||(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(t),!this._mouseStarted)?(t.preventDefault(),!0):(!0===x.data(t.target,this.widgetName+".preventClickEvent")&&x.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return e._mouseMove(t)},this._mouseUpDelegate=function(t){return e._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),d=!0))}},_mouseMove:function(t){if(this._mouseMoved){if(x.ui.ie&&(!document.documentMode||document.documentMode<9)&&!t.button)return this._mouseUp(t);if(!t.which)if(t.originalEvent.altKey||t.originalEvent.ctrlKey||t.originalEvent.metaKey||t.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(t)}return(t.which||t.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(this._mouseDownEvent,t),this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted)},_mouseUp:function(t){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&x.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,d=!1,t.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),x.widget("ui.selectmenu",[x.ui.formResetMixin,{version:"1.12.1",defaultElement:"<select>",options:{appendTo:null,classes:{"ui-selectmenu-button-open":"ui-corner-top","ui-selectmenu-button-closed":"ui-corner-all"},disabled:null,icons:{button:"ui-icon-triangle-1-s"},position:{my:"left top",at:"left bottom",collision:"none"},width:!1,change:null,close:null,focus:null,open:null,select:null},_create:function(){var t=this.element.uniqueId().attr("id");this.ids={element:t,button:t+"-button",menu:t+"-menu"},this._drawButton(),this._drawMenu(),this._bindFormResetHandler(),this._rendered=!1,this.menuItems=x()},_drawButton:function(){var t,e=this,n=this._parseOption(this.element.find("option:selected"),this.element[0].selectedIndex);this.labels=this.element.labels().attr("for",this.ids.button),this._on(this.labels,{click:function(t){this.button.focus(),t.preventDefault()}}),this.element.hide(),this.button=x("<span>",{tabindex:this.options.disabled?-1:0,id:this.ids.button,role:"combobox","aria-expanded":"false","aria-autocomplete":"list","aria-owns":this.ids.menu,"aria-haspopup":"true",title:this.element.attr("title")}).insertAfter(this.element),this._addClass(this.button,"ui-selectmenu-button ui-selectmenu-button-closed","ui-button ui-widget"),t=x("<span>").appendTo(this.button),this._addClass(t,"ui-selectmenu-icon","ui-icon "+this.options.icons.button),this.buttonItem=this._renderButtonItem(n).appendTo(this.button),!1!==this.options.width&&this._resizeButton(),this._on(this.button,this._buttonEvents),this.button.one("focusin",function(){e._rendered||e._refreshMenu()})},_drawMenu:function(){var n=this;this.menu=x("<ul>",{"aria-hidden":"true","aria-labelledby":this.ids.button,id:this.ids.menu}),this.menuWrap=x("<div>").append(this.menu),this._addClass(this.menuWrap,"ui-selectmenu-menu","ui-front"),this.menuWrap.appendTo(this._appendTo()),this.menuInstance=this.menu.menu({classes:{"ui-menu":"ui-corner-bottom"},role:"listbox",select:function(t,e){t.preventDefault(),n._setSelection(),n._select(e.item.data("ui-selectmenu-item"),t)},focus:function(t,e){e=e.item.data("ui-selectmenu-item");null!=n.focusIndex&&e.index!==n.focusIndex&&(n._trigger("focus",t,{item:e}),n.isOpen||n._select(e,t)),n.focusIndex=e.index,n.button.attr("aria-activedescendant",n.menuItems.eq(e.index).attr("id"))}}).menu("instance"),this.menuInstance._off(this.menu,"mouseleave"),this.menuInstance._closeOnDocumentClick=function(){return!1},this.menuInstance._isDivider=function(){return!1}},refresh:function(){this._refreshMenu(),this.buttonItem.replaceWith(this.buttonItem=this._renderButtonItem(this._getSelectedItem().data("ui-selectmenu-item")||{})),null===this.options.width&&this._resizeButton()},_refreshMenu:function(){var t=this.element.find("option");this.menu.empty(),this._parseOptions(t),this._renderMenu(this.menu,this.items),this.menuInstance.refresh(),this.menuItems=this.menu.find("li").not(".ui-selectmenu-optgroup").find(".ui-menu-item-wrapper"),this._rendered=!0,t.length&&(t=this._getSelectedItem(),this.menuInstance.focus(null,t),this._setAria(t.data("ui-selectmenu-item")),this._setOption("disabled",this.element.prop("disabled")))},open:function(t){this.options.disabled||(this._rendered?(this._removeClass(this.menu.find(".ui-state-active"),null,"ui-state-active"),this.menuInstance.focus(null,this._getSelectedItem())):this._refreshMenu(),this.menuItems.length&&(this.isOpen=!0,this._toggleAttr(),this._resizeMenu(),this._position(),this._on(this.document,this._documentClick),this._trigger("open",t)))},_position:function(){this.menuWrap.position(x.extend({of:this.button},this.options.position))},close:function(t){this.isOpen&&(this.isOpen=!1,this._toggleAttr(),this.range=null,this._off(this.document),this._trigger("close",t))},widget:function(){return this.button},menuWidget:function(){return this.menu},_renderButtonItem:function(t){var e=x("<span>");return this._setText(e,t.label),this._addClass(e,"ui-selectmenu-text"),e},_renderMenu:function(r,t){var i=this,o="";x.each(t,function(t,e){var n;e.optgroup!==o&&(n=x("<li>",{text:e.optgroup}),i._addClass(n,"ui-selectmenu-optgroup","ui-menu-divider"+(e.element.parent("optgroup").prop("disabled")?" ui-state-disabled":"")),n.appendTo(r),o=e.optgroup),i._renderItemData(r,e)})},_renderItemData:function(t,e){return this._renderItem(t,e).data("ui-selectmenu-item",e)},_renderItem:function(t,e){var n=x("<li>"),r=x("<div>",{title:e.element.attr("title")});return e.disabled&&this._addClass(n,null,"ui-state-disabled"),this._setText(r,e.label),n.append(r).appendTo(t)},_setText:function(t,e){e?t.text(e):t.html(" ")},_move:function(t,e){var n,r=".ui-menu-item";this.isOpen?n=this.menuItems.eq(this.focusIndex).parent("li"):(n=this.menuItems.eq(this.element[0].selectedIndex).parent("li"),r+=":not(.ui-state-disabled)"),(r="first"===t||"last"===t?n["first"===t?"prevAll":"nextAll"](r).eq(-1):n[t+"All"](r).eq(0)).length&&this.menuInstance.focus(e,r)},_getSelectedItem:function(){return this.menuItems.eq(this.element[0].selectedIndex).parent("li")},_toggle:function(t){this[this.isOpen?"close":"open"](t)},_setSelection:function(){var t;this.range&&(window.getSelection?((t=window.getSelection()).removeAllRanges(),t.addRange(this.range)):this.range.select(),this.button.focus())},_documentClick:{mousedown:function(t){this.isOpen&&(x(t.target).closest(".ui-selectmenu-menu, #"+x.ui.escapeSelector(this.ids.button)).length||this.close(t))}},_buttonEvents:{mousedown:function(){var t;window.getSelection?(t=window.getSelection()).rangeCount&&(this.range=t.getRangeAt(0)):this.range=document.selection.createRange()},click:function(t){this._setSelection(),this._toggle(t)},keydown:function(t){var e=!0;switch(t.keyCode){case x.ui.keyCode.TAB:case x.ui.keyCode.ESCAPE:this.close(t),e=!1;break;case x.ui.keyCode.ENTER:this.isOpen&&this._selectFocusedItem(t);break;case x.ui.keyCode.UP:t.altKey?this._toggle(t):this._move("prev",t);break;case x.ui.keyCode.DOWN:t.altKey?this._toggle(t):this._move("next",t);break;case x.ui.keyCode.SPACE:this.isOpen?this._selectFocusedItem(t):this._toggle(t);break;case x.ui.keyCode.LEFT:this._move("prev",t);break;case x.ui.keyCode.RIGHT:this._move("next",t);break;case x.ui.keyCode.HOME:case x.ui.keyCode.PAGE_UP:this._move("first",t);break;case x.ui.keyCode.END:case x.ui.keyCode.PAGE_DOWN:this._move("last",t);break;default:this.menu.trigger(t),e=!1}e&&t.preventDefault()}},_selectFocusedItem:function(t){var e=this.menuItems.eq(this.focusIndex).parent("li");e.hasClass("ui-state-disabled")||this._select(e.data("ui-selectmenu-item"),t)},_select:function(t,e){var n=this.element[0].selectedIndex;this.element[0].selectedIndex=t.index,this.buttonItem.replaceWith(this.buttonItem=this._renderButtonItem(t)),this._setAria(t),this._trigger("select",e,{item:t}),t.index!==n&&this._trigger("change",e,{item:t}),this.close(e)},_setAria:function(t){t=this.menuItems.eq(t.index).attr("id");this.button.attr({"aria-labelledby":t,"aria-activedescendant":t}),this.menu.attr("aria-activedescendant",t)},_setOption:function(t,e){var n;"icons"===t&&(n=this.button.find("span.ui-icon"),this._removeClass(n,null,this.options.icons.button)._addClass(n,null,e.button)),this._super(t,e),"appendTo"===t&&this.menuWrap.appendTo(this._appendTo()),"width"===t&&this._resizeButton()},_setOptionDisabled:function(t){this._super(t),this.menuInstance.option("disabled",t),this.button.attr("aria-disabled",t),this._toggleClass(this.button,null,"ui-state-disabled",t),this.element.prop("disabled",t),t?(this.button.attr("tabindex",-1),this.close()):this.button.attr("tabindex",0)},_appendTo:function(){var t=this.options.appendTo;return t=!(t=!(t=t&&(t.jquery||t.nodeType?x(t):this.document.find(t).eq(0)))||!t[0]?this.element.closest(".ui-front, dialog"):t).length?this.document[0].body:t},_toggleAttr:function(){this.button.attr("aria-expanded",this.isOpen),this._removeClass(this.button,"ui-selectmenu-button-"+(this.isOpen?"closed":"open"))._addClass(this.button,"ui-selectmenu-button-"+(this.isOpen?"open":"closed"))._toggleClass(this.menuWrap,"ui-selectmenu-open",null,this.isOpen),this.menu.attr("aria-hidden",!this.isOpen)},_resizeButton:function(){var t=this.options.width;!1!==t?(null===t&&(t=this.element.show().outerWidth(),this.element.hide()),this.button.outerWidth(t)):this.button.css("width","")},_resizeMenu:function(){this.menu.outerWidth(Math.max(this.button.outerWidth(),this.menu.width("").outerWidth()+1))},_getCreateOptions:function(){var t=this._super();return t.disabled=this.element.prop("disabled"),t},_parseOptions:function(t){var n=this,r=[];t.each(function(t,e){r.push(n._parseOption(x(e),t))}),this.items=r},_parseOption:function(t,e){var n=t.parent("optgroup");return{element:t,index:e,value:t.val(),label:t.text(),optgroup:n.attr("label")||"",disabled:n.prop("disabled")||t.prop("disabled")}},_destroy:function(){this._unbindFormResetHandler(),this.menuWrap.remove(),this.button.remove(),this.element.show(),this.element.removeUniqueId(),this.labels.attr("for",this.ids.element)}}]),x.widget("ui.slider",x.ui.mouse,{version:"1.12.1",widgetEventPrefix:"slide",options:{animate:!1,classes:{"ui-slider":"ui-corner-all","ui-slider-handle":"ui-corner-all","ui-slider-range":"ui-corner-all ui-widget-header"},distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null,change:null,slide:null,start:null,stop:null},numPages:5,_create:function(){this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this._calculateNewMax(),this._addClass("ui-slider ui-slider-"+this.orientation,"ui-widget ui-widget-content"),this._refresh(),this._animateOff=!1},_refresh:function(){this._createRange(),this._createHandles(),this._setupEvents(),this._refreshValue()},_createHandles:function(){var t,e=this.options,n=this.element.find(".ui-slider-handle"),r=[],i=e.values&&e.values.length||1;for(n.length>i&&(n.slice(i).remove(),n=n.slice(0,i)),t=n.length;t<i;t++)r.push("<span tabindex='0'></span>");this.handles=n.add(x(r.join("")).appendTo(this.element)),this._addClass(this.handles,"ui-slider-handle","ui-state-default"),this.handle=this.handles.eq(0),this.handles.each(function(t){x(this).data("ui-slider-handle-index",t).attr("tabIndex",0)})},_createRange:function(){var t=this.options;t.range?(!0===t.range&&(t.values?t.values.length&&2!==t.values.length?t.values=[t.values[0],t.values[0]]:x.isArray(t.values)&&(t.values=t.values.slice(0)):t.values=[this._valueMin(),this._valueMin()]),this.range&&this.range.length?(this._removeClass(this.range,"ui-slider-range-min ui-slider-range-max"),this.range.css({left:"",bottom:""})):(this.range=x("<div>").appendTo(this.element),this._addClass(this.range,"ui-slider-range")),"min"!==t.range&&"max"!==t.range||this._addClass(this.range,"ui-slider-range-"+t.range)):(this.range&&this.range.remove(),this.range=null)},_setupEvents:function(){this._off(this.handles),this._on(this.handles,this._handleEvents),this._hoverable(this.handles),this._focusable(this.handles)},_destroy:function(){this.handles.remove(),this.range&&this.range.remove(),this._mouseDestroy()},_mouseCapture:function(t){var n,r,i,o,e,s,a=this,u=this.options;return!u.disabled&&(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),s={x:t.pageX,y:t.pageY},n=this._normValueFromMouse(s),r=this._valueMax()-this._valueMin()+1,this.handles.each(function(t){var e=Math.abs(n-a.values(t));(e<r||r===e&&(t===a._lastChangedValue||a.values(t)===u.min))&&(r=e,i=x(this),o=t)}),!1!==this._start(t,o)&&(this._mouseSliding=!0,this._handleIndex=o,this._addClass(i,null,"ui-state-active"),i.trigger("focus"),e=i.offset(),s=!x(t.target).parents().addBack().is(".ui-slider-handle"),this._clickOffset=s?{left:0,top:0}:{left:t.pageX-e.left,top:t.pageY-e.top-i.height()/2-(parseInt(i.css("borderTopWidth"),10)||0)-(parseInt(i.css("borderBottomWidth"),10)||0)+(parseInt(i.css("marginTop"),10)||0)},this._animateOff=!0))},_mouseStart:function(){return!0},_mouseDrag:function(t){var e={x:t.pageX,y:t.pageY},e=this._normValueFromMouse(e);return this._slide(t,this._handleIndex,e),!1},_mouseStop:function(t){return this._removeClass(this.handles,null,"ui-state-active"),this._mouseSliding=!1,this._stop(t,this._handleIndex),this._change(t,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1},_detectOrientation:function(){this.orientation="vertical"===this.options.orientation?"vertical":"horizontal"},_normValueFromMouse:function(t){var e,t="horizontal"===this.orientation?(e=this.elementSize.width,t.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(e=this.elementSize.height,t.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0));return(t=1<(t=t/e)?1:t)<0&&(t=0),"vertical"===this.orientation&&(t=1-t),e=this._valueMax()-this._valueMin(),e=this._valueMin()+t*e,this._trimAlignValue(e)},_uiHash:function(t,e,n){var r={handle:this.handles[t],handleIndex:t,value:void 0!==e?e:this.value()};return this._hasMultipleValues()&&(r.value=void 0!==e?e:this.values(t),r.values=n||this.values()),r},_hasMultipleValues:function(){return this.options.values&&this.options.values.length},_start:function(t,e){return this._trigger("start",t,this._uiHash(e))},_slide:function(t,e,n){var r,i=this.value(),o=this.values();this._hasMultipleValues()&&(r=this.values(e?0:1),i=this.values(e),2===this.options.values.length&&!0===this.options.range&&(n=0===e?Math.min(r,n):Math.max(r,n)),o[e]=n),n!==i&&!1!==this._trigger("slide",t,this._uiHash(e,n,o))&&(this._hasMultipleValues()?this.values(e,n):this.value(n))},_stop:function(t,e){this._trigger("stop",t,this._uiHash(e))},_change:function(t,e){this._keySliding||this._mouseSliding||(this._lastChangedValue=e,this._trigger("change",t,this._uiHash(e)))},value:function(t){return arguments.length?(this.options.value=this._trimAlignValue(t),this._refreshValue(),void this._change(null,0)):this._value()},values:function(t,e){var n,r,i;if(1<arguments.length)return this.options.values[t]=this._trimAlignValue(e),this._refreshValue(),void this._change(null,t);if(!arguments.length)return this._values();if(!x.isArray(t))return this._hasMultipleValues()?this._values(t):this.value();for(n=this.options.values,r=t,i=0;i<n.length;i+=1)n[i]=this._trimAlignValue(r[i]),this._change(null,i);this._refreshValue()},_setOption:function(t,e){var n,r=0;switch("range"===t&&!0===this.options.range&&("min"===e?(this.options.value=this._values(0),this.options.values=null):"max"===e&&(this.options.value=this._values(this.options.values.length-1),this.options.values=null)),x.isArray(this.options.values)&&(r=this.options.values.length),this._super(t,e),t){case"orientation":this._detectOrientation(),this._removeClass("ui-slider-horizontal ui-slider-vertical")._addClass("ui-slider-"+this.orientation),this._refreshValue(),this.options.range&&this._refreshRange(e),this.handles.css("horizontal"===e?"bottom":"left","");break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":for(this._animateOff=!0,this._refreshValue(),n=r-1;0<=n;n--)this._change(null,n);this._animateOff=!1;break;case"step":case"min":case"max":this._animateOff=!0,this._calculateNewMax(),this._refreshValue(),this._animateOff=!1;break;case"range":this._animateOff=!0,this._refresh(),this._animateOff=!1}},_setOptionDisabled:function(t){this._super(t),this._toggleClass(null,"ui-state-disabled",!!t)},_value:function(){var t=this.options.value;return this._trimAlignValue(t)},_values:function(t){var e,n,r;if(arguments.length)return e=this.options.values[t],this._trimAlignValue(e);if(this._hasMultipleValues()){for(n=this.options.values.slice(),r=0;r<n.length;r+=1)n[r]=this._trimAlignValue(n[r]);return n}return[]},_trimAlignValue:function(t){if(t<=this._valueMin())return this._valueMin();if(t>=this._valueMax())return this._valueMax();var e=0<this.options.step?this.options.step:1,n=(t-this._valueMin())%e,t=t-n;return 2*Math.abs(n)>=e&&(t+=0<n?e:-e),parseFloat(t.toFixed(5))},_calculateNewMax:function(){var t=this.options.max,e=this._valueMin(),n=this.options.step;(t=Math.round((t-e)/n)*n+e)>this.options.max&&(t-=n),this.max=parseFloat(t.toFixed(this._precision()))},_precision:function(){var t=this._precisionOf(this.options.step);return t=null!==this.options.min?Math.max(t,this._precisionOf(this.options.min)):t},_precisionOf:function(t){var e=t.toString(),t=e.indexOf(".");return-1===t?0:e.length-t-1},_valueMin:function(){return this.options.min},_valueMax:function(){return this.max},_refreshRange:function(t){"vertical"===t&&this.range.css({width:"",left:""}),"horizontal"===t&&this.range.css({height:"",bottom:""})},_refreshValue:function(){var e,n,t,r,i,o=this.options.range,s=this.options,a=this,u=!this._animateOff&&s.animate,c={};this._hasMultipleValues()?this.handles.each(function(t){n=(a.values(t)-a._valueMin())/(a._valueMax()-a._valueMin())*100,c["horizontal"===a.orientation?"left":"bottom"]=n+"%",x(this).stop(1,1)[u?"animate":"css"](c,s.animate),!0===a.options.range&&("horizontal"===a.orientation?(0===t&&a.range.stop(1,1)[u?"animate":"css"]({left:n+"%"},s.animate),1===t&&a.range[u?"animate":"css"]({width:n-e+"%"},{queue:!1,duration:s.animate})):(0===t&&a.range.stop(1,1)[u?"animate":"css"]({bottom:n+"%"},s.animate),1===t&&a.range[u?"animate":"css"]({height:n-e+"%"},{queue:!1,duration:s.animate}))),e=n}):(t=this.value(),r=this._valueMin(),i=this._valueMax(),c["horizontal"===this.orientation?"left":"bottom"]=(n=i!==r?(t-r)/(i-r)*100:0)+"%",this.handle.stop(1,1)[u?"animate":"css"](c,s.animate),"min"===o&&"horizontal"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({width:n+"%"},s.animate),"max"===o&&"horizontal"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({width:100-n+"%"},s.animate),"min"===o&&"vertical"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({height:n+"%"},s.animate),"max"===o&&"vertical"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({height:100-n+"%"},s.animate))},_handleEvents:{keydown:function(t){var e,n,r,i=x(t.target).data("ui-slider-handle-index");switch(t.keyCode){case x.ui.keyCode.HOME:case x.ui.keyCode.END:case x.ui.keyCode.PAGE_UP:case x.ui.keyCode.PAGE_DOWN:case x.ui.keyCode.UP:case x.ui.keyCode.RIGHT:case x.ui.keyCode.DOWN:case x.ui.keyCode.LEFT:if(t.preventDefault(),!this._keySliding&&(this._keySliding=!0,this._addClass(x(t.target),null,"ui-state-active"),!1===this._start(t,i)))return}switch(r=this.options.step,e=n=this._hasMultipleValues()?this.values(i):this.value(),t.keyCode){case x.ui.keyCode.HOME:n=this._valueMin();break;case x.ui.keyCode.END:n=this._valueMax();break;case x.ui.keyCode.PAGE_UP:n=this._trimAlignValue(e+(this._valueMax()-this._valueMin())/this.numPages);break;case x.ui.keyCode.PAGE_DOWN:n=this._trimAlignValue(e-(this._valueMax()-this._valueMin())/this.numPages);break;case x.ui.keyCode.UP:case x.ui.keyCode.RIGHT:if(e===this._valueMax())return;n=this._trimAlignValue(e+r);break;case x.ui.keyCode.DOWN:case x.ui.keyCode.LEFT:if(e===this._valueMin())return;n=this._trimAlignValue(e-r)}this._slide(t,i,n)},keyup:function(t){var e=x(t.target).data("ui-slider-handle-index");this._keySliding&&(this._keySliding=!1,this._stop(t,e),this._change(t,e),this._removeClass(x(t.target),null,"ui-state-active"))}}}),x.widget("ui.spinner",{version:"1.12.1",defaultElement:"<input>",widgetEventPrefix:"spin",options:{classes:{"ui-spinner":"ui-corner-all","ui-spinner-down":"ui-corner-br","ui-spinner-up":"ui-corner-tr"},culture:null,icons:{down:"ui-icon-triangle-1-s",up:"ui-icon-triangle-1-n"},incremental:!0,max:null,min:null,numberFormat:null,page:10,step:1,change:null,spin:null,start:null,stop:null},_create:function(){this._setOption("max",this.options.max),this._setOption("min",this.options.min),this._setOption("step",this.options.step),""!==this.value()&&this._value(this.element.val(),!0),this._draw(),this._on(this._events),this._refresh(),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_getCreateOptions:function(){var r=this._super(),i=this.element;return x.each(["min","max","step"],function(t,e){var n=i.attr(e);null!=n&&n.length&&(r[e]=n)}),r},_events:{keydown:function(t){this._start(t)&&this._keydown(t)&&t.preventDefault()},keyup:"_stop",focus:function(){this.previous=this.element.val()},blur:function(t){this.cancelBlur?delete this.cancelBlur:(this._stop(),this._refresh(),this.previous!==this.element.val()&&this._trigger("change",t))},mousewheel:function(t,e){if(e){if(!this.spinning&&!this._start(t))return!1;this._spin((0<e?1:-1)*this.options.step,t),clearTimeout(this.mousewheelTimer),this.mousewheelTimer=this._delay(function(){this.spinning&&this._stop(t)},100),t.preventDefault()}},"mousedown .ui-spinner-button":function(t){var e;function n(){this.element[0]===x.ui.safeActiveElement(this.document[0])||(this.element.trigger("focus"),this.previous=e,this._delay(function(){this.previous=e}))}e=this.element[0]===x.ui.safeActiveElement(this.document[0])?this.previous:this.element.val(),t.preventDefault(),n.call(this),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur,n.call(this)}),!1!==this._start(t)&&this._repeat(null,x(t.currentTarget).hasClass("ui-spinner-up")?1:-1,t)},"mouseup .ui-spinner-button":"_stop","mouseenter .ui-spinner-button":function(t){if(x(t.currentTarget).hasClass("ui-state-active"))return!1!==this._start(t)&&void this._repeat(null,x(t.currentTarget).hasClass("ui-spinner-up")?1:-1,t)},"mouseleave .ui-spinner-button":"_stop"},_enhance:function(){this.uiSpinner=this.element.attr("autocomplete","off").wrap("<span>").parent().append("<a></a><a></a>")},_draw:function(){this._enhance(),this._addClass(this.uiSpinner,"ui-spinner","ui-widget ui-widget-content"),this._addClass("ui-spinner-input"),this.element.attr("role","spinbutton"),this.buttons=this.uiSpinner.children("a").attr("tabIndex",-1).attr("aria-hidden",!0).button({classes:{"ui-button":""}}),this._removeClass(this.buttons,"ui-corner-all"),this._addClass(this.buttons.first(),"ui-spinner-button ui-spinner-up"),this._addClass(this.buttons.last(),"ui-spinner-button ui-spinner-down"),this.buttons.first().button({icon:this.options.icons.up,showLabel:!1}),this.buttons.last().button({icon:this.options.icons.down,showLabel:!1}),this.buttons.height()>Math.ceil(.5*this.uiSpinner.height())&&0<this.uiSpinner.height()&&this.uiSpinner.height(this.uiSpinner.height())},_keydown:function(t){var e=this.options,n=x.ui.keyCode;switch(t.keyCode){case n.UP:return this._repeat(null,1,t),!0;case n.DOWN:return this._repeat(null,-1,t),!0;case n.PAGE_UP:return this._repeat(null,e.page,t),!0;case n.PAGE_DOWN:return this._repeat(null,-e.page,t),!0}return!1},_start:function(t){return!(!this.spinning&&!1===this._trigger("start",t))&&(this.counter||(this.counter=1),this.spinning=!0)},_repeat:function(t,e,n){t=t||500,clearTimeout(this.timer),this.timer=this._delay(function(){this._repeat(40,e,n)},t),this._spin(e*this.options.step,n)},_spin:function(t,e){var n=this.value()||0;this.counter||(this.counter=1),n=this._adjustValue(n+t*this._increment(this.counter)),this.spinning&&!1===this._trigger("spin",e,{value:n})||(this._value(n),this.counter++)},_increment:function(t){var e=this.options.incremental;return e?x.isFunction(e)?e(t):Math.floor(t*t*t/5e4-t*t/500+17*t/200+1):1},_precision:function(){var t=this._precisionOf(this.options.step);return t=null!==this.options.min?Math.max(t,this._precisionOf(this.options.min)):t},_precisionOf:function(t){var e=t.toString(),t=e.indexOf(".");return-1===t?0:e.length-t-1},_adjustValue:function(t){var e,n=this.options,r=t-(e=null!==n.min?n.min:0);return t=e+Math.round(r/n.step)*n.step,t=parseFloat(t.toFixed(this._precision())),null!==n.max&&t>n.max?n.max:null!==n.min&&t<n.min?n.min:t},_stop:function(t){this.spinning&&(clearTimeout(this.timer),clearTimeout(this.mousewheelTimer),this.counter=0,this.spinning=!1,this._trigger("stop",t))},_setOption:function(t,e){var n;if("culture"===t||"numberFormat"===t)return n=this._parse(this.element.val()),this.options[t]=e,void this.element.val(this._format(n));"max"!==t&&"min"!==t&&"step"!==t||"string"==typeof e&&(e=this._parse(e)),"icons"===t&&(n=this.buttons.first().find(".ui-icon"),this._removeClass(n,null,this.options.icons.up),this._addClass(n,null,e.up),n=this.buttons.last().find(".ui-icon"),this._removeClass(n,null,this.options.icons.down),this._addClass(n,null,e.down)),this._super(t,e)},_setOptionDisabled:function(t){this._super(t),this._toggleClass(this.uiSpinner,null,"ui-state-disabled",!!t),this.element.prop("disabled",!!t),this.buttons.button(t?"disable":"enable")},_setOptions:g(function(t){this._super(t)}),_parse:function(t){return""===(t="string"==typeof t&&""!==t?window.Globalize&&this.options.numberFormat?Globalize.parseFloat(t,10,this.options.culture):+t:t)||isNaN(t)?null:t},_format:function(t){return""===t?"":window.Globalize&&this.options.numberFormat?Globalize.format(t,this.options.numberFormat,this.options.culture):t},_refresh:function(){this.element.attr({"aria-valuemin":this.options.min,"aria-valuemax":this.options.max,"aria-valuenow":this._parse(this.element.val())})},isValid:function(){var t=this.value();return null!==t&&t===this._adjustValue(t)},_value:function(t,e){var n;""!==t&&null!==(n=this._parse(t))&&(e||(n=this._adjustValue(n)),t=this._format(n)),this.element.val(t),this._refresh()},_destroy:function(){this.element.prop("disabled",!1).removeAttr("autocomplete role aria-valuemin aria-valuemax aria-valuenow"),this.uiSpinner.replaceWith(this.element)},stepUp:g(function(t){this._stepUp(t)}),_stepUp:function(t){this._start()&&(this._spin((t||1)*this.options.step),this._stop())},stepDown:g(function(t){this._stepDown(t)}),_stepDown:function(t){this._start()&&(this._spin((t||1)*-this.options.step),this._stop())},pageUp:g(function(t){this._stepUp((t||1)*this.options.page)}),pageDown:g(function(t){this._stepDown((t||1)*this.options.page)}),value:function(t){if(!arguments.length)return this._parse(this.element.val());g(this._value).call(this,t)},widget:function(){return this.uiSpinner}}),!1!==x.uiBackCompat&&x.widget("ui.spinner",x.ui.spinner,{_enhance:function(){this.uiSpinner=this.element.attr("autocomplete","off").wrap(this._uiSpinnerHtml()).parent().append(this._buttonHtml())},_uiSpinnerHtml:function(){return"<span>"},_buttonHtml:function(){return"<a></a><a></a>"}}),x.ui.spinner};"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}(),function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof exports?module.exports=t:t(jQuery)}(function(l){function e(t){var e,n=t||window.event,r=g.call(arguments,1),i=0,o=0,s=0,a=0,u=0,c=0;if((t=l.event.fix(n)).type="mousewheel","detail"in n&&(s=-1*n.detail),"wheelDelta"in n&&(s=n.wheelDelta),"wheelDeltaY"in n&&(s=n.wheelDeltaY),"wheelDeltaX"in n&&(o=-1*n.wheelDeltaX),"axis"in n&&n.axis===n.HORIZONTAL_AXIS&&(o=-1*s,s=0),i=0===s?o:s,"deltaY"in n&&(i=s=-1*n.deltaY),"deltaX"in n&&(o=n.deltaX,0===s&&(i=-1*o)),0!==s||0!==o){1===n.deltaMode?(i*=e=l.data(this,"mousewheel-line-height"),s*=e,o*=e):2===n.deltaMode&&(i*=e=l.data(this,"mousewheel-page-height"),s*=e,o*=e);var a=Math.max(Math.abs(s),Math.abs(o));return d&&!(a<d)||f(n,d=a)&&(d/=40),f(n,a)&&(i/=40,o/=40,s/=40),i=Math[1<=i?"floor":"ceil"](i/d),o=Math[1<=o?"floor":"ceil"](o/d),s=Math[1<=s?"floor":"ceil"](s/d),m.settings.normalizeOffset&&this.getBoundingClientRect&&(a=this.getBoundingClientRect(),u=t.clientX-a.left,c=t.clientY-a.top),t.deltaX=o,t.deltaY=s,t.deltaFactor=d,t.offsetX=u,t.offsetY=c,t.deltaMode=0,r.unshift(t,i,o,s),p&&clearTimeout(p),p=setTimeout(h,200),(l.event.dispatch||l.event.handle).apply(this,r)}}function h(){d=null}function f(t,e){return m.settings.adjustOldDeltas&&"mousewheel"===t.type&&e%120==0}var p,d,t=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],n="onwheel"in document||9<=document.documentMode?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],g=Array.prototype.slice;if(l.event.fixHooks)for(var r=t.length;r;)l.event.fixHooks[t[--r]]=l.event.mouseHooks;var m=l.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener)for(var t=n.length;t;)this.addEventListener(n[--t],e,!1);else this.onmousewheel=e;l.data(this,"mousewheel-line-height",m.getLineHeight(this)),l.data(this,"mousewheel-page-height",m.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var t=n.length;t;)this.removeEventListener(n[--t],e,!1);else this.onmousewheel=null;l.removeData(this,"mousewheel-line-height"),l.removeData(this,"mousewheel-page-height")},getLineHeight:function(t){var e=l(t),t=e["offsetParent"in l.fn?"offsetParent":"parent"]();return t.length||(t=l("body")),parseInt(t.css("fontSize"),10)||parseInt(e.css("fontSize"),10)||16},getPageHeight:function(t){return l(t).height()},settings:{adjustOldDeltas:!0,normalizeOffset:!0}};l.fn.extend({mousewheel:function(t){return t?this.bind("mousewheel",t):this.trigger("mousewheel")},unmousewheel:function(t){return this.unbind("mousewheel",t)}})}),function(t){var e;"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):("undefined"!=typeof window?e=window:"undefined"!=typeof global?e=global:"undefined"!=typeof self&&(e=self),e.html2canvas=t())}(function(){return function r(i,o,s){function a(n,t){if(!o[n]){if(!i[n]){var e="function"==typeof require&&require;if(!t&&e)return e(n,!0);if(u)return u(n,!0);e=new Error("Cannot find module '"+n+"'");throw e.code="MODULE_NOT_FOUND",e}e=o[n]={exports:{}};i[n][0].call(e.exports,function(t){var e=i[n][1][t];return a(e||t)},e,e.exports,r,i,o,s)}return o[n].exports}for(var u="function"==typeof require&&require,t=0;t<s.length;t++)a(s[t]);return a}({1:[function(t,P,D){!function(j){!function(t){function m(t){throw RangeError(g[t])}function n(t,e){for(var n=t.length;n--;)t[n]=e(t[n]);return t}function e(t,e){return n(t.split(p),e).join(".")}function v(t){for(var e,n,r=[],i=0,o=t.length;i<o;)55296<=(e=t.charCodeAt(i++))&&e<=56319&&i<o?56320==(64512&(n=t.charCodeAt(i++)))?r.push(((1023&e)<<10)+(1023&n)+65536):(r.push(e),i--):r.push(e);return r}function d(t){return n(t,function(t){var e="";return 65535<t&&(e+=A((t-=65536)>>>10&1023|55296),t=56320|1023&t),e+A(t)}).join("")}function y(t,e){return t+22+75*(t<26)-((0!=e)<<5)}function b(t,e,n){var r=0;for(t=n?T(t/l):t>>1,t+=T(t/e);E*C>>1<t;r+=_)t=T(t/E);return T(r+(E+1)*t/(t+c))}function r(t){var e,n,r,i,o,s,a,u=[],c=t.length,l=0,h=S,f=k,p=t.lastIndexOf(O);for(p<0&&(p=0),n=0;n<p;++n)128<=t.charCodeAt(n)&&m("not-basic"),u.push(t.charCodeAt(n));for(r=0<p?p+1:0;r<c;){for(i=l,o=1,s=_;c<=r&&m("invalid-input"),a=t.charCodeAt(r++),(_<=(a=a-48<10?a-22:a-65<26?a-65:a-97<26?a-97:_)||a>T((w-l)/o))&&m("overflow"),l+=a*o,!(a<(a=s<=f?x:f+C<=s?C:s-f));s+=_)o>T(w/(a=_-a))&&m("overflow"),o*=a;f=b(l-i,e=u.length+1,0==i),T(l/e)>w-h&&m("overflow"),h+=T(l/e),l%=e,u.splice(l++,0,h)}return d(u)}function i(t){for(var e,n,r,i,o,s,a,u,c,l,h=[],f=(t=v(t)).length,p=S,d=k,g=e=0;g<f;++g)(a=t[g])<128&&h.push(A(a));for(n=r=h.length,r&&h.push(O);n<f;){for(i=w,g=0;g<f;++g)p<=(a=t[g])&&a<i&&(i=a);for(i-p>T((w-e)/(u=n+1))&&m("overflow"),e+=(i-p)*u,p=i,g=0;g<f;++g)if((a=t[g])<p&&++e>w&&m("overflow"),a==p){for(o=e,s=_;!(o<(c=s<=d?x:d+C<=s?C:s-d));s+=_)h.push(A(y(c+(l=o-c)%(c=_-c),0))),o=T(l/c);h.push(A(y(o,0))),d=b(e,u,n==r),e=0,++n}++e,++p}return h.join("")}var o="object"==typeof D&&D,s="object"==typeof P&&P&&P.exports==o&&P,a="object"==typeof j&&j;a.global!==a&&a.window!==a||(t=a);var u,w=2147483647,_=36,x=1,C=26,c=38,l=700,k=72,S=128,O="-",h=/^xn--/,f=/[^ -~]/,p=/\x2E|\u3002|\uFF0E|\uFF61/g,g={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},E=_-x,T=Math.floor,A=String.fromCharCode,I={version:"1.2.4",ucs2:{decode:v,encode:d},decode:r,encode:i,toASCII:function(t){return e(t,function(t){return f.test(t)?"xn--"+i(t):t})},toUnicode:function(t){return e(t,function(t){return h.test(t)?r(t.slice(4).toLowerCase()):t})}};if(0,o&&!o.nodeType)if(s)s.exports=I;else for(u in I)I.hasOwnProperty(u)&&(o[u]=I[u]);else t.punycode=I}(this)}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(t,e){function i(t,e){for(var n=3===t.nodeType?document.createTextNode(t.nodeValue):t.cloneNode(!1),r=t.firstChild;r;)!0!==e&&1===r.nodeType&&"SCRIPT"===r.nodeName||n.appendChild(i(r,e)),r=r.nextSibling;return 1===t.nodeType&&(n._scrollTop=t.scrollTop,n._scrollLeft=t.scrollLeft,"CANVAS"===t.nodeName?function(e,t){try{t&&(t.width=e.width,t.height=e.height,t.getContext("2d").putImageData(e.getContext("2d").getImageData(0,0,e.width,e.height),0,0))}catch(t){o("Unable to copy canvas content from",e,t)}}(t,n):"TEXTAREA"!==t.nodeName&&"SELECT"!==t.nodeName||(n.value=t.value)),n}var o=t("./log");e.exports=function(o,t,e,n,s,a,u){var c=i(o.documentElement,s.javascriptEnabled),l=t.createElement("iframe");return l.className="html2canvas-container",l.style.visibility="hidden",l.style.position="fixed",l.style.left="-10000px",l.style.top="0px",l.style.border="0",l.width=e,l.height=n,l.scrolling="no",t.body.appendChild(l),new Promise(function(e){var t,n,r,i=l.contentWindow.document;l.contentWindow.onload=l.onload=function(){var t=setInterval(function(){0<i.body.childNodes.length&&(function t(e){if(1===e.nodeType){e.scrollTop=e._scrollTop,e.scrollLeft=e._scrollLeft;for(var n=e.firstChild;n;)t(n),n=n.nextSibling}}(i.documentElement),clearInterval(t),"view"===s.type&&(l.contentWindow.scrollTo(a,u),!/(iPad|iPhone|iPod)/g.test(navigator.userAgent)||l.contentWindow.scrollY===u&&l.contentWindow.scrollX===a||(i.documentElement.style.top=-u+"px",i.documentElement.style.left=-a+"px",i.documentElement.style.position="absolute")),e(l))},50)},i.open(),i.write("<!DOCTYPE html><html></html>"),n=a,r=u,!(t=o).defaultView||n===t.defaultView.pageXOffset&&r===t.defaultView.pageYOffset||t.defaultView.scrollTo(n,r),i.replaceChild(i.adoptNode(c),i.documentElement),i.close()})}},{"./log":13}],3:[function(t,e){function n(t){this.r=0,this.g=0,this.b=0,this.a=null,this.fromArray(t)||this.namedColor(t)||this.rgb(t)||this.rgba(t)||this.hex6(t)||this.hex3(t)}n.prototype.darken=function(t){t=1-t;return new n([Math.round(this.r*t),Math.round(this.g*t),Math.round(this.b*t),this.a])},n.prototype.isTransparent=function(){return 0===this.a},n.prototype.isBlack=function(){return 0===this.r&&0===this.g&&0===this.b},n.prototype.fromArray=function(t){return Array.isArray(t)&&(this.r=Math.min(t[0],255),this.g=Math.min(t[1],255),this.b=Math.min(t[2],255),3<t.length&&(this.a=t[3])),Array.isArray(t)};var r=/^#([a-f0-9]{3})$/i;n.prototype.hex3=function(t){var e;return null!==(e=t.match(r))&&(this.r=parseInt(e[1][0]+e[1][0],16),this.g=parseInt(e[1][1]+e[1][1],16),this.b=parseInt(e[1][2]+e[1][2],16)),null!==e};var i=/^#([a-f0-9]{6})$/i;n.prototype.hex6=function(t){var e=null;return null!==(e=t.match(i))&&(this.r=parseInt(e[1].substring(0,2),16),this.g=parseInt(e[1].substring(2,4),16),this.b=parseInt(e[1].substring(4,6),16)),null!==e};var o=/^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/;n.prototype.rgb=function(t){var e;return null!==(e=t.match(o))&&(this.r=Number(e[1]),this.g=Number(e[2]),this.b=Number(e[3])),null!==e};var s=/^rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d?\.?\d+)\s*\)$/;n.prototype.rgba=function(t){var e;return null!==(e=t.match(s))&&(this.r=Number(e[1]),this.g=Number(e[2]),this.b=Number(e[3]),this.a=Number(e[4])),null!==e},n.prototype.toString=function(){return null!==this.a&&1!==this.a?"rgba("+[this.r,this.g,this.b,this.a].join(",")+")":"rgb("+[this.r,this.g,this.b].join(",")+")"},n.prototype.namedColor=function(t){t=t.toLowerCase();var e=a[t];if(e)this.r=e[0],this.g=e[1],this.b=e[2];else if("transparent"===t)return!(this.r=this.g=this.b=this.a=0);return!!e},n.prototype.isColor=!0;var a={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};e.exports=n},{}],4:[function(t,e){function n(t,e){var n,r,i=C++;if((e=e||{}).logging&&(y.options.logging=!0,y.options.start=Date.now()),e.async=void 0===e.async||e.async,e.allowTaint=void 0!==e.allowTaint&&e.allowTaint,e.removeContainer=void 0===e.removeContainer||e.removeContainer,e.javascriptEnabled=void 0!==e.javascriptEnabled&&e.javascriptEnabled,e.imageTimeout=void 0===e.imageTimeout?1e4:e.imageTimeout,e.renderer="function"==typeof e.renderer?e.renderer:g,e.strict=!!e.strict,"string"==typeof t){if("string"!=typeof e.proxy)return Promise.reject("Proxy must be used when rendering url");var o=null!=e.width?e.width:window.innerWidth,s=null!=e.height?e.height:window.innerHeight;return w((n=t,(r=document.createElement("a")).href=n,r.href=r.href,r),e.proxy,document,o,s,e).then(function(t){return f(t.contentWindow.document.documentElement,t,e,o,s)})}var a,u,c,l,h,t=(void 0===t?[document.documentElement]:t.length?t:[t])[0];return t.setAttribute(x+i,i),a=t.ownerDocument,u=e,c=t.ownerDocument.defaultView.innerWidth,l=t.ownerDocument.defaultView.innerHeight,h=i,b(a,a,c,l,u,a.defaultView.pageXOffset,a.defaultView.pageYOffset).then(function(t){y("Document cloned");var e=x+h,n="["+e+"='"+h+"']";a.querySelector(n).removeAttribute(e);var e=t.contentWindow,r=e.document.querySelector(n);return Promise.resolve("function"!=typeof u.onclone||u.onclone(e.document)).then(function(){return f(r,t,u,c,l)})}).then(function(t){return"function"==typeof e.onrendered&&(y("options.onrendered is deprecated, html2canvas returns a Promise containing the canvas"),e.onrendered(t)),t})}function f(n,r,i,t,e){var o,s,a=r.contentWindow,u=new d(a.document),c=new m(i,u),l=_(n),s="view"===i.type?t:(s=a.document,Math.max(Math.max(s.body.scrollWidth,s.documentElement.scrollWidth),Math.max(s.body.offsetWidth,s.documentElement.offsetWidth),Math.max(s.body.clientWidth,s.documentElement.clientWidth))),o="view"===i.type?e:(o=a.document,Math.max(Math.max(o.body.scrollHeight,o.documentElement.scrollHeight),Math.max(o.body.offsetHeight,o.documentElement.offsetHeight),Math.max(o.body.clientHeight,o.documentElement.clientHeight))),h=new i.renderer(s,o,c,i,document);return new v(n,h,u,c,i).ready.then(function(){var t,e;return y("Finished rendering"),t="view"===i.type?p(h.canvas,{width:h.canvas.width,height:h.canvas.height,top:0,left:0,x:0,y:0}):n===a.document.body||n===a.document.documentElement||null!=i.canvas?h.canvas:p(h.canvas,{width:(null!=i.width?i:l).width,height:(null!=i.height?i:l).height,top:l.top,left:l.left,x:0,y:0}),e=r,i.removeContainer&&(e.parentNode.removeChild(e),y("Cleaned up container")),t})}function p(t,e){var n=document.createElement("canvas"),r=Math.min(t.width-1,Math.max(0,e.left)),i=Math.min(t.width,Math.max(1,e.left+e.width)),o=Math.min(t.height-1,Math.max(0,e.top)),s=Math.min(t.height,Math.max(1,e.top+e.height));n.width=e.width,n.height=e.height;i-=r,s-=o;return y("Cropping canvas at:","left:",e.left,"top:",e.top,"width:",i,"height:",s),y("Resulting crop with width",e.width,"and height",e.height,"with x",r,"and y",o),n.getContext("2d").drawImage(t,r,o,i,s,e.x,e.y,i,s),n}var d=t("./support"),g=t("./renderers/canvas"),m=t("./imageloader"),v=t("./nodeparser"),r=t("./nodecontainer"),y=t("./log"),i=t("./utils"),b=t("./clone"),w=t("./proxy").loadUrlDocument,_=i.getBounds,x="data-html2canvas-node",C=0;n.CanvasRenderer=g,n.NodeContainer=r,n.log=y,n.utils=i;i="undefined"==typeof document||"function"!=typeof Object.create||"function"!=typeof document.createElement("canvas").getContext?function(){return Promise.reject("No canvas support")}:n;e.exports=i},{"./clone":2,"./imageloader":11,"./log":13,"./nodecontainer":14,"./nodeparser":15,"./proxy":16,"./renderers/canvas":20,"./support":22,"./utils":26}],5:[function(t,e){function r(t){var n;this.src=t,i("DummyImageContainer for",t),this.promise&&this.image||(i("Initiating DummyImageContainer"),r.prototype.image=new Image,n=this.image,r.prototype.promise=new Promise(function(t,e){n.onload=t,n.onerror=e,n.src=o(),!0===n.complete&&t(n)}))}var i=t("./log"),o=t("./utils").smallImage;e.exports=r},{"./log":13,"./utils":26}],6:[function(t,e){var s=t("./utils").smallImage;e.exports=function(t,e){var n=document.createElement("div"),r=document.createElement("img"),i=document.createElement("span"),o="Hidden Text";n.style.visibility="hidden",n.style.fontFamily=t,n.style.fontSize=e,n.style.margin=0,n.style.padding=0,document.body.appendChild(n),r.src=s(),r.width=1,r.height=1,r.style.margin=0,r.style.padding=0,r.style.verticalAlign="baseline",i.style.fontFamily=t,i.style.fontSize=e,i.style.margin=0,i.style.padding=0,i.appendChild(document.createTextNode(o)),n.appendChild(i),n.appendChild(r),e=r.offsetTop-i.offsetTop+1,n.removeChild(i),n.appendChild(document.createTextNode(o)),n.style.lineHeight="normal",r.style.verticalAlign="super",r=r.offsetTop-n.offsetTop+1,document.body.removeChild(n),this.baseline=e,this.lineWidth=1,this.middle=r}},{"./utils":26}],7:[function(t,e){function n(){this.data={}}var r=t("./font");n.prototype.getMetrics=function(t,e){return void 0===this.data[t+"-"+e]&&(this.data[t+"-"+e]=new r(t,e)),this.data[t+"-"+e]},e.exports=n},{"./font":6}],8:[function(o,t){function e(e,t,n){this.image=null,this.src=e;var r=this,i=s(e);this.promise=(t?new Promise(function(t){"about:blank"===e.contentWindow.document.URL||null==e.contentWindow.document.documentElement?e.contentWindow.onload=e.onload=function(){t(e)}:t(e)}):this.proxyLoad(n.proxy,i,n)).then(function(t){return o("./core")(t.contentWindow.document.documentElement,{type:"view",width:t.width,height:t.height,proxy:n.proxy,javascriptEnabled:n.javascriptEnabled,removeContainer:n.removeContainer,allowTaint:n.allowTaint,imageTimeout:n.imageTimeout/2})}).then(function(t){return r.image=t})}var s=o("./utils").getBounds,i=o("./proxy").loadUrlDocument;e.prototype.proxyLoad=function(t,e,n){var r=this.src;return i(r.src,t,r.ownerDocument,e.width,e.height,n)},t.exports=e},{"./core":4,"./proxy":16,"./utils":26}],9:[function(t,e){function n(t){this.src=t.value,this.colorStops=[],this.type=null,this.x0=.5,this.y0=.5,this.x1=.5,this.y1=.5,this.promise=Promise.resolve(!0)}n.TYPES={LINEAR:1,RADIAL:2},n.REGEXP_COLORSTOP=/^\s*(rgba?\(\s*\d{1,3},\s*\d{1,3},\s*\d{1,3}(?:,\s*[0-9\.]+)?\s*\)|[a-z]{3,20}|#[a-f0-9]{3,6})(?:\s+(\d{1,3}(?:\.\d+)?)(%|px)?)?(?:\s|$)/i,e.exports=n},{}],10:[function(t,e){e.exports=function(n,r){this.src=n,this.image=new Image;var i=this;this.tainted=null,this.promise=new Promise(function(t,e){i.image.onload=t,i.image.onerror=e,r&&(i.image.crossOrigin="anonymous"),i.image.src=n,!0===i.image.complete&&t(i.image)})}},{}],11:[function(t,e){function n(t,e){this.link=null,this.options=t,this.support=e,this.origin=this.getOrigin(window.location.href)}var o=t("./log"),r=t("./imagecontainer"),i=t("./dummyimagecontainer"),s=t("./proxyimagecontainer"),a=t("./framecontainer"),u=t("./svgcontainer"),c=t("./svgnodecontainer"),l=t("./lineargradientcontainer"),h=t("./webkitgradientcontainer"),f=t("./utils").bind;n.prototype.findImages=function(t){var e=[];return t.reduce(function(t,e){switch(e.node.nodeName){case"IMG":return t.concat([{args:[e.node.src],method:"url"}]);case"svg":case"IFRAME":return t.concat([{args:[e.node],method:e.node.nodeName}])}return t},[]).forEach(this.addImage(e,this.loadImage),this),e},n.prototype.findBackgroundImage=function(t,e){return e.parseBackgroundImages().filter(this.hasImageBackground).forEach(this.addImage(t,this.loadImage),this),t},n.prototype.addImage=function(n,r){return function(e){e.args.forEach(function(t){this.imageExists(n,t)||(n.splice(0,0,r.call(this,e)),o("Added image #"+n.length,"string"==typeof t?t.substring(0,100):t))},this)}},n.prototype.hasImageBackground=function(t){return"none"!==t.method},n.prototype.loadImage=function(t){if("url"!==t.method)return"linear-gradient"===t.method?new l(t):"gradient"===t.method?new h(t):"svg"===t.method?new c(t.args[0],this.support.svg):"IFRAME"===t.method?new a(t.args[0],this.isSameOrigin(t.args[0].src),this.options):new i(t);t=t.args[0];return!this.isSVG(t)||this.support.svg||this.options.allowTaint?t.match(/data:image\/.*;base64,/i)?new r(t.replace(/url\(['"]{0,}|['"]{0,}\)$/gi,""),!1):this.isSameOrigin(t)||!0===this.options.allowTaint||this.isSVG(t)?new r(t,!1):this.support.cors&&!this.options.allowTaint&&this.options.useCORS?new r(t,!0):this.options.proxy?new s(t,this.options.proxy):new i(t):new u(t)},n.prototype.isSVG=function(t){return"svg"===t.substring(t.length-3).toLowerCase()||u.prototype.isInline(t)},n.prototype.imageExists=function(t,e){return t.some(function(t){return t.src===e})},n.prototype.isSameOrigin=function(t){return this.getOrigin(t)===this.origin},n.prototype.getOrigin=function(t){var e=this.link||(this.link=document.createElement("a"));return e.href=t,e.href=e.href,e.protocol+e.hostname+e.port},n.prototype.getPromise=function(e){return this.timeout(e,this.options.imageTimeout).catch(function(){return new i(e.src).promise.then(function(t){e.image=t})})},n.prototype.get=function(e){var n=null;return this.images.some(function(t){return(n=t).src===e})?n:null},n.prototype.fetch=function(t){return this.images=t.reduce(f(this.findBackgroundImage,this),this.findImages(t)),this.images.forEach(function(e,n){e.promise.then(function(){o("Succesfully loaded image #"+(n+1),e)},function(t){o("Failed loading image #"+(n+1),e,t)})}),this.ready=Promise.all(this.images.map(this.getPromise,this)),o("Finished searching images"),this},n.prototype.timeout=function(n,r){var i,t=Promise.race([n.promise,new Promise(function(t,e){i=setTimeout(function(){o("Timed out loading image",n),e(n)},r)})]).then(function(t){return clearTimeout(i),t});return t.catch(function(){clearTimeout(i)}),t},e.exports=n},{"./dummyimagecontainer":5,"./framecontainer":8,"./imagecontainer":10,"./lineargradientcontainer":12,"./log":13,"./proxyimagecontainer":17,"./svgcontainer":23,"./svgnodecontainer":24,"./utils":26,"./webkitgradientcontainer":27}],12:[function(t,e){function n(t){r.apply(this,arguments),this.type=r.TYPES.LINEAR;var e=n.REGEXP_DIRECTION.test(t.args[0])||!r.REGEXP_COLORSTOP.test(t.args[0]);e?t.args[0].split(/\s+/).reverse().forEach(function(t,e){switch(t){case"left":this.x0=0,this.x1=1;break;case"top":this.y0=0,this.y1=1;break;case"right":this.x0=1,this.x1=0;break;case"bottom":this.y0=1,this.y1=0;break;case"to":var n=this.y0,r=this.x0;this.y0=this.y1,this.x0=this.x1,this.x1=r,this.y1=n;break;case"center":break;default:n=.01*parseFloat(t,10);if(isNaN(n))break;0===e?(this.y0=n,this.y1=1-this.y0):(this.x0=n,this.x1=1-this.x0)}},this):(this.y0=0,this.y1=1),this.colorStops=t.args.slice(e?1:0).map(function(t){var e=t.match(r.REGEXP_COLORSTOP),n=+e[2],t=0==n?"%":e[3];return{color:new i(e[1]),stop:"%"===t?n/100:null}}),null===this.colorStops[0].stop&&(this.colorStops[0].stop=0),null===this.colorStops[this.colorStops.length-1].stop&&(this.colorStops[this.colorStops.length-1].stop=1),this.colorStops.forEach(function(n,r){null===n.stop&&this.colorStops.slice(r).some(function(t,e){return null!==t.stop&&(n.stop=(t.stop-this.colorStops[r-1].stop)/(e+1)+this.colorStops[r-1].stop,!0)},this)},this)}var r=t("./gradientcontainer"),i=t("./color");n.prototype=Object.create(r.prototype),n.REGEXP_DIRECTION=/^\s*(?:to|left|right|top|bottom|center|\d{1,3}(?:\.\d+)?%?)(?:\s|$)/i,e.exports=n},{"./color":3,"./gradientcontainer":9}],13:[function(t,e){var n=function(){n.options.logging&&window.console&&window.console.log&&Function.prototype.bind.call(window.console.log,window.console).apply(window.console,[Date.now()-n.options.start+"ms","html2canvas:"].concat([].slice.call(arguments,0)))};n.options={logging:!1},e.exports=n},{}],14:[function(t,e){function n(t,e){this.node=t,this.parent=e,this.stack=null,this.bounds=null,this.borders=null,this.clip=[],this.backgroundClip=[],this.offsetBounds=null,this.visible=null,this.computedStyles=null,this.colors={},this.styles={},this.backgroundImages=null,this.transformData=null,this.transformMatrix=null,this.isPseudoElement=!1,this.opacity=null}function s(t){return-1!==t.toString().indexOf("%")}function r(t){return t.replace("px","")}function i(t){return parseFloat(t)}var o=t("./color"),t=t("./utils"),a=t.getBounds,u=t.parseBackgrounds,c=t.offsetBounds;n.prototype.cloneTo=function(t){t.visible=this.visible,t.borders=this.borders,t.bounds=this.bounds,t.clip=this.clip,t.backgroundClip=this.backgroundClip,t.computedStyles=this.computedStyles,t.styles=this.styles,t.backgroundImages=this.backgroundImages,t.opacity=this.opacity},n.prototype.getOpacity=function(){return null===this.opacity?this.opacity=this.cssFloat("opacity"):this.opacity},n.prototype.assignStack=function(t){(this.stack=t).children.push(this)},n.prototype.isElementVisible=function(){return this.node.nodeType===Node.TEXT_NODE?this.parent.visible:"none"!==this.css("display")&&"hidden"!==this.css("visibility")&&!this.node.hasAttribute("data-html2canvas-ignore")&&("INPUT"!==this.node.nodeName||"hidden"!==this.node.getAttribute("type"))},n.prototype.css=function(t){return this.computedStyles||(this.computedStyles=this.isPseudoElement?this.parent.computedStyle(this.before?":before":":after"):this.computedStyle(null)),this.styles[t]||(this.styles[t]=this.computedStyles[t])},n.prototype.prefixedCss=function(e){var n=this.css(e);return void 0===n&&["webkit","moz","ms","o"].some(function(t){return void 0!==(n=this.css(t+e.substr(0,1).toUpperCase()+e.substr(1)))},this),void 0===n?null:n},n.prototype.computedStyle=function(t){return this.node.ownerDocument.defaultView.getComputedStyle(this.node,t)},n.prototype.cssInt=function(t){t=parseInt(this.css(t),10);return isNaN(t)?0:t},n.prototype.color=function(t){return this.colors[t]||(this.colors[t]=new o(this.css(t)))},n.prototype.cssFloat=function(t){t=parseFloat(this.css(t));return isNaN(t)?0:t},n.prototype.fontWeight=function(){var t=this.css("fontWeight");switch(parseInt(t,10)){case 401:t="bold";break;case 400:t="normal"}return t},n.prototype.parseClip=function(){var t=this.css("clip").match(this.CLIP);return t?{top:parseInt(t[1],10),right:parseInt(t[2],10),bottom:parseInt(t[3],10),left:parseInt(t[4],10)}:null},n.prototype.parseBackgroundImages=function(){return this.backgroundImages||(this.backgroundImages=u(this.css("backgroundImage")))},n.prototype.cssList=function(t,e){t=(this.css(t)||"").split(",");return t=1===(t=(t=t[e||0]||t[0]||"auto").trim().split(" ")).length?[t[0],s(t[0])?"auto":t[0]]:t},n.prototype.parseBackgroundSize=function(t,e,n){var r,i=this.cssList("backgroundSize",n);if(s(i[0]))r=t.width*parseFloat(i[0])/100;else{if(/contain|cover/.test(i[0])){var o=t.width/t.height,n=e.width/e.height;return o<n^"contain"===i[0]?{width:t.height*n,height:t.height}:{width:t.width,height:t.width/n}}r=parseInt(i[0],10)}return t="auto"===i[0]&&"auto"===i[1]?e.height:"auto"===i[1]?r/e.width*e.height:s(i[1])?t.height*parseFloat(i[1])/100:parseInt(i[1],10),{width:r="auto"===i[0]?t/e.height*e.width:r,height:t}},n.prototype.parseBackgroundPosition=function(t,e,n,r){var i=this.cssList("backgroundPosition",n),n=s(i[0])?(t.width-(r||e).width)*(parseFloat(i[0])/100):parseInt(i[0],10),r="auto"===i[1]?n/e.width*e.height:s(i[1])?(t.height-(r||e).height)*parseFloat(i[1])/100:parseInt(i[1],10);return{left:n="auto"===i[0]?r/e.height*e.width:n,top:r}},n.prototype.parseBackgroundRepeat=function(t){return this.cssList("backgroundRepeat",t)[0]},n.prototype.parseTextShadows=function(){var t=this.css("textShadow"),e=[];if(t&&"none"!==t)for(var n=t.match(this.TEXT_SHADOW_PROPERTY),r=0;n&&r<n.length;r++){var i=n[r].match(this.TEXT_SHADOW_VALUES);e.push({color:new o(i[0]),offsetX:i[1]?parseFloat(i[1].replace("px","")):0,offsetY:i[2]?parseFloat(i[2].replace("px","")):0,blur:i[3]?i[3].replace("px",""):0})}return e},n.prototype.parseTransform=function(){var t,e;return this.transformData||(this.hasTransform()?(t=this.parseBounds(),(e=this.prefixedCss("transformOrigin").split(" ").map(r).map(i))[0]+=t.left,e[1]+=t.top,this.transformData={origin:e,matrix:this.parseTransformMatrix()}):this.transformData={origin:[0,0],matrix:[1,0,0,1,0,0]}),this.transformData},n.prototype.parseTransformMatrix=function(){var t;return this.transformMatrix||(t=(t=this.prefixedCss("transform"))?function(t){if(t&&"matrix"===t[1])return t[2].split(",").map(function(t){return parseFloat(t.trim())});if(t&&"matrix3d"===t[1]){t=t[2].split(",").map(function(t){return parseFloat(t.trim())});return[t[0],t[1],t[4],t[5],t[12],t[13]]}}(t.match(this.MATRIX_PROPERTY)):null,this.transformMatrix=t||[1,0,0,1,0,0]),this.transformMatrix},n.prototype.parseBounds=function(){return this.bounds||(this.bounds=(this.hasTransform()?c:a)(this.node))},n.prototype.hasTransform=function(){return"1,0,0,1,0,0"!==this.parseTransformMatrix().join(",")||this.parent&&this.parent.hasTransform()},n.prototype.getValue=function(){var t,e=this.node.value||"";return"SELECT"===this.node.tagName?e=(t=(t=this.node).options[t.selectedIndex||0])&&t.text||"":"password"===this.node.type&&(e=Array(e.length+1).join("•")),0===e.length?this.node.placeholder||"":e},n.prototype.MATRIX_PROPERTY=/(matrix|matrix3d)\((.+)\)/,n.prototype.TEXT_SHADOW_PROPERTY=/((rgba|rgb)\([^\)]+\)(\s-?\d+px){0,})/g,n.prototype.TEXT_SHADOW_VALUES=/(-?\d+px)|(#.+)|(rgb\(.+\))|(rgba\(.+\))/g,n.prototype.CLIP=/^rect\((\d+)px,? (\d+)px,? (\d+)px,? (\d+)px\)$/,e.exports=n},{"./color":3,"./utils":26}],15:[function(t,e){function n(t,e,n,r,i){T("Starting NodeParser"),this.renderer=e,this.options=i,this.range=null,this.support=n,this.renderQueue=[],this.stack=new R(!0,1,t.ownerDocument,null);var o=new I(t,null);i.background&&e.rectangle(0,0,e.width,e.height,new N(i.background)),t===t.ownerDocument.documentElement&&(n=new I(o.color("backgroundColor").isTransparent()?t.ownerDocument.body:t.ownerDocument.documentElement,null),e.rectangle(0,0,e.width,e.height,n.color("backgroundColor"))),o.visibile=o.isElementVisible(),this.createPseudoHideStyles(t.ownerDocument),this.disableAnimations(t.ownerDocument),this.nodes=E([o].concat(this.getChildren(o)).filter(function(t){return t.visible=t.isElementVisible()}).map(this.getPseudoElements,this)),this.fontMetrics=new D,T("Fetched nodes, total:",this.nodes.length),T("Calculate overflow clips"),this.calculateOverflowClips(),T("Start fetching images"),this.images=r.fetch(this.nodes.filter(x)),this.ready=this.images.ready.then(M(function(){return T("Images loaded, starting parsing"),T("Creating stacking contexts"),this.createStackingContexts(),T("Sorting stacking contexts"),this.sortStackingContexts(this.stack),this.parse(this.stack),T("Render queue created with "+this.renderQueue.length+" items"),new Promise(M(function(t){i.async?"function"==typeof i.async?i.async.call(this,this.renderQueue,t):0<this.renderQueue.length?(this.renderIndex=0,this.asyncRenderer(this.renderQueue,t)):t():(this.renderQueue.forEach(this.paint,this),t())},this))},this))}function r(t){return t.parent&&t.parent.clip.length}function a(){}function u(s,a,u,c){return s.map(function(t,e){if(0<t.width){var n=a.left,r=a.top,i=a.width,o=a.height-s[2].width;switch(e){case 0:o=s[0].width,t.args=h({c1:[n,r],c2:[n+i,r],c3:[n+i-s[1].width,r+o],c4:[n+s[3].width,r+o]},c[0],c[1],u.topLeftOuter,u.topLeftInner,u.topRightOuter,u.topRightInner);break;case 1:n=a.left+a.width-s[1].width,i=s[1].width,t.args=h({c1:[n+i,r],c2:[n+i,r+o+s[2].width],c3:[n,r+o],c4:[n,r+s[0].width]},c[1],c[2],u.topRightOuter,u.topRightInner,u.bottomRightOuter,u.bottomRightInner);break;case 2:r=r+a.height-s[2].width,o=s[2].width,t.args=h({c1:[n+i,r+o],c2:[n,r+o],c3:[n+s[3].width,r],c4:[n+i-s[3].width,r]},c[2],c[3],u.bottomRightOuter,u.bottomRightInner,u.bottomLeftOuter,u.bottomLeftInner);break;case 3:i=s[3].width,t.args=h({c1:[n,r+o+s[2].width],c2:[n,r],c3:[n+i,r+s[0].width],c4:[n+i,r+o]},c[3],c[0],u.bottomLeftOuter,u.bottomLeftInner,u.topLeftOuter,u.topLeftInner)}}return t})}function v(t,e,n,r){var i=(Math.sqrt(2)-1)/3*4,o=n*i,i=r*i,n=t+n,r=e+r;return{topLeft:l({x:t,y:r},{x:t,y:r-i},{x:n-o,y:e},{x:n,y:e}),topRight:l({x:t,y:e},{x:t+o,y:e},{x:n,y:r-i},{x:n,y:r}),bottomRight:l({x:n,y:e},{x:n,y:e+i},{x:t+o,y:r},{x:t,y:r}),bottomLeft:l({x:n,y:r},{x:n-o,y:r},{x:t,y:e+i},{x:t,y:e})}}function c(t,e,n){var r=t.left,i=t.top,o=t.width,s=t.height,a=e[0][0]<o/2?e[0][0]:o/2,u=e[0][1]<s/2?e[0][1]:s/2,c=e[1][0]<o/2?e[1][0]:o/2,l=e[1][1]<s/2?e[1][1]:s/2,h=e[2][0]<o/2?e[2][0]:o/2,f=e[2][1]<s/2?e[2][1]:s/2,p=e[3][0]<o/2?e[3][0]:o/2,d=e[3][1]<s/2?e[3][1]:s/2,g=o-c,m=s-f,t=o-h,e=s-d;return{topLeftOuter:v(r,i,a,u).topLeft.subdivide(.5),topLeftInner:v(r+n[3].width,i+n[0].width,Math.max(0,a-n[3].width),Math.max(0,u-n[0].width)).topLeft.subdivide(.5),topRightOuter:v(r+g,i,c,l).topRight.subdivide(.5),topRightInner:v(r+Math.min(g,o+n[3].width),i+n[0].width,g>o+n[3].width?0:c-n[3].width,l-n[0].width).topRight.subdivide(.5),bottomRightOuter:v(r+t,i+m,h,f).bottomRight.subdivide(.5),bottomRightInner:v(r+Math.min(t,o-n[3].width),i+Math.min(m,s+n[0].width),Math.max(0,h-n[1].width),f-n[2].width).bottomRight.subdivide(.5),bottomLeftOuter:v(r,i+e,p,d).bottomLeft.subdivide(.5),bottomLeftInner:v(r+n[3].width,i+e,Math.max(0,p-n[3].width),d-n[2].width).bottomLeft.subdivide(.5)}}function l(o,s,a,u){function c(t,e,n){return{x:t.x+(e.x-t.x)*n,y:t.y+(e.y-t.y)*n}}return{start:o,startControl:s,endControl:a,end:u,subdivide:function(t){var e=c(o,s,t),n=c(s,a,t),r=c(a,u,t),i=c(e,n,t),n=c(n,r,t),t=c(i,n,t);return[l(o,e,i,t),l(t,n,r,u)]},curveTo:function(t){t.push(["bezierCurve",s.x,s.y,a.x,a.y,u.x,u.y])},curveToReversed:function(t){t.push(["bezierCurve",a.x,a.y,s.x,s.y,o.x,o.y])}}}function h(t,e,n,r,i,o,s){var a=[];return 0<e[0]||0<e[1]?(a.push(["line",r[1].start.x,r[1].start.y]),r[1].curveTo(a)):a.push(["line",t.c1[0],t.c1[1]]),0<n[0]||0<n[1]?(a.push(["line",o[0].start.x,o[0].start.y]),o[0].curveTo(a),a.push(["line",s[0].end.x,s[0].end.y]),s[0].curveToReversed(a)):(a.push(["line",t.c2[0],t.c2[1]]),a.push(["line",t.c3[0],t.c3[1]])),0<e[0]||0<e[1]?(a.push(["line",i[1].end.x,i[1].end.y]),i[1].curveToReversed(a)):a.push(["line",t.c4[0],t.c4[1]]),a}function s(t,e,n,r,i,o,s){0<e[0]||0<e[1]?(t.push(["line",r[0].start.x,r[0].start.y]),r[0].curveTo(t),r[1].curveTo(t)):t.push(["line",o,s]),(0<n[0]||0<n[1])&&t.push(["line",i[0].start.x,i[0].start.y])}function f(t){return t.cssInt("zIndex")<0}function p(t){return 0<t.cssInt("zIndex")}function d(t){return 0===t.cssInt("zIndex")}function g(t){return-1!==["inline","inline-block","inline-table"].indexOf(t.css("display"))}function m(t){return t instanceof R}function y(t){return 0<t.node.data.trim().length}function i(t){return t.nodeType===Node.TEXT_NODE||t.nodeType===Node.ELEMENT_NODE}function b(t){return"static"!==t.css("position")}function w(t){return"none"!==t.css("float")}function _(t){var e=this;return function(){return!t.apply(e,arguments)}}function x(t){return t.node.nodeType===Node.ELEMENT_NODE}function o(t){return!0===t.isPseudoElement}function C(t){return t.node.nodeType===Node.TEXT_NODE}function k(t){return parseInt(t,10)}function S(t){return t.width}function O(t){return t.node.nodeType!==Node.ELEMENT_NODE||-1===["SCRIPT","HEAD","TITLE","OBJECT","BR","OPTION"].indexOf(t.node.nodeName)}function E(t){return[].concat.apply([],t)}var T=t("./log"),A=t("punycode"),I=t("./nodecontainer"),j=t("./textcontainer"),P=t("./pseudoelementcontainer"),D=t("./fontmetrics"),N=t("./color"),R=t("./stackingcontext"),t=t("./utils"),M=t.bind,W=t.getBounds,L=t.parseBackgrounds,F=t.offsetBounds;n.prototype.calculateOverflowClips=function(){this.nodes.forEach(function(t){var e,n;x(t)?(o(t)&&t.appendToDOM(),t.borders=this.parseBorders(t),e="hidden"===t.css("overflow")?[t.borders.clip]:[],(n=t.parseClip())&&-1!==["absolute","fixed"].indexOf(t.css("position"))&&e.push([["rect",t.bounds.left+n.left,t.bounds.top+n.top,n.right-n.left,n.bottom-n.top]]),t.clip=r(t)?t.parent.clip.concat(e):e,t.backgroundClip="hidden"!==t.css("overflow")?t.clip.concat([t.borders.clip]):t.clip,o(t)&&t.cleanDOM()):C(t)&&(t.clip=r(t)?t.parent.clip:[]),o(t)||(t.bounds=null)},this)},n.prototype.asyncRenderer=function(t,e,n){n=n||Date.now(),this.paint(t[this.renderIndex++]),t.length===this.renderIndex?e():n+20>Date.now()?this.asyncRenderer(t,e,n):setTimeout(M(function(){this.asyncRenderer(t,e)},this),0)},n.prototype.createPseudoHideStyles=function(t){this.createStyles(t,"."+P.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE+':before { content: "" !important; display: none !important; }.'+P.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER+':after { content: "" !important; display: none !important; }')},n.prototype.disableAnimations=function(t){this.createStyles(t,"* { -webkit-animation: none !important; -moz-animation: none !important; -o-animation: none !important; animation: none !important; -webkit-transition: none !important; -moz-transition: none !important; -o-transition: none !important; transition: none !important;}")},n.prototype.createStyles=function(t,e){var n=t.createElement("style");n.innerHTML=e,t.body.appendChild(n)},n.prototype.getPseudoElements=function(t){var e,n=[[t]];return t.node.nodeType===Node.ELEMENT_NODE&&(e=this.getPseudoElement(t,":before"),t=this.getPseudoElement(t,":after"),e&&n.push(e),t&&n.push(t)),E(n)},n.prototype.getPseudoElement=function(t,e){var n=t.computedStyle(e);if(!n||!n.content||"none"===n.content||"-moz-alt-content"===n.content||"none"===n.display)return null;for(var r,i=(r=n.content,(i=r.substr(0,1))===r.substr(r.length-1)&&i.match(/'|"/)?r.substr(1,r.length-2):r),r="url"===i.substr(0,3),o=document.createElement(r?"img":"html2canvaspseudoelement"),e=new P(o,t,e),s=n.length-1;0<=s;s--){var a=n.item(s).replace(/(\-[a-z])/g,function(t){return t.toUpperCase().replace("-","")});o.style[a]=n[a]}if(o.className=P.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE+" "+P.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER,r)return o.src=L(i)[0].args[0],[e];var i=document.createTextNode(i);return o.appendChild(i),[e,new j(i,e)]},n.prototype.getChildren=function(n){return E([].filter.call(n.node.childNodes,i).map(function(t){var e=[new(t.nodeType===Node.TEXT_NODE?j:I)(t,n)].filter(O);return t.nodeType===Node.ELEMENT_NODE&&e.length&&"TEXTAREA"!==t.tagName?e[0].isElementVisible()?e.concat(this.getChildren(e[0])):[]:e},this))},n.prototype.newStackingContext=function(t,e){var n=new R(e,t.getOpacity(),t.node,t.parent);t.cloneTo(n),(e?n.getParentStack(this):n.parent.stack).contexts.push(n),t.stack=n},n.prototype.createStackingContexts=function(){this.nodes.forEach(function(t){var e,n;x(t)&&(this.isRootElement(t)||t.getOpacity()<1||(n=(e=t).css("position"),"auto"!==(-1!==["absolute","relative","fixed"].indexOf(n)?e.css("zIndex"):"auto"))||this.isBodyWithTransparentRoot(t)||t.hasTransform())?this.newStackingContext(t,!0):x(t)&&(b(t)&&d(t)||-1!==["inline-block","inline-table"].indexOf(t.css("display"))||w(t))?this.newStackingContext(t,!1):t.assignStack(t.parent.stack)},this)},n.prototype.isBodyWithTransparentRoot=function(t){return"BODY"===t.node.nodeName&&t.parent.color("backgroundColor").isTransparent()},n.prototype.isRootElement=function(t){return null===t.parent},n.prototype.sortStackingContexts=function(t){var n;t.contexts.sort((n=t.contexts.slice(0),function(t,e){return t.cssInt("zIndex")+n.indexOf(t)/n.length-(e.cssInt("zIndex")+n.indexOf(e)/n.length)})),t.contexts.forEach(this.sortStackingContexts,this)},n.prototype.parseTextBounds=function(i){return function(t,e,n){if("none"!==i.parent.css("textDecoration").substr(0,4)||0!==t.trim().length){if(this.support.rangeBounds&&!i.parent.hasTransform()){var r=n.slice(0,e).join("").length;return this.getRangeBounds(i.node,r,t.length)}if(i.node&&"string"==typeof i.node.data){e=i.node.splitText(t.length),r=this.getWrapperBounds(i.node,i.parent.hasTransform());return i.node=e,r}}else this.support.rangeBounds&&!i.parent.hasTransform()||(i.node=i.node.splitText(t.length));return{}}},n.prototype.getWrapperBounds=function(t,e){var n=t.ownerDocument.createElement("html2canvaswrapper"),r=t.parentNode,i=t.cloneNode(!0);n.appendChild(t.cloneNode(!0)),r.replaceChild(n,t);e=(e?F:W)(n);return r.replaceChild(i,n),e},n.prototype.getRangeBounds=function(t,e,n){var r=this.range||(this.range=t.ownerDocument.createRange());return r.setStart(t,e),r.setEnd(t,e+n),r.getBoundingClientRect()},n.prototype.parse=function(t){var e=t.contexts.filter(f),n=t.children.filter(x),r=n.filter(_(w)),i=r.filter(_(b)).filter(_(g)),o=n.filter(_(b)).filter(w),s=r.filter(_(b)).filter(g),n=t.contexts.concat(r.filter(b)).filter(d),r=t.children.filter(C).filter(y),t=t.contexts.filter(p);e.concat(i).concat(o).concat(s).concat(n).concat(r).concat(t).forEach(function(t){this.renderQueue.push(t),m(t)&&(this.parse(t),this.renderQueue.push(new a))},this)},n.prototype.paint=function(t){try{t instanceof a?this.renderer.ctx.restore():C(t)?(o(t.parent)&&t.parent.appendToDOM(),this.paintText(t),o(t.parent)&&t.parent.cleanDOM()):this.paintNode(t)}catch(t){if(T(t),this.options.strict)throw t}},n.prototype.paintNode=function(t){m(t)&&(this.renderer.setOpacity(t.opacity),this.renderer.ctx.save(),t.hasTransform()&&this.renderer.setTransform(t.parseTransform())),"INPUT"===t.node.nodeName&&"checkbox"===t.node.type?this.paintCheckbox(t):"INPUT"===t.node.nodeName&&"radio"===t.node.type?this.paintRadio(t):this.paintElement(t)},n.prototype.paintElement=function(e){var n=e.parseBounds();this.renderer.clip(e.backgroundClip,function(){this.renderer.renderBackground(e,n,e.borders.borders.map(S))},this),this.renderer.clip(e.clip,function(){this.renderer.renderBorders(e.borders.borders)},this),this.renderer.clip(e.backgroundClip,function(){switch(e.node.nodeName){case"svg":case"IFRAME":var t=this.images.get(e.node);t?this.renderer.renderImage(e,n,e.borders,t):T("Error loading <"+e.node.nodeName+">",e.node);break;case"IMG":t=this.images.get(e.node.src);t?this.renderer.renderImage(e,n,e.borders,t):T("Error loading <img>",e.node.src);break;case"CANVAS":this.renderer.renderImage(e,n,e.borders,{image:e.node});break;case"SELECT":case"INPUT":case"TEXTAREA":this.paintFormValue(e)}},this)},n.prototype.paintCheckbox=function(t){var e=t.parseBounds(),n=Math.min(e.width,e.height),r={width:n-1,height:n-1,top:e.top,left:e.left},e=[3,3],i=[e,e,e,e],o=[1,1,1,1].map(function(t){return{color:new N("#A5A5A5"),width:t}}),s=c(r,i,o);this.renderer.clip(t.backgroundClip,function(){this.renderer.rectangle(r.left+1,r.top+1,r.width-2,r.height-2,new N("#DEDEDE")),this.renderer.renderBorders(u(o,r,s,i)),t.node.checked&&(this.renderer.font(new N("#424242"),"normal","normal","bold",n-3+"px","arial"),this.renderer.text("✔",r.left+n/6,r.top+n-1))},this)},n.prototype.paintRadio=function(t){var e=t.parseBounds(),n=Math.min(e.width,e.height)-2;this.renderer.clip(t.backgroundClip,function(){this.renderer.circleStroke(e.left+1,e.top+1,n,new N("#DEDEDE"),1,new N("#A5A5A5")),t.node.checked&&this.renderer.circle(Math.ceil(e.left+n/4)+1,Math.ceil(e.top+n/4)+1,Math.floor(n/2),new N("#424242"))},this)},n.prototype.paintFormValue=function(e){var t,n,r,i=e.getValue();0<i.length&&(t=e.node.ownerDocument,n=t.createElement("html2canvaswrapper"),["lineHeight","textAlign","fontFamily","fontWeight","fontSize","color","paddingLeft","paddingTop","paddingRight","paddingBottom","width","height","borderLeftStyle","borderTopStyle","borderLeftWidth","borderTopWidth","boxSizing","whiteSpace","wordWrap"].forEach(function(t){try{n.style[t]=e.css(t)}catch(t){T("html2canvas: Parse: Exception caught in renderFormValue: "+t.message)}}),r=e.parseBounds(),n.style.position="fixed",n.style.left=r.left+"px",n.style.top=r.top+"px",n.textContent=i,t.body.appendChild(n),this.paintText(new j(n.firstChild,e)),t.body.removeChild(n))},n.prototype.paintText=function(n){n.applyTextTransform();var t=A.ucs2.decode(n.node.data),r=this.options.letterRendering&&!/^(normal|none|0px)$/.test(n.parent.css("letterSpacing"))||/[^\u0000-\u00ff]/.test(n.node.data)?t.map(function(t){return A.ucs2.encode([t])}):function(t){for(var e,n=[],r=0,i=!1;t.length;)-1!==[32,13,10,9,45].indexOf(t[r])===i?((e=t.splice(0,r)).length&&n.push(A.ucs2.encode(e)),i=!i,r=0):r++,r>=t.length&&((e=t.splice(0,r)).length&&n.push(A.ucs2.encode(e)));return n}(t),e=n.parent.fontWeight(),i=n.parent.css("fontSize"),o=n.parent.css("fontFamily"),t=n.parent.parseTextShadows();this.renderer.font(n.parent.color("color"),n.parent.css("fontStyle"),n.parent.css("fontVariant"),e,i,o),t.length?this.renderer.fontShadow(t[0].color,t[0].offsetX,t[0].offsetY,t[0].blur):this.renderer.clearShadow(),this.renderer.clip(n.parent.clip,function(){r.map(this.parseTextBounds(n),this).forEach(function(t,e){t&&(this.renderer.text(r[e],t.left,t.bottom),this.renderTextDecoration(n.parent,t,this.fontMetrics.getMetrics(o,i)))},this)},this)},n.prototype.renderTextDecoration=function(t,e,n){switch(t.css("textDecoration").split(" ")[0]){case"underline":this.renderer.rectangle(e.left,Math.round(e.top+n.baseline+n.lineWidth),e.width,1,t.color("color"));break;case"overline":this.renderer.rectangle(e.left,Math.round(e.top),e.width,1,t.color("color"));break;case"line-through":this.renderer.rectangle(e.left,Math.ceil(e.top+n.middle+n.lineWidth),e.width,1,t.color("color"))}};var H={inset:[["darken",.6],["darken",.1],["darken",.1],["darken",.6]]};n.prototype.parseBorders=function(i){var e,t=i.parseBounds(),n=(e=i,["TopLeft","TopRight","BottomRight","BottomLeft"].map(function(t){t=e.css("border"+t+"Radius").split(" ");return t.length<=1&&(t[1]=t[0]),t.map(k)})),r=["Top","Right","Bottom","Left"].map(function(t,e){var n=i.css("border"+t+"Style"),r=i.color("border"+t+"Color");"inset"===n&&r.isBlack()&&(r=new N([255,255,255,r.a]));e=H[n]?H[n][e]:null;return{width:i.cssInt("border"+t+"Width"),color:e?r[e[0]](e[1]):r,args:null}}),o=c(t,n,r);return{clip:this.parseBackgroundClip(i,o,r,n,t),borders:u(r,t,o,n)}},n.prototype.parseBackgroundClip=function(t,e,n,r,i){var o=[];switch(t.css("backgroundClip")){case"content-box":case"padding-box":s(o,r[0],r[1],e.topLeftInner,e.topRightInner,i.left+n[3].width,i.top+n[0].width),s(o,r[1],r[2],e.topRightInner,e.bottomRightInner,i.left+i.width-n[1].width,i.top+n[0].width),s(o,r[2],r[3],e.bottomRightInner,e.bottomLeftInner,i.left+i.width-n[1].width,i.top+i.height-n[2].width),s(o,r[3],r[0],e.bottomLeftInner,e.topLeftInner,i.left+n[3].width,i.top+i.height-n[2].width);break;default:s(o,r[0],r[1],e.topLeftOuter,e.topRightOuter,i.left,i.top),s(o,r[1],r[2],e.topRightOuter,e.bottomRightOuter,i.left+i.width,i.top),s(o,r[2],r[3],e.bottomRightOuter,e.bottomLeftOuter,i.left+i.width,i.top+i.height),s(o,r[3],r[0],e.bottomLeftOuter,e.topLeftOuter,i.left,i.top+i.height)}return o},e.exports=n},{"./color":3,"./fontmetrics":7,"./log":13,"./nodecontainer":14,"./pseudoelementcontainer":18,"./stackingcontext":21,"./textcontainer":25,"./utils":26,punycode:1}],16:[function(t,e,n){function a(t,e,n){var r="withCredentials"in new XMLHttpRequest;if(!e)return Promise.reject("No proxy configured");var i=s(r),t=u(e,t,i);return r?c(t):o(n,t,i).then(function(t){return f(t.content)})}function o(i,o,s){return new Promise(function(e,n){function r(){delete window.html2canvas.proxy[s],i.body.removeChild(t)}var t=i.createElement("script");window.html2canvas.proxy[s]=function(t){r(),e(t)},t.src=o,t.onerror=function(t){r(),n(t)},i.body.appendChild(t)})}function s(t){return t?"":"html2canvas_"+Date.now()+"_"+ ++i+"_"+Math.round(1e5*Math.random())}function u(t,e,n){return t+"?url="+encodeURIComponent(e)+(n.length?"&callback=html2canvas.proxy."+n:"")}var c=t("./xhr"),r=t("./utils"),l=t("./log"),h=t("./clone"),f=r.decode64,i=0;n.Proxy=a,n.ProxyURL=function(t,e,n){var r="crossOrigin"in new Image,i=s(r),t=u(e,t,i);return r?Promise.resolve(t):o(n,t,i).then(function(t){return"data:"+t.type+";base64,"+t.content})},n.loadUrlDocument=function(t,e,n,r,i,o){return new a(t,e,window.document).then((s=t,function(e){var n,t=new DOMParser;try{n=t.parseFromString(e,"text/html")}catch(t){l("DOMParser not supported, falling back to createHTMLDocument"),n=document.implementation.createHTMLDocument("");try{n.open(),n.write(e),n.close()}catch(t){l("createHTMLDocument write not supported, falling back to document.body.innerHTML"),n.body.innerHTML=e}}e=n.querySelector("base");return e&&e.href.host||((e=n.createElement("base")).href=s,n.head.insertBefore(e,n.head.firstChild)),n})).then(function(t){return h(t,n,r,i,o,0,0)});var s}},{"./clone":2,"./log":13,"./utils":26,"./xhr":28}],17:[function(t,e){var o=t("./proxy").ProxyURL;e.exports=function(n,r){var t=document.createElement("a");t.href=n,n=t.href,this.src=n,this.image=new Image;var i=this;this.promise=new Promise(function(t,e){i.image.crossOrigin="Anonymous",i.image.onload=t,i.image.onerror=e,new o(n,r,document).then(function(t){i.image.src=t}).catch(e)})}},{"./proxy":16}],18:[function(t,e){function n(t,e,n){r.call(this,t,e),this.isPseudoElement=!0,this.before=":before"===n}var r=t("./nodecontainer");n.prototype.cloneTo=function(t){n.prototype.cloneTo.call(this,t),t.isPseudoElement=!0,t.before=this.before},(n.prototype=Object.create(r.prototype)).appendToDOM=function(){this.before?this.parent.node.insertBefore(this.node,this.parent.node.firstChild):this.parent.node.appendChild(this.node),this.parent.node.className+=" "+this.getHideClass()},n.prototype.cleanDOM=function(){this.node.parentNode.removeChild(this.node),this.parent.node.className=this.parent.node.className.replace(this.getHideClass(),"")},n.prototype.getHideClass=function(){return this["PSEUDO_HIDE_ELEMENT_CLASS_"+(this.before?"BEFORE":"AFTER")]},n.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE="___html2canvas___pseudoelement_before",n.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER="___html2canvas___pseudoelement_after",e.exports=n},{"./nodecontainer":14}],19:[function(t,e){function n(t,e,n,r,i){this.width=t,this.height=e,this.images=n,this.options=r,this.document=i}var a=t("./log");n.prototype.renderImage=function(t,e,n,r){var i=t.cssInt("paddingLeft"),o=t.cssInt("paddingTop"),s=t.cssInt("paddingRight"),t=t.cssInt("paddingBottom"),n=n.borders,s=e.width-(n[1].width+n[3].width+i+s),t=e.height-(n[0].width+n[2].width+o+t);this.drawImage(r,0,0,r.image.width||s,r.image.height||t,e.left+i+n[3].width,e.top+o+n[0].width,s,t)},n.prototype.renderBackground=function(t,e,n){0<e.height&&0<e.width&&(this.renderBackgroundColor(t,e),this.renderBackgroundImage(t,e,n))},n.prototype.renderBackgroundColor=function(t,e){t=t.color("backgroundColor");t.isTransparent()||this.rectangle(e.left,e.top,e.width,e.height,t)},n.prototype.renderBorders=function(t){t.forEach(this.renderBorder,this)},n.prototype.renderBorder=function(t){t.color.isTransparent()||null===t.args||this.drawShape(t.args,t.color)},n.prototype.renderBackgroundImage=function(i,o,s){i.parseBackgroundImages().reverse().forEach(function(t,e,n){switch(t.method){case"url":var r=this.images.get(t.args[0]);r?this.renderBackgroundRepeating(i,o,r,n.length-(e+1),s):a("Error loading background-image",t.args[0]);break;case"linear-gradient":case"gradient":r=this.images.get(t.value);r?this.renderBackgroundGradient(r,o,s):a("Error loading background-image",t.args[0]);break;case"none":break;default:a("Unknown background-image type",t.args[0])}},this)},n.prototype.renderBackgroundRepeating=function(t,e,n,r,i){var o=t.parseBackgroundSize(e,n.image,r),s=t.parseBackgroundPosition(e,n.image,r,o);switch(t.parseBackgroundRepeat(r)){case"repeat-x":case"repeat no-repeat":this.backgroundRepeatShape(n,s,o,e,e.left+i[3],e.top+s.top+i[0],99999,o.height,i);break;case"repeat-y":case"no-repeat repeat":this.backgroundRepeatShape(n,s,o,e,e.left+s.left+i[3],e.top+i[0],o.width,99999,i);break;case"no-repeat":this.backgroundRepeatShape(n,s,o,e,e.left+s.left+i[3],e.top+s.top+i[0],o.width,o.height,i);break;default:this.renderBackgroundRepeat(n,s,o,{top:e.top,left:e.left},i[3],i[0])}},e.exports=n},{"./log":13}],20:[function(t,e){function n(t,e){i.apply(this,arguments),this.canvas=this.options.canvas||this.document.createElement("canvas"),this.options.canvas||(this.canvas.width=t,this.canvas.height=e),this.ctx=this.canvas.getContext("2d"),this.taintCtx=this.document.createElement("canvas").getContext("2d"),this.ctx.textBaseline="bottom",this.variables={},s("Initialized CanvasRenderer with size",t,"x",e)}function r(t){return 0<t.length}var i=t("../renderer"),o=t("../lineargradientcontainer"),s=t("../log");(n.prototype=Object.create(i.prototype)).setFillStyle=function(t){return this.ctx.fillStyle="object"==typeof t&&t.isColor?t.toString():t,this.ctx},n.prototype.rectangle=function(t,e,n,r,i){this.setFillStyle(i).fillRect(t,e,n,r)},n.prototype.circle=function(t,e,n,r){this.setFillStyle(r),this.ctx.beginPath(),this.ctx.arc(t+n/2,e+n/2,n/2,0,2*Math.PI,!0),this.ctx.closePath(),this.ctx.fill()},n.prototype.circleStroke=function(t,e,n,r,i,o){this.circle(t,e,n,r),this.ctx.strokeStyle=o.toString(),this.ctx.stroke()},n.prototype.drawShape=function(t,e){this.shape(t),this.setFillStyle(e).fill()},n.prototype.taints=function(e){if(null===e.tainted){this.taintCtx.drawImage(e.image,0,0);try{this.taintCtx.getImageData(0,0,1,1),e.tainted=!1}catch(t){this.taintCtx=document.createElement("canvas").getContext("2d"),e.tainted=!0}}return e.tainted},n.prototype.drawImage=function(t,e,n,r,i,o,s,a,u){this.taints(t)&&!this.options.allowTaint||this.ctx.drawImage(t.image,e,n,r,i,o,s,a,u)},n.prototype.clip=function(t,e,n){this.ctx.save(),t.filter(r).forEach(function(t){this.shape(t).clip()},this),e.call(n),this.ctx.restore()},n.prototype.shape=function(t){return this.ctx.beginPath(),t.forEach(function(t,e){("rect"===t[0]?this.ctx.rect:this.ctx[0===e?"moveTo":t[0]+"To"]).apply(this.ctx,t.slice(1))},this),this.ctx.closePath(),this.ctx},n.prototype.font=function(t,e,n,r,i,o){this.setFillStyle(t).font=[e,n,r,i,o].join(" ").split(",")[0]},n.prototype.fontShadow=function(t,e,n,r){this.setVariable("shadowColor",t.toString()).setVariable("shadowOffsetY",e).setVariable("shadowOffsetX",n).setVariable("shadowBlur",r)},n.prototype.clearShadow=function(){this.setVariable("shadowColor","rgba(0,0,0,0)")},n.prototype.setOpacity=function(t){this.ctx.globalAlpha=t},n.prototype.setTransform=function(t){this.ctx.translate(t.origin[0],t.origin[1]),this.ctx.transform.apply(this.ctx,t.matrix),this.ctx.translate(-t.origin[0],-t.origin[1])},n.prototype.setVariable=function(t,e){return this.variables[t]!==e&&(this.variables[t]=this.ctx[t]=e),this},n.prototype.text=function(t,e,n){this.ctx.fillText(t,e,n)},n.prototype.backgroundRepeatShape=function(t,e,n,r,i,o,s,a,u){o=[["line",Math.round(i),Math.round(o)],["line",Math.round(i+s),Math.round(o)],["line",Math.round(i+s),Math.round(a+o)],["line",Math.round(i),Math.round(a+o)]];this.clip([o],function(){this.renderBackgroundRepeat(t,e,n,r,u[3],u[0])},this)},n.prototype.renderBackgroundRepeat=function(t,e,n,r,i,o){i=Math.round(r.left+e.left+i),o=Math.round(r.top+e.top+o);this.setFillStyle(this.ctx.createPattern(this.resizeImage(t,n),"repeat")),this.ctx.translate(i,o),this.ctx.fill(),this.ctx.translate(-i,-o)},n.prototype.renderBackgroundGradient=function(t,e){var n;t instanceof o&&(n=this.ctx.createLinearGradient(e.left+e.width*t.x0,e.top+e.height*t.y0,e.left+e.width*t.x1,e.top+e.height*t.y1),t.colorStops.forEach(function(t){n.addColorStop(t.stop,t.color.toString())}),this.rectangle(e.left,e.top,e.width,e.height,n))},n.prototype.resizeImage=function(t,e){var n=t.image;if(n.width===e.width&&n.height===e.height)return n;t=document.createElement("canvas");return t.width=e.width,t.height=e.height,t.getContext("2d").drawImage(n,0,0,n.width,n.height,0,0,e.width,e.height),t},e.exports=n},{"../lineargradientcontainer":12,"../log":13,"../renderer":19}],21:[function(t,e){function n(t,e,n,r){i.call(this,n,r),this.ownStacking=t,this.contexts=[],this.children=[],this.opacity=(this.parent?this.parent.stack.opacity:1)*e}var i=t("./nodecontainer");(n.prototype=Object.create(i.prototype)).getParentStack=function(t){var e=this.parent?this.parent.stack:null;return e?e.ownStacking?e:e.getParentStack(t):t.stack},e.exports=n},{"./nodecontainer":14}],22:[function(t,e){function n(t){this.rangeBounds=this.testRangeBounds(t),this.cors=this.testCORS(),this.svg=this.testSVG()}n.prototype.testRangeBounds=function(t){var e,n,r=!1;return t.createRange&&((e=t.createRange()).getBoundingClientRect&&((n=t.createElement("boundtest")).style.height="123px",n.style.display="block",t.body.appendChild(n),e.selectNode(n),123===e.getBoundingClientRect().height&&(r=!0),t.body.removeChild(n))),r},n.prototype.testCORS=function(){return void 0!==(new Image).crossOrigin},n.prototype.testSVG=function(){var t=new Image,e=document.createElement("canvas"),n=e.getContext("2d");t.src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";try{n.drawImage(t,0,0),e.toDataURL()}catch(t){return!1}return!0},e.exports=n},{}],23:[function(t,e){function n(t){this.src=t,this.image=null;var n=this;this.promise=this.hasFabric().then(function(){return n.isInline(t)?Promise.resolve(n.inlineFormatting(t)):r(t)}).then(function(e){return new Promise(function(t){window.html2canvas.svg.fabric.loadSVGFromString(e,n.createCanvas.call(n,t))})})}var r=t("./xhr"),i=t("./utils").decode64;n.prototype.hasFabric=function(){return window.html2canvas.svg&&window.html2canvas.svg.fabric?Promise.resolve():Promise.reject(new Error("html2canvas.svg.js is not loaded, cannot render svg"))},n.prototype.inlineFormatting=function(t){return/^data:image\/svg\+xml;base64,/.test(t)?this.decode64(this.removeContentType(t)):this.removeContentType(t)},n.prototype.removeContentType=function(t){return t.replace(/^data:image\/svg\+xml(;base64)?,/,"")},n.prototype.isInline=function(t){return/^data:image\/svg\+xml/i.test(t)},n.prototype.createCanvas=function(r){var i=this;return function(t,e){var n=new window.html2canvas.svg.fabric.StaticCanvas("c");i.image=n.lowerCanvasEl,n.setWidth(e.width).setHeight(e.height).add(window.html2canvas.svg.fabric.util.groupSVGElements(t,e)).renderAll(),r(n.lowerCanvasEl)}},n.prototype.decode64=function(t){return"function"==typeof window.atob?window.atob(t):i(t)},e.exports=n},{"./utils":26,"./xhr":28}],24:[function(t,e){function n(n,t){this.src=n,this.image=null;var r=this;this.promise=t?new Promise(function(t,e){r.image=new Image,r.image.onload=t,r.image.onerror=e,r.image.src="data:image/svg+xml,"+(new XMLSerializer).serializeToString(n),!0===r.image.complete&&t(r.image)}):this.hasFabric().then(function(){return new Promise(function(t){window.html2canvas.svg.fabric.parseSVGDocument(n,r.createCanvas.call(r,t))})})}t=t("./svgcontainer");n.prototype=Object.create(t.prototype),e.exports=n},{"./svgcontainer":23}],25:[function(t,e){function n(t,e){i.call(this,t,e)}function r(t,e,n){return 0<t.length?e+n.toUpperCase():void 0}var i=t("./nodecontainer");(n.prototype=Object.create(i.prototype)).applyTextTransform=function(){this.node.data=this.transform(this.parent.css("textTransform"))},n.prototype.transform=function(t){var e=this.node.data;switch(t){case"lowercase":return e.toLowerCase();case"capitalize":return e.replace(/(^|\s|:|-|\(|\))([a-z])/g,r);case"uppercase":return e.toUpperCase();default:return e}},e.exports=n},{"./nodecontainer":14}],26:[function(t,e,n){n.smallImage=function(){return"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"},n.bind=function(t,e){return function(){return t.apply(e,arguments)}},n.decode64=function(t){for(var e,n,r,i,o,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=t.length,u="",c=0;c<a;c+=4)r=s.indexOf(t[c])<<2|(o=s.indexOf(t[c+1]))>>4,i=(15&o)<<4|(e=s.indexOf(t[c+2]))>>2,o=(3&e)<<6|(n=s.indexOf(t[c+3])),u+=64===e?String.fromCharCode(r):64===n||-1===n?String.fromCharCode(r,i):String.fromCharCode(r,i,o);return u},n.getBounds=function(t){if(t.getBoundingClientRect){var e=t.getBoundingClientRect(),n=null==t.offsetWidth?e.width:t.offsetWidth;return{top:e.top,bottom:e.bottom||e.top+e.height,right:e.left+n,left:e.left,width:n,height:null==t.offsetHeight?e.height:t.offsetHeight}}return{}},n.offsetBounds=function(t){var e=t.offsetParent?n.offsetBounds(t.offsetParent):{top:0,left:0};return{top:t.offsetTop+e.top,bottom:t.offsetTop+t.offsetHeight+e.top,right:t.offsetLeft+e.left+t.offsetWidth,left:t.offsetLeft+e.left,width:t.offsetWidth,height:t.offsetHeight}},n.parseBackgrounds=function(t){function e(){h&&((n='"'===n.substr(0,1)?n.substr(1,n.length-2):n)&&l.push(n),"-"===h.substr(0,1)&&0<(i=h.indexOf("-",1)+1)&&(r=h.substr(0,i),h=h.substr(i)),a.push({prefix:r,method:h.toLowerCase(),value:o,args:l,image:null})),l=[],h=r=n=o=""}var n,r,i,o,s,a=[],u=0,c=0,l=[],h=r=n=o="";return t.split("").forEach(function(t){if(!(0===u&&-1<" \r\n\t".indexOf(t))){switch(t){case'"':s?s===t&&(s=null):s=t;break;case"(":if(s)break;if(0===u)return u=1,void(o+=t);c++;break;case")":if(s)break;if(1===u){if(0===c)return u=0,o+=t,void e();c--}break;case",":if(s)break;if(0===u)return void e();if(1===u&&0===c&&!h.match(/^url$/i))return l.push(n),n="",void(o+=t)}o+=t,0===u?h+=t:n+=t}}),e(),a}},{}],27:[function(t,e){function n(t){r.apply(this,arguments),this.type="linear"===t.args[0]?r.TYPES.LINEAR:r.TYPES.RADIAL}var r=t("./gradientcontainer");n.prototype=Object.create(r.prototype),e.exports=n},{"./gradientcontainer":9}],28:[function(t,e){e.exports=function(r){return new Promise(function(t,e){var n=new XMLHttpRequest;n.open("GET",r),n.onload=function(){200===n.status?t(n.responseText):e(new Error(n.statusText))},n.onerror=function(){e(new Error("Network Error"))},n.send()})}},{}]},{},[4])(4)}),function(t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).localforage=t()}(function(){return function r(i,o,s){function a(e,t){if(!o[e]){if(!i[e]){var n="function"==typeof require&&require;if(!t&&n)return n(e,!0);if(u)return u(e,!0);n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n=o[e]={exports:{}};i[e][0].call(n.exports,function(t){return a(i[e][1][t]||t)},n,n.exports,r,i,o,s)}return o[e].exports}for(var u="function"==typeof require&&require,t=0;t<s.length;t++)a(s[t]);return a}({1:[function(t,c,e){!function(e){"use strict";function n(){o=!0;for(var t,e,n=u.length;n;){for(e=u,u=[],t=-1;++t<n;)e[t]();n=u.length}o=!1}var t,r,i,o,s=e.MutationObserver||e.WebKitMutationObserver,a=s?(t=0,s=new s(n),r=e.document.createTextNode(""),s.observe(r,{characterData:!0}),function(){r.data=t=++t%2}):e.setImmediate||void 0===e.MessageChannel?"document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){n(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(n,0)}:((i=new e.MessageChannel).port1.onmessage=n,function(){i.port2.postMessage(0)}),u=[];c.exports=function(t){1!==u.push(t)||o||a()}}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(t,e,n){"use strict";function c(){}function r(t){if("function"!=typeof t)throw new TypeError("resolver must be a function");this.state=d,this.queue=[],this.outcome=void 0,t!==c&&a(this,t)}function i(t,e,n){this.promise=t,"function"==typeof e&&(this.onFulfilled=e,this.callFulfilled=this.otherCallFulfilled),"function"==typeof n&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}function o(e,n,r){l(function(){var t;try{t=n(r)}catch(t){return h.reject(e,t)}t===e?h.reject(e,new TypeError("Cannot resolve promise with itself")):h.resolve(e,t)})}function s(t){var e=t&&t.then;if(t&&("object"==typeof t||"function"==typeof t)&&"function"==typeof e)return function(){e.apply(t,arguments)}}function a(e,t){function n(t){i||(i=!0,h.reject(e,t))}function r(t){i||(i=!0,h.resolve(e,t))}var i=!1,o=u(function(){t(r,n)});"error"===o.status&&n(o.value)}function u(t,e){var n={};try{n.value=t(e),n.status="success"}catch(t){n.status="error",n.value=t}return n}var l=t(1),h={},f=["REJECTED"],p=["FULFILLED"],d=["PENDING"];(e.exports=r).prototype.catch=function(t){return this.then(null,t)},r.prototype.then=function(t,e){if("function"!=typeof t&&this.state===p||"function"!=typeof e&&this.state===f)return this;var n=new this.constructor(c);return this.state!==d?o(n,this.state===p?t:e,this.outcome):this.queue.push(new i(n,t,e)),n},i.prototype.callFulfilled=function(t){h.resolve(this.promise,t)},i.prototype.otherCallFulfilled=function(t){o(this.promise,this.onFulfilled,t)},i.prototype.callRejected=function(t){h.reject(this.promise,t)},i.prototype.otherCallRejected=function(t){o(this.promise,this.onRejected,t)},h.resolve=function(t,e){var n=u(s,e);if("error"===n.status)return h.reject(t,n.value);n=n.value;if(n)a(t,n);else{t.state=p,t.outcome=e;for(var r=-1,i=t.queue.length;++r<i;)t.queue[r].callFulfilled(e)}return t},h.reject=function(t,e){t.state=f,t.outcome=e;for(var n=-1,r=t.queue.length;++n<r;)t.queue[n].callRejected(e);return t},r.resolve=function(t){return t instanceof this?t:h.resolve(new this(c),t)},r.reject=function(t){var e=new this(c);return h.reject(e,t)},r.all=function(t){function e(t,e){n.resolve(t).then(function(t){o[e]=t,++s!==r||i||(i=!0,h.resolve(u,o))},function(t){i||(i=!0,h.reject(u,t))})}var n=this;if("[object Array]"!==Object.prototype.toString.call(t))return this.reject(new TypeError("must be an array"));var r=t.length,i=!1;if(!r)return this.resolve([]);for(var o=new Array(r),s=0,a=-1,u=new this(c);++a<r;)e(t[a],a);return u},r.race=function(t){var e=this;if("[object Array]"!==Object.prototype.toString.call(t))return this.reject(new TypeError("must be an array"));var n=t.length,r=!1;if(!n)return this.resolve([]);for(var i,o=-1,s=new this(c);++o<n;)i=t[o],e.resolve(i).then(function(t){r||(r=!0,h.resolve(s,t))},function(t){r||(r=!0,h.reject(s,t))});return s}},{1:1}],3:[function(e,t,n){!function(t){"use strict";"function"!=typeof t.Promise&&(t.Promise=e(2))}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{2:2}],4:[function(t,e,n){"use strict";function o(e,n){e=e||[],n=n||{};try{return new Blob(e,n)}catch(t){if("TypeError"!==t.name)throw t;for(var r=new("undefined"!=typeof BlobBuilder?BlobBuilder:"undefined"!=typeof MSBlobBuilder?MSBlobBuilder:"undefined"!=typeof MozBlobBuilder?MozBlobBuilder:WebKitBlobBuilder),i=0;i<e.length;i+=1)r.append(e[i]);return r.getBlob(n.type)}}function l(t,e){e&&t.then(function(t){e(null,t)},function(t){e(t)})}function u(t,e,n){"function"==typeof e&&t.then(e),"function"==typeof n&&t.catch(n)}function h(t){return t="string"!=typeof t?String(t):t}function a(){if(arguments.length&&"function"==typeof arguments[arguments.length-1])return arguments[arguments.length-1]}function r(t){return"boolean"==typeof N?P.resolve(N):(r=t,new P(function(n){var t=r.transaction(D,L),e=o([""]);t.objectStore(D).put(e,"key"),t.onabort=function(t){t.preventDefault(),t.stopPropagation(),n(!1)},t.oncomplete=function(){var t=navigator.userAgent.match(/Chrome\/(\d+)/),e=navigator.userAgent.match(/Edge\//);n(e||!t||43<=parseInt(t[1],10))}}).catch(function(){return!1}).then(function(t){return N=t}));var r}function c(t){var t=R[t.name],n={};n.promise=new P(function(t,e){n.resolve=t,n.reject=e}),t.deferredOperations.push(n),t.dbReady?t.dbReady=t.dbReady.then(function(){return n.promise}):t.dbReady=n.promise}function f(t){t=R[t.name].deferredOperations.pop();return t&&(t.resolve(),t.promise)}function p(t,e){t=R[t.name].deferredOperations.pop();if(t)return t.reject(e),t.promise}function i(i,o){return new P(function(t,e){if(R[i.name]=R[i.name]||_(),i.db){if(!o)return t(i.db);c(i),i.db.close()}var n=[i.name];o&&n.push(i.version);var r=I.open.apply(I,n);o&&(r.onupgradeneeded=function(t){var e=r.result;try{e.createObjectStore(i.storeName),t.oldVersion<=1&&e.createObjectStore(D)}catch(e){if("ConstraintError"!==e.name)throw e}}),r.onerror=function(t){t.preventDefault(),e(r.error)},r.onsuccess=function(){t(r.result),f(i)}})}function d(t){return i(t,!1)}function g(t){return i(t,!0)}function m(t){if(!t.db)return 1;var e=!t.db.objectStoreNames.contains(t.storeName),n=t.version<t.db.version,r=t.version>t.db.version;return n&&(t.version,t.version=t.db.version),(r||e)&&(!e||(e=t.db.version+1)>t.version&&(t.version=e),1)}function v(t){return o([function(t){for(var e=t.length,n=new ArrayBuffer(e),r=new Uint8Array(n),i=0;i<e;i++)r[i]=t.charCodeAt(i);return n}(atob(t.data))],{type:t.type})}function y(t){return t&&t.__local_forage_encoded_blob}function b(t){var e=this,n=e._initReady().then(function(){var t=R[e._dbInfo.name];if(t&&t.dbReady)return t.dbReady});return u(n,t,t),n}function w(t,e,n,r){void 0===r&&(r=1);try{var i=t.db.transaction(t.storeName,e);n(null,i)}catch(i){if(0<r&&(!t.db||"InvalidStateError"===i.name||"NotFoundError"===i.name))return P.resolve().then(function(){if(!t.db||"NotFoundError"===i.name&&!t.db.objectStoreNames.contains(t.storeName)&&t.version<=t.db.version)return t.db&&(t.version=t.db.version+1),g(t)}).then(function(){return function(n){c(n);for(var r=R[n.name],i=r.forages,t=0;t<i.length;t++){var e=i[t];e._dbInfo.db&&(e._dbInfo.db.close(),e._dbInfo.db=null)}return n.db=null,d(n).then(function(t){return n.db=t,m(n)?g(n):t}).then(function(t){n.db=r.db=t;for(var e=0;e<i.length;e++)i[e]._dbInfo.db=t}).catch(function(t){throw p(n,t),t})}(t).then(function(){w(t,e,n,r-1)})}).catch(n);n(i)}}function _(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function s(t){var e,n,r,i,o=.75*t.length,s=t.length,a=0;"="===t[t.length-1]&&(o--,"="===t[t.length-2]&&o--);for(var o=new ArrayBuffer(o),u=new Uint8Array(o),c=0;c<s;c+=4)e=H.indexOf(t[c]),n=H.indexOf(t[c+1]),r=H.indexOf(t[c+2]),i=H.indexOf(t[c+3]),u[a++]=e<<2|n>>4,u[a++]=(15&n)<<4|r>>2,u[a++]=(3&r)<<6|63&i;return o}function x(t){for(var e=new Uint8Array(t),n="",r=0;r<e.length;r+=3)n+=H[e[r]>>2],n+=H[(3&e[r])<<4|e[r+1]>>4],n+=H[(15&e[r+1])<<2|e[r+2]>>6],n+=H[63&e[r+2]];return e.length%3==2?n=n.substring(0,n.length-1)+"=":e.length%3==1&&(n=n.substring(0,n.length-2)+"=="),n}function C(t,e,n,r){t.executeSql("CREATE TABLE IF NOT EXISTS "+e.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],n,r)}function k(t,r,i,o,s,a){t.executeSql(i,o,s,function(t,n){n.code===n.SYNTAX_ERR?t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[name],function(t,e){e.rows.length?a(t,n):C(t,r,function(){t.executeSql(i,o,s,a)},a)},a):a(t,n)},a)}function S(s,t,a,u){var c=this;s=h(s);var e=new P(function(i,o){c.ready().then(function(){var n=t=void 0===t?null:t,r=c._dbInfo;r.serializer.serialize(t,function(e,t){t?o(t):r.db.transaction(function(t){k(t,r,"INSERT OR REPLACE INTO "+r.storeName+" (key, value) VALUES (?, ?)",[s,e],function(){i(n)},function(t,e){o(e)})},function(t){t.code===t.QUOTA_ERR&&(0<u?i(S.apply(c,[s,n,a,u-1])):o(t))})})}).catch(o)});return l(e,a),e}function O(t,e){var n=t.name+"/";return t.storeName!==e.storeName&&(n+=t.storeName+"/"),n}function E(){return!function(){var t="_localforage_support_test";try{return localStorage.setItem(t,!0),localStorage.removeItem(t),0}catch(t){return 1}}()||0<localStorage.length}function T(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];if(n)for(var r in n)n.hasOwnProperty(r)&&(X(n[r])?t[r]=n[r].slice():t[r]=n[r])}return t}var A="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},I=function(){try{if("undefined"!=typeof indexedDB)return indexedDB;if("undefined"!=typeof webkitIndexedDB)return webkitIndexedDB;if("undefined"!=typeof mozIndexedDB)return mozIndexedDB;if("undefined"!=typeof OIndexedDB)return OIndexedDB;if("undefined"!=typeof msIndexedDB)return msIndexedDB}catch(t){return}}();"undefined"==typeof Promise&&t(3);function j(t,e){for(var n,r,i=t.length,o=0;o<i;){if((n=t[o])===(r=e)||"number"==typeof n&&"number"==typeof r&&isNaN(n)&&isNaN(r))return 1;o++}}var P=Promise,D="local-forage-detect-blob-support",N=void 0,R={},M=Object.prototype.toString,W="readonly",L="readwrite",F={_driver:"asyncStorage",_initStorage:function(t){function e(){return P.resolve()}var r=this,i={db:null};if(t)for(var n in t)i[n]=t[n];var o=R[i.name];o||(o=_(),R[i.name]=o),o.forages.push(r),r._initReady||(r._initReady=r.ready,r.ready=b);for(var s=[],a=0;a<o.forages.length;a++){var u=o.forages[a];u!==r&&s.push(u._initReady().catch(e))}var c=o.forages.slice(0);return P.all(s).then(function(){return i.db=o.db,d(i)}).then(function(t){return i.db=t,m(i,r._defaultConfig.version)?g(i):t}).then(function(t){i.db=o.db=t,r._dbInfo=i;for(var e=0;e<c.length;e++){var n=c[e];n!==r&&(n._dbInfo.db=i.db,n._dbInfo.version=i.version)}})},_support:function(){try{if(!I)return!1;var t="undefined"!=typeof openDatabase&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),e="function"==typeof fetch&&-1!==fetch.toString().indexOf("[native code");return(!t||e)&&"undefined"!=typeof indexedDB&&"undefined"!=typeof IDBKeyRange}catch(t){return!1}}(),iterate:function(s,t){var a=this,e=new P(function(i,o){a.ready().then(function(){w(a._dbInfo,W,function(t,e){if(t)return o(t);try{var n=e.objectStore(a._dbInfo.storeName).openCursor(),r=1;n.onsuccess=function(){var t,e=n.result;e?(y(t=e.value)&&(t=v(t)),void 0!==(t=s(t,e.key,r++))?i(t):e.continue()):i()},n.onerror=function(){o(n.error)}}catch(t){o(t)}})}).catch(o)});return l(e,t),e},getItem:function(o,t){var s=this;o=h(o);var e=new P(function(r,i){s.ready().then(function(){w(s._dbInfo,W,function(t,e){if(t)return i(t);try{var n=e.objectStore(s._dbInfo.storeName).get(o);n.onsuccess=function(){var t=n.result;y(t=void 0===t?null:t)&&(t=v(t)),r(t)},n.onerror=function(){i(n.error)}}catch(t){i(t)}})}).catch(i)});return l(e,t),e},setItem:function(a,e,t){var u=this;a=h(a);var n=new P(function(o,s){var t;u.ready().then(function(){return t=u._dbInfo,"[object Blob]"===M.call(e)?r(t.db).then(function(t){return t?e:(r=e,new P(function(e,t){var n=new FileReader;n.onerror=t,n.onloadend=function(t){t=btoa(t.target.result||"");e({__local_forage_encoded_blob:!0,data:t,type:r.type})},n.readAsBinaryString(r)}));var r}):e}).then(function(i){w(u._dbInfo,L,function(t,e){if(t)return s(t);try{var n=e.objectStore(u._dbInfo.storeName);null===i&&(i=void 0);var r=n.put(i,a);e.oncomplete=function(){o(i=void 0===i?null:i)},e.onabort=e.onerror=function(){var t=r.error||r.transaction.error;s(t)}}catch(t){s(t)}})}).catch(s)});return l(n,t),n},removeItem:function(o,t){var s=this;o=h(o);var e=new P(function(r,i){s.ready().then(function(){w(s._dbInfo,L,function(t,e){if(t)return i(t);try{var n=e.objectStore(s._dbInfo.storeName).delete(o);e.oncomplete=function(){r()},e.onerror=function(){i(n.error)},e.onabort=function(){var t=n.error||n.transaction.error;i(t)}}catch(t){i(t)}})}).catch(i)});return l(e,t),e},clear:function(t){var o=this,e=new P(function(r,i){o.ready().then(function(){w(o._dbInfo,L,function(t,e){if(t)return i(t);try{var n=e.objectStore(o._dbInfo.storeName).clear();e.oncomplete=function(){r()},e.onabort=e.onerror=function(){var t=n.error||n.transaction.error;i(t)}}catch(t){i(t)}})}).catch(i)});return l(e,t),e},length:function(t){var o=this,e=new P(function(r,i){o.ready().then(function(){w(o._dbInfo,W,function(t,e){if(t)return i(t);try{var n=e.objectStore(o._dbInfo.storeName).count();n.onsuccess=function(){r(n.result)},n.onerror=function(){i(n.error)}}catch(t){i(t)}})}).catch(i)});return l(e,t),e},key:function(a,t){var u=this,e=new P(function(o,s){a<0?o(null):u.ready().then(function(){w(u._dbInfo,W,function(t,e){if(t)return s(t);try{var n=e.objectStore(u._dbInfo.storeName),r=!1,i=n.openCursor();i.onsuccess=function(){var t=i.result;t?0===a||r?o(t.key):(r=!0,t.advance(a)):o(null)},i.onerror=function(){s(i.error)}}catch(t){s(t)}})}).catch(s)});return l(e,t),e},keys:function(t){var s=this,e=new P(function(i,o){s.ready().then(function(){w(s._dbInfo,W,function(t,e){if(t)return o(t);try{var n=e.objectStore(s._dbInfo.storeName).openCursor(),r=[];n.onsuccess=function(){var t=n.result;t?(r.push(t.key),t.continue()):i(r)},n.onerror=function(){o(n.error)}}catch(t){o(t)}})}).catch(o)});return l(e,t),e},dropInstance:function(s,t){t=a.apply(this,arguments);var e,n=this.config();return(s="function"!=typeof s&&s||{}).name||(s.name=s.name||n.name,s.storeName=s.storeName||n.storeName),l(e=s.name?(e=s.name===n.name&&this._dbInfo.db?P.resolve(this._dbInfo.db):d(s).then(function(t){var e=R[s.name],n=e.forages;e.db=t;for(var r=0;r<n.length;r++)n[r]._dbInfo.db=t;return t}),s.storeName?e.then(function(t){if(t.objectStoreNames.contains(s.storeName)){var i=t.version+1;c(s);var r=R[s.name],o=r.forages;t.close();for(var e=0;e<o.length;e++){var n=o[e];n._dbInfo.db=null,n._dbInfo.version=i}return new P(function(e,n){var r=I.open(s.name,i);r.onerror=function(t){r.result.close(),n(t)},r.onupgradeneeded=function(){r.result.deleteObjectStore(s.storeName)},r.onsuccess=function(){var t=r.result;t.close(),e(t)}}).then(function(t){r.db=t;for(var e=0;e<o.length;e++){var n=o[e];n._dbInfo.db=t,f(n._dbInfo)}}).catch(function(t){throw(p(s,t)||P.resolve()).catch(function(){}),t})}}):e.then(function(t){c(s);var n=R[s.name],r=n.forages;t.close();for(var e=0;e<r.length;e++)r[e]._dbInfo.db=null;return new P(function(e,n){var r=I.deleteDatabase(s.name);r.onerror=r.onblocked=function(t){var e=r.result;e&&e.close(),n(t)},r.onsuccess=function(){var t=r.result;t&&t.close(),e(t)}}).then(function(t){n.db=t;for(var e=0;e<r.length;e++)f(r[e]._dbInfo)}).catch(function(t){throw(p(s,t)||P.resolve()).catch(function(){}),t})})):P.reject("Invalid arguments"),t),e}},H="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",B=/^~~local_forage_type~([^~]+)~/,q="__lfsc__:",z=q.length,U=z+"arbf".length,G=Object.prototype.toString,V={serialize:function(e,n){var t="";if(e&&(t=G.call(e)),e&&("[object ArrayBuffer]"===t||e.buffer&&"[object ArrayBuffer]"===G.call(e.buffer))){var r=q;e instanceof ArrayBuffer?(i=e,r+="arbf"):(i=e.buffer,"[object Int8Array]"===t?r+="si08":"[object Uint8Array]"===t?r+="ui08":"[object Uint8ClampedArray]"===t?r+="uic8":"[object Int16Array]"===t?r+="si16":"[object Uint16Array]"===t?r+="ur16":"[object Int32Array]"===t?r+="si32":"[object Uint32Array]"===t?r+="ui32":"[object Float32Array]"===t?r+="fl32":"[object Float64Array]"===t?r+="fl64":n(new Error("Failed to get type for BinaryArray"))),n(r+x(i))}else if("[object Blob]"===t){var i=new FileReader;i.onload=function(){var t="~~local_forage_type~"+e.type+"~"+x(this.result);n(q+"blob"+t)},i.readAsArrayBuffer(e)}else try{n(JSON.stringify(e))}catch(t){n(null,t)}},deserialize:function(t){if(t.substring(0,z)!==q)return JSON.parse(t);var e,n=t.substring(U),r=t.substring(z,U);"blob"===r&&B.test(n)&&(e=(t=n.match(B))[1],n=n.substring(t[0].length));var i=s(n);switch(r){case"arbf":return i;case"blob":return o([i],{type:e});case"si08":return new Int8Array(i);case"ui08":return new Uint8Array(i);case"uic8":return new Uint8ClampedArray(i);case"si16":return new Int16Array(i);case"ur16":return new Uint16Array(i);case"si32":return new Int32Array(i);case"ui32":return new Uint32Array(i);case"fl32":return new Float32Array(i);case"fl64":return new Float64Array(i);default:throw new Error("Unkown type: "+r)}},stringToBuffer:s,bufferToString:x},$={_driver:"webSQLStorage",_initStorage:function(t){var r=this,i={db:null};if(t)for(var e in t)i[e]="string"!=typeof t[e]?t[e].toString():t[e];var n=new P(function(e,n){try{i.db=openDatabase(i.name,String(i.version),i.description,i.size)}catch(e){return n(e)}i.db.transaction(function(t){C(t,i,function(){r._dbInfo=i,e()},function(t,e){n(e)})},n)});return i.serializer=V,n},_support:"function"==typeof openDatabase,iterate:function(c,t){var e=this,n=new P(function(u,n){e.ready().then(function(){var a=e._dbInfo;a.db.transaction(function(t){k(t,a,"SELECT * FROM "+a.storeName,[],function(t,e){for(var n=e.rows,r=n.length,i=0;i<r;i++){var o=n.item(i),s=(s=o.value)&&a.serializer.deserialize(s);if(void 0!==(s=c(s,o.key,i+1)))return void u(s)}u()},function(t,e){n(e)})})}).catch(n)});return l(n,t),n},getItem:function(e,t){var o=this;e=h(e);var n=new P(function(r,i){o.ready().then(function(){var n=o._dbInfo;n.db.transaction(function(t){k(t,n,"SELECT * FROM "+n.storeName+" WHERE key = ? LIMIT 1",[e],function(t,e){e=(e=e.rows.length?e.rows.item(0).value:null)&&n.serializer.deserialize(e);r(e)},function(t,e){i(e)})})}).catch(i)});return l(n,t),n},setItem:function(t,e,n){return S.apply(this,[t,e,n,1])},removeItem:function(i,t){var o=this;i=h(i);var e=new P(function(n,r){o.ready().then(function(){var e=o._dbInfo;e.db.transaction(function(t){k(t,e,"DELETE FROM "+e.storeName+" WHERE key = ?",[i],function(){n()},function(t,e){r(e)})})}).catch(r)});return l(e,t),e},clear:function(t){var i=this,e=new P(function(n,r){i.ready().then(function(){var e=i._dbInfo;e.db.transaction(function(t){k(t,e,"DELETE FROM "+e.storeName,[],function(){n()},function(t,e){r(e)})})}).catch(r)});return l(e,t),e},length:function(t){var i=this,e=new P(function(n,r){i.ready().then(function(){var e=i._dbInfo;e.db.transaction(function(t){k(t,e,"SELECT COUNT(key) as c FROM "+e.storeName,[],function(t,e){e=e.rows.item(0).c;n(e)},function(t,e){r(e)})})}).catch(r)});return l(e,t),e},key:function(i,t){var o=this,e=new P(function(n,r){o.ready().then(function(){var e=o._dbInfo;e.db.transaction(function(t){k(t,e,"SELECT key FROM "+e.storeName+" WHERE id = ? LIMIT 1",[i+1],function(t,e){e=e.rows.length?e.rows.item(0).key:null;n(e)},function(t,e){r(e)})})}).catch(r)});return l(e,t),e},keys:function(t){var r=this,e=new P(function(i,n){r.ready().then(function(){var e=r._dbInfo;e.db.transaction(function(t){k(t,e,"SELECT key FROM "+e.storeName,[],function(t,e){for(var n=[],r=0;r<e.rows.length;r++)n.push(e.rows.item(r).key);i(n)},function(t,e){n(e)})})}).catch(n)});return l(e,t),e},dropInstance:function(n,t){t=a.apply(this,arguments);var r=this.config();(n="function"!=typeof n&&n||{}).name||(n.name=n.name||r.name,n.storeName=n.storeName||r.storeName);var i=this,e=n.name?new P(function(t){var o,e=n.name===r.name?i._dbInfo.db:openDatabase(n.name,"","",0);t(n.storeName?{db:e,storeNames:[n.storeName]}:(o=e,new P(function(i,n){o.transaction(function(t){t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(t,e){for(var n=[],r=0;r<e.rows.length;r++)n.push(e.rows.item(r).name);i({db:o,storeNames:n})},function(t,e){n(e)})},function(t){n(t)})})))}).then(function(s){return new P(function(i,o){s.db.transaction(function(r){for(var t=[],e=0,n=s.storeNames.length;e<n;e++)t.push(function(e){return new P(function(t,n){r.executeSql("DROP TABLE IF EXISTS "+e,[],function(){t()},function(t,e){n(e)})})}(s.storeNames[e]));P.all(t).then(function(){i()}).catch(function(t){o(t)})},function(t){o(t)})})}):P.reject("Invalid arguments");return l(e,t),e}},t={_driver:"localStorageWrapper",_initStorage:function(t){var e={};if(t)for(var n in t)e[n]=t[n];return e.keyPrefix=O(t,this._defaultConfig),E()?((this._dbInfo=e).serializer=V,P.resolve()):P.reject()},_support:function(){try{return"undefined"!=typeof localStorage&&"setItem"in localStorage&&!!localStorage.setItem}catch(t){return!1}}(),iterate:function(u,t){var c=this,e=c.ready().then(function(){for(var t=c._dbInfo,e=t.keyPrefix,n=e.length,r=localStorage.length,i=1,o=0;o<r;o++){var s=localStorage.key(o);if(0===s.indexOf(e)){var a=(a=localStorage.getItem(s))&&t.serializer.deserialize(a);if(void 0!==(a=u(a,s.substring(n),i++)))return a}}});return l(e,t),e},getItem:function(n,t){var r=this;n=h(n);var e=r.ready().then(function(){var t=r._dbInfo,e=localStorage.getItem(t.keyPrefix+n);return e=e&&t.serializer.deserialize(e)});return l(e,t),e},setItem:function(s,t,e){var a=this;s=h(s);var n=a.ready().then(function(){var o=t=void 0===t?null:t;return new P(function(n,r){var i=a._dbInfo;i.serializer.serialize(t,function(t,e){if(e)r(e);else try{localStorage.setItem(i.keyPrefix+s,t),n(o)}catch(t){"QuotaExceededError"!==t.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==t.name||r(t),r(t)}})})});return l(n,e),n},removeItem:function(e,t){var n=this;e=h(e);var r=n.ready().then(function(){var t=n._dbInfo;localStorage.removeItem(t.keyPrefix+e)});return l(r,t),r},clear:function(t){var r=this,e=r.ready().then(function(){for(var t=r._dbInfo.keyPrefix,e=localStorage.length-1;0<=e;e--){var n=localStorage.key(e);0===n.indexOf(t)&&localStorage.removeItem(n)}});return l(e,t),e},length:function(t){var e=this.keys().then(function(t){return t.length});return l(e,t),e},key:function(n,t){var r=this,e=r.ready().then(function(){var e,t=r._dbInfo;try{e=localStorage.key(n)}catch(t){e=null}return e=e&&e.substring(t.keyPrefix.length)});return l(e,t),e},keys:function(t){var o=this,e=o.ready().then(function(){for(var t=o._dbInfo,e=localStorage.length,n=[],r=0;r<e;r++){var i=localStorage.key(r);0===i.indexOf(t.keyPrefix)&&n.push(i.substring(t.keyPrefix.length))}return n});return l(e,t),e},dropInstance:function(e,t){t=a.apply(this,arguments),(e="function"!=typeof e&&e||{}).name||(r=this.config(),e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var n=this,r=e.name?new P(function(t){t(e.storeName?O(e,n._defaultConfig):e.name+"/")}).then(function(t){for(var e=localStorage.length-1;0<=e;e--){var n=localStorage.key(e);0===n.indexOf(t)&&localStorage.removeItem(n)}}):P.reject("Invalid arguments");return l(r,t),r}},X=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)},Y={},K={},Q={INDEXEDDB:F,WEBSQL:$,LOCALSTORAGE:t},t=[Q.INDEXEDDB._driver,Q.WEBSQL._driver,Q.LOCALSTORAGE._driver],J=["dropInstance"],Z=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(J),tt={description:"",driver:t.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1},t=new(et.prototype.config=function(t){if("object"!==(void 0===t?"undefined":A(t)))return"string"==typeof t?this._config[t]:this._config;if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var e in t){if("storeName"===e&&(t[e]=t[e].replace(/\W/g,"_")),"version"===e&&"number"!=typeof t[e])return new Error("Database version must be a number.");this._config[e]=t[e]}return!("driver"in t&&t.driver)||this.setDriver(this._config.driver)},et.prototype.defineDriver=function(c,t,e){var n=new P(function(e,n){try{var r=c._driver,t=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!c._driver)return void n(t);for(var i=Z.concat("_initStorage"),o=0,s=i.length;o<s;o++){var a=i[o];if((!j(J,a)||c[a])&&"function"!=typeof c[a])return void n(t)}!function(){for(var t=0,e=J.length;t<e;t++){var n=J[t];c[n]||(c[n]=function(e){return function(){var t=new Error("Method "+e+" is not implemented by the current driver"),t=P.reject(t);return l(t,arguments[arguments.length-1]),t}}(n))}}();var u=function(t){Y[r],Y[r]=c,K[r]=t,e()};"_support"in c?c._support&&"function"==typeof c._support?c._support().then(u,n):u(!!c._support):u(!0)}catch(t){n(t)}});return u(n,t,e),n},et.prototype.driver=function(){return this._driver||null},et.prototype.getDriver=function(t,e,n){t=Y[t]?P.resolve(Y[t]):P.reject(new Error("Driver not found."));return u(t,e,n),t},et.prototype.getSerializer=function(t){var e=P.resolve(V);return u(e,t),e},et.prototype.ready=function(t){var e=this,n=e._driverSet.then(function(){return null===e._ready&&(e._ready=e._initDriver()),e._ready});return u(n,t,t),n},et.prototype.setDriver=function(t,e,n){function o(){a._config.driver=a.driver()}function s(t){return a._extend(t),o(),a._ready=a._initStorage(a._config),a._ready}function r(i){return function(){var r=0;return function t(){for(;r<i.length;){var e=i[r];return r++,a._dbInfo=null,a._ready=null,a.getDriver(e).then(s).catch(t)}o();var n=new Error("No available storage method found.");return a._driverSet=P.reject(n),a._driverSet}()}}var a=this;X(t)||(t=[t]);var i=this._getSupportedDrivers(t),t=null!==this._driverSet?this._driverSet.catch(function(){return P.resolve()}):P.resolve();return this._driverSet=t.then(function(){var t=i[0];return a._dbInfo=null,a._ready=null,a.getDriver(t).then(function(t){a._driver=t._driver,o(),a._wrapLibraryMethodsWithReady(),a._initDriver=r(i)})}).catch(function(){o();var t=new Error("No available storage method found.");return a._driverSet=P.reject(t),a._driverSet}),u(this._driverSet,e,n),this._driverSet},et.prototype.supports=function(t){return!!K[t]},et.prototype._extend=function(t){T(this,t)},et.prototype._getSupportedDrivers=function(t){for(var e=[],n=0,r=t.length;n<r;n++){var i=t[n];this.supports(i)&&e.push(i)}return e},et.prototype._wrapLibraryMethodsWithReady=function(){for(var t=0,e=Z.length;t<e;t++)!function(e,n){e[n]=function(){var t=arguments;return e.ready().then(function(){return e[n].apply(e,t)})}}(this,Z[t])},et.prototype.createInstance=function(t){return new et(t)},et);function et(t){for(var e in!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,et),Q){var n,r;Q.hasOwnProperty(e)&&(r=(n=Q[e])._driver,this[e]=r,Y[r]||this.defineDriver(n))}this._defaultConfig=T({},tt),this._config=T({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}e.exports=t},{3:3}]},{},[4])(4)}),function(){function Bo(t,e){return t.set(e[0],e[1]),t}function qo(t,e){return t.add(e),t}function zo(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function Uo(t,e,n,r){for(var i=-1,o=null==t?0:t.length;++i<o;){var s=t[i];e(r,s,n(s),t)}return r}function Go(t,e){for(var n=-1,r=null==t?0:t.length;++n<r&&!1!==e(t[n],n,t););return t}function Vo(t,e){for(var n=null==t?0:t.length;n--&&!1!==e(t[n],n,t););return t}function $o(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(!e(t[n],n,t))return!1;return!0}function Xo(t,e){for(var n=-1,r=null==t?0:t.length,i=0,o=[];++n<r;){var s=t[n];e(s,n,t)&&(o[i++]=s)}return o}function Yo(t,e){return!!(null==t?0:t.length)&&-1<is(t,e,0)}function Ko(t,e,n){for(var r=-1,i=null==t?0:t.length;++r<i;)if(n(e,t[r]))return!0;return!1}function Qo(t,e){for(var n=-1,r=null==t?0:t.length,i=Array(r);++n<r;)i[n]=e(t[n],n,t);return i}function Jo(t,e){for(var n=-1,r=e.length,i=t.length;++n<r;)t[i+n]=e[n];return t}function Zo(t,e,n,r){var i=-1,o=null==t?0:t.length;for(r&&o&&(n=t[++i]);++i<o;)n=e(n,t[i],i,t);return n}function ts(t,e,n,r){var i=null==t?0:t.length;for(r&&i&&(n=t[--i]);i--;)n=e(n,t[i],i,t);return n}function es(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}function ns(t,r,e){var i;return e(t,function(t,e,n){if(r(t,e,n))return i=e,!1}),i}function rs(t,e,n,r){for(var i=t.length,o=n+(r?1:-1);r?o--:++o<i;)if(e(t[o],o,t))return o;return-1}function is(t,e,n){return e==e?function(t,e,n){for(var r=n-1,i=t.length;++r<i;)if(t[r]===e)return r;return-1}(t,e,n):rs(t,ss,n)}function os(t,e,n,r){for(var i=n-1,o=t.length;++i<o;)if(r(t[i],e))return i;return-1}function ss(t){return t!=t}function as(t,e){var n=null==t?0:t.length;return n?ls(t,e)/n:Is}function us(e){return function(t){return null==t?Ss:t[e]}}function t(e){return function(t){return null==e?Ss:e[t]}}function cs(t,r,i,o,e){return e(t,function(t,e,n){i=o?(o=!1,t):r(i,t,e,n)}),i}function ls(t,e){for(var n,r=-1,i=t.length;++r<i;){var o=e(t[r]);o!==Ss&&(n=n===Ss?o:n+o)}return n}function hs(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}function fs(e){return function(t){return e(t)}}function ps(e,t){return Qo(t,function(t){return e[t]})}function ds(t,e){return t.has(e)}function gs(t,e){for(var n=-1,r=t.length;++n<r&&-1<is(e,t[n],0););return n}function ms(t,e){for(var n=t.length;n--&&-1<is(e,t[n],0););return n}function vs(t){return"\\"+C[t]}function ys(t){return x.test(t)}function bs(t){var n=-1,r=Array(t.size);return t.forEach(function(t,e){r[++n]=[e,t]}),r}function ws(e,n){return function(t){return e(n(t))}}function _s(t,e){for(var n=-1,r=t.length,i=0,o=[];++n<r;){var s=t[n];s!==e&&s!==Ts||(t[n]=Ts,o[i++]=n)}return o}function xs(t){var e=-1,n=Array(t.size);return t.forEach(function(t){n[++e]=t}),n}function Cs(t){return(ys(t)?function(t){for(var e=_.lastIndex=0;_.test(t);)++e;return e}:S)(t)}function ks(t){return ys(t)?t.match(_)||[]:t.split("")}var Ss,Os="Expected a function",Es="__lodash_hash_undefined__",Ts="__lodash_placeholder__",As=9007199254740991,Is=NaN,js=4294967295,Ps=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],Ds="[object Arguments]",Ns="[object Array]",Rs="[object Boolean]",Ms="[object Date]",Ws="[object Error]",Ls="[object Function]",Fs="[object GeneratorFunction]",Hs="[object Map]",Bs="[object Number]",qs="[object Object]",zs="[object Promise]",Us="[object RegExp]",Gs="[object Set]",Vs="[object String]",$s="[object Symbol]",Xs="[object WeakMap]",Ys="[object ArrayBuffer]",Ks="[object DataView]",Qs="[object Float32Array]",Js="[object Float64Array]",Zs="[object Int8Array]",ta="[object Int16Array]",ea="[object Int32Array]",na="[object Uint8Array]",ra="[object Uint8ClampedArray]",ia="[object Uint16Array]",oa="[object Uint32Array]",sa=/\b__p \+= '';/g,aa=/\b(__p \+=) '' \+/g,ua=/(__e\(.*?\)|\b__t\)) \+\n'';/g,ca=/&(?:amp|lt|gt|quot|#39);/g,la=/[&<>"']/g,ha=RegExp(ca.source),fa=RegExp(la.source),pa=/<%-([\s\S]+?)%>/g,da=/<%([\s\S]+?)%>/g,ga=/<%=([\s\S]+?)%>/g,ma=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,va=/^\w*$/,ya=/^\./,ba=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,wa=/[\\^$.*+?()[\]{}|]/g,_a=RegExp(wa.source),xa=/^\s+|\s+$/g,Ca=/^\s+/,ka=/\s+$/,Sa=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Oa=/\{\n\/\* \[wrapped with (.+)\] \*/,Ea=/,? & /,Ta=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Aa=/\\(\\)?/g,Ia=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ja=/\w*$/,Pa=/^[-+]0x[0-9a-f]+$/i,Da=/^0b[01]+$/i,Na=/^\[object .+?Constructor\]$/,Ra=/^0o[0-7]+$/i,Ma=/^(?:0|[1-9]\d*)$/,Wa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,La=/($^)/,Fa=/['\n\r\u2028\u2029\\]/g,e="\\ud800-\\udfff",n="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",r="\\u2700-\\u27bf",i="a-z\\xdf-\\xf6\\xf8-\\xff",o="A-Z\\xc0-\\xd6\\xd8-\\xde",s="\\ufe0e\\ufe0f",a="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",u="["+e+"]",c="["+a+"]",l="["+n+"]",h="\\d+",f="["+r+"]",p="["+i+"]",d="[^"+e+a+h+r+i+o+"]",g="\\ud83c[\\udffb-\\udfff]",m="[^"+e+"]",v="(?:\\ud83c[\\udde6-\\uddff]){2}",y="[\\ud800-\\udbff][\\udc00-\\udfff]",b="["+o+"]",w="(?:"+p+"|"+d+")",a="(?:"+b+"|"+d+")",r="(?:['’](?:d|ll|m|re|s|t|ve))?",i="(?:['’](?:D|LL|M|RE|S|T|VE))?",o="(?:"+l+"|"+g+")"+"?",d="["+s+"]?",o=d+o+("(?:\\u200d(?:"+[m,v,y].join("|")+")"+d+o+")*"),f="(?:"+[f,v,y].join("|")+")"+o,u="(?:"+[m+l+"?",l,v,y,u].join("|")+")",Ha=RegExp("['’]","g"),Ba=RegExp(l,"g"),_=RegExp(g+"(?="+g+")|"+u+o,"g"),qa=RegExp([b+"?"+p+"+"+r+"(?="+[c,b,"$"].join("|")+")",a+"+"+i+"(?="+[c,b+w,"$"].join("|")+")",b+"?"+w+"+"+r,b+"+"+i,"\\d*(?:(?:1ST|2ND|3RD|(?![123])\\dTH)\\b)","\\d*(?:(?:1st|2nd|3rd|(?![123])\\dth)\\b)",h,f].join("|"),"g"),x=RegExp("[\\u200d"+e+n+s+"]"),za=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ua=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Ga=-1,Va={};Va[Qs]=Va[Js]=Va[Zs]=Va[ta]=Va[ea]=Va[na]=Va[ra]=Va[ia]=Va[oa]=!0,Va[Ds]=Va[Ns]=Va[Ys]=Va[Rs]=Va[Ks]=Va[Ms]=Va[Ws]=Va[Ls]=Va[Hs]=Va[Bs]=Va[qs]=Va[Us]=Va[Gs]=Va[Vs]=Va[Xs]=!1;var $a={};$a[Ds]=$a[Ns]=$a[Ys]=$a[Ks]=$a[Rs]=$a[Ms]=$a[Qs]=$a[Js]=$a[Zs]=$a[ta]=$a[ea]=$a[Hs]=$a[Bs]=$a[qs]=$a[Us]=$a[Gs]=$a[Vs]=$a[$s]=$a[na]=$a[ra]=$a[ia]=$a[oa]=!0,$a[Ws]=$a[Ls]=$a[Xs]=!1;var C={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Xa=parseFloat,Ya=parseInt,e="object"==typeof global&&global&&global.Object===Object&&global,n="object"==typeof self&&self&&self.Object===Object&&self,Ka=e||n||Function("return this")(),s="object"==typeof exports&&exports&&!exports.nodeType&&exports,n=s&&"object"==typeof module&&module&&!module.nodeType&&module,Qa=n&&n.exports===s,k=Qa&&e.process,e=function(){try{return k&&k.binding&&k.binding("util")}catch(t){}}(),Ja=e&&e.isArrayBuffer,Za=e&&e.isDate,tu=e&&e.isMap,eu=e&&e.isRegExp,nu=e&&e.isSet,ru=e&&e.isTypedArray,S=us("length"),iu=t({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),ou=t({"&":"&","<":"<",">":">",'"':""","'":"'"}),su=t({"&":"&","<":"<",">":">",""":'"',"'":"'"}),au=function t(e){function d(t){if(hn(t)&&!io(t)&&!(t instanceof m)){if(t instanceof g)return t;if(tr.call(t,"__wrapped__"))return Me(t)}return new g(t)}function o(){}function g(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=Ss}function m(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=js,this.__views__=[]}function n(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function i(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function s(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function v(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new s;++e<n;)this.add(t[e])}function w(t){t=this.__data__=new i(t);this.size=t.size}function r(t,e){var n,r=io(t),i=!r&&ro(t),o=!r&&!i&&so(t),s=!r&&!i&&!o&&ho(t),a=r||i||o||s,u=a?hs(t.length,$n):[],c=u.length;for(n in t)!e&&!tr.call(t,n)||a&&("length"==n||o&&("offset"==n||"parent"==n)||s&&("buffer"==n||"byteLength"==n||"byteOffset"==n)||xe(n,c))||u.push(n);return u}function a(t){var e=t.length;return e?t[ot(0,e-1)]:Ss}function u(t,e){return De(Mt(t),x(e,0,t.length))}function c(t){return De(Mt(t))}function _(t,e,n){(n===Ss||nn(t[e],n))&&(n!==Ss||e in t)||f(t,e,n)}function y(t,e,n){var r=t[e];tr.call(t,e)&&nn(r,n)&&(n!==Ss||e in t)||f(t,e,n)}function l(t,e){for(var n=t.length;n--;)if(nn(t[n][0],e))return n;return-1}function h(t,r,i,o){return Zr(t,function(t,e,n){r(o,t,i(t),n)}),o}function b(t,e){return t&&Wt(e,Sn(e),t)}function f(t,e,n){"__proto__"==e&&yr?yr(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function p(t,e){for(var n=-1,r=e.length,i=Hn(r),o=null==t;++n<r;)i[n]=o?Ss:Cn(t,e[n]);return i}function x(t,e,n){return t==t&&(n!==Ss&&(t=t<=n?t:n),e!==Ss&&(t=e<=t?t:e)),t}function C(n,r,i,t,e,o){var s,a=1&r,u=2&r,c=4&r;if((s=i?e?i(n,t,e,o):i(n):s)!==Ss)return s;if(!ln(n))return n;var l,h,f=io(n);if(f){if(t=(p=n).length,d=p.constructor(t),t&&"string"==typeof p[0]&&tr.call(p,"index")&&(d.index=p.index,d.input=p.input),s=d,!a)return Mt(n,s)}else{var p=hi(n),d=p==Ls||p==Fs;if(so(n))return It(n,a);if(p==qs||p==Ds||d&&!e){if(s=u||d?{}:we(n),!a)return u?(d=l=n,h=(h=s)&&Wt(d,On(d),h),Wt(l,li(l),h)):(h=b(s,l=n),Wt(l,ci(l),h))}else{if(!$a[p])return e?n:{};s=function(t,e,n,r){var i=t.constructor;switch(e){case Ys:return jt(t);case Rs:case Ms:return new i(+t);case Ks:return function(t,e){e=e?jt(t.buffer):t.buffer;return new t.constructor(e,t.byteOffset,t.byteLength)}(t,r);case Qs:case Js:case Zs:case ta:case ea:case na:case ra:case ia:case oa:return Pt(t,r);case Hs:return function(t,e,n){return Zo(e?n(bs(t),1):bs(t),Bo,new t.constructor)}(t,r,n);case Bs:case Vs:return new i(t);case Us:return function(t){var e=new t.constructor(t.source,ja.exec(t));return e.lastIndex=t.lastIndex,e}(t);case Gs:return function(t,e,n){return Zo(e?n(xs(t),1):xs(t),qo,new t.constructor)}(t,r,n);case $s:return function(t){return Yr?Gn(Yr.call(t)):{}}(t)}}(n,p,C,a)}}a=(o=o||new w).get(n);if(a)return a;o.set(n,s);var g=f?Ss:(c?u?fe:he:u?On:Sn)(n);return Go(g||n,function(t,e){g&&(t=n[e=t]),y(s,e,C(t,r,i,e,n,o))}),s}function k(t,e,n){var r=n.length;if(null==t)return!r;for(t=Gn(t);r--;){var i=n[r],o=e[i],s=t[i];if(s===Ss&&!(i in t)||!o(s))return!1}return!0}function S(t,e,n){if("function"!=typeof t)throw new Xn(Os);return mi(function(){t.apply(Ss,n)},e)}function O(t,e,n,r){var i=-1,o=Yo,s=!0,a=t.length,u=[],c=e.length;if(!a)return u;n&&(e=Qo(e,fs(n))),r?(o=Ko,s=!1):200<=e.length&&(o=ds,s=!1,e=new v(e));t:for(;++i<a;){var l=t[i],h=null==n?l:n(l),l=r||0!==l?l:0;if(s&&h==h){for(var f=c;f--;)if(e[f]===h)continue t;u.push(l)}else o(e,h,r)||u.push(l)}return u}function E(t,r){var i=!0;return Zr(t,function(t,e,n){return i=!!r(t,e,n)}),i}function T(t,e,n){for(var r=-1,i=t.length;++r<i;){var o,s,a=t[r],u=e(a);null!=u&&(o===Ss?u==u&&!gn(u):n(u,o))&&(o=u,s=a)}return s}function A(t,r){var i=[];return Zr(t,function(t,e,n){r(t,e,n)&&i.push(t)}),i}function I(t,e,n,r,i){var o=-1,s=t.length;for(n=n||_e,i=i||[];++o<s;){var a=t[o];0<e&&n(a)?1<e?I(a,e-1,n,r,i):Jo(i,a):r||(i[i.length]=a)}return i}function j(t,e){return t&&ei(t,e,Sn)}function P(t,e){return t&&ni(t,e,Sn)}function D(e,t){return Xo(t,function(t){return an(e[t])})}function N(t,e){for(var n=0,r=(e=Tt(e,t)).length;null!=t&&n<r;)t=t[Ne(e[n++])];return n&&n==r?t:Ss}function R(t,e,n){e=e(t);return io(t)?e:Jo(e,n(t))}function M(t){return null==t?t===Ss?"[object Undefined]":"[object Null]":vr&&vr in Gn(t)?function(t){var e=tr.call(t,vr),n=t[vr];try{t[vr]=Ss;var r=!0}catch(t){}var i=rr.call(t);return r&&(e?t[vr]=n:delete t[vr]),i}(t):(t=t,rr.call(t))}function W(t,e){return e<t}function L(t,e){return null!=t&&tr.call(t,e)}function F(t,e){return null!=t&&e in Gn(t)}function H(t,e,n){for(var r=n?Ko:Yo,i=t[0].length,o=t.length,s=o,a=Hn(o),u=1/0,c=[];s--;){var l=t[s];s&&e&&(l=Qo(l,fs(e))),u=Ir(l.length,u),a[s]=!n&&(e||120<=i&&120<=l.length)?new v(s&&l):Ss}var l=t[0],h=-1,f=a[0];t:for(;++h<i&&c.length<u;){var p=l[h],d=e?e(p):p,p=n||0!==p?p:0;if(!(f?ds(f,d):r(c,d,n))){for(s=o;--s;){var g=a[s];if(!(g?ds(g,d):r(t[s],d,n)))continue t}f&&f.push(d),c.push(p)}}return c}function B(t,e,n){e=null==(t=Ie(t,e=Tt(e,t)))?t:t[Ne(Be(e))];return null==e?Ss:zo(e,t,n)}function q(t){return hn(t)&&M(t)==Ds}function z(t,e,n,r,i){return t===e||(null==t||null==e||!hn(t)&&!hn(e)?t!=t&&e!=e:function(t,e,n,r,i,o){var s=io(t),a=io(e),u=s?Ns:hi(t),c=a?Ns:hi(e),l=(u=u==Ds?qs:u)==qs,a=(c=c==Ds?qs:c)==qs,c=u==c;if(c&&so(t)){if(!so(e))return!1;l=!(s=!0)}if(c&&!l)return o=o||new w,s||ho(t)?ce(t,e,n,r,i,o):function(t,e,n,r,i,o,s){switch(n){case Ks:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case Ys:return!(t.byteLength!=e.byteLength||!o(new cr(t),new cr(e)));case Rs:case Ms:case Bs:return nn(+t,+e);case Ws:return t.name==e.name&&t.message==e.message;case Us:case Vs:return t==e+"";case Hs:var a=bs;case Gs:var u=1&r;if(a=a||xs,t.size!=e.size&&!u)return!1;u=s.get(t);if(u)return u==e;r|=2,s.set(t,e);a=ce(a(t),a(e),r,i,o,s);return s.delete(t),a;case $s:if(Yr)return Yr.call(t)==Yr.call(e)}return!1}(t,e,u,n,r,i,o);if(!(1&n)){l=l&&tr.call(t,"__wrapped__"),a=a&&tr.call(e,"__wrapped__");if(l||a){l=l?t.value():t,a=a?e.value():e;return o=o||new w,i(l,a,n,r,o)}}return!!c&&(o=o||new w,function(t,e,n,r,i,o){var s=1&n,a=he(t),u=a.length,c=he(e).length;if(u!=c&&!s)return!1;for(var l=u;l--;){var h=a[l];if(!(s?h in e:tr.call(e,h)))return!1}var f=o.get(t);if(f&&o.get(e))return f==e;var p=!0;o.set(t,e),o.set(e,t);for(var d=s;++l<u;){h=a[l];var g,m=t[h],v=e[h];if(!((g=r?s?r(v,m,h,e,t,o):r(m,v,h,t,e,o):g)===Ss?m===v||i(m,v,n,r,o):g)){p=!1;break}d=d||"constructor"==h}p&&!d&&(c=t.constructor,f=e.constructor,c!=f&&"constructor"in t&&"constructor"in e&&!("function"==typeof c&&c instanceof c&&"function"==typeof f&&f instanceof f)&&(p=!1));return o.delete(t),o.delete(e),p}(t,e,n,r,i,o))}(t,e,n,r,z,i))}function U(t,e,n,r){var i=n.length,o=i,s=!r;if(null==t)return!o;for(t=Gn(t);i--;){var a=n[i];if(s&&a[2]?a[1]!==t[a[0]]:!(a[0]in t))return!1}for(;++i<o;){var u=(a=n[i])[0],c=t[u],l=a[1];if(s&&a[2]){if(c===Ss&&!(u in t))return!1}else{var h,f=new w;if(!((h=r?r(c,l,u,t,e,f):h)===Ss?z(l,c,3,r,f):h))return!1}}return!0}function G(t){return!(!ln(t)||(e=t,nr&&nr in e))&&(an(t)?sr:Na).test(Re(t));var e}function V(t){return"function"==typeof t?t:null==t?Dn:"object"==typeof t?io(t)?J(t[0],t[1]):Q(t):Wn(t)}function $(t){if(!Oe(t))return Tr(t);var e,n=[];for(e in Gn(t))tr.call(t,e)&&"constructor"!=e&&n.push(e);return n}function X(t){if(!ln(t))return function(t){var e=[];if(null!=t)for(var n in Gn(t))e.push(n);return e}(t);var e,n=Oe(t),r=[];for(e in t)("constructor"!=e||!n&&tr.call(t,e))&&r.push(e);return r}function Y(t,e){return t<e}function K(t,r){var i=-1,o=rn(t)?Hn(t.length):[];return Zr(t,function(t,e,n){o[++i]=r(t,e,n)}),o}function Q(e){var n=ve(e);return 1==n.length&&n[0][2]?Te(n[0][0],n[0][1]):function(t){return t===e||U(t,e,n)}}function J(n,r){return ke(n)&&Ee(r)?Te(Ne(n),r):function(t){var e=Cn(t,n);return e===Ss&&e===r?kn(t,n):z(r,e,3)}}function Z(g,m,v,y,b){g!==m&&ei(m,function(t,e){var n,r,i,o,s,a,u,c,l,h,f,p,d;ln(t)?(b=b||new w,r=m,o=v,s=Z,a=y,u=b,f=(n=g)[i=e],p=r[i],(d=u.get(p))?_(n,i,d):(c=a?a(f,p,i+"",n,r,u):Ss,(l=c===Ss)&&(h=io(p),d=!h&&so(p),r=!h&&!d&&ho(p),c=p,h||d||r?c=io(f)?f:on(f)?Mt(f):d?It(p,!(l=!1)):r?Pt(p,!(l=!1)):[]:pn(p)||ro(p)?ro(c=f)?c=_n(f):(!ln(f)||o&&an(f))&&(c=we(p)):l=!1),l&&(u.set(p,c),s(c,p,o,a,u),u.delete(p)),_(n,i,c))):(c=y?y(g[e],t,e+"",g,m,b):Ss,_(g,e,c=c===Ss?t:c))},On)}function tt(t,e){var n=t.length;if(n)return xe(e+=e<0?n:0,n)?t[e]:Ss}function et(t,r,n){var i=-1;return r=Qo(r.length?r:[Dn],fs(ge())),function(t,e){var n=t.length;for(t.sort(e);n--;)t[n]=t[n].value;return t}(K(t,function(e,t,n){return{criteria:Qo(r,function(t){return t(e)}),index:++i,value:e}}),function(t,e){return function(t,e,n){for(var r=-1,i=t.criteria,o=e.criteria,s=i.length,a=n.length;++r<s;){var u=Dt(i[r],o[r]);if(u){if(a<=r)return u;var c=n[r];return u*("desc"==c?-1:1)}}return t.index-e.index}(t,e,n)})}function nt(t,e,n){for(var r=-1,i=e.length,o={};++r<i;){var s=e[r],a=N(t,s);n(a,s)&<(o,Tt(s,t),a)}return o}function rt(t,e,n,r){var i=r?os:is,o=-1,s=e.length,a=t;for(t===e&&(e=Mt(e)),n&&(a=Qo(t,fs(n)));++o<s;)for(var u=0,c=e[o],l=n?n(c):c;-1<(u=i(a,l,u,r));)a!==t&&dr.call(a,u,1),dr.call(t,u,1);return t}function it(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i,o=e[n];n!=r&&o===i||(xe(i=o)?dr.call(t,o,1):wt(t,o))}return t}function ot(t,e){return t+Cr(Dr()*(e-t+1))}function st(t,e){var n="";if(!t||e<1||As<e)return n;for(;e%2&&(n+=t),(e=Cr(e/2))&&(t+=t),e;);return n}function at(t,e){return vi(Ae(t,e,Dn),t+"")}function ut(t){return a(Tn(t))}function ct(t,e){t=Tn(t);return De(t,x(e,0,t.length))}function lt(t,e,n,r){if(!ln(t))return t;for(var i=-1,o=(e=Tt(e,t)).length,s=o-1,a=t;null!=a&&++i<o;){var u,c=Ne(e[i]),l=n;i!=s&&(u=a[c],(l=r?r(u,c,a):Ss)===Ss&&(l=ln(u)?u:xe(e[i+1])?[]:{})),y(a,c,l),a=a[c]}return t}function ht(t){return De(Tn(t))}function ft(t,e,n){var r=-1,i=t.length;(n=i<n?i:n)<0&&(n+=i),i=n<(e=e<0?i<-e?0:i+e:e)?0:n-e>>>0,e>>>=0;for(var o=Hn(i);++r<i;)o[r]=t[r+e];return o}function pt(t,r){var i;return Zr(t,function(t,e,n){return!(i=r(t,e,n))}),!!i}function dt(t,e,n){var r=0,i=null==t?r:t.length;if("number"==typeof e&&e==e&&i<=2147483647){for(;r<i;){var o=r+i>>>1,s=t[o];null!==s&&!gn(s)&&(n?s<=e:s<e)?r=1+o:i=o}return i}return gt(t,e,Dn,n)}function gt(t,e,n,r){e=n(e);for(var i=0,o=null==t?0:t.length,s=e!=e,a=null===e,u=gn(e),c=e===Ss;i<o;){var l=Cr((i+o)/2),h=n(t[l]),f=h!==Ss,p=null===h,d=h==h,g=gn(h),h=s?r||d:c?d&&(r||f):a?d&&f&&(r||!p):u?d&&f&&!p&&(r||!g):!p&&!g&&(r?h<=e:h<e);h?i=l+1:o=l}return Ir(o,4294967294)}function mt(t,e){for(var n=-1,r=t.length,i=0,o=[];++n<r;){var s,a=t[n],u=e?e(a):a;n&&nn(u,s)||(s=u,o[i++]=0===a?0:a)}return o}function vt(t){return"number"==typeof t?t:gn(t)?Is:+t}function yt(t){if("string"==typeof t)return t;if(io(t))return Qo(t,yt)+"";if(gn(t))return Kr?Kr.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function bt(t,e,n){var r=-1,i=Yo,o=t.length,s=!0,a=[],u=a;if(n)s=!1,i=Ko;else if(200<=o){var c=e?null:ai(t);if(c)return xs(c);s=!1,i=ds,u=new v}else u=e?[]:a;t:for(;++r<o;){var l=t[r],h=e?e(l):l,l=n||0!==l?l:0;if(s&&h==h){for(var f=u.length;f--;)if(u[f]===h)continue t;e&&u.push(h),a.push(l)}else i(u,h,n)||(u!==a&&u.push(h),a.push(l))}return a}function wt(t,e){return null==(t=Ie(t,e=Tt(e,t)))||delete t[Ne(Be(e))]}function _t(t,e,n,r){return lt(t,e,n(N(t,e)),r)}function xt(t,e,n,r){for(var i=t.length,o=r?i:-1;(r?o--:++o<i)&&e(t[o],o,t););return n?ft(t,r?0:o,r?o+1:i):ft(t,r?o+1:0,r?i:o)}function Ct(t,e){return Zo(e,function(t,e){return e.func.apply(e.thisArg,Jo([t],e.args))},t=t instanceof m?t.value():t)}function kt(t,e,n){var r=t.length;if(r<2)return r?bt(t[0]):[];for(var i=-1,o=Hn(r);++i<r;)for(var s=t[i],a=-1;++a<r;)a!=i&&(o[i]=O(o[i]||s,t[a],e,n));return bt(I(o,1),e,n)}function St(t,e,n){for(var r=-1,i=t.length,o=e.length,s={};++r<i;){var a=r<o?e[r]:Ss;n(s,t[r],a)}return s}function Ot(t){return on(t)?t:[]}function Et(t){return"function"==typeof t?t:Dn}function Tt(t,e){return io(t)?t:ke(t,e)?[t]:yi(xn(t))}function At(t,e,n){var r=t.length;return n=n===Ss?r:n,!e&&r<=n?t:ft(t,e,n)}function It(t,e){if(e)return t.slice();e=t.length,e=lr?lr(e):new t.constructor(e);return t.copy(e),e}function jt(t){var e=new t.constructor(t.byteLength);return new cr(e).set(new cr(t)),e}function Pt(t,e){e=e?jt(t.buffer):t.buffer;return new t.constructor(e,t.byteOffset,t.length)}function Dt(t,e){if(t!==e){var n=t!==Ss,r=null===t,i=t==t,o=gn(t),s=e!==Ss,a=null===e,u=e==e,c=gn(e);if(!a&&!c&&!o&&e<t||o&&s&&u&&!a&&!c||r&&s&&u||!n&&u||!i)return 1;if(!r&&!o&&!c&&t<e||c&&n&&i&&!r&&!o||a&&n&&i||!s&&i||!u)return-1}return 0}function Nt(t,e,n,r){for(var i=-1,o=t.length,s=n.length,a=-1,u=e.length,c=Ar(o-s,0),l=Hn(u+c),h=!r;++a<u;)l[a]=e[a];for(;++i<s;)(h||i<o)&&(l[n[i]]=t[i]);for(;c--;)l[a++]=t[i++];return l}function Rt(t,e,n,r){for(var i=-1,o=t.length,s=-1,a=n.length,u=-1,c=e.length,l=Ar(o-a,0),h=Hn(l+c),f=!r;++i<l;)h[i]=t[i];for(var p=i;++u<c;)h[p+u]=e[u];for(;++s<a;)(f||i<o)&&(h[p+n[s]]=t[i++]);return h}function Mt(t,e){var n=-1,r=t.length;for(e=e||Hn(r);++n<r;)e[n]=t[n];return e}function Wt(t,e,n,r){var i=!n;n=n||{};for(var o=-1,s=e.length;++o<s;){var a=e[o],u=r?r(n[a],t[a],a,n,t):Ss;(i?f:y)(n,a,u=u===Ss?t[a]:u)}return n}function Lt(i,o){return function(t,e){var n=io(t)?Uo:h,r=o?o():{};return n(t,i,ge(e,2),r)}}function Ft(a){return at(function(t,e){var n=-1,r=e.length,i=1<r?e[r-1]:Ss,o=2<r?e[2]:Ss,i=3<a.length&&"function"==typeof i?(r--,i):Ss;for(o&&Ce(e[0],e[1],o)&&(i=r<3?Ss:i,r=1),t=Gn(t);++n<r;){var s=e[n];s&&a(t,s,n,i)}return t})}function Ht(o,s){return function(t,e){if(null==t)return t;if(!rn(t))return o(t,e);for(var n=t.length,r=s?n:-1,i=Gn(t);(s?r--:++r<n)&&!1!==e(i[r],r,i););return t}}function Bt(u){return function(t,e,n){for(var r=-1,i=Gn(t),o=n(t),s=o.length;s--;){var a=o[u?s:++r];if(!1===e(i[a],a,i))break}return t}}function qt(r){return function(t){var e=ys(t=xn(t))?ks(t):Ss,n=e?e[0]:t.charAt(0),t=e?At(e,1).join(""):t.slice(1);return n[r]()+t}}function zt(e){return function(t){return Zo(jn(In(t).replace(Ha,"")),e,"")}}function Ut(r){return function(){var t=arguments;switch(t.length){case 0:return new r;case 1:return new r(t[0]);case 2:return new r(t[0],t[1]);case 3:return new r(t[0],t[1],t[2]);case 4:return new r(t[0],t[1],t[2],t[3]);case 5:return new r(t[0],t[1],t[2],t[3],t[4]);case 6:return new r(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new r(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var e=Qr(r.prototype),n=r.apply(e,t);return ln(n)?n:e}}function Gt(o,s,a){var u=Ut(o);return function t(){for(var e=arguments.length,n=Hn(e),r=e,i=de(t);r--;)n[r]=arguments[r];i=e<3&&n[0]!==i&&n[e-1]!==i?[]:_s(n,i);return(e-=i.length)<a?ne(o,s,Xt,t.placeholder,Ss,n,i,Ss,Ss,a-e):zo(this&&this!==Ka&&this instanceof t?u:o,this,n)}}function Vt(o){return function(t,e,n){var r,i=Gn(t);rn(t)||(r=ge(e,3),t=Sn(t),e=function(t){return r(i[t],t,i)});n=o(t,e,n);return-1<n?i[r?t[n]:n]:Ss}}function $t(u){return le(function(i){var o=i.length,t=o,e=g.prototype.thru;for(u&&i.reverse();t--;){var n=i[t];if("function"!=typeof n)throw new Xn(Os);e&&!a&&"wrapper"==pe(n)&&(a=new g([],!0))}for(t=a?t:o;++t<o;)var r=pe(n=i[t]),s="wrapper"==r?ui(n):Ss,a=s&&Se(s[0])&&424==s[1]&&!s[4].length&&1==s[9]?a[pe(s[0])].apply(a,s[3]):1==n.length&&Se(n)?a[r]():a.thru(n);return function(){var t=arguments,e=t[0];if(a&&1==t.length&&io(e))return a.plant(e).value();for(var n=0,r=o?i[n].apply(this,t):e;++n<o;)r=i[n].call(this,r);return r}})}function Xt(a,u,c,l,h,f,p,d,g,m){var v=128&u,y=1&u,b=2&u,w=24&u,_=512&u,x=b?Ss:Ut(a);return function t(){for(var e,n=Hn(s=arguments.length),r=s;r--;)n[r]=arguments[r];if(w&&(e=function(t,e){for(var n=t.length,r=0;n--;)t[n]===e&&++r;return r}(n,o=de(t))),l&&(n=Nt(n,l,h,w)),f&&(n=Rt(n,f,p,w)),s-=e,w&&s<m){var i=_s(n,o);return ne(a,u,Xt,t.placeholder,c,n,i,d,g,m-s)}var o=y?c:this,i=b?o[a]:a,s=n.length;return d?n=function(t,e){for(var n=t.length,r=Ir(e.length,n),i=Mt(t);r--;){var o=e[r];t[r]=xe(o,n)?i[o]:Ss}return t}(n,d):_&&1<s&&n.reverse(),v&&g<s&&(n.length=g),(i=this&&this!==Ka&&this instanceof t?x||Ut(i):i).apply(o,n)}}function Yt(n,s){return function(t,e){return t=t,r=n,i=s(e),o={},j(t,function(t,e,n){r(o,i(t),e,n)}),o;var r,i,o}}function Kt(r,i){return function(t,e){var n;if(t===Ss&&e===Ss)return i;if(t!==Ss&&(n=t),e!==Ss){if(n===Ss)return e;e="string"==typeof t||"string"==typeof e?(t=yt(t),yt(e)):(t=vt(t),vt(e)),n=r(t,e)}return n}}function Qt(r){return le(function(t){return t=Qo(t,fs(ge())),at(function(e){var n=this;return r(t,function(t){return zo(t,n,e)})})})}function Jt(t,e){var n=(e=e===Ss?" ":yt(e)).length;if(n<2)return n?st(e,t):e;n=st(e,xr(t/Cs(e)));return ys(e)?At(ks(n),0,t).join(""):n.slice(0,t)}function Zt(a,t,u,c){var l=1&t,h=Ut(a);return function t(){for(var e=-1,n=arguments.length,r=-1,i=c.length,o=Hn(i+n),s=this&&this!==Ka&&this instanceof t?h:a;++r<i;)o[r]=c[r];for(;n--;)o[r++]=arguments[++e];return zo(s,l?u:this,o)}}function te(r){return function(t,e,n){return n&&"number"!=typeof n&&Ce(t,e,n)&&(e=n=Ss),t=vn(t),e===Ss?(e=t,t=0):e=vn(e),function(t,e,n,r){for(var i=-1,o=Ar(xr((e-t)/(n||1)),0),s=Hn(o);o--;)s[r?o:++i]=t,t+=n;return s}(t,e,n=n===Ss?t<e?1:-1:vn(n),r)}}function ee(n){return function(t,e){return"string"==typeof t&&"string"==typeof e||(t=wn(t),e=wn(e)),n(t,e)}}function ne(t,e,n,r,i,o,s,a,u,c){var l=8&e;e|=l?32:64,4&(e&=~(l?64:32))||(e&=-4);c=[t,e,i,l?o:Ss,l?s:Ss,l?Ss:o,l?Ss:s,a,u,c],n=n.apply(Ss,c);return Se(t)&&gi(n,c),n.placeholder=r,je(n,t,e)}function re(t){var r=Un[t];return function(t,e){if(t=wn(t),e=null==e?0:Ir(yn(e),292)){var n=(xn(t)+"e").split("e");return+((n=(xn(r(n[0]+"e"+(+n[1]+e)))+"e").split("e"))[0]+"e"+(+n[1]-e))}return r(t)}}function ie(o){return function(t){var e,n,r,i=hi(t);return i==Hs?bs(t):i==Gs?(i=t,n=-1,r=Array(i.size),i.forEach(function(t){r[++n]=[t,t]}),r):Qo(o(e=t),function(t){return[t,e[t]]})}}function oe(t,e,n,r,i,o,s,a){var u=2&e;if(!u&&"function"!=typeof t)throw new Xn(Os);var c,l,h=r?r.length:0;h||(e&=-97,r=i=Ss),s=s===Ss?s:Ar(yn(s),0),a=a===Ss?a:yn(a),h-=i?i.length:0,64&e&&(c=r,l=i,r=i=Ss);var f,p,d,g,m=u?Ss:ui(t),s=[t,e,n,r,i,c,l,o,s,a];m&&function(t,e){var n=t[1],r=e[1],i=n|r,o=i<131,s=128==r&&8==n||128==r&&256==n&&t[7].length<=e[8]||384==r&&e[7].length<=e[8]&&8==n;if(!o&&!s)return;1&r&&(t[2]=e[2],i|=1&n?0:4);n=e[3];{var a;n&&(a=t[3],t[3]=a?Nt(a,n,e[4]):n,t[4]=a?_s(t[3],Ts):e[4])}(n=e[5])&&(a=t[5],t[5]=a?Rt(a,n,e[6]):n,t[6]=a?_s(t[5],Ts):e[6]),(n=e[7])&&(t[7]=n),128&r&&(t[8]=null==t[8]?e[8]:Ir(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=i}(s,m),t=s[0],e=s[1],n=s[2],r=s[3],i=s[4],!(a=s[9]=s[9]===Ss?u?0:t.length:Ar(s[9]-h,0))&&24&e&&(e&=-25);n=e&&1!=e?8==e||16==e?Gt(t,e,a):32!=e&&33!=e||i.length?Xt.apply(Ss,s):Zt(t,e,n,r):(p=n,d=1&e,g=Ut(f=t),function t(){return(this&&this!==Ka&&this instanceof t?g:f).apply(d?p:this,arguments)});return je((m?ri:gi)(n,s),t,e)}function se(t,e,n,r){return t===Ss||nn(t,Qn[n])&&!tr.call(r,n)?e:t}function ae(t,e,n,r,i,o){return ln(t)&&ln(e)&&(o.set(e,t),Z(t,e,Ss,ae,o),o.delete(e)),t}function ue(t){return pn(t)?Ss:t}function ce(t,e,n,r,i,o){var s=1&n,a=t.length,u=e.length;if(a!=u&&!(s&&a<u))return!1;u=o.get(t);if(u&&o.get(e))return u==e;var c=-1,l=!0,h=2&n?new v:Ss;for(o.set(t,e),o.set(e,t);++c<a;){var f,p=t[c],d=e[c];if((f=r?s?r(d,p,c,e,t,o):r(p,d,c,t,e,o):f)!==Ss){if(f)continue;l=!1;break}if(h){if(!es(e,function(t,e){return!ds(h,e)&&(p===t||i(p,t,n,r,o))&&h.push(e)})){l=!1;break}}else if(p!==d&&!i(p,d,n,r,o)){l=!1;break}}return o.delete(t),o.delete(e),l}function le(t){return vi(Ae(t,Ss,Fe),t+"")}function he(t){return R(t,Sn,ci)}function fe(t){return R(t,On,li)}function pe(t){for(var e=t.name+"",n=qr[e],r=tr.call(qr,e)?n.length:0;r--;){var i=n[r],o=i.func;if(null==o||o==t)return i.name}return e}function de(t){return(tr.call(d,"placeholder")?d:t).placeholder}function ge(){var t=(t=d.iteratee||Nn)===Nn?V:t;return arguments.length?t(arguments[0],arguments[1]):t}function me(t,e){var n,r=t.__data__;return("string"==(t=typeof(n=e))||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==n:null===n)?r["string"==typeof e?"string":"hash"]:r.map}function ve(t){for(var e=Sn(t),n=e.length;n--;){var r=e[n],i=t[r];e[n]=[r,i,Ee(i)]}return e}function ye(t,e){e=e,e=null==(t=t)?Ss:t[e];return G(e)?e:Ss}function be(t,e,n){for(var r=-1,i=(e=Tt(e,t)).length,o=!1;++r<i;){var s=Ne(e[r]);if(!(o=null!=t&&n(t,s)))break;t=t[s]}return o||++r!=i?o:!!(i=null==t?0:t.length)&&cn(i)&&xe(s,i)&&(io(t)||ro(t))}function we(t){return"function"!=typeof t.constructor||Oe(t)?{}:Qr(hr(t))}function _e(t){return io(t)||ro(t)||!!(gr&&t&&t[gr])}function xe(t,e){return!!(e=null==e?As:e)&&("number"==typeof t||Ma.test(t))&&-1<t&&t%1==0&&t<e}function Ce(t,e,n){if(ln(n)){var r=typeof e;return("number"==r?rn(n)&&xe(e,n.length):"string"==r&&e in n)&&nn(n[e],t)}}function ke(t,e){if(!io(t)){var n=typeof t;return"number"==n||"symbol"==n||"boolean"==n||null==t||gn(t)||va.test(t)||!ma.test(t)||null!=e&&t in Gn(e)}}function Se(t){var e=pe(t),n=d[e];if("function"==typeof n&&e in m.prototype){if(t===n)return 1;n=ui(n);return n&&t===n[0]}}function Oe(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||Qn)}function Ee(t){return t==t&&!ln(t)}function Te(e,n){return function(t){return null!=t&&t[e]===n&&(n!==Ss||e in Gn(t))}}function Ae(o,s,a){return s=Ar(s===Ss?o.length-1:s,0),function(){for(var t=arguments,e=-1,n=Ar(t.length-s,0),r=Hn(n);++e<n;)r[e]=t[s+e];for(var e=-1,i=Hn(s+1);++e<s;)i[e]=t[e];return i[s]=a(r),zo(o,this,i)}}function Ie(t,e){return e.length<2?t:N(t,ft(e,0,-1))}function je(t,e,n){var r,i,e=e+"";return vi(t,function(t,e){var n=e.length;if(!n)return t;var r=n-1;return e[r]=(1<n?"& ":"")+e[r],e=e.join(2<n?", ":" "),t.replace(Sa,"{\n/* [wrapped with "+e+"] */\n")}(e,(r=(e=(e=e).match(Oa))?e[1].split(Ea):[],i=n,Go(Ps,function(t){var e="_."+t[0];i&t[1]&&!Yo(r,e)&&r.push(e)}),r.sort())))}function Pe(n){var r=0,i=0;return function(){var t=jr(),e=16-(t-i);if(i=t,0<e){if(800<=++r)return arguments[0]}else r=0;return n.apply(Ss,arguments)}}function De(t,e){var n=-1,r=t.length,i=r-1;for(e=e===Ss?r:e;++n<e;){var o=ot(n,i),s=t[o];t[o]=t[n],t[n]=s}return t.length=e,t}function Ne(t){if("string"==typeof t||gn(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Re(t){if(null!=t){try{return Zn.call(t)}catch(t){}try{return t+""}catch(t){}}return""}function Me(t){if(t instanceof m)return t.clone();var e=new g(t.__wrapped__,t.__chain__);return e.__actions__=Mt(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}function We(t,e,n){var r=null==t?0:t.length;if(!r)return-1;n=null==n?0:yn(n);return n<0&&(n=Ar(r+n,0)),rs(t,ge(e,3),n)}function Le(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=r-1;return n!==Ss&&(i=yn(n),i=n<0?Ar(r+i,0):Ir(i,r-1)),rs(t,ge(e,3),i,!0)}function Fe(t){return(null==t?0:t.length)?I(t,1):[]}function He(t){return t&&t.length?t[0]:Ss}function Be(t){var e=null==t?0:t.length;return e?t[e-1]:Ss}function qe(t,e){return t&&t.length&&e&&e.length?rt(t,e):t}function ze(t){return null==t?t:Nr.call(t)}function Ue(e){if(!e||!e.length)return[];var n=0;return e=Xo(e,function(t){return on(t)&&(n=Ar(t.length,n),1)}),hs(n,function(t){return Qo(e,us(t))})}function Ge(t,e){if(!t||!t.length)return[];t=Ue(t);return null==e?t:Qo(t,function(t){return zo(e,Ss,t)})}function Ve(t){t=d(t);return t.__chain__=!0,t}function $e(t,e){return e(t)}function Xe(t,e){return(io(t)?Go:Zr)(t,ge(e,3))}function Ye(t,e){return(io(t)?Vo:ti)(t,ge(e,3))}function Ke(t,e){return(io(t)?Qo:K)(t,ge(e,3))}function Qe(t,e,n){return e=n?Ss:e,e=t&&null==e?t.length:e,oe(t,128,Ss,Ss,Ss,Ss,e)}function Je(t,e){var n;if("function"!=typeof e)throw new Xn(Os);return t=yn(t),function(){return 0<--t&&(n=e.apply(this,arguments)),t<=1&&(e=Ss),n}}function Ze(r,n,t){function i(t){var e=u,n=c;return u=c=Ss,d=t,h=r.apply(n,e)}function o(t){var e=t-p;return p===Ss||n<=e||e<0||m&&l<=t-d}function s(){var t,e=Gi();return o(e)?a(e):void(f=mi(s,(e=n-((t=e)-p),m?Ir(e,l-(t-d)):e)))}function a(t){return f=Ss,v&&u?i(t):(u=c=Ss,h)}function e(){var t=Gi(),e=o(t);if(u=arguments,c=this,p=t,e){if(f===Ss)return d=e=p,f=mi(s,n),g?i(e):h;if(m)return f=mi(s,n),i(p)}return f===Ss&&(f=mi(s,n)),h}var u,c,l,h,f,p,d=0,g=!1,m=!1,v=!0;if("function"!=typeof r)throw new Xn(Os);return n=wn(n)||0,ln(t)&&(g=!!t.leading,m="maxWait"in t,l=m?Ar(wn(t.maxWait)||0,n):l,v="trailing"in t?!!t.trailing:v),e.cancel=function(){f!==Ss&&si(f),d=0,u=p=c=f=Ss},e.flush=function(){return f===Ss?h:a(Gi())},e}function tn(r,i){if("function"!=typeof r||null!=i&&"function"!=typeof i)throw new Xn(Os);var o=function(){var t=arguments,e=i?i.apply(this,t):t[0],n=o.cache;if(n.has(e))return n.get(e);t=r.apply(this,t);return o.cache=n.set(e,t)||n,t};return o.cache=new(tn.Cache||s),o}function en(e){if("function"!=typeof e)throw new Xn(Os);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}function nn(t,e){return t===e||t!=t&&e!=e}function rn(t){return null!=t&&cn(t.length)&&!an(t)}function on(t){return hn(t)&&rn(t)}function sn(t){if(!hn(t))return!1;var e=M(t);return e==Ws||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!pn(t)}function an(t){if(!ln(t))return!1;t=M(t);return t==Ls||t==Fs||"[object AsyncFunction]"==t||"[object Proxy]"==t}function un(t){return"number"==typeof t&&t==yn(t)}function cn(t){return"number"==typeof t&&-1<t&&t%1==0&&t<=As}function ln(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function hn(t){return null!=t&&"object"==typeof t}function fn(t){return"number"==typeof t||hn(t)&&M(t)==Bs}function pn(t){if(!hn(t)||M(t)!=qs)return!1;t=hr(t);if(null===t)return!0;t=tr.call(t,"constructor")&&t.constructor;return"function"==typeof t&&t instanceof t&&Zn.call(t)==ir}function dn(t){return"string"==typeof t||!io(t)&&hn(t)&&M(t)==Vs}function gn(t){return"symbol"==typeof t||hn(t)&&M(t)==$s}function mn(t){if(!t)return[];if(rn(t))return(dn(t)?ks:Mt)(t);if(mr&&t[mr])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[mr]());var e=hi(t);return(e==Hs?bs:e==Gs?xs:Tn)(t)}function vn(t){return t?(t=wn(t))!==1/0&&t!==-1/0?t==t?t:0:17976931348623157e292*(t<0?-1:1):0===t?t:0}function yn(t){var e=vn(t),t=e%1;return e==e?t?e-t:e:0}function bn(t){return t?x(yn(t),0,js):0}function wn(t){if("number"==typeof t)return t;if(gn(t))return Is;if("string"!=typeof(t=ln(t)?ln(e="function"==typeof t.valueOf?t.valueOf():t)?e+"":e:t))return 0===t?t:+t;t=t.replace(xa,"");var e=Da.test(t);return e||Ra.test(t)?Ya(t.slice(2),e?2:8):Pa.test(t)?Is:+t}function _n(t){return Wt(t,On(t))}function xn(t){return null==t?"":yt(t)}function Cn(t,e,n){e=null==t?Ss:N(t,e);return e===Ss?n:e}function kn(t,e){return null!=t&&be(t,e,F)}function Sn(t){return(rn(t)?r:$)(t)}function On(t){return rn(t)?r(t,!0):X(t)}function En(t,n){if(null==t)return{};var e=Qo(fe(t),function(t){return[t]});return n=ge(n),nt(t,e,function(t,e){return n(t,e[0])})}function Tn(t){return null==t?[]:ps(t,Sn(t))}function An(t){return Lo(xn(t).toLowerCase())}function In(t){return(t=xn(t))&&t.replace(Wa,iu).replace(Ba,"")}function jn(t,e,n){return t=xn(t),(e=n?Ss:e)===Ss?(n=t,za.test(n)?t.match(qa)||[]:t.match(Ta)||[]):t.match(e)||[]}function Pn(t){return function(){return t}}function Dn(t){return t}function Nn(t){return V("function"==typeof t?t:C(t,1))}function Rn(r,e,t){var n=Sn(e),i=D(e,n);null!=t||ln(e)&&(i.length||!n.length)||(t=e,e=r,r=this,i=D(e,Sn(e)));var o=!(ln(t)&&"chain"in t&&!t.chain),s=an(r);return Go(i,function(t){var n=e[t];r[t]=n,s&&(r.prototype[t]=function(){var t=this.__chain__;if(o||t){var e=r(this.__wrapped__);return(e.__actions__=Mt(this.__actions__)).push({func:n,args:arguments,thisArg:r}),e.__chain__=t,e}return n.apply(r,Jo([this.value()],arguments))})}),r}function Mn(){}function Wn(t){return ke(t)?us(Ne(t)):(e=t,function(t){return N(t,e)});var e}function Ln(){return[]}function Fn(){return!1}var Hn=(e=null==e?Ka:au.defaults(Ka.Object(),e,au.pick(Ka,Ua))).Array,Bn=e.Date,qn=e.Error,zn=e.Function,Un=e.Math,Gn=e.Object,Vn=e.RegExp,$n=e.String,Xn=e.TypeError,Yn=Hn.prototype,Kn=zn.prototype,Qn=Gn.prototype,Jn=e["__core-js_shared__"],Zn=Kn.toString,tr=Qn.hasOwnProperty,er=0,nr=(Ho=/[^.]+$/.exec(Jn&&Jn.keys&&Jn.keys.IE_PROTO||""))?"Symbol(src)_1."+Ho:"",rr=Qn.toString,ir=Zn.call(Gn),or=Ka._,sr=Vn("^"+Zn.call(tr).replace(wa,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ar=Qa?e.Buffer:Ss,ur=e.Symbol,cr=e.Uint8Array,lr=ar?ar.allocUnsafe:Ss,hr=ws(Gn.getPrototypeOf,Gn),fr=Gn.create,pr=Qn.propertyIsEnumerable,dr=Yn.splice,gr=ur?ur.isConcatSpreadable:Ss,mr=ur?ur.iterator:Ss,vr=ur?ur.toStringTag:Ss,yr=function(){try{var t=ye(Gn,"defineProperty");return t({},"",{}),t}catch(t){}}(),br=e.clearTimeout!==Ka.clearTimeout&&e.clearTimeout,wr=Bn&&Bn.now!==Ka.Date.now&&Bn.now,_r=e.setTimeout!==Ka.setTimeout&&e.setTimeout,xr=Un.ceil,Cr=Un.floor,kr=Gn.getOwnPropertySymbols,Sr=ar?ar.isBuffer:Ss,Or=e.isFinite,Er=Yn.join,Tr=ws(Gn.keys,Gn),Ar=Un.max,Ir=Un.min,jr=Bn.now,Pr=e.parseInt,Dr=Un.random,Nr=Yn.reverse,Rr=ye(e,"DataView"),Mr=ye(e,"Map"),Wr=ye(e,"Promise"),Lr=ye(e,"Set"),Fr=ye(e,"WeakMap"),Hr=ye(Gn,"create"),Br=Fr&&new Fr,qr={},zr=Re(Rr),Ur=Re(Mr),Gr=Re(Wr),Vr=Re(Lr),$r=Re(Fr),Xr=ur?ur.prototype:Ss,Yr=Xr?Xr.valueOf:Ss,Kr=Xr?Xr.toString:Ss,Qr=function(t){if(!ln(t))return{};if(fr)return fr(t);Jr.prototype=t;t=new Jr;return Jr.prototype=Ss,t};function Jr(){}d.templateSettings={escape:pa,evaluate:da,interpolate:ga,variable:"",imports:{_:d}},(d.prototype=o.prototype).constructor=d,(g.prototype=Qr(o.prototype)).constructor=g,(m.prototype=Qr(o.prototype)).constructor=m,n.prototype.clear=function(){this.__data__=Hr?Hr(null):{},this.size=0},n.prototype.delete=function(t){return t=this.has(t)&&delete this.__data__[t],this.size-=t?1:0,t},n.prototype.get=function(t){var e=this.__data__;if(Hr){var n=e[t];return n===Es?Ss:n}return tr.call(e,t)?e[t]:Ss},n.prototype.has=function(t){var e=this.__data__;return Hr?e[t]!==Ss:tr.call(e,t)},n.prototype.set=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=Hr&&e===Ss?Es:e,this},i.prototype.clear=function(){this.__data__=[],this.size=0},i.prototype.delete=function(t){var e=this.__data__;return!((t=l(e,t))<0)&&(t==e.length-1?e.pop():dr.call(e,t,1),--this.size,!0)},i.prototype.get=function(t){var e=this.__data__;return(t=l(e,t))<0?Ss:e[t][1]},i.prototype.has=function(t){return-1<l(this.__data__,t)},i.prototype.set=function(t,e){var n=this.__data__,r=l(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},s.prototype.clear=function(){this.size=0,this.__data__={hash:new n,map:new(Mr||i),string:new n}},s.prototype.delete=function(t){return t=me(this,t).delete(t),this.size-=t?1:0,t},s.prototype.get=function(t){return me(this,t).get(t)},s.prototype.has=function(t){return me(this,t).has(t)},s.prototype.set=function(t,e){var n=me(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},v.prototype.add=v.prototype.push=function(t){return this.__data__.set(t,Es),this},v.prototype.has=function(t){return this.__data__.has(t)},w.prototype.clear=function(){this.__data__=new i,this.size=0},w.prototype.delete=function(t){var e=this.__data__,t=e.delete(t);return this.size=e.size,t},w.prototype.get=function(t){return this.__data__.get(t)},w.prototype.has=function(t){return this.__data__.has(t)},w.prototype.set=function(t,e){var n=this.__data__;if(n instanceof i){var r=n.__data__;if(!Mr||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new s(r)}return n.set(t,e),this.size=n.size,this};var Zr=Ht(j),ti=Ht(P,!0),ei=Bt(),ni=Bt(!0),ri=Br?function(t,e){return Br.set(t,e),t}:Dn,ii=yr?function(t,e){return yr(t,"toString",{configurable:!0,enumerable:!1,value:Pn(e),writable:!0})}:Dn,oi=at,si=br||function(t){return Ka.clearTimeout(t)},ai=Lr&&1/xs(new Lr([,-0]))[1]==1/0?function(t){return new Lr(t)}:Mn,ui=Br?function(t){return Br.get(t)}:Mn,ci=kr?function(e){return null==e?[]:(e=Gn(e),Xo(kr(e),function(t){return pr.call(e,t)}))}:Ln,li=kr?function(t){for(var e=[];t;)Jo(e,ci(t)),t=hr(t);return e}:Ln,hi=M;(Rr&&hi(new Rr(new ArrayBuffer(1)))!=Ks||Mr&&hi(new Mr)!=Hs||Wr&&hi(Wr.resolve())!=zs||Lr&&hi(new Lr)!=Gs||Fr&&hi(new Fr)!=Xs)&&(hi=function(t){var e=M(t),t=e==qs?t.constructor:Ss,t=t?Re(t):"";if(t)switch(t){case zr:return Ks;case Ur:return Hs;case Gr:return zs;case Vr:return Gs;case $r:return Xs}return e});var fi,pi,di=Jn?an:Fn,gi=Pe(ri),mi=_r||function(t,e){return Ka.setTimeout(t,e)},vi=Pe(ii),yi=(pi=(fi=tn(fi=function(t){var i=[];return ya.test(t)&&i.push(""),t.replace(ba,function(t,e,n,r){i.push(n?r.replace(Aa,"$1"):e||t)}),i},function(t){return 500===pi.size&&pi.clear(),t})).cache,fi),bi=at(function(t,e){return on(t)?O(t,I(e,1,on,!0)):[]}),wi=at(function(t,e){var n=Be(e);return on(n)&&(n=Ss),on(t)?O(t,I(e,1,on,!0),ge(n,2)):[]}),_i=at(function(t,e){var n=Be(e);return on(n)&&(n=Ss),on(t)?O(t,I(e,1,on,!0),Ss,n):[]}),xi=at(function(t){var e=Qo(t,Ot);return e.length&&e[0]===t[0]?H(e):[]}),Ci=at(function(t){var e=Be(t),n=Qo(t,Ot);return e===Be(n)?e=Ss:n.pop(),n.length&&n[0]===t[0]?H(n,ge(e,2)):[]}),ki=at(function(t){var e=Be(t),n=Qo(t,Ot);return(e="function"==typeof e?e:Ss)&&n.pop(),n.length&&n[0]===t[0]?H(n,Ss,e):[]}),Si=at(qe),Oi=le(function(t,e){var n=null==t?0:t.length,r=p(t,e);return it(t,Qo(e,function(t){return xe(t,n)?+t:t}).sort(Dt)),r}),Ei=at(function(t){return bt(I(t,1,on,!0))}),Ti=at(function(t){var e=Be(t);return on(e)&&(e=Ss),bt(I(t,1,on,!0),ge(e,2))}),Ai=at(function(t){var e="function"==typeof(e=Be(t))?e:Ss;return bt(I(t,1,on,!0),Ss,e)}),Ii=at(function(t,e){return on(t)?O(t,e):[]}),ji=at(function(t){return kt(Xo(t,on))}),Pi=at(function(t){var e=Be(t);return on(e)&&(e=Ss),kt(Xo(t,on),ge(e,2))}),Di=at(function(t){var e="function"==typeof(e=Be(t))?e:Ss;return kt(Xo(t,on),Ss,e)}),Ni=at(Ue),Ri=at(function(t){var e=t.length,e="function"==typeof(e=1<e?t[e-1]:Ss)?(t.pop(),e):Ss;return Ge(t,e)}),Mi=le(function(e){function t(t){return p(t,e)}var n=e.length,r=n?e[0]:0,i=this.__wrapped__;return!(1<n||this.__actions__.length)&&i instanceof m&&xe(r)?((i=i.slice(r,+r+(n?1:0))).__actions__.push({func:$e,args:[t],thisArg:Ss}),new g(i,this.__chain__).thru(function(t){return n&&!t.length&&t.push(Ss),t})):this.thru(t)}),Wi=Lt(function(t,e,n){tr.call(t,n)?++t[n]:f(t,n,1)}),Li=Vt(We),Fi=Vt(Le),Hi=Lt(function(t,e,n){tr.call(t,n)?t[n].push(e):f(t,n,[e])}),Bi=at(function(t,e,n){var r=-1,i="function"==typeof e,o=rn(t)?Hn(t.length):[];return Zr(t,function(t){o[++r]=i?zo(e,t,n):B(t,e,n)}),o}),qi=Lt(function(t,e,n){f(t,n,e)}),zi=Lt(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]}),Ui=at(function(t,e){if(null==t)return[];var n=e.length;return 1<n&&Ce(t,e[0],e[1])?e=[]:2<n&&Ce(e[0],e[1],e[2])&&(e=[e[0]]),et(t,I(e,1),[])}),Gi=wr||function(){return Ka.Date.now()},Vi=at(function(t,e,n){var r,i=1;return n.length&&(r=_s(n,de(Vi)),i|=32),oe(t,i,e,n,r)}),$i=at(function(t,e,n){var r,i=3;return n.length&&(r=_s(n,de($i)),i|=32),oe(e,i,t,n,r)}),Xi=at(function(t,e){return S(t,1,e)}),Yi=at(function(t,e,n){return S(t,wn(e)||0,n)});tn.Cache=s;var Ki,Qi=oi(function(r,i){var o=(i=1==i.length&&io(i[0])?Qo(i[0],fs(ge())):Qo(I(i,1),fs(ge()))).length;return at(function(t){for(var e=-1,n=Ir(t.length,o);++e<n;)t[e]=i[e].call(this,t[e]);return zo(r,this,t)})}),Ji=at(function(t,e){var n=_s(e,de(Ji));return oe(t,32,Ss,e,n)}),Zi=at(function(t,e){var n=_s(e,de(Zi));return oe(t,64,Ss,e,n)}),to=le(function(t,e){return oe(t,256,Ss,Ss,Ss,e)}),eo=ee(W),no=ee(function(t,e){return e<=t}),ro=q(function(){return arguments}())?q:function(t){return hn(t)&&tr.call(t,"callee")&&!pr.call(t,"callee")},io=Hn.isArray,oo=Ja?fs(Ja):function(t){return hn(t)&&M(t)==Ys},so=Sr||Fn,ao=Za?fs(Za):function(t){return hn(t)&&M(t)==Ms},uo=tu?fs(tu):function(t){return hn(t)&&hi(t)==Hs},co=eu?fs(eu):function(t){return hn(t)&&M(t)==Us},lo=nu?fs(nu):function(t){return hn(t)&&hi(t)==Gs},ho=ru?fs(ru):function(t){return hn(t)&&cn(t.length)&&!!Va[M(t)]},fo=ee(Y),po=ee(function(t,e){return t<=e}),go=Ft(function(t,e){if(Oe(e)||rn(e))Wt(e,Sn(e),t);else for(var n in e)tr.call(e,n)&&y(t,n,e[n])}),mo=Ft(function(t,e){Wt(e,On(e),t)}),vo=Ft(function(t,e,n,r){Wt(e,On(e),t,r)}),yo=Ft(function(t,e,n,r){Wt(e,Sn(e),t,r)}),bo=le(p),wo=at(function(t){return t.push(Ss,se),zo(vo,Ss,t)}),_o=at(function(t){return t.push(Ss,ae),zo(Oo,Ss,t)}),xo=Yt(function(t,e,n){t[e]=n},Pn(Dn)),Co=Yt(function(t,e,n){tr.call(t,e)?t[e].push(n):t[e]=[n]},ge),ko=at(B),So=Ft(function(t,e,n){Z(t,e,n)}),Oo=Ft(function(t,e,n,r){Z(t,e,n,r)}),Eo=le(function(e,t){var n={};if(null==e)return n;var r=!1;t=Qo(t,function(t){return t=Tt(t,e),r=r||1<t.length,t}),Wt(e,fe(e),n),r&&(n=C(n,7,ue));for(var i=t.length;i--;)wt(n,t[i]);return n}),To=le(function(t,e){return null==t?{}:nt(n=t,e,function(t,e){return kn(n,e)});var n}),Ao=ie(Sn),Io=ie(On),jo=zt(function(t,e,n){return e=e.toLowerCase(),t+(n?An(e):e)}),Po=zt(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),Do=zt(function(t,e,n){return t+(n?" ":"")+e.toLowerCase()}),No=qt("toLowerCase"),Ro=zt(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}),Mo=zt(function(t,e,n){return t+(n?" ":"")+Lo(e)}),Wo=zt(function(t,e,n){return t+(n?" ":"")+e.toUpperCase()}),Lo=qt("toUpperCase"),Fo=at(function(t,e){try{return zo(t,Ss,e)}catch(t){return sn(t)?t:new qn(t)}}),Kn=le(function(e,t){return Go(t,function(t){t=Ne(t),f(e,t,Vi(e[t],e))}),e}),Ho=$t(),ar=$t(!0),Bn=at(function(e,n){return function(t){return B(t,e,n)}}),e=at(function(e,n){return function(t){return B(e,t,n)}}),ur=Qt(Qo),Xr=Qt($o),br=Qt(es),Rr=te(),Wr=te(!0),Fr=Kt(function(t,e){return t+e},0),Jn=re("ceil"),_r=Kt(function(t,e){return t/e},1),ii=re("floor"),wr=Kt(function(t,e){return t*e},1),oi=re("round"),Sr=Kt(function(t,e){return t-e},0);return d.after=function(t,e){if("function"!=typeof e)throw new Xn(Os);return t=yn(t),function(){if(--t<1)return e.apply(this,arguments)}},d.ary=Qe,d.assign=go,d.assignIn=mo,d.assignInWith=vo,d.assignWith=yo,d.at=bo,d.before=Je,d.bind=Vi,d.bindAll=Kn,d.bindKey=$i,d.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return io(t)?t:[t]},d.chain=Ve,d.chunk=function(t,e,n){e=(n?Ce(t,e,n):e===Ss)?1:Ar(yn(e),0);var r=null==t?0:t.length;if(!r||e<1)return[];for(var i=0,o=0,s=Hn(xr(r/e));i<r;)s[o++]=ft(t,i,i+=e);return s},d.compact=function(t){for(var e=-1,n=null==t?0:t.length,r=0,i=[];++e<n;){var o=t[e];o&&(i[r++]=o)}return i},d.concat=function(){var t=arguments.length;if(!t)return[];for(var e=Hn(t-1),n=arguments[0],r=t;r--;)e[r-1]=arguments[r];return Jo(io(n)?Mt(n):[n],I(e,1))},d.cond=function(r){var i=null==r?0:r.length,e=ge();return r=i?Qo(r,function(t){if("function"!=typeof t[1])throw new Xn(Os);return[e(t[0]),t[1]]}):[],at(function(t){for(var e=-1;++e<i;){var n=r[e];if(zo(n[0],this,t))return zo(n[1],this,t)}})},d.conforms=function(t){return e=C(t,1),n=Sn(e),function(t){return k(t,e,n)};var e,n},d.constant=Pn,d.countBy=Wi,d.create=function(t,e){return t=Qr(t),null==e?t:b(t,e)},d.curry=function t(e,n,r){n=oe(e,8,Ss,Ss,Ss,Ss,Ss,n=r?Ss:n);return n.placeholder=t.placeholder,n},d.curryRight=function t(e,n,r){n=oe(e,16,Ss,Ss,Ss,Ss,Ss,n=r?Ss:n);return n.placeholder=t.placeholder,n},d.debounce=Ze,d.defaults=wo,d.defaultsDeep=_o,d.defer=Xi,d.delay=Yi,d.difference=bi,d.differenceBy=wi,d.differenceWith=_i,d.drop=function(t,e,n){var r=null==t?0:t.length;return r?ft(t,(e=n||e===Ss?1:yn(e))<0?0:e,r):[]},d.dropRight=function(t,e,n){var r=null==t?0:t.length;return r?ft(t,0,(e=r-(e=n||e===Ss?1:yn(e)))<0?0:e):[]},d.dropRightWhile=function(t,e){return t&&t.length?xt(t,ge(e,3),!0,!0):[]},d.dropWhile=function(t,e){return t&&t.length?xt(t,ge(e,3),!0):[]},d.fill=function(t,e,n,r){var i=null==t?0:t.length;return i?(n&&"number"!=typeof n&&Ce(t,e,n)&&(n=0,r=i),function(t,e,n,r){var i=t.length;for((n=yn(n))<0&&(n=i<-n?0:i+n),(r=r===Ss||i<r?i:yn(r))<0&&(r+=i),r=r<n?0:bn(r);n<r;)t[n++]=e;return t}(t,e,n,r)):[]},d.filter=function(t,e){return(io(t)?Xo:A)(t,ge(e,3))},d.flatMap=function(t,e){return I(Ke(t,e),1)},d.flatMapDeep=function(t,e){return I(Ke(t,e),1/0)},d.flatMapDepth=function(t,e,n){return n=n===Ss?1:yn(n),I(Ke(t,e),n)},d.flatten=Fe,d.flattenDeep=function(t){return(null==t?0:t.length)?I(t,1/0):[]},d.flattenDepth=function(t,e){return(null==t?0:t.length)?I(t,e=e===Ss?1:yn(e)):[]},d.flip=function(t){return oe(t,512)},d.flow=Ho,d.flowRight=ar,d.fromPairs=function(t){for(var e=-1,n=null==t?0:t.length,r={};++e<n;){var i=t[e];r[i[0]]=i[1]}return r},d.functions=function(t){return null==t?[]:D(t,Sn(t))},d.functionsIn=function(t){return null==t?[]:D(t,On(t))},d.groupBy=Hi,d.initial=function(t){return(null==t?0:t.length)?ft(t,0,-1):[]},d.intersection=xi,d.intersectionBy=Ci,d.intersectionWith=ki,d.invert=xo,d.invertBy=Co,d.invokeMap=Bi,d.iteratee=Nn,d.keyBy=qi,d.keys=Sn,d.keysIn=On,d.map=Ke,d.mapKeys=function(t,r){var i={};return r=ge(r,3),j(t,function(t,e,n){f(i,r(t,e,n),t)}),i},d.mapValues=function(t,r){var i={};return r=ge(r,3),j(t,function(t,e,n){f(i,e,r(t,e,n))}),i},d.matches=function(t){return Q(C(t,1))},d.matchesProperty=function(t,e){return J(t,C(e,1))},d.memoize=tn,d.merge=So,d.mergeWith=Oo,d.method=Bn,d.methodOf=e,d.mixin=Rn,d.negate=en,d.nthArg=function(e){return e=yn(e),at(function(t){return tt(t,e)})},d.omit=Eo,d.omitBy=function(t,e){return En(t,en(ge(e)))},d.once=function(t){return Je(2,t)},d.orderBy=function(t,e,n,r){return null==t?[]:et(t,e=!io(e)?null==e?[]:[e]:e,n=!io(n=r?Ss:n)?null==n?[]:[n]:n)},d.over=ur,d.overArgs=Qi,d.overEvery=Xr,d.overSome=br,d.partial=Ji,d.partialRight=Zi,d.partition=zi,d.pick=To,d.pickBy=En,d.property=Wn,d.propertyOf=function(e){return function(t){return null==e?Ss:N(e,t)}},d.pull=Si,d.pullAll=qe,d.pullAllBy=function(t,e,n){return t&&t.length&&e&&e.length?rt(t,e,ge(n,2)):t},d.pullAllWith=function(t,e,n){return t&&t.length&&e&&e.length?rt(t,e,Ss,n):t},d.pullAt=Oi,d.range=Rr,d.rangeRight=Wr,d.rearg=to,d.reject=function(t,e){return(io(t)?Xo:A)(t,en(ge(e,3)))},d.remove=function(t,e){var n=[];if(!t||!t.length)return n;var r=-1,i=[],o=t.length;for(e=ge(e,3);++r<o;){var s=t[r];e(s,r,t)&&(n.push(s),i.push(r))}return it(t,i),n},d.rest=function(t,e){if("function"!=typeof t)throw new Xn(Os);return at(t,e=e===Ss?e:yn(e))},d.reverse=ze,d.sampleSize=function(t,e,n){return e=(n?Ce(t,e,n):e===Ss)?1:yn(e),(io(t)?u:ct)(t,e)},d.set=function(t,e,n){return null==t?t:lt(t,e,n)},d.setWith=function(t,e,n,r){return r="function"==typeof r?r:Ss,null==t?t:lt(t,e,n,r)},d.shuffle=function(t){return(io(t)?c:ht)(t)},d.slice=function(t,e,n){var r=null==t?0:t.length;return r?(n=n&&"number"!=typeof n&&Ce(t,e,n)?(e=0,r):(e=null==e?0:yn(e),n===Ss?r:yn(n)),ft(t,e,n)):[]},d.sortBy=Ui,d.sortedUniq=function(t){return t&&t.length?mt(t):[]},d.sortedUniqBy=function(t,e){return t&&t.length?mt(t,ge(e,2)):[]},d.split=function(t,e,n){return n&&"number"!=typeof n&&Ce(t,e,n)&&(e=n=Ss),(n=n===Ss?js:n>>>0)?(t=xn(t))&&("string"==typeof e||null!=e&&!co(e))&&(!(e=yt(e))&&ys(t))?At(ks(t),0,n):t.split(e,n):[]},d.spread=function(n,r){if("function"!=typeof n)throw new Xn(Os);return r=null==r?0:Ar(yn(r),0),at(function(t){var e=t[r],t=At(t,0,r);return e&&Jo(t,e),zo(n,this,t)})},d.tail=function(t){var e=null==t?0:t.length;return e?ft(t,1,e):[]},d.take=function(t,e,n){return t&&t.length?ft(t,0,(e=n||e===Ss?1:yn(e))<0?0:e):[]},d.takeRight=function(t,e,n){var r=null==t?0:t.length;return r?ft(t,(e=r-(e=n||e===Ss?1:yn(e)))<0?0:e,r):[]},d.takeRightWhile=function(t,e){return t&&t.length?xt(t,ge(e,3),!1,!0):[]},d.takeWhile=function(t,e){return t&&t.length?xt(t,ge(e,3)):[]},d.tap=function(t,e){return e(t),t},d.throttle=function(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new Xn(Os);return ln(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Ze(t,e,{leading:r,maxWait:e,trailing:i})},d.thru=$e,d.toArray=mn,d.toPairs=Ao,d.toPairsIn=Io,d.toPath=function(t){return io(t)?Qo(t,Ne):gn(t)?[t]:Mt(yi(xn(t)))},d.toPlainObject=_n,d.transform=function(t,r,i){var e,n=io(t),o=n||so(t)||ho(t);return r=ge(r,4),null==i&&(e=t&&t.constructor,i=o?n?new e:[]:ln(t)&&an(e)?Qr(hr(t)):{}),(o?Go:j)(t,function(t,e,n){return r(i,t,e,n)}),i},d.unary=function(t){return Qe(t,1)},d.union=Ei,d.unionBy=Ti,d.unionWith=Ai,d.uniq=function(t){return t&&t.length?bt(t):[]},d.uniqBy=function(t,e){return t&&t.length?bt(t,ge(e,2)):[]},d.uniqWith=function(t,e){return e="function"==typeof e?e:Ss,t&&t.length?bt(t,Ss,e):[]},d.unset=function(t,e){return null==t||wt(t,e)},d.unzip=Ue,d.unzipWith=Ge,d.update=function(t,e,n){return null==t?t:_t(t,e,Et(n))},d.updateWith=function(t,e,n,r){return r="function"==typeof r?r:Ss,null==t?t:_t(t,e,Et(n),r)},d.values=Tn,d.valuesIn=function(t){return null==t?[]:ps(t,On(t))},d.without=Ii,d.words=jn,d.wrap=function(t,e){return Ji(Et(e),t)},d.xor=ji,d.xorBy=Pi,d.xorWith=Di,d.zip=Ni,d.zipObject=function(t,e){return St(t||[],e||[],y)},d.zipObjectDeep=function(t,e){return St(t||[],e||[],lt)},d.zipWith=Ri,d.entries=Ao,d.entriesIn=Io,d.extend=mo,d.extendWith=vo,Rn(d,d),d.add=Fr,d.attempt=Fo,d.camelCase=jo,d.capitalize=An,d.ceil=Jn,d.clamp=function(t,e,n){return n===Ss&&(n=e,e=Ss),n!==Ss&&(n=(n=wn(n))==n?n:0),e!==Ss&&(e=(e=wn(e))==e?e:0),x(wn(t),e,n)},d.clone=function(t){return C(t,4)},d.cloneDeep=function(t){return C(t,5)},d.cloneDeepWith=function(t,e){return C(t,5,e="function"==typeof e?e:Ss)},d.cloneWith=function(t,e){return C(t,4,e="function"==typeof e?e:Ss)},d.conformsTo=function(t,e){return null==e||k(t,e,Sn(e))},d.deburr=In,d.defaultTo=function(t,e){return null==t||t!=t?e:t},d.divide=_r,d.endsWith=function(t,e,n){t=xn(t),e=yt(e);var r=t.length,r=n=n===Ss?r:x(yn(n),0,r);return 0<=(n-=e.length)&&t.slice(n,r)==e},d.eq=nn,d.escape=function(t){return(t=xn(t))&&fa.test(t)?t.replace(la,ou):t},d.escapeRegExp=function(t){return(t=xn(t))&&_a.test(t)?t.replace(wa,"\\$&"):t},d.every=function(t,e,n){return(io(t)?$o:E)(t,ge(e=n&&Ce(t,e,n)?Ss:e,3))},d.find=Li,d.findIndex=We,d.findKey=function(t,e){return ns(t,ge(e,3),j)},d.findLast=Fi,d.findLastIndex=Le,d.findLastKey=function(t,e){return ns(t,ge(e,3),P)},d.floor=ii,d.forEach=Xe,d.forEachRight=Ye,d.forIn=function(t,e){return null==t?t:ei(t,ge(e,3),On)},d.forInRight=function(t,e){return null==t?t:ni(t,ge(e,3),On)},d.forOwn=function(t,e){return t&&j(t,ge(e,3))},d.forOwnRight=function(t,e){return t&&P(t,ge(e,3))},d.get=Cn,d.gt=eo,d.gte=no,d.has=function(t,e){return null!=t&&be(t,e,L)},d.hasIn=kn,d.head=He,d.identity=Dn,d.includes=function(t,e,n,r){return t=rn(t)?t:Tn(t),n=n&&!r?yn(n):0,r=t.length,n<0&&(n=Ar(r+n,0)),dn(t)?n<=r&&-1<t.indexOf(e,n):!!r&&-1<is(t,e,n)},d.indexOf=function(t,e,n){var r=null==t?0:t.length;return r?(n=null==n?0:yn(n),is(t,e,n=n<0?Ar(r+n,0):n)):-1},d.inRange=function(t,e,n){return e=vn(e),n===Ss?(n=e,e=0):n=vn(n),(t=t=wn(t))>=Ir(e=e,n=n)&&t<Ar(e,n)},d.invoke=ko,d.isArguments=ro,d.isArray=io,d.isArrayBuffer=oo,d.isArrayLike=rn,d.isArrayLikeObject=on,d.isBoolean=function(t){return!0===t||!1===t||hn(t)&&M(t)==Rs},d.isBuffer=so,d.isDate=ao,d.isElement=function(t){return hn(t)&&1===t.nodeType&&!pn(t)},d.isEmpty=function(t){if(null==t)return!0;if(rn(t)&&(io(t)||"string"==typeof t||"function"==typeof t.splice||so(t)||ho(t)||ro(t)))return!t.length;var e,n=hi(t);if(n==Hs||n==Gs)return!t.size;if(Oe(t))return!$(t).length;for(e in t)if(tr.call(t,e))return!1;return!0},d.isEqual=function(t,e){return z(t,e)},d.isEqualWith=function(t,e,n){var r=(n="function"==typeof n?n:Ss)?n(t,e):Ss;return r===Ss?z(t,e,Ss,n):!!r},d.isError=sn,d.isFinite=function(t){return"number"==typeof t&&Or(t)},d.isFunction=an,d.isInteger=un,d.isLength=cn,d.isMap=uo,d.isMatch=function(t,e){return t===e||U(t,e,ve(e))},d.isMatchWith=function(t,e,n){return n="function"==typeof n?n:Ss,U(t,e,ve(e),n)},d.isNaN=function(t){return fn(t)&&t!=+t},d.isNative=function(t){if(di(t))throw new qn("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return G(t)},d.isNil=function(t){return null==t},d.isNull=function(t){return null===t},d.isNumber=fn,d.isObject=ln,d.isObjectLike=hn,d.isPlainObject=pn,d.isRegExp=co,d.isSafeInteger=function(t){return un(t)&&-As<=t&&t<=As},d.isSet=lo,d.isString=dn,d.isSymbol=gn,d.isTypedArray=ho,d.isUndefined=function(t){return t===Ss},d.isWeakMap=function(t){return hn(t)&&hi(t)==Xs},d.isWeakSet=function(t){return hn(t)&&"[object WeakSet]"==M(t)},d.join=function(t,e){return null==t?"":Er.call(t,e)},d.kebabCase=Po,d.last=Be,d.lastIndexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=r;return n!==Ss&&(i=(i=yn(n))<0?Ar(r+i,0):Ir(i,r-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,i):rs(t,ss,i,!0)},d.lowerCase=Do,d.lowerFirst=No,d.lt=fo,d.lte=po,d.max=function(t){return t&&t.length?T(t,Dn,W):Ss},d.maxBy=function(t,e){return t&&t.length?T(t,ge(e,2),W):Ss},d.mean=function(t){return as(t,Dn)},d.meanBy=function(t,e){return as(t,ge(e,2))},d.min=function(t){return t&&t.length?T(t,Dn,Y):Ss},d.minBy=function(t,e){return t&&t.length?T(t,ge(e,2),Y):Ss},d.stubArray=Ln,d.stubFalse=Fn,d.stubObject=function(){return{}},d.stubString=function(){return""},d.stubTrue=function(){return!0},d.multiply=wr,d.nth=function(t,e){return t&&t.length?tt(t,yn(e)):Ss},d.noConflict=function(){return Ka._===this&&(Ka._=or),this},d.noop=Mn,d.now=Gi,d.pad=function(t,e,n){t=xn(t);var r=(e=yn(e))?Cs(t):0;return!e||e<=r?t:Jt(Cr(r=(e-r)/2),n)+t+Jt(xr(r),n)},d.padEnd=function(t,e,n){t=xn(t);var r=(e=yn(e))?Cs(t):0;return e&&r<e?t+Jt(e-r,n):t},d.padStart=function(t,e,n){t=xn(t);var r=(e=yn(e))?Cs(t):0;return e&&r<e?Jt(e-r,n)+t:t},d.parseInt=function(t,e,n){return e=n||null==e?0:e&&+e,Pr(xn(t).replace(Ca,""),e||0)},d.random=function(t,e,n){var r;if(n&&"boolean"!=typeof n&&Ce(t,e,n)&&(e=n=Ss),n===Ss&&("boolean"==typeof e?(n=e,e=Ss):"boolean"==typeof t&&(n=t,t=Ss)),t===Ss&&e===Ss?(t=0,e=1):(t=vn(t),e===Ss?(e=t,t=0):e=vn(e)),e<t&&(r=t,t=e,e=r),n||t%1||e%1){n=Dr();return Ir(t+n*(e-t+Xa("1e-"+((n+"").length-1))),e)}return ot(t,e)},d.reduce=function(t,e,n){var r=io(t)?Zo:cs,i=arguments.length<3;return r(t,ge(e,4),n,i,Zr)},d.reduceRight=function(t,e,n){var r=io(t)?ts:cs,i=arguments.length<3;return r(t,ge(e,4),n,i,ti)},d.repeat=function(t,e,n){return e=(n?Ce(t,e,n):e===Ss)?1:yn(e),st(xn(t),e)},d.replace=function(){var t=arguments,e=xn(t[0]);return t.length<3?e:e.replace(t[1],t[2])},d.result=function(t,e,n){var r=-1,i=(e=Tt(e,t)).length;for(i||(i=1,t=Ss);++r<i;){var o=null==t?Ss:t[Ne(e[r])];o===Ss&&(r=i,o=n),t=an(o)?o.call(t):o}return t},d.round=oi,d.runInContext=t,d.sample=function(t){return(io(t)?a:ut)(t)},d.size=function(t){if(null==t)return 0;if(rn(t))return dn(t)?Cs(t):t.length;var e=hi(t);return e==Hs||e==Gs?t.size:$(t).length},d.snakeCase=Ro,d.some=function(t,e,n){return(io(t)?es:pt)(t,ge(e=n&&Ce(t,e,n)?Ss:e,3))},d.sortedIndex=function(t,e){return dt(t,e)},d.sortedIndexBy=function(t,e,n){return gt(t,e,ge(n,2))},d.sortedIndexOf=function(t,e){var n=null==t?0:t.length;if(n){var r=dt(t,e);if(r<n&&nn(t[r],e))return r}return-1},d.sortedLastIndex=function(t,e){return dt(t,e,!0)},d.sortedLastIndexBy=function(t,e,n){return gt(t,e,ge(n,2),!0)},d.sortedLastIndexOf=function(t,e){if(null==t?0:t.length){var n=dt(t,e,!0)-1;if(nn(t[n],e))return n}return-1},d.startCase=Mo,d.startsWith=function(t,e,n){return t=xn(t),n=null==n?0:x(yn(n),0,t.length),e=yt(e),t.slice(n,n+e.length)==e},d.subtract=Sr,d.sum=function(t){return t&&t.length?ls(t,Dn):0},d.sumBy=function(t,e){return t&&t.length?ls(t,ge(e,2)):0},d.template=function(s,t,e){var n=d.templateSettings;e&&Ce(s,t,e)&&(t=Ss),s=xn(s),t=vo({},t,n,se);var a,u,r=Sn(n=vo({},t.imports,n.imports,se)),i=ps(n,r),c=0,n=t.interpolate||La,l="__p += '",n=Vn((t.escape||La).source+"|"+n.source+"|"+(n===ga?Ia:La).source+"|"+(t.evaluate||La).source+"|$","g"),o="//# sourceURL="+("sourceURL"in t?t.sourceURL:"lodash.templateSources["+ ++Ga+"]")+"\n";if(s.replace(n,function(t,e,n,r,i,o){return n=n||r,l+=s.slice(c,o).replace(Fa,vs),e&&(a=!0,l+="' +\n__e("+e+") +\n'"),i&&(u=!0,l+="';\n"+i+";\n__p += '"),n&&(l+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),c=o+t.length,t}),l+="';\n",(t=t.variable)||(l="with (obj) {\n"+l+"\n}\n"),l=(u?l.replace(sa,""):l).replace(aa,"$1").replace(ua,"$1;"),l="function("+(t||"obj")+") {\n"+(t?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(u?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+l+"return __p\n}",(t=Fo(function(){return zn(r,o+"return "+l).apply(Ss,i)})).source=l,sn(t))throw t;return t},d.times=function(t,e){if((t=yn(t))<1||As<t)return[];var n=js,r=Ir(t,js);for(e=ge(e),t-=js,r=hs(r,e);++n<t;)e(n);return r},d.toFinite=vn,d.toInteger=yn,d.toLength=bn,d.toLower=function(t){return xn(t).toLowerCase()},d.toNumber=wn,d.toSafeInteger=function(t){return t?x(yn(t),-As,As):0===t?t:0},d.toString=xn,d.toUpper=function(t){return xn(t).toUpperCase()},d.trim=function(t,e,n){return(t=xn(t))&&(n||e===Ss)?t.replace(xa,""):t&&(e=yt(e))?(t=ks(t),e=ks(e),At(t,gs(t,e),ms(t,e)+1).join("")):t},d.trimEnd=function(t,e,n){return(t=xn(t))&&(n||e===Ss)?t.replace(ka,""):t&&(e=yt(e))?At(t=ks(t),0,ms(t,ks(e))+1).join(""):t},d.trimStart=function(t,e,n){return(t=xn(t))&&(n||e===Ss)?t.replace(Ca,""):t&&(e=yt(e))?At(t=ks(t),gs(t,ks(e))).join(""):t},d.truncate=function(t,e){var n,r=30,i="...";ln(e)&&(n="separator"in e?e.separator:n,r="length"in e?yn(e.length):r,i="omission"in e?yt(e.omission):i);var o,e=(t=xn(t)).length;if((e=ys(t)?(o=ks(t)).length:e)<=r)return t;if((e=r-Cs(i))<1)return i;if(r=o?At(o,0,e).join(""):t.slice(0,e),n===Ss)return r+i;if(o&&(e+=r.length-e),co(n)){if(t.slice(e).search(n)){var s,a=r;for((n=!n.global?Vn(n.source,xn(ja.exec(n))+"g"):n).lastIndex=0;s=n.exec(a);)var u=s.index;r=r.slice(0,u===Ss?e:u)}}else t.indexOf(yt(n),e)==e||-1<(e=r.lastIndexOf(n))&&(r=r.slice(0,e));return r+i},d.unescape=function(t){return(t=xn(t))&&ha.test(t)?t.replace(ca,su):t},d.uniqueId=function(t){var e=++er;return xn(t)+e},d.upperCase=Wo,d.upperFirst=Lo,d.each=Xe,d.eachRight=Ye,d.first=He,Rn(d,(Ki={},j(d,function(t,e){tr.call(d.prototype,e)||(Ki[e]=t)}),Ki),{chain:!1}),d.VERSION="4.17.4",Go(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){d[t].placeholder=d}),Go(["drop","take"],function(n,r){m.prototype[n]=function(t){t=t===Ss?1:Ar(yn(t),0);var e=this.__filtered__&&!r?new m(this):this.clone();return e.__filtered__?e.__takeCount__=Ir(t,e.__takeCount__):e.__views__.push({size:Ir(t,js),type:n+(e.__dir__<0?"Right":"")}),e},m.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse()}}),Go(["filter","map","takeWhile"],function(t,e){var n=e+1,r=1==n||3==n;m.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:ge(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}}),Go(["head","last"],function(t,e){var n="take"+(e?"Right":"");m.prototype[t]=function(){return this[n](1).value()[0]}}),Go(["initial","tail"],function(t,e){var n="drop"+(e?"":"Right");m.prototype[t]=function(){return this.__filtered__?new m(this):this[n](1)}}),m.prototype.compact=function(){return this.filter(Dn)},m.prototype.find=function(t){return this.filter(t).head()},m.prototype.findLast=function(t){return this.reverse().find(t)},m.prototype.invokeMap=at(function(e,n){return"function"==typeof e?new m(this):this.map(function(t){return B(t,e,n)})}),m.prototype.reject=function(t){return this.filter(en(ge(t)))},m.prototype.slice=function(t,e){t=yn(t);var n=this;return n.__filtered__&&(0<t||e<0)?new m(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),n=e!==Ss?(e=yn(e))<0?n.dropRight(-e):n.take(e-t):n)},m.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},m.prototype.toArray=function(){return this.take(js)},j(m.prototype,function(c,t){var l=/^(?:filter|find|map|reject)|While$/.test(t),h=/^(?:head|last)$/.test(t),f=d[h?"take"+("last"==t?"Right":""):t],p=h||/^find/.test(t);f&&(d.prototype[t]=function(){function t(t){return t=f.apply(d,Jo([t],n)),h&&s?t[0]:t}var e=this.__wrapped__,n=h?[1]:arguments,r=e instanceof m,i=n[0],o=r||io(e);o&&l&&"function"==typeof i&&1!=i.length&&(r=o=!1);var s=this.__chain__,a=!!this.__actions__.length,i=p&&!s,a=r&&!a;if(p||!o)return i&&a?c.apply(this,n):(u=this.thru(t),i?h?u.value()[0]:u.value():u);var e=a?e:new m(this),u=c.apply(e,n);return u.__actions__.push({func:$e,args:[t],thisArg:Ss}),new g(u,s)})}),Go(["pop","push","shift","sort","splice","unshift"],function(t){var n=Yn[t],r=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",i=/^(?:pop|shift)$/.test(t);d.prototype[t]=function(){var e=arguments;if(!i||this.__chain__)return this[r](function(t){return n.apply(io(t)?t:[],e)});var t=this.value();return n.apply(io(t)?t:[],e)}}),j(m.prototype,function(t,e){var n,r=d[e];r&&(n=r.name+"",(qr[n]||(qr[n]=[])).push({name:e,func:r}))}),qr[Xt(Ss,2).name]=[{name:"wrapper",func:Ss}],m.prototype.clone=function(){var t=new m(this.__wrapped__);return t.__actions__=Mt(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Mt(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Mt(this.__views__),t},m.prototype.reverse=function(){var t;return this.__filtered__?((t=new m(this)).__dir__=-1,t.__filtered__=!0):(t=this.clone()).__dir__*=-1,t},m.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=io(t),r=e<0,i=n?t.length:0,o=function(t,e,n){for(var r=-1,i=n.length;++r<i;){var o=n[r],s=o.size;switch(o.type){case"drop":t+=s;break;case"dropRight":e-=s;break;case"take":e=Ir(e,t+s);break;case"takeRight":t=Ar(t,e-s)}}return{start:t,end:e}}(0,i,this.__views__),s=o.start,a=(o=o.end)-s,u=r?o:s-1,c=this.__iteratees__,l=c.length,h=0,f=Ir(a,this.__takeCount__);if(!n||!r&&i==a&&f==a)return Ct(t,this.__actions__);var p=[];t:for(;a--&&h<f;){for(var d=-1,g=t[u+=e];++d<l;){var m=c[d],v=m.iteratee,m=m.type,v=v(g);if(2==m)g=v;else if(!v){if(1==m)continue t;break t}}p[h++]=g}return p},d.prototype.at=Mi,d.prototype.chain=function(){return Ve(this)},d.prototype.commit=function(){return new g(this.value(),this.__chain__)},d.prototype.next=function(){this.__values__===Ss&&(this.__values__=mn(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?Ss:this.__values__[this.__index__++]}},d.prototype.plant=function(t){for(var e,n=this;n instanceof o;){var r=Me(n);r.__index__=0,r.__values__=Ss,e?i.__wrapped__=r:e=r;var i=r,n=n.__wrapped__}return i.__wrapped__=t,e},d.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof m){t=t;return(t=(t=this.__actions__.length?new m(this):t).reverse()).__actions__.push({func:$e,args:[ze],thisArg:Ss}),new g(t,this.__chain__)}return this.thru(ze)},d.prototype.toJSON=d.prototype.valueOf=d.prototype.value=function(){return Ct(this.__wrapped__,this.__actions__)},d.prototype.first=d.prototype.head,mr&&(d.prototype[mr]=function(){return this}),d}();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Ka._=au,define(function(){return au})):n?((n.exports=au)._=au,s._=au):Ka._=au}.call(this),function(t,e){"object"==typeof exports?module.exports=e():"function"==typeof define&&define.amd?define(e):t.jStat=e()}(this,function(){var p,d,_,x,m,g,a,u,i,e,c,l,h,o,n,f=function(a,u){var e=Array.prototype.concat,t=Array.prototype.slice,n=Object.prototype.toString;function c(t,e){e=e<t?t:e;return a.pow(10,17-~~(a.log(0<e?e:-e)*a.LOG10E))}var l=Array.isArray||function(t){return"[object Array]"===n.call(t)};function h(t){return"[object Function]"===n.call(t)}function f(t){return"number"==typeof t&&t-t==0}function p(){return new p._init(arguments)}function r(){return 0}function i(){return 1}function o(t,e){return t===e?1:0}function s(t,e,n,r){var i,o=[],s=t.length;if(e===u&&n===u&&r===u)return p.copy(t);if(r=r||1,(e=0<=(e=e||0)?e:s+e)===(n=0<=(n=n||t.length)?n:s+n)||0===r)return[];if(e<n&&r<0)return[];if(n<e&&0<r)return[];if(0<r)for(i=e;i<n;i+=r)o.push(t[i]);else for(i=e;n<i;i+=r)o.push(t[i]);return o}p.fn=p.prototype,p._init=function(t){if(l(t[0]))if(l(t[0][0])){h(t[1])&&(t[0]=p.map(t[0],t[1]));for(var e=0;e<t[0].length;e++)this[e]=t[0][e];this.length=t[0].length}else this[0]=h(t[1])?p.map(t[0],t[1]):t[0],this.length=1;else if(f(t[0]))this[0]=p.seq.apply(null,t),this.length=1;else{if(t[0]instanceof p)return p(t[0].toArray());this[0]=[],this.length=1}return this},p._init.prototype=p.prototype,(p._init.constructor=p).utils={calcRdx:c,isArray:l,isFunction:h,isNumber:f,toVector:function(t){return e.apply([],t)}},p._random_fn=a.random,p.setRandom=function(t){if("function"!=typeof t)throw new TypeError("fn is not a function");p._random_fn=t},p.extend=function(t){var e,n;if(1===arguments.length){for(n in t)p[n]=t[n];return this}for(e=1;e<arguments.length;e++)for(n in arguments[e])t[n]=arguments[e][n];return t},p.rows=function(t){return t.length||1},p.cols=function(t){return t[0].length||1},p.dimensions=function(t){return{rows:p.rows(t),cols:p.cols(t)}},p.row=function(e,t){return l(t)?t.map(function(t){return p.row(e,t)}):e[t]},p.rowa=function(t,e){return p.row(t,e)},p.col=function(r,t){if(l(t)){var i=p.arange(r.length).map(function(){return new Array(t.length)});return t.forEach(function(e,n){p.arange(r.length).forEach(function(t){i[t][n]=r[t][e]})}),i}for(var e=new Array(r.length),n=0;n<r.length;n++)e[n]=[r[n][t]];return e},p.cola=function(t,e){return p.col(t,e).map(function(t){return t[0]})},p.diag=function(t){for(var e=p.rows(t),n=new Array(e),r=0;r<e;r++)n[r]=[t[r][r]];return n},p.antidiag=function(t){for(var e=p.rows(t)-1,n=new Array(e),r=0;0<=e;e--,r++)n[r]=[t[r][e]];return n},p.transpose=function(t){for(var e,n,r=[],i=(t=!l(t[0])?[t]:t).length,o=t[0].length,s=0;s<o;s++){for(e=new Array(i),n=0;n<i;n++)e[n]=t[n][s];r.push(e)}return 1===r.length?r[0]:r},p.map=function(t,e,n){for(var r,i=(t=!l(t[0])?[t]:t).length,o=t[0].length,s=n?t:new Array(i),a=0;a<i;a++)for(s[a]||(s[a]=new Array(o)),r=0;r<o;r++)s[a][r]=e(t[a][r],a,r);return 1===s.length?s[0]:s},p.cumreduce=function(t,e,n){for(var r,i=(t=!l(t[0])?[t]:t).length,o=t[0].length,s=n?t:new Array(i),a=0;a<i;a++)for(s[a]||(s[a]=new Array(o)),0<o&&(s[a][0]=t[a][0]),r=1;r<o;r++)s[a][r]=e(s[a][r-1],t[a][r]);return 1===s.length?s[0]:s},p.alter=function(t,e){return p.map(t,e,!0)},p.create=function(t,e,n){var r,i,o=new Array(t);for(h(e)&&(n=e,e=t),r=0;r<t;r++)for(o[r]=new Array(e),i=0;i<e;i++)o[r][i]=n(r,i);return o},p.zeros=function(t,e){return f(e)||(e=t),p.create(t,e,r)},p.ones=function(t,e){return f(e)||(e=t),p.create(t,e,i)},p.rand=function(t,e){return f(e)||(e=t),p.create(t,e,p._random_fn)},p.identity=function(t,e){return f(e)||(e=t),p.create(t,e,o)},p.symmetric=function(t){var e,n,r=t.length;if(t.length!==t[0].length)return!1;for(e=0;e<r;e++)for(n=0;n<r;n++)if(t[n][e]!==t[e][n])return!1;return!0},p.clear=function(t){return p.alter(t,r)},p.seq=function(t,e,n,r){h(r)||(r=!1);for(var i=[],o=c(t,e),s=(e*o-t*o)/((n-1)*o),a=t,u=0;a<=e&&u<n;a=(t*o+s*o*++u)/o)i.push(r?r(a,u):a);return i},p.arange=function(t,e,n){var r,i=[];if(n=n||1,e===u&&(e=t,t=0),t===e||0===n)return[];if(t<e&&n<0)return[];if(e<t&&0<n)return[];if(0<n)for(r=t;r<e;r+=n)i.push(r);else for(r=t;e<r;r+=n)i.push(r);return i},p.slice=function(t,e){var n,r;return f((e=e||{}).row)?f(e.col)?t[e.row][e.col]:s(p.rowa(t,e.row),(n=e.col||{}).start,n.end,n.step):f(e.col)?s(p.cola(t,e.col),(r=e.row||{}).start,r.end,r.step):(r=e.row||{},n=e.col||{},s(t,r.start,r.end,r.step).map(function(t){return s(t,n.start,n.end,n.step)}))},p.sliceAssign=function(i,t,o){if(f(t.row)){if(f(t.col))return i[t.row][t.col]=o;t.col=t.col||{},t.col.start=t.col.start||0,t.col.end=t.col.end||i[0].length,t.col.step=t.col.step||1;var e=p.arange(t.col.start,a.min(i.length,t.col.end),t.col.step),n=t.row;return e.forEach(function(t,e){i[n][t]=o[e]}),i}if(f(t.col)){t.row=t.row||{},t.row.start=t.row.start||0,t.row.end=t.row.end||i.length,t.row.step=t.row.step||1;var r=p.arange(t.row.start,a.min(i[0].length,t.row.end),t.row.step),s=t.col;return r.forEach(function(t,e){i[t][s]=o[e]}),i}return o[0].length===u&&(o=[o]),t.row.start=t.row.start||0,t.row.end=t.row.end||i.length,t.row.step=t.row.step||1,t.col.start=t.col.start||0,t.col.end=t.col.end||i[0].length,t.col.step=t.col.step||1,r=p.arange(t.row.start,a.min(i.length,t.row.end),t.row.step),e=p.arange(t.col.start,a.min(i[0].length,t.col.end),t.col.step),r.forEach(function(n,r){e.forEach(function(t,e){i[n][t]=o[r][e]})}),i},p.diagonal=function(t){var n=p.zeros(t.length,t.length);return t.forEach(function(t,e){n[e][e]=t}),n},p.copy=function(t){return t.map(function(t){return f(t)?t:t.map(function(t){return t})})};var d=p.prototype;return d.length=0,d.push=Array.prototype.push,d.sort=Array.prototype.sort,d.splice=Array.prototype.splice,d.slice=Array.prototype.slice,d.toArray=function(){return 1<this.length?t.call(this):t.call(this)[0]},d.map=function(t,e){return p(p.map(this,t,e))},d.cumreduce=function(t,e){return p(p.cumreduce(this,t,e))},d.alter=function(t){return p.alter(this,t),this},function(t){for(var e=0;e<t.length;e++)!function(r){d[r]=function(t){var e,n=this;return t?(setTimeout(function(){t.call(n,d[r].call(n))}),this):(e=p[r](this),l(e)?p(e):e)}}(t[e])}("transpose clear symmetric rows cols dimensions diag antidiag".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(r){d[r]=function(t,e){var n=this;return e?(setTimeout(function(){e.call(n,d[r].call(n,t))}),this):p(p[r](this,t))}}(t[e])}("row col".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(t){d[t]=function(){return p(p[t].apply(null,arguments))}}(t[e])}("create zeros ones rand identity".split(" ")),p}(Math);function s(t,e,n,r){for(var i,o=0,s=1,a=1,u=1,c=0,l=0;x.abs((a-l)/a)>r;)s=u+(i=-(e+c)*(e+n+c)*t/(e+2*c)/(e+2*c+1))*s,a=(o=(l=a)+i*o)+(i=(c+=1)*(n-c)*t/(e+2*c-1)/(e+2*c))*a,o/=u=s+i*u,s/=u,a/=u,u=1;return a/e}function v(t,e,n){var r=[.9815606342467192,.9041172563704749,.7699026741943047,.5873179542866175,.3678314989981802,.1252334085114689],i=[.04717533638651183,.10693932599531843,.16007832854334622,.20316742672306592,.2334925365383548,.24914704581340277],o=.5*t;if(8<=o)return 1;for(var s=(s=2*_.normal.cdf(o,0,1,1,0)-1)>=x.exp(-50/n)?x.pow(s,n):0,a=3<t?2:3,u=o,c=(8-o)/a,l=u+c,h=0,f=n-1,p=1;p<=a;p++){for(var d=0,g=.5*(l+u),m=.5*(l-u),v=1;v<=12;v++){var y,b=6<v?r[(y=12-v+1)-1]:-r[(y=v)-1],w=g+m*b,b=w*w;if(60<b)break;w=.5*(2*_.normal.cdf(w,0,1,1,0))-.5*(2*_.normal.cdf(w,t,1,1,0));w>=x.exp(-30/f)&&(d+=i[y-1]*x.exp(-.5*b)*x.pow(w,f))}h+=d*=2*m*n/x.sqrt(2*x.PI),u=l,l+=c}return(s+=h)<=x.exp(-30/e)?0:1<=(s=x.pow(s,e))?1:s}function y(t){return e(t)||t instanceof m}function b(t,e,n,r){if(1<t||1<n||t<=0||n<=0)throw new Error("Proportions should be greater than 0 and less than 1");var i=(t*e+n*r)/(e+r);return(t-n)/l.sqrt(i*(1-i)*(1/e+1/r))}function w(t,e){var n=t.length,r=e[0].length-1,i=n-r-1,o=f.lstsq(e,t),s=f.multiply(e,o.map(function(t){return[t]})).map(function(t){return t[0]}),a=f.subtract(t,s),u=f.mean(t),c=f.sum(s.map(function(t){return Math.pow(t-u,2)})),l=f.sum(t.map(function(t,e){return Math.pow(t-s[e],2)})),h=c+l;return{exog:e,endog:t,nobs:n,df_model:r,df_resid:i,coef:o,predict:s,resid:a,ybar:u,SST:h,SSE:c,SSR:l,R2:c/h}}function C(e){var n,r,t=(n=e.exog,r=n[0].length,f.arange(r).map(function(e){var t=f.arange(r).filter(function(t){return t!==e});return w(f.col(n,e).map(function(t){return t[0]}),f.col(n,t))})),i=Math.sqrt(e.SSR/e.df_resid),o=t.map(function(t){var e=t.SST,t=t.R2;return i/Math.sqrt(e*(1-t))}),s=e.coef.map(function(t,e){return+t/o[e]}),a=s.map(function(t){t=f.studentt.cdf(t,e.df_resid);return 2*(.5<t?1-t:t)}),u=f.studentt.inv(.975,e.df_resid),t=e.coef.map(function(t,e){e=u*o[e];return[t-e,t+e]});return{se:o,t:s,p:a,sigmaHat:i,interval95:t}}return function(u,l){var c=u.utils.isFunction;function h(t,e){return t-e}function f(t,e,n){return l.max(e,l.min(t,n))}u.sum=function(t){for(var e=0,n=t.length;0<=--n;)e+=t[n];return e},u.sumsqrd=function(t){for(var e=0,n=t.length;0<=--n;)e+=t[n]*t[n];return e},u.sumsqerr=function(t){for(var e,n=u.mean(t),r=0,i=t.length;0<=--i;)r+=(e=t[i]-n)*e;return r},u.sumrow=function(t){for(var e=0,n=t.length;0<=--n;)e+=t[n];return e},u.product=function(t){for(var e=1,n=t.length;0<=--n;)e*=t[n];return e},u.min=function(t){for(var e=t[0],n=0;++n<t.length;)t[n]<e&&(e=t[n]);return e},u.max=function(t){for(var e=t[0],n=0;++n<t.length;)t[n]>e&&(e=t[n]);return e},u.unique=function(t){for(var e={},n=[],r=0;r<t.length;r++)e[t[r]]||(e[t[r]]=!0,n.push(t[r]));return n},u.mean=function(t){return u.sum(t)/t.length},u.meansqerr=function(t){return u.sumsqerr(t)/t.length},u.geomean=function(t){return l.pow(u.product(t),1/t.length)},u.median=function(t){var e=t.length,t=t.slice().sort(h);return 1&e?t[e/2|0]:(t[e/2-1]+t[e/2])/2},u.cumsum=function(t){return u.cumreduce(t,function(t,e){return t+e})},u.cumprod=function(t){return u.cumreduce(t,function(t,e){return t*e})},u.diff=function(t){for(var e=[],n=t.length,r=1;r<n;r++)e.push(t[r]-t[r-1]);return e},u.rank=function(t){for(var e=[],n={},r=0;r<t.length;r++)n[a=t[r]]?n[a]++:(n[a]=1,e.push(a));var i=e.sort(h),o={},s=1;for(r=0;r<i.length;r++){var a,u=n[a=i[r]];o[a]=(s+(s+u-1))/2,s+=u}return t.map(function(t){return o[t]})},u.mode=function(t){for(var e=t.length,n=t.slice().sort(h),r=1,i=0,o=0,s=[],a=0;a<e;a++)n[a]===n[a+1]?r++:(i<r?(s=[n[a]],i=r,o=0):r===i&&(s.push(n[a]),o++),r=1);return 0===o?s[0]:s},u.range=function(t){return u.max(t)-u.min(t)},u.variance=function(t,e){return u.sumsqerr(t)/(t.length-(e?1:0))},u.pooledvariance=function(t){return t.reduce(function(t,e){return t+u.sumsqerr(e)},0)/(t.reduce(function(t,e){return t+e.length},0)-t.length)},u.deviation=function(t){for(var e=u.mean(t),n=t.length,r=new Array(n),i=0;i<n;i++)r[i]=t[i]-e;return r},u.stdev=function(t,e){return l.sqrt(u.variance(t,e))},u.pooledstdev=function(t){return l.sqrt(u.pooledvariance(t))},u.meandev=function(t){for(var e=u.mean(t),n=[],r=t.length-1;0<=r;r--)n.push(l.abs(t[r]-e));return u.mean(n)},u.meddev=function(t){for(var e=u.median(t),n=[],r=t.length-1;0<=r;r--)n.push(l.abs(t[r]-e));return u.median(n)},u.coeffvar=function(t){return u.stdev(t)/u.mean(t)},u.quartiles=function(t){var e=t.length,t=t.slice().sort(h);return[t[l.round(e/4)-1],t[l.round(e/2)-1],t[l.round(3*e/4)-1]]},u.quantiles=function(t,e,n,r){var i,o,s,a=t.slice().sort(h),u=[e.length],c=t.length;for(void 0===n&&(n=3/8),void 0===r&&(r=3/8),i=0;i<e.length;i++)o=e[i],o=l.floor(f(s=c*o+(n+o*(1-n-r)),1,c-1)),s=f(s-o,0,1),u[i]=(1-s)*a[o-1]+s*a[o];return u},u.percentile=function(t,e,n){t=t.slice().sort(h),e=e*(t.length+(n?1:-1))+(n?0:1),n=parseInt(e);return n+1<t.length?t[n-1]+(e-n)*(t[n]-t[n-1]):t[n-1]},u.percentileOfScore=function(t,e,n){for(var r,i=0,o=t.length,s="strict"===n?!0:!1,a=0;a<o;a++)r=t[a],(s&&r<e||!s&&r<=e)&&i++;return i/o},u.histogram=function(t,e){e=e||4;for(var n=u.min(t),r=(u.max(t)-n)/e,i=t.length,o=[],s=0;s<e;s++)o[s]=0;for(s=0;s<i;s++)o[l.min(l.floor((t[s]-n)/r),e-1)]+=1;return o},u.covariance=function(t,e){for(var n=u.mean(t),r=u.mean(e),i=t.length,o=new Array(i),s=0;s<i;s++)o[s]=(t[s]-n)*(e[s]-r);return u.sum(o)/(i-1)},u.corrcoeff=function(t,e){return u.covariance(t,e)/u.stdev(t,1)/u.stdev(e,1)},u.spearmancoeff=function(t,e){return t=u.rank(t),e=u.rank(e),u.corrcoeff(t,e)},u.stanMoment=function(t,e){for(var n=u.mean(t),r=u.stdev(t),i=t.length,o=0,s=0;s<i;s++)o+=l.pow((t[s]-n)/r,e);return o/t.length},u.skewness=function(t){return u.stanMoment(t,3)},u.kurtosis=function(t){return u.stanMoment(t,4)-3};var p=u.prototype;!function(t){for(var e=0;e<t.length;e++)!function(o){p[o]=function(t,e){var n=[],r=0,i=this;if(c(t)&&(e=t,t=!1),e)return setTimeout(function(){e.call(i,p[o].call(i,t))}),this;if(1<this.length){for(i=!0===t?this:this.transpose();r<i.length;r++)n[r]=u[o](i[r]);return n}return u[o](this[0],t)}}(t[e])}("cumsum cumprod".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(o){p[o]=function(t,e){var n=[],r=0,i=this;if(c(t)&&(e=t,t=!1),e)return setTimeout(function(){e.call(i,p[o].call(i,t))}),this;if(1<this.length){for("sumrow"!==o&&(i=!0===t?this:this.transpose());r<i.length;r++)n[r]=u[o](i[r]);return!0===t?u[o](u.utils.toVector(n)):n}return u[o](this[0],t)}}(t[e])}("sum sumsqrd sumsqerr sumrow product min max unique mean meansqerr geomean median diff rank mode range variance deviation stdev meandev meddev coeffvar quartiles histogram skewness kurtosis".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(a){p[a]=function(){var t=[],e=0,n=this,r=Array.prototype.slice.call(arguments);if(c(r[r.length-1])){var i=r[r.length-1],o=r.slice(0,r.length-1);return setTimeout(function(){i.call(n,p[a].apply(n,o))}),this}i=void 0;var s=function(t){return u[a].apply(n,[t].concat(r))};if(1<this.length){for(n=n.transpose();e<n.length;e++)t[e]=s(n[e]);return t}return s(this[0])}}(t[e])}("quantiles percentileOfScore".split(" "))}(f,Math),p=f,d=Math,p.gammaln=function(t){var e,n,r=0,i=[76.18009172947146,-86.50532032941678,24.01409824083091,-1.231739572450155,.001208650973866179,-5395239384953e-18],o=1.000000000190015,t=(n=e=t)+5.5;for(t-=(e+.5)*d.log(t);r<6;r++)o+=i[r]/++n;return d.log(2.5066282746310007*o/e)-t},p.loggam=function(t){var e,n,r,i,o,s=[.08333333333333333,-.002777777777777778,.0007936507936507937,-.0005952380952380952,.0008417508417508418,-.001917526917526918,.00641025641025641,-.02955065359477124,.1796443723688307,-1.3924322169059],a=t,u=0;if(1==t||2==t)return 0;for(e=1/((a=t<=7?t+(u=d.floor(7-t)):a)*a),n=2*d.PI,i=s[9],o=8;0<=o;o--)i*=e,i+=s[o];if(r=i/a+.5*d.log(n)+(a-.5)*d.log(a)-a,t<=7)for(o=1;o<=u;o++)r-=d.log(a-1),--a;return r},p.gammafn=function(t){var e,n,r,i=[-1.716185138865495,24.76565080557592,-379.80425647094563,629.3311553128184,866.9662027904133,-31451.272968848367,-36144.413418691176,66456.14382024054],o=[-30.8402300119739,315.35062697960416,-1015.1563674902192,-3107.771671572311,22538.11842098015,4755.846277527881,-134659.9598649693,-115132.2596755535],s=!1,a=0,u=0,c=0,l=t;if(171.6243769536076<t)return 1/0;if(l<=0){if(!(r=l%1+36e-17))return 1/0;s=(1&l?-1:1)*d.PI/d.sin(d.PI*r),l=1-l}for(n=(t=l)<1?l++:(l-=a=(0|l)-1)-1,e=0;e<8;++e)c=(c+i[e])*n,u=u*n+o[e];if(r=c/u+1,t<l)r/=t;else if(l<t)for(e=0;e<a;++e)r*=l,l++;return r=s?s/r:r},p.gammap=function(t,e){return p.lowRegGamma(t,e)*p.gammafn(t)},p.lowRegGamma=function(t,e){var n,r=p.gammaln(t),i=t,o=1/t,s=o,a=e+1-t,u=1/1e-30,c=1/a,l=c,h=1,f=-~(8.5*d.log(1<=t?t:1/t)+.4*t+17);if(e<0||t<=0)return NaN;if(e<t+1){for(;h<=f;h++)o+=s*=e/++i;return o*d.exp(-e+t*d.log(e)-r)}for(;h<=f;h++)l*=(c=1/(c=(n=-h*(h-t))*c+(a+=2)))*(u=a+n/u);return 1-l*d.exp(-e+t*d.log(e)-r)},p.factorialln=function(t){return t<0?NaN:p.gammaln(t+1)},p.factorial=function(t){return t<0?NaN:p.gammafn(t+1)},p.combination=function(t,e){return 170<t||170<e?d.exp(p.combinationln(t,e)):p.factorial(t)/p.factorial(e)/p.factorial(t-e)},p.combinationln=function(t,e){return p.factorialln(t)-p.factorialln(e)-p.factorialln(t-e)},p.permutation=function(t,e){return p.factorial(t)/p.factorial(t-e)},p.betafn=function(t,e){if(!(t<=0||e<=0))return 170<t+e?d.exp(p.betaln(t,e)):p.gammafn(t)*p.gammafn(e)/p.gammafn(t+e)},p.betaln=function(t,e){return p.gammaln(t)+p.gammaln(e)-p.gammaln(t+e)},p.betacf=function(t,e,n){for(var r,i,o=1e-30,s=1,a=e+n,u=e+1,c=e-1,l=1,h=1-a*t/u,f=h=1/(h=d.abs(h)<o?o:h);s<=100&&(f*=(h=1/(h=d.abs(h=1+(i=s*(n-s)*t/((c+(r=2*s))*(e+r)))*h)<o?o:h))*(l=d.abs(l=1+i/l)<o?o:l),f*=i=(h=1/(h=d.abs(h=1+(i=-(e+s)*(a+s)*t/((e+r)*(u+r)))*h)<o?o:h))*(l=d.abs(l=1+i/l)<o?o:l),!(d.abs(i-1)<3e-7));s++);return f},p.gammapinv=function(t,e){var n,r,i,o,s,a=0,u=e-1,c=p.gammaln(e);if(1<=t)return d.max(100,e+100*d.sqrt(e));if(t<=0)return 0;for(n=1<e?(o=d.log(u),s=d.exp(u*(o-1)-c),n=(2.30753+.27061*(r=d.sqrt(-2*d.log(t<.5?t:1-t))))/(1+r*(.99229+.04481*r))-r,d.max(.001,e*d.pow(1-1/(9*e)-(n=t<.5?-n:n)/(3*d.sqrt(e)),3))):t<(r=1-e*(.253+.12*e))?d.pow(t/r,1/e):1-d.log(1-(t-r)/(1-r));a<12;a++){if(n<=0)return 0;if((n-=r=(i=(p.lowRegGamma(e,n)-t)/(r=1<e?s*d.exp(-(n-u)+u*(d.log(n)-o)):d.exp(-n+u*d.log(n)-c)))/(1-.5*d.min(1,i*((e-1)/n-1))))<=0&&(n=.5*(n+r)),d.abs(r)<1e-8*n)break}return n},p.erf=function(t){var e,n,r,i=[-1.3026537197817094,.6419697923564902,.019476473204185836,-.00956151478680863,-.000946595344482036,.000366839497852761,42523324806907e-18,-20278578112534e-18,-1624290004647e-18,130365583558e-17,1.5626441722e-8,-8.5238095915e-8,6.529054439e-9,5.059343495e-9,-9.91364156e-10,-2.27365122e-10,96467911e-18,2394038e-18,-6886027e-18,894487e-18,313092e-18,-112708e-18,381e-18,7106e-18,-1523e-18,-94e-18,121e-18,-28e-18],o=i.length-1,s=!1,a=0,u=0;for(t<0&&(t=-t,s=!0),n=4*(e=2/(2+t))-2;0<o;o--)a=n*(r=a)-u+i[o],u=r;return t=e*d.exp(-t*t+.5*(i[0]+n*a)-u),s?t-1:1-t},p.erfc=function(t){return 1-p.erf(t)},p.erfcinv=function(t){var e,n,r,i,o=0;if(2<=t)return-100;if(t<=0)return 100;for(e=-.70711*((2.30753+.27061*(r=d.sqrt(-2*d.log((i=t<1?t:2-t)/2))))/(1+r*(.99229+.04481*r))-r);o<2;o++)e+=(n=p.erfc(e)-i)/(1.1283791670955126*d.exp(-e*e)-e*n);return t<1?e:-e},p.ibetainv=function(t,e,n){var r,i,o,s,a,u,c,l=e-1,h=n-1,f=0;if(t<=0)return 0;if(1<=t)return 1;for(o=1<=e&&1<=n?(o=(2.30753+.27061*(r=d.sqrt(-2*d.log(t<.5?t:1-t))))/(1+r*(.99229+.04481*r))-r,u=(o=t<.5?-o:o)*d.sqrt((s=(o*o-3)/6)+(a=2/(1/(2*e-1)+1/(2*n-1))))/a-(1/(2*n-1)-1/(2*e-1))*(s+5/6-2/(3*a)),e/(e+n*d.exp(2*u))):(s=d.log(e/(e+n)),a=d.log(n/(e+n)),t<(r=d.exp(e*s)/e)/(u=r+(i=d.exp(n*a)/n))?d.pow(e*u*t,1/e):1-d.pow(n*u*(1-t),1/n)),c=-p.gammaln(e)-p.gammaln(n)+p.gammaln(e+n);f<10;f++){if(0===o||1===o)return o;if(1<=(o=(o-=r=(i=(p.ibeta(o,e,n)-t)/(r=d.exp(l*d.log(o)+h*d.log(1-o)+c)))/(1-.5*d.min(1,i*(l/o-h/(1-o)))))<=0?.5*(o+r):o)&&(o=.5*(o+r+1)),d.abs(r)<1e-8*o&&0<f)break}return o},p.ibeta=function(t,e,n){var r=0===t||1===t?0:d.exp(p.gammaln(e+n)-p.gammaln(e)-p.gammaln(n)+e*d.log(t)+n*d.log(1-t));return!(t<0||1<t)&&(t<(e+1)/(e+n+2)?r*p.betacf(t,e,n)/e:1-r*p.betacf(1-t,n,e)/n)},p.randn=function(t,e){var n,r,i,o;if(e=e||t,t)return p.create(t,e,function(){return p.randn()});for(;n=p._random_fn(),r=1.7156*(p._random_fn()-.5),.27597<(o=(o=n-.449871)*o+(i=d.abs(r)+.386595)*(.196*i-.25472*o))&&(.27846<o||r*r>-4*d.log(n)*n*n););return r/n},p.randg=function(t,e,n){var r,i,o,s,a,u=t;if(n=n||e,t=t||1,e)return(n=p.zeros(e,n)).alter(function(){return p.randg(t)}),n;t<1&&(t+=1),i=1/d.sqrt(9*(r=t-1/3));do{for(;(s=1+i*(a=p.randn()))<=0;);}while(s*=s*s,(o=p._random_fn())>1-.331*d.pow(a,4)&&d.log(o)>.5*a*a+r*(1-s+d.log(s)));if(t==u)return r*s;for(;0===(o=p._random_fn()););return d.pow(o,1/u)*r*s},function(t){for(var e=0;e<t.length;e++)!function(e){p.fn[e]=function(){return p(p.map(this,function(t){return p[e](t)}))}}(t[e])}("gammaln gammafn factorial factorialln".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(t){p.fn[t]=function(){return p(p[t].apply(null,arguments))}}(t[e])}("randn".split(" ")),_=f,x=Math,function(t){for(var e=0;e<t.length;e++)!function(o){_[o]=function(t,e,n){return this instanceof arguments.callee?(this._a=t,this._b=e,this._c=n,this):new arguments.callee(t,e,n)},_.fn[o]=function(t,e,n){n=_[o](t,e,n);return n.data=this,n},_[o].prototype.sample=function(t){var e=this._a,n=this._b,r=this._c;return t?_.alter(t,function(){return _[o].sample(e,n,r)}):_[o].sample(e,n,r)},function(t){for(var e=0;e<t.length;e++)!function(i){_[o].prototype[i]=function(t){var e=this._a,n=this._b,r=this._c;return"number"!=typeof(t=!t&&0!==t?this.data:t)?_.fn.map.call(t,function(t){return _[o][i](t,e,n,r)}):_[o][i](t,e,n,r)}}(t[e])}("pdf cdf inv".split(" ")),function(t){for(var e=0;e<t.length;e++)!function(t){_[o].prototype[t]=function(){return _[o][t](this._a,this._b,this._c)}}(t[e])}("mean median mode variance".split(" "))}(t[e])}("beta centralF cauchy chisquare exponential gamma invgamma kumaraswamy laplace lognormal noncentralt normal pareto studentt weibull uniform binomial negbin hypgeom poisson triangular tukey arcsine".split(" ")),_.extend(_.beta,{pdf:function(t,e,n){return 1<t||t<0?0:1==e&&1==n?1:e<512&&n<512?x.pow(t,e-1)*x.pow(1-t,n-1)/_.betafn(e,n):x.exp((e-1)*x.log(t)+(n-1)*x.log(1-t)-_.betaln(e,n))},cdf:function(t,e,n){return 1<t||t<0?+(1<t):_.ibeta(t,e,n)},inv:function(t,e,n){return _.ibetainv(t,e,n)},mean:function(t,e){return t/(t+e)},median:function(t,e){return _.ibetainv(.5,t,e)},mode:function(t,e){return(t-1)/(t+e-2)},sample:function(t,e){t=_.randg(t);return t/(t+_.randg(e))},variance:function(t,e){return t*e/(x.pow(t+e,2)*(t+e+1))}}),_.extend(_.centralF,{pdf:function(t,e,n){return t<0?0:e<=2?0===t&&e<2?1/0:0===t&&2===e?1:1/_.betafn(e/2,n/2)*x.pow(e/n,e/2)*x.pow(t,e/2-1)*x.pow(1+e/n*t,-(e+n)/2):e*(n/(n+t*e))/2*_.binomial.pdf((e-2)/2,(e+n-2)/2,e*t/(n+t*e))},cdf:function(t,e,n){return t<0?0:_.ibeta(e*t/(e*t+n),e/2,n/2)},inv:function(t,e,n){return n/(e*(1/_.ibetainv(t,e/2,n/2)-1))},mean:function(t,e){return 2<e?e/(e-2):void 0},mode:function(t,e){return 2<t?e*(t-2)/(t*(e+2)):void 0},sample:function(t,e){return 2*_.randg(t/2)/t/(2*_.randg(e/2)/e)},variance:function(t,e){if(!(e<=4))return 2*e*e*(t+e-2)/(t*(e-2)*(e-2)*(e-4))}}),_.extend(_.cauchy,{pdf:function(t,e,n){return n<0?0:n/(x.pow(t-e,2)+x.pow(n,2))/x.PI},cdf:function(t,e,n){return x.atan((t-e)/n)/x.PI+.5},inv:function(t,e,n){return e+n*x.tan(x.PI*(t-.5))},median:function(t){return t},mode:function(t){return t},sample:function(t,e){return _.randn()*x.sqrt(1/(2*_.randg(.5)))*e+t}}),_.extend(_.chisquare,{pdf:function(t,e){return t<0?0:0===t&&2===e?.5:x.exp((e/2-1)*x.log(t)-t/2-e/2*x.log(2)-_.gammaln(e/2))},cdf:function(t,e){return t<0?0:_.lowRegGamma(e/2,t/2)},inv:function(t,e){return 2*_.gammapinv(t,.5*e)},mean:function(t){return t},median:function(t){return t*x.pow(1-2/(9*t),3)},mode:function(t){return 0<t-2?t-2:0},sample:function(t){return 2*_.randg(t/2)},variance:function(t){return 2*t}}),_.extend(_.exponential,{pdf:function(t,e){return t<0?0:e*x.exp(-e*t)},cdf:function(t,e){return t<0?0:1-x.exp(-e*t)},inv:function(t,e){return-x.log(1-t)/e},mean:function(t){return 1/t},median:function(t){return 1/t*x.log(2)},mode:function(){return 0},sample:function(t){return-1/t*x.log(_._random_fn())},variance:function(t){return x.pow(t,-2)}}),_.extend(_.gamma,{pdf:function(t,e,n){return t<0?0:0===t&&1===e?1/n:x.exp((e-1)*x.log(t)-t/n-_.gammaln(e)-e*x.log(n))},cdf:function(t,e,n){return t<0?0:_.lowRegGamma(e,t/n)},inv:function(t,e,n){return _.gammapinv(t,e)*n},mean:function(t,e){return t*e},mode:function(t,e){if(1<t)return(t-1)*e},sample:function(t,e){return _.randg(t)*e},variance:function(t,e){return t*e*e}}),_.extend(_.invgamma,{pdf:function(t,e,n){return t<=0?0:x.exp(-(e+1)*x.log(t)-n/t-_.gammaln(e)+e*x.log(n))},cdf:function(t,e,n){return t<=0?0:1-_.lowRegGamma(e,n/t)},inv:function(t,e,n){return n/_.gammapinv(1-t,e)},mean:function(t,e){return 1<t?e/(t-1):void 0},mode:function(t,e){return e/(t+1)},sample:function(t,e){return e/_.randg(t)},variance:function(t,e){if(!(t<=2))return e*e/((t-1)*(t-1)*(t-2))}}),_.extend(_.kumaraswamy,{pdf:function(t,e,n){return 0===t&&1===e?n:1===t&&1===n?e:x.exp(x.log(e)+x.log(n)+(e-1)*x.log(t)+(n-1)*x.log(1-x.pow(t,e)))},cdf:function(t,e,n){return t<0?0:1<t?1:1-x.pow(1-x.pow(t,e),n)},inv:function(t,e,n){return x.pow(1-x.pow(1-t,1/n),1/e)},mean:function(t,e){return e*_.gammafn(1+1/t)*_.gammafn(e)/_.gammafn(1+1/t+e)},median:function(t,e){return x.pow(1-x.pow(2,-1/e),1/t)},mode:function(t,e){if(1<=t&&1<=e&&1!==t&&1!==e)return x.pow((t-1)/(t*e-1),1/t)},variance:function(){throw new Error("variance not yet implemented")}}),_.extend(_.lognormal,{pdf:function(t,e,n){return t<=0?0:x.exp(-x.log(t)-.5*x.log(2*x.PI)-x.log(n)-x.pow(x.log(t)-e,2)/(2*n*n))},cdf:function(t,e,n){return t<0?0:.5+.5*_.erf((x.log(t)-e)/x.sqrt(2*n*n))},inv:function(t,e,n){return x.exp(-1.4142135623730951*n*_.erfcinv(2*t)+e)},mean:function(t,e){return x.exp(t+e*e/2)},median:function(t){return x.exp(t)},mode:function(t,e){return x.exp(t-e*e)},sample:function(t,e){return x.exp(_.randn()*e+t)},variance:function(t,e){return(x.exp(e*e)-1)*x.exp(2*t+e*e)}}),_.extend(_.noncentralt,{pdf:function(t,e,n){return x.abs(n)<1e-14?_.studentt.pdf(t,e):x.abs(t)<1e-14?x.exp(_.gammaln((e+1)/2)-n*n/2-.5*x.log(x.PI*e)-_.gammaln(e/2)):e/t*(_.noncentralt.cdf(t*x.sqrt(1+2/e),e+2,n)-_.noncentralt.cdf(t,e,n))},cdf:function(t,e,n){if(x.abs(n)<1e-14)return _.studentt.cdf(t,e);var r=!1;t<0&&(r=!0,n=-n);for(var i=_.normal.cdf(-n,0,1),o=1e-14+1,s=o,a=t*t/(t*t+e),u=0,c=x.exp(-n*n/2),l=x.exp(-n*n/2-.5*x.log(2)-_.gammaln(1.5))*n;u<200||1e-14<s||1e-14<o;)s=o,0<u&&(c*=n*n/(2*u),l*=n*n/(2*(u+.5))),i+=.5*(o=c*_.beta.cdf(a,u+.5,e/2)+l*_.beta.cdf(a,u+1,e/2)),u++;return r?1-i:i}}),_.extend(_.normal,{pdf:function(t,e,n){return x.exp(-.5*x.log(2*x.PI)-x.log(n)-x.pow(t-e,2)/(2*n*n))},cdf:function(t,e,n){return.5*(1+_.erf((t-e)/x.sqrt(2*n*n)))},inv:function(t,e,n){return-1.4142135623730951*n*_.erfcinv(2*t)+e},mean:function(t){return t},median:function(t){return t},mode:function(t){return t},sample:function(t,e){return _.randn()*e+t},variance:function(t,e){return e*e}}),_.extend(_.pareto,{pdf:function(t,e,n){return t<e?0:n*x.pow(e,n)/x.pow(t,n+1)},cdf:function(t,e,n){return t<e?0:1-x.pow(e/t,n)},inv:function(t,e,n){return e/x.pow(1-t,1/n)},mean:function(t,e){if(!(e<=1))return e*x.pow(t,e)/(e-1)},median:function(t,e){return t*(e*x.SQRT2)},mode:function(t){return t},variance:function(t,e){if(!(e<=2))return t*t*e/(x.pow(e-1,2)*(e-2))}}),_.extend(_.studentt,{pdf:function(t,e){return 1/(x.sqrt(e=1e100<e?1e100:e)*_.betafn(.5,e/2))*x.pow(1+t*t/e,-(e+1)/2)},cdf:function(t,e){var n=e/2;return _.ibeta((t+x.sqrt(t*t+e))/(2*x.sqrt(t*t+e)),n,n)},inv:function(t,e){var n=_.ibetainv(2*x.min(t,1-t),.5*e,.5),n=x.sqrt(e*(1-n)/n);return.5<t?n:-n},mean:function(t){return 1<t?0:void 0},median:function(){return 0},mode:function(){return 0},sample:function(t){return _.randn()*x.sqrt(t/(2*_.randg(t/2)))},variance:function(t){return 2<t?t/(t-2):1<t?1/0:void 0}}),_.extend(_.weibull,{pdf:function(t,e,n){return t<0||e<0||n<0?0:n/e*x.pow(t/e,n-1)*x.exp(-x.pow(t/e,n))},cdf:function(t,e,n){return t<0?0:1-x.exp(-x.pow(t/e,n))},inv:function(t,e,n){return e*x.pow(-x.log(1-t),1/n)},mean:function(t,e){return t*_.gammafn(1+1/e)},median:function(t,e){return t*x.pow(x.log(2),1/e)},mode:function(t,e){return e<=1?0:t*x.pow((e-1)/e,1/e)},sample:function(t,e){return t*x.pow(-x.log(_._random_fn()),1/e)},variance:function(t,e){return t*t*_.gammafn(1+2/e)-x.pow(_.weibull.mean(t,e),2)}}),_.extend(_.uniform,{pdf:function(t,e,n){return t<e||n<t?0:1/(n-e)},cdf:function(t,e,n){return t<e?0:t<n?(t-e)/(n-e):1},inv:function(t,e,n){return e+t*(n-e)},mean:function(t,e){return.5*(t+e)},median:function(t,e){return _.mean(t,e)},mode:function(){throw new Error("mode is not yet implemented")},sample:function(t,e){return t/2+e/2+(e/2-t/2)*(2*_._random_fn()-1)},variance:function(t,e){return x.pow(e-t,2)/12}}),_.extend(_.binomial,{pdf:function(t,e,n){return 0===n||1===n?e*n===t?1:0:_.combination(e,t)*x.pow(n,t)*x.pow(1-n,e-t)},cdf:function(t,e,n){if(t<0)return 0;if(e<=t)return 1;if(n<0||1<n||e<=0)return NaN;var r=n,i=(t=x.floor(t))+1,n=e-t,e=i+n,t=x.exp(_.gammaln(e)-_.gammaln(n)-_.gammaln(i)+i*x.log(r)+n*x.log(1-r)),i=r<(i+1)/(e+2)?t*s(r,i,n,1e-10):1-t*s(1-r,n,i,1e-10);return x.round(1e10*(1-i))/1e10}}),_.extend(_.negbin,{pdf:function(t,e,n){return t===t>>>0&&(t<0?0:_.combination(t+e-1,e-1)*x.pow(1-n,t)*x.pow(n,e))},cdf:function(t,e,n){var r=0,i=0;if(t<0)return 0;for(;i<=t;i++)r+=_.negbin.pdf(i,e,n);return r}}),_.extend(_.hypgeom,{pdf:function(t,e,n,r){if(t!=t|0)return!1;if(t<0||t<n-(e-r))return 0;if(r<t||n<t)return 0;if(e<2*n)return e<2*r?_.hypgeom.pdf(e-n-r+t,e,e-n,e-r):_.hypgeom.pdf(r-t,e,e-n,r);if(e<2*r)return _.hypgeom.pdf(n-t,e,n,e-r);if(n<r)return _.hypgeom.pdf(t,e,r,n);for(var i=1,o=0,s=0;s<t;s++){for(;1<i&&o<r;)i*=1-n/(e-o),o++;i*=(r-s)*(n-s)/((s+1)*(e-n-r+s+1))}for(;o<r;o++)i*=1-n/(e-o);return x.min(1,x.max(0,i))},cdf:function(t,e,n,r){if(t<0||t<n-(e-r))return 0;if(r<=t||n<=t)return 1;if(e<2*n)return e<2*r?_.hypgeom.cdf(e-n-r+t,e,e-n,e-r):1-_.hypgeom.cdf(r-t-1,e,e-n,r);if(e<2*r)return 1-_.hypgeom.cdf(n-t-1,e,n,e-r);if(n<r)return _.hypgeom.cdf(t,e,r,n);for(var i=1,o=1,s=0,a=0;a<t;a++){for(;1<i&&s<r;){var u=1-n/(e-s);o*=u,i*=u,s++}i+=o*=(r-a)*(n-a)/((a+1)*(e-n-r+a+1))}for(;s<r;s++)i*=1-n/(e-s);return x.min(1,x.max(0,i))}}),_.extend(_.poisson,{pdf:function(t,e){return e<0||t%1!=0||t<0?0:x.pow(e,t)*x.exp(-e)/_.factorial(t)},cdf:function(t,e){var n=[],r=0;if(t<0)return 0;for(;r<=t;r++)n.push(_.poisson.pdf(r,e));return _.sum(n)},mean:function(t){return t},variance:function(t){return t},sampleSmall:function(t){for(var e=1,n=0,r=x.exp(-t);n++,r<(e*=_._random_fn()););return n-1},sampleLarge:function(t){for(var e,n,r,i=t,t=x.sqrt(i),o=x.log(i),s=.931+2.53*t,a=.02483*s-.059,u=1.1239+1.1328/(s-3.4),c=.9277-3.6224/(s-2);;){if(e=x.random()-.5,n=x.random(),r=.5-x.abs(e),e=x.floor((2*a/r+s)*e+i+.43),.07<=r&&n<=c)return e;if(!(e<0||r<.013&&r<n)&&x.log(n)+x.log(u)-x.log(a/(r*r)+s)<=e*o-i-_.loggam(e+1))return e}},sample:function(t){return t<10?this.sampleSmall(t):this.sampleLarge(t)}}),_.extend(_.triangular,{pdf:function(t,e,n,r){return n<=e||r<e||n<r?NaN:t<e||n<t?0:t<r?2*(t-e)/((n-e)*(r-e)):t===r?2/(n-e):2*(n-t)/((n-e)*(n-r))},cdf:function(t,e,n,r){return n<=e||r<e||n<r?NaN:t<=e?0:n<=t?1:t<=r?x.pow(t-e,2)/((n-e)*(r-e)):1-x.pow(n-t,2)/((n-e)*(n-r))},inv:function(t,e,n,r){return n<=e||r<e||n<r?NaN:t<=(r-e)/(n-e)?e+(n-e)*x.sqrt(t*((r-e)/(n-e))):e+(n-e)*(1-x.sqrt((1-t)*(1-(r-e)/(n-e))))},mean:function(t,e,n){return(t+e+n)/3},median:function(t,e,n){return n<=(t+e)/2?e-x.sqrt((e-t)*(e-n))/x.sqrt(2):(t+e)/2<n?t+x.sqrt((e-t)*(n-t))/x.sqrt(2):void 0},mode:function(t,e,n){return n},sample:function(t,e,n){var r=_._random_fn();return r<(n-t)/(e-t)?t+x.sqrt(r*(e-t)*(n-t)):e-x.sqrt((1-r)*(e-t)*(e-n))},variance:function(t,e,n){return(t*t+e*e+n*n-t*e-t*n-e*n)/18}}),_.extend(_.arcsine,{pdf:function(t,e,n){return n<=e?NaN:t<=e||n<=t?0:2/x.PI*x.pow(x.pow(n-e,2)-x.pow(2*t-e-n,2),-.5)},cdf:function(t,e,n){return t<e?0:t<n?2/x.PI*x.asin(x.sqrt((t-e)/(n-e))):1},inv:function(t,e,n){return e+(.5-.5*x.cos(x.PI*t))*(n-e)},mean:function(t,e){return e<=t?NaN:(t+e)/2},median:function(t,e){return e<=t?NaN:(t+e)/2},mode:function(){throw new Error("mode is not yet implemented")},sample:function(t,e){return(t+e)/2+(e-t)/2*x.sin(2*x.PI*_.uniform.sample(0,1))},variance:function(t,e){return e<=t?NaN:x.pow(e-t,2)/8}}),_.extend(_.laplace,{pdf:function(t,e,n){return n<=0?0:x.exp(-x.abs(t-e)/n)/(2*n)},cdf:function(t,e,n){return n<=0?0:t<e?.5*x.exp((t-e)/n):1-.5*x.exp(-(t-e)/n)},mean:function(t){return t},median:function(t){return t},mode:function(t){return t},variance:function(t,e){return 2*e*e},sample:function(t,e){var n=_._random_fn()-.5;return t-e*((e=n)/x.abs(e))*x.log(1-2*x.abs(n))}}),_.extend(_.tukey,{cdf:function(t,e,n){var r=e,i=[.9894009349916499,.9445750230732326,.8656312023878318,.755404408355003,.6178762444026438,.45801677765722737,.2816035507792589,.09501250983763744],o=[.027152459411754096,.062253523938647894,.09515851168249279,.12462897125553388,.14959598881657674,.16915651939500254,.18260341504492358,.1894506104550685];if(t<=0)return 0;if(n<2||r<2)return NaN;if(!Number.isFinite(t))return 1;if(25e3<n)return v(t,1,r);var e=.5*n,s=e*x.log(n)-n*x.log(2)-_.gammaln(e),a=e-1,u=.25*n,c=n<=100?1:n<=800?.5:n<=5e3?.25:.125;s+=x.log(c);for(var l=0,h=1;h<=50;h++){for(var f=0,p=(2*h-1)*c,d=1;d<=16;d++){var g,m=8<d?s+a*x.log(p+i[g=d-8-1]*c)-(i[g]*c+p)*u:s+a*x.log(p-i[g=d-1]*c)+(i[g]*c-p)*u;-30<=m&&(f+=v(8<d?t*x.sqrt(.5*(i[g]*c+p)):t*x.sqrt(.5*(-i[g]*c+p)),1,r)*o[g]*x.exp(m))}if(1<=h*c&&f<=1e-14)break;l+=f}if(1e-14<f)throw new Error("tukey.cdf failed to converge");return l=1<l?1:l},inv:function(t,e,n){if(n<2||e<2)return NaN;if(t<0||1<t)return NaN;if(0===t)return 0;if(1===t)return 1/0;var r,i,o,s,a=(i=e,o=n,s=.5-.5*(r=t),s=(r=x.sqrt(x.log(1/(s*s))))+((((-453642210148e-16*r-.204231210125)*r-.342242088547)*r-1)*r+.322232421088)/((((.0038560700634*r+.10353775285)*r+.531103462366)*r+.588581570495)*r+.099348462606),o<120&&(s+=(s*s*s+s)/o/4),r=.8832-.2368*s,o<120&&(r+=-1.214/o+1.208*s/o),s*(r*x.log(i-1)+1.4142)),u=_.tukey.cdf(a,e,n)-t;f=0<u?x.max(0,a-1):a+1;for(var c,l=_.tukey.cdf(f,e,n)-t,h=1;h<50;h++){c=f-l*(f-a)/(l-u),u=l,a=f,c<0&&(c=0,l=-t);var f,l=_.tukey.cdf(c,e,n)-t;if(x.abs((f=c)-a)<1e-4)return c}throw new Error("tukey.inv failed to converge")}}),m=f,g=Math,i=Array.prototype.push,e=m.utils.isArray,m.extend({add:function(t,r){return y(r)?(y(r[0])||(r=[r]),m.map(t,function(t,e,n){return t+r[e][n]})):m.map(t,function(t){return t+r})},subtract:function(t,r){return y(r)?(y(r[0])||(r=[r]),m.map(t,function(t,e,n){return t-r[e][n]||0})):m.map(t,function(t){return t-r})},divide:function(t,e){return y(e)?(y(e[0])||(e=[e]),m.multiply(t,m.inv(e))):m.map(t,function(t){return t/e})},multiply:function(t,e){var n,r,i,o,s,a,u,c;if(void 0===t.length&&void 0===e.length)return t*e;if(s=t.length,a=t[0].length,u=m.zeros(s,i=y(e)?e[0].length:a),c=0,y(e)){for(;c<i;c++)for(n=0;n<s;n++){for(r=o=0;r<a;r++)o+=t[n][r]*e[r][c];u[n][c]=o}return 1===s&&1===c?u[0][0]:u}return m.map(t,function(t){return t*e})},outer:function(t,e){return m.multiply(t.map(function(t){return[t]}),[e])},dot:function(t,e){y(t[0])||(t=[t]),y(e[0])||(e=[e]);for(var n,r,i=1===t[0].length&&1!==t.length?m.transpose(t):t,o=1===e[0].length&&1!==e.length?m.transpose(e):e,s=[],a=0,u=i.length,c=i[0].length;a<u;a++){for(s[a]=[],r=n=0;r<c;r++)n+=i[a][r]*o[a][r];s[a]=n}return 1===s.length?s[0]:s},pow:function(t,e){return m.map(t,function(t){return g.pow(t,e)})},exp:function(t){return m.map(t,function(t){return g.exp(t)})},log:function(t){return m.map(t,function(t){return g.log(t)})},abs:function(t){return m.map(t,function(t){return g.abs(t)})},norm:function(t,e){var n=0,r=0;for(isNaN(e)&&(e=2),y(t[0])&&(t=t[0]);r<t.length;r++)n+=g.pow(g.abs(t[r]),e);return g.pow(n,1/e)},angle:function(t,e){return g.acos(m.dot(t,e)/(m.norm(t)*m.norm(e)))},aug:function(t,e){for(var n=[],r=0;r<t.length;r++)n.push(t[r].slice());for(r=0;r<n.length;r++)i.apply(n[r],e[r]);return n},inv:function(t){for(var e,n=t.length,r=t[0].length,i=m.identity(n,r),o=m.gauss_jordan(t,i),s=[],a=0;a<n;a++)for(s[a]=[],e=r;e<o[0].length;e++)s[a][e-r]=o[a][e];return s},det:function(t){var e,n=t.length,r=2*n,i=new Array(r),o=n-1,s=r-1,a=o-n+1,u=s,c=0,l=0;if(2===n)return t[0][0]*t[1][1]-t[0][1]*t[1][0];for(;c<r;c++)i[c]=1;for(c=0;c<n;c++){for(e=0;e<n;e++)i[a<0?a+n:a]*=t[c][e],i[u<n?u+n:u]*=t[c][e],a++,u--;a=--o-n+1,u=--s}for(c=0;c<n;c++)l+=i[c];for(;c<r;c++)l-=i[c];return l},gauss_elimination:function(t,e){for(var n,r,i,o,s=0,a=0,u=t.length,c=t[0].length,l=0,h=[],f=(t=m.aug(t,e))[0].length,s=0;s<u;s++){for(r=t[s][s],o=(a=s)+1;o<c;o++)r<g.abs(t[o][s])&&(r=t[o][s],a=o);if(a!=s)for(o=0;o<f;o++)i=t[s][o],t[s][o]=t[a][o],t[a][o]=i;for(a=s+1;a<u;a++)for(n=t[a][s]/t[s][s],o=s;o<f;o++)t[a][o]=t[a][o]-n*t[s][o]}for(s=u-1;0<=s;s--){for(l=0,a=s+1;a<=u-1;a++)l+=h[a]*t[s][a];h[s]=(t[s][f-1]-l)/t[s][s]}return h},gauss_jordan:function(t,e){for(var n,r=m.aug(t,e),i=r.length,o=r[0].length,s=0,a=0;a<i;a++){for(var u=a,c=a+1;c<i;c++)g.abs(r[c][a])>g.abs(r[u][a])&&(u=c);var l=r[a];for(r[a]=r[u],r[u]=l,c=a+1;c<i;c++)for(s=r[c][a]/r[a][a],n=a;n<o;n++)r[c][n]-=r[a][n]*s}for(a=i-1;0<=a;a--){for(s=r[a][a],c=0;c<a;c++)for(n=o-1;a-1<n;n--)r[c][n]-=r[a][n]*r[c][a]/s;for(r[a][a]/=s,n=i;n<o;n++)r[a][n]/=s}return r},triaUpSolve:function(n,t){var r,i=n[0].length,o=m.zeros(1,i)[0],e=!1;return null!=t[0].length&&(t=t.map(function(t){return t[0]}),e=!0),m.arange(i-1,-1,-1).forEach(function(e){r=m.arange(e+1,i).map(function(t){return o[t]*n[e][t]}),o[e]=(t[e]-m.sum(r))/n[e][e]}),e?o.map(function(t){return[t]}):o},triaLowSolve:function(n,t){var r,e=n[0].length,i=m.zeros(1,e)[0],o=!1;return null!=t[0].length&&(t=t.map(function(t){return t[0]}),o=!0),m.arange(e).forEach(function(e){r=m.arange(e).map(function(t){return n[e][t]*i[t]}),i[e]=(t[e]-m.sum(r))/n[e][e]}),o?i.map(function(t){return[t]}):i},lu:function(r){var t,e=r.length,i=m.identity(e),o=m.zeros(r.length,r[0].length);return m.arange(e).forEach(function(t){o[0][t]=r[0][t]}),m.arange(1,e).forEach(function(n){m.arange(n).forEach(function(e){t=m.arange(e).map(function(t){return i[n][t]*o[t][e]}),i[n][e]=(r[n][e]-m.sum(t))/o[e][e]}),m.arange(n,e).forEach(function(e){t=m.arange(n).map(function(t){return i[n][t]*o[t][e]}),o[n][e]=r[t.length][e]-m.sum(t)})}),[i,o]},cholesky:function(t){var r,e=t.length,i=m.zeros(t.length,t[0].length);return m.arange(e).forEach(function(n){r=m.arange(n).map(function(t){return g.pow(i[n][t],2)}),i[n][n]=g.sqrt(t[n][n]-m.sum(r)),m.arange(n+1,e).forEach(function(e){r=m.arange(n).map(function(t){return i[n][t]*i[e][t]}),i[e][n]=(t[n][e]-m.sum(r))/i[n][n]})}),i},gauss_jacobi:function(t,e,n,r){for(var i,o,s,a,u=0,c=0,l=t.length,h=[],f=[],p=[];u<l;u++)for(h[u]=[],f[u]=[],p[u]=[],c=0;c<l;c++)c<u?(h[u][c]=t[u][c],f[u][c]=p[u][c]=0):u<c?(f[u][c]=t[u][c],h[u][c]=p[u][c]=0):(p[u][c]=t[u][c],h[u][c]=f[u][c]=0);for(s=m.multiply(m.multiply(m.inv(p),m.add(h,f)),-1),o=m.multiply(m.inv(p),e),a=m.add(m.multiply(s,i=n),o),u=2;g.abs(m.norm(m.subtract(a,i)))>r;)a=m.add(m.multiply(s,i=a),o),u++;return a},gauss_seidel:function(t,e,n,r){for(var i,o,s,a,u,c=0,l=t.length,h=[],f=[],p=[];c<l;c++)for(h[c]=[],f[c]=[],p[c]=[],i=0;i<l;i++)i<c?(h[c][i]=t[c][i],f[c][i]=p[c][i]=0):c<i?(f[c][i]=t[c][i],h[c][i]=p[c][i]=0):(p[c][i]=t[c][i],h[c][i]=f[c][i]=0);for(a=m.multiply(m.multiply(m.inv(m.add(p,h)),f),-1),s=m.multiply(m.inv(m.add(p,h)),e),u=m.add(m.multiply(a,o=n),s),c=2;g.abs(m.norm(m.subtract(u,o)))>r;)u=m.add(m.multiply(a,o=u),s),c+=1;return u},SOR:function(t,e,n,r,i){for(var o,s,a,u,c,l=0,h=t.length,f=[],p=[],d=[];l<h;l++)for(f[l]=[],p[l]=[],d[l]=[],o=0;o<h;o++)o<l?(f[l][o]=t[l][o],p[l][o]=d[l][o]=0):l<o?(p[l][o]=t[l][o],f[l][o]=d[l][o]=0):(d[l][o]=t[l][o],f[l][o]=p[l][o]=0);for(u=m.multiply(m.inv(m.add(d,m.multiply(f,i))),m.subtract(m.multiply(d,1-i),m.multiply(p,i))),a=m.multiply(m.multiply(m.inv(m.add(d,m.multiply(f,i))),e),i),c=m.add(m.multiply(u,s=n),a),l=2;g.abs(m.norm(m.subtract(c,s)))>r;)c=m.add(m.multiply(u,s=c),a),l++;return c},householder:function(t){for(var e,n,r,i,o,s=t.length,a=t[0].length,u=0,c=[];u<s-1;u++){for(n=0,o=u+1;o<a;o++)n+=t[o][u]*t[o][u];for(n=(0<t[u+1][u]?-1:1)*g.sqrt(n),r=g.sqrt((n*n-t[u+1][u]*n)/2),(c=m.zeros(s,1))[u+1][0]=(t[u+1][u]-n)/(2*r),i=u+2;i<s;i++)c[i][0]=t[i][u]/(2*r);e=m.subtract(m.identity(s,a),m.multiply(m.multiply(c,m.transpose(c)),2)),t=m.multiply(e,m.multiply(t,e))}return t},QR:(a=m.sum,u=m.arange,function(e){var t,n,r,i=e.length,o=e[0].length,s=m.zeros(o,o);for(e=m.copy(e),n=0;n<o;n++){for(s[n][n]=g.sqrt(a(u(i).map(function(t){return e[t][n]*e[t][n]}))),t=0;t<i;t++)e[t][n]=e[t][n]/s[n][n];for(r=n+1;r<o;r++)for(s[n][r]=a(u(i).map(function(t){return e[t][n]*e[t][r]})),t=0;t<i;t++)e[t][r]=e[t][r]-e[t][n]*s[n][r]}return[e,s]}),lstsq:function(t,e){var n=!1;void 0===e[0].length&&(e=e.map(function(t){return[t]}),n=!0);var o,s,r=(i=m.QR(t))[0],i=i[1],t=t[0].length,r=m.slice(r,{col:{end:t}}),t=m.slice(i,{row:{end:t}}),t=(o=t,t=(o=m.copy(o)).length,s=m.identity(t),m.arange(t-1,-1,-1).forEach(function(i){m.sliceAssign(s,{row:i},m.divide(m.slice(s,{row:i}),o[i][i])),m.sliceAssign(o,{row:i},m.divide(m.slice(o,{row:i}),o[i][i])),m.arange(i).forEach(function(t){var e=m.multiply(o[t][i],-1),n=m.slice(o,{row:t}),r=m.multiply(m.slice(o,{row:i}),e);m.sliceAssign(o,{row:t},m.add(n,r));r=m.slice(s,{row:t}),e=m.multiply(m.slice(s,{row:i}),e);m.sliceAssign(s,{row:t},m.add(r,e))})}),s);return void 0===(r=m.transpose(r))[0].length&&(r=[r]),void 0===(e=m.multiply(m.multiply(t,r),e)).length&&(e=[[e]]),n?e.map(function(t){return t[0]}):e},jacobi:function(t){for(var e,n,r,i,o,s,a,u=1,c=t.length,l=m.identity(c,c),h=[];1===u;){for(o=t[0][1],i=1,e=r=0;e<c;e++)for(n=0;n<c;n++)e!=n&&o<g.abs(t[e][n])&&(o=g.abs(t[e][n]),r=e,i=n);for(s=t[r][r]===t[i][i]?0<t[r][i]?g.PI/4:-g.PI/4:g.atan(2*t[r][i]/(t[r][r]-t[i][i]))/2,(a=m.identity(c,c))[r][r]=g.cos(s),a[r][i]=-g.sin(s),a[i][r]=g.sin(s),a[i][i]=g.cos(s),l=m.multiply(l,a),t=m.multiply(m.multiply(m.inv(a),t),a),u=0,e=1;e<c;e++)for(n=1;n<c;n++)e!=n&&.001<g.abs(t[e][n])&&(u=1)}for(e=0;e<c;e++)h.push(t[e][e]);return[l,h]},rungekutta:function(t,e,n,r,i,o){var s,a,u;if(2===o)for(;r<=n;)i=i+((s=e*t(r,i))+(a=e*t(r+e,i+s)))/2,r+=e;if(4===o)for(;r<=n;)i=i+((s=e*t(r,i))+2*(a=e*t(r+e/2,i+s/2))+2*(u=e*t(r+e/2,i+a/2))+e*t(r+e,i+u))/6,r+=e;return i},romberg:function(t,e,n,r){for(var i,o,s,a,u,c=0,l=(n-e)/2,h=[],f=[],p=[];c<r/2;){for(u=t(e),s=e,a=0;s<=n;s+=l,a++)h[a]=s;for(i=h.length,s=1;s<i-1;s++)u+=(s%2!=0?4:2)*t(h[s]);u=l/3*(u+t(n)),p[c]=u,l/=2,c++}for(o=p.length,i=1;1!==o;){for(s=0;s<o-1;s++)f[s]=(g.pow(4,i)*p[s+1]-p[s])/(g.pow(4,i)-1);o=f.length,p=f,f=[],i++}return p},richardson:function(t,e,n,r){function i(t,e){for(var n,r=0,i=t.length;r<i;r++)t[r]===e&&(n=r);return n}for(var o,s,a,u,c,l=g.abs(n-t[i(t,n)+1]),h=0,f=[],p=[];l<=r;)o=i(t,n+r),s=i(t,n),f[h]=(e[o]-2*e[s]+e[2*s-o])/(r*r),r/=2,h++;for(u=f.length,a=1;1!=u;){for(c=0;c<u-1;c++)p[c]=(g.pow(4,a)*f[c+1]-f[c])/(g.pow(4,a)-1);u=p.length,f=p,p=[],a++}return f},simpson:function(t,e,n,r){for(var i,o=(n-e)/r,s=t(e),a=[],u=e,c=0,l=1;u<=n;u+=o,c++)a[c]=u;for(i=a.length;l<i-1;l++)s+=(l%2!=0?4:2)*t(a[l]);return o/3*(s+t(n))},hermite:function(t,e,n,r){for(var i,o=t.length,s=0,a=0,u=[],c=[],l=[],h=[];a<o;a++){for(u[a]=1,i=0;i<o;i++)a!=i&&(u[a]*=(r-t[i])/(t[a]-t[i]));for(i=c[a]=0;i<o;i++)a!=i&&(c[a]+=1/(t[a]-t[i]));l[a]=(1-2*(r-t[a])*c[a])*(u[a]*u[a]),h[a]=(r-t[a])*(u[a]*u[a]),s+=l[a]*e[a]+h[a]*n[a]}return s},lagrange:function(t,e,n){for(var r,i,o=0,s=0,a=t.length;s<a;s++){for(i=e[s],r=0;r<a;r++)s!=r&&(i*=(n-t[r])/(t[s]-t[r]));o+=i}return o},cubic_spline:function(t,e,n){for(var r,i,o=t.length,s=0,a=[],u=[],c=[],l=[],h=[],f=[];s<o-1;s++)l[s]=t[s+1]-t[s];for(c[0]=0,s=1;s<o-1;s++)c[s]=3/l[s]*(e[s+1]-e[s])-3/l[s-1]*(e[s]-e[s-1]);for(s=1;s<o-1;s++)a[s]=[],u[s]=[],a[s][s-1]=l[s-1],a[s][s]=2*(l[s-1]+l[s]),a[s][s+1]=l[s],u[s][0]=c[s];for(i=m.multiply(m.inv(a),u),r=0;r<o-1;r++)h[r]=(e[r+1]-e[r])/l[r]-l[r]*(i[r+1][0]+2*i[r][0])/3,f[r]=(i[r+1][0]-i[r][0])/(3*l[r]);for(r=0;r<o&&!(t[r]>n);r++);return e[--r]+(n-t[r])*h[r]+m.sq(n-t[r])*i[r]+(n-t[r])*m.sq(n-t[r])*f[r]},gauss_quadrature:function(){throw new Error("gauss_quadrature not yet implemented")},PCA:function(t){for(var e,n,r,i,o,s,a=t.length,u=t[0].length,c=0,l=[],h=[],f=[],p=[],d=[],g=[],c=0;c<a;c++)l[c]=m.sum(t[c])/u;for(c=0;c<u;c++)for(p[c]=[],e=0;e<a;e++)p[c][e]=t[e][c]-l[e];for(p=m.transpose(p),c=0;c<a;c++)for(d[c]=[],e=0;e<a;e++)d[c][e]=m.dot([p[c]],[p[e]])/(u-1);for(s=(r=m.jacobi(d))[0],h=r[1],g=m.transpose(s),c=0;c<h.length;c++)for(e=c;e<h.length;e++)h[c]<h[e]&&(n=h[c],h[c]=h[e],h[e]=n,i=g[c],g[c]=g[e],g[e]=i);for(o=m.transpose(p),c=0;c<a;c++)for(f[c]=[],e=0;e<o.length;e++)f[c][e]=m.dot([g[c]],[o[e]]);return[t,h,g,f]}}),function(t){for(var e=0;e<t.length;e++)!function(r){m.fn[r]=function(t,e){var n=this;return e?(setTimeout(function(){e.call(n,m.fn[r].call(n,t))},15),this):"number"==typeof m[r](this,t)?m[r](this,t):m(m[r](this,t))}}(t[e])}("add divide multiply subtract dot pow exp log abs norm angle".split(" ")),c=f,l=Math,h=[].slice,o=c.utils.isNumber,n=c.utils.isArray,c.extend({zscore:function(){var t=h.call(arguments);return o(t[1])?(t[0]-t[1])/t[2]:(t[0]-c.mean(t[1]))/c.stdev(t[1],t[2])},ztest:function(){var t,e=h.call(arguments);return n(e[1])?(t=c.zscore(e[0],e[1],e[3]),1===e[2]?c.normal.cdf(-l.abs(t),0,1):2*c.normal.cdf(-l.abs(t),0,1)):2<e.length?(t=c.zscore(e[0],e[1],e[2]),1===e[3]?c.normal.cdf(-l.abs(t),0,1):2*c.normal.cdf(-l.abs(t),0,1)):(t=e[0],1===e[1]?c.normal.cdf(-l.abs(t),0,1):2*c.normal.cdf(-l.abs(t),0,1))}}),c.extend(c.fn,{zscore:function(t,e){return(t-this.mean())/this.stdev(e)},ztest:function(t,e,n){n=l.abs(this.zscore(t,n));return 1===e?c.normal.cdf(-n,0,1):2*c.normal.cdf(-n,0,1)}}),c.extend({tscore:function(){var t=h.call(arguments);return 4===t.length?(t[0]-t[1])/(t[2]/l.sqrt(t[3])):(t[0]-c.mean(t[1]))/(c.stdev(t[1],!0)/l.sqrt(t[1].length))},ttest:function(){var t,e=h.call(arguments);return 5===e.length?(t=l.abs(c.tscore(e[0],e[1],e[2],e[3])),1===e[4]?c.studentt.cdf(-t,e[3]-1):2*c.studentt.cdf(-t,e[3]-1)):o(e[1])?(t=l.abs(e[0]),1==e[2]?c.studentt.cdf(-t,e[1]-1):2*c.studentt.cdf(-t,e[1]-1)):(t=l.abs(c.tscore(e[0],e[1])),1==e[2]?c.studentt.cdf(-t,e[1].length-1):2*c.studentt.cdf(-t,e[1].length-1))}}),c.extend(c.fn,{tscore:function(t){return(t-this.mean())/(this.stdev(!0)/l.sqrt(this.cols()))},ttest:function(t,e){return 1===e?1-c.studentt.cdf(l.abs(this.tscore(t)),this.cols()-1):2*c.studentt.cdf(-l.abs(this.tscore(t)),this.cols()-1)}}),c.extend({anovafscore:function(){var t,e,n,r,i,o,s,a,u=h.call(arguments);if(1===u.length){for(i=new Array(u[0].length),s=0;s<u[0].length;s++)i[s]=u[0][s];u=i}for(e=new Array,s=0;s<u.length;s++)e=e.concat(u[s]);for(n=c.mean(e),s=t=0;s<u.length;s++)t+=u[s].length*l.pow(c.mean(u[s])-n,2);for(t/=u.length-1,s=o=0;s<u.length;s++)for(r=c.mean(u[s]),a=0;a<u[s].length;a++)o+=l.pow(u[s][a]-r,2);return t/(o/=e.length-u.length)},anovaftest:function(){var t=h.call(arguments);if(o(t[0]))return 1-c.centralF.cdf(t[0],t[1],t[2]);for(var e=c.anovafscore(t),n=t.length-1,r=0,i=0;i<t.length;i++)r+=t[i].length;return 1-c.centralF.cdf(e,n,r-n-1)},ftest:function(t,e,n){return 1-c.centralF.cdf(t,e,n)}}),c.extend(c.fn,{anovafscore:function(){return c.anovafscore(this.toArray())},anovaftes:function(){for(var t=0,e=0;e<this.length;e++)t+=this[e].length;return c.ftest(this.anovafscore(),this.length-1,t-this.length)}}),c.extend({qscore:function(){var t,e,n,r,i=h.call(arguments),i=o(i[0])?(t=i[0],e=i[1],n=i[2],r=i[3],i[4]):(t=c.mean(i[0]),e=c.mean(i[1]),n=i[0].length,r=i[1].length,i[2]);return l.abs(t-e)/(i*l.sqrt((1/n+1/r)/2))},qtest:function(){var t,e=h.call(arguments),n=(e=3===e.length?(t=e[0],e.slice(1)):7===e.length?(t=c.qscore(e[0],e[1],e[2],e[3],e[4]),e.slice(5)):(t=c.qscore(e[0],e[1],e[2]),e.slice(3)))[0],e=e[1];return 1-c.tukey.cdf(t,e,n-e)},tukeyhsd:function(t){for(var e=c.pooledstdev(t),n=t.map(function(t){return c.mean(t)}),r=t.reduce(function(t,e){return t+e.length},0),i=[],o=0;o<t.length;++o)for(var s=o+1;s<t.length;++s){var a=c.qtest(n[o],n[s],t[o].length,t[s].length,e,r,t.length);i.push([[o,s],a])}return i}}),c.extend({normalci:function(){var t=h.call(arguments),e=new Array(2),n=4===t.length?l.abs(c.normal.inv(t[1]/2,0,1)*t[2]/l.sqrt(t[3])):l.abs(c.normal.inv(t[1]/2,0,1)*c.stdev(t[2])/l.sqrt(t[2].length));return e[0]=t[0]-n,e[1]=t[0]+n,e},tci:function(){var t=h.call(arguments),e=new Array(2),n=4===t.length?l.abs(c.studentt.inv(t[1]/2,t[3]-1)*t[2]/l.sqrt(t[3])):l.abs(c.studentt.inv(t[1]/2,t[2].length-1)*c.stdev(t[2],!0)/l.sqrt(t[2].length));return e[0]=t[0]-n,e[1]=t[0]+n,e},significant:function(t,e){return t<e}}),c.extend(c.fn,{normalci:function(t,e){return c.normalci(t,e,this.toArray())},tci:function(t,e){return c.tci(t,e,this.toArray())}}),c.extend(c.fn,{oneSidedDifferenceOfProportions:function(t,e,n,r){r=b(t,e,n,r);return c.ztest(r,1)},twoSidedDifferenceOfProportions:function(t,e,n,r){r=b(t,e,n,r);return c.ztest(r,2)}}),f.models={ols:function(t,e){var n=w(t,e),r=C(n),t={F_statistic:t=(i=n).R2/i.df_model/((1-i.R2)/i.df_resid),pvalue:1-(e=t,t=i.df_model,i=i.df_resid,f.beta.cdf(e/(i/t+e),t/2,i/2))},i=1-(1-n.R2)*((n.nobs-1)/n.df_resid);return n.t=r,n.f=t,n.adjust_R2=i,n}},f.extend({buildxmatrix:function(){for(var t=new Array(arguments.length),e=0;e<arguments.length;e++)t[e]=[1].concat(arguments[e]);return f(t)},builddxmatrix:function(){for(var t=new Array(arguments[0].length),e=0;e<arguments[0].length;e++)t[e]=[1].concat(arguments[0][e]);return f(t)},buildjxmatrix:function(t){for(var e=new Array(t.length),n=0;n<t.length;n++)e[n]=t[n];return f.builddxmatrix(e)},buildymatrix:function(t){return f(t).transpose()},buildjymatrix:function(t){return t.transpose()},matrixmult:function(t,e){var n,r,i,o,s;if(t.cols()==e.rows()){if(1<e.rows()){for(o=[],n=0;n<t.rows();n++)for(o[n]=[],r=0;r<e.cols();r++){for(i=s=0;i<t.cols();i++)s+=t.toArray()[n][i]*e.toArray()[i][r];o[n][r]=s}return f(o)}for(o=[],n=0;n<t.rows();n++)for(o[n]=[],r=0;r<e.cols();r++){for(i=s=0;i<t.cols();i++)s+=t.toArray()[n][i]*e.toArray()[r];o[n][r]=s}return f(o)}},regress:function(t,e){var n=f.xtranspxinv(t),t=t.transpose(),t=f.matrixmult(f(n),t);return f.matrixmult(t,e)},regresst:function(t,e,n){var r=f.regress(t,e),i={anova:{}},o=f.jMatYBar(t,r);i.yBar=o;var s=e.mean();i.anova.residuals=f.residuals(e,o),i.anova.ssr=f.ssr(o,s),i.anova.msr=i.anova.ssr/(t[0].length-1),i.anova.sse=f.sse(e,o),i.anova.mse=i.anova.sse/(e.length-(t[0].length-1)-1),i.anova.sst=f.sst(e,s),i.anova.mst=i.anova.sst/(e.length-1),i.anova.r2=1-i.anova.sse/i.anova.sst,i.anova.r2<0&&(i.anova.r2=0),i.anova.fratio=i.anova.msr/i.anova.mse,i.anova.pvalue=f.anovaftest(i.anova.fratio,t[0].length-1,e.length-(t[0].length-1)-1),i.anova.rmse=Math.sqrt(i.anova.mse),i.anova.r2adj=1-i.anova.mse/i.anova.mst,i.anova.r2adj<0&&(i.anova.r2adj=0),i.stats=new Array(t[0].length);for(var a,u,c,l=f.xtranspxinv(t),h=0;h<r.length;h++)a=Math.sqrt(i.anova.mse*Math.abs(l[h][h])),u=Math.abs(r[h]/a),c=f.ttest(u,e.length-t[0].length-1,n),i.stats[h]=[r[h],a,u,c];return i.regress=r,i},xtranspx:function(t){return f.matrixmult(t.transpose(),t)},xtranspxinv:function(t){t=f.matrixmult(t.transpose(),t);return f.inv(t)},jMatYBar:function(t,e){e=f.matrixmult(t,e);return new f(e)},residuals:function(t,e){return f.matrixsubtract(t,e)},ssr:function(t,e){for(var n=0,r=0;r<t.length;r++)n+=Math.pow(t[r]-e,2);return n},sse:function(t,e){for(var n=0,r=0;r<t.length;r++)n+=Math.pow(t[r]-e[r],2);return n},sst:function(t,e){for(var n=0,r=0;r<t.length;r++)n+=Math.pow(t[r]-e,2);return n},matrixsubtract:function(t,e){for(var n=new Array(t.length),r=0;r<t.length;r++){n[r]=new Array(t[r].length);for(var i=0;i<t[r].length;i++)n[r][i]=t[r][i]-e[r][i]}return f(n)}}),f.jStat=f});var CryptoApi=function(n){var r={};function i(t){if(r[t])return r[t].exports;var e=r[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,i),e.l=!0,e.exports}return i.m=n,i.c=r,i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)i.d(n,r,function(t){return e[t]}.bind(null,r));return n},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="",i(i.s=29)}([function(t,e,n){"use strict";function r(t,e){return t<<e|t>>>32-e|0}function i(t,e){return t>>>e|t<<32-e|0}function o(t,e,n){return 32===n?e:32<n?o(e,t,n-32):4294967295&(t>>>n|e<<32-n)}function s(t,e,n){return 32===n?t:32<n?s(e,t,n-32):4294967295&(e>>>n|t<<32-n)}n.d(e,"a",function(){return r}),n.d(e,"b",function(){return i}),n.d(e,"d",function(){return s}),n.d(e,"c",function(){return o})},function(t,e,n){"use strict";function r(t){for(var e="",n=0,r=t.length;n<r;n++){var i=t.charCodeAt(n);i<128?e+=String.fromCharCode(i):(i<2048?e+=String.fromCharCode(192|i>>6):(i<55296||57344<=i?e+=String.fromCharCode(224|i>>12):(n++,i=65536+((1023&i)<<10|1023&t.charCodeAt(n)),e+=String.fromCharCode(240|i>>18),e+=String.fromCharCode(128|i>>12&63)),e+=String.fromCharCode(128|i>>6&63)),e+=String.fromCharCode(128|63&i))}return e}n.d(e,"a",function(){return r})},function(t,e,n){"use strict";function r(t){for(var e="",n=0,r=t.length;n<r;n++)e+=(t.charCodeAt(n)<16?"0":"")+t.charCodeAt(n).toString(16);return e}n.d(e,"a",function(){return r})},function(t,e,n){"use strict";function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function i(t){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function o(t,e){return(o=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)})(s,n(4).a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(s.prototype,[{key:"process",value:function(){for(;this.state.message.length>=this.blockSizeInBytes;){this.blockUnits=[];for(var t=0;t<this.blockSizeInBytes;t+=4)this.blockUnits.push(this.state.message.charCodeAt(t)<<24|this.state.message.charCodeAt(t+1)<<16|this.state.message.charCodeAt(t+2)<<8|this.state.message.charCodeAt(t+3));this.state.message=this.state.message.substr(this.blockSizeInBytes),this.processBlock(this.blockUnits)}}},{key:"processBlock",value:function(t){}},{key:"getStateHash",value:function(t){t=t||this.state.hash.length;for(var e="",n=0;n<t;n++)e+=String.fromCharCode(this.state.hash[n]>>24&255)+String.fromCharCode(this.state.hash[n]>>16&255)+String.fromCharCode(this.state.hash[n]>>8&255)+String.fromCharCode(255&this.state.hash[n]);return e}},{key:"addLengthBits",value:function(){this.state.message+="\0\0\0"+String.fromCharCode(this.state.length>>29&255)+String.fromCharCode(this.state.length>>21&255)+String.fromCharCode(this.state.length>>13&255)+String.fromCharCode(this.state.length>>5&255)+String.fromCharCode(this.state.length<<3&255)}}]),n=s;function s(t){var e;return function(t){if(!(t instanceof s))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=i(s).call(this,t))||"object"!==r(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).unitOrder=1,t.blockUnits=[],t}e.a=n},function(t,e,n){"use strict";var r=(function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(i.prototype,[{key:"reset",value:function(){this.state={},this.state.message="",this.state.length=0}},{key:"getState",value:function(){return JSON.parse(JSON.stringify(this.state))}},{key:"setState",value:function(t){this.state=t}},{key:"update",value:function(t){this.state.message+=t,this.state.length+=t.length,this.process()}},{key:"process",value:function(){}},{key:"finalize",value:function(){return""}},{key:"getStateHash",value:function(t){return""}},{key:"addPaddingPKCS7",value:function(t){this.state.message+=new Array(t+1).join(String.fromCharCode(t))}},{key:"addPaddingISO7816",value:function(t){this.state.message+="€"+new Array(t).join("\0")}},{key:"addPaddingZero",value:function(t){this.state.message+=new Array(t+1).join("\0")}}]),i);function i(t){!function(t){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")}(this),this.unitSize=4,this.unitOrder=0,this.blockSize=16,this.blockSizeInBytes=this.blockSize*this.unitSize,this.options=t||{},this.reset()}e.a=r},function(t,e,n){"use strict";function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function i(t){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function o(t,e){return(o=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)})(s,n(4).a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(s.prototype,[{key:"process",value:function(){for(;this.state.message.length>=this.blockSizeInBytes;){this.blockUnits=[];for(var t=0;t<this.blockSizeInBytes;t+=4)this.blockUnits.push(this.state.message.charCodeAt(t)|this.state.message.charCodeAt(t+1)<<8|this.state.message.charCodeAt(t+2)<<16|this.state.message.charCodeAt(t+3)<<24);this.state.message=this.state.message.substr(this.blockSizeInBytes),this.processBlock(this.blockUnits)}}},{key:"processBlock",value:function(t){}},{key:"getStateHash",value:function(t){t=t||this.state.hash.length;for(var e="",n=0;n<t;n++)e+=String.fromCharCode(255&this.state.hash[n])+String.fromCharCode(this.state.hash[n]>>8&255)+String.fromCharCode(this.state.hash[n]>>16&255)+String.fromCharCode(this.state.hash[n]>>24&255);return e}},{key:"addLengthBits",value:function(){this.state.message+=String.fromCharCode(this.state.length<<3&255)+String.fromCharCode(this.state.length>>5&255)+String.fromCharCode(this.state.length>>13&255)+String.fromCharCode(this.state.length>>21&255)+String.fromCharCode(this.state.length>>29&255)+"\0\0\0"}}]),n=s;function s(t){var e;return function(t){if(!(t instanceof s))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=i(s).call(this,t))||"object"!==r(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).blockUnits=[],t}e.a=n},function(t,e,n){"use strict";var r=n(3),E=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var T=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],r=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(u,r.a),r=[{key:"reset",value:function(){switch(o(s(u.prototype),"reset",this).call(this),this.options.length){case 384:this.state.hash=[-876896931,-1056596264,1654270250,914150663,-1856437926,812702999,355462360,-150054599,1731405415,-4191439,-1900787065,1750603025,-619958771,1694076839,1203062813,-1090891868];break;case 512:this.state.hash=[1779033703,-205731576,-1150833019,-2067093701,1013904242,-23791573,-1521486534,1595750129,1359893119,-1377402159,-1694144372,725511199,528734635,-79577749,1541459225,327033209];break;default:for(var t=new u,e=0;e<16;e++)t.state.hash[e]=2779096485^t.state.hash[e];t.update("SHA-512/"+this.options.length);var n=t.finalize();this.state.hash=[];for(var r=0;r<64;r+=4)this.state.hash.push(n.charCodeAt(r)<<24|n.charCodeAt(r+1)<<16|n.charCodeAt(r+2)<<8|n.charCodeAt(r+3))}}},{key:"processBlock",value:function(t){for(var e,n,r,i,o=this.state.hash[0],s=this.state.hash[1],a=this.state.hash[2],u=this.state.hash[3],c=this.state.hash[4],l=this.state.hash[5],h=this.state.hash[6],f=this.state.hash[7],p=this.state.hash[8],d=this.state.hash[9],g=this.state.hash[10],m=this.state.hash[11],v=this.state.hash[12],y=this.state.hash[13],b=this.state.hash[14],w=this.state.hash[15],_=0;_<this.options.rounds;_+=2){_<32?(this.W[_]=t[_],this.W[_+1]=t[_+1]):(e=Object(E.c)(this.W[_-30],this.W[_-29],1)^Object(E.c)(this.W[_-30],this.W[_-29],8)^this.W[_-30]>>>7,n=Object(E.d)(this.W[_-30],this.W[_-29],1)^Object(E.d)(this.W[_-30],this.W[_-29],8)^(this.W[_-29]>>>7|this.W[_-30]<<25),r=Object(E.c)(this.W[_-4],this.W[_-3],19)^Object(E.c)(this.W[_-4],this.W[_-3],61)^this.W[_-4]>>>6,i=Object(E.d)(this.W[_-4],this.W[_-3],19)^Object(E.d)(this.W[_-4],this.W[_-3],61)^(this.W[_-3]>>>6|this.W[_-4]<<26),S=(65535&this.W[_-13])+(65535&this.W[_-31])+(65535&n)+(65535&i)|0,O=(this.W[_-13]>>>16)+(this.W[_-31]>>>16)+(n>>>16)+(i>>>16)+(S>>>16)|0,k=(65535&this.W[_-14])+(65535&this.W[_-32])+(65535&e)+(65535&r)+(O>>>16)|0,C=(this.W[_-14]>>>16)+(this.W[_-32]>>>16)+(e>>>16)+(r>>>16)+(k>>>16)|0,this.W[_]=4294967295&(C<<16|65535&k),this.W[_+1]=4294967295&(O<<16|65535&S)),e=Object(E.c)(o,s,28)^Object(E.c)(o,s,34)^Object(E.c)(o,s,39),n=Object(E.d)(o,s,28)^Object(E.d)(o,s,34)^Object(E.d)(o,s,39);var x=d&m^~d&y,C=o&a^o&c^a&c,k=s&u^s&l^u&l,S=(S=(S=b+(r=Object(E.c)(p,d,14)^Object(E.c)(p,d,18)^Object(E.c)(p,d,41))+((O=w+(i=Object(E.d)(p,d,14)^Object(E.d)(p,d,18)^Object(E.d)(p,d,41))|0)>>>0<w>>>0?1:0)|0)+(p&g^~p&v)+((O=O+x|0)>>>0<x>>>0?1:0)|0)+T[_]+((O=O+T[_+1]|0)>>>0<T[_+1]>>>0?1:0)|0,O=O+this.W[_+1]|0,k=n+k|0,b=v,w=y,v=g,y=m,g=p,m=d,p=h+(S=S+this.W[_]+(O>>>0<this.W[_+1]>>>0?1:0)|0)+((d=f+O|0)>>>0<f>>>0?1:0)|0,h=c,f=l,c=a,l=u,a=o,u=s,o=S+(e+C+(k>>>0<n>>>0?1:0)|0)+((s=O+k|0)>>>0<O>>>0?1:0)|0}this.state.hash[1]=this.state.hash[1]+s|0,this.state.hash[0]=this.state.hash[0]+o+(this.state.hash[1]>>>0<s>>>0?1:0)|0,this.state.hash[3]=this.state.hash[3]+u|0,this.state.hash[2]=this.state.hash[2]+a+(this.state.hash[3]>>>0<u>>>0?1:0)|0,this.state.hash[5]=this.state.hash[5]+l|0,this.state.hash[4]=this.state.hash[4]+c+(this.state.hash[5]>>>0<l>>>0?1:0)|0,this.state.hash[7]=this.state.hash[7]+f|0,this.state.hash[6]=this.state.hash[6]+h+(this.state.hash[7]>>>0<f>>>0?1:0)|0,this.state.hash[9]=this.state.hash[9]+d|0,this.state.hash[8]=this.state.hash[8]+p+(this.state.hash[9]>>>0<d>>>0?1:0)|0,this.state.hash[11]=this.state.hash[11]+m|0,this.state.hash[10]=this.state.hash[10]+g+(this.state.hash[11]>>>0<m>>>0?1:0)|0,this.state.hash[13]=this.state.hash[13]+y|0,this.state.hash[12]=this.state.hash[12]+v+(this.state.hash[13]>>>0<y>>>0?1:0)|0,this.state.hash[15]=this.state.hash[15]+w|0,this.state.hash[14]=this.state.hash[14]+b+(this.state.hash[15]>>>0<w>>>0?1:0)|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<112?112-this.state.message.length|0:240-this.state.message.length|0),this.state.message+="\0\0\0\0\0\0\0\0",this.addLengthBits(),this.process(),this.getStateHash(this.options.length/32|0)}}],function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(u.prototype,r),u);function u(t){var e;return function(t){if(!(t instanceof u))throw new TypeError("Cannot call a class as a function")}(this),(t=t||{}).length=t.length||512,t.rounds=t.rounds||160,e=this,(t=!(t=s(u).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).blockSize=32,t.blockSizeInBytes=t.blockSize*t.unitSize,t.W=new Array(160),t}e.a=r},function(t,e,n){"use strict";var r=n(3),f=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],r=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(u,r.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(u.prototype,[{key:"reset",value:function(){224===(o(s(u.prototype),"reset",this).call(this),this.options.length)?this.state.hash=[-1056596264,914150663,812702999,-150054599,-4191439,1750603025,1694076839,-1090891868]:this.state.hash=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225]}},{key:"processBlock",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0|this.state.hash[5],a=0|this.state.hash[6],u=0|this.state.hash[7],c=0;c<this.options.rounds;c++){this.W[c]=c<16?0|t[c]:this.W[c-16]+(Object(f.b)(this.W[c-15],7)^Object(f.b)(this.W[c-15],18)^this.W[c-15]>>>3)+this.W[c-7]+(Object(f.b)(this.W[c-2],17)^Object(f.b)(this.W[c-2],19)^this.W[c-2]>>>10)|0;var l=u+(Object(f.b)(o,6)^Object(f.b)(o,11)^Object(f.b)(o,25))+(o&s^~o&a)+p[c]+this.W[c]|0,h=(Object(f.b)(e,2)^Object(f.b)(e,13)^Object(f.b)(e,22))+(e&n^e&r^n&r)|0,u=a,a=s,s=o,o=i+l|0,i=r,r=n,n=e,e=l+h|0}this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0,this.state.hash[5]=this.state.hash[5]+s|0,this.state.hash[6]=this.state.hash[6]+a|0,this.state.hash[7]=this.state.hash[7]+u|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash(this.options.length/32|0)}}]),u);function u(t){var e;return function(t){if(!(t instanceof u))throw new TypeError("Cannot call a class as a function")}(this),(t=t||{}).length=t.length||256,t.rounds=t.rounds||64,e=this,(t=!(t=s(u).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).W=new Array(64),t}e.a=r},function(t,e,n){"use strict";var r=n(5),d=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function s(t,e,n){return(s="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=a(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function a(t){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function u(t,e){return(u=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var g=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],m=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],v=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],y=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],n=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&u(t,e)}(b,r.a),n=[{key:"F",value:function(t,e,n){return t^e^n}},{key:"G",value:function(t,e,n){return t&e|~t&n}},{key:"H",value:function(t,e,n){return(t|~e)^n}},{key:"I",value:function(t,e,n){return t&n|e&~n}},{key:"J",value:function(t,e,n){return t^(e|~n)}},{key:"T",value:function(t,e,n,r){return t<16?this.F(e,n,r):t<32?this.G(e,n,r)+1518500249|0:t<48?this.H(e,n,r)+1859775393|0:t<64?this.I(e,n,r)+2400959708|0:this.J(e,n,r)+2840853838|0}},{key:"T64",value:function(t,e,n,r){return t<16?this.I(e,n,r)+1352829926|0:t<32?this.H(e,n,r)+1548603684|0:t<48?this.G(e,n,r)+1836072691|0:this.F(e,n,r)}},{key:"T80",value:function(t,e,n,r){return t<16?this.J(e,n,r)+1352829926|0:t<32?this.I(e,n,r)+1548603684|0:t<48?this.H(e,n,r)+1836072691|0:t<64?this.G(e,n,r)+2053994217|0:this.F(e,n,r)}}],o((r=b).prototype,[{key:"reset",value:function(){switch(s(a(b.prototype),"reset",this).call(this),this.options.length){case 128:this.state.hash=[1732584193,4023233417,2562383102,271733878],this.processBlock=this.processBlock128;break;case 256:this.state.hash=[1732584193,4023233417,2562383102,271733878,1985229328,4275878552,2309737967,19088743],this.processBlock=this.processBlock256;break;case 320:this.state.hash=[1732584193,4023233417,2562383102,271733878,3285377520,1985229328,4275878552,2309737967,19088743,1009589775],this.processBlock=this.processBlock320;break;default:this.state.hash=[1732584193,4023233417,2562383102,271733878,3285377520],this.processBlock=this.processBlock160}}},{key:"processBlock128",value:function(t){for(var e=a=0|this.state.hash[0],n=l=0|this.state.hash[1],r=c=0|this.state.hash[2],i=u=0|this.state.hash[3],o=0;o<64;o++){var s=(s=a+t[g[o]]|0)+b.T(o,l,c,u)|0,a=u,u=c,c=l,l=s=Object(d.a)(s,v[o]);s=(s=e+t[m[o]]|0)+b.T64(o,n,r,i)|0,e=i,i=r,r=n,n=s=Object(d.a)(s,y[o])}var h=this.state.hash[1]+c+i|0;this.state.hash[1]=this.state.hash[2]+u+e|0,this.state.hash[2]=this.state.hash[3]+a+n|0,this.state.hash[3]=this.state.hash[0]+l+r|0,this.state.hash[0]=h}},{key:"processBlock160",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=e,a=n,u=r,c=i,l=o,h=0;h<80;h++){var f=(f=e+t[g[h]]|0)+b.T(h,n,r,i)|0;f=(f=Object(d.a)(f,v[h]))+o|0,e=o,o=i,i=Object(d.a)(r,10),r=n,n=f,f=(f=s+t[m[h]]|0)+b.T80(h,a,u,c)|0,f=(f=Object(d.a)(f,y[h]))+l|0,s=l,l=c,c=Object(d.a)(u,10),u=a,a=f}var p=this.state.hash[1]+r+c|0;this.state.hash[1]=this.state.hash[2]+i+l|0,this.state.hash[2]=this.state.hash[3]+o+s|0,this.state.hash[3]=this.state.hash[4]+e+a|0,this.state.hash[4]=this.state.hash[0]+n+u|0,this.state.hash[0]=p}},{key:"processBlock256",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0|this.state.hash[5],a=0|this.state.hash[6],u=0|this.state.hash[7],c=0;c<64;c+=1){var l=(l=e+t[g[c]]|0)+b.T(c,n,r,i)|0,e=i,i=r,r=n,n=l=Object(d.a)(l,v[c]);switch(l=(l=o+t[m[c]]|0)+b.T64(c,s,a,u)|0,o=u,u=a,a=s,s=l=Object(d.a)(l,y[c]),c){case 15:l=e,e=o,o=l;break;case 31:l=n,n=s,s=l;break;case 47:l=r,r=a,a=l;break;case 63:l=i,i=u,u=l}}this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0,this.state.hash[5]=this.state.hash[5]+s|0,this.state.hash[6]=this.state.hash[6]+a|0,this.state.hash[7]=this.state.hash[7]+u|0}},{key:"processBlock320",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0|this.state.hash[5],a=0|this.state.hash[6],u=0|this.state.hash[7],c=0|this.state.hash[8],l=0|this.state.hash[9],h=0;h<80;h+=1){var f=(f=e+t[g[h]]|0)+b.T(h,n,r,i)|0;switch(f=(f=Object(d.a)(f,v[h]))+o|0,e=o,o=i,i=Object(d.a)(r,10),r=n,n=f,f=(f=s+t[m[h]]|0)+b.T80(h,a,u,c)|0,f=(f=Object(d.a)(f,y[h]))+l|0,s=l,l=c,c=Object(d.a)(u,10),u=a,a=f,h){case 15:f=n,n=a,a=f;break;case 31:f=i,i=c,c=f;break;case 47:f=e,e=s,s=f;break;case 63:f=r,r=u,u=f;break;case 79:f=o,o=l,l=f}}this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0,this.state.hash[5]=this.state.hash[5]+s|0,this.state.hash[6]=this.state.hash[6]+a|0,this.state.hash[7]=this.state.hash[7]+u|0,this.state.hash[8]=this.state.hash[8]+c|0,this.state.hash[9]=this.state.hash[9]+l|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),o(r,n),b);function b(t){return function(t){if(!(t instanceof b))throw new TypeError("Cannot call a class as a function")}(this),(t=t||{}).length=t.length||160,e=this,!(t=a(b).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t;var e}e.a=n},function(t,e,n){"use strict";var r=n(3),c=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var u=[10097,32533,76520,13586,34673,54876,80959,9117,39292,74945,37542,4805,64894,74296,24805,24037,20636,10402,822,91665,8422,68953,19645,9303,23209,2560,15953,34764,35080,33606,99019,2529,9376,70715,38311,31165,88676,74397,4436,27659,12807,99970,80157,36147,64032,36653,98951,16877,12171,76833,66065,74717,34072,76850,36697,36170,65813,39885,11199,29170,31060,10805,45571,82406,35303,42614,86799,7439,23403,9732,85269,77602,2051,65692,68665,74818,73053,85247,18623,88579,63573,32135,5325,47048,90553,57548,28468,28709,83491,25624,73796,45753,3529,64778,35808,34282,60935,20344,35273,88435,98520,17767,14905,68607,22109,40558,60970,93433,50500,73998,11805,5431,39808,27732,50725,68248,29405,24201,52775,67851,83452,99634,6288,98083,13746,70078,18475,40610,68711,77817,88685,40200,86507,58401,36766,67951,90364,76493,29609,11062,99594,67348,87517,64969,91826,8928,93785,61368,23478,34113,65481,17674,17468,50950,58047,76974,73039,57186,40218,16544,80124,35635,17727,8015,45318,22374,21115,78253,14385,53763,74350,99817,77402,77214,43236,210,45521,64237,96286,2655,69916,26803,66252,29148,36936,87203,76621,13990,94400,56418,9893,20505,14225,68514,46427,56788,96297,78822,54382,14598,91499,14523,68479,27686,46162,83554,94750,89923,37089,20048,80336,94598,26940,36858,70297,34135,53140,33340,42050,82341,44104,81949,85157,47954,32979,26575,57600,40881,22222,6413,12550,73742,11100,2040,12860,74697,96644,89439,28707,25815,63606,49329,16505,34484,40219,52563,43651,77082,7207,31790,61196,90446,26457,47774,51924,33729,65394,59593,42582,60527,15474,45266,95270,79953,59367,83848,82396,10118,33211,59466,94557,28573,67897,54387,54622,44431,91190,42592,92927,45973,42481,16213,97344,8721,16868,48767,3071,12059,25701,46670,23523,78317,73208,89837,68935,91416,26252,29663,5522,82562,4493,52494,75246,33824,45862,51025,61962,79335,65337,12472,549,97654,64051,88159,96119,63896,54692,82391,23287,29529,35963,15307,26898,9354,33351,35462,77974,50024,90103,39333,59808,8391,45427,26842,83609,49700,13021,24892,78565,20106,46058,85236,1390,92286,77281,44077,93910,83647,70617,42941,32179,597,87379,25241,5567,7007,86743,17157,85394,11838,69234,61406,20117,45204,15956,6e4,18743,92423,97118,96338,19565,41430,1758,75379,40419,21585,66674,36806,84962,85207,45155,14938,19476,7246,43667,94543,59047,90033,20826,69541,94864,31994,36168,10851,34888,81553,1540,35456,5014,51176,98086,24826,45240,28404,44999,8896,39094,73407,35441,31880,33185,16232,41941,50949,89435,48581,88695,41994,37548,73043,80951,406,96382,70774,20151,23387,25016,25298,94624,61171,79752,49140,71961,28296,69861,2591,74852,20539,387,59579,18633,32537,98145,6571,31010,24674,5455,61427,77938,91936,74029,43902,77557,32270,97790,17119,52527,58021,80814,51748,54178,45611,80993,37143,5335,12969,56127,19255,36040,90324,11664,49883,52079,84827,59381,71539,9973,33440,88461,23356,48324,77928,31249,64710,2295,36870,32307,57546,15020,9994,69074,94138,87637,91976,35584,4401,10518,21615,1848,76938,9188,20097,32825,39527,4220,86304,83389,87374,64278,58044,90045,85497,51981,50654,94938,81997,91870,76150,68476,64659,73189,50207,47677,26269,62290,64464,27124,67018,41361,82760,75768,76490,20971,87749,90429,12272,95375,5871,93823,43178,54016,44056,66281,31003,682,27398,20714,53295,7706,17813,8358,69910,78542,42785,13661,58873,4618,97553,31223,8420,28306,3264,81333,10591,40510,7893,32604,60475,94119,1840,53840,86233,81594,13628,51215,90290,28466,68795,77762,20791,91757,53741,61613,62269,50263,90212,55781,76514,83483,47055,89415,92694,397,58391,12607,17646,48949,72306,94541,37408,77513,3820,86864,29901,68414,82774,51908,13980,72893,55507,19502,37174,69979,20288,55210,29773,74287,75251,65344,67415,21818,59313,93278,81757,5686,73156,7082,85046,31853,38452,51474,66499,68107,23621,94049,91345,42836,9191,8007,45449,99559,68331,62535,24170,69777,12830,74819,78142,43860,72834,33713,48007,93584,72869,51926,64721,58303,29822,93174,93972,85274,86893,11303,22970,28834,34137,73515,90400,71148,43643,84133,89640,44035,52166,73852,70091,61222,60561,62327,18423,56732,16234,17395,96131,10123,91622,85496,57560,81604,18880,65138,56806,87648,85261,34313,65861,45875,21069,85644,47277,38001,2176,81719,11711,71602,92937,74219,64049,65584,49698,37402,96397,1304,77586,56271,10086,47324,62605,40030,37438,97125,40348,87083,31417,21815,39250,75237,62047,15501,29578,21826,41134,47143,34072,64638,85902,49139,6441,3856,54552,73135,42742,95719,9035,85794,74296,8789,88156,64691,19202,7638,77929,3061,18072,96207,44156,23821,99538,4713,66994,60528,83441,7954,19814,59175,20695,5533,52139,61212,6455,83596,35655,6958,92983,5128,9719,77433,53783,92301,50498,10850,62746,99599,10507,13499,6319,53075,71839,6410,19362,39820,98952,43622,63147,64421,80814,43800,9351,31024,73167,59580,6478,75569,78800,88835,54486,23768,6156,4111,8408,38508,7341,23793,48763,90822,97022,17719,4207,95954,49953,30692,70668,94688,16127,56196,80091,82067,63400,5462,69200,65443,95659,18288,27437,49632,24041,8337,65676,96299,90836,27267,50264,13192,72294,7477,44606,17985,48911,97341,30358,91307,6991,19072,24210,36699,53728,28825,35793,28976,66252,68434,94688,84473,13622,62126,98408,12843,82590,9815,93146,48908,15877,54745,24591,35700,4754,83824,52692,54130,55160,6913,45197,42672,78601,11883,9528,63011,98901,14974,40344,10455,16019,14210,33712,91342,37821,88325,80851,43667,70883,12883,97343,65027,61184,4285,1392,17974,15077,90712,26769,21778,30976,38807,36961,31649,42096,63281,2023,8816,47449,19523,59515,65122,59659,86283,68258,69572,13798,16435,91529,67245,52670,35583,16563,79246,86686,76463,34222,26655,90802,60584,47377,7500,37992,45134,26529,26760,83637,41326,44344,53853,41377,36066,94850,58838,73859,49364,73331,96240,43642,24637,38736,74384,89342,52623,7992,12369,18601,3742,83873,83080,12451,38992,22815,7759,51777,97377,27585,51972,37867,16444,24334,36151,99073,27493,70939,85130,32552,54846,54759,60790,18157,57178,65762,11161,78576,45819,52979,65130,4860,3991,10461,93716,16894,66083,24653,84609,58232,88618,19161,38555,95554,32886,59780,8355,60860,29735,47762,71299,23853,17546,73704,92052,46215,55121,29281,59076,7936,27954,58909,32643,52861,95819,6831,911,98936,76355,93779,80863,514,69572,68777,39510,35905,14060,40619,29549,69616,33564,60780,24122,66591,27699,6494,14845,46672,61958,77100,90899,75754,61196,30231,92962,61773,41839,55382,17267,70943,78038,70267,30532,21704,10274,12202,39685,23309,10061,68829,55986,66485,3788,97599,75867,20717,74416,53166,35208,33374,87539,8823,48228,63379,85783,47619,53152,67433,35663,52972,16818,60311,60365,94653,35075,33949,42614,29297,1918,28316,98953,73231,83799,42402,56623,34442,34994,41374,70071,14736,9958,18065,32960,7405,36409,83232,99385,41600,11133,7586,15917,6253,19322,53845,57620,52606,66497,68646,78138,66559,19640,99413,11220,94747,7399,37408,48509,23929,27482,45476,85244,35159,31751,57260,68980,5339,15470,48355,88651,22596,3152,19121,88492,99382,14454,4504,20094,98977,74843,93413,22109,78508,30934,47744,7481,83828,73788,6533,28597,20405,94205,20380,22888,48893,27499,98748,60530,45128,74022,84617,82037,10268,78212,16993,35902,91386,44372,15486,65741,14014,87481,37220,41849,84547,46850,52326,34677,58300,74910,64345,19325,81549,46352,33049,69248,93460,45305,7521,61318,31855,14413,70951,11087,96294,14013,31792,59747,67277,76503,34513,39663,77544,52701,8337,56303,87315,16520,69676,11654,99893,2181,68161,57275,36898,81304,48585,68652,27376,92852,55866,88448,3584,20857,73156,70284,24326,79375,95220,1159,63267,10622,48391,15633,84924,90415,93614,33521,26665,55823,47641,86225,31704,92694,48297,39904,2115,59589,49067,66821,41575,49767,4037,77613,19019,88152,80,20554,91409,96277,48257,50816,97616,38688,32486,45134,63545,59404,72059,43947,51680,43852,59693,25163,1889,70014,15021,41290,67312,71857,15957,68971,11403,65251,7629,37239,33295,5870,1119,92784,26340,18477,65622,36815,43625,18637,37509,82444,99005,4921,73701,14707,93997,64397,11692,5327,82162,20247,81759,45197,25332,83745,22567,4515,25624,95096,67946,48460,85558,15191,18782,16930,33361,83761,60873,43253,84145,60833,25983,1291,41349,20368,7126,14387,6345,80854,9279,43529,6318,38384,74761,41196,37480,51321,92246,80088,77074,88722,56736,66164,49431,66919,31678,72472,8,80890,18002,94813,31900,54155,83436,35352,54131,5466,55306,93128,18464,74457,90561,72848,11834,79982,68416,39528,72484,82474,25593,48545,35247,18619,13674,18611,19241,81616,18711,53342,44276,75122,11724,74627,73707,58319,15997,7586,16120,82641,22820,92904,13141,32392,19763,61199,67940,90767,4235,13574,17200,69902,63742,78464,22501,18627,90872,40188,28193,29593,88627,94972,11598,62095,36787,441,58997,34414,82157,86887,55087,19152,23,12302,80783,32624,68691,63439,75363,44989,16822,36024,867,76378,41605,65961,73488,67049,9070,93399,45547,94458,74284,5041,49807,20288,34060,79495,4146,52162,90286,54158,34243,46978,35482,59362,95938,91704,30552,4737,21031,75051,93029,47665,64382,99782,93478,94015,46874,32444,48277,59820,96163,64654,25843,41145,42820,74108,88222,88570,74015,25704,91035,1755,14750,48968,38603,62880,87873,95160,59221,22304,90314,72877,17334,39283,4149,11748,12102,80580,41867,17710,59621,6554,7850,73950,79552,17944,5600,60478,3343,25852,58905,57216,39618,49856,99326,66067,42792,95043,52680,46780,56487,9971,59481,37006,22186,54244,91030,45547,70818,59849,96169,61459,21647,87417,17198,30945,57589,31732,57260,47670,7654,46376,25366,94746,49580,69170,37403,86995,90307,94304,71803,26825,5511,12459,91314,8345,88975,35841,85771,8105,59987,87112,21476,14713,71181,27767,43584,85301,88977,29490,69714,73035,41207,74699,9310,13025,14338,54066,15243,47724,66733,47431,43905,31048,56699,80217,36292,98525,24335,24432,24896,43277,58874,11466,16082,10875,62004,90391,61105,57411,6368,53856,30743,8670,84741,54127,57326,26629,19087,24472,88779,30540,27886,61732,75454,60311,42824,37301,42678,45990,43242,17374,52003,70707,70214,49739,71484,92003,98086,76668,73209,59202,11973,2902,33250,78626,51594,16453,94614,39014,97066,83012,9832,25571,77628,66692,13986,99837,582,81232,44987,9504,96412,90193,79568,44071,28091,7362,97703,76447,42537,98524,97831,65704,9514,41468,85149,49554,17994,14924,39650,95294,556,70481,6905,94559,37559,49678,53119,70312,5682,66986,34099,74474,20740,41615,70360,64114,58660,90850,64618,80620,51790,11436,38072,50273,93113,41794,86861,24781,89683,55411,85667,77535,99892,41396,80504,90670,8289,40902,5069,95083,6783,28102,57816,25807,24260,71529,78920,72682,7385,90726,57166,98884,8583,6170,97965,88302,98041,21443,41808,68984,83620,89747,98882,60808,54444,74412,81105,1176,28838,36421,16489,18059,51061,80940,44893,10408,36222,80582,71944,92638,40333,67054,16067,19516,90120,46759,71643,13177,55292,21036,82808,77501,97427,49386,54480,23604,23554,21785,41101,91178,10174,29420,90438,6312,88940,15995,69321,47458,64809,98189,81851,29651,84215,60942,307,11897,92674,40405,68032,96717,54244,10701,41393,92329,98932,78284,46347,71209,92061,39448,93136,25722,8564,77936,63574,31384,51924,85561,29671,58137,17820,22751,36518,38101,77756,11657,13897,95889,57067,47648,13885,70669,93406,39641,69457,91339,22502,92613,89719,11947,56203,19324,20504,84054,40455,99396,63680,67667,60631,69181,96845,38525,11600,47468,3577,57649,63266,24700,71594,14004,23153,69249,5747,43321,31370,28977,23896,76479,68562,62342,7589,8899,5985,64281,61826,18555,64937,13173,33365,78851,16499,87064,13075,66847,70495,32350,2985,86716,38746,26313,77463,55387,72681,72461,33230,21529,53424,92581,2262,78438,66276,18396,73538,21032,91050,13058,16218,12470,56500,15292,76139,59526,52113,95362,67011,6651,16136,1016,857,55018,56374,35824,71708,49712,97380,10404,55452,34030,60726,75211,10271,36633,68424,58275,61764,97586,54716,50259,46345,87195,46092,26787,60939,89514,11788,68224,23417,73959,76145,30342,40277,11049,72049,15472,50669,48139,36732,46874,37088,73465,9819,58869,35220,12120,86124,51247,44302,60883,52109,21437,36786,49226,77837,19612,78430,11661,94770,77603,65669,86868,12665,30012,75989,39141,77400,28e3,64238,73258,71794,31340,26256,66453,37016,64756,80457,8747,12836,3469,50678,3274,43423,66677,82556,92901,51878,56441,22998,29718,38447,6453,25311,7565,53771,3551,90070,9483,94050,45938,18135,36908,43321,11073,51803,98884,66209,6830,53656,14663,56346,71430,4909,19818,5707,27369,86882,53473,7541,53633,70863,3748,12822,19360,49088,59066,75974,63335,20483,43514,37481,58278,26967,49325,43951,91647,93783,64169,49022,98588,9495,49829,59068,38831,4838,83605,92419,39542,7772,71568,75673,35185,89759,44901,74291,24895,88530,70774,35439,46758,70472,70207,92675,91623,61275,35720,26556,95596,20094,73750,85788,34264,1703,46833,65248,14141,53410,38649,6343,57256,61342,72709,75318,90379,37562,27416,75670,92176,72535,93119,56077,6886,18244,92344,31374,82071,7429,81007,47749,40744,56974,23336,88821,53841,10536,21445,82793,24831,93241,14199,76268,70883,68002,3829,17443,72513,76400,52225,92348,62308,98481,29744,33165,33141,61020,71479,45027,76160,57411,13780,13632,52308,77762,88874,33697,83210,51466,9088,50395,26743,5306,21706,70001,99439,80767,68749,95148,94897,78636,96750,9024,94538,91143,96693,61886,5184,75763,47075,88158,5313,53439,14908,8830,60096,21551,13651,62546,96892,25240,47511,58483,87342,78818,7855,39269,566,21220,292,24069,25072,29519,52548,54091,21282,21296,50958,17695,58072,68990,60329,95955,71586,63417,35947,67807,57621,64547,46850,37981,38527,9037,64756,3324,4986,83666,9282,25844,79139,78435,35428,43561,69799,63314,12991,93516,23394,94206,93432,37836,94919,26846,2555,74410,94915,48199,5280,37470,93622,4345,15092,19510,18094,16613,78234,50001,95491,97976,38306,32192,82639,54624,72434,92606,23191,74693,78521,104,18248,75583,90326,50785,54034,66251,35774,14692,96345,44579,85932,44053,75704,20840,86583,83944,52456,73766,77963,31151,32364,91691,47357,40338,23435,24065,8458,95366,7520,11294,23238,1748,41690,67328,54814,37777,10057,42332,38423,2309,70703,85736,46148,14258,29236,12152,5088,65825,2463,65533,21199,60555,33928,1817,7396,89215,30722,22102,15880,92261,17292,88190,61781,48898,92525,21283,88581,60098,71926,819,59144,224,30570,90194,18329,6999,26857,19238,64425,28108,16554,16016,42,83229,10333,36168,65617,94834,79782,23924,49440,30432,81077,31543,95216,64865,13658,51081,35337,74538,44553,64672,90960,41849,93865,44608,93176,34851,5249,29329,19715,94082,14738,86667,43708,66354,93692,25527,56463,99380,38793,85774,19056,13939,46062,27647,66146,63210,96296,33121,54196,34108,75814,85986,71171,15102,28992,63165,98380,36269,60014,7201,62448,46385,42175,88350,46182,49126,52567,64350,16315,53969,80395,81114,54358,64578,47269,15747,78498,90830,25955,99236,43286,91064,99969,95144,64424,77377,49553,24241,8150,89535,8703,91041,77323,81079,45127,93686,32151,7075,83155,10252,73100,88618,23891,87418,45417,20268,11314,50363,26860,27799,49416,83534,19187,8059,76677,2110,12364,71210,87052,50241,90785,97889,81399,58130,64439,5614,59467,58309,87834,57213,37510,33689,1259,62486,56320,46265,73452,17619,56421,40725,23439,41701,93223,41682,45026,47505,27635,56293,91700,4391,67317,89604,73020,69853,61517,51207,86040,2596,1655,9918,45161,222,54577,74821,47335,8582,52403,94255,26351,46527,68224,90183,85057,72310,34963,83462,49465,46581,61499,4844,94626,2963,41482,83879,44942,63915,94365,92560,12363,30246,2086,75036,88620,91088,67691,67762,34261,8769,91830,23313,18256,28850,37639,92748,57791,71328,37110,66538,39318,15626,44324,82827,8782,65960,58167,1305,83950,45424,72453,19444,68219,64733,94088,62006,89985,36936,61630,97966,76537,46467,30942,7479,67971,14558,22458,35148,1929,17165,12037,74558,16250,71750,55546,29693,94984,37782,41659,39098,23982,29899,71594,77979,54477,13764,17315,72893,32031,39608,75992,73445,1317,50525,87313,45191,30214,19769,90043,93478,58044,6949,31176,88370,50274,83987,45316,38551,79418,14322,91065,7841,36130,86602,10659,40859,964,71577,85447,61079,96910,72906,7361,84338,34114,52096,66715,51091,86219,81115,49625,48799,89485,24855,13684,68433,70595,70102,71712,88559,92476,32903,68009,58417,87962,11787,16644,72964,29776,63075,13270,84758,49560,10317,28778,23006,31036,84906,81488,17340,74154,42801,27917,89792,62604,62234,13124,76471,51667,37589,87147,24743,48023,6325,79794,35889,13255,4925,99004,70322,60832,76636,56907,56534,72615,46288,36788,93196,68656,66492,35933,52293,47953,95495,95304,50009,83464,28608,38074,74083,9337,7965,65047,36871,59015,21769,30398,44855,1020,80680,59328,8712,48190,45332,27284,31287,66011,9376,86379,74508,33579,77114,92955,23085,92824,3054,25242,16322,48498,9938,44420,13484,52319,58875,2012,88591,52500,95795,41800,95363,54142,17482,32705,60564,12505,40954,46174,64130,63026,96712,79883,39225,52653,69549,36693,59822,22684,31661,88298,15489,16030,42480,15372,38781,71995,77438,91161,10192,7839,62735,99218,25624,2547,27445,69187,55749,32322,15504,73298,51108,48717,92926,75705,89787,96114,99902,37749,96305,12829,70474,838,50385,91711,80370,56504,56857,80906,9018,76569,61072,48568,36491,22587,44363,39592,61546,90181,37348,41665,41339,62106,44203,6732,76111,79840,67999,32231,76869,58652,49983,1669,27464,79553,52855,25988,18087,38052,17529,13607,657,76173,43357,77334,24140,53860,2906,89863,44651,55715,26203,65933,51087,98234,40625,45545,63563,89148,82581,4110,66683,99001,9796,47349,65003,66524,81970,71262,14479,31300,8681,58068,44115,40064,77879,23965,69019,73985,19453,26225,97543,37044,7494,85778,35345,61115,92498,49737,64599,7158,82763,25072,38478,57782,75291,62155,52056,4786,11585,71251,25572,79771,93328,66927,54069,58752,26624,50463,77361,29991,96526,2820,91659,12818,96356,49499,1507,40223,9171,83642,21057,2677,9367,38097,16100,19355,6120,15378,56559,69167,30235,6767,66323,78294,14916,19124,88044,16673,66102,86018,29406,75415,22038,27056,26906,25867,14751,92380,30434,44114,6026,79553,55091,95385,41212,37882,46864,54717,97038,53805,64150,70915,63127,63695,41288,38192,72437,75075,18570,52065,8853,30104,79937,66913,53200,84570,78079,28970,53859,37632,80274,35240,32960,74859,7359,55176,3930,38984,35151,82576,82805,94031,12779,90879,24109,25367,77861,9541,85739,69023,64971,99321,7521,95909,43897,71724,92581,5471,64337,98949,3606,78236,78985,29212,57369,34857,67757,58019,58872,96526,28749,56592,37871,72905,70198,57319,54116,47014,18285,33692,72111,60958,96848,17893,40993,50445,14186,76877,87867,50335,9513,44346,26439,55293,6449,44301,63740,40158,72703,88321,85062,57345,66231,15409,3451,95261,43561,15673,28956,90303,62469,82517,43035,36850,15592,64098,59022,31752,4370,50486,11885,23085,41712,80692,48492,16495,99721,36912,28267,27882,16269,64483,11273,2680,1616,46138,54606,14761,5134,45144,63213,49666,27441,86989,29884,54334,6740,8368,80051,81020,17882,74973,74531,94994,24927,64894,22667,20466,82948,66831,47427,76033,31197,59817,20064,61135,28556,29695,80179,74058,18293,9963,35278,13062,83094,23373,90287,33477,48865,30348,70174,11468,25994,25343,22317,1587,30682,1,67814,59557,23362,13746,82244,42093,24671,79458,93730,45488,60234,67098,9899,25775,332,36636,57594,19958,85564,58977,12247,60774,66371,69442,20385,14486,91330,50332,46023,75768,59877,60081,92936,72302,75064,85727,52987,5750,19384,33684,78859,80458,69902,34870,88684,49762,40801,86291,18194,90366,82639,53844,96326,65728,48563,26027,52692,62406,76294,41848,63010,69841,29451,36170,21529,16525,64326,22086,24469,57407,96033,37771,31002,18311,93285,31948,14331,58335,15977,80336,81667,27286,24361,61638,57580,95270,46180,76990,53031,94366,2727,49944,19278,5756,51875,53445,33342,1965,7937,10054,97712,87693,58124,46064,39133,77385,9605,65359,70113,90563,86637,94282,12025,31926,24541,23854,58407,32131,92845,20714,27898,26917,50326,35145,50859,72119,95094,29441,42301,62460,75252,94267,38422,73047,24200,85349,72049,91723,97802,98496,12734,73432,10371,57213,53300,80847,46229,7099,72961,13767,65654,31102,82119,96946,65919,81083,3819,57888,57908,16849,77111,41429,92261,45263,1172,55926,78835,27697,48420,58865,41207,21406,8582,10785,36233,12237,7866,13706,92551,11021,63813,71512,65206,37768,94325,14721,20990,54235,71986,5345,56239,52028,1419,7215,55067,11669,21738,66605,69621,69827,8537,18638,60982,28151,98885,76431,25566,3085,23639,30849,63986,73287,26201,36174,14106,54102,57041,16141,64174,3591,90024,73332,31254,17288,59809,25061,51612,47951,16570,43330,79213,11354,55585,19646,99246,37564,32660,20632,21124,60597,69315,31312,57741,85108,21615,24365,27684,16124,33888,14966,35303,69921,15795,4020,67672,86816,63027,84470,45605,44887,26222,79888,58982,22466,98844,48353,60666,58256,31140,93507,69561,6256,88526,18655,865,75247,264,65957,98261,72706,36396,46065,85700,32121,99975,73627,78812,89638,86602,96758,65099,52777,46792,13790,55240,52002,10313,91933,71231,10053,78416,54563,96004,42215,30094,45958,48437,49591,50483,13422,69108,59952,27896,40450,79327,31962,46456,39260,51479,61882,48181,50691,64709,32902,10676,12083,35771,79656,56667,76783,3937,99859,10362,57411,40986,35045,2838,29255,64230,84418,34988,77644,39892,77327,74129,53444,35487,95803,38640,20383,55402,25793,14213,87082,42837,95030,97198,61608,97723,79390,35290,34683,81419,87133,70447,53127,97146,28299,56763,12868,1145,12147,58158,92124,60934,18414,97510,7056,54488,20719,53743,91037,44797,52110,8512,18991,20129,31441,51449,14661,71126,23180,68124,18807,70997,21913,19594,70355,73637,68266,60775,43164,52643,96363,77989,79332,39890,65379,20405,52935,43816,92740,95319,4538,60660,28982,15328,80475,34690,2293,19646,46524,96627,33159,42081,8816,74931,20674,8697,66169,46460,46326,39923,60625,28386,22919,19415,75766,43668,31626,70301,67053,3949,70082,2303,48642,38429,94053,38770,68137,68441,52928,70244,91954,17401,92693,98342,21451,84988,80487,33807,73797,49494,41878,76635,83227,76618,11946,13451,87591,78381,21407,90038,72638,69692,51599,86413,32019,64856,74730,41531,11064,1790,58817,86400,66213,92599,70905,78324,54326,43659,34206,63132,38837,40210,96346,16967,81619,96503,14881,89405,32205,49508,98425,2451,35423,56072,36810,30332,85998,49358,92748,84147,79835,94867,41224,61794,35066,82220,66684,20096,2754,41731,37068,32753,91059,13407,5607,69384,53329,95909,44968,11397,92973,50014,92997,80968,93761,57598,74703,7768,37978,73873,33475,9720,97852,98449,48722,84977,11271,11728,68318,22312,78792,87508,88466,72976,47099,84126,38595,85124,64405,90020,7492,52413,95111,34455,86311,68892,1074,60274,28136,19328,38161,57475,13771,63562,84207,94121,18901,52768,33801,82087,86091,59969,90398,56870,55756,78841,98450,54165,55106,50343,70519,14567,36780,55450,19606,83749,67562,64765,38543,16585,86841,73742,8766,39252,75678,75379,78760,37279,15280,13558,95916,89759,76686,76467,67147,63110,94008,8037,35263,53710,16667,79008,11231,29397,67136,18601,64502,90228,89109,72849,22711,65547,34542,26686,81678,87765,77654,23664,96352,14106,32938,28083,18633,80286,65507,46197,52722,75476,77816,47204,34876,45963,79262,90181,84041,3745,90041,30780,27226,92847,85572,15308,80688,5761,82638,13464,23683,81015,54214,64175,43701,86845,15569,50687,52679,87696,8285,97444,47599,94472,64150,87753,68652,60726,26213,17320,64553,81285,98126,12158,52095,64833,492,35817,55571,91300,97812,37507,4209,53515,64342,21223,16662,43265,68219,3529,43636,68417,53640,95326,93381,37113,80751,76469,96677,43054,22937,31954,13266,34140,27253,2734,99070,60077,57988,93211,92795,83795,57477,3941,39007,14619,38320,93449,31336,25279,97030,26245,47394,39475,90621,23820,29344,94859,91604,14033,41868,14816,4075,66644,87803,97815,99552,78666,3942,8175,22345,19983,76783,99044,20851,84981,59052,77178,72109,76475,21619,73017,6812,56633,50612,55289,4671,84419,94072,94446,80603,32188,93415,23464,43947,43728,74284,67177,57105,31059,10642,13803,69602,46961,66567,19359,84676,63918,40650,12923,15974,79732,20225,92525,71179,4859,91208,60430,5239,61458,24089,68852,60171,29603,42535,86365,93905,28237,45317,60718,82001,41679,20679,56304,70043,87568,21386,59049,78353,48696,77379,55309,23780,28391,5940,55583,81256,59418,97521,32846,70761,90115,45325,5490,65974,11186,15357,3568,450,96644,58976,36211,88240,92457,89200,94696,11370,91157,48487,59501,56983,89795,42789,69758,79701,29511,55968,41472,89474,84344,80517,7485,97523,17264,82840,59556,37119,30985,48866,60605,95719,70417,59083,95137,76538,44155,67286,57897,28262,4052,919,86207,79932,44236,10089,44373,65670,44285,6903,20834,49701,95735,21149,3425,17594,31427,14262,32252,68540,39427,44026,47257,45055,95091,8367,28381,57375,41562,83883,27715,10122,67745,46497,28626,87297,36568,39483,11385,63292,92305,78683,6146,81905,15038,38338,51206,65749,34119,71516,74068,51094,6665,91884,66762,11428,70908,21506,480,94183,78484,66507,75901,25728,52539,86806,69944,65036,27882,2530,4918,74351,65737,89178,8791,39342,94963,22581,56917,17541,83578,75376,65202,30935,79270,91986,99286,45236,44720,81915,70881,45886,43213,49789,97081,16075,20517,69980,25310,91953,1759,67635,88933,54558,18395,73375,62251,58871,9870,70538,48936,7757,90374,56631,88862,30487,38794,36079,32712,11130,55451,25137,38785,83558,31960,69473,45950,18225,9871,88502,75179,11551,75664,74321,67351,27703,83717,18913,42470,8816,37627,14288,62831,44047,67612,72738,26995,50933,63758,50003,43693,52661,55852,52372,59042,37595,4931,73622,68387,86478,40997,5245,75300,24902,59609,35653,15970,37681,69365,22236,86374,65550,343,98377,35354,65770,15365,41422,71356,16630,40044,19290,66449,53629,79452,71674,30260,97303,6487,62789,13005,70152,22501,49867,89294,59232,31776,54919,99851,5438,1096,72269,50486,16719,6144,82041,38332,64452,31840,99287,59928,25503,8407,46970,45907,99238,74547,19704,72035,26542,54600,79172,58779,35747,78956,11478,41195,58135,63856,33037,45753,60159,25193,71838,7526,7985,60714,88627,75790,38454,96110,39237,19792,34534,70169,24805,63215,38175,38784,38855,24826,50917,25147,17082,26997,32295,10894,21805,65245,85407,37926,69214,38579,84721,23544,88548,65626,75517,69737,55626,52175,21697,19453,16908,82841,24060,40285,19195,80281,89322,15232,70043,60691,86370,91949,19017,83846,77869,14321,95102,87073,71467,31305,64677,80358,52629,79419,22359,87867,48296,50141,46807,82184,95812,84665,74511,59914,4146,90417,58508,62875,17630,21868,9199,30322,33352,43374,25473,4119,63086,14147,14863,38020,44757,98628,57916,22199,11865,42911,62651,78290,9392,77294,63168,21043,17409,13786,27475,75979,89668,43596,74316,84489,54941,95992,45445,41059,55142,15214,42903,16799,88254,95984,48575,77822,21067,57238,35352,96779,89564,23797,99937,46379,27119,16060,30302,95327,12849,38111,97090,7598,78473,63079,18570,72803,70040,91385,96436,96263,17368,56188,85999,50026,36050,73736,13351,48321,28357,51718,65636,72903,21584,21060,39829,15564,4716,14594,22363,97639,65937,17802,31535,42767,98761,30987,57657,33398,63053,25926,20944,19306,81727,2695,97479,79172,72764,66446,78864,12698,15812,97209,38827,91016,91281,57875,45228,49211,69755,99224,43999,62879,8879,80015,74396,57146,64665,31159,6980,79069,37409,75037,69977,85919,42826,6974,61063,97640,13433,92528,91311,8440,38840,22362,93929,1836,36590,75052,89475,15437,65648,99012,70236,12307,83585,414,62851,48787,28447,21702,57033,29633,44760,34165,27548,37516,24343,63046,2081,20378,19510,42226,97134,68739,32982,56455,53129,77693,25022,55534,99375,30086,98001,7432,67126,76656,29347,28492,43108,64736,32278,84816,80440,30461,818,9136,1952,48442,91058,92590,10443,5195,34009,32141,62209,43740,54102,76895,98172,31583,4155,66492,58981,16591,11331,6838,3818,77063,12523,45570,68970,70055,77751,73743,71732,4704,61384,57343,66682,44500,89745,10436,67202,36455,42467,88801,91280,1056,27534,81619,79004,25824,66362,33280,20706,31929,57422,18730,96197,22101,47592,2180,18287,82310,60430,59627,26471,7794,60475,76713,45427,89654,14370,81674,41246,98416,8669,48883,77154,9806,94015,60347,20027,8405,33150,27368,53375,70171,59431,14534,34018,85665,77797,17944,49602,74391,48830,55029,10371,94261,16658,68400,44148,28150,40364,90913,73151,64463,50058,78191,84439,82478,62398,3113,17578,12830,6571,95934,9132,25287,78731,80683,67207,76597,42096,34934,76609,52553,47508,71561,8038,83011,72577,95790,40076,20292,32138,61197,95476,23123,26648,13611,48452,39963,85857,4855,27029,1542,72443,53688,82635,56264,7977,23090,93553,65434,12124,91087,87800,95675,99419,44659,30382,55263,82514,86800,16781,65977,65946,13033,93895,4056,75895,47878,91309,51233,81409,46773,69135,56906,84493,34530,84534,38312,54574,92933,77341,20839,36126,1143,35356,35459,7959,98335,53266,36146,78047,50607,22486,63308,8996,96056,39085,26567,6779,62663,30523,47881,41279,49864,82248,78333,29466,48151,41957,93235,53308,22682,90722,54478,7235,34306,15827,20121,96837,6283,80172,66109,92592,48238,76428,94546,45430,16288,74839,740,25553,83767,35900,5998,7493,46755,11449,88824,44906,33143,7454,56652,34755,63992,59674,65131,46358,12799,96988,51158,73176,1184,49925,63519,11785,29073,72850,47997,75172,55187,15313,40725,33225,56643,10465,38583,86440,97967,26401,17078,38765,33454,19136,57712,48446,98790,27315,71074,10157,57946,35582,49383,61324,26572,84503,3496,60449,17962,26017,65651,40400,83246,80056,75306,75147,41863,25581,87530,33193,43294,5065,99644,62771,75986,79005,44924,18703,40889,4403,5862,2571,82500,74200,36170,46836,74642,65471,26815,30937,64946,10160,15544,31962,54015,28853,66533,14573,79398,47391,73165,47805,77589,16881,13423,89452,76992,62509,9796,57540,13486,48855,25546,47589,21012,47388,78428,70196,84413,81026,87597,22445,83769,85937,38321,85485,87359,9839,67228,71179,94372,4446,62801,50775,96179,40646,44272,12417,47199,39701,30665,32775,66525,53558,78882,31939,67209,38906,34533,99914,27719,216,99225,96537,3843,90564,91110,51838,30300,9559,37795,94880,11325,44979,89696,28129,29931,89971,46292,92710,11036,74760,75307,12291,49618,16293,92408,67928,80823,32872,25460,66819,35374,4035,99087,61129,11341,39118,10891,37217,63638,75477,30068,42334,57570,6890,59353,89939,37692,15232,20033,32202,22348,2766,96791,58448,92248,5769,96684,67885,99295,47271,38655,59513,96960,31718,8974,16122,20535,52380,29769,70660,57425,50891,75044,84257,73315,38181,28673,93140,26307,82265,78382,19681,56585,8975,76764,39956,83450,84663,89963,71584,57696,30829,60527,64947,34899,28805,28397,91830,51842,99838,39839,66971,67177,74219,35637,35634,93581,81746,29991,81096,94279,2968,62561,2479,82126,25702,67953,88088,50293,83423,86206,39935,23253,43041,48941,85787,8388,6671,43574,84908,67295,33623,55060,28174,48415,2529,22009,24524,5283,30460,32399,80423,56929,40852,69969,88541,5979,91496,64730,57198,83145,39750,3568,54669,98679,4297,51047,31492,47734,31343,31180,232,19707,24823,75079,73943,17997,8446,91252,39879,58682,82972,18417,39203,36681,42895,8459,15618,17941,52594,43277,16530,40052,91100,87422,47230,95699,49794,50492,87439,86354,4546,65333,11057,77727,19748,38722,91821,18107,42125,89239,28847,54623,38783,47803,31414,38450,3697,89186,30579,44188,26532,8420,80723,48100,60748,76330,45832,8311,16051,4475,13400,48527,46073,17439,56498,94632,9021,16871,83366,14896,4219,38375,87890,90217,42370,61028,85101,76771,83715,94737,69973,74187,1958,59691,86712,86570,60984,76342,13648,85250,28323,48379,45141,36277,51845,29039,3553,5128,59866,51281,68124,17007,24729,29710,41439,40574,11774,86746,89698,56020,37810,88972,11361,95583,70786,589,74473,87513,17690,61427,72914,32517,1804,97910,6327,30246,33049,2622,41026,80875,41293,16752,84225,84414,37137,68956,8095,64981,28180,38629,76962,23840,17477,75268,48297,70340,57888,13938,38554,86836,2195,30270,55484,53364,54705,41380,56316,37723,234,21424,26664,63804,75139,36534,18579,9833,98849,72762,59767,52497,24227,83152,71794,21398,99456,89215,51632,54799,27973,68568,68465,98500,28681,18369,24279,96335,12874,82160,67202,85199,27908,67022,49810,77929,96212,81153,77884,7032,1671,53362,28119,56786,30883,28540,76029,3774,64611,19736,25589,46569,45206,48215,69523,17423,91807,90039,30393,58319,85098,66519,57571,24541,3562,14400,62731,82534,61477,89731,18421,29861,52829,838,78040,43350,74323,82892,84746,28302,13264,7595,134,12933,46831,24864,47275,20527,9110,28485,30326,99826,64005,99308,65779,42760,90066,3974,38688,39968,32604,11694,46262,73262,45405,43923,67397,88228,56405,17839,92073,57622,93328,15442,50186,7570,58001,31e3,8915,11467,14793,82691,51238,12485,51745,18192,5985,36826,89434,38669,91592,88799,65621,67237,59541,19657,93402,58705,73553,78280,69125,95591,81168,91927,25976,89077,71690,19404,64603,59752,74698,44233,67602,38615,31303,28650,53700,89819,7783,4351,77451,47350,21234,16016,41532,76508,23063,44993,43983,33356,61715,96485,22121,78004,6316,87896,99289,93981,37850,66128,92735,45064,50924,24204,58816,65290,34392,55567,66416,72353,45775,68590,85685,72683,60090,37149,85347,57414,72336,12979,5720,92754,76911,96883,74420,5220,85815,23557,80567,44365,70254,50864,36619,51479,23281,76428,18580,34240,59289,49076,18439,29522,42541,4024,84446,92434,90407,77241,19690,78143,65919,13699,91844,91241,38361,67171,90551,5709,3474,76025,97043,33834,44638,54040,82797,545,38159,16089,35870,89158,55864,98078,50563,36492,10994,85909,9018,19252,73887,67928,60045,70782,11937,4074,53814,46621,52577,94853,45968,73667,65062,73306,76045,78649,91654,53958,96537,95542,67622,54579,17279,67440,56441,20681,64011,52226,96618,32831,60664,67547,39523,2043,59748,1887,69229,94653,99271,98164,62155,9234,47367,13047,6364,35064,10073,6793,80248,29009,44969,11129,17139,79630,89772,26921,56949,23465,30036,17173,82459,96218,60768,76417,24405,18710,68887,82394,69729,82503,40873,41590,67255,30757,9657,91881,34578,9511,5417,58953,18532,10721,22029,48524,47778,881,83489,3464,57462,97459,86689,39755,39547,740,36666,7993,31671,86304,12970,73402,52849,31652,79655,11250,18463,57518,20306,25301,1374,51208,33298,87662,61849,60923,68685,69411,39266,80320,34844,89416,81569,83651,35795,40168,33501,1042,58931,3892,85188,74740,85476,23790,33842,89565,53359,25579,59049,62394,72435,12457,21904,18370,97035,57905,9581,91227,92754,37760,1411,7440,87175,88318,63242,85960,56690,12618,30493,11569,73723,7448,58830,157,65814,21118,22140,73793,57855,81830,6795,13183,12625,30635,56429,73216,12342,36722,83886,96828,82870,90954,97614,2370,42160,73370,11944,49067,59452,80495,43911,46712,17033,68037,41963,3874,44856,82985,57453,84358,16120,4454,76624,405,62369,55080,61880,51270,87807,10653,36894,70850,35660,234,14705,93418,94084,82856,25384,71555,56754,78315,18291,91656,98079,52384,43306,65205,75903,58701,99496,50048,33557,87793,90857,10143,46726,84284,43635,41213,83845,70986,91408,80220,5728,68890,46577,21152,43759,43301,93661,97252,50106,10099,13722,18572,44024,351,18173,23717,85114,85998,57782,63951,53723,86853,63851,79430,49181,46386,69666,55743,76162,71724,40028,94786,34457,16906,90040,30789,40281,94697,96584,81907,4055,53990,66397,80579,42517,78181,39251,9467,67097,95523,66568,63632,71048,15581,39904,75774,77495,75994,29911,65690,41178,47712,70355,16998,56025,5230,10093,71495,34784,70950,54680,57811,53782,39145,36829,85342,40406,35883,45668,3459,29870,78252,70088,70621,67153,5737,40933,91075,93335,86853,15860,81167,91259,16118,52401,83593,84474,2423,75608,39646,90871,70284,82100,96032,5115,63678,2225,88087,58581,44364,57468,21539,13042,64150,63754,5210,87644,54114,64013,63562,41388,32397,74152,23982,71982,71700,33026,66477,47838,46712,39848,35083,65927,97868,11067,76771,71799,43836,41014,97025,93225,8511,63096,26628,73012,12543,76269,99708,2629,49845,73677,19193,14924,57236,95564,15010,59667,73773,78515,2624,99744,13585,33746,58771,94785,62628,99585,11363,80832,59979,9444,78700,2596,85984,69438,16913,96475,93283,18625,77086,45911,39746,64722,39938,43930,54619,302,50384,2738,75714,75249,95439,80714,52555,47266,96190,78750,94973,83669,16479,53163,48071,28e3,45011,26733,67132,83362,84162,43028,8415,27236,52651,89059,64844,80910,1676,91752,57815,26264,3415,57532,29981,61200,96036,62600,20068,56530,38487,8432,89514,26883,69165,97237,22361,55276,39902,95927,82190,49269,27212,46095,37106,64254,27460,49572,51700,27679,12574,33891,3867,9925,6476,82018,45094,59014,67113,44192,75,23318,79895,70550,81717,28833,30271,15821,14999,88174,62617,57517,55256,50281,51583,96879,5225,42272,5339,20483,57596,41011,75937,22767,50120,95938,49753,63882,99616,69083,38721,73889,80236,99531,23053,71237,48861,59046,76283,60538,19732,93877,30345,64882,66660,17026,70364,45676,8039,96228,89936,59141,95585,89552,97247,59325,27848,80058,15950,61481,90906,40998,44137,16144,66300,44091,50018,81364,18211,60294,76559,20279,27414,10589,39860,23e3,31767,95618,56738,50332,16936,70342,92481,30702,76264,62619,68678,62284,83112,93032,55203,52614,36950,41796,45403,79262,2887,53596,61308,20738,34811,27099,90956,65448,3080,75795,29753,97699,80872,23830,85882,74427,99523,74904,28017,45898,57232,48525,7086,26805,74533,92470,18840,76011,93109,14344,55614,50284,15865,19458,35856,13464,53679,64603,51571,56124,79107,29596,89572,78198,57121,73649,8804,87977,87959,70859,40909,77295,87877,75158,62810,92074,23244,59516,50552,31602,41899,6347,27821,68370,48596,88577,30231,25267,84622,31449,12086,56461,22962,78213,62483,93966,60437,52239,58113,32526,38708,81607,57016,1695,90110,4649,59990,23979,3855,10297,46516,96092,82305,30760,78756,4967,82876,4773,86651,16648,53133,82439,78851,49766,24553,15273,36417,1901,33386,76979,25920,33372,2695,11982,40911,6230,91696,43907,17827,30332,89203,32215,91806,23080,49102,9174,11548,54590,75803,66108,73882,62324,26017,72716,33887,1285,31604,71039,24337,53514,58964,89901,22040,92751,12617,37007,5523,61672,62557,98540,26094,60284,19621,96230,38044,6545,9458,42988,2913,86345,67936,90174,40840,44991,24256,34989,74086,13652,68706,1363,4294,88008,78693,83068,94746,221,89299,53186,5930,61889,51341,45412,58860,72568,11381,59785,36887,10690,31347,93326,96267,86987,57565,86836,49071,90331,41248,34629,30240,27270,3864,84308,3035,61369,36902,51017,44409,17120,23823,36460,63359,8333,63173,19134,6493,303,18550,26191,19051,81502,66343,6737,90430,65478,58982,82484,16483,47704,44640,68322,44548,72787,2335,28749,39320,5436,98146,56596,812,51445,35533,35478,47573,38414,25542,38032,13442,42983,97207,77854,57806,81616,52828,79429,47389,96795,57764,19605,24767,63253,18809,65093,44449,22952,76872,30983,38948,9310,48336,87651,27110,84427,76209,56412,12760,16747,14551,82626,31224,98636,75100,84882,79479,83420,5347,6803,90063,4617,40257,79183,41766,71873,25242,12275,336,40798,42055,74066,69128,32547,76508,32530,42359,89207,49758,58984,92732,15779,7234,28884,28226,50011,35883,99606,45423,76224,75427,85747,33879,97978,57441,927,19164,74716,40702,19715,70917,60344,40236,9019,50577,15598,53136,57285,20536,7539,74832,89184,41501,39447,97422,97041,21913,40581,76081,13089,28776,54164,55736,36263,71841,34488,74988,55467,43322,9214,36746,67981,71877,81683,32461,84091,19422,88366,62054,85664,13409,8003,88276,6989,16607,33633,85349,5784,25950,97998,74110,16699,60184,92818,79705,10381,1474,18656,50434,18232,92132,66537,70141,42854,25120,39581,28249,14215,34810,19767,3409,11807,6566,66138,42997,41999,67504,87117,28961,5e3,29673,77726,73225,54753,69712,71576,92337,17713,63185,87923,91889,68351,17712,75532,93849,48280,62219,317,25290,29209,90927,92929,92762,60413,2018,31793,76290,73373,80777,60819,77375,57886,47291,99670,32605,29064,99476,80999,31217,35,91300,14892,73653,26593,25305,56797,12837,39560,27582,37253,38531,76489,49946,69108,58687,43092,73807,96282,6648,67431,87124,57694,21660,64002,6,33600,30245,60636,80164,9285,61426,4658,54130,14710,76553,1904,93668,63110,98618,5601,32199,74923,98049,49717,55539,35940,58545,43295,35810,45451,38735,42065,66769,69825,45461,83881,67372,67351,90612,79502,69460,23108,74421,82990,46821,40683,71603,55267,48192,50242,79738,96417,6664,19929,23644,41116,51056,219,45086,32747,49492,15399,24874,80825,95928,61457,45813,59037,16136,3953,83583,5910,12654,53630,92997,22168,93491,71897,74579,24022,6278,24049,71670,43044,8474,38572,77402,35800,7455,96177,41653,74493,20802,65843,73050,73349,2638,65813,96209,49196,45007,32207,14097,66059,46681,7534,71263,20582,10171,51514,52142,60961,57951,25637,37860,21683,86190,90434,94481,85697,95344,2606,74095,61133,7472,64777,94050,41482,975,23471,76052,82021,87676,91345,20196,2612,86299,44996,40312,65712,46079,88514,8610,3685,63197,9073,53105,86824,28112,99306,40706,66840,83003,51590,52755,32285,68454,85058,13645,23073,24724,52989,71880,21952,44144,74975,76715,7844,46447,86643,75579,29276,10864,83179,36721,19300,35066,29383,47478,56644,33354,31414,17643,92374,85085,88458,87191,85248,34963,76278,53230,13953,76985,70959,36663,5293,32658,56767,56997,76736,6558,64248,11907,29123,78458,17678,63805,89973,5076,39263,54404,4355,64957,74407,99838,18836,78098,6490,74888,73719,80675,86178,56283,33591,96957,38382,18772,74773,71229,2603,52673,44609,14843,58418,18060,95459,626,30914,13550,42195,44863,8871,89182,64446,78422,41140,15312,98274,48168,95651,35562,85386,56252,72136,85088,68761,78434,98143,61330,2446,64409,49406,99127,98626,55095,44808,13594,87370,89472,12833,98932,68064,58193,20225,5192,28425,23978,24542,80845,55858,4015,21454,37346,51007,17202,10242,12682,55933,96922,22280,75597,50227,70712,44236,20470,36320,49339,60536,80083,38880,93327,49522,93585,9918,55268,4671,57526,11457,48424,54610,7211,78610,9473,72923,27347,30057,76968,26177,59367,46172,88951,40229,34921,60405,88959,16779,29547,92231,61997,36002,21080,39795,77221,10012,49748,76900,15964,3803,40260,92351,92844,10288,57483,10881,70408,75688,16610,1638,93082,44282,66849,75702,69428,34047,84968,71281,72328,73143,88672,49802,50639,18129,93659,58389,49095,45971,34196,84609,59222,19332,17777,41004,47057,30688,16039,20906,41477,42915,60877,33864,75195,62294,3371,11672,1370,2486,35553,17907,90621,45136,9722,67635,12114,63055,16004,21625,24321,20491,26881,66259,94287,54751,36242,36557,5842,30687,65418,94608,24741,45887,78800,86912,42076,50287,9284,68891,76368,83094,96302,35997,30761,97081,9501,68887,32876,1705,34260,95065,45528,88241,30402,12318,52430,40139,96986,84900,72408,42027,31676,54382,73370,26184,14024,57444,57660,52173,30274,93448,63273,77681,74946,2099,69091,19372,66961,14595,58642,75760,52253,53148,26074,52293,65359,63971,4833,86492,1227,54505,19515,89889,46933,13364,33883,83389,36952,52505,67513,40071,31001,3105,87912,29610,75108,37363,28479,43546,89992,19550,54863,82633,19209,21548,35022,21960,57961,11815,95867,559,26428,69386,57453,70147,73538,49562,46806,64550,36653,25718,68792,31113,7607,48037,71020,22666,65957,11141,39227,7990,19849,65972,74528,40888,55386,95918,92088,91125,53648,66122,138,79933,71058,34826,97725,69513,22915,18246,52244,91161,40861,40374,13239,56162,4703,95851,22824,41271,28202,62852,84238,46625,20031,8524,20077,65817,21174,29279,57712,22401,67500,30980,74485,26480,21343,30031,61921,35744,57308,71196,1865,49234,62616,54021,29008,83672,85839,96836,45077,80900,66906,63526,93824,71820,11033,20183,85704,4683,63512,39144,56880,64424,95979,17709,94849,31771,5737,84286,16757,46256,24478,73180,59978,8254,78963,95437,86351,33824,32540,18357,2668,99260,21284,81351,70961,10255,6911,47394,72408,23827,59865,96395,30665,43699,3593,29165,23388,26628,92402,16731,86740,29493,9069,78653,90094,42735,33682,95041,89887,92369,57949,81585,50593,14698,4737,72551,57271,59433,156,33966,58773,59108,49578,18100,59836,73221,21110,1650,11058,47770,66141,84576,58388,40915,94507,32209,17272,65674,95552,25685,5345,36995,36302,7971,67001,62062,75939,36005,26739,56484,46885,66348,87666,78055,44485,82955,85936,9219,1847,92687,72579,45457,78252,98239,4e4,75563,92408,17175,78845,32638,26959,35406,59553,57852,7506,9,93172,77713,93880,40981,27924,9678,24538,52426,84852,83781,23712,82490,77890,22482,66668,55850,25644,44972,62275,78089,28894,98685,32998,98766,89119,34355,75127,69797,71419,62067,57990,96514,50603,79807,26135,29207,43632,32905,38513,18924,88872,20758,70232,60425,1116,24077,21369,93541,75329,78656,44251,42014,98154,42552,14575,30765,348,1134,71581,68420,78141,21105,63305,9718,54851,65867,8595,47390,39182,51174,41478,64433,59628,31945,87322,78667,95282,5622,26224,19972,97269,98376,14779,51138,49658,45345,4972,52794,15737,496,48939,63485,42780,16061,59631,37171,13483,56058,51093,62290,88227,17400,88433,67363,89507,26482,85964,71336,67799,28342,37747,61722,27180,78755,18603,42953,6606,23875,56766,1932,36113,62807,84012,21103,9685,69662,76755,13701,95168,13169,44726,15284,16702,89617,54397,52052,12835,37741,86434,22400,37947,95763,86337,35189,22756,47473,16618,42479,47405,14055,64262,66670,89692,54032,94591,44149,29854,76691,33263,62048,25116,88598,16119,62116,54517,31883,86707,18895,81790,71294,2684,15292,48107,14341,91416,75609,92564,39987,2283,89970,95855,80970,5432,89860,90293,99851,94648,5598,32171,28793,92305,64244,8277,93391,96717,34464,29838,10664,28050,60122,77934,10758,84922,92220,45071,97697,36368,17792,84792,76594,67319,51886,5665,45201,11348,9254,7510,51039,91683,84500,85338,5555,19633,3870,39576,41486,58524,54508,20707,58504,39642,22454,80069,83455,31043,90794,51934,3295,26582,16300,74990,22197,83310,69642,81113,58558,84833,17105,46659,25003,85749,44829,4103,67516,76458,52392,53546,70291,98846,67315,30686,18555,29755,5923,22732,19501,56181,85351,5023,4808,56911,16793,75336,49712,27723,96974,34321,5454,12862,71924,45928,95697,68664,58183,78104,42483,71204,99628,40642,56410,17350,13396,76724,87509,9158,83708,27298,92651,95086,38851,63558,89810,1580,32518,35795,26514,56322,78635,63731,91428,7247,66460,38671,26799,22549,47991,46064,80467,40083,17141,39152,99872,27561,75389,74778,94893,82935,99076,93419,10474,84436,47536,16719,60136,80566,28404,74525,74212,3704,65516,98197,34210,64140,22238,49939,99542,27481,21992,78181,90060,71365,66935,29578,14961,8569,9454,43308,66753,45972,93572,16382,87320,37183,25478,38164,31997,69856,60898,63968,62264,4799,17591,89937,73905,55890,88285,2448,40398,54180,65869,45155,43407,39105,339,51619,20203,21189,68245,76912,1222,76411,82679,7,66047,32043,42627,16638,27019,15248,66444,8249,18790,82150,54084,84469,3426,50226,99868,88894,43769,66384,8593,41414,2976,60053,51866,87904,74135,53842,59520,67482,16995,32328,29555,49067,2799,68851,41049,97190,53984,99755,46412,45885,64e3,21962,36438,71742,57223,66599,86071,31436,32667,98099,38399,47377,5171,2742,48803,17823,22093,9866,691,5514,25546,2114,5919,56181,96052,67211,61712,25995,3188,23833,38549,44775,55355,61548,55988,47309,23749,30667,70732,33299,16127,30842,78961,41072,9876,18903,30292,25275,61881,15939,72573,84502,92654,97226,53434,77025,63892,12421,33644,39445,30933,84218,13757,37719,84450,2697,60309,22402,80310,92771,45205,72792,95776,85945,74651,216,50842,47854,21916,61588,75405,10495,83083,60427,78495,99809,47890,22993,21508,9459,26845,98130,1184,46438,27698,40652,65654,98517,1096,6998,49133,57041,77983,58708,42176,67356,324,70063,10597,65205,25622,34336,16640,27896,26907,86760,48244,89650,44997,51609,28934,9171,97859,97213,19859,41037,64081,94781,27683,41521,52871,86935,26486,38744,25943,60617,6414,42292,46204,53262,30201,38776,88831,97253,67282,72860,18452,60927,81504,57713,30296,10896,39900,67135,42772,4631,55283,39253,25264,1809,12874,88035,88421,90491,83290,6884,15444,90113,20406,20796,40239,34431,15018,45600,17241,26611,9551,89126,65673,31708,91252,39647,63011,24193,58932,89326,33491,53217,27976,70151,37531,53576,23931,11789,73073,52171,89301,51718,15385,79487,66436,35771,34163,86540,42665,80748,77622,14679,40185,25030,42622,13162,17048,24243,59985,59807,60562,3595,10135,29199,69784,59796,38194,58432,50943,40422,63035,3208,81440,90749,88046,32218,88092,22224,2627,91576,16781,43948,57795,71073,27817,87077,82717,24473,42096,76920,88864,90537,14715,42551,45066,24316,37361,38582,21871,14672,93362,21727,57021,94313,39562,64985,94028,46094,43845,91838,79574,7597,3153,56783,18817,74711,6883,91061,31674,73729,99315,66183,57647,74484,68077,33224,397,56753,53158,71872,68153,9298,20961,49656,33407,95683,14328,44708,72952,27048,67887,28741,46752,88177,95894,40086,88534,87112,68614,83073,88794,96799,67588,75049,84603,83140,97347,87316,73087,77135,71883,98643,3808,8848,14133,60447,1366,72976,1868,51667,63279,60040,88264,79152,3474,61366,20523,21584,93712,83654,89761,90154,96345,37539,32556,74254,70603,97122,44978,78028,8943,13778,11080,34271,68276,85372,48410,94516,15427,75323,71685,70774,50342,33771,3678,42321,69788,41758,55004,30992,17402,63523,42328,87171,24751,15084,33884,83655,88345,69602,52606,57886,18034,3381,75796,35901,77480,28683,68324,66035,7223,14926,16128,13645,90370,31949,11057,98849,29499,21565,30786,83292,92392,37104,36899,49906,79368,43710,80365,88735,75275,21664,57965,19002,301,12658,94385,1717,96191,50404,80166,93965,24688,27839,10812,31715,92127,42588,93307,80834,11317,26583,25769,98227,14884,58462,29148,68662,26872,72927,79021,51622,29521,33355,45701,45996,33782,93424,16530,96086,17329,74020,11501,46660,5583,22277,77653,55430,84644,448,86828,58855,67451,95264,67386,82424,52611,60012,88620,72894,94716,22262,99813,69592,63464,33163,91857,47904,22209,78590,68615,52952,31441,41313,18550,72685,68825,4795,53971,14592,39634,23682,76630,2731,81481,86542,23727,54291,56045,61635,32186,9355,73416,63532,24340,18886,84832,30654,48543,18339,65024,91197,64624,74648,9660,27897,49771,11123,8732,49393,12911,72416,17834,18878,62754,85072,23727,56577,51257,83291,12329,16203,91681,68137,79959,43609,58987,2026,42969,59144,84349,75214,76972,22633,64104,53799,16851,99197,70476,77113,46320,88693,37711,96536,68156,7119,2104,49435,77706,18924,24957,92406,87148,70482,36491,42605,54440,7893,31618,35707,65130,30007,75706,77266,37100,9601,87681,42543,69847,81848,32034,49429,99434,62209,17125,55227,61634,52574,83649,28725,70119,62467,80676,21192,99584,21310,25292,72781,17186,10393,98390,19789,92931,36234,62627,23437,3885,58822,82941,43806,8172,23790,72295,36196,98200,2889,87619,13846,56197,27151,21238,48794,81100,62643,40001,39243,33213,78416,194,91369,79342,36404,52308,13741,24442,88610,12659,11574,70052,93039,79367,41792,61816,35435,47192,97596,28330,41145,16918,62865,9576,45857,68737,90124,16703,7071,48433,57222,34435,800,72496,16449,68187,28739,97672,86818,50768,40807,88681,64340,2224,19703,59245,90905,31239,84216,93942,97371,16842,92168,52692,16064,84686,89444,27938,98406,41365,4515,20494,18813,16242,10634,61566,18592,78057,8720,33739,78345,87693,30242,70545,55521,23687,9160,8655,38811,61768,7228,5567,5561,82071,85,50145,23113,97761,88441,14891,72188,85166,37189,75671,81377,92470,73645,93258,6610,12185,43065,26704,47922,56650,7527,18006,56948,51675,16658,66402,1047,81624,77395,62310,73262,66050,57275,32936,87641,51528,58183,21952,84098,28913,28622,18140,89796,41317,93954,67690,64667,57092,21315,4731,76115,77291,11204,8634,93034,27411,27149,13843,9817,9407,84492,28444,59901,14592,89654,66207,66232,80293,74502,36925,55515,10121,16768,4720,71502,40500,21406,571,87320,81683,42788,86367,44686,22159,67015,35892,49668,83991,72088,30210,74009,86370,97956,2132,93512,54819,26094,51409,21485,94764,85806,13393,48543,7042,76538,64224,47909,9994,23750,17351,52141,30486,60380,86546,66606,36913,58173,45709,83679,82617,23381,9603,61107,566,6572,64745,10614,86371,43244,97154,10397,50975,68006,20045,16942,25536,74031,31807,70133,78790,40341,68730,39635,39013,66841,44043,96215,21270,59427,25034,40645,84741,52083,54503,36861,27659,95463,53847,40921,70116,61536,56756,8967,31079,20097,76014,99818,16606,19713,66904,27106,24874,96701,73287,76772,6073,57343,51428,91171,28299,17520,64903,4177,36071,94952,59008,28543,11576,74547,13260,20688,41261,2780,6633,37536,8844,95774,49323,30448,14154,83379,71259,23302,68402,43750,88505,15575,44927,6584,29867,21541,65763,12154,86616,79877,73259,68626,98962,68548,86576,48046,51755,64995,3661,64585,81550,46798,49319,50206,22024,5175,12923,23427,55915,91723,55831,83784,81034,86779,34622,84570,18960,48798,42970,95789,39465,82353,68905,44234,18244,54345,5592,89361,14644,67924,66415,89349,88530,72096,44459,5258,48317,48866,56886,90458,75889,4514,37227,11302,4667,2129,80414,86289,15887,87380,50749,83220,50529,20619,11606,36531,23409,78122,19566,76564,33045,66703,30017,35347,35038,12952,13971,3922,98702,11786,38388,69556,76728,60535,59961,23634,42211,98387,34880,27755,93182,99040,96390,65989,38375,3652,59657,57431,24666,11061,64713,85185,72849,58611,31220,26657,77056,24553,24993,5210,89024,32054,46997,92652,28363,98992,22593,97710,47766,37646,93573,95502,33790,92973,27766,62671,89698,10877,73893,41004,96035,18795,48080,59666,30241,35233,87353,43647,13404,41982,19264,29229,61369,8309,39383,42305,25944,13577,51545,68990,69801,37145,79189,55897,57793,66816,21930,56771,79296,73793,21632,42301,23696,72641,56310,85576,3004,25669,69221,32996,23040,65782,23712,13414,10758,15590,97298,74246,51511,46900,36795,38292,3852,6384,84421,3446,91670,45312,27609,87034,6683,83891,88991,16533,9197,34427,60384,48525,90978,46107,21693,12956,21804,46558,37682,81207,85840,53238,35026,4835,53264,41376,17783,64756,39278,25403,33042,20954,31193,24247,45911,92453,25370,86602,48574,57865,26436,16122,76614,17028,21262,59718,77821,14036,31033,90563,45410,15158,90209,84089,38053,60780,54166,14255,33120,27171,71798,91214,80040,56699,12475,40193,59415,4769,75920,1036,2692,75862,16612,73670,61182,3305,90334,187,91659,28063,75684,50017,82643,9282,77376,85469,8164,5584,36623,82597,83859,3435,98460,70095,80257,4381,6501,8924,35514,14297,54373,71369,5172,15955,82441,4636,48215,6821,3385,17663,40107,55679,30366,42390,95895,16083,58499,17176,55993,51034,49296,4010,78974,35930,2019,96226,27167,68245,53109,59037,37843,79243,10262,58797,61490,82590,52411,54783,29447,94551,30026,97959,93939,73217,82573,62154,78291,33728,39102,11484,86210,43794,73553,87435,1110,77108,56521,78610,8254,1842,43068,70415,79195,26136,49786,47279,38471,20379,54704,86614,91138,51595,50818,80186,73087,17262,94735,4952,27935,4928,74862,51392,62388,9570,38485,30594,56278,47395,72762,94597,72279,16010,34697,54475,67874,78014,88381,4045,41494,55178,46054,24373,1824,55333,7525,97908,61178,84635,2199,35361,4803,21907,79414,66083,54782,58692,28332,41851,28198,55819,37313,67046,16147,90478,71230,34141,85002,44332,35906,429,39744,773,22909,19536,98986,90945,45209,85439,92265,25291,22775,60611,49159,95701,36113,53923,60824,84935,29656,50007,86624,61691,76150,32187,42765,60660,13859,10792,88210,29374,29563,45188,28811,19739,67649,73775,99247,48414,91067,68253,9452,90116,91737,73979,62370,69112,58791,20349,71480,56852,36919,87977,77609,68738,85159,4918,70076,46473,4122,57713,1426,50987,77910,66211,62546,77749,96462,34304,77441,12104,91805,10287,60943,49632,83116,25716,23113,22707,77770,31176,6759,46130,4739,55554,3843,31653,70834,72877,41561,36903,23010,6663,2266,16360,70118,91936,17098,77278,4880,23484,94970,41826,46733,93484,68350,38861,18134,32936,241,24803,13876,93278,5039,35873,44418,5305,28510,36115,46717,15238,78607,23464,68635,55712,55007,92411,65739,4858,67537,37041,67453,89801,45963,14800,14225,65655,80463,9716,77255,65136,11230,76323,81433,36445,86523,61058,59560,19380,40791,48073,29626,36661,87907,57369,41623,13705,3880,45088,55444,41003,27754,1450,75312,71801,99600,60719,54182,29245,63315,73758,42973,32702,10855,56363,14638,84424,27178,78195,3133,70865,48019,26117,7151,52107,85562,41347,50486,69457,86961,95482,11857,93587,45680,42145,13029,10043,5142,49213,54525,85761,42707,70754,33768,87671,85038,58900,88438,20004,63390,14815,38875,73417,82875,89481,55517,944,15773,61814,32915,27868,5510,21916,28426,89881,16680,88850,11056,51991,4230,39107,49216,40065,4523,75848,95349,56034,10724,9885,88232,42478,65702,95696,39746,66032,88082,86905,30007,75068,66629,7358,26706,90511,72843,67857,20061,98581,69682,38e3,14186,70,2290,17269,30909,69449,19997,13275,2444,84985,51290,97641,15092,69650,21920,19617,7418,49725,91090,20805,28627,80665,67192,34697,57667,99323,50101,40587,35081,14037,34414,19898,60779,83267,87499,29596,41852,15813,32419,72232,8322,39184,46525,13833,65743,94595,37363,4711,35386,96413,10627,62625,56555,12919,93218,25191,98380,51923,66181,5788,73491,1452,487,12277,45415,11884,61300,94528,9181,26616,11455,31514,63290,45035,42759,33804,85721,80979,46010,50975,72482,31231,3086,58941,46102,25773,89742,29788,96741,88523,14922,88262,76305,57676,93259,2396,69145,26074,30056,3853,75317,56639,66203,38923,48939,22813,91864,10934,6714,84099,25631,73223,95630,97552,45950,22197,42886,33764,1263,41856,82057,62349,94091,78028,62651,18911,5693,92561,97821,41994,92343,76785,22216,4203,5038,86151,23596,24338,77181,51761,97693,10955,98159,37568,58932,72128,27303,99608,31688,57557,91022,43036,93927,32869,53653,55205,33139,47271,31224,51650,36422,86857,73799,22068,43376,84760,44898,65776,42451,71480,38509,41673,44141,75918,95652,68981,83001,48815,98086,67950,27986,33175,43624,55274,71051,61124,51550,64967,31570,15748,19159,38174,51078,79811,39183,57527,96550,85168,28824,47466,56993,13151,96664,29735,70251,1079,4314,77714,11507,1440,48415,31984,99915,20282,26524,18057,4992,40521,98108,84045,91961,79256,72244,25788,5487,23595,73302,14205,8925,27625,64343,28821,37992,67156,83320,31106,10884,30735,15067,51091,15668,48777,50770,19169,76504,41165,29749,92812,8065,66782,26841,1411,95461,61134,18699,52261,60469,81373,44825,11448,73320,30151,56991,31372,6655,36472,86292,30247,30931,21029,53410,9859,37267,47514,3492,49008,94727,25234,40546,53417,36492,25723,76227,58456,15979,34876,9574,34392,3751,36933,83921,65108,63135,67572,40184,21098],l=new Array(16),h=[16,8,16,24],f=4,p=0;!function(){for(var t=0;t<16;t++){l[t]=new Array(256);for(var e=0;e<256;e++)l[t][e]=e|e<<8|e<<16|e<<24|0;for(var n=3;0<=n;n--)for(var r=0;r<255;r++){var i=255<<(n<<3),o=0|l[t][r],s=function(t,e){var n=e-t+1,r=0,i=1;do{for(r=0,i=1;i<n;i*=10)r=10*r+(f<0&&(f=4,p++),u[p]%Math.pow(10,f+1)/Math.pow(10,f--)|0)}while((i/n|0)*n<=r);return t+r%n|0}(r,255);l[t][r]=l[t][r]&~i|l[t][s]&i|0,l[t][s]=l[t][s]&~i|o&i|0}}}();(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)})(d,r.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(d.prototype,[{key:"reset",value:function(){o(s(d.prototype),"reset",this).call(this),this.state.hash=new Array(this.options.length/32|0);for(var t=0;t<this.state.hash.length;t++)this.state.hash[t]=0}},{key:"processBlock",value:function(t){for(var e=0;e<this.state.hash.length;e++)this.W[e]=0|this.state.hash[e];for(var n=this.state.hash.length;n<16;n++)this.W[n]=0|t[n-this.state.hash.length];for(var r=0;r<this.options.rounds<<1;r+=2)for(var i=0;i<4;i++){for(var o=0;o<16;o++){var s=0|l[r+(o/2|0)%2][255&this.W[o]];this.W[o-1>>>0&15]^=s,this.W[o+1&15]^=s}for(var a=0;a<16;a++)this.W[a]=Object(c.b)(this.W[a],h[i])}for(var u=0;u<this.state.hash.length;u++)this.state.hash[u]=this.state.hash[u]^this.W[15-u]|0}},{key:"finalize",value:function(){return 0<this.state.message.length&&this.addPaddingZero(this.blockSizeInBytes-this.state.message.length|0),this.addPaddingZero(this.blockSizeInBytes-8|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),r=d;function d(t){var e;return function(t){if(!(t instanceof d))throw new TypeError("Cannot call a class as a function")}(this),(t=t||{}).length=t.length||128,t.rounds=t.rounds||8,e=this,(t=!(t=s(d).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).blockSize=16-t.state.hash.length,t.blockSizeInBytes=t.blockSize*t.unitSize,t.W=new Array(16),t}e.a=r},function(t,e,n){"use strict";var r=n(5),u=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function s(t,e,n){return(s="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=a(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function a(t){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function c(t,e){return(c=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}for(var l=[[7,12,17,22],[5,9,14,20],[4,11,16,23],[6,10,15,21]],h=new Array(64),f=0;f<64;f++)h[f]=4294967296*Math.abs(Math.sin(f+1))|0;(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&c(t,e)})(p,r.a),n=[{key:"FF",value:function(t,e,n){return t&e|~t&n}},{key:"GG",value:function(t,e,n){return t&n|e&~n}},{key:"HH",value:function(t,e,n){return t^e^n}},{key:"II",value:function(t,e,n){return e^(t|~n)}},{key:"CC",value:function(t,e,n,r,i,o,s,a){return Object(u.a)(n+t(r,i,o)+s+e,a)+r|0}}],o((r=p).prototype,[{key:"reset",value:function(){s(a(p.prototype),"reset",this).call(this),this.state.hash=[1732584193,-271733879,-1732584194,271733878]}},{key:"processBlock",value:function(t){var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],e=p.CC(p.FF,h[0],e,n,r,i,t[0],l[0][0]),i=p.CC(p.FF,h[1],i,e,n,r,t[1],l[0][1]),r=p.CC(p.FF,h[2],r,i,e,n,t[2],l[0][2]),n=p.CC(p.FF,h[3],n,r,i,e,t[3],l[0][3]);e=p.CC(p.FF,h[4],e,n,r,i,t[4],l[0][0]),i=p.CC(p.FF,h[5],i,e,n,r,t[5],l[0][1]),r=p.CC(p.FF,h[6],r,i,e,n,t[6],l[0][2]),n=p.CC(p.FF,h[7],n,r,i,e,t[7],l[0][3]),e=p.CC(p.FF,h[8],e,n,r,i,t[8],l[0][0]),i=p.CC(p.FF,h[9],i,e,n,r,t[9],l[0][1]),r=p.CC(p.FF,h[10],r,i,e,n,t[10],l[0][2]),n=p.CC(p.FF,h[11],n,r,i,e,t[11],l[0][3]),e=p.CC(p.FF,h[12],e,n,r,i,t[12],l[0][0]),i=p.CC(p.FF,h[13],i,e,n,r,t[13],l[0][1]),r=p.CC(p.FF,h[14],r,i,e,n,t[14],l[0][2]),n=p.CC(p.FF,h[15],n,r,i,e,t[15],l[0][3]),e=p.CC(p.GG,h[16],e,n,r,i,t[1],l[1][0]),i=p.CC(p.GG,h[17],i,e,n,r,t[6],l[1][1]),r=p.CC(p.GG,h[18],r,i,e,n,t[11],l[1][2]),n=p.CC(p.GG,h[19],n,r,i,e,t[0],l[1][3]),e=p.CC(p.GG,h[20],e,n,r,i,t[5],l[1][0]),i=p.CC(p.GG,h[21],i,e,n,r,t[10],l[1][1]),r=p.CC(p.GG,h[22],r,i,e,n,t[15],l[1][2]),n=p.CC(p.GG,h[23],n,r,i,e,t[4],l[1][3]),e=p.CC(p.GG,h[24],e,n,r,i,t[9],l[1][0]),i=p.CC(p.GG,h[25],i,e,n,r,t[14],l[1][1]),r=p.CC(p.GG,h[26],r,i,e,n,t[3],l[1][2]),n=p.CC(p.GG,h[27],n,r,i,e,t[8],l[1][3]),e=p.CC(p.GG,h[28],e,n,r,i,t[13],l[1][0]),i=p.CC(p.GG,h[29],i,e,n,r,t[2],l[1][1]),r=p.CC(p.GG,h[30],r,i,e,n,t[7],l[1][2]),n=p.CC(p.GG,h[31],n,r,i,e,t[12],l[1][3]),e=p.CC(p.HH,h[32],e,n,r,i,t[5],l[2][0]),i=p.CC(p.HH,h[33],i,e,n,r,t[8],l[2][1]),r=p.CC(p.HH,h[34],r,i,e,n,t[11],l[2][2]),n=p.CC(p.HH,h[35],n,r,i,e,t[14],l[2][3]),e=p.CC(p.HH,h[36],e,n,r,i,t[1],l[2][0]),i=p.CC(p.HH,h[37],i,e,n,r,t[4],l[2][1]),r=p.CC(p.HH,h[38],r,i,e,n,t[7],l[2][2]),n=p.CC(p.HH,h[39],n,r,i,e,t[10],l[2][3]),e=p.CC(p.HH,h[40],e,n,r,i,t[13],l[2][0]),i=p.CC(p.HH,h[41],i,e,n,r,t[0],l[2][1]),r=p.CC(p.HH,h[42],r,i,e,n,t[3],l[2][2]),n=p.CC(p.HH,h[43],n,r,i,e,t[6],l[2][3]),e=p.CC(p.HH,h[44],e,n,r,i,t[9],l[2][0]),i=p.CC(p.HH,h[45],i,e,n,r,t[12],l[2][1]),r=p.CC(p.HH,h[46],r,i,e,n,t[15],l[2][2]),n=p.CC(p.HH,h[47],n,r,i,e,t[2],l[2][3]),e=p.CC(p.II,h[48],e,n,r,i,t[0],l[3][0]),i=p.CC(p.II,h[49],i,e,n,r,t[7],l[3][1]),r=p.CC(p.II,h[50],r,i,e,n,t[14],l[3][2]),n=p.CC(p.II,h[51],n,r,i,e,t[5],l[3][3]),e=p.CC(p.II,h[52],e,n,r,i,t[12],l[3][0]),i=p.CC(p.II,h[53],i,e,n,r,t[3],l[3][1]),r=p.CC(p.II,h[54],r,i,e,n,t[10],l[3][2]),n=p.CC(p.II,h[55],n,r,i,e,t[1],l[3][3]),e=p.CC(p.II,h[56],e,n,r,i,t[8],l[3][0]),i=p.CC(p.II,h[57],i,e,n,r,t[15],l[3][1]),r=p.CC(p.II,h[58],r,i,e,n,t[6],l[3][2]),n=p.CC(p.II,h[59],n,r,i,e,t[13],l[3][3]),e=p.CC(p.II,h[60],e,n,r,i,t[4],l[3][0]),i=p.CC(p.II,h[61],i,e,n,r,t[11],l[3][1]),r=p.CC(p.II,h[62],r,i,e,n,t[2],l[3][2]),n=p.CC(p.II,h[63],n,r,i,e,t[9],l[3][3]),this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),o(r,n),n=p;function p(){return function(t){if(!(t instanceof p))throw new TypeError("Cannot call a class as a function")}(this),t=this,!(e=a(p).apply(this,arguments))||"object"!==i(e)&&"function"!=typeof e?function(){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():e;var t,e}e.a=n},function(t,e,n){"use strict";var r=n(3),u=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var c=[1518500249,1859775393,2400959708,3395469782],r=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(l,r.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(l.prototype,[{key:"reset",value:function(){o(s(l.prototype),"reset",this).call(this),this.state.hash=[1732584193,-271733879,-1732584194,271733878,-1009589776]}},{key:"processBlock",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0;s<this.options.rounds;s++){this.W[s]=s<16?0|t[s]:0|Object(u.a)(this.W[s-3]^this.W[s-8]^this.W[s-14]^this.W[s-16],1);var a=Object(u.a)(e,5)+o+this.W[s]+c[s/20>>0]|0,a=s<20?a+(n&r|~n&i)|0:!(s<40)&&s<60?a+(n&r|n&i|r&i)|0:a+(n^r^i)|0,o=i,i=r,r=0|Object(u.a)(n,30),n=e,e=a}this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),l);function l(t){var e;return function(t){if(!(t instanceof l))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=s(l).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).options.rounds=t.options.rounds||80,t.W=new Array(80),t}e.a=r},function(t,e,n){"use strict";var c=n(0),n=n(3);function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function i(t,e,n){return(i="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=o(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function o(t){return(o=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a=new Array(256),u=[104,208,235,43,72,157,106,228,227,163,86,129,125,241,133,158,44,142,120,202,23,169,97,213,93,11,140,60,119,81,34,66,63,84,65,128,204,134,179,24,46,87,6,98,244,54,209,107,27,101,117,16,218,73,38,249,203,102,231,186,174,80,82,171,5,240,13,115,59,4,32,254,221,245,180,95,10,181,192,160,113,165,45,96,114,147,57,8,131,33,92,135,177,224,0,195,18,145,138,2,28,230,69,194,196,253,191,68,161,76,51,197,132,35,124,176,37,21,53,105,255,148,77,112,162,175,205,214,108,183,248,9,243,103,164,234,236,182,212,210,20,30,225,36,56,198,219,75,122,58,222,94,223,149,252,170,215,206,7,15,61,88,154,152,156,242,167,17,126,139,67,3,226,220,229,178,78,199,109,233,39,64,216,55,146,143,1,29,83,62,89,193,79,50,22,250,116,251,99,159,52,26,42,90,141,201,207,246,144,40,136,155,49,14,189,74,232,150,166,12,200,121,188,190,239,110,70,151,91,237,25,217,172,153,168,41,100,31,173,85,19,187,247,111,185,71,47,238,184,123,137,48,211,127,118,130],l=[1,11,9,12,13,6,15,3,14,8,7,4,10,2,5,0],h=[7,12,11,13,14,4,9,15,6,3,8,10,2,5,1,0],f=new Array(16),p=[1,1,4,1,8,5,2,9],d=[1,1,3,1,5,8,9,5],g=new Array(512),m=new Array(22),v=new Array(512),y=new Array(22),b=new Array(512),w=new Array(22);function _(t,e){for(var n=new Array(512),r=new Array(22),i=0;i<8;i++)n[i]=[];for(var o=0;o<256;o++){var s=new Array(10);s[1]=t[o],s[2]=s[1]<<1,256<=s[2]&&(s[2]^=285),s[3]=s[2]^s[1],s[4]=s[2]<<1,256<=s[4]&&(s[4]^=285),s[5]=s[4]^s[1],s[8]=s[4]<<1,256<=s[8]&&(s[8]^=285),s[9]=s[8]^s[1],n[0][2*o]=s[e[0]]<<24|s[e[1]]<<16|s[e[2]]<<8|s[e[3]],n[0][2*o+1]=s[e[4]]<<24|s[e[5]]<<16|s[e[6]]<<8|s[e[7]];for(var a=1;a<8;a++)n[a][2*o]=Object(c.d)(n[0][2*o+1],n[0][2*o],a<<3),n[a][2*o+1]=Object(c.c)(n[0][2*o+1],n[0][2*o],a<<3)}r[0]=0,r[1]=0;for(var u=1;u<=10;u++)r[2*u]=4278190080&n[0][16*u-16]^16711680&n[1][16*u-14]^65280&n[2][16*u-12]^255&n[3][16*u-10],r[2*u+1]=4278190080&n[4][16*u-7]^16711680&n[5][16*u-5]^65280&n[6][16*u-3]^255&n[7][16*u-1];return[n,r]}!function(){!function(){for(var t=0;t<16;t++)f[l[t]]=0|t;for(var e=0;e<256;e++){var n=l[e>>4],r=f[15&e],i=h[n^r];a[e]=l[n^i]<<4|f[r^i]}}();var t=_(u,d);v=t[0],y=t[1],t=_(a,d),b=t[0],w=t[1],t=_(a,p),g=t[0],m=t[1]}();(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&s(t,e)})(x,n.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(x.prototype,[{key:"reset",value:function(){i(o(x.prototype),"reset",this).call(this),this.state.hash=new Array(16);for(var t=0;t<16;t++)this.state.hash[t]=0}},{key:"processBlock",value:function(t){for(var e=new Array(16),n=[],r=0;r<16;r++)n[r]=t[r]^(e[r]=this.state.hash[r])|0;for(var i=[],o=1;o<=this.options.rounds;o++){for(var s=0;s<8;s++){i[2*s]=0;for(var a=i[2*s+1]=0,u=56,c=0;a<8;a++,c=(u-=8)<32?1:0)i[2*s]^=this.C[a][2*(e[2*(s-a&7)+c]>>>u%32&255)],i[2*s+1]^=this.C[a][2*(e[2*(s-a&7)+c]>>>u%32&255)+1]}for(var l=0;l<16;l++)e[l]=i[l];e[0]^=this.RC[2*o],e[1]^=this.RC[2*o+1];for(var h=0;h<8;h++){i[2*h]=e[2*h],i[2*h+1]=e[2*h+1];for(var f=0,p=56,d=0;f<8;f++,d=(p-=8)<32?1:0)i[2*h]^=this.C[f][2*(n[2*(h-f&7)+d]>>>p%32&255)],i[2*h+1]^=this.C[f][2*(n[2*(h-f&7)+d]>>>p%32&255)+1]}for(var g=0;g<16;g++)n[g]=i[g]}for(var m=0;m<16;m++)this.state.hash[m]^=n[m]^t[m]}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<32?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),n=x;function x(t){var e,n;switch(function(t){if(!(t instanceof x))throw new TypeError("Cannot call a class as a function")}(this),(t=t||{}).type=t.type||"",t.rounds=t.rounds||10,n=this,(e=!(t=o(x).call(this,t))||"object"!==r(t)&&"function"!=typeof t?function(){if(void 0!==n)return n;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).options.type){case"0":case 0:e.C=v,e.RC=y;break;case"t":e.C=b,e.RC=w;break;default:e.C=g,e.RC=m}return e}e.a=n},function(t,e,n){"use strict";function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function i(t){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function o(t,e){return(o=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)})(s,n(4).a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(s.prototype,[{key:"process",value:function(){for(;this.state.message.length>=this.blockSizeInBytes;){this.blockUnits=new Array(this.blockSizeInBytes);for(var t=0;t<this.blockSizeInBytes;t++)this.blockUnits[t]=0|this.state.message.charCodeAt(t);this.state.message=this.state.message.substr(this.blockSizeInBytes),this.processBlock(this.blockUnits)}}},{key:"processBlock",value:function(t){}},{key:"getStateHash",value:function(t){t=t||this.state.hash.length;for(var e="",n=0;n<t;n++)e+=String.fromCharCode(255&this.state.hash[n]);return e}}]),n=s;function s(t){var e;return function(t){if(!(t instanceof s))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=i(s).call(this,t))||"object"!==r(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).unitSize=1,t.blockSizeInBytes=t.blockSize*t.unitSize,t.blockUnits=[],t}function a(t){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function u(t,e,n){return(u="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=c(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function c(t){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function l(t,e){return(l=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var h=[41,46,67,201,162,216,124,1,61,54,84,161,236,240,6,19,98,167,5,243,192,199,115,140,152,147,43,217,188,76,130,202,30,155,87,60,253,212,224,22,103,66,111,24,138,23,229,18,190,78,196,214,218,158,222,73,160,251,245,142,187,47,238,122,169,104,121,145,21,178,7,63,148,194,16,137,11,34,95,33,128,127,93,154,90,144,50,39,53,62,204,231,191,247,151,3,255,25,48,179,72,165,181,209,215,94,146,42,172,86,170,198,79,184,56,210,150,164,125,182,118,252,107,226,156,116,4,241,69,157,112,89,100,113,135,32,134,91,207,101,230,45,168,2,27,96,37,173,174,176,185,246,28,70,97,105,52,64,126,15,85,71,163,35,221,81,175,58,195,92,249,206,186,197,234,38,44,83,13,110,133,40,132,9,211,223,205,244,65,129,77,82,106,220,55,200,108,193,171,250,36,225,123,8,12,189,177,74,120,136,149,139,227,99,232,109,233,203,213,254,59,0,29,57,242,239,183,14,102,88,208,228,166,119,114,248,235,117,75,10,49,68,80,180,143,237,31,26,219,153,141,51,159,17,131,20],n=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),l(t,e)}(f,n),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(f.prototype,[{key:"reset",value:function(){u(c(f.prototype),"reset",this).call(this),this.state.hash=new Array(48),this.state.checksum=new Array(16)}},{key:"processBlock",value:function(t){for(var e=0;e<16;e++)this.state.hash[16+e]=0|t[e],this.state.hash[32+e]=t[e]^this.state.hash[e];for(var n=0,r=0;r<this.options.rounds;r++){for(var i=0;i<48;i++)n=this.state.hash[i]^=h[n];n=n+r&255}for(var n=255&this.state.checksum[15],o=0;o<16;o++)n=this.state.checksum[o]^=h[t[o]^n]}},{key:"finalize",value:function(){this.addPaddingPKCS7(16-(15&this.state.message.length)|0),this.process();for(var t=0;t<16;t++)this.state.message+=String.fromCharCode(this.state.checksum[t]);return this.process(),this.getStateHash(16)}}]),f);function f(t){var e;return function(t){if(!(t instanceof f))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=c(f).call(this,t))||"object"!==a(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).options.rounds=t.options.rounds||18,t}e.a=n},function(t,e,n){"use strict";var r=n(5),c=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var l=[0,1518500249,1859775393,2400959708],h=[5,11,7,15,6,13,8,14,7,12,9,11,8,15,6,12,9,14,5,13],f=[10,17,25,30],p=[18,0,1,2,3,19,4,5,6,7,16,8,9,10,11,17,12,13,14,15,22,3,6,9,12,23,15,2,5,8,20,11,14,1,4,21,7,10,13,0,26,12,5,14,7,27,0,9,2,11,24,4,13,6,15,25,8,1,10,3,30,7,2,13,8,31,3,14,9,4,28,15,10,5,0,29,11,6,1,12],r=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(u,r.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(u.prototype,[{key:"reset",value:function(){o(s(u.prototype),"reset",this).call(this),this.state.hash=[1732584193,4023233417,2562383102,271733878,3285377520]}},{key:"processBlock",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0;s<16;s++)this.W[s]=0|t[s];this.W[16]=this.W[0]^this.W[1]^this.W[2]^this.W[3]|0,this.W[17]=this.W[4]^this.W[5]^this.W[6]^this.W[7]|0,this.W[18]=this.W[8]^this.W[9]^this.W[10]^this.W[11]|0,this.W[19]=this.W[12]^this.W[13]^this.W[14]^this.W[15]|0,this.W[20]=this.W[3]^this.W[6]^this.W[9]^this.W[12]|0,this.W[21]=this.W[2]^this.W[5]^this.W[8]^this.W[15]|0,this.W[22]=this.W[1]^this.W[4]^this.W[11]^this.W[14]|0,this.W[23]=this.W[0]^this.W[7]^this.W[10]^this.W[13]|0,this.W[24]=this.W[5]^this.W[7]^this.W[12]^this.W[14]|0,this.W[25]=this.W[0]^this.W[2]^this.W[9]^this.W[11]|0,this.W[26]=this.W[4]^this.W[6]^this.W[13]^this.W[15]|0,this.W[27]=this.W[1]^this.W[3]^this.W[8]^this.W[10]|0,this.W[28]=this.W[2]^this.W[7]^this.W[8]^this.W[13]|0,this.W[29]=this.W[3]^this.W[4]^this.W[9]^this.W[14]|0,this.W[30]=this.W[0]^this.W[5]^this.W[10]^this.W[15]|0,this.W[31]=this.W[1]^this.W[6]^this.W[11]^this.W[12]|0;for(var a=0;a<this.options.rounds;a++)var u=Object(c.a)(e,h[a%20])+o+this.W[p[a]]+l[a/20>>0]|0,u=a<20?u+(n&r|~n&i)|0:!(a<40)&&a<60?u+(r^(n|~i))|0:u+(n^r^i)|0,o=i,i=r,r=0|Object(c.a)(n,f[a/20>>0]),n=e,e=u;this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),u);function u(t){var e;return function(t){if(!(t instanceof u))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=s(u).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).options.rounds=t.options.rounds||80,t.W=new Array(32),t}e.a=r},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function r(t){for(var e="",n=t.length-t.length%3|0,r=0,i=0;i<n;i+=3)r=t.charCodeAt(i)<<16|t.charCodeAt(i+1)<<8|t.charCodeAt(i+2),e+=o.charAt(r>>18)+o.charAt(r>>12&63)+o.charAt(r>>6&63)+o.charAt(63&r);return t.length-n==2?(r=t.charCodeAt(n)<<16|t.charCodeAt(1+n)<<8,e+=o.charAt(r>>18)+o.charAt(r>>12&63)+o.charAt(r>>6&63)+"="):t.length-n==1&&(r=t.charCodeAt(n)<<16,e+=o.charAt(r>>18)+o.charAt(r>>12&63)+"=="),e}},function(t,e,n){"use strict";var r=n(5),u=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function s(t,e,n){return(s="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=a(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function a(t){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function c(t,e){return(c=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var l=[[3,7,11,19],[3,5,9,13],[3,9,11,15]],h=1518500249,f=1859775393,n=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&c(t,e)}(p,r.a),n=[{key:"FF",value:function(t,e,n){return t&e|~t&n}},{key:"GG",value:function(t,e,n){return t&e|t&n|e&n}},{key:"HH",value:function(t,e,n){return t^e^n}},{key:"CC",value:function(t,e,n,r,i,o,s,a){return 0|Object(u.a)(n+t(r,i,o)+s+e,a)}}],o((r=p).prototype,[{key:"reset",value:function(){s(a(p.prototype),"reset",this).call(this),this.state.hash=[1732584193,-271733879,-1732584194,271733878]}},{key:"processBlock",value:function(t){var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],e=p.CC(p.FF,0,e,n,r,i,t[0],l[0][0]),i=p.CC(p.FF,0,i,e,n,r,t[1],l[0][1]),r=p.CC(p.FF,0,r,i,e,n,t[2],l[0][2]),n=p.CC(p.FF,0,n,r,i,e,t[3],l[0][3]);e=p.CC(p.FF,0,e,n,r,i,t[4],l[0][0]),i=p.CC(p.FF,0,i,e,n,r,t[5],l[0][1]),r=p.CC(p.FF,0,r,i,e,n,t[6],l[0][2]),n=p.CC(p.FF,0,n,r,i,e,t[7],l[0][3]),e=p.CC(p.FF,0,e,n,r,i,t[8],l[0][0]),i=p.CC(p.FF,0,i,e,n,r,t[9],l[0][1]),r=p.CC(p.FF,0,r,i,e,n,t[10],l[0][2]),n=p.CC(p.FF,0,n,r,i,e,t[11],l[0][3]),e=p.CC(p.FF,0,e,n,r,i,t[12],l[0][0]),i=p.CC(p.FF,0,i,e,n,r,t[13],l[0][1]),r=p.CC(p.FF,0,r,i,e,n,t[14],l[0][2]),n=p.CC(p.FF,0,n,r,i,e,t[15],l[0][3]),e=p.CC(p.GG,h,e,n,r,i,t[0],l[1][0]),i=p.CC(p.GG,h,i,e,n,r,t[4],l[1][1]),r=p.CC(p.GG,h,r,i,e,n,t[8],l[1][2]),n=p.CC(p.GG,h,n,r,i,e,t[12],l[1][3]),e=p.CC(p.GG,h,e,n,r,i,t[1],l[1][0]),i=p.CC(p.GG,h,i,e,n,r,t[5],l[1][1]),r=p.CC(p.GG,h,r,i,e,n,t[9],l[1][2]),n=p.CC(p.GG,h,n,r,i,e,t[13],l[1][3]),e=p.CC(p.GG,h,e,n,r,i,t[2],l[1][0]),i=p.CC(p.GG,h,i,e,n,r,t[6],l[1][1]),r=p.CC(p.GG,h,r,i,e,n,t[10],l[1][2]),n=p.CC(p.GG,h,n,r,i,e,t[14],l[1][3]),e=p.CC(p.GG,h,e,n,r,i,t[3],l[1][0]),i=p.CC(p.GG,h,i,e,n,r,t[7],l[1][1]),r=p.CC(p.GG,h,r,i,e,n,t[11],l[1][2]),n=p.CC(p.GG,h,n,r,i,e,t[15],l[1][3]),e=p.CC(p.HH,f,e,n,r,i,t[0],l[2][0]),i=p.CC(p.HH,f,i,e,n,r,t[8],l[2][1]),r=p.CC(p.HH,f,r,i,e,n,t[4],l[2][2]),n=p.CC(p.HH,f,n,r,i,e,t[12],l[2][3]),e=p.CC(p.HH,f,e,n,r,i,t[2],l[2][0]),i=p.CC(p.HH,f,i,e,n,r,t[10],l[2][1]),r=p.CC(p.HH,f,r,i,e,n,t[6],l[2][2]),n=p.CC(p.HH,f,n,r,i,e,t[14],l[2][3]),e=p.CC(p.HH,f,e,n,r,i,t[1],l[2][0]),i=p.CC(p.HH,f,i,e,n,r,t[9],l[2][1]),r=p.CC(p.HH,f,r,i,e,n,t[5],l[2][2]),n=p.CC(p.HH,f,n,r,i,e,t[13],l[2][3]),e=p.CC(p.HH,f,e,n,r,i,t[3],l[2][0]),i=p.CC(p.HH,f,i,e,n,r,t[11],l[2][1]),r=p.CC(p.HH,f,r,i,e,n,t[7],l[2][2]),n=p.CC(p.HH,f,n,r,i,e,t[15],l[2][3]),this.state.hash=[this.state.hash[0]+e|0,this.state.hash[1]+n|0,this.state.hash[2]+r|0,this.state.hash[3]+i|0]}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),o(r,n),p);function p(){return function(t){if(!(t instanceof p))throw new TypeError("Cannot call a class as a function")}(this),t=this,!(e=a(p).apply(this,arguments))||"object"!==i(e)&&"function"!=typeof e?function(){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():e;var t,e}e.a=n},function(t,e,n){"use strict";var r=n(3),u=n(0);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e,n){return(o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){t=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(t){e=Object.getOwnPropertyDescriptor(t,e);return e.get?e.get.call(n):e.value}})(t,e,n||t)}function s(t){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var c=[1518500249,1859775393,2400959708,3395469782],r=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(l,r.a),function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(l.prototype,[{key:"reset",value:function(){o(s(l.prototype),"reset",this).call(this),this.state.hash=[1732584193,-271733879,-1732584194,271733878,-1009589776]}},{key:"processBlock",value:function(t){for(var e=0|this.state.hash[0],n=0|this.state.hash[1],r=0|this.state.hash[2],i=0|this.state.hash[3],o=0|this.state.hash[4],s=0;s<this.options.rounds;s++){this.W[s]=s<16?0|t[s]:this.W[s-3]^this.W[s-8]^this.W[s-14]^this.W[s-16]|0;var a=Object(u.a)(e,5)+o+this.W[s]+c[s/20>>0]|0,a=s<20?a+(n&r|~n&i)|0:!(s<40)&&s<60?a+(n&r|n&i|r&i)|0:a+(n^r^i)|0,o=i,i=r,r=0|Object(u.a)(n,30),n=e,e=a}this.state.hash[0]=this.state.hash[0]+e|0,this.state.hash[1]=this.state.hash[1]+n|0,this.state.hash[2]=this.state.hash[2]+r|0,this.state.hash[3]=this.state.hash[3]+i|0,this.state.hash[4]=this.state.hash[4]+o|0}},{key:"finalize",value:function(){return this.addPaddingISO7816(this.state.message.length<56?56-this.state.message.length|0:120-this.state.message.length|0),this.addLengthBits(),this.process(),this.getStateHash()}}]),l);function l(t){var e;return function(t){if(!(t instanceof l))throw new TypeError("Cannot call a class as a function")}(this),e=this,(t=!(t=s(l).call(this,t))||"object"!==i(t)&&"function"!=typeof t?function(){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}():t).options.rounds=t.options.rounds||80,t.W=new Array(80),t}e.a=r},function(t,e,n){"use strict";function r(t){for(var e="",n=new Uint8Array(t),r=0;r<n.length;r++)e+=String.fromCharCode(n[r]);return e}n.d(e,"a",function(){return r})},,function(t,e,n){"use strict";var r=(function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(i.prototype,[{key:"update",value:function(t){this.hasher.update(t)}},{key:"finalize",value:function(){var t=this.hasher.finalize();return this.hasher.reset(),this.hasher.update(this.oPad),this.hasher.update(t),this.hasher.finalize()}}]),i);function i(t,e){!function(t){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")}(this),t.length>e.blockSizeInBytes&&(e.update(t),t=e.finalize(),e.reset());for(var n=t.length;n<e.blockSizeInBytes;n++)t+="\0";this.oPad="";for(var r=0;r<t.length;r++)e.update(String.fromCharCode(54^t.charCodeAt(r))),this.oPad+=String.fromCharCode(92^t.charCodeAt(r));this.hasher=e}e.a=r},,,,,,,,,function(t,e,n){"use strict";n.r(e);var r=n(14),i=n(13),o=n(16),s=n(10),a=n(8),u=n(17),c=n(11),l=n(7),h=n(6),f=n(9),p=n(12),d=n(1),g=n(18),m=n(2),v=n(15),y=n(20);(function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}})(b.prototype,[{key:"getHasher",value:function(t,e){switch(e=e||{},t){case"has160":return new r.a(e);case"md2":return new i.a(e);case"md4":return new o.a(e);case"md5":return new s.a(e);case"ripemd128":return e=Object.assign({},{length:128},e),new a.a(e);case"ripemd":case"ripemd160":return e=Object.assign({},{length:160},e),new a.a(e);case"ripemd256":return e=Object.assign({},{length:256},e),new a.a(e);case"ripemd320":return e=Object.assign({},{length:320},e),new a.a(e);case"sha0":return new u.a(e);case"sha1":return new c.a(e);case"sha224":return e=Object.assign({},{length:224},e),new l.a(e);case"sha256":return e=Object.assign({},{length:256},e),new l.a(e);case"sha384":return e=Object.assign({},{length:384},e),new h.a(e);case"sha512":return e=Object.assign({},{length:512},e),new h.a(e);case"sha512/224":return e=Object.assign({},{length:224},e),new h.a(e);case"sha512/256":return e=Object.assign({},{length:256},e),new h.a(e);case"snefru":case"snefru128":case"snefru128/8":return e=Object.assign({},{length:128},e),new f.a(e);case"snefru256":case"snefru256/8":return e=Object.assign({},{length:256},e),new f.a(e);case"snefru128/2":return e=Object.assign({},{length:128,rounds:2},e),new f.a(e);case"snefru256/4":return e=Object.assign({},{length:256,rounds:4},e),new f.a(e);case"whirlpool":return new p.a(e);case"whirlpool-0":return e=Object.assign({},{type:"0"},e),new p.a(e);case"whirlpool-t":return e=Object.assign({},{type:"t"},e),new p.a(e)}}},{key:"hash",value:function(t,e,n){n=this.getHasher(t,n=n||{});return n.update(Object(d.a)(e)),Object(m.a)(n.finalize())}},{key:"getHmac",value:function(t,e){return new y.a(t,e)}},{key:"hmac",value:function(t,e,n){n=this.getHmac(Object(d.a)(t),n);return n.update(Object(d.a)(e)),Object(m.a)(n.finalize())}}]),n=b;function b(){!function(t){if(!(t instanceof b))throw new TypeError("Cannot call a class as a function")}(this),this.encoder={},this.encoder.fromUtf=d.a,this.encoder.fromArrayBuffer=g.a,this.encoder.toHex=m.a,this.encoder.toBase64=v.a}n=new n,e.default=n}]).default;!function(s){"use strict";var n={page:1,pageSize:200,total:0,showTotal:!1,totalTxt:"",noData:!1,showSkip:!1,showPN:!0,prevPage:"上一页",nextPage:"下一页",fastForward:0,selectOption:[],backFun:function(t){}};function e(t,e){this.element=s(t),this.settings=s.extend({},n,e),this.pageNum=1,this.pageList=[],this.pageTatol=0,this.init()}s.extend(e.prototype,{init:function(){this.element.empty(),this.viewHtml(),this.clickBtn()},creatHtml:function(t){t==this.settings.page?this.pageList.push('<button class="active" data-page='+t+">"+t+"</button>"):this.pageList.push("<button data-page="+t+">"+t+"</button>")},viewHtml:function(){var t=this.settings,e=0,n=[];if(0<t.total)e=Math.ceil(t.total/t.pageSize);else{if(!t.noData)return;t.page=e=1,t.total=0}if(this.pageTatol=e,this.pageNum=t.page,t.showTotal&&n.push('<div class="spage-total">'+t.totalTxt+"</div>"),n.push('<div class="spage-number">'),this.pageList=[],t.showPN&&(1==t.page?this.pageList.push('<button class="button-disabled" data-page="prev"><i class="prevBtn"></i></button>'):this.pageList.push('<button data-page="prev"><i class="prevBtn"></i></button>')),e<=6)for(var r=1;r<e+1;r++)this.creatHtml(r);else if(t.page<3){for(r=1;r<=3;r++)this.creatHtml(r);this.pageList.push('<button data-page="after" class="spage-after">...</button><button data-page='+e+">"+e+"</button>")}else if(t.page>e-3){this.pageList.push('<button data-page="1">1</button><button data-page="before" class="spage-before">...</button>');for(r=e-3;r<=e;r++)this.creatHtml(r)}else{this.pageList.push('<button data-page="1">1</button>'),3<t.page&&this.pageList.push('<button data-page="before" class="spage-before">...</button>');for(r=t.page-1;r<=Number(t.page)+1;r++)this.creatHtml(r);t.page<=e-3&&this.pageList.push('<button data-page="after" class="spage-after">...</button>'),this.pageList.push("<button data-page="+e+">"+e+"</button>")}if(t.showPN&&(t.page==e?this.pageList.push('<button class="button-disabled" data-page="next"><i class="nextBtn"></i></button>'):this.pageList.push('<button data-page="next"><i class="nextBtn"></i></button>')),n.push(this.pageList.join("")),n.push("</div>"),0<t.selectOption.length){for(var i='<select class="selectNum" id="selectNum">',o=0;o<=t.selectOption.length-1;o++)i+="<option value="+t.selectOption[o]+" ",t.pageSize===t.selectOption[o]?i+="selected>"+t.selectOption[o]+"行/页</option>":i+=">"+t.selectOption[o]+"行/页</option>";n.push(i+="</select>")}t.showSkip&&n.push('<div class="spage-skip">跳至 <input type="text" class="luckysheet-mousedown-cancel" value="'+t.page+'"/> 页  </div>'),this.element.html(n.join(""))},clickBtn:function(){var n=this,r=this.settings,i=this.element,o=this.pageTatol;this.element.on("change","select",function(t){var e=parseInt(document.getElementById("selectNum").value);r.pageSize=e,r.page=1,n.element.empty(),n.viewHtml(),r.backFun(r)}),this.element.off("click","button"),this.element.on("click","button",function(){var t=s(this).data("page");switch(t){case"prev":r.page=1<=r.page-1?r.page-1:1,t=r.page;break;case"next":r.page=Number(r.page)+1<=o?Number(r.page)+1:o,t=r.page;break;case"before":r.page=1<=r.page-r.fastForward?r.page-r.fastForward:1,t=r.page;break;case"after":r.page=Number(r.page)+Number(r.fastForward)<=o?Number(r.page)+Number(r.fastForward):o,t=r.page;break;case"go":var e=parseInt(i.find("input").val());if(!(/^[0-9]*$/.test(e)&&1<=e&&e<=o))return;t=r.page=e;break;default:r.page=t}t!=n.pageNum&&(n.pageNum=r.page,n.viewHtml(),r.backFun(r))}),this.element.off("keyup","input"),this.element.on("keyup","input",function(t){13==t.keyCode&&(t=parseInt(i.find("input").val()),/^[0-9]*$/.test(t)&&1<=t&&t<=o&&t!=n.pageNum&&(r.page=t,n.pageNum=t,n.viewHtml(),r.backFun(r)))}),0<r.fastForward&&(i.find(".spage-after").hover(function(){s(this).html("»")},function(){s(this).html("...")}),i.find(".spage-before").hover(function(){s(this).html("«")},function(){s(this).html("...")}))}}),s.fn.sPage=function(t){return this.each(function(){new e(this,t)})}}(jQuery,(window,document)); diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/plugins.css b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/plugins.css index ece4eeb72..eb41e3111 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/plugins.css +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/luckysheet/plugins/plugins.css @@ -7,4 +7,4 @@ * To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=base&cornerRadiusShadow=8px&offsetLeftShadow=0px&offsetTopShadow=0px&thicknessShadow=5px&opacityShadow=30&bgImgOpacityShadow=0&bgTextureShadow=flat&bgColorShadow=666666&opacityOverlay=30&bgImgOpacityOverlay=0&bgTextureOverlay=flat&bgColorOverlay=aaaaaa&iconColorError=cc0000&fcError=5f3f3f&borderColorError=f1a899&bgTextureError=flat&bgColorError=fddfdf&iconColorHighlight=777620&fcHighlight=777620&borderColorHighlight=dad55e&bgTextureHighlight=flat&bgColorHighlight=fffa90&iconColorActive=ffffff&fcActive=ffffff&borderColorActive=003eff&bgTextureActive=flat&bgColorActive=007fff&iconColorHover=555555&fcHover=2b2b2b&borderColorHover=cccccc&bgTextureHover=flat&bgColorHover=ededed&iconColorDefault=777777&fcDefault=454545&borderColorDefault=c5c5c5&bgTextureDefault=flat&bgColorDefault=f6f6f6&iconColorContent=444444&fcContent=333333&borderColorContent=dddddd&bgTextureContent=flat&bgColorContent=ffffff&iconColorHeader=444444&fcHeader=333333&borderColorHeader=dddddd&bgTextureHeader=flat&bgColorHeader=e9e9e9&cornerRadius=3px&fwDefault=normal&fsDefault=1em&ffDefault=Arial%2CHelvetica%2Csans-serif * Copyright jQuery Foundation and other contributors; Licensed MIT */.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:after,.ui-helper-clearfix:before{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-button{padding:.4em 1em;display:inline-block;position:relative;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:visible}.ui-button,.ui-button:active,.ui-button:hover,.ui-button:link,.ui-button:visited{text-decoration:none}.ui-button-icon-only{width:2em;box-sizing:border-box;text-indent:-9999px;white-space:nowrap}input.ui-button.ui-button-icon-only{text-indent:0}.ui-button-icon-only .ui-icon{position:absolute;top:50%;left:50%;margin-top:-8px;margin-left:-8px}.ui-button.ui-icon-notext .ui-icon{padding:0;width:2.1em;height:2.1em;text-indent:-9999px;white-space:nowrap}input.ui-button.ui-icon-notext .ui-icon{width:auto;height:auto;text-indent:0;white-space:normal;padding:.4em 1em}button.ui-button::-moz-focus-inner,input.ui-button::-moz-focus-inner{border:0;padding:0}.ui-controlgroup{vertical-align:middle;display:inline-block}.ui-controlgroup>.ui-controlgroup-item{float:left;margin-left:0;margin-right:0}.ui-controlgroup>.ui-controlgroup-item.ui-visual-focus,.ui-controlgroup>.ui-controlgroup-item:focus{z-index:9999}.ui-controlgroup-vertical>.ui-controlgroup-item{display:block;float:none;width:100%;margin-top:0;margin-bottom:0;text-align:left}.ui-controlgroup-vertical .ui-controlgroup-item{box-sizing:border-box}.ui-controlgroup .ui-controlgroup-label{padding:.4em 1em}.ui-controlgroup .ui-controlgroup-label span{font-size:80%}.ui-controlgroup-horizontal .ui-controlgroup-label+.ui-controlgroup-item{border-left:none}.ui-controlgroup-vertical .ui-controlgroup-label+.ui-controlgroup-item{border-top:none}.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content{border-right:none}.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content{border-bottom:none}.ui-controlgroup-vertical .ui-spinner-input{width:75%;width:calc(100% - 2.4em)}.ui-controlgroup-vertical .ui-spinner .ui-spinner-up{border-top-style:solid}.ui-checkboxradio-label .ui-icon-background{box-shadow:inset 1px 1px 1px #ccc;border-radius:.12em;border:none}.ui-checkboxradio-radio-label .ui-icon-background{width:16px;height:16px;border-radius:1em;overflow:visible;border:none}.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon{background-image:none;width:8px;height:8px;border-width:4px;border-style:solid}.ui-checkboxradio-disabled{pointer-events:none}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer;list-style-image:url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-active,.ui-menu .ui-state-focus{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-selectmenu-menu{padding:0;margin:0;position:absolute;top:0;left:0;display:none}.ui-selectmenu-menu .ui-menu{overflow:auto;overflow-x:hidden;padding-bottom:1px}.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup{font-size:1em;font-weight:700;line-height:1.5;padding:2px .4em;margin:.5em 0 0 0;height:auto;border:0}.ui-selectmenu-open{display:block}.ui-selectmenu-text{display:block;margin-right:20px;overflow:hidden;text-overflow:ellipsis}.ui-selectmenu-button.ui-button{text-align:left;white-space:nowrap;width:14em}.ui-selectmenu-icon.ui-icon{float:right;margin-top:0}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:0 0;color:inherit;padding:.222em 0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:2em}.ui-spinner-button{width:1.6em;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top-style:none;border-bottom-style:none;border-right-style:none}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-widget{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget .ui-widget{font-size:1em}.ui-widget button,.ui-widget input,.ui-widget select,.ui-widget textarea{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #c5c5c5}.ui-widget-content{border:1px solid #ddd;background:#fff;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #ddd;background:#e9e9e9;color:#333;font-weight:700}.ui-widget-header a{color:#333}.ui-button,.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,html .ui-button.ui-state-disabled:active,html .ui-button.ui-state-disabled:hover{border:1px solid #c5c5c5;background:#f6f6f6;font-weight:400;color:#454545}.ui-button,.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button{color:#454545;text-decoration:none}.ui-button:focus,.ui-button:hover,.ui-state-focus,.ui-state-hover,.ui-widget-content .ui-state-focus,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-focus,.ui-widget-header .ui-state-hover{border:1px solid #ccc;background:#ededed;font-weight:400;color:#2b2b2b}.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,a.ui-button:focus,a.ui-button:hover{color:#2b2b2b;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px #5e9ed6}.ui-button.ui-state-active:hover,.ui-button:active,.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active{border:1px solid #003eff;background:#007fff;font-weight:400;color:#fff}.ui-icon-background,.ui-state-active .ui-icon-background{border:#003eff;background-color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #dad55e;background:#fffa90;color:#777620}.ui-state-checked{border:1px solid #dad55e;background:#fffa90}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#777620}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#5f3f3f}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#5f3f3f}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:700}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:400}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url(images/ui-icons_444444_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_444444_256x240.png)}.ui-button:focus .ui-icon,.ui-button:hover .ui-icon,.ui-state-focus .ui-icon,.ui-state-hover .ui-icon{background-image:url(images/ui-icons_555555_256x240.png)}.ui-button:active .ui-icon,.ui-state-active .ui-icon{background-image:url(images/ui-icons_ffffff_256x240.png)}.ui-button .ui-state-highlight.ui-icon,.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_777620_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_cc0000_256x240.png)}.ui-button .ui-icon{background-image:url(images/ui-icons_777777_256x240.png)}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-left,.ui-corner-tl,.ui-corner-top{border-top-left-radius:3px}.ui-corner-all,.ui-corner-right,.ui-corner-top,.ui-corner-tr{border-top-right-radius:3px}.ui-corner-all,.ui-corner-bl,.ui-corner-bottom,.ui-corner-left{border-bottom-left-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-br,.ui-corner-right{border-bottom-right-radius:3px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{-webkit-box-shadow:0 0 5px #666;box-shadow:0 0 5px #666}/*! jQuery UI - v1.12.1 - 2017-02-14 * http://jqueryui.com -* Copyright jQuery Foundation and other contributors; Licensed MIT */.ui-widget{font-family:"Helvetica Neue",Helvetica,Arial,"PingFang SC","Hiragino Sans GB","Heiti SC","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;font-size:1em}.ui-widget .ui-widget{font-size:1em}.ui-widget button,.ui-widget input,.ui-widget select,.ui-widget textarea{font-family:"Helvetica Neue",Helvetica,Arial,"PingFang SC","Hiragino Sans GB","Heiti SC","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #e5e5e5}.ui-widget-content{border:1px solid #e5e5e5;background:#fff;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #e5e5e5;background:#f5f5f5;color:#333;font-weight:700}.ui-widget-header a{color:#333}.ui-button,.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,html .ui-button.ui-state-disabled:active,html .ui-button.ui-state-disabled:hover{border:1px solid #e5e5e5;background:#f5f5f5;font-weight:400;color:#454545}.ui-button,.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button{color:#454545;text-decoration:none}.ui-button:focus,.ui-button:hover,.ui-state-focus,.ui-state-hover,.ui-widget-content .ui-state-focus,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-focus,.ui-widget-header .ui-state-hover{border:1px solid #ccc;background:#efefef;font-weight:400;color:#2b2b2b}.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,a.ui-button:focus,a.ui-button:hover{color:#2b2b2b;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px #5e9ed6}.ui-button.ui-state-active:hover,.ui-button:active,.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active{border:1px solid #fd8e8e;background:#ff9f9f;font-weight:400;color:#fff}.ui-icon-background,.ui-state-active .ui-icon-background{border:#fd8e8e;background-color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #dad55e;background:#fffa90;color:#777620}.ui-state-checked{border:1px solid #dad55e;background:#fffa90}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#777620}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#5f3f3f}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#5f3f3f}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:700}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:400}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url(images/ui-icons_444444_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_444444_256x240.png)}.ui-button:focus .ui-icon,.ui-button:hover .ui-icon,.ui-state-focus .ui-icon,.ui-state-hover .ui-icon{background-image:url(images/ui-icons_555555_256x240.png)}.ui-button:active .ui-icon,.ui-state-active .ui-icon{background-image:url(images/ui-icons_ffffff_256x240.png)}.ui-button .ui-state-highlight.ui-icon,.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_777620_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_cc0000_256x240.png)}.ui-button .ui-icon{background-image:url(images/ui-icons_777777_256x240.png)}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-left,.ui-corner-tl,.ui-corner-top{border-top-left-radius:1px}.ui-corner-all,.ui-corner-right,.ui-corner-top,.ui-corner-tr{border-top-right-radius:1px}.ui-corner-all,.ui-corner-bl,.ui-corner-bottom,.ui-corner-left{border-bottom-left-radius:1px}.ui-corner-all,.ui-corner-bottom,.ui-corner-br,.ui-corner-right{border-bottom-right-radius:1px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{-webkit-box-shadow:0 0 5px #666;box-shadow:0 0 5px #666}.spage-total{display:inline-block;margin-right:10px;line-height:29px;color:#666;font-size:14px}.spage-number{display:inline-block;color:#666;font-size:14px}.selectNum{font-size:14px;height:27px;box-sizing:border-box;vertical-align:top;line-height:27px;border:1px solid #ddd;margin-left:5px;vertical-align:middle}.spage-number button{position:relative;box-sizing:border-box;display:inline-block;margin-left:-1px;padding:0 10px;line-height:27px;border:1px solid #ddd;text-align:center;transition:all .2s;cursor:pointer;outline:0;background:0 0;user-select:none;color:#333;background:#fff;vertical-align:middle}.nextBtn,.prevBtn{width:16px;height:27px;background:url(images/js.png) no-repeat center center;background-size:100% auto;display:block;transform:rotate(180deg)}.nextBtn{transform:rotate(0)}.spage-number button.active{background:#2d98e6;color:#fff;border-color:#2d98e6;z-index:3}.spage-number button.active:hover{background:#2d98e6;color:#fff;border-color:#2d98e6;z-index:3}.spage-number button:hover{background-color:#eee}.spage-number button.button-disabled{cursor:not-allowed;color:#ccc}.spage-before,.spage-number .spage-after{padding:0;width:40px}.spage-skip{display:inline-block;margin-left:5px;line-height:27px;color:#666;font-size:14px}.spage-skip input{box-sizing:border-box;display:inline-block;width:45px;height:29px;text-align:center;vertical-align:top;border:1px solid #ddd;background:0 0;outline:0;transition:all .2s}.spage-skip input:focus{border-color:#2d98e6}.spage-skip button{display:inline-block;padding:0 14px;line-height:27px;vertical-align:top;color:#333;border:1px solid #ddd;cursor:pointer;transition:all .2s;outline:0;background:0 0;user-select:none;background-color:#fff}.spage-skip button:hover{background:#2d98e6;color:#fff;border:1px solid #2d98e6} \ No newline at end of file +* Copyright jQuery Foundation and other contributors; Licensed MIT */.ui-widget{font-family:"Helvetica Neue",Helvetica,Arial,"PingFang SC","Hiragino Sans GB","Heiti SC","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;font-size:1em}.ui-widget .ui-widget{font-size:1em}.ui-widget button,.ui-widget input,.ui-widget select,.ui-widget textarea{font-family:"Helvetica Neue",Helvetica,Arial,"PingFang SC","Hiragino Sans GB","Heiti SC","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #e5e5e5}.ui-widget-content{border:1px solid #e5e5e5;background:#fff;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #e5e5e5;background:#f5f5f5;color:#333;font-weight:700}.ui-widget-header a{color:#333}.ui-button,.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,html .ui-button.ui-state-disabled:active,html .ui-button.ui-state-disabled:hover{border:1px solid #e5e5e5;background:#f5f5f5;font-weight:400;color:#454545}.ui-button,.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button{color:#454545;text-decoration:none}.ui-button:focus,.ui-button:hover,.ui-state-focus,.ui-state-hover,.ui-widget-content .ui-state-focus,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-focus,.ui-widget-header .ui-state-hover{border:1px solid #ccc;background:#efefef;font-weight:400;color:#2b2b2b}.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,a.ui-button:focus,a.ui-button:hover{color:#2b2b2b;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px #5e9ed6}.ui-button.ui-state-active:hover,.ui-button:active,.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active{border:1px solid #fd8e8e;background:#ff9f9f;font-weight:400;color:#fff}.ui-icon-background,.ui-state-active .ui-icon-background{border:#fd8e8e;background-color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #dad55e;background:#fffa90;color:#777620}.ui-state-checked{border:1px solid #dad55e;background:#fffa90}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#777620}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#5f3f3f}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#5f3f3f}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:700}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:400}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url(images/ui-icons_444444_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_444444_256x240.png)}.ui-button:focus .ui-icon,.ui-button:hover .ui-icon,.ui-state-focus .ui-icon,.ui-state-hover .ui-icon{background-image:url(images/ui-icons_555555_256x240.png)}.ui-button:active .ui-icon,.ui-state-active .ui-icon{background-image:url(images/ui-icons_ffffff_256x240.png)}.ui-button .ui-state-highlight.ui-icon,.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_777620_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_cc0000_256x240.png)}.ui-button .ui-icon{background-image:url(images/ui-icons_777777_256x240.png)}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-left,.ui-corner-tl,.ui-corner-top{border-top-left-radius:1px}.ui-corner-all,.ui-corner-right,.ui-corner-top,.ui-corner-tr{border-top-right-radius:1px}.ui-corner-all,.ui-corner-bl,.ui-corner-bottom,.ui-corner-left{border-bottom-left-radius:1px}.ui-corner-all,.ui-corner-bottom,.ui-corner-br,.ui-corner-right{border-bottom-right-radius:1px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{-webkit-box-shadow:0 0 5px #666;box-shadow:0 0 5px #666}.spage-total{display:inline-block;margin-right:10px;line-height:29px;color:#666;font-size:14px}.spage-number{display:inline-block;color:#666;font-size:14px}.selectNum{font-size:14px;height:27px;box-sizing:border-box;vertical-align:top;line-height:27px;border:1px solid #ddd;margin-left:5px;vertical-align:middle}.spage-number button{position:relative;box-sizing:border-box;display:inline-block;margin-left:-1px;padding:0 10px;line-height:27px;border:1px solid #ddd;text-align:center;transition:all .2s;cursor:pointer;outline:0;background:0 0;user-select:none;color:#333;background:#fff;vertical-align:middle}.nextBtn,.prevBtn{width:16px;height:27px;background:url(images/js.png) no-repeat center center;background-size:100% auto;display:block;transform:rotate(180deg)}.nextBtn{transform:rotate(0)}.spage-number button.active{background:#2d98e6;color:#fff;border-color:#2d98e6;z-index:3}.spage-number button.active:hover{background:#2d98e6;color:#fff;border-color:#2d98e6;z-index:3}.spage-number button:hover{background-color:#eee}.spage-number button.button-disabled{cursor:not-allowed;color:#ccc}.spage-before,.spage-number .spage-after{padding:0;width:40px}.spage-skip{display:inline-block;margin-left:5px;line-height:27px;color:#666;font-size:14px}.spage-skip input{box-sizing:border-box;display:inline-block;width:45px;height:29px;text-align:center;vertical-align:top;border:1px solid #ddd;background:0 0;outline:0;transition:all .2s}.spage-skip input:focus{border-color:#2d98e6}.spage-skip button{display:inline-block;padding:0 14px;line-height:27px;vertical-align:top;color:#333;border:1px solid #ddd;cursor:pointer;transition:all .2s;outline:0;background:0 0;user-select:none;background-color:#fff}.spage-skip button:hover{background:#2d98e6;color:#fff;border:1px solid #2d98e6} diff --git a/pigx-visual/pigx-report-platform/src/main/resources/static/static/wordCloud/echarts-wordcloud.min.js b/pigx-visual/pigx-report-platform/src/main/resources/static/static/wordCloud/echarts-wordcloud.min.js index aaf624912..dd5418792 100644 --- a/pigx-visual/pigx-report-platform/src/main/resources/static/static/wordCloud/echarts-wordcloud.min.js +++ b/pigx-visual/pigx-report-platform/src/main/resources/static/static/wordCloud/echarts-wordcloud.min.js @@ -5,4 +5,4 @@ * Copyright 2011 - 2013 Tim Chien * Released under the MIT license */ -window.setImmediate||(window.setImmediate=function(){return window.msSetImmediate||window.webkitSetImmediate||window.mozSetImmediate||window.oSetImmediate||function(){if(!window.postMessage||!window.addEventListener)return null;var t=[void 0],e="zero-timeout-message",r=function(r){var n=t.length;return t.push(r),window.postMessage(e+n.toString(36),"*"),n};return window.addEventListener("message",function(r){if("string"==typeof r.data&&r.data.substr(0,e.length)===e){r.stopImmediatePropagation();var n=parseInt(r.data.substr(e.length),36);t[n]&&(t[n](),t[n]=void 0)}},!0),window.clearImmediate=function(e){t[e]&&(t[e]=void 0)},r}()||function(t){window.setTimeout(t,0)}}()),window.clearImmediate||(window.clearImmediate=function(){return window.msClearImmediate||window.webkitClearImmediate||window.mozClearImmediate||window.oClearImmediate||function(t){window.clearTimeout(t)}}()),function(r){var a=function(){var t=document.createElement("canvas");if(!t||!t.getContext)return!1;var e=t.getContext("2d");return!!e.getImageData&&(!!e.fillText&&(!!Array.prototype.some&&!!Array.prototype.push))}(),o=function(){if(a){for(var t,e,r=document.createElement("canvas").getContext("2d"),n=20;n;){if(r.font=n.toString(10)+"px sans-serif",r.measureText("W").width===t&&r.measureText("m").width===e)return n+1;t=r.measureText("W").width,e=r.measureText("m").width,n--}return 0}}(),s=function(t){for(var e,r,n=t.length;n;e=Math.floor(Math.random()*n),r=t[--n],t[n]=t[e],t[e]=r);return t},l=function(t,e){function r(t,e){return"hsl("+(360*Math.random()).toFixed()+","+(30*Math.random()+70).toFixed()+"%,"+(Math.random()*(e-t)+t).toFixed()+"%)"}if(a){Array.isArray(t)||(t=[t]),t.forEach(function(e,r){if("string"==typeof e){if(t[r]=document.getElementById(e),!t[r])throw"The element id specified is not found."}else if(!e.tagName&&!e.appendChild)throw"You must pass valid HTML elements, or ID of the element."});var n={list:[],fontFamily:'"Trebuchet MS", "Heiti TC", "微軟正黑體", "Arial Unicode MS", "Droid Fallback Sans", sans-serif',fontWeight:"normal",color:"random-dark",minSize:0,weightFactor:1,clearCanvas:!0,backgroundColor:"#fff",gridSize:8,drawOutOfBound:!1,origin:null,drawMask:!1,maskColor:"rgba(255,0,0,0.3)",maskGapWidth:.3,wait:0,abortThreshold:0,abort:function(){},minRotation:-Math.PI/2,maxRotation:Math.PI/2,rotationStep:.1,shuffle:!0,rotateRatio:.1,shape:"circle",ellipticity:.65,classes:null,hover:null,click:null};if(e)for(var i in e)i in n&&(n[i]=e[i]);if("function"!=typeof n.weightFactor){var l=n.weightFactor;n.weightFactor=function(t){return t*l}}if("function"!=typeof n.shape)switch(n.shape){case"circle":default:n.shape="circle";break;case"cardioid":n.shape=function(t){return 1-Math.sin(t)};break;case"diamond":case"square":n.shape=function(t){var e=t%(2*Math.PI/4);return 1/(Math.cos(e)+Math.sin(e))};break;case"triangle-forward":n.shape=function(t){var e=t%(2*Math.PI/3);return 1/(Math.cos(e)+Math.sqrt(3)*Math.sin(e))};break;case"triangle":case"triangle-upright":n.shape=function(t){var e=(t+3*Math.PI/2)%(2*Math.PI/3);return 1/(Math.cos(e)+Math.sqrt(3)*Math.sin(e))};break;case"pentagon":n.shape=function(t){var e=(t+.955)%(2*Math.PI/5);return 1/(Math.cos(e)+.726543*Math.sin(e))};break;case"star":n.shape=function(t){var e=(t+.955)%(2*Math.PI/10);return(t+.955)%(2*Math.PI/5)-2*Math.PI/10>=0?1/(Math.cos(2*Math.PI/10-e)+3.07768*Math.sin(2*Math.PI/10-e)):1/(Math.cos(e)+3.07768*Math.sin(e))}}n.gridSize=Math.max(Math.floor(n.gridSize),4);var h,u,c,f,d,v,g,p=n.gridSize,m=p-n.maskGapWidth,x=Math.abs(n.maxRotation-n.minRotation),y=Math.min(n.maxRotation,n.minRotation),w=n.rotationStep;switch(n.color){case"random-dark":g=function(){return r(10,50)};break;case"random-light":g=function(){return r(50,90)};break;default:"function"==typeof n.color&&(g=n.color)}var _=null;"function"==typeof n.classes&&(_=n.classes);var b,S=!1,M=[],T=function(t){var e,r,n=t.currentTarget,i=n.getBoundingClientRect();t.touches?(e=t.touches[0].clientX,r=t.touches[0].clientY):(e=t.clientX,r=t.clientY);var a=e-i.left,o=r-i.top,s=Math.floor(a*(n.width/i.width||1)/p),l=Math.floor(o*(n.height/i.height||1)/p);return M[s][l]},k=function(t){var e=T(t);if(b!==e){if(b=e,!e)return void n.hover(void 0,void 0,t);n.hover(e.item,e.dimension,t)}},C=function(t){var e=T(t);e&&(n.click(e.item,e.dimension,t),t.preventDefault())},P=[],I=function(t){if(P[t])return P[t];var e=8*t,r=e,i=[];for(0===t&&i.push([f[0],f[1],0]);r--;){var a=1;"circle"!==n.shape&&(a=n.shape(r/e*2*Math.PI)),i.push([f[0]+t*a*Math.cos(-r/e*2*Math.PI),f[1]+t*a*Math.sin(-r/e*2*Math.PI)*n.ellipticity,r/e*2*Math.PI])}return P[t]=i,i},A=function(){return n.abortThreshold>0&&(new Date).getTime()-v>n.abortThreshold},O=function(){return 0===n.rotateRatio?0:Math.random()>n.rotateRatio?0:0===x?y:y+Math.round(Math.random()*x/w)*w},D=function(t,e,r){var i=n.weightFactor(e);if(i<=n.minSize)return!1;var a=1;i<o&&(a=function(){for(var t=2;t*i<o;)t+=2;return t}());var s=document.createElement("canvas"),l=s.getContext("2d",{willReadFrequently:!0});l.font=n.fontWeight+" "+(i*a).toString(10)+"px "+n.fontFamily;var h=l.measureText(t).width/a,u=Math.max(i*a,l.measureText("m").width,l.measureText("W").width)/a,c=h+2*u,f=3*u,d=Math.ceil(c/p),v=Math.ceil(f/p);c=d*p,f=v*p;var g=-h/2,m=.4*-u,x=Math.ceil((c*Math.abs(Math.sin(r))+f*Math.abs(Math.cos(r)))/p),y=Math.ceil((c*Math.abs(Math.cos(r))+f*Math.abs(Math.sin(r)))/p),w=y*p,_=x*p;s.setAttribute("width",w),s.setAttribute("height",_),l.scale(1/a,1/a),l.translate(w*a/2,_*a/2),l.rotate(-r),l.font=n.fontWeight+" "+(i*a).toString(10)+"px "+n.fontFamily,l.fillStyle="#000",l.textBaseline="middle",l.fillText(t,g*a,(m+.5*i)*a);var b=l.getImageData(0,0,w,_).data;if(A())return!1;for(var S,M,T,k=[],C=y,P=[x/2,y/2,x/2,y/2];C--;)for(S=x;S--;){T=p;t:for(;T--;)for(M=p;M--;)if(b[4*((S*p+T)*w+(C*p+M))+3]){k.push([C,S]),C<P[3]&&(P[3]=C),C>P[1]&&(P[1]=C),S<P[0]&&(P[0]=S),S>P[2]&&(P[2]=S);break t}}return{mu:a,occupied:k,bounds:P,gw:y,gh:x,fillTextOffsetX:g,fillTextOffsetY:m,fillTextWidth:h,fillTextHeight:u,fontSize:i}},L=function(t,e,r,i,a){for(var o=a.length;o--;){var s=t+a[o][0],l=e+a[o][1];if(s>=u||l>=c||s<0||l<0){if(!n.drawOutOfBound)return!1}else if(!h[s][l])return!1}return!0},F=function(e,r,i,a,o,s,l,h,u){var c,f=i.fontSize;c=g?g(a,o,f,s,l):n.color;var d;d=_?_(a,o,f,s,l):n.classes;var v=i.bounds;v[3],v[0],v[1],v[3],v[2],v[0],t.forEach(function(t){if(t.getContext){var o=t.getContext("2d"),s=i.mu;o.save(),o.scale(1/s,1/s),o.font=n.fontWeight+" "+(f*s).toString(10)+"px "+n.fontFamily,o.fillStyle=c,o.translate((e+i.gw/2)*p*s,(r+i.gh/2)*p*s),0!==h&&o.rotate(-h),o.textBaseline="middle",o.fillText(a,i.fillTextOffsetX*s,(i.fillTextOffsetY+.5*f)*s),o.restore()}else{var l=document.createElement("span"),v="";v="rotate("+-h/Math.PI*180+"deg) ",1!==i.mu&&(v+="translateX(-"+i.fillTextWidth/4+"px) scale("+1/i.mu+")");var g={position:"absolute",display:"block",font:n.fontWeight+" "+f*i.mu+"px "+n.fontFamily,left:(e+i.gw/2)*p+i.fillTextOffsetX+"px",top:(r+i.gh/2)*p+i.fillTextOffsetY+"px",width:i.fillTextWidth+"px",height:i.fillTextHeight+"px",lineHeight:f+"px",whiteSpace:"nowrap",transform:v,webkitTransform:v,msTransform:v,transformOrigin:"50% 40%",webkitTransformOrigin:"50% 40%",msTransformOrigin:"50% 40%"};c&&(g.color=c),l.textContent=a;for(var m in g)l.style[m]=g[m];if(u)for(var x in u)l.setAttribute(x,u[x]);d&&(l.className+=d),t.appendChild(l)}})},R=function(e,r,n,i,a){if(!(e>=u||r>=c||e<0||r<0)){if(h[e][r]=!1,n){t[0].getContext("2d").fillRect(e*p,r*p,m,m)}S&&(M[e][r]={item:a,dimension:i})}},B=function(e,r,i,a,o,s){var l,h=o.occupied,f=n.drawMask;f&&(l=t[0].getContext("2d"),l.save(),l.fillStyle=n.maskColor);var d;if(S){var v=o.bounds;d={x:(e+v[3])*p,y:(r+v[0])*p,w:(v[1]-v[3]+1)*p,h:(v[2]-v[0]+1)*p}}for(var g=h.length;g--;){var m=e+h[g][0],x=r+h[g][1];m>=u||x>=c||m<0||x<0||R(m,x,f,d,s)}f&&l.restore()},z=function(t){var e,r,i;Array.isArray(t)?(e=t[0],r=t[1]):(e=t.word,r=t.weight,i=t.attributes);var a=O(),o=D(e,r,a);if(!o)return!1;if(A())return!1;if(!n.drawOutOfBound){var l=o.bounds;if(l[1]-l[3]+1>u||l[2]-l[0]+1>c)return!1}for(var h=d+1;h--;){var f=I(d-h);n.shuffle&&(f=[].concat(f),s(f));for(var v=0;v<f.length;v++){var g=function(n){var s=Math.floor(n[0]-o.gw/2),l=Math.floor(n[1]-o.gh/2);o.gw,o.gh;return!!L(s,l,0,0,o.occupied)&&(F(s,l,o,e,r,d-h,n[2],a,i),B(s,l,0,0,o,t),{gx:s,gy:l,rot:a,info:o})}(f[v]);if(g)return g}}return null},N=function(e,r,n){if(r)return!t.some(function(t){var i=document.createEvent("CustomEvent");return i.initCustomEvent(e,!0,r,n||{}),!t.dispatchEvent(i)},this);t.forEach(function(t){var i=document.createEvent("CustomEvent");i.initCustomEvent(e,!0,r,n||{}),t.dispatchEvent(i)},this)};!function(){var e=t[0];if(e.getContext)u=Math.ceil(e.width/p),c=Math.ceil(e.height/p);else{var r=e.getBoundingClientRect();u=Math.ceil(r.width/p),c=Math.ceil(r.height/p)}if(N("wordcloudstart",!0)){f=n.origin?[n.origin[0]/p,n.origin[1]/p]:[u/2,c/2],d=Math.floor(Math.sqrt(u*u+c*c)),h=[];var i,a,o;if(!e.getContext||n.clearCanvas)for(t.forEach(function(t){if(t.getContext){var e=t.getContext("2d");e.fillStyle=n.backgroundColor,e.clearRect(0,0,u*(p+1),c*(p+1)),e.fillRect(0,0,u*(p+1),c*(p+1))}else t.textContent="",t.style.backgroundColor=n.backgroundColor,t.style.position="relative"}),i=u;i--;)for(h[i]=[],a=c;a--;)h[i][a]=!0;else{var s=document.createElement("canvas").getContext("2d");s.fillStyle=n.backgroundColor,s.fillRect(0,0,1,1);var l=s.getImageData(0,0,1,1).data,g=e.getContext("2d").getImageData(0,0,u*p,c*p).data;i=u;for(var m,x;i--;)for(h[i]=[],a=c;a--;){x=p;t:for(;x--;)for(m=p;m--;)for(o=4;o--;)if(g[4*((a*p+x)*u*p+(i*p+m))+o]!==l[o]){h[i][a]=!1;break t}!1!==h[i][a]&&(h[i][a]=!0)}g=s=l=void 0}if(n.hover||n.click){for(S=!0,i=u+1;i--;)M[i]=[];n.hover&&e.addEventListener("mousemove",k),n.click&&(e.addEventListener("click",C),e.addEventListener("touchstart",C),e.addEventListener("touchend",function(t){t.preventDefault()}),e.style.webkitTapHighlightColor="rgba(0, 0, 0, 0)"),e.addEventListener("wordcloudstart",function t(){e.removeEventListener("wordcloudstart",t),e.removeEventListener("mousemove",k),e.removeEventListener("click",C),b=void 0})}o=0;var y,w;0!==n.wait?(y=window.setTimeout,w=window.clearTimeout):(y=window.setImmediate,w=window.clearImmediate);var _=function(e,r){t.forEach(function(t){t.removeEventListener(e,r)},this)},T=function t(){_("wordcloudstart",t),w(P)};!function(e,r){t.forEach(function(t){t.addEventListener(e,r)},this)}("wordcloudstart",T);var P=y(function t(){if(o>=n.list.length)return w(P),N("wordcloudstop",!1),void _("wordcloudstart",T);v=(new Date).getTime();var e=z(n.list[o]),r=!N("wordclouddrawn",!0,{item:n.list[o],drawn:e});if(A()||r)return w(P),n.abort(),N("wordcloudabort",!1),N("wordcloudstop",!1),void _("wordcloudstart",T);o++,P=y(t,n.wait)},n.wait)}}()}};l.isSupported=a,l.minFontSize=o,n=[],void 0!==(i=function(){return l}.apply(e,n))&&(t.exports=i)}()}])}); \ No newline at end of file +window.setImmediate||(window.setImmediate=function(){return window.msSetImmediate||window.webkitSetImmediate||window.mozSetImmediate||window.oSetImmediate||function(){if(!window.postMessage||!window.addEventListener)return null;var t=[void 0],e="zero-timeout-message",r=function(r){var n=t.length;return t.push(r),window.postMessage(e+n.toString(36),"*"),n};return window.addEventListener("message",function(r){if("string"==typeof r.data&&r.data.substr(0,e.length)===e){r.stopImmediatePropagation();var n=parseInt(r.data.substr(e.length),36);t[n]&&(t[n](),t[n]=void 0)}},!0),window.clearImmediate=function(e){t[e]&&(t[e]=void 0)},r}()||function(t){window.setTimeout(t,0)}}()),window.clearImmediate||(window.clearImmediate=function(){return window.msClearImmediate||window.webkitClearImmediate||window.mozClearImmediate||window.oClearImmediate||function(t){window.clearTimeout(t)}}()),function(r){var a=function(){var t=document.createElement("canvas");if(!t||!t.getContext)return!1;var e=t.getContext("2d");return!!e.getImageData&&(!!e.fillText&&(!!Array.prototype.some&&!!Array.prototype.push))}(),o=function(){if(a){for(var t,e,r=document.createElement("canvas").getContext("2d"),n=20;n;){if(r.font=n.toString(10)+"px sans-serif",r.measureText("W").width===t&&r.measureText("m").width===e)return n+1;t=r.measureText("W").width,e=r.measureText("m").width,n--}return 0}}(),s=function(t){for(var e,r,n=t.length;n;e=Math.floor(Math.random()*n),r=t[--n],t[n]=t[e],t[e]=r);return t},l=function(t,e){function r(t,e){return"hsl("+(360*Math.random()).toFixed()+","+(30*Math.random()+70).toFixed()+"%,"+(Math.random()*(e-t)+t).toFixed()+"%)"}if(a){Array.isArray(t)||(t=[t]),t.forEach(function(e,r){if("string"==typeof e){if(t[r]=document.getElementById(e),!t[r])throw"The element id specified is not found."}else if(!e.tagName&&!e.appendChild)throw"You must pass valid HTML elements, or ID of the element."});var n={list:[],fontFamily:'"Trebuchet MS", "Heiti TC", "微軟正黑體", "Arial Unicode MS", "Droid Fallback Sans", sans-serif',fontWeight:"normal",color:"random-dark",minSize:0,weightFactor:1,clearCanvas:!0,backgroundColor:"#fff",gridSize:8,drawOutOfBound:!1,origin:null,drawMask:!1,maskColor:"rgba(255,0,0,0.3)",maskGapWidth:.3,wait:0,abortThreshold:0,abort:function(){},minRotation:-Math.PI/2,maxRotation:Math.PI/2,rotationStep:.1,shuffle:!0,rotateRatio:.1,shape:"circle",ellipticity:.65,classes:null,hover:null,click:null};if(e)for(var i in e)i in n&&(n[i]=e[i]);if("function"!=typeof n.weightFactor){var l=n.weightFactor;n.weightFactor=function(t){return t*l}}if("function"!=typeof n.shape)switch(n.shape){case"circle":default:n.shape="circle";break;case"cardioid":n.shape=function(t){return 1-Math.sin(t)};break;case"diamond":case"square":n.shape=function(t){var e=t%(2*Math.PI/4);return 1/(Math.cos(e)+Math.sin(e))};break;case"triangle-forward":n.shape=function(t){var e=t%(2*Math.PI/3);return 1/(Math.cos(e)+Math.sqrt(3)*Math.sin(e))};break;case"triangle":case"triangle-upright":n.shape=function(t){var e=(t+3*Math.PI/2)%(2*Math.PI/3);return 1/(Math.cos(e)+Math.sqrt(3)*Math.sin(e))};break;case"pentagon":n.shape=function(t){var e=(t+.955)%(2*Math.PI/5);return 1/(Math.cos(e)+.726543*Math.sin(e))};break;case"star":n.shape=function(t){var e=(t+.955)%(2*Math.PI/10);return(t+.955)%(2*Math.PI/5)-2*Math.PI/10>=0?1/(Math.cos(2*Math.PI/10-e)+3.07768*Math.sin(2*Math.PI/10-e)):1/(Math.cos(e)+3.07768*Math.sin(e))}}n.gridSize=Math.max(Math.floor(n.gridSize),4);var h,u,c,f,d,v,g,p=n.gridSize,m=p-n.maskGapWidth,x=Math.abs(n.maxRotation-n.minRotation),y=Math.min(n.maxRotation,n.minRotation),w=n.rotationStep;switch(n.color){case"random-dark":g=function(){return r(10,50)};break;case"random-light":g=function(){return r(50,90)};break;default:"function"==typeof n.color&&(g=n.color)}var _=null;"function"==typeof n.classes&&(_=n.classes);var b,S=!1,M=[],T=function(t){var e,r,n=t.currentTarget,i=n.getBoundingClientRect();t.touches?(e=t.touches[0].clientX,r=t.touches[0].clientY):(e=t.clientX,r=t.clientY);var a=e-i.left,o=r-i.top,s=Math.floor(a*(n.width/i.width||1)/p),l=Math.floor(o*(n.height/i.height||1)/p);return M[s][l]},k=function(t){var e=T(t);if(b!==e){if(b=e,!e)return void n.hover(void 0,void 0,t);n.hover(e.item,e.dimension,t)}},C=function(t){var e=T(t);e&&(n.click(e.item,e.dimension,t),t.preventDefault())},P=[],I=function(t){if(P[t])return P[t];var e=8*t,r=e,i=[];for(0===t&&i.push([f[0],f[1],0]);r--;){var a=1;"circle"!==n.shape&&(a=n.shape(r/e*2*Math.PI)),i.push([f[0]+t*a*Math.cos(-r/e*2*Math.PI),f[1]+t*a*Math.sin(-r/e*2*Math.PI)*n.ellipticity,r/e*2*Math.PI])}return P[t]=i,i},A=function(){return n.abortThreshold>0&&(new Date).getTime()-v>n.abortThreshold},O=function(){return 0===n.rotateRatio?0:Math.random()>n.rotateRatio?0:0===x?y:y+Math.round(Math.random()*x/w)*w},D=function(t,e,r){var i=n.weightFactor(e);if(i<=n.minSize)return!1;var a=1;i<o&&(a=function(){for(var t=2;t*i<o;)t+=2;return t}());var s=document.createElement("canvas"),l=s.getContext("2d",{willReadFrequently:!0});l.font=n.fontWeight+" "+(i*a).toString(10)+"px "+n.fontFamily;var h=l.measureText(t).width/a,u=Math.max(i*a,l.measureText("m").width,l.measureText("W").width)/a,c=h+2*u,f=3*u,d=Math.ceil(c/p),v=Math.ceil(f/p);c=d*p,f=v*p;var g=-h/2,m=.4*-u,x=Math.ceil((c*Math.abs(Math.sin(r))+f*Math.abs(Math.cos(r)))/p),y=Math.ceil((c*Math.abs(Math.cos(r))+f*Math.abs(Math.sin(r)))/p),w=y*p,_=x*p;s.setAttribute("width",w),s.setAttribute("height",_),l.scale(1/a,1/a),l.translate(w*a/2,_*a/2),l.rotate(-r),l.font=n.fontWeight+" "+(i*a).toString(10)+"px "+n.fontFamily,l.fillStyle="#000",l.textBaseline="middle",l.fillText(t,g*a,(m+.5*i)*a);var b=l.getImageData(0,0,w,_).data;if(A())return!1;for(var S,M,T,k=[],C=y,P=[x/2,y/2,x/2,y/2];C--;)for(S=x;S--;){T=p;t:for(;T--;)for(M=p;M--;)if(b[4*((S*p+T)*w+(C*p+M))+3]){k.push([C,S]),C<P[3]&&(P[3]=C),C>P[1]&&(P[1]=C),S<P[0]&&(P[0]=S),S>P[2]&&(P[2]=S);break t}}return{mu:a,occupied:k,bounds:P,gw:y,gh:x,fillTextOffsetX:g,fillTextOffsetY:m,fillTextWidth:h,fillTextHeight:u,fontSize:i}},L=function(t,e,r,i,a){for(var o=a.length;o--;){var s=t+a[o][0],l=e+a[o][1];if(s>=u||l>=c||s<0||l<0){if(!n.drawOutOfBound)return!1}else if(!h[s][l])return!1}return!0},F=function(e,r,i,a,o,s,l,h,u){var c,f=i.fontSize;c=g?g(a,o,f,s,l):n.color;var d;d=_?_(a,o,f,s,l):n.classes;var v=i.bounds;v[3],v[0],v[1],v[3],v[2],v[0],t.forEach(function(t){if(t.getContext){var o=t.getContext("2d"),s=i.mu;o.save(),o.scale(1/s,1/s),o.font=n.fontWeight+" "+(f*s).toString(10)+"px "+n.fontFamily,o.fillStyle=c,o.translate((e+i.gw/2)*p*s,(r+i.gh/2)*p*s),0!==h&&o.rotate(-h),o.textBaseline="middle",o.fillText(a,i.fillTextOffsetX*s,(i.fillTextOffsetY+.5*f)*s),o.restore()}else{var l=document.createElement("span"),v="";v="rotate("+-h/Math.PI*180+"deg) ",1!==i.mu&&(v+="translateX(-"+i.fillTextWidth/4+"px) scale("+1/i.mu+")");var g={position:"absolute",display:"block",font:n.fontWeight+" "+f*i.mu+"px "+n.fontFamily,left:(e+i.gw/2)*p+i.fillTextOffsetX+"px",top:(r+i.gh/2)*p+i.fillTextOffsetY+"px",width:i.fillTextWidth+"px",height:i.fillTextHeight+"px",lineHeight:f+"px",whiteSpace:"nowrap",transform:v,webkitTransform:v,msTransform:v,transformOrigin:"50% 40%",webkitTransformOrigin:"50% 40%",msTransformOrigin:"50% 40%"};c&&(g.color=c),l.textContent=a;for(var m in g)l.style[m]=g[m];if(u)for(var x in u)l.setAttribute(x,u[x]);d&&(l.className+=d),t.appendChild(l)}})},R=function(e,r,n,i,a){if(!(e>=u||r>=c||e<0||r<0)){if(h[e][r]=!1,n){t[0].getContext("2d").fillRect(e*p,r*p,m,m)}S&&(M[e][r]={item:a,dimension:i})}},B=function(e,r,i,a,o,s){var l,h=o.occupied,f=n.drawMask;f&&(l=t[0].getContext("2d"),l.save(),l.fillStyle=n.maskColor);var d;if(S){var v=o.bounds;d={x:(e+v[3])*p,y:(r+v[0])*p,w:(v[1]-v[3]+1)*p,h:(v[2]-v[0]+1)*p}}for(var g=h.length;g--;){var m=e+h[g][0],x=r+h[g][1];m>=u||x>=c||m<0||x<0||R(m,x,f,d,s)}f&&l.restore()},z=function(t){var e,r,i;Array.isArray(t)?(e=t[0],r=t[1]):(e=t.word,r=t.weight,i=t.attributes);var a=O(),o=D(e,r,a);if(!o)return!1;if(A())return!1;if(!n.drawOutOfBound){var l=o.bounds;if(l[1]-l[3]+1>u||l[2]-l[0]+1>c)return!1}for(var h=d+1;h--;){var f=I(d-h);n.shuffle&&(f=[].concat(f),s(f));for(var v=0;v<f.length;v++){var g=function(n){var s=Math.floor(n[0]-o.gw/2),l=Math.floor(n[1]-o.gh/2);o.gw,o.gh;return!!L(s,l,0,0,o.occupied)&&(F(s,l,o,e,r,d-h,n[2],a,i),B(s,l,0,0,o,t),{gx:s,gy:l,rot:a,info:o})}(f[v]);if(g)return g}}return null},N=function(e,r,n){if(r)return!t.some(function(t){var i=document.createEvent("CustomEvent");return i.initCustomEvent(e,!0,r,n||{}),!t.dispatchEvent(i)},this);t.forEach(function(t){var i=document.createEvent("CustomEvent");i.initCustomEvent(e,!0,r,n||{}),t.dispatchEvent(i)},this)};!function(){var e=t[0];if(e.getContext)u=Math.ceil(e.width/p),c=Math.ceil(e.height/p);else{var r=e.getBoundingClientRect();u=Math.ceil(r.width/p),c=Math.ceil(r.height/p)}if(N("wordcloudstart",!0)){f=n.origin?[n.origin[0]/p,n.origin[1]/p]:[u/2,c/2],d=Math.floor(Math.sqrt(u*u+c*c)),h=[];var i,a,o;if(!e.getContext||n.clearCanvas)for(t.forEach(function(t){if(t.getContext){var e=t.getContext("2d");e.fillStyle=n.backgroundColor,e.clearRect(0,0,u*(p+1),c*(p+1)),e.fillRect(0,0,u*(p+1),c*(p+1))}else t.textContent="",t.style.backgroundColor=n.backgroundColor,t.style.position="relative"}),i=u;i--;)for(h[i]=[],a=c;a--;)h[i][a]=!0;else{var s=document.createElement("canvas").getContext("2d");s.fillStyle=n.backgroundColor,s.fillRect(0,0,1,1);var l=s.getImageData(0,0,1,1).data,g=e.getContext("2d").getImageData(0,0,u*p,c*p).data;i=u;for(var m,x;i--;)for(h[i]=[],a=c;a--;){x=p;t:for(;x--;)for(m=p;m--;)for(o=4;o--;)if(g[4*((a*p+x)*u*p+(i*p+m))+o]!==l[o]){h[i][a]=!1;break t}!1!==h[i][a]&&(h[i][a]=!0)}g=s=l=void 0}if(n.hover||n.click){for(S=!0,i=u+1;i--;)M[i]=[];n.hover&&e.addEventListener("mousemove",k),n.click&&(e.addEventListener("click",C),e.addEventListener("touchstart",C),e.addEventListener("touchend",function(t){t.preventDefault()}),e.style.webkitTapHighlightColor="rgba(0, 0, 0, 0)"),e.addEventListener("wordcloudstart",function t(){e.removeEventListener("wordcloudstart",t),e.removeEventListener("mousemove",k),e.removeEventListener("click",C),b=void 0})}o=0;var y,w;0!==n.wait?(y=window.setTimeout,w=window.clearTimeout):(y=window.setImmediate,w=window.clearImmediate);var _=function(e,r){t.forEach(function(t){t.removeEventListener(e,r)},this)},T=function t(){_("wordcloudstart",t),w(P)};!function(e,r){t.forEach(function(t){t.addEventListener(e,r)},this)}("wordcloudstart",T);var P=y(function t(){if(o>=n.list.length)return w(P),N("wordcloudstop",!1),void _("wordcloudstart",T);v=(new Date).getTime();var e=z(n.list[o]),r=!N("wordclouddrawn",!0,{item:n.list[o],drawn:e});if(A()||r)return w(P),n.abort(),N("wordcloudabort",!1),N("wordcloudstop",!1),void _("wordcloudstart",T);o++,P=y(t,n.wait)},n.wait)}}()}};l.isSupported=a,l.minFontSize=o,n=[],void 0!==(i=function(){return l}.apply(e,n))&&(t.exports=i)}()}])}); diff --git a/pigx-visual/pigx-bi-platform/Dockerfile b/pigx-visual/pigx-seata-server/Dockerfile similarity index 58% rename from pigx-visual/pigx-bi-platform/Dockerfile rename to pigx-visual/pigx-seata-server/Dockerfile index f465add25..a1c9fc558 100644 --- a/pigx-visual/pigx-bi-platform/Dockerfile +++ b/pigx-visual/pigx-seata-server/Dockerfile @@ -7,12 +7,12 @@ ENV JAVA_OPTS="-Xms128m -Xmx256m -Djava.security.egd=file:/dev/./urandom" RUN ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone -RUN mkdir -p /pigx-bi-platform +RUN mkdir -p /pigx-seata-server -WORKDIR /pigx-bi-platform +WORKDIR /pigx-seata-server -EXPOSE 5006 +EXPOSE 8091 -ADD ./target/pigx-bi-platform.jar ./ +ADD ./target/pigx-seata-server.jar ./ -CMD sleep 120;java $JAVA_OPTS -jar pigx-bi-platform.jar +CMD sleep 180;java $JAVA_OPTS -jar pigx-seata-server.jar diff --git a/pigx-visual/pigx-seata-server/pom.xml b/pigx-visual/pigx-seata-server/pom.xml new file mode 100644 index 000000000..3de46eb4a --- /dev/null +++ b/pigx-visual/pigx-seata-server/pom.xml @@ -0,0 +1,137 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Copyright 1999-2019 Seata.io Group. + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <parent> + <groupId>com.pig4cloud</groupId> + <artifactId>pigx-visual</artifactId> + <version>4.4.0</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>pigx-seata-server</artifactId> + <packaging>jar</packaging> + <name>pigx-seata-server</name> + + <properties> + <seata.version>1.4.2</seata.version> + <logstash-logback-encoder.version>6.5</logstash-logback-encoder.version> + <kafka-appender.version>0.2.0-RC2</kafka-appender.version> + <jcommander.version>1.72</jcommander.version> + <guava.version>27.0.1-jre</guava.version> + </properties> + + <dependencies> + <dependency> + <groupId>io.seata</groupId> + <artifactId>seata-core</artifactId> + <version>${seata.version}</version> + </dependency> + <dependency> + <groupId>io.seata</groupId> + <artifactId>seata-config-all</artifactId> + <version>${seata.version}</version> + </dependency> + <dependency> + <groupId>io.seata</groupId> + <artifactId>seata-discovery-all</artifactId> + <version>${seata.version}</version> + </dependency> + <dependency> + <groupId>io.seata</groupId> + <artifactId>seata-serializer-all</artifactId> + <version>${seata.version}</version> + </dependency> + <dependency> + <groupId>io.seata</groupId> + <artifactId>seata-compressor-all</artifactId> + <version>${seata.version}</version> + </dependency> + + <dependency> + <groupId>io.seata</groupId> + <artifactId>seata-metrics-all</artifactId> + <version>${seata.version}</version> + </dependency> + + <!-- for database --> + <dependency> + <groupId>com.alibaba</groupId> + <artifactId>druid</artifactId> + </dependency> + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-dbcp2</artifactId> + </dependency> + <dependency> + <groupId>com.zaxxer</groupId> + <artifactId>HikariCP</artifactId> + </dependency> + <dependency> + <groupId>com.h2database</groupId> + <artifactId>h2</artifactId> + </dependency> + <dependency> + <groupId>mysql</groupId> + <artifactId>mysql-connector-java</artifactId> + </dependency> + <dependency> + <groupId>org.postgresql</groupId> + <artifactId>postgresql</artifactId> + </dependency> + <dependency> + <groupId>com.beust</groupId> + <artifactId>jcommander</artifactId> + <version>${jcommander.version}</version> + </dependency> + + <!-- only for event bus --> + <dependency> + <groupId>com.google.guava</groupId> + <artifactId>guava</artifactId> + <version>${guava.version}</version> + </dependency> + + <!-- logback --> + <dependency> + <groupId>ch.qos.logback</groupId> + <artifactId>logback-classic</artifactId> + </dependency> + + <!-- jedis --> + <dependency> + <groupId>redis.clients</groupId> + <artifactId>jedis</artifactId> + </dependency> + + <dependency> + <groupId>com.alibaba</groupId> + <artifactId>fastjson</artifactId> + </dependency> + + <dependency> + <groupId>net.logstash.logback</groupId> + <artifactId>logstash-logback-encoder</artifactId> + <version>${logstash-logback-encoder.version}</version> + </dependency> + <dependency> + <groupId>com.github.danielwegener</groupId> + <artifactId>logback-kafka-appender</artifactId> + <version>${kafka-appender.version}</version> + </dependency> + </dependencies> +</project> diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/AbstractTCInboundHandler.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/AbstractTCInboundHandler.java new file mode 100644 index 000000000..4ba44b6af --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/AbstractTCInboundHandler.java @@ -0,0 +1,344 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server; + +import io.seata.common.exception.StoreException; +import io.seata.core.exception.AbstractExceptionHandler; +import io.seata.core.exception.TransactionException; +import io.seata.core.exception.TransactionExceptionCode; +import io.seata.core.model.GlobalStatus; +import io.seata.core.protocol.transaction.AbstractGlobalEndRequest; +import io.seata.core.protocol.transaction.AbstractGlobalEndResponse; +import io.seata.core.protocol.transaction.BranchRegisterRequest; +import io.seata.core.protocol.transaction.BranchRegisterResponse; +import io.seata.core.protocol.transaction.BranchReportRequest; +import io.seata.core.protocol.transaction.BranchReportResponse; +import io.seata.core.protocol.transaction.GlobalBeginRequest; +import io.seata.core.protocol.transaction.GlobalBeginResponse; +import io.seata.core.protocol.transaction.GlobalCommitRequest; +import io.seata.core.protocol.transaction.GlobalCommitResponse; +import io.seata.core.protocol.transaction.GlobalLockQueryRequest; +import io.seata.core.protocol.transaction.GlobalLockQueryResponse; +import io.seata.core.protocol.transaction.GlobalReportRequest; +import io.seata.core.protocol.transaction.GlobalReportResponse; +import io.seata.core.protocol.transaction.GlobalRollbackRequest; +import io.seata.core.protocol.transaction.GlobalRollbackResponse; +import io.seata.core.protocol.transaction.GlobalStatusRequest; +import io.seata.core.protocol.transaction.GlobalStatusResponse; +import io.seata.core.protocol.transaction.TCInboundHandler; +import io.seata.core.rpc.RpcContext; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionHolder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * The type Abstract tc inbound handler. + * + * @author sharajava + */ +public abstract class AbstractTCInboundHandler extends AbstractExceptionHandler implements TCInboundHandler { + + private static final Logger LOGGER = LoggerFactory.getLogger(AbstractTCInboundHandler.class); + + @Override + public GlobalBeginResponse handle(GlobalBeginRequest request, final RpcContext rpcContext) { + GlobalBeginResponse response = new GlobalBeginResponse(); + exceptionHandleTemplate(new AbstractCallback<GlobalBeginRequest, GlobalBeginResponse>() { + @Override + public void execute(GlobalBeginRequest request, GlobalBeginResponse response) throws TransactionException { + try { + doGlobalBegin(request, response, rpcContext); + } + catch (StoreException e) { + throw new TransactionException(TransactionExceptionCode.FailedStore, String.format( + "begin global request failed. xid=%s, msg=%s", response.getXid(), e.getMessage()), e); + } + } + }, request, response); + return response; + } + + /** + * Do global begin. + * @param request the request + * @param response the response + * @param rpcContext the rpc context + * @throws TransactionException the transaction exception + */ + protected abstract void doGlobalBegin(GlobalBeginRequest request, GlobalBeginResponse response, + RpcContext rpcContext) throws TransactionException; + + @Override + public GlobalCommitResponse handle(GlobalCommitRequest request, final RpcContext rpcContext) { + GlobalCommitResponse response = new GlobalCommitResponse(); + response.setGlobalStatus(GlobalStatus.Committing); + exceptionHandleTemplate(new AbstractCallback<GlobalCommitRequest, GlobalCommitResponse>() { + @Override + public void execute(GlobalCommitRequest request, GlobalCommitResponse response) + throws TransactionException { + try { + doGlobalCommit(request, response, rpcContext); + } + catch (StoreException e) { + throw new TransactionException(TransactionExceptionCode.FailedStore, String.format( + "global commit request failed. xid=%s, msg=%s", request.getXid(), e.getMessage()), e); + } + } + + @Override + public void onTransactionException(GlobalCommitRequest request, GlobalCommitResponse response, + TransactionException tex) { + super.onTransactionException(request, response, tex); + checkTransactionStatus(request, response); + } + + @Override + public void onException(GlobalCommitRequest request, GlobalCommitResponse response, Exception rex) { + super.onException(request, response, rex); + checkTransactionStatus(request, response); + } + + }, request, response); + return response; + } + + /** + * Do global commit. + * @param request the request + * @param response the response + * @param rpcContext the rpc context + * @throws TransactionException the transaction exception + */ + protected abstract void doGlobalCommit(GlobalCommitRequest request, GlobalCommitResponse response, + RpcContext rpcContext) throws TransactionException; + + @Override + public GlobalRollbackResponse handle(GlobalRollbackRequest request, final RpcContext rpcContext) { + GlobalRollbackResponse response = new GlobalRollbackResponse(); + response.setGlobalStatus(GlobalStatus.Rollbacking); + exceptionHandleTemplate(new AbstractCallback<GlobalRollbackRequest, GlobalRollbackResponse>() { + @Override + public void execute(GlobalRollbackRequest request, GlobalRollbackResponse response) + throws TransactionException { + try { + doGlobalRollback(request, response, rpcContext); + } + catch (StoreException e) { + throw new TransactionException(TransactionExceptionCode.FailedStore, String.format( + "global rollback request failed. xid=%s, msg=%s", request.getXid(), e.getMessage()), e); + } + } + + @Override + public void onTransactionException(GlobalRollbackRequest request, GlobalRollbackResponse response, + TransactionException tex) { + super.onTransactionException(request, response, tex); + // may be appears StoreException outer layer method catch + checkTransactionStatus(request, response); + } + + @Override + public void onException(GlobalRollbackRequest request, GlobalRollbackResponse response, Exception rex) { + super.onException(request, response, rex); + // may be appears StoreException outer layer method catch + checkTransactionStatus(request, response); + } + }, request, response); + return response; + } + + /** + * Do global rollback. + * @param request the request + * @param response the response + * @param rpcContext the rpc context + * @throws TransactionException the transaction exception + */ + protected abstract void doGlobalRollback(GlobalRollbackRequest request, GlobalRollbackResponse response, + RpcContext rpcContext) throws TransactionException; + + @Override + public BranchRegisterResponse handle(BranchRegisterRequest request, final RpcContext rpcContext) { + BranchRegisterResponse response = new BranchRegisterResponse(); + exceptionHandleTemplate(new AbstractCallback<BranchRegisterRequest, BranchRegisterResponse>() { + @Override + public void execute(BranchRegisterRequest request, BranchRegisterResponse response) + throws TransactionException { + try { + doBranchRegister(request, response, rpcContext); + } + catch (StoreException e) { + throw new TransactionException(TransactionExceptionCode.FailedStore, String.format( + "branch register request failed. xid=%s, msg=%s", request.getXid(), e.getMessage()), e); + } + } + }, request, response); + return response; + } + + /** + * Do branch register. + * @param request the request + * @param response the response + * @param rpcContext the rpc context + * @throws TransactionException the transaction exception + */ + protected abstract void doBranchRegister(BranchRegisterRequest request, BranchRegisterResponse response, + RpcContext rpcContext) throws TransactionException; + + @Override + public BranchReportResponse handle(BranchReportRequest request, final RpcContext rpcContext) { + BranchReportResponse response = new BranchReportResponse(); + exceptionHandleTemplate(new AbstractCallback<BranchReportRequest, BranchReportResponse>() { + @Override + public void execute(BranchReportRequest request, BranchReportResponse response) + throws TransactionException { + try { + doBranchReport(request, response, rpcContext); + } + catch (StoreException e) { + throw new TransactionException(TransactionExceptionCode.FailedStore, + String.format("branch report request failed. xid=%s, branchId=%s, msg=%s", request.getXid(), + request.getBranchId(), e.getMessage()), + e); + } + } + }, request, response); + return response; + } + + /** + * Do branch report. + * @param request the request + * @param rpcContext the rpc context + * @throws TransactionException the transaction exception + */ + protected abstract void doBranchReport(BranchReportRequest request, BranchReportResponse response, + RpcContext rpcContext) throws TransactionException; + + @Override + public GlobalLockQueryResponse handle(GlobalLockQueryRequest request, final RpcContext rpcContext) { + GlobalLockQueryResponse response = new GlobalLockQueryResponse(); + exceptionHandleTemplate(new AbstractCallback<GlobalLockQueryRequest, GlobalLockQueryResponse>() { + @Override + public void execute(GlobalLockQueryRequest request, GlobalLockQueryResponse response) + throws TransactionException { + try { + doLockCheck(request, response, rpcContext); + } + catch (StoreException e) { + throw new TransactionException(TransactionExceptionCode.FailedStore, String.format( + "global lock query request failed. xid=%s, msg=%s", request.getXid(), e.getMessage()), e); + } + } + }, request, response); + return response; + } + + /** + * Do lock check. + * @param request the request + * @param response the response + * @param rpcContext the rpc context + * @throws TransactionException the transaction exception + */ + protected abstract void doLockCheck(GlobalLockQueryRequest request, GlobalLockQueryResponse response, + RpcContext rpcContext) throws TransactionException; + + @Override + public GlobalStatusResponse handle(GlobalStatusRequest request, final RpcContext rpcContext) { + GlobalStatusResponse response = new GlobalStatusResponse(); + response.setGlobalStatus(GlobalStatus.UnKnown); + exceptionHandleTemplate(new AbstractCallback<GlobalStatusRequest, GlobalStatusResponse>() { + @Override + public void execute(GlobalStatusRequest request, GlobalStatusResponse response) + throws TransactionException { + try { + doGlobalStatus(request, response, rpcContext); + } + catch (StoreException e) { + throw new TransactionException(TransactionExceptionCode.FailedStore, String.format( + "global status request failed. xid=%s, msg=%s", request.getXid(), e.getMessage()), e); + } + } + + @Override + public void onTransactionException(GlobalStatusRequest request, GlobalStatusResponse response, + TransactionException tex) { + super.onTransactionException(request, response, tex); + checkTransactionStatus(request, response); + } + + @Override + public void onException(GlobalStatusRequest request, GlobalStatusResponse response, Exception rex) { + super.onException(request, response, rex); + checkTransactionStatus(request, response); + } + }, request, response); + return response; + } + + /** + * Do global status. + * @param request the request + * @param response the response + * @param rpcContext the rpc context + * @throws TransactionException the transaction exception + */ + protected abstract void doGlobalStatus(GlobalStatusRequest request, GlobalStatusResponse response, + RpcContext rpcContext) throws TransactionException; + + @Override + public GlobalReportResponse handle(GlobalReportRequest request, final RpcContext rpcContext) { + GlobalReportResponse response = new GlobalReportResponse(); + response.setGlobalStatus(request.getGlobalStatus()); + exceptionHandleTemplate(new AbstractCallback<GlobalReportRequest, GlobalReportResponse>() { + @Override + public void execute(GlobalReportRequest request, GlobalReportResponse response) + throws TransactionException { + doGlobalReport(request, response, rpcContext); + } + }, request, response); + return response; + } + + /** + * Do global report. + * @param request the request + * @param response the response + * @param rpcContext the rpc context + * @throws TransactionException the transaction exception + */ + protected abstract void doGlobalReport(GlobalReportRequest request, GlobalReportResponse response, + RpcContext rpcContext) throws TransactionException; + + private void checkTransactionStatus(AbstractGlobalEndRequest request, AbstractGlobalEndResponse response) { + try { + GlobalSession globalSession = SessionHolder.findGlobalSession(request.getXid(), false); + if (globalSession != null) { + response.setGlobalStatus(globalSession.getStatus()); + } + else { + response.setGlobalStatus(GlobalStatus.Finished); + } + } + catch (Exception exx) { + LOGGER.error("check transaction status error,{}]", exx.getMessage()); + } + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/ParameterParser.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/ParameterParser.java new file mode 100644 index 000000000..e3a533e70 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/ParameterParser.java @@ -0,0 +1,164 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server; + +import com.beust.jcommander.JCommander; +import com.beust.jcommander.Parameter; +import com.beust.jcommander.ParameterException; +import io.seata.common.util.StringUtils; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.server.env.ContainerHelper; + +import static io.seata.common.DefaultValues.SERVER_DEFAULT_PORT; +import static io.seata.common.DefaultValues.SERVER_DEFAULT_STORE_MODE; +import static io.seata.config.ConfigurationFactory.ENV_PROPERTY_KEY; + +/** + * The type Parameter parser. + * + * @author xingfudeshi @gmail.com + */ +public class ParameterParser { + + private static final String PROGRAM_NAME = "sh seata-server.sh(for linux and mac) or cmd seata-server.bat(for windows)"; + + @Parameter(names = "--help", help = true) + private boolean help; + + @Parameter(names = { "--host", "-h" }, description = "The ip to register to registry center.", order = 1) + private String host; + + @Parameter(names = { "--port", "-p" }, description = "The port to listen.", order = 2) + private int port = SERVER_DEFAULT_PORT; + + @Parameter(names = { "--storeMode", "-m" }, description = "log store mode : file, db", order = 3) + private String storeMode; + + @Parameter(names = { "--serverNode", "-n" }, + description = "server node id, such as 1, 2, 3.it will be generated according to the snowflake by default", + order = 4) + private Long serverNode; + + @Parameter(names = { "--seataEnv", "-e" }, description = "The name used for multi-configuration isolation.", + order = 5) + private String seataEnv; + + /** + * Instantiates a new Parameter parser. + * @param args the args + */ + public ParameterParser(String[] args) { + this.init(args); + } + + private void init(String[] args) { + try { + if (ContainerHelper.isRunningInContainer()) { + this.seataEnv = ContainerHelper.getEnv(); + this.host = ContainerHelper.getHost(); + this.port = ContainerHelper.getPort(); + this.serverNode = ContainerHelper.getServerNode(); + this.storeMode = ContainerHelper.getStoreMode(); + } + else { + JCommander jCommander = JCommander.newBuilder().addObject(this).build(); + jCommander.parse(args); + if (help) { + jCommander.setProgramName(PROGRAM_NAME); + jCommander.usage(); + System.exit(0); + } + } + if (StringUtils.isNotBlank(seataEnv)) { + System.setProperty(ENV_PROPERTY_KEY, seataEnv); + } + if (StringUtils.isBlank(storeMode)) { + storeMode = ConfigurationFactory.getInstance().getConfig(ConfigurationKeys.STORE_MODE, + SERVER_DEFAULT_STORE_MODE); + } + } + catch (ParameterException e) { + printError(e); + } + + } + + private void printError(ParameterException e) { + System.err.println("Option error " + e.getMessage()); + e.getJCommander().setProgramName(PROGRAM_NAME); + e.usage(); + System.exit(0); + } + + /** + * Gets host. + * @return the host + */ + public String getHost() { + return host; + } + + /** + * Gets port. + * @return the port + */ + public int getPort() { + return port; + } + + /** + * Gets store mode. + * @return the store mode + */ + public String getStoreMode() { + return storeMode; + } + + /** + * Is help boolean. + * @return the boolean + */ + public boolean isHelp() { + return help; + } + + /** + * Gets server node. + * @return the server node + */ + public Long getServerNode() { + return serverNode; + } + + /** + * Gets seata env + * @return the name used for multi-configuration isolation. + */ + public String getSeataEnv() { + return seataEnv; + } + + /** + * Clean up. + */ + public void cleanUp() { + if (null != System.getProperty(ENV_PROPERTY_KEY)) { + System.clearProperty(ENV_PROPERTY_KEY); + } + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/PigxSeataServer.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/PigxSeataServer.java new file mode 100644 index 000000000..665175b6f --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/PigxSeataServer.java @@ -0,0 +1,111 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server; + +import io.seata.common.XID; +import io.seata.common.thread.NamedThreadFactory; +import io.seata.common.util.NetUtil; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.core.rpc.ShutdownHook; +import io.seata.core.rpc.netty.NettyRemotingServer; +import io.seata.core.rpc.netty.NettyServerConfig; +import io.seata.server.coordinator.DefaultCoordinator; +import io.seata.server.env.ContainerHelper; +import io.seata.server.env.PortHelper; +import io.seata.server.metrics.MetricsManager; +import io.seata.server.session.SessionHolder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.IOException; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; + +/** + * The type Server. + * + * @author slievrly + */ +public class PigxSeataServer { + + /** + * The entry point of application. + * @param args the input arguments + * @throws IOException the io exception + */ + public static void main(String[] args) throws IOException { + // get port first, use to logback.xml + int port = PortHelper.getPort(args); + System.setProperty(ConfigurationKeys.SERVER_PORT, Integer.toString(port)); + + // create logger + final Logger logger = LoggerFactory.getLogger(PigxSeataServer.class); + if (ContainerHelper.isRunningInContainer()) { + logger.info("The server is running in container."); + } + + // initialize the parameter parser + // Note that the parameter parser should always be the first line to execute. + // Because, here we need to parse the parameters needed for startup. + ParameterParser parameterParser = new ParameterParser(args); + + // initialize the metrics + MetricsManager.get().init(); + + System.setProperty(ConfigurationKeys.STORE_MODE, parameterParser.getStoreMode()); + + ThreadPoolExecutor workingThreads = new ThreadPoolExecutor(NettyServerConfig.getMinServerPoolSize(), + NettyServerConfig.getMaxServerPoolSize(), NettyServerConfig.getKeepAliveTime(), TimeUnit.SECONDS, + new LinkedBlockingQueue<>(NettyServerConfig.getMaxTaskQueueSize()), + new NamedThreadFactory("ServerHandlerThread", NettyServerConfig.getMaxServerPoolSize()), + new ThreadPoolExecutor.CallerRunsPolicy()); + + NettyRemotingServer nettyRemotingServer = new NettyRemotingServer(workingThreads); + // server port + nettyRemotingServer.setListenPort(parameterParser.getPort()); + UUIDGenerator.init(parameterParser.getServerNode()); + // log store mode : file, db, redis + SessionHolder.init(parameterParser.getStoreMode()); + + DefaultCoordinator coordinator = new DefaultCoordinator(nettyRemotingServer); + coordinator.init(); + nettyRemotingServer.setHandler(coordinator); + // register ShutdownHook + ShutdownHook.getInstance().addDisposable(coordinator); + ShutdownHook.getInstance().addDisposable(nettyRemotingServer); + + // 127.0.0.1 and 0.0.0.0 are not valid here. + if (NetUtil.isValidIp(parameterParser.getHost(), false)) { + XID.setIpAddress(parameterParser.getHost()); + } + else { + XID.setIpAddress(NetUtil.getLocalIp()); + } + XID.setPort(nettyRemotingServer.getListenPort()); + + try { + nettyRemotingServer.init(); + } + catch (Throwable e) { + logger.error("nettyServer init error:{}", e.getMessage(), e); + System.exit(-1); + } + + System.exit(0); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/UUIDGenerator.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/UUIDGenerator.java new file mode 100644 index 000000000..dee5a338b --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/UUIDGenerator.java @@ -0,0 +1,52 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server; + +import io.seata.common.util.IdWorker; + +/** + * The type Uuid generator. + * + * @author sharajava + */ +public class UUIDGenerator { + + private static volatile IdWorker idWorker; + + /** + * generate UUID using snowflake algorithm + * @return UUID + */ + public static long generateUUID() { + if (idWorker == null) { + synchronized (UUIDGenerator.class) { + if (idWorker == null) { + init(null); + } + } + } + return idWorker.nextId(); + } + + /** + * init IdWorker + * @param serverNode the server node id, consider as machine id in snowflake + */ + public static void init(Long serverNode) { + idWorker = new IdWorker(serverNode); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/auth/AbstractCheckAuthHandler.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/auth/AbstractCheckAuthHandler.java new file mode 100644 index 000000000..bf0d531b3 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/auth/AbstractCheckAuthHandler.java @@ -0,0 +1,55 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.seata.server.auth; + +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.core.protocol.RegisterRMRequest; +import io.seata.core.protocol.RegisterTMRequest; +import io.seata.core.rpc.RegisterCheckAuthHandler; + +import static io.seata.common.DefaultValues.DEFAULT_SERVER_ENABLE_CHECK_AUTH; + +/** + * @author slievrly + */ +public abstract class AbstractCheckAuthHandler implements RegisterCheckAuthHandler { + + private static final Boolean ENABLE_CHECK_AUTH = ConfigurationFactory.getInstance() + .getBoolean(ConfigurationKeys.SERVER_ENABLE_CHECK_AUTH, DEFAULT_SERVER_ENABLE_CHECK_AUTH); + + @Override + public boolean regTransactionManagerCheckAuth(RegisterTMRequest request) { + if (!ENABLE_CHECK_AUTH) { + return true; + } + return doRegTransactionManagerCheck(request); + } + + public abstract boolean doRegTransactionManagerCheck(RegisterTMRequest request); + + @Override + public boolean regResourceManagerCheckAuth(RegisterRMRequest request) { + if (!ENABLE_CHECK_AUTH) { + return true; + } + return doRegResourceManagerCheck(request); + } + + public abstract boolean doRegResourceManagerCheck(RegisterRMRequest request); + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/auth/DefaultCheckAuthHandler.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/auth/DefaultCheckAuthHandler.java new file mode 100644 index 000000000..e98da6338 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/auth/DefaultCheckAuthHandler.java @@ -0,0 +1,39 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.seata.server.auth; + +import io.seata.common.loader.LoadLevel; +import io.seata.core.protocol.RegisterRMRequest; +import io.seata.core.protocol.RegisterTMRequest; + +/** + * @author slievrly + */ +@LoadLevel(name = "defaultCheckAuthHandler", order = 100) +public class DefaultCheckAuthHandler extends AbstractCheckAuthHandler { + + @Override + public boolean doRegTransactionManagerCheck(RegisterTMRequest request) { + return true; + } + + @Override + public boolean doRegResourceManagerCheck(RegisterRMRequest request) { + return true; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/AbstractCore.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/AbstractCore.java new file mode 100644 index 000000000..59247fc4b --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/AbstractCore.java @@ -0,0 +1,255 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.coordinator; + +import java.io.IOException; +import java.util.concurrent.TimeoutException; + +import io.seata.core.context.RootContext; +import io.seata.core.exception.BranchTransactionException; +import io.seata.core.exception.GlobalTransactionException; +import io.seata.core.exception.TransactionException; +import io.seata.core.exception.TransactionExceptionCode; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.BranchType; +import io.seata.core.model.GlobalStatus; +import io.seata.core.protocol.transaction.BranchCommitRequest; +import io.seata.core.protocol.transaction.BranchCommitResponse; +import io.seata.core.protocol.transaction.BranchRollbackRequest; +import io.seata.core.protocol.transaction.BranchRollbackResponse; +import io.seata.core.rpc.RemotingServer; +import io.seata.server.lock.LockManager; +import io.seata.server.lock.LockerManagerFactory; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionHelper; +import io.seata.server.session.SessionHolder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.slf4j.MDC; + +import static io.seata.core.exception.TransactionExceptionCode.BranchTransactionNotExist; +import static io.seata.core.exception.TransactionExceptionCode.FailedToAddBranch; +import static io.seata.core.exception.TransactionExceptionCode.GlobalTransactionNotActive; +import static io.seata.core.exception.TransactionExceptionCode.GlobalTransactionStatusInvalid; +import static io.seata.core.exception.TransactionExceptionCode.FailedToSendBranchCommitRequest; +import static io.seata.core.exception.TransactionExceptionCode.FailedToSendBranchRollbackRequest; + +/** + * The type abstract core. + * + * @author ph3636 + */ +public abstract class AbstractCore implements Core { + + protected static final Logger LOGGER = LoggerFactory.getLogger(AbstractCore.class); + + protected LockManager lockManager = LockerManagerFactory.getLockManager(); + + protected RemotingServer remotingServer; + + public AbstractCore(RemotingServer remotingServer) { + if (remotingServer == null) { + throw new IllegalArgumentException("remotingServer must be not null"); + } + this.remotingServer = remotingServer; + } + + public abstract BranchType getHandleBranchType(); + + @Override + public Long branchRegister(BranchType branchType, String resourceId, String clientId, String xid, + String applicationData, String lockKeys) throws TransactionException { + GlobalSession globalSession = assertGlobalSessionNotNull(xid, false); + return SessionHolder.lockAndExecute(globalSession, () -> { + globalSessionStatusCheck(globalSession); + globalSession.addSessionLifecycleListener(SessionHolder.getRootSessionManager()); + BranchSession branchSession = SessionHelper.newBranchByGlobal(globalSession, branchType, resourceId, + applicationData, lockKeys, clientId); + MDC.put(RootContext.MDC_KEY_BRANCH_ID, String.valueOf(branchSession.getBranchId())); + branchSessionLock(globalSession, branchSession); + try { + globalSession.addBranch(branchSession); + } + catch (RuntimeException ex) { + branchSessionUnlock(branchSession); + throw new BranchTransactionException(FailedToAddBranch, + String.format("Failed to store branch xid = %s branchId = %s", globalSession.getXid(), + branchSession.getBranchId()), + ex); + } + if (LOGGER.isInfoEnabled()) { + LOGGER.info("Register branch successfully, xid = {}, branchId = {}, resourceId = {} ,lockKeys = {}", + globalSession.getXid(), branchSession.getBranchId(), resourceId, lockKeys); + } + return branchSession.getBranchId(); + }); + } + + protected void globalSessionStatusCheck(GlobalSession globalSession) throws GlobalTransactionException { + if (!globalSession.isActive()) { + throw new GlobalTransactionException(GlobalTransactionNotActive, String.format( + "Could not register branch into global session xid = %s status = %s, cause by globalSession not active", + globalSession.getXid(), globalSession.getStatus())); + } + if (globalSession.getStatus() != GlobalStatus.Begin) { + throw new GlobalTransactionException(GlobalTransactionStatusInvalid, + String.format( + "Could not register branch into global session xid = %s status = %s while expecting %s", + globalSession.getXid(), globalSession.getStatus(), GlobalStatus.Begin)); + } + } + + protected void branchSessionLock(GlobalSession globalSession, BranchSession branchSession) + throws TransactionException { + + } + + protected void branchSessionUnlock(BranchSession branchSession) throws TransactionException { + + } + + private GlobalSession assertGlobalSessionNotNull(String xid, boolean withBranchSessions) + throws TransactionException { + GlobalSession globalSession = SessionHolder.findGlobalSession(xid, withBranchSessions); + if (globalSession == null) { + throw new GlobalTransactionException(TransactionExceptionCode.GlobalTransactionNotExist, + String.format("Could not found global transaction xid = %s, may be has finished.", xid)); + } + return globalSession; + } + + @Override + public void branchReport(BranchType branchType, String xid, long branchId, BranchStatus status, + String applicationData) throws TransactionException { + GlobalSession globalSession = assertGlobalSessionNotNull(xid, true); + BranchSession branchSession = globalSession.getBranch(branchId); + if (branchSession == null) { + throw new BranchTransactionException(BranchTransactionNotExist, + String.format("Could not found branch session xid = %s branchId = %s", xid, branchId)); + } + globalSession.addSessionLifecycleListener(SessionHolder.getRootSessionManager()); + globalSession.changeBranchStatus(branchSession, status); + + if (LOGGER.isInfoEnabled()) { + LOGGER.info("Report branch status successfully, xid = {}, branchId = {}", globalSession.getXid(), + branchSession.getBranchId()); + } + } + + @Override + public boolean lockQuery(BranchType branchType, String resourceId, String xid, String lockKeys) + throws TransactionException { + return true; + } + + @Override + public BranchStatus branchCommit(GlobalSession globalSession, BranchSession branchSession) + throws TransactionException { + try { + BranchCommitRequest request = new BranchCommitRequest(); + request.setXid(branchSession.getXid()); + request.setBranchId(branchSession.getBranchId()); + request.setResourceId(branchSession.getResourceId()); + request.setApplicationData(branchSession.getApplicationData()); + request.setBranchType(branchSession.getBranchType()); + return branchCommitSend(request, globalSession, branchSession); + } + catch (IOException | TimeoutException e) { + throw new BranchTransactionException(FailedToSendBranchCommitRequest, + String.format("Send branch commit failed, xid = %s branchId = %s", branchSession.getXid(), + branchSession.getBranchId()), + e); + } + } + + protected BranchStatus branchCommitSend(BranchCommitRequest request, GlobalSession globalSession, + BranchSession branchSession) throws IOException, TimeoutException { + BranchCommitResponse response = (BranchCommitResponse) remotingServer + .sendSyncRequest(branchSession.getResourceId(), branchSession.getClientId(), request); + return response.getBranchStatus(); + } + + @Override + public BranchStatus branchRollback(GlobalSession globalSession, BranchSession branchSession) + throws TransactionException { + try { + BranchRollbackRequest request = new BranchRollbackRequest(); + request.setXid(branchSession.getXid()); + request.setBranchId(branchSession.getBranchId()); + request.setResourceId(branchSession.getResourceId()); + request.setApplicationData(branchSession.getApplicationData()); + request.setBranchType(branchSession.getBranchType()); + return branchRollbackSend(request, globalSession, branchSession); + } + catch (IOException | TimeoutException e) { + throw new BranchTransactionException(FailedToSendBranchRollbackRequest, + String.format("Send branch rollback failed, xid = %s branchId = %s", branchSession.getXid(), + branchSession.getBranchId()), + e); + } + } + + protected BranchStatus branchRollbackSend(BranchRollbackRequest request, GlobalSession globalSession, + BranchSession branchSession) throws IOException, TimeoutException { + BranchRollbackResponse response = (BranchRollbackResponse) remotingServer + .sendSyncRequest(branchSession.getResourceId(), branchSession.getClientId(), request); + return response.getBranchStatus(); + } + + @Override + public String begin(String applicationId, String transactionServiceGroup, String name, int timeout) + throws TransactionException { + return null; + } + + @Override + public GlobalStatus commit(String xid) throws TransactionException { + return null; + } + + @Override + public boolean doGlobalCommit(GlobalSession globalSession, boolean retrying) throws TransactionException { + return true; + } + + @Override + public GlobalStatus globalReport(String xid, GlobalStatus globalStatus) throws TransactionException { + return null; + } + + @Override + public GlobalStatus rollback(String xid) throws TransactionException { + return null; + } + + @Override + public boolean doGlobalRollback(GlobalSession globalSession, boolean retrying) throws TransactionException { + return true; + } + + @Override + public GlobalStatus getStatus(String xid) throws TransactionException { + return null; + } + + @Override + public void doGlobalReport(GlobalSession globalSession, String xid, GlobalStatus globalStatus) + throws TransactionException { + + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/Core.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/Core.java new file mode 100644 index 000000000..8def2e56f --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/Core.java @@ -0,0 +1,56 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.coordinator; + +import io.seata.core.exception.TransactionException; +import io.seata.core.model.GlobalStatus; +import io.seata.server.session.GlobalSession; + +/** + * The interface Core. + * + * @author sharajava + */ +public interface Core extends TransactionCoordinatorInbound, TransactionCoordinatorOutbound { + + /** + * Do global commit. + * @param globalSession the global session + * @param retrying the retrying + * @return is global commit. + * @throws TransactionException the transaction exception + */ + boolean doGlobalCommit(GlobalSession globalSession, boolean retrying) throws TransactionException; + + /** + * Do global rollback. + * @param globalSession the global session + * @param retrying the retrying + * @return is global rollback. + * @throws TransactionException the transaction exception + */ + boolean doGlobalRollback(GlobalSession globalSession, boolean retrying) throws TransactionException; + + /** + * Do global report. + * @param globalSession the global session + * @param xid Transaction id. + * @param param the global status + * @throws TransactionException the transaction exception + */ + void doGlobalReport(GlobalSession globalSession, String xid, GlobalStatus param) throws TransactionException; + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/DefaultCoordinator.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/DefaultCoordinator.java new file mode 100644 index 000000000..e3930085c --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/DefaultCoordinator.java @@ -0,0 +1,527 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.coordinator; + +import java.time.Duration; +import java.util.Collection; +import java.util.Map; +import java.util.concurrent.ScheduledThreadPoolExecutor; +import java.util.concurrent.TimeUnit; +import io.netty.channel.Channel; +import io.seata.common.thread.NamedThreadFactory; +import io.seata.common.util.CollectionUtils; +import io.seata.common.util.DurationUtil; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.core.context.RootContext; +import io.seata.core.event.EventBus; +import io.seata.core.event.GlobalTransactionEvent; +import io.seata.core.exception.TransactionException; +import io.seata.core.model.GlobalStatus; +import io.seata.core.protocol.AbstractMessage; +import io.seata.core.protocol.AbstractResultMessage; +import io.seata.core.protocol.transaction.AbstractTransactionRequestToTC; +import io.seata.core.protocol.transaction.AbstractTransactionResponse; +import io.seata.core.protocol.transaction.BranchRegisterRequest; +import io.seata.core.protocol.transaction.BranchRegisterResponse; +import io.seata.core.protocol.transaction.BranchReportRequest; +import io.seata.core.protocol.transaction.BranchReportResponse; +import io.seata.core.protocol.transaction.GlobalBeginRequest; +import io.seata.core.protocol.transaction.GlobalBeginResponse; +import io.seata.core.protocol.transaction.GlobalCommitRequest; +import io.seata.core.protocol.transaction.GlobalCommitResponse; +import io.seata.core.protocol.transaction.GlobalLockQueryRequest; +import io.seata.core.protocol.transaction.GlobalLockQueryResponse; +import io.seata.core.protocol.transaction.GlobalReportRequest; +import io.seata.core.protocol.transaction.GlobalReportResponse; +import io.seata.core.protocol.transaction.GlobalRollbackRequest; +import io.seata.core.protocol.transaction.GlobalRollbackResponse; +import io.seata.core.protocol.transaction.GlobalStatusRequest; +import io.seata.core.protocol.transaction.GlobalStatusResponse; +import io.seata.core.protocol.transaction.UndoLogDeleteRequest; +import io.seata.core.rpc.Disposable; +import io.seata.core.rpc.RemotingServer; +import io.seata.core.rpc.RpcContext; +import io.seata.core.rpc.TransactionMessageHandler; +import io.seata.core.rpc.netty.ChannelManager; +import io.seata.core.rpc.netty.NettyRemotingServer; +import io.seata.server.AbstractTCInboundHandler; +import io.seata.server.event.EventBusManager; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionHelper; +import io.seata.server.session.SessionHolder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.slf4j.MDC; + +/** + * The type Default coordinator. + */ +public class DefaultCoordinator extends AbstractTCInboundHandler implements TransactionMessageHandler, Disposable { + + private static final Logger LOGGER = LoggerFactory.getLogger(DefaultCoordinator.class); + + private static final int TIMED_TASK_SHUTDOWN_MAX_WAIT_MILLS = 5000; + + /** + * The constant COMMITTING_RETRY_PERIOD. + */ + protected static final long COMMITTING_RETRY_PERIOD = CONFIG.getLong(ConfigurationKeys.COMMITING_RETRY_PERIOD, + 1000L); + + /** + * The constant ASYNC_COMMITTING_RETRY_PERIOD. + */ + protected static final long ASYNC_COMMITTING_RETRY_PERIOD = CONFIG + .getLong(ConfigurationKeys.ASYN_COMMITING_RETRY_PERIOD, 1000L); + + /** + * The constant ROLLBACKING_RETRY_PERIOD. + */ + protected static final long ROLLBACKING_RETRY_PERIOD = CONFIG.getLong(ConfigurationKeys.ROLLBACKING_RETRY_PERIOD, + 1000L); + + /** + * The constant TIMEOUT_RETRY_PERIOD. + */ + protected static final long TIMEOUT_RETRY_PERIOD = CONFIG.getLong(ConfigurationKeys.TIMEOUT_RETRY_PERIOD, 1000L); + + /** + * The Transaction undo log delete period. + */ + protected static final long UNDO_LOG_DELETE_PERIOD = CONFIG + .getLong(ConfigurationKeys.TRANSACTION_UNDO_LOG_DELETE_PERIOD, 24 * 60 * 60 * 1000); + + /** + * The Transaction undo log delay delete period + */ + protected static final long UNDO_LOG_DELAY_DELETE_PERIOD = 3 * 60 * 1000; + + private static final int ALWAYS_RETRY_BOUNDARY = 0; + + private static final Duration MAX_COMMIT_RETRY_TIMEOUT = ConfigurationFactory.getInstance() + .getDuration(ConfigurationKeys.MAX_COMMIT_RETRY_TIMEOUT, DurationUtil.DEFAULT_DURATION, 100); + + private static final Duration MAX_ROLLBACK_RETRY_TIMEOUT = ConfigurationFactory.getInstance() + .getDuration(ConfigurationKeys.MAX_ROLLBACK_RETRY_TIMEOUT, DurationUtil.DEFAULT_DURATION, 100); + + private static final boolean ROLLBACK_RETRY_TIMEOUT_UNLOCK_ENABLE = ConfigurationFactory.getInstance() + .getBoolean(ConfigurationKeys.ROLLBACK_RETRY_TIMEOUT_UNLOCK_ENABLE, false); + + private ScheduledThreadPoolExecutor retryRollbacking = new ScheduledThreadPoolExecutor(1, + new NamedThreadFactory("RetryRollbacking", 1)); + + private ScheduledThreadPoolExecutor retryCommitting = new ScheduledThreadPoolExecutor(1, + new NamedThreadFactory("RetryCommitting", 1)); + + private ScheduledThreadPoolExecutor asyncCommitting = new ScheduledThreadPoolExecutor(1, + new NamedThreadFactory("AsyncCommitting", 1)); + + private ScheduledThreadPoolExecutor timeoutCheck = new ScheduledThreadPoolExecutor(1, + new NamedThreadFactory("TxTimeoutCheck", 1)); + + private ScheduledThreadPoolExecutor undoLogDelete = new ScheduledThreadPoolExecutor(1, + new NamedThreadFactory("UndoLogDelete", 1)); + + private RemotingServer remotingServer; + + private DefaultCore core; + + private EventBus eventBus = EventBusManager.get(); + + /** + * Instantiates a new Default coordinator. + * @param remotingServer the remoting server + */ + public DefaultCoordinator(RemotingServer remotingServer) { + this.remotingServer = remotingServer; + this.core = new DefaultCore(remotingServer); + } + + @Override + protected void doGlobalBegin(GlobalBeginRequest request, GlobalBeginResponse response, RpcContext rpcContext) + throws TransactionException { + response.setXid(core.begin(rpcContext.getApplicationId(), rpcContext.getTransactionServiceGroup(), + request.getTransactionName(), request.getTimeout())); + if (LOGGER.isInfoEnabled()) { + LOGGER.info( + "Begin new global transaction applicationId: {},transactionServiceGroup: {}, transactionName: {},timeout:{},xid:{}", + rpcContext.getApplicationId(), rpcContext.getTransactionServiceGroup(), + request.getTransactionName(), request.getTimeout(), response.getXid()); + } + } + + @Override + protected void doGlobalCommit(GlobalCommitRequest request, GlobalCommitResponse response, RpcContext rpcContext) + throws TransactionException { + MDC.put(RootContext.MDC_KEY_XID, request.getXid()); + response.setGlobalStatus(core.commit(request.getXid())); + } + + @Override + protected void doGlobalRollback(GlobalRollbackRequest request, GlobalRollbackResponse response, + RpcContext rpcContext) throws TransactionException { + MDC.put(RootContext.MDC_KEY_XID, request.getXid()); + response.setGlobalStatus(core.rollback(request.getXid())); + } + + @Override + protected void doGlobalStatus(GlobalStatusRequest request, GlobalStatusResponse response, RpcContext rpcContext) + throws TransactionException { + MDC.put(RootContext.MDC_KEY_XID, request.getXid()); + response.setGlobalStatus(core.getStatus(request.getXid())); + } + + @Override + protected void doGlobalReport(GlobalReportRequest request, GlobalReportResponse response, RpcContext rpcContext) + throws TransactionException { + MDC.put(RootContext.MDC_KEY_XID, request.getXid()); + response.setGlobalStatus(core.globalReport(request.getXid(), request.getGlobalStatus())); + } + + @Override + protected void doBranchRegister(BranchRegisterRequest request, BranchRegisterResponse response, + RpcContext rpcContext) throws TransactionException { + MDC.put(RootContext.MDC_KEY_XID, request.getXid()); + response.setBranchId(core.branchRegister(request.getBranchType(), request.getResourceId(), + rpcContext.getClientId(), request.getXid(), request.getApplicationData(), request.getLockKey())); + } + + @Override + protected void doBranchReport(BranchReportRequest request, BranchReportResponse response, RpcContext rpcContext) + throws TransactionException { + MDC.put(RootContext.MDC_KEY_XID, request.getXid()); + MDC.put(RootContext.MDC_KEY_BRANCH_ID, String.valueOf(request.getBranchId())); + core.branchReport(request.getBranchType(), request.getXid(), request.getBranchId(), request.getStatus(), + request.getApplicationData()); + } + + @Override + protected void doLockCheck(GlobalLockQueryRequest request, GlobalLockQueryResponse response, RpcContext rpcContext) + throws TransactionException { + MDC.put(RootContext.MDC_KEY_XID, request.getXid()); + response.setLockable(core.lockQuery(request.getBranchType(), request.getResourceId(), request.getXid(), + request.getLockKey())); + } + + /** + * Timeout check. + * @throws TransactionException the transaction exception + */ + protected void timeoutCheck() throws TransactionException { + Collection<GlobalSession> allSessions = SessionHolder.getRootSessionManager().allSessions(); + if (CollectionUtils.isEmpty(allSessions)) { + return; + } + if (allSessions.size() > 0 && LOGGER.isDebugEnabled()) { + LOGGER.debug("Global transaction timeout check begin, size: {}", allSessions.size()); + } + SessionHelper.forEach(allSessions, globalSession -> { + if (LOGGER.isDebugEnabled()) { + LOGGER.debug(globalSession.getXid() + " " + globalSession.getStatus() + " " + + globalSession.getBeginTime() + " " + globalSession.getTimeout()); + } + boolean shouldTimeout = SessionHolder.lockAndExecute(globalSession, () -> { + if (globalSession.getStatus() != GlobalStatus.Begin || !globalSession.isTimeout()) { + return false; + } + globalSession.addSessionLifecycleListener(SessionHolder.getRootSessionManager()); + globalSession.close(); + globalSession.changeStatus(GlobalStatus.TimeoutRollbacking); + + // transaction timeout and start rollbacking event + eventBus.post(new GlobalTransactionEvent(globalSession.getTransactionId(), + GlobalTransactionEvent.ROLE_TC, globalSession.getTransactionName(), + globalSession.getApplicationId(), globalSession.getTransactionServiceGroup(), + globalSession.getBeginTime(), null, globalSession.getStatus())); + + return true; + }); + if (!shouldTimeout) { + // The function of this 'return' is 'continue'. + return; + } + LOGGER.info("Global transaction[{}] is timeout and will be rollback.", globalSession.getXid()); + + globalSession.addSessionLifecycleListener(SessionHolder.getRetryRollbackingSessionManager()); + SessionHolder.getRetryRollbackingSessionManager().addGlobalSession(globalSession); + }); + if (allSessions.size() > 0 && LOGGER.isDebugEnabled()) { + LOGGER.debug("Global transaction timeout check end. "); + } + + } + + /** + * Handle retry rollbacking. + */ + protected void handleRetryRollbacking() { + Collection<GlobalSession> rollbackingSessions = SessionHolder.getRetryRollbackingSessionManager().allSessions(); + if (CollectionUtils.isEmpty(rollbackingSessions)) { + return; + } + long now = System.currentTimeMillis(); + SessionHelper.forEach(rollbackingSessions, rollbackingSession -> { + try { + // prevent repeated rollback + if (rollbackingSession.getStatus().equals(GlobalStatus.Rollbacking) + && !rollbackingSession.isDeadSession()) { + // The function of this 'return' is 'continue'. + return; + } + if (isRetryTimeout(now, MAX_ROLLBACK_RETRY_TIMEOUT.toMillis(), rollbackingSession.getBeginTime())) { + if (ROLLBACK_RETRY_TIMEOUT_UNLOCK_ENABLE) { + rollbackingSession.clean(); + } + /** + * Prevent thread safety issues + */ + SessionHolder.getRetryRollbackingSessionManager().removeGlobalSession(rollbackingSession); + LOGGER.info("Global transaction rollback retry timeout and has removed [{}]", + rollbackingSession.getXid()); + // The function of this 'return' is 'continue'. + return; + } + rollbackingSession.addSessionLifecycleListener(SessionHolder.getRootSessionManager()); + core.doGlobalRollback(rollbackingSession, true); + } + catch (TransactionException ex) { + LOGGER.info("Failed to retry rollbacking [{}] {} {}", rollbackingSession.getXid(), ex.getCode(), + ex.getMessage()); + } + }); + } + + /** + * Handle retry committing. + */ + protected void handleRetryCommitting() { + Collection<GlobalSession> committingSessions = SessionHolder.getRetryCommittingSessionManager().allSessions(); + if (CollectionUtils.isEmpty(committingSessions)) { + return; + } + long now = System.currentTimeMillis(); + SessionHelper.forEach(committingSessions, committingSession -> { + try { + // prevent repeated commit + if (committingSession.getStatus().equals(GlobalStatus.Committing) + && !committingSession.isDeadSession()) { + // The function of this 'return' is 'continue'. + return; + } + if (isRetryTimeout(now, MAX_COMMIT_RETRY_TIMEOUT.toMillis(), committingSession.getBeginTime())) { + /** + * Prevent thread safety issues + */ + SessionHolder.getRetryCommittingSessionManager().removeGlobalSession(committingSession); + LOGGER.error("Global transaction commit retry timeout and has removed [{}]", + committingSession.getXid()); + // The function of this 'return' is 'continue'. + return; + } + committingSession.addSessionLifecycleListener(SessionHolder.getRootSessionManager()); + core.doGlobalCommit(committingSession, true); + } + catch (TransactionException ex) { + LOGGER.info("Failed to retry committing [{}] {} {}", committingSession.getXid(), ex.getCode(), + ex.getMessage()); + } + }); + } + + private boolean isRetryTimeout(long now, long timeout, long beginTime) { + return timeout >= ALWAYS_RETRY_BOUNDARY && now - beginTime > timeout; + } + + /** + * Handle async committing. + */ + protected void handleAsyncCommitting() { + Collection<GlobalSession> asyncCommittingSessions = SessionHolder.getAsyncCommittingSessionManager() + .allSessions(); + if (CollectionUtils.isEmpty(asyncCommittingSessions)) { + return; + } + SessionHelper.forEach(asyncCommittingSessions, asyncCommittingSession -> { + try { + // Instruction reordering in DefaultCore#asyncCommit may cause this + // situation + if (GlobalStatus.AsyncCommitting != asyncCommittingSession.getStatus()) { + // The function of this 'return' is 'continue'. + return; + } + asyncCommittingSession.addSessionLifecycleListener(SessionHolder.getRootSessionManager()); + core.doGlobalCommit(asyncCommittingSession, true); + } + catch (TransactionException ex) { + LOGGER.error("Failed to async committing [{}] {} {}", asyncCommittingSession.getXid(), ex.getCode(), + ex.getMessage(), ex); + } + }); + } + + /** + * Undo log delete. + */ + protected void undoLogDelete() { + Map<String, Channel> rmChannels = ChannelManager.getRmChannels(); + if (rmChannels == null || rmChannels.isEmpty()) { + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("no active rm channels to delete undo log"); + } + return; + } + short saveDays = CONFIG.getShort(ConfigurationKeys.TRANSACTION_UNDO_LOG_SAVE_DAYS, + UndoLogDeleteRequest.DEFAULT_SAVE_DAYS); + for (Map.Entry<String, Channel> channelEntry : rmChannels.entrySet()) { + String resourceId = channelEntry.getKey(); + UndoLogDeleteRequest deleteRequest = new UndoLogDeleteRequest(); + deleteRequest.setResourceId(resourceId); + deleteRequest.setSaveDays(saveDays > 0 ? saveDays : UndoLogDeleteRequest.DEFAULT_SAVE_DAYS); + try { + remotingServer.sendAsyncRequest(channelEntry.getValue(), deleteRequest); + } + catch (Exception e) { + LOGGER.error("Failed to async delete undo log resourceId = {}, exception: {}", resourceId, + e.getMessage()); + } + } + } + + /** + * Init. + */ + public void init() { + retryRollbacking.scheduleAtFixedRate(() -> { + boolean lock = SessionHolder.retryRollbackingLock(); + if (lock) { + try { + handleRetryRollbacking(); + } + catch (Exception e) { + LOGGER.info("Exception retry rollbacking ... ", e); + } + finally { + SessionHolder.unRetryRollbackingLock(); + } + } + }, 0, ROLLBACKING_RETRY_PERIOD, TimeUnit.MILLISECONDS); + + retryCommitting.scheduleAtFixedRate(() -> { + boolean lock = SessionHolder.retryCommittingLock(); + if (lock) { + try { + handleRetryCommitting(); + } + catch (Exception e) { + LOGGER.info("Exception retry committing ... ", e); + } + finally { + SessionHolder.unRetryCommittingLock(); + } + } + }, 0, COMMITTING_RETRY_PERIOD, TimeUnit.MILLISECONDS); + + asyncCommitting.scheduleAtFixedRate(() -> { + boolean lock = SessionHolder.asyncCommittingLock(); + if (lock) { + try { + handleAsyncCommitting(); + } + catch (Exception e) { + LOGGER.info("Exception async committing ... ", e); + } + finally { + SessionHolder.unAsyncCommittingLock(); + } + } + }, 0, ASYNC_COMMITTING_RETRY_PERIOD, TimeUnit.MILLISECONDS); + + timeoutCheck.scheduleAtFixedRate(() -> { + boolean lock = SessionHolder.txTimeoutCheckLock(); + if (lock) { + try { + timeoutCheck(); + } + catch (Exception e) { + LOGGER.info("Exception timeout checking ... ", e); + } + finally { + SessionHolder.unTxTimeoutCheckLock(); + } + } + }, 0, TIMEOUT_RETRY_PERIOD, TimeUnit.MILLISECONDS); + + undoLogDelete.scheduleAtFixedRate(() -> { + boolean lock = SessionHolder.undoLogDeleteLock(); + if (lock) { + try { + undoLogDelete(); + } + catch (Exception e) { + LOGGER.info("Exception undoLog deleting ... ", e); + } + finally { + SessionHolder.unUndoLogDeleteLock(); + } + } + }, UNDO_LOG_DELAY_DELETE_PERIOD, UNDO_LOG_DELETE_PERIOD, TimeUnit.MILLISECONDS); + } + + @Override + public AbstractResultMessage onRequest(AbstractMessage request, RpcContext context) { + if (!(request instanceof AbstractTransactionRequestToTC)) { + throw new IllegalArgumentException(); + } + AbstractTransactionRequestToTC transactionRequest = (AbstractTransactionRequestToTC) request; + transactionRequest.setTCInboundHandler(this); + + return transactionRequest.handle(context); + } + + @Override + public void onResponse(AbstractResultMessage response, RpcContext context) { + if (!(response instanceof AbstractTransactionResponse)) { + throw new IllegalArgumentException(); + } + + } + + @Override + public void destroy() { + // 1. first shutdown timed task + retryRollbacking.shutdown(); + retryCommitting.shutdown(); + asyncCommitting.shutdown(); + timeoutCheck.shutdown(); + try { + retryRollbacking.awaitTermination(TIMED_TASK_SHUTDOWN_MAX_WAIT_MILLS, TimeUnit.MILLISECONDS); + retryCommitting.awaitTermination(TIMED_TASK_SHUTDOWN_MAX_WAIT_MILLS, TimeUnit.MILLISECONDS); + asyncCommitting.awaitTermination(TIMED_TASK_SHUTDOWN_MAX_WAIT_MILLS, TimeUnit.MILLISECONDS); + timeoutCheck.awaitTermination(TIMED_TASK_SHUTDOWN_MAX_WAIT_MILLS, TimeUnit.MILLISECONDS); + } + catch (InterruptedException ignore) { + + } + // 2. second close netty flow + if (remotingServer instanceof NettyRemotingServer) { + ((NettyRemotingServer) remotingServer).destroy(); + } + // 3. last destroy SessionHolder + SessionHolder.destroy(); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/DefaultCore.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/DefaultCore.java new file mode 100644 index 000000000..94130b3df --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/DefaultCore.java @@ -0,0 +1,429 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.coordinator; + +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +import io.seata.common.exception.NotSupportYetException; +import io.seata.common.loader.EnhancedServiceLoader; +import io.seata.common.util.CollectionUtils; +import io.seata.core.context.RootContext; +import io.seata.core.event.EventBus; +import io.seata.core.event.GlobalTransactionEvent; +import io.seata.core.exception.TransactionException; +import io.seata.core.logger.StackTraceLogger; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.BranchType; +import io.seata.core.model.GlobalStatus; +import io.seata.core.rpc.RemotingServer; +import io.seata.server.event.EventBusManager; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionHelper; +import io.seata.server.session.SessionHolder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.slf4j.MDC; + +import static io.seata.server.session.BranchSessionHandler.CONTINUE; + +/** + * The type Default core. + * + * @author sharajava + */ +public class DefaultCore implements Core { + + private static final Logger LOGGER = LoggerFactory.getLogger(DefaultCore.class); + + private EventBus eventBus = EventBusManager.get(); + + private static Map<BranchType, AbstractCore> coreMap = new ConcurrentHashMap<>(); + + /** + * get the Default core. + * @param remotingServer the remoting server + */ + public DefaultCore(RemotingServer remotingServer) { + List<AbstractCore> allCore = EnhancedServiceLoader.loadAll(AbstractCore.class, + new Class[] { RemotingServer.class }, new Object[] { remotingServer }); + if (CollectionUtils.isNotEmpty(allCore)) { + for (AbstractCore core : allCore) { + coreMap.put(core.getHandleBranchType(), core); + } + } + } + + /** + * get core + * @param branchType the branchType + * @return the core + */ + public AbstractCore getCore(BranchType branchType) { + AbstractCore core = coreMap.get(branchType); + if (core == null) { + throw new NotSupportYetException("unsupported type:" + branchType.name()); + } + return core; + } + + /** + * only for mock + * @param branchType the branchType + * @param core the core + */ + public void mockCore(BranchType branchType, AbstractCore core) { + coreMap.put(branchType, core); + } + + @Override + public Long branchRegister(BranchType branchType, String resourceId, String clientId, String xid, + String applicationData, String lockKeys) throws TransactionException { + return getCore(branchType).branchRegister(branchType, resourceId, clientId, xid, applicationData, lockKeys); + } + + @Override + public void branchReport(BranchType branchType, String xid, long branchId, BranchStatus status, + String applicationData) throws TransactionException { + getCore(branchType).branchReport(branchType, xid, branchId, status, applicationData); + } + + @Override + public boolean lockQuery(BranchType branchType, String resourceId, String xid, String lockKeys) + throws TransactionException { + return getCore(branchType).lockQuery(branchType, resourceId, xid, lockKeys); + } + + @Override + public BranchStatus branchCommit(GlobalSession globalSession, BranchSession branchSession) + throws TransactionException { + return getCore(branchSession.getBranchType()).branchCommit(globalSession, branchSession); + } + + @Override + public BranchStatus branchRollback(GlobalSession globalSession, BranchSession branchSession) + throws TransactionException { + return getCore(branchSession.getBranchType()).branchRollback(globalSession, branchSession); + } + + @Override + public String begin(String applicationId, String transactionServiceGroup, String name, int timeout) + throws TransactionException { + GlobalSession session = GlobalSession.createGlobalSession(applicationId, transactionServiceGroup, name, + timeout); + MDC.put(RootContext.MDC_KEY_XID, session.getXid()); + session.addSessionLifecycleListener(SessionHolder.getRootSessionManager()); + + session.begin(); + + // transaction start event + eventBus.post(new GlobalTransactionEvent(session.getTransactionId(), GlobalTransactionEvent.ROLE_TC, + session.getTransactionName(), applicationId, transactionServiceGroup, session.getBeginTime(), null, + session.getStatus())); + + return session.getXid(); + } + + @Override + public GlobalStatus commit(String xid) throws TransactionException { + GlobalSession globalSession = SessionHolder.findGlobalSession(xid); + if (globalSession == null) { + return GlobalStatus.Finished; + } + globalSession.addSessionLifecycleListener(SessionHolder.getRootSessionManager()); + // just lock changeStatus + + boolean shouldCommit = SessionHolder.lockAndExecute(globalSession, () -> { + // Highlight: Firstly, close the session, then no more branch can be + // registered. + globalSession.closeAndClean(); + if (globalSession.getStatus() == GlobalStatus.Begin) { + if (globalSession.canBeCommittedAsync()) { + globalSession.asyncCommit(); + return false; + } + else { + globalSession.changeStatus(GlobalStatus.Committing); + return true; + } + } + return false; + }); + + if (shouldCommit) { + boolean success = doGlobalCommit(globalSession, false); + // If successful and all remaining branches can be committed asynchronously, + // do async commit. + if (success && globalSession.hasBranch() && globalSession.canBeCommittedAsync()) { + globalSession.asyncCommit(); + return GlobalStatus.Committed; + } + else { + return globalSession.getStatus(); + } + } + else { + return globalSession.getStatus() == GlobalStatus.AsyncCommitting ? GlobalStatus.Committed + : globalSession.getStatus(); + } + } + + @Override + public boolean doGlobalCommit(GlobalSession globalSession, boolean retrying) throws TransactionException { + boolean success = true; + // start committing event + eventBus.post(new GlobalTransactionEvent(globalSession.getTransactionId(), GlobalTransactionEvent.ROLE_TC, + globalSession.getTransactionName(), globalSession.getApplicationId(), + globalSession.getTransactionServiceGroup(), globalSession.getBeginTime(), null, + globalSession.getStatus())); + + if (globalSession.isSaga()) { + success = getCore(BranchType.SAGA).doGlobalCommit(globalSession, retrying); + } + else { + Boolean result = SessionHelper.forEach(globalSession.getSortedBranches(), branchSession -> { + // if not retrying, skip the canBeCommittedAsync branches + if (!retrying && branchSession.canBeCommittedAsync()) { + return CONTINUE; + } + + BranchStatus currentStatus = branchSession.getStatus(); + if (currentStatus == BranchStatus.PhaseOne_Failed) { + globalSession.removeBranch(branchSession); + return CONTINUE; + } + try { + BranchStatus branchStatus = getCore(branchSession.getBranchType()).branchCommit(globalSession, + branchSession); + + switch (branchStatus) { + case PhaseTwo_Committed: + globalSession.removeBranch(branchSession); + return CONTINUE; + case PhaseTwo_CommitFailed_Unretryable: + if (globalSession.canBeCommittedAsync()) { + LOGGER.error( + "Committing branch transaction[{}], status: PhaseTwo_CommitFailed_Unretryable, please check the business log.", + branchSession.getBranchId()); + return CONTINUE; + } + else { + SessionHelper.endCommitFailed(globalSession); + LOGGER.error( + "Committing global transaction[{}] finally failed, caused by branch transaction[{}] commit failed.", + globalSession.getXid(), branchSession.getBranchId()); + return false; + } + default: + if (!retrying) { + globalSession.queueToRetryCommit(); + return false; + } + if (globalSession.canBeCommittedAsync()) { + LOGGER.error("Committing branch transaction[{}], status:{} and will retry later", + branchSession.getBranchId(), branchStatus); + return CONTINUE; + } + else { + LOGGER.error( + "Committing global transaction[{}] failed, caused by branch transaction[{}] commit failed, will retry later.", + globalSession.getXid(), branchSession.getBranchId()); + return false; + } + } + } + catch (Exception ex) { + StackTraceLogger.error(LOGGER, ex, "Committing branch transaction exception: {}", + new String[] { branchSession.toString() }); + if (!retrying) { + globalSession.queueToRetryCommit(); + throw new TransactionException(ex); + } + } + return CONTINUE; + }); + // Return if the result is not null + if (result != null) { + return result; + } + // If has branch and not all remaining branches can be committed + // asynchronously, + // do print log and return false + if (globalSession.hasBranch() && !globalSession.canBeCommittedAsync()) { + LOGGER.info("Committing global transaction is NOT done, xid = {}.", globalSession.getXid()); + return false; + } + } + // If success and there is no branch, end the global transaction. + if (success && globalSession.getBranchSessions().isEmpty()) { + SessionHelper.endCommitted(globalSession); + + // committed event + eventBus.post(new GlobalTransactionEvent(globalSession.getTransactionId(), GlobalTransactionEvent.ROLE_TC, + globalSession.getTransactionName(), globalSession.getApplicationId(), + globalSession.getTransactionServiceGroup(), globalSession.getBeginTime(), + System.currentTimeMillis(), globalSession.getStatus())); + + LOGGER.info("Committing global transaction is successfully done, xid = {}.", globalSession.getXid()); + } + return success; + } + + @Override + public GlobalStatus rollback(String xid) throws TransactionException { + GlobalSession globalSession = SessionHolder.findGlobalSession(xid); + if (globalSession == null) { + return GlobalStatus.Finished; + } + globalSession.addSessionLifecycleListener(SessionHolder.getRootSessionManager()); + // just lock changeStatus + boolean shouldRollBack = SessionHolder.lockAndExecute(globalSession, () -> { + globalSession.close(); // Highlight: Firstly, close the session, then no more + // branch can be registered. + if (globalSession.getStatus() == GlobalStatus.Begin) { + globalSession.changeStatus(GlobalStatus.Rollbacking); + return true; + } + return false; + }); + if (!shouldRollBack) { + return globalSession.getStatus(); + } + + doGlobalRollback(globalSession, false); + return globalSession.getStatus(); + } + + @Override + public boolean doGlobalRollback(GlobalSession globalSession, boolean retrying) throws TransactionException { + boolean success = true; + // start rollback event + eventBus.post(new GlobalTransactionEvent(globalSession.getTransactionId(), GlobalTransactionEvent.ROLE_TC, + globalSession.getTransactionName(), globalSession.getApplicationId(), + globalSession.getTransactionServiceGroup(), globalSession.getBeginTime(), null, + globalSession.getStatus())); + + if (globalSession.isSaga()) { + success = getCore(BranchType.SAGA).doGlobalRollback(globalSession, retrying); + } + else { + Boolean result = SessionHelper.forEach(globalSession.getReverseSortedBranches(), branchSession -> { + BranchStatus currentBranchStatus = branchSession.getStatus(); + if (currentBranchStatus == BranchStatus.PhaseOne_Failed) { + globalSession.removeBranch(branchSession); + return CONTINUE; + } + try { + BranchStatus branchStatus = branchRollback(globalSession, branchSession); + switch (branchStatus) { + case PhaseTwo_Rollbacked: + globalSession.removeBranch(branchSession); + LOGGER.info("Rollback branch transaction successfully, xid = {} branchId = {}", + globalSession.getXid(), branchSession.getBranchId()); + return CONTINUE; + case PhaseTwo_RollbackFailed_Unretryable: + SessionHelper.endRollbackFailed(globalSession); + LOGGER.info("Rollback branch transaction fail and stop retry, xid = {} branchId = {}", + globalSession.getXid(), branchSession.getBranchId()); + return false; + default: + LOGGER.info("Rollback branch transaction fail and will retry, xid = {} branchId = {}", + globalSession.getXid(), branchSession.getBranchId()); + if (!retrying) { + globalSession.queueToRetryRollback(); + } + return false; + } + } + catch (Exception ex) { + StackTraceLogger.error(LOGGER, ex, + "Rollback branch transaction exception, xid = {} branchId = {} exception = {}", + new String[] { globalSession.getXid(), String.valueOf(branchSession.getBranchId()), + ex.getMessage() }); + if (!retrying) { + globalSession.queueToRetryRollback(); + } + throw new TransactionException(ex); + } + }); + // Return if the result is not null + if (result != null) { + return result; + } + + // In db mode, there is a problem of inconsistent data in multiple copies, + // resulting in new branch + // transaction registration when rolling back. + // 1. New branch transaction and rollback branch transaction have no data + // association + // 2. New branch transaction has data association with rollback branch + // transaction + // The second query can solve the first problem, and if it is the second + // problem, it may cause a rollback + // failure due to data changes. + GlobalSession globalSessionTwice = SessionHolder.findGlobalSession(globalSession.getXid()); + if (globalSessionTwice != null && globalSessionTwice.hasBranch()) { + LOGGER.info("Rollbacking global transaction is NOT done, xid = {}.", globalSession.getXid()); + return false; + } + } + if (success) { + SessionHelper.endRollbacked(globalSession); + + // rollbacked event + eventBus.post(new GlobalTransactionEvent(globalSession.getTransactionId(), GlobalTransactionEvent.ROLE_TC, + globalSession.getTransactionName(), globalSession.getApplicationId(), + globalSession.getTransactionServiceGroup(), globalSession.getBeginTime(), + System.currentTimeMillis(), globalSession.getStatus())); + + LOGGER.info("Rollback global transaction successfully, xid = {}.", globalSession.getXid()); + } + return success; + } + + @Override + public GlobalStatus getStatus(String xid) throws TransactionException { + GlobalSession globalSession = SessionHolder.findGlobalSession(xid, false); + if (globalSession == null) { + return GlobalStatus.Finished; + } + else { + return globalSession.getStatus(); + } + } + + @Override + public GlobalStatus globalReport(String xid, GlobalStatus globalStatus) throws TransactionException { + GlobalSession globalSession = SessionHolder.findGlobalSession(xid); + if (globalSession == null) { + return globalStatus; + } + globalSession.addSessionLifecycleListener(SessionHolder.getRootSessionManager()); + doGlobalReport(globalSession, xid, globalStatus); + return globalSession.getStatus(); + } + + @Override + public void doGlobalReport(GlobalSession globalSession, String xid, GlobalStatus globalStatus) + throws TransactionException { + if (globalSession.isSaga()) { + getCore(BranchType.SAGA).doGlobalReport(globalSession, xid, globalStatus); + } + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/TransactionCoordinatorInbound.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/TransactionCoordinatorInbound.java new file mode 100644 index 000000000..d8c9932b1 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/TransactionCoordinatorInbound.java @@ -0,0 +1,29 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.coordinator; + +import io.seata.core.model.ResourceManagerOutbound; +import io.seata.core.model.TransactionManager; + +/** + * receive inbound request from RM or TM. + * + * @author zhangchenghui.dev@gmail.com + * @since 1.1.0 + */ +public interface TransactionCoordinatorInbound extends ResourceManagerOutbound, TransactionManager { + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/TransactionCoordinatorOutbound.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/TransactionCoordinatorOutbound.java new file mode 100644 index 000000000..042e0d955 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/coordinator/TransactionCoordinatorOutbound.java @@ -0,0 +1,51 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.coordinator; + +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchStatus; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; + +/** + * send outbound request to RM. + * + * @author zhangchenghui.dev@gmail.com + * @since 1.1.0 + */ +public interface TransactionCoordinatorOutbound { + + /** + * Commit a branch transaction. + * @param globalSession the global session + * @param branchSession the branch session + * @return Status of the branch after committing. + * @throws TransactionException Any exception that fails this will be wrapped with + * TransactionException and thrown out. + */ + BranchStatus branchCommit(GlobalSession globalSession, BranchSession branchSession) throws TransactionException; + + /** + * Rollback a branch transaction. + * @param globalSession the global session + * @param branchSession the branch session + * @return Status of the branch after rollbacking. + * @throws TransactionException Any exception that fails this will be wrapped with + * TransactionException and thrown out. + */ + BranchStatus branchRollback(GlobalSession globalSession, BranchSession branchSession) throws TransactionException; + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/env/ContainerHelper.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/env/ContainerHelper.java new file mode 100644 index 000000000..b7dd20149 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/env/ContainerHelper.java @@ -0,0 +1,109 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.env; + +import io.seata.common.util.NumberUtils; +import io.seata.common.util.StringUtils; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.stream.Stream; + +import static io.seata.common.DefaultValues.SERVER_DEFAULT_PORT; + +/** + * @author xingfudeshi@gmail.com + * @author wang.liang + */ +public class ContainerHelper { + + private static final String C_GROUP_PATH = "/proc/1/cgroup"; + + private static final String DOCKER_PATH = "/docker"; + + private static final String KUBEPODS_PATH = "/kubepods"; + + private static final String ENV_SYSTEM_KEY = "SEATA_ENV"; + + private static final String ENV_SEATA_IP_KEY = "SEATA_IP"; + + private static final String ENV_SERVER_NODE_KEY = "SERVER_NODE"; + + private static final String ENV_SEATA_PORT_KEY = "SEATA_PORT"; + + private static final String ENV_STORE_MODE_KEY = "STORE_MODE"; + + /** + * Judge if application is run in container. + * @return If application is run in container + */ + public static boolean isRunningInContainer() { + Path path = Paths.get(C_GROUP_PATH); + if (Files.exists(path)) { + try (Stream<String> stream = Files.lines(path)) { + return stream.anyMatch(line -> line.contains(DOCKER_PATH) || line.contains(KUBEPODS_PATH)); + } + catch (IOException e) { + System.err.println("Judge if running in container failed: " + e.getMessage()); + e.printStackTrace(); + } + } + return false; + } + + /** + * Gets env from container. + * @return the env + */ + public static String getEnv() { + return StringUtils.trimToNull(System.getenv(ENV_SYSTEM_KEY)); + } + + /** + * Gets host from container. + * @return the env + */ + public static String getHost() { + return StringUtils.trimToNull(System.getenv(ENV_SEATA_IP_KEY)); + } + + /** + * Gets port from container. + * @return the env + */ + public static int getPort() { + return NumberUtils.toInt(System.getenv(ENV_SEATA_PORT_KEY), SERVER_DEFAULT_PORT); + } + + /** + * Gets server node from container. + * @return the env + */ + public static Long getServerNode() { + return NumberUtils.toLong(System.getenv(ENV_SERVER_NODE_KEY)); + } + + /** + * Gets store mode from container. + * @return the env + */ + public static String getStoreMode() { + return StringUtils.trimToNull(System.getenv(ENV_STORE_MODE_KEY)); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/env/PortHelper.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/env/PortHelper.java new file mode 100644 index 000000000..58fc56a07 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/env/PortHelper.java @@ -0,0 +1,42 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.env; + +import io.seata.common.util.NumberUtils; + +import static io.seata.common.DefaultValues.SERVER_DEFAULT_PORT; + +/** + * @author wang.liang + */ +public class PortHelper { + + public static int getPort(String[] args) { + if (ContainerHelper.isRunningInContainer()) { + return ContainerHelper.getPort(); + } + else if (args != null && args.length >= 2) { + for (int i = 0; i < args.length; ++i) { + if ("-p".equalsIgnoreCase(args[i]) && i < args.length - 1) { + return NumberUtils.toInt(args[i + 1], SERVER_DEFAULT_PORT); + } + } + } + + return SERVER_DEFAULT_PORT; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/event/EventBusManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/event/EventBusManager.java new file mode 100644 index 000000000..3531c7b57 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/event/EventBusManager.java @@ -0,0 +1,38 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.event; + +import io.seata.core.event.EventBus; +import io.seata.core.event.GuavaEventBus; + +/** + * Manager hold the singleton event bus instance. + * + * @author zhengyangyong + */ +public class EventBusManager { + + private static class SingletonHolder { + + private static EventBus INSTANCE = new GuavaEventBus("tc"); + + } + + public static EventBus get() { + return SingletonHolder.INSTANCE; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/lock/AbstractLockManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/lock/AbstractLockManager.java new file mode 100644 index 000000000..002d7e61a --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/lock/AbstractLockManager.java @@ -0,0 +1,187 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.lock; + +import java.util.ArrayList; +import java.util.List; + +import io.seata.common.XID; +import io.seata.common.util.CollectionUtils; +import io.seata.common.util.StringUtils; +import io.seata.core.exception.TransactionException; +import io.seata.core.lock.Locker; +import io.seata.core.lock.RowLock; +import io.seata.server.session.BranchSession; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * The type Abstract lock manager. + * + * @author zhangsen + */ +public abstract class AbstractLockManager implements LockManager { + + /** + * The constant LOGGER. + */ + protected static final Logger LOGGER = LoggerFactory.getLogger(AbstractLockManager.class); + + @Override + public boolean acquireLock(BranchSession branchSession) throws TransactionException { + if (branchSession == null) { + throw new IllegalArgumentException("branchSession can't be null for memory/file locker."); + } + String lockKey = branchSession.getLockKey(); + if (StringUtils.isNullOrEmpty(lockKey)) { + // no lock + return true; + } + // get locks of branch + List<RowLock> locks = collectRowLocks(branchSession); + if (CollectionUtils.isEmpty(locks)) { + // no lock + return true; + } + return getLocker(branchSession).acquireLock(locks); + } + + @Override + public boolean releaseLock(BranchSession branchSession) throws TransactionException { + if (branchSession == null) { + throw new IllegalArgumentException("branchSession can't be null for memory/file locker."); + } + List<RowLock> locks = collectRowLocks(branchSession); + try { + return getLocker(branchSession).releaseLock(locks); + } + catch (Exception t) { + LOGGER.error("unLock error, branchSession:{}", branchSession, t); + return false; + } + } + + @Override + public boolean isLockable(String xid, String resourceId, String lockKey) throws TransactionException { + if (StringUtils.isBlank(lockKey)) { + // no lock + return true; + } + List<RowLock> locks = collectRowLocks(lockKey, resourceId, xid); + try { + return getLocker().isLockable(locks); + } + catch (Exception t) { + LOGGER.error("isLockable error, xid:{} resourceId:{}, lockKey:{}", xid, resourceId, lockKey, t); + return false; + } + } + + @Override + public void cleanAllLocks() throws TransactionException { + getLocker().cleanAllLocks(); + } + + /** + * Gets locker. + * @return the locker + */ + protected Locker getLocker() { + return getLocker(null); + } + + /** + * Gets locker. + * @param branchSession the branch session + * @return the locker + */ + protected abstract Locker getLocker(BranchSession branchSession); + + /** + * Collect row locks list.` + * @param branchSession the branch session + * @return the list + */ + protected List<RowLock> collectRowLocks(BranchSession branchSession) { + List<RowLock> locks = new ArrayList<>(); + if (branchSession == null || StringUtils.isBlank(branchSession.getLockKey())) { + return locks; + } + String xid = branchSession.getXid(); + String resourceId = branchSession.getResourceId(); + long transactionId = branchSession.getTransactionId(); + + String lockKey = branchSession.getLockKey(); + + return collectRowLocks(lockKey, resourceId, xid, transactionId, branchSession.getBranchId()); + } + + /** + * Collect row locks list. + * @param lockKey the lock key + * @param resourceId the resource id + * @param xid the xid + * @return the list + */ + protected List<RowLock> collectRowLocks(String lockKey, String resourceId, String xid) { + return collectRowLocks(lockKey, resourceId, xid, XID.getTransactionId(xid), null); + } + + /** + * Collect row locks list. + * @param lockKey the lock key + * @param resourceId the resource id + * @param xid the xid + * @param transactionId the transaction id + * @param branchID the branch id + * @return the list + */ + protected List<RowLock> collectRowLocks(String lockKey, String resourceId, String xid, Long transactionId, + Long branchID) { + List<RowLock> locks = new ArrayList<RowLock>(); + + String[] tableGroupedLockKeys = lockKey.split(";"); + for (String tableGroupedLockKey : tableGroupedLockKeys) { + int idx = tableGroupedLockKey.indexOf(":"); + if (idx < 0) { + return locks; + } + String tableName = tableGroupedLockKey.substring(0, idx); + String mergedPKs = tableGroupedLockKey.substring(idx + 1); + if (StringUtils.isBlank(mergedPKs)) { + return locks; + } + String[] pks = mergedPKs.split(","); + if (pks == null || pks.length == 0) { + return locks; + } + for (String pk : pks) { + if (StringUtils.isNotBlank(pk)) { + RowLock rowLock = new RowLock(); + rowLock.setXid(xid); + rowLock.setTransactionId(transactionId); + rowLock.setBranchId(branchID); + rowLock.setTableName(tableName); + rowLock.setPk(pk); + rowLock.setResourceId(resourceId); + locks.add(rowLock); + } + } + } + return locks; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/lock/LockManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/lock/LockManager.java new file mode 100644 index 000000000..80669d829 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/lock/LockManager.java @@ -0,0 +1,69 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.lock; + +import io.seata.core.exception.TransactionException; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; + +/** + * The interface Lock manager. + * + * @author sharajava + */ +public interface LockManager { + + /** + * Acquire lock boolean. + * @param branchSession the branch session + * @return the boolean + * @throws TransactionException the transaction exception + */ + boolean acquireLock(BranchSession branchSession) throws TransactionException; + + /** + * Un lock boolean. + * @param branchSession the branch session + * @return the boolean + * @throws TransactionException the transaction exception + */ + boolean releaseLock(BranchSession branchSession) throws TransactionException; + + /** + * Un lock boolean. + * @param globalSession the global session + * @return the boolean + * @throws TransactionException the transaction exception + */ + boolean releaseGlobalSessionLock(GlobalSession globalSession) throws TransactionException; + + /** + * Is lockable boolean. + * @param xid the xid + * @param resourceId the resource id + * @param lockKey the lock key + * @return the boolean + * @throws TransactionException the transaction exception + */ + boolean isLockable(String xid, String resourceId, String lockKey) throws TransactionException; + + /** + * Clean all locks. + * @throws TransactionException the transaction exception + */ + void cleanAllLocks() throws TransactionException; + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/lock/LockerManagerFactory.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/lock/LockerManagerFactory.java new file mode 100644 index 000000000..b9e0e0b24 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/lock/LockerManagerFactory.java @@ -0,0 +1,43 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.lock; + +import io.seata.common.loader.EnhancedServiceLoader; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; + +/** + * The type Lock manager factory. + * + * @author sharajava + */ +public class LockerManagerFactory { + + /** + * the lock manager + */ + private static final LockManager LOCK_MANAGER = EnhancedServiceLoader.load(LockManager.class, + ConfigurationFactory.getInstance().getConfig(ConfigurationKeys.STORE_MODE)); + + /** + * Get lock manager. + * @return the lock manager + */ + public static LockManager getLockManager() { + return LOCK_MANAGER; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/listener/SystemPropertyLoggerContextListener.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/listener/SystemPropertyLoggerContextListener.java new file mode 100644 index 000000000..4ed809cc6 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/listener/SystemPropertyLoggerContextListener.java @@ -0,0 +1,76 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.logging.listener; + +import ch.qos.logback.classic.Level; +import ch.qos.logback.classic.Logger; +import ch.qos.logback.classic.LoggerContext; +import ch.qos.logback.classic.spi.LoggerContextListener; +import ch.qos.logback.core.Context; +import ch.qos.logback.core.spi.ContextAwareBase; +import ch.qos.logback.core.spi.LifeCycle; +import io.seata.core.constants.ConfigurationKeys; + +/** + * @author wang.liang + */ +public class SystemPropertyLoggerContextListener extends ContextAwareBase implements LoggerContextListener, LifeCycle { + + private boolean started = false; + + @Override + public void start() { + if (started) { + return; + } + + Context context = getContext(); + context.putProperty("PORT", System.getProperty(ConfigurationKeys.SERVER_PORT)); + + started = true; + } + + @Override + public void stop() { + } + + @Override + public boolean isStarted() { + return started; + } + + @Override + public boolean isResetResistant() { + return true; + } + + @Override + public void onStart(LoggerContext context) { + } + + @Override + public void onReset(LoggerContext context) { + } + + @Override + public void onStop(LoggerContext context) { + } + + @Override + public void onLevelChange(Logger logger, Level level) { + } + +} \ No newline at end of file diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ColorConverter.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ColorConverter.java new file mode 100644 index 000000000..ddaf2ff82 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ColorConverter.java @@ -0,0 +1,93 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.logging.logback; + +import ch.qos.logback.classic.Level; +import ch.qos.logback.classic.spi.ILoggingEvent; +import ch.qos.logback.core.pattern.CompositeConverter; +import io.netty.util.internal.PlatformDependent; +import io.seata.server.logging.logback.ansi.AnsiColor; +import io.seata.server.logging.logback.ansi.AnsiElement; +import io.seata.server.logging.logback.ansi.AnsiOutput; +import io.seata.server.logging.logback.ansi.AnsiStyle; + +import java.util.Collections; +import java.util.HashMap; +import java.util.Map; + +/** + * Logback {@link CompositeConverter} colors output using the {@link AnsiOutput} class. A + * single 'color' option can be provided to the converter, or if not specified color will + * be picked based on the logging level. + * + * @author Phillip Webb + * @origin Copied from spring-boot.jar by wang.liang + */ +public class ColorConverter extends CompositeConverter<ILoggingEvent> { + + private static final Map<String, AnsiElement> ELEMENTS; + + private static final String DISABLE_PROPERTY_NAME = "logback.color.disable-for-bat"; + + static { + Map<String, AnsiElement> ansiElements = new HashMap<>(); + ansiElements.put("faint", AnsiStyle.FAINT); + ansiElements.put("red", AnsiColor.RED); + ansiElements.put("green", AnsiColor.GREEN); + ansiElements.put("yellow", AnsiColor.YELLOW); + ansiElements.put("blue", AnsiColor.BLUE); + ansiElements.put("magenta", AnsiColor.MAGENTA); + ansiElements.put("cyan", AnsiColor.CYAN); + ELEMENTS = Collections.unmodifiableMap(ansiElements); + } + + private static final Map<Integer, AnsiElement> LEVELS; + + static { + Map<Integer, AnsiElement> ansiLevels = new HashMap<>(); + ansiLevels.put(Level.ERROR_INTEGER, AnsiColor.RED); + ansiLevels.put(Level.WARN_INTEGER, AnsiColor.YELLOW); + LEVELS = Collections.unmodifiableMap(ansiLevels); + } + + private final boolean disable; + + public ColorConverter() { + // If is windows and run by seata-server.bat, then disable the color log. + disable = PlatformDependent.isWindows() && Boolean.parseBoolean(System.getProperty(DISABLE_PROPERTY_NAME)); + } + + @Override + protected String transform(ILoggingEvent event, String in) { + if (disable) { + // return the original log + return in; + } + + AnsiElement element = ELEMENTS.get(getFirstOption()); + if (element == null) { + // Assume highlighting + element = LEVELS.get(event.getLevel().toInteger()); + element = (element != null) ? element : AnsiColor.GREEN; + } + return toAnsiString(in, element); + } + + protected String toAnsiString(String in, AnsiElement element) { + return AnsiOutput.toString(element, in); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ExtendedWhitespaceThrowableProxyConverter.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ExtendedWhitespaceThrowableProxyConverter.java new file mode 100644 index 000000000..a2a0ca489 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ExtendedWhitespaceThrowableProxyConverter.java @@ -0,0 +1,37 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.logging.logback; + +import ch.qos.logback.classic.pattern.ExtendedThrowableProxyConverter; +import ch.qos.logback.classic.spi.IThrowableProxy; +import ch.qos.logback.core.CoreConstants; + +/** + * {@link ExtendedThrowableProxyConverter} that adds some additional whitespace around the + * stack trace. + * + * @author Phillip Webb + * @origin Copied from spring-boot.jar by wang.liang + */ +public class ExtendedWhitespaceThrowableProxyConverter extends ExtendedThrowableProxyConverter { + + @Override + protected String throwableProxyToString(IThrowableProxy tp) { + return "==>" + CoreConstants.LINE_SEPARATOR + super.throwableProxyToString(tp) + "<==" + + CoreConstants.LINE_SEPARATOR + CoreConstants.LINE_SEPARATOR; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/WhitespaceThrowableProxyConverter.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/WhitespaceThrowableProxyConverter.java new file mode 100644 index 000000000..97aa6eeb4 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/WhitespaceThrowableProxyConverter.java @@ -0,0 +1,37 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.logging.logback; + +import ch.qos.logback.classic.pattern.ThrowableProxyConverter; +import ch.qos.logback.classic.spi.IThrowableProxy; +import ch.qos.logback.core.CoreConstants; + +/** + * {@link ThrowableProxyConverter} that adds some additional whitespace around the + * stacktrace. + * + * @author Phillip Webb + * @origin Copied from spring-boot.jar by wang.liang + */ +public class WhitespaceThrowableProxyConverter extends ThrowableProxyConverter { + + @Override + protected String throwableProxyToString(IThrowableProxy tp) { + return CoreConstants.LINE_SEPARATOR + super.throwableProxyToString(tp) + CoreConstants.LINE_SEPARATOR + + CoreConstants.LINE_SEPARATOR; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiColor.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiColor.java new file mode 100644 index 000000000..381c6111f --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiColor.java @@ -0,0 +1,126 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.logging.logback.ansi; + +/** + * {@link AnsiElement Ansi} colors. + * + * @author Phillip Webb + * @author Geoffrey Chandler + * @origin Copied from spring-boot.jar by wang.liang + */ +public enum AnsiColor implements AnsiElement { + + /** + * default is light-grey + */ + DEFAULT("39"), + + /** + * black + */ + BLACK("30"), + + /** + * red + */ + RED("31"), + + /** + * green + */ + GREEN("32"), + + /** + * yellow + */ + YELLOW("33"), + + /** + * blue + */ + BLUE("34"), + + /** + * magenta + */ + MAGENTA("35"), + + /** + * cyan + */ + CYAN("36"), + + /** + * white + */ + WHITE("37"), + + /** + * bright black + */ + BRIGHT_BLACK("90"), + + /** + * bright red + */ + BRIGHT_RED("91"), + + /** + * bright green + */ + BRIGHT_GREEN("92"), + + /** + * bright yellow + */ + BRIGHT_YELLOW("93"), + + /** + * bright blue + */ + BRIGHT_BLUE("94"), + + /** + * bright magenta + */ + BRIGHT_MAGENTA("95"), + + /** + * bright cyan + */ + BRIGHT_CYAN("96"), + + /** + * bright white + */ + BRIGHT_WHITE("97"); + + /** + * code of color + */ + private final String code; + + AnsiColor(String code) { + this.code = code; + } + + @Override + public String toString() { + return this.code; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiElement.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiElement.java new file mode 100644 index 000000000..8af1d13d4 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiElement.java @@ -0,0 +1,32 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.logging.logback.ansi; + +/** + * An ANSI encodable element. + * + * @author Phillip Webb + * @origin Copied from spring-boot.jar by wang.liang + */ +public interface AnsiElement { + + /** + * @return the ANSI escape code + */ + @Override + String toString(); + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiOutput.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiOutput.java new file mode 100644 index 000000000..c4b9303ba --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiOutput.java @@ -0,0 +1,184 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.logging.logback.ansi; + +import com.alipay.lookout.common.Assert; + +import java.util.Locale; + +/** + * Generates ANSI encoded output, automatically attempting to detect if the terminal + * supports ANSI. + * + * @author Phillip Webb + * @origin Copied from spring-boot.jar by wang.liang + */ +public class AnsiOutput { + + private static final String ENCODE_JOIN = ";"; + + private static Enabled enabled = Enabled.ALWAYS; + + private static Boolean consoleAvailable; + + private static Boolean ansiCapable; + + private static final String OPERATING_SYSTEM_NAME = System.getProperty("os.name").toLowerCase(Locale.ENGLISH); + + private static final String ENCODE_START = "\033["; + + private static final String ENCODE_END = "m"; + + private static final String RESET = "0;" + AnsiColor.DEFAULT; + + /** + * Sets if ANSI output is enabled. + * @param enabled if ANSI is enabled, disabled or detected + */ + public static void setEnabled(Enabled enabled) { + Assert.notNull(enabled, "Enabled must not be null"); + AnsiOutput.enabled = enabled; + } + + /** + * Sets if the System.console() is known to be available. + * @param consoleAvailable if the console is known to be available or {@code null} to + * use standard detection logic. + */ + public static void setConsoleAvailable(Boolean consoleAvailable) { + AnsiOutput.consoleAvailable = consoleAvailable; + } + + static Enabled getEnabled() { + return AnsiOutput.enabled; + } + + /** + * Encode a single {@link AnsiElement} if output is enabled. + * @param element the element to encode + * @return the encoded element or an empty string + */ + public static String encode(AnsiElement element) { + if (isEnabled()) { + return ENCODE_START + element + ENCODE_END; + } + return ""; + } + + /** + * Create a new ANSI string from the specified elements. Any {@link AnsiElement}s will + * be encoded as required. + * @param elements the elements to encode + * @return a string of the encoded elements + */ + public static String toString(Object... elements) { + StringBuilder sb = new StringBuilder(); + if (isEnabled()) { + buildEnabled(sb, elements); + } + else { + buildDisabled(sb, elements); + } + return sb.toString(); + } + + private static void buildEnabled(StringBuilder sb, Object[] elements) { + boolean writingAnsi = false; + boolean containsEncoding = false; + for (Object element : elements) { + if (element instanceof AnsiElement) { + containsEncoding = true; + if (!writingAnsi) { + sb.append(ENCODE_START); + writingAnsi = true; + } + else { + sb.append(ENCODE_JOIN); + } + } + else { + if (writingAnsi) { + sb.append(ENCODE_END); + writingAnsi = false; + } + } + sb.append(element); + } + if (containsEncoding) { + sb.append(writingAnsi ? ENCODE_JOIN : ENCODE_START); + sb.append(RESET); + sb.append(ENCODE_END); + } + } + + private static void buildDisabled(StringBuilder sb, Object[] elements) { + for (Object element : elements) { + if (!(element instanceof AnsiElement) && element != null) { + sb.append(element); + } + } + } + + private static boolean isEnabled() { + if (enabled == Enabled.DETECT) { + if (ansiCapable == null) { + ansiCapable = detectIfAnsiCapable(); + } + return ansiCapable; + } + return enabled == Enabled.ALWAYS; + } + + private static boolean detectIfAnsiCapable() { + try { + if (Boolean.FALSE.equals(consoleAvailable)) { + return false; + } + if ((consoleAvailable == null) && (System.console() == null)) { + return false; + } + return !(OPERATING_SYSTEM_NAME.indexOf("win") >= 0); + } + catch (Throwable ex) { + return false; + } + } + + /** + * Possible values to pass to {@link AnsiOutput#setEnabled}. Determines when to output + * ANSI escape sequences for coloring application output. + */ + public enum Enabled { + + /** + * Try to detect whether ANSI coloring capabilities are available. The default + * value for {@link AnsiOutput}. + */ + DETECT, + + /** + * Enable ANSI-colored output. + */ + ALWAYS, + + /** + * Disable ANSI-colored output. + */ + NEVER + + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiStyle.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiStyle.java new file mode 100644 index 000000000..1080d9fc7 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/ansi/AnsiStyle.java @@ -0,0 +1,65 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.logging.logback.ansi; + +/** + * {@link AnsiElement Ansi} styles. + * + * @author Phillip Webb + * @origin Copied from spring-boot.jar by wang.liang + */ +public enum AnsiStyle implements AnsiElement { + + /** + * normal + */ + NORMAL("0"), + + /** + * bold + */ + BOLD("1"), + + /** + * faint + */ + FAINT("2"), + + /** + * italic + */ + ITALIC("3"), + + /** + * underline + */ + UNDERLINE("4"); + + /** + * code of style + */ + private final String code; + + AnsiStyle(String code) { + this.code = code; + } + + @Override + public String toString() { + return this.code; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/appender/EnhancedLogstashEncoder.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/appender/EnhancedLogstashEncoder.java new file mode 100644 index 000000000..74ccff27e --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/logging/logback/appender/EnhancedLogstashEncoder.java @@ -0,0 +1,45 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.logging.logback.appender; + +import java.util.ArrayList; + +import net.logstash.logback.composite.JsonProvider; +import net.logstash.logback.composite.JsonProviders; +import net.logstash.logback.encoder.LogstashEncoder; + +/** + * The type Enhanced logstash encoder + * + * @author wang.liang + * @since 1.5.0 + */ +public class EnhancedLogstashEncoder extends LogstashEncoder { + + /** + * set exclude provider + * @param excludedProviderClassName the excluded provider class name + */ + public void setExcludeProvider(String excludedProviderClassName) { + JsonProviders<?> providers = getFormatter().getProviders(); + for (JsonProvider<?> provider : new ArrayList<>(providers.getProviders())) { + if (provider.getClass().getName().equals(excludedProviderClassName)) { + providers.removeProvider((JsonProvider) provider); + } + } + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/metrics/MeterIdConstants.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/metrics/MeterIdConstants.java new file mode 100644 index 000000000..8bdb5d0dd --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/metrics/MeterIdConstants.java @@ -0,0 +1,60 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.metrics; + +import io.seata.metrics.IdConstants; +import io.seata.metrics.Id; + +/** + * Constants for meter id in tc + * + * @author zhengyangyong + */ +public interface MeterIdConstants { + + Id COUNTER_ACTIVE = new Id(IdConstants.SEATA_TRANSACTION).withTag(IdConstants.ROLE_KEY, IdConstants.ROLE_VALUE_TC) + .withTag(IdConstants.METER_KEY, IdConstants.METER_VALUE_COUNTER) + .withTag(IdConstants.STATUS_KEY, IdConstants.STATUS_VALUE_ACTIVE); + + Id COUNTER_COMMITTED = new Id(IdConstants.SEATA_TRANSACTION) + .withTag(IdConstants.ROLE_KEY, IdConstants.ROLE_VALUE_TC) + .withTag(IdConstants.METER_KEY, IdConstants.METER_VALUE_COUNTER) + .withTag(IdConstants.STATUS_KEY, IdConstants.STATUS_VALUE_COMMITTED); + + Id COUNTER_ROLLBACKED = new Id(IdConstants.SEATA_TRANSACTION) + .withTag(IdConstants.ROLE_KEY, IdConstants.ROLE_VALUE_TC) + .withTag(IdConstants.METER_KEY, IdConstants.METER_VALUE_COUNTER) + .withTag(IdConstants.STATUS_KEY, IdConstants.STATUS_VALUE_ROLLBACKED); + + Id SUMMARY_COMMITTED = new Id(IdConstants.SEATA_TRANSACTION) + .withTag(IdConstants.ROLE_KEY, IdConstants.ROLE_VALUE_TC) + .withTag(IdConstants.METER_KEY, IdConstants.METER_VALUE_SUMMARY) + .withTag(IdConstants.STATUS_KEY, IdConstants.STATUS_VALUE_COMMITTED); + + Id SUMMARY_ROLLBACKED = new Id(IdConstants.SEATA_TRANSACTION) + .withTag(IdConstants.ROLE_KEY, IdConstants.ROLE_VALUE_TC) + .withTag(IdConstants.METER_KEY, IdConstants.METER_VALUE_SUMMARY) + .withTag(IdConstants.STATUS_KEY, IdConstants.STATUS_VALUE_ROLLBACKED); + + Id TIMER_COMMITTED = new Id(IdConstants.SEATA_TRANSACTION).withTag(IdConstants.ROLE_KEY, IdConstants.ROLE_VALUE_TC) + .withTag(IdConstants.METER_KEY, IdConstants.METER_VALUE_TIMER) + .withTag(IdConstants.STATUS_KEY, IdConstants.STATUS_VALUE_COMMITTED); + + Id TIMER_ROLLBACK = new Id(IdConstants.SEATA_TRANSACTION).withTag(IdConstants.ROLE_KEY, IdConstants.ROLE_VALUE_TC) + .withTag(IdConstants.METER_KEY, IdConstants.METER_VALUE_TIMER) + .withTag(IdConstants.STATUS_KEY, IdConstants.STATUS_VALUE_ROLLBACKED); + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/metrics/MetricsManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/metrics/MetricsManager.java new file mode 100644 index 000000000..4b30f2b37 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/metrics/MetricsManager.java @@ -0,0 +1,68 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.metrics; + +import java.util.List; + +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.metrics.exporter.Exporter; +import io.seata.metrics.exporter.ExporterFactory; +import io.seata.metrics.registry.Registry; +import io.seata.metrics.registry.RegistryFactory; +import io.seata.server.event.EventBusManager; + +/** + * Metrics manager for init + * + * @author zhengyangyong + */ +public class MetricsManager { + + private static class SingletonHolder { + + private static MetricsManager INSTANCE = new MetricsManager(); + + } + + public static final MetricsManager get() { + return MetricsManager.SingletonHolder.INSTANCE; + } + + private Registry registry; + + public Registry getRegistry() { + return registry; + } + + public void init() { + boolean enabled = ConfigurationFactory.getInstance() + .getBoolean(ConfigurationKeys.METRICS_PREFIX + ConfigurationKeys.METRICS_ENABLED, false); + if (enabled) { + registry = RegistryFactory.getInstance(); + if (registry != null) { + List<Exporter> exporters = ExporterFactory.getInstanceList(); + // only at least one metrics exporter implement had imported in pom then + // need register MetricsSubscriber + if (exporters.size() != 0) { + exporters.forEach(exporter -> exporter.setRegistry(registry)); + EventBusManager.get().register(new MetricsSubscriber(registry)); + } + } + } + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/metrics/MetricsSubscriber.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/metrics/MetricsSubscriber.java new file mode 100644 index 000000000..9776edb5e --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/metrics/MetricsSubscriber.java @@ -0,0 +1,111 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.metrics; + +import com.google.common.eventbus.Subscribe; +import io.seata.core.event.GlobalTransactionEvent; +import io.seata.core.model.GlobalStatus; +import io.seata.metrics.registry.Registry; + +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.TimeUnit; +import java.util.function.Consumer; + +import static io.seata.metrics.IdConstants.APP_ID_KEY; +import static io.seata.metrics.IdConstants.GROUP_KEY; + +/** + * Event subscriber for metrics + * + * @author zhengyangyong + */ +public class MetricsSubscriber { + + private final Registry registry; + + private final Map<GlobalStatus, Consumer<GlobalTransactionEvent>> consumers; + + public MetricsSubscriber(Registry registry) { + this.registry = registry; + consumers = new HashMap<>(); + consumers.put(GlobalStatus.Begin, this::processGlobalStatusBegin); + consumers.put(GlobalStatus.Committed, this::processGlobalStatusCommitted); + consumers.put(GlobalStatus.Rollbacked, this::processGlobalStatusRollbacked); + + consumers.put(GlobalStatus.CommitFailed, this::processGlobalStatusCommitFailed); + consumers.put(GlobalStatus.RollbackFailed, this::processGlobalStatusRollbackFailed); + consumers.put(GlobalStatus.TimeoutRollbacked, this::processGlobalStatusTimeoutRollbacked); + consumers.put(GlobalStatus.TimeoutRollbackFailed, this::processGlobalStatusTimeoutRollbackFailed); + } + + private void processGlobalStatusBegin(GlobalTransactionEvent event) { + registry.getCounter(MeterIdConstants.COUNTER_ACTIVE.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).increase(1); + } + + private void processGlobalStatusCommitted(GlobalTransactionEvent event) { + registry.getCounter(MeterIdConstants.COUNTER_ACTIVE.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).decrease(1); + registry.getCounter(MeterIdConstants.COUNTER_COMMITTED.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).increase(1); + registry.getSummary(MeterIdConstants.SUMMARY_COMMITTED.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).increase(1); + registry.getTimer(MeterIdConstants.TIMER_COMMITTED.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())) + .record(event.getEndTime() - event.getBeginTime(), TimeUnit.MILLISECONDS); + } + + private void processGlobalStatusRollbacked(GlobalTransactionEvent event) { + registry.getCounter(MeterIdConstants.COUNTER_ACTIVE.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).decrease(1); + registry.getCounter(MeterIdConstants.COUNTER_ROLLBACKED.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).increase(1); + registry.getSummary(MeterIdConstants.SUMMARY_ROLLBACKED.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).increase(1); + registry.getTimer(MeterIdConstants.TIMER_ROLLBACK.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())) + .record(event.getEndTime() - event.getBeginTime(), TimeUnit.MILLISECONDS); + } + + private void processGlobalStatusCommitFailed(GlobalTransactionEvent event) { + registry.getCounter(MeterIdConstants.COUNTER_ACTIVE.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).decrease(1); + } + + private void processGlobalStatusRollbackFailed(GlobalTransactionEvent event) { + registry.getCounter(MeterIdConstants.COUNTER_ACTIVE.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).decrease(1); + } + + private void processGlobalStatusTimeoutRollbacked(GlobalTransactionEvent event) { + registry.getCounter(MeterIdConstants.COUNTER_ACTIVE.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).decrease(1); + } + + private void processGlobalStatusTimeoutRollbackFailed(GlobalTransactionEvent event) { + registry.getCounter(MeterIdConstants.COUNTER_ACTIVE.withTag(APP_ID_KEY, event.getApplicationId()) + .withTag(GROUP_KEY, event.getGroup())).decrease(1); + } + + @Subscribe + public void recordGlobalTransactionEventForMetrics(GlobalTransactionEvent event) { + if (registry != null && consumers.containsKey(event.getStatus())) { + consumers.get(event.getStatus()).accept(event); + } + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/AbstractSessionManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/AbstractSessionManager.java new file mode 100644 index 000000000..a719da4db --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/AbstractSessionManager.java @@ -0,0 +1,195 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import io.seata.core.exception.BranchTransactionException; +import io.seata.core.exception.GlobalTransactionException; +import io.seata.core.exception.TransactionException; +import io.seata.core.exception.TransactionExceptionCode; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.GlobalStatus; +import io.seata.server.store.SessionStorable; +import io.seata.server.store.TransactionStoreManager; +import io.seata.server.store.TransactionStoreManager.LogOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * The type Abstract session manager. + */ +public abstract class AbstractSessionManager implements SessionManager, SessionLifecycleListener { + + /** + * The constant LOGGER. + */ + protected static final Logger LOGGER = LoggerFactory.getLogger(AbstractSessionManager.class); + + /** + * The Transaction store manager. + */ + protected TransactionStoreManager transactionStoreManager; + + /** + * The Name. + */ + protected String name; + + /** + * Instantiates a new Abstract session manager. + */ + public AbstractSessionManager() { + } + + /** + * Instantiates a new Abstract session manager. + * @param name the name + */ + public AbstractSessionManager(String name) { + this.name = name; + } + + @Override + public void addGlobalSession(GlobalSession session) throws TransactionException { + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("MANAGER[" + name + "] SESSION[" + session + "] " + LogOperation.GLOBAL_ADD); + } + writeSession(LogOperation.GLOBAL_ADD, session); + } + + @Override + public void updateGlobalSessionStatus(GlobalSession session, GlobalStatus status) throws TransactionException { + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("MANAGER[" + name + "] SESSION[" + session + "] " + LogOperation.GLOBAL_UPDATE); + } + writeSession(LogOperation.GLOBAL_UPDATE, session); + } + + @Override + public void removeGlobalSession(GlobalSession session) throws TransactionException { + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("MANAGER[" + name + "] SESSION[" + session + "] " + LogOperation.GLOBAL_REMOVE); + } + writeSession(LogOperation.GLOBAL_REMOVE, session); + } + + @Override + public void addBranchSession(GlobalSession session, BranchSession branchSession) throws TransactionException { + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("MANAGER[" + name + "] SESSION[" + branchSession + "] " + LogOperation.BRANCH_ADD); + } + writeSession(LogOperation.BRANCH_ADD, branchSession); + } + + @Override + public void updateBranchSessionStatus(BranchSession branchSession, BranchStatus status) + throws TransactionException { + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("MANAGER[" + name + "] SESSION[" + branchSession + "] " + LogOperation.BRANCH_UPDATE); + } + writeSession(LogOperation.BRANCH_UPDATE, branchSession); + } + + @Override + public void removeBranchSession(GlobalSession globalSession, BranchSession branchSession) + throws TransactionException { + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("MANAGER[" + name + "] SESSION[" + branchSession + "] " + LogOperation.BRANCH_REMOVE); + } + writeSession(LogOperation.BRANCH_REMOVE, branchSession); + } + + @Override + public void onBegin(GlobalSession globalSession) throws TransactionException { + addGlobalSession(globalSession); + } + + @Override + public void onStatusChange(GlobalSession globalSession, GlobalStatus status) throws TransactionException { + updateGlobalSessionStatus(globalSession, status); + } + + @Override + public void onBranchStatusChange(GlobalSession globalSession, BranchSession branchSession, BranchStatus status) + throws TransactionException { + updateBranchSessionStatus(branchSession, status); + } + + @Override + public void onAddBranch(GlobalSession globalSession, BranchSession branchSession) throws TransactionException { + addBranchSession(globalSession, branchSession); + } + + @Override + public void onRemoveBranch(GlobalSession globalSession, BranchSession branchSession) throws TransactionException { + removeBranchSession(globalSession, branchSession); + } + + @Override + public void onClose(GlobalSession globalSession) throws TransactionException { + globalSession.setActive(false); + } + + @Override + public void onEnd(GlobalSession globalSession) throws TransactionException { + removeGlobalSession(globalSession); + } + + private void writeSession(LogOperation logOperation, SessionStorable sessionStorable) throws TransactionException { + if (!transactionStoreManager.writeSession(logOperation, sessionStorable)) { + if (LogOperation.GLOBAL_ADD.equals(logOperation)) { + throw new GlobalTransactionException(TransactionExceptionCode.FailedWriteSession, + "Fail to store global session"); + } + else if (LogOperation.GLOBAL_UPDATE.equals(logOperation)) { + throw new GlobalTransactionException(TransactionExceptionCode.FailedWriteSession, + "Fail to update global session"); + } + else if (LogOperation.GLOBAL_REMOVE.equals(logOperation)) { + throw new GlobalTransactionException(TransactionExceptionCode.FailedWriteSession, + "Fail to remove global session"); + } + else if (LogOperation.BRANCH_ADD.equals(logOperation)) { + throw new BranchTransactionException(TransactionExceptionCode.FailedWriteSession, + "Fail to store branch session"); + } + else if (LogOperation.BRANCH_UPDATE.equals(logOperation)) { + throw new BranchTransactionException(TransactionExceptionCode.FailedWriteSession, + "Fail to update branch session"); + } + else if (LogOperation.BRANCH_REMOVE.equals(logOperation)) { + throw new BranchTransactionException(TransactionExceptionCode.FailedWriteSession, + "Fail to remove branch session"); + } + else { + throw new BranchTransactionException(TransactionExceptionCode.FailedWriteSession, + "Unknown LogOperation:" + logOperation.name()); + } + } + } + + @Override + public void destroy() { + } + + /** + * Sets transaction store manager. + * @param transactionStoreManager the transaction store manager + */ + public void setTransactionStoreManager(TransactionStoreManager transactionStoreManager) { + this.transactionStoreManager = transactionStoreManager; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/BranchSession.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/BranchSession.java new file mode 100644 index 000000000..0b0af3228 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/BranchSession.java @@ -0,0 +1,436 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import java.io.IOException; +import java.nio.ByteBuffer; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; + +import io.seata.server.storage.file.lock.FileLocker; +import io.seata.common.util.CompressUtil; +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.BranchType; +import io.seata.server.lock.LockerManagerFactory; +import io.seata.server.store.SessionStorable; +import io.seata.server.store.StoreConfig; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * The type Branch session. + * + * @author sharajava + */ +public class BranchSession implements Lockable, Comparable<BranchSession>, SessionStorable { + + private static final Logger LOGGER = LoggerFactory.getLogger(BranchSession.class); + + private static final int MAX_BRANCH_SESSION_SIZE = StoreConfig.getMaxBranchSessionSize(); + + private static ThreadLocal<ByteBuffer> byteBufferThreadLocal = ThreadLocal + .withInitial(() -> ByteBuffer.allocate(MAX_BRANCH_SESSION_SIZE)); + + private String xid; + + private long transactionId; + + private long branchId; + + private String resourceGroupId; + + private String resourceId; + + private String lockKey; + + private BranchType branchType; + + private BranchStatus status = BranchStatus.Unknown; + + private String clientId; + + private String applicationData; + + private ConcurrentMap<FileLocker.BucketLockMap, Set<String>> lockHolder = new ConcurrentHashMap<>(); + + /** + * Gets application data. + * @return the application data + */ + public String getApplicationData() { + return applicationData; + } + + /** + * Sets application data. + * @param applicationData the application data + */ + public void setApplicationData(String applicationData) { + this.applicationData = applicationData; + } + + /** + * Gets resource group id. + * @return the resource group id + */ + public String getResourceGroupId() { + return resourceGroupId; + } + + /** + * Sets resource group id. + * @param resourceGroupId the resource group id + */ + public void setResourceGroupId(String resourceGroupId) { + this.resourceGroupId = resourceGroupId; + } + + /** + * Gets client id. + * @return the client id + */ + public String getClientId() { + return clientId; + } + + /** + * Sets client id. + * @param clientId the client id + */ + public void setClientId(String clientId) { + this.clientId = clientId; + } + + /** + * Gets resource id. + * @return the resource id + */ + public String getResourceId() { + return resourceId; + } + + /** + * Sets resource id. + * @param resourceId the resource id + */ + public void setResourceId(String resourceId) { + this.resourceId = resourceId; + } + + /** + * Gets lock key. + * @return the lock key + */ + public String getLockKey() { + return lockKey; + } + + /** + * Sets lock key. + * @param lockKey the lock key + */ + public void setLockKey(String lockKey) { + this.lockKey = lockKey; + } + + /** + * Gets branch type. + * @return the branch type + */ + public BranchType getBranchType() { + return branchType; + } + + /** + * Sets branch type. + * @param branchType the branch type + */ + public void setBranchType(BranchType branchType) { + this.branchType = branchType; + } + + /** + * Gets status. + * @return the status + */ + public BranchStatus getStatus() { + return status; + } + + /** + * Sets status. + * @param status the status + */ + public void setStatus(BranchStatus status) { + this.status = status; + } + + /** + * Gets transaction id. + * @return the transaction id + */ + public long getTransactionId() { + return transactionId; + } + + /** + * Sets transaction id. + * @param transactionId the transaction id + */ + public void setTransactionId(long transactionId) { + this.transactionId = transactionId; + } + + /** + * Gets branch id. + * @return the branch id + */ + public long getBranchId() { + return branchId; + } + + /** + * Sets branch id. + * @param branchId the branch id + */ + public void setBranchId(long branchId) { + this.branchId = branchId; + } + + /** + * Gets xid. + * @return the xid + */ + public String getXid() { + return xid; + } + + /** + * Sets xid. + * @param xid the xid + */ + public void setXid(String xid) { + this.xid = xid; + } + + @Override + public String toString() { + return "BR:" + branchId + "/" + transactionId; + } + + @Override + public int compareTo(BranchSession o) { + return Long.compare(this.branchId, o.branchId); + } + + public boolean canBeCommittedAsync() { + return branchType == BranchType.AT || status == BranchStatus.PhaseOne_Failed; + } + + /** + * Gets lock holder. + * @return the lock holder + */ + public ConcurrentMap<FileLocker.BucketLockMap, Set<String>> getLockHolder() { + return lockHolder; + } + + @Override + public boolean lock() throws TransactionException { + if (this.getBranchType().equals(BranchType.AT)) { + return LockerManagerFactory.getLockManager().acquireLock(this); + } + return true; + } + + @Override + public boolean unlock() throws TransactionException { + if (this.getBranchType() == BranchType.AT) { + return LockerManagerFactory.getLockManager().releaseLock(this); + } + return true; + } + + @Override + public byte[] encode() { + + byte[] resourceIdBytes = resourceId != null ? resourceId.getBytes() : null; + + byte[] lockKeyBytes = lockKey != null ? lockKey.getBytes() : null; + + byte[] clientIdBytes = clientId != null ? clientId.getBytes() : null; + + byte[] applicationDataBytes = applicationData != null ? applicationData.getBytes() : null; + + byte[] xidBytes = xid != null ? xid.getBytes() : null; + + byte branchTypeByte = branchType != null ? (byte) branchType.ordinal() : -1; + + int size = calBranchSessionSize(resourceIdBytes, lockKeyBytes, clientIdBytes, applicationDataBytes, xidBytes); + + if (size > MAX_BRANCH_SESSION_SIZE) { + if (lockKeyBytes == null) { + throw new RuntimeException("branch session size exceeded, size : " + size + " maxBranchSessionSize : " + + MAX_BRANCH_SESSION_SIZE); + } + // try compress lockkey + try { + size -= lockKeyBytes.length; + lockKeyBytes = CompressUtil.compress(lockKeyBytes); + } + catch (IOException e) { + LOGGER.error("compress lockKey error", e); + } + finally { + size += lockKeyBytes.length; + } + + if (size > MAX_BRANCH_SESSION_SIZE) { + throw new RuntimeException("compress branch session size exceeded, compressSize : " + size + + " maxBranchSessionSize : " + MAX_BRANCH_SESSION_SIZE); + } + } + + ByteBuffer byteBuffer = byteBufferThreadLocal.get(); + // recycle + byteBuffer.clear(); + + byteBuffer.putLong(transactionId); + byteBuffer.putLong(branchId); + + if (resourceIdBytes != null) { + byteBuffer.putInt(resourceIdBytes.length); + byteBuffer.put(resourceIdBytes); + } + else { + byteBuffer.putInt(0); + } + + if (lockKeyBytes != null) { + byteBuffer.putInt(lockKeyBytes.length); + byteBuffer.put(lockKeyBytes); + } + else { + byteBuffer.putInt(0); + } + + if (clientIdBytes != null) { + byteBuffer.putShort((short) clientIdBytes.length); + byteBuffer.put(clientIdBytes); + } + else { + byteBuffer.putShort((short) 0); + } + + if (applicationDataBytes != null) { + byteBuffer.putInt(applicationDataBytes.length); + byteBuffer.put(applicationDataBytes); + } + else { + byteBuffer.putInt(0); + } + + if (xidBytes != null) { + byteBuffer.putInt(xidBytes.length); + byteBuffer.put(xidBytes); + } + else { + byteBuffer.putInt(0); + } + + byteBuffer.put(branchTypeByte); + + byteBuffer.put((byte) status.getCode()); + byteBuffer.flip(); + byte[] result = new byte[byteBuffer.limit()]; + byteBuffer.get(result); + return result; + } + + private int calBranchSessionSize(byte[] resourceIdBytes, byte[] lockKeyBytes, byte[] clientIdBytes, + byte[] applicationDataBytes, byte[] xidBytes) { + final int size = 8 // trascationId + + 8 // branchId + + 4 // resourceIdBytes.length + + 4 // lockKeyBytes.length + + 2 // clientIdBytes.length + + 4 // applicationDataBytes.length + + 4 // xidBytes.size + + 1 // statusCode + + (resourceIdBytes == null ? 0 : resourceIdBytes.length) + + (lockKeyBytes == null ? 0 : lockKeyBytes.length) + (clientIdBytes == null ? 0 : clientIdBytes.length) + + (applicationDataBytes == null ? 0 : applicationDataBytes.length) + + (xidBytes == null ? 0 : xidBytes.length) + 1; // branchType + return size; + } + + @Override + public void decode(byte[] a) { + ByteBuffer byteBuffer = ByteBuffer.wrap(a); + this.transactionId = byteBuffer.getLong(); + this.branchId = byteBuffer.getLong(); + int resourceLen = byteBuffer.getInt(); + if (resourceLen > 0) { + byte[] byResource = new byte[resourceLen]; + byteBuffer.get(byResource); + this.resourceId = new String(byResource); + } + int lockKeyLen = byteBuffer.getInt(); + if (lockKeyLen > 0) { + byte[] byLockKey = new byte[lockKeyLen]; + byteBuffer.get(byLockKey); + if (CompressUtil.isCompressData(byLockKey)) { + try { + this.lockKey = new String(CompressUtil.uncompress(byLockKey)); + } + catch (IOException e) { + throw new RuntimeException("decompress lockKey error", e); + } + } + else { + this.lockKey = new String(byLockKey); + } + + } + short clientIdLen = byteBuffer.getShort(); + if (clientIdLen > 0) { + byte[] byClientId = new byte[clientIdLen]; + byteBuffer.get(byClientId); + this.clientId = new String(byClientId); + } + int applicationDataLen = byteBuffer.getInt(); + if (applicationDataLen > 0) { + byte[] byApplicationData = new byte[applicationDataLen]; + byteBuffer.get(byApplicationData); + this.applicationData = new String(byApplicationData); + } + int xidLen = byteBuffer.getInt(); + if (xidLen > 0) { + byte[] xidBytes = new byte[xidLen]; + byteBuffer.get(xidBytes); + this.xid = new String(xidBytes); + } + int branchTypeId = byteBuffer.get(); + if (branchTypeId >= 0) { + this.branchType = BranchType.values()[branchTypeId]; + } + this.status = BranchStatus.get(byteBuffer.get()); + + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/BranchSessionHandler.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/BranchSessionHandler.java new file mode 100644 index 000000000..ccb53bd83 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/BranchSessionHandler.java @@ -0,0 +1,39 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import io.seata.core.exception.TransactionException; + +/** + * The Functional Interface Branch session handler + * + * @author wang.liang + * @since 1.5.0 + */ +@FunctionalInterface +public interface BranchSessionHandler { + + Boolean CONTINUE = null; + + /** + * Handle branch session. + * @param branchSession the branch session + * @return the handle result + * @throws TransactionException the transaction exception + */ + Boolean handle(BranchSession branchSession) throws TransactionException; + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/GlobalSession.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/GlobalSession.java new file mode 100644 index 000000000..240657045 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/GlobalSession.java @@ -0,0 +1,684 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import java.nio.ByteBuffer; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashSet; +import java.util.Set; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +import io.seata.common.Constants; +import io.seata.common.DefaultValues; +import io.seata.common.XID; +import io.seata.common.util.StringUtils; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.core.exception.GlobalTransactionException; +import io.seata.core.exception.TransactionException; +import io.seata.core.exception.TransactionExceptionCode; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.BranchType; +import io.seata.core.model.GlobalStatus; +import io.seata.server.UUIDGenerator; +import io.seata.server.lock.LockerManagerFactory; +import io.seata.server.store.SessionStorable; +import io.seata.server.store.StoreConfig; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import static io.seata.core.model.GlobalStatus.AsyncCommitting; +import static io.seata.core.model.GlobalStatus.CommitRetrying; +import static io.seata.core.model.GlobalStatus.Committing; + +/** + * The type Global session. + * + * @author sharajava + */ +public class GlobalSession implements SessionLifecycle, SessionStorable { + + private static final Logger LOGGER = LoggerFactory.getLogger(GlobalSession.class); + + private static final int MAX_GLOBAL_SESSION_SIZE = StoreConfig.getMaxGlobalSessionSize(); + + private static ThreadLocal<ByteBuffer> byteBufferThreadLocal = ThreadLocal + .withInitial(() -> ByteBuffer.allocate(MAX_GLOBAL_SESSION_SIZE)); + + /** + * If the global session's status is (Rollbacking or Committing) and currentTime - + * createTime >= RETRY_DEAD_THRESHOLD then the tx will be remand as need to retry + * rollback + */ + private static final int RETRY_DEAD_THRESHOLD = ConfigurationFactory.getInstance() + .getInt(ConfigurationKeys.RETRY_DEAD_THRESHOLD, DefaultValues.DEFAULT_RETRY_DEAD_THRESHOLD); + + private String xid; + + private long transactionId; + + private volatile GlobalStatus status; + + private String applicationId; + + private String transactionServiceGroup; + + private String transactionName; + + private int timeout; + + private long beginTime; + + private String applicationData; + + private volatile boolean active = true; + + private final ArrayList<BranchSession> branchSessions = new ArrayList<>(); + + private GlobalSessionLock globalSessionLock = new GlobalSessionLock(); + + /** + * Add boolean. + * @param branchSession the branch session + * @return the boolean + */ + public boolean add(BranchSession branchSession) { + return branchSessions.add(branchSession); + } + + /** + * Remove boolean. + * @param branchSession the branch session + * @return the boolean + */ + public boolean remove(BranchSession branchSession) { + return branchSessions.remove(branchSession); + } + + private Set<SessionLifecycleListener> lifecycleListeners = new HashSet<>(); + + /** + * Can be committed async boolean. + * @return the boolean + */ + public boolean canBeCommittedAsync() { + for (BranchSession branchSession : branchSessions) { + if (!branchSession.canBeCommittedAsync()) { + return false; + } + } + return true; + } + + /** + * Has AT branch + * @return the boolean + */ + public boolean hasATBranch() { + for (BranchSession branchSession : branchSessions) { + if (branchSession.getBranchType() == BranchType.AT) { + return true; + } + } + return false; + } + + /** + * Is saga type transaction + * @return is saga + */ + public boolean isSaga() { + if (branchSessions.size() > 0) { + return BranchType.SAGA == branchSessions.get(0).getBranchType(); + } + else { + return StringUtils.isNotBlank(transactionName) + && transactionName.startsWith(Constants.SAGA_TRANS_NAME_PREFIX); + } + } + + /** + * Is timeout boolean. + * @return the boolean + */ + public boolean isTimeout() { + return (System.currentTimeMillis() - beginTime) > timeout; + } + + /** + * prevent could not handle committing and rollbacking transaction + * @return if true retry commit or roll back + */ + public boolean isDeadSession() { + return (System.currentTimeMillis() - beginTime) > RETRY_DEAD_THRESHOLD; + } + + @Override + public void begin() throws TransactionException { + this.status = GlobalStatus.Begin; + this.beginTime = System.currentTimeMillis(); + this.active = true; + for (SessionLifecycleListener lifecycleListener : lifecycleListeners) { + lifecycleListener.onBegin(this); + } + } + + @Override + public void changeStatus(GlobalStatus status) throws TransactionException { + this.status = status; + for (SessionLifecycleListener lifecycleListener : lifecycleListeners) { + lifecycleListener.onStatusChange(this, status); + } + } + + @Override + public void changeBranchStatus(BranchSession branchSession, BranchStatus status) throws TransactionException { + branchSession.setStatus(status); + for (SessionLifecycleListener lifecycleListener : lifecycleListeners) { + lifecycleListener.onBranchStatusChange(this, branchSession, status); + } + } + + @Override + public boolean isActive() { + return active; + } + + @Override + public void close() throws TransactionException { + if (active) { + for (SessionLifecycleListener lifecycleListener : lifecycleListeners) { + lifecycleListener.onClose(this); + } + } + } + + @Override + public void end() throws TransactionException { + // Clean locks first + clean(); + + for (SessionLifecycleListener lifecycleListener : lifecycleListeners) { + lifecycleListener.onEnd(this); + } + } + + public void clean() throws TransactionException { + if (this.hasATBranch()) { + if (!LockerManagerFactory.getLockManager().releaseGlobalSessionLock(this)) { + throw new TransactionException("UnLock globalSession error, xid = " + this.xid); + } + } + } + + /** + * Close and clean. + * @throws TransactionException the transaction exception + */ + public void closeAndClean() throws TransactionException { + close(); + clean(); + } + + /** + * Add session lifecycle listener. + * @param sessionLifecycleListener the session lifecycle listener + */ + public void addSessionLifecycleListener(SessionLifecycleListener sessionLifecycleListener) { + lifecycleListeners.add(sessionLifecycleListener); + } + + /** + * Remove session lifecycle listener. + * @param sessionLifecycleListener the session lifecycle listener + */ + public void removeSessionLifecycleListener(SessionLifecycleListener sessionLifecycleListener) { + lifecycleListeners.remove(sessionLifecycleListener); + } + + @Override + public void addBranch(BranchSession branchSession) throws TransactionException { + for (SessionLifecycleListener lifecycleListener : lifecycleListeners) { + lifecycleListener.onAddBranch(this, branchSession); + } + branchSession.setStatus(BranchStatus.Registered); + add(branchSession); + } + + @Override + public void removeBranch(BranchSession branchSession) throws TransactionException { + // do not unlock if global status in (Committing, CommitRetrying, + // AsyncCommitting), + // because it's already unlocked in 'DefaultCore.commit()' + if (status != Committing && status != CommitRetrying && status != AsyncCommitting) { + if (!branchSession.unlock()) { + throw new TransactionException( + "Unlock branch lock failed, xid = " + this.xid + ", branchId = " + branchSession.getBranchId()); + } + } + for (SessionLifecycleListener lifecycleListener : lifecycleListeners) { + lifecycleListener.onRemoveBranch(this, branchSession); + } + remove(branchSession); + } + + /** + * Gets branch. + * @param branchId the branch id + * @return the branch + */ + public BranchSession getBranch(long branchId) { + synchronized (branchSessions) { + for (BranchSession branchSession : branchSessions) { + if (branchSession.getBranchId() == branchId) { + return branchSession; + } + } + + return null; + } + } + + /** + * Gets sorted branches. + * @return the sorted branches + */ + public ArrayList<BranchSession> getSortedBranches() { + return new ArrayList<>(branchSessions); + } + + /** + * Gets reverse sorted branches. + * @return the reverse sorted branches + */ + public ArrayList<BranchSession> getReverseSortedBranches() { + ArrayList<BranchSession> reversed = new ArrayList<>(branchSessions); + Collections.reverse(reversed); + return reversed; + } + + /** + * Instantiates a new Global session. + */ + public GlobalSession() { + } + + /** + * Instantiates a new Global session. + * @param applicationId the application id + * @param transactionServiceGroup the transaction service group + * @param transactionName the transaction name + * @param timeout the timeout + */ + public GlobalSession(String applicationId, String transactionServiceGroup, String transactionName, int timeout) { + this.transactionId = UUIDGenerator.generateUUID(); + this.status = GlobalStatus.Begin; + + this.applicationId = applicationId; + this.transactionServiceGroup = transactionServiceGroup; + this.transactionName = transactionName; + this.timeout = timeout; + this.xid = XID.generateXID(transactionId); + } + + /** + * Gets transaction id. + * @return the transaction id + */ + public long getTransactionId() { + return transactionId; + } + + /** + * Sets transaction id. + * @param transactionId the transaction id + */ + public void setTransactionId(long transactionId) { + this.transactionId = transactionId; + } + + /** + * Gets status. + * @return the status + */ + public GlobalStatus getStatus() { + return status; + } + + /** + * Sets status. + * @param status the status + */ + public void setStatus(GlobalStatus status) { + this.status = status; + } + + /** + * Gets xid. + * @return the xid + */ + public String getXid() { + return xid; + } + + /** + * Sets xid. + * @param xid the xid + */ + public void setXid(String xid) { + this.xid = xid; + } + + /** + * Gets application id. + * @return the application id + */ + public String getApplicationId() { + return applicationId; + } + + /** + * Gets transaction service group. + * @return the transaction service group + */ + public String getTransactionServiceGroup() { + return transactionServiceGroup; + } + + /** + * Gets transaction name. + * @return the transaction name + */ + public String getTransactionName() { + return transactionName; + } + + /** + * Gets timeout. + * @return the timeout + */ + public int getTimeout() { + return timeout; + } + + /** + * Gets begin time. + * @return the begin time + */ + public long getBeginTime() { + return beginTime; + } + + /** + * Sets begin time. + * @param beginTime the begin time + */ + public void setBeginTime(long beginTime) { + this.beginTime = beginTime; + } + + /** + * Gets application data. + * @return the application data + */ + public String getApplicationData() { + return applicationData; + } + + /** + * Sets application data. + * @param applicationData the application data + */ + public void setApplicationData(String applicationData) { + this.applicationData = applicationData; + } + + /** + * Create global session global session. + * @param applicationId the application id + * @param txServiceGroup the tx service group + * @param txName the tx name + * @param timeout the timeout + * @return the global session + */ + public static GlobalSession createGlobalSession(String applicationId, String txServiceGroup, String txName, + int timeout) { + GlobalSession session = new GlobalSession(applicationId, txServiceGroup, txName, timeout); + return session; + } + + /** + * Sets active. + * @param active the active + */ + public void setActive(boolean active) { + this.active = active; + } + + @Override + public byte[] encode() { + byte[] byApplicationIdBytes = applicationId != null ? applicationId.getBytes() : null; + + byte[] byServiceGroupBytes = transactionServiceGroup != null ? transactionServiceGroup.getBytes() : null; + + byte[] byTxNameBytes = transactionName != null ? transactionName.getBytes() : null; + + byte[] xidBytes = xid != null ? xid.getBytes() : null; + + byte[] applicationDataBytes = applicationData != null ? applicationData.getBytes() : null; + + int size = calGlobalSessionSize(byApplicationIdBytes, byServiceGroupBytes, byTxNameBytes, xidBytes, + applicationDataBytes); + + if (size > MAX_GLOBAL_SESSION_SIZE) { + throw new RuntimeException("global session size exceeded, size : " + size + " maxBranchSessionSize : " + + MAX_GLOBAL_SESSION_SIZE); + } + ByteBuffer byteBuffer = byteBufferThreadLocal.get(); + // recycle + byteBuffer.clear(); + + byteBuffer.putLong(transactionId); + byteBuffer.putInt(timeout); + if (byApplicationIdBytes != null) { + byteBuffer.putShort((short) byApplicationIdBytes.length); + byteBuffer.put(byApplicationIdBytes); + } + else { + byteBuffer.putShort((short) 0); + } + if (byServiceGroupBytes != null) { + byteBuffer.putShort((short) byServiceGroupBytes.length); + byteBuffer.put(byServiceGroupBytes); + } + else { + byteBuffer.putShort((short) 0); + } + if (byTxNameBytes != null) { + byteBuffer.putShort((short) byTxNameBytes.length); + byteBuffer.put(byTxNameBytes); + } + else { + byteBuffer.putShort((short) 0); + } + if (xidBytes != null) { + byteBuffer.putInt(xidBytes.length); + byteBuffer.put(xidBytes); + } + else { + byteBuffer.putInt(0); + } + if (applicationDataBytes != null) { + byteBuffer.putInt(applicationDataBytes.length); + byteBuffer.put(applicationDataBytes); + } + else { + byteBuffer.putInt(0); + } + + byteBuffer.putLong(beginTime); + byteBuffer.put((byte) status.getCode()); + byteBuffer.flip(); + byte[] result = new byte[byteBuffer.limit()]; + byteBuffer.get(result); + return result; + } + + private int calGlobalSessionSize(byte[] byApplicationIdBytes, byte[] byServiceGroupBytes, byte[] byTxNameBytes, + byte[] xidBytes, byte[] applicationDataBytes) { + final int size = 8 // transactionId + + 4 // timeout + + 2 // byApplicationIdBytes.length + + 2 // byServiceGroupBytes.length + + 2 // byTxNameBytes.length + + 4 // xidBytes.length + + 4 // applicationDataBytes.length + + 8 // beginTime + + 1 // statusCode + + (byApplicationIdBytes == null ? 0 : byApplicationIdBytes.length) + + (byServiceGroupBytes == null ? 0 : byServiceGroupBytes.length) + + (byTxNameBytes == null ? 0 : byTxNameBytes.length) + (xidBytes == null ? 0 : xidBytes.length) + + (applicationDataBytes == null ? 0 : applicationDataBytes.length); + return size; + } + + @Override + public void decode(byte[] a) { + ByteBuffer byteBuffer = ByteBuffer.wrap(a); + this.transactionId = byteBuffer.getLong(); + this.timeout = byteBuffer.getInt(); + short applicationIdLen = byteBuffer.getShort(); + if (applicationIdLen > 0) { + byte[] byApplicationId = new byte[applicationIdLen]; + byteBuffer.get(byApplicationId); + this.applicationId = new String(byApplicationId); + } + short serviceGroupLen = byteBuffer.getShort(); + if (serviceGroupLen > 0) { + byte[] byServiceGroup = new byte[serviceGroupLen]; + byteBuffer.get(byServiceGroup); + this.transactionServiceGroup = new String(byServiceGroup); + } + short txNameLen = byteBuffer.getShort(); + if (txNameLen > 0) { + byte[] byTxName = new byte[txNameLen]; + byteBuffer.get(byTxName); + this.transactionName = new String(byTxName); + } + int xidLen = byteBuffer.getInt(); + if (xidLen > 0) { + byte[] xidBytes = new byte[xidLen]; + byteBuffer.get(xidBytes); + this.xid = new String(xidBytes); + } + int applicationDataLen = byteBuffer.getInt(); + if (applicationDataLen > 0) { + byte[] applicationDataLenBytes = new byte[applicationDataLen]; + byteBuffer.get(applicationDataLenBytes); + this.applicationData = new String(applicationDataLenBytes); + } + + this.beginTime = byteBuffer.getLong(); + this.status = GlobalStatus.get(byteBuffer.get()); + } + + /** + * Has branch boolean. + * @return the boolean + */ + public boolean hasBranch() { + return branchSessions.size() > 0; + } + + public void lock() throws TransactionException { + globalSessionLock.lock(); + } + + public void unlock() { + globalSessionLock.unlock(); + } + + private static class GlobalSessionLock { + + private Lock globalSessionLock = new ReentrantLock(); + + private static final int GLOBAL_SESSION_LOCK_TIME_OUT_MILLS = 2 * 1000; + + public void lock() throws TransactionException { + try { + if (globalSessionLock.tryLock(GLOBAL_SESSION_LOCK_TIME_OUT_MILLS, TimeUnit.MILLISECONDS)) { + return; + } + } + catch (InterruptedException e) { + LOGGER.error("Interrupted error", e); + } + throw new GlobalTransactionException(TransactionExceptionCode.FailedLockGlobalTranscation, + "Lock global session failed"); + } + + public void unlock() { + globalSessionLock.unlock(); + } + + } + + @FunctionalInterface + public interface LockRunnable { + + void run() throws TransactionException; + + } + + @FunctionalInterface + public interface LockCallable<V> { + + V call() throws TransactionException; + + } + + public ArrayList<BranchSession> getBranchSessions() { + return branchSessions; + } + + public void asyncCommit() throws TransactionException { + this.addSessionLifecycleListener(SessionHolder.getAsyncCommittingSessionManager()); + SessionHolder.getAsyncCommittingSessionManager().addGlobalSession(this); + this.changeStatus(GlobalStatus.AsyncCommitting); + } + + public void queueToRetryCommit() throws TransactionException { + this.addSessionLifecycleListener(SessionHolder.getRetryCommittingSessionManager()); + SessionHolder.getRetryCommittingSessionManager().addGlobalSession(this); + this.changeStatus(GlobalStatus.CommitRetrying); + } + + public void queueToRetryRollback() throws TransactionException { + this.addSessionLifecycleListener(SessionHolder.getRetryRollbackingSessionManager()); + SessionHolder.getRetryRollbackingSessionManager().addGlobalSession(this); + GlobalStatus currentStatus = this.getStatus(); + if (SessionHelper.isTimeoutGlobalStatus(currentStatus)) { + this.changeStatus(GlobalStatus.TimeoutRollbackRetrying); + } + else { + this.changeStatus(GlobalStatus.RollbackRetrying); + } + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/GlobalSessionHandler.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/GlobalSessionHandler.java new file mode 100644 index 000000000..a7ddd2d78 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/GlobalSessionHandler.java @@ -0,0 +1,36 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import io.seata.core.exception.TransactionException; + +/** + * The Functional Interface Global session handler + * + * @author wang.liang + * @since 1.5.0 + */ +@FunctionalInterface +public interface GlobalSessionHandler { + + /** + * Handle global session. + * @param globalSession the global session + * @throws TransactionException the transaction exception + */ + void handle(GlobalSession globalSession) throws TransactionException; + +} \ No newline at end of file diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/Lockable.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/Lockable.java new file mode 100644 index 000000000..71205a9e2 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/Lockable.java @@ -0,0 +1,41 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import io.seata.core.exception.TransactionException; + +/** + * The interface Lockable. + * + * @author sharajava + */ +public interface Lockable { + + /** + * Lock boolean. + * @return the boolean + * @throws TransactionException the transaction exception + */ + boolean lock() throws TransactionException; + + /** + * Unlock boolean. + * @return the boolean + * @throws TransactionException the transaction exception + */ + boolean unlock() throws TransactionException; + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/Reloadable.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/Reloadable.java new file mode 100644 index 000000000..74f87de19 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/Reloadable.java @@ -0,0 +1,30 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +/** + * Service contains states which can be reloaded. + * + * @author sharajava + */ +public interface Reloadable { + + /** + * Reload states. + */ + void reload(); + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionCondition.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionCondition.java new file mode 100644 index 000000000..3f6d36ead --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionCondition.java @@ -0,0 +1,132 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import io.seata.core.model.GlobalStatus; + +/** + * The type Session condition. + * + * @author slievrly + */ +public class SessionCondition { + + private Long transactionId; + + private String xid; + + private GlobalStatus status; + + private GlobalStatus[] statuses; + + private long overTimeAliveMills; + + /** + * Instantiates a new Session condition. + */ + public SessionCondition() { + } + + /** + * Instantiates a new Session condition. + * @param xid the xid + */ + public SessionCondition(String xid) { + this.xid = xid; + } + + /** + * Instantiates a new Session condition. + * @param status the status + */ + public SessionCondition(GlobalStatus status) { + this.status = status; + statuses = new GlobalStatus[] { status }; + } + + /** + * Instantiates a new Session condition. + * @param statuses the statuses + */ + public SessionCondition(GlobalStatus[] statuses) { + this.statuses = statuses; + } + + /** + * Instantiates a new Session condition. + * @param overTimeAliveMills the over time alive mills + */ + public SessionCondition(long overTimeAliveMills) { + this.overTimeAliveMills = overTimeAliveMills; + } + + /** + * Gets status. + * @return the status + */ + public GlobalStatus getStatus() { + return status; + } + + /** + * Sets status. + * @param status the status + */ + public void setStatus(GlobalStatus status) { + this.status = status; + } + + /** + * Gets over time alive mills. + * @return the over time alive mills + */ + public long getOverTimeAliveMills() { + return overTimeAliveMills; + } + + /** + * Sets over time alive mills. + * @param overTimeAliveMills the over time alive mills + */ + public void setOverTimeAliveMills(long overTimeAliveMills) { + this.overTimeAliveMills = overTimeAliveMills; + } + + public Long getTransactionId() { + return transactionId; + } + + public void setTransactionId(Long transactionId) { + this.transactionId = transactionId; + } + + public String getXid() { + return xid; + } + + public void setXid(String xid) { + this.xid = xid; + } + + public GlobalStatus[] getStatuses() { + return statuses; + } + + public void setStatuses(GlobalStatus[] statuses) { + this.statuses = statuses; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionHelper.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionHelper.java new file mode 100644 index 000000000..63f77945d --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionHelper.java @@ -0,0 +1,194 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import java.util.Collection; + +import io.seata.core.context.RootContext; +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchType; +import io.seata.core.model.GlobalStatus; +import io.seata.server.UUIDGenerator; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.slf4j.MDC; + +/** + * The type Session helper. + * + * @author sharajava + */ +public class SessionHelper { + + private static final Logger LOGGER = LoggerFactory.getLogger(SessionHelper.class); + + private SessionHelper() { + } + + public static BranchSession newBranchByGlobal(GlobalSession globalSession, BranchType branchType, String resourceId, + String lockKeys, String clientId) { + return newBranchByGlobal(globalSession, branchType, resourceId, null, lockKeys, clientId); + } + + /** + * New branch by global branch session. + * @param globalSession the global session + * @param branchType the branch type + * @param resourceId the resource id + * @param lockKeys the lock keys + * @param clientId the client id + * @return the branch session + */ + public static BranchSession newBranchByGlobal(GlobalSession globalSession, BranchType branchType, String resourceId, + String applicationData, String lockKeys, String clientId) { + BranchSession branchSession = new BranchSession(); + + branchSession.setXid(globalSession.getXid()); + branchSession.setTransactionId(globalSession.getTransactionId()); + branchSession.setBranchId(UUIDGenerator.generateUUID()); + branchSession.setBranchType(branchType); + branchSession.setResourceId(resourceId); + branchSession.setLockKey(lockKeys); + branchSession.setClientId(clientId); + branchSession.setApplicationData(applicationData); + + return branchSession; + } + + /** + * New branch + * @param branchType the branch type + * @param xid Transaction id. + * @param branchId Branch id. + * @param resourceId Resource id. + * @param applicationData Application data bind with this branch. + * @return the branch session + */ + public static BranchSession newBranch(BranchType branchType, String xid, long branchId, String resourceId, + String applicationData) { + BranchSession branchSession = new BranchSession(); + branchSession.setXid(xid); + branchSession.setBranchId(branchId); + branchSession.setBranchType(branchType); + branchSession.setResourceId(resourceId); + branchSession.setApplicationData(applicationData); + return branchSession; + } + + /** + * End committed. + * @param globalSession the global session + * @throws TransactionException the transaction exception + */ + public static void endCommitted(GlobalSession globalSession) throws TransactionException { + globalSession.changeStatus(GlobalStatus.Committed); + globalSession.end(); + } + + /** + * End commit failed. + * @param globalSession the global session + * @throws TransactionException the transaction exception + */ + public static void endCommitFailed(GlobalSession globalSession) throws TransactionException { + globalSession.changeStatus(GlobalStatus.CommitFailed); + globalSession.end(); + } + + /** + * End rollbacked. + * @param globalSession the global session + * @throws TransactionException the transaction exception + */ + public static void endRollbacked(GlobalSession globalSession) throws TransactionException { + GlobalStatus currentStatus = globalSession.getStatus(); + if (isTimeoutGlobalStatus(currentStatus)) { + globalSession.changeStatus(GlobalStatus.TimeoutRollbacked); + } + else { + globalSession.changeStatus(GlobalStatus.Rollbacked); + } + globalSession.end(); + } + + /** + * End rollback failed. + * @param globalSession the global session + * @throws TransactionException the transaction exception + */ + public static void endRollbackFailed(GlobalSession globalSession) throws TransactionException { + GlobalStatus currentStatus = globalSession.getStatus(); + if (isTimeoutGlobalStatus(currentStatus)) { + globalSession.changeStatus(GlobalStatus.TimeoutRollbackFailed); + } + else { + globalSession.changeStatus(GlobalStatus.RollbackFailed); + } + globalSession.end(); + } + + public static boolean isTimeoutGlobalStatus(GlobalStatus status) { + return status == GlobalStatus.TimeoutRollbacked || status == GlobalStatus.TimeoutRollbackFailed + || status == GlobalStatus.TimeoutRollbacking || status == GlobalStatus.TimeoutRollbackRetrying; + } + + /** + * Foreach global sessions. + * @param sessions the global sessions + * @param handler the handler + * @since 1.5.0 + */ + public static void forEach(Collection<GlobalSession> sessions, GlobalSessionHandler handler) { + for (GlobalSession globalSession : sessions) { + try { + MDC.put(RootContext.MDC_KEY_XID, globalSession.getXid()); + handler.handle(globalSession); + } + catch (Throwable th) { + LOGGER.error("handle global session failed: {}", globalSession.getXid(), th); + } + finally { + MDC.remove(RootContext.MDC_KEY_XID); + } + } + } + + /** + * Foreach branch sessions. + * @param sessions the branch session + * @param handler the handler + * @since 1.5.0 + */ + public static Boolean forEach(Collection<BranchSession> sessions, BranchSessionHandler handler) + throws TransactionException { + Boolean result; + for (BranchSession branchSession : sessions) { + try { + MDC.put(RootContext.MDC_KEY_BRANCH_ID, String.valueOf(branchSession.getBranchId())); + result = handler.handle(branchSession); + if (result == null) { + continue; + } + return result; + } + finally { + MDC.remove(RootContext.MDC_KEY_BRANCH_ID); + } + } + return null; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionHolder.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionHolder.java new file mode 100644 index 000000000..bf03ed979 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionHolder.java @@ -0,0 +1,441 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Iterator; +import java.util.List; + +import io.seata.common.exception.ShouldNeverHappenException; +import io.seata.common.exception.StoreException; +import io.seata.common.loader.EnhancedServiceLoader; +import io.seata.common.util.CollectionUtils; +import io.seata.common.util.StringUtils; +import io.seata.config.Configuration; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.core.exception.TransactionException; +import io.seata.core.model.GlobalStatus; +import io.seata.core.store.StoreMode; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import static io.seata.common.Constants.ASYNC_COMMITTING; +import static io.seata.common.Constants.RETRY_COMMITTING; +import static io.seata.common.Constants.RETRY_ROLLBACKING; +import static io.seata.common.Constants.TX_TIMEOUT_CHECK; +import static io.seata.common.Constants.UNDOLOG_DELETE; + +/** + * The type Session holder. + * + * @author sharajava + */ +public class SessionHolder { + + private static final Logger LOGGER = LoggerFactory.getLogger(SessionHolder.class); + + /** + * The constant CONFIG. + */ + protected static final Configuration CONFIG = ConfigurationFactory.getInstance(); + + /** + * The constant ROOT_SESSION_MANAGER_NAME. + */ + public static final String ROOT_SESSION_MANAGER_NAME = "root.data"; + + /** + * The constant ASYNC_COMMITTING_SESSION_MANAGER_NAME. + */ + public static final String ASYNC_COMMITTING_SESSION_MANAGER_NAME = "async.commit.data"; + + /** + * The constant RETRY_COMMITTING_SESSION_MANAGER_NAME. + */ + public static final String RETRY_COMMITTING_SESSION_MANAGER_NAME = "retry.commit.data"; + + /** + * The constant RETRY_ROLLBACKING_SESSION_MANAGER_NAME. + */ + public static final String RETRY_ROLLBACKING_SESSION_MANAGER_NAME = "retry.rollback.data"; + + /** + * The default session store dir + */ + public static final String DEFAULT_SESSION_STORE_FILE_DIR = "sessionStore"; + + private static SessionManager ROOT_SESSION_MANAGER; + + private static SessionManager ASYNC_COMMITTING_SESSION_MANAGER; + + private static SessionManager RETRY_COMMITTING_SESSION_MANAGER; + + private static SessionManager RETRY_ROLLBACKING_SESSION_MANAGER; + + /** + * Init. + * @param mode the store mode: file, db + * @throws IOException the io exception + */ + public static void init(String mode) { + if (StringUtils.isBlank(mode)) { + mode = CONFIG.getConfig(ConfigurationKeys.STORE_MODE); + } + StoreMode storeMode = StoreMode.get(mode); + if (StoreMode.DB.equals(storeMode)) { + ROOT_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, StoreMode.DB.getName()); + ASYNC_COMMITTING_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, StoreMode.DB.getName(), + new Object[] { ASYNC_COMMITTING_SESSION_MANAGER_NAME }); + RETRY_COMMITTING_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, StoreMode.DB.getName(), + new Object[] { RETRY_COMMITTING_SESSION_MANAGER_NAME }); + RETRY_ROLLBACKING_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, StoreMode.DB.getName(), + new Object[] { RETRY_ROLLBACKING_SESSION_MANAGER_NAME }); + } + else if (StoreMode.FILE.equals(storeMode)) { + String sessionStorePath = CONFIG.getConfig(ConfigurationKeys.STORE_FILE_DIR, + DEFAULT_SESSION_STORE_FILE_DIR); + if (StringUtils.isBlank(sessionStorePath)) { + throw new StoreException("the {store.file.dir} is empty."); + } + ROOT_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, StoreMode.FILE.getName(), + new Object[] { ROOT_SESSION_MANAGER_NAME, sessionStorePath }); + ASYNC_COMMITTING_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, + StoreMode.FILE.getName(), new Class[] { String.class, String.class }, + new Object[] { ASYNC_COMMITTING_SESSION_MANAGER_NAME, null }); + RETRY_COMMITTING_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, + StoreMode.FILE.getName(), new Class[] { String.class, String.class }, + new Object[] { RETRY_COMMITTING_SESSION_MANAGER_NAME, null }); + RETRY_ROLLBACKING_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, + StoreMode.FILE.getName(), new Class[] { String.class, String.class }, + new Object[] { RETRY_ROLLBACKING_SESSION_MANAGER_NAME, null }); + } + else if (StoreMode.REDIS.equals(storeMode)) { + ROOT_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, StoreMode.REDIS.getName()); + ASYNC_COMMITTING_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, + StoreMode.REDIS.getName(), new Object[] { ASYNC_COMMITTING_SESSION_MANAGER_NAME }); + RETRY_COMMITTING_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, + StoreMode.REDIS.getName(), new Object[] { RETRY_COMMITTING_SESSION_MANAGER_NAME }); + RETRY_ROLLBACKING_SESSION_MANAGER = EnhancedServiceLoader.load(SessionManager.class, + StoreMode.REDIS.getName(), new Object[] { RETRY_ROLLBACKING_SESSION_MANAGER_NAME }); + } + else { + // unknown store + throw new IllegalArgumentException("unknown store mode:" + mode); + } + reload(storeMode); + } + + // region reload + + /** + * Reload. + */ + protected static void reload(StoreMode storeMode) { + if (ROOT_SESSION_MANAGER instanceof Reloadable) { + ((Reloadable) ROOT_SESSION_MANAGER).reload(); + } + + Collection<GlobalSession> allSessions = ROOT_SESSION_MANAGER.allSessions(); + if (CollectionUtils.isNotEmpty(allSessions)) { + List<GlobalSession> removeGlobalSessions = new ArrayList<>(); + Iterator<GlobalSession> iterator = allSessions.iterator(); + while (iterator.hasNext()) { + GlobalSession globalSession = iterator.next(); + GlobalStatus globalStatus = globalSession.getStatus(); + switch (globalStatus) { + case UnKnown: + case Committed: + case CommitFailed: + case Rollbacked: + case RollbackFailed: + case TimeoutRollbacked: + case TimeoutRollbackFailed: + case Finished: + removeGlobalSessions.add(globalSession); + break; + case AsyncCommitting: + if (storeMode == StoreMode.FILE) { + queueToAsyncCommitting(globalSession); + } + break; + default: { + if (storeMode == StoreMode.FILE) { + lockBranchSessions(globalSession.getSortedBranches()); + + switch (globalStatus) { + case Committing: + case CommitRetrying: + queueToRetryCommit(globalSession); + break; + case Rollbacking: + case RollbackRetrying: + case TimeoutRollbacking: + case TimeoutRollbackRetrying: + queueToRetryRollback(globalSession); + break; + case Begin: + globalSession.setActive(true); + break; + default: + throw new ShouldNeverHappenException("NOT properly handled " + globalStatus); + } + } + break; + } + } + } + for (GlobalSession globalSession : removeGlobalSessions) { + removeInErrorState(globalSession); + } + } + } + + private static void removeInErrorState(GlobalSession globalSession) { + try { + LOGGER.warn("The global session should NOT be {}, remove it. xid = {}", globalSession.getStatus(), + globalSession.getXid()); + ROOT_SESSION_MANAGER.removeGlobalSession(globalSession); + if (LOGGER.isInfoEnabled()) { + LOGGER.info("Remove global session succeed, xid = {}, status = {}", globalSession.getXid(), + globalSession.getStatus()); + } + } + catch (Exception e) { + LOGGER.error("Remove global session failed, xid = {}, status = {}", globalSession.getXid(), + globalSession.getStatus(), e); + } + } + + private static void queueToAsyncCommitting(GlobalSession globalSession) { + try { + globalSession.addSessionLifecycleListener(getAsyncCommittingSessionManager()); + getAsyncCommittingSessionManager().addGlobalSession(globalSession); + } + catch (TransactionException e) { + throw new ShouldNeverHappenException(e); + } + } + + private static void lockBranchSessions(ArrayList<BranchSession> branchSessions) { + branchSessions.forEach(branchSession -> { + try { + branchSession.lock(); + } + catch (TransactionException e) { + throw new ShouldNeverHappenException(e); + } + }); + } + + private static void queueToRetryCommit(GlobalSession globalSession) { + try { + globalSession.addSessionLifecycleListener(getRetryCommittingSessionManager()); + getRetryCommittingSessionManager().addGlobalSession(globalSession); + } + catch (TransactionException e) { + throw new ShouldNeverHappenException(e); + } + } + + private static void queueToRetryRollback(GlobalSession globalSession) { + try { + globalSession.addSessionLifecycleListener(getRetryRollbackingSessionManager()); + getRetryRollbackingSessionManager().addGlobalSession(globalSession); + } + catch (TransactionException e) { + throw new ShouldNeverHappenException(e); + } + } + + // endregion + + // region get session manager + + /** + * Gets root session manager. + * @return the root session manager + */ + public static SessionManager getRootSessionManager() { + if (ROOT_SESSION_MANAGER == null) { + throw new ShouldNeverHappenException("SessionManager is NOT init!"); + } + return ROOT_SESSION_MANAGER; + } + + /** + * Gets async committing session manager. + * @return the async committing session manager + */ + public static SessionManager getAsyncCommittingSessionManager() { + if (ASYNC_COMMITTING_SESSION_MANAGER == null) { + throw new ShouldNeverHappenException("SessionManager is NOT init!"); + } + return ASYNC_COMMITTING_SESSION_MANAGER; + } + + /** + * Gets retry committing session manager. + * @return the retry committing session manager + */ + public static SessionManager getRetryCommittingSessionManager() { + if (RETRY_COMMITTING_SESSION_MANAGER == null) { + throw new ShouldNeverHappenException("SessionManager is NOT init!"); + } + return RETRY_COMMITTING_SESSION_MANAGER; + } + + /** + * Gets retry rollbacking session manager. + * @return the retry rollbacking session manager + */ + public static SessionManager getRetryRollbackingSessionManager() { + if (RETRY_ROLLBACKING_SESSION_MANAGER == null) { + throw new ShouldNeverHappenException("SessionManager is NOT init!"); + } + return RETRY_ROLLBACKING_SESSION_MANAGER; + } + + // endregion + + /** + * Find global session. + * @param xid the xid + * @return the global session + */ + public static GlobalSession findGlobalSession(String xid) { + return findGlobalSession(xid, true); + } + + /** + * Find global session. + * @param xid the xid + * @param withBranchSessions the withBranchSessions + * @return the global session + */ + public static GlobalSession findGlobalSession(String xid, boolean withBranchSessions) { + return getRootSessionManager().findGlobalSession(xid, withBranchSessions); + } + + /** + * lock and execute + * @param globalSession the global session + * @param lockCallable the lock Callable + * @return the value + */ + public static <T> T lockAndExecute(GlobalSession globalSession, GlobalSession.LockCallable<T> lockCallable) + throws TransactionException { + return getRootSessionManager().lockAndExecute(globalSession, lockCallable); + } + + /** + * retry rollbacking lock + * @return the boolean + */ + public static boolean retryRollbackingLock() { + return getRootSessionManager().scheduledLock(RETRY_ROLLBACKING); + } + + /** + * retry committing lock + * @return the boolean + */ + public static boolean retryCommittingLock() { + return getRootSessionManager().scheduledLock(RETRY_COMMITTING); + } + + /** + * async committing lock + * @return the boolean + */ + public static boolean asyncCommittingLock() { + return getRootSessionManager().scheduledLock(ASYNC_COMMITTING); + } + + /** + * tx timeout check lOck + * @return the boolean + */ + public static boolean txTimeoutCheckLock() { + return getRootSessionManager().scheduledLock(TX_TIMEOUT_CHECK); + } + + /** + * undolog delete lock + * @return the boolean + */ + public static boolean undoLogDeleteLock() { + return getRootSessionManager().scheduledLock(UNDOLOG_DELETE); + } + + /** + * un retry rollbacking lock + * @return the boolean + */ + public static boolean unRetryRollbackingLock() { + return getRootSessionManager().unScheduledLock(RETRY_ROLLBACKING); + } + + /** + * un retry committing lock + * @return the boolean + */ + public static boolean unRetryCommittingLock() { + return getRootSessionManager().unScheduledLock(RETRY_COMMITTING); + } + + /** + * un async committing lock + * @return the boolean + */ + public static boolean unAsyncCommittingLock() { + return getRootSessionManager().unScheduledLock(ASYNC_COMMITTING); + } + + /** + * un tx timeout check lOck + * @return the boolean + */ + public static boolean unTxTimeoutCheckLock() { + return getRootSessionManager().unScheduledLock(TX_TIMEOUT_CHECK); + } + + /** + * un undolog delete lock + * @return the boolean + */ + public static boolean unUndoLogDeleteLock() { + return getRootSessionManager().unScheduledLock(UNDOLOG_DELETE); + } + + public static void destroy() { + if (ROOT_SESSION_MANAGER != null) { + ROOT_SESSION_MANAGER.destroy(); + } + if (ASYNC_COMMITTING_SESSION_MANAGER != null) { + ASYNC_COMMITTING_SESSION_MANAGER.destroy(); + } + if (RETRY_COMMITTING_SESSION_MANAGER != null) { + RETRY_COMMITTING_SESSION_MANAGER.destroy(); + } + if (RETRY_ROLLBACKING_SESSION_MANAGER != null) { + RETRY_ROLLBACKING_SESSION_MANAGER.destroy(); + } + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionLifecycle.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionLifecycle.java new file mode 100644 index 000000000..8c54200cf --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionLifecycle.java @@ -0,0 +1,82 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.GlobalStatus; + +/** + * The interface Session lifecycle. + * + * @author sharajava + */ +public interface SessionLifecycle { + + /** + * Begin. + * @throws TransactionException the transaction exception + */ + void begin() throws TransactionException; + + /** + * Change status. + * @param status the status + * @throws TransactionException the transaction exception + */ + void changeStatus(GlobalStatus status) throws TransactionException; + + /** + * Change branch status. + * @param branchSession the branch session + * @param status the status + * @throws TransactionException the transaction exception + */ + void changeBranchStatus(BranchSession branchSession, BranchStatus status) throws TransactionException; + + /** + * Add branch. + * @param branchSession the branch session + * @throws TransactionException the transaction exception + */ + void addBranch(BranchSession branchSession) throws TransactionException; + + /** + * Remove branch. + * @param branchSession the branch session + * @throws TransactionException the transaction exception + */ + void removeBranch(BranchSession branchSession) throws TransactionException; + + /** + * Is active boolean. + * @return the boolean + */ + boolean isActive(); + + /** + * Close. + * @throws TransactionException the transaction exception + */ + void close() throws TransactionException; + + /** + * End. + * @throws TransactionException the transaction exception + */ + void end() throws TransactionException; + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionLifecycleListener.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionLifecycleListener.java new file mode 100644 index 000000000..dd8f03bed --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionLifecycleListener.java @@ -0,0 +1,84 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.GlobalStatus; + +/** + * The interface Session lifecycle listener. + * + * @author sharajava + */ +public interface SessionLifecycleListener { + + /** + * On begin. + * @param globalSession the global session + * @throws TransactionException the transaction exception + */ + void onBegin(GlobalSession globalSession) throws TransactionException; + + /** + * On status change. + * @param globalSession the global session + * @param status the status + * @throws TransactionException the transaction exception + */ + void onStatusChange(GlobalSession globalSession, GlobalStatus status) throws TransactionException; + + /** + * On branch status change. + * @param globalSession the global session + * @param branchSession the branch session + * @param status the status + * @throws TransactionException the transaction exception + */ + void onBranchStatusChange(GlobalSession globalSession, BranchSession branchSession, BranchStatus status) + throws TransactionException; + + /** + * On add branch. + * @param globalSession the global session + * @param branchSession the branch session + * @throws TransactionException the transaction exception + */ + void onAddBranch(GlobalSession globalSession, BranchSession branchSession) throws TransactionException; + + /** + * On remove branch. + * @param globalSession the global session + * @param branchSession the branch session + * @throws TransactionException the transaction exception + */ + void onRemoveBranch(GlobalSession globalSession, BranchSession branchSession) throws TransactionException; + + /** + * On close. + * @param globalSession the global session + * @throws TransactionException the transaction exception + */ + void onClose(GlobalSession globalSession) throws TransactionException; + + /** + * On end. + * @param globalSession the global session + * @throws TransactionException the transaction exception + */ + void onEnd(GlobalSession globalSession) throws TransactionException; + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionManager.java new file mode 100644 index 000000000..a95184d18 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/session/SessionManager.java @@ -0,0 +1,133 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.session; + +import java.util.Collection; +import java.util.List; +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.GlobalStatus; +import io.seata.core.rpc.Disposable; + +/** + * The interface Session manager. + * + * @author sharajava + */ +public interface SessionManager extends SessionLifecycleListener, Disposable { + + /** + * Add global session. + * @param session the session + * @throws TransactionException the transaction exception + */ + void addGlobalSession(GlobalSession session) throws TransactionException; + + /** + * Find global session global session. + * @param xid the xid + * @return the global session + */ + GlobalSession findGlobalSession(String xid); + + /** + * Find global session global session. + * @param xid the xid + * @param withBranchSessions the withBranchSessions + * @return the global session + */ + GlobalSession findGlobalSession(String xid, boolean withBranchSessions); + + /** + * Update global session status. + * @param session the session + * @param status the status + * @throws TransactionException the transaction exception + */ + void updateGlobalSessionStatus(GlobalSession session, GlobalStatus status) throws TransactionException; + + /** + * Remove global session. + * @param session the session + * @throws TransactionException the transaction exception + */ + void removeGlobalSession(GlobalSession session) throws TransactionException; + + /** + * Add branch session. + * @param globalSession the global session + * @param session the session + * @throws TransactionException the transaction exception + */ + void addBranchSession(GlobalSession globalSession, BranchSession session) throws TransactionException; + + /** + * Update branch session status. + * @param session the session + * @param status the status + * @throws TransactionException the transaction exception + */ + void updateBranchSessionStatus(BranchSession session, BranchStatus status) throws TransactionException; + + /** + * Remove branch session. + * @param globalSession the global session + * @param session the session + * @throws TransactionException the transaction exception + */ + void removeBranchSession(GlobalSession globalSession, BranchSession session) throws TransactionException; + + /** + * All sessions collection. + * @return the collection + */ + Collection<GlobalSession> allSessions(); + + /** + * Find global sessions list. + * @param condition the condition + * @return the list + */ + List<GlobalSession> findGlobalSessions(SessionCondition condition); + + /** + * lock and execute + * @param globalSession the global session + * @param lockCallable the lock Callable + * @return the value + */ + <T> T lockAndExecute(GlobalSession globalSession, GlobalSession.LockCallable<T> lockCallable) + throws TransactionException; + + /** + * scheduled lock + * @param key the lock key + * @return the boolean + */ + default boolean scheduledLock(String key) { + return true; + } + + /** + * un scheduled lock + * @param key the lock key + * @return the boolean + */ + default boolean unScheduledLock(String key) { + return true; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/SessionConverter.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/SessionConverter.java new file mode 100644 index 000000000..f66c812d4 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/SessionConverter.java @@ -0,0 +1,106 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage; + +import io.seata.common.util.StringUtils; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.BranchType; +import io.seata.core.model.GlobalStatus; +import io.seata.core.store.BranchTransactionDO; +import io.seata.core.store.GlobalTransactionDO; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; +import io.seata.server.store.SessionStorable; + +/** + * The session converter + * + * @author wangzhongxiang + */ +public class SessionConverter { + + public static GlobalSession convertGlobalSession(GlobalTransactionDO globalTransactionDO) { + if (globalTransactionDO == null) { + return null; + } + GlobalSession session = new GlobalSession(globalTransactionDO.getApplicationId(), + globalTransactionDO.getTransactionServiceGroup(), globalTransactionDO.getTransactionName(), + globalTransactionDO.getTimeout()); + session.setXid(globalTransactionDO.getXid()); + session.setTransactionId(globalTransactionDO.getTransactionId()); + session.setStatus(GlobalStatus.get(globalTransactionDO.getStatus())); + session.setApplicationData(globalTransactionDO.getApplicationData()); + session.setBeginTime(globalTransactionDO.getBeginTime()); + return session; + } + + public static BranchSession convertBranchSession(BranchTransactionDO branchTransactionDO) { + if (branchTransactionDO == null) { + return null; + } + BranchSession branchSession = new BranchSession(); + branchSession.setXid(branchTransactionDO.getXid()); + branchSession.setTransactionId(branchTransactionDO.getTransactionId()); + branchSession.setApplicationData(branchTransactionDO.getApplicationData()); + branchSession.setBranchId(branchTransactionDO.getBranchId()); + branchSession.setBranchType(BranchType.valueOf(branchTransactionDO.getBranchType())); + branchSession.setResourceId(branchTransactionDO.getResourceId()); + branchSession.setClientId(branchTransactionDO.getClientId()); + branchSession.setResourceGroupId(branchTransactionDO.getResourceGroupId()); + branchSession.setStatus(BranchStatus.get(branchTransactionDO.getStatus())); + return branchSession; + } + + public static GlobalTransactionDO convertGlobalTransactionDO(SessionStorable session) { + if (session == null || !(session instanceof GlobalSession)) { + throw new IllegalArgumentException("The parameter of SessionStorable is not available, SessionStorable:" + + StringUtils.toString(session)); + } + GlobalSession globalSession = (GlobalSession) session; + + GlobalTransactionDO globalTransactionDO = new GlobalTransactionDO(); + globalTransactionDO.setXid(globalSession.getXid()); + globalTransactionDO.setStatus(globalSession.getStatus().getCode()); + globalTransactionDO.setApplicationId(globalSession.getApplicationId()); + globalTransactionDO.setBeginTime(globalSession.getBeginTime()); + globalTransactionDO.setTimeout(globalSession.getTimeout()); + globalTransactionDO.setTransactionId(globalSession.getTransactionId()); + globalTransactionDO.setTransactionName(globalSession.getTransactionName()); + globalTransactionDO.setTransactionServiceGroup(globalSession.getTransactionServiceGroup()); + globalTransactionDO.setApplicationData(globalSession.getApplicationData()); + return globalTransactionDO; + } + + public static BranchTransactionDO convertBranchTransactionDO(SessionStorable session) { + if (session == null || !(session instanceof BranchSession)) { + throw new IllegalArgumentException("The parameter of SessionStorable is not available, SessionStorable:" + + StringUtils.toString(session)); + } + BranchSession branchSession = (BranchSession) session; + BranchTransactionDO branchTransactionDO = new BranchTransactionDO(); + branchTransactionDO.setXid(branchSession.getXid()); + branchTransactionDO.setBranchId(branchSession.getBranchId()); + branchTransactionDO.setBranchType(branchSession.getBranchType().name()); + branchTransactionDO.setClientId(branchSession.getClientId()); + branchTransactionDO.setResourceGroupId(branchSession.getResourceGroupId()); + branchTransactionDO.setTransactionId(branchSession.getTransactionId()); + branchTransactionDO.setApplicationData(branchSession.getApplicationData()); + branchTransactionDO.setResourceId(branchSession.getResourceId()); + branchTransactionDO.setStatus(branchSession.getStatus().getCode()); + return branchTransactionDO; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/lock/DataBaseLockManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/lock/DataBaseLockManager.java new file mode 100644 index 000000000..ea2f88f09 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/lock/DataBaseLockManager.java @@ -0,0 +1,90 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.db.lock; + +import java.util.List; +import java.util.stream.Collectors; +import javax.sql.DataSource; + +import io.seata.common.executor.Initialize; +import io.seata.common.loader.EnhancedServiceLoader; +import io.seata.common.loader.LoadLevel; +import io.seata.common.util.CollectionUtils; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.core.exception.TransactionException; +import io.seata.core.lock.Locker; +import io.seata.core.store.db.DataSourceProvider; +import io.seata.server.lock.AbstractLockManager; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; + +/** + * The type db lock manager. + * + * @author zjinlei + */ +@LoadLevel(name = "db") +public class DataBaseLockManager extends AbstractLockManager implements Initialize { + + /** + * The locker. + */ + private Locker locker; + + @Override + public void init() { + // init dataSource + String datasourceType = ConfigurationFactory.getInstance() + .getConfig(ConfigurationKeys.STORE_DB_DATASOURCE_TYPE); + DataSource lockStoreDataSource = EnhancedServiceLoader.load(DataSourceProvider.class, datasourceType).provide(); + locker = new DataBaseLocker(lockStoreDataSource); + } + + @Override + public boolean releaseLock(BranchSession branchSession) throws TransactionException { + try { + return getLocker().releaseLock(branchSession.getXid(), branchSession.getBranchId()); + } + catch (Exception t) { + LOGGER.error("unLock error, xid {}, branchId:{}", branchSession.getXid(), branchSession.getBranchId(), t); + return false; + } + } + + @Override + public Locker getLocker(BranchSession branchSession) { + return locker; + } + + @Override + public boolean releaseGlobalSessionLock(GlobalSession globalSession) throws TransactionException { + List<BranchSession> branchSessions = globalSession.getBranchSessions(); + if (CollectionUtils.isEmpty(branchSessions)) { + return true; + } + List<Long> branchIds = branchSessions.stream().map(BranchSession::getBranchId).collect(Collectors.toList()); + try { + return getLocker().releaseLock(globalSession.getXid(), branchIds); + } + catch (Exception t) { + LOGGER.error("unLock globalSession error, xid:{} branchIds:{}", globalSession.getXid(), + CollectionUtils.toString(branchIds), t); + return false; + } + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/lock/DataBaseLocker.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/lock/DataBaseLocker.java new file mode 100644 index 000000000..b0816d78d --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/lock/DataBaseLocker.java @@ -0,0 +1,146 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.db.lock; + +import java.util.List; +import javax.sql.DataSource; + +import io.seata.common.exception.DataAccessException; +import io.seata.common.exception.StoreException; +import io.seata.common.util.CollectionUtils; +import io.seata.core.lock.AbstractLocker; +import io.seata.core.lock.RowLock; +import io.seata.core.store.LockStore; + +/** + * The type Data base locker. + * + * @author zhangsen + */ +public class DataBaseLocker extends AbstractLocker { + + private LockStore lockStore; + + /** + * Instantiates a new Data base locker. + */ + public DataBaseLocker() { + } + + /** + * Instantiates a new Data base locker. + * @param logStoreDataSource the log store data source + */ + public DataBaseLocker(DataSource logStoreDataSource) { + lockStore = new LockStoreDataBaseDAO(logStoreDataSource); + } + + @Override + public boolean acquireLock(List<RowLock> locks) { + if (CollectionUtils.isEmpty(locks)) { + // no lock + return true; + } + try { + return lockStore.acquireLock(convertToLockDO(locks)); + } + catch (StoreException e) { + throw e; + } + catch (Exception t) { + LOGGER.error("AcquireLock error, locks:{}", CollectionUtils.toString(locks), t); + return false; + } + } + + @Override + public boolean releaseLock(List<RowLock> locks) { + if (CollectionUtils.isEmpty(locks)) { + // no lock + return true; + } + try { + return lockStore.unLock(convertToLockDO(locks)); + } + catch (StoreException e) { + throw e; + } + catch (Exception t) { + LOGGER.error("unLock error, locks:{}", CollectionUtils.toString(locks), t); + return false; + } + } + + @Override + public boolean releaseLock(String xid, Long branchId) { + try { + return lockStore.unLock(xid, branchId); + } + catch (StoreException e) { + throw e; + } + catch (Exception t) { + LOGGER.error("unLock by branchId error, xid {}, branchId:{}", xid, branchId, t); + return false; + } + } + + @Override + public boolean releaseLock(String xid, List<Long> branchIds) { + if (CollectionUtils.isEmpty(branchIds)) { + // no lock + return true; + } + try { + return lockStore.unLock(xid, branchIds); + } + catch (StoreException e) { + throw e; + } + catch (Exception t) { + LOGGER.error("unLock by branchIds error, xid {}, branchIds:{}", xid, CollectionUtils.toString(branchIds), + t); + return false; + } + } + + @Override + public boolean isLockable(List<RowLock> locks) { + if (CollectionUtils.isEmpty(locks)) { + // no lock + return true; + } + try { + return lockStore.isLockable(convertToLockDO(locks)); + } + catch (DataAccessException e) { + throw e; + } + catch (Exception t) { + LOGGER.error("isLockable error, locks:{}", CollectionUtils.toString(locks), t); + return false; + } + } + + /** + * Sets lock store. + * @param lockStore the lock store + */ + public void setLockStore(LockStore lockStore) { + this.lockStore = lockStore; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/lock/LockStoreDataBaseDAO.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/lock/LockStoreDataBaseDAO.java new file mode 100644 index 000000000..bbe9fd29e --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/lock/LockStoreDataBaseDAO.java @@ -0,0 +1,437 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.db.lock; + +import javax.sql.DataSource; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.StringJoiner; +import java.util.stream.Collectors; + +import io.seata.common.exception.DataAccessException; +import io.seata.common.exception.StoreException; +import io.seata.common.util.CollectionUtils; +import io.seata.common.util.IOUtil; +import io.seata.common.util.LambdaUtils; +import io.seata.common.util.StringUtils; +import io.seata.config.Configuration; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.core.constants.ServerTableColumnsName; +import io.seata.core.store.LockDO; +import io.seata.core.store.LockStore; +import io.seata.core.store.db.sql.lock.LockStoreSqlFactory; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import static io.seata.common.DefaultValues.DEFAULT_LOCK_DB_TABLE; + +/** + * The type Data base lock store. + * + * @author zhangsen + */ +public class LockStoreDataBaseDAO implements LockStore { + + private static final Logger LOGGER = LoggerFactory.getLogger(LockStoreDataBaseDAO.class); + + /** + * The constant CONFIG. + */ + protected static final Configuration CONFIG = ConfigurationFactory.getInstance(); + + /** + * The Lock store data source. + */ + protected DataSource lockStoreDataSource; + + /** + * The Lock table. + */ + protected String lockTable; + + /** + * The Db type. + */ + protected String dbType; + + /** + * Instantiates a new Data base lock store dao. + * @param lockStoreDataSource the log store data source + */ + public LockStoreDataBaseDAO(DataSource lockStoreDataSource) { + this.lockStoreDataSource = lockStoreDataSource; + lockTable = CONFIG.getConfig(ConfigurationKeys.LOCK_DB_TABLE, DEFAULT_LOCK_DB_TABLE); + dbType = CONFIG.getConfig(ConfigurationKeys.STORE_DB_TYPE); + if (StringUtils.isBlank(dbType)) { + throw new StoreException("there must be db type."); + } + if (lockStoreDataSource == null) { + throw new StoreException("there must be lockStoreDataSource."); + } + } + + @Override + public boolean acquireLock(LockDO lockDO) { + return acquireLock(Collections.singletonList(lockDO)); + } + + @Override + public boolean acquireLock(List<LockDO> lockDOs) { + Connection conn = null; + PreparedStatement ps = null; + ResultSet rs = null; + Set<String> dbExistedRowKeys = new HashSet<>(); + boolean originalAutoCommit = true; + if (lockDOs.size() > 1) { + lockDOs = lockDOs.stream().filter(LambdaUtils.distinctByKey(LockDO::getRowKey)) + .collect(Collectors.toList()); + } + try { + conn = lockStoreDataSource.getConnection(); + if (originalAutoCommit = conn.getAutoCommit()) { + conn.setAutoCommit(false); + } + // check lock + StringJoiner sj = new StringJoiner(","); + for (int i = 0; i < lockDOs.size(); i++) { + sj.add("?"); + } + boolean canLock = true; + // query + String checkLockSQL = LockStoreSqlFactory.getLogStoreSql(dbType).getCheckLockableSql(lockTable, + sj.toString()); + ps = conn.prepareStatement(checkLockSQL); + for (int i = 0; i < lockDOs.size(); i++) { + ps.setString(i + 1, lockDOs.get(i).getRowKey()); + } + rs = ps.executeQuery(); + String currentXID = lockDOs.get(0).getXid(); + while (rs.next()) { + String dbXID = rs.getString(ServerTableColumnsName.LOCK_TABLE_XID); + if (!StringUtils.equals(dbXID, currentXID)) { + if (LOGGER.isInfoEnabled()) { + String dbPk = rs.getString(ServerTableColumnsName.LOCK_TABLE_PK); + String dbTableName = rs.getString(ServerTableColumnsName.LOCK_TABLE_TABLE_NAME); + Long dbBranchId = rs.getLong(ServerTableColumnsName.LOCK_TABLE_BRANCH_ID); + LOGGER.info("Global lock on [{}:{}] is holding by xid {} branchId {}", dbTableName, dbPk, dbXID, + dbBranchId); + } + canLock &= false; + break; + } + dbExistedRowKeys.add(rs.getString(ServerTableColumnsName.LOCK_TABLE_ROW_KEY)); + } + + if (!canLock) { + conn.rollback(); + return false; + } + List<LockDO> unrepeatedLockDOs = null; + if (CollectionUtils.isNotEmpty(dbExistedRowKeys)) { + unrepeatedLockDOs = lockDOs.stream().filter(lockDO -> !dbExistedRowKeys.contains(lockDO.getRowKey())) + .collect(Collectors.toList()); + } + else { + unrepeatedLockDOs = lockDOs; + } + if (CollectionUtils.isEmpty(unrepeatedLockDOs)) { + conn.rollback(); + return true; + } + // lock + if (unrepeatedLockDOs.size() == 1) { + LockDO lockDO = unrepeatedLockDOs.get(0); + if (!doAcquireLock(conn, lockDO)) { + if (LOGGER.isInfoEnabled()) { + LOGGER.info("Global lock acquire failed, xid {} branchId {} pk {}", lockDO.getXid(), + lockDO.getBranchId(), lockDO.getPk()); + } + conn.rollback(); + return false; + } + } + else { + if (!doAcquireLocks(conn, unrepeatedLockDOs)) { + if (LOGGER.isInfoEnabled()) { + LOGGER.info("Global lock batch acquire failed, xid {} branchId {} pks {}", + unrepeatedLockDOs.get(0).getXid(), unrepeatedLockDOs.get(0).getBranchId(), + unrepeatedLockDOs.stream().map(lockDO -> lockDO.getPk()).collect(Collectors.toList())); + } + conn.rollback(); + return false; + } + } + conn.commit(); + return true; + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(rs, ps); + if (conn != null) { + try { + if (originalAutoCommit) { + conn.setAutoCommit(true); + } + conn.close(); + } + catch (SQLException e) { + } + } + } + } + + @Override + public boolean unLock(LockDO lockDO) { + return unLock(Collections.singletonList(lockDO)); + } + + @Override + public boolean unLock(List<LockDO> lockDOs) { + Connection conn = null; + PreparedStatement ps = null; + try { + conn = lockStoreDataSource.getConnection(); + conn.setAutoCommit(true); + + StringJoiner sj = new StringJoiner(","); + for (int i = 0; i < lockDOs.size(); i++) { + sj.add("?"); + } + // batch release lock + String batchDeleteSQL = LockStoreSqlFactory.getLogStoreSql(dbType).getBatchDeleteLockSql(lockTable, + sj.toString()); + ps = conn.prepareStatement(batchDeleteSQL); + ps.setString(1, lockDOs.get(0).getXid()); + for (int i = 0; i < lockDOs.size(); i++) { + ps.setString(i + 2, lockDOs.get(i).getRowKey()); + } + ps.executeUpdate(); + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(ps, conn); + } + return true; + } + + @Override + public boolean unLock(String xid, Long branchId) { + Connection conn = null; + PreparedStatement ps = null; + try { + conn = lockStoreDataSource.getConnection(); + conn.setAutoCommit(true); + // batch release lock by branch + String batchDeleteSQL = LockStoreSqlFactory.getLogStoreSql(dbType).getBatchDeleteLockSqlByBranch(lockTable); + ps = conn.prepareStatement(batchDeleteSQL); + ps.setString(1, xid); + ps.setLong(2, branchId); + ps.executeUpdate(); + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(ps, conn); + } + return true; + } + + @Override + public boolean unLock(String xid, List<Long> branchIds) { + Connection conn = null; + PreparedStatement ps = null; + try { + conn = lockStoreDataSource.getConnection(); + conn.setAutoCommit(true); + StringJoiner sj = new StringJoiner(","); + branchIds.forEach(branchId -> sj.add("?")); + // batch release lock by branch list + String batchDeleteSQL = LockStoreSqlFactory.getLogStoreSql(dbType).getBatchDeleteLockSqlByBranchs(lockTable, + sj.toString()); + ps = conn.prepareStatement(batchDeleteSQL); + ps.setString(1, xid); + for (int i = 0; i < branchIds.size(); i++) { + ps.setLong(i + 2, branchIds.get(i)); + } + ps.executeUpdate(); + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(ps, conn); + } + return true; + } + + @Override + public boolean isLockable(List<LockDO> lockDOs) { + Connection conn = null; + try { + conn = lockStoreDataSource.getConnection(); + conn.setAutoCommit(true); + if (!checkLockable(conn, lockDOs)) { + return false; + } + return true; + } + catch (SQLException e) { + throw new DataAccessException(e); + } + finally { + IOUtil.close(conn); + } + } + + /** + * Do acquire lock boolean. + * @param conn the conn + * @param lockDO the lock do + * @return the boolean + */ + protected boolean doAcquireLock(Connection conn, LockDO lockDO) { + PreparedStatement ps = null; + try { + // insert + String insertLockSQL = LockStoreSqlFactory.getLogStoreSql(dbType).getInsertLockSQL(lockTable); + ps = conn.prepareStatement(insertLockSQL); + ps.setString(1, lockDO.getXid()); + ps.setLong(2, lockDO.getTransactionId()); + ps.setLong(3, lockDO.getBranchId()); + ps.setString(4, lockDO.getResourceId()); + ps.setString(5, lockDO.getTableName()); + ps.setString(6, lockDO.getPk()); + ps.setString(7, lockDO.getRowKey()); + return ps.executeUpdate() > 0; + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(ps); + } + } + + /** + * Do acquire lock boolean. + * @param conn the conn + * @param lockDOs the lock do list + * @return the boolean + */ + protected boolean doAcquireLocks(Connection conn, List<LockDO> lockDOs) { + PreparedStatement ps = null; + try { + // insert + String insertLockSQL = LockStoreSqlFactory.getLogStoreSql(dbType).getInsertLockSQL(lockTable); + ps = conn.prepareStatement(insertLockSQL); + for (LockDO lockDO : lockDOs) { + ps.setString(1, lockDO.getXid()); + ps.setLong(2, lockDO.getTransactionId()); + ps.setLong(3, lockDO.getBranchId()); + ps.setString(4, lockDO.getResourceId()); + ps.setString(5, lockDO.getTableName()); + ps.setString(6, lockDO.getPk()); + ps.setString(7, lockDO.getRowKey()); + ps.addBatch(); + } + return ps.executeBatch().length == lockDOs.size(); + } + catch (SQLException e) { + LOGGER.error("Global lock batch acquire error: {}", e.getMessage(), e); + // return false,let the caller go to conn.rollabck() + return false; + } + finally { + IOUtil.close(ps); + } + } + + /** + * Check lock boolean. + * @param conn the conn + * @param lockDOs the lock do + * @return the boolean + */ + protected boolean checkLockable(Connection conn, List<LockDO> lockDOs) { + PreparedStatement ps = null; + ResultSet rs = null; + try { + StringJoiner sj = new StringJoiner(","); + for (int i = 0; i < lockDOs.size(); i++) { + sj.add("?"); + } + + // query + String checkLockSQL = LockStoreSqlFactory.getLogStoreSql(dbType).getCheckLockableSql(lockTable, + sj.toString()); + ps = conn.prepareStatement(checkLockSQL); + for (int i = 0; i < lockDOs.size(); i++) { + ps.setString(i + 1, lockDOs.get(i).getRowKey()); + } + rs = ps.executeQuery(); + while (rs.next()) { + String xid = rs.getString("xid"); + if (!StringUtils.equals(xid, lockDOs.get(0).getXid())) { + return false; + } + } + return true; + } + catch (SQLException e) { + throw new DataAccessException(e); + } + finally { + IOUtil.close(rs, ps); + } + } + + /** + * Sets lock table. + * @param lockTable the lock table + */ + public void setLockTable(String lockTable) { + this.lockTable = lockTable; + } + + /** + * Sets db type. + * @param dbType the db type + */ + public void setDbType(String dbType) { + this.dbType = dbType; + } + + /** + * Sets log store data source. + * @param lockStoreDataSource the log store data source + */ + public void setLogStoreDataSource(DataSource lockStoreDataSource) { + this.lockStoreDataSource = lockStoreDataSource; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/session/DataBaseSessionManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/session/DataBaseSessionManager.java new file mode 100644 index 000000000..95c62077b --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/session/DataBaseSessionManager.java @@ -0,0 +1,199 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.db.session; + +import java.util.Collection; +import java.util.List; + +import io.seata.common.exception.StoreException; +import io.seata.common.executor.Initialize; +import io.seata.common.loader.LoadLevel; +import io.seata.common.util.StringUtils; +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.GlobalStatus; +import io.seata.server.session.AbstractSessionManager; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionCondition; +import io.seata.server.session.SessionHolder; +import io.seata.server.storage.db.store.DataBaseTransactionStoreManager; +import io.seata.server.store.TransactionStoreManager.LogOperation; +import io.seata.common.loader.Scope; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * The Data base session manager. + * + * @author zhangsen + */ +@LoadLevel(name = "db", scope = Scope.PROTOTYPE) +public class DataBaseSessionManager extends AbstractSessionManager implements Initialize { + + /** + * The constant LOGGER. + */ + protected static final Logger LOGGER = LoggerFactory.getLogger(DataBaseSessionManager.class); + + /** + * The Task name. + */ + protected String taskName; + + /** + * Instantiates a new Data base session manager. + */ + public DataBaseSessionManager() { + super(); + } + + /** + * Instantiates a new Data base session manager. + * @param name the name + */ + public DataBaseSessionManager(String name) { + super(); + this.taskName = name; + } + + @Override + public void init() { + transactionStoreManager = DataBaseTransactionStoreManager.getInstance(); + } + + @Override + public void addGlobalSession(GlobalSession session) throws TransactionException { + if (StringUtils.isBlank(taskName)) { + boolean ret = transactionStoreManager.writeSession(LogOperation.GLOBAL_ADD, session); + if (!ret) { + throw new StoreException("addGlobalSession failed."); + } + } + else { + boolean ret = transactionStoreManager.writeSession(LogOperation.GLOBAL_UPDATE, session); + if (!ret) { + throw new StoreException("addGlobalSession failed."); + } + } + } + + @Override + public void updateGlobalSessionStatus(GlobalSession session, GlobalStatus status) throws TransactionException { + if (StringUtils.isNotBlank(taskName)) { + return; + } + session.setStatus(status); + boolean ret = transactionStoreManager.writeSession(LogOperation.GLOBAL_UPDATE, session); + if (!ret) { + throw new StoreException("updateGlobalSessionStatus failed."); + } + } + + /** + * remove globalSession 1. rootSessionManager remove normal globalSession 2. + * retryCommitSessionManager and retryRollbackSessionManager remove retry expired + * globalSession + * @param session the session + * @throws TransactionException + */ + @Override + public void removeGlobalSession(GlobalSession session) throws TransactionException { + boolean ret = transactionStoreManager.writeSession(LogOperation.GLOBAL_REMOVE, session); + if (!ret) { + throw new StoreException("removeGlobalSession failed."); + } + } + + @Override + public void addBranchSession(GlobalSession globalSession, BranchSession session) throws TransactionException { + if (StringUtils.isNotBlank(taskName)) { + return; + } + boolean ret = transactionStoreManager.writeSession(LogOperation.BRANCH_ADD, session); + if (!ret) { + throw new StoreException("addBranchSession failed."); + } + } + + @Override + public void updateBranchSessionStatus(BranchSession session, BranchStatus status) throws TransactionException { + if (StringUtils.isNotBlank(taskName)) { + return; + } + boolean ret = transactionStoreManager.writeSession(LogOperation.BRANCH_UPDATE, session); + if (!ret) { + throw new StoreException("updateBranchSessionStatus failed."); + } + } + + @Override + public void removeBranchSession(GlobalSession globalSession, BranchSession session) throws TransactionException { + if (StringUtils.isNotBlank(taskName)) { + return; + } + boolean ret = transactionStoreManager.writeSession(LogOperation.BRANCH_REMOVE, session); + if (!ret) { + throw new StoreException("removeBranchSession failed."); + } + } + + @Override + public GlobalSession findGlobalSession(String xid) { + return this.findGlobalSession(xid, true); + } + + @Override + public GlobalSession findGlobalSession(String xid, boolean withBranchSessions) { + return transactionStoreManager.readSession(xid, withBranchSessions); + } + + @Override + public Collection<GlobalSession> allSessions() { + // get by taskName + if (SessionHolder.ASYNC_COMMITTING_SESSION_MANAGER_NAME.equalsIgnoreCase(taskName)) { + return findGlobalSessions(new SessionCondition(GlobalStatus.AsyncCommitting)); + } + else if (SessionHolder.RETRY_COMMITTING_SESSION_MANAGER_NAME.equalsIgnoreCase(taskName)) { + return findGlobalSessions( + new SessionCondition(new GlobalStatus[] { GlobalStatus.CommitRetrying, GlobalStatus.Committing })); + } + else if (SessionHolder.RETRY_ROLLBACKING_SESSION_MANAGER_NAME.equalsIgnoreCase(taskName)) { + return findGlobalSessions(new SessionCondition(new GlobalStatus[] { GlobalStatus.RollbackRetrying, + GlobalStatus.Rollbacking, GlobalStatus.TimeoutRollbacking, GlobalStatus.TimeoutRollbackRetrying })); + } + else { + // all data + return findGlobalSessions(new SessionCondition(new GlobalStatus[] { GlobalStatus.UnKnown, + GlobalStatus.Begin, GlobalStatus.Committing, GlobalStatus.CommitRetrying, GlobalStatus.Rollbacking, + GlobalStatus.RollbackRetrying, GlobalStatus.TimeoutRollbacking, + GlobalStatus.TimeoutRollbackRetrying, GlobalStatus.AsyncCommitting })); + } + } + + @Override + public List<GlobalSession> findGlobalSessions(SessionCondition condition) { + // nothing need to do + return transactionStoreManager.readSession(condition); + } + + @Override + public <T> T lockAndExecute(GlobalSession globalSession, GlobalSession.LockCallable<T> lockCallable) + throws TransactionException { + return lockCallable.call(); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/store/DataBaseTransactionStoreManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/store/DataBaseTransactionStoreManager.java new file mode 100644 index 000000000..bb7b49bd2 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/store/DataBaseTransactionStoreManager.java @@ -0,0 +1,248 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.db.store; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import javax.sql.DataSource; + +import io.seata.common.exception.StoreException; +import io.seata.common.loader.EnhancedServiceLoader; +import io.seata.common.util.CollectionUtils; +import io.seata.common.util.StringUtils; +import io.seata.config.Configuration; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.core.model.GlobalStatus; +import io.seata.core.store.BranchTransactionDO; +import io.seata.core.store.GlobalTransactionDO; +import io.seata.core.store.LogStore; +import io.seata.core.store.db.DataSourceProvider; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionCondition; +import io.seata.server.store.AbstractTransactionStoreManager; +import io.seata.server.store.SessionStorable; +import io.seata.server.store.TransactionStoreManager; +import io.seata.server.storage.SessionConverter; + +/** + * The type Database transaction store manager. + * + * @author zhangsen + */ +public class DataBaseTransactionStoreManager extends AbstractTransactionStoreManager + implements TransactionStoreManager { + + private static volatile DataBaseTransactionStoreManager instance; + + /** + * The constant CONFIG. + */ + protected static final Configuration CONFIG = ConfigurationFactory.getInstance(); + + /** + * The constant DEFAULT_LOG_QUERY_LIMIT. + */ + protected static final int DEFAULT_LOG_QUERY_LIMIT = 100; + + /** + * The Log store. + */ + protected LogStore logStore; + + /** + * The Log query limit. + */ + protected int logQueryLimit; + + /** + * Get the instance. + */ + public static DataBaseTransactionStoreManager getInstance() { + if (instance == null) { + synchronized (DataBaseTransactionStoreManager.class) { + if (instance == null) { + instance = new DataBaseTransactionStoreManager(); + } + } + } + return instance; + } + + /** + * Instantiates a new Database transaction store manager. + */ + private DataBaseTransactionStoreManager() { + logQueryLimit = CONFIG.getInt(ConfigurationKeys.STORE_DB_LOG_QUERY_LIMIT, DEFAULT_LOG_QUERY_LIMIT); + String datasourceType = CONFIG.getConfig(ConfigurationKeys.STORE_DB_DATASOURCE_TYPE); + // init dataSource + DataSource logStoreDataSource = EnhancedServiceLoader.load(DataSourceProvider.class, datasourceType).provide(); + logStore = new LogStoreDataBaseDAO(logStoreDataSource); + } + + @Override + public boolean writeSession(LogOperation logOperation, SessionStorable session) { + if (LogOperation.GLOBAL_ADD.equals(logOperation)) { + return logStore.insertGlobalTransactionDO(SessionConverter.convertGlobalTransactionDO(session)); + } + else if (LogOperation.GLOBAL_UPDATE.equals(logOperation)) { + return logStore.updateGlobalTransactionDO(SessionConverter.convertGlobalTransactionDO(session)); + } + else if (LogOperation.GLOBAL_REMOVE.equals(logOperation)) { + return logStore.deleteGlobalTransactionDO(SessionConverter.convertGlobalTransactionDO(session)); + } + else if (LogOperation.BRANCH_ADD.equals(logOperation)) { + return logStore.insertBranchTransactionDO(SessionConverter.convertBranchTransactionDO(session)); + } + else if (LogOperation.BRANCH_UPDATE.equals(logOperation)) { + return logStore.updateBranchTransactionDO(SessionConverter.convertBranchTransactionDO(session)); + } + else if (LogOperation.BRANCH_REMOVE.equals(logOperation)) { + return logStore.deleteBranchTransactionDO(SessionConverter.convertBranchTransactionDO(session)); + } + else { + throw new StoreException("Unknown LogOperation:" + logOperation.name()); + } + } + + /** + * Read session global session. + * @param transactionId the transaction id + * @return the global session + */ + public GlobalSession readSession(Long transactionId) { + // global transaction + GlobalTransactionDO globalTransactionDO = logStore.queryGlobalTransactionDO(transactionId); + if (globalTransactionDO == null) { + return null; + } + // branch transactions + List<BranchTransactionDO> branchTransactionDOs = logStore + .queryBranchTransactionDO(globalTransactionDO.getXid()); + return getGlobalSession(globalTransactionDO, branchTransactionDOs); + } + + /** + * Read session global session. + * @param xid the xid + * @return the global session + */ + @Override + public GlobalSession readSession(String xid) { + return this.readSession(xid, true); + } + + /** + * Read session global session. + * @param xid the xid + * @param withBranchSessions the withBranchSessions + * @return the global session + */ + @Override + public GlobalSession readSession(String xid, boolean withBranchSessions) { + // global transaction + GlobalTransactionDO globalTransactionDO = logStore.queryGlobalTransactionDO(xid); + if (globalTransactionDO == null) { + return null; + } + // branch transactions + List<BranchTransactionDO> branchTransactionDOs = null; + // reduce rpc with db when branchRegister and getGlobalStatus + if (withBranchSessions) { + branchTransactionDOs = logStore.queryBranchTransactionDO(globalTransactionDO.getXid()); + } + return getGlobalSession(globalTransactionDO, branchTransactionDOs); + } + + /** + * Read session list. + * @param statuses the statuses + * @return the list + */ + public List<GlobalSession> readSession(GlobalStatus[] statuses) { + int[] states = new int[statuses.length]; + for (int i = 0; i < statuses.length; i++) { + states[i] = statuses[i].getCode(); + } + // global transaction + List<GlobalTransactionDO> globalTransactionDOs = logStore.queryGlobalTransactionDO(states, logQueryLimit); + if (CollectionUtils.isEmpty(globalTransactionDOs)) { + return null; + } + List<String> xids = globalTransactionDOs.stream().map(GlobalTransactionDO::getXid).collect(Collectors.toList()); + List<BranchTransactionDO> branchTransactionDOs = logStore.queryBranchTransactionDO(xids); + Map<String, List<BranchTransactionDO>> branchTransactionDOsMap = branchTransactionDOs.stream() + .collect(Collectors.groupingBy(BranchTransactionDO::getXid, LinkedHashMap::new, Collectors.toList())); + return globalTransactionDOs.stream().map(globalTransactionDO -> getGlobalSession(globalTransactionDO, + branchTransactionDOsMap.get(globalTransactionDO.getXid()))).collect(Collectors.toList()); + } + + @Override + public List<GlobalSession> readSession(SessionCondition sessionCondition) { + if (StringUtils.isNotBlank(sessionCondition.getXid())) { + GlobalSession globalSession = readSession(sessionCondition.getXid()); + if (globalSession != null) { + List<GlobalSession> globalSessions = new ArrayList<>(); + globalSessions.add(globalSession); + return globalSessions; + } + } + else if (sessionCondition.getTransactionId() != null) { + GlobalSession globalSession = readSession(sessionCondition.getTransactionId()); + if (globalSession != null) { + List<GlobalSession> globalSessions = new ArrayList<>(); + globalSessions.add(globalSession); + return globalSessions; + } + } + else if (CollectionUtils.isNotEmpty(sessionCondition.getStatuses())) { + return readSession(sessionCondition.getStatuses()); + } + return null; + } + + private GlobalSession getGlobalSession(GlobalTransactionDO globalTransactionDO, + List<BranchTransactionDO> branchTransactionDOs) { + GlobalSession globalSession = SessionConverter.convertGlobalSession(globalTransactionDO); + // branch transactions + if (CollectionUtils.isNotEmpty(branchTransactionDOs)) { + for (BranchTransactionDO branchTransactionDO : branchTransactionDOs) { + globalSession.add(SessionConverter.convertBranchSession(branchTransactionDO)); + } + } + return globalSession; + } + + /** + * Sets log store. + * @param logStore the log store + */ + public void setLogStore(LogStore logStore) { + this.logStore = logStore; + } + + /** + * Sets log query limit. + * @param logQueryLimit the log query limit + */ + public void setLogQueryLimit(int logQueryLimit) { + this.logQueryLimit = logQueryLimit; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/store/LogStoreDataBaseDAO.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/store/LogStoreDataBaseDAO.java new file mode 100644 index 000000000..bc613e982 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/db/store/LogStoreDataBaseDAO.java @@ -0,0 +1,624 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.db.store; + +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; +import javax.sql.DataSource; + +import io.seata.common.exception.DataAccessException; +import io.seata.common.exception.StoreException; +import io.seata.common.util.IOUtil; +import io.seata.common.util.StringUtils; +import io.seata.config.Configuration; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.core.constants.ServerTableColumnsName; +import io.seata.core.store.BranchTransactionDO; +import io.seata.core.store.GlobalTransactionDO; +import io.seata.core.store.LogStore; +import io.seata.core.store.db.sql.log.LogStoreSqlsFactory; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import static io.seata.common.DefaultValues.DEFAULT_STORE_DB_BRANCH_TABLE; +import static io.seata.common.DefaultValues.DEFAULT_STORE_DB_GLOBAL_TABLE; + +/** + * The type Log store data base dao. + * + * @author zhangsen + */ +public class LogStoreDataBaseDAO implements LogStore { + + private static final Logger LOGGER = LoggerFactory.getLogger(LogStoreDataBaseDAO.class); + + /** + * The transaction name key + */ + private static final String TRANSACTION_NAME_KEY = "TRANSACTION_NAME"; + + /** + * The transaction name default size is 128 + */ + private static final int TRANSACTION_NAME_DEFAULT_SIZE = 128; + + /** + * The constant CONFIG. + */ + protected static final Configuration CONFIG = ConfigurationFactory.getInstance(); + + /** + * The Log store data source. + */ + protected DataSource logStoreDataSource = null; + + /** + * The Global table. + */ + protected String globalTable; + + /** + * The Branch table. + */ + protected String branchTable; + + private String dbType; + + private int transactionNameColumnSize = TRANSACTION_NAME_DEFAULT_SIZE; + + /** + * Instantiates a new Log store data base dao. + * @param logStoreDataSource the log store data source + */ + public LogStoreDataBaseDAO(DataSource logStoreDataSource) { + this.logStoreDataSource = logStoreDataSource; + globalTable = CONFIG.getConfig(ConfigurationKeys.STORE_DB_GLOBAL_TABLE, DEFAULT_STORE_DB_GLOBAL_TABLE); + branchTable = CONFIG.getConfig(ConfigurationKeys.STORE_DB_BRANCH_TABLE, DEFAULT_STORE_DB_BRANCH_TABLE); + dbType = CONFIG.getConfig(ConfigurationKeys.STORE_DB_TYPE); + if (StringUtils.isBlank(dbType)) { + throw new StoreException("there must be db type."); + } + if (logStoreDataSource == null) { + throw new StoreException("there must be logStoreDataSource."); + } + // init transaction_name size + initTransactionNameSize(); + } + + @Override + public GlobalTransactionDO queryGlobalTransactionDO(String xid) { + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getQueryGlobalTransactionSQL(globalTable); + Connection conn = null; + PreparedStatement ps = null; + ResultSet rs = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + ps = conn.prepareStatement(sql); + ps.setString(1, xid); + rs = ps.executeQuery(); + if (rs.next()) { + return convertGlobalTransactionDO(rs); + } + else { + return null; + } + } + catch (SQLException e) { + throw new DataAccessException(e); + } + finally { + IOUtil.close(rs, ps, conn); + } + } + + @Override + public GlobalTransactionDO queryGlobalTransactionDO(long transactionId) { + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType) + .getQueryGlobalTransactionSQLByTransactionId(globalTable); + Connection conn = null; + PreparedStatement ps = null; + ResultSet rs = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + ps = conn.prepareStatement(sql); + ps.setLong(1, transactionId); + rs = ps.executeQuery(); + if (rs.next()) { + return convertGlobalTransactionDO(rs); + } + else { + return null; + } + } + catch (SQLException e) { + throw new DataAccessException(e); + } + finally { + IOUtil.close(rs, ps, conn); + } + } + + @Override + public List<GlobalTransactionDO> queryGlobalTransactionDO(int[] statuses, int limit) { + List<GlobalTransactionDO> ret = new ArrayList<>(); + Connection conn = null; + PreparedStatement ps = null; + ResultSet rs = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + + String paramsPlaceHolder = org.apache.commons.lang.StringUtils.repeat("?", ",", statuses.length); + + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getQueryGlobalTransactionSQLByStatus(globalTable, + paramsPlaceHolder); + ps = conn.prepareStatement(sql); + for (int i = 0; i < statuses.length; i++) { + int status = statuses[i]; + ps.setInt(i + 1, status); + } + ps.setInt(statuses.length + 1, limit); + rs = ps.executeQuery(); + while (rs.next()) { + ret.add(convertGlobalTransactionDO(rs)); + } + return ret; + } + catch (SQLException e) { + throw new DataAccessException(e); + } + finally { + IOUtil.close(rs, ps, conn); + } + } + + @Override + public boolean insertGlobalTransactionDO(GlobalTransactionDO globalTransactionDO) { + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getInsertGlobalTransactionSQL(globalTable); + Connection conn = null; + PreparedStatement ps = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + ps = conn.prepareStatement(sql); + ps.setString(1, globalTransactionDO.getXid()); + ps.setLong(2, globalTransactionDO.getTransactionId()); + ps.setInt(3, globalTransactionDO.getStatus()); + ps.setString(4, globalTransactionDO.getApplicationId()); + ps.setString(5, globalTransactionDO.getTransactionServiceGroup()); + String transactionName = globalTransactionDO.getTransactionName(); + transactionName = transactionName.length() > transactionNameColumnSize + ? transactionName.substring(0, transactionNameColumnSize) : transactionName; + ps.setString(6, transactionName); + ps.setInt(7, globalTransactionDO.getTimeout()); + ps.setLong(8, globalTransactionDO.getBeginTime()); + ps.setString(9, globalTransactionDO.getApplicationData()); + return ps.executeUpdate() > 0; + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(ps, conn); + } + } + + @Override + public boolean updateGlobalTransactionDO(GlobalTransactionDO globalTransactionDO) { + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getUpdateGlobalTransactionStatusSQL(globalTable); + Connection conn = null; + PreparedStatement ps = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + ps = conn.prepareStatement(sql); + ps.setInt(1, globalTransactionDO.getStatus()); + ps.setString(2, globalTransactionDO.getXid()); + return ps.executeUpdate() > 0; + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(ps, conn); + } + } + + @Override + public boolean deleteGlobalTransactionDO(GlobalTransactionDO globalTransactionDO) { + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getDeleteGlobalTransactionSQL(globalTable); + Connection conn = null; + PreparedStatement ps = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + ps = conn.prepareStatement(sql); + ps.setString(1, globalTransactionDO.getXid()); + ps.executeUpdate(); + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(ps, conn); + } + return true; + } + + @Override + public List<BranchTransactionDO> queryBranchTransactionDO(String xid) { + List<BranchTransactionDO> rets = new ArrayList<>(); + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getQueryBranchTransaction(branchTable); + Connection conn = null; + PreparedStatement ps = null; + ResultSet rs = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + + ps = conn.prepareStatement(sql); + ps.setString(1, xid); + + rs = ps.executeQuery(); + while (rs.next()) { + rets.add(convertBranchTransactionDO(rs)); + } + return rets; + } + catch (SQLException e) { + throw new DataAccessException(e); + } + finally { + IOUtil.close(rs, ps, conn); + } + } + + @Override + public List<BranchTransactionDO> queryBranchTransactionDO(List<String> xids) { + int length = xids.size(); + List<BranchTransactionDO> rets = new ArrayList<>(length * 3); + String paramsPlaceHolder = org.apache.commons.lang.StringUtils.repeat("?", ",", length); + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getQueryBranchTransaction(branchTable, + paramsPlaceHolder); + Connection conn = null; + PreparedStatement ps = null; + ResultSet rs = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + ps = conn.prepareStatement(sql); + for (int i = 0; i < length; i++) { + ps.setString(i + 1, xids.get(i)); + } + rs = ps.executeQuery(); + while (rs.next()) { + rets.add(convertBranchTransactionDO(rs)); + } + return rets; + } + catch (SQLException e) { + throw new DataAccessException(e); + } + finally { + IOUtil.close(rs, ps, conn); + } + } + + @Override + public boolean insertBranchTransactionDO(BranchTransactionDO branchTransactionDO) { + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getInsertBranchTransactionSQL(branchTable); + Connection conn = null; + PreparedStatement ps = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + ps = conn.prepareStatement(sql); + ps.setString(1, branchTransactionDO.getXid()); + ps.setLong(2, branchTransactionDO.getTransactionId()); + ps.setLong(3, branchTransactionDO.getBranchId()); + ps.setString(4, branchTransactionDO.getResourceGroupId()); + ps.setString(5, branchTransactionDO.getResourceId()); + ps.setString(6, branchTransactionDO.getBranchType()); + ps.setInt(7, branchTransactionDO.getStatus()); + ps.setString(8, branchTransactionDO.getClientId()); + ps.setString(9, branchTransactionDO.getApplicationData()); + return ps.executeUpdate() > 0; + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(ps, conn); + } + } + + @Override + public boolean updateBranchTransactionDO(BranchTransactionDO branchTransactionDO) { + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getUpdateBranchTransactionStatusSQL(branchTable); + Connection conn = null; + PreparedStatement ps = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + ps = conn.prepareStatement(sql); + ps.setInt(1, branchTransactionDO.getStatus()); + ps.setString(2, branchTransactionDO.getXid()); + ps.setLong(3, branchTransactionDO.getBranchId()); + return ps.executeUpdate() > 0; + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(ps, conn); + } + } + + @Override + public boolean deleteBranchTransactionDO(BranchTransactionDO branchTransactionDO) { + String sql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getDeleteBranchTransactionByBranchIdSQL(branchTable); + Connection conn = null; + PreparedStatement ps = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + ps = conn.prepareStatement(sql); + ps.setString(1, branchTransactionDO.getXid()); + ps.setLong(2, branchTransactionDO.getBranchId()); + ps.executeUpdate(); + } + catch (SQLException e) { + throw new StoreException(e); + } + finally { + IOUtil.close(ps, conn); + } + return true; + } + + @Override + public long getCurrentMaxSessionId(long high, long low) { + String transMaxSql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getQueryGlobalMax(globalTable); + String branchMaxSql = LogStoreSqlsFactory.getLogStoreSqls(dbType).getQueryBranchMax(branchTable); + long maxTransId = getCurrentMaxSessionId(transMaxSql, high, low); + long maxBranchId = getCurrentMaxSessionId(branchMaxSql, high, low); + return maxBranchId > maxTransId ? maxBranchId : maxTransId; + } + + private long getCurrentMaxSessionId(String sql, long high, long low) { + long max = 0; + Connection conn = null; + PreparedStatement ps = null; + ResultSet rs = null; + try { + conn = logStoreDataSource.getConnection(); + conn.setAutoCommit(true); + ps = conn.prepareStatement(sql); + ps.setLong(1, high); + ps.setLong(2, low); + + rs = ps.executeQuery(); + while (rs.next()) { + max = rs.getLong(1); + } + } + catch (SQLException e) { + throw new DataAccessException(e); + } + finally { + IOUtil.close(rs, ps, conn); + } + return max; + } + + private GlobalTransactionDO convertGlobalTransactionDO(ResultSet rs) throws SQLException { + GlobalTransactionDO globalTransactionDO = new GlobalTransactionDO(); + globalTransactionDO.setXid(rs.getString(ServerTableColumnsName.GLOBAL_TABLE_XID)); + globalTransactionDO.setStatus(rs.getInt(ServerTableColumnsName.GLOBAL_TABLE_STATUS)); + globalTransactionDO.setApplicationId(rs.getString(ServerTableColumnsName.GLOBAL_TABLE_APPLICATION_ID)); + globalTransactionDO.setBeginTime(rs.getLong(ServerTableColumnsName.GLOBAL_TABLE_BEGIN_TIME)); + globalTransactionDO.setTimeout(rs.getInt(ServerTableColumnsName.GLOBAL_TABLE_TIMEOUT)); + globalTransactionDO.setTransactionId(rs.getLong(ServerTableColumnsName.GLOBAL_TABLE_TRANSACTION_ID)); + globalTransactionDO.setTransactionName(rs.getString(ServerTableColumnsName.GLOBAL_TABLE_TRANSACTION_NAME)); + globalTransactionDO.setTransactionServiceGroup( + rs.getString(ServerTableColumnsName.GLOBAL_TABLE_TRANSACTION_SERVICE_GROUP)); + globalTransactionDO.setApplicationData(rs.getString(ServerTableColumnsName.GLOBAL_TABLE_APPLICATION_DATA)); + globalTransactionDO.setGmtCreate(rs.getTimestamp(ServerTableColumnsName.GLOBAL_TABLE_GMT_CREATE)); + globalTransactionDO.setGmtModified(rs.getTimestamp(ServerTableColumnsName.GLOBAL_TABLE_GMT_MODIFIED)); + return globalTransactionDO; + } + + private BranchTransactionDO convertBranchTransactionDO(ResultSet rs) throws SQLException { + BranchTransactionDO branchTransactionDO = new BranchTransactionDO(); + branchTransactionDO.setResourceGroupId(rs.getString(ServerTableColumnsName.BRANCH_TABLE_RESOURCE_GROUP_ID)); + branchTransactionDO.setStatus(rs.getInt(ServerTableColumnsName.BRANCH_TABLE_STATUS)); + branchTransactionDO.setApplicationData(rs.getString(ServerTableColumnsName.BRANCH_TABLE_APPLICATION_DATA)); + branchTransactionDO.setClientId(rs.getString(ServerTableColumnsName.BRANCH_TABLE_CLIENT_ID)); + branchTransactionDO.setXid(rs.getString(ServerTableColumnsName.BRANCH_TABLE_XID)); + branchTransactionDO.setResourceId(rs.getString(ServerTableColumnsName.BRANCH_TABLE_RESOURCE_ID)); + branchTransactionDO.setBranchId(rs.getLong(ServerTableColumnsName.BRANCH_TABLE_BRANCH_ID)); + branchTransactionDO.setBranchType(rs.getString(ServerTableColumnsName.BRANCH_TABLE_BRANCH_TYPE)); + branchTransactionDO.setTransactionId(rs.getLong(ServerTableColumnsName.BRANCH_TABLE_TRANSACTION_ID)); + branchTransactionDO.setGmtCreate(rs.getTimestamp(ServerTableColumnsName.BRANCH_TABLE_GMT_CREATE)); + branchTransactionDO.setGmtModified(rs.getTimestamp(ServerTableColumnsName.BRANCH_TABLE_GMT_MODIFIED)); + return branchTransactionDO; + } + + /** + * the public modifier only for test + */ + public void initTransactionNameSize() { + ColumnInfo columnInfo = queryTableStructure(globalTable, TRANSACTION_NAME_KEY); + if (columnInfo == null) { + LOGGER.warn("{} table or {} column not found", globalTable, TRANSACTION_NAME_KEY); + return; + } + this.transactionNameColumnSize = columnInfo.getColumnSize(); + } + + /** + * query column info from table + * @param tableName the table name + * @param colName the column name + * @return the column info + */ + private ColumnInfo queryTableStructure(final String tableName, String colName) { + try (Connection conn = logStoreDataSource.getConnection()) { + DatabaseMetaData dbmd = conn.getMetaData(); + String schema = getSchema(conn); + ResultSet tableRs = dbmd.getTables(null, schema, "%", new String[] { "TABLE" }); + while (tableRs.next()) { + String table = tableRs.getString("TABLE_NAME"); + if (StringUtils.equalsIgnoreCase(table, tableName)) { + ResultSet columnRs = conn.getMetaData().getColumns(null, schema, table, null); + while (columnRs.next()) { + ColumnInfo info = new ColumnInfo(); + String columnName = columnRs.getString("COLUMN_NAME"); + info.setColumnName(columnName); + String typeName = columnRs.getString("TYPE_NAME"); + info.setTypeName(typeName); + int columnSize = columnRs.getInt("COLUMN_SIZE"); + info.setColumnSize(columnSize); + String remarks = columnRs.getString("REMARKS"); + info.setRemarks(remarks); + if (StringUtils.equalsIgnoreCase(columnName, colName)) { + return info; + } + } + break; + } + } + } + catch (SQLException e) { + LOGGER.error("query transaction_name size fail, {}", e.getMessage(), e); + } + return null; + } + + private String getSchema(Connection conn) throws SQLException { + if ("h2".equalsIgnoreCase(dbType)) { + return null; + } + else if ("postgresql".equalsIgnoreCase(dbType)) { + String sql = "select current_schema"; + try (PreparedStatement ps = conn.prepareStatement(sql); ResultSet rs = ps.executeQuery()) { + String schema = null; + if (rs.next()) { + schema = rs.getString(1); + } + return schema; + } + catch (SQLException e) { + throw new StoreException(e); + } + } + else { + return conn.getMetaData().getUserName(); + } + } + + /** + * Sets log store data source. + * @param logStoreDataSource the log store data source + */ + public void setLogStoreDataSource(DataSource logStoreDataSource) { + this.logStoreDataSource = logStoreDataSource; + } + + /** + * Sets global table. + * @param globalTable the global table + */ + public void setGlobalTable(String globalTable) { + this.globalTable = globalTable; + } + + /** + * Sets branch table. + * @param branchTable the branch table + */ + public void setBranchTable(String branchTable) { + this.branchTable = branchTable; + } + + /** + * Sets db type. + * @param dbType the db type + */ + public void setDbType(String dbType) { + this.dbType = dbType; + } + + public int getTransactionNameColumnSize() { + return transactionNameColumnSize; + } + + /** + * column info + */ + private static class ColumnInfo { + + private String columnName; + + private String typeName; + + private int columnSize; + + private String remarks; + + public String getColumnName() { + return columnName; + } + + public void setColumnName(String columnName) { + this.columnName = columnName; + } + + public String getTypeName() { + return typeName; + } + + public void setTypeName(String typeName) { + this.typeName = typeName; + } + + public int getColumnSize() { + return columnSize; + } + + public void setColumnSize(int columnSize) { + this.columnSize = columnSize; + } + + public String getRemarks() { + return remarks; + } + + public void setRemarks(String remarks) { + this.remarks = remarks; + } + + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/FlushDiskMode.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/FlushDiskMode.java new file mode 100644 index 000000000..cab554b16 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/FlushDiskMode.java @@ -0,0 +1,45 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.file; + +/** + * @author lizhao + */ +public enum FlushDiskMode { + + /** + * sync flush disk + */ + SYNC_MODEL("sync"), + /** + * async flush disk + */ + ASYNC_MODEL("async"); + + private String modeStr; + + FlushDiskMode(String modeStr) { + this.modeStr = modeStr; + } + + public static FlushDiskMode findDiskMode(String modeStr) { + if (SYNC_MODEL.modeStr.equals(modeStr)) { + return SYNC_MODEL; + } + return ASYNC_MODEL; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/ReloadableStore.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/ReloadableStore.java new file mode 100644 index 000000000..90e822bdc --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/ReloadableStore.java @@ -0,0 +1,42 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.file; + +import java.util.List; + +/** + * The interface Reloadable store. + * + * @author zhangsen + */ +public interface ReloadableStore { + + /** + * Read write store. + * @param readSize the read size + * @param isHistory the is history + * @return the list + */ + List<TransactionWriteStore> readWriteStore(int readSize, boolean isHistory); + + /** + * Has remaining boolean. + * @param isHistory the is history + * @return the boolean + */ + boolean hasRemaining(boolean isHistory); + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/TransactionWriteStore.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/TransactionWriteStore.java new file mode 100644 index 000000000..881abdc9c --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/TransactionWriteStore.java @@ -0,0 +1,128 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.file; + +import java.nio.ByteBuffer; + +import io.seata.common.exception.ShouldNeverHappenException; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; +import io.seata.server.store.SessionStorable; +import io.seata.server.store.TransactionStoreManager.LogOperation; + +/** + * The type Transaction write store. + * + * @author slievrly + */ +public class TransactionWriteStore implements SessionStorable { + + private SessionStorable sessionRequest; + + private LogOperation operate; + + /** + * Instantiates a new Transaction write store. + * @param sessionRequest the session request + * @param operate the operate + */ + public TransactionWriteStore(SessionStorable sessionRequest, LogOperation operate) { + this.sessionRequest = sessionRequest; + this.operate = operate; + } + + /** + * Instantiates a new Transaction write store. + */ + public TransactionWriteStore() { + } + + /** + * Gets session request. + * @return the session request + */ + public SessionStorable getSessionRequest() { + return sessionRequest; + } + + /** + * Sets session request. + * @param sessionRequest the session request + */ + public void setSessionRequest(SessionStorable sessionRequest) { + this.sessionRequest = sessionRequest; + } + + /** + * Gets operate. + * @return the operate + */ + public LogOperation getOperate() { + return operate; + } + + /** + * Sets operate. + * @param operate the operate + */ + public void setOperate(LogOperation operate) { + this.operate = operate; + } + + @Override + public byte[] encode() { + byte[] bySessionRequest = this.sessionRequest.encode(); + byte byOpCode = this.getOperate().getCode(); + int len = bySessionRequest.length + 1; + byte[] byResult = new byte[len]; + ByteBuffer byteBuffer = ByteBuffer.wrap(byResult); + byteBuffer.put(bySessionRequest); + byteBuffer.put(byOpCode); + return byResult; + } + + @Override + public void decode(byte[] src) { + ByteBuffer byteBuffer = ByteBuffer.wrap(src); + byte[] bySessionRequest = new byte[src.length - 1]; + byteBuffer.get(bySessionRequest); + byte byOpCode = byteBuffer.get(); + this.operate = LogOperation.getLogOperationByCode(byOpCode); + SessionStorable tmpSessionStorable = getSessionInstanceByOperation(this.operate); + tmpSessionStorable.decode(bySessionRequest); + this.sessionRequest = tmpSessionStorable; + } + + private SessionStorable getSessionInstanceByOperation(LogOperation logOperation) { + SessionStorable sessionStorable = null; + switch (logOperation) { + case GLOBAL_ADD: + case GLOBAL_UPDATE: + case GLOBAL_REMOVE: + sessionStorable = new GlobalSession(); + break; + case BRANCH_ADD: + case BRANCH_UPDATE: + case BRANCH_REMOVE: + sessionStorable = new BranchSession(); + break; + default: + throw new ShouldNeverHappenException("incorrect logOperation"); + } + return sessionStorable; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/lock/FileLockManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/lock/FileLockManager.java new file mode 100644 index 000000000..3899d2bcc --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/lock/FileLockManager.java @@ -0,0 +1,61 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.file.lock; + +import java.util.ArrayList; + +import io.seata.common.loader.LoadLevel; +import io.seata.core.exception.TransactionException; +import io.seata.core.lock.Locker; +import io.seata.server.lock.AbstractLockManager; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; +import org.slf4j.MDC; + +import static io.seata.core.context.RootContext.MDC_KEY_BRANCH_ID; + +/** + * The type file lock manager. + * + * @author zhangsen + */ +@LoadLevel(name = "file") +public class FileLockManager extends AbstractLockManager { + + @Override + public Locker getLocker(BranchSession branchSession) { + return new FileLocker(branchSession); + } + + @Override + public boolean releaseGlobalSessionLock(GlobalSession globalSession) throws TransactionException { + ArrayList<BranchSession> branchSessions = globalSession.getBranchSessions(); + boolean releaseLockResult = true; + for (BranchSession branchSession : branchSessions) { + try { + MDC.put(MDC_KEY_BRANCH_ID, String.valueOf(branchSession.getBranchId())); + if (!this.releaseLock(branchSession)) { + releaseLockResult = false; + } + } + finally { + MDC.remove(MDC_KEY_BRANCH_ID); + } + } + return releaseLockResult; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/lock/FileLocker.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/lock/FileLocker.java new file mode 100644 index 000000000..c348446e6 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/lock/FileLocker.java @@ -0,0 +1,200 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.file.lock; + +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; + +import io.netty.util.internal.ConcurrentSet; +import io.seata.common.exception.FrameworkException; +import io.seata.common.util.CollectionUtils; +import io.seata.core.exception.TransactionException; +import io.seata.core.lock.AbstractLocker; +import io.seata.core.lock.RowLock; +import io.seata.server.session.BranchSession; + +/** + * The type Memory locker. + * + * @author zhangsen + */ +public class FileLocker extends AbstractLocker { + + private static final int BUCKET_PER_TABLE = 128; + + private static final ConcurrentMap<String/* resourceId */, ConcurrentMap<String/* + * tableName + */, ConcurrentMap<Integer/* + * bucketId + */, BucketLockMap>>> LOCK_MAP = new ConcurrentHashMap<>(); + + /** + * The Branch session. + */ + protected BranchSession branchSession = null; + + /** + * Instantiates a new Memory locker. + * @param branchSession the branch session + */ + public FileLocker(BranchSession branchSession) { + this.branchSession = branchSession; + } + + @Override + public boolean acquireLock(List<RowLock> rowLocks) { + if (CollectionUtils.isEmpty(rowLocks)) { + // no lock + return true; + } + String resourceId = branchSession.getResourceId(); + long transactionId = branchSession.getTransactionId(); + + ConcurrentMap<BucketLockMap, Set<String>> bucketHolder = branchSession.getLockHolder(); + ConcurrentMap<String, ConcurrentMap<Integer, BucketLockMap>> dbLockMap = CollectionUtils + .computeIfAbsent(LOCK_MAP, resourceId, key -> new ConcurrentHashMap<>()); + + for (RowLock lock : rowLocks) { + String tableName = lock.getTableName(); + String pk = lock.getPk(); + ConcurrentMap<Integer, BucketLockMap> tableLockMap = CollectionUtils.computeIfAbsent(dbLockMap, tableName, + key -> new ConcurrentHashMap<>()); + + int bucketId = pk.hashCode() % BUCKET_PER_TABLE; + BucketLockMap bucketLockMap = CollectionUtils.computeIfAbsent(tableLockMap, bucketId, + key -> new BucketLockMap()); + Long previousLockTransactionId = bucketLockMap.get().putIfAbsent(pk, transactionId); + if (previousLockTransactionId == null) { + // No existing lock, and now locked by myself + Set<String> keysInHolder = CollectionUtils.computeIfAbsent(bucketHolder, bucketLockMap, + key -> new ConcurrentSet<>()); + keysInHolder.add(pk); + } + else if (previousLockTransactionId == transactionId) { + // Locked by me before + continue; + } + else { + LOGGER.info("Global lock on [" + tableName + ":" + pk + "] is holding by " + previousLockTransactionId); + try { + // Release all acquired locks. + branchSession.unlock(); + } + catch (TransactionException e) { + throw new FrameworkException(e); + } + return false; + } + } + return true; + } + + @Override + public boolean releaseLock(List<RowLock> rowLock) { + if (CollectionUtils.isEmpty(rowLock)) { + // no lock + return true; + } + ConcurrentMap<BucketLockMap, Set<String>> lockHolder = branchSession.getLockHolder(); + if (CollectionUtils.isEmpty(lockHolder)) { + return true; + } + for (Map.Entry<BucketLockMap, Set<String>> entry : lockHolder.entrySet()) { + BucketLockMap bucket = entry.getKey(); + Set<String> keys = entry.getValue(); + for (String key : keys) { + // remove lock only if it locked by myself + bucket.get().remove(key, branchSession.getTransactionId()); + } + } + lockHolder.clear(); + return true; + } + + @Override + public boolean isLockable(List<RowLock> rowLocks) { + if (CollectionUtils.isEmpty(rowLocks)) { + // no lock + return true; + } + Long transactionId = rowLocks.get(0).getTransactionId(); + String resourceId = rowLocks.get(0).getResourceId(); + ConcurrentMap<String, ConcurrentMap<Integer, BucketLockMap>> dbLockMap = LOCK_MAP.get(resourceId); + if (dbLockMap == null) { + return true; + } + for (RowLock rowLock : rowLocks) { + String tableName = rowLock.getTableName(); + String pk = rowLock.getPk(); + + ConcurrentMap<Integer, BucketLockMap> tableLockMap = dbLockMap.get(tableName); + if (tableLockMap == null) { + continue; + } + int bucketId = pk.hashCode() % BUCKET_PER_TABLE; + BucketLockMap bucketLockMap = tableLockMap.get(bucketId); + if (bucketLockMap == null) { + continue; + } + Long lockingTransactionId = bucketLockMap.get().get(pk); + if (lockingTransactionId == null || lockingTransactionId.longValue() == transactionId) { + // Locked by me + continue; + } + else { + LOGGER.info("Global lock on [" + tableName + ":" + pk + "] is holding by " + lockingTransactionId); + return false; + } + } + return true; + } + + @Override + public void cleanAllLocks() { + LOCK_MAP.clear(); + } + + /** + * Because bucket lock map will be key of HashMap(lockHolder), however + * {@link ConcurrentHashMap} overwrites {@link Object##hashCode()} and + * {@link Object##equals(Object)}, that leads to hash key conflict in lockHolder. We + * define a {@link BucketLockMap} to hold the ConcurrentHashMap(bucketLockMap) and + * replace it as key of HashMap(lockHolder). + */ + public static class BucketLockMap { + + private final ConcurrentHashMap<String/* pk */, Long/* transactionId */> bucketLockMap = new ConcurrentHashMap<>(); + + ConcurrentHashMap<String, Long> get() { + return bucketLockMap; + } + + @Override + public int hashCode() { + return super.hashCode(); + } + + @Override + public boolean equals(Object o) { + return super.equals(o); + } + + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/session/FileSessionManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/session/FileSessionManager.java new file mode 100644 index 000000000..f0016fd86 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/session/FileSessionManager.java @@ -0,0 +1,338 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.file.session; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; + +import io.seata.common.exception.ShouldNeverHappenException; +import io.seata.common.loader.LoadLevel; +import io.seata.common.loader.Scope; +import io.seata.common.util.StringUtils; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; +import io.seata.core.exception.TransactionException; +import io.seata.core.model.GlobalStatus; +import io.seata.server.session.AbstractSessionManager; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.Reloadable; +import io.seata.server.session.SessionCondition; +import io.seata.server.storage.file.ReloadableStore; +import io.seata.server.storage.file.TransactionWriteStore; +import io.seata.server.storage.file.store.FileTransactionStoreManager; +import io.seata.server.store.AbstractTransactionStoreManager; +import io.seata.server.store.SessionStorable; +import io.seata.server.store.TransactionStoreManager; + +/** + * The type File based session manager. + * + * @author slievrly + */ +@LoadLevel(name = "file", scope = Scope.PROTOTYPE) +public class FileSessionManager extends AbstractSessionManager implements Reloadable { + + private static final int READ_SIZE = ConfigurationFactory.getInstance() + .getInt(ConfigurationKeys.SERVICE_SESSION_RELOAD_READ_SIZE, 100); + + /** + * The Session map. + */ + private Map<String, GlobalSession> sessionMap = new ConcurrentHashMap<>(); + + /** + * Instantiates a new File based session manager. + * @param name the name + * @param sessionStoreFilePath the session store file path + * @throws IOException the io exception + */ + public FileSessionManager(String name, String sessionStoreFilePath) throws IOException { + super(name); + if (StringUtils.isNotBlank(sessionStoreFilePath)) { + transactionStoreManager = new FileTransactionStoreManager(sessionStoreFilePath + File.separator + name, + this); + } + else { + transactionStoreManager = new AbstractTransactionStoreManager() { + @Override + public boolean writeSession(LogOperation logOperation, SessionStorable session) { + return true; + } + }; + } + } + + @Override + public void reload() { + restoreSessions(); + } + + @Override + public void addGlobalSession(GlobalSession session) throws TransactionException { + super.addGlobalSession(session); + sessionMap.put(session.getXid(), session); + } + + @Override + public GlobalSession findGlobalSession(String xid) { + return sessionMap.get(xid); + } + + @Override + public GlobalSession findGlobalSession(String xid, boolean withBranchSessions) { + // withBranchSessions without process in memory + return sessionMap.get(xid); + } + + @Override + public void removeGlobalSession(GlobalSession session) throws TransactionException { + super.removeGlobalSession(session); + sessionMap.remove(session.getXid()); + } + + @Override + public Collection<GlobalSession> allSessions() { + return sessionMap.values(); + } + + @Override + public List<GlobalSession> findGlobalSessions(SessionCondition condition) { + List<GlobalSession> found = new ArrayList<>(); + for (GlobalSession globalSession : sessionMap.values()) { + if (System.currentTimeMillis() - globalSession.getBeginTime() > condition.getOverTimeAliveMills()) { + found.add(globalSession); + } + } + return found; + } + + @Override + public <T> T lockAndExecute(GlobalSession globalSession, GlobalSession.LockCallable<T> lockCallable) + throws TransactionException { + globalSession.lock(); + try { + return lockCallable.call(); + } + finally { + globalSession.unlock(); + } + } + + private void restoreSessions() { + final Set<String> removedGlobalBuffer = new HashSet<>(); + final Map<String, Map<Long, BranchSession>> unhandledBranchBuffer = new HashMap<>(); + + restoreSessions(true, removedGlobalBuffer, unhandledBranchBuffer); + restoreSessions(false, removedGlobalBuffer, unhandledBranchBuffer); + + if (!unhandledBranchBuffer.isEmpty()) { + unhandledBranchBuffer.values().forEach(unhandledBranchSessions -> { + unhandledBranchSessions.values().forEach(branchSession -> { + String xid = branchSession.getXid(); + if (removedGlobalBuffer.contains(xid)) { + return; + } + + long bid = branchSession.getBranchId(); + GlobalSession found = sessionMap.get(xid); + if (found == null) { + // Ignore + if (LOGGER.isInfoEnabled()) { + LOGGER.info("GlobalSession Does Not Exists For BranchSession [" + bid + "/" + xid + "]"); + } + } + else { + BranchSession existingBranch = found.getBranch(branchSession.getBranchId()); + if (existingBranch == null) { + found.add(branchSession); + } + else { + existingBranch.setStatus(branchSession.getStatus()); + } + } + }); + }); + } + } + + private boolean checkSessionStatus(GlobalSession globalSession) { + GlobalStatus globalStatus = globalSession.getStatus(); + switch (globalStatus) { + case UnKnown: + case Committed: + case CommitFailed: + case Rollbacked: + case RollbackFailed: + case TimeoutRollbacked: + case TimeoutRollbackFailed: + case Finished: + return false; + default: + return true; + } + } + + private void restoreSessions(boolean isHistory, Set<String> removedGlobalBuffer, + Map<String, Map<Long, BranchSession>> unhandledBranchBuffer) { + if (!(transactionStoreManager instanceof ReloadableStore)) { + return; + } + while (((ReloadableStore) transactionStoreManager).hasRemaining(isHistory)) { + List<TransactionWriteStore> stores = ((ReloadableStore) transactionStoreManager).readWriteStore(READ_SIZE, + isHistory); + restore(stores, removedGlobalBuffer, unhandledBranchBuffer); + } + } + + private void restore(List<TransactionWriteStore> stores, Set<String> removedGlobalBuffer, + Map<String, Map<Long, BranchSession>> unhandledBranchBuffer) { + for (TransactionWriteStore store : stores) { + TransactionStoreManager.LogOperation logOperation = store.getOperate(); + SessionStorable sessionStorable = store.getSessionRequest(); + switch (logOperation) { + case GLOBAL_ADD: + case GLOBAL_UPDATE: { + GlobalSession globalSession = (GlobalSession) sessionStorable; + if (globalSession.getTransactionId() == 0) { + LOGGER.error("Restore globalSession from file failed, the transactionId is zero , xid:" + + globalSession.getXid()); + break; + } + if (removedGlobalBuffer.contains(globalSession.getXid())) { + break; + } + GlobalSession foundGlobalSession = sessionMap.get(globalSession.getXid()); + if (foundGlobalSession == null) { + if (this.checkSessionStatus(globalSession)) { + sessionMap.put(globalSession.getXid(), globalSession); + } + else { + removedGlobalBuffer.add(globalSession.getXid()); + unhandledBranchBuffer.remove(globalSession.getXid()); + } + } + else { + if (this.checkSessionStatus(globalSession)) { + foundGlobalSession.setStatus(globalSession.getStatus()); + } + else { + sessionMap.remove(globalSession.getXid()); + removedGlobalBuffer.add(globalSession.getXid()); + unhandledBranchBuffer.remove(globalSession.getXid()); + } + } + break; + } + case GLOBAL_REMOVE: { + GlobalSession globalSession = (GlobalSession) sessionStorable; + if (globalSession.getTransactionId() == 0) { + LOGGER.error("Restore globalSession from file failed, the transactionId is zero , xid:" + + globalSession.getXid()); + break; + } + if (removedGlobalBuffer.contains(globalSession.getXid())) { + break; + } + if (sessionMap.remove(globalSession.getXid()) == null) { + if (LOGGER.isInfoEnabled()) { + LOGGER.info("GlobalSession To Be Removed Does Not Exists [" + globalSession.getXid() + "]"); + } + } + removedGlobalBuffer.add(globalSession.getXid()); + unhandledBranchBuffer.remove(globalSession.getXid()); + break; + } + case BRANCH_ADD: + case BRANCH_UPDATE: { + BranchSession branchSession = (BranchSession) sessionStorable; + if (branchSession.getTransactionId() == 0) { + LOGGER.error("Restore branchSession from file failed, the transactionId is zero , xid:" + + branchSession.getXid()); + break; + } + if (removedGlobalBuffer.contains(branchSession.getXid())) { + break; + } + GlobalSession foundGlobalSession = sessionMap.get(branchSession.getXid()); + if (foundGlobalSession == null) { + unhandledBranchBuffer.computeIfAbsent(branchSession.getXid(), key -> new HashMap<>()) + .put(branchSession.getBranchId(), branchSession); + } + else { + BranchSession existingBranch = foundGlobalSession.getBranch(branchSession.getBranchId()); + if (existingBranch == null) { + foundGlobalSession.add(branchSession); + } + else { + existingBranch.setStatus(branchSession.getStatus()); + } + } + break; + } + case BRANCH_REMOVE: { + BranchSession branchSession = (BranchSession) sessionStorable; + String xid = branchSession.getXid(); + if (removedGlobalBuffer.contains(xid)) { + break; + } + long bid = branchSession.getBranchId(); + if (branchSession.getTransactionId() == 0) { + LOGGER.error("Restore branchSession from file failed, the transactionId is zero , xid:" + + branchSession.getXid()); + break; + } + GlobalSession found = sessionMap.get(xid); + if (found == null) { + if (LOGGER.isInfoEnabled()) { + LOGGER.info("GlobalSession To Be Updated (Remove Branch) Does Not Exists [" + bid + "/" + xid + + "]"); + } + } + else { + BranchSession theBranch = found.getBranch(bid); + if (theBranch == null) { + if (LOGGER.isInfoEnabled()) { + LOGGER.info("BranchSession To Be Updated Does Not Exists [" + bid + "/" + xid + "]"); + } + } + else { + found.remove(theBranch); + } + } + break; + } + default: + throw new ShouldNeverHappenException("Unknown Operation: " + logOperation); + } + } + + } + + @Override + public void destroy() { + transactionStoreManager.shutdown(); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/store/FileTransactionStoreManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/store/FileTransactionStoreManager.java new file mode 100644 index 000000000..ce4707333 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/file/store/FileTransactionStoreManager.java @@ -0,0 +1,686 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.file.store; + +import java.io.File; +import java.io.IOException; +import java.io.RandomAccessFile; +import java.nio.ByteBuffer; +import java.nio.channels.FileChannel; +import java.nio.file.Files; +import java.nio.file.StandardCopyOption; +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.ReentrantLock; + +import io.seata.common.exception.StoreException; +import io.seata.common.thread.NamedThreadFactory; +import io.seata.common.util.CollectionUtils; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionCondition; +import io.seata.server.session.SessionManager; +import io.seata.server.store.AbstractTransactionStoreManager; +import io.seata.server.storage.file.FlushDiskMode; +import io.seata.server.storage.file.ReloadableStore; +import io.seata.server.store.SessionStorable; +import io.seata.server.store.StoreConfig; +import io.seata.server.store.TransactionStoreManager; +import io.seata.server.storage.file.TransactionWriteStore; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.slf4j.MDC; + +import static io.seata.core.context.RootContext.MDC_KEY_BRANCH_ID; + +/** + * The type File transaction store manager. + * + * @author slievrly + */ +public class FileTransactionStoreManager extends AbstractTransactionStoreManager + implements TransactionStoreManager, ReloadableStore { + + private static final Logger LOGGER = LoggerFactory.getLogger(FileTransactionStoreManager.class); + + private static final int MAX_THREAD_WRITE = 1; + + private ExecutorService fileWriteExecutor; + + private volatile boolean stopping = false; + + private static final int MAX_SHUTDOWN_RETRY = 3; + + private static final int SHUTDOWN_CHECK_INTERNAL = 1 * 1000; + + private static final int MAX_WRITE_RETRY = 5; + + private static final String HIS_DATA_FILENAME_POSTFIX = ".1"; + + private static final AtomicLong FILE_TRX_NUM = new AtomicLong(0); + + private static final AtomicLong FILE_FLUSH_NUM = new AtomicLong(0); + + private static final int MARK_SIZE = 4; + + private static final int MAX_WAIT_TIME_MILLS = 2 * 1000; + + private static final int MAX_FLUSH_TIME_MILLS = 2 * 1000; + + private static final int MAX_FLUSH_NUM = 10; + + private static final int PER_FILE_BLOCK_SIZE = 65535 * 8; + + private static final long MAX_TRX_TIMEOUT_MILLS = 30 * 60 * 1000; + + private static volatile long trxStartTimeMills = System.currentTimeMillis(); + + private File currDataFile; + + private RandomAccessFile currRaf; + + private FileChannel currFileChannel; + + private long recoverCurrOffset = 0; + + private long recoverHisOffset = 0; + + private SessionManager sessionManager; + + private String currFullFileName; + + private String hisFullFileName; + + private WriteDataFileRunnable writeDataFileRunnable; + + private ReentrantLock writeSessionLock = new ReentrantLock(); + + private volatile long lastModifiedTime; + + private static final int MAX_WRITE_BUFFER_SIZE = StoreConfig.getFileWriteBufferCacheSize(); + + private final ByteBuffer writeBuffer = ByteBuffer.allocateDirect(MAX_WRITE_BUFFER_SIZE); + + private static final FlushDiskMode FLUSH_DISK_MODE = StoreConfig.getFlushDiskMode(); + + private static final int MAX_WAIT_FOR_FLUSH_TIME_MILLS = 2 * 1000; + + private static final int MAX_WAIT_FOR_CLOSE_TIME_MILLS = 2 * 1000; + + private static final int INT_BYTE_SIZE = 4; + + /** + * Instantiates a new File transaction store manager. + * @param fullFileName the dir path + * @param sessionManager the session manager + * @throws IOException the io exception + */ + public FileTransactionStoreManager(String fullFileName, SessionManager sessionManager) throws IOException { + initFile(fullFileName); + fileWriteExecutor = new ThreadPoolExecutor(MAX_THREAD_WRITE, MAX_THREAD_WRITE, Integer.MAX_VALUE, + TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>(), + new NamedThreadFactory("fileTransactionStore", MAX_THREAD_WRITE, true)); + writeDataFileRunnable = new WriteDataFileRunnable(); + fileWriteExecutor.submit(writeDataFileRunnable); + this.sessionManager = sessionManager; + } + + private void initFile(String fullFileName) throws IOException { + this.currFullFileName = fullFileName; + this.hisFullFileName = fullFileName + HIS_DATA_FILENAME_POSTFIX; + try { + currDataFile = new File(currFullFileName); + if (!currDataFile.exists()) { + // create parent dir first + if (currDataFile.getParentFile() != null && !currDataFile.getParentFile().exists()) { + currDataFile.getParentFile().mkdirs(); + } + currDataFile.createNewFile(); + trxStartTimeMills = System.currentTimeMillis(); + } + else { + trxStartTimeMills = currDataFile.lastModified(); + } + lastModifiedTime = System.currentTimeMillis(); + currRaf = new RandomAccessFile(currDataFile, "rw"); + currRaf.seek(currDataFile.length()); + currFileChannel = currRaf.getChannel(); + } + catch (IOException exx) { + LOGGER.error("init file error,{}", exx.getMessage(), exx); + throw exx; + } + } + + @Override + public boolean writeSession(LogOperation logOperation, SessionStorable session) { + writeSessionLock.lock(); + long curFileTrxNum; + try { + if (!writeDataFile(new TransactionWriteStore(session, logOperation).encode())) { + return false; + } + lastModifiedTime = System.currentTimeMillis(); + curFileTrxNum = FILE_TRX_NUM.incrementAndGet(); + if (curFileTrxNum % PER_FILE_BLOCK_SIZE == 0 + && (System.currentTimeMillis() - trxStartTimeMills) > MAX_TRX_TIMEOUT_MILLS) { + return saveHistory(); + } + } + catch (Exception exx) { + LOGGER.error("writeSession error, {}", exx.getMessage(), exx); + return false; + } + finally { + writeSessionLock.unlock(); + } + flushDisk(curFileTrxNum, currFileChannel); + return true; + } + + private void flushDisk(long curFileNum, FileChannel currFileChannel) { + + if (FLUSH_DISK_MODE == FlushDiskMode.SYNC_MODEL) { + SyncFlushRequest syncFlushRequest = new SyncFlushRequest(curFileNum, currFileChannel); + writeDataFileRunnable.putRequest(syncFlushRequest); + syncFlushRequest.waitForFlush(MAX_WAIT_FOR_FLUSH_TIME_MILLS); + } + else { + writeDataFileRunnable.putRequest(new AsyncFlushRequest(curFileNum, currFileChannel)); + } + } + + /** + * get all overTimeSessionStorables merge write file + * @throws IOException + */ + private boolean saveHistory() throws IOException { + boolean result; + try { + result = findTimeoutAndSave(); + CloseFileRequest request = new CloseFileRequest(currFileChannel, currRaf); + writeDataFileRunnable.putRequest(request); + request.waitForClose(MAX_WAIT_FOR_CLOSE_TIME_MILLS); + Files.move(currDataFile.toPath(), new File(hisFullFileName).toPath(), StandardCopyOption.REPLACE_EXISTING); + } + catch (IOException exx) { + LOGGER.error("save history data file error, {}", exx.getMessage(), exx); + result = false; + } + finally { + initFile(currFullFileName); + } + return result; + } + + private boolean writeDataFrame(byte[] data) { + if (data == null || data.length <= 0) { + return true; + } + int dataLength = data.length; + int bufferRemainingSize = writeBuffer.remaining(); + if (bufferRemainingSize <= INT_BYTE_SIZE) { + if (!flushWriteBuffer(writeBuffer)) { + return false; + } + } + bufferRemainingSize = writeBuffer.remaining(); + if (bufferRemainingSize <= INT_BYTE_SIZE) { + throw new IllegalStateException( + String.format("Write buffer remaining size %d was too small", bufferRemainingSize)); + } + writeBuffer.putInt(dataLength); + bufferRemainingSize = writeBuffer.remaining(); + int dataPos = 0; + while (dataPos < dataLength) { + int dataLengthToWrite = dataLength - dataPos; + dataLengthToWrite = Math.min(dataLengthToWrite, bufferRemainingSize); + writeBuffer.put(data, dataPos, dataLengthToWrite); + bufferRemainingSize = writeBuffer.remaining(); + if (bufferRemainingSize == 0) { + if (!flushWriteBuffer(writeBuffer)) { + return false; + } + bufferRemainingSize = writeBuffer.remaining(); + } + dataPos += dataLengthToWrite; + } + return true; + } + + private boolean flushWriteBuffer(ByteBuffer writeBuffer) { + writeBuffer.flip(); + if (!writeDataFileByBuffer(writeBuffer)) { + return false; + } + writeBuffer.clear(); + return true; + } + + private boolean findTimeoutAndSave() throws IOException { + List<GlobalSession> globalSessionsOverMaxTimeout = sessionManager + .findGlobalSessions(new SessionCondition(MAX_TRX_TIMEOUT_MILLS)); + if (CollectionUtils.isEmpty(globalSessionsOverMaxTimeout)) { + return true; + } + for (GlobalSession globalSession : globalSessionsOverMaxTimeout) { + TransactionWriteStore globalWriteStore = new TransactionWriteStore(globalSession, LogOperation.GLOBAL_ADD); + byte[] data = globalWriteStore.encode(); + if (!writeDataFrame(data)) { + return false; + } + List<BranchSession> branchSessIonsOverMaXTimeout = globalSession.getSortedBranches(); + if (branchSessIonsOverMaXTimeout != null) { + for (BranchSession branchSession : branchSessIonsOverMaXTimeout) { + try { + MDC.put(MDC_KEY_BRANCH_ID, String.valueOf(branchSession.getBranchId())); + TransactionWriteStore branchWriteStore = new TransactionWriteStore(branchSession, + LogOperation.BRANCH_ADD); + data = branchWriteStore.encode(); + if (!writeDataFrame(data)) { + return false; + } + } + finally { + MDC.remove(MDC_KEY_BRANCH_ID); + } + } + } + } + if (flushWriteBuffer(writeBuffer)) { + currFileChannel.force(false); + return true; + } + return false; + } + + @Override + public GlobalSession readSession(String xid) { + throw new StoreException("unsupport for read from file, xid:" + xid); + } + + @Override + public List<GlobalSession> readSession(SessionCondition sessionCondition) { + throw new StoreException("unsupport for read from file"); + } + + @Override + public void shutdown() { + if (fileWriteExecutor != null) { + fileWriteExecutor.shutdown(); + stopping = true; + int retry = 0; + while (!fileWriteExecutor.isTerminated() && retry < MAX_SHUTDOWN_RETRY) { + ++retry; + try { + Thread.sleep(SHUTDOWN_CHECK_INTERNAL); + } + catch (InterruptedException ignore) { + } + } + if (retry >= MAX_SHUTDOWN_RETRY) { + fileWriteExecutor.shutdownNow(); + } + } + try { + currFileChannel.force(true); + } + catch (IOException e) { + LOGGER.error("fileChannel force error{}", e.getMessage(), e); + } + closeFile(currRaf); + } + + @Override + public List<TransactionWriteStore> readWriteStore(int readSize, boolean isHistory) { + File file = null; + long currentOffset = 0; + if (isHistory) { + file = new File(hisFullFileName); + currentOffset = recoverHisOffset; + } + else { + file = new File(currFullFileName); + currentOffset = recoverCurrOffset; + } + if (file.exists()) { + return parseDataFile(file, readSize, currentOffset, isHistory); + } + return null; + } + + @Override + public boolean hasRemaining(boolean isHistory) { + File file = null; + RandomAccessFile raf = null; + long currentOffset = 0; + if (isHistory) { + file = new File(hisFullFileName); + currentOffset = recoverHisOffset; + } + else { + file = new File(currFullFileName); + currentOffset = recoverCurrOffset; + } + try { + raf = new RandomAccessFile(file, "r"); + return currentOffset < raf.length(); + + } + catch (IOException ignore) { + } + finally { + closeFile(raf); + } + return false; + } + + private List<TransactionWriteStore> parseDataFile(File file, int readSize, long currentOffset, boolean isHistory) { + List<TransactionWriteStore> transactionWriteStores = new ArrayList<>(readSize); + RandomAccessFile raf = null; + FileChannel fileChannel = null; + try { + raf = new RandomAccessFile(file, "r"); + raf.seek(currentOffset); + fileChannel = raf.getChannel(); + fileChannel.position(currentOffset); + long size = raf.length(); + ByteBuffer buffSize = ByteBuffer.allocate(MARK_SIZE); + while (fileChannel.position() < size) { + try { + buffSize.clear(); + int avilReadSize = fileChannel.read(buffSize); + if (avilReadSize != MARK_SIZE) { + break; + } + buffSize.flip(); + int bodySize = buffSize.getInt(); + byte[] byBody = new byte[bodySize]; + ByteBuffer buffBody = ByteBuffer.wrap(byBody); + avilReadSize = fileChannel.read(buffBody); + if (avilReadSize != bodySize) { + break; + } + TransactionWriteStore writeStore = new TransactionWriteStore(); + writeStore.decode(byBody); + transactionWriteStores.add(writeStore); + if (transactionWriteStores.size() == readSize) { + break; + } + } + catch (Exception ex) { + LOGGER.error("decode data file error:{}", ex.getMessage(), ex); + break; + } + } + return transactionWriteStores; + } + catch (IOException exx) { + LOGGER.error("parse data file error:{},file:{}", exx.getMessage(), file.getName(), exx); + return null; + } + finally { + try { + if (fileChannel != null) { + if (isHistory) { + recoverHisOffset = fileChannel.position(); + } + else { + recoverCurrOffset = fileChannel.position(); + } + } + closeFile(raf); + } + catch (IOException exx) { + LOGGER.error("file close error{}", exx.getMessage(), exx); + } + } + } + + private void closeFile(RandomAccessFile raf) { + try { + if (raf != null) { + raf.close(); + raf = null; + } + } + catch (IOException exx) { + LOGGER.error("file close error,{}", exx.getMessage(), exx); + } + } + + private boolean writeDataFile(byte[] bs) { + if (bs == null || bs.length >= Integer.MAX_VALUE - 3) { + return false; + } + if (!writeDataFrame(bs)) { + return false; + } + return flushWriteBuffer(writeBuffer); + } + + private boolean writeDataFileByBuffer(ByteBuffer byteBuffer) { + for (int retry = 0; retry < MAX_WRITE_RETRY; retry++) { + try { + while (byteBuffer.hasRemaining()) { + currFileChannel.write(byteBuffer); + } + return true; + } + catch (Exception exx) { + LOGGER.error("write data file error:{}", exx.getMessage(), exx); + } + } + LOGGER.error("write dataFile failed,retry more than :{}", MAX_WRITE_RETRY); + return false; + } + + interface StoreRequest { + + } + + abstract static class AbstractFlushRequest implements StoreRequest { + + private final long curFileTrxNum; + + private final FileChannel curFileChannel; + + protected AbstractFlushRequest(long curFileTrxNum, FileChannel curFileChannel) { + this.curFileTrxNum = curFileTrxNum; + this.curFileChannel = curFileChannel; + } + + public long getCurFileTrxNum() { + return curFileTrxNum; + } + + public FileChannel getCurFileChannel() { + return curFileChannel; + } + + } + + class SyncFlushRequest extends AbstractFlushRequest { + + private final CountDownLatch countDownLatch = new CountDownLatch(1); + + public SyncFlushRequest(long curFileTrxNum, FileChannel curFileChannel) { + super(curFileTrxNum, curFileChannel); + } + + public void wakeup() { + this.countDownLatch.countDown(); + } + + public void waitForFlush(long timeout) { + try { + this.countDownLatch.await(timeout, TimeUnit.MILLISECONDS); + } + catch (InterruptedException e) { + LOGGER.error("Interrupted", e); + } + } + + } + + class AsyncFlushRequest extends AbstractFlushRequest { + + public AsyncFlushRequest(long curFileTrxNum, FileChannel curFileChannel) { + super(curFileTrxNum, curFileChannel); + } + + } + + static class CloseFileRequest implements StoreRequest { + + private final CountDownLatch countDownLatch = new CountDownLatch(1); + + private FileChannel fileChannel; + + private RandomAccessFile file; + + public CloseFileRequest(FileChannel fileChannel, RandomAccessFile file) { + this.fileChannel = fileChannel; + this.file = file; + } + + public FileChannel getFileChannel() { + return fileChannel; + } + + public RandomAccessFile getFile() { + return file; + } + + public void wakeup() { + this.countDownLatch.countDown(); + } + + public void waitForClose(long timeout) { + try { + this.countDownLatch.await(timeout, TimeUnit.MILLISECONDS); + } + catch (InterruptedException e) { + LOGGER.error("Interrupted", e); + } + } + + } + + /** + * The type Write data file runnable. + */ + class WriteDataFileRunnable implements Runnable { + + private LinkedBlockingQueue<StoreRequest> storeRequests = new LinkedBlockingQueue<>(); + + public void putRequest(final StoreRequest request) { + storeRequests.add(request); + } + + @Override + public void run() { + while (!stopping) { + try { + StoreRequest storeRequest = storeRequests.poll(MAX_WAIT_TIME_MILLS, TimeUnit.MILLISECONDS); + handleStoreRequest(storeRequest); + } + catch (Exception exx) { + LOGGER.error("write file error: {}", exx.getMessage(), exx); + } + } + handleRestRequest(); + } + + /** + * handle the rest requests when stopping is true + */ + private void handleRestRequest() { + int remainNums = storeRequests.size(); + for (int i = 0; i < remainNums; i++) { + handleStoreRequest(storeRequests.poll()); + } + } + + private void handleStoreRequest(StoreRequest storeRequest) { + if (storeRequest == null) { + flushOnCondition(currFileChannel); + } + if (storeRequest instanceof SyncFlushRequest) { + syncFlush((SyncFlushRequest) storeRequest); + } + else if (storeRequest instanceof AsyncFlushRequest) { + async((AsyncFlushRequest) storeRequest); + } + else if (storeRequest instanceof CloseFileRequest) { + closeAndFlush((CloseFileRequest) storeRequest); + } + } + + private void closeAndFlush(CloseFileRequest req) { + long diff = FILE_TRX_NUM.get() - FILE_FLUSH_NUM.get(); + flush(req.getFileChannel()); + FILE_FLUSH_NUM.addAndGet(diff); + closeFile(req.getFile()); + req.wakeup(); + } + + private void async(AsyncFlushRequest req) { + flushOnCondition(req.getCurFileChannel()); + } + + private void syncFlush(SyncFlushRequest req) { + if (req.getCurFileTrxNum() > FILE_FLUSH_NUM.get()) { + long diff = FILE_TRX_NUM.get() - FILE_FLUSH_NUM.get(); + flush(req.getCurFileChannel()); + FILE_FLUSH_NUM.addAndGet(diff); + } + // notify + req.wakeup(); + } + + private void flushOnCondition(FileChannel fileChannel) { + if (FLUSH_DISK_MODE == FlushDiskMode.SYNC_MODEL) { + return; + } + long diff = FILE_TRX_NUM.get() - FILE_FLUSH_NUM.get(); + if (diff == 0) { + return; + } + if (diff % MAX_FLUSH_NUM == 0 || System.currentTimeMillis() - lastModifiedTime > MAX_FLUSH_TIME_MILLS) { + flush(fileChannel); + FILE_FLUSH_NUM.addAndGet(diff); + } + } + + private void flush(FileChannel fileChannel) { + try { + fileChannel.force(false); + } + catch (IOException exx) { + LOGGER.error("flush error: {}", exx.getMessage(), exx); + } + } + + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/JedisPooledFactory.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/JedisPooledFactory.java new file mode 100644 index 000000000..f7cab8a87 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/JedisPooledFactory.java @@ -0,0 +1,144 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.redis; + +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import io.seata.common.util.ConfigTools; +import io.seata.common.exception.RedisException; +import io.seata.common.util.StringUtils; +import io.seata.config.Configuration; +import io.seata.config.ConfigurationFactory; +import io.seata.core.constants.ConfigurationKeys; + +import redis.clients.jedis.Jedis; +import redis.clients.jedis.JedisPool; +import redis.clients.jedis.JedisPoolAbstract; +import redis.clients.jedis.JedisPoolConfig; +import redis.clients.jedis.JedisSentinelPool; + +/** + * @author funkye + */ +public class JedisPooledFactory { + + /** + * The constant LOGGER. + */ + protected static final Logger LOGGER = LoggerFactory.getLogger(JedisPooledFactory.class); + + private static volatile JedisPoolAbstract jedisPool = null; + + private static final String HOST = "127.0.0.1"; + + private static final int PORT = 6379; + + private static final int MINCONN = 1; + + private static final int MAXCONN = 10; + + private static final int MAXTOTAL = 100; + + private static final int DATABASE = 0; + + private static final int SENTINEL_HOST_NUMBER = 3; + + private static final Configuration CONFIGURATION = ConfigurationFactory.getInstance(); + + /** + * get the RedisPool instance (singleton) + * @return redisPool + */ + public static JedisPoolAbstract getJedisPoolInstance(JedisPoolAbstract... jedisPools) { + if (jedisPool == null) { + synchronized (JedisPooledFactory.class) { + if (jedisPool == null) { + if (jedisPools != null && jedisPools.length > 0) { + jedisPool = jedisPools[0]; + } + else { + String password = CONFIGURATION.getConfig(ConfigurationKeys.STORE_REDIS_PASSWORD); + if (StringUtils.isBlank(password)) { + password = null; + } + else { + String publicKey = CONFIGURATION.getConfig(ConfigurationKeys.STORE_PUBLIC_KEY); + if (StringUtils.isNotBlank(publicKey)) { + try { + password = ConfigTools.publicDecrypt(password, publicKey); + } + catch (Exception e) { + LOGGER.error( + "decryption failed,please confirm whether the ciphertext and secret key are correct! error msg: {}", + e.getMessage()); + } + } + } + JedisPoolConfig poolConfig = new JedisPoolConfig(); + poolConfig.setMinIdle(CONFIGURATION.getInt(ConfigurationKeys.STORE_REDIS_MIN_CONN, MINCONN)); + poolConfig.setMaxIdle(CONFIGURATION.getInt(ConfigurationKeys.STORE_REDIS_MAX_CONN, MAXCONN)); + poolConfig.setMaxTotal(CONFIGURATION.getInt(ConfigurationKeys.STORE_REDIS_MAX_TOTAL, MAXTOTAL)); + String mode = CONFIGURATION.getConfig(ConfigurationKeys.STORE_REDIS_MODE, + ConfigurationKeys.REDIS_SINGLE_MODE); + if (mode.equals(ConfigurationKeys.REDIS_SENTINEL_MODE)) { + String masterName = CONFIGURATION + .getConfig(ConfigurationKeys.STORE_REDIS_SENTINEL_MASTERNAME); + if (StringUtils.isBlank(masterName)) { + throw new RedisException("The masterName is null in redis sentinel mode"); + } + Set<String> sentinels = new HashSet<>(SENTINEL_HOST_NUMBER); + String[] sentinelHosts = CONFIGURATION + .getConfig(ConfigurationKeys.STORE_REDIS_SENTINEL_HOST).split(","); + Arrays.asList(sentinelHosts).forEach(sentinelHost -> sentinels.add(sentinelHost)); + jedisPool = new JedisSentinelPool(masterName, sentinels, poolConfig, 60000, password, + CONFIGURATION.getInt(ConfigurationKeys.STORE_REDIS_DATABASE, DATABASE)); + } + else if (mode.equals(ConfigurationKeys.REDIS_SINGLE_MODE)) { + String host = CONFIGURATION.getConfig(ConfigurationKeys.STORE_REDIS_SINGLE_HOST); + host = StringUtils.isBlank(host) + ? CONFIGURATION.getConfig(ConfigurationKeys.STORE_REDIS_HOST, HOST) : host; + int port = CONFIGURATION.getInt(ConfigurationKeys.STORE_REDIS_SINGLE_PORT); + port = port == 0 ? CONFIGURATION.getInt(ConfigurationKeys.STORE_REDIS_PORT, PORT) : port; + jedisPool = new JedisPool(poolConfig, host, port, 60000, password, + CONFIGURATION.getInt(ConfigurationKeys.STORE_REDIS_DATABASE, DATABASE)); + } + else { + throw new RedisException("Configuration error of redis cluster mode"); + } + } + if (LOGGER.isInfoEnabled()) { + LOGGER.info("initialization of the build redis connection pool is complete"); + } + } + } + } + return jedisPool; + } + + /** + * get an instance of Jedis (connection) from the connection pool + * @return jedis + */ + public static Jedis getJedisInstance() { + return getJedisPoolInstance().getResource(); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/lock/RedisLockManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/lock/RedisLockManager.java new file mode 100644 index 000000000..784463c8a --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/lock/RedisLockManager.java @@ -0,0 +1,79 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.redis.lock; + +import java.util.List; +import java.util.stream.Collectors; + +import io.seata.common.executor.Initialize; +import io.seata.common.loader.LoadLevel; +import io.seata.common.util.CollectionUtils; +import io.seata.core.exception.TransactionException; +import io.seata.core.lock.Locker; +import io.seata.server.lock.AbstractLockManager; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; + +/** + * @author funkye + */ +@LoadLevel(name = "redis") +public class RedisLockManager extends AbstractLockManager implements Initialize { + + /** + * The locker. + */ + private Locker locker; + + @Override + public void init() { + locker = new RedisLocker(); + } + + @Override + public Locker getLocker(BranchSession branchSession) { + return locker; + } + + @Override + public boolean releaseLock(BranchSession branchSession) throws TransactionException { + try { + return getLocker().releaseLock(branchSession.getXid(), branchSession.getBranchId()); + } + catch (Exception t) { + LOGGER.error("unLock error, xid {}, branchId:{}", branchSession.getXid(), branchSession.getBranchId(), t); + return false; + } + } + + @Override + public boolean releaseGlobalSessionLock(GlobalSession globalSession) throws TransactionException { + List<BranchSession> branchSessions = globalSession.getBranchSessions(); + if (CollectionUtils.isEmpty(branchSessions)) { + return true; + } + List<Long> branchIds = branchSessions.stream().map(BranchSession::getBranchId).collect(Collectors.toList()); + try { + return getLocker().releaseLock(globalSession.getXid(), branchIds); + } + catch (Exception t) { + LOGGER.error("unLock globalSession error, xid:{} branchIds:{}", globalSession.getXid(), + CollectionUtils.toString(branchIds), t); + return false; + } + } + +} \ No newline at end of file diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/lock/RedisLocker.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/lock/RedisLocker.java new file mode 100644 index 000000000..86343f39b --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/lock/RedisLocker.java @@ -0,0 +1,248 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.redis.lock; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Set; +import java.util.StringJoiner; +import java.util.stream.Collectors; +import com.google.common.collect.Lists; +import io.seata.common.util.CollectionUtils; +import io.seata.common.util.LambdaUtils; +import io.seata.common.util.StringUtils; +import io.seata.core.lock.AbstractLocker; +import io.seata.core.lock.RowLock; +import io.seata.core.store.LockDO; +import io.seata.server.storage.redis.JedisPooledFactory; +import redis.clients.jedis.Jedis; +import redis.clients.jedis.Pipeline; + +import static io.seata.common.Constants.ROW_LOCK_KEY_SPLIT_CHAR; + +/** + * The redis lock store operation + * + * @author funkye + * @author wangzhongxiang + */ +public class RedisLocker extends AbstractLocker { + + private static final Integer SUCCEED = 1; + + private static final Integer FAILED = 0; + + private static final String DEFAULT_REDIS_SEATA_ROW_LOCK_PREFIX = "SEATA_ROW_LOCK_"; + + private static final String DEFAULT_REDIS_SEATA_GLOBAL_LOCK_PREFIX = "SEATA_GLOBAL_LOCK"; + + private static final String XID = "xid"; + + private static final String TRANSACTION_ID = "transactionId"; + + private static final String BRANCH_ID = "branchId"; + + private static final String RESOURCE_ID = "resourceId"; + + private static final String TABLE_NAME = "tableName"; + + private static final String PK = "pk"; + + private static final String ROW_KEY = "rowKey"; + + /** + * Instantiates a new Redis locker. + */ + public RedisLocker() { + } + + @Override + public boolean acquireLock(List<RowLock> rowLocks) { + if (CollectionUtils.isEmpty(rowLocks)) { + return true; + } + String needLockXid = rowLocks.get(0).getXid(); + Long branchId = rowLocks.get(0).getBranchId(); + + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + List<LockDO> needLockDOS = convertToLockDO(rowLocks); + if (needLockDOS.size() > 1) { + needLockDOS = needLockDOS.stream().filter(LambdaUtils.distinctByKey(LockDO::getRowKey)) + .collect(Collectors.toList()); + } + List<String> needLockKeys = new ArrayList<>(); + needLockDOS.forEach(lockDO -> needLockKeys.add(buildLockKey(lockDO.getRowKey()))); + + Pipeline pipeline1 = jedis.pipelined(); + needLockKeys.stream().forEachOrdered(needLockKey -> pipeline1.hget(needLockKey, XID)); + List<String> existedLockInfos = (List<String>) (List) pipeline1.syncAndReturnAll(); + Map<String, LockDO> needAddLock = new HashMap<>(needLockKeys.size(), 1); + + for (int i = 0; i < needLockKeys.size(); i++) { + String existedLockXid = existedLockInfos.get(i); + if (StringUtils.isEmpty(existedLockXid)) { + // If empty,we need to lock this row + needAddLock.put(needLockKeys.get(i), needLockDOS.get(i)); + } + else { + if (!StringUtils.equals(existedLockXid, needLockXid)) { + // If not equals,means the rowkey is holding by another global + // transaction + return false; + } + } + } + + if (needAddLock.isEmpty()) { + return true; + } + Pipeline pipeline = jedis.pipelined(); + List<String> readyKeys = new ArrayList<>(); + needAddLock.forEach((key, value) -> { + pipeline.hsetnx(key, XID, value.getXid()); + pipeline.hsetnx(key, TRANSACTION_ID, value.getTransactionId().toString()); + pipeline.hsetnx(key, BRANCH_ID, value.getBranchId().toString()); + pipeline.hset(key, ROW_KEY, value.getRowKey()); + pipeline.hset(key, RESOURCE_ID, value.getResourceId()); + pipeline.hset(key, TABLE_NAME, value.getTableName()); + pipeline.hset(key, PK, value.getPk()); + readyKeys.add(key); + }); + List<Integer> results = (List<Integer>) (List) pipeline.syncAndReturnAll(); + List<List<Integer>> partitions = Lists.partition(results, 7); + + ArrayList<String> success = new ArrayList<>(partitions.size()); + Integer status = SUCCEED; + for (int i = 0; i < partitions.size(); i++) { + if (Objects.equals(partitions.get(i).get(0), FAILED)) { + status = FAILED; + } + else { + success.add(readyKeys.get(i)); + } + } + + // If someone has failed,all the lockkey which has been added need to be + // delete. + if (FAILED.equals(status)) { + if (success.size() > 0) { + jedis.del(success.toArray(new String[0])); + } + return false; + } + String xidLockKey = buildXidLockKey(needLockXid); + StringJoiner lockKeysString = new StringJoiner(ROW_LOCK_KEY_SPLIT_CHAR); + needLockKeys.forEach(lockKeysString::add); + jedis.hset(xidLockKey, branchId.toString(), lockKeysString.toString()); + return true; + } + } + + @Override + public boolean releaseLock(List<RowLock> rowLocks) { + if (CollectionUtils.isEmpty(rowLocks)) { + return true; + } + String currentXid = rowLocks.get(0).getXid(); + Long branchId = rowLocks.get(0).getBranchId(); + List<LockDO> needReleaseLocks = convertToLockDO(rowLocks); + String[] needReleaseKeys = new String[needReleaseLocks.size()]; + for (int i = 0; i < needReleaseLocks.size(); i++) { + needReleaseKeys[i] = buildLockKey(needReleaseLocks.get(i).getRowKey()); + } + + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + Pipeline pipelined = jedis.pipelined(); + pipelined.del(needReleaseKeys); + pipelined.hdel(buildXidLockKey(currentXid), branchId.toString()); + pipelined.sync(); + return true; + } + } + + @Override + public boolean releaseLock(String xid, List<Long> branchIds) { + if (CollectionUtils.isEmpty(branchIds)) { + return true; + } + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + String xidLockKey = buildXidLockKey(xid); + String[] branchIdsArray = new String[branchIds.size()]; + for (int i = 0; i < branchIds.size(); i++) { + branchIdsArray[i] = branchIds.get(i).toString(); + } + List<String> rowKeys = jedis.hmget(xidLockKey, branchIdsArray); + + if (CollectionUtils.isNotEmpty(rowKeys)) { + Pipeline pipelined = jedis.pipelined(); + pipelined.hdel(xidLockKey, branchIdsArray); + rowKeys.forEach(rowKeyStr -> { + if (StringUtils.isNotEmpty(rowKeyStr)) { + if (rowKeyStr.contains(ROW_LOCK_KEY_SPLIT_CHAR)) { + String[] keys = rowKeyStr.split(ROW_LOCK_KEY_SPLIT_CHAR); + pipelined.del(keys); + } + else { + pipelined.del(rowKeyStr); + } + } + }); + pipelined.sync(); + } + return true; + } + } + + @Override + public boolean releaseLock(String xid, Long branchId) { + List<Long> branchIds = new ArrayList<>(); + branchIds.add(branchId); + return releaseLock(xid, branchIds); + } + + @Override + public boolean isLockable(List<RowLock> rowLocks) { + if (CollectionUtils.isEmpty(rowLocks)) { + return true; + } + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + List<LockDO> locks = convertToLockDO(rowLocks); + Set<String> lockKeys = new HashSet<>(); + for (LockDO rowlock : locks) { + lockKeys.add(buildLockKey(rowlock.getRowKey())); + } + + String xid = rowLocks.get(0).getXid(); + Pipeline pipeline = jedis.pipelined(); + lockKeys.forEach(key -> pipeline.hget(key, XID)); + List<String> existedXids = (List<String>) (List) pipeline.syncAndReturnAll(); + return existedXids.stream().allMatch(existedXid -> existedXid == null || xid.equals(existedXid)); + } + } + + private String buildXidLockKey(String xid) { + return DEFAULT_REDIS_SEATA_GLOBAL_LOCK_PREFIX + xid; + } + + private String buildLockKey(String rowKey) { + return DEFAULT_REDIS_SEATA_ROW_LOCK_PREFIX + rowKey; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/session/RedisSessionManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/session/RedisSessionManager.java new file mode 100644 index 000000000..7c326ff0b --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/session/RedisSessionManager.java @@ -0,0 +1,196 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.redis.session; + +import java.util.Collection; +import java.util.List; +import io.seata.common.exception.StoreException; +import io.seata.common.executor.Initialize; +import io.seata.common.loader.LoadLevel; +import io.seata.common.loader.Scope; +import io.seata.common.util.StringUtils; +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.GlobalStatus; +import io.seata.server.session.AbstractSessionManager; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionCondition; +import io.seata.server.session.SessionHolder; +import io.seata.server.storage.redis.store.RedisTransactionStoreManager; +import io.seata.server.store.TransactionStoreManager.LogOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * @author funkye + */ +@LoadLevel(name = "redis", scope = Scope.PROTOTYPE) +public class RedisSessionManager extends AbstractSessionManager implements Initialize { + + /** + * The constant LOGGER. + */ + protected static final Logger LOGGER = LoggerFactory.getLogger(RedisSessionManager.class); + + /** + * The Task name. + */ + protected String taskName; + + /** + * Instantiates a new Data base session manager. + */ + public RedisSessionManager() { + super(); + } + + /** + * Instantiates a new Data base session manager. + * @param name the name + */ + public RedisSessionManager(String name) { + super(); + this.taskName = name; + } + + @Override + public void init() { + transactionStoreManager = RedisTransactionStoreManager.getInstance(); + } + + @Override + public void addGlobalSession(GlobalSession session) throws TransactionException { + if (StringUtils.isBlank(taskName)) { + boolean ret = transactionStoreManager.writeSession(LogOperation.GLOBAL_ADD, session); + if (!ret) { + throw new StoreException("addGlobalSession failed."); + } + } + else { + boolean ret = transactionStoreManager.writeSession(LogOperation.GLOBAL_UPDATE, session); + if (!ret) { + throw new StoreException("addGlobalSession failed."); + } + } + } + + @Override + public void updateGlobalSessionStatus(GlobalSession session, GlobalStatus status) throws TransactionException { + if (!StringUtils.isEmpty(taskName)) { + return; + } + session.setStatus(status); + boolean ret = transactionStoreManager.writeSession(LogOperation.GLOBAL_UPDATE, session); + if (!ret) { + throw new StoreException("updateGlobalSessionStatus failed."); + } + } + + /** + * remove globalSession 1. rootSessionManager remove normal globalSession 2. + * retryCommitSessionManager and retryRollbackSessionManager remove retry expired + * globalSession + * @param session the session + * @throws TransactionException + */ + @Override + public void removeGlobalSession(GlobalSession session) throws TransactionException { + boolean ret = transactionStoreManager.writeSession(LogOperation.GLOBAL_REMOVE, session); + if (!ret) { + throw new StoreException("removeGlobalSession failed."); + } + } + + @Override + public void addBranchSession(GlobalSession globalSession, BranchSession session) throws TransactionException { + if (!StringUtils.isEmpty(taskName)) { + return; + } + boolean ret = transactionStoreManager.writeSession(LogOperation.BRANCH_ADD, session); + if (!ret) { + throw new StoreException("addBranchSession failed."); + } + } + + @Override + public void updateBranchSessionStatus(BranchSession session, BranchStatus status) throws TransactionException { + if (!StringUtils.isEmpty(taskName)) { + return; + } + boolean ret = transactionStoreManager.writeSession(LogOperation.BRANCH_UPDATE, session); + if (!ret) { + throw new StoreException("updateBranchSessionStatus failed."); + } + } + + @Override + public void removeBranchSession(GlobalSession globalSession, BranchSession session) throws TransactionException { + if (!StringUtils.isEmpty(taskName)) { + return; + } + boolean ret = transactionStoreManager.writeSession(LogOperation.BRANCH_REMOVE, session); + if (!ret) { + throw new StoreException("removeBranchSession failed."); + } + } + + @Override + public GlobalSession findGlobalSession(String xid) { + return this.findGlobalSession(xid, true); + } + + @Override + public GlobalSession findGlobalSession(String xid, boolean withBranchSessions) { + return transactionStoreManager.readSession(xid, withBranchSessions); + } + + @Override + public Collection<GlobalSession> allSessions() { + // get by taskName + if (SessionHolder.ASYNC_COMMITTING_SESSION_MANAGER_NAME.equalsIgnoreCase(taskName)) { + return findGlobalSessions(new SessionCondition(GlobalStatus.AsyncCommitting)); + } + else if (SessionHolder.RETRY_COMMITTING_SESSION_MANAGER_NAME.equalsIgnoreCase(taskName)) { + return findGlobalSessions( + new SessionCondition(new GlobalStatus[] { GlobalStatus.CommitRetrying, GlobalStatus.Committing })); + } + else if (SessionHolder.RETRY_ROLLBACKING_SESSION_MANAGER_NAME.equalsIgnoreCase(taskName)) { + return findGlobalSessions(new SessionCondition(new GlobalStatus[] { GlobalStatus.RollbackRetrying, + GlobalStatus.Rollbacking, GlobalStatus.TimeoutRollbacking, GlobalStatus.TimeoutRollbackRetrying })); + } + else { + // all data + return findGlobalSessions(new SessionCondition(new GlobalStatus[] { GlobalStatus.UnKnown, + GlobalStatus.Begin, GlobalStatus.Committing, GlobalStatus.CommitRetrying, GlobalStatus.Rollbacking, + GlobalStatus.RollbackRetrying, GlobalStatus.TimeoutRollbacking, + GlobalStatus.TimeoutRollbackRetrying, GlobalStatus.AsyncCommitting })); + } + } + + @Override + public List<GlobalSession> findGlobalSessions(SessionCondition condition) { + // nothing need to do + return transactionStoreManager.readSession(condition); + } + + @Override + public <T> T lockAndExecute(GlobalSession globalSession, GlobalSession.LockCallable<T> lockCallable) + throws TransactionException { + return lockCallable.call(); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/store/RedisTransactionStoreManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/store/RedisTransactionStoreManager.java new file mode 100644 index 000000000..197955af4 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/storage/redis/store/RedisTransactionStoreManager.java @@ -0,0 +1,496 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.storage.redis.store; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.stream.Collectors; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import redis.clients.jedis.Jedis; +import redis.clients.jedis.Pipeline; +import redis.clients.jedis.Transaction; +import io.seata.common.exception.StoreException; +import io.seata.common.util.CollectionUtils; +import io.seata.common.util.StringUtils; +import io.seata.common.exception.RedisException; +import io.seata.common.util.BeanUtils; +import io.seata.common.XID; +import io.seata.core.model.GlobalStatus; +import io.seata.core.store.BranchTransactionDO; +import io.seata.core.store.GlobalTransactionDO; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionCondition; +import io.seata.server.storage.SessionConverter; +import io.seata.server.storage.redis.JedisPooledFactory; +import io.seata.server.store.AbstractTransactionStoreManager; +import io.seata.server.store.SessionStorable; +import io.seata.server.store.TransactionStoreManager; + +import static io.seata.core.constants.RedisKeyConstants.REDIS_KEY_BRANCH_GMT_MODIFIED; +import static io.seata.core.constants.RedisKeyConstants.REDIS_KEY_BRANCH_STATUS; +import static io.seata.core.constants.RedisKeyConstants.REDIS_KEY_BRANCH_XID; +import static io.seata.core.constants.RedisKeyConstants.REDIS_KEY_GLOBAL_GMT_MODIFIED; +import static io.seata.core.constants.RedisKeyConstants.REDIS_KEY_GLOBAL_STATUS; +import static io.seata.core.constants.RedisKeyConstants.REDIS_KEY_GLOBAL_XID; + +/** + * The redis transaction store manager + * + * @author funkye + * @author wangzhongxiang + */ +public class RedisTransactionStoreManager extends AbstractTransactionStoreManager implements TransactionStoreManager { + + private static final Logger LOGGER = LoggerFactory.getLogger(RedisTransactionStoreManager.class); + + /** the prefix of the branch transactions */ + private static final String REDIS_SEATA_BRANCHES_PREFIX = "SEATA_BRANCHES_"; + + /** the prefix of the branch transaction */ + private static final String REDIS_SEATA_BRANCH_PREFIX = "SEATA_BRANCH_"; + + /** the prefix of the global transaction */ + private static final String REDIS_SEATA_GLOBAL_PREFIX = "SEATA_GLOBAL_"; + + /** the prefix of the global transaction status */ + private static final String REDIS_SEATA_STATUS_PREFIX = "SEATA_STATUS_"; + + private static volatile RedisTransactionStoreManager instance; + + private static final String OK = "OK"; + + /** + * Get the instance. + */ + public static RedisTransactionStoreManager getInstance() { + if (instance == null) { + synchronized (RedisTransactionStoreManager.class) { + if (instance == null) { + instance = new RedisTransactionStoreManager(); + } + } + } + return instance; + } + + @Override + public boolean writeSession(LogOperation logOperation, SessionStorable session) { + if (LogOperation.GLOBAL_ADD.equals(logOperation)) { + return insertGlobalTransactionDO(SessionConverter.convertGlobalTransactionDO(session)); + } + else if (LogOperation.GLOBAL_UPDATE.equals(logOperation)) { + return updateGlobalTransactionDO(SessionConverter.convertGlobalTransactionDO(session)); + } + else if (LogOperation.GLOBAL_REMOVE.equals(logOperation)) { + return deleteGlobalTransactionDO(SessionConverter.convertGlobalTransactionDO(session)); + } + else if (LogOperation.BRANCH_ADD.equals(logOperation)) { + return insertBranchTransactionDO(SessionConverter.convertBranchTransactionDO(session)); + } + else if (LogOperation.BRANCH_UPDATE.equals(logOperation)) { + return updateBranchTransactionDO(SessionConverter.convertBranchTransactionDO(session)); + } + else if (LogOperation.BRANCH_REMOVE.equals(logOperation)) { + return deleteBranchTransactionDO(SessionConverter.convertBranchTransactionDO(session)); + } + else { + throw new StoreException("Unknown LogOperation:" + logOperation.name()); + } + } + + /** + * Insert branch transaction + * @param branchTransactionDO + * @return the boolean + */ + private boolean insertBranchTransactionDO(BranchTransactionDO branchTransactionDO) { + String branchKey = buildBranchKey(branchTransactionDO.getBranchId()); + String branchListKey = buildBranchListKeyByXid(branchTransactionDO.getXid()); + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + Date now = new Date(); + branchTransactionDO.setGmtCreate(now); + branchTransactionDO.setGmtModified(now); + Pipeline pipelined = jedis.pipelined(); + pipelined.hmset(branchKey, BeanUtils.objectToMap(branchTransactionDO)); + pipelined.rpush(branchListKey, branchKey); + pipelined.sync(); + return true; + } + catch (Exception ex) { + throw new RedisException(ex); + } + } + + /** + * Delete the branch transaction + * @param branchTransactionDO + * @return + */ + private boolean deleteBranchTransactionDO(BranchTransactionDO branchTransactionDO) { + String branchKey = buildBranchKey(branchTransactionDO.getBranchId()); + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + Map<String, String> branchTransactionDOMap = jedis.hgetAll(branchKey); + String xid = branchTransactionDOMap.get(REDIS_KEY_BRANCH_XID); + if (StringUtils.isEmpty(xid)) { + return true; + } + String branchListKey = buildBranchListKeyByXid(branchTransactionDO.getXid()); + Pipeline pipelined = jedis.pipelined(); + pipelined.lrem(branchListKey, 0, branchKey); + pipelined.del(branchKey); + pipelined.sync(); + return true; + } + catch (Exception ex) { + throw new RedisException(ex); + } + } + + /** + * Update the branch transaction + * @param branchTransactionDO + * @return + */ + private boolean updateBranchTransactionDO(BranchTransactionDO branchTransactionDO) { + String branchKey = buildBranchKey(branchTransactionDO.getBranchId()); + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + String previousBranchStatus = jedis.hget(branchKey, REDIS_KEY_BRANCH_STATUS); + if (StringUtils.isEmpty(previousBranchStatus)) { + throw new StoreException("Branch transaction is not exist, update branch transaction failed."); + } + Map<String, String> map = new HashMap<>(2, 1); + map.put(REDIS_KEY_BRANCH_STATUS, String.valueOf(branchTransactionDO.getStatus())); + map.put(REDIS_KEY_BRANCH_GMT_MODIFIED, String.valueOf((new Date()).getTime())); + jedis.hmset(branchKey, map); + return true; + } + catch (Exception ex) { + throw new RedisException(ex); + } + } + + /** + * Insert the global transaction. + * @param globalTransactionDO + * @return + */ + private boolean insertGlobalTransactionDO(GlobalTransactionDO globalTransactionDO) { + String globalKey = buildGlobalKeyByTransactionId(globalTransactionDO.getTransactionId()); + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + Date now = new Date(); + globalTransactionDO.setGmtCreate(now); + globalTransactionDO.setGmtModified(now); + Pipeline pipelined = jedis.pipelined(); + pipelined.hmset(globalKey, BeanUtils.objectToMap(globalTransactionDO)); + pipelined.rpush(buildGlobalStatus(globalTransactionDO.getStatus()), globalTransactionDO.getXid()); + pipelined.sync(); + return true; + } + catch (Exception ex) { + throw new RedisException(ex); + } + } + + /** + * Delete the global transaction. It will operate two parts: 1.delete the global + * session map 2.remove the xid from the global status list If the operate failed,the + * succeed operates will rollback + * @param globalTransactionDO + * @return + */ + private boolean deleteGlobalTransactionDO(GlobalTransactionDO globalTransactionDO) { + String globalKey = buildGlobalKeyByTransactionId(globalTransactionDO.getTransactionId()); + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + Map<String, String> globalTransactionDoMap = jedis.hgetAll(globalKey); + String xid = globalTransactionDoMap.get(REDIS_KEY_GLOBAL_XID); + if (StringUtils.isEmpty(xid)) { + LOGGER.warn("Global transaction is not exist,xid = {}.Maybe has been deleted by another tc server", + globalTransactionDO.getXid()); + return true; + } + Pipeline pipelined = jedis.pipelined(); + pipelined.lrem(buildGlobalStatus(globalTransactionDO.getStatus()), 0, globalTransactionDO.getXid()); + pipelined.del(globalKey); + pipelined.sync(); + return true; + } + catch (Exception ex) { + throw new RedisException(ex); + } + } + + /** + * Update the global transaction. It will update two parts: 1.the global session map + * 2.the global status list If the update failed,the succeed operates will rollback + * @param globalTransactionDO + * @return + */ + private boolean updateGlobalTransactionDO(GlobalTransactionDO globalTransactionDO) { + String xid = globalTransactionDO.getXid(); + String globalKey = buildGlobalKeyByTransactionId(globalTransactionDO.getTransactionId()); + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + // Defensive watch to prevent other TC server operating concurrently,Fail fast + jedis.watch(globalKey); + List<String> statusAndGmtModified = jedis.hmget(globalKey, REDIS_KEY_GLOBAL_STATUS, + REDIS_KEY_GLOBAL_GMT_MODIFIED); + String previousStatus = statusAndGmtModified.get(0); + if (StringUtils.isEmpty(previousStatus)) { + jedis.unwatch(); + throw new StoreException("Global transaction is not exist, update global transaction failed."); + } + if (previousStatus.equals(String.valueOf(globalTransactionDO.getStatus()))) { + jedis.unwatch(); + return true; + } + + String previousGmtModified = statusAndGmtModified.get(1); + Transaction multi = jedis.multi(); + Map<String, String> map = new HashMap<>(2); + map.put(REDIS_KEY_GLOBAL_STATUS, String.valueOf(globalTransactionDO.getStatus())); + map.put(REDIS_KEY_GLOBAL_GMT_MODIFIED, String.valueOf((new Date()).getTime())); + multi.hmset(globalKey, map); + multi.lrem(buildGlobalStatus(Integer.valueOf(previousStatus)), 0, xid); + multi.rpush(buildGlobalStatus(globalTransactionDO.getStatus()), xid); + List<Object> exec = multi.exec(); + String hmset = exec.get(0).toString(); + long lrem = (long) exec.get(1); + long rpush = (long) exec.get(2); + if (OK.equalsIgnoreCase(hmset) && lrem > 0 && rpush > 0) { + return true; + } + else { + // If someone failed, the succeed operations need rollback + if (OK.equalsIgnoreCase(hmset)) { + // Defensive watch to prevent other TC server operating + // concurrently,give up this operate + jedis.watch(globalKey); + String xid2 = jedis.hget(globalKey, REDIS_KEY_GLOBAL_XID); + if (StringUtils.isNotEmpty(xid2)) { + Map<String, String> mapPrevious = new HashMap<>(2, 1); + mapPrevious.put(REDIS_KEY_GLOBAL_STATUS, previousStatus); + mapPrevious.put(REDIS_KEY_GLOBAL_GMT_MODIFIED, previousGmtModified); + Transaction multi2 = jedis.multi(); + multi2.hmset(globalKey, mapPrevious); + multi2.exec(); + } + } + if (lrem > 0) { + jedis.rpush(buildGlobalStatus(Integer.valueOf(previousStatus)), xid); + } + if (rpush > 0) { + jedis.lrem(buildGlobalStatus(globalTransactionDO.getStatus()), 0, xid); + } + return false; + } + } + catch (Exception ex) { + throw new RedisException(ex); + } + } + + /** + * Read session global session. + * @param xid the xid + * @param withBranchSessions the withBranchSessions + * @return the global session + */ + @Override + public GlobalSession readSession(String xid, boolean withBranchSessions) { + String transactionId = String.valueOf(XID.getTransactionId(xid)); + String globalKey = buildGlobalKeyByTransactionId(transactionId); + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + Map<String, String> map = jedis.hgetAll(globalKey); + if (CollectionUtils.isEmpty(map)) { + return null; + } + GlobalTransactionDO globalTransactionDO = (GlobalTransactionDO) BeanUtils.mapToObject(map, + GlobalTransactionDO.class); + List<BranchTransactionDO> branchTransactionDOs = null; + if (withBranchSessions) { + branchTransactionDOs = this.readBranchSessionByXid(jedis, xid); + } + return getGlobalSession(globalTransactionDO, branchTransactionDOs); + } + } + + /** + * Read session global session. + * @param xid the xid + * @return the global session + */ + @Override + public GlobalSession readSession(String xid) { + return this.readSession(xid, true); + } + + /** + * Read globalSession list by global status + * @param statuses the statuses + * @return the list + */ + public List<GlobalSession> readSession(GlobalStatus[] statuses) { + List<String> statusKeys = new ArrayList<>(); + for (int i = 0; i < statuses.length; i++) { + statusKeys.add(buildGlobalStatus(statuses[i].getCode())); + } + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + Pipeline pipelined = jedis.pipelined(); + statusKeys.stream().forEach(statusKey -> pipelined.lrange(statusKey, 0, -1)); + List<List<String>> list = (List<List<String>>) (List) pipelined.syncAndReturnAll(); + List<String> xids = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(list)) { + xids = list.stream().flatMap(ll -> ll.stream()).collect(Collectors.toList()); + } + List<GlobalSession> globalSessions = new ArrayList<>(); + xids.parallelStream().forEach(xid -> { + GlobalSession globalSession = this.readSession(xid, true); + if (globalSession != null) { + globalSessions.add(globalSession); + } + }); + return globalSessions; + } + } + + /** + * read the global session list by different condition + * @param sessionCondition the session condition + * @return the global sessions + */ + @Override + public List<GlobalSession> readSession(SessionCondition sessionCondition) { + List<GlobalSession> globalSessions = new ArrayList<>(); + if (StringUtils.isNotEmpty(sessionCondition.getXid())) { + GlobalSession globalSession = this.readSession(sessionCondition.getXid(), true); + if (globalSession != null) { + globalSessions.add(globalSession); + } + return globalSessions; + } + else if (sessionCondition.getTransactionId() != null) { + GlobalSession globalSession = this + .readSessionByTransactionId(sessionCondition.getTransactionId().toString(), true); + if (globalSession != null) { + globalSessions.add(globalSession); + } + return globalSessions; + } + else if (CollectionUtils.isNotEmpty(sessionCondition.getStatuses())) { + return readSession(sessionCondition.getStatuses()); + } + else if (sessionCondition.getStatus() != null) { + return readSession(new GlobalStatus[] { sessionCondition.getStatus() }); + } + return null; + } + + /** + * assemble the global session and branch session + * @param globalTransactionDO the global transactionDo + * @param branchTransactionDOs the branch transactionDos + * @return the global session with branch session + */ + private GlobalSession getGlobalSession(GlobalTransactionDO globalTransactionDO, + List<BranchTransactionDO> branchTransactionDOs) { + GlobalSession globalSession = SessionConverter.convertGlobalSession(globalTransactionDO); + if (CollectionUtils.isNotEmpty(branchTransactionDOs)) { + for (BranchTransactionDO branchTransactionDO : branchTransactionDOs) { + globalSession.add(SessionConverter.convertBranchSession(branchTransactionDO)); + } + } + return globalSession; + } + + /** + * read the global session by transactionId + * @param transactionId the transaction id + * @param withBranchSessions if read branch sessions + * @return the global session + */ + private GlobalSession readSessionByTransactionId(String transactionId, boolean withBranchSessions) { + String globalKey = buildGlobalKeyByTransactionId(transactionId); + String xid = null; + try (Jedis jedis = JedisPooledFactory.getJedisInstance()) { + Map<String, String> map = jedis.hgetAll(globalKey); + if (CollectionUtils.isEmpty(map)) { + return null; + } + GlobalTransactionDO globalTransactionDO = (GlobalTransactionDO) BeanUtils.mapToObject(map, + GlobalTransactionDO.class); + if (globalTransactionDO != null) { + xid = globalTransactionDO.getXid(); + } + List<BranchTransactionDO> branchTransactionDOs = new ArrayList<>(); + if (withBranchSessions) { + branchTransactionDOs = this.readBranchSessionByXid(jedis, xid); + } + return getGlobalSession(globalTransactionDO, branchTransactionDOs); + } + } + + /** + * Read the branch session list by xid + * @param jedis + * @param xid the xid + * @return the branch transactionDo list + */ + private List<BranchTransactionDO> readBranchSessionByXid(Jedis jedis, String xid) { + List<BranchTransactionDO> branchTransactionDOs = new ArrayList<>(); + String branchListKey = buildBranchListKeyByXid(xid); + List<String> branchKeys = jedis.lrange(branchListKey, 0, -1); + Pipeline pipeline = jedis.pipelined(); + if (CollectionUtils.isNotEmpty(branchKeys)) { + branchKeys.stream().forEachOrdered(branchKey -> pipeline.hgetAll(branchKey)); + List<Object> branchInfos = pipeline.syncAndReturnAll(); + for (Object branchInfo : branchInfos) { + if (branchInfo != null) { + Map<String, String> branchInfoMap = (Map<String, String>) branchInfo; + Optional<BranchTransactionDO> branchTransactionDO = Optional.ofNullable( + (BranchTransactionDO) BeanUtils.mapToObject(branchInfoMap, BranchTransactionDO.class)); + branchTransactionDO.ifPresent(branchTransactionDOs::add); + } + } + } + if (CollectionUtils.isNotEmpty(branchTransactionDOs)) { + branchTransactionDOs = branchTransactionDOs.stream() + .sorted(Comparator.comparing(BranchTransactionDO::getGmtCreate)).collect(Collectors.toList()); + } + return branchTransactionDOs; + } + + private String buildBranchListKeyByXid(String xid) { + return REDIS_SEATA_BRANCHES_PREFIX + xid; + } + + private String buildGlobalKeyByTransactionId(Object transactionId) { + return REDIS_SEATA_GLOBAL_PREFIX + transactionId; + } + + private String buildBranchKey(Long branchId) { + return REDIS_SEATA_BRANCH_PREFIX + branchId; + } + + private String buildGlobalStatus(Integer status) { + return REDIS_SEATA_STATUS_PREFIX + status; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/AbstractTransactionStoreManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/AbstractTransactionStoreManager.java new file mode 100644 index 000000000..98c769408 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/AbstractTransactionStoreManager.java @@ -0,0 +1,49 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.store; + +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionCondition; + +import java.util.List; + +/** + * The type Abstract transaction store manager. + * + * @author zhangsen + */ +public abstract class AbstractTransactionStoreManager implements TransactionStoreManager { + + @Override + public GlobalSession readSession(String xid) { + return null; + } + + @Override + public GlobalSession readSession(String xid, boolean withBranchSessions) { + return null; + } + + @Override + public List<GlobalSession> readSession(SessionCondition sessionCondition) { + return null; + } + + @Override + public void shutdown() { + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/DbcpDataSourceProvider.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/DbcpDataSourceProvider.java new file mode 100644 index 000000000..0d82bee3e --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/DbcpDataSourceProvider.java @@ -0,0 +1,58 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.store; + +import io.seata.common.loader.LoadLevel; +import io.seata.core.store.db.AbstractDataSourceProvider; +import org.apache.commons.dbcp2.BasicDataSource; + +import javax.sql.DataSource; + +/** + * The dbcp datasource provider + * + * @author zhangsen + * @author ggndnn + * @author will + */ +@LoadLevel(name = "dbcp") +public class DbcpDataSourceProvider extends AbstractDataSourceProvider { + + @Override + public DataSource generate() { + BasicDataSource ds = new BasicDataSource(); + ds.setDriverClassName(getDriverClassName()); + // DriverClassLoader works if upgrade commons-dbcp to at least 1.3.1. + // https://issues.apache.org/jira/browse/DBCP-333 + ds.setDriverClassLoader(getDriverClassLoader()); + ds.setUrl(getUrl()); + ds.setUsername(getUser()); + + ds.setPassword(getPassword()); + ds.setInitialSize(getMinConn()); + ds.setMaxTotal(getMaxConn()); + ds.setMinIdle(getMinConn()); + ds.setMaxIdle(getMinConn()); + ds.setMaxWaitMillis(getMaxWait()); + ds.setTimeBetweenEvictionRunsMillis(120000); + ds.setNumTestsPerEvictionRun(1); + ds.setTestWhileIdle(true); + ds.setValidationQuery(getValidationQuery(getDBType())); + ds.setConnectionProperties("useUnicode=yes;characterEncoding=utf8;socketTimeout=5000;connectTimeout=500"); + return ds; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/DruidDataSourceProvider.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/DruidDataSourceProvider.java new file mode 100644 index 000000000..9cb7a7229 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/DruidDataSourceProvider.java @@ -0,0 +1,57 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.store; + +import com.alibaba.druid.pool.DruidDataSource; +import io.seata.common.loader.LoadLevel; +import io.seata.core.store.db.AbstractDataSourceProvider; + +import javax.sql.DataSource; + +/** + * The druid datasource provider + * + * @author zhangsen + * @author ggndnn + * @author will + */ +@LoadLevel(name = "druid") +public class DruidDataSourceProvider extends AbstractDataSourceProvider { + + @Override + public DataSource generate() { + DruidDataSource ds = new DruidDataSource(); + ds.setDriverClassName(getDriverClassName()); + ds.setDriverClassLoader(getDriverClassLoader()); + ds.setUrl(getUrl()); + ds.setUsername(getUser()); + ds.setPassword(getPassword()); + ds.setInitialSize(getMinConn()); + ds.setMaxActive(getMaxConn()); + ds.setMinIdle(getMinConn()); + ds.setMaxWait(getMaxWait()); + ds.setTimeBetweenEvictionRunsMillis(120000); + ds.setMinEvictableIdleTimeMillis(300000); + ds.setTestWhileIdle(true); + ds.setTestOnBorrow(false); + ds.setPoolPreparedStatements(true); + ds.setMaxPoolPreparedStatementPerConnectionSize(20); + ds.setValidationQuery(getValidationQuery(getDBType())); + ds.setDefaultAutoCommit(true); + return ds; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/HikariDataSourceProvider.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/HikariDataSourceProvider.java new file mode 100644 index 000000000..13f3d980a --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/HikariDataSourceProvider.java @@ -0,0 +1,62 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.store; + +import com.zaxxer.hikari.HikariConfig; +import com.zaxxer.hikari.HikariDataSource; +import io.seata.common.loader.LoadLevel; +import io.seata.core.store.db.AbstractDataSourceProvider; + +import javax.sql.DataSource; +import java.util.Properties; + +/** + * The hikari datasource provider + * + * @author diguage + * @author will + */ +@LoadLevel(name = "hikari") +public class HikariDataSourceProvider extends AbstractDataSourceProvider { + + @Override + public DataSource generate() { + Properties properties = new Properties(); + properties.setProperty("dataSource.cachePrepStmts", "true"); + properties.setProperty("dataSource.prepStmtCacheSize", "250"); + properties.setProperty("dataSource.prepStmtCacheSqlLimit", "2048"); + properties.setProperty("dataSource.useServerPrepStmts", "true"); + properties.setProperty("dataSource.useLocalSessionState", "true"); + properties.setProperty("dataSource.rewriteBatchedStatements", "true"); + properties.setProperty("dataSource.cacheResultSetMetadata", "true"); + properties.setProperty("dataSource.cacheServerConfiguration", "true"); + properties.setProperty("dataSource.elideSetAutoCommits", "true"); + properties.setProperty("dataSource.maintainTimeStats", "false"); + + HikariConfig config = new HikariConfig(properties); + config.setDriverClassName(getDriverClassName()); + config.setJdbcUrl(getUrl()); + config.setUsername(getUser()); + config.setPassword(getPassword()); + config.setMaximumPoolSize(getMaxConn()); + config.setMinimumIdle(getMinConn()); + config.setAutoCommit(true); + config.setConnectionTimeout(getMaxWait()); + config.setInitializationFailTimeout(-1); + return new HikariDataSource(config); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/SessionStorable.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/SessionStorable.java new file mode 100644 index 000000000..727c6f94c --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/SessionStorable.java @@ -0,0 +1,37 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.store; + +/** + * The interface Session storable. + * + * @author slievrly + */ +public interface SessionStorable { + + /** + * Encode byte [ ]. + * @return the byte [ ] + */ + byte[] encode(); + + /** + * Decode. + * @param src the src + */ + void decode(byte[] src); + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/StoreConfig.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/StoreConfig.java new file mode 100644 index 000000000..11cfcfa4d --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/StoreConfig.java @@ -0,0 +1,62 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.store; + +import io.seata.config.Configuration; +import io.seata.config.ConfigurationFactory; +import io.seata.server.storage.file.FlushDiskMode; + +import static io.seata.core.constants.ConfigurationKeys.STORE_FILE_PREFIX; + +/** + * @author lizhao + */ +public class StoreConfig { + + private static final Configuration CONFIGURATION = ConfigurationFactory.getInstance(); + + /** + * Default 16kb. + */ + private static final int DEFAULT_MAX_BRANCH_SESSION_SIZE = 1024 * 16; + + /** + * Default 512b. + */ + private static final int DEFAULT_MAX_GLOBAL_SESSION_SIZE = 512; + + /** + * Default 16kb. + */ + private static final int DEFAULT_WRITE_BUFFER_SIZE = 1024 * 16; + + public static int getMaxBranchSessionSize() { + return CONFIGURATION.getInt(STORE_FILE_PREFIX + "maxBranchSessionSize", DEFAULT_MAX_BRANCH_SESSION_SIZE); + } + + public static int getMaxGlobalSessionSize() { + return CONFIGURATION.getInt(STORE_FILE_PREFIX + "maxGlobalSessionSize", DEFAULT_MAX_GLOBAL_SESSION_SIZE); + } + + public static int getFileWriteBufferCacheSize() { + return CONFIGURATION.getInt(STORE_FILE_PREFIX + "fileWriteBufferCacheSize", DEFAULT_WRITE_BUFFER_SIZE); + } + + public static FlushDiskMode getFlushDiskMode() { + return FlushDiskMode.findDiskMode(CONFIGURATION.getConfig(STORE_FILE_PREFIX + "flushDiskMode")); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/TransactionStoreManager.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/TransactionStoreManager.java new file mode 100644 index 000000000..3410c0200 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/store/TransactionStoreManager.java @@ -0,0 +1,125 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.store; + +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionCondition; + +import java.util.List; + +/** + * The interface Transaction store manager. + * + * @author slievrly + */ +public interface TransactionStoreManager { + + /** + * Write session boolean. + * @param logOperation the log operation + * @param session the session + * @return the boolean + */ + boolean writeSession(LogOperation logOperation, SessionStorable session); + + /** + * Read global session global session. + * @param xid the xid + * @return the global session + */ + GlobalSession readSession(String xid); + + /** + * Read session global session. + * @param xid the xid + * @param withBranchSessions the withBranchSessions + * @return the global session + */ + GlobalSession readSession(String xid, boolean withBranchSessions); + + /** + * Read session by status list. + * @param sessionCondition the session condition + * @return the list + */ + List<GlobalSession> readSession(SessionCondition sessionCondition); + + /** + * Shutdown. + */ + void shutdown(); + + /** + * The enum Log operation. + */ + enum LogOperation { + + /** + * Global add log operation. + */ + GLOBAL_ADD((byte) 1), + /** + * Global update log operation. + */ + GLOBAL_UPDATE((byte) 2), + /** + * Global remove log operation. + */ + GLOBAL_REMOVE((byte) 3), + /** + * Branch add log operation. + */ + BRANCH_ADD((byte) 4), + /** + * Branch update log operation. + */ + BRANCH_UPDATE((byte) 5), + /** + * Branch remove log operation. + */ + BRANCH_REMOVE((byte) 6); + + private byte code; + + LogOperation(byte code) { + this.code = code; + } + + /** + * Gets code. + * @return the code + */ + public byte getCode() { + return this.code; + } + + /** + * Gets log operation by code. + * @param code the code + * @return the log operation by code + */ + public static LogOperation getLogOperationByCode(byte code) { + for (LogOperation temp : values()) { + if (temp.getCode() == code) { + return temp; + } + } + throw new IllegalArgumentException("Unknown LogOperation[" + code + "]"); + } + + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/at/ATCore.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/at/ATCore.java new file mode 100644 index 000000000..bc69a1ab2 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/at/ATCore.java @@ -0,0 +1,65 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.transaction.at; + +import io.seata.core.exception.BranchTransactionException; +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchType; +import io.seata.core.rpc.RemotingServer; +import io.seata.server.coordinator.AbstractCore; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; + +import static io.seata.core.exception.TransactionExceptionCode.LockKeyConflict; + +/** + * The type at core. + * + * @author ph3636 + */ +public class ATCore extends AbstractCore { + + public ATCore(RemotingServer remotingServer) { + super(remotingServer); + } + + @Override + public BranchType getHandleBranchType() { + return BranchType.AT; + } + + @Override + protected void branchSessionLock(GlobalSession globalSession, BranchSession branchSession) + throws TransactionException { + if (!branchSession.lock()) { + throw new BranchTransactionException(LockKeyConflict, + String.format("Global lock acquire failed xid = %s branchId = %s", globalSession.getXid(), + branchSession.getBranchId())); + } + } + + @Override + protected void branchSessionUnlock(BranchSession branchSession) throws TransactionException { + branchSession.unlock(); + } + + @Override + public boolean lockQuery(BranchType branchType, String resourceId, String xid, String lockKeys) + throws TransactionException { + return lockManager.isLockable(xid, resourceId, lockKeys); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/saga/SagaCore.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/saga/SagaCore.java new file mode 100644 index 000000000..51a668708 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/saga/SagaCore.java @@ -0,0 +1,253 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.transaction.saga; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.Map; +import java.util.concurrent.TimeoutException; + +import io.netty.channel.Channel; +import io.seata.common.util.CollectionUtils; +import io.seata.core.exception.GlobalTransactionException; +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.BranchType; +import io.seata.core.model.GlobalStatus; +import io.seata.core.protocol.transaction.BranchCommitRequest; +import io.seata.core.protocol.transaction.BranchCommitResponse; +import io.seata.core.protocol.transaction.BranchRollbackRequest; +import io.seata.core.protocol.transaction.BranchRollbackResponse; +import io.seata.core.rpc.netty.ChannelManager; +import io.seata.core.rpc.RemotingServer; +import io.seata.server.coordinator.AbstractCore; +import io.seata.server.session.BranchSession; +import io.seata.server.session.GlobalSession; +import io.seata.server.session.SessionHelper; +import io.seata.server.session.SessionHolder; + +/** + * The type saga core. + * + * @author ph3636 + */ +public class SagaCore extends AbstractCore { + + public SagaCore(RemotingServer remotingServer) { + super(remotingServer); + } + + @Override + public BranchType getHandleBranchType() { + return BranchType.SAGA; + } + + @Override + public void globalSessionStatusCheck(GlobalSession globalSession) throws GlobalTransactionException { + // SAGA type accept forward(retry) operation on timeout or commit fail, forward + // operation will register remaining branches + } + + @Override + public BranchStatus branchCommitSend(BranchCommitRequest request, GlobalSession globalSession, + BranchSession branchSession) throws IOException, TimeoutException { + Map<String, Channel> channels = ChannelManager.getRmChannels(); + if (CollectionUtils.isEmpty(channels)) { + LOGGER.error("Failed to commit SAGA global[" + globalSession.getXid() + ", RM channels is empty."); + return BranchStatus.PhaseTwo_CommitFailed_Retryable; + } + String sagaResourceId = getSagaResourceId(globalSession); + Channel sagaChannel = channels.get(sagaResourceId); + if (sagaChannel == null) { + LOGGER.error("Failed to commit SAGA global[" + globalSession.getXid() + + ", cannot find channel by resourceId[" + sagaResourceId + "]"); + return BranchStatus.PhaseTwo_CommitFailed_Retryable; + } + BranchCommitResponse response = (BranchCommitResponse) remotingServer.sendSyncRequest(sagaChannel, request); + return response.getBranchStatus(); + } + + @Override + public BranchStatus branchRollbackSend(BranchRollbackRequest request, GlobalSession globalSession, + BranchSession branchSession) throws IOException, TimeoutException { + Map<String, Channel> channels = ChannelManager.getRmChannels(); + if (CollectionUtils.isEmpty(channels)) { + LOGGER.error("Failed to rollback SAGA global[" + globalSession.getXid() + ", RM channels is empty."); + return BranchStatus.PhaseTwo_RollbackFailed_Retryable; + } + String sagaResourceId = getSagaResourceId(globalSession); + Channel sagaChannel = channels.get(sagaResourceId); + if (sagaChannel == null) { + LOGGER.error("Failed to rollback SAGA global[" + globalSession.getXid() + + ", cannot find channel by resourceId[" + sagaResourceId + "]"); + return BranchStatus.PhaseTwo_RollbackFailed_Retryable; + } + BranchRollbackResponse response = (BranchRollbackResponse) remotingServer.sendSyncRequest(sagaChannel, request); + return response.getBranchStatus(); + } + + @Override + public boolean doGlobalCommit(GlobalSession globalSession, boolean retrying) throws TransactionException { + try { + BranchStatus branchStatus = branchCommit(globalSession, SessionHelper.newBranch(BranchType.SAGA, + globalSession.getXid(), -1, getSagaResourceId(globalSession), globalSession.getStatus().name())); + + switch (branchStatus) { + case PhaseTwo_Committed: + removeAllBranches(globalSession); + LOGGER.info("Successfully committed SAGA global[" + globalSession.getXid() + "]"); + break; + case PhaseTwo_Rollbacked: + LOGGER.info("Successfully rollbacked SAGA global[" + globalSession.getXid() + "]"); + removeAllBranches(globalSession); + SessionHelper.endRollbacked(globalSession); + return false; + case PhaseTwo_RollbackFailed_Retryable: + LOGGER.error("By [{}], failed to rollback SAGA global [{}], will retry later.", branchStatus, + globalSession.getXid()); + SessionHolder.getRetryCommittingSessionManager().removeGlobalSession(globalSession); + globalSession.queueToRetryRollback(); + return false; + case PhaseOne_Failed: + LOGGER.error("By [{}], finish SAGA global [{}]", branchStatus, globalSession.getXid()); + removeAllBranches(globalSession); + globalSession.changeStatus(GlobalStatus.Finished); + globalSession.end(); + return false; + case PhaseTwo_CommitFailed_Unretryable: + if (globalSession.canBeCommittedAsync()) { + LOGGER.error("By [{}], failed to commit SAGA global [{}]", branchStatus, globalSession.getXid()); + break; + } + else { + SessionHelper.endCommitFailed(globalSession); + LOGGER.error("Finally, failed to commit SAGA global[{}]", globalSession.getXid()); + return false; + } + default: + if (!retrying) { + globalSession.queueToRetryCommit(); + return false; + } + else { + LOGGER.error("Failed to commit SAGA global[{}], will retry later.", globalSession.getXid()); + return false; + } + } + } + catch (Exception ex) { + LOGGER.error("Failed to commit global[" + globalSession.getXid() + "]", ex); + + if (!retrying) { + globalSession.queueToRetryRollback(); + } + throw new TransactionException(ex); + } + return true; + } + + @Override + public boolean doGlobalRollback(GlobalSession globalSession, boolean retrying) throws TransactionException { + try { + BranchStatus branchStatus = branchRollback(globalSession, SessionHelper.newBranch(BranchType.SAGA, + globalSession.getXid(), -1, getSagaResourceId(globalSession), globalSession.getStatus().name())); + + switch (branchStatus) { + case PhaseTwo_Rollbacked: + removeAllBranches(globalSession); + LOGGER.info("Successfully rollbacked SAGA global[{}]", globalSession.getXid()); + break; + case PhaseTwo_RollbackFailed_Unretryable: + SessionHelper.endRollbackFailed(globalSession); + LOGGER.error("Failed to rollback SAGA global[{}]", globalSession.getXid()); + return false; + case PhaseTwo_CommitFailed_Retryable: + SessionHolder.getRetryRollbackingSessionManager().removeGlobalSession(globalSession); + globalSession.queueToRetryCommit(); + LOGGER.warn("Retry by custom recover strategy [Forward] on timeout, SAGA global[{}]", + globalSession.getXid()); + return false; + default: + LOGGER.error("Failed to rollback SAGA global[{}]", globalSession.getXid()); + if (!retrying) { + globalSession.queueToRetryRollback(); + } + return false; + } + } + catch (Exception ex) { + LOGGER.error("Failed to rollback global[{}]", globalSession.getXid(), ex); + if (!retrying) { + globalSession.queueToRetryRollback(); + } + throw new TransactionException(ex); + } + return true; + } + + @Override + public void doGlobalReport(GlobalSession globalSession, String xid, GlobalStatus globalStatus) + throws TransactionException { + if (GlobalStatus.Committed.equals(globalStatus)) { + removeAllBranches(globalSession); + SessionHelper.endCommitted(globalSession); + LOGGER.info("Global[{}] committed", globalSession.getXid()); + } + else if (GlobalStatus.Rollbacked.equals(globalStatus) || GlobalStatus.Finished.equals(globalStatus)) { + removeAllBranches(globalSession); + SessionHelper.endRollbacked(globalSession); + LOGGER.info("Global[{}] rollbacked", globalSession.getXid()); + } + else { + globalSession.changeStatus(globalStatus); + LOGGER.info("Global[{}] reporting is successfully done. status[{}]", globalSession.getXid(), + globalSession.getStatus()); + + if (GlobalStatus.RollbackRetrying.equals(globalStatus) + || GlobalStatus.TimeoutRollbackRetrying.equals(globalStatus) + || GlobalStatus.UnKnown.equals(globalStatus)) { + globalSession.queueToRetryRollback(); + LOGGER.info("Global[{}] will retry rollback", globalSession.getXid()); + } + else if (GlobalStatus.CommitRetrying.equals(globalStatus)) { + globalSession.queueToRetryCommit(); + LOGGER.info("Global[{}] will retry commit", globalSession.getXid()); + } + } + } + + /** + * remove all branches + * @param globalSession the globalSession + * @throws TransactionException the TransactionException + */ + private void removeAllBranches(GlobalSession globalSession) throws TransactionException { + ArrayList<BranchSession> branchSessions = globalSession.getSortedBranches(); + for (BranchSession branchSession : branchSessions) { + globalSession.removeBranch(branchSession); + } + } + + /** + * get saga ResourceId + * @param globalSession the globalSession + * @return sagaResourceId + */ + private String getSagaResourceId(GlobalSession globalSession) { + return globalSession.getApplicationId() + "#" + globalSession.getTransactionServiceGroup(); + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/tcc/TccCore.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/tcc/TccCore.java new file mode 100644 index 000000000..6302c18d4 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/tcc/TccCore.java @@ -0,0 +1,38 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.transaction.tcc; + +import io.seata.core.model.BranchType; +import io.seata.core.rpc.RemotingServer; +import io.seata.server.coordinator.AbstractCore; + +/** + * The type tcc core. + * + * @author ph3636 + */ +public class TccCore extends AbstractCore { + + public TccCore(RemotingServer remotingServer) { + super(remotingServer); + } + + @Override + public BranchType getHandleBranchType() { + return BranchType.TCC; + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/xa/XACore.java b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/xa/XACore.java new file mode 100644 index 000000000..0ed194000 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/java/io/seata/server/transaction/xa/XACore.java @@ -0,0 +1,49 @@ +/* + * Copyright 1999-2019 Seata.io Group. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.seata.server.transaction.xa; + +import io.seata.core.exception.TransactionException; +import io.seata.core.model.BranchStatus; +import io.seata.core.model.BranchType; +import io.seata.core.rpc.RemotingServer; +import io.seata.server.coordinator.AbstractCore; + +/** + * The type XA core. + * + * @author sharajava + */ +public class XACore extends AbstractCore { + + public XACore(RemotingServer remotingServer) { + super(remotingServer); + } + + @Override + public BranchType getHandleBranchType() { + return BranchType.XA; + } + + @Override + public void branchReport(BranchType branchType, String xid, long branchId, BranchStatus status, + String applicationData) throws TransactionException { + super.branchReport(branchType, xid, branchId, status, applicationData); + if (BranchStatus.PhaseOne_Failed == status) { + + } + } + +} diff --git a/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.core.rpc.RegisterCheckAuthHandler b/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.core.rpc.RegisterCheckAuthHandler new file mode 100644 index 000000000..1a54728bc --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.core.rpc.RegisterCheckAuthHandler @@ -0,0 +1 @@ +io.seata.server.auth.DefaultCheckAuthHandler \ No newline at end of file diff --git a/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.core.store.db.DataSourceProvider b/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.core.store.db.DataSourceProvider new file mode 100644 index 000000000..ac04a85e0 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.core.store.db.DataSourceProvider @@ -0,0 +1,3 @@ +io.seata.server.store.DbcpDataSourceProvider +io.seata.server.store.DruidDataSourceProvider +io.seata.server.store.HikariDataSourceProvider \ No newline at end of file diff --git a/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.server.coordinator.AbstractCore b/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.server.coordinator.AbstractCore new file mode 100644 index 000000000..a80662b02 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.server.coordinator.AbstractCore @@ -0,0 +1,4 @@ +io.seata.server.transaction.at.ATCore +io.seata.server.transaction.tcc.TccCore +io.seata.server.transaction.saga.SagaCore +io.seata.server.transaction.xa.XACore \ No newline at end of file diff --git a/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.server.lock.LockManager b/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.server.lock.LockManager new file mode 100644 index 000000000..bca40c859 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.server.lock.LockManager @@ -0,0 +1,3 @@ +io.seata.server.storage.db.lock.DataBaseLockManager +io.seata.server.storage.file.lock.FileLockManager +io.seata.server.storage.redis.lock.RedisLockManager \ No newline at end of file diff --git a/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.server.session.SessionManager b/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.server.session.SessionManager new file mode 100644 index 000000000..f2e823167 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/META-INF/services/io.seata.server.session.SessionManager @@ -0,0 +1,3 @@ +io.seata.server.storage.file.session.FileSessionManager +io.seata.server.storage.db.session.DataBaseSessionManager +io.seata.server.storage.redis.session.RedisSessionManager \ No newline at end of file diff --git a/pigx-visual/pigx-seata-server/src/main/resources/file.conf b/pigx-visual/pigx-seata-server/src/main/resources/file.conf new file mode 100644 index 000000000..bf50039f3 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/file.conf @@ -0,0 +1,65 @@ +## transaction log store, only used in seata-server +store { + ## store mode: file、db、redis + mode = "file" + ## rsa decryption public key + publicKey = "" + ## file store property + file { + ## store location dir + dir = "sessionStore" + # branch session size , if exceeded first try compress lockkey, still exceeded throws exceptions + maxBranchSessionSize = 16384 + # globe session size , if exceeded throws exceptions + maxGlobalSessionSize = 512 + # file buffer size , if exceeded allocate new buffer + fileWriteBufferCacheSize = 16384 + # when recover batch read size + sessionReloadReadSize = 100 + # async, sync + flushDiskMode = async + } + + ## database store property + db { + ## the implement of javax.sql.DataSource, such as DruidDataSource(druid)/BasicDataSource(dbcp)/HikariDataSource(hikari) etc. + datasource = "druid" + ## mysql/oracle/postgresql/h2/oceanbase etc. + dbType = "mysql" + driverClassName = "com.mysql.jdbc.Driver" + ## if using mysql to store the data, recommend add rewriteBatchedStatements=true in jdbc connection param + url = "jdbc:mysql://127.0.0.1:3306/seata?rewriteBatchedStatements=true" + user = "mysql" + password = "mysql" + minConn = 5 + maxConn = 100 + globalTable = "global_table" + branchTable = "branch_table" + lockTable = "lock_table" + queryLimit = 100 + maxWait = 5000 + } + + ## redis store property + redis { + ## redis mode: single、sentinel + mode = "single" + ## single mode property + single { + host = "127.0.0.1" + port = "6379" + } + ## sentinel mode property + sentinel { + masterName = "" + ## such as "10.28.235.65:26379,10.28.235.65:26380,10.28.235.65:26381" + sentinelHosts = "" + } + password = "" + database = "0" + minConn = 1 + maxConn = 10 + maxTotal = 100 + queryLimit = 100 + } +} diff --git a/pigx-visual/pigx-seata-server/src/main/resources/logback.xml b/pigx-visual/pigx-seata-server/src/main/resources/logback.xml new file mode 100644 index 000000000..02399e5dd --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/logback.xml @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Copyright 1999-2019 Seata.io Group. + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<configuration scan="true" scanPeriod="60 seconds" debug="false"> + <!-- Context listeners --> + <contextListener class="io.seata.server.logging.listener.SystemPropertyLoggerContextListener"/> + + <!-- Copied from spring-boot.jar --> + <conversionRule conversionWord="clr" converterClass="io.seata.server.logging.logback.ColorConverter"/> + <conversionRule conversionWord="wex" converterClass="io.seata.server.logging.logback.WhitespaceThrowableProxyConverter"/> + <conversionRule conversionWord="wEx" converterClass="io.seata.server.logging.logback.ExtendedWhitespaceThrowableProxyConverter"/> + + <!-- common properties --> + <property name="APPLICATION_NAME" value="seata-server"/> + + + <!-- console-appender --> + <include resource="logback/console-appender.xml"/> + + <!-- file-appender --> + <include resource="logback/file-appender.xml"/> + + <!-- logstash-appender: off by default --> + <!--<include resource="logback/logstash-appender.xml"/>--> + + <!-- kafka-appender: off by default --> + <!--<include resource="logback/kafka-appender.xml"/>--> + + <root level="INFO"> + <!-- console-appender --> + <appender-ref ref="CONSOLE"/> + + <!-- file-appender --> + <appender-ref ref="FILE_ALL"/> + <appender-ref ref="FILE_WARN"/> + <appender-ref ref="FILE_ERROR"/> + + <!-- logstash-appender: off by default --> + <!--<appender-ref ref="LOGSTASH"/>--> + + <!-- kafka-appender: off by default --> + <!--<appender-ref ref="KAFKA"/>--> + </root> +</configuration> diff --git a/pigx-visual/pigx-seata-server/src/main/resources/logback/console-appender.xml b/pigx-visual/pigx-seata-server/src/main/resources/logback/console-appender.xml new file mode 100644 index 000000000..682b1969a --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/logback/console-appender.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<included> + <!-- console-appender properties --> + <property name="CONSOLE_LOG_PATTERN" value="%clr(%d{HH:mm:ss.SSS}){faint} %clr(%5p) %clr(---){faint} %clr([%25.25t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n%wEx"/> + + <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> + <encoder> + <Pattern>${CONSOLE_LOG_PATTERN}</Pattern> + <charset>UTF-8</charset> + </encoder> + </appender> +</included> diff --git a/pigx-visual/pigx-seata-server/src/main/resources/logback/file-appender.xml b/pigx-visual/pigx-seata-server/src/main/resources/logback/file-appender.xml new file mode 100644 index 000000000..cb54dd4e6 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/logback/file-appender.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> +<included> + <!-- file-appender properties --> + <property name="LOG_HOME" value="${user.home}/logs/seata"/> + <property name="FILE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %5p --- [%30.30t] %-40.40logger{39} : %m%n%wEx"/> + + <!--ALL--> + <appender name="FILE_ALL" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${LOG_HOME}/${APPLICATION_NAME:-}.${PORT}.all.log</file> + <append>true</append> + <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> + <fileNamePattern>${LOG_HOME}/history/${APPLICATION_NAME:-}.${PORT}.all.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern> + <maxFileSize>2GB</maxFileSize> + <MaxHistory>7</MaxHistory> + <totalSizeCap>7GB</totalSizeCap> + <cleanHistoryOnStart>true</cleanHistoryOnStart> + </rollingPolicy> + <encoder> + <Pattern>${FILE_LOG_PATTERN}</Pattern> + <charset>UTF-8</charset> + </encoder> + </appender> + + <!--WARN--> + <appender name="FILE_WARN" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <filter class="ch.qos.logback.classic.filter.LevelFilter"> + <level>WARN</level> + <onMatch>ACCEPT</onMatch> + <onMismatch>DENY</onMismatch> + </filter> + <file>${LOG_HOME}/${APPLICATION_NAME:-}.${PORT}.warn.log</file> + <append>true</append> + <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> + <fileNamePattern>${LOG_HOME}/history/${APPLICATION_NAME:-}.${PORT}.warn.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern> + <maxFileSize>2GB</maxFileSize> + <MaxHistory>7</MaxHistory> + <totalSizeCap>7GB</totalSizeCap> + <cleanHistoryOnStart>true</cleanHistoryOnStart> + </rollingPolicy> + <encoder> + <Pattern>${FILE_LOG_PATTERN}</Pattern> + <charset>UTF-8</charset> + </encoder> + </appender> + + <!--ERROR--> + <appender name="FILE_ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <filter class="ch.qos.logback.classic.filter.LevelFilter"> + <level>ERROR</level> + <onMatch>ACCEPT</onMatch> + <onMismatch>DENY</onMismatch> + </filter> + <file>${LOG_HOME}/${APPLICATION_NAME:-}.${PORT}.error.log</file> + <append>true</append> + <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> + <fileNamePattern>${LOG_HOME}/history/${APPLICATION_NAME:-}.${PORT}.error.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern> + <maxFileSize>2GB</maxFileSize> + <MaxHistory>7</MaxHistory> + <totalSizeCap>7GB</totalSizeCap> + <cleanHistoryOnStart>true</cleanHistoryOnStart> + </rollingPolicy> + <encoder> + <Pattern>${FILE_LOG_PATTERN}</Pattern> + <charset>UTF-8</charset> + </encoder> + </appender> +</included> diff --git a/pigx-visual/pigx-seata-server/src/main/resources/logback/kafka-appender.xml b/pigx-visual/pigx-seata-server/src/main/resources/logback/kafka-appender.xml new file mode 100644 index 000000000..2b30a7598 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/logback/kafka-appender.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> +<included> + <!-- kafka-appender properties --> + <property name="KAFKA_BOOTSTRAP_SERVERS" value="localhost:9092"/> + <property name="KAFKA_TOPIC" value="logback_to_logstash"/> + + <appender name="KAFKA" class="com.github.danielwegener.logback.kafka.KafkaAppender"> + <encoder> + <!--<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS}|%p|seata-server|${PORT:-0}|%t|%logger|%X{X-TX-XID:-}|%X{X-TX-BRANCH-ID:-}|%m|%wex</pattern>--> + <pattern>{ + "@timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}", + "level":"%p", + "app_name":"${APPLICATION_NAME:-}", + "PORT": ${PORT:-0}, + "thread_name": "%t", + "logger_name": "%logger", + "X-TX-XID": "%X{X-TX-XID:-}", + "X-TX-BRANCH-ID": "%X{X-TX-BRANCH-ID:-}", + "message": "%m", + "stack_trace": "%wex" +} + </pattern> + </encoder> + <topic>${KAFKA_TOPIC}</topic> + <keyingStrategy class="com.github.danielwegener.logback.kafka.keying.NoKeyKeyingStrategy"/> + <deliveryStrategy class="com.github.danielwegener.logback.kafka.delivery.AsynchronousDeliveryStrategy"/> + <producerConfig>bootstrap.servers=${KAFKA_BOOTSTRAP_SERVERS}</producerConfig> + <producerConfig>acks=0</producerConfig> + <producerConfig>linger.ms=1000</producerConfig> + <producerConfig>max.block.ms=0</producerConfig> + </appender> +</included> diff --git a/pigx-visual/pigx-seata-server/src/main/resources/logback/logstash-appender.xml b/pigx-visual/pigx-seata-server/src/main/resources/logback/logstash-appender.xml new file mode 100644 index 000000000..18b9c25c0 --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/logback/logstash-appender.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<included> + <!-- logstash-appender properties --> + <property name="LOGSTASH_DESTINATION" value="localhost:4560"/> + + <appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender"> + <!-- the TCP address of the logstash --> + <destination>${LOGSTASH_DESTINATION}</destination> + + <!--<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder">--> + <encoder charset="UTF-8" class="io.seata.server.logging.logback.appender.EnhancedLogstashEncoder"> + <!-- the global custom fields --> + <customFields> + { + "app_name": "${APPLICATION_NAME:-}" + } + </customFields> + + <!-- exclude the provider of data `@version` --> + <excludeProvider>net.logstash.logback.composite.LogstashVersionJsonProvider</excludeProvider> + <!-- exclude providers not currently needed, reduce some performance loss. --> + <excludeProvider>net.logstash.logback.composite.loggingevent.JsonMessageJsonProvider</excludeProvider> + <excludeProvider>net.logstash.logback.composite.loggingevent.TagsJsonProvider</excludeProvider> + <excludeProvider>net.logstash.logback.composite.loggingevent.LogstashMarkersJsonProvider</excludeProvider> + <excludeProvider>net.logstash.logback.composite.loggingevent.ArgumentsJsonProvider</excludeProvider> + </encoder> + </appender> +</included> diff --git a/pigx-visual/pigx-seata-server/src/main/resources/registry.conf b/pigx-visual/pigx-seata-server/src/main/resources/registry.conf new file mode 100644 index 000000000..8fb49b27a --- /dev/null +++ b/pigx-visual/pigx-seata-server/src/main/resources/registry.conf @@ -0,0 +1,96 @@ +registry { + # file 、nacos 、eureka、redis、zk、consul、etcd3、sofa + type = "file" + + nacos { + application = "seata-server" + serverAddr = "127.0.0.1:8848" + group = "SEATA_GROUP" + namespace = "" + cluster = "default" + username = "" + password = "" + } + eureka { + serviceUrl = "http://localhost:8761/eureka" + application = "default" + weight = "1" + } + redis { + serverAddr = "localhost:6379" + db = 0 + password = "" + cluster = "default" + timeout = 0 + } + zk { + cluster = "default" + serverAddr = "127.0.0.1:2181" + sessionTimeout = 6000 + connectTimeout = 2000 + username = "" + password = "" + } + consul { + cluster = "default" + serverAddr = "127.0.0.1:8500" + aclToken = "" + } + etcd3 { + cluster = "default" + serverAddr = "http://localhost:2379" + } + sofa { + serverAddr = "127.0.0.1:9603" + application = "default" + region = "DEFAULT_ZONE" + datacenter = "DefaultDataCenter" + cluster = "default" + group = "SEATA_GROUP" + addressWaitTime = "3000" + } + file { + name = "file.conf" + } +} + +config { + # file、nacos 、apollo、zk、consul、etcd3 + type = "file" + + nacos { + serverAddr = "127.0.0.1:8848" + namespace = "" + group = "SEATA_GROUP" + username = "" + password = "" + dataId = "seataServer.properties" + } + consul { + serverAddr = "127.0.0.1:8500" + aclToken = "" + } + apollo { + appId = "seata-server" + ## apolloConfigService will cover apolloMeta + apolloMeta = "http://192.168.1.204:8801" + apolloConfigService = "http://192.168.1.204:8080" + namespace = "application" + apolloAccesskeySecret = "" + cluster = "seata" + } + zk { + serverAddr = "127.0.0.1:2181" + sessionTimeout = 6000 + connectTimeout = 2000 + username = "" + password = "" + nodePath = "/seata/seata.properties" + } + etcd3 { + serverAddr = "http://localhost:2379" + } + file { + name = "file.conf" + } +} diff --git a/pigx-visual/pigx-sentinel-dashboard/pom.xml b/pigx-visual/pigx-sentinel-dashboard/pom.xml index 1a0ad29a3..59521406c 100755 --- a/pigx-visual/pigx-sentinel-dashboard/pom.xml +++ b/pigx-visual/pigx-sentinel-dashboard/pom.xml @@ -6,7 +6,7 @@ <parent> <groupId>com.pig4cloud</groupId> <artifactId>pigx-visual</artifactId> - <version>4.3.0</version> + <version>4.4.0</version> </parent> <artifactId>pigx-sentinel-dashboard</artifactId> diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/PigxSentinelApplication.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/PigxSentinelApplication.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/AuthService.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/AuthService.java index 2c60d8ffa..fe7ee7f8b 100644 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/AuthService.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/AuthService.java @@ -16,7 +16,7 @@ package com.alibaba.csp.sentinel.dashboard.auth; /** - * Interface for authentication and authorization. + * Interface for authentication and authorization. 不需要改 * * @author Carpenter Lee * @since 1.5.0 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/AuthorizationInterceptor.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/AuthorizationInterceptor.java index 816f9d858..b527ce7c6 100644 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/AuthorizationInterceptor.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/AuthorizationInterceptor.java @@ -15,59 +15,15 @@ */ package com.alibaba.csp.sentinel.dashboard.auth; -import com.alibaba.csp.sentinel.dashboard.domain.Result; -import com.alibaba.fastjson.JSON; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; -import org.springframework.web.method.HandlerMethod; import org.springframework.web.servlet.HandlerInterceptor; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.lang.reflect.Method; - /** - * The web interceptor for privilege-based authorization. + * The web interceptor for privilege-based authorization. 不需要改 * * @author lkxiaolou + * @author wxq * @since 1.7.1 */ -@Component -public class AuthorizationInterceptor implements HandlerInterceptor { - - @Autowired - private AuthService<HttpServletRequest> authService; - - @Override - public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) - throws Exception { - if (handler.getClass().isAssignableFrom(HandlerMethod.class)) { - Method method = ((HandlerMethod) handler).getMethod(); - - AuthAction authAction = method.getAnnotation(AuthAction.class); - if (authAction != null) { - AuthService.AuthUser authUser = authService.getAuthUser(request); - if (authUser == null) { - responseNoPrivilegeMsg(response, authAction.message()); - return false; - } - String target = request.getParameter(authAction.targetName()); - - if (!authUser.authTarget(target, authAction.value())) { - responseNoPrivilegeMsg(response, authAction.message()); - return false; - } - } - } - - return true; - } - - private void responseNoPrivilegeMsg(HttpServletResponse response, String message) throws IOException { - Result result = Result.ofFail(-1, message); - response.addHeader("Content-Type", "application/json;charset=UTF-8"); - response.getOutputStream().write(JSON.toJSONBytes(result)); - } +public interface AuthorizationInterceptor extends HandlerInterceptor { } diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/DefaultAuthorizationInterceptor.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/DefaultAuthorizationInterceptor.java new file mode 100644 index 000000000..56c537c03 --- /dev/null +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/DefaultAuthorizationInterceptor.java @@ -0,0 +1,75 @@ +/* + * Copyright 1999-2018 Alibaba Group Holding Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.alibaba.csp.sentinel.dashboard.auth; + +import com.alibaba.csp.sentinel.dashboard.domain.Result; +import com.alibaba.fastjson.JSON; +import org.springframework.web.method.HandlerMethod; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.lang.reflect.Method; + +/** + * The web interceptor for privilege-based authorization. 不需要 + * <p> + * move from old {@link AuthorizationInterceptor}. + * + * @author lkxiaolou + * @author wxq + * @since 1.7.1 + */ +public class DefaultAuthorizationInterceptor implements AuthorizationInterceptor { + + private final AuthService<HttpServletRequest> authService; + + public DefaultAuthorizationInterceptor(AuthService<HttpServletRequest> authService) { + this.authService = authService; + } + + @Override + public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) + throws Exception { + if (handler.getClass().isAssignableFrom(HandlerMethod.class)) { + Method method = ((HandlerMethod) handler).getMethod(); + + AuthAction authAction = method.getAnnotation(AuthAction.class); + if (authAction != null) { + AuthService.AuthUser authUser = authService.getAuthUser(request); + if (authUser == null) { + responseNoPrivilegeMsg(response, authAction.message()); + return false; + } + String target = request.getParameter(authAction.targetName()); + + if (!authUser.authTarget(target, authAction.value())) { + responseNoPrivilegeMsg(response, authAction.message()); + return false; + } + } + } + + return true; + } + + private void responseNoPrivilegeMsg(HttpServletResponse response, String message) throws IOException { + Result result = Result.ofFail(-1, message); + response.addHeader("Content-Type", "application/json;charset=UTF-8"); + response.getOutputStream().write(JSON.toJSONBytes(result)); + } + +} diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/DefaultLoginAuthenticationFilter.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/DefaultLoginAuthenticationFilter.java new file mode 100644 index 000000000..b8a864deb --- /dev/null +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/DefaultLoginAuthenticationFilter.java @@ -0,0 +1,131 @@ +/* + * Copyright 1999-2018 Alibaba Group Holding Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.alibaba.csp.sentinel.dashboard.auth; + +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.HttpStatus; +import org.springframework.util.AntPathMatcher; + +import javax.servlet.*; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.List; + +/** + * <p> + * The Servlet filter for authentication. + * </p> + * + * <p> + * Note: some urls are excluded as they needn't auth, such as: + * </p> + * <ul> + * <li>index url: {@code /}</li> + * <li>authentication request url: {@code /login}, {@code /logout}</li> + * <li>machine registry: {@code /registry/machine}</li> + * <li>static resources</li> + * </ul> + * <p> + * The excluded urls and urlSuffixes could be configured in {@code application.properties} + * file. + * + * @author cdfive 不需要 + * @since 1.6.0 + */ +public class DefaultLoginAuthenticationFilter implements LoginAuthenticationFilter { + + private static final AntPathMatcher PATH_MATCHER = new AntPathMatcher(); + + private static final String URL_SUFFIX_DOT = "."; + + /** + * 忽略鉴权的url + */ + @Value("#{'${auth.filter.exclude-urls}'.split(',')}") + private List<String> authFilterExcludeUrls; + + /** + * 根据后缀不需要鉴权的url + */ + @Value("#{'${auth.filter.exclude-url-suffixes}'.split(',')}") + private List<String> authFilterExcludeUrlSuffixes; + + /** + * Authentication using AuthService interface. + */ + private final AuthService<HttpServletRequest> authService; + + public DefaultLoginAuthenticationFilter(AuthService<HttpServletRequest> authService) { + this.authService = authService; + } + + @Override + public void init(FilterConfig filterConfig) throws ServletException { + + } + + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) + throws IOException, ServletException { + HttpServletRequest httpRequest = (HttpServletRequest) request; + + String servletPath = httpRequest.getServletPath(); + + // Exclude the urls which needn't auth + boolean authFilterExcludeMatch = authFilterExcludeUrls.stream() + .anyMatch(authFilterExcludeUrl -> PATH_MATCHER.match(authFilterExcludeUrl, servletPath)); + if (authFilterExcludeMatch) { + chain.doFilter(request, response); + return; + } + + // Exclude the urls with suffixes which needn't auth + for (String authFilterExcludeUrlSuffix : authFilterExcludeUrlSuffixes) { + if (StringUtils.isBlank(authFilterExcludeUrlSuffix)) { + continue; + } + + // Add . for url suffix so that we needn't add . in property file + if (!authFilterExcludeUrlSuffix.startsWith(URL_SUFFIX_DOT)) { + authFilterExcludeUrlSuffix = URL_SUFFIX_DOT + authFilterExcludeUrlSuffix; + } + + if (servletPath.endsWith(authFilterExcludeUrlSuffix)) { + chain.doFilter(request, response); + return; + } + } + + AuthService.AuthUser authUser = authService.getAuthUser(httpRequest); + + HttpServletResponse httpResponse = (HttpServletResponse) response; + if (authUser == null) { + // If auth fail, set response status code to 401 + httpResponse.setStatus(HttpStatus.UNAUTHORIZED.value()); + } + else { + chain.doFilter(request, response); + } + } + + @Override + public void destroy() { + + } + +} diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/FakeAuthServiceImpl.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/FakeAuthServiceImpl.java index 979ee5659..73c568e12 100644 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/FakeAuthServiceImpl.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/FakeAuthServiceImpl.java @@ -15,7 +15,8 @@ */ package com.alibaba.csp.sentinel.dashboard.auth; -import org.springframework.stereotype.Component; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import javax.servlet.http.HttpServletRequest; @@ -25,9 +26,14 @@ import javax.servlet.http.HttpServletRequest; * @author Carpenter Lee * @since 1.5.0 */ -@Component public class FakeAuthServiceImpl implements AuthService<HttpServletRequest> { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + public FakeAuthServiceImpl() { + this.logger.warn("there is no auth, use {} by implementation {}", AuthService.class, this.getClass()); + } + @Override public AuthUser getAuthUser(HttpServletRequest request) { return new AuthUserImpl(); diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/LoginAuthenticationFilter.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/LoginAuthenticationFilter.java index 1b63873d5..b44f11197 100644 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/LoginAuthenticationFilter.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/LoginAuthenticationFilter.java @@ -15,18 +15,7 @@ */ package com.alibaba.csp.sentinel.dashboard.auth; -import org.apache.commons.lang.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.http.HttpStatus; -import org.springframework.stereotype.Component; -import org.springframework.util.AntPathMatcher; - -import javax.servlet.*; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.List; +import javax.servlet.Filter; /** * <p> @@ -42,92 +31,14 @@ import java.util.List; * <li>machine registry: {@code /registry/machine}</li> * <li>static resources</li> * </ul> - * + * <p> * The excluded urls and urlSuffixes could be configured in {@code application.properties} * file. * - * @author cdfive + * @author cdfive 不需要 + * @author wxq * @since 1.6.0 */ -@Component -public class LoginAuthenticationFilter implements Filter { - - private static final String URL_SUFFIX_DOT = "."; - - private static final AntPathMatcher PATH_MATCHER = new AntPathMatcher(); - - /** - * Some urls which needn't auth, such as /auth/login, /registry/machine and so on. - */ - @Value("#{'${auth.filter.exclude-urls}'.split(',')}") - private List<String> authFilterExcludeUrls; - - /** - * Some urls with suffixes which needn't auth, such as htm, html, js and so on. - */ - @Value("#{'${auth.filter.exclude-url-suffixes}'.split(',')}") - private List<String> authFilterExcludeUrlSuffixes; - - /** - * Authentication using AuthService interface. - */ - @Autowired - private AuthService<HttpServletRequest> authService; - - @Override - public void init(FilterConfig filterConfig) throws ServletException { - - } - - @Override - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException { - HttpServletRequest httpRequest = (HttpServletRequest) request; - - String servletPath = httpRequest.getServletPath(); - - // Exclude the urls which needn't auth - if (authFilterExcludeUrls.stream().anyMatch(s -> PATH_MATCHER.match(s, servletPath))) { - chain.doFilter(request, response); - return; - } - if (authFilterExcludeUrls.contains(servletPath)) { - chain.doFilter(request, response); - return; - } - - // Exclude the urls with suffixes which needn't auth - for (String authFilterExcludeUrlSuffix : authFilterExcludeUrlSuffixes) { - if (StringUtils.isBlank(authFilterExcludeUrlSuffix)) { - continue; - } - - // Add . for url suffix so that we needn't add . in property file - if (!authFilterExcludeUrlSuffix.startsWith(URL_SUFFIX_DOT)) { - authFilterExcludeUrlSuffix = URL_SUFFIX_DOT + authFilterExcludeUrlSuffix; - } - - if (servletPath.endsWith(authFilterExcludeUrlSuffix)) { - chain.doFilter(request, response); - return; - } - } - - AuthService.AuthUser authUser = authService.getAuthUser(httpRequest); - - HttpServletResponse httpResponse = (HttpServletResponse) response; - if (authUser == null) { - // If auth fail, set response status code to 401 - httpResponse.setStatus(HttpStatus.UNAUTHORIZED.value()); - } - else { - chain.doFilter(request, response); - } - } - - @Override - public void destroy() { - - } +public interface LoginAuthenticationFilter extends Filter { } diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/SimpleWebAuthServiceImpl.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/SimpleWebAuthServiceImpl.java index bf85b49e8..6bcfb3547 100644 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/SimpleWebAuthServiceImpl.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/auth/SimpleWebAuthServiceImpl.java @@ -15,20 +15,13 @@ */ package com.alibaba.csp.sentinel.dashboard.auth; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.context.annotation.Primary; -import org.springframework.stereotype.Component; - import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; /** - * @author cdfive + * @author cdfive 不需要 * @since 1.6.0 */ -@Component -@Primary -@ConditionalOnProperty(name = "auth.enabled", matchIfMissing = true) public class SimpleWebAuthServiceImpl implements AuthService<HttpServletRequest> { public static final String WEB_SESSION_KEY = "session_sentinel_admin"; diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/client/SentinelApiClient.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/client/SentinelApiClient.java old mode 100755 new mode 100644 index ac6885ae4..afeb58bb4 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/client/SentinelApiClient.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/client/SentinelApiClient.java @@ -171,8 +171,8 @@ public class SentinelApiClient { } /** - * Check wheter target instance (identified by tuple of app-ip:port) supports the form - * of "xxxxx; xx=xx" in "Content-Type" header. + * Check whether target instance (identified by tuple of app-ip:port) supports the + * form of "xxxxx; xx=xx" in "Content-Type" header. * @param app target app name * @param ip target node's address * @param port target node's port @@ -520,7 +520,7 @@ public class SentinelApiClient { AssertUtil.notEmpty(ip, "Bad machine IP"); AssertUtil.isTrue(port > 0, "Bad machine port"); return fetchItemsAsync(ip, port, GET_PARAM_RULE_PATH, null, ParamFlowRule.class) - .thenApply(rules -> rules.stream().map(e -> ParamFlowRuleEntity.fromAuthorityRule(app, ip, port, e)) + .thenApply(rules -> rules.stream().map(e -> ParamFlowRuleEntity.fromParamFlowRule(app, ip, port, e)) .collect(Collectors.toList())); } catch (Exception e) { diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/config/AuthConfiguration.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/config/AuthConfiguration.java new file mode 100644 index 000000000..63ad89a27 --- /dev/null +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/config/AuthConfiguration.java @@ -0,0 +1,59 @@ +/* + * Copyright 1999-2018 Alibaba Group Holding Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.alibaba.csp.sentinel.dashboard.config; + +import com.alibaba.csp.sentinel.dashboard.auth.*; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import javax.servlet.http.HttpServletRequest; + +@Configuration +@EnableConfigurationProperties(AuthProperties.class) +public class AuthConfiguration { + + private final AuthProperties authProperties; + + public AuthConfiguration(AuthProperties authProperties) { + this.authProperties = authProperties; + } + + @Bean + @ConditionalOnMissingBean + public AuthService<HttpServletRequest> httpServletRequestAuthService() { + if (this.authProperties.isEnabled()) { + return new SimpleWebAuthServiceImpl(); + } + return new FakeAuthServiceImpl(); + } + + @Bean + @ConditionalOnMissingBean + public LoginAuthenticationFilter loginAuthenticationFilter( + AuthService<HttpServletRequest> httpServletRequestAuthService) { + return new DefaultLoginAuthenticationFilter(httpServletRequestAuthService); + } + + @Bean + @ConditionalOnMissingBean + public AuthorizationInterceptor authorizationInterceptor( + AuthService<HttpServletRequest> httpServletRequestAuthService) { + return new DefaultAuthorizationInterceptor(httpServletRequestAuthService); + } + +} diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/config/AuthProperties.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/config/AuthProperties.java new file mode 100644 index 000000000..961a857cd --- /dev/null +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/config/AuthProperties.java @@ -0,0 +1,33 @@ +/* + * Copyright 1999-2018 Alibaba Group Holding Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.alibaba.csp.sentinel.dashboard.config; + +import org.springframework.boot.context.properties.ConfigurationProperties; + +@ConfigurationProperties(prefix = "auth") +public class AuthProperties { + + private boolean enabled = true; + + public boolean isEnabled() { + return enabled; + } + + public void setEnabled(boolean enabled) { + this.enabled = enabled; + } + +} diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/config/WebConfig.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/config/WebConfig.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/AppController.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/AppController.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/DegradeController.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/DegradeController.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/DemoController.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/DemoController.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/FlowControllerV1.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/FlowControllerV1.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/MachineRegistryController.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/MachineRegistryController.java old mode 100755 new mode 100644 index 887659bb9..c23ecf709 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/MachineRegistryController.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/MachineRegistryController.java @@ -16,7 +16,6 @@ package com.alibaba.csp.sentinel.dashboard.controller; import com.alibaba.csp.sentinel.dashboard.discovery.AppManagement; -import com.alibaba.csp.sentinel.dashboard.discovery.MachineDiscovery; import com.alibaba.csp.sentinel.dashboard.discovery.MachineInfo; import com.alibaba.csp.sentinel.dashboard.domain.Result; import com.alibaba.csp.sentinel.util.StringUtil; @@ -28,6 +27,7 @@ import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; +import sun.net.util.IPAddressUtil; @Controller @RequestMapping(value = "/registry", produces = MediaType.APPLICATION_JSON_VALUE) @@ -43,20 +43,27 @@ public class MachineRegistryController { public Result<?> receiveHeartBeat(String app, @RequestParam(value = "app_type", required = false, defaultValue = "0") Integer appType, Long version, String v, String hostname, String ip, Integer port) { - if (app == null) { - app = MachineDiscovery.UNKNOWN_APP_NAME; + if (StringUtil.isBlank(app) || app.length() > 256) { + return Result.ofFail(-1, "invalid appName"); } - if (ip == null) { - return Result.ofFail(-1, "ip can't be null"); + if (StringUtil.isBlank(ip) || ip.length() > 128) { + return Result.ofFail(-1, "invalid ip: " + ip); } - if (port == null) { - return Result.ofFail(-1, "port can't be null"); + if (!IPAddressUtil.isIPv4LiteralAddress(ip) && !IPAddressUtil.isIPv6LiteralAddress(ip)) { + return Result.ofFail(-1, "invalid ip: " + ip); + } + if (port == null || port < -1) { + return Result.ofFail(-1, "invalid port"); + } + if (hostname != null && hostname.length() > 256) { + return Result.ofFail(-1, "hostname too long"); } if (port == -1) { - logger.info("Receive heartbeat from " + ip + " but port not set yet"); + logger.warn("Receive heartbeat from " + ip + " but port not set yet"); return Result.ofFail(-1, "your port not set yet"); } - String sentinelVersion = StringUtil.isEmpty(v) ? "unknown" : v; + String sentinelVersion = StringUtil.isBlank(v) ? "unknown" : v; + version = version == null ? System.currentTimeMillis() : version; try { MachineInfo machineInfo = new MachineInfo(); diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/MetricController.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/MetricController.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/ParamFlowRuleController.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/ParamFlowRuleController.java index 4134d424b..f81d64cd9 100644 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/ParamFlowRuleController.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/ParamFlowRuleController.java @@ -16,7 +16,6 @@ package com.alibaba.csp.sentinel.dashboard.controller; import com.alibaba.csp.sentinel.dashboard.auth.AuthAction; -import com.alibaba.csp.sentinel.dashboard.auth.AuthService; import com.alibaba.csp.sentinel.dashboard.auth.AuthService.PrivilegeType; import com.alibaba.csp.sentinel.dashboard.client.CommandNotFoundException; import com.alibaba.csp.sentinel.dashboard.client.SentinelApiClient; @@ -111,7 +110,7 @@ public class ParamFlowRuleController { } @PostMapping("/rule") - @AuthAction(AuthService.PrivilegeType.WRITE_RULE) + @AuthAction(PrivilegeType.WRITE_RULE) public Result<ParamFlowRuleEntity> apiAddParamFlowRule(@RequestBody ParamFlowRuleEntity entity) { Result<ParamFlowRuleEntity> checkResult = checkEntityInternal(entity); if (checkResult != null) { @@ -183,7 +182,7 @@ public class ParamFlowRuleController { } @PutMapping("/rule/{id}") - @AuthAction(AuthService.PrivilegeType.WRITE_RULE) + @AuthAction(PrivilegeType.WRITE_RULE) public Result<ParamFlowRuleEntity> apiUpdateParamFlowRule(@PathVariable("id") Long id, @RequestBody ParamFlowRuleEntity entity) { if (id == null || id <= 0) { diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/ResourceController.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/ResourceController.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/SystemController.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/SystemController.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/v2/FlowControllerV2.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/v2/FlowControllerV2.java old mode 100755 new mode 100644 index c655071de..99b595bbf --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/v2/FlowControllerV2.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/controller/v2/FlowControllerV2.java @@ -16,7 +16,6 @@ package com.alibaba.csp.sentinel.dashboard.controller.v2; import com.alibaba.csp.sentinel.dashboard.auth.AuthAction; -import com.alibaba.csp.sentinel.dashboard.auth.AuthService; import com.alibaba.csp.sentinel.dashboard.auth.AuthService.PrivilegeType; import com.alibaba.csp.sentinel.dashboard.datasource.entity.rule.FlowRuleEntity; import com.alibaba.csp.sentinel.dashboard.domain.Result; @@ -127,7 +126,7 @@ public class FlowControllerV2 { } @PostMapping("/rule") - @AuthAction(value = AuthService.PrivilegeType.WRITE_RULE) + @AuthAction(value = PrivilegeType.WRITE_RULE) public Result<FlowRuleEntity> apiAddFlowRule(@RequestBody FlowRuleEntity entity) { Result<FlowRuleEntity> checkResult = checkEntityInternal(entity); @@ -152,7 +151,7 @@ public class FlowControllerV2 { } @PutMapping("/rule/{id}") - @AuthAction(AuthService.PrivilegeType.WRITE_RULE) + @AuthAction(PrivilegeType.WRITE_RULE) public Result<FlowRuleEntity> apiUpdateFlowRule(@PathVariable("id") Long id, @RequestBody FlowRuleEntity entity) { if (id == null || id <= 0) { diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/ApplicationEntity.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/ApplicationEntity.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/MachineEntity.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/MachineEntity.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/MetricEntity.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/MetricEntity.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/MetricPositionEntity.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/MetricPositionEntity.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/DegradeRuleEntity.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/DegradeRuleEntity.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/FlowRuleEntity.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/FlowRuleEntity.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/ParamFlowRuleEntity.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/ParamFlowRuleEntity.java index b5a2977d9..c90ef913c 100644 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/ParamFlowRuleEntity.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/ParamFlowRuleEntity.java @@ -38,7 +38,7 @@ public class ParamFlowRuleEntity extends AbstractRuleEntity<ParamFlowRule> { this.rule = rule; } - public static ParamFlowRuleEntity fromAuthorityRule(String app, String ip, Integer port, ParamFlowRule rule) { + public static ParamFlowRuleEntity fromParamFlowRule(String app, String ip, Integer port, ParamFlowRule rule) { ParamFlowRuleEntity entity = new ParamFlowRuleEntity(rule); entity.setApp(app); entity.setIp(ip); diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/RuleEntity.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/RuleEntity.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/SystemRuleEntity.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/datasource/entity/rule/SystemRuleEntity.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/discovery/AppInfo.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/discovery/AppInfo.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/discovery/AppManagement.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/discovery/AppManagement.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/discovery/MachineDiscovery.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/discovery/MachineDiscovery.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/discovery/MachineInfo.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/discovery/MachineInfo.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/discovery/SimpleMachineDiscovery.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/discovery/SimpleMachineDiscovery.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/ResourceTreeNode.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/ResourceTreeNode.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/Result.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/Result.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/vo/MachineInfoVo.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/vo/MachineInfoVo.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/vo/MetricVo.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/vo/MetricVo.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/vo/ResourceVo.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/vo/ResourceVo.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/vo/gateway/api/ApiPredicateItemVo.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/vo/gateway/api/ApiPredicateItemVo.java index a11cd7c16..52300d95f 100644 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/vo/gateway/api/ApiPredicateItemVo.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/domain/vo/gateway/api/ApiPredicateItemVo.java @@ -23,8 +23,21 @@ package com.alibaba.csp.sentinel.dashboard.domain.vo.gateway.api; */ public class ApiPredicateItemVo { + /** + * The pattern for matching url. + */ private String pattern; + /** + * The matching Strategy in url. Constants are defined in class + * SentinelGatewayConstants.\ + * + * <ul> + * <li>0(URL_MATCH_STRATEGY_EXACT): exact match mode</li> + * <li>1(URL_MATCH_STRATEGY_PREFIX): prefix match mode</li> + * <li>2(URL_MATCH_STRATEGY_REGEX): regex match mode</li> + * </ul> + */ private Integer matchStrategy; public String getPattern() { diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/metric/MetricFetcher.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/metric/MetricFetcher.java old mode 100755 new mode 100644 index 8adb23099..ec42af53b --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/metric/MetricFetcher.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/metric/MetricFetcher.java @@ -84,7 +84,7 @@ public class MetricFetcher { @SuppressWarnings("PMD.ThreadPoolCreationRule") private ScheduledExecutorService fetchScheduleService = Executors.newScheduledThreadPool(1, - new NamedThreadFactory("sentinel-dashboard-metrics-fetch-task")); + new NamedThreadFactory("sentinel-dashboard-metrics-fetch-task", true)); private ExecutorService fetchService; @@ -96,11 +96,11 @@ public class MetricFetcher { int queueSize = 2048; RejectedExecutionHandler handler = new DiscardPolicy(); fetchService = new ThreadPoolExecutor(cores, cores, keepAliveTime, TimeUnit.MILLISECONDS, - new ArrayBlockingQueue<>(queueSize), new NamedThreadFactory("sentinel-dashboard-metrics-fetchService"), - handler); + new ArrayBlockingQueue<>(queueSize), + new NamedThreadFactory("sentinel-dashboard-metrics-fetchService", true), handler); fetchWorker = new ThreadPoolExecutor(cores, cores, keepAliveTime, TimeUnit.MILLISECONDS, - new ArrayBlockingQueue<>(queueSize), new NamedThreadFactory("sentinel-dashboard-metrics-fetchWorker"), - handler); + new ArrayBlockingQueue<>(queueSize), + new NamedThreadFactory("sentinel-dashboard-metrics-fetchWorker", true), handler); IOReactorConfig ioConfig = IOReactorConfig.custom().setConnectTimeout(3000).setSoTimeout(3000) .setIoThreadCount(Runtime.getRuntime().availableProcessors() * 2).build(); @@ -249,7 +249,7 @@ public class MetricFetcher { catch (Exception e) { logger.info(msg + " metric, wait http client error:", e); } - long cost = System.currentTimeMillis() - start; + // long cost = System.currentTimeMillis() - start; // logger.info("finished " + msg + " metric for " + app + ", time intervalMs [" + // startTime + ", " + endTime // + "], total machines=" + machines.size() + ", dead=" + dead + ", fetch @@ -268,7 +268,7 @@ public class MetricFetcher { lastFetchMs = lastFetchMs / 1000 * 1000; long endTime = lastFetchMs + FETCH_INTERVAL_SECOND * 1000; if (endTime > now - 1000 * 2) { - // to near + // too near return; } // update last_fetch in advance. @@ -336,26 +336,24 @@ public class MetricFetcher { * aggregation metrics by app_resource_timeSecond, ignore ip and port. */ String key = buildMetricKey(machine.getApp(), node.getResource(), node.getTimestamp()); - MetricEntity entity = map.get(key); - if (entity != null) { - entity.addPassQps(node.getPassQps()); - entity.addBlockQps(node.getBlockQps()); - entity.addRtAndSuccessQps(node.getRt(), node.getSuccessQps()); - entity.addExceptionQps(node.getExceptionQps()); - entity.addCount(1); - } - else { - entity = new MetricEntity(); - entity.setApp(machine.getApp()); - entity.setTimestamp(new Date(node.getTimestamp())); - entity.setPassQps(node.getPassQps()); - entity.setBlockQps(node.getBlockQps()); - entity.setRtAndSuccessQps(node.getRt(), node.getSuccessQps()); - entity.setExceptionQps(node.getExceptionQps()); - entity.setCount(1); - entity.setResource(node.getResource()); - map.put(key, entity); - } + + MetricEntity metricEntity = map.computeIfAbsent(key, s -> { + MetricEntity initMetricEntity = new MetricEntity(); + initMetricEntity.setApp(machine.getApp()); + initMetricEntity.setTimestamp(new Date(node.getTimestamp())); + initMetricEntity.setPassQps(0L); + initMetricEntity.setBlockQps(0L); + initMetricEntity.setRtAndSuccessQps(0, 0L); + initMetricEntity.setExceptionQps(0L); + initMetricEntity.setCount(0); + initMetricEntity.setResource(node.getResource()); + return initMetricEntity; + }); + metricEntity.addPassQps(node.getPassQps()); + metricEntity.addBlockQps(node.getBlockQps()); + metricEntity.addRtAndSuccessQps(node.getRt(), node.getSuccessQps()); + metricEntity.addExceptionQps(node.getExceptionQps()); + metricEntity.addCount(1); } catch (Exception e) { logger.warn("handleBody line exception, machine: {}, line: {}", machine.toLogString(), line); diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/repository/rule/InMemDegradeRuleStore.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/repository/rule/InMemDegradeRuleStore.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/repository/rule/InMemFlowRuleStore.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/repository/rule/InMemFlowRuleStore.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/repository/rule/InMemSystemRuleStore.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/repository/rule/InMemSystemRuleStore.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/repository/rule/InMemoryRuleRepositoryAdapter.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/repository/rule/InMemoryRuleRepositoryAdapter.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/repository/rule/RuleRepository.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/repository/rule/RuleRepository.java old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/util/ClusterEntityUtils.java b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/util/ClusterEntityUtils.java index c43e92d63..a4cb6de12 100644 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/util/ClusterEntityUtils.java +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/util/ClusterEntityUtils.java @@ -107,7 +107,8 @@ public final class ClusterEntityUtils { if (mode == ClusterStateManager.CLUSTER_SERVER) { String serverAddress = getIp(ip); int port = stateVO.getState().getServer().getPort(); - map.computeIfAbsent(serverAddress, v -> new ClusterGroupEntity().setBelongToApp(true) + String targetAddress = serverAddress + ":" + port; + map.computeIfAbsent(targetAddress, v -> new ClusterGroupEntity().setBelongToApp(true) .setMachineId(ip + '@' + stateVO.getCommandPort()).setIp(ip).setPort(port)); } } @@ -120,8 +121,8 @@ public final class ClusterEntityUtils { if (StringUtil.isBlank(targetServer) || targetPort == null || targetPort <= 0) { continue; } - - ClusterGroupEntity group = map.computeIfAbsent(targetServer, v -> new ClusterGroupEntity() + String targetAddress = targetServer + ":" + targetPort; + ClusterGroupEntity group = map.computeIfAbsent(targetAddress, v -> new ClusterGroupEntity() .setBelongToApp(true).setMachineId(targetServer).setIp(targetServer).setPort(targetPort)); group.getClientSet().add(ip + '@' + stateVO.getCommandPort()); } diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/resources/application.yml b/pigx-visual/pigx-sentinel-dashboard/src/main/resources/application.yml index 8cea8bd13..1e6e6edf2 100755 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/resources/application.yml +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/resources/application.yml @@ -3,6 +3,13 @@ server: servlet: encoding: force: true +spring: + application: + name: @artifactId@ + cloud: + nacos: + discovery: + server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} management: endpoints: diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/resources/bootstrap.yml b/pigx-visual/pigx-sentinel-dashboard/src/main/resources/bootstrap.yml deleted file mode 100644 index 0e47b57b1..000000000 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/resources/bootstrap.yml +++ /dev/null @@ -1,15 +0,0 @@ -server: - port: 5020 - servlet: - encoding: - force: true - -spring: - application: - name: @artifactId@ - cloud: - nacos: - discovery: - server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} - profiles: - active: @profiles.active@ \ No newline at end of file diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/.gitignore b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/.gitignore old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/.jshintrc b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/.jshintrc old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/README.md b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/README.md old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/app.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/app.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/degrade.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/degrade.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/flow_v1.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/flow_v1.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/flow_v2.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/flow_v2.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/home.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/home.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/identity.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/identity.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/machine.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/machine.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/main.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/main.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/metric.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/metric.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/system.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/controllers/system.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/header/header.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/header/header.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/header/header.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/header/header.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/sidebar/sidebar-search/sidebar-search.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/sidebar/sidebar-search/sidebar-search.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/sidebar/sidebar-search/sidebar-search.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/sidebar/sidebar-search/sidebar-search.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/sidebar/sidebar.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/sidebar/sidebar.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/sidebar/sidebar.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/sidebar/sidebar.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/filters/filters.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/filters/filters.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/libs/treeTable.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/libs/treeTable.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/appservice.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/appservice.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/degrade_service.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/degrade_service.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/flow_service_v1.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/flow_service_v1.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/flow_service_v2.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/flow_service_v2.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/identityservice.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/identityservice.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/machineservice.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/machineservice.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/metricservice.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/metricservice.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/systemservice.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/scripts/services/systemservice.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/styles/main.css b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/styles/main.css old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/styles/page.css b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/styles/page.css old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/styles/timeline.css b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/styles/timeline.css old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/cluster_single_config.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/cluster_single_config.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dashboard/home.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dashboard/home.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dashboard/main.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dashboard/main.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/degrade.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/degrade.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dialog/cluster/cluster-client-config-dialog.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dialog/cluster/cluster-client-config-dialog.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dialog/confirm-dialog.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dialog/confirm-dialog.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dialog/degrade-rule-dialog.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dialog/degrade-rule-dialog.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dialog/flow-rule-dialog.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dialog/flow-rule-dialog.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dialog/system-rule-dialog.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/dialog/system-rule-dialog.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/flow_v1.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/flow_v1.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/flow_v2.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/flow_v2.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/identity.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/identity.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/machine.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/machine.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/metric.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/metric.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/pagination.tpl.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/pagination.tpl.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/system.html b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/app/views/system.html old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/dist/css/app.css b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/dist/css/app.css old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/dist/js/app.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/dist/js/app.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/dist/js/app.vendor.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/dist/js/app.vendor.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/gulpfile.js b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/gulpfile.js old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/index.htm b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/index.htm old mode 100755 new mode 100644 index 3c8334120..244828982 --- a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/index.htm +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/index.htm @@ -10,6 +10,8 @@ <link rel="stylesheet" href="./lib/css/bootstrap.min.css" /> <link rel="stylesheet" href="./lib/css/font-awesome.min.css"> <link rel="stylesheet" href="./dist/css/app.css"> + + <base href="/"> </head> <body> diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/index_dev.htm b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/index_dev.htm old mode 100755 new mode 100644 index a2a85efc4..51131681a --- a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/index_dev.htm +++ b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/index_dev.htm @@ -10,6 +10,8 @@ <link rel="stylesheet" href="//cdn.bootcss.com/bootstrap/3.0.3/css/bootstrap.min.css" /> <link rel="stylesheet" href="//cdn.bootcss.com/font-awesome/4.7.0/css/font-awesome.min.css"> <link rel="stylesheet" href="http://localhost:1234/css/app.css"> + + <base href="/"> </head> <body> diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/license-stat.csv b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/license-stat.csv old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/package.json b/pigx-visual/pigx-sentinel-dashboard/src/main/webapp/resources/package.json old mode 100755 new mode 100644 diff --git a/pigx-visual/pigx-sso-client-demo/pom.xml b/pigx-visual/pigx-sso-client-demo/pom.xml index b0dc90bff..9421db233 100644 --- a/pigx-visual/pigx-sso-client-demo/pom.xml +++ b/pigx-visual/pigx-sso-client-demo/pom.xml @@ -29,7 +29,7 @@ <parent> <groupId>com.pig4cloud</groupId> <artifactId>pigx-visual</artifactId> - <version>4.3.0</version> + <version>4.4.0</version> </parent> <dependencies> diff --git a/pigx-visual/pigx-sso-client-demo/src/main/resources/application.yml b/pigx-visual/pigx-sso-client-demo/src/main/resources/application.yml new file mode 100644 index 000000000..b4f29dceb --- /dev/null +++ b/pigx-visual/pigx-sso-client-demo/src/main/resources/application.yml @@ -0,0 +1,20 @@ +server: + port: 4040 + servlet: + context-path: /sso1 + +security: + oauth2: + client: + client-id: pig + client-secret: pig + user-authorization-uri: http://localhost:3000/oauth/authorize + access-token-uri: http://localhost:3000/oauth/token + scope: server + resource: + loadBalanced: true + token-info-uri: http://localhost:3000/oauth/check_token + +spring: + application: + name: @artifactId@ diff --git a/pigx-visual/pigx-sso-client-demo/src/main/resources/bootstrap.yml b/pigx-visual/pigx-sso-client-demo/src/main/resources/bootstrap.yml index b4f29dceb..528471596 100644 --- a/pigx-visual/pigx-sso-client-demo/src/main/resources/bootstrap.yml +++ b/pigx-visual/pigx-sso-client-demo/src/main/resources/bootstrap.yml @@ -1,20 +1,20 @@ -server: - port: 4040 - servlet: - context-path: /sso1 - -security: - oauth2: - client: - client-id: pig - client-secret: pig - user-authorization-uri: http://localhost:3000/oauth/authorize - access-token-uri: http://localhost:3000/oauth/token - scope: server - resource: - loadBalanced: true - token-info-uri: http://localhost:3000/oauth/check_token - -spring: - application: - name: @artifactId@ +#server: +# port: 4040 +# servlet: +# context-path: /sso1 +# +#security: +# oauth2: +# client: +# client-id: pig +# client-secret: pig +# user-authorization-uri: http://localhost:3000/oauth/authorize +# access-token-uri: http://localhost:3000/oauth/token +# scope: server +# resource: +# loadBalanced: true +# token-info-uri: http://localhost:3000/oauth/check_token +# +#spring: +# application: +# name: @artifactId@ diff --git a/pigx-visual/pigx-tx-manager/pom.xml b/pigx-visual/pigx-tx-manager/pom.xml deleted file mode 100644 index 34653a331..000000000 --- a/pigx-visual/pigx-tx-manager/pom.xml +++ /dev/null @@ -1,85 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>com.pig4cloud</groupId> - <artifactId>pigx-visual</artifactId> - <version>4.3.0</version> - </parent> - - <artifactId>pigx-tx-manager</artifactId> - <packaging>jar</packaging> - - <description>pigx lcn tx manager</description> - - <dependencies> - <!--web 模块--> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-web</artifactId> - </dependency> - <!--undertow容器--> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-undertow</artifactId> - </dependency> - <!--注册中心客户端--> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> - </dependency> - <!--配置中心客户端--> - <dependency> - <groupId>com.alibaba.cloud</groupId> - <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> - </dependency> - <!--LCN--> - <dependency> - <groupId>com.github.1991wangliang</groupId> - <artifactId>lorne_core</artifactId> - <version>1.0.0</version> - <exclusions> - <exclusion> - <groupId>org.slf4j</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - <!--netty--> - <dependency> - <groupId>io.netty</groupId> - <artifactId>netty-all</artifactId> - </dependency> - <!--工具类核心包--> - <dependency> - <groupId>com.pig4cloud</groupId> - <artifactId>pigx-common-core</artifactId> - </dependency> - <!--缓存依赖--> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-data-redis</artifactId> - </dependency> - <!--sentinel 依赖--> - <dependency> - <groupId>com.pig4cloud</groupId> - <artifactId>pigx-common-sentinel</artifactId> - </dependency> - </dependencies> - <build> - <plugins> - <plugin> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-maven-plugin</artifactId> - </plugin> - <plugin> - <groupId>io.fabric8</groupId> - <artifactId>docker-maven-plugin</artifactId> - <configuration> - <skip>false</skip> - </configuration> - </plugin> - </plugins> - </build> -</project> diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/PigxTxManagerApplication.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/PigxTxManagerApplication.java deleted file mode 100644 index 05d8db3a0..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/PigxTxManagerApplication.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.cloud.client.discovery.EnableDiscoveryClient; - -/** - * @author LCN - * @author lengleng tx-manager ,进行了代码逻辑和代码规范重构 - */ -@EnableDiscoveryClient -@SpringBootApplication -public class PigxTxManagerApplication { - - public static void main(String[] args) { - SpringApplication.run(PigxTxManagerApplication.class, args); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/controller/AdminController.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/controller/AdminController.java deleted file mode 100644 index 1624c804f..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/controller/AdminController.java +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.api.controller; - -import com.pig4cloud.pigx.manager.api.service.ApiAdminService; -import com.pig4cloud.pigx.manager.api.service.ApiModelService; -import com.pig4cloud.pigx.manager.compensate.model.TxModel; -import com.pig4cloud.pigx.manager.model.ModelInfo; -import com.pig4cloud.pigx.manager.model.ModelName; -import com.pig4cloud.pigx.manager.model.TxState; -import lombok.AllArgsConstructor; -import lombok.SneakyThrows; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; -import java.util.Map; - -/** - * @author LCN on 2017/7/1. - * @author LCN - * @author lengleng - */ -@RestController -@AllArgsConstructor -@RequestMapping("/admin") -public class AdminController { - - private final ApiAdminService apiAdminService; - - private final ApiModelService apiModelService; - - @RequestMapping(value = "/onlines", method = RequestMethod.GET) - public List<ModelInfo> onlines() { - return apiModelService.onlines(); - } - - @RequestMapping(value = "/avueOnlines", method = RequestMethod.GET) - public List<ModelInfo> avueOnlines() { - return apiModelService.onlines(); - } - - @RequestMapping(value = "/setting", method = RequestMethod.GET) - public TxState setting() { - return apiAdminService.getState(); - } - - @RequestMapping(value = "/avueSetting", method = RequestMethod.GET) - public List<Map<String, Object>> avueSetting() { - return apiAdminService.getMapState(); - } - - @RequestMapping(value = "/json", method = RequestMethod.GET) - public String json() { - return apiAdminService.loadNotifyJson(); - } - - @RequestMapping(value = "/modelList", method = RequestMethod.GET) - public List<ModelName> modelList() { - return apiAdminService.modelList(); - } - - @RequestMapping(value = "/modelTimes", method = RequestMethod.GET) - public List<String> modelTimes(@RequestParam("model") String model) { - return apiAdminService.modelTimes(model); - } - - @RequestMapping(value = "/modelInfos", method = RequestMethod.GET) - public List<TxModel> modelInfos(@RequestParam("path") String path) { - return apiAdminService.modelInfos(path); - } - - @SneakyThrows - @RequestMapping(value = "/compensate", method = RequestMethod.GET) - public boolean compensate(@RequestParam("path") String path) { - return apiAdminService.compensate(path); - } - - @SneakyThrows - @RequestMapping(value = "/delCompensate", method = RequestMethod.GET) - public boolean delCompensate(@RequestParam("path") String path) { - return apiAdminService.delCompensate(path); - } - - @SneakyThrows - @RequestMapping(value = "/hasCompensate", method = RequestMethod.GET) - public boolean hasCompensate() { - return apiAdminService.hasCompensate(); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/controller/TxManagerController.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/controller/TxManagerController.java deleted file mode 100644 index 5096c19be..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/controller/TxManagerController.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.api.controller; - -import com.pig4cloud.pigx.manager.api.service.ApiTxManagerService; -import com.pig4cloud.pigx.manager.model.TxServer; -import com.pig4cloud.pigx.manager.model.TxState; -import lombok.AllArgsConstructor; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; - -/** - * @author LCN on 2017/7/1. - * @author LCN - * @author lengleng - */ -@RestController -@AllArgsConstructor -@RequestMapping("/tx/manager") -public class TxManagerController { - - private final ApiTxManagerService apiTxManagerService; - - @RequestMapping("/getServer") - public TxServer getServer() { - return apiTxManagerService.getServer(); - } - - @RequestMapping("/cleanNotifyTransaction") - public int cleanNotifyTransaction(@RequestParam("groupId") String groupId, @RequestParam("taskId") String taskId) { - return apiTxManagerService.cleanNotifyTransaction(groupId, taskId); - } - - @RequestMapping("/sendMsg") - public String sendMsg(@RequestParam("msg") String msg, @RequestParam("model") String model) { - return apiTxManagerService.sendMsg(model, msg); - } - - @RequestMapping("/sendCompensateMsg") - public boolean sendCompensateMsg(@RequestParam("model") String model, @RequestParam("uniqueKey") String uniqueKey, - @RequestParam("currentTime") long currentTime, @RequestParam("groupId") String groupId, - @RequestParam("className") String className, @RequestParam("time") int time, - @RequestParam("data") String data, @RequestParam("methodStr") String methodStr, - @RequestParam("address") String address, @RequestParam("startError") int startError) { - return apiTxManagerService.sendCompensateMsg(currentTime, groupId, model, address, uniqueKey, className, - methodStr, data, time, startError); - } - - @RequestMapping("/state") - public TxState state() { - return apiTxManagerService.getState(); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/ApiAdminService.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/ApiAdminService.java deleted file mode 100644 index d11a8e6f8..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/ApiAdminService.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.api.service; - -import com.lorne.core.framework.exception.ServiceException; -import com.pig4cloud.pigx.manager.compensate.model.TxModel; -import com.pig4cloud.pigx.manager.model.ModelName; -import com.pig4cloud.pigx.manager.model.TxState; - -import java.util.List; -import java.util.Map; - -/** - * @author LCN on 2017/11/12 - * @author lengleng - */ -public interface ApiAdminService { - - TxState getState(); - - /** - * k/v 获取 值封装成map - * @return - */ - List<Map<String, Object>> getMapState(); - - String loadNotifyJson(); - - List<ModelName> modelList(); - - List<String> modelTimes(String model); - - List<TxModel> modelInfos(String path); - - boolean compensate(String path) throws ServiceException; - - boolean hasCompensate(); - - boolean delCompensate(String path); - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/ApiTxManagerService.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/ApiTxManagerService.java deleted file mode 100644 index 5ecb3f129..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/ApiTxManagerService.java +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.api.service; - -import com.pig4cloud.pigx.manager.model.TxServer; -import com.pig4cloud.pigx.manager.model.TxState; - -/** - * @author LCN on 2017/7/1. - */ -public interface ApiTxManagerService { - - /** - * 获取本服务的信息 - * @return 服务信息 - */ - TxServer getServer(); - - /** - * 给 tx模块发送指令 - * @param model 模块名称 - * @param msg 指令 - * @return 指令返回结果 - */ - String sendMsg(String model, String msg); - - /** - * 检查并清理事务数据 - * @param groupId 事务组Id - * @param taskId 任务Id - * @param isGroup 是否合并事务 - * @return 事务状态 - */ - int cleanNotifyTransaction(String groupId, String taskId); - - /** - * 保存事务补偿日志信息 - * @param currentTime 时间 - * @param groupId 事务组id - * @param model 模块名称 - * @param address 模块地址 - * @param uniqueKey 唯一标示 - * @param className 事务启动类 - * @param methodStr 事务启动方法 - * @param data 切面数据 - * @param time 执行时间 - * @param startError 启动模块异常 - * @return 是否保存成功 - */ - boolean sendCompensateMsg(long currentTime, String groupId, String model, String address, String uniqueKey, - String className, String methodStr, String data, int time, int startError); - - /** - * 获取服务器状态 - * @return 状态 - */ - TxState getState(); - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/impl/ApiAdminServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/impl/ApiAdminServiceImpl.java deleted file mode 100644 index 1e7f7c3ac..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/impl/ApiAdminServiceImpl.java +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.api.service.impl; - -import cn.hutool.core.util.StrUtil; -import com.pig4cloud.pigx.manager.api.service.ApiAdminService; -import com.pig4cloud.pigx.manager.compensate.model.TxModel; -import com.pig4cloud.pigx.manager.compensate.service.CompensateService; -import com.pig4cloud.pigx.manager.manager.service.MicroService; -import com.pig4cloud.pigx.manager.model.ModelName; -import com.pig4cloud.pigx.manager.model.TxState; -import com.pig4cloud.pigx.manager.redis.RedisServerService; -import lombok.AllArgsConstructor; -import lombok.SneakyThrows; -import org.springframework.stereotype.Service; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -/** - * @author LCN on 2017/11/12 - * @author LCN - * @author lengleng - */ -@Service -@AllArgsConstructor -public class ApiAdminServiceImpl implements ApiAdminService { - - private final MicroService eurekaService; - - private final RedisServerService redisServerService; - - private final CompensateService compensateService; - - @Override - public TxState getState() { - return eurekaService.getState(); - } - - /** - * k/v 获取 值封装成map - * @return - */ - @Override - public List<Map<String, Object>> getMapState() { - TxState txState = getState(); - Map<String, Object> result = new HashMap<>(16); - result.put("Socket对外服务IP", txState.getIp()); - result.put("Socket对外服务端口", txState.getPort()); - result.put("最大连接数", txState.getMaxConnection()); - result.put("当前连接数", txState.getNowConnection()); - result.put("TxManager模块心跳间隔时间(秒)", txState.getTransactionNettyHeartTime()); - result.put("TxManager模块通讯最大等待时间(秒)", txState.getCompensateMaxWaitTime()); - result.put("redis服务状态", StrUtil.isBlank(loadNotifyJson()) ? "异常" : "正常"); - result.put("redis存储最大时间(秒)", txState.getRedisSaveMaxTime()); - result.put("负载均衡服务器地址", txState.getSlbList()); - result.put("存在补偿数据", hasCompensate() ? "存在" : "不存在"); - result.put("补偿回调地址", txState.getNotifyUrl()); - result.put("自动补偿", txState.isCompensate()); - result.put("补偿尝试时间", txState.getCompensateTryTime()); - result.put("自动补偿间隔时间", txState.getCompensateMaxWaitTime()); - - List<Map<String, Object>> resultList = new ArrayList<>(); - result.forEach((k, v) -> { - Map<String, Object> one = new HashMap<>(2); - one.put("key", k); - one.put("value", v); - resultList.add(one); - }); - return resultList; - } - - @Override - public String loadNotifyJson() { - return redisServerService.loadNotifyJson(); - } - - @Override - public List<ModelName> modelList() { - return compensateService.loadModelList(); - } - - @Override - public List<String> modelTimes(String model) { - return compensateService.loadCompensateTimes(model); - } - - @Override - public List<TxModel> modelInfos(String path) { - return compensateService.loadCompensateByModelAndTime(path); - } - - @Override - @SneakyThrows - public boolean compensate(String path) { - return compensateService.executeCompensate(path); - } - - @Override - public boolean delCompensate(String path) { - return compensateService.delCompensate(path); - } - - @Override - public boolean hasCompensate() { - return compensateService.hasCompensate(); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/impl/ApiModelServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/impl/ApiModelServiceImpl.java deleted file mode 100644 index 15670bb26..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/impl/ApiModelServiceImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.api.service.impl; - -import com.pig4cloud.pigx.manager.api.service.ApiModelService; -import com.pig4cloud.pigx.manager.manager.ModelInfoManager; -import com.pig4cloud.pigx.manager.model.ModelInfo; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * @author LCN on 2017/11/13 - * @author LCN - */ -@Service -public class ApiModelServiceImpl implements ApiModelService { - - @Override - public List<ModelInfo> onlines() { - return ModelInfoManager.getInstance().getOnlines(); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/impl/ApiTxManagerServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/impl/ApiTxManagerServiceImpl.java deleted file mode 100644 index df4a27321..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/api/service/impl/ApiTxManagerServiceImpl.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.api.service.impl; - -import com.pig4cloud.pigx.manager.api.service.ApiTxManagerService; -import com.pig4cloud.pigx.manager.compensate.model.TransactionCompensateMsg; -import com.pig4cloud.pigx.manager.compensate.service.CompensateService; -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.manager.service.MicroService; -import com.pig4cloud.pigx.manager.manager.service.TxManagerSenderService; -import com.pig4cloud.pigx.manager.manager.service.TxManagerService; -import com.pig4cloud.pigx.manager.model.TxServer; -import com.pig4cloud.pigx.manager.model.TxState; -import lombok.AllArgsConstructor; -import org.springframework.stereotype.Service; - -/** - * @author LCN on 2017/7/1. - * @author LCN - * @author lengleng - */ -@Service -@AllArgsConstructor -public class ApiTxManagerServiceImpl implements ApiTxManagerService { - - private final TxManagerService managerService; - - private final MicroService eurekaService; - - private final CompensateService compensateService; - - private final TxManagerSenderService txManagerSenderService; - - private final ConfigReader configReader; - - @Override - public TxServer getServer() { - return eurekaService.getServer(); - } - - @Override - public int cleanNotifyTransaction(String groupId, String taskId) { - return managerService.cleanNotifyTransaction(groupId, taskId); - } - - @Override - public boolean sendCompensateMsg(long currentTime, String groupId, String model, String address, String uniqueKey, - String className, String methodStr, String data, int time, int startError) { - TransactionCompensateMsg transactionCompensateMsg = new TransactionCompensateMsg(currentTime, groupId, model, - address, uniqueKey, className, methodStr, data, time, 0, startError); - return compensateService.saveCompensateMsg(transactionCompensateMsg); - } - - @Override - public String sendMsg(String model, String msg) { - return txManagerSenderService.sendMsg(model, msg, configReader.getTransactionNettyDelayTime()); - } - - @Override - public TxState getState() { - return eurekaService.getState(); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/dao/CompensateDao.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/dao/CompensateDao.java deleted file mode 100644 index ea4c818ec..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/dao/CompensateDao.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.compensate.dao; - -import com.pig4cloud.pigx.manager.compensate.model.TransactionCompensateMsg; - -import java.util.List; - -/** - * @author LCN on 2017/11/11 - */ -public interface CompensateDao { - - String saveCompensateMsg(TransactionCompensateMsg transactionCompensateMsg); - - List<String> loadCompensateKeys(); - - List<String> loadCompensateTimes(String model); - - List<String> loadCompensateByModelAndTime(String path); - - String getCompensate(String key); - - String getCompensateByGroupId(String groupId); - - void deleteCompensateByPath(String path); - - void deleteCompensateByKey(String key); - - boolean hasCompensate(); - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/dao/impl/CompensateDaoImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/dao/impl/CompensateDaoImpl.java deleted file mode 100644 index d863736c4..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/dao/impl/CompensateDaoImpl.java +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.compensate.dao.impl; - -import com.alibaba.fastjson.JSON; -import com.lorne.core.framework.utils.DateUtil; -import com.pig4cloud.pigx.manager.compensate.dao.CompensateDao; -import com.pig4cloud.pigx.manager.compensate.model.TransactionCompensateMsg; -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.redis.RedisServerService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.ArrayList; -import java.util.List; - -/** - * @author LCN on 2017/11/11 - */ -@Service -public class CompensateDaoImpl implements CompensateDao { - - @Autowired - private RedisServerService redisServerService; - - @Autowired - private ConfigReader configReader; - - @Override - public String saveCompensateMsg(TransactionCompensateMsg transactionCompensateMsg) { - - String name = String.format("%s%s:%s:%s.json", configReader.getKeyPrefixCompensate(), - transactionCompensateMsg.getModel(), DateUtil.getCurrentDateFormat(), - transactionCompensateMsg.getGroupId()); - - String json = JSON.toJSONString(transactionCompensateMsg); - - redisServerService.saveCompensateMsg(name, json); - - return name; - } - - @Override - public List<String> loadCompensateKeys() { - String key = configReader.getKeyPrefixCompensate() + "*"; - return redisServerService.getKeys(key); - } - - @Override - public boolean hasCompensate() { - String key = configReader.getKeyPrefixCompensate() + "*"; - List<String> keys = redisServerService.getKeys(key); - return keys != null && keys.size() > 0; - } - - @Override - public List<String> loadCompensateTimes(String model) { - String key = configReader.getKeyPrefixCompensate() + model + ":*"; - List<String> keys = redisServerService.getKeys(key); - List<String> times = new ArrayList<String>(); - for (String k : keys) { - if (k.length() > 36) { - String time = k.substring(k.length() - 24, k.length() - 14); - if (!times.contains(time)) { - times.add(time); - } - } - } - return times; - } - - @Override - public List<String> loadCompensateByModelAndTime(String path) { - String key = String.format("%s%s*", configReader.getKeyPrefixCompensate(), path); - List<String> keys = redisServerService.getKeys(key); - List<String> values = redisServerService.getValuesByKeys(keys); - return values; - } - - @Override - public String getCompensate(String path) { - String key = String.format("%s%s.json", configReader.getKeyPrefixCompensate(), path); - return redisServerService.getValueByKey(key); - } - - @Override - public void deleteCompensateByPath(String path) { - String key = String.format("%s%s.json", configReader.getKeyPrefixCompensate(), path); - redisServerService.deleteKey(key); - } - - @Override - public void deleteCompensateByKey(String key) { - redisServerService.deleteKey(key); - } - - @Override - public String getCompensateByGroupId(String groupId) { - String key = String.format("%s*%s.json", configReader.getKeyPrefixCompensate(), groupId); - List<String> keys = redisServerService.getKeys(key); - if (keys != null && keys.size() == 1) { - String k = keys.get(0); - return redisServerService.getValueByKey(k); - } - return null; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/model/TransactionCompensateMsg.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/model/TransactionCompensateMsg.java deleted file mode 100644 index 10d409f89..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/model/TransactionCompensateMsg.java +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.compensate.model; - -import com.pig4cloud.pigx.manager.netty.model.TxGroup; - -/** - * @author LCN on 2017/11/11 - */ -public class TransactionCompensateMsg { - - private long currentTime; - - private String groupId; - - private String model; - - private String address; - - private String uniqueKey; - - private String className; - - private String methodStr; - - private String data; - - private int time; - - private int startError; - - private TxGroup txGroup; - - private int state; - - public TransactionCompensateMsg(long currentTime, String groupId, String model, String address, String uniqueKey, - String className, String methodStr, String data, int time, int state, int startError) { - this.currentTime = currentTime; - this.groupId = groupId; - this.model = model; - this.uniqueKey = uniqueKey; - this.className = className; - this.methodStr = methodStr; - this.data = data; - this.time = time; - this.address = address; - this.state = state; - this.startError = startError; - } - - public int getStartError() { - return startError; - } - - public void setStartError(int startError) { - this.startError = startError; - } - - public int getState() { - return state; - } - - public void setState(int state) { - this.state = state; - } - - public long getCurrentTime() { - return currentTime; - } - - public void setCurrentTime(long currentTime) { - this.currentTime = currentTime; - } - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public TxGroup getTxGroup() { - return txGroup; - } - - public void setTxGroup(TxGroup txGroup) { - this.txGroup = txGroup; - } - - public String getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getModel() { - return model; - } - - public void setModel(String model) { - this.model = model; - } - - public String getUniqueKey() { - return uniqueKey; - } - - public void setUniqueKey(String uniqueKey) { - this.uniqueKey = uniqueKey; - } - - public String getClassName() { - return className; - } - - public void setClassName(String className) { - this.className = className; - } - - public String getMethodStr() { - return methodStr; - } - - public void setMethodStr(String methodStr) { - this.methodStr = methodStr; - } - - public String getData() { - return data; - } - - public void setData(String data) { - this.data = data; - } - - public int getTime() { - return time; - } - - public void setTime(int time) { - this.time = time; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/model/TxModel.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/model/TxModel.java deleted file mode 100644 index ef197a5bd..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/model/TxModel.java +++ /dev/null @@ -1,105 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.compensate.model; - -/** - * @author LCN on 2017/11/12 - */ -public class TxModel { - - private String time; - - private String className; - - private String method; - - private int executeTime; - - private String base64; - - private int state; - - private long order; - - private String key; - - public String getKey() { - return key; - } - - public void setKey(String key) { - this.key = key; - } - - public long getOrder() { - return order; - } - - public void setOrder(long order) { - this.order = order; - } - - public String getBase64() { - return base64; - } - - public void setBase64(String base64) { - this.base64 = base64; - } - - public String getClassName() { - return className; - } - - public void setClassName(String className) { - this.className = className; - } - - public String getMethod() { - return method; - } - - public void setMethod(String method) { - this.method = method; - } - - public int getExecuteTime() { - return executeTime; - } - - public void setExecuteTime(int executeTime) { - this.executeTime = executeTime; - } - - public String getTime() { - return time; - } - - public void setTime(String time) { - this.time = time; - } - - public int getState() { - return state; - } - - public void setState(int state) { - this.state = state; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/service/CompensateService.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/service/CompensateService.java deleted file mode 100644 index 9abf35251..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/service/CompensateService.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.compensate.service; - -import com.lorne.core.framework.exception.ServiceException; -import com.pig4cloud.pigx.manager.compensate.model.TransactionCompensateMsg; -import com.pig4cloud.pigx.manager.compensate.model.TxModel; -import com.pig4cloud.pigx.manager.model.ModelName; -import com.pig4cloud.pigx.manager.netty.model.TxGroup; - -import java.util.List; - -/** - * @author LCN on 2017/11/11 - */ -public interface CompensateService { - - boolean saveCompensateMsg(TransactionCompensateMsg transactionCompensateMsg); - - List<ModelName> loadModelList(); - - List<String> loadCompensateTimes(String model); - - List<TxModel> loadCompensateByModelAndTime(String path); - - void autoCompensate(String compensateKey, TransactionCompensateMsg transactionCompensateMsg); - - boolean executeCompensate(String key) throws ServiceException; - - void reloadCompensate(TxGroup txGroup); - - boolean hasCompensate(); - - boolean delCompensate(String path); - - TxGroup getCompensateByGroupId(String groupId); - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/service/impl/CompensateServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/service/impl/CompensateServiceImpl.java deleted file mode 100644 index 8588192d4..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/compensate/service/impl/CompensateServiceImpl.java +++ /dev/null @@ -1,362 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.compensate.service.impl; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.google.common.collect.Lists; -import com.lorne.core.framework.exception.ServiceException; -import com.lorne.core.framework.utils.DateUtil; -import com.lorne.core.framework.utils.encode.Base64Utils; -import com.lorne.core.framework.utils.http.HttpUtils; -import com.pig4cloud.pigx.manager.compensate.dao.CompensateDao; -import com.pig4cloud.pigx.manager.compensate.model.TransactionCompensateMsg; -import com.pig4cloud.pigx.manager.compensate.model.TxModel; -import com.pig4cloud.pigx.manager.compensate.service.CompensateService; -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.manager.ModelInfoManager; -import com.pig4cloud.pigx.manager.manager.service.TxManagerSenderService; -import com.pig4cloud.pigx.manager.manager.service.TxManagerService; -import com.pig4cloud.pigx.manager.model.ModelInfo; -import com.pig4cloud.pigx.manager.model.ModelName; -import com.pig4cloud.pigx.manager.netty.model.TxGroup; -import com.pig4cloud.pigx.manager.netty.model.TxInfo; -import lombok.SneakyThrows; -import org.apache.commons.lang.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.*; -import java.util.concurrent.Executor; - -/** - * @author LCN on 2017/11/11 - */ -@Service -public class CompensateServiceImpl implements CompensateService { - - private static final String SUCCESS = "success"; - - private static final String SUCCESS1 = "SUCCESS"; - - private Logger logger = LoggerFactory.getLogger(CompensateServiceImpl.class); - - @Autowired - private CompensateDao compensateDao; - - @Autowired - private ConfigReader configReader; - - @Autowired - private TxManagerSenderService managerSenderService; - - @Autowired - private TxManagerService managerService; - - @Autowired - private Executor threadPool; - - @Override - public boolean saveCompensateMsg(final TransactionCompensateMsg transactionCompensateMsg) { - - TxGroup txGroup = managerService.getTxGroup(transactionCompensateMsg.getGroupId()); - if (txGroup == null) { - // 仅发起方异常,其他模块正常 - txGroup = new TxGroup(); - txGroup.setNowTime(System.currentTimeMillis()); - txGroup.setGroupId(transactionCompensateMsg.getGroupId()); - txGroup.setIsCompensate(1); - } - else { - managerService.deleteTxGroup(txGroup); - } - - transactionCompensateMsg.setTxGroup(txGroup); - - final String json = JSON.toJSONString(transactionCompensateMsg); - - logger.info("Compensate->" + json); - - final String compensateKey = compensateDao.saveCompensateMsg(transactionCompensateMsg); - - // 调整自动补偿机制,若开启了自动补偿,需要通知业务返回success,方可执行自动补偿 - threadPool.execute(new Runnable() { - @Override - public void run() { - try { - String groupId = transactionCompensateMsg.getGroupId(); - JSONObject requestJson = new JSONObject(); - requestJson.put("action", "compensate"); - requestJson.put("groupId", groupId); - requestJson.put("json", json); - - String url = configReader.getCompensateNotifyUrl(); - logger.error("Compensate Callback Address->" + url); - String res = HttpUtils.postJson(url, requestJson.toJSONString()); - logger.error("Compensate Callback Result->" + res); - if (configReader.isCompensateAuto()) { - // 自动补偿,是否自动执行补偿 - if (res.contains(SUCCESS) || res.contains(SUCCESS1)) { - // 自动补偿 - autoCompensate(compensateKey, transactionCompensateMsg); - } - } - } - catch (Exception e) { - logger.error("Compensate Callback Fails->" + e.getMessage()); - } - } - }); - - return StringUtils.isNotEmpty(compensateKey); - - } - - @Override - public void autoCompensate(final String compensateKey, TransactionCompensateMsg transactionCompensateMsg) { - final String json = JSON.toJSONString(transactionCompensateMsg); - logger.info("Auto Compensate->" + json); - // 自动补偿业务执行... - final int tryTime = configReader.getCompensateTryTime(); - boolean autoExecuteRes; - try { - int executeCount = 0; - autoExecuteRes = executeCompensateMethod(json); - logger.info("Automatic Compensate Result->" + autoExecuteRes + ",json->" + json); - while (!autoExecuteRes) { - logger.info("Compensate Failure, Entering Compensate Queue->" + autoExecuteRes + ",json->" + json); - executeCount++; - if (executeCount == 3) { - autoExecuteRes = false; - break; - } - try { - Thread.sleep(tryTime * 1000); - } - catch (InterruptedException e) { - e.printStackTrace(); - } - autoExecuteRes = executeCompensateMethod(json); - } - - // 执行成功删除数据 - if (autoExecuteRes) { - compensateDao.deleteCompensateByKey(compensateKey); - } - - } - catch (Exception e) { - logger.error("Auto Compensate Fails,msg:" + e.getLocalizedMessage()); - // 推送数据给第三方通知 - autoExecuteRes = false; - } - - // 执行补偿以后通知给业务方 - String groupId = transactionCompensateMsg.getGroupId(); - JSONObject requestJson = new JSONObject(); - requestJson.put("action", "notify"); - requestJson.put("groupId", groupId); - requestJson.put("resState", autoExecuteRes); - - String url = configReader.getCompensateNotifyUrl(); - logger.error("Compensate Result Callback Address->" + url); - String res = HttpUtils.postJson(url, requestJson.toJSONString()); - logger.error("Compensate Result Callback Result->" + res); - - } - - @Override - public List<ModelName> loadModelList() { - List<String> keys = compensateDao.loadCompensateKeys(); - - Map<String, Integer> models = new HashMap<>(16); - - for (String key : keys) { - if (key.length() > 36) { - String name = key.substring(11, key.length() - 25); - int v = 1; - if (models.containsKey(name)) { - v = models.get(name) + 1; - } - models.put(name, v); - } - } - List<ModelName> names = new ArrayList<>(); - - for (String key : models.keySet()) { - int v = models.get(key); - ModelName modelName = new ModelName(); - modelName.setName(key); - modelName.setCount(v); - names.add(modelName); - } - return names; - } - - @Override - public List<String> loadCompensateTimes(String model) { - return compensateDao.loadCompensateTimes(model); - } - - @Override - public List<TxModel> loadCompensateByModelAndTime(String path) { - List<String> logs = compensateDao.loadCompensateByModelAndTime(path); - - List<TxModel> models = new ArrayList<>(); - for (String json : logs) { - JSONObject jsonObject = JSON.parseObject(json); - TxModel model = new TxModel(); - long currentTime = jsonObject.getLong("currentTime"); - model.setTime(DateUtil.formatDate(new Date(currentTime), DateUtil.FULL_DATE_TIME_FORMAT)); - model.setClassName(jsonObject.getString("className")); - model.setMethod(jsonObject.getString("methodStr")); - model.setExecuteTime(jsonObject.getInteger("time")); - model.setBase64(Base64Utils.encode(json.getBytes())); - model.setState(jsonObject.getInteger("state")); - model.setOrder(currentTime); - - String groupId = jsonObject.getString("groupId"); - - String key = path + ":" + groupId; - model.setKey(key); - - models.add(model); - } - Collections.sort(models, new Comparator<TxModel>() { - @Override - public int compare(TxModel o1, TxModel o2) { - if (o2.getOrder() > o1.getOrder()) { - return 1; - } - else { - return -1; - } - } - }); - return models; - } - - @Override - public boolean hasCompensate() { - return compensateDao.hasCompensate(); - } - - @Override - public boolean delCompensate(String path) { - compensateDao.deleteCompensateByPath(path); - return true; - } - - @Override - public void reloadCompensate(TxGroup txGroup) { - TxGroup compensateGroup = getCompensateByGroupId(txGroup.getGroupId()); - if (compensateGroup != null) { - - if (compensateGroup.getList() != null && !compensateGroup.getList().isEmpty()) { - // 引用集合 iterator,方便匹配后剔除列表 - Iterator<TxInfo> iterator = Lists.newArrayList(compensateGroup.getList()).iterator(); - for (TxInfo txInfo : txGroup.getList()) { - while (iterator.hasNext()) { - TxInfo cinfo = iterator.next(); - if (cinfo.getModel().equals(txInfo.getModel()) - && cinfo.getMethodStr().equals(txInfo.getMethodStr())) { - // 根据之前的数据补偿现在的事务 - int oldNotify = cinfo.getNotify(); - - if (oldNotify == 1) { - // 本次回滚 - txInfo.setIsCommit(0); - } - else { - // 本次提交 - txInfo.setIsCommit(1); - } - // 匹配后剔除列表 - iterator.remove(); - break; - } - } - } - } - else {// 当没有List数据只记录了补偿数据时,理解问仅发起方提交其他均回滚 - for (TxInfo txInfo : txGroup.getList()) { - // 本次回滚 - txInfo.setIsCommit(0); - } - } - } - logger.info("Compensate Loaded->" + JSON.toJSONString(txGroup)); - } - - @Override - public TxGroup getCompensateByGroupId(String groupId) { - String json = compensateDao.getCompensateByGroupId(groupId); - if (json == null) { - return null; - } - JSONObject jsonObject = JSON.parseObject(json); - String txGroup = jsonObject.getString("txGroup"); - return JSON.parseObject(txGroup, TxGroup.class); - } - - @Override - @SneakyThrows - public boolean executeCompensate(String path) { - - String json = compensateDao.getCompensate(path); - if (json == null) { - throw new ServiceException("no data existing"); - } - - boolean hasOk = executeCompensateMethod(json); - if (hasOk) { - // 删除本地补偿数据 - compensateDao.deleteCompensateByPath(path); - - return true; - } - return false; - } - - @SneakyThrows - private boolean executeCompensateMethod(String json) { - JSONObject jsonObject = JSON.parseObject(json); - - String model = jsonObject.getString("model"); - - int startError = jsonObject.getInteger("startError"); - - ModelInfo modelInfo = ModelInfoManager.getInstance().getModelByModel(model); - if (modelInfo == null) { - throw new ServiceException("current model offline."); - } - - String data = jsonObject.getString("data"); - - String groupId = jsonObject.getString("groupId"); - - String res = managerSenderService.sendCompensateMsg(modelInfo.getChannelName(), groupId, data, startError); - - logger.debug("executeCompensate->" + json + ",@@->" + res); - - return "1".equals(res); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/ConfigReader.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/ConfigReader.java deleted file mode 100644 index ce2d50f2d..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/ConfigReader.java +++ /dev/null @@ -1,119 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.config; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Component; - -/** - * @author LCN on 2017/11/11 - */ -@Component -public class ConfigReader { - - /** - * 事务默认数据的位置,有最大时间 - */ - private static final String KEY_PREFIX = "tx:manager:default:"; - - /** - * 负载均衡模块存储信息 - */ - private static final String KEY_PREFIX_LOADBALANCE = "tx:manager:loadbalance:"; - - /** - * 补偿事务永久存储数据 - */ - private static final String TX_MANAGER_COMPENSATE = "tx:manager:compensate:"; - - @Value("${tm.socket.port}") - private int socketPort; - - @Value("${tm.socket.maxconnection}") - private int socketMaxConnection; - - @Value("${tm.transaction.netty.hearttime}") - private int transactionNettyHeartTime; - - @Value("${tm.transaction.netty.delaytime}") - private int transactionNettyDelayTime; - - @Value("${tm.redis.savemaxtime}") - private int redisSaveMaxTime; - - @Value("${tm.compensate.notifyUrl}") - private String compensateNotifyUrl; - - @Value("${tm.compensate.auto}") - private boolean isCompensateAuto; - - @Value("${tm.compensate.tryTime}") - private int compensateTryTime; - - @Value("${tm.compensate.maxWaitTime}") - private int compensateMaxWaitTime; - - public String getKeyPrefixLoadbalance() { - return KEY_PREFIX_LOADBALANCE; - } - - public String getCompensateNotifyUrl() { - return compensateNotifyUrl; - } - - public String getKeyPrefix() { - return KEY_PREFIX; - } - - public String getKeyPrefixCompensate() { - return TX_MANAGER_COMPENSATE; - } - - public int getSocketPort() { - return socketPort; - } - - public int getSocketMaxConnection() { - return socketMaxConnection; - } - - public int getTransactionNettyHeartTime() { - return transactionNettyHeartTime; - } - - public int getRedisSaveMaxTime() { - return redisSaveMaxTime; - } - - public int getTransactionNettyDelayTime() { - return transactionNettyDelayTime; - } - - public boolean isCompensateAuto() { - return isCompensateAuto; - } - - public int getCompensateTryTime() { - return compensateTryTime; - } - - public int getCompensateMaxWaitTime() { - return compensateMaxWaitTime; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/CorsConfig.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/CorsConfig.java deleted file mode 100644 index a4565953a..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/CorsConfig.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.config; - -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.cors.CorsConfiguration; -import org.springframework.web.cors.UrlBasedCorsConfigurationSource; -import org.springframework.web.filter.CorsFilter; - -/** - * @author LCN on 2017/8/17 - */ -@Configuration -public class CorsConfig { - - /** - * 跨域过滤器 - * @return - */ - private CorsConfiguration buildConfig() { - CorsConfiguration corsConfiguration = new CorsConfiguration(); - corsConfiguration.addAllowedOrigin("*"); - corsConfiguration.addAllowedHeader("*"); - corsConfiguration.addAllowedMethod("*"); - return corsConfiguration; - } - - /** - * 跨域过滤器 - * @return - */ - @Bean - public CorsFilter corsFilter() { - UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); - source.registerCorsConfiguration("/**", buildConfig()); - return new CorsFilter(source); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/ExecutorConfig.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/ExecutorConfig.java deleted file mode 100644 index 88e19c93f..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/config/ExecutorConfig.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.config; - -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; - -import java.util.concurrent.Executor; -import java.util.concurrent.ThreadPoolExecutor; - -/** - * @author lengleng - * @date 2019-03-07 - * <p> - * LCN线程池配置 - */ -@Configuration -public class ExecutorConfig { - - private static final String LCN_SERVICE = "lcn-service-"; - - @Bean - public Executor threadPoolTaskExecutor() { - ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); - // 配置核心线程数 - executor.setCorePoolSize(10); - // 配置最大线程数 - executor.setMaxPoolSize(50); - // 配置队列大小 - executor.setQueueCapacity(99999); - // 配置线程池中的线程的名称前缀 - executor.setThreadNamePrefix(LCN_SERVICE); - executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); - // 执行初始化 - executor.initialize(); - return executor; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/framework/utils/Constants.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/framework/utils/Constants.java deleted file mode 100644 index f1f945f2e..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/framework/utils/Constants.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.framework.utils; - -/** - * @author LCN on 2017/6/8. - */ -public class Constants { - - public static int maxConnection; - - public static int socketPort; - - public static String address; - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/framework/utils/SocketManager.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/framework/utils/SocketManager.java deleted file mode 100644 index 8f79ad745..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/framework/utils/SocketManager.java +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.framework.utils; - -import io.netty.channel.Channel; - -import java.util.List; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.CopyOnWriteArrayList; - -/** - * @author LCN on 2017/6/30. - */ -public class SocketManager { - - private static SocketManager manager = null; - - /** - * 最大连接数 - */ - private int maxConnection = Constants.maxConnection; - - /** - * 当前连接数 - */ - private int nowConnection; - - /** - * 允许连接请求 true允许 false拒绝 - */ - private boolean allowConnection = true; - - private List<Channel> clients = null; - - private Map<String, String> lines = null; - - private SocketManager() { - clients = new CopyOnWriteArrayList<Channel>(); - lines = new ConcurrentHashMap<String, String>(); - } - - public static SocketManager getInstance() { - if (manager == null) { - synchronized (SocketManager.class) { - if (manager == null) { - manager = new SocketManager(); - } - } - } - return manager; - } - - public Channel getChannelByModelName(String name) { - for (Channel channel : clients) { - String modelName = channel.remoteAddress().toString(); - - if (modelName.equals(name)) { - return channel; - } - } - return null; - } - - public void addClient(Channel client) { - clients.add(client); - nowConnection = clients.size(); - - allowConnection = (maxConnection != nowConnection); - } - - public void removeClient(Channel client) { - clients.remove(client); - nowConnection = clients.size(); - - allowConnection = (maxConnection != nowConnection); - } - - public int getMaxConnection() { - return maxConnection; - } - - public int getNowConnection() { - return nowConnection; - } - - public boolean isAllowConnection() { - return allowConnection; - } - - public void outLine(String modelName) { - lines.remove(modelName); - } - - public void onLine(String modelName, String uniqueKey) { - lines.put(modelName, uniqueKey); - } - - public Channel getChannelByUniqueKey(String uniqueKey) { - for (Channel channel : clients) { - String modelName = channel.remoteAddress().toString(); - String value = lines.get(modelName); - if (uniqueKey.equals(value)) { - return channel; - } - } - return null; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/framework/utils/SocketUtils.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/framework/utils/SocketUtils.java deleted file mode 100644 index 81f89f612..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/framework/utils/SocketUtils.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.framework.utils; - -import io.netty.buffer.ByteBuf; -import io.netty.buffer.Unpooled; -import io.netty.channel.Channel; -import io.netty.channel.ChannelHandlerContext; -import io.netty.util.ReferenceCountUtil; -import lombok.experimental.UtilityClass; - -/** - * @author LCN on 2017/7/6. - */ -@UtilityClass -public class SocketUtils { - - public String getJson(Object msg) { - String json; - try { - ByteBuf buf = (ByteBuf) msg; - byte[] bytes = new byte[buf.readableBytes()]; - buf.readBytes(bytes); - json = new String(bytes); - } - finally { - ReferenceCountUtil.release(msg); - } - return json; - - } - - public void sendMsg(ChannelHandlerContext ctx, String msg) { - ctx.writeAndFlush(Unpooled.buffer().writeBytes(msg.getBytes())); - } - - public void sendMsg(Channel ctx, String msg) { - ctx.writeAndFlush(Unpooled.buffer().writeBytes(msg.getBytes())); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/ApplicationStartListener.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/ApplicationStartListener.java deleted file mode 100644 index 1d585002f..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/ApplicationStartListener.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.listener; - -import com.pig4cloud.pigx.manager.framework.utils.Constants; -import org.springframework.boot.web.context.WebServerInitializedEvent; -import org.springframework.context.ApplicationListener; -import org.springframework.stereotype.Component; - -import java.net.InetAddress; -import java.net.UnknownHostException; - -/** - * @author LCN on 2017/8/7 - */ -@Component -public class ApplicationStartListener implements ApplicationListener<WebServerInitializedEvent> { - - @Override - public void onApplicationEvent(WebServerInitializedEvent event) { - int serverPort = event.getWebServer().getPort(); - String ip = getIp(); - Constants.address = ip + ":" + serverPort; - } - - private String getIp() { - String host = null; - try { - host = InetAddress.getLocalHost().getHostAddress(); - } - catch (UnknownHostException e) { - e.printStackTrace(); - } - return host; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/ServerListener.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/ServerListener.java deleted file mode 100644 index 2c054be31..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/ServerListener.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.listener; - -import com.pig4cloud.pigx.manager.listener.service.InitService; -import org.springframework.stereotype.Component; -import org.springframework.web.context.WebApplicationContext; -import org.springframework.web.context.support.WebApplicationContextUtils; - -import javax.servlet.ServletContextEvent; -import javax.servlet.ServletContextListener; - -/** - * @author LCN on 2017/7/1. - */ - -@Component -public class ServerListener implements ServletContextListener { - - private WebApplicationContext springContext; - - private InitService initService; - - @Override - public void contextInitialized(ServletContextEvent event) { - springContext = WebApplicationContextUtils.getWebApplicationContext(event.getServletContext()); - initService = springContext.getBean(InitService.class); - initService.start(); - } - - @Override - public void contextDestroyed(ServletContextEvent event) { - initService.close(); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/service/impl/InitServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/service/impl/InitServiceImpl.java deleted file mode 100644 index 919bcc112..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/listener/service/impl/InitServiceImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.listener.service.impl; - -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.framework.utils.Constants; -import com.pig4cloud.pigx.manager.listener.service.InitService; -import com.pig4cloud.pigx.manager.netty.service.NettyServerService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * @author LCN on 2017/7/4. - */ -@Service -public class InitServiceImpl implements InitService { - - @Autowired - private NettyServerService nettyServerService; - - @Autowired - private ConfigReader configReader; - - @Override - public void start() { - /** 加载本地服务信息 **/ - - Constants.socketPort = configReader.getSocketPort(); - Constants.maxConnection = configReader.getSocketMaxConnection(); - nettyServerService.start(); - } - - @Override - public void close() { - nettyServerService.close(); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/ModelInfoManager.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/ModelInfoManager.java deleted file mode 100644 index 2811239a6..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/ModelInfoManager.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.manager; - -import com.pig4cloud.pigx.manager.model.ModelInfo; - -import java.util.List; -import java.util.concurrent.CopyOnWriteArrayList; - -/** - * @author LCN on 2017/11/13 - */ -public class ModelInfoManager { - - private static ModelInfoManager manager = null; - - private List<ModelInfo> modelInfos = new CopyOnWriteArrayList<>(); - - public static ModelInfoManager getInstance() { - if (manager == null) { - synchronized (ModelInfoManager.class) { - if (manager == null) { - manager = new ModelInfoManager(); - } - } - } - return manager; - } - - public void removeModelInfo(String channelName) { - for (ModelInfo modelInfo : modelInfos) { - if (channelName.equalsIgnoreCase(modelInfo.getChannelName())) { - modelInfos.remove(modelInfo); - } - } - } - - public void addModelInfo(ModelInfo minfo) { - for (ModelInfo modelInfo : modelInfos) { - if (minfo.getChannelName().equalsIgnoreCase(modelInfo.getChannelName())) { - return; - } - - if (minfo.getIpAddress().equalsIgnoreCase(modelInfo.getIpAddress())) { - return; - } - } - modelInfos.add(minfo); - } - - public List<ModelInfo> getOnlines() { - return modelInfos; - } - - public ModelInfo getModelByChannelName(String channelName) { - for (ModelInfo modelInfo : modelInfos) { - if (channelName.equalsIgnoreCase(modelInfo.getChannelName())) { - return modelInfo; - } - } - return null; - } - - public ModelInfo getModelByModel(String model) { - for (ModelInfo modelInfo : modelInfos) { - if (model.equalsIgnoreCase(modelInfo.getModel())) { - return modelInfo; - } - } - return null; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/MicroService.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/MicroService.java deleted file mode 100644 index d7f09b1e1..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/MicroService.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.manager.service; - -import com.pig4cloud.pigx.manager.model.TxServer; -import com.pig4cloud.pigx.manager.model.TxState; - -/** - * @author LCN on 2017/11/11 - */ -public interface MicroService { - - String TMKEY = "tx-manager"; - - TxServer getServer(); - - TxState getState(); - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/TxManagerSenderService.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/TxManagerSenderService.java deleted file mode 100644 index e9752fbfd..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/TxManagerSenderService.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.manager.service; - -import com.pig4cloud.pigx.manager.netty.model.TxGroup; - -/** - * @author LCN on 2017/6/9. - */ -public interface TxManagerSenderService { - - int confirm(TxGroup group); - - String sendMsg(String model, String msg, int delay); - - String sendCompensateMsg(String model, String groupId, String data, int startState); - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/TxManagerService.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/TxManagerService.java deleted file mode 100644 index f61258934..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/TxManagerService.java +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.manager.service; - -import com.pig4cloud.pigx.manager.netty.model.TxGroup; - -/** - * @author LCN on 2017/6/7. - */ - -public interface TxManagerService { - - /** - * 创建事物组 - * @param groupId 补偿事务组id - */ - TxGroup createTransactionGroup(String groupId); - - /** - * 添加事务组子对象 - * @return - */ - - TxGroup addTransactionGroup(String groupId, String taskId, int isGroup, String channelAddress, String methodStr); - - /** - * 关闭事务组 - * @param groupId 事务组id - * @param state 事务状态 - * @return 0 事务存在补偿 1 事务正常 -1 事务强制回滚 - */ - int closeTransactionGroup(String groupId, int state); - - void dealTxGroup(TxGroup txGroup, boolean hasOk); - - /** - * 删除事务组 - * @param txGroup 事务组 - */ - void deleteTxGroup(TxGroup txGroup); - - /** - * 获取事务组信息 - * @param groupId 事务组id - * @return 事务组 - */ - TxGroup getTxGroup(String groupId); - - /** - * 获取事务组的key - * @param groupId 事务组id - * @return key - */ - String getTxGroupKey(String groupId); - - /** - * 检查事务组数据 - * @param groupId 事务组id - * @param taskId 任务id - * @return 本次请求的是否提交 1提交 0回滚 - */ - int cleanNotifyTransaction(String groupId, String taskId); - - /** - * 设置强制回滚事务 - * @param groupId 事务组id - * @return true 成功 false 失败 - */ - boolean rollbackTransactionGroup(String groupId); - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/LoadBalanceServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/LoadBalanceServiceImpl.java deleted file mode 100644 index 4d03fda7f..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/LoadBalanceServiceImpl.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.manager.service.impl; - -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.manager.service.LoadBalanceService; -import com.pig4cloud.pigx.manager.model.LoadBalanceInfo; -import com.pig4cloud.pigx.manager.redis.RedisServerService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * @author LCN on 2017/12/5 - */ -@Service -public class LoadBalanceServiceImpl implements LoadBalanceService { - - @Autowired - private RedisServerService redisServerService; - - @Autowired - private ConfigReader configReader; - - @Override - public boolean put(LoadBalanceInfo loadBalanceInfo) { - String groupName = getLoadBalanceGroupName(loadBalanceInfo.getGroupId()); - redisServerService.saveLoadBalance(groupName, loadBalanceInfo.getKey(), loadBalanceInfo.getData()); - return true; - } - - @Override - public LoadBalanceInfo get(String groupId, String key) { - String groupName = getLoadBalanceGroupName(groupId); - String bytes = redisServerService.getLoadBalance(groupName, key); - if (bytes == null) { - return null; - } - - LoadBalanceInfo loadBalanceInfo = new LoadBalanceInfo(); - loadBalanceInfo.setGroupId(groupId); - loadBalanceInfo.setKey(key); - loadBalanceInfo.setData(bytes); - return loadBalanceInfo; - } - - @Override - public boolean remove(String groupId) { - redisServerService.deleteKey(getLoadBalanceGroupName(groupId)); - return true; - } - - @Override - public String getLoadBalanceGroupName(String groupId) { - return configReader.getKeyPrefixLoadbalance() + groupId; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/MicroServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/MicroServiceImpl.java deleted file mode 100644 index 69fbb4243..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/MicroServiceImpl.java +++ /dev/null @@ -1,143 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.manager.service.impl; - -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.framework.utils.Constants; -import com.pig4cloud.pigx.manager.framework.utils.SocketManager; -import com.pig4cloud.pigx.manager.manager.service.MicroService; -import com.pig4cloud.pigx.manager.model.TxServer; -import com.pig4cloud.pigx.manager.model.TxState; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.cloud.client.ServiceInstance; -import org.springframework.cloud.client.discovery.DiscoveryClient; -import org.springframework.cloud.client.serviceregistry.Registration; -import org.springframework.stereotype.Service; -import org.springframework.web.client.RestTemplate; - -import java.util.ArrayList; -import java.util.List; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -/** - * @author LCN on 2017/11/11 - */ -@Service -public class MicroServiceImpl implements MicroService { - - @Autowired - private RestTemplate restTemplate; - - @Autowired - private ConfigReader configReader; - - @Autowired - private DiscoveryClient discoveryClient; - - @Autowired - private Registration registration; - - private boolean isIp(String ipAddress) { - String ip = "([1-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}"; - Pattern pattern = Pattern.compile(ip); - Matcher matcher = pattern.matcher(ipAddress); - return matcher.matches(); - } - - @Override - public TxState getState() { - TxState state = new TxState(); - String ipAddress = registration.getHost(); - if (!isIp(ipAddress)) { - ipAddress = "127.0.0.1"; - } - state.setIp(ipAddress); - state.setPort(Constants.socketPort); - state.setMaxConnection(SocketManager.getInstance().getMaxConnection()); - state.setNowConnection(SocketManager.getInstance().getNowConnection()); - state.setRedisSaveMaxTime(configReader.getRedisSaveMaxTime()); - state.setTransactionNettyDelayTime(configReader.getTransactionNettyDelayTime()); - state.setTransactionNettyHeartTime(configReader.getTransactionNettyHeartTime()); - state.setNotifyUrl(configReader.getCompensateNotifyUrl()); - state.setCompensate(configReader.isCompensateAuto()); - state.setCompensateTryTime(configReader.getCompensateTryTime()); - state.setCompensateMaxWaitTime(configReader.getCompensateMaxWaitTime()); - state.setSlbList(getServices()); - return state; - } - - private List<String> getServices() { - List<String> urls = new ArrayList<>(); - List<ServiceInstance> serviceInstances = discoveryClient.getInstances(TMKEY); - for (ServiceInstance instanceInfo : serviceInstances) { - urls.add(instanceInfo.getUri().toASCIIString()); - } - return urls; - } - - @Override - public TxServer getServer() { - List<String> urls = getServices(); - List<TxState> states = new ArrayList<>(); - for (String url : urls) { - try { - TxState state = restTemplate.getForObject(url + "/tx/manager/state", TxState.class); - states.add(state); - } - catch (Exception e) { - } - - } - if (states.size() <= 1) { - TxState state = getState(); - if (state.getMaxConnection() > state.getNowConnection()) { - return TxServer.format(state); - } - else { - return null; - } - } - else { - // 找默认数据 - TxState state = getDefault(states, 0); - if (state == null) { - // 没有满足的默认数据 - return null; - } - return TxServer.format(state); - } - } - - private TxState getDefault(List<TxState> states, int index) { - TxState state = states.get(index); - if (state.getMaxConnection() == state.getNowConnection()) { - index++; - if (states.size() - 1 >= index) { - return getDefault(states, index); - } - else { - return null; - } - } - else { - return state; - } - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/TxManagerSenderServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/TxManagerSenderServiceImpl.java deleted file mode 100644 index 0ea8975e0..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/TxManagerSenderServiceImpl.java +++ /dev/null @@ -1,315 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.manager.service.impl; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.lorne.core.framework.utils.KidUtils; -import com.lorne.core.framework.utils.task.ConditionUtils; -import com.lorne.core.framework.utils.task.Task; -import com.lorne.core.framework.utils.thread.CountDownLatchHelper; -import com.lorne.core.framework.utils.thread.IExecute; -import com.pig4cloud.pigx.manager.compensate.service.CompensateService; -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.framework.utils.Constants; -import com.pig4cloud.pigx.manager.framework.utils.SocketManager; -import com.pig4cloud.pigx.manager.framework.utils.SocketUtils; -import com.pig4cloud.pigx.manager.manager.service.TxManagerSenderService; -import com.pig4cloud.pigx.manager.manager.service.TxManagerService; -import com.pig4cloud.pigx.manager.model.ChannelSender; -import com.pig4cloud.pigx.manager.netty.model.TxGroup; -import com.pig4cloud.pigx.manager.netty.model.TxInfo; -import com.pig4cloud.pigx.manager.redis.RedisServerService; -import io.netty.channel.Channel; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.List; -import java.util.concurrent.*; - -/** - * @author LCN on 2017/6/9. - */ -@Service -public class TxManagerSenderServiceImpl implements TxManagerSenderService { - - private Logger logger = LoggerFactory.getLogger(TxManagerSenderServiceImpl.class); - - private ScheduledExecutorService executorService = Executors.newScheduledThreadPool(100); - - private Executor threadPool = Executors.newFixedThreadPool(100); - - @Autowired - private TxManagerService txManagerService; - - @Autowired - private RedisServerService redisServerService; - - @Autowired - private ConfigReader configReader; - - @Autowired - private CompensateService compensateService; - - @Override - public int confirm(TxGroup txGroup) { - // 绑定管道对象,检查网络 - setChannel(txGroup.getList()); - - // 事务不满足直接回滚事务 - if (txGroup.getState() == 0) { - transaction(txGroup, 0); - return 0; - } - - if (txGroup.getRollback() == 1) { - transaction(txGroup, 0); - return -1; - } - - boolean hasOk = transaction(txGroup, 1); - txManagerService.dealTxGroup(txGroup, hasOk); - return hasOk ? 1 : 0; - } - - /** - * 匹配管道 - * @param list - */ - private void setChannel(List<TxInfo> list) { - for (TxInfo info : list) { - if (Constants.address.equals(info.getAddress())) { - Channel channel = SocketManager.getInstance().getChannelByModelName(info.getChannelAddress()); - if (channel != null && channel.isActive()) { - ChannelSender sender = new ChannelSender(); - sender.setChannel(channel); - - info.setChannel(sender); - } - } - else { - ChannelSender sender = new ChannelSender(); - sender.setAddress(info.getAddress()); - sender.setModelName(info.getChannelAddress()); - - info.setChannel(sender); - } - } - } - - /** - * 事务提交或回归 - * @param checkSate - */ - private boolean transaction(final TxGroup txGroup, final int checkSate) { - - if (checkSate == 1) { - - // 补偿请求,加载历史数据 - if (txGroup.getIsCompensate() == 1) { - compensateService.reloadCompensate(txGroup); - } - - CountDownLatchHelper<Boolean> countDownLatchHelper = new CountDownLatchHelper<Boolean>(); - for (final TxInfo txInfo : txGroup.getList()) { - if (txInfo.getIsGroup() == 0) { - countDownLatchHelper.addExecute(new IExecute<Boolean>() { - @Override - public Boolean execute() { - if (txInfo.getChannel() == null) { - return false; - } - - final JSONObject jsonObject = new JSONObject(); - jsonObject.put("a", "t"); - - // 补偿请求 - if (txGroup.getIsCompensate() == 1) { - jsonObject.put("c", txInfo.getIsCommit()); - } - else { // 正常业务 - jsonObject.put("c", checkSate); - } - - jsonObject.put("t", txInfo.getKid()); - final String key = KidUtils.generateShortUuid(); - jsonObject.put("k", key); - - Task task = ConditionUtils.getInstance().createTask(key); - - ScheduledFuture future = schedule(key, configReader.getTransactionNettyDelayTime()); - - threadAwaitSend(task, txInfo, jsonObject.toJSONString()); - - task.awaitTask(); - - if (!future.isDone()) { - future.cancel(false); - } - - try { - String data = (String) task.getBack().doing(); - // 1 成功 0 失败 -1 task为空 -2 超过 - boolean res = "1".equals(data); - - if (res) { - txInfo.setNotify(1); - } - - return res; - } - catch (Throwable throwable) { - throwable.printStackTrace(); - return false; - } - finally { - task.remove(); - } - } - }); - } - } - - List<Boolean> hasOks = countDownLatchHelper.execute().getData(); - - String key = configReader.getKeyPrefix() + txGroup.getGroupId(); - redisServerService.saveTransaction(key, txGroup.toJsonString()); - - boolean hasOk = true; - for (boolean bl : hasOks) { - if (!bl) { - hasOk = false; - break; - } - } - logger.info("--->" + hasOk + ",group:" + txGroup.getGroupId() + ",state:" + checkSate + ",list:" - + txGroup.toJsonString()); - return hasOk; - } - else { - // 回滚操作只发送通过不需要等待确认 - for (TxInfo txInfo : txGroup.getList()) { - if (txInfo.getChannel() != null) { - if (txInfo.getIsGroup() == 0) { - JSONObject jsonObject = new JSONObject(); - jsonObject.put("a", "t"); - jsonObject.put("c", checkSate); - jsonObject.put("t", txInfo.getKid()); - String key = KidUtils.generateShortUuid(); - jsonObject.put("k", key); - txInfo.getChannel().send(jsonObject.toJSONString()); - } - } - } - txManagerService.deleteTxGroup(txGroup); - return true; - } - - } - - @Override - public String sendCompensateMsg(String model, String groupId, String data, int startState) { - JSONObject newCmd = new JSONObject(); - newCmd.put("a", "c"); - newCmd.put("d", data); - newCmd.put("ss", startState); - newCmd.put("g", groupId); - newCmd.put("k", KidUtils.generateShortUuid()); - return sendMsg(model, newCmd.toJSONString(), configReader.getRedisSaveMaxTime()); - } - - @Override - public String sendMsg(final String model, final String msg, int delay) { - JSONObject jsonObject = JSON.parseObject(msg); - String key = jsonObject.getString("k"); - - // 创建Task - final Task task = ConditionUtils.getInstance().createTask(key); - - threadPool.execute(() -> { - while (!task.isAwait() && !Thread.interrupted()) { - try { - Thread.sleep(1); - } - catch (InterruptedException e) { - e.printStackTrace(); - } - } - - Channel channel = SocketManager.getInstance().getChannelByModelName(model); - if (channel != null && channel.isActive()) { - SocketUtils.sendMsg(channel, msg); - } - }); - - ScheduledFuture future = schedule(key, delay); - - task.awaitTask(); - - if (!future.isDone()) { - future.cancel(false); - } - - try { - return (String) task.getBack().doing(); - } - catch (Throwable throwable) { - return "-1"; - } - finally { - task.remove(); - } - } - - private void threadAwaitSend(final Task task, final TxInfo txInfo, final String msg) { - threadPool.execute(() -> { - while (!task.isAwait() && !Thread.interrupted()) { - try { - Thread.sleep(1); - } - catch (InterruptedException e) { - e.printStackTrace(); - } - } - - if (txInfo != null && txInfo.getChannel() != null) { - txInfo.getChannel().send(msg, task); - } - else { - task.setBack(objs -> "-2"); - task.signalTask(); - } - }); - - } - - private ScheduledFuture schedule(final String key, int delayTime) { - ScheduledFuture future = executorService.schedule(() -> { - Task task = ConditionUtils.getInstance().getTask(key); - if (task != null && !task.isNotify()) { - task.setBack(objs -> "-2"); - task.signalTask(); - } - }, delayTime, TimeUnit.SECONDS); - - return future; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/TxManagerServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/TxManagerServiceImpl.java deleted file mode 100644 index 0898f3911..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/manager/service/impl/TxManagerServiceImpl.java +++ /dev/null @@ -1,220 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.manager.service.impl; - -import com.pig4cloud.pigx.manager.compensate.service.CompensateService; -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.framework.utils.Constants; -import com.pig4cloud.pigx.manager.manager.ModelInfoManager; -import com.pig4cloud.pigx.manager.manager.service.LoadBalanceService; -import com.pig4cloud.pigx.manager.manager.service.TxManagerSenderService; -import com.pig4cloud.pigx.manager.manager.service.TxManagerService; -import com.pig4cloud.pigx.manager.model.ModelInfo; -import com.pig4cloud.pigx.manager.netty.model.TxGroup; -import com.pig4cloud.pigx.manager.netty.model.TxInfo; -import com.pig4cloud.pigx.manager.redis.RedisServerService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * @author LCN on 2017/6/7. - */ -@Service -public class TxManagerServiceImpl implements TxManagerService { - - @Autowired - private ConfigReader configReader; - - @Autowired - private RedisServerService redisServerService; - - @Autowired - private TxManagerSenderService transactionConfirmService; - - @Autowired - private LoadBalanceService loadBalanceService; - - @Autowired - private CompensateService compensateService; - - private Logger logger = LoggerFactory.getLogger(TxManagerServiceImpl.class); - - @Override - public TxGroup createTransactionGroup(String groupId) { - TxGroup txGroup = new TxGroup(); - if (compensateService.getCompensateByGroupId(groupId) != null) { - txGroup.setIsCompensate(1); - } - - txGroup.setStartTime(System.currentTimeMillis()); - txGroup.setGroupId(groupId); - - String key = configReader.getKeyPrefix() + groupId; - redisServerService.saveTransaction(key, txGroup.toJsonString()); - - return txGroup; - } - - @Override - public TxGroup addTransactionGroup(String groupId, String taskId, int isGroup, String channelAddress, - String methodStr) { - String key = getTxGroupKey(groupId); - TxGroup txGroup = getTxGroup(groupId); - if (txGroup == null) { - return null; - } - TxInfo txInfo = new TxInfo(); - txInfo.setChannelAddress(channelAddress); - txInfo.setKid(taskId); - txInfo.setAddress(Constants.address); - txInfo.setIsGroup(isGroup); - txInfo.setMethodStr(methodStr); - - ModelInfo modelInfo = ModelInfoManager.getInstance().getModelByChannelName(channelAddress); - if (modelInfo != null) { - txInfo.setUniqueKey(modelInfo.getUniqueKey()); - txInfo.setModelIpAddress(modelInfo.getIpAddress()); - txInfo.setModel(modelInfo.getModel()); - } - - txGroup.addTransactionInfo(txInfo); - - redisServerService.saveTransaction(key, txGroup.toJsonString()); - - return txGroup; - } - - @Override - public boolean rollbackTransactionGroup(String groupId) { - String key = getTxGroupKey(groupId); - TxGroup txGroup = getTxGroup(groupId); - if (txGroup == null) { - return false; - } - txGroup.setRollback(1); - redisServerService.saveTransaction(key, txGroup.toJsonString()); - return true; - } - - @Override - public int cleanNotifyTransaction(String groupId, String taskId) { - int res = 0; - logger.info("start-cleanNotifyTransaction->groupId:" + groupId + ",taskId:" + taskId); - String key = getTxGroupKey(groupId); - TxGroup txGroup = getTxGroup(groupId); - if (txGroup == null) { - logger.info("cleanNotifyTransaction - > txGroup is null "); - return res; - } - - if (txGroup.getHasOver() == 0) { - - // 整个事务回滚. - txGroup.setRollback(1); - redisServerService.saveTransaction(key, txGroup.toJsonString()); - - logger.info("cleanNotifyTransaction - > groupId " + groupId + " not over,all transaction must rollback !"); - return 0; - } - - if (txGroup.getRollback() == 1) { - logger.info("cleanNotifyTransaction - > groupId " + groupId + " only rollback !"); - return 0; - } - - // 更新数据 - boolean hasSet = false; - for (TxInfo info : txGroup.getList()) { - if (info.getKid().equals(taskId)) { - if (info.getNotify() == 0 && info.getIsGroup() == 0) { - info.setNotify(1); - hasSet = true; - res = 1; - - break; - } - } - } - - // 判断是否都结束 - boolean isOver = true; - for (TxInfo info : txGroup.getList()) { - if (info.getIsGroup() == 0 && info.getNotify() == 0) { - isOver = false; - break; - } - } - - if (isOver) { - deleteTxGroup(txGroup); - } - - // 有更新的数据,需要修改记录 - if (!isOver && hasSet) { - redisServerService.saveTransaction(key, txGroup.toJsonString()); - } - - logger.info("end-cleanNotifyTransaction->groupId:" + groupId + ",taskId:" + taskId - + ",res(1:commit,0:rollback):" + res); - return res; - } - - @Override - public int closeTransactionGroup(String groupId, int state) { - String key = getTxGroupKey(groupId); - TxGroup txGroup = getTxGroup(groupId); - if (txGroup == null) { - return 0; - } - txGroup.setState(state); - txGroup.setHasOver(1); - redisServerService.saveTransaction(key, txGroup.toJsonString()); - return transactionConfirmService.confirm(txGroup); - } - - @Override - public void dealTxGroup(TxGroup txGroup, boolean hasOk) { - if (hasOk) { - deleteTxGroup(txGroup); - } - } - - @Override - public void deleteTxGroup(TxGroup txGroup) { - String groupId = txGroup.getGroupId(); - - String key = getTxGroupKey(groupId); - redisServerService.deleteKey(key); - - loadBalanceService.remove(groupId); - } - - @Override - public TxGroup getTxGroup(String groupId) { - String key = getTxGroupKey(groupId); - return redisServerService.getTxGroupByKey(key); - } - - @Override - public String getTxGroupKey(String groupId) { - return configReader.getKeyPrefix() + groupId; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/ChannelSender.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/ChannelSender.java deleted file mode 100644 index 0273d8a1b..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/ChannelSender.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.model; - -import com.lorne.core.framework.utils.http.HttpUtils; -import com.lorne.core.framework.utils.task.Task; -import com.pig4cloud.pigx.manager.framework.utils.SocketUtils; -import io.netty.channel.Channel; -import org.apache.commons.lang.StringUtils; - -/** - * @author LCN on 2017/8/7 - */ -public class ChannelSender { - - private Channel channel; - - private String address; - - private String modelName; - - public void setModelName(String modelName) { - this.modelName = modelName; - } - - public void setChannel(Channel channel) { - this.channel = channel; - } - - public void setAddress(String address) { - this.address = address; - } - - public void send(String msg) { - if (channel != null) { - SocketUtils.sendMsg(channel, msg); - } - - } - - public void send(String msg, Task task) { - if (channel != null) { - SocketUtils.sendMsg(channel, msg); - } - else { - String url = String.format("http://%s/tx/manager/sendMsg", address); - final String res = HttpUtils.post(url, "msg=" + msg + "&model=" + modelName); - if (StringUtils.isNotEmpty(res)) { - if (task != null) { - task.setBack(objs -> res); - task.signalTask(); - } - } - else { - if (task != null) { - task.setBack(objs -> "-2"); - task.signalTask(); - } - } - } - - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/ModelInfo.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/ModelInfo.java deleted file mode 100644 index c79e23794..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/ModelInfo.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.model; - -/** - * 模块信息 - * - * @author LCN on 2017/11/13 - */ -public class ModelInfo { - - private String model; - - private String ipAddress; - - private String channelName; - - private String uniqueKey; - - public String getModel() { - return model; - } - - public void setModel(String model) { - this.model = model; - } - - public String getIpAddress() { - return ipAddress; - } - - public void setIpAddress(String ipAddress) { - this.ipAddress = ipAddress; - } - - public String getChannelName() { - return channelName; - } - - public void setChannelName(String channelName) { - this.channelName = channelName; - } - - public String getUniqueKey() { - return uniqueKey; - } - - public void setUniqueKey(String uniqueKey) { - this.uniqueKey = uniqueKey; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/ModelName.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/ModelName.java deleted file mode 100644 index c82ef64e4..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/ModelName.java +++ /dev/null @@ -1,46 +0,0 @@ - -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.model; - -/** - * @author LCN on 2017/11/22 - */ -public class ModelName { - - private String name; - - private int count; - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getCount() { - return count; - } - - public void setCount(int count) { - this.count = count; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/TxServer.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/TxServer.java deleted file mode 100644 index 2996d1e9b..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/TxServer.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.model; - -/** - * @author LCN on 2017/7/1. - */ -public class TxServer { - - private String ip; - - private int port; - - private int heart; - - private int delay; - - private int compensateMaxWaitTime; - - public static TxServer format(TxState state) { - TxServer txServer = new TxServer(); - txServer.setIp(state.getIp()); - txServer.setPort(state.getPort()); - txServer.setHeart(state.getTransactionNettyHeartTime()); - txServer.setDelay(state.getTransactionNettyDelayTime()); - txServer.setCompensateMaxWaitTime(state.getCompensateMaxWaitTime()); - return txServer; - } - - public String getIp() { - return ip; - } - - public void setIp(String ip) { - this.ip = ip; - } - - public int getPort() { - return port; - } - - public void setPort(int port) { - this.port = port; - } - - public int getHeart() { - return heart; - } - - public void setHeart(int heart) { - this.heart = heart; - } - - public int getDelay() { - return delay; - } - - public void setDelay(int delay) { - this.delay = delay; - } - - public int getCompensateMaxWaitTime() { - return compensateMaxWaitTime; - } - - public void setCompensateMaxWaitTime(int compensateMaxWaitTime) { - this.compensateMaxWaitTime = compensateMaxWaitTime; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/TxState.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/TxState.java deleted file mode 100644 index 7d61503d4..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/model/TxState.java +++ /dev/null @@ -1,183 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.model; - -import java.util.List; - -/** - * @author LCN on 2017/7/1. - */ -public class TxState { - - /** - * socket ip - */ - private String ip; - - /** - * socket port - */ - private int port; - - /** - * max connection - */ - private int maxConnection; - - /** - * now connection - */ - private int nowConnection; - - /** - * transaction_netty_heart_time - */ - private int transactionNettyHeartTime; - - /** - * transaction_netty_delay_time - */ - private int transactionNettyDelayTime; - - /** - * redis_save_max_time - */ - private int redisSaveMaxTime; - - /** - * 回调地址 - */ - private String notifyUrl; - - /** - * 自动补偿 - */ - private boolean isCompensate; - - /** - * 补偿尝试时间 - */ - private int compensateTryTime; - - /** - * slb list - */ - private List<String> slbList; - - /** - * 自动补偿间隔时间 - */ - private int compensateMaxWaitTime; - - public String getIp() { - return ip; - } - - public void setIp(String ip) { - this.ip = ip; - } - - public int getPort() { - return port; - } - - public void setPort(int port) { - this.port = port; - } - - public int getMaxConnection() { - return maxConnection; - } - - public void setMaxConnection(int maxConnection) { - this.maxConnection = maxConnection; - } - - public int getNowConnection() { - return nowConnection; - } - - public void setNowConnection(int nowConnection) { - this.nowConnection = nowConnection; - } - - public boolean isCompensate() { - return isCompensate; - } - - public void setCompensate(boolean compensate) { - isCompensate = compensate; - } - - public int getCompensateTryTime() { - return compensateTryTime; - } - - public void setCompensateTryTime(int compensateTryTime) { - this.compensateTryTime = compensateTryTime; - } - - public int getRedisSaveMaxTime() { - return redisSaveMaxTime; - } - - public void setRedisSaveMaxTime(int redisSaveMaxTime) { - this.redisSaveMaxTime = redisSaveMaxTime; - } - - public List<String> getSlbList() { - return slbList; - } - - public void setSlbList(List<String> slbList) { - this.slbList = slbList; - } - - public int getTransactionNettyHeartTime() { - return transactionNettyHeartTime; - } - - public void setTransactionNettyHeartTime(int transactionNettyHeartTime) { - this.transactionNettyHeartTime = transactionNettyHeartTime; - } - - public int getTransactionNettyDelayTime() { - return transactionNettyDelayTime; - } - - public void setTransactionNettyDelayTime(int transactionNettyDelayTime) { - this.transactionNettyDelayTime = transactionNettyDelayTime; - } - - public String getNotifyUrl() { - return notifyUrl; - } - - public void setNotifyUrl(String notifyUrl) { - this.notifyUrl = notifyUrl; - } - - public int getCompensateMaxWaitTime() { - return compensateMaxWaitTime; - } - - public void setCompensateMaxWaitTime(int compensateMaxWaitTime) { - this.compensateMaxWaitTime = compensateMaxWaitTime; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/handler/TxCoreServerHandler.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/handler/TxCoreServerHandler.java deleted file mode 100644 index 821ba60e9..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/handler/TxCoreServerHandler.java +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.handler; - -/** - * @author LCN on 2017/6/29. - */ - -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.framework.utils.SocketManager; -import com.pig4cloud.pigx.manager.framework.utils.SocketUtils; -import com.pig4cloud.pigx.manager.manager.ModelInfoManager; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import com.pig4cloud.pigx.manager.netty.service.NettyService; -import io.netty.channel.ChannelHandler; -import io.netty.channel.ChannelHandlerContext; -import io.netty.channel.ChannelInboundHandlerAdapter; -import io.netty.handler.timeout.IdleState; -import io.netty.handler.timeout.IdleStateEvent; -import lombok.SneakyThrows; -import org.apache.commons.lang.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.concurrent.Executor; - -/** - * Handles a server-side channel. - * - * @author lengleng - */ - -@ChannelHandler.Sharable -public class TxCoreServerHandler extends ChannelInboundHandlerAdapter { - - // (1) - - private NettyService nettyService; - - private Logger logger = LoggerFactory.getLogger(TxCoreServerHandler.class); - - private Executor threadPool; - - public TxCoreServerHandler(Executor threadPool, NettyService nettyService) { - this.threadPool = threadPool; - this.nettyService = nettyService; - } - - @Override - public void channelRead(final ChannelHandlerContext ctx, Object msg) { - final String json = SocketUtils.getJson(msg); - logger.debug("request->" + json); - threadPool.execute(() -> service(json, ctx)); - } - - private void service(String json, ChannelHandlerContext ctx) { - if (StringUtils.isNotEmpty(json)) { - JSONObject jsonObject = JSONObject.parseObject(json); - String action = jsonObject.getString("a"); - String key = jsonObject.getString("k"); - JSONObject params = JSONObject.parseObject(jsonObject.getString("p")); - String channelAddress = ctx.channel().remoteAddress().toString(); - - IActionService actionService = nettyService.getActionService(action); - - String res = actionService.execute(channelAddress, key, params); - - JSONObject resObj = new JSONObject(); - resObj.put("k", key); - resObj.put("d", res); - - SocketUtils.sendMsg(ctx, resObj.toString()); - - } - } - - @Override - @SneakyThrows - public void channelRegistered(ChannelHandlerContext ctx) { - - // 是否到达最大上线连接数 - if (SocketManager.getInstance().isAllowConnection()) { - SocketManager.getInstance().addClient(ctx.channel()); - } - else { - ctx.close(); - } - super.channelRegistered(ctx); - } - - @Override - @SneakyThrows - public void channelUnregistered(ChannelHandlerContext ctx) { - - SocketManager.getInstance().removeClient(ctx.channel()); - String modelName = ctx.channel().remoteAddress().toString(); - SocketManager.getInstance().outLine(modelName); - - ModelInfoManager.getInstance().removeModelInfo(modelName); - super.channelUnregistered(ctx); - } - - @Override - public void channelReadComplete(ChannelHandlerContext ctx) { - ctx.flush(); - } - - @Override - public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) { - cause.printStackTrace(); - // ctx.close(); - } - - @Override - public void userEventTriggered(ChannelHandlerContext ctx, Object evt) { - // 心跳配置 - if (IdleStateEvent.class.isAssignableFrom(evt.getClass())) { - IdleStateEvent event = (IdleStateEvent) evt; - if (event.state() == IdleState.READER_IDLE) { - ctx.close(); - } - } - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/model/TxGroup.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/model/TxGroup.java deleted file mode 100644 index 9dbc19d23..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/model/TxGroup.java +++ /dev/null @@ -1,198 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.model; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; - -import java.util.ArrayList; -import java.util.List; - -/** - * @author LCN on 2017/6/7. - */ -public class TxGroup { - - private String groupId; - - private long startTime; - - private long nowTime; - - private int state; - - private int hasOver; - - /** - * 补偿请求 - */ - private int isCompensate; - - /** - * 是否强制回滚(1:开启,0:关闭) - */ - private int rollback = 0; - - private List<TxInfo> list; - - public TxGroup() { - list = new ArrayList<TxInfo>(); - } - - public static TxGroup parser(String json) { - try { - JSONObject jsonObject = JSONObject.parseObject(json); - TxGroup txGroup = new TxGroup(); - txGroup.setGroupId(jsonObject.getString("g")); - txGroup.setStartTime(jsonObject.getLong("st")); - txGroup.setNowTime(jsonObject.getLong("nt")); - txGroup.setState(jsonObject.getInteger("s")); - txGroup.setIsCompensate(jsonObject.getInteger("i")); - txGroup.setRollback(jsonObject.getInteger("r")); - txGroup.setHasOver(jsonObject.getInteger("o")); - JSONArray array = jsonObject.getJSONArray("l"); - int length = array.size(); - for (int i = 0; i < length; i++) { - JSONObject object = array.getJSONObject(i); - TxInfo info = new TxInfo(); - info.setKid(object.getString("k")); - info.setChannelAddress(object.getString("ca")); - info.setNotify(object.getInteger("n")); - info.setIsGroup(object.getInteger("ig")); - info.setAddress(object.getString("a")); - info.setUniqueKey(object.getString("u")); - - info.setModel(object.getString("mn")); - info.setModelIpAddress(object.getString("ip")); - info.setMethodStr(object.getString("ms")); - - txGroup.getList().add(info); - } - return txGroup; - - } - catch (Exception e) { - return null; - } - - } - - public String getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public List<TxInfo> getList() { - return list; - } - - public void setList(List<TxInfo> list) { - this.list = list; - } - - public long getStartTime() { - return startTime; - } - - public void setStartTime(long startTime) { - this.startTime = startTime; - } - - public int getIsCompensate() { - return isCompensate; - } - - public void setIsCompensate(int isCompensate) { - this.isCompensate = isCompensate; - } - - public int getState() { - return state; - } - - public void setState(int state) { - this.state = state; - } - - public void addTransactionInfo(TxInfo info) { - list.add(info); - } - - public long getNowTime() { - return nowTime; - } - - public void setNowTime(long nowTime) { - this.nowTime = nowTime; - } - - public int getHasOver() { - return hasOver; - } - - public void setHasOver(int hasOver) { - this.hasOver = hasOver; - } - - public int getRollback() { - return rollback; - } - - public void setRollback(int rollback) { - this.rollback = rollback; - } - - public String toJsonString(boolean noList) { - JSONObject jsonObject = new JSONObject(); - jsonObject.put("g", getGroupId()); - jsonObject.put("st", getStartTime()); - jsonObject.put("nt", getNowTime()); - jsonObject.put("s", getState()); - jsonObject.put("i", getIsCompensate()); - jsonObject.put("r", getRollback()); - jsonObject.put("o", getHasOver()); - if (noList) { - JSONArray jsonArray = new JSONArray(); - for (TxInfo info : getList()) { - JSONObject item = new JSONObject(); - item.put("k", info.getKid()); - item.put("ca", info.getChannelAddress()); - item.put("n", info.getNotify()); - item.put("ig", info.getIsGroup()); - item.put("a", info.getAddress()); - item.put("u", info.getUniqueKey()); - - item.put("mn", info.getModel()); - item.put("ip", info.getModelIpAddress()); - item.put("ms", info.getMethodStr()); - - jsonArray.add(item); - } - jsonObject.put("l", jsonArray); - } - return jsonObject.toString(); - } - - public String toJsonString() { - return toJsonString(true); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/model/TxInfo.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/model/TxInfo.java deleted file mode 100644 index b44f498d6..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/model/TxInfo.java +++ /dev/null @@ -1,189 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.model; - -import com.alibaba.fastjson.JSONObject; -import com.lorne.core.framework.model.JsonModel; -import com.pig4cloud.pigx.manager.model.ChannelSender; - -/** - * @author LCN on 2017/6/7. - */ -public class TxInfo extends JsonModel { - - /** - * 任务唯一标示 - */ - private String kid; - - /** - * 模块管道名称(netty管道名称) - */ - private String channelAddress; - - /** - * 是否通知成功 - */ - private int notify; - - /** - * 0 不组合 1 组合 - */ - private int isGroup; - - /** - * tm识别标示 - */ - private String address; - - /** - * tx识别标示 - */ - private String uniqueKey; - - /** - * 管道发送数据 - */ - private ChannelSender channel; - - /** - * 业务方法名称 - */ - private String methodStr; - - /** - * 模块名称 - */ - private String model; - - /** - * 模块地址 - */ - private String modelIpAddress; - - /** - * 是否提交(临时数据) - */ - private int isCommit; - - public int getIsCommit() { - return isCommit; - } - - public void setIsCommit(int isCommit) { - this.isCommit = isCommit; - } - - public String getMethodStr() { - return methodStr; - } - - public void setMethodStr(String methodStr) { - this.methodStr = methodStr; - } - - public String getModel() { - return model; - } - - public void setModel(String model) { - this.model = model; - } - - public String getModelIpAddress() { - return modelIpAddress; - } - - public void setModelIpAddress(String modelIpAddress) { - this.modelIpAddress = modelIpAddress; - } - - public String getKid() { - return kid; - } - - public void setKid(String kid) { - this.kid = kid; - } - - public ChannelSender getChannel() { - return channel; - } - - public void setChannel(ChannelSender channel) { - this.channel = channel; - } - - public String getChannelAddress() { - return channelAddress; - } - - public void setChannelAddress(String channelAddress) { - this.channelAddress = channelAddress; - } - - public int getNotify() { - return notify; - } - - public void setNotify(int notify) { - this.notify = notify; - } - - public int getIsGroup() { - return isGroup; - } - - public void setIsGroup(int isGroup) { - this.isGroup = isGroup; - } - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getUniqueKey() { - return uniqueKey; - } - - public void setUniqueKey(String uniqueKey) { - this.uniqueKey = uniqueKey; - } - - @Override - public String toString() { - JSONObject jsonObject = new JSONObject(); - jsonObject.put("kid", getKid()); - jsonObject.put("channelAddress", getChannelAddress()); - jsonObject.put("notify", getNotify()); - jsonObject.put("isGroup", getIsGroup()); - jsonObject.put("address", getAddress()); - jsonObject.put("uniqueKey", getUniqueKey()); - - jsonObject.put("model", getModel()); - jsonObject.put("modelIpAddress", getModelIpAddress()); - jsonObject.put("methodStr", getMethodStr()); - - return jsonObject.toString(); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/IActionService.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/IActionService.java deleted file mode 100644 index 0fc19ba06..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/IActionService.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service; - -import com.alibaba.fastjson.JSONObject; - -/** - * @author LCN on 2017/11/11 - */ -public interface IActionService { - - String execute(String channelAddress, String key, JSONObject params); - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/NettyServerService.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/NettyServerService.java deleted file mode 100644 index 3807266de..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/NettyServerService.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service; - -/** - * @author LCN on 2017/6/30. - */ -public interface NettyServerService { - - void start(); - - void close(); - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/NettyService.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/NettyService.java deleted file mode 100644 index d557d6369..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/NettyService.java +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service; - -/** - * @author LCN on 2017/11/11 - */ -public interface NettyService { - - IActionService getActionService(String action); - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionATGServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionATGServiceImpl.java deleted file mode 100644 index 884972996..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionATGServiceImpl.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.manager.service.TxManagerService; -import com.pig4cloud.pigx.manager.netty.model.TxGroup; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 添加事务组 - * - * @author LCN on 2017/11/11 - */ -@Service(value = "atg") -public class ActionATGServiceImpl implements IActionService { - - @Autowired - private TxManagerService txManagerService; - - @Override - public String execute(String channelAddress, String key, JSONObject params) { - String res = ""; - String groupId = params.getString("g"); - String taskId = params.getString("t"); - String methodStr = params.getString("ms"); - int isGroup = params.getInteger("s"); - - TxGroup txGroup = txManagerService.addTransactionGroup(groupId, taskId, isGroup, channelAddress, methodStr); - - if (txGroup != null) { - txGroup.setNowTime(System.currentTimeMillis()); - res = txGroup.toJsonString(false); - } - else { - res = ""; - } - return res; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCGServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCGServiceImpl.java deleted file mode 100644 index a50ef7a55..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCGServiceImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.manager.service.TxManagerService; -import com.pig4cloud.pigx.manager.netty.model.TxGroup; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 创建事务组 - * - * @author LCN on 2017/11/11 - */ -@Service(value = "cg") -public class ActionCGServiceImpl implements IActionService { - - @Autowired - private TxManagerService txManagerService; - - @Override - public String execute(String channelAddress, String key, JSONObject params) { - String res = ""; - String groupId = params.getString("g"); - TxGroup txGroup = txManagerService.createTransactionGroup(groupId); - if (txGroup != null) { - txGroup.setNowTime(System.currentTimeMillis()); - res = txGroup.toJsonString(false); - } - else { - res = ""; - } - return res; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCKGServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCKGServiceImpl.java deleted file mode 100644 index 9ab770385..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCKGServiceImpl.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.manager.service.TxManagerService; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 检查事务组 - * - * @author LCN on 2017/11/11 - */ -@Service(value = "ckg") -public class ActionCKGServiceImpl implements IActionService { - - @Autowired - private TxManagerService txManagerService; - - @Override - public String execute(String channelAddress, String key, JSONObject params) { - String res = ""; - String groupId = params.getString("g"); - String taskId = params.getString("t"); - int bs = txManagerService.cleanNotifyTransaction(groupId, taskId); - - res = String.valueOf(bs); - return res; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCTGServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCTGServiceImpl.java deleted file mode 100644 index e2fc82212..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionCTGServiceImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.manager.service.TxManagerService; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 关闭事务组 - * - * @author LCN on 2017/11/11 - */ -@Service(value = "ctg") -public class ActionCTGServiceImpl implements IActionService { - - @Autowired - private TxManagerService txManagerService; - - @Override - public String execute(String channelAddress, String key, JSONObject params) { - String groupId = params.getString("g"); - int state = params.getInteger("s"); - String res = String.valueOf(txManagerService.closeTransactionGroup(groupId, state)); - return res; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionGLBServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionGLBServiceImpl.java deleted file mode 100644 index 2106e9a60..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionGLBServiceImpl.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.manager.service.LoadBalanceService; -import com.pig4cloud.pigx.manager.model.LoadBalanceInfo; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 获取负载模块信息 - * - * @author LCN on 2017/11/11 - */ -@Service(value = "glb") -public class ActionGLBServiceImpl implements IActionService { - - @Autowired - private LoadBalanceService loadBalanceService; - - @Override - public String execute(String channelAddress, String key, JSONObject params) { - String res; - String groupId = params.getString("g"); - String k = params.getString("k"); - - LoadBalanceInfo loadBalanceInfo = loadBalanceService.get(groupId, k); - if (loadBalanceInfo == null) { - res = ""; - } - else { - res = loadBalanceInfo.getData(); - } - return res; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionHServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionHServiceImpl.java deleted file mode 100644 index 577af3f41..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionHServiceImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 心跳包 - * - * @author LCN on 2017/11/11 - */ -@Service(value = "h") -public class ActionHServiceImpl implements IActionService { - - @Autowired - private ConfigReader configReader; - - @Override - public String execute(String channelAddress, String key, JSONObject params) { - return String.valueOf(configReader.getTransactionNettyDelayTime()); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionPLBServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionPLBServiceImpl.java deleted file mode 100644 index 29d6148c3..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionPLBServiceImpl.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.manager.service.LoadBalanceService; -import com.pig4cloud.pigx.manager.model.LoadBalanceInfo; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 添加负载模块信息 - * - * @author LCN on 2017/11/11 - */ -@Service(value = "plb") -public class ActionPLBServiceImpl implements IActionService { - - @Autowired - private LoadBalanceService loadBalanceService; - - @Override - public String execute(String channelAddress, String key, JSONObject params) { - - String groupId = params.getString("g"); - String k = params.getString("k"); - String data = params.getString("d"); - - LoadBalanceInfo loadBalanceInfo = new LoadBalanceInfo(); - loadBalanceInfo.setData(data); - loadBalanceInfo.setKey(k); - loadBalanceInfo.setGroupId(groupId); - boolean ok = loadBalanceService.put(loadBalanceInfo); - - return ok ? "1" : "0"; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionRGServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionRGServiceImpl.java deleted file mode 100644 index ec0b7b725..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionRGServiceImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.manager.service.TxManagerService; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 强制回滚事务组 - * - * @author LCN on 2017/11/11 - */ -@Service(value = "rg") -public class ActionRGServiceImpl implements IActionService { - - @Autowired - private TxManagerService txManagerService; - - @Override - public String execute(String channelAddress, String key, JSONObject params) { - String res = ""; - String groupId = params.getString("g"); - boolean bs = txManagerService.rollbackTransactionGroup(groupId); - res = bs ? "1" : "0"; - return res; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionTServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionTServiceImpl.java deleted file mode 100644 index ccc036e32..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionTServiceImpl.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.stereotype.Service; - -/** - * 通知事务回调 - * - * @author LCN on 2017/11/11 - */ -@Service(value = "t") -public class ActionTServiceImpl extends BaseSignalTaskService implements IActionService { - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionUMIServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionUMIServiceImpl.java deleted file mode 100644 index ff9cbc9db..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/ActionUMIServiceImpl.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.framework.utils.SocketManager; -import com.pig4cloud.pigx.manager.manager.ModelInfoManager; -import com.pig4cloud.pigx.manager.model.ModelInfo; -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import org.springframework.stereotype.Service; - -/** - * 上传模块信息 - * - * @author LCN on 2017/11/11 - */ -@Service(value = "umi") -public class ActionUMIServiceImpl implements IActionService { - - @Override - public String execute(String channelAddress, String key, JSONObject params) { - String res = "1"; - - String uniqueKey = params.getString("u"); - String ipAddress = params.getString("i"); - String model = params.getString("m"); - - ModelInfo modelInfo = new ModelInfo(); - modelInfo.setChannelName(channelAddress); - modelInfo.setIpAddress(ipAddress); - modelInfo.setModel(model); - modelInfo.setUniqueKey(uniqueKey); - - ModelInfoManager.getInstance().addModelInfo(modelInfo); - - SocketManager.getInstance().onLine(channelAddress, uniqueKey); - - return res; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/BaseSignalTaskService.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/BaseSignalTaskService.java deleted file mode 100644 index b3a8cb817..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/BaseSignalTaskService.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.lorne.core.framework.utils.task.ConditionUtils; -import com.lorne.core.framework.utils.task.Task; - -/** - * @author LCN on 2017/11/13 - */ -public class BaseSignalTaskService { - - public String execute(String channelAddress, String key, JSONObject params) { - String res = ""; - final String data = params.getString("d"); - Task task = ConditionUtils.getInstance().getTask(key); - if (task != null) { - task.setBack(objs -> data); - task.signalTask(); - } - return res; - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/NettyServerServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/NettyServerServiceImpl.java deleted file mode 100644 index 0334b9778..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/NettyServerServiceImpl.java +++ /dev/null @@ -1,118 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.framework.utils.Constants; -import com.pig4cloud.pigx.manager.netty.handler.TxCoreServerHandler; -import com.pig4cloud.pigx.manager.netty.service.NettyServerService; -import com.pig4cloud.pigx.manager.netty.service.NettyService; -import io.netty.bootstrap.ServerBootstrap; -import io.netty.channel.ChannelInitializer; -import io.netty.channel.ChannelOption; -import io.netty.channel.EventLoopGroup; -import io.netty.channel.nio.NioEventLoopGroup; -import io.netty.channel.socket.SocketChannel; -import io.netty.channel.socket.nio.NioServerSocketChannel; -import io.netty.handler.codec.LengthFieldBasedFrameDecoder; -import io.netty.handler.codec.LengthFieldPrepender; -import io.netty.handler.logging.LogLevel; -import io.netty.handler.logging.LoggingHandler; -import io.netty.handler.timeout.IdleStateHandler; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.DisposableBean; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.concurrent.Executor; -import java.util.concurrent.TimeUnit; - -/** - * @author LCN on 2017/6/30. - */ -@Service -public class NettyServerServiceImpl implements NettyServerService, DisposableBean { - - private Logger logger = LoggerFactory.getLogger(NettyServerServiceImpl.class); - - private EventLoopGroup bossGroup; - - private EventLoopGroup workerGroup; - - private TxCoreServerHandler txCoreServerHandler; - - @Autowired - private NettyService nettyService; - - @Autowired - private Executor threadPool; - - @Autowired - private ConfigReader configReader; - - @Override - public void start() { - final int heartTime = configReader.getTransactionNettyHeartTime() + 10; - txCoreServerHandler = new TxCoreServerHandler(threadPool, nettyService); - bossGroup = new NioEventLoopGroup(50); - workerGroup = new NioEventLoopGroup(); - try { - ServerBootstrap b = new ServerBootstrap(); - b.group(bossGroup, workerGroup).channel(NioServerSocketChannel.class).option(ChannelOption.SO_BACKLOG, 100) - .handler(new LoggingHandler(LogLevel.INFO)).childHandler(new ChannelInitializer<SocketChannel>() { - @Override - public void initChannel(SocketChannel ch) { - ch.pipeline().addLast("timeout", - new IdleStateHandler(heartTime, heartTime, heartTime, TimeUnit.SECONDS)); - - ch.pipeline().addLast(new LengthFieldPrepender(4, false)); - ch.pipeline().addLast(new LengthFieldBasedFrameDecoder(Integer.MAX_VALUE, 0, 4, 0, 4)); - - ch.pipeline().addLast(txCoreServerHandler); - } - }); - - // Start the server. - b.bind(Constants.socketPort); - logger.info("Socket started on port(s): " + Constants.socketPort + " (socket)"); - - } - catch (Exception e) { - // Shut down all event loops to terminate all threads. - e.printStackTrace(); - } - } - - @Override - public void close() { - if (workerGroup != null) { - workerGroup.shutdownGracefully(); - } - if (bossGroup != null) { - bossGroup.shutdownGracefully(); - } - - } - - @Override - public void destroy() { - close(); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/NettyServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/NettyServiceImpl.java deleted file mode 100644 index 227207dfe..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/netty/service/impl/NettyServiceImpl.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.netty.service.impl; - -import com.pig4cloud.pigx.manager.netty.service.IActionService; -import com.pig4cloud.pigx.manager.netty.service.NettyService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationContext; -import org.springframework.stereotype.Service; - -/** - * @author LCN on 2017/11/11 - */ -@Service -public class NettyServiceImpl implements NettyService { - - @Autowired - private ApplicationContext spring; - - @Override - public IActionService getActionService(String action) { - return spring.getBean(action, IActionService.class); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/pack-info.md b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/pack-info.md deleted file mode 100644 index ebee96376..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/pack-info.md +++ /dev/null @@ -1,6 +0,0 @@ -由于LCN 暂未发布适配 2.0 版本 -当前包是根据TCN tx-manager 模块修改而来 ,重构部分代码 -解决LCN 不兼容 Spring Cloud Finchley 问题 - -关于LCN -https://github.com/codingapi/tx-lcn diff --git a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/redis/impl/RedisServerServiceImpl.java b/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/redis/impl/RedisServerServiceImpl.java deleted file mode 100644 index 8e38e6667..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/java/com/pig4cloud/pigx/manager/redis/impl/RedisServerServiceImpl.java +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Copyright (c) 2018-2025, lengleng All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * Neither the name of the pig4cloud.com developer nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * Author: lengleng (wangiegie@gmail.com) - */ - -package com.pig4cloud.pigx.manager.redis.impl; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.pig4cloud.pigx.manager.config.ConfigReader; -import com.pig4cloud.pigx.manager.netty.model.TxGroup; -import com.pig4cloud.pigx.manager.redis.RedisServerService; -import org.apache.commons.lang.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.redis.core.HashOperations; -import org.springframework.data.redis.core.RedisTemplate; -import org.springframework.data.redis.core.ValueOperations; -import org.springframework.stereotype.Service; - -import java.util.ArrayList; -import java.util.List; -import java.util.Set; -import java.util.concurrent.TimeUnit; - -/** - * @author LCN on 2017/11/11 - */ -@Service -public class RedisServerServiceImpl implements RedisServerService { - - @Autowired - private RedisTemplate<String, String> redisTemplate; - - @Autowired - private ConfigReader configReader; - - @Override - public String loadNotifyJson() { - Set<String> keys = redisTemplate.keys(configReader.getKeyPrefixCompensate() + "*"); - ValueOperations<String, String> value = redisTemplate.opsForValue(); - JSONArray jsonArray = new JSONArray(); - for (String key : keys) { - String json = value.get(key); - JSONObject jsonObject = new JSONObject(); - jsonObject.put("key", key); - jsonObject.put("value", JSONObject.parse(json)); - jsonArray.add(jsonObject); - } - return jsonArray.toJSONString(); - } - - @Override - public void saveTransaction(String key, String json) { - ValueOperations<String, String> value = redisTemplate.opsForValue(); - value.set(key, json, configReader.getRedisSaveMaxTime(), TimeUnit.SECONDS); - } - - @Override - public TxGroup getTxGroupByKey(String key) { - ValueOperations<String, String> value = redisTemplate.opsForValue(); - String json = value.get(key); - if (StringUtils.isEmpty(json)) { - return null; - } - return TxGroup.parser(json); - } - - @Override - public void saveCompensateMsg(String name, String json) { - ValueOperations<String, String> value = redisTemplate.opsForValue(); - value.set(name, json); - } - - @Override - public List<String> getKeys(String key) { - Set<String> keys = redisTemplate.keys(key); - List<String> list = new ArrayList<String>(); - for (String k : keys) { - list.add(k); - } - return list; - } - - @Override - public List<String> getValuesByKeys(List<String> keys) { - ValueOperations<String, String> value = redisTemplate.opsForValue(); - List<String> list = new ArrayList<>(); - for (String key : keys) { - String json = value.get(key); - list.add(json); - } - return list; - } - - @Override - public String getValueByKey(String key) { - ValueOperations<String, String> value = redisTemplate.opsForValue(); - return value.get(key); - } - - @Override - public void deleteKey(String key) { - redisTemplate.delete(key); - } - - @Override - public void saveLoadBalance(String groupName, String key, String data) { - HashOperations<String, String, String> value = redisTemplate.opsForHash(); - value.put(groupName, key, data); - } - - @Override - public String getLoadBalance(String groupName, String key) { - HashOperations<String, String, String> value = redisTemplate.opsForHash(); - return value.get(groupName, key); - } - -} diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/application.yml b/pigx-visual/pigx-tx-manager/src/main/resources/application.yml deleted file mode 100644 index ac4fd1924..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/application.yml +++ /dev/null @@ -1,3 +0,0 @@ -spring: - main: - allow-circular-references: true diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/bootstrap.yml b/pigx-visual/pigx-tx-manager/src/main/resources/bootstrap.yml deleted file mode 100644 index 4b3889708..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/bootstrap.yml +++ /dev/null @@ -1,17 +0,0 @@ -server: - port: 5004 - -spring: - application: - name: @artifactId@ - cloud: - nacos: - discovery: - server-addr: ${NACOS_HOST:pigx-register}:${NACOS_PORT:8848} - config: - server-addr: ${spring.cloud.nacos.discovery.server-addr} - file-extension: yml - shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - profiles: - active: @profiles.active@ \ No newline at end of file diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/logback-spring.xml b/pigx-visual/pigx-tx-manager/src/main/resources/logback-spring.xml deleted file mode 100644 index 998f18b5c..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/logback-spring.xml +++ /dev/null @@ -1,87 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ~ Copyright (c) 2018-2025, lengleng All rights reserved. - ~ - ~ Redistribution and use in source and binary forms, with or without - ~ modification, are permitted provided that the following conditions are met: - ~ - ~ Redistributions of source code must retain the above copyright notice, - ~ this list of conditions and the following disclaimer. - ~ Redistributions in binary form must reproduce the above copyright - ~ notice, this list of conditions and the following disclaimer in the - ~ documentation and/or other materials provided with the distribution. - ~ Neither the name of the pig4cloud.com developer nor the names of its - ~ contributors may be used to endorse or promote products derived from - ~ this software without specific prior written permission. - ~ Author: lengleng (wangiegie@gmail.com) - --> - -<!-- - 小技巧: 在根pom里面设置统一存放路径,统一管理方便维护 - <properties> - <log-path>/Users/lengleng</log-path> - </properties> - 1. 其他模块加日志输出,直接copy本文件放在resources 目录即可 - 2. 注意修改 <property name="${log-path}/log.path" value=""/> 的value模块 ---> -<configuration debug="false" scan="false"> - <property name="log.path" value="logs/${project.artifactId}"/> - <!-- 彩色日志格式 --> - <property name="CONSOLE_LOG_PATTERN" - value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/> - <!-- 彩色日志依赖的渲染类 --> - <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter"/> - <conversionRule conversionWord="wex" - converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter"/> - <conversionRule conversionWord="wEx" - converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter"/> - <!-- Console log output --> - <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> - <encoder> - <pattern>${CONSOLE_LOG_PATTERN}</pattern> - </encoder> - </appender> - - <!-- Log file debug output --> - <appender name="debug" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.path}/debug.log</file> - <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> - <fileNamePattern>${log.path}/%d{yyyy-MM, aux}/debug.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern> - <maxFileSize>50MB</maxFileSize> - <maxHistory>30</maxHistory> - </rollingPolicy> - <encoder> - <pattern>%date [%thread] %-5level [%logger{50}] %file:%line - %msg%n</pattern> - </encoder> - </appender> - - <!-- Log file error output --> - <appender name="error" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <file>${log.path}/error.log</file> - <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> - <fileNamePattern>${log.path}/%d{yyyy-MM}/error.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern> - <maxFileSize>50MB</maxFileSize> - <maxHistory>30</maxHistory> - </rollingPolicy> - <encoder> - <pattern>%date [%thread] %-5level [%logger{50}] %file:%line - %msg%n</pattern> - </encoder> - <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> - <level>ERROR</level> - </filter> - </appender> - - <logger name="org.activiti.engine.impl.db" level="DEBUG"> - <appender-ref ref="debug"/> - </logger> - - <!--nacos 心跳 INFO 屏蔽--> - <logger name="com.alibaba.nacos" level="OFF"> - <appender-ref ref="error"/> - </logger> - <!-- Level: FATAL 0 ERROR 3 WARN 4 INFO 6 DEBUG 7 --> - <root level="INFO"> - <appender-ref ref="console"/> - <appender-ref ref="debug"/> - </root> -</configuration> diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/static/index.html b/pigx-visual/pigx-tx-manager/src/main/resources/static/index.html deleted file mode 100644 index 2395aeb90..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/static/index.html +++ /dev/null @@ -1,139 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta charset="UTF-8"/> - <title>TxManager v4.1.0 - - - - - - - - - - - - -
- -

TxManagerV4.1.0 服务已启动

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
属性名称属性值
- Socket对外服务IP -
- Socket对外服务端口 -
- 最大连接数 -
- 当前连接数 -
- TxManager模块心跳间隔时间(秒) -
- TxManager模块通讯最大等待时间(秒) -
- redis服务状态 -
- redis存储最大时间(秒) -
- 负载均衡服务器地址 -
- 补偿回调地址(rest api 地址,post json格式) -
- 存在补偿数据 -
- 开启自动补偿(true 开启,false 关闭) -
- 补偿失败尝试间隔时间(秒) -
- 各事务模块自动补偿的时间上限(毫秒) -
- - - 在线模块 - 事务补偿 - -
- - - -
- - diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/static/log.html b/pigx-visual/pigx-tx-manager/src/main/resources/static/log.html deleted file mode 100644 index df2941ee7..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/static/log.html +++ /dev/null @@ -1,192 +0,0 @@ - - - - - 事务补偿 - - - - - - - - - - - - - - -
- - 返回首页 - -
- 说明:
- 补偿记录展示的数据是分布事务发起方的切面数据信息。
- 记录时间是指发起方出现补偿时记录下的时间,并非是TxManager的记录数据的时间。
-
- - - -
-
-
- - - - - - - - - - - - - - - - - -
模块名称条数
-
-
- -
-
- - - - - - - - - - - - - - -
记录日期
-
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - -
记录时间执行方法执行时间操作
-
-
-
- - - - - - - - - - - - -
- - diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/static/model.html b/pigx-visual/pigx-tx-manager/src/main/resources/static/model.html deleted file mode 100644 index fcd179c22..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/static/model.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - 在线模块 - - - - - - - - - - - - - - -
- - 返回首页 - - -
- - - - - - - - - - - - - - - - - - - - - - - -
模块名称唯一标示模块地址管道名称
-
- - - - -
- - diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.css b/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.css deleted file mode 100644 index f0087ab06..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.css +++ /dev/null @@ -1,650 +0,0 @@ -/*! - * Bootstrap v3.3.7 (http://getbootstrap.com) - * Copyright 2011-2016 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ -.btn-default, -.btn-primary, -.btn-success, -.btn-info, -.btn-warning, -.btn-danger { - text-shadow: 0 -1px 0 rgba(0, 0, 0, .2); - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); -} - -.btn-default:active, -.btn-primary:active, -.btn-success:active, -.btn-info:active, -.btn-warning:active, -.btn-danger:active, -.btn-default.active, -.btn-primary.active, -.btn-success.active, -.btn-info.active, -.btn-warning.active, -.btn-danger.active { - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); -} - -.btn-default.disabled, -.btn-primary.disabled, -.btn-success.disabled, -.btn-info.disabled, -.btn-warning.disabled, -.btn-danger.disabled, -.btn-default[disabled], -.btn-primary[disabled], -.btn-success[disabled], -.btn-info[disabled], -.btn-warning[disabled], -.btn-danger[disabled], -fieldset[disabled] .btn-default, -fieldset[disabled] .btn-primary, -fieldset[disabled] .btn-success, -fieldset[disabled] .btn-info, -fieldset[disabled] .btn-warning, -fieldset[disabled] .btn-danger { - -webkit-box-shadow: none; - box-shadow: none; -} - -.btn-default .badge, -.btn-primary .badge, -.btn-success .badge, -.btn-info .badge, -.btn-warning .badge, -.btn-danger .badge { - text-shadow: none; -} - -.btn:active, -.btn.active { - background-image: none; -} - -.btn-default { - text-shadow: 0 1px 0 #fff; - background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); - background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0)); - background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); - background-repeat: repeat-x; - border-color: #dbdbdb; - border-color: #ccc; -} - -.btn-default:hover, -.btn-default:focus { - background-color: #e0e0e0; - background-position: 0 -15px; -} - -.btn-default:active, -.btn-default.active { - background-color: #e0e0e0; - border-color: #dbdbdb; -} - -.btn-default.disabled, -.btn-default[disabled], -fieldset[disabled] .btn-default, -.btn-default.disabled:hover, -.btn-default[disabled]:hover, -fieldset[disabled] .btn-default:hover, -.btn-default.disabled:focus, -.btn-default[disabled]:focus, -fieldset[disabled] .btn-default:focus, -.btn-default.disabled.focus, -.btn-default[disabled].focus, -fieldset[disabled] .btn-default.focus, -.btn-default.disabled:active, -.btn-default[disabled]:active, -fieldset[disabled] .btn-default:active, -.btn-default.disabled.active, -.btn-default[disabled].active, -fieldset[disabled] .btn-default.active { - background-color: #e0e0e0; - background-image: none; -} - -.btn-primary { - background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88)); - background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); - background-repeat: repeat-x; - border-color: #245580; -} - -.btn-primary:hover, -.btn-primary:focus { - background-color: #265a88; - background-position: 0 -15px; -} - -.btn-primary:active, -.btn-primary.active { - background-color: #265a88; - border-color: #245580; -} - -.btn-primary.disabled, -.btn-primary[disabled], -fieldset[disabled] .btn-primary, -.btn-primary.disabled:hover, -.btn-primary[disabled]:hover, -fieldset[disabled] .btn-primary:hover, -.btn-primary.disabled:focus, -.btn-primary[disabled]:focus, -fieldset[disabled] .btn-primary:focus, -.btn-primary.disabled.focus, -.btn-primary[disabled].focus, -fieldset[disabled] .btn-primary.focus, -.btn-primary.disabled:active, -.btn-primary[disabled]:active, -fieldset[disabled] .btn-primary:active, -.btn-primary.disabled.active, -.btn-primary[disabled].active, -fieldset[disabled] .btn-primary.active { - background-color: #265a88; - background-image: none; -} - -.btn-success { - background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); - background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); - background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); - background-repeat: repeat-x; - border-color: #3e8f3e; -} - -.btn-success:hover, -.btn-success:focus { - background-color: #419641; - background-position: 0 -15px; -} - -.btn-success:active, -.btn-success.active { - background-color: #419641; - border-color: #3e8f3e; -} - -.btn-success.disabled, -.btn-success[disabled], -fieldset[disabled] .btn-success, -.btn-success.disabled:hover, -.btn-success[disabled]:hover, -fieldset[disabled] .btn-success:hover, -.btn-success.disabled:focus, -.btn-success[disabled]:focus, -fieldset[disabled] .btn-success:focus, -.btn-success.disabled.focus, -.btn-success[disabled].focus, -fieldset[disabled] .btn-success.focus, -.btn-success.disabled:active, -.btn-success[disabled]:active, -fieldset[disabled] .btn-success:active, -.btn-success.disabled.active, -.btn-success[disabled].active, -fieldset[disabled] .btn-success.active { - background-color: #419641; - background-image: none; -} - -.btn-info { - background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); - background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); - background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); - background-repeat: repeat-x; - border-color: #28a4c9; -} - -.btn-info:hover, -.btn-info:focus { - background-color: #2aabd2; - background-position: 0 -15px; -} - -.btn-info:active, -.btn-info.active { - background-color: #2aabd2; - border-color: #28a4c9; -} - -.btn-info.disabled, -.btn-info[disabled], -fieldset[disabled] .btn-info, -.btn-info.disabled:hover, -.btn-info[disabled]:hover, -fieldset[disabled] .btn-info:hover, -.btn-info.disabled:focus, -.btn-info[disabled]:focus, -fieldset[disabled] .btn-info:focus, -.btn-info.disabled.focus, -.btn-info[disabled].focus, -fieldset[disabled] .btn-info.focus, -.btn-info.disabled:active, -.btn-info[disabled]:active, -fieldset[disabled] .btn-info:active, -.btn-info.disabled.active, -.btn-info[disabled].active, -fieldset[disabled] .btn-info.active { - background-color: #2aabd2; - background-image: none; -} - -.btn-warning { - background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); - background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); - background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); - background-repeat: repeat-x; - border-color: #e38d13; -} - -.btn-warning:hover, -.btn-warning:focus { - background-color: #eb9316; - background-position: 0 -15px; -} - -.btn-warning:active, -.btn-warning.active { - background-color: #eb9316; - border-color: #e38d13; -} - -.btn-warning.disabled, -.btn-warning[disabled], -fieldset[disabled] .btn-warning, -.btn-warning.disabled:hover, -.btn-warning[disabled]:hover, -fieldset[disabled] .btn-warning:hover, -.btn-warning.disabled:focus, -.btn-warning[disabled]:focus, -fieldset[disabled] .btn-warning:focus, -.btn-warning.disabled.focus, -.btn-warning[disabled].focus, -fieldset[disabled] .btn-warning.focus, -.btn-warning.disabled:active, -.btn-warning[disabled]:active, -fieldset[disabled] .btn-warning:active, -.btn-warning.disabled.active, -.btn-warning[disabled].active, -fieldset[disabled] .btn-warning.active { - background-color: #eb9316; - background-image: none; -} - -.btn-danger { - background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); - background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); - background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); - background-repeat: repeat-x; - border-color: #b92c28; -} - -.btn-danger:hover, -.btn-danger:focus { - background-color: #c12e2a; - background-position: 0 -15px; -} - -.btn-danger:active, -.btn-danger.active { - background-color: #c12e2a; - border-color: #b92c28; -} - -.btn-danger.disabled, -.btn-danger[disabled], -fieldset[disabled] .btn-danger, -.btn-danger.disabled:hover, -.btn-danger[disabled]:hover, -fieldset[disabled] .btn-danger:hover, -.btn-danger.disabled:focus, -.btn-danger[disabled]:focus, -fieldset[disabled] .btn-danger:focus, -.btn-danger.disabled.focus, -.btn-danger[disabled].focus, -fieldset[disabled] .btn-danger.focus, -.btn-danger.disabled:active, -.btn-danger[disabled]:active, -fieldset[disabled] .btn-danger:active, -.btn-danger.disabled.active, -.btn-danger[disabled].active, -fieldset[disabled] .btn-danger.active { - background-color: #c12e2a; - background-image: none; -} - -.thumbnail, -.img-thumbnail { - -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); - box-shadow: 0 1px 2px rgba(0, 0, 0, .075); -} - -.dropdown-menu > li > a:hover, -.dropdown-menu > li > a:focus { - background-color: #e8e8e8; - background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); - background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); - background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); - background-repeat: repeat-x; -} - -.dropdown-menu > .active > a, -.dropdown-menu > .active > a:hover, -.dropdown-menu > .active > a:focus { - background-color: #2e6da4; - background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); - background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); - background-repeat: repeat-x; -} - -.navbar-default { - background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); - background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8)); - background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); - background-repeat: repeat-x; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); -} - -.navbar-default .navbar-nav > .open > a, -.navbar-default .navbar-nav > .active > a { - background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); - background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2)); - background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0); - background-repeat: repeat-x; - -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); - box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); -} - -.navbar-brand, -.navbar-nav > li > a { - text-shadow: 0 1px 0 rgba(255, 255, 255, .25); -} - -.navbar-inverse { - background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); - background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222)); - background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); - background-repeat: repeat-x; - border-radius: 4px; -} - -.navbar-inverse .navbar-nav > .open > a, -.navbar-inverse .navbar-nav > .active > a { - background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); - background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); - background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); - background-repeat: repeat-x; - -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); - box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); -} - -.navbar-inverse .navbar-brand, -.navbar-inverse .navbar-nav > li > a { - text-shadow: 0 -1px 0 rgba(0, 0, 0, .25); -} - -.navbar-static-top, -.navbar-fixed-top, -.navbar-fixed-bottom { - border-radius: 0; -} - -@media (max-width: 767px) { - .navbar .navbar-nav .open .dropdown-menu > .active > a, - .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, - .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #fff; - background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); - background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); - background-repeat: repeat-x; - } -} - -.alert { - text-shadow: 0 1px 0 rgba(255, 255, 255, .2); - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); -} - -.alert-success { - background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); - background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); - background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); - background-repeat: repeat-x; - border-color: #b2dba1; -} - -.alert-info { - background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); - background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); - background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); - background-repeat: repeat-x; - border-color: #9acfea; -} - -.alert-warning { - background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); - background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); - background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); - background-repeat: repeat-x; - border-color: #f5e79e; -} - -.alert-danger { - background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); - background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); - background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); - background-repeat: repeat-x; - border-color: #dca7a7; -} - -.progress { - background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); - background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); - background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); - background-repeat: repeat-x; -} - -.progress-bar { - background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090)); - background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0); - background-repeat: repeat-x; -} - -.progress-bar-success { - background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); - background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); - background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); - background-repeat: repeat-x; -} - -.progress-bar-info { - background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); - background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); - background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); - background-repeat: repeat-x; -} - -.progress-bar-warning { - background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); - background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); - background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); - background-repeat: repeat-x; -} - -.progress-bar-danger { - background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); - background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); - background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); - background-repeat: repeat-x; -} - -.progress-bar-striped { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -} - -.list-group { - border-radius: 4px; - -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); - box-shadow: 0 1px 2px rgba(0, 0, 0, .075); -} - -.list-group-item.active, -.list-group-item.active:hover, -.list-group-item.active:focus { - text-shadow: 0 -1px 0 #286090; - background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a)); - background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0); - background-repeat: repeat-x; - border-color: #2b669a; -} - -.list-group-item.active .badge, -.list-group-item.active:hover .badge, -.list-group-item.active:focus .badge { - text-shadow: none; -} - -.panel { - -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05); - box-shadow: 0 1px 2px rgba(0, 0, 0, .05); -} - -.panel-default > .panel-heading { - background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); - background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); - background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); - background-repeat: repeat-x; -} - -.panel-primary > .panel-heading { - background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); - background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); - background-repeat: repeat-x; -} - -.panel-success > .panel-heading { - background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); - background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); - background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); - background-repeat: repeat-x; -} - -.panel-info > .panel-heading { - background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); - background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); - background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); - background-repeat: repeat-x; -} - -.panel-warning > .panel-heading { - background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); - background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); - background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); - background-repeat: repeat-x; -} - -.panel-danger > .panel-heading { - background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); - background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); - background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); - background-repeat: repeat-x; -} - -.well { - background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); - background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); - background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); - background-repeat: repeat-x; - border-color: #dcdcdc; - -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); - box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); -} - -/*# sourceMappingURL=bootstrap-theme.css.map */ diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.css.map b/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.css.map deleted file mode 100644 index cda06aa4b..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.css.map +++ /dev/null @@ -1,20 +0,0 @@ -{ - "version": 3, - "sources": [ - "bootstrap-theme.css", - "less/theme.less", - "less/mixins/vendor-prefixes.less", - "less/mixins/gradients.less", - "less/mixins/reset-filter.less" - ], - "names": [], - "mappings": "AAAA;;;;GAIG;ACeH;;;;;;EAME,yCAAA;EC2CA,4FAAA;EACQ,oFAAA;CFvDT;ACgBC;;;;;;;;;;;;ECsCA,yDAAA;EACQ,iDAAA;CFxCT;ACMC;;;;;;;;;;;;;;;;;;ECiCA,yBAAA;EACQ,iBAAA;CFnBT;AC/BD;;;;;;EAuBI,kBAAA;CDgBH;ACyBC;;EAEE,uBAAA;CDvBH;AC4BD;EErEI,sEAAA;EACA,iEAAA;EACA,2FAAA;EAAA,oEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;EAuC2C,0BAAA;EAA2B,mBAAA;CDjBvE;ACpBC;;EAEE,0BAAA;EACA,6BAAA;CDsBH;ACnBC;;EAEE,0BAAA;EACA,sBAAA;CDqBH;ACfG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CD6BL;ACbD;EEtEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CD8DD;AC5DC;;EAEE,0BAAA;EACA,6BAAA;CD8DH;AC3DC;;EAEE,0BAAA;EACA,sBAAA;CD6DH;ACvDG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CDqEL;ACpDD;EEvEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CDsGD;ACpGC;;EAEE,0BAAA;EACA,6BAAA;CDsGH;ACnGC;;EAEE,0BAAA;EACA,sBAAA;CDqGH;AC/FG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CD6GL;AC3FD;EExEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CD8ID;AC5IC;;EAEE,0BAAA;EACA,6BAAA;CD8IH;AC3IC;;EAEE,0BAAA;EACA,sBAAA;CD6IH;ACvIG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CDqJL;AClID;EEzEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CDsLD;ACpLC;;EAEE,0BAAA;EACA,6BAAA;CDsLH;ACnLC;;EAEE,0BAAA;EACA,sBAAA;CDqLH;AC/KG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CD6LL;ACzKD;EE1EI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CD8ND;AC5NC;;EAEE,0BAAA;EACA,6BAAA;CD8NH;AC3NC;;EAEE,0BAAA;EACA,sBAAA;CD6NH;ACvNG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CDqOL;AC1MD;;EClCE,mDAAA;EACQ,2CAAA;CFgPT;ACrMD;;EE3FI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF0FF,0BAAA;CD2MD;ACzMD;;;EEhGI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EFgGF,0BAAA;CD+MD;ACtMD;EE7GI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;ECnBF,oEAAA;EH+HA,mBAAA;ECjEA,4FAAA;EACQ,oFAAA;CF8QT;ACjND;;EE7GI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;ED2CF,yDAAA;EACQ,iDAAA;CFwRT;AC9MD;;EAEE,+CAAA;CDgND;AC5MD;EEhII,sEAAA;EACA,iEAAA;EACA,2FAAA;EAAA,oEAAA;EACA,4BAAA;EACA,uHAAA;ECnBF,oEAAA;EHkJA,mBAAA;CDkND;ACrND;;EEhII,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;ED2CF,wDAAA;EACQ,gDAAA;CF+ST;AC/ND;;EAYI,0CAAA;CDuNH;AClND;;;EAGE,iBAAA;CDoND;AC/LD;EAfI;;;IAGE,YAAA;IE7JF,yEAAA;IACA,oEAAA;IACA,8FAAA;IAAA,uEAAA;IACA,4BAAA;IACA,uHAAA;GH+WD;CACF;AC3MD;EACE,8CAAA;EC3HA,2FAAA;EACQ,mFAAA;CFyUT;ACnMD;EEtLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CD+MD;AC1MD;EEvLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CDuND;ACjND;EExLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CD+ND;ACxND;EEzLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CDuOD;ACxND;EEjMI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH4ZH;ACrND;EE3MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHmaH;AC3ND;EE5MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH0aH;ACjOD;EE7MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHibH;ACvOD;EE9MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHwbH;AC7OD;EE/MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH+bH;AChPD;EElLI,8MAAA;EACA,yMAAA;EACA,sMAAA;CHqaH;AC5OD;EACE,mBAAA;EC9KA,mDAAA;EACQ,2CAAA;CF6ZT;AC7OD;;;EAGE,8BAAA;EEnOE,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EFiOF,sBAAA;CDmPD;ACxPD;;;EAQI,kBAAA;CDqPH;AC3OD;ECnME,kDAAA;EACQ,0CAAA;CFibT;ACrOD;EE5PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHoeH;AC3OD;EE7PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH2eH;ACjPD;EE9PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHkfH;ACvPD;EE/PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHyfH;AC7PD;EEhQI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHggBH;ACnQD;EEjQI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHugBH;ACnQD;EExQI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EFsQF,sBAAA;EC3NA,0FAAA;EACQ,kFAAA;CFqeT", - "file": "bootstrap-theme.css", - "sourcesContent": [ - "/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-default.disabled,\n.btn-primary.disabled,\n.btn-success.disabled,\n.btn-info.disabled,\n.btn-warning.disabled,\n.btn-danger.disabled,\n.btn-default[disabled],\n.btn-primary[disabled],\n.btn-success[disabled],\n.btn-info[disabled],\n.btn-warning[disabled],\n.btn-danger[disabled],\nfieldset[disabled] .btn-default,\nfieldset[disabled] .btn-primary,\nfieldset[disabled] .btn-success,\nfieldset[disabled] .btn-info,\nfieldset[disabled] .btn-warning,\nfieldset[disabled] .btn-danger {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-default .badge,\n.btn-primary .badge,\n.btn-success .badge,\n.btn-info .badge,\n.btn-warning .badge,\n.btn-danger .badge {\n text-shadow: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n}\n.btn-default {\n background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #dbdbdb;\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-default:hover,\n.btn-default:focus {\n background-color: #e0e0e0;\n background-position: 0 -15px;\n}\n.btn-default:active,\n.btn-default.active {\n background-color: #e0e0e0;\n border-color: #dbdbdb;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #e0e0e0;\n background-image: none;\n}\n.btn-primary {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #245580;\n}\n.btn-primary:hover,\n.btn-primary:focus {\n background-color: #265a88;\n background-position: 0 -15px;\n}\n.btn-primary:active,\n.btn-primary.active {\n background-color: #265a88;\n border-color: #245580;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #265a88;\n background-image: none;\n}\n.btn-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #3e8f3e;\n}\n.btn-success:hover,\n.btn-success:focus {\n background-color: #419641;\n background-position: 0 -15px;\n}\n.btn-success:active,\n.btn-success.active {\n background-color: #419641;\n border-color: #3e8f3e;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #419641;\n background-image: none;\n}\n.btn-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #28a4c9;\n}\n.btn-info:hover,\n.btn-info:focus {\n background-color: #2aabd2;\n background-position: 0 -15px;\n}\n.btn-info:active,\n.btn-info.active {\n background-color: #2aabd2;\n border-color: #28a4c9;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #2aabd2;\n background-image: none;\n}\n.btn-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #e38d13;\n}\n.btn-warning:hover,\n.btn-warning:focus {\n background-color: #eb9316;\n background-position: 0 -15px;\n}\n.btn-warning:active,\n.btn-warning.active {\n background-color: #eb9316;\n border-color: #e38d13;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #eb9316;\n background-image: none;\n}\n.btn-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #b92c28;\n}\n.btn-danger:hover,\n.btn-danger:focus {\n background-color: #c12e2a;\n background-position: 0 -15px;\n}\n.btn-danger:active,\n.btn-danger.active {\n background-color: #c12e2a;\n border-color: #b92c28;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #c12e2a;\n background-image: none;\n}\n.thumbnail,\n.img-thumbnail {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-color: #e8e8e8;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-color: #2e6da4;\n}\n.navbar-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n.navbar-inverse {\n background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n}\n.navbar-inverse .navbar-brand,\n.navbar-inverse .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n@media (max-width: 767px) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n }\n}\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.alert-success {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);\n border-color: #b2dba1;\n}\n.alert-info {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);\n border-color: #9acfea;\n}\n.alert-warning {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);\n border-color: #f5e79e;\n}\n.alert-danger {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);\n border-color: #dca7a7;\n}\n.progress {\n background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);\n}\n.progress-bar {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);\n}\n.progress-bar-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);\n}\n.progress-bar-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);\n}\n.progress-bar-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);\n}\n.progress-bar-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);\n}\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.list-group {\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 #286090;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);\n border-color: #2b669a;\n}\n.list-group-item.active .badge,\n.list-group-item.active:hover .badge,\n.list-group-item.active:focus .badge {\n text-shadow: none;\n}\n.panel {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.panel-default > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n}\n.panel-primary > .panel-heading {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n}\n.panel-success > .panel-heading {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);\n}\n.panel-info > .panel-heading {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);\n}\n.panel-warning > .panel-heading {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);\n}\n.panel-danger > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);\n}\n.well {\n background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);\n border-color: #dcdcdc;\n -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n}\n/*# sourceMappingURL=bootstrap-theme.css.map */", - "/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n", - "// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n", - "// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n", - "// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n" - ] -} \ No newline at end of file diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.min.css b/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.min.css deleted file mode 100644 index 5e3940195..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.min.css +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * Bootstrap v3.3.7 (http://getbootstrap.com) - * Copyright 2011-2016 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-color:#2e6da4;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)} -/*# sourceMappingURL=bootstrap-theme.min.css.map */ \ No newline at end of file diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.min.css.map b/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.min.css.map deleted file mode 100644 index c7cb37cb6..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap-theme.min.css.map +++ /dev/null @@ -1,17 +0,0 @@ -{ - "version": 3, - "sources": [ - "less/theme.less", - "less/mixins/vendor-prefixes.less", - "less/mixins/gradients.less", - "less/mixins/reset-filter.less" - ], - "names": [], - "mappings": ";;;;AAmBA,YAAA,aAAA,UAAA,aAAA,aAAA,aAME,YAAA,EAAA,KAAA,EAAA,eC2CA,mBAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBDvCR,mBAAA,mBAAA,oBAAA,oBAAA,iBAAA,iBAAA,oBAAA,oBAAA,oBAAA,oBAAA,oBAAA,oBCsCA,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBDlCR,qBAAA,sBAAA,sBAAA,uBAAA,mBAAA,oBAAA,sBAAA,uBAAA,sBAAA,uBAAA,sBAAA,uBAAA,+BAAA,gCAAA,6BAAA,gCAAA,gCAAA,gCCiCA,mBAAA,KACQ,WAAA,KDlDV,mBAAA,oBAAA,iBAAA,oBAAA,oBAAA,oBAuBI,YAAA,KAyCF,YAAA,YAEE,iBAAA,KAKJ,aErEI,YAAA,EAAA,IAAA,EAAA,KACA,iBAAA,iDACA,iBAAA,4CAAA,iBAAA,qEAEA,iBAAA,+CCnBF,OAAA,+GH4CA,OAAA,0DACA,kBAAA,SAuC2C,aAAA,QAA2B,aAAA,KArCtE,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAgBN,aEtEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAiBN,aEvEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAkBN,UExEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,gBAAA,gBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,iBAAA,iBAEE,iBAAA,QACA,aAAA,QAMA,mBAAA,0BAAA,yBAAA,0BAAA,yBAAA,yBAAA,oBAAA,2BAAA,0BAAA,2BAAA,0BAAA,0BAAA,6BAAA,oCAAA,mCAAA,oCAAA,mCAAA,mCAME,iBAAA,QACA,iBAAA,KAmBN,aEzEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAoBN,YE1EI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,kBAAA,kBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,mBAAA,mBAEE,iBAAA,QACA,aAAA,QAMA,qBAAA,4BAAA,2BAAA,4BAAA,2BAAA,2BAAA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,+BAAA,sCAAA,qCAAA,sCAAA,qCAAA,qCAME,iBAAA,QACA,iBAAA,KA2BN,eAAA,WClCE,mBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,EAAA,IAAA,IAAA,iBD2CV,0BAAA,0BE3FI,iBAAA,QACA,iBAAA,oDACA,iBAAA,+CAAA,iBAAA,wEACA,iBAAA,kDACA,OAAA,+GF0FF,kBAAA,SAEF,yBAAA,+BAAA,+BEhGI,iBAAA,QACA,iBAAA,oDACA,iBAAA,+CAAA,iBAAA,wEACA,iBAAA,kDACA,OAAA,+GFgGF,kBAAA,SASF,gBE7GI,iBAAA,iDACA,iBAAA,4CACA,iBAAA,qEAAA,iBAAA,+CACA,OAAA,+GACA,OAAA,0DCnBF,kBAAA,SH+HA,cAAA,ICjEA,mBAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBD6DV,sCAAA,oCE7GI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SD2CF,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBD0EV,cAAA,iBAEE,YAAA,EAAA,IAAA,EAAA,sBAIF,gBEhII,iBAAA,iDACA,iBAAA,4CACA,iBAAA,qEAAA,iBAAA,+CACA,OAAA,+GACA,OAAA,0DCnBF,kBAAA,SHkJA,cAAA,IAHF,sCAAA,oCEhII,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SD2CF,mBAAA,MAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBDgFV,8BAAA,iCAYI,YAAA,EAAA,KAAA,EAAA,gBAKJ,qBAAA,kBAAA,mBAGE,cAAA,EAqBF,yBAfI,mDAAA,yDAAA,yDAGE,MAAA,KE7JF,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,UFqKJ,OACE,YAAA,EAAA,IAAA,EAAA,qBC3HA,mBAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,gBDsIV,eEtLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAKF,YEvLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAMF,eExLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAOF,cEzLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAeF,UEjMI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFuMJ,cE3MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFwMJ,sBE5MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFyMJ,mBE7MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF0MJ,sBE9MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF2MJ,qBE/MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF+MJ,sBElLI,iBAAA,yKACA,iBAAA,oKACA,iBAAA,iKFyLJ,YACE,cAAA,IC9KA,mBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,EAAA,IAAA,IAAA,iBDgLV,wBAAA,8BAAA,8BAGE,YAAA,EAAA,KAAA,EAAA,QEnOE,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFiOF,aAAA,QALF,+BAAA,qCAAA,qCAQI,YAAA,KAUJ,OCnME,mBAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,EAAA,IAAA,IAAA,gBD4MV,8BE5PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFyPJ,8BE7PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF0PJ,8BE9PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF2PJ,2BE/PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF4PJ,8BEhQI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF6PJ,6BEjQI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFoQJ,MExQI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFsQF,aAAA,QC3NA,mBAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,EAAA,IAAA,EAAA,qBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,EAAA,IAAA,EAAA", - "sourcesContent": [ - "/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n", - "// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n", - "// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n", - "// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n" - ] -} \ No newline at end of file diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap.css b/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap.css deleted file mode 100644 index 8e678d7d8..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap.css +++ /dev/null @@ -1,8198 +0,0 @@ -/*! - * Bootstrap v3.3.7 (http://getbootstrap.com) - * Copyright 2011-2016 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ -html { - font-family: sans-serif; - -webkit-text-size-adjust: 100%; - -ms-text-size-adjust: 100%; -} - -body { - margin: 0; -} - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} - -audio, -canvas, -progress, -video { - display: inline-block; - vertical-align: baseline; -} - -audio:not([controls]) { - display: none; - height: 0; -} - -[hidden], -template { - display: none; -} - -a { - background-color: transparent; -} - -a:active, -a:hover { - outline: 0; -} - -abbr[title] { - border-bottom: 1px dotted; -} - -b, -strong { - font-weight: bold; -} - -dfn { - font-style: italic; -} - -h1 { - margin: .67em 0; - font-size: 2em; -} - -mark { - color: #000; - background: #ff0; -} - -small { - font-size: 80%; -} - -sub, -sup { - position: relative; - font-size: 75%; - line-height: 0; - vertical-align: baseline; -} - -sup { - top: -.5em; -} - -sub { - bottom: -.25em; -} - -img { - border: 0; -} - -svg:not(:root) { - overflow: hidden; -} - -figure { - margin: 1em 40px; -} - -hr { - height: 0; - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; -} - -pre { - overflow: auto; -} - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -button, -input, -optgroup, -select, -textarea { - margin: 0; - font: inherit; - color: inherit; -} - -button { - overflow: visible; -} - -button, -select { - text-transform: none; -} - -button, -html input[type="button"], -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; - cursor: pointer; -} - -button[disabled], -html input[disabled] { - cursor: default; -} - -button::-moz-focus-inner, -input::-moz-focus-inner { - padding: 0; - border: 0; -} - -input { - line-height: normal; -} - -input[type="checkbox"], -input[type="radio"] { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; - padding: 0; -} - -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -input[type="search"] { - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; - -webkit-appearance: textfield; -} - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -fieldset { - padding: .35em .625em .75em; - margin: 0 2px; - border: 1px solid #c0c0c0; -} - -legend { - padding: 0; - border: 0; -} - -textarea { - overflow: auto; -} - -optgroup { - font-weight: bold; -} - -table { - border-spacing: 0; - border-collapse: collapse; -} - -td, -th { - padding: 0; -} - -/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ -@media print { - *, - *:before, - *:after { - color: #000 !important; - text-shadow: none !important; - background: transparent !important; - -webkit-box-shadow: none !important; - box-shadow: none !important; - } - - a, - a:visited { - text-decoration: underline; - } - - a[href]:after { - content: " (" attr(href) ")"; - } - - abbr[title]:after { - content: " (" attr(title) ")"; - } - - a[href^="#"]:after, - a[href^="javascript:"]:after { - content: ""; - } - - pre, - blockquote { - border: 1px solid #999; - - page-break-inside: avoid; - } - - thead { - display: table-header-group; - } - - tr, - img { - page-break-inside: avoid; - } - - img { - max-width: 100% !important; - } - - p, - h2, - h3 { - orphans: 3; - widows: 3; - } - - h2, - h3 { - page-break-after: avoid; - } - - .navbar { - display: none; - } - - .btn > .caret, - .dropup > .btn > .caret { - border-top-color: #000 !important; - } - - .label { - border: 1px solid #000; - } - - .table { - border-collapse: collapse !important; - } - - .table td, - .table th { - background-color: #fff !important; - } - - .table-bordered th, - .table-bordered td { - border: 1px solid #ddd !important; - } -} - -@font-face { - font-family: 'Glyphicons Halflings'; - - src: url('../fonts/glyphicons-halflings-regular.eot'); - src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); -} - -.glyphicon { - position: relative; - top: 1px; - display: inline-block; - font-family: 'Glyphicons Halflings'; - font-style: normal; - font-weight: normal; - line-height: 1; - - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -.glyphicon-asterisk:before { - content: "\002a"; -} - -.glyphicon-plus:before { - content: "\002b"; -} - -.glyphicon-euro:before, -.glyphicon-eur:before { - content: "\20ac"; -} - -.glyphicon-minus:before { - content: "\2212"; -} - -.glyphicon-cloud:before { - content: "\2601"; -} - -.glyphicon-envelope:before { - content: "\2709"; -} - -.glyphicon-pencil:before { - content: "\270f"; -} - -.glyphicon-glass:before { - content: "\e001"; -} - -.glyphicon-music:before { - content: "\e002"; -} - -.glyphicon-search:before { - content: "\e003"; -} - -.glyphicon-heart:before { - content: "\e005"; -} - -.glyphicon-star:before { - content: "\e006"; -} - -.glyphicon-star-empty:before { - content: "\e007"; -} - -.glyphicon-user:before { - content: "\e008"; -} - -.glyphicon-film:before { - content: "\e009"; -} - -.glyphicon-th-large:before { - content: "\e010"; -} - -.glyphicon-th:before { - content: "\e011"; -} - -.glyphicon-th-list:before { - content: "\e012"; -} - -.glyphicon-ok:before { - content: "\e013"; -} - -.glyphicon-remove:before { - content: "\e014"; -} - -.glyphicon-zoom-in:before { - content: "\e015"; -} - -.glyphicon-zoom-out:before { - content: "\e016"; -} - -.glyphicon-off:before { - content: "\e017"; -} - -.glyphicon-signal:before { - content: "\e018"; -} - -.glyphicon-cog:before { - content: "\e019"; -} - -.glyphicon-trash:before { - content: "\e020"; -} - -.glyphicon-home:before { - content: "\e021"; -} - -.glyphicon-file:before { - content: "\e022"; -} - -.glyphicon-time:before { - content: "\e023"; -} - -.glyphicon-road:before { - content: "\e024"; -} - -.glyphicon-download-alt:before { - content: "\e025"; -} - -.glyphicon-download:before { - content: "\e026"; -} - -.glyphicon-upload:before { - content: "\e027"; -} - -.glyphicon-inbox:before { - content: "\e028"; -} - -.glyphicon-play-circle:before { - content: "\e029"; -} - -.glyphicon-repeat:before { - content: "\e030"; -} - -.glyphicon-refresh:before { - content: "\e031"; -} - -.glyphicon-list-alt:before { - content: "\e032"; -} - -.glyphicon-lock:before { - content: "\e033"; -} - -.glyphicon-flag:before { - content: "\e034"; -} - -.glyphicon-headphones:before { - content: "\e035"; -} - -.glyphicon-volume-off:before { - content: "\e036"; -} - -.glyphicon-volume-down:before { - content: "\e037"; -} - -.glyphicon-volume-up:before { - content: "\e038"; -} - -.glyphicon-qrcode:before { - content: "\e039"; -} - -.glyphicon-barcode:before { - content: "\e040"; -} - -.glyphicon-tag:before { - content: "\e041"; -} - -.glyphicon-tags:before { - content: "\e042"; -} - -.glyphicon-book:before { - content: "\e043"; -} - -.glyphicon-bookmark:before { - content: "\e044"; -} - -.glyphicon-print:before { - content: "\e045"; -} - -.glyphicon-camera:before { - content: "\e046"; -} - -.glyphicon-font:before { - content: "\e047"; -} - -.glyphicon-bold:before { - content: "\e048"; -} - -.glyphicon-italic:before { - content: "\e049"; -} - -.glyphicon-text-height:before { - content: "\e050"; -} - -.glyphicon-text-width:before { - content: "\e051"; -} - -.glyphicon-align-left:before { - content: "\e052"; -} - -.glyphicon-align-center:before { - content: "\e053"; -} - -.glyphicon-align-right:before { - content: "\e054"; -} - -.glyphicon-align-justify:before { - content: "\e055"; -} - -.glyphicon-list:before { - content: "\e056"; -} - -.glyphicon-indent-left:before { - content: "\e057"; -} - -.glyphicon-indent-right:before { - content: "\e058"; -} - -.glyphicon-facetime-video:before { - content: "\e059"; -} - -.glyphicon-picture:before { - content: "\e060"; -} - -.glyphicon-map-marker:before { - content: "\e062"; -} - -.glyphicon-adjust:before { - content: "\e063"; -} - -.glyphicon-tint:before { - content: "\e064"; -} - -.glyphicon-edit:before { - content: "\e065"; -} - -.glyphicon-share:before { - content: "\e066"; -} - -.glyphicon-check:before { - content: "\e067"; -} - -.glyphicon-move:before { - content: "\e068"; -} - -.glyphicon-step-backward:before { - content: "\e069"; -} - -.glyphicon-fast-backward:before { - content: "\e070"; -} - -.glyphicon-backward:before { - content: "\e071"; -} - -.glyphicon-play:before { - content: "\e072"; -} - -.glyphicon-pause:before { - content: "\e073"; -} - -.glyphicon-stop:before { - content: "\e074"; -} - -.glyphicon-forward:before { - content: "\e075"; -} - -.glyphicon-fast-forward:before { - content: "\e076"; -} - -.glyphicon-step-forward:before { - content: "\e077"; -} - -.glyphicon-eject:before { - content: "\e078"; -} - -.glyphicon-chevron-left:before { - content: "\e079"; -} - -.glyphicon-chevron-right:before { - content: "\e080"; -} - -.glyphicon-plus-sign:before { - content: "\e081"; -} - -.glyphicon-minus-sign:before { - content: "\e082"; -} - -.glyphicon-remove-sign:before { - content: "\e083"; -} - -.glyphicon-ok-sign:before { - content: "\e084"; -} - -.glyphicon-question-sign:before { - content: "\e085"; -} - -.glyphicon-info-sign:before { - content: "\e086"; -} - -.glyphicon-screenshot:before { - content: "\e087"; -} - -.glyphicon-remove-circle:before { - content: "\e088"; -} - -.glyphicon-ok-circle:before { - content: "\e089"; -} - -.glyphicon-ban-circle:before { - content: "\e090"; -} - -.glyphicon-arrow-left:before { - content: "\e091"; -} - -.glyphicon-arrow-right:before { - content: "\e092"; -} - -.glyphicon-arrow-up:before { - content: "\e093"; -} - -.glyphicon-arrow-down:before { - content: "\e094"; -} - -.glyphicon-share-alt:before { - content: "\e095"; -} - -.glyphicon-resize-full:before { - content: "\e096"; -} - -.glyphicon-resize-small:before { - content: "\e097"; -} - -.glyphicon-exclamation-sign:before { - content: "\e101"; -} - -.glyphicon-gift:before { - content: "\e102"; -} - -.glyphicon-leaf:before { - content: "\e103"; -} - -.glyphicon-fire:before { - content: "\e104"; -} - -.glyphicon-eye-open:before { - content: "\e105"; -} - -.glyphicon-eye-close:before { - content: "\e106"; -} - -.glyphicon-warning-sign:before { - content: "\e107"; -} - -.glyphicon-plane:before { - content: "\e108"; -} - -.glyphicon-calendar:before { - content: "\e109"; -} - -.glyphicon-random:before { - content: "\e110"; -} - -.glyphicon-comment:before { - content: "\e111"; -} - -.glyphicon-magnet:before { - content: "\e112"; -} - -.glyphicon-chevron-up:before { - content: "\e113"; -} - -.glyphicon-chevron-down:before { - content: "\e114"; -} - -.glyphicon-retweet:before { - content: "\e115"; -} - -.glyphicon-shopping-cart:before { - content: "\e116"; -} - -.glyphicon-folder-close:before { - content: "\e117"; -} - -.glyphicon-folder-open:before { - content: "\e118"; -} - -.glyphicon-resize-vertical:before { - content: "\e119"; -} - -.glyphicon-resize-horizontal:before { - content: "\e120"; -} - -.glyphicon-hdd:before { - content: "\e121"; -} - -.glyphicon-bullhorn:before { - content: "\e122"; -} - -.glyphicon-bell:before { - content: "\e123"; -} - -.glyphicon-certificate:before { - content: "\e124"; -} - -.glyphicon-thumbs-up:before { - content: "\e125"; -} - -.glyphicon-thumbs-down:before { - content: "\e126"; -} - -.glyphicon-hand-right:before { - content: "\e127"; -} - -.glyphicon-hand-left:before { - content: "\e128"; -} - -.glyphicon-hand-up:before { - content: "\e129"; -} - -.glyphicon-hand-down:before { - content: "\e130"; -} - -.glyphicon-circle-arrow-right:before { - content: "\e131"; -} - -.glyphicon-circle-arrow-left:before { - content: "\e132"; -} - -.glyphicon-circle-arrow-up:before { - content: "\e133"; -} - -.glyphicon-circle-arrow-down:before { - content: "\e134"; -} - -.glyphicon-globe:before { - content: "\e135"; -} - -.glyphicon-wrench:before { - content: "\e136"; -} - -.glyphicon-tasks:before { - content: "\e137"; -} - -.glyphicon-filter:before { - content: "\e138"; -} - -.glyphicon-briefcase:before { - content: "\e139"; -} - -.glyphicon-fullscreen:before { - content: "\e140"; -} - -.glyphicon-dashboard:before { - content: "\e141"; -} - -.glyphicon-paperclip:before { - content: "\e142"; -} - -.glyphicon-heart-empty:before { - content: "\e143"; -} - -.glyphicon-link:before { - content: "\e144"; -} - -.glyphicon-phone:before { - content: "\e145"; -} - -.glyphicon-pushpin:before { - content: "\e146"; -} - -.glyphicon-usd:before { - content: "\e148"; -} - -.glyphicon-gbp:before { - content: "\e149"; -} - -.glyphicon-sort:before { - content: "\e150"; -} - -.glyphicon-sort-by-alphabet:before { - content: "\e151"; -} - -.glyphicon-sort-by-alphabet-alt:before { - content: "\e152"; -} - -.glyphicon-sort-by-order:before { - content: "\e153"; -} - -.glyphicon-sort-by-order-alt:before { - content: "\e154"; -} - -.glyphicon-sort-by-attributes:before { - content: "\e155"; -} - -.glyphicon-sort-by-attributes-alt:before { - content: "\e156"; -} - -.glyphicon-unchecked:before { - content: "\e157"; -} - -.glyphicon-expand:before { - content: "\e158"; -} - -.glyphicon-collapse-down:before { - content: "\e159"; -} - -.glyphicon-collapse-up:before { - content: "\e160"; -} - -.glyphicon-log-in:before { - content: "\e161"; -} - -.glyphicon-flash:before { - content: "\e162"; -} - -.glyphicon-log-out:before { - content: "\e163"; -} - -.glyphicon-new-window:before { - content: "\e164"; -} - -.glyphicon-record:before { - content: "\e165"; -} - -.glyphicon-save:before { - content: "\e166"; -} - -.glyphicon-open:before { - content: "\e167"; -} - -.glyphicon-saved:before { - content: "\e168"; -} - -.glyphicon-import:before { - content: "\e169"; -} - -.glyphicon-export:before { - content: "\e170"; -} - -.glyphicon-send:before { - content: "\e171"; -} - -.glyphicon-floppy-disk:before { - content: "\e172"; -} - -.glyphicon-floppy-saved:before { - content: "\e173"; -} - -.glyphicon-floppy-remove:before { - content: "\e174"; -} - -.glyphicon-floppy-save:before { - content: "\e175"; -} - -.glyphicon-floppy-open:before { - content: "\e176"; -} - -.glyphicon-credit-card:before { - content: "\e177"; -} - -.glyphicon-transfer:before { - content: "\e178"; -} - -.glyphicon-cutlery:before { - content: "\e179"; -} - -.glyphicon-header:before { - content: "\e180"; -} - -.glyphicon-compressed:before { - content: "\e181"; -} - -.glyphicon-earphone:before { - content: "\e182"; -} - -.glyphicon-phone-alt:before { - content: "\e183"; -} - -.glyphicon-tower:before { - content: "\e184"; -} - -.glyphicon-stats:before { - content: "\e185"; -} - -.glyphicon-sd-video:before { - content: "\e186"; -} - -.glyphicon-hd-video:before { - content: "\e187"; -} - -.glyphicon-subtitles:before { - content: "\e188"; -} - -.glyphicon-sound-stereo:before { - content: "\e189"; -} - -.glyphicon-sound-dolby:before { - content: "\e190"; -} - -.glyphicon-sound-5-1:before { - content: "\e191"; -} - -.glyphicon-sound-6-1:before { - content: "\e192"; -} - -.glyphicon-sound-7-1:before { - content: "\e193"; -} - -.glyphicon-copyright-mark:before { - content: "\e194"; -} - -.glyphicon-registration-mark:before { - content: "\e195"; -} - -.glyphicon-cloud-download:before { - content: "\e197"; -} - -.glyphicon-cloud-upload:before { - content: "\e198"; -} - -.glyphicon-tree-conifer:before { - content: "\e199"; -} - -.glyphicon-tree-deciduous:before { - content: "\e200"; -} - -.glyphicon-cd:before { - content: "\e201"; -} - -.glyphicon-save-file:before { - content: "\e202"; -} - -.glyphicon-open-file:before { - content: "\e203"; -} - -.glyphicon-level-up:before { - content: "\e204"; -} - -.glyphicon-copy:before { - content: "\e205"; -} - -.glyphicon-paste:before { - content: "\e206"; -} - -.glyphicon-alert:before { - content: "\e209"; -} - -.glyphicon-equalizer:before { - content: "\e210"; -} - -.glyphicon-king:before { - content: "\e211"; -} - -.glyphicon-queen:before { - content: "\e212"; -} - -.glyphicon-pawn:before { - content: "\e213"; -} - -.glyphicon-bishop:before { - content: "\e214"; -} - -.glyphicon-knight:before { - content: "\e215"; -} - -.glyphicon-baby-formula:before { - content: "\e216"; -} - -.glyphicon-tent:before { - content: "\26fa"; -} - -.glyphicon-blackboard:before { - content: "\e218"; -} - -.glyphicon-bed:before { - content: "\e219"; -} - -.glyphicon-apple:before { - content: "\f8ff"; -} - -.glyphicon-erase:before { - content: "\e221"; -} - -.glyphicon-hourglass:before { - content: "\231b"; -} - -.glyphicon-lamp:before { - content: "\e223"; -} - -.glyphicon-duplicate:before { - content: "\e224"; -} - -.glyphicon-piggy-bank:before { - content: "\e225"; -} - -.glyphicon-scissors:before { - content: "\e226"; -} - -.glyphicon-bitcoin:before { - content: "\e227"; -} - -.glyphicon-btc:before { - content: "\e227"; -} - -.glyphicon-xbt:before { - content: "\e227"; -} - -.glyphicon-yen:before { - content: "\00a5"; -} - -.glyphicon-jpy:before { - content: "\00a5"; -} - -.glyphicon-ruble:before { - content: "\20bd"; -} - -.glyphicon-rub:before { - content: "\20bd"; -} - -.glyphicon-scale:before { - content: "\e230"; -} - -.glyphicon-ice-lolly:before { - content: "\e231"; -} - -.glyphicon-ice-lolly-tasted:before { - content: "\e232"; -} - -.glyphicon-education:before { - content: "\e233"; -} - -.glyphicon-option-horizontal:before { - content: "\e234"; -} - -.glyphicon-option-vertical:before { - content: "\e235"; -} - -.glyphicon-menu-hamburger:before { - content: "\e236"; -} - -.glyphicon-modal-window:before { - content: "\e237"; -} - -.glyphicon-oil:before { - content: "\e238"; -} - -.glyphicon-grain:before { - content: "\e239"; -} - -.glyphicon-sunglasses:before { - content: "\e240"; -} - -.glyphicon-text-size:before { - content: "\e241"; -} - -.glyphicon-text-color:before { - content: "\e242"; -} - -.glyphicon-text-background:before { - content: "\e243"; -} - -.glyphicon-object-align-top:before { - content: "\e244"; -} - -.glyphicon-object-align-bottom:before { - content: "\e245"; -} - -.glyphicon-object-align-horizontal:before { - content: "\e246"; -} - -.glyphicon-object-align-left:before { - content: "\e247"; -} - -.glyphicon-object-align-vertical:before { - content: "\e248"; -} - -.glyphicon-object-align-right:before { - content: "\e249"; -} - -.glyphicon-triangle-right:before { - content: "\e250"; -} - -.glyphicon-triangle-left:before { - content: "\e251"; -} - -.glyphicon-triangle-bottom:before { - content: "\e252"; -} - -.glyphicon-triangle-top:before { - content: "\e253"; -} - -.glyphicon-console:before { - content: "\e254"; -} - -.glyphicon-superscript:before { - content: "\e255"; -} - -.glyphicon-subscript:before { - content: "\e256"; -} - -.glyphicon-menu-left:before { - content: "\e257"; -} - -.glyphicon-menu-right:before { - content: "\e258"; -} - -.glyphicon-menu-down:before { - content: "\e259"; -} - -.glyphicon-menu-up:before { - content: "\e260"; -} - -* { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} - -*:before, -*:after { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} - -html { - font-size: 10px; - - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -} - -body { - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 14px; - line-height: 1.42857143; - color: #333; - background-color: #fff; -} - -input, -button, -select, -textarea { - font-family: inherit; - font-size: inherit; - line-height: inherit; -} - -a { - color: #337ab7; - text-decoration: none; -} - -a:hover, -a:focus { - color: #23527c; - text-decoration: underline; -} - -a:focus { - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} - -figure { - margin: 0; -} - -img { - vertical-align: middle; -} - -.img-responsive, -.thumbnail > img, -.thumbnail a > img, -.carousel-inner > .item > img, -.carousel-inner > .item > a > img { - display: block; - max-width: 100%; - height: auto; -} - -.img-rounded { - border-radius: 6px; -} - -.img-thumbnail { - display: inline-block; - max-width: 100%; - height: auto; - padding: 4px; - line-height: 1.42857143; - background-color: #fff; - border: 1px solid #ddd; - border-radius: 4px; - -webkit-transition: all .2s ease-in-out; - -o-transition: all .2s ease-in-out; - transition: all .2s ease-in-out; -} - -.img-circle { - border-radius: 50%; -} - -hr { - margin-top: 20px; - margin-bottom: 20px; - border: 0; - border-top: 1px solid #eee; -} - -.sr-only { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip: rect(0, 0, 0, 0); - border: 0; -} - -.sr-only-focusable:active, -.sr-only-focusable:focus { - position: static; - width: auto; - height: auto; - margin: 0; - overflow: visible; - clip: auto; -} - -[role="button"] { - cursor: pointer; -} - -h1, -h2, -h3, -h4, -h5, -h6, -.h1, -.h2, -.h3, -.h4, -.h5, -.h6 { - font-family: inherit; - font-weight: 500; - line-height: 1.1; - color: inherit; -} - -h1 small, -h2 small, -h3 small, -h4 small, -h5 small, -h6 small, -.h1 small, -.h2 small, -.h3 small, -.h4 small, -.h5 small, -.h6 small, -h1 .small, -h2 .small, -h3 .small, -h4 .small, -h5 .small, -h6 .small, -.h1 .small, -.h2 .small, -.h3 .small, -.h4 .small, -.h5 .small, -.h6 .small { - font-weight: normal; - line-height: 1; - color: #777; -} - -h1, -.h1, -h2, -.h2, -h3, -.h3 { - margin-top: 20px; - margin-bottom: 10px; -} - -h1 small, -.h1 small, -h2 small, -.h2 small, -h3 small, -.h3 small, -h1 .small, -.h1 .small, -h2 .small, -.h2 .small, -h3 .small, -.h3 .small { - font-size: 65%; -} - -h4, -.h4, -h5, -.h5, -h6, -.h6 { - margin-top: 10px; - margin-bottom: 10px; -} - -h4 small, -.h4 small, -h5 small, -.h5 small, -h6 small, -.h6 small, -h4 .small, -.h4 .small, -h5 .small, -.h5 .small, -h6 .small, -.h6 .small { - font-size: 75%; -} - -h1, -.h1 { - font-size: 36px; -} - -h2, -.h2 { - font-size: 30px; -} - -h3, -.h3 { - font-size: 24px; -} - -h4, -.h4 { - font-size: 18px; -} - -h5, -.h5 { - font-size: 14px; -} - -h6, -.h6 { - font-size: 12px; -} - -p { - margin: 0 0 10px; -} - -.lead { - margin-bottom: 20px; - font-size: 16px; - font-weight: 300; - line-height: 1.4; -} - -@media (min-width: 768px) { - .lead { - font-size: 21px; - } -} - -small, -.small { - font-size: 85%; -} - -mark, -.mark { - padding: .2em; - background-color: #fcf8e3; -} - -.text-left { - text-align: left; -} - -.text-right { - text-align: right; -} - -.text-center { - text-align: center; -} - -.text-justify { - text-align: justify; -} - -.text-nowrap { - white-space: nowrap; -} - -.text-lowercase { - text-transform: lowercase; -} - -.text-uppercase { - text-transform: uppercase; -} - -.text-capitalize { - text-transform: capitalize; -} - -.text-muted { - color: #777; -} - -.text-primary { - color: #337ab7; -} - -a.text-primary:hover, -a.text-primary:focus { - color: #286090; -} - -.text-success { - color: #3c763d; -} - -a.text-success:hover, -a.text-success:focus { - color: #2b542c; -} - -.text-info { - color: #31708f; -} - -a.text-info:hover, -a.text-info:focus { - color: #245269; -} - -.text-warning { - color: #8a6d3b; -} - -a.text-warning:hover, -a.text-warning:focus { - color: #66512c; -} - -.text-danger { - color: #a94442; -} - -a.text-danger:hover, -a.text-danger:focus { - color: #843534; -} - -.bg-primary { - color: #fff; - background-color: #337ab7; -} - -a.bg-primary:hover, -a.bg-primary:focus { - background-color: #286090; -} - -.bg-success { - background-color: #dff0d8; -} - -a.bg-success:hover, -a.bg-success:focus { - background-color: #c1e2b3; -} - -.bg-info { - background-color: #d9edf7; -} - -a.bg-info:hover, -a.bg-info:focus { - background-color: #afd9ee; -} - -.bg-warning { - background-color: #fcf8e3; -} - -a.bg-warning:hover, -a.bg-warning:focus { - background-color: #f7ecb5; -} - -.bg-danger { - background-color: #f2dede; -} - -a.bg-danger:hover, -a.bg-danger:focus { - background-color: #e4b9b9; -} - -.page-header { - padding-bottom: 9px; - margin: 40px 0 20px; - border-bottom: 1px solid #eee; -} - -ul, -ol { - margin-top: 0; - margin-bottom: 10px; -} - -ul ul, -ol ul, -ul ol, -ol ol { - margin-bottom: 0; -} - -.list-unstyled { - padding-left: 0; - list-style: none; -} - -.list-inline { - padding-left: 0; - margin-left: -5px; - list-style: none; -} - -.list-inline > li { - display: inline-block; - padding-right: 5px; - padding-left: 5px; -} - -dl { - margin-top: 0; - margin-bottom: 20px; -} - -dt, -dd { - line-height: 1.42857143; -} - -dt { - font-weight: bold; -} - -dd { - margin-left: 0; -} - -@media (min-width: 768px) { - .dl-horizontal dt { - float: left; - width: 160px; - overflow: hidden; - clear: left; - text-align: right; - text-overflow: ellipsis; - white-space: nowrap; - } - - .dl-horizontal dd { - margin-left: 180px; - } -} - -abbr[title], -abbr[data-original-title] { - cursor: help; - border-bottom: 1px dotted #777; -} - -.initialism { - font-size: 90%; - text-transform: uppercase; -} - -blockquote { - padding: 10px 20px; - margin: 0 0 20px; - font-size: 17.5px; - border-left: 5px solid #eee; -} - -blockquote p:last-child, -blockquote ul:last-child, -blockquote ol:last-child { - margin-bottom: 0; -} - -blockquote footer, -blockquote small, -blockquote .small { - display: block; - font-size: 80%; - line-height: 1.42857143; - color: #777; -} - -blockquote footer:before, -blockquote small:before, -blockquote .small:before { - content: '\2014 \00A0'; -} - -.blockquote-reverse, -blockquote.pull-right { - padding-right: 15px; - padding-left: 0; - text-align: right; - border-right: 5px solid #eee; - border-left: 0; -} - -.blockquote-reverse footer:before, -blockquote.pull-right footer:before, -.blockquote-reverse small:before, -blockquote.pull-right small:before, -.blockquote-reverse .small:before, -blockquote.pull-right .small:before { - content: ''; -} - -.blockquote-reverse footer:after, -blockquote.pull-right footer:after, -.blockquote-reverse small:after, -blockquote.pull-right small:after, -.blockquote-reverse .small:after, -blockquote.pull-right .small:after { - content: '\00A0 \2014'; -} - -address { - margin-bottom: 20px; - font-style: normal; - line-height: 1.42857143; -} - -code, -kbd, -pre, -samp { - font-family: Menlo, Monaco, Consolas, "Courier New", monospace; -} - -code { - padding: 2px 4px; - font-size: 90%; - color: #c7254e; - background-color: #f9f2f4; - border-radius: 4px; -} - -kbd { - padding: 2px 4px; - font-size: 90%; - color: #fff; - background-color: #333; - border-radius: 3px; - -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); -} - -kbd kbd { - padding: 0; - font-size: 100%; - font-weight: bold; - -webkit-box-shadow: none; - box-shadow: none; -} - -pre { - display: block; - padding: 9.5px; - margin: 0 0 10px; - font-size: 13px; - line-height: 1.42857143; - color: #333; - word-break: break-all; - word-wrap: break-word; - background-color: #f5f5f5; - border: 1px solid #ccc; - border-radius: 4px; -} - -pre code { - padding: 0; - font-size: inherit; - color: inherit; - white-space: pre-wrap; - background-color: transparent; - border-radius: 0; -} - -.pre-scrollable { - max-height: 340px; - overflow-y: scroll; -} - -.container { - padding-right: 15px; - padding-left: 15px; - margin-right: auto; - margin-left: auto; -} - -@media (min-width: 768px) { - .container { - width: 750px; - } -} - -@media (min-width: 992px) { - .container { - width: 970px; - } -} - -@media (min-width: 1200px) { - .container { - width: 1170px; - } -} - -.container-fluid { - padding-right: 15px; - padding-left: 15px; - margin-right: auto; - margin-left: auto; -} - -.row { - margin-right: -15px; - margin-left: -15px; -} - -.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { - position: relative; - min-height: 1px; - padding-right: 15px; - padding-left: 15px; -} - -.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { - float: left; -} - -.col-xs-12 { - width: 100%; -} - -.col-xs-11 { - width: 91.66666667%; -} - -.col-xs-10 { - width: 83.33333333%; -} - -.col-xs-9 { - width: 75%; -} - -.col-xs-8 { - width: 66.66666667%; -} - -.col-xs-7 { - width: 58.33333333%; -} - -.col-xs-6 { - width: 50%; -} - -.col-xs-5 { - width: 41.66666667%; -} - -.col-xs-4 { - width: 33.33333333%; -} - -.col-xs-3 { - width: 25%; -} - -.col-xs-2 { - width: 16.66666667%; -} - -.col-xs-1 { - width: 8.33333333%; -} - -.col-xs-pull-12 { - right: 100%; -} - -.col-xs-pull-11 { - right: 91.66666667%; -} - -.col-xs-pull-10 { - right: 83.33333333%; -} - -.col-xs-pull-9 { - right: 75%; -} - -.col-xs-pull-8 { - right: 66.66666667%; -} - -.col-xs-pull-7 { - right: 58.33333333%; -} - -.col-xs-pull-6 { - right: 50%; -} - -.col-xs-pull-5 { - right: 41.66666667%; -} - -.col-xs-pull-4 { - right: 33.33333333%; -} - -.col-xs-pull-3 { - right: 25%; -} - -.col-xs-pull-2 { - right: 16.66666667%; -} - -.col-xs-pull-1 { - right: 8.33333333%; -} - -.col-xs-pull-0 { - right: auto; -} - -.col-xs-push-12 { - left: 100%; -} - -.col-xs-push-11 { - left: 91.66666667%; -} - -.col-xs-push-10 { - left: 83.33333333%; -} - -.col-xs-push-9 { - left: 75%; -} - -.col-xs-push-8 { - left: 66.66666667%; -} - -.col-xs-push-7 { - left: 58.33333333%; -} - -.col-xs-push-6 { - left: 50%; -} - -.col-xs-push-5 { - left: 41.66666667%; -} - -.col-xs-push-4 { - left: 33.33333333%; -} - -.col-xs-push-3 { - left: 25%; -} - -.col-xs-push-2 { - left: 16.66666667%; -} - -.col-xs-push-1 { - left: 8.33333333%; -} - -.col-xs-push-0 { - left: auto; -} - -.col-xs-offset-12 { - margin-left: 100%; -} - -.col-xs-offset-11 { - margin-left: 91.66666667%; -} - -.col-xs-offset-10 { - margin-left: 83.33333333%; -} - -.col-xs-offset-9 { - margin-left: 75%; -} - -.col-xs-offset-8 { - margin-left: 66.66666667%; -} - -.col-xs-offset-7 { - margin-left: 58.33333333%; -} - -.col-xs-offset-6 { - margin-left: 50%; -} - -.col-xs-offset-5 { - margin-left: 41.66666667%; -} - -.col-xs-offset-4 { - margin-left: 33.33333333%; -} - -.col-xs-offset-3 { - margin-left: 25%; -} - -.col-xs-offset-2 { - margin-left: 16.66666667%; -} - -.col-xs-offset-1 { - margin-left: 8.33333333%; -} - -.col-xs-offset-0 { - margin-left: 0; -} - -@media (min-width: 768px) { - .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { - float: left; - } - - .col-sm-12 { - width: 100%; - } - - .col-sm-11 { - width: 91.66666667%; - } - - .col-sm-10 { - width: 83.33333333%; - } - - .col-sm-9 { - width: 75%; - } - - .col-sm-8 { - width: 66.66666667%; - } - - .col-sm-7 { - width: 58.33333333%; - } - - .col-sm-6 { - width: 50%; - } - - .col-sm-5 { - width: 41.66666667%; - } - - .col-sm-4 { - width: 33.33333333%; - } - - .col-sm-3 { - width: 25%; - } - - .col-sm-2 { - width: 16.66666667%; - } - - .col-sm-1 { - width: 8.33333333%; - } - - .col-sm-pull-12 { - right: 100%; - } - - .col-sm-pull-11 { - right: 91.66666667%; - } - - .col-sm-pull-10 { - right: 83.33333333%; - } - - .col-sm-pull-9 { - right: 75%; - } - - .col-sm-pull-8 { - right: 66.66666667%; - } - - .col-sm-pull-7 { - right: 58.33333333%; - } - - .col-sm-pull-6 { - right: 50%; - } - - .col-sm-pull-5 { - right: 41.66666667%; - } - - .col-sm-pull-4 { - right: 33.33333333%; - } - - .col-sm-pull-3 { - right: 25%; - } - - .col-sm-pull-2 { - right: 16.66666667%; - } - - .col-sm-pull-1 { - right: 8.33333333%; - } - - .col-sm-pull-0 { - right: auto; - } - - .col-sm-push-12 { - left: 100%; - } - - .col-sm-push-11 { - left: 91.66666667%; - } - - .col-sm-push-10 { - left: 83.33333333%; - } - - .col-sm-push-9 { - left: 75%; - } - - .col-sm-push-8 { - left: 66.66666667%; - } - - .col-sm-push-7 { - left: 58.33333333%; - } - - .col-sm-push-6 { - left: 50%; - } - - .col-sm-push-5 { - left: 41.66666667%; - } - - .col-sm-push-4 { - left: 33.33333333%; - } - - .col-sm-push-3 { - left: 25%; - } - - .col-sm-push-2 { - left: 16.66666667%; - } - - .col-sm-push-1 { - left: 8.33333333%; - } - - .col-sm-push-0 { - left: auto; - } - - .col-sm-offset-12 { - margin-left: 100%; - } - - .col-sm-offset-11 { - margin-left: 91.66666667%; - } - - .col-sm-offset-10 { - margin-left: 83.33333333%; - } - - .col-sm-offset-9 { - margin-left: 75%; - } - - .col-sm-offset-8 { - margin-left: 66.66666667%; - } - - .col-sm-offset-7 { - margin-left: 58.33333333%; - } - - .col-sm-offset-6 { - margin-left: 50%; - } - - .col-sm-offset-5 { - margin-left: 41.66666667%; - } - - .col-sm-offset-4 { - margin-left: 33.33333333%; - } - - .col-sm-offset-3 { - margin-left: 25%; - } - - .col-sm-offset-2 { - margin-left: 16.66666667%; - } - - .col-sm-offset-1 { - margin-left: 8.33333333%; - } - - .col-sm-offset-0 { - margin-left: 0; - } -} - -@media (min-width: 992px) { - .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { - float: left; - } - - .col-md-12 { - width: 100%; - } - - .col-md-11 { - width: 91.66666667%; - } - - .col-md-10 { - width: 83.33333333%; - } - - .col-md-9 { - width: 75%; - } - - .col-md-8 { - width: 66.66666667%; - } - - .col-md-7 { - width: 58.33333333%; - } - - .col-md-6 { - width: 50%; - } - - .col-md-5 { - width: 41.66666667%; - } - - .col-md-4 { - width: 33.33333333%; - } - - .col-md-3 { - width: 25%; - } - - .col-md-2 { - width: 16.66666667%; - } - - .col-md-1 { - width: 8.33333333%; - } - - .col-md-pull-12 { - right: 100%; - } - - .col-md-pull-11 { - right: 91.66666667%; - } - - .col-md-pull-10 { - right: 83.33333333%; - } - - .col-md-pull-9 { - right: 75%; - } - - .col-md-pull-8 { - right: 66.66666667%; - } - - .col-md-pull-7 { - right: 58.33333333%; - } - - .col-md-pull-6 { - right: 50%; - } - - .col-md-pull-5 { - right: 41.66666667%; - } - - .col-md-pull-4 { - right: 33.33333333%; - } - - .col-md-pull-3 { - right: 25%; - } - - .col-md-pull-2 { - right: 16.66666667%; - } - - .col-md-pull-1 { - right: 8.33333333%; - } - - .col-md-pull-0 { - right: auto; - } - - .col-md-push-12 { - left: 100%; - } - - .col-md-push-11 { - left: 91.66666667%; - } - - .col-md-push-10 { - left: 83.33333333%; - } - - .col-md-push-9 { - left: 75%; - } - - .col-md-push-8 { - left: 66.66666667%; - } - - .col-md-push-7 { - left: 58.33333333%; - } - - .col-md-push-6 { - left: 50%; - } - - .col-md-push-5 { - left: 41.66666667%; - } - - .col-md-push-4 { - left: 33.33333333%; - } - - .col-md-push-3 { - left: 25%; - } - - .col-md-push-2 { - left: 16.66666667%; - } - - .col-md-push-1 { - left: 8.33333333%; - } - - .col-md-push-0 { - left: auto; - } - - .col-md-offset-12 { - margin-left: 100%; - } - - .col-md-offset-11 { - margin-left: 91.66666667%; - } - - .col-md-offset-10 { - margin-left: 83.33333333%; - } - - .col-md-offset-9 { - margin-left: 75%; - } - - .col-md-offset-8 { - margin-left: 66.66666667%; - } - - .col-md-offset-7 { - margin-left: 58.33333333%; - } - - .col-md-offset-6 { - margin-left: 50%; - } - - .col-md-offset-5 { - margin-left: 41.66666667%; - } - - .col-md-offset-4 { - margin-left: 33.33333333%; - } - - .col-md-offset-3 { - margin-left: 25%; - } - - .col-md-offset-2 { - margin-left: 16.66666667%; - } - - .col-md-offset-1 { - margin-left: 8.33333333%; - } - - .col-md-offset-0 { - margin-left: 0; - } -} - -@media (min-width: 1200px) { - .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { - float: left; - } - - .col-lg-12 { - width: 100%; - } - - .col-lg-11 { - width: 91.66666667%; - } - - .col-lg-10 { - width: 83.33333333%; - } - - .col-lg-9 { - width: 75%; - } - - .col-lg-8 { - width: 66.66666667%; - } - - .col-lg-7 { - width: 58.33333333%; - } - - .col-lg-6 { - width: 50%; - } - - .col-lg-5 { - width: 41.66666667%; - } - - .col-lg-4 { - width: 33.33333333%; - } - - .col-lg-3 { - width: 25%; - } - - .col-lg-2 { - width: 16.66666667%; - } - - .col-lg-1 { - width: 8.33333333%; - } - - .col-lg-pull-12 { - right: 100%; - } - - .col-lg-pull-11 { - right: 91.66666667%; - } - - .col-lg-pull-10 { - right: 83.33333333%; - } - - .col-lg-pull-9 { - right: 75%; - } - - .col-lg-pull-8 { - right: 66.66666667%; - } - - .col-lg-pull-7 { - right: 58.33333333%; - } - - .col-lg-pull-6 { - right: 50%; - } - - .col-lg-pull-5 { - right: 41.66666667%; - } - - .col-lg-pull-4 { - right: 33.33333333%; - } - - .col-lg-pull-3 { - right: 25%; - } - - .col-lg-pull-2 { - right: 16.66666667%; - } - - .col-lg-pull-1 { - right: 8.33333333%; - } - - .col-lg-pull-0 { - right: auto; - } - - .col-lg-push-12 { - left: 100%; - } - - .col-lg-push-11 { - left: 91.66666667%; - } - - .col-lg-push-10 { - left: 83.33333333%; - } - - .col-lg-push-9 { - left: 75%; - } - - .col-lg-push-8 { - left: 66.66666667%; - } - - .col-lg-push-7 { - left: 58.33333333%; - } - - .col-lg-push-6 { - left: 50%; - } - - .col-lg-push-5 { - left: 41.66666667%; - } - - .col-lg-push-4 { - left: 33.33333333%; - } - - .col-lg-push-3 { - left: 25%; - } - - .col-lg-push-2 { - left: 16.66666667%; - } - - .col-lg-push-1 { - left: 8.33333333%; - } - - .col-lg-push-0 { - left: auto; - } - - .col-lg-offset-12 { - margin-left: 100%; - } - - .col-lg-offset-11 { - margin-left: 91.66666667%; - } - - .col-lg-offset-10 { - margin-left: 83.33333333%; - } - - .col-lg-offset-9 { - margin-left: 75%; - } - - .col-lg-offset-8 { - margin-left: 66.66666667%; - } - - .col-lg-offset-7 { - margin-left: 58.33333333%; - } - - .col-lg-offset-6 { - margin-left: 50%; - } - - .col-lg-offset-5 { - margin-left: 41.66666667%; - } - - .col-lg-offset-4 { - margin-left: 33.33333333%; - } - - .col-lg-offset-3 { - margin-left: 25%; - } - - .col-lg-offset-2 { - margin-left: 16.66666667%; - } - - .col-lg-offset-1 { - margin-left: 8.33333333%; - } - - .col-lg-offset-0 { - margin-left: 0; - } -} - -table { - background-color: transparent; -} - -caption { - padding-top: 8px; - padding-bottom: 8px; - color: #777; - text-align: left; -} - -th { - text-align: left; -} - -.table { - width: 100%; - max-width: 100%; - margin-bottom: 20px; -} - -.table > thead > tr > th, -.table > tbody > tr > th, -.table > tfoot > tr > th, -.table > thead > tr > td, -.table > tbody > tr > td, -.table > tfoot > tr > td { - padding: 8px; - line-height: 1.42857143; - vertical-align: top; - border-top: 1px solid #ddd; -} - -.table > thead > tr > th { - vertical-align: bottom; - border-bottom: 2px solid #ddd; -} - -.table > caption + thead > tr:first-child > th, -.table > colgroup + thead > tr:first-child > th, -.table > thead:first-child > tr:first-child > th, -.table > caption + thead > tr:first-child > td, -.table > colgroup + thead > tr:first-child > td, -.table > thead:first-child > tr:first-child > td { - border-top: 0; -} - -.table > tbody + tbody { - border-top: 2px solid #ddd; -} - -.table .table { - background-color: #fff; -} - -.table-condensed > thead > tr > th, -.table-condensed > tbody > tr > th, -.table-condensed > tfoot > tr > th, -.table-condensed > thead > tr > td, -.table-condensed > tbody > tr > td, -.table-condensed > tfoot > tr > td { - padding: 5px; -} - -.table-bordered { - border: 1px solid #ddd; -} - -.table-bordered > thead > tr > th, -.table-bordered > tbody > tr > th, -.table-bordered > tfoot > tr > th, -.table-bordered > thead > tr > td, -.table-bordered > tbody > tr > td, -.table-bordered > tfoot > tr > td { - border: 1px solid #ddd; -} - -.table-bordered > thead > tr > th, -.table-bordered > thead > tr > td { - border-bottom-width: 2px; -} - -.table-striped > tbody > tr:nth-of-type(odd) { - background-color: #f9f9f9; -} - -.table-hover > tbody > tr:hover { - background-color: #f5f5f5; -} - -table col[class*="col-"] { - position: static; - display: table-column; - float: none; -} - -table td[class*="col-"], -table th[class*="col-"] { - position: static; - display: table-cell; - float: none; -} - -.table > thead > tr > td.active, -.table > tbody > tr > td.active, -.table > tfoot > tr > td.active, -.table > thead > tr > th.active, -.table > tbody > tr > th.active, -.table > tfoot > tr > th.active, -.table > thead > tr.active > td, -.table > tbody > tr.active > td, -.table > tfoot > tr.active > td, -.table > thead > tr.active > th, -.table > tbody > tr.active > th, -.table > tfoot > tr.active > th { - background-color: #f5f5f5; -} - -.table-hover > tbody > tr > td.active:hover, -.table-hover > tbody > tr > th.active:hover, -.table-hover > tbody > tr.active:hover > td, -.table-hover > tbody > tr:hover > .active, -.table-hover > tbody > tr.active:hover > th { - background-color: #e8e8e8; -} - -.table > thead > tr > td.success, -.table > tbody > tr > td.success, -.table > tfoot > tr > td.success, -.table > thead > tr > th.success, -.table > tbody > tr > th.success, -.table > tfoot > tr > th.success, -.table > thead > tr.success > td, -.table > tbody > tr.success > td, -.table > tfoot > tr.success > td, -.table > thead > tr.success > th, -.table > tbody > tr.success > th, -.table > tfoot > tr.success > th { - background-color: #dff0d8; -} - -.table-hover > tbody > tr > td.success:hover, -.table-hover > tbody > tr > th.success:hover, -.table-hover > tbody > tr.success:hover > td, -.table-hover > tbody > tr:hover > .success, -.table-hover > tbody > tr.success:hover > th { - background-color: #d0e9c6; -} - -.table > thead > tr > td.info, -.table > tbody > tr > td.info, -.table > tfoot > tr > td.info, -.table > thead > tr > th.info, -.table > tbody > tr > th.info, -.table > tfoot > tr > th.info, -.table > thead > tr.info > td, -.table > tbody > tr.info > td, -.table > tfoot > tr.info > td, -.table > thead > tr.info > th, -.table > tbody > tr.info > th, -.table > tfoot > tr.info > th { - background-color: #d9edf7; -} - -.table-hover > tbody > tr > td.info:hover, -.table-hover > tbody > tr > th.info:hover, -.table-hover > tbody > tr.info:hover > td, -.table-hover > tbody > tr:hover > .info, -.table-hover > tbody > tr.info:hover > th { - background-color: #c4e3f3; -} - -.table > thead > tr > td.warning, -.table > tbody > tr > td.warning, -.table > tfoot > tr > td.warning, -.table > thead > tr > th.warning, -.table > tbody > tr > th.warning, -.table > tfoot > tr > th.warning, -.table > thead > tr.warning > td, -.table > tbody > tr.warning > td, -.table > tfoot > tr.warning > td, -.table > thead > tr.warning > th, -.table > tbody > tr.warning > th, -.table > tfoot > tr.warning > th { - background-color: #fcf8e3; -} - -.table-hover > tbody > tr > td.warning:hover, -.table-hover > tbody > tr > th.warning:hover, -.table-hover > tbody > tr.warning:hover > td, -.table-hover > tbody > tr:hover > .warning, -.table-hover > tbody > tr.warning:hover > th { - background-color: #faf2cc; -} - -.table > thead > tr > td.danger, -.table > tbody > tr > td.danger, -.table > tfoot > tr > td.danger, -.table > thead > tr > th.danger, -.table > tbody > tr > th.danger, -.table > tfoot > tr > th.danger, -.table > thead > tr.danger > td, -.table > tbody > tr.danger > td, -.table > tfoot > tr.danger > td, -.table > thead > tr.danger > th, -.table > tbody > tr.danger > th, -.table > tfoot > tr.danger > th { - background-color: #f2dede; -} - -.table-hover > tbody > tr > td.danger:hover, -.table-hover > tbody > tr > th.danger:hover, -.table-hover > tbody > tr.danger:hover > td, -.table-hover > tbody > tr:hover > .danger, -.table-hover > tbody > tr.danger:hover > th { - background-color: #ebcccc; -} - -.table-responsive { - min-height: .01%; - overflow-x: auto; -} - -@media screen and (max-width: 767px) { - .table-responsive { - width: 100%; - margin-bottom: 15px; - overflow-y: hidden; - -ms-overflow-style: -ms-autohiding-scrollbar; - border: 1px solid #ddd; - } - - .table-responsive > .table { - margin-bottom: 0; - } - - .table-responsive > .table > thead > tr > th, - .table-responsive > .table > tbody > tr > th, - .table-responsive > .table > tfoot > tr > th, - .table-responsive > .table > thead > tr > td, - .table-responsive > .table > tbody > tr > td, - .table-responsive > .table > tfoot > tr > td { - white-space: nowrap; - } - - .table-responsive > .table-bordered { - border: 0; - } - - .table-responsive > .table-bordered > thead > tr > th:first-child, - .table-responsive > .table-bordered > tbody > tr > th:first-child, - .table-responsive > .table-bordered > tfoot > tr > th:first-child, - .table-responsive > .table-bordered > thead > tr > td:first-child, - .table-responsive > .table-bordered > tbody > tr > td:first-child, - .table-responsive > .table-bordered > tfoot > tr > td:first-child { - border-left: 0; - } - - .table-responsive > .table-bordered > thead > tr > th:last-child, - .table-responsive > .table-bordered > tbody > tr > th:last-child, - .table-responsive > .table-bordered > tfoot > tr > th:last-child, - .table-responsive > .table-bordered > thead > tr > td:last-child, - .table-responsive > .table-bordered > tbody > tr > td:last-child, - .table-responsive > .table-bordered > tfoot > tr > td:last-child { - border-right: 0; - } - - .table-responsive > .table-bordered > tbody > tr:last-child > th, - .table-responsive > .table-bordered > tfoot > tr:last-child > th, - .table-responsive > .table-bordered > tbody > tr:last-child > td, - .table-responsive > .table-bordered > tfoot > tr:last-child > td { - border-bottom: 0; - } -} - -fieldset { - min-width: 0; - padding: 0; - margin: 0; - border: 0; -} - -legend { - display: block; - width: 100%; - padding: 0; - margin-bottom: 20px; - font-size: 21px; - line-height: inherit; - color: #333; - border: 0; - border-bottom: 1px solid #e5e5e5; -} - -label { - display: inline-block; - max-width: 100%; - margin-bottom: 5px; - font-weight: bold; -} - -input[type="search"] { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} - -input[type="radio"], -input[type="checkbox"] { - margin: 4px 0 0; - margin-top: 1px \9; - line-height: normal; -} - -input[type="file"] { - display: block; -} - -input[type="range"] { - display: block; - width: 100%; -} - -select[multiple], -select[size] { - height: auto; -} - -input[type="file"]:focus, -input[type="radio"]:focus, -input[type="checkbox"]:focus { - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} - -output { - display: block; - padding-top: 7px; - font-size: 14px; - line-height: 1.42857143; - color: #555; -} - -.form-control { - display: block; - width: 100%; - height: 34px; - padding: 6px 12px; - font-size: 14px; - line-height: 1.42857143; - color: #555; - background-color: #fff; - background-image: none; - border: 1px solid #ccc; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); - -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; - -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; - transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; -} - -.form-control: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); -} - -.form-control::-moz-placeholder { - color: #999; - opacity: 1; -} - -.form-control:-ms-input-placeholder { - color: #999; -} - -.form-control::-webkit-input-placeholder { - color: #999; -} - -.form-control::-ms-expand { - background-color: transparent; - border: 0; -} - -.form-control[disabled], -.form-control[readonly], -fieldset[disabled] .form-control { - background-color: #eee; - opacity: 1; -} - -.form-control[disabled], -fieldset[disabled] .form-control { - cursor: not-allowed; -} - -textarea.form-control { - height: auto; -} - -input[type="search"] { - -webkit-appearance: none; -} - -@media screen and (-webkit-min-device-pixel-ratio: 0) { - input[type="date"].form-control, - input[type="time"].form-control, - input[type="datetime-local"].form-control, - input[type="month"].form-control { - line-height: 34px; - } - - input[type="date"].input-sm, - input[type="time"].input-sm, - input[type="datetime-local"].input-sm, - input[type="month"].input-sm, - .input-group-sm input[type="date"], - .input-group-sm input[type="time"], - .input-group-sm input[type="datetime-local"], - .input-group-sm input[type="month"] { - line-height: 30px; - } - - input[type="date"].input-lg, - input[type="time"].input-lg, - input[type="datetime-local"].input-lg, - input[type="month"].input-lg, - .input-group-lg input[type="date"], - .input-group-lg input[type="time"], - .input-group-lg input[type="datetime-local"], - .input-group-lg input[type="month"] { - line-height: 46px; - } -} - -.form-group { - margin-bottom: 15px; -} - -.radio, -.checkbox { - position: relative; - display: block; - margin-top: 10px; - margin-bottom: 10px; -} - -.radio label, -.checkbox label { - min-height: 20px; - padding-left: 20px; - margin-bottom: 0; - font-weight: normal; - cursor: pointer; -} - -.radio input[type="radio"], -.radio-inline input[type="radio"], -.checkbox input[type="checkbox"], -.checkbox-inline input[type="checkbox"] { - position: absolute; - margin-top: 4px \9; - margin-left: -20px; -} - -.radio + .radio, -.checkbox + .checkbox { - margin-top: -5px; -} - -.radio-inline, -.checkbox-inline { - position: relative; - display: inline-block; - padding-left: 20px; - margin-bottom: 0; - font-weight: normal; - vertical-align: middle; - cursor: pointer; -} - -.radio-inline + .radio-inline, -.checkbox-inline + .checkbox-inline { - margin-top: 0; - margin-left: 10px; -} - -input[type="radio"][disabled], -input[type="checkbox"][disabled], -input[type="radio"].disabled, -input[type="checkbox"].disabled, -fieldset[disabled] input[type="radio"], -fieldset[disabled] input[type="checkbox"] { - cursor: not-allowed; -} - -.radio-inline.disabled, -.checkbox-inline.disabled, -fieldset[disabled] .radio-inline, -fieldset[disabled] .checkbox-inline { - cursor: not-allowed; -} - -.radio.disabled label, -.checkbox.disabled label, -fieldset[disabled] .radio label, -fieldset[disabled] .checkbox label { - cursor: not-allowed; -} - -.form-control-static { - min-height: 34px; - padding-top: 7px; - padding-bottom: 7px; - margin-bottom: 0; -} - -.form-control-static.input-lg, -.form-control-static.input-sm { - padding-right: 0; - padding-left: 0; -} - -.input-sm { - height: 30px; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -select.input-sm { - height: 30px; - line-height: 30px; -} - -textarea.input-sm, -select[multiple].input-sm { - height: auto; -} - -.form-group-sm .form-control { - height: 30px; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -.form-group-sm select.form-control { - height: 30px; - line-height: 30px; -} - -.form-group-sm textarea.form-control, -.form-group-sm select[multiple].form-control { - height: auto; -} - -.form-group-sm .form-control-static { - height: 30px; - min-height: 32px; - padding: 6px 10px; - font-size: 12px; - line-height: 1.5; -} - -.input-lg { - height: 46px; - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; - border-radius: 6px; -} - -select.input-lg { - height: 46px; - line-height: 46px; -} - -textarea.input-lg, -select[multiple].input-lg { - height: auto; -} - -.form-group-lg .form-control { - height: 46px; - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; - border-radius: 6px; -} - -.form-group-lg select.form-control { - height: 46px; - line-height: 46px; -} - -.form-group-lg textarea.form-control, -.form-group-lg select[multiple].form-control { - height: auto; -} - -.form-group-lg .form-control-static { - height: 46px; - min-height: 38px; - padding: 11px 16px; - font-size: 18px; - line-height: 1.3333333; -} - -.has-feedback { - position: relative; -} - -.has-feedback .form-control { - padding-right: 42.5px; -} - -.form-control-feedback { - position: absolute; - top: 0; - right: 0; - z-index: 2; - display: block; - width: 34px; - height: 34px; - line-height: 34px; - text-align: center; - pointer-events: none; -} - -.input-lg + .form-control-feedback, -.input-group-lg + .form-control-feedback, -.form-group-lg .form-control + .form-control-feedback { - width: 46px; - height: 46px; - line-height: 46px; -} - -.input-sm + .form-control-feedback, -.input-group-sm + .form-control-feedback, -.form-group-sm .form-control + .form-control-feedback { - width: 30px; - height: 30px; - line-height: 30px; -} - -.has-success .help-block, -.has-success .control-label, -.has-success .radio, -.has-success .checkbox, -.has-success .radio-inline, -.has-success .checkbox-inline, -.has-success.radio label, -.has-success.checkbox label, -.has-success.radio-inline label, -.has-success.checkbox-inline label { - color: #3c763d; -} - -.has-success .form-control { - border-color: #3c763d; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); -} - -.has-success .form-control:focus { - border-color: #2b542c; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; -} - -.has-success .input-group-addon { - color: #3c763d; - background-color: #dff0d8; - border-color: #3c763d; -} - -.has-success .form-control-feedback { - color: #3c763d; -} - -.has-warning .help-block, -.has-warning .control-label, -.has-warning .radio, -.has-warning .checkbox, -.has-warning .radio-inline, -.has-warning .checkbox-inline, -.has-warning.radio label, -.has-warning.checkbox label, -.has-warning.radio-inline label, -.has-warning.checkbox-inline label { - color: #8a6d3b; -} - -.has-warning .form-control { - border-color: #8a6d3b; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); -} - -.has-warning .form-control:focus { - border-color: #66512c; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; -} - -.has-warning .input-group-addon { - color: #8a6d3b; - background-color: #fcf8e3; - border-color: #8a6d3b; -} - -.has-warning .form-control-feedback { - color: #8a6d3b; -} - -.has-error .help-block, -.has-error .control-label, -.has-error .radio, -.has-error .checkbox, -.has-error .radio-inline, -.has-error .checkbox-inline, -.has-error.radio label, -.has-error.checkbox label, -.has-error.radio-inline label, -.has-error.checkbox-inline label { - color: #a94442; -} - -.has-error .form-control { - border-color: #a94442; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); -} - -.has-error .form-control:focus { - border-color: #843534; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; -} - -.has-error .input-group-addon { - color: #a94442; - background-color: #f2dede; - border-color: #a94442; -} - -.has-error .form-control-feedback { - color: #a94442; -} - -.has-feedback label ~ .form-control-feedback { - top: 25px; -} - -.has-feedback label.sr-only ~ .form-control-feedback { - top: 0; -} - -.help-block { - display: block; - margin-top: 5px; - margin-bottom: 10px; - color: #737373; -} - -@media (min-width: 768px) { - .form-inline .form-group { - display: inline-block; - margin-bottom: 0; - vertical-align: middle; - } - - .form-inline .form-control { - display: inline-block; - width: auto; - vertical-align: middle; - } - - .form-inline .form-control-static { - display: inline-block; - } - - .form-inline .input-group { - display: inline-table; - vertical-align: middle; - } - - .form-inline .input-group .input-group-addon, - .form-inline .input-group .input-group-btn, - .form-inline .input-group .form-control { - width: auto; - } - - .form-inline .input-group > .form-control { - width: 100%; - } - - .form-inline .control-label { - margin-bottom: 0; - vertical-align: middle; - } - - .form-inline .radio, - .form-inline .checkbox { - display: inline-block; - margin-top: 0; - margin-bottom: 0; - vertical-align: middle; - } - - .form-inline .radio label, - .form-inline .checkbox label { - padding-left: 0; - } - - .form-inline .radio input[type="radio"], - .form-inline .checkbox input[type="checkbox"] { - position: relative; - margin-left: 0; - } - - .form-inline .has-feedback .form-control-feedback { - top: 0; - } -} - -.form-horizontal .radio, -.form-horizontal .checkbox, -.form-horizontal .radio-inline, -.form-horizontal .checkbox-inline { - padding-top: 7px; - margin-top: 0; - margin-bottom: 0; -} - -.form-horizontal .radio, -.form-horizontal .checkbox { - min-height: 27px; -} - -.form-horizontal .form-group { - margin-right: -15px; - margin-left: -15px; -} - -@media (min-width: 768px) { - .form-horizontal .control-label { - padding-top: 7px; - margin-bottom: 0; - text-align: right; - } -} - -.form-horizontal .has-feedback .form-control-feedback { - right: 15px; -} - -@media (min-width: 768px) { - .form-horizontal .form-group-lg .control-label { - padding-top: 11px; - font-size: 18px; - } -} - -@media (min-width: 768px) { - .form-horizontal .form-group-sm .control-label { - padding-top: 6px; - font-size: 12px; - } -} - -.btn { - display: inline-block; - padding: 6px 12px; - margin-bottom: 0; - font-size: 14px; - font-weight: normal; - line-height: 1.42857143; - text-align: center; - white-space: nowrap; - vertical-align: middle; - -ms-touch-action: manipulation; - touch-action: manipulation; - cursor: pointer; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - background-image: none; - border: 1px solid transparent; - border-radius: 4px; -} - -.btn:focus, -.btn:active:focus, -.btn.active:focus, -.btn.focus, -.btn:active.focus, -.btn.active.focus { - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} - -.btn:hover, -.btn:focus, -.btn.focus { - color: #333; - text-decoration: none; -} - -.btn:active, -.btn.active { - background-image: none; - outline: 0; - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); -} - -.btn.disabled, -.btn[disabled], -fieldset[disabled] .btn { - cursor: not-allowed; - filter: alpha(opacity=65); - -webkit-box-shadow: none; - box-shadow: none; - opacity: .65; -} - -a.btn.disabled, -fieldset[disabled] a.btn { - pointer-events: none; -} - -.btn-default { - color: #333; - background-color: #fff; - border-color: #ccc; -} - -.btn-default:focus, -.btn-default.focus { - color: #333; - background-color: #e6e6e6; - border-color: #8c8c8c; -} - -.btn-default:hover { - color: #333; - background-color: #e6e6e6; - border-color: #adadad; -} - -.btn-default:active, -.btn-default.active, -.open > .dropdown-toggle.btn-default { - color: #333; - background-color: #e6e6e6; - border-color: #adadad; -} - -.btn-default:active:hover, -.btn-default.active:hover, -.open > .dropdown-toggle.btn-default:hover, -.btn-default:active:focus, -.btn-default.active:focus, -.open > .dropdown-toggle.btn-default:focus, -.btn-default:active.focus, -.btn-default.active.focus, -.open > .dropdown-toggle.btn-default.focus { - color: #333; - background-color: #d4d4d4; - border-color: #8c8c8c; -} - -.btn-default:active, -.btn-default.active, -.open > .dropdown-toggle.btn-default { - background-image: none; -} - -.btn-default.disabled:hover, -.btn-default[disabled]:hover, -fieldset[disabled] .btn-default:hover, -.btn-default.disabled:focus, -.btn-default[disabled]:focus, -fieldset[disabled] .btn-default:focus, -.btn-default.disabled.focus, -.btn-default[disabled].focus, -fieldset[disabled] .btn-default.focus { - background-color: #fff; - border-color: #ccc; -} - -.btn-default .badge { - color: #fff; - background-color: #333; -} - -.btn-primary { - color: #fff; - background-color: #337ab7; - border-color: #2e6da4; -} - -.btn-primary:focus, -.btn-primary.focus { - color: #fff; - background-color: #286090; - border-color: #122b40; -} - -.btn-primary:hover { - color: #fff; - background-color: #286090; - border-color: #204d74; -} - -.btn-primary:active, -.btn-primary.active, -.open > .dropdown-toggle.btn-primary { - color: #fff; - background-color: #286090; - border-color: #204d74; -} - -.btn-primary:active:hover, -.btn-primary.active:hover, -.open > .dropdown-toggle.btn-primary:hover, -.btn-primary:active:focus, -.btn-primary.active:focus, -.open > .dropdown-toggle.btn-primary:focus, -.btn-primary:active.focus, -.btn-primary.active.focus, -.open > .dropdown-toggle.btn-primary.focus { - color: #fff; - background-color: #204d74; - border-color: #122b40; -} - -.btn-primary:active, -.btn-primary.active, -.open > .dropdown-toggle.btn-primary { - background-image: none; -} - -.btn-primary.disabled:hover, -.btn-primary[disabled]:hover, -fieldset[disabled] .btn-primary:hover, -.btn-primary.disabled:focus, -.btn-primary[disabled]:focus, -fieldset[disabled] .btn-primary:focus, -.btn-primary.disabled.focus, -.btn-primary[disabled].focus, -fieldset[disabled] .btn-primary.focus { - background-color: #337ab7; - border-color: #2e6da4; -} - -.btn-primary .badge { - color: #337ab7; - background-color: #fff; -} - -.btn-success { - color: #fff; - background-color: #5cb85c; - border-color: #4cae4c; -} - -.btn-success:focus, -.btn-success.focus { - color: #fff; - background-color: #449d44; - border-color: #255625; -} - -.btn-success:hover { - color: #fff; - background-color: #449d44; - border-color: #398439; -} - -.btn-success:active, -.btn-success.active, -.open > .dropdown-toggle.btn-success { - color: #fff; - background-color: #449d44; - border-color: #398439; -} - -.btn-success:active:hover, -.btn-success.active:hover, -.open > .dropdown-toggle.btn-success:hover, -.btn-success:active:focus, -.btn-success.active:focus, -.open > .dropdown-toggle.btn-success:focus, -.btn-success:active.focus, -.btn-success.active.focus, -.open > .dropdown-toggle.btn-success.focus { - color: #fff; - background-color: #398439; - border-color: #255625; -} - -.btn-success:active, -.btn-success.active, -.open > .dropdown-toggle.btn-success { - background-image: none; -} - -.btn-success.disabled:hover, -.btn-success[disabled]:hover, -fieldset[disabled] .btn-success:hover, -.btn-success.disabled:focus, -.btn-success[disabled]:focus, -fieldset[disabled] .btn-success:focus, -.btn-success.disabled.focus, -.btn-success[disabled].focus, -fieldset[disabled] .btn-success.focus { - background-color: #5cb85c; - border-color: #4cae4c; -} - -.btn-success .badge { - color: #5cb85c; - background-color: #fff; -} - -.btn-info { - color: #fff; - background-color: #5bc0de; - border-color: #46b8da; -} - -.btn-info:focus, -.btn-info.focus { - color: #fff; - background-color: #31b0d5; - border-color: #1b6d85; -} - -.btn-info:hover { - color: #fff; - background-color: #31b0d5; - border-color: #269abc; -} - -.btn-info:active, -.btn-info.active, -.open > .dropdown-toggle.btn-info { - color: #fff; - background-color: #31b0d5; - border-color: #269abc; -} - -.btn-info:active:hover, -.btn-info.active:hover, -.open > .dropdown-toggle.btn-info:hover, -.btn-info:active:focus, -.btn-info.active:focus, -.open > .dropdown-toggle.btn-info:focus, -.btn-info:active.focus, -.btn-info.active.focus, -.open > .dropdown-toggle.btn-info.focus { - color: #fff; - background-color: #269abc; - border-color: #1b6d85; -} - -.btn-info:active, -.btn-info.active, -.open > .dropdown-toggle.btn-info { - background-image: none; -} - -.btn-info.disabled:hover, -.btn-info[disabled]:hover, -fieldset[disabled] .btn-info:hover, -.btn-info.disabled:focus, -.btn-info[disabled]:focus, -fieldset[disabled] .btn-info:focus, -.btn-info.disabled.focus, -.btn-info[disabled].focus, -fieldset[disabled] .btn-info.focus { - background-color: #5bc0de; - border-color: #46b8da; -} - -.btn-info .badge { - color: #5bc0de; - background-color: #fff; -} - -.btn-warning { - color: #fff; - background-color: #f0ad4e; - border-color: #eea236; -} - -.btn-warning:focus, -.btn-warning.focus { - color: #fff; - background-color: #ec971f; - border-color: #985f0d; -} - -.btn-warning:hover { - color: #fff; - background-color: #ec971f; - border-color: #d58512; -} - -.btn-warning:active, -.btn-warning.active, -.open > .dropdown-toggle.btn-warning { - color: #fff; - background-color: #ec971f; - border-color: #d58512; -} - -.btn-warning:active:hover, -.btn-warning.active:hover, -.open > .dropdown-toggle.btn-warning:hover, -.btn-warning:active:focus, -.btn-warning.active:focus, -.open > .dropdown-toggle.btn-warning:focus, -.btn-warning:active.focus, -.btn-warning.active.focus, -.open > .dropdown-toggle.btn-warning.focus { - color: #fff; - background-color: #d58512; - border-color: #985f0d; -} - -.btn-warning:active, -.btn-warning.active, -.open > .dropdown-toggle.btn-warning { - background-image: none; -} - -.btn-warning.disabled:hover, -.btn-warning[disabled]:hover, -fieldset[disabled] .btn-warning:hover, -.btn-warning.disabled:focus, -.btn-warning[disabled]:focus, -fieldset[disabled] .btn-warning:focus, -.btn-warning.disabled.focus, -.btn-warning[disabled].focus, -fieldset[disabled] .btn-warning.focus { - background-color: #f0ad4e; - border-color: #eea236; -} - -.btn-warning .badge { - color: #f0ad4e; - background-color: #fff; -} - -.btn-danger { - color: #fff; - background-color: #d9534f; - border-color: #d43f3a; -} - -.btn-danger:focus, -.btn-danger.focus { - color: #fff; - background-color: #c9302c; - border-color: #761c19; -} - -.btn-danger:hover { - color: #fff; - background-color: #c9302c; - border-color: #ac2925; -} - -.btn-danger:active, -.btn-danger.active, -.open > .dropdown-toggle.btn-danger { - color: #fff; - background-color: #c9302c; - border-color: #ac2925; -} - -.btn-danger:active:hover, -.btn-danger.active:hover, -.open > .dropdown-toggle.btn-danger:hover, -.btn-danger:active:focus, -.btn-danger.active:focus, -.open > .dropdown-toggle.btn-danger:focus, -.btn-danger:active.focus, -.btn-danger.active.focus, -.open > .dropdown-toggle.btn-danger.focus { - color: #fff; - background-color: #ac2925; - border-color: #761c19; -} - -.btn-danger:active, -.btn-danger.active, -.open > .dropdown-toggle.btn-danger { - background-image: none; -} - -.btn-danger.disabled:hover, -.btn-danger[disabled]:hover, -fieldset[disabled] .btn-danger:hover, -.btn-danger.disabled:focus, -.btn-danger[disabled]:focus, -fieldset[disabled] .btn-danger:focus, -.btn-danger.disabled.focus, -.btn-danger[disabled].focus, -fieldset[disabled] .btn-danger.focus { - background-color: #d9534f; - border-color: #d43f3a; -} - -.btn-danger .badge { - color: #d9534f; - background-color: #fff; -} - -.btn-link { - font-weight: normal; - color: #337ab7; - border-radius: 0; -} - -.btn-link, -.btn-link:active, -.btn-link.active, -.btn-link[disabled], -fieldset[disabled] .btn-link { - background-color: transparent; - -webkit-box-shadow: none; - box-shadow: none; -} - -.btn-link, -.btn-link:hover, -.btn-link:focus, -.btn-link:active { - border-color: transparent; -} - -.btn-link:hover, -.btn-link:focus { - color: #23527c; - text-decoration: underline; - background-color: transparent; -} - -.btn-link[disabled]:hover, -fieldset[disabled] .btn-link:hover, -.btn-link[disabled]:focus, -fieldset[disabled] .btn-link:focus { - color: #777; - text-decoration: none; -} - -.btn-lg, -.btn-group-lg > .btn { - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; - border-radius: 6px; -} - -.btn-sm, -.btn-group-sm > .btn { - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -.btn-xs, -.btn-group-xs > .btn { - padding: 1px 5px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -.btn-block { - display: block; - width: 100%; -} - -.btn-block + .btn-block { - margin-top: 5px; -} - -input[type="submit"].btn-block, -input[type="reset"].btn-block, -input[type="button"].btn-block { - width: 100%; -} - -.fade { - opacity: 0; - -webkit-transition: opacity .15s linear; - -o-transition: opacity .15s linear; - transition: opacity .15s linear; -} - -.fade.in { - opacity: 1; -} - -.collapse { - display: none; -} - -.collapse.in { - display: block; -} - -tr.collapse.in { - display: table-row; -} - -tbody.collapse.in { - display: table-row-group; -} - -.collapsing { - position: relative; - height: 0; - overflow: hidden; - -webkit-transition-timing-function: ease; - -o-transition-timing-function: ease; - transition-timing-function: ease; - -webkit-transition-duration: .35s; - -o-transition-duration: .35s; - transition-duration: .35s; - -webkit-transition-property: height, visibility; - -o-transition-property: height, visibility; - transition-property: height, visibility; -} - -.caret { - display: inline-block; - width: 0; - height: 0; - margin-left: 2px; - vertical-align: middle; - border-top: 4px dashed; - border-top: 4px solid \9; - border-right: 4px solid transparent; - border-left: 4px solid transparent; -} - -.dropup, -.dropdown { - position: relative; -} - -.dropdown-toggle:focus { - outline: 0; -} - -.dropdown-menu { - position: absolute; - top: 100%; - left: 0; - z-index: 1000; - display: none; - float: left; - min-width: 160px; - padding: 5px 0; - margin: 2px 0 0; - font-size: 14px; - text-align: left; - list-style: none; - background-color: #fff; - -webkit-background-clip: padding-box; - background-clip: padding-box; - border: 1px solid #ccc; - border: 1px solid rgba(0, 0, 0, .15); - border-radius: 4px; - -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); - box-shadow: 0 6px 12px rgba(0, 0, 0, .175); -} - -.dropdown-menu.pull-right { - right: 0; - left: auto; -} - -.dropdown-menu .divider { - height: 1px; - margin: 9px 0; - overflow: hidden; - background-color: #e5e5e5; -} - -.dropdown-menu > li > a { - display: block; - padding: 3px 20px; - clear: both; - font-weight: normal; - line-height: 1.42857143; - color: #333; - white-space: nowrap; -} - -.dropdown-menu > li > a:hover, -.dropdown-menu > li > a:focus { - color: #262626; - text-decoration: none; - background-color: #f5f5f5; -} - -.dropdown-menu > .active > a, -.dropdown-menu > .active > a:hover, -.dropdown-menu > .active > a:focus { - color: #fff; - text-decoration: none; - background-color: #337ab7; - outline: 0; -} - -.dropdown-menu > .disabled > a, -.dropdown-menu > .disabled > a:hover, -.dropdown-menu > .disabled > a:focus { - color: #777; -} - -.dropdown-menu > .disabled > a:hover, -.dropdown-menu > .disabled > a:focus { - text-decoration: none; - cursor: not-allowed; - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); -} - -.open > .dropdown-menu { - display: block; -} - -.open > a { - outline: 0; -} - -.dropdown-menu-right { - right: 0; - left: auto; -} - -.dropdown-menu-left { - right: auto; - left: 0; -} - -.dropdown-header { - display: block; - padding: 3px 20px; - font-size: 12px; - line-height: 1.42857143; - color: #777; - white-space: nowrap; -} - -.dropdown-backdrop { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 990; -} - -.pull-right > .dropdown-menu { - right: 0; - left: auto; -} - -.dropup .caret, -.navbar-fixed-bottom .dropdown .caret { - content: ""; - border-top: 0; - border-bottom: 4px dashed; - border-bottom: 4px solid \9; -} - -.dropup .dropdown-menu, -.navbar-fixed-bottom .dropdown .dropdown-menu { - top: auto; - bottom: 100%; - margin-bottom: 2px; -} - -@media (min-width: 768px) { - .navbar-right .dropdown-menu { - right: 0; - left: auto; - } - - .navbar-right .dropdown-menu-left { - right: auto; - left: 0; - } -} - -.btn-group, -.btn-group-vertical { - position: relative; - display: inline-block; - vertical-align: middle; -} - -.btn-group > .btn, -.btn-group-vertical > .btn { - position: relative; - float: left; -} - -.btn-group > .btn:hover, -.btn-group-vertical > .btn:hover, -.btn-group > .btn:focus, -.btn-group-vertical > .btn:focus, -.btn-group > .btn:active, -.btn-group-vertical > .btn:active, -.btn-group > .btn.active, -.btn-group-vertical > .btn.active { - z-index: 2; -} - -.btn-group .btn + .btn, -.btn-group .btn + .btn-group, -.btn-group .btn-group + .btn, -.btn-group .btn-group + .btn-group { - margin-left: -1px; -} - -.btn-toolbar { - margin-left: -5px; -} - -.btn-toolbar .btn, -.btn-toolbar .btn-group, -.btn-toolbar .input-group { - float: left; -} - -.btn-toolbar > .btn, -.btn-toolbar > .btn-group, -.btn-toolbar > .input-group { - margin-left: 5px; -} - -.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { - border-radius: 0; -} - -.btn-group > .btn:first-child { - margin-left: 0; -} - -.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.btn-group > .btn:last-child:not(:first-child), -.btn-group > .dropdown-toggle:not(:first-child) { - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} - -.btn-group > .btn-group { - float: left; -} - -.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { - border-radius: 0; -} - -.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, -.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} - -.btn-group .dropdown-toggle:active, -.btn-group.open .dropdown-toggle { - outline: 0; -} - -.btn-group > .btn + .dropdown-toggle { - padding-right: 8px; - padding-left: 8px; -} - -.btn-group > .btn-lg + .dropdown-toggle { - padding-right: 12px; - padding-left: 12px; -} - -.btn-group.open .dropdown-toggle { - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); -} - -.btn-group.open .dropdown-toggle.btn-link { - -webkit-box-shadow: none; - box-shadow: none; -} - -.btn .caret { - margin-left: 0; -} - -.btn-lg .caret { - border-width: 5px 5px 0; - border-bottom-width: 0; -} - -.dropup .btn-lg .caret { - border-width: 0 5px 5px; -} - -.btn-group-vertical > .btn, -.btn-group-vertical > .btn-group, -.btn-group-vertical > .btn-group > .btn { - display: block; - float: none; - width: 100%; - max-width: 100%; -} - -.btn-group-vertical > .btn-group > .btn { - float: none; -} - -.btn-group-vertical > .btn + .btn, -.btn-group-vertical > .btn + .btn-group, -.btn-group-vertical > .btn-group + .btn, -.btn-group-vertical > .btn-group + .btn-group { - margin-top: -1px; - margin-left: 0; -} - -.btn-group-vertical > .btn:not(:first-child):not(:last-child) { - border-radius: 0; -} - -.btn-group-vertical > .btn:first-child:not(:last-child) { - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.btn-group-vertical > .btn:last-child:not(:first-child) { - border-top-left-radius: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 4px; - border-bottom-left-radius: 4px; -} - -.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { - border-radius: 0; -} - -.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, -.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { - border-top-left-radius: 0; - border-top-right-radius: 0; -} - -.btn-group-justified { - display: table; - width: 100%; - table-layout: fixed; - border-collapse: separate; -} - -.btn-group-justified > .btn, -.btn-group-justified > .btn-group { - display: table-cell; - float: none; - width: 1%; -} - -.btn-group-justified > .btn-group .btn { - width: 100%; -} - -.btn-group-justified > .btn-group .dropdown-menu { - left: auto; -} - -[data-toggle="buttons"] > .btn input[type="radio"], -[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], -[data-toggle="buttons"] > .btn input[type="checkbox"], -[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { - position: absolute; - clip: rect(0, 0, 0, 0); - pointer-events: none; -} - -.input-group { - position: relative; - display: table; - border-collapse: separate; -} - -.input-group[class*="col-"] { - float: none; - padding-right: 0; - padding-left: 0; -} - -.input-group .form-control { - position: relative; - z-index: 2; - float: left; - width: 100%; - margin-bottom: 0; -} - -.input-group .form-control:focus { - z-index: 3; -} - -.input-group-lg > .form-control, -.input-group-lg > .input-group-addon, -.input-group-lg > .input-group-btn > .btn { - height: 46px; - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; - border-radius: 6px; -} - -select.input-group-lg > .form-control, -select.input-group-lg > .input-group-addon, -select.input-group-lg > .input-group-btn > .btn { - height: 46px; - line-height: 46px; -} - -textarea.input-group-lg > .form-control, -textarea.input-group-lg > .input-group-addon, -textarea.input-group-lg > .input-group-btn > .btn, -select[multiple].input-group-lg > .form-control, -select[multiple].input-group-lg > .input-group-addon, -select[multiple].input-group-lg > .input-group-btn > .btn { - height: auto; -} - -.input-group-sm > .form-control, -.input-group-sm > .input-group-addon, -.input-group-sm > .input-group-btn > .btn { - height: 30px; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -select.input-group-sm > .form-control, -select.input-group-sm > .input-group-addon, -select.input-group-sm > .input-group-btn > .btn { - height: 30px; - line-height: 30px; -} - -textarea.input-group-sm > .form-control, -textarea.input-group-sm > .input-group-addon, -textarea.input-group-sm > .input-group-btn > .btn, -select[multiple].input-group-sm > .form-control, -select[multiple].input-group-sm > .input-group-addon, -select[multiple].input-group-sm > .input-group-btn > .btn { - height: auto; -} - -.input-group-addon, -.input-group-btn, -.input-group .form-control { - display: table-cell; -} - -.input-group-addon:not(:first-child):not(:last-child), -.input-group-btn:not(:first-child):not(:last-child), -.input-group .form-control:not(:first-child):not(:last-child) { - border-radius: 0; -} - -.input-group-addon, -.input-group-btn { - width: 1%; - white-space: nowrap; - vertical-align: middle; -} - -.input-group-addon { - padding: 6px 12px; - font-size: 14px; - font-weight: normal; - line-height: 1; - color: #555; - text-align: center; - background-color: #eee; - border: 1px solid #ccc; - border-radius: 4px; -} - -.input-group-addon.input-sm { - padding: 5px 10px; - font-size: 12px; - border-radius: 3px; -} - -.input-group-addon.input-lg { - padding: 10px 16px; - font-size: 18px; - border-radius: 6px; -} - -.input-group-addon input[type="radio"], -.input-group-addon input[type="checkbox"] { - margin-top: 0; -} - -.input-group .form-control:first-child, -.input-group-addon:first-child, -.input-group-btn:first-child > .btn, -.input-group-btn:first-child > .btn-group > .btn, -.input-group-btn:first-child > .dropdown-toggle, -.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), -.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.input-group-addon:first-child { - border-right: 0; -} - -.input-group .form-control:last-child, -.input-group-addon:last-child, -.input-group-btn:last-child > .btn, -.input-group-btn:last-child > .btn-group > .btn, -.input-group-btn:last-child > .dropdown-toggle, -.input-group-btn:first-child > .btn:not(:first-child), -.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} - -.input-group-addon:last-child { - border-left: 0; -} - -.input-group-btn { - position: relative; - font-size: 0; - white-space: nowrap; -} - -.input-group-btn > .btn { - position: relative; -} - -.input-group-btn > .btn + .btn { - margin-left: -1px; -} - -.input-group-btn > .btn:hover, -.input-group-btn > .btn:focus, -.input-group-btn > .btn:active { - z-index: 2; -} - -.input-group-btn:first-child > .btn, -.input-group-btn:first-child > .btn-group { - margin-right: -1px; -} - -.input-group-btn:last-child > .btn, -.input-group-btn:last-child > .btn-group { - z-index: 2; - margin-left: -1px; -} - -.nav { - padding-left: 0; - margin-bottom: 0; - list-style: none; -} - -.nav > li { - position: relative; - display: block; -} - -.nav > li > a { - position: relative; - display: block; - padding: 10px 15px; -} - -.nav > li > a:hover, -.nav > li > a:focus { - text-decoration: none; - background-color: #eee; -} - -.nav > li.disabled > a { - color: #777; -} - -.nav > li.disabled > a:hover, -.nav > li.disabled > a:focus { - color: #777; - text-decoration: none; - cursor: not-allowed; - background-color: transparent; -} - -.nav .open > a, -.nav .open > a:hover, -.nav .open > a:focus { - background-color: #eee; - border-color: #337ab7; -} - -.nav .nav-divider { - height: 1px; - margin: 9px 0; - overflow: hidden; - background-color: #e5e5e5; -} - -.nav > li > a > img { - max-width: none; -} - -.nav-tabs { - border-bottom: 1px solid #ddd; -} - -.nav-tabs > li { - float: left; - margin-bottom: -1px; -} - -.nav-tabs > li > a { - margin-right: 2px; - line-height: 1.42857143; - border: 1px solid transparent; - border-radius: 4px 4px 0 0; -} - -.nav-tabs > li > a:hover { - border-color: #eee #eee #ddd; -} - -.nav-tabs > li.active > a, -.nav-tabs > li.active > a:hover, -.nav-tabs > li.active > a:focus { - color: #555; - cursor: default; - background-color: #fff; - border: 1px solid #ddd; - border-bottom-color: transparent; -} - -.nav-tabs.nav-justified { - width: 100%; - border-bottom: 0; -} - -.nav-tabs.nav-justified > li { - float: none; -} - -.nav-tabs.nav-justified > li > a { - margin-bottom: 5px; - text-align: center; -} - -.nav-tabs.nav-justified > .dropdown .dropdown-menu { - top: auto; - left: auto; -} - -@media (min-width: 768px) { - .nav-tabs.nav-justified > li { - display: table-cell; - width: 1%; - } - - .nav-tabs.nav-justified > li > a { - margin-bottom: 0; - } -} - -.nav-tabs.nav-justified > li > a { - margin-right: 0; - border-radius: 4px; -} - -.nav-tabs.nav-justified > .active > a, -.nav-tabs.nav-justified > .active > a:hover, -.nav-tabs.nav-justified > .active > a:focus { - border: 1px solid #ddd; -} - -@media (min-width: 768px) { - .nav-tabs.nav-justified > li > a { - border-bottom: 1px solid #ddd; - border-radius: 4px 4px 0 0; - } - - .nav-tabs.nav-justified > .active > a, - .nav-tabs.nav-justified > .active > a:hover, - .nav-tabs.nav-justified > .active > a:focus { - border-bottom-color: #fff; - } -} - -.nav-pills > li { - float: left; -} - -.nav-pills > li > a { - border-radius: 4px; -} - -.nav-pills > li + li { - margin-left: 2px; -} - -.nav-pills > li.active > a, -.nav-pills > li.active > a:hover, -.nav-pills > li.active > a:focus { - color: #fff; - background-color: #337ab7; -} - -.nav-stacked > li { - float: none; -} - -.nav-stacked > li + li { - margin-top: 2px; - margin-left: 0; -} - -.nav-justified { - width: 100%; -} - -.nav-justified > li { - float: none; -} - -.nav-justified > li > a { - margin-bottom: 5px; - text-align: center; -} - -.nav-justified > .dropdown .dropdown-menu { - top: auto; - left: auto; -} - -@media (min-width: 768px) { - .nav-justified > li { - display: table-cell; - width: 1%; - } - - .nav-justified > li > a { - margin-bottom: 0; - } -} - -.nav-tabs-justified { - border-bottom: 0; -} - -.nav-tabs-justified > li > a { - margin-right: 0; - border-radius: 4px; -} - -.nav-tabs-justified > .active > a, -.nav-tabs-justified > .active > a:hover, -.nav-tabs-justified > .active > a:focus { - border: 1px solid #ddd; -} - -@media (min-width: 768px) { - .nav-tabs-justified > li > a { - border-bottom: 1px solid #ddd; - border-radius: 4px 4px 0 0; - } - - .nav-tabs-justified > .active > a, - .nav-tabs-justified > .active > a:hover, - .nav-tabs-justified > .active > a:focus { - border-bottom-color: #fff; - } -} - -.tab-content > .tab-pane { - display: none; -} - -.tab-content > .active { - display: block; -} - -.nav-tabs .dropdown-menu { - margin-top: -1px; - border-top-left-radius: 0; - border-top-right-radius: 0; -} - -.navbar { - position: relative; - min-height: 50px; - margin-bottom: 20px; - border: 1px solid transparent; -} - -@media (min-width: 768px) { - .navbar { - border-radius: 4px; - } -} - -@media (min-width: 768px) { - .navbar-header { - float: left; - } -} - -.navbar-collapse { - padding-right: 15px; - padding-left: 15px; - overflow-x: visible; - -webkit-overflow-scrolling: touch; - border-top: 1px solid transparent; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); -} - -.navbar-collapse.in { - overflow-y: auto; -} - -@media (min-width: 768px) { - .navbar-collapse { - width: auto; - border-top: 0; - -webkit-box-shadow: none; - box-shadow: none; - } - - .navbar-collapse.collapse { - display: block !important; - height: auto !important; - padding-bottom: 0; - overflow: visible !important; - } - - .navbar-collapse.in { - overflow-y: visible; - } - - .navbar-fixed-top .navbar-collapse, - .navbar-static-top .navbar-collapse, - .navbar-fixed-bottom .navbar-collapse { - padding-right: 0; - padding-left: 0; - } -} - -.navbar-fixed-top .navbar-collapse, -.navbar-fixed-bottom .navbar-collapse { - max-height: 340px; -} - -@media (max-device-width: 480px) and (orientation: landscape) { - .navbar-fixed-top .navbar-collapse, - .navbar-fixed-bottom .navbar-collapse { - max-height: 200px; - } -} - -.container > .navbar-header, -.container-fluid > .navbar-header, -.container > .navbar-collapse, -.container-fluid > .navbar-collapse { - margin-right: -15px; - margin-left: -15px; -} - -@media (min-width: 768px) { - .container > .navbar-header, - .container-fluid > .navbar-header, - .container > .navbar-collapse, - .container-fluid > .navbar-collapse { - margin-right: 0; - margin-left: 0; - } -} - -.navbar-static-top { - z-index: 1000; - border-width: 0 0 1px; -} - -@media (min-width: 768px) { - .navbar-static-top { - border-radius: 0; - } -} - -.navbar-fixed-top, -.navbar-fixed-bottom { - position: fixed; - right: 0; - left: 0; - z-index: 1030; -} - -@media (min-width: 768px) { - .navbar-fixed-top, - .navbar-fixed-bottom { - border-radius: 0; - } -} - -.navbar-fixed-top { - top: 0; - border-width: 0 0 1px; -} - -.navbar-fixed-bottom { - bottom: 0; - margin-bottom: 0; - border-width: 1px 0 0; -} - -.navbar-brand { - float: left; - height: 50px; - padding: 15px 15px; - font-size: 18px; - line-height: 20px; -} - -.navbar-brand:hover, -.navbar-brand:focus { - text-decoration: none; -} - -.navbar-brand > img { - display: block; -} - -@media (min-width: 768px) { - .navbar > .container .navbar-brand, - .navbar > .container-fluid .navbar-brand { - margin-left: -15px; - } -} - -.navbar-toggle { - position: relative; - float: right; - padding: 9px 10px; - margin-top: 8px; - margin-right: 15px; - margin-bottom: 8px; - background-color: transparent; - background-image: none; - border: 1px solid transparent; - border-radius: 4px; -} - -.navbar-toggle:focus { - outline: 0; -} - -.navbar-toggle .icon-bar { - display: block; - width: 22px; - height: 2px; - border-radius: 1px; -} - -.navbar-toggle .icon-bar + .icon-bar { - margin-top: 4px; -} - -@media (min-width: 768px) { - .navbar-toggle { - display: none; - } -} - -.navbar-nav { - margin: 7.5px -15px; -} - -.navbar-nav > li > a { - padding-top: 10px; - padding-bottom: 10px; - line-height: 20px; -} - -@media (max-width: 767px) { - .navbar-nav .open .dropdown-menu { - position: static; - float: none; - width: auto; - margin-top: 0; - background-color: transparent; - border: 0; - -webkit-box-shadow: none; - box-shadow: none; - } - - .navbar-nav .open .dropdown-menu > li > a, - .navbar-nav .open .dropdown-menu .dropdown-header { - padding: 5px 15px 5px 25px; - } - - .navbar-nav .open .dropdown-menu > li > a { - line-height: 20px; - } - - .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-nav .open .dropdown-menu > li > a:focus { - background-image: none; - } -} - -@media (min-width: 768px) { - .navbar-nav { - float: left; - margin: 0; - } - - .navbar-nav > li { - float: left; - } - - .navbar-nav > li > a { - padding-top: 15px; - padding-bottom: 15px; - } -} - -.navbar-form { - padding: 10px 15px; - margin-top: 8px; - margin-right: -15px; - margin-bottom: 8px; - margin-left: -15px; - border-top: 1px solid transparent; - border-bottom: 1px solid transparent; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); -} - -@media (min-width: 768px) { - .navbar-form .form-group { - display: inline-block; - margin-bottom: 0; - vertical-align: middle; - } - - .navbar-form .form-control { - display: inline-block; - width: auto; - vertical-align: middle; - } - - .navbar-form .form-control-static { - display: inline-block; - } - - .navbar-form .input-group { - display: inline-table; - vertical-align: middle; - } - - .navbar-form .input-group .input-group-addon, - .navbar-form .input-group .input-group-btn, - .navbar-form .input-group .form-control { - width: auto; - } - - .navbar-form .input-group > .form-control { - width: 100%; - } - - .navbar-form .control-label { - margin-bottom: 0; - vertical-align: middle; - } - - .navbar-form .radio, - .navbar-form .checkbox { - display: inline-block; - margin-top: 0; - margin-bottom: 0; - vertical-align: middle; - } - - .navbar-form .radio label, - .navbar-form .checkbox label { - padding-left: 0; - } - - .navbar-form .radio input[type="radio"], - .navbar-form .checkbox input[type="checkbox"] { - position: relative; - margin-left: 0; - } - - .navbar-form .has-feedback .form-control-feedback { - top: 0; - } -} - -@media (max-width: 767px) { - .navbar-form .form-group { - margin-bottom: 5px; - } - - .navbar-form .form-group:last-child { - margin-bottom: 0; - } -} - -@media (min-width: 768px) { - .navbar-form { - width: auto; - padding-top: 0; - padding-bottom: 0; - margin-right: 0; - margin-left: 0; - border: 0; - -webkit-box-shadow: none; - box-shadow: none; - } -} - -.navbar-nav > li > .dropdown-menu { - margin-top: 0; - border-top-left-radius: 0; - border-top-right-radius: 0; -} - -.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { - margin-bottom: 0; - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.navbar-btn { - margin-top: 8px; - margin-bottom: 8px; -} - -.navbar-btn.btn-sm { - margin-top: 10px; - margin-bottom: 10px; -} - -.navbar-btn.btn-xs { - margin-top: 14px; - margin-bottom: 14px; -} - -.navbar-text { - margin-top: 15px; - margin-bottom: 15px; -} - -@media (min-width: 768px) { - .navbar-text { - float: left; - margin-right: 15px; - margin-left: 15px; - } -} - -@media (min-width: 768px) { - .navbar-left { - float: left !important; - } - - .navbar-right { - float: right !important; - margin-right: -15px; - } - - .navbar-right ~ .navbar-right { - margin-right: 0; - } -} - -.navbar-default { - background-color: #f8f8f8; - border-color: #e7e7e7; -} - -.navbar-default .navbar-brand { - color: #777; -} - -.navbar-default .navbar-brand:hover, -.navbar-default .navbar-brand:focus { - color: #5e5e5e; - background-color: transparent; -} - -.navbar-default .navbar-text { - color: #777; -} - -.navbar-default .navbar-nav > li > a { - color: #777; -} - -.navbar-default .navbar-nav > li > a:hover, -.navbar-default .navbar-nav > li > a:focus { - color: #333; - background-color: transparent; -} - -.navbar-default .navbar-nav > .active > a, -.navbar-default .navbar-nav > .active > a:hover, -.navbar-default .navbar-nav > .active > a:focus { - color: #555; - background-color: #e7e7e7; -} - -.navbar-default .navbar-nav > .disabled > a, -.navbar-default .navbar-nav > .disabled > a:hover, -.navbar-default .navbar-nav > .disabled > a:focus { - color: #ccc; - background-color: transparent; -} - -.navbar-default .navbar-toggle { - border-color: #ddd; -} - -.navbar-default .navbar-toggle:hover, -.navbar-default .navbar-toggle:focus { - background-color: #ddd; -} - -.navbar-default .navbar-toggle .icon-bar { - background-color: #888; -} - -.navbar-default .navbar-collapse, -.navbar-default .navbar-form { - border-color: #e7e7e7; -} - -.navbar-default .navbar-nav > .open > a, -.navbar-default .navbar-nav > .open > a:hover, -.navbar-default .navbar-nav > .open > a:focus { - color: #555; - background-color: #e7e7e7; -} - -@media (max-width: 767px) { - .navbar-default .navbar-nav .open .dropdown-menu > li > a { - color: #777; - } - - .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { - color: #333; - background-color: transparent; - } - - .navbar-default .navbar-nav .open .dropdown-menu > .active > a, - .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #555; - background-color: #e7e7e7; - } - - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { - color: #ccc; - background-color: transparent; - } -} - -.navbar-default .navbar-link { - color: #777; -} - -.navbar-default .navbar-link:hover { - color: #333; -} - -.navbar-default .btn-link { - color: #777; -} - -.navbar-default .btn-link:hover, -.navbar-default .btn-link:focus { - color: #333; -} - -.navbar-default .btn-link[disabled]:hover, -fieldset[disabled] .navbar-default .btn-link:hover, -.navbar-default .btn-link[disabled]:focus, -fieldset[disabled] .navbar-default .btn-link:focus { - color: #ccc; -} - -.navbar-inverse { - background-color: #222; - border-color: #080808; -} - -.navbar-inverse .navbar-brand { - color: #9d9d9d; -} - -.navbar-inverse .navbar-brand:hover, -.navbar-inverse .navbar-brand:focus { - color: #fff; - background-color: transparent; -} - -.navbar-inverse .navbar-text { - color: #9d9d9d; -} - -.navbar-inverse .navbar-nav > li > a { - color: #9d9d9d; -} - -.navbar-inverse .navbar-nav > li > a:hover, -.navbar-inverse .navbar-nav > li > a:focus { - color: #fff; - background-color: transparent; -} - -.navbar-inverse .navbar-nav > .active > a, -.navbar-inverse .navbar-nav > .active > a:hover, -.navbar-inverse .navbar-nav > .active > a:focus { - color: #fff; - background-color: #080808; -} - -.navbar-inverse .navbar-nav > .disabled > a, -.navbar-inverse .navbar-nav > .disabled > a:hover, -.navbar-inverse .navbar-nav > .disabled > a:focus { - color: #444; - background-color: transparent; -} - -.navbar-inverse .navbar-toggle { - border-color: #333; -} - -.navbar-inverse .navbar-toggle:hover, -.navbar-inverse .navbar-toggle:focus { - background-color: #333; -} - -.navbar-inverse .navbar-toggle .icon-bar { - background-color: #fff; -} - -.navbar-inverse .navbar-collapse, -.navbar-inverse .navbar-form { - border-color: #101010; -} - -.navbar-inverse .navbar-nav > .open > a, -.navbar-inverse .navbar-nav > .open > a:hover, -.navbar-inverse .navbar-nav > .open > a:focus { - color: #fff; - background-color: #080808; -} - -@media (max-width: 767px) { - .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { - border-color: #080808; - } - - .navbar-inverse .navbar-nav .open .dropdown-menu .divider { - background-color: #080808; - } - - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { - color: #9d9d9d; - } - - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { - color: #fff; - background-color: transparent; - } - - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #fff; - background-color: #080808; - } - - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { - color: #444; - background-color: transparent; - } -} - -.navbar-inverse .navbar-link { - color: #9d9d9d; -} - -.navbar-inverse .navbar-link:hover { - color: #fff; -} - -.navbar-inverse .btn-link { - color: #9d9d9d; -} - -.navbar-inverse .btn-link:hover, -.navbar-inverse .btn-link:focus { - color: #fff; -} - -.navbar-inverse .btn-link[disabled]:hover, -fieldset[disabled] .navbar-inverse .btn-link:hover, -.navbar-inverse .btn-link[disabled]:focus, -fieldset[disabled] .navbar-inverse .btn-link:focus { - color: #444; -} - -.breadcrumb { - padding: 8px 15px; - margin-bottom: 20px; - list-style: none; - background-color: #f5f5f5; - border-radius: 4px; -} - -.breadcrumb > li { - display: inline-block; -} - -.breadcrumb > li + li:before { - padding: 0 5px; - color: #ccc; - content: "/\00a0"; -} - -.breadcrumb > .active { - color: #777; -} - -.pagination { - display: inline-block; - padding-left: 0; - margin: 20px 0; - border-radius: 4px; -} - -.pagination > li { - display: inline; -} - -.pagination > li > a, -.pagination > li > span { - position: relative; - float: left; - padding: 6px 12px; - margin-left: -1px; - line-height: 1.42857143; - color: #337ab7; - text-decoration: none; - background-color: #fff; - border: 1px solid #ddd; -} - -.pagination > li:first-child > a, -.pagination > li:first-child > span { - margin-left: 0; - border-top-left-radius: 4px; - border-bottom-left-radius: 4px; -} - -.pagination > li:last-child > a, -.pagination > li:last-child > span { - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; -} - -.pagination > li > a:hover, -.pagination > li > span:hover, -.pagination > li > a:focus, -.pagination > li > span:focus { - z-index: 2; - color: #23527c; - background-color: #eee; - border-color: #ddd; -} - -.pagination > .active > a, -.pagination > .active > span, -.pagination > .active > a:hover, -.pagination > .active > span:hover, -.pagination > .active > a:focus, -.pagination > .active > span:focus { - z-index: 3; - color: #fff; - cursor: default; - background-color: #337ab7; - border-color: #337ab7; -} - -.pagination > .disabled > span, -.pagination > .disabled > span:hover, -.pagination > .disabled > span:focus, -.pagination > .disabled > a, -.pagination > .disabled > a:hover, -.pagination > .disabled > a:focus { - color: #777; - cursor: not-allowed; - background-color: #fff; - border-color: #ddd; -} - -.pagination-lg > li > a, -.pagination-lg > li > span { - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; -} - -.pagination-lg > li:first-child > a, -.pagination-lg > li:first-child > span { - border-top-left-radius: 6px; - border-bottom-left-radius: 6px; -} - -.pagination-lg > li:last-child > a, -.pagination-lg > li:last-child > span { - border-top-right-radius: 6px; - border-bottom-right-radius: 6px; -} - -.pagination-sm > li > a, -.pagination-sm > li > span { - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; -} - -.pagination-sm > li:first-child > a, -.pagination-sm > li:first-child > span { - border-top-left-radius: 3px; - border-bottom-left-radius: 3px; -} - -.pagination-sm > li:last-child > a, -.pagination-sm > li:last-child > span { - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -.pager { - padding-left: 0; - margin: 20px 0; - text-align: center; - list-style: none; -} - -.pager li { - display: inline; -} - -.pager li > a, -.pager li > span { - display: inline-block; - padding: 5px 14px; - background-color: #fff; - border: 1px solid #ddd; - border-radius: 15px; -} - -.pager li > a:hover, -.pager li > a:focus { - text-decoration: none; - background-color: #eee; -} - -.pager .next > a, -.pager .next > span { - float: right; -} - -.pager .previous > a, -.pager .previous > span { - float: left; -} - -.pager .disabled > a, -.pager .disabled > a:hover, -.pager .disabled > a:focus, -.pager .disabled > span { - color: #777; - cursor: not-allowed; - background-color: #fff; -} - -.label { - display: inline; - padding: .2em .6em .3em; - font-size: 75%; - font-weight: bold; - line-height: 1; - color: #fff; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: .25em; -} - -a.label:hover, -a.label:focus { - color: #fff; - text-decoration: none; - cursor: pointer; -} - -.label:empty { - display: none; -} - -.btn .label { - position: relative; - top: -1px; -} - -.label-default { - background-color: #777; -} - -.label-default[href]:hover, -.label-default[href]:focus { - background-color: #5e5e5e; -} - -.label-primary { - background-color: #337ab7; -} - -.label-primary[href]:hover, -.label-primary[href]:focus { - background-color: #286090; -} - -.label-success { - background-color: #5cb85c; -} - -.label-success[href]:hover, -.label-success[href]:focus { - background-color: #449d44; -} - -.label-info { - background-color: #5bc0de; -} - -.label-info[href]:hover, -.label-info[href]:focus { - background-color: #31b0d5; -} - -.label-warning { - background-color: #f0ad4e; -} - -.label-warning[href]:hover, -.label-warning[href]:focus { - background-color: #ec971f; -} - -.label-danger { - background-color: #d9534f; -} - -.label-danger[href]:hover, -.label-danger[href]:focus { - background-color: #c9302c; -} - -.badge { - display: inline-block; - min-width: 10px; - padding: 3px 7px; - font-size: 12px; - font-weight: bold; - line-height: 1; - color: #fff; - text-align: center; - white-space: nowrap; - vertical-align: middle; - background-color: #777; - border-radius: 10px; -} - -.badge:empty { - display: none; -} - -.btn .badge { - position: relative; - top: -1px; -} - -.btn-xs .badge, -.btn-group-xs > .btn .badge { - top: 0; - padding: 1px 5px; -} - -a.badge:hover, -a.badge:focus { - color: #fff; - text-decoration: none; - cursor: pointer; -} - -.list-group-item.active > .badge, -.nav-pills > .active > a > .badge { - color: #337ab7; - background-color: #fff; -} - -.list-group-item > .badge { - float: right; -} - -.list-group-item > .badge + .badge { - margin-right: 5px; -} - -.nav-pills > li > a > .badge { - margin-left: 3px; -} - -.jumbotron { - padding-top: 30px; - padding-bottom: 30px; - margin-bottom: 30px; - color: inherit; - background-color: #eee; -} - -.jumbotron h1, -.jumbotron .h1 { - color: inherit; -} - -.jumbotron p { - margin-bottom: 15px; - font-size: 21px; - font-weight: 200; -} - -.jumbotron > hr { - border-top-color: #d5d5d5; -} - -.container .jumbotron, -.container-fluid .jumbotron { - padding-right: 15px; - padding-left: 15px; - border-radius: 6px; -} - -.jumbotron .container { - max-width: 100%; -} - -@media screen and (min-width: 768px) { - .jumbotron { - padding-top: 48px; - padding-bottom: 48px; - } - - .container .jumbotron, - .container-fluid .jumbotron { - padding-right: 60px; - padding-left: 60px; - } - - .jumbotron h1, - .jumbotron .h1 { - font-size: 63px; - } -} - -.thumbnail { - display: block; - padding: 4px; - margin-bottom: 20px; - line-height: 1.42857143; - background-color: #fff; - border: 1px solid #ddd; - border-radius: 4px; - -webkit-transition: border .2s ease-in-out; - -o-transition: border .2s ease-in-out; - transition: border .2s ease-in-out; -} - -.thumbnail > img, -.thumbnail a > img { - margin-right: auto; - margin-left: auto; -} - -a.thumbnail:hover, -a.thumbnail:focus, -a.thumbnail.active { - border-color: #337ab7; -} - -.thumbnail .caption { - padding: 9px; - color: #333; -} - -.alert { - padding: 15px; - margin-bottom: 20px; - border: 1px solid transparent; - border-radius: 4px; -} - -.alert h4 { - margin-top: 0; - color: inherit; -} - -.alert .alert-link { - font-weight: bold; -} - -.alert > p, -.alert > ul { - margin-bottom: 0; -} - -.alert > p + p { - margin-top: 5px; -} - -.alert-dismissable, -.alert-dismissible { - padding-right: 35px; -} - -.alert-dismissable .close, -.alert-dismissible .close { - position: relative; - top: -2px; - right: -21px; - color: inherit; -} - -.alert-success { - color: #3c763d; - background-color: #dff0d8; - border-color: #d6e9c6; -} - -.alert-success hr { - border-top-color: #c9e2b3; -} - -.alert-success .alert-link { - color: #2b542c; -} - -.alert-info { - color: #31708f; - background-color: #d9edf7; - border-color: #bce8f1; -} - -.alert-info hr { - border-top-color: #a6e1ec; -} - -.alert-info .alert-link { - color: #245269; -} - -.alert-warning { - color: #8a6d3b; - background-color: #fcf8e3; - border-color: #faebcc; -} - -.alert-warning hr { - border-top-color: #f7e1b5; -} - -.alert-warning .alert-link { - color: #66512c; -} - -.alert-danger { - color: #a94442; - background-color: #f2dede; - border-color: #ebccd1; -} - -.alert-danger hr { - border-top-color: #e4b9c0; -} - -.alert-danger .alert-link { - color: #843534; -} - -@-webkit-keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} - -@-o-keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} - -@keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} - -.progress { - height: 20px; - margin-bottom: 20px; - overflow: hidden; - background-color: #f5f5f5; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); - box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); -} - -.progress-bar { - float: left; - width: 0; - height: 100%; - font-size: 12px; - line-height: 20px; - color: #fff; - text-align: center; - background-color: #337ab7; - -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); - -webkit-transition: width .6s ease; - -o-transition: width .6s ease; - transition: width .6s ease; -} - -.progress-striped .progress-bar, -.progress-bar-striped { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - -webkit-background-size: 40px 40px; - background-size: 40px 40px; -} - -.progress.active .progress-bar, -.progress-bar.active { - -webkit-animation: progress-bar-stripes 2s linear infinite; - -o-animation: progress-bar-stripes 2s linear infinite; - animation: progress-bar-stripes 2s linear infinite; -} - -.progress-bar-success { - background-color: #5cb85c; -} - -.progress-striped .progress-bar-success { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -} - -.progress-bar-info { - background-color: #5bc0de; -} - -.progress-striped .progress-bar-info { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -} - -.progress-bar-warning { - background-color: #f0ad4e; -} - -.progress-striped .progress-bar-warning { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -} - -.progress-bar-danger { - background-color: #d9534f; -} - -.progress-striped .progress-bar-danger { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -} - -.media { - margin-top: 15px; -} - -.media:first-child { - margin-top: 0; -} - -.media, -.media-body { - overflow: hidden; - zoom: 1; -} - -.media-body { - width: 10000px; -} - -.media-object { - display: block; -} - -.media-object.img-thumbnail { - max-width: none; -} - -.media-right, -.media > .pull-right { - padding-left: 10px; -} - -.media-left, -.media > .pull-left { - padding-right: 10px; -} - -.media-left, -.media-right, -.media-body { - display: table-cell; - vertical-align: top; -} - -.media-middle { - vertical-align: middle; -} - -.media-bottom { - vertical-align: bottom; -} - -.media-heading { - margin-top: 0; - margin-bottom: 5px; -} - -.media-list { - padding-left: 0; - list-style: none; -} - -.list-group { - padding-left: 0; - margin-bottom: 20px; -} - -.list-group-item { - position: relative; - display: block; - padding: 10px 15px; - margin-bottom: -1px; - background-color: #fff; - border: 1px solid #ddd; -} - -.list-group-item:first-child { - border-top-left-radius: 4px; - border-top-right-radius: 4px; -} - -.list-group-item:last-child { - margin-bottom: 0; - border-bottom-right-radius: 4px; - border-bottom-left-radius: 4px; -} - -a.list-group-item, -button.list-group-item { - color: #555; -} - -a.list-group-item .list-group-item-heading, -button.list-group-item .list-group-item-heading { - color: #333; -} - -a.list-group-item:hover, -button.list-group-item:hover, -a.list-group-item:focus, -button.list-group-item:focus { - color: #555; - text-decoration: none; - background-color: #f5f5f5; -} - -button.list-group-item { - width: 100%; - text-align: left; -} - -.list-group-item.disabled, -.list-group-item.disabled:hover, -.list-group-item.disabled:focus { - color: #777; - cursor: not-allowed; - background-color: #eee; -} - -.list-group-item.disabled .list-group-item-heading, -.list-group-item.disabled:hover .list-group-item-heading, -.list-group-item.disabled:focus .list-group-item-heading { - color: inherit; -} - -.list-group-item.disabled .list-group-item-text, -.list-group-item.disabled:hover .list-group-item-text, -.list-group-item.disabled:focus .list-group-item-text { - color: #777; -} - -.list-group-item.active, -.list-group-item.active:hover, -.list-group-item.active:focus { - z-index: 2; - color: #fff; - background-color: #337ab7; - border-color: #337ab7; -} - -.list-group-item.active .list-group-item-heading, -.list-group-item.active:hover .list-group-item-heading, -.list-group-item.active:focus .list-group-item-heading, -.list-group-item.active .list-group-item-heading > small, -.list-group-item.active:hover .list-group-item-heading > small, -.list-group-item.active:focus .list-group-item-heading > small, -.list-group-item.active .list-group-item-heading > .small, -.list-group-item.active:hover .list-group-item-heading > .small, -.list-group-item.active:focus .list-group-item-heading > .small { - color: inherit; -} - -.list-group-item.active .list-group-item-text, -.list-group-item.active:hover .list-group-item-text, -.list-group-item.active:focus .list-group-item-text { - color: #c7ddef; -} - -.list-group-item-success { - color: #3c763d; - background-color: #dff0d8; -} - -a.list-group-item-success, -button.list-group-item-success { - color: #3c763d; -} - -a.list-group-item-success .list-group-item-heading, -button.list-group-item-success .list-group-item-heading { - color: inherit; -} - -a.list-group-item-success:hover, -button.list-group-item-success:hover, -a.list-group-item-success:focus, -button.list-group-item-success:focus { - color: #3c763d; - background-color: #d0e9c6; -} - -a.list-group-item-success.active, -button.list-group-item-success.active, -a.list-group-item-success.active:hover, -button.list-group-item-success.active:hover, -a.list-group-item-success.active:focus, -button.list-group-item-success.active:focus { - color: #fff; - background-color: #3c763d; - border-color: #3c763d; -} - -.list-group-item-info { - color: #31708f; - background-color: #d9edf7; -} - -a.list-group-item-info, -button.list-group-item-info { - color: #31708f; -} - -a.list-group-item-info .list-group-item-heading, -button.list-group-item-info .list-group-item-heading { - color: inherit; -} - -a.list-group-item-info:hover, -button.list-group-item-info:hover, -a.list-group-item-info:focus, -button.list-group-item-info:focus { - color: #31708f; - background-color: #c4e3f3; -} - -a.list-group-item-info.active, -button.list-group-item-info.active, -a.list-group-item-info.active:hover, -button.list-group-item-info.active:hover, -a.list-group-item-info.active:focus, -button.list-group-item-info.active:focus { - color: #fff; - background-color: #31708f; - border-color: #31708f; -} - -.list-group-item-warning { - color: #8a6d3b; - background-color: #fcf8e3; -} - -a.list-group-item-warning, -button.list-group-item-warning { - color: #8a6d3b; -} - -a.list-group-item-warning .list-group-item-heading, -button.list-group-item-warning .list-group-item-heading { - color: inherit; -} - -a.list-group-item-warning:hover, -button.list-group-item-warning:hover, -a.list-group-item-warning:focus, -button.list-group-item-warning:focus { - color: #8a6d3b; - background-color: #faf2cc; -} - -a.list-group-item-warning.active, -button.list-group-item-warning.active, -a.list-group-item-warning.active:hover, -button.list-group-item-warning.active:hover, -a.list-group-item-warning.active:focus, -button.list-group-item-warning.active:focus { - color: #fff; - background-color: #8a6d3b; - border-color: #8a6d3b; -} - -.list-group-item-danger { - color: #a94442; - background-color: #f2dede; -} - -a.list-group-item-danger, -button.list-group-item-danger { - color: #a94442; -} - -a.list-group-item-danger .list-group-item-heading, -button.list-group-item-danger .list-group-item-heading { - color: inherit; -} - -a.list-group-item-danger:hover, -button.list-group-item-danger:hover, -a.list-group-item-danger:focus, -button.list-group-item-danger:focus { - color: #a94442; - background-color: #ebcccc; -} - -a.list-group-item-danger.active, -button.list-group-item-danger.active, -a.list-group-item-danger.active:hover, -button.list-group-item-danger.active:hover, -a.list-group-item-danger.active:focus, -button.list-group-item-danger.active:focus { - color: #fff; - background-color: #a94442; - border-color: #a94442; -} - -.list-group-item-heading { - margin-top: 0; - margin-bottom: 5px; -} - -.list-group-item-text { - margin-bottom: 0; - line-height: 1.3; -} - -.panel { - margin-bottom: 20px; - background-color: #fff; - border: 1px solid transparent; - border-radius: 4px; - -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); - box-shadow: 0 1px 1px rgba(0, 0, 0, .05); -} - -.panel-body { - padding: 15px; -} - -.panel-heading { - padding: 10px 15px; - border-bottom: 1px solid transparent; - border-top-left-radius: 3px; - border-top-right-radius: 3px; -} - -.panel-heading > .dropdown .dropdown-toggle { - color: inherit; -} - -.panel-title { - margin-top: 0; - margin-bottom: 0; - font-size: 16px; - color: inherit; -} - -.panel-title > a, -.panel-title > small, -.panel-title > .small, -.panel-title > small > a, -.panel-title > .small > a { - color: inherit; -} - -.panel-footer { - padding: 10px 15px; - background-color: #f5f5f5; - border-top: 1px solid #ddd; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} - -.panel > .list-group, -.panel > .panel-collapse > .list-group { - margin-bottom: 0; -} - -.panel > .list-group .list-group-item, -.panel > .panel-collapse > .list-group .list-group-item { - border-width: 1px 0; - border-radius: 0; -} - -.panel > .list-group:first-child .list-group-item:first-child, -.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { - border-top: 0; - border-top-left-radius: 3px; - border-top-right-radius: 3px; -} - -.panel > .list-group:last-child .list-group-item:last-child, -.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { - border-bottom: 0; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} - -.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { - border-top-left-radius: 0; - border-top-right-radius: 0; -} - -.panel-heading + .list-group .list-group-item:first-child { - border-top-width: 0; -} - -.list-group + .panel-footer { - border-top-width: 0; -} - -.panel > .table, -.panel > .table-responsive > .table, -.panel > .panel-collapse > .table { - margin-bottom: 0; -} - -.panel > .table caption, -.panel > .table-responsive > .table caption, -.panel > .panel-collapse > .table caption { - padding-right: 15px; - padding-left: 15px; -} - -.panel > .table:first-child, -.panel > .table-responsive:first-child > .table:first-child { - border-top-left-radius: 3px; - border-top-right-radius: 3px; -} - -.panel > .table:first-child > thead:first-child > tr:first-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, -.panel > .table:first-child > tbody:first-child > tr:first-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { - border-top-left-radius: 3px; - border-top-right-radius: 3px; -} - -.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, -.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, -.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, -.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { - border-top-left-radius: 3px; -} - -.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, -.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, -.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, -.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { - border-top-right-radius: 3px; -} - -.panel > .table:last-child, -.panel > .table-responsive:last-child > .table:last-child { - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} - -.panel > .table:last-child > tbody:last-child > tr:last-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} - -.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, -.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { - border-bottom-left-radius: 3px; -} - -.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, -.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { - border-bottom-right-radius: 3px; -} - -.panel > .panel-body + .table, -.panel > .panel-body + .table-responsive, -.panel > .table + .panel-body, -.panel > .table-responsive + .panel-body { - border-top: 1px solid #ddd; -} - -.panel > .table > tbody:first-child > tr:first-child th, -.panel > .table > tbody:first-child > tr:first-child td { - border-top: 0; -} - -.panel > .table-bordered, -.panel > .table-responsive > .table-bordered { - border: 0; -} - -.panel > .table-bordered > thead > tr > th:first-child, -.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, -.panel > .table-bordered > tbody > tr > th:first-child, -.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, -.panel > .table-bordered > tfoot > tr > th:first-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, -.panel > .table-bordered > thead > tr > td:first-child, -.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, -.panel > .table-bordered > tbody > tr > td:first-child, -.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, -.panel > .table-bordered > tfoot > tr > td:first-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { - border-left: 0; -} - -.panel > .table-bordered > thead > tr > th:last-child, -.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, -.panel > .table-bordered > tbody > tr > th:last-child, -.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, -.panel > .table-bordered > tfoot > tr > th:last-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, -.panel > .table-bordered > thead > tr > td:last-child, -.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, -.panel > .table-bordered > tbody > tr > td:last-child, -.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, -.panel > .table-bordered > tfoot > tr > td:last-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { - border-right: 0; -} - -.panel > .table-bordered > thead > tr:first-child > td, -.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, -.panel > .table-bordered > tbody > tr:first-child > td, -.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, -.panel > .table-bordered > thead > tr:first-child > th, -.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, -.panel > .table-bordered > tbody > tr:first-child > th, -.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { - border-bottom: 0; -} - -.panel > .table-bordered > tbody > tr:last-child > td, -.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, -.panel > .table-bordered > tfoot > tr:last-child > td, -.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, -.panel > .table-bordered > tbody > tr:last-child > th, -.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, -.panel > .table-bordered > tfoot > tr:last-child > th, -.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { - border-bottom: 0; -} - -.panel > .table-responsive { - margin-bottom: 0; - border: 0; -} - -.panel-group { - margin-bottom: 20px; -} - -.panel-group .panel { - margin-bottom: 0; - border-radius: 4px; -} - -.panel-group .panel + .panel { - margin-top: 5px; -} - -.panel-group .panel-heading { - border-bottom: 0; -} - -.panel-group .panel-heading + .panel-collapse > .panel-body, -.panel-group .panel-heading + .panel-collapse > .list-group { - border-top: 1px solid #ddd; -} - -.panel-group .panel-footer { - border-top: 0; -} - -.panel-group .panel-footer + .panel-collapse .panel-body { - border-bottom: 1px solid #ddd; -} - -.panel-default { - border-color: #ddd; -} - -.panel-default > .panel-heading { - color: #333; - background-color: #f5f5f5; - border-color: #ddd; -} - -.panel-default > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #ddd; -} - -.panel-default > .panel-heading .badge { - color: #f5f5f5; - background-color: #333; -} - -.panel-default > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #ddd; -} - -.panel-primary { - border-color: #337ab7; -} - -.panel-primary > .panel-heading { - color: #fff; - background-color: #337ab7; - border-color: #337ab7; -} - -.panel-primary > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #337ab7; -} - -.panel-primary > .panel-heading .badge { - color: #337ab7; - background-color: #fff; -} - -.panel-primary > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #337ab7; -} - -.panel-success { - border-color: #d6e9c6; -} - -.panel-success > .panel-heading { - color: #3c763d; - background-color: #dff0d8; - border-color: #d6e9c6; -} - -.panel-success > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #d6e9c6; -} - -.panel-success > .panel-heading .badge { - color: #dff0d8; - background-color: #3c763d; -} - -.panel-success > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #d6e9c6; -} - -.panel-info { - border-color: #bce8f1; -} - -.panel-info > .panel-heading { - color: #31708f; - background-color: #d9edf7; - border-color: #bce8f1; -} - -.panel-info > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #bce8f1; -} - -.panel-info > .panel-heading .badge { - color: #d9edf7; - background-color: #31708f; -} - -.panel-info > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #bce8f1; -} - -.panel-warning { - border-color: #faebcc; -} - -.panel-warning > .panel-heading { - color: #8a6d3b; - background-color: #fcf8e3; - border-color: #faebcc; -} - -.panel-warning > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #faebcc; -} - -.panel-warning > .panel-heading .badge { - color: #fcf8e3; - background-color: #8a6d3b; -} - -.panel-warning > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #faebcc; -} - -.panel-danger { - border-color: #ebccd1; -} - -.panel-danger > .panel-heading { - color: #a94442; - background-color: #f2dede; - border-color: #ebccd1; -} - -.panel-danger > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #ebccd1; -} - -.panel-danger > .panel-heading .badge { - color: #f2dede; - background-color: #a94442; -} - -.panel-danger > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #ebccd1; -} - -.embed-responsive { - position: relative; - display: block; - height: 0; - padding: 0; - overflow: hidden; -} - -.embed-responsive .embed-responsive-item, -.embed-responsive iframe, -.embed-responsive embed, -.embed-responsive object, -.embed-responsive video { - position: absolute; - top: 0; - bottom: 0; - left: 0; - width: 100%; - height: 100%; - border: 0; -} - -.embed-responsive-16by9 { - padding-bottom: 56.25%; -} - -.embed-responsive-4by3 { - padding-bottom: 75%; -} - -.well { - min-height: 20px; - padding: 19px; - margin-bottom: 20px; - background-color: #f5f5f5; - border: 1px solid #e3e3e3; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); -} - -.well blockquote { - border-color: #ddd; - border-color: rgba(0, 0, 0, .15); -} - -.well-lg { - padding: 24px; - border-radius: 6px; -} - -.well-sm { - padding: 9px; - border-radius: 3px; -} - -.close { - float: right; - font-size: 21px; - font-weight: bold; - line-height: 1; - color: #000; - text-shadow: 0 1px 0 #fff; - filter: alpha(opacity=20); - opacity: .2; -} - -.close:hover, -.close:focus { - color: #000; - text-decoration: none; - cursor: pointer; - filter: alpha(opacity=50); - opacity: .5; -} - -button.close { - -webkit-appearance: none; - padding: 0; - cursor: pointer; - background: transparent; - border: 0; -} - -.modal-open { - overflow: hidden; -} - -.modal { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1050; - display: none; - overflow: hidden; - -webkit-overflow-scrolling: touch; - outline: 0; -} - -.modal.fade .modal-dialog { - -webkit-transition: -webkit-transform .3s ease-out; - -o-transition: -o-transform .3s ease-out; - transition: transform .3s ease-out; - -webkit-transform: translate(0, -25%); - -ms-transform: translate(0, -25%); - -o-transform: translate(0, -25%); - transform: translate(0, -25%); -} - -.modal.in .modal-dialog { - -webkit-transform: translate(0, 0); - -ms-transform: translate(0, 0); - -o-transform: translate(0, 0); - transform: translate(0, 0); -} - -.modal-open .modal { - overflow-x: hidden; - overflow-y: auto; -} - -.modal-dialog { - position: relative; - width: auto; - margin: 10px; -} - -.modal-content { - position: relative; - background-color: #fff; - -webkit-background-clip: padding-box; - background-clip: padding-box; - border: 1px solid #999; - border: 1px solid rgba(0, 0, 0, .2); - border-radius: 6px; - outline: 0; - -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); - box-shadow: 0 3px 9px rgba(0, 0, 0, .5); -} - -.modal-backdrop { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1040; - background-color: #000; -} - -.modal-backdrop.fade { - filter: alpha(opacity=0); - opacity: 0; -} - -.modal-backdrop.in { - filter: alpha(opacity=50); - opacity: .5; -} - -.modal-header { - padding: 15px; - border-bottom: 1px solid #e5e5e5; -} - -.modal-header .close { - margin-top: -2px; -} - -.modal-title { - margin: 0; - line-height: 1.42857143; -} - -.modal-body { - position: relative; - padding: 15px; -} - -.modal-footer { - padding: 15px; - text-align: right; - border-top: 1px solid #e5e5e5; -} - -.modal-footer .btn + .btn { - margin-bottom: 0; - margin-left: 5px; -} - -.modal-footer .btn-group .btn + .btn { - margin-left: -1px; -} - -.modal-footer .btn-block + .btn-block { - margin-left: 0; -} - -.modal-scrollbar-measure { - position: absolute; - top: -9999px; - width: 50px; - height: 50px; - overflow: scroll; -} - -@media (min-width: 768px) { - .modal-dialog { - width: 600px; - margin: 30px auto; - } - - .modal-content { - -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); - box-shadow: 0 5px 15px rgba(0, 0, 0, .5); - } - - .modal-sm { - width: 300px; - } -} - -@media (min-width: 992px) { - .modal-lg { - width: 900px; - } -} - -.tooltip { - position: absolute; - z-index: 1070; - display: block; - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 12px; - font-style: normal; - font-weight: normal; - line-height: 1.42857143; - text-align: left; - text-align: start; - text-decoration: none; - text-shadow: none; - text-transform: none; - letter-spacing: normal; - word-break: normal; - word-spacing: normal; - word-wrap: normal; - white-space: normal; - filter: alpha(opacity=0); - opacity: 0; - - line-break: auto; -} - -.tooltip.in { - filter: alpha(opacity=90); - opacity: .9; -} - -.tooltip.top { - padding: 5px 0; - margin-top: -3px; -} - -.tooltip.right { - padding: 0 5px; - margin-left: 3px; -} - -.tooltip.bottom { - padding: 5px 0; - margin-top: 3px; -} - -.tooltip.left { - padding: 0 5px; - margin-left: -3px; -} - -.tooltip-inner { - max-width: 200px; - padding: 3px 8px; - color: #fff; - text-align: center; - background-color: #000; - border-radius: 4px; -} - -.tooltip-arrow { - position: absolute; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; -} - -.tooltip.top .tooltip-arrow { - bottom: 0; - left: 50%; - margin-left: -5px; - border-width: 5px 5px 0; - border-top-color: #000; -} - -.tooltip.top-left .tooltip-arrow { - right: 5px; - bottom: 0; - margin-bottom: -5px; - border-width: 5px 5px 0; - border-top-color: #000; -} - -.tooltip.top-right .tooltip-arrow { - bottom: 0; - left: 5px; - margin-bottom: -5px; - border-width: 5px 5px 0; - border-top-color: #000; -} - -.tooltip.right .tooltip-arrow { - top: 50%; - left: 0; - margin-top: -5px; - border-width: 5px 5px 5px 0; - border-right-color: #000; -} - -.tooltip.left .tooltip-arrow { - top: 50%; - right: 0; - margin-top: -5px; - border-width: 5px 0 5px 5px; - border-left-color: #000; -} - -.tooltip.bottom .tooltip-arrow { - top: 0; - left: 50%; - margin-left: -5px; - border-width: 0 5px 5px; - border-bottom-color: #000; -} - -.tooltip.bottom-left .tooltip-arrow { - top: 0; - right: 5px; - margin-top: -5px; - border-width: 0 5px 5px; - border-bottom-color: #000; -} - -.tooltip.bottom-right .tooltip-arrow { - top: 0; - left: 5px; - margin-top: -5px; - border-width: 0 5px 5px; - border-bottom-color: #000; -} - -.popover { - position: absolute; - top: 0; - left: 0; - z-index: 1060; - display: none; - max-width: 276px; - padding: 1px; - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 14px; - font-style: normal; - font-weight: normal; - line-height: 1.42857143; - text-align: left; - text-align: start; - text-decoration: none; - text-shadow: none; - text-transform: none; - letter-spacing: normal; - word-break: normal; - word-spacing: normal; - word-wrap: normal; - white-space: normal; - background-color: #fff; - -webkit-background-clip: padding-box; - background-clip: padding-box; - border: 1px solid #ccc; - border: 1px solid rgba(0, 0, 0, .2); - border-radius: 6px; - -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); - box-shadow: 0 5px 10px rgba(0, 0, 0, .2); - - line-break: auto; -} - -.popover.top { - margin-top: -10px; -} - -.popover.right { - margin-left: 10px; -} - -.popover.bottom { - margin-top: 10px; -} - -.popover.left { - margin-left: -10px; -} - -.popover-title { - padding: 8px 14px; - margin: 0; - font-size: 14px; - background-color: #f7f7f7; - border-bottom: 1px solid #ebebeb; - border-radius: 5px 5px 0 0; -} - -.popover-content { - padding: 9px 14px; -} - -.popover > .arrow, -.popover > .arrow:after { - position: absolute; - display: block; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; -} - -.popover > .arrow { - border-width: 11px; -} - -.popover > .arrow:after { - content: ""; - border-width: 10px; -} - -.popover.top > .arrow { - bottom: -11px; - left: 50%; - margin-left: -11px; - border-top-color: #999; - border-top-color: rgba(0, 0, 0, .25); - border-bottom-width: 0; -} - -.popover.top > .arrow:after { - bottom: 1px; - margin-left: -10px; - content: " "; - border-top-color: #fff; - border-bottom-width: 0; -} - -.popover.right > .arrow { - top: 50%; - left: -11px; - margin-top: -11px; - border-right-color: #999; - border-right-color: rgba(0, 0, 0, .25); - border-left-width: 0; -} - -.popover.right > .arrow:after { - bottom: -10px; - left: 1px; - content: " "; - border-right-color: #fff; - border-left-width: 0; -} - -.popover.bottom > .arrow { - top: -11px; - left: 50%; - margin-left: -11px; - border-top-width: 0; - border-bottom-color: #999; - border-bottom-color: rgba(0, 0, 0, .25); -} - -.popover.bottom > .arrow:after { - top: 1px; - margin-left: -10px; - content: " "; - border-top-width: 0; - border-bottom-color: #fff; -} - -.popover.left > .arrow { - top: 50%; - right: -11px; - margin-top: -11px; - border-right-width: 0; - border-left-color: #999; - border-left-color: rgba(0, 0, 0, .25); -} - -.popover.left > .arrow:after { - right: 1px; - bottom: -10px; - content: " "; - border-right-width: 0; - border-left-color: #fff; -} - -.carousel { - position: relative; -} - -.carousel-inner { - position: relative; - width: 100%; - overflow: hidden; -} - -.carousel-inner > .item { - position: relative; - display: none; - -webkit-transition: .6s ease-in-out left; - -o-transition: .6s ease-in-out left; - transition: .6s ease-in-out left; -} - -.carousel-inner > .item > img, -.carousel-inner > .item > a > img { - line-height: 1; -} - -@media all and (transform-3d), (-webkit-transform-3d) { - .carousel-inner > .item { - -webkit-transition: -webkit-transform .6s ease-in-out; - -o-transition: -o-transform .6s ease-in-out; - transition: transform .6s ease-in-out; - - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - -webkit-perspective: 1000px; - perspective: 1000px; - } - - .carousel-inner > .item.next, - .carousel-inner > .item.active.right { - left: 0; - -webkit-transform: translate3d(100%, 0, 0); - transform: translate3d(100%, 0, 0); - } - - .carousel-inner > .item.prev, - .carousel-inner > .item.active.left { - left: 0; - -webkit-transform: translate3d(-100%, 0, 0); - transform: translate3d(-100%, 0, 0); - } - - .carousel-inner > .item.next.left, - .carousel-inner > .item.prev.right, - .carousel-inner > .item.active { - left: 0; - -webkit-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); - } -} - -.carousel-inner > .active, -.carousel-inner > .next, -.carousel-inner > .prev { - display: block; -} - -.carousel-inner > .active { - left: 0; -} - -.carousel-inner > .next, -.carousel-inner > .prev { - position: absolute; - top: 0; - width: 100%; -} - -.carousel-inner > .next { - left: 100%; -} - -.carousel-inner > .prev { - left: -100%; -} - -.carousel-inner > .next.left, -.carousel-inner > .prev.right { - left: 0; -} - -.carousel-inner > .active.left { - left: -100%; -} - -.carousel-inner > .active.right { - left: 100%; -} - -.carousel-control { - position: absolute; - top: 0; - bottom: 0; - left: 0; - width: 15%; - font-size: 20px; - color: #fff; - text-align: center; - text-shadow: 0 1px 2px rgba(0, 0, 0, .6); - background-color: rgba(0, 0, 0, 0); - filter: alpha(opacity=50); - opacity: .5; -} - -.carousel-control.left { - background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); - background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); - background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001))); - background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); - background-repeat: repeat-x; -} - -.carousel-control.right { - right: 0; - left: auto; - background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); - background-image: -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); - background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5))); - background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); - background-repeat: repeat-x; -} - -.carousel-control:hover, -.carousel-control:focus { - color: #fff; - text-decoration: none; - filter: alpha(opacity=90); - outline: 0; - opacity: .9; -} - -.carousel-control .icon-prev, -.carousel-control .icon-next, -.carousel-control .glyphicon-chevron-left, -.carousel-control .glyphicon-chevron-right { - position: absolute; - top: 50%; - z-index: 5; - display: inline-block; - margin-top: -10px; -} - -.carousel-control .icon-prev, -.carousel-control .glyphicon-chevron-left { - left: 50%; - margin-left: -10px; -} - -.carousel-control .icon-next, -.carousel-control .glyphicon-chevron-right { - right: 50%; - margin-right: -10px; -} - -.carousel-control .icon-prev, -.carousel-control .icon-next { - width: 20px; - height: 20px; - font-family: serif; - line-height: 1; -} - -.carousel-control .icon-prev:before { - content: '\2039'; -} - -.carousel-control .icon-next:before { - content: '\203a'; -} - -.carousel-indicators { - position: absolute; - bottom: 10px; - left: 50%; - z-index: 15; - width: 60%; - padding-left: 0; - margin-left: -30%; - text-align: center; - list-style: none; -} - -.carousel-indicators li { - display: inline-block; - width: 10px; - height: 10px; - margin: 1px; - text-indent: -999px; - cursor: pointer; - background-color: #000 \9; - background-color: rgba(0, 0, 0, 0); - border: 1px solid #fff; - border-radius: 10px; -} - -.carousel-indicators .active { - width: 12px; - height: 12px; - margin: 0; - background-color: #fff; -} - -.carousel-caption { - position: absolute; - right: 15%; - bottom: 20px; - left: 15%; - z-index: 10; - padding-top: 20px; - padding-bottom: 20px; - color: #fff; - text-align: center; - text-shadow: 0 1px 2px rgba(0, 0, 0, .6); -} - -.carousel-caption .btn { - text-shadow: none; -} - -@media screen and (min-width: 768px) { - .carousel-control .glyphicon-chevron-left, - .carousel-control .glyphicon-chevron-right, - .carousel-control .icon-prev, - .carousel-control .icon-next { - width: 30px; - height: 30px; - margin-top: -10px; - font-size: 30px; - } - - .carousel-control .glyphicon-chevron-left, - .carousel-control .icon-prev { - margin-left: -10px; - } - - .carousel-control .glyphicon-chevron-right, - .carousel-control .icon-next { - margin-right: -10px; - } - - .carousel-caption { - right: 20%; - left: 20%; - padding-bottom: 30px; - } - - .carousel-indicators { - bottom: 20px; - } -} - -.clearfix:before, -.clearfix:after, -.dl-horizontal dd:before, -.dl-horizontal dd:after, -.container:before, -.container:after, -.container-fluid:before, -.container-fluid:after, -.row:before, -.row:after, -.form-horizontal .form-group:before, -.form-horizontal .form-group:after, -.btn-toolbar:before, -.btn-toolbar:after, -.btn-group-vertical > .btn-group:before, -.btn-group-vertical > .btn-group:after, -.nav:before, -.nav:after, -.navbar:before, -.navbar:after, -.navbar-header:before, -.navbar-header:after, -.navbar-collapse:before, -.navbar-collapse:after, -.pager:before, -.pager:after, -.panel-body:before, -.panel-body:after, -.modal-header:before, -.modal-header:after, -.modal-footer:before, -.modal-footer:after { - display: table; - content: " "; -} - -.clearfix:after, -.dl-horizontal dd:after, -.container:after, -.container-fluid:after, -.row:after, -.form-horizontal .form-group:after, -.btn-toolbar:after, -.btn-group-vertical > .btn-group:after, -.nav:after, -.navbar:after, -.navbar-header:after, -.navbar-collapse:after, -.pager:after, -.panel-body:after, -.modal-header:after, -.modal-footer:after { - clear: both; -} - -.center-block { - display: block; - margin-right: auto; - margin-left: auto; -} - -.pull-right { - float: right !important; -} - -.pull-left { - float: left !important; -} - -.hide { - display: none !important; -} - -.show { - display: block !important; -} - -.invisible { - visibility: hidden; -} - -.text-hide { - font: 0/0 a; - color: transparent; - text-shadow: none; - background-color: transparent; - border: 0; -} - -.hidden { - display: none !important; -} - -.affix { - position: fixed; -} - -@-ms-viewport { - width: device-width; -} - -.visible-xs, -.visible-sm, -.visible-md, -.visible-lg { - display: none !important; -} - -.visible-xs-block, -.visible-xs-inline, -.visible-xs-inline-block, -.visible-sm-block, -.visible-sm-inline, -.visible-sm-inline-block, -.visible-md-block, -.visible-md-inline, -.visible-md-inline-block, -.visible-lg-block, -.visible-lg-inline, -.visible-lg-inline-block { - display: none !important; -} - -@media (max-width: 767px) { - .visible-xs { - display: block !important; - } - - table.visible-xs { - display: table !important; - } - - tr.visible-xs { - display: table-row !important; - } - - th.visible-xs, - td.visible-xs { - display: table-cell !important; - } -} - -@media (max-width: 767px) { - .visible-xs-block { - display: block !important; - } -} - -@media (max-width: 767px) { - .visible-xs-inline { - display: inline !important; - } -} - -@media (max-width: 767px) { - .visible-xs-inline-block { - display: inline-block !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm { - display: block !important; - } - - table.visible-sm { - display: table !important; - } - - tr.visible-sm { - display: table-row !important; - } - - th.visible-sm, - td.visible-sm { - display: table-cell !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm-block { - display: block !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm-inline { - display: inline !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm-inline-block { - display: inline-block !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md { - display: block !important; - } - - table.visible-md { - display: table !important; - } - - tr.visible-md { - display: table-row !important; - } - - th.visible-md, - td.visible-md { - display: table-cell !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md-block { - display: block !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md-inline { - display: inline !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md-inline-block { - display: inline-block !important; - } -} - -@media (min-width: 1200px) { - .visible-lg { - display: block !important; - } - - table.visible-lg { - display: table !important; - } - - tr.visible-lg { - display: table-row !important; - } - - th.visible-lg, - td.visible-lg { - display: table-cell !important; - } -} - -@media (min-width: 1200px) { - .visible-lg-block { - display: block !important; - } -} - -@media (min-width: 1200px) { - .visible-lg-inline { - display: inline !important; - } -} - -@media (min-width: 1200px) { - .visible-lg-inline-block { - display: inline-block !important; - } -} - -@media (max-width: 767px) { - .hidden-xs { - display: none !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .hidden-sm { - display: none !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .hidden-md { - display: none !important; - } -} - -@media (min-width: 1200px) { - .hidden-lg { - display: none !important; - } -} - -.visible-print { - display: none !important; -} - -@media print { - .visible-print { - display: block !important; - } - - table.visible-print { - display: table !important; - } - - tr.visible-print { - display: table-row !important; - } - - th.visible-print, - td.visible-print { - display: table-cell !important; - } -} - -.visible-print-block { - display: none !important; -} - -@media print { - .visible-print-block { - display: block !important; - } -} - -.visible-print-inline { - display: none !important; -} - -@media print { - .visible-print-inline { - display: inline !important; - } -} - -.visible-print-inline-block { - display: none !important; -} - -@media print { - .visible-print-inline-block { - display: inline-block !important; - } -} - -@media print { - .hidden-print { - display: none !important; - } -} - -/*# sourceMappingURL=bootstrap.css.map */ diff --git a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap.css.map b/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap.css.map deleted file mode 100644 index 7314b4ef7..000000000 --- a/pigx-visual/pigx-tx-manager/src/main/resources/static/static/bootstrap/css/bootstrap.css.map +++ /dev/null @@ -1,142 +0,0 @@ -{ - "version": 3, - "sources": [ - "bootstrap.css", - "less/normalize.less", - "less/print.less", - "less/glyphicons.less", - "less/scaffolding.less", - "less/mixins/vendor-prefixes.less", - "less/mixins/tab-focus.less", - "less/mixins/image.less", - "less/type.less", - "less/mixins/text-emphasis.less", - "less/mixins/background-variant.less", - "less/mixins/text-overflow.less", - "less/code.less", - "less/grid.less", - "less/mixins/grid.less", - "less/mixins/grid-framework.less", - "less/tables.less", - "less/mixins/table-row.less", - "less/forms.less", - "less/mixins/forms.less", - "less/buttons.less", - "less/mixins/buttons.less", - "less/mixins/opacity.less", - "less/component-animations.less", - "less/dropdowns.less", - "less/mixins/nav-divider.less", - "less/mixins/reset-filter.less", - "less/button-groups.less", - "less/mixins/border-radius.less", - "less/input-groups.less", - "less/navs.less", - "less/navbar.less", - "less/mixins/nav-vertical-align.less", - "less/utilities.less", - "less/breadcrumbs.less", - "less/pagination.less", - "less/mixins/pagination.less", - "less/pager.less", - "less/labels.less", - "less/mixins/labels.less", - "less/badges.less", - "less/jumbotron.less", - "less/thumbnails.less", - "less/alerts.less", - "less/mixins/alerts.less", - "less/progress-bars.less", - "less/mixins/gradients.less", - "less/mixins/progress-bar.less", - "less/media.less", - "less/list-group.less", - "less/mixins/list-group.less", - "less/panels.less", - "less/mixins/panels.less", - "less/responsive-embed.less", - "less/wells.less", - "less/close.less", - "less/modals.less", - "less/tooltip.less", - "less/mixins/reset-text.less", - "less/popovers.less", - "less/carousel.less", - "less/mixins/clearfix.less", - "less/mixins/center-block.less", - "less/mixins/hide-text.less", - "less/responsive-utilities.less", - "less/mixins/responsive-visibility.less" - ], - "names": [], - "mappings": "AAAA;;;;GAIG;AACH,4EAA4E;ACG5E;EACE,wBAAA;EACA,2BAAA;EACA,+BAAA;CDDD;ACQD;EACE,UAAA;CDND;ACmBD;;;;;;;;;;;;;EAaE,eAAA;CDjBD;ACyBD;;;;EAIE,sBAAA;EACA,yBAAA;CDvBD;AC+BD;EACE,cAAA;EACA,UAAA;CD7BD;ACqCD;;EAEE,cAAA;CDnCD;AC6CD;EACE,8BAAA;CD3CD;ACmDD;;EAEE,WAAA;CDjDD;AC2DD;EACE,0BAAA;CDzDD;ACgED;;EAEE,kBAAA;CD9DD;ACqED;EACE,mBAAA;CDnED;AC2ED;EACE,eAAA;EACA,iBAAA;CDzED;ACgFD;EACE,iBAAA;EACA,YAAA;CD9ED;ACqFD;EACE,eAAA;CDnFD;AC0FD;;EAEE,eAAA;EACA,eAAA;EACA,mBAAA;EACA,yBAAA;CDxFD;AC2FD;EACE,YAAA;CDzFD;AC4FD;EACE,gBAAA;CD1FD;ACoGD;EACE,UAAA;CDlGD;ACyGD;EACE,iBAAA;CDvGD;ACiHD;EACE,iBAAA;CD/GD;ACsHD;EACE,gCAAA;KAAA,6BAAA;UAAA,wBAAA;EACA,UAAA;CDpHD;AC2HD;EACE,eAAA;CDzHD;ACgID;;;;EAIE,kCAAA;EACA,eAAA;CD9HD;ACgJD;;;;;EAKE,eAAA;EACA,cAAA;EACA,UAAA;CD9ID;ACqJD;EACE,kBAAA;CDnJD;AC6JD;;EAEE,qBAAA;CD3JD;ACsKD;;;;EAIE,2BAAA;EACA,gBAAA;CDpKD;AC2KD;;EAEE,gBAAA;CDzKD;ACgLD;;EAEE,UAAA;EACA,WAAA;CD9KD;ACsLD;EACE,oBAAA;CDpLD;AC+LD;;EAEE,+BAAA;KAAA,4BAAA;UAAA,uBAAA;EACA,WAAA;CD7LD;ACsMD;;EAEE,aAAA;CDpMD;AC4MD;EACE,8BAAA;EACA,gCAAA;KAAA,6BAAA;UAAA,wBAAA;CD1MD;ACmND;;EAEE,yBAAA;CDjND;ACwND;EACE,0BAAA;EACA,cAAA;EACA,+BAAA;CDtND;AC8ND;EACE,UAAA;EACA,WAAA;CD5ND;ACmOD;EACE,eAAA;CDjOD;ACyOD;EACE,kBAAA;CDvOD;ACiPD;EACE,0BAAA;EACA,kBAAA;CD/OD;ACkPD;;EAEE,WAAA;CDhPD;AACD,qFAAqF;AElFrF;EA7FI;;;IAGI,mCAAA;IACA,uBAAA;IACA,oCAAA;YAAA,4BAAA;IACA,6BAAA;GFkLL;EE/KC;;IAEI,2BAAA;GFiLL;EE9KC;IACI,6BAAA;GFgLL;EE7KC;IACI,8BAAA;GF+KL;EE1KC;;IAEI,YAAA;GF4KL;EEzKC;;IAEI,uBAAA;IACA,yBAAA;GF2KL;EExKC;IACI,4BAAA;GF0KL;EEvKC;;IAEI,yBAAA;GFyKL;EEtKC;IACI,2BAAA;GFwKL;EErKC;;;IAGI,WAAA;IACA,UAAA;GFuKL;EEpKC;;IAEI,wBAAA;GFsKL;EEhKC;IACI,cAAA;GFkKL;EEhKC;;IAGQ,kCAAA;GFiKT;EE9JC;IACI,uBAAA;GFgKL;EE7JC;IACI,qCAAA;GF+JL;EEhKC;;IAKQ,kCAAA;GF+JT;EE5JC;;IAGQ,kCAAA;GF6JT;CACF;AGnPD;EACE,oCAAA;EACA,sDAAA;EACA,gYAAA;CHqPD;AG7OD;EACE,mBAAA;EACA,SAAA;EACA,sBAAA;EACA,oCAAA;EACA,mBAAA;EACA,oBAAA;EACA,eAAA;EACA,oCAAA;EACA,mCAAA;CH+OD;AG3OmC;EAAW,iBAAA;CH8O9C;AG7OmC;EAAW,iBAAA;CHgP9C;AG9OmC;;EAAW,iBAAA;CHkP9C;AGjPmC;EAAW,iBAAA;CHoP9C;AGnPmC;EAAW,iBAAA;CHsP9C;AGrPmC;EAAW,iBAAA;CHwP9C;AGvPmC;EAAW,iBAAA;CH0P9C;AGzPmC;EAAW,iBAAA;CH4P9C;AG3PmC;EAAW,iBAAA;CH8P9C;AG7PmC;EAAW,iBAAA;CHgQ9C;AG/PmC;EAAW,iBAAA;CHkQ9C;AGjQmC;EAAW,iBAAA;CHoQ9C;AGnQmC;EAAW,iBAAA;CHsQ9C;AGrQmC;EAAW,iBAAA;CHwQ9C;AGvQmC;EAAW,iBAAA;CH0Q9C;AGzQmC;EAAW,iBAAA;CH4Q9C;AG3QmC;EAAW,iBAAA;CH8Q9C;AG7QmC;EAAW,iBAAA;CHgR9C;AG/QmC;EAAW,iBAAA;CHkR9C;AGjRmC;EAAW,iBAAA;CHoR9C;AGnRmC;EAAW,iBAAA;CHsR9C;AGrRmC;EAAW,iBAAA;CHwR9C;AGvRmC;EAAW,iBAAA;CH0R9C;AGzRmC;EAAW,iBAAA;CH4R9C;AG3RmC;EAAW,iBAAA;CH8R9C;AG7RmC;EAAW,iBAAA;CHgS9C;AG/RmC;EAAW,iBAAA;CHkS9C;AGjSmC;EAAW,iBAAA;CHoS9C;AGnSmC;EAAW,iBAAA;CHsS9C;AGrSmC;EAAW,iBAAA;CHwS9C;AGvSmC;EAAW,iBAAA;CH0S9C;AGzSmC;EAAW,iBAAA;CH4S9C;AG3SmC;EAAW,iBAAA;CH8S9C;AG7SmC;EAAW,iBAAA;CHgT9C;AG/SmC;EAAW,iBAAA;CHkT9C;AGjTmC;EAAW,iBAAA;CHoT9C;AGnTmC;EAAW,iBAAA;CHsT9C;AGrTmC;EAAW,iBAAA;CHwT9C;AGvTmC;EAAW,iBAAA;CH0T9C;AGzTmC;EAAW,iBAAA;CH4T9C;AG3TmC;EAAW,iBAAA;CH8T9C;AG7TmC;EAAW,iBAAA;CHgU9C;AG/TmC;EAAW,iBAAA;CHkU9C;AGjUmC;EAAW,iBAAA;CHoU9C;AGnUmC;EAAW,iBAAA;CHsU9C;AGrUmC;EAAW,iBAAA;CHwU9C;AGvUmC;EAAW,iBAAA;CH0U9C;AGzUmC;EAAW,iBAAA;CH4U9C;AG3UmC;EAAW,iBAAA;CH8U9C;AG7UmC;EAAW,iBAAA;CHgV9C;AG/UmC;EAAW,iBAAA;CHkV9C;AGjVmC;EAAW,iBAAA;CHoV9C;AGnVmC;EAAW,iBAAA;CHsV9C;AGrVmC;EAAW,iBAAA;CHwV9C;AGvVmC;EAAW,iBAAA;CH0V9C;AGzVmC;EAAW,iBAAA;CH4V9C;AG3VmC;EAAW,iBAAA;CH8V9C;AG7VmC;EAAW,iBAAA;CHgW9C;AG/VmC;EAAW,iBAAA;CHkW9C;AGjWmC;EAAW,iBAAA;CHoW9C;AGnWmC;EAAW,iBAAA;CHsW9C;AGrWmC;EAAW,iBAAA;CHwW9C;AGvWmC;EAAW,iBAAA;CH0W9C;AGzWmC;EAAW,iBAAA;CH4W9C;AG3WmC;EAAW,iBAAA;CH8W9C;AG7WmC;EAAW,iBAAA;CHgX9C;AG/WmC;EAAW,iBAAA;CHkX9C;AGjXmC;EAAW,iBAAA;CHoX9C;AGnXmC;EAAW,iBAAA;CHsX9C;AGrXmC;EAAW,iBAAA;CHwX9C;AGvXmC;EAAW,iBAAA;CH0X9C;AGzXmC;EAAW,iBAAA;CH4X9C;AG3XmC;EAAW,iBAAA;CH8X9C;AG7XmC;EAAW,iBAAA;CHgY9C;AG/XmC;EAAW,iBAAA;CHkY9C;AGjYmC;EAAW,iBAAA;CHoY9C;AGnYmC;EAAW,iBAAA;CHsY9C;AGrYmC;EAAW,iBAAA;CHwY9C;AGvYmC;EAAW,iBAAA;CH0Y9C;AGzYmC;EAAW,iBAAA;CH4Y9C;AG3YmC;EAAW,iBAAA;CH8Y9C;AG7YmC;EAAW,iBAAA;CHgZ9C;AG/YmC;EAAW,iBAAA;CHkZ9C;AGjZmC;EAAW,iBAAA;CHoZ9C;AGnZmC;EAAW,iBAAA;CHsZ9C;AGrZmC;EAAW,iBAAA;CHwZ9C;AGvZmC;EAAW,iBAAA;CH0Z9C;AGzZmC;EAAW,iBAAA;CH4Z9C;AG3ZmC;EAAW,iBAAA;CH8Z9C;AG7ZmC;EAAW,iBAAA;CHga9C;AG/ZmC;EAAW,iBAAA;CHka9C;AGjamC;EAAW,iBAAA;CHoa9C;AGnamC;EAAW,iBAAA;CHsa9C;AGramC;EAAW,iBAAA;CHwa9C;AGvamC;EAAW,iBAAA;CH0a9C;AGzamC;EAAW,iBAAA;CH4a9C;AG3amC;EAAW,iBAAA;CH8a9C;AG7amC;EAAW,iBAAA;CHgb9C;AG/amC;EAAW,iBAAA;CHkb9C;AGjbmC;EAAW,iBAAA;CHob9C;AGnbmC;EAAW,iBAAA;CHsb9C;AGrbmC;EAAW,iBAAA;CHwb9C;AGvbmC;EAAW,iBAAA;CH0b9C;AGzbmC;EAAW,iBAAA;CH4b9C;AG3bmC;EAAW,iBAAA;CH8b9C;AG7bmC;EAAW,iBAAA;CHgc9C;AG/bmC;EAAW,iBAAA;CHkc9C;AGjcmC;EAAW,iBAAA;CHoc9C;AGncmC;EAAW,iBAAA;CHsc9C;AGrcmC;EAAW,iBAAA;CHwc9C;AGvcmC;EAAW,iBAAA;CH0c9C;AGzcmC;EAAW,iBAAA;CH4c9C;AG3cmC;EAAW,iBAAA;CH8c9C;AG7cmC;EAAW,iBAAA;CHgd9C;AG/cmC;EAAW,iBAAA;CHkd9C;AGjdmC;EAAW,iBAAA;CHod9C;AGndmC;EAAW,iBAAA;CHsd9C;AGrdmC;EAAW,iBAAA;CHwd9C;AGvdmC;EAAW,iBAAA;CH0d9C;AGzdmC;EAAW,iBAAA;CH4d9C;AG3dmC;EAAW,iBAAA;CH8d9C;AG7dmC;EAAW,iBAAA;CHge9C;AG/dmC;EAAW,iBAAA;CHke9C;AGjemC;EAAW,iBAAA;CHoe9C;AGnemC;EAAW,iBAAA;CHse9C;AGremC;EAAW,iBAAA;CHwe9C;AGvemC;EAAW,iBAAA;CH0e9C;AGzemC;EAAW,iBAAA;CH4e9C;AG3emC;EAAW,iBAAA;CH8e9C;AG7emC;EAAW,iBAAA;CHgf9C;AG/emC;EAAW,iBAAA;CHkf9C;AGjfmC;EAAW,iBAAA;CHof9C;AGnfmC;EAAW,iBAAA;CHsf9C;AGrfmC;EAAW,iBAAA;CHwf9C;AGvfmC;EAAW,iBAAA;CH0f9C;AGzfmC;EAAW,iBAAA;CH4f9C;AG3fmC;EAAW,iBAAA;CH8f9C;AG7fmC;EAAW,iBAAA;CHggB9C;AG/fmC;EAAW,iBAAA;CHkgB9C;AGjgBmC;EAAW,iBAAA;CHogB9C;AGngBmC;EAAW,iBAAA;CHsgB9C;AGrgBmC;EAAW,iBAAA;CHwgB9C;AGvgBmC;EAAW,iBAAA;CH0gB9C;AGzgBmC;EAAW,iBAAA;CH4gB9C;AG3gBmC;EAAW,iBAAA;CH8gB9C;AG7gBmC;EAAW,iBAAA;CHghB9C;AG/gBmC;EAAW,iBAAA;CHkhB9C;AGjhBmC;EAAW,iBAAA;CHohB9C;AGnhBmC;EAAW,iBAAA;CHshB9C;AGrhBmC;EAAW,iBAAA;CHwhB9C;AGvhBmC;EAAW,iBAAA;CH0hB9C;AGzhBmC;EAAW,iBAAA;CH4hB9C;AG3hBmC;EAAW,iBAAA;CH8hB9C;AG7hBmC;EAAW,iBAAA;CHgiB9C;AG/hBmC;EAAW,iBAAA;CHkiB9C;AGjiBmC;EAAW,iBAAA;CHoiB9C;AGniBmC;EAAW,iBAAA;CHsiB9C;AGriBmC;EAAW,iBAAA;CHwiB9C;AGviBmC;EAAW,iBAAA;CH0iB9C;AGziBmC;EAAW,iBAAA;CH4iB9C;AG3iBmC;EAAW,iBAAA;CH8iB9C;AG7iBmC;EAAW,iBAAA;CHgjB9C;AG/iBmC;EAAW,iBAAA;CHkjB9C;AGjjBmC;EAAW,iBAAA;CHojB9C;AGnjBmC;EAAW,iBAAA;CHsjB9C;AGrjBmC;EAAW,iBAAA;CHwjB9C;AGvjBmC;EAAW,iBAAA;CH0jB9C;AGzjBmC;EAAW,iBAAA;CH4jB9C;AG3jBmC;EAAW,iBAAA;CH8jB9C;AG7jBmC;EAAW,iBAAA;CHgkB9C;AG/jBmC;EAAW,iBAAA;CHkkB9C;AGjkBmC;EAAW,iBAAA;CHokB9C;AGnkBmC;EAAW,iBAAA;CHskB9C;AGrkBmC;EAAW,iBAAA;CHwkB9C;AGvkBmC;EAAW,iBAAA;CH0kB9C;AGzkBmC;EAAW,iBAAA;CH4kB9C;AG3kBmC;EAAW,iBAAA;CH8kB9C;AG7kBmC;EAAW,iBAAA;CHglB9C;AG/kBmC;EAAW,iBAAA;CHklB9C;AGjlBmC;EAAW,iBAAA;CHolB9C;AGnlBmC;EAAW,iBAAA;CHslB9C;AGrlBmC;EAAW,iBAAA;CHwlB9C;AGvlBmC;EAAW,iBAAA;CH0lB9C;AGzlBmC;EAAW,iBAAA;CH4lB9C;AG3lBmC;EAAW,iBAAA;CH8lB9C;AG7lBmC;EAAW,iBAAA;CHgmB9C;AG/lBmC;EAAW,iBAAA;CHkmB9C;AGjmBmC;EAAW,iBAAA;CHomB9C;AGnmBmC;EAAW,iBAAA;CHsmB9C;AGrmBmC;EAAW,iBAAA;CHwmB9C;AGvmBmC;EAAW,iBAAA;CH0mB9C;AGzmBmC;EAAW,iBAAA;CH4mB9C;AG3mBmC;EAAW,iBAAA;CH8mB9C;AG7mBmC;EAAW,iBAAA;CHgnB9C;AG/mBmC;EAAW,iBAAA;CHknB9C;AGjnBmC;EAAW,iBAAA;CHonB9C;AGnnBmC;EAAW,iBAAA;CHsnB9C;AGrnBmC;EAAW,iBAAA;CHwnB9C;AGvnBmC;EAAW,iBAAA;CH0nB9C;AGznBmC;EAAW,iBAAA;CH4nB9C;AG3nBmC;EAAW,iBAAA;CH8nB9C;AG7nBmC;EAAW,iBAAA;CHgoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AGvoBmC;EAAW,iBAAA;CH0oB9C;AGzoBmC;EAAW,iBAAA;CH4oB9C;AG3oBmC;EAAW,iBAAA;CH8oB9C;AG7oBmC;EAAW,iBAAA;CHgpB9C;AG/oBmC;EAAW,iBAAA;CHkpB9C;AGjpBmC;EAAW,iBAAA;CHopB9C;AGnpBmC;EAAW,iBAAA;CHspB9C;AGrpBmC;EAAW,iBAAA;CHwpB9C;AGvpBmC;EAAW,iBAAA;CH0pB9C;AGzpBmC;EAAW,iBAAA;CH4pB9C;AG3pBmC;EAAW,iBAAA;CH8pB9C;AG7pBmC;EAAW,iBAAA;CHgqB9C;AG/pBmC;EAAW,iBAAA;CHkqB9C;AGjqBmC;EAAW,iBAAA;CHoqB9C;AGnqBmC;EAAW,iBAAA;CHsqB9C;AGrqBmC;EAAW,iBAAA;CHwqB9C;AGvqBmC;EAAW,iBAAA;CH0qB9C;AGzqBmC;EAAW,iBAAA;CH4qB9C;AG3qBmC;EAAW,iBAAA;CH8qB9C;AG7qBmC;EAAW,iBAAA;CHgrB9C;AG/qBmC;EAAW,iBAAA;CHkrB9C;AGjrBmC;EAAW,iBAAA;CHorB9C;AGnrBmC;EAAW,iBAAA;CHsrB9C;AGrrBmC;EAAW,iBAAA;CHwrB9C;AGvrBmC;EAAW,iBAAA;CH0rB9C;AGzrBmC;EAAW,iBAAA;CH4rB9C;AG3rBmC;EAAW,iBAAA;CH8rB9C;AG7rBmC;EAAW,iBAAA;CHgsB9C;AG/rBmC;EAAW,iBAAA;CHksB9C;AGjsBmC;EAAW,iBAAA;CHosB9C;AGnsBmC;EAAW,iBAAA;CHssB9C;AGrsBmC;EAAW,iBAAA;CHwsB9C;AGvsBmC;EAAW,iBAAA;CH0sB9C;AGzsBmC;EAAW,iBAAA;CH4sB9C;AG3sBmC;EAAW,iBAAA;CH8sB9C;AG7sBmC;EAAW,iBAAA;CHgtB9C;AG/sBmC;EAAW,iBAAA;CHktB9C;AGjtBmC;EAAW,iBAAA;CHotB9C;AGntBmC;EAAW,iBAAA;CHstB9C;AGrtBmC;EAAW,iBAAA;CHwtB9C;AGvtBmC;EAAW,iBAAA;CH0tB9C;AGztBmC;EAAW,iBAAA;CH4tB9C;AG3tBmC;EAAW,iBAAA;CH8tB9C;AG7tBmC;EAAW,iBAAA;CHguB9C;AG/tBmC;EAAW,iBAAA;CHkuB9C;AGjuBmC;EAAW,iBAAA;CHouB9C;AGnuBmC;EAAW,iBAAA;CHsuB9C;AGruBmC;EAAW,iBAAA;CHwuB9C;AGvuBmC;EAAW,iBAAA;CH0uB9C;AGzuBmC;EAAW,iBAAA;CH4uB9C;AG3uBmC;EAAW,iBAAA;CH8uB9C;AG7uBmC;EAAW,iBAAA;CHgvB9C;AIthCD;ECgEE,+BAAA;EACG,4BAAA;EACK,uBAAA;CLy9BT;AIxhCD;;EC6DE,+BAAA;EACG,4BAAA;EACK,uBAAA;CL+9BT;AIthCD;EACE,gBAAA;EACA,8CAAA;CJwhCD;AIrhCD;EACE,4DAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,uBAAA;CJuhCD;AInhCD;;;;EAIE,qBAAA;EACA,mBAAA;EACA,qBAAA;CJqhCD;AI/gCD;EACE,eAAA;EACA,sBAAA;CJihCD;AI/gCC;;EAEE,eAAA;EACA,2BAAA;CJihCH;AI9gCC;EEnDA,2CAAA;EACA,qBAAA;CNokCD;AIvgCD;EACE,UAAA;CJygCD;AIngCD;EACE,uBAAA;CJqgCD;AIjgCD;;;;;EGvEE,eAAA;EACA,gBAAA;EACA,aAAA;CP+kCD;AIrgCD;EACE,mBAAA;CJugCD;AIjgCD;EACE,aAAA;EACA,wBAAA;EACA,uBAAA;EACA,uBAAA;EACA,mBAAA;EC6FA,yCAAA;EACK,oCAAA;EACG,iCAAA;EEvLR,sBAAA;EACA,gBAAA;EACA,aAAA;CP+lCD;AIjgCD;EACE,mBAAA;CJmgCD;AI7/BD;EACE,iBAAA;EACA,oBAAA;EACA,UAAA;EACA,8BAAA;CJ+/BD;AIv/BD;EACE,mBAAA;EACA,WAAA;EACA,YAAA;EACA,aAAA;EACA,WAAA;EACA,iBAAA;EACA,uBAAA;EACA,UAAA;CJy/BD;AIj/BC;;EAEE,iBAAA;EACA,YAAA;EACA,aAAA;EACA,UAAA;EACA,kBAAA;EACA,WAAA;CJm/BH;AIx+BD;EACE,gBAAA;CJ0+BD;AQjoCD;;;;;;;;;;;;EAEE,qBAAA;EACA,iBAAA;EACA,iBAAA;EACA,eAAA;CR6oCD;AQlpCD;;;;;;;;;;;;;;;;;;;;;;;;EASI,oBAAA;EACA,eAAA;EACA,eAAA;CRmqCH;AQ/pCD;;;;;;EAGE,iBAAA;EACA,oBAAA;CRoqCD;AQxqCD;;;;;;;;;;;;EAQI,eAAA;CR8qCH;AQ3qCD;;;;;;EAGE,iBAAA;EACA,oBAAA;CRgrCD;AQprCD;;;;;;;;;;;;EAQI,eAAA;CR0rCH;AQtrCD;;EAAU,gBAAA;CR0rCT;AQzrCD;;EAAU,gBAAA;CR6rCT;AQ5rCD;;EAAU,gBAAA;CRgsCT;AQ/rCD;;EAAU,gBAAA;CRmsCT;AQlsCD;;EAAU,gBAAA;CRssCT;AQrsCD;;EAAU,gBAAA;CRysCT;AQnsCD;EACE,iBAAA;CRqsCD;AQlsCD;EACE,oBAAA;EACA,gBAAA;EACA,iBAAA;EACA,iBAAA;CRosCD;AQ/rCD;EAwOA;IA1OI,gBAAA;GRqsCD;CACF;AQ7rCD;;EAEE,eAAA;CR+rCD;AQ5rCD;;EAEE,0BAAA;EACA,cAAA;CR8rCD;AQ1rCD;EAAuB,iBAAA;CR6rCtB;AQ5rCD;EAAuB,kBAAA;CR+rCtB;AQ9rCD;EAAuB,mBAAA;CRisCtB;AQhsCD;EAAuB,oBAAA;CRmsCtB;AQlsCD;EAAuB,oBAAA;CRqsCtB;AQlsCD;EAAuB,0BAAA;CRqsCtB;AQpsCD;EAAuB,0BAAA;CRusCtB;AQtsCD;EAAuB,2BAAA;CRysCtB;AQtsCD;EACE,eAAA;CRwsCD;AQtsCD;ECrGE,eAAA;CT8yCD;AS7yCC;;EAEE,eAAA;CT+yCH;AQ1sCD;ECxGE,eAAA;CTqzCD;ASpzCC;;EAEE,eAAA;CTszCH;AQ9sCD;EC3GE,eAAA;CT4zCD;AS3zCC;;EAEE,eAAA;CT6zCH;AQltCD;EC9GE,eAAA;CTm0CD;ASl0CC;;EAEE,eAAA;CTo0CH;AQttCD;ECjHE,eAAA;CT00CD;ASz0CC;;EAEE,eAAA;CT20CH;AQttCD;EAGE,YAAA;EE3HA,0BAAA;CVk1CD;AUj1CC;;EAEE,0BAAA;CVm1CH;AQxtCD;EE9HE,0BAAA;CVy1CD;AUx1CC;;EAEE,0BAAA;CV01CH;AQ5tCD;EEjIE,0BAAA;CVg2CD;AU/1CC;;EAEE,0BAAA;CVi2CH;AQhuCD;EEpIE,0BAAA;CVu2CD;AUt2CC;;EAEE,0BAAA;CVw2CH;AQpuCD;EEvIE,0BAAA;CV82CD;AU72CC;;EAEE,0BAAA;CV+2CH;AQnuCD;EACE,oBAAA;EACA,oBAAA;EACA,iCAAA;CRquCD;AQ7tCD;;EAEE,cAAA;EACA,oBAAA;CR+tCD;AQluCD;;;;EAMI,iBAAA;CRkuCH;AQ3tCD;EACE,gBAAA;EACA,iBAAA;CR6tCD;AQztCD;EALE,gBAAA;EACA,iBAAA;EAMA,kBAAA;CR4tCD;AQ9tCD;EAKI,sBAAA;EACA,kBAAA;EACA,mBAAA;CR4tCH;AQvtCD;EACE,cAAA;EACA,oBAAA;CRytCD;AQvtCD;;EAEE,wBAAA;CRytCD;AQvtCD;EACE,kBAAA;CRytCD;AQvtCD;EACE,eAAA;CRytCD;AQhsCD;EA6EA;IAvFM,YAAA;IACA,aAAA;IACA,YAAA;IACA,kBAAA;IGtNJ,iBAAA;IACA,wBAAA;IACA,oBAAA;GXq6CC;EQ7nCH;IAhFM,mBAAA;GRgtCH;CACF;AQvsCD;;EAGE,aAAA;EACA,kCAAA;CRwsCD;AQtsCD;EACE,eAAA;EA9IqB,0BAAA;CRu1CtB;AQpsCD;EACE,mBAAA;EACA,iBAAA;EACA,kBAAA;EACA,+BAAA;CRssCD;AQjsCG;;;EACE,iBAAA;CRqsCL;AQ/sCD;;;EAmBI,eAAA;EACA,eAAA;EACA,wBAAA;EACA,eAAA;CRisCH;AQ/rCG;;;EACE,uBAAA;CRmsCL;AQ3rCD;;EAEE,oBAAA;EACA,gBAAA;EACA,gCAAA;EACA,eAAA;EACA,kBAAA;CR6rCD;AQvrCG;;;;;;EAAW,YAAA;CR+rCd;AQ9rCG;;;;;;EACE,uBAAA;CRqsCL;AQ/rCD;EACE,oBAAA;EACA,mBAAA;EACA,wBAAA;CRisCD;AYv+CD;;;;EAIE,+DAAA;CZy+CD;AYr+CD;EACE,iBAAA;EACA,eAAA;EACA,eAAA;EACA,0BAAA;EACA,mBAAA;CZu+CD;AYn+CD;EACE,iBAAA;EACA,eAAA;EACA,YAAA;EACA,uBAAA;EACA,mBAAA;EACA,uDAAA;UAAA,+CAAA;CZq+CD;AY3+CD;EASI,WAAA;EACA,gBAAA;EACA,kBAAA;EACA,yBAAA;UAAA,iBAAA;CZq+CH;AYh+CD;EACE,eAAA;EACA,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,wBAAA;EACA,sBAAA;EACA,sBAAA;EACA,eAAA;EACA,0BAAA;EACA,uBAAA;EACA,mBAAA;CZk+CD;AY7+CD;EAeI,WAAA;EACA,mBAAA;EACA,eAAA;EACA,sBAAA;EACA,8BAAA;EACA,iBAAA;CZi+CH;AY59CD;EACE,kBAAA;EACA,mBAAA;CZ89CD;AaxhDD;ECHE,mBAAA;EACA,kBAAA;EACA,mBAAA;EACA,oBAAA;Cd8hDD;AaxhDC;EAqEF;IAvEI,aAAA;Gb8hDD;CACF;Aa1hDC;EAkEF;IApEI,aAAA;GbgiDD;CACF;Aa5hDD;EA+DA;IAjEI,cAAA;GbkiDD;CACF;AazhDD;ECvBE,mBAAA;EACA,kBAAA;EACA,mBAAA;EACA,oBAAA;CdmjDD;AathDD;ECvBE,mBAAA;EACA,oBAAA;CdgjDD;AehjDG;EACE,mBAAA;EAEA,gBAAA;EAEA,mBAAA;EACA,oBAAA;CfgjDL;AehiDG;EACE,YAAA;CfkiDL;Ae3hDC;EACE,YAAA;Cf6hDH;Ae9hDC;EACE,oBAAA;CfgiDH;AejiDC;EACE,oBAAA;CfmiDH;AepiDC;EACE,WAAA;CfsiDH;AeviDC;EACE,oBAAA;CfyiDH;Ae1iDC;EACE,oBAAA;Cf4iDH;Ae7iDC;EACE,WAAA;Cf+iDH;AehjDC;EACE,oBAAA;CfkjDH;AenjDC;EACE,oBAAA;CfqjDH;AetjDC;EACE,WAAA;CfwjDH;AezjDC;EACE,oBAAA;Cf2jDH;Ae5jDC;EACE,mBAAA;Cf8jDH;AehjDC;EACE,YAAA;CfkjDH;AenjDC;EACE,oBAAA;CfqjDH;AetjDC;EACE,oBAAA;CfwjDH;AezjDC;EACE,WAAA;Cf2jDH;Ae5jDC;EACE,oBAAA;Cf8jDH;Ae/jDC;EACE,oBAAA;CfikDH;AelkDC;EACE,WAAA;CfokDH;AerkDC;EACE,oBAAA;CfukDH;AexkDC;EACE,oBAAA;Cf0kDH;Ae3kDC;EACE,WAAA;Cf6kDH;Ae9kDC;EACE,oBAAA;CfglDH;AejlDC;EACE,mBAAA;CfmlDH;Ae/kDC;EACE,YAAA;CfilDH;AejmDC;EACE,WAAA;CfmmDH;AepmDC;EACE,mBAAA;CfsmDH;AevmDC;EACE,mBAAA;CfymDH;Ae1mDC;EACE,UAAA;Cf4mDH;Ae7mDC;EACE,mBAAA;Cf+mDH;AehnDC;EACE,mBAAA;CfknDH;AennDC;EACE,UAAA;CfqnDH;AetnDC;EACE,mBAAA;CfwnDH;AeznDC;EACE,mBAAA;Cf2nDH;Ae5nDC;EACE,UAAA;Cf8nDH;Ae/nDC;EACE,mBAAA;CfioDH;AeloDC;EACE,kBAAA;CfooDH;AehoDC;EACE,WAAA;CfkoDH;AepnDC;EACE,kBAAA;CfsnDH;AevnDC;EACE,0BAAA;CfynDH;Ae1nDC;EACE,0BAAA;Cf4nDH;Ae7nDC;EACE,iBAAA;Cf+nDH;AehoDC;EACE,0BAAA;CfkoDH;AenoDC;EACE,0BAAA;CfqoDH;AetoDC;EACE,iBAAA;CfwoDH;AezoDC;EACE,0BAAA;Cf2oDH;Ae5oDC;EACE,0BAAA;Cf8oDH;Ae/oDC;EACE,iBAAA;CfipDH;AelpDC;EACE,0BAAA;CfopDH;AerpDC;EACE,yBAAA;CfupDH;AexpDC;EACE,gBAAA;Cf0pDH;Aa1pDD;EElCI;IACE,YAAA;Gf+rDH;EexrDD;IACE,YAAA;Gf0rDD;Ee3rDD;IACE,oBAAA;Gf6rDD;Ee9rDD;IACE,oBAAA;GfgsDD;EejsDD;IACE,WAAA;GfmsDD;EepsDD;IACE,oBAAA;GfssDD;EevsDD;IACE,oBAAA;GfysDD;Ee1sDD;IACE,WAAA;Gf4sDD;Ee7sDD;IACE,oBAAA;Gf+sDD;EehtDD;IACE,oBAAA;GfktDD;EentDD;IACE,WAAA;GfqtDD;EettDD;IACE,oBAAA;GfwtDD;EeztDD;IACE,mBAAA;Gf2tDD;Ee7sDD;IACE,YAAA;Gf+sDD;EehtDD;IACE,oBAAA;GfktDD;EentDD;IACE,oBAAA;GfqtDD;EettDD;IACE,WAAA;GfwtDD;EeztDD;IACE,oBAAA;Gf2tDD;Ee5tDD;IACE,oBAAA;Gf8tDD;Ee/tDD;IACE,WAAA;GfiuDD;EeluDD;IACE,oBAAA;GfouDD;EeruDD;IACE,oBAAA;GfuuDD;EexuDD;IACE,WAAA;Gf0uDD;Ee3uDD;IACE,oBAAA;Gf6uDD;Ee9uDD;IACE,mBAAA;GfgvDD;Ee5uDD;IACE,YAAA;Gf8uDD;Ee9vDD;IACE,WAAA;GfgwDD;EejwDD;IACE,mBAAA;GfmwDD;EepwDD;IACE,mBAAA;GfswDD;EevwDD;IACE,UAAA;GfywDD;Ee1wDD;IACE,mBAAA;Gf4wDD;Ee7wDD;IACE,mBAAA;Gf+wDD;EehxDD;IACE,UAAA;GfkxDD;EenxDD;IACE,mBAAA;GfqxDD;EetxDD;IACE,mBAAA;GfwxDD;EezxDD;IACE,UAAA;Gf2xDD;Ee5xDD;IACE,mBAAA;Gf8xDD;Ee/xDD;IACE,kBAAA;GfiyDD;Ee7xDD;IACE,WAAA;Gf+xDD;EejxDD;IACE,kBAAA;GfmxDD;EepxDD;IACE,0BAAA;GfsxDD;EevxDD;IACE,0BAAA;GfyxDD;Ee1xDD;IACE,iBAAA;Gf4xDD;Ee7xDD;IACE,0BAAA;Gf+xDD;EehyDD;IACE,0BAAA;GfkyDD;EenyDD;IACE,iBAAA;GfqyDD;EetyDD;IACE,0BAAA;GfwyDD;EezyDD;IACE,0BAAA;Gf2yDD;Ee5yDD;IACE,iBAAA;Gf8yDD;Ee/yDD;IACE,0BAAA;GfizDD;EelzDD;IACE,yBAAA;GfozDD;EerzDD;IACE,gBAAA;GfuzDD;CACF;Aa/yDD;EE3CI;IACE,YAAA;Gf61DH;Eet1DD;IACE,YAAA;Gfw1DD;Eez1DD;IACE,oBAAA;Gf21DD;Ee51DD;IACE,oBAAA;Gf81DD;Ee/1DD;IACE,WAAA;Gfi2DD;Eel2DD;IACE,oBAAA;Gfo2DD;Eer2DD;IACE,oBAAA;Gfu2DD;Eex2DD;IACE,WAAA;Gf02DD;Ee32DD;IACE,oBAAA;Gf62DD;Ee92DD;IACE,oBAAA;Gfg3DD;Eej3DD;IACE,WAAA;Gfm3DD;Eep3DD;IACE,oBAAA;Gfs3DD;Eev3DD;IACE,mBAAA;Gfy3DD;Ee32DD;IACE,YAAA;Gf62DD;Ee92DD;IACE,oBAAA;Gfg3DD;Eej3DD;IACE,oBAAA;Gfm3DD;Eep3DD;IACE,WAAA;Gfs3DD;Eev3DD;IACE,oBAAA;Gfy3DD;Ee13DD;IACE,oBAAA;Gf43DD;Ee73DD;IACE,WAAA;Gf+3DD;Eeh4DD;IACE,oBAAA;Gfk4DD;Een4DD;IACE,oBAAA;Gfq4DD;Eet4DD;IACE,WAAA;Gfw4DD;Eez4DD;IACE,oBAAA;Gf24DD;Ee54DD;IACE,mBAAA;Gf84DD;Ee14DD;IACE,YAAA;Gf44DD;Ee55DD;IACE,WAAA;Gf85DD;Ee/5DD;IACE,mBAAA;Gfi6DD;Eel6DD;IACE,mBAAA;Gfo6DD;Eer6DD;IACE,UAAA;Gfu6DD;Eex6DD;IACE,mBAAA;Gf06DD;Ee36DD;IACE,mBAAA;Gf66DD;Ee96DD;IACE,UAAA;Gfg7DD;Eej7DD;IACE,mBAAA;Gfm7DD;Eep7DD;IACE,mBAAA;Gfs7DD;Eev7DD;IACE,UAAA;Gfy7DD;Ee17DD;IACE,mBAAA;Gf47DD;Ee77DD;IACE,kBAAA;Gf+7DD;Ee37DD;IACE,WAAA;Gf67DD;Ee/6DD;IACE,kBAAA;Gfi7DD;Eel7DD;IACE,0BAAA;Gfo7DD;Eer7DD;IACE,0BAAA;Gfu7DD;Eex7DD;IACE,iBAAA;Gf07DD;Ee37DD;IACE,0BAAA;Gf67DD;Ee97DD;IACE,0BAAA;Gfg8DD;Eej8DD;IACE,iBAAA;Gfm8DD;Eep8DD;IACE,0BAAA;Gfs8DD;Eev8DD;IACE,0BAAA;Gfy8DD;Ee18DD;IACE,iBAAA;Gf48DD;Ee78DD;IACE,0BAAA;Gf+8DD;Eeh9DD;IACE,yBAAA;Gfk9DD;Een9DD;IACE,gBAAA;Gfq9DD;CACF;Aa18DD;EE9CI;IACE,YAAA;Gf2/DH;Eep/DD;IACE,YAAA;Gfs/DD;Eev/DD;IACE,oBAAA;Gfy/DD;Ee1/DD;IACE,oBAAA;Gf4/DD;Ee7/DD;IACE,WAAA;Gf+/DD;EehgED;IACE,oBAAA;GfkgED;EengED;IACE,oBAAA;GfqgED;EetgED;IACE,WAAA;GfwgED;EezgED;IACE,oBAAA;Gf2gED;Ee5gED;IACE,oBAAA;Gf8gED;Ee/gED;IACE,WAAA;GfihED;EelhED;IACE,oBAAA;GfohED;EerhED;IACE,mBAAA;GfuhED;EezgED;IACE,YAAA;Gf2gED;Ee5gED;IACE,oBAAA;Gf8gED;Ee/gED;IACE,oBAAA;GfihED;EelhED;IACE,WAAA;GfohED;EerhED;IACE,oBAAA;GfuhED;EexhED;IACE,oBAAA;Gf0hED;Ee3hED;IACE,WAAA;Gf6hED;Ee9hED;IACE,oBAAA;GfgiED;EejiED;IACE,oBAAA;GfmiED;EepiED;IACE,WAAA;GfsiED;EeviED;IACE,oBAAA;GfyiED;Ee1iED;IACE,mBAAA;Gf4iED;EexiED;IACE,YAAA;Gf0iED;Ee1jED;IACE,WAAA;Gf4jED;Ee7jED;IACE,mBAAA;Gf+jED;EehkED;IACE,mBAAA;GfkkED;EenkED;IACE,UAAA;GfqkED;EetkED;IACE,mBAAA;GfwkED;EezkED;IACE,mBAAA;Gf2kED;Ee5kED;IACE,UAAA;Gf8kED;Ee/kED;IACE,mBAAA;GfilED;EellED;IACE,mBAAA;GfolED;EerlED;IACE,UAAA;GfulED;EexlED;IACE,mBAAA;Gf0lED;Ee3lED;IACE,kBAAA;Gf6lED;EezlED;IACE,WAAA;Gf2lED;Ee7kED;IACE,kBAAA;Gf+kED;EehlED;IACE,0BAAA;GfklED;EenlED;IACE,0BAAA;GfqlED;EetlED;IACE,iBAAA;GfwlED;EezlED;IACE,0BAAA;Gf2lED;Ee5lED;IACE,0BAAA;Gf8lED;Ee/lED;IACE,iBAAA;GfimED;EelmED;IACE,0BAAA;GfomED;EermED;IACE,0BAAA;GfumED;EexmED;IACE,iBAAA;Gf0mED;Ee3mED;IACE,0BAAA;Gf6mED;Ee9mED;IACE,yBAAA;GfgnED;EejnED;IACE,gBAAA;GfmnED;CACF;AgBvrED;EACE,8BAAA;ChByrED;AgBvrED;EACE,iBAAA;EACA,oBAAA;EACA,eAAA;EACA,iBAAA;ChByrED;AgBvrED;EACE,iBAAA;ChByrED;AgBnrED;EACE,YAAA;EACA,gBAAA;EACA,oBAAA;ChBqrED;AgBxrED;;;;;;EAWQ,aAAA;EACA,wBAAA;EACA,oBAAA;EACA,2BAAA;ChBqrEP;AgBnsED;EAoBI,uBAAA;EACA,8BAAA;ChBkrEH;AgBvsED;;;;;;EA8BQ,cAAA;ChBirEP;AgB/sED;EAoCI,2BAAA;ChB8qEH;AgBltED;EAyCI,uBAAA;ChB4qEH;AgBrqED;;;;;;EAOQ,aAAA;ChBsqEP;AgB3pED;EACE,uBAAA;ChB6pED;AgB9pED;;;;;;EAQQ,uBAAA;ChB8pEP;AgBtqED;;EAeM,yBAAA;ChB2pEL;AgBjpED;EAEI,0BAAA;ChBkpEH;AgBzoED;EAEI,0BAAA;ChB0oEH;AgBjoED;EACE,iBAAA;EACA,YAAA;EACA,sBAAA;ChBmoED;AgB9nEG;;EACE,iBAAA;EACA,YAAA;EACA,oBAAA;ChBioEL;AiB7wEC;;;;;;;;;;;;EAOI,0BAAA;CjBoxEL;AiB9wEC;;;;;EAMI,0BAAA;CjB+wEL;AiBlyEC;;;;;;;;;;;;EAOI,0BAAA;CjByyEL;AiBnyEC;;;;;EAMI,0BAAA;CjBoyEL;AiBvzEC;;;;;;;;;;;;EAOI,0BAAA;CjB8zEL;AiBxzEC;;;;;EAMI,0BAAA;CjByzEL;AiB50EC;;;;;;;;;;;;EAOI,0BAAA;CjBm1EL;AiB70EC;;;;;EAMI,0BAAA;CjB80EL;AiBj2EC;;;;;;;;;;;;EAOI,0BAAA;CjBw2EL;AiBl2EC;;;;;EAMI,0BAAA;CjBm2EL;AgBjtED;EACE,iBAAA;EACA,kBAAA;ChBmtED;AgBtpED;EACA;IA3DI,YAAA;IACA,oBAAA;IACA,mBAAA;IACA,6CAAA;IACA,uBAAA;GhBotED;EgB7pEH;IAnDM,iBAAA;GhBmtEH;EgBhqEH;;;;;;IA1CY,oBAAA;GhBktET;EgBxqEH;IAlCM,UAAA;GhB6sEH;EgB3qEH;;;;;;IAzBY,eAAA;GhB4sET;EgBnrEH;;;;;;IArBY,gBAAA;GhBgtET;EgB3rEH;;;;IARY,iBAAA;GhBysET;CACF;AkBn6ED;EACE,WAAA;EACA,UAAA;EACA,UAAA;EAIA,aAAA;ClBk6ED;AkB/5ED;EACE,eAAA;EACA,YAAA;EACA,WAAA;EACA,oBAAA;EACA,gBAAA;EACA,qBAAA;EACA,eAAA;EACA,UAAA;EACA,iCAAA;ClBi6ED;AkB95ED;EACE,sBAAA;EACA,gBAAA;EACA,mBAAA;EACA,kBAAA;ClBg6ED;AkBr5ED;Eb4BE,+BAAA;EACG,4BAAA;EACK,uBAAA;CL43ET;AkBr5ED;;EAEE,gBAAA;EACA,mBAAA;EACA,oBAAA;ClBu5ED;AkBp5ED;EACE,eAAA;ClBs5ED;AkBl5ED;EACE,eAAA;EACA,YAAA;ClBo5ED;AkBh5ED;;EAEE,aAAA;ClBk5ED;AkB94ED;;;EZrEE,2CAAA;EACA,qBAAA;CNw9ED;AkB74ED;EACE,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;ClB+4ED;AkBr3ED;EACE,eAAA;EACA,YAAA;EACA,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,uBAAA;EACA,uBAAA;EACA,uBAAA;EACA,mBAAA;EbxDA,yDAAA;EACQ,iDAAA;EAyHR,uFAAA;EACK,0EAAA;EACG,uEAAA;CLwzET;AmBh8EC;EACE,sBAAA;EACA,WAAA;EdUF,uFAAA;EACQ,+EAAA;CLy7ET;AKx5EC;EACE,YAAA;EACA,WAAA;CL05EH;AKx5EC;EAA0B,YAAA;CL25E3B;AK15EC;EAAgC,YAAA;CL65EjC;AkBj4EC;EACE,UAAA;EACA,8BAAA;ClBm4EH;AkB33EC;;;EAGE,0BAAA;EACA,WAAA;ClB63EH;AkB13EC;;EAEE,oBAAA;ClB43EH;AkBx3EC;EACE,aAAA;ClB03EH;AkB92ED;EACE,yBAAA;ClBg3ED;AkBx0ED;EAtBI;;;;IACE,kBAAA;GlBo2EH;EkBj2EC;;;;;;;;IAEE,kBAAA;GlBy2EH;EkBt2EC;;;;;;;;IAEE,kBAAA;GlB82EH;CACF;AkBp2ED;EACE,oBAAA;ClBs2ED;AkB91ED;;EAEE,mBAAA;EACA,eAAA;EACA,iBAAA;EACA,oBAAA;ClBg2ED;AkBr2ED;;EAQI,iBAAA;EACA,mBAAA;EACA,iBAAA;EACA,oBAAA;EACA,gBAAA;ClBi2EH;AkB91ED;;;;EAIE,mBAAA;EACA,mBAAA;EACA,mBAAA;ClBg2ED;AkB71ED;;EAEE,iBAAA;ClB+1ED;AkB31ED;;EAEE,mBAAA;EACA,sBAAA;EACA,mBAAA;EACA,iBAAA;EACA,uBAAA;EACA,oBAAA;EACA,gBAAA;ClB61ED;AkB31ED;;EAEE,cAAA;EACA,kBAAA;ClB61ED;AkBp1EC;;;;;;EAGE,oBAAA;ClBy1EH;AkBn1EC;;;;EAEE,oBAAA;ClBu1EH;AkBj1EC;;;;EAGI,oBAAA;ClBo1EL;AkBz0ED;EAEE,iBAAA;EACA,oBAAA;EAEA,iBAAA;EACA,iBAAA;ClBy0ED;AkBv0EC;;EAEE,gBAAA;EACA,iBAAA;ClBy0EH;AkB5zED;ECnQE,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CnBkkFD;AmBhkFC;EACE,aAAA;EACA,kBAAA;CnBkkFH;AmB/jFC;;EAEE,aAAA;CnBikFH;AkBx0ED;EAEI,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;ClBy0EH;AkB/0ED;EASI,aAAA;EACA,kBAAA;ClBy0EH;AkBn1ED;;EAcI,aAAA;ClBy0EH;AkBv1ED;EAiBI,aAAA;EACA,iBAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;ClBy0EH;AkBr0ED;EC/RE,aAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;CnBumFD;AmBrmFC;EACE,aAAA;EACA,kBAAA;CnBumFH;AmBpmFC;;EAEE,aAAA;CnBsmFH;AkBj1ED;EAEI,aAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;ClBk1EH;AkBx1ED;EASI,aAAA;EACA,kBAAA;ClBk1EH;AkB51ED;;EAcI,aAAA;ClBk1EH;AkBh2ED;EAiBI,aAAA;EACA,iBAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;ClBk1EH;AkBz0ED;EAEE,mBAAA;ClB00ED;AkB50ED;EAMI,sBAAA;ClBy0EH;AkBr0ED;EACE,mBAAA;EACA,OAAA;EACA,SAAA;EACA,WAAA;EACA,eAAA;EACA,YAAA;EACA,aAAA;EACA,kBAAA;EACA,mBAAA;EACA,qBAAA;ClBu0ED;AkBr0ED;;;EAGE,YAAA;EACA,aAAA;EACA,kBAAA;ClBu0ED;AkBr0ED;;;EAGE,YAAA;EACA,aAAA;EACA,kBAAA;ClBu0ED;AkBn0ED;;;;;;;;;;EC1ZI,eAAA;CnByuFH;AkB/0ED;ECtZI,sBAAA;Ed+CF,yDAAA;EACQ,iDAAA;CL0rFT;AmBxuFG;EACE,sBAAA;Ed4CJ,0EAAA;EACQ,kEAAA;CL+rFT;AkBz1ED;EC5YI,eAAA;EACA,sBAAA;EACA,0BAAA;CnBwuFH;AkB91ED;ECtYI,eAAA;CnBuuFH;AkB91ED;;;;;;;;;;EC7ZI,eAAA;CnBuwFH;AkB12ED;ECzZI,sBAAA;Ed+CF,yDAAA;EACQ,iDAAA;CLwtFT;AmBtwFG;EACE,sBAAA;Ed4CJ,0EAAA;EACQ,kEAAA;CL6tFT;AkBp3ED;EC/YI,eAAA;EACA,sBAAA;EACA,0BAAA;CnBswFH;AkBz3ED;ECzYI,eAAA;CnBqwFH;AkBz3ED;;;;;;;;;;EChaI,eAAA;CnBqyFH;AkBr4ED;EC5ZI,sBAAA;Ed+CF,yDAAA;EACQ,iDAAA;CLsvFT;AmBpyFG;EACE,sBAAA;Ed4CJ,0EAAA;EACQ,kEAAA;CL2vFT;AkB/4ED;EClZI,eAAA;EACA,sBAAA;EACA,0BAAA;CnBoyFH;AkBp5ED;EC5YI,eAAA;CnBmyFH;AkBh5EC;EACE,UAAA;ClBk5EH;AkBh5EC;EACE,OAAA;ClBk5EH;AkBx4ED;EACE,eAAA;EACA,gBAAA;EACA,oBAAA;EACA,eAAA;ClB04ED;AkBvzED;EAwEA;IAtIM,sBAAA;IACA,iBAAA;IACA,uBAAA;GlBy3EH;EkBrvEH;IA/HM,sBAAA;IACA,YAAA;IACA,uBAAA;GlBu3EH;EkB1vEH;IAxHM,sBAAA;GlBq3EH;EkB7vEH;IApHM,sBAAA;IACA,uBAAA;GlBo3EH;EkBjwEH;;;IA9GQ,YAAA;GlBo3EL;EkBtwEH;IAxGM,YAAA;GlBi3EH;EkBzwEH;IApGM,iBAAA;IACA,uBAAA;GlBg3EH;EkB7wEH;;IA5FM,sBAAA;IACA,cAAA;IACA,iBAAA;IACA,uBAAA;GlB62EH;EkBpxEH;;IAtFQ,gBAAA;GlB82EL;EkBxxEH;;IAjFM,mBAAA;IACA,eAAA;GlB62EH;EkB7xEH;IA3EM,OAAA;GlB22EH;CACF;AkBj2ED;;;;EASI,cAAA;EACA,iBAAA;EACA,iBAAA;ClB81EH;AkBz2ED;;EAiBI,iBAAA;ClB41EH;AkB72ED;EJthBE,mBAAA;EACA,oBAAA;Cds4FD;AkB10EC;EAyBF;IAnCM,kBAAA;IACA,iBAAA;IACA,iBAAA;GlBw1EH;CACF;AkBx3ED;EAwCI,YAAA;ClBm1EH;AkBr0EC;EAUF;IAdQ,kBAAA;IACA,gBAAA;GlB60EL;CACF;AkBn0EC;EAEF;IANQ,iBAAA;IACA,gBAAA;GlB20EL;CACF;AoBp6FD;EACE,sBAAA;EACA,iBAAA;EACA,oBAAA;EACA,mBAAA;EACA,uBAAA;EACA,+BAAA;MAAA,2BAAA;EACA,gBAAA;EACA,uBAAA;EACA,8BAAA;EACA,oBAAA;EC0CA,kBAAA;EACA,gBAAA;EACA,wBAAA;EACA,mBAAA;EhB+JA,0BAAA;EACG,uBAAA;EACC,sBAAA;EACI,kBAAA;CL+tFT;AoBv6FG;;;;;;EdnBF,2CAAA;EACA,qBAAA;CNk8FD;AoB16FC;;;EAGE,YAAA;EACA,sBAAA;CpB46FH;AoBz6FC;;EAEE,WAAA;EACA,uBAAA;Ef2BF,yDAAA;EACQ,iDAAA;CLi5FT;AoBz6FC;;;EAGE,oBAAA;EE7CF,cAAA;EAGA,0BAAA;EjB8DA,yBAAA;EACQ,iBAAA;CL05FT;AoBz6FG;;EAEE,qBAAA;CpB26FL;AoBl6FD;EC3DE,YAAA;EACA,uBAAA;EACA,mBAAA;CrBg+FD;AqB99FC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBg+FP;AqB99FC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBg+FP;AqB99FC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBg+FP;AqB99FG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBs+FT;AqBn+FC;;;EAGE,uBAAA;CrBq+FH;AqBh+FG;;;;;;;;;EAGE,uBAAA;EACI,mBAAA;CrBw+FT;AoBv9FD;ECZI,YAAA;EACA,uBAAA;CrBs+FH;AoBx9FD;EC9DE,YAAA;EACA,0BAAA;EACA,sBAAA;CrByhGD;AqBvhGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrByhGP;AqBvhGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrByhGP;AqBvhGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrByhGP;AqBvhGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB+hGT;AqB5hGC;;;EAGE,uBAAA;CrB8hGH;AqBzhGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrBiiGT;AoB7gGD;ECfI,eAAA;EACA,uBAAA;CrB+hGH;AoB7gGD;EClEE,YAAA;EACA,0BAAA;EACA,sBAAA;CrBklGD;AqBhlGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBklGP;AqBhlGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBklGP;AqBhlGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBklGP;AqBhlGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBwlGT;AqBrlGC;;;EAGE,uBAAA;CrBulGH;AqBllGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrB0lGT;AoBlkGD;ECnBI,eAAA;EACA,uBAAA;CrBwlGH;AoBlkGD;ECtEE,YAAA;EACA,0BAAA;EACA,sBAAA;CrB2oGD;AqBzoGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB2oGP;AqBzoGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB2oGP;AqBzoGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB2oGP;AqBzoGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBipGT;AqB9oGC;;;EAGE,uBAAA;CrBgpGH;AqB3oGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrBmpGT;AoBvnGD;ECvBI,eAAA;EACA,uBAAA;CrBipGH;AoBvnGD;EC1EE,YAAA;EACA,0BAAA;EACA,sBAAA;CrBosGD;AqBlsGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBosGP;AqBlsGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBosGP;AqBlsGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBosGP;AqBlsGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB0sGT;AqBvsGC;;;EAGE,uBAAA;CrBysGH;AqBpsGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrB4sGT;AoB5qGD;EC3BI,eAAA;EACA,uBAAA;CrB0sGH;AoB5qGD;EC9EE,YAAA;EACA,0BAAA;EACA,sBAAA;CrB6vGD;AqB3vGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB6vGP;AqB3vGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB6vGP;AqB3vGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB6vGP;AqB3vGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBmwGT;AqBhwGC;;;EAGE,uBAAA;CrBkwGH;AqB7vGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrBqwGT;AoBjuGD;EC/BI,eAAA;EACA,uBAAA;CrBmwGH;AoB5tGD;EACE,eAAA;EACA,oBAAA;EACA,iBAAA;CpB8tGD;AoB5tGC;;;;;EAKE,8BAAA;EfnCF,yBAAA;EACQ,iBAAA;CLkwGT;AoB7tGC;;;;EAIE,0BAAA;CpB+tGH;AoB7tGC;;EAEE,eAAA;EACA,2BAAA;EACA,8BAAA;CpB+tGH;AoB3tGG;;;;EAEE,eAAA;EACA,sBAAA;CpB+tGL;AoBttGD;;ECxEE,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;CrBkyGD;AoBztGD;;EC5EE,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CrByyGD;AoB5tGD;;EChFE,iBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CrBgzGD;AoB3tGD;EACE,eAAA;EACA,YAAA;CpB6tGD;AoBztGD;EACE,gBAAA;CpB2tGD;AoBptGC;;;EACE,YAAA;CpBwtGH;AuBl3GD;EACE,WAAA;ElBoLA,yCAAA;EACK,oCAAA;EACG,iCAAA;CLisGT;AuBr3GC;EACE,WAAA;CvBu3GH;AuBn3GD;EACE,cAAA;CvBq3GD;AuBn3GC;EAAY,eAAA;CvBs3Gb;AuBr3GC;EAAY,mBAAA;CvBw3Gb;AuBv3GC;EAAY,yBAAA;CvB03Gb;AuBv3GD;EACE,mBAAA;EACA,UAAA;EACA,iBAAA;ElBuKA,gDAAA;EACQ,2CAAA;KAAA,wCAAA;EAOR,mCAAA;EACQ,8BAAA;KAAA,2BAAA;EAGR,yCAAA;EACQ,oCAAA;KAAA,iCAAA;CL2sGT;AwBr5GD;EACE,sBAAA;EACA,SAAA;EACA,UAAA;EACA,iBAAA;EACA,uBAAA;EACA,uBAAA;EACA,yBAAA;EACA,oCAAA;EACA,mCAAA;CxBu5GD;AwBn5GD;;EAEE,mBAAA;CxBq5GD;AwBj5GD;EACE,WAAA;CxBm5GD;AwB/4GD;EACE,mBAAA;EACA,UAAA;EACA,QAAA;EACA,cAAA;EACA,cAAA;EACA,YAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EACA,gBAAA;EACA,iBAAA;EACA,uBAAA;EACA,uBAAA;EACA,sCAAA;EACA,mBAAA;EnBsBA,oDAAA;EACQ,4CAAA;EmBrBR,qCAAA;UAAA,6BAAA;CxBk5GD;AwB74GC;EACE,SAAA;EACA,WAAA;CxB+4GH;AwBx6GD;ECzBE,YAAA;EACA,cAAA;EACA,iBAAA;EACA,0BAAA;CzBo8GD;AwB96GD;EAmCI,eAAA;EACA,kBAAA;EACA,YAAA;EACA,oBAAA;EACA,wBAAA;EACA,eAAA;EACA,oBAAA;CxB84GH;AwBx4GC;;EAEE,sBAAA;EACA,eAAA;EACA,0BAAA;CxB04GH;AwBp4GC;;;EAGE,YAAA;EACA,sBAAA;EACA,WAAA;EACA,0BAAA;CxBs4GH;AwB73GC;;;EAGE,eAAA;CxB+3GH;AwB33GC;;EAEE,sBAAA;EACA,8BAAA;EACA,uBAAA;EE3GF,oEAAA;EF6GE,oBAAA;CxB63GH;AwBx3GD;EAGI,eAAA;CxBw3GH;AwB33GD;EAQI,WAAA;CxBs3GH;AwB92GD;EACE,WAAA;EACA,SAAA;CxBg3GD;AwBx2GD;EACE,QAAA;EACA,YAAA;CxB02GD;AwBt2GD;EACE,eAAA;EACA,kBAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,oBAAA;CxBw2GD;AwBp2GD;EACE,gBAAA;EACA,QAAA;EACA,SAAA;EACA,UAAA;EACA,OAAA;EACA,aAAA;CxBs2GD;AwBl2GD;EACE,SAAA;EACA,WAAA;CxBo2GD;AwB51GD;;EAII,cAAA;EACA,0BAAA;EACA,4BAAA;EACA,YAAA;CxB41GH;AwBn2GD;;EAWI,UAAA;EACA,aAAA;EACA,mBAAA;CxB41GH;AwBv0GD;EAXE;IApEA,WAAA;IACA,SAAA;GxB05GC;EwBv1GD;IA1DA,QAAA;IACA,YAAA;GxBo5GC;CACF;A2BpiHD;;EAEE,mBAAA;EACA,sBAAA;EACA,uBAAA;C3BsiHD;A2B1iHD;;EAMI,mBAAA;EACA,YAAA;C3BwiHH;A2BtiHG;;;;;;;;EAIE,WAAA;C3B4iHL;A2BtiHD;;;;EAKI,kBAAA;C3BuiHH;A2BliHD;EACE,kBAAA;C3BoiHD;A2BriHD;;;EAOI,YAAA;C3BmiHH;A2B1iHD;;;EAYI,iBAAA;C3BmiHH;A2B/hHD;EACE,iBAAA;C3BiiHD;A2B7hHD;EACE,eAAA;C3B+hHD;A2B9hHC;EClDA,8BAAA;EACG,2BAAA;C5BmlHJ;A2B7hHD;;EC/CE,6BAAA;EACG,0BAAA;C5BglHJ;A2B5hHD;EACE,YAAA;C3B8hHD;A2B5hHD;EACE,iBAAA;C3B8hHD;A2B5hHD;;ECnEE,8BAAA;EACG,2BAAA;C5BmmHJ;A2B3hHD;ECjEE,6BAAA;EACG,0BAAA;C5B+lHJ;A2B1hHD;;EAEE,WAAA;C3B4hHD;A2B3gHD;EACE,kBAAA;EACA,mBAAA;C3B6gHD;A2B3gHD;EACE,mBAAA;EACA,oBAAA;C3B6gHD;A2BxgHD;EtB/CE,yDAAA;EACQ,iDAAA;CL0jHT;A2BxgHC;EtBnDA,yBAAA;EACQ,iBAAA;CL8jHT;A2BrgHD;EACE,eAAA;C3BugHD;A2BpgHD;EACE,wBAAA;EACA,uBAAA;C3BsgHD;A2BngHD;EACE,wBAAA;C3BqgHD;A2B9/GD;;;EAII,eAAA;EACA,YAAA;EACA,YAAA;EACA,gBAAA;C3B+/GH;A2BtgHD;EAcM,YAAA;C3B2/GL;A2BzgHD;;;;EAsBI,iBAAA;EACA,eAAA;C3By/GH;A2Bp/GC;EACE,iBAAA;C3Bs/GH;A2Bp/GC;EC3KA,6BAAA;EACC,4BAAA;EAOD,8BAAA;EACC,6BAAA;C5B4pHF;A2Bt/GC;EC/KA,2BAAA;EACC,0BAAA;EAOD,gCAAA;EACC,+BAAA;C5BkqHF;A2Bv/GD;EACE,iBAAA;C3By/GD;A2Bv/GD;;EC/KE,8BAAA;EACC,6BAAA;C5B0qHF;A2Bt/GD;EC7LE,2BAAA;EACC,0BAAA;C5BsrHF;A2Bl/GD;EACE,eAAA;EACA,YAAA;EACA,oBAAA;EACA,0BAAA;C3Bo/GD;A2Bx/GD;;EAOI,YAAA;EACA,oBAAA;EACA,UAAA;C3Bq/GH;A2B9/GD;EAYI,YAAA;C3Bq/GH;A2BjgHD;EAgBI,WAAA;C3Bo/GH;A2Bn+GD;;;;EAKM,mBAAA;EACA,uBAAA;EACA,qBAAA;C3Bo+GL;A6B9sHD;EACE,mBAAA;EACA,eAAA;EACA,0BAAA;C7BgtHD;A6B7sHC;EACE,YAAA;EACA,gBAAA;EACA,iBAAA;C7B+sHH;A6BxtHD;EAeI,mBAAA;EACA,WAAA;EAKA,YAAA;EAEA,YAAA;EACA,iBAAA;C7BusHH;A6BrsHG;EACE,WAAA;C7BusHL;A6B7rHD;;;EV0BE,aAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;CnBwqHD;AmBtqHC;;;EACE,aAAA;EACA,kBAAA;CnB0qHH;AmBvqHC;;;;;;EAEE,aAAA;CnB6qHH;A6B/sHD;;;EVqBE,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CnB+rHD;AmB7rHC;;;EACE,aAAA;EACA,kBAAA;CnBisHH;AmB9rHC;;;;;;EAEE,aAAA;CnBosHH;A6B7tHD;;;EAGE,oBAAA;C7B+tHD;A6B7tHC;;;EACE,iBAAA;C7BiuHH;A6B7tHD;;EAEE,UAAA;EACA,oBAAA;EACA,uBAAA;C7B+tHD;A6B1tHD;EACE,kBAAA;EACA,gBAAA;EACA,oBAAA;EACA,eAAA;EACA,eAAA;EACA,mBAAA;EACA,0BAAA;EACA,uBAAA;EACA,mBAAA;C7B4tHD;A6BztHC;EACE,kBAAA;EACA,gBAAA;EACA,mBAAA;C7B2tHH;A6BztHC;EACE,mBAAA;EACA,gBAAA;EACA,mBAAA;C7B2tHH;A6B/uHD;;EA0BI,cAAA;C7BytHH;A6BptHD;;;;;;;EDpGE,8BAAA;EACG,2BAAA;C5Bi0HJ;A6BrtHD;EACE,gBAAA;C7ButHD;A6BrtHD;;;;;;;EDxGE,6BAAA;EACG,0BAAA;C5Bs0HJ;A6BttHD;EACE,eAAA;C7BwtHD;A6BntHD;EACE,mBAAA;EAGA,aAAA;EACA,oBAAA;C7BmtHD;A6BxtHD;EAUI,mBAAA;C7BitHH;A6B3tHD;EAYM,kBAAA;C7BktHL;A6B/sHG;;;EAGE,WAAA;C7BitHL;A6B5sHC;;EAGI,mBAAA;C7B6sHL;A6B1sHC;;EAGI,WAAA;EACA,kBAAA;C7B2sHL;A8B12HD;EACE,iBAAA;EACA,gBAAA;EACA,iBAAA;C9B42HD;A8B/2HD;EAOI,mBAAA;EACA,eAAA;C9B22HH;A8Bn3HD;EAWM,mBAAA;EACA,eAAA;EACA,mBAAA;C9B22HL;A8B12HK;;EAEE,sBAAA;EACA,0BAAA;C9B42HP;A8Bv2HG;EACE,eAAA;C9By2HL;A8Bv2HK;;EAEE,eAAA;EACA,sBAAA;EACA,8BAAA;EACA,oBAAA;C9By2HP;A8Bl2HG;;;EAGE,0BAAA;EACA,sBAAA;C9Bo2HL;A8B74HD;ELHE,YAAA;EACA,cAAA;EACA,iBAAA;EACA,0BAAA;CzBm5HD;A8Bn5HD;EA0DI,gBAAA;C9B41HH;A8Bn1HD;EACE,8BAAA;C9Bq1HD;A8Bt1HD;EAGI,YAAA;EAEA,oBAAA;C9Bq1HH;A8B11HD;EASM,kBAAA;EACA,wBAAA;EACA,8BAAA;EACA,2BAAA;C9Bo1HL;A8Bn1HK;EACE,mCAAA;C9Bq1HP;A8B/0HK;;;EAGE,eAAA;EACA,uBAAA;EACA,uBAAA;EACA,iCAAA;EACA,gBAAA;C9Bi1HP;A8B50HC;EAqDA,YAAA;EA8BA,iBAAA;C9B6vHD;A8Bh1HC;EAwDE,YAAA;C9B2xHH;A8Bn1HC;EA0DI,mBAAA;EACA,mBAAA;C9B4xHL;A8Bv1HC;EAgEE,UAAA;EACA,WAAA;C9B0xHH;A8B9wHD;EA0DA;IAjEM,oBAAA;IACA,UAAA;G9ByxHH;E8BztHH;IA9DQ,iBAAA;G9B0xHL;CACF;A8Bp2HC;EAuFE,gBAAA;EACA,mBAAA;C9BgxHH;A8Bx2HC;;;EA8FE,uBAAA;C9B+wHH;A8BjwHD;EA2BA;IApCM,8BAAA;IACA,2BAAA;G9B8wHH;E8B3uHH;;;IA9BM,0BAAA;G9B8wHH;CACF;A8B/2HD;EAEI,YAAA;C9Bg3HH;A8Bl3HD;EAMM,mBAAA;C9B+2HL;A8Br3HD;EASM,iBAAA;C9B+2HL;A8B12HK;;;EAGE,YAAA;EACA,0BAAA;C9B42HP;A8Bp2HD;EAEI,YAAA;C9Bq2HH;A8Bv2HD;EAIM,gBAAA;EACA,eAAA;C9Bs2HL;A8B11HD;EACE,YAAA;C9B41HD;A8B71HD;EAII,YAAA;C9B41HH;A8Bh2HD;EAMM,mBAAA;EACA,mBAAA;C9B61HL;A8Bp2HD;EAYI,UAAA;EACA,WAAA;C9B21HH;A8B/0HD;EA0DA;IAjEM,oBAAA;IACA,UAAA;G9B01HH;E8B1xHH;IA9DQ,iBAAA;G9B21HL;CACF;A8Bn1HD;EACE,iBAAA;C9Bq1HD;A8Bt1HD;EAKI,gBAAA;EACA,mBAAA;C9Bo1HH;A8B11HD;;;EAYI,uBAAA;C9Bm1HH;A8Br0HD;EA2BA;IApCM,8BAAA;IACA,2BAAA;G9Bk1HH;E8B/yHH;;;IA9BM,0BAAA;G9Bk1HH;CACF;A8Bz0HD;EAEI,cAAA;C9B00HH;A8B50HD;EAKI,eAAA;C9B00HH;A8Bj0HD;EAEE,iBAAA;EF3OA,2BAAA;EACC,0BAAA;C5B8iIF;A+BxiID;EACE,mBAAA;EACA,iBAAA;EACA,oBAAA;EACA,8BAAA;C/B0iID;A+BliID;EA8nBA;IAhoBI,mBAAA;G/BwiID;CACF;A+BzhID;EAgnBA;IAlnBI,YAAA;G/B+hID;CACF;A+BjhID;EACE,oBAAA;EACA,oBAAA;EACA,mBAAA;EACA,kCAAA;EACA,2DAAA;UAAA,mDAAA;EAEA,kCAAA;C/BkhID;A+BhhIC;EACE,iBAAA;C/BkhIH;A+Bt/HD;EA6jBA;IArlBI,YAAA;IACA,cAAA;IACA,yBAAA;YAAA,iBAAA;G/BkhID;E+BhhIC;IACE,0BAAA;IACA,wBAAA;IACA,kBAAA;IACA,6BAAA;G/BkhIH;E+B/gIC;IACE,oBAAA;G/BihIH;E+B5gIC;;;IAGE,gBAAA;IACA,iBAAA;G/B8gIH;CACF;A+B1gID;;EAGI,kBAAA;C/B2gIH;A+BtgIC;EAmjBF;;IArjBM,kBAAA;G/B6gIH;CACF;A+BpgID;;;;EAII,oBAAA;EACA,mBAAA;C/BsgIH;A+BhgIC;EAgiBF;;;;IAniBM,gBAAA;IACA,eAAA;G/B0gIH;CACF;A+B9/HD;EACE,cAAA;EACA,sBAAA;C/BggID;A+B3/HD;EA8gBA;IAhhBI,iBAAA;G/BigID;CACF;A+B7/HD;;EAEE,gBAAA;EACA,SAAA;EACA,QAAA;EACA,cAAA;C/B+/HD;A+Bz/HD;EAggBA;;IAlgBI,iBAAA;G/BggID;CACF;A+B9/HD;EACE,OAAA;EACA,sBAAA;C/BggID;A+B9/HD;EACE,UAAA;EACA,iBAAA;EACA,sBAAA;C/BggID;A+B1/HD;EACE,YAAA;EACA,mBAAA;EACA,gBAAA;EACA,kBAAA;EACA,aAAA;C/B4/HD;A+B1/HC;;EAEE,sBAAA;C/B4/HH;A+BrgID;EAaI,eAAA;C/B2/HH;A+Bl/HD;EALI;;IAEE,mBAAA;G/B0/HH;CACF;A+Bh/HD;EACE,mBAAA;EACA,aAAA;EACA,mBAAA;EACA,kBAAA;EC9LA,gBAAA;EACA,mBAAA;ED+LA,8BAAA;EACA,uBAAA;EACA,8BAAA;EACA,mBAAA;C/Bm/HD;A+B/+HC;EACE,WAAA;C/Bi/HH;A+B//HD;EAmBI,eAAA;EACA,YAAA;EACA,YAAA;EACA,mBAAA;C/B++HH;A+BrgID;EAyBI,gBAAA;C/B++HH;A+Bz+HD;EAqbA;IAvbI,cAAA;G/B++HD;CACF;A+Bt+HD;EACE,oBAAA;C/Bw+HD;A+Bz+HD;EAII,kBAAA;EACA,qBAAA;EACA,kBAAA;C/Bw+HH;A+B58HC;EA2YF;IAjaM,iBAAA;IACA,YAAA;IACA,YAAA;IACA,cAAA;IACA,8BAAA;IACA,UAAA;IACA,yBAAA;YAAA,iBAAA;G/Bs+HH;E+B3kHH;;IAxZQ,2BAAA;G/Bu+HL;E+B/kHH;IArZQ,kBAAA;G/Bu+HL;E+Bt+HK;;IAEE,uBAAA;G/Bw+HP;CACF;A+Bt9HD;EA+XA;IA1YI,YAAA;IACA,UAAA;G/Bq+HD;E+B5lHH;IAtYM,YAAA;G/Bq+HH;E+B/lHH;IApYQ,kBAAA;IACA,qBAAA;G/Bs+HL;CACF;A+B39HD;EACE,mBAAA;EACA,oBAAA;EACA,mBAAA;EACA,kCAAA;EACA,qCAAA;E1B9NA,6FAAA;EACQ,qFAAA;E2B/DR,gBAAA;EACA,mBAAA;ChC4vID;AkBtuHD;EAwEA;IAtIM,sBAAA;IACA,iBAAA;IACA,uBAAA;GlBwyHH;EkBpqHH;IA/HM,sBAAA;IACA,YAAA;IACA,uBAAA;GlBsyHH;EkBzqHH;IAxHM,sBAAA;GlBoyHH;EkB5qHH;IApHM,sBAAA;IACA,uBAAA;GlBmyHH;EkBhrHH;;;IA9GQ,YAAA;GlBmyHL;EkBrrHH;IAxGM,YAAA;GlBgyHH;EkBxrHH;IApGM,iBAAA;IACA,uBAAA;GlB+xHH;EkB5rHH;;IA5FM,sBAAA;IACA,cAAA;IACA,iBAAA;IACA,uBAAA;GlB4xHH;EkBnsHH;;IAtFQ,gBAAA;GlB6xHL;EkBvsHH;;IAjFM,mBAAA;IACA,eAAA;GlB4xHH;EkB5sHH;IA3EM,OAAA;GlB0xHH;CACF;A+BpgIC;EAmWF;IAzWM,mBAAA;G/B8gIH;E+B5gIG;IACE,iBAAA;G/B8gIL;CACF;A+B7/HD;EAoVA;IA5VI,YAAA;IACA,UAAA;IACA,eAAA;IACA,gBAAA;IACA,eAAA;IACA,kBAAA;I1BzPF,yBAAA;IACQ,iBAAA;GLmwIP;CACF;A+BngID;EACE,cAAA;EHpUA,2BAAA;EACC,0BAAA;C5B00IF;A+BngID;EACE,iBAAA;EHzUA,6BAAA;EACC,4BAAA;EAOD,8BAAA;EACC,6BAAA;C5By0IF;A+B//HD;EChVE,gBAAA;EACA,mBAAA;ChCk1ID;A+BhgIC;ECnVA,iBAAA;EACA,oBAAA;ChCs1ID;A+BjgIC;ECtVA,iBAAA;EACA,oBAAA;ChC01ID;A+B3/HD;EChWE,iBAAA;EACA,oBAAA;ChC81ID;A+Bv/HD;EAsSA;IA1SI,YAAA;IACA,kBAAA;IACA,mBAAA;G/B+/HD;CACF;A+Bl+HD;EAhBE;IExWA,uBAAA;GjC81IC;E+Br/HD;IE5WA,wBAAA;IF8WE,oBAAA;G/Bu/HD;E+Bz/HD;IAKI,gBAAA;G/Bu/HH;CACF;A+B9+HD;EACE,0BAAA;EACA,sBAAA;C/Bg/HD;A+Bl/HD;EAKI,YAAA;C/Bg/HH;A+B/+HG;;EAEE,eAAA;EACA,8BAAA;C/Bi/HL;A+B1/HD;EAcI,YAAA;C/B++HH;A+B7/HD;EAmBM,YAAA;C/B6+HL;A+B3+HK;;EAEE,YAAA;EACA,8BAAA;C/B6+HP;A+Bz+HK;;;EAGE,YAAA;EACA,0BAAA;C/B2+HP;A+Bv+HK;;;EAGE,YAAA;EACA,8BAAA;C/By+HP;A+BjhID;EA8CI,mBAAA;C/Bs+HH;A+Br+HG;;EAEE,uBAAA;C/Bu+HL;A+BxhID;EAoDM,uBAAA;C/Bu+HL;A+B3hID;;EA0DI,sBAAA;C/Bq+HH;A+B99HK;;;EAGE,0BAAA;EACA,YAAA;C/Bg+HP;A+B/7HC;EAoKF;IA7LU,YAAA;G/B49HP;E+B39HO;;IAEE,YAAA;IACA,8BAAA;G/B69HT;E+Bz9HO;;;IAGE,YAAA;IACA,0BAAA;G/B29HT;E+Bv9HO;;;IAGE,YAAA;IACA,8BAAA;G/By9HT;CACF;A+B3jID;EA8GI,YAAA;C/Bg9HH;A+B/8HG;EACE,YAAA;C/Bi9HL;A+BjkID;EAqHI,YAAA;C/B+8HH;A+B98HG;;EAEE,YAAA;C/Bg9HL;A+B58HK;;;;EAEE,YAAA;C/Bg9HP;A+Bx8HD;EACE,uBAAA;EACA,sBAAA;C/B08HD;A+B58HD;EAKI,eAAA;C/B08HH;A+Bz8HG;;EAEE,YAAA;EACA,8BAAA;C/B28HL;A+Bp9HD;EAcI,eAAA;C/By8HH;A+Bv9HD;EAmBM,eAAA;C/Bu8HL;A+Br8HK;;EAEE,YAAA;EACA,8BAAA;C/Bu8HP;A+Bn8HK;;;EAGE,YAAA;EACA,0BAAA;C/Bq8HP;A+Bj8HK;;;EAGE,YAAA;EACA,8BAAA;C/Bm8HP;A+B3+HD;EA+CI,mBAAA;C/B+7HH;A+B97HG;;EAEE,uBAAA;C/Bg8HL;A+Bl/HD;EAqDM,uBAAA;C/Bg8HL;A+Br/HD;;EA2DI,sBAAA;C/B87HH;A+Bx7HK;;;EAGE,0BAAA;EACA,YAAA;C/B07HP;A+Bn5HC;EAwBF;IAvDU,sBAAA;G/Bs7HP;E+B/3HH;IApDU,0BAAA;G/Bs7HP;E+Bl4HH;IAjDU,eAAA;G/Bs7HP;E+Br7HO;;IAEE,YAAA;IACA,8BAAA;G/Bu7HT;E+Bn7HO;;;IAGE,YAAA;IACA,0BAAA;G/Bq7HT;E+Bj7HO;;;IAGE,YAAA;IACA,8BAAA;G/Bm7HT;CACF;A+B3hID;EA+GI,eAAA;C/B+6HH;A+B96HG;EACE,YAAA;C/Bg7HL;A+BjiID;EAsHI,eAAA;C/B86HH;A+B76HG;;EAEE,YAAA;C/B+6HL;A+B36HK;;;;EAEE,YAAA;C/B+6HP;AkCzjJD;EACE,kBAAA;EACA,oBAAA;EACA,iBAAA;EACA,0BAAA;EACA,mBAAA;ClC2jJD;AkChkJD;EAQI,sBAAA;ClC2jJH;AkCnkJD;EAWM,kBAAA;EACA,eAAA;EACA,YAAA;ClC2jJL;AkCxkJD;EAkBI,eAAA;ClCyjJH;AmC7kJD;EACE,sBAAA;EACA,gBAAA;EACA,eAAA;EACA,mBAAA;CnC+kJD;AmCnlJD;EAOI,gBAAA;CnC+kJH;AmCtlJD;;EAUM,mBAAA;EACA,YAAA;EACA,kBAAA;EACA,wBAAA;EACA,sBAAA;EACA,eAAA;EACA,uBAAA;EACA,uBAAA;EACA,kBAAA;CnCglJL;AmC9kJG;;EAGI,eAAA;EPXN,+BAAA;EACG,4BAAA;C5B2lJJ;AmC7kJG;;EPvBF,gCAAA;EACG,6BAAA;C5BwmJJ;AmCxkJG;;;;EAEE,WAAA;EACA,eAAA;EACA,0BAAA;EACA,mBAAA;CnC4kJL;AmCtkJG;;;;;;EAGE,WAAA;EACA,YAAA;EACA,0BAAA;EACA,sBAAA;EACA,gBAAA;CnC2kJL;AmCloJD;;;;;;EAkEM,eAAA;EACA,uBAAA;EACA,mBAAA;EACA,oBAAA;CnCwkJL;AmC/jJD;;EC3EM,mBAAA;EACA,gBAAA;EACA,uBAAA;CpC8oJL;AoC5oJG;;ERKF,+BAAA;EACG,4BAAA;C5B2oJJ;AoC3oJG;;ERTF,gCAAA;EACG,6BAAA;C5BwpJJ;AmC1kJD;;EChFM,kBAAA;EACA,gBAAA;EACA,iBAAA;CpC8pJL;AoC5pJG;;ERKF,+BAAA;EACG,4BAAA;C5B2pJJ;AoC3pJG;;ERTF,gCAAA;EACG,6BAAA;C5BwqJJ;AqC3qJD;EACE,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,mBAAA;CrC6qJD;AqCjrJD;EAOI,gBAAA;CrC6qJH;AqCprJD;;EAUM,sBAAA;EACA,kBAAA;EACA,uBAAA;EACA,uBAAA;EACA,oBAAA;CrC8qJL;AqC5rJD;;EAmBM,sBAAA;EACA,0BAAA;CrC6qJL;AqCjsJD;;EA2BM,aAAA;CrC0qJL;AqCrsJD;;EAkCM,YAAA;CrCuqJL;AqCzsJD;;;;EA2CM,eAAA;EACA,uBAAA;EACA,oBAAA;CrCoqJL;AsCltJD;EACE,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,kBAAA;EACA,eAAA;EACA,YAAA;EACA,mBAAA;EACA,oBAAA;EACA,yBAAA;EACA,qBAAA;CtCotJD;AsChtJG;;EAEE,YAAA;EACA,sBAAA;EACA,gBAAA;CtCktJL;AsC7sJC;EACE,cAAA;CtC+sJH;AsC3sJC;EACE,mBAAA;EACA,UAAA;CtC6sJH;AsCtsJD;ECtCE,0BAAA;CvC+uJD;AuC5uJG;;EAEE,0BAAA;CvC8uJL;AsCzsJD;EC1CE,0BAAA;CvCsvJD;AuCnvJG;;EAEE,0BAAA;CvCqvJL;AsC5sJD;EC9CE,0BAAA;CvC6vJD;AuC1vJG;;EAEE,0BAAA;CvC4vJL;AsC/sJD;EClDE,0BAAA;CvCowJD;AuCjwJG;;EAEE,0BAAA;CvCmwJL;AsCltJD;ECtDE,0BAAA;CvC2wJD;AuCxwJG;;EAEE,0BAAA;CvC0wJL;AsCrtJD;EC1DE,0BAAA;CvCkxJD;AuC/wJG;;EAEE,0BAAA;CvCixJL;AwCnxJD;EACE,sBAAA;EACA,gBAAA;EACA,iBAAA;EACA,gBAAA;EACA,kBAAA;EACA,YAAA;EACA,eAAA;EACA,uBAAA;EACA,oBAAA;EACA,mBAAA;EACA,0BAAA;EACA,oBAAA;CxCqxJD;AwClxJC;EACE,cAAA;CxCoxJH;AwChxJC;EACE,mBAAA;EACA,UAAA;CxCkxJH;AwC/wJC;;EAEE,OAAA;EACA,iBAAA;CxCixJH;AwC5wJG;;EAEE,YAAA;EACA,sBAAA;EACA,gBAAA;CxC8wJL;AwCzwJC;;EAEE,eAAA;EACA,uBAAA;CxC2wJH;AwCxwJC;EACE,aAAA;CxC0wJH;AwCvwJC;EACE,kBAAA;CxCywJH;AwCtwJC;EACE,iBAAA;CxCwwJH;AyCl0JD;EACE,kBAAA;EACA,qBAAA;EACA,oBAAA;EACA,eAAA;EACA,0BAAA;CzCo0JD;AyCz0JD;;EASI,eAAA;CzCo0JH;AyC70JD;EAaI,oBAAA;EACA,gBAAA;EACA,iBAAA;CzCm0JH;AyCl1JD;EAmBI,0BAAA;CzCk0JH;AyC/zJC;;EAEE,mBAAA;EACA,mBAAA;EACA,oBAAA;CzCi0JH;AyC31JD;EA8BI,gBAAA;CzCg0JH;AyC9yJD;EACA;IAfI,kBAAA;IACA,qBAAA;GzCg0JD;EyC9zJC;;IAEE,mBAAA;IACA,oBAAA;GzCg0JH;EyCvzJH;;IAJM,gBAAA;GzC+zJH;CACF;A0C52JD;EACE,eAAA;EACA,aAAA;EACA,oBAAA;EACA,wBAAA;EACA,uBAAA;EACA,uBAAA;EACA,mBAAA;ErCiLA,4CAAA;EACK,uCAAA;EACG,oCAAA;CL8rJT;A0Cx3JD;;EAaI,kBAAA;EACA,mBAAA;C1C+2JH;A0C32JC;;;EAGE,sBAAA;C1C62JH;A0Cl4JD;EA0BI,aAAA;EACA,eAAA;C1C22JH;A2Cp4JD;EACE,cAAA;EACA,oBAAA;EACA,8BAAA;EACA,mBAAA;C3Cs4JD;A2C14JD;EAQI,cAAA;EAEA,eAAA;C3Co4JH;A2C94JD;EAeI,kBAAA;C3Ck4JH;A2Cj5JD;;EAqBI,iBAAA;C3Cg4JH;A2Cr5JD;EAyBI,gBAAA;C3C+3JH;A2Cv3JD;;EAEE,oBAAA;C3Cy3JD;A2C33JD;;EAMI,mBAAA;EACA,UAAA;EACA,aAAA;EACA,eAAA;C3Cy3JH;A2Cj3JD;ECvDE,0BAAA;EACA,sBAAA;EACA,eAAA;C5C26JD;A2Ct3JD;EClDI,0BAAA;C5C26JH;A2Cz3JD;EC/CI,eAAA;C5C26JH;A2Cx3JD;EC3DE,0BAAA;EACA,sBAAA;EACA,eAAA;C5Cs7JD;A2C73JD;ECtDI,0BAAA;C5Cs7JH;A2Ch4JD;ECnDI,eAAA;C5Cs7JH;A2C/3JD;EC/DE,0BAAA;EACA,sBAAA;EACA,eAAA;C5Ci8JD;A2Cp4JD;EC1DI,0BAAA;C5Ci8JH;A2Cv4JD;ECvDI,eAAA;C5Ci8JH;A2Ct4JD;ECnEE,0BAAA;EACA,sBAAA;EACA,eAAA;C5C48JD;A2C34JD;EC9DI,0BAAA;C5C48JH;A2C94JD;EC3DI,eAAA;C5C48JH;A6C98JD;EACE;IAAQ,4BAAA;G7Ci9JP;E6Ch9JD;IAAQ,yBAAA;G7Cm9JP;CACF;A6Ch9JD;EACE;IAAQ,4BAAA;G7Cm9JP;E6Cl9JD;IAAQ,yBAAA;G7Cq9JP;CACF;A6Cx9JD;EACE;IAAQ,4BAAA;G7Cm9JP;E6Cl9JD;IAAQ,yBAAA;G7Cq9JP;CACF;A6C98JD;EACE,iBAAA;EACA,aAAA;EACA,oBAAA;EACA,0BAAA;EACA,mBAAA;ExCsCA,uDAAA;EACQ,+CAAA;CL26JT;A6C78JD;EACE,YAAA;EACA,UAAA;EACA,aAAA;EACA,gBAAA;EACA,kBAAA;EACA,YAAA;EACA,mBAAA;EACA,0BAAA;ExCyBA,uDAAA;EACQ,+CAAA;EAyHR,oCAAA;EACK,+BAAA;EACG,4BAAA;CL+zJT;A6C18JD;;ECCI,8MAAA;EACA,yMAAA;EACA,sMAAA;EDAF,mCAAA;UAAA,2BAAA;C7C88JD;A6Cv8JD;;ExC5CE,2DAAA;EACK,sDAAA;EACG,mDAAA;CLu/JT;A6Cp8JD;EErEE,0BAAA;C/C4gKD;A+CzgKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9C49JH;A6Cx8JD;EEzEE,0BAAA;C/CohKD;A+CjhKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9Co+JH;A6C58JD;EE7EE,0BAAA;C/C4hKD;A+CzhKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9C4+JH;A6Ch9JD;EEjFE,0BAAA;C/CoiKD;A+CjiKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9Co/JH;AgD5iKD;EAEE,iBAAA;ChD6iKD;AgD3iKC;EACE,cAAA;ChD6iKH;AgDziKD;;EAEE,QAAA;EACA,iBAAA;ChD2iKD;AgDxiKD;EACE,eAAA;ChD0iKD;AgDviKD;EACE,eAAA;ChDyiKD;AgDtiKC;EACE,gBAAA;ChDwiKH;AgDpiKD;;EAEE,mBAAA;ChDsiKD;AgDniKD;;EAEE,oBAAA;ChDqiKD;AgDliKD;;;EAGE,oBAAA;EACA,oBAAA;ChDoiKD;AgDjiKD;EACE,uBAAA;ChDmiKD;AgDhiKD;EACE,uBAAA;ChDkiKD;AgD9hKD;EACE,cAAA;EACA,mBAAA;ChDgiKD;AgD1hKD;EACE,gBAAA;EACA,iBAAA;ChD4hKD;AiDnlKD;EAEE,oBAAA;EACA,gBAAA;CjDolKD;AiD5kKD;EACE,mBAAA;EACA,eAAA;EACA,mBAAA;EAEA,oBAAA;EACA,uBAAA;EACA,uBAAA;CjD6kKD;AiD1kKC;ErB3BA,6BAAA;EACC,4BAAA;C5BwmKF;AiD3kKC;EACE,iBAAA;ErBvBF,gCAAA;EACC,+BAAA;C5BqmKF;AiDpkKD;;EAEE,YAAA;CjDskKD;AiDxkKD;;EAKI,YAAA;CjDukKH;AiDnkKC;;;;EAEE,sBAAA;EACA,YAAA;EACA,0BAAA;CjDukKH;AiDnkKD;EACE,YAAA;EACA,iBAAA;CjDqkKD;AiDhkKC;;;EAGE,0BAAA;EACA,eAAA;EACA,oBAAA;CjDkkKH;AiDvkKC;;;EASI,eAAA;CjDmkKL;AiD5kKC;;;EAYI,eAAA;CjDqkKL;AiDhkKC;;;EAGE,WAAA;EACA,YAAA;EACA,0BAAA;EACA,sBAAA;CjDkkKH;AiDxkKC;;;;;;;;;EAYI,eAAA;CjDukKL;AiDnlKC;;;EAeI,eAAA;CjDykKL;AkD3qKC;EACE,eAAA;EACA,0BAAA;ClD6qKH;AkD3qKG;;EAEE,eAAA;ClD6qKL;AkD/qKG;;EAKI,eAAA;ClD8qKP;AkD3qKK;;;;EAEE,eAAA;EACA,0BAAA;ClD+qKP;AkD7qKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClDkrKP;AkDxsKC;EACE,eAAA;EACA,0BAAA;ClD0sKH;AkDxsKG;;EAEE,eAAA;ClD0sKL;AkD5sKG;;EAKI,eAAA;ClD2sKP;AkDxsKK;;;;EAEE,eAAA;EACA,0BAAA;ClD4sKP;AkD1sKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClD+sKP;AkDruKC;EACE,eAAA;EACA,0BAAA;ClDuuKH;AkDruKG;;EAEE,eAAA;ClDuuKL;AkDzuKG;;EAKI,eAAA;ClDwuKP;AkDruKK;;;;EAEE,eAAA;EACA,0BAAA;ClDyuKP;AkDvuKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClD4uKP;AkDlwKC;EACE,eAAA;EACA,0BAAA;ClDowKH;AkDlwKG;;EAEE,eAAA;ClDowKL;AkDtwKG;;EAKI,eAAA;ClDqwKP;AkDlwKK;;;;EAEE,eAAA;EACA,0BAAA;ClDswKP;AkDpwKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClDywKP;AiDxqKD;EACE,cAAA;EACA,mBAAA;CjD0qKD;AiDxqKD;EACE,iBAAA;EACA,iBAAA;CjD0qKD;AmDpyKD;EACE,oBAAA;EACA,uBAAA;EACA,8BAAA;EACA,mBAAA;E9C0DA,kDAAA;EACQ,0CAAA;CL6uKT;AmDnyKD;EACE,cAAA;CnDqyKD;AmDhyKD;EACE,mBAAA;EACA,qCAAA;EvBpBA,6BAAA;EACC,4BAAA;C5BuzKF;AmDtyKD;EAMI,eAAA;CnDmyKH;AmD9xKD;EACE,cAAA;EACA,iBAAA;EACA,gBAAA;EACA,eAAA;CnDgyKD;AmDpyKD;;;;;EAWI,eAAA;CnDgyKH;AmD3xKD;EACE,mBAAA;EACA,0BAAA;EACA,2BAAA;EvBxCA,gCAAA;EACC,+BAAA;C5Bs0KF;AmDrxKD;;EAGI,iBAAA;CnDsxKH;AmDzxKD;;EAMM,oBAAA;EACA,iBAAA;CnDuxKL;AmDnxKG;;EAEI,cAAA;EvBvEN,6BAAA;EACC,4BAAA;C5B61KF;AmDjxKG;;EAEI,iBAAA;EvBvEN,gCAAA;EACC,+BAAA;C5B21KF;AmD1yKD;EvB1DE,2BAAA;EACC,0BAAA;C5Bu2KF;AmD7wKD;EAEI,oBAAA;CnD8wKH;AmD3wKD;EACE,oBAAA;CnD6wKD;AmDrwKD;;;EAII,iBAAA;CnDswKH;AmD1wKD;;;EAOM,mBAAA;EACA,oBAAA;CnDwwKL;AmDhxKD;;EvBzGE,6BAAA;EACC,4BAAA;C5B63KF;AmDrxKD;;;;EAmBQ,4BAAA;EACA,6BAAA;CnDwwKP;AmD5xKD;;;;;;;;EAwBU,4BAAA;CnD8wKT;AmDtyKD;;;;;;;;EA4BU,6BAAA;CnDoxKT;AmDhzKD;;EvBjGE,gCAAA;EACC,+BAAA;C5Bq5KF;AmDrzKD;;;;EAyCQ,+BAAA;EACA,gCAAA;CnDkxKP;AmD5zKD;;;;;;;;EA8CU,+BAAA;CnDwxKT;AmDt0KD;;;;;;;;EAkDU,gCAAA;CnD8xKT;AmDh1KD;;;;EA2DI,2BAAA;CnD2xKH;AmDt1KD;;EA+DI,cAAA;CnD2xKH;AmD11KD;;EAmEI,UAAA;CnD2xKH;AmD91KD;;;;;;;;;;;;EA0EU,eAAA;CnDkyKT;AmD52KD;;;;;;;;;;;;EA8EU,gBAAA;CnD4yKT;AmD13KD;;;;;;;;EAuFU,iBAAA;CnD6yKT;AmDp4KD;;;;;;;;EAgGU,iBAAA;CnD8yKT;AmD94KD;EAsGI,UAAA;EACA,iBAAA;CnD2yKH;AmDjyKD;EACE,oBAAA;CnDmyKD;AmDpyKD;EAKI,iBAAA;EACA,mBAAA;CnDkyKH;AmDxyKD;EASM,gBAAA;CnDkyKL;AmD3yKD;EAcI,iBAAA;CnDgyKH;AmD9yKD;;EAkBM,2BAAA;CnDgyKL;AmDlzKD;EAuBI,cAAA;CnD8xKH;AmDrzKD;EAyBM,8BAAA;CnD+xKL;AmDxxKD;EC1PE,mBAAA;CpDqhLD;AoDnhLC;EACE,eAAA;EACA,0BAAA;EACA,mBAAA;CpDqhLH;AoDxhLC;EAMI,uBAAA;CpDqhLL;AoD3hLC;EASI,eAAA;EACA,0BAAA;CpDqhLL;AoDlhLC;EAEI,0BAAA;CpDmhLL;AmDvyKD;EC7PE,sBAAA;CpDuiLD;AoDriLC;EACE,YAAA;EACA,0BAAA;EACA,sBAAA;CpDuiLH;AoD1iLC;EAMI,0BAAA;CpDuiLL;AoD7iLC;EASI,eAAA;EACA,uBAAA;CpDuiLL;AoDpiLC;EAEI,6BAAA;CpDqiLL;AmDtzKD;EChQE,sBAAA;CpDyjLD;AoDvjLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpDyjLH;AoD5jLC;EAMI,0BAAA;CpDyjLL;AoD/jLC;EASI,eAAA;EACA,0BAAA;CpDyjLL;AoDtjLC;EAEI,6BAAA;CpDujLL;AmDr0KD;ECnQE,sBAAA;CpD2kLD;AoDzkLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpD2kLH;AoD9kLC;EAMI,0BAAA;CpD2kLL;AoDjlLC;EASI,eAAA;EACA,0BAAA;CpD2kLL;AoDxkLC;EAEI,6BAAA;CpDykLL;AmDp1KD;ECtQE,sBAAA;CpD6lLD;AoD3lLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpD6lLH;AoDhmLC;EAMI,0BAAA;CpD6lLL;AoDnmLC;EASI,eAAA;EACA,0BAAA;CpD6lLL;AoD1lLC;EAEI,6BAAA;CpD2lLL;AmDn2KD;ECzQE,sBAAA;CpD+mLD;AoD7mLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpD+mLH;AoDlnLC;EAMI,0BAAA;CpD+mLL;AoDrnLC;EASI,eAAA;EACA,0BAAA;CpD+mLL;AoD5mLC;EAEI,6BAAA;CpD6mLL;AqD7nLD;EACE,mBAAA;EACA,eAAA;EACA,UAAA;EACA,WAAA;EACA,iBAAA;CrD+nLD;AqDpoLD;;;;;EAYI,mBAAA;EACA,OAAA;EACA,QAAA;EACA,UAAA;EACA,aAAA;EACA,YAAA;EACA,UAAA;CrD+nLH;AqD1nLD;EACE,uBAAA;CrD4nLD;AqDxnLD;EACE,oBAAA;CrD0nLD;AsDrpLD;EACE,iBAAA;EACA,cAAA;EACA,oBAAA;EACA,0BAAA;EACA,0BAAA;EACA,mBAAA;EjDwDA,wDAAA;EACQ,gDAAA;CLgmLT;AsD/pLD;EASI,mBAAA;EACA,kCAAA;CtDypLH;AsDppLD;EACE,cAAA;EACA,mBAAA;CtDspLD;AsDppLD;EACE,aAAA;EACA,mBAAA;CtDspLD;AuD5qLD;EACE,aAAA;EACA,gBAAA;EACA,kBAAA;EACA,eAAA;EACA,YAAA;EACA,0BAAA;EjCRA,aAAA;EAGA,0BAAA;CtBqrLD;AuD7qLC;;EAEE,YAAA;EACA,sBAAA;EACA,gBAAA;EjCfF,aAAA;EAGA,0BAAA;CtB6rLD;AuDzqLC;EACE,WAAA;EACA,gBAAA;EACA,wBAAA;EACA,UAAA;EACA,yBAAA;CvD2qLH;AwDhsLD;EACE,iBAAA;CxDksLD;AwD9rLD;EACE,cAAA;EACA,iBAAA;EACA,gBAAA;EACA,OAAA;EACA,SAAA;EACA,UAAA;EACA,QAAA;EACA,cAAA;EACA,kCAAA;EAIA,WAAA;CxD6rLD;AwD1rLC;EnD+GA,sCAAA;EACI,kCAAA;EACC,iCAAA;EACG,8BAAA;EAkER,oDAAA;EAEK,0CAAA;EACG,oCAAA;CL6gLT;AwDhsLC;EnD2GA,mCAAA;EACI,+BAAA;EACC,8BAAA;EACG,2BAAA;CLwlLT;AwDpsLD;EACE,mBAAA;EACA,iBAAA;CxDssLD;AwDlsLD;EACE,mBAAA;EACA,YAAA;EACA,aAAA;CxDosLD;AwDhsLD;EACE,mBAAA;EACA,uBAAA;EACA,uBAAA;EACA,qCAAA;EACA,mBAAA;EnDaA,iDAAA;EACQ,yCAAA;EmDZR,qCAAA;UAAA,6BAAA;EAEA,WAAA;CxDksLD;AwD9rLD;EACE,gBAAA;EACA,OAAA;EACA,SAAA;EACA,UAAA;EACA,QAAA;EACA,cAAA;EACA,uBAAA;CxDgsLD;AwD9rLC;ElCrEA,WAAA;EAGA,yBAAA;CtBowLD;AwDjsLC;ElCtEA,aAAA;EAGA,0BAAA;CtBwwLD;AwDhsLD;EACE,cAAA;EACA,iCAAA;CxDksLD;AwD9rLD;EACE,iBAAA;CxDgsLD;AwD5rLD;EACE,UAAA;EACA,wBAAA;CxD8rLD;AwDzrLD;EACE,mBAAA;EACA,cAAA;CxD2rLD;AwDvrLD;EACE,cAAA;EACA,kBAAA;EACA,8BAAA;CxDyrLD;AwD5rLD;EAQI,iBAAA;EACA,iBAAA;CxDurLH;AwDhsLD;EAaI,kBAAA;CxDsrLH;AwDnsLD;EAiBI,eAAA;CxDqrLH;AwDhrLD;EACE,mBAAA;EACA,aAAA;EACA,YAAA;EACA,aAAA;EACA,iBAAA;CxDkrLD;AwDhqLD;EAZE;IACE,aAAA;IACA,kBAAA;GxD+qLD;EwD7qLD;InDvEA,kDAAA;IACQ,0CAAA;GLuvLP;EwD5qLD;IAAY,aAAA;GxD+qLX;CACF;AwD1qLD;EAFE;IAAY,aAAA;GxDgrLX;CACF;AyD/zLD;EACE,mBAAA;EACA,cAAA;EACA,eAAA;ECRA,4DAAA;EAEA,mBAAA;EACA,oBAAA;EACA,uBAAA;EACA,iBAAA;EACA,wBAAA;EACA,iBAAA;EACA,kBAAA;EACA,sBAAA;EACA,kBAAA;EACA,qBAAA;EACA,oBAAA;EACA,mBAAA;EACA,qBAAA;EACA,kBAAA;EDHA,gBAAA;EnCVA,WAAA;EAGA,yBAAA;CtBs1LD;AyD30LC;EnCdA,aAAA;EAGA,0BAAA;CtB01LD;AyD90LC;EAAW,iBAAA;EAAmB,eAAA;CzDk1L/B;AyDj1LC;EAAW,iBAAA;EAAmB,eAAA;CzDq1L/B;AyDp1LC;EAAW,gBAAA;EAAmB,eAAA;CzDw1L/B;AyDv1LC;EAAW,kBAAA;EAAmB,eAAA;CzD21L/B;AyDv1LD;EACE,iBAAA;EACA,iBAAA;EACA,YAAA;EACA,mBAAA;EACA,uBAAA;EACA,mBAAA;CzDy1LD;AyDr1LD;EACE,mBAAA;EACA,SAAA;EACA,UAAA;EACA,0BAAA;EACA,oBAAA;CzDu1LD;AyDn1LC;EACE,UAAA;EACA,UAAA;EACA,kBAAA;EACA,wBAAA;EACA,uBAAA;CzDq1LH;AyDn1LC;EACE,UAAA;EACA,WAAA;EACA,oBAAA;EACA,wBAAA;EACA,uBAAA;CzDq1LH;AyDn1LC;EACE,UAAA;EACA,UAAA;EACA,oBAAA;EACA,wBAAA;EACA,uBAAA;CzDq1LH;AyDn1LC;EACE,SAAA;EACA,QAAA;EACA,iBAAA;EACA,4BAAA;EACA,yBAAA;CzDq1LH;AyDn1LC;EACE,SAAA;EACA,SAAA;EACA,iBAAA;EACA,4BAAA;EACA,wBAAA;CzDq1LH;AyDn1LC;EACE,OAAA;EACA,UAAA;EACA,kBAAA;EACA,wBAAA;EACA,0BAAA;CzDq1LH;AyDn1LC;EACE,OAAA;EACA,WAAA;EACA,iBAAA;EACA,wBAAA;EACA,0BAAA;CzDq1LH;AyDn1LC;EACE,OAAA;EACA,UAAA;EACA,iBAAA;EACA,wBAAA;EACA,0BAAA;CzDq1LH;A2Dl7LD;EACE,mBAAA;EACA,OAAA;EACA,QAAA;EACA,cAAA;EACA,cAAA;EACA,iBAAA;EACA,aAAA;EDXA,4DAAA;EAEA,mBAAA;EACA,oBAAA;EACA,uBAAA;EACA,iBAAA;EACA,wBAAA;EACA,iBAAA;EACA,kBAAA;EACA,sBAAA;EACA,kBAAA;EACA,qBAAA;EACA,oBAAA;EACA,mBAAA;EACA,qBAAA;EACA,kBAAA;ECAA,gBAAA;EAEA,uBAAA;EACA,qCAAA;UAAA,6BAAA;EACA,uBAAA;EACA,qCAAA;EACA,mBAAA;EtD8CA,kDAAA;EACQ,0CAAA;CLk5LT;A2D77LC;EAAY,kBAAA;C3Dg8Lb;A2D/7LC;EAAY,kBAAA;C3Dk8Lb;A2Dj8LC;EAAY,iBAAA;C3Do8Lb;A2Dn8LC;EAAY,mBAAA;C3Ds8Lb;A2Dn8LD;EACE,UAAA;EACA,kBAAA;EACA,gBAAA;EACA,0BAAA;EACA,iCAAA;EACA,2BAAA;C3Dq8LD;A2Dl8LD;EACE,kBAAA;C3Do8LD;A2D57LC;;EAEE,mBAAA;EACA,eAAA;EACA,SAAA;EACA,UAAA;EACA,0BAAA;EACA,oBAAA;C3D87LH;A2D37LD;EACE,mBAAA;C3D67LD;A2D37LD;EACE,mBAAA;EACA,YAAA;C3D67LD;A2Dz7LC;EACE,UAAA;EACA,mBAAA;EACA,uBAAA;EACA,0BAAA;EACA,sCAAA;EACA,cAAA;C3D27LH;A2D17LG;EACE,aAAA;EACA,YAAA;EACA,mBAAA;EACA,uBAAA;EACA,uBAAA;C3D47LL;A2Dz7LC;EACE,SAAA;EACA,YAAA;EACA,kBAAA;EACA,qBAAA;EACA,4BAAA;EACA,wCAAA;C3D27LH;A2D17LG;EACE,aAAA;EACA,UAAA;EACA,cAAA;EACA,qBAAA;EACA,yBAAA;C3D47LL;A2Dz7LC;EACE,UAAA;EACA,mBAAA;EACA,oBAAA;EACA,6BAAA;EACA,yCAAA;EACA,WAAA;C3D27LH;A2D17LG;EACE,aAAA;EACA,SAAA;EACA,mBAAA;EACA,oBAAA;EACA,0BAAA;C3D47LL;A2Dx7LC;EACE,SAAA;EACA,aAAA;EACA,kBAAA;EACA,sBAAA;EACA,2BAAA;EACA,uCAAA;C3D07LH;A2Dz7LG;EACE,aAAA;EACA,WAAA;EACA,sBAAA;EACA,wBAAA;EACA,cAAA;C3D27LL;A4DpjMD;EACE,mBAAA;C5DsjMD;A4DnjMD;EACE,mBAAA;EACA,iBAAA;EACA,YAAA;C5DqjMD;A4DxjMD;EAMI,cAAA;EACA,mBAAA;EvD6KF,0CAAA;EACK,qCAAA;EACG,kCAAA;CLy4LT;A4D/jMD;;EAcM,eAAA;C5DqjML;A4D3hMC;EA4NF;IvD3DE,uDAAA;IAEK,6CAAA;IACG,uCAAA;IA7JR,oCAAA;IAEQ,4BAAA;IA+GR,4BAAA;IAEQ,oBAAA;GL86LP;E4DzjMG;;IvDmHJ,2CAAA;IACQ,mCAAA;IuDjHF,QAAA;G5D4jML;E4D1jMG;;IvD8GJ,4CAAA;IACQ,oCAAA;IuD5GF,QAAA;G5D6jML;E4D3jMG;;;IvDyGJ,wCAAA;IACQ,gCAAA;IuDtGF,QAAA;G5D8jML;CACF;A4DpmMD;;;EA6CI,eAAA;C5D4jMH;A4DzmMD;EAiDI,QAAA;C5D2jMH;A4D5mMD;;EAsDI,mBAAA;EACA,OAAA;EACA,YAAA;C5D0jMH;A4DlnMD;EA4DI,WAAA;C5DyjMH;A4DrnMD;EA+DI,YAAA;C5DyjMH;A4DxnMD;;EAmEI,QAAA;C5DyjMH;A4D5nMD;EAuEI,YAAA;C5DwjMH;A4D/nMD;EA0EI,WAAA;C5DwjMH;A4DhjMD;EACE,mBAAA;EACA,OAAA;EACA,QAAA;EACA,UAAA;EACA,WAAA;EtC9FA,aAAA;EAGA,0BAAA;EsC6FA,gBAAA;EACA,YAAA;EACA,mBAAA;EACA,0CAAA;EACA,mCAAA;C5DmjMD;A4D9iMC;EdnGE,mGAAA;EACA,8FAAA;EACA,qHAAA;EAAA,+FAAA;EACA,4BAAA;EACA,uHAAA;C9CopMH;A4DljMC;EACE,WAAA;EACA,SAAA;EdxGA,mGAAA;EACA,8FAAA;EACA,qHAAA;EAAA,+FAAA;EACA,4BAAA;EACA,uHAAA;C9C6pMH;A4DpjMC;;EAEE,WAAA;EACA,YAAA;EACA,sBAAA;EtCvHF,aAAA;EAGA,0BAAA;CtB4qMD;A4DtlMD;;;;EAuCI,mBAAA;EACA,SAAA;EACA,kBAAA;EACA,WAAA;EACA,sBAAA;C5DqjMH;A4DhmMD;;EA+CI,UAAA;EACA,mBAAA;C5DqjMH;A4DrmMD;;EAoDI,WAAA;EACA,oBAAA;C5DqjMH;A4D1mMD;;EAyDI,YAAA;EACA,aAAA;EACA,eAAA;EACA,mBAAA;C5DqjMH;A4DhjMG;EACE,iBAAA;C5DkjML;A4D9iMG;EACE,iBAAA;C5DgjML;A4DtiMD;EACE,mBAAA;EACA,aAAA;EACA,UAAA;EACA,YAAA;EACA,WAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;C5DwiMD;A4DjjMD;EAYI,sBAAA;EACA,YAAA;EACA,aAAA;EACA,YAAA;EACA,oBAAA;EACA,uBAAA;EACA,oBAAA;EACA,gBAAA;EAWA,0BAAA;EACA,mCAAA;C5D8hMH;A4D7jMD;EAkCI,UAAA;EACA,YAAA;EACA,aAAA;EACA,uBAAA;C5D8hMH;A4DvhMD;EACE,mBAAA;EACA,UAAA;EACA,WAAA;EACA,aAAA;EACA,YAAA;EACA,kBAAA;EACA,qBAAA;EACA,YAAA;EACA,mBAAA;EACA,0CAAA;C5DyhMD;A4DxhMC;EACE,kBAAA;C5D0hMH;A4Dj/LD;EAhCE;;;;IAKI,YAAA;IACA,aAAA;IACA,kBAAA;IACA,gBAAA;G5DmhMH;E4D3hMD;;IAYI,mBAAA;G5DmhMH;E4D/hMD;;IAgBI,oBAAA;G5DmhMH;E4D9gMD;IACE,UAAA;IACA,WAAA;IACA,qBAAA;G5DghMD;E4D5gMD;IACE,aAAA;G5D8gMD;CACF;A6D7wMC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEE,aAAA;EACA,eAAA;C7D6yMH;A6D3yMC;;;;;;;;;;;;;;;;EACE,YAAA;C7D4zMH;AiCp0MD;E6BRE,eAAA;EACA,kBAAA;EACA,mBAAA;C9D+0MD;AiCt0MD;EACE,wBAAA;CjCw0MD;AiCt0MD;EACE,uBAAA;CjCw0MD;AiCh0MD;EACE,yBAAA;CjCk0MD;AiCh0MD;EACE,0BAAA;CjCk0MD;AiCh0MD;EACE,mBAAA;CjCk0MD;AiCh0MD;E8BzBE,YAAA;EACA,mBAAA;EACA,kBAAA;EACA,8BAAA;EACA,UAAA;C/D41MD;AiC9zMD;EACE,yBAAA;CjCg0MD;AiCzzMD;EACE,gBAAA;CjC2zMD;AgE51MD;EACE,oBAAA;ChE81MD;AgEx1MD;;;;ECdE,yBAAA;CjE42MD;AgEv1MD;;;;;;;;;;;;EAYE,yBAAA;ChEy1MD;AgEl1MD;EA6IA;IC7LE,0BAAA;GjEs4MC;EiEr4MD;IAAU,0BAAA;GjEw4MT;EiEv4MD;IAAU,8BAAA;GjE04MT;EiEz4MD;;IACU,+BAAA;GjE44MT;CACF;AgE51MD;EAwIA;IA1II,0BAAA;GhEk2MD;CACF;AgE51MD;EAmIA;IArII,2BAAA;GhEk2MD;CACF;AgE51MD;EA8HA;IAhII,iCAAA;GhEk2MD;CACF;AgE31MD;EAwHA;IC7LE,0BAAA;GjEo6MC;EiEn6MD;IAAU,0BAAA;GjEs6MT;EiEr6MD;IAAU,8BAAA;GjEw6MT;EiEv6MD;;IACU,+BAAA;GjE06MT;CACF;AgEr2MD;EAmHA;IArHI,0BAAA;GhE22MD;CACF;AgEr2MD;EA8GA;IAhHI,2BAAA;GhE22MD;CACF;AgEr2MD;EAyGA;IA3GI,iCAAA;GhE22MD;CACF;AgEp2MD;EAmGA;IC7LE,0BAAA;GjEk8MC;EiEj8MD;IAAU,0BAAA;GjEo8MT;EiEn8MD;IAAU,8BAAA;GjEs8MT;EiEr8MD;;IACU,+BAAA;GjEw8MT;CACF;AgE92MD;EA8FA;IAhGI,0BAAA;GhEo3MD;CACF;AgE92MD;EAyFA;IA3FI,2BAAA;GhEo3MD;CACF;AgE92MD;EAoFA;IAtFI,iCAAA;GhEo3MD;CACF;AgE72MD;EA8EA;IC7LE,0BAAA;GjEg+MC;EiE/9MD;IAAU,0BAAA;GjEk+MT;EiEj+MD;IAAU,8BAAA;GjEo+MT;EiEn+MD;;IACU,+BAAA;GjEs+MT;CACF;AgEv3MD;EAyEA;IA3EI,0BAAA;GhE63MD;CACF;AgEv3MD;EAoEA;IAtEI,2BAAA;GhE63MD;CACF;AgEv3MD;EA+DA;IAjEI,iCAAA;GhE63MD;CACF;AgEt3MD;EAyDA;ICrLE,yBAAA;GjEs/MC;CACF;AgEt3MD;EAoDA;ICrLE,yBAAA;GjE2/MC;CACF;AgEt3MD;EA+CA;ICrLE,yBAAA;GjEggNC;CACF;AgEt3MD;EA0CA;ICrLE,yBAAA;GjEqgNC;CACF;AgEn3MD;ECnJE,yBAAA;CjEygND;AgEh3MD;EA4BA;IC7LE,0BAAA;GjEqhNC;EiEphND;IAAU,0BAAA;GjEuhNT;EiEthND;IAAU,8BAAA;GjEyhNT;EiExhND;;IACU,+BAAA;GjE2hNT;CACF;AgE93MD;EACE,yBAAA;ChEg4MD;AgE33MD;EAqBA;IAvBI,0BAAA;GhEi4MD;CACF;AgE/3MD;EACE,yBAAA;ChEi4MD;AgE53MD;EAcA;IAhBI,2BAAA;GhEk4MD;CACF;AgEh4MD;EACE,yBAAA;ChEk4MD;AgE73MD;EAOA;IATI,iCAAA;GhEm4MD;CACF;AgE53MD;EACA;ICrLE,yBAAA;GjEojNC;CACF", - "file": "bootstrap.css", - "sourcesContent": [ - "/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: 1px dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n background: transparent !important;\n color: #000 !important;\n box-shadow: none !important;\n text-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: url('../fonts/glyphicons-halflings-regular.eot');\n src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\002a\";\n}\n.glyphicon-plus:before {\n content: \"\\002b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: normal;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n background-color: #fcf8e3;\n padding: .2em;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted #777777;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: '\\2014 \\00A0';\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n text-align: right;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: '';\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: '\\00A0 \\2014';\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #fff;\n background-color: #333;\n border-radius: 3px;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n word-break: break-all;\n word-wrap: break-word;\n color: #333333;\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n.row {\n margin-left: -15px;\n margin-right: -15px;\n}\n.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-left: 15px;\n padding-right: 15px;\n}\n.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\ntable col[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-column;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-cell;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n min-width: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: bold;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999;\n}\n.form-control::-ms-expand {\n border: 0;\n background-color: transparent;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: none;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: normal;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-left: -20px;\n margin-top: 4px \\9;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n vertical-align: middle;\n font-weight: normal;\n cursor: pointer;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.form-control-static {\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n min-height: 34px;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-left: 0;\n padding-right: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n border-color: #3c763d;\n background-color: #dff0d8;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n border-color: #8a6d3b;\n background-color: #fcf8e3;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n border-color: #a94442;\n background-color: #f2dede;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n margin-top: 0;\n margin-bottom: 0;\n padding-top: 7px;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-left: -15px;\n margin-right: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n text-align: right;\n margin-bottom: 0;\n padding-top: 7px;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 11px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n background-image: none;\n}\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus {\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default .badge {\n color: #fff;\n background-color: #333;\n}\n.btn-primary {\n color: #fff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #fff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #fff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n background-image: none;\n}\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.btn-success {\n color: #fff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #fff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #fff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n background-image: none;\n}\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #fff;\n}\n.btn-info {\n color: #fff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #fff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #fff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n background-image: none;\n}\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #fff;\n}\n.btn-warning {\n color: #fff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #fff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #fff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n background-image: none;\n}\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #fff;\n}\n.btn-danger {\n color: #fff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #fff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #fff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n background-image: none;\n}\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #fff;\n}\n.btn-link {\n color: #337ab7;\n font-weight: normal;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n list-style: none;\n font-size: 14px;\n text-align: left;\n background-color: #fff;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n background-clip: padding-box;\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n text-decoration: none;\n color: #262626;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n background-color: #337ab7;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n cursor: not-allowed;\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n left: auto;\n right: 0;\n}\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n content: \"\";\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n left: auto;\n right: 0;\n }\n .navbar-right .dropdown-menu-left {\n left: 0;\n right: auto;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group .form-control:focus {\n z-index: 3;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: normal;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n margin-bottom: 0;\n padding-left: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n background-color: transparent;\n cursor: not-allowed;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #ddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #ddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n background-color: #fff;\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n cursor: default;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n text-align: center;\n margin-bottom: 5px;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #fff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n text-align: center;\n margin-bottom: 5px;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n overflow-x: visible;\n padding-right: 15px;\n padding-left: 15px;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-left: 0;\n padding-right: 0;\n }\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.navbar-brand {\n float: left;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n height: 50px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n margin-right: 15px;\n padding: 9px 10px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n margin-left: -15px;\n margin-right: -15px;\n padding: 10px 15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n border: 0;\n margin-left: 0;\n margin-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-left: 15px;\n margin-right: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n}\n.navbar-default .navbar-toggle {\n border-color: #ddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #ddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n background-color: #e7e7e7;\n color: #555;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-link {\n color: #777;\n}\n.navbar-default .navbar-link:hover {\n color: #333;\n}\n.navbar-default .btn-link {\n color: #777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #ccc;\n}\n.navbar-inverse {\n background-color: #222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #fff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #fff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n background-color: #080808;\n color: #fff;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #fff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #fff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #fff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n content: \"/\\00a0\";\n padding: 0 5px;\n color: #ccc;\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n line-height: 1.42857143;\n text-decoration: none;\n color: #337ab7;\n background-color: #fff;\n border: 1px solid #ddd;\n margin-left: -1px;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-bottom-left-radius: 4px;\n border-top-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-bottom-right-radius: 4px;\n border-top-right-radius: 4px;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 2;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #ddd;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 3;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n cursor: default;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n background-color: #fff;\n border-color: #ddd;\n cursor: not-allowed;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-bottom-left-radius: 6px;\n border-top-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-bottom-right-radius: 6px;\n border-top-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-bottom-left-radius: 3px;\n border-top-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-bottom-right-radius: 3px;\n border-top-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n list-style: none;\n text-align: center;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n background-color: #fff;\n cursor: not-allowed;\n}\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n}\na.label:hover,\na.label:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n color: #fff;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n text-align: center;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n border-radius: 6px;\n padding-left: 15px;\n padding-right: 15px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-left: 60px;\n padding-right: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-left: auto;\n margin-right: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n background-color: #dff0d8;\n border-color: #d6e9c6;\n color: #3c763d;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n background-color: #d9edf7;\n border-color: #bce8f1;\n color: #31708f;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n background-color: #fcf8e3;\n border-color: #faebcc;\n color: #8a6d3b;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n background-color: #f2dede;\n border-color: #ebccd1;\n color: #a94442;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n overflow: hidden;\n height: 20px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #fff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n zoom: 1;\n overflow: hidden;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n margin-bottom: 20px;\n padding-left: 0;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.list-group-item:first-child {\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n text-decoration: none;\n color: #555;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n background-color: #eeeeee;\n color: #777777;\n cursor: not-allowed;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #fff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #ddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-left: 15px;\n padding-right: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-left-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #ddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n border: 0;\n margin-bottom: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #ddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #ddd;\n}\n.panel-default {\n border-color: #ddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #ddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n height: 100%;\n width: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n opacity: 0.2;\n filter: alpha(opacity=20);\n}\n.close:hover,\n.close:focus {\n color: #000;\n text-decoration: none;\n cursor: pointer;\n opacity: 0.5;\n filter: alpha(opacity=50);\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n display: none;\n overflow: hidden;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -moz-transition: -moz-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #fff;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n background-clip: padding-box;\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n.modal-backdrop.fade {\n opacity: 0;\n filter: alpha(opacity=0);\n}\n.modal-backdrop.in {\n opacity: 0.5;\n filter: alpha(opacity=50);\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-left: 5px;\n margin-bottom: 0;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n line-break: auto;\n line-height: 1.42857143;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n white-space: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n font-size: 12px;\n opacity: 0;\n filter: alpha(opacity=0);\n}\n.tooltip.in {\n opacity: 0.9;\n filter: alpha(opacity=90);\n}\n.tooltip.top {\n margin-top: -3px;\n padding: 5px 0;\n}\n.tooltip.right {\n margin-left: 3px;\n padding: 0 5px;\n}\n.tooltip.bottom {\n margin-top: 3px;\n padding: 5px 0;\n}\n.tooltip.left {\n margin-left: -3px;\n padding: 0 5px;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-left .tooltip-arrow {\n bottom: 0;\n right: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n line-break: auto;\n line-height: 1.42857143;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n white-space: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n font-size: 14px;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover-title {\n margin: 0;\n padding: 8px 14px;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow:after {\n border-width: 10px;\n content: \"\";\n}\n.popover.top > .arrow {\n left: 50%;\n margin-left: -11px;\n border-bottom-width: 0;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n bottom: -11px;\n}\n.popover.top > .arrow:after {\n content: \" \";\n bottom: 1px;\n margin-left: -10px;\n border-bottom-width: 0;\n border-top-color: #fff;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-left-width: 0;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n.popover.right > .arrow:after {\n content: \" \";\n left: 1px;\n bottom: -10px;\n border-left-width: 0;\n border-right-color: #fff;\n}\n.popover.bottom > .arrow {\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n top: -11px;\n}\n.popover.bottom > .arrow:after {\n content: \" \";\n top: 1px;\n margin-left: -10px;\n border-top-width: 0;\n border-bottom-color: #fff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n content: \" \";\n right: 1px;\n border-right-width: 0;\n border-left-color: #fff;\n bottom: -10px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n overflow: hidden;\n width: 100%;\n}\n.carousel-inner > .item {\n display: none;\n position: relative;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -moz-transition: -moz-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n -moz-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 15%;\n opacity: 0.5;\n filter: alpha(opacity=50);\n font-size: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n background-color: rgba(0, 0, 0, 0);\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n}\n.carousel-control.right {\n left: auto;\n right: 0;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n}\n.carousel-control:hover,\n.carousel-control:focus {\n outline: 0;\n color: #fff;\n text-decoration: none;\n opacity: 0.9;\n filter: alpha(opacity=90);\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n margin-top: -10px;\n z-index: 5;\n display: inline-block;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n line-height: 1;\n font-family: serif;\n}\n.carousel-control .icon-prev:before {\n content: '\\2039';\n}\n.carousel-control .icon-next:before {\n content: '\\203a';\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n margin-left: -30%;\n padding-left: 0;\n list-style: none;\n text-align: center;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n border: 1px solid #fff;\n border-radius: 10px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n}\n.carousel-indicators .active {\n margin: 0;\n width: 12px;\n height: 12px;\n background-color: #fff;\n}\n.carousel-caption {\n position: absolute;\n left: 15%;\n right: 15%;\n bottom: 20px;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -10px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -10px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -10px;\n }\n .carousel-caption {\n left: 20%;\n right: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-header:before,\n.modal-header:after,\n.modal-footer:before,\n.modal-footer:after {\n content: \" \";\n display: table;\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-header:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */", - "/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n\n//\n// 1. Set default font family to sans-serif.\n// 2. Prevent iOS and IE text size adjust after device orientation change,\n// without disabling user zoom.\n//\n\nhtml {\n font-family: sans-serif; // 1\n -ms-text-size-adjust: 100%; // 2\n -webkit-text-size-adjust: 100%; // 2\n}\n\n//\n// Remove default margin.\n//\n\nbody {\n margin: 0;\n}\n\n// HTML5 display definitions\n// ==========================================================================\n\n//\n// Correct `block` display not defined for any HTML5 element in IE 8/9.\n// Correct `block` display not defined for `details` or `summary` in IE 10/11\n// and Firefox.\n// Correct `block` display not defined for `main` in IE 11.\n//\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n//\n// 1. Correct `inline-block` display not defined in IE 8/9.\n// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n//\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; // 1\n vertical-align: baseline; // 2\n}\n\n//\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\n//\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n//\n// Address `[hidden]` styling not present in IE 8/9/10.\n// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n//\n\n[hidden],\ntemplate {\n display: none;\n}\n\n// Links\n// ==========================================================================\n\n//\n// Remove the gray background color from active links in IE 10.\n//\n\na {\n background-color: transparent;\n}\n\n//\n// Improve readability of focused elements when they are also in an\n// active/hover state.\n//\n\na:active,\na:hover {\n outline: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n//\n// Address styling not present in IE 8/9/10/11, Safari, and Chrome.\n//\n\nabbr[title] {\n border-bottom: 1px dotted;\n}\n\n//\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n//\n\nb,\nstrong {\n font-weight: bold;\n}\n\n//\n// Address styling not present in Safari and Chrome.\n//\n\ndfn {\n font-style: italic;\n}\n\n//\n// Address variable `h1` font-size and margin within `section` and `article`\n// contexts in Firefox 4+, Safari, and Chrome.\n//\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n//\n// Address styling not present in IE 8/9.\n//\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n//\n// Address inconsistent and variable font size in all browsers.\n//\n\nsmall {\n font-size: 80%;\n}\n\n//\n// Prevent `sub` and `sup` affecting `line-height` in all browsers.\n//\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n// Embedded content\n// ==========================================================================\n\n//\n// Remove border when inside `a` element in IE 8/9/10.\n//\n\nimg {\n border: 0;\n}\n\n//\n// Correct overflow not hidden in IE 9/10/11.\n//\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n//\n// Address margin not present in IE 8/9 and Safari.\n//\n\nfigure {\n margin: 1em 40px;\n}\n\n//\n// Address differences between Firefox and other browsers.\n//\n\nhr {\n box-sizing: content-box;\n height: 0;\n}\n\n//\n// Contain overflow in all browsers.\n//\n\npre {\n overflow: auto;\n}\n\n//\n// Address odd `em`-unit font size rendering in all browsers.\n//\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n//\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n//\n\n//\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; // 1\n font: inherit; // 2\n margin: 0; // 3\n}\n\n//\n// Address `overflow` set to `hidden` in IE 8/9/10/11.\n//\n\nbutton {\n overflow: visible;\n}\n\n//\n// Address inconsistent `text-transform` inheritance for `button` and `select`.\n// All other form control elements do not inherit `text-transform` values.\n// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n// Correct `select` style inheritance in Firefox.\n//\n\nbutton,\nselect {\n text-transform: none;\n}\n\n//\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\n//\n\nbutton,\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; // 2\n cursor: pointer; // 3\n}\n\n//\n// Re-set default cursor for disabled elements.\n//\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n//\n// Remove inner padding and border in Firefox 4+.\n//\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n//\n// Address Firefox 4+ setting `line-height` on `input` using `!important` in\n// the UA stylesheet.\n//\n\ninput {\n line-height: normal;\n}\n\n//\n// It's recommended that you don't attempt to style these elements.\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n//\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\n//\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; // 1\n padding: 0; // 2\n}\n\n//\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\n//\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n//\n// 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n// 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n//\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; // 1\n box-sizing: content-box; //2\n}\n\n//\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\n//\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// Define consistent border, margin, and padding.\n//\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n//\n// 1. Correct `color` not being inherited in IE 8/9/10/11.\n// 2. Remove padding so people aren't caught out if they zero out fieldsets.\n//\n\nlegend {\n border: 0; // 1\n padding: 0; // 2\n}\n\n//\n// Remove default vertical scrollbar in IE 8/9/10/11.\n//\n\ntextarea {\n overflow: auto;\n}\n\n//\n// Don't inherit the `font-weight` (applied by a rule above).\n// NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n//\n\noptgroup {\n font-weight: bold;\n}\n\n// Tables\n// ==========================================================================\n\n//\n// Remove most spacing between table cells.\n//\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n", - "/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n\n// ==========================================================================\n// Print styles.\n// Inlined to avoid the additional HTTP request: h5bp.com/r\n// ==========================================================================\n\n@media print {\n *,\n *:before,\n *:after {\n background: transparent !important;\n color: #000 !important; // Black prints faster: h5bp.com/s\n box-shadow: none !important;\n text-shadow: none !important;\n }\n\n a,\n a:visited {\n text-decoration: underline;\n }\n\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n\n // Don't show links that are fragment identifiers,\n // or use the `javascript:` pseudo protocol\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n\n thead {\n display: table-header-group; // h5bp.com/t\n }\n\n tr,\n img {\n page-break-inside: avoid;\n }\n\n img {\n max-width: 100% !important;\n }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n h2,\n h3 {\n page-break-after: avoid;\n }\n\n // Bootstrap specific changes start\n\n // Bootstrap components\n .navbar {\n display: none;\n }\n .btn,\n .dropup > .btn {\n > .caret {\n border-top-color: #000 !important;\n }\n }\n .label {\n border: 1px solid #000;\n }\n\n .table {\n border-collapse: collapse !important;\n\n td,\n th {\n background-color: #fff !important;\n }\n }\n .table-bordered {\n th,\n td {\n border: 1px solid #ddd !important;\n }\n }\n\n // Bootstrap specific changes end\n}\n", - "//\n// Glyphicons for Bootstrap\n//\n// Since icons are fonts, they can be placed anywhere text is placed and are\n// thus automatically sized to match the surrounding child. To use, create an\n// inline element with the appropriate classes, like so:\n//\n// Star\n\n// Import the fonts\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: url('@{icon-font-path}@{icon-font-name}.eot');\n src: url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype'),\n url('@{icon-font-path}@{icon-font-name}.woff2') format('woff2'),\n url('@{icon-font-path}@{icon-font-name}.woff') format('woff'),\n url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype'),\n url('@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}') format('svg');\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: \"\\002a\"; } }\n.glyphicon-plus { &:before { content: \"\\002b\"; } }\n.glyphicon-euro,\n.glyphicon-eur { &:before { content: \"\\20ac\"; } }\n.glyphicon-minus { &:before { content: \"\\2212\"; } }\n.glyphicon-cloud { &:before { content: \"\\2601\"; } }\n.glyphicon-envelope { &:before { content: \"\\2709\"; } }\n.glyphicon-pencil { &:before { content: \"\\270f\"; } }\n.glyphicon-glass { &:before { content: \"\\e001\"; } }\n.glyphicon-music { &:before { content: \"\\e002\"; } }\n.glyphicon-search { &:before { content: \"\\e003\"; } }\n.glyphicon-heart { &:before { content: \"\\e005\"; } }\n.glyphicon-star { &:before { content: \"\\e006\"; } }\n.glyphicon-star-empty { &:before { content: \"\\e007\"; } }\n.glyphicon-user { &:before { content: \"\\e008\"; } }\n.glyphicon-film { &:before { content: \"\\e009\"; } }\n.glyphicon-th-large { &:before { content: \"\\e010\"; } }\n.glyphicon-th { &:before { content: \"\\e011\"; } }\n.glyphicon-th-list { &:before { content: \"\\e012\"; } }\n.glyphicon-ok { &:before { content: \"\\e013\"; } }\n.glyphicon-remove { &:before { content: \"\\e014\"; } }\n.glyphicon-zoom-in { &:before { content: \"\\e015\"; } }\n.glyphicon-zoom-out { &:before { content: \"\\e016\"; } }\n.glyphicon-off { &:before { content: \"\\e017\"; } }\n.glyphicon-signal { &:before { content: \"\\e018\"; } }\n.glyphicon-cog { &:before { content: \"\\e019\"; } }\n.glyphicon-trash { &:before { content: \"\\e020\"; } }\n.glyphicon-home { &:before { content: \"\\e021\"; } }\n.glyphicon-file { &:before { content: \"\\e022\"; } }\n.glyphicon-time { &:before { content: \"\\e023\"; } }\n.glyphicon-road { &:before { content: \"\\e024\"; } }\n.glyphicon-download-alt { &:before { content: \"\\e025\"; } }\n.glyphicon-download { &:before { content: \"\\e026\"; } }\n.glyphicon-upload { &:before { content: \"\\e027\"; } }\n.glyphicon-inbox { &:before { content: \"\\e028\"; } }\n.glyphicon-play-circle { &:before { content: \"\\e029\"; } }\n.glyphicon-repeat { &:before { content: \"\\e030\"; } }\n.glyphicon-refresh { &:before { content: \"\\e031\"; } }\n.glyphicon-list-alt { &:before { content: \"\\e032\"; } }\n.glyphicon-lock { &:before { content: \"\\e033\"; } }\n.glyphicon-flag { &:before { content: \"\\e034\"; } }\n.glyphicon-headphones { &:before { content: \"\\e035\"; } }\n.glyphicon-volume-off { &:before { content: \"\\e036\"; } }\n.glyphicon-volume-down { &:before { content: \"\\e037\"; } }\n.glyphicon-volume-up { &:before { content: \"\\e038\"; } }\n.glyphicon-qrcode { &:before { content: \"\\e039\"; } }\n.glyphicon-barcode { &:before { content: \"\\e040\"; } }\n.glyphicon-tag { &:before { content: \"\\e041\"; } }\n.glyphicon-tags { &:before { content: \"\\e042\"; } }\n.glyphicon-book { &:before { content: \"\\e043\"; } }\n.glyphicon-bookmark { &:before { content: \"\\e044\"; } }\n.glyphicon-print { &:before { content: \"\\e045\"; } }\n.glyphicon-camera { &:before { content: \"\\e046\"; } }\n.glyphicon-font { &:before { content: \"\\e047\"; } }\n.glyphicon-bold { &:before { content: \"\\e048\"; } }\n.glyphicon-italic { &:before { content: \"\\e049\"; } }\n.glyphicon-text-height { &:before { content: \"\\e050\"; } }\n.glyphicon-text-width { &:before { content: \"\\e051\"; } }\n.glyphicon-align-left { &:before { content: \"\\e052\"; } }\n.glyphicon-align-center { &:before { content: \"\\e053\"; } }\n.glyphicon-align-right { &:before { content: \"\\e054\"; } }\n.glyphicon-align-justify { &:before { content: \"\\e055\"; } }\n.glyphicon-list { &:before { content: \"\\e056\"; } }\n.glyphicon-indent-left { &:before { content: \"\\e057\"; } }\n.glyphicon-indent-right { &:before { content: \"\\e058\"; } }\n.glyphicon-facetime-video { &:before { content: \"\\e059\"; } }\n.glyphicon-picture { &:before { content: \"\\e060\"; } }\n.glyphicon-map-marker { &:before { content: \"\\e062\"; } }\n.glyphicon-adjust { &:before { content: \"\\e063\"; } }\n.glyphicon-tint { &:before { content: \"\\e064\"; } }\n.glyphicon-edit { &:before { content: \"\\e065\"; } }\n.glyphicon-share { &:before { content: \"\\e066\"; } }\n.glyphicon-check { &:before { content: \"\\e067\"; } }\n.glyphicon-move { &:before { content: \"\\e068\"; } }\n.glyphicon-step-backward { &:before { content: \"\\e069\"; } }\n.glyphicon-fast-backward { &:before { content: \"\\e070\"; } }\n.glyphicon-backward { &:before { content: \"\\e071\"; } }\n.glyphicon-play { &:before { content: \"\\e072\"; } }\n.glyphicon-pause { &:before { content: \"\\e073\"; } }\n.glyphicon-stop { &:before { content: \"\\e074\"; } }\n.glyphicon-forward { &:before { content: \"\\e075\"; } }\n.glyphicon-fast-forward { &:before { content: \"\\e076\"; } }\n.glyphicon-step-forward { &:before { content: \"\\e077\"; } }\n.glyphicon-eject { &:before { content: \"\\e078\"; } }\n.glyphicon-chevron-left { &:before { content: \"\\e079\"; } }\n.glyphicon-chevron-right { &:before { content: \"\\e080\"; } }\n.glyphicon-plus-sign { &:before { content: \"\\e081\"; } }\n.glyphicon-minus-sign { &:before { content: \"\\e082\"; } }\n.glyphicon-remove-sign { &:before { content: \"\\e083\"; } }\n.glyphicon-ok-sign { &:before { content: \"\\e084\"; } }\n.glyphicon-question-sign { &:before { content: \"\\e085\"; } }\n.glyphicon-info-sign { &:before { content: \"\\e086\"; } }\n.glyphicon-screenshot { &:before { content: \"\\e087\"; } }\n.glyphicon-remove-circle { &:before { content: \"\\e088\"; } }\n.glyphicon-ok-circle { &:before { content: \"\\e089\"; } }\n.glyphicon-ban-circle { &:before { content: \"\\e090\"; } }\n.glyphicon-arrow-left { &:before { content: \"\\e091\"; } }\n.glyphicon-arrow-right { &:before { content: \"\\e092\"; } }\n.glyphicon-arrow-up { &:before { content: \"\\e093\"; } }\n.glyphicon-arrow-down { &:before { content: \"\\e094\"; } }\n.glyphicon-share-alt { &:before { content: \"\\e095\"; } }\n.glyphicon-resize-full { &:before { content: \"\\e096\"; } }\n.glyphicon-resize-small { &:before { content: \"\\e097\"; } }\n.glyphicon-exclamation-sign { &:before { content: \"\\e101\"; } }\n.glyphicon-gift { &:before { content: \"\\e102\"; } }\n.glyphicon-leaf { &:before { content: \"\\e103\"; } }\n.glyphicon-fire { &:before { content: \"\\e104\"; } }\n.glyphicon-eye-open { &:before { content: \"\\e105\"; } }\n.glyphicon-eye-close { &:before { content: \"\\e106\"; } }\n.glyphicon-warning-sign { &:before { content: \"\\e107\"; } }\n.glyphicon-plane { &:before { content: \"\\e108\"; } }\n.glyphicon-calendar { &:before { content: \"\\e109\"; } }\n.glyphicon-random { &:before { content: \"\\e110\"; } }\n.glyphicon-comment { &:before { content: \"\\e111\"; } }\n.glyphicon-magnet { &:before { content: \"\\e112\"; } }\n.glyphicon-chevron-up { &:before { content: \"\\e113\"; } }\n.glyphicon-chevron-down { &:before { content: \"\\e114\"; } }\n.glyphicon-retweet { &:before { content: \"\\e115\"; } }\n.glyphicon-shopping-cart { &:before { content: \"\\e116\"; } }\n.glyphicon-folder-close { &:before { content: \"\\e117\"; } }\n.glyphicon-folder-open { &:before { content: \"\\e118\"; } }\n.glyphicon-resize-vertical { &:before { content: \"\\e119\"; } }\n.glyphicon-resize-horizontal { &:before { content: \"\\e120\"; } }\n.glyphicon-hdd { &:before { content: \"\\e121\"; } }\n.glyphicon-bullhorn { &:before { content: \"\\e122\"; } }\n.glyphicon-bell { &:before { content: \"\\e123\"; } }\n.glyphicon-certificate { &:before { content: \"\\e124\"; } }\n.glyphicon-thumbs-up { &:before { content: \"\\e125\"; } }\n.glyphicon-thumbs-down { &:before { content: \"\\e126\"; } }\n.glyphicon-hand-right { &:before { content: \"\\e127\"; } }\n.glyphicon-hand-left { &:before { content: \"\\e128\"; } }\n.glyphicon-hand-up { &:before { content: \"\\e129\"; } }\n.glyphicon-hand-down { &:before { content: \"\\e130\"; } }\n.glyphicon-circle-arrow-right { &:before { content: \"\\e131\"; } }\n.glyphicon-circle-arrow-left { &:before { content: \"\\e132\"; } }\n.glyphicon-circle-arrow-up { &:before { content: \"\\e133\"; } }\n.glyphicon-circle-arrow-down { &:before { content: \"\\e134\"; } }\n.glyphicon-globe { &:before { content: \"\\e135\"; } }\n.glyphicon-wrench { &:before { content: \"\\e136\"; } }\n.glyphicon-tasks { &:before { content: \"\\e137\"; } }\n.glyphicon-filter { &:before { content: \"\\e138\"; } }\n.glyphicon-briefcase { &:before { content: \"\\e139\"; } }\n.glyphicon-fullscreen { &:before { content: \"\\e140\"; } }\n.glyphicon-dashboard { &:before { content: \"\\e141\"; } }\n.glyphicon-paperclip { &:before { content: \"\\e142\"; } }\n.glyphicon-heart-empty { &:before { content: \"\\e143\"; } }\n.glyphicon-link { &:before { content: \"\\e144\"; } }\n.glyphicon-phone { &:before { content: \"\\e145\"; } }\n.glyphicon-pushpin { &:before { content: \"\\e146\"; } }\n.glyphicon-usd { &:before { content: \"\\e148\"; } }\n.glyphicon-gbp { &:before { content: \"\\e149\"; } }\n.glyphicon-sort { &:before { content: \"\\e150\"; } }\n.glyphicon-sort-by-alphabet { &:before { content: \"\\e151\"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: \"\\e152\"; } }\n.glyphicon-sort-by-order { &:before { content: \"\\e153\"; } }\n.glyphicon-sort-by-order-alt { &:before { content: \"\\e154\"; } }\n.glyphicon-sort-by-attributes { &:before { content: \"\\e155\"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: \"\\e156\"; } }\n.glyphicon-unchecked { &:before { content: \"\\e157\"; } }\n.glyphicon-expand { &:before { content: \"\\e158\"; } }\n.glyphicon-collapse-down { &:before { content: \"\\e159\"; } }\n.glyphicon-collapse-up { &:before { content: \"\\e160\"; } }\n.glyphicon-log-in { &:before { content: \"\\e161\"; } }\n.glyphicon-flash { &:before { content: \"\\e162\"; } }\n.glyphicon-log-out { &:before { content: \"\\e163\"; } }\n.glyphicon-new-window { &:before { content: \"\\e164\"; } }\n.glyphicon-record { &:before { content: \"\\e165\"; } }\n.glyphicon-save { &:before { content: \"\\e166\"; } }\n.glyphicon-open { &:before { content: \"\\e167\"; } }\n.glyphicon-saved { &:before { content: \"\\e168\"; } }\n.glyphicon-import { &:before { content: \"\\e169\"; } }\n.glyphicon-export { &:before { content: \"\\e170\"; } }\n.glyphicon-send { &:before { content: \"\\e171\"; } }\n.glyphicon-floppy-disk { &:before { content: \"\\e172\"; } }\n.glyphicon-floppy-saved { &:before { content: \"\\e173\"; } }\n.glyphicon-floppy-remove { &:before { content: \"\\e174\"; } }\n.glyphicon-floppy-save { &:before { content: \"\\e175\"; } }\n.glyphicon-floppy-open { &:before { content: \"\\e176\"; } }\n.glyphicon-credit-card { &:before { content: \"\\e177\"; } }\n.glyphicon-transfer { &:before { content: \"\\e178\"; } }\n.glyphicon-cutlery { &:before { content: \"\\e179\"; } }\n.glyphicon-header { &:before { content: \"\\e180\"; } }\n.glyphicon-compressed { &:before { content: \"\\e181\"; } }\n.glyphicon-earphone { &:before { content: \"\\e182\"; } }\n.glyphicon-phone-alt { &:before { content: \"\\e183\"; } }\n.glyphicon-tower { &:before { content: \"\\e184\"; } }\n.glyphicon-stats { &:before { content: \"\\e185\"; } }\n.glyphicon-sd-video { &:before { content: \"\\e186\"; } }\n.glyphicon-hd-video { &:before { content: \"\\e187\"; } }\n.glyphicon-subtitles { &:before { content: \"\\e188\"; } }\n.glyphicon-sound-stereo { &:before { content: \"\\e189\"; } }\n.glyphicon-sound-dolby { &:before { content: \"\\e190\"; } }\n.glyphicon-sound-5-1 { &:before { content: \"\\e191\"; } }\n.glyphicon-sound-6-1 { &:before { content: \"\\e192\"; } }\n.glyphicon-sound-7-1 { &:before { content: \"\\e193\"; } }\n.glyphicon-copyright-mark { &:before { content: \"\\e194\"; } }\n.glyphicon-registration-mark { &:before { content: \"\\e195\"; } }\n.glyphicon-cloud-download { &:before { content: \"\\e197\"; } }\n.glyphicon-cloud-upload { &:before { content: \"\\e198\"; } }\n.glyphicon-tree-conifer { &:before { content: \"\\e199\"; } }\n.glyphicon-tree-deciduous { &:before { content: \"\\e200\"; } }\n.glyphicon-cd { &:before { content: \"\\e201\"; } }\n.glyphicon-save-file { &:before { content: \"\\e202\"; } }\n.glyphicon-open-file { &:before { content: \"\\e203\"; } }\n.glyphicon-level-up { &:before { content: \"\\e204\"; } }\n.glyphicon-copy { &:before { content: \"\\e205\"; } }\n.glyphicon-paste { &:before { content: \"\\e206\"; } }\n// The following 2 Glyphicons are omitted for the time being because\n// they currently use Unicode codepoints that are outside the\n// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle\n// non-BMP codepoints in CSS string escapes, and thus can't display these two icons.\n// Notably, the bug affects some older versions of the Android Browser.\n// More info: https://github.com/twbs/bootstrap/issues/10106\n// .glyphicon-door { &:before { content: \"\\1f6aa\"; } }\n// .glyphicon-key { &:before { content: \"\\1f511\"; } }\n.glyphicon-alert { &:before { content: \"\\e209\"; } }\n.glyphicon-equalizer { &:before { content: \"\\e210\"; } }\n.glyphicon-king { &:before { content: \"\\e211\"; } }\n.glyphicon-queen { &:before { content: \"\\e212\"; } }\n.glyphicon-pawn { &:before { content: \"\\e213\"; } }\n.glyphicon-bishop { &:before { content: \"\\e214\"; } }\n.glyphicon-knight { &:before { content: \"\\e215\"; } }\n.glyphicon-baby-formula { &:before { content: \"\\e216\"; } }\n.glyphicon-tent { &:before { content: \"\\26fa\"; } }\n.glyphicon-blackboard { &:before { content: \"\\e218\"; } }\n.glyphicon-bed { &:before { content: \"\\e219\"; } }\n.glyphicon-apple { &:before { content: \"\\f8ff\"; } }\n.glyphicon-erase { &:before { content: \"\\e221\"; } }\n.glyphicon-hourglass { &:before { content: \"\\231b\"; } }\n.glyphicon-lamp { &:before { content: \"\\e223\"; } }\n.glyphicon-duplicate { &:before { content: \"\\e224\"; } }\n.glyphicon-piggy-bank { &:before { content: \"\\e225\"; } }\n.glyphicon-scissors { &:before { content: \"\\e226\"; } }\n.glyphicon-bitcoin { &:before { content: \"\\e227\"; } }\n.glyphicon-btc { &:before { content: \"\\e227\"; } }\n.glyphicon-xbt { &:before { content: \"\\e227\"; } }\n.glyphicon-yen { &:before { content: \"\\00a5\"; } }\n.glyphicon-jpy { &:before { content: \"\\00a5\"; } }\n.glyphicon-ruble { &:before { content: \"\\20bd\"; } }\n.glyphicon-rub { &:before { content: \"\\20bd\"; } }\n.glyphicon-scale { &:before { content: \"\\e230\"; } }\n.glyphicon-ice-lolly { &:before { content: \"\\e231\"; } }\n.glyphicon-ice-lolly-tasted { &:before { content: \"\\e232\"; } }\n.glyphicon-education { &:before { content: \"\\e233\"; } }\n.glyphicon-option-horizontal { &:before { content: \"\\e234\"; } }\n.glyphicon-option-vertical { &:before { content: \"\\e235\"; } }\n.glyphicon-menu-hamburger { &:before { content: \"\\e236\"; } }\n.glyphicon-modal-window { &:before { content: \"\\e237\"; } }\n.glyphicon-oil { &:before { content: \"\\e238\"; } }\n.glyphicon-grain { &:before { content: \"\\e239\"; } }\n.glyphicon-sunglasses { &:before { content: \"\\e240\"; } }\n.glyphicon-text-size { &:before { content: \"\\e241\"; } }\n.glyphicon-text-color { &:before { content: \"\\e242\"; } }\n.glyphicon-text-background { &:before { content: \"\\e243\"; } }\n.glyphicon-object-align-top { &:before { content: \"\\e244\"; } }\n.glyphicon-object-align-bottom { &:before { content: \"\\e245\"; } }\n.glyphicon-object-align-horizontal{ &:before { content: \"\\e246\"; } }\n.glyphicon-object-align-left { &:before { content: \"\\e247\"; } }\n.glyphicon-object-align-vertical { &:before { content: \"\\e248\"; } }\n.glyphicon-object-align-right { &:before { content: \"\\e249\"; } }\n.glyphicon-triangle-right { &:before { content: \"\\e250\"; } }\n.glyphicon-triangle-left { &:before { content: \"\\e251\"; } }\n.glyphicon-triangle-bottom { &:before { content: \"\\e252\"; } }\n.glyphicon-triangle-top { &:before { content: \"\\e253\"; } }\n.glyphicon-console { &:before { content: \"\\e254\"; } }\n.glyphicon-superscript { &:before { content: \"\\e255\"; } }\n.glyphicon-subscript { &:before { content: \"\\e256\"; } }\n.glyphicon-menu-left { &:before { content: \"\\e257\"; } }\n.glyphicon-menu-right { &:before { content: \"\\e258\"; } }\n.glyphicon-menu-down { &:before { content: \"\\e259\"; } }\n.glyphicon-menu-up { &:before { content: \"\\e260\"; } }\n", - "//\n// Scaffolding\n// --------------------------------------------------\n\n\n// Reset the box-sizing\n//\n// Heads up! This reset may cause conflicts with some third-party widgets.\n// For recommendations on resolving such conflicts, see\n// http://getbootstrap.com/getting-started/#third-box-sizing\n* {\n .box-sizing(border-box);\n}\n*:before,\n*:after {\n .box-sizing(border-box);\n}\n\n\n// Body reset\n\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n}\n\nbody {\n font-family: @font-family-base;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @text-color;\n background-color: @body-bg;\n}\n\n// Reset fonts for relevant elements\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n\n// Links\n\na {\n color: @link-color;\n text-decoration: none;\n\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n }\n\n &:focus {\n .tab-focus();\n }\n}\n\n\n// Figures\n//\n// We reset this here because previously Normalize had no `figure` margins. This\n// ensures we don't break anyone's use of the element.\n\nfigure {\n margin: 0;\n}\n\n\n// Images\n\nimg {\n vertical-align: middle;\n}\n\n// Responsive images (ensure images don't scale beyond their parents)\n.img-responsive {\n .img-responsive();\n}\n\n// Rounded corners\n.img-rounded {\n border-radius: @border-radius-large;\n}\n\n// Image thumbnails\n//\n// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.\n.img-thumbnail {\n padding: @thumbnail-padding;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(all .2s ease-in-out);\n\n // Keep them at most 100% wide\n .img-responsive(inline-block);\n}\n\n// Perfect circle\n.img-circle {\n border-radius: 50%; // set radius in percents\n}\n\n\n// Horizontal rules\n\nhr {\n margin-top: @line-height-computed;\n margin-bottom: @line-height-computed;\n border: 0;\n border-top: 1px solid @hr-border;\n}\n\n\n// Only display content to screen readers\n//\n// See: http://a11yproject.com/posts/how-to-hide-content\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0,0,0,0);\n border: 0;\n}\n\n// Use in conjunction with .sr-only to only display content when it's focused.\n// Useful for \"Skip to main content\" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1\n// Credit: HTML5 Boilerplate\n\n.sr-only-focusable {\n &:active,\n &:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n }\n}\n\n\n// iOS \"clickable elements\" fix for role=\"button\"\n//\n// Fixes \"clickability\" issue (and more generally, the firing of events such as focus as well)\n// for traditionally non-focusable elements with role=\"button\"\n// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n\n[role=\"button\"] {\n cursor: pointer;\n}\n", - "// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n", - "// WebKit-style focus\n\n.tab-focus() {\n // WebKit-specific. Other browsers will keep their default outline style.\n // (Initially tried to also force default via `outline: initial`,\n // but that seems to erroneously remove the outline in Firefox altogether.)\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n", - "// Image Mixins\n// - Responsive image\n// - Retina image\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n.img-responsive(@display: block) {\n display: @display;\n max-width: 100%; // Part 1: Set a maximum relative to the parent\n height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size. Note that the\n// spelling of `min--moz-device-pixel-ratio` is intentional.\n.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {\n background-image: url(\"@{file-1x}\");\n\n @media\n only screen and (-webkit-min-device-pixel-ratio: 2),\n only screen and ( min--moz-device-pixel-ratio: 2),\n only screen and ( -o-min-device-pixel-ratio: 2/1),\n only screen and ( min-device-pixel-ratio: 2),\n only screen and ( min-resolution: 192dpi),\n only screen and ( min-resolution: 2dppx) {\n background-image: url(\"@{file-2x}\");\n background-size: @width-1x @height-1x;\n }\n}\n", - "//\n// Typography\n// --------------------------------------------------\n\n\n// Headings\n// -------------------------\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n font-family: @headings-font-family;\n font-weight: @headings-font-weight;\n line-height: @headings-line-height;\n color: @headings-color;\n\n small,\n .small {\n font-weight: normal;\n line-height: 1;\n color: @headings-small-color;\n }\n}\n\nh1, .h1,\nh2, .h2,\nh3, .h3 {\n margin-top: @line-height-computed;\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 65%;\n }\n}\nh4, .h4,\nh5, .h5,\nh6, .h6 {\n margin-top: (@line-height-computed / 2);\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 75%;\n }\n}\n\nh1, .h1 { font-size: @font-size-h1; }\nh2, .h2 { font-size: @font-size-h2; }\nh3, .h3 { font-size: @font-size-h3; }\nh4, .h4 { font-size: @font-size-h4; }\nh5, .h5 { font-size: @font-size-h5; }\nh6, .h6 { font-size: @font-size-h6; }\n\n\n// Body text\n// -------------------------\n\np {\n margin: 0 0 (@line-height-computed / 2);\n}\n\n.lead {\n margin-bottom: @line-height-computed;\n font-size: floor((@font-size-base * 1.15));\n font-weight: 300;\n line-height: 1.4;\n\n @media (min-width: @screen-sm-min) {\n font-size: (@font-size-base * 1.5);\n }\n}\n\n\n// Emphasis & misc\n// -------------------------\n\n// Ex: (12px small font / 14px base font) * 100% = about 85%\nsmall,\n.small {\n font-size: floor((100% * @font-size-small / @font-size-base));\n}\n\nmark,\n.mark {\n background-color: @state-warning-bg;\n padding: .2em;\n}\n\n// Alignment\n.text-left { text-align: left; }\n.text-right { text-align: right; }\n.text-center { text-align: center; }\n.text-justify { text-align: justify; }\n.text-nowrap { white-space: nowrap; }\n\n// Transformation\n.text-lowercase { text-transform: lowercase; }\n.text-uppercase { text-transform: uppercase; }\n.text-capitalize { text-transform: capitalize; }\n\n// Contextual colors\n.text-muted {\n color: @text-muted;\n}\n.text-primary {\n .text-emphasis-variant(@brand-primary);\n}\n.text-success {\n .text-emphasis-variant(@state-success-text);\n}\n.text-info {\n .text-emphasis-variant(@state-info-text);\n}\n.text-warning {\n .text-emphasis-variant(@state-warning-text);\n}\n.text-danger {\n .text-emphasis-variant(@state-danger-text);\n}\n\n// Contextual backgrounds\n// For now we'll leave these alongside the text classes until v4 when we can\n// safely shift things around (per SemVer rules).\n.bg-primary {\n // Given the contrast here, this is the only class to have its color inverted\n // automatically.\n color: #fff;\n .bg-variant(@brand-primary);\n}\n.bg-success {\n .bg-variant(@state-success-bg);\n}\n.bg-info {\n .bg-variant(@state-info-bg);\n}\n.bg-warning {\n .bg-variant(@state-warning-bg);\n}\n.bg-danger {\n .bg-variant(@state-danger-bg);\n}\n\n\n// Page header\n// -------------------------\n\n.page-header {\n padding-bottom: ((@line-height-computed / 2) - 1);\n margin: (@line-height-computed * 2) 0 @line-height-computed;\n border-bottom: 1px solid @page-header-border-color;\n}\n\n\n// Lists\n// -------------------------\n\n// Unordered and Ordered lists\nul,\nol {\n margin-top: 0;\n margin-bottom: (@line-height-computed / 2);\n ul,\n ol {\n margin-bottom: 0;\n }\n}\n\n// List options\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n .list-unstyled();\n margin-left: -5px;\n\n > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n }\n}\n\n// Description Lists\ndl {\n margin-top: 0; // Remove browser default\n margin-bottom: @line-height-computed;\n}\ndt,\ndd {\n line-height: @line-height-base;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0; // Undo browser default\n}\n\n// Horizontal description lists\n//\n// Defaults to being stacked without any of the below styles applied, until the\n// grid breakpoint is reached (default of ~768px).\n\n.dl-horizontal {\n dd {\n &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present\n }\n\n @media (min-width: @dl-horizontal-breakpoint) {\n dt {\n float: left;\n width: (@dl-horizontal-offset - 20);\n clear: left;\n text-align: right;\n .text-overflow();\n }\n dd {\n margin-left: @dl-horizontal-offset;\n }\n }\n}\n\n\n// Misc\n// -------------------------\n\n// Abbreviations and acronyms\nabbr[title],\n// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted @abbr-border-color;\n}\n.initialism {\n font-size: 90%;\n .text-uppercase();\n}\n\n// Blockquotes\nblockquote {\n padding: (@line-height-computed / 2) @line-height-computed;\n margin: 0 0 @line-height-computed;\n font-size: @blockquote-font-size;\n border-left: 5px solid @blockquote-border-color;\n\n p,\n ul,\n ol {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n // Note: Deprecated small and .small as of v3.1.0\n // Context: https://github.com/twbs/bootstrap/issues/11660\n footer,\n small,\n .small {\n display: block;\n font-size: 80%; // back to default font-size\n line-height: @line-height-base;\n color: @blockquote-small-color;\n\n &:before {\n content: '\\2014 \\00A0'; // em dash, nbsp\n }\n }\n}\n\n// Opposite alignment of blockquote\n//\n// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid @blockquote-border-color;\n border-left: 0;\n text-align: right;\n\n // Account for citation\n footer,\n small,\n .small {\n &:before { content: ''; }\n &:after {\n content: '\\00A0 \\2014'; // nbsp, em dash\n }\n }\n}\n\n// Addresses\naddress {\n margin-bottom: @line-height-computed;\n font-style: normal;\n line-height: @line-height-base;\n}\n", - "// Typography\n\n.text-emphasis-variant(@color) {\n color: @color;\n a&:hover,\n a&:focus {\n color: darken(@color, 10%);\n }\n}\n", - "// Contextual backgrounds\n\n.bg-variant(@color) {\n background-color: @color;\n a&:hover,\n a&:focus {\n background-color: darken(@color, 10%);\n }\n}\n", - "// Text overflow\n// Requires inline-block or block for proper styling\n\n.text-overflow() {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n", - "//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);\n\n kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n }\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n word-break: break-all;\n word-wrap: break-word;\n color: @pre-color;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n", - "//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n", - "// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n// Centered container element\n.container-fixed(@gutter: @grid-gutter-width) {\n margin-right: auto;\n margin-left: auto;\n padding-left: floor((@gutter / 2));\n padding-right: ceil((@gutter / 2));\n &:extend(.clearfix all);\n}\n\n// Creates a wrapper for a series of columns\n.make-row(@gutter: @grid-gutter-width) {\n margin-left: ceil((@gutter / -2));\n margin-right: floor((@gutter / -2));\n &:extend(.clearfix all);\n}\n\n// Generate the extra small columns\n.make-xs-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n float: left;\n width: percentage((@columns / @grid-columns));\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n}\n.make-xs-column-offset(@columns) {\n margin-left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-push(@columns) {\n left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-pull(@columns) {\n right: percentage((@columns / @grid-columns));\n}\n\n// Generate the small columns\n.make-sm-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-sm-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-offset(@columns) {\n @media (min-width: @screen-sm-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-push(@columns) {\n @media (min-width: @screen-sm-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-pull(@columns) {\n @media (min-width: @screen-sm-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the medium columns\n.make-md-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-md-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-offset(@columns) {\n @media (min-width: @screen-md-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-push(@columns) {\n @media (min-width: @screen-md-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-pull(@columns) {\n @media (min-width: @screen-md-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the large columns\n.make-lg-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-lg-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-offset(@columns) {\n @media (min-width: @screen-lg-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-push(@columns) {\n @media (min-width: @screen-lg-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-pull(@columns) {\n @media (min-width: @screen-lg-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n", - "// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `@grid-columns`.\n\n.make-grid-columns() {\n // Common styles for all sizes of grid columns, widths 1-12\n .col(@index) { // initial\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general; \"=<\" isn't a typo\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n position: relative;\n // Prevent columns from collapsing when empty\n min-height: 1px;\n // Inner gutter via padding\n padding-left: ceil((@grid-gutter-width / 2));\n padding-right: floor((@grid-gutter-width / 2));\n }\n }\n .col(1); // kickstart it\n}\n\n.float-grid-columns(@class) {\n .col(@index) { // initial\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n float: left;\n }\n }\n .col(1); // kickstart it\n}\n\n.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {\n .col-@{class}-@{index} {\n width: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) {\n .col-@{class}-push-@{index} {\n left: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) {\n .col-@{class}-push-0 {\n left: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) {\n .col-@{class}-pull-@{index} {\n right: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) {\n .col-@{class}-pull-0 {\n right: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = offset) {\n .col-@{class}-offset-@{index} {\n margin-left: percentage((@index / @grid-columns));\n }\n}\n\n// Basic looping in LESS\n.loop-grid-columns(@index, @class, @type) when (@index >= 0) {\n .calc-grid-column(@index, @class, @type);\n // next iteration\n .loop-grid-columns((@index - 1), @class, @type);\n}\n\n// Create grid for specific class\n.make-grid(@class) {\n .float-grid-columns(@class);\n .loop-grid-columns(@grid-columns, @class, width);\n .loop-grid-columns(@grid-columns, @class, pull);\n .loop-grid-columns(@grid-columns, @class, push);\n .loop-grid-columns(@grid-columns, @class, offset);\n}\n", - "//\n// Tables\n// --------------------------------------------------\n\n\ntable {\n background-color: @table-bg;\n}\ncaption {\n padding-top: @table-cell-padding;\n padding-bottom: @table-cell-padding;\n color: @text-muted;\n text-align: left;\n}\nth {\n text-align: left;\n}\n\n\n// Baseline styles\n\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: @line-height-computed;\n // Cells\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-cell-padding;\n line-height: @line-height-base;\n vertical-align: top;\n border-top: 1px solid @table-border-color;\n }\n }\n }\n // Bottom align for column headings\n > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid @table-border-color;\n }\n // Remove top border from thead by default\n > caption + thead,\n > colgroup + thead,\n > thead:first-child {\n > tr:first-child {\n > th,\n > td {\n border-top: 0;\n }\n }\n }\n // Account for multiple tbody instances\n > tbody + tbody {\n border-top: 2px solid @table-border-color;\n }\n\n // Nesting\n .table {\n background-color: @body-bg;\n }\n}\n\n\n// Condensed table w/ half padding\n\n.table-condensed {\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-condensed-cell-padding;\n }\n }\n }\n}\n\n\n// Bordered version\n//\n// Add borders all around the table and between all the columns.\n\n.table-bordered {\n border: 1px solid @table-border-color;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n border: 1px solid @table-border-color;\n }\n }\n }\n > thead > tr {\n > th,\n > td {\n border-bottom-width: 2px;\n }\n }\n}\n\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n > tbody > tr:nth-of-type(odd) {\n background-color: @table-bg-accent;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n > tbody > tr:hover {\n background-color: @table-bg-hover;\n }\n}\n\n\n// Table cell sizing\n//\n// Reset default table behavior\n\ntable col[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-column;\n}\ntable {\n td,\n th {\n &[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-cell;\n }\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n// Generate the contextual variants\n.table-row-variant(active; @table-bg-active);\n.table-row-variant(success; @state-success-bg);\n.table-row-variant(info; @state-info-bg);\n.table-row-variant(warning; @state-warning-bg);\n.table-row-variant(danger; @state-danger-bg);\n\n\n// Responsive tables\n//\n// Wrap your tables in `.table-responsive` and we'll make them mobile friendly\n// by enabling horizontal scrolling. Only applies <768px. Everything above that\n// will display normally.\n\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)\n\n @media screen and (max-width: @screen-xs-max) {\n width: 100%;\n margin-bottom: (@line-height-computed * 0.75);\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid @table-border-color;\n\n // Tighten up spacing\n > .table {\n margin-bottom: 0;\n\n // Ensure the content doesn't wrap\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n white-space: nowrap;\n }\n }\n }\n }\n\n // Special overrides for the bordered tables\n > .table-bordered {\n border: 0;\n\n // Nuke the appropriate borders so that the parent can handle them\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n\n // Only nuke the last row's bottom-border in `tbody` and `tfoot` since\n // chances are there will be only one `tr` in a `thead` and that would\n // remove the border altogether.\n > tbody,\n > tfoot {\n > tr:last-child {\n > th,\n > td {\n border-bottom: 0;\n }\n }\n }\n\n }\n }\n}\n", - "// Tables\n\n.table-row-variant(@state; @background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table > thead > tr,\n .table > tbody > tr,\n .table > tfoot > tr {\n > td.@{state},\n > th.@{state},\n &.@{state} > td,\n &.@{state} > th {\n background-color: @background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover > tbody > tr {\n > td.@{state}:hover,\n > th.@{state}:hover,\n &.@{state}:hover > td,\n &:hover > .@{state},\n &.@{state}:hover > th {\n background-color: darken(@background, 5%);\n }\n }\n}\n", - "//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n // Chrome and Firefox set a `min-width: min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)\n margin-bottom: 5px;\n font-weight: bold;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\n// Override content-box in Normalize (* isn't specific enough)\ninput[type=\"search\"] {\n .box-sizing(border-box);\n}\n\n// Position radios and checkboxes better\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n}\n\ninput[type=\"file\"] {\n display: block;\n}\n\n// Make range inputs behave like textual form controls\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\n\n// Make multiple select elements height not fixed\nselect[multiple],\nselect[size] {\n height: auto;\n}\n\n// Focus for file, radio, and checkbox\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n .tab-focus();\n}\n\n// Adjust output element\noutput {\n display: block;\n padding-top: (@padding-base-vertical + 1);\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n}\n\n\n// Common form controls\n//\n// Shared size and type resets for form controls. Apply `.form-control` to any\n// of the following form controls:\n//\n// select\n// textarea\n// input[type=\"text\"]\n// input[type=\"password\"]\n// input[type=\"datetime\"]\n// input[type=\"datetime-local\"]\n// input[type=\"date\"]\n// input[type=\"month\"]\n// input[type=\"time\"]\n// input[type=\"week\"]\n// input[type=\"number\"]\n// input[type=\"email\"]\n// input[type=\"url\"]\n// input[type=\"search\"]\n// input[type=\"tel\"]\n// input[type=\"color\"]\n\n.form-control {\n display: block;\n width: 100%;\n height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n background-color: @input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid @input-border;\n border-radius: @input-border-radius; // Note: This has no effect on s in CSS.\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));\n .transition(~\"border-color ease-in-out .15s, box-shadow ease-in-out .15s\");\n\n // Customize the `:focus` state to imitate native WebKit styles.\n .form-control-focus();\n\n // Placeholder\n .placeholder();\n\n // Unstyle the caret on ``\n// element gets special love because it's special, and that's a fact!\n.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n height: @input-height;\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n\n select& {\n height: @input-height;\n line-height: @input-height;\n }\n\n textarea&,\n select[multiple]& {\n height: auto;\n }\n}\n", - "//\n// Buttons\n// --------------------------------------------------\n\n\n// Base styles\n// --------------------------------------------------\n\n.btn {\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: @btn-font-weight;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n white-space: nowrap;\n .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @btn-border-radius-base);\n .user-select(none);\n\n &,\n &:active,\n &.active {\n &:focus,\n &.focus {\n .tab-focus();\n }\n }\n\n &:hover,\n &:focus,\n &.focus {\n color: @btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n outline: 0;\n background-image: none;\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n .opacity(.65);\n .box-shadow(none);\n }\n\n a& {\n &.disabled,\n fieldset[disabled] & {\n pointer-events: none; // Future-proof disabling of clicks on `` elements\n }\n }\n}\n\n\n// Alternate buttons\n// --------------------------------------------------\n\n.btn-default {\n .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border);\n}\n.btn-primary {\n .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);\n}\n// Success appears as green\n.btn-success {\n .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);\n}\n// Info appears as blue-green\n.btn-info {\n .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);\n}\n// Warning appears as orange\n.btn-warning {\n .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border);\n}\n// Danger and error appear as red\n.btn-danger {\n .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border);\n}\n\n\n// Link buttons\n// -------------------------\n\n// Make a button look and behave like a link\n.btn-link {\n color: @link-color;\n font-weight: normal;\n border-radius: 0;\n\n &,\n &:active,\n &.active,\n &[disabled],\n fieldset[disabled] & {\n background-color: transparent;\n .box-shadow(none);\n }\n &,\n &:hover,\n &:focus,\n &:active {\n border-color: transparent;\n }\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n background-color: transparent;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @btn-link-disabled-color;\n text-decoration: none;\n }\n }\n}\n\n\n// Button Sizes\n// --------------------------------------------------\n\n.btn-lg {\n // line-height: ensure even-numbered height of button next to large input\n .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @btn-border-radius-large);\n}\n.btn-sm {\n // line-height: ensure proper height of button next to small input\n .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);\n}\n.btn-xs {\n .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);\n}\n\n\n// Block button\n// --------------------------------------------------\n\n.btn-block {\n display: block;\n width: 100%;\n}\n\n// Vertically space out multiple block buttons\n.btn-block + .btn-block {\n margin-top: 5px;\n}\n\n// Specificity overrides\ninput[type=\"submit\"],\ninput[type=\"reset\"],\ninput[type=\"button\"] {\n &.btn-block {\n width: 100%;\n }\n}\n", - "// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n\n.button-variant(@color; @background; @border) {\n color: @color;\n background-color: @background;\n border-color: @border;\n\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 25%);\n }\n &:hover {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n }\n &:active,\n &.active,\n .open > .dropdown-toggle& {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n\n &:hover,\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 17%);\n border-color: darken(@border, 25%);\n }\n }\n &:active,\n &.active,\n .open > .dropdown-toggle& {\n background-image: none;\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus,\n &.focus {\n background-color: @background;\n border-color: @border;\n }\n }\n\n .badge {\n color: @background;\n background-color: @color;\n }\n}\n\n// Button sizes\n.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n}\n", - "// Opacity\n\n.opacity(@opacity) {\n opacity: @opacity;\n // IE8 filter\n @opacity-ie: (@opacity * 100);\n filter: ~\"alpha(opacity=@{opacity-ie})\";\n}\n", - "//\n// Component animations\n// --------------------------------------------------\n\n// Heads up!\n//\n// We don't use the `.opacity()` mixin here since it causes a bug with text\n// fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552.\n\n.fade {\n opacity: 0;\n .transition(opacity .15s linear);\n &.in {\n opacity: 1;\n }\n}\n\n.collapse {\n display: none;\n\n &.in { display: block; }\n tr&.in { display: table-row; }\n tbody&.in { display: table-row-group; }\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n .transition-property(~\"height, visibility\");\n .transition-duration(.35s);\n .transition-timing-function(ease);\n}\n", - "//\n// Dropdown menus\n// --------------------------------------------------\n\n\n// Dropdown arrow/caret\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: @caret-width-base dashed;\n border-top: @caret-width-base solid ~\"\\9\"; // IE8\n border-right: @caret-width-base solid transparent;\n border-left: @caret-width-base solid transparent;\n}\n\n// The dropdown wrapper (div)\n.dropup,\n.dropdown {\n position: relative;\n}\n\n// Prevent the focus on the dropdown toggle when closing dropdowns\n.dropdown-toggle:focus {\n outline: 0;\n}\n\n// The dropdown menu (ul)\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: @zindex-dropdown;\n display: none; // none by default, but block on \"open\" of the menu\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0; // override default ul\n list-style: none;\n font-size: @font-size-base;\n text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)\n background-color: @dropdown-bg;\n border: 1px solid @dropdown-fallback-border; // IE8 fallback\n border: 1px solid @dropdown-border;\n border-radius: @border-radius-base;\n .box-shadow(0 6px 12px rgba(0,0,0,.175));\n background-clip: padding-box;\n\n // Aligns the dropdown menu to right\n //\n // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]`\n &.pull-right {\n right: 0;\n left: auto;\n }\n\n // Dividers (basically an hr) within the dropdown\n .divider {\n .nav-divider(@dropdown-divider-bg);\n }\n\n // Links within the dropdown menu\n > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: @line-height-base;\n color: @dropdown-link-color;\n white-space: nowrap; // prevent links from randomly breaking onto new lines\n }\n}\n\n// Hover/Focus state\n.dropdown-menu > li > a {\n &:hover,\n &:focus {\n text-decoration: none;\n color: @dropdown-link-hover-color;\n background-color: @dropdown-link-hover-bg;\n }\n}\n\n// Active state\n.dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-active-color;\n text-decoration: none;\n outline: 0;\n background-color: @dropdown-link-active-bg;\n }\n}\n\n// Disabled state\n//\n// Gray out text and ensure the hover/focus state remains gray\n\n.dropdown-menu > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-disabled-color;\n }\n\n // Nuke hover/focus effects\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none; // Remove CSS gradient\n .reset-filter();\n cursor: @cursor-disabled;\n }\n}\n\n// Open state for the dropdown\n.open {\n // Show the menu\n > .dropdown-menu {\n display: block;\n }\n\n // Remove the outline when :focus is triggered\n > a {\n outline: 0;\n }\n}\n\n// Menu positioning\n//\n// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown\n// menu with the parent.\n.dropdown-menu-right {\n left: auto; // Reset the default from `.dropdown-menu`\n right: 0;\n}\n// With v3, we enabled auto-flipping if you have a dropdown within a right\n// aligned nav component. To enable the undoing of that, we provide an override\n// to restore the default dropdown menu alignment.\n//\n// This is only for left-aligning a dropdown menu within a `.navbar-right` or\n// `.pull-right` nav component.\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n\n// Dropdown section headers\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: @font-size-small;\n line-height: @line-height-base;\n color: @dropdown-header-color;\n white-space: nowrap; // as with > li > a\n}\n\n// Backdrop to catch body clicks on mobile, etc.\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: (@zindex-dropdown - 10);\n}\n\n// Right aligned dropdowns\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n\n// Allow for dropdowns to go bottom up (aka, dropup-menu)\n//\n// Just add .dropup after the standard .dropdown class and you're set, bro.\n// TODO: abstract this so that the navbar fixed styles are not placed here?\n\n.dropup,\n.navbar-fixed-bottom .dropdown {\n // Reverse the caret\n .caret {\n border-top: 0;\n border-bottom: @caret-width-base dashed;\n border-bottom: @caret-width-base solid ~\"\\9\"; // IE8\n content: \"\";\n }\n // Different positioning for bottom up menu\n .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n }\n}\n\n\n// Component alignment\n//\n// Reiterate per navbar.less and the modified component alignment there.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-right {\n .dropdown-menu {\n .dropdown-menu-right();\n }\n // Necessary for overrides of the default right aligned menu.\n // Will remove come v4 in all likelihood.\n .dropdown-menu-left {\n .dropdown-menu-left();\n }\n }\n}\n", - "// Horizontal dividers\n//\n// Dividers (basically an hr) within dropdowns and nav lists\n\n.nav-divider(@color: #e5e5e5) {\n height: 1px;\n margin: ((@line-height-computed / 2) - 1) 0;\n overflow: hidden;\n background-color: @color;\n}\n", - "// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n", - "//\n// Button groups\n// --------------------------------------------------\n\n// Make the div behave like a button\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle; // match .btn alignment given font-size hack above\n > .btn {\n position: relative;\n float: left;\n // Bring the \"active\" button to the front\n &:hover,\n &:focus,\n &:active,\n &.active {\n z-index: 2;\n }\n }\n}\n\n// Prevent double borders when buttons are next to each other\n.btn-group {\n .btn + .btn,\n .btn + .btn-group,\n .btn-group + .btn,\n .btn-group + .btn-group {\n margin-left: -1px;\n }\n}\n\n// Optional: Group multiple button groups together for a toolbar\n.btn-toolbar {\n margin-left: -5px; // Offset the first child's margin\n &:extend(.clearfix all);\n\n .btn,\n .btn-group,\n .input-group {\n float: left;\n }\n > .btn,\n > .btn-group,\n > .input-group {\n margin-left: 5px;\n }\n}\n\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n\n// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match\n.btn-group > .btn:first-child {\n margin-left: 0;\n &:not(:last-child):not(.dropdown-toggle) {\n .border-right-radius(0);\n }\n}\n// Need .dropdown-toggle since :last-child doesn't apply, given that a .dropdown-menu is used immediately after it\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n .border-left-radius(0);\n}\n\n// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-right-radius(0);\n }\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-left-radius(0);\n}\n\n// On active and open, don't show outline\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n\n\n// Sizing\n//\n// Remix the default button sizing classes into new ones for easier manipulation.\n\n.btn-group-xs > .btn { &:extend(.btn-xs); }\n.btn-group-sm > .btn { &:extend(.btn-sm); }\n.btn-group-lg > .btn { &:extend(.btn-lg); }\n\n\n// Split button dropdowns\n// ----------------------\n\n// Give the line between buttons some depth\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n\n// The clickable button for toggling the menu\n// Remove the gradient and set the same inset shadow as the :active state\n.btn-group.open .dropdown-toggle {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n\n // Show no shadow for `.btn-link` since it has no other button styles.\n &.btn-link {\n .box-shadow(none);\n }\n}\n\n\n// Reposition the caret\n.btn .caret {\n margin-left: 0;\n}\n// Carets in other button sizes\n.btn-lg .caret {\n border-width: @caret-width-large @caret-width-large 0;\n border-bottom-width: 0;\n}\n// Upside down carets for .dropup\n.dropup .btn-lg .caret {\n border-width: 0 @caret-width-large @caret-width-large;\n}\n\n\n// Vertical button groups\n// ----------------------\n\n.btn-group-vertical {\n > .btn,\n > .btn-group,\n > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n }\n\n // Clear floats so dropdown menus can be properly placed\n > .btn-group {\n &:extend(.clearfix all);\n > .btn {\n float: none;\n }\n }\n\n > .btn + .btn,\n > .btn + .btn-group,\n > .btn-group + .btn,\n > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n }\n}\n\n.btn-group-vertical > .btn {\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n &:first-child:not(:last-child) {\n .border-top-radius(@btn-border-radius-base);\n .border-bottom-radius(0);\n }\n &:last-child:not(:first-child) {\n .border-top-radius(0);\n .border-bottom-radius(@btn-border-radius-base);\n }\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-bottom-radius(0);\n }\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-top-radius(0);\n}\n\n\n// Justified button groups\n// ----------------------\n\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n > .btn,\n > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n }\n > .btn-group .btn {\n width: 100%;\n }\n\n > .btn-group .dropdown-menu {\n left: auto;\n }\n}\n\n\n// Checkbox and radio options\n//\n// In order to support the browser's form validation feedback, powered by the\n// `required` attribute, we have to \"hide\" the inputs via `clip`. We cannot use\n// `display: none;` or `visibility: hidden;` as that also hides the popover.\n// Simply visually hiding the inputs via `opacity` would leave them clickable in\n// certain cases which is prevented by using `clip` and `pointer-events`.\n// This way, we ensure a DOM element is visible to position the popover from.\n//\n// See https://github.com/twbs/bootstrap/pull/12794 and\n// https://github.com/twbs/bootstrap/pull/14559 for more information.\n\n[data-toggle=\"buttons\"] {\n > .btn,\n > .btn-group > .btn {\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0,0,0,0);\n pointer-events: none;\n }\n }\n}\n", - "// Single side border-radius\n\n.border-top-radius(@radius) {\n border-top-right-radius: @radius;\n border-top-left-radius: @radius;\n}\n.border-right-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-top-right-radius: @radius;\n}\n.border-bottom-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-bottom-left-radius: @radius;\n}\n.border-left-radius(@radius) {\n border-bottom-left-radius: @radius;\n border-top-left-radius: @radius;\n}\n", - "//\n// Input groups\n// --------------------------------------------------\n\n// Base styles\n// -------------------------\n.input-group {\n position: relative; // For dropdowns\n display: table;\n border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table\n\n // Undo padding and float of grid classes\n &[class*=\"col-\"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n }\n\n .form-control {\n // Ensure that the input is always above the *appended* addon button for\n // proper border colors.\n position: relative;\n z-index: 2;\n\n // IE9 fubars the placeholder attribute in text inputs and the arrows on\n // select elements in input groups. To fix it, we float the input. Details:\n // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855\n float: left;\n\n width: 100%;\n margin-bottom: 0;\n\n &:focus {\n z-index: 3;\n }\n }\n}\n\n// Sizing options\n//\n// Remix the default form control sizing classes into new ones for easier\n// manipulation.\n\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n .input-lg();\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n .input-sm();\n}\n\n\n// Display as table-cell\n// -------------------------\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n}\n// Addon and addon wrapper for buttons\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle; // Match the inputs\n}\n\n// Text input groups\n// -------------------------\n.input-group-addon {\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n font-weight: normal;\n line-height: 1;\n color: @input-color;\n text-align: center;\n background-color: @input-group-addon-bg;\n border: 1px solid @input-group-addon-border-color;\n border-radius: @input-border-radius;\n\n // Sizing\n &.input-sm {\n padding: @padding-small-vertical @padding-small-horizontal;\n font-size: @font-size-small;\n border-radius: @input-border-radius-small;\n }\n &.input-lg {\n padding: @padding-large-vertical @padding-large-horizontal;\n font-size: @font-size-large;\n border-radius: @input-border-radius-large;\n }\n\n // Nuke default margins from checkboxes and radios to vertically center within.\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n margin-top: 0;\n }\n}\n\n// Reset rounded corners\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n .border-right-radius(0);\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n .border-left-radius(0);\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n\n// Button input groups\n// -------------------------\n.input-group-btn {\n position: relative;\n // Jankily prevent input button groups from wrapping with `white-space` and\n // `font-size` in combination with `inline-block` on buttons.\n font-size: 0;\n white-space: nowrap;\n\n // Negative margin for spacing, position for bringing hovered/focused/actived\n // element above the siblings.\n > .btn {\n position: relative;\n + .btn {\n margin-left: -1px;\n }\n // Bring the \"active\" button to the front\n &:hover,\n &:focus,\n &:active {\n z-index: 2;\n }\n }\n\n // Negative margin to only have a 1px border between the two\n &:first-child {\n > .btn,\n > .btn-group {\n margin-right: -1px;\n }\n }\n &:last-child {\n > .btn,\n > .btn-group {\n z-index: 2;\n margin-left: -1px;\n }\n }\n}\n", - "//\n// Navs\n// --------------------------------------------------\n\n\n// Base class\n// --------------------------------------------------\n\n.nav {\n margin-bottom: 0;\n padding-left: 0; // Override default ul/ol\n list-style: none;\n &:extend(.clearfix all);\n\n > li {\n position: relative;\n display: block;\n\n > a {\n position: relative;\n display: block;\n padding: @nav-link-padding;\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: @nav-link-hover-bg;\n }\n }\n\n // Disabled state sets text to gray and nukes hover/tab effects\n &.disabled > a {\n color: @nav-disabled-link-color;\n\n &:hover,\n &:focus {\n color: @nav-disabled-link-hover-color;\n text-decoration: none;\n background-color: transparent;\n cursor: @cursor-disabled;\n }\n }\n }\n\n // Open dropdowns\n .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @nav-link-hover-bg;\n border-color: @link-color;\n }\n }\n\n // Nav dividers (deprecated with v3.0.1)\n //\n // This should have been removed in v3 with the dropping of `.nav-list`, but\n // we missed it. We don't currently support this anywhere, but in the interest\n // of maintaining backward compatibility in case you use it, it's deprecated.\n .nav-divider {\n .nav-divider();\n }\n\n // Prevent IE8 from misplacing imgs\n //\n // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989\n > li > a > img {\n max-width: none;\n }\n}\n\n\n// Tabs\n// -------------------------\n\n// Give the tabs something to sit on\n.nav-tabs {\n border-bottom: 1px solid @nav-tabs-border-color;\n > li {\n float: left;\n // Make the list-items overlay the bottom border\n margin-bottom: -1px;\n\n // Actual tabs (as links)\n > a {\n margin-right: 2px;\n line-height: @line-height-base;\n border: 1px solid transparent;\n border-radius: @border-radius-base @border-radius-base 0 0;\n &:hover {\n border-color: @nav-tabs-link-hover-border-color @nav-tabs-link-hover-border-color @nav-tabs-border-color;\n }\n }\n\n // Active state, and its :hover to override normal :hover\n &.active > a {\n &,\n &:hover,\n &:focus {\n color: @nav-tabs-active-link-hover-color;\n background-color: @nav-tabs-active-link-hover-bg;\n border: 1px solid @nav-tabs-active-link-hover-border-color;\n border-bottom-color: transparent;\n cursor: default;\n }\n }\n }\n // pulling this in mainly for less shorthand\n &.nav-justified {\n .nav-justified();\n .nav-tabs-justified();\n }\n}\n\n\n// Pills\n// -------------------------\n.nav-pills {\n > li {\n float: left;\n\n // Links rendered as pills\n > a {\n border-radius: @nav-pills-border-radius;\n }\n + li {\n margin-left: 2px;\n }\n\n // Active state\n &.active > a {\n &,\n &:hover,\n &:focus {\n color: @nav-pills-active-link-hover-color;\n background-color: @nav-pills-active-link-hover-bg;\n }\n }\n }\n}\n\n\n// Stacked pills\n.nav-stacked {\n > li {\n float: none;\n + li {\n margin-top: 2px;\n margin-left: 0; // no need for this gap between nav items\n }\n }\n}\n\n\n// Nav variations\n// --------------------------------------------------\n\n// Justified nav links\n// -------------------------\n\n.nav-justified {\n width: 100%;\n\n > li {\n float: none;\n > a {\n text-align: center;\n margin-bottom: 5px;\n }\n }\n\n > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n }\n\n @media (min-width: @screen-sm-min) {\n > li {\n display: table-cell;\n width: 1%;\n > a {\n margin-bottom: 0;\n }\n }\n }\n}\n\n// Move borders to anchors instead of bottom of list\n//\n// Mixin for adding on top the shared `.nav-justified` styles for our tabs\n.nav-tabs-justified {\n border-bottom: 0;\n\n > li > a {\n // Override margin from .nav-tabs\n margin-right: 0;\n border-radius: @border-radius-base;\n }\n\n > .active > a,\n > .active > a:hover,\n > .active > a:focus {\n border: 1px solid @nav-tabs-justified-link-border-color;\n }\n\n @media (min-width: @screen-sm-min) {\n > li > a {\n border-bottom: 1px solid @nav-tabs-justified-link-border-color;\n border-radius: @border-radius-base @border-radius-base 0 0;\n }\n > .active > a,\n > .active > a:hover,\n > .active > a:focus {\n border-bottom-color: @nav-tabs-justified-active-link-border-color;\n }\n }\n}\n\n\n// Tabbable tabs\n// -------------------------\n\n// Hide tabbable panes to start, show them when `.active`\n.tab-content {\n > .tab-pane {\n display: none;\n }\n > .active {\n display: block;\n }\n}\n\n\n// Dropdowns\n// -------------------------\n\n// Specific dropdowns\n.nav-tabs .dropdown-menu {\n // make dropdown border overlap tab border\n margin-top: -1px;\n // Remove the top rounded corners here since there is a hard edge above the menu\n .border-top-radius(0);\n}\n", - "//\n// Navbars\n// --------------------------------------------------\n\n\n// Wrapper and base class\n//\n// Provide a static navbar from which we expand to create full-width, fixed, and\n// other navbar variations.\n\n.navbar {\n position: relative;\n min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode)\n margin-bottom: @navbar-margin-bottom;\n border: 1px solid transparent;\n\n // Prevent floats from breaking the navbar\n &:extend(.clearfix all);\n\n @media (min-width: @grid-float-breakpoint) {\n border-radius: @navbar-border-radius;\n }\n}\n\n\n// Navbar heading\n//\n// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy\n// styling of responsive aspects.\n\n.navbar-header {\n &:extend(.clearfix all);\n\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n }\n}\n\n\n// Navbar collapse (body)\n//\n// Group your navbar content into this for easy collapsing and expanding across\n// various device sizes. By default, this content is collapsed when <768px, but\n// will expand past that for a horizontal display.\n//\n// To start (on mobile devices) the navbar links, forms, and buttons are stacked\n// vertically and include a `max-height` to overflow in case you have too much\n// content for the user's viewport.\n\n.navbar-collapse {\n overflow-x: visible;\n padding-right: @navbar-padding-horizontal;\n padding-left: @navbar-padding-horizontal;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255,255,255,.1);\n &:extend(.clearfix all);\n -webkit-overflow-scrolling: touch;\n\n &.in {\n overflow-y: auto;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n width: auto;\n border-top: 0;\n box-shadow: none;\n\n &.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0; // Override default setting\n overflow: visible !important;\n }\n\n &.in {\n overflow-y: visible;\n }\n\n // Undo the collapse side padding for navbars with containers to ensure\n // alignment of right-aligned contents.\n .navbar-fixed-top &,\n .navbar-static-top &,\n .navbar-fixed-bottom & {\n padding-left: 0;\n padding-right: 0;\n }\n }\n}\n\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n .navbar-collapse {\n max-height: @navbar-collapse-max-height;\n\n @media (max-device-width: @screen-xs-min) and (orientation: landscape) {\n max-height: 200px;\n }\n }\n}\n\n\n// Both navbar header and collapse\n//\n// When a container is present, change the behavior of the header and collapse.\n\n.container,\n.container-fluid {\n > .navbar-header,\n > .navbar-collapse {\n margin-right: -@navbar-padding-horizontal;\n margin-left: -@navbar-padding-horizontal;\n\n @media (min-width: @grid-float-breakpoint) {\n margin-right: 0;\n margin-left: 0;\n }\n }\n}\n\n\n//\n// Navbar alignment options\n//\n// Display the navbar across the entirety of the page or fixed it to the top or\n// bottom of the page.\n\n// Static top (unfixed, but 100% wide) navbar\n.navbar-static-top {\n z-index: @zindex-navbar;\n border-width: 0 0 1px;\n\n @media (min-width: @grid-float-breakpoint) {\n border-radius: 0;\n }\n}\n\n// Fix the top/bottom navbars when screen real estate supports it\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: @zindex-navbar-fixed;\n\n // Undo the rounded corners\n @media (min-width: @grid-float-breakpoint) {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0; // override .navbar defaults\n border-width: 1px 0 0;\n}\n\n\n// Brand/project name\n\n.navbar-brand {\n float: left;\n padding: @navbar-padding-vertical @navbar-padding-horizontal;\n font-size: @font-size-large;\n line-height: @line-height-computed;\n height: @navbar-height;\n\n &:hover,\n &:focus {\n text-decoration: none;\n }\n\n > img {\n display: block;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n .navbar > .container &,\n .navbar > .container-fluid & {\n margin-left: -@navbar-padding-horizontal;\n }\n }\n}\n\n\n// Navbar toggle\n//\n// Custom button for toggling the `.navbar-collapse`, powered by the collapse\n// JavaScript plugin.\n\n.navbar-toggle {\n position: relative;\n float: right;\n margin-right: @navbar-padding-horizontal;\n padding: 9px 10px;\n .navbar-vertical-align(34px);\n background-color: transparent;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n border-radius: @border-radius-base;\n\n // We remove the `outline` here, but later compensate by attaching `:hover`\n // styles to `:focus`.\n &:focus {\n outline: 0;\n }\n\n // Bars\n .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n }\n .icon-bar + .icon-bar {\n margin-top: 4px;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n display: none;\n }\n}\n\n\n// Navbar nav links\n//\n// Builds on top of the `.nav` components with its own modifier class to make\n// the nav the full height of the horizontal nav (above 768px).\n\n.navbar-nav {\n margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal;\n\n > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: @line-height-computed;\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display when collapsed\n .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n > li > a,\n .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n > li > a {\n line-height: @line-height-computed;\n &:hover,\n &:focus {\n background-image: none;\n }\n }\n }\n }\n\n // Uncollapse the nav\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n margin: 0;\n\n > li {\n float: left;\n > a {\n padding-top: @navbar-padding-vertical;\n padding-bottom: @navbar-padding-vertical;\n }\n }\n }\n}\n\n\n// Navbar form\n//\n// Extension of the `.form-inline` with some extra flavor for optimum display in\n// our navbars.\n\n.navbar-form {\n margin-left: -@navbar-padding-horizontal;\n margin-right: -@navbar-padding-horizontal;\n padding: 10px @navbar-padding-horizontal;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n @shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n\n // Mixin behavior for optimum display\n .form-inline();\n\n .form-group {\n @media (max-width: @grid-float-breakpoint-max) {\n margin-bottom: 5px;\n\n &:last-child {\n margin-bottom: 0;\n }\n }\n }\n\n // Vertically center in expanded, horizontal navbar\n .navbar-vertical-align(@input-height-base);\n\n // Undo 100% width for pull classes\n @media (min-width: @grid-float-breakpoint) {\n width: auto;\n border: 0;\n margin-left: 0;\n margin-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n .box-shadow(none);\n }\n}\n\n\n// Dropdown menus\n\n// Menu position and menu carets\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n .border-top-radius(0);\n}\n// Menu position and menu caret support for dropups via extra dropup class\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n .border-top-radius(@navbar-border-radius);\n .border-bottom-radius(0);\n}\n\n\n// Buttons in navbars\n//\n// Vertically center a button within a navbar (when *not* in a form).\n\n.navbar-btn {\n .navbar-vertical-align(@input-height-base);\n\n &.btn-sm {\n .navbar-vertical-align(@input-height-small);\n }\n &.btn-xs {\n .navbar-vertical-align(22);\n }\n}\n\n\n// Text in navbars\n//\n// Add a class to make any element properly align itself vertically within the navbars.\n\n.navbar-text {\n .navbar-vertical-align(@line-height-computed);\n\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n margin-left: @navbar-padding-horizontal;\n margin-right: @navbar-padding-horizontal;\n }\n}\n\n\n// Component alignment\n//\n// Repurpose the pull utilities as their own navbar utilities to avoid specificity\n// issues with parents and chaining. Only do this when the navbar is uncollapsed\n// though so that navbar contents properly stack and align in mobile.\n//\n// Declared after the navbar components to ensure more specificity on the margins.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-left { .pull-left(); }\n .navbar-right {\n .pull-right();\n margin-right: -@navbar-padding-horizontal;\n\n ~ .navbar-right {\n margin-right: 0;\n }\n }\n}\n\n\n// Alternate navbars\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n background-color: @navbar-default-bg;\n border-color: @navbar-default-border;\n\n .navbar-brand {\n color: @navbar-default-brand-color;\n &:hover,\n &:focus {\n color: @navbar-default-brand-hover-color;\n background-color: @navbar-default-brand-hover-bg;\n }\n }\n\n .navbar-text {\n color: @navbar-default-color;\n }\n\n .navbar-nav {\n > li > a {\n color: @navbar-default-link-color;\n\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n background-color: @navbar-default-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n background-color: @navbar-default-link-disabled-bg;\n }\n }\n }\n\n .navbar-toggle {\n border-color: @navbar-default-toggle-border-color;\n &:hover,\n &:focus {\n background-color: @navbar-default-toggle-hover-bg;\n }\n .icon-bar {\n background-color: @navbar-default-toggle-icon-bar-bg;\n }\n }\n\n .navbar-collapse,\n .navbar-form {\n border-color: @navbar-default-border;\n }\n\n // Dropdown menu items\n .navbar-nav {\n // Remove background color from open dropdown\n > .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @navbar-default-link-active-bg;\n color: @navbar-default-link-active-color;\n }\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display when collapsed\n .open .dropdown-menu {\n > li > a {\n color: @navbar-default-link-color;\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n background-color: @navbar-default-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n background-color: @navbar-default-link-disabled-bg;\n }\n }\n }\n }\n }\n\n\n // Links in navbars\n //\n // Add a class to ensure links outside the navbar nav are colored correctly.\n\n .navbar-link {\n color: @navbar-default-link-color;\n &:hover {\n color: @navbar-default-link-hover-color;\n }\n }\n\n .btn-link {\n color: @navbar-default-link-color;\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n }\n }\n }\n}\n\n// Inverse navbar\n\n.navbar-inverse {\n background-color: @navbar-inverse-bg;\n border-color: @navbar-inverse-border;\n\n .navbar-brand {\n color: @navbar-inverse-brand-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-brand-hover-color;\n background-color: @navbar-inverse-brand-hover-bg;\n }\n }\n\n .navbar-text {\n color: @navbar-inverse-color;\n }\n\n .navbar-nav {\n > li > a {\n color: @navbar-inverse-link-color;\n\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n background-color: @navbar-inverse-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n background-color: @navbar-inverse-link-disabled-bg;\n }\n }\n }\n\n // Darken the responsive nav toggle\n .navbar-toggle {\n border-color: @navbar-inverse-toggle-border-color;\n &:hover,\n &:focus {\n background-color: @navbar-inverse-toggle-hover-bg;\n }\n .icon-bar {\n background-color: @navbar-inverse-toggle-icon-bar-bg;\n }\n }\n\n .navbar-collapse,\n .navbar-form {\n border-color: darken(@navbar-inverse-bg, 7%);\n }\n\n // Dropdowns\n .navbar-nav {\n > .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @navbar-inverse-link-active-bg;\n color: @navbar-inverse-link-active-color;\n }\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display\n .open .dropdown-menu {\n > .dropdown-header {\n border-color: @navbar-inverse-border;\n }\n .divider {\n background-color: @navbar-inverse-border;\n }\n > li > a {\n color: @navbar-inverse-link-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n background-color: @navbar-inverse-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n background-color: @navbar-inverse-link-disabled-bg;\n }\n }\n }\n }\n }\n\n .navbar-link {\n color: @navbar-inverse-link-color;\n &:hover {\n color: @navbar-inverse-link-hover-color;\n }\n }\n\n .btn-link {\n color: @navbar-inverse-link-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n }\n }\n }\n}\n", - "// Navbar vertical align\n//\n// Vertically center elements in the navbar.\n// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.\n\n.navbar-vertical-align(@element-height) {\n margin-top: ((@navbar-height - @element-height) / 2);\n margin-bottom: ((@navbar-height - @element-height) / 2);\n}\n", - "//\n// Utility classes\n// --------------------------------------------------\n\n\n// Floats\n// -------------------------\n\n.clearfix {\n .clearfix();\n}\n.center-block {\n .center-block();\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n\n\n// Toggling content\n// -------------------------\n\n// Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n .text-hide();\n}\n\n\n// Hide from screenreaders and browsers\n//\n// Credit: HTML5 Boilerplate\n\n.hidden {\n display: none !important;\n}\n\n\n// For Affix plugin\n// -------------------------\n\n.affix {\n position: fixed;\n}\n", - "//\n// Breadcrumbs\n// --------------------------------------------------\n\n\n.breadcrumb {\n padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal;\n margin-bottom: @line-height-computed;\n list-style: none;\n background-color: @breadcrumb-bg;\n border-radius: @border-radius-base;\n\n > li {\n display: inline-block;\n\n + li:before {\n content: \"@{breadcrumb-separator}\\00a0\"; // Unicode space added since inline-block means non-collapsing white-space\n padding: 0 5px;\n color: @breadcrumb-color;\n }\n }\n\n > .active {\n color: @breadcrumb-active-color;\n }\n}\n", - "//\n// Pagination (multiple pages)\n// --------------------------------------------------\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: @line-height-computed 0;\n border-radius: @border-radius-base;\n\n > li {\n display: inline; // Remove list-style and block-level defaults\n > a,\n > span {\n position: relative;\n float: left; // Collapse white-space\n padding: @padding-base-vertical @padding-base-horizontal;\n line-height: @line-height-base;\n text-decoration: none;\n color: @pagination-color;\n background-color: @pagination-bg;\n border: 1px solid @pagination-border;\n margin-left: -1px;\n }\n &:first-child {\n > a,\n > span {\n margin-left: 0;\n .border-left-radius(@border-radius-base);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius-base);\n }\n }\n }\n\n > li > a,\n > li > span {\n &:hover,\n &:focus {\n z-index: 2;\n color: @pagination-hover-color;\n background-color: @pagination-hover-bg;\n border-color: @pagination-hover-border;\n }\n }\n\n > .active > a,\n > .active > span {\n &,\n &:hover,\n &:focus {\n z-index: 3;\n color: @pagination-active-color;\n background-color: @pagination-active-bg;\n border-color: @pagination-active-border;\n cursor: default;\n }\n }\n\n > .disabled {\n > span,\n > span:hover,\n > span:focus,\n > a,\n > a:hover,\n > a:focus {\n color: @pagination-disabled-color;\n background-color: @pagination-disabled-bg;\n border-color: @pagination-disabled-border;\n cursor: @cursor-disabled;\n }\n }\n}\n\n// Sizing\n// --------------------------------------------------\n\n// Large\n.pagination-lg {\n .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);\n}\n\n// Small\n.pagination-sm {\n .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);\n}\n", - "// Pagination\n\n.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n > li {\n > a,\n > span {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n }\n &:first-child {\n > a,\n > span {\n .border-left-radius(@border-radius);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius);\n }\n }\n }\n}\n", - "//\n// Pager pagination\n// --------------------------------------------------\n\n\n.pager {\n padding-left: 0;\n margin: @line-height-computed 0;\n list-style: none;\n text-align: center;\n &:extend(.clearfix all);\n li {\n display: inline;\n > a,\n > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: @pager-bg;\n border: 1px solid @pager-border;\n border-radius: @pager-border-radius;\n }\n\n > a:hover,\n > a:focus {\n text-decoration: none;\n background-color: @pager-hover-bg;\n }\n }\n\n .next {\n > a,\n > span {\n float: right;\n }\n }\n\n .previous {\n > a,\n > span {\n float: left;\n }\n }\n\n .disabled {\n > a,\n > a:hover,\n > a:focus,\n > span {\n color: @pager-disabled-color;\n background-color: @pager-bg;\n cursor: @cursor-disabled;\n }\n }\n}\n", - "//\n// Labels\n// --------------------------------------------------\n\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: @label-color;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n\n // Add hover effects, but only for links\n a& {\n &:hover,\n &:focus {\n color: @label-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Empty labels collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for labels in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n}\n\n// Colors\n// Contextual variations (linked labels get darker on :hover)\n\n.label-default {\n .label-variant(@label-default-bg);\n}\n\n.label-primary {\n .label-variant(@label-primary-bg);\n}\n\n.label-success {\n .label-variant(@label-success-bg);\n}\n\n.label-info {\n .label-variant(@label-info-bg);\n}\n\n.label-warning {\n .label-variant(@label-warning-bg);\n}\n\n.label-danger {\n .label-variant(@label-danger-bg);\n}\n", - "// Labels\n\n.label-variant(@color) {\n background-color: @color;\n\n &[href] {\n &:hover,\n &:focus {\n background-color: darken(@color, 10%);\n }\n }\n}\n", - "//\n// Badges\n// --------------------------------------------------\n\n\n// Base class\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: @font-size-small;\n font-weight: @badge-font-weight;\n color: @badge-color;\n line-height: @badge-line-height;\n vertical-align: middle;\n white-space: nowrap;\n text-align: center;\n background-color: @badge-bg;\n border-radius: @badge-border-radius;\n\n // Empty badges collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for badges in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n\n .btn-xs &,\n .btn-group-xs > .btn & {\n top: 0;\n padding: 1px 5px;\n }\n\n // Hover state, but only for links\n a& {\n &:hover,\n &:focus {\n color: @badge-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Account for badges in navs\n .list-group-item.active > &,\n .nav-pills > .active > a > & {\n color: @badge-active-color;\n background-color: @badge-active-bg;\n }\n\n .list-group-item > & {\n float: right;\n }\n\n .list-group-item > & + & {\n margin-right: 5px;\n }\n\n .nav-pills > li > a > & {\n margin-left: 3px;\n }\n}\n", - "//\n// Jumbotron\n// --------------------------------------------------\n\n\n.jumbotron {\n padding-top: @jumbotron-padding;\n padding-bottom: @jumbotron-padding;\n margin-bottom: @jumbotron-padding;\n color: @jumbotron-color;\n background-color: @jumbotron-bg;\n\n h1,\n .h1 {\n color: @jumbotron-heading-color;\n }\n\n p {\n margin-bottom: (@jumbotron-padding / 2);\n font-size: @jumbotron-font-size;\n font-weight: 200;\n }\n\n > hr {\n border-top-color: darken(@jumbotron-bg, 10%);\n }\n\n .container &,\n .container-fluid & {\n border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container\n padding-left: (@grid-gutter-width / 2);\n padding-right: (@grid-gutter-width / 2);\n }\n\n .container {\n max-width: 100%;\n }\n\n @media screen and (min-width: @screen-sm-min) {\n padding-top: (@jumbotron-padding * 1.6);\n padding-bottom: (@jumbotron-padding * 1.6);\n\n .container &,\n .container-fluid & {\n padding-left: (@jumbotron-padding * 2);\n padding-right: (@jumbotron-padding * 2);\n }\n\n h1,\n .h1 {\n font-size: @jumbotron-heading-font-size;\n }\n }\n}\n", - "//\n// Thumbnails\n// --------------------------------------------------\n\n\n// Mixin and adjust the regular image class\n.thumbnail {\n display: block;\n padding: @thumbnail-padding;\n margin-bottom: @line-height-computed;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(border .2s ease-in-out);\n\n > img,\n a > img {\n &:extend(.img-responsive);\n margin-left: auto;\n margin-right: auto;\n }\n\n // Add a hover state for linked versions only\n a&:hover,\n a&:focus,\n a&.active {\n border-color: @link-color;\n }\n\n // Image captions\n .caption {\n padding: @thumbnail-caption-padding;\n color: @thumbnail-caption-color;\n }\n}\n", - "//\n// Alerts\n// --------------------------------------------------\n\n\n// Base styles\n// -------------------------\n\n.alert {\n padding: @alert-padding;\n margin-bottom: @line-height-computed;\n border: 1px solid transparent;\n border-radius: @alert-border-radius;\n\n // Headings for larger alerts\n h4 {\n margin-top: 0;\n // Specified for the h4 to prevent conflicts of changing @headings-color\n color: inherit;\n }\n\n // Provide class for links that match alerts\n .alert-link {\n font-weight: @alert-link-font-weight;\n }\n\n // Improve alignment and spacing of inner content\n > p,\n > ul {\n margin-bottom: 0;\n }\n\n > p + p {\n margin-top: 5px;\n }\n}\n\n// Dismissible alerts\n//\n// Expand the right padding and account for the close button's positioning.\n\n.alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0.\n.alert-dismissible {\n padding-right: (@alert-padding + 20);\n\n // Adjust close link position\n .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n }\n}\n\n// Alternate styles\n//\n// Generate contextual modifier classes for colorizing the alert.\n\n.alert-success {\n .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text);\n}\n\n.alert-info {\n .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text);\n}\n\n.alert-warning {\n .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text);\n}\n\n.alert-danger {\n .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text);\n}\n", - "// Alerts\n\n.alert-variant(@background; @border; @text-color) {\n background-color: @background;\n border-color: @border;\n color: @text-color;\n\n hr {\n border-top-color: darken(@border, 5%);\n }\n .alert-link {\n color: darken(@text-color, 10%);\n }\n}\n", - "//\n// Progress bars\n// --------------------------------------------------\n\n\n// Bar animations\n// -------------------------\n\n// WebKit\n@-webkit-keyframes progress-bar-stripes {\n from { background-position: 40px 0; }\n to { background-position: 0 0; }\n}\n\n// Spec and IE10+\n@keyframes progress-bar-stripes {\n from { background-position: 40px 0; }\n to { background-position: 0 0; }\n}\n\n\n// Bar itself\n// -------------------------\n\n// Outer container\n.progress {\n overflow: hidden;\n height: @line-height-computed;\n margin-bottom: @line-height-computed;\n background-color: @progress-bg;\n border-radius: @progress-border-radius;\n .box-shadow(inset 0 1px 2px rgba(0,0,0,.1));\n}\n\n// Bar of progress\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: @font-size-small;\n line-height: @line-height-computed;\n color: @progress-bar-color;\n text-align: center;\n background-color: @progress-bar-bg;\n .box-shadow(inset 0 -1px 0 rgba(0,0,0,.15));\n .transition(width .6s ease);\n}\n\n// Striped bars\n//\n// `.progress-striped .progress-bar` is deprecated as of v3.2.0 in favor of the\n// `.progress-bar-striped` class, which you just add to an existing\n// `.progress-bar`.\n.progress-striped .progress-bar,\n.progress-bar-striped {\n #gradient > .striped();\n background-size: 40px 40px;\n}\n\n// Call animation for the active one\n//\n// `.progress.active .progress-bar` is deprecated as of v3.2.0 in favor of the\n// `.progress-bar.active` approach.\n.progress.active .progress-bar,\n.progress-bar.active {\n .animation(progress-bar-stripes 2s linear infinite);\n}\n\n\n// Variations\n// -------------------------\n\n.progress-bar-success {\n .progress-bar-variant(@progress-bar-success-bg);\n}\n\n.progress-bar-info {\n .progress-bar-variant(@progress-bar-info-bg);\n}\n\n.progress-bar-warning {\n .progress-bar-variant(@progress-bar-warning-bg);\n}\n\n.progress-bar-danger {\n .progress-bar-variant(@progress-bar-danger-bg);\n}\n", - "// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n", - "// Progress bars\n\n.progress-bar-variant(@color) {\n background-color: @color;\n\n // Deprecated parent class requirement as of v3.2.0\n .progress-striped & {\n #gradient > .striped();\n }\n}\n", - ".media {\n // Proper spacing between instances of .media\n margin-top: 15px;\n\n &:first-child {\n margin-top: 0;\n }\n}\n\n.media,\n.media-body {\n zoom: 1;\n overflow: hidden;\n}\n\n.media-body {\n width: 10000px;\n}\n\n.media-object {\n display: block;\n\n // Fix collapse in webkit from max-width: 100% and display: table-cell.\n &.img-thumbnail {\n max-width: none;\n }\n}\n\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n\n.media-middle {\n vertical-align: middle;\n}\n\n.media-bottom {\n vertical-align: bottom;\n}\n\n// Reset margins on headings for tighter default spacing\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n\n// Media list variation\n//\n// Undo default ul/ol styles\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n", - "//\n// List groups\n// --------------------------------------------------\n\n\n// Base class\n//\n// Easily usable on